From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Ugo Tomei Newsgroups: gmane.emacs.bugs Subject: bug#61988: error compiling emacs Date: Wed, 8 Mar 2023 13:26:28 +0100 Message-ID: <48c4b2e2-47d8-5b59-c7b1-b92f1f8b3fa3@tiscali.it> References: <874jqyspc7.fsf@yahoo.com> <6db27b89-699b-f956-4205-6cd8144f6dea@tiscali.it> <87v8jeqiau.fsf@yahoo.com> <83bkl684lp.fsf@gnu.org> <871qm2q9lh.fsf@yahoo.com> <83v8jd7uvi.fsf@gnu.org> <87wn3tpfg5.fsf@yahoo.com> <83fsah6xk0.fsf@gnu.org> <87o7p5p2ys.fsf@yahoo.com> <837cvs7m2y.fsf@gnu.org> <000001d950f9$ccd46290$667d27b0$@tiscali.it> <83r0u0648t.fsf@gnu.org> <000401d95114$16299540$427cbfc0$@tiscali.it> <83edq05wfl.fsf@gnu.org> <87fsagp0ie.fsf@yahoo.com> <4a5a72c3-ab47-b1ff-2326-c5f918423c83@tiscali.it> <87edpzobtk.fsf@yahoo.com> <38da7ea8-1903-4153-6533-d199efff4ffd@tiscali.it> <875ybbo77e.fsf@yahoo.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------NrcUj0Jc4O8s9q8nlKDLSkFI" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="40529"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.8.0 Cc: Eli Zaretskii , 61988@debbugs.gnu.org To: Po Lu Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Wed Mar 08 13:27:41 2023 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pZstO-0006Cx-VO for geb-bug-gnu-emacs@m.gmane-mx.org; Wed, 08 Mar 2023 13:27:39 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pZsss-0003Wg-0c; Wed, 08 Mar 2023 07:27:06 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pZssp-0003WV-2l for bug-gnu-emacs@gnu.org; Wed, 08 Mar 2023 07:27:03 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pZsso-00025S-MH for bug-gnu-emacs@gnu.org; Wed, 08 Mar 2023 07:27:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1pZsso-0008Dl-3c for bug-gnu-emacs@gnu.org; Wed, 08 Mar 2023 07:27:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Ugo Tomei Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 08 Mar 2023 12:27:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 61988 X-GNU-PR-Package: emacs Original-Received: via spool by 61988-submit@debbugs.gnu.org id=B61988.167827840331572 (code B ref 61988); Wed, 08 Mar 2023 12:27:01 +0000 Original-Received: (at 61988) by debbugs.gnu.org; 8 Mar 2023 12:26:43 +0000 Original-Received: from localhost ([127.0.0.1]:48005 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pZssV-0008D9-1J for submit@debbugs.gnu.org; Wed, 08 Mar 2023 07:26:43 -0500 Original-Received: from santino-notr.mail.tiscali.it ([213.205.33.215]:42755 helo=smtp.tiscali.it) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pZssQ-0008Ct-EC for 61988@debbugs.gnu.org; Wed, 08 Mar 2023 07:26:40 -0500 Original-Received: from [192.168.1.12] ([79.19.39.144]) by santino.mail.tiscali.it with id VoSU2903936cfzB01oSVv8; Wed, 08 Mar 2023 12:26:34 +0000 X-Spam-Final-Verdict: clean X-Spam-State: 0 X-Spam-Score: -100 X-Spam-Verdict: clean x-auth-user: utomei@tiscali.it Content-Language: it-IT In-Reply-To: <875ybbo77e.fsf@yahoo.com> DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tiscali.it; s=smtp; t=1678278395; bh=dB/hDo4c7iOhvEsYQwiKYmuiyPPmQ4d4Oe7TzzBbtxI=; h=Date:Subject:To:Cc:References:From:In-Reply-To; b=1RgIB9KNVRAqD+yRGWz/XZuU0WWGWBNuekTAbVqWyV9fiLxZAHkPki7CHgzOyD2SA 2eYOYiRiCivl6vJMxIYfI0nBXXUsDGkwMwso1LfNIKSm/aRlkoQgH/MnRU6nNsQK2W DdaLDpzIHiHTFeLrR5ackHCW8QqQVPVqduj8LgVk= X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:257531 Archived-At: This is a multi-part message in MIME format. --------------NrcUj0Jc4O8s9q8nlKDLSkFI Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 aGksDQoNCnBrZy1jb25maWcva2luZXRpYyxub3cgMC4yOS4yLTF1YnVudHUzIGFtZDY0IFtp bnN0YWxsYXRvXQ0KDQp3aXRoIHRoaXMgcGF0Y2ggY29tcGlsZSB3ZWxsOg0KDQpscnd4cnd4 cnd4IDEgcm9vdCByb290IDEzIG1hcsKgIDggMTM6MjUgL3Vzci9sb2NhbC9iaW4vZW1hY3Mg LT4gZW1hY3MtMzAuMC41MA0KDQphdHRhY2hlZCBsb2cgYW5kIGNvbmZpZ3VyZS5hYw0KDQp0 aGFua3MsIGJlc3QgcmVnYXJkcw0KDQoNCklsIDA4LzAzLzIzIDExOjQyLCBQbyBMdSBoYSBz Y3JpdHRvOg0KPiBXaGF0IGlmIHlvdSB0cnkgdGhpcyBpbnN0ZWFkPw0KPg0KPiBkaWZmIC0t Z2l0IGEvY29uZmlndXJlLmFjIGIvY29uZmlndXJlLmFjDQo+IGluZGV4IGJjN2U2MTA0OGMz Li5hYzkzZDAwM2I3MCAxMDA2NDQNCj4gLS0tIGEvY29uZmlndXJlLmFjDQo+ICsrKyBiL2Nv bmZpZ3VyZS5hYw0KPiBAQCAtMjgwNiw2ICsyODA2LDI1IEBAIEFDX0RFRlVODQo+ICAgICAg ICAgV0VCUF9NT0RVTEU9ImxpYndlYnBkZW11eCA+PSAkV0VCUF9SRVFVSVJFRCINCj4gICAN Cj4gICAgICAgICBFTUFDU19DSEVDS19NT0RVTEVTKFtXRUJQXSwgWyRXRUJQX01PRFVMRV0p DQo+ICsNCj4gKyAgICAgICMgV2ViUEdldEluZm8gaXMgc29tZXRpbWVzIG5vdCBwcmVzZW50 IGluc2lkZSBsaWJ3ZWJwZGVtdXgsIHNvDQo+ICsgICAgICAjIGlmIGl0IGRvZXMgbm90IGxp bmssIGFsc28gY2hlY2sgZm9yIGxpYndlYnBkZWNvZGVyLg0KPiArDQo+ICsgICAgICBPTERf Q0ZMQUdTPSRDRkxBR1MNCj4gKyAgICAgIE9MRF9MSUJTPSRMSUJTDQo+ICsgICAgICBDRkxB R1M9IiRDRkxBR1MgJFdFQlBfQ0ZMQUdTIg0KPiArICAgICAgTElCUz0iJExJQlMgJFdFQlBf TElCUyINCj4gKw0KPiArICAgICAgQUNfQ0hFQ0tfRlVOQyhbV2ViUEdldEluZm9dLCBbXSwN Cj4gKyAgICAgICAgW1dFQlBfTU9EVUxFPSIkV0VCUF9NT0RVTEUgbGlid2VicGRlY29kZXIg Pj0gJFdFQlBfUkVRVUlSRUQiDQo+ICsJIEhBVkVfV0VCUD1ubw0KPiArCSBBU19VTlNFVChb V0VCUF9MSUJTXSkNCj4gKwkgQVNfVU5TRVQoW1dFQlBfQ0ZMQUdTXSkNCj4gKwkgRU1BQ1Nf Q0hFQ0tfTU9EVUxFUyhbV0VCUF0sIFskV0VCUF9NT0RVTEVdKV0pDQo+ICsNCj4gKyAgICAg IENGTEFHUz0kT0xEX0NGTEFHUw0KPiArICAgICAgTElCUz0kT0xEX0xJQlMNCj4gKw0KPiAg ICAgICAgIEFDX1NVQlNUKFtXRUJQX0NGTEFHU10pDQo+ICAgICAgICAgQUNfU1VCU1QoW1dF QlBfTElCU10pDQo+ICAgICAgZmkNCj4NCj4gSSdtIG5vdCBzdXJlIHdoYXQgcGtnLWNvbmZp ZyBpcyBkb2luZyBoZXJlIFRCSCwgYnV0IGl0IGlzbid0IHZlcnkNCj4gaW50dWl0aXZlLg0K --------------NrcUj0Jc4O8s9q8nlKDLSkFI Content-Type: application/pkix-attr-cert; name="configure.ac" Content-Disposition: attachment; filename="configure.ac" Content-Transfer-Encoding: base64 ZG5sICBBdXRvY29uZiBzY3JpcHQgZm9yIEdOVSBFbWFjcwpkbmwgVG8gcmVidWlsZCB0aGUg J2NvbmZpZ3VyZScgc2NyaXB0IGZyb20gdGhpcywgZXhlY3V0ZSB0aGUgY29tbWFuZApkbmwJ YXV0b2NvbmYKZG5sIGluIHRoZSBkaXJlY3RvcnkgY29udGFpbmluZyB0aGlzIHNjcmlwdC4K ZG5sIElmIHlvdSBjaGFuZ2VkIGFueSBBQ19ERUZJTkVTLCBhbHNvIHJ1biBhdXRvaGVhZGVy LgpkbmwKZG5sIENvcHlyaWdodCAoQykgMTk5NC0xOTk2LCAxOTk5LTIwMjMgRnJlZSBTb2Z0 d2FyZSBGb3VuZGF0aW9uLCBJbmMuCmRubApkbmwgIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdO VSBFbWFjcy4KZG5sCmRubCAgR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4g cmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKZG5sICBpdCB1bmRlciB0aGUgdGVybXMg b2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQpkbmwg IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhl IExpY2Vuc2UsIG9yCmRubCAgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4K ZG5sCmRubCAgR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQg d2lsbCBiZSB1c2VmdWwsCmRubCAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0 IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZG5sICBNRVJDSEFOVEFCSUxJVFkgb3Ig RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCmRubCAgR05VIEdl bmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KZG5sCmRubCAgWW91IHNo b3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExp Y2Vuc2UKZG5sICBhbG9uZyB3aXRoIEdOVSBFbWFjcy4gIElmIG5vdCwgc2VlIDxodHRwczov L3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCgpBQ19QUkVSRVEoWzIuNjVdKQpkbmwgTm90ZSB0 aGlzIGlzIHBhcnNlZCBieSAoYXQgbGVhc3QpIG1ha2UtZGlzdCBhbmQgbGlzcC9jZWRldC9l ZGUvZW1hY3MuZWwuCkFDX0lOSVQoW0dOVSBFbWFjc10sIFszMC4wLjUwXSwgW2J1Zy1nbnUt ZW1hY3NAZ251Lm9yZ10sIFtdLAogIFtodHRwczovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2Vt YWNzL10pCgpkbmwgU2V0IGVtYWNzX2NvbmZpZ19vcHRpb25zIHRvIHRoZSBvcHRpb25zIG9m ICdjb25maWd1cmUnLCBxdW90ZWQgZm9yIHRoZSBzaGVsbCwKZG5sIGFuZCB0aGVuIHF1b3Rl ZCBhZ2FpbiBmb3IgYSBDIHN0cmluZy4gIFNlcGFyYXRlIG9wdGlvbnMgd2l0aCBzcGFjZXMu CmRubCBBZGQgc29tZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMsIGlmIHRoZXkgd2VyZSBwYXNz ZWQgdmlhIHRoZSBlbnZpcm9ubWVudApkbmwgcmF0aGVyIHRoYW4gb24gdGhlIGNvbW1hbmQt bGluZS4KZW1hY3NfY29uZmlnX29wdGlvbnM9Cm9wdHNlcD0KZG5sIFRoaXMgaXMgdGhlIGRv Y3VtZW50ZWQgd2F5IHRvIHJlY29yZCB0aGUgYXJncyBwYXNzZWQgdG8gY29uZmlndXJlLApk bmwgcmF0aGVyIHRoYW4gJGFjX2NvbmZpZ3VyZV9hcmdzLgpmb3Igb3B0IGluICIkQCIgQ0ZM QUdTIENQUEZMQUdTIExERkxBR1M7IGRvCiAgY2FzZSAkb3B0IGluCiAgICAtbiB8IC0tbm8t Y3JlYXRlIHwgLS1uby1yZWN1cnNpb24pCiAgICAgIGNvbnRpbnVlIDs7CiAgICBDRkxBR1Mg fCBDUFBGTEFHUyB8IExERkxBR1MpCiAgICAgIGV2YWwgJ3Rlc3QgIiR7JyRvcHQnK3NldH0i ID0gc2V0JyB8fCBjb250aW51ZQogICAgICBjYXNlICIgJCoiIGluCgkqIiAkb3B0PSIqKSBj b250aW51ZSA7OwogICAgICBlc2FjCiAgICAgIGV2YWwgb3B0PSRvcHQ9XCQkb3B0IDs7CiAg ZXNhYwoKICBlbWFjc19zaGVsbF9zcGVjaWFscz0kSUZTXCcnIiMkJigpKjs8Pj9APDpAXFxg e3x+JwogIGNhc2UgJG9wdCBpbgogICAgKltbIiRlbWFjc19zaGVsbF9zcGVjaWFscyJdXSop CiAgICAgIGNhc2UgJG9wdCBpbgoJKlwnKikKCSAgZW1hY3NfcXVvdGVfYXBvc3Ryb3BoZXM9 InMvJy8nXFxcXCcnL2ciCgkgIG9wdD1gQVNfRUNITyhbIiRvcHQiXSkgfCBzZWQgIiRlbWFj c19xdW90ZV9hcG9zdHJvcGhlcyJgIDs7CiAgICAgIGVzYWMKICAgICAgb3B0PSInJG9wdCci CiAgICAgIGNhc2UgJG9wdCBpbgoJKltbJyJcXCddXSopCgkgIGVtYWNzX3F1b3RlX2Zvcl9j PSdzL1tbIlxcXV0vXFwmL2c7ICQhcy8kL1xcblxcLycKCSAgb3B0PWBBU19FQ0hPKFsiJG9w dCJdKSB8IHNlZCAiJGVtYWNzX3F1b3RlX2Zvcl9jImAgOzsKICAgICAgZXNhYyA7OwogIGVz YWMKICBBU19WQVJfQVBQRU5EKFtlbWFjc19jb25maWdfb3B0aW9uc10sIFsiJG9wdHNlcCRv cHQiXSkKICBvcHRzZXA9JyAnCmRvbmUKCkFDX0NPTkZJR19IRUFERVJTKFtzcmMvY29uZmln Lmg6c3JjL2NvbmZpZy5pbl0pCkFDX0NPTkZJR19TUkNESVIoW3NyYy9saXNwLmhdKQpBQ19D T05GSUdfQVVYX0RJUihbYnVpbGQtYXV4XSkKQUNfQ09ORklHX01BQ1JPX0RJUihbbTRdKQoK eGNzZGtkaXI9CkFDX0NIRUNLX1BST0dTKFtYQ1JVTl0sIFt4Y3J1bl0pCmlmIHRlc3QgLW4g IiRYQ1JVTiI7IHRoZW4KICBpZiB0ZXN0IC16ICIkTUFLRSI7IHRoZW4KICAgIGRubCBDYWxs IHRoZSB2YXJpYWJsZSBNQUtFX1BST0csIG5vdCBNQUtFLCB0byBhdm9pZCBjb25mdXNpb24g d2l0aAogICAgZG5sIHRoZSB1c3VhbCBNQUtFIHZhcmlhYmxlIHRoYXQgJ21ha2UnIGl0c2Vs ZiB1c2VzLgogICAgQUNfQ0hFQ0tfUFJPRyhbTUFLRV9QUk9HXSwgW21ha2VdLCBbeWVzXSkK ICAgIGlmIHRlc3QgLXogIiRNQUtFX1BST0ciOyB0aGVuCiAgICAgIE1BS0U9IiRYQ1JVTiBN QUtFIgogICAgICBleHBvcnQgTUFLRQogICAgICB4Y3Nka2Rpcj1gJFhDUlVOIC0tc2hvdy1z ZGstcGF0aCAyPi9kZXYvbnVsbGAKICAgIGZpCiAgZmkKZmkKCmRubCBDaGVjayBmb3IgR05V IE1ha2UgYW5kIHBvc3NpYmx5IHNldCBNQUtFLgpbZW1hY3NfY2hlY2tfZ251X21ha2UgKCkK ewogIGVtYWNzX21ha2VvdXQ9YCgkMSAtLXZlcnNpb24pIDI+L2Rldi9udWxsYCAmJgogIGNh c2UgJGVtYWNzX21ha2VvdXQgaW4KICAgICdHTlUgTWFrZSAnMy44WzEtOV0qIHwgJ0dOVSBN YWtlICczLjlbMC05XSogfCBcCiAgICAnR05VIE1ha2UgJzMuWzEtOV1bMC05XVswLTldKiB8 ICdHTlUgTWFrZSAnWzQtOV0qIHwgJ0dOVSBNYWtlICdbMS05XVswLTldKiApCiAgICAgICBh Y19wYXRoX01BS0VfZm91bmQ9Ojs7CiAgZXNhYwp9XQpBQ19DQUNIRV9DSEVDSyhbZm9yIEdO VSBNYWtlXSwgW2FjX2N2X3BhdGhfTUFLRV0sCiAgW2FjX3BhdGhfTUFLRV9mb3VuZD1mYWxz ZQogICBpZiB0ZXN0IC1uICIkTUFLRSI7IHRoZW4KICAgICBlbWFjc19jaGVja19nbnVfbWFr ZSAiJE1BS0UiCiAgICAgYWNfY3ZfcGF0aF9NQUtFPSRNQUtFCiAgIGVsc2UKICAgICBlbWFj c190cmllZF9tYWtlPWZhbHNlCiAgICAgZW1hY3NfdHJpZWRfZ21ha2U9ZmFsc2UKICAgICBl bWFjc190cmllZF9nbnVtYWtlPWZhbHNlCiAgICAgQUNfUEFUSF9QUk9HU19GRUFUVVJFX0NI RUNLKFtNQUtFXSwgW21ha2UgZ21ha2UgZ251bWFrZV0sCiAgICAgICBbW2VtYWNzX2NoZWNr X2dudV9tYWtlICIkYWNfcGF0aF9NQUtFIgoJIGlmICRhY19wYXRoX01BS0VfZm91bmQ7IHRo ZW4KCSAgICMgVXNlIHRoZSBmdWxseS1xdWFsaWZpZWQgcHJvZ3JhbSBuYW1lIG9ubHkgaWYg dGhlIGJhc2VuYW1lCgkgICAjIHdvdWxkIG5vdCByZXNvbHZlIHRvIGl0LgoJICAgaWYgZXZh bCBcJGVtYWNzX3RyaWVkXyRhY19wcm9nOyB0aGVuCgkgICAgIGFjX2N2X3BhdGhfTUFLRT0k YWNfcGF0aF9NQUtFCgkgICBlbHNlCgkgICAgIGFjX2N2X3BhdGhfTUFLRT0kYWNfcHJvZwoJ ICAgZmkKCSBmaQoJIGV2YWwgZW1hY3NfdHJpZWRfJGFjX3Byb2c9Ol1dKQogICBmaV0pCiRh Y19wYXRoX01BS0VfZm91bmQgfHwgewpBQ19NU0dfRVJST1IoW1tCdWlsZGluZyBFbWFjcyBy ZXF1aXJlcyBHTlUgTWFrZSwgYXQgbGVhc3QgdmVyc2lvbiAzLjgxLgpJZiB5b3UgaGF2ZSBp dCBpbnN0YWxsZWQgdW5kZXIgYW5vdGhlciBuYW1lLCBjb25maWd1cmUgd2l0aCAnTUFLRT0u Li4nLgpGb3IgZXhhbXBsZSwgcnVuICckMCBNQUtFPWdudS1tYWtlJy5dXSkKfQpNQUtFPSRh Y19jdl9wYXRoX01BS0UKZXhwb3J0IE1BS0UKCmRubCBDYW5vbmljYWxpemUgdGhlIGNvbmZp Z3VyYXRpb24gbmFtZS4KQUNfQ0FOT05JQ0FMX0hPU1QKCmNhc2UgJGhvc3QgaW4KICotbWlu Z3cqKQoKICBpZiB0ZXN0IC16ICIkaG9zdF9hbGlhcyI7IHRoZW4KCiAgICAgICMgTm8gLS1o b3N0IGFyZ3VtZW50IHdhcyBnaXZlbiB0byAnY29uZmlndXJlJzsgdGhlcmVmb3JlICRob3N0 CiAgICAgICMgd2FzIHNldCB0byBhIGRlZmF1bHQgdmFsdWUgYmFzZWQgb24gdGhlIGJ1aWxk IHBsYXRmb3JtLiAgQnV0CiAgICAgICMgdGhpcyBkZWZhdWx0IHZhbHVlIG1heSBiZSB3cm9u ZyBpZiB3ZSBhcmUgYnVpbGRpbmcgZnJvbSBhCiAgICAgICMgNjQtYml0IE1TWVNbMl0gcHJl LWNvbmZpZ3VyZWQgdG8gYnVpbGQgMzItYml0IE1pbkdXIHByb2dyYW1zLgogICAgICAjIFRo ZXJlZm9yZSwgd2UnbGwgdHJ5IHRvIGdldCB0aGUgcmlnaHQgaG9zdCBwbGF0Zm9ybSBmcm9t IHRoZQogICAgICAjIGNvbXBpbGVyJ3MgdGFyZ2V0LgoKICAgICAgQUNfTVNHX0NIRUNLSU5H KFt0aGUgY29tcGlsZXIncyB0YXJnZXRdKQogICAgICBpZiB0ZXN0IC16ICIkQ0MiOyB0aGVu CgkgIGNjPWdjYwogICAgICBlbHNlCgkgIGNjPSRDQwogICAgICBmaQogICAgICBjY190YXJn ZXQ9YCRjYyAtdiAyPiYxIHwgc2VkIC1uICdzL1RhcmdldDogLy9wJ2AKICAgICAgY2FzZSAi JGNjX3RhcmdldCIgaW4KICAgICAgICAgICotKikgaG9zdD0kY2NfdGFyZ2V0CgkgICAgICA7 OwogICAgICAgICAgIiIpIEFDX01TR19FUlJPUihbSW1wb3NzaWJsZSB0byBvYnRhaW4gJGNj IGNvbXBpbGVyIHRhcmdldC4KUGxlYXNlIGV4cGxpY2l0bHkgcHJvdmlkZSAtLWhvc3QuXSkK ICAgICAgICAgICAgICA7OwoJICAqKSBBQ19NU0dfV0FSTihbQ29tcGlsZXIgcmVwb3J0ZWQg bm9uLXN0YW5kYXJkIHRhcmdldC4KRGVmYXVsdGluZyB0byAkaG9zdC5dKQogICAgICAgICAg ICAgIDs7CiAgICAgIGVzYWMKICAgICAgQUNfTVNHX1JFU1VMVChbJGhvc3RdKQogIGZpCgog IC4gJHNyY2Rpci9udC9taW5ndy1jZmcuc2l0ZQoKICBjYXNlICRzcmNkaXIgaW4KICAgIC8q IHwgPzoqKQogICAgICAjIHNyY2RpciBpcyBhbiBhYnNvbHV0ZSBwYXRoLiAgSW4gdGhpcyBj YXNlLCBmb3JjZSB0aGUgZm9ybWF0CiAgICAgICMgIi9jL2Zvby9iYXIiLCB0byBzaW1wbGlm eSBsYXRlciBjb252ZXJzaW9ucyB0byBuYXRpdmUgV2luZG93cwogICAgICAjIGZvcm1hdCAo ImM6L2Zvby9iYXIiKS4KICAgICAgc3JjZGlyPWBjZCAiJHtzcmNkaXJ9IiAmJiBwd2QgLVdg CiAgICAgICMgJ2V2YWwnIHBhY2lmaWVzIHN0cmljdCBQT1NJWCBub24tTWluR1cgc2hlbGxz IChCdWcjMTg2MTIpLgogICAgICAjIFdlIGRvd25jYXNlIHRoZSBkcml2ZSBsZXR0ZXIgdG8g YXZvaWQgd2FybmluZ3Mgd2hlbgogICAgICAjIGdlbmVyYXRpbmcgYXV0b2xvYWRzLgogICAg ICBldmFsICdzcmNkaXI9L2BlY2hvICR7c3JjZGlyOjA6MX0gfCBzZWQgInkvQUJDREVGR0hJ SktMTU5PUFFSU1RVVldYWVovYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXovImAiJHtzcmNk aXI6Mn0iJwogICAgICA7OwogIGVzYWM7Owplc2FjCgpjYW5vbmljYWw9JGhvc3QKY29uZmln dXJhdGlvbj0ke2hvc3RfYWxpYXMtJHtidWlsZF9hbGlhcy0kaG9zdH19CmVtYWNzX3VuYW1l X3I9YHVuYW1lIC1yYAoKZG5sIFN1cHBvcnQgZm9yIC0tcHJvZ3JhbS1wcmVmaXgsIC0tcHJv Z3JhbS1zdWZmaXggYW5kCmRubCAtLXByb2dyYW0tdHJhbnNmb3JtLW5hbWUgb3B0aW9ucwpB Q19BUkdfUFJPR1JBTQoKZG5sIEl0IGlzIGltcG9ydGFudCB0aGF0IHZhcmlhYmxlcyBvbiB0 aGUgUkhTIG5vdCBiZSBleHBhbmRlZCBoZXJlLApkbmwgaGVuY2UgdGhlIHNpbmdsZSBxdW90 ZXMuICBUaGlzIGlzIHBlciB0aGUgR05VIGNvZGluZyBzdGFuZGFyZHMsIHNlZQpkbmwgKGF1 dG9jb25mKSBJbnN0YWxsYXRpb24gRGlyZWN0b3J5IFZhcmlhYmxlcwpkbmwgU2VlIGFsc28g ZXBhdGhzLmggYmVsb3cuCmxpc3BkaXJyZWw9JyR7dmVyc2lvbn0vbGlzcCcKbGlzcGRpcj0n JHtkYXRhZGlyfS9lbWFjcy8nJHtsaXNwZGlycmVsfQpzdGFuZGFyZGxpc3BwYXRoPScke2xp c3BkaXJ9Jwpsb2NhbGxpc3BwYXRoPScke2RhdGFkaXJ9L2VtYWNzLyR7dmVyc2lvbn0vc2l0 ZS1saXNwOidcCicke2RhdGFkaXJ9L2VtYWNzL3NpdGUtbGlzcCcKbGlzcHBhdGg9JyR7bG9j YWxsaXNwcGF0aH06JHtzdGFuZGFyZGxpc3BwYXRofScKZXRjZGlyPScke2RhdGFkaXJ9L2Vt YWNzLyR7dmVyc2lvbn0vZXRjJwphcmNobGliZGlyPScke2xpYmV4ZWNkaXJ9L2VtYWNzLyR7 dmVyc2lvbn0vJHtjb25maWd1cmF0aW9ufScKZXRjZG9jZGlyPScke2RhdGFkaXJ9L2VtYWNz LyR7dmVyc2lvbn0vZXRjJwpnYW1lZGlyPScke2xvY2Fsc3RhdGVkaXJ9L2dhbWVzL2VtYWNz JwoKZG5sIFNwZWNpYWwgb3B0aW9uIHRvIGRpc2FibGUgdGhlIG1vc3Qgb2Ygb3RoZXIgb3B0 aW9ucy4KQUNfQVJHX1dJVEgoW2FsbF0sCltBU19IRUxQX1NUUklORyhbLS13aXRob3V0LWFs bF0sCgkJW29taXQgYWxtb3N0IGFsbCBmZWF0dXJlcyBhbmQgYnVpbGQKCQlzbWFsbCBleGVj dXRhYmxlIHdpdGggbWluaW1hbCBkZXBlbmRlbmNpZXNdKV0sCiAgW3dpdGhfZmVhdHVyZXM9 JHdpdGh2YWxdLAogIFt3aXRoX2ZlYXR1cmVzPXllc10pCgpkbmwgT1BUSU9OX0RFRkFVTFRf T0ZGKE5BTUUsIEhFTFAtU1RSSU5HKQpkbmwgQ3JlYXRlIGEgbmV3IC0td2l0aCBvcHRpb24g dGhhdCBkZWZhdWx0cyB0byBiZWluZyBkaXNhYmxlZC4KZG5sIE5BTUUgaXMgdGhlIGJhc2Ug bmFtZSBvZiB0aGUgb3B0aW9uLiAgVGhlIHNoZWxsIHZhcmlhYmxlIHdpdGhfTkFNRQpkbmwg ICB3aWxsIGJlIHNldCB0byBlaXRoZXIgdGhlIHVzZXIncyB2YWx1ZSAoaWYgdGhlIG9wdGlv biBpcwpkbmwgICBzcGVjaWZpZWQ7ICd5ZXMnIGZvciBhIHBsYWluIC0td2l0aC1OQU1FKSBv ciB0byAnbm8nIChpZiB0aGUKZG5sICAgb3B0aW9uIGlzIG5vdCBzcGVjaWZpZWQpLiAgTm90 ZSB0aGF0IHRoZSBzaGVsbCB2YXJpYWJsZSBuYW1lIGlzCmRubCAgIGNvbnN0cnVjdGVkIGFz IGF1dG9jb25mIGRvZXMsIGJ5IHJlcGxhY2luZyBub24tYWxwaGFudW1lcmljCmRubCAgIGNo YXJhY3RlcnMgd2l0aCAiXyIuCmRubCBIRUxQLVNUUklORyBpcyB0aGUgaGVscCB0ZXh0IGZv ciB0aGUgb3B0aW9uLgpBQ19ERUZVTihbT1BUSU9OX0RFRkFVTFRfT0ZGXSwgW2RubAogIEFD X0FSR19XSVRIKFskMV0sW0FTX0hFTFBfU1RSSU5HKFstLXdpdGgtJDFdLFskMl0pXSxbXSxb ZG5sCiAgICBtNF9icGF0c3Vic3QoW3dpdGhfJDFdLCBbW14wLTlhLXpdXSwgW19dKT1ub10p ZG5sCl0pZG5sCgpkbmwgT1BUSU9OX0RFRkFVTFRfSUZBVkFJTEFCTEUoTkFNRSwgSEVMUC1T VFJJTkcpCmRubCBDcmVhdGUgYSBuZXcgLS13aXRoIG9wdGlvbiB0aGF0IGRlZmF1bHRzIHRv ICdpZmF2YWlsYWJsZScuCmRubCBOQU1FIGlzIHRoZSBiYXNlIG5hbWUgb2YgdGhlIG9wdGlv bi4gIFRoZSBzaGVsbCB2YXJpYWJsZSB3aXRoX05BTUUKZG5sICAgd2lsbCBiZSBzZXQgdG8g ZWl0aGVyIHRoZSB1c2VyJ3MgdmFsdWUgKGlmIHRoZSBvcHRpb24gaXMKZG5sICAgc3BlY2lm aWVkOyAneWVzJyBmb3IgYSBwbGFpbiAtLXdpdGgtTkFNRSkgb3IgdG8gJ2lmYXZhaWxhYmxl JyAoaWYgdGhlCmRubCAgIG9wdGlvbiBpcyBub3Qgc3BlY2lmaWVkKS4gIE5vdGUgdGhhdCB0 aGUgc2hlbGwgdmFyaWFibGUgbmFtZSBpcwpkbmwgICBjb25zdHJ1Y3RlZCBhcyBhdXRvY29u ZiBkb2VzLCBieSByZXBsYWNpbmcgbm9uLWFscGhhbnVtZXJpYwpkbmwgICBjaGFyYWN0ZXJz IHdpdGggIl8iLgpkbmwgSEVMUC1TVFJJTkcgaXMgdGhlIGhlbHAgdGV4dCBmb3IgdGhlIG9w dGlvbi4KQUNfREVGVU4oW09QVElPTl9ERUZBVUxUX0lGQVZBSUxBQkxFXSwgW2RubAogIEFD X0FSR19XSVRIKFskMV0sW0FTX0hFTFBfU1RSSU5HKFstLXdpdGgtJDFdLFskMl0pXSxbXSxb ZG5sCiAgICBtNF9icGF0c3Vic3QoW3dpdGhfJDFdLCBbW14wLTlhLXpdXSwgW19dKT1pZmF2 YWlsYWJsZV0pZG5sCl0pZG5sCgoKZG5sIE9QVElPTl9ERUZBVUxUX09OKE5BTUUsIEhFTFAt U1RSSU5HKQpkbmwgQ3JlYXRlIGEgbmV3IC0td2l0aCBvcHRpb24gdGhhdCBkZWZhdWx0cyB0 byAkd2l0aF9mZWF0dXJlcy4KZG5sIE5BTUUgaXMgdGhlIGJhc2UgbmFtZSBvZiB0aGUgb3B0 aW9uLiAgVGhlIHNoZWxsIHZhcmlhYmxlIHdpdGhfTkFNRQpkbmwgICB3aWxsIGJlIHNldCBl aXRoZXIgdG8gJ25vJyAoZm9yIGEgcGxhaW4gLS13aXRob3V0LU5BTUUpIG9yIHRvCmRubCAg ICd5ZXMnIChpZiB0aGUgb3B0aW9uIGlzIG5vdCBzcGVjaWZpZWQpLiAgTm90ZSB0aGF0IHRo ZSBzaGVsbApkbmwgICB2YXJpYWJsZSBuYW1lIGlzIGNvbnN0cnVjdGVkIGFzIGF1dG9jb25m IGRvZXMsIGJ5IHJlcGxhY2luZwpkbmwgICBub24tYWxwaGFudW1lcmljIGNoYXJhY3RlcnMg d2l0aCAiXyIuCmRubCBIRUxQLVNUUklORyBpcyB0aGUgaGVscCB0ZXh0IGZvciB0aGUgb3B0 aW9uLgpBQ19ERUZVTihbT1BUSU9OX0RFRkFVTFRfT05dLCBbZG5sCiAgQUNfQVJHX1dJVEgo WyQxXSxbQVNfSEVMUF9TVFJJTkcoWy0td2l0aG91dC0kMV0sWyQyXSldLFtdLFtkbmwKICAg bTRfYnBhdHN1YnN0KFt3aXRoXyQxXSwgW1teMC05YS16XV0sIFtfXSk9JHdpdGhfZmVhdHVy ZXNdKWRubApdKWRubAoKIyBGb3IgcmV0cmlldmluZyBtYWlsLCB1bmVuY3J5cHRlZCBuZXR3 b3JrIGNvbm5lY3Rpb25zIGFyZSB0aGUgZGVmYXVsdAojIG9ubHkgb24gbmF0aXZlIE1TLVdp bmRvd3MgcGxhdGZvcm1zLiAgKEZJWE1FOiBUaGVzZSBwbGF0Zm9ybXMgc2hvdWxkCiMgYWxz byBiZSBzZWN1cmUgYnkgZGVmYXVsdC4pCgpBQ19BUkdfV0lUSChbbWFpbHV0aWxzXSwKICBb QVNfSEVMUF9TVFJJTkcoWy0td2l0aC1tYWlsdXRpbHNdLAogICAgIFtyZWx5IG9uIEdOVSBN YWlsdXRpbHMsIHNvIHRoYXQgdGhlIC0td2l0aG91dC1wb3AgdGhyb3VnaCAtLXdpdGgtbWFp bGhvc3QKICAgICAgb3B0aW9ucyBhcmUgaXJyZWxldmFudDsgdGhpcyBpcyB0aGUgZGVmYXVs dCBpZiBHTlUgTWFpbHV0aWxzIGlzCiAgICAgIGluc3RhbGxlZF0pXSwKICBbXSwKICBbd2l0 aF9tYWlsdXRpbHM9JHdpdGhfZmVhdHVyZXMKICAgaWYgdGVzdCAiJHdpdGhfbWFpbHV0aWxz IiA9IHllczsgdGhlbgogICAgIChtb3ZlbWFpbCAtLXZlcnNpb24pID4vZGV2L251bGwgMj4m MSB8fCB3aXRoX21haWx1dGlscz1ubwogICBmaV0pCmlmIHRlc3QgIiR3aXRoX21haWx1dGls cyIgPSBubzsgdGhlbgogIHdpdGhfbWFpbHV0aWxzPQpmaQpBQ19TVUJTVChbd2l0aF9tYWls dXRpbHNdKQoKQUNfQVJHX1dJVEgoW3BvcF0sCiAgW0FTX0hFTFBfU1RSSU5HKFstLXdpdGgt cG9wXSwKICAgICBbU3VwcG9ydCBQT1AgbWFpbCByZXRyaWV2YWwgaWYgRW1hY3MgbW92ZW1h aWwgaXMgdXNlZCAobm90IHJlY29tbWVuZGVkLAogICAgICBhcyBFbWFjcyBtb3ZlbWFpbCBQ T1AgaXMgaW5zZWN1cmUpLiAgVGhpcyBpcyB0aGUgZGVmYXVsdCBvbmx5IG9uCiAgICAgIG5h dGl2ZSBNUy1XaW5kb3dzLl0pXSwKICBbXSwKICBbY2FzZSAkaG9zdCBpbgogICAgICotbWlu Z3cqKSB3aXRoX3BvcD15ZXM7OwogICAgICopIHdpdGhfcG9wPW5vLWJ5LWRlZmF1bHQ7Owog ICBlc2FjXSkKaWYgdGVzdCAiJHdpdGhfcG9wIiA9IHllczsgdGhlbgogICBBQ19ERUZJTkUo W01BSUxfVVNFX1BPUF0pCmZpCkFIX1RFTVBMQVRFKFtNQUlMX1VTRV9QT1BdLCBbRGVmaW5l IHRvIHN1cHBvcnQgUE9QIG1haWwgcmV0cmlldmFsLl0pZG5sCgpPUFRJT05fREVGQVVMVF9P RkYoW2tlcmJlcm9zXSxbc3VwcG9ydCBLZXJiZXJvcy1hdXRoZW50aWNhdGVkIFBPUF0pCmlm IHRlc3QgIiR3aXRoX2tlcmJlcm9zIiAhPSBubzsgdGhlbgogICBBQ19ERUZJTkUoW0tFUkJF Uk9TXSkKZmkKQUhfVEVNUExBVEUoW0tFUkJFUk9TXSwKCSAgICBbRGVmaW5lIHRvIHN1cHBv cnQgS2VyYmVyb3MtYXV0aGVudGljYXRlZCBQT1AgbWFpbCByZXRyaWV2YWwuXSlkbmwKCk9Q VElPTl9ERUZBVUxUX09GRihba2VyYmVyb3M1XSxbc3VwcG9ydCBLZXJiZXJvcyB2ZXJzaW9u IDUgYXV0aGVudGljYXRlZCBQT1BdKQppZiB0ZXN0ICIke3dpdGhfa2VyYmVyb3M1fSIgIT0g bm87IHRoZW4KICBpZiB0ZXN0ICIke3dpdGhfa2VyYmVyb3N9IiA9IG5vOyB0aGVuCiAgICB3 aXRoX2tlcmJlcm9zPXllcwogICAgQUNfREVGSU5FKFtLRVJCRVJPU10pCiAgZmkKICBBQ19E RUZJTkUoW0tFUkJFUk9TNV0sIFsxXSwKICAgIFtEZWZpbmUgdG8gdXNlIEtlcmJlcm9zIDUg aW5zdGVhZCBvZiBLZXJiZXJvcyA0Ll0pCmZpCgpPUFRJT05fREVGQVVMVF9PRkYoW2hlc2lv ZF0sW3N1cHBvcnQgSGVzaW9kIHRvIGdldCB0aGUgUE9QIHNlcnZlciBob3N0XSkKZG5sIEZJ WE1FIGhlc2lvZCBzdXBwb3J0IG1heSBub3QgYmUgcHJlc2VudCwgc28gaXQgc2VlbXMgbGlr ZSBhbiBlcnJvcgpkbmwgdG8gZGVmaW5lLCBvciBhdCBsZWFzdCB1c2UsIHRoaXMgdW5jb25k aXRpb25hbGx5LgppZiB0ZXN0ICIkd2l0aF9oZXNpb2QiICE9IG5vOyB0aGVuCiAgQUNfREVG SU5FKFtIRVNJT0RdLCBbMV0sCiAgICBbRGVmaW5lIHRvIHN1cHBvcnQgdXNpbmcgYSBIZXNp b2QgZGF0YWJhc2UgdG8gZmluZCB0aGUgUE9QIHNlcnZlci5dKQpmaQoKT1BUSU9OX0RFRkFV TFRfT0ZGKFttYWlsLXVubGlua10sW3VubGluaywgcmF0aGVyIHRoYW4gZW1wdHksIG1haWwg c3Bvb2wgYWZ0ZXIgcmVhZGluZ10pCmlmIHRlc3QgIiR3aXRoX21haWxfdW5saW5rIiAhPSBu bzsgdGhlbgogICBBQ19ERUZJTkUoW01BSUxfVU5MSU5LX1NQT09MXSwgWzFdLAogICAgIFtE ZWZpbmUgdG8gdW5saW5rLCByYXRoZXIgdGhhbiBlbXB0eSwgbWFpbCBzcG9vbCBhZnRlciBy ZWFkaW5nLl0pCmZpCgpBQ19BUkdfV0lUSChbbWFpbGhvc3RdLFtBU19IRUxQX1NUUklORyhb LS13aXRoLW1haWxob3N0PUhPU1ROQU1FXSwKICAgIFtzdHJpbmcgZ2l2aW5nIGRlZmF1bHQg UE9QIG1haWwgaG9zdF0pXSwKICAgIEFDX0RFRklORV9VTlFVT1RFRChbTUFJTEhPU1RdLCBb IiR3aXRodmFsIl0sCiAgICAgIFtTdHJpbmcgZ2l2aW5nIGZhbGxiYWNrIFBPUCBtYWlsIGhv c3QuXSkpCgpBQ19BUkdfV0lUSChbc291bmRdLFtBU19IRUxQX1NUUklORyhbLS13aXRoLXNv dW5kPVZBTFVFXSwKICBbY29tcGlsZSB3aXRoIHNvdW5kIHN1cHBvcnQgKFZBTFVFIG9uZSBv ZjogeWVzLCBhbHNhLCBvc3MsIGJzZC1vc3NhdWRpbywgbm87CmRlZmF1bHQgeWVzKS4gIE9u bHkgZm9yIEdOVS9MaW51eCwgRnJlZUJTRCwgTmV0QlNELCBNaW5HVywgQ3lnd2luLl0pXSwK ICBbIGNhc2UgIiR7d2l0aHZhbH0iIGluCiAgICAgIHllc3xub3xhbHNhfG9zc3xic2Qtb3Nz YXVkaW8pIHZhbD0kd2l0aHZhbCA7OwogICAgICAqKSBBQ19NU0dfRVJST1IoWyctLXdpdGgt c291bmQ9JHdpdGh2YWwnIGlzIGludmFsaWQ7CnRoaXMgb3B0aW9uJ3MgdmFsdWUgc2hvdWxk IGJlICd5ZXMnLCAnbm8nLCAnYWxzYScsICdvc3MnLCBvciAnYnNkLW9zc2F1ZGlvJy5dKQog ICAgICA7OwogICAgZXNhYwogICAgd2l0aF9zb3VuZD0kdmFsCiAgXSwKICBbd2l0aF9zb3Vu ZD0kd2l0aF9mZWF0dXJlc10pCgpBQ19BUkdfV0lUSChbcGR1bXBlcl0sCiAgQVNfSEVMUF9T VFJJTkcoCiAgICBbLS13aXRoLXBkdW1wZXI9VkFMVUVdLAogICAgW2VuYWJsZSBwZHVtcGVy IHN1cHBvcnQgdW5jb25kaXRpb25hbGx5CiAgICAgICgneWVzJywgJ25vJywgb3IgJ2F1dG8n OiBkZWZhdWx0ICdhdXRvJyldKSwKICAgIFsgY2FzZSAiJHt3aXRodmFsfSIgaW4KICAgICAg ICB5ZXN8bm98YXV0bykgdmFsPSR3aXRodmFsIDs7CiAgICAgICAgKikgQUNfTVNHX0VSUk9S KAogICAgICAgICAgIFsnLS13aXRoLXBkdW1wZXI9JHdpdGh2YWwnIGlzIGludmFsaWQ7CnRo aXMgb3B0aW9uJ3MgdmFsdWUgc2hvdWxkIGJlICd5ZXMnIG9yICdubycuXSkgOzsKICAgICAg ZXNhYwogICAgICB3aXRoX3BkdW1wZXI9JHZhbAogICAgXSwKICAgIFt3aXRoX3BkdW1wZXI9 YXV0b10pCgpBQ19BUkdfV0lUSChbdW5leGVjXSwKICBBU19IRUxQX1NUUklORygKICAgIFst LXdpdGgtdW5leGVjPVZBTFVFXSwKICAgIFtlbmFibGUgdW5leGVjIHN1cHBvcnQgdW5jb25k aXRpb25hbGx5CiAgICAgICgneWVzJywgJ25vJywgb3IgJ2F1dG8nOiBkZWZhdWx0ICdhdXRv JyldKSwKICAgIFsgY2FzZSAiJHt3aXRodmFsfSIgaW4KICAgICAgICB5ZXN8bm98YXV0bykg dmFsPSR3aXRodmFsIDs7CiAgICAgICAgKikgQUNfTVNHX0VSUk9SKAogICAgICAgICAgIFsn LS13aXRoLXVuZXhlYz0kd2l0aHZhbCcgaXMgaW52YWxpZDsKdGhpcyBvcHRpb24ncyB2YWx1 ZSBzaG91bGQgYmUgJ3llcycgb3IgJ25vJy5dKSA7OwogICAgICBlc2FjCiAgICAgIHdpdGhf dW5leGVjPSR2YWwKICAgIF0sCiAgICBbd2l0aF91bmV4ZWM9YXV0b10pCgpBQ19BUkdfV0lU SChbZHVtcGluZ10sW0FTX0hFTFBfU1RSSU5HKFstLXdpdGgtZHVtcGluZz1WQUxVRV0sCiAg ICBba2luZCBvZiBkdW1waW5nIHRvIHVzZSBmb3IgaW5pdGlhbCBFbWFjcyBidWlsZAooVkFM VUUgb25lIG9mOiBwZHVtcGVyLCB1bmV4ZWMsIG5vbmU7IGRlZmF1bHQgcGR1bXBlcildKV0s CiAgICBbIGNhc2UgIiR7d2l0aHZhbH0iIGluCiAgICAgICAgcGR1bXBlcnx1bmV4ZWN8bm9u ZSkgdmFsPSR3aXRodmFsIDs7CiAgICAgICAgKikgQUNfTVNHX0VSUk9SKFsnLS13aXRoLWR1 bXBpbmc9JHdpdGh2YWwgaXMgaW52YWxpZDsKdGhpcyBvcHRpb24ncyB2YWx1ZSBzaG91bGQg YmUgJ3BkdW1wZXInLCAndW5leGVjJywgb3IgJ25vbmUnLl0pCiAgICAgICAgOzsKICAgICAg ZXNhYwogICAgICB3aXRoX2R1bXBpbmc9JHZhbAogICAgXSwKICAgIFt3aXRoX2R1bXBpbmc9 cGR1bXBlcl0pCgppZiB0ZXN0ICIkd2l0aF9wZHVtcGVyIiA9ICJhdXRvIjsgdGhlbgogIGlm IHRlc3QgIiR3aXRoX2R1bXBpbmciID0gInBkdW1wZXIiOyB0aGVuCiAgICB3aXRoX3BkdW1w ZXI9eWVzCiAgZWxzZQogICAgd2l0aF9wZHVtcGVyPW5vCiAgZmkKZmkKCmlmIHRlc3QgIiR3 aXRoX3VuZXhlYyIgPSAiYXV0byI7IHRoZW4KICBpZiB0ZXN0ICIkd2l0aF9kdW1waW5nIiA9 ICJ1bmV4ZWMiOyB0aGVuCiAgICB3aXRoX3VuZXhlYz15ZXMKICBlbHNlCiAgICB3aXRoX3Vu ZXhlYz1ubwogIGZpCmZpCgppZiB0ZXN0ICIkd2l0aF9kdW1waW5nIiA9ICJwZHVtcGVyIiAm JiB0ZXN0ICIkd2l0aF9wZHVtcGVyIiA9ICJubyI7IHRoZW4KICBBQ19NU0dfRVJST1IoWyct LXdpdGgtZHVtcGluZz1wZHVtcGVyJyByZXF1aXJlcyBwZHVtcGVyIHN1cHBvcnRdKQpmaQoK aWYgdGVzdCAiJHdpdGhfZHVtcGluZyIgPSAidW5leGVjIiAmJiB0ZXN0ICIkd2l0aF91bmV4 ZWMiID0gIm5vIjsgdGhlbgogIEFDX01TR19FUlJPUihbJy0td2l0aC1kdW1waW5nPXVuZXhl YycgcmVxdWlyZXMgdW5leGVjIHN1cHBvcnRdKQpmaQoKaWYgdGVzdCAiJHdpdGhfcGR1bXBl ciIgPSAieWVzIjsgdGhlbgogIEFDX0RFRklORShbSEFWRV9QRFVNUEVSXSwgWzFdLAogICAg W0RlZmluZSB0byBidWlsZCB3aXRoIHBvcnRhYmxlIGR1bXBlciBzdXBwb3J0XSkKICBIQVZF X1BEVU1QRVI9eWVzCmVsc2UKICBIQVZFX1BEVU1QRVI9bm8KZmkKQUNfU1VCU1QoW0hBVkVf UERVTVBFUl0pCgpEVU1QSU5HPSR3aXRoX2R1bXBpbmcKQUNfU1VCU1QoW0RVTVBJTkddKQoK ZG5sIEZJWE1FIGN1cnJlbnRseSBpdCBpcyBub3QgdGhlIGxhc3QuCmRubCBUaGlzIHNob3Vs ZCBiZSB0aGUgbGFzdCAtLXdpdGggb3B0aW9uLCBiZWNhdXNlIC0td2l0aC14IGlzCmRubCBh ZGRlZCBsYXRlciBvbiB3aGVuIHdlIGZpbmQgdGhlIGZpbGUgbmFtZSBvZiBYLCBhbmQgaXQn cyBiZXN0IHRvCmRubCBrZWVwIHRoZW0gdG9nZXRoZXIgdmlzdWFsbHkuCkFDX0FSR19XSVRI KFt4LXRvb2xraXRdLFtBU19IRUxQX1NUUklORyhbLS13aXRoLXgtdG9vbGtpdD1LSVRdLAog W3VzZSBhbiBYIHRvb2xraXQgKEtJVCBvbmUgb2Y6IHllcyBvciBndGssIGd0azIsIGd0azMs IGx1Y2lkIG9yIGF0aGVuYSwgbW90aWYsIG5vKV0pXSwKWwkgIGNhc2UgIiR7d2l0aHZhbH0i IGluCgkgICAgeSB8IHllIHwgeWVzICkJdmFsPWd0ayA7OwoJICAgIG4gfCBubyApCQl2YWw9 bm8gIDs7CgkgICAgbCB8IGx1IHwgbHVjIHwgbHVjaSB8IGx1Y2lkICkJdmFsPWx1Y2lkIDs7 CgkgICAgYSB8IGF0IHwgYXRoIHwgYXRoZSB8IGF0aGVuIHwgYXRoZW5hICkJdmFsPWF0aGVu YSA7OwoJICAgIG0gfCBtbyB8IG1vdCB8IG1vdGkgfCBtb3RpZiApCXZhbD1tb3RpZiA7OwoJ ICAgIGcgfCBndCB8IGd0ayAgKQl2YWw9Z3RrIDs7CgkgICAgZ3RrMiAgKQl2YWw9Z3RrMiA7 OwoJICAgIGd0azMgICkJdmFsPWd0azMgOzsKCSAgICAqICkKQUNfTVNHX0VSUk9SKFsnLS13 aXRoLXgtdG9vbGtpdD0kd2l0aHZhbCcgaXMgaW52YWxpZDsKdGhpcyBvcHRpb24ncyB2YWx1 ZSBzaG91bGQgYmUgJ3llcycsICdubycsICdsdWNpZCcsICdhdGhlbmEnLCAnbW90aWYnLCAn Z3RrJywKJ2d0azInIG9yICdndGszJy4gICd5ZXMnIGFuZCAnZ3RrJyBhcmUgc3lub255bXMu CidhdGhlbmEnIGFuZCAnbHVjaWQnIGFyZSBzeW5vbnltcy5dKQoJICAgIDs7CgkgIGVzYWMK CSAgd2l0aF94X3Rvb2xraXQ9JHZhbApdKQoKT1BUSU9OX0RFRkFVTFRfT0ZGKFt3aWRlLWlu dF0sCiAgW3ByZWZlciB3aWRlIEVtYWNzIGludGVnZXJzICh0eXBpY2FsbHkgNjItYml0KTsK ICAgb24gMzItYml0IGhvc3RzLCB0aGlzIGFsbG93cyBidWZmZXIgYW5kIHN0cmluZyBzaXpl IHVwIHRvIDJHQiwKICAgYXQgdGhlIGNvc3Qgb2YgMTAlIHRvIDMwJSBzbG93ZG93biBvZiBM aXNwIGludGVycHJldGVyCiAgIGFuZCBsYXJnZXIgbWVtb3J5IGZvb3RwcmludF0pCmlmIHRl c3QgIiR3aXRoX3dpZGVfaW50IiA9IHllczsgdGhlbgogIEFDX0RFRklORShbV0lERV9FTUFD U19JTlRdLCBbMV0sIFtVc2UgbG9uZyBsb25nIGZvciBFTUFDU19JTlQgaWYgYXZhaWxhYmxl Ll0pCmZpCgpkbmwgX09OIHJlc3VsdHMgaW4gYSAnLS13aXRob3V0JyBvcHRpb24gaW4gdGhl IC0taGVscCBvdXRwdXQsIHNvCmRubCB0aGUgaGVscCB0ZXh0IHNob3VsZCByZWZlciB0byAi ZG9uJ3QgY29tcGlsZSIsIGV0Yy4Kd2l0aF94cG1fc2V0PSR7d2l0aF94cG0rc2V0fQpPUFRJ T05fREVGQVVMVF9PTihbeHBtXSxbZG9uJ3QgY29tcGlsZSB3aXRoIFhQTSBpbWFnZSBzdXBw b3J0XSkKT1BUSU9OX0RFRkFVTFRfT04oW2pwZWddLFtkb24ndCBjb21waWxlIHdpdGggSlBF RyBpbWFnZSBzdXBwb3J0XSkKT1BUSU9OX0RFRkFVTFRfT04oW3RpZmZdLFtkb24ndCBjb21w aWxlIHdpdGggVElGRiBpbWFnZSBzdXBwb3J0XSkKT1BUSU9OX0RFRkFVTFRfT04oW2dpZl0s W2Rvbid0IGNvbXBpbGUgd2l0aCBHSUYgaW1hZ2Ugc3VwcG9ydF0pCk9QVElPTl9ERUZBVUxU X09OKFtwbmddLFtkb24ndCBjb21waWxlIHdpdGggUE5HIGltYWdlIHN1cHBvcnRdKQpPUFRJ T05fREVGQVVMVF9PTihbcnN2Z10sW2Rvbid0IGNvbXBpbGUgd2l0aCBTVkcgaW1hZ2Ugc3Vw cG9ydF0pCk9QVElPTl9ERUZBVUxUX09OKFt3ZWJwXSxbZG9uJ3QgY29tcGlsZSB3aXRoIFdl YlAgaW1hZ2Ugc3VwcG9ydF0pCk9QVElPTl9ERUZBVUxUX09OKFtzcWxpdGUzXSxbZG9uJ3Qg Y29tcGlsZSB3aXRoIHNxbGl0ZTMgc3VwcG9ydF0pCk9QVElPTl9ERUZBVUxUX09OKFtsY21z Ml0sW2Rvbid0IGNvbXBpbGUgd2l0aCBMaXR0bGUgQ01TIHN1cHBvcnRdKQpPUFRJT05fREVG QVVMVF9PTihbbGlic3lzdGVtZF0sW2Rvbid0IGNvbXBpbGUgd2l0aCBsaWJzeXN0ZW1kIHN1 cHBvcnRdKQpPUFRJT05fREVGQVVMVF9PTihbY2Fpcm9dLFtkb24ndCBjb21waWxlIHdpdGgg Q2Fpcm8gZHJhd2luZ10pCk9QVElPTl9ERUZBVUxUX09OKFt4bWwyXSxbZG9uJ3QgY29tcGls ZSB3aXRoIFhNTCBwYXJzaW5nIHN1cHBvcnRdKQpPUFRJT05fREVGQVVMVF9PRkYoW2ltYWdl bWFnaWNrXSxbY29tcGlsZSB3aXRoIEltYWdlTWFnaWNrIGltYWdlIHN1cHBvcnRdKQpPUFRJ T05fREVGQVVMVF9PTihbbmF0aXZlLWltYWdlLWFwaV0sIFtkb24ndCB1c2UgbmF0aXZlIGlt YWdlIEFQSXMgKEdESSsgb24gV2luZG93cyldKQpPUFRJT05fREVGQVVMVF9JRkFWQUlMQUJM RShbanNvbl0sIFtjb21waWxlIHdpdGggbmF0aXZlIEpTT04gc3VwcG9ydF0pCk9QVElPTl9E RUZBVUxUX0lGQVZBSUxBQkxFKFt0cmVlLXNpdHRlcl0sIFtjb21waWxlIHdpdGggdHJlZS1z aXR0ZXJdKQoKT1BUSU9OX0RFRkFVTFRfT04oW3hmdF0sW2Rvbid0IHVzZSBYRlQgZm9yIGFu dGkgYWxpYXNlZCBmb250c10pCk9QVElPTl9ERUZBVUxUX09OKFtoYXJmYnV6el0sW2Rvbid0 IHVzZSBIYXJmQnV6eiBmb3IgdGV4dCBzaGFwaW5nXSkKT1BUSU9OX0RFRkFVTFRfT04oW2xp Ym90Zl0sW2Rvbid0IHVzZSBsaWJvdGYgZm9yIE9wZW5UeXBlIGZvbnQgc3VwcG9ydF0pCk9Q VElPTl9ERUZBVUxUX09OKFttMTduLWZsdF0sW2Rvbid0IHVzZSBtMTduLWZsdCBmb3IgdGV4 dCBzaGFwaW5nXSkKCk9QVElPTl9ERUZBVUxUX09OKFt0b29sa2l0LXNjcm9sbC1iYXJzXSxb ZG9uJ3QgdXNlIE1vdGlmL1hhdzNkL0dUSyB0b29sa2l0IHNjcm9sbCBiYXJzXSkKT1BUSU9O X0RFRkFVTFRfT04oW3hhdzNkXSxbZG9uJ3QgdXNlIFhhdzNkXSkKT1BUSU9OX0RFRkFVTFRf T04oW3hpbV0sW2F0IHJ1bnRpbWUsIGRlZmF1bHQgWDExIFhJTSB0byBvZmZdKQpPUFRJT05f REVGQVVMVF9PTihbeGRiZV0sW2Rvbid0IHVzZSBYMTEgZG91YmxlIGJ1ZmZlcmluZyBzdXBw b3J0XSkKQUNfQVJHX1dJVEgoW25zXSxbQVNfSEVMUF9TVFJJTkcoWy0td2l0aC1uc10sClt1 c2UgTmV4dHN0ZXAgKG1hY09TIENvY29hIG9yIEdOVXN0ZXApIHdpbmRvd2luZyBzeXN0ZW0u Ck9uIGJ5IGRlZmF1bHQgb24gbWFjT1MuXSldLFtdLFt3aXRoX25zPW1heWJlXSkKT1BUSU9O X0RFRkFVTFRfT0ZGKFt3MzJdLCBbdXNlIG5hdGl2ZSBNUyBXaW5kb3dzIEdVSSBpbiBhIEN5 Z3dpbiBidWlsZF0pCk9QVElPTl9ERUZBVUxUX09GRihbcGd0a10sIFt1c2UgR1RLIHRvIHN1 cHBvcnQgd2luZG93IHN5c3RlbXMgb3RoZXIgdGhhbiBYXSkKCk9QVElPTl9ERUZBVUxUX09O KFtncG1dLFtkb24ndCB1c2UgLWxncG0gZm9yIG1vdXNlIHN1cHBvcnQgb24gYSBHTlUvTGlu dXggY29uc29sZV0pCk9QVElPTl9ERUZBVUxUX09OKFtkYnVzXSxbZG9uJ3QgY29tcGlsZSB3 aXRoIEQtQnVzIHN1cHBvcnRdKQpBQ19BUkdfV0lUSChbZ2NvbmZdLFtBU19IRUxQX1NUUklO RyhbLS13aXRoLWdjb25mXSwKW2NvbXBpbGUgd2l0aCBHY29uZiBzdXBwb3J0IChHc2V0dGlu Z3MgcmVwbGFjZXMgdGhpcyldKV0sW10sCltpZiB0ZXN0ICR3aXRoX2ZlYXR1cmVzID0geWVz OyB0aGVuCndpdGhfZ2NvbmY9bWF5YmUKZWxzZQp3aXRoX2djb25mPW5vCmZpXSkKT1BUSU9O X0RFRkFVTFRfT04oW2dzZXR0aW5nc10sW2Rvbid0IGNvbXBpbGUgd2l0aCBHU2V0dGluZ3Mg c3VwcG9ydF0pCk9QVElPTl9ERUZBVUxUX09OKFtzZWxpbnV4XSxbZG9uJ3QgY29tcGlsZSB3 aXRoIFNFTGludXggc3VwcG9ydF0pCk9QVElPTl9ERUZBVUxUX09OKFtnbnV0bHNdLFtkb24n dCB1c2UgLWxnbnV0bHMgZm9yIFNTTC9UTFMgc3VwcG9ydF0pCk9QVElPTl9ERUZBVUxUX09O KFt6bGliXSxbZG9uJ3QgY29tcGlsZSB3aXRoIHpsaWIgZGVjb21wcmVzc2lvbiBzdXBwb3J0 XSkKT1BUSU9OX0RFRkFVTFRfT04oW21vZHVsZXNdLFtkb24ndCBjb21waWxlIHdpdGggZHlu YW1pYyBtb2R1bGVzIHN1cHBvcnRdKQpPUFRJT05fREVGQVVMVF9PTihbdGhyZWFkc10sW2Rv bid0IGNvbXBpbGUgd2l0aCBlbGlzcCB0aHJlYWRpbmcgc3VwcG9ydF0pCk9QVElPTl9ERUZB VUxUX09GRihbY3lnd2luMzItbmF0aXZlLWNvbXBpbGF0aW9uXSxbdXNlIG5hdGl2ZSBjb21w aWxhdGlvbiBvbiAzMi1iaXQgQ3lnd2luXSkKT1BUSU9OX0RFRkFVTFRfT04oW3hpbnB1dDJd LFtkb24ndCB1c2UgdmVyc2lvbiAyIG9mIHRoZSBYIElucHV0IEV4dGVuc2lvbiBmb3IgaW5w dXRdKQpPUFRJT05fREVGQVVMVF9PRkYoW3NtYWxsLWphLWRpY10sW2dlbmVyYXRlIGEgc21h bGxlci1zaXplIEphcGFuZXNlIGRpY3Rpb25hcnldKQoKQUNfQVJHX1dJVEgoW2ZpbGUtbm90 aWZpY2F0aW9uXSxbQVNfSEVMUF9TVFJJTkcoWy0td2l0aC1maWxlLW5vdGlmaWNhdGlvbj1M SUJdLAogW3VzZSBhIGZpbGUgbm90aWZpY2F0aW9uIGxpYnJhcnkgKExJQiBvbmUgb2Y6IHll cywgaW5vdGlmeSwga3F1ZXVlLCBnZmlsZSwgdzMyLCBubyldKV0sCiBbIGNhc2UgIiR7d2l0 aHZhbH0iIGluCiAgICB5IHwgeWUgfCB5ZXMgKQl2YWw9eWVzIDs7CiAgICBuIHwgbm8gKQkJ dmFsPW5vICA7OwogICAgaSB8IGluIHwgaW5vIHwgaW5vdCB8IGlub3RpIHwgaW5vdGlmIHwg aW5vdGlmeSApCXZhbD1pbm90aWZ5IDs7CiAgICBrIHwga3EgfCBrcXUgfCBrcXVlIHwga3F1 ZXUgfCBrcXVldWUgKQl2YWw9a3F1ZXVlIDs7CiAgICBnIHwgZ2YgfCBnZmkgfCBnZmlsIHwg Z2ZpbGUgKQl2YWw9Z2ZpbGUgOzsKICAgIHcgfCB3MyB8IHczMiApCXZhbD13MzIgOzsKICAg ICogKSBBQ19NU0dfRVJST1IoWyctLXdpdGgtZmlsZS1ub3RpZmljYXRpb249JHdpdGh2YWwn IGlzIGludmFsaWQ7CnRoaXMgb3B0aW9uJ3MgdmFsdWUgc2hvdWxkIGJlICd5ZXMnLCAnbm8n LCAnaW5vdGlmeScsICdrcXVldWUnLCAnZ2ZpbGUnIG9yICd3MzInLgoneWVzJyBpcyBhIHN5 bm9ueW0gZm9yICd3MzInIG9uIE1TLVdpbmRvd3MsIGZvciAnbm8nIG9uIE5leHRzdGVwLApv dGhlcndpc2UgZm9yIHRoZSBmaXJzdCBvZiAnaW5vdGlmeScsICdrcXVldWUnIG9yICdnZmls ZScgdGhhdCBpcyB1c2FibGUuXSkKICAgIDs7CiAgIGVzYWMKICAgd2l0aF9maWxlX25vdGlm aWNhdGlvbj0kdmFsCiBdLAogW3dpdGhfZmlsZV9ub3RpZmljYXRpb249JHdpdGhfZmVhdHVy ZXNdKQoKT1BUSU9OX0RFRkFVTFRfT0ZGKFt4d2lkZ2V0c10sCiAgW2VuYWJsZSB1c2Ugb2Yg eHdpZGdldHMgaW4gRW1hY3MgYnVmZmVycyAocmVxdWlyZXMgZ3RrMyBvciBtYWNPUyBDb2Nv YSldKQoKT1BUSU9OX0RFRkFVTFRfT0ZGKFtiZS1hcHBdLAogIFtlbmFibGUgdXNlIG9mIEhh aWt1J3MgQXBwbGljYXRpb24gS2l0IGFzIGEgd2luZG93IHN5c3RlbV0pCgpPUFRJT05fREVG QVVMVF9PRkYoW2JlLWNhaXJvXSwKICBbZW5hYmxlIHVzZSBvZiBjYWlybyB1bmRlciBIYWlr dSdzIEFwcGxpY2F0aW9uIEtpdF0pCgojIyBNYWtlZmlsZS5pbiBuZWVkcyB0aGUgY2FjaGUg ZmlsZSBuYW1lLgpBQ19TVUJTVChbY2FjaGVfZmlsZV0pCgojIyBUaGlzIGlzIGFuIG9wdGlv biBiZWNhdXNlIEkgZG8gbm90IGtub3cgaWYgYWxsIGluZm8vbWFuIHN1cHBvcnQKIyMgY29t cHJlc3NlZCBmaWxlcywgbm9yIGhvdyB0byB0ZXN0IGlmIHRoZXkgZG8gc28uCk9QVElPTl9E RUZBVUxUX09OKFtjb21wcmVzcy1pbnN0YWxsXSwKICBbZG9uJ3QgY29tcHJlc3Mgc29tZSBm aWxlcyAoLmVsLCAuaW5mbywgZXRjLikgd2hlbiBpbnN0YWxsaW5nLiAgRXF1aXZhbGVudCB0 bzoKbWFrZSBHWklQX1BST0c9IGluc3RhbGxdKQoKQUNfQVJHX1dJVEgoW2dhbWV1c2VyXSwK W0FTX0hFTFBfU1RSSU5HKFstLXdpdGgtZ2FtZXVzZXI9VVNFUl9PUl9HUk9VUF0sCgkJW3Vz ZXIgZm9yIHNoYXJlZCBnYW1lIHNjb3JlIGZpbGVzLgoJCUFuIGFyZ3VtZW50IHByZWZpeGVk IGJ5ICc6JyBzcGVjaWZpZXMgYSBncm91cCBpbnN0ZWFkLl0pXSkKZ2FtZXVzZXI9CmdhbWVn cm91cD0KY2FzZSAke3dpdGhfZ2FtZXVzZXJ9IGluCiAgJycgfCBubykgOzsKICB5ZXMpIGdh bWVncm91cD1nYW1lcyA7OwogIDoqKSBnYW1lZ3JvdXA9JHt3aXRoX2dhbWV1c2VyIzp9IDs7 CiAgKikgZ2FtZXVzZXI9JHt3aXRoX2dhbWV1c2VyfSA7Owplc2FjCgpBQ19BUkdfV0lUSChb Z251c3RlcC1jb25mXSwKW0FTX0hFTFBfU1RSSU5HKFstLXdpdGgtZ251c3RlcC1jb25mPUZJ TEVOQU1FXSwKICAgW25hbWUgb2YgR05Vc3RlcCBjb25maWd1cmF0aW9uIGZpbGUgdG8gdXNl IG9uIHN5c3RlbXMgd2hlcmUgdGhlIGNvbW1hbmQKICAgICdnbnVzdGVwLWNvbmZpZycgZG9l cyBub3Qgd29yazsgZGVmYXVsdCAkR05VU1RFUF9DT05GSUdfRklMRSwgb3IKICAgIC9ldGMv R05Vc3RlcC9HTlVzdGVwLmNvbmZdKV0pCnRlc3QgIlgke3dpdGhfZ251c3RlcF9jb25mfSIg IT0gWCAmJiB0ZXN0ICIke3dpdGhfZ251c3RlcF9jb25mfSIgIT0geWVzICYmIFwKICBHTlVT VEVQX0NPTkZJR19GSUxFPSIke3dpdGhfZ251c3RlcF9jb25mfSIKdGVzdCAiWCRHTlVTVEVQ X0NPTkZJR19GSUxFIiA9ICJYIiAmJiBcCiAgICAgR05VU1RFUF9DT05GSUdfRklMRT0vZXRj L0dOVXN0ZXAvR05Vc3RlcC5jb25mCgpBQ19BUkdfRU5BQkxFKFtucy1zZWxmLWNvbnRhaW5l ZF0sCltBU19IRUxQX1NUUklORyhbLS1kaXNhYmxlLW5zLXNlbGYtY29udGFpbmVkXSwKICAg ICAgICAgICAgICAgIFtkaXNhYmxlIHNlbGYgY29udGFpbmVkIGJ1aWxkIHVuZGVyIE5lWFRz dGVwXSldLAogICBbRU5fTlNfU0VMRl9DT05UQUlORUQ9JGVuYWJsZXZhbF0sCiAgIFtFTl9O U19TRUxGX0NPTlRBSU5FRD15ZXNdKQoKbG9jYWxsaXNwcGF0aHNldD1ubwpBQ19BUkdfRU5B QkxFKFtsb2NhbGxpc3BwYXRoXSwKW0FTX0hFTFBfU1RSSU5HKFstLWVuYWJsZS1sb2NhbGxp c3BwYXRoPVBBVEhdLAogICAgICAgICAgICAgICAgW2RpcmVjdG9yaWVzIEVtYWNzIHNob3Vs ZCBzZWFyY2ggZm9yIGxpc3AgZmlsZXMgc3BlY2lmaWMKCQkgdG8gdGhpcyBzaXRlXSldLApb aWYgdGVzdCAiJHtlbmFibGV2YWx9IiA9ICJubyI7IHRoZW4KICBsb2NhbGxpc3BwYXRoPQpl bGlmIHRlc3QgIiR7ZW5hYmxldmFsfSIgIT0gInllcyI7IHRoZW4KICBsb2NhbGxpc3BwYXRo PSR7ZW5hYmxldmFsfSBsb2NhbGxpc3BwYXRoc2V0PXllcwpmaV0pCgpBQ19BUkdfRU5BQkxF KFtjaGVja2luZ10sCltBU19IRUxQX1NUUklORyhbLS1lbmFibGUtY2hlY2tpbmdAPDpAPUxJ U1RAOj5AXSwKCQlbZW5hYmxlIGV4cGVuc2l2ZSBjaGVja3MuICBXaXRoIExJU1QsCgkJIGVu YWJsZSBvbmx5IHNwZWNpZmljIGNhdGVnb3JpZXMgb2YgY2hlY2tzLgoJCSBDYXRlZ29yaWVz IGFyZTogYWxsLHllcyxuby4KCQkgRmxhZ3MgYXJlOiBzdHJpbmdieXRlcywgc3RyaW5nb3Zl cnJ1biwgc3RyaW5nZnJlZWxpc3QsCgkJIHN0cnVjdHMsIGdseXBoc10pXSwKW2FjX2NoZWNr aW5nX2ZsYWdzPSIke2VuYWJsZXZhbH0iXSxbXSkKSUZTPSIke0lGUz0gCX0iOyBhY19zYXZl X0lGUz0iJElGUyI7IElGUz0iJElGUywiCkNIRUNLX1NUUlVDVFM9ZmFsc2UKZm9yIGNoZWNr IGluICRhY19jaGVja2luZ19mbGFncwpkbwoJY2FzZSAkY2hlY2sgaW4KCSMgdGhlc2Ugc2V0 IGFsbCB0aGUgZmxhZ3MgdG8gc3BlY2lmaWMgc3RhdGVzCgl5ZXMpCQlhY19lbmFibGVfY2hl Y2tpbmc9MSA7OwoJbm8pCQlhY19lbmFibGVfY2hlY2tpbmc9IDsKCQkJQ0hFQ0tfU1RSVUNU Uz1mYWxzZQoJCQlhY19nY19jaGVja19zdHJpbmdieXRlcz0gOwoJICAgICAgICAgICAgICAg IGFjX2djX2NoZWNrX3N0cmluZ19vdmVycnVuPSA7CgkgICAgICAgICAgICAgICAgYWNfZ2Nf Y2hlY2tfc3RyaW5nX2ZyZWVfbGlzdD0gOwoJCQlhY19nbHlwaHNfZGVidWc9IDs7CglhbGwp CQlhY19lbmFibGVfY2hlY2tpbmc9MSA7CgkJCUNIRUNLX1NUUlVDVFM9dHJ1ZQoJCQlhY19n Y19jaGVja19zdHJpbmdieXRlcz0xIDsKCSAgICAgICAgICAgICAgICBhY19nY19jaGVja19z dHJpbmdfb3ZlcnJ1bj0xIDsKCSAgICAgICAgICAgICAgICBhY19nY19jaGVja19zdHJpbmdf ZnJlZV9saXN0PTEgOwoJCQlhY19nbHlwaHNfZGVidWc9MSA7OwoJIyB0aGVzZSBlbmFibGUg cGFydGljdWxhciBjaGVja3MKCXN0cmluZ2J5dGVzKQlhY19nY19jaGVja19zdHJpbmdieXRl cz0xIDs7CglzdHJpbmdvdmVycnVuKQlhY19nY19jaGVja19zdHJpbmdfb3ZlcnJ1bj0xIDs7 CglzdHJpbmdmcmVlbGlzdCkgYWNfZ2NfY2hlY2tfc3RyaW5nX2ZyZWVfbGlzdD0xIDs7Cglz dHJ1Y3RzKQlDSEVDS19TVFJVQ1RTPXRydWUgOzsKCWdseXBocykJCWFjX2dseXBoc19kZWJ1 Zz0xIDs7CgkqKQlBQ19NU0dfRVJST1IoW3Vua25vd24gY2hlY2sgY2F0ZWdvcnkgJGNoZWNr XSkgOzsKCWVzYWMKZG9uZQpJRlM9IiRhY19zYXZlX0lGUyIKCmlmIHRlc3QgeCRhY19lbmFi bGVfY2hlY2tpbmcgIT0geCA7IHRoZW4KICBBQ19ERUZJTkUoW0VOQUJMRV9DSEVDS0lOR10s IFsxXSwKW0RlZmluZSB0byAxIGlmIGV4cGVuc2l2ZSBydW4tdGltZSBkYXRhIHR5cGUgYW5k IGNvbnNpc3RlbmN5IGNoZWNrcyBhcmUgZW5hYmxlZC5dKQpmaQppZiAkQ0hFQ0tfU1RSVUNU UzsgdGhlbgogIEFDX0RFRklORShbQ0hFQ0tfU1RSVUNUU10sIFsxXSwKICAgIFtEZWZpbmUg dGhpcyB0byBjaGVjayB3aGV0aGVyIHNvbWVvbmUgdXBkYXRlZCB0aGUgcG9ydGFibGUgZHVt cGVyCiAgICAgY29kZSBhZnRlciBjaGFuZ2luZyB0aGUgbGF5b3V0IG9mIGEgc3RydWN0dXJl IHRoYXQgaXQgdXNlcy4KICAgICBJZiB5b3UgY2hhbmdlIG9uZSBvZiB0aGVzZSBzdHJ1Y3R1 cmVzLCBjaGVjayB0aGF0IHRoZSBwZHVtcGVyLmMKICAgICBjb2RlIGlzIHN0aWxsIHZhbGlk LCBhbmQgdXBkYXRlIHRoZSBwZXJ0aW5lbnQgaGFzaCBpbiBwZHVtcGVyLmMKICAgICBieSBt YW51YWxseSBjb3B5aW5nIHRoZSBoYXNoIGZyb20gdGhlIG5ld2x5LWdlbmVyYXRlZCBkbXBz dHJ1Y3QuaC5dKQpmaQpBQ19TVUJTVChbQ0hFQ0tfU1RSVUNUU10pCmlmIHRlc3QgeCRhY19n Y19jaGVja19zdHJpbmdieXRlcyAhPSB4IDsgdGhlbgogIEFDX0RFRklORShbR0NfQ0hFQ0tf U1RSSU5HX0JZVEVTXSwgWzFdLApbRGVmaW5lIHRoaXMgdGVtcG9yYXJpbHkgdG8gaHVudCBh IGJ1Zy4gIElmIGRlZmluZWQsIHRoZSBzaXplIG9mCiAgIHN0cmluZ3MgaXMgcmVkdW5kYW50 bHkgcmVjb3JkZWQgaW4gc2RhdGEgc3RydWN0dXJlcyBzbyB0aGF0IGl0IGNhbgogICBiZSBj b21wYXJlZCB0byB0aGUgc2l6ZXMgcmVjb3JkZWQgaW4gTGlzcCBzdHJpbmdzLl0pCmZpCmlm IHRlc3QgeCRhY19nY19jaGVja19zdHJpbmdfb3ZlcnJ1biAhPSB4IDsgdGhlbgogIEFDX0RF RklORShbR0NfQ0hFQ0tfU1RSSU5HX09WRVJSVU5dLCBbMV0sCltEZWZpbmUgdGhpcyB0byBj aGVjayBmb3Igc2hvcnQgc3RyaW5nIG92ZXJydW4uXSkKZmkKaWYgdGVzdCB4JGFjX2djX2No ZWNrX3N0cmluZ19mcmVlX2xpc3QgIT0geCA7IHRoZW4KICBBQ19ERUZJTkUoW0dDX0NIRUNL X1NUUklOR19GUkVFX0xJU1RdLCBbMV0sCltEZWZpbmUgdGhpcyB0byBjaGVjayB0aGUgc3Ry aW5nIGZyZWUgbGlzdC5dKQpmaQppZiB0ZXN0IHgkYWNfZ2x5cGhzX2RlYnVnICE9IHggOyB0 aGVuCiAgQUNfREVGSU5FKFtHTFlQSF9ERUJVR10sIFsxXSwKW0RlZmluZSB0aGlzIHRvIGVu YWJsZSBnbHlwaHMgZGVidWdnaW5nIGNvZGUuXSkKZmkKCmRubCBUaGUgbmFtZSBvZiB0aGlz IG9wdGlvbiBpcyB1bmZvcnR1bmF0ZS4gIEl0IHByZWRhdGVzLCBhbmQgaGFzIG5vCmRubCBy ZWxhdGlvbiB0bywgdGhlICJzYW1wbGluZy1iYXNlZCBlbGlzcCBwcm9maWxlciIgYWRkZWQg aW4gMjQuMy4KZG5sIEFjdHVhbGx5LCBpdCBzdG9wcyBpdCB3b3JraW5nLgpkbmwgaHR0cHM6 Ly9saXN0cy5nbnUub3JnL3IvZW1hY3MtZGV2ZWwvMjAxMi0xMS9tc2cwMDM5My5odG1sCkFD X0FSR19FTkFCTEUoW3Byb2ZpbGluZ10sCltBU19IRUxQX1NUUklORyhbLS1lbmFibGUtcHJv ZmlsaW5nXSwKCQlbYnVpbGQgZW1hY3Mgd2l0aCBsb3ctbGV2ZWwsIGdwcm9mIHByb2ZpbGlu ZyBzdXBwb3J0LgogICAgICAgICAgICAgICAgTWFpbmx5IHVzZWZ1bCBmb3IgZGVidWdnaW5n IEVtYWNzIGl0c2VsZi4gIE1heSBub3Qgd29yayBvbgogICAgICAgICAgICAgICAgYWxsIHBs YXRmb3Jtcy4gIFN0b3BzIHByb2ZpbGVyLmVsIHdvcmtpbmcuXSldLApbYWNfZW5hYmxlX3By b2ZpbGluZz0iJHtlbmFibGV2YWx9Il0sW10pCmlmIHRlc3QgeCRhY19lbmFibGVfcHJvZmls aW5nICE9IHggOyB0aGVuCiAgIFBST0ZJTElOR19DRkxBR1M9Ii1EUFJPRklMSU5HPTEgLXBn IgplbHNlCiAgIFBST0ZJTElOR19DRkxBR1M9CmZpCkFDX1NVQlNUKFtQUk9GSUxJTkdfQ0ZM QUdTXSkKCkFDX0FSR19FTkFCTEUoW2F1dG9kZXBlbmRdLApbQVNfSEVMUF9TVFJJTkcoWy0t ZW5hYmxlLWF1dG9kZXBlbmRdLAoJCVthdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGRlcGVuZGVu Y2llcyB0byAuaC1maWxlcy4KCQkgUmVxdWlyZXMgZ2NjLCBlbmFibGVkIGlmIGZvdW5kLl0p XSwKW2FjX2VuYWJsZV9hdXRvZGVwZW5kPSIke2VuYWJsZXZhbH0iXSxbYWNfZW5hYmxlX2F1 dG9kZXBlbmQ9eWVzXSkKCkFDX0FSR19FTkFCTEUoW2d0ay1kZXByZWNhdGlvbi13YXJuaW5n c10sCltBU19IRUxQX1NUUklORyhbLS1lbmFibGUtZ3RrLWRlcHJlY2F0aW9uLXdhcm5pbmdz XSwKCQlbU2hvdyBHdGsrL0dkayBkZXByZWNhdGlvbiB3YXJuaW5ncyBmb3IgR3RrKyA+PSAz LjBdKV0sClthY19lbmFibGVfZ3RrX2RlcHJlY2F0aW9uX3dhcm5pbmdzPSIke2VuYWJsZXZh bH0iXSxbXSkKCkJVSUxEX0RFVEFJTFM9CkFDX0FSR19FTkFCTEUoW2J1aWxkLWRldGFpbHNd LAogIFtBU19IRUxQX1NUUklORyhbLS1kaXNhYmxlLWJ1aWxkLWRldGFpbHNdLAoJCSAgW01h a2UgdGhlIGJ1aWxkIG1vcmUgZGV0ZXJtaW5pc3RpYyBieSBvbWl0dGluZyBob3N0CgkJICAg bmFtZXMsIHRpbWUgc3RhbXBzLCBldGMuIGZyb20gdGhlIG91dHB1dC5dKV0sCiAgW3Rlc3Qg IiRlbmFibGV2YWwiID0gbm8gJiYgQlVJTERfREVUQUlMUz0tLW5vLWJ1aWxkLWRldGFpbHNd KQpBQ19TVUJTVChbQlVJTERfREVUQUlMU10pCgpkbmwgVGhpcyB1c2VkIHRvIHVzZSBjaGFu Z2VxdW90ZSwgYnV0LCBhcGFydCBmcm9tICdjaGFuZ2VxdW90ZSBpcyBldmlsJwpkbmwgcGVy IHRoZSBhdXRvY29uZiBtYW51YWwsIHdlIGNhbiBzcGVlZCB1cCBhdXRvY29uZiBzb21ld2hh dCBieSBxdW90aW5nCmRubCB0aGUgZ3JlYXQgZ29iIG9mIHRleHQuICBUaHVzIGl0J3Mgbm90 IHByb2Nlc3NlZCBmb3IgcG9zc2libGUgZXhwYW5zaW9uLgpkbmwgSnVzdCBtYWtlIHN1cmUg dGhlIGJyYWNrZXRzIHJlbWFpbiBiYWxhbmNlZC4KZG5sCmRubCBTaW5jZSBFbWFjcyBjYW4n dCBmaW5kIG1hdGNoaW5nIHBhaXJzIG9mIHF1b3RlcywgYm91bmRhcmllcyBhcmUKZG5sIGlu ZGljYXRlZCBieSBjb21tZW50cy4KZG5sIHF1b3RhdGlvbiBiZWdpbnMKWwoKIyMjIElmIHlv dSBhZGQgc3VwcG9ydCBmb3IgYSBuZXcgY29uZmlndXJhdGlvbiwgYWRkIGNvZGUgdG8gdGhp cwojIyMgc3dpdGNoIHN0YXRlbWVudCB0byByZWNvZ25pemUgeW91ciBjb25maWd1cmF0aW9u IG5hbWUgYW5kIHNlbGVjdAojIyMgdGhlIGFwcHJvcHJpYXRlIG9wc3lzLgoKIyMjIEFzIGZh ciBhcyBoYW5kbGluZyB2ZXJzaW9uIG51bWJlcnMgb24gb3BlcmF0aW5nIHN5c3RlbXMgaXMK IyMjIGNvbmNlcm5lZCwgbWFrZSBzdXJlIHRoaW5ncyB3aWxsIGZhaWwgaW4gYSBmaXhhYmxl IHdheS4gIElmCiMjIyAvZXRjL01BQ0hJTkVTIGRvZXNuJ3Qgc2F5IGFueXRoaW5nIGFib3V0 IHZlcnNpb24gbnVtYmVycywgYmUKIyMjIHByZXBhcmVkIHRvIGhhbmRsZSBhbnl0aGluZyBy ZWFzb25hYmx5LiAgSWYgdmVyc2lvbiBudW1iZXJzCiMjIyBtYXR0ZXIsIGJlIHN1cmUgL2V0 Yy9NQUNISU5FUyBzYXlzIHNvbWV0aGluZyBhYm91dCBpdC4KCm9wc3lzPScnIHVucG9ydGVk PW5vCmNhc2UgIiR7Y2Fub25pY2FsfSIgaW4KCiAgIyMgR05VL0xpbnV4IGFuZCBzaW1pbGFy IHBvcnRzCiAgKi0qLWxpbnV4KiApCiAgICBvcHN5cz1nbnUtbGludXgKICA7OwoKICAjIyBG cmVlQlNEIHBvcnRzCiAgKi0qLWZyZWVic2QqICkKICAgIG9wc3lzPWZyZWVic2QKICA7OwoK ICAjIyBEcmFnb25GbHkgcG9ydHMKICAqLSotZHJhZ29uZmx5KiApCiAgICBvcHN5cz1kcmFn b25mbHkKICA7OwoKICAjIyBGcmVlQlNEIGtlcm5lbCArIGdsaWJjIGJhc2VkIHVzZXJsYW5k CiAgKi0qLWtmcmVlYnNkKmdudSogKQogICAgb3BzeXM9Z251LWtmcmVlYnNkCiAgOzsKCiAg IyMgTmV0QlNEIHBvcnRzCiAgKi0qLW5ldGJzZCogKQogICAgb3BzeXM9bmV0YnNkCiAgOzsK CiAgIyMgT3BlbkJTRCBwb3J0cwogICotKi1vcGVuYnNkKiB8ICotKi1taXJic2QqICkKICAg IG9wc3lzPW9wZW5ic2QKICA7OwoKICAjIyBBcHBsZSBEYXJ3aW4gLyBtYWNPUwogICotYXBw bGUtZGFyd2luKiApCiAgICBjYXNlICIke2Nhbm9uaWNhbH0iIGluCiAgICAgICotYXBwbGUt ZGFyd2luWzAtOV0uKikgdW5wb3J0ZWQ9eWVzIDs7CiAgICAgIGlbMzQ1Nl04Ni0qIHwgeDg2 XzY0LSogfCBhcm0tKiB8IGFhcmNoNjQtKiApICA7OwogICAgICAqICkgICAgICAgICAgICB1 bnBvcnRlZD15ZXMgOzsKICAgIGVzYWMKICAgIG9wc3lzPWRhcndpbgogICAgIyMgRklYTUU6 IEZpbmQgYSB3YXkgdG8gdXNlIEZpbmsgaWYgYXZhaWxhYmxlIChCdWcjMTE1MDcpLgogIDs7 CgogICMjIENocm9taXVtIE5hdGl2ZSBDbGllbnQKICAqLW5hY2wgKQogICAgb3BzeXM9bmFj bAogIDs7CgogICMjIEN5Z3dpbiBwb3J0cwogICotKi1jeWd3aW4gKQogICAgb3BzeXM9Y3ln d2luCiAgOzsKCiAgIyMgSFAgOTAwMCBzZXJpZXMgNzAwIGFuZCA4MDAsIHJ1bm5pbmcgSFAv VVgKICBocHBhKi1ocC1ocHV4MTAuMiogKQogICAgb3BzeXM9aHB1eDEwLTIwCiAgOzsKICBo cHBhKi1ocC1ocHV4MVsxLTldKiApCiAgICBvcHN5cz1ocHV4MTEKICAgIENGTEFHUz0iLURf SU5DTFVERV9fU1REQ19BMV9TT1VSQ0UgJENGTEFHUyIKICA7OwoKICAjIyBJQk0gbWFjaGlu ZXMKICByczYwMDAtaWJtLWFpeDQuWzIzXSogKQogICAgb3BzeXM9YWl4NC0yCiAgOzsKICBw b3dlcnBjLWlibS1haXg0LlsyM10qICApCiAgICBvcHN5cz1haXg0LTIKICA7OwogIHJzNjAw MC1pYm0tYWl4WzU2XSogKQogICAgb3BzeXM9YWl4NC0yCiAgOzsKICBwb3dlcnBjLWlibS1h aXhbNS05XSogfCBwb3dlcnBjLWlibS1haXhbMS05XVswLTldKiApCiAgICBvcHN5cz1haXg0 LTIKICA7OwoKICAjIyBTb2xhcmlzCiAgKi0qLXNvbGFyaXMqIHwgKi0qLXN1bm9zKikKICAg IGNhc2UgIiR7Y2Fub25pY2FsfSIgaW4KICAgICAgaVszNDU2XTg2LSotKiApICAgOzsKICAg ICAgYW1kNjQtKi0qfHg4Nl82NC0qLSopIDs7CiAgICAgIHNwYXJjKiApCQk7OwogICAgICAq ICkJCXVucG9ydGVkPXllcyA7OwogICAgZXNhYwogICAgb3BzeXM9c29sYXJpcwogICAgIyMg V2F0Y2ggb3V0IGZvciBhIGNvbXBpbGVyIHRoYXQgd2Uga25vdyB3aWxsIG5vdCB3b3JrLgog ICAgaWYgWyAiJENDIiA9IC91c3IvdWNiL2NjIF07IHRoZW4KICAgICAgIyMgL3Vzci91Y2Iv Y2MgZG9lc24ndCB3b3JrOwogICAgICAjIyB3ZSBzaG91bGQgZmluZCBzb21lIG90aGVyIGNv bXBpbGVyIHRoYXQgZG9lcyB3b3JrLgogICAgICB1bnNldCBDQwogICAgZmkKICA7OwoKICAj IyBRTlggTmV1dHJpbm8KICAqLW50by1xbngqICkKICAgIG9wc3lzPXFueG50bwogICAgdGVz dCAteiAiJENDIiAmJiBDQz1xY2MKICAgIExERkxBR1M9Ii1OMk0gJExERkxBR1MiCiAgOzsK CiAgKi1oYWlrdSApCiAgICBvcHN5cz1oYWlrdQogIDs7CgogICMjIEludGVsIDM4NiBtYWNo aW5lcyB3aGVyZSB3ZSBkb24ndCBjYXJlIGFib3V0IHRoZSBtYW51ZmFjdHVyZXIuCiAgaVsz NDU2XTg2LSotKiApCiAgICBjYXNlICIke2Nhbm9uaWNhbH0iIGluCiAgICAgICotZGFyd2lu KiApICAgICAgICAgICAgICAgb3BzeXM9ZGFyd2luIDs7CiAgICAgICotbWluZ3cqICkKCQlv cHN5cz1taW5ndzMyCgkJIyBNaW5HVyBvdmVycmlkZXMgYW5kIGFkZHMgc29tZSBzeXN0ZW0g aGVhZGVycyBpbiBudC9pbmMuCgkJR0NDX1RFU1RfT1BUSU9OUz0iLUkgJHNyY2Rpci9udC9p bmMiCgkJOzsKICAgICAgKi1zeXN2NC4ydXcqICkJCW9wc3lzPXVuaXh3YXJlIDs7CiAgICAg ICotc3lzdjV1dyogKQkJb3BzeXM9dW5peHdhcmUgOzsKICAgICAgKi1zeXN2NU9wZW5VTklY KiApCW9wc3lzPXVuaXh3YXJlIDs7CiAgICAgICMjIE90aGVyd2lzZSwgd2UnbGwgZmFsbCB0 aHJvdWdoIHRvIHRoZSBnZW5lcmljIG9wc3lzIGNvZGUgYXQgdGhlIGJvdHRvbS4KICAgIGVz YWMKICA7OwoKICAjIE1pbkdXNjQKICB4ODZfNjQtKi0qICkKICAgIGNhc2UgIiR7Y2Fub25p Y2FsfSIgaW4KICAgICAgKi1taW5ndyogKQoJCW9wc3lzPW1pbmd3MzIKCQkjIE1pbkdXIG92 ZXJyaWRlcyBhbmQgYWRkcyBzb21lIHN5c3RlbSBoZWFkZXJzIGluIG50L2luYy4KCQlHQ0Nf VEVTVF9PUFRJT05TPSItSSAkc3JjZGlyL250L2luYyIKCQk7OwogICAgICAjIyBPdGhlcndp c2UsIHdlJ2xsIGZhbGwgdGhyb3VnaCB0byB0aGUgZ2VuZXJpYyBvcHN5cyBjb2RlIGF0IHRo ZSBib3R0b20uCiAgICBlc2FjCiAgOzsKCiAgKiApCiAgICB1bnBvcnRlZD15ZXMKICA7Owpl c2FjCgojIyMgSWYgdGhlIGNvZGUgYWJvdmUgZGlkbid0IGNob29zZSBhbiBvcGVyYXRpbmcg c3lzdGVtLCBqdXN0IGNob29zZQojIyMgYW4gb3BlcmF0aW5nIHN5c3RlbSBiYXNlZCBvbiB0 aGUgY29uZmlndXJhdGlvbiBuYW1lLiAgWW91IHJlYWxseQojIyMgb25seSB3YW50IHRvIHVz ZSB0aGlzIHdoZW4geW91IGhhdmUgbm8gaWRlYSB3aGF0IHRoZSByaWdodAojIyMgb3BlcmF0 aW5nIHN5c3RlbSBpczsgaWYgeW91IGtub3cgd2hhdCBvcGVyYXRpbmcgc3lzdGVtcyBhIG1h Y2hpbmUKIyMjIHJ1bnMsIGl0J3MgY2xlYW5lciB0byBtYWtlIGl0IGV4cGxpY2l0IGluIHRo ZSBjYXNlIHN0YXRlbWVudAojIyMgYWJvdmUuCmlmIHRlc3QgeCIke29wc3lzfSIgPSB4OyB0 aGVuCiAgY2FzZSAiJHtjYW5vbmljYWx9IiBpbgogICAgKi1nbnUqICkJCQkJb3BzeXM9Z251 IDs7CiAgICAqICkKICAgICAgdW5wb3J0ZWQ9eWVzCiAgICA7OwogIGVzYWMKZmkKCl0KZG5s IHF1b3RhdGlvbiBlbmRzCgppZiB0ZXN0ICR1bnBvcnRlZCA9IHllczsgdGhlbgogIEFDX01T R19FUlJPUihbRW1hY3MgZG9lcyBub3Qgc3VwcG9ydCAnJHtjYW5vbmljYWx9JyBzeXN0ZW1z LgpJZiB5b3UgdGhpbmsgaXQgc2hvdWxkLCBwbGVhc2Ugc2VuZCBhIHJlcG9ydCB0byAke1BB Q0tBR0VfQlVHUkVQT1JUfS4KQ2hlY2sgJ2V0Yy9NQUNISU5FUycgZm9yIHJlY29nbml6ZWQg Y29uZmlndXJhdGlvbiBuYW1lcy5dKQpmaQoKIyMjIyBDaG9vc2UgYSBjb21waWxlci4KCmRu bCBEb24ndCBib3RoZXIgdG8gdGVzdCBmb3IgQzg5LgpBQ19ERUZVTihbX0FDX1BST0dfQ0Nf Qzg5XSwgWyQyXSkKCmRubCBTZXRzIEdDQz15ZXMgaWYgdXNpbmcgZ2NjLgpBQ19QUk9HX0ND KFtnY2MgY2MgY2wgY2xhbmcgIiRYQ1JVTiBnY2MiICIkWENSVU4gY2xhbmciXSkKaWYgdGVz dCAtbiAiJFhDUlVOIjsgdGhlbgogIEFDX0NIRUNLX1BST0dTKFtBUl0sIFthciAiJFhDUlVO IGFyIl0pCiAgdGVzdCAtbiAiJEFSIiAmJiBleHBvcnQgQVIKZmkKCmRubCBFbWFjcyBuZWVk cyBDOTkgb3IgbGF0ZXIuCmdsX1BST0dfQ0NfQzk5CgpBQ19QUk9HX0NDX0NfTwoKaWYgdGVz dCB4JEdDQyA9IHh5ZXM7IHRoZW4KICB0ZXN0ICJ4JEdDQ19URVNUX09QVElPTlMiICE9IHgg JiYgQ0M9IiRDQyAkR0NDX1RFU1RfT1BUSU9OUyIKZmkKCiMgQXZvaWQgZ251bGliJ3MgdGVz dHMgZm9yIC1sY3J5cHRvLCBzbyB0aGF0IHRoZXJlJ3Mgbm8gc3RhdGljIGRlcGVuZGVuY3kg b24gaXQuCkFDX0RFRlVOKFtnbF9DUllQVE9fQ0hFQ0tdKQojIEF2b2lkIGdudWxpYidzIHRl c3RzIGZvciBIQVZFX1dPUktJTkdfT19OT0FUSU1FIGFuZCBIQVZFX1dPUktJTkdfT19OT0ZP TExPVywKIyBhcyB3ZSBkb24ndCB1c2UgdGhlbS4KQUNfREVGVU4oW2dsX0ZDTlRMX09fRkxB R1NdKQojIEF2b2lkIGdudWxpYidzIHRlc3QgZm9yIHB0aHJlYWRfc2lnbWFzay4KZnVuY3M9 CmZvciBmdW5jIGluICRhY19mdW5jX2xpc3Q7IGRvCiAgdGVzdCAkZnVuYyA9IHB0aHJlYWRf c2lnbWFzayB8fCBBU19WQVJfQVBQRU5EKFtmdW5jc10sIFsiICRmdW5jIl0pCmRvbmUKYWNf ZnVuY19saXN0PSRmdW5jcwojIEVtYWNzIGRvZXMgbm90IHVzZSB0aGUgd2NoYXIgb3Igd2N0 eXBlLWggbW9kdWxlcy4KQUNfREVGVU4oW2d0X1RZUEVfV0lOVF9UXSwKICBbR05VTElCSEVB REVSU19PVkVSUklERV9XSU5UX1Q9MAogICBBQ19TVUJTVChbR05VTElCSEVBREVSU19PVkVS UklERV9XSU5UX1RdKV0pCgojIEluaXRpYWxpemUgZ251bGliIHJpZ2h0IGFmdGVyIGNob29z aW5nIHRoZSBjb21waWxlci4KZG5sIEFtb25nc3Qgb3RoZXIgdGhpbmdzLCB0aGlzIHNldHMg QVIgYW5kIEFSRkxBR1MuCmdsX0VBUkxZCgppZiB0ZXN0ICIkYWNfdGVzdF9DRkxBR1MiICE9 IHNldDsgdGhlbgogICMgSXQncyBoZWxwZnVsIHRvIGhhdmUgQyBtYWNyb3MgYXZhaWxhYmxl IHRvIEdEQiwgc28gcHJlZmVyIC1nMyB0byAtZwogICMgaWYgLWczIHdvcmtzIGFuZCB0aGUg dXNlciBkb2VzIG5vdCBzcGVjaWZ5IENGTEFHUy4KICAjIFRoaXMgdGVzdCBtdXN0IGZvbGxv dyBnbF9FQVJMWTsgb3RoZXJ3aXNlIEFDX0xJTktfSUZFTFNFIGNvbXBsYWlucy4KICBjYXNl ICRDRkxBR1MgaW4KICAgICctZycpCiAgICAgIGVtYWNzX2czX0NGTEFHUz0nLWczJzs7CiAg ICAnLWcgLU8yJykKICAgICAgZW1hY3NfZzNfQ0ZMQUdTPSctZzMgLU8yJzs7CiAgICAqKQog ICAgICBlbWFjc19nM19DRkxBR1M9Jyc7OwogIGVzYWMKICBpZiB0ZXN0IC1uICIkZW1hY3Nf ZzNfQ0ZMQUdTIjsgdGhlbgogICAgZW1hY3Nfc2F2ZV9DRkxBR1M9JENGTEFHUwogICAgQ0ZM QUdTPSRlbWFjc19nM19DRkxBR1MKICAgIEFDX0NBQ0hFX0NIRUNLKFt3aGV0aGVyICRDQyBh Y2NlcHRzICRlbWFjc19nM19DRkxBR1NdLAogICAgICBbZW1hY3NfY3ZfcHJvZ19jY19nM10s CiAgICAgIFtBQ19MSU5LX0lGRUxTRShbQUNfTEFOR19QUk9HUkFNKCldLAoJIFtlbWFjc19j dl9wcm9nX2NjX2czPXllc10sCgkgW2VtYWNzX2N2X3Byb2dfY2NfZzM9bm9dKV0pCiAgICBp ZiB0ZXN0ICRlbWFjc19jdl9wcm9nX2NjX2czICE9IHllczsgdGhlbgogICAgICBDRkxBR1M9 JGVtYWNzX3NhdmVfQ0ZMQUdTCiAgICBmaQogICAgIyBIYWlrdSBhbHNvIG5lZWRzIC1nZHdh cmYtMiBiZWNhdXNlIGl0cyBHREIgaXMgdG9vIG9sZAogICAgIyB0byB1bmRlcnN0YW5kIG5l d2VyIGZvcm1hdHMuCiAgICBpZiB0ZXN0ICRvcHN5cyA9IG1pbmd3MzIgfHwgdGVzdCAkb3Bz eXMgPSBoYWlrdTsgdGhlbgogICAgICBDRkxBR1M9IiRDRkxBR1MgLWdkd2FyZi0yIgogICAg ZmkKICBmaQoKICBjYXNlICRDRkxBR1MgaW4KICAgICotTyopIDs7CiAgICAqKQogICAgICAj IE5vIG9wdGltaXphdGlvbiBmbGFnIHdhcyBpbmZlcnJlZCBmb3IgdGhpcyBub24tR0NDIGNv bXBpbGVyLgogICAgICAjIFRyeSAtTy4gIFRoaXMgaXMgbmVlZGVkIGZvciB4bGMgb24gQUlY OyBzZWUgQnVnIzE0MjU4LgogICAgICBlbWFjc19zYXZlX0NGTEFHUz0kQ0ZMQUdTCiAgICAg IHRlc3QgLXogIiRDRkxBR1MiIHx8IENGTEFHUz0iJENGTEFHUyAiCiAgICAgIENGTEFHUz0k e0NGTEFHU30tTwogICAgICBBQ19DQUNIRV9DSEVDSyhbd2hldGhlciAkQ0MgYWNjZXB0cyAt T10sCiAgICAgICAgW2VtYWNzX2N2X3Byb2dfY2Nfb10sCglbQUNfTElOS19JRkVMU0UoW0FD X0xBTkdfUFJPR1JBTSgpXSwKCSAgIFtlbWFjc19jdl9wcm9nX2NjX289eWVzXSwKCSAgIFtl bWFjc19jdl9wcm9nX2NjX289bm9dKV0pCiAgICAgIGlmIHRlc3QgJGVtYWNzX2N2X3Byb2df Y2NfbyAhPSB5ZXM7IHRoZW4KCUNGTEFHUz0kZW1hY3Nfc2F2ZV9DRkxBR1MKICAgICAgZmkg OzsKICBlc2FjCmZpCgojIGdsX0dDQ19WRVJTSU9OX0lGRUxTRShbbWFqb3JdLCBbbWlub3Jd LCBbcnVuLWlmLWZvdW5kXSwgW3J1bi1pZi1ub3QtZm91bmRdKQojIC0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLQojIElmICRDUFAgaXMgZ2NjLU1BSk9SLk1JTk9SIG9yIG5ld2VyLCB0aGVuIHJ1 biBSVU4tSUYtRk9VTkQuCiMgT3RoZXJ3aXNlLCBydW4gUlVOLUlGLU5PVC1GT1VORC4KQUNf REVGVU4oW2dsX0dDQ19WRVJTSU9OX0lGRUxTRV0sCiAgW0FDX1BSRVBST0NfSUZFTFNFKAog ICAgW0FDX0xBTkdfUFJPR1JBTSgKICAgICAgW1sKI2lmICgkMSkgPCBfX0dOVUNfXyB8fCAo KCQxKSA9PSBfX0dOVUNfXyAmJiAoJDIpIDw9IF9fR05VQ19NSU5PUl9fKQovKiBvayAqLwoj ZWxzZQojIGVycm9yICJ5b3VyIHZlcnNpb24gb2YgZ2NjIGlzIG9sZGVyIHRoYW4gJDEuJDIi CiNlbmRpZgogICAgICBdXSksCiAgICBdLCBbJDNdLCBbJDRdKQogIF0KKQoKIyBjbGFuZyBp cyB1bmR1bHkgcGlja3kgYWJvdXQgc29tZSB0aGluZ3MuCkFDX0NBQ0hFX0NIRUNLKFt3aGV0 aGVyIHRoZSBjb21waWxlciBpcyBjbGFuZ10sIFtlbWFjc19jdl9jbGFuZ10sCiAgW0FDX0NP TVBJTEVfSUZFTFNFKAogICAgIFtBQ19MQU5HX1BST0dSQU0oW1sKCSAgI2lmbmRlZiBfX2Ns YW5nX18KCSAgICBlcnJvciAibm90IGNsYW5nIjsKCSAgI2VuZGlmCiAgICAgICAgXV0pXSwK ICAgICBbZW1hY3NfY3ZfY2xhbmc9eWVzXSwKICAgICBbZW1hY3NfY3ZfY2xhbmc9bm9dKV0p CgpBQ19BUkdfRU5BQkxFKFtnY2Mtd2FybmluZ3NdLAogIFtBU19IRUxQX1NUUklORyhbLS1l bmFibGUtZ2NjLXdhcm5pbmdzQDw6QD1UWVBFQDo+QF0sCiAgICAgICAgICAgICAgICAgIFtj b250cm9sIGdlbmVyYXRpb24gb2YgR0NDIHdhcm5pbmdzLiAgVGhlIFRZUEUgJ3llcycKCQkg ICBtZWFucyB0byBmYWlsIGlmIGFueSB3YXJuaW5ncyBhcmUgaXNzdWVkOyAnd2Fybi1vbmx5 JwoJCSAgIG1lYW5zIGlzc3VlIHdhcm5pbmdzIHdpdGhvdXQgZmFpbGluZyAoZGVmYXVsdCBm b3IKCQkgICBkZXZlbG9wZXIgYnVpbGRzKTsgJ25vJyBtZWFucyBkaXNhYmxlIHdhcm5pbmdz CgkJICAgKGRlZmF1bHQgZm9yIG5vbi1kZXZlbG9wZXIgYnVpbGRzKS5dKV0sCiAgW2Nhc2Ug JGVuYWJsZXZhbCBpbgogICAgIHllc3xub3x3YXJuLW9ubHkpIDs7CiAgICAgKikgICAgICBB Q19NU0dfRVJST1IoW2JhZCB2YWx1ZSAkZW5hYmxldmFsIGZvciBnY2Mtd2FybmluZ3Mgb3B0 aW9uXSkgOzsKICAgZXNhYwogICBnbF9nY2Nfd2FybmluZ3M9JGVuYWJsZXZhbF0sCiAgWyMg QnkgZGVmYXVsdCwgdXNlICd3YXJuLW9ubHknIGlmIGl0IGxvb2tzIGxpa2UgdGhlIGludm9r ZXIgb2YgJ2NvbmZpZ3VyZScKICAgIyBpcyBhIGRldmVsb3BlciBhcyBvcHBvc2VkIHRvIGEg YnVpbGRlci4gIFRoaXMgaXMgbW9zdCBsaWtlbHkgdHJ1ZQogICAjIGlmIEdDQyBpcyByZWNl bnQgZW5vdWdoIGFuZCB0aGVyZSBpcyBhIC5naXQgZGlyZWN0b3J5IG9yIGZpbGU7CiAgICMg aG93ZXZlciwgaWYgdGhlcmUgaXMgYWxzbyBhIC50YXJiYWxsLXZlcnNpb24gZmlsZSBpdCBp cyBwcm9iYWJseQogICAjIGp1c3QgYSByZWxlYXNlIGltcG9ydGVkIGludG8gR2l0IGZvciBw YXRjaCBtYW5hZ2VtZW50LgogICBnbF9nY2Nfd2FybmluZ3M9bm8KICAgaWYgdGVzdCAtZSAi JHNyY2RpciIvLmdpdCAmJiB0ZXN0ICEgLWYgIiRzcmNkaXIiLy50YXJiYWxsLXZlcnNpb247 IHRoZW4KICAgICAgIyBDbGFuZyB0eXBpY2FsbHkgaWRlbnRpZmllcyBpdHNlbGYgYXMgR0ND IDQuMiBvciBzb21ldGhpbmcgc2ltaWxhcgogICAgICAjIGV2ZW4gaWYgaXQgaXMgcmVjZW50 IGVub3VnaCB0byBhY2NlcHQgdGhlIHdhcm5pbmdzIHdlIGVuYWJsZS4KICAgICAgQVNfSUYo W3Rlc3QgIiRlbWFjc19jdl9jbGFuZyIgPSB5ZXNdLAogICAgICAgICBbZ2xfZ2NjX3dhcm5p bmdzPXdhcm4tb25seV0sCiAgICAgICAgIFtnbF9HQ0NfVkVSU0lPTl9JRkVMU0UoWzVdLCBb M10sIFtnbF9nY2Nfd2FybmluZ3M9d2Fybi1vbmx5XSldKQogICBmaV0pCgpOQVRJVkVfQ09N UElMQVRJT05fQU9UPW5vCkFDX0FSR19XSVRIKFtuYXRpdmUtY29tcGlsYXRpb25dLAogIFtB U19IRUxQX1NUUklORyhbLS13aXRoLW5hdGl2ZS1jb21waWxhdGlvbkA8OkA9VFlQRUA6PkBd LAogICAgICAgICAgICAgICAgICBbY29tcGlsZSB3aXRoIEVtYWNzIExpc3AgbmF0aXZlIGNv bXBpbGVyIHN1cHBvcnQuICBUaGUgVFlQRQoJCSAgICd5ZXMnIChvciBlbXB0eSkgbWVhbnMg dG8gZW5hYmxlIGl0IGFuZCBjb21waWxlIG5hdGl2ZWx5CgkJICAgcHJlbG9hZGVkIExpc3Ag ZmlsZXM7ICdubycgbWVhbnMgdG8gZGlzYWJsZSBpdDsKCQkgICAnYW90JyB3aWxsIG1ha2Ug dGhlIGJ1aWxkIHByb2Nlc3MgY29tcGlsZSBhbGwgdGhlIExpc3AKCQkgICBmaWxlcyBpbiB0 aGUgdHJlZSBuYXRpdmVseSBhaGVhZCBvZiB0aW1lLiAgKFRoaXMgd2lsbAoJCSAgIHVzdWFs bHkgYmUgcXVpdGUgc2xvdy4pXSldLAogIFsKICBjYXNlICR3aXRodmFsIGluCiAgICAgYW90 KQogICAgICAgd2l0aHZhbD15ZXMKICAgICAgIE5BVElWRV9DT01QSUxBVElPTl9BT1Q9eWVz CiAgICAgICA7OwogICAgIHllc3xubykgOzsKICAgICAqKSAgICAgIEFDX01TR19FUlJPUihb YmFkIHZhbHVlICR3aXRodmFsIGZvciBuYXRpdmUtY29tcGlsYXRpb24gb3B0aW9uXSkgOzsK ICAgZXNhYwogICB3aXRoX25hdGl2ZV9jb21waWxhdGlvbj0kd2l0aHZhbF0sCiAgW3dpdGhf bmF0aXZlX2NvbXBpbGF0aW9uPW5vXQopCkFDX1NVQlNUKFtOQVRJVkVfQ09NUElMQVRJT05f QU9UXSkKCkFDX0FSR19FTkFCTEUoW2NoZWNrLWxpc3Atb2JqZWN0LXR5cGVdLAogIFtBU19I RUxQX1NUUklORyhbLS1lbmFibGUtY2hlY2stbGlzcC1vYmplY3QtdHlwZV0sCiAgICAgW0Vu YWJsZSBjb21waWxlIHRpbWUgY2hlY2tzIGZvciB0aGUgTGlzcF9PYmplY3QgZGF0YSB0eXBl LAogICAgICB3aGljaCBjYW4gY2F0Y2ggc29tZSBidWdzIGR1cmluZyBkZXZlbG9wbWVudC5d KV0pCmlmIHRlc3QgIiRlbmFibGVfY2hlY2tfbGlzcF9vYmplY3RfdHlwZSIgPSB5ZXM7IHRo ZW4KICBBQ19ERUZJTkUoW0NIRUNLX0xJU1BfT0JKRUNUX1RZUEVdLCBbMV0sCiAgICBbRGVm aW5lIHRvIGVuYWJsZSBjb21waWxlLXRpbWUgY2hlY2tzIGZvciB0aGUgTGlzcF9PYmplY3Qg ZGF0YSB0eXBlLl0pCmZpCgpXRVJST1JfQ0ZMQUdTPQojIFdoZW4gY29tcGlsaW5nIHdpdGgg R0NDLCBwcmVmZXIgLWlzeXN0ZW0gdG8gLUkgd2hlbiBpbmNsdWRpbmcgc3lzdGVtCiMgaW5j bHVkZSBmaWxlcywgdG8gYXZvaWQgZ2VuZXJhdGluZyB1c2VsZXNzIGRpYWdub3N0aWNzIGZv ciB0aGUgZmlsZXMuCkFTX0lGKFt0ZXN0ICRnbF9nY2Nfd2FybmluZ3MgPSBub10sCiBbCiAg aXN5c3RlbT0nLUknCiAgQVNfSUYoW3Rlc3QgIiRlbWFjc19jdl9jbGFuZyIgPSB5ZXNdLAog ICBbCiAgICAgIyBUdXJuIG9mZiBzb21lIHdhcm5pbmdzIGlmIHN1cHBvcnRlZC4KICAgICBn bF9XQVJOX0FERChbLVduby1zd2l0Y2hdKQogICAgIGdsX1dBUk5fQUREKFstV25vLXBvaW50 ZXItc2lnbl0pCiAgICAgZ2xfV0FSTl9BREQoWy1Xbm8tc3RyaW5nLXBsdXMtaW50XSkKICAg ICBnbF9XQVJOX0FERChbLVduby11bmtub3duLWF0dHJpYnV0ZXNdKQogICAgIGdsX1dBUk5f QUREKFstV25vLXVua25vd24tcHJhZ21hc10pCiAgIF0pCiBdLFsKICBpc3lzdGVtPSctaXN5 c3RlbSAnCgogICMgVGhpcywgJG53LCBpcyB0aGUgbGlzdCBvZiB3YXJuaW5ncyB3ZSBkaXNh YmxlLgogIG53PQoKICBjYXNlICR3aXRoX3hfdG9vbGtpdCBpbgogICAgbHVjaWQgfCBhdGhl bmEgfCBtb3RpZikKICAgICAgICMgT2xkIHRvb2xraXRzIG1pc2hhbmRsZSAnY29uc3QnLgog ICAgICAgbnc9IiRudyAtV3dyaXRlLXN0cmluZ3MiCiAgICAgICA7OwogIGVzYWMKICBBU19J RihbdGVzdCAkZ2xfZ2NjX3dhcm5pbmdzID0geWVzXSwKICAgIFtXRVJST1JfQ0ZMQUdTPS1X ZXJyb3JdLAogICAgWyMgVXNlIC1mYW5hbHl6ZXIgYW5kIHJlbGF0ZWQgb3B0aW9ucyBvbmx5 IGlmIC0tZW5hYmxlLWdjYy13YXJuaW5ncywKICAgICAjIGFzIHRoZXkgc2xvdyBHQ0MgY29u c2lkZXJhYmx5LgogICAgIG53PSIkbncgLWZhbmFseXplciAtV25vLWFuYWx5emVyLWRvdWJs ZS1mcmVlIC1Xbm8tYW5hbHl6ZXItbWFsbG9jLWxlYWsiCiAgICAgbnc9IiRudyAtV25vLWFu YWx5emVyLW51bGwtZGVyZWZlcmVuY2UgLVduby1hbmFseXplci11c2UtYWZ0ZXItZnJlZSIK ICAgICAjIFVzZSAtV3N1Z2dlc3QtYXR0cmlidXRlPW1hbGxvYyBvbmx5IGlmIC0tZW5hYmxl LWdjYy13YXJuaW5ncywKICAgICAjIGFzIGl0IGRvZXNuJ3QgZmxhZyBjb2RlIHRoYXQgaXMg d3JvbmcgaW4gYW55IHdheS4KICAgICBudz0iJG53IC1Xc3VnZ2VzdC1hdHRyaWJ1dGU9bWFs bG9jIl0pCgogIG53PSIkbncgLVdjYXN0LWFsaWduPXN0cmljdCIgICAgICAjIEVtYWNzIGlz IHRyaWNreSB3aXRoIHBvaW50ZXJzLgogIG53PSIkbncgLVdkdXBsaWNhdGVkLWJyYW5jaGVz IiAgICAjIFRvbyBtYW55IGZhbHNlIGFsYXJtcwogIG53PSIkbncgLVdmb3JtYXQtb3ZlcmZs b3c9MiIgICAgICAjIEZhbHNlIGFsYXJtcyBkdWUgdG8gR0NDIGJ1ZyA4MDc3NgogIG53PSIk bncgLVdzeXN0ZW0taGVhZGVycyIgICAgICAgICAjIERvbid0IGxldCBzeXN0ZW0gaGVhZGVy cyB0cmlnZ2VyIHdhcm5pbmdzCiAgbnc9IiRudyAtV292ZXJsZW5ndGgtc3RyaW5ncyIgICAg ICMgTm90IGEgcHJvYmxlbSB0aGVzZSBkYXlzCiAgbnc9IiRudyAtV3ZsYSIgICAgICAgICAg ICAgICAgICAgICMgRW1hY3MgdXNlcyA8dmxhLmg+LgogIG53PSIkbncgLVd1bnVzZWQtY29u c3QtdmFyaWFibGU9MiIgIyBsaXNwLmggZGVjbGFyZXMgY29uc3Qgb2JqZWN0cy4KICBudz0i JG53IC1XaW5saW5lIiAgICAgICAgICAgICAgICAgIyBPSyB0byBpZ25vcmUgJ2lubGluZScK ICBudz0iJG53IC1Xc3RyaWN0LW92ZXJmbG93IiAgICAgICAgIyBPSyB0byBvcHRpbWl6ZSBh c3N1bWluZyB0aGF0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgc2ln bmVkIG92ZXJmbG93IGhhcyB1bmRlZmluZWQgYmVoYXZpb3IKICBudz0iJG53IC1Xc3luYy1u YW5kIiAgICAgICAgICAgICAgIyBpcnJlbGV2YW50IGhlcmUsIGFuZCBwcm92b2tlcyBPYmpD IHdhcm5pbmcKICBudz0iJG53IC1XdW5zYWZlLWxvb3Atb3B0aW1pemF0aW9ucyIgIyBPSyB0 byBzdXBwcmVzcyB1bnNhZmUgb3B0aW1pemF0aW9ucwogIG53PSIkbncgLVdiYWQtZnVuY3Rp b24tY2FzdCIgICAgICAjIFRoZXNlIGNhc3RzIGFyZSBubyB3b3JzZSB0aGFuIG90aGVycy4K CiAgIyBFbWFjcyBkb2Vzbid0IGNhcmUgYWJvdXQgc2hhZG93aW5nOyBzZWUKICAjIDxodHRw czovL2xpc3RzLmdudS5vcmcvci9lbWFjcy1kaWZmcy8yMDExLTExL21zZzAwMjY1Lmh0bWw+ LgogIG53PSIkbncgLVdzaGFkb3ciCgogICMgRW1hY3MncyB1c2Ugb2YgYWxsb2NhIGluaGli aXRzIHByb3RlY3RpbmcgdGhlIHN0YWNrLgogIG53PSIkbncgLVdzdGFjay1wcm90ZWN0b3Ii CgogICMgRW1hY3MncyB1c2Ugb2YgX19hdHRyaWJ1dGVfXyAoKGNvbGQpKSBjYXVzZXMgZmFs c2UgYWxhcm1zIHdpdGggdGhpcyBvcHRpb24uCiAgbnc9IiRudyAtV3N1Z2dlc3QtYXR0cmli dXRlPWNvbGQiCgogICMgRW1hY3MncyB1c2Ugb2YgcGFydGx5LWNvbnN0IGZ1bmN0aW9ucyBz dWNoIGFzIEZnbnV0bHNfYXZhaWxhYmxlX3AKICAjIG1ha2UgdGhpcyBvcHRpb24gcHJvYmxl bWF0aWMuCiAgbnc9IiRudyAtV3N1Z2dlc3QtYXR0cmlidXRlPWNvbnN0IgoKICAjIEVtYWNz J3MgdXNlIG9mIHBhcnRseS1wdXJlIGZ1bmN0aW9ucyBzdWNoIGFzIENIRUNLX1RZUEUgbWFr ZSB0aGlzCiAgIyBvcHRpb24gcHJvYmxlbWF0aWMuCiAgbnc9IiRudyAtV3N1Z2dlc3QtYXR0 cmlidXRlPXB1cmUiCgogICMgRW1hY3MgZG9lc24ndCBuZWVkIHRoaXMgcGFyYW5vaWEuCiAg bnc9IiRudyAtV2JpZGktY2hhcnM9YW55LHVjbiIKCiAgaWYgdGVzdCAiJGVtYWNzX2N2X2Ns YW5nIiA9IHllczsgdGhlbgogICAgbnc9IiRudyAtV2RvdWJsZS1wcm9tb3Rpb24iCiAgICBu bT0iJG5tIC1XdW5rbm93bi1wcmFnbWFzIgogIGZpCgogICMgVGhpcyBjYXVzZXMgdG9vIG11 Y2ggbm9pc2UgaW4gdGhlIE1pbkdXIGJ1aWxkLgogIGlmIHRlc3QgJG9wc3lzID0gbWluZ3cz MjsgdGhlbgogICAgbnc9IiRudyAtV3N1Z2dlc3QtYXR0cmlidXRlPWZvcm1hdCIKICBmaQoK ICBnbF9NQU5ZV0FSTl9BTExfR0NDKFt3c10pCiAgZ2xfTUFOWVdBUk5fQ09NUExFTUVOVChb d3NdLCBbJHdzXSwgWyRud10pCiAgZm9yIHcgaW4gJHdzOyBkbwogICAgZ2xfV0FSTl9BREQo WyR3XSkKICBkb25lCiAgZ2xfV0FSTl9BREQoWy1XcmVkdW5kYW50LWRlY2xzXSkgICAgICMg UHJlZmVyIHRoaXMsIGFzIHdlIGRvbid0IHVzZSBCaXNvbi4KICBnbF9XQVJOX0FERChbLVdu by1taXNzaW5nLWZpZWxkLWluaXRpYWxpemVyc10pICMgV2UgbmVlZCB0aGlzIG9uZQogIGds X1dBUk5fQUREKFstV25vLW92ZXJyaWRlLWluaXRdKSAgICAjIE1vcmUgdHJvdWJsZSB0aGFu IGl0IGlzIHdvcnRoCiAgZ2xfV0FSTl9BREQoWy1Xbm8tc2lnbi1jb21wYXJlXSkgICAgICMg VG9vIG1hbnkgd2FybmluZ3MgZm9yIG5vdwogIGdsX1dBUk5fQUREKFstV25vLXR5cGUtbGlt aXRzXSkgICAgICAjIFRvbyBtYW55IHdhcm5pbmdzIGZvciBub3cKICBnbF9XQVJOX0FERChb LVduby11bnVzZWQtcGFyYW1ldGVyXSkgIyBUb28gbWFueSB3YXJuaW5ncyBmb3Igbm93CiAg Z2xfV0FSTl9BREQoWy1Xbm8tZm9ybWF0LW5vbmxpdGVyYWxdKQogIGdsX1dBUk5fQUREKFst V25vLWJpZGktY2hhcnNdKQoKICAjIGNsYW5nIGlzIHVuZHVseSBwaWNreSBhYm91dCBzb21l IHRoaW5ncy4KICBpZiB0ZXN0ICIkZW1hY3NfY3ZfY2xhbmciID0geWVzOyB0aGVuCiAgICBn bF9XQVJOX0FERChbLVduby1iaXR3aXNlLWluc3RlYWQtb2YtbG9naWNhbF0pCiAgICBnbF9X QVJOX0FERChbLVduby1taXNzaW5nLWJyYWNlc10pCiAgICBnbF9XQVJOX0FERChbLVduby1u dWxsLXBvaW50ZXItYXJpdGhtZXRpY10pCiAgICBnbF9XQVJOX0FERChbLVduby1pbXBsaWNp dC1jb25zdC1pbnQtZmxvYXQtY29udmVyc2lvbl0pCiAgICBnbF9XQVJOX0FERChbLVduby1p bnQtaW4tYm9vbC1jb250ZXh0XSkKICBmaQoKICAjIFRoaXMgY2F1c2VzIHRvbyBtdWNoIG5v aXNlIGluIHRoZSBNaW5HVyBidWlsZAogIGlmIHRlc3QgJG9wc3lzID0gbWluZ3czMjsgdGhl bgogICAgZ2xfV0FSTl9BREQoWy1Xbm8tcG9pbnRlci1zaWduXSkKICBmaQoKICBBQ19ERUZJ TkUoW0dDQ19MSU5UXSwgWzFdLCBbRGVmaW5lIHRvIDEgaWYgLS1lbmFibGUtZ2NjLXdhcm5p bmdzLl0pCiAgQVNfSUYoW3Rlc3QgJGdsX2djY193YXJuaW5ncyA9IHllc10sCiAgICBbQUNf REVGSU5FKFtHTlVMSUJfUE9SVENIRUNLXSwgWzFdLCBbZW5hYmxlIHNvbWUgZ251bGliIHBv cnRhYmlsaXR5IGNoZWNrc10pCiAgICAgQUhfVkVSQkFUSU0oW0dOVUxJQl9QT1JUQ0hFQ0tf Rk9SVElGWV9TT1VSQ0VdLAogICAgIFsvKiBFbmFibGUgY29tcGlsZS10aW1lIGFuZCBydW4t dGltZSBib3VuZHMtY2hlY2tpbmcsIGFuZCBzb21lIHdhcm5pbmdzLAoJIHdpdGhvdXQgdXBz ZXR0aW5nIGdsaWJjIDIuMTUrLiAqLwogICAgICAjaWYgKGRlZmluZWQgR05VTElCX1BPUlRD SEVDSyAmJiAhZGVmaW5lZCBfRk9SVElGWV9TT1VSQ0UgXAoJICAgJiYgZGVmaW5lZCBfX09Q VElNSVpFX18gJiYgX19PUFRJTUlaRV9fKQogICAgICAjIGRlZmluZSBfRk9SVElGWV9TT1VS Q0UgMgogICAgICAjZW5kaWYKICAgICBdKV0pCiBdKQoKIyBjbGFuZyBpcyBwaWNreSBhYm91 dCB0aGVzZSByZWdhcmRsZXNzIG9mIHdoZXRoZXIKIyAtLWVuYWJsZS1nY2Mtd2FybmluZ3Mg aXMgc3BlY2lmaWVkLgppZiB0ZXN0ICIkZW1hY3NfY3ZfY2xhbmciID0geWVzOyB0aGVuCiAg Z2xfV0FSTl9BREQoWy1Xbm8taW5pdGlhbGl6ZXItb3ZlcnJpZGVzXSkKICBnbF9XQVJOX0FE RChbLVduby10YXV0b2xvZ2ljYWwtY29tcGFyZV0pCiAgZ2xfV0FSTl9BREQoWy1Xbm8tdGF1 dG9sb2dpY2FsLWNvbnN0YW50LW91dC1vZi1yYW5nZS1jb21wYXJlXSkKZmkKCiMgU3VwcHJl c3MgZGVwcmVjYXRpb24gd2FybmluZ3MgZnJvbSB1c2luZyBzcHJpbnRmIHZhcmlhbnRzLAoj IHN0YXJ0aW5nIHdpdGggWGNvZGUgMTQuMSBvbiBtYWNPUyAxMy4KIyBUaGVzZSB3YXJuaW5n cyBhcmUgZmFsc2UgYWxhcm1zLCBhcyBFbWFjcyB1c2FnZSBvZiBzcHJpbnRmIGlzIHNhZmUu CmlmIHRlc3QgJG9wc3lzID0gZGFyd2luOyB0aGVuCiAgZ2xfV0FSTl9BREQoWy1Xbm8tZGVw cmVjYXRlZC1kZWNsYXJhdGlvbnNdKQpmaQoKIyBVc2UgYSBzbGlnaHRseSBzbWFsbGVyIHNl dCBvZiB3YXJuaW5nIG9wdGlvbnMgZm9yIGxpYi8uCm53PQpudz0iJG53IC1XdW51c2VkLW1h Y3JvcyIKZ2xfTUFOWVdBUk5fQ09NUExFTUVOVChbR05VTElCX1dBUk5fQ0ZMQUdTXSwgWyRX QVJOX0NGTEFHU10sIFskbnddKQoKQUNfU1VCU1QoW1dFUlJPUl9DRkxBR1NdKQpBQ19TVUJT VChbR05VTElCX1dBUk5fQ0ZMQUdTXSkKCmVkaXRfY2ZsYWdzPSIKICBzLC8vLyosLyxnCiAg cy9eLyAvCiAgcy8gLUkvICRpc3lzdGVtL2cKICBzL14gLy8KIgoKQUNfQVJHX0VOQUJMRShb bGluay10aW1lLW9wdGltaXphdGlvbl0sCltBU19IRUxQX1NUUklORyhbLS1lbmFibGUtbGlu ay10aW1lLW9wdGltaXphdGlvbl0sCiAgICAgICAgICAgICAgICBbYnVpbGQgd2l0aCBsaW5r LXRpbWUgb3B0aW1pemF0aW9uCgkJIChleHBlcmltZW50YWw7IHNlZSBJTlNUQUxMKV0pXSwK aWYgdGVzdCAiJHtlbmFibGV2YWx9IiAhPSAibm8iOyB0aGVuCiAgIGFjX2x0b19zdXBwb3J0 ZWQ9bm8KICAgaWYgdGVzdCAiJGVtYWNzX2N2X2NsYW5nIiA9IHllczsgdGhlbgogICAgICBB Q19NU0dfQ0hFQ0tJTkcoW3doZXRoZXIgbGluay10aW1lIG9wdGltaXphdGlvbiBpcyBzdXBw b3J0ZWQgYnkgY2xhbmddKQogICAgICBHT0xEX1BMVUdJTj1gJENDIC1wcmludC1maWxlLW5h bWU9TExWTWdvbGQuc28gMj4vZGV2L251bGxgCiAgICAgIGlmIHRlc3QgLXggIiRHT0xEX1BM VUdJTiI7IHRoZW4KCSBMVE89Ii1mbHRvIgogICAgICBmaQogICBlbGlmIHRlc3QgeCRHQ0Mg PSB4eWVzOyB0aGVuCiAgICAgIEFDX01TR19DSEVDS0lORyhbd2hldGhlciBsaW5rLXRpbWUg b3B0aW1pemF0aW9uIGlzIHN1cHBvcnRlZCBieSBnY2NdKQogICAgICBDUFVTPWBnZXRjb25m IF9OUFJPQ0VTU09SU19PTkxOIDI+L2Rldi9udWxsYAogICAgICBpZiB0ZXN0IHgkQ1BVUyAh PSB4OyB0aGVuCgkgTFRPPSItZmx0bz0kQ1BVUyIKICAgICAgZWxzZQoJIExUTz0iLWZsdG8i CiAgICAgIGZpCiAgIGVsc2UKICAgICAgQUNfTVNHX0VSUk9SKFtMaW5rLXRpbWUgb3B0aW1p emF0aW9uIGlzIG5vdCBzdXBwb3J0ZWQgd2l0aCB5b3VyIGNvbXBpbGVyLl0pCiAgIGZpCiAg IGlmIHRlc3QgLXogIiRMVE8iOyB0aGVuCiAgICAgIGFjX2x0b19zdXBwb3J0ZWQ9bm8KICAg ZWxzZQogICAgICBvbGRfQ0ZMQUdTPSRDRkxBR1MKICAgICAgQ0ZMQUdTPSIkQ0ZMQUdTICRM VE8iCiAgICAgIEFDX0NPTVBJTEVfSUZFTFNFKFtBQ19MQU5HX1BST0dSQU0oW1tdXSwgW1td XSldLAogICAgICAgICBbYWNfbHRvX3N1cHBvcnRlZD15ZXNdLCBbYWNfbHRvX3N1cHBvcnRl ZD1ub10pCiAgICAgICAgIENGTEFHUz0iJG9sZF9DRkxBR1MiCiAgIGZpCiAgIEFDX01TR19S RVNVTFQoWyRhY19sdG9fc3VwcG9ydGVkXSkKICAgaWYgdGVzdCAiJGFjX2x0b19zdXBwb3J0 ZWQiID0gInllcyI7IHRoZW4KICAgICAgQ0ZMQUdTPSIkQ0ZMQUdTICRMVE8iCiAgICAgIGlm IHRlc3QgIiRlbWFjc19jdl9jbGFuZyIgPSB5ZXM7IHRoZW4KCSBBQ19NU0dfV0FSTihbUGxl YXNlIHJlYWQgSU5TVEFMTCBiZWZvcmUgdXNpbmcgbGluay10aW1lIG9wdGltaXphdGlvbiB3 aXRoIGNsYW5nXSkKCSAjIFdBUk5JTkc6ICdhciAtLXBsdWdpbiAuLi4nIGRvZXNuJ3Qgd29y ayB3aXRob3V0CgkgIyBjb21tYW5kLCBzbyBwbHVnaW4gbmFtZSBpcyBhcHBlbmRlZCB0byBB UkZMQUdTLgoJIEFSRkxBR1M9ImNydSAtLXBsdWdpbiAkR09MRF9QTFVHSU4iCgkgUkFOTElC PSIkUkFOTElCIC0tcGx1Z2luICRHT0xEX1BMVUdJTiIKICAgICAgZWxzZQogICAgICAgIGRu bCBUaGUgZm9sbG93aW5nIGlzIG5lZWRlZCBmb3IgR0NDIDQuOS4wLiAgVGhlIEdDQyA0Ljku MCByZWxlYXNlIG5vdGVzCiAgICAgICAgZG5sIHN1Z2dlc3QgdGhhdCBpbnN0ZWFkIG9mIC1m ZmF0LWx0by1vYmplY3RzIHdlIHNob3VsZCB1c2UgZ2NjLWFyIGFuZAogICAgICAgIGRubCBn Y2MtcmFubGliIGluIHBsYWNlIG9mIGFyIGFuZCByYW5saWIsIGJ1dCBnY2MtYXIgbWFrZXMg L3Vzci9iaW4vYXIKICAgICAgICBkbmwgZHVtcCBjb3JlIG9uIEZlZG9yYSAyMCwgc28gcGxh eSBpdCBzYWZlIGZvciBub3cuCiAgICAgICAgZ2xfQ09NUElMRVJfT1BUSU9OX0lGKFstZmZh dC1sdG8tb2JqZWN0c10sCiAgICAgICAgICBbQ0ZMQUdTPSIkQ0ZMQUdTIC1mZmF0LWx0by1v YmplY3RzIl0pCiAgICAgIGZpCiAgIGZpCmZpKQoKCmRubCBBdXRvbWFrZSByZXBsYWNlbWVu dHMuCkFDX0RFRlVOKFtBTV9DT05ESVRJT05BTF0sCiAgWyQyICYmICQxX0NPTkRJVElPTj0x IHx8ICQxX0NPTkRJVElPTj0KICAgQUNfU1VCU1QoWyQxX0NPTkRJVElPTl0pXSkKQUNfREVG VU4oW0FNX0NPTkRfSUZdLAogIFtBU19JRihbdGVzdCAiJCQxX0NPTkRJVElPTiJdLCBbJDJd LCBbJDNdKV0pCgpkbmwgUHJlZmVyIHNpbGVudCBtYWtlIG91dHB1dC4gIEZvciB2ZXJib3Nl IG91dHB1dCwgdXNlCmRubCAnY29uZmlndXJlIC0tZGlzYWJsZS1zaWxlbnQtcnVsZXMnIG9y ICdtYWtlIFY9MScgLgpBQ19BUkdfRU5BQkxFKFtzaWxlbnQtcnVsZXNdLAogIFtBU19IRUxQ X1NUUklORygKICAgICBbLS1kaXNhYmxlLXNpbGVudC1ydWxlc10sCiAgICAgW3ZlcmJvc2Ug YnVpbGQgb3V0cHV0ICh1bmRvOiAibWFrZSBWPTAiKV0pXSkKaWYgdGVzdCAiJGVuYWJsZV9z aWxlbnRfcnVsZXMiID0gbm87IHRoZW4KICBBTV9ERUZBVUxUX1ZFUkJPU0lUWT0xCmVsc2UK ICBBTV9ERUZBVUxUX1ZFUkJPU0lUWT0wCmZpCkFDX1NVQlNUKFtBTV9ERUZBVUxUX1ZFUkJP U0lUWV0pCkFDX0NPTkZJR19GSUxFUyhbc3JjL3ZlcmJvc2UubWtdKQoKZG5sIFNvbWUgb3Ro ZXIgbmljZSBhdXRvY29uZiB0ZXN0cy4KQUNfUFJPR19JTlNUQUxMCmRubCBUaGVzZSBhcmUg Y29tbWVudGVkIG91dCwgc2luY2UgZ2xfRUFSTFkgYW5kL29yIEF1dG9jb25mIGFscmVhZHkg ZG9lcyB0aGVtLgpkbmwgQUNfUFJPR19NS0RJUl9QCmRubCBpZiB0ZXN0ICJ4JFJBTkxJQiIg PSB4OyB0aGVuCmRubCAgIEFDX1BST0dfUkFOTElCCmRubCBmaQoKCmRubCBTYWRseSwgQUNf UFJPR19MTl9TIGlzIHRvbyByZXN0cmljdGl2ZS4gIEl0IGFsc28gdGVzdHMgd2hldGhlciBs aW5rcwpkbmwgY2FuIGJlIG1hZGUgdG8gZGlyZWN0b3JpZXMuICBUaGlzIGlzIG5vdCByZWxl dmFudCBmb3Igb3VyIHVzYWdlLCBhbmQKZG5sIGV4Y2x1ZGVzIHNvbWUgY2FzZXMgdGhhdCB3 b3JrIGZpbmUgZm9yIHVzLiAgRWcgTVMgV2luZG93cyBvciBmaWxlcwpkbmwgaG9zdGVkIG9u IEFGUywgYm90aCBleGFtcGxlcyB3aGVyZSBzaW1wbGUgbGlua3Mgd29yaywgYnV0IGxpbmtz IHRvCmRubCBkaXJlY3RvcmllcyBmYWlsLiAgV2UgdXNlIGEgY3V0LWRvd24gdmVyc2lvbiBp bnN0ZWFkLgpkbmwgQUNfUFJPR19MTl9TCgpBQ19DQUNIRV9DSEVDSyhbY29tbWFuZCB0byBz eW1saW5rIGZpbGVzIGluIHRoZSBzYW1lIGRpcmVjdG9yeV0sIFtlbWFjc19jdl9sbl9zX2Zp bGVvbmx5XSwKW3JtIC1mIGNvbmYkJCBjb25mJCQuZmlsZQoKZW1hY3NfY3ZfbG5fc19maWxl b25seT0nY3AgLXAnCgpkbmwgT24gTWluR1csIGVuc3VyZSB3ZSB3aWxsIGNhbGwgdGhlIE1T WVMgL2Jpbi9sbi5leGUsIG5vdCBzb21lCmRubCByYW5kb20gcHJvZ3JhbSBpbiB0aGUgY3Vy cmVudCBkaXJlY3RvcnkuCmlmIChlY2hvID5jb25mJCQuZmlsZSkgMj4vZGV2L251bGw7IHRo ZW4KICBpZiB0ZXN0ICIkb3BzeXMiID0gIm1pbmd3MzIiOyB0aGVuCiAgICBlbWFjc19jdl9s bl9zX2ZpbGVvbmx5PS9iaW4vbG4KICBlbGlmIGxuIC1zIGNvbmYkJC5maWxlIGNvbmYkJCAy Pi9kZXYvbnVsbDsgdGhlbgogICAgZW1hY3NfY3ZfbG5fc19maWxlb25seT0nbG4gLXMnCiAg ZWxpZiBsbiBjb25mJCQuZmlsZSBjb25mJCQgMj4vZGV2L251bGw7IHRoZW4KICAgIGVtYWNz X2N2X2xuX3NfZmlsZW9ubHk9bG4KICBmaQpmaQoKcm0gLWYgY29uZiQkIGNvbmYkJC5maWxl XSkKTE5fU19GSUxFT05MWT0kZW1hY3NfY3ZfbG5fc19maWxlb25seQoKQUNfU1VCU1QoW0xO X1NfRklMRU9OTFldKQoKCmRubCBBQ19QUk9HX0xOX1Mgc2V0cyBMTl9TIHRvICdjcCAtcFIn IGZvciBNaW5HVywgb24gdGhlIHByZW1pc2UgdGhhdCAnbG4nCmRubCBkb2Vzbid0IHN1cHBv cnQgbGlua3MgdG8gZGlyZWN0b3JpZXMsIGFzIGluICJsbiBmaWxlIGRpciIuICBCdXQgdGhh dApkbmwgdXNlIGlzIG5vbi1wb3J0YWJsZSwgYW5kIE9UT0ggTWluR1cgd2FudHMgdG8gdXNl IGhhcmQgbGlua3MgZm9yIEVtYWNzCmRubCBleGVjdXRhYmxlcyBhdCAibWFrZSBpbnN0YWxs IiB0aW1lLgpkbmwgU2VlIGh0dHBzOi8vbGlzdHMuZ251Lm9yZy9yL2VtYWNzLWRldmVsLzIw MTMtMDQvbXNnMDA0NzUuaHRtbApkbmwgZm9yIG1vcmUgZGV0YWlscy4KaWYgdGVzdCAiJG9w c3lzIiA9ICJtaW5ndzMyIjsgdGhlbgogIExOX1M9Ii9iaW4vbG4iCmZpCgpkbmwgT24gc29t ZSBEZWJpYW4gdmVyc2lvbnMsICJpbnN0YWxsLWluZm8iIHByaW50cyBpcnJpdGF0aW5nIG1l c3NhZ2VzCmRubCAiVGhpcyBpcyBub3QgZHBrZyBpbnN0YWxsLWluZm8gYW55bW9yZSwgYnV0 IEdOVSBpbnN0YWxsLWluZm8iCmRubCBpZiBjYWxsZWQgdmlhIGFuIGFic29sdXRlIGZpbGUg bmFtZS4KZG5sIFVzZSB0aGUgZW50aXJlbHktaWRlbnRpY2FsLWJ1dC1xdWlldGVyIGdpbnN0 YWxsLWluZm8gaW5zdGVhZCBpZiBwcmVzZW50LgpkbmwgU2FkbHkgc29tZSBwZW9wbGUgbWF5 IGhhdmUgYW4gb2xkIGdpbnN0YWxsLWluZm8gaW5zdGFsbGVkIG9uCmRubCBub24tRGViaWFu IHN5c3RlbXMsIHNvIHdlIGNhbid0IHVzZSB0aGlzLgpkbmwgQUNfUEFUSF9QUk9HUyhbSU5T VEFMTF9JTkZPXSwgW2dpbnN0YWxsLWluZm8gaW5zdGFsbC1pbmZvXSwgWzpdLApkbmwgICBb JFBBVEgkUEFUSF9TRVBBUkFUT1IvdXNyL3NiaW4kUEFUSF9TRVBBUkFUT1Ivc2Jpbl0pCgpB Q19QQVRIX1BST0coW0lOU1RBTExfSU5GT10sIFtpbnN0YWxsLWluZm9dLCBbOl0sCiAgWyRQ QVRIJFBBVEhfU0VQQVJBVE9SL3Vzci9zYmluJFBBVEhfU0VQQVJBVE9SL3NiaW5dKQpkbmwg RG9uJ3QgdXNlIEdaSVAsIHdoaWNoIGlzIHVzZWQgYnkgZ3ppcCBmb3IgYWRkaXRpb25hbCBw YXJhbWV0ZXJzLgpBQ19QQVRIX1BST0coW0daSVBfUFJPR10sIFtnemlwXSkKCnRlc3QgJHdp dGhfY29tcHJlc3NfaW5zdGFsbCAhPSB5ZXMgJiYgdGVzdCAtbiAiJEdaSVBfUFJPRyIgJiYg XAogICBHWklQX1BST0c9IiAjICRHWklQX1BST0cgIyAoZGlzYWJsZWQgYnkgY29uZmlndXJl IC0td2l0aG91dC1jb21wcmVzcy1pbnN0YWxsKSIKCmlmIHRlc3QgIiR3aXRoX2R1bXBpbmci ID0gInVuZXhlYyIgJiYgdGVzdCAiJG9wc3lzIiA9ICJuYWNsIjsgdGhlbgogIEFDX01TR19F UlJPUihbbmFjbCBpcyBub3QgY29tcGF0aWJsZSB3aXRoIC0td2l0aC1kdW1waW5nPXVuZXhl Y10pCmZpCgpBQ19DQUNIRV9DSEVDSyhbZm9yICdmaW5kJyBhcmdzIHRvIGRlbGV0ZSBhIGZp bGVdLAogIFtlbWFjc19jdl9maW5kX2RlbGV0ZV0sCiAgW2lmIHRvdWNoIGNvbmZ0ZXN0LnRt cCAmJiBmaW5kIGNvbmZ0ZXN0LnRtcCAtZGVsZXRlIDI+L2Rldi9udWxsICYmCiAgICAgIHRl c3QgISAtZiBjb25mdGVzdC50bXAKICAgdGhlbiBlbWFjc19jdl9maW5kX2RlbGV0ZT0iLWRl bGV0ZSIKICAgZWxzZSBlbWFjc19jdl9maW5kX2RlbGV0ZT0iLWV4ZWMgcm0gLWYge30gJzsn IgogICBmaV0pCkZJTkRfREVMRVRFPSRlbWFjc19jdl9maW5kX2RlbGV0ZQpBQ19TVUJTVChb RklORF9ERUxFVEVdKQoKUEFYQ1RMX2R1bXBlZD0KUEFYQ1RMX25vdGR1bXBlZD0KaWYgdGVz dCAkd2l0aF91bmV4ZWMgPSB5ZXMgJiYgdGVzdCAkb3BzeXMgPSBnbnUtbGludXg7IHRoZW4K ICBpZiB0ZXN0ICIke1NFVEZBVFRSK3NldH0iICE9IHNldDsgdGhlbgogICAgQUNfQ0FDSEVf Q0hFQ0soW2ZvciBzZXRmYXR0cl0sCiAgICAgIFtlbWFjc19jdl9wcm9nX3NldGZhdHRyXSwK ICAgICAgW3RvdWNoIGNvbmZ0ZXN0LnRtcAogICAgICAgaWYgKHNldGZhdHRyIC1uIHVzZXIu cGF4LmZsYWdzIGNvbmZ0ZXN0LnRtcCkgPi9kZXYvbnVsbCAyPiYxOyB0aGVuCgkgZW1hY3Nf Y3ZfcHJvZ19zZXRmYXR0cj15ZXMKICAgICAgIGVsc2UKCSBlbWFjc19jdl9wcm9nX3NldGZh dHRyPW5vCiAgICAgICBmaV0pCiAgICBpZiB0ZXN0ICIkZW1hY3NfY3ZfcHJvZ19zZXRmYXR0 ciIgPSB5ZXM7IHRoZW4KICAgICAgUEFYQ1RMX25vdGR1bXBlZD0nJChTRVRGQVRUUikgLW4g dXNlci5wYXguZmxhZ3MgLXYgZXInCiAgICAgIFNFVEZBVFRSPXNldGZhdHRyCiAgICBlbHNl CiAgICAgIFNFVEZBVFRSPQogICAgZmkKICBmaQogIGNhc2UgJG9wc3lzLCRQQVhDVExfbm90 ZHVtcGVkLCRlbWFjc191bmFtZV9yIGluCiAgICBnbnUtbGludXgsLCogfCBuZXRic2QsLFsw LTddLiopCiAgICAgIEFDX1BBVEhfUFJPRyhbUEFYQ1RMXSwgW3BheGN0bF0sIFtdLAoJWyRQ QVRIJFBBVEhfU0VQQVJBVE9SL3NiaW4kUEFUSF9TRVBBUkFUT1IvdXNyL3NiaW5dKQogICAg ICBpZiB0ZXN0IC1uICIkUEFYQ1RMIjsgdGhlbgoJaWYgdGVzdCAiJG9wc3lzIiA9IG5ldGJz ZDsgdGhlbgoJICBQQVhDVExfZHVtcGVkPSckKFBBWENUTCkgK2EnCgkgIFBBWENUTF9ub3Rk dW1wZWQ9JFBBWENUTF9kdW1wZWQKCWVsc2UKCSAgQUNfTVNHX0NIRUNLSU5HKFt3aGV0aGVy IGJpbmFyaWVzIGhhdmUgYSBQVF9QQVhfRkxBR1MgaGVhZGVyXSkKCSAgQUNfTElOS19JRkVM U0UoW0FDX0xBTkdfUFJPR1JBTShbXSwgW10pXSwKCSAgICBbaWYgJFBBWENUTCAtdiBjb25m dGVzdCRFWEVFWFQgPi9kZXYvbnVsbCAyPiYxOyB0aGVuCgkgICAgICAgQUNfTVNHX1JFU1VM VChbeWVzXSkKCSAgICAgZWxzZQoJICAgICAgIEFDX01TR19SRVNVTFQoW25vXSkKCSAgICAg ICBQQVhDVEw9CgkgICAgIGZpXSkKCSAgaWYgdGVzdCAtbiAiJFBBWENUTCI7IHRoZW4KCSAg ICBQQVhDVExfZHVtcGVkPSckKFBBWENUTCkgLXpleCcKCSAgICBQQVhDVExfbm90ZHVtcGVk PSckKFBBWENUTCkgLXInCgkgIGZpCglmaQogICAgICBmaTs7CiAgZXNhYwpmaQpBQ19TVUJT VChbUEFYQ1RMX2R1bXBlZF0pCkFDX1NVQlNUKFtQQVhDVExfbm90ZHVtcGVkXSkKQUNfU1VC U1QoW1NFVEZBVFRSXSkKCiMgTWFrZWluZm8gb24gbWFjT1MgaXMgYW5jaWVudCwgY2hlY2sg d2hldGhlciB0aGVyZSBpcyBhIG1vcmUgcmVjZW50CiMgdmVyc2lvbiBpbnN0YWxsZWQgYnkg SG9tZWJyZXcuCkFDX0NIRUNLX1BST0dTKFtCUkVXXSwgW2JyZXddKQppZiB0ZXN0IC1uICIk QlJFVyI7IHRoZW4KICBBQ19QQVRIX1BST0coW01BS0VJTkZPXSwgW21ha2VpbmZvXSwgW10s CiAgICBbYCRCUkVXIC0tcHJlZml4IHRleGluZm8gMj4vZGV2L251bGxgL2JpbiRQQVRIX1NF UEFSQVRPUiRQQVRIXSkKZmkKCiMgQ2hlY2sgTWFjUG9ydHMgb24gbWFjT1MuCmlmIHRlc3Qg JG9wc3lzID0gZGFyd2luOyB0aGVuCiAgQUNfUEFUSF9QUk9HKFtIQVZFX01BQ1BPUlRTXSwg W3BvcnRdKQpmaQoKIyMgUmVxdWlyZSBtYWtlaW5mbyA+PSA0LjEzIChsYXN0IG9mIHRoZSA0 Lnggc2VyaWVzKSB0byBidWlsZCB0aGUgbWFudWFscy4KOiAke01BS0VJTkZPOj1tYWtlaW5m b30KY2FzZSBgKCRNQUtFSU5GTyAtLXZlcnNpb24pIDI+L2Rldi9udWxsYCBpbgogIConIChH TlUgdGV4aW5mbykgJzQuMVtbMy05XV0qIHwgXAogIConIChHTlUgdGV4aW5mbykgJ1tbNS05 XV0qIHwgXAogIConIChHTlUgdGV4aW5mbykgJ1tbMS05XVswLTldXSogKSA7OwogICopIE1B S0VJTkZPPW5vOzsKZXNhYwoKIyMgTWFrZWluZm8gaXMgdW51c3VhbC4gIEZvciBhIHJlbGVh c2VkIEVtYWNzLCB0aGUgbWFudWFscyBhcmUKIyMgcHJlLWJ1aWx0LCBhbmQgbm90IGRlbGV0 ZWQgYnkgdGhlIG5vcm1hbCBjbGVhbiBydWxlcy4gIG1ha2VpbmZvIGlzCiMjIHRoZXJlZm9y ZSBpbiB0aGUgY2F0ZWdvcnkgb2YgInNwZWNpYWwgdG9vbHMiIG5vdCBub3JtYWxseSByZXF1 aXJlZCwgd2hpY2gKIyMgY29uZmlndXJlIGRvZXMgbm90IGhhdmUgdG8gY2hlY2sgZm9yIChl ZyBhdXRvY29uZiBpdHNlbGYpLgojIyBJbiBhIHJlcG9zaXRvcnkgY2hlY2tvdXQgb24gdGhl IG90aGVyIGhhbmQsIHRoZSBtYW51YWxzIGFyZSBub3QgaW5jbHVkZWQuCiMjIFNvIG1ha2Vp bmZvIGlzIGEgcmVxdWlyZW1lbnQgdG8gYnVpbGQgZnJvbSB0aGUgcmVwb3NpdG9yeSwgYW5k IGNvbmZpZ3VyZQojIyBzaG91bGQgdGVzdCBmb3IgaXQgYXMgaXQgZG9lcyBmb3IgYW55IG90 aGVyIGJ1aWxkIHJlcXVpcmVtZW50LgojIyBXZSB1c2UgdGhlIHByZXNlbmNlIG9mICRzcmNk aXIvaW5mby9lbWFjcyB0byBkaXN0aW5ndWlzaCBhIHJlbGVhc2UsCiMjIHdpdGggcHJlLWJ1 aWx0IG1hbnVhbHMsIGZyb20gYSByZXBvc2l0b3J5IGNoZWNrb3V0LgppZiB0ZXN0ICIkTUFL RUlORk8iID0gIm5vIjsgdGhlbgogIE1BS0VJTkZPPW1ha2VpbmZvCiAgaWYgdGVzdCAhIC1l ICIkc3JjZGlyL2luZm8vZW1hY3MiICYmIHRlc3QgISAtZSAiJHNyY2Rpci9pbmZvL2VtYWNz LmluZm8iOyB0aGVuCiAgICBBQ19NU0dfRVJST1IoIFtZb3UgZG8gbm90IHNlZW0gdG8gaGF2 ZSBtYWtlaW5mbyA+PSA0LjEzLCBhbmQgeW91cgpzb3VyY2UgdHJlZSBkb2VzIG5vdCBzZWVt IHRvIGhhdmUgcHJlLWJ1aWx0IG1hbnVhbHMgaW4gdGhlICdpbmZvJyBkaXJlY3RvcnkuClBs ZWFzZSBpbnN0YWxsIGEgc3VpdGFibGUgdmVyc2lvbiBvZiBtYWtlaW5mby5dICkKICBlbHNl CiAgICBBQ19NU0dfV0FSTiggW1lvdSBkbyBub3Qgc2VlbSB0byBoYXZlIG1ha2VpbmZvID49 IDQuMTMuCllvdSB3aWxsIG5vdCBiZSBhYmxlIHRvIHJlYnVpbGQgdGhlIG1hbnVhbHMgaWYg eW91IGRlbGV0ZSB0aGVtIG9yIGNoYW5nZQp0aGVpciBzb3VyY2VzLl0gKQogIGZpCmZpCkFD X1NVQlNUKFtNQUtFSU5GT10pCgppZiB0ZXN0ICRvcHN5cyA9IG1pbmd3MzI7IHRoZW4KICAg RE9DTUlTQ19XMzI9ZWZhcS13MzIKZWxzZQogICBET0NNSVNDX1czMj0KZmkKQUNfU1VCU1Qo W0RPQ01JU0NfVzMyXSkKCmRubCBBZGQgb3VyIG9wdGlvbnMgdG8gYWNfbGluayBub3csIGFm dGVyIGl0IGlzIHNldCB1cC4KCmlmIHRlc3QgeCRHQ0MgPSB4eWVzOyB0aGVuCiAgdGVzdCAi eCRHQ0NfTElOS19URVNUX09QVElPTlMiICE9IHggJiYgXAogICAgYWNfbGluaz0iJGFjX2xp bmsgJEdDQ19MSU5LX1RFU1RfT1BUSU9OUyIKZWxzZQogIHRlc3QgIngkTk9OX0dDQ19MSU5L X1RFU1RfT1BUSU9OUyIgIT0geCAmJiBcCiAgICBhY19saW5rPSIkYWNfbGluayAkTk9OX0dD Q19MSU5LX1RFU1RfT1BUSU9OUyIKZmkKCmRubCBPbiBzb21lIHBsYXRmb3JtcyB1c2luZyBH TlUgbGQsIGxpbmtpbmcgdGVtYWNzIG5lZWRzIC16bm9jb21icmVsb2MuCmRubCBBbHRob3Vn aCB0aGlzIGhhcyBzb21ldGhpbmcgdG8gZG8gd2l0aCBkdW1waW5nLCB0aGUgZGV0YWlscyBh cmUgdW5rbm93bi4KZG5sIElmIHRoZSBmbGFnIGlzIHVzZWQgYnV0IG5vdCBuZWVkZWQsCmRu bCBFbWFjcyBzaG91bGQgc3RpbGwgd29yayAoYWxiZWl0IGEgYml0IG1vcmUgc2xvd2x5KSwK ZG5sIHNvIHVzZSB0aGUgZmxhZyBldmVyeXdoZXJlIHRoYXQgaXQgaXMgc3VwcG9ydGVkLgpk bmwgV2hlbiB0ZXN0aW5nIHdoZXRoZXIgdGhlIGZsYWcgd29ya3MsIHRyZWF0IEdDQyBzcGVj aWFsbHkKZG5sIHNpbmNlIGl0IGp1c3QgZ2l2ZXMgYSBub24tZmF0YWwgJ3VucmVjb2duaXpl ZCBvcHRpb24nCmRubCBpZiBub3QgYnVpbHQgdG8gc3VwcG9ydCBHTlUgbGQuCmlmIHRlc3Qg IiRHQ0MiID0geWVzOyB0aGVuCiAgTERGTEFHU19OT0NPTUJSRUxPQz0iLVdsLC16bm9jb21i cmVsb2MiCmVsc2UKICBMREZMQUdTX05PQ09NQlJFTE9DPSItem5vY29tYnJlbG9jIgpmaQoK QUNfQ0FDSEVfQ0hFQ0soW2ZvciAtem5vY29tYnJlbG9jXSwgW2VtYWNzX2N2X3pub2NvbWJy ZWxvY10sCiAgW2lmIHRlc3QgJHdpdGhfdW5leGVjID0gbm87IHRoZW4KICAgICBlbWFjc19j dl96bm9jb21icmVsb2M9J25vdCBuZWVkZWQnCiAgIGVsc2UKICAgICBzYXZlX0xERkxBR1M9 JExERkxBR1MKICAgICBMREZMQUdTPSIkTERGTEFHUyAkTERGTEFHU19OT0NPTUJSRUxPQyIK ICAgICBBQ19MSU5LX0lGRUxTRShbQUNfTEFOR19QUk9HUkFNKFtdLCBbXSldLAogICAgICAg W2VtYWNzX2N2X3pub2NvbWJyZWxvYz15ZXNdLCBbZW1hY3NfY3Zfem5vY29tYnJlbG9jPW5v XSkKICAgICBMREZMQUdTPSRzYXZlX0xERkxBR1MKICAgZmldKQoKY2FzZSAkZW1hY3NfY3Zf em5vY29tYnJlbG9jIGluCiAgbm8qKQogICAgTERGTEFHU19OT0NPTUJSRUxPQz0gOzsKZXNh YwoKCkFDX0NBQ0hFX0NIRUNLKFt3aGV0aGVyIGFkZHJlc3NlcyBhcmUgc2FuaXRpemVkXSwK ICBbZW1hY3NfY3Zfc2FuaXRpemVfYWRkcmVzc10sCiAgW0FDX0NPTVBJTEVfSUZFTFNFKAog ICAgIFtBQ19MQU5HX1BST0dSQU0oCglbWyNpZm5kZWYgX19oYXNfZmVhdHVyZQoJICAjZGVm aW5lIF9faGFzX2ZlYXR1cmUoZikgMAoJICAjZW5kaWYKCSAgI2lmIGRlZmluZWQgX19TQU5J VElaRV9BRERSRVNTX18gfHwgX19oYXNfZmVhdHVyZSAoYWRkcmVzc19zYW5pdGl6ZXIpCgkg ICNlbHNlCgkgICBlcnJvciAiQWRkcmVzc2VzIGFyZSBub3Qgc2FuaXRpemVkLiI7CgkgICNl bmRpZgoJXV0pXSwKICAgICBbZW1hY3NfY3Zfc2FuaXRpemVfYWRkcmVzcz15ZXNdLAogICAg IFtlbWFjc19jdl9zYW5pdGl6ZV9hZGRyZXNzPW5vXSldKQoKaWYgdGVzdCAkd2l0aF91bmV4 ZWMgPSB5ZXM7IHRoZW4KICBBQ19ERUZJTkUoW0hBVkVfVU5FWEVDXSwgWzFdLCBbRGVmaW5l IGlmIEVtYWNzIHN1cHBvcnRzIHVuZXhlYy5dKQogIGlmIHRlc3QgIiRlbWFjc19jdl9zYW5p dGl6ZV9hZGRyZXNzIiA9IHllczsgdGhlbgogICAgQUNfTVNHX1dBUk4oW1tBZGRyZXNzZXMg YXJlIHNhbml0aXplZDsgc3VnZ2VzdCAtLXdpdGhvdXQtdW5leGVjXV0pCiAgZmkKZmkKCgpV TkVYRUNfT0JKPQp0ZXN0ICR3aXRoX3VuZXhlYyA9IHllcyAmJgpjYXNlICIkb3BzeXMiIGlu CiAgIyBNU0RPUyB1c2VzIHVuZXhjb2ZmLm8KICBhaXg0LTIpCiAgIFVORVhFQ19PQko9dW5l eGFpeC5vCiAgIDs7CiAgY3lnd2luKQogICBVTkVYRUNfT0JKPXVuZXhjdy5vCiAgIDs7CiAg ZGFyd2luKQogICBVTkVYRUNfT0JKPXVuZXhtYWNvc3gubwogICA7OwogIGhwdXgxMC0yMCB8 IGhwdXgxMSkKICAgVU5FWEVDX09CSj11bmV4aHA5azgwMC5vCiAgIDs7CiAgbWluZ3czMikK ICAgVU5FWEVDX09CSj11bmV4dzMyLm8KICAgOzsKICBzb2xhcmlzKQogICAjIFVzZSB0aGUg U29sYXJpcyBkbGR1bXAoKSBmdW5jdGlvbiwgY2FsbGVkIGZyb20gdW5leHNvbC5jLCB0byBk dW1wCiAgICMgZW1hY3MsIGluc3RlYWQgb2YgdGhlIGdlbmVyaWMgRUxGIGR1bXAgY29kZSBm b3VuZCBpbiB1bmV4ZWxmLmMuCiAgICMgVGhlIHJlc3VsdGluZyBiaW5hcnkgaGFzIGEgY29t cGxldGUgc3ltYm9sIHRhYmxlLCBhbmQgaXMgYmV0dGVyCiAgICMgZm9yIGRlYnVnZ2luZyBh bmQgb3RoZXIgb2JzZXJ2YWJpbGl0eSB0b29scyAoZGVidWdnZXJzLCBwc3RhY2ssIGV0Yyku CiAgIFVORVhFQ19PQko9dW5leHNvbC5vCiAgIDs7CiAgKikKICAgVU5FWEVDX09CSj11bmV4 ZWxmLm8KICAgOzsKZXNhYwpBQ19TVUJTVChbVU5FWEVDX09CSl0pCgpMRF9TV0lUQ0hfU1lT VEVNPQp0ZXN0ICIkd2l0aF91bmV4ZWMiID0gbm8gfHwgY2FzZSAiJG9wc3lzIiBpbgogIGZy ZWVic2R8ZHJhZ29uZmx5KQogICAjIyBMZXQgJ2xkJyBmaW5kIGltYWdlIGxpYnMgYW5kIHNp bWlsYXIgdGhpbmdzIGluIC91c3IvbG9jYWwvbGliLgogICAjIyBUaGUgc3lzdGVtIGNvbXBp bGVyLCBHQ0MsIGhhcyBhcHBhcmVudGx5IGJlZW4gbW9kaWZpZWQgdG8gbm90CiAgICMjIGxv b2sgdGhlcmUsIGNvbnRyYXJ5IHRvIHdoYXQgYSBzdG9jayBHQ0Mgd291bGQgZG8uCiMjIyBJ dCdzIG5vdCBvdXIgcGxhY2UgdG8gZG8gdGhpcy4gIFNlZSBidWcjMTAzMTMjMTcuCiMjIyAg IExEX1NXSVRDSF9TWVNURU09LUwvdXNyL2xvY2FsL2xpYgogICAgICA6CiAgIDs7CgogIGdu dS1saW51eCkKICAgIyMgY3BwIHRlc3Qgd2FzICJpZmRlZiBfX21pcHNfXyIsIGJ1dCBwcmVz dW1hYmx5IHRoaXMgaXMgZXF1aXZhbGVudC4uLgogICBjYXNlICRob3N0X2NwdSBpbiBtaXBz KikgTERfU1dJVENIX1NZU1RFTT0iLUcgMCI7OyBlc2FjCiAgIDs7CgogIG5ldGJzZCkKIyMj IEl0J3Mgbm90IG91ciBwbGFjZSB0byBkbyB0aGlzLiAgU2VlIGJ1ZyMxMDMxMyMxNy4KIyMj ICAgTERfU1dJVENIX1NZU1RFTT0iLVdsLC1ycGF0aCwvdXNyL3BrZy9saWIgLUwvdXNyL3Br Zy9saWIgLVdsLC1ycGF0aCwvdXNyL2xvY2FsL2xpYiAtTC91c3IvbG9jYWwvbGliIgogICAg ICA6CiAgIDs7CgogIG9wZW5ic2QpCiAgICMjIEhhbiBCb2V0ZXMgPGhhbkBib2V0ZXMub3Jn PiBzYXlzIHRoaXMgaXMgbmVjZXNzYXJ5LAogICAjIyBvdGhlcndpc2UgRW1hY3MgZHVtcHMg Y29yZSBvbiBlbGYgc3lzdGVtcy4KICAgTERfU1dJVENIX1NZU1RFTT0iLVoiCiAgIDs7CmVz YWMKQUNfU1VCU1QoW0xEX1NXSVRDSF9TWVNURU1dKQoKYWNfbGluaz0iJGFjX2xpbmsgJExE X1NXSVRDSF9TWVNURU0iCgojIyBUaGlzIHNldHRpbmcgb2YgTERfU1dJVENIX1NZU1RFTSBy ZWZlcmVuY2VzIExEX1NXSVRDSF9YX1NJVEVfUlBBVEgsCiMjIHdoaWNoIGhhcyBub3QgYmVl biBkZWZpbmVkIHlldC4gIFdoZW4gdGhpcyB3YXMgaGFuZGxlZCB3aXRoIGNwcCwKIyMgaXQg d2FzIGV4cGFuZGVkIHRvIG51bGwgd2hlbiBjb25maWd1cmUgc291cmNlZCB0aGUgcy8qLmgg ZmlsZS4KIyMgVGh1cyBMRF9TV0lUQ0hfU1lTVEVNIGhhZCBkaWZmZXJlbnQgdmFsdWVzIGlu IGNvbmZpZ3VyZSBhbmQgdGhlIE1ha2VmaWxlcy4KIyMgRklYTUUgaXQgd291bGQgYmUgY2xl YW5lciB0byBwdXQgdGhpcyBpbiBMRF9TV0lUQ0hfU1lTVEVNX1RFTUFDUwojIyAob3Igc29t ZXN1Y2gpLCBidXQgYmVjYXVzZSBpdCBpcyBzdXBwb3NlZCB0byBnbyBhdCB0aGUgX2Zyb250 XwojIyBvZiBMRF9TV0lUQ0hfU1lTVEVNLCB3ZSBjYW5ub3QgZG8gdGhhdCBpbiBleGFjdGx5 IHRoZSBzYW1lIHdheS4KIyMgQ29tcGFyZSB3aXRoIHRoZSBnbnUtbGludXggY2FzZSBiZWxv dywgd2hpY2ggYWRkZWQgdG8gdGhlIGVuZAojIyBvZiBMRF9TV0lUQ0hfU1lTVEVNLCBhbmQg c28gY2FuIGluc3RlYWQgZ28gYXQgdGhlIGZyb250IG9mCiMjIExEX1NXSVRDSF9TWVNURU1f VEVNQUNTLgpjYXNlICIkb3BzeXMiIGluCiAgbmV0YnNkfG9wZW5ic2QpCiAgIExEX1NXSVRD SF9TWVNURU09IlwkKExEX1NXSVRDSF9YX1NJVEVfUlBBVEgpICRMRF9TV0lUQ0hfU1lTVEVN IiA7Owplc2FjCgpDX1NXSVRDSF9NQUNISU5FPQoKdGVzdCAkd2l0aF91bmV4ZWMgPSB5ZXMg JiYKY2FzZSAkY2Fub25pY2FsIGluCiBhbHBoYSopCiAgICAjIyBXaXRoIEVMRiwgbWFrZSBz dXJlIHRoYXQgYWxsIGNvbW1vbiBzeW1ib2xzIGdldCBhbGxvY2F0ZWQgdG8gaW4gdGhlCiAg ICAjIyBkYXRhIHNlY3Rpb24uICBPdGhlcndpc2UsIHRoZSBkdW1wIG9mIHRlbWFjcyBtYXkg bWlzcyB2YXJpYWJsZXMgaW4KICAgICMjIHRoZSBzaGFyZWQgbGlicmFyeSB0aGF0IGhhdmUg YmVlbiBpbml0aWFsaXplZC4gIEZvciBleGFtcGxlLCB3aXRoCiAgICAjIyBHTlUgbGliYywg X19tYWxsb2NfaW5pdGlhbGl6ZWQgd291bGQgbm9ybWFsbHkgYmUgcmVzb2x2ZWQgdG8gdGhl CiAgICAjIyBzaGFyZWQgbGlicmFyeSdzIC5ic3Mgc2VjdGlvbiwgd2hpY2ggaXMgZmF0YWwu CiAgICBpZiB0ZXN0ICJ4JEdDQyIgPSAieHllcyI7IHRoZW4KICAgICAgQ19TV0lUQ0hfTUFD SElORT0iLWZuby1jb21tb24iCiAgICBlbHNlCiAgICAgIEFDX01TR19FUlJPUihbTm9uLUdD QyBjb21waWxlcnMgYXJlIG5vdCBzdXBwb3J0ZWQuXSkKICAgIGZpCiAgOzsKZXNhYwpBQ19T VUJTVChbQ19TV0lUQ0hfTUFDSElORV0pCgpDX1NXSVRDSF9TWVNURU09CiMjIFNvbWUgcHJv Z3JhbXMgaW4gc3JjIHByb2R1Y2Ugd2FybmluZ3Mgc2F5aW5nIGNlcnRhaW4gc3VicHJvZ3Jh bXMKIyMgYXJlIHRvbyBjb21wbGV4IGFuZCBuZWVkIGEgTUFYTUVNIHZhbHVlIGdyZWF0ZXIg dGhhbiAyMDAwIGZvcgojIyBhZGRpdGlvbmFsIG9wdGltaXphdGlvbi4gIC0tbmlsc0BleHAt bWF0aC51bmktZXNzZW4uZGUKdGVzdCAiJG9wc3lzIiA9ICJhaXg0LjIiICYmIHRlc3QgIngk R0NDIiAhPSAieHllcyIgJiYgXAogIENfU1dJVENIX1NZU1RFTT0iLW1hIC1xbWF4bWVtPTQw MDAiCmlmIHRlc3QgIiRvcHN5cyIgPSAibWluZ3czMiI7IHRoZW4KICBjYXNlICIkY2Fub25p Y2FsIiBpbgogICAgeDg2XzY0LSotbWluZ3cqKSBDX1NXSVRDSF9TWVNURU09Ii1tdHVuZT1n ZW5lcmljIiA7OwogICAgKikgQ19TV0lUQ0hfU1lTVEVNPSItbXR1bmU9cGVudGl1bTQiIDs7 CiAgZXNhYwpmaQojIyBnbnUtbGludXggbWlnaHQgbmVlZCAtRF9CU0RfU09VUkNFIG9uIG9s ZCBsaWJjNSBzeXN0ZW1zLgojIyBJdCBpcyByZWR1bmRhbnQgaW4gZ2xpYmMyLCBzaW5jZSB3 ZSBkZWZpbmUgX0dOVV9TT1VSQ0UuCkFDX1NVQlNUKFtDX1NXSVRDSF9TWVNURU1dKQoKCkxJ QlNfU1lTVEVNPQpjYXNlICIkb3BzeXMiIGluCiAgIyMgSUJNJ3MgWDExUjUgdXNlcyAtbElN IGFuZCAtbGljb252IGluIEFJWCAzLjIuMi4KICBhaXg0LTIpIExJQlNfU1lTVEVNPSItbHJ0 cyAtbElNIC1saWNvbnYiIDs7CgogIGZyZWVic2R8ZHJhZ29uZmx5KSBMSUJTX1NZU1RFTT0i LWx1dGlsIiA7OwoKICBocHV4KikgTElCU19TWVNURU09Ii1sOmxpYmRsZC5zbCIgOzsKCiAg cW54bnRvKSBMSUJTX1NZU1RFTT0iLWxzb2NrZXQiIDs7CgogIHNvbGFyaXMpIExJQlNfU1lT VEVNPSItbHNvY2tldCAtbG5zbCIgOzsKCiAgIyMgTW90aWYgbmVlZHMgLWxnZW4uCiAgdW5p eHdhcmUpIExJQlNfU1lTVEVNPSItbHNvY2tldCAtbG5zbCAtbGVsZiAtbGdlbiIgOzsKCiAg aGFpa3UpIExJQlNfU1lTVEVNPSItbG5ldHdvcmsiIDs7CmVzYWMKCkFDX1NVQlNUKFtMSUJT X1NZU1RFTV0pCgojIyMgTWFrZSBzdXJlIHN1YnNlcXVlbnQgdGVzdHMgdXNlIGZsYWdzIGNv bnNpc3RlbnQgd2l0aCB0aGUgYnVpbGQgZmxhZ3MuCgppZiB0ZXN0IHgiJHtPVkVSUklERV9D UFBGTEFHU30iICE9IHg7IHRoZW4KICBDUFBGTEFHUz0iJHtPVkVSUklERV9DUFBGTEFHU30i CmVsc2UKICBDUFBGTEFHUz0iJENfU1dJVENIX1NZU1RFTSAkQ19TV0lUQ0hfTUFDSElORSAk Q1BQRkxBR1MiCmZpCgojIFN1cHByZXNzIG9ic29sZXNjZW50IEF1dG9jb25mIHRlc3QgZm9y IHNpemVfdDsgRW1hY3MgYXNzdW1lcyBDOTkgb3IgYmV0dGVyLgpBQ19ERUZVTihbQUNfVFlQ RV9TSVpFX1RdKQojIExpa2V3aXNlIGZvciBvYnNvbGVzY2VudCB0ZXN0IGZvciB1aWRfdCwg Z2lkX3Q7IEVtYWNzIGFzc3VtZXMgdGhlbS4KQUNfREVGVU4oW0FDX1RZUEVfVUlEX1RdKQoK IyBDaGVjayBmb3IgYWxsIG1hdGguaCBmdW5jdGlvbnMgdGhhdCBFbWFjcyB1c2VzOyBvbiBz b21lIHBsYXRmb3JtcywKIyAtbG0gaXMgbmVlZGVkIGZvciBzb21lIG9mIHRoZXNlIGZ1bmN0 aW9ucy4KQUNfQ0FDSEVfQ0hFQ0soW2ZvciBtYXRoIGxpYnJhcnldLAogIFtlbWFjc19jdl9s aWJfbWF0aF0sCiAgW09MRF9MSUJTPSRMSUJTCiAgIEFDX0xJTktfSUZFTFNFKAogICAgIFtB Q19MQU5HX1NPVVJDRShbWwoJI2luY2x1ZGUgPG1hdGguaD4KCWludAoJbWFpbiAoaW50IGFy Z2MsIGNoYXIgKiphcmd2KQoJewoJICBkb3VibGUgZCA9IGFyZ2M7CgkgIGZsb2F0IGYgPSBh cmdjOwoJICBpbnQgaSA9IGFyZ2M7CgkgIGxvbmcgbCA9IGFyZ2M7CgkgIGQgPSBhY29zIChk KTsKCSAgZCA9IGFzaW4gKGQpOwoJICBkID0gYXRhbiAoZCk7CgkgIGQgPSBhdGFuMiAoZCwg ZCk7CgkgIGQgPSBjZWlsIChkKTsKCSAgZCA9IGNvcHlzaWduIChkLCBkKTsKCSAgZCA9IGNv cyAoZCk7CgkgIGQgPSBleHAgKGQpOwoJICBkID0gZmFicyAoZCk7CgkgIGQgPSBmbG9vciAo ZCk7CgkgIGQgPSBmbW9kIChkLCBkKTsKCSAgZCA9IGZyZXhwIChkLCAmaSk7CgkgIGQgPSBs ZGV4cCAoZCwgaSk7CgkgIGQgPSBsb2cgKGQpOwoJICBkID0gbG9nMiAoZCk7CgkgIGQgPSBs b2cxMCAoZCk7CgkgIGQgPSBwb3cgKGQsIGQpOwoJICBkID0gcmludCAoZCk7CgkgIGQgPSBz Y2FsYm4gKGQsIGwpOwoJICBkID0gc2luIChkKTsKCSAgZCA9IHNxcnQgKGQpOwoJICBkID0g dGFuIChkKTsKCSAgZCA9IHRydW5jIChkKTsKCSAgZiA9IGZhYnNmIChmKTsKCSAgZiA9IHBv d2YgKGYsIGYpOwoJICBpID0gaWxvZ2IgKGQpOwoJICBpID0gc2lnbmJpdCAoZCk7CgkgIGwg PSBscmludCAoZCk7CgkgIGwgPSBscm91bmQgKGQpOwoJICByZXR1cm4gZCA9PSBmICYmIGkg PT0gbDsKCX0KICAgICBdXSldLAogICAgIFtlbWFjc19jdl9saWJfbWF0aD0nbm9uZSByZXF1 aXJlZCddLAogICAgIFtMSUJTPSItbG0gJExJQlMiCiAgICAgIEFDX0xJTktfSUZFTFNFKFtd LAogICAgICAgIFtlbWFjc19jdl9saWJfbWF0aD0tbG1dLAoJW0FDX01TR19FUlJPUihbTWF0 aCBsaWJyYXJ5ICgtbG0pIG5vdCBmb3VuZF0pXSldKQogICBMSUJTPSRPTERfTElCU10pCmNh c2UgJGVtYWNzX2N2X2xpYl9tYXRoIGluCiAgLSopIExJQl9NQVRIPSRlbWFjc19jdl9saWJf bWF0aDs7CiAgKikgIExJQl9NQVRIPTs7CmVzYWMKCmRubCBDdXJyZW50IHBvc3NpYmlsaXRp ZXMgaGFuZGxlZCBieSBzZWQgKGFpeDQtMiAtPiBhaXgsCmRubCBnbnUtbGludXggLT4gZ251 L2xpbnV4LCBldGMuKToKZG5sIGdudSwgZ251L2xpbnV4LCBnbnUva2ZyZWVic2QsIGFpeCwg Y3lnd2luLCBkYXJ3aW4sIGhwdXguCmRubCBBbmQgc3BlY2lhbCBjYXNlczogYmVya2VsZXkt dW5peCwgdXNnLXVuaXgtdiwgbXMtZG9zLCB3aW5kb3dzLW50LgpTWVNURU1fVFlQRT1gZWNo byAkb3BzeXMgfCBzZWQgLWUgJ3MvW1swLTldXS4qLy8nIC1lICdzfC18L3wnYAoKY2FzZSAk b3BzeXMgaW4KICBjeWd3aW4gKQogICAgTElCX01BVEg9CiAgICA7OwogIGRhcndpbiApCiAg ICAjIyBBZGRpbmcgLWxtIGNvbmZ1c2VzIHRoZSBkeW5hbWljIGxpbmtlciwgc28gb21pdCBp dC4KICAgIExJQl9NQVRIPQogICAgOzsKICBmcmVlYnNkIHwgZHJhZ29uZmx5ICkKICAgIFNZ U1RFTV9UWVBFPWJlcmtlbGV5LXVuaXgKICAgIDs7CiAgZ251LWxpbnV4IHwgZ251LWtmcmVl YnNkICkKICAgIDs7CiAgaHB1eDEwLTIwIHwgaHB1eDExICkKICAgIDs7CiAgbWluZ3czMiAp CiAgICBMSUJfTUFUSD0KICAgIFNZU1RFTV9UWVBFPXdpbmRvd3MtbnQKICAgIDs7CiAgbmV0 YnNkIHwgb3BlbmJzZCApCiAgICBTWVNURU1fVFlQRT1iZXJrZWxleS11bml4CiAgICA7OwoK ICBzb2xhcmlzIHwgdW5peHdhcmUgKQogICAgU1lTVEVNX1RZUEU9dXNnLXVuaXgtdgogICAg OzsKCmVzYWMKCkFDX1NVQlNUKFtMSUJfTUFUSF0pCkFDX0RFRklORV9VTlFVT1RFRChbU1lT VEVNX1RZUEVdLCBbIiRTWVNURU1fVFlQRSJdLAogIFtUaGUgdHlwZSBvZiBzeXN0ZW0geW91 IGFyZSBjb21waWxpbmcgZm9yOyBzZXRzICdzeXN0ZW0tdHlwZScuXSkKQUNfU1VCU1QoW1NZ U1RFTV9UWVBFXSkKCgpwcmVfUEtHX0NPTkZJR19DRkxBR1M9JENGTEFHUwpwcmVfUEtHX0NP TkZJR19MSUJTPSRMSUJTCgpQS0dfUFJPR19QS0dfQ09ORklHKFswLjkuMF0pCgpkbmwgRU1B Q1NfQ0hFQ0tfTU9EVUxFUyhbR1NUVUZGXSwgW2d0aystMi4wID49IDEuMyBnbGliID0gMS4z LjRdKQpkbmwgYWN0cyBsaWtlIFBLR19DSEVDS19NT0RVTEVTKFtHU1RVRkZdLCBbZ3RrKy0y LjAgPj0gMS4zIGdsaWIgPSAxLjMuNF0sCmRubCBbSEFWRV9HU1RVRkY9eWVzXSwgW0hBVkVf R1NUVUZGPW5vXSkgLS0gc2VlIHBrZy1jb25maWcgbWFuIHBhZ2UgLS0KZG5sIGV4Y2VwdCB0 aGF0IGl0IHBvc3Rwcm9jZXNzZXMgQ0ZMQUdTIGFzIG5lZWRlZCBmb3IgLS1lbmFibGUtZ2Nj LXdhcm5pbmdzLgpkbmwgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyBhY2NlcHRzIG9wdGlvbmFsIDNy ZCBhbmQgNHRoIGFyZ3VtZW50cyB0aGF0CmRubCBjYW4gdGFrZSB0aGUgcGxhY2Ugb2YgdGhl IGRlZmF1bHQgSEFWRV9HU1RVRkY9eWVzIGFuZCBIQVZFX0dTVFVGRj1ubwpkbmwgYWN0aW9u cy4KQUNfREVGVU4oW0VNQUNTX0NIRUNLX01PRFVMRVNdLAogIFtQS0dfQ0hFQ0tfTU9EVUxF UyhbJDFdLCBbJDJdLAogICAgIFskMV9DRkxBR1M9YEFTX0VDSE8oWyIkJDFfQ0ZMQUdTIl0p IHwgc2VkIC1lICIkZWRpdF9jZmxhZ3MiYAogICAgICBtNF9kZWZhdWx0KFskM10sIFtIQVZF XyQxPXllc10pXSwKICAgICBbbTRfZGVmYXVsdChbJDRdLCBbSEFWRV8kMT1ub10pXSldKQoK SEFWRV9TT1VORD1ubwppZiB0ZXN0ICIke3dpdGhfc291bmR9IiAhPSAibm8iOyB0aGVuCiAg IyBTb3VuZCBzdXBwb3J0IGZvciBHTlUvTGludXgsIHRoZSBmcmVlIEJTRHMsIE1pbkdXLCBh bmQgQ3lnd2luLgogIEFDX0NIRUNLX0hFQURFUlMoW21hY2hpbmUvc291bmRjYXJkLmggc3lz L3NvdW5kY2FyZC5oIHNvdW5kY2FyZC5oIG1tc3lzdGVtLmhdLAogICAgW2hhdmVfc291bmRf aGVhZGVyPXllc10sIFtdLCBbCiAgICAjaWZkZWYgX19NSU5HVzMyX18KICAgICNkZWZpbmUg V0lOMzJfTEVBTl9BTkRfTUVBTgogICAgI2luY2x1ZGUgPHdpbmRvd3MuaD4KICAgICNlbmRp ZgogICAgXSkKICB0ZXN0ICIke3dpdGhfc291bmR9IiA9ICJvc3MiICYmIHRlc3QgIiR7aGF2 ZV9zb3VuZF9oZWFkZXJ9IiAhPSAieWVzIiAmJiBcCiAgICBBQ19NU0dfRVJST1IoW09TUyBz b3VuZCBzdXBwb3J0IHJlcXVlc3RlZCBidXQgbm90IGZvdW5kLl0pCgogIGlmIHRlc3QgIiR7 d2l0aF9zb3VuZH0iID0gImJzZC1vc3NhdWRpbyIgfHwgdGVzdCAiJHt3aXRoX3NvdW5kfSIg PSAieWVzIjsgdGhlbgogICAgIyBFbXVsYXRpb24gbGlicmFyeSB1c2VkIG9uIE5ldEJTRC4K ICAgIEFDX0NIRUNLX0xJQihbb3NzYXVkaW9dLCBbX29zc19pb2N0bF0sIFtMSUJTT1VORD0t bG9zc2F1ZGlvXSwgW0xJQlNPVU5EPV0pCiAgICB0ZXN0ICIke3dpdGhfc291bmR9IiA9ICJi c2Qtb3NzYXVkaW8iICYmIHRlc3QgLXogIiRMSUJTT1VORCIgJiYgXAogICAgICBBQ19NU0df RVJST1IoW2JzZC1vc3NhdWRpbyBzb3VuZCBzdXBwb3J0IHJlcXVlc3RlZCBidXQgbm90IGZv dW5kLl0pCiAgICBkbmwgRklYTUU/ICBJZiB3ZSBkaWQgZmluZCBvc3NhdWRpbywgc2hvdWxk IHdlIHNldCB3aXRoX3NvdW5kPWJzZC1vc3NhdWRpbz8KICAgIGRubCBUcmFkaXRpb25hbGx5 LCB3ZSBnbyBvbiB0byBjaGVjayBmb3IgYWxzYSB0b28uICBEb2VzIHRoYXQgbWFrZSBzZW5z ZT8KICBmaQogIEFDX1NVQlNUKFtMSUJTT1VORF0pCgogIGlmIHRlc3QgIiR7d2l0aF9zb3Vu ZH0iID0gImFsc2EiIHx8IHRlc3QgIiR7d2l0aF9zb3VuZH0iID0gInllcyI7IHRoZW4KICAg IEFMU0FfUkVRVUlSRUQ9MS4wLjAKICAgIEFMU0FfTU9EVUxFUz0iYWxzYSA+PSAkQUxTQV9S RVFVSVJFRCIKICAgIEVNQUNTX0NIRUNLX01PRFVMRVMoW0FMU0FdLCBbJEFMU0FfTU9EVUxF U10pCiAgICBpZiB0ZXN0ICRIQVZFX0FMU0EgPSB5ZXM7IHRoZW4KICAgICAgTElCU09VTkQ9 IiRMSUJTT1VORCAkQUxTQV9MSUJTIgogICAgICBDRkxBR1NfU09VTkQ9IiRDRkxBR1NfU09V TkQgJEFMU0FfQ0ZMQUdTIgogICAgICBBQ19ERUZJTkUoW0hBVkVfQUxTQV0sIFsxXSwgW0Rl ZmluZSB0byAxIGlmIEFMU0EgaXMgYXZhaWxhYmxlLl0pCiAgICBlbGlmIHRlc3QgIiR7d2l0 aF9zb3VuZH0iID0gImFsc2EiOyB0aGVuCiAgICAgIEFDX01TR19FUlJPUihbQUxTQSBzb3Vu ZCBzdXBwb3J0IHJlcXVlc3RlZCBidXQgbm90IGZvdW5kLl0pCiAgICBmaQogIGZpICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGRubCB3aXRoX3NvdW5kID0gYWxzYXx5ZXMKCiAgZG5s IERlZmluZSBIQVZFX1NPVU5EIGlmIHdlIGhhdmUgc291bmQgc3VwcG9ydC4gIFdlIGtub3cg aXQgd29ya3MgYW5kCiAgZG5sIGNvbXBpbGVzIG9ubHkgb24gdGhlIHNwZWNpZmllZCBwbGF0 Zm9ybXMuICBGb3Igb3RoZXJzLCBpdAogIGRubCBwcm9iYWJseSBkb2Vzbid0IG1ha2Ugc2Vu c2UgdG8gdHJ5LgogIGRubCBGSVhNRSBTbyBzdXJlbHkgd2Ugc2hvdWxkIGJ5cGFzcyB0aGlz IHdob2xlIHNlY3Rpb24gaWYgbm90IHVzaW5nCiAgZG5sIG9uZSBvZiB0aGVzZSBwbGF0Zm9y bXM/CiAgaWYgdGVzdCB4JGhhdmVfc291bmRfaGVhZGVyID0geHllcyB8fCB0ZXN0ICRIQVZF X0FMU0EgPSB5ZXM7IHRoZW4KICAgICBjYXNlICIkb3BzeXMiIGluCiAgICAgICBkbmwgZGVm aW5lZCBfX0ZyZWVCU0RfXyB8fCBkZWZpbmVkIF9fTmV0QlNEX18gfHwgZGVmaW5lZCBfX2xp bnV4X18KICAgICAgIGRubCBBZGp1c3QgdGhlIC0td2l0aC1zb3VuZCBoZWxwIHRleHQgaWYg eW91IGNoYW5nZSB0aGlzLgogICAgICAgZ251LWxpbnV4fGZyZWVic2R8bmV0YnNkfG1pbmd3 MzJ8Y3lnd2luKQoJIEFDX0RFRklORShbSEFWRV9TT1VORF0sIFsxXSwgW0RlZmluZSB0byAx IGlmIHlvdSBoYXZlIHNvdW5kIHN1cHBvcnQuXSkKICAgICAgICAgSEFWRV9TT1VORD15ZXMK ICAgICAgICAgOzsKICAgICBlc2FjCiAgZmkKCiAgQUNfU1VCU1QoW0NGTEFHU19TT1VORF0p CmZpCgpkbmwgY2hlY2tzIGZvciBoZWFkZXIgZmlsZXMKQUNfQ0hFQ0tfSEVBREVSU19PTkNF KAogW2xpbnV4L2ZzLmgKICBtYWxsb2MuaAogIHN5cy9zeXN0ZW1pbmZvLmgKICBzeXMvc3lz aW5mby5oCiAgY29mZi5oIHB0eS5oCiAgc3lzL3Jlc291cmNlLmgKICBzeXMvdXRzbmFtZS5o IHB3ZC5oIHV0bXAuaCB1dGlsLmgKICBzYW5pdGl6ZXIvbHNhbl9pbnRlcmZhY2UuaAogIHNh bml0aXplci9hc2FuX2ludGVyZmFjZS5oCiAgc2FuaXRpemVyL2NvbW1vbl9pbnRlcmZhY2Vf ZGVmcy5oXSkKCkFDX0NBQ0hFX0NIRUNLKFtmb3IgQUREUl9OT19SQU5ET01JWkVdLAogIFtl bWFjc19jdl9wZXJzb25hbGl0eV9hZGRyX25vX3JhbmRvbWl6ZV0sCiAgW0FDX0NPTVBJTEVf SUZFTFNFKAogICAgIFtBQ19MQU5HX1BST0dSQU0oW1sjaW5jbHVkZSA8c3lzL3BlcnNvbmFs aXR5Lmg+XV0sCgkJICAgICAgW1twZXJzb25hbGl0eSAocGVyc29uYWxpdHkgKDB4ZmZmZmZm ZmYpCgkJCQkgICAgIHwgQUREUl9OT19SQU5ET01JWkUpXV0pXSwKICAgICBbZW1hY3NfY3Zf cGVyc29uYWxpdHlfYWRkcl9ub19yYW5kb21pemU9eWVzXSwKICAgICBbZW1hY3NfY3ZfcGVy c29uYWxpdHlfYWRkcl9ub19yYW5kb21pemU9bm9dKV0pCmlmIHRlc3QgJGVtYWNzX2N2X3Bl cnNvbmFsaXR5X2FkZHJfbm9fcmFuZG9taXplID0geWVzOyB0aGVuCiAgQUNfREVGSU5FKFtI QVZFX1BFUlNPTkFMSVRZX0FERFJfTk9fUkFORE9NSVpFXSwgWzFdLAogICAgICAgICAgICBb RGVmaW5lIHRvIDEgaWYgcGVyc29uYWxpdHkgZmxhZyBBRERSX05PX1JBTkRPTUlaRSBleGlz dHMuXSkKZmkKCiMgTm90ZSB0aGF0IFNvbGFyaXMgaGFzIHN5cy9zeXNpbmZvLmggd2hpY2gg ZGVmaW5lcyBzdHJ1Y3QKIyBzeXNpbmZvIGFzIHdlbGwuICBUbyBtYWtlIHN1cmUgdGhhdCB3 ZSdyZSB1c2luZyBHTlUvTGludXgKIyBzeXNpbmZvLCB3ZSBleHBsaWNpdGx5IHNldCBvbmUg b2YgaXRzIGZpZWxkcy4KaWYgdGVzdCAiJGFjX2N2X2hlYWRlcl9zeXNfc3lzaW5mb19oIiA9 IHllczsgdGhlbgogIEFDX0NBQ0hFX0NIRUNLKFtpZiBMaW51eCBzeXNpbmZvIG1heSBiZSB1 c2VkXSwgW2VtYWNzX2N2X2xpbnV4X3N5c2luZm9dLAogIFtBQ19DT01QSUxFX0lGRUxTRShb QUNfTEFOR19QUk9HUkFNKFtbI2luY2x1ZGUgPHN5cy9zeXNpbmZvLmg+XV0sCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbW3N0cnVjdCBzeXNpbmZvIHNpOwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaS50b3RhbHJhbSA9IDA7CiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN5c2luZm8gKCZzaSldXSld LAogICAgZW1hY3NfY3ZfbGludXhfc3lzaW5mbz15ZXMsIGVtYWNzX2N2X2xpbnV4X3N5c2lu Zm89bm8pXSkKCiAgaWYgdGVzdCAkZW1hY3NfY3ZfbGludXhfc3lzaW5mbyA9IHllczsgdGhl bgogICAgQUNfREVGSU5FKFtIQVZFX0xJTlVYX1NZU0lORk9dLCBbMV0sCiAgICAgIFtEZWZp bmUgdG8gMSBpZiB5b3UgaGF2ZSBMaW51eCBzeXNpbmZvIGZ1bmN0aW9uLl0pCiAgICBBQ19D T01QSUxFX0lGRUxTRShbQUNfTEFOR19QUk9HUkFNKFtbI2luY2x1ZGUgPHN5cy9zeXNpbmZv Lmg+XV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtbc3RydWN0 IHN5c2luZm8gc2k7IHJldHVybiBzaS5tZW1fdW5pdF1dKV0sCiAgICAgIEFDX0RFRklORShb TElOVVhfU1lTSU5GT19VTklUXSwgWzFdLAogICAgICAgICAgICAgICAgW0RlZmluZSB0byAx IGlmIExpbnV4IHN5c2luZm8gc2l6ZXMgYXJlIGluIG11bHRpcGxlcyBvZiBtZW1fdW5pdCBi eXRlcy5dKSkKICBmaQpmaQoKZG5sIE9uIFNvbGFyaXMgOCB0aGVyZSdzIGEgY29tcGlsYXRp b24gd2FybmluZyBmb3IgdGVybS5oIGJlY2F1c2UKZG5sIGl0IGRvZXNuJ3QgZGVmaW5lICdi b29sJy4KQUNfUFJFUFJPQ19JRkVMU0UoW0FDX0xBTkdfUFJPR1JBTShbWyNpbmNsdWRlIDx0 ZXJtLmg+XV0sW1tdXSldLAogIFtBQ19ERUZJTkUoW0hBVkVfVEVSTV9IXSwgWzFdLAogICAg IFtEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHRlcm0uaD4gaGVhZGVyIGZpbGUuXSld KQpBQ19IRUFERVJfU1lTX1dBSVQKCkFDX0NIRUNLX0hFQURFUlNfT05DRShbc3lzL3NvY2tl dC5oXSkKQUNfQ0hFQ0tfSEVBREVSUyhbbmV0L2lmLmhdLCBbXSwgW10sIFtBQ19JTkNMVURF U19ERUZBVUxUCiNpZiBIQVZFX1NZU19TT0NLRVRfSAojaW5jbHVkZSA8c3lzL3NvY2tldC5o PgojZW5kaWZdKQpBQ19DSEVDS19IRUFERVJTKFtpZmFkZHJzLmhdLCBbXSwgW10sIFtBQ19J TkNMVURFU19ERUZBVUxUCiNpZiBIQVZFX1NZU19TT0NLRVRfSAojaW5jbHVkZSA8c3lzL3Nv Y2tldC5oPgojZW5kaWZdKQpBQ19DSEVDS19IRUFERVJTKFtuZXQvaWZfZGwuaF0sIFtdLCBb XSwgW0FDX0lOQ0xVREVTX0RFRkFVTFQKI2lmIEhBVkVfU1lTX1NPQ0tFVF9ICiNpbmNsdWRl IDxzeXMvc29ja2V0Lmg+CiNlbmRpZl0pCgpkbmwgY2hlY2tzIGZvciBzdHJ1Y3R1cmUgbWVt YmVycwpBQ19DSEVDS19NRU1CRVJTKFtzdHJ1Y3QgaWZyZXEuaWZyX2ZsYWdzLCBzdHJ1Y3Qg aWZyZXEuaWZyX2h3YWRkciwKCQkgIHN0cnVjdCBpZnJlcS5pZnJfbmV0bWFzaywgc3RydWN0 IGlmcmVxLmlmcl9icm9hZGFkZHIsCgkJICBzdHJ1Y3QgaWZyZXEuaWZyX2FkZHIsCgkJICBz dHJ1Y3QgaWZyZXEuaWZyX2FkZHIuc2FfbGVuXSwgW10sIFtdLAoJCSBbQUNfSU5DTFVERVNf REVGQVVMVAojaWYgSEFWRV9TWVNfU09DS0VUX0gKI2luY2x1ZGUgPHN5cy9zb2NrZXQuaD4K I2VuZGlmCiNpZiBIQVZFX05FVF9JRl9ICiNpbmNsdWRlIDxuZXQvaWYuaD4KI2VuZGlmXSkK CmRubCBDaGVjayBmb3IgZW5kaWFubmVzcy4KZG5sIEFDX0NfQklHRU5ESUFOIGlzIGRvbmUg YnkgZ251bGliLgoKZG5sIGNoZWNrIGZvciBNYWtlIGZlYXR1cmUKCkFVVE9fREVQRU5EPW5v CkFVVE9ERVBFTkRfUEFSRU5UUz0nbGliIHNyYycKZG5sIGNoZWNrIGlmIHdlIGhhdmUgR0ND IGFuZCBhdXRvZGVwZW5kIGlzIG9uLgppZiB0ZXN0ICIkR0NDIiA9IHllcyAmJiB0ZXN0ICIk YWNfZW5hYmxlX2F1dG9kZXBlbmQiID0geWVzOyB0aGVuCiAgIEFDX0NBQ0hFX0NIRUNLKFt3 aGV0aGVyIGdjYyB1bmRlcnN0YW5kcyAtTU1EIC1NRl0sIFtlbWFjc19jdl9hdXRvZGVwZW5k XSwKICAgW1NBVkVfQ0ZMQUdTPSIkQ0ZMQUdTIgogICBDRkxBR1M9IiRDRkxBR1MgLU1NRCAt TUYgZGVwcy5kIC1NUCIKICAgQUNfQ09NUElMRV9JRkVMU0UoW0FDX0xBTkdfUFJPR1JBTShb W11dLCBbW11dKV0sCiAgICAgW2VtYWNzX2N2X2F1dG9kZXBlbmQ9eWVzXSwgW2VtYWNzX2N2 X2F1dG9kZXBlbmQ9bm9dKQogICBDRkxBR1M9IiRTQVZFX0NGTEFHUyIKICAgdGVzdCAtZiBk ZXBzLmQgfHwgZW1hY3NfY3ZfYXV0b2RlcGVuZD1ubwogICBybSAtcmYgZGVwcy5kXSkKICAg aWYgdGVzdCAkZW1hY3NfY3ZfYXV0b2RlcGVuZCA9IHllczsgdGhlbgogICAgICBBVVRPX0RF UEVORD15ZXMKICAgZmkKZmkKQUNfU1VCU1QoW0FVVE9fREVQRU5EXSkKCiMjIyMgQ2hvb3Nl IGEgd2luZG93IHN5c3RlbS4KCiMjIFdlIGxlYXZlIHdpbmRvd19zeXN0ZW0gZXF1YWwgdG8g bm9uZSBpZgojIyB3ZSBlbmQgdXAgYnVpbGRpbmcgd2l0aG91dCBvbmUuICBBbnkgbmV3IHdp bmRvdyBzeXN0ZW0gc2hvdWxkCiMjIHNldCB3aW5kb3dfc3lzdGVtIHRvIGFuIGFwcHJvcHJp YXRlIHZhbHVlIGFuZCBhZGQgb2JqZWN0cyB0bwojIyB3aW5kb3ctc3lzdGVtLXNwZWNpZmlj IHN1YnN0cy4KCndpbmRvd19zeXN0ZW09bm9uZQoKaWYgdGVzdCAiJHt3aXRoX3BndGt9IiA9 ICJ5ZXMiOyB0aGVuCiAgd2luZG93X3N5c3RlbT1wZ3RrCmZpCgoKQUNfUEFUSF9YCmlmIHRl c3QgIiRub194IiAhPSB5ZXMgJiYgdGVzdCAiJHt3aXRoX3BndGt9IiAhPSAieWVzIjsgdGhl bgogIHdpbmRvd19zeXN0ZW09eDExCmZpCgpMRF9TV0lUQ0hfWF9TSVRFX1JQQVRIPQppZiB0 ZXN0ICIke3hfbGlicmFyaWVzfSIgIT0gTk9ORTsgdGhlbgogIGlmIHRlc3QgLW4gIiR7eF9s aWJyYXJpZXN9IjsgdGhlbgogICAgTERfU1dJVENIX1hfU0lURT0tTGBBU19FQ0hPKFsiJHhf bGlicmFyaWVzIl0pIHwgc2VkIC1lICdzLzovIC1ML2cnYAogICAgTERfU1dJVENIX1hfU0lU RV9SUEFUSD0tV2wsLXJwYXRoLGAKICAgICAgQVNfRUNITyhbIiR4X2xpYnJhcmllcyJdKSB8 IHNlZCAtZSAncy86LyAtV2wsLXJwYXRoLC9nJwogICAgYAogIGZpCiAgeF9kZWZhdWx0X3Nl YXJjaF9wYXRoPSIiCiAgeF9zZWFyY2hfcGF0aD0ke3hfbGlicmFyaWVzfQogIGlmIHRlc3Qg LXogIiR7eF9zZWFyY2hfcGF0aH0iOyB0aGVuCiAgICB4X3NlYXJjaF9wYXRoPS91c3IvbGli CiAgZmkKICBmb3IgeF9saWJyYXJ5IGluIGBBU19FQ0hPKFsiJHhfc2VhcmNoX3BhdGg6Il0p IHwgXAoJCSAgICBzZWQgLWUgInMvOi8gL2ciIC1lIHAgLWUgInM6L2xpYltbXiAvXV0qIDov c2hhcmUgOmciYDsgZG8KICAgIHhfc2VhcmNoX3BhdGg9IlwKJHt4X2xpYnJhcnl9L1gxMS8l TC8lVC8lTiVDJVM6XAoke3hfbGlicmFyeX0vWDExLyVsLyVULyVOJUMlUzpcCiR7eF9saWJy YXJ5fS9YMTEvJVQvJU4lQyVTOlwKJHt4X2xpYnJhcnl9L1gxMS8lTC8lVC8lTiVTOlwKJHt4 X2xpYnJhcnl9L1gxMS8lbC8lVC8lTiVTOlwKJHt4X2xpYnJhcnl9L1gxMS8lVC8lTiVTIgog ICAgaWYgdGVzdCB4IiR7eF9kZWZhdWx0X3NlYXJjaF9wYXRofSIgPSB4OyB0aGVuCiAgICAg IHhfZGVmYXVsdF9zZWFyY2hfcGF0aD0ke3hfc2VhcmNoX3BhdGh9CiAgICBlbHNlCiAgICAg IHhfZGVmYXVsdF9zZWFyY2hfcGF0aD0iJHt4X3NlYXJjaF9wYXRofToke3hfZGVmYXVsdF9z ZWFyY2hfcGF0aH0iCiAgICBmaQogIGRvbmUKZmkKQUNfU1VCU1QoW0xEX1NXSVRDSF9YX1NJ VEVfUlBBVEhdKQoKaWYgdGVzdCAiJHt4X2luY2x1ZGVzfSIgIT0gTk9ORSAmJiB0ZXN0IC1u ICIke3hfaW5jbHVkZXN9IjsgdGhlbgogIENfU1dJVENIX1hfU0lURT0kaXN5c3RlbWBBU19F Q0hPKFsiJHhfaW5jbHVkZXMiXSkgfCBzZWQgLWUgInMvOi8gJGlzeXN0ZW0vZyJgCmZpCgpp ZiB0ZXN0IHgiJHt4X2luY2x1ZGVzfSIgPSB4OyB0aGVuCiAgYml0bWFwZGlyPS91c3IvaW5j bHVkZS9YMTEvYml0bWFwcwplbHNlCiAgIyBhY2N1bXVsYXRlIGluY2x1ZGUgZGlyZWN0b3Jp ZXMgdGhhdCBoYXZlIFgxMSBiaXRtYXAgc3ViZGlyZWN0b3JpZXMKICBibWRfYWNjPQogIGZv ciBibWQgaW4gYEFTX0VDSE8oWyIkeF9pbmNsdWRlcyJdKSB8IHNlZCAtZSAncy86LyAvZydg OyBkbwogICAgaWYgdGVzdCAtZCAiJHtibWR9L1gxMS9iaXRtYXBzIjsgdGhlbgogICAgICBi bWRfYWNjPSIke2JtZF9hY2N9OiR7Ym1kfS9YMTEvYml0bWFwcyIKICAgIGZpCiAgICBpZiB0 ZXN0IC1kICIke2JtZH0vYml0bWFwcyI7IHRoZW4KICAgICAgYm1kX2FjYz0iJHtibWRfYWNj fToke2JtZH0vYml0bWFwcyIKICAgIGZpCiAgZG9uZQogIGJpdG1hcGRpcj0ke2JtZF9hY2Mj On0KZmkKCk5BVElWRV9JTUFHRV9BUEk9bm8KCnRlc3QgIiR7d2l0aF9uc30iID0gbWF5YmUg JiYgdGVzdCAiJHtvcHN5c30iICE9IGRhcndpbiAmJiB3aXRoX25zPW5vCkhBVkVfTlM9bm8K TlNfR05VU1RFUF9DT05GSUc9bm8KTlNfSU1QTF9DT0NPQT1ubwpOU19JTVBMX0dOVVNURVA9 bm8KdG1wX0NQUEZMQUdTPSIkQ1BQRkxBR1MiCnRtcF9DRkxBR1M9IiRDRkxBR1MiCkNQUEZM QUdTPSIkQ1BQRkxBR1MgLXggb2JqZWN0aXZlLWMiCkNGTEFHUz0iJENGTEFHUyAteCBvYmpl Y3RpdmUtYyIKR05VX09CSkNfQ0ZMQUdTPSIiCkxJQlNfR05VU1RFUD0KaWYgdGVzdCAiJHt3 aXRoX25zfSIgIT0gbm87IHRoZW4KICAjIG1hY2ZvbnQubyByZXF1aXJlcyBtYWN1dnMuaCB3 aGljaCBpcyBhYnNlbnQgYWZ0ZXIgJ21ha2UgZXh0cmFjbGVhbicsCiAgIyBzbyBhdm9pZCBO U19JTVBMX0NPQ09BIGlmIG1hY3V2cy5oIGlzIGFic2VudC4KICAjIEV2ZW4gYSBoZWFkbGVz cyBFbWFjcyBjYW4gYnVpbGQgbWFjdXZzLmgsIHNvIHRoaXMgc2hvdWxkIGxldCB5b3UgYm9v dHN0cmFwLgogIGlmIHRlc3QgIiR7b3BzeXN9IiA9IGRhcndpbiAmJiB0ZXN0IC1mICIkc3Jj ZGlyL3NyYy9tYWN1dnMuaCI7IHRoZW4KICAgICBOU19JTVBMX0NPQ09BPXllcwogICAgIG5z X2FwcGRpcj1gcHdkYC9uZXh0c3RlcC9FbWFjcy5hcHAKICAgICBuc19hcHBiaW5kaXI9JHtu c19hcHBkaXJ9L0NvbnRlbnRzL01hY09TCiAgICAgbnNfYXBwbGliZXhlY2Rpcj0ke25zX2Fw cGRpcn0vQ29udGVudHMvTWFjT1MvbGliZXhlYwogICAgIG5zX2FwcGxpYmRpcj0ke25zX2Fw cGRpcn0vQ29udGVudHMvRnJhbWV3b3JrcwogICAgIG5zX2FwcHJlc2Rpcj0ke25zX2FwcGRp cn0vQ29udGVudHMvUmVzb3VyY2VzCiAgICAgbnNfYXBwc3JjPUNvY29hL0VtYWNzLmJhc2UK ICAgICBuc19mb250ZmlsZT1tYWNmb250Lm8KICBlbGlmIGZsYWdzPSQoIChnbnVzdGVwLWNv bmZpZyAtLW9iamMtZmxhZ3MpIDI+L2Rldi9udWxsKTsgdGhlbgogICAgIE5TX0lNUExfR05V U1RFUD15ZXMKICAgICBOU19HTlVTVEVQX0NPTkZJRz15ZXMKICAgICBHTlVfT0JKQ19DRkxB R1M9IiRmbGFncyIKICAgICBMSUJTX0dOVVNURVA9JChnbnVzdGVwLWNvbmZpZyAtLWd1aS1s aWJzKSB8fCBleGl0CiAgZWxpZiB0ZXN0IC1mICRHTlVTVEVQX0NPTkZJR19GSUxFOyB0aGVu CiAgICAgTlNfSU1QTF9HTlVTVEVQPXllcwogICAgIGRubCBGSVhNRSBzb3VyY2luZyB0aGlz IHNldmVyYWwgdGltZXMgaW4gc3Vic2hlbGxzIHNlZW1zIGluZWZmaWNpZW50LgogICAgIEdO VVNURVBfU1lTVEVNX0hFQURFUlM9JCgKICAgICAgIC4gJEdOVVNURVBfQ09ORklHX0ZJTEUK ICAgICAgIEFTX0VDSE8oWyIkR05VU1RFUF9TWVNURU1fSEVBREVSUyJdKQogICAgICkKICAg ICBHTlVTVEVQX1NZU1RFTV9MSUJSQVJJRVM9JCgKICAgICAgIC4gJEdOVVNURVBfQ09ORklH X0ZJTEUKICAgICAgIEFTX0VDSE8oWyIkR05VU1RFUF9TWVNURU1fTElCUkFSSUVTIl0pCiAg ICAgKQogICAgIGRubCBJIHNlZW1lZCB0byBuZWVkIHRoZXNlIGFzIHdlbGwgd2l0aCBHTlVz dGVwLXN0YXJ0dXAgMC4yNS4KICAgICBHTlVTVEVQX0xPQ0FMX0hFQURFUlM9JCgKICAgICAg IC4gJEdOVVNURVBfQ09ORklHX0ZJTEUKICAgICAgIEFTX0VDSE8oWyIkR05VU1RFUF9MT0NB TF9IRUFERVJTIl0pCiAgICAgKQogICAgIEdOVVNURVBfTE9DQUxfTElCUkFSSUVTPSQoCiAg ICAgICAuICRHTlVTVEVQX0NPTkZJR19GSUxFCiAgICAgICBBU19FQ0hPKFsiJEdOVVNURVBf TE9DQUxfTElCUkFSSUVTIl0pCiAgICAgKQogICAgIHRlc3QgIngke0dOVVNURVBfTE9DQUxf SEVBREVSU30iICE9ICJ4IiAmJiBcCiAgICAgICBHTlVTVEVQX0xPQ0FMX0hFQURFUlM9Ii1J JHtHTlVTVEVQX0xPQ0FMX0hFQURFUlN9IgogICAgIHRlc3QgIngke0dOVVNURVBfTE9DQUxf TElCUkFSSUVTfSIgIT0gIngiICYmIFwKICAgICAgIEdOVVNURVBfTE9DQUxfTElCUkFSSUVT PSItTCR7R05VU1RFUF9MT0NBTF9MSUJSQVJJRVN9IgogICAgIENQUEZMQUdTPSIkQ1BQRkxB R1MgLUkke0dOVVNURVBfU1lTVEVNX0hFQURFUlN9ICR7R05VU1RFUF9MT0NBTF9IRUFERVJT fSIKICAgICBDRkxBR1M9IiRDRkxBR1MgLUkke0dOVVNURVBfU1lTVEVNX0hFQURFUlN9ICR7 R05VU1RFUF9MT0NBTF9IRUFERVJTfSIKICAgICBMREZMQUdTPSIkTERGTEFHUyAtTCR7R05V U1RFUF9TWVNURU1fTElCUkFSSUVTfSAke0dOVVNURVBfTE9DQUxfTElCUkFSSUVTfSIKICAg ICBMSUJTX0dOVVNURVA9Ii1sZ251c3RlcC1ndWkgLWxnbnVzdGVwLWJhc2UgLWxvYmpjIC1s cHRocmVhZCIKICAgICBkbmwgR05Vc3RlcCBkZWZpbmVzIEJBU0VfTkFUSVZFX09CSkNfRVhD RVBUSU9OUyB0byAwIG9yIDEuCiAgICAgZG5sIElmIHRoZXkgaGFkIGNob3NlbiB0byBlaXRo ZXIgZGVmaW5lIGl0IG9yIG5vdCwgd2UgY291bGQgaGF2ZQogICAgIGRubCBqdXN0IHVzZWQg QUNfQ0hFQ0tfREVDTCBoZXJlLgogICAgIEFDX0NBQ0hFX0NIRUNLKFtpZiBHTlVzdGVwIGRl ZmluZXMgQkFTRV9OQVRJVkVfT0JKQ19FWENFUFRJT05TXSwKICAgICAgIFtlbWFjc19jdl9v YmpjX2V4Y2VwdGlvbnNdLAogICAgICAgW0FDX0NPTVBJTEVfSUZFTFNFKAoJICBbQUNfTEFO R19QUk9HUkFNKFtbI2luY2x1ZGUgPEdOVXN0ZXBCYXNlL0dTQ29uZmlnLmg+XV0sCltbI2lm IGRlZmluZWQgQkFTRV9OQVRJVkVfT0JKQ19FWENFUFRJT05TICYmIEJBU0VfTkFUSVZFX09C SkNfRVhDRVBUSU9OUyA+IDAKMTsKI2Vsc2UKZmFpbDsKI2VuZGlmXV0pXSwKICAgICAgIFtl bWFjc19jdl9vYmpjX2V4Y2VwdGlvbnM9eWVzXSwKICAgICAgIFtlbWFjc19jdl9vYmpjX2V4 Y2VwdGlvbnM9bm9dKV0pCiAgICAgaWYgdGVzdCAkZW1hY3NfY3Zfb2JqY19leGNlcHRpb25z ID0geWVzOyB0aGVuCiAgICAgICBkbmwgX05BVElWRV9PQkpDX0VYQ0VQVElPTlMgaXMgdXNl ZCBieSB0aGUgR05Vc3RlcCBoZWFkZXJzLgogICAgICAgQUNfREVGSU5FKFtfTkFUSVZFX09C SkNfRVhDRVBUSU9OU10sIFsxXSwKICAgICAgICAgW0RlZmluZSBpZiBHTlVzdGVwIHVzZXMg T2JqQyBleGNlcHRpb25zLl0pCiAgICAgICBHTlVfT0JKQ19DRkxBR1M9IiRHTlVfT0JKQ19D RkxBR1MgLWZvYmpjLWV4Y2VwdGlvbnMiCiAgICAgZmkKICBmaQogIGlmIHRlc3QgJE5TX0lN UExfR05VU1RFUCA9IHllczsgdGhlbgogICAgIG5zX2FwcGRpcj1gcHdkYC9uZXh0c3RlcC9F bWFjcy5hcHAKICAgICBuc19hcHBiaW5kaXI9JHtuc19hcHBkaXJ9CiAgICAgbnNfYXBwbGli ZXhlY2Rpcj0ke25zX2FwcGRpcn0vbGliZXhlYwogICAgIG5zX2FwcGxpYmRpcj0ke25zX2Fw cGRpcn0vRnJhbWV3b3JrcwogICAgIG5zX2FwcHJlc2Rpcj0ke25zX2FwcGRpcn0vUmVzb3Vy Y2VzCiAgICAgbnNfYXBwc3JjPUdOVXN0ZXAvRW1hY3MuYmFzZQogICAgIG5zX2ZvbnRmaWxl PW5zZm9udC5vCiAgZmkKCiAgZG5sIFRoaXMgaXMgb25seSB1c2VkIHdoaWxlIHdlIHRlc3Qg dGhlIE5TIGhlYWRlcnMsIGl0IGdldHMgcmVzZXQgYmVsb3cuCiAgQ1BQRkxBR1M9IiRDUFBG TEFHUyAkR05VX09CSkNfQ0ZMQUdTIgogIENGTEFHUz0iJENGTEFHUyAkR05VX09CSkNfQ0ZM QUdTIgoKICBBQ19DSEVDS19IRUFERVIoW0FwcEtpdC9BcHBLaXQuaF0sIFtIQVZFX05TPXll c10sCgkJICBbQUNfTVNHX0VSUk9SKFtUaGUgaW5jbHVkZSBmaWxlcyAoQXBwS2l0L0FwcEtp dC5oIGV0YykgdGhhdAphcmUgcmVxdWlyZWQgZm9yIGEgTmV4dHN0ZXAgYnVpbGQgYXJlIG1p c3Npbmcgb3IgY2Fubm90IGJlIGNvbXBpbGVkLgpFaXRoZXIgZml4IHRoaXMsIG9yIHJlLWNv bmZpZ3VyZSB3aXRoIHRoZSBvcHRpb24gJy0td2l0aG91dC1ucycuXSldKQoKICBtYWNmb250 X2ZpbGU9IiIKICBpZiB0ZXN0ICIke05TX0lNUExfQ09DT0F9IiA9ICJ5ZXMiOyB0aGVuCiAg ICBBQ19NU0dfQ0hFQ0tJTkcoW2ZvciBNYWMgT1MgWCAxMC42IG9yIG5ld2VyXSkKICAgIEFD X0NPTVBJTEVfSUZFTFNFKFtBQ19MQU5HX1BST0dSQU0oWyNpbmNsdWRlIDxBcHBLaXQvQXBw S2l0Lmg+XSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsKI2lmZGVm IE1BQ19PU19YX1ZFUlNJT05fTUFYX0FMTE9XRUQKI2lmIE1BQ19PU19YX1ZFUlNJT05fTUFY X0FMTE9XRUQgPj0gMTA2MAogOyAvKiBPSyAqLwojZWxzZQogZXJyb3IgIk1hYyBPUyBYIDEw LjYgb3IgbmV3ZXIgcmVxdWlyZWQiOwojZW5kaWYKI2VuZGlmCgkJICAgIF0pXSwKCQkgICAg W25zX29zeF9oYXZlXzEwNj15ZXNdLAoJCSAgICBbbnNfb3N4X2hhdmVfMTA2PW5vXSkKICAg IEFDX01TR19SRVNVTFQoWyRuc19vc3hfaGF2ZV8xMDZdKQoKICAgIGlmIHRlc3QgJG5zX29z eF9oYXZlXzEwNiA9IG5vOyB0aGVuCiAgICAgICBBQ19NU0dfRVJST1IoW01hYyBPUyBYIDEw LjYgb3IgbmV3ZXIgaXMgcmVxdWlyZWRdKTsKICAgIGZpCiAgZmkKCiAgQUNfQ0FDSEVfQ0hF Q0soW2ZvciBNYWMgT1MgWCAxMi4wIG9yIGxhdGVyXSwKICAgICAgICAgICAgICAgICBbZW1h Y3NfY3ZfbWFjb3N4XzEyXzBdLAogICAgICAgICAgICAgICAgIEFDX0NPTVBJTEVfSUZFTFNF KFtBQ19MQU5HX1BST0dSQU0oW1sKI2luY2x1ZGUgPEF2YWlsYWJpbGl0eU1hY3Jvcy5oPgoj aWYgTUFDX09TX1hfVkVSU0lPTl9NQVhfQUxMT1dFRCA+PSAxMjAwMDAKTWFjIE9TIFggMTIu eCBvciBsYXRlci4KI2VuZGlmCiAgICAgICAgICAgICAgICAgXV0pXSwgW2VtYWNzX2N2X21h Y29zeF8xMl8wPW5vXSwKICAgICAgICAgICAgICAgICBbZW1hY3NfY3ZfbWFjb3N4XzEyXzA9 eWVzXSkpCgogIGlmIHRlc3QgIiR7d2l0aF9uYXRpdmVfaW1hZ2VfYXBpfSIgPSB5ZXM7IHRo ZW4KICAgICBBQ19ERUZJTkUoW0hBVkVfTkFUSVZFX0lNQUdFX0FQSV0sIFsxXSwKICAgICAg IFtEZWZpbmUgdG8gdXNlIG5hdGl2ZSBPUyBBUElzIGZvciBpbWFnZXMuXSkKICAgICBOQVRJ VkVfSU1BR0VfQVBJPSJ5ZXMgKG5zKSIKICBmaQpmaQoKQUNfU1VCU1QoW0xJQlNfR05VU1RF UF0pCgpJTlNUQUxMX0FSQ0hfSU5ERVBfRVhUUkE9aW5zdGFsbC1ldGMKbnNfc2VsZl9jb250 YWluZWQ9bm8KTlNfT0JKPQpOU19PQkpDX09CSj0KaWYgdGVzdCAiJHtIQVZFX05TfSIgPSB5 ZXM7IHRoZW4KICBpZiB0ZXN0ICIkd2l0aF90b29sa2l0X3Njcm9sbF9iYXJzIiA9ICJubyI7 IHRoZW4KICAgIEFDX01TR19XQVJOKFtOb24tdG9vbGtpdCBzY3JvbGwgYmFycyBhcmUgbm90 IGltcGxlbWVudGVkIGZvciBOZXh0c3RlcC5dKQogIGZpCgogIHdpbmRvd19zeXN0ZW09bmV4 dHN0ZXAKICAjIHNldCB1cCBwYWNrYWdpbmcgZGlycwogIGlmIHRlc3QgIiR7RU5fTlNfU0VM Rl9DT05UQUlORUR9IiA9IHllczsgdGhlbgogICAgIEFDX0RFRklORShbTlNfU0VMRl9DT05U QUlORURdLCBbMV0sIFtCdWlsZCBhbiBOUyBidW5kbGVkIGFwcF0pCiAgICAgbnNfc2VsZl9j b250YWluZWQ9eWVzCiAgICAgcHJlZml4PSR7bnNfYXBwcmVzZGlyfQogICAgIGV4ZWNfcHJl Zml4PSR7bnNfYXBwYmluZGlyfQogICAgIGRubCBUaGlzIG9uZSBpc24ndCByZWFsbHkgdXNl ZCwgb25seSBhcmNobGliZGlyIGlzLgogICAgIGxpYmV4ZWNkaXI9Ilwke25zX2FwcGxpYmV4 ZWNkaXJ9IgogICAgIGFyY2hsaWJkaXI9Ilwke25zX2FwcGxpYmV4ZWNkaXJ9IgogICAgIGV0 Y2RvY2Rpcj0iXCR7bnNfYXBwcmVzZGlyfS9ldGMiCiAgICAgZXRjZGlyPSJcJHtuc19hcHBy ZXNkaXJ9L2V0YyIKICAgICBkbmwgRklYTUUgbWF5YmUgc2V0IGRhdGFyb290ZGlyIGluc3Rl YWQuCiAgICAgZG5sIFRoYXQgd291bGQgYWxzbyBnZXQgYXBwbGljYXRpb25zLCBpY29ucywg bWFuLgogICAgIGluZm9kaXI9Ilwke25zX2FwcHJlc2Rpcn0vaW5mbyIKICAgICBtYW5kaXI9 Ilwke25zX2FwcHJlc2Rpcn0vbWFuIgogICAgIGxpc3BkaXI9Ilwke25zX2FwcHJlc2Rpcn0v bGlzcCIKICAgICBsaXNwZGlycmVsPSJcJHtuc19hcHByZXNkaXJ9L2xpc3AiCiAgICAgdGVz dCAiJGxvY2FsbGlzcHBhdGhzZXQiID0gbm8gJiYgbG9jYWxsaXNwcGF0aD0iXCR7bnNfYXBw cmVzZGlyfS9zaXRlLWxpc3AiCiAgICAgSU5TVEFMTF9BUkNIX0lOREVQX0VYVFJBPQogIGZp CgogIE5TX09CSkNfT0JKPSJuc3Rlcm0ubyBuc2Zucy5vIG5zbWVudS5vIG5zc2VsZWN0Lm8g bnNpbWFnZS5vICRuc19mb250ZmlsZSIKZmkKQ0ZMQUdTPSIkdG1wX0NGTEFHUyIKQ1BQRkxB R1M9IiR0bXBfQ1BQRkxBR1MiCkFDX1NVQlNUKFtJTlNUQUxMX0FSQ0hfSU5ERVBfRVhUUkFd KQpBQ19TVUJTVChbbnNfc2VsZl9jb250YWluZWRdKQpBQ19TVUJTVChbTlNfT0JKXSkKQUNf U1VCU1QoW05TX09CSkNfT0JKXSkKCmlmIHRlc3QgIiR7SEFWRV9OU30iID0geWVzOyB0aGVu CiAgQUNfTEFOR19QVVNIKFtPYmplY3RpdmUgQ10pCiAgQUNfQ0FDSEVfQ0hFQ0soCiAgICBb aWYgdGhlIE9iamVjdGl2ZSBDIGNvbXBpbGVyIHN1cHBvcnRzIGluc3RhbmNldHlwZV0sCiAg ICBbZW1hY3NfY3Zfb2JqY19pbnN0YW5jZXR5cGVdLAogICAgW0FDX0NPTVBJTEVfSUZFTFNF KAogICAgICAgW0FDX0xBTkdfU09VUkNFKFtbQGludGVyZmFjZSBUZXN0CiAgICAgICAgICAg ICAgICAgICAgICAgICAgKyAoaW5zdGFuY2V0eXBlKXRlc3Q7CiAgICAgICAgICAgICAgICAg ICAgICAgICAgQGVuZF1dKV0sCiAgICAgICBbZW1hY3NfY3Zfb2JqY19pbnN0YW5jZXR5cGU9 eWVzXSwKICAgICAgIFtlbWFjc19jdl9vYmpjX2luc3RhbmNldHlwZT1ub10pXSkKCiAgaWYg dGVzdCB4JGVtYWNzX2N2X29iamNfaW5zdGFuY2V0eXBlID0geHllcyA7IHRoZW4KICAgIEFD X0RFRklORShbTkFUSVZFX09CSkNfSU5TVEFOQ0VUWVBFXSwgWzFdLAogICAgICAgICAgICAg IFtEZWZpbmUgaWYgT2JqQyBjb21waWxlciBzdXBwb3J0cyBpbnN0YW5jZXR5cGUgbmF0aXZl bHkuXSkKICBmaQoKICBBQ19DQUNIRV9DSEVDSygKICAgIFtpZiB0aGUgT2JqZWN0aXZlIEMg Y29tcGlsZXIgZGVmYXVsdHMgdG8gQzk5XSwKICAgIFtlbWFjc19jdl9vYmpjX2M5OV0sCiAg ICBbQUNfQ09NUElMRV9JRkVMU0UoCiAgICAgICBbQUNfTEFOR19QUk9HUkFNKFtdLCBbW2Zv ciAoaW50IGkgPSAwOzspO11dKV0sCiAgICAgICBbZW1hY3NfY3Zfb2JqY19jOTk9eWVzXSwK ICAgICAgIFtlbWFjc19jdl9vYmpjX2M5OT1ub10pXSkKCiAgaWYgdGVzdCB4JGVtYWNzX2N2 X29iamNfYzk5ID0geG5vIDsgdGhlbgogICAgR05VX09CSkNfQ0ZMQUdTPSIkR05VX09CSkNf Q0ZMQUdTIC1zdGQ9Yzk5IgogIGZpCiAgQUNfTEFOR19QT1AoW09iamVjdGl2ZSBDXSkKZmkK CkhBVkVfQkVfQVBQPW5vCmlmIHRlc3QgIiR7b3BzeXN9IiA9ICJoYWlrdSIgJiYgdGVzdCAi JHt3aXRoX2JlX2FwcH0iID0gInllcyI7IHRoZW4KICAgZG5sIE9ubHkgR0NDIGlzIHN1cHBv cnRlZC4gIENsYW5nIG1pZ2h0IHdvcmssIGJ1dCBpdCdzCiAgIGRubCBub3QgcmVsaWFibGUs IHNvIGRvbid0IGNoZWNrIGZvciBpdCBoZXJlLgogICBBQ19QUk9HX0NYWChbZ2NjIGcrK10p CiAgIENYWEZMQUdTPSIkQ1hYRkxBR1MgJGVtYWNzX2czX0NGTEFHUyIKICAgQUNfTEFOR19Q VVNIKFtDKytdKQogICBBQ19DSEVDS19IRUFERVIoW2FwcC9BcHBsaWNhdGlvbi5oXSwgW0hB VkVfQkVfQVBQPXllc10sCiAgICAgICAgICAgICAgICAgICBbQUNfTVNHX0VSUk9SKFtUaGUg QXBwbGljYXRpb24gS2l0IGhlYWRlcnMgcmVxdWlyZWQgZm9yIGJ1aWxkaW5nCndpdGggdGhl IEFwcGxpY2F0aW9uIEtpdCB3ZXJlIG5vdCBmb3VuZCBvciBjYW5ub3QgYmUgY29tcGlsZWQu IEVpdGhlciBmaXggdGhpcywgb3IKcmUtY29uZmlndXJlIHdpdGggdGhlIG9wdGlvbiAnLS13 aXRob3V0LWJlLWFwcCcuXSldKQogICBBQ19MQU5HX1BPUChbQysrXSkKZmkKCkFDX1NVQlNU KFtIQVZFX0JFX0FQUF0pCgpIQVZFX1czMj1ubwpXMzJfT0JKPQpXMzJfTElCUz0KRU1BQ1NS RVM9CkNMSUVOVFJFUz0KQ0xJRU5UVz0KVzMyX1JFU19MSU5LPQpFTUFDU19NQU5JRkVTVD0K aWYgdGVzdCAiJHt3aXRoX3czMn0iICE9IG5vOyB0aGVuCiAgY2FzZSAiJHtvcHN5c30iIGlu CiAgICBjeWd3aW4pCiAgICAgIEFDX0NIRUNLX0hFQURFUihbd2luZG93cy5oXSwgW0hBVkVf VzMyPXllc10sCiAgICAgICAgICAgICBbQUNfTVNHX0VSUk9SKFsnLS13aXRoLXczMicgd2Fz IHNwZWNpZmllZCwgYnV0IHdpbmRvd3MuaAogICAgICAgICAgICAgICAgICAgY2Fubm90IGJl IGZvdW5kLl0pXSkKICAgIDs7CiAgICBtaW5ndzMyKQogICAgIyMgVXNpbmcgLS13aXRoLXcz MiB3aXRoIE1pbkdXIGlzIGEgbm8tb3AsIGJ1dCB3ZSBhbGxvdyBpdC4KICAgIDs7CiAgICAq KQogICAgICBBQ19NU0dfRVJST1IoW1VzaW5nIHczMiB3aXRoIGFuIGF1dG90b29scyBidWls ZCBpcyBvbmx5IHN1cHBvcnRlZCBmb3IgQ3lnd2luIGFuZCBNaW5HVzMyLl0pCiAgICA7Owog IGVzYWMKZmkKCmlmIHRlc3QgIiR7b3BzeXN9IiA9ICJtaW5ndzMyIjsgdGhlbgogIEFDX0NB Q0hFX0NIRUNLKFt3aGV0aGVyIFdpbmRvd3MgQVBJIGhlYWRlcnMgYXJlIHJlY2VudCBlbm91 Z2hdLCBbZW1hY3NfY3ZfdzMyYXBpXSwKICBbQUNfQ09NUElMRV9JRkVMU0UoW0FDX0xBTkdf UFJPR1JBTShbWwogICAgICNpbmNsdWRlIDx3aW5kb3dzLmg+CiAgICAgI2luY2x1ZGUgPHVz cDEwLmg+XV0sCiAgIFtbUElNQUdFX05UX0hFQURFUlMgcEhlYWRlcjsKICAgICBQSU1BR0Vf U0VDVElPTl9IRUFERVIgcFNlY3Rpb24gPSBJTUFHRV9GSVJTVF9TRUNUSU9OKHBIZWFkZXIp XV0pXSwKICAgW2VtYWNzX2N2X3czMmFwaT15ZXNdLCBbZW1hY3NfY3ZfdzMyYXBpPW5vXSld KQogIGlmIHRlc3QgIiR7ZW1hY3NfY3ZfdzMyYXBpfSIgPSAibm8iOyB0aGVuCiAgICBBQ19N U0dfRVJST1IoW3RoZSBXaW5kb3dzIEFQSSBoZWFkZXJzIGFyZSB0b28gb2xkIHRvIHN1cHBv cnQgdGhpcyBidWlsZC5dKQogIGZpCiAgSEFWRV9XMzI9JHtlbWFjc19jdl93MzJhcGl9CmZp CgpGSVJTVEZJTEVfT0JKPQpOVERJUj0KTElCU19FQ0xJRU5UPQpMSUJfV1NPQ0szMj0KTlRM SUI9CkNNX09CSj0iY20ubyIKWEFSR1NfTElNSVQ9CmlmIHRlc3QgIiR7SEFWRV9XMzJ9IiA9 ICJ5ZXMiOyB0aGVuCiAgQUNfREVGSU5FKFtIQVZFX05UR1VJXSwgWzFdLCBbRGVmaW5lIHRv IHVzZSBuYXRpdmUgTVMgV2luZG93cyBHVUkuXSkKICBpZiB0ZXN0ICIkd2l0aF90b29sa2l0 X3Njcm9sbF9iYXJzIiA9ICJubyI7IHRoZW4KICAgIEFDX01TR19FUlJPUihbTm9uLXRvb2xr aXQgc2Nyb2xsIGJhcnMgYXJlIG5vdCBpbXBsZW1lbnRlZCBmb3IgdzMyIGJ1aWxkLl0pCiAg ZmkKICBBQ19DSEVDS19UT09MKFtXSU5EUkVTXSwgW3dpbmRyZXNdLAogICAgICAgICAgICAg ICAgW0FDX01TR19FUlJPUihbTm8gcmVzb3VyY2UgY29tcGlsZXIgZm91bmQuXSldKQogIFcz Ml9PQko9InczMmZucy5vIHczMm1lbnUubyB3MzJyZWcubyB3MzJmb250Lm8gdzMydGVybS5v IgogIFczMl9PQko9IiRXMzJfT0JKIHczMnhmbnMubyB3MzJzZWxlY3QubyB3MzJ1bmlzY3Jp YmUubyB3MzJjeWd3aW54Lm8iCiAgRU1BQ1NSRVM9ImVtYWNzLnJlcyIKICBjYXNlICIkY2Fu b25pY2FsIiBpbgogICAgeDg2XzY0LSotKikgRU1BQ1NfTUFOSUZFU1Q9ImVtYWNzLXg2NC5t YW5pZmVzdCIgOzsKICAgICopIEVNQUNTX01BTklGRVNUPSJlbWFjcy14ODYubWFuaWZlc3Qi IDs7CiAgZXNhYwogIGRubCBDb25zdHJ1Y3Qgc29tZXRoaW5nIG9mIHRoZSBmb3JtICIyNCw0 LDAsMCIgd2l0aCA0IGNvbXBvbmVudHMuCiAgY29tbWFfdmVyc2lvbj1gZWNobyAiJHtQQUNL QUdFX1ZFUlNJT059LjAuMCIgfCBzZWQgLWUgJ3MvXC4vLC9nJyAtZSAncy9eXChbW14sXV0q LFtbXixdXSosW1teLF1dKixbW14sXV0qXCkuKi9cMS8nYAoKICBjb21tYV9zcGFjZV92ZXJz aW9uPWBlY2hvICIkY29tbWFfdmVyc2lvbiIgfCBzZWQgJ3MvLC8sIC9nJ2AKICBBQ19TVUJT VChbY29tbWFfdmVyc2lvbl0pCiAgQUNfU1VCU1QoW2NvbW1hX3NwYWNlX3ZlcnNpb25dKQog IEFDX0NPTkZJR19GSUxFUyhbbnQvZW1hY3MucmMgbnQvZW1hY3NjbGllbnQucmNdKQogIGlm IHRlc3QgIiR7b3BzeXN9IiA9ICJjeWd3aW4iOyB0aGVuCiAgICBXMzJfTElCUz0iJFczMl9M SUJTIC1sa2VybmVsMzIgLWx1c2VyMzIgLWx1c3AxMCAtbGdkaTMyIgogICAgVzMyX0xJQlM9 IiRXMzJfTElCUyAtbG9sZTMyIC1sY29tZGxnMzIgLWxjb21jdGwzMiAtbHdpbnNwb29sIgog ICAgIyBUZWxsIHRoZSBsaW5rZXIgdGhhdCBlbWFjcy5yZXMgaXMgYW4gb2JqZWN0ICh3aGlj aCB3ZSBjb21waWxlIGZyb20KICAgICMgdGhlIHJjIGZpbGUpLCBub3QgYSBsaW5rZXIgc2Ny aXB0LgogICAgVzMyX1JFU19MSU5LPSItV2wsZW1hY3MucmVzIgogIGVsc2UKICAgIFczMl9P Qko9IiRXMzJfT0JKIHczMi5vIHczMmNvbnNvbGUubyB3MzJoZWFwLm8gdzMyaW5ldnQubyB3 MzJwcm9jLm8iCiAgICBkbmwgRklYTUU6IFRoaXMgc2hvdWxkIHByb2JhYmx5IGJlIHN1cHBv cnRlZCBmb3IgQ3lnd2luL3czMiBhcwogICAgZG5sIHdlbGwsIGJ1dCB0aGUgQ3lnd2luIGJ1 aWxkIG5lZWRzIHRvIGxpbmsgYWdhaW5zdCAtbGdkaXBsdXMKICAgIGlmIHRlc3QgIiR7d2l0 aF9uYXRpdmVfaW1hZ2VfYXBpfSIgPSB5ZXM7IHRoZW4KICAgICAgQUNfREVGSU5FKFtIQVZF X05BVElWRV9JTUFHRV9BUEldLCBbMV0sCglbRGVmaW5lIHRvIHVzZSBuYXRpdmUgT1MgQVBJ cyBmb3IgaW1hZ2VzLl0pCiAgICAgIE5BVElWRV9JTUFHRV9BUEk9InllcyAodzMyKSIKICAg ICAgVzMyX09CSj0iJFczMl9PQkogdzMyaW1hZ2UubyIKICAgIGZpCiAgICBXMzJfTElCUz0i JFczMl9MSUJTIC1sd2lubW0gLWx1c3AxMCAtbGdkaTMyIC1sY29tZGxnMzIiCiAgICBXMzJf TElCUz0iJFczMl9MSUJTIC1sbXByIC1sd2luc3Bvb2wgLWxvbGUzMiAtbGNvbWN0bDMyIgog ICAgVzMyX1JFU19MSU5LPSJcJChFTUFDU1JFUykiCiAgICBDTElFTlRSRVM9ImVtYWNzY2xp ZW50LnJlcyIKICAgIENMSUVOVFc9ImVtYWNzY2xpZW50d1wkKEVYRUVYVCkiCiAgICBGSVJT VEZJTEVfT0JKPWZpcnN0ZmlsZS5vCiAgICBOVERJUj1udAogICAgQ01fT0JKPQogICAgTElC U19FQ0xJRU5UPSItbGNvbWN0bDMyIgogICAgTElCX1dTT0NLMzI9Ii1sd3NvY2szMiIKICAg IE5UTElCPSJudGxpYi4kYWNfb2JqZXh0IgogICAgWEFSR1NfTElNSVQ9Ii1zIDEwMDAwIgog IGZpCmZpCgppZiB0ZXN0ICIke0hBVkVfVzMyfSIgPSAibm8iICYmIHRlc3QgIiR7b3BzeXN9 IiA9ICJjeWd3aW4iOyB0aGVuCiAgVzMyX0xJQlM9Ii1sa2VybmVsMzIiCiAgVzMyX09CSj0i dzMyY3lnd2lueC5vIgpmaQoKQUNfU1VCU1QoW1czMl9PQkpdKQpBQ19TVUJTVChbVzMyX0xJ QlNdKQpBQ19TVUJTVChbRU1BQ1NSRVNdKQpBQ19TVUJTVChbRU1BQ1NfTUFOSUZFU1RdKQpB Q19TVUJTVChbQ0xJRU5UUkVTXSkKQUNfU1VCU1QoW0NMSUVOVFddKQpBQ19TVUJTVChbVzMy X1JFU19MSU5LXSkKQUNfU1VCU1QoW0ZJUlNURklMRV9PQkpdKQpBQ19TVUJTVChbTlRESVJd KQpBQ19TVUJTVChbQ01fT0JKXSkKQUNfU1VCU1QoW0xJQlNfRUNMSUVOVF0pCkFDX1NVQlNU KFtMSUJfV1NPQ0szMl0pCkFDX1NVQlNUKFtOVExJQl0pCkFDX1NVQlNUKFtYQVJHU19MSU1J VF0pCgppZiB0ZXN0ICIke0hBVkVfVzMyfSIgPSAieWVzIjsgdGhlbgogIHdpbmRvd19zeXN0 ZW09dzMyCiAgd2l0aF94ZnQ9bm8KZmkKCkhBSUtVX09CSj0KSEFJS1VfQ1hYX09CSj0KSEFJ S1VfTElCUz0KSEFJS1VfQ0ZMQUdTPQoKaWYgdGVzdCAiJG9wc3lzIiA9ICJoYWlrdSI7IHRo ZW4KICBIQUlLVV9PQko9IiRIQUlLVV9PQkogaGFpa3UubyIKZmkKCmlmIHRlc3QgIiR7SEFW RV9CRV9BUFB9IiA9ICJ5ZXMiOyB0aGVuCiAgQUNfREVGSU5FKFtIQVZFX0hBSUtVXSwgWzFd LAogICAgICBbRGVmaW5lIGlmIEVtYWNzIHdpbGwgYmUgYnVpbHQgd2l0aCBIYWlrdSB3aW5k b3dpbmcgc3VwcG9ydF0pCmZpCgppZiB0ZXN0ICIke0hBVkVfQkVfQVBQfSIgPSAieWVzIjsg dGhlbgogIHdpbmRvd19zeXN0ZW09aGFpa3UKICB3aXRoX3hmdD1ubwogIEhBSUtVX09CSj0i JEhBSUtVX09CSiBoYWlrdWZucy5vIGhhaWt1dGVybS5vIGhhaWt1bWVudS5vIGhhaWt1Zm9u dC5vIGhhaWt1c2VsZWN0Lm8gaGFpa3VfaW8ubyIKICBIQUlLVV9DWFhfT0JKPSJoYWlrdV9z dXBwb3J0Lm8gaGFpa3VfZm9udF9zdXBwb3J0Lm8gaGFpa3VfZHJhd19zdXBwb3J0Lm8gaGFp a3Vfc2VsZWN0Lm8iCiAgSEFJS1VfTElCUz0iLWxiZSAtbGdhbWUgLWx0cmFuc2xhdGlvbiAt bHRyYWNrZXIiICMgLWxnYW1lIGlzIG5lZWRlZCBmb3Igc2V0X21vdXNlX3Bvc2l0aW9uLgoK ICBpZiB0ZXN0ICIke3dpdGhfbmF0aXZlX2ltYWdlX2FwaX0iID0geWVzOyB0aGVuCiAgICAg QUNfREVGSU5FKFtIQVZFX05BVElWRV9JTUFHRV9BUEldLCBbMV0sCiAgICAgICBbRGVmaW5l IHRvIHVzZSBuYXRpdmUgT1MgQVBJcyBmb3IgaW1hZ2VzLl0pCiAgICAgTkFUSVZFX0lNQUdF X0FQST0ieWVzIChoYWlrdSkiCiAgICAgSEFJS1VfT0JKPSIkSEFJS1VfT0JKIGhhaWt1aW1h Z2UubyIKICBmaQpmaQoKQUNfU1VCU1QoW0hBSUtVX0xJQlNdKQpBQ19TVUJTVChbSEFJS1Vf T0JKXSkKQUNfU1VCU1QoW0hBSUtVX0NYWF9PQkpdKQpBQ19TVUJTVChbSEFJS1VfQ0ZMQUdT XSkKCiMjICR3aW5kb3dfc3lzdGVtIGlzIG5vdyBzZXQgdG8gdGhlIHdpbmRvdyBzeXN0ZW0g d2Ugd2lsbAojIyB1bHRpbWF0ZWx5IHVzZS4KCnRlcm1faGVhZGVyPQpIQVZFX1hfV0lORE9X Uz1ubwpIQVZFX1gxMT1ubwpVU0VfWF9UT09MS0lUPW5vbmUKSEFWRV9QR1RLPW5vCgpjYXNl ICIke3dpbmRvd19zeXN0ZW19IiBpbgogIHgxMSApCiAgICBIQVZFX1hfV0lORE9XUz15ZXMK ICAgIEhBVkVfWDExPXllcwogICAgdGVybV9oZWFkZXI9eHRlcm0uaAogICAgY2FzZSAiJHt3 aXRoX3hfdG9vbGtpdH0iIGluCiAgICAgIGF0aGVuYSB8IGx1Y2lkICkgVVNFX1hfVE9PTEtJ VD1MVUNJRCA7OwogICAgICBtb3RpZiApIFVTRV9YX1RPT0xLSVQ9TU9USUYgOzsKICAgICAg Z3RrICkgd2l0aF9ndGs9eWVzCiAgICAgICAgICAgIHRlcm1faGVhZGVyPWd0a3V0aWwuaApk bmwgRG9uJ3Qgc2V0IHRoaXMgZm9yIEdUSy4gIEEgbG90IG9mIHRlc3RzIGJlbG93IGFzc3Vt ZXMgWHQgd2hlbgpkbmwgVVNFX1hfVE9PTEtJVCBpcyBzZXQuCiAgICAgICAgICAgIFVTRV9Y X1RPT0xLSVQ9bm9uZSA7OwogICAgICBndGsyICkgd2l0aF9ndGsyPXllcwogICAgICAgICAg ICAgdGVybV9oZWFkZXI9Z3RrdXRpbC5oCiAgICAgICAgICAgICBVU0VfWF9UT09MS0lUPW5v bmUgOzsKICAgICAgZ3RrMyApIHdpdGhfZ3RrMz15ZXMKICAgICAgICAgICAgIHRlcm1faGVh ZGVyPWd0a3V0aWwuaAogICAgICAgICAgICAgVVNFX1hfVE9PTEtJVD1ub25lIDs7CiAgICAg IG5vICkgVVNFX1hfVE9PTEtJVD1ub25lIDs7CmRubCBJZiB1c2VyIGRpZCBub3Qgc2F5IHdo ZXRoZXIgdG8gdXNlIGEgdG9vbGtpdCwgbWFrZSB0aGlzIGRlY2lzaW9uIGxhdGVyOgpkbmwg dXNlIHRoZSB0b29sa2l0IGlmIHdlIGhhdmUgZ3RrLCBvciBYMTFSNSBvciBuZXdlci4KICAg ICAgKiApIFVTRV9YX1RPT0xLSVQ9bWF5YmUgOzsKICAgIGVzYWMKICA7OwogIG5leHRzdGVw ICkKICAgIHRlcm1faGVhZGVyPW5zdGVybS5oCiAgOzsKICB3MzIgKQogICAgdGVybV9oZWFk ZXI9dzMydGVybS5oCiAgOzsKICBwZ3RrICkKICAgIHRlcm1faGVhZGVyPXBndGt0ZXJtLmgK ICAgIHdpdGhfZ3RrMz15ZXMKICAgIFVTRV9YX1RPT0xLSVQ9bm9uZQogICAgSEFWRV9QR1RL PXllcwogICAgQUNfREVGSU5FKFtIQVZFX1BHVEtdLCBbMV0sIFtEZWZpbmUgdG8gMSBpZiB5 b3UgaGF2ZSBwdXJlIEd0aystMy5dKQogIDs7CiAgaGFpa3UgKQogICAgdGVybV9oZWFkZXI9 aGFpa3V0ZXJtLmgKICA7Owplc2FjCkFDX1NVQlNUKFtIQVZFX1BHVEtdKQoKaWYgdGVzdCAi JHdpbmRvd19zeXN0ZW0iID0gbm9uZSAmJiB0ZXN0ICJYJHdpdGhfeCIgIT0gIlhubyI7IHRo ZW4KICAgQUNfQ0hFQ0tfUFJPRyhbSEFWRV9YU0VSVkVSXSwgW1hdLCBbdHJ1ZV0sIFtmYWxz ZV0pCiAgIGlmIHRlc3QgIiRIQVZFX1hTRVJWRVIiID0gdHJ1ZSB8fAogICAgICB0ZXN0IC1u ICIkRElTUExBWSIgfHwKICAgICAgewogICAgICAgIGZvciBlbWFjc19saWJYMTEgaW4gL3Vz ci9saWIvbGliWDExLio7IGRvIGJyZWFrOyBkb25lCiAgICAgICAgdGVzdCAiJGVtYWNzX2xp YlgxMSIgIT0gJy91c3IvbGliL2xpYlgxMS4qJwogICAgICB9CiAgIHRoZW4KICAgICAgICBB Q19NU0dfRVJST1IoW1lvdSBzZWVtIHRvIGJlIHJ1bm5pbmcgWCwgYnV0IG5vIFggZGV2ZWxv cG1lbnQgbGlicmFyaWVzCndlcmUgZm91bmQuICBZb3Ugc2hvdWxkIGluc3RhbGwgdGhlIHJl bGV2YW50IGRldmVsb3BtZW50IGZpbGVzIGZvciBYCmFuZCBmb3IgdGhlIHRvb2xraXQgeW91 IHdhbnQsIHN1Y2ggYXMgR3RrKyBvciBNb3RpZi4gIEFsc28gbWFrZQpzdXJlIHlvdSBoYXZl IGRldmVsb3BtZW50IGZpbGVzIGZvciBpbWFnZSBoYW5kbGluZywgaS5lLgp0aWZmLCBnaWYs IGpwZWcsIHBuZyBhbmQgeHBtLgpJZiB5b3UgYXJlIHN1cmUgeW91IHdhbnQgRW1hY3MgY29t cGlsZWQgd2l0aG91dCBYIHdpbmRvdyBzdXBwb3J0LCBwYXNzCiAgLS13aXRob3V0LXgKdG8g Y29uZmlndXJlLl0pCiAgIGZpCmZpCgojIERvZXMgdGhlIG9wc3lzdGVtIGZpbGUgcHJvaGli aXQgdGhlIHVzZSBvZiB0aGUgR05VIG1hbGxvYz8KIyBBc3N1bWUgbm90LCB1bnRpbCB0b2xk IG90aGVyd2lzZS4KR05VX01BTExPQz15ZXMKCkFDX0NBQ0hFX0NIRUNLKAogIFt3aGV0aGVy IG1hbGxvYyBpcyBEb3VnIExlYSBzdHlsZV0sCiAgW2VtYWNzX2N2X3Zhcl9kb3VnX2xlYV9t YWxsb2NdLAogIFtlbWFjc19jdl92YXJfZG91Z19sZWFfbWFsbG9jPW5vCiAgIGRubCBIb29r cyBkbyBub3Qgd29yayB3aXRoIGFkZHJlc3Mgc2FuaXRpemF0aW9uLgogICBpZiB0ZXN0ICIk ZW1hY3NfY3Zfc2FuaXRpemVfYWRkcmVzcyIgIT0geWVzOyB0aGVuCiAgICAgQUNfTElOS19J RkVMU0UoCiAgICAgICBbQUNfTEFOR19QUk9HUkFNKAoJICBbWyNpbmNsdWRlIDxtYWxsb2Mu aD4KCSAgICBzdGF0aWMgdm9pZCBob29rICh2b2lkKSB7fV1dLAoJICBbW21hbGxvY19zZXRf c3RhdGUgKG1hbGxvY19nZXRfc3RhdGUgKCkpOwoJICAgIF9fYWZ0ZXJfbW9yZWNvcmVfaG9v ayA9IGhvb2s7CgkgICAgX19tYWxsb2NfaW5pdGlhbGl6ZV9ob29rID0gaG9vaztdXSldLAog ICAgICAgW2VtYWNzX2N2X3Zhcl9kb3VnX2xlYV9tYWxsb2M9eWVzXSkKICAgZmldKQpkb3Vn X2xlYV9tYWxsb2M9JGVtYWNzX2N2X3Zhcl9kb3VnX2xlYV9tYWxsb2MKCmh5YnJpZF9tYWxs b2M9CnN5c3RlbV9tYWxsb2M9eWVzCgpkbmwgVGhpcyBtdXN0IGJlIGJlZm9yZSB0aGUgdGVz dCBvZiAkYWNfY3ZfZnVuY19zYnJrIGJlbG93LgpBQ19DSEVDS19GVU5DU19PTkNFKFtzYnJr XSkKCnRlc3QgJHdpdGhfdW5leGVjID0geWVzICYmCmNhc2UgIiRvcHN5cyIgaW4KICAjIyBk YXJ3aW4gbGQgaW5zaXN0cyBvbiB0aGUgdXNlIG9mIG1hbGxvYyByb3V0aW5lcyBpbiB0aGUg U3lzdGVtIGZyYW1ld29yay4KICBkYXJ3aW4gfCBtaW5ndzMyIHwgbmFjbCB8IHNvbGFyaXMp IDs7CiAgY3lnd2luIHwgcW54bnRvIHwgZnJlZWJzZCkKCSAgaHlicmlkX21hbGxvYz15ZXMK ICAgICAgICAgIHN5c3RlbV9tYWxsb2M9IDs7CiAgKikgdGVzdCAiJGFjX2N2X2Z1bmNfc2Jy ayIgPSB5ZXMgJiYgc3lzdGVtX21hbGxvYz0kZW1hY3NfY3Zfc2FuaXRpemVfYWRkcmVzczs7 CmVzYWMKCmlmIHRlc3QgIiR7c3lzdGVtX21hbGxvY30iICE9IHllcyAmJiB0ZXN0ICIke2Rv dWdfbGVhX21hbGxvY30iICE9IHllcyBcCiAgICYmIHRlc3QgIiR7VU5FWEVDX09CSn0iID0g dW5leGVsZi5vOyB0aGVuCiAgaHlicmlkX21hbGxvYz15ZXMKZmkKCkdNQUxMT0NfT0JKPQpI WUJSSURfTUFMTE9DPQppZiB0ZXN0ICIke3N5c3RlbV9tYWxsb2N9IiA9ICJ5ZXMiOyB0aGVu CiAgQUNfREVGSU5FKFtTWVNURU1fTUFMTE9DXSwgWzFdLAogICAgW0RlZmluZSB0byAxIHRv IHVzZSB0aGUgc3lzdGVtIG1lbW9yeSBhbGxvY2F0b3IsIGV2ZW4gaWYgaXQgaXMgbm90CiAg ICAgRG91ZyBMZWEgc3R5bGUuXSkKICBHTlVfTUFMTE9DPW5vCiAgR05VX01BTExPQ19yZWFz b249IgogICAgKFRoZSBHTlUgYWxsb2NhdG9ycyBkb24ndCB3b3JrIHdpdGggdGhpcyBzeXN0 ZW0gY29uZmlndXJhdGlvbi4pIgogIFZNTElNSVRfT0JKPQplbGlmIHRlc3QgIiRoeWJyaWRf bWFsbG9jIiA9IHllczsgdGhlbgogIEFDX0RFRklORShbSFlCUklEX01BTExPQ10sIFsxXSwK ICAgIFtEZWZpbmUgdG8gdXNlIGdtYWxsb2MgYmVmb3JlIGR1bXBpbmcgYW5kIHRoZSBzeXN0 ZW0gbWFsbG9jIGFmdGVyLl0pCiAgSFlCUklEX01BTExPQz0xCiAgR05VX01BTExPQz1ubwog IEdOVV9NQUxMT0NfcmVhc29uPSIgKG9ubHkgYmVmb3JlIGR1bXBpbmcpIgogIEdNQUxMT0Nf T0JKPWdtYWxsb2MubwogIFZNTElNSVRfT0JKPQplbHNlCiAgdGVzdCAiJGRvdWdfbGVhX21h bGxvYyIgIT0gInllcyIgJiYgR01BTExPQ19PQko9Z21hbGxvYy5vCiAgVk1MSU1JVF9PQko9 dm0tbGltaXQubwoKICBBQ19DSEVDS19IRUFERVJTKFtzeXMvdmxpbWl0LmhdKQogIEFDX0NB Q0hFX0NIRUNLKFtmb3IgZGF0YV9zdGFydF0sIFtlbWFjc19jdl9kYXRhX3N0YXJ0XSwKICAg IFtBQ19MSU5LX0lGRUxTRSgKICAgICAgIFtBQ19MQU5HX1BST0dSQU0oCgkgW1tleHRlcm4g Y2hhciBkYXRhX3N0YXJ0W107IGNoYXIgY2g7XV0sCgkgW1tyZXR1cm4gZGF0YV9zdGFydCA8 ICZjaDtdXSldLAogICAgICAgW2VtYWNzX2N2X2RhdGFfc3RhcnQ9eWVzXSwKICAgICAgIFtl bWFjc19jdl9kYXRhX3N0YXJ0PW5vXSldKQogIGlmIHRlc3QgJGVtYWNzX2N2X2RhdGFfc3Rh cnQgPSB5ZXM7IHRoZW4KICAgIEFDX0RFRklORShbSEFWRV9EQVRBX1NUQVJUXSwgWzFdLAog ICAgICBbRGVmaW5lIHRvIDEgaWYgZGF0YV9zdGFydCBpcyB0aGUgYWRkcmVzcyBvZiB0aGUg c3RhcnQKICAgICAgIG9mIHRoZSBtYWluIGRhdGEgc2VnbWVudC5dKQogIGZpCmZpCkFDX1NV QlNUKFtIWUJSSURfTUFMTE9DXSkKQUNfU1VCU1QoW0dNQUxMT0NfT0JKXSkKQUNfU1VCU1Qo W1ZNTElNSVRfT0JKXSkKCmlmIHRlc3QgIiRkb3VnX2xlYV9tYWxsb2MiID0gInllcyIgJiYg dGVzdCAiJGh5YnJpZF9tYWxsb2MiICE9IHllczsgdGhlbgogIGlmIHRlc3QgIiRHTlVfTUFM TE9DIiA9IHllcyA7IHRoZW4KICAgIEdOVV9NQUxMT0NfcmVhc29uPSIKICAgICAgKFVzaW5n IERvdWcgTGVhJ3MgbmV3IG1hbGxvYyBmcm9tIHRoZSBHTlUgQyBMaWJyYXJ5LikiCiAgZmkK ICBBQ19ERUZJTkUoW0RPVUdfTEVBX01BTExPQ10sIFsxXSwKICAgIFtEZWZpbmUgdG8gMSBp ZiB0aGUgc3lzdGVtIG1lbW9yeSBhbGxvY2F0b3IgaXMgRG91ZyBMZWEgc3R5bGUsCiAgICAg d2l0aCBtYWxsb2MgaG9va3MgYW5kIG1hbGxvY19zZXRfc3RhdGUuXSkKCiAgIyMgVXNlIG1t YXAgZGlyZWN0bHkgZm9yIGFsbG9jYXRpbmcgbGFyZ2VyIGJ1ZmZlcnMuCiAgIyMgRklYTUUg dGhpcyBjb21lcyBmcm9tIHNyYy9zL3tnbnUsZ251LWxpbnV4fS5oOgogICMjICNpZmRlZiBE T1VHX0xFQV9NQUxMT0M7ICN1bmRlZiBSRUxfQUxMT0M7ICNlbmRpZgogICMjIERvZXMgdGhl IEFDX0ZVTkNfTU1BUCB0ZXN0IGJlbG93IG1ha2UgdGhpcyBjaGVjayB1bm5lY2Vzc2FyeT8K ICBjYXNlICIkb3BzeXMiIGluCiAgICBtaW5ndzMyfGdudSopIFJFTF9BTExPQz1ubyA7Owog IGVzYWMKZmkKCmlmIHRlc3QgeCIke1JFTF9BTExPQ30iID0geDsgdGhlbgogIFJFTF9BTExP Qz0ke0dOVV9NQUxMT0N9CmZpCgp1c2VfbW1hcF9mb3JfYnVmZmVycz1ubwpjYXNlICIkb3Bz eXMiIGluCiAgbWluZ3czMikgdXNlX21tYXBfZm9yX2J1ZmZlcnM9eWVzIDs7CmVzYWMKCkFD X0ZVTkNfTU1BUAppZiB0ZXN0ICR1c2VfbW1hcF9mb3JfYnVmZmVycyA9IHllczsgdGhlbgog IEFDX0RFRklORShbVVNFX01NQVBfRk9SX0JVRkZFUlNdLCBbMV0sCiAgICBbRGVmaW5lIHRv IHVzZSBtbWFwIHRvIGFsbG9jYXRlIGJ1ZmZlciB0ZXh0Ll0pCiAgUkVMX0FMTE9DPW5vCmZp CgpMSUJTPSIkTElCU19TWVNURU0gJExJQlMiCgpkbmwgRklYTUUgcmVwbGFjZSBtYWluIHdp dGggYSBmdW5jdGlvbiB3ZSBhY3R1YWxseSB3YW50IGZyb20gdGhpcyBsaWJyYXJ5LgpBQ19D SEVDS19MSUIoW1hic2RdLCBbbWFpbl0sIFtMRF9TV0lUQ0hfWF9TSVRFPSIkTERfU1dJVENI X1hfU0lURSAtbFhic2QiXSkKCmRubCBDaGVjayBmb3IgdGhlIFBPU0lYIHRocmVhZCBsaWJy YXJ5LgpMSUJfUFRIUkVBRD0KQUNfQ0hFQ0tfSEVBREVSU19PTkNFKFtwdGhyZWFkLmhdKQpp ZiB0ZXN0ICIkYWNfY3ZfaGVhZGVyX3B0aHJlYWRfaCIgJiYgdGVzdCAiJG9wc3lzIiAhPSAi bWluZ3czMiI7IHRoZW4KICBBQ19DQUNIRV9DSEVDSyhbZm9yIHB0aHJlYWQgbGlicmFyeV0s CiAgICBbZW1hY3NfY3ZfcHRocmVhZF9saWJdLAogICAgW2VtYWNzX2N2X3B0aHJlYWRfbGli PW5vCiAgICAgT0xEX0xJQlM9JExJQlMKICAgICBmb3IgZW1hY3NfcHRocmVhZF9saWIgaW4g J25vbmUgbmVlZGVkJyAtbHB0aHJlYWQ7IGRvCiAgICAgICBjYXNlICRlbWFjc19wdGhyZWFk X2xpYiBpbgoJIC0qKSBMSUJTPSIkT0xEX0xJQlMgJGVtYWNzX3B0aHJlYWRfbGliIjs7CiAg ICAgICBlc2FjCiAgICAgICBBQ19MSU5LX0lGRUxTRSgKCSBbQUNfTEFOR19QUk9HUkFNKAoJ ICAgIFtbI2luY2x1ZGUgPHB0aHJlYWQuaD4KCSAgICAgICNpbmNsdWRlIDxzaWduYWwuaD4K CSAgICAgIHNpZ3NldF90IG9sZF9tYXNrLCBuZXdfbWFzazsKCSAgICAgIHZvaWQgbm9vcCAo dm9pZCkge31dXSwKCSAgICBbW3B0aHJlYWRfdCB0aCA9IHB0aHJlYWRfc2VsZiAoKTsKCSAg ICAgIGludCBzdGF0dXMgPSAwOwoJICAgICAgc3RhdHVzICs9IHB0aHJlYWRfY3JlYXRlICgm dGgsIDAsIDAsIDApOwoJICAgICAgc3RhdHVzICs9IHB0aHJlYWRfc2lnbWFzayAoU0lHX0JM T0NLLCAmbmV3X21hc2ssICZvbGRfbWFzayk7CgkgICAgICBzdGF0dXMgKz0gcHRocmVhZF9r aWxsICh0aCwgMCk7CgkgICAgICAjaWYgISAoZGVmaW5lZCBTWVNURU1fTUFMTE9DIHx8IGRl ZmluZWQgSFlCUklEX01BTExPQyBcCgkJICAgICB8fCBkZWZpbmVkIERPVUdfTEVBX01BTExP QykKCSAgICAgIC8qIFRlc3QgZm9yIHB0aHJlYWRfYXRmb3JrIG9ubHkgaWYgZ21hbGxvYyB1 c2VzIGl0LAoJCSBhcyBvbGRlci1zdHlsZSBob3N0cyBsaWtlIE1pckJTRCAxMCBsYWNrIGl0 LiAgKi8KCSAgICAgIHN0YXR1cyArPSBwdGhyZWFkX2F0Zm9yayAobm9vcCwgbm9vcCwgbm9v cCk7CgkgICAgICAjZW5kaWYKCSAgICAgIHJldHVybiBzdGF0dXM7XV0pXSwKCSBbZW1hY3Nf Y3ZfcHRocmVhZF9saWI9JGVtYWNzX3B0aHJlYWRfbGliXSkKICAgICAgIExJQlM9JE9MRF9M SUJTCiAgICAgICBpZiB0ZXN0ICIkZW1hY3NfY3ZfcHRocmVhZF9saWIiICE9IG5vOyB0aGVu CgkgYnJlYWsKICAgICAgIGZpCiAgICAgZG9uZV0pCiAgaWYgdGVzdCAiJGVtYWNzX2N2X3B0 aHJlYWRfbGliIiAhPSBubzsgdGhlbgogICAgQUNfREVGSU5FKFtIQVZFX1BUSFJFQURdLCBb MV0sIFtEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSBQT1NJWCB0aHJlYWRzLl0pCiAgICBjYXNl ICRlbWFjc19jdl9wdGhyZWFkX2xpYiBpbgogICAgICAtKikgTElCX1BUSFJFQUQ9JGVtYWNz X2N2X3B0aHJlYWRfbGliOzsKICAgIGVzYWMKICAgIGFjX2N2X2Z1bmNfcHRocmVhZF9zaWdt YXNrPXllcwogICAgIyBTb21lIHN5c3RlbXMgb3B0aW1pemUgZm9yIHNpbmdsZS10aHJlYWRl ZCBwcm9ncmFtcyBieSBkZWZhdWx0LCBhbmQKICAgICMgbmVlZCBzcGVjaWFsIGZsYWdzIHRv IGRpc2FibGUgdGhlc2Ugb3B0aW1pemF0aW9ucy4gRm9yIGV4YW1wbGUsIHRoZQogICAgIyBk ZWZpbml0aW9uIG9mICdlcnJubycgaW4gPGVycm5vLmg+LgogICAgY2FzZSAkb3BzeXMgaW4K ICAgICAgaHB1eCogfCBzb2xhcmlzKQoJQUNfREVGSU5FKFtfUkVFTlRSQU5UXSwgWzFdLAoJ ICBbRGVmaW5lIHRvIDEgaWYgeW91ciBzeXN0ZW0gcmVxdWlyZXMgdGhpcyBpbiBtdWx0aXRo cmVhZGVkIGNvZGUuXSk7OwogICAgICBhaXg0LTIpCglBQ19ERUZJTkUoW19USFJFQURfU0FG RV0sIFsxXSwKCSAgW0RlZmluZSB0byAxIGlmIHlvdXIgc3lzdGVtIHJlcXVpcmVzIHRoaXMg aW4gbXVsdGl0aHJlYWRlZCBjb2RlLl0pOzsKICAgIGVzYWMKICBmaQpmaQpBQ19TVUJTVChb TElCX1BUSFJFQURdKQoKQUNfTVNHX0NIRUNLSU5HKFtmb3IgdGhyZWFkIHN1cHBvcnRdKQp0 aHJlYWRzX2VuYWJsZWQ9bm8KaWYgdGVzdCAiJHdpdGhfdGhyZWFkcyIgPSB5ZXM7IHRoZW4K ICAgaWYgdGVzdCAiJGVtYWNzX2N2X3B0aHJlYWRfbGliIiAhPSBubzsgdGhlbgogICAgICBB Q19ERUZJTkUoW1RIUkVBRFNfRU5BQkxFRF0sIFsxXSwKICAgICAgICAgICAgICAgIFtEZWZp bmUgdG8gMSBpZiB5b3Ugd2FudCBlbGlzcCB0aHJlYWQgc3VwcG9ydC5dKQogICAgICB0aHJl YWRzX2VuYWJsZWQ9eWVzCiAgIGVsaWYgdGVzdCAiJHtvcHN5c30iID0gIm1pbmd3MzIiOyB0 aGVuCiAgICAgIGRubCBNaW5HVyBjYW4gZG8gbmF0aXZlIFdpbmRvd3MgdGhyZWFkcyBldmVu IHdpdGhvdXQgcHRocmVhZHMKICAgICAgQUNfREVGSU5FKFtUSFJFQURTX0VOQUJMRURdLCBb MV0sCiAgICAgICAgICAgICAgICBbRGVmaW5lIHRvIDEgaWYgeW91IHdhbnQgZWxpc3AgdGhy ZWFkIHN1cHBvcnQuXSkKICAgICAgdGhyZWFkc19lbmFibGVkPXllcwogICBmaQpmaQpBQ19N U0dfUkVTVUxUKFskdGhyZWFkc19lbmFibGVkXSkKCmRubCBDaGVjayBmb3IgbmVlZCBmb3Ig YmlndG9jIHN1cHBvcnQgb24gSUJNIEFJWAoKY2FzZSAke2hvc3Rfb3N9IGluCmFpeCopCiAg QUNfQ0FDSEVfQ0hFQ0soW2ZvciAtYmJpZ3RvYyBvcHRpb25dLCBbZ2RiX2N2X2JpZ3RvY10s IFsKICAgIGNhc2UgJEdDQyBpbgogICAgeWVzKSBnZGJfY3ZfYmlndG9jPS1XbCwtYmJpZ3Rv YyA7OwogICAgKikgZ2RiX2N2X2JpZ3RvYz0tYmJpZ3RvYyA7OwogICAgZXNhYwoKICAgIExE RkxBR1M9JExERkxBR1NcICRnZGJfY3ZfYmlndG9jCiAgICBBQ19MSU5LX0lGRUxTRShbQUNf TEFOR19QUk9HUkFNKFtbXV0sIFtbaW50IGk7XV0pXSwgW10sIFtnZGJfY3ZfYmlndG9jPV0p CiAgXSkKICA7Owplc2FjCgojIENoYW5nZSBDRkxBR1MsIENQUEZMQUdTLCBhbmQgTElCUyB0 ZW1wb3JhcmlseSBzbyB0aGF0IENfU1dJVENIX1hfU0lURQojIGlzIGZvciB0aGUgdGVzdHMg dGhhdCBmb2xsb3cuICBXZSBzZXQgdGhlbSBiYWNrIGxhdGVyIG9uLgoKUkVBTF9DRkxBR1M9 IiRDRkxBR1MiClJFQUxfQ1BQRkxBR1M9IiRDUFBGTEFHUyIKUkVBTF9MSUJTPSIkTElCUyIK CmlmIHRlc3QgIiR7SEFWRV9YMTF9IiA9ICJ5ZXMiOyB0aGVuCiAgREVGUz0iJENfU1dJVENI X1hfU0lURSAkREVGUyIKICBMREZMQUdTPSIkTERGTEFHUyAkTERfU1dJVENIX1hfU0lURSIK ICBMSUJTPSItbFgxMSAkTElCUyIKICBDRkxBR1M9IiRDX1NXSVRDSF9YX1NJVEUgJENGTEFH UyIKICBDUFBGTEFHUz0iJENfU1dJVENIX1hfU0lURSAkQ1BQRkxBR1MiCgogICMgT24gU29s YXJpcywgYXJyYW5nZSBmb3IgTERfUlVOX1BBVEggdG8gcG9pbnQgdG8gdGhlIFggbGlicmFy aWVzIGZvciB0ZXN0cy4KICAjIFRoaXMgaXMgaGFuZGxlZCBieSBMRF9TV0lUQ0hfWF9TSVRF X1JQQVRIIGR1cmluZyB0aGUgcmVhbCBidWlsZCwKICAjIGJ1dCBpdCdzIG1vcmUgY29udmVu aWVudCBoZXJlIHRvIHNldCBMRF9SVU5fUEFUSCBzaW5jZSB0aGlzCiAgIyBhbHNvIHdvcmtz IG9uIGhvc3RzIHRoYXQgZG9uJ3QgdW5kZXJzdGFuZCBMRF9TV0lUQ0hfWF9TSVRFX1JQQVRI LgogIGlmIHRlc3QgIiR7eF9saWJyYXJpZXN9IiAhPSBOT05FICYmIHRlc3QgLW4gIiR7eF9s aWJyYXJpZXN9IjsgdGhlbgogICAgTERfUlVOX1BBVEg9JHhfbGlicmFyaWVzJHtMRF9SVU5f UEFUSCs6fSRMRF9SVU5fUEFUSAogICAgZXhwb3J0IExEX1JVTl9QQVRICiAgZmkKCiAgIyBS ZXBvcnRlZGx5LCBzb21lIGJyb2tlbiBTb2xhcmlzIHN5c3RlbXMgaGF2ZSBYS0JsaWIuaCBi dXQgYXJlIG1pc3NpbmcKICAjIGhlYWRlciBmaWxlcyBpbmNsdWRlZCBmcm9tIHRoZXJlLgog IEFDX0NBQ0hFX0NIRUNLKFtmb3IgWGtiXSwgW2VtYWNzX2N2X3hrYl0sCiAgW0FDX0xJTktf SUZFTFNFKFtBQ19MQU5HX1BST0dSQU0oW1sjaW5jbHVkZSA8WDExL1hsaWIuaD4KI2luY2x1 ZGUgPFgxMS9YS0JsaWIuaD5dXSwKCVtbWGtiRGVzY1B0ciBrYiA9IFhrYkdldEtleWJvYXJk ICgwLCBYa2JBbGxDb21wb25lbnRzTWFzaywgWGtiVXNlQ29yZUtiZCk7XV0pXSwKCVtlbWFj c19jdl94a2I9eWVzXSwKCVtlbWFjc19jdl94a2I9bm9dKV0pCiAgaWYgdGVzdCAkZW1hY3Nf Y3ZfeGtiID0geWVzOyB0aGVuCiAgICBBQ19ERUZJTkUoW0hBVkVfWEtCXSwgWzFdLCBbRGVm aW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIFhrYiBleHRlbnNpb24uXSkKICAgIEFDX0NIRUNL X0ZVTkNTKFtYa2JSZWZyZXNoS2V5Ym9hcmRNYXBwaW5nIFhrYkZyZWVOYW1lc10pCiAgZmkK CiAgQUNfQ0hFQ0tfRlVOQ1MoW1hybVNldERhdGFiYXNlIFhTY3JlZW5SZXNvdXJjZVN0cmlu ZyBYU2NyZWVuTnVtYmVyT2ZTY3JlZW5dKQogIEFDX0NIRUNLX0ZVTkNTKFtYRGlzcGxheUNl bGxzIFhEZXN0cm95U3Vid2luZG93c10pCmZpCgppZiB0ZXN0ICIke3dpbmRvd19zeXN0ZW19 IiA9ICJ4MTEiOyB0aGVuCiAgQUNfTVNHX0NIRUNLSU5HKFtYMTEgdmVyc2lvbiA2XSkKICBB Q19DQUNIRV9WQUwoW2VtYWNzX2N2X3gxMV92ZXJzaW9uXzZdLAogIFtBQ19MSU5LX0lGRUxT RShbQUNfTEFOR19QUk9HUkFNKFtbI2luY2x1ZGUgPFgxMS9YbGliLmg+XV0sCltbI2lmIFhs aWJTcGVjaWZpY2F0aW9uUmVsZWFzZSA8IDYKZmFpbDsKI2VuZGlmCl1dKV0sIFtlbWFjc19j dl94MTFfdmVyc2lvbl82PXllc10sCiAgICAgIFtlbWFjc19jdl94MTFfdmVyc2lvbl82PW5v XSldKQogIGlmIHRlc3QgJGVtYWNzX2N2X3gxMV92ZXJzaW9uXzYgPSB5ZXM7IHRoZW4KICAg IEFDX01TR19SRVNVTFQoWzYgb3IgbmV3ZXJdKQogICAgQUNfREVGSU5FKFtIQVZFX1gxMVI2 XSwgWzFdLAoJICAgICAgW0RlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBYMTFSNiBvciBu ZXdlciB2ZXJzaW9uIG9mIFhsaWIuXSkKICAgIEFDX0RFRklORShbSEFWRV9YX0kxOE5dLCBb MV0sIFtEZWZpbmUgaWYgeW91IGhhdmUgdXNhYmxlIGkxOG4gc3VwcG9ydC5dKQogICAgQUNf Q0hFQ0tfTUVNQkVSUyhbWElDQ2FsbGJhY2suY2FsbGJhY2tdLCBbXSwgW10sIFsjaW5jbHVk ZSA8WDExL1hsaWIuaD5dKQogICAgIyMgaW5vdWVAYWluZXQub3IuanAgc2F5cyBTb2xhcmlz IGhhcyBhIGJ1ZyByZWxhdGVkIHRvIFgxMVI2LXN0eWxlCiAgICAjIyBYSU0gc3VwcG9ydC4K ICAgIGNhc2UgIiRvcHN5cyIgaW4KICAgICAgc29sYXJpcykgOiA7OwogICAgICAqKSBBQ19E RUZJTkUoW0hBVkVfWDExUjZfWElNXSwgWzFdLAogICAgICAgICAgIFtEZWZpbmUgaWYgeW91 IGhhdmUgdXNhYmxlIFgxMVI2LXN0eWxlIFhJTSBzdXBwb3J0Ll0pCiAgICAgICAgIDs7CiAg ICBlc2FjCiAgZWxzZQogICAgQUNfTVNHX1JFU1VMVChbYmVmb3JlIDZdKQogIGZpCmZpCgoK IyMjIFVzZSAtbHJzdmctMiBpZiBhdmFpbGFibGUsIHVubGVzcyAnLS13aXRoLXJzdmc9bm8n IGlzIHNwZWNpZmllZC4KSEFWRV9SU1ZHPW5vCmlmIHRlc3QgIiR7SEFWRV9YMTF9IiA9ICJ5 ZXMiIHx8IHRlc3QgIiR7SEFWRV9OU30iID0gInllcyIgXAogICB8fCB0ZXN0ICIke29wc3lz fSIgPSAibWluZ3czMiIgfHwgdGVzdCAiJHtIQVZFX0JFX0FQUH0iID0gInllcyIgXAogICB8 fCB0ZXN0ICIke3dpbmRvd19zeXN0ZW19IiA9ICJwZ3RrIjsgdGhlbgogIGlmIHRlc3QgIiR7 d2l0aF9yc3ZnfSIgIT0gIm5vIjsgdGhlbgogICAgUlNWR19SRVFVSVJFRD0yLjE0LjAKICAg IFJTVkdfTU9EVUxFPSJsaWJyc3ZnLTIuMCA+PSAkUlNWR19SRVFVSVJFRCIKCiAgICBFTUFD U19DSEVDS19NT0RVTEVTKFtSU1ZHXSwgWyRSU1ZHX01PRFVMRV0pCiAgICBBQ19TVUJTVChb UlNWR19DRkxBR1NdKQogICAgQUNfU1VCU1QoW1JTVkdfTElCU10pCgogICAgaWYgdGVzdCAk SEFWRV9SU1ZHID0geWVzOyB0aGVuCiAgICAgIEFDX0RFRklORShbSEFWRV9SU1ZHXSwgWzFd LCBbRGVmaW5lIHRvIDEgaWYgdXNpbmcgbGlicnN2Zy5dKQogICAgICBDRkxBR1M9IiRDRkxB R1MgJFJTVkdfQ0ZMQUdTIgogICAgICAjIFdpbmRvd3MgbG9hZHMgbGlicnN2ZyBkeW5hbWlj YWxseQogICAgICBpZiB0ZXN0ICIke29wc3lzfSIgPSAibWluZ3czMiI7IHRoZW4KCVJTVkdf TElCUz0KICAgICAgZmkKICAgIGZpCiAgZmkKZmkKCiMjIyBVc2UgLWx3ZWJwIGlmIGF2YWls YWJsZSwgdW5sZXNzICctLXdpdGgtd2VicD1ubycKSEFWRV9XRUJQPW5vCmlmIHRlc3QgIiR7 d2l0aF93ZWJwfSIgIT0gIm5vIjsgdGhlbgogICBpZiB0ZXN0ICIke0hBVkVfWDExfSIgPSAi eWVzIiB8fCB0ZXN0ICIke29wc3lzfSIgPSAibWluZ3czMiIgXAogICB8fCB0ZXN0ICIke0hB VkVfVzMyfSIgPSAieWVzIiB8fCB0ZXN0ICIke0hBVkVfTlN9IiA9ICJ5ZXMiIFwKICAgfHwg dGVzdCAiJHtIQVZFX0JFX0FQUH0iID0gInllcyIgfHwgdGVzdCAiJHtIQVZFX1BHVEt9IiA9 ICJ5ZXMiOyB0aGVuCiAgICAgIFdFQlBfUkVRVUlSRUQ9MC42LjAKICAgICAgV0VCUF9NT0RV TEU9ImxpYndlYnBkZW11eCA+PSAkV0VCUF9SRVFVSVJFRCIKCiAgICAgIEVNQUNTX0NIRUNL X01PRFVMRVMoW1dFQlBdLCBbJFdFQlBfTU9EVUxFXSkKCgogICAgICAjIFdlYlBHZXRJbmZv IGlzIHNvbWV0aW1lcyBub3QgcHJlc2VudCBpbnNpZGUgbGlid2VicGRlbXV4LCBzbwogICAg ICAjIGlmIGl0IGRvZXMgbm90IGxpbmssIGFsc28gY2hlY2sgZm9yIGxpYndlYnBkZWNvZGVy LgoKICAgICAgT0xEX0NGTEFHUz0kQ0ZMQUdTCiAgICAgIE9MRF9MSUJTPSRMSUJTCiAgICAg IENGTEFHUz0iJENGTEFHUyAkV0VCUF9DRkxBR1MiCiAgICAgIExJQlM9IiRMSUJTICRXRUJQ X0xJQlMiCgogICAgICBBQ19DSEVDS19GVU5DKFtXZWJQR2V0SW5mb10sIFtdLAogICAgICAg IFtXRUJQX01PRFVMRT0iJFdFQlBfTU9EVUxFIGxpYndlYnBkZWNvZGVyID49ICRXRUJQX1JF UVVJUkVEIgogIEhBVkVfV0VCUD1ubwogIEFTX1VOU0VUKFtXRUJQX0xJQlNdKQogIEFTX1VO U0VUKFtXRUJQX0NGTEFHU10pCiAgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyhbV0VCUF0sIFskV0VC UF9NT0RVTEVdKV0pCgogICAgICBDRkxBR1M9JE9MRF9DRkxBR1MKICAgICAgTElCUz0kT0xE X0xJQlMKCiAgICAgIEFDX1NVQlNUKFtXRUJQX0NGTEFHU10pCiAgICAgIEFDX1NVQlNUKFtX RUJQX0xJQlNdKQogICBmaQogICBpZiB0ZXN0ICRIQVZFX1dFQlAgPSB5ZXM7IHRoZW4KICAg ICAgQUNfREVGSU5FKFtIQVZFX1dFQlBdLCBbMV0sIFtEZWZpbmUgdG8gMSBpZiB1c2luZyBs aWJ3ZWJwLl0pCiAgICAgIENGTEFHUz0iJENGTEFHUyAkV0VCUF9DRkxBR1MiCiAgICAgICMg V2luZG93cyBsb2FkcyBsaWJ3ZWJwIGR5bmFtaWNhbGx5CiAgICAgIGlmIHRlc3QgIiR7b3Bz eXN9IiA9ICJtaW5ndzMyIjsgdGhlbgoJV0VCUF9MSUJTPQogICAgICBmaQogICBmaQpmaQoK IyMjIFVzZSAtbHNxbGl0ZTMgaWYgYXZhaWxhYmxlLCB1bmxlc3MgJy0td2l0aC1zcWxpdGUz PW5vJwpIQVZFX1NRTElURTM9bm8KaWYgdGVzdCAiJHt3aXRoX3NxbGl0ZTN9IiAhPSAibm8i OyB0aGVuCiAgIEFDX0NIRUNLX0xJQihbc3FsaXRlM10sIFtzcWxpdGUzX29wZW5fdjJdLAog ICAgIFtIQVZFX1NRTElURTM9eWVzXSwKICAgICBbSEFWRV9TUUxJVEUzPW5vXSkKICAgaWYg dGVzdCAiJEhBVkVfU1FMSVRFMyIgPSAieWVzIjsgdGhlbgogICAgIFNRTElURTNfTElCUz0t bHNxbGl0ZTMKICAgICBBQ19TVUJTVChbU1FMSVRFM19MSUJTXSkKICAgICBMSUJTPSIkU1FM SVRFM19MSUJTICRMSUJTIgogICAgIEFDX0RFRklORShbSEFWRV9TUUxJVEUzXSwgWzFdLAog ICAgICAgW0RlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBsaWJzcWxpdGUzIGxpYnJhcnkg KC1sc3FsaXRlKS5dKQogICAgICMgV2luZG93cyBsb2FkcyBsaWJzcWxpdGUgZHluYW1pY2Fs bHkKICAgICBpZiB0ZXN0ICIke29wc3lzfSIgPSAibWluZ3czMiI7IHRoZW4KICAgICAgICBT UUxJVEUzX0xJQlM9CiAgICAgZmkKICAgICBBQ19DSEVDS19MSUIoW3NxbGl0ZTNdLCBbc3Fs aXRlM19sb2FkX2V4dGVuc2lvbl0sCiAgICAgICBbSEFWRV9TUUxJVEUzX0xPQURfRVhURU5T SU9OPXllc10sCiAgICAgICBbSEFWRV9TUUxJVEUzX0xPQURfRVhURU5TSU9OPW5vXSkKICAg ICBpZiB0ZXN0ICIkSEFWRV9TUUxJVEUzX0xPQURfRVhURU5TSU9OIiA9ICJ5ZXMiOyB0aGVu CiAgICAgICBBQ19ERUZJTkUoW0hBVkVfU1FMSVRFM19MT0FEX0VYVEVOU0lPTl0sIFsxXSwK CSBbRGVmaW5lIHRvIDEgaWYgc3FsaXRlMyBzdXBwb3J0cyBsb2FkaW5nIGV4dGVuc2lvbnMu XSkKICAgICBmaQogICBmaQpmaQoKSEFWRV9JTUFHRU1BR0lDSz1ubwppZiB0ZXN0ICIke0hB VkVfWDExfSIgPSAieWVzIiB8fCB0ZXN0ICIke0hBVkVfTlN9IiA9ICJ5ZXMiIHx8IHRlc3Qg IiR7SEFWRV9XMzJ9IiA9ICJ5ZXMiIHx8IFwKICAgdGVzdCAiJHtIQVZFX0JFX0FQUH0iID0g InllcyIgfHwgdGVzdCAiJHt3aW5kb3dfc3lzdGVtfSIgPSAicGd0ayI7IHRoZW4KICBpZiB0 ZXN0ICIke3dpdGhfaW1hZ2VtYWdpY2t9IiAhPSAibm8iOyB0aGVuCiAgICBpZiB0ZXN0IC1u ICIkQlJFVyI7IHRoZW4KICAgICAgIyBIb21lYnJldyBkb2Vzbid0IGxpbmsgSW1hZ2VNYWdp Y2sgNiBieSBkZWZhdWx0LCBzbyBtYWtlIHN1cmUKICAgICAgIyBwa2djb25maWcgY2FuIGZp bmQgaXQuCiAgICAgIGV4cG9ydCBQS0dfQ09ORklHX1BBVEg9IiRQS0dfQ09ORklHX1BBVEgk UEFUSF9TRVBBUkFUT1JgJEJSRVcgLS1wcmVmaXggaW1hZ2VtYWdpY2tANiAyPi9kZXYvbnVs bGAvbGliL3BrZ2NvbmZpZyIKICAgIGZpCgogICAgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyhbSU1B R0VNQUdJQ0tdLCBbTWFnaWNrV2FuZCA+PSA3XSkKICAgIGlmIHRlc3QgJEhBVkVfSU1BR0VN QUdJQ0sgPSB5ZXM7IHRoZW4KICAgICAgIEFDX0RFRklORShbSEFWRV9JTUFHRU1BR0lDSzdd LCBbMV0sCgkgW0RlZmluZSB0byAxIGlmIHVzaW5nIEltYWdlTWFnaWNrNy5dKQogICAgZWxz ZQogICAgICAgIyMgNi4zLjUgaXMgdGhlIGVhcmxpZXN0IHZlcnNpb24ga25vd24gdG8gd29y azsgc2VlIEJ1ZyMxNzMzOS4KICAgICAgICMjIDYuOC4yIG1ha2VzIEVtYWNzIGNyYXNoOyBz ZWUgQnVnIzEzODY3LgogICAgICAgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyhbSU1BR0VNQUdJQ0td LCBbV2FuZCA+PSA2LjMuNSBXYW5kICE9IDYuOC4yXSkKICAgIGZpCgogICAgaWYgdGVzdCAk SEFWRV9JTUFHRU1BR0lDSyA9IHllczsgdGhlbgogICAgICBPTERfQ0ZMQUdTPSRDRkxBR1MK ICAgICAgT0xEX0xJQlM9JExJQlMKICAgICAgQ0ZMQUdTPSIkQ0ZMQUdTICRJTUFHRU1BR0lD S19DRkxBR1MiCiAgICAgIExJQlM9IiRJTUFHRU1BR0lDS19MSUJTICRMSUJTIgogICAgICBB Q19DSEVDS19GVU5DUyhbTWFnaWNrUmVsaW5xdWlzaE1lbW9yeSBNYWdpY2tFeHBvcnRJbWFn ZVBpeGVscyBcCgkJICAgICAgTWFnaWNrTWVyZ2VJbWFnZUxheWVycyBNYWdpY2tBdXRvT3Jp ZW50SW1hZ2VdKQogICAgICBDRkxBR1M9JE9MRF9DRkxBR1MKICAgICAgTElCUz0kT0xEX0xJ QlMKICAgICAgIyBDaGVjayB0aGF0IEltYWdlTWFnaWNrIGxpbmtzLiAgSXQgZG9lcyBub3Qg bGluayBvbiBGZWRvcmEgMjUKICAgICAgIyB3aXRoICcuL2NvbmZpZ3VyZSBDQz1jbGFuZycs IGFzIHBrZy1jb25maWcgb3V0cHV0cyBmbGFncyBsaWtlCiAgICAgICMgLWxvbXAgdGhhdCB3 b3JrIGZvciBHQ0MgYnV0IG5vdCBDbGFuZy4KICAgICAgaWYgdGVzdCAiJGFjX2N2X2Z1bmNf TWFnaWNrUmVsaW5xdWlzaE1lbW9yeSIgIT0geWVzOyB0aGVuCglIQVZFX0lNQUdFTUFHSUNL PW5vCiAgICAgIGZpCiAgICBmaQogICAgaWYgdGVzdCAkSEFWRV9JTUFHRU1BR0lDSyA9IHll czsgdGhlbgogICAgICBBQ19ERUZJTkUoW0hBVkVfSU1BR0VNQUdJQ0tdLCBbMV0sIFtEZWZp bmUgdG8gMSBpZiB1c2luZyBJbWFnZU1hZ2ljay5dKQogICAgZWxzZQogICAgICBpZiB0ZXN0 ICIke3dpdGhfaW1hZ2VtYWdpY2t9IiAhPSAibm8iOyB0aGVuCiAgICAgICAgQUNfTVNHX0VS Uk9SKFtJbWFnZU1hZ2ljayB3YW50ZWQsIGJ1dCBpdCBkb2VzIG5vdCBjb21waWxlLiAgTWF5 YmUgc29tZSBsaWJyYXJ5IGZpbGVzIGFyZSBtaXNzaW5nP10pOwogICAgICBmaQogICAgICBJ TUFHRU1BR0lDS19DRkxBR1M9CiAgICAgIElNQUdFTUFHSUNLX0xJQlM9CiAgICBmaQogICAg QUNfU1VCU1QoW0lNQUdFTUFHSUNLX0NGTEFHU10pCiAgICBBQ19TVUJTVChbSU1BR0VNQUdJ Q0tfTElCU10pCiAgZmkKZmkKCkFDX0NIRUNLX0xJQihbYW5sXSwgW2dldGFkZHJpbmZvX2Fd LCBbSEFWRV9HRVRBRERSSU5GT19BPXllc10pCmlmIHRlc3QgIiR7SEFWRV9HRVRBRERSSU5G T19BfSIgPSAieWVzIjsgdGhlbgogIEFDX0RFRklORShbSEFWRV9HRVRBRERSSU5GT19BXSwg WzFdLApbRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgZ2V0YWRkcmluZm9fYSBmb3IgYXN5bmNo cm9ub3VzIEROUyByZXNvbHV0aW9uLl0pCiAgR0VUQUREUklORk9fQV9MSUJTPSItbGFubCIK ICBBQ19TVUJTVChbR0VUQUREUklORk9fQV9MSUJTXSkKZmkKCkhBVkVfR1RLPW5vCkdUS19P Qko9Cmd0a190ZXJtX2hlYWRlcj0kdGVybV9oZWFkZXIKY2hlY2tfZ3RrMj1ubwpndGszX3Br Z19lcnJvcnM9CmlmIHRlc3QgIiR7b3BzeXN9IiAhPSAibWluZ3czMiI7IHRoZW4KICBpZiB0 ZXN0ICIke3dpdGhfZ3RrM30iID0gInllcyIgfHwgdGVzdCAiJHt3aXRoX2d0a30iID0gInll cyIgfHwgdGVzdCAiJFVTRV9YX1RPT0xLSVQiID0gIm1heWJlIjsgdGhlbgogICAgR0xJQl9S RVFVSVJFRD0yLjM3LjUKICAgIGlmIHRlc3QgIiR7d2luZG93X3N5c3RlbX0iID0gIngxMSI7 IHRoZW4KICAgICAgR1RLX1JFUVVJUkVEPTMuMTAKICAgIGVsc2UKICAgICAgR1RLX1JFUVVJ UkVEPTMuMjIuMjMKICAgIGZpCiAgICBHVEtfTU9EVUxFUz0iZ3RrKy0zLjAgPj0gJEdUS19S RVFVSVJFRCBnbGliLTIuMCA+PSAkR0xJQl9SRVFVSVJFRCIKCiAgICBkbmwgQ2hlY2tzIGZv ciBsaWJyYXJpZXMuCiAgICBFTUFDU19DSEVDS19NT0RVTEVTKFtHVEtdLCBbJEdUS19NT0RV TEVTXSwKICAgICAgW3BrZ19jaGVja19ndGs9eWVzXSwgW3BrZ19jaGVja19ndGs9bm9dKQog ICAgaWYgdGVzdCAiJHBrZ19jaGVja19ndGsiID0gIm5vIiAmJiB0ZXN0ICIkd2l0aF9ndGsz IiA9ICJ5ZXMiOyB0aGVuCiAgICAgICBBQ19NU0dfRVJST1IoWyRHVEtfUEtHX0VSUk9SU10p CiAgICBmaQogICAgaWYgdGVzdCAiJHBrZ19jaGVja19ndGsiID0gInllcyI7IHRoZW4KICAg ICAgIEFDX0RFRklORShbSEFWRV9HVEszXSwgWzFdLCBbRGVmaW5lIHRvIDEgaWYgdXNpbmcg R1RLIDMgb3IgbGF0ZXIuXSkKICAgICAgIEdUS19PQko9ZW1hY3NndGtmaXhlZC5vCiAgICAg ICBndGtfdGVybV9oZWFkZXI9Z3RrdXRpbC5oCiAgICAgICBVU0VfR1RLX1RPT0xLSVQ9IkdU SzMiCiAgICAgICBpZiB0ZXN0ICJ4JGFjX2VuYWJsZV9ndGtfZGVwcmVjYXRpb25fd2Fybmlu Z3MiID0geDsgdGhlbgoJIEFDX0RFRklORShbR0RLX0RJU0FCTEVfREVQUkVDQVRJT05fV0FS TklOR1NdLCBbMV0sCgkgICBbRGVmaW5lIHRvIDEgdG8gZGlzYWJsZSBHVEsrL0dESyBkZXBy ZWNhdGlvbiB3YXJuaW5ncy5dKQoJIEFDX0RFRklORShbR0xJQl9ESVNBQkxFX0RFUFJFQ0FU SU9OX1dBUk5JTkdTXSwgWzFdLAoJICAgW0RlZmluZSB0byAxIHRvIGRpc2FibGUgR2xpYiBk ZXByZWNhdGlvbiB3YXJuaW5ncy5dKQogICAgICAgZmkKICAgIGVsc2UKICAgICAgIGNoZWNr X2d0azI9eWVzCiAgICAgICBndGszX3BrZ19lcnJvcnM9IiRHVEtfUEtHX0VSUk9SUyAiCiAg ICBmaQogIGZpCgogIGlmIHRlc3QgIiR7d2l0aF9ndGsyfSIgPSAieWVzIiB8fCB0ZXN0ICIk Y2hlY2tfZ3RrMiIgPSAieWVzIjsgdGhlbgogICAgR0xJQl9SRVFVSVJFRD0yLjI4CiAgICBH VEtfUkVRVUlSRUQ9Mi4yNAogICAgR1RLX01PRFVMRVM9Imd0aystMi4wID49ICRHVEtfUkVR VUlSRUQgZ2xpYi0yLjAgPj0gJEdMSUJfUkVRVUlSRUQiCgogICAgZG5sIENoZWNrcyBmb3Ig bGlicmFyaWVzLgogICAgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyhbR1RLXSwgWyRHVEtfTU9EVUxF U10sCiAgICAgIFtwa2dfY2hlY2tfZ3RrPXllc10sIFtwa2dfY2hlY2tfZ3RrPW5vXSkKICAg IGlmIHRlc3QgIiRwa2dfY2hlY2tfZ3RrIiA9ICJubyIgJiYKICAgICAgIHsgdGVzdCAiJHdp dGhfZ3RrIiA9IHllcyB8fCB0ZXN0ICIkd2l0aF9ndGsyIiA9ICJ5ZXMiOyB9CiAgICB0aGVu CiAgICAgIEFDX01TR19FUlJPUihbJGd0azNfcGtnX2Vycm9ycyRHVEtfUEtHX0VSUk9SU10p CiAgICBmaQogICAgdGVzdCAiJHBrZ19jaGVja19ndGsiID0gInllcyIgJiYgVVNFX0dUS19U T09MS0lUPSJHVEsyIgogIGZpCmZpCgpPTERfQ0ZMQUdTPSRDRkxBR1MKT0xEX0xJQlM9JExJ QlMKCmlmIHRlc3QgeCIkcGtnX2NoZWNrX2d0ayIgPSB4eWVzOyB0aGVuCgogIEFDX1NVQlNU KFtHVEtfTElCU10pCiAgQ0ZMQUdTPSIkQ0ZMQUdTICRHVEtfQ0ZMQUdTIgogIExJQlM9IiRH VEtfTElCUyAkTElCUyIKICBkbmwgVHJ5IHRvIGNvbXBpbGUgYSBzaW1wbGUgR1RLIHByb2dy YW0uCiAgQUNfQ0FDSEVfQ0hFQ0soW3doZXRoZXIgR1RLIGNvbXBpbGVzXSwgW2VtYWNzX2N2 X2d0a19jb21waWxlc10sCiAgW0FDX0xJTktfSUZFTFNFKAogICAgW0FDX0xBTkdfUFJPR1JB TSgKICAgICAgIFtbLyogQ2hlY2sgdGhlIEd0ayBhbmQgR2xpYiBBUElzLiAgKi8KCSAjaW5j bHVkZSA8Z3RrL2d0ay5oPgoJICNpbmNsdWRlIDxnbGliLW9iamVjdC5oPgoJIHN0YXRpYyB2 b2lkCgkgY2FsbGJhY2sgKEdPYmplY3QgKmdvLCBHUGFyYW1TcGVjICpzcGVjLCBncG9pbnRl ciB1c2VyX2RhdGEpCgkge30KICAgICAgIF1dLAogICAgICAgW1sKCSBHdGtTZXR0aW5ncyAq Z3MgPSAwOwoJIC8qIFVzZSBHX0NBTExCQUNLIHRvIG1ha2Ugc3VyZSBmdW5jdGlvbiBwb2lu dGVycyBjYW4gYmUgY2FzdCB0byB2b2lkICo7CgkgICAgc3RyaWN0IEMgcHJvaGliaXRzIHRo aXMuICBVc2UgZ3RrX21haW5faXRlcmF0aW9uIHRvIHRlc3QgdGhhdCB0aGUKCSAgICBsaWJy YXJpZXMgYXJlIHRoZXJlLiAgKi8KCSBpZiAoZ19zaWduYWxfaGFuZGxlcl9maW5kIChHX09C SkVDVCAoZ3MpLCBHX1NJR05BTF9NQVRDSF9GVU5DLAoJCQkJICAgIDAsIDAsIDAsIEdfQ0FM TEJBQ0sgKGNhbGxiYWNrKSwgMCkpCgkgICBndGtfbWFpbl9pdGVyYXRpb24gKCk7CiAgICAg ICBdXSldLAogICAgW2VtYWNzX2N2X2d0a19jb21waWxlcz15ZXNdLCBbZW1hY3NfY3ZfZ3Rr X2NvbXBpbGVzPW5vXSldKQogIGlmIHRlc3QgIiR7ZW1hY3NfY3ZfZ3RrX2NvbXBpbGVzfSIg IT0gInllcyI7IHRoZW4KICAgIEdUS19PQko9CiAgICBpZiB0ZXN0ICIkVVNFX1hfVE9PTEtJ VCIgIT0gIm1heWJlIjsgdGhlbgogICAgICBBQ19NU0dfRVJST1IoW0d0aysgd2FudGVkLCBi dXQgaXQgZG9lcyBub3QgY29tcGlsZSwgc2VlIGNvbmZpZy5sb2cuICBNYXliZSBzb21lIHgx MS1kZXZlbCBmaWxlcyBtaXNzaW5nP10pOwogICAgZmkKICBlbHNlCiAgICBDX1NXSVRDSF9Y X1NJVEU9IiRDX1NXSVRDSF9YX1NJVEUgJEdUS19DRkxBR1MiCiAgICBIQVZFX0dUSz15ZXMK ICAgIEFDX0RFRklORShbVVNFX0dUS10sIFsxXSwgW0RlZmluZSB0byAxIGlmIHVzaW5nIEdU Sy5dKQogICAgR1RLX09CSj0iZ3RrdXRpbC5vICRHVEtfT0JKIgogICAgdGVybV9oZWFkZXI9 JGd0a190ZXJtX2hlYWRlcgogICAgVVNFX1hfVE9PTEtJVD1ub25lCiAgICBBQ19NU0dfV0FS TihbW1lvdXIgdmVyc2lvbiBvZiBHdGsrIHdpbGwgaGF2ZSBwcm9ibGVtcyB3aXRoCiAgICAg ICBjbG9zaW5nIG9wZW4gZGlzcGxheXMuICBUaGlzIGlzIG5vIHByb2JsZW0gaWYgeW91IGp1 c3QgdXNlCiAgICAgICBvbmUgZGlzcGxheSwgYnV0IGlmIHlvdSB1c2UgbW9yZSB0aGFuIG9u ZSBhbmQgY2xvc2Ugb25lIG9mIHRoZW0KICAgICAgIEVtYWNzIG1heSBjcmFzaC4KICAgICAg IFNlZSBodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ3RrL2lzc3Vlcy8yMjFdXSkK ICBmaQoKZmkKQUNfU1VCU1QoW0dUS19PQkpdKQoKCmlmIHRlc3QgIiR7SEFWRV9HVEt9IiA9 ICJ5ZXMiOyB0aGVuCgogIGRubCAgR1RLIHNjcm9sbGJhcnMgcmVzZW1ibGUgdG9vbGtpdCBz Y3JvbGxiYXJzIGEgbG90LCBzbyB0byBhdm9pZAogIGRubCAgYSBsb3QgaWYgI2lmZGVmOnMs IHNheSB3ZSBoYXZlIHRvb2xraXQgc2Nyb2xsYmFycy4KICBpZiB0ZXN0ICIkd2l0aF90b29s a2l0X3Njcm9sbF9iYXJzIiAhPSBubzsgdGhlbgogICAgd2l0aF90b29sa2l0X3Njcm9sbF9i YXJzPXllcwogIGZpCgogIHRlcm1faGVhZGVyPWd0a3V0aWwuaAoKICBpZiB0ZXN0ICIke1VT RV9HVEtfVE9PTEtJVH0iID0gR1RLMjsgdGhlbgoKICAgIGRubCAgQ2hlY2sgaWYgd2UgaGF2 ZSB0aGUgb2xkIGZpbGUgc2VsZWN0aW9uIGRpYWxvZyBkZWNsYXJlZCBhbmQKICAgIGRubCAg aW4gdGhlIGxpbmsgbGlicmFyeS4gIEluIDIueCBpdCBtYXkgYmUgaW4gdGhlIGxpYnJhcnks CiAgICBkbmwgIGJ1dCBub3QgZGVjbGFyZWQgaWYgZGVwcmVjYXRlZCBmZWF0dXJlZCBoYXMg YmVlbiBzZWxlY3RlZCBvdXQuCiAgICBkbmwgIEFDX0NIRUNLX0RFQ0wgY2hlY2tzIGZvciBh IG1hY3JvLCBzbyBjaGVjayBmb3IgR1RLX1RZUEVfRklMRV9TRUxFQ1RJT04uCiAgICBIQVZF X0dUS19GSUxFX1NFTEVDVElPTj1ubwogICAgQUNfQ0hFQ0tfREVDTChbR1RLX1RZUEVfRklM RV9TRUxFQ1RJT05dLAoJCSAgW0hBVkVfR1RLX0ZJTEVfU0VMRUNUSU9OPXllc10sCgkJICBb SEFWRV9HVEtfRklMRV9TRUxFQ1RJT049bm9dLAoJCSAgW0FDX0lOQ0xVREVTX0RFRkFVTFQK I2luY2x1ZGUgPGd0ay9ndGsuaD5dKQogICAgaWYgdGVzdCAiJEhBVkVfR1RLX0ZJTEVfU0VM RUNUSU9OIiA9IHllczsgdGhlbgogICAgICBBQ19DSEVDS19GVU5DUyhbZ3RrX2ZpbGVfc2Vs ZWN0aW9uX25ld10pCiAgICBmaQoKICAgIGRubCBUaGlzIHByb2NlZHVyZSBjYXVzZXMgYSBi dWcgb24gY2VydGFpbiBVYnVudHUgR1RLKzIgYnVpbGRzCiAgICBBQ19DSEVDS19GVU5DUyhb Z3RrX3dpbmRvd19zZXRfaGFzX3Jlc2l6ZV9ncmlwXSkKICBmaQpmaQoKQ0ZMQUdTPSRPTERf Q0ZMQUdTCkxJQlM9JE9MRF9MSUJTCgpQR1RLX09CSj0KUEdUS19MSUJTPQppZiB0ZXN0ICIk d2luZG93X3N5c3RlbSIgPSAicGd0ayI7IHRoZW4KICBQR1RLX09CSj0icGd0a2Zucy5vIHBn dGt0ZXJtLm8gcGd0a3NlbGVjdC5vIHBndGttZW51Lm8gcGd0a2ltLm8geHNldHRpbmdzLm8i CiAgUEdUS19MSUJTPSIkR1RLX0xJQlMiCmZpCkFDX1NVQlNUKFtQR1RLX09CSl0pCkFDX1NV QlNUKFtQR1RLX0xJQlNdKQoKQUNfQ0hFQ0tfRlVOQ1MoW21hbGxvY190cmltXSkKCmRubCBE LUJ1cyBoYXMgYmVlbiB0ZXN0ZWQgdW5kZXIgR05VL0xpbnV4IG9ubHkuICBNdXN0IGJlIGFk YXB0ZWQgZm9yCmRubCBvdGhlciBwbGF0Zm9ybXMuCkhBVkVfREJVUz1ubwpEQlVTX09CSj0K aWYgdGVzdCAiJHt3aXRoX2RidXN9IiA9ICJ5ZXMiOyB0aGVuCiAgIEVNQUNTX0NIRUNLX01P RFVMRVMoW0RCVVNdLCBbZGJ1cy0xID49IDEuMF0pCiAgIGlmIHRlc3QgIiRIQVZFX0RCVVMi ID0geWVzOyB0aGVuCiAgICAgQUNfREVGSU5FKFtIQVZFX0RCVVNdLCBbMV0sIFtEZWZpbmUg dG8gMSBpZiB1c2luZyBELUJ1cy5dKQogICAgIGRubCBkYnVzX3dhdGNoX2dldF91bml4X2Zk IGhhcyBiZWVuIGludHJvZHVjZWQgaW4gRC1CdXMgMS4xLjEuCiAgICAgZG5sIGRidXNfdHlw ZV9pc192YWxpZCBhbmQgZGJ1c192YWxpZGF0ZV8qIGhhdmUgYmVlbiBpbnRyb2R1Y2VkIGlu CiAgICAgZG5sIEQtQnVzIDEuNS4xMi4KICAgICBPTERfTElCUz0kTElCUwogICAgIExJQlM9 IiRMSUJTICREQlVTX0xJQlMiCiAgICAgQUNfQ0hFQ0tfRlVOQ1MoW2RidXNfd2F0Y2hfZ2V0 X3VuaXhfZmQgXAoJCSAgICBkYnVzX3R5cGVfaXNfdmFsaWQgXAoJCSAgICBkYnVzX3ZhbGlk YXRlX2J1c19uYW1lIFwKICAgICAgICAgICAgICAgICAgICBkYnVzX3ZhbGlkYXRlX3BhdGgg XAoJCSAgICBkYnVzX3ZhbGlkYXRlX2ludGVyZmFjZSBcCgkJICAgIGRidXNfdmFsaWRhdGVf bWVtYmVyXSkKICAgICBMSUJTPSRPTERfTElCUwogICAgIERCVVNfT0JKPWRidXNiaW5kLm8K ICAgZmkKZmkKQUNfU1VCU1QoW0RCVVNfQ0ZMQUdTXSkKQUNfU1VCU1QoW0RCVVNfTElCU10p CkFDX1NVQlNUKFtEQlVTX09CSl0pCgpkbmwgR1NldHRpbmdzIGhhcyBiZWVuIHRlc3RlZCB1 bmRlciBHTlUvTGludXggb25seS4KSEFWRV9HU0VUVElOR1M9bm8KaWYgdGVzdCAiJHtIQVZF X1gxMX0iID0gInllcyIgLW8gIiR7d2luZG93X3N5c3RlbX0iID0gInBndGsiICYmIHRlc3Qg IiR7d2l0aF9nc2V0dGluZ3N9IiA9ICJ5ZXMiOyB0aGVuCiAgIEVNQUNTX0NIRUNLX01PRFVM RVMoW0dTRVRUSU5HU10sIFtnaW8tMi4wID49IDIuMjZdKQogICBpZiB0ZXN0ICIkSEFWRV9H U0VUVElOR1MiID0gInllcyI7IHRoZW4KICAgICAgb2xkX0NGTEFHUz0kQ0ZMQUdTCiAgICAg IENGTEFHUz0iJENGTEFHUyAkR1NFVFRJTkdTX0NGTEFHUyIKICAgICAgb2xkX0xJQlM9JExJ QlMKICAgICAgTElCUz0iJExJQlMgJEdTRVRUSU5HU19MSUJTIgogICAgICBBQ19DQUNIRV9D SEVDSyhbd2hldGhlciBHU2V0dGluZ3MgaXMgaW4gZ2lvXSwgW2VtYWNzX2N2X2dzZXR0aW5n c19pbl9naW9dLAogICAgICBbQUNfTElOS19JRkVMU0UoCiAgICAgICAgIFtBQ19MQU5HX1BS T0dSQU0oCgkgICAgIFtbLyogQ2hlY2sgdGhhdCBnc2V0dGluZ3MgcmVhbGx5IGlzIHByZXNl bnQuICAqLwoJICAgICAjaW5jbHVkZSA8Z2xpYi1vYmplY3QuaD4KCSAgICAgI2luY2x1ZGUg PGdpby9naW8uaD4KCSAgICAgXV0sCgkgICAgIFtbCgkgICAgICAgR1NldHRpbmdzICpzZXR0 aW5nczsKCSAgICAgICBHVmFyaWFudCAqdmFsID0gZ19zZXR0aW5nc19nZXRfdmFsdWUgKHNl dHRpbmdzLCAiIik7CgkgICAgIF1dKV0sCiAgICAgICBbZW1hY3NfY3ZfZ3NldHRpbmdzX2lu X2dpbz15ZXNdLCBbZW1hY3NfY3ZfZ3NldHRpbmdzX2luX2dpbz1ub10pXSkKCiAgICAgIGlm IHRlc3QgIiRlbWFjc19jdl9nc2V0dGluZ3NfaW5fZ2lvIiA9ICJ5ZXMiOyB0aGVuCglBQ19E RUZJTkUoW0hBVkVfR1NFVFRJTkdTXSwgWzFdLCBbRGVmaW5lIHRvIDEgaWYgdXNpbmcgR1Nl dHRpbmdzLl0pCglTRVRUSU5HU19DRkxBR1M9IiRHU0VUVElOR1NfQ0ZMQUdTIgoJU0VUVElO R1NfTElCUz0iJEdTRVRUSU5HU19MSUJTIgoJdGVzdCAiJHdpdGhfZ2NvbmYiID0gInllcyIg fHwgd2l0aF9nY29uZj1ubwogICAgICBmaQogICAgICBDRkxBR1M9JG9sZF9DRkxBR1MKICAg ICAgTElCUz0kb2xkX0xJQlMKICAgZmkKZmkKQUNfU1VCU1QoW0hBVkVfR1NFVFRJTkdTXSkK CmRubCBHQ29uZiBoYXMgYmVlbiB0ZXN0ZWQgdW5kZXIgR05VL0xpbnV4IG9ubHkuCmRubCBU aGUgdmVyc2lvbiBpcyByZWFsbHkgYXJiaXRyYXJ5LCBpdCBpcyBhYm91dCB0aGUgc2FtZSBh Z2UgYXMgR3RrKyAyLjYuCkhBVkVfR0NPTkY9bm8KaWYgdGVzdCAiJHtIQVZFX1gxMX0iID0g InllcyIgLW8gIiR7d2luZG93X3N5c3RlbX0iID0gInBndGsiICYmIHRlc3QgIiR7d2l0aF9n Y29uZn0iICE9ICJubyI7IHRoZW4KICAgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyhbR0NPTkZdLCBb Z2NvbmYtMi4wID49IDIuMTNdKQogICBpZiB0ZXN0ICIkSEFWRV9HQ09ORiIgPSB5ZXM7IHRo ZW4KICAgICAgQUNfREVGSU5FKFtIQVZFX0dDT05GXSwgWzFdLCBbRGVmaW5lIHRvIDEgaWYg dXNpbmcgR0NvbmYuXSkKICAgICAgZG5sIE5ld2VyIEdDb25mIGRvZXNuJ3QgbGluayB3aXRo IGdfb2JqZWN0cywgc28gdGhpcyBpcyBub3QgZGVmaW5lZC4KICAgICAgU0VUVElOR1NfQ0ZM QUdTPSIkU0VUVElOR1NfQ0ZMQUdTICRHQ09ORl9DRkxBR1MiCiAgICAgIFNFVFRJTkdTX0xJ QlM9IiRTRVRUSU5HU19MSUJTICRHQ09ORl9MSUJTIgogICBmaQpmaQoKaWYgdGVzdCAiJEhB VkVfR1NFVFRJTkdTIiA9ICJ5ZXMiIHx8IHRlc3QgIiRIQVZFX0dDT05GIiA9ICJ5ZXMiOyB0 aGVuCiAgICBFTUFDU19DSEVDS19NT0RVTEVTKFtHT0JKRUNUXSwgW2dvYmplY3QtMi4wID49 IDIuMF0pCiAgICBpZiB0ZXN0ICIkSEFWRV9HT0JKRUNUIiA9ICJ5ZXMiOyB0aGVuCiAgICAg ICBTRVRUSU5HU19DRkxBR1M9IiRTRVRUSU5HU19DRkxBR1MgJEdPQkpFQ1RfQ0ZMQUdTIgog ICAgICAgU0VUVElOR1NfTElCUz0iJFNFVFRJTkdTX0xJQlMgJEdPQkpFQ1RfTElCUyIKICAg IGZpCiAgICBTQVZFX0NGTEFHUz0iJENGTEFHUyIKICAgIFNBVkVfTElCUz0iJExJQlMiCiAg ICBDRkxBR1M9IiRTRVRUSU5HU19DRkxBR1MgJENGTEFHUyIKICAgIExJQlM9IiRTRVRUSU5H U19MSUJTICRMSUJTIgogICAgQ0ZMQUdTPSIkU0FWRV9DRkxBR1MiCiAgICBMSUJTPSIkU0FW RV9MSUJTIgpmaQpBQ19TVUJTVChbU0VUVElOR1NfQ0ZMQUdTXSkKQUNfU1VCU1QoW1NFVFRJ TkdTX0xJQlNdKQoKVVNFX1NUQVJUVVBfTk9USUZJQ0FUSU9OPW5vCmlmIHRlc3QgIiR7SEFW RV9HVEt9IiA9ICJ5ZXMiOyB0aGVuCiAgICBVU0VfU1RBUlRVUF9OT1RJRklDQVRJT049eWVz CmZpCkFDX1NVQlNUKFtVU0VfU1RBUlRVUF9OT1RJRklDQVRJT05dKQoKZG5sIFNFTGludXgg aXMgYXZhaWxhYmxlIGZvciBHTlUvTGludXggb25seS4KSEFWRV9MSUJTRUxJTlVYPW5vCkxJ QlNFTElOVVhfTElCUz0KaWYgdGVzdCAiJHt3aXRoX3NlbGludXh9IiA9ICJ5ZXMiOyB0aGVu CiAgIEFDX0NIRUNLX0xJQihbc2VsaW51eF0sIFtsZ2V0ZmlsZWNvbl0sCiAgICAgW0hBVkVf TElCU0VMSU5VWD15ZXNdLAogICAgIFtIQVZFX0xJQlNFTElOVVg9bm9dKQogICBpZiB0ZXN0 ICIkSEFWRV9MSUJTRUxJTlVYIiA9IHllczsgdGhlbgogICAgICBBQ19ERUZJTkUoW0hBVkVf TElCU0VMSU5VWF0sIFsxXSwgW0RlZmluZSB0byAxIGlmIHVzaW5nIFNFTGludXguXSkKICAg ICAgTElCU0VMSU5VWF9MSUJTPS1sc2VsaW51eAogICBmaQpmaQpBQ19TVUJTVChbTElCU0VM SU5VWF9MSUJTXSkKCkhBVkVfR05VVExTPW5vCmlmIHRlc3QgIiR7d2l0aF9nbnV0bHN9IiAh PSAibm8iIDsgdGhlbgogIEVNQUNTX0NIRUNLX01PRFVMRVMoW0xJQkdOVVRMU10sIFtnbnV0 bHMgPj0gMi4xMi4yXSwKICAgIFtIQVZFX0dOVVRMUz15ZXNdLCBbSEFWRV9HTlVUTFM9bm9d KQogIGlmIHRlc3QgIiR7SEFWRV9HTlVUTFN9IiA9ICJ5ZXMiOyB0aGVuCiAgICBBQ19ERUZJ TkUoW0hBVkVfR05VVExTXSwgWzFdLCBbRGVmaW5lIGlmIHVzaW5nIEdudVRMUy5dKQogIGZp CgogICMgV2luZG93cyBsb2FkcyBHbnVUTFMgZHluYW1pY2FsbHkKICBpZiB0ZXN0ICIke29w c3lzfSIgPSAibWluZ3czMiI7IHRoZW4KICAgIExJQkdOVVRMU19MSUJTPQogIGZpCmZpCgpB Q19TVUJTVChbTElCR05VVExTX0xJQlNdKQpBQ19TVUJTVChbTElCR05VVExTX0NGTEFHU10p CgpIQVZFX0xJQlNZU1RFTUQ9bm8KaWYgdGVzdCAiJHt3aXRoX2xpYnN5c3RlbWR9IiA9ICJ5 ZXMiIDsgdGhlbgogIGRubCBUaGlzIGNvZGUgaGFzIGJlZW4gdGVzdGVkIHdpdGggbGlic3lz dGVtZCAyMjIgYW5kIGxhdGVyLgogIGRubCBGSVhNRTogRmluZCB0aGUgZWFybGllc3QgdmVy c2lvbiBudW1iZXIgZm9yIHdoaWNoIEVtYWNzIHNob3VsZCB3b3JrLAogIGRubCBhbmQgY2hh bmdlICcyMjInIHRvIHRoYXQgbnVtYmVyLgogIEVNQUNTX0NIRUNLX01PRFVMRVMoW0xJQlNZ U1RFTURdLCBbbGlic3lzdGVtZCA+PSAyMjJdLAogICAgW0hBVkVfTElCU1lTVEVNRD15ZXNd LCBbSEFWRV9MSUJTWVNURU1EPW5vXSkKICBpZiB0ZXN0ICIke0hBVkVfTElCU1lTVEVNRH0i ID0gInllcyI7IHRoZW4KICAgIEFDX0RFRklORShbSEFWRV9MSUJTWVNURU1EXSwgWzFdLCBb RGVmaW5lIGlmIHVzaW5nIGxpYnN5c3RlbWQuXSkKICBmaQpmaQoKQUNfU1VCU1QoW0xJQlNZ U1RFTURfTElCU10pCkFDX1NVQlNUKFtMSUJTWVNURU1EX0NGTEFHU10pCgpIQVZFX0pTT049 bm8KSlNPTl9PQko9CgppZiB0ZXN0ICIke3dpdGhfanNvbn0iICE9IG5vOyB0aGVuCiAgRU1B Q1NfQ0hFQ0tfTU9EVUxFUyhbSlNPTl0sIFtqYW5zc29uID49IDIuN10sCiAgICBbSEFWRV9K U09OPXllc10sIFtIQVZFX0pTT049bm9dKQogIGlmIHRlc3QgIiR7SEFWRV9KU09OfSIgPSB5 ZXM7IHRoZW4KICAgIEFDX0RFRklORShbSEFWRV9KU09OXSwgWzFdLCBbRGVmaW5lIGlmIHVz aW5nIEphbnNzb24uXSkKICAgIEpTT05fT0JKPWpzb24ubwogIGZpCgogICMgV2luZG93cyBs b2FkcyBsaWJqYW5zc29uIGR5bmFtaWNhbGx5CiAgaWYgdGVzdCAiJHtvcHN5c30iID0gIm1p bmd3MzIiOyB0aGVuCiAgICBKU09OX0xJQlM9CiAgZmkKZmkKCkFDX1NVQlNUKFtKU09OX0xJ QlNdKQpBQ19TVUJTVChbSlNPTl9DRkxBR1NdKQpBQ19TVUJTVChbSlNPTl9PQkpdKQoKSEFW RV9UUkVFX1NJVFRFUj1ubwpUUkVFX1NJVFRFUl9PQko9Ck5FRURfRFlOTElCPW5vCgppZiB0 ZXN0ICIke3dpdGhfdHJlZV9zaXR0ZXJ9IiAhPSAibm8iOyB0aGVuCiAgIGRubCBUcmVlLXNp dHRlciAwLjIwLjIgYWRkZWQgc3VwcG9ydCB0byBjaGFuZ2UgdGhlIG1hbGxvYyBpdCB1c2Vz CiAgIGRubCBhdCBydW50aW1lLCB3ZSBuZWVkIHRoYXQgZmVhdHVyZS4gIEhvd2V2ZXIsIHRy ZWUtc2l0dGVyJ3MKICAgZG5sIE1ha2VmaWxlIGhhcyBwcm9ibGVtcywgdW50aWwgdGhhdCdz IGZpeGVkLCBhbGwgdHJlZS1zaXR0ZXIKICAgZG5sIGxpYnJhcmllcyBkaXN0cmlidXRlZCBh cmUgdmVyc2lvbmVkIDAuNi4zLiAgV2UgdHJ5IHRvCiAgIGRubCBhY2NlcHQgYSB0cmVlLXNp dHRlciBsaWJyYXJ5IHRoYXQgaGFzIGluY29ycmVjdCB2ZXJzaW9uIGFzIGxvbmcKICAgZG5s IGFzIGl0IHN1cHBvcnRzIGNoYW5naW5nIG1hbGxvYy4KICBFTUFDU19DSEVDS19NT0RVTEVT KFtUUkVFX1NJVFRFUl0sIFt0cmVlLXNpdHRlciA+PSAwLjIwLjJdLAogICAgW0hBVkVfVFJF RV9TSVRURVI9eWVzXSwgW0hBVkVfVFJFRV9TSVRURVI9bm9dKQogIGlmIHRlc3QgIiR7SEFW RV9UUkVFX1NJVFRFUn0iID0geWVzOyB0aGVuCiAgICBBQ19ERUZJTkUoSEFWRV9UUkVFX1NJ VFRFUiwgMSwgW0RlZmluZSBpZiB1c2luZyB0cmVlLXNpdHRlci5dKQogIGVsc2UKICAgIEVN QUNTX0NIRUNLX01PRFVMRVMoW1RSRUVfU0lUVEVSXSwgW3RyZWUtc2l0dGVyID49IDAuNi4z XSwKICAgICAgW0hBVkVfVFJFRV9TSVRURVI9eWVzXSwgW0hBVkVfVFJFRV9TSVRURVI9bm9d KQogICAgaWYgdGVzdCAiJHtIQVZFX1RSRUVfU0lUVEVSfSIgPSB5ZXM7IHRoZW4KICAgICAg T0xEX0NGTEFHUz0kQ0ZMQUdTCiAgICAgIE9MRF9MSUJTPSRMSUJTCiAgICAgIENGTEFHUz0i JENGTEFHUyAkVFJFRV9TSVRURVJfQ0ZMQUdTIgogICAgICBMSUJTPSIkVFJFRV9TSVRURVJf TElCUyAkTElCUyIKICAgICAgQUNfQ0hFQ0tfRlVOQ1MoW3RzX3NldF9hbGxvY2F0b3JdKQog ICAgICBDRkxBR1M9JE9MRF9DRkxBR1MKICAgICAgTElCUz0kT0xEX0xJQlMKICAgICAgaWYg dGVzdCAiJGFjX2N2X2Z1bmNfdHNfc2V0X2FsbG9jYXRvciIgPSB5ZXM7IHRoZW4KICAgICAg ICBBQ19ERUZJTkUoSEFWRV9UUkVFX1NJVFRFUiwgMSwgW0RlZmluZSBpZiB1c2luZyB0cmVl LXNpdHRlci5dKQoJTkVFRF9EWU5MSUI9eWVzCiAgICAgIGVsc2UKICAgICAgICBBQ19NU0df RVJST1IoW1RyZWUtc2l0dGVyIGxpYnJhcnkgZXhpc3RzIGJ1dCBpdHMgdmVyc2lvbiBpcyB0 b28gb2xkXSk7CiAgICAgICAgVFJFRV9TSVRURVJfQ0ZMQUdTPQogICAgICAgIFRSRUVfU0lU VEVSX0xJQlM9CiAgICAgIGZpCiAgICBmaQogIGZpCgogICMgV2luZG93cyBsb2FkcyB0cmVl LXNpdHRlciBkeW5hbWljYWxseQogIGlmIHRlc3QgIiR7b3BzeXN9IiA9ICJtaW5ndzMyIjsg dGhlbgogICAgVFJFRV9TSVRURVJfTElCUz0KICBmaQpmaQoKQUNfU1VCU1QoVFJFRV9TSVRU RVJfTElCUykKQUNfU1VCU1QoVFJFRV9TSVRURVJfQ0ZMQUdTKQoKTk9USUZZX09CSj0KTk9U SUZZX1NVTU1BUlk9bm8KCmRubCBNUyBXaW5kb3dzIG5hdGl2ZSBmaWxlIG1vbml0b3IgaXMg YXZhaWxhYmxlIGZvciBtaW5ndzMyIG9ubHkuCmNhc2UgJHdpdGhfZmlsZV9ub3RpZmljYXRp b24sJG9wc3lzIGluCiAgdzMyLGN5Z3dpbikKICAgIEFDX01TR19FUlJPUihbJy0td2l0aC1m aWxlLW5vdGlmaWNhdGlvbj13MzInIHdhcyBzcGVjaWZpZWQsIGJ1dAogICAgdGhpcyBpcyBv bmx5IHN1cHBvcnRlZCBvbiBNUy1XaW5kb3dzIG5hdGl2ZSBhbmQgTWluR1czMiBidWlsZHMu CiAgICBDb25zaWRlciB1c2luZyBnZmlsZSBpbnN0ZWFkLl0pCiAgICA7OwogIHczMiwqIHwg eWVzLG1pbmd3MzIpCiAgICBBQ19DSEVDS19IRUFERVIoW3dpbmRvd3MuaF0pCiAgICBpZiB0 ZXN0ICIkYWNfY3ZfaGVhZGVyX3dpbmRvd3NfaCIgPSB5ZXMgOyB0aGVuCiAgICAgICBBQ19E RUZJTkUoW0hBVkVfVzMyTk9USUZZXSwgWzFdLCBbRGVmaW5lIHRvIDEgdG8gdXNlIHczMm5v dGlmeS5dKQogICAgICAgTk9USUZZX09CSj13MzJub3RpZnkubwogICAgICAgTk9USUZZX1NV TU1BUlk9InllcyAodzMyKSIKICAgIGZpIDs7CmVzYWMKCmRubCBpbm90aWZ5IGlzIGF2YWls YWJsZSBvbmx5IG9uIEdOVS9MaW51eC4KY2FzZSAkd2l0aF9maWxlX25vdGlmaWNhdGlvbiwk Tk9USUZZX09CSiBpbgogIGlub3RpZnksIHwgeWVzLCkKICAgIEFDX0NIRUNLX0hFQURFUihb c3lzL2lub3RpZnkuaF0pCiAgICBpZiB0ZXN0ICIkYWNfY3ZfaGVhZGVyX3N5c19pbm90aWZ5 X2giID0geWVzIDsgdGhlbgoJQUNfQ0hFQ0tfRlVOQyhbaW5vdGlmeV9pbml0MV0pCglpZiB0 ZXN0ICIkYWNfY3ZfZnVuY19pbm90aWZ5X2luaXQxIiA9IHllczsgdGhlbgoJICBBQ19ERUZJ TkUoW0hBVkVfSU5PVElGWV0sIFsxXSwgW0RlZmluZSB0byAxIHRvIHVzZSBpbm90aWZ5Ll0p CgkgIE5PVElGWV9PQko9aW5vdGlmeS5vCgkgIE5PVElGWV9TVU1NQVJZPSJ5ZXMgLWxnbGli YyAoaW5vdGlmeSkiCiAgICAgICBmaQogICAgZmkgOzsKZXNhYwoKZG5sIGtxdWV1ZSBpcyBh dmFpbGFibGUgb24gQlNELWxpa2Ugc3lzdGVtcy4KY2FzZSAkd2l0aF9maWxlX25vdGlmaWNh dGlvbiwkTk9USUZZX09CSiBpbgogIGtxdWV1ZSwqIHwgeWVzLCkKICAgIEVNQUNTX0NIRUNL X01PRFVMRVMoW0tRVUVVRV0sIFtsaWJrcXVldWVdKQogICAgaWYgdGVzdCAiJEhBVkVfS1FV RVVFIiA9ICJ5ZXMiOyB0aGVuCiAgICAgICBBQ19ERUZJTkUoW0hBVkVfS1FVRVVFXSwgWzFd LCBbRGVmaW5lIHRvIDEgdG8gdXNlIGtxdWV1ZS5dKQogICAgICAgQ1BQRkxBR1M9IiRDUFBG TEFHUyAtSS91c3IvaW5jbHVkZS9rcXVldWUiCiAgICAgICBOT1RJRllfQ0ZMQUdTPSRLUVVF VUVfQ0ZMQUdTCiAgICAgICBOT1RJRllfTElCUz0kS1FVRVVFX0xJQlMKICAgICAgIE5PVElG WV9PQko9a3F1ZXVlLm8KICAgICAgIE5PVElGWV9TVU1NQVJZPSJ5ZXMgLWxrcXVldWUiCiAg ICBlbHNlCiAgICAgICBBQ19TRUFSQ0hfTElCUyhba3F1ZXVlXSwgW10pCiAgICAgICBpZiB0 ZXN0ICIkYWNfY3Zfc2VhcmNoX2txdWV1ZSIgIT0gbm87IHRoZW4KCSBBQ19ERUZJTkUoW0hB VkVfS1FVRVVFXSwgWzFdLCBbRGVmaW5lIHRvIDEgdG8gdXNlIGtxdWV1ZS5dKQoJIE5PVElG WV9PQko9a3F1ZXVlLm8KCSBOT1RJRllfU1VNTUFSWT0ieWVzIChrcXVldWUpIgogICAgICAg ZmkKICAgIGZpIDs7CmVzYWMKCmRubCBnX2ZpbGVfbW9uaXRvciBleGlzdHMgc2luY2UgZ2xp YiAyLjE4LiAgR19GSUxFX01PTklUT1JfRVZFTlRfTU9WRUQKZG5sIGhhcyBiZWVuIGFkZGVk IGluIGdsaWIgMi4yNC4gIEl0IGhhcyBiZWVuIHRlc3RlZCB1bmRlcgpkbmwgR05VL0xpbnV4 IG9ubHkuCmNhc2UgJHdpdGhfZmlsZV9ub3RpZmljYXRpb24sJE5PVElGWV9PQkogaW4KICBn ZmlsZSwqIHwgeWVzLCkKICAgIGlmIHRlc3QgIiR7SEFWRV9OU30iID0geWVzOyB0aGVuCiAg ICAgICBBQ19NU0dfRVJST1IoWyctLXdpdGgtZmlsZS1ub3RpZmljYXRpb249Z2ZpbGUnIGlz IG5vdCBzdXBwb3J0ZWQgaW4gTmV4dFN0ZXAgYnVpbGRzLgpDb25zaWRlciBrcXVldWUgaW5z dGVhZC5dKQogICAgZWxzZQogICAgICAgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyhbR0ZJTEVOT1RJ RlldLCBbZ2lvLTIuMCA+PSAyLjI0XSkKICAgICAgIGlmIHRlc3QgIiRIQVZFX0dGSUxFTk9U SUZZIiA9ICJ5ZXMiOyB0aGVuCgkgIEFDX0RFRklORShbSEFWRV9HRklMRU5PVElGWV0sIFsx XSwgW0RlZmluZSB0byAxIGlmIHVzaW5nIEdGaWxlLl0pCgkgIE5PVElGWV9DRkxBR1M9JEdG SUxFTk9USUZZX0NGTEFHUwoJICBOT1RJRllfTElCUz0kR0ZJTEVOT1RJRllfTElCUwoJICBO T1RJRllfT0JKPWdmaWxlbm90aWZ5Lm8KCSAgTk9USUZZX1NVTU1BUlk9InllcyAtbGdpbyAo Z2ZpbGUpIgogICAgICAgZmkKICAgIGZpIDs7CmVzYWMKCmNhc2UgJHdpdGhfZmlsZV9ub3Rp ZmljYXRpb24sJE5PVElGWV9PQkogaW4KICB5ZXMsKiB8IG5vLCogfCAqLD8qKSA7OwogICop IEFDX01TR19FUlJPUihbRmlsZSBub3RpZmljYXRpb24gJyR3aXRoX2ZpbGVfbm90aWZpY2F0 aW9uJyByZXF1ZXN0ZWQgYnV0IHJlcXVpcmVtZW50cyBub3QgZm91bmQuXSkgOzsKZXNhYwoK aWYgdGVzdCAtbiAiJE5PVElGWV9PQkoiOyB0aGVuCiAgIEFDX0RFRklORShbVVNFX0ZJTEVf Tk9USUZZXSwgWzFdLAogICAgIFtEZWZpbmUgdG8gMSBpZiB1c2luZyBmaWxlIG5vdGlmaWNh dGlvbnMuXSkKZmkKQUNfU1VCU1QoW05PVElGWV9DRkxBR1NdKQpBQ19TVUJTVChbTk9USUZZ X0xJQlNdKQpBQ19TVUJTVChbTk9USUZZX09CSl0pCgpkbmwgRG8gbm90IHB1dCB3aGl0ZXNw YWNlIGJlZm9yZSB0aGUgI2luY2x1ZGUgc3RhdGVtZW50cyBiZWxvdy4KZG5sIE9sZGVyIGNv bXBpbGVycyAoZWcgc3Vub3M0IGNjKSBjaG9rZSBvbiBpdC4KSEFWRV9YQVczRD1ubwpMVUNJ RF9MSUJXPQppZiB0ZXN0IHgiJHtVU0VfWF9UT09MS0lUfSIgPSB4bWF5YmUgfHwgdGVzdCB4 IiR7VVNFX1hfVE9PTEtJVH0iID0geExVQ0lEOyB0aGVuCiAgaWYgdGVzdCAiJHdpdGhfeGF3 M2QiICE9IG5vOyB0aGVuCiAgICBBQ19DQUNIRV9WQUwoW2VtYWNzX2N2X3hhdzNkXSwKICAg IFtBQ19MSU5LX0lGRUxTRShbQUNfTEFOR19QUk9HUkFNKFtbCiNpbmNsdWRlIDxYMTEvSW50 cmluc2ljLmg+CiNpbmNsdWRlIDxYMTEvWGF3M2QvU2ltcGxlLmg+XV0sCiAgICAgIFtbXV0p XSwKICAgICAgW0FDX0NIRUNLX0xJQihbWGF3M2RdLCBbWGF3U2Nyb2xsYmFyU2V0VGh1bWJd LAoJCSAgICBbZW1hY3NfY3ZfeGF3M2Q9eWVzXSwKCQkgICAgW2VtYWNzX2N2X3hhdzNkPW5v XSldLAogICAgICBbZW1hY3NfY3ZfeGF3M2Q9bm9dKV0pCiAgZWxzZQogICAgZW1hY3NfY3Zf eGF3M2Q9bm8KICBmaQogIGlmIHRlc3QgJGVtYWNzX2N2X3hhdzNkID0geWVzOyB0aGVuCiAg ICBBQ19NU0dfQ0hFQ0tJTkcoW2ZvciB4YXczZF0pCiAgICBBQ19NU0dfUkVTVUxUKFt5ZXM7 IHVzaW5nIEx1Y2lkIHRvb2xraXRdKQogICAgVVNFX1hfVE9PTEtJVD1MVUNJRAogICAgSEFW RV9YQVczRD15ZXMKICAgIExVQ0lEX0xJQlc9LWxYYXczZAogICAgQUNfREVGSU5FKFtIQVZF X1hBVzNEXSwgWzFdLAogICAgICAgICAgICAgIFtEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0 aGUgWGF3M2QgbGlicmFyeSAoLWxYYXczZCkuXSkKICBlbHNlCiAgICBBQ19NU0dfQ0hFQ0tJ TkcoW2ZvciB4YXczZF0pCiAgICBBQ19NU0dfUkVTVUxUKFtub10pCiAgICBBQ19NU0dfQ0hF Q0tJTkcoW2ZvciBsaWJYYXddKQogICAgQUNfQ0FDSEVfVkFMKFtlbWFjc19jdl94YXddLAog ICAgW0FDX0xJTktfSUZFTFNFKFtBQ19MQU5HX1BST0dSQU0oW1sKI2luY2x1ZGUgPFgxMS9J bnRyaW5zaWMuaD4KI2luY2x1ZGUgPFgxMS9YYXcvU2ltcGxlLmg+XV0sCiAgICAgIFtbXV0p XSwKICAgICAgW2VtYWNzX2N2X3hhdz15ZXNdLAogICAgICBbZW1hY3NfY3ZfeGF3PW5vXSld KQogICAgaWYgdGVzdCAkZW1hY3NfY3ZfeGF3ID0geWVzOyB0aGVuCiAgICAgIEFDX01TR19S RVNVTFQoW3llczsgdXNpbmcgTHVjaWQgdG9vbGtpdF0pCiAgICAgIFVTRV9YX1RPT0xLSVQ9 TFVDSUQKICAgICAgTFVDSURfTElCVz0tbFhhdwogICAgZWxpZiB0ZXN0IHgiJHtVU0VfWF9U T09MS0lUfSIgPSB4TFVDSUQ7IHRoZW4KICAgICAgQUNfTVNHX0VSUk9SKFtMdWNpZCB0b29s a2l0IHJlcXVpcmVzIFgxMS9YYXcgaW5jbHVkZSBmaWxlc10pCiAgICBlbHNlCiAgICAgIEFD X01TR19FUlJPUihbTm8gWCB0b29sa2l0IGNvdWxkIGJlIGZvdW5kLgpJZiB5b3UgYXJlIHN1 cmUgeW91IHdhbnQgRW1hY3MgY29tcGlsZWQgd2l0aG91dCBhbiBYIHRvb2xraXQsIHBhc3MK ICAtLXdpdGgteC10b29sa2l0PW5vCnRvIGNvbmZpZ3VyZS4gIE90aGVyd2lzZSwgaW5zdGFs bCB0aGUgZGV2ZWxvcG1lbnQgbGlicmFyaWVzIGZvciB0aGUgdG9vbGtpdAp0aGF0IHlvdSB3 YW50IHRvIHVzZSAoZS5nLiBHdGsrKSBhbmQgcmUtcnVuIGNvbmZpZ3VyZS5dKQogICAgZmkK ICBmaQpmaQoKWF9UT09MS0lUX1RZUEU9JFVTRV9YX1RPT0xLSVQKCkxJQlhUUjY9CkxJQlhN VT0KaWYgdGVzdCAiJHtVU0VfWF9UT09MS0lUfSIgIT0gIm5vbmUiOyB0aGVuCiAgQUNfTVNH X0NIRUNLSU5HKFtYMTEgdG9vbGtpdCB2ZXJzaW9uXSkKICBBQ19DQUNIRV9WQUwoW2VtYWNz X2N2X3gxMV90b29sa2l0X3ZlcnNpb25fNl0sCiAgW0FDX0xJTktfSUZFTFNFKFtBQ19MQU5H X1BST0dSQU0oW1sjaW5jbHVkZSA8WDExL0ludHJpbnNpYy5oPl1dLApbWyNpZiBYdFNwZWNp ZmljYXRpb25SZWxlYXNlIDwgNgpmYWlsOwojZW5kaWYKXV0pXSwgW2VtYWNzX2N2X3gxMV90 b29sa2l0X3ZlcnNpb25fNj15ZXNdLAogICAgICBbZW1hY3NfY3ZfeDExX3Rvb2xraXRfdmVy c2lvbl82PW5vXSldKQogIEhBVkVfWDExWFRSNj0kZW1hY3NfY3ZfeDExX3Rvb2xraXRfdmVy c2lvbl82CiAgaWYgdGVzdCAkZW1hY3NfY3ZfeDExX3Rvb2xraXRfdmVyc2lvbl82ID0geWVz OyB0aGVuCiAgICBBQ19NU0dfUkVTVUxUKFs2IG9yIG5ld2VyXSkKICAgIEFDX0RFRklORShb SEFWRV9YMTFYVFI2XSwgWzFdLAoJICAgICAgW0RlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRo ZSBYMTFSNiBvciBuZXdlciB2ZXJzaW9uIG9mIFh0Ll0pCiAgICBMSUJYVFI2PSItbFNNIC1s SUNFIgogICAgY2FzZSAiJG9wc3lzIiBpbgogICAgICAjIyBVc2UgbGlidy5hIGFsb25nIHdp dGggWDExUjYgWHQuCiAgICAgIHVuaXh3YXJlKSBMSUJYVFI2PSIkTElCWFRSNiAtbHciIDs7 CiAgICBlc2FjCiAgZWxzZQogICAgQUNfTVNHX1JFU1VMVChbYmVmb3JlIDZdKQogIGZpCgpk bmwgSWYgdXNpbmcgdG9vbGtpdCwgY2hlY2sgd2hldGhlciBsaWJYbXUuYSBleGlzdHMuCmRu bCB0cmFubGVAaW50ZWxsaWNvcnAuY29tIHNheXMgbGliWG11LmEgY2FuIG5lZWQgWHRNYWxs b2MgaW4gbGliWHQuYSB0byBsaW5rLgogIE9MRExJQlM9IiRMSUJTIgogIGlmIHRlc3QgeCRI QVZFX1gxMVhUUjYgPSB4eWVzOyB0aGVuCiAgICBPVEhFUkxJQlM9Jy1sWHQgLWxTTSAtbElD RScKICBlbHNlCiAgICBPVEhFUkxJQlM9Jy1sWHQnCiAgZmkKICBBQ19TRUFSQ0hfTElCUyhb WG11Q29udmVydFN0YW5kYXJkU2VsZWN0aW9uXSwgW1htdV0sIFtdLCBbXSwgWyRPVEhFUkxJ QlNdKQogIGlmIHRlc3QgIlgkTElCUyIgIT0gIlgkT0xETElCUyI7IHRoZW4KICAgIExJQlhN VT0kYWNfY3Zfc2VhcmNoX1htdUNvbnZlcnRTdGFuZGFyZFNlbGVjdGlvbgogIGZpCiAgTElC Uz0kT0xETElCUwogIGRubCBhY19jdl9zZWFyY2hfWG11Q29udmVydFN0YW5kYXJkU2VsZWN0 aW9uIGlzIGFsc28gcmVmZXJlbmNlZCBiZWxvdy4KZmkKQUNfU1VCU1QoW0xJQlhUUjZdKQpB Q19TVUJTVChbTElCWE1VXSkKCkxJQlhQPQppZiB0ZXN0ICIke1VTRV9YX1RPT0xLSVR9IiA9 ICJNT1RJRiI7IHRoZW4KICAjIE9wZW5Nb3RpZiBtYXkgYmUgaW5zdGFsbGVkIGluIHN1Y2gg YSB3YXkgb24gc29tZSBHTlUvTGludXggc3lzdGVtcy4KICBpZiB0ZXN0IC1kIC91c3IvaW5j bHVkZS9vcGVubW90aWY7IHRoZW4KICAgIENQUEZMQUdTPSItSS91c3IvaW5jbHVkZS9vcGVu bW90aWYgJENQUEZMQUdTIgogICAgZW1hY3NfY3Zfb3Blbm1vdGlmPXllcwogICAgY2FzZSAi JGNhbm9uaWNhbCIgaW4KICAgICAgeDg2XzY0LSotbGludXgtZ251KiB8IHBvd2VycGM2NC0q LWxpbnV4LWdudSogfCBzcGFyYzY0LSotbGludXgtZ251KikKICAgICAgdGVzdCAtZCAvdXNy L2xpYjY0L29wZW5tb3RpZiAmJiBMREZMQUdTPSItTC91c3IvbGliNjQvb3Blbm1vdGlmICRM REZMQUdTIgogICAgICA7OwogICAgICAqKQogICAgICB0ZXN0IC1kIC91c3IvbGliL29wZW5t b3RpZiAmJiBMREZMQUdTPSItTC91c3IvbGliL29wZW5tb3RpZiAkTERGTEFHUyIKICAgIGVz YWMKICBlbHNlCiAgICBlbWFjc19jdl9vcGVubW90aWY9bm8KICBmaQogIEFDX0NBQ0hFX0NI RUNLKFtmb3IgKE9wZW4pTW90aWYgdmVyc2lvbiAyLjFdLCBbZW1hY3NfY3ZfbW90aWZfdmVy c2lvbl8yXzFdLAogIFtBQ19DT01QSUxFX0lGRUxTRShbQUNfTEFOR19QUk9HUkFNKFtbI2lu Y2x1ZGUgPFhtL1htLmg+XV0sCiAgICBbWyNpZiBYbVZFUlNJT04gPiAyIHx8IChYbVZFUlNJ T04gPT0gMiAmJiBYbVJFVklTSU9OID49IDEpCmludCB4ID0gNTsKI2Vsc2UKTW90aWYgdmVy c2lvbiBwcmlvciB0byAyLjEuCiNlbmRpZl1dKV0sCiAgICAgW2VtYWNzX2N2X21vdGlmX3Zl cnNpb25fMl8xPXllc10sCiAgICAgW2VtYWNzX2N2X21vdGlmX3ZlcnNpb25fMl8xPW5vXSld KQogIGlmIHRlc3QgJGVtYWNzX2N2X21vdGlmX3ZlcnNpb25fMl8xID0geWVzOyB0aGVuCiAg ICBBQ19DSEVDS19MSUIoW1hwXSwgW1hwQ3JlYXRlQ29udGV4dF0sIFtMSUJYUD0tbFhwXSkK ICAgIGlmIHRlc3QgeCRlbWFjc19jdl9vcGVubW90aWYgPSB4eWVzOyB0aGVuCiAgICAgIFJF QUxfQ1BQRkxBR1M9Ii1JL3Vzci9pbmNsdWRlL29wZW5tb3RpZiAkUkVBTF9DUFBGTEFHUyIK ICAgIGZpCiAgZWxzZQogICAgIyBXZSBwdXQgdGhpcyBpbiBDRkxBR1MgdGVtcG9yYXJpbHkg dG8gcHJlY2VkZSBvdGhlciAtSSBvcHRpb25zCiAgICAjIHRoYXQgbWlnaHQgYmUgaW4gQ0ZM QUdTIHRlbXBvcmFyaWx5LgogICAgIyBXZSBwdXQgdGhpcyBpbiBDUFBGTEFHUyB3aGVyZSBp dCBwcmVjZWRlcyB0aGUgb3RoZXIgLUkgb3B0aW9ucy4KICAgIE9MRF9DUFBGTEFHUz0kQ1BQ RkxBR1MKICAgIE9MRF9DRkxBR1M9JENGTEFHUwogICAgQ1BQRkxBR1M9Ii1JL3Vzci9YMTFS Ni9MZXNzVGlmL01vdGlmMS4yL2luY2x1ZGUgJENQUEZMQUdTIgogICAgQ0ZMQUdTPSItSS91 c3IvWDExUjYvTGVzc1RpZi9Nb3RpZjEuMi9pbmNsdWRlICRDRkxBR1MiCiAgICBBQ19DQUNI RV9DSEVDSyhbZm9yIExlc3NUaWYgd2hlcmUgc29tZSBzeXN0ZW1zIHB1dCBpdF0sIFtlbWFj c19jdl9sZXNzdGlmXSwKICAgICAgW0FDX0NPTVBJTEVfSUZFTFNFKAoJIFtBQ19MQU5HX1BS T0dSQU0oCgkgICAgW1sjaW5jbHVkZSA8L3Vzci9YMTFSNi9MZXNzVGlmL01vdGlmMS4yL2lu Y2x1ZGUvWG0vWG0uaD4KCSAgICBdXSwKCSAgICBbW2ludCB4ID0gNTtdXSldLAoJIFtlbWFj c19jdl9sZXNzdGlmPXllc10sCgkgW2VtYWNzX2N2X2xlc3N0aWY9bm9dKV0pCiAgICBpZiB0 ZXN0ICRlbWFjc19jdl9sZXNzdGlmID0geWVzOyB0aGVuCiAgICAgICMgTWFrZSBzdXJlIHRo aXMgLUkgb3B0aW9uIHJlbWFpbnMgaW4gQ1BQRkxBR1MgYWZ0ZXIgaXQgaXMgc2V0CiAgICAg ICMgYmFjayB0byBSRUFMX0NQUEZMQUdTLgogICAgICAjIFRoZXJlIGlzIG5vIG5lZWQgdG8g Y2hhbmdlIFJFQUxfQ0ZMQUdTLCBiZWNhdXNlIFJFQUxfQ0ZMQUdTIGRvZXMgbm90CiAgICAg ICMgaGF2ZSB0aG9zZSBvdGhlciAtSSBvcHRpb25zIGFueXdheS4gIFVsdGltYXRlbHksIGhh dmluZyB0aGlzCiAgICAgICMgZGlyZWN0b3J5IHVsdGltYXRlbHkgaW4gQ1BQRkxBR1Mgd2ls bCBiZSBlbm91Z2guCiAgICAgIFJFQUxfQ1BQRkxBR1M9Ii1JL3Vzci9YMTFSNi9MZXNzVGlm L01vdGlmMS4yL2luY2x1ZGUgJFJFQUxfQ1BQRkxBR1MiCiAgICAgIExERkxBR1M9Ii1ML3Vz ci9YMTFSNi9MZXNzVGlmL01vdGlmMS4yL2xpYiAkTERGTEFHUyIKICAgIGVsc2UKICAgICAg Q0ZMQUdTPSRPTERfQ0ZMQUdTCiAgICAgIENQUEZMQUdTPSRPTERfQ1BQRkxBR1MKICAgIGZp CiAgZmkKICBBQ19DSEVDS19IRUFERVIoW1htL0J1bGxldGluQi5oXSwgW10sCiAgICBbQUNf TVNHX0VSUk9SKFtNb3RpZiB0b29sa2l0IHJlcXVlc3RlZCBidXQgcmVxdWlyZW1lbnRzIG5v dCBmb3VuZC5dKV0pCmZpCgpkbmwgVXNlIHRvb2xraXQgc2Nyb2xsIGJhcnMgaWYgY29uZmln dXJlZCBmb3IgR1RLIG9yIFggdG9vbGtpdCBhbmQgZWl0aGVyCmRubCB1c2luZyBNb3RpZiBv ciBYYXczZCBpcyBhdmFpbGFibGUsIGFuZCB1bmxlc3MKZG5sIC0td2l0aC10b29sa2l0LXNj cm9sbC1iYXJzPW5vIHdhcyBzcGVjaWZpZWQuCgpBSF9URU1QTEFURShbVVNFX1RPT0xLSVRf U0NST0xMX0JBUlNdLAoJICAgIFtEZWZpbmUgdG8gMSBpZiB3ZSBzaG91bGQgdXNlIHRvb2xr aXQgc2Nyb2xsIGJhcnMuXSlkbmwKVVNFX1RPT0xLSVRfU0NST0xMX0JBUlM9bm8KaWYgdGVz dCAiJHt3aXRoX3Rvb2xraXRfc2Nyb2xsX2JhcnN9IiAhPSAibm8iOyB0aGVuCiAgaWYgdGVz dCAiJHtVU0VfWF9UT09MS0lUfSIgIT0gIm5vbmUiOyB0aGVuCiAgICBpZiB0ZXN0ICIke1VT RV9YX1RPT0xLSVR9IiA9ICJNT1RJRiI7IHRoZW4KICAgICAgQUNfREVGSU5FKFtVU0VfVE9P TEtJVF9TQ1JPTExfQkFSU10pCiAgICAgIEhBVkVfWEFXM0Q9bm8KICAgICAgVVNFX1RPT0xL SVRfU0NST0xMX0JBUlM9eWVzCiAgICBlbGlmIHRlc3QgIiR7SEFWRV9YQVczRH0iID0gInll cyIgfHwgdGVzdCAiJHtVU0VfWF9UT09MS0lUfSIgPSAiTFVDSUQiOyB0aGVuCiAgICAgIEFD X0RFRklORShbVVNFX1RPT0xLSVRfU0NST0xMX0JBUlNdKQogICAgICBVU0VfVE9PTEtJVF9T Q1JPTExfQkFSUz15ZXMKICAgIGZpCiAgZWxpZiB0ZXN0ICIke0hBVkVfR1RLfSIgPSAieWVz IjsgdGhlbgogICAgQUNfREVGSU5FKFtVU0VfVE9PTEtJVF9TQ1JPTExfQkFSU10pCiAgICBV U0VfVE9PTEtJVF9TQ1JPTExfQkFSUz15ZXMKICBlbGlmIHRlc3QgIiR7SEFWRV9OU30iID0g InllcyI7IHRoZW4KICAgIEFDX0RFRklORShbVVNFX1RPT0xLSVRfU0NST0xMX0JBUlNdKQog ICAgVVNFX1RPT0xLSVRfU0NST0xMX0JBUlM9eWVzCiAgZWxpZiB0ZXN0ICIke0hBVkVfVzMy fSIgPSAieWVzIjsgdGhlbgogICAgQUNfREVGSU5FKFtVU0VfVE9PTEtJVF9TQ1JPTExfQkFS U10pCiAgICBVU0VfVE9PTEtJVF9TQ1JPTExfQkFSUz15ZXMKICBlbGlmIHRlc3QgIiR7SEFW RV9CRV9BUFB9IiA9ICJ5ZXMiOyB0aGVuCiAgICBBQ19ERUZJTkUoW1VTRV9UT09MS0lUX1ND Uk9MTF9CQVJTXSkKICAgIFVTRV9UT09MS0lUX1NDUk9MTF9CQVJTPXllcwogIGZpCmVsaWYg dGVzdCAiJHt3aW5kb3dfc3lzdGVtfSIgIT0gIngxMSIgJiYgdGVzdCAiJHt3aW5kb3dfc3lz dGVtfSIgIT0gIm5vbmUiOyB0aGVuCiAgQUNfTVNHX0VSUk9SKFtOb24tdG9vbGtpdCBzY3Jv bGwgYmFycyBhcmUgbm90IGltcGxlbWVudGVkIGZvciB5b3VyIHN5c3RlbV0pCmZpCgpkbmwg U2VlIGlmIFhJTSBpcyBhdmFpbGFibGUuCkFDX0NPTVBJTEVfSUZFTFNFKFtBQ19MQU5HX1BS T0dSQU0oW1sKCSAgI2luY2x1ZGUgPFgxMS9YbGliLmg+CgkgICNpbmNsdWRlIDxYMTEvWHJl c291cmNlLmg+XV0sCgkgW1tYSU1Qcm9jICBjYWxsYmFjaztdXSldLAoJIFtIQVZFX1hJTT15 ZXMKCSBBQ19ERUZJTkUoW0hBVkVfWElNXSwgWzFdLCBbRGVmaW5lIHRvIDEgaWYgWElNIGlz IGF2YWlsYWJsZV0pXSwKCSBbSEFWRV9YSU09bm9dKQoKZG5sIE5vdGUgdGhpcyBpcyBub24t c3RhbmRhcmQuICAtLXdpdGgteGltIGRvZXMgbm90IGNvbnRyb2wgd2hldGhlcgpkbmwgWElN IHN1cHBvcnQgaXMgY29tcGlsZWQgaW4sIGl0IG9ubHkgYWZmZWN0cyB0aGUgcnVudGltZSBk ZWZhdWx0IG9mCmRubCB1c2VfeGltIGluIHh0ZXJtLmMuCmlmIHRlc3QgIiR7d2l0aF94aW19 IiAhPSAibm8iOyB0aGVuCiAgQUNfREVGSU5FKFtVU0VfWElNXSwgWzFdLAoJICAgIFtEZWZp bmUgdG8gMSB0byBkZWZhdWx0IHJ1bnRpbWUgdXNlIG9mIFhJTSB0byBvbi5dKQpmaQoKIyBD aGVjayBmb3IgWFJlbmRlcgpIQVZFX1hSRU5ERVI9bm8KaWYgdGVzdCAiJHtIQVZFX1gxMX0i ID0gInllcyI7IHRoZW4KICBBQ19DT01QSUxFX0lGRUxTRSgKICAgIFtBQ19MQU5HX1BST0dS QU0oCiAgICAgICBbWyNpbmNsdWRlIDxYMTEvSW50cmluc2ljLmg+CgkgI2luY2x1ZGUgPFgx MS9leHRlbnNpb25zL1hyZW5kZXIuaD4KICAgICAgIF1dLAogICAgICAgW1tyZXR1cm4gIVhS ZW5kZXJRdWVyeUV4dGVuc2lvbjtdXSldLAogICAgW0FDX0NIRUNLX0xJQihbWHJlbmRlcl0s IFtYUmVuZGVyUXVlcnlFeHRlbnNpb25dLCBbSEFWRV9YUkVOREVSPXllc10pXSkKICBpZiB0 ZXN0ICRIQVZFX1hSRU5ERVIgPSB5ZXM7IHRoZW4KICAgIFhSRU5ERVJfTElCUz0iLWxYcmVu ZGVyIgogICAgQUNfU1VCU1QoW1hSRU5ERVJfTElCU10pCiAgICBBQ19ERUZJTkUoW0hBVkVf WFJFTkRFUl0sIFsxXSwgW0RlZmluZSB0byAxIGlmIFhSZW5kZXIgaXMgYXZhaWxhYmxlLl0p CiAgZmkKZmkKCkhBVkVfQ0FJUk89bm8KaWYgdGVzdCAiJHtIQVZFX1gxMX0iID0gInllcyI7 IHRoZW4KICBpZiB0ZXN0ICIke3dpdGhfY2Fpcm99IiAhPSAibm8iOyB0aGVuCiAgICBDQUlS T19SRVFVSVJFRD0xLjguMAogICAgQ0FJUk9fTU9EVUxFPSJjYWlybyA+PSAkQ0FJUk9fUkVR VUlSRUQiCiAgICBFTUFDU19DSEVDS19NT0RVTEVTKFtDQUlST10sIFskQ0FJUk9fTU9EVUxF XSkKICAgIGlmIHRlc3QgJEhBVkVfQ0FJUk8gPSB5ZXM7IHRoZW4KICAgICAgQ0FJUk9fWENC X01PRFVMRT0iY2Fpcm8teGNiID49ICRDQUlST19SRVFVSVJFRCIKICAgICAgRU1BQ1NfQ0hF Q0tfTU9EVUxFUyhbQ0FJUk9fWENCXSwgWyRDQUlST19YQ0JfTU9EVUxFXSkKICAgICAgaWYg dGVzdCAkSEFWRV9DQUlST19YQ0IgPSB5ZXM7IHRoZW4KCUNBSVJPX0NGTEFHUz0iJENBSVJP X0NGTEFHUyAkQ0FJUk9fWENCX0NGTEFHUyIKCUNBSVJPX0xJQlM9IiRDQUlST19MSUJTICRD QUlST19YQ0JfTElCUyIKCUFDX0RFRklORShbVVNFX0NBSVJPX1hDQl0sIFsxXSwKCSAgW0Rl ZmluZSB0byAxIGlmIGNhaXJvIFhDQiBzdXJmYWNlcyBhcmUgYXZhaWxhYmxlLl0pCiAgICAg IGZpCiAgICAgIEFDX0RFRklORShbVVNFX0NBSVJPXSwgWzFdLCBbRGVmaW5lIHRvIDEgaWYg dXNpbmcgY2Fpcm8uXSkKICAgICAgQ0ZMQUdTPSIkQ0ZMQUdTICRDQUlST19DRkxBR1MiCiAg ICAgIExJQlM9IiRMSUJTICRDQUlST19MSUJTIgogICAgICBBQ19TVUJTVChbQ0FJUk9fQ0ZM QUdTXSkKICAgICAgQUNfU1VCU1QoW0NBSVJPX0xJQlNdKQogICAgZWxzZQogICAgICBBQ19N U0dfV0FSTihbY2Fpcm8gcmVxdWVzdGVkIGJ1dCBub3QgZm91bmQuXSkKICAgIGZpCiAgZmkK ZmkKCmRubCBFbmFibGUgeHdpZGdldHMgaWYgR1RLMyBhbmQgV2ViS2l0R1RLKyBhcmUgYXZh aWxhYmxlLgpkbmwgRW5hYmxlIHh3aWRnZXRzIGlmIG1hY09TIENvY29hIGFuZCBXZWJLaXQg ZnJhbWV3b3JrIGFyZSBhdmFpbGFibGUuCkhBVkVfWFdJREdFVFM9bm8KWFdJREdFVFNfT0JK PQppZiB0ZXN0ICIkd2l0aF94d2lkZ2V0cyIgIT0gIm5vIjsgdGhlbgogIGlmIHRlc3QgIiRV U0VfR1RLX1RPT0xLSVQiID0gIkdUSzMiICYmIHRlc3QgIiR3aW5kb3dfc3lzdGVtIiAhPSAi bm9uZSI7IHRoZW4KICAgIFdFQktJVF9SRVFVSVJFRD0yLjEyCiAgICBXRUJLSVRfTU9EVUxF Uz0id2Via2l0Mmd0ay00LjEgPj0gJFdFQktJVF9SRVFVSVJFRCIKICAgIEVNQUNTX0NIRUNL X01PRFVMRVMoW1dFQktJVF0sIFskV0VCS0lUX01PRFVMRVNdKQogICAgaWYgdGVzdCAiJEhB VkVfV0VCS0lUIiA9ICJubyI7IHRoZW4KICAgICAgV0VCS0lUX01PRFVMRVM9IndlYmtpdDJn dGstNC4wID49ICRXRUJLSVRfUkVRVUlSRUQiCiAgICAgIEVNQUNTX0NIRUNLX01PRFVMRVMo W1dFQktJVF0sIFskV0VCS0lUX01PRFVMRVNdKQogICAgZmkKICAgIEhBVkVfWFdJREdFVFM9 JEhBVkVfV0VCS0lUCiAgICBYV0lER0VUU19PQko9Inh3aWRnZXQubyIKICAgIGlmIHRlc3Qg IiRIQVZFX1hfV0lORE9XUyIgPSAieWVzIiAmJiB0ZXN0ICIke3dpdGhfY2Fpcm99IiA9ICJu byI7IHRoZW4KICAgICAgQ0FJUk9fWExJQl9NT0RVTEVTPSJjYWlybyA+PSAxLjguMCBjYWly by14bGliID49IDEuOC4wIgogICAgICBFTUFDU19DSEVDS19NT0RVTEVTKFtDQUlST19YTElC XSwgWyRDQUlST19YTElCX01PRFVMRVNdKQogICAgICBpZiB0ZXN0ICRIQVZFX0NBSVJPX1hM SUIgPSAieWVzIjsgdGhlbgogICAgICAgIENBSVJPX0NGTEFHUz0iJENBSVJPX1hMSUJfQ0ZM QUdTIgoJQ0FJUk9fTElCUz0iJENBSVJPX1hMSUJfTElCUyIKCUFDX1NVQlNUKFtDQUlST19D RkxBR1NdKQoJQUNfU1VCU1QoW0NBSVJPX0xJQlNdKQogICAgICBlbHNlCiAgICAgICAgQUNf TVNHX0VSUk9SKFt4d2lkZ2V0cyByZXF1ZXN0ZWQsIGJ1dCBhIHN1aXRhYmxlIGNhaXJvIGlu c3RhbGxhdGlvbiB3YXNuJ3QgZm91bmRdKQogICAgICBmaQogICAgZmkKICBlbGlmIHRlc3Qg IiR7TlNfSU1QTF9DT0NPQX0iID0gInllcyI7IHRoZW4KICAgIGRubCBGSVhNRTogQ2hlY2sg ZnJhbWV3b3JrIFdlYktpdDIKICAgIGRubCBXRUJLSVRfUkVRVUlSRUQ9TS5tLnAKICAgIFdF QktJVF9MSUJTPSItV2wsLWZyYW1ld29yayAtV2wsV2ViS2l0IgogICAgV0VCS0lUX0NGTEFH Uz0iLUkvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9XZWJLaXQuZnJhbWV3b3JrL0hlYWRl cnMiCiAgICBIQVZFX1dFQktJVD0ieWVzIgogICAgSEFWRV9YV0lER0VUUz0kSEFWRV9XRUJL SVQKICAgIFhXSURHRVRTX09CSj0ieHdpZGdldC5vIgogICAgTlNfT0JKQ19PQko9IiROU19P QkpDX09CSiBuc3h3aWRnZXQubyIKICAgIGRubCBVcGRhdGUgTlNfT0JKQ19PQkogd2l0aCBh ZGRlZCBuc3h3aWRnZXQubwogICAgQUNfU1VCU1QoW05TX09CSkNfT0JKXSkKICBlbHNlCiAg ICBBQ19NU0dfRVJST1IoW3h3aWRnZXRzIHJlcXVlc3RlZCwgaXQgcmVxdWlyZXMgR1RLMyBh cyBYIHdpbmRvdyB0b29sa2l0IG9yIG1hY09TIENvY29hIGFzIHdpbmRvdyBzeXN0ZW0uXSkK ICBmaQoKICB0ZXN0ICRIQVZFX1hXSURHRVRTID0geWVzIHx8CiAgICBBQ19NU0dfRVJST1Io W3h3aWRnZXRzIHJlcXVlc3RlZCBidXQgV2ViS2l0R1RLKyBvciBXZWJLaXQgZnJhbWV3b3Jr IG5vdCBmb3VuZC5dKQoKICBBQ19ERUZJTkUoW0hBVkVfWFdJREdFVFNdLCBbMV0sIFtEZWZp bmUgdG8gMSBpZiB5b3UgaGF2ZSB4d2lkZ2V0cyBzdXBwb3J0Ll0pCmZpCkFDX1NVQlNUKFtY V0lER0VUU19PQkpdKQoKaWYgdGVzdCAiJHdpbmRvd19zeXN0ZW0iID0gInBndGsiOyB0aGVu CiAgQ0FJUk9fUkVRVUlSRUQ9MS4xMi4wCiAgQ0FJUk9fTU9EVUxFPSJjYWlybyA+PSAkQ0FJ Uk9fUkVRVUlSRUQiCiAgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyhbQ0FJUk9dLCBbJENBSVJPX01P RFVMRV0pCiAgaWYgdGVzdCAkSEFWRV9DQUlSTyA9IHllczsgdGhlbgogICAgQUNfREVGSU5F KFtVU0VfQ0FJUk9dLCBbMV0sIFtEZWZpbmUgdG8gMSBpZiB1c2luZyBjYWlyby5dKQogIGVs c2UKICAgIEFDX01TR19FUlJPUihbY2Fpcm8gcmVxdWlyZWQgYnV0IG5vdCBmb3VuZC5dKQog IGZpCgogIENGTEFHUz0iJENGTEFHUyAkQ0FJUk9fQ0ZMQUdTIgogIExJQlM9IiRMSUJTICRD QUlST19MSUJTIgogIEFDX1NVQlNUKFtDQUlST19DRkxBR1NdKQogIEFDX1NVQlNUKFtDQUlS T19MSUJTXSkKZmkKCmlmIHRlc3QgIiR7SEFWRV9CRV9BUFB9IiA9ICJ5ZXMiOyB0aGVuCiAg aWYgdGVzdCAiJHt3aXRoX2JlX2NhaXJvfSIgIT0gIm5vIjsgdGhlbgogICAgQ0FJUk9fUkVR VUlSRUQ9MS44LjAKICAgIENBSVJPX01PRFVMRT0iY2Fpcm8gPj0gJENBSVJPX1JFUVVJUkVE IgogICAgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyhbQ0FJUk9dLCBbJENBSVJPX01PRFVMRV0pCiAg ICBpZiB0ZXN0ICRIQVZFX0NBSVJPID0geWVzOyB0aGVuCiAgICAgIEFDX0RFRklORShbVVNF X0JFX0NBSVJPXSwgWzFdLCBbRGVmaW5lIHRvIDEgaWYgdXNpbmcgY2Fpcm8gb24gSGFpa3Uu XSkKICAgICAgQ0ZMQUdTPSIkQ0ZMQUdTICRDQUlST19DRkxBR1MiCiAgICAgIExJQlM9IiRM SUJTICRDQUlST19MSUJTIgogICAgICBBQ19TVUJTVChbQ0FJUk9fQ0ZMQUdTXSkKICAgICAg QUNfU1VCU1QoW0NBSVJPX0xJQlNdKQogICAgZWxzZQogICAgICBBQ19NU0dfV0FSTihbY2Fp cm8gcmVxdWVzdGVkIGJ1dCBub3QgZm91bmQuXSkKICAgIGZpCiAgZmkKZmkKCiMjIyBTdGFy dCBvZiBmb250LWJhY2tlbmQgKHVuZGVyIGFueSBwbGF0Zm9ybSkgc2VjdGlvbi4KIyAobm90 aGluZyBoZXJlIHlldCAtLSB0aGlzIGlzIGEgcGxhY2Vob2xkZXIpCiMjIyBFbmQgb2YgZm9u dC1iYWNrZW5kICh1bmRlciBhbnkgcGxhdGZvcm0pIHNlY3Rpb24uCgojIyMgU3RhcnQgb2Yg Zm9udC1iYWNrZW5kICh1bmRlciBYMTEpIHNlY3Rpb24uCmlmIHRlc3QgIiR7SEFWRV9YMTF9 IiA9ICJ5ZXMiOyB0aGVuCiAgaWYgdGVzdCAkSEFWRV9DQUlSTyA9IHllczsgdGhlbgogICAg ZG5sIFN0cmljdCBsaW5rZXJzIGZhaWwgd2l0aAogICAgZG5sIGZ0Zm9udC5vOiB1bmRlZmlu ZWQgcmVmZXJlbmNlIHRvIHN5bWJvbCAnRlRfTmV3X0ZhY2UnCiAgICBkbmwgaWYgLWxmcmVl dHlwZSBpcyBub3Qgc3BlY2lmaWVkLgogICAgZG5sIFRoZSBmb2xsb3dpbmcgaXMgbmVlZGVk IHRvIHNldCBGUkVFVFlQRV9MSUJTLgogICAgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyhbRlJFRVRZ UEVdLCBbZnJlZXR5cGUyXSkKCiAgICB0ZXN0ICIkSEFWRV9GUkVFVFlQRSIgPSAibm8iICYm IEFDX01TR19FUlJPUihbY2Fpcm8gcmVxdWlyZXMgbGliZnJlZXR5cGVdKQoKICAgIEVNQUNT X0NIRUNLX01PRFVMRVMoW0ZPTlRDT05GSUddLCBbZm9udGNvbmZpZyA+PSAyLjIuMF0pCgog ICAgdGVzdCAiJEhBVkVfRk9OVENPTkZJRyIgPSAibm8iICYmCiAgICAgIEFDX01TR19FUlJP UihbY2Fpcm8gcmVxdWlyZXMgbGliZm9udGNvbmZpZ10pCiAgICBkbmwgRm9yIHRoZSAiRG9l cyBFbWFjcyB1c2UiIG1lc3NhZ2UgYXQgdGhlIGVuZC4KICAgIEhBVkVfWEZUPW5vCiAgZWxz ZQogICAgIyMgVXNlIC1sWGZ0IGlmIGF2YWlsYWJsZSwgdW5sZXNzICctLXdpdGgteGZ0PW5v Jy4KICAgIEhBVkVfWEZUPW1heWJlCiAgICBpZiB0ZXN0ICJ4JHt3aXRoX3h9IiA9ICJ4bm8i OyB0aGVuCiAgICAgIHdpdGhfeGZ0PSJubyI7CiAgICBmaQoKICAgIGlmIHRlc3QgIiR3aXRo X3hmdCIgIT0gbm87IHRoZW4KICAgICAgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyhbRk9OVENPTkZJ R10sIFtmb250Y29uZmlnID49IDIuMi4wXSkKICAgICAgd2l0aF94ZnQ9JEhBVkVfRk9OVENP TkZJRwogICAgZmkKCiAgICBpZiB0ZXN0ICJ4JHt3aXRoX3hmdH0iICE9ICJ4bm8iOyB0aGVu CgogICAgICBFTUFDU19DSEVDS19NT0RVTEVTKFtYRlRdLCBbeGZ0ID49IDAuMTMuMF0sIFtd LCBbSEFWRV9YRlQ9bm9dKQogICAgICAjIyBCZWNhdXNlIHh0ZXJtLmMgdXNlcyBYUmVuZGVy UXVlcnlFeHRlbnNpb24gd2hlbiBYRlQgaXMKICAgICAgIyMgZW5hYmxlZCwgd2UgYWxzbyBu ZWVkIHRvIGxpbmsgdG8gLWxYcmVuZGVyLgogICAgICBpZiB0ZXN0ICIkSEFWRV9YRlQiICE9 IG5vICYmIHRlc3QgIiRIQVZFX1hSRU5ERVIiICE9IG5vOyB0aGVuCglPTERfQ1BQRkxBR1M9 IiRDUFBGTEFHUyIKCU9MRF9DRkxBR1M9IiRDRkxBR1MiCglPTERfTElCUz0iJExJQlMiCglD UFBGTEFHUz0iJENQUEZMQUdTICRYRlRfQ0ZMQUdTIgoJQ0ZMQUdTPSIkQ0ZMQUdTICRYRlRf Q0ZMQUdTIgoJTElCUz0iJFhGVF9MSUJTICRMSUJTIgoJQUNfQ0hFQ0tfSEVBREVSKFtYMTEv WGZ0L1hmdC5oXSwKCSAgW0FDX0NIRUNLX0xJQihbWGZ0XSwgW1hmdEZvbnRPcGVuXSwgW0hB VkVfWEZUPXllc10sCgkgICAgIFtdLCBbJFhGVF9MSUJTXSldLAoJICBbXSwKICAgICAgICAg IFtbI2luY2x1ZGUgPFgxMS9YLmg+XV0pCgoJaWYgdGVzdCAiJHtIQVZFX1hGVH0iID0gInll cyI7IHRoZW4KCSAgQUNfREVGSU5FKFtIQVZFX1hGVF0sIFsxXSwgW0RlZmluZSB0byAxIGlm IHlvdSBoYXZlIHRoZSBYZnQgbGlicmFyeS5dKQoJICAgIEFDX1NVQlNUKFtYRlRfTElCU10p CgkgIENfU1dJVENIX1hfU0lURT0iJENfU1dJVENIX1hfU0lURSAkWEZUX0NGTEFHUyIKCWZp ICAgICAgICAgICAgICAgICAgICAgICAgIyAiJHtIQVZFX1hGVH0iID0gInllcyIKCUNQUEZM QUdTPSRPTERfQ1BQRkxBR1MKCUNGTEFHUz0kT0xEX0NGTEFHUwoJTElCUz0kT0xEX0xJQlMK ICAgICAgZWxzZQogICAgICAjIE1ha2Ugc3VyZSBYRlQgaXMgZGlzYWJsZWQgaWYgd2UgZm91 bmQgWEZUIGJ1dCBub3QgWFJlbmRlcgoJSEFWRV9YRlQ9bm8KICAgICAgZmkgICAgICAgICAg ICAgICAgICAgICAgICAgICMgIiRIQVZFX1hGVCIgIT0gbm8KICAgIGZpICAgICAgICAgICAg ICAgICAgICAgICAgICAgICMgIngke3dpdGhfeGZ0fSIgIT0gInhubyIKCiAgICBpZiB0ZXN0 ICIkSEFWRV9YRlQiICE9ICJ5ZXMiOyB0aGVuCiAgICAgICBkbmwgRm9yIHRoZSAiRG9lcyBF bWFjcyB1c2UiIG1lc3NhZ2UgYXQgdGhlIGVuZC4KICAgICAgIEhBVkVfWEZUPW5vCiAgICAg ICBIQVZFX0ZSRUVUWVBFPW5vCiAgICBlbHNlCiAgICAgICBkbmwgU3RyaWN0IGxpbmtlcnMg ZmFpbCB3aXRoCiAgICAgICBkbmwgZnRmb250Lm86IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8g c3ltYm9sICdGVF9OZXdfRmFjZScKICAgICAgIGRubCBpZiAtbGZyZWV0eXBlIGlzIG5vdCBz cGVjaWZpZWQuCiAgICAgICBkbmwgVGhlIGZvbGxvd2luZyBpcyBuZWVkZWQgdG8gc2V0IEZS RUVUWVBFX0xJQlMuCiAgICAgICBFTUFDU19DSEVDS19NT0RVTEVTKFtGUkVFVFlQRV0sIFtm cmVldHlwZTJdKQoKICAgICAgIHRlc3QgIiRIQVZFX0ZSRUVUWVBFIiA9ICJubyIgJiYKCSBB Q19NU0dfRVJST1IoW2xpYnhmdCByZXF1aXJlcyBsaWJmcmVldHlwZV0pCiAgICBmaQogIGZp CQkJCSAgIyAkSEFWRV9DQUlSTyAhPSB5ZXMKCiAgSEFWRV9MSUJPVEY9bm8KICBpZiB0ZXN0 ICIke0hBVkVfRlJFRVRZUEV9IiA9ICJ5ZXMiOyB0aGVuCiAgICBBQ19ERUZJTkUoW0hBVkVf RlJFRVRZUEVdLCBbMV0sCgkgICAgICBbRGVmaW5lIHRvIDEgaWYgdXNpbmcgdGhlIGZyZWV0 eXBlIGFuZCBmb250Y29uZmlnIGxpYnJhcmllcy5dKQogICAgT0xEX0NGTEFHUz0kQ0ZMQUdT CiAgICBPTERfTElCUz0kTElCUwogICAgQ0ZMQUdTPSIkQ0ZMQUdTICRGUkVFVFlQRV9DRkxB R1MiCiAgICBMSUJTPSIkRlJFRVRZUEVfTElCUyAkTElCUyIKICAgIEFDX0NIRUNLX0ZVTkNT KFtGVF9GYWNlX0dldENoYXJWYXJpYW50SW5kZXhdKQogICAgQ0ZMQUdTPSRPTERfQ0ZMQUdT CiAgICBMSUJTPSRPTERfTElCUwogICAgaWYgdGVzdCAiJHt3aXRoX2xpYm90Zn0iICE9ICJu byI7IHRoZW4KICAgICAgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyhbTElCT1RGXSwgW2xpYm90Zl0p CiAgICAgIGlmIHRlc3QgIiRIQVZFX0xJQk9URiIgPSAieWVzIjsgdGhlbgoJQUNfREVGSU5F KFtIQVZFX0xJQk9URl0sIFsxXSwgW0RlZmluZSB0byAxIGlmIHVzaW5nIGxpYm90Zi5dKQoJ QUNfQ0hFQ0tfTElCKFtvdGZdLCBbT1RGX2dldF92YXJpYXRpb25fZ2x5cGhzXSwKCQkgICAg IFtIQVZFX09URl9HRVRfVkFSSUFUSU9OX0dMWVBIUz15ZXNdLAoJCSAgICAgW0hBVkVfT1RG X0dFVF9WQVJJQVRJT05fR0xZUEhTPW5vXSkKCWlmIHRlc3QgIiR7SEFWRV9PVEZfR0VUX1ZB UklBVElPTl9HTFlQSFN9IiA9ICJ5ZXMiOyB0aGVuCgkgIEFDX0RFRklORShbSEFWRV9PVEZf R0VUX1ZBUklBVElPTl9HTFlQSFNdLCBbMV0sCgkJICAgIFtEZWZpbmUgdG8gMSBpZiBsaWJv dGYgaGFzIE9URl9nZXRfdmFyaWF0aW9uX2dseXBocy5dKQoJZmkKCWlmICEgJFBLR19DT05G SUcgLS1hdGxlYXN0LXZlcnNpb249MC45LjE2IGxpYm90ZjsgdGhlbgoJICBBQ19ERUZJTkUo W0hBVkVfT1RGX0tBTk5BREFfQlVHXSwgWzFdLApbRGVmaW5lIHRvIDEgaWYgbGlib3RmIGlz IGFmZmVjdGVkIGJ5IGh0dHBzOi8vZGViYnVncy5nbnUub3JnLzI4MTEwLl0pCglmaQogICAg ICBmaQogICAgZmkKICBkbmwgRklYTUUgc2hvdWxkIHRoZXJlIGJlIGFuIGVycm9yIGlmIEhB VkVfRlJFRVRZUEUgIT0geWVzPwogIGRubCBEb2VzIHRoZSBuZXcgZm9udCBiYWNrZW5kIHJl cXVpcmUgaXQsIG9yIGNhbiBpdCB3b3JrIHdpdGhvdXQgaXQ/CiAgZmkKCiAgSEFWRV9NMTdO X0ZMVD1ubwogIGlmIHRlc3QgIiR7SEFWRV9MSUJPVEZ9IiA9IHllczsgdGhlbgogICAgaWYg dGVzdCAiJHt3aXRoX20xN25fZmx0fSIgIT0gIm5vIjsgdGhlbgogICAgICBFTUFDU19DSEVD S19NT0RVTEVTKFtNMTdOX0ZMVF0sIFttMTduLWZsdF0pCiAgICAgIGlmIHRlc3QgIiRIQVZF X00xN05fRkxUIiA9ICJ5ZXMiOyB0aGVuCglBQ19ERUZJTkUoW0hBVkVfTTE3Tl9GTFRdLCBb MV0sIFtEZWZpbmUgdG8gMSBpZiB1c2luZyBsaWJtMTduLWZsdC5dKQogICAgICBmaQogICAg ZmkKICBmaQplbHNlICMgIiR7SEFWRV9YMTF9IiAhPSAieWVzIgogIGlmIHRlc3QgJHdpbmRv d19zeXN0ZW0gPSBwZ3RrOyB0aGVuCiAgICBFTUFDU19DSEVDS19NT0RVTEVTKFtGT05UQ09O RklHXSwgW2ZvbnRjb25maWcgPj0gMi4yLjBdKQogICAgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyhb RlJFRVRZUEVdLCBbZnJlZXR5cGUyXSkKICAgIGlmIHRlc3QgIiRIQVZFX0ZPTlRDT05GSUci ICE9IHllcyAtbyAiJEhBVkVfRlJFRVRZUEUiICE9IHllczsgdGhlbgogICAgICBBQ19NU0df RVJST1IoW2ZvbnRjb25maWcgYW5kIGZyZWV0eXBlIGlzIHJlcXVpcmVkLl0pCiAgICBmaQog ICAgSEFWRV9MSUJPVEY9bm8KICAgIEFDX0RFRklORShbSEFWRV9GUkVFVFlQRV0sIFsxXSwK CSAgICAgIFtEZWZpbmUgdG8gMSBpZiB1c2luZyB0aGUgZnJlZXR5cGUgYW5kIGZvbnRjb25m aWcgbGlicmFyaWVzLl0pCiAgICBpZiB0ZXN0ICIke3dpdGhfbGlib3RmfSIgIT0gIm5vIjsg dGhlbgogICAgICBFTUFDU19DSEVDS19NT0RVTEVTKFtMSUJPVEZdLCBbbGlib3RmXSkKICAg ICAgaWYgdGVzdCAiJEhBVkVfTElCT1RGIiA9ICJ5ZXMiOyB0aGVuCglBQ19ERUZJTkUoW0hB VkVfTElCT1RGXSwgWzFdLCBbRGVmaW5lIHRvIDEgaWYgdXNpbmcgbGlib3RmLl0pCglBQ19D SEVDS19MSUIoW290Zl0sIFtPVEZfZ2V0X3ZhcmlhdGlvbl9nbHlwaHNdLAoJCSAgICAgW0hB VkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTPXllc10sCgkJICAgICBbSEFWRV9PVEZfR0VU X1ZBUklBVElPTl9HTFlQSFM9bm9dKQoJaWYgdGVzdCAiJHtIQVZFX09URl9HRVRfVkFSSUFU SU9OX0dMWVBIU30iID0gInllcyI7IHRoZW4KCSAgQUNfREVGSU5FKFtIQVZFX09URl9HRVRf VkFSSUFUSU9OX0dMWVBIU10sIFsxXSwKCQkgICAgW0RlZmluZSB0byAxIGlmIGxpYm90ZiBo YXMgT1RGX2dldF92YXJpYXRpb25fZ2x5cGhzLl0pCglmaQogICAgICBmaQogICAgZmkKICBl bHNlCiAgICBIQVZFX1hGVD1ubwogICAgSEFWRV9GUkVFVFlQRT1ubwogICAgSEFWRV9MSUJP VEY9bm8KICAgIEhBVkVfTTE3Tl9GTFQ9bm8KICBmaQpmaSAgICMgIiR7SEFWRV9YMTF9IiAh PSAieWVzIgoKSEFWRV9IQVJGQlVaWj1ubwojIyMgT24gTVMtV2luZG93cyB3ZSB1c2UgaGJf Zm9udF9nZXRfbm9taW5hbF9nbHlwaCwgd2hpY2ggYXBwZWFyZWQKIyMjIGluIEhhcmZCdXp6 IHZlcnNpb24gMS4yLjMKaWYgdGVzdCAiJHtIQVZFX1czMn0iID0gInllcyI7IHRoZW4KICBo YXJmYnV6el9yZXF1aXJlZF92ZXI9MS4yLjMKZWxzZQogIGhhcmZidXp6X3JlcXVpcmVkX3Zl cj0wLjkuNDIKZmkKaWYgdGVzdCAiJHtIQVZFX1gxMX0iID0gInllcyIgJiYgdGVzdCAiJHtI QVZFX0ZSRUVUWVBFfSIgPSAieWVzIiBcCiAgICAgICAgfHwgdGVzdCAiJHdpbmRvd19zeXN0 ZW0iID0gInBndGsiIFwKICAgICAgICB8fCB0ZXN0ICIke0hBVkVfVzMyfSIgPSAieWVzIjsg dGhlbgogIGlmIHRlc3QgIiR7d2l0aF9oYXJmYnV6en0iICE9ICJubyI7IHRoZW4KICAgIEVN QUNTX0NIRUNLX01PRFVMRVMoW0hBUkZCVVpaXSwgW2hhcmZidXp6ID49ICRoYXJmYnV6el9y ZXF1aXJlZF92ZXJdKQogICAgaWYgdGVzdCAiJEhBVkVfSEFSRkJVWloiID0gInllcyI7IHRo ZW4KICAgICAgQUNfREVGSU5FKFtIQVZFX0hBUkZCVVpaXSwgWzFdLCBbRGVmaW5lIHRvIDEg aWYgdXNpbmcgSGFyZkJ1enouXSkKICAgICAgIyMjIG1pbmd3MzIgYW5kIEN5Z3dpbi13MzIg ZG9uJ3QgdXNlIC1saGFyZmJ1enosIHNpbmNlIHRoZXkgbG9hZAogICAgICAjIyMgdGhlIGxp YnJhcnkgZHluYW1pY2FsbHkuCiAgICAgIGlmIHRlc3QgIiR7SEFWRV9XMzJ9IiA9ICJ5ZXMi OyB0aGVuCiAgICAgICAgSEFSRkJVWlpfTElCUz0KICAgICAgZmkKICAgIGZpCiAgZmkKZmkK CiMjIyBTdGFydCBvZiBmb250LWJhY2tlbmQgKHVuZGVyIEhhaWt1KSBzZWxlY3Rpb25uLgpp ZiB0ZXN0ICIke0hBVkVfQkVfQVBQfSIgPSAieWVzIjsgdGhlbgogIGlmIHRlc3QgJEhBVkVf Q0FJUk8gPSAieWVzIjsgdGhlbgogICAgICBFTUFDU19DSEVDS19NT0RVTEVTKFtGUkVFVFlQ RV0sIFtmcmVldHlwZTIgPj0gMi41LjBdKQogICAgICB0ZXN0ICIkSEFWRV9GUkVFVFlQRSIg PSAibm8iICYmCglBQ19NU0dfRVJST1IoW2NhaXJvIG9uIEhhaWt1IHJlcXVpcmVzIGxpYmZy ZWV0eXBlXSkKICAgICAgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyhbRk9OVENPTkZJR10sIFtmb250 Y29uZmlnID49IDIuMi4wXSkKICAgICAgdGVzdCAiJEhBVkVfRk9OVENPTkZJRyIgPSAibm8i ICYmCglBQ19NU0dfRVJST1IoW2NhaXJvIG9uIEhhaWt1IHJlcXVpcmVzIGxpYmZvbnRjb25m aWddKQogIGZpCgogIEhBVkVfTElCT1RGPW5vCgogIGlmIHRlc3QgIiR7SEFWRV9GUkVFVFlQ RX0iID0gInllcyI7IHRoZW4KICAgIEFDX0RFRklORShbSEFWRV9GUkVFVFlQRV0sIFsxXSwK CSAgICAgIFtEZWZpbmUgdG8gMSBpZiB1c2luZyB0aGUgZnJlZXR5cGUgYW5kIGZvbnRjb25m aWcgbGlicmFyaWVzLl0pCiAgICBPTERfQ0ZMQUdTPSRDRkxBR1MKICAgIE9MRF9MSUJTPSRM SUJTCiAgICBDRkxBR1M9IiRDRkxBR1MgJEZSRUVUWVBFX0NGTEFHUyIKICAgIExJQlM9IiRG UkVFVFlQRV9MSUJTICRMSUJTIgogICAgQUNfQ0hFQ0tfRlVOQ1MoW0ZUX0ZhY2VfR2V0Q2hh clZhcmlhbnRJbmRleF0pCiAgICBDRkxBR1M9JE9MRF9DRkxBR1MKICAgIExJQlM9JE9MRF9M SUJTCiAgICBpZiB0ZXN0ICIke3dpdGhfbGlib3RmfSIgIT0gIm5vIjsgdGhlbgogICAgICBF TUFDU19DSEVDS19NT0RVTEVTKFtMSUJPVEZdLCBbbGlib3RmXSkKICAgICAgaWYgdGVzdCAi JEhBVkVfTElCT1RGIiA9ICJ5ZXMiOyB0aGVuCglBQ19ERUZJTkUoW0hBVkVfTElCT1RGXSwg WzFdLCBbRGVmaW5lIHRvIDEgaWYgdXNpbmcgbGlib3RmLl0pCglBQ19DSEVDS19MSUIoW290 Zl0sIFtPVEZfZ2V0X3ZhcmlhdGlvbl9nbHlwaHNdLAoJCSAgICAgW0hBVkVfT1RGX0dFVF9W QVJJQVRJT05fR0xZUEhTPXllc10sCgkJICAgICBbSEFWRV9PVEZfR0VUX1ZBUklBVElPTl9H TFlQSFM9bm9dKQoJaWYgdGVzdCAiJHtIQVZFX09URl9HRVRfVkFSSUFUSU9OX0dMWVBIU30i ID0gInllcyI7IHRoZW4KCSAgQUNfREVGSU5FKFtIQVZFX09URl9HRVRfVkFSSUFUSU9OX0dM WVBIU10sIFsxXSwKCQkgICAgW0RlZmluZSB0byAxIGlmIGxpYm90ZiBoYXMgT1RGX2dldF92 YXJpYXRpb25fZ2x5cGhzLl0pCglmaQoJaWYgISAkUEtHX0NPTkZJRyAtLWF0bGVhc3QtdmVy c2lvbj0wLjkuMTYgbGlib3RmOyB0aGVuCgkgIEFDX0RFRklORShbSEFWRV9PVEZfS0FOTkFE QV9CVUddLCBbMV0sCltEZWZpbmUgdG8gMSBpZiBsaWJvdGYgaXMgYWZmZWN0ZWQgYnkgaHR0 cHM6Ly9kZWJidWdzLmdudS5vcmcvMjgxMTAuXSkKCWZpCiAgICAgIGZpCiAgICBmaQogIGRu bCBGSVhNRSBzaG91bGQgdGhlcmUgYmUgYW4gZXJyb3IgaWYgSEFWRV9GUkVFVFlQRSAhPSB5 ZXM/CiAgZG5sIERvZXMgdGhlIG5ldyBmb250IGJhY2tlbmQgcmVxdWlyZSBpdCwgb3IgY2Fu IGl0IHdvcmsgd2l0aG91dCBpdD8KICBmaQpmaQoKaWYgdGVzdCAiJHtIQVZFX0JFX0FQUH0i ID0gInllcyIgJiYgdGVzdCAiJHtIQVZFX0ZSRUVUWVBFfSIgPSAieWVzIjsgdGhlbgogIGlm IHRlc3QgIiR7d2l0aF9oYXJmYnV6en0iICE9ICJubyI7IHRoZW4KICAgIEVNQUNTX0NIRUNL X01PRFVMRVMoW0hBUkZCVVpaXSwgW2hhcmZidXp6ID49ICRoYXJmYnV6el9yZXF1aXJlZF92 ZXJdKQogICAgaWYgdGVzdCAiJEhBVkVfSEFSRkJVWloiID0gInllcyI7IHRoZW4KICAgICAg QUNfREVGSU5FKFtIQVZFX0hBUkZCVVpaXSwgWzFdLCBbRGVmaW5lIHRvIDEgaWYgdXNpbmcg SGFyZkJ1enouXSkKICAgIGZpCiAgZmkKZmkKCiMjIyBFbmQgb2YgZm9udC1iYWNrZW5kIHNl Y3Rpb24uCgpBQ19TVUJTVChbRlJFRVRZUEVfQ0ZMQUdTXSkKQUNfU1VCU1QoW0ZSRUVUWVBF X0xJQlNdKQpBQ19TVUJTVChbRk9OVENPTkZJR19DRkxBR1NdKQpBQ19TVUJTVChbRk9OVENP TkZJR19MSUJTXSkKQUNfU1VCU1QoW0hBUkZCVVpaX0NGTEFHU10pCkFDX1NVQlNUKFtIQVJG QlVaWl9MSUJTXSkKQUNfU1VCU1QoW0xJQk9URl9DRkxBR1NdKQpBQ19TVUJTVChbTElCT1RG X0xJQlNdKQpBQ19TVUJTVChbTTE3Tl9GTFRfQ0ZMQUdTXSkKQUNfU1VCU1QoW00xN05fRkxU X0xJQlNdKQoKWENCX0xJQlM9CmlmIHRlc3QgIiR7SEFWRV9YMTF9IiA9ICJ5ZXMiOyB0aGVu CiAgQUNfQ0hFQ0tfSEVBREVSKFtYMTEvWGxpYi14Y2IuaF0sCiAgICBbQUNfQ0hFQ0tfTElC KFt4Y2JdLCBbeGNiX3RyYW5zbGF0ZV9jb29yZGluYXRlc10sIFtIQVZFX1hDQj15ZXNdKV0p CiAgaWYgdGVzdCAiJHtIQVZFX1hDQn0iID0gInllcyI7IHRoZW4KICAgIEFDX0NIRUNLX0xJ QihbWDExLXhjYl0sIFtYR2V0WENCQ29ubmVjdGlvbl0sIFtIQVZFX1gxMV9YQ0I9eWVzXSkK ICAgIGlmIHRlc3QgIiR7SEFWRV9YMTFfWENCfSIgPSAieWVzIjsgdGhlbgogICAgICBBQ19E RUZJTkUoW1VTRV9YQ0JdLCBbMV0sCltEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgWENC IGxpYnJhcnkgYW5kIFgxMS1YQ0IgbGlicmFyeSBmb3IgbWl4ZWQKWDExL1hDQiBwcm9ncmFt bWluZy5dKQogICAgICBYQ0JfTElCUz0iLWxYMTEteGNiIC1seGNiIgogICAgZmkKICBmaQpm aQpBQ19TVUJTVChbWENCX0xJQlNdKQoKIyMjIFVzZSAtbFhwbSBpZiBhdmFpbGFibGUsIHVu bGVzcyAnLS13aXRoLXhwbT1ubycuCiMjIyBtaW5ndzMyIGRvZXNuJ3QgdXNlIC1sWHBtLCBz aW5jZSBpdCBsb2FkcyB0aGUgbGlicmFyeSBkeW5hbWljYWxseS4KIyMjIFRoZSBDeWd3aW4t dzMyIGJ1aWxkIHVzZXMgPG5vWC94cG0uaD4gaW5zdGVhZCBvZiA8WDExL3hwbS5oPiwgc28K IyMjIHdlIG5lZWQgdG8gc2V0IExERkxBR1MgYWNjb3JkaW5nbHkuCkhBVkVfWFBNPW5vCkxJ QlhQTT0KaWYgdGVzdCAiJHtIQVZFX1czMn0iID0gInllcyIgJiYgdGVzdCAiJHtvcHN5c30i ID0gImN5Z3dpbiI7IHRoZW4KICBpZiB0ZXN0ICIke3dpdGhfeHBtfSIgIT0gIm5vIjsgdGhl bgogICAgU0FWRV9MREZMQUdTPSIkTERGTEFHUyIKICAgIExERkxBR1M9IiRMREZMQUdTIC1M L3Vzci9saWIvbm9YIgogICAgQUNfQ0hFQ0tfSEVBREVSKFtub1gveHBtLmhdLAogICAgICBb QUNfQ0hFQ0tfTElCKFtYcG1dLCBbWHBtUmVhZEZpbGVUb0ltYWdlXSwgW0hBVkVfWFBNPXll c10pXSkKICAgIGlmIHRlc3QgIiR7SEFWRV9YUE19IiA9ICJ5ZXMiOyB0aGVuCiAgICAgIEFD X0NBQ0hFX0NIRUNLKFtmb3IgWHBtUmV0dXJuQWxsb2NQaXhlbHMgcHJlcHJvY2Vzc29yIGRl ZmluZV0sCiAgICAgIFtlbWFjc19jdl9jcHBfeHBtX3JldHVybl9hbGxvY19waXhlbHNdLAog ICAgICBbQUNfRUdSRVBfQ1BQKFtub19yZXR1cm5fYWxsb2NfcGl4ZWxzXSwKICAgICAgWyNp bmNsdWRlICJub1gveHBtLmgiCiNpZm5kZWYgWHBtUmV0dXJuQWxsb2NQaXhlbHMKbm9fcmV0 dXJuX2FsbG9jX3BpeGVscwojZW5kaWYKICAgICAgXSwgW2VtYWNzX2N2X2NwcF94cG1fcmV0 dXJuX2FsbG9jX3BpeGVscz1ub10sCgkgW2VtYWNzX2N2X2NwcF94cG1fcmV0dXJuX2FsbG9j X3BpeGVscz15ZXNdKV0pCgogICAgICBpZiB0ZXN0ICIkZW1hY3NfY3ZfY3BwX3hwbV9yZXR1 cm5fYWxsb2NfcGl4ZWxzIiA9ICJubyI7IHRoZW4KICAgICAgICBIQVZFX1hQTT1ubwogICAg ICAgIExERkxBR1M9IiRTQVZFX0xERkxBR1MiCiAgICAgIGZpCiAgICBmaQogIGZpCgogIGlm IHRlc3QgIiR7SEFWRV9YUE19IiA9ICJ5ZXMiOyB0aGVuCiAgICBBQ19ERUZJTkUoW0hBVkVf WFBNXSwgWzFdLAogICAgICBbRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIFhwbSBsaWJy YXJ5ICgtbFhwbSkuXSkKICAgIExJQlhQTT0tbFhwbQogIGZpCmZpCgppZiB0ZXN0ICIke0hB VkVfWDExfSIgPSAieWVzIjsgdGhlbgogIGRubCBBdm9pZCBYcG0gb24gQUlYIHVubGVzcyBy ZXF1ZXN0ZWQsIGFzIGl0IGNyYXNoZXM7IHNlZSBCdWcjMTc1OTguCiAgY2FzZSAkb3BzeXMs JHdpdGhfeHBtX3NldCwkd2l0aF94cG0gaW4KICAgIGFpeDQtMixzZXQseWVzKSA7OwogICAg YWl4NC0yLCopIHdpdGhfeHBtPW5vOzsKICBlc2FjCgogIGlmIHRlc3QgIiR7d2l0aF94cG19 IiAhPSAibm8iOyB0aGVuCiAgICBBQ19DSEVDS19IRUFERVIoW1gxMS94cG0uaF0sCiAgICAg IFtBQ19DSEVDS19MSUIoW1hwbV0sIFtYcG1SZWFkRmlsZVRvUGl4bWFwXSwKCSBbSEFWRV9Y UE09eWVzXSwgW10sIFstbFgxMV0pXSkKICAgIGlmIHRlc3QgIiR7SEFWRV9YUE19IiA9ICJ5 ZXMiOyB0aGVuCiAgICAgIEFDX0NBQ0hFX0NIRUNLKFtmb3IgWHBtUmV0dXJuQWxsb2NQaXhl bHMgcHJlcHJvY2Vzc29yIGRlZmluZV0sCiAgICAgIFtlbWFjc19jdl9jcHBfeHBtX3JldHVy bl9hbGxvY19waXhlbHNdLAogICAgICBbQUNfRUdSRVBfQ1BQKFtub19yZXR1cm5fYWxsb2Nf cGl4ZWxzXSwKICAgICAgWyNpbmNsdWRlICJYMTEveHBtLmgiCiNpZm5kZWYgWHBtUmV0dXJu QWxsb2NQaXhlbHMKbm9fcmV0dXJuX2FsbG9jX3BpeGVscwojZW5kaWYKICAgICAgXSwgW2Vt YWNzX2N2X2NwcF94cG1fcmV0dXJuX2FsbG9jX3BpeGVscz1ub10sCgkgW2VtYWNzX2N2X2Nw cF94cG1fcmV0dXJuX2FsbG9jX3BpeGVscz15ZXNdKV0pCgogICAgICBpZiB0ZXN0ICIkZW1h Y3NfY3ZfY3BwX3hwbV9yZXR1cm5fYWxsb2NfcGl4ZWxzIiA9ICJubyI7IHRoZW4KCUhBVkVf WFBNPW5vCiAgICAgIGZpCiAgICBmaQogIGZpCgogIGlmIHRlc3QgIiR7SEFWRV9YUE19IiA9 ICJ5ZXMiOyB0aGVuCiAgICBBQ19ERUZJTkUoW0hBVkVfWFBNXSwgWzFdLAogICAgICBbRGVm aW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIFhwbSBsaWJyYXJ5ICgtbFhwbSkuXSkKICAgIExJ QlhQTT0tbFhwbQogIGVsaWYgdGVzdCAiJG9wc3lzLCRMVUNJRF9MSUJXIiA9IGFpeDQtMiwt bFhhdzsgdGhlbgogICAgZG5sIEFJWCAtbFhhdyBuZWVkcyAtbFhwbSBsaW5rZWQgdG9vOyBz ZWUgQnVnIzE3NTk4IE1lc3NhZ2UjMTUyLgogICAgTElCWFBNPS1sWHBtCiAgZmkKZmkKCiMj IyBGSVhNRTogUGVyaGFwcyByZWdyb3VwIHRvIG1pbmltaXplIGNvZGUgZHVwbGljYXRpb24g ZHVlIHRvIE1pbkdXJ3MKIyMjIHNsaWdodGx5IGRpZmZlcmVudCByZXF1aXJlbWVudHMgd3J0 IGltYWdlIGxpYnJhcmllcyAoaXQgZG9lc24ndAojIyMgdXNlIC1sWHBtIGJlY2F1c2UgaXQg bG9hZHMgdGhlIHhwbSBzaGFyZWQgbGlicmFyeSBkeW5hbWljYWxseSBhdAojIyMgcnVuIHRp bWUpLgppZiB0ZXN0ICIke29wc3lzfSIgPSAibWluZ3czMiI7IHRoZW4KICBpZiB0ZXN0ICIk e3dpdGhfeHBtfSIgIT0gIm5vIjsgdGhlbgogICAgQUNfQ0hFQ0tfSEVBREVSKFtYMTEveHBt LmhdLCBbSEFWRV9YUE09eWVzXSwgW0hBVkVfWFBNPW5vXSwgWwojZGVmaW5lIEZPUl9NU1cg MV0pCiAgZmkKCiAgaWYgdGVzdCAiJHtIQVZFX1hQTX0iID0gInllcyI7IHRoZW4KICAgIEFD X0RFRklORShbSEFWRV9YUE1dLCBbMV0sCiAgICAgIFtEZWZpbmUgdG8gMSBpZiB5b3UgaGF2 ZSB0aGUgWHBtIGxpYnJhcnkgKC1sWHBtKS5dKQogIGZpCmZpCgpBQ19TVUJTVChbTElCWFBN XSkKCiMjIyBVc2UgLWxqcGVnIGlmIGF2YWlsYWJsZSwgdW5sZXNzICctLXdpdGgtanBlZz1u bycuCkhBVkVfSlBFRz1ubwpMSUJKUEVHPQppZiB0ZXN0ICIke0hBVkVfWDExfSIgPSAieWVz IiB8fCB0ZXN0ICIke0hBVkVfVzMyfSIgPSAieWVzIiBcCiAgIHx8IHRlc3QgIiR7SEFWRV9O U30iID0gInllcyIgfHwgdGVzdCAiJHtIQVZFX0JFX0FQUH0iID0gInllcyIgXAogICB8fCB0 ZXN0ICIkd2luZG93X3N5c3RlbSIgPSAicGd0ayI7IHRoZW4KICBpZiB0ZXN0ICIke3dpdGhf anBlZ30iICE9ICJubyI7IHRoZW4KICAgIEFDX0NBQ0hFX0NIRUNLKFtmb3IganBlZ2xpYiA2 YiBvciBsYXRlcl0sCiAgICAgIFtlbWFjc19jdl9qcGVnbGliXSwKICAgICAgW09MRF9MSUJT PSRMSUJTCiAgICAgICBmb3IgZW1hY3NfY3ZfanBlZ2xpYiBpbiB5ZXMgLWxqcGVnIG5vOyBk bwoJIGNhc2UgJGVtYWNzX2N2X2pwZWdsaWIgaW4KCSAgIHllcykgOzsKCSAgIG5vKSBicmVh azs7CgkgICAqKSBMSUJTPSIkTElCUyAkZW1hY3NfY3ZfanBlZ2xpYiI7OwoJIGVzYWMKCSBB Q19MSU5LX0lGRUxTRSgKCSAgIFtBQ19MQU5HX1BST0dSQU0oCgkgICAgICBbWyN1bmRlZiBI QVZFX1NURExJQl9IIC8qIEF2b2lkIGNvbmZpZy5oL2pwZWdsaWIuaCBjb2xsaXNpb24uICAq LwoJCSNpbmNsdWRlIDxzdGRpby5oPiAvKiBqcGVnbGliLmggbmVlZHMgRklMRSBhbmQgc2l6 ZV90LiAgKi8KCQkjaW5jbHVkZSA8anBlZ2xpYi5oPgoJCSNpbmNsdWRlIDxqZXJyb3IuaD4K CQljaGFyIHZlcmlmeVtKUEVHX0xJQl9WRVJTSU9OIDwgNjIgPyAtMSA6IDFdOwoJCXN0cnVj dCBqcGVnX2RlY29tcHJlc3Nfc3RydWN0IGNpbmZvOwoJICAgICAgXV0sCgkgICAgICBbWwoJ CWpwZWdfY3JlYXRlX2RlY29tcHJlc3MgKCZjaW5mbyk7CgkJV0FSTk1TICgmY2luZm8sIEpX Uk5fSlBFR19FT0YpOwoJCWpwZWdfZGVzdHJveV9kZWNvbXByZXNzICgmY2luZm8pOwoJICAg ICAgXV0pXSwKCSAgIFtlbWFjc19saW5rX29rPXllc10sCgkgICBbZW1hY3NfbGlua19vaz1u b10pCgkgTElCUz0kT0xEX0xJQlMKCSB0ZXN0ICRlbWFjc19saW5rX29rID0geWVzICYmIGJy ZWFrCiAgICAgICBkb25lXSkKICAgIGlmIHRlc3QgIiRlbWFjc19jdl9qcGVnbGliIiAhPSBu bzsgdGhlbgogICAgICBIQVZFX0pQRUc9eWVzCiAgICAgIEFDX0RFRklORShbSEFWRV9KUEVH XSwgWzFdLAoJW0RlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBqcGVnIGxpYnJhcnkgKHR5 cGljYWxseSAtbGpwZWcpLl0pCiAgICAgICMjIyBtaW5ndzMyIGRvZXNuJ3QgdXNlIC1sanBl Zywgc2luY2UgaXQgbG9hZHMgdGhlIGxpYnJhcnkKICAgICAgIyMjIGR5bmFtaWNhbGx5IHdo ZW4gbmVlZGVkLCBhbmQgZG9lc24ndCB3YW50IGEgcnVuLXRpbWUKICAgICAgIyMjIGRlcGVu ZGVuY3kgb24gdGhlIGpwZWdsaWIgRExMLgogICAgICB0ZXN0ICIkZW1hY3NfY3ZfanBlZ2xp YiIgIT0geWVzICYmIHRlc3QgIiR7b3BzeXN9IiAhPSAibWluZ3czMiIgXAogICAgICAmJiBM SUJKUEVHPSRlbWFjc19jdl9qcGVnbGliCiAgICBmaQogIGZpCmZpCkFDX1NVQlNUKFtMSUJK UEVHXSkKCkhBVkVfTENNUzI9bm8KTENNUzJfQ0ZMQUdTPQpMQ01TMl9MSUJTPQppZiB0ZXN0 ICIke3dpdGhfbGNtczJ9IiAhPSAibm8iOyB0aGVuCiAgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyhb TENNUzJdLCBbbGNtczJdKQpmaQppZiB0ZXN0ICIke0hBVkVfTENNUzJ9IiA9ICJ5ZXMiOyB0 aGVuCiAgQUNfREVGSU5FKFtIQVZFX0xDTVMyXSwgWzFdLAogICAgW0RlZmluZSB0byAxIGlm IHlvdSBoYXZlIHRoZSBsY21zMiBsaWJyYXJ5ICgtbGxjbXMyKS5dKQogICMjIyBtaW5ndzMy IGRvZXNuJ3QgdXNlIC1sbGNtczIsIHNpbmNlIGl0IGxvYWRzIHRoZSBsaWJyYXJ5IGR5bmFt aWNhbGx5LgogIGlmIHRlc3QgIiR7b3BzeXN9IiA9ICJtaW5ndzMyIjsgdGhlbgogICAgIExD TVMyX0xJQlM9CiAgZmkKZmkKQUNfU1VCU1QoW0xDTVMyX0NGTEFHU10pCkFDX1NVQlNUKFtM Q01TMl9MSUJTXSkKCkhBVkVfWkxJQj1ubwpMSUJaPQppZiB0ZXN0ICIke3dpdGhfemxpYn0i ICE9ICJubyI7IHRoZW4KICBPTElCUz0kTElCUwogIEFDX1NFQVJDSF9MSUJTKFtpbmZsYXRl RW5kXSwgW3pdLCBbSEFWRV9aTElCPXllc10pCiAgTElCUz0kT0xJQlMKICBjYXNlICRhY19j dl9zZWFyY2hfaW5mbGF0ZUVuZCBpbgogICAgLSopIExJQlo9JGFjX2N2X3NlYXJjaF9pbmZs YXRlRW5kIDs7CiAgZXNhYwpmaQppZiB0ZXN0ICIke0hBVkVfWkxJQn0iID0gInllcyI7IHRo ZW4KICBBQ19ERUZJTkUoW0hBVkVfWkxJQl0sIFsxXSwKICAgIFtEZWZpbmUgdG8gMSBpZiB5 b3UgaGF2ZSB0aGUgemxpYiBsaWJyYXJ5ICgtbHopLl0pCiAgIyMjIG1pbmd3MzIgZG9lc24n dCB1c2UgLWx6LCBzaW5jZSBpdCBsb2FkcyB0aGUgbGlicmFyeSBkeW5hbWljYWxseS4KICBp ZiB0ZXN0ICIke29wc3lzfSIgPSAibWluZ3czMiI7IHRoZW4KICAgICBMSUJaPQogIGZpCmZp CkFDX1NVQlNUKFtMSUJaXSkKCiMjIyBEeW5hbWljIGxpYnJhcnkgc3VwcG9ydApjYXNlICRv cHN5cyBpbgogIGN5Z3dpbnxtaW5ndzMyKSBEWU5BTUlDX0xJQl9TVUZGSVg9Ii5kbGwiIDs7 CiAgZGFyd2luKSBEWU5BTUlDX0xJQl9TVUZGSVg9Ii5keWxpYiIgOzsKICAqKSBEWU5BTUlD X0xJQl9TVUZGSVg9Ii5zbyIgOzsKZXNhYwpjYXNlICIke29wc3lzfSIgaW4KICBkYXJ3aW4p IERZTkFNSUNfTElCX1NFQ09OREFSWV9TVUZGSVg9Jy5zbycgOzsKICAqKSBEWU5BTUlDX0xJ Ql9TRUNPTkRBUllfU1VGRklYPScnIDs7CmVzYWMKQUNfREVGSU5FX1VOUVVPVEVEKERZTkFN SUNfTElCX1NVRkZJWCwgIiREWU5BTUlDX0xJQl9TVUZGSVgiLAogIFtTeXN0ZW0gZXh0ZW5z aW9uIGZvciBkeW5hbWljIGxpYnJhcmllc10pCkFDX0RFRklORV9VTlFVT1RFRChEWU5BTUlD X0xJQl9TRUNPTkRBUllfU1VGRklYLCAiJERZTkFNSUNfTElCX1NFQ09OREFSWV9TVUZGSVgi LAogIFtBbHRlcm5hdGl2ZSBzeXN0ZW0gZXh0ZW5zaW9uIGZvciBkeW5hbWljIGxpYnJhcmll cy5dKQoKQUNfU1VCU1QoRFlOQU1JQ19MSUJfU1VGRklYKQpBQ19TVUJTVChEWU5BTUlDX0xJ Ql9TRUNPTkRBUllfU1VGRklYKQoKIyMjIER5bmFtaWMgbW9kdWxlcyBzdXBwb3J0CkxJQk1P RFVMRVM9CkhBVkVfTU9EVUxFUz1ubwpNT0RVTEVTX09CSj0KTU9EVUxFU19TVUZGSVg9IiR7 RFlOQU1JQ19MSUJfU1VGRklYfSIKTU9EVUxFU19TRUNPTkRBUllfU1VGRklYPSIke0RZTkFN SUNfTElCX1NFQ09OREFSWV9TVUZGSVh9IgoKIyBwZ3RrdGVybS5jIHVzZXMgZGxzeW0KaWYg dGVzdCAkd2luZG93X3N5c3RlbSA9IHBndGs7IHRoZW4KICBjYXNlICRvcHN5cyBpbgogICAg Z251fGdudS1saW51eCkKICAgIExJQk1PRFVMRVM9Ii1sZGwiCiAgICA7OwogIGVzYWMKZmkK CmlmIHRlc3QgIiR7d2l0aF9tb2R1bGVzfSIgIT0gIm5vIjsgdGhlbgogIGNhc2UgJG9wc3lz IGluCiAgICBnbnV8Z251LWxpbnV4KQogICAgICBMSUJNT0RVTEVTPSItbGRsIgogICAgICBI QVZFX01PRFVMRVM9eWVzCiAgICAgIDs7CiAgICBjeWd3aW58bWluZ3czMnxkYXJ3aW4pCiAg ICAgIEhBVkVfTU9EVUxFUz15ZXMKICAgICAgOzsKICAgICopCiAgICAgICMgQlNEIHN5c3Rl bXMgaGF2ZSBkbG9wZW4gaW4gbGliYy4KICAgICAgQUNfQ0hFQ0tfRlVOQyhbZGxvcGVuXSwg W0hBVkVfTU9EVUxFUz15ZXNdKQogICAgICA7OwogIGVzYWMKCiAgaWYgdGVzdCAiJHtIQVZF X01PRFVMRVN9IiA9IG5vOyB0aGVuCiAgICBBQ19NU0dfRVJST1IoW0R5bmFtaWMgbW9kdWxl cyBhcmUgbm90IHN1cHBvcnRlZCBvbiB5b3VyIHN5c3RlbV0pCiAgZWxzZQogICAgU0FWRV9M SUJTPSRMSUJTCiAgICBMSUJTPSIkTElCUyAkTElCTU9EVUxFUyIKICAgIEFDX0NIRUNLX0ZV TkNTKFtkbGFkZHIgZGxmdW5jXSkKICAgIExJQlM9JFNBVkVfTElCUwogIGZpCmZpCgppZiB0 ZXN0ICIke0hBVkVfTU9EVUxFU30iID0geWVzOyB0aGVuCiAgIE1PRFVMRVNfT0JKPSJlbWFj cy1tb2R1bGUubyIKICAgTkVFRF9EWU5MSUI9eWVzCiAgIEFDX0RFRklORShbSEFWRV9NT0RV TEVTXSwgWzFdLCBbRGVmaW5lIHRvIDEgaWYgZHluYW1pYyBtb2R1bGVzIGFyZSBlbmFibGVk XSkKICAgQUNfREVGSU5FX1VOUVVPVEVEKFtNT0RVTEVTX1NVRkZJWF0sIFsiJE1PRFVMRVNf U1VGRklYIl0sCiAgICAgW1N5c3RlbSBleHRlbnNpb24gZm9yIGR5bmFtaWMgbGlicmFyaWVz XSkKICAgaWYgdGVzdCAtbiAiJHtNT0RVTEVTX1NFQ09OREFSWV9TVUZGSVh9IjsgdGhlbgog ICAgIEFDX0RFRklORV9VTlFVT1RFRChbTU9EVUxFU19TRUNPTkRBUllfU1VGRklYXSwKICAg ICAgIFsiJE1PRFVMRVNfU0VDT05EQVJZX1NVRkZJWCJdLAogICAgICAgW0FsdGVybmF0aXZl IHN5c3RlbSBleHRlbnNpb24gZm9yIGR5bmFtaWMgbGlicmFyaWVzLl0pCiAgIGZpCmZpCkFD X1NVQlNUKFtNT0RVTEVTX09CSl0pCkFDX1NVQlNUKFtMSUJNT0RVTEVTXSkKQUNfU1VCU1Qo W0hBVkVfTU9EVUxFU10pCkFDX1NVQlNUKFtNT0RVTEVTX1NVRkZJWF0pCkFDX1NVQlNUKFtN T0RVTEVTX1NFQ09OREFSWV9TVUZGSVhdKQoKQUNfQ09ORklHX0ZJTEVTKFtzcmMvZW1hY3Mt bW9kdWxlLmhdKQpBQ19TVUJTVF9GSUxFKFttb2R1bGVfZW52X3NuaXBwZXRfMjVdKQpBQ19T VUJTVF9GSUxFKFttb2R1bGVfZW52X3NuaXBwZXRfMjZdKQpBQ19TVUJTVF9GSUxFKFttb2R1 bGVfZW52X3NuaXBwZXRfMjddKQpBQ19TVUJTVF9GSUxFKFttb2R1bGVfZW52X3NuaXBwZXRf MjhdKQpBQ19TVUJTVF9GSUxFKFttb2R1bGVfZW52X3NuaXBwZXRfMjldKQpBQ19TVUJTVF9G SUxFKFttb2R1bGVfZW52X3NuaXBwZXRfMzBdKQptb2R1bGVfZW52X3NuaXBwZXRfMjU9IiRz cmNkaXIvc3JjL21vZHVsZS1lbnYtMjUuaCIKbW9kdWxlX2Vudl9zbmlwcGV0XzI2PSIkc3Jj ZGlyL3NyYy9tb2R1bGUtZW52LTI2LmgiCm1vZHVsZV9lbnZfc25pcHBldF8yNz0iJHNyY2Rp ci9zcmMvbW9kdWxlLWVudi0yNy5oIgptb2R1bGVfZW52X3NuaXBwZXRfMjg9IiRzcmNkaXIv c3JjL21vZHVsZS1lbnYtMjguaCIKbW9kdWxlX2Vudl9zbmlwcGV0XzI5PSIkc3JjZGlyL3Ny Yy9tb2R1bGUtZW52LTI5LmgiCm1vZHVsZV9lbnZfc25pcHBldF8zMD0iJHNyY2Rpci9zcmMv bW9kdWxlLWVudi0zMC5oIgplbWFjc19tYWpvcl92ZXJzaW9uPSIke1BBQ0tBR0VfVkVSU0lP TiUlLip9IgpBQ19TVUJTVChbZW1hY3NfbWFqb3JfdmVyc2lvbl0pCgojIyMgRW1hY3MgTGlz cCBuYXRpdmUgY29tcGlsZXIgc3VwcG9ydAoKQUNfREVGVU4oW2xpYmdjY2ppdF9zbW9rZV90 ZXN0XSwgWwogIEFDX0xBTkdfU09VUkNFKAogICAgW1sjaW5jbHVkZSA8bGliZ2Njaml0Lmg+ CiAgICAgICNpbmNsdWRlIDxzdGRsaWIuaD4KICAgICAgI2luY2x1ZGUgPHN0ZGlvLmg+CiAg ICAgIGludAogICAgICBtYWluIChpbnQgYXJnYywgY2hhciAqKmFyZ3YpCiAgICAgIHsKICAg ICAgICBnY2Nfaml0X2NvbnRleHQgKmN0eHQ7CiAgICAgICAgZ2NjX2ppdF9yZXN1bHQgKnJl c3VsdDsKICAgICAgICBjdHh0ID0gZ2NjX2ppdF9jb250ZXh0X2FjcXVpcmUgKCk7CiAgICAg ICAgaWYgKCFjdHh0KQogICAgICAgICAgZXhpdCAoMSk7CiAgICAgICAgZ2NjX2ppdF90eXBl ICppbnRfdHlwZSA9CiAgICAgICAgICBnY2Nfaml0X2NvbnRleHRfZ2V0X3R5cGUgKGN0eHQs IEdDQ19KSVRfVFlQRV9JTlQpOwogICAgICAgIGdjY19qaXRfZnVuY3Rpb24gKmZ1bmMgPQog ICAgICAgICAgZ2NjX2ppdF9jb250ZXh0X25ld19mdW5jdGlvbiAoY3R4dCwgTlVMTCwKICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdDQ19KSVRfRlVOQ1RJT05f RVhQT1JURUQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnRf dHlwZSwgImZvbyIsIDAsIE5VTEwsIDApOwogICAgICAgIGdjY19qaXRfYmxvY2sgKmJsb2Nr ID0gZ2NjX2ppdF9mdW5jdGlvbl9uZXdfYmxvY2sgKGZ1bmMsICJmb28iKTsKICAgICAgICBn Y2Nfaml0X2Jsb2NrX2VuZF93aXRoX3JldHVybiAoCiAgICAgICAgICBibG9jaywKICAgICAg ICAgIE5VTEwsCiAgICAgICAgICBnY2Nfaml0X2NvbnRleHRfbmV3X3J2YWx1ZV9mcm9tX2lu dCAoY3R4dCwgaW50X3R5cGUsIDEpKTsKICAgICAgICByZXN1bHQgPSBnY2Nfaml0X2NvbnRl eHRfY29tcGlsZSAoY3R4dCk7CiAgICAgICAgaWYgKCFyZXN1bHQpCiAgICAgICAgICBleGl0 ICgxKTsKICAgICAgICB0eXBlZGVmIGludCAoKmZuX3R5cGUpICh2b2lkKTsKICAgICAgICBm bl90eXBlIGZvbyA9CiAgICAgICAgICAoZm5fdHlwZSlnY2Nfaml0X3Jlc3VsdF9nZXRfY29k ZSAocmVzdWx0LCAiZm9vIik7CiAgICAgICAgaWYgKCFmb28pCiAgICAgICAgICBleGl0ICgx KTsKICAgICAgICBpZiAoZm9vICgpICE9IDEpCiAgICAgICAgICBleGl0ICgxKTsKICAgICAg ICBnY2Nfaml0X2NvbnRleHRfcmVsZWFzZSAoY3R4dCk7CiAgICAgICAgZ2NjX2ppdF9yZXN1 bHRfcmVsZWFzZSAocmVzdWx0KTsKICAgICAgICByZXR1cm4gMDsKICAgICAgfV1dKV0pCgpB Q19ERUZVTihbbGliZ2Njaml0X25vdF9mb3VuZF0sIFsKICBBQ19NU0dfRVJST1IoW0VMaXNw IG5hdGl2ZSBjb21waWxlciB3YXMgcmVxdWVzdGVkLCBidXQgbGliZ2Njaml0IHdhcyBub3Qg Zm91bmQuClBsZWFzZSB0cnkgaW5zdGFsbGluZyBsaWJnY2NqaXQgb3IgYSBzaW1pbGFyIHBh Y2thZ2UuCklmIHlvdSBhcmUgc3VyZSB5b3Ugd2FudCBFbWFjcyBiZSBjb21waWxlZCB3aXRo b3V0IEVMaXNwIG5hdGl2ZSBjb21waWxlciwKcGFzcyB0aGUgLS13aXRob3V0LW5hdGl2ZS1j b21waWxhdGlvbiBvcHRpb24gdG8gY29uZmlndXJlLl0pXSkKCkFDX0RFRlVOKFtsaWJnY2Nq aXRfZGV2X25vdF9mb3VuZF0sIFsKICBBQ19NU0dfRVJST1IoW0VMaXNwIG5hdGl2ZSBjb21w aWxlciB3YXMgcmVxdWVzdGVkLCBidXQgbGliZ2Njaml0IGhlYWRlciBmaWxlcyB3ZXJlCm5v dCBmb3VuZC4KUGxlYXNlIHRyeSBpbnN0YWxsaW5nIGxpYmdjY2ppdC1kZXYgb3IgYSBzaW1p bGFyIHBhY2thZ2UuCklmIHlvdSBhcmUgc3VyZSB5b3Ugd2FudCBFbWFjcyBiZSBjb21waWxl ZCB3aXRob3V0IEVMaXNwIG5hdGl2ZSBjb21waWxlciwKcGFzcyB0aGUgLS13aXRob3V0LW5h dGl2ZS1jb21waWxhdGlvbiBvcHRpb24gdG8gY29uZmlndXJlLl0pXSkKCkFDX0RFRlVOKFts aWJnY2NqaXRfYnJva2VuXSwgWwogIEFDX01TR19FUlJPUihbVGhlIGluc3RhbGxlZCBsaWJn Y2NqaXQgZmFpbGVkIHRvIGNvbXBpbGUgYW5kIHJ1biBhIHRlc3QgcHJvZ3JhbSB1c2luZwp0 aGUgbGliZ2Njaml0IGxpYnJhcnk7IHNlZSBjb25maWcubG9nIGZvciB0aGUgZGV0YWlscyBv ZiB0aGUgZmFpbHVyZS4KVGhlIHRlc3QgcHJvZ3JhbSBjYW4gYmUgZm91bmQgaGVyZToKPGh0 dHBzOi8vZ2NjLmdudS5vcmcvb25saW5lZG9jcy9qaXQvaW50cm8vdHV0b3JpYWwwMS5odG1s Pi4KWW91IGNhbiB0cnkgY29tcGlsaW5nIGl0IHlvdXJzZWxmIHRvIGludmVzdGlnYXRlIHRo ZSBpc3N1ZXMuClBsZWFzZSByZXBvcnQgdGhlIGlzc3VlIHRvIHlvdXIgZGlzdHJpYnV0aW9u IGlmIGxpYmdjY2ppdCB3YXMgaW5zdGFsbGVkCnRocm91Z2ggdGhhdC4KWW91IGNhbiBmaW5k IHRoZSBpbnN0cnVjdGlvbnMgb24gaG93IHRvIGNvbXBpbGUgYW5kIGluc3RhbGwgbGliZ2Nj aml0IGZyb20Kc291cmNlIG9uIHRoaXMgc2l0ZToKPGh0dHBzOi8vZ2NjLmdudS5vcmcvd2lr aS9KSVQ+Ll0pXSkKCkhBVkVfTkFUSVZFX0NPTVA9bm8KTElCR0NDSklUX0xJQlM9CkxJQkdD Q0pJVF9DRkxBR1M9CmlmIHRlc3QgIiRjYW5vbmljYWwiID0gaTY4Ni1wYy1jeWd3aW47IHRo ZW4KICBpZiB0ZXN0ICIke3dpdGhfY3lnd2luMzJfbmF0aXZlX2NvbXBpbGF0aW9ufSIgPSB5 ZXM7IHRoZW4KICAgIHdpdGhfbmF0aXZlX2NvbXBpbGF0aW9uPXllcwogIGVsaWYgdGVzdCAi JHt3aXRoX25hdGl2ZV9jb21waWxhdGlvbn0iICE9IG5vOyB0aGVuCiAgICBBQ19NU0dfRVJS T1IoW05hdGl2ZSBjb21waWxhdGlvbiBpcyBub3Qgc3VwcG9ydGVkIG9uIDMyLWJpdCBDeWd3 aW4uCklmIHlvdSByZWFsbHkgd2FudCB0byB0cnkgaXQgYW55d2F5LCB1c2UgdGhlIGNvbmZp Z3VyZSBvcHRpb24KJy0td2l0aC1jeWd3aW4zMi1uYXRpdmUtY29tcGlsYXRpb24nLl0pCiAg ZmkKZmkKCmlmIHRlc3QgIiR7d2l0aF9uYXRpdmVfY29tcGlsYXRpb259IiAhPSAibm8iOyB0 aGVuCiAgICBpZiB0ZXN0ICIke0hBVkVfUERVTVBFUn0iID0gbm87IHRoZW4KICAgICAgIEFD X01TR19FUlJPUihbJy0td2l0aC1uYXRpdmUtY29tcGlsYXRpb24nIHJlcXVpcmVzICctLXdp dGgtZHVtcGluZz1wZHVtcGVyJ10pCiAgICBmaQogICAgaWYgdGVzdCAiJHtIQVZFX1pMSUJ9 IiA9IG5vOyB0aGVuCiAgICAgICBBQ19NU0dfRVJST1IoWyctLXdpdGgtbmF0aXZlLWNvbXBp bGF0aW9uJyByZXF1aXJlcyB6bGliXSkKICAgIGZpCgogICAgU0FWRV9DRkxBR1M9JENGTEFH UwogICAgU0FWRV9MSUJTPSRMSUJTCgogICAgaWYgdGVzdCAiJHtvcHN5c30iID0gImRhcndp biI7IHRoZW4KICAgICAgIyBFbnN1cmUgbGliZ2Njaml0IGluc3RhbGxlZCBieSBIb21lYnJl dyBvciBtYWNwb3J0cyBjYW4gYmUgZm91bmQuCiAgICAgIGlmIHRlc3QgLW4gIiRCUkVXIjsg dGhlbgogICAgICAgIGlmIHRlc3QgLW4gImAkQlJFVyAtLXByZWZpeCAtLWluc3RhbGxlZCBs aWJnY2NqaXQgMj4vZGV2L251bGxgIjsgdGhlbgogICAgICAgICAgTUFDX0NGTEFHUz0iLUkk KGRpcm5hbWUgJCgkQlJFVyBscyAtdiBsaWJnY2NqaXQgfCBcCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdyZXAgbGliZ2Njaml0LmgpKSIKICAg ICAgICAgIE1BQ19MSUJTPSItTCQoZGlybmFtZSAkKCRCUkVXIGxzIC12IGxpYmdjY2ppdCBc CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGdyZXAgLW0xIC1FICdsaWJn Y2NqaXRcLihzb3xkeWxpYikkJykpIgogICAgICAgIGZpCiAgICAgIGZpCgogICAgICBpZiB0 ZXN0IC1uICIkSEFWRV9NQUNQT1JUUyI7IHRoZW4KICAgICAgICAjIERldGVybWluZSB3aGlj aCBnY2MgdmVyc2lvbiBoYXMgYmVlbiBpbnN0YWxsZWQgKGdjYzExLCBmb3IKICAgICAgICAj IGluc3RhbmNlKS4gVXNlIHRoZSBsYXRlc3QgdmVyc2lvbiwgaWYgbW9yZSB0aGFuIG9uZSBp cwogICAgICAgICMgYXZhaWxhYmxlLiAgKFdlIGZpbHRlciBvdXQgdGhlIGdjYzQgcGFja2Fn ZXMsIGJlY2F1c2UgdGhleQogICAgICAgICMgZG9uJ3Qgc3VwcG9ydCBqaXQsIGFuZCB0aGV5 IGhhdmUgbmFtZXMgbGlrZSAiZ2NjNDkiIHRoYXQKICAgICAgICAjIHNvcnQgbGF0ZXIgdGhh biAiZ2NjMTEiLikKICAgICAgICBQT1JUX1BBQ0tBR0U9JChwb3J0IGluc3RhbGxlZCBhY3Rp dmUgfCBncmVwICdeICpnY2NAPDpAMC05QDo+QCogJyB8IFwKICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGF3ayAneyBwcmludCAkMTsgfScgfCBncmVwIC12ICdnY2M0QDw6QDAtOUA6 PkAnIHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgc29ydCAtViB8IHRhaWwgLW4g MSkKICAgICAgICBpZiB0ZXN0IC1uICIkUE9SVF9QQUNLQUdFIjsgdGhlbgogICAgICAgICAg TUFDX0NGTEFHUz0iLUkkKGRpcm5hbWUgJChwb3J0IGNvbnRlbnRzICRQT1JUX1BBQ0tBR0Ug fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBncmVwIGxp YmdjY2ppdC5oKSkiCiAgICAgICAgICBNQUNfTElCUz0iLUwkKGRpcm5hbWUgJChwb3J0IGNv bnRlbnRzICRQT1JUX1BBQ0tBR0UgfCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBncmVwIGxpYmdjY2ppdC5keWxpYikpIgogICAgICAgIGZpCiAg ICAgIGZpCgogICAgICBpZiB0ZXN0IC1uICIkTUFDX0NGTEFHUyIgJiYgdGVzdCAtbiAiJE1B Q19MSUJTIjsgdGhlbgogICAgICAgIENGTEFHUz0iJENGTEFHUyAke01BQ19DRkxBR1N9Igog ICAgICAgIExJQlM9IiRMSUJTICR7TUFDX0xJQlN9IgogICAgICBmaQogICAgZmkKCiAgICAj IENoZWNrIGlmIGxpYmdjY2ppdCBpcyBhdmFpbGFibGUuCiAgICBBQ19DSEVDS19MSUIoW2dj Y2ppdF0sIFtnY2Nfaml0X2NvbnRleHRfYWNxdWlyZV0sCiAgICAgIFtdLCBbbGliZ2Njaml0 X25vdF9mb3VuZF0pCiAgICBBQ19DSEVDS19IRUFERVJTKFtsaWJnY2NqaXQuaF0sIFtdLCBb bGliZ2Njaml0X2Rldl9ub3RfZm91bmRdKQogICAgIyBDaGVjayBpZiBsaWJnY2NqaXQgcmVh bGx5IHdvcmtzLgogICAgQUNfUlVOX0lGRUxTRShbbGliZ2Njaml0X3Ntb2tlX3Rlc3RdLCBb XSwgW2xpYmdjY2ppdF9icm9rZW5dKQogICAgSEFWRV9OQVRJVkVfQ09NUD15ZXMKICAgIGNh c2UgIiR7b3BzeXN9IiBpbgogICAgICAjIG1pbmd3MzIgbG9hZHMgdGhlIGxpYnJhcnkgZHlu YW1pY2FsbHkuCiAgICAgIG1pbmd3MzIpIDs7CiAgICAgICMgT3BlbkJTRCBkb2Vzbid0IGhh dmUgbGliZGwsIGFsbCB0aGUgZnVuY3Rpb25zIGFyZSBpbiBsaWJjCiAgICAgIG5ldGJzZHxv cGVuYnNkKQogICAgICAgIExJQkdDQ0pJVF9MSUJTPSItbGdjY2ppdCIgOzsKICAgICAgZGFy d2luKQogICAgICAgIExJQkdDQ0pJVF9DRkxBR1M9IiR7TUFDX0NGTEFHU30iCiAgICAgICAg TElCR0NDSklUX0xJQlM9IiR7TUFDX0xJQlN9IC1sZ2Njaml0IC1sZGwiOzsKICAgICAgKikK ICAgICAgICBMSUJHQ0NKSVRfTElCUz0iLWxnY2NqaXQgLWxkbCIgOzsKICAgIGVzYWMKICAg IE5FRURfRFlOTElCPXllcwogICAgQUNfREVGSU5FKFtIQVZFX05BVElWRV9DT01QXSwgWzFd LAogICAgICBbRGVmaW5lIHRvIDEgaWYgbmF0aXZlIGNvbXBpbGVyIGlzIGF2YWlsYWJsZS5d KQoKICAgIENGTEFHUz0kU0FWRV9DRkxBR1MKICAgIExJQlM9JFNBVkVfTElCUwpmaQpBQ19E RUZJTkVfVU5RVU9URUQoW05BVElWRV9FTElTUF9TVUZGSVhdLCBbIi5lbG4iXSwKICBbU3lz dGVtIGV4dGVuc2lvbiBmb3IgbmF0aXZlIGNvbXBpbGVkIGVsaXNwXSkKQUNfU1VCU1QoW0hB VkVfTkFUSVZFX0NPTVBdKQpBQ19TVUJTVChbTElCR0NDSklUX0NGTEFHU10pCkFDX1NVQlNU KFtMSUJHQ0NKSVRfTElCU10pCgpEWU5MSUJfT0JKPQppZiB0ZXN0ICIke05FRURfRFlOTElC fSIgPSB5ZXM7IHRoZW4KICBEWU5MSUJfT0JKPSJkeW5saWIubyIKZmkKQUNfU1VCU1QoW0RZ TkxJQl9PQkpdKQoKIyMjIFVzZSAtbHBuZyBpZiBhdmFpbGFibGUsIHVubGVzcyAnLS13aXRo LXBuZz1ubycuCkhBVkVfUE5HPW5vCkxJQlBORz0KUE5HX0NGTEFHUz0KaWYgdGVzdCAiJHt3 aXRoX3BuZ30iICE9IG5vOyB0aGVuCiAgIyBtaW5ndzMyIGxvYWRzIHRoZSBsaWJyYXJ5IGR5 bmFtaWNhbGx5LgogIGlmIHRlc3QgIiRvcHN5cyIgPSBtaW5ndzMyOyB0aGVuCiAgICBBQ19D SEVDS19IRUFERVIoW3BuZy5oXSwgW0hBVkVfUE5HPXllc10pCiAgZWxpZiB0ZXN0ICIke0hB VkVfWDExfSIgPSAieWVzIiB8fCB0ZXN0ICIke0hBVkVfVzMyfSIgPSAieWVzIiBcCiAgICAg ICB8fCB0ZXN0ICIke0hBVkVfTlN9IiA9ICJ5ZXMiIHx8IHRlc3QgIiR7SEFWRV9CRV9BUFB9 IiA9ICJ5ZXMiIFwKICAgICAgIHx8IHRlc3QgIiR3aW5kb3dfc3lzdGVtIiA9ICJwZ3RrIjsg dGhlbgogICAgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyhbUE5HXSwgW2xpYnBuZyA+PSAxLjAuMF0p CiAgICBpZiB0ZXN0ICRIQVZFX1BORyA9IHllczsgdGhlbgogICAgICBMSUJQTkc9JFBOR19M SUJTCiAgICBlbHNlCiAgICAgICMgVGVzdCBvbGQgd2F5IGluIGNhc2UgcGtnLWNvbmZpZyBk b2Vzbid0IGhhdmUgaXQgKG9sZGVyIG1hY2hpbmVzKS4KICAgICAgQUNfTVNHX0NIRUNLSU5H KFtmb3IgbGlicG5nIG5vdCBjb25maWd1cmVkIGJ5IHBrZy1jb25maWddKQoKICAgICAgcG5n X2NmbGFncz1gKGxpYnBuZy1jb25maWcgLS1jZmxhZ3MpIDI+JkFTX01FU1NBR0VfTE9HX0ZE YCAmJgogICAgICBwbmdfbGRmbGFncz1gKGxpYnBuZy1jb25maWcgLS1sZGZsYWdzKSAyPiZB U19NRVNTQUdFX0xPR19GRGAgfHwgewoJIyBsaWJwbmctY29uZmlnIGRvZXMgbm90IHdvcms7 IGNvbmZpZ3VyZSBieSBoYW5kLgoJIyBEZWJpYW4gdW5zdGFibGUgYXMgb2YgSnVseSAyMDAz IGhhcyBtdWx0aXBsZSBsaWJwbmdzLCBhbmQgcHV0cyBwbmcuaAoJIyBpbiAvdXNyL2luY2x1 ZGUvbGlicG5nLgoJaWYgdGVzdCAtciAvdXNyL2luY2x1ZGUvbGlicG5nL3BuZy5oICYmCgkg ICB0ZXN0ICEgLXIgL3Vzci9pbmNsdWRlL3BuZy5oOyB0aGVuCgkgIHBuZ19jZmxhZ3M9LUkv dXNyL2luY2x1ZGUvbGlicG5nCgllbHNlCgkgIHBuZ19jZmxhZ3M9CglmaQoJcG5nX2xkZmxh Z3M9Jy1scG5nJwogICAgICB9CiAgICAgIFNBVkVfQ0ZMQUdTPSRDRkxBR1MKICAgICAgU0FW RV9MSUJTPSRMSUJTCiAgICAgIENGTEFHUz0iJENGTEFHUyAkcG5nX2NmbGFncyIKICAgICAg TElCUz0iJHBuZ19sZGZsYWdzIC1seiAtbG0gJExJQlMiCiAgICAgIEFDX0xJTktfSUZFTFNF KAoJW0FDX0xBTkdfUFJPR1JBTShbWyNpbmNsdWRlIDxwbmcuaD5dXSwKCSAgIFtbcmV0dXJu ICFwbmdfZ2V0X2NoYW5uZWxzICgwLCAwKTtdXSldLAoJW0hBVkVfUE5HPXllcwoJIFBOR19D RkxBR1M9YEFTX0VDSE8oWyIkcG5nX2NmbGFncyJdKSB8IHNlZCAtZSAiJGVkaXRfY2ZsYWdz ImAKCSBMSUJQTkc9JHBuZ19sZGZsYWdzXSkKICAgICAgQ0ZMQUdTPSRTQVZFX0NGTEFHUwog ICAgICBMSUJTPSRTQVZFX0xJQlMKICAgICAgQUNfTVNHX1JFU1VMVChbJEhBVkVfUE5HXSkK ICAgIGZpCgogICAgIyAkTElCUE5HIHJlcXVpcmVzIGV4cGxpY2l0IC1seiBpbiBzb21lIGNh c2VzLgogICAgIyBXZSBkb24ndCBrbm93IHdoYXQgdGhvc2UgY2FzZXMgYXJlLCBleGFjdGx5 LCBzbyBwbGF5IGl0IHNhZmUgYW5kCiAgICAjIGFwcGVuZCAtbHogdG8gYW55IG5vbmVtcHR5 ICRMSUJQTkcsIHVubGVzcyB3ZSdyZSBhbHJlYWR5IHVzaW5nIExJQlouCiAgICBjYXNlICIg JExJQlBORyAiLCRMSUJaIGluCiAgICAgIConIC1seiAnKiwgfCAqJyAnLD8qKSA7OwogICAg ICAqKSBMSUJQTkc9IiRMSUJQTkcgLWx6IiA7OwogICAgZXNhYwogIGZpCmZpCmlmIHRlc3Qg JEhBVkVfUE5HID0geWVzOyB0aGVuCiAgQUNfREVGSU5FKFtIQVZFX1BOR10sIFsxXSwgW0Rl ZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBwbmcgbGlicmFyeS5dKQoKICBTQVZFX0NGTEFH Uz0kQ0ZMQUdTCiAgQ0ZMQUdTPSIkQ0ZMQUdTICRQTkdfQ0ZMQUdTIgogIEFDX0NIRUNLX0RF Q0woW3BuZ19sb25nam1wXSwKICAgIFtdLAogICAgW0FDX0RFRklORShbUE5HX0RFUFNUUlVD VF0sIFtdLAogICAgICAgW0RlZmluZSB0byBlbXB0eSB0byBzdXBwcmVzcyBkZXByZWNhdGlv biB3YXJuaW5ncyB3aGVuIGJ1aWxkaW5nCgl3aXRoIC0tZW5hYmxlLWdjYy13YXJuaW5ncyBh bmQgd2l0aCBsaWJwbmcgdmVyc2lvbnMgYmVmb3JlIDEuNSwKCXdoaWNoIGxhY2sgcG5nX2xv bmdqbXAuXSldLAogICAgW1sjaW5jbHVkZSA8cG5nLmg+CiAgICBdXSkKICBDRkxBR1M9JFNB VkVfQ0ZMQUdTCmZpCkFDX1NVQlNUKFtMSUJQTkddKQpBQ19TVUJTVChbUE5HX0NGTEFHU10p CgojIyMgVXNlIC1sdGlmZiBpZiBhdmFpbGFibGUsIHVubGVzcyAnLS13aXRoLXRpZmY9bm8n LgojIyMgbWluZ3czMiBkb2Vzbid0IHVzZSAtbHRpZmYsIHNpbmNlIGl0IGxvYWRzIHRoZSBs aWJyYXJ5IGR5bmFtaWNhbGx5LgpIQVZFX1RJRkY9bm8KTElCVElGRj0KaWYgdGVzdCAiJHtv cHN5c30iID0gIm1pbmd3MzIiOyB0aGVuCiAgaWYgdGVzdCAiJHt3aXRoX3RpZmZ9IiAhPSAi bm8iOyB0aGVuCiAgICBBQ19DSEVDS19IRUFERVIoW3RpZmZpby5oXSwgW0hBVkVfVElGRj15 ZXNdLCBbSEFWRV9USUZGPW5vXSkKICBmaQogIGlmIHRlc3QgIiR7SEFWRV9USUZGfSIgPSAi eWVzIjsgdGhlbgogICAgQUNfREVGSU5FKFtIQVZFX1RJRkZdLCBbMV0sCiAgICAgIFtEZWZp bmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgdGlmZiBsaWJyYXJ5ICgtbHRpZmYpLl0pCiAgZmkK ZWxpZiB0ZXN0ICIke0hBVkVfWDExfSIgPSAieWVzIiB8fCB0ZXN0ICIke0hBVkVfVzMyfSIg PSAieWVzIiBcCiAgICAgfHwgdGVzdCAiJHtIQVZFX05TfSIgPSAieWVzIiB8fCB0ZXN0ICIk e0hBVkVfQkVfQVBQfSIgPSAieWVzIiBcCiAgICAgfHwgdGVzdCAiJHdpbmRvd19zeXN0ZW0i ID0gInBndGsiOyB0aGVuCiAgaWYgdGVzdCAiJHt3aXRoX3RpZmZ9IiAhPSAibm8iOyB0aGVu CiAgICBBQ19DSEVDS19IRUFERVIoW3RpZmZpby5oXSwKICAgICAgW3RpZmZsaWJzPSItbHog LWxtIgogICAgICAjIEF0IGxlYXN0IG9uZSB0aWZmIHBhY2thZ2UgcmVxdWlyZXMgdGhlIGpw ZWcgbGlicmFyeS4KICAgICAgaWYgdGVzdCAiJHtIQVZFX0pQRUd9IiA9IHllczsgdGhlbiB0 aWZmbGlicz0iLWxqcGVnICR0aWZmbGlicyI7IGZpCiAgICAgIEFDX0NIRUNLX0xJQihbdGlm Zl0sIFtUSUZGR2V0VmVyc2lvbl0sIFtIQVZFX1RJRkY9eWVzXSwgW10sCglbJHRpZmZsaWJz XSldKQogIGZpCgogIGlmIHRlc3QgIiR7SEFWRV9USUZGfSIgPSAieWVzIjsgdGhlbgogICAg QUNfREVGSU5FKFtIQVZFX1RJRkZdLCBbMV0sCiAgICAgIFtEZWZpbmUgdG8gMSBpZiB5b3Ug aGF2ZSB0aGUgdGlmZiBsaWJyYXJ5ICgtbHRpZmYpLl0pCiAgICBkbmwgRklYTUUgLWx6IC1s bSwgYXMgcGVyIGxpYnBuZz8KICAgIExJQlRJRkY9LWx0aWZmCiAgZmkKZmkKQUNfU1VCU1Qo W0xJQlRJRkZdKQoKIyMjIFVzZSAtbGdpZiBvciAtbHVuZ2lmIGlmIGF2YWlsYWJsZSwgdW5s ZXNzICctLXdpdGgtZ2lmPW5vJy4KIyMjIG1pbmd3MzIgZG9lc24ndCB1c2UgLWxnaWYvLWx1 bmdpZiwgc2luY2UgaXQgbG9hZHMgdGhlIGxpYnJhcnkgZHluYW1pY2FsbHkuCkhBVkVfR0lG PW5vCkxJQkdJRj0KaWYgdGVzdCAiJHtvcHN5c30iID0gIm1pbmd3MzIiOyB0aGVuCiAgaWYg dGVzdCAiJHt3aXRoX2dpZn0iICE9ICJubyI7IHRoZW4KICAgIEFDX0NIRUNLX0hFQURFUihb Z2lmX2xpYi5oXSwgW0hBVkVfR0lGPXllc10sIFtIQVZFX0dJRj1ub10pCiAgZmkKICBpZiB0 ZXN0ICIke0hBVkVfR0lGfSIgPSAieWVzIjsgdGhlbgogICAgQUNfREVGSU5FKFtIQVZFX0dJ Rl0sIFsxXSwKICAgICAgW0RlZmluZSB0byAxIGlmIHlvdSBoYXZlIGEgZ2lmIChvciB1bmdp ZikgbGlicmFyeS5dKQogIGZpCmVsaWYgdGVzdCAiJHtIQVZFX1gxMX0iID0gInllcyIgJiYg dGVzdCAiJHt3aXRoX2dpZn0iICE9ICJubyIgXAogICAgICAgIHx8IHRlc3QgIiR7SEFWRV9X MzJ9IiA9ICJ5ZXMiIHx8IHRlc3QgIiR7SEFWRV9OU30iID0gInllcyIgXAoJfHwgdGVzdCAi JHtIQVZFX0JFX0FQUH0iID0gInllcyIgfHwgdGVzdCAiJHdpbmRvd19zeXN0ZW0iID0gInBn dGsiIFwKCSYmIHRlc3QgIiR7d2l0aF9naWZ9IiAhPSAibm8iOyB0aGVuCiAgQUNfQ0hFQ0tf SEVBREVSKFtnaWZfbGliLmhdLAojIEVHaWZQdXRFeHRlbnNpb25MYXN0IG9ubHkgZXhpc3Rz IGZyb20gdmVyc2lvbiBsaWJ1bmdpZi00LjEuMGIxLgojIEVhcmxpZXIgdmVyc2lvbnMgY2Fu IGNyYXNoIEVtYWNzLCBidXQgdmVyc2lvbiA1LjAgcmVtb3ZlcyBFR2lmUHV0RXh0ZW5zaW9u TGFzdC4KICAgIFtBQ19DSEVDS19MSUIoW2dpZl0sIFtHaWZNYWtlTWFwT2JqZWN0XSwgW0hB VkVfR0lGPXllc10sCglbQUNfQ0hFQ0tfTElCKFtnaWZdLCBbRUdpZlB1dEV4dGVuc2lvbkxh c3RdLAoJICAgW0hBVkVfR0lGPXllc10sCgkgICBbSEFWRV9HSUY9bWF5YmVdKV0pXSkKCiAg aWYgdGVzdCAiJEhBVkVfR0lGIiA9IHllczsgdGhlbgogICAgTElCR0lGPS1sZ2lmCiAgZWxp ZiB0ZXN0ICIkSEFWRV9HSUYiID0gbWF5YmU7IHRoZW4KIyBJZiBnaWZfbGliLmggYnV0IG5v IGxpYmdpZiwgdHJ5IGxpYnVuZ2lmLgogICAgQUNfQ0hFQ0tfTElCKFt1bmdpZl0sIFtFR2lm UHV0RXh0ZW5zaW9uTGFzdF0sCiAgICAgIFtIQVZFX0dJRj15ZXNdLAogICAgICBbSEFWRV9H SUY9bm9dKQogICAgdGVzdCAiJEhBVkVfR0lGIiA9IHllcyAmJiBMSUJHSUY9LWx1bmdpZgog IGZpCgogIGlmIHRlc3QgIiR7SEFWRV9HSUZ9IiA9ICJ5ZXMiOyB0aGVuCiAgICBBQ19ERUZJ TkUoW0hBVkVfR0lGXSwgWzFdLAogICAgICBbRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgYSBn aWYgKG9yIHVuZ2lmKSBsaWJyYXJ5Ll0pCiAgZmkKZmkKQUNfU1VCU1QoW0xJQkdJRl0pCgpk bmwgQ2hlY2sgZm9yIHJlcXVpcmVkIGxpYnJhcmllcy4KTUlTU0lORz0KV0lUSF9JRkFWQUlM QUJMRT0KaWYgdGVzdCAiJHtIQVZFX1gxMX0iID0gInllcyI7IHRoZW4KICBjYXNlICR3aXRo X3hwbSwkSEFWRV9YUE0gaW4KICAgIG5vLCogfCBpZmF2YWlsYWJsZSwqIHwgKix5ZXMpIDs7 CiAgICAqKSBNSVNTSU5HPSJsaWJYcG0iCiAgICAgICBXSVRIX0lGQVZBSUxBQkxFPSItLXdp dGgteHBtPWlmYXZhaWxhYmxlIjs7CiAgZXNhYwogIGNhc2UgJHdpdGhfanBlZywkSEFWRV9K UEVHIGluCiAgICBubywqIHwgaWZhdmFpbGFibGUsKiB8ICoseWVzKSA7OwogICAgKikgTUlT U0lORz0iJE1JU1NJTkcgbGlianBlZyIKICAgICAgIFdJVEhfSUZBVkFJTEFCTEU9IiRXSVRI X0lGQVZBSUxBQkxFIC0td2l0aC1qcGVnPWlmYXZhaWxhYmxlIjs7CiAgZXNhYwogIGNhc2Ug JHdpdGhfcG5nLCRIQVZFX1BORyBpbgogICAgbm8sKiB8IGlmYXZhaWxhYmxlLCogfCAqLHll cykgOzsKICAgICopIE1JU1NJTkc9IiRNSVNTSU5HIGxpYnBuZyIKICAgICAgIFdJVEhfSUZB VkFJTEFCTEU9IiRXSVRIX0lGQVZBSUxBQkxFIC0td2l0aC1wbmc9aWZhdmFpbGFibGUiOzsK ICBlc2FjCiAgY2FzZSAkd2l0aF9naWYsJEhBVkVfR0lGIGluCiAgICBubywqIHwgaWZhdmFp bGFibGUsKiB8ICoseWVzKSA7OwogICAgKikgTUlTU0lORz0iJE1JU1NJTkcgbGliZ2lmL2xp YnVuZ2lmIgogICAgICAgV0lUSF9JRkFWQUlMQUJMRT0iJFdJVEhfSUZBVkFJTEFCTEUgLS13 aXRoLWdpZj1pZmF2YWlsYWJsZSI7OwogIGVzYWMKICBjYXNlICR3aXRoX3RpZmYsJEhBVkVf VElGRiBpbgogICAgbm8sKiB8IGlmYXZhaWxhYmxlLCogfCAqLHllcykgOzsKICAgICopIE1J U1NJTkc9IiRNSVNTSU5HIGxpYnRpZmYiCiAgICAgICBXSVRIX0lGQVZBSUxBQkxFPSIkV0lU SF9JRkFWQUlMQUJMRSAtLXdpdGgtdGlmZj1pZmF2YWlsYWJsZSI7OwogIGVzYWMKZmkKY2Fz ZSAkd2l0aF9nbnV0bHMsJEhBVkVfR05VVExTIGluCiAgbm8sKiB8IGlmYXZhaWxhYmxlLCog fCAqLHllcykgOzsKICAqKSBNSVNTSU5HPSIkTUlTU0lORyBnbnV0bHMiCiAgICAgV0lUSF9J RkFWQUlMQUJMRT0iJFdJVEhfSUZBVkFJTEFCTEUgLS13aXRoLWdudXRscz1pZmF2YWlsYWJs ZSI7Owplc2FjCmNhc2UgJHdpdGhfanNvbiwkSEFWRV9KU09OIGluCiAgbm8sKiB8IGlmYXZh aWxhYmxlLCogfCAqLHllcykgOzsKICAqKSBNSVNTSU5HPSIkTUlTU0lORyBqc29uIgogICAg IFdJVEhfSUZBVkFJTEFCTEU9IiRXSVRIX0lGQVZBSUxBQkxFIC0td2l0aC1qc29uPWlmYXZh aWxhYmxlIjs7CmVzYWMKY2FzZSAkd2l0aF90cmVlX3NpdHRlciwkSEFWRV9UUkVFX1NJVFRF UiBpbgogIG5vLCogfCBpZmF2YWlsYWJsZSwqIHwgKix5ZXMpIDs7CiAgKikgTUlTU0lORz0i JE1JU1NJTkcgdHJlZS1zaXR0ZXIiCiAgICAgV0lUSF9JRkFWQUlMQUJMRT0iJFdJVEhfSUZB VkFJTEFCTEUgLS13aXRoLXRyZWUtc2l0dGVyPWlmYXZhaWxhYmxlIjs7CmVzYWMKCmlmIHRl c3QgIlgke01JU1NJTkd9IiAhPSBYOyB0aGVuCiAgIyBJZiB3ZSBoYXZlIGEgbWlzc2luZyBs aWJyYXJ5LCBhbmQgd2UgZG9uJ3QgaGF2ZSBwa2ctY29uZmlnIGluc3RhbGxlZCwKICAjIHRo ZSBtaXNzaW5nIHBrZy1jb25maWcgbWF5IGJlIHRoZSByZWFzb24uICBHaXZlIHRoZSB1c2Vy IGEgaGludC4KICBpZiB0ZXN0ICJYJHtQS0dfQ09ORklHfSIgPSBYOyB0aGVuCiAgICBBQ19N U0dfV0FSTihbVW5hYmxlIHRvIGxvY2F0ZSBhIHVzYWJsZSBwa2ctY29uZmlnXSkKICBmaQog IEFDX01TR19FUlJPUihbVGhlIGZvbGxvd2luZyByZXF1aXJlZCBsaWJyYXJpZXMgd2VyZSBu b3QgZm91bmQ6CiAgICAkTUlTU0lORwpNYXliZSBzb21lIGRldmVsb3BtZW50IGxpYnJhcmll cy9wYWNrYWdlcyBhcmUgbWlzc2luZz8KVG8gYnVpbGQgYW55d2F5LCBnaXZlOgogICAgJFdJ VEhfSUZBVkFJTEFCTEUKYXMgb3B0aW9ucyB0byBjb25maWd1cmUuXSkKZmkKCiMjIyBVc2Ug LWxncG0gaWYgYXZhaWxhYmxlLCB1bmxlc3MgJy0td2l0aC1ncG09bm8nLgpIQVZFX0dQTT1u bwpMSUJHUE09CmlmIHRlc3QgIiR7d2l0aF9ncG19IiAhPSAibm8iOyB0aGVuCiAgQUNfQ0hF Q0tfSEVBREVSKFtncG0uaF0sCiAgICBbQUNfQ0hFQ0tfTElCKFtncG1dLCBbR3BtX09wZW5d LCBbSEFWRV9HUE09eWVzXSldKQoKICBpZiB0ZXN0ICIke0hBVkVfR1BNfSIgPSAieWVzIjsg dGhlbgogICAgQUNfREVGSU5FKFtIQVZFX0dQTV0sIFsxXSwKICAgICAgW0RlZmluZSB0byAx IGlmIHlvdSBoYXZlIHRoZSBncG0gbGlicmFyeSAoLWxncG0pLl0pCiAgICBMSUJHUE09LWxn cG0KICBmaQpmaQpBQ19TVUJTVChbTElCR1BNXSkKCmRubCBDaGVjayBmb3IgbWFsbG9jL21h bGxvYy5oIG9uIGRhcndpbgpBQ19DSEVDS19IRUFERVJTX09OQ0UoW21hbGxvYy9tYWxsb2Mu aF0pCgpHTlVTVEVQX0NGTEFHUz0KIyMjIFVzZSBOZVhUc3RlcCBBUEkgdG8gaW1wbGVtZW50 IEdVSS4KaWYgdGVzdCAiJHtIQVZFX05TfSIgPSAieWVzIjsgdGhlbgogIEFDX0RFRklORShb SEFWRV9OU10sIFsxXSwKICAgIFtEZWZpbmUgdG8gMSBpZiB5b3UgYXJlIHVzaW5nIHRoZSBO ZVhUc3RlcCBBUEksCiAgICAgZWl0aGVyIEdOVXN0ZXAgb3IgQ29jb2Egb24gbWFjT1MuXSkK ICBpZiB0ZXN0ICIke05TX0lNUExfQ09DT0F9IiA9ICJ5ZXMiOyB0aGVuCiAgICBBQ19ERUZJ TkUoW05TX0lNUExfQ09DT0FdLCBbMV0sCiAgICAgIFtEZWZpbmUgdG8gMSBpZiB5b3UgYXJl IHVzaW5nIE5TIHdpbmRvd2luZyB1bmRlciBtYWNPUy5dKQogIGZpCiAgaWYgdGVzdCAiJHtO U19JTVBMX0dOVVNURVB9IiA9ICJ5ZXMiOyB0aGVuCiAgICBBQ19ERUZJTkUoW05TX0lNUExf R05VU1RFUF0sIFsxXSwKICAgICAgW0RlZmluZSB0byAxIGlmIHlvdSBhcmUgdXNpbmcgTlMg d2luZG93aW5nIHVuZGVyIEdOVXN0ZXAuXSkKICAgIGlmIHRlc3QgJE5TX0dOVVNURVBfQ09O RklHICE9IHllczsgdGhlbgogICAgICAjIFNlZSBhbHNvIC5tLm8gcnVsZSBpbiBzcmMvTWFr ZWZpbGUuaW4uICAqLwogICAgICAjIEZJWE1FOiBhcmUgYWxsIHRoZXNlIGZsYWdzIHJlYWxs eSBuZWVkZWQ/ICBEb2N1bWVudCBoZXJlIHdoeS4gICovCiAgICAgIEdOVVNURVBfQ0ZMQUdT PSItRF9SRUVOVFJBTlQgLWZQSUMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLUkke0dOVVNURVBf U1lTVEVNX0hFQURFUlN9ICR7R05VU1RFUF9MT0NBTF9IRUFERVJTfSIKICAgICAgIyMgRXh0 cmEgQ0ZMQUdTIGFwcGxpZWQgdG8gc3JjLyoubSBmaWxlcy4KICAgICAgR05VX09CSkNfQ0ZM QUdTPSIkR05VX09CSkNfQ0ZMQUdTIC1mZ251LXJ1bnRpbWUgLVduby1pbXBvcnQgLWZjb25z dGFudC1zdHJpbmctY2xhc3M9TlNDb25zdGFudFN0cmluZyAtREdOVVNURVBfQkFTRV9MSUJS QVJZPTEgLURHTlVfR1VJX0xJQlJBUlk9MSAtREdOVV9SVU5USU1FPTEgLURHU1dBUk4gLURH U0RJQUdOT1NFIgogICAgZmkKICBmaQogIE9USEVSX0ZJTEVTPW5zLWFwcApmaQoKIyMjIFVz ZSBzZXNzaW9uIG1hbmFnZW1lbnQgKC1sU00gLWxJQ0UpIGlmIGF2YWlsYWJsZQpIQVZFX1hf U009bm8KTElCWFNNPQppZiB0ZXN0ICIke0hBVkVfWDExfSIgPSAieWVzIjsgdGhlbgogIEFD X0NIRUNLX0hFQURFUihbWDExL1NNL1NNbGliLmhdLAogICAgW0FDX0NIRUNLX0xJQihbU01d LCBbU21jT3BlbkNvbm5lY3Rpb25dLCBbSEFWRV9YX1NNPXllc10sIFtdLCBbLWxJQ0VdKV0p CgogIGlmIHRlc3QgIiR7SEFWRV9YX1NNfSIgPSAieWVzIjsgdGhlbgogICAgQUNfREVGSU5F KFtIQVZFX1hfU01dLCBbMV0sCiAgICAgIFtEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUg U00gbGlicmFyeSAoLWxTTSkuXSkKICAgIExJQlhTTT0iLWxTTSAtbElDRSIKICBmaQpmaQpB Q19TVUJTVChbTElCWFNNXSkKCiMjIyBVc2UgWFJhbmRyICgtbFhyYW5kcikgaWYgYXZhaWxh YmxlCkhBVkVfWFJBTkRSPW5vCmlmIHRlc3QgIiR7SEFWRV9YMTF9IiA9ICJ5ZXMiOyB0aGVu CiAgWFJBTkRSX1JFUVVJUkVEPTEuMi4yCiAgWFJBTkRSX01PRFVMRVM9InhyYW5kciA+PSAk WFJBTkRSX1JFUVVJUkVEIgogIEVNQUNTX0NIRUNLX01PRFVMRVMoW1hSQU5EUl0sIFskWFJB TkRSX01PRFVMRVNdKQogIGlmIHRlc3QgJEhBVkVfWFJBTkRSID0gbm87IHRoZW4KICAgICMg VGVzdCBvbGQgd2F5IGluIGNhc2UgcGtnLWNvbmZpZyBkb2Vzbid0IGhhdmUgaXQgKG9sZGVy IG1hY2hpbmVzKS4KICAgICMgSW5jbHVkZSBYcmVuZGVyLmggYnkgaGFuZCB0byB3b3JrIGFy b3VuZCBidWcgaW4gb2xkZXIgWHJhbmRyLmgKICAgICMgKGUuZy4gUkhFTDUpIGFuZCBzaWxl bmNlIChoYXJtbGVzcykgY29uZmlndXJlIHdhcm5pbmcgKGJ1ZyMxODQ2NSkuCiAgICBBQ19D SEVDS19IRUFERVIoW1gxMS9leHRlbnNpb25zL1hyYW5kci5oXSwKICAgICAgW0FDX0NIRUNL X0xJQihbWHJhbmRyXSwgW1hSUkdldFNjcmVlblJlc291cmNlc10sIFtIQVZFX1hSQU5EUj15 ZXNdKV0sCiAgICAgIFtdLCBbQUNfSU5DTFVERVNfREVGQVVMVAojaW5jbHVkZSA8WDExL2V4 dGVuc2lvbnMvWHJlbmRlci5oPl0pCiAgICBpZiB0ZXN0ICRIQVZFX1hSQU5EUiA9IHllczsg dGhlbgogICAgICBYUkFORFJfTElCUz0tbFhyYW5kcgogICAgZmkKICBmaQogIGlmIHRlc3Qg JEhBVkVfWFJBTkRSID0geWVzOyB0aGVuCiAgICBBQ19ERUZJTkUoW0hBVkVfWFJBTkRSXSwg WzFdLAogICAgICBbRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIFhSYW5kciBleHRlbnNp b24uXSkKICBmaQpmaQpBQ19TVUJTVChbWFJBTkRSX0NGTEFHU10pCkFDX1NVQlNUKFtYUkFO RFJfTElCU10pCgojIyMgVXNlIFhpbmVyYW1hICgtbFhpbmVyYW1hKSBpZiBhdmFpbGFibGUK SEFWRV9YSU5FUkFNQT1ubwppZiB0ZXN0ICIke0hBVkVfWDExfSIgPSAieWVzIjsgdGhlbgog IFhJTkVSQU1BX1JFUVVJUkVEPTEuMC4yCiAgWElORVJBTUFfTU9EVUxFUz0ieGluZXJhbWEg Pj0gJFhJTkVSQU1BX1JFUVVJUkVEIgogIEVNQUNTX0NIRUNLX01PRFVMRVMoW1hJTkVSQU1B XSwgWyRYSU5FUkFNQV9NT0RVTEVTXSkKICBpZiB0ZXN0ICRIQVZFX1hJTkVSQU1BID0gbm87 IHRoZW4KICAgICMgVGVzdCBvbGQgd2F5IGluIGNhc2UgcGtnLWNvbmZpZyBkb2Vzbid0IGhh dmUgaXQgKG9sZGVyIG1hY2hpbmVzKS4KICAgIEFDX0NIRUNLX0hFQURFUihbWDExL2V4dGVu c2lvbnMvWGluZXJhbWEuaF0sCiAgICAgIFtBQ19DSEVDS19MSUIoW1hpbmVyYW1hXSwgW1hp bmVyYW1hUXVlcnlFeHRlbnNpb25dLAoJIFtIQVZFX1hJTkVSQU1BPXllc10pXSkKICAgIGlm IHRlc3QgJEhBVkVfWElORVJBTUEgPSB5ZXM7IHRoZW4KICAgICAgWElORVJBTUFfTElCUz0t bFhpbmVyYW1hCiAgICBmaQogIGZpCiAgaWYgdGVzdCAkSEFWRV9YSU5FUkFNQSA9IHllczsg dGhlbgogICAgQUNfREVGSU5FKFtIQVZFX1hJTkVSQU1BXSwgWzFdLAogICAgICBbRGVmaW5l IHRvIDEgaWYgeW91IGhhdmUgdGhlIFhpbmVyYW1hIGV4dGVuc2lvbi5dKQogIGZpCmZpCkFD X1NVQlNUKFtYSU5FUkFNQV9DRkxBR1NdKQpBQ19TVUJTVChbWElORVJBTUFfTElCU10pCgoj IyMgVXNlIFhmaXhlcyAoLWxYZml4ZXMpIGlmIGF2YWlsYWJsZQpIQVZFX1hGSVhFUz1ubwpp ZiB0ZXN0ICIke0hBVkVfWDExfSIgPSAieWVzIjsgdGhlbgogIFhGSVhFU19SRVFVSVJFRD0x LjAuMAogIFhGSVhFU19NT0RVTEVTPSJ4Zml4ZXMgPj0gJFhGSVhFU19SRVFVSVJFRCIKICBF TUFDU19DSEVDS19NT0RVTEVTKFtYRklYRVNdLCBbJFhGSVhFU19NT0RVTEVTXSkKICBpZiB0 ZXN0ICRIQVZFX1hGSVhFUyA9IG5vOyB0aGVuCiAgICAjIFRlc3Qgb2xkIHdheSBpbiBjYXNl IHBrZy1jb25maWcgZG9lc24ndCBoYXZlIGl0IChvbGRlciBtYWNoaW5lcykuCiAgICBBQ19D SEVDS19IRUFERVIoW1gxMS9leHRlbnNpb25zL1hmaXhlcy5oXSwKICAgICAgW0FDX0NIRUNL X0xJQihbWGZpeGVzXSwgW1hGaXhlc0hpZGVDdXJzb3JdLCBbSEFWRV9YRklYRVM9eWVzXSld KQogICAgaWYgdGVzdCAkSEFWRV9YRklYRVMgPSB5ZXM7IHRoZW4KICAgICAgWEZJWEVTX0xJ QlM9LWxYZml4ZXMKICAgIGZpCiAgZmkKICBpZiB0ZXN0ICRIQVZFX1hGSVhFUyA9IHllczsg dGhlbgogICAgQUNfREVGSU5FKFtIQVZFX1hGSVhFU10sIFsxXSwKICAgICAgW0RlZmluZSB0 byAxIGlmIHlvdSBoYXZlIHRoZSBYZml4ZXMgZXh0ZW5zaW9uLl0pCiAgZmkKZmkKQUNfU1VC U1QoW1hGSVhFU19DRkxBR1NdKQpBQ19TVUJTVChbWEZJWEVTX0xJQlNdKQoKIyMgVXNlIFhJ bnB1dCAyLjAgaWYgYXZhaWxhYmxlCkhBVkVfWElOUFVUMj1ubwppZiB0ZXN0ICIke0hBVkVf WDExfSIgPSAieWVzIiAmJiB0ZXN0ICIke3dpdGhfeGlucHV0Mn0iICE9ICJubyI7IHRoZW4K ICAgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyhbWElOUFVUXSwgW3hpXSkKICAgaWYgdGVzdCAkSEFW RV9YSU5QVVQgPSB5ZXM7IHRoZW4KICAgICAjIE5vdyBjaGVjayBmb3IgWElucHV0Mi5oCiAg ICAgQUNfQ0hFQ0tfSEVBREVSKFtYMTEvZXh0ZW5zaW9ucy9YSW5wdXQyLmhdLAogICAgICAg W0FDX0NIRUNLX0xJQihbWGldLCBbWElHcmFiQnV0dG9uXSwgW0hBVkVfWElOUFVUMj15ZXNd KV0pCiAgIGZpCiAgIGlmIHRlc3QgJEhBVkVfWElOUFVUMiA9IHllczsgdGhlbgogICAgIEFD X0RFRklORShbSEFWRV9YSU5QVVQyXSwgWzFdLAogICAgICAgW0RlZmluZSB0byAxIGlmIHRo ZSBYIElucHV0IEV4dGVuc2lvbiB2ZXJzaW9uIDIuMCBvciBsYXRlciBpcyBwcmVzZW50Ll0p CiAgICAgaWYgdGVzdCAiJFVTRV9HVEtfVE9PTEtJVCIgPSAiR1RLMiI7IHRoZW4KICAgICAg IEFDX01TR19XQVJOKFtZb3UgYXJlIGJ1aWxkaW5nIEVtYWNzIHdpdGggR1RLKyAyIGFuZCB0 aGUgWCBJbnB1dCBFeHRlbnNpb24gdmVyc2lvbiAyLgpUaGlzIG1pZ2h0IGxlYWQgdG8gcHJv YmxlbXMgaWYgeW91ciB2ZXJzaW9uIG9mIEdUSysgaXMgbm90IGJ1aWx0IHdpdGggc3VwcG9y dCBmb3IgWElucHV0IDIuXSkKICAgICBmaQoKICAgICAjIE5vdyBjaGVjayBmb3Igc29tZSBt ZW1iZXJzICh3aGljaCB1c2VkIGluIGNvbmp1bmN0aW9uIHdpdGgKICAgICAjIHByb3RvY29s IGRlZmluaXRpb25zKSBjYW4gYmUgdXNlZCB0byBkZXRlcm1pbmUgdGhlIHZlcnNpb24gb2YK ICAgICAjIFhJbnB1dCBzdXBwb3J0ZWQuCiAgICAgQUNfQ0hFQ0tfTUVNQkVSUyhbWElTY3Jv bGxDbGFzc0luZm8udHlwZSwgWElUb3VjaENsYXNzSW5mby50eXBlLAogICAgICAgWElCYXJy aWVyUmVsZWFzZVBvaW50ZXJJbmZvLmRldmljZWlkLCBYSUdlc3R1cmVDbGFzc0luZm8udHlw ZV0sCiAgICAgICBbXSwgW10sIFsjaW5jbHVkZSA8WDExL2V4dGVuc2lvbnMvWElucHV0Mi5o Pl0pCiAgIGZpCmZpCkFDX1NVQlNUKFtYSU5QVVRfQ0ZMQUdTXSkKQUNfU1VCU1QoW1hJTlBV VF9MSUJTXSkKClhTWU5DX0xJQlM9ClhTWU5DX0NGTEFHUz0KSEFWRV9YU1lOQz1ubwppZiB0 ZXN0ICIke0hBVkVfWDExfSIgPSAieWVzIjsgdGhlbgogICBBQ19DSEVDS19IRUFERVIoW1gx MS9leHRlbnNpb25zL3N5bmMuaF0sCiAgICAgW0FDX0NIRUNLX0xJQihbWGV4dF0sIFtYU3lu Y1F1ZXJ5RXh0ZW5zaW9uXSwgW0hBVkVfWFNZTkM9eWVzXSldLAogICAgIFtdLCBbI2luY2x1 ZGUgPFgxMS9YbGliLmg+XSkKCiAgaWYgdGVzdCAiJHtIQVZFX1hTWU5DfSIgPSAieWVzIjsg dGhlbgogICAgQUNfREVGSU5FKFtIQVZFX1hTWU5DXSwgWzFdLAogICAgICBbRGVmaW5lIHRv IDEgaWYgdGhlIFggU3luY2hyb25pemF0aW9uIEV4dGVuc2lvbiBpcyBhdmFpbGFibGUuXSkK ICAgIFhTWU5DX0xJQlM9Ii1sWGV4dCIKICAgIE9MRExJQlM9IiRMSUJTIgogICAgTElCUz0i LWxYZXh0ICRMSUJTIiAjIFNldCB0aGlzIHRlbXBvcmFyaWx5IGZvciBBQ19DSEVDS19GVU5D CiAgICBBQ19DSEVDS19GVU5DUyhbWFN5bmNUcmlnZ2VyRmVuY2VdKSAjIENoZWNrIGZvciB2 ZXJzaW9uIDMuMQogICAgTElCUz0iJE9MRExJQlMiCiAgZmkKZmkKQUNfU1VCU1QoW1hTWU5D X0xJQlNdKQpBQ19TVUJTVChbWFNZTkNfQ0ZMQUdTXSkKCiMjIyBVc2UgWGRiZSAoLWxYZGJl KSBpZiBhdmFpbGFibGUKSEFWRV9YREJFPW5vCmlmIHRlc3QgIiR7SEFWRV9YMTF9IiA9ICJ5 ZXMiOyB0aGVuCiAgaWYgdGVzdCAiJHt3aXRoX3hkYmV9IiAhPSAibm8iOyB0aGVuCiAgICBB Q19DSEVDS19IRUFERVIoW1gxMS9leHRlbnNpb25zL1hkYmUuaF0sCiAgICAgIFtBQ19DSEVD S19MSUIoW1hleHRdLCBbWGRiZUFsbG9jYXRlQmFja0J1ZmZlck5hbWVdLCBbSEFWRV9YREJF PXllc10pXSwKICAgICAgW10sCiAgICAgIFsjaW5jbHVkZSA8WDExL1hsaWIuaD4KICAgICAg XSkKICBmaQogIGlmIHRlc3QgJEhBVkVfWERCRSA9IHllczsgdGhlbgogICAgWERCRV9MSUJT PS1sWGV4dAogIGZpCiAgaWYgdGVzdCAkSEFWRV9YREJFID0geWVzOyB0aGVuCiAgICBBQ19E RUZJTkUoW0hBVkVfWERCRV0sIFsxXSwgW0RlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBY ZGJlIGV4dGVuc2lvbi5dKQogIGZpCmZpCkFDX1NVQlNUKFtYREJFX0NGTEFHU10pCkFDX1NV QlNUKFtYREJFX0xJQlNdKQoKIyMjIFVzZSB0aGUgTm9ucmVjdGFuZ3VsYXIgV2luZG93IFNo YXBlIGV4dGVuc2lvbiBpZiBhdmFpbGFibGUuCkhBVkVfWFNIQVBFPW5vCkhBVkVfWENCX1NI QVBFPW5vCmlmIHRlc3QgIiR7SEFWRV9YMTF9IiA9ICJ5ZXMiOyB0aGVuCiAgQUNfQ0hFQ0tf SEVBREVSKFtYMTEvZXh0ZW5zaW9ucy9zaGFwZS5oXSwKICAgIFtBQ19DSEVDS19MSUIoW1hl eHRdLCBbWFNoYXBlUXVlcnlWZXJzaW9uXSwgW0hBVkVfWFNIQVBFPXllc10pXSwKICAgIFtd LAogICAgWyNpbmNsdWRlIDxYMTEvZXh0ZW5zaW9ucy9zaGFwZS5oPgogICAgXSkKICBpZiB0 ZXN0ICRIQVZFX1hTSEFQRSA9IHllczsgdGhlbgogICAgWFNIQVBFX0xJQlM9LWxYZXh0CiAg ICBBQ19DSEVDS19IRUFERVIoW3hjYi9zaGFwZS5oXSwKICAgICAgW0FDX0NIRUNLX0xJQihb eGNiLXNoYXBlXSwgW3hjYl9zaGFwZV9jb21iaW5lXSwgW0hBVkVfWENCX1NIQVBFPXllc10p XSwKICAgICAgW10sCiAgICAgIFsjaW5jbHVkZSA8eGNiL3NoYXBlLmg+XSkKCiAgICBpZiB0 ZXN0ICRIQVZFX1hDQl9TSEFQRSA9IHllcyAmJiB0ZXN0ICIkWENCX0xJQlMiICE9ICIiOyB0 aGVuCiAgICAgIFhTSEFQRV9MSUJTPSIkWFNIQVBFX0xJQlMgLWx4Y2Itc2hhcGUiCiAgICAg IEFDX0RFRklORShbSEFWRV9YQ0JfU0hBUEVdLCBbMV0sCglbRGVmaW5lIHRvIDEgaWYgWENC IHN1cHBvcnRzIHRoZQoJIE5vbnJlY3Rhbmd1bGFyIFdpbmRvdyBTaGFwZSBleHRlbnNpb24u XSkKICAgIGZpCiAgZmkKICBpZiB0ZXN0ICRIQVZFX1hTSEFQRSA9IHllczsgdGhlbgogICAg QUNfREVGSU5FKFtIQVZFX1hTSEFQRV0sIFsxXSwKICAgICAgW0RlZmluZSB0byAxIGlmIHlv dSBoYXZlIHRoZSBOb25yZWN0YW5ndWxhciBXaW5kb3cgU2hhcGUgZXh0ZW5zaW9uLl0pCiAg ZmkKZmkKQUNfU1VCU1QoW1hTSEFQRV9DRkxBR1NdKQpBQ19TVUJTVChbWFNIQVBFX0xJQlNd KQoKIyMjIFVzZSBYY29tcG9zaXRlICgtbFhjb21wb3NpdGUpIGlmIGF2YWlsYWJsZQpIQVZF X1hDT01QT1NJVEU9bm8KaWYgdGVzdCAiJHtIQVZFX1gxMX0iID0gInllcyI7IHRoZW4KICBB Q19DSEVDS19IRUFERVIoW1gxMS9leHRlbnNpb25zL1hjb21wb3NpdGUuaF0sCiAgICBbQUNf Q0hFQ0tfTElCKFtYY29tcG9zaXRlXSwgW1hDb21wb3NpdGVSZWRpcmVjdFdpbmRvd10sCiAg ICAgICBbSEFWRV9YQ09NUE9TSVRFPXllc10pXSwKICAgIFtdLAogICAgWyNpbmNsdWRlIDxY MTEvZXh0ZW5zaW9ucy9YY29tcG9zaXRlLmg+CiAgICBdKQogIGlmIHRlc3QgJEhBVkVfWENP TVBPU0lURSA9IHllczsgdGhlbgogICAgWENPTVBPU0lURV9MSUJTPS1sWGNvbXBvc2l0ZQog IGZpCiAgaWYgdGVzdCAkSEFWRV9YQ09NUE9TSVRFID0geWVzOyB0aGVuCiAgICBBQ19ERUZJ TkUoW0hBVkVfWENPTVBPU0lURV0sIFsxXSwKICAgICAgW0RlZmluZSB0byAxIGlmIHlvdSBo YXZlIHRoZSBYQ09NUE9TSVRFIGV4dGVuc2lvbi5dKQogIGZpCmZpCkFDX1NVQlNUKFtYQ09N UE9TSVRFX0NGTEFHU10pCkFDX1NVQlNUKFtYQ09NUE9TSVRFX0xJQlNdKQoKIyMjIFVzZSBs aWJ4bWwgKC1seG1sMikgaWYgYXZhaWxhYmxlCiMjIyBtaW5ndzMyIGRvZXNuJ3QgdXNlIC1s eG1sMiwgc2luY2UgaXQgbG9hZHMgdGhlIGxpYnJhcnkgZHluYW1pY2FsbHkuCkhBVkVfTElC WE1MMj1ubwppZiB0ZXN0ICIke3dpdGhfeG1sMn0iICE9ICJubyI7IHRoZW4KICAjIyMgSSdt IG5vdCBzdXJlIHdoYXQgdGhlIHZlcnNpb24gbnVtYmVyIHNob3VsZCBiZSwgc28gSSBqdXN0 IGd1ZXNzZWQuCiAgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyhbTElCWE1MMl0sIFtsaWJ4bWwtMi4w ID4gMi42LjE3XSkKICAjIEJ1aWx0LWluIGxpYnhtbDIgb24gT1MgWCAxMC44IGxhY2tzIGxp YnhtbC0yLjAucGMuCiAgaWYgdGVzdCAiJHtIQVZFX0xJQlhNTDJ9IiAhPSAieWVzIiAmJiB0 ZXN0ICIkb3BzeXMiID0gImRhcndpbiI7IHRoZW4KICAgIFNBVkVfQ1BQRkxBR1M9IiRDUFBG TEFHUyIKICAgIGlmIHRlc3QgLXogIiR4Y3Nka2RpciIgLWEgLW4gIiRYQ1JVTiIgLWEgISAt ZCAvdXNyL2luY2x1ZGU7IHRoZW4KICAgICAgZG5sIC91c3IvaW5jbHVkZSBpcyBub3QgZm91 bmQuICBUcnkgWGNvZGUgU0RLIGRpciBpZiBpdCBpcyBzYW5lLgogICAgICB4Y3Nka2Rpcj1g JFhDUlVOIC0tc2hvdy1zZGstcGF0aCAyPi9kZXYvbnVsbGAKICAgICAgY2FzZSAkeGNzZGtk aXIgaW4KCSpbW1xcXCJcI1wkXCZcJ1xgJGFtX2xmXCBcCV1dKikKCXhjc2RrZGlyPSIiIDs7 CiAgICAgIGVzYWMKICAgIGZpCiAgICBDUFBGTEFHUz0iJENQUEZMQUdTIC1pc3lzdGVtJHt4 Y3Nka2Rpcn0vdXNyL2luY2x1ZGUvbGlieG1sMiIKICAgIEFDX0NIRUNLX0hFQURFUihbbGli eG1sL0hUTUxwYXJzZXIuaF0sCiAgICAgIFtBQ19DSEVDS19ERUNMKFtIVE1MX1BBUlNFX1JF Q09WRVJdLCBbSEFWRV9MSUJYTUwyPXllc10sIFtdLAoJCSAgICAgWyNpbmNsdWRlIDxsaWJ4 bWwvSFRNTHBhcnNlci5oPl0pXSkKICAgIENQUEZMQUdTPSIkU0FWRV9DUFBGTEFHUyIKICAg IGlmIHRlc3QgIiR7SEFWRV9MSUJYTUwyfSIgPSAieWVzIjsgdGhlbgogICAgICBMSUJYTUwy X0NGTEFHUz0iLWlzeXN0ZW0ke3hjc2RrZGlyfS91c3IvaW5jbHVkZS9saWJ4bWwyIgogICAg ICBMSUJYTUwyX0xJQlM9Ii1seG1sMiIKICAgIGZpCiAgZmkKICBpZiB0ZXN0ICIke0hBVkVf TElCWE1MMn0iID0gInllcyI7IHRoZW4KICAgIGlmIHRlc3QgIiR7b3BzeXN9IiAhPSAibWlu Z3czMiI7IHRoZW4KICAgICAgQUNfQ0hFQ0tfTElCKFt4bWwyXSwgW2h0bWxSZWFkTWVtb3J5 XSwKCVtIQVZFX0xJQlhNTDI9eWVzXSwKCVtIQVZFX0xJQlhNTDI9bm9dLAogICAgICAgIFsk TElCWE1MMl9MSUJTXSkKICAgIGVsc2UKICAgICAgTElCWE1MMl9MSUJTPSIiCiAgICBmaQog ICAgaWYgdGVzdCAiJHtIQVZFX0xJQlhNTDJ9IiA9ICJ5ZXMiOyB0aGVuCiAgICAgIEFDX0RF RklORShbSEFWRV9MSUJYTUwyXSwgWzFdLAoJW0RlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRo ZSBsaWJ4bWwgbGlicmFyeSAoLWx4bWwyKS5dKQogICAgZWxzZQogICAgICBMSUJYTUwyX0xJ QlM9IiIKICAgICAgTElCWE1MMl9DRkxBR1M9IiIKICAgIGZpCiAgZmkKZmkKQUNfU1VCU1Qo W0xJQlhNTDJfTElCU10pCkFDX1NVQlNUKFtMSUJYTUwyX0NGTEFHU10pCgpCTEVTU01BSUxf VEFSR0VUPQpMSUJTX01BSUw9CmlmIHRlc3QgISAiJHdpdGhfbWFpbHV0aWxzIjsgdGhlbgog ICMgQ2hlY2sgZm9yIG1haWwtbG9ja2luZyBmdW5jdGlvbnMgaW4gYSAibWFpbCIgbGlicmFy eS4gIFByb2JhYmx5IHRoaXMgc2hvdWxkCiAgIyBoYXZlIHRoZSBzYW1lIGNoZWNrIGFzIGZv ciBsaWJsb2NrZmlsZSBiZWxvdy4KICBBQ19DSEVDS19MSUIoW21haWxdLCBbbWFpbGxvY2td LCBbaGF2ZV9tYWlsPXllc10sIFtoYXZlX21haWw9bm9dKQogIGlmIHRlc3QgJGhhdmVfbWFp bCA9IHllczsgdGhlbgogICAgTElCU19NQUlMPS1sbWFpbAogICAgQUNfREVGSU5FKFtIQVZF X0xJQk1BSUxdLCBbMV0sCiAgICAgIFtEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgJ21h aWwnIGxpYnJhcnkgKC1sbWFpbCkuXSkKCiAgICBPTERfTElCUz0kTElCUwogICAgTElCUz0i JExJQlNfTUFJTCAkTElCUyIKICAgIEFDX0NIRUNLX0ZVTkNTKFt0b3VjaGxvY2tdKQogICAg TElCUz0kT0xEX0xJQlMKICBmaQogIGRubCBEZWJpYW4sIGF0IGxlYXN0OgogIEFDX0NIRUNL X0xJQihbbG9ja2ZpbGVdLCBbbWFpbGxvY2tdLCBbaGF2ZV9sb2NrZmlsZT15ZXNdLCBbaGF2 ZV9sb2NrZmlsZT1ub10pCiAgaWYgdGVzdCAkaGF2ZV9sb2NrZmlsZSA9IHllczsgdGhlbgog ICAgIExJQlNfTUFJTD0tbGxvY2tmaWxlCiAgICAgQUNfREVGSU5FKFtIQVZFX0xJQkxPQ0tG SUxFXSwgWzFdLAogICAgICAgW0RlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSAnbG9ja2Zp bGUnIGxpYnJhcnkgKC1sbG9ja2ZpbGUpLl0pCiAgZWxzZQogICAgIyBJZiB3ZSBoYXZlIHRo ZSBzaGFyZWQgbGlibG9ja2ZpbGUsIGFzc3VtZSB3ZSBtdXN0IHVzZSBpdCBmb3IgbWFpbAog ICAgIyBsb2NraW5nIChlLmcuIERlYmlhbikuICBJZiB3ZSBjb3VsZG4ndCBsaW5rIGFnYWlu c3QgbGlibG9ja2ZpbGUKICAgICMgKG5vIGxpYmxvY2tmaWxlLmEgaW5zdGFsbGVkKSwgZW5z dXJlIHRoYXQgd2UgZG9uJ3QgbmVlZCB0by4KICAgIGRubCBUaGlzIHdvcmtzIGZvciBmaWxl cyBnZW5lcmFsbHksIG5vdCBqdXN0IGV4ZWN1dGFibGVzLgogICAgZG5sIFNob3VsZCB3ZSBs b29rIGVsc2V3aGVyZSBmb3IgaXQ/ICBNYXliZSBleGFtaW5lIC9ldGMvbGQuc28uY29uZj8K ICAgIEFDX0NIRUNLX1BST0coW2xpYmxvY2tmaWxlXSwgW2xpYmxvY2tmaWxlLnNvXSwgW3ll c10sIFtub10sCgkJICBbL3Vzci9saWI6L2xpYjovdXNyL2xvY2FsL2xpYjokTERfTElCUkFS WV9QQVRIXSkKICAgIGlmIHRlc3QgIiRhY19jdl9wcm9nX2xpYmxvY2tmaWxlIiA9IHllczsg dGhlbgogICAgICBBQ19NU0dfRVJST1IoW1NoYXJlZCBsaWJsb2NrZmlsZSBmb3VuZCBidXQg Y2FuJ3QgbGluayBhZ2FpbnN0IGl0LgpUaGlzIHByb2JhYmx5IG1lYW5zIHRoYXQgbW92ZW1h aWwgY291bGQgbG9zZSBtYWlsLgpUaGVyZSBtYXkgYmUgYSAnZGV2ZWxvcG1lbnQnIHBhY2th Z2UgdG8gaW5zdGFsbCBjb250YWluaW5nIGxpYmxvY2tmaWxlLl0pCiAgICBmaQogIGZpCiAg QUNfQ0hFQ0tfSEVBREVSUyhbbWFpbGxvY2suaF0pCgogICMjIERlZmluZSBNQUlMX1VTRV9G TE9DSyAob3IgTE9DS0YpIGlmIHRoZSBtYWlsZXIgdXNlcyBmbG9jayAob3IgbG9ja2YpIHRv CiAgIyMgaW50ZXJsb2NrIGFjY2VzcyB0byB0aGUgbWFpbCBzcG9vbC4gIFRoZSBhbHRlcm5h dGl2ZSBpcyBhIGxvY2sgZmlsZSBuYW1lZAogICMjIC91c3Ivc3Bvb2wvbWFpbC8kVVNFUi5s b2NrLgogIG1haWxfbG9jaz1ubwogIGNhc2UgJG9wc3lzIGluCiAgICBhaXg0LTIpIG1haWxf bG9jaz0ibG9ja2YiIDs7CgogICAgZ251fGZyZWVic2R8ZHJhZ29uZmx5fG5ldGJzZHxvcGVu YnNkfGRhcndpbikgbWFpbF9sb2NrPSJmbG9jayIgOzsKCiAgICAjIyBPbiBHTlUvTGludXgg c3lzdGVtcywgYm90aCBtZXRob2RzIGFyZSB1c2VkIGJ5IHZhcmlvdXMgbWFpbCBwcm9ncmFt cy4KICAgICMjIEkgYXNzdW1lIG1vc3QgcGVvcGxlIGFyZSB1c2luZyBuZXdlciBtYWlsZXJz IHRoYXQgaGF2ZSBoZWFyZCBvZiBmbG9jay4KICAgICMjIENoYW5nZSB0aGlzIGlmIHlvdSBu ZWVkIHRvLgogICAgIyMgRGViaWFuIGNvbnRhaW5zIGEgcGF0Y2ggd2hpY2ggc2F5czogIk9u IERlYmlhbi9HTlUvTGludXggc3lzdGVtcywKICAgICMjIGNvbmZpZ3VyZSBnZXRzIHRoZSBy aWdodCBhbnN3ZXJzLCBhbmQgdGhhdCBtZWFucyAqTk9UKiB1c2luZyBmbG9jay4KICAgICMj IFVzaW5nIGZsb2NrIGlzIGd1YXJhbnRlZWQgdG8gYmUgdGhlIHdyb25nIHRoaW5nLiBTZWUg RGViaWFuIFBvbGljeQogICAgIyMgZm9yIGRldGFpbHMuIiBhbmQgdGhlbiB1c2VzICcjaWZk ZWYgREVCSUFOJy4gIFVuZm9ydHVuYXRlbHkgdGhlCiAgICAjIyBEZWJpYW4gbWFpbnRhaW5l ciBoYXNuJ3QgcHJvdmlkZWQgYSBjbGVhbiBmaXggZm9yIEVtYWNzLgogICAgIyMgbW92ZW1h aWwuYyB3aWxsIHVzZSAnbWFpbGxvY2snIHdoZW4gTUFJTERJUiwgSEFWRV9MSUJNQUlMIGFu ZAogICAgIyMgSEFWRV9NQUlMTE9DS19IIGFyZSBkZWZpbmVkLCBzbyB0aGUgZm9sbG93aW5n IGFwcGVhcnMgdG8gYmUgdGhlCiAgICAjIyBjb3JyZWN0IGxvZ2ljLiAgLS0gZngKICAgICMj IFdlIG11c3QgY2hlY2sgZm9yIEhBVkVfTElCTE9DS0ZJTEUgdG9vLCBhcyBtb3ZlbWFpbCBk b2VzLgogICAgIyMgbGlibG9ja2ZpbGUgaXMgYSBGcmVlIFNvZnR3YXJlIHJlcGxhY2VtZW50 IGZvciBsaWJtYWlsLCB1c2VkIG9uCiAgICAjIyBEZWJpYW4gc3lzdGVtcyBhbmQgZWxzZXdo ZXJlLiAtcmZyLgogICAgZ251LSopCiAgICAgIG1haWxfbG9jaz0iZmxvY2siCiAgICAgIGlm IHRlc3QgJGhhdmVfbWFpbCA9IHllcyB8fCB0ZXN0ICRoYXZlX2xvY2tmaWxlID0geWVzOyB0 aGVuCgl0ZXN0ICRhY19jdl9oZWFkZXJfbWFpbGxvY2tfaCA9IHllcyAmJiBtYWlsX2xvY2s9 bm8KICAgICAgZmkgOzsKCiAgICBtaW5ndzMyKQogICAgICBtYWlsX2xvY2s9Im5vbmUtbmVl ZGVkIiA7OwogIGVzYWMKCiAgY2FzZSAkbWFpbF9sb2NrIGluCiAgICBmbG9jaykgQUNfREVG SU5FKFtNQUlMX1VTRV9GTE9DS10sIFsxXSwKCSAgICAgW0RlZmluZSBpZiB0aGUgbWFpbGVy IHVzZXMgZmxvY2sgdG8gaW50ZXJsb2NrIHRoZSBtYWlsIHNwb29sLl0pOzsKCiAgICBsb2Nr ZikgQUNfREVGSU5FKFtNQUlMX1VTRV9MT0NLRl0sIFsxXSwKCSAgICAgW0RlZmluZSBpZiB0 aGUgbWFpbGVyIHVzZXMgbG9ja2YgdG8gaW50ZXJsb2NrIHRoZSBtYWlsIHNwb29sLl0pOzsK CiAgICBub25lLW5lZWRlZCkgOzsKCiAgICAqKSBCTEVTU01BSUxfVEFSR0VUPSJuZWVkLWJs ZXNzbWFpbCIgOzsKICBlc2FjCmZpCkFDX1NVQlNUKFtCTEVTU01BSUxfVEFSR0VUXSkKQUNf U1VCU1QoW0xJQlNfTUFJTF0pCgpIQVZFX1NFQ0NPTVA9bm8KQUNfQ0hFQ0tfSEVBREVSUygK ICBbbGludXgvc2VjY29tcC5oIGxpbnV4L2ZpbHRlci5oXSwKICBbQUNfQ0hFQ0tfREVDTFMo CiAgICBbU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIsIFNFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZ TkNdLAogICAgW0hBVkVfU0VDQ09NUD15ZXNdLCBbXSwKICAgIFtbCiAgICAjaW5jbHVkZSA8 bGludXgvc2VjY29tcC5oPgogICAgXV0pXSkKQUNfU1VCU1QoW0hBVkVfU0VDQ09NUF0pCgpF TUFDU19DSEVDS19NT0RVTEVTKFtMSUJTRUNDT01QXSwgW2xpYnNlY2NvbXAgPj0gMi41LjJd KQpBQ19TVUJTVChbSEFWRV9MSUJTRUNDT01QXSkKQUNfU1VCU1QoW0xJQlNFQ0NPTVBfTElC U10pCkFDX1NVQlNUKFtMSUJTRUNDT01QX0NGTEFHU10pCgpBQ19DSEVDS19TSVpFT0YoW2xv bmddKQpTSVpFT0ZfTE9ORz0iJGFjX2N2X3NpemVvZl9sb25nIgpBQ19TVUJTVChbU0laRU9G X0xPTkddKQoKT0xEX0xJQlM9JExJQlMKTElCUz0iJExJQl9QVEhSRUFEICRMSUJfTUFUSCAk TElCUyIKQUNfQ0hFQ0tfRlVOQ1MoW2FjY2VwdDQgZmNoZGlyIGdldGhvc3RuYW1lIFwKZ2V0 cnVzYWdlIGdldF9jdXJyZW50X2Rpcl9uYW1lIFwKbHJhbmQ0OCByYW5kb20gcmludCB0cnVu YyBcCnNlbGVjdCBnZXRwYWdlc2l6ZSBzZXRsb2NhbGUgbmV3bG9jYWxlIFwKZ2V0cmxpbWl0 IHNldHJsaW1pdCBzaHV0ZG93biBcCnB0aHJlYWRfc2lnbWFzayBzdHJzaWduYWwgc2V0aXRp bWVyIFwKc2VuZHRvIHJlY3Zmcm9tIGdldHNvY2tuYW1lIGdldGlmYWRkcnMgZnJlZWlmYWRk cnMgXApnYWlfc3RyZXJyb3Igc3luYyBcCmdldHB3ZW50IGVuZHB3ZW50IGdldGdyZW50IGVu ZGdyZW50IFwKcmVuYW1lYXQyIFwKY2ZtYWtlcmF3IGNmc2V0c3BlZWQgX19leGVjdXRhYmxl X3N0YXJ0IGxvZzIgcHRocmVhZF9zZXRuYW1lX25wIFwKcHRocmVhZF9zZXRfbmFtZV9ucF0p CkxJQlM9JE9MRF9MSUJTCgppZiB0ZXN0ICIkYWNfY3ZfZnVuY19wdGhyZWFkX3NldG5hbWVf bnAiID0gInllcyI7IHRoZW4KICBBQ19DQUNIRV9DSEVDSygKICAgW3doZXRoZXIgcHRocmVh ZF9zZXRuYW1lX25wIHRha2VzIGEgc2luZ2xlIGFyZ3VtZW50XSwKICAgW2VtYWNzX2N2X3B0 aHJlYWRfc2V0bmFtZV9ucF8xYXJnXSwKICAgW0FDX0NPTVBJTEVfSUZFTFNFKAogICAgIFtB Q19MQU5HX1BST0dSQU0oCiAgICAgICBbWyNpbmNsdWRlIDxwdGhyZWFkLmg+XV0sCiAgICAg ICBbW3B0aHJlYWRfc2V0bmFtZV9ucCAoImEiKTtdXSldLAogICAgIFtlbWFjc19jdl9wdGhy ZWFkX3NldG5hbWVfbnBfMWFyZz15ZXNdLAogICAgIFtlbWFjc19jdl9wdGhyZWFkX3NldG5h bWVfbnBfMWFyZz1ub10pXSkKICBpZiB0ZXN0ICIkZW1hY3NfY3ZfcHRocmVhZF9zZXRuYW1l X25wXzFhcmciID0gInllcyI7IHRoZW4KICAgIEFDX0RFRklORSgKICAgICAgW0hBVkVfUFRI UkVBRF9TRVROQU1FX05QXzFBUkddLCBbMV0sCiAgICAgIFtEZWZpbmUgdG8gMSBpZiBwdGhy ZWFkX3NldG5hbWVfbnAgdGFrZXMgYSBzaW5nbGUgYXJndW1lbnQuXSkKICBlbHNlCiAgICBB Q19DQUNIRV9DSEVDSygKICAgICBbd2hldGhlciBwdGhyZWFkX3NldG5hbWVfbnAgdGFrZXMg dGhyZWUgYXJndW1lbnRzXSwKICAgICBbZW1hY3NfY3ZfcHRocmVhZF9zZXRuYW1lX25wXzNh cmddLAogICAgIFtBQ19DT01QSUxFX0lGRUxTRSgKICAgICAgIFtBQ19MQU5HX1BST0dSQU0o CiAgICAgICAgIFtbI2luY2x1ZGUgPHB0aHJlYWQuaD5dXSwKICAgICAgICAgW1twdGhyZWFk X3NldG5hbWVfbnAgKDAsICIlcyIsICJhIik7XV0pXSwKICAgICAgIFtlbWFjc19jdl9wdGhy ZWFkX3NldG5hbWVfbnBfM2FyZz15ZXNdLAogICAgICAgW2VtYWNzX2N2X3B0aHJlYWRfc2V0 bmFtZV9ucF8zYXJnPW5vXSldKQogICAgIGlmIHRlc3QgIiRlbWFjc19jdl9wdGhyZWFkX3Nl dG5hbWVfbnBfM2FyZyIgPSAieWVzIjsgdGhlbgogICAgICAgQUNfREVGSU5FKAoJIFtIQVZF X1BUSFJFQURfU0VUTkFNRV9OUF8zQVJHXSwgWzFdLAogICAgICAgICBbRGVmaW5lIHRvIDEg aWYgcHRocmVhZF9zZXRuYW1lX25wIHRha2VzIHRocmVlIGFyZ3VtZW50cy5dKQogICAgIGZp CiAgZmkKZmkKCmRubCBObyBuZWVkIHRvIGNoZWNrIGZvciBwb3NpeF9tZW1hbGlnbiBpZiBh bGlnbmVkX2FsbG9jIHdvcmtzLgpBQ19DSEVDS19GVU5DUyhbYWxpZ25lZF9hbGxvYyBwb3Np eF9tZW1hbGlnbl0sIFticmVha10pCkFDX0NIRUNLX0RFQ0xTKFthbGlnbmVkX2FsbG9jXSwg W10sIFtdLCBbWyNpbmNsdWRlIDxzdGRsaWIuaD5dXSkKCmNhc2UgJHdpdGhfdW5leGVjLCRj YW5vbmljYWwgaW4KICB5ZXMsYWxwaGEqKQogICAgQUNfQ0hFQ0tfREVDTChbX19FTEZfX10s IFtdLAogICAgICBbQUNfTVNHX0VSUk9SKFtOb24tRUxGIHN5c3RlbXMgYXJlIG5vdCBzdXBw b3J0ZWQgb24gdGhpcyBwbGF0Zm9ybS5dKV0pOzsKZXNhYwoKaWYgdGVzdCAiJHdpdGhfdW5l eGVjIiA9IHllcyAmJiB0ZXN0ICIkb3BzeXMiID0gImhhaWt1IjsgdGhlbgogIGRubCBBIHNl cmlvdXMgYXR0ZW1wdCB3YXMgYWN0dWFsbHkgbWFkZSB0byBwb3J0IHVuZXhlYyB0byBIYWlr dS4KICBkbmwgU29tZXRoaW5nIGluIGxpYnN0ZGMrKyBzZWVtcyB0byBwcmV2ZW50IGl0IGZy b20gd29ya2luZy4KICBBQ19NU0dfRVJST1IoW0hhaWt1IGlzIG5vdCBzdXBwb3J0ZWQgYnkg dGhlIGxlZ2FjeSB1bmV4ZWMgZHVtcGVyLgpQbGVhc2UgdXNlIHRoZSBwb3J0YWJsZSBkdW1w ZXIgaW5zdGVhZC5dKQpmaQoKIyBEdW1wIGxvYWRpbmcKQUNfQ0hFQ0tfRlVOQ1MoW3Bvc2l4 X21hZHZpc2VdKQoKZG5sIENhbm5vdCB1c2UgQUNfQ0hFQ0tfRlVOQ1MKQUNfQ0FDSEVfQ0hF Q0soW2ZvciBfX2J1aWx0aW5fZnJhbWVfYWRkcmVzc10sCiAgW2VtYWNzX2N2X2Z1bmNfX19i dWlsdGluX2ZyYW1lX2FkZHJlc3NdLAogIFtBQ19MSU5LX0lGRUxTRShbQUNfTEFOR19QUk9H UkFNKFtdLCBbX19idWlsdGluX2ZyYW1lX2FkZHJlc3MgKDApO10pXSwKICAgICBbZW1hY3Nf Y3ZfZnVuY19fX2J1aWx0aW5fZnJhbWVfYWRkcmVzcz15ZXNdLAogICAgIFtlbWFjc19jdl9m dW5jX19fYnVpbHRpbl9mcmFtZV9hZGRyZXNzPW5vXSldKQppZiB0ZXN0ICRlbWFjc19jdl9m dW5jX19fYnVpbHRpbl9mcmFtZV9hZGRyZXNzID0geWVzOyB0aGVuCiAgQUNfREVGSU5FKFtI QVZFX19fQlVJTFRJTl9GUkFNRV9BRERSRVNTXSwgWzFdLAoJICAgIFtEZWZpbmUgdG8gMSBp ZiB5b3UgaGF2ZSB0aGUgJ19fYnVpbHRpbl9mcmFtZV9hZGRyZXNzJyBmdW5jdGlvbi5dKQpm aQpBQ19DQUNIRV9DSEVDSyhbZm9yIF9fYnVpbHRpbl91bndpbmRfaW5pdF0sCgkgICAgICAg W2VtYWNzX2N2X2Z1bmNfX19idWlsdGluX3Vud2luZF9pbml0XSwKW0FDX0xJTktfSUZFTFNF KFtBQ19MQU5HX1BST0dSQU0oW10sIFtfX2J1aWx0aW5fdW53aW5kX2luaXQgKCk7XSldLAoJ CVtlbWFjc19jdl9mdW5jX19fYnVpbHRpbl91bndpbmRfaW5pdD15ZXNdLAoJCVtlbWFjc19j dl9mdW5jX19fYnVpbHRpbl91bndpbmRfaW5pdD1ub10pXSkKaWYgdGVzdCAkZW1hY3NfY3Zf ZnVuY19fX2J1aWx0aW5fdW53aW5kX2luaXQgPSB5ZXM7IHRoZW4KICBBQ19ERUZJTkUoW0hB VkVfX19CVUlMVElOX1VOV0lORF9JTklUXSwgWzFdLAoJICAgIFtEZWZpbmUgdG8gMSBpZiB5 b3UgaGF2ZSB0aGUgJ19fYnVpbHRpbl91bndpbmRfaW5pdCcgZnVuY3Rpb24uXSkKZmkKCkFD X0NIRUNLX0hFQURFUlNfT05DRShbc3lzL3VuLmhdKQoKQUNfRlVOQ19GU0VFS08KCiMgVU5J WDk4IFBUWXMuCkFDX0NIRUNLX0ZVTkNTKFtncmFudHB0XSkKCiMgUFRZLXJlbGF0ZWQgR05V IGV4dGVuc2lvbnMuCkFDX0NIRUNLX0ZVTkNTKFtnZXRwdCBwb3NpeF9vcGVucHRdKQoKZG5s IFJ1biBhIHRlc3QgcHJvZ3JhbSB0aGF0IGNvbnRhaW5zIGEgY2FsbCB0byB0cHV0cywgYSBj YWxsIHRoYXQgaXMKZG5sIG5ldmVyIGV4ZWN1dGVkLiAgVGhpcyB0ZXN0cyB3aGV0aGVyIGEg cHJlLSdtYWluJyBkeW5hbWljIGxpbmtlcgpkbmwgd29ya3Mgd2l0aCB0aGUgbGlicmFyeS4g IEl0J3MgdG9vIG11Y2ggdHJvdWJsZSB0byBhY3R1YWxseSBjYWxsCmRubCB0cHV0cyBpbiB0 aGUgdGVzdCBwcm9ncmFtLCBkdWUgdG8gcG9ydGFiaWxpdHkgaGFzc2xlcy4gIFdoZW4KZG5s IGNyb3NzLWNvbXBpbGluZywgYXNzdW1lIHRoZSB0ZXN0IHByb2dyYW0gd2lsbCBydW4gaWYg aXQgbGlua3MuCkFDX0RFRlVOKFt0cHV0c19saW5rX3NvdXJjZV0sIFsKICBBQ19MQU5HX1NP VVJDRSgKICAgICBbW2V4dGVybiB2b2lkIHRwdXRzIChjb25zdCBjaGFyICosIGludCwgaW50 ICgqKShpbnQpKTsKICAgICAgIGludCBtYWluIChpbnQgYXJnYywgY2hhciAqKmFyZ3YpCiAg ICAgICB7CgkgIGlmIChhcmdjID09IDEwMDAwKQoJICAgIHRwdXRzIChhcmd2WzBdLCAwLCAw KTsKCSAgcmV0dXJuIDA7CiAgICAgICB9XV0pCl0pCiMgQ2hlY2sgdGhpcyBub3csIHNvIHRo YXQgd2Ugd2lsbCBOT1QgZmluZCB0aGUgYWJvdmUgZnVuY3Rpb25zIGluIG5jdXJzZXMuCiMg VGhhdCBpcyBiZWNhdXNlIHdlIGhhdmUgbm90IHNldCB1cCB0byBsaW5rIG5jdXJzZXMgaW4g bGliLXNyYy4KIyBJdCdzIGJldHRlciB0byBiZWxpZXZlIGEgZnVuY3Rpb24gaXMgbm90IGF2 YWlsYWJsZQojIHRoYW4gdG8gZXhwZWN0IHRvIGZpbmQgaXQgaW4gbmN1cnNlcy4KIyBBbHNv IHdlIG5lZWQgdHB1dHMgYW5kIGZyaWVuZHMgdG8gYmUgYWJsZSB0byBidWlsZCBhdCBhbGwu CkFDX0NBQ0hFX0NIRUNLKFtmb3IgbGlicmFyeSBjb250YWluaW5nIHRwdXRzXSwgW2VtYWNz X2N2X3RwdXRzX2xpYl0sCltpZiB0ZXN0ICIke29wc3lzfSIgPSAibWluZ3czMiI7IHRoZW4K ICBlbWFjc19jdl90cHV0c19saWI9J25vbmUgcmVxdWlyZWQnCmVsc2UKICAjIGN1cnNlcyBw cmVjZWRlcyB0ZXJtY2FwIGJlY2F1c2Ugb2YgQUlYIChCdWcjOTczNiMzNSkgYW5kIE9wZW5J bmRpYW5hLgogIHRwdXRzX2xpYnJhcmllcz0ndGluZm8gbmN1cnNlcyB0ZXJtaW5mbyBjdXJz ZXMgdGVybWNhcCB0aW5mb3cgbmN1cnNlc3cnCiAgZm9yIHRwdXRzX2xpYnJhcnkgaW4gJycg JHRwdXRzX2xpYnJhcmllczsgZG8KICAgIE9MSUJTPSRMSUJTCiAgICBpZiB0ZXN0IC16ICIk dHB1dHNfbGlicmFyeSI7IHRoZW4KICAgICAgZW1hY3NfY3ZfdHB1dHNfbGliPSdub25lIHJl cXVpcmVkJwogICAgZWxzZQogICAgICBlbWFjc19jdl90cHV0c19saWI9LWwkdHB1dHNfbGli cmFyeQogICAgICBMSUJTPSIkZW1hY3NfY3ZfdHB1dHNfbGliICRMSUJTIgogICAgZmkKICAg IEFDX1JVTl9JRkVMU0UoW3RwdXRzX2xpbmtfc291cmNlXSwgW10sIFtlbWFjc19jdl90cHV0 c19saWI9bm9dLAogICAgICBbQUNfTElOS19JRkVMU0UoW3RwdXRzX2xpbmtfc291cmNlXSwg W10sIFtlbWFjc19jdl90cHV0c19saWI9bm9dKV0pCiAgICBMSUJTPSRPTElCUwogICAgaWYg dGVzdCAiWCRlbWFjc19jdl90cHV0c19saWIiICE9IFhubzsgdGhlbgogICAgICBicmVhawog ICAgZmkKICBkb25lCmZpXSkKQVNfQ0FTRShbIiRlbWFjc19jdl90cHV0c19saWIiXSwKICBb bm9dLCBbQUNfTVNHX0VSUk9SKFtUaGUgcmVxdWlyZWQgZnVuY3Rpb24gJ3RwdXRzJyB3YXMg bm90IGZvdW5kIGluIGFueSBsaWJyYXJ5LgpUaGUgZm9sbG93aW5nIGxpYnJhcmllcyB3ZXJl IHRyaWVkIChpbiBvcmRlcik6CiAgbGlidGluZm8sIGxpYm5jdXJzZXMsIGxpYnRlcm1pbmZv LCBsaWJjdXJzZXMsIGxpYnRlcm1jYXAKUGxlYXNlIHRyeSBpbnN0YWxsaW5nIHdoaWNoZXZl ciBvZiB0aGVzZSBsaWJyYXJpZXMgaXMgbW9zdCBhcHByb3ByaWF0ZQpmb3IgeW91ciBzeXN0 ZW0sIHRvZ2V0aGVyIHdpdGggaXRzIGhlYWRlciBmaWxlcy4KRm9yIGV4YW1wbGUsIGEgbGli bmN1cnNlcy1kZXYoZWwpIG9yIHNpbWlsYXIgcGFja2FnZS5dKV0sCiAgWy1sKl0sIFtMSUJT X1RFUk1DQVA9JGVtYWNzX2N2X3RwdXRzX2xpYl0sCiAgWypdLCBbTElCU19URVJNQ0FQPV0p CgojIyBVc2UgdGVybWNhcCBpbnN0ZWFkIG9mIHRlcm1pbmZvPwojIyBPbmx5IHRydWUgZm9y OiBmcmVlYnNkIDwgNDAwMDAsIG1zLXczMiwgbXNkb3MsIG5ldGJzZCA8IDU5OTAwMjUwMC4K VEVSTUlORk89eWVzCiMjIEZJWE1FPyAgSW4gdGhlIGNhc2VzIGJlbG93IHdoZXJlIHdlIHVu Y29uZGl0aW9uYWxseSBzZXQKIyMgTElCU19URVJNQ0FQPSItbG5jdXJzZXMiLCB0aGlzIG92 ZXJyaWRlcyBMSUJTX1RFUk1DQVAgPSAtbHRpbmZvLAojIyBpZiB0aGF0IHdhcyBmb3VuZCBh Ym92ZSB0byBoYXZlIHRwdXRzLgojIyBTaG91bGQgd2UgdXNlIHRoZSBnbnUqIGxvZ2ljIGV2 ZXJ5d2hlcmU/CmNhc2UgIiRvcHN5cyIgaW4KICAjIyBkYXJ3aW46IFByZXZlbnRzIGNyYXNo ZXMgd2hlbiBydW5uaW5nIEVtYWNzIGluIFRlcm1pbmFsLmFwcCB1bmRlciAxMC4yLgogICMj ICBUaGUgbmN1cnNlcyBsaWJyYXJ5IGhhcyBiZWVuIG1vdmVkIG91dCBvZiB0aGUgU3lzdGVt IGZyYW1ld29yayBpbgogICMjICBNYWMgT1MgWCAxMC4yLiAgU28gaWYgY29uZmlndXJlIGRl dGVjdHMgaXQsIHNldCB0aGUgY29tbWFuZC1saW5lCiAgIyMgIG9wdGlvbiB0byB1c2UgaXQu CiAgZGFyd2luKSBMSUJTX1RFUk1DQVA9Ii1sbmN1cnNlcyIgOzsKCiAgZ251KikgdGVzdCAt eiAiJExJQlNfVEVSTUNBUCIgJiYgTElCU19URVJNQ0FQPSItbG5jdXJzZXMiIDs7CgogIGZy ZWVic2QpCiAgICBBQ19NU0dfQ0hFQ0tJTkcoW3doZXRoZXIgRnJlZUJTRCBpcyBuZXcgZW5v dWdoIHRvIHVzZSB0ZXJtaW5mb10pCiAgICBBQ19DQUNIRV9WQUwoW2VtYWNzX2N2X2ZyZWVi c2RfdGVybWluZm9dLAogICAgW0FDX0xJTktfSUZFTFNFKFtBQ19MQU5HX1BST0dSQU0oW1sj aW5jbHVkZSA8b3NyZWxkYXRlLmg+XV0sCltbI2lmIF9fRnJlZUJTRF92ZXJzaW9uIDwgNDAw MDAwCmZhaWw7CiNlbmRpZgpdXSldLCBbZW1hY3NfY3ZfZnJlZWJzZF90ZXJtaW5mbz15ZXNd LAogICAgICBbZW1hY3NfY3ZfZnJlZWJzZF90ZXJtaW5mbz1ub10pXSkKCiAgICBBQ19NU0df UkVTVUxUKFskZW1hY3NfY3ZfZnJlZWJzZF90ZXJtaW5mb10pCgogICAgaWYgdGVzdCAkZW1h Y3NfY3ZfZnJlZWJzZF90ZXJtaW5mbyA9IHllczsgdGhlbgogICAgICBMSUJTX1RFUk1DQVA9 Ii1sbmN1cnNlcyIKICAgIGVsc2UKICAgICAgVEVSTUlORk89bm8KICAgICAgTElCU19URVJN Q0FQPSItbHRlcm1jYXAiCiAgICBmaQogICAgOzsKCiAgbWluZ3czMikKICAgIFRFUk1JTkZP PW5vCiAgICBMSUJTX1RFUk1DQVA9CiAgICA7OwoKICBuZXRic2QpCiAgICBpZiB0ZXN0ICJ4 JExJQlNfVEVSTUNBUCIgIT0gIngtbHRlcm1pbmZvIjsgdGhlbgogICAgICBURVJNSU5GTz1u bwogICAgICBMSUJTX1RFUk1DQVA9Ii1sdGVybWNhcCIKICAgIGZpCiAgICA7OwoKICBvcGVu YnNkIHwgZHJhZ29uZmx5KSBMSUJTX1RFUk1DQVA9Ii1sbmN1cnNlcyIgOzsKCiAgIyMgaHB1 eDogTWFrZSBzdXJlIHdlIGdldCBzZWxlY3QgZnJvbSBsaWJjIHJhdGhlciB0aGFuIGZyb20g bGliY3Vyc2VzCiAgIyMgIGJlY2F1c2UgbGliY3Vyc2VzIG9uIEhQVVggMTAuMTAgaGFzIGEg YnJva2VuIHZlcnNpb24gb2Ygc2VsZWN0LgogICMjICBXZSB1c2VkIHRvIHVzZSAtbGMgLWxj dXJzZXMsIGJ1dCB0aGlzIG1heSBiZSBjbGVhbmVyLgogICMjIEZJWE1FPyAgQnV0IFRFUk1J TkZPID0geWVzIG9uIGhwdXggKGl0IHVzZWQgdG8gYmUgZXhwbGljaXRseQogICMgc2V0IHRo YXQgd2F5LCBub3cgaXQgdXNlcyB0aGUgZGVmYXVsdCkuICBJc24ndCB0aGlzIGEgY29udHJh ZGljdGlvbj8KICBocHV4KikgTElCU19URVJNQ0FQPSItbHRlcm1jYXAiIDs7Cgplc2FjCgpU RVJNQ0FQX09CSj10cGFyYW0ubwppZiB0ZXN0ICRURVJNSU5GTyA9IHllczsgdGhlbgogIEFD X0RFRklORShbVEVSTUlORk9dLCBbMV0sCiAgICBbRGVmaW5lIHRvIDEgaWYgeW91IHVzZSB0 ZXJtaW5mbyBpbnN0ZWFkIG9mIHRlcm1jYXAuXSkKICBURVJNQ0FQX09CSj10ZXJtaW5mby5v CiAgQUNfQ0FDSEVfQ0hFQ0soW3doZXRoZXIgJExJQlNfVEVSTUNBUCBsaWJyYXJ5IGRlZmlu ZXMgQkNdLAogICAgW2VtYWNzX2N2X3Rlcm1pbmZvX2RlZmluZXNfQkNdLAogICAgW09MRF9M SUJTPSRMSUJTCiAgICAgTElCUz0iJExJQlMgJExJQlNfVEVSTUNBUCIKICAgICBBQ19MSU5L X0lGRUxTRShbQUNfTEFOR19QUk9HUkFNKFtbZXh0ZXJuIGNoYXIgKkJDO11dLCBbW3JldHVy biAhKkJDO11dKV0sCiAgICAgICBbZW1hY3NfY3ZfdGVybWluZm9fZGVmaW5lc19CQz15ZXNd LAogICAgICAgW2VtYWNzX2N2X3Rlcm1pbmZvX2RlZmluZXNfQkM9bm9dKQogICAgIExJQlM9 JE9MRF9MSUJTXSkKICBpZiB0ZXN0ICIkZW1hY3NfY3ZfdGVybWluZm9fZGVmaW5lc19CQyIg PSB5ZXM7IHRoZW4KICAgIEFDX0RFRklORShbVEVSTUlORk9fREVGSU5FU19CQ10sIFsxXSwg W0RlZmluZSB0byAxIGlmIHRoZQogICAgICB0ZXJtaW5mbyBsaWJyYXJ5IGRlZmluZXMgdGhl IHZhcmlhYmxlcyBCQywgUEMsIGFuZCBVUC5dKQogIGZpCmZpCmlmIHRlc3QgIlgkTElCU19U RVJNQ0FQIiA9ICJYLWxuY3Vyc2VzIjsgdGhlbgogIEFDX0RFRklORShbVVNFX05DVVJTRVNd LCBbMV0sIFtEZWZpbmUgdG8gMSBpZiB5b3UgdXNlIG5jdXJzZXMuXSkKZmkKQUNfU1VCU1Qo W0xJQlNfVEVSTUNBUF0pCkFDX1NVQlNUKFtURVJNQ0FQX09CSl0pCgojIEdOVS9MaW51eC1z cGVjaWZpYyB0aW1lciBmdW5jdGlvbnMuCkFDX0NBQ0hFX0NIRUNLKFtmb3IgdGltZXJmZCBp bnRlcmZhY2VdLCBbZW1hY3NfY3ZfaGF2ZV90aW1lcmZkXSwKICBbQUNfQ09NUElMRV9JRkVM U0UoCiAgICAgW0FDX0xBTkdfUFJPR1JBTShbWyNpbmNsdWRlIDxzeXMvdGltZXJmZC5oPgoJ CSAgICAgIF1dLAoJCSAgICAgIFtbdGltZXJmZF9jcmVhdGUgKENMT0NLX1JFQUxUSU1FLAoJ CQkJCVRGRF9DTE9FWEVDIHwgVEZEX05PTkJMT0NLKTsKCQkJdGltZXJmZF9zZXR0aW1lICgw LCBURkRfVElNRVJfQUJTVElNRSwgMCwgMCk7XV0pXSwKICAgICBbZW1hY3NfY3ZfaGF2ZV90 aW1lcmZkPXllc10sCiAgICAgW2VtYWNzX2N2X2hhdmVfdGltZXJmZD1ub10pXSkKaWYgdGVz dCAiJGVtYWNzX2N2X2hhdmVfdGltZXJmZCIgPSB5ZXM7IHRoZW4KICBBQ19ERUZJTkUoW0hB VkVfVElNRVJGRF0sIFsxXSwKICAgIFtEZWZpbmUgdG8gMSBpZiB0aW1lcmZkIGZ1bmN0aW9u cyBhcmUgc3VwcG9ydGVkIGFzIGluIEdOVS9MaW51eC5dKQpmaQoKIyBBbHRlcm5hdGUgc3Rh Y2sgZm9yIHNpZ25hbCBoYW5kbGVycy4KQUNfQ0FDSEVfQ0hFQ0soW3doZXRoZXIgc2lnbmFs cyBjYW4gYmUgaGFuZGxlZCBvbiBhbHRlcm5hdGUgc3RhY2tdLAoJICAgICAgIFtlbWFjc19j dl9hbHRlcm5hdGVfc3RhY2tdLAogIFtBQ19DT01QSUxFX0lGRUxTRSgKICAgICBbQUNfTEFO R19QUk9HUkFNKFtbI2luY2x1ZGUgPHNpZ25hbC5oPgoJCQkjaW5jbHVkZSA8c3RkbGliLmg+ CgkJICAgICAgXV0sCgkJICAgICAgW1tzdGFja190IHNzOwoJCQlzdHJ1Y3Qgc2lnYWN0aW9u IHNhOwoJCQlzcy5zc19zcCA9IG1hbGxvYyAoU0lHU1RLU1opOwoJCQlzcy5zc19zaXplID0g U0lHU1RLU1o7CgkJCXNhLnNhX2ZsYWdzID0gU0FfU0lHSU5GTyB8IFNBX09OU1RBQ0s7CgkJ CXNpZ2FsdHN0YWNrICgmc3MsIDApOwoJCQlzaWdhY3Rpb24gKFNJR1NFR1YsICZzYSwgMCk7 XV0pXSwKICAgICBbZW1hY3NfY3ZfYWx0ZXJuYXRlX3N0YWNrPXllc10sCiAgICAgW2VtYWNz X2N2X2FsdGVybmF0ZV9zdGFjaz1ub10pXSkKCiMgRG8gd2UgbmVlZCB0aGUgSGVzaW9kIGxp YnJhcnkgdG8gcHJvdmlkZSB0aGUgc3VwcG9ydCByb3V0aW5lcz8KZG5sIEZJWE1FPyAgU2hv dWxkIHdlIGJlIHNraXBwaW5nIHRoaXMgb24gRGFyd2luIHRvbz8KTElCSEVTSU9EPQpMSUJS RVNPTFY9CmlmIHRlc3QgIiR3aXRoX2hlc2lvZCIgIT0gbm8gOyB0aGVuCiAgIyBEb24ndCBz ZXQgJExJQlMgaGVyZSAtLSBzZWUgY29tbWVudHMgYWJvdmUuICBGSVhNRSB3aGljaCBjb21t ZW50cz8KICByZXNvbHY9bm8KICBBQ19DSEVDS19GVU5DKFtyZXNfc2VuZF0sIFtdLCBbQUNf Q0hFQ0tfRlVOQyhbX19yZXNfc2VuZF0sIFtdLAogICAgIFtBQ19DSEVDS19MSUIoW3Jlc29s dl0sIFtyZXNfc2VuZF0sIFtyZXNvbHY9eWVzXSwKCQkgIFtBQ19DSEVDS19MSUIoW3Jlc29s dl0sIFtfX3Jlc19zZW5kXSwgW3Jlc29sdj15ZXNdKV0pXSldKQogIGlmIHRlc3QgIiRyZXNv bHYiID0geWVzIDsgdGhlbgogICAgUkVTT0xWTElCPS1scmVzb2x2CiAgZWxzZQogICAgUkVT T0xWTElCPQogIGZpCiAgaGVzaW9kPW5vCiAgQUNfQ0hFQ0tfRlVOQyhbaGVzX2dldG1haWxo b3N0XSwgW10sCiAgICBbQUNfQ0hFQ0tfTElCKFtoZXNpb2RdLCBbaGVzX2dldG1haWxob3N0 XSwKICAgICAgIFtoZXNpb2Q9eWVzXSwgWzpdLCBbJFJFU09MVkxJQl0pXSkKCiAgaWYgdGVz dCB4IiRoZXNpb2QiID0geHllczsgdGhlbgogICAgTElCSEVTSU9EPS1saGVzaW9kCiAgICBM SUJSRVNPTFY9JFJFU09MVkxJQgogIGZpCmZpCkFDX1NVQlNUKFtMSUJIRVNJT0RdKQpBQ19T VUJTVChbTElCUkVTT0xWXSkKCiMgVGhlc2UgdGVsbCB1cyB3aGljaCBLZXJiZXJvcy1yZWxh dGVkIGxpYnJhcmllcyB0byB1c2UuCkNPTV9FUlJMSUI9CkNSWVBUT0xJQj0KS1JCNUxJQj0K REVTTElCPQpLUkI0TElCPQoKaWYgdGVzdCAiJHt3aXRoX2tlcmJlcm9zfSIgIT0gbm87IHRo ZW4KICBPTERfTElCUz0kTElCUwogIEFDX0NIRUNLX0xJQihbY29tX2Vycl0sIFtjb21fZXJy XSwgW2hhdmVfY29tX2Vycj15ZXNdLCBbaGF2ZV9jb21fZXJyPW5vXSkKICBpZiB0ZXN0ICRo YXZlX2NvbV9lcnIgPSB5ZXM7IHRoZW4KICAgIENPTV9FUlJMSUI9LWxjb21fZXJyCiAgICBM SUJTPSIkQ09NX0VSUkxJQiAkTElCUyIKICBmaQogIEFDX0NIRUNLX0xJQihbY3J5cHRvXSwg W21pdF9kZXNfY2JjX2VuY3J5cHRdLAogICAgW2hhdmVfY3J5cHRvPXllc10sCiAgICBbaGF2 ZV9jcnlwdG89bm9dKQogIGlmIHRlc3QgJGhhdmVfY3J5cHRvID0geWVzOyB0aGVuCiAgICBD UllQVE9MSUI9LWxjcnlwdG8KICAgIExJQlM9IiRDUllQVE9MSUIgJExJQlMiCiAgZmkKICBB Q19DSEVDS19MSUIoW2s1Y3J5cHRvXSwgW21pdF9kZXNfY2JjX2VuY3J5cHRdLAogICAgW2hh dmVfazVjcnlwdG89eWVzXSwKICAgIFtoYXZlX2s1Y3J5cHRvPW5vXSkKICBpZiB0ZXN0ICRo YXZlX2s1Y3J5cHRvID0geWVzOyB0aGVuCiAgICBDUllQVE9MSUI9LWxrNWNyeXB0bwogICAg TElCUz0iJENSWVBUT0xJQiAkTElCUyIKICBmaQogIEFDX0NIRUNLX0xJQihba3JiNV0sIFtr cmI1X2luaXRfY29udGV4dF0sIFtoYXZlX2tyYjU9eWVzXSwgW2hhdmVfa3JiNT1ub10pCiAg aWYgdGVzdCAkaGF2ZV9rcmI1PXllczsgdGhlbgogICAgS1JCNUxJQj0tbGtyYjUKICAgIExJ QlM9IiRLUkI1TElCICRMSUJTIgogIGZpCiAgZG5sIEZJWE1FIFNpbXBsaWZ5LiAgRG9lcyBu b3QgbWF0Y2ggMjIgbG9naWMsIHRoYW5rcyB0byBkZWZhdWx0X29mZj8KICBpZiB0ZXN0ICIk e3dpdGhfa2VyYmVyb3M1fSIgPSBubzsgdGhlbgogICAgQUNfQ0hFQ0tfTElCKFtkZXM0MjVd LCBbZGVzX2NiY19lbmNyeXB0XSwKICAgICAgW2hhdmVfZGVzNDI1PXllc10sCiAgICAgIFto YXZlX2RlczQyNT1ub10pCiAgICBpZiB0ZXN0ICRoYXZlX2RlczQyNSA9IHllczsgdGhlbgog ICAgICBERVNMSUI9LWxkZXM0MjUKICAgICAgTElCUz0iJERFU0xJQiAkTElCUyIKICAgIGVs c2UKICAgICAgQUNfQ0hFQ0tfTElCKFtkZXNdLCBbZGVzX2NiY19lbmNyeXB0XSwgW2hhdmVf ZGVzPXllc10sIFtoYXZlX2Rlcz1ub10pCiAgICAgIGlmIHRlc3QgJGhhdmVfZGVzID0geWVz OyB0aGVuCiAgICAgICAgREVTTElCPS1sZGVzCiAgICAgICAgTElCUz0iJERFU0xJQiAkTElC UyIKICAgICAgZmkKICAgIGZpCiAgICBBQ19DSEVDS19MSUIoW2tyYjRdLCBba3JiX2dldF9j cmVkXSwgW2hhdmVfa3JiND15ZXNdLCBbaGF2ZV9rcmI0PW5vXSkKICAgIGlmIHRlc3QgJGhh dmVfa3JiNCA9IHllczsgdGhlbgogICAgICBLUkI0TElCPS1sa3JiNAogICAgICBMSUJTPSIk S1JCNExJQiAkTElCUyIKICAgIGVsc2UKICAgICAgQUNfQ0hFQ0tfTElCKFtrcmJdLCBba3Ji X2dldF9jcmVkXSwgW2hhdmVfa3JiPXllc10sIFtoYXZlX2tyYj1ub10pCiAgICAgIGlmIHRl c3QgJGhhdmVfa3JiID0geWVzOyB0aGVuCiAgICAgICAgS1JCNExJQj0tbGtyYgogICAgICAg IExJQlM9IiRLUkI0TElCICRMSUJTIgogICAgICBmaQogICAgZmkKICBmaQoKICBpZiB0ZXN0 ICIke3dpdGhfa2VyYmVyb3M1fSIgIT0gbm87IHRoZW4KICAgIEFDX0NIRUNLX0hFQURFUlMo W2tyYjUuaF0sCiAgICAgIFtBQ19DSEVDS19NRU1CRVJTKFtrcmI1X2Vycm9yLnRleHQsIGty YjVfZXJyb3IuZV90ZXh0XSwgW10sIFtdLAoJCSAgICAgICAgWyNpbmNsdWRlIDxrcmI1Lmg+ XSldKQogIGVsc2UKICAgIEFDX0NIRUNLX0hFQURFUlMoW2tyYi5oXSwgW10sCgkJICAgICBb QUNfQ0hFQ0tfSEVBREVSUyhba2VyYmVyb3NJVi9rcmIuaF0sIFtdLAoJCQkJICAgICAgIFtB Q19DSEVDS19IRUFERVJTKFtrZXJiZXJvcy9rcmIuaF0pXSldKQogIGZpCiAgQUNfQ0hFQ0tf SEVBREVSUyhbY29tX2Vyci5oXSkKICBMSUJTPSRPTERfTElCUwpmaQoKQUNfU1VCU1QoW0NP TV9FUlJMSUJdKQpBQ19TVUJTVChbQ1JZUFRPTElCXSkKQUNfU1VCU1QoW0tSQjVMSUJdKQpB Q19TVUJTVChbREVTTElCXSkKQUNfU1VCU1QoW0tSQjRMSUJdKQoKQUNfQ0hFQ0tfSEVBREVS UyhbdmFsZ3JpbmQvdmFsZ3JpbmQuaF0pCgpBQ19DSEVDS19NRU1CRVJTKFtzdHJ1Y3QgdW5p cGFpci51bmljb2RlXSwgW10sIFtdLCBbWyNpbmNsdWRlIDxsaW51eC9rZC5oPl1dKQoKQUNf Q0hFQ0tfRlVOQ1NfT05DRShbX19sc2FuX2lnbm9yZV9vYmplY3RdKQoKQUNfRlVOQ19GT1JL CgpkbmwgQUNfQ0hFQ0tfRlVOQ1NfT05DRSB3b3VsZG7igJl0IGJlIHJpZ2h0IGZvciBzbnBy aW50Ziwgd2hpY2ggbmVlZHMKZG5sIHRoZSBjdXJyZW50IENGTEFHUyBldGMuCkFDX0NIRUNL X0ZVTkNTKFtzbnByaW50Zl0pCgpkbmwgcG9zaXhfc3Bhd24uICBUaGUgY2hkaXIgYW5kIHNl dHNpZCBmdW5jdGlvbmFsaXR5IGlzIHJlbGF0aXZlbHkKZG5sIHJlY2VudCwgc28gd2UgY2hl Y2sgZm9yIGl0IHNwZWNpZmljYWxseS4KQUNfQ0hFQ0tfSEVBREVSUyhbc3Bhd24uaF0pCkFD X1NVQlNUKFtIQVZFX1NQQVdOX0hdKQpBQ19DSEVDS19GVU5DUyhbcG9zaXhfc3Bhd24gXAog ICAgICAgICAgICAgICAgcG9zaXhfc3Bhd25fZmlsZV9hY3Rpb25zX2FkZGNoZGlyIFwKICAg ICAgICAgICAgICAgIHBvc2l4X3NwYXduX2ZpbGVfYWN0aW9uc19hZGRjaGRpcl9ucCBcCiAg ICAgICAgICAgICAgICBwb3NpeF9zcGF3bmF0dHJfc2V0ZmxhZ3NdKQpBQ19TVUJTVChbSEFW RV9QT1NJWF9TUEFXTl0pCkFDX1NVQlNUKFtIQVZFX1BPU0lYX1NQQVdOX0ZJTEVfQUNUSU9O U19BRERDSERJUl0pCkFDX1NVQlNUKFtIQVZFX1BPU0lYX1NQQVdOX0ZJTEVfQUNUSU9OU19B RERDSERJUl9OUF0pCkFDX1NVQlNUKFtIQVZFX1BPU0lYX1NQQVdOQVRUUl9TRVRGTEFHU10p CkFDX0NIRUNLX0RFQ0xTKFtQT1NJWF9TUEFXTl9TRVRTSURdLCBbXSwgW10sIFtbCiAgICAg ICAgICAgICAgICNpbmNsdWRlIDxzcGF3bi5oPgogICAgICAgICAgICAgICBdXSkKQUNfU1VC U1QoW0hBVkVfREVDTF9QT1NJWF9TUEFXTl9TRVRTSURdKQoKZG5sIENoZWNrIGZvciBnbGli LiAgVGhpcyBkaWZmZXJzIGZyb20gb3RoZXIgbGlicmFyeSBjaGVja3MgaW4gdGhhdApkbmwg RW1hY3MgbmVlZCBub3QgbGluayB0byBnbGliIHVubGVzcyBzb21lIG90aGVyIGxpYnJhcnkg aXMgYWxyZWFkeQpkbmwgbGlua2luZyB0byBnbGliLiAgQWx0aG91Z2ggZ2xpYiBwcm92aWRl cyBubyBmYWNpbGl0aWVzIHRoYXQgRW1hY3MKZG5sIG5lZWRzIGZvciBpdHMgb3duIHB1cnBv c2VzLCB3aGVuIGdsaWIgaXMgcHJlc2VudCBFbWFjcyBuZWVkcyB0bwpkbmwgdXNlIHByaW1p dGl2ZXMgbGlrZSBnX21haW5fY29udGV4dF9xdWVyeSB0byBhdm9pZCBjbGFzaGluZyB3aXRo CmRubCBnbGliIGF0IGEgbG93IGxldmVsLgpkbmwKZG5sIENoZWNrIHRoaXMgbGF0ZSwgc2lu Y2UgaXQgZGVwZW5kcyBvbiAkR1RLX0NGTEFHUyBldGMuClhHU0VMT0JKPQpBQ19DQUNIRV9D SEVDSyhbd2hldGhlciBHTGliIGlzIGxpbmtlZCBpbl0sIFtlbWFjc19jdl9saW5rc19nbGli XSwKW09MRENGTEFHUz0iJENGTEFHUyIKT0xETElCUz0iJExJQlMiCkNGTEFHUz0iJENGTEFH UyAkR1RLX0NGTEFHUyAkUlNWR19DRkxBR1MgJERCVVNfQ0ZMQUdTICRTRVRUSU5HU19DRkxB R1MiCkxJQlM9IiRMSUJTICRHVEtfTElCUyAkUlNWR19MSUJTICREQlVTX0xJQlMgJFNFVFRJ TkdTX0xJQlMiCkNGTEFHUz0iJENGTEFHUyAkTk9USUZZX0NGTEFHUyAkQ0FJUk9fQ0ZMQUdT IgpMSUJTPSIkTElCUyAkTk9USUZZX0xJQlMgJENBSVJPX0xJQlMiCkFDX0xJTktfSUZFTFNF KFtBQ19MQU5HX1BST0dSQU0oCglbWyNpbmNsdWRlIDxnbGliLmg+CgldXSwKCVtbZ19wcmlu dCAoIkhlbGxvIHdvcmxkIik7XV0pXSwKICAgICBbZW1hY3NfY3ZfbGlua3NfZ2xpYj15ZXNd LAogICAgIFtlbWFjc19jdl9saW5rc19nbGliPW5vXSkKQ0ZMQUdTPSIkT0xEQ0ZMQUdTIgpM SUJTPSIkT0xETElCUyJdKQppZiB0ZXN0ICIke2VtYWNzX2N2X2xpbmtzX2dsaWJ9IiA9ICJ5 ZXMiOyB0aGVuCiAgQUNfREVGSU5FKFtIQVZFX0dMSUJdLCBbMV0sIFtEZWZpbmUgdG8gMSBp ZiBHTGliIGlzIGxpbmtlZCBpbi5dKQogIGlmIHRlc3QgIiRIQVZFX05TIiA9IG5vIDsgdGhl bgogICAgWEdTRUxPQko9eGdzZWxlY3QubwogIGZpCmZpCkFDX1NVQlNUKFtYR1NFTE9CSl0p CgpkbmwgQWRhcHRlZCBmcm9tIEhhaWJsZSdzIHZlcnNpb24uCkFDX0NBQ0hFX0NIRUNLKFtm b3IgbmxfbGFuZ2luZm8gYW5kIENPREVTRVRdLCBbZW1hY3NfY3ZfbGFuZ2luZm9fY29kZXNl dF0sCiAgW0FDX0xJTktfSUZFTFNFKFtBQ19MQU5HX1BST0dSQU0oW1sjaW5jbHVkZSA8bGFu Z2luZm8uaD5dXSwKICAgIFtbY2hhciAqY3MgPSBubF9sYW5naW5mbyhDT0RFU0VUKTtdXSld LAogICAgW2VtYWNzX2N2X2xhbmdpbmZvX2NvZGVzZXQ9eWVzXSwKICAgIFtlbWFjc19jdl9s YW5naW5mb19jb2Rlc2V0PW5vXSkKICBdKQppZiB0ZXN0ICIkZW1hY3NfY3ZfbGFuZ2luZm9f Y29kZXNldCIgPSB5ZXM7IHRoZW4KICBBQ19ERUZJTkUoW0hBVkVfTEFOR0lORk9fQ09ERVNF VF0sIFsxXSwKICAgIFtEZWZpbmUgaWYgeW91IGhhdmUgPGxhbmdpbmZvLmg+IGFuZCBubF9s YW5naW5mbyAoQ09ERVNFVCkuXSkKCiAgQUNfQ0FDSEVfQ0hFQ0soW2ZvciBubF9sYW5naW5m byBhbmQgX05MX1BBUEVSX1dJRFRIXSwKICAgIFtlbWFjc19jdl9sYW5naW5mb19fbmxfcGFw ZXJfd2lkdGhdLAogICAgW0FDX0xJTktfSUZFTFNFKFtBQ19MQU5HX1BST0dSQU0oW1sjaW5j bHVkZSA8bGFuZ2luZm8uaD5dXSwKICAgICAgW1tjaGFyICpjcyA9IG5sX2xhbmdpbmZvIChf TkxfUEFQRVJfV0lEVEgpO11dKV0sCiAgICAgIFtlbWFjc19jdl9sYW5naW5mb19fbmxfcGFw ZXJfd2lkdGg9eWVzXSwKICAgICAgW2VtYWNzX2N2X2xhbmdpbmZvX19ubF9wYXBlcl93aWR0 aD1ub10pCiAgICBdKQogIGlmIHRlc3QgIiRlbWFjc19jdl9sYW5naW5mb19fbmxfcGFwZXJf d2lkdGgiID0geWVzOyB0aGVuCiAgICBBQ19ERUZJTkUoW0hBVkVfTEFOR0lORk9fX05MX1BB UEVSX1dJRFRIXSwgWzFdLAogICAgICBbRGVmaW5lIGlmIHlvdSBoYXZlIDxsYW5naW5mby5o PiBhbmQgbmxfbGFuZ2luZm8gKF9OTF9QQVBFUl9XSURUSCkuXSkKICBmaQpmaQoKQUNfVFlQ RV9NQlNUQVRFX1QKCmRubCBGaXhtZTogQUNfU1lTX1BPU0lYX1RFUk1JT1Mgc2hvdWxkIHBy b2JhYmx5IGJlIHVzZWQsIGJ1dCBpdCdzIG5vdCBjbGVhcgpkbmwgaG93IHRoZSB0dHkgY29k ZSBpcyByZWxhdGVkIHRvIFBPU0lYIGFuZC9vciBvdGhlciB2ZXJzaW9ucyBvZiB0ZXJtaW9z LgpkbmwgVGhlIGZvbGxvd2luZyBsb29rcyBsaWtlIGEgdXNlZnVsIHN0YXJ0LgpkbmwKZG5s IEFDX1NZU19QT1NJWF9URVJNSU9TCmRubCBpZiB0ZXN0ICRhY19jdl9zeXNfcG9zaXhfdGVy bWlvcyA9IHllczsgdGhlbgpkbmwgICAgQUNfREVGSU5FKFtIQVZFX1RFUk1JT1NdLCBbMV0s CmRubCAgICAgIFtEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSBQT1NJWC1zdHlsZQpkbmwgICAg ICAgZnVuY3Rpb25zIGFuZCBtYWNyb3MgZm9yIHRlcm1pbmFsIGNvbnRyb2wuXSkKZG5sICAg IEFDX0RFRklORShbSEFWRV9UQ0FUVFJdLCBbMV0sCmRubCAgICAgIFtEZWZpbmUgdG8gMSBp ZiB5b3UgaGF2ZSB0Y2dldGF0dHIgYW5kIHRjc2V0YXR0ci5dKQpkbmwgZmkKCmRubCBUdXJu ZWQgb24gSnVuZSAxOTk2IHN1cHBvc2luZyBub2JvZHkgd2lsbCBtaW5kIGl0LgpkbmwgTWlu R1cgZW11bGF0ZXMgcGFzc3dkIGRhdGFiYXNlLCBzbyB0aGlzIGZlYXR1cmUgZG9lc24ndCBt YWtlIHNlbnNlIHRoZXJlLgppZiB0ZXN0ICIke29wc3lzfSIgIT0gIm1pbmd3MzIiOyB0aGVu CiAgIEFDX0RFRklORShbQU1QRVJTQU5EX0ZVTExfTkFNRV0sIFsxXSwgW0RlZmluZSB0byB1 c2UgdGhlIGNvbnZlbnRpb24gdGhhdCAmCiAgICAgaW4gdGhlIGZ1bGwgbmFtZSBzdGFuZHMg Zm9yIHRoZSBsb2dpbiBpZC5dKQpmaQoKZG5sIEV2ZXJ5Ym9keSBzdXBwb3J0cyB0aGlzLCBl eGNlcHQgTVMuCmRubCBTZWVtcyBsaWtlIHRoZSBraW5kIG9mIHRoaW5nIHdlIHNob3VsZCBi ZSB0ZXN0aW5nIGZvciwgdGhvdWdoLgojIyBOb3RlOiBQVFlzIGFyZSBicm9rZW4gb24gZGFy d2luIDw2LiAgVXNlIGF0IHlvdXIgb3duIHJpc2suCmlmIHRlc3QgIiR7b3BzeXN9IiAhPSAi bWluZ3czMiI7IHRoZW4KICBBQ19ERUZJTkUoW0hBVkVfUFRZU10sIFsxXSwgW0RlZmluZSBp ZiB0aGUgc3lzdGVtIHN1cHBvcnRzIHB0eSBkZXZpY2VzLl0pCmZpCgpkbmwgRXZlcnlib2R5 IHN1cHBvcnRzIHRoaXMsIGV4Y2VwdCBNUy1ET1MuCmRubCBTZWVtcyBsaWtlIHRoZSBraW5k IG9mIHRoaW5nIHdlIHNob3VsZCBiZSB0ZXN0aW5nIGZvciwgdGhvdWdoLgpBQ19ERUZJTkUo W0hBVkVfU09DS0VUU10sIFsxXSwgW0RlZmluZSBpZiB0aGUgc3lzdGVtIHN1cHBvcnRzCiAg NC4yLWNvbXBhdGlibGUgc29ja2V0cy5dKQoKQUhfVEVNUExBVEUoW0lOVEVSTkFMX1RFUk1J TkFMXSwKICBbVGhpcyBpcyBzdWJzdGl0dXRlZCB3aGVuICRURVJNIGlzICJpbnRlcm5hbCIu XSkKCkFIX1RFTVBMQVRFKFtOVUxMX0RFVklDRV0sIFtOYW1lIG9mIHRoZSBmaWxlIHRvIG9w ZW4gdG8gZ2V0CiAgYSBudWxsIGZpbGUsIG9yIGEgZGF0YSBzaW5rLl0pCmlmIHRlc3QgIiR7 b3BzeXN9IiA9ICJtaW5ndzMyIjsgdGhlbgogIEFDX0RFRklORShbTlVMTF9ERVZJQ0VdLCBb Ik5VTDoiXSkKZWxzZQogIEFDX0RFRklORShbTlVMTF9ERVZJQ0VdLCBbIi9kZXYvbnVsbCJd KQpmaQoKaWYgdGVzdCAiJHtvcHN5c30iID0gIm1pbmd3MzIiOyB0aGVuCiAgU0VQQ0hBUj0n OycKZWxzZQogIFNFUENIQVI9JzonCmZpCkFDX0RFRklORV9VTlFVT1RFRChbU0VQQ0hBUl0s IFsnJFNFUENIQVInXSwKICBbQ2hhcmFjdGVyIHRoYXQgc2VwYXJhdGVzIFBBVEggZWxlbWVu dHMuXSkKZG5sIFRoaXMgaXMgZm9yIE1pbkdXLCBhbmQgaXMgdXNlZCBpbiB0ZXN0L01ha2Vm aWxlLmluLgpkbmwgVGhlIE1TWVMgQmFzaCBoYXMgaGV1cmlzdGljcyBmb3IgcmVwbGFjaW5n ICc6JyB3aXRoICc7JyB3aGVuIGl0CmRubCBkZWNpZGVzIHRoYXQgYSBjb21tYW5kLWxpbmUg YXJndW1lbnQgdG8gYmUgcGFzc2VkIHRvIGEgTWluR1cgcHJvZ3JhbQpkbmwgaXMgYSBQQVRI LXN0eWxlIGxpc3Qgb2YgZGlyZWN0b3JpZXMuICBCdXQgdGhhdCBoZXVyaXN0aWNzIHBsYXlz IGl0CmRubCBzYWZlLCBhbmQgb25seSBkb2VzIHRoZSByZXBsYWNlbWVudCB3aGVuIGl0IGlz IF9hYnNvbHV0ZWx5XyBzdXJlIGl0CmRubCBzZWVzIGEgY29sb24tc2VwYXJhdGVkIGxpc3Qg b2YgZmlsZSBuYW1lczsgZS5nLiAiOi4iIGlzIGxlZnQgYWxvbmUsCmRubCB3aGljaCBicmVh a3MgaW4tdHJlZSBidWlsZHMuICBTbyB3ZSBkbyB0aGlzIG1hbnVhbGx5IGluc3RlYWQuCmRu bCBOb3RlIHRoYXQgd2UgY2Fubm90IHJlbHkgb24gUEFUSF9TRVBBUkFUT1IsIGFzIHRoYXQg b25lIHdpbGwgYWx3YXlzCmRubCBiZSBjb21wdXRlZCBhcyAnOicgaW4gTVNZUyBCYXNoLgpB Q19TVUJTVChbU0VQQ0hBUl0pCgpkbmwgRXZlcnlib2R5IHN1cHBvcnRzIHRoaXMsIGV4Y2Vw dCBNUy1ET1MuCkFDX0RFRklORShbc3VicHJvY2Vzc2VzXSwgWzFdLCBbRGVmaW5lIHRvIGVu YWJsZSBhc3luY2hyb25vdXMgc3VicHJvY2Vzc2VzLl0pCgpBQ19ERUZJTkUoW1VTRVJfRlVM TF9OQU1FXSwgW3B3LT5wd19nZWNvc10sIFtIb3cgdG8gZ2V0IGEgdXNlcidzIGZ1bGwgbmFt ZS5dKQoKCkFDX0RFRklORShbRElSRUNUT1JZX1NFUF0sIFsnLyddLAogIFtDaGFyYWN0ZXIg dGhhdCBzZXBhcmF0ZXMgZGlyZWN0b3JpZXMgaW4gYSBmaWxlIG5hbWUuXSkKCmlmIHRlc3Qg IiR7b3BzeXN9IiA9ICJtaW5ndzMyIjsgdGhlbgogIEFDX0RFRklORShbSVNfREVWSUNFX1NF UChfY18pXSwgWygoX2NfKSA9PSAnOicpXSwKICAgIFtSZXR1cm5zIHRydWUgaWYgY2hhcmFj dGVyIGlzIGEgZGV2aWNlIHNlcGFyYXRvci5dKQoKICBBQ19ERUZJTkUoW0lTX0RJUkVDVE9S WV9TRVAoX2NfKV0sIFsoKF9jXykgPT0gJy8nIHx8IChfY18pID09ICdcXCcpXSwKICAgIFtS ZXR1cm5zIHRydWUgaWYgY2hhcmFjdGVyIGlzIGEgZGlyZWN0b3J5IHNlcGFyYXRvci5dKQoK ICBBQ19ERUZJTkUoW0lTX0FOWV9TRVAoX2NfKV0sCiAgICBbKElTX0RJUkVDVE9SWV9TRVAg KF9jXykgfHwgSVNfREVWSUNFX1NFUCAoX2NfKSldLAogICAgW1JldHVybnMgdHJ1ZSBpZiBj aGFyYWN0ZXIgaXMgYW55IGZvcm0gb2Ygc2VwYXJhdG9yLl0pCmVsc2UKICBBQ19ERUZJTkUo W0lTX0RFVklDRV9TRVAoX2NfKV0sIDAsCiAgICBbUmV0dXJucyB0cnVlIGlmIGNoYXJhY3Rl ciBpcyBhIGRldmljZSBzZXBhcmF0b3IuXSkKCiAgQUNfREVGSU5FKFtJU19ESVJFQ1RPUllf U0VQKF9jXyldLCBbKChfY18pID09IERJUkVDVE9SWV9TRVApXSwKICAgIFtSZXR1cm5zIHRy dWUgaWYgY2hhcmFjdGVyIGlzIGEgZGlyZWN0b3J5IHNlcGFyYXRvci5dKQoKICBBQ19ERUZJ TkUoW0lTX0FOWV9TRVAoX2NfKV0sIFsoSVNfRElSRUNUT1JZX1NFUCAoX2NfKSldLAogICAg W1JldHVybnMgdHJ1ZSBpZiBjaGFyYWN0ZXIgaXMgYW55IGZvcm0gb2Ygc2VwYXJhdG9yLl0p CmZpCgppZiB0ZXN0ICIkVVNFX1hfVE9PTEtJVCIgIT0gIm5vbmUiOyB0aGVuCiAgaGF2ZV9l ZGl0cmVzPXllcwogIGNhc2UgJG9wc3lzIGluCiAgICBocHV4KikKICAgICAgZG5sIEFzc2Fy IFdlc3Rlcmx1bmQgPGFzc2FyQHNpY3Muc2U+IHNheXMgdGhpcyBpcyBuZWNlc3NhcnkKICAg ICAgZG5sIGZvciBIUC1VWCAxMC4yMCwgYW5kIHRoYXQgaXQgd29ya3MgZm9yIEhQLVVYIDAg YXMgd2VsbC4KICAgICAgaGF2ZV9lZGl0cmVzPW5vCiAgICA7OwogIGVzYWMKICBpZiB0ZXN0 ICIkaGF2ZV9lZGl0cmVzIiAhPSBubyAmJiB0ZXN0ICEgLXogIiRMSUJYTVUiOyB0aGVuCiAg ICBPTERMSUJTPSIkTElCUyIKICAgIGRubCBTZWUgbGliWG11LmEgY2hlY2sgYWJvdmUuCiAg ICBpZiB0ZXN0IHgkSEFWRV9YMTFYVFI2ID0geHllczsgdGhlbgogICAgICBMSUJTPSItbFh0 IC1sU00gLWxJQ0UgJExJQlhNVSIKICAgIGVsc2UKICAgICAgT1RIRVJMSUJTPSItbFh0IC0k TElCWE1VIgogICAgZmkKICAgIEFDX0xJTktfSUZFTFNFKFtBQ19MQU5HX1BST0dSQU0oCiAg ICAgIFtbI2luY2x1ZGUgPFgxMS9JbnRyaW5zaWMuaD4KICAgICAgICNpbmNsdWRlIDxYMTEv WG11L0VkaXRyZXMuaD5dXSwKICAgICAgW1tfWEVkaXRSZXNDaGVja01lc3NhZ2VzICgwLCAw LCAwLCAwKTtdXSldLAogICAgICBbQUNfREVGSU5FKFtYX1RPT0xLSVRfRURJVFJFU10sIFsx XSwKICAgICAgICBbRGVmaW5lIHRvIDEgaWYgd2Ugc2hvdWxkIHVzZSBYRWRpdFJlcy5dKV0p CiAgICBMSUJTPSRPTERMSUJTCiAgZmkKZmkKCmNhc2UgJG9wc3lzIGluCiAgc29sYXJpcyB8 IHVuaXh3YXJlICkKICAgIGRubCBTb21lIFNWcjRzIGRvbid0IGRlZmluZSBOU0lHIGluIHN5 cy9zaWduYWwuaCBmb3IgQU5TSSBlbnZpcm9ubWVudHM7CiAgICBkbmwgaW5zdGVhZCwgdGhl cmUncyBhIHN5c3RlbSB2YXJpYWJsZSBfc3lzX25zaWcuICBVbmZvcnR1bmF0ZWx5LCB3ZQog ICAgZG5sIG5lZWQgdGhlIGNvbnN0YW50IHRvIGRpbWVuc2lvbiBhbiBhcnJheS4gIFNvIHdp cmUgaW4gdGhlIGFwcHJvcHJpYXRlCiAgICBkbmwgdmFsdWUgaGVyZS4KICAgIEFDX0RFRklO RShbTlNJR19NSU5JTVVNXSwgWzMyXSwgW01pbmltdW0gdmFsdWUgb2YgTlNJRy5dKQogICAg OzsKZXNhYwoKZW1hY3NfYnJva2VuX1NJR0lPPW5vCgpjYXNlICRvcHN5cyBpbgogIGRubCBT SUdJTyBleGlzdHMsIGJ1dCB0aGUgZmVhdHVyZSBkb2Vzbid0IHdvcmsgaW4gdGhlIHdheSBF bWFjcyBuZWVkcy4KICBocHV4KiB8IG5hY2wgfCBzb2xhcmlzIHwgdW5peHdhcmUgKQogICAg ZW1hY3NfYnJva2VuX1NJR0lPPXllcwogICAgOzsKCiAgYWl4NC0yKQogICAgZG5sIE9uIEFJ WCBFbWFjcyB1c2VzIHRoZSBnbWFsbG9jLmMgbWFsbG9jIGltcGxlbWVudGF0aW9uLiAgQnV0 IGdpdmVuCiAgICBkbmwgdGhlIHdheSB0aGlzIHN5c3RlbSB3b3JrcywgbGliYyBmdW5jdGlv bnMgdGhhdCByZXR1cm4gbWFsbG9jZWQKICAgIGRubCBtZW1vcnkgdXNlIHRoZSBsaWJjIG1h bGxvYyBpbXBsZW1lbnRhdGlvbi4gQ2FsbGluZyB4ZnJlZSBvcgogICAgZG5sIHhyZWFsbG9j IG9uIHRoZSByZXN1bHRzIG9mIHN1Y2ggZnVuY3Rpb25zIHJlc3VsdHMgaW4gYSBjcmFzaC4K ICAgIGRubAogICAgZG5sIE9uZSBzb2x1dGlvbiBmb3IgdGhpcyBjb3VsZCBiZSB0byBkZWZp bmUgU1lTVEVNX01BTExPQyBpbiBjb25maWd1cmUsCiAgICBkbmwgYnV0IHRoYXQgZG9lcyBu b3QgY3VycmVudGx5IHdvcmsgb24gdGhpcyBzeXN0ZW0uCiAgICBkbmwKICAgIGRubCBJdCBp cyBwb3NzaWJsZSB0byBjb21wbGV0ZWx5IG92ZXJyaWRlIHRoZSBtYWxsb2MgaW1wbGVtZW50 YXRpb24gb24KICAgIGRubCBBSVgsIGJ1dCB0aGF0IGludm9sdmVzIHB1dHRpbmcgdGhlIG1h bGxvYyBmdW5jdGlvbnMgaW4gYSBzaGFyZWQKICAgIGRubCBsaWJyYXJ5IGFuZCBzZXR0aW5n IHRoZSBNQUxMT0NUWVBFIGVudmlyb25tZW50IHZhcmlhYmxlIHRvIHBvaW50IHRvCiAgICBk bmwgdGhhdCBzaGFyZWQgbGlicmFyeS4KICAgIGRubAogICAgZG5sIEVtYWNzIGN1cnJlbnRs eSBjYWxscyB4cmVhbGxvYyBvbiB0aGUgcmVzdWx0cyBvZiBnZXRfY3VycmVudF9kaXIgbmFt ZSwKICAgIGRubCB0byBhdm9pZCBhIGNyYXNoIGp1c3QgdXNlIHRoZSBFbWFjcyBpbXBsZW1l bnRhdGlvbiBmb3IgdGhhdCBmdW5jdGlvbi4KICAgIGRubAogICAgZG5sIEZJWE1FIFdlIGNv dWxkIGNoYW5nZSB0aGUgQUNfQ0hFQ0tfRlVOQ1MgY2FsbCBuZWFyIHRoZSBzdGFydAogICAg ZG5sIG9mIHRoaXMgZmlsZSwgc28gdGhhdCB3ZSBkbyBub3QgY2hlY2sgZm9yIGdldF9jdXJy ZW50X2Rpcl9uYW1lCiAgICBkbmwgb24gQUlYLiAgQnV0IHRoYXQgbWlnaHQgYmUgZnJhZ2ls ZSBpZiBzb21ldGhpbmcgZWxzZSBlbmRzCiAgICBkbmwgdXAgdGVzdGluZyBmb3IgZ2V0X2N1 cnJlbnRfZGlyX25hbWUgYXMgYSBkZXBlbmRlbmN5LgogICAgQUNfREVGSU5FKFtCUk9LRU5f R0VUX0NVUlJFTlRfRElSX05BTUVdLCBbMV0sIFtEZWZpbmUgaWYKICAgICAgZ2V0X2N1cnJl bnRfZGlyX25hbWUgc2hvdWxkIG5vdCBiZSB1c2VkLl0pCiAgICA7OwoKICBmcmVlYnNkKQog ICAgZG5sIENpcmN1bXZlbnQgYSBidWcgaW4gRnJlZUJTRC4gIEluIHRoZSBmb2xsb3dpbmcg c2VxdWVuY2Ugb2YKICAgIGRubCB3cml0ZXMvcmVhZHMgb24gYSBQVFksIHJlYWQoMikgcmV0 dXJucyBib2d1cyBkYXRhOgogICAgZG5sCiAgICBkbmwgd3JpdGUoMikgIDEwMjIgYnl0ZXMK ICAgIGRubCB3cml0ZSgyKSAgIDk1NCBieXRlcywgZ2V0IEVBR0FJTgogICAgZG5sIHJlYWQo MikgICAxMDI0IGJ5dGVzIGluIHByb2Nlc3NfcmVhZF9vdXRwdXQKICAgIGRubCByZWFkKDIp ICAgICAxMSBieXRlcyBpbiBwcm9jZXNzX3JlYWRfb3V0cHV0CiAgICBkbmwKICAgIGRubCBU aGF0IGlzLCByZWFkKDIpIHJldHVybnMgbW9yZSBieXRlcyB0aGFuIGhhdmUgZXZlciBiZWVu IHdyaXR0ZW4KICAgIGRubCBzdWNjZXNzZnVsbHkuICBUaGUgMTAzMyBieXRlcyByZWFkIGFy ZSB0aGUgMTAyMiBieXRlcyB3cml0dGVuCiAgICBkbmwgc3VjY2Vzc2Z1bGx5IGFmdGVyIHBy b2Nlc3NpbmcgKGZvciBleGFtcGxlIHdpdGggQ1JzIGFkZGVkIGlmIHRoZQogICAgZG5sIHRl cm1pbmFsIGlzIHNldCB1cCB0aGF0IHdheSB3aGljaCBpdCBpcyBoZXJlKS4gIFRoZSBzYW1l IGJ5dGVzIHdpbGwKICAgIGRubCBiZSBzZWVuIGFnYWluIGluIGEgbGF0ZXIgcmVhZCgyKSwg d2l0aG91dCB0aGUgQ1JzLgogICAgQUNfREVGSU5FKFtCUk9LRU5fUFRZX1JFQURfQUZURVJf RUFHQUlOXSwgWzFdLCBbRGVmaW5lIG9uIEZyZWVCU0QgdG8KICAgICAgd29yayBhcm91bmQg YW4gaXNzdWUgd2hlbiByZWFkaW5nIGZyb20gYSBQVFkuXSkKICAgIDs7CmVzYWMKCmNhc2Ug JG9wc3lzIGluCiAgZ251LSogfCBzb2xhcmlzICkKICAgIGRubCBGSVhNRSBDYW4ndCB3ZSB0 ZXN0IGlmIHRoaXMgZXhpc3RzIChlZyAvcHJvYy8kJCk/CiAgICBBQ19ERUZJTkUoW0hBVkVf UFJPQ0ZTXSwgWzFdLCBbRGVmaW5lIGlmIHlvdSBoYXZlIHRoZSAvcHJvYyBmaWxlc3lzdGVt Ll0pCiAgOzsKZXNhYwoKY2FzZSAkb3BzeXMgaW4KICBkYXJ3aW4gfCBkcmFnb25mbHkgfCBm cmVlYnNkIHwgbmV0YnNkIHwgb3BlbmJzZCApCiAgICBBQ19ERUZJTkUoW0RPTlRfUkVPUEVO X1BUWV0sIFsxXSwgW0RlZmluZSBpZiBwcm9jZXNzLmMgZG9lcyBub3QgbmVlZCB0bwogICAg ICBjbG9zZSBhIHB0eSB0byBtYWtlIGl0IGEgY29udHJvbGxpbmcgdGVybWluYWwgKGl0IGlz IGFscmVhZHkgYQogICAgICBjb250cm9sbGluZyB0ZXJtaW5hbCBvZiB0aGUgc3VicHJvY2Vz cywgYmVjYXVzZSB3ZSBkaWQgaW9jdGwgVElPQ1NDVFRZKS5dKQogIDs7CmVzYWMKCmRubCBG SVhNRSBTdXJlbHkgd2UgY2FuIHRlc3QgZm9yIHRoaXMgcmF0aGVyIHRoYW4gaGFyZC1jb2Rl IGl0LgpjYXNlICRvcHN5cyBpbgogIG5ldGJzZCB8IG9wZW5ic2QpIHNvdW5kX2RldmljZT0i L2Rldi9hdWRpbyIgOzsKICAqKSBzb3VuZF9kZXZpY2U9Ii9kZXYvZHNwIiA7Owplc2FjCgpk bmwgVXNlZCBpbiBzb3VuZC5jCkFDX0RFRklORV9VTlFVT1RFRChbREVGQVVMVF9TT1VORF9E RVZJQ0VdLCBbIiRzb3VuZF9kZXZpY2UiXSwKICBbTmFtZSBvZiB0aGUgZGVmYXVsdCBzb3Vu ZCBkZXZpY2UuXSkKCgpkbmwgRW1hY3MgY2FuIHJlYWQgaW5wdXQgdXNpbmcgU0lHSU8gYW5k IGJ1ZmZlcmluZyBjaGFyYWN0ZXJzIGl0c2VsZiwKZG5sIG9yIHVzaW5nIENCUkVBSyBtb2Rl IGFuZCBtYWtpbmcgQy1nIGNhdXNlIFNJR0lOVC4KZG5sIFRoZSBjaG9pY2UgaXMgY29udHJv bGxlZCBieSB0aGUgdmFyaWFibGUgaW50ZXJydXB0X2lucHV0LgpkbmwKZG5sIERlZmluZSBJ TlRFUlJVUFRfSU5QVVQgdG8gbWFrZSBpbnRlcnJ1cHRfaW5wdXQgPSAxIHRoZSBkZWZhdWx0 ICh1c2UgU0lHSU8pCmRubApkbmwgRW1hY3MgdXNlcyB0aGUgcHJlc2VuY2Ugb2YgdGhlIFVT QUJMRV9TSUdJTyBtYWNybwpkbmwgdG8gaW5kaWNhdGUgd2hldGhlciBvciBub3Qgc2lnbmFs LWRyaXZlbiBJL08gaXMgcG9zc2libGUuICBJdCB1c2VzCmRubCBJTlRFUlJVUFRfSU5QVVQg dG8gZGVjaWRlIHdoZXRoZXIgdG8gdXNlIGl0IGJ5IGRlZmF1bHQuCmRubApkbmwgU0lHSU8g Y2FuIGJlIHVzZWQgb25seSBvbiBzeXN0ZW1zIHRoYXQgaW1wbGVtZW50IGl0ICg0LjIgYW5k IDQuMykuCmRubCBDQlJFQUsgbW9kZSBoYXMgdHdvIGRpc2FkdmFudGFnZXMKZG5sIDEpIEF0 IGxlYXN0IGluIDQuMiwgaXQgaXMgaW1wb3NzaWJsZSB0byBoYW5kbGUgdGhlIE1ldGEga2V5 IHByb3Blcmx5LgpkbmwgSSBoZWFyIHRoYXQgaW4gc3lzdGVtIFYgdGhpcyBwcm9ibGVtIGRv ZXMgbm90IGV4aXN0LgpkbmwgMikgQ29udHJvbC1HIGNhdXNlcyBvdXRwdXQgdG8gYmUgZGlz Y2FyZGVkLgpkbmwgSSBkbyBub3Qga25vdyB3aGV0aGVyIHRoaXMgY2FuIGJlIGZpeGVkIGlu IHN5c3RlbSBWLgpkbmwKZG5sIEFub3RoZXIgbWV0aG9kIG9mIGRvaW5nIGlucHV0IGlzIHBs YW5uZWQgYnV0IG5vdCBpbXBsZW1lbnRlZC4KZG5sIEl0IHdvdWxkIGhhdmUgRW1hY3MgZm9y ayBvZmYgYSBzZXBhcmF0ZSBwcm9jZXNzCmRubCB0byByZWFkIHRoZSBpbnB1dCBhbmQgc2Vu ZCBpdCB0byB0aGUgdHJ1ZSBFbWFjcyBwcm9jZXNzCmRubCB0aHJvdWdoIGEgcGlwZS4KY2Fz ZSAkb3BzeXMgaW4KICBkYXJ3aW4gfCBnbnUtbGludXggfCBnbnUta2ZyZWVic2QpCiAgICBB Q19ERUZJTkUoW0lOVEVSUlVQVF9JTlBVVF0sIFsxXSwgW0RlZmluZSB0byByZWFkIGlucHV0 IHVzaW5nIFNJR0lPLl0pCiAgOzsKZXNhYwoKCmRubCBJZiB0aGUgc3lzdGVtJ3MgaW1ha2Ug Y29uZmlndXJhdGlvbiBmaWxlIGRlZmluZXMgJ05lZWRXaWRlUHJvdG90eXBlcycKZG5sIGFz ICdOTycsIHdlIG11c3QgZGVmaW5lIE5BUlJPV1BST1RPIG1hbnVhbGx5LiAgU3VjaCBhIGRl ZmluZSBpcwpkbmwgZ2VuZXJhdGVkIGluIHRoZSBNYWtlZmlsZSBnZW5lcmF0ZWQgYnkgJ3ht a21mJy4gIElmIHdlIGRvbid0IGRlZmluZQpkbmwgTkFSUk9XUFJPVE8sIHdlIHdpbGwgc2Vl IHRoZSB3cm9uZyBmdW5jdGlvbiBwcm90b3R5cGVzIGZvciBYIGZ1bmN0aW9ucwpkbmwgdGFr aW5nIGZsb2F0IG9yIGRvdWJsZSBwYXJhbWV0ZXJzLgpjYXNlICRvcHN5cyBpbgogIGN5Z3dp bnxnbnV8Z251LWxpbnV4fGdudS1rZnJlZWJzZHxmcmVlYnNkfG5ldGJzZHxvcGVuYnNkKQog ICAgQUNfREVGSU5FKFtOQVJST1dQUk9UT10sIFsxXSwgW0RlZmluZSBpZiBzeXN0ZW0ncyBp bWFrZSBjb25maWd1cmF0aW9uCiAgICAgIGZpbGUgZGVmaW5lcyAnTmVlZFdpZGVQcm90b3R5 cGVzJyBhcyAnTk8nLl0pCiAgOzsKZXNhYwoKCmRubCBVc2VkIGluIHByb2Nlc3MuYywgdGhp cyBtdXN0IGJlIGEgbG9vcCwgZXZlbiBpZiBpdCBvbmx5IHJ1bnMgb25jZS4KQUhfVEVNUExB VEUoW1BUWV9JVEVSQVRJT05dLCBbSG93IHRvIGl0ZXJhdGUgb3ZlciBQVFlzLl0pCmRubCBP bmx5IHVzZWQgaWYgIVBUWV9JVEVSQVRJT04uICBJdGVyYXRlIGZyb20gRklSU1RfUFRZX0xF VFRFUiB0byB6LApkbmwgdHJ5aW5nIHN1ZmZpeGVzIDAtMTYuCkFIX1RFTVBMQVRFKFtGSVJT VF9QVFlfTEVUVEVSXSwgW0xldHRlciB0byB1c2UgaW4gZmluZGluZyBkZXZpY2UgbmFtZSBv ZgogIGZpcnN0IFBUWSwgaWYgUFRZcyBhcmUgc3VwcG9ydGVkLl0pCkFIX1RFTVBMQVRFKFtQ VFlfT1BFTl0sIFtIb3cgdG8gb3BlbiBhIFBUWSwgaWYgbm9uLXN0YW5kYXJkLl0pCkFIX1RF TVBMQVRFKFtQVFlfTkFNRV9TUFJJTlRGXSwgW0hvdyB0byBnZXQgdGhlIGRldmljZSBuYW1l IG9mIHRoZSBjb250cm9sCiAgZW5kIG9mIGEgUFRZLCBpZiBub24tc3RhbmRhcmQuXSkKQUhf VEVNUExBVEUoW1BUWV9UVFlfTkFNRV9TUFJJTlRGXSwgW0hvdyB0byBnZXQgZGV2aWNlIG5h bWUgb2YgdGhlIHR0eQogIGVuZCBvZiBhIFBUWSwgaWYgbm9uLXN0YW5kYXJkLl0pCgpjYXNl ICRvcHN5cyBpbgogIGFpeDQtMiApCiAgICBBQ19ERUZJTkUoW1BUWV9JVEVSQVRJT05dLCBb aW50IGM7IGZvciAoYyA9IDA7ICFjIDsgYysrKV0pCiAgICBkbmwgWW91IGFsbG9jYXRlIGEg cHR5IGJ5IG9wZW5pbmcgL2Rldi9wdGMgdG8gZ2V0IHRoZSBtYXN0ZXIgc2lkZS4KICAgIGRu bCBUbyBnZXQgdGhlIG5hbWUgb2YgdGhlIHNsYXZlIHNpZGUsIHlvdSBqdXN0IHR0eW5hbWUo KSB0aGUgbWFzdGVyIHNpZGUuCiAgICBBQ19ERUZJTkUoW1BUWV9OQU1FX1NQUklOVEZdLCBb c3RyY3B5IChwdHlfbmFtZSwgIi9kZXYvcHRjIik7XSkKICAgIEFDX0RFRklORShbUFRZX1RU WV9OQU1FX1NQUklOVEZdLCBbc3RyY3B5IChwdHlfbmFtZSwgdHR5bmFtZSAoZmQpKTtdKQog ICAgOzsKCiAgY3lnd2luICkKICAgIEFDX0RFRklORShbUFRZX0lURVJBVElPTl0sIFtpbnQg aTsgZm9yIChpID0gMDsgaSA8IDE7IGkrKyldKQogICAgZG5sIG11bHRpLWxpbmUgQUNfREVG SU5FcyBhcmUgaGFyZC4gOigKICAgIEFDX0RFRklORShbUFRZX09QRU5dLAogICAgICBbIGRv IHsgaW50IGR1bW15OyBzaWdzZXRfdCBibG9ja2VkLCBwcm9jbWFzazsgc2lnZW1wdHlzZXQg KCZibG9ja2VkKTsgc2lnYWRkc2V0ICgmYmxvY2tlZCwgU0lHQ0hMRCk7IHB0aHJlYWRfc2ln bWFzayAoU0lHX0JMT0NLLCAmYmxvY2tlZCwgJnByb2NtYXNrKTsgaWYgKC0xID09IG9wZW5w dHkgKCZmZCwgJmR1bW15LCBwdHlfbmFtZSwgMCwgMCkpIGZkID0gLTE7IHB0aHJlYWRfc2ln bWFzayAoU0lHX1NFVE1BU0ssICZwcm9jbWFzaywgMCk7IGlmIChmZCA+PSAwKSBlbWFjc19j bG9zZSAoZHVtbXkpOyB9IHdoaWxlIChmYWxzZSldKQogICAgQUNfREVGSU5FKFtQVFlfTkFN RV9TUFJJTlRGXSwgW10pCiAgICBBQ19ERUZJTkUoW1BUWV9UVFlfTkFNRV9TUFJJTlRGXSwg W10pCiAgICA7OwoKICBnbnUgfCBxbnhudG8gKQogICAgQUNfREVGSU5FKFtGSVJTVF9QVFlf TEVUVEVSXSwgWydwJ10pCiAgICA7OwoKICBnbnUtbGludXggfCBnbnUta2ZyZWVic2QgfCBk cmFnb25mbHkgfCBmcmVlYnNkIHwgb3BlbmJzZCB8IG5ldGJzZCB8IGRhcndpbiB8IG5hY2wg KQogICAgZG5sIGlmIEhBVkVfR1JBTlRQVAogICAgaWYgdGVzdCAieCRhY19jdl9mdW5jX2dy YW50cHQiID0geHllczsgdGhlbgogICAgICBBQ19ERUZJTkUoW1VOSVg5OF9QVFlTXSwgWzFd LCBbRGVmaW5lIGlmIHRoZSBzeXN0ZW0gaGFzIFVuaXg5OCBQVFlzLl0pCiAgICAgIEFDX0RF RklORShbUFRZX0lURVJBVElPTl0sIFtpbnQgaTsgZm9yIChpID0gMDsgaSA8IDE7IGkrKyld KQogICAgICBkbmwgTm90ZSB0aGF0IGdyYW50cHQgYW5kIHVubG9ja3B0IG1heSBmb3JrLiAg V2UgbXVzdCBibG9jayBTSUdDSExECiAgICAgIGRubCB0byBwcmV2ZW50IHNpZ2NobGRfaGFu ZGxlciBmcm9tIGludGVyY2VwdGluZyB0aGUgY2hpbGQncyBkZWF0aC4KICAgICAgQUNfREVG SU5FKFtQVFlfVFRZX05BTUVfU1BSSU5URl0sCglbeyBjaGFyICpwdHluYW1lID0gMDsgc2ln c2V0X3QgYmxvY2tlZDsgc2lnZW1wdHlzZXQgKCZibG9ja2VkKTsgc2lnYWRkc2V0ICgmYmxv Y2tlZCwgU0lHQ0hMRCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX0JMT0NLLCAmYmxvY2tlZCwg MCk7IGlmIChncmFudHB0IChmZCkgIT0gLTEgJiYgdW5sb2NrcHQgKGZkKSAhPSAtMSkgcHR5 bmFtZSA9IHB0c25hbWUoZmQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19VTkJMT0NLLCAmYmxv Y2tlZCwgMCk7IGlmICghcHR5bmFtZSkgeyBlbWFjc19jbG9zZSAoZmQpOyByZXR1cm4gLTE7 IH0gc25wcmludGYgKHB0eV9uYW1lLCBQVFlfTkFNRV9TSVpFLCAiJXMiLCBwdHluYW1lKTsg fV0pCiAgICAgIGRubCBpZiBIQVZFX1BPU0lYX09QRU5QVAogICAgICBpZiB0ZXN0ICJ4JGFj X2N2X2Z1bmNfcG9zaXhfb3BlbnB0IiA9IHh5ZXM7IHRoZW4KCUFDX0RFRklORShbUFRZX09Q RU5dLAoJICBbZG8geyBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19DTE9FWEVDIHwg T19OT0NUVFkpOyBpZiAoZmQgPCAwICYmIGVycm5vID09IEVJTlZBTCkgZmQgPSBwb3NpeF9v cGVucHQgKE9fUkRXUiB8IE9fTk9DVFRZKTsgfSB3aGlsZSAoZmFsc2UpXSkKCUFDX0RFRklO RShbUFRZX05BTUVfU1BSSU5URl0sIFtdKQogICAgICBkbmwgaWYgSEFWRV9HRVRQVAogICAg ICBlbGlmIHRlc3QgIngkYWNfY3ZfZnVuY19nZXRwdCIgPSB4eWVzOyB0aGVuCglBQ19ERUZJ TkUoW1BUWV9PUEVOXSwgW2ZkID0gZ2V0cHQgKCldKQoJQUNfREVGSU5FKFtQVFlfTkFNRV9T UFJJTlRGXSwgW10pCiAgICAgIGVsc2UKCUFDX0RFRklORShbUFRZX05BTUVfU1BSSU5URl0s IFtzdHJjcHkgKHB0eV9uYW1lLCAiL2Rldi9wdG14Iik7XSkKICAgICAgZmkKICAgIGVsc2UK ICAgICAgQUNfREVGSU5FKFtGSVJTVF9QVFlfTEVUVEVSXSwgWydwJ10pCiAgICBmaQogICAg OzsKCiAgaHB1eCopCiAgICBBQ19ERUZJTkUoW0ZJUlNUX1BUWV9MRVRURVJdLCBbJ3AnXSkK ICAgIEFDX0RFRklORShbUFRZX05BTUVfU1BSSU5URl0sCiAgICAgIFtzcHJpbnRmIChwdHlf bmFtZSwgIi9kZXYvcHR5bS9wdHklYyV4IiwgYywgaSk7XSkKICAgIEFDX0RFRklORShbUFRZ X1RUWV9OQU1FX1NQUklOVEZdLAogICAgICBbc3ByaW50ZiAocHR5X25hbWUsICIvZGV2L3B0 eS90dHklYyV4IiwgYywgaSk7XSkKICAgIDs7CgogIHNvbGFyaXMgKQogICAgZG5sIE9uIFN5 c1ZyNCwgZ3JhbnRwdCgzKSBmb3JrcyBhIHN1YnByb2Nlc3MsIHNvIGRvIG5vdCB1c2UKICAg IGRubCBPX0NMT0VYRUMgd2hlbiBvcGVuaW5nIHRoZSBwdHksIGFuZCBrZWVwIHRoZSBTSUdD SExEIGhhbmRsZXIKICAgIGRubCBmcm9tIGludGVyY2VwdGluZyB0aGF0IGRlYXRoLiAgSWYg YW55IGNoaWxkIGJ1dCBncmFudHB0J3Mgc2hvdWxkIGRpZQogICAgZG5sIHdpdGhpbiwgaXQg c2hvdWxkIGJlIGNhdWdodCBhZnRlciBzaWdyZWxzZSgyKS4KICAgIEFDX0RFRklORShbUFRZ X09QRU5dLCBbZmQgPSBvcGVuIChwdHlfbmFtZSwgT19SRFdSIHwgT19OT05CTE9DSyldKQog ICAgQUNfREVGSU5FKFtQVFlfVFRZX05BTUVfU1BSSU5URl0sCiAgICAgIFt7IGNoYXIgKnB0 c25hbWUgKGludCksICpwdHluYW1lOyBpbnQgZ3JhbnRwdF9yZXN1bHQ7IHNpZ3NldF90IGJs b2NrZWQ7IHNpZ2VtcHR5c2V0ICgmYmxvY2tlZCk7IHNpZ2FkZHNldCAoJmJsb2NrZWQsIFNJ R0NITEQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19CTE9DSywgJmJsb2NrZWQsIDApOyBncmFu dHB0X3Jlc3VsdCA9IGdyYW50cHQgKGZkKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfVU5CTE9D SywgJmJsb2NrZWQsIDApOyBpZiAoZ3JhbnRwdF9yZXN1bHQgPT0gLTEgfHwgdW5sb2NrcHQg KGZkKSA9PSAtMSB8fCAhKHB0eW5hbWUgPSBwdHNuYW1lIChmZCkpKSB7IGVtYWNzX2Nsb3Nl IChmZCk7IHJldHVybiAtMTsgfSBzbnByaW50ZiAocHR5X25hbWUsIFBUWV9OQU1FX1NJWkUs ICIlcyIsIHB0eW5hbWUpOyB9XSkKICAgIDs7CgogIHVuaXh3YXJlICkKICAgIGRubCBDb21t ZW50cyBhcmUgYXMgcGVyIHNvbGFyaXMuCiAgICBBQ19ERUZJTkUoW1BUWV9PUEVOXSwgW2Zk ID0gb3BlbiAocHR5X25hbWUsIE9fUkRXUiB8IE9fTk9OQkxPQ0spXSkKICAgIEFDX0RFRklO RShbUFRZX1RUWV9OQU1FX1NQUklOVEZdLAogICAgICBbeyBjaGFyICpwdHNuYW1lIChpbnQp LCAqcHR5bmFtZTsgaW50IGdyYW50cHRfcmVzdWx0OyBzaWdzZXRfdCBibG9ja2VkOyBzaWdl bXB0eXNldCAoJmJsb2NrZWQpOyBzaWdhZGRzZXQgKCZibG9ja2VkLCBTSUdDSExEKTsgcHRo cmVhZF9zaWdtYXNrIChTSUdfQkxPQ0ssICZibG9ja2VkLCAwKTsgZ3JhbnRwdF9yZXN1bHQg PSBncmFudHB0IChmZCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX1VOQkxPQ0ssICZibG9ja2Vk LCAwKTsgaWYgKGdyYW50cHRfcmVzdWx0ID09IC0xKSBmYXRhbCgiY291bGQgbm90IGdyYW50 IHNsYXZlIHB0eSIpOyBpZiAodW5sb2NrcHQoZmQpID09IC0xKSBmYXRhbCgiY291bGQgbm90 IHVubG9jayBzbGF2ZSBwdHkiKTsgaWYgKCEocHR5bmFtZSA9IHB0c25hbWUoZmQpKSkgZmF0 YWwgKCJjb3VsZCBub3QgZW5hYmxlIHNsYXZlIHB0eSIpOyBzbnByaW50ZiAocHR5X25hbWUs IFBUWV9OQU1FX1NJWkUsICIlcyIsIHB0eW5hbWUpOyB9XSkKICAgIDs7CgogIGhhaWt1KikK ICAgIEFDX0RFRklORShbRklSU1RfUFRZX0xFVFRFUl0sIFsncyddKQogICAgQUNfREVGSU5F KFtQVFlfTkFNRV9TUFJJTlRGXSwgW10pCiAgICBkbmwgb24gSGFpa3UgcHR5IG5hbWVzIGFy ZW4ndCBkaXN0aW5jdGl2ZSwgdGh1cyB0aGUgdXNlIG9mIHBvc2l4X29wZW5wdAogICAgQUNf REVGSU5FKFtQVFlfT1BFTl0sIFtmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19OT05C TE9DSyldKQogICAgQUNfREVGSU5FKFtQVFlfVFRZX05BTUVfU1BSSU5URl0sCiAgICAgIFt7 IGNoYXIgKnB0eW5hbWU7IGludCBncmFudHB0X3Jlc3VsdDsgc2lnc2V0X3QgYmxvY2tlZDsg c2lnZW1wdHlzZXQgKCZibG9ja2VkKTsgc2lnYWRkc2V0ICgmYmxvY2tlZCwgU0lHQ0hMRCk7 IHB0aHJlYWRfc2lnbWFzayAoU0lHX0JMT0NLLCAmYmxvY2tlZCwgMCk7IGdyYW50cHRfcmVz dWx0ID0gZ3JhbnRwdCAoZmQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19VTkJMT0NLLCAmYmxv Y2tlZCwgMCk7IGlmIChncmFudHB0X3Jlc3VsdCA9PSAtMSkgZmF0YWwoImNvdWxkIG5vdCBn cmFudCBzbGF2ZSBwdHkiKTsgaWYgKHVubG9ja3B0KGZkKSA9PSAtMSkgZmF0YWwoImNvdWxk IG5vdCB1bmxvY2sgc2xhdmUgcHR5Iik7IGlmICghKHB0eW5hbWUgPSBwdHNuYW1lKGZkKSkp IGZhdGFsICgiY291bGQgbm90IGVuYWJsZSBzbGF2ZSBwdHkiKTsgc25wcmludGYgKHB0eV9u YW1lLCBQVFlfTkFNRV9TSVpFLCAiJXMiLCBwdHluYW1lKTsgfV0pCiAgICA7Owplc2FjCgoK Y2FzZSAkb3BzeXMgaW4KICBzb2xhcmlzIHwgdW5peHdhcmUgKQogICAgZG5sIFRoaXMgY2hh bmdlIG1lYW5zIHRoYXQgd2UgZG9uJ3QgbG9vcCB0aHJvdWdoIGFsbG9jYXRlX3B0eSB0b28K ICAgIGRubCBtYW55IHRpbWVzIGluIHRoZSAocmFyZSkgZXZlbnQgb2YgYSBmYWlsdXJlLgog ICAgQUNfREVGSU5FKFtGSVJTVF9QVFlfTEVUVEVSXSwgWyd6J10pCiAgICBBQ19ERUZJTkUo W1BUWV9OQU1FX1NQUklOVEZdLCBbc3RyY3B5IChwdHlfbmFtZSwgIi9kZXYvcHRteCIpO10p CiAgICBkbmwgUHVzaCB2YXJpb3VzIHN0cmVhbXMgbW9kdWxlcyBvbnRvIGEgUFRZIGNoYW5u ZWwuICBVc2VkIGluIHByb2Nlc3MuYy4KICAgIEFDX0RFRklORShbU0VUVVBfU0xBVkVfUFRZ XSwKICAgICAgW2lmIChpb2N0bCAoc3RkX2luLCBJX1BVU0gsICJwdGVtIikgPT0gLTEpIGZh dGFsICgiaW9jdGwgSV9QVVNIIHB0ZW0iKTsgaWYgKGlvY3RsIChzdGRfaW4sIElfUFVTSCwg ImxkdGVybSIpID09IC0xKSBmYXRhbCAoImlvY3RsIElfUFVTSCBsZHRlcm0iKTsgaWYgKGlv Y3RsIChzdGRfaW4sIElfUFVTSCwgInR0Y29tcGF0IikgPT0gLTEpIGZhdGFsICgiaW9jdGwg SV9QVVNIIHR0Y29tcGF0Iik7XSwgW0hvdyB0byBzZXQgdXAgYSBzbGF2ZSBQVFksIGlmIG5l ZWRlZC5dKQogICAgOzsKZXNhYwoKCkFIX1RFTVBMQVRFKFtTSUdOQUxTX1ZJQV9DSEFSQUNU RVJTXSwgW01ha2UgcHJvY2Vzc19zZW5kX3NpZ25hbCB3b3JrIGJ5CiJ0eXBpbmciIGEgc2ln bmFsIGNoYXJhY3RlciBvbiB0aGUgcHR5Ll0pCgpjYXNlICRvcHN5cyBpbgogIGRubCBQZXJy eSBTbWl0aCA8cGVkekBkZGl2dDEuYXVzdGluLmlibS5jb20+IHNheXMgdGhpcyBpcyBjb3Jy ZWN0IGZvciBBSVguCiAgYWl4NC0yIHwgY3lnd2luIHwgZ251IHwgZHJhZ29uZmx5IHwgZnJl ZWJzZCB8IG5ldGJzZCB8IG9wZW5ic2QgfCBkYXJ3aW4gKQogICAgQUNfREVGSU5FKFtTSUdO QUxTX1ZJQV9DSEFSQUNURVJTXSwgWzFdKQogICAgOzsKCiAgZG5sIDIxIEp1biAwNjogRXJp YyBIYW5jaHJvdyA8b2ZmYnkxQGJsYXJnLm5ldD4gc2F5cyB0aGlzIHdvcmtzLgogIGRubCBG SVhNRSBEb2VzIGdudS1rZnJlZWJzZCBoYXZlIGxpbnV4L3ZlcnNpb24uaD8gIEl0IHNlZW1z IHVubGlrZWx5Li4uCiAgZ251LWxpbnV4IHwgZ251LWtmcmVlYnNkICkKCiAgICBBQ19DQUNI RV9DSEVDSyhbZm9yIHNpZ25hbHMgdmlhIGNoYXJhY3RlcnNdLCBbZW1hY3NfY3Zfc2lnbmFs c192aWFfY2hhcnNdLAogICAgW0FDX1BSRVBST0NfSUZFTFNFKFtBQ19MQU5HX1BST0dSQU0o W1sKI2luY2x1ZGUgPGxpbnV4L3ZlcnNpb24uaD4KI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8 IDB4MjA0MDAKIyBlcnJvciAiTGludXggdmVyc2lvbiB0b28gb2xkIgojZW5kaWYKICAgICAg XV0sIFtbXV0pXSwKCVtlbWFjc19jdl9zaWduYWxzX3ZpYV9jaGFycz15ZXNdLAoJW2VtYWNz X2N2X3NpZ25hbHNfdmlhX2NoYXJzPW5vXSldKQoKICAgIHRlc3QgIiRlbWFjc19jdl9zaWdu YWxzX3ZpYV9jaGFycyIgPSB5ZXMgJiYKICAgICAgQUNfREVGSU5FKFtTSUdOQUxTX1ZJQV9D SEFSQUNURVJTXSwgWzFdKQogICAgOzsKZXNhYwoKCkFIX1RFTVBMQVRFKFtUQUIzXSwgW1Vu ZG9jdW1lbnRlZC5dKQoKY2FzZSAkb3BzeXMgaW4KICBkYXJ3aW4pIEFDX0RFRklORShbVEFC M10sIFtPWFRBQlNdKSA7OwoKICBnbnUgfCBkcmFnb25mbHkgfCBmcmVlYnNkIHwgbmV0YnNk IHwgb3BlbmJzZCApCiAgICBBQ19ERUZJTkUoW1RBQkRMWV0sIFtPWFRBQlNdLCBbVW5kb2N1 bWVudGVkLl0pCiAgICBBQ19ERUZJTkUoW1RBQjNdLCBbT1hUQUJTXSkKICAgIDs7CgogIGdu dS1saW51eCB8IGdudS1rZnJlZWJzZCApCiAgICBBQ19QUkVQUk9DX0lGRUxTRSgKICAgICAg W0FDX0xBTkdfUFJPR1JBTSgKCSBbWwojaWZuZGVmIF9faWE2NF9fCiMgZXJyb3IgIm5vdCBp YTY0IgojZW5kaWYKCSBdXSwgW1tdXSldLAogICAgICBbQUNfREVGSU5FKFtHQ19NQVJLX1NF Q09OREFSWV9TVEFDSygpXSwKICAgICAgICBbZG8geyBleHRlcm4gdm9pZCAqX19saWJjX2lh NjRfcmVnaXN0ZXJfYmFja2luZ19zdG9yZV9iYXNlOyBfX2J1aWx0aW5faWE2NF9mbHVzaHJz ICgpOyBtYXJrX21lbW9yeSAoX19saWJjX2lhNjRfcmVnaXN0ZXJfYmFja2luZ19zdG9yZV9i YXNlLCBfX2J1aWx0aW5faWE2NF9ic3AgKCkpO30gd2hpbGUgKGZhbHNlKV0sCglbTWFyayBh IHNlY29uZGFyeSBzdGFjaywgbGlrZSB0aGUgcmVnaXN0ZXIgc3RhY2sgb24gdGhlIGlhNjQu XSldLCBbXSkKICAgIDs7CgogIGhwdXgqKQogICAgQUNfREVGSU5FKFtSVU5fVElNRV9SRU1B UF0sIFsxXSwgW0RlZmluZSBpZiBlbWFjcy5jIG5lZWRzIHRvIGNhbGwKICAgICAgcnVuX3Rp bWVfcmVtYXA7IGZvciBIUFVYLl0pCiAgICA7Owplc2FjCgoKZG5sIFRoaXMgd29uJ3QgYmUg dXNlZCBhdXRvbWF0aWNhbGx5IHlldC4gIFdlIGFsc28gbmVlZCB0byBrbm93LCBhdCBsZWFz dCwKZG5sIHRoYXQgdGhlIHN0YWNrIGlzIGNvbnRpbnVvdXMuCkFIX1RFTVBMQVRFKFtHQ19T RVRKTVBfV09SS1NdLCBbRGVmaW5lIGlmIHNldGptcCBpcyBrbm93biB0byBzYXZlIGFsbAog IHJlZ2lzdGVycyByZWxldmFudCBmb3IgY29uc2VydmF0aXZlIGdhcmJhZ2UgY29sbGVjdGlv biBpbiB0aGUgam1wX2J1Zi5dKQoKCmNhc2UgJG9wc3lzIGluCiAgZG5sIE5vdCBhbGwgdGhl IGFyY2hpdGVjdHVyZXMgYXJlIHRlc3RlZCwgYnV0IHRoZXJlIGFyZSBEZWJpYW4gcGFja2Fn ZXMKICBkbmwgZm9yIFNDTSBhbmQvb3IgR3VpbGUgb24gdGhlbSwgc28gdGhlIHRlY2huaXF1 ZSBtdXN0IHdvcmsuICBTZWUgYWxzbwogIGRubCBjb21tZW50cyBpbiBhbGxvYy5jIGNvbmNl cm5pbmcgc2V0am1wIGFuZCBnY2MuCiAgZG5sIEZpeG1lOiBpdCdzIHByb2JhYmx5IHNhZmUg dG8ganVzdCB1c2UgdGhlIEdDQyBjb25kaXRpb25hbCBiZWxvdy4KICBnbnUtbGludXggfCBn bnUta2ZyZWVic2QgKQogICAgQUNfUFJFUFJPQ19JRkVMU0UoW0FDX0xBTkdfUFJPR1JBTShb WwojaWYgZGVmaW5lZCBfX2kzODZfXyB8fCBkZWZpbmVkIF9fc3BhcmNfXyB8fCBkZWZpbmVk IF9fbWM2ODAwMF9fIFwKICB8fCBkZWZpbmVkIF9fYWxwaGFfXyB8fCBkZWZpbmVkIF9fbWlw c19fIHx8IGRlZmluZWQgX19zMzkwX18gXAogIHx8IGRlZmluZWQgX19hcm1fXyB8fCBkZWZp bmVkIF9fcG93ZXJwY19fIHx8IGRlZmluZWQgX19hbWQ2NF9fIFwKICB8fCBkZWZpbmVkIF9f eDg2XzY0X18gXAogIHx8IGRlZmluZWQgX19pYTY0X18gfHwgZGVmaW5lZCBfX3NoX18KLyog b2sgKi8KI2Vsc2UKIyBlcnJvciAic2V0am1wIG5vdCBrbm93biB0byB3b3JrIG9uIHRoaXMg YXJjaCIKI2VuZGlmCiAgICBdXSwgW1tdXSldLCBbQUNfREVGSU5FKFtHQ19TRVRKTVBfV09S S1NdLCBbMV0pXSkKICAgIDs7CmVzYWMKCgppZiB0ZXN0IHgkR0NDID0geHllczsgdGhlbgog ICBkbmwgR0NfU0VUSk1QX1dPUktTIGlzIG5lYXJseSBhbHdheXMgYXBwcm9wcmlhdGUgZm9y IEdDQy4KICAgQUNfREVGSU5FKFtHQ19TRVRKTVBfV09SS1NdLCBbMV0pCmVsc2UKICBjYXNl ICRvcHN5cyBpbgogICAgYWl4KiB8IGRyYWdvbmZseSB8IGZyZWVic2QgfCBuZXRic2QgfCBv cGVuYnNkIHwgc29sYXJpcyApCiAgICAgIEFDX0RFRklORShbR0NfU0VUSk1QX1dPUktTXSwg WzFdKQogICAgICA7OwogIGVzYWMKZmkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBk bmwgR0NDPwoKZG5sIEluIGEgd2VpcmQgcXVpcmssIE1TIHJ1bnRpbWUgdXNlcyBfc2V0am1w IGFuZCBsb25nam1wLgpBQ19DQUNIRV9DSEVDSyhbZm9yIF9zZXRqbXBdLCBbZW1hY3NfY3Zf ZnVuY19fc2V0am1wXSwKICBbQUNfTElOS19JRkVMU0UoCiAgICAgW0FDX0xBTkdfUFJPR1JB TSgKICAgICAgIFtbI2luY2x1ZGUgPHNldGptcC5oPgogICAgICAgICAjaWZkZWYgX19NSU5H VzMyX18KICAgICAgICAgIyBkZWZpbmUgX2xvbmdqbXAgbG9uZ2ptcAogICAgICAgICAjZW5k aWYKICAgICAgIF1dLAogICAgICAgW1tqbXBfYnVmIGo7CgkgaWYgKCEgX3NldGptcCAoaikp CgkgICBfbG9uZ2ptcCAoaiwgMSk7XV0pXSwKICAgICBbZW1hY3NfY3ZfZnVuY19fc2V0am1w PXllc10sCiAgICAgW2VtYWNzX2N2X2Z1bmNfX3NldGptcD1ub10pXSkKaWYgdGVzdCAkZW1h Y3NfY3ZfZnVuY19fc2V0am1wID0geWVzOyB0aGVuCiAgQUNfREVGSU5FKFtIQVZFX19TRVRK TVBdLCBbMV0sIFtEZWZpbmUgdG8gMSBpZiBfc2V0am1wIGFuZCBfbG9uZ2ptcCB3b3JrLl0p CmZpCgojIFdlIG5lZWQgdG8gcHJlc2VydmUgc2lnbmFsIG1hc2sgdG8gaGFuZGxlIEMgc3Rh Y2sgb3ZlcmZsb3dzLgpBQ19DQUNIRV9DSEVDSyhbZm9yIHNpZ3NldGptcF0sIFtlbWFjc19j dl9mdW5jX3NpZ3NldGptcF0sCiAgW0FDX0xJTktfSUZFTFNFKAogICAgIFtBQ19MQU5HX1BS T0dSQU0oCiAgICAgICBbWyNpbmNsdWRlIDxzZXRqbXAuaD4KICAgICAgIF1dLAogICAgICAg W1tzaWdqbXBfYnVmIGo7CiAgICAgICAgIGlmICghIHNpZ3NldGptcCAoaiwgMSkpCgkgICBz aWdsb25nam1wIChqLCAxKTtdXSldLAogICAgIFtlbWFjc19jdl9mdW5jX3NpZ3NldGptcD15 ZXNdLAogICAgIFtlbWFjc19jdl9mdW5jX3NpZ3NldGptcD1ub10pXSkKaWYgdGVzdCAkZW1h Y3NfY3ZfZnVuY19zaWdzZXRqbXAgPSB5ZXM7IHRoZW4KICBBQ19ERUZJTkUoW0hBVkVfU0lH U0VUSk1QXSwgWzFdLAogICAgW0RlZmluZSB0byAxIGlmIHNpZ3NldGptcCBhbmQgc2lnbG9u Z2ptcCB3b3JrLl0pCmZpCgpjYXNlICRlbWFjc19jdl9mdW5jX3NpZ3NldGptcCwkZW1hY3Nf Y3ZfYWx0ZXJuYXRlX3N0YWNrLCRvcHN5cyBpbgogIHllcyx5ZXMsKiB8ICosKixtaW5ndzMy KQogICAgQUNfREVGSU5FKFtIQVZFX1NUQUNLX09WRVJGTE9XX0hBTkRMSU5HXSwgWzFdLAog ICAgICBbRGVmaW5lIHRvIDEgaWYgQyBzdGFjayBvdmVyZmxvdyBjYW4gYmUgaGFuZGxlZCBp biBzb21lIGNhc2VzLl0pOzsKZXNhYwoKY2FzZSAkb3BzeXMgaW4KICBzb2xhcmlzIHwgdW5p eHdhcmUgKQogICAgZG5sIFRJT0NHUEdSUCBpcyBicm9rZW4gaW4gU3lzVnI0LCBzbyB3ZSBj YW4ndCBzZW5kIHNpZ25hbHMgdG8gUFRZCiAgICBkbmwgc3VicHJvY2Vzc2VzIHRoZSB1c3Vh bCB3YXkuICBCdXQgVElPQ1NJR05BTCBkb2VzIHdvcmsgZm9yIFBUWXMsCiAgICBkbmwgYW5k IHRoaXMgaXMgYWxsIHdlIG5lZWQuCiAgICBBQ19ERUZJTkUoW1RJT0NTSUdTRU5EXSwgW1RJ T0NTSUdOQUxdLCBbU29tZSBwbGF0Zm9ybXMgcmVkZWZpbmUgdGhpcy5dKQogICAgOzsKZXNh YwoKCmNhc2UgJG9wc3lzIGluCiAgaHB1eCogfCBzb2xhcmlzICkKICAgIGRubCBVc2VkIGlu IHhmYWNlcy5jLgogICAgQUNfREVGSU5FKFtYT1NfTkVFRFNfVElNRV9IXSwgWzFdLCBbQ29t cGVuc2F0ZSBmb3IgYSBidWcgaW4gWG9zLmggb24KICAgICAgc29tZSBzeXN0ZW1zLCB3aGVy ZSBpdCByZXF1aXJlcyB0aW1lLmguXSkKICAgIDs7CmVzYWMKCgpkbmwgRGVmaW5lIHN5bWJv bHMgdG8gaWRlbnRpZnkgdGhlIHZlcnNpb24gb2YgVW5peCB0aGlzIGlzLgpkbmwgRGVmaW5l IGFsbCB0aGUgc3ltYm9scyB0aGF0IGFwcGx5IGNvcnJlY3RseS4KQUhfVEVNUExBVEUoW0RP U19OVF0sIFtEZWZpbmUgaWYgdGhlIHN5c3RlbSBpcyBNUyBET1Mgb3IgTVMgV2luZG93cy5d KQpBSF9URU1QTEFURShbTVNET1NdLCBbRGVmaW5lIGlmIHRoZSBzeXN0ZW0gaXMgTVMgRE9T Ll0pCkFIX1RFTVBMQVRFKFtVU0ddLCBbRGVmaW5lIGlmIHRoZSBzeXN0ZW0gaXMgY29tcGF0 aWJsZSB3aXRoIFN5c3RlbSBJSUkuXSkKQUhfVEVNUExBVEUoW1VTRzVfNF0sCiAgW0RlZmlu ZSBpZiB0aGUgc3lzdGVtIGlzIGNvbXBhdGlibGUgd2l0aCBTeXN0ZW0gViBSZWxlYXNlIDQu XSkKCmNhc2UgJG9wc3lzIGluCiAgYWl4NC0yKQogICAgQUNfREVGSU5FKFtVU0ddLCBbXSkK ICAgIGRubCBUaGlzIHN5bWJvbCBzaG91bGQgYmUgZGVmaW5lZCBvbiBBSVggVmVyc2lvbiAz ICA/Pz8/Pz8/CiAgICBBQ19QUkVQUk9DX0lGRUxTRShbQUNfTEFOR19QUk9HUkFNKFtbCiNp Zm5kZWYgX0FJWAojIGVycm9yICJfQUlYIG5vdCBkZWZpbmVkIgojZW5kaWYKICAgIF1dLCBb W11dKV0sIFtdLCBbQUNfREVGSU5FKFtfQUlYXSwgW10sIFtEZWZpbmUgaWYgdGhlIHN5c3Rl bSBpcyBBSVguXSldKQogICAgOzsKCiAgY3lnd2luKQogICAgQUNfREVGSU5FKFtDWUdXSU5d LCBbMV0sIFtEZWZpbmUgaWYgdGhlIHN5c3RlbSBpcyBDeWd3aW4uXSkKICAgIDs7CgogIGRh cndpbikKICAgIGRubCBOb3QgX19BUFBMRV9fLCBhcyB0aGlzIG1heSBub3QgYmUgZGVmaW5l ZCBvbiBub24tbWFjT1MgRGFyd2luLgogICAgZG5sIE5vdCBEQVJXSU4sIGJlY2F1c2UgUGFu dGhlciBhbmQgbG93ZXIgQ29yZUZvdW5kYXRpb24uaCB1c2UgREFSV0lOIHRvCiAgICBkbmwg ZGlzdGluZ3Vpc2ggbWFjT1MgZnJvbSBwdXJlIERhcndpbi4KICAgIEFDX0RFRklORShbREFS V0lOX09TXSwgW10sIFtEZWZpbmUgaWYgdGhlIHN5c3RlbSBpcyBEYXJ3aW4uXSkKICAgIDs7 CgogIGdudS1saW51eCB8IGdudS1rZnJlZWJzZCApCiAgICBBQ19ERUZJTkUoW1VTR10sIFtd KQogICAgQUNfREVGSU5FKFtHTlVfTElOVVhdLCBbXSwKICAgICAgW0RlZmluZSBpZiB0aGlz IHN5c3RlbSBpcyBjb21wYXRpYmxlIHdpdGggR05VL0xpbnV4Ll0pCiAgICA7OwoKICBocHV4 KikKICAgIEFDX0RFRklORShbVVNHXSwgW10pCiAgICBBQ19ERUZJTkUoW0hQVVhdLCBbXSwg W0RlZmluZSBpZiB0aGUgc3lzdGVtIGlzIEhQVVguXSkKICAgIDs7CgogIG1pbmd3MzIpCiAg ICBBQ19ERUZJTkUoW0RPU19OVF0sIFtdKQogICAgQUNfREVGSU5FKFtXSU5ET1dTTlRdLCBb MV0sIFtEZWZpbmUgaWYgY29tcGlsaW5nIGZvciBuYXRpdmUgTVMgV2luZG93cy5dKQogICAg aWYgdGVzdCAieCRhY19lbmFibGVfY2hlY2tpbmciICE9ICJ4IiA7IHRoZW4KICAgICAgQUNf REVGSU5FKFtFTUFDU0RFQlVHXSwgWzFdLAoJW0RlZmluZSB0byAxIHRvIGVuYWJsZSB3MzIg ZGVidWcgZmFjaWxpdGllcy5dKQogICAgZmkKICAgIDs7CgogIHNvbGFyaXMpCiAgICBBQ19E RUZJTkUoW1VTR10sIFtdKQogICAgQUNfREVGSU5FKFtVU0c1XzRdLCBbXSkKICAgIEFDX0RF RklORShbU09MQVJJUzJdLCBbXSwgW0RlZmluZSBpZiB0aGUgc3lzdGVtIGlzIFNvbGFyaXMu XSkKICAgIDs7CgogIHVuaXh3YXJlKQogICAgQUNfREVGSU5FKFtVU0ddLCBbXSkKICAgIEFD X0RFRklORShbVVNHNV80XSwgW10pCiAgICA7OwoKICBoYWlrdSkKICAgIEFDX0RFRklORShb SEFJS1VdLCBbXSwgW0RlZmluZSBpZiB0aGUgc3lzdGVtIGlzIEhhaWt1Ll0pCiAgICA7Owpl c2FjCgpBQ19TWVNfUE9TSVhfVEVSTUlPUwppZiB0ZXN0ICRhY19jdl9zeXNfcG9zaXhfdGVy bWlvcyA9IHllczsgdGhlbgogIEFDX0NIRUNLX1NJWkVPRihbc3BlZWRfdF0sIFtdLCBbI2lu Y2x1ZGUgPHRlcm1pb3MuaD5dKQogIGRubCBvbiBIYWlrdSwgYW5kIHBvc3NpYmx5IG90aGVy IHBsYXRmb3Jtcywgc3BlZWRfdCBpcyBkZWZpbmVkIHRvCiAgZG5sIHVuc2lnbmVkIGNoYXIs IGV2ZW4gd2hlbiBzcGVlZHMgZ3JlYXRlciB0aGFuIDIwMCBiYXVkIGFyZQogIGRubCBkZWZp bmVkLgoKICBpZiB0ZXN0ICR7YWNfY3Zfc2l6ZW9mX3NwZWVkX3R9IC1sdCAyOyB0aGVuCiAg ICBBQ19ERUZJTkUoW0hBVkVfVElOWV9TUEVFRF9UXSwgWzFdLAogICAgICAgIFtEZWZpbmUg dG8gMSBpZiBzcGVlZF90IGhhcyBzb21lIHNvcnQgb2Ygbm9uc2Vuc2ljYWxseSB0aW55IHNp emUuXSkKICBmaQpmaQoKQUNfQ0FDSEVfQ0hFQ0soW2ZvciB1c2FibGUgRklPTlJFQURdLCBb ZW1hY3NfY3ZfdXNhYmxlX0ZJT05SRUFEXSwKICBbY2FzZSAkb3BzeXMgaW4KICAgICBhaXg0 LTIgfCBuYWNsKQogICAgICAgZG5sIEJVSUxEIDkwMDggLSBGSU9OUkVBRCBwcm9ibGVtIHN0 aWxsIGV4aXN0cyBpbiBYLVdpbmRvd3MuCiAgICAgICBlbWFjc19jdl91c2FibGVfRklPTlJF QUQ9bm8KICAgICAgIDs7CgogICAgIG1pbmd3MzIpCiAgICAgICBlbWFjc19jdl91c2FibGVf RklPTlJFQUQ9eWVzCiAgICAgICA7OwoKICAgICAqKQogICAgICAgQUNfQ09NUElMRV9JRkVM U0UoCgkgW0FDX0xBTkdfUFJPR1JBTShbWyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KCQkJICAg ICNpbmNsdWRlIDxzeXMvaW9jdGwuaD4KCQkJICAgICNpZmRlZiBVU0c1XzQKCQkJICAgICMg aW5jbHVkZSA8c3lzL2ZpbGlvLmg+CgkJCSAgICAjZW5kaWYKCQkJICBdXSwKCQkJICBbW2lu dCBmb28gPSBpb2N0bCAoMCwgRklPTlJFQUQsICZmb28pO11dKV0sCgkgW2VtYWNzX2N2X3Vz YWJsZV9GSU9OUkVBRD15ZXNdLAoJIFtlbWFjc19jdl91c2FibGVfRklPTlJFQUQ9bm9dKQog ICAgICAgOzsKICAgZXNhY10pCmlmIHRlc3QgJGVtYWNzX2N2X3VzYWJsZV9GSU9OUkVBRCA9 IHllczsgdGhlbgogIEFDX0RFRklORShbVVNBQkxFX0ZJT05SRUFEXSwgWzFdLCBbRGVmaW5l IHRvIDEgaWYgRklPTlJFQUQgaXMgdXNhYmxlLl0pCgogIGlmIHRlc3QgJGVtYWNzX2Jyb2tl bl9TSUdJTyA9IG5vOyB0aGVuCiAgICBBQ19DQUNIRV9DSEVDSyhbZm9yIHVzYWJsZSBTSUdJ T10sIFtlbWFjc19jdl91c2FibGVfU0lHSU9dLAogICAgICBbQUNfQ09NUElMRV9JRkVMU0Uo CgkgW0FDX0xBTkdfUFJPR1JBTShbWyNpbmNsdWRlIDxmY250bC5oPgoJCQkgICAgI2luY2x1 ZGUgPHNpZ25hbC5oPgoJCQkgIF1dLAoJCQkgIFtbaW50IGZvbyA9IFNJR0lPIHwgRl9TRVRG TCB8IEZBU1lOQztdXSldLAoJIFtlbWFjc19jdl91c2FibGVfU0lHSU89eWVzXSwKCSBbZW1h Y3NfY3ZfdXNhYmxlX1NJR0lPPW5vXSldLAogICAgICBbZW1hY3NfY3ZfdXNhYmxlX1NJR0lP PXllc10sCiAgICAgIFtlbWFjc19jdl91c2FibGVfU0lHSU89bm9dKQogICAgaWYgdGVzdCAk ZW1hY3NfY3ZfdXNhYmxlX1NJR0lPID0geWVzOyB0aGVuCiAgICAgIEFDX0RFRklORShbVVNB QkxFX1NJR0lPXSwgWzFdLCBbRGVmaW5lIHRvIDEgaWYgU0lHSU8gaXMgdXNhYmxlLl0pCiAg ICBmaQogIGZpCgogIGlmIHRlc3QgJGVtYWNzX2Jyb2tlbl9TSUdJTyA9IG5vICYmIHRlc3Qg JGVtYWNzX2N2X3VzYWJsZV9TSUdJTyA9IG5vOyB0aGVuCiAgICBBQ19DQUNIRV9DSEVDSyhb Zm9yIHVzYWJsZSBTSUdQT0xMXSwgW2VtYWNzX2N2X3VzYWJsZV9TSUdQT0xMXSwKICAgICAg W0FDX0NPTVBJTEVfSUZFTFNFKAoJIFtBQ19MQU5HX1BST0dSQU0oW1sjaW5jbHVkZSA8ZmNu dGwuaD4KCQkJICAgICNpbmNsdWRlIDxzaWduYWwuaD4KCQkJICBdXSwKCQkJICBbW2ludCBm b28gPSBTSUdQT0xMIHwgRl9TRVRGTDtdXSldLAoJIFtlbWFjc19jdl91c2FibGVfU0lHUE9M TD15ZXNdLAoJIFtlbWFjc19jdl91c2FibGVfU0lHUE9MTD1ub10pXSwKICAgICAgW2VtYWNz X2N2X3VzYWJsZV9TSUdQT0xMPXllc10sCiAgICAgIFtlbWFjc19jdl91c2FibGVfU0lHUE9M TD1ub10pCiAgICBpZiB0ZXN0ICRlbWFjc19jdl91c2FibGVfU0lHUE9MTCA9IHllczsgdGhl bgogICAgICBBQ19ERUZJTkUoW1VTQUJMRV9TSUdQT0xMXSwgWzFdLCBbRGVmaW5lIHRvIDEg aWYgU0lHUE9MTCBpcyB1c2FibGUgYnV0IFNJR0lPIGlzIG5vdC5dKQogICAgZmkKICBmaQpm aQoKY2FzZSAkb3BzeXMgaW4KICBocHV4MTEpCiAgICBkbmwgSXQgd29ya3MgdG8gb3BlbiB0 aGUgcHR5J3MgdHR5IGluIHRoZSBwYXJlbnQgKEVtYWNzKSwgdGhlbgogICAgZG5sIGNsb3Nl IGFuZCByZW9wZW4gaXQgaW4gdGhlIGNoaWxkLgogICAgQUNfREVGSU5FKFtVU0dfU1VCVFRZ X1dPUktTXSwgWzFdLCBbRGVmaW5lIGZvciBVU0cgc3lzdGVtcyB3aGVyZSBpdAogICAgICB3 b3JrcyB0byBvcGVuIGEgcHR5J3MgdHR5IGluIHRoZSBwYXJlbnQgcHJvY2VzcywgdGhlbiBj bG9zZSBhbmQKICAgICAgcmVvcGVuIGl0IGluIHRoZSBjaGlsZC5dKQogICAgOzsKCiAgc29s YXJpcykKICAgIEFDX0RFRklORShbX1NUUlVDVFVSRURfUFJPQ10sIFsxXSwgW05lZWRlZCBm b3Igc3lzdGVtX3Byb2Nlc3NfYXR0cmlidXRlcwogICAgICBvbiBTb2xhcmlzLl0pCiAgICA7 Owplc2FjCgojIFNldCB1cCB0aGUgQ0ZMQUdTIGZvciByZWFsIGNvbXBpbGF0aW9uLCBzbyB3 ZSBjYW4gc3Vic3RpdHV0ZSBpdC4KQ0ZMQUdTPSIkUkVBTF9DRkxBR1MiCkNQUEZMQUdTPSIk UkVBTF9DUFBGTEFHUyIKTElCUz0iJFJFQUxfTElCUyIKCiMjIEhhY2sgdG8gZGV0ZWN0IGEg YnVnZ3kgR0NDIHZlcnNpb24uCmlmIHRlc3QgIiRHQ0MiID0geWVzICYmIFwKICAgJENDIC0t dmVyc2lvbiAyPiAvZGV2L251bGwgfCBncmVwICdnY2MuKiA0LjUuMCcgPi9kZXYvbnVsbDsg dGhlbgogIGNhc2UgJENGTEFHUyBpbgogICAgKi1mbm8tb3B0aW1pemUtc2libGluZy1jYWxs cyopIDs7CiAgICAqLU9APDpAMjNAOj5AKikKICAgICAgQUNfTVNHX0VSUk9SKFtHQ0MgNC41 LjAgaGFzIHByb2JsZW1zIGNvbXBpbGluZyBFbWFjczsgc2VlIGV0Yy9QUk9CTEVNUy5dKTs7 CiAgZXNhYwpmaQoKdmVyc2lvbj0kUEFDS0FHRV9WRVJTSU9OCgpjb3B5cmlnaHQ9IkNvcHly aWdodCAoQykgMjAyMyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4iCkFDX0RFRklO RV9VTlFVT1RFRChbQ09QWVJJR0hUXSwgWyIkY29weXJpZ2h0Il0sCiAgW1Nob3J0IGNvcHly aWdodCBzdHJpbmcgZm9yIHRoaXMgdmVyc2lvbiBvZiBFbWFjcy5dKQpBQ19TVUJTVChbY29w eXJpZ2h0XSkKCiMjIyBTcGVjaWZ5IHdoYXQgc29ydCBvZiB0aGluZ3Mgd2UnbGwgYmUgZWRp dGluZyBpbnRvIE1ha2VmaWxlIGFuZCBjb25maWcuaC4KIyMjIFVzZSBjb25maWd1cmF0aW9u IGhlcmUgdW5jYW5vbmljYWxpemVkIHRvIGF2b2lkIGV4Y2VlZGluZyBzaXplIGxpbWl0cy4K QUNfU1VCU1QoW3ZlcnNpb25dKQpBQ19TVUJTVChbY29uZmlndXJhdGlvbl0pCiMjIFVudXNl ZD8KQUNfU1VCU1QoW2Nhbm9uaWNhbF0pCkFDX1NVQlNUKFtzcmNkaXJdKQpBQ19TVUJTVChb cHJlZml4XSkKQUNfU1VCU1QoW2V4ZWNfcHJlZml4XSkKQUNfU1VCU1QoW2JpbmRpcl0pCkFD X1NVQlNUKFtkYXRhZGlyXSkKQUNfU1VCU1QoW2dzZXR0aW5nc3NjaGVtYWRpcl0pCkFDX1NV QlNUKFtzaGFyZWRzdGF0ZWRpcl0pCkFDX1NVQlNUKFtsaWJleGVjZGlyXSkKQUNfU1VCU1Qo W21hbmRpcl0pCkFDX1NVQlNUKFtpbmZvZGlyXSkKQUNfU1VCU1QoW2xpc3BkaXJyZWxdKQpB Q19TVUJTVChbbGlzcGRpcl0pCkFDX1NVQlNUKFtzdGFuZGFyZGxpc3BwYXRoXSkKQUNfU1VC U1QoW2xvY2FsbGlzcHBhdGhdKQpBQ19TVUJTVChbbGlzcHBhdGhdKQpBQ19TVUJTVChbeF9k ZWZhdWx0X3NlYXJjaF9wYXRoXSkKQUNfU1VCU1QoW2V0Y2Rpcl0pCkFDX1NVQlNUKFthcmNo bGliZGlyXSkKQUNfU1VCU1QoW2V0Y2RvY2Rpcl0pCkFDX1NVQlNUKFtiaXRtYXBkaXJdKQpB Q19TVUJTVChbZ2FtZWRpcl0pCkFDX1NVQlNUKFtnYW1ldXNlcl0pCkFDX1NVQlNUKFtnYW1l Z3JvdXBdKQojIyBGSVhNRT8gTm90aGluZyB1c2VzIEBMRF9TV0lUQ0hfWF9TSVRFQC4KIyMg c3JjL01ha2VmaWxlLmluIGRpZCBhZGQgTERfU1dJVENIX1hfU0lURSAoYXMgYSBjcHAgZGVm aW5lKSB0byB0aGUKIyMgZW5kIG9mIExJQlhfQkFTRSwgYnV0IG5vdGhpbmcgZXZlciBzZXQg aXQuCkFDX1NVQlNUKFtMRF9TV0lUQ0hfWF9TSVRFXSkKQUNfU1VCU1QoW0NfU1dJVENIX1hf U0lURV0pCkFDX1NVQlNUKFtHTlVTVEVQX0NGTEFHU10pCkFDX1NVQlNUKFtDRkxBR1NdKQoj IyBVc2VkIGluIGx3bGliL01ha2VmaWxlLmluLgpBQ19TVUJTVChbWF9UT09MS0lUX1RZUEVd KQpBQ19TVUJTVChbbnNfYXBwZGlyXSkKQUNfU1VCU1QoW25zX2FwcGJpbmRpcl0pCkFDX1NV QlNUKFtuc19hcHBsaWJleGVjZGlyXSkKQUNfU1VCU1QoW25zX2FwcGxpYmRpcl0pCkFDX1NV QlNUKFtuc19hcHByZXNkaXJdKQpBQ19TVUJTVChbbnNfYXBwc3JjXSkKQUNfU1VCU1QoW0dO VV9PQkpDX0NGTEFHU10pCkFDX1NVQlNUKFtPVEhFUl9GSUxFU10pCgppZiB0ZXN0IC1uICIk e3Rlcm1faGVhZGVyfSI7IHRoZW4KICAgIEFDX0RFRklORV9VTlFVT1RFRChbVEVSTV9IRUFE RVJdLCBbIiR7dGVybV9oZWFkZXJ9Il0sCiAgICAgICAgW0RlZmluZSB0byB0aGUgaGVhZGVy IGZvciB0aGUgYnVpbHQtaW4gd2luZG93IHN5c3RlbS5dKQpmaQoKQUNfREVGSU5FX1VOUVVP VEVEKFtFTUFDU19DT05GSUdVUkFUSU9OXSwgIFsiJHtjYW5vbmljYWx9Il0sCgkJICAgW0Rl ZmluZSB0byB0aGUgY2Fub25pY2FsIEVtYWNzIGNvbmZpZ3VyYXRpb24gbmFtZS5dKQpBQ19E RUZJTkVfVU5RVU9URUQoW0VNQUNTX0NPTkZJR19PUFRJT05TXSwgIiR7ZW1hY3NfY29uZmln X29wdGlvbnN9IiwKCQkgICBbRGVmaW5lIHRvIHRoZSBvcHRpb25zIHBhc3NlZCB0byBjb25m aWd1cmUuXSkKClhNRU5VX09CSj0KWE9CSj0KRk9OVF9PQko9CmlmIHRlc3QgIiR7SEFWRV9Y X1dJTkRPV1N9IiA9ICJ5ZXMiIDsgdGhlbgogIEFDX0RFRklORShbSEFWRV9YX1dJTkRPV1Nd LCBbMV0sCgkgICAgW0RlZmluZSB0byAxIGlmIHlvdSB3YW50IHRvIHVzZSB0aGUgWCB3aW5k b3cgc3lzdGVtLl0pCiAgWE1FTlVfT0JKPXhtZW51Lm8KICBYT0JKPSJ4dGVybS5vIHhmbnMu byB4c2VsZWN0Lm8geHJkYi5vIHhzbWZucy5vIHhzZXR0aW5ncy5vIgogIEZPTlRfT0JKPXhm b250Lm8KICBpZiB0ZXN0ICIkSEFWRV9DQUlSTyIgPSAieWVzIjsgdGhlbgogICAgRk9OVF9P Qko9IiRGT05UX09CSiBmdGZvbnQubyBmdGNyZm9udC5vIgogIGVsaWYgdGVzdCAiJEhBVkVf WEZUIiA9ICJ5ZXMiOyB0aGVuCiAgICBGT05UX09CSj0iJEZPTlRfT0JKIGZ0Zm9udC5vIHhm dGZvbnQubyIKICBlbGlmIHRlc3QgIiRIQVZFX0ZSRUVUWVBFIiA9ICJ5ZXMiOyB0aGVuCiAg ICBGT05UX09CSj0iJEZPTlRfT0JKIGZ0Zm9udC5vIgogIGZpCmZpCgppZiB0ZXN0ICIke3dp bmRvd19zeXN0ZW19IiA9ICJwZ3RrIjsgdGhlbgogICBGT05UX09CSj0iZnRmb250Lm8gZnRj cmZvbnQubyIKZmkKCmlmIHRlc3QgIiR7SEFWRV9CRV9BUFB9IiA9ICJ5ZXMiIDsgdGhlbgog IGlmIHRlc3QgIiR7SEFWRV9DQUlST30iID0gInllcyI7IHRoZW4KICAgIEZPTlRfT0JKPSIk Rk9OVF9PQkogZnRmb250Lm8gZnRjcmZvbnQubyIKICBmaQpmaQoKaWYgdGVzdCAiJHtIQVZF X0hBUkZCVVpafSIgPSAieWVzIiA7IHRoZW4KICBGT05UX09CSj0iJEZPTlRfT0JKIGhiZm9u dC5vIgpmaQpBQ19TVUJTVChbRk9OVF9PQkpdKQpBQ19TVUJTVChbWE1FTlVfT0JKXSkKQUNf U1VCU1QoW1hPQkpdKQpBQ19TVUJTVChbRk9OVF9PQkpdKQoKV0lER0VUX09CSj0KTU9USUZf TElCVz0KaWYgdGVzdCAiJHtVU0VfWF9UT09MS0lUfSIgIT0gIm5vbmUiIDsgdGhlbgogIFdJ REdFVF9PQko9d2lkZ2V0Lm8KICBBQ19ERUZJTkUoW1VTRV9YX1RPT0xLSVRdLCBbMV0sIFtE ZWZpbmUgdG8gMSBpZiB1c2luZyBhbiBYIHRvb2xraXQuXSkKICBpZiB0ZXN0ICIke1VTRV9Y X1RPT0xLSVR9IiA9ICJMVUNJRCI7IHRoZW4KICAgIEFDX0RFRklORShbVVNFX0xVQ0lEXSwg WzFdLCBbRGVmaW5lIHRvIDEgaWYgdXNpbmcgdGhlIEx1Y2lkIFggdG9vbGtpdC5dKQogIGVs aWYgdGVzdCAiJHtVU0VfWF9UT09MS0lUfSIgPSAiTU9USUYiOyB0aGVuCiAgICBBQ19ERUZJ TkUoW1VTRV9NT1RJRl0sIFsxXSwgW0RlZmluZSB0byAxIGlmIHVzaW5nIHRoZSBNb3RpZiBY IHRvb2xraXQuXSkKICAgIE1PVElGX0xJQlc9LWxYbQogICAgY2FzZSAiJG9wc3lzIiBpbgog ICAgICBnbnUtbGludXgpCiAgICAgICAgIyMgUGF1bCBBYnJhaGFtcyA8YWJyYWhhbXMgYXQg ZXF1aW5veC5zaGF5c25ldC5jb20+IHNheXMgdGhpcyBpcyBuZWVkZWQuCiAgICAgICAgTU9U SUZfTElCVz0iJE1PVElGX0xJQlcgLWxYcG0iCiAgICAgICAgOzsKCiAgICAgIHVuaXh3YXJl KQogICAgICAgICMjIFJpY2hhcmQgQW50aG9ueSBSeWFuIDxyeWFuciBhdCBlbGxpbmd0bi5m dGMubnJjcy51c2RhLmdvdj4KICAgICAgICAjIyBzYXlzIC1sWGltcCBpcyBuZWVkZWQgaW4g VU5JWF9TViAuLi4gNC4yIDEuMS4yLgogICAgICAgIE1PVElGX0xJQlc9Ik1PVElGX0xJQlcg LWxYaW1wIgogICAgICAgIDs7CgogICAgICBhaXg0LTIpCiAgICAgICAgIyMgb2xzb25AbWNz LmFubC5nb3Ygc2F5cyAtbGkxOG4gaXMgbmVlZGVkIGJ5IC1sWG0uCiAgICAgICAgTU9USUZf TElCVz0iJE1PVElGX0xJQlcgLWxpMThuIgogICAgICAgIDs7CiAgICBlc2FjCiAgICBNT1RJ Rl9MSUJXPSIkTU9USUZfTElCVyAkTElCWFAiCiAgZmkKZmkKQUNfU1VCU1QoW1dJREdFVF9P QkpdKQoKVE9PTEtJVF9MSUJXPQpjYXNlICIkVVNFX1hfVE9PTEtJVCIgaW4KICBNT1RJRikg VE9PTEtJVF9MSUJXPSIkTU9USUZfTElCVyIgOzsKICBMVUNJRCkgVE9PTEtJVF9MSUJXPSIk TFVDSURfTElCVyIgOzsKICBub25lKSB0ZXN0ICJ4JEhBVkVfR1RLIiA9ICJ4eWVzIiAmJiBU T09MS0lUX0xJQlc9IiRHVEtfTElCUyIgOzsKZXNhYwppZiB0ZXN0ICIkSEFWRV9YV0lER0VU UyIgPSAieWVzIjsgdGhlbgogIFRPT0xLSVRfTElCVz0iJFRPT0xLSVRfTElCVyAtbFhjb21w b3NpdGUiCmZpCkFDX1NVQlNUKFtUT09MS0lUX0xJQlddKQoKaWYgdGVzdCAiJHtvcHN5c30i ICE9ICJtaW5ndzMyIjsgdGhlbgogIGlmIHRlc3QgIiRVU0VfWF9UT09MS0lUIiA9ICJub25l IjsgdGhlbgogICAgTElCWFRfT1RIRVI9IlwkKExJQlhTTSkiCiAgZWxzZQogICAgTElCWFRf T1RIRVI9IlwkKExJQlhNVSkgLWxYdCBcJChMSUJYVFI2KSAtbFhleHQiCiAgZmkKZmkKQUNf U1VCU1QoW0xJQlhUX09USEVSXSkKCmlmIHRlc3QgIiR7SEFWRV9YMTF9IiA9ICJ5ZXMiIDsg dGhlbgogIEFDX0RFRklORShbSEFWRV9YMTFdLCBbMV0sCgkgICAgW0RlZmluZSB0byAxIGlm IHlvdSB3YW50IHRvIHVzZSB2ZXJzaW9uIDExIG9mIFggd2luZG93cy5dKQogIExJQlhfT1RI RVI9IlwkKExJQlhUKSBcJChMSUJYX0VYVFJBKSIKZWxzZQogIExJQlhfT1RIRVI9CmZpCkFD X1NVQlNUKFtMSUJYX09USEVSXSkKCkhBVkVfT0xEWE1FTlU9bm8KaWYgdGVzdCAiJEhBVkVf R1RLIiA9IHllcyB8fCB0ZXN0ICIkSEFWRV9YMTEiICE9IHllczsgdGhlbgogIExJQlhNRU5V PQplbGlmIHRlc3QgIiRVU0VfWF9UT09MS0lUIiA9IG5vbmU7IHRoZW4KICBIQVZFX09MRFhN RU5VPXllcwogIExJQlhNRU5VPSckKG9sZFhNZW51ZGlyKS9saWJYTWVudTExLmEnCiAgQVVU T0RFUEVORF9QQVJFTlRTPSIkQVVUT0RFUEVORF9QQVJFTlRTIG9sZFhNZW51IgplbHNlCiAg TElCWE1FTlU9JyQobHdsaWJkaXIpL2xpYmx3LmEnCiAgQVVUT0RFUEVORF9QQVJFTlRTPSIk QVVUT0RFUEVORF9QQVJFTlRTIGx3bGliIgpmaQpBQ19TVUJTVChbTElCWE1FTlVdKQoKQUNf Q0FDSEVfQ0hFQ0soW2ZvciBzdHJ1Y3QgYWxpZ25tZW50XSwKICBbZW1hY3NfY3Zfc3RydWN0 X2FsaWdubWVudF0sCiAgW0FDX0NPTVBJTEVfSUZFTFNFKAogICAgIFtBQ19MQU5HX1BST0dS QU0oW1sjaW5jbHVkZSA8c3RkZGVmLmg+CgkJCXN0cnVjdCBzIHsgY2hhciBjOyB9IF9fYXR0 cmlidXRlX18gKChhbGlnbmVkICg4KSkpOwoJCQlzdHJ1Y3QgdCB7IGNoYXIgYzsgc3RydWN0 IHMgczsgfTsKCQkJY2hhciB2ZXJpZnlbb2Zmc2V0b2YgKHN0cnVjdCB0LCBzKSA9PSA4ID8g MSA6IC0xXTsKCQkgICAgICBdXSldLAogICAgIFtlbWFjc19jdl9zdHJ1Y3RfYWxpZ25tZW50 PXllc10sCiAgICAgW2VtYWNzX2N2X3N0cnVjdF9hbGlnbm1lbnQ9bm9dKV0pCmlmIHRlc3Qg IiRlbWFjc19jdl9zdHJ1Y3RfYWxpZ25tZW50IiA9IHllczsgdGhlbgogIEFDX0RFRklORShb SEFWRV9TVFJVQ1RfQVRUUklCVVRFX0FMSUdORURdLCBbMV0sCiAgICBbRGVmaW5lIHRvIDEg aWYgJ3N0cnVjdCBfX2F0dHJpYnV0ZV9fICgoYWxpZ25lZCAoTikpKScgYWxpZ25zIHRoZQog ICAgIHN0cnVjdHVyZSB0byBhbiBOLWJ5dGUgYm91bmRhcnkuXSkKZmkKCkFDX0NfVFlQRU9G CgpBQ19DQUNIRV9DSEVDSyhbZm9yIHN0YXRlbWVudCBleHByZXNzaW9uc10sCiAgW2VtYWNz X2N2X3N0YXRlbWVudF9leHByZXNzaW9uc10sCiAgW0FDX0NPTVBJTEVfSUZFTFNFKAogICAg IFtBQ19MQU5HX1BST0dSQU0oW10sIFtbcmV0dXJuICh7IGludCB4ID0gNTsgeC14OyB9KTtd XSldLAogICAgIFtlbWFjc19jdl9zdGF0ZW1lbnRfZXhwcmVzc2lvbnM9eWVzXSwKICAgICBb ZW1hY3NfY3Zfc3RhdGVtZW50X2V4cHJlc3Npb25zPW5vXSldKQppZiB0ZXN0ICIkZW1hY3Nf Y3Zfc3RhdGVtZW50X2V4cHJlc3Npb25zIiA9IHllczsgdGhlbgogIEFDX0RFRklORShbSEFW RV9TVEFURU1FTlRfRVhQUkVTU0lPTlNdLCBbMV0sCiAgICBbRGVmaW5lIHRvIDEgaWYgc3Rh dGVtZW50IGV4cHJlc3Npb25zIHdvcmsuXSkKZmkKCmlmIHRlc3QgIiR7R05VX01BTExPQ30i ID0gInllcyIgOyB0aGVuCiAgQUNfREVGSU5FKFtHTlVfTUFMTE9DXSwgWzFdLAoJICAgIFtE ZWZpbmUgdG8gMSBpZiB5b3Ugd2FudCB0byB1c2UgdGhlIEdOVSBtZW1vcnkgYWxsb2NhdG9y Ll0pCmZpCgpSQUxMT0NfT0JKPQppZiB0ZXN0ICIke1JFTF9BTExPQ30iID0gInllcyIgOyB0 aGVuCiAgQUNfREVGSU5FKFtSRUxfQUxMT0NdLCBbMV0sCgkgICAgW0RlZmluZSBSRUxfQUxM T0MgaWYgeW91IHdhbnQgdG8gdXNlIHRoZSByZWxvY2F0aW5nIGFsbG9jYXRvciBmb3IKCSAg ICAgYnVmZmVyIHNwYWNlLl0pCgogIHRlc3QgIiRzeXN0ZW1fbWFsbG9jIiAhPSAieWVzIiAm JiBSQUxMT0NfT0JKPXJhbGxvYy5vCmZpCkFDX1NVQlNUKFtSQUxMT0NfT0JKXSkKCmlmIHRl c3QgIiRvcHN5cyIgPSAiY3lnd2luIjsgdGhlbgogIENZR1dJTl9PQko9ImN5Z3czMi5vIgog ICMjIEN5Z3dpbiBkaWZmZXJzIGJlY2F1c2Ugb2YgaXRzIHVuZXhlYygpLgogIFBSRV9BTExP Q19PQko9CiAgUE9TVF9BTExPQ19PQko9bGFzdGZpbGUubwplbGlmIHRlc3QgIiRvcHN5cyIg PSAibWluZ3czMiI7IHRoZW4KICBDWUdXSU5fT0JKPQogIFBSRV9BTExPQ19PQko9CiAgUE9T VF9BTExPQ19PQko9bGFzdGZpbGUubwplbHNlCiAgQ1lHV0lOX09CSj0KICBQUkVfQUxMT0Nf T0JKPWxhc3RmaWxlLm8KICBQT1NUX0FMTE9DX09CSj0KZmkKQUNfU1VCU1QoW0NZR1dJTl9P QkpdKQpBQ19TVUJTVChbUFJFX0FMTE9DX09CSl0pCkFDX1NVQlNUKFtQT1NUX0FMTE9DX09C Sl0pCgpkbmwgQ2FsbCB0aGlzICdGT1JUSUZZX1NPVVInIHNvIHRoYXQgaXQgc29ydHMgYmVm b3JlIHRoZSAnRk9SVElGWV9TT1VSQ0UnCmRubCB2ZXJiYXRpbSBkZWZpbmVkIGFib3ZlLiAg VGhlIHRyaWNreSBuYW1lIGlzIGFwcm9wb3MsIGFzIHRoaXMgaGFjawpkbmwgbWFrZXMgRm9y dGlmeSBnbyBzb3VyIQpBSF9WRVJCQVRJTShbRk9SVElGWV9TT1VSXSwKWy8qIFdpdGhvdXQg dGhlIGZvbGxvd2luZyB3b3JrYXJvdW5kLCBFbWFjcyBydW5zIHNsb3dseSBvbiBPUyBYIDEw LjguCiAgIFRoZSB3b3JrYXJvdW5kIGRpc2FibGVzIHNvbWUgdXNlZnVsIHJ1bi10aW1lIGNo ZWNraW5nLCBzbyBpdAogICBzaG91bGQgYmUgY29uZGl0aW9uYWwgdG8gdGhlIHBsYXRmb3Jt cyB3aXRoIHRoZSBwZXJmb3JtYW5jZSBidWcuCiAgIFBlcmhhcHMgQXBwbGUgd2lsbCBmaXgg dGhpcyBzb21lIGRheTsgYWxzbyBzZWUgbTQvZXh0ZXJuLWlubGluZS5tNC4gICovCiNpZiBk ZWZpbmVkIF9fQVBQTEVfXyAmJiBkZWZpbmVkIF9fR05VQ19fCiMgaWZuZGVmIF9ET05UX1VT RV9DVFlQRV9JTkxJTkVfCiMgIGRlZmluZSBfRE9OVF9VU0VfQ1RZUEVfSU5MSU5FXwojIGVu ZGlmCiMgaWZuZGVmIF9GT1JUSUZZX1NPVVJDRQojICBkZWZpbmUgX0ZPUlRJRllfU09VUkNF IDAKIyBlbmRpZgojZW5kaWYKXSkKCiMgSWYgdXNlciBhc2tzIHRvIG9taXQgZmVhdHVyZXMs IGRpc2FibGUgb3B0aW9uYWwgZmVhdHVyZXMgdGhhdCBnbnVsaWIKIyBtaWdodCBvdGhlcndp c2UgZW5hYmxlLgppZiB0ZXN0ICIkd2l0aF9mZWF0dXJlcyIgPSBubyAmJiB0ZXN0ICIkZW5h YmxlX2FjbCIgIT0geWVzOyB0aGVuCiAgZW5hYmxlX2FjbD1ubwpmaQoKIyBDb25maWd1cmUg Z251bGliLiAgQWx0aG91Z2ggdGhpcyBkb2VzIG5vdCBhZmZlY3QgQ0ZMQUdTIG9yIExJQlMg cGVybWFuZW50bHkuCiMgaXQgdGVtcG9yYXJpbHkgcmV2ZXJ0cyB0aGVtIHRvIHRoZWlyIHBy ZS1wa2ctY29uZmlnIHZhbHVlcywKIyBiZWNhdXNlIGdudWxpYiBuZWVkcyB0byB3b3JrIHdp dGggYm90aCBzcmMgKHdoaWNoIHVzZXMgdGhlCiMgcGtnLWNvbmZpZyBzdHVmZikgYW5kIGxp Yi1zcmMgKHdoaWNoIGRvZXMgbm90KS4gIEZvciBleGFtcGxlLCBnbnVsaWIKIyBtYXkgbmVl ZCB0byBkZXRlcm1pbmUgd2hldGhlciBDTE9DS19USU1FX0xJQiBzaG91bGQgY29udGFpbiAt bHJ0LAojIGFuZCBpdCB0aGVyZWZvcmUgbmVlZHMgdG8gcnVuIGluIGFuIGVudmlyb25tZW50 IHdoZXJlIExJQlMgZG9lcyBub3QKIyBhbHJlYWR5IGNvbnRhaW4gLWxydCBtZXJlbHkgYmVj YXVzZSAncGtnLWNvbmZpZyAtLWxpYnMnIHByaW50ZWQgJy1scnQnCiMgZm9yIHNvbWUgcGFj a2FnZSB1bnJlbGF0ZWQgdG8gbGliLXNyYy4KU0FWRV9DRkxBR1M9JENGTEFHUwpTQVZFX0xJ QlM9JExJQlMKQ0ZMQUdTPSRwcmVfUEtHX0NPTkZJR19DRkxBR1MKTElCUz0iJExJQl9QVEhS RUFEICRwcmVfUEtHX0NPTkZJR19MSUJTIgpnbF9BU1NFUlRfTk9fR05VTElCX1BPU0lYQ0hF Q0sKZ2xfQVNTRVJUX05PX0dOVUxJQl9URVNUUwpnbF9FRU1BTExPQwpnbF9JTklUCkNGTEFH Uz0kU0FWRV9DRkxBR1MKTElCUz0kU0FWRV9MSUJTCgojIHRpbWVyX2dldG92ZXJydW4gbmVl ZHMgdGhlIHNhbWUgbGlicmFyeSBhcyB0aW1lcl9zZXR0aW1lCk9MRF9MSUJTPSRMSUJTCkxJ QlM9IiRMSUJfVElNRVJfVElNRSAkTElCUyIKQUNfQ0hFQ0tfRlVOQ1MoW3RpbWVyX2dldG92 ZXJydW5dKQpMSUJTPSRPTERfTElCUwoKaWYgdGVzdCAiJHtvcHN5c30iID0gIm1pbmd3MzIi OyB0aGVuCiAgQ1BQRkxBR1M9IiRDUFBGTEFHUyAtRFVTRV9DUlRfRExMPTEgLUkgXCR7YWJz X3RvcF9zcmNkaXJ9L250L2luYyIKICAjIFJlbW92ZSB1bm5lZWRlZCBzd2l0Y2hlcyBmcm9t IHRoZSB2YWx1ZSBvZiBDQyB0aGF0IGdvZXMgdG8gTWFrZWZpbGVzCiAgQ0M9YEFTX0VDSE8o WyIkQ0MiXSkgfCBzZWQgLWUgInMsJEdDQ19URVNUX09QVElPTlMsLCJgCmZpCgpjYXNlICIk b3BzeXMiIGluCiAgYWl4NC0yKSBMRF9TV0lUQ0hfU1lTVEVNX1RFTUFDUz0iLVdsLC1ibm9k ZWxjc2VjdCIgOzsKCiAgY3lnd2luKSBMRF9TV0lUQ0hfU1lTVEVNX1RFTUFDUz0iLVdsLC1z dGFjaywweDAwODAwMDAwIiA7OwoKICBkYXJ3aW4pCiAgIGlmIHRlc3QgIiRIQVZFX05TIiA9 ICJ5ZXMiOyB0aGVuCiAgICAgbGlic19uc2d1aT0iLWZyYW1ld29yayBBcHBLaXQiCiAgICAg aWYgdGVzdCAiJE5TX0lNUExfQ09DT0EiID0gInllcyI7IHRoZW4KICAgICAgICBsaWJzX25z Z3VpPSIkbGlic19uc2d1aSAtZnJhbWV3b3JrIElPS2l0IC1mcmFtZXdvcmsgQ2FyYm9uIFwK ICAgICAgICAgICAgICAgICAgICAtZnJhbWV3b3JrIElPU3VyZmFjZSAtZnJhbWV3b3JrIFF1 YXJ0ekNvcmUiCiAgICAgICAgaWYgdGVzdCAiJGVtYWNzX2N2X21hY29zeF8xMl8wIiA9ICJ5 ZXMiOyB0aGVuCgkgIGxpYnNfbnNndWk9IiRsaWJzX25zZ3VpIC1mcmFtZXdvcmsgVW5pZm9y bVR5cGVJZGVudGlmaWVycyIKCWZpCiAgICAgZmkKICAgZWxzZQogICAgIGxpYnNfbnNndWk9 CiAgIGZpCiAgIExEX1NXSVRDSF9TWVNURU1fVEVNQUNTPSRsaWJzX25zZ3VpCiAgICMjIFRo ZSAtaGVhZGVycGFkIG9wdGlvbiB0ZWxscyBsZCAoc2VlIG1hbiBwYWdlKSB0byBsZWF2ZSBy b29tIGF0IHRoZQogICAjIyBlbmQgb2YgdGhlIGhlYWRlciBmb3IgYWRkaW5nIGxvYWQgY29t bWFuZHMuICBOZWVkZWQgZm9yIGR1bXBpbmcuCiAgICMjIDB4MTAwMCBpcyBlbm91Z2ggZm9y IHJvdWdobHkgNTIgbG9hZCBjb21tYW5kcyBvbiB0aGUgeDg2XzY0CiAgICMjIGFyY2hpdGVj dHVyZSAod2hlcmUgdGhleSBhcmUgNzggYnl0ZXMgZWFjaCkuIFRoZSBhY3R1YWwgbnVtYmVy IG9mCiAgICMjIGxvYWQgY29tbWFuZHMgYWRkZWQgaXMgbm90IGNvbnNpc3RlbnQgYnV0IG5v cm1hbGx5IHJhbmdlcyBmcm9tCiAgICMjIGFib3V0IDE0IHRvIGFib3V0IDM0LiBTZXR0aW5n IGl0IGhpZ2ggZ2V0cyB1cyBwbGVudHkgb2Ygc2xvcCBhbmQKICAgIyMgb25seSBjb3N0cyBh Ym91dCAxLjVLIG9mIHdhc3RlZCBiaW5hcnkgc3BhY2UuCiAgIGhlYWRlcnBhZF9leHRyYT0x MDAwCiAgIGlmIHRlc3QgIiR3aXRoX3VuZXhlYyIgPSB5ZXM7IHRoZW4KICAgICBMRF9TV0lU Q0hfU1lTVEVNX1RFTUFDUz0iLWZuby1waWUgJExEX1NXSVRDSF9TWVNURU1fVEVNQUNTIC1Y bGlua2VyIC1oZWFkZXJwYWQgLVhsaW5rZXIgJGhlYWRlcnBhZF9leHRyYSIKICAgZmkKCiAg ICMjIFRoaXMgaXMgaGVyZSBiZWNhdXNlIHNyYy9NYWtlZmlsZS5pbiBkaWQgc29tZSBleHRy YSBmaWRkbGluZyBhcm91bmQKICAgIyMgd2l0aCBMRF9TV0lUQ0hfU1lTVEVNLiAgSXQgc2Vl bXMgY2xlYW5lciB0byBwdXQgdGhpcyBpbgogICAjIyBMRF9TV0lUQ0hfU1lTVEVNX1RFTUFD UyBpbnN0ZWFkLAogICB0ZXN0ICJ4JExEX1NXSVRDSF9TWVNURU0iID0gIngiICYmIHRlc3Qg IngkR0NDIiAhPSAieHllcyIgJiYgXAogICAgIExEX1NXSVRDSF9TWVNURU1fVEVNQUNTPSIt WCAkTERfU1dJVENIX1NZU1RFTV9URU1BQ1MiCiAgIDs7CgogICMjIExEX1NXSVRDSF9YX1NJ VEVfUlBBVEggaXMgYSAtcnBhdGggb3B0aW9uIHNheWluZyB3aGVyZSB0bwogICMjIGZpbmQg WCBhdCBydW4tdGltZS4KICAjIyBXaGVuIGhhbmRsZWQgYnkgY3BwLCB0aGlzIHdhcyBpbiBM RF9TV0lUQ0hfU1lTVEVNLiAgSG93ZXZlciwgYXQgdGhlCiAgIyMgcG9pbnQgd2hlcmUgY29u ZmlndXJlIHNvdXJjZWQgdGhlIHMvKi5oIGZpbGUsIExEX1NXSVRDSF9YX1NJVEVfUlBBVEgK ICAjIyBoYWQgbm90IHlldCBiZWVuIGRlZmluZWQgYW5kIHdhcyBleHBhbmRlZCB0byBudWxs LiAgSGVuY2UgTERfU1dJVENIX1NZU1RFTQogICMjIGhhZCBkaWZmZXJlbnQgdmFsdWVzIGlu IGNvbmZpZ3VyZSAoaW4gYWNfbGluaykgYW5kIHNyYy9NYWtlZmlsZS5pbi4KICAjIyBJdCBz ZWVtcyBjbGVhcmVyIHRoZXJlZm9yZSB0byBwdXQgdGhpcyBwaWVjZSBpbiBMRF9TV0lUQ0hf U1lTVEVNX1RFTUFDUy4KICBnbnUqKSBMRF9TV0lUQ0hfU1lTVEVNX1RFTUFDUz0iXCQoTERf U1dJVENIX1hfU0lURV9SUEFUSCkiIDs7CgogIG1pbmd3MzIpCiAgICMjIElzIGl0IGFueSBi ZXR0ZXIgdW5kZXIgTWluR1c2NCB0byByZWxvY2F0ZSBlbWFjcyBpbnRvIGhpZ2hlciBhZGRy ZXNzZXM/CiAgIGNhc2UgIiRjYW5vbmljYWwiIGluCiAgICAgeDg2XzY0LSotKikgTERfU1dJ VENIX1NZU1RFTV9URU1BQ1M9Ii1XbCwtc3RhY2ssMHgwMDgwMDAwMCAtV2wsLWhlYXAsMHgw MDEwMDAwMCAtV2wsLWltYWdlLWJhc2UsMHg0MDAwMDAwMDAgLVdsLC1lbnRyeSxfX3N0YXJ0 IC1XbCwtTWFwLC4vdGVtYWNzLm1hcCIgOzsKICAgICAqKSBMRF9TV0lUQ0hfU1lTVEVNX1RF TUFDUz0iLVdsLC1zdGFjaywweDAwODAwMDAwIC1XbCwtaGVhcCwweDAwMTAwMDAwIC1XbCwt aW1hZ2UtYmFzZSwweDAxMDAwMDAwIC1XbCwtZW50cnksX19zdGFydCAtV2wsLU1hcCwuL3Rl bWFjcy5tYXAiIDs7CiAgIGVzYWMKICAgIyMgSWYgdGhleSB3YW50IHVuZXhlYywgZGlzYWJs ZSBXaW5kb3dzIEFTTFIgZm9yIHRoZSBFbWFjcyBiaW5hcnkKICAgaWYgdGVzdCAiJHdpdGhf ZHVtcGluZyIgPSAidW5leGVjIjsgdGhlbgogICAgICBjYXNlICIkY2Fub25pY2FsIiBpbgog ICAgICAgIHg4Nl82NC0qLSopIExEX1NXSVRDSF9TWVNURU1fVEVNQUNTPSIkTERfU1dJVENI X1NZU1RFTV9URU1BQ1MgLVdsLC1kaXNhYmxlLWR5bmFtaWNiYXNlIC1XbCwtZGlzYWJsZS1o aWdoLWVudHJvcHktdmEgLVdsLC1kZWZhdWx0LWltYWdlLWJhc2UtbG93IiA7OwogICAgICAg ICopIExEX1NXSVRDSF9TWVNURU1fVEVNQUNTPSIkTERfU1dJVENIX1NZU1RFTV9URU1BQ1Mg LVdsLC1kaXNhYmxlLWR5bmFtaWNiYXNlIiA7OwogICAgICBlc2FjCiAgIGZpCiAgIDs7Cgog ICopIExEX1NXSVRDSF9TWVNURU1fVEVNQUNTPSA7Owplc2FjCgojIC1uby1waWUgb3IgLW5v cGllIGZpeGVzIGEgdGVtYWNzIHNlZ2ZhdWx0IG9uIEdlbnRvbywgT3BlbkJTRCwKIyBVYnVu dHUsIGFuZCBvdGhlciBzeXN0ZW1zIHdpdGggImhhcmRlbmVkIiBHQ0MgY29uZmlndXJhdGlv bnMgZm9yCiMgc29tZSByZWFzb24gKEJ1ZyMxODc4NCkuICBXZSBkb24ndCBrbm93IHdoeSB0 aGlzIHdvcmtzLCBidXQgbm90CiMgc2VnZmF1bHRpbmcgaXMgYmV0dGVyIHRoYW4gc2VnZmF1 bHRpbmcuICBVc2UgYWNfY193ZXJyb3JfZmxhZz15ZXMKIyB3aGVuIHRyeWluZyB0aGUgb3B0 aW9uLCBvdGhlcndpc2UgY2xhbmcga2VlcHMgd2FybmluZyB0aGF0IGl0IGRvZXMKIyBub3Qg dW5kZXJzdGFuZCBpdCwgYW5kIHByZS00LjYgR0NDIGhhcyBhIHNpbWlsYXIgcHJvYmxlbQoj IChCdWcjMjAzMzgpLiAgUHJlZmVyIC1uby1waWUgdG8gLW5vcGllLCBhcyAtbm8tcGllIGlz IHRoZQojIHNwZWxsaW5nIHVzZWQgYnkgR0NDIDYuMS4wIGFuZCBsYXRlciAoQnVnIzI0Njgy KS4KQUNfQ0FDSEVfQ0hFQ0soCiAgW2ZvciAkQ0Mgb3B0aW9uIHRvIGRpc2FibGUgcG9zaXRp b24gaW5kZXBlbmRlbnQgZXhlY3V0YWJsZXNdLAogIFtlbWFjc19jdl9wcm9nX2NjX25vX3Bp ZV0sCiAgW2lmIHRlc3QgJHdpdGhfdW5leGVjID0gbm87IHRoZW4KICAgICBlbWFjc19jdl9w cm9nX2NjX25vX3BpZT0nbm90IG5lZWRlZCcKICAgZWxzZQogICAgIGVtYWNzX3NhdmVfY193 ZXJyb3JfZmxhZz0kYWNfY193ZXJyb3JfZmxhZwogICAgIGVtYWNzX3NhdmVfTERGTEFHUz0k TERGTEFHUwogICAgIGFjX2Nfd2Vycm9yX2ZsYWc9eWVzCiAgICAgZm9yIGVtYWNzX2N2X3By b2dfY2Nfbm9fcGllIGluIC1uby1waWUgLW5vcGllIG5vOyBkbwogICAgICAgdGVzdCAkZW1h Y3NfY3ZfcHJvZ19jY19ub19waWUgPSBubyAmJiBicmVhawogICAgICAgTERGTEFHUz0iJGVt YWNzX3NhdmVfTERGTEFHUyAkZW1hY3NfY3ZfcHJvZ19jY19ub19waWUiCiAgICAgICBBQ19M SU5LX0lGRUxTRShbQUNfTEFOR19QUk9HUkFNKFtdLCBbXSldLCBbYnJlYWtdKQogICAgIGRv bmUKICAgICBhY19jX3dlcnJvcl9mbGFnPSRlbWFjc19zYXZlX2Nfd2Vycm9yX2ZsYWcKICAg ICBMREZMQUdTPSRlbWFjc19zYXZlX0xERkxBR1MKICAgZmldKQpjYXNlICRlbWFjc19jdl9w cm9nX2NjX25vX3BpZSBpbgogIC0qKQogICAgTERfU1dJVENIX1NZU1RFTV9URU1BQ1M9IiRM RF9TV0lUQ0hfU1lTVEVNX1RFTUFDUyAkZW1hY3NfY3ZfcHJvZ19jY19ub19waWUiCiAgICA7 Owplc2FjCgppZiB0ZXN0IHgkYWNfZW5hYmxlX3Byb2ZpbGluZyAhPSB4IDsgdGhlbgogIGNh c2UgJG9wc3lzIGluCiAgICAqZnJlZWJzZCB8IGdudS1saW51eCkgOzsKICAgICopIExEX1NX SVRDSF9TWVNURU1fVEVNQUNTPSIkTERfU1dJVENIX1NZU1RFTV9URU1BQ1MgLXBnIiA7Owog IGVzYWMKZmkKCkxEX1NXSVRDSF9TWVNURU1fVEVNQUNTPSIkTERGTEFHU19OT0NPTUJSRUxP QyAkTERfU1dJVENIX1NZU1RFTV9URU1BQ1MiCgpBQ19TVUJTVChbTERfU1dJVENIX1NZU1RF TV9URU1BQ1NdKQoKIyMgQ29tbW9uIGZvciBhbGwgd2luZG93IHN5c3RlbXMKaWYgdGVzdCAi JHdpbmRvd19zeXN0ZW0iICE9ICJub25lIjsgdGhlbgogIEFDX0RFRklORShbSEFWRV9XSU5E T1dfU1lTVEVNXSwgWzFdLCBbRGVmaW5lIGlmIHlvdSBoYXZlIGEgd2luZG93IHN5c3RlbS5d KQogIEFDX0RFRklORShbUE9MTF9GT1JfSU5QVVRdLCBbMV0sCiAgICBbRGVmaW5lIGlmIHlv dSBwb2xsIHBlcmlvZGljYWxseSB0byBkZXRlY3QgQy1nLl0pCiAgV0lORE9XX1NZU1RFTV9P Qko9ImZvbnRzZXQubyBmcmluZ2UubyBpbWFnZS5vIgoKICBpZiB0ZXN0ICIkd2luZG93X3N5 c3RlbSIgPSAieDExIjsgdGhlbgogICAgQUNfREVGSU5FKFtIQVZFX1RFWFRfQ09OVkVSU0lP Tl0sIFsxXSwKICAgICAgW0RlZmluZSBpZiB0aGUgd2luZG93IHN5c3RlbSBoYXMgdGV4dCBj b252ZXJzaW9uIHN1cHBvcnQuXSkKICAgIFdJTkRPV19TWVNURU1fT0JKPSIkV0lORE9XX1NZ U1RFTV9PQkogdGV4dGNvbnYubyIKICBmaQpmaQoKQUNfU1VCU1QoW1dJTkRPV19TWVNURU1f T0JKXSkKCkFIX1RPUChbLyogR05VIEVtYWNzIHNpdGUgY29uZmlndXJhdGlvbiB0ZW1wbGF0 ZSBmaWxlLgoKQ29weXJpZ2h0IChDKSAxOTg4LCAxOTkzLTE5OTQsIDE5OTktMjAwMiwgMjAw NC0yMDIxCiAgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCgpUaGlzIGZpbGUgaXMg cGFydCBvZiBHTlUgRW1hY3MuCgpHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNh biByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQppdCB1bmRlciB0aGUgdGVybXMgb2Yg dGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQp0aGUgRnJl ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNl LCBvciAoYXQKeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgoKR05VIEVtYWNzIGlz IGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCmJ1dCBX SVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5 IG9mCk1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T RS4gIFNlZSB0aGUKR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWls cy4KCllvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFs IFB1YmxpYyBMaWNlbnNlCmFsb25nIHdpdGggR05VIEVtYWNzLiAgSWYgbm90LCBzZWUgPGh0 dHBzOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4gICovCgoKLyogTm8gY29kZSBpbiBFbWFj cyAjaW5jbHVkZXMgY29uZmlnLmggdHdpY2UsIGJ1dCBzb21lIGJpdHMgb2YgY29kZQogICBp bnRlbmRlZCB0byB3b3JrIHdpdGggb3RoZXIgcGFja2FnZXMgYXMgd2VsbCAobGlrZSBnbWFs bG9jLmMpCiAgIHRoaW5rIHRoZXkgY2FuIGluY2x1ZGUgaXQgYXMgbWFueSB0aW1lcyBhcyB0 aGV5IGxpa2UuICAqLwojaWZuZGVmIEVNQUNTX0NPTkZJR19ICiNkZWZpbmUgRU1BQ1NfQ09O RklHX0gKXSlkbmwKCkFIX0JPVFRPTShbI2luY2x1ZGUgPGNvbmZfcG9zdC5oPgoKI2VuZGlm IC8qIEVNQUNTX0NPTkZJR19IICovCgovKgpMb2NhbCBWYXJpYWJsZXM6Cm1vZGU6IGMKRW5k OgoqLwpdKWRubAoKIyMjIyBSZXBvcnQgb24gd2hhdCB3ZSBkZWNpZGVkIHRvIGRvLgojIyMj IFJlcG9ydCBHVEsgYXMgYSB0b29sa2l0LCBldmVuIGlmIGl0IGRvZXNuJ3QgdXNlIFh0Lgoj IyMjIEl0IG1ha2VzIHByaW50aW5nIHJlc3VsdCBtb3JlIHVuZGVyc3RhbmRhYmxlIGFzIHVz aW5nIEdUSyBzZXRzCiMjIyMgdG9vbGtpdF9zY3JvbGxfYmFycyB0byB5ZXMgYnkgZGVmYXVs dC4KaWYgdGVzdCAiJHtIQVZFX0dUS30iID0gInllcyI7IHRoZW4KICBVU0VfWF9UT09MS0lU PSIkVVNFX0dUS19UT09MS0lUIgpmaQoKaWYgdGVzdCAkVVNFX0FDTCAtbmUgMDsgdGhlbgog IEFDTF9TVU1NQVJZPSJ5ZXMiCiAgdGVzdCAiJExJQl9BQ0wiICYmIEFDTF9TVU1NQVJZPSIk QUNMX1NVTU1BUlkgJExJQl9BQ0wiCiAgdGVzdCAiJExJQl9YQVRUUiIgJiYgQUNMX1NVTU1B Ulk9IiRBQ0xfU1VNTUFSWSAkTElCX1hBVFRSIgplbHNlCiAgQUNMX1NVTU1BUlk9bm8KZmkK CmlmIHRlc3QgLXogIiRHTVBfSCI7IHRoZW4KICBIQVZFX0dNUD15ZXMKZWxzZQogIEhBVkVf R01QPW5vCmZpCgplbWFjc19zdGFuZGFyZF9kaXJzPSdTdGFuZGFyZCBkaXJzJwpBU19FQ0hP KFsiCkNvbmZpZ3VyZWQgZm9yICcke2Nhbm9uaWNhbH0nLgoKICBXaGVyZSBzaG91bGQgdGhl IGJ1aWxkIHByb2Nlc3MgZmluZCB0aGUgc291cmNlIGNvZGU/ICAgICR7c3JjZGlyfQogIFdo YXQgY29tcGlsZXIgc2hvdWxkIGVtYWNzIGJlIGJ1aWx0IHdpdGg/ICAgICAgICAgICAgICAg JHtDQ30gJHtDRkxBR1N9CiAgU2hvdWxkIEVtYWNzIHVzZSB0aGUgR05VIHZlcnNpb24gb2Yg bWFsbG9jPyAgICAgICAgICAgICAke0dOVV9NQUxMT0N9JHtHTlVfTUFMTE9DX3JlYXNvbn0K ICBTaG91bGQgRW1hY3MgdXNlIGEgcmVsb2NhdGluZyBhbGxvY2F0b3IgZm9yIGJ1ZmZlcnM/ ICAgICR7UkVMX0FMTE9DfQogIFNob3VsZCBFbWFjcyB1c2UgbW1hcCgyKSBmb3IgYnVmZmVy IGFsbG9jYXRpb24/ICAgICAgICAgJHVzZV9tbWFwX2Zvcl9idWZmZXJzCiAgV2hhdCB3aW5k b3cgc3lzdGVtIHNob3VsZCBFbWFjcyB1c2U/ICAgICAgICAgICAgICAgICAgICAke3dpbmRv d19zeXN0ZW19CiAgV2hhdCB0b29sa2l0IHNob3VsZCBFbWFjcyB1c2U/ICAgICAgICAgICAg ICAgICAgICAgICAgICAke1VTRV9YX1RPT0xLSVR9CiAgV2hlcmUgZG8gd2UgZmluZCBYIFdp bmRvd3MgaGVhZGVyIGZpbGVzPyAgICAgICAgICAgICAgICAke3hfaW5jbHVkZXM6LSRlbWFj c19zdGFuZGFyZF9kaXJzfQogIFdoZXJlIGRvIHdlIGZpbmQgWCBXaW5kb3dzIGxpYnJhcmll cz8gICAgICAgICAgICAgICAgICAgJHt4X2xpYnJhcmllczotJGVtYWNzX3N0YW5kYXJkX2Rp cnN9Il0pCgojIyMjIFBsZWFzZSByZXNwZWN0IGFscGhhYmV0aWNhbCBvcmRlcmluZyB3aGVu IG1ha2luZyBhZGRpdGlvbnMuCm9wdHNlcD0KZW1hY3NfY29uZmlnX2ZlYXR1cmVzPQpmb3Ig b3B0IGluIEFDTCBCRV9BUFAgQ0FJUk8gREJVUyBGUkVFVFlQRSBHQ09ORiBHSUYgR0xJQiBH TVAgR05VVExTIEdQTSBHU0VUVElOR1MgXAogSEFSRkJVWlogSU1BR0VNQUdJQ0sgSlBFRyBK U09OIExDTVMyIExJQk9URiBMSUJTRUxJTlVYIExJQlNZU1RFTUQgTElCWE1MMiBcCiBNMTdO X0ZMVCBNT0RVTEVTIE5BVElWRV9DT01QIE5PVElGWSBOUyBPTERYTUVOVSBQRFVNUEVSIFBH VEsgUE5HIFJTVkcgU0VDQ09NUCBcCiBTT1VORCBTUUxJVEUzIFRIUkVBRFMgVElGRiBUT09M S0lUX1NDUk9MTF9CQVJTIFRSRUVfU0lUVEVSIFwKIFVORVhFQyBXRUJQIFgxMSBYQVczRCBY REJFIFhGVCBYSU0gWElOUFVUMiBYUE0gWFdJREdFVFMgWF9UT09MS0lUIFwKIFpMSUI7IGRv CgogICAgY2FzZSAkb3B0IGluCiAgICAgIFBEVU1QRVIpIHZhbD0ke3dpdGhfcGR1bXBlcn0g OzsKICAgICAgVU5FWEVDKSB2YWw9JHt3aXRoX3VuZXhlY30gOzsKICAgICAgR0xJQikgdmFs PSR7ZW1hY3NfY3ZfbGlua3NfZ2xpYn0gOzsKICAgICAgTk9USUZZfEFDTCkgZXZhbCB2YWw9 XCR7JHtvcHR9X1NVTU1BUll9IDs7CiAgICAgIFRPT0xLSVRfU0NST0xMX0JBUlN8WF9UT09M S0lUKSBldmFsIHZhbD1cJHtVU0VfJG9wdH0gOzsKICAgICAgVEhSRUFEUykgdmFsPSR7dGhy ZWFkc19lbmFibGVkfSA7OwogICAgICAqKSBldmFsIHZhbD1cJHtIQVZFXyRvcHR9IDs7CiAg ICBlc2FjCiAgICBjYXNlIHgkdmFsIGluCiAgICAgIHhub3x4bm9uZXx4KSBjb250aW51ZSA7 OwogICAgZXNhYwogICAgY2FzZSAkb3B0IGluCiAgICAgIFhfVE9PTEtJVCkKICAgICAgICBj YXNlICR2YWwgaW4KICAgICAgICAgIEdUSyp8TFVDSUR8TU9USUYpIG9wdD0kdmFsIDs7CiAg ICAgICAgICAqKSBjb250aW51ZSA7OwogICAgICAgIGVzYWMKICAgICAgOzsKICAgICAgTk9U SUZZKQogICAgICAgIGNhc2UgJHZhbCBpbgogICAgICAgICAgKmxrcXVldWUqKSBvcHQ9IiRv cHQgTElCS1FVRVVFIiA7OwogICAgICAgICAgKmtxdWV1ZSopIG9wdD0iJG9wdCBLUVVFVUUi IDs7CiAgICAgICAgICAqaW5vdGlmeSopIG9wdD0iJG9wdCBJTk9USUZZIiA7OwogICAgICAg ICAgKmdmaWxlKikgb3B0PSIkb3B0IEdGSUxFTk9USUZZIiA7OwogICAgICAgICAgKnczMiop IG9wdD0iJG9wdCBXMzJOT1RJRlkiIDs7CiAgICAgICAgZXNhYwogICAgICA7OwogICAgZXNh YwogICAgQVNfVkFSX0FQUEVORChbZW1hY3NfY29uZmlnX2ZlYXR1cmVzXSwgWyIkb3B0c2Vw JG9wdCJdKQogICAgb3B0c2VwPScgJwpkb25lCkFDX0RFRklORV9VTlFVT1RFRChbRU1BQ1Nf Q09ORklHX0ZFQVRVUkVTXSwgWyIke2VtYWNzX2NvbmZpZ19mZWF0dXJlc30iXSwKICBbU3Vt bWFyeSBvZiBzb21lIG9mIHRoZSBtYWluIGZlYXR1cmVzIGVuYWJsZWQgYnkgY29uZmlndXJl Ll0pCgpBU19FQ0hPKFsiICBEb2VzIEVtYWNzIHVzZSAtbFhhdzNkPyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICR7SEFWRV9YQVczRH0KICBEb2VzIEVtYWNzIHVzZSB0aGUg WCBEb3VibGUgQnVmZmVyIEV4dGVuc2lvbj8gICAgICAgICAgICR7SEFWRV9YREJFfQogIERv ZXMgRW1hY3MgdXNlIC1sWHBtPyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg JHtIQVZFX1hQTX0KICBEb2VzIEVtYWNzIHVzZSAtbGpwZWc/ICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICR7SEFWRV9KUEVHfQogIERvZXMgRW1hY3MgdXNlIC1sdGlmZj8g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHtIQVZFX1RJRkZ9CiAgRG9lcyBF bWFjcyB1c2UgYSBnaWYgbGlicmFyeT8gICAgICAgICAgICAgICAgICAgICAgICAgICAke0hB VkVfR0lGfSAkTElCR0lGCiAgRG9lcyBFbWFjcyB1c2UgYSBwbmcgbGlicmFyeT8gICAgICAg ICAgICAgICAgICAgICAgICAgICAke0hBVkVfUE5HfSAkTElCUE5HCiAgRG9lcyBFbWFjcyB1 c2UgLWxyc3ZnLTI/ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAke0hBVkVfUlNW R30KICBEb2VzIEVtYWNzIHVzZSAtbHdlYnA/ICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICR7SEFWRV9XRUJQfQogIERvZXMgRW1hY3MgdXNlIC1sc3FsaXRlMz8gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgJHtIQVZFX1NRTElURTN9CiAgRG9lcyBFbWFjcyB1 c2UgY2Fpcm8/ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAke0hBVkVfQ0FJ Uk99CiAgRG9lcyBFbWFjcyB1c2UgLWxsY21zMj8gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAke0hBVkVfTENNUzJ9CiAgRG9lcyBFbWFjcyB1c2UgaW1hZ2VtYWdpY2s/ICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAke0hBVkVfSU1BR0VNQUdJQ0t9CiAgRG9lcyBF bWFjcyB1c2UgbmF0aXZlIEFQSXMgZm9yIGltYWdlcz8gICAgICAgICAgICAgICAgICAke05B VElWRV9JTUFHRV9BUEl9CiAgRG9lcyBFbWFjcyBzdXBwb3J0IHNvdW5kPyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAke0hBVkVfU09VTkR9CiAgRG9lcyBFbWFjcyB1c2UgLWxn cG0/ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAke0hBVkVfR1BNfQogIERv ZXMgRW1hY3MgdXNlIC1sZGJ1cz8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg JHtIQVZFX0RCVVN9CiAgRG9lcyBFbWFjcyB1c2UgLWxnY29uZj8gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAke0hBVkVfR0NPTkZ9CiAgRG9lcyBFbWFjcyB1c2UgR1NldHRp bmdzPyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAke0hBVkVfR1NFVFRJTkdTfQog IERvZXMgRW1hY3MgdXNlIGEgZmlsZSBub3RpZmljYXRpb24gbGlicmFyeT8gICAgICAgICAg ICAgJHtOT1RJRllfU1VNTUFSWX0KICBEb2VzIEVtYWNzIHVzZSBhY2Nlc3MgY29udHJvbCBs aXN0cz8gICAgICAgICAgICAgICAgICAgICR7QUNMX1NVTU1BUll9CiAgRG9lcyBFbWFjcyB1 c2UgLWxzZWxpbnV4PyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAke0hBVkVfTElC U0VMSU5VWH0KICBEb2VzIEVtYWNzIHVzZSAtbGdudXRscz8gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICR7SEFWRV9HTlVUTFN9CiAgRG9lcyBFbWFjcyB1c2UgLWx4bWwyPyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAke0hBVkVfTElCWE1MMn0KICBEb2Vz IEVtYWNzIHVzZSAtbGZyZWV0eXBlPyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR7 SEFWRV9GUkVFVFlQRX0KICBEb2VzIEVtYWNzIHVzZSBIYXJmQnV6ej8gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICR7SEFWRV9IQVJGQlVaWn0KICBEb2VzIEVtYWNzIHVzZSAt bG0xN24tZmx0PyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR7SEFWRV9NMTdOX0ZM VH0KICBEb2VzIEVtYWNzIHVzZSAtbG90Zj8gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICR7SEFWRV9MSUJPVEZ9CiAgRG9lcyBFbWFjcyB1c2UgLWx4ZnQ/ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAke0hBVkVfWEZUfQogIERvZXMgRW1hY3MgdXNl IC1sc3lzdGVtZD8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHtIQVZFX0xJQlNZ U1RFTUR9CiAgRG9lcyBFbWFjcyB1c2UgLWxqYW5zc29uPyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAke0hBVkVfSlNPTn0KICBEb2VzIEVtYWNzIHVzZSAtbHRyZWUtc2l0dGVy PyAgICAgICAgICAgICAgICAgICAgICAgICAgICR7SEFWRV9UUkVFX1NJVFRFUn0KICBEb2Vz IEVtYWNzIHVzZSB0aGUgR01QIGxpYnJhcnk/ICAgICAgICAgICAgICAgICAgICAgICAgICR7 SEFWRV9HTVB9CiAgRG9lcyBFbWFjcyBkaXJlY3RseSB1c2UgemxpYj8gICAgICAgICAgICAg ICAgICAgICAgICAgICAke0hBVkVfWkxJQn0KICBEb2VzIEVtYWNzIGhhdmUgZHluYW1pYyBt b2R1bGVzIHN1cHBvcnQ/ICAgICAgICAgICAgICAgICR7SEFWRV9NT0RVTEVTfQogIERvZXMg RW1hY3MgdXNlIHRvb2xraXQgc2Nyb2xsIGJhcnM/ICAgICAgICAgICAgICAgICAgICAgJHtV U0VfVE9PTEtJVF9TQ1JPTExfQkFSU30KICBEb2VzIEVtYWNzIHN1cHBvcnQgWHdpZGdldHM/ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICR7SEFWRV9YV0lER0VUU30KICBEb2VzIEVt YWNzIGhhdmUgdGhyZWFkaW5nIHN1cHBvcnQgaW4gbGlzcD8gICAgICAgICAgICAgICR7dGhy ZWFkc19lbmFibGVkfQogIERvZXMgRW1hY3Mgc3VwcG9ydCB0aGUgcG9ydGFibGUgZHVtcGVy PyAgICAgICAgICAgICAgICAgJHt3aXRoX3BkdW1wZXJ9CiAgRG9lcyBFbWFjcyBzdXBwb3J0 IGxlZ2FjeSB1bmV4ZWMgZHVtcGluZz8gICAgICAgICAgICAgICAke3dpdGhfdW5leGVjfQog IFdoaWNoIGR1bXBpbmcgc3RyYXRlZ3kgZG9lcyBFbWFjcyB1c2U/ICAgICAgICAgICAgICAg ICAgJHt3aXRoX2R1bXBpbmd9CiAgRG9lcyBFbWFjcyBoYXZlIG5hdGl2ZSBsaXNwIGNvbXBp bGVyPyAgICAgICAgICAgICAgICAgICAke0hBVkVfTkFUSVZFX0NPTVB9CiAgRG9lcyBFbWFj cyB1c2UgdmVyc2lvbiAyIG9mIHRoZSBYIElucHV0IEV4dGVuc2lvbj8gICAgICAke0hBVkVf WElOUFVUMn0KICBEb2VzIEVtYWNzIGdlbmVyYXRlIGEgc21hbGxlci1zaXplIEphcGFuZXNl IGRpY3Rpb25hcnk/ICR7d2l0aF9zbWFsbF9qYV9kaWN9CiJdKQoKaWYgdGVzdCAtbiAiJHtF TUFDU0RBVEF9IjsgdGhlbgogICBBU19FQ0hPKFsiICBFbnZpcm9ubWVudCB2YXJpYWJsZSBF TUFDU0RBVEEgc2V0IHRvOiAgICAgICAgICAgICAgICAgICRFTUFDU0RBVEEiXSkKZmkKaWYg dGVzdCAtbiAiJHtFTUFDU0RPQ30iOyB0aGVuCiAgIEFTX0VDSE8oWyIgIEVudmlyb25tZW50 IHZhcmlhYmxlIEVNQUNTRE9DIHNldCB0bzogICAgICAgICAgICAgICAgICAgJEVNQUNTRE9D Il0pCmZpCgplY2hvCgppZiB0ZXN0ICIkSEFWRV9OUyIgPSAieWVzIjsgdGhlbgogICBlY2hv CiAgIEFTX0VDSE8oWyJSdW4gJyR7TUFLRS1tYWtlfScgdG8gYnVpbGQgRW1hY3MsIHRoZW4g cnVuICdzcmMvZW1hY3MnIHRvIHRlc3QgaXQuClJ1biAnJHtNQUtFLW1ha2V9IGluc3RhbGwn IGluIG9yZGVyIHRvIGJ1aWxkIGFuIGFwcGxpY2F0aW9uIGJ1bmRsZS4KVGhlIGFwcGxpY2F0 aW9uIHdpbGwgZ28gdG8gbmV4dHN0ZXAvRW1hY3MuYXBwIGFuZCBjYW4gYmUgcnVuIG9yIG1v dmVkCmZyb20gdGhlcmUuIl0pCiAgIGlmIHRlc3QgIiRFTl9OU19TRUxGX0NPTlRBSU5FRCIg PSAieWVzIjsgdGhlbgogICAgICBlY2hvICJUaGUgYXBwbGljYXRpb24gd2lsbCBiZSBmdWxs eSBzZWxmLWNvbnRhaW5lZC4iCiAgICBlbHNlCiAgICAgIEFTX0VDSE8oWyJUaGUgbGlzcCBy ZXNvdXJjZXMgZm9yIHRoZSBhcHBsaWNhdGlvbiB3aWxsIGJlIGluc3RhbGxlZCB1bmRlciAk e3ByZWZpeH0uCllvdSBtYXkgbmVlZCB0byBydW4gXCIke01BS0UtbWFrZX0gaW5zdGFsbFwi IHdpdGggc3Vkby4gIFRoZSBhcHBsaWNhdGlvbiB3aWxsIGZhaWwKdG8gcnVuIGlmIHRoZXNl IHJlc291cmNlcyBhcmUgbm90IGluc3RhbGxlZC4iXSkKICAgZmkKICAgZWNobwpmaQoKY2Fz ZSAkb3BzeXMsJGVtYWNzX3VuYW1lX3IgaW4KICBjeWd3aW4sMS41LiopCiAgICBBQ19NU0df V0FSTihbW2J1aWxkaW5nIEVtYWNzIG9uIEN5Z3dpbiAxLjUgaXMgbm90IHN1cHBvcnRlZC5d XSkKICAgICAgICAgICBlY2hvCgkgICA7OwogIGN5Z3dpbiwzLjAuW1swLTddXScoJyogfCBj eWd3aW4sMy4xLltbMC0yXV0nKCcqKQogICAgQUNfREVGSU5FKFtIQVZFX0NZR1dJTl9PX1BB VEhfQlVHXSwgWzFdLAogICAgICBbRGVmaW5lIHRvIDEgaWYgb3BlbmluZyBhIEZJRk8sIHNv Y2tldCwgb3Igc3ltbGluayB3aXRoIE9fUEFUSCBpcyBidWdneS5dKTs7CmVzYWMKCiMgUmVt b3ZlIGFueSB0cmFpbGluZyBzbGFzaGVzIGluIHRoZXNlIHZhcmlhYmxlcy4KY2FzZSAkcHJl Zml4IGluCiAgKi8pIHByZWZpeD1gQVNfRElSTkFNRShbIiRwcmVmaXguIl0pYDs7CmVzYWMK Y2FzZSAkZXhlY19wcmVmaXggaW4KICAqLykgZXhlY19wcmVmaXg9YEFTX0RJUk5BTUUoWyIk ZXhlY19wcmVmaXguIl0pYDs7CmVzYWMKCmlmIHRlc3QgIiRIQVZFX05TIiA9ICJ5ZXMiOyB0 aGVuCiAgaWYgdGVzdCAiJE5TX0lNUExfR05VU1RFUCIgPSB5ZXM7IHRoZW4KICAgIEFDX0NP TkZJR19GSUxFUyhbbmV4dHN0ZXAvR05Vc3RlcC9FbWFjcy5iYXNlL1Jlc291cmNlcy9JbmZv LWdudXN0ZXAucGxpc3Q6bmV4dHN0ZXAvdGVtcGxhdGVzL0luZm8tZ251c3RlcC5wbGlzdC5p biBcCiAgICAgIG5leHRzdGVwL0dOVXN0ZXAvRW1hY3MuYmFzZS9SZXNvdXJjZXMvRW1hY3Mu ZGVza3RvcDpuZXh0c3RlcC90ZW1wbGF0ZXMvRW1hY3MuZGVza3RvcC5pbl0pCiAgICBuc19j aGVja19maWxlPVJlc291cmNlcy9JbmZvLWdudXN0ZXAucGxpc3QKICBlbHNlCiAgICBBQ19D T05GSUdfRklMRVMoW25leHRzdGVwL0NvY29hL0VtYWNzLmJhc2UvQ29udGVudHMvSW5mby5w bGlzdDpuZXh0c3RlcC90ZW1wbGF0ZXMvSW5mby5wbGlzdC5pbiBcCiAgICAgIG5leHRzdGVw L0NvY29hL0VtYWNzLmJhc2UvQ29udGVudHMvUmVzb3VyY2VzL0VuZ2xpc2gubHByb2ovSW5m b1BsaXN0LnN0cmluZ3M6bmV4dHN0ZXAvdGVtcGxhdGVzL0luZm9QbGlzdC5zdHJpbmdzLmlu XSkKICAgIG5zX2NoZWNrX2ZpbGU9Q29udGVudHMvSW5mby5wbGlzdAogIGZpCiAgQUNfU1VC U1QoW25zX2NoZWNrX2ZpbGVdKQpmaQoKQUNfQ09ORklHX0ZJTEVTKFtNYWtlZmlsZSBsaWIv Z251bGliLm1rXSkKCmRubCBjb25maWcuc3RhdHVzIHRyZWF0cyAkc3JjZGlyIHNwZWNpYWxs eSwgc28gSSB0aGluayB0aGlzIGlzIG9rLi4uCkFDX0NPTkZJR19GSUxFUyhbJHNyY2Rpci9k b2MvbWFuL2VtYWNzLjFdKQoKbTRfZGVmaW5lKFtzdWJkaXJfbWFrZWZpbGVzXSwKICBbbGli L01ha2VmaWxlIGxpYi1zcmMvTWFrZWZpbGUgb2xkWE1lbnUvTWFrZWZpbGUgZG9jL2VtYWNz L01ha2VmaWxlIGRvYy9taXNjL01ha2VmaWxlIGRvYy9saXNwaW50cm8vTWFrZWZpbGUgZG9j L2xpc3ByZWYvTWFrZWZpbGUgc3JjL01ha2VmaWxlIGx3bGliL01ha2VmaWxlIGxpc3AvTWFr ZWZpbGUgbGVpbS9NYWtlZmlsZSBuZXh0c3RlcC9NYWtlZmlsZSBudC9NYWtlZmlsZV0pClNV QkRJUl9NQUtFRklMRVM9InN1YmRpcl9tYWtlZmlsZXMiCkFDX0NPTkZJR19GSUxFUyhzdWJk aXJfbWFrZWZpbGVzKQoKZG5sIFRoZSB0ZXN0LyBkaXJlY3RvcnkgaXMgbWlzc2luZyBpZiAn Li9tYWtlLWRpc3QgLS1uby10ZXN0cycgd2FzIHVzZWQuCm9wdF9tYWtlZmlsZT10ZXN0L01h a2VmaWxlCmlmIHRlc3QgLWYgIiRzcmNkaXIvJG9wdF9tYWtlZmlsZS5pbiI7IHRoZW4KICBT VUJESVJfTUFLRUZJTEVTPSIkU1VCRElSX01BS0VGSUxFUyAkb3B0X21ha2VmaWxlIgogIGRu bCBBZ2FpbiwgaXQncyBiZXN0IG5vdCB0byB1c2UgYSB2YXJpYWJsZS4gIFRob3VnaCB5b3Ug Y2FuIGFkZAogIGRubCAiLCBbXSwgW29wdF9tYWtlZmlsZT0nJG9wdF9tYWtlZmlsZSddIiBh bmQgaXQgc2hvdWxkIHdvcmsuCiAgQUNfQ09ORklHX0ZJTEVTKFt0ZXN0L01ha2VmaWxlXSkK ICBBQ19DT05GSUdfRklMRVMoW3Rlc3QvbWFudWFsL25vdmVybGF5L01ha2VmaWxlXSkKZmkK b3B0X21ha2VmaWxlPXRlc3QvaW5mcmEvTWFrZWZpbGUKaWYgdGVzdCAtZiAiJHNyY2Rpci8k b3B0X21ha2VmaWxlLmluIjsgdGhlbgogIFNVQkRJUl9NQUtFRklMRVM9IiRTVUJESVJfTUFL RUZJTEVTICRvcHRfbWFrZWZpbGUiCiAgZG5sIEFnYWluLCBpdCdzIGJlc3Qgbm90IHRvIHVz ZSBhIHZhcmlhYmxlLiAgVGhvdWdoIHlvdSBjYW4gYWRkCiAgZG5sICIsIFtdLCBbb3B0X21h a2VmaWxlPSckb3B0X21ha2VmaWxlJ10iIGFuZCBpdCBzaG91bGQgd29yay4KICBBQ19DT05G SUdfRklMRVMoW3Rlc3QvaW5mcmEvTWFrZWZpbGVdKQpmaQoKCmRubCBUaGUgYWRtaW4vIGRp cmVjdG9yeSB1c2VkIHRvIGJlIGV4Y2x1ZGVkIGZyb20gdGFyZmlsZXMuCmlmIHRlc3QgLWQg JHNyY2Rpci9hZG1pbjsgdGhlbgogIFNVQkRJUl9NQUtFRklMRVM9IiRTVUJESVJfTUFLRUZJ TEVTIGFkbWluL2NoYXJzZXRzL01ha2VmaWxlIGFkbWluL3VuaWRhdGEvTWFrZWZpbGUgYWRt aW4vZ3JhbW1hcnMvTWFrZWZpbGUiCiAgQUNfQ09ORklHX0ZJTEVTKFthZG1pbi9jaGFyc2V0 cy9NYWtlZmlsZV0pCiAgQUNfQ09ORklHX0ZJTEVTKFthZG1pbi91bmlkYXRhL01ha2VmaWxl XSkKICBBQ19DT05GSUdfRklMRVMoW2FkbWluL2dyYW1tYXJzL01ha2VmaWxlXSkKZmkgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBkbmwgLWQgYWRtaW4KCgpTVUJESVJfTUFLRUZJ TEVTX0lOPWBlY2hvICIgJHtTVUJESVJfTUFLRUZJTEVTfSIgfCBzZWQgLWUgJ3N8IHwgJChz cmNkaXIpL3xnJyAtZSAnc3xNYWtlZmlsZXxNYWtlZmlsZS5pbnxnJ2AKCkFDX1NVQlNUKFtT VUJESVJfTUFLRUZJTEVTX0lOXSkKClNNQUxMX0pBX0RJQz0kd2l0aF9zbWFsbF9qYV9kaWMK QUNfU1VCU1QoW1NNQUxMX0pBX0RJQ10pCgpkbmwgWW91IG1pZ2h0IHdvbmRlciAoSSBkaWQp IHdoeSBlcGF0aHMuaCBpcyBnZW5lcmF0ZWQgYnkgcnVubmluZyBtYWtlLApkbmwgcmF0aGVy IHRoYW4ganVzdCBsZXR0aW5nIGNvbmZpZ3VyZSBnZW5lcmF0ZSBpdCBmcm9tIGVwYXRocy5p bi4KZG5sIE9uZSByZWFzb24gaXMgdGhhdCB0aGUgdmFyaW91cyBwYXRocyBhcmUgbm90IGZ1 bGx5IGV4cGFuZGVkIChzZWUgYWJvdmUpOwpkbmwgZS5nLiwgZ2FtZWRpcj0nJHtsb2NhbHN0 YXRlZGlyfS9nYW1lcy9lbWFjcycuCmRubCBTZWNvbmRseSwgdGhlIEdOVSBDb2Rpbmcgc3Rh bmRhcmRzIHJlcXVpcmUgdGhhdCBvbmUgc2hvdWxkIGJlIGFibGUKZG5sIHRvIHJ1biAnbWFr ZSBwcmVmaXg9L3NvbWUvd2hlcmUvZWxzZScgYW5kIG92ZXJyaWRlIHRoZSB2YWx1ZXMgc2V0 CmRubCBieSBjb25maWd1cmUuICBUaGlzIGFsc28gZXhwbGFpbnMgdGhlICdtb3ZlLWlmLWNo YW5nZScgdGVzdCBhbmQKZG5sIHRoZSB1c2Ugb2YgZm9yY2UgaW4gdGhlICdlcGF0aHMtZm9y Y2UnIHJ1bGUgaW4gTWFrZWZpbGUuaW4uCkFDX0NPTkZJR19DT01NQU5EUyhbc3JjL2VwYXRo cy5oXSwgWwppZiB0ZXN0ICIke29wc3lzfSIgPSAibWluZ3czMiI7IHRoZW4KICAke01BS0Ut bWFrZX0gTUFLRUZJTEVfTkFNRT1kby1ub3QtbWFrZS1NYWtlZmlsZSBlcGF0aHMtZm9yY2Ut dzMyCmVsaWYgdGVzdCAiJEhBVkVfTlMiID0gInllcyIgJiYgdGVzdCAiJEVOX05TX1NFTEZf Q09OVEFJTkVEIiA9ICJ5ZXMiOyB0aGVuCiAgJHtNQUtFLW1ha2V9IE1BS0VGSUxFX05BTUU9 ZG8tbm90LW1ha2UtTWFrZWZpbGUgZXBhdGhzLWZvcmNlLW5zLXNlbGYtY29udGFpbmVkCmVs c2UKICAke01BS0UtbWFrZX0gTUFLRUZJTEVfTkFNRT1kby1ub3QtbWFrZS1NYWtlZmlsZSBl cGF0aHMtZm9yY2UKZmkgfHwgQUNfTVNHX0VSUk9SKFsnc3JjL2VwYXRocy5oJyBjb3VsZCBu b3QgYmUgbWFkZS5dKQpdLCBbR0NDPSIkR0NDIiBDUFBGTEFHUz0iJENQUEZMQUdTIiBvcHN5 cz0iJG9wc3lzIiBIQVZFX05TPSIkSEFWRV9OUyIKICAgIEVOX05TX1NFTEZfQ09OVEFJTkVE PSIkRU5fTlNfU0VMRl9DT05UQUlORUQiXSkKCmRubCBOQiB3ZSBoYXZlIHRvIGNoZWF0IGFu ZCB1c2UgdGhlIGFjXy4uLiB2ZXJzaW9uIGJlY2F1c2UgYWJzX3RvcF9zcmNkaXIKZG5sIGlz IG5vdCB5ZXQgc2V0LCBzaWdoLiAgT3Igd2UgY291bGQgdXNlIC4uLyRzcmNkaXIvc3JjLy5n ZGJpbml0LApkbmwgb3IgYSBzeW1saW5rPwpBQ19DT05GSUdfQ09NTUFORFMoW3NyYy8uZ2Ri aW5pdF0sIFsKaWYgdGVzdCAhIC1mIHNyYy8uZ2RiaW5pdCAmJiB0ZXN0IC1mICIkc3JjZGly L3NyYy8uZ2RiaW5pdCI7IHRoZW4KICBBU19FQ0hPKFsic291cmNlICRhY19hYnNfdG9wX3Ny Y2Rpci9zcmMvLmdkYmluaXQiXSkgPiBzcmMvLmdkYmluaXQKZmkKXSkKCmRubCBQZXJoYXBz IHRoaXMgd291bGQgYmUgYmV0dGVyIG5hbWVkIGRvYy1lbWFjcy1lbWFjc3Zlci50ZXhpPwpk bmwgU2VlIGNvbW1lbnRzIGZvciBldGMtcmVmY2FyZHMtZW1hY3N2ZXIudGV4LgpkbmwgU2lu Y2Ugd2UgZ2V0IGEgZG9jL2VtYWNzIGRpcmVjdG9yeSBnZW5lcmF0ZWQgYW55d2F5LCBmb3Ig dGhlIE1ha2VmaWxlLApkbmwgaXQgaXMgbm90IHF1aXRlIHRoZSBzYW1lLiAgQnV0IHdlIGFy ZSBnZW5lcmF0aW5nIGluICRzcmNkaXIuCkFDX0NPTkZJR19DT01NQU5EUyhbZG9jL2VtYWNz L2VtYWNzdmVyLnRleGldLCBbCiR7TUFLRS1tYWtlfSAtcyAtLW5vLXByaW50LWRpcmVjdG9y eSAtQyBkb2MvZW1hY3MgZG9jLWVtYWNzdmVyIHx8IFwKQUNfTVNHX0VSUk9SKFsnZG9jL2Vt YWNzL2VtYWNzdmVyLnRleGknIGNvdWxkIG5vdCBiZSBtYWRlLl0pCl0pCgpkbmwgSWYgd2Ug Z2l2ZSB0aGlzIHRoZSBtb3JlIG5hdHVyYWwgbmFtZSwgZXRjL3JlZmNhcmRzL2VtYWNzdmVy LnRleGksCmRubCB0aGVuIGEgZGlyZWN0b3J5IGV0Yy9yZWZjYXJkcyBpcyBjcmVhdGVkIGlu IHRoZSBidWlsZCBkaXJlY3RvcnksCmRubCB3aGljaCBpcyBwcm9iYWJseSBoYXJtbGVzcywg YnV0IGNvbmZ1c2luZyAoaW4gb3V0LW9mLXRyZWUgYnVpbGRzKS4KZG5sIChJZiB3ZSB3ZXJl IHRvIGdlbmVyYXRlIGV0Yy9yZWZjYXJkcy9NYWtlZmlsZSwgdGhpcyBtaWdodCBjaGFuZ2Uu KQpkbmwgSXQgaXMgcmVhbGx5ICRzcmNkaXIvZXRjL3JlZmNhcmRzL2VtYWNzdmVyLnRleCB0 aGF0IHdlIGdlbmVyYXRlLgpBQ19DT05GSUdfQ09NTUFORFMoW2V0Yy1yZWZjYXJkcy1lbWFj c3Zlci50ZXhdLCBbCiR7TUFLRS1tYWtlfSAtcyBNQUtFRklMRV9OQU1FPWRvLW5vdC1tYWtl LU1ha2VmaWxlIGV0Yy1lbWFjc3ZlciB8fCBcCkFDX01TR19FUlJPUihbJ2V0Yy9yZWZjYXJk cy9lbWFjc3Zlci50ZXgnIGNvdWxkIG5vdCBiZSBtYWRlLl0pCl0pCgppZiB0ZXN0ICRBVVRP X0RFUEVORCA9IHllczsgdGhlbgogICBmb3IgZGlyIGluICRBVVRPREVQRU5EX1BBUkVOVFM7 IGRvCiAgICAgQVNfTUtESVJfUChbJGRpci9kZXBzXSkKICAgZG9uZQpmaQppZiAkZ2xfZ251 bGliX2VuYWJsZWRfZHluYXJyYXkgfHwgJGdsX2dudWxpYl9lbmFibGVkX3NjcmF0Y2hfYnVm ZmVyOyB0aGVuCiAgQVNfTUtESVJfUChbbGliL21hbGxvY10pCiAgaWYgdGVzdCAkQVVUT19E RVBFTkQgPSB5ZXM7IHRoZW4KICAgIEFTX01LRElSX1AoW2xpYi9kZXBzL21hbGxvY10pCiAg ZmkKZmkKCkFDX09VVFBVVAoKaWYgdGVzdCAhICIkd2l0aF9tYWlsdXRpbHMiOyB0aGVuCiAg aWYgdGVzdCAiJHdpdGhfcG9wIiA9IHllczsgdGhlbgogICAgQUNfTVNHX1dBUk4oW1RoaXMg Y29uZmlndXJhdGlvbiBpbnN0YWxscyBhICdtb3ZlbWFpbCcgcHJvZ3JhbQp0aGF0IHJldHJp ZXZlcyBQT1AzIGVtYWlsIHZpYSBvbmx5IGluc2VjdXJlIGNoYW5uZWxzLgpUbyBvbWl0IGlu c2VjdXJlIFBPUDMsIHlvdSBjYW4gdXNlICckMCAtLXdpdGhvdXQtcG9wJy5dKQogIGVsaWYg dGVzdCAiJHdpdGhfcG9wIiA9IG5vLWJ5LWRlZmF1bHQ7IHRoZW4KICAgIEFDX01TR19XQVJO KFtUaGlzIGNvbmZpZ3VyYXRpb24gaW5zdGFsbHMgYSAnbW92ZW1haWwnIHByb2dyYW0KdGhh dCBkb2VzIG5vdCByZXRyaWV2ZSBQT1AzIGVtYWlsLiAgQnkgZGVmYXVsdCwgRW1hY3MgMjUg YW5kIGVhcmxpZXIKaW5zdGFsbGVkIGEgJ21vdmVtYWlsJyBwcm9ncmFtIHRoYXQgcmV0cmll dmVkIFBPUDMgZW1haWwgdmlhIG9ubHkKaW5zZWN1cmUgY2hhbm5lbHMsIGEgcHJhY3RpY2Ug dGhhdCBpcyBubyBsb25nZXIgcmVjb21tZW5kZWQgYnV0IHRoYXQKeW91IGNhbiBjb250aW51 ZSB0byBzdXBwb3J0IGJ5IHVzaW5nICckMCAtLXdpdGgtcG9wJy5dKQogIGZpCgogIGNhc2Ug JG9wc3lzIGluCiAgICBtaW5ndzMyKQogICAgICAjIERvbid0IHN1Z2dlc3QgR05VIE1haWx1 dGlscywgYXMgaXQgaGFzbid0IGJlZW4gcG9ydGVkLgogICAgICA7OwogICAgKikKICAgICAg ZW1hY3NfZml4X21vdmVtYWlsPSJ1c2UgJyQwIC0td2l0aC1tYWlsdXRpbHMnIgogICAgICBj YXNlIGAobW92ZW1haWwgLS12ZXJzaW9uKSAyPi9kZXYvbnVsbGAgaW4KCSpNYWlsdXRpbHMq KSA7OwoJKikgZW1hY3NfZml4X21vdmVtYWlsPSJpbnN0YWxsIEdOVSBNYWlsdXRpbHMKPGh0 dHBzOi8vbWFpbHV0aWxzLm9yZz4gYW5kICRlbWFjc19maXhfbW92ZW1haWwiOzsKICAgICAg ZXNhYwogICAgICBBQ19NU0dfTk9USUNFKFtZb3UgbWlnaHQgd2FudCB0byAkZW1hY3NfZml4 X21vdmVtYWlsLl0pOzsKICBlc2FjCmZpCgppZiB0ZXN0ICIke0hBVkVfWEZUfSIgPSB5ZXM7 IHRoZW4KICBBQ19NU0dfV0FSTihbVGhpcyBjb25maWd1cmF0aW9uIHVzZXMgbGliWGZ0LCB3 aGljaCBoYXMgYSBudW1iZXIgb2YKICAgIGZvbnQgcmVuZGVyaW5nIGlzc3VlcywgYW5kIGlz IGJlaW5nIGNvbnNpZGVyZWQgZm9yIHJlbW92YWwgaW4gdGhlCiAgICBuZXh0IHJlbGVhc2Ug b2YgRW1hY3MuICBQbGVhc2UgY29uc2lkZXIgdXNpbmcgQ2Fpcm8gZ3JhcGhpY3MgKwogICAg SGFyZkJ1enogdGV4dCBzaGFwaW5nIGluc3RlYWQgKHRoZXkgYXJlIGF1dG8tZGV0ZWN0ZWQg aWYgdGhlCiAgICByZWxldmFudCBkZXZlbG9wbWVudCBoZWFkZXJzIGFyZSBpbnN0YWxsZWQp Ll0pCmZpCgppZiB0ZXN0ICIke0hBVkVfQ0FJUk99IiA9ICJ5ZXMiICYmIHRlc3QgIiR7SEFW RV9IQVJGQlVaWn0iID0gbm87IHRoZW4KICBBQ19NU0dfV0FSTihbVGhpcyBjb25maWd1cmF0 aW9uIHVzZXMgdGhlIENhaXJvIGdyYXBoaWNzIGxpYnJhcnksCiAgICBidXQgbm90IHRoZSBI YXJmQnV6eiBmb250IHNoYXBpbmcgbGlicmFyeSAobWluaW11bSB2ZXJzaW9uICRoYXJmYnV6 el9yZXF1aXJlZF92ZXIpLgogICAgV2UgcmVjb21tZW5kIHRoZSB1c2Ugb2YgSGFyZkJ1enog d2hlbiB1c2luZyBDYWlybywgcGxlYXNlIGluc3RhbGwKICAgIGFwcHJvcHJpYXRlIEhhcmZC dXp6IGRldmVsb3BtZW50IHBhY2thZ2VzLl0pCmZpCgojIExldCBwbGFpbiAnbWFrZScgd29y ay4KdGVzdCAiJE1BS0UiID0gbWFrZSB8fCB0ZXN0IC1mIG1ha2VmaWxlIHx8IGNhdCA+bWFr ZWZpbGUgPDxFT0YKLlBPU0lYOgpNQUtFID0gJE1BS0UKYWxsOgoJXCQoTUFLRSkgLWYgTWFr ZWZpbGUgXCQ/Ci5ERUZBVUxUOgoJXCQoTUFLRSkgLWYgTWFrZWZpbGUgXCQ8CkVPRgo= --------------NrcUj0Jc4O8s9q8nlKDLSkFI Content-Type: text/x-log; charset=UTF-8; name="config.log" Content-Disposition: attachment; filename="config.log" Content-Transfer-Encoding: base64 VGhpcyBmaWxlIGNvbnRhaW5zIGFueSBtZXNzYWdlcyBwcm9kdWNlZCBieSBjb21waWxlcnMg d2hpbGUKcnVubmluZyBjb25maWd1cmUsIHRvIGFpZCBkZWJ1Z2dpbmcgaWYgY29uZmlndXJl IG1ha2VzIGEgbWlzdGFrZS4KCkl0IHdhcyBjcmVhdGVkIGJ5IEdOVSBFbWFjcyBjb25maWd1 cmUgMzAuMC41MCwgd2hpY2ggd2FzCmdlbmVyYXRlZCBieSBHTlUgQXV0b2NvbmYgMi43MS4g IEludm9jYXRpb24gY29tbWFuZCBsaW5lIHdhcwoKICAkIC4vY29uZmlndXJlIC0tbm8tY3Jl YXRlIC0tbm8tcmVjdXJzaW9uCgojIyAtLS0tLS0tLS0gIyMKIyMgUGxhdGZvcm0uICMjCiMj IC0tLS0tLS0tLSAjIwoKaG9zdG5hbWUgPSBOYW5vS0RFCnVuYW1lIC1tID0geDg2XzY0CnVu YW1lIC1yID0gNS4xOS4wLTEwMTgtbG93bGF0ZW5jeQp1bmFtZSAtcyA9IExpbnV4CnVuYW1l IC12ID0gIzE5LVVidW50dSBTTVAgUFJFRU1QVF9EWU5BTUlDIFR1ZSBGZWIgNyAxODowMzo1 MiBVVEMgMjAyMwoKL3Vzci9iaW4vdW5hbWUgLXAgPSB4ODZfNjQKL2Jpbi91bmFtZSAtWCAg ICAgPSB1bmtub3duCgovYmluL2FyY2ggICAgICAgICAgICAgID0geDg2XzY0Ci91c3IvYmlu L2FyY2ggLWsgICAgICAgPSB1bmtub3duCi91c3IvY29udmV4L2dldHN5c2luZm8gPSB1bmtu b3duCi91c3IvYmluL2hvc3RpbmZvICAgICAgPSB1bmtub3duCi9iaW4vbWFjaGluZSAgICAg ICAgICAgPSB1bmtub3duCi91c3IvYmluL29zbGV2ZWwgICAgICAgPSB1bmtub3duCi9iaW4v dW5pdmVyc2UgICAgICAgICAgPSB1bmtub3duCgpQQVRIOiAvcm9vdC8uY2FyZ28vYmluLwpQ QVRIOiAvaG9tZS9kYWNvcnNhL2Jpbi9kb3RuZXQvClBBVEg6IC9ob21lL2RhY29yc2EvYmlu LwpQQVRIOiAvdXNyL2xvY2FsL3NiaW4vClBBVEg6IC91c3IvbG9jYWwvYmluLwpQQVRIOiAv dXNyL3NiaW4vClBBVEg6IC91c3IvYmluLwpQQVRIOiAvc2Jpbi8KUEFUSDogL2Jpbi8KUEFU SDogL3Vzci9nYW1lcy8KUEFUSDogL3Vzci9sb2NhbC9nYW1lcy8KUEFUSDogL3NuYXAvYmlu LwpQQVRIOiAvcm9vdC8uZ2VtL3J1YnkvMi43LjAvYmluLwpQQVRIOiAvaG9tZS9kYWNvcnNh Ly5sb2NhbC9iaW4vClBBVEg6IC9yb290Ly5sb2NhbC9iaW4vClBBVEg6IC9ob21lL2RhY29y c2EvLmNhcmdvL2Jpbi8KUEFUSDogL3Jvb3QvLmRvdG5ldC90b29scy8KUEFUSDogL3Vzci9s aWIvanZtL2phdmEtMTEtb3Blbmpkay1hbWQ2NC9iaW4vClBBVEg6IC91c3IvbGliL2p2bS9q YXZhLTExLW9wZW5qZGstYW1kNjQvZGIvYmluLwoKCiMjIC0tLS0tLS0tLS0tICMjCiMjIENv cmUgdGVzdHMuICMjCiMjIC0tLS0tLS0tLS0tICMjCgpjb25maWd1cmU6NDcwMzogbG9va2lu ZyBmb3IgYXV4IGZpbGVzOiBpbnN0YWxsLXNoIGNvbmZpZy5ndWVzcyBjb25maWcuc3ViCmNv bmZpZ3VyZTo0NzE2OiAgdHJ5aW5nIC4vYnVpbGQtYXV4Lwpjb25maWd1cmU6NDcyNzogICAu L2J1aWxkLWF1eC9pbnN0YWxsLXNoIGZvdW5kCmNvbmZpZ3VyZTo0NzQ1OiAgIC4vYnVpbGQt YXV4L2NvbmZpZy5ndWVzcyBmb3VuZApjb25maWd1cmU6NDc0NTogICAuL2J1aWxkLWF1eC9j b25maWcuc3ViIGZvdW5kCmNvbmZpZ3VyZTo0OTAxOiBjaGVja2luZyBmb3IgeGNydW4KY29u ZmlndXJlOjQ5MzY6IHJlc3VsdDogbm8KY29uZmlndXJlOjUwMDU6IGNoZWNraW5nIGZvciBH TlUgTWFrZQpjb25maWd1cmU6NTA2MTogcmVzdWx0OiBtYWtlCmNvbmZpZ3VyZTo1MDc4OiBj aGVja2luZyBidWlsZCBzeXN0ZW0gdHlwZQpjb25maWd1cmU6NTA5MzogcmVzdWx0OiB4ODZf NjQtcGMtbGludXgtZ251CmNvbmZpZ3VyZTo1MTEzOiBjaGVja2luZyBob3N0IHN5c3RlbSB0 eXBlCmNvbmZpZ3VyZTo1MTI3OiByZXN1bHQ6IHg4Nl82NC1wYy1saW51eC1nbnUKY29uZmln dXJlOjYzMjQ6IGNoZWNraW5nIGZvciBnY2MKY29uZmlndXJlOjYzNDU6IGZvdW5kIC91c3Iv YmluL2djYwpjb25maWd1cmU6NjM1NjogcmVzdWx0OiBnY2MKY29uZmlndXJlOjYzODc6IGNo ZWNraW5nIGZvciBDIGNvbXBpbGVyIHZlcnNpb24KY29uZmlndXJlOjYzOTY6IGdjYyAtLXZl cnNpb24gPiY1CmdjYyAoVWJ1bnR1IDEyLjIuMC0zdWJ1bnR1MSkgMTIuMi4wCkNvcHlyaWdo dCAoQykgMjAyMiBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KVGhpcyBpcyBmcmVl IHNvZnR3YXJlOyBzZWUgdGhlIHNvdXJjZSBmb3IgY29weWluZyBjb25kaXRpb25zLiAgVGhl cmUgaXMgTk8Kd2FycmFudHk7IG5vdCBldmVuIGZvciBNRVJDSEFOVEFCSUxJVFkgb3IgRklU TkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuCgpjb25maWd1cmU6NjQwNzogJD8gPSAw CmNvbmZpZ3VyZTo2Mzk2OiBnY2MgLXYgPiY1ClVzaW5nIGJ1aWx0LWluIHNwZWNzLgpDT0xM RUNUX0dDQz1nY2MKQ09MTEVDVF9MVE9fV1JBUFBFUj0vdXNyL2xpYi9nY2MveDg2XzY0LWxp bnV4LWdudS8xMi9sdG8td3JhcHBlcgpPRkZMT0FEX1RBUkdFVF9OQU1FUz1udnB0eC1ub25l OmFtZGdjbi1hbWRoc2EKT0ZGTE9BRF9UQVJHRVRfREVGQVVMVD0xClRhcmdldDogeDg2XzY0 LWxpbnV4LWdudQpDb25maWd1cmVkIHdpdGg6IC4uL3NyYy9jb25maWd1cmUgLXYgLS13aXRo LXBrZ3ZlcnNpb249J1VidW50dSAxMi4yLjAtM3VidW50dTEnIC0td2l0aC1idWd1cmw9Zmls ZTovLy91c3Ivc2hhcmUvZG9jL2djYy0xMi9SRUFETUUuQnVncyAtLWVuYWJsZS1sYW5ndWFn ZXM9YyxhZGEsYysrLGdvLGQsZm9ydHJhbixvYmpjLG9iai1jKyssbTIgLS1wcmVmaXg9L3Vz ciAtLXdpdGgtZ2NjLW1ham9yLXZlcnNpb24tb25seSAtLXByb2dyYW0tc3VmZml4PS0xMiAt LXByb2dyYW0tcHJlZml4PXg4Nl82NC1saW51eC1nbnUtIC0tZW5hYmxlLXNoYXJlZCAtLWVu YWJsZS1saW5rZXItYnVpbGQtaWQgLS1saWJleGVjZGlyPS91c3IvbGliIC0td2l0aG91dC1p bmNsdWRlZC1nZXR0ZXh0IC0tZW5hYmxlLXRocmVhZHM9cG9zaXggLS1saWJkaXI9L3Vzci9s aWIgLS1lbmFibGUtbmxzIC0tZW5hYmxlLWNsb2NhbGU9Z251IC0tZW5hYmxlLWxpYnN0ZGN4 eC1kZWJ1ZyAtLWVuYWJsZS1saWJzdGRjeHgtdGltZT15ZXMgLS13aXRoLWRlZmF1bHQtbGli c3RkY3h4LWFiaT1uZXcgLS1lbmFibGUtZ251LXVuaXF1ZS1vYmplY3QgLS1kaXNhYmxlLXZ0 YWJsZS12ZXJpZnkgLS1lbmFibGUtcGx1Z2luIC0tZW5hYmxlLWRlZmF1bHQtcGllIC0td2l0 aC1zeXN0ZW0temxpYiAtLWVuYWJsZS1saWJwaG9ib3MtY2hlY2tpbmc9cmVsZWFzZSAtLXdp dGgtdGFyZ2V0LXN5c3RlbS16bGliPWF1dG8gLS1lbmFibGUtb2JqYy1nYz1hdXRvIC0tZW5h YmxlLW11bHRpYXJjaCAtLWRpc2FibGUtd2Vycm9yIC0tZW5hYmxlLWNldCAtLXdpdGgtYXJj aC0zMj1pNjg2IC0td2l0aC1hYmk9bTY0IC0td2l0aC1tdWx0aWxpYi1saXN0PW0zMixtNjQs bXgzMiAtLWVuYWJsZS1tdWx0aWxpYiAtLXdpdGgtdHVuZT1nZW5lcmljIC0tZW5hYmxlLW9m ZmxvYWQtdGFyZ2V0cz1udnB0eC1ub25lPS9idWlsZC9nY2MtMTItVThLNFF2L2djYy0xMi0x Mi4yLjAvZGViaWFuL3RtcC1udnB0eC91c3IsYW1kZ2NuLWFtZGhzYT0vYnVpbGQvZ2NjLTEy LVU4SzRRdi9nY2MtMTItMTIuMi4wL2RlYmlhbi90bXAtZ2NuL3VzciAtLWVuYWJsZS1vZmZs b2FkLWRlZmF1bHRlZCAtLXdpdGhvdXQtY3VkYS1kcml2ZXIgLS1lbmFibGUtY2hlY2tpbmc9 cmVsZWFzZSAtLWJ1aWxkPXg4Nl82NC1saW51eC1nbnUgLS1ob3N0PXg4Nl82NC1saW51eC1n bnUgLS10YXJnZXQ9eDg2XzY0LWxpbnV4LWdudQpUaHJlYWQgbW9kZWw6IHBvc2l4ClN1cHBv cnRlZCBMVE8gY29tcHJlc3Npb24gYWxnb3JpdGhtczogemxpYiB6c3RkCmdjYyB2ZXJzaW9u IDEyLjIuMCAoVWJ1bnR1IDEyLjIuMC0zdWJ1bnR1MSkgCi4uLiByZXN0IG9mIHN0ZGVyciBv dXRwdXQgZGVsZXRlZCAuLi4KY29uZmlndXJlOjY0MDc6ICQ/ID0gMApjb25maWd1cmU6NjM5 NjogZ2NjIC1WID4mNQpnY2M6IGVycm9yOiB1bnJlY29nbml6ZWQgY29tbWFuZC1saW5lIG9w dGlvbiAnLVYnCmdjYzogZmF0YWwgZXJyb3I6IG5vIGlucHV0IGZpbGVzCmNvbXBpbGF0aW9u IHRlcm1pbmF0ZWQuCmNvbmZpZ3VyZTo2NDA3OiAkPyA9IDEKY29uZmlndXJlOjYzOTY6IGdj YyAtcXZlcnNpb24gPiY1CmdjYzogZXJyb3I6IHVucmVjb2duaXplZCBjb21tYW5kLWxpbmUg b3B0aW9uICctcXZlcnNpb24nOyBkaWQgeW91IG1lYW4gJy0tdmVyc2lvbic/CmdjYzogZmF0 YWwgZXJyb3I6IG5vIGlucHV0IGZpbGVzCmNvbXBpbGF0aW9uIHRlcm1pbmF0ZWQuCmNvbmZp Z3VyZTo2NDA3OiAkPyA9IDEKY29uZmlndXJlOjYzOTY6IGdjYyAtdmVyc2lvbiA+JjUKZ2Nj OiBlcnJvcjogdW5yZWNvZ25pemVkIGNvbW1hbmQtbGluZSBvcHRpb24gJy12ZXJzaW9uJwpn Y2M6IGZhdGFsIGVycm9yOiBubyBpbnB1dCBmaWxlcwpjb21waWxhdGlvbiB0ZXJtaW5hdGVk Lgpjb25maWd1cmU6NjQwNzogJD8gPSAxCmNvbmZpZ3VyZTo2NDI3OiBjaGVja2luZyB3aGV0 aGVyIHRoZSBDIGNvbXBpbGVyIHdvcmtzCmNvbmZpZ3VyZTo2NDQ5OiBnY2MgICAgY29uZnRl c3QuYyAgPiY1CmNvbmZpZ3VyZTo2NDUzOiAkPyA9IDAKY29uZmlndXJlOjY1MDM6IHJlc3Vs dDogeWVzCmNvbmZpZ3VyZTo2NTA2OiBjaGVja2luZyBmb3IgQyBjb21waWxlciBkZWZhdWx0 IG91dHB1dCBmaWxlIG5hbWUKY29uZmlndXJlOjY1MDg6IHJlc3VsdDogYS5vdXQKY29uZmln dXJlOjY1MTQ6IGNoZWNraW5nIGZvciBzdWZmaXggb2YgZXhlY3V0YWJsZXMKY29uZmlndXJl OjY1MjE6IGdjYyAtbyBjb25mdGVzdCAgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjY1 MjU6ICQ/ID0gMApjb25maWd1cmU6NjU0ODogcmVzdWx0OiAKY29uZmlndXJlOjY1NzA6IGNo ZWNraW5nIHdoZXRoZXIgd2UgYXJlIGNyb3NzIGNvbXBpbGluZwpjb25maWd1cmU6NjU3ODog Z2NjIC1vIGNvbmZ0ZXN0ICAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6NjU4MjogJD8g PSAwCmNvbmZpZ3VyZTo2NTg5OiAuL2NvbmZ0ZXN0CmNvbmZpZ3VyZTo2NTkzOiAkPyA9IDAK Y29uZmlndXJlOjY2MDg6IHJlc3VsdDogbm8KY29uZmlndXJlOjY2MTM6IGNoZWNraW5nIGZv ciBzdWZmaXggb2Ygb2JqZWN0IGZpbGVzCmNvbmZpZ3VyZTo2NjM2OiBnY2MgLWMgICBjb25m dGVzdC5jID4mNQpjb25maWd1cmU6NjY0MDogJD8gPSAwCmNvbmZpZ3VyZTo2NjYyOiByZXN1 bHQ6IG8KY29uZmlndXJlOjY2NjY6IGNoZWNraW5nIHdoZXRoZXIgdGhlIGNvbXBpbGVyIHN1 cHBvcnRzIEdOVSBDCmNvbmZpZ3VyZTo2Njg2OiBnY2MgLWMgICBjb25mdGVzdC5jID4mNQpj b25maWd1cmU6NjY4NjogJD8gPSAwCmNvbmZpZ3VyZTo2Njk2OiByZXN1bHQ6IHllcwpjb25m aWd1cmU6NjcwNzogY2hlY2tpbmcgd2hldGhlciBnY2MgYWNjZXB0cyAtZwpjb25maWd1cmU6 NjcyODogZ2NjIC1jIC1nICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6NjcyODogJD8gPSAw CmNvbmZpZ3VyZTo2NzcyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6Njc5MjogY2hlY2tpbmcg Zm9yIGdjYyBvcHRpb24gdG8gZW5hYmxlIEMxMSBmZWF0dXJlcwpjb25maWd1cmU6NjgwNzog Z2NjICAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo2ODA3OiAkPyA9IDAK Y29uZmlndXJlOjY4MjU6IHJlc3VsdDogbm9uZSBuZWVkZWQKY29uZmlndXJlOjY5MzY6IGNo ZWNraW5nIHdoZXRoZXIgdGhlIGNvbXBpbGVyIGlzIGNsYW5nCmNvbmZpZ3VyZTo2OTU4OiBn Y2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6Njk1ODogJD8gPSAwCmNv bmZpZ3VyZTo2OTY3OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo2OTcxOiBjaGVja2luZyBmb3Ig Y29tcGlsZXIgb3B0aW9uIG5lZWRlZCB3aGVuIGNoZWNraW5nIGZvciBkZWNsYXJhdGlvbnMK Y29uZmlndXJlOjcwMDQ6IHJlc3VsdDogbm9uZQpjb25maWd1cmU6NzA2OTogY2hlY2tpbmcg d2hldGhlciBnY2MgYW5kIGNjIHVuZGVyc3RhbmQgLWMgYW5kIC1vIHRvZ2V0aGVyCmNvbmZp Z3VyZTo3MTAxOiBnY2MgLWMgY29uZnRlc3QuYyAtbyBjb25mdGVzdDIubyA+JjUKY29uZmln dXJlOjcxMDU6ICQ/ID0gMApjb25maWd1cmU6NzExMTogZ2NjIC1jIGNvbmZ0ZXN0LmMgLW8g Y29uZnRlc3QyLm8gPiY1CmNvbmZpZ3VyZTo3MTE1OiAkPyA9IDAKY29uZmlndXJlOjcxMjY6 IGNjIC1jIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo3MTMwOiAkPyA9IDAKY29uZmlndXJl OjcxMzg6IGNjIC1jIGNvbmZ0ZXN0LmMgLW8gY29uZnRlc3QyLm8gPiY1CmNvbmZpZ3VyZTo3 MTQyOiAkPyA9IDAKY29uZmlndXJlOjcxNDg6IGNjIC1jIGNvbmZ0ZXN0LmMgLW8gY29uZnRl c3QyLm8gPiY1CmNvbmZpZ3VyZTo3MTUyOiAkPyA9IDAKY29uZmlndXJlOjcxNzA6IHJlc3Vs dDogeWVzCmNvbmZpZ3VyZTo3MjA1OiBjaGVja2luZyBmb3Igc3RkaW8uaApjb25maWd1cmU6 NzIwNTogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjcyMDU6ICQ/ ID0gMApjb25maWd1cmU6NzIwNTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjcyMDU6IGNoZWNr aW5nIGZvciBzdGRsaWIuaApjb25maWd1cmU6NzIwNTogZ2NjIC1jIC1nIC1PMiAgY29uZnRl c3QuYyA+JjUKY29uZmlndXJlOjcyMDU6ICQ/ID0gMApjb25maWd1cmU6NzIwNTogcmVzdWx0 OiB5ZXMKY29uZmlndXJlOjcyMDU6IGNoZWNraW5nIGZvciBzdHJpbmcuaApjb25maWd1cmU6 NzIwNTogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjcyMDU6ICQ/ ID0gMApjb25maWd1cmU6NzIwNTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjcyMDU6IGNoZWNr aW5nIGZvciBpbnR0eXBlcy5oCmNvbmZpZ3VyZTo3MjA1OiBnY2MgLWMgLWcgLU8yICBjb25m dGVzdC5jID4mNQpjb25maWd1cmU6NzIwNTogJD8gPSAwCmNvbmZpZ3VyZTo3MjA1OiByZXN1 bHQ6IHllcwpjb25maWd1cmU6NzIwNTogY2hlY2tpbmcgZm9yIHN0ZGludC5oCmNvbmZpZ3Vy ZTo3MjA1OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6NzIwNTog JD8gPSAwCmNvbmZpZ3VyZTo3MjA1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NzIwNTogY2hl Y2tpbmcgZm9yIHN0cmluZ3MuaApjb25maWd1cmU6NzIwNTogZ2NjIC1jIC1nIC1PMiAgY29u ZnRlc3QuYyA+JjUKY29uZmlndXJlOjcyMDU6ICQ/ID0gMApjb25maWd1cmU6NzIwNTogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjcyMDU6IGNoZWNraW5nIGZvciBzeXMvc3RhdC5oCmNvbmZp Z3VyZTo3MjA1OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6NzIw NTogJD8gPSAwCmNvbmZpZ3VyZTo3MjA1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NzIwNTog Y2hlY2tpbmcgZm9yIHN5cy90eXBlcy5oCmNvbmZpZ3VyZTo3MjA1OiBnY2MgLWMgLWcgLU8y ICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6NzIwNTogJD8gPSAwCmNvbmZpZ3VyZTo3MjA1 OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NzIwNTogY2hlY2tpbmcgZm9yIHVuaXN0ZC5oCmNv bmZpZ3VyZTo3MjA1OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6 NzIwNTogJD8gPSAwCmNvbmZpZ3VyZTo3MjA1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NzIw NTogY2hlY2tpbmcgZm9yIHdjaGFyLmgKY29uZmlndXJlOjcyMDU6IGdjYyAtYyAtZyAtTzIg IGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo3MjA1OiAkPyA9IDAKY29uZmlndXJlOjcyMDU6 IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo3MjA1OiBjaGVja2luZyBmb3IgbWluaXgvY29uZmln LmgKY29uZmlndXJlOjcyMDU6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0 ZXN0LmM6NDg6MTA6IGZhdGFsIGVycm9yOiBtaW5peC9jb25maWcuaDogTm8gc3VjaCBmaWxl IG9yIGRpcmVjdG9yeQogICA0OCB8ICNpbmNsdWRlIDxtaW5peC9jb25maWcuaD4KICAgICAg fCAgICAgICAgICBefn5+fn5+fn5+fn5+fn5+CmNvbXBpbGF0aW9uIHRlcm1pbmF0ZWQuCmNv bmZpZ3VyZTo3MjA1OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6Cnwg LyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwg I2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJT SU9OICIzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAzMC4w LjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9y ZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJodHRwczovL3d3dy5nbnUub3JnL3NvZnR3YXJl L2VtYWNzLyIKfCAjZGVmaW5lIEhBVkVfUERVTVBFUiAxCnwgI2RlZmluZSBIQVZFX1NURElP X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19I IDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9I IDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1RE X0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICov CnwgI2luY2x1ZGUgPHN0ZGRlZi5oPgp8ICNpZmRlZiBIQVZFX1NURElPX0gKfCAjIGluY2x1 ZGUgPHN0ZGlvLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RETElCX0gKfCAjIGluY2x1 ZGUgPHN0ZGxpYi5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR19ICnwgIyBpbmNs dWRlIDxzdHJpbmcuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9JTlRUWVBFU19ICnwgIyBp bmNsdWRlIDxpbnR0eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NURElOVF9ICnwg IyBpbmNsdWRlIDxzdGRpbnQuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdTX0gK fCAjIGluY2x1ZGUgPHN0cmluZ3MuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TWVNfVFlQ RVNfSAp8ICMgaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVf U1lTX1NUQVRfSAp8ICMgaW5jbHVkZSA8c3lzL3N0YXQuaD4KfCAjZW5kaWYKfCAjaWZkZWYg SEFWRV9VTklTVERfSAp8ICMgaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgI2luY2x1 ZGUgPG1pbml4L2NvbmZpZy5oPgpjb25maWd1cmU6NzIwNTogcmVzdWx0OiBubwpjb25maWd1 cmU6NzIwNTogY2hlY2tpbmcgZm9yIGxpbnV4L2ZzLmgKY29uZmlndXJlOjcyMDU6IGdjYyAt YyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo3MjA1OiAkPyA9IDAKY29uZmln dXJlOjcyMDU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo3MjA1OiBjaGVja2luZyBmb3IgbWFs bG9jLmgKY29uZmlndXJlOjcyMDU6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNv bmZpZ3VyZTo3MjA1OiAkPyA9IDAKY29uZmlndXJlOjcyMDU6IHJlc3VsdDogeWVzCmNvbmZp Z3VyZTo3MjA1OiBjaGVja2luZyBmb3Igc3lzL3N5c3RlbWluZm8uaApjb25maWd1cmU6NzIw NTogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzo1MDoxMDogZmF0 YWwgZXJyb3I6IHN5cy9zeXN0ZW1pbmZvLmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkK ICAgNTAgfCAjaW5jbHVkZSA8c3lzL3N5c3RlbWluZm8uaD4KICAgICAgfCAgICAgICAgICBe fn5+fn5+fn5+fn5+fn5+fn4KY29tcGlsYXRpb24gdGVybWluYXRlZC4KY29uZmlndXJlOjcy MDU6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVm cy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBB Q0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMwLjAu NTAiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDMwLjAuNTAiCnwgI2Rl ZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZp bmUgUEFDS0FHRV9VUkwgImh0dHBzOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8 ICNkZWZpbmUgSEFWRV9QRFVNUEVSIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fSCAxCnwgI2Rl ZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZp bmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZp bmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2Rl ZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GU19IIDEKfCAjZGVm aW5lIEhBVkVfTUFMTE9DX0ggMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVk ZSA8c3RkZGVmLmg+CnwgI2lmZGVmIEhBVkVfU1RESU9fSAp8ICMgaW5jbHVkZSA8c3RkaW8u aD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVERMSUJfSAp8ICMgaW5jbHVkZSA8c3RkbGli Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RSSU5HX0gKfCAjIGluY2x1ZGUgPHN0cmlu Zy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX0lOVFRZUEVTX0gKfCAjIGluY2x1ZGUgPGlu dHR5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RESU5UX0gKfCAjIGluY2x1ZGUg PHN0ZGludC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR1NfSAp8ICMgaW5jbHVk ZSA8c3RyaW5ncy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NZU19UWVBFU19ICnwgIyBp bmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TWVNfU1RBVF9I CnwgIyBpbmNsdWRlIDxzeXMvc3RhdC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1VOSVNU RF9ICnwgIyBpbmNsdWRlIDx1bmlzdGQuaD4KfCAjZW5kaWYKfCAjaW5jbHVkZSA8c3lzL3N5 c3RlbWluZm8uaD4KY29uZmlndXJlOjcyMDU6IHJlc3VsdDogbm8KY29uZmlndXJlOjcyMDU6 IGNoZWNraW5nIGZvciBzeXMvc3lzaW5mby5oCmNvbmZpZ3VyZTo3MjA1OiBnY2MgLWMgLWcg LU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6NzIwNTogJD8gPSAwCmNvbmZpZ3VyZTo3 MjA1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NzIwNTogY2hlY2tpbmcgZm9yIGNvZmYuaApj b25maWd1cmU6NzIwNTogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3Qu Yzo1MToxMDogZmF0YWwgZXJyb3I6IGNvZmYuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9y eQogICA1MSB8ICNpbmNsdWRlIDxjb2ZmLmg+CiAgICAgIHwgICAgICAgICAgXn5+fn5+fn4K Y29tcGlsYXRpb24gdGVybWluYXRlZC4KY29uZmlndXJlOjcyMDU6ICQ/ID0gMQpjb25maWd1 cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQ QUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1h Y3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMwLjAuNTAiCnwgI2RlZmluZSBQQUNL QUdFX1NUUklORyAiR05VIEVtYWNzIDMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JF UE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0 dHBzOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgSEFWRV9QRFVN UEVSIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9I IDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19I IDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVT X0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0gg MQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4g ICovCnwgI2luY2x1ZGUgPHN0ZGRlZi5oPgp8ICNpZmRlZiBIQVZFX1NURElPX0gKfCAjIGlu Y2x1ZGUgPHN0ZGlvLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RETElCX0gKfCAjIGlu Y2x1ZGUgPHN0ZGxpYi5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR19ICnwgIyBp bmNsdWRlIDxzdHJpbmcuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9JTlRUWVBFU19ICnwg IyBpbmNsdWRlIDxpbnR0eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NURElOVF9I CnwgIyBpbmNsdWRlIDxzdGRpbnQuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdT X0gKfCAjIGluY2x1ZGUgPHN0cmluZ3MuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TWVNf VFlQRVNfSAp8ICMgaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhB VkVfU1lTX1NUQVRfSAp8ICMgaW5jbHVkZSA8c3lzL3N0YXQuaD4KfCAjZW5kaWYKfCAjaWZk ZWYgSEFWRV9VTklTVERfSAp8ICMgaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgI2lu Y2x1ZGUgPGNvZmYuaD4KY29uZmlndXJlOjcyMDU6IHJlc3VsdDogbm8KY29uZmlndXJlOjcy MDU6IGNoZWNraW5nIGZvciBwdHkuaApjb25maWd1cmU6NzIwNTogZ2NjIC1jIC1nIC1PMiAg Y29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjcyMDU6ICQ/ID0gMApjb25maWd1cmU6NzIwNTog cmVzdWx0OiB5ZXMKY29uZmlndXJlOjcyMDU6IGNoZWNraW5nIGZvciBzeXMvcmVzb3VyY2Uu aApjb25maWd1cmU6NzIwNTogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmln dXJlOjcyMDU6ICQ/ID0gMApjb25maWd1cmU6NzIwNTogcmVzdWx0OiB5ZXMKY29uZmlndXJl OjcyMDU6IGNoZWNraW5nIGZvciBzeXMvdXRzbmFtZS5oCmNvbmZpZ3VyZTo3MjA1OiBnY2Mg LWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6NzIwNTogJD8gPSAwCmNvbmZp Z3VyZTo3MjA1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NzIwNTogY2hlY2tpbmcgZm9yIHB3 ZC5oCmNvbmZpZ3VyZTo3MjA1OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25m aWd1cmU6NzIwNTogJD8gPSAwCmNvbmZpZ3VyZTo3MjA1OiByZXN1bHQ6IHllcwpjb25maWd1 cmU6NzIwNTogY2hlY2tpbmcgZm9yIHV0bXAuaApjb25maWd1cmU6NzIwNTogZ2NjIC1jIC1n IC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjcyMDU6ICQ/ID0gMApjb25maWd1cmU6 NzIwNTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjcyMDU6IGNoZWNraW5nIGZvciB1dGlsLmgK Y29uZmlndXJlOjcyMDU6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0 LmM6NTY6MTA6IGZhdGFsIGVycm9yOiB1dGlsLmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3Rv cnkKICAgNTYgfCAjaW5jbHVkZSA8dXRpbC5oPgogICAgICB8ICAgICAgICAgIF5+fn5+fn5+ CmNvbXBpbGF0aW9uIHRlcm1pbmF0ZWQuCmNvbmZpZ3VyZTo3MjA1OiAkPyA9IDEKY29uZmln dXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUg UEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVt YWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIzMC4wLjUwIgp8ICNkZWZpbmUgUEFD S0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdS RVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJo dHRwczovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIEhBVkVfUERV TVBFUiAxCnwgI2RlZmluZSBIQVZFX1NURElPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJf SCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNf SCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBF U19IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9I IDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfRlNfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1BUWV9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf VVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1Q X0ggMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8c3RkZGVmLmg+Cnwg I2lmZGVmIEhBVkVfU1RESU9fSAp8ICMgaW5jbHVkZSA8c3RkaW8uaD4KfCAjZW5kaWYKfCAj aWZkZWYgSEFWRV9TVERMSUJfSAp8ICMgaW5jbHVkZSA8c3RkbGliLmg+CnwgI2VuZGlmCnwg I2lmZGVmIEhBVkVfU1RSSU5HX0gKfCAjIGluY2x1ZGUgPHN0cmluZy5oPgp8ICNlbmRpZgp8 ICNpZmRlZiBIQVZFX0lOVFRZUEVTX0gKfCAjIGluY2x1ZGUgPGludHR5cGVzLmg+CnwgI2Vu ZGlmCnwgI2lmZGVmIEhBVkVfU1RESU5UX0gKfCAjIGluY2x1ZGUgPHN0ZGludC5oPgp8ICNl bmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR1NfSAp8ICMgaW5jbHVkZSA8c3RyaW5ncy5oPgp8 ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NZU19UWVBFU19ICnwgIyBpbmNsdWRlIDxzeXMvdHlw ZXMuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TWVNfU1RBVF9ICnwgIyBpbmNsdWRlIDxz eXMvc3RhdC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1VOSVNURF9ICnwgIyBpbmNsdWRl IDx1bmlzdGQuaD4KfCAjZW5kaWYKfCAjaW5jbHVkZSA8dXRpbC5oPgpjb25maWd1cmU6NzIw NTogcmVzdWx0OiBubwpjb25maWd1cmU6NzIwNTogY2hlY2tpbmcgZm9yIHNhbml0aXplci9s c2FuX2ludGVyZmFjZS5oCmNvbmZpZ3VyZTo3MjA1OiBnY2MgLWMgLWcgLU8yICBjb25mdGVz dC5jID4mNQpjb25maWd1cmU6NzIwNTogJD8gPSAwCmNvbmZpZ3VyZTo3MjA1OiByZXN1bHQ6 IHllcwpjb25maWd1cmU6NzIwNTogY2hlY2tpbmcgZm9yIHNhbml0aXplci9hc2FuX2ludGVy ZmFjZS5oCmNvbmZpZ3VyZTo3MjA1OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpj b25maWd1cmU6NzIwNTogJD8gPSAwCmNvbmZpZ3VyZTo3MjA1OiByZXN1bHQ6IHllcwpjb25m aWd1cmU6NzIwNTogY2hlY2tpbmcgZm9yIHNhbml0aXplci9jb21tb25faW50ZXJmYWNlX2Rl ZnMuaApjb25maWd1cmU6NzIwNTogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29u ZmlndXJlOjcyMDU6ICQ/ID0gMApjb25maWd1cmU6NzIwNTogcmVzdWx0OiB5ZXMKY29uZmln dXJlOjcyMDU6IGNoZWNraW5nIGZvciBzeXMvc29ja2V0LmgKY29uZmlndXJlOjcyMDU6IGdj YyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo3MjA1OiAkPyA9IDAKY29u ZmlndXJlOjcyMDU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo3MjA1OiBjaGVja2luZyBmb3Ig c3lzL3BhcmFtLmgKY29uZmlndXJlOjcyMDU6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMg PiY1CmNvbmZpZ3VyZTo3MjA1OiAkPyA9IDAKY29uZmlndXJlOjcyMDU6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZTo3MjA1OiBjaGVja2luZyBmb3IgcHRocmVhZC5oCmNvbmZpZ3VyZTo3MjA1 OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6NzIwNTogJD8gPSAw CmNvbmZpZ3VyZTo3MjA1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NzIwNTogY2hlY2tpbmcg Zm9yIG1hbGxvYy9tYWxsb2MuaApjb25maWd1cmU6NzIwNTogZ2NjIC1jIC1nIC1PMiAgY29u ZnRlc3QuYyA+JjUKY29uZnRlc3QuYzo2MjoxMDogZmF0YWwgZXJyb3I6IG1hbGxvYy9tYWxs b2MuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQogICA2MiB8ICNpbmNsdWRlIDxtYWxs b2MvbWFsbG9jLmg+CiAgICAgIHwgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn4KY29tcGls YXRpb24gdGVybWluYXRlZC4KY29uZmlndXJlOjcyMDU6ICQ/ID0gMQpjb25maWd1cmU6IGZh aWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdF X05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwg I2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX1NU UklORyAiR05VIEVtYWNzIDMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAi YnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHBzOi8v d3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgSEFWRV9QRFVNUEVSIDEK fCAjZGVmaW5lIEhBVkVfU1RESU9fSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAj ZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAj ZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8 ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNk ZWZpbmUgSEFWRV9MSU5VWF9GU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1F X0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwg I2RlZmluZSBIQVZFX1NBTklUSVpFUl9MU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhB VkVfU0FOSVRJWkVSX0FTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVEla RVJfQ09NTU9OX0lOVEVSRkFDRV9ERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VU X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJF QURfSCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxzdGRkZWYuaD4K fCAjaWZkZWYgSEFWRV9TVERJT19ICnwgIyBpbmNsdWRlIDxzdGRpby5oPgp8ICNlbmRpZgp8 ICNpZmRlZiBIQVZFX1NURExJQl9ICnwgIyBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjZW5kaWYK fCAjaWZkZWYgSEFWRV9TVFJJTkdfSAp8ICMgaW5jbHVkZSA8c3RyaW5nLmg+CnwgI2VuZGlm CnwgI2lmZGVmIEhBVkVfSU5UVFlQRVNfSAp8ICMgaW5jbHVkZSA8aW50dHlwZXMuaD4KfCAj ZW5kaWYKfCAjaWZkZWYgSEFWRV9TVERJTlRfSAp8ICMgaW5jbHVkZSA8c3RkaW50Lmg+Cnwg I2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RSSU5HU19ICnwgIyBpbmNsdWRlIDxzdHJpbmdzLmg+ CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1lTX1RZUEVTX0gKfCAjIGluY2x1ZGUgPHN5cy90 eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NZU19TVEFUX0gKfCAjIGluY2x1ZGUg PHN5cy9zdGF0Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfVU5JU1REX0gKfCAjIGluY2x1 ZGUgPHVuaXN0ZC5oPgp8ICNlbmRpZgp8ICNpbmNsdWRlIDxtYWxsb2MvbWFsbG9jLmg+CmNv bmZpZ3VyZTo3MjA1OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo3MjA1OiBjaGVja2luZyBmb3Ig c3lzL3VuLmgKY29uZmlndXJlOjcyMDU6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1 CmNvbmZpZ3VyZTo3MjA1OiAkPyA9IDAKY29uZmlndXJlOjcyMDU6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZTo3MjA1OiBjaGVja2luZyBmb3IgdmZvcmsuaApjb25maWd1cmU6NzIwNTogZ2Nj IC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzo2MzoxMDogZmF0YWwgZXJy b3I6IHZmb3JrLmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKICAgNjMgfCAjaW5jbHVk ZSA8dmZvcmsuaD4KICAgICAgfCAgICAgICAgICBefn5+fn5+fn4KY29tcGlsYXRpb24gdGVy bWluYXRlZC4KY29uZmlndXJlOjcyMDU6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9n cmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdO VSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQ QUNLQUdFX1ZFUlNJT04gIjMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05V IEVtYWNzIDMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1l bWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHBzOi8vd3d3LmdudS5v cmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgSEFWRV9QRFVNUEVSIDEKfCAjZGVmaW5l IEhBVkVfU1RESU9fSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhB VkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhB VkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUg SEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFW RV9MSU5VWF9GU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNk ZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBI QVZFX1NBTklUSVpFUl9MU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJ WkVSX0FTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQ09NTU9O X0lOVEVSRkFDRV9ERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2lu Y2x1ZGUgPHN0ZGRlZi5oPgp8ICNpZmRlZiBIQVZFX1NURElPX0gKfCAjIGluY2x1ZGUgPHN0 ZGlvLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RETElCX0gKfCAjIGluY2x1ZGUgPHN0 ZGxpYi5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR19ICnwgIyBpbmNsdWRlIDxz dHJpbmcuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9JTlRUWVBFU19ICnwgIyBpbmNsdWRl IDxpbnR0eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NURElOVF9ICnwgIyBpbmNs dWRlIDxzdGRpbnQuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdTX0gKfCAjIGlu Y2x1ZGUgPHN0cmluZ3MuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TWVNfVFlQRVNfSAp8 ICMgaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1lTX1NU QVRfSAp8ICMgaW5jbHVkZSA8c3lzL3N0YXQuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9V TklTVERfSAp8ICMgaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgI2luY2x1ZGUgPHZm b3JrLmg+CmNvbmZpZ3VyZTo3MjA1OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo3MjA1OiBjaGVj a2luZyBmb3IgZGlyZW50LmgKY29uZmlndXJlOjcyMDU6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0 ZXN0LmMgPiY1CmNvbmZpZ3VyZTo3MjA1OiAkPyA9IDAKY29uZmlndXJlOjcyMDU6IHJlc3Vs dDogeWVzCmNvbmZpZ3VyZTo3MjA1OiBjaGVja2luZyBmb3IgZXhlY2luZm8uaApjb25maWd1 cmU6NzIwNTogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjcyMDU6 ICQ/ID0gMApjb25maWd1cmU6NzIwNTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjcyMDU6IGNo ZWNraW5nIGZvciBzdGRpb19leHQuaApjb25maWd1cmU6NzIwNTogZ2NjIC1jIC1nIC1PMiAg Y29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjcyMDU6ICQ/ID0gMApjb25maWd1cmU6NzIwNTog cmVzdWx0OiB5ZXMKY29uZmlndXJlOjcyMDU6IGNoZWNraW5nIGZvciBzeXMvdmZzLmgKY29u ZmlndXJlOjcyMDU6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo3 MjA1OiAkPyA9IDAKY29uZmlndXJlOjcyMDU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo3MjA1 OiBjaGVja2luZyBmb3Igc3lzL2ZzX3R5cGVzLmgKY29uZmlndXJlOjcyMDU6IGdjYyAtYyAt ZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6Njc6MTA6IGZhdGFsIGVycm9yOiBz eXMvZnNfdHlwZXMuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQogICA2NyB8ICNpbmNs dWRlIDxzeXMvZnNfdHlwZXMuaD4KICAgICAgfCAgICAgICAgICBefn5+fn5+fn5+fn5+fn5+ CmNvbXBpbGF0aW9uIHRlcm1pbmF0ZWQuCmNvbmZpZ3VyZTo3MjA1OiAkPyA9IDEKY29uZmln dXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUg UEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVt YWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIzMC4wLjUwIgp8ICNkZWZpbmUgUEFD S0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdS RVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJo dHRwczovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIEhBVkVfUERV TVBFUiAxCnwgI2RlZmluZSBIQVZFX1NURElPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJf SCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNf SCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBF U19IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9I IDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfRlNfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1BUWV9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf VVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1Q X0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfTFNBTl9JTlRFUkZBQ0VfSCAxCnwgI2Rl ZmluZSBIQVZFX1NBTklUSVpFUl9BU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVf U0FOSVRJWkVSX0NPTU1PTl9JTlRFUkZBQ0VfREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFW RV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwgI2RlZmluZSBIQVZF X0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAxCnwgI2RlZmluZSBIQVZF X1NURElPX0VYVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1ZGU19IIDEKfCAvKiBlbmQgY29u ZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN0ZGRlZi5oPgp8ICNpZmRlZiBIQVZFX1NURElP X0gKfCAjIGluY2x1ZGUgPHN0ZGlvLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RETElC X0gKfCAjIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklO R19ICnwgIyBpbmNsdWRlIDxzdHJpbmcuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9JTlRU WVBFU19ICnwgIyBpbmNsdWRlIDxpbnR0eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZF X1NURElOVF9ICnwgIyBpbmNsdWRlIDxzdGRpbnQuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFW RV9TVFJJTkdTX0gKfCAjIGluY2x1ZGUgPHN0cmluZ3MuaD4KfCAjZW5kaWYKfCAjaWZkZWYg SEFWRV9TWVNfVFlQRVNfSAp8ICMgaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgI2VuZGlmCnwg I2lmZGVmIEhBVkVfU1lTX1NUQVRfSAp8ICMgaW5jbHVkZSA8c3lzL3N0YXQuaD4KfCAjZW5k aWYKfCAjaWZkZWYgSEFWRV9VTklTVERfSAp8ICMgaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2Vu ZGlmCnwgI2luY2x1ZGUgPHN5cy9mc190eXBlcy5oPgpjb25maWd1cmU6NzIwNTogcmVzdWx0 OiBubwpjb25maWd1cmU6NzIwNTogY2hlY2tpbmcgZm9yIGdldG9wdC5oCmNvbmZpZ3VyZTo3 MjA1OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6NzIwNTogJD8g PSAwCmNvbmZpZ3VyZTo3MjA1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NzIwNTogY2hlY2tp bmcgZm9yIHN5cy9jZGVmcy5oCmNvbmZpZ3VyZTo3MjA1OiBnY2MgLWMgLWcgLU8yICBjb25m dGVzdC5jID4mNQpjb25maWd1cmU6NzIwNTogJD8gPSAwCmNvbmZpZ3VyZTo3MjA1OiByZXN1 bHQ6IHllcwpjb25maWd1cmU6NzIwNTogY2hlY2tpbmcgZm9yIHN5cy90aW1lLmgKY29uZmln dXJlOjcyMDU6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo3MjA1 OiAkPyA9IDAKY29uZmlndXJlOjcyMDU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo3MjA1OiBj aGVja2luZyBmb3IgaWVlZTc1NC5oCmNvbmZpZ3VyZTo3MjA1OiBnY2MgLWMgLWcgLU8yICBj b25mdGVzdC5jID4mNQpjb25maWd1cmU6NzIwNTogJD8gPSAwCmNvbmZpZ3VyZTo3MjA1OiBy ZXN1bHQ6IHllcwpjb25maWd1cmU6NzIwNTogY2hlY2tpbmcgZm9yIGxpbWl0cy5oCmNvbmZp Z3VyZTo3MjA1OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6NzIw NTogJD8gPSAwCmNvbmZpZ3VyZTo3MjA1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NzIwNTog Y2hlY2tpbmcgZm9yIHN5cy9zZWxlY3QuaApjb25maWd1cmU6NzIwNTogZ2NjIC1jIC1nIC1P MiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjcyMDU6ICQ/ID0gMApjb25maWd1cmU6NzIw NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjcyMDU6IGNoZWNraW5nIGZvciBzdGRib29sLmgK Y29uZmlndXJlOjcyMDU6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3Vy ZTo3MjA1OiAkPyA9IDAKY29uZmlndXJlOjcyMDU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo3 MjA1OiBjaGVja2luZyBmb3Igc3RkY2tkaW50LmgKY29uZmlndXJlOjcyMDU6IGdjYyAtYyAt ZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6NzQ6MTA6IGZhdGFsIGVycm9yOiBz dGRja2RpbnQuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQogICA3NCB8ICNpbmNsdWRl IDxzdGRja2RpbnQuaD4KICAgICAgfCAgICAgICAgICBefn5+fn5+fn5+fn5+CmNvbXBpbGF0 aW9uIHRlcm1pbmF0ZWQuCmNvbmZpZ3VyZTo3MjA1OiAkPyA9IDEKY29uZmlndXJlOiBmYWls ZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9O QU1FICJHTlUgRW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNk ZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJ TkcgIkdOVSBFbWFjcyAzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1 Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJodHRwczovL3d3 dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIEhBVkVfUERVTVBFUiAxCnwg I2RlZmluZSBIQVZFX1NURElPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2Rl ZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2Rl ZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAj ZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVm aW5lIEhBVkVfTElOVVhfRlNfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1BUWV9IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9I IDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1QX0ggMQp8ICNk ZWZpbmUgSEFWRV9TQU5JVElaRVJfTFNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZF X1NBTklUSVpFUl9BU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVS X0NPTU1PTl9JTlRFUkZBQ0VfREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFE X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9I IDEKfCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1NURElPX0VY VF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1ZGU19IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BU X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfQ0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19U SU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9JRUVFNzU0X0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1J VFNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NU REJPT0xfSCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxzdGRkZWYu aD4KfCAjaWZkZWYgSEFWRV9TVERJT19ICnwgIyBpbmNsdWRlIDxzdGRpby5oPgp8ICNlbmRp Zgp8ICNpZmRlZiBIQVZFX1NURExJQl9ICnwgIyBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjZW5k aWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdfSAp8ICMgaW5jbHVkZSA8c3RyaW5nLmg+CnwgI2Vu ZGlmCnwgI2lmZGVmIEhBVkVfSU5UVFlQRVNfSAp8ICMgaW5jbHVkZSA8aW50dHlwZXMuaD4K fCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVERJTlRfSAp8ICMgaW5jbHVkZSA8c3RkaW50Lmg+ CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RSSU5HU19ICnwgIyBpbmNsdWRlIDxzdHJpbmdz Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1lTX1RZUEVTX0gKfCAjIGluY2x1ZGUgPHN5 cy90eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NZU19TVEFUX0gKfCAjIGluY2x1 ZGUgPHN5cy9zdGF0Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfVU5JU1REX0gKfCAjIGlu Y2x1ZGUgPHVuaXN0ZC5oPgp8ICNlbmRpZgp8ICNpbmNsdWRlIDxzdGRja2RpbnQuaD4KY29u ZmlndXJlOjcyMDU6IHJlc3VsdDogbm8KY29uZmlndXJlOjcyMDU6IGNoZWNraW5nIGZvciBz eXMvcmFuZG9tLmgKY29uZmlndXJlOjcyMDU6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMg PiY1CmNvbmZpZ3VyZTo3MjA1OiAkPyA9IDAKY29uZmlndXJlOjcyMDU6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZTo3MjM2OiBjaGVja2luZyB3aGV0aGVyIGl0IGlzIHNhZmUgdG8gZGVmaW5l IF9fRVhURU5TSU9OU19fCmNvbmZpZ3VyZTo3MjU1OiBnY2MgLWMgLWcgLU8yICBjb25mdGVz dC5jID4mNQpjb25maWd1cmU6NzI1NTogJD8gPSAwCmNvbmZpZ3VyZTo3MjYzOiByZXN1bHQ6 IHllcwpjb25maWd1cmU6NzI2NjogY2hlY2tpbmcgd2hldGhlciBfWE9QRU5fU09VUkNFIHNo b3VsZCBiZSBkZWZpbmVkCmNvbmZpZ3VyZTo3Mjg4OiBnY2MgLWMgLWcgLU8yICBjb25mdGVz dC5jID4mNQpjb25maWd1cmU6NzI4ODogJD8gPSAwCmNvbmZpZ3VyZTo3MzE1OiByZXN1bHQ6 IG5vCmNvbmZpZ3VyZTo3MzkwOiBjaGVja2luZyBob3cgdG8gcnVuIHRoZSBDIHByZXByb2Nl c3Nvcgpjb25maWd1cmU6NzQxNjogZ2NjIC1FICBjb25mdGVzdC5jCmNvbmZpZ3VyZTo3NDE2 OiAkPyA9IDAKY29uZmlndXJlOjc0MzE6IGdjYyAtRSAgY29uZnRlc3QuYwpjb25mdGVzdC5j OjY1OjEwOiBmYXRhbCBlcnJvcjogYWNfbm9uZXhpc3RlbnQuaDogTm8gc3VjaCBmaWxlIG9y IGRpcmVjdG9yeQogICA2NSB8ICNpbmNsdWRlIDxhY19ub25leGlzdGVudC5oPgogICAgICB8 ICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fgpjb21waWxhdGlvbiB0ZXJtaW5hdGVkLgpj b25maWd1cmU6NzQzMTogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8 IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8 ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVS U0lPTiAiMzAuMC41MCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1hY3MgMzAu MC41MCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ251LWVtYWNzQGdudS5v cmciCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0cHM6Ly93d3cuZ251Lm9yZy9zb2Z0d2Fy ZS9lbWFjcy8iCnwgI2RlZmluZSBIQVZFX1BEVU1QRVIgMQp8ICNkZWZpbmUgSEFWRV9TVERJ T19IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdf SCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRf SCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFU X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNU RF9IIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfSCAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZT X0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TWVNJ TkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9QVFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNP VVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZF X1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUF9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJ WkVSX0xTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQVNBTl9J TlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9DT01NT05fSU5URVJGQUNF X0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZF X0VYRUNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJT19FWFRfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19WRlNfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX0NERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5l IEhBVkVfSUVFRTc1NF9IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERCT09MX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfUkFORE9NX0ggMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVm aW5lIF9BTExfU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8ICNkZWZp bmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0hQVVhfQUxUX1hPUEVOX1NPQ0tFVF9BUEkg MQp8ICNkZWZpbmUgX05FVEJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUgX09QRU5CU0RfU09VUkNF IDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBfX1NU RENfV0FOVF9JRUNfNjA1NTlfQVRUUklCU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FO VF9JRUNfNjA1NTlfQkZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1 OV9ERlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0VYVF9fIDEK fCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9GVU5DU19FWFRfXyAxCnwgI2RlZmlu ZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfVFlQRVNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERD X1dBTlRfTElCX0VYVDJfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9NQVRIX1NQRUNfRlVO Q1NfXyAxCnwgI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCnwgI2RlZmluZSBfX0VYVEVOU0lP TlNfXyAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxhY19ub25leGlz dGVudC5oPgpjb25maWd1cmU6NzQ1ODogcmVzdWx0OiBnY2MgLUUKY29uZmlndXJlOjc0NzI6 IGdjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6NzQ3MjogJD8gPSAwCmNvbmZpZ3VyZTo3 NDg3OiBnY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZnRlc3QuYzo2NToxMDogZmF0YWwgZXJyb3I6 IGFjX25vbmV4aXN0ZW50Lmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKICAgNjUgfCAj aW5jbHVkZSA8YWNfbm9uZXhpc3RlbnQuaD4KICAgICAgfCAgICAgICAgICBefn5+fn5+fn5+ fn5+fn5+fn4KY29tcGlsYXRpb24gdGVybWluYXRlZC4KY29uZmlndXJlOjc0ODc6ICQ/ID0g MQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwg I2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFS TkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMwLjAuNTAiCnwgI2Rl ZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDMwLjAuNTAiCnwgI2RlZmluZSBQQUNL QUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FH RV9VUkwgImh0dHBzOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUg SEFWRV9QRFVNUEVSIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fSCAxCnwgI2RlZmluZSBIQVZF X1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9J TlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9T VFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZF X1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GU19IIDEKfCAjZGVmaW5lIEhBVkVf TUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhB VkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBI QVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9MU0FOX0lOVEVSRkFDRV9I IDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0FTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZp bmUgSEFWRV9TQU5JVElaRVJfQ09NTU9OX0lOVEVSRkFDRV9ERUZTX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2Rl ZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVm aW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVm aW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVkZTX0ggMQp8ICNk ZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19DREVGU19IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX0lFRUU3NTRfSCAxCnwg I2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEK fCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JBTkRPTV9I IDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwg I2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAj ZGVmaW5lIF9IUFVYX0FMVF9YT1BFTl9TT0NLRVRfQVBJIDEKfCAjZGVmaW5lIF9ORVRCU0Rf U09VUkNFIDEKfCAjZGVmaW5lIF9PUEVOQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfUE9TSVhf UFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0FU VFJJQlNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0JGUF9FWFRf XyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfREZQX0VYVF9fIDEKfCAjZGVm aW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FO VF9JRUNfNjA1NTlfRlVOQ1NfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYw NTU5X1RZUEVTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0xJQl9FWFQyX18gMQp8 ICNkZWZpbmUgX19TVERDX1dBTlRfTUFUSF9TUEVDX0ZVTkNTX18gMQp8ICNkZWZpbmUgX1RB TkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8IC8qIGVuZCBjb25m ZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8YWNfbm9uZXhpc3RlbnQuaD4KY29uZmlndXJlOjc1 MTg6IGNoZWNraW5nIGZvciBncmVwIHRoYXQgaGFuZGxlcyBsb25nIGxpbmVzIGFuZCAtZQpj b25maWd1cmU6NzU4MjogcmVzdWx0OiAvdXNyL2Jpbi9ncmVwCmNvbmZpZ3VyZTo3NTg3OiBj aGVja2luZyBmb3IgZWdyZXAKY29uZmlndXJlOjc2NTU6IHJlc3VsdDogL3Vzci9iaW4vZ3Jl cCAtRQpjb25maWd1cmU6NzY2MzogY2hlY2tpbmcgZm9yIE1pbml4IEFtc3RlcmRhbSBjb21w aWxlcgpjb25maWd1cmU6NzY4OTogcmVzdWx0OiBubwpjb25maWd1cmU6Nzc1MTogY2hlY2tp bmcgZm9yIGFyCmNvbmZpZ3VyZTo3NzcyOiBmb3VuZCAvdXNyL2Jpbi9hcgpjb25maWd1cmU6 Nzc4MzogcmVzdWx0OiBhcgpjb25maWd1cmU6Nzg2MzogY2hlY2tpbmcgZm9yIHJhbmxpYgpj b25maWd1cmU6Nzg4NDogZm91bmQgL3Vzci9iaW4vcmFubGliCmNvbmZpZ3VyZTo3ODk1OiBy ZXN1bHQ6IHJhbmxpYgpjb25maWd1cmU6Nzk1MjogY2hlY2tpbmcgZm9yIGdjYyBvcHRpb24g dG8gZW5hYmxlIGxhcmdlIGZpbGUgc3VwcG9ydApjb25maWd1cmU6Nzk4NDogZ2NjIC1jIC1n IC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjc5ODQ6ICQ/ID0gMApjb25maWd1cmU6 Nzk5NTogcmVzdWx0OiBub25lIG5lZWRlZApjb25maWd1cmU6ODMyMDogY2hlY2tpbmcgd2hl dGhlciBnY2MgYWNjZXB0cyAtZzMgLU8yCmNvbmZpZ3VyZTo4MzM3OiBnY2MgLW8gY29uZnRl c3QgLWczIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6ODMzNzogJD8gPSAwCmNv bmZpZ3VyZTo4MzQ2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6ODQwNzogY2hlY2tpbmcgd2hl dGhlciB0aGUgY29tcGlsZXIgaXMgY2xhbmcKY29uZmlndXJlOjg0Mjg6IGdjYyAtYyAtZzMg LU8yICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOjY3OjE5OiBlcnJvcjogZXhwZWN0ZWQg Jz0nLCAnLCcsICc7JywgJ2FzbScgb3IgJ19fYXR0cmlidXRlX18nIGJlZm9yZSBzdHJpbmcg Y29uc3RhbnQKICAgNjcgfCAgICAgICAgICAgICBlcnJvciAibm90IGNsYW5nIjsKICAgICAg fCAgICAgICAgICAgICAgICAgICBefn5+fn5+fn5+fgpjb25maWd1cmU6ODQyODogJD8gPSAx CmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAj ZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJO QU1FICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMzAuMC41MCIKfCAjZGVm aW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1hY3MgMzAuMC41MCIKfCAjZGVmaW5lIFBBQ0tB R0VfQlVHUkVQT1JUICJidWctZ251LWVtYWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdF X1VSTCAiaHR0cHM6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmluZSBI QVZFX1BEVU1QRVIgMQp8ICNkZWZpbmUgSEFWRV9TVERJT19IIDEKfCAjZGVmaW5lIEhBVkVf U1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX0lO VFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1NU UklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVf V0NIQVJfSCAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZTX0ggMQp8ICNkZWZpbmUgSEFWRV9N QUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TWVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFW RV9QVFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhB VkVfVVRNUF9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0xTQU5fSU5URVJGQUNFX0gg MQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQVNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmlu ZSBIQVZFX1NBTklUSVpFUl9DT01NT05fSU5URVJGQUNFX0RFRlNfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVm aW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZp bmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX0VYRUNJTkZPX0ggMQp8ICNkZWZp bmUgSEFWRV9TVERJT19FWFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19WRlNfSCAxCnwgI2Rl ZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0NERUZTX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfSUVFRTc1NF9IIDEKfCAj ZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8 ICNkZWZpbmUgSEFWRV9TVERCT09MX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkFORE9NX0gg MQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAj ZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNk ZWZpbmUgX0hQVVhfQUxUX1hPUEVOX1NPQ0tFVF9BUEkgMQp8ICNkZWZpbmUgX05FVEJTRF9T T1VSQ0UgMQp8ICNkZWZpbmUgX09QRU5CU0RfU09VUkNFIDEKfCAjZGVmaW5lIF9QT1NJWF9Q VEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfQVRU UklCU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfQkZQX0VYVF9f IDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9ERlBfRVhUX18gMQp8ICNkZWZp bmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5U X0lFQ182MDU1OV9GVU5DU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1 NTlfVFlQRVNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfTElCX0VYVDJfXyAxCnwg I2RlZmluZSBfX1NURENfV0FOVF9NQVRIX1NQRUNfRlVOQ1NfXyAxCnwgI2RlZmluZSBfVEFO REVNX1NPVVJDRSAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgLyogZW5kIGNvbmZk ZWZzLmguICAqLwp8IAp8IAkgICNpZm5kZWYgX19jbGFuZ19fCnwgCSAgICBlcnJvciAibm90 IGNsYW5nIjsKfCAJICAjZW5kaWYKfCAKfCBpbnQKfCBtYWluICh2b2lkKQp8IHsKfCAKfCAg IDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjg0MzY6IHJlc3VsdDogbm8KY29uZmln dXJlOjg0Nzk6IGdjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6ODQ3OTogJD8gPSAwCmNv bmZpZ3VyZTo4NTM2OiBjaGVja2luZyB3aGV0aGVyIEMgY29tcGlsZXIgaGFuZGxlcyAtV2Vy cm9yIC1XdW5rbm93bi13YXJuaW5nLW9wdGlvbgpjb25maWd1cmU6ODU1NjogZ2NjIC1vIGNv bmZ0ZXN0IC1nMyAtTzIgIC1XZXJyb3IgLVd1bmtub3duLXdhcm5pbmctb3B0aW9uICAgY29u ZnRlc3QuYyAgPiY1CmdjYzogZXJyb3I6IHVucmVjb2duaXplZCBjb21tYW5kLWxpbmUgb3B0 aW9uICctV3Vua25vd24td2FybmluZy1vcHRpb24nCmNvbmZpZ3VyZTo4NTU2OiAkPyA9IDEK Y29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNk ZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5B TUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIzMC4wLjUwIgp8ICNkZWZp bmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FH RV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0Vf VVJMICJodHRwczovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIEhB VkVfUERVTVBFUiAxCnwgI2RlZmluZSBIQVZFX1NURElPX0ggMQp8ICNkZWZpbmUgSEFWRV9T VERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfSU5U VFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RS SU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9X Q0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfRlNfSCAxCnwgI2RlZmluZSBIQVZFX01B TExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmluZSBIQVZF X1BUWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFW RV9VVE1QX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfTFNBTl9JTlRFUkZBQ0VfSCAx CnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9BU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5l IEhBVkVfU0FOSVRJWkVSX0NPTU1PTl9JTlRFUkZBQ0VfREVGU19IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZp bmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwgI2RlZmlu ZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAxCnwgI2RlZmlu ZSBIQVZFX1NURElPX0VYVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1ZGU19IIDEKfCAjZGVm aW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfQ0RFRlNfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9JRUVFNzU0X0ggMQp8ICNk ZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwg I2RlZmluZSBIQVZFX1NUREJPT0xfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SQU5ET01fSCAx CnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8ICNk ZWZpbmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2Rl ZmluZSBfSFBVWF9BTFRfWE9QRU5fU09DS0VUX0FQSSAxCnwgI2RlZmluZSBfTkVUQlNEX1NP VVJDRSAxCnwgI2RlZmluZSBfT1BFTkJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUgX1BPU0lYX1BU SFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9BVFRS SUJTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9CRlBfRVhUX18g MQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0RGUF9FWFRfXyAxCnwgI2RlZmlu ZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRf SUVDXzYwNTU5X0ZVTkNTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1 OV9UWVBFU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9MSUJfRVhUMl9fIDEKfCAj ZGVmaW5lIF9fU1REQ19XQU5UX01BVEhfU1BFQ19GVU5DU19fIDEKfCAjZGVmaW5lIF9UQU5E RU1fU09VUkNFIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAvKiBlbmQgY29uZmRl ZnMuaC4gICovCnwgCnwgaW50CnwgbWFpbiAodm9pZCkKfCB7CnwgCnwgICA7CnwgICByZXR1 cm4gMDsKfCB9CmNvbmZpZ3VyZTo4NTY3OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo4ODgxOiBj aGVja2luZyB3aGV0aGVyIC1Xbm8tbWlzc2luZy1maWVsZC1pbml0aWFsaXplcnMgaXMgc3Vw cG9ydGVkCmNvbmZpZ3VyZTo4OTAwOiBnY2MgLWMgLWczIC1PMiAtV2V4dHJhIC1XZXJyb3Ig LVduby1taXNzaW5nLWZpZWxkLWluaXRpYWxpemVycyAgY29uZnRlc3QuYyA+JjUKY29uZmln dXJlOjg5MDA6ICQ/ID0gMApjb25maWd1cmU6ODkxMDogcmVzdWx0OiB5ZXMKY29uZmlndXJl Ojg5MTQ6IGNoZWNraW5nIHdoZXRoZXIgLVduby1taXNzaW5nLWZpZWxkLWluaXRpYWxpemVy cyBpcyBuZWVkZWQKY29uZmlndXJlOjg5Mzk6IGdjYyAtYyAtZzMgLU8yIC1XZXh0cmEgLVdl cnJvciAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjg5Mzk6ICQ/ID0gMApjb25maWd1cmU6 ODk0OTogcmVzdWx0OiBubwpjb25maWd1cmU6ODk1MzogY2hlY2tpbmcgd2hldGhlciAtV3Vu aW5pdGlhbGl6ZWQgaXMgc3VwcG9ydGVkCmNvbmZpZ3VyZTo4OTcyOiBnY2MgLWMgLWczIC1P MiAtV2Vycm9yIC1XdW5pbml0aWFsaXplZCAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjg5 NzI6ICQ/ID0gMApjb25maWd1cmU6ODk4MjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjkxMTg6 IGNoZWNraW5nIHdoZXRoZXIgQyBjb21waWxlciBoYW5kbGVzIC1mbm8tY29tbW9uCmNvbmZp Z3VyZTo5MTM4OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgLWZuby1jb21tb24gICBjb25m dGVzdC5jICA+JjUKY29uZmlndXJlOjkxMzg6ICQ/ID0gMApjb25maWd1cmU6OTE1MDogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjkxMTg6IGNoZWNraW5nIHdoZXRoZXIgQyBjb21waWxlciBo YW5kbGVzIC1XYWxsCmNvbmZpZ3VyZTo5MTM4OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAg LVdhbGwgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjkxMzg6ICQ/ID0gMApjb25maWd1 cmU6OTE1MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjkxMTg6IGNoZWNraW5nIHdoZXRoZXIg QyBjb21waWxlciBoYW5kbGVzIC1XYXJpdGgtY29udmVyc2lvbgpjb25maWd1cmU6OTEzODog Z2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgIC1XYXJpdGgtY29udmVyc2lvbiAgIGNvbmZ0ZXN0 LmMgID4mNQpjb25maWd1cmU6OTEzODogJD8gPSAwCmNvbmZpZ3VyZTo5MTUwOiByZXN1bHQ6 IHllcwpjb25maWd1cmU6OTExODogY2hlY2tpbmcgd2hldGhlciBDIGNvbXBpbGVyIGhhbmRs ZXMgLVdkYXRlLXRpbWUKY29uZmlndXJlOjkxMzg6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8y ICAtV2RhdGUtdGltZSAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6OTEzODogJD8gPSAw CmNvbmZpZ3VyZTo5MTUwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6OTExODogY2hlY2tpbmcg d2hldGhlciBDIGNvbXBpbGVyIGhhbmRsZXMgLVdkaXNhYmxlZC1vcHRpbWl6YXRpb24KY29u ZmlndXJlOjkxMzg6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAtV2Rpc2FibGVkLW9wdGlt aXphdGlvbiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6OTEzODogJD8gPSAwCmNvbmZp Z3VyZTo5MTUwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6OTExODogY2hlY2tpbmcgd2hldGhl ciBDIGNvbXBpbGVyIGhhbmRsZXMgLVdkb3VibGUtcHJvbW90aW9uCmNvbmZpZ3VyZTo5MTM4 OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgLVdkb3VibGUtcHJvbW90aW9uICAgY29uZnRl c3QuYyAgPiY1CmNvbmZpZ3VyZTo5MTM4OiAkPyA9IDAKY29uZmlndXJlOjkxNTA6IHJlc3Vs dDogeWVzCmNvbmZpZ3VyZTo5MTE4OiBjaGVja2luZyB3aGV0aGVyIEMgY29tcGlsZXIgaGFu ZGxlcyAtV2R1cGxpY2F0ZWQtY29uZApjb25maWd1cmU6OTEzODogZ2NjIC1vIGNvbmZ0ZXN0 IC1nMyAtTzIgIC1XZHVwbGljYXRlZC1jb25kICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3Vy ZTo5MTM4OiAkPyA9IDAKY29uZmlndXJlOjkxNTA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo5 MTE4OiBjaGVja2luZyB3aGV0aGVyIEMgY29tcGlsZXIgaGFuZGxlcyAtV2V4dHJhCmNvbmZp Z3VyZTo5MTM4OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgLVdleHRyYSAgIGNvbmZ0ZXN0 LmMgID4mNQpjb25maWd1cmU6OTEzODogJD8gPSAwCmNvbmZpZ3VyZTo5MTUwOiByZXN1bHQ6 IHllcwpjb25maWd1cmU6OTExODogY2hlY2tpbmcgd2hldGhlciBDIGNvbXBpbGVyIGhhbmRs ZXMgLVdmb3JtYXQtc2lnbmVkbmVzcwpjb25maWd1cmU6OTEzODogZ2NjIC1vIGNvbmZ0ZXN0 IC1nMyAtTzIgIC1XZm9ybWF0LXNpZ25lZG5lc3MgICBjb25mdGVzdC5jICA+JjUKY29uZmln dXJlOjkxMzg6ICQ/ID0gMApjb25maWd1cmU6OTE1MDogcmVzdWx0OiB5ZXMKY29uZmlndXJl OjkxMTg6IGNoZWNraW5nIHdoZXRoZXIgQyBjb21waWxlciBoYW5kbGVzIC1XaW5pdC1zZWxm CmNvbmZpZ3VyZTo5MTM4OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgLVdpbml0LXNlbGYg ICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjkxMzg6ICQ/ID0gMApjb25maWd1cmU6OTE1 MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjkxMTg6IGNoZWNraW5nIHdoZXRoZXIgQyBjb21w aWxlciBoYW5kbGVzIC1XaW52YWxpZC1wY2gKY29uZmlndXJlOjkxMzg6IGdjYyAtbyBjb25m dGVzdCAtZzMgLU8yICAtV2ludmFsaWQtcGNoICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3Vy ZTo5MTM4OiAkPyA9IDAKY29uZmlndXJlOjkxNTA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo5 MTE4OiBjaGVja2luZyB3aGV0aGVyIEMgY29tcGlsZXIgaGFuZGxlcyAtV2xvZ2ljYWwtb3AK Y29uZmlndXJlOjkxMzg6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAtV2xvZ2ljYWwtb3Ag ICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjkxMzg6ICQ/ID0gMApjb25maWd1cmU6OTE1 MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjkxMTg6IGNoZWNraW5nIHdoZXRoZXIgQyBjb21w aWxlciBoYW5kbGVzIC1XbWlzc2luZy1kZWNsYXJhdGlvbnMKY29uZmlndXJlOjkxMzg6IGdj YyAtbyBjb25mdGVzdCAtZzMgLU8yICAtV21pc3NpbmctZGVjbGFyYXRpb25zICAgY29uZnRl c3QuYyAgPiY1CmNvbmZpZ3VyZTo5MTM4OiAkPyA9IDAKY29uZmlndXJlOjkxNTA6IHJlc3Vs dDogeWVzCmNvbmZpZ3VyZTo5MTE4OiBjaGVja2luZyB3aGV0aGVyIEMgY29tcGlsZXIgaGFu ZGxlcyAtV21pc3NpbmctaW5jbHVkZS1kaXJzCmNvbmZpZ3VyZTo5MTM4OiBnY2MgLW8gY29u ZnRlc3QgLWczIC1PMiAgLVdtaXNzaW5nLWluY2x1ZGUtZGlycyAgIGNvbmZ0ZXN0LmMgID4m NQpjb25maWd1cmU6OTEzODogJD8gPSAwCmNvbmZpZ3VyZTo5MTUwOiByZXN1bHQ6IHllcwpj b25maWd1cmU6OTExODogY2hlY2tpbmcgd2hldGhlciBDIGNvbXBpbGVyIGhhbmRsZXMgLVdt aXNzaW5nLXByb3RvdHlwZXMKY29uZmlndXJlOjkxMzg6IGdjYyAtbyBjb25mdGVzdCAtZzMg LU8yICAtV21pc3NpbmctcHJvdG90eXBlcyAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6 OTEzODogJD8gPSAwCmNvbmZpZ3VyZTo5MTUwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6OTEx ODogY2hlY2tpbmcgd2hldGhlciBDIGNvbXBpbGVyIGhhbmRsZXMgLVduZXN0ZWQtZXh0ZXJu cwpjb25maWd1cmU6OTEzODogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgIC1XbmVzdGVkLWV4 dGVybnMgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjkxMzg6ICQ/ID0gMApjb25maWd1 cmU6OTE1MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjkxMTg6IGNoZWNraW5nIHdoZXRoZXIg QyBjb21waWxlciBoYW5kbGVzIC1XbnVsbC1kZXJlZmVyZW5jZQpjb25maWd1cmU6OTEzODog Z2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgIC1XbnVsbC1kZXJlZmVyZW5jZSAgIGNvbmZ0ZXN0 LmMgID4mNQpjb25maWd1cmU6OTEzODogJD8gPSAwCmNvbmZpZ3VyZTo5MTUwOiByZXN1bHQ6 IHllcwpjb25maWd1cmU6OTExODogY2hlY2tpbmcgd2hldGhlciBDIGNvbXBpbGVyIGhhbmRs ZXMgLVdvbGQtc3R5bGUtZGVmaW5pdGlvbgpjb25maWd1cmU6OTEzODogZ2NjIC1vIGNvbmZ0 ZXN0IC1nMyAtTzIgIC1Xb2xkLXN0eWxlLWRlZmluaXRpb24gICBjb25mdGVzdC5jICA+JjUK Y29uZmlndXJlOjkxMzg6ICQ/ID0gMApjb25maWd1cmU6OTE1MDogcmVzdWx0OiB5ZXMKY29u ZmlndXJlOjkxMTg6IGNoZWNraW5nIHdoZXRoZXIgQyBjb21waWxlciBoYW5kbGVzIC1Xb3Bl bm1wLXNpbWQKY29uZmlndXJlOjkxMzg6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAtV29w ZW5tcC1zaW1kICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZTo5MTM4OiAkPyA9IDAKY29u ZmlndXJlOjkxNTA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo5MTE4OiBjaGVja2luZyB3aGV0 aGVyIEMgY29tcGlsZXIgaGFuZGxlcyAtV3BhY2tlZApjb25maWd1cmU6OTEzODogZ2NjIC1v IGNvbmZ0ZXN0IC1nMyAtTzIgIC1XcGFja2VkICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3Vy ZTo5MTM4OiAkPyA9IDAKY29uZmlndXJlOjkxNTA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo5 MTE4OiBjaGVja2luZyB3aGV0aGVyIEMgY29tcGlsZXIgaGFuZGxlcyAtV3BvaW50ZXItYXJp dGgKY29uZmlndXJlOjkxMzg6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAtV3BvaW50ZXIt YXJpdGggICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjkxMzg6ICQ/ID0gMApjb25maWd1 cmU6OTE1MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjkxMTg6IGNoZWNraW5nIHdoZXRoZXIg QyBjb21waWxlciBoYW5kbGVzIC1Xc3RyaWN0LXByb3RvdHlwZXMKY29uZmlndXJlOjkxMzg6 IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAtV3N0cmljdC1wcm90b3R5cGVzICAgY29uZnRl c3QuYyAgPiY1CmNvbmZpZ3VyZTo5MTM4OiAkPyA9IDAKY29uZmlndXJlOjkxNTA6IHJlc3Vs dDogeWVzCmNvbmZpZ3VyZTo5MTE4OiBjaGVja2luZyB3aGV0aGVyIEMgY29tcGlsZXIgaGFu ZGxlcyAtV3N1Z2dlc3QtYXR0cmlidXRlPWZvcm1hdApjb25maWd1cmU6OTEzODogZ2NjIC1v IGNvbmZ0ZXN0IC1nMyAtTzIgIC1Xc3VnZ2VzdC1hdHRyaWJ1dGU9Zm9ybWF0ICAgY29uZnRl c3QuYyAgPiY1CmNvbmZpZ3VyZTo5MTM4OiAkPyA9IDAKY29uZmlndXJlOjkxNTA6IHJlc3Vs dDogeWVzCmNvbmZpZ3VyZTo5MTE4OiBjaGVja2luZyB3aGV0aGVyIEMgY29tcGlsZXIgaGFu ZGxlcyAtV3N1Z2dlc3QtYXR0cmlidXRlPW5vcmV0dXJuCmNvbmZpZ3VyZTo5MTM4OiBnY2Mg LW8gY29uZnRlc3QgLWczIC1PMiAgLVdzdWdnZXN0LWF0dHJpYnV0ZT1ub3JldHVybiAgIGNv bmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6OTEzODogJD8gPSAwCmNvbmZpZ3VyZTo5MTUwOiBy ZXN1bHQ6IHllcwpjb25maWd1cmU6OTExODogY2hlY2tpbmcgd2hldGhlciBDIGNvbXBpbGVy IGhhbmRsZXMgLVdzdWdnZXN0LWZpbmFsLW1ldGhvZHMKY29uZmlndXJlOjkxMzg6IGdjYyAt byBjb25mdGVzdCAtZzMgLU8yICAtV3N1Z2dlc3QtZmluYWwtbWV0aG9kcyAgIGNvbmZ0ZXN0 LmMgID4mNQpjb25maWd1cmU6OTEzODogJD8gPSAwCmNvbmZpZ3VyZTo5MTUwOiByZXN1bHQ6 IHllcwpjb25maWd1cmU6OTExODogY2hlY2tpbmcgd2hldGhlciBDIGNvbXBpbGVyIGhhbmRs ZXMgLVdzdWdnZXN0LWZpbmFsLXR5cGVzCmNvbmZpZ3VyZTo5MTM4OiBnY2MgLW8gY29uZnRl c3QgLWczIC1PMiAgLVdzdWdnZXN0LWZpbmFsLXR5cGVzICAgY29uZnRlc3QuYyAgPiY1CmNv bmZpZ3VyZTo5MTM4OiAkPyA9IDAKY29uZmlndXJlOjkxNTA6IHJlc3VsdDogeWVzCmNvbmZp Z3VyZTo5MTE4OiBjaGVja2luZyB3aGV0aGVyIEMgY29tcGlsZXIgaGFuZGxlcyAtV3RyYW1w b2xpbmVzCmNvbmZpZ3VyZTo5MTM4OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgLVd0cmFt cG9saW5lcyAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6OTEzODogJD8gPSAwCmNvbmZp Z3VyZTo5MTUwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6OTExODogY2hlY2tpbmcgd2hldGhl ciBDIGNvbXBpbGVyIGhhbmRsZXMgLVd1bmluaXRpYWxpemVkCmNvbmZpZ3VyZTo5MTM4OiBn Y2MgLW8gY29uZnRlc3QgLWczIC1PMiAgLVd1bmluaXRpYWxpemVkICAgY29uZnRlc3QuYyAg PiY1CmNvbmZpZ3VyZTo5MTM4OiAkPyA9IDAKY29uZmlndXJlOjkxNTA6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZTo5MTE4OiBjaGVja2luZyB3aGV0aGVyIEMgY29tcGlsZXIgaGFuZGxlcyAt V3Vua25vd24tcHJhZ21hcwpjb25maWd1cmU6OTEzODogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAt TzIgIC1XdW5rbm93bi1wcmFnbWFzICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZTo5MTM4 OiAkPyA9IDAKY29uZmlndXJlOjkxNTA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo5MTE4OiBj aGVja2luZyB3aGV0aGVyIEMgY29tcGlsZXIgaGFuZGxlcyAtV3VudXNlZC1tYWNyb3MKY29u ZmlndXJlOjkxMzg6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAtV3VudXNlZC1tYWNyb3Mg ICBjb25mdGVzdC5jICA+JjUKY29uZnRlc3QuYzoyMjogd2FybmluZzogbWFjcm8gIkhBVkVf UFRZX0giIGlzIG5vdCB1c2VkIFstV3VudXNlZC1tYWNyb3NdCiAgIDIyIHwgI2RlZmluZSBI QVZFX1BUWV9IIDEKICAgICAgfCAKY29uZnRlc3QuYzoxMTogd2FybmluZzogbWFjcm8gIkhB VkVfU1RSSU5HX0giIGlzIG5vdCB1c2VkIFstV3VudXNlZC1tYWNyb3NdCiAgIDExIHwgI2Rl ZmluZSBIQVZFX1NUUklOR19IIDEKICAgICAgfCAKY29uZnRlc3QuYzo2Mzogd2FybmluZzog bWFjcm8gIl9fRVhURU5TSU9OU19fIiBpcyBub3QgdXNlZCBbLVd1bnVzZWQtbWFjcm9zXQog ICA2MyB8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQogICAgICB8IApjb25mdGVzdC5jOjU5 OiB3YXJuaW5nOiBtYWNybyAiX19TVERDX1dBTlRfSUVDXzYwNTU5X1RZUEVTX0VYVF9fIiBp cyBub3QgdXNlZCBbLVd1bnVzZWQtbWFjcm9zXQogICA1OSB8ICNkZWZpbmUgX19TVERDX1dB TlRfSUVDXzYwNTU5X1RZUEVTX0VYVF9fIDEKICAgICAgfCAKY29uZnRlc3QuYzo0ODogd2Fy bmluZzogbWFjcm8gIl9EQVJXSU5fQ19TT1VSQ0UiIGlzIG5vdCB1c2VkIFstV3VudXNlZC1t YWNyb3NdCiAgIDQ4IHwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKICAgICAgfCAKY29u ZnRlc3QuYzozOTogd2FybmluZzogbWFjcm8gIkhBVkVfU1lTX0NERUZTX0giIGlzIG5vdCB1 c2VkIFstV3VudXNlZC1tYWNyb3NdCiAgIDM5IHwgI2RlZmluZSBIQVZFX1NZU19DREVGU19I IDEKICAgICAgfCAKY29uZnRlc3QuYzo2Mjogd2FybmluZzogbWFjcm8gIl9UQU5ERU1fU09V UkNFIiBpcyBub3QgdXNlZCBbLVd1bnVzZWQtbWFjcm9zXQogICA2MiB8ICNkZWZpbmUgX1RB TkRFTV9TT1VSQ0UgMQogICAgICB8IApjb25mdGVzdC5jOjU2OiB3YXJuaW5nOiBtYWNybyAi X19TVERDX1dBTlRfSUVDXzYwNTU5X0RGUF9FWFRfXyIgaXMgbm90IHVzZWQgWy1XdW51c2Vk LW1hY3Jvc10KICAgNTYgfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9ERlBfRVhU X18gMQogICAgICB8IApjb25mdGVzdC5jOjU6IHdhcm5pbmc6IG1hY3JvICJQQUNLQUdFX1NU UklORyIgaXMgbm90IHVzZWQgWy1XdW51c2VkLW1hY3Jvc10KICAgIDUgfCAjZGVmaW5lIFBB Q0tBR0VfU1RSSU5HICJHTlUgRW1hY3MgMzAuMC41MCIKICAgICAgfCAKY29uZnRlc3QuYzox Mzogd2FybmluZzogbWFjcm8gIkhBVkVfU1RESU5UX0giIGlzIG5vdCB1c2VkIFstV3VudXNl ZC1tYWNyb3NdCiAgIDEzIHwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKICAgICAgfCAKY29u ZnRlc3QuYzoxMjogd2FybmluZzogbWFjcm8gIkhBVkVfSU5UVFlQRVNfSCIgaXMgbm90IHVz ZWQgWy1XdW51c2VkLW1hY3Jvc10KICAgMTIgfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAx CiAgICAgIHwgCmNvbmZ0ZXN0LmM6Mzogd2FybmluZzogbWFjcm8gIlBBQ0tBR0VfVEFSTkFN RSIgaXMgbm90IHVzZWQgWy1XdW51c2VkLW1hY3Jvc10KICAgIDMgfCAjZGVmaW5lIFBBQ0tB R0VfVEFSTkFNRSAiZW1hY3MiCiAgICAgIHwgCmNvbmZ0ZXN0LmM6MjA6IHdhcm5pbmc6IG1h Y3JvICJIQVZFX01BTExPQ19IIiBpcyBub3QgdXNlZCBbLVd1bnVzZWQtbWFjcm9zXQogICAy MCB8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCiAgICAgIHwgCmNvbmZ0ZXN0LmM6NTI6IHdh cm5pbmc6IG1hY3JvICJfT1BFTkJTRF9TT1VSQ0UiIGlzIG5vdCB1c2VkIFstV3VudXNlZC1t YWNyb3NdCiAgIDUyIHwgI2RlZmluZSBfT1BFTkJTRF9TT1VSQ0UgMQogICAgICB8IApjb25m dGVzdC5jOjEwOiB3YXJuaW5nOiBtYWNybyAiSEFWRV9TVERMSUJfSCIgaXMgbm90IHVzZWQg Wy1XdW51c2VkLW1hY3Jvc10KICAgMTAgfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQogICAg ICB8IApjb25mdGVzdC5jOjM3OiB3YXJuaW5nOiBtYWNybyAiSEFWRV9TWVNfVkZTX0giIGlz IG5vdCB1c2VkIFstV3VudXNlZC1tYWNyb3NdCiAgIDM3IHwgI2RlZmluZSBIQVZFX1NZU19W RlNfSCAxCiAgICAgIHwgCmNvbmZ0ZXN0LmM6MTY6IHdhcm5pbmc6IG1hY3JvICJIQVZFX1NZ U19UWVBFU19IIiBpcyBub3QgdXNlZCBbLVd1bnVzZWQtbWFjcm9zXQogICAxNiB8ICNkZWZp bmUgSEFWRV9TWVNfVFlQRVNfSCAxCiAgICAgIHwgCmNvbmZ0ZXN0LmM6MzA6IHdhcm5pbmc6 IG1hY3JvICJIQVZFX1NZU19TT0NLRVRfSCIgaXMgbm90IHVzZWQgWy1XdW51c2VkLW1hY3Jv c10KICAgMzAgfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKICAgICAgfCAKY29uZnRl c3QuYzoyNTogd2FybmluZzogbWFjcm8gIkhBVkVfUFdEX0giIGlzIG5vdCB1c2VkIFstV3Vu dXNlZC1tYWNyb3NdCiAgIDI1IHwgI2RlZmluZSBIQVZFX1BXRF9IIDEKICAgICAgfCAKY29u ZnRlc3QuYzo2OiB3YXJuaW5nOiBtYWNybyAiUEFDS0FHRV9CVUdSRVBPUlQiIGlzIG5vdCB1 c2VkIFstV3VudXNlZC1tYWNyb3NdCiAgICA2IHwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9S VCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgogICAgICB8IApjb25mdGVzdC5jOjI0OiB3YXJu aW5nOiBtYWNybyAiSEFWRV9TWVNfVVRTTkFNRV9IIiBpcyBub3QgdXNlZCBbLVd1bnVzZWQt bWFjcm9zXQogICAyNCB8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEKICAgICAgfCAK Y29uZnRlc3QuYzoxNzogd2FybmluZzogbWFjcm8gIkhBVkVfVU5JU1REX0giIGlzIG5vdCB1 c2VkIFstV3VudXNlZC1tYWNyb3NdCiAgIDE3IHwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEK ICAgICAgfCAKY29uZnRlc3QuYzo1Mzogd2FybmluZzogbWFjcm8gIl9QT1NJWF9QVEhSRUFE X1NFTUFOVElDUyIgaXMgbm90IHVzZWQgWy1XdW51c2VkLW1hY3Jvc10KICAgNTMgfCAjZGVm aW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAxCiAgICAgIHwgCmNvbmZ0ZXN0LmM6NjA6 IHdhcm5pbmc6IG1hY3JvICJfX1NURENfV0FOVF9MSUJfRVhUMl9fIiBpcyBub3QgdXNlZCBb LVd1bnVzZWQtbWFjcm9zXQogICA2MCB8ICNkZWZpbmUgX19TVERDX1dBTlRfTElCX0VYVDJf XyAxCiAgICAgIHwgCmNvbmZ0ZXN0LmM6MjM6IHdhcm5pbmc6IG1hY3JvICJIQVZFX1NZU19S RVNPVVJDRV9IIiBpcyBub3QgdXNlZCBbLVd1bnVzZWQtbWFjcm9zXQogICAyMyB8ICNkZWZp bmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCiAgICAgIHwgCmNvbmZ0ZXN0LmM6MzU6IHdhcm5p bmc6IG1hY3JvICJIQVZFX0VYRUNJTkZPX0giIGlzIG5vdCB1c2VkIFstV3VudXNlZC1tYWNy b3NdCiAgIDM1IHwgI2RlZmluZSBIQVZFX0VYRUNJTkZPX0ggMQogICAgICB8IApjb25mdGVz dC5jOjk6IHdhcm5pbmc6IG1hY3JvICJIQVZFX1NURElPX0giIGlzIG5vdCB1c2VkIFstV3Vu dXNlZC1tYWNyb3NdCiAgICA5IHwgI2RlZmluZSBIQVZFX1NURElPX0ggMQogICAgICB8IApj b25mdGVzdC5jOjU0OiB3YXJuaW5nOiBtYWNybyAiX19TVERDX1dBTlRfSUVDXzYwNTU5X0FU VFJJQlNfRVhUX18iIGlzIG5vdCB1c2VkIFstV3VudXNlZC1tYWNyb3NdCiAgIDU0IHwgI2Rl ZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfQVRUUklCU19FWFRfXyAxCiAgICAgIHwgCmNv bmZ0ZXN0LmM6MTQ6IHdhcm5pbmc6IG1hY3JvICJIQVZFX1NUUklOR1NfSCIgaXMgbm90IHVz ZWQgWy1XdW51c2VkLW1hY3Jvc10KICAgMTQgfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEK ICAgICAgfCAKY29uZnRlc3QuYzo1ODogd2FybmluZzogbWFjcm8gIl9fU1REQ19XQU5UX0lF Q182MDU1OV9GVU5DU19FWFRfXyIgaXMgbm90IHVzZWQgWy1XdW51c2VkLW1hY3Jvc10KICAg NTggfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9GVU5DU19FWFRfXyAxCiAgICAg IHwgCmNvbmZ0ZXN0LmM6MTU6IHdhcm5pbmc6IG1hY3JvICJIQVZFX1NZU19TVEFUX0giIGlz IG5vdCB1c2VkIFstV3VudXNlZC1tYWNyb3NdCiAgIDE1IHwgI2RlZmluZSBIQVZFX1NZU19T VEFUX0ggMQogICAgICB8IApjb25mdGVzdC5jOjQ2OiB3YXJuaW5nOiBtYWNybyAiU1REQ19I RUFERVJTIiBpcyBub3QgdXNlZCBbLVd1bnVzZWQtbWFjcm9zXQogICA0NiB8ICNkZWZpbmUg U1REQ19IRUFERVJTIDEKICAgICAgfCAKY29uZnRlc3QuYzozMzogd2FybmluZzogbWFjcm8g IkhBVkVfU1lTX1VOX0giIGlzIG5vdCB1c2VkIFstV3VudXNlZC1tYWNyb3NdCiAgIDMzIHwg I2RlZmluZSBIQVZFX1NZU19VTl9IIDEKICAgICAgfCAKY29uZnRlc3QuYzo0OiB3YXJuaW5n OiBtYWNybyAiUEFDS0FHRV9WRVJTSU9OIiBpcyBub3QgdXNlZCBbLVd1bnVzZWQtbWFjcm9z XQogICAgNCB8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIzMC4wLjUwIgogICAgICB8IApj b25mdGVzdC5jOjI6IHdhcm5pbmc6IG1hY3JvICJQQUNLQUdFX05BTUUiIGlzIG5vdCB1c2Vk IFstV3VudXNlZC1tYWNyb3NdCiAgICAyIHwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBF bWFjcyIKICAgICAgfCAKY29uZnRlc3QuYzo2MTogd2FybmluZzogbWFjcm8gIl9fU1REQ19X QU5UX01BVEhfU1BFQ19GVU5DU19fIiBpcyBub3QgdXNlZCBbLVd1bnVzZWQtbWFjcm9zXQog ICA2MSB8ICNkZWZpbmUgX19TVERDX1dBTlRfTUFUSF9TUEVDX0ZVTkNTX18gMQogICAgICB8 IApjb25mdGVzdC5jOjQwOiB3YXJuaW5nOiBtYWNybyAiSEFWRV9TWVNfVElNRV9IIiBpcyBu b3QgdXNlZCBbLVd1bnVzZWQtbWFjcm9zXQogICA0MCB8ICNkZWZpbmUgSEFWRV9TWVNfVElN RV9IIDEKICAgICAgfCAKY29uZnRlc3QuYzo1NTogd2FybmluZzogbWFjcm8gIl9fU1REQ19X QU5UX0lFQ182MDU1OV9CRlBfRVhUX18iIGlzIG5vdCB1c2VkIFstV3VudXNlZC1tYWNyb3Nd CiAgIDU1IHwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfQkZQX0VYVF9fIDEKICAg ICAgfCAKY29uZnRlc3QuYzo1MDogd2FybmluZzogbWFjcm8gIl9IUFVYX0FMVF9YT1BFTl9T T0NLRVRfQVBJIiBpcyBub3QgdXNlZCBbLVd1bnVzZWQtbWFjcm9zXQogICA1MCB8ICNkZWZp bmUgX0hQVVhfQUxUX1hPUEVOX1NPQ0tFVF9BUEkgMQogICAgICB8IApjb25mdGVzdC5jOjMy OiB3YXJuaW5nOiBtYWNybyAiSEFWRV9QVEhSRUFEX0giIGlzIG5vdCB1c2VkIFstV3VudXNl ZC1tYWNyb3NdCiAgIDMyIHwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCiAgICAgIHwgCmNv bmZ0ZXN0LmM6Mjk6IHdhcm5pbmc6IG1hY3JvICJIQVZFX1NBTklUSVpFUl9DT01NT05fSU5U RVJGQUNFX0RFRlNfSCIgaXMgbm90IHVzZWQgWy1XdW51c2VkLW1hY3Jvc10KICAgMjkgfCAj ZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0NPTU1PTl9JTlRFUkZBQ0VfREVGU19IIDEKICAgICAg fCAKY29uZnRlc3QuYzoyNjogd2FybmluZzogbWFjcm8gIkhBVkVfVVRNUF9IIiBpcyBub3Qg dXNlZCBbLVd1bnVzZWQtbWFjcm9zXQogICAyNiB8ICNkZWZpbmUgSEFWRV9VVE1QX0ggMQog ICAgICB8IApjb25mdGVzdC5jOjMxOiB3YXJuaW5nOiBtYWNybyAiSEFWRV9TWVNfUEFSQU1f SCIgaXMgbm90IHVzZWQgWy1XdW51c2VkLW1hY3Jvc10KICAgMzEgfCAjZGVmaW5lIEhBVkVf U1lTX1BBUkFNX0ggMQogICAgICB8IApjb25mdGVzdC5jOjIxOiB3YXJuaW5nOiBtYWNybyAi SEFWRV9TWVNfU1lTSU5GT19IIiBpcyBub3QgdXNlZCBbLVd1bnVzZWQtbWFjcm9zXQogICAy MSB8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKICAgICAgfCAKY29uZnRlc3QuYzo0 MTogd2FybmluZzogbWFjcm8gIkhBVkVfSUVFRTc1NF9IIiBpcyBub3QgdXNlZCBbLVd1bnVz ZWQtbWFjcm9zXQogICA0MSB8ICNkZWZpbmUgSEFWRV9JRUVFNzU0X0ggMQogICAgICB8IApj b25mdGVzdC5jOjg6IHdhcm5pbmc6IG1hY3JvICJIQVZFX1BEVU1QRVIiIGlzIG5vdCB1c2Vk IFstV3VudXNlZC1tYWNyb3NdCiAgICA4IHwgI2RlZmluZSBIQVZFX1BEVU1QRVIgMQogICAg ICB8IApjb25mdGVzdC5jOjE5OiB3YXJuaW5nOiBtYWNybyAiSEFWRV9MSU5VWF9GU19IIiBp cyBub3QgdXNlZCBbLVd1bnVzZWQtbWFjcm9zXQogICAxOSB8ICNkZWZpbmUgSEFWRV9MSU5V WF9GU19IIDEKICAgICAgfCAKY29uZnRlc3QuYzozNjogd2FybmluZzogbWFjcm8gIkhBVkVf U1RESU9fRVhUX0giIGlzIG5vdCB1c2VkIFstV3VudXNlZC1tYWNyb3NdCiAgIDM2IHwgI2Rl ZmluZSBIQVZFX1NURElPX0VYVF9IIDEKICAgICAgfCAKY29uZnRlc3QuYzo0Mjogd2Fybmlu ZzogbWFjcm8gIkhBVkVfTElNSVRTX0giIGlzIG5vdCB1c2VkIFstV3VudXNlZC1tYWNyb3Nd CiAgIDQyIHwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKICAgICAgfCAKY29uZnRlc3QuYzo0 NDogd2FybmluZzogbWFjcm8gIkhBVkVfU1REQk9PTF9IIiBpcyBub3QgdXNlZCBbLVd1bnVz ZWQtbWFjcm9zXQogICA0NCB8ICNkZWZpbmUgSEFWRV9TVERCT09MX0ggMQogICAgICB8IApj b25mdGVzdC5jOjQ1OiB3YXJuaW5nOiBtYWNybyAiSEFWRV9TWVNfUkFORE9NX0giIGlzIG5v dCB1c2VkIFstV3VudXNlZC1tYWNyb3NdCiAgIDQ1IHwgI2RlZmluZSBIQVZFX1NZU19SQU5E T01fSCAxCiAgICAgIHwgCmNvbmZ0ZXN0LmM6Mjc6IHdhcm5pbmc6IG1hY3JvICJIQVZFX1NB TklUSVpFUl9MU0FOX0lOVEVSRkFDRV9IIiBpcyBub3QgdXNlZCBbLVd1bnVzZWQtbWFjcm9z XQogICAyNyB8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfTFNBTl9JTlRFUkZBQ0VfSCAxCiAg ICAgIHwgCmNvbmZ0ZXN0LmM6Mzg6IHdhcm5pbmc6IG1hY3JvICJIQVZFX0dFVE9QVF9IIiBp cyBub3QgdXNlZCBbLVd1bnVzZWQtbWFjcm9zXQogICAzOCB8ICNkZWZpbmUgSEFWRV9HRVRP UFRfSCAxCiAgICAgIHwgCmNvbmZ0ZXN0LmM6NTc6IHdhcm5pbmc6IG1hY3JvICJfX1NURENf V0FOVF9JRUNfNjA1NTlfRVhUX18iIGlzIG5vdCB1c2VkIFstV3VudXNlZC1tYWNyb3NdCiAg IDU3IHwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRVhUX18gMQogICAgICB8IApj b25mdGVzdC5jOjI4OiB3YXJuaW5nOiBtYWNybyAiSEFWRV9TQU5JVElaRVJfQVNBTl9JTlRF UkZBQ0VfSCIgaXMgbm90IHVzZWQgWy1XdW51c2VkLW1hY3Jvc10KICAgMjggfCAjZGVmaW5l IEhBVkVfU0FOSVRJWkVSX0FTQU5fSU5URVJGQUNFX0ggMQogICAgICB8IApjb25mdGVzdC5j OjUxOiB3YXJuaW5nOiBtYWNybyAiX05FVEJTRF9TT1VSQ0UiIGlzIG5vdCB1c2VkIFstV3Vu dXNlZC1tYWNyb3NdCiAgIDUxIHwgI2RlZmluZSBfTkVUQlNEX1NPVVJDRSAxCiAgICAgIHwg CmNvbmZ0ZXN0LmM6Nzogd2FybmluZzogbWFjcm8gIlBBQ0tBR0VfVVJMIiBpcyBub3QgdXNl ZCBbLVd1bnVzZWQtbWFjcm9zXQogICAgNyB8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHBz Oi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgogICAgICB8IApjb25mdGVzdC5jOjQ3 OiB3YXJuaW5nOiBtYWNybyAiX0FMTF9TT1VSQ0UiIGlzIG5vdCB1c2VkIFstV3VudXNlZC1t YWNyb3NdCiAgIDQ3IHwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCiAgICAgIHwgCmNvbmZ0ZXN0 LmM6NDk6IHdhcm5pbmc6IG1hY3JvICJfR05VX1NPVVJDRSIgaXMgbm90IHVzZWQgWy1XdW51 c2VkLW1hY3Jvc10KICAgNDkgfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKICAgICAgfCAKY29u ZnRlc3QuYzoxODogd2FybmluZzogbWFjcm8gIkhBVkVfV0NIQVJfSCIgaXMgbm90IHVzZWQg Wy1XdW51c2VkLW1hY3Jvc10KICAgMTggfCAjZGVmaW5lIEhBVkVfV0NIQVJfSCAxCiAgICAg IHwgCmNvbmZ0ZXN0LmM6MzQ6IHdhcm5pbmc6IG1hY3JvICJIQVZFX0RJUkVOVF9IIiBpcyBu b3QgdXNlZCBbLVd1bnVzZWQtbWFjcm9zXQogICAzNCB8ICNkZWZpbmUgSEFWRV9ESVJFTlRf SCAxCiAgICAgIHwgCmNvbmZ0ZXN0LmM6NDM6IHdhcm5pbmc6IG1hY3JvICJIQVZFX1NZU19T RUxFQ1RfSCIgaXMgbm90IHVzZWQgWy1XdW51c2VkLW1hY3Jvc10KICAgNDMgfCAjZGVmaW5l IEhBVkVfU1lTX1NFTEVDVF9IIDEKICAgICAgfCAKY29uZmlndXJlOjkxMzg6ICQ/ID0gMApj b25maWd1cmU6OTE1MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjkxMTg6IGNoZWNraW5nIHdo ZXRoZXIgQyBjb21waWxlciBoYW5kbGVzIC1XdmFyaWFkaWMtbWFjcm9zCmNvbmZpZ3VyZTo5 MTM4OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgLVd2YXJpYWRpYy1tYWNyb3MgICBjb25m dGVzdC5jICA+JjUKY29uZmlndXJlOjkxMzg6ICQ/ID0gMApjb25maWd1cmU6OTE1MDogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjkxMTg6IGNoZWNraW5nIHdoZXRoZXIgQyBjb21waWxlciBo YW5kbGVzIC1XdmVjdG9yLW9wZXJhdGlvbi1wZXJmb3JtYW5jZQpjb25maWd1cmU6OTEzODog Z2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgIC1XdmVjdG9yLW9wZXJhdGlvbi1wZXJmb3JtYW5j ZSAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6OTEzODogJD8gPSAwCmNvbmZpZ3VyZTo5 MTUwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6OTExODogY2hlY2tpbmcgd2hldGhlciBDIGNv bXBpbGVyIGhhbmRsZXMgLVd3cml0ZS1zdHJpbmdzCmNvbmZpZ3VyZTo5MTM4OiBnY2MgLW8g Y29uZnRlc3QgLWczIC1PMiAgLVd3cml0ZS1zdHJpbmdzICAgY29uZnRlc3QuYyAgPiY1CmNv bmZpZ3VyZTo5MTM4OiAkPyA9IDAKY29uZmlndXJlOjkxNTA6IHJlc3VsdDogeWVzCmNvbmZp Z3VyZTo5MTE4OiBjaGVja2luZyB3aGV0aGVyIEMgY29tcGlsZXIgaGFuZGxlcyAtV2FycmF5 LWJvdW5kcz0yCmNvbmZpZ3VyZTo5MTM4OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgLVdh cnJheS1ib3VuZHM9MiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6OTEzODogJD8gPSAw CmNvbmZpZ3VyZTo5MTUwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6OTExODogY2hlY2tpbmcg d2hldGhlciBDIGNvbXBpbGVyIGhhbmRsZXMgLVdhdHRyaWJ1dGUtYWxpYXM9Mgpjb25maWd1 cmU6OTEzODogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgIC1XYXR0cmlidXRlLWFsaWFzPTIg ICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjkxMzg6ICQ/ID0gMApjb25maWd1cmU6OTE1 MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjkxMTg6IGNoZWNraW5nIHdoZXRoZXIgQyBjb21w aWxlciBoYW5kbGVzIC1XZm9ybWF0PTIKY29uZmlndXJlOjkxMzg6IGdjYyAtbyBjb25mdGVz dCAtZzMgLU8yICAtV2Zvcm1hdD0yICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZTo5MTM4 OiAkPyA9IDAKY29uZmlndXJlOjkxNTA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo5MTE4OiBj aGVja2luZyB3aGV0aGVyIEMgY29tcGlsZXIgaGFuZGxlcyAtV2Zvcm1hdC10cnVuY2F0aW9u PTIKY29uZmlndXJlOjkxMzg6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAtV2Zvcm1hdC10 cnVuY2F0aW9uPTIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjkxMzg6ICQ/ID0gMApj b25maWd1cmU6OTE1MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjkxMTg6IGNoZWNraW5nIHdo ZXRoZXIgQyBjb21waWxlciBoYW5kbGVzIC1XaW1wbGljaXQtZmFsbHRocm91Z2g9NQpjb25m aWd1cmU6OTEzODogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgIC1XaW1wbGljaXQtZmFsbHRo cm91Z2g9NSAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6OTEzODogJD8gPSAwCmNvbmZp Z3VyZTo5MTUwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6OTExODogY2hlY2tpbmcgd2hldGhl ciBDIGNvbXBpbGVyIGhhbmRsZXMgLVdzaGlmdC1vdmVyZmxvdz0yCmNvbmZpZ3VyZTo5MTM4 OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgLVdzaGlmdC1vdmVyZmxvdz0yICAgY29uZnRl c3QuYyAgPiY1CmNvbmZpZ3VyZTo5MTM4OiAkPyA9IDAKY29uZmlndXJlOjkxNTA6IHJlc3Vs dDogeWVzCmNvbmZpZ3VyZTo5MTE4OiBjaGVja2luZyB3aGV0aGVyIEMgY29tcGlsZXIgaGFu ZGxlcyAtV3VzZS1hZnRlci1mcmVlPTMKY29uZmlndXJlOjkxMzg6IGdjYyAtbyBjb25mdGVz dCAtZzMgLU8yICAtV3VzZS1hZnRlci1mcmVlPTMgICBjb25mdGVzdC5jICA+JjUKY29uZmln dXJlOjkxMzg6ICQ/ID0gMApjb25maWd1cmU6OTE1MDogcmVzdWx0OiB5ZXMKY29uZmlndXJl OjkxMTg6IGNoZWNraW5nIHdoZXRoZXIgQyBjb21waWxlciBoYW5kbGVzIC1XdmxhLWxhcmdl ci10aGFuPTQwMzEKY29uZmlndXJlOjkxMzg6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAt V3ZsYS1sYXJnZXItdGhhbj00MDMxICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZTo5MTM4 OiAkPyA9IDAKY29uZmlndXJlOjkxNTA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo5MTYxOiBj aGVja2luZyB3aGV0aGVyIEMgY29tcGlsZXIgaGFuZGxlcyAtV3JlZHVuZGFudC1kZWNscwpj b25maWd1cmU6OTE4MTogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgIC1XcmVkdW5kYW50LWRl Y2xzICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZTo5MTgxOiAkPyA9IDAKY29uZmlndXJl OjkxOTI6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo5MjAyOiBjaGVja2luZyB3aGV0aGVyIEMg Y29tcGlsZXIgaGFuZGxlcyAtV25vLW1pc3NpbmctZmllbGQtaW5pdGlhbGl6ZXJzCmNvbmZp Z3VyZTo5MjIyOiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgLVdtaXNzaW5nLWZpZWxkLWlu aXRpYWxpemVycyAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6OTIyMjogJD8gPSAwCmNv bmZpZ3VyZTo5MjMzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6OTI0MzogY2hlY2tpbmcgd2hl dGhlciBDIGNvbXBpbGVyIGhhbmRsZXMgLVduby1vdmVycmlkZS1pbml0CmNvbmZpZ3VyZTo5 MjYzOiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgLVdvdmVycmlkZS1pbml0ICAgY29uZnRl c3QuYyAgPiY1CmNvbmZpZ3VyZTo5MjYzOiAkPyA9IDAKY29uZmlndXJlOjkyNzQ6IHJlc3Vs dDogeWVzCmNvbmZpZ3VyZTo5Mjg0OiBjaGVja2luZyB3aGV0aGVyIEMgY29tcGlsZXIgaGFu ZGxlcyAtV25vLXNpZ24tY29tcGFyZQpjb25maWd1cmU6OTMwNDogZ2NjIC1vIGNvbmZ0ZXN0 IC1nMyAtTzIgIC1Xc2lnbi1jb21wYXJlICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZTo5 MzA0OiAkPyA9IDAKY29uZmlndXJlOjkzMTU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo5MzI1 OiBjaGVja2luZyB3aGV0aGVyIEMgY29tcGlsZXIgaGFuZGxlcyAtV25vLXR5cGUtbGltaXRz CmNvbmZpZ3VyZTo5MzQ1OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgLVd0eXBlLWxpbWl0 cyAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6OTM0NTogJD8gPSAwCmNvbmZpZ3VyZTo5 MzU2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6OTM2NjogY2hlY2tpbmcgd2hldGhlciBDIGNv bXBpbGVyIGhhbmRsZXMgLVduby11bnVzZWQtcGFyYW1ldGVyCmNvbmZpZ3VyZTo5Mzg2OiBn Y2MgLW8gY29uZnRlc3QgLWczIC1PMiAgLVd1bnVzZWQtcGFyYW1ldGVyICAgY29uZnRlc3Qu YyAgPiY1CmNvbmZpZ3VyZTo5Mzg2OiAkPyA9IDAKY29uZmlndXJlOjkzOTc6IHJlc3VsdDog eWVzCmNvbmZpZ3VyZTo5NDA3OiBjaGVja2luZyB3aGV0aGVyIEMgY29tcGlsZXIgaGFuZGxl cyAtV25vLWZvcm1hdC1ub25saXRlcmFsCmNvbmZpZ3VyZTo5NDI3OiBnY2MgLW8gY29uZnRl c3QgLWczIC1PMiAgLVdmb3JtYXQtbm9ubGl0ZXJhbCAgIGNvbmZ0ZXN0LmMgID4mNQpjb25m aWd1cmU6OTQyNzogJD8gPSAwCmNvbmZpZ3VyZTo5NDM4OiByZXN1bHQ6IHllcwpjb25maWd1 cmU6OTQ0ODogY2hlY2tpbmcgd2hldGhlciBDIGNvbXBpbGVyIGhhbmRsZXMgLVduby1iaWRp LWNoYXJzCmNvbmZpZ3VyZTo5NDY4OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgLVdiaWRp LWNoYXJzICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZTo5NDY4OiAkPyA9IDAKY29uZmln dXJlOjk0Nzk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMDA5OTogY2hlY2tpbmcgZm9yIGEg QlNELWNvbXBhdGlibGUgaW5zdGFsbApjb25maWd1cmU6MTAxNzI6IHJlc3VsdDogL3Vzci9i aW4vaW5zdGFsbCAtYwpjb25maWd1cmU6MTAxODY6IGNoZWNraW5nIGNvbW1hbmQgdG8gc3lt bGluayBmaWxlcyBpbiB0aGUgc2FtZSBkaXJlY3RvcnkKY29uZmlndXJlOjEwMjA4OiByZXN1 bHQ6IGxuIC1zCmNvbmZpZ3VyZToxMDIyMjogY2hlY2tpbmcgZm9yIGluc3RhbGwtaW5mbwpj b25maWd1cmU6MTAyNDU6IGZvdW5kIC91c3IvYmluL2luc3RhbGwtaW5mbwpjb25maWd1cmU6 MTAyNTg6IHJlc3VsdDogL3Vzci9iaW4vaW5zdGFsbC1pbmZvCmNvbmZpZ3VyZToxMDI2ODog Y2hlY2tpbmcgZm9yIGd6aXAKY29uZmlndXJlOjEwMjkxOiBmb3VuZCAvdXNyL2Jpbi9nemlw CmNvbmZpZ3VyZToxMDMwMzogcmVzdWx0OiAvdXNyL2Jpbi9nemlwCmNvbmZpZ3VyZToxMDMx OTogY2hlY2tpbmcgZm9yICdmaW5kJyBhcmdzIHRvIGRlbGV0ZSBhIGZpbGUKY29uZmlndXJl OjEwMzMxOiByZXN1bHQ6IC1kZWxldGUKY29uZmlndXJlOjEwNDU4OiBjaGVja2luZyBmb3Ig YnJldwpjb25maWd1cmU6MTA0OTM6IHJlc3VsdDogbm8KY29uZmlndXJlOjEwNjU1OiBjaGVj a2luZyBmb3IgLXpub2NvbWJyZWxvYwpjb25maWd1cmU6MTA2ODg6IHJlc3VsdDogbm90IG5l ZWRlZApjb25maWd1cmU6MTA2OTc6IGNoZWNraW5nIHdoZXRoZXIgYWRkcmVzc2VzIGFyZSBz YW5pdGl6ZWQKY29uZmlndXJlOjEwNzIxOiBnY2MgLWMgLWczIC1PMiAgY29uZnRlc3QuYyA+ JjUKY29uZnRlc3QuYzo3MToxODogZXJyb3I6IGV4cGVjdGVkICc9JywgJywnLCAnOycsICdh c20nIG9yICdfX2F0dHJpYnV0ZV9fJyBiZWZvcmUgc3RyaW5nIGNvbnN0YW50CiAgIDcxIHwg ICAgICAgICAgICBlcnJvciAiQWRkcmVzc2VzIGFyZSBub3Qgc2FuaXRpemVkLiI7CiAgICAg IHwgICAgICAgICAgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KY29u ZmlndXJlOjEwNzIxOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6Cnwg LyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwg I2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJT SU9OICIzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAzMC4w LjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9y ZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJodHRwczovL3d3dy5nbnUub3JnL3NvZnR3YXJl L2VtYWNzLyIKfCAjZGVmaW5lIEhBVkVfUERVTVBFUiAxCnwgI2RlZmluZSBIQVZFX1NURElP X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19I IDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9I IDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1RE X0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfRlNf SCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lO Rk9fSCAxCnwgI2RlZmluZSBIQVZFX1BUWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09V UkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVf UFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1QX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVEla RVJfTFNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9BU0FOX0lO VEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0NPTU1PTl9JTlRFUkZBQ0Vf REVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfVU5fSCAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVf RVhFQ0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1NURElPX0VYVF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1ZGU19IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfQ0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUg SEFWRV9JRUVFNzU0X0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NUREJPT0xfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19SQU5ET01fSCAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZp bmUgX0FMTF9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmlu ZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBfSFBVWF9BTFRfWE9QRU5fU09DS0VUX0FQSSAx CnwgI2RlZmluZSBfTkVUQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfT1BFTkJTRF9TT1VSQ0Ug MQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9fU1RE Q19XQU5UX0lFQ182MDU1OV9BVFRSSUJTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5U X0lFQ182MDU1OV9CRlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5 X0RGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRVhUX18gMQp8 ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0ZVTkNTX0VYVF9fIDEKfCAjZGVmaW5l IF9fU1REQ19XQU5UX0lFQ182MDU1OV9UWVBFU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENf V0FOVF9MSUJfRVhUMl9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX01BVEhfU1BFQ19GVU5D U19fIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9O U19fIDEKfCAjZGVmaW5lIEdDQ19MSU5UIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwg I2lmbmRlZiBfX2hhc19mZWF0dXJlCnwgCSAgI2RlZmluZSBfX2hhc19mZWF0dXJlKGYpIDAK fCAJICAjZW5kaWYKfCAJICAjaWYgZGVmaW5lZCBfX1NBTklUSVpFX0FERFJFU1NfXyB8fCBf X2hhc19mZWF0dXJlIChhZGRyZXNzX3Nhbml0aXplcikKfCAJICAjZWxzZQp8IAkgICBlcnJv ciAiQWRkcmVzc2VzIGFyZSBub3Qgc2FuaXRpemVkLiI7CnwgCSAgI2VuZGlmCnwgCnwgaW50 CnwgbWFpbiAodm9pZCkKfCB7CnwgCnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3Vy ZToxMDcyOTogcmVzdWx0OiBubwpjb25maWd1cmU6MTA4OTQ6IGNoZWNraW5nIGZvciBtYXRo IGxpYnJhcnkKY29uZmlndXJlOjEwOTQ1OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAg Y29uZnRlc3QuYyAgPiY1IAovdXNyL2Jpbi9sZDogL3RtcC9jY0p4UHdOay5vOiBpbiBmdW5j dGlvbiBgbWFpbic6Ci9hcHAvZW1hY3MvY29uZnRlc3QuYzo3NTogdW5kZWZpbmVkIHJlZmVy ZW5jZSB0byBgYWNvcycKL3Vzci9iaW4vbGQ6IC9hcHAvZW1hY3MvY29uZnRlc3QuYzo3Njog dW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgYXNpbicKL3Vzci9iaW4vbGQ6IC9hcHAvZW1hY3Mv Y29uZnRlc3QuYzo3NzogdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgYXRhbicKL3Vzci9iaW4v bGQ6IC9hcHAvZW1hY3MvY29uZnRlc3QuYzo3ODogdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBg YXRhbjInCi91c3IvYmluL2xkOiAvYXBwL2VtYWNzL2NvbmZ0ZXN0LmM6ODE6IHVuZGVmaW5l ZCByZWZlcmVuY2UgdG8gYGNvcycKL3Vzci9iaW4vbGQ6IC9hcHAvZW1hY3MvY29uZnRlc3Qu Yzo4MjogdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgZXhwJwovdXNyL2Jpbi9sZDogL2FwcC9l bWFjcy9jb25mdGVzdC5jOjg1OiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBmbW9kJwovdXNy L2Jpbi9sZDogL2FwcC9lbWFjcy9jb25mdGVzdC5jOjg4OiB1bmRlZmluZWQgcmVmZXJlbmNl IHRvIGBsb2cnCi91c3IvYmluL2xkOiAvYXBwL2VtYWNzL2NvbmZ0ZXN0LmM6ODk6IHVuZGVm aW5lZCByZWZlcmVuY2UgdG8gYGxvZzInCi91c3IvYmluL2xkOiAvYXBwL2VtYWNzL2NvbmZ0 ZXN0LmM6OTA6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYGxvZzEwJwovdXNyL2Jpbi9sZDog L2FwcC9lbWFjcy9jb25mdGVzdC5jOjkxOiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBwb3cn Ci91c3IvYmluL2xkOiAvYXBwL2VtYWNzL2NvbmZ0ZXN0LmM6OTQ6IHVuZGVmaW5lZCByZWZl cmVuY2UgdG8gYHNpbicKL3Vzci9iaW4vbGQ6IC9hcHAvZW1hY3MvY29uZnRlc3QuYzo5Njog dW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgdGFuJwovdXNyL2Jpbi9sZDogL2FwcC9lbWFjcy9j b25mdGVzdC5jOjk5OiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBwb3dmJwovdXNyL2Jpbi9s ZDogL2FwcC9lbWFjcy9jb25mdGVzdC5jOjEwMDogdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBg aWxvZ2InCi91c3IvYmluL2xkOiAvYXBwL2VtYWNzL2NvbmZ0ZXN0LmM6MTAyOiB1bmRlZmlu ZWQgcmVmZXJlbmNlIHRvIGBscmludCcKL3Vzci9iaW4vbGQ6IC9hcHAvZW1hY3MvY29uZnRl c3QuYzo5NTogdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgc3FydCcKY29sbGVjdDI6IGVycm9y OiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVzCmNvbmZpZ3VyZToxMDk0NTogJD8gPSAxCmNv bmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVm aW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1F ICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMzAuMC41MCIKfCAjZGVmaW5l IFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1hY3MgMzAuMC41MCIKfCAjZGVmaW5lIFBBQ0tBR0Vf QlVHUkVQT1JUICJidWctZ251LWVtYWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdFX1VS TCAiaHR0cHM6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmluZSBIQVZF X1BEVU1QRVIgMQp8ICNkZWZpbmUgSEFWRV9TVERJT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RE TElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZ UEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklO R1NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf VFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfV0NI QVJfSCAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZTX0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxM T0NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TWVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9Q VFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVf VVRNUF9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0xTQU5fSU5URVJGQUNFX0ggMQp8 ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQVNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBI QVZFX1NBTklUSVpFUl9DT01NT05fSU5URVJGQUNFX0RFRlNfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5l IEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUg SEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX0VYRUNJTkZPX0ggMQp8ICNkZWZpbmUg SEFWRV9TVERJT19FWFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19WRlNfSCAxCnwgI2RlZmlu ZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0NERUZTX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfSUVFRTc1NF9IIDEKfCAjZGVm aW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVERCT09MX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkFORE9NX0ggMQp8 ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAjZGVm aW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZp bmUgX0hQVVhfQUxUX1hPUEVOX1NPQ0tFVF9BUEkgMQp8ICNkZWZpbmUgX05FVEJTRF9TT1VS Q0UgMQp8ICNkZWZpbmUgX09QRU5CU0RfU09VUkNFIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhS RUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfQVRUUklC U19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfQkZQX0VYVF9fIDEK fCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9ERlBfRVhUX18gMQp8ICNkZWZpbmUg X19TVERDX1dBTlRfSUVDXzYwNTU5X0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lF Q182MDU1OV9GVU5DU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlf VFlQRVNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfTElCX0VYVDJfXyAxCnwgI2Rl ZmluZSBfX1NURENfV0FOVF9NQVRIX1NQRUNfRlVOQ1NfXyAxCnwgI2RlZmluZSBfVEFOREVN X1NPVVJDRSAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBHQ0NfTElO VCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8IAp8IAkjaW5jbHVkZSA8bWF0aC5oPgp8 IAlpbnQKfCAJbWFpbiAoaW50IGFyZ2MsIGNoYXIgKiphcmd2KQp8IAl7CnwgCSAgZG91Ymxl IGQgPSBhcmdjOwp8IAkgIGZsb2F0IGYgPSBhcmdjOwp8IAkgIGludCBpID0gYXJnYzsKfCAJ ICBsb25nIGwgPSBhcmdjOwp8IAkgIGQgPSBhY29zIChkKTsKfCAJICBkID0gYXNpbiAoZCk7 CnwgCSAgZCA9IGF0YW4gKGQpOwp8IAkgIGQgPSBhdGFuMiAoZCwgZCk7CnwgCSAgZCA9IGNl aWwgKGQpOwp8IAkgIGQgPSBjb3B5c2lnbiAoZCwgZCk7CnwgCSAgZCA9IGNvcyAoZCk7Cnwg CSAgZCA9IGV4cCAoZCk7CnwgCSAgZCA9IGZhYnMgKGQpOwp8IAkgIGQgPSBmbG9vciAoZCk7 CnwgCSAgZCA9IGZtb2QgKGQsIGQpOwp8IAkgIGQgPSBmcmV4cCAoZCwgJmkpOwp8IAkgIGQg PSBsZGV4cCAoZCwgaSk7CnwgCSAgZCA9IGxvZyAoZCk7CnwgCSAgZCA9IGxvZzIgKGQpOwp8 IAkgIGQgPSBsb2cxMCAoZCk7CnwgCSAgZCA9IHBvdyAoZCwgZCk7CnwgCSAgZCA9IHJpbnQg KGQpOwp8IAkgIGQgPSBzY2FsYm4gKGQsIGwpOwp8IAkgIGQgPSBzaW4gKGQpOwp8IAkgIGQg PSBzcXJ0IChkKTsKfCAJICBkID0gdGFuIChkKTsKfCAJICBkID0gdHJ1bmMgKGQpOwp8IAkg IGYgPSBmYWJzZiAoZik7CnwgCSAgZiA9IHBvd2YgKGYsIGYpOwp8IAkgIGkgPSBpbG9nYiAo ZCk7CnwgCSAgaSA9IHNpZ25iaXQgKGQpOwp8IAkgIGwgPSBscmludCAoZCk7CnwgCSAgbCA9 IGxyb3VuZCAoZCk7CnwgCSAgcmV0dXJuIGQgPT0gZiAmJiBpID09IGw7CnwgCX0KfCAKY29u ZmlndXJlOjEwOTUwOiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgY29uZnRlc3QuYyAt bG0gID4mNSAKY29uZmlndXJlOjEwOTUwOiAkPyA9IDAKY29uZmlndXJlOjEwOTYzOiByZXN1 bHQ6IC1sbQpjb25maWd1cmU6MTEwNzA6IGNoZWNraW5nIGZvciBwa2ctY29uZmlnCmNvbmZp Z3VyZToxMTA5MzogZm91bmQgL3Vzci9iaW4vcGtnLWNvbmZpZwpjb25maWd1cmU6MTExMDU6 IHJlc3VsdDogL3Vzci9iaW4vcGtnLWNvbmZpZwpjb25maWd1cmU6MTExMzA6IGNoZWNraW5n IHBrZy1jb25maWcgaXMgYXQgbGVhc3QgdmVyc2lvbiAwLjkuMApjb25maWd1cmU6MTExMzM6 IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMTE1MDogY2hlY2tpbmcgZm9yIG1hY2hpbmUvc291 bmRjYXJkLmgKY29uZmlndXJlOjExMTUwOiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5j ID4mNQpjb25mdGVzdC5jOjc0OjEwOiBmYXRhbCBlcnJvcjogbWFjaGluZS9zb3VuZGNhcmQu aDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQogICA3NCB8ICNpbmNsdWRlIDxtYWNoaW5l L3NvdW5kY2FyZC5oPgogICAgICB8ICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fgpj b21waWxhdGlvbiB0ZXJtaW5hdGVkLgpjb25maWd1cmU6MTExNTA6ICQ/ID0gMQpjb25maWd1 cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQ QUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1h Y3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMwLjAuNTAiCnwgI2RlZmluZSBQQUNL QUdFX1NUUklORyAiR05VIEVtYWNzIDMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JF UE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0 dHBzOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgSEFWRV9QRFVN UEVSIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9I IDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19I IDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVT X0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0gg MQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19V VFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBf SCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9MU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVm aW5lIEhBVkVfU0FOSVRJWkVSX0FTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9T QU5JVElaRVJfQ09NTU9OX0lOVEVSRkFDRV9ERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf U09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZF X1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVf RElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVf U1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVkZTX0ggMQp8ICNkZWZpbmUgSEFW RV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19DREVGU19IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX0lFRUU3NTRfSCAxCnwgI2RlZmluZSBI QVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5l IEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JBTkRPTV9IIDEKfCAjZGVm aW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBf REFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9I UFVYX0FMVF9YT1BFTl9TT0NLRVRfQVBJIDEKfCAjZGVmaW5lIF9ORVRCU0RfU09VUkNFIDEK fCAjZGVmaW5lIF9PUEVOQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9T RU1BTlRJQ1MgMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0FUVFJJQlNfRVhU X18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0JGUF9FWFRfXyAxCnwgI2Rl ZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfREZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1RE Q19XQU5UX0lFQ182MDU1OV9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1 NTlfRlVOQ1NfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X1RZUEVT X0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0xJQl9FWFQyX18gMQp8ICNkZWZpbmUg X19TVERDX1dBTlRfTUFUSF9TUEVDX0ZVTkNTX18gMQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VS Q0UgMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgR0NDX0xJTlQgMQp8 ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAvKiBlbmQgY29uZmRlZnMuaC4g ICovCnwgCnwgICAgICNpZmRlZiBfX01JTkdXMzJfXwp8ICAgICAjZGVmaW5lIFdJTjMyX0xF QU5fQU5EX01FQU4KfCAgICAgI2luY2x1ZGUgPHdpbmRvd3MuaD4KfCAgICAgI2VuZGlmCnwg CnwgCnwgI2luY2x1ZGUgPG1hY2hpbmUvc291bmRjYXJkLmg+CmNvbmZpZ3VyZToxMTE1MDog cmVzdWx0OiBubwpjb25maWd1cmU6MTExNTA6IGNoZWNraW5nIGZvciBzeXMvc291bmRjYXJk LmgKY29uZmlndXJlOjExMTUwOiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpj b25maWd1cmU6MTExNTA6ICQ/ID0gMApjb25maWd1cmU6MTExNTA6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZToxMTE1MDogY2hlY2tpbmcgZm9yIHNvdW5kY2FyZC5oCmNvbmZpZ3VyZToxMTE1 MDogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzo3NToxMDog ZmF0YWwgZXJyb3I6IHNvdW5kY2FyZC5oOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CiAg IDc1IHwgI2luY2x1ZGUgPHNvdW5kY2FyZC5oPgogICAgICB8ICAgICAgICAgIF5+fn5+fn5+ fn5+fn4KY29tcGlsYXRpb24gdGVybWluYXRlZC4KY29uZmlndXJlOjExMTUwOiAkPyA9IDEK Y29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNk ZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5B TUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIzMC4wLjUwIgp8ICNkZWZp bmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FH RV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0Vf VVJMICJodHRwczovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIEhB VkVfUERVTVBFUiAxCnwgI2RlZmluZSBIQVZFX1NURElPX0ggMQp8ICNkZWZpbmUgSEFWRV9T VERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfSU5U VFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RS SU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9X Q0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfRlNfSCAxCnwgI2RlZmluZSBIQVZFX01B TExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmluZSBIQVZF X1BUWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFW RV9VVE1QX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfTFNBTl9JTlRFUkZBQ0VfSCAx CnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9BU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5l IEhBVkVfU0FOSVRJWkVSX0NPTU1PTl9JTlRFUkZBQ0VfREVGU19IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZp bmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwgI2RlZmlu ZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAxCnwgI2RlZmlu ZSBIQVZFX1NURElPX0VYVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1ZGU19IIDEKfCAjZGVm aW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfQ0RFRlNfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9JRUVFNzU0X0ggMQp8ICNk ZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwg I2RlZmluZSBIQVZFX1NUREJPT0xfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SQU5ET01fSCAx CnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8ICNk ZWZpbmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2Rl ZmluZSBfSFBVWF9BTFRfWE9QRU5fU09DS0VUX0FQSSAxCnwgI2RlZmluZSBfTkVUQlNEX1NP VVJDRSAxCnwgI2RlZmluZSBfT1BFTkJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUgX1BPU0lYX1BU SFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9BVFRS SUJTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9CRlBfRVhUX18g MQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0RGUF9FWFRfXyAxCnwgI2RlZmlu ZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRf SUVDXzYwNTU5X0ZVTkNTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1 OV9UWVBFU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9MSUJfRVhUMl9fIDEKfCAj ZGVmaW5lIF9fU1REQ19XQU5UX01BVEhfU1BFQ19GVU5DU19fIDEKfCAjZGVmaW5lIF9UQU5E RU1fU09VUkNFIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIEdDQ19M SU5UIDEKfCAjZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBIQVZF X1NZU19TT1VORENBUkRfSCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8IAp8ICAgICAj aWZkZWYgX19NSU5HVzMyX18KfCAgICAgI2RlZmluZSBXSU4zMl9MRUFOX0FORF9NRUFOCnwg ICAgICNpbmNsdWRlIDx3aW5kb3dzLmg+CnwgICAgICNlbmRpZgp8IAp8IAp8ICNpbmNsdWRl IDxzb3VuZGNhcmQuaD4KY29uZmlndXJlOjExMTUwOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTox MTE1MDogY2hlY2tpbmcgZm9yIG1tc3lzdGVtLmgKY29uZmlndXJlOjExMTUwOiBnY2MgLWMg LWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOjc1OjEwOiBmYXRhbCBlcnJv cjogbW1zeXN0ZW0uaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQogICA3NSB8ICNpbmNs dWRlIDxtbXN5c3RlbS5oPgogICAgICB8ICAgICAgICAgIF5+fn5+fn5+fn5+fgpjb21waWxh dGlvbiB0ZXJtaW5hdGVkLgpjb25maWd1cmU6MTExNTA6ICQ/ID0gMQpjb25maWd1cmU6IGZh aWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdF X05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwg I2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX1NU UklORyAiR05VIEVtYWNzIDMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAi YnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHBzOi8v d3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgSEFWRV9QRFVNUEVSIDEK fCAjZGVmaW5lIEhBVkVfU1RESU9fSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAj ZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAj ZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8 ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNk ZWZpbmUgSEFWRV9MSU5VWF9GU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1F X0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwg I2RlZmluZSBIQVZFX1NBTklUSVpFUl9MU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhB VkVfU0FOSVRJWkVSX0FTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVEla RVJfQ09NTU9OX0lOVEVSRkFDRV9ERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VU X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJF QURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5U X0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9f RVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVkZTX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRP UFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19DREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX0lFRUU3NTRfSCAxCnwgI2RlZmluZSBIQVZFX0xJ TUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVf U1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JBTkRPTV9IIDEKfCAjZGVmaW5lIFNU RENfSEVBREVSUyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lO X0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9IUFVYX0FM VF9YT1BFTl9TT0NLRVRfQVBJIDEKfCAjZGVmaW5lIF9ORVRCU0RfU09VUkNFIDEKfCAjZGVm aW5lIF9PUEVOQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJ Q1MgMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0FUVFJJQlNfRVhUX18gMQp8 ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0JGUF9FWFRfXyAxCnwgI2RlZmluZSBf X1NURENfV0FOVF9JRUNfNjA1NTlfREZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5U X0lFQ182MDU1OV9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRlVO Q1NfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X1RZUEVTX0VYVF9f IDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0xJQl9FWFQyX18gMQp8ICNkZWZpbmUgX19TVERD X1dBTlRfTUFUSF9TUEVDX0ZVTkNTX18gMQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8 ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgR0NDX0xJTlQgMQp8ICNkZWZp bmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAjZGVmaW5lIEhBVkVfU1lTX1NPVU5EQ0FS RF9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgCnwgICAgICNpZmRlZiBfX01JTkdX MzJfXwp8ICAgICAjZGVmaW5lIFdJTjMyX0xFQU5fQU5EX01FQU4KfCAgICAgI2luY2x1ZGUg PHdpbmRvd3MuaD4KfCAgICAgI2VuZGlmCnwgCnwgCnwgI2luY2x1ZGUgPG1tc3lzdGVtLmg+ CmNvbmZpZ3VyZToxMTE1MDogcmVzdWx0OiBubwpjb25maWd1cmU6MTExNzE6IGNoZWNraW5n IGZvciBfb3NzX2lvY3RsIGluIC1sb3NzYXVkaW8KY29uZmlndXJlOjExMTk0OiBnY2MgLW8g Y29uZnRlc3QgLWczIC1PMiAgICAgY29uZnRlc3QuYyAtbG9zc2F1ZGlvICAgPiY1IAovdXNy L2Jpbi9sZDogY2Fubm90IGZpbmQgLWxvc3NhdWRpbzogTm8gc3VjaCBmaWxlIG9yIGRpcmVj dG9yeQpjb2xsZWN0MjogZXJyb3I6IGxkIHJldHVybmVkIDEgZXhpdCBzdGF0dXMKY29uZmln dXJlOjExMTk0OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyog Y29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2Rl ZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9O ICIzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAzMC4wLjUw Igp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIK fCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJodHRwczovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2Vt YWNzLyIKfCAjZGVmaW5lIEhBVkVfUERVTVBFUiAxCnwgI2RlZmluZSBIQVZFX1NURElPX0gg MQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEK fCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEK fCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAx CnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0gg MQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfRlNfSCAx CnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9f SCAxCnwgI2RlZmluZSBIQVZFX1BUWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNF X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdE X0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1QX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJf TFNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9BU0FOX0lOVEVS RkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0NPTU1PTl9JTlRFUkZBQ0VfREVG U19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfVU5fSCAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhF Q0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1NURElPX0VYVF9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1ZGU19IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfQ0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFW RV9JRUVFNzU0X0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NUREJPT0xfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19SQU5ET01fSCAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUg X0FMTF9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmluZSBf R05VX1NPVVJDRSAxCnwgI2RlZmluZSBfSFBVWF9BTFRfWE9QRU5fU09DS0VUX0FQSSAxCnwg I2RlZmluZSBfTkVUQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfT1BFTkJTRF9TT1VSQ0UgMQp8 ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9fU1REQ19X QU5UX0lFQ182MDU1OV9BVFRSSUJTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lF Q182MDU1OV9CRlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0RG UF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRVhUX18gMQp8ICNk ZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0ZVTkNTX0VYVF9fIDEKfCAjZGVmaW5lIF9f U1REQ19XQU5UX0lFQ182MDU1OV9UWVBFU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FO VF9MSUJfRVhUMl9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX01BVEhfU1BFQ19GVU5DU19f IDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19f IDEKfCAjZGVmaW5lIEdDQ19MSU5UIDEKfCAjZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUvbGlu dXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAxCnwgLyogZW5kIGNvbmZkZWZz LmguICAqLwp8IAp8IC8qIE92ZXJyaWRlIGFueSBHQ0MgaW50ZXJuYWwgcHJvdG90eXBlIHRv IGF2b2lkIGFuIGVycm9yLgp8ICAgIFVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNo IHRoZSByZXR1cm4gdHlwZSBvZiBhIEdDQwp8ICAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFy Z3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCnwgY2hhciBfb3NzX2lv Y3RsICgpOwp8IGludAp8IG1haW4gKHZvaWQpCnwgewp8IHJldHVybiBfb3NzX2lvY3RsICgp Owp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MTEyMDQ6IHJlc3VsdDogbm8K Y29uZmlndXJlOjExMjIzOiBjaGVja2luZyBmb3IgYWxzYSA+PSAxLjAuMApjb25maWd1cmU6 MTEyMzA6ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzICIkQUxTQV9NT0RV TEVTIgpjb25maWd1cmU6MTEyMzM6ICQ/ID0gMApjb25maWd1cmU6MTEyNDc6ICRQS0dfQ09O RklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzICIkQUxTQV9NT0RVTEVTIgpjb25maWd1cmU6 MTEyNTA6ICQ/ID0gMApjb25maWd1cmU6MTEyODg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTox MTMzMzogY2hlY2tpbmcgZm9yIEFERFJfTk9fUkFORE9NSVpFCmNvbmZpZ3VyZToxMTM1MTog Z2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjExMzUxOiAkPyA9 IDAKY29uZmlndXJlOjExMzU5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTEzNzE6IGNoZWNr aW5nIGlmIExpbnV4IHN5c2luZm8gbWF5IGJlIHVzZWQKY29uZmlndXJlOjExMzkwOiBnY2Mg LWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MTEzOTA6ICQ/ID0gMApj b25maWd1cmU6MTEzOTg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMTQxNjogZ2NjIC1jIC1n MyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjExNDE2OiAkPyA9IDAKY29uZmln dXJlOjExNDM3OiBnY2MgLUUgICAgY29uZnRlc3QuYwpjb25maWd1cmU6MTE0Mzc6ICQ/ID0g MApjb25maWd1cmU6MTE0NDQ6IGNoZWNraW5nIGZvciBzeXMvd2FpdC5oIHRoYXQgaXMgUE9T SVguMSBjb21wYXRpYmxlCmNvbmZpZ3VyZToxMTQ3MTogZ2NjIC1jIC1nMyAtTzIgICAgY29u ZnRlc3QuYyA+JjUKY29uZmlndXJlOjExNDcxOiAkPyA9IDAKY29uZmlndXJlOjExNDc5OiBy ZXN1bHQ6IHllcwpjb25maWd1cmU6MTE0OTA6IGNoZWNraW5nIGZvciBuZXQvaWYuaApjb25m aWd1cmU6MTE0OTA6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3Vy ZToxMTQ5MDogJD8gPSAwCmNvbmZpZ3VyZToxMTQ5MDogcmVzdWx0OiB5ZXMKY29uZmlndXJl OjExNTAxOiBjaGVja2luZyBmb3IgaWZhZGRycy5oCmNvbmZpZ3VyZToxMTUwMTogZ2NjIC1j IC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjExNTAxOiAkPyA9IDAKY29u ZmlndXJlOjExNTAxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTE1MTI6IGNoZWNraW5nIGZv ciBuZXQvaWZfZGwuaApjb25maWd1cmU6MTE1MTI6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0 ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6MTA5OjEwOiBmYXRhbCBlcnJvcjogbmV0L2lmX2RsLmg6 IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKICAxMDkgfCAjaW5jbHVkZSA8bmV0L2lmX2Rs Lmg+CiAgICAgIHwgICAgICAgICAgXn5+fn5+fn5+fn5+fgpjb21waWxhdGlvbiB0ZXJtaW5h dGVkLgpjb25maWd1cmU6MTE1MTI6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFt IHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBF bWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNL QUdFX1ZFUlNJT04gIjMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVt YWNzIDMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFj c0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHBzOi8vd3d3LmdudS5vcmcv c29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgSEFWRV9QRFVNUEVSIDEKfCAjZGVmaW5lIEhB VkVfU1RESU9fSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVf U1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVf U1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFW RV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9M SU5VWF9GU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZp bmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZF X1NBTklUSVpFUl9MU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVS X0FTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQ09NTU9OX0lO VEVSRkFDRV9ERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZp bmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfVkZTX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19DREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwg I2RlZmluZSBIQVZFX0lFRUU3NTRfSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1JBTkRPTV9IIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAx CnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEK fCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9IUFVYX0FMVF9YT1BFTl9TT0NL RVRfQVBJIDEKfCAjZGVmaW5lIF9ORVRCU0RfU09VUkNFIDEKfCAjZGVmaW5lIF9PUEVOQlNE X1NPVVJDRSAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZp bmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0FUVFJJQlNfRVhUX18gMQp8ICNkZWZpbmUgX19T VERDX1dBTlRfSUVDXzYwNTU5X0JGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9J RUNfNjA1NTlfREZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9F WFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRlVOQ1NfRVhUX18gMQp8 ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X1RZUEVTX0VYVF9fIDEKfCAjZGVmaW5l IF9fU1REQ19XQU5UX0xJQl9FWFQyX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfTUFUSF9T UEVDX0ZVTkNTX18gMQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19F WFRFTlNJT05TX18gMQp8ICNkZWZpbmUgR0NDX0xJTlQgMQp8ICNkZWZpbmUgU1lTVEVNX1RZ UEUgImdudS9saW51eCIKfCAjZGVmaW5lIEhBVkVfU1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVm aW5lIEhBVkVfQUxTQSAxCnwgI2RlZmluZSBIQVZFX1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVf UEVSU09OQUxJVFlfQUREUl9OT19SQU5ET01JWkUgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9T WVNJTkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwgI2RlZmluZSBIQVZF X1RFUk1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9O RVRfSUZfSCAxCnwgI2RlZmluZSBIQVZFX0lGQUREUlNfSCAxCnwgLyogZW5kIGNvbmZkZWZz LmguICAqLwp8ICNpbmNsdWRlIDxzdGRkZWYuaD4KfCAjaWZkZWYgSEFWRV9TVERJT19ICnwg IyBpbmNsdWRlIDxzdGRpby5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NURExJQl9ICnwg IyBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdfSAp8 ICMgaW5jbHVkZSA8c3RyaW5nLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfSU5UVFlQRVNf SAp8ICMgaW5jbHVkZSA8aW50dHlwZXMuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVERJ TlRfSAp8ICMgaW5jbHVkZSA8c3RkaW50Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RS SU5HU19ICnwgIyBpbmNsdWRlIDxzdHJpbmdzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVf U1lTX1RZUEVTX0gKfCAjIGluY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRl ZiBIQVZFX1NZU19TVEFUX0gKfCAjIGluY2x1ZGUgPHN5cy9zdGF0Lmg+CnwgI2VuZGlmCnwg I2lmZGVmIEhBVkVfVU5JU1REX0gKfCAjIGluY2x1ZGUgPHVuaXN0ZC5oPgp8ICNlbmRpZgp8 ICNpZiBIQVZFX1NZU19TT0NLRVRfSAp8ICNpbmNsdWRlIDxzeXMvc29ja2V0Lmg+CnwgI2Vu ZGlmCnwgCnwgI2luY2x1ZGUgPG5ldC9pZl9kbC5oPgpjb25maWd1cmU6MTE1MTI6IHJlc3Vs dDogbm8KY29uZmlndXJlOjExNTI0OiBjaGVja2luZyBmb3Igc3RydWN0IGlmcmVxLmlmcl9m bGFncwpjb25maWd1cmU6MTE1MjQ6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1 CmNvbmZpZ3VyZToxMTUyNDogJD8gPSAwCmNvbmZpZ3VyZToxMTUyNDogcmVzdWx0OiB5ZXMK Y29uZmlndXJlOjExNTM5OiBjaGVja2luZyBmb3Igc3RydWN0IGlmcmVxLmlmcl9od2FkZHIK Y29uZmlndXJlOjExNTM5OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25m dGVzdC5jOiBJbiBmdW5jdGlvbiAnbWFpbic6CmNvbmZ0ZXN0LmM6MTE3OjU6IGVycm9yOiB1 c2VkIHN0cnVjdCB0eXBlIHZhbHVlIHdoZXJlIHNjYWxhciBpcyByZXF1aXJlZAogIDExNyB8 IGlmIChhY19hZ2dyLmlmcl9od2FkZHIpCiAgICAgIHwgICAgIF5+fn5+fn4KY29uZmlndXJl OjExNTM5OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29u ZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2RlZmlu ZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIz MC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAzMC4wLjUwIgp8 ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAj ZGVmaW5lIFBBQ0tBR0VfVVJMICJodHRwczovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNz LyIKfCAjZGVmaW5lIEhBVkVfUERVTVBFUiAxCnwgI2RlZmluZSBIQVZFX1NURElPX0ggMQp8 ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAj ZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAj ZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8 ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfRlNfSCAxCnwg I2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAx CnwgI2RlZmluZSBIQVZFX1BUWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0gg MQp8ICNkZWZpbmUgSEFWRV9VVE1QX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfTFNB Tl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9BU0FOX0lOVEVSRkFD RV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0NPTU1PTl9JTlRFUkZBQ0VfREVGU19I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BB UkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf VU5fSCAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhFQ0lO Rk9fSCAxCnwgI2RlZmluZSBIQVZFX1NURElPX0VYVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1ZGU19IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf Q0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9J RUVFNzU0X0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NUREJPT0xfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19SQU5ET01fSCAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgX0FM TF9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmluZSBfR05V X1NPVVJDRSAxCnwgI2RlZmluZSBfSFBVWF9BTFRfWE9QRU5fU09DS0VUX0FQSSAxCnwgI2Rl ZmluZSBfTkVUQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfT1BFTkJTRF9TT1VSQ0UgMQp8ICNk ZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5U X0lFQ182MDU1OV9BVFRSSUJTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182 MDU1OV9CRlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0RGUF9F WFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRVhUX18gMQp8ICNkZWZp bmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0ZVTkNTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1RE Q19XQU5UX0lFQ182MDU1OV9UWVBFU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9M SUJfRVhUMl9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX01BVEhfU1BFQ19GVU5DU19fIDEK fCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEK fCAjZGVmaW5lIEdDQ19MSU5UIDEKfCAjZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUvbGludXgi CnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAxCnwgI2RlZmluZSBIQVZFX0FMU0Eg MQp8ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwgI2RlZmluZSBIQVZFX1BFUlNPTkFMSVRZX0FE RFJfTk9fUkFORE9NSVpFIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5GTyAxCnwgI2Rl ZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUgSEFWRV9URVJNX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUX0lGX0ggMQp8ICNk ZWZpbmUgSEFWRV9JRkFERFJTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZS X0ZMQUdTIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN0ZGRlZi5o Pgp8ICNpZmRlZiBIQVZFX1NURElPX0gKfCAjIGluY2x1ZGUgPHN0ZGlvLmg+CnwgI2VuZGlm CnwgI2lmZGVmIEhBVkVfU1RETElCX0gKfCAjIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICNlbmRp Zgp8ICNpZmRlZiBIQVZFX1NUUklOR19ICnwgIyBpbmNsdWRlIDxzdHJpbmcuaD4KfCAjZW5k aWYKfCAjaWZkZWYgSEFWRV9JTlRUWVBFU19ICnwgIyBpbmNsdWRlIDxpbnR0eXBlcy5oPgp8 ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NURElOVF9ICnwgIyBpbmNsdWRlIDxzdGRpbnQuaD4K fCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdTX0gKfCAjIGluY2x1ZGUgPHN0cmluZ3Mu aD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TWVNfVFlQRVNfSAp8ICMgaW5jbHVkZSA8c3lz L3R5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1lTX1NUQVRfSAp8ICMgaW5jbHVk ZSA8c3lzL3N0YXQuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9VTklTVERfSAp8ICMgaW5j bHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgI2lmIEhBVkVfU1lTX1NPQ0tFVF9ICnwgI2lu Y2x1ZGUgPHN5cy9zb2NrZXQuaD4KfCAjZW5kaWYKfCAjaWYgSEFWRV9ORVRfSUZfSAp8ICNp bmNsdWRlIDxuZXQvaWYuaD4KfCAjZW5kaWYKfCAKfCBpbnQKfCBtYWluICh2b2lkKQp8IHsK fCBzdGF0aWMgc3RydWN0IGlmcmVxIGFjX2FnZ3I7CnwgaWYgKGFjX2FnZ3IuaWZyX2h3YWRk cikKfCByZXR1cm4gMDsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjExNTM5 OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MTE1Mzk6ICQ/ ID0gMApjb25maWd1cmU6MTE1Mzk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMTU1NDogY2hl Y2tpbmcgZm9yIHN0cnVjdCBpZnJlcS5pZnJfbmV0bWFzawpjb25maWd1cmU6MTE1NTQ6IGdj YyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6IEluIGZ1bmN0aW9u ICdtYWluJzoKY29uZnRlc3QuYzoxMTg6NTogZXJyb3I6IHVzZWQgc3RydWN0IHR5cGUgdmFs dWUgd2hlcmUgc2NhbGFyIGlzIHJlcXVpcmVkCiAgMTE4IHwgaWYgKGFjX2FnZ3IuaWZyX25l dG1hc2spCiAgICAgIHwgICAgIF5+fn5+fn4KY29uZmlndXJlOjExNTU0OiAkPyA9IDEKY29u ZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZp bmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUg ImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIzMC4wLjUwIgp8ICNkZWZpbmUg UEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9C VUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJM ICJodHRwczovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIEhBVkVf UERVTVBFUiAxCnwgI2RlZmluZSBIQVZFX1NURElPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERM SUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQ RVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5H U19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19U WVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hB Ul9IIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfRlNfSCAxCnwgI2RlZmluZSBIQVZFX01BTExP Q19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1BU WV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9V VE1QX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfTFNBTl9JTlRFUkZBQ0VfSCAxCnwg I2RlZmluZSBIQVZFX1NBTklUSVpFUl9BU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhB VkVfU0FOSVRJWkVSX0NPTU1PTl9JTlRFUkZBQ0VfREVGU19IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUg SEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwgI2RlZmluZSBI QVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAxCnwgI2RlZmluZSBI QVZFX1NURElPX0VYVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1ZGU19IIDEKfCAjZGVmaW5l IEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfQ0RFRlNfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9JRUVFNzU0X0ggMQp8ICNkZWZp bmUgSEFWRV9MSU1JVFNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2Rl ZmluZSBIQVZFX1NUREJPT0xfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SQU5ET01fSCAxCnwg I2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8ICNkZWZp bmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmlu ZSBfSFBVWF9BTFRfWE9QRU5fU09DS0VUX0FQSSAxCnwgI2RlZmluZSBfTkVUQlNEX1NPVVJD RSAxCnwgI2RlZmluZSBfT1BFTkJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJF QURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9BVFRSSUJT X0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9CRlBfRVhUX18gMQp8 ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0RGUF9FWFRfXyAxCnwgI2RlZmluZSBf X1NURENfV0FOVF9JRUNfNjA1NTlfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVD XzYwNTU5X0ZVTkNTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9U WVBFU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9MSUJfRVhUMl9fIDEKfCAjZGVm aW5lIF9fU1REQ19XQU5UX01BVEhfU1BFQ19GVU5DU19fIDEKfCAjZGVmaW5lIF9UQU5ERU1f U09VUkNFIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIEdDQ19MSU5U IDEKfCAjZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBIQVZFX1NZ U19TT1VORENBUkRfSCAxCnwgI2RlZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9T T1VORCAxCnwgI2RlZmluZSBIQVZFX1BFUlNPTkFMSVRZX0FERFJfTk9fUkFORE9NSVpFIDEK fCAjZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5GTyAxCnwgI2RlZmluZSBMSU5VWF9TWVNJTkZP X1VOSVQgMQp8ICNkZWZpbmUgSEFWRV9URVJNX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJ VF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUX0lGX0ggMQp8ICNkZWZpbmUgSEFWRV9JRkFERFJT X0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5l IEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9IV0FERFIgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAg Ki8KfCAjaW5jbHVkZSA8c3RkZGVmLmg+CnwgI2lmZGVmIEhBVkVfU1RESU9fSAp8ICMgaW5j bHVkZSA8c3RkaW8uaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVERMSUJfSAp8ICMgaW5j bHVkZSA8c3RkbGliLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RSSU5HX0gKfCAjIGlu Y2x1ZGUgPHN0cmluZy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX0lOVFRZUEVTX0gKfCAj IGluY2x1ZGUgPGludHR5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RESU5UX0gK fCAjIGluY2x1ZGUgPHN0ZGludC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR1Nf SAp8ICMgaW5jbHVkZSA8c3RyaW5ncy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NZU19U WVBFU19ICnwgIyBpbmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFW RV9TWVNfU1RBVF9ICnwgIyBpbmNsdWRlIDxzeXMvc3RhdC5oPgp8ICNlbmRpZgp8ICNpZmRl ZiBIQVZFX1VOSVNURF9ICnwgIyBpbmNsdWRlIDx1bmlzdGQuaD4KfCAjZW5kaWYKfCAjaWYg SEFWRV9TWVNfU09DS0VUX0gKfCAjaW5jbHVkZSA8c3lzL3NvY2tldC5oPgp8ICNlbmRpZgp8 ICNpZiBIQVZFX05FVF9JRl9ICnwgI2luY2x1ZGUgPG5ldC9pZi5oPgp8ICNlbmRpZgp8IAp8 IGludAp8IG1haW4gKHZvaWQpCnwgewp8IHN0YXRpYyBzdHJ1Y3QgaWZyZXEgYWNfYWdncjsK fCBpZiAoYWNfYWdnci5pZnJfbmV0bWFzaykKfCByZXR1cm4gMDsKfCAgIDsKfCAgIHJldHVy biAwOwp8IH0KY29uZmlndXJlOjExNTU0OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5j ID4mNQpjb25maWd1cmU6MTE1NTQ6ICQ/ID0gMApjb25maWd1cmU6MTE1NTQ6IHJlc3VsdDog eWVzCmNvbmZpZ3VyZToxMTU2OTogY2hlY2tpbmcgZm9yIHN0cnVjdCBpZnJlcS5pZnJfYnJv YWRhZGRyCmNvbmZpZ3VyZToxMTU2OTogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+ JjUKY29uZnRlc3QuYzogSW4gZnVuY3Rpb24gJ21haW4nOgpjb25mdGVzdC5jOjExOTo1OiBl cnJvcjogdXNlZCBzdHJ1Y3QgdHlwZSB2YWx1ZSB3aGVyZSBzY2FsYXIgaXMgcmVxdWlyZWQK ICAxMTkgfCBpZiAoYWNfYWdnci5pZnJfYnJvYWRhZGRyKQogICAgICB8ICAgICBefn5+fn5+ CmNvbmZpZ3VyZToxMTU2OTogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2Fz Ogp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNz Igp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0Vf VkVSU0lPTiAiMzAuMC41MCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1hY3Mg MzAuMC41MCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ251LWVtYWNzQGdu dS5vcmciCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0cHM6Ly93d3cuZ251Lm9yZy9zb2Z0 d2FyZS9lbWFjcy8iCnwgI2RlZmluZSBIQVZFX1BEVU1QRVIgMQp8ICNkZWZpbmUgSEFWRV9T VERJT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJ TkdfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJ TlRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19T VEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1VO SVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfSCAxCnwgI2RlZmluZSBIQVZFX0xJTlVY X0ZTX0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19T WVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9QVFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19S RVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBI QVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUF9IIDEKfCAjZGVmaW5lIEhBVkVfU0FO SVRJWkVSX0xTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQVNB Tl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9DT01NT05fSU5URVJG QUNFX0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBI QVZFX0VYRUNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJT19FWFRfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19WRlNfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX0NERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVm aW5lIEhBVkVfSUVFRTc1NF9IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERCT09MX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfUkFORE9NX0ggMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAj ZGVmaW5lIF9BTExfU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8ICNk ZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0hQVVhfQUxUX1hPUEVOX1NPQ0tFVF9B UEkgMQp8ICNkZWZpbmUgX05FVEJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUgX09QRU5CU0RfU09V UkNFIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBf X1NURENfV0FOVF9JRUNfNjA1NTlfQVRUUklCU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENf V0FOVF9JRUNfNjA1NTlfQkZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182 MDU1OV9ERlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0VYVF9f IDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9GVU5DU19FWFRfXyAxCnwgI2Rl ZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfVFlQRVNfRVhUX18gMQp8ICNkZWZpbmUgX19T VERDX1dBTlRfTElCX0VYVDJfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9NQVRIX1NQRUNf RlVOQ1NfXyAxCnwgI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCnwgI2RlZmluZSBfX0VYVEVO U0lPTlNfXyAxCnwgI2RlZmluZSBHQ0NfTElOVCAxCnwgI2RlZmluZSBTWVNURU1fVFlQRSAi Z251L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJEX0ggMQp8ICNkZWZpbmUg SEFWRV9BTFNBIDEKfCAjZGVmaW5lIEhBVkVfU09VTkQgMQp8ICNkZWZpbmUgSEFWRV9QRVJT T05BTElUWV9BRERSX05PX1JBTkRPTUlaRSAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX1NZU0lO Rk8gMQp8ICNkZWZpbmUgTElOVVhfU1lTSU5GT19VTklUIDEKfCAjZGVmaW5lIEhBVkVfVEVS TV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX05FVF9J Rl9IIDEKfCAjZGVmaW5lIEhBVkVfSUZBRERSU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNU X0lGUkVRX0lGUl9GTEFHUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfSFdB RERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9ORVRNQVNLIDEKfCAvKiBl bmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN0ZGRlZi5oPgp8ICNpZmRlZiBIQVZF X1NURElPX0gKfCAjIGluY2x1ZGUgPHN0ZGlvLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVf U1RETElCX0gKfCAjIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZF X1NUUklOR19ICnwgIyBpbmNsdWRlIDxzdHJpbmcuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFW RV9JTlRUWVBFU19ICnwgIyBpbmNsdWRlIDxpbnR0eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRl ZiBIQVZFX1NURElOVF9ICnwgIyBpbmNsdWRlIDxzdGRpbnQuaD4KfCAjZW5kaWYKfCAjaWZk ZWYgSEFWRV9TVFJJTkdTX0gKfCAjIGluY2x1ZGUgPHN0cmluZ3MuaD4KfCAjZW5kaWYKfCAj aWZkZWYgSEFWRV9TWVNfVFlQRVNfSAp8ICMgaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgI2Vu ZGlmCnwgI2lmZGVmIEhBVkVfU1lTX1NUQVRfSAp8ICMgaW5jbHVkZSA8c3lzL3N0YXQuaD4K fCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9VTklTVERfSAp8ICMgaW5jbHVkZSA8dW5pc3RkLmg+ CnwgI2VuZGlmCnwgI2lmIEhBVkVfU1lTX1NPQ0tFVF9ICnwgI2luY2x1ZGUgPHN5cy9zb2Nr ZXQuaD4KfCAjZW5kaWYKfCAjaWYgSEFWRV9ORVRfSUZfSAp8ICNpbmNsdWRlIDxuZXQvaWYu aD4KfCAjZW5kaWYKfCAKfCBpbnQKfCBtYWluICh2b2lkKQp8IHsKfCBzdGF0aWMgc3RydWN0 IGlmcmVxIGFjX2FnZ3I7CnwgaWYgKGFjX2FnZ3IuaWZyX2Jyb2FkYWRkcikKfCByZXR1cm4g MDsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjExNTY5OiBnY2MgLWMgLWcz IC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MTE1Njk6ICQ/ID0gMApjb25maWd1 cmU6MTE1Njk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMTU4NDogY2hlY2tpbmcgZm9yIHN0 cnVjdCBpZnJlcS5pZnJfYWRkcgpjb25maWd1cmU6MTE1ODQ6IGdjYyAtYyAtZzMgLU8yICAg IGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6IEluIGZ1bmN0aW9uICdtYWluJzoKY29uZnRl c3QuYzoxMjA6NTogZXJyb3I6IHVzZWQgc3RydWN0IHR5cGUgdmFsdWUgd2hlcmUgc2NhbGFy IGlzIHJlcXVpcmVkCiAgMTIwIHwgaWYgKGFjX2FnZ3IuaWZyX2FkZHIpCiAgICAgIHwgICAg IF5+fn5+fn4KY29uZmlndXJlOjExNTg0OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJv Z3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJH TlUgRW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUg UEFDS0FHRV9WRVJTSU9OICIzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdO VSBFbWFjcyAzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUt ZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJodHRwczovL3d3dy5nbnUu b3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIEhBVkVfUERVTVBFUiAxCnwgI2RlZmlu ZSBIQVZFX1NURElPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBI QVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBI QVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5l IEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhB VkVfTElOVVhfRlNfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1BUWV9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAj ZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1QX0ggMQp8ICNkZWZpbmUg SEFWRV9TQU5JVElaRVJfTFNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklU SVpFUl9BU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0NPTU1P Tl9JTlRFUkZBQ0VfREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAj ZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1NURElPX0VYVF9IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1ZGU19IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfQ0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0gg MQp8ICNkZWZpbmUgSEFWRV9JRUVFNzU0X0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAx CnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NUREJPT0xf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19SQU5ET01fSCAxCnwgI2RlZmluZSBTVERDX0hFQURF UlMgMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9DX1NPVVJD RSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBfSFBVWF9BTFRfWE9QRU5f U09DS0VUX0FQSSAxCnwgI2RlZmluZSBfTkVUQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfT1BF TkJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAj ZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9BVFRSSUJTX0VYVF9fIDEKfCAjZGVmaW5l IF9fU1REQ19XQU5UX0lFQ182MDU1OV9CRlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dB TlRfSUVDXzYwNTU5X0RGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1 NTlfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0ZVTkNTX0VYVF9f IDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9UWVBFU19FWFRfXyAxCnwgI2Rl ZmluZSBfX1NURENfV0FOVF9MSUJfRVhUMl9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX01B VEhfU1BFQ19GVU5DU19fIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVmaW5l IF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIEdDQ19MSU5UIDEKfCAjZGVmaW5lIFNZU1RF TV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAxCnwg I2RlZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwgI2RlZmluZSBI QVZFX1BFUlNPTkFMSVRZX0FERFJfTk9fUkFORE9NSVpFIDEKfCAjZGVmaW5lIEhBVkVfTElO VVhfU1lTSU5GTyAxCnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUg SEFWRV9URVJNX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhB VkVfTkVUX0lGX0ggMQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0ggMQp8ICNkZWZpbmUgSEFW RV9TVFJVQ1RfSUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVR X0lGUl9IV0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX05FVE1BU0sg MQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAxCnwgLyogZW5k IGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxzdGRkZWYuaD4KfCAjaWZkZWYgSEFWRV9T VERJT19ICnwgIyBpbmNsdWRlIDxzdGRpby5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NU RExJQl9ICnwgIyBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9T VFJJTkdfSAp8ICMgaW5jbHVkZSA8c3RyaW5nLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVf SU5UVFlQRVNfSAp8ICMgaW5jbHVkZSA8aW50dHlwZXMuaD4KfCAjZW5kaWYKfCAjaWZkZWYg SEFWRV9TVERJTlRfSAp8ICMgaW5jbHVkZSA8c3RkaW50Lmg+CnwgI2VuZGlmCnwgI2lmZGVm IEhBVkVfU1RSSU5HU19ICnwgIyBpbmNsdWRlIDxzdHJpbmdzLmg+CnwgI2VuZGlmCnwgI2lm ZGVmIEhBVkVfU1lTX1RZUEVTX0gKfCAjIGluY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNlbmRp Zgp8ICNpZmRlZiBIQVZFX1NZU19TVEFUX0gKfCAjIGluY2x1ZGUgPHN5cy9zdGF0Lmg+Cnwg I2VuZGlmCnwgI2lmZGVmIEhBVkVfVU5JU1REX0gKfCAjIGluY2x1ZGUgPHVuaXN0ZC5oPgp8 ICNlbmRpZgp8ICNpZiBIQVZFX1NZU19TT0NLRVRfSAp8ICNpbmNsdWRlIDxzeXMvc29ja2V0 Lmg+CnwgI2VuZGlmCnwgI2lmIEhBVkVfTkVUX0lGX0gKfCAjaW5jbHVkZSA8bmV0L2lmLmg+ CnwgI2VuZGlmCnwgCnwgaW50CnwgbWFpbiAodm9pZCkKfCB7Cnwgc3RhdGljIHN0cnVjdCBp ZnJlcSBhY19hZ2dyOwp8IGlmIChhY19hZ2dyLmlmcl9hZGRyKQp8IHJldHVybiAwOwp8ICAg Owp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MTE1ODQ6IGdjYyAtYyAtZzMgLU8yICAg IGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxMTU4NDogJD8gPSAwCmNvbmZpZ3VyZToxMTU4 NDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjExNTk5OiBjaGVja2luZyBmb3Igc3RydWN0IGlm cmVxLmlmcl9hZGRyLnNhX2xlbgpjb25maWd1cmU6MTE1OTk6IGdjYyAtYyAtZzMgLU8yICAg IGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6IEluIGZ1bmN0aW9uICdtYWluJzoKY29uZnRl c3QuYzoxMjE6MjE6IGVycm9yOiAnc3RydWN0IHNvY2thZGRyJyBoYXMgbm8gbWVtYmVyIG5h bWVkICdzYV9sZW4nCiAgMTIxIHwgaWYgKGFjX2FnZ3IuaWZyX2FkZHIuc2FfbGVuKQogICAg ICB8ICAgICAgICAgICAgICAgICAgICAgXgpjb25maWd1cmU6MTE1OTk6ICQ/ID0gMQpjb25m aWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmlu ZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAi ZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMwLjAuNTAiCnwgI2RlZmluZSBQ QUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX0JV R1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwg Imh0dHBzOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgSEFWRV9Q RFVNUEVSIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fSCAxCnwgI2RlZmluZSBIQVZFX1NURExJ Ql9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBF U19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdT X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZ UEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFS X0ggMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9D X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZ X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VU TVBfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9MU0FOX0lOVEVSRkFDRV9IIDEKfCAj ZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0FTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFW RV9TQU5JVElaRVJfQ09NTU9OX0lOVEVSRkFDRV9ERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBI QVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhB VkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5lIEhB VkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVkZTX0ggMQp8ICNkZWZpbmUg SEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19DREVGU19IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX0lFRUU3NTRfSCAxCnwgI2RlZmlu ZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVm aW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JBTkRPTV9IIDEKfCAj ZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmlu ZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5l IF9IUFVYX0FMVF9YT1BFTl9TT0NLRVRfQVBJIDEKfCAjZGVmaW5lIF9ORVRCU0RfU09VUkNF IDEKfCAjZGVmaW5lIF9PUEVOQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVB RF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0FUVFJJQlNf RVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0JGUF9FWFRfXyAxCnwg I2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfREZQX0VYVF9fIDEKfCAjZGVmaW5lIF9f U1REQ19XQU5UX0lFQ182MDU1OV9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNf NjA1NTlfRlVOQ1NfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X1RZ UEVTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0xJQl9FWFQyX18gMQp8ICNkZWZp bmUgX19TVERDX1dBTlRfTUFUSF9TUEVDX0ZVTkNTX18gMQp8ICNkZWZpbmUgX1RBTkRFTV9T T1VSQ0UgMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgR0NDX0xJTlQg MQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAjZGVmaW5lIEhBVkVfU1lT X1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2RlZmluZSBIQVZFX1NP VU5EIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfQUREUl9OT19SQU5ET01JWkUgMQp8 ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZU0lORk9f VU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlU X0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZFX0lGQUREUlNf SCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUg SEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9J RlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJP QURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERSIDEKfCAvKiBl bmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN0ZGRlZi5oPgp8ICNpZmRlZiBIQVZF X1NURElPX0gKfCAjIGluY2x1ZGUgPHN0ZGlvLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVf U1RETElCX0gKfCAjIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZF X1NUUklOR19ICnwgIyBpbmNsdWRlIDxzdHJpbmcuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFW RV9JTlRUWVBFU19ICnwgIyBpbmNsdWRlIDxpbnR0eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRl ZiBIQVZFX1NURElOVF9ICnwgIyBpbmNsdWRlIDxzdGRpbnQuaD4KfCAjZW5kaWYKfCAjaWZk ZWYgSEFWRV9TVFJJTkdTX0gKfCAjIGluY2x1ZGUgPHN0cmluZ3MuaD4KfCAjZW5kaWYKfCAj aWZkZWYgSEFWRV9TWVNfVFlQRVNfSAp8ICMgaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgI2Vu ZGlmCnwgI2lmZGVmIEhBVkVfU1lTX1NUQVRfSAp8ICMgaW5jbHVkZSA8c3lzL3N0YXQuaD4K fCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9VTklTVERfSAp8ICMgaW5jbHVkZSA8dW5pc3RkLmg+ CnwgI2VuZGlmCnwgI2lmIEhBVkVfU1lTX1NPQ0tFVF9ICnwgI2luY2x1ZGUgPHN5cy9zb2Nr ZXQuaD4KfCAjZW5kaWYKfCAjaWYgSEFWRV9ORVRfSUZfSAp8ICNpbmNsdWRlIDxuZXQvaWYu aD4KfCAjZW5kaWYKfCAKfCBpbnQKfCBtYWluICh2b2lkKQp8IHsKfCBzdGF0aWMgc3RydWN0 IGlmcmVxIGFjX2FnZ3I7CnwgaWYgKGFjX2FnZ3IuaWZyX2FkZHIuc2FfbGVuKQp8IHJldHVy biAwOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MTE1OTk6IGdjYyAtYyAt ZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6IEluIGZ1bmN0aW9uICdtYWlu JzoKY29uZnRlc3QuYzoxMjE6Mjg6IGVycm9yOiAnc3RydWN0IHNvY2thZGRyJyBoYXMgbm8g bWVtYmVyIG5hbWVkICdzYV9sZW4nCiAgMTIxIHwgaWYgKHNpemVvZiBhY19hZ2dyLmlmcl9h ZGRyLnNhX2xlbikKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCmNvbmZp Z3VyZToxMTU5OTogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8q IGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8ICNk ZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lP TiAiMzAuMC41MCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1hY3MgMzAuMC41 MCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ251LWVtYWNzQGdudS5vcmci CnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0cHM6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9l bWFjcy8iCnwgI2RlZmluZSBIQVZFX1BEVU1QRVIgMQp8ICNkZWZpbmUgSEFWRV9TVERJT19I IDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAx CnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAx CnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9I IDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfSCAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZTX0gg MQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TWVNJTkZP X0ggMQp8ICNkZWZpbmUgSEFWRV9QVFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJD RV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BX RF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUF9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVS X0xTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQVNBTl9JTlRF UkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9DT01NT05fSU5URVJGQUNFX0RF RlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX0VY RUNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJT19FWFRfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19WRlNfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX0NERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhB VkVfSUVFRTc1NF9IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERCT09MX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfUkFORE9NX0ggMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5l IF9BTExfU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8ICNkZWZpbmUg X0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0hQVVhfQUxUX1hPUEVOX1NPQ0tFVF9BUEkgMQp8 ICNkZWZpbmUgX05FVEJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUgX09QRU5CU0RfU09VUkNFIDEK fCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBfX1NURENf V0FOVF9JRUNfNjA1NTlfQVRUUklCU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9J RUNfNjA1NTlfQkZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9E RlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0VYVF9fIDEKfCAj ZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9GVU5DU19FWFRfXyAxCnwgI2RlZmluZSBf X1NURENfV0FOVF9JRUNfNjA1NTlfVFlQRVNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dB TlRfTElCX0VYVDJfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9NQVRIX1NQRUNfRlVOQ1Nf XyAxCnwgI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNf XyAxCnwgI2RlZmluZSBHQ0NfTElOVCAxCnwgI2RlZmluZSBTWVNURU1fVFlQRSAiZ251L2xp bnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJEX0ggMQp8ICNkZWZpbmUgSEFWRV9B TFNBIDEKfCAjZGVmaW5lIEhBVkVfU09VTkQgMQp8ICNkZWZpbmUgSEFWRV9QRVJTT05BTElU WV9BRERSX05PX1JBTkRPTUlaRSAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX1NZU0lORk8gMQp8 ICNkZWZpbmUgTElOVVhfU1lTSU5GT19VTklUIDEKfCAjZGVmaW5lIEhBVkVfVEVSTV9IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX05FVF9JRl9IIDEK fCAjZGVmaW5lIEhBVkVfSUZBRERSU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVR X0lGUl9GTEFHUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfSFdBRERSIDEK fCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9ORVRNQVNLIDEKfCAjZGVmaW5lIEhB VkVfU1RSVUNUX0lGUkVRX0lGUl9CUk9BREFERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1Rf SUZSRVFfSUZSX0FERFIgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8 c3RkZGVmLmg+CnwgI2lmZGVmIEhBVkVfU1RESU9fSAp8ICMgaW5jbHVkZSA8c3RkaW8uaD4K fCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVERMSUJfSAp8ICMgaW5jbHVkZSA8c3RkbGliLmg+ CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RSSU5HX0gKfCAjIGluY2x1ZGUgPHN0cmluZy5o Pgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX0lOVFRZUEVTX0gKfCAjIGluY2x1ZGUgPGludHR5 cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RESU5UX0gKfCAjIGluY2x1ZGUgPHN0 ZGludC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR1NfSAp8ICMgaW5jbHVkZSA8 c3RyaW5ncy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NZU19UWVBFU19ICnwgIyBpbmNs dWRlIDxzeXMvdHlwZXMuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TWVNfU1RBVF9ICnwg IyBpbmNsdWRlIDxzeXMvc3RhdC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1VOSVNURF9I CnwgIyBpbmNsdWRlIDx1bmlzdGQuaD4KfCAjZW5kaWYKfCAjaWYgSEFWRV9TWVNfU09DS0VU X0gKfCAjaW5jbHVkZSA8c3lzL3NvY2tldC5oPgp8ICNlbmRpZgp8ICNpZiBIQVZFX05FVF9J Rl9ICnwgI2luY2x1ZGUgPG5ldC9pZi5oPgp8ICNlbmRpZgp8IAp8IGludAp8IG1haW4gKHZv aWQpCnwgewp8IHN0YXRpYyBzdHJ1Y3QgaWZyZXEgYWNfYWdncjsKfCBpZiAoc2l6ZW9mIGFj X2FnZ3IuaWZyX2FkZHIuc2FfbGVuKQp8IHJldHVybiAwOwp8ICAgOwp8ICAgcmV0dXJuIDA7 CnwgfQpjb25maWd1cmU6MTE1OTk6IHJlc3VsdDogbm8KY29uZmlndXJlOjExNjIxOiBjaGVj a2luZyB3aGV0aGVyIGdjYyB1bmRlcnN0YW5kcyAtTU1EIC1NRgpjb25maWd1cmU6MTE2NDA6 IGdjYyAtYyAtZzMgLU8yIC1NTUQgLU1GIGRlcHMuZCAtTVAgICAgY29uZnRlc3QuYyA+JjUK Y29uZmlndXJlOjExNjQwOiAkPyA9IDAKY29uZmlndXJlOjExNjUxOiByZXN1bHQ6IHllcwpj b25maWd1cmU6MTE2NzM6IGNoZWNraW5nIGZvciBYCmNvbmZpZ3VyZToxMTcxMTogZ2NjIC1v IGNvbmZ0ZXN0IC1nMyAtTzIgICAgIGNvbmZ0ZXN0LmMgLWxYMTEgID4mNSAKY29uZmlndXJl OjExNzExOiAkPyA9IDAKY29uZmlndXJlOjExODk4OiByZXN1bHQ6IGxpYnJhcmllcyAsIGhl YWRlcnMgCmNvbmZpZ3VyZToxMzM1MjogY2hlY2tpbmcgd2hldGhlciBtYWxsb2MgaXMgRG91 ZyBMZWEgc3R5bGUKY29uZmlndXJlOjEzMzc0OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAg ICAgY29uZnRlc3QuYyAgPiY1IApjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiAnbWFpbic6CmNv bmZ0ZXN0LmM6ODc6MTogd2FybmluZzogaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rp b24gJ21hbGxvY19zZXRfc3RhdGUnOyBkaWQgeW91IG1lYW4gJ21hbGxvY19zdGF0cyc/IFst V2ltcGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQogICA4NyB8IG1hbGxvY19zZXRfc3Rh dGUgKG1hbGxvY19nZXRfc3RhdGUgKCkpOwogICAgICB8IF5+fn5+fn5+fn5+fn5+fn4KICAg ICAgfCBtYWxsb2Nfc3RhdHMKY29uZnRlc3QuYzo4NzoxOTogd2FybmluZzogaW1wbGljaXQg ZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24gJ21hbGxvY19nZXRfc3RhdGUnOyBkaWQgeW91IG1l YW4gJ21hbGxvY19zdGF0cyc/IFstV2ltcGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQog ICA4NyB8IG1hbGxvY19zZXRfc3RhdGUgKG1hbGxvY19nZXRfc3RhdGUgKCkpOwogICAgICB8 ICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn4KICAgICAgfCAgICAgICAgICAg ICAgICAgICBtYWxsb2Nfc3RhdHMKY29uZnRlc3QuYzo4ODoxMzogZXJyb3I6ICdfX2FmdGVy X21vcmVjb3JlX2hvb2snIHVuZGVjbGFyZWQgKGZpcnN0IHVzZSBpbiB0aGlzIGZ1bmN0aW9u KQogICA4OCB8ICAgICAgICAgICAgIF9fYWZ0ZXJfbW9yZWNvcmVfaG9vayA9IGhvb2s7CiAg ICAgIHwgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+CmNvbmZ0ZXN0LmM6ODg6 MTM6IG5vdGU6IGVhY2ggdW5kZWNsYXJlZCBpZGVudGlmaWVyIGlzIHJlcG9ydGVkIG9ubHkg b25jZSBmb3IgZWFjaCBmdW5jdGlvbiBpdCBhcHBlYXJzIGluCmNvbmZ0ZXN0LmM6ODk6MTM6 IGVycm9yOiAnX19tYWxsb2NfaW5pdGlhbGl6ZV9ob29rJyB1bmRlY2xhcmVkIChmaXJzdCB1 c2UgaW4gdGhpcyBmdW5jdGlvbikKICAgODkgfCAgICAgICAgICAgICBfX21hbGxvY19pbml0 aWFsaXplX2hvb2sgPSBob29rOwogICAgICB8ICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fgpjb25maWd1cmU6MTMzNzQ6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBw cm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUg IkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmlu ZSBQQUNLQUdFX1ZFUlNJT04gIjMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAi R05VIEVtYWNzIDMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdu dS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHBzOi8vd3d3Lmdu dS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgSEFWRV9QRFVNUEVSIDEKfCAjZGVm aW5lIEhBVkVfU1RESU9fSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5l IEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5l IEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZp bmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUg SEFWRV9MSU5VWF9GU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8 ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmlu ZSBIQVZFX1NBTklUSVpFUl9MU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FO SVRJWkVSX0FTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQ09N TU9OX0lOVEVSRkFDRV9ERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAx CnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8 ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fRVhUX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfVkZTX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAx CnwgI2RlZmluZSBIQVZFX1NZU19DREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVf SCAxCnwgI2RlZmluZSBIQVZFX0lFRUU3NTRfSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1REQk9P TF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JBTkRPTV9IIDEKfCAjZGVmaW5lIFNURENfSEVB REVSUyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09V UkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9IUFVYX0FMVF9YT1BF Tl9TT0NLRVRfQVBJIDEKfCAjZGVmaW5lIF9ORVRCU0RfU09VUkNFIDEKfCAjZGVmaW5lIF9P UEVOQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8 ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0FUVFJJQlNfRVhUX18gMQp8ICNkZWZp bmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0JGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENf V0FOVF9JRUNfNjA1NTlfREZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182 MDU1OV9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRlVOQ1NfRVhU X18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X1RZUEVTX0VYVF9fIDEKfCAj ZGVmaW5lIF9fU1REQ19XQU5UX0xJQl9FWFQyX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRf TUFUSF9TUEVDX0ZVTkNTX18gMQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZp bmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgR0NDX0xJTlQgMQp8ICNkZWZpbmUgU1lT VEVNX1RZUEUgImdudS9saW51eCIKfCAjZGVmaW5lIEhBVkVfU1lTX1NPVU5EQ0FSRF9IIDEK fCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2RlZmluZSBIQVZFX1NPVU5EIDEKfCAjZGVmaW5l IEhBVkVfUEVSU09OQUxJVFlfQUREUl9OT19SQU5ET01JWkUgMQp8ICNkZWZpbmUgSEFWRV9M SU5VWF9TWVNJTkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwgI2RlZmlu ZSBIQVZFX1RFUk1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUg SEFWRV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZFX0lGQUREUlNfSCAxCnwgI2RlZmluZSBI QVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZS RVFfSUZSX0hXQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFT SyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJPQURBRERSIDEKfCAjZGVm aW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERSIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4g ICovCnwgI2luY2x1ZGUgPG1hbGxvYy5oPgp8IAkgICAgc3RhdGljIHZvaWQgaG9vayAodm9p ZCkge30KfCBpbnQKfCBtYWluICh2b2lkKQp8IHsKfCBtYWxsb2Nfc2V0X3N0YXRlIChtYWxs b2NfZ2V0X3N0YXRlICgpKTsKfCAJICAgIF9fYWZ0ZXJfbW9yZWNvcmVfaG9vayA9IGhvb2s7 CnwgCSAgICBfX21hbGxvY19pbml0aWFsaXplX2hvb2sgPSBob29rOwp8ICAgOwp8ICAgcmV0 dXJuIDA7CnwgfQpjb25maWd1cmU6MTMzODI6IHJlc3VsdDogbm8KY29uZmlndXJlOjEzMzkz OiBjaGVja2luZyBmb3Igc2Jyawpjb25maWd1cmU6MTMzOTM6IGdjYyAtbyBjb25mdGVzdCAt ZzMgLU8yICAgICBjb25mdGVzdC5jICA+JjUgCmNvbmZpZ3VyZToxMzM5MzogJD8gPSAwCmNv bmZpZ3VyZToxMzM5MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEzMzkzOiBjaGVja2luZyBm b3IgZ2V0cGFnZXNpemUKY29uZmlndXJlOjEzMzkzOiBnY2MgLW8gY29uZnRlc3QgLWczIC1P MiAgICAgY29uZnRlc3QuYyAgPiY1IApjb25maWd1cmU6MTMzOTM6ICQ/ID0gMApjb25maWd1 cmU6MTMzOTM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMzM5MzogY2hlY2tpbmcgZm9yIF9f bHNhbl9pZ25vcmVfb2JqZWN0CmNvbmZpZ3VyZToxMzM5MzogZ2NjIC1vIGNvbmZ0ZXN0IC1n MyAtTzIgICAgIGNvbmZ0ZXN0LmMgID4mNSAKL3Vzci9iaW4vbGQ6IC90bXAvY2NUWXF0d3ku bzogaW4gZnVuY3Rpb24gYG1haW4nOgovYXBwL2VtYWNzL2NvbmZ0ZXN0LmM6MTExOiB1bmRl ZmluZWQgcmVmZXJlbmNlIHRvIGBfX2xzYW5faWdub3JlX29iamVjdCcKY29sbGVjdDI6IGVy cm9yOiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVzCmNvbmZpZ3VyZToxMzM5MzogJD8gPSAx CmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAj ZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJO QU1FICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMzAuMC41MCIKfCAjZGVm aW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1hY3MgMzAuMC41MCIKfCAjZGVmaW5lIFBBQ0tB R0VfQlVHUkVQT1JUICJidWctZ251LWVtYWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdF X1VSTCAiaHR0cHM6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmluZSBI QVZFX1BEVU1QRVIgMQp8ICNkZWZpbmUgSEFWRV9TVERJT19IIDEKfCAjZGVmaW5lIEhBVkVf U1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX0lO VFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1NU UklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVf V0NIQVJfSCAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZTX0ggMQp8ICNkZWZpbmUgSEFWRV9N QUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TWVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFW RV9QVFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhB VkVfVVRNUF9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0xTQU5fSU5URVJGQUNFX0gg MQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQVNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmlu ZSBIQVZFX1NBTklUSVpFUl9DT01NT05fSU5URVJGQUNFX0RFRlNfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVm aW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZp bmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX0VYRUNJTkZPX0ggMQp8ICNkZWZp bmUgSEFWRV9TVERJT19FWFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19WRlNfSCAxCnwgI2Rl ZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0NERUZTX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfSUVFRTc1NF9IIDEKfCAj ZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8 ICNkZWZpbmUgSEFWRV9TVERCT09MX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkFORE9NX0gg MQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAj ZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNk ZWZpbmUgX0hQVVhfQUxUX1hPUEVOX1NPQ0tFVF9BUEkgMQp8ICNkZWZpbmUgX05FVEJTRF9T T1VSQ0UgMQp8ICNkZWZpbmUgX09QRU5CU0RfU09VUkNFIDEKfCAjZGVmaW5lIF9QT1NJWF9Q VEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfQVRU UklCU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfQkZQX0VYVF9f IDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9ERlBfRVhUX18gMQp8ICNkZWZp bmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5U X0lFQ182MDU1OV9GVU5DU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1 NTlfVFlQRVNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfTElCX0VYVDJfXyAxCnwg I2RlZmluZSBfX1NURENfV0FOVF9NQVRIX1NQRUNfRlVOQ1NfXyAxCnwgI2RlZmluZSBfVEFO REVNX1NPVVJDRSAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBHQ0Nf TElOVCAxCnwgI2RlZmluZSBTWVNURU1fVFlQRSAiZ251L2xpbnV4Igp8ICNkZWZpbmUgSEFW RV9TWVNfU09VTkRDQVJEX0ggMQp8ICNkZWZpbmUgSEFWRV9BTFNBIDEKfCAjZGVmaW5lIEhB VkVfU09VTkQgMQp8ICNkZWZpbmUgSEFWRV9QRVJTT05BTElUWV9BRERSX05PX1JBTkRPTUla RSAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX1NZU0lORk8gMQp8ICNkZWZpbmUgTElOVVhfU1lT SU5GT19VTklUIDEKfCAjZGVmaW5lIEhBVkVfVEVSTV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX05FVF9JRl9IIDEKfCAjZGVmaW5lIEhBVkVfSUZB RERSU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9GTEFHUyAxCnwgI2Rl ZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfSFdBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RS VUNUX0lGUkVRX0lGUl9ORVRNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lG Ul9CUk9BREFERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0FERFIgMQp8 ICNkZWZpbmUgSEFWRV9TQlJLIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8IC8q IGVuZCBjb25mZGVmcy5oLiAgKi8KfCAvKiBEZWZpbmUgX19sc2FuX2lnbm9yZV9vYmplY3Qg dG8gYW4gaW5ub2N1b3VzIHZhcmlhbnQsIGluIGNhc2UgPGxpbWl0cy5oPiBkZWNsYXJlcyBf X2xzYW5faWdub3JlX29iamVjdC4KfCAgICBGb3IgZXhhbXBsZSwgSFAtVVggMTFpIDxsaW1p dHMuaD4gZGVjbGFyZXMgZ2V0dGltZW9mZGF5LiAgKi8KfCAjZGVmaW5lIF9fbHNhbl9pZ25v cmVfb2JqZWN0IGlubm9jdW91c19fX2xzYW5faWdub3JlX29iamVjdAp8IAp8IC8qIFN5c3Rl bSBoZWFkZXIgdG8gZGVmaW5lIF9fc3R1YiBtYWNyb3MgYW5kIGhvcGVmdWxseSBmZXcgcHJv dG90eXBlcywKfCAgICB3aGljaCBjYW4gY29uZmxpY3Qgd2l0aCBjaGFyIF9fbHNhbl9pZ25v cmVfb2JqZWN0ICgpOyBiZWxvdy4gICovCnwgCnwgI2luY2x1ZGUgPGxpbWl0cy5oPgp8ICN1 bmRlZiBfX2xzYW5faWdub3JlX29iamVjdAp8IAp8IC8qIE92ZXJyaWRlIGFueSBHQ0MgaW50 ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLgp8ICAgIFVzZSBjaGFyIGJlY2F1 c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIEdDQwp8ICAgIGJ1aWx0 aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4g ICovCnwgI2lmZGVmIF9fY3BsdXNwbHVzCnwgZXh0ZXJuICJDIgp8ICNlbmRpZgp8IGNoYXIg X19sc2FuX2lnbm9yZV9vYmplY3QgKCk7CnwgLyogVGhlIEdOVSBDIGxpYnJhcnkgZGVmaW5l cyB0aGlzIGZvciBmdW5jdGlvbnMgd2hpY2ggaXQgaW1wbGVtZW50cwp8ICAgICB0byBhbHdh eXMgZmFpbCB3aXRoIEVOT1NZUy4gIFNvbWUgZnVuY3Rpb25zIGFyZSBhY3R1YWxseSBuYW1l ZAp8ICAgICBzb21ldGhpbmcgc3RhcnRpbmcgd2l0aCBfXyBhbmQgdGhlIG5vcm1hbCBuYW1l IGlzIGFuIGFsaWFzLiAgKi8KfCAjaWYgZGVmaW5lZCBfX3N0dWJfX19sc2FuX2lnbm9yZV9v YmplY3QgfHwgZGVmaW5lZCBfX3N0dWJfX19fX2xzYW5faWdub3JlX29iamVjdAp8IGNob2tl IG1lCnwgI2VuZGlmCnwgCnwgaW50CnwgbWFpbiAodm9pZCkKfCB7CnwgcmV0dXJuIF9fbHNh bl9pZ25vcmVfb2JqZWN0ICgpOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6 MTMzOTM6IHJlc3VsdDogbm8KY29uZmlndXJlOjEzMzkzOiBjaGVja2luZyBmb3IgZm9yawpj b25maWd1cmU6MTMzOTM6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICBjb25mdGVzdC5j ICA+JjUgCmNvbmZ0ZXN0LmM6MTAwOjY6IHdhcm5pbmc6IGNvbmZsaWN0aW5nIHR5cGVzIGZv ciBidWlsdC1pbiBmdW5jdGlvbiAnZm9yayc7IGV4cGVjdGVkICdpbnQodm9pZCknIFstV2J1 aWx0aW4tZGVjbGFyYXRpb24tbWlzbWF0Y2hdCiAgMTAwIHwgY2hhciBmb3JrICgpOwogICAg ICB8ICAgICAgXn5+fgpjb25maWd1cmU6MTMzOTM6ICQ/ID0gMApjb25maWd1cmU6MTMzOTM6 IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMzM5MzogY2hlY2tpbmcgZm9yIHZmb3JrCmNvbmZp Z3VyZToxMzM5MzogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgIGNvbmZ0ZXN0LmMgID4m NSAKY29uZmlndXJlOjEzMzkzOiAkPyA9IDAKY29uZmlndXJlOjEzMzkzOiByZXN1bHQ6IHll cwpjb25maWd1cmU6MTMzOTM6IGNoZWNraW5nIGZvciBmY2htb2QKY29uZmlndXJlOjEzMzkz OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgY29uZnRlc3QuYyAgPiY1IApjb25maWd1 cmU6MTMzOTM6ICQ/ID0gMApjb25maWd1cmU6MTMzOTM6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy ZToxMzM5MzogY2hlY2tpbmcgZm9yIGNhbm9uaWNhbGl6ZV9maWxlX25hbWUKY29uZmlndXJl OjEzMzkzOiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgY29uZnRlc3QuYyAgPiY1IApj b25maWd1cmU6MTMzOTM6ICQ/ID0gMApjb25maWd1cmU6MTMzOTM6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZToxMzM5MzogY2hlY2tpbmcgZm9yIHJlYWxwYXRoCmNvbmZpZ3VyZToxMzM5Mzog Z2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgIGNvbmZ0ZXN0LmMgID4mNSAKY29uZmlndXJl OjEzMzkzOiAkPyA9IDAKY29uZmlndXJlOjEzMzkzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6 MTMzOTM6IGNoZWNraW5nIGZvciBsc3RhdApjb25maWd1cmU6MTMzOTM6IGdjYyAtbyBjb25m dGVzdCAtZzMgLU8yICAgICBjb25mdGVzdC5jICA+JjUgCmNvbmZpZ3VyZToxMzM5MzogJD8g PSAwCmNvbmZpZ3VyZToxMzM5MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEzMzkzOiBjaGVj a2luZyBmb3IgZmNobW9kYXQKY29uZmlndXJlOjEzMzkzOiBnY2MgLW8gY29uZnRlc3QgLWcz IC1PMiAgICAgY29uZnRlc3QuYyAgPiY1IApjb25maWd1cmU6MTMzOTM6ICQ/ID0gMApjb25m aWd1cmU6MTMzOTM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMzM5MzogY2hlY2tpbmcgZm9y IGxjaG1vZApjb25maWd1cmU6MTMzOTM6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICBj b25mdGVzdC5jICA+JjUgCmNvbmZpZ3VyZToxMzM5MzogJD8gPSAwCmNvbmZpZ3VyZToxMzM5 MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEzMzkzOiBjaGVja2luZyBmb3IgZmNudGwKY29u ZmlndXJlOjEzMzkzOiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgY29uZnRlc3QuYyAg PiY1IApjb25maWd1cmU6MTMzOTM6ICQ/ID0gMApjb25maWd1cmU6MTMzOTM6IHJlc3VsdDog eWVzCmNvbmZpZ3VyZToxMzM5MzogY2hlY2tpbmcgZm9yIGZkb3BlbmRpcgpjb25maWd1cmU6 MTMzOTM6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICBjb25mdGVzdC5jICA+JjUgCmNv bmZpZ3VyZToxMzM5MzogJD8gPSAwCmNvbmZpZ3VyZToxMzM5MzogcmVzdWx0OiB5ZXMKY29u ZmlndXJlOjEzMzkzOiBjaGVja2luZyBmb3IgZnN0YXRhdApjb25maWd1cmU6MTMzOTM6IGdj YyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICBjb25mdGVzdC5jICA+JjUgCmNvbmZpZ3VyZTox MzM5MzogJD8gPSAwCmNvbmZpZ3VyZToxMzM5MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEz MzkzOiBjaGVja2luZyBmb3IgZnN5bmMKY29uZmlndXJlOjEzMzkzOiBnY2MgLW8gY29uZnRl c3QgLWczIC1PMiAgICAgY29uZnRlc3QuYyAgPiY1IApjb25maWd1cmU6MTMzOTM6ICQ/ID0g MApjb25maWd1cmU6MTMzOTM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMzM5MzogY2hlY2tp bmcgZm9yIGdldHRpbWVvZmRheQpjb25maWd1cmU6MTMzOTM6IGdjYyAtbyBjb25mdGVzdCAt ZzMgLU8yICAgICBjb25mdGVzdC5jICA+JjUgCmNvbmZpZ3VyZToxMzM5MzogJD8gPSAwCmNv bmZpZ3VyZToxMzM5MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEzMzkzOiBjaGVja2luZyBm b3IgbWVtc2V0X2V4cGxpY2l0CmNvbmZpZ3VyZToxMzM5MzogZ2NjIC1vIGNvbmZ0ZXN0IC1n MyAtTzIgICAgIGNvbmZ0ZXN0LmMgID4mNSAKL3Vzci9iaW4vbGQ6IC90bXAvY2NadDRtc2Mu bzogaW4gZnVuY3Rpb24gYG1haW4nOgovYXBwL2VtYWNzL2NvbmZ0ZXN0LmM6MTI0OiB1bmRl ZmluZWQgcmVmZXJlbmNlIHRvIGBtZW1zZXRfZXhwbGljaXQnCmNvbGxlY3QyOiBlcnJvcjog bGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpjb25maWd1cmU6MTMzOTM6ICQ/ID0gMQpjb25m aWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmlu ZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAi ZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMwLjAuNTAiCnwgI2RlZmluZSBQ QUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX0JV R1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwg Imh0dHBzOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgSEFWRV9Q RFVNUEVSIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fSCAxCnwgI2RlZmluZSBIQVZFX1NURExJ Ql9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBF U19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdT X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZ UEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFS X0ggMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9D X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZ X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VU TVBfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9MU0FOX0lOVEVSRkFDRV9IIDEKfCAj ZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0FTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFW RV9TQU5JVElaRVJfQ09NTU9OX0lOVEVSRkFDRV9ERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBI QVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhB VkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5lIEhB VkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVkZTX0ggMQp8ICNkZWZpbmUg SEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19DREVGU19IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX0lFRUU3NTRfSCAxCnwgI2RlZmlu ZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVm aW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JBTkRPTV9IIDEKfCAj ZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmlu ZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5l IF9IUFVYX0FMVF9YT1BFTl9TT0NLRVRfQVBJIDEKfCAjZGVmaW5lIF9ORVRCU0RfU09VUkNF IDEKfCAjZGVmaW5lIF9PUEVOQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVB RF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0FUVFJJQlNf RVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0JGUF9FWFRfXyAxCnwg I2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfREZQX0VYVF9fIDEKfCAjZGVmaW5lIF9f U1REQ19XQU5UX0lFQ182MDU1OV9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNf NjA1NTlfRlVOQ1NfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X1RZ UEVTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0xJQl9FWFQyX18gMQp8ICNkZWZp bmUgX19TVERDX1dBTlRfTUFUSF9TUEVDX0ZVTkNTX18gMQp8ICNkZWZpbmUgX1RBTkRFTV9T T1VSQ0UgMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgR0NDX0xJTlQg MQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAjZGVmaW5lIEhBVkVfU1lT X1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2RlZmluZSBIQVZFX1NP VU5EIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfQUREUl9OT19SQU5ET01JWkUgMQp8 ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZU0lORk9f VU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlU X0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZFX0lGQUREUlNf SCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUg SEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9J RlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJP QURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERSIDEKfCAjZGVm aW5lIEhBVkVfU0JSSyAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5l IEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfRkNI TU9EIDEKfCAjZGVmaW5lIEhBVkVfQ0FOT05JQ0FMSVpFX0ZJTEVfTkFNRSAxCnwgI2RlZmlu ZSBIQVZFX1JFQUxQQVRIIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFW RV9GQ0hNT0RBVCAxCnwgI2RlZmluZSBIQVZFX0xDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0ZD TlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRB VCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZ IDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgLyogRGVmaW5lIG1lbXNldF9leHBsaWNp dCB0byBhbiBpbm5vY3VvdXMgdmFyaWFudCwgaW4gY2FzZSA8bGltaXRzLmg+IGRlY2xhcmVz IG1lbXNldF9leHBsaWNpdC4KfCAgICBGb3IgZXhhbXBsZSwgSFAtVVggMTFpIDxsaW1pdHMu aD4gZGVjbGFyZXMgZ2V0dGltZW9mZGF5LiAgKi8KfCAjZGVmaW5lIG1lbXNldF9leHBsaWNp dCBpbm5vY3VvdXNfbWVtc2V0X2V4cGxpY2l0CnwgCnwgLyogU3lzdGVtIGhlYWRlciB0byBk ZWZpbmUgX19zdHViIG1hY3JvcyBhbmQgaG9wZWZ1bGx5IGZldyBwcm90b3R5cGVzLAp8ICAg IHdoaWNoIGNhbiBjb25mbGljdCB3aXRoIGNoYXIgbWVtc2V0X2V4cGxpY2l0ICgpOyBiZWxv dy4gICovCnwgCnwgI2luY2x1ZGUgPGxpbWl0cy5oPgp8ICN1bmRlZiBtZW1zZXRfZXhwbGlj aXQKfCAKfCAvKiBPdmVycmlkZSBhbnkgR0NDIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9p ZCBhbiBlcnJvci4KfCAgICBVc2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUg cmV0dXJuIHR5cGUgb2YgYSBHQ0MKfCAgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVu dCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLwp8ICNpZmRlZiBfX2NwbHVzcGx1 cwp8IGV4dGVybiAiQyIKfCAjZW5kaWYKfCBjaGFyIG1lbXNldF9leHBsaWNpdCAoKTsKfCAv KiBUaGUgR05VIEMgbGlicmFyeSBkZWZpbmVzIHRoaXMgZm9yIGZ1bmN0aW9ucyB3aGljaCBp dCBpbXBsZW1lbnRzCnwgICAgIHRvIGFsd2F5cyBmYWlsIHdpdGggRU5PU1lTLiAgU29tZSBm dW5jdGlvbnMgYXJlIGFjdHVhbGx5IG5hbWVkCnwgICAgIHNvbWV0aGluZyBzdGFydGluZyB3 aXRoIF9fIGFuZCB0aGUgbm9ybWFsIG5hbWUgaXMgYW4gYWxpYXMuICAqLwp8ICNpZiBkZWZp bmVkIF9fc3R1Yl9tZW1zZXRfZXhwbGljaXQgfHwgZGVmaW5lZCBfX3N0dWJfX19tZW1zZXRf ZXhwbGljaXQKfCBjaG9rZSBtZQp8ICNlbmRpZgp8IAp8IGludAp8IG1haW4gKHZvaWQpCnwg ewp8IHJldHVybiBtZW1zZXRfZXhwbGljaXQgKCk7CnwgICA7CnwgICByZXR1cm4gMDsKfCB9 CmNvbmZpZ3VyZToxMzM5MzogcmVzdWx0OiBubwpjb25maWd1cmU6MTMzOTM6IGNoZWNraW5n IGZvciBtZW1zZXRfcwpjb25maWd1cmU6MTMzOTM6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8y ICAgICBjb25mdGVzdC5jICA+JjUgCi91c3IvYmluL2xkOiAvdG1wL2NjMFNSakROLm86IGlu IGZ1bmN0aW9uIGBtYWluJzoKL2FwcC9lbWFjcy9jb25mdGVzdC5jOjEyNDogdW5kZWZpbmVk IHJlZmVyZW5jZSB0byBgbWVtc2V0X3MnCmNvbGxlY3QyOiBlcnJvcjogbGQgcmV0dXJuZWQg MSBleGl0IHN0YXR1cwpjb25maWd1cmU6MTMzOTM6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxl ZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05B TUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2Rl ZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklO RyAiR05VIEVtYWNzIDMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVn LWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHBzOi8vd3d3 LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgSEFWRV9QRFVNUEVSIDEKfCAj ZGVmaW5lIEhBVkVfU1RESU9fSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVm aW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVm aW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNk ZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZp bmUgSEFWRV9MSU5VWF9GU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0gg MQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2Rl ZmluZSBIQVZFX1NBTklUSVpFUl9MU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVf U0FOSVRJWkVSX0FTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJf Q09NTU9OX0lOVEVSRkFDRV9ERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0gg MQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fRVhU X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVkZTX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19DREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJ TUVfSCAxCnwgI2RlZmluZSBIQVZFX0lFRUU3NTRfSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlU U19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RE Qk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JBTkRPTV9IIDEKfCAjZGVmaW5lIFNURENf SEVBREVSUyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0Nf U09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9IUFVYX0FMVF9Y T1BFTl9TT0NLRVRfQVBJIDEKfCAjZGVmaW5lIF9ORVRCU0RfU09VUkNFIDEKfCAjZGVmaW5l IF9PUEVOQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1Mg MQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0FUVFJJQlNfRVhUX18gMQp8ICNk ZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0JGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NU RENfV0FOVF9JRUNfNjA1NTlfREZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lF Q182MDU1OV9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRlVOQ1Nf RVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X1RZUEVTX0VYVF9fIDEK fCAjZGVmaW5lIF9fU1REQ19XQU5UX0xJQl9FWFQyX18gMQp8ICNkZWZpbmUgX19TVERDX1dB TlRfTUFUSF9TUEVDX0ZVTkNTX18gMQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8ICNk ZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgR0NDX0xJTlQgMQp8ICNkZWZpbmUg U1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAjZGVmaW5lIEhBVkVfU1lTX1NPVU5EQ0FSRF9I IDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2RlZmluZSBIQVZFX1NPVU5EIDEKfCAjZGVm aW5lIEhBVkVfUEVSU09OQUxJVFlfQUREUl9OT19SQU5ET01JWkUgMQp8ICNkZWZpbmUgSEFW RV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwgI2Rl ZmluZSBIQVZFX1RFUk1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZp bmUgSEFWRV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZFX0lGQUREUlNfSCAxCnwgI2RlZmlu ZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1Rf SUZSRVFfSUZSX0hXQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfTkVU TUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJPQURBRERSIDEKfCAj ZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERSIDEKfCAjZGVmaW5lIEhBVkVfU0JS SyAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAx CnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVm aW5lIEhBVkVfQ0FOT05JQ0FMSVpFX0ZJTEVfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1JFQUxQ QVRIIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0RBVCAx CnwgI2RlZmluZSBIQVZFX0xDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVm aW5lIEhBVkVfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRBVCAxCnwgI2RlZmlu ZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAvKiBlbmQg Y29uZmRlZnMuaC4gICovCnwgLyogRGVmaW5lIG1lbXNldF9zIHRvIGFuIGlubm9jdW91cyB2 YXJpYW50LCBpbiBjYXNlIDxsaW1pdHMuaD4gZGVjbGFyZXMgbWVtc2V0X3MuCnwgICAgRm9y IGV4YW1wbGUsIEhQLVVYIDExaSA8bGltaXRzLmg+IGRlY2xhcmVzIGdldHRpbWVvZmRheS4g ICovCnwgI2RlZmluZSBtZW1zZXRfcyBpbm5vY3VvdXNfbWVtc2V0X3MKfCAKfCAvKiBTeXN0 ZW0gaGVhZGVyIHRvIGRlZmluZSBfX3N0dWIgbWFjcm9zIGFuZCBob3BlZnVsbHkgZmV3IHBy b3RvdHlwZXMsCnwgICAgd2hpY2ggY2FuIGNvbmZsaWN0IHdpdGggY2hhciBtZW1zZXRfcyAo KTsgYmVsb3cuICAqLwp8IAp8ICNpbmNsdWRlIDxsaW1pdHMuaD4KfCAjdW5kZWYgbWVtc2V0 X3MKfCAKfCAvKiBPdmVycmlkZSBhbnkgR0NDIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9p ZCBhbiBlcnJvci4KfCAgICBVc2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUg cmV0dXJuIHR5cGUgb2YgYSBHQ0MKfCAgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVu dCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLwp8ICNpZmRlZiBfX2NwbHVzcGx1 cwp8IGV4dGVybiAiQyIKfCAjZW5kaWYKfCBjaGFyIG1lbXNldF9zICgpOwp8IC8qIFRoZSBH TlUgQyBsaWJyYXJ5IGRlZmluZXMgdGhpcyBmb3IgZnVuY3Rpb25zIHdoaWNoIGl0IGltcGxl bWVudHMKfCAgICAgdG8gYWx3YXlzIGZhaWwgd2l0aCBFTk9TWVMuICBTb21lIGZ1bmN0aW9u cyBhcmUgYWN0dWFsbHkgbmFtZWQKfCAgICAgc29tZXRoaW5nIHN0YXJ0aW5nIHdpdGggX18g YW5kIHRoZSBub3JtYWwgbmFtZSBpcyBhbiBhbGlhcy4gICovCnwgI2lmIGRlZmluZWQgX19z dHViX21lbXNldF9zIHx8IGRlZmluZWQgX19zdHViX19fbWVtc2V0X3MKfCBjaG9rZSBtZQp8 ICNlbmRpZgp8IAp8IGludAp8IG1haW4gKHZvaWQpCnwgewp8IHJldHVybiBtZW1zZXRfcyAo KTsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjEzMzkzOiByZXN1bHQ6IG5v CmNvbmZpZ3VyZToxMzM5MzogY2hlY2tpbmcgZm9yIHBzZWxlY3QKY29uZmlndXJlOjEzMzkz OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgY29uZnRlc3QuYyAgPiY1IApjb25maWd1 cmU6MTMzOTM6ICQ/ID0gMApjb25maWd1cmU6MTMzOTM6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy ZToxMzM5MzogY2hlY2tpbmcgZm9yIHB0aHJlYWRfc2lnbWFzawpjb25maWd1cmU6MTMzOTM6 IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICBjb25mdGVzdC5jICA+JjUgCmNvbmZpZ3Vy ZToxMzM5MzogJD8gPSAwCmNvbmZpZ3VyZToxMzM5MzogcmVzdWx0OiB5ZXMKY29uZmlndXJl OjEzMzkzOiBjaGVja2luZyBmb3IgcmVhZGxpbmsKY29uZmlndXJlOjEzMzkzOiBnY2MgLW8g Y29uZnRlc3QgLWczIC1PMiAgICAgY29uZnRlc3QuYyAgPiY1IApjb25maWd1cmU6MTMzOTM6 ICQ/ID0gMApjb25maWd1cmU6MTMzOTM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMzM5Mzog Y2hlY2tpbmcgZm9yIGlzYmxhbmsKY29uZmlndXJlOjEzMzkzOiBnY2MgLW8gY29uZnRlc3Qg LWczIC1PMiAgICAgY29uZnRlc3QuYyAgPiY1IApjb25mdGVzdC5jOjExNjo2OiB3YXJuaW5n OiBjb25mbGljdGluZyB0eXBlcyBmb3IgYnVpbHQtaW4gZnVuY3Rpb24gJ2lzYmxhbmsnOyBl eHBlY3RlZCAnaW50KGludCknIFstV2J1aWx0aW4tZGVjbGFyYXRpb24tbWlzbWF0Y2hdCiAg MTE2IHwgY2hhciBpc2JsYW5rICgpOwogICAgICB8ICAgICAgXn5+fn5+fgpjb25mdGVzdC5j OjEwODoxOiBub3RlOiAnaXNibGFuaycgaXMgZGVjbGFyZWQgaW4gaGVhZGVyICc8Y3R5cGUu aD4nCiAgMTA3IHwgI2luY2x1ZGUgPGxpbWl0cy5oPgogIDEwOCB8ICN1bmRlZiBpc2JsYW5r CmNvbmZpZ3VyZToxMzM5MzogJD8gPSAwCmNvbmZpZ3VyZToxMzM5MzogcmVzdWx0OiB5ZXMK Y29uZmlndXJlOjEzMzkzOiBjaGVja2luZyBmb3IgaXN3Y3R5cGUKY29uZmlndXJlOjEzMzkz OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgY29uZnRlc3QuYyAgPiY1IApjb25maWd1 cmU6MTMzOTM6ICQ/ID0gMApjb25maWd1cmU6MTMzOTM6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy ZToxMzM5MzogY2hlY2tpbmcgZm9yIHN0cnRvaW1heApjb25maWd1cmU6MTMzOTM6IGdjYyAt byBjb25mdGVzdCAtZzMgLU8yICAgICBjb25mdGVzdC5jICA+JjUgCmNvbmZpZ3VyZToxMzM5 MzogJD8gPSAwCmNvbmZpZ3VyZToxMzM5MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEzMzkz OiBjaGVja2luZyBmb3Igc3ltbGluawpjb25maWd1cmU6MTMzOTM6IGdjYyAtbyBjb25mdGVz dCAtZzMgLU8yICAgICBjb25mdGVzdC5jICA+JjUgCmNvbmZpZ3VyZToxMzM5MzogJD8gPSAw CmNvbmZpZ3VyZToxMzM5MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEzMzkzOiBjaGVja2lu ZyBmb3IgbG9jYWx0aW1lX3IKY29uZmlndXJlOjEzMzkzOiBnY2MgLW8gY29uZnRlc3QgLWcz IC1PMiAgICAgY29uZnRlc3QuYyAgPiY1IApjb25maWd1cmU6MTMzOTM6ICQ/ID0gMApjb25m aWd1cmU6MTMzOTM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMzM5MzogY2hlY2tpbmcgZm9y IGdldGR0YWJsZXNpemUKY29uZmlndXJlOjEzMzkzOiBnY2MgLW8gY29uZnRlc3QgLWczIC1P MiAgICAgY29uZnRlc3QuYyAgPiY1IApjb25maWd1cmU6MTMzOTM6ICQ/ID0gMApjb25maWd1 cmU6MTMzOTM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMzUxODogY2hlY2tpbmcgZm9yIHdv cmtpbmcgbW1hcApjb25maWd1cmU6MTM2NzA6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAg ICBjb25mdGVzdC5jICA+JjUgCmNvbmZpZ3VyZToxMzY3MDogJD8gPSAwCmNvbmZpZ3VyZTox MzY3MDogLi9jb25mdGVzdApjb25maWd1cmU6MTM2NzA6ICQ/ID0gMApjb25maWd1cmU6MTM2 ODE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMzY5OTogY2hlY2tpbmcgZm9yIG1haW4gaW4g LWxYYnNkCmNvbmZpZ3VyZToxMzcxOTogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgIGNv bmZ0ZXN0LmMgLWxYYnNkICAgID4mNSAKL3Vzci9iaW4vbGQ6IGNhbm5vdCBmaW5kIC1sWGJz ZDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpjb2xsZWN0MjogZXJyb3I6IGxkIHJldHVy bmVkIDEgZXhpdCBzdGF0dXMKY29uZmlndXJlOjEzNzE5OiAkPyA9IDEKY29uZmlndXJlOiBm YWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FH RV9OQU1FICJHTlUgRW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8 ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9T VFJJTkcgIkdOVSBFbWFjcyAzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQg ImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJodHRwczov L3d3dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIEhBVkVfUERVTVBFUiAx CnwgI2RlZmluZSBIQVZFX1NURElPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwg I2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwg I2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEK fCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAj ZGVmaW5lIEhBVkVfTElOVVhfRlNfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1BUWV9IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFN RV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1QX0ggMQp8 ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfTFNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBI QVZFX1NBTklUSVpFUl9BU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJ WkVSX0NPTU1PTl9JTlRFUkZBQ0VfREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tF VF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhS RUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwgI2RlZmluZSBIQVZFX0RJUkVO VF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1NURElP X0VYVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1ZGU19IIDEKfCAjZGVmaW5lIEhBVkVfR0VU T1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfQ0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9JRUVFNzU0X0ggMQp8ICNkZWZpbmUgSEFWRV9M SU1JVFNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZF X1NUREJPT0xfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SQU5ET01fSCAxCnwgI2RlZmluZSBT VERDX0hFQURFUlMgMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJ Tl9DX1NPVVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBfSFBVWF9B TFRfWE9QRU5fU09DS0VUX0FQSSAxCnwgI2RlZmluZSBfTkVUQlNEX1NPVVJDRSAxCnwgI2Rl ZmluZSBfT1BFTkJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5U SUNTIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9BVFRSSUJTX0VYVF9fIDEK fCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9CRlBfRVhUX18gMQp8ICNkZWZpbmUg X19TVERDX1dBTlRfSUVDXzYwNTU5X0RGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FO VF9JRUNfNjA1NTlfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0ZV TkNTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9UWVBFU19FWFRf XyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9MSUJfRVhUMl9fIDEKfCAjZGVmaW5lIF9fU1RE Q19XQU5UX01BVEhfU1BFQ19GVU5DU19fIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEK fCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIEdDQ19MSU5UIDEKfCAjZGVm aW5lIFNZU1RFTV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENB UkRfSCAxCnwgI2RlZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwg I2RlZmluZSBIQVZFX1BFUlNPTkFMSVRZX0FERFJfTk9fUkFORE9NSVpFIDEKfCAjZGVmaW5l IEhBVkVfTElOVVhfU1lTSU5GTyAxCnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8 ICNkZWZpbmUgSEFWRV9URVJNX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAj ZGVmaW5lIEhBVkVfTkVUX0lGX0ggMQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfU1RS VUNUX0lGUkVRX0lGUl9IV0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZS X05FVE1BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAx CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQUREUiAxCnwgI2RlZmluZSBIQVZF X1NCUksgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX0ZP UksgMQp8ICNkZWZpbmUgSEFWRV9WRk9SSyAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwg I2RlZmluZSBIQVZFX0NBTk9OSUNBTElaRV9GSUxFX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9S RUFMUEFUSCAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9E QVQgMQp8ICNkZWZpbmUgSEFWRV9MQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwg I2RlZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNk ZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2Rl ZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8 ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX0lTQkxBTksgMQp8ICNk ZWZpbmUgSEFWRV9JU1dDVFlQRSAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2Rl ZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2Rl ZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgU1lTVEVNX01BTExPQyAxCnwg I2RlZmluZSBIQVZFX01NQVAgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAKfCBp bnQKfCBtYWluICh2b2lkKQp8IHsKfCByZXR1cm4gbWFpbiAoKTsKfCAgIDsKfCAgIHJldHVy biAwOwp8IH0KY29uZmlndXJlOjEzNzI5OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToxMzc0MTog Y2hlY2tpbmcgZm9yIHB0aHJlYWQgbGlicmFyeQpjb25maWd1cmU6MTM3Nzg6IGdjYyAtbyBj b25mdGVzdCAtZzMgLU8yICAgICBjb25mdGVzdC5jICAgPiY1IApjb25mdGVzdC5jOiBJbiBm dW5jdGlvbiAnbWFpbic6CmNvbmZ0ZXN0LmM6MTE3OjI1OiB3YXJuaW5nOiBhcmd1bWVudCAz IG51bGwgd2hlcmUgbm9uLW51bGwgZXhwZWN0ZWQgWy1Xbm9ubnVsbF0KICAxMTcgfCAgICAg ICAgICAgICAgIHN0YXR1cyArPSBwdGhyZWFkX2NyZWF0ZSAoJnRoLCAwLCAwLCAwKTsKICAg ICAgfCAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn5+fn5+fgpJbiBmaWxlIGlu Y2x1ZGVkIGZyb20gY29uZnRlc3QuYzoxMDg6Ci91c3IvaW5jbHVkZS9wdGhyZWFkLmg6MjAy OjEyOiBub3RlOiBpbiBhIGNhbGwgdG8gZnVuY3Rpb24gJ3B0aHJlYWRfY3JlYXRlJyBkZWNs YXJlZCAnbm9ubnVsbCcKICAyMDIgfCBleHRlcm4gaW50IHB0aHJlYWRfY3JlYXRlIChwdGhy ZWFkX3QgKl9fcmVzdHJpY3QgX19uZXd0aHJlYWQsCiAgICAgIHwgICAgICAgICAgICBefn5+ fn5+fn5+fn5+fgpjb25maWd1cmU6MTM3Nzg6ICQ/ID0gMApjb25maWd1cmU6MTM3OTA6IHJl c3VsdDogbm9uZSBuZWVkZWQKY29uZmlndXJlOjEzODE3OiBjaGVja2luZyBmb3IgdGhyZWFk IHN1cHBvcnQKY29uZmlndXJlOjEzODMzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTM5MDM6 IGNoZWNraW5nIGZvciBYa2IKY29uZmlndXJlOjEzOTIxOiBnY2MgLW8gY29uZnRlc3QgIC1n MyAtTzIgICAgICAgY29uZnRlc3QuYyAtbFgxMSAgID4mNSAKY29uZmlndXJlOjEzOTIxOiAk PyA9IDAKY29uZmlndXJlOjEzOTMwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTM5MzY6IGNo ZWNraW5nIGZvciBYa2JSZWZyZXNoS2V5Ym9hcmRNYXBwaW5nCmNvbmZpZ3VyZToxMzkzNjog Z2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yICAgICAgIGNvbmZ0ZXN0LmMgLWxYMTEgICA+JjUg CmNvbmZpZ3VyZToxMzkzNjogJD8gPSAwCmNvbmZpZ3VyZToxMzkzNjogcmVzdWx0OiB5ZXMK Y29uZmlndXJlOjEzOTQyOiBjaGVja2luZyBmb3IgWGtiRnJlZU5hbWVzCmNvbmZpZ3VyZTox Mzk0MjogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yICAgICAgIGNvbmZ0ZXN0LmMgLWxYMTEg ICA+JjUgCmNvbmZpZ3VyZToxMzk0MjogJD8gPSAwCmNvbmZpZ3VyZToxMzk0MjogcmVzdWx0 OiB5ZXMKY29uZmlndXJlOjEzOTUxOiBjaGVja2luZyBmb3IgWHJtU2V0RGF0YWJhc2UKY29u ZmlndXJlOjEzOTUxOiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgICAgICAgY29uZnRlc3Qu YyAtbFgxMSAgID4mNSAKY29uZmlndXJlOjEzOTUxOiAkPyA9IDAKY29uZmlndXJlOjEzOTUx OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTM5NTc6IGNoZWNraW5nIGZvciBYU2NyZWVuUmVz b3VyY2VTdHJpbmcKY29uZmlndXJlOjEzOTU3OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIg ICAgICAgY29uZnRlc3QuYyAtbFgxMSAgID4mNSAKY29uZmlndXJlOjEzOTU3OiAkPyA9IDAK Y29uZmlndXJlOjEzOTU3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTM5NjM6IGNoZWNraW5n IGZvciBYU2NyZWVuTnVtYmVyT2ZTY3JlZW4KY29uZmlndXJlOjEzOTYzOiBnY2MgLW8gY29u ZnRlc3QgIC1nMyAtTzIgICAgICAgY29uZnRlc3QuYyAtbFgxMSAgID4mNSAKY29uZmlndXJl OjEzOTYzOiAkPyA9IDAKY29uZmlndXJlOjEzOTYzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6 MTM5NzA6IGNoZWNraW5nIGZvciBYRGlzcGxheUNlbGxzCmNvbmZpZ3VyZToxMzk3MDogZ2Nj IC1vIGNvbmZ0ZXN0ICAtZzMgLU8yICAgICAgIGNvbmZ0ZXN0LmMgLWxYMTEgICA+JjUgCmNv bmZpZ3VyZToxMzk3MDogJD8gPSAwCmNvbmZpZ3VyZToxMzk3MDogcmVzdWx0OiB5ZXMKY29u ZmlndXJlOjEzOTc2OiBjaGVja2luZyBmb3IgWERlc3Ryb3lTdWJ3aW5kb3dzCmNvbmZpZ3Vy ZToxMzk3NjogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yICAgICAgIGNvbmZ0ZXN0LmMgLWxY MTEgICA+JjUgCmNvbmZpZ3VyZToxMzk3NjogJD8gPSAwCmNvbmZpZ3VyZToxMzk3NjogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjEzOTg2OiBjaGVja2luZyBYMTEgdmVyc2lvbiA2CmNvbmZp Z3VyZToxNDAwNjogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yICAgICAgIGNvbmZ0ZXN0LmMg LWxYMTEgICA+JjUgCmNvbmZpZ3VyZToxNDAwNjogJD8gPSAwCmNvbmZpZ3VyZToxNDAxNzog cmVzdWx0OiA2IG9yIG5ld2VyCmNvbmZpZ3VyZToxNDAyNTogY2hlY2tpbmcgZm9yIFhJQ0Nh bGxiYWNrLmNhbGxiYWNrCmNvbmZpZ3VyZToxNDAyNTogZ2NjIC1jICAtZzMgLU8yICAgICBj b25mdGVzdC5jID4mNQpjb25maWd1cmU6MTQwMjU6ICQ/ID0gMApjb25maWd1cmU6MTQwMjU6 IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDA2MjogY2hlY2tpbmcgZm9yIGxpYnJzdmctMi4w ID49IDIuMTQuMApjb25maWd1cmU6MTQwNjk6ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0tcHJp bnQtZXJyb3JzICIkUlNWR19NT0RVTEUiCmNvbmZpZ3VyZToxNDA3MjogJD8gPSAwCmNvbmZp Z3VyZToxNDA4NjogJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgIiRSU1ZH X01PRFVMRSIKY29uZmlndXJlOjE0MDg5OiAkPyA9IDAKY29uZmlndXJlOjE0MTI3OiByZXN1 bHQ6IHllcwpjb25maWd1cmU6MTQxNTk6IGNoZWNraW5nIGZvciBsaWJ3ZWJwZGVtdXggPj0g MC42LjAKY29uZmlndXJlOjE0MTY2OiAkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVy cm9ycyAiJFdFQlBfTU9EVUxFIgpjb25maWd1cmU6MTQxNjk6ICQ/ID0gMApjb25maWd1cmU6 MTQxODM6ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzICIkV0VCUF9NT0RV TEUiCmNvbmZpZ3VyZToxNDE4NjogJD8gPSAwCmNvbmZpZ3VyZToxNDIyNDogcmVzdWx0OiB5 ZXMKY29uZmlndXJlOjE0MjM5OiBjaGVja2luZyBmb3IgV2ViUEdldEluZm8KY29uZmlndXJl OjE0MjM5OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVm LTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAg LWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVp ZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAgICAgICBjb25mdGVzdC5j IC1sWDExICAgLWx3ZWJwZGVtdXggPiY1IAovdXNyL2Jpbi9sZDogL3RtcC9jYzZtVGwwNC5v OiBpbiBmdW5jdGlvbiBgbWFpbic6Ci9hcHAvZW1hY3MvY29uZnRlc3QuYzoxNTA6IHVuZGVm aW5lZCByZWZlcmVuY2UgdG8gYFdlYlBHZXRJbmZvJwpjb2xsZWN0MjogZXJyb3I6IGxkIHJl dHVybmVkIDEgZXhpdCBzdGF0dXMKY29uZmlndXJlOjE0MjM5OiAkPyA9IDEKY29uZmlndXJl OiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFD S0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNz Igp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FH RV9TVFJJTkcgIkdOVSBFbWFjcyAzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBP UlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJodHRw czovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIEhBVkVfUERVTVBF UiAxCnwgI2RlZmluZSBIQVZFX1NURElPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAx CnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAx CnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19I IDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEK fCAjZGVmaW5lIEhBVkVfTElOVVhfRlNfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1BUWV9IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRT TkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1QX0gg MQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfTFNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmlu ZSBIQVZFX1NBTklUSVpFUl9BU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FO SVRJWkVSX0NPTU1PTl9JTlRFUkZBQ0VfREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NP Q0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9Q VEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwgI2RlZmluZSBIQVZFX0RJ UkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1NU RElPX0VYVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1ZGU19IIDEKfCAjZGVmaW5lIEhBVkVf R0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfQ0RFRlNfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9JRUVFNzU0X0ggMQp8ICNkZWZpbmUgSEFW RV9MSU1JVFNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBI QVZFX1NUREJPT0xfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SQU5ET01fSCAxCnwgI2RlZmlu ZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RB UldJTl9DX1NPVVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBfSFBV WF9BTFRfWE9QRU5fU09DS0VUX0FQSSAxCnwgI2RlZmluZSBfTkVUQlNEX1NPVVJDRSAxCnwg I2RlZmluZSBfT1BFTkJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VN QU5USUNTIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9BVFRSSUJTX0VYVF9f IDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9CRlBfRVhUX18gMQp8ICNkZWZp bmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0RGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENf V0FOVF9JRUNfNjA1NTlfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5 X0ZVTkNTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9UWVBFU19F WFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9MSUJfRVhUMl9fIDEKfCAjZGVmaW5lIF9f U1REQ19XQU5UX01BVEhfU1BFQ19GVU5DU19fIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNF IDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIEdDQ19MSU5UIDEKfCAj ZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VO RENBUkRfSCAxCnwgI2RlZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAx CnwgI2RlZmluZSBIQVZFX1BFUlNPTkFMSVRZX0FERFJfTk9fUkFORE9NSVpFIDEKfCAjZGVm aW5lIEhBVkVfTElOVVhfU1lTSU5GTyAxCnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQg MQp8ICNkZWZpbmUgSEFWRV9URVJNX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEK fCAjZGVmaW5lIEhBVkVfTkVUX0lGX0ggMQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0ggMQp8 ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVf U1RSVUNUX0lGUkVRX0lGUl9IV0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFf SUZSX05FVE1BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQURE UiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQUREUiAxCnwgI2RlZmluZSBI QVZFX1NCUksgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZF X0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9WRk9SSyAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAx CnwgI2RlZmluZSBIQVZFX0NBTk9OSUNBTElaRV9GSUxFX05BTUUgMQp8ICNkZWZpbmUgSEFW RV9SRUFMUEFUSCAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfRkNI TU9EQVQgMQp8ICNkZWZpbmUgSEFWRV9MQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAx CnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8 ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwg I2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sg MQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX0lTQkxBTksgMQp8 ICNkZWZpbmUgSEFWRV9JU1dDVFlQRSAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwg I2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwg I2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgU1lTVEVNX01BTExPQyAx CnwgI2RlZmluZSBIQVZFX01NQVAgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEIDEKfCAjZGVm aW5lIFRIUkVBRFNfRU5BQkxFRCAxCnwgI2RlZmluZSBIQVZFX1hLQiAxCnwgI2RlZmluZSBI QVZFX1hLQlJFRlJFU0hLRVlCT0FSRE1BUFBJTkcgMQp8ICNkZWZpbmUgSEFWRV9YS0JGUkVF TkFNRVMgMQp8ICNkZWZpbmUgSEFWRV9YUk1TRVREQVRBQkFTRSAxCnwgI2RlZmluZSBIQVZF X1hTQ1JFRU5SRVNPVVJDRVNUUklORyAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJP RlNDUkVFTiAxCnwgI2RlZmluZSBIQVZFX1hESVNQTEFZQ0VMTFMgMQp8ICNkZWZpbmUgSEFW RV9YREVTVFJPWVNVQldJTkRPV1MgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNiAxCnwgI2RlZmlu ZSBIQVZFX1hfSTE4TiAxCnwgI2RlZmluZSBIQVZFX1hJQ0NBTExCQUNLX0NBTExCQUNLIDEK fCAjZGVmaW5lIEhBVkVfWDExUjZfWElNIDEKfCAjZGVmaW5lIEhBVkVfUlNWRyAxCnwgLyog ZW5kIGNvbmZkZWZzLmguICAqLwp8IC8qIERlZmluZSBXZWJQR2V0SW5mbyB0byBhbiBpbm5v Y3VvdXMgdmFyaWFudCwgaW4gY2FzZSA8bGltaXRzLmg+IGRlY2xhcmVzIFdlYlBHZXRJbmZv Lgp8ICAgIEZvciBleGFtcGxlLCBIUC1VWCAxMWkgPGxpbWl0cy5oPiBkZWNsYXJlcyBnZXR0 aW1lb2ZkYXkuICAqLwp8ICNkZWZpbmUgV2ViUEdldEluZm8gaW5ub2N1b3VzX1dlYlBHZXRJ bmZvCnwgCnwgLyogU3lzdGVtIGhlYWRlciB0byBkZWZpbmUgX19zdHViIG1hY3JvcyBhbmQg aG9wZWZ1bGx5IGZldyBwcm90b3R5cGVzLAp8ICAgIHdoaWNoIGNhbiBjb25mbGljdCB3aXRo IGNoYXIgV2ViUEdldEluZm8gKCk7IGJlbG93LiAgKi8KfCAKfCAjaW5jbHVkZSA8bGltaXRz Lmg+CnwgI3VuZGVmIFdlYlBHZXRJbmZvCnwgCnwgLyogT3ZlcnJpZGUgYW55IEdDQyBpbnRl cm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuCnwgICAgVXNlIGNoYXIgYmVjYXVz ZSBpbnQgbWlnaHQgbWF0Y2ggdGhlIHJldHVybiB0eXBlIG9mIGEgR0NDCnwgICAgYnVpbHRp biBhbmQgdGhlbiBpdHMgYXJndW1lbnQgcHJvdG90eXBlIHdvdWxkIHN0aWxsIGFwcGx5LiAg Ki8KfCAjaWZkZWYgX19jcGx1c3BsdXMKfCBleHRlcm4gIkMiCnwgI2VuZGlmCnwgY2hhciBX ZWJQR2V0SW5mbyAoKTsKfCAvKiBUaGUgR05VIEMgbGlicmFyeSBkZWZpbmVzIHRoaXMgZm9y IGZ1bmN0aW9ucyB3aGljaCBpdCBpbXBsZW1lbnRzCnwgICAgIHRvIGFsd2F5cyBmYWlsIHdp dGggRU5PU1lTLiAgU29tZSBmdW5jdGlvbnMgYXJlIGFjdHVhbGx5IG5hbWVkCnwgICAgIHNv bWV0aGluZyBzdGFydGluZyB3aXRoIF9fIGFuZCB0aGUgbm9ybWFsIG5hbWUgaXMgYW4gYWxp YXMuICAqLwp8ICNpZiBkZWZpbmVkIF9fc3R1Yl9XZWJQR2V0SW5mbyB8fCBkZWZpbmVkIF9f c3R1Yl9fX1dlYlBHZXRJbmZvCnwgY2hva2UgbWUKfCAjZW5kaWYKfCAKfCBpbnQKfCBtYWlu ICh2b2lkKQp8IHsKfCByZXR1cm4gV2ViUEdldEluZm8gKCk7CnwgICA7CnwgICByZXR1cm4g MDsKfCB9CmNvbmZpZ3VyZToxNDIzOTogcmVzdWx0OiBubwpjb25maWd1cmU6MTQyNTA6IGNo ZWNraW5nIGZvciBsaWJ3ZWJwZGVtdXggPj0gMC42LjAgbGlid2VicGRlY29kZXIgPj0gMC42 LjAKY29uZmlndXJlOjE0MjU3OiAkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9y cyAiJFdFQlBfTU9EVUxFIgpjb25maWd1cmU6MTQyNjA6ICQ/ID0gMApjb25maWd1cmU6MTQy NzQ6ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzICIkV0VCUF9NT0RVTEUi CmNvbmZpZ3VyZToxNDI3NzogJD8gPSAwCmNvbmZpZ3VyZToxNDMxNTogcmVzdWx0OiB5ZXMK Y29uZmlndXJlOjE0MzQ0OiBjaGVja2luZyBmb3Igc3FsaXRlM19vcGVuX3YyIGluIC1sc3Fs aXRlMwpjb25maWd1cmU6MTQzNjc6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVh ZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgt Z251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWIt Mi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwICAg ICAgIGNvbmZ0ZXN0LmMgLWxzcWxpdGUzICAtbFgxMSAgID4mNSAKY29uZmlndXJlOjE0MzY3 OiAkPyA9IDAKY29uZmlndXJlOjE0Mzc3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQzOTc6 IGNoZWNraW5nIGZvciBzcWxpdGUzX2xvYWRfZXh0ZW5zaW9uIGluIC1sc3FsaXRlMwpjb25m aWd1cmU6MTQ0MjA6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1w aXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lz dGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGli LTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1 ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwICAgICAgIGNvbmZ0 ZXN0LmMgLWxzcWxpdGUzICAtbHNxbGl0ZTMgLWxYMTEgICA+JjUgCmNvbmZpZ3VyZToxNDQy MDogJD8gPSAwCmNvbmZpZ3VyZToxNDQzMDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0NjY1 OiBjaGVja2luZyBmb3IgZ2V0YWRkcmluZm9fYSBpbiAtbGFubApjb25maWd1cmU6MTQ2ODg6 IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1p c3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5j bHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3Rl bSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBu ZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwICAgICAgIGNvbmZ0ZXN0LmMgLWxhbmwg IC1sc3FsaXRlMyAtbFgxMSAgID4mNSAKY29uZmlndXJlOjE0Njg4OiAkPyA9IDAKY29uZmln dXJlOjE0Njk4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQ3MzA6IGNoZWNraW5nIGZvciBn dGsrLTMuMCA+PSAzLjEwIGdsaWItMi4wID49IDIuMzcuNQpjb25maWd1cmU6MTQ3Mzc6ICRQ S0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzICIkR1RLX01PRFVMRVMiCmNvbmZp Z3VyZToxNDc0MDogJD8gPSAwCmNvbmZpZ3VyZToxNDc1NDogJFBLR19DT05GSUcgLS1leGlz dHMgLS1wcmludC1lcnJvcnMgIiRHVEtfTU9EVUxFUyIKY29uZmlndXJlOjE0NzU3OiAkPyA9 IDAKY29uZmlndXJlOjE0Nzk1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQ5MTg6IGNoZWNr aW5nIHdoZXRoZXIgR1RLIGNvbXBpbGVzCmNvbmZpZ3VyZToxNDk0OTogZ2NjIC1vIGNvbmZ0 ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIu MCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50 IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fp cm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4 Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv cGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3dlYnAgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2d0ay0z LjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2F0LXNwaTItYXRrLzIuMCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvYXQtc3BpLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZGJ1cy0xLjAgLWlz eXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9kYnVzLTEuMC9pbmNsdWRlIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9ndGstMy4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9naW8tdW5p eC0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9wYW5nby0xLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9wYW5nby0xLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyaWJpZGkgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9hdGst MS4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv cGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZf NjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lz dGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAgICAgICBj b25mdGVzdC5jIC1sZ3RrLTMgLWxnZGstMyAtbHBhbmdvY2Fpcm8tMS4wIC1scGFuZ28tMS4w IC1saGFyZmJ1enogLWxhdGstMS4wIC1sY2Fpcm8tZ29iamVjdCAtbGNhaXJvIC1sZ2RrX3Bp eGJ1Zi0yLjAgLWxnaW8tMi4wIC1sZ29iamVjdC0yLjAgLWxnbGliLTIuMCAtbHNxbGl0ZTMg LWxYMTEgICA+JjUgCmNvbmZpZ3VyZToxNDk0OTogJD8gPSAwCmNvbmZpZ3VyZToxNDk1ODog cmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0OTc0OiBXQVJOSU5HOiBZb3VyIHZlcnNpb24gb2Yg R3RrKyB3aWxsIGhhdmUgcHJvYmxlbXMgd2l0aAogICAgICAgY2xvc2luZyBvcGVuIGRpc3Bs YXlzLiAgVGhpcyBpcyBubyBwcm9ibGVtIGlmIHlvdSBqdXN0IHVzZQogICAgICAgb25lIGRp c3BsYXksIGJ1dCBpZiB5b3UgdXNlIG1vcmUgdGhhbiBvbmUgYW5kIGNsb3NlIG9uZSBvZiB0 aGVtCiAgICAgICBFbWFjcyBtYXkgY3Jhc2guCiAgICAgICBTZWUgaHR0cHM6Ly9naXRsYWIu Z25vbWUub3JnL0dOT01FL2d0ay9pc3N1ZXMvMjIxCmNvbmZpZ3VyZToxNTEyMjogY2hlY2tp bmcgZm9yIG1hbGxvY190cmltCmNvbmZpZ3VyZToxNTEyMjogZ2NjIC1vIGNvbmZ0ZXN0ICAt ZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lz dGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1s aW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFu LTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Zy ZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3dlYnAgICAgICAgY29uZnRlc3QuYyAtbHNxbGl0ZTMgLWxYMTEgICA+JjUgCmNv bmZpZ3VyZToxNTEyMjogJD8gPSAwCmNvbmZpZ3VyZToxNTEyMjogcmVzdWx0OiB5ZXMKY29u ZmlndXJlOjE1MTM1OiBjaGVja2luZyBmb3IgZGJ1cy0xID49IDEuMApjb25maWd1cmU6MTUx NDI6ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzICJkYnVzLTEgPj0gMS4w Igpjb25maWd1cmU6MTUxNDU6ICQ/ID0gMApjb25maWd1cmU6MTUxNTk6ICRQS0dfQ09ORklH IC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzICJkYnVzLTEgPj0gMS4wIgpjb25maWd1cmU6MTUx NjI6ICQ/ID0gMApjb25maWd1cmU6MTUyMDA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNTIx MTogY2hlY2tpbmcgZm9yIGRidXNfd2F0Y2hfZ2V0X3VuaXhfZmQKY29uZmlndXJlOjE1MjEx OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0 ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJw bmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAgICAgICBjb25mdGVzdC5jIC1sc3Fs aXRlMyAtbFgxMSAgIC1sZGJ1cy0xID4mNSAKY29uZmlndXJlOjE1MjExOiAkPyA9IDAKY29u ZmlndXJlOjE1MjExOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTUyMTc6IGNoZWNraW5nIGZv ciBkYnVzX3R5cGVfaXNfdmFsaWQKY29uZmlndXJlOjE1MjE3OiBnY2MgLW8gY29uZnRlc3Qg IC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0 LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXht YW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv ZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvd2VicCAgICAgICBjb25mdGVzdC5jIC1sc3FsaXRlMyAtbFgxMSAgIC1sZGJ1 cy0xID4mNSAKY29uZmlndXJlOjE1MjE3OiAkPyA9IDAKY29uZmlndXJlOjE1MjE3OiByZXN1 bHQ6IHllcwpjb25maWd1cmU6MTUyMjM6IGNoZWNraW5nIGZvciBkYnVzX3ZhbGlkYXRlX2J1 c19uYW1lCmNvbmZpZ3VyZToxNTIyMzogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhy ZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51 eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5j bHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xp Yi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAg ICAgICAgY29uZnRlc3QuYyAtbHNxbGl0ZTMgLWxYMTEgICAtbGRidXMtMSA+JjUgCmNvbmZp Z3VyZToxNTIyMzogJD8gPSAwCmNvbmZpZ3VyZToxNTIyMzogcmVzdWx0OiB5ZXMKY29uZmln dXJlOjE1MjI5OiBjaGVja2luZyBmb3IgZGJ1c192YWxpZGF0ZV9wYXRoCmNvbmZpZ3VyZTox NTIyOTogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0y LjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1p c3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv bGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgICAgICAgY29uZnRlc3QuYyAt bHNxbGl0ZTMgLWxYMTEgICAtbGRidXMtMSA+JjUgCmNvbmZpZ3VyZToxNTIyOTogJD8gPSAw CmNvbmZpZ3VyZToxNTIyOTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE1MjM1OiBjaGVja2lu ZyBmb3IgZGJ1c192YWxpZGF0ZV9pbnRlcmZhY2UKY29uZmlndXJlOjE1MjM1OiBnY2MgLW8g Y29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJz dmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGli bW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9s aWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAgICAgICBjb25mdGVzdC5jIC1sc3FsaXRlMyAtbFgx MSAgIC1sZGJ1cy0xID4mNSAKY29uZmlndXJlOjE1MjM1OiAkPyA9IDAKY29uZmlndXJlOjE1 MjM1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTUyNDE6IGNoZWNraW5nIGZvciBkYnVzX3Zh bGlkYXRlX21lbWJlcgpjb25maWd1cmU6MTUyNDE6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1P MiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZf NjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgt Z251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1p c3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlw ZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVk ZS93ZWJwICAgICAgIGNvbmZ0ZXN0LmMgLWxzcWxpdGUzIC1sWDExICAgLWxkYnVzLTEgPiY1 IApjb25maWd1cmU6MTUyNDE6ICQ/ID0gMApjb25maWd1cmU6MTUyNDE6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZToxNTI2MDogY2hlY2tpbmcgZm9yIGdpby0yLjAgPj0gMi4yNgpjb25maWd1 cmU6MTUyNjc6ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzICJnaW8tMi4w ID49IDIuMjYiCmNvbmZpZ3VyZToxNTI3MDogJD8gPSAwCmNvbmZpZ3VyZToxNTI4NDogJFBL R19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgImdpby0yLjAgPj0gMi4yNiIKY29u ZmlndXJlOjE1Mjg3OiAkPyA9IDAKY29uZmlndXJlOjE1MzI1OiByZXN1bHQ6IHllcwpjb25m aWd1cmU6MTUzMzU6IGNoZWNraW5nIHdoZXRoZXIgR1NldHRpbmdzIGlzIGluIGdpbwpjb25m aWd1cmU6MTUzNTg6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1w aXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lz dGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGli LTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1 ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1wdGhyZWFkIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxr aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4 Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAgICAgICBjb25mdGVzdC5jIC1sc3Fs aXRlMyAtbFgxMSAgIC1sZ2lvLTIuMCAtbGdvYmplY3QtMi4wIC1sZ2xpYi0yLjAgPiY1IApj b25maWd1cmU6MTUzNTg6ICQ/ID0gMApjb25maWd1cmU6MTUzNjc6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZToxNTQ3MDogY2hlY2tpbmcgZm9yIGdvYmplY3QtMi4wID49IDIuMApjb25maWd1 cmU6MTU0Nzc6ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzICJnb2JqZWN0 LTIuMCA+PSAyLjAiCmNvbmZpZ3VyZToxNTQ4MDogJD8gPSAwCmNvbmZpZ3VyZToxNTQ5NDog JFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgImdvYmplY3QtMi4wID49IDIu MCIKY29uZmlndXJlOjE1NDk3OiAkPyA9IDAKY29uZmlndXJlOjE1NTM1OiByZXN1bHQ6IHll cwpjb25maWd1cmU6MTU1NjM6IGNoZWNraW5nIGZvciBsZ2V0ZmlsZWNvbiBpbiAtbHNlbGlu dXgKY29uZmlndXJlOjE1NTg2OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdu dSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIu MC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAgICAg ICBjb25mdGVzdC5jIC1sc2VsaW51eCAgLWxzcWxpdGUzIC1sWDExICAgPiY1IApjb25maWd1 cmU6MTU1ODY6ICQ/ID0gMApjb25maWd1cmU6MTU1OTY6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy ZToxNTYxODogY2hlY2tpbmcgZm9yIGdudXRscyA+PSAyLjEyLjIKY29uZmlndXJlOjE1NjI1 OiAkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyAiZ251dGxzID49IDIuMTIu MiIKY29uZmlndXJlOjE1NjI4OiAkPyA9IDAKY29uZmlndXJlOjE1NjQyOiAkUEtHX0NPTkZJ RyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyAiZ251dGxzID49IDIuMTIuMiIKY29uZmlndXJl OjE1NjQ1OiAkPyA9IDAKY29uZmlndXJlOjE1NjgzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6 MTU3MDc6IGNoZWNraW5nIGZvciBsaWJzeXN0ZW1kID49IDIyMgpjb25maWd1cmU6MTU3MTQ6 ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzICJsaWJzeXN0ZW1kID49IDIy MiIKY29uZmlndXJlOjE1NzE3OiAkPyA9IDAKY29uZmlndXJlOjE1NzMxOiAkUEtHX0NPTkZJ RyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyAibGlic3lzdGVtZCA+PSAyMjIiCmNvbmZpZ3Vy ZToxNTczNDogJD8gPSAwCmNvbmZpZ3VyZToxNTc3MjogcmVzdWx0OiB5ZXMKY29uZmlndXJl OjE1NzkzOiBjaGVja2luZyBmb3IgamFuc3NvbiA+PSAyLjcKY29uZmlndXJlOjE1ODAwOiAk UEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyAiamFuc3NvbiA+PSAyLjciCmNv bmZpZ3VyZToxNTgwMzogJD8gPSAwCmNvbmZpZ3VyZToxNTgxNzogJFBLR19DT05GSUcgLS1l eGlzdHMgLS1wcmludC1lcnJvcnMgImphbnNzb24gPj0gMi43Igpjb25maWd1cmU6MTU4MjA6 ICQ/ID0gMApjb25maWd1cmU6MTU4NTg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNTg4Nzog Y2hlY2tpbmcgZm9yIHRyZWUtc2l0dGVyID49IDAuMjAuMgpjb25maWd1cmU6MTU4OTQ6ICRQ S0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzICJ0cmVlLXNpdHRlciA+PSAwLjIw LjIiClBhY2thZ2UgdHJlZS1zaXR0ZXIgd2FzIG5vdCBmb3VuZCBpbiB0aGUgcGtnLWNvbmZp ZyBzZWFyY2ggcGF0aC4KUGVyaGFwcyB5b3Ugc2hvdWxkIGFkZCB0aGUgZGlyZWN0b3J5IGNv bnRhaW5pbmcgYHRyZWUtc2l0dGVyLnBjJwp0byB0aGUgUEtHX0NPTkZJR19QQVRIIGVudmly b25tZW50IHZhcmlhYmxlCk5vIHBhY2thZ2UgJ3RyZWUtc2l0dGVyJyBmb3VuZApjb25maWd1 cmU6MTU4OTc6ICQ/ID0gMQpjb25maWd1cmU6MTU5MTE6ICRQS0dfQ09ORklHIC0tZXhpc3Rz IC0tcHJpbnQtZXJyb3JzICJ0cmVlLXNpdHRlciA+PSAwLjIwLjIiClBhY2thZ2UgdHJlZS1z aXR0ZXIgd2FzIG5vdCBmb3VuZCBpbiB0aGUgcGtnLWNvbmZpZyBzZWFyY2ggcGF0aC4KUGVy aGFwcyB5b3Ugc2hvdWxkIGFkZCB0aGUgZGlyZWN0b3J5IGNvbnRhaW5pbmcgYHRyZWUtc2l0 dGVyLnBjJwp0byB0aGUgUEtHX0NPTkZJR19QQVRIIGVudmlyb25tZW50IHZhcmlhYmxlCk5v IHBhY2thZ2UgJ3RyZWUtc2l0dGVyJyBmb3VuZApjb25maWd1cmU6MTU5MTQ6ICQ/ID0gMQpj b25maWd1cmU6MTU5Mjg6IHJlc3VsdDogbm8KTm8gcGFja2FnZSAndHJlZS1zaXR0ZXInIGZv dW5kCmNvbmZpZ3VyZToxNTk2NDogY2hlY2tpbmcgZm9yIHRyZWUtc2l0dGVyID49IDAuNi4z CmNvbmZpZ3VyZToxNTk3MTogJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMg InRyZWUtc2l0dGVyID49IDAuNi4zIgpQYWNrYWdlIHRyZWUtc2l0dGVyIHdhcyBub3QgZm91 bmQgaW4gdGhlIHBrZy1jb25maWcgc2VhcmNoIHBhdGguClBlcmhhcHMgeW91IHNob3VsZCBh ZGQgdGhlIGRpcmVjdG9yeSBjb250YWluaW5nIGB0cmVlLXNpdHRlci5wYycKdG8gdGhlIFBL R19DT05GSUdfUEFUSCBlbnZpcm9ubWVudCB2YXJpYWJsZQpObyBwYWNrYWdlICd0cmVlLXNp dHRlcicgZm91bmQKY29uZmlndXJlOjE1OTc0OiAkPyA9IDEKY29uZmlndXJlOjE1OTg4OiAk UEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyAidHJlZS1zaXR0ZXIgPj0gMC42 LjMiClBhY2thZ2UgdHJlZS1zaXR0ZXIgd2FzIG5vdCBmb3VuZCBpbiB0aGUgcGtnLWNvbmZp ZyBzZWFyY2ggcGF0aC4KUGVyaGFwcyB5b3Ugc2hvdWxkIGFkZCB0aGUgZGlyZWN0b3J5IGNv bnRhaW5pbmcgYHRyZWUtc2l0dGVyLnBjJwp0byB0aGUgUEtHX0NPTkZJR19QQVRIIGVudmly b25tZW50IHZhcmlhYmxlCk5vIHBhY2thZ2UgJ3RyZWUtc2l0dGVyJyBmb3VuZApjb25maWd1 cmU6MTU5OTE6ICQ/ID0gMQpjb25maWd1cmU6MTYwMDU6IHJlc3VsdDogbm8KTm8gcGFja2Fn ZSAndHJlZS1zaXR0ZXInIGZvdW5kCmNvbmZpZ3VyZToxNjA5NzogY2hlY2tpbmcgZm9yIHN5 cy9pbm90aWZ5LmgKY29uZmlndXJlOjE2MDk3OiBnY2MgLWMgIC1nMyAtTzIgLXB0aHJlYWQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdu dSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIu MC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAgICAg Y29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjE2MDk3OiAkPyA9IDAKY29uZmlndXJlOjE2MDk3 OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTYxMDQ6IGNoZWNraW5nIGZvciBpbm90aWZ5X2lu aXQxCmNvbmZpZ3VyZToxNjEwNDogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFk IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1n bnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0y LjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgICAg ICAgY29uZnRlc3QuYyAtbHNxbGl0ZTMgLWxYMTEgICA+JjUgCmNvbmZpZ3VyZToxNjEwNDog JD8gPSAwCmNvbmZpZ3VyZToxNjEwNDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE2ODM3OiBn Y2MgLWMgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmct Mi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91 bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9j YWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIv eDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvd2VicCAgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjE2ODM3 OiAkPyA9IDAKY29uZmlndXJlOjE2ODcwOiBnY2MgLWMgIC1nMyAtTzIgLXB0aHJlYWQgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9n ZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Js a2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv Z2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9p bmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAgICAgY29u ZnRlc3QuYyA+JjUKY29uZmlndXJlOjE2ODcwOiAkPyA9IDAKY29uZmlndXJlOjE2ODcyOiBj aGVja2luZyBmb3IgWFJlbmRlclF1ZXJ5RXh0ZW5zaW9uIGluIC1sWHJlbmRlcgpjb25maWd1 cmU6MTY4OTU6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhi dWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVt IC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIu MCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91 dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwICAgICAgIGNvbmZ0ZXN0 LmMgLWxYcmVuZGVyICAtbHNxbGl0ZTMgLWxYMTEgICA+JjUgCmNvbmZpZ3VyZToxNjg5NTog JD8gPSAwCmNvbmZpZ3VyZToxNjkwNTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE2OTMwOiBj aGVja2luZyBmb3IgY2Fpcm8gPj0gMS44LjAKY29uZmlndXJlOjE2OTM3OiAkUEtHX0NPTkZJ RyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyAiJENBSVJPX01PRFVMRSIKY29uZmlndXJlOjE2 OTQwOiAkPyA9IDAKY29uZmlndXJlOjE2OTU0OiAkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXBy aW50LWVycm9ycyAiJENBSVJPX01PRFVMRSIKY29uZmlndXJlOjE2OTU3OiAkPyA9IDAKY29u ZmlndXJlOjE2OTk1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTcwMDQ6IGNoZWNraW5nIGZv ciBjYWlyby14Y2IgPj0gMS44LjAKY29uZmlndXJlOjE3MDExOiAkUEtHX0NPTkZJRyAtLWV4 aXN0cyAtLXByaW50LWVycm9ycyAiJENBSVJPX1hDQl9NT0RVTEUiCmNvbmZpZ3VyZToxNzAx NDogJD8gPSAwCmNvbmZpZ3VyZToxNzAyODogJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmlu dC1lcnJvcnMgIiRDQUlST19YQ0JfTU9EVUxFIgpjb25maWd1cmU6MTcwMzE6ICQ/ID0gMApj b25maWd1cmU6MTcwNjk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNzU0MzogY2hlY2tpbmcg Zm9yIGZyZWV0eXBlMgpjb25maWd1cmU6MTc1NTA6ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0t cHJpbnQtZXJyb3JzICJmcmVldHlwZTIiCmNvbmZpZ3VyZToxNzU1MzogJD8gPSAwCmNvbmZp Z3VyZToxNzU2NzogJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgImZyZWV0 eXBlMiIKY29uZmlndXJlOjE3NTcwOiAkPyA9IDAKY29uZmlndXJlOjE3NjA4OiByZXN1bHQ6 IHllcwpjb25maWd1cmU6MTc2MTg6IGNoZWNraW5nIGZvciBmb250Y29uZmlnID49IDIuMi4w CmNvbmZpZ3VyZToxNzYyNTogJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMg ImZvbnRjb25maWcgPj0gMi4yLjAiCmNvbmZpZ3VyZToxNzYyODogJD8gPSAwCmNvbmZpZ3Vy ZToxNzY0MjogJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgImZvbnRjb25m aWcgPj0gMi4yLjAiCmNvbmZpZ3VyZToxNzY0NTogJD8gPSAwCmNvbmZpZ3VyZToxNzY4Mzog cmVzdWx0OiB5ZXMKY29uZmlndXJlOjE4MDEyOiBjaGVja2luZyBmb3IgRlRfRmFjZV9HZXRD aGFyVmFyaWFudEluZGV4CmNvbmZpZ3VyZToxODAxMjogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMg LU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4 Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVt IC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51 eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0 eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWIt Mi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0 LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXht YW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv ZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAg ICBjb25mdGVzdC5jIC1sZnJlZXR5cGUgLWxzcWxpdGUzIC1sWDExICAgLWxjYWlybyAtbGNh aXJvIC1seGNiIC1seGNiLXJlbmRlciA+JjUgCmNvbmZpZ3VyZToxODAxMjogJD8gPSAwCmNv bmZpZ3VyZToxODAxMjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE4MDI0OiBjaGVja2luZyBm b3IgbGlib3RmCmNvbmZpZ3VyZToxODAzMTogJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmlu dC1lcnJvcnMgImxpYm90ZiIKY29uZmlndXJlOjE4MDM0OiAkPyA9IDAKY29uZmlndXJlOjE4 MDQ4OiAkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyAibGlib3RmIgpjb25m aWd1cmU6MTgwNTE6ICQ/ID0gMApjb25maWd1cmU6MTgwODk6IHJlc3VsdDogeWVzCmNvbmZp Z3VyZToxODA5ODogY2hlY2tpbmcgZm9yIE9URl9nZXRfdmFyaWF0aW9uX2dseXBocyBpbiAt bG90Zgpjb25maWd1cmU6MTgxMjE6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVh ZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgt Z251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWIt Mi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0y LjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRl IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv dXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUv Z2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAtbG90ZiAg LWxzcWxpdGUzIC1sWDExICAgLWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNiLXJlbmRlciA+ JjUgCmNvbmZpZ3VyZToxODEyMTogJD8gPSAwCmNvbmZpZ3VyZToxODEzMTogcmVzdWx0OiB5 ZXMKY29uZmlndXJlOjE4MTU5OiBjaGVja2luZyBmb3IgbTE3bi1mbHQKY29uZmlndXJlOjE4 MTY2OiAkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyAibTE3bi1mbHQiCmNv bmZpZ3VyZToxODE2OTogJD8gPSAwCmNvbmZpZ3VyZToxODE4MzogJFBLR19DT05GSUcgLS1l eGlzdHMgLS1wcmludC1lcnJvcnMgIm0xN24tZmx0Igpjb25maWd1cmU6MTgxODY6ICQ/ID0g MApjb25maWd1cmU6MTgyMjQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxODUzNzogY2hlY2tp bmcgZm9yIGhhcmZidXp6ID49IDAuOS40Mgpjb25maWd1cmU6MTg1NDQ6ICRQS0dfQ09ORklH IC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzICJoYXJmYnV6eiA+PSAkaGFyZmJ1enpfcmVxdWly ZWRfdmVyIgpjb25maWd1cmU6MTg1NDc6ICQ/ID0gMApjb25maWd1cmU6MTg1NjE6ICRQS0df Q09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzICJoYXJmYnV6eiA+PSAkaGFyZmJ1enpf cmVxdWlyZWRfdmVyIgpjb25maWd1cmU6MTg1NjQ6ICQ/ID0gMApjb25maWd1cmU6MTg2MDI6 IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxOTAyMzogY2hlY2tpbmcgZm9yIFgxMS9YbGliLXhj Yi5oCmNvbmZpZ3VyZToxOTAyMzogZ2NjIC1jICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBp eGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWIt Mi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVk ZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3Rl bSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBu ZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv Z2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9p bmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjE5MDIz OiAkPyA9IDAKY29uZmlndXJlOjE5MDIzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTkwMjY6 IGNoZWNraW5nIGZvciB4Y2JfdHJhbnNsYXRlX2Nvb3JkaW5hdGVzIGluIC1seGNiCmNvbmZp Z3VyZToxOTA0OTogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBp eGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWIt Mi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVk ZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3Rl bSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBu ZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv Z2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9p bmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1seGNiICAtbHNxbGl0ZTMg LWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmln dXJlOjE5MDQ5OiAkPyA9IDAKY29uZmlndXJlOjE5MDU5OiByZXN1bHQ6IHllcwpjb25maWd1 cmU6MTkwNjk6IGNoZWNraW5nIGZvciBYR2V0WENCQ29ubmVjdGlvbiBpbiAtbFgxMS14Y2IK Y29uZmlndXJlOjE5MDkyOiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9n ZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Js a2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv Z2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9p bmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1p c3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv bGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWIt Mi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxYMTEteGNiICAt bHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4m NSAKY29uZmlndXJlOjE5MDkyOiAkPyA9IDAKY29uZmlndXJlOjE5MTAyOiByZXN1bHQ6IHll cwpjb25maWd1cmU6MTkyMjQ6IGNoZWNraW5nIGZvciBYMTEveHBtLmgKY29uZmlndXJlOjE5 MjI0OiBnY2MgLWMgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xp YnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv bGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vz ci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8g LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82 NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4 bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3Rl bSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBu ZzE2ICAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MTkyMjQ6ICQ/ID0gMApjb25maWd1 cmU6MTkyMjQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxOTIyNzogY2hlY2tpbmcgZm9yIFhw bVJlYWRGaWxlVG9QaXhtYXAgaW4gLWxYcG0KY29uZmlndXJlOjE5MjUwOiBnY2MgLW8gY29u ZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmct Mi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91 bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9j YWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIv eDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51 eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0 eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNy L2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAg ICAgIGNvbmZ0ZXN0LmMgLWxYcG0gLWxYMTEgLWxzcWxpdGUzIC1sWDExICAgLWxjYWlybyAt bGNhaXJvIC1seGNiIC1seGNiLXJlbmRlciA+JjUgCmNvbmZpZ3VyZToxOTI1MDogJD8gPSAw CmNvbmZpZ3VyZToxOTI2MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE5MjcwOiBjaGVja2lu ZyBmb3IgWHBtUmV0dXJuQWxsb2NQaXhlbHMgcHJlcHJvY2Vzc29yIGRlZmluZQpjb25maWd1 cmU6MTkyOTQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxOTM0NzogY2hlY2tpbmcgZm9yIGpw ZWdsaWIgNmIgb3IgbGF0ZXIKY29uZmlndXJlOjE5MzgxOiBnY2MgLW8gY29uZnRlc3QgIC1n MyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv eDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxp bnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4t MSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJl ZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xp Yi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJv IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZf NjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3Bp eG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0 ZXN0LmMgLWxzcWxpdGUzIC1sWDExICAgLWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNiLXJl bmRlciA+JjUgCi91c3IvYmluL2xkOiAvdG1wL2NjTWxWRFdzLm86IGluIGZ1bmN0aW9uIGBt YWluJzoKL2FwcC9lbWFjcy9jb25mdGVzdC5jOjE3MTogdW5kZWZpbmVkIHJlZmVyZW5jZSB0 byBganBlZ19DcmVhdGVEZWNvbXByZXNzJwovdXNyL2Jpbi9sZDogL2FwcC9lbWFjcy9jb25m dGVzdC5jOjE3MzogdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBganBlZ19kZXN0cm95X2RlY29t cHJlc3MnCmNvbGxlY3QyOiBlcnJvcjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpjb25m aWd1cmU6MTkzODE6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAv KiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAj ZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJ T04gIjMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDMwLjAu NTAiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3Jn Igp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHBzOi8vd3d3LmdudS5vcmcvc29mdHdhcmUv ZW1hY3MvIgp8ICNkZWZpbmUgSEFWRV9QRFVNUEVSIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9f SCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0gg MQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0gg MQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERf SCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GU19I IDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5G T19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VS Q0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9Q V0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpF Ul9MU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0FTQU5fSU5U RVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQ09NTU9OX0lOVEVSRkFDRV9E RUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9F WEVDSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfVkZTX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19DREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBI QVZFX0lFRUU3NTRfSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1JBTkRPTV9IIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmlu ZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5l IF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9IUFVYX0FMVF9YT1BFTl9TT0NLRVRfQVBJIDEK fCAjZGVmaW5lIF9ORVRCU0RfU09VUkNFIDEKfCAjZGVmaW5lIF9PUEVOQlNEX1NPVVJDRSAx CnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX19TVERD X1dBTlRfSUVDXzYwNTU5X0FUVFJJQlNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRf SUVDXzYwNTU5X0JGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlf REZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9FWFRfXyAxCnwg I2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRlVOQ1NfRVhUX18gMQp8ICNkZWZpbmUg X19TVERDX1dBTlRfSUVDXzYwNTU5X1RZUEVTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19X QU5UX0xJQl9FWFQyX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfTUFUSF9TUEVDX0ZVTkNT X18gMQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19FWFRFTlNJT05T X18gMQp8ICNkZWZpbmUgR0NDX0xJTlQgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9s aW51eCIKfCAjZGVmaW5lIEhBVkVfU1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVf QUxTQSAxCnwgI2RlZmluZSBIQVZFX1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJ VFlfQUREUl9OT19SQU5ET01JWkUgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEK fCAjZGVmaW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAx CnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAx CnwgI2RlZmluZSBIQVZFX0lGQUREUlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJF UV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAx CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBI QVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNU X0lGUkVRX0lGUl9BRERSIDEKfCAjZGVmaW5lIEhBVkVfU0JSSyAxCnwgI2RlZmluZSBIQVZF X0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZG T1JLIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfQ0FOT05JQ0FM SVpFX0ZJTEVfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1JFQUxQQVRIIDEKfCAjZGVmaW5lIEhB VkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0RBVCAxCnwgI2RlZmluZSBIQVZFX0xD SE1PRCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElS IDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAj ZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwg I2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5L IDEKfCAjZGVmaW5lIEhBVkVfSVNCTEFOSyAxCnwgI2RlZmluZSBIQVZFX0lTV0NUWVBFIDEK fCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwg I2RlZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0la RSAxCnwgI2RlZmluZSBTWVNURU1fTUFMTE9DIDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwg I2RlZmluZSBIQVZFX1BUSFJFQUQgMQp8ICNkZWZpbmUgVEhSRUFEU19FTkFCTEVEIDEKfCAj ZGVmaW5lIEhBVkVfWEtCIDEKfCAjZGVmaW5lIEhBVkVfWEtCUkVGUkVTSEtFWUJPQVJETUFQ UElORyAxCnwgI2RlZmluZSBIQVZFX1hLQkZSRUVOQU1FUyAxCnwgI2RlZmluZSBIQVZFX1hS TVNFVERBVEFCQVNFIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RSSU5HIDEK fCAjZGVmaW5lIEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhBVkVf WERJU1BMQVlDRUxMUyAxCnwgI2RlZmluZSBIQVZFX1hERVNUUk9ZU1VCV0lORE9XUyAxCnwg I2RlZmluZSBIQVZFX1gxMVI2IDEKfCAjZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVmaW5l IEhBVkVfWElDQ0FMTEJBQ0tfQ0FMTEJBQ0sgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9YSU0g MQp8ICNkZWZpbmUgSEFWRV9SU1ZHIDEKfCAjZGVmaW5lIEhBVkVfV0VCUCAxCnwgI2RlZmlu ZSBIQVZFX1NRTElURTMgMQp8ICNkZWZpbmUgSEFWRV9TUUxJVEUzX0xPQURfRVhURU5TSU9O IDEKfCAjZGVmaW5lIEhBVkVfR0VUQUREUklORk9fQSAxCnwgI2RlZmluZSBIQVZFX0dUSzMg MQp8ICNkZWZpbmUgR0RLX0RJU0FCTEVfREVQUkVDQVRJT05fV0FSTklOR1MgMQp8ICNkZWZp bmUgR0xJQl9ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIFVTRV9H VEsgMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfVFJJTSAxCnwgI2RlZmluZSBIQVZFX0RCVVMg MQp8ICNkZWZpbmUgSEFWRV9EQlVTX1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhB VkVfREJVU19UWVBFX0lTX1ZBTElEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9C VVNfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmlu ZSBIQVZFX0RCVVNfVkFMSURBVEVfSU5URVJGQUNFIDEKfCAjZGVmaW5lIEhBVkVfREJVU19W QUxJREFURV9NRU1CRVIgMQp8ICNkZWZpbmUgSEFWRV9HU0VUVElOR1MgMQp8ICNkZWZpbmUg SEFWRV9MSUJTRUxJTlVYIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhB VkVfTElCU1lTVEVNRCAxCnwgI2RlZmluZSBIQVZFX0pTT04gMQp8ICNkZWZpbmUgSEFWRV9J Tk9USUZZIDEKfCAjZGVmaW5lIFVTRV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBVU0VfVE9P TEtJVF9TQ1JPTExfQkFSUyAxCnwgI2RlZmluZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBVU0Vf WElNIDEKfCAjZGVmaW5lIEhBVkVfWFJFTkRFUiAxCnwgI2RlZmluZSBVU0VfQ0FJUk9fWENC IDEKfCAjZGVmaW5lIFVTRV9DQUlSTyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAj ZGVmaW5lIEhBVkVfRlRfRkFDRV9HRVRDSEFSVkFSSUFOVElOREVYIDEKfCAjZGVmaW5lIEhB VkVfTElCT1RGIDEKfCAjZGVmaW5lIEhBVkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTIDEK fCAjZGVmaW5lIEhBVkVfTTE3Tl9GTFQgMQp8ICNkZWZpbmUgSEFWRV9IQVJGQlVaWiAxCnwg I2RlZmluZSBVU0VfWENCIDEKfCAjZGVmaW5lIEhBVkVfWFBNIDEKfCAvKiBlbmQgY29uZmRl ZnMuaC4gICovCnwgI3VuZGVmIEhBVkVfU1RETElCX0ggLyogQXZvaWQgY29uZmlnLmgvanBl Z2xpYi5oIGNvbGxpc2lvbi4gICovCnwgCQkjaW5jbHVkZSA8c3RkaW8uaD4gLyoganBlZ2xp Yi5oIG5lZWRzIEZJTEUgYW5kIHNpemVfdC4gICovCnwgCQkjaW5jbHVkZSA8anBlZ2xpYi5o Pgp8IAkJI2luY2x1ZGUgPGplcnJvci5oPgp8IAkJY2hhciB2ZXJpZnlbSlBFR19MSUJfVkVS U0lPTiA8IDYyID8gLTEgOiAxXTsKfCAJCXN0cnVjdCBqcGVnX2RlY29tcHJlc3Nfc3RydWN0 IGNpbmZvOwp8IAp8IGludAp8IG1haW4gKHZvaWQpCnwgewp8IAp8IAkJanBlZ19jcmVhdGVf ZGVjb21wcmVzcyAoJmNpbmZvKTsKfCAJCVdBUk5NUyAoJmNpbmZvLCBKV1JOX0pQRUdfRU9G KTsKfCAJCWpwZWdfZGVzdHJveV9kZWNvbXByZXNzICgmY2luZm8pOwp8IAp8ICAgOwp8ICAg cmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MTkzODE6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1P MiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZf NjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgt Z251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1p c3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlw ZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVk ZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIu MC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1s aW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFu LTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Zy ZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3Qu YyAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVy IC1sanBlZyA+JjUgCmNvbmZpZ3VyZToxOTM4MTogJD8gPSAwCmNvbmZpZ3VyZToxOTM5Mzog cmVzdWx0OiAtbGpwZWcKY29uZmlndXJlOjE5NDE2OiBjaGVja2luZyBmb3IgbGNtczIKY29u ZmlndXJlOjE5NDIzOiAkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyAibGNt czIiCmNvbmZpZ3VyZToxOTQyNjogJD8gPSAwCmNvbmZpZ3VyZToxOTQ0MDogJFBLR19DT05G SUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgImxjbXMyIgpjb25maWd1cmU6MTk0NDM6ICQ/ ID0gMApjb25maWd1cmU6MTk0ODE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxOTUwMzogY2hl Y2tpbmcgZm9yIGxpYnJhcnkgY29udGFpbmluZyBpbmZsYXRlRW5kCmNvbmZpZ3VyZToxOTUz MzogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lz dGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGli cG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xp Yi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lz dGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAg LWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVp ZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1sc3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8g LWxjYWlybyAtbHhjYiAtbHhjYi1yZW5kZXIgPiY1IAovdXNyL2Jpbi9sZDogL3RtcC9jY1gx UEx2Sy5vOiBpbiBmdW5jdGlvbiBgbWFpbic6Ci9hcHAvZW1hY3MvY29uZnRlc3QuYzoxNzA6 IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYGluZmxhdGVFbmQnCmNvbGxlY3QyOiBlcnJvcjog bGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpjb25maWd1cmU6MTk1MzM6ICQ/ID0gMQpjb25m aWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmlu ZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAi ZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMwLjAuNTAiCnwgI2RlZmluZSBQ QUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX0JV R1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwg Imh0dHBzOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgSEFWRV9Q RFVNUEVSIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fSCAxCnwgI2RlZmluZSBIQVZFX1NURExJ Ql9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBF U19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdT X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZ UEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFS X0ggMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9D X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZ X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VU TVBfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9MU0FOX0lOVEVSRkFDRV9IIDEKfCAj ZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0FTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFW RV9TQU5JVElaRVJfQ09NTU9OX0lOVEVSRkFDRV9ERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBI QVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhB VkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5lIEhB VkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVkZTX0ggMQp8ICNkZWZpbmUg SEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19DREVGU19IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX0lFRUU3NTRfSCAxCnwgI2RlZmlu ZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVm aW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JBTkRPTV9IIDEKfCAj ZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmlu ZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5l IF9IUFVYX0FMVF9YT1BFTl9TT0NLRVRfQVBJIDEKfCAjZGVmaW5lIF9ORVRCU0RfU09VUkNF IDEKfCAjZGVmaW5lIF9PUEVOQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVB RF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0FUVFJJQlNf RVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0JGUF9FWFRfXyAxCnwg I2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfREZQX0VYVF9fIDEKfCAjZGVmaW5lIF9f U1REQ19XQU5UX0lFQ182MDU1OV9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNf NjA1NTlfRlVOQ1NfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X1RZ UEVTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0xJQl9FWFQyX18gMQp8ICNkZWZp bmUgX19TVERDX1dBTlRfTUFUSF9TUEVDX0ZVTkNTX18gMQp8ICNkZWZpbmUgX1RBTkRFTV9T T1VSQ0UgMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgR0NDX0xJTlQg MQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAjZGVmaW5lIEhBVkVfU1lT X1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2RlZmluZSBIQVZFX1NP VU5EIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfQUREUl9OT19SQU5ET01JWkUgMQp8 ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZU0lORk9f VU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlU X0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZFX0lGQUREUlNf SCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUg SEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9J RlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJP QURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERSIDEKfCAjZGVm aW5lIEhBVkVfU0JSSyAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5l IEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfRkNI TU9EIDEKfCAjZGVmaW5lIEhBVkVfQ0FOT05JQ0FMSVpFX0ZJTEVfTkFNRSAxCnwgI2RlZmlu ZSBIQVZFX1JFQUxQQVRIIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFW RV9GQ0hNT0RBVCAxCnwgI2RlZmluZSBIQVZFX0xDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0ZD TlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRB VCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZ IDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lH TUFTSyAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfSVNCTEFO SyAxCnwgI2RlZmluZSBIQVZFX0lTV0NUWVBFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFY IDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FMVElNRV9S IDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBTWVNURU1fTUFM TE9DIDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQUQgMQp8 ICNkZWZpbmUgVEhSRUFEU19FTkFCTEVEIDEKfCAjZGVmaW5lIEhBVkVfWEtCIDEKfCAjZGVm aW5lIEhBVkVfWEtCUkVGUkVTSEtFWUJPQVJETUFQUElORyAxCnwgI2RlZmluZSBIQVZFX1hL QkZSRUVOQU1FUyAxCnwgI2RlZmluZSBIQVZFX1hSTVNFVERBVEFCQVNFIDEKfCAjZGVmaW5l IEhBVkVfWFNDUkVFTlJFU09VUkNFU1RSSU5HIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTk5V TUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhBVkVfWERJU1BMQVlDRUxMUyAxCnwgI2RlZmlu ZSBIQVZFX1hERVNUUk9ZU1VCV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gxMVI2IDEKfCAj ZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVmaW5lIEhBVkVfWElDQ0FMTEJBQ0tfQ0FMTEJB Q0sgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9YSU0gMQp8ICNkZWZpbmUgSEFWRV9SU1ZHIDEK fCAjZGVmaW5lIEhBVkVfV0VCUCAxCnwgI2RlZmluZSBIQVZFX1NRTElURTMgMQp8ICNkZWZp bmUgSEFWRV9TUUxJVEUzX0xPQURfRVhURU5TSU9OIDEKfCAjZGVmaW5lIEhBVkVfR0VUQURE UklORk9fQSAxCnwgI2RlZmluZSBIQVZFX0dUSzMgMQp8ICNkZWZpbmUgR0RLX0RJU0FCTEVf REVQUkVDQVRJT05fV0FSTklOR1MgMQp8ICNkZWZpbmUgR0xJQl9ESVNBQkxFX0RFUFJFQ0FU SU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIFVTRV9HVEsgMQp8ICNkZWZpbmUgSEFWRV9NQUxM T0NfVFJJTSAxCnwgI2RlZmluZSBIQVZFX0RCVVMgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1dB VENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19UWVBFX0lTX1ZBTElEIDEK fCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAxCnwgI2RlZmluZSBIQVZF X0RCVVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfSU5U RVJGQUNFIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIgMQp8ICNkZWZp bmUgSEFWRV9HU0VUVElOR1MgMQp8ICNkZWZpbmUgSEFWRV9MSUJTRUxJTlVYIDEKfCAjZGVm aW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhBVkVfTElCU1lTVEVNRCAxCnwgI2RlZmlu ZSBIQVZFX0pTT04gMQp8ICNkZWZpbmUgSEFWRV9JTk9USUZZIDEKfCAjZGVmaW5lIFVTRV9G SUxFX05PVElGWSAxCnwgI2RlZmluZSBVU0VfVE9PTEtJVF9TQ1JPTExfQkFSUyAxCnwgI2Rl ZmluZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBVU0VfWElNIDEKfCAjZGVmaW5lIEhBVkVfWFJF TkRFUiAxCnwgI2RlZmluZSBVU0VfQ0FJUk9fWENCIDEKfCAjZGVmaW5lIFVTRV9DQUlSTyAx CnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAjZGVmaW5lIEhBVkVfRlRfRkFDRV9HRVRD SEFSVkFSSUFOVElOREVYIDEKfCAjZGVmaW5lIEhBVkVfTElCT1RGIDEKfCAjZGVmaW5lIEhB VkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTIDEKfCAjZGVmaW5lIEhBVkVfTTE3Tl9GTFQg MQp8ICNkZWZpbmUgSEFWRV9IQVJGQlVaWiAxCnwgI2RlZmluZSBVU0VfWENCIDEKfCAjZGVm aW5lIEhBVkVfWFBNIDEKfCAjZGVmaW5lIEhBVkVfSlBFRyAxCnwgI2RlZmluZSBIQVZFX0xD TVMyIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgCnwgLyogT3ZlcnJpZGUgYW55IEdD QyBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuCnwgICAgVXNlIGNoYXIg YmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2ggdGhlIHJldHVybiB0eXBlIG9mIGEgR0NDCnwgICAg YnVpbHRpbiBhbmQgdGhlbiBpdHMgYXJndW1lbnQgcHJvdG90eXBlIHdvdWxkIHN0aWxsIGFw cGx5LiAgKi8KfCBjaGFyIGluZmxhdGVFbmQgKCk7CnwgaW50CnwgbWFpbiAodm9pZCkKfCB7 CnwgcmV0dXJuIGluZmxhdGVFbmQgKCk7CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZp Z3VyZToxOTUzMzogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBp eGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWIt Mi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVk ZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3Rl bSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBu ZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv Z2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9p bmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1seiAgLWxzcWxpdGUzIC1s WDExICAgLWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNiLXJlbmRlciA+JjUgCmNvbmZpZ3Vy ZToxOTUzMzogJD8gPSAwCmNvbmZpZ3VyZToxOTU1MzogcmVzdWx0OiAtbHoKY29uZmlndXJl OjE5NjM5OiBjaGVja2luZyBmb3IgZGxhZGRyCmNvbmZpZ3VyZToxOTYzOTogZ2NjIC1vIGNv bmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3Zn LTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1v dW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv Y2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGli L3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGlu dXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0x IC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVl dHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5j bHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vz ci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAg ICAgICBjb25mdGVzdC5jIC1sc3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWlybyAtbHhj YiAtbHhjYi1yZW5kZXIgLWxkbCA+JjUgCmNvbmZpZ3VyZToxOTYzOTogJD8gPSAwCmNvbmZp Z3VyZToxOTYzOTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE5NjQ1OiBjaGVja2luZyBmb3Ig ZGxmdW5jCmNvbmZpZ3VyZToxOTY0NTogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhy ZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51 eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5j bHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xp Yi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGli LTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1 ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdu dS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUy IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1sc3Fs aXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhjYi1yZW5kZXIgLWxkbCA+ JjUgCi91c3IvYmluL2xkOiAvdG1wL2NjMWVINTZ2Lm86IGluIGZ1bmN0aW9uIGBtYWluJzoK L2FwcC9lbWFjcy9jb25mdGVzdC5jOjE5MzogdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgZGxm dW5jJwpjb2xsZWN0MjogZXJyb3I6IGxkIHJldHVybmVkIDEgZXhpdCBzdGF0dXMKY29uZmln dXJlOjE5NjQ1OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyog Y29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2Rl ZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9O ICIzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAzMC4wLjUw Igp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIK fCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJodHRwczovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2Vt YWNzLyIKfCAjZGVmaW5lIEhBVkVfUERVTVBFUiAxCnwgI2RlZmluZSBIQVZFX1NURElPX0gg MQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEK fCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEK fCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAx CnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0gg MQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfRlNfSCAx CnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9f SCAxCnwgI2RlZmluZSBIQVZFX1BUWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNF X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdE X0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1QX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJf TFNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9BU0FOX0lOVEVS RkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0NPTU1PTl9JTlRFUkZBQ0VfREVG U19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfVU5fSCAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhF Q0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1NURElPX0VYVF9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1ZGU19IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfQ0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFW RV9JRUVFNzU0X0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NUREJPT0xfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19SQU5ET01fSCAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUg X0FMTF9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmluZSBf R05VX1NPVVJDRSAxCnwgI2RlZmluZSBfSFBVWF9BTFRfWE9QRU5fU09DS0VUX0FQSSAxCnwg I2RlZmluZSBfTkVUQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfT1BFTkJTRF9TT1VSQ0UgMQp8 ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9fU1REQ19X QU5UX0lFQ182MDU1OV9BVFRSSUJTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lF Q182MDU1OV9CRlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0RG UF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRVhUX18gMQp8ICNk ZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0ZVTkNTX0VYVF9fIDEKfCAjZGVmaW5lIF9f U1REQ19XQU5UX0lFQ182MDU1OV9UWVBFU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FO VF9MSUJfRVhUMl9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX01BVEhfU1BFQ19GVU5DU19f IDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19f IDEKfCAjZGVmaW5lIEdDQ19MSU5UIDEKfCAjZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUvbGlu dXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAxCnwgI2RlZmluZSBIQVZFX0FM U0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwgI2RlZmluZSBIQVZFX1BFUlNPTkFMSVRZ X0FERFJfTk9fUkFORE9NSVpFIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5GTyAxCnwg I2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUgSEFWRV9URVJNX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUX0lGX0ggMQp8 ICNkZWZpbmUgSEFWRV9JRkFERFJTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFf SUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9IV0FERFIgMQp8 ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX05FVE1BU0sgMQp8ICNkZWZpbmUgSEFW RV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9J RlJFUV9JRlJfQUREUiAxCnwgI2RlZmluZSBIQVZFX1NCUksgMQp8ICNkZWZpbmUgSEFWRV9H RVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9WRk9S SyAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0NBTk9OSUNBTEla RV9GSUxFX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9SRUFMUEFUSCAxCnwgI2RlZmluZSBIQVZF X0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EQVQgMQp8ICNkZWZpbmUgSEFWRV9MQ0hN T0QgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJUiAx CnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2Rl ZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNk ZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAx CnwgI2RlZmluZSBIQVZFX0lTQkxBTksgMQp8ICNkZWZpbmUgSEFWRV9JU1dDVFlQRSAxCnwg I2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNk ZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUg MQp8ICNkZWZpbmUgU1lTVEVNX01BTExPQyAxCnwgI2RlZmluZSBIQVZFX01NQVAgMQp8ICNk ZWZpbmUgSEFWRV9QVEhSRUFEIDEKfCAjZGVmaW5lIFRIUkVBRFNfRU5BQkxFRCAxCnwgI2Rl ZmluZSBIQVZFX1hLQiAxCnwgI2RlZmluZSBIQVZFX1hLQlJFRlJFU0hLRVlCT0FSRE1BUFBJ TkcgMQp8ICNkZWZpbmUgSEFWRV9YS0JGUkVFTkFNRVMgMQp8ICNkZWZpbmUgSEFWRV9YUk1T RVREQVRBQkFTRSAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNPVVJDRVNUUklORyAxCnwg I2RlZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJPRlNDUkVFTiAxCnwgI2RlZmluZSBIQVZFX1hE SVNQTEFZQ0VMTFMgMQp8ICNkZWZpbmUgSEFWRV9YREVTVFJPWVNVQldJTkRPV1MgMQp8ICNk ZWZpbmUgSEFWRV9YMTFSNiAxCnwgI2RlZmluZSBIQVZFX1hfSTE4TiAxCnwgI2RlZmluZSBI QVZFX1hJQ0NBTExCQUNLX0NBTExCQUNLIDEKfCAjZGVmaW5lIEhBVkVfWDExUjZfWElNIDEK fCAjZGVmaW5lIEhBVkVfUlNWRyAxCnwgI2RlZmluZSBIQVZFX1dFQlAgMQp8ICNkZWZpbmUg SEFWRV9TUUxJVEUzIDEKfCAjZGVmaW5lIEhBVkVfU1FMSVRFM19MT0FEX0VYVEVOU0lPTiAx CnwgI2RlZmluZSBIQVZFX0dFVEFERFJJTkZPX0EgMQp8ICNkZWZpbmUgSEFWRV9HVEszIDEK fCAjZGVmaW5lIEdES19ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5l IEdMSUJfRElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAxCnwgI2RlZmluZSBVU0VfR1RL IDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX1RSSU0gMQp8ICNkZWZpbmUgSEFWRV9EQlVTIDEK fCAjZGVmaW5lIEhBVkVfREJVU19XQVRDSF9HRVRfVU5JWF9GRCAxCnwgI2RlZmluZSBIQVZF X0RCVVNfVFlQRV9JU19WQUxJRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfQlVT X05BTUUgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX1BBVEggMQp8ICNkZWZpbmUg SEFWRV9EQlVTX1ZBTElEQVRFX0lOVEVSRkFDRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFM SURBVEVfTUVNQkVSIDEKfCAjZGVmaW5lIEhBVkVfR1NFVFRJTkdTIDEKfCAjZGVmaW5lIEhB VkVfTElCU0VMSU5VWCAxCnwgI2RlZmluZSBIQVZFX0dOVVRMUyAxCnwgI2RlZmluZSBIQVZF X0xJQlNZU1RFTUQgMQp8ICNkZWZpbmUgSEFWRV9KU09OIDEKfCAjZGVmaW5lIEhBVkVfSU5P VElGWSAxCnwgI2RlZmluZSBVU0VfRklMRV9OT1RJRlkgMQp8ICNkZWZpbmUgVVNFX1RPT0xL SVRfU0NST0xMX0JBUlMgMQp8ICNkZWZpbmUgSEFWRV9YSU0gMQp8ICNkZWZpbmUgVVNFX1hJ TSAxCnwgI2RlZmluZSBIQVZFX1hSRU5ERVIgMQp8ICNkZWZpbmUgVVNFX0NBSVJPX1hDQiAx CnwgI2RlZmluZSBVU0VfQ0FJUk8gMQp8ICNkZWZpbmUgSEFWRV9GUkVFVFlQRSAxCnwgI2Rl ZmluZSBIQVZFX0ZUX0ZBQ0VfR0VUQ0hBUlZBUklBTlRJTkRFWCAxCnwgI2RlZmluZSBIQVZF X0xJQk9URiAxCnwgI2RlZmluZSBIQVZFX09URl9HRVRfVkFSSUFUSU9OX0dMWVBIUyAxCnwg I2RlZmluZSBIQVZFX00xN05fRkxUIDEKfCAjZGVmaW5lIEhBVkVfSEFSRkJVWlogMQp8ICNk ZWZpbmUgVVNFX1hDQiAxCnwgI2RlZmluZSBIQVZFX1hQTSAxCnwgI2RlZmluZSBIQVZFX0pQ RUcgMQp8ICNkZWZpbmUgSEFWRV9MQ01TMiAxCnwgI2RlZmluZSBIQVZFX1pMSUIgMQp8ICNk ZWZpbmUgRFlOQU1JQ19MSUJfU1VGRklYICIuc28iCnwgI2RlZmluZSBEWU5BTUlDX0xJQl9T RUNPTkRBUllfU1VGRklYICIiCnwgI2RlZmluZSBIQVZFX0RMQUREUiAxCnwgLyogZW5kIGNv bmZkZWZzLmguICAqLwp8IC8qIERlZmluZSBkbGZ1bmMgdG8gYW4gaW5ub2N1b3VzIHZhcmlh bnQsIGluIGNhc2UgPGxpbWl0cy5oPiBkZWNsYXJlcyBkbGZ1bmMuCnwgICAgRm9yIGV4YW1w bGUsIEhQLVVYIDExaSA8bGltaXRzLmg+IGRlY2xhcmVzIGdldHRpbWVvZmRheS4gICovCnwg I2RlZmluZSBkbGZ1bmMgaW5ub2N1b3VzX2RsZnVuYwp8IAp8IC8qIFN5c3RlbSBoZWFkZXIg dG8gZGVmaW5lIF9fc3R1YiBtYWNyb3MgYW5kIGhvcGVmdWxseSBmZXcgcHJvdG90eXBlcywK fCAgICB3aGljaCBjYW4gY29uZmxpY3Qgd2l0aCBjaGFyIGRsZnVuYyAoKTsgYmVsb3cuICAq Lwp8IAp8ICNpbmNsdWRlIDxsaW1pdHMuaD4KfCAjdW5kZWYgZGxmdW5jCnwgCnwgLyogT3Zl cnJpZGUgYW55IEdDQyBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuCnwg ICAgVXNlIGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2ggdGhlIHJldHVybiB0eXBlIG9m IGEgR0NDCnwgICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMgYXJndW1lbnQgcHJvdG90eXBlIHdv dWxkIHN0aWxsIGFwcGx5LiAgKi8KfCAjaWZkZWYgX19jcGx1c3BsdXMKfCBleHRlcm4gIkMi CnwgI2VuZGlmCnwgY2hhciBkbGZ1bmMgKCk7CnwgLyogVGhlIEdOVSBDIGxpYnJhcnkgZGVm aW5lcyB0aGlzIGZvciBmdW5jdGlvbnMgd2hpY2ggaXQgaW1wbGVtZW50cwp8ICAgICB0byBh bHdheXMgZmFpbCB3aXRoIEVOT1NZUy4gIFNvbWUgZnVuY3Rpb25zIGFyZSBhY3R1YWxseSBu YW1lZAp8ICAgICBzb21ldGhpbmcgc3RhcnRpbmcgd2l0aCBfXyBhbmQgdGhlIG5vcm1hbCBu YW1lIGlzIGFuIGFsaWFzLiAgKi8KfCAjaWYgZGVmaW5lZCBfX3N0dWJfZGxmdW5jIHx8IGRl ZmluZWQgX19zdHViX19fZGxmdW5jCnwgY2hva2UgbWUKfCAjZW5kaWYKfCAKfCBpbnQKfCBt YWluICh2b2lkKQp8IHsKfCByZXR1cm4gZGxmdW5jICgpOwp8ICAgOwp8ICAgcmV0dXJuIDA7 CnwgfQpjb25maWd1cmU6MTk2NDU6IHJlc3VsdDogbm8KY29uZmlndXJlOjE5OTQ5OiBjaGVj a2luZyBmb3IgbGlicG5nID49IDEuMC4wCmNvbmZpZ3VyZToxOTk1NjogJFBLR19DT05GSUcg LS1leGlzdHMgLS1wcmludC1lcnJvcnMgImxpYnBuZyA+PSAxLjAuMCIKY29uZmlndXJlOjE5 OTU5OiAkPyA9IDAKY29uZmlndXJlOjE5OTczOiAkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXBy aW50LWVycm9ycyAibGlicG5nID49IDEuMC4wIgpjb25maWd1cmU6MTk5NzY6ICQ/ID0gMApj b25maWd1cmU6MjAwMTQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMDA4NDogY2hlY2tpbmcg d2hldGhlciBwbmdfbG9uZ2ptcCBpcyBkZWNsYXJlZApjb25maWd1cmU6MjAwODQ6IGdjYyAt YyAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5j bHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJv IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZf NjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3Bp eG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91 c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdu dS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUy IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv Y2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGli L3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJl OjIwMDg0OiAkPyA9IDAKY29uZmlndXJlOjIwMDg0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6 MjAxMjQ6IGNoZWNraW5nIGZvciB0aWZmaW8uaApjb25maWd1cmU6MjAxMjQ6IGdjYyAtYyAg LWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQt bGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1h bi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9m cmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3Iv aW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9n bGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fp cm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4 Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv cGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgIGNvbmZ0 ZXN0LmMgPiY1CmNvbmZpZ3VyZToyMDEyNDogJD8gPSAwCmNvbmZpZ3VyZToyMDEyNDogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjIwMTMwOiBjaGVja2luZyBmb3IgVElGRkdldFZlcnNpb24g aW4gLWx0aWZmCmNvbmZpZ3VyZToyMDE1MzogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1w dGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1s aW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUv Z2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dl YnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9n bGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2lu Y2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5j bHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4 LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5 cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1s dGlmZiAtbGpwZWcgLWx6IC1sbSAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8g LWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJlOjIwMTUzOiAkPyA9IDAKY29uZmln dXJlOjIwMTYzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjAyMDc6IGNoZWNraW5nIGZvciBn aWZfbGliLmgKY29uZmlndXJlOjIwMjA3OiBnY2MgLWMgIC1nMyAtTzIgLXB0aHJlYWQgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9n ZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Js a2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv Z2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9p bmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1p c3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv bGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWIt Mi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6 MjAyMDc6ICQ/ID0gMApjb25maWd1cmU6MjAyMDc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToy MDIxMjogY2hlY2tpbmcgZm9yIEdpZk1ha2VNYXBPYmplY3QgaW4gLWxnaWYKY29uZmlndXJl OjIwMjM1OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVm LTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAg LWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVp ZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91 c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGli LTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1 ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxnaWYgIC1sc3FsaXRlMyAtbFgx MSAgIC1sY2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhjYi1yZW5kZXIgPiY1IApjb25maWd1cmU6 MjAyMzU6ICQ/ID0gMApjb25maWd1cmU6MjAyNDU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToy MDQxOTogY2hlY2tpbmcgZm9yIGdwbS5oCmNvbmZpZ3VyZToyMDQxOTogZ2NjIC1jICAtZzMg LU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4 Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVt IC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51 eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0 eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWIt Mi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0 LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXht YW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv ZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgY29uZnRlc3Qu YyA+JjUKY29uZmlndXJlOjIwNDE5OiAkPyA9IDAKY29uZmlndXJlOjIwNDE5OiByZXN1bHQ6 IHllcwpjb25maWd1cmU6MjA0MjI6IGNoZWNraW5nIGZvciBHcG1fT3BlbiBpbiAtbGdwbQpj b25maWd1cmU6MjA0NDU6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dk ay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1p c3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxr aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9n bGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2lu Y2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5j bHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlz eXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9s aWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0y LjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAtbGdwbSAgLWxzcWxp dGUzIC1sWDExICAgLWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNiLXJlbmRlciA+JjUgCmNv bmZpZ3VyZToyMDQ0NTogJD8gPSAwCmNvbmZpZ3VyZToyMDQ1NTogcmVzdWx0OiB5ZXMKY29u ZmlndXJlOjIwNTA3OiBjaGVja2luZyBmb3IgWDExL1NNL1NNbGliLmgKY29uZmlndXJlOjIw NTA3OiBnY2MgLWMgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xp YnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv bGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vz ci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8g LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82 NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4 bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3Rl bSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBu ZzE2ICAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjA1MDc6ICQ/ID0gMApjb25maWd1 cmU6MjA1MDc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMDUxMDogY2hlY2tpbmcgZm9yIFNt Y09wZW5Db25uZWN0aW9uIGluIC1sU00KY29uZmlndXJlOjIwNTMzOiBnY2MgLW8gY29uZnRl c3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4w IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWly byAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2 XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9w aXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1n bnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBl MiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xp Yi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAg IGNvbmZ0ZXN0LmMgLWxTTSAtbElDRSAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fp cm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJlOjIwNTMzOiAkPyA9IDAKY29u ZmlndXJlOjIwNTQzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjA1Njk6IGNoZWNraW5nIGZv ciB4cmFuZHIgPj0gMS4yLjIKY29uZmlndXJlOjIwNTc2OiAkUEtHX0NPTkZJRyAtLWV4aXN0 cyAtLXByaW50LWVycm9ycyAiJFhSQU5EUl9NT0RVTEVTIgpjb25maWd1cmU6MjA1Nzk6ICQ/ ID0gMApjb25maWd1cmU6MjA1OTM6ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJy b3JzICIkWFJBTkRSX01PRFVMRVMiCmNvbmZpZ3VyZToyMDU5NjogJD8gPSAwCmNvbmZpZ3Vy ZToyMDYzNDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIwNzEwOiBjaGVja2luZyBmb3IgeGlu ZXJhbWEgPj0gMS4wLjIKY29uZmlndXJlOjIwNzE3OiAkUEtHX0NPTkZJRyAtLWV4aXN0cyAt LXByaW50LWVycm9ycyAiJFhJTkVSQU1BX01PRFVMRVMiCmNvbmZpZ3VyZToyMDcyMDogJD8g PSAwCmNvbmZpZ3VyZToyMDczNDogJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJv cnMgIiRYSU5FUkFNQV9NT0RVTEVTIgpjb25maWd1cmU6MjA3Mzc6ICQ/ID0gMApjb25maWd1 cmU6MjA3NzU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMDg0NzogY2hlY2tpbmcgZm9yIHhm aXhlcyA+PSAxLjAuMApjb25maWd1cmU6MjA4NTQ6ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0t cHJpbnQtZXJyb3JzICIkWEZJWEVTX01PRFVMRVMiCmNvbmZpZ3VyZToyMDg1NzogJD8gPSAw CmNvbmZpZ3VyZToyMDg3MTogJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMg IiRYRklYRVNfTU9EVUxFUyIKY29uZmlndXJlOjIwODc0OiAkPyA9IDAKY29uZmlndXJlOjIw OTEyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjA5ODI6IGNoZWNraW5nIGZvciB4aQpjb25m aWd1cmU6MjA5ODk6ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzICJ4aSIK Y29uZmlndXJlOjIwOTkyOiAkPyA9IDAKY29uZmlndXJlOjIxMDA2OiAkUEtHX0NPTkZJRyAt LWV4aXN0cyAtLXByaW50LWVycm9ycyAieGkiCmNvbmZpZ3VyZToyMTAwOTogJD8gPSAwCmNv bmZpZ3VyZToyMTA0NzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIxMDU0OiBjaGVja2luZyBm b3IgWDExL2V4dGVuc2lvbnMvWElucHV0Mi5oCmNvbmZpZ3VyZToyMTA1NDogZ2NjIC1jICAt ZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lz dGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1s aW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFu LTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Zy ZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2ds aWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVt IC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWly byAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2 XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9w aXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgY29uZnRl c3QuYyA+JjUKY29uZmlndXJlOjIxMDU0OiAkPyA9IDAKY29uZmlndXJlOjIxMDU0OiByZXN1 bHQ6IHllcwpjb25maWd1cmU6MjEwNTc6IGNoZWNraW5nIGZvciBYSUdyYWJCdXR0b24gaW4g LWxYaQpjb25maWd1cmU6MjEwODA6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVh ZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgt Z251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWIt Mi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0y LjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRl IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv dXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUv Z2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAtbFhpICAt bHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4m NSAKY29uZmlndXJlOjIxMDgwOiAkPyA9IDAKY29uZmlndXJlOjIxMDkwOiByZXN1bHQ6IHll cwpjb25maWd1cmU6MjExMTQ6IGNoZWNraW5nIGZvciBYSVNjcm9sbENsYXNzSW5mby50eXBl CmNvbmZpZ3VyZToyMTExNDogZ2NjIC1jICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1 Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4w IC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1 aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAv dXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2 IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xp Yi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNs dWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9saWJwbmcxNiAgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjIxMTE0OiAk PyA9IDAKY29uZmlndXJlOjIxMTE0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjExMjM6IGNo ZWNraW5nIGZvciBYSVRvdWNoQ2xhc3NJbmZvLnR5cGUKY29uZmlndXJlOjIxMTIzOiBnY2Mg LWMgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4w IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWly byAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2 XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9w aXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1n bnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBl MiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xp Yi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICBj b25mdGVzdC5jID4mNQpjb25maWd1cmU6MjExMjM6ICQ/ID0gMApjb25maWd1cmU6MjExMjM6 IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMTEzMjogY2hlY2tpbmcgZm9yIFhJQmFycmllclJl bGVhc2VQb2ludGVySW5mby5kZXZpY2VpZApjb25maWd1cmU6MjExMzI6IGdjYyAtYyAgLWcz IC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94 ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGlu dXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0x IC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVl dHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5j bHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGli LTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8g LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82 NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4 bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgIGNvbmZ0ZXN0 LmMgPiY1CmNvbmZpZ3VyZToyMTEzMjogJD8gPSAwCmNvbmZpZ3VyZToyMTEzMjogcmVzdWx0 OiB5ZXMKY29uZmlndXJlOjIxMTQxOiBjaGVja2luZyBmb3IgWElHZXN0dXJlQ2xhc3NJbmZv LnR5cGUKY29uZmlndXJlOjIxMTQxOiBnY2MgLWMgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGst cGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lk IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xp Yi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNs dWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lz dGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGli cG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4w L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjEx NDE6ICQ/ID0gMApjb25maWd1cmU6MjExNDE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMTE2 MDogY2hlY2tpbmcgZm9yIFgxMS9leHRlbnNpb25zL3N5bmMuaApjb25maWd1cmU6MjExNjA6 IGdjYyAtYyAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2 Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJt b3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xp Yi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lz dGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxp bnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4t MSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJl ZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91 c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYg ICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyMTE2MDogJD8gPSAwCmNvbmZpZ3VyZToy MTE2MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIxMTY0OiBjaGVja2luZyBmb3IgWFN5bmNR dWVyeUV4dGVuc2lvbiBpbiAtbFhleHQKY29uZmlndXJlOjIxMTg3OiBnY2MgLW8gY29uZnRl c3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4w IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWly byAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2 XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9w aXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1n bnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBl MiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xp Yi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAg IGNvbmZ0ZXN0LmMgLWxYZXh0ICAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8g LWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJlOjIxMTg3OiAkPyA9IDAKY29uZmln dXJlOjIxMTk3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjEyMTQ6IGNoZWNraW5nIGZvciBY U3luY1RyaWdnZXJGZW5jZQpjb25maWd1cmU6MjEyMTQ6IGdjYyAtbyBjb25mdGVzdCAgLWcz IC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94 ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGlu dXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0x IC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVl dHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5j bHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGli LTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8g LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82 NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4 bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRl c3QuYyAtbFhleHQgLWxzcWxpdGUzIC1sWDExICAgLWxjYWlybyAtbGNhaXJvIC1seGNiIC1s eGNiLXJlbmRlciA+JjUgCmNvbmZpZ3VyZToyMTIxNDogJD8gPSAwCmNvbmZpZ3VyZToyMTIx NDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIxMjMxOiBjaGVja2luZyBmb3IgWDExL2V4dGVu c2lvbnMvWGRiZS5oCmNvbmZpZ3VyZToyMTIzMTogZ2NjIC1jICAtZzMgLU8yIC1wdGhyZWFk IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1n bnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0y LjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIu MCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91 dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9n bGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgY29uZnRlc3QuYyA+JjUKY29uZmln dXJlOjIxMjMxOiAkPyA9IDAKY29uZmlndXJlOjIxMjMxOiByZXN1bHQ6IHllcwpjb25maWd1 cmU6MjEyMzY6IGNoZWNraW5nIGZvciBYZGJlQWxsb2NhdGVCYWNrQnVmZmVyTmFtZSBpbiAt bFhleHQKY29uZmlndXJlOjIxMjU5OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJl YWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4 LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGli LTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWIt Mi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVk ZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251 L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lz dGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxYZXh0 ICAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVy ID4mNSAKY29uZmlndXJlOjIxMjU5OiAkPyA9IDAKY29uZmlndXJlOjIxMjY5OiByZXN1bHQ6 IHllcwpjb25maWd1cmU6MjEyOTU6IGNoZWNraW5nIGZvciBYMTEvZXh0ZW5zaW9ucy9zaGFw ZS5oCmNvbmZpZ3VyZToyMTI5NTogZ2NjIC1jICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBp eGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWIt Mi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVk ZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3Rl bSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBu ZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv Z2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9p bmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjIxMjk1 OiAkPyA9IDAKY29uZmlndXJlOjIxMjk1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjEzMDA6 IGNoZWNraW5nIGZvciBYU2hhcGVRdWVyeVZlcnNpb24gaW4gLWxYZXh0CmNvbmZpZ3VyZToy MTMyMzogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0y LjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1p c3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv bGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNy L2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1p c3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0y LjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRl IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv dXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1sWGV4dCAgLWxzcWxpdGUzIC1sWDEx ICAgLWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNiLXJlbmRlciA+JjUgCmNvbmZpZ3VyZToy MTMyMzogJD8gPSAwCmNvbmZpZ3VyZToyMTMzMzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIx MzQ0OiBjaGVja2luZyBmb3IgeGNiL3NoYXBlLmgKY29uZmlndXJlOjIxMzQ0OiBnY2MgLWMg IC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0 LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXht YW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv ZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUv Z2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Nh aXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94 ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICBjb25m dGVzdC5jID4mNQpjb25maWd1cmU6MjEzNDQ6ICQ/ID0gMApjb25maWd1cmU6MjEzNDQ6IHJl c3VsdDogeWVzCmNvbmZpZ3VyZToyMTM0ODogY2hlY2tpbmcgZm9yIHhjYl9zaGFwZV9jb21i aW5lIGluIC1seGNiLXNoYXBlCmNvbmZpZ3VyZToyMTM3MTogZ2NjIC1vIGNvbmZ0ZXN0ICAt ZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lz dGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1s aW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFu LTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Zy ZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2ds aWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVt IC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWly byAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2 XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9w aXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25m dGVzdC5jIC1seGNiLXNoYXBlICAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8g LWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJlOjIxMzcxOiAkPyA9IDAKY29uZmln dXJlOjIxMzgxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjE0MTA6IGNoZWNraW5nIGZvciBY MTEvZXh0ZW5zaW9ucy9YY29tcG9zaXRlLmgKY29uZmlndXJlOjIxNDEwOiBnY2MgLWMgIC1n MyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv eDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxp bnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4t MSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJl ZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xp Yi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJv IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZf NjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3Bp eG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICBjb25mdGVz dC5jID4mNQpjb25maWd1cmU6MjE0MTA6ICQ/ID0gMApjb25maWd1cmU6MjE0MTA6IHJlc3Vs dDogeWVzCmNvbmZpZ3VyZToyMTQxNTogY2hlY2tpbmcgZm9yIFhDb21wb3NpdGVSZWRpcmVj dFdpbmRvdyBpbiAtbFhjb21wb3NpdGUKY29uZmlndXJlOjIxNDM4OiBnY2MgLW8gY29uZnRl c3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4w IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWly byAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2 XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9w aXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1n bnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBl MiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xp Yi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAg IGNvbmZ0ZXN0LmMgLWxYY29tcG9zaXRlICAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1s Y2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJlOjIxNDM4OiAkPyA9IDAK Y29uZmlndXJlOjIxNDQ4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjE0NzY6IGNoZWNraW5n IGZvciBsaWJ4bWwtMi4wID4gMi42LjE3CmNvbmZpZ3VyZToyMTQ4MzogJFBLR19DT05GSUcg LS1leGlzdHMgLS1wcmludC1lcnJvcnMgImxpYnhtbC0yLjAgPiAyLjYuMTciCmNvbmZpZ3Vy ZToyMTQ4NjogJD8gPSAwCmNvbmZpZ3VyZToyMTUwMDogJFBLR19DT05GSUcgLS1leGlzdHMg LS1wcmludC1lcnJvcnMgImxpYnhtbC0yLjAgPiAyLjYuMTciCmNvbmZpZ3VyZToyMTUwMzog JD8gPSAwCmNvbmZpZ3VyZToyMTU0MTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIxNTc2OiBj aGVja2luZyBmb3IgaHRtbFJlYWRNZW1vcnkgaW4gLWx4bWwyCmNvbmZpZ3VyZToyMTU5OTog Z2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVt IC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5n MTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Nh aXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94 ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVt IC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlz eXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9s aWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1seG1sMiAtbHhtbDIgLWxzcWxpdGUzIC1sWDEx ICAgLWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNiLXJlbmRlciA+JjUgCmNvbmZpZ3VyZToy MTU5OTogJD8gPSAwCmNvbmZpZ3VyZToyMTYwOTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIx ODYxOiBjaGVja2luZyBmb3IgbGludXgvc2VjY29tcC5oCmNvbmZpZ3VyZToyMTg2MTogZ2Nj IC1jICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIu MCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50 IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fp cm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4 Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv cGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgt Z251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1p c3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlw ZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9s aWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAg Y29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjIxODYxOiAkPyA9IDAKY29uZmlndXJlOjIxODYx OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjE4Njc6IGNoZWNraW5nIHdoZXRoZXIgU0VDQ09N UF9TRVRfTU9ERV9GSUxURVIgaXMgZGVjbGFyZWQKY29uZmlndXJlOjIxODY3OiBnY2MgLWMg IC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0 LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXht YW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv ZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUv Z2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Nh aXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94 ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgY29u ZnRlc3QuYyA+JjUKY29uZmlndXJlOjIxODY3OiAkPyA9IDAKY29uZmlndXJlOjIxODY3OiBy ZXN1bHQ6IHllcwpjb25maWd1cmU6MjE4ODI6IGNoZWNraW5nIHdoZXRoZXIgU0VDQ09NUF9G SUxURVJfRkxBR19UU1lOQyBpcyBkZWNsYXJlZApjb25maWd1cmU6MjE4ODI6IGdjYyAtYyAg LWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQt bGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1h bi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9m cmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3Iv aW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9n bGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fp cm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4 Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv cGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICBjb25m dGVzdC5jID4mNQpjb25maWd1cmU6MjE4ODI6ICQ/ID0gMApjb25maWd1cmU6MjE4ODI6IHJl c3VsdDogeWVzCmNvbmZpZ3VyZToyMTg2MTogY2hlY2tpbmcgZm9yIGxpbnV4L2ZpbHRlci5o CmNvbmZpZ3VyZToyMTg2MTogZ2NjIC1jICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1 Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4w IC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1 aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAv dXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2 IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xp Yi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNs dWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9saWJwbmcxNiAgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjIxODYxOiAk PyA9IDAKY29uZmlndXJlOjIxODYxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjE4Njc6IGNo ZWNraW5nIHdoZXRoZXIgU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgaXMgZGVjbGFyZWQKY29u ZmlndXJlOjIxODY3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjE4ODI6IGNoZWNraW5nIHdo ZXRoZXIgU0VDQ09NUF9GSUxURVJfRkxBR19UU1lOQyBpcyBkZWNsYXJlZApjb25maWd1cmU6 MjE4ODI6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMTkwNTogY2hlY2tpbmcgZm9yIGxpYnNl Y2NvbXAgPj0gMi41LjIKY29uZmlndXJlOjIxOTEyOiAkUEtHX0NPTkZJRyAtLWV4aXN0cyAt LXByaW50LWVycm9ycyAibGlic2VjY29tcCA+PSAyLjUuMiIKUGFja2FnZSBsaWJzZWNjb21w IHdhcyBub3QgZm91bmQgaW4gdGhlIHBrZy1jb25maWcgc2VhcmNoIHBhdGguClBlcmhhcHMg eW91IHNob3VsZCBhZGQgdGhlIGRpcmVjdG9yeSBjb250YWluaW5nIGBsaWJzZWNjb21wLnBj Jwp0byB0aGUgUEtHX0NPTkZJR19QQVRIIGVudmlyb25tZW50IHZhcmlhYmxlCk5vIHBhY2th Z2UgJ2xpYnNlY2NvbXAnIGZvdW5kCmNvbmZpZ3VyZToyMTkxNTogJD8gPSAxCmNvbmZpZ3Vy ZToyMTkyOTogJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgImxpYnNlY2Nv bXAgPj0gMi41LjIiClBhY2thZ2UgbGlic2VjY29tcCB3YXMgbm90IGZvdW5kIGluIHRoZSBw a2ctY29uZmlnIHNlYXJjaCBwYXRoLgpQZXJoYXBzIHlvdSBzaG91bGQgYWRkIHRoZSBkaXJl Y3RvcnkgY29udGFpbmluZyBgbGlic2VjY29tcC5wYycKdG8gdGhlIFBLR19DT05GSUdfUEFU SCBlbnZpcm9ubWVudCB2YXJpYWJsZQpObyBwYWNrYWdlICdsaWJzZWNjb21wJyBmb3VuZApj b25maWd1cmU6MjE5MzI6ICQ/ID0gMQpjb25maWd1cmU6MjE5NDY6IHJlc3VsdDogbm8KTm8g cGFja2FnZSAnbGlic2VjY29tcCcgZm91bmQKY29uZmlndXJlOjIxOTgzOiBjaGVja2luZyBz aXplIG9mIGxvbmcKY29uZmlndXJlOjIxOTg5OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIg LXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0 LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdu dS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUy IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv d2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAv aW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGlu dXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0x IC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVl dHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMg LWxzcWxpdGUzIC1sWDExICAgLWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNiLXJlbmRlciA+ JjUgCmNvbmZpZ3VyZToyMTk4OTogJD8gPSAwCmNvbmZpZ3VyZToyMTk4OTogLi9jb25mdGVz dApjb25maWd1cmU6MjE5ODk6ICQ/ID0gMApjb25maWd1cmU6MjIwMDQ6IHJlc3VsdDogOApj b25maWd1cmU6MjIwMTc6IGNoZWNraW5nIGZvciBhY2NlcHQ0CmNvbmZpZ3VyZToyMjAxNzog Z2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVt IC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5n MTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Nh aXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94 ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVt IC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlz eXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9s aWJwbmcxNiAgICAgICBjb25mdGVzdC5jICAtbG0gLWxzcWxpdGUzIC1sWDExICAgLWxjYWly byAtbGNhaXJvIC1seGNiIC1seGNiLXJlbmRlciA+JjUgCmNvbmZpZ3VyZToyMjAxNzogJD8g PSAwCmNvbmZpZ3VyZToyMjAxNzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIyMDIzOiBjaGVj a2luZyBmb3IgZmNoZGlyCmNvbmZpZ3VyZToyMjAyMzogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMg LU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4 Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVt IC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51 eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0 eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWIt Mi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0 LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXht YW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv ZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVz dC5jICAtbG0gLWxzcWxpdGUzIC1sWDExICAgLWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNi LXJlbmRlciA+JjUgCmNvbmZpZ3VyZToyMjAyMzogJD8gPSAwCmNvbmZpZ3VyZToyMjAyMzog cmVzdWx0OiB5ZXMKY29uZmlndXJlOjIyMDI5OiBjaGVja2luZyBmb3IgZ2V0aG9zdG5hbWUK Y29uZmlndXJlOjIyMDI5OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9n ZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Js a2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv Z2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9p bmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1p c3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv bGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWIt Mi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgIC1sbSAtbHNxbGl0 ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29u ZmlndXJlOjIyMDI5OiAkPyA9IDAKY29uZmlndXJlOjIyMDI5OiByZXN1bHQ6IHllcwpjb25m aWd1cmU6MjIwMzU6IGNoZWNraW5nIGZvciBnZXRydXNhZ2UKY29uZmlndXJlOjIyMDM1OiBn Y2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0g L3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcx NiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fp cm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4 Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv cGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5 c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xp YnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgIC1sbSAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJv IC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJlOjIyMDM1OiAkPyA9 IDAKY29uZmlndXJlOjIyMDM1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjIwNDE6IGNoZWNr aW5nIGZvciBnZXRfY3VycmVudF9kaXJfbmFtZQpjb25maWd1cmU6MjIwNDE6IGdjYyAtbyBj b25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2 Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJt b3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xp Yi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lz dGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxp bnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4t MSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJl ZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91 c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYg ICAgICAgY29uZnRlc3QuYyAgLWxtIC1sc3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWly byAtbHhjYiAtbHhjYi1yZW5kZXIgPiY1IApjb25maWd1cmU6MjIwNDE6ICQ/ID0gMApjb25m aWd1cmU6MjIwNDE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjA0NzogY2hlY2tpbmcgZm9y IGxyYW5kNDgKY29uZmlndXJlOjIyMDQ3OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0 aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxp bnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9n bGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2Vi cCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ds aWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5j bHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgt Z251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1p c3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlw ZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgIC1s bSAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVy ID4mNSAKY29uZmlndXJlOjIyMDQ3OiAkPyA9IDAKY29uZmlndXJlOjIyMDQ3OiByZXN1bHQ6 IHllcwpjb25maWd1cmU6MjIwNTM6IGNoZWNraW5nIGZvciByYW5kb20KY29uZmlndXJlOjIy MDUzOiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIu MCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlz eXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9s aWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3Iv bGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIu MCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91 dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgIC1sbSAtbHNxbGl0ZTMgLWxYMTEgICAt bGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJlOjIyMDUz OiAkPyA9IDAKY29uZmlndXJlOjIyMDUzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjIwNTk6 IGNoZWNraW5nIGZvciByaW50CmNvbmZpZ3VyZToyMjA1OTogZ2NjIC1vIGNvbmZ0ZXN0ICAt ZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lz dGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1s aW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFu LTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Zy ZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2ds aWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVt IC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWly byAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2 XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9w aXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25m dGVzdC5jICAtbG0gLWxzcWxpdGUzIC1sWDExICAgLWxjYWlybyAtbGNhaXJvIC1seGNiIC1s eGNiLXJlbmRlciA+JjUgCmNvbmZ0ZXN0LmM6MjE5OjY6IHdhcm5pbmc6IGNvbmZsaWN0aW5n IHR5cGVzIGZvciBidWlsdC1pbiBmdW5jdGlvbiAncmludCc7IGV4cGVjdGVkICdkb3VibGUo ZG91YmxlKScgWy1XYnVpbHRpbi1kZWNsYXJhdGlvbi1taXNtYXRjaF0KICAyMTkgfCBjaGFy IHJpbnQgKCk7CiAgICAgIHwgICAgICBefn5+CmNvbmZ0ZXN0LmM6MjExOjE6IG5vdGU6ICdy aW50JyBpcyBkZWNsYXJlZCBpbiBoZWFkZXIgJzxtYXRoLmg+JwogIDIxMCB8ICNpbmNsdWRl IDxsaW1pdHMuaD4KICAyMTEgfCAjdW5kZWYgcmludApjb25maWd1cmU6MjIwNTk6ICQ/ID0g MApjb25maWd1cmU6MjIwNTk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjA2NTogY2hlY2tp bmcgZm9yIHRydW5jCmNvbmZpZ3VyZToyMjA2NTogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8y IC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82 NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1n bnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBl MiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4w L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxp bnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4t MSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJl ZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5j ICAtbG0gLWxzcWxpdGUzIC1sWDExICAgLWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNiLXJl bmRlciA+JjUgCmNvbmZ0ZXN0LmM6MjIwOjY6IHdhcm5pbmc6IGNvbmZsaWN0aW5nIHR5cGVz IGZvciBidWlsdC1pbiBmdW5jdGlvbiAndHJ1bmMnOyBleHBlY3RlZCAnZG91YmxlKGRvdWJs ZSknIFstV2J1aWx0aW4tZGVjbGFyYXRpb24tbWlzbWF0Y2hdCiAgMjIwIHwgY2hhciB0cnVu YyAoKTsKICAgICAgfCAgICAgIF5+fn5+CmNvbmZ0ZXN0LmM6MjEyOjE6IG5vdGU6ICd0cnVu YycgaXMgZGVjbGFyZWQgaW4gaGVhZGVyICc8bWF0aC5oPicKICAyMTEgfCAjaW5jbHVkZSA8 bGltaXRzLmg+CiAgMjEyIHwgI3VuZGVmIHRydW5jCmNvbmZpZ3VyZToyMjA2NTogJD8gPSAw CmNvbmZpZ3VyZToyMjA2NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIyMDcxOiBjaGVja2lu ZyBmb3Igc2VsZWN0CmNvbmZpZ3VyZToyMjA3MTogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8y IC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82 NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1n bnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBl MiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4w L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxp bnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4t MSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJl ZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5j ICAtbG0gLWxzcWxpdGUzIC1sWDExICAgLWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNiLXJl bmRlciA+JjUgCmNvbmZpZ3VyZToyMjA3MTogJD8gPSAwCmNvbmZpZ3VyZToyMjA3MTogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjIyMDc3OiBjaGVja2luZyBmb3IgZ2V0cGFnZXNpemUKY29u ZmlndXJlOjIyMDc3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjIwODM6IGNoZWNraW5nIGZv ciBzZXRsb2NhbGUKY29uZmlndXJlOjIyMDgzOiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIg LXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0 LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdu dS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUy IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv d2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAv aW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGlu dXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0x IC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVl dHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMg IC1sbSAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVu ZGVyID4mNSAKY29uZmlndXJlOjIyMDgzOiAkPyA9IDAKY29uZmlndXJlOjIyMDgzOiByZXN1 bHQ6IHllcwpjb25maWd1cmU6MjIwODk6IGNoZWNraW5nIGZvciBuZXdsb2NhbGUKY29uZmln dXJlOjIyMDg5OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4 YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0y LjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRl IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv dXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVt IC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5n MTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9n bGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2lu Y2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5j bHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgIC1sbSAtbHNxbGl0ZTMgLWxY MTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJl OjIyMDg5OiAkPyA9IDAKY29uZmlndXJlOjIyMDg5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6 MjIwOTU6IGNoZWNraW5nIGZvciBnZXRybGltaXQKY29uZmlndXJlOjIyMDk1OiBnY2MgLW8g Y29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJz dmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGli bW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9s aWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1s aW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFu LTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Zy ZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAv dXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2 ICAgICAgIGNvbmZ0ZXN0LmMgIC1sbSAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fp cm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJlOjIyMDk1OiAkPyA9IDAKY29u ZmlndXJlOjIyMDk1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjIxMDE6IGNoZWNraW5nIGZv ciBzZXRybGltaXQKY29uZmlndXJlOjIyMTAxOiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIg LXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0 LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdu dS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUy IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv d2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAv aW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGlu dXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0x IC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVl dHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMg IC1sbSAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVu ZGVyID4mNSAKY29uZmlndXJlOjIyMTAxOiAkPyA9IDAKY29uZmlndXJlOjIyMTAxOiByZXN1 bHQ6IHllcwpjb25maWd1cmU6MjIxMDc6IGNoZWNraW5nIGZvciBzaHV0ZG93bgpjb25maWd1 cmU6MjIxMDc6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhi dWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVt IC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIu MCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91 dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0g L3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcx NiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ds aWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5j bHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAgLWxtIC1sc3FsaXRlMyAtbFgx MSAgIC1sY2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhjYi1yZW5kZXIgPiY1IApjb25maWd1cmU6 MjIxMDc6ICQ/ID0gMApjb25maWd1cmU6MjIxMDc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToy MjExMzogY2hlY2tpbmcgZm9yIHB0aHJlYWRfc2lnbWFzawpjb25maWd1cmU6MjIxMTM6IHJl c3VsdDogeWVzCmNvbmZpZ3VyZToyMjExOTogY2hlY2tpbmcgZm9yIHN0cnNpZ25hbApjb25m aWd1cmU6MjIxMTk6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1w aXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lz dGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGli LTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1 ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0 ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJw bmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAv aW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAgLWxtIC1sc3FsaXRlMyAt bFgxMSAgIC1sY2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhjYi1yZW5kZXIgPiY1IApjb25maWd1 cmU6MjIxMTk6ICQ/ID0gMApjb25maWd1cmU6MjIxMTk6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy ZToyMjEyNTogY2hlY2tpbmcgZm9yIHNldGl0aW1lcgpjb25maWd1cmU6MjIxMjU6IGdjYyAt byBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGli cnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVt IC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9s aWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNy L2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1p c3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0 LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXht YW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv ZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVt IC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5n MTYgICAgICAgY29uZnRlc3QuYyAgLWxtIC1sc3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxj YWlybyAtbHhjYiAtbHhjYi1yZW5kZXIgPiY1IApjb25maWd1cmU6MjIxMjU6ICQ/ID0gMApj b25maWd1cmU6MjIxMjU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjEzMTogY2hlY2tpbmcg Zm9yIHNlbmR0bwpjb25maWd1cmU6MjIxMzE6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAt cHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQt bGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251 L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lz dGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93 ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv Z2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9p bmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51 eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0 eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAg LWxtIC1sc3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhjYi1yZW5k ZXIgPiY1IApjb25maWd1cmU6MjIxMzE6ICQ/ID0gMApjb25maWd1cmU6MjIxMzE6IHJlc3Vs dDogeWVzCmNvbmZpZ3VyZToyMjEzNzogY2hlY2tpbmcgZm9yIHJlY3Zmcm9tCmNvbmZpZ3Vy ZToyMjEzNzogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1 Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4w IC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1 aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAv dXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2 IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xp Yi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNs dWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jICAtbG0gLWxzcWxpdGUzIC1sWDEx ICAgLWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNiLXJlbmRlciA+JjUgCmNvbmZpZ3VyZToy MjEzNzogJD8gPSAwCmNvbmZpZ3VyZToyMjEzNzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIy MTQzOiBjaGVja2luZyBmb3IgZ2V0c29ja25hbWUKY29uZmlndXJlOjIyMTQzOiBnY2MgLW8g Y29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJz dmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGli bW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9s aWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1s aW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFu LTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Zy ZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAv dXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2 ICAgICAgIGNvbmZ0ZXN0LmMgIC1sbSAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fp cm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJlOjIyMTQzOiAkPyA9IDAKY29u ZmlndXJlOjIyMTQzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjIxNDk6IGNoZWNraW5nIGZv ciBnZXRpZmFkZHJzCmNvbmZpZ3VyZToyMjE0OTogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8y IC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82 NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1n bnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBl MiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4w L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxp bnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4t MSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJl ZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5j ICAtbG0gLWxzcWxpdGUzIC1sWDExICAgLWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNiLXJl bmRlciA+JjUgCmNvbmZpZ3VyZToyMjE0OTogJD8gPSAwCmNvbmZpZ3VyZToyMjE0OTogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjIyMTU1OiBjaGVja2luZyBmb3IgZnJlZWlmYWRkcnMKY29u ZmlndXJlOjIyMTU1OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGst cGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lk IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xp Yi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNs dWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lz dGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGli cG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4w L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgIC1sbSAtbHNxbGl0ZTMg LWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmln dXJlOjIyMTU1OiAkPyA9IDAKY29uZmlndXJlOjIyMTU1OiByZXN1bHQ6IHllcwpjb25maWd1 cmU6MjIxNjE6IGNoZWNraW5nIGZvciBnYWlfc3RyZXJyb3IKY29uZmlndXJlOjIyMTYxOiBn Y2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0g L3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcx NiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fp cm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4 Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv cGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5 c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xp YnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgIC1sbSAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJv IC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJlOjIyMTYxOiAkPyA9 IDAKY29uZmlndXJlOjIyMTYxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjIxNjc6IGNoZWNr aW5nIGZvciBzeW5jCmNvbmZpZ3VyZToyMjE2NzogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8y IC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82 NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1n bnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBl MiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4w L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxp bnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4t MSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJl ZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5j ICAtbG0gLWxzcWxpdGUzIC1sWDExICAgLWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNiLXJl bmRlciA+JjUgCmNvbmZpZ3VyZToyMjE2NzogJD8gPSAwCmNvbmZpZ3VyZToyMjE2NzogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjIyMTczOiBjaGVja2luZyBmb3IgZ2V0cHdlbnQKY29uZmln dXJlOjIyMTczOiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4 YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0y LjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRl IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv dXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVt IC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5n MTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9n bGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2lu Y2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5j bHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgIC1sbSAtbHNxbGl0ZTMgLWxY MTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJl OjIyMTczOiAkPyA9IDAKY29uZmlndXJlOjIyMTczOiByZXN1bHQ6IHllcwpjb25maWd1cmU6 MjIxNzk6IGNoZWNraW5nIGZvciBlbmRwd2VudApjb25maWd1cmU6MjIxNzk6IGdjYyAtbyBj b25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2 Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJt b3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xp Yi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lz dGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxp bnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4t MSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJl ZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91 c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYg ICAgICAgY29uZnRlc3QuYyAgLWxtIC1sc3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWly byAtbHhjYiAtbHhjYi1yZW5kZXIgPiY1IApjb25maWd1cmU6MjIxNzk6ICQ/ID0gMApjb25m aWd1cmU6MjIxNzk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjE4NTogY2hlY2tpbmcgZm9y IGdldGdyZW50CmNvbmZpZ3VyZToyMjE4NTogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1w dGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1s aW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUv Z2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dl YnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9n bGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2lu Y2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5j bHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4 LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5 cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jICAt bG0gLWxzcWxpdGUzIC1sWDExICAgLWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNiLXJlbmRl ciA+JjUgCmNvbmZpZ3VyZToyMjE4NTogJD8gPSAwCmNvbmZpZ3VyZToyMjE4NTogcmVzdWx0 OiB5ZXMKY29uZmlndXJlOjIyMTkxOiBjaGVja2luZyBmb3IgZW5kZ3JlbnQKY29uZmlndXJl OjIyMTkxOiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVm LTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAg LWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVp ZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91 c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGli LTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1 ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgIC1sbSAtbHNxbGl0ZTMgLWxYMTEg ICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJlOjIy MTkxOiAkPyA9IDAKY29uZmlndXJlOjIyMTkxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjIx OTc6IGNoZWNraW5nIGZvciByZW5hbWVhdDIKY29uZmlndXJlOjIyMTk3OiBnY2MgLW8gY29u ZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmct Mi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91 bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9j YWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIv eDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51 eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0 eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNy L2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAg ICAgIGNvbmZ0ZXN0LmMgIC1sbSAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8g LWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJlOjIyMTk3OiAkPyA9IDAKY29uZmln dXJlOjIyMTk3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjIyMDM6IGNoZWNraW5nIGZvciBj Zm1ha2VyYXcKY29uZmlndXJlOjIyMjAzOiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0 aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxp bnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9n bGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2Vi cCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ds aWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5j bHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgt Z251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1p c3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlw ZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgIC1s bSAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVy ID4mNSAKY29uZmlndXJlOjIyMjAzOiAkPyA9IDAKY29uZmlndXJlOjIyMjAzOiByZXN1bHQ6 IHllcwpjb25maWd1cmU6MjIyMDk6IGNoZWNraW5nIGZvciBjZnNldHNwZWVkCmNvbmZpZ3Vy ZToyMjIwOTogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1 Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4w IC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1 aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAv dXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2 IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xp Yi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNs dWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jICAtbG0gLWxzcWxpdGUzIC1sWDEx ICAgLWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNiLXJlbmRlciA+JjUgCmNvbmZpZ3VyZToy MjIwOTogJD8gPSAwCmNvbmZpZ3VyZToyMjIwOTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIy MjE1OiBjaGVja2luZyBmb3IgX19leGVjdXRhYmxlX3N0YXJ0CmNvbmZpZ3VyZToyMjIxNTog Z2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVt IC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5n MTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Nh aXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94 ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVt IC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlz eXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9s aWJwbmcxNiAgICAgICBjb25mdGVzdC5jICAtbG0gLWxzcWxpdGUzIC1sWDExICAgLWxjYWly byAtbGNhaXJvIC1seGNiIC1seGNiLXJlbmRlciA+JjUgCmNvbmZpZ3VyZToyMjIxNTogJD8g PSAwCmNvbmZpZ3VyZToyMjIxNTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIyMjIxOiBjaGVj a2luZyBmb3IgbG9nMgpjb25maWd1cmU6MjIyMjE6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1P MiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZf NjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgt Z251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1p c3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlw ZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVk ZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIu MC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1s aW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFu LTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Zy ZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3Qu YyAgLWxtIC1sc3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhjYi1y ZW5kZXIgPiY1IApjb25mdGVzdC5jOjI0Njo2OiB3YXJuaW5nOiBjb25mbGljdGluZyB0eXBl cyBmb3IgYnVpbHQtaW4gZnVuY3Rpb24gJ2xvZzInOyBleHBlY3RlZCAnZG91YmxlKGRvdWJs ZSknIFstV2J1aWx0aW4tZGVjbGFyYXRpb24tbWlzbWF0Y2hdCiAgMjQ2IHwgY2hhciBsb2cy ICgpOwogICAgICB8ICAgICAgXn5+fgpjb25mdGVzdC5jOjIzODoxOiBub3RlOiAnbG9nMicg aXMgZGVjbGFyZWQgaW4gaGVhZGVyICc8bWF0aC5oPicKICAyMzcgfCAjaW5jbHVkZSA8bGlt aXRzLmg+CiAgMjM4IHwgI3VuZGVmIGxvZzIKY29uZmlndXJlOjIyMjIxOiAkPyA9IDAKY29u ZmlndXJlOjIyMjIxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjIyMjc6IGNoZWNraW5nIGZv ciBwdGhyZWFkX3NldG5hbWVfbnAKY29uZmlndXJlOjIyMjI3OiBnY2MgLW8gY29uZnRlc3Qg IC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0 LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXht YW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv ZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUv Z2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Nh aXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94 ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNv bmZ0ZXN0LmMgIC1sbSAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2Ig LWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJlOjIyMjI3OiAkPyA9IDAKY29uZmlndXJlOjIy MjI3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjIyMzM6IGNoZWNraW5nIGZvciBwdGhyZWFk X3NldF9uYW1lX25wCmNvbmZpZ3VyZToyMjIzMzogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8y IC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82 NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1n bnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBl MiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4w L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxp bnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4t MSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJl ZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5j ICAtbG0gLWxzcWxpdGUzIC1sWDExICAgLWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNiLXJl bmRlciA+JjUgCi91c3IvYmluL2xkOiAvdG1wL2NjVWlYWEwwLm86IGluIGZ1bmN0aW9uIGBt YWluJzoKL2FwcC9lbWFjcy9jb25mdGVzdC5jOjI1OTogdW5kZWZpbmVkIHJlZmVyZW5jZSB0 byBgcHRocmVhZF9zZXRfbmFtZV9ucCcKY29sbGVjdDI6IGVycm9yOiBsZCByZXR1cm5lZCAx IGV4aXQgc3RhdHVzCmNvbmZpZ3VyZToyMjIzMzogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVk IHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFN RSAiR05VIEVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJlbWFjcyIKfCAjZGVm aW5lIFBBQ0tBR0VfVkVSU0lPTiAiMzAuMC41MCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5H ICJHTlUgRW1hY3MgMzAuMC41MCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWct Z251LWVtYWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0cHM6Ly93d3cu Z251Lm9yZy9zb2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmluZSBIQVZFX1BEVU1QRVIgMQp8ICNk ZWZpbmUgSEFWRV9TVERJT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZp bmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZp bmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2Rl ZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfSCAxCnwgI2RlZmlu ZSBIQVZFX0xJTlVYX0ZTX0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19TWVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9QVFlfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAx CnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUF9IIDEKfCAjZGVm aW5lIEhBVkVfU0FOSVRJWkVSX0xTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9T QU5JVElaRVJfQVNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9D T01NT05fSU5URVJGQUNFX0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAx CnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAx CnwgI2RlZmluZSBIQVZFX0VYRUNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJT19FWFRf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19WRlNfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX0NERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElN RV9IIDEKfCAjZGVmaW5lIEhBVkVfSUVFRTc1NF9IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRT X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERC T09MX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkFORE9NX0ggMQp8ICNkZWZpbmUgU1REQ19I RUFERVJTIDEKfCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fQ19T T1VSQ0UgMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0hQVVhfQUxUX1hP UEVOX1NPQ0tFVF9BUEkgMQp8ICNkZWZpbmUgX05FVEJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUg X09QRU5CU0RfU09VUkNFIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAx CnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfQVRUUklCU19FWFRfXyAxCnwgI2Rl ZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfQkZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1RE Q19XQU5UX0lFQ182MDU1OV9ERlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVD XzYwNTU5X0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9GVU5DU19F WFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfVFlQRVNfRVhUX18gMQp8 ICNkZWZpbmUgX19TVERDX1dBTlRfTElCX0VYVDJfXyAxCnwgI2RlZmluZSBfX1NURENfV0FO VF9NQVRIX1NQRUNfRlVOQ1NfXyAxCnwgI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCnwgI2Rl ZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBHQ0NfTElOVCAxCnwgI2RlZmluZSBT WVNURU1fVFlQRSAiZ251L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJEX0gg MQp8ICNkZWZpbmUgSEFWRV9BTFNBIDEKfCAjZGVmaW5lIEhBVkVfU09VTkQgMQp8ICNkZWZp bmUgSEFWRV9QRVJTT05BTElUWV9BRERSX05PX1JBTkRPTUlaRSAxCnwgI2RlZmluZSBIQVZF X0xJTlVYX1NZU0lORk8gMQp8ICNkZWZpbmUgTElOVVhfU1lTSU5GT19VTklUIDEKfCAjZGVm aW5lIEhBVkVfVEVSTV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmlu ZSBIQVZFX05FVF9JRl9IIDEKfCAjZGVmaW5lIEhBVkVfSUZBRERSU19IIDEKfCAjZGVmaW5l IEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9GTEFHUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9J RlJFUV9JRlJfSFdBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9ORVRN QVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9CUk9BREFERFIgMQp8ICNk ZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TQlJL IDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEK fCAjZGVmaW5lIEhBVkVfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZp bmUgSEFWRV9DQU5PTklDQUxJWkVfRklMRV9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUkVBTFBB VEggMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PREFUIDEK fCAjZGVmaW5lIEhBVkVfTENITU9EIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZp bmUgSEFWRV9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgSEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5l IEhBVkVfRlNZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUg SEFWRV9QU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVm aW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFWRV9JU0JMQU5LIDEKfCAjZGVmaW5l IEhBVkVfSVNXQ1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9TVFJUT0lNQVggMQp8ICNkZWZpbmUg SEFWRV9TWU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUg SEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIFNZU1RFTV9NQUxMT0MgMQp8ICNkZWZp bmUgSEFWRV9NTUFQIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRCAxCnwgI2RlZmluZSBUSFJF QURTX0VOQUJMRUQgMQp8ICNkZWZpbmUgSEFWRV9YS0IgMQp8ICNkZWZpbmUgSEFWRV9YS0JS RUZSRVNIS0VZQk9BUkRNQVBQSU5HIDEKfCAjZGVmaW5lIEhBVkVfWEtCRlJFRU5BTUVTIDEK fCAjZGVmaW5lIEhBVkVfWFJNU0VUREFUQUJBU0UgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVO UkVTT1VSQ0VTVFJJTkcgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOTlVNQkVST0ZTQ1JFRU4g MQp8ICNkZWZpbmUgSEFWRV9YRElTUExBWUNFTExTIDEKfCAjZGVmaW5lIEhBVkVfWERFU1RS T1lTVUJXSU5ET1dTIDEKfCAjZGVmaW5lIEhBVkVfWDExUjYgMQp8ICNkZWZpbmUgSEFWRV9Y X0kxOE4gMQp8ICNkZWZpbmUgSEFWRV9YSUNDQUxMQkFDS19DQUxMQkFDSyAxCnwgI2RlZmlu ZSBIQVZFX1gxMVI2X1hJTSAxCnwgI2RlZmluZSBIQVZFX1JTVkcgMQp8ICNkZWZpbmUgSEFW RV9XRUJQIDEKfCAjZGVmaW5lIEhBVkVfU1FMSVRFMyAxCnwgI2RlZmluZSBIQVZFX1NRTElU RTNfTE9BRF9FWFRFTlNJT04gMQp8ICNkZWZpbmUgSEFWRV9HRVRBRERSSU5GT19BIDEKfCAj ZGVmaW5lIEhBVkVfR1RLMyAxCnwgI2RlZmluZSBHREtfRElTQUJMRV9ERVBSRUNBVElPTl9X QVJOSU5HUyAxCnwgI2RlZmluZSBHTElCX0RJU0FCTEVfREVQUkVDQVRJT05fV0FSTklOR1Mg MQp8ICNkZWZpbmUgVVNFX0dUSyAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19UUklNIDEKfCAj ZGVmaW5lIEhBVkVfREJVUyAxCnwgI2RlZmluZSBIQVZFX0RCVVNfV0FUQ0hfR0VUX1VOSVhf RkQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1RZUEVfSVNfVkFMSUQgMQp8ICNkZWZpbmUgSEFW RV9EQlVTX1ZBTElEQVRFX0JVU19OQU1FIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFU RV9QQVRIIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9JTlRFUkZBQ0UgMQp8ICNk ZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX01FTUJFUiAxCnwgI2RlZmluZSBIQVZFX0dTRVRU SU5HUyAxCnwgI2RlZmluZSBIQVZFX0xJQlNFTElOVVggMQp8ICNkZWZpbmUgSEFWRV9HTlVU TFMgMQp8ICNkZWZpbmUgSEFWRV9MSUJTWVNURU1EIDEKfCAjZGVmaW5lIEhBVkVfSlNPTiAx CnwgI2RlZmluZSBIQVZFX0lOT1RJRlkgMQp8ICNkZWZpbmUgVVNFX0ZJTEVfTk9USUZZIDEK fCAjZGVmaW5lIFVTRV9UT09MS0lUX1NDUk9MTF9CQVJTIDEKfCAjZGVmaW5lIEhBVkVfWElN IDEKfCAjZGVmaW5lIFVTRV9YSU0gMQp8ICNkZWZpbmUgSEFWRV9YUkVOREVSIDEKfCAjZGVm aW5lIFVTRV9DQUlST19YQ0IgMQp8ICNkZWZpbmUgVVNFX0NBSVJPIDEKfCAjZGVmaW5lIEhB VkVfRlJFRVRZUEUgMQp8ICNkZWZpbmUgSEFWRV9GVF9GQUNFX0dFVENIQVJWQVJJQU5USU5E RVggMQp8ICNkZWZpbmUgSEFWRV9MSUJPVEYgMQp8ICNkZWZpbmUgSEFWRV9PVEZfR0VUX1ZB UklBVElPTl9HTFlQSFMgMQp8ICNkZWZpbmUgSEFWRV9NMTdOX0ZMVCAxCnwgI2RlZmluZSBI QVZFX0hBUkZCVVpaIDEKfCAjZGVmaW5lIFVTRV9YQ0IgMQp8ICNkZWZpbmUgSEFWRV9YUE0g MQp8ICNkZWZpbmUgSEFWRV9KUEVHIDEKfCAjZGVmaW5lIEhBVkVfTENNUzIgMQp8ICNkZWZp bmUgSEFWRV9aTElCIDEKfCAjZGVmaW5lIERZTkFNSUNfTElCX1NVRkZJWCAiLnNvIgp8ICNk ZWZpbmUgRFlOQU1JQ19MSUJfU0VDT05EQVJZX1NVRkZJWCAiIgp8ICNkZWZpbmUgSEFWRV9E TEFERFIgMQp8ICNkZWZpbmUgSEFWRV9NT0RVTEVTIDEKfCAjZGVmaW5lIE1PRFVMRVNfU1VG RklYICIuc28iCnwgI2RlZmluZSBOQVRJVkVfRUxJU1BfU1VGRklYICIuZWxuIgp8ICNkZWZp bmUgSEFWRV9QTkcgMQp8ICNkZWZpbmUgSEFWRV9USUZGIDEKfCAjZGVmaW5lIEhBVkVfR0lG IDEKfCAjZGVmaW5lIEhBVkVfR1BNIDEKfCAjZGVmaW5lIEhBVkVfWF9TTSAxCnwgI2RlZmlu ZSBIQVZFX1hSQU5EUiAxCnwgI2RlZmluZSBIQVZFX1hJTkVSQU1BIDEKfCAjZGVmaW5lIEhB VkVfWEZJWEVTIDEKfCAjZGVmaW5lIEhBVkVfWElOUFVUMiAxCnwgI2RlZmluZSBIQVZFX1hJ U0NST0xMQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YSVRPVUNIQ0xBU1NJTkZP X1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YSUJBUlJJRVJSRUxFQVNFUE9JTlRFUklORk9fREVW SUNFSUQgMQp8ICNkZWZpbmUgSEFWRV9YSUdFU1RVUkVDTEFTU0lORk9fVFlQRSAxCnwgI2Rl ZmluZSBIQVZFX1hTWU5DIDEKfCAjZGVmaW5lIEhBVkVfWFNZTkNUUklHR0VSRkVOQ0UgMQp8 ICNkZWZpbmUgSEFWRV9YREJFIDEKfCAjZGVmaW5lIEhBVkVfWENCX1NIQVBFIDEKfCAjZGVm aW5lIEhBVkVfWFNIQVBFIDEKfCAjZGVmaW5lIEhBVkVfWENPTVBPU0lURSAxCnwgI2RlZmlu ZSBIQVZFX0xJQlhNTDIgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TRUNDT01QX0ggMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfU0VUX01PREVfRklMVEVSIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9TRUNDT01QX0ZJTFRFUl9GTEFHX1RTWU5DIDEKfCAjZGVmaW5lIEhBVkVfTElO VVhfRklMVEVSX0ggMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfU0VUX01PREVfRklM VEVSIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX0ZJTFRFUl9GTEFHX1RTWU5DIDEK fCAjZGVmaW5lIFNJWkVPRl9MT05HIDgKfCAjZGVmaW5lIEhBVkVfQUNDRVBUNCAxCnwgI2Rl ZmluZSBIQVZFX0ZDSERJUiAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVm aW5lIEhBVkVfR0VUUlVTQUdFIDEKfCAjZGVmaW5lIEhBVkVfR0VUX0NVUlJFTlRfRElSX05B TUUgMQp8ICNkZWZpbmUgSEFWRV9MUkFORDQ4IDEKfCAjZGVmaW5lIEhBVkVfUkFORE9NIDEK fCAjZGVmaW5lIEhBVkVfUklOVCAxCnwgI2RlZmluZSBIQVZFX1RSVU5DIDEKfCAjZGVmaW5l IEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUg SEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9ORVdMT0NBTEUgMQp8ICNkZWZpbmUg SEFWRV9HRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8ICNkZWZpbmUg SEFWRV9TSFVURE9XTiAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2Rl ZmluZSBIQVZFX1NUUlNJR05BTCAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2Rl ZmluZSBIQVZFX1NFTkRUTyAxCnwgI2RlZmluZSBIQVZFX1JFQ1ZGUk9NIDEKfCAjZGVmaW5l IEhBVkVfR0VUU09DS05BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRJRkFERFJTIDEKfCAjZGVm aW5lIEhBVkVfRlJFRUlGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9HQUlfU1RSRVJST1IgMQp8 ICNkZWZpbmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFdFTlQgMQp8ICNkZWZp bmUgSEFWRV9FTkRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0dFVEdSRU5UIDEKfCAjZGVmaW5l IEhBVkVfRU5ER1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9SRU5BTUVBVDIgMQp8ICNkZWZpbmUg SEFWRV9DRk1BS0VSQVcgMQp8ICNkZWZpbmUgSEFWRV9DRlNFVFNQRUVEIDEKfCAjZGVmaW5l IEhBVkVfX19FWEVDVVRBQkxFX1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVfTE9HMiAxCnwgI2Rl ZmluZSBIQVZFX1BUSFJFQURfU0VUTkFNRV9OUCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAq Lwp8IC8qIERlZmluZSBwdGhyZWFkX3NldF9uYW1lX25wIHRvIGFuIGlubm9jdW91cyB2YXJp YW50LCBpbiBjYXNlIDxsaW1pdHMuaD4gZGVjbGFyZXMgcHRocmVhZF9zZXRfbmFtZV9ucC4K fCAgICBGb3IgZXhhbXBsZSwgSFAtVVggMTFpIDxsaW1pdHMuaD4gZGVjbGFyZXMgZ2V0dGlt ZW9mZGF5LiAgKi8KfCAjZGVmaW5lIHB0aHJlYWRfc2V0X25hbWVfbnAgaW5ub2N1b3VzX3B0 aHJlYWRfc2V0X25hbWVfbnAKfCAKfCAvKiBTeXN0ZW0gaGVhZGVyIHRvIGRlZmluZSBfX3N0 dWIgbWFjcm9zIGFuZCBob3BlZnVsbHkgZmV3IHByb3RvdHlwZXMsCnwgICAgd2hpY2ggY2Fu IGNvbmZsaWN0IHdpdGggY2hhciBwdGhyZWFkX3NldF9uYW1lX25wICgpOyBiZWxvdy4gICov CnwgCnwgI2luY2x1ZGUgPGxpbWl0cy5oPgp8ICN1bmRlZiBwdGhyZWFkX3NldF9uYW1lX25w CnwgCnwgLyogT3ZlcnJpZGUgYW55IEdDQyBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQg YW4gZXJyb3IuCnwgICAgVXNlIGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2ggdGhlIHJl dHVybiB0eXBlIG9mIGEgR0NDCnwgICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMgYXJndW1lbnQg cHJvdG90eXBlIHdvdWxkIHN0aWxsIGFwcGx5LiAgKi8KfCAjaWZkZWYgX19jcGx1c3BsdXMK fCBleHRlcm4gIkMiCnwgI2VuZGlmCnwgY2hhciBwdGhyZWFkX3NldF9uYW1lX25wICgpOwp8 IC8qIFRoZSBHTlUgQyBsaWJyYXJ5IGRlZmluZXMgdGhpcyBmb3IgZnVuY3Rpb25zIHdoaWNo IGl0IGltcGxlbWVudHMKfCAgICAgdG8gYWx3YXlzIGZhaWwgd2l0aCBFTk9TWVMuICBTb21l IGZ1bmN0aW9ucyBhcmUgYWN0dWFsbHkgbmFtZWQKfCAgICAgc29tZXRoaW5nIHN0YXJ0aW5n IHdpdGggX18gYW5kIHRoZSBub3JtYWwgbmFtZSBpcyBhbiBhbGlhcy4gICovCnwgI2lmIGRl ZmluZWQgX19zdHViX3B0aHJlYWRfc2V0X25hbWVfbnAgfHwgZGVmaW5lZCBfX3N0dWJfX19w dGhyZWFkX3NldF9uYW1lX25wCnwgY2hva2UgbWUKfCAjZW5kaWYKfCAKfCBpbnQKfCBtYWlu ICh2b2lkKQp8IHsKfCByZXR1cm4gcHRocmVhZF9zZXRfbmFtZV9ucCAoKTsKfCAgIDsKfCAg IHJldHVybiAwOwp8IH0KY29uZmlndXJlOjIyMjMzOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToy MjI0MzogY2hlY2tpbmcgd2hldGhlciBwdGhyZWFkX3NldG5hbWVfbnAgdGFrZXMgYSBzaW5n bGUgYXJndW1lbnQKY29uZmlndXJlOjIyMjYwOiBnY2MgLWMgIC1nMyAtTzIgLXB0aHJlYWQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdu dSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIu MC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4w IC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1 aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2ds aWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVt IC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICBjb25mdGVzdC5jID4mNQpjb25mdGVz dC5jOiBJbiBmdW5jdGlvbiAnbWFpbic6CmNvbmZ0ZXN0LmM6MjM2OjIxOiB3YXJuaW5nOiBw YXNzaW5nIGFyZ3VtZW50IDEgb2YgJ3B0aHJlYWRfc2V0bmFtZV9ucCcgbWFrZXMgaW50ZWdl ciBmcm9tIHBvaW50ZXIgd2l0aG91dCBhIGNhc3QgWy1XaW50LWNvbnZlcnNpb25dCiAgMjM2 IHwgcHRocmVhZF9zZXRuYW1lX25wICgiYSIpOwogICAgICB8ICAgICAgICAgICAgICAgICAg ICAgXn5+CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICB8CiAgICAgIHwgICAgICAgICAg ICAgICAgICAgICBjaGFyICoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIGNvbmZ0ZXN0LmM6MjMy OgovdXNyL2luY2x1ZGUvcHRocmVhZC5oOjQ2Mzo0Mjogbm90ZTogZXhwZWN0ZWQgJ3B0aHJl YWRfdCcge2FrYSAnbG9uZyB1bnNpZ25lZCBpbnQnfSBidXQgYXJndW1lbnQgaXMgb2YgdHlw ZSAnY2hhciAqJwogIDQ2MyB8IGV4dGVybiBpbnQgcHRocmVhZF9zZXRuYW1lX25wIChwdGhy ZWFkX3QgX190YXJnZXRfdGhyZWFkLCBjb25zdCBjaGFyICpfX25hbWUpCiAgICAgIHwgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5+fn5+fn5efn5+fn5+fn5+fn5+fn4K Y29uZnRlc3QuYzoyMzY6MTogZXJyb3I6IHRvbyBmZXcgYXJndW1lbnRzIHRvIGZ1bmN0aW9u ICdwdGhyZWFkX3NldG5hbWVfbnAnCiAgMjM2IHwgcHRocmVhZF9zZXRuYW1lX25wICgiYSIp OwogICAgICB8IF5+fn5+fn5+fn5+fn5+fn5+fgovdXNyL2luY2x1ZGUvcHRocmVhZC5oOjQ2 MzoxMjogbm90ZTogZGVjbGFyZWQgaGVyZQogIDQ2MyB8IGV4dGVybiBpbnQgcHRocmVhZF9z ZXRuYW1lX25wIChwdGhyZWFkX3QgX190YXJnZXRfdGhyZWFkLCBjb25zdCBjaGFyICpfX25h bWUpCiAgICAgIHwgICAgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn4KY29uZmlndXJlOjIy MjYwOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRl ZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2RlZmluZSBQ QUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIzMC4w LjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAzMC4wLjUwIgp8ICNk ZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVm aW5lIFBBQ0tBR0VfVVJMICJodHRwczovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIK fCAjZGVmaW5lIEhBVkVfUERVTVBFUiAxCnwgI2RlZmluZSBIQVZFX1NURElPX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVm aW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVm aW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNk ZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfRlNfSCAxCnwgI2Rl ZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCnwg I2RlZmluZSBIQVZFX1BUWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8 ICNkZWZpbmUgSEFWRV9VVE1QX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfTFNBTl9J TlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9BU0FOX0lOVEVSRkFDRV9I IDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0NPTU1PTl9JTlRFUkZBQ0VfREVGU19IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFN X0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5f SCAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9f SCAxCnwgI2RlZmluZSBIQVZFX1NURElPX0VYVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1ZG U19IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfQ0RF RlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9JRUVF NzU0X0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19T RUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NUREJPT0xfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19SQU5ET01fSCAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgX0FMTF9T T1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmluZSBfR05VX1NP VVJDRSAxCnwgI2RlZmluZSBfSFBVWF9BTFRfWE9QRU5fU09DS0VUX0FQSSAxCnwgI2RlZmlu ZSBfTkVUQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfT1BFTkJTRF9TT1VSQ0UgMQp8ICNkZWZp bmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lF Q182MDU1OV9BVFRSSUJTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1 OV9CRlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0RGUF9FWFRf XyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRVhUX18gMQp8ICNkZWZpbmUg X19TVERDX1dBTlRfSUVDXzYwNTU5X0ZVTkNTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19X QU5UX0lFQ182MDU1OV9UWVBFU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9MSUJf RVhUMl9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX01BVEhfU1BFQ19GVU5DU19fIDEKfCAj ZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAj ZGVmaW5lIEdDQ19MSU5UIDEKfCAjZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUvbGludXgiCnwg I2RlZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAxCnwgI2RlZmluZSBIQVZFX0FMU0EgMQp8 ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwgI2RlZmluZSBIQVZFX1BFUlNPTkFMSVRZX0FERFJf Tk9fUkFORE9NSVpFIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5GTyAxCnwgI2RlZmlu ZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUgSEFWRV9URVJNX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUX0lGX0ggMQp8ICNkZWZp bmUgSEFWRV9JRkFERFJTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0ZM QUdTIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9IV0FERFIgMQp8ICNkZWZp bmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX05FVE1BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJV Q1RfSUZSRVFfSUZSX0JST0FEQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9J RlJfQUREUiAxCnwgI2RlZmluZSBIQVZFX1NCUksgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdF U0laRSAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9WRk9SSyAxCnwg I2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0NBTk9OSUNBTElaRV9GSUxF X05BTUUgMQp8ICNkZWZpbmUgSEFWRV9SRUFMUEFUSCAxCnwgI2RlZmluZSBIQVZFX0xTVEFU IDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EQVQgMQp8ICNkZWZpbmUgSEFWRV9MQ0hNT0QgMQp8 ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2Rl ZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBI QVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUg SEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2Rl ZmluZSBIQVZFX0lTQkxBTksgMQp8ICNkZWZpbmUgSEFWRV9JU1dDVFlQRSAxCnwgI2RlZmlu ZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUg SEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNk ZWZpbmUgU1lTVEVNX01BTExPQyAxCnwgI2RlZmluZSBIQVZFX01NQVAgMQp8ICNkZWZpbmUg SEFWRV9QVEhSRUFEIDEKfCAjZGVmaW5lIFRIUkVBRFNfRU5BQkxFRCAxCnwgI2RlZmluZSBI QVZFX1hLQiAxCnwgI2RlZmluZSBIQVZFX1hLQlJFRlJFU0hLRVlCT0FSRE1BUFBJTkcgMQp8 ICNkZWZpbmUgSEFWRV9YS0JGUkVFTkFNRVMgMQp8ICNkZWZpbmUgSEFWRV9YUk1TRVREQVRB QkFTRSAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNPVVJDRVNUUklORyAxCnwgI2RlZmlu ZSBIQVZFX1hTQ1JFRU5OVU1CRVJPRlNDUkVFTiAxCnwgI2RlZmluZSBIQVZFX1hESVNQTEFZ Q0VMTFMgMQp8ICNkZWZpbmUgSEFWRV9YREVTVFJPWVNVQldJTkRPV1MgMQp8ICNkZWZpbmUg SEFWRV9YMTFSNiAxCnwgI2RlZmluZSBIQVZFX1hfSTE4TiAxCnwgI2RlZmluZSBIQVZFX1hJ Q0NBTExCQUNLX0NBTExCQUNLIDEKfCAjZGVmaW5lIEhBVkVfWDExUjZfWElNIDEKfCAjZGVm aW5lIEhBVkVfUlNWRyAxCnwgI2RlZmluZSBIQVZFX1dFQlAgMQp8ICNkZWZpbmUgSEFWRV9T UUxJVEUzIDEKfCAjZGVmaW5lIEhBVkVfU1FMSVRFM19MT0FEX0VYVEVOU0lPTiAxCnwgI2Rl ZmluZSBIQVZFX0dFVEFERFJJTkZPX0EgMQp8ICNkZWZpbmUgSEFWRV9HVEszIDEKfCAjZGVm aW5lIEdES19ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIEdMSUJf RElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAxCnwgI2RlZmluZSBVU0VfR1RLIDEKfCAj ZGVmaW5lIEhBVkVfTUFMTE9DX1RSSU0gMQp8ICNkZWZpbmUgSEFWRV9EQlVTIDEKfCAjZGVm aW5lIEhBVkVfREJVU19XQVRDSF9HRVRfVU5JWF9GRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNf VFlQRV9JU19WQUxJRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfQlVTX05BTUUg MQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX1BBVEggMQp8ICNkZWZpbmUgSEFWRV9E QlVTX1ZBTElEQVRFX0lOVEVSRkFDRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVf TUVNQkVSIDEKfCAjZGVmaW5lIEhBVkVfR1NFVFRJTkdTIDEKfCAjZGVmaW5lIEhBVkVfTElC U0VMSU5VWCAxCnwgI2RlZmluZSBIQVZFX0dOVVRMUyAxCnwgI2RlZmluZSBIQVZFX0xJQlNZ U1RFTUQgMQp8ICNkZWZpbmUgSEFWRV9KU09OIDEKfCAjZGVmaW5lIEhBVkVfSU5PVElGWSAx CnwgI2RlZmluZSBVU0VfRklMRV9OT1RJRlkgMQp8ICNkZWZpbmUgVVNFX1RPT0xLSVRfU0NS T0xMX0JBUlMgMQp8ICNkZWZpbmUgSEFWRV9YSU0gMQp8ICNkZWZpbmUgVVNFX1hJTSAxCnwg I2RlZmluZSBIQVZFX1hSRU5ERVIgMQp8ICNkZWZpbmUgVVNFX0NBSVJPX1hDQiAxCnwgI2Rl ZmluZSBVU0VfQ0FJUk8gMQp8ICNkZWZpbmUgSEFWRV9GUkVFVFlQRSAxCnwgI2RlZmluZSBI QVZFX0ZUX0ZBQ0VfR0VUQ0hBUlZBUklBTlRJTkRFWCAxCnwgI2RlZmluZSBIQVZFX0xJQk9U RiAxCnwgI2RlZmluZSBIQVZFX09URl9HRVRfVkFSSUFUSU9OX0dMWVBIUyAxCnwgI2RlZmlu ZSBIQVZFX00xN05fRkxUIDEKfCAjZGVmaW5lIEhBVkVfSEFSRkJVWlogMQp8ICNkZWZpbmUg VVNFX1hDQiAxCnwgI2RlZmluZSBIQVZFX1hQTSAxCnwgI2RlZmluZSBIQVZFX0pQRUcgMQp8 ICNkZWZpbmUgSEFWRV9MQ01TMiAxCnwgI2RlZmluZSBIQVZFX1pMSUIgMQp8ICNkZWZpbmUg RFlOQU1JQ19MSUJfU1VGRklYICIuc28iCnwgI2RlZmluZSBEWU5BTUlDX0xJQl9TRUNPTkRB UllfU1VGRklYICIiCnwgI2RlZmluZSBIQVZFX0RMQUREUiAxCnwgI2RlZmluZSBIQVZFX01P RFVMRVMgMQp8ICNkZWZpbmUgTU9EVUxFU19TVUZGSVggIi5zbyIKfCAjZGVmaW5lIE5BVElW RV9FTElTUF9TVUZGSVggIi5lbG4iCnwgI2RlZmluZSBIQVZFX1BORyAxCnwgI2RlZmluZSBI QVZFX1RJRkYgMQp8ICNkZWZpbmUgSEFWRV9HSUYgMQp8ICNkZWZpbmUgSEFWRV9HUE0gMQp8 ICNkZWZpbmUgSEFWRV9YX1NNIDEKfCAjZGVmaW5lIEhBVkVfWFJBTkRSIDEKfCAjZGVmaW5l IEhBVkVfWElORVJBTUEgMQp8ICNkZWZpbmUgSEFWRV9YRklYRVMgMQp8ICNkZWZpbmUgSEFW RV9YSU5QVVQyIDEKfCAjZGVmaW5lIEhBVkVfWElTQ1JPTExDTEFTU0lORk9fVFlQRSAxCnwg I2RlZmluZSBIQVZFX1hJVE9VQ0hDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hJ QkFSUklFUlJFTEVBU0VQT0lOVEVSSU5GT19ERVZJQ0VJRCAxCnwgI2RlZmluZSBIQVZFX1hJ R0VTVFVSRUNMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWFNZTkMgMQp8ICNkZWZp bmUgSEFWRV9YU1lOQ1RSSUdHRVJGRU5DRSAxCnwgI2RlZmluZSBIQVZFX1hEQkUgMQp8ICNk ZWZpbmUgSEFWRV9YQ0JfU0hBUEUgMQp8ICNkZWZpbmUgSEFWRV9YU0hBUEUgMQp8ICNkZWZp bmUgSEFWRV9YQ09NUE9TSVRFIDEKfCAjZGVmaW5lIEhBVkVfTElCWE1MMiAxCnwgI2RlZmlu ZSBIQVZFX0xJTlVYX1NFQ0NPTVBfSCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9T RVRfTU9ERV9GSUxURVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZM QUdfVFNZTkMgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GSUxURVJfSCAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X1NFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgU0laRU9GX0xPTkcgOAp8 ICNkZWZpbmUgSEFWRV9BQ0NFUFQ0IDEKfCAjZGVmaW5lIEhBVkVfRkNIRElSIDEKfCAjZGVm aW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNBR0UgMQp8ICNk ZWZpbmUgSEFWRV9HRVRfQ1VSUkVOVF9ESVJfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0xSQU5E NDggMQp8ICNkZWZpbmUgSEFWRV9SQU5ET00gMQp8ICNkZWZpbmUgSEFWRV9SSU5UIDEKfCAj ZGVmaW5lIEhBVkVfVFJVTkMgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZpbmUg SEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FMRSAxCnwgI2RlZmlu ZSBIQVZFX05FV0xPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJMSU1JVCAxCnwgI2RlZmlu ZSBIQVZFX1NFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5l IEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSU0lHTkFMIDEKfCAj ZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfU0VORFRPIDEKfCAjZGVm aW5lIEhBVkVfUkVDVkZST00gMQp8ICNkZWZpbmUgSEFWRV9HRVRTT0NLTkFNRSAxCnwgI2Rl ZmluZSBIQVZFX0dFVElGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9GUkVFSUZBRERSUyAxCnwg I2RlZmluZSBIQVZFX0dBSV9TVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZFX1NZTkMgMQp8ICNk ZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0VORFBXRU5UIDEKfCAjZGVm aW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRHUkVOVCAxCnwgI2RlZmlu ZSBIQVZFX1JFTkFNRUFUMiAxCnwgI2RlZmluZSBIQVZFX0NGTUFLRVJBVyAxCnwgI2RlZmlu ZSBIQVZFX0NGU0VUU1BFRUQgMQp8ICNkZWZpbmUgSEFWRV9fX0VYRUNVVEFCTEVfU1RBUlQg MQp8ICNkZWZpbmUgSEFWRV9MT0cyIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TRVROQU1F X05QIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHB0aHJlYWQuaD4K fCBpbnQKfCBtYWluICh2b2lkKQp8IHsKfCBwdGhyZWFkX3NldG5hbWVfbnAgKCJhIik7Cnwg ICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToyMjI2ODogcmVzdWx0OiBubwpjb25m aWd1cmU6MjIyNzU6IGNoZWNraW5nIHdoZXRoZXIgcHRocmVhZF9zZXRuYW1lX25wIHRha2Vz IHRocmVlIGFyZ3VtZW50cwpjb25maWd1cmU6MjIyOTI6IGdjYyAtYyAgLWczIC1PMiAtcHRo cmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGlu dXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2ds aWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVt IC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJw IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xp Yi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNs dWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1n bnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBl MiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgIGNvbmZ0ZXN0LmMgPiY1CmNv bmZ0ZXN0LmM6IEluIGZ1bmN0aW9uICdtYWluJzoKY29uZnRlc3QuYzoyMzY6MTogZXJyb3I6 IHRvbyBtYW55IGFyZ3VtZW50cyB0byBmdW5jdGlvbiAncHRocmVhZF9zZXRuYW1lX25wJwog IDIzNiB8IHB0aHJlYWRfc2V0bmFtZV9ucCAoMCwgIiVzIiwgImEiKTsKICAgICAgfCBefn5+ fn5+fn5+fn5+fn5+fn4KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIGNvbmZ0ZXN0LmM6MjMyOgov dXNyL2luY2x1ZGUvcHRocmVhZC5oOjQ2MzoxMjogbm90ZTogZGVjbGFyZWQgaGVyZQogIDQ2 MyB8IGV4dGVybiBpbnQgcHRocmVhZF9zZXRuYW1lX25wIChwdGhyZWFkX3QgX190YXJnZXRf dGhyZWFkLCBjb25zdCBjaGFyICpfX25hbWUpCiAgICAgIHwgICAgICAgICAgICBefn5+fn5+ fn5+fn5+fn5+fn4KY29uZmlndXJlOjIyMjkyOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQg cHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1F ICJHTlUgRW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZp bmUgUEFDS0FHRV9WRVJTSU9OICIzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcg IkdOVSBFbWFjcyAzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1n bnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJodHRwczovL3d3dy5n bnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIEhBVkVfUERVTVBFUiAxCnwgI2Rl ZmluZSBIQVZFX1NURElPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmlu ZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmlu ZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVm aW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5l IEhBVkVfTElOVVhfRlNfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1BUWV9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEK fCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1QX0ggMQp8ICNkZWZp bmUgSEFWRV9TQU5JVElaRVJfTFNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NB TklUSVpFUl9BU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0NP TU1PTl9JTlRFUkZBQ0VfREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEK fCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1NURElPX0VYVF9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1ZGU19IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfQ0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1F X0ggMQp8ICNkZWZpbmUgSEFWRV9JRUVFNzU0X0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NUREJP T0xfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SQU5ET01fSCAxCnwgI2RlZmluZSBTVERDX0hF QURFUlMgMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9DX1NP VVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBfSFBVWF9BTFRfWE9Q RU5fU09DS0VUX0FQSSAxCnwgI2RlZmluZSBfTkVUQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBf T1BFTkJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEK fCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9BVFRSSUJTX0VYVF9fIDEKfCAjZGVm aW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9CRlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERD X1dBTlRfSUVDXzYwNTU5X0RGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNf NjA1NTlfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0ZVTkNTX0VY VF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9UWVBFU19FWFRfXyAxCnwg I2RlZmluZSBfX1NURENfV0FOVF9MSUJfRVhUMl9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5U X01BVEhfU1BFQ19GVU5DU19fIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVm aW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIEdDQ19MSU5UIDEKfCAjZGVmaW5lIFNZ U1RFTV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAx CnwgI2RlZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwgI2RlZmlu ZSBIQVZFX1BFUlNPTkFMSVRZX0FERFJfTk9fUkFORE9NSVpFIDEKfCAjZGVmaW5lIEhBVkVf TElOVVhfU1lTSU5GTyAxCnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZp bmUgSEFWRV9URVJNX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5l IEhBVkVfTkVUX0lGX0ggMQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0ggMQp8ICNkZWZpbmUg SEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lG UkVRX0lGUl9IV0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX05FVE1B U0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAxCnwgI2Rl ZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQUREUiAxCnwgI2RlZmluZSBIQVZFX1NCUksg MQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8 ICNkZWZpbmUgSEFWRV9WRk9SSyAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmlu ZSBIQVZFX0NBTk9OSUNBTElaRV9GSUxFX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9SRUFMUEFU SCAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EQVQgMQp8 ICNkZWZpbmUgSEFWRV9MQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmlu ZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUg SEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBI QVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZp bmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX0lTQkxBTksgMQp8ICNkZWZpbmUg SEFWRV9JU1dDVFlQRSAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBI QVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmluZSBI QVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgU1lTVEVNX01BTExPQyAxCnwgI2RlZmlu ZSBIQVZFX01NQVAgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEIDEKfCAjZGVmaW5lIFRIUkVB RFNfRU5BQkxFRCAxCnwgI2RlZmluZSBIQVZFX1hLQiAxCnwgI2RlZmluZSBIQVZFX1hLQlJF RlJFU0hLRVlCT0FSRE1BUFBJTkcgMQp8ICNkZWZpbmUgSEFWRV9YS0JGUkVFTkFNRVMgMQp8 ICNkZWZpbmUgSEFWRV9YUk1TRVREQVRBQkFTRSAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5S RVNPVVJDRVNUUklORyAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJPRlNDUkVFTiAx CnwgI2RlZmluZSBIQVZFX1hESVNQTEFZQ0VMTFMgMQp8ICNkZWZpbmUgSEFWRV9YREVTVFJP WVNVQldJTkRPV1MgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNiAxCnwgI2RlZmluZSBIQVZFX1hf STE4TiAxCnwgI2RlZmluZSBIQVZFX1hJQ0NBTExCQUNLX0NBTExCQUNLIDEKfCAjZGVmaW5l IEhBVkVfWDExUjZfWElNIDEKfCAjZGVmaW5lIEhBVkVfUlNWRyAxCnwgI2RlZmluZSBIQVZF X1dFQlAgMQp8ICNkZWZpbmUgSEFWRV9TUUxJVEUzIDEKfCAjZGVmaW5lIEhBVkVfU1FMSVRF M19MT0FEX0VYVEVOU0lPTiAxCnwgI2RlZmluZSBIQVZFX0dFVEFERFJJTkZPX0EgMQp8ICNk ZWZpbmUgSEFWRV9HVEszIDEKfCAjZGVmaW5lIEdES19ESVNBQkxFX0RFUFJFQ0FUSU9OX1dB Uk5JTkdTIDEKfCAjZGVmaW5lIEdMSUJfRElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAx CnwgI2RlZmluZSBVU0VfR1RLIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX1RSSU0gMQp8ICNk ZWZpbmUgSEFWRV9EQlVTIDEKfCAjZGVmaW5lIEhBVkVfREJVU19XQVRDSF9HRVRfVU5JWF9G RCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVFlQRV9JU19WQUxJRCAxCnwgI2RlZmluZSBIQVZF X0RCVVNfVkFMSURBVEVfQlVTX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRF X1BBVEggMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0lOVEVSRkFDRSAxCnwgI2Rl ZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfTUVNQkVSIDEKfCAjZGVmaW5lIEhBVkVfR1NFVFRJ TkdTIDEKfCAjZGVmaW5lIEhBVkVfTElCU0VMSU5VWCAxCnwgI2RlZmluZSBIQVZFX0dOVVRM UyAxCnwgI2RlZmluZSBIQVZFX0xJQlNZU1RFTUQgMQp8ICNkZWZpbmUgSEFWRV9KU09OIDEK fCAjZGVmaW5lIEhBVkVfSU5PVElGWSAxCnwgI2RlZmluZSBVU0VfRklMRV9OT1RJRlkgMQp8 ICNkZWZpbmUgVVNFX1RPT0xLSVRfU0NST0xMX0JBUlMgMQp8ICNkZWZpbmUgSEFWRV9YSU0g MQp8ICNkZWZpbmUgVVNFX1hJTSAxCnwgI2RlZmluZSBIQVZFX1hSRU5ERVIgMQp8ICNkZWZp bmUgVVNFX0NBSVJPX1hDQiAxCnwgI2RlZmluZSBVU0VfQ0FJUk8gMQp8ICNkZWZpbmUgSEFW RV9GUkVFVFlQRSAxCnwgI2RlZmluZSBIQVZFX0ZUX0ZBQ0VfR0VUQ0hBUlZBUklBTlRJTkRF WCAxCnwgI2RlZmluZSBIQVZFX0xJQk9URiAxCnwgI2RlZmluZSBIQVZFX09URl9HRVRfVkFS SUFUSU9OX0dMWVBIUyAxCnwgI2RlZmluZSBIQVZFX00xN05fRkxUIDEKfCAjZGVmaW5lIEhB VkVfSEFSRkJVWlogMQp8ICNkZWZpbmUgVVNFX1hDQiAxCnwgI2RlZmluZSBIQVZFX1hQTSAx CnwgI2RlZmluZSBIQVZFX0pQRUcgMQp8ICNkZWZpbmUgSEFWRV9MQ01TMiAxCnwgI2RlZmlu ZSBIQVZFX1pMSUIgMQp8ICNkZWZpbmUgRFlOQU1JQ19MSUJfU1VGRklYICIuc28iCnwgI2Rl ZmluZSBEWU5BTUlDX0xJQl9TRUNPTkRBUllfU1VGRklYICIiCnwgI2RlZmluZSBIQVZFX0RM QUREUiAxCnwgI2RlZmluZSBIQVZFX01PRFVMRVMgMQp8ICNkZWZpbmUgTU9EVUxFU19TVUZG SVggIi5zbyIKfCAjZGVmaW5lIE5BVElWRV9FTElTUF9TVUZGSVggIi5lbG4iCnwgI2RlZmlu ZSBIQVZFX1BORyAxCnwgI2RlZmluZSBIQVZFX1RJRkYgMQp8ICNkZWZpbmUgSEFWRV9HSUYg MQp8ICNkZWZpbmUgSEFWRV9HUE0gMQp8ICNkZWZpbmUgSEFWRV9YX1NNIDEKfCAjZGVmaW5l IEhBVkVfWFJBTkRSIDEKfCAjZGVmaW5lIEhBVkVfWElORVJBTUEgMQp8ICNkZWZpbmUgSEFW RV9YRklYRVMgMQp8ICNkZWZpbmUgSEFWRV9YSU5QVVQyIDEKfCAjZGVmaW5lIEhBVkVfWElT Q1JPTExDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hJVE9VQ0hDTEFTU0lORk9f VFlQRSAxCnwgI2RlZmluZSBIQVZFX1hJQkFSUklFUlJFTEVBU0VQT0lOVEVSSU5GT19ERVZJ Q0VJRCAxCnwgI2RlZmluZSBIQVZFX1hJR0VTVFVSRUNMQVNTSU5GT19UWVBFIDEKfCAjZGVm aW5lIEhBVkVfWFNZTkMgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQ1RSSUdHRVJGRU5DRSAxCnwg I2RlZmluZSBIQVZFX1hEQkUgMQp8ICNkZWZpbmUgSEFWRV9YQ0JfU0hBUEUgMQp8ICNkZWZp bmUgSEFWRV9YU0hBUEUgMQp8ICNkZWZpbmUgSEFWRV9YQ09NUE9TSVRFIDEKfCAjZGVmaW5l IEhBVkVfTElCWE1MMiAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX1NFQ0NPTVBfSCAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgSEFWRV9MSU5V WF9GSUxURVJfSCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxU RVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8 ICNkZWZpbmUgU0laRU9GX0xPTkcgOAp8ICNkZWZpbmUgSEFWRV9BQ0NFUFQ0IDEKfCAjZGVm aW5lIEhBVkVfRkNIRElSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZp bmUgSEFWRV9HRVRSVVNBR0UgMQp8ICNkZWZpbmUgSEFWRV9HRVRfQ1VSUkVOVF9ESVJfTkFN RSAxCnwgI2RlZmluZSBIQVZFX0xSQU5ENDggMQp8ICNkZWZpbmUgSEFWRV9SQU5ET00gMQp8 ICNkZWZpbmUgSEFWRV9SSU5UIDEKfCAjZGVmaW5lIEhBVkVfVFJVTkMgMQp8ICNkZWZpbmUg SEFWRV9TRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBI QVZFX1NFVExPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX05FV0xPQ0FMRSAxCnwgI2RlZmluZSBI QVZFX0dFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NFVFJMSU1JVCAxCnwgI2RlZmluZSBI QVZFX1NIVVRET1dOIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVm aW5lIEhBVkVfU1RSU0lHTkFMIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVm aW5lIEhBVkVfU0VORFRPIDEKfCAjZGVmaW5lIEhBVkVfUkVDVkZST00gMQp8ICNkZWZpbmUg SEFWRV9HRVRTT0NLTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVElGQUREUlMgMQp8ICNkZWZp bmUgSEFWRV9GUkVFSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0dBSV9TVFJFUlJPUiAxCnwg I2RlZmluZSBIQVZFX1NZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmlu ZSBIQVZFX0VORFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUg SEFWRV9FTkRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX1JFTkFNRUFUMiAxCnwgI2RlZmluZSBI QVZFX0NGTUFLRVJBVyAxCnwgI2RlZmluZSBIQVZFX0NGU0VUU1BFRUQgMQp8ICNkZWZpbmUg SEFWRV9fX0VYRUNVVEFCTEVfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9MT0cyIDEKfCAjZGVm aW5lIEhBVkVfUFRIUkVBRF9TRVROQU1FX05QIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICov CnwgI2luY2x1ZGUgPHB0aHJlYWQuaD4KfCBpbnQKfCBtYWluICh2b2lkKQp8IHsKfCBwdGhy ZWFkX3NldG5hbWVfbnAgKDAsICIlcyIsICJhIik7CnwgICA7CnwgICByZXR1cm4gMDsKfCB9 CmNvbmZpZ3VyZToyMjMwMDogcmVzdWx0OiBubwpjb25maWd1cmU6MjIzMTQ6IGNoZWNraW5n IGZvciBhbGlnbmVkX2FsbG9jCmNvbmZpZ3VyZToyMjMxNDogZ2NjIC1vIGNvbmZ0ZXN0ICAt ZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lz dGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1s aW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFu LTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Zy ZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2ds aWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVt IC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWly byAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2 XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9w aXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25m dGVzdC5jIC1sc3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhjYi1y ZW5kZXIgPiY1IApjb25mdGVzdC5jOjI0ODo2OiB3YXJuaW5nOiBjb25mbGljdGluZyB0eXBl cyBmb3IgYnVpbHQtaW4gZnVuY3Rpb24gJ2FsaWduZWRfYWxsb2MnOyBleHBlY3RlZCAndm9p ZCAqKGxvbmcgdW5zaWduZWQgaW50LCAgbG9uZyB1bnNpZ25lZCBpbnQpJyBbLVdidWlsdGlu LWRlY2xhcmF0aW9uLW1pc21hdGNoXQogIDI0OCB8IGNoYXIgYWxpZ25lZF9hbGxvYyAoKTsK ICAgICAgfCAgICAgIF5+fn5+fn5+fn5+fn4KY29uZnRlc3QuYzoyNDA6MTogbm90ZTogJ2Fs aWduZWRfYWxsb2MnIGlzIGRlY2xhcmVkIGluIGhlYWRlciAnPHN0ZGxpYi5oPicKICAyMzkg fCAjaW5jbHVkZSA8bGltaXRzLmg+CiAgMjQwIHwgI3VuZGVmIGFsaWduZWRfYWxsb2MKY29u ZmlndXJlOjIyMzE0OiAkPyA9IDAKY29uZmlndXJlOjIyMzE0OiByZXN1bHQ6IHllcwpjb25m aWd1cmU6MjIzMjQ6IGNoZWNraW5nIHdoZXRoZXIgYWxpZ25lZF9hbGxvYyBpcyBkZWNsYXJl ZApjb25maWd1cmU6MjIzMjQ6IGdjYyAtYyAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhi dWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVt IC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIu MCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91 dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0g L3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcx NiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ds aWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5j bHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvbGlicG5nMTYgICAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjIzMjQ6 ICQ/ID0gMApjb25maWd1cmU6MjIzMjQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjM1Mjog Y2hlY2tpbmcgZm9yIHBvc2l4X21hZHZpc2UKY29uZmlndXJlOjIyMzUyOiBnY2MgLW8gY29u ZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmct Mi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91 bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9j YWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIv eDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51 eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0 eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNy L2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAg ICAgIGNvbmZ0ZXN0LmMgLWxzcWxpdGUzIC1sWDExICAgLWxjYWlybyAtbGNhaXJvIC1seGNi IC1seGNiLXJlbmRlciA+JjUgCmNvbmZpZ3VyZToyMjM1MjogJD8gPSAwCmNvbmZpZ3VyZToy MjM1MjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIyMzYwOiBjaGVja2luZyBmb3IgX19idWls dGluX2ZyYW1lX2FkZHJlc3MKY29uZmlndXJlOjIyMzc3OiBnY2MgLW8gY29uZnRlc3QgIC1n MyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv eDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxp bnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4t MSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJl ZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xp Yi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJv IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZf NjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3Bp eG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0 ZXN0LmMgLWxzcWxpdGUzIC1sWDExICAgLWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNiLXJl bmRlciA+JjUgCmNvbmZpZ3VyZToyMjM3NzogJD8gPSAwCmNvbmZpZ3VyZToyMjM4NjogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjIyMzkzOiBjaGVja2luZyBmb3IgX19idWlsdGluX3Vud2lu ZF9pbml0CmNvbmZpZ3VyZToyMjQxMDogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhy ZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51 eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5j bHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xp Yi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGli LTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1 ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdu dS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUy IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1sc3Fs aXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhjYi1yZW5kZXIgPiY1IApj b25maWd1cmU6MjI0MTA6ICQ/ID0gMApjb25maWd1cmU6MjI0MTk6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZToyMjQzMDogY2hlY2tpbmcgZm9yIF9MQVJHRUZJTEVfU09VUkNFIHZhbHVlIG5l ZWRlZCBmb3IgbGFyZ2UgZmlsZXMKY29uZmlndXJlOjIyNDUwOiBnY2MgLW8gY29uZnRlc3Qg IC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0 LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXht YW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv ZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUv Z2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Nh aXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94 ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNv bmZ0ZXN0LmMgLWxzcWxpdGUzIC1sWDExICAgLWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNi LXJlbmRlciA+JjUgCmNvbmZpZ3VyZToyMjQ1MDogJD8gPSAwCmNvbmZpZ3VyZToyMjQ4MDog cmVzdWx0OiBubwpjb25maWd1cmU6MjI1MDE6IGNoZWNraW5nIGZvciBncmFudHB0CmNvbmZp Z3VyZToyMjUwMTogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBp eGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWIt Mi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVk ZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3Rl bSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBu ZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv Z2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9p bmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1sc3FsaXRlMyAtbFgxMSAg IC1sY2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhjYi1yZW5kZXIgPiY1IApjb25maWd1cmU6MjI1 MDE6ICQ/ID0gMApjb25maWd1cmU6MjI1MDE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjUx MDogY2hlY2tpbmcgZm9yIGdldHB0CmNvbmZpZ3VyZToyMjUxMDogZ2NjIC1vIGNvbmZ0ZXN0 ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1p c3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8g LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82 NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4 bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251 L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lz dGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9j YWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIv eDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBj b25mdGVzdC5jIC1sc3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhj Yi1yZW5kZXIgPiY1IApjb25maWd1cmU6MjI1MTA6ICQ/ID0gMApjb25maWd1cmU6MjI1MTA6 IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjUxNjogY2hlY2tpbmcgZm9yIHBvc2l4X29wZW5w dApjb25maWd1cmU6MjI1MTY6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251 IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv YmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4w L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAg LWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVp ZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xp Yi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAtbHNxbGl0ZTMg LWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmln dXJlOjIyNTE2OiAkPyA9IDAKY29uZmlndXJlOjIyNTE2OiByZXN1bHQ6IHllcwpjb25maWd1 cmU6MjI1MzA6IGNoZWNraW5nIGZvciBsaWJyYXJ5IGNvbnRhaW5pbmcgdHB1dHMKY29uZmln dXJlOjIyNTg0OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4 YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0y LjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRl IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv dXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVt IC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5n MTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9n bGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2lu Y2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5j bHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxzcWxpdGUzIC1sWDExICAg LWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNiLXJlbmRlciA+JjUgCi91c3IvYmluL2xkOiAv dG1wL2Njc1pzR3Q0Lm86IGluIGZ1bmN0aW9uIGBtYWluJzoKL2FwcC9lbWFjcy9jb25mdGVz dC5jOjI0NjogdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgdHB1dHMnCmNvbGxlY3QyOiBlcnJv cjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpjb25maWd1cmU6MjI1ODQ6ICQ/ID0gMQpj b25maWd1cmU6IHByb2dyYW0gZXhpdGVkIHdpdGggc3RhdHVzIDEKY29uZmlndXJlOiBmYWls ZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9O QU1FICJHTlUgRW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNk ZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJ TkcgIkdOVSBFbWFjcyAzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1 Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJodHRwczovL3d3 dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIEhBVkVfUERVTVBFUiAxCnwg I2RlZmluZSBIQVZFX1NURElPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2Rl ZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2Rl ZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAj ZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVm aW5lIEhBVkVfTElOVVhfRlNfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1BUWV9IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9I IDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1QX0ggMQp8ICNk ZWZpbmUgSEFWRV9TQU5JVElaRVJfTFNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZF X1NBTklUSVpFUl9BU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVS X0NPTU1PTl9JTlRFUkZBQ0VfREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFE X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9I IDEKfCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1NURElPX0VY VF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1ZGU19IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BU X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfQ0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19U SU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9JRUVFNzU0X0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1J VFNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NU REJPT0xfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SQU5ET01fSCAxCnwgI2RlZmluZSBTVERD X0hFQURFUlMgMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9D X1NPVVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBfSFBVWF9BTFRf WE9QRU5fU09DS0VUX0FQSSAxCnwgI2RlZmluZSBfTkVUQlNEX1NPVVJDRSAxCnwgI2RlZmlu ZSBfT1BFTkJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNT IDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9BVFRSSUJTX0VYVF9fIDEKfCAj ZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9CRlBfRVhUX18gMQp8ICNkZWZpbmUgX19T VERDX1dBTlRfSUVDXzYwNTU5X0RGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9J RUNfNjA1NTlfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0ZVTkNT X0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9UWVBFU19FWFRfXyAx CnwgI2RlZmluZSBfX1NURENfV0FOVF9MSUJfRVhUMl9fIDEKfCAjZGVmaW5lIF9fU1REQ19X QU5UX01BVEhfU1BFQ19GVU5DU19fIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAj ZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIEdDQ19MSU5UIDEKfCAjZGVmaW5l IFNZU1RFTV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENBUkRf SCAxCnwgI2RlZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwgI2Rl ZmluZSBIQVZFX1BFUlNPTkFMSVRZX0FERFJfTk9fUkFORE9NSVpFIDEKfCAjZGVmaW5lIEhB VkVfTElOVVhfU1lTSU5GTyAxCnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNk ZWZpbmUgSEFWRV9URVJNX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVm aW5lIEhBVkVfTkVUX0lGX0ggMQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0ggMQp8ICNkZWZp bmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNU X0lGUkVRX0lGUl9IV0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX05F VE1BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAxCnwg I2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQUREUiAxCnwgI2RlZmluZSBIQVZFX1NC UksgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX0ZPUksg MQp8ICNkZWZpbmUgSEFWRV9WRk9SSyAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2Rl ZmluZSBIQVZFX0NBTk9OSUNBTElaRV9GSUxFX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9SRUFM UEFUSCAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EQVQg MQp8ICNkZWZpbmUgSEFWRV9MQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2Rl ZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZp bmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmlu ZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNk ZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX0lTQkxBTksgMQp8ICNkZWZp bmUgSEFWRV9JU1dDVFlQRSAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmlu ZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmlu ZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgU1lTVEVNX01BTExPQyAxCnwgI2Rl ZmluZSBIQVZFX01NQVAgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEIDEKfCAjZGVmaW5lIFRI UkVBRFNfRU5BQkxFRCAxCnwgI2RlZmluZSBIQVZFX1hLQiAxCnwgI2RlZmluZSBIQVZFX1hL QlJFRlJFU0hLRVlCT0FSRE1BUFBJTkcgMQp8ICNkZWZpbmUgSEFWRV9YS0JGUkVFTkFNRVMg MQp8ICNkZWZpbmUgSEFWRV9YUk1TRVREQVRBQkFTRSAxCnwgI2RlZmluZSBIQVZFX1hTQ1JF RU5SRVNPVVJDRVNUUklORyAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJPRlNDUkVF TiAxCnwgI2RlZmluZSBIQVZFX1hESVNQTEFZQ0VMTFMgMQp8ICNkZWZpbmUgSEFWRV9YREVT VFJPWVNVQldJTkRPV1MgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNiAxCnwgI2RlZmluZSBIQVZF X1hfSTE4TiAxCnwgI2RlZmluZSBIQVZFX1hJQ0NBTExCQUNLX0NBTExCQUNLIDEKfCAjZGVm aW5lIEhBVkVfWDExUjZfWElNIDEKfCAjZGVmaW5lIEhBVkVfUlNWRyAxCnwgI2RlZmluZSBI QVZFX1dFQlAgMQp8ICNkZWZpbmUgSEFWRV9TUUxJVEUzIDEKfCAjZGVmaW5lIEhBVkVfU1FM SVRFM19MT0FEX0VYVEVOU0lPTiAxCnwgI2RlZmluZSBIQVZFX0dFVEFERFJJTkZPX0EgMQp8 ICNkZWZpbmUgSEFWRV9HVEszIDEKfCAjZGVmaW5lIEdES19ESVNBQkxFX0RFUFJFQ0FUSU9O X1dBUk5JTkdTIDEKfCAjZGVmaW5lIEdMSUJfRElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5H UyAxCnwgI2RlZmluZSBVU0VfR1RLIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX1RSSU0gMQp8 ICNkZWZpbmUgSEFWRV9EQlVTIDEKfCAjZGVmaW5lIEhBVkVfREJVU19XQVRDSF9HRVRfVU5J WF9GRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVFlQRV9JU19WQUxJRCAxCnwgI2RlZmluZSBI QVZFX0RCVVNfVkFMSURBVEVfQlVTX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElE QVRFX1BBVEggMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0lOVEVSRkFDRSAxCnwg I2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfTUVNQkVSIDEKfCAjZGVmaW5lIEhBVkVfR1NF VFRJTkdTIDEKfCAjZGVmaW5lIEhBVkVfTElCU0VMSU5VWCAxCnwgI2RlZmluZSBIQVZFX0dO VVRMUyAxCnwgI2RlZmluZSBIQVZFX0xJQlNZU1RFTUQgMQp8ICNkZWZpbmUgSEFWRV9KU09O IDEKfCAjZGVmaW5lIEhBVkVfSU5PVElGWSAxCnwgI2RlZmluZSBVU0VfRklMRV9OT1RJRlkg MQp8ICNkZWZpbmUgVVNFX1RPT0xLSVRfU0NST0xMX0JBUlMgMQp8ICNkZWZpbmUgSEFWRV9Y SU0gMQp8ICNkZWZpbmUgVVNFX1hJTSAxCnwgI2RlZmluZSBIQVZFX1hSRU5ERVIgMQp8ICNk ZWZpbmUgVVNFX0NBSVJPX1hDQiAxCnwgI2RlZmluZSBVU0VfQ0FJUk8gMQp8ICNkZWZpbmUg SEFWRV9GUkVFVFlQRSAxCnwgI2RlZmluZSBIQVZFX0ZUX0ZBQ0VfR0VUQ0hBUlZBUklBTlRJ TkRFWCAxCnwgI2RlZmluZSBIQVZFX0xJQk9URiAxCnwgI2RlZmluZSBIQVZFX09URl9HRVRf VkFSSUFUSU9OX0dMWVBIUyAxCnwgI2RlZmluZSBIQVZFX00xN05fRkxUIDEKfCAjZGVmaW5l IEhBVkVfSEFSRkJVWlogMQp8ICNkZWZpbmUgVVNFX1hDQiAxCnwgI2RlZmluZSBIQVZFX1hQ TSAxCnwgI2RlZmluZSBIQVZFX0pQRUcgMQp8ICNkZWZpbmUgSEFWRV9MQ01TMiAxCnwgI2Rl ZmluZSBIQVZFX1pMSUIgMQp8ICNkZWZpbmUgRFlOQU1JQ19MSUJfU1VGRklYICIuc28iCnwg I2RlZmluZSBEWU5BTUlDX0xJQl9TRUNPTkRBUllfU1VGRklYICIiCnwgI2RlZmluZSBIQVZF X0RMQUREUiAxCnwgI2RlZmluZSBIQVZFX01PRFVMRVMgMQp8ICNkZWZpbmUgTU9EVUxFU19T VUZGSVggIi5zbyIKfCAjZGVmaW5lIE5BVElWRV9FTElTUF9TVUZGSVggIi5lbG4iCnwgI2Rl ZmluZSBIQVZFX1BORyAxCnwgI2RlZmluZSBIQVZFX1RJRkYgMQp8ICNkZWZpbmUgSEFWRV9H SUYgMQp8ICNkZWZpbmUgSEFWRV9HUE0gMQp8ICNkZWZpbmUgSEFWRV9YX1NNIDEKfCAjZGVm aW5lIEhBVkVfWFJBTkRSIDEKfCAjZGVmaW5lIEhBVkVfWElORVJBTUEgMQp8ICNkZWZpbmUg SEFWRV9YRklYRVMgMQp8ICNkZWZpbmUgSEFWRV9YSU5QVVQyIDEKfCAjZGVmaW5lIEhBVkVf WElTQ1JPTExDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hJVE9VQ0hDTEFTU0lO Rk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hJQkFSUklFUlJFTEVBU0VQT0lOVEVSSU5GT19E RVZJQ0VJRCAxCnwgI2RlZmluZSBIQVZFX1hJR0VTVFVSRUNMQVNTSU5GT19UWVBFIDEKfCAj ZGVmaW5lIEhBVkVfWFNZTkMgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQ1RSSUdHRVJGRU5DRSAx CnwgI2RlZmluZSBIQVZFX1hEQkUgMQp8ICNkZWZpbmUgSEFWRV9YQ0JfU0hBUEUgMQp8ICNk ZWZpbmUgSEFWRV9YU0hBUEUgMQp8ICNkZWZpbmUgSEFWRV9YQ09NUE9TSVRFIDEKfCAjZGVm aW5lIEhBVkVfTElCWE1MMiAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX1NFQ0NPTVBfSCAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgSEFWRV9M SU5VWF9GSUxURVJfSCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9G SUxURVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMg MQp8ICNkZWZpbmUgU0laRU9GX0xPTkcgOAp8ICNkZWZpbmUgSEFWRV9BQ0NFUFQ0IDEKfCAj ZGVmaW5lIEhBVkVfRkNIRElSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNk ZWZpbmUgSEFWRV9HRVRSVVNBR0UgMQp8ICNkZWZpbmUgSEFWRV9HRVRfQ1VSUkVOVF9ESVJf TkFNRSAxCnwgI2RlZmluZSBIQVZFX0xSQU5ENDggMQp8ICNkZWZpbmUgSEFWRV9SQU5ET00g MQp8ICNkZWZpbmUgSEFWRV9SSU5UIDEKfCAjZGVmaW5lIEhBVkVfVFJVTkMgMQp8ICNkZWZp bmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmlu ZSBIQVZFX1NFVExPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX05FV0xPQ0FMRSAxCnwgI2RlZmlu ZSBIQVZFX0dFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NFVFJMSU1JVCAxCnwgI2RlZmlu ZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAj ZGVmaW5lIEhBVkVfU1RSU0lHTkFMIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAj ZGVmaW5lIEhBVkVfU0VORFRPIDEKfCAjZGVmaW5lIEhBVkVfUkVDVkZST00gMQp8ICNkZWZp bmUgSEFWRV9HRVRTT0NLTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVElGQUREUlMgMQp8ICNk ZWZpbmUgSEFWRV9GUkVFSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0dBSV9TVFJFUlJPUiAx CnwgI2RlZmluZSBIQVZFX1NZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2Rl ZmluZSBIQVZFX0VORFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZp bmUgSEFWRV9FTkRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX1JFTkFNRUFUMiAxCnwgI2RlZmlu ZSBIQVZFX0NGTUFLRVJBVyAxCnwgI2RlZmluZSBIQVZFX0NGU0VUU1BFRUQgMQp8ICNkZWZp bmUgSEFWRV9fX0VYRUNVVEFCTEVfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9MT0cyIDEKfCAj ZGVmaW5lIEhBVkVfUFRIUkVBRF9TRVROQU1FX05QIDEKfCAjZGVmaW5lIEhBVkVfQUxJR05F RF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfQUxJR05FRF9BTExPQyAxCnwgI2RlZmlu ZSBIQVZFX1BPU0lYX01BRFZJU0UgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fRlJBTUVf QUREUkVTUyAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9VTldJTkRfSU5JVCAxCnwgI2Rl ZmluZSBIQVZFX0ZTRUVLTyAxCnwgI2RlZmluZSBIQVZFX0dSQU5UUFQgMQp8ICNkZWZpbmUg SEFWRV9HRVRQVCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX09QRU5QVCAxCnwgLyogZW5kIGNv bmZkZWZzLmguICAqLwp8IAp8ICAgZXh0ZXJuIHZvaWQgdHB1dHMgKGNvbnN0IGNoYXIgKiwg aW50LCBpbnQgKCopKGludCkpOwp8ICAgICAgICBpbnQgbWFpbiAoaW50IGFyZ2MsIGNoYXIg Kiphcmd2KQp8ICAgICAgICB7CnwgCSAgaWYgKGFyZ2MgPT0gMTAwMDApCnwgCSAgICB0cHV0 cyAoYXJndlswXSwgMCwgMCk7CnwgCSAgcmV0dXJuIDA7CnwgICAgICAgIH0KfCAKY29uZmln dXJlOjIyNTg0OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4 YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0y LjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRl IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv dXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVt IC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5n MTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9n bGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2lu Y2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5j bHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWx0aW5mbyAtbHNxbGl0ZTMg LWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmln dXJlOjIyNTg0OiAkPyA9IDAKY29uZmlndXJlOjIyNTg0OiAuL2NvbmZ0ZXN0CmNvbmZpZ3Vy ZToyMjU4NDogJD8gPSAwCmNvbmZpZ3VyZToyMjYwMTogcmVzdWx0OiAtbHRpbmZvCmNvbmZp Z3VyZToyMjcwNzogY2hlY2tpbmcgd2hldGhlciAtbHRpbmZvIGxpYnJhcnkgZGVmaW5lcyBC Qwpjb25maWd1cmU6MjI3MjY6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251 IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv YmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4w L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAg LWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVp ZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xp Yi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAtbHNxbGl0ZTMg LWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyIC1sdGluZm8gPiY1 IApjb25maWd1cmU6MjI3MjY6ICQ/ID0gMApjb25maWd1cmU6MjI3MzY6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZToyMjc1MzogY2hlY2tpbmcgZm9yIHRpbWVyZmQgaW50ZXJmYWNlCmNvbmZp Z3VyZToyMjc3MzogZ2NjIC1jICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lz dGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGli cG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xp Yi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lz dGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAg LWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVp ZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9saWJwbmcxNiAgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjIyNzczOiAkPyA9IDAK Y29uZmlndXJlOjIyNzgxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjI3OTA6IGNoZWNraW5n IHdoZXRoZXIgc2lnbmFscyBjYW4gYmUgaGFuZGxlZCBvbiBhbHRlcm5hdGUgc3RhY2sKY29u ZmlndXJlOjIyODE1OiBnY2MgLWMgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIu MCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlz eXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9s aWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3Iv bGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIu MCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91 dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2xpYnBuZzE2ICAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjI4MTU6ICQ/ID0g MApjb25maWd1cmU6MjI4MjM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMzQ0OTogY2hlY2tp bmcgZm9yIHZhbGdyaW5kL3ZhbGdyaW5kLmgKY29uZmlndXJlOjIzNDQ5OiBnY2MgLWMgIC1n MyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv eDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxp bnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4t MSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJl ZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xp Yi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJv IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZf NjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3Bp eG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICBjb25mdGVz dC5jID4mNQpjb25maWd1cmU6MjM0NDk6ICQ/ID0gMApjb25maWd1cmU6MjM0NDk6IHJlc3Vs dDogeWVzCmNvbmZpZ3VyZToyMzQ1NzogY2hlY2tpbmcgZm9yIHN0cnVjdCB1bmlwYWlyLnVu aWNvZGUKY29uZmlndXJlOjIzNDU3OiBnY2MgLWMgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGst cGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lk IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xp Yi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNs dWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lz dGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGli cG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4w L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjM0 NTc6ICQ/ID0gMApjb25maWd1cmU6MjM0NTc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMzQ3 MjogY2hlY2tpbmcgZm9yIHBpZF90CmNvbmZpZ3VyZToyMzQ3MjogZ2NjIC1jICAtZzMgLU8y IC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82 NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1n bnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBl MiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4w L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxp bnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4t MSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJl ZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgY29uZnRlc3QuYyA+ JjUKY29uZmlndXJlOjIzNDcyOiAkPyA9IDAKY29uZmlndXJlOjIzNDcyOiBnY2MgLWMgIC1n MyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv eDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxp bnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4t MSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJl ZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xp Yi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJv IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZf NjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3Bp eG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICBjb25mdGVz dC5jID4mNQpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiAnbWFpbic6CmNvbmZ0ZXN0LmM6Mjc4 OjIwOiBlcnJvcjogZXhwZWN0ZWQgZXhwcmVzc2lvbiBiZWZvcmUgJyknIHRva2VuCiAgMjc4 IHwgaWYgKHNpemVvZiAoKHBpZF90KSkpCiAgICAgIHwgICAgICAgICAgICAgICAgICAgIF4K Y29uZmlndXJlOjIzNDcyOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6 CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3Mi CnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9W RVJTSU9OICIzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAz MC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251 Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJodHRwczovL3d3dy5nbnUub3JnL3NvZnR3 YXJlL2VtYWNzLyIKfCAjZGVmaW5lIEhBVkVfUERVTVBFUiAxCnwgI2RlZmluZSBIQVZFX1NU RElPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklO R19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElO VF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NU QVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfVU5J U1REX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhf RlNfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZ U0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1BUWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JF U09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhB VkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1QX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5J VElaRVJfTFNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9BU0FO X0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0NPTU1PTl9JTlRFUkZB Q0VfREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfVU5fSCAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhB VkVfRVhFQ0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1NURElPX0VYVF9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1ZGU19IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfQ0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZp bmUgSEFWRV9JRUVFNzU0X0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NUREJPT0xfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19SQU5ET01fSCAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNk ZWZpbmUgX0FMTF9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2Rl ZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBfSFBVWF9BTFRfWE9QRU5fU09DS0VUX0FQ SSAxCnwgI2RlZmluZSBfTkVUQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfT1BFTkJTRF9TT1VS Q0UgMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9f U1REQ19XQU5UX0lFQ182MDU1OV9BVFRSSUJTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19X QU5UX0lFQ182MDU1OV9CRlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYw NTU5X0RGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRVhUX18g MQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0ZVTkNTX0VYVF9fIDEKfCAjZGVm aW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9UWVBFU19FWFRfXyAxCnwgI2RlZmluZSBfX1NU RENfV0FOVF9MSUJfRVhUMl9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX01BVEhfU1BFQ19G VU5DU19fIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVmaW5lIF9fRVhURU5T SU9OU19fIDEKfCAjZGVmaW5lIEdDQ19MSU5UIDEKfCAjZGVmaW5lIFNZU1RFTV9UWVBFICJn bnUvbGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAxCnwgI2RlZmluZSBI QVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwgI2RlZmluZSBIQVZFX1BFUlNP TkFMSVRZX0FERFJfTk9fUkFORE9NSVpFIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5G TyAxCnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUgSEFWRV9URVJN X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUX0lG X0ggMQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1Rf SUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9IV0FE RFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX05FVE1BU0sgMQp8ICNkZWZp bmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAxCnwgI2RlZmluZSBIQVZFX1NU UlVDVF9JRlJFUV9JRlJfQUREUiAxCnwgI2RlZmluZSBIQVZFX1NCUksgMQp8ICNkZWZpbmUg SEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFW RV9WRk9SSyAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0NBTk9O SUNBTElaRV9GSUxFX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9SRUFMUEFUSCAxCnwgI2RlZmlu ZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EQVQgMQp8ICNkZWZpbmUgSEFW RV9MQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX0ZET1BF TkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAx CnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1Qg MQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9SRUFE TElOSyAxCnwgI2RlZmluZSBIQVZFX0lTQkxBTksgMQp8ICNkZWZpbmUgSEFWRV9JU1dDVFlQ RSAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksg MQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJM RVNJWkUgMQp8ICNkZWZpbmUgU1lTVEVNX01BTExPQyAxCnwgI2RlZmluZSBIQVZFX01NQVAg MQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEIDEKfCAjZGVmaW5lIFRIUkVBRFNfRU5BQkxFRCAx CnwgI2RlZmluZSBIQVZFX1hLQiAxCnwgI2RlZmluZSBIQVZFX1hLQlJFRlJFU0hLRVlCT0FS RE1BUFBJTkcgMQp8ICNkZWZpbmUgSEFWRV9YS0JGUkVFTkFNRVMgMQp8ICNkZWZpbmUgSEFW RV9YUk1TRVREQVRBQkFTRSAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNPVVJDRVNUUklO RyAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJPRlNDUkVFTiAxCnwgI2RlZmluZSBI QVZFX1hESVNQTEFZQ0VMTFMgMQp8ICNkZWZpbmUgSEFWRV9YREVTVFJPWVNVQldJTkRPV1Mg MQp8ICNkZWZpbmUgSEFWRV9YMTFSNiAxCnwgI2RlZmluZSBIQVZFX1hfSTE4TiAxCnwgI2Rl ZmluZSBIQVZFX1hJQ0NBTExCQUNLX0NBTExCQUNLIDEKfCAjZGVmaW5lIEhBVkVfWDExUjZf WElNIDEKfCAjZGVmaW5lIEhBVkVfUlNWRyAxCnwgI2RlZmluZSBIQVZFX1dFQlAgMQp8ICNk ZWZpbmUgSEFWRV9TUUxJVEUzIDEKfCAjZGVmaW5lIEhBVkVfU1FMSVRFM19MT0FEX0VYVEVO U0lPTiAxCnwgI2RlZmluZSBIQVZFX0dFVEFERFJJTkZPX0EgMQp8ICNkZWZpbmUgSEFWRV9H VEszIDEKfCAjZGVmaW5lIEdES19ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAj ZGVmaW5lIEdMSUJfRElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAxCnwgI2RlZmluZSBV U0VfR1RLIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX1RSSU0gMQp8ICNkZWZpbmUgSEFWRV9E QlVTIDEKfCAjZGVmaW5lIEhBVkVfREJVU19XQVRDSF9HRVRfVU5JWF9GRCAxCnwgI2RlZmlu ZSBIQVZFX0RCVVNfVFlQRV9JU19WQUxJRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURB VEVfQlVTX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX1BBVEggMQp8ICNk ZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0lOVEVSRkFDRSAxCnwgI2RlZmluZSBIQVZFX0RC VVNfVkFMSURBVEVfTUVNQkVSIDEKfCAjZGVmaW5lIEhBVkVfR1NFVFRJTkdTIDEKfCAjZGVm aW5lIEhBVkVfTElCU0VMSU5VWCAxCnwgI2RlZmluZSBIQVZFX0dOVVRMUyAxCnwgI2RlZmlu ZSBIQVZFX0xJQlNZU1RFTUQgMQp8ICNkZWZpbmUgSEFWRV9KU09OIDEKfCAjZGVmaW5lIEhB VkVfSU5PVElGWSAxCnwgI2RlZmluZSBVU0VfRklMRV9OT1RJRlkgMQp8ICNkZWZpbmUgVVNF X1RPT0xLSVRfU0NST0xMX0JBUlMgMQp8ICNkZWZpbmUgSEFWRV9YSU0gMQp8ICNkZWZpbmUg VVNFX1hJTSAxCnwgI2RlZmluZSBIQVZFX1hSRU5ERVIgMQp8ICNkZWZpbmUgVVNFX0NBSVJP X1hDQiAxCnwgI2RlZmluZSBVU0VfQ0FJUk8gMQp8ICNkZWZpbmUgSEFWRV9GUkVFVFlQRSAx CnwgI2RlZmluZSBIQVZFX0ZUX0ZBQ0VfR0VUQ0hBUlZBUklBTlRJTkRFWCAxCnwgI2RlZmlu ZSBIQVZFX0xJQk9URiAxCnwgI2RlZmluZSBIQVZFX09URl9HRVRfVkFSSUFUSU9OX0dMWVBI UyAxCnwgI2RlZmluZSBIQVZFX00xN05fRkxUIDEKfCAjZGVmaW5lIEhBVkVfSEFSRkJVWlog MQp8ICNkZWZpbmUgVVNFX1hDQiAxCnwgI2RlZmluZSBIQVZFX1hQTSAxCnwgI2RlZmluZSBI QVZFX0pQRUcgMQp8ICNkZWZpbmUgSEFWRV9MQ01TMiAxCnwgI2RlZmluZSBIQVZFX1pMSUIg MQp8ICNkZWZpbmUgRFlOQU1JQ19MSUJfU1VGRklYICIuc28iCnwgI2RlZmluZSBEWU5BTUlD X0xJQl9TRUNPTkRBUllfU1VGRklYICIiCnwgI2RlZmluZSBIQVZFX0RMQUREUiAxCnwgI2Rl ZmluZSBIQVZFX01PRFVMRVMgMQp8ICNkZWZpbmUgTU9EVUxFU19TVUZGSVggIi5zbyIKfCAj ZGVmaW5lIE5BVElWRV9FTElTUF9TVUZGSVggIi5lbG4iCnwgI2RlZmluZSBIQVZFX1BORyAx CnwgI2RlZmluZSBIQVZFX1RJRkYgMQp8ICNkZWZpbmUgSEFWRV9HSUYgMQp8ICNkZWZpbmUg SEFWRV9HUE0gMQp8ICNkZWZpbmUgSEFWRV9YX1NNIDEKfCAjZGVmaW5lIEhBVkVfWFJBTkRS IDEKfCAjZGVmaW5lIEhBVkVfWElORVJBTUEgMQp8ICNkZWZpbmUgSEFWRV9YRklYRVMgMQp8 ICNkZWZpbmUgSEFWRV9YSU5QVVQyIDEKfCAjZGVmaW5lIEhBVkVfWElTQ1JPTExDTEFTU0lO Rk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hJVE9VQ0hDTEFTU0lORk9fVFlQRSAxCnwgI2Rl ZmluZSBIQVZFX1hJQkFSUklFUlJFTEVBU0VQT0lOVEVSSU5GT19ERVZJQ0VJRCAxCnwgI2Rl ZmluZSBIQVZFX1hJR0VTVFVSRUNMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWFNZ TkMgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQ1RSSUdHRVJGRU5DRSAxCnwgI2RlZmluZSBIQVZF X1hEQkUgMQp8ICNkZWZpbmUgSEFWRV9YQ0JfU0hBUEUgMQp8ICNkZWZpbmUgSEFWRV9YU0hB UEUgMQp8ICNkZWZpbmUgSEFWRV9YQ09NUE9TSVRFIDEKfCAjZGVmaW5lIEhBVkVfTElCWE1M MiAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX1NFQ0NPTVBfSCAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NP TVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GSUxURVJfSCAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgU0la RU9GX0xPTkcgOAp8ICNkZWZpbmUgSEFWRV9BQ0NFUFQ0IDEKfCAjZGVmaW5lIEhBVkVfRkNI RElSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRS VVNBR0UgMQp8ICNkZWZpbmUgSEFWRV9HRVRfQ1VSUkVOVF9ESVJfTkFNRSAxCnwgI2RlZmlu ZSBIQVZFX0xSQU5ENDggMQp8ICNkZWZpbmUgSEFWRV9SQU5ET00gMQp8ICNkZWZpbmUgSEFW RV9SSU5UIDEKfCAjZGVmaW5lIEhBVkVfVFJVTkMgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1Qg MQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FM RSAxCnwgI2RlZmluZSBIQVZFX05FV0xPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJMSU1J VCAxCnwgI2RlZmluZSBIQVZFX1NFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dO IDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RS U0lHTkFMIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfU0VO RFRPIDEKfCAjZGVmaW5lIEhBVkVfUkVDVkZST00gMQp8ICNkZWZpbmUgSEFWRV9HRVRTT0NL TkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVElGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9GUkVF SUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0dBSV9TVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZF X1NZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0VORFBX RU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRHUkVO VCAxCnwgI2RlZmluZSBIQVZFX1JFTkFNRUFUMiAxCnwgI2RlZmluZSBIQVZFX0NGTUFLRVJB VyAxCnwgI2RlZmluZSBIQVZFX0NGU0VUU1BFRUQgMQp8ICNkZWZpbmUgSEFWRV9fX0VYRUNV VEFCTEVfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9MT0cyIDEKfCAjZGVmaW5lIEhBVkVfUFRI UkVBRF9TRVROQU1FX05QIDEKfCAjZGVmaW5lIEhBVkVfQUxJR05FRF9BTExPQyAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfQUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX01B RFZJU0UgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fRlJBTUVfQUREUkVTUyAxCnwgI2Rl ZmluZSBIQVZFX19fQlVJTFRJTl9VTldJTkRfSU5JVCAxCnwgI2RlZmluZSBIQVZFX0ZTRUVL TyAxCnwgI2RlZmluZSBIQVZFX0dSQU5UUFQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQVCAxCnwg I2RlZmluZSBIQVZFX1BPU0lYX09QRU5QVCAxCnwgI2RlZmluZSBURVJNSU5GTyAxCnwgI2Rl ZmluZSBURVJNSU5GT19ERUZJTkVTX0JDIDEKfCAjZGVmaW5lIEhBVkVfVElNRVJGRCAxCnwg I2RlZmluZSBIQVZFX1ZBTEdSSU5EX1ZBTEdSSU5EX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJV Q1RfVU5JUEFJUl9VTklDT0RFIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1 ZGUgPHN0ZGRlZi5oPgp8ICNpZmRlZiBIQVZFX1NURElPX0gKfCAjIGluY2x1ZGUgPHN0ZGlv Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RETElCX0gKfCAjIGluY2x1ZGUgPHN0ZGxp Yi5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR19ICnwgIyBpbmNsdWRlIDxzdHJp bmcuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9JTlRUWVBFU19ICnwgIyBpbmNsdWRlIDxp bnR0eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NURElOVF9ICnwgIyBpbmNsdWRl IDxzdGRpbnQuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdTX0gKfCAjIGluY2x1 ZGUgPHN0cmluZ3MuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TWVNfVFlQRVNfSAp8ICMg aW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1lTX1NUQVRf SAp8ICMgaW5jbHVkZSA8c3lzL3N0YXQuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9VTklT VERfSAp8ICMgaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgCnwgaW50CnwgbWFpbiAo dm9pZCkKfCB7CnwgaWYgKHNpemVvZiAoKHBpZF90KSkpCnwgCSAgICByZXR1cm4gMDsKfCAg IDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjIzNDcyOiByZXN1bHQ6IHllcwpjb25m aWd1cmU6MjM1MTQ6IGNoZWNraW5nIGZvciB3b3JraW5nIGZvcmsKY29uZmlndXJlOjIzNTM4 OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0 ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJw bmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv Y2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGli L3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAt aXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlk IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxzcWxpdGUzIC1sWDExICAgLWxjYWlybyAt bGNhaXJvIC1seGNiIC1seGNiLXJlbmRlciA+JjUgCmNvbmZpZ3VyZToyMzUzODogJD8gPSAw CmNvbmZpZ3VyZToyMzUzODogLi9jb25mdGVzdApjb25maWd1cmU6MjM1Mzg6ICQ/ID0gMApj b25maWd1cmU6MjM1NDk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMzU3MDogY2hlY2tpbmcg Zm9yIHdvcmtpbmcgdmZvcmsKY29uZmlndXJlOjIzNjk5OiByZXN1bHQ6IHllcwpjb25maWd1 cmU6MjM3MjU6IGNoZWNraW5nIGZvciBzbnByaW50Zgpjb25maWd1cmU6MjM3MjU6IGdjYyAt byBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGli cnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVt IC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9s aWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNy L2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1p c3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0 LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXht YW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv ZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVt IC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5n MTYgICAgICAgY29uZnRlc3QuYyAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8g LWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZnRlc3QuYzoyNjQ6Njogd2FybmluZzogY29u ZmxpY3RpbmcgdHlwZXMgZm9yIGJ1aWx0LWluIGZ1bmN0aW9uICdzbnByaW50Zic7IGV4cGVj dGVkICdpbnQoY2hhciAqLCBsb25nIHVuc2lnbmVkIGludCwgIGNvbnN0IGNoYXIgKiwgLi4u KScgWy1XYnVpbHRpbi1kZWNsYXJhdGlvbi1taXNtYXRjaF0KICAyNjQgfCBjaGFyIHNucHJp bnRmICgpOwogICAgICB8ICAgICAgXn5+fn5+fn4KY29uZnRlc3QuYzoyNTY6MTogbm90ZTog J3NucHJpbnRmJyBpcyBkZWNsYXJlZCBpbiBoZWFkZXIgJzxzdGRpby5oPicKICAyNTUgfCAj aW5jbHVkZSA8bGltaXRzLmg+CiAgMjU2IHwgI3VuZGVmIHNucHJpbnRmCmNvbmZpZ3VyZToy MzcyNTogJD8gPSAwCmNvbmZpZ3VyZToyMzcyNTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIz NzMzOiBjaGVja2luZyBmb3Igc3Bhd24uaApjb25maWd1cmU6MjM3MzM6IGdjYyAtYyAgLWcz IC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94 ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGlu dXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0x IC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVl dHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5j bHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGli LTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8g LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82 NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4 bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgIGNvbmZ0ZXN0 LmMgPiY1CmNvbmZpZ3VyZToyMzczMzogJD8gPSAwCmNvbmZpZ3VyZToyMzczMzogcmVzdWx0 OiB5ZXMKY29uZmlndXJlOjIzNzQxOiBjaGVja2luZyBmb3IgcG9zaXhfc3Bhd24KY29uZmln dXJlOjIzNzQxOiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4 YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0y LjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRl IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv dXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVt IC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5n MTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9n bGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2lu Y2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5j bHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxzcWxpdGUzIC1sWDExICAg LWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNiLXJlbmRlciA+JjUgCmNvbmZpZ3VyZToyMzc0 MTogJD8gPSAwCmNvbmZpZ3VyZToyMzc0MTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIzNzQ3 OiBjaGVja2luZyBmb3IgcG9zaXhfc3Bhd25fZmlsZV9hY3Rpb25zX2FkZGNoZGlyCmNvbmZp Z3VyZToyMzc0NzogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBp eGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWIt Mi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVk ZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3Rl bSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBu ZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv Z2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9p bmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1sc3FsaXRlMyAtbFgxMSAg IC1sY2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhjYi1yZW5kZXIgPiY1IAovdXNyL2Jpbi9sZDog L3RtcC9jY1BpVG9DbC5vOiBpbiBmdW5jdGlvbiBgbWFpbic6Ci9hcHAvZW1hY3MvY29uZnRl c3QuYzoyNzg6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYHBvc2l4X3NwYXduX2ZpbGVfYWN0 aW9uc19hZGRjaGRpcicKY29sbGVjdDI6IGVycm9yOiBsZCByZXR1cm5lZCAxIGV4aXQgc3Rh dHVzCmNvbmZpZ3VyZToyMzc0NzogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0g d2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVt YWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tB R0VfVkVSU0lPTiAiMzAuMC41MCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1h Y3MgMzAuMC41MCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ251LWVtYWNz QGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0cHM6Ly93d3cuZ251Lm9yZy9z b2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmluZSBIQVZFX1BEVU1QRVIgMQp8ICNkZWZpbmUgSEFW RV9TVERJT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9T VFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9T VERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZF X1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfSCAxCnwgI2RlZmluZSBIQVZFX0xJ TlVYX0ZTX0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19TWVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9QVFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmlu ZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUF9IIDEKfCAjZGVmaW5lIEhBVkVf U0FOSVRJWkVSX0xTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJf QVNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9DT01NT05fSU5U RVJGQUNFX0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmlu ZSBIQVZFX0VYRUNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJT19FWFRfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19WRlNfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX0NERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAj ZGVmaW5lIEhBVkVfSUVFRTc1NF9IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERCT09MX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfUkFORE9NX0ggMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEK fCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8 ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0hQVVhfQUxUX1hPUEVOX1NPQ0tF VF9BUEkgMQp8ICNkZWZpbmUgX05FVEJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUgX09QRU5CU0Rf U09VUkNFIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmlu ZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfQVRUUklCU19FWFRfXyAxCnwgI2RlZmluZSBfX1NU RENfV0FOVF9JRUNfNjA1NTlfQkZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lF Q182MDU1OV9ERlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0VY VF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9GVU5DU19FWFRfXyAxCnwg I2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfVFlQRVNfRVhUX18gMQp8ICNkZWZpbmUg X19TVERDX1dBTlRfTElCX0VYVDJfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9NQVRIX1NQ RUNfRlVOQ1NfXyAxCnwgI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCnwgI2RlZmluZSBfX0VY VEVOU0lPTlNfXyAxCnwgI2RlZmluZSBHQ0NfTElOVCAxCnwgI2RlZmluZSBTWVNURU1fVFlQ RSAiZ251L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJEX0ggMQp8ICNkZWZp bmUgSEFWRV9BTFNBIDEKfCAjZGVmaW5lIEhBVkVfU09VTkQgMQp8ICNkZWZpbmUgSEFWRV9Q RVJTT05BTElUWV9BRERSX05PX1JBTkRPTUlaRSAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX1NZ U0lORk8gMQp8ICNkZWZpbmUgTElOVVhfU1lTSU5GT19VTklUIDEKfCAjZGVmaW5lIEhBVkVf VEVSTV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX05F VF9JRl9IIDEKfCAjZGVmaW5lIEhBVkVfSUZBRERSU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RS VUNUX0lGUkVRX0lGUl9GTEFHUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJf SFdBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9ORVRNQVNLIDEKfCAj ZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9CUk9BREFERFIgMQp8ICNkZWZpbmUgSEFW RV9TVFJVQ1RfSUZSRVFfSUZSX0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TQlJLIDEKfCAjZGVm aW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5l IEhBVkVfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9D QU5PTklDQUxJWkVfRklMRV9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUkVBTFBBVEggMQp8ICNk ZWZpbmUgSEFWRV9MU1RBVCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PREFUIDEKfCAjZGVmaW5l IEhBVkVfTENITU9EIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9G RE9QRU5ESVIgMQp8ICNkZWZpbmUgSEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5lIEhBVkVfRlNZ TkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9QU0VM RUNUIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVf UkVBRExJTksgMQp8ICNkZWZpbmUgSEFWRV9JU0JMQU5LIDEKfCAjZGVmaW5lIEhBVkVfSVNX Q1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9TVFJUT0lNQVggMQp8ICNkZWZpbmUgSEFWRV9TWU1M SU5LIDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9HRVRE VEFCTEVTSVpFIDEKfCAjZGVmaW5lIFNZU1RFTV9NQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9N TUFQIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRCAxCnwgI2RlZmluZSBUSFJFQURTX0VOQUJM RUQgMQp8ICNkZWZpbmUgSEFWRV9YS0IgMQp8ICNkZWZpbmUgSEFWRV9YS0JSRUZSRVNIS0VZ Qk9BUkRNQVBQSU5HIDEKfCAjZGVmaW5lIEhBVkVfWEtCRlJFRU5BTUVTIDEKfCAjZGVmaW5l IEhBVkVfWFJNU0VUREFUQUJBU0UgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOUkVTT1VSQ0VT VFJJTkcgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOTlVNQkVST0ZTQ1JFRU4gMQp8ICNkZWZp bmUgSEFWRV9YRElTUExBWUNFTExTIDEKfCAjZGVmaW5lIEhBVkVfWERFU1RST1lTVUJXSU5E T1dTIDEKfCAjZGVmaW5lIEhBVkVfWDExUjYgMQp8ICNkZWZpbmUgSEFWRV9YX0kxOE4gMQp8 ICNkZWZpbmUgSEFWRV9YSUNDQUxMQkFDS19DQUxMQkFDSyAxCnwgI2RlZmluZSBIQVZFX1gx MVI2X1hJTSAxCnwgI2RlZmluZSBIQVZFX1JTVkcgMQp8ICNkZWZpbmUgSEFWRV9XRUJQIDEK fCAjZGVmaW5lIEhBVkVfU1FMSVRFMyAxCnwgI2RlZmluZSBIQVZFX1NRTElURTNfTE9BRF9F WFRFTlNJT04gMQp8ICNkZWZpbmUgSEFWRV9HRVRBRERSSU5GT19BIDEKfCAjZGVmaW5lIEhB VkVfR1RLMyAxCnwgI2RlZmluZSBHREtfRElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAx CnwgI2RlZmluZSBHTElCX0RJU0FCTEVfREVQUkVDQVRJT05fV0FSTklOR1MgMQp8ICNkZWZp bmUgVVNFX0dUSyAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19UUklNIDEKfCAjZGVmaW5lIEhB VkVfREJVUyAxCnwgI2RlZmluZSBIQVZFX0RCVVNfV0FUQ0hfR0VUX1VOSVhfRkQgMQp8ICNk ZWZpbmUgSEFWRV9EQlVTX1RZUEVfSVNfVkFMSUQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZB TElEQVRFX0JVU19OQU1FIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9QQVRIIDEK fCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9JTlRFUkZBQ0UgMQp8ICNkZWZpbmUgSEFW RV9EQlVTX1ZBTElEQVRFX01FTUJFUiAxCnwgI2RlZmluZSBIQVZFX0dTRVRUSU5HUyAxCnwg I2RlZmluZSBIQVZFX0xJQlNFTElOVVggMQp8ICNkZWZpbmUgSEFWRV9HTlVUTFMgMQp8ICNk ZWZpbmUgSEFWRV9MSUJTWVNURU1EIDEKfCAjZGVmaW5lIEhBVkVfSlNPTiAxCnwgI2RlZmlu ZSBIQVZFX0lOT1RJRlkgMQp8ICNkZWZpbmUgVVNFX0ZJTEVfTk9USUZZIDEKfCAjZGVmaW5l IFVTRV9UT09MS0lUX1NDUk9MTF9CQVJTIDEKfCAjZGVmaW5lIEhBVkVfWElNIDEKfCAjZGVm aW5lIFVTRV9YSU0gMQp8ICNkZWZpbmUgSEFWRV9YUkVOREVSIDEKfCAjZGVmaW5lIFVTRV9D QUlST19YQ0IgMQp8ICNkZWZpbmUgVVNFX0NBSVJPIDEKfCAjZGVmaW5lIEhBVkVfRlJFRVRZ UEUgMQp8ICNkZWZpbmUgSEFWRV9GVF9GQUNFX0dFVENIQVJWQVJJQU5USU5ERVggMQp8ICNk ZWZpbmUgSEFWRV9MSUJPVEYgMQp8ICNkZWZpbmUgSEFWRV9PVEZfR0VUX1ZBUklBVElPTl9H TFlQSFMgMQp8ICNkZWZpbmUgSEFWRV9NMTdOX0ZMVCAxCnwgI2RlZmluZSBIQVZFX0hBUkZC VVpaIDEKfCAjZGVmaW5lIFVTRV9YQ0IgMQp8ICNkZWZpbmUgSEFWRV9YUE0gMQp8ICNkZWZp bmUgSEFWRV9KUEVHIDEKfCAjZGVmaW5lIEhBVkVfTENNUzIgMQp8ICNkZWZpbmUgSEFWRV9a TElCIDEKfCAjZGVmaW5lIERZTkFNSUNfTElCX1NVRkZJWCAiLnNvIgp8ICNkZWZpbmUgRFlO QU1JQ19MSUJfU0VDT05EQVJZX1NVRkZJWCAiIgp8ICNkZWZpbmUgSEFWRV9ETEFERFIgMQp8 ICNkZWZpbmUgSEFWRV9NT0RVTEVTIDEKfCAjZGVmaW5lIE1PRFVMRVNfU1VGRklYICIuc28i CnwgI2RlZmluZSBOQVRJVkVfRUxJU1BfU1VGRklYICIuZWxuIgp8ICNkZWZpbmUgSEFWRV9Q TkcgMQp8ICNkZWZpbmUgSEFWRV9USUZGIDEKfCAjZGVmaW5lIEhBVkVfR0lGIDEKfCAjZGVm aW5lIEhBVkVfR1BNIDEKfCAjZGVmaW5lIEhBVkVfWF9TTSAxCnwgI2RlZmluZSBIQVZFX1hS QU5EUiAxCnwgI2RlZmluZSBIQVZFX1hJTkVSQU1BIDEKfCAjZGVmaW5lIEhBVkVfWEZJWEVT IDEKfCAjZGVmaW5lIEhBVkVfWElOUFVUMiAxCnwgI2RlZmluZSBIQVZFX1hJU0NST0xMQ0xB U1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YSVRPVUNIQ0xBU1NJTkZPX1RZUEUgMQp8 ICNkZWZpbmUgSEFWRV9YSUJBUlJJRVJSRUxFQVNFUE9JTlRFUklORk9fREVWSUNFSUQgMQp8 ICNkZWZpbmUgSEFWRV9YSUdFU1RVUkVDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZF X1hTWU5DIDEKfCAjZGVmaW5lIEhBVkVfWFNZTkNUUklHR0VSRkVOQ0UgMQp8ICNkZWZpbmUg SEFWRV9YREJFIDEKfCAjZGVmaW5lIEhBVkVfWENCX1NIQVBFIDEKfCAjZGVmaW5lIEhBVkVf WFNIQVBFIDEKfCAjZGVmaW5lIEhBVkVfWENPTVBPU0lURSAxCnwgI2RlZmluZSBIQVZFX0xJ QlhNTDIgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TRUNDT01QX0ggMQp8ICNkZWZpbmUgSEFW RV9ERUNMX1NFQ0NPTVBfU0VUX01PREVfRklMVEVSIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9T RUNDT01QX0ZJTFRFUl9GTEFHX1RTWU5DIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfRklMVEVS X0ggMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfU0VUX01PREVfRklMVEVSIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX0ZJTFRFUl9GTEFHX1RTWU5DIDEKfCAjZGVmaW5l IFNJWkVPRl9MT05HIDgKfCAjZGVmaW5lIEhBVkVfQUNDRVBUNCAxCnwgI2RlZmluZSBIQVZF X0ZDSERJUiAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVf R0VUUlVTQUdFIDEKfCAjZGVmaW5lIEhBVkVfR0VUX0NVUlJFTlRfRElSX05BTUUgMQp8ICNk ZWZpbmUgSEFWRV9MUkFORDQ4IDEKfCAjZGVmaW5lIEhBVkVfUkFORE9NIDEKfCAjZGVmaW5l IEhBVkVfUklOVCAxCnwgI2RlZmluZSBIQVZFX1RSVU5DIDEKfCAjZGVmaW5lIEhBVkVfU0VM RUNUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRVRM T0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9ORVdMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9HRVRS TElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TSFVU RE9XTiAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZF X1NUUlNJR05BTCAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZF X1NFTkRUTyAxCnwgI2RlZmluZSBIQVZFX1JFQ1ZGUk9NIDEKfCAjZGVmaW5lIEhBVkVfR0VU U09DS05BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVf RlJFRUlGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9HQUlfU1RSRVJST1IgMQp8ICNkZWZpbmUg SEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9F TkRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0dFVEdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5E R1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9SRU5BTUVBVDIgMQp8ICNkZWZpbmUgSEFWRV9DRk1B S0VSQVcgMQp8ICNkZWZpbmUgSEFWRV9DRlNFVFNQRUVEIDEKfCAjZGVmaW5lIEhBVkVfX19F WEVDVVRBQkxFX1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVfTE9HMiAxCnwgI2RlZmluZSBIQVZF X1BUSFJFQURfU0VUTkFNRV9OUCAxCnwgI2RlZmluZSBIQVZFX0FMSUdORURfQUxMT0MgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX0FMSUdORURfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9QT1NJ WF9NQURWSVNFIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX0ZSQU1FX0FERFJFU1MgMQp8 ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fVU5XSU5EX0lOSVQgMQp8ICNkZWZpbmUgSEFWRV9G U0VFS08gMQp8ICNkZWZpbmUgSEFWRV9HUkFOVFBUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFQg MQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9PUEVOUFQgMQp8ICNkZWZpbmUgVEVSTUlORk8gMQp8 ICNkZWZpbmUgVEVSTUlORk9fREVGSU5FU19CQyAxCnwgI2RlZmluZSBIQVZFX1RJTUVSRkQg MQp8ICNkZWZpbmUgSEFWRV9WQUxHUklORF9WQUxHUklORF9IIDEKfCAjZGVmaW5lIEhBVkVf U1RSVUNUX1VOSVBBSVJfVU5JQ09ERSAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVkZPUksg MQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9TTlBSSU5U RiAxCnwgI2RlZmluZSBIQVZFX1NQQVdOX0ggMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFX TiAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8IC8qIERlZmluZSBwb3NpeF9zcGF3bl9m aWxlX2FjdGlvbnNfYWRkY2hkaXIgdG8gYW4gaW5ub2N1b3VzIHZhcmlhbnQsIGluIGNhc2Ug PGxpbWl0cy5oPiBkZWNsYXJlcyBwb3NpeF9zcGF3bl9maWxlX2FjdGlvbnNfYWRkY2hkaXIu CnwgICAgRm9yIGV4YW1wbGUsIEhQLVVYIDExaSA8bGltaXRzLmg+IGRlY2xhcmVzIGdldHRp bWVvZmRheS4gICovCnwgI2RlZmluZSBwb3NpeF9zcGF3bl9maWxlX2FjdGlvbnNfYWRkY2hk aXIgaW5ub2N1b3VzX3Bvc2l4X3NwYXduX2ZpbGVfYWN0aW9uc19hZGRjaGRpcgp8IAp8IC8q IFN5c3RlbSBoZWFkZXIgdG8gZGVmaW5lIF9fc3R1YiBtYWNyb3MgYW5kIGhvcGVmdWxseSBm ZXcgcHJvdG90eXBlcywKfCAgICB3aGljaCBjYW4gY29uZmxpY3Qgd2l0aCBjaGFyIHBvc2l4 X3NwYXduX2ZpbGVfYWN0aW9uc19hZGRjaGRpciAoKTsgYmVsb3cuICAqLwp8IAp8ICNpbmNs dWRlIDxsaW1pdHMuaD4KfCAjdW5kZWYgcG9zaXhfc3Bhd25fZmlsZV9hY3Rpb25zX2FkZGNo ZGlyCnwgCnwgLyogT3ZlcnJpZGUgYW55IEdDQyBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZv aWQgYW4gZXJyb3IuCnwgICAgVXNlIGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2ggdGhl IHJldHVybiB0eXBlIG9mIGEgR0NDCnwgICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMgYXJndW1l bnQgcHJvdG90eXBlIHdvdWxkIHN0aWxsIGFwcGx5LiAgKi8KfCAjaWZkZWYgX19jcGx1c3Bs dXMKfCBleHRlcm4gIkMiCnwgI2VuZGlmCnwgY2hhciBwb3NpeF9zcGF3bl9maWxlX2FjdGlv bnNfYWRkY2hkaXIgKCk7CnwgLyogVGhlIEdOVSBDIGxpYnJhcnkgZGVmaW5lcyB0aGlzIGZv ciBmdW5jdGlvbnMgd2hpY2ggaXQgaW1wbGVtZW50cwp8ICAgICB0byBhbHdheXMgZmFpbCB3 aXRoIEVOT1NZUy4gIFNvbWUgZnVuY3Rpb25zIGFyZSBhY3R1YWxseSBuYW1lZAp8ICAgICBz b21ldGhpbmcgc3RhcnRpbmcgd2l0aCBfXyBhbmQgdGhlIG5vcm1hbCBuYW1lIGlzIGFuIGFs aWFzLiAgKi8KfCAjaWYgZGVmaW5lZCBfX3N0dWJfcG9zaXhfc3Bhd25fZmlsZV9hY3Rpb25z X2FkZGNoZGlyIHx8IGRlZmluZWQgX19zdHViX19fcG9zaXhfc3Bhd25fZmlsZV9hY3Rpb25z X2FkZGNoZGlyCnwgY2hva2UgbWUKfCAjZW5kaWYKfCAKfCBpbnQKfCBtYWluICh2b2lkKQp8 IHsKfCByZXR1cm4gcG9zaXhfc3Bhd25fZmlsZV9hY3Rpb25zX2FkZGNoZGlyICgpOwp8ICAg Owp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MjM3NDc6IHJlc3VsdDogbm8KY29uZmln dXJlOjIzNzUzOiBjaGVja2luZyBmb3IgcG9zaXhfc3Bhd25fZmlsZV9hY3Rpb25zX2FkZGNo ZGlyX25wCmNvbmZpZ3VyZToyMzc1MzogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhy ZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51 eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5j bHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xp Yi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGli LTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1 ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdu dS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUy IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1sc3Fs aXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhjYi1yZW5kZXIgPiY1IApj b25maWd1cmU6MjM3NTM6ICQ/ID0gMApjb25maWd1cmU6MjM3NTM6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZToyMzc1OTogY2hlY2tpbmcgZm9yIHBvc2l4X3NwYXduYXR0cl9zZXRmbGFncwpj b25maWd1cmU6MjM3NTk6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dk ay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1p c3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxr aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9n bGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2lu Y2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5j bHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlz eXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9s aWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0y LjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAtbHNxbGl0ZTMgLWxY MTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJl OjIzNzU5OiAkPyA9IDAKY29uZmlndXJlOjIzNzU5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6 MjM3NzA6IGNoZWNraW5nIHdoZXRoZXIgUE9TSVhfU1BBV05fU0VUU0lEIGlzIGRlY2xhcmVk CmNvbmZpZ3VyZToyMzc3MDogZ2NjIC1jICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1 Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4w IC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1 aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAv dXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2 IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xp Yi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNs dWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9saWJwbmcxNiAgICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyMzc3MDog JD8gPSAwCmNvbmZpZ3VyZToyMzc3MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIzNzg1OiBj aGVja2luZyB3aGV0aGVyIEdMaWIgaXMgbGlua2VkIGluCmNvbmZpZ3VyZToyMzgwOTogZ2Nj IC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9s aWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91 c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJv IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZf NjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3Bp eG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0 ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJw bmcxNiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ3RrLTMuMCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvYXQtc3BpMi1hdGsvMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9hdC1z cGktMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9kYnVzLTEuMCAtaXN5c3RlbSAvdXNyL2xp Yi94ODZfNjQtbGludXgtZ251L2RidXMtMS4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2d0ay0zLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dpby11bml4LTIuMCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BhbmdvLTEuMCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvaGFyZmJ1enogLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3Bh bmdvLTEuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJpYmlkaSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvaGFyZmJ1enogLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2F0ay0xLjAgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUy IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9i bGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIv eDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1wdGhyZWFkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1 Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4w IC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1 aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2RidXMtMS4wIC1pc3lzdGVtIC91 c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZGJ1cy0xLjAvaW5jbHVkZSAtcHRocmVhZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lk IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZf NjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ds aWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5j bHVkZSAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4w L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxp bnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4t MSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJl ZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5j IC1sc3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhjYi1yZW5kZXIg LWxndGstMyAtbGdkay0zIC1scGFuZ29jYWlyby0xLjAgLWxwYW5nby0xLjAgLWxoYXJmYnV6 eiAtbGF0ay0xLjAgLWxjYWlyby1nb2JqZWN0IC1sY2Fpcm8gLWxnZGtfcGl4YnVmLTIuMCAt bGdpby0yLjAgLWxnb2JqZWN0LTIuMCAtbGdsaWItMi4wIC1scnN2Zy0yIC1sbSAtbGdpby0y LjAgLWxnZGtfcGl4YnVmLTIuMCAtbGdvYmplY3QtMi4wIC1sZ2xpYi0yLjAgLWxjYWlybyAt bGRidXMtMSAtbGdpby0yLjAgLWxnb2JqZWN0LTIuMCAtbGdsaWItMi4wIC1sZ29iamVjdC0y LjAgLWxnbGliLTIuMCAgLWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNiLXJlbmRlciA+JjUg CmNvbmZpZ3VyZToyMzgwOTogJD8gPSAwCmNvbmZpZ3VyZToyMzgyMDogcmVzdWx0OiB5ZXMK Y29uZmlndXJlOjIzODMyOiBjaGVja2luZyBmb3IgbmxfbGFuZ2luZm8gYW5kIENPREVTRVQK Y29uZmlndXJlOjIzODQ5OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9n ZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Js a2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv Z2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9p bmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1p c3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv bGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWIt Mi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxzcWxpdGUzIC1s WDExICAgLWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNiLXJlbmRlciA+JjUgCmNvbmZpZ3Vy ZToyMzg0OTogJD8gPSAwCmNvbmZpZ3VyZToyMzg1OTogcmVzdWx0OiB5ZXMKY29uZmlndXJl OjIzODY2OiBjaGVja2luZyBmb3IgbmxfbGFuZ2luZm8gYW5kIF9OTF9QQVBFUl9XSURUSApj b25maWd1cmU6MjM4ODM6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dk ay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1p c3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxr aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9n bGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2lu Y2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5j bHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlz eXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9s aWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0y LjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAtbHNxbGl0ZTMgLWxY MTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJl OjIzODgzOiAkPyA9IDAKY29uZmlndXJlOjIzODkzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6 MjM5MDQ6IGNoZWNraW5nIGZvciBtYnN0YXRlX3QKY29uZmlndXJlOjIzOTIyOiBnY2MgLWMg IC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0 LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXht YW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv ZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUv Z2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Nh aXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94 ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICBjb25m dGVzdC5jID4mNQpjb25maWd1cmU6MjM5MjI6ICQ/ID0gMApjb25maWd1cmU6MjM5MzA6IHJl c3VsdDogeWVzCmNvbmZpZ3VyZToyNDI1MTogY2hlY2tpbmcgZm9yIHNpZ25hbHMgdmlhIGNo YXJhY3RlcnMKY29uZmlndXJlOjI0MjczOiBnY2MgLUUgICAgIGNvbmZ0ZXN0LmMKY29uZmln dXJlOjI0MjczOiAkPyA9IDAKY29uZmlndXJlOjI0MjgxOiByZXN1bHQ6IHllcwpjb25maWd1 cmU6MjQzMjE6IGdjYyAtRSAgICAgY29uZnRlc3QuYwpjb25mdGVzdC5jOjI4MTozOiBlcnJv cjogI2Vycm9yICJub3QgaWE2NCIKICAyODEgfCAjIGVycm9yICJub3QgaWE2NCIKICAgICAg fCAgIF5+fn5+CmNvbmZpZ3VyZToyNDMyMTogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHBy b2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAi R05VIEVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJlbWFjcyIKfCAjZGVmaW5l IFBBQ0tBR0VfVkVSU0lPTiAiMzAuMC41MCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJH TlUgRW1hY3MgMzAuMC41MCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ251 LWVtYWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0cHM6Ly93d3cuZ251 Lm9yZy9zb2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmluZSBIQVZFX1BEVU1QRVIgMQp8ICNkZWZp bmUgSEFWRV9TVERJT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUg SEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUg SEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmlu ZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfSCAxCnwgI2RlZmluZSBI QVZFX0xJTlVYX0ZTX0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19TWVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9QVFlfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwg I2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUF9IIDEKfCAjZGVmaW5l IEhBVkVfU0FOSVRJWkVSX0xTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5J VElaRVJfQVNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9DT01N T05fSU5URVJGQUNFX0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwg I2RlZmluZSBIQVZFX0VYRUNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJT19FWFRfSCAx CnwgI2RlZmluZSBIQVZFX1NZU19WRlNfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX0NERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9I IDEKfCAjZGVmaW5lIEhBVkVfSUVFRTc1NF9IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERCT09M X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkFORE9NX0ggMQp8ICNkZWZpbmUgU1REQ19IRUFE RVJTIDEKfCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fQ19TT1VS Q0UgMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0hQVVhfQUxUX1hPUEVO X1NPQ0tFVF9BUEkgMQp8ICNkZWZpbmUgX05FVEJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUgX09Q RU5CU0RfU09VUkNFIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAxCnwg I2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfQVRUUklCU19FWFRfXyAxCnwgI2RlZmlu ZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfQkZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19X QU5UX0lFQ182MDU1OV9ERlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYw NTU5X0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9GVU5DU19FWFRf XyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfVFlQRVNfRVhUX18gMQp8ICNk ZWZpbmUgX19TVERDX1dBTlRfTElCX0VYVDJfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9N QVRIX1NQRUNfRlVOQ1NfXyAxCnwgI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCnwgI2RlZmlu ZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBHQ0NfTElOVCAxCnwgI2RlZmluZSBTWVNU RU1fVFlQRSAiZ251L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJEX0ggMQp8 ICNkZWZpbmUgSEFWRV9BTFNBIDEKfCAjZGVmaW5lIEhBVkVfU09VTkQgMQp8ICNkZWZpbmUg SEFWRV9QRVJTT05BTElUWV9BRERSX05PX1JBTkRPTUlaRSAxCnwgI2RlZmluZSBIQVZFX0xJ TlVYX1NZU0lORk8gMQp8ICNkZWZpbmUgTElOVVhfU1lTSU5GT19VTklUIDEKfCAjZGVmaW5l IEhBVkVfVEVSTV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBI QVZFX05FVF9JRl9IIDEKfCAjZGVmaW5lIEhBVkVfSUZBRERSU19IIDEKfCAjZGVmaW5lIEhB VkVfU1RSVUNUX0lGUkVRX0lGUl9GTEFHUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJF UV9JRlJfSFdBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9ORVRNQVNL IDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9CUk9BREFERFIgMQp8ICNkZWZp bmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TQlJLIDEK fCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAj ZGVmaW5lIEhBVkVfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUg SEFWRV9DQU5PTklDQUxJWkVfRklMRV9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUkVBTFBBVEgg MQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PREFUIDEKfCAj ZGVmaW5lIEhBVkVfTENITU9EIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUg SEFWRV9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgSEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5lIEhB VkVfRlNZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFW RV9QU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5l IEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFWRV9JU0JMQU5LIDEKfCAjZGVmaW5lIEhB VkVfSVNXQ1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9TVFJUT0lNQVggMQp8ICNkZWZpbmUgSEFW RV9TWU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUgSEFW RV9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIFNZU1RFTV9NQUxMT0MgMQp8ICNkZWZpbmUg SEFWRV9NTUFQIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRCAxCnwgI2RlZmluZSBUSFJFQURT X0VOQUJMRUQgMQp8ICNkZWZpbmUgSEFWRV9YS0IgMQp8ICNkZWZpbmUgSEFWRV9YS0JSRUZS RVNIS0VZQk9BUkRNQVBQSU5HIDEKfCAjZGVmaW5lIEhBVkVfWEtCRlJFRU5BTUVTIDEKfCAj ZGVmaW5lIEhBVkVfWFJNU0VUREFUQUJBU0UgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOUkVT T1VSQ0VTVFJJTkcgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOTlVNQkVST0ZTQ1JFRU4gMQp8 ICNkZWZpbmUgSEFWRV9YRElTUExBWUNFTExTIDEKfCAjZGVmaW5lIEhBVkVfWERFU1RST1lT VUJXSU5ET1dTIDEKfCAjZGVmaW5lIEhBVkVfWDExUjYgMQp8ICNkZWZpbmUgSEFWRV9YX0kx OE4gMQp8ICNkZWZpbmUgSEFWRV9YSUNDQUxMQkFDS19DQUxMQkFDSyAxCnwgI2RlZmluZSBI QVZFX1gxMVI2X1hJTSAxCnwgI2RlZmluZSBIQVZFX1JTVkcgMQp8ICNkZWZpbmUgSEFWRV9X RUJQIDEKfCAjZGVmaW5lIEhBVkVfU1FMSVRFMyAxCnwgI2RlZmluZSBIQVZFX1NRTElURTNf TE9BRF9FWFRFTlNJT04gMQp8ICNkZWZpbmUgSEFWRV9HRVRBRERSSU5GT19BIDEKfCAjZGVm aW5lIEhBVkVfR1RLMyAxCnwgI2RlZmluZSBHREtfRElTQUJMRV9ERVBSRUNBVElPTl9XQVJO SU5HUyAxCnwgI2RlZmluZSBHTElCX0RJU0FCTEVfREVQUkVDQVRJT05fV0FSTklOR1MgMQp8 ICNkZWZpbmUgVVNFX0dUSyAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19UUklNIDEKfCAjZGVm aW5lIEhBVkVfREJVUyAxCnwgI2RlZmluZSBIQVZFX0RCVVNfV0FUQ0hfR0VUX1VOSVhfRkQg MQp8ICNkZWZpbmUgSEFWRV9EQlVTX1RZUEVfSVNfVkFMSUQgMQp8ICNkZWZpbmUgSEFWRV9E QlVTX1ZBTElEQVRFX0JVU19OQU1FIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9Q QVRIIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9JTlRFUkZBQ0UgMQp8ICNkZWZp bmUgSEFWRV9EQlVTX1ZBTElEQVRFX01FTUJFUiAxCnwgI2RlZmluZSBIQVZFX0dTRVRUSU5H UyAxCnwgI2RlZmluZSBIQVZFX0xJQlNFTElOVVggMQp8ICNkZWZpbmUgSEFWRV9HTlVUTFMg MQp8ICNkZWZpbmUgSEFWRV9MSUJTWVNURU1EIDEKfCAjZGVmaW5lIEhBVkVfSlNPTiAxCnwg I2RlZmluZSBIQVZFX0lOT1RJRlkgMQp8ICNkZWZpbmUgVVNFX0ZJTEVfTk9USUZZIDEKfCAj ZGVmaW5lIFVTRV9UT09MS0lUX1NDUk9MTF9CQVJTIDEKfCAjZGVmaW5lIEhBVkVfWElNIDEK fCAjZGVmaW5lIFVTRV9YSU0gMQp8ICNkZWZpbmUgSEFWRV9YUkVOREVSIDEKfCAjZGVmaW5l IFVTRV9DQUlST19YQ0IgMQp8ICNkZWZpbmUgVVNFX0NBSVJPIDEKfCAjZGVmaW5lIEhBVkVf RlJFRVRZUEUgMQp8ICNkZWZpbmUgSEFWRV9GVF9GQUNFX0dFVENIQVJWQVJJQU5USU5ERVgg MQp8ICNkZWZpbmUgSEFWRV9MSUJPVEYgMQp8ICNkZWZpbmUgSEFWRV9PVEZfR0VUX1ZBUklB VElPTl9HTFlQSFMgMQp8ICNkZWZpbmUgSEFWRV9NMTdOX0ZMVCAxCnwgI2RlZmluZSBIQVZF X0hBUkZCVVpaIDEKfCAjZGVmaW5lIFVTRV9YQ0IgMQp8ICNkZWZpbmUgSEFWRV9YUE0gMQp8 ICNkZWZpbmUgSEFWRV9KUEVHIDEKfCAjZGVmaW5lIEhBVkVfTENNUzIgMQp8ICNkZWZpbmUg SEFWRV9aTElCIDEKfCAjZGVmaW5lIERZTkFNSUNfTElCX1NVRkZJWCAiLnNvIgp8ICNkZWZp bmUgRFlOQU1JQ19MSUJfU0VDT05EQVJZX1NVRkZJWCAiIgp8ICNkZWZpbmUgSEFWRV9ETEFE RFIgMQp8ICNkZWZpbmUgSEFWRV9NT0RVTEVTIDEKfCAjZGVmaW5lIE1PRFVMRVNfU1VGRklY ICIuc28iCnwgI2RlZmluZSBOQVRJVkVfRUxJU1BfU1VGRklYICIuZWxuIgp8ICNkZWZpbmUg SEFWRV9QTkcgMQp8ICNkZWZpbmUgSEFWRV9USUZGIDEKfCAjZGVmaW5lIEhBVkVfR0lGIDEK fCAjZGVmaW5lIEhBVkVfR1BNIDEKfCAjZGVmaW5lIEhBVkVfWF9TTSAxCnwgI2RlZmluZSBI QVZFX1hSQU5EUiAxCnwgI2RlZmluZSBIQVZFX1hJTkVSQU1BIDEKfCAjZGVmaW5lIEhBVkVf WEZJWEVTIDEKfCAjZGVmaW5lIEhBVkVfWElOUFVUMiAxCnwgI2RlZmluZSBIQVZFX1hJU0NS T0xMQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YSVRPVUNIQ0xBU1NJTkZPX1RZ UEUgMQp8ICNkZWZpbmUgSEFWRV9YSUJBUlJJRVJSRUxFQVNFUE9JTlRFUklORk9fREVWSUNF SUQgMQp8ICNkZWZpbmUgSEFWRV9YSUdFU1RVUkVDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmlu ZSBIQVZFX1hTWU5DIDEKfCAjZGVmaW5lIEhBVkVfWFNZTkNUUklHR0VSRkVOQ0UgMQp8ICNk ZWZpbmUgSEFWRV9YREJFIDEKfCAjZGVmaW5lIEhBVkVfWENCX1NIQVBFIDEKfCAjZGVmaW5l IEhBVkVfWFNIQVBFIDEKfCAjZGVmaW5lIEhBVkVfWENPTVBPU0lURSAxCnwgI2RlZmluZSBI QVZFX0xJQlhNTDIgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TRUNDT01QX0ggMQp8ICNkZWZp bmUgSEFWRV9ERUNMX1NFQ0NPTVBfU0VUX01PREVfRklMVEVSIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9TRUNDT01QX0ZJTFRFUl9GTEFHX1RTWU5DIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhf RklMVEVSX0ggMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfU0VUX01PREVfRklMVEVS IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX0ZJTFRFUl9GTEFHX1RTWU5DIDEKfCAj ZGVmaW5lIFNJWkVPRl9MT05HIDgKfCAjZGVmaW5lIEhBVkVfQUNDRVBUNCAxCnwgI2RlZmlu ZSBIQVZFX0ZDSERJUiAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5l IEhBVkVfR0VUUlVTQUdFIDEKfCAjZGVmaW5lIEhBVkVfR0VUX0NVUlJFTlRfRElSX05BTUUg MQp8ICNkZWZpbmUgSEFWRV9MUkFORDQ4IDEKfCAjZGVmaW5lIEhBVkVfUkFORE9NIDEKfCAj ZGVmaW5lIEhBVkVfUklOVCAxCnwgI2RlZmluZSBIQVZFX1RSVU5DIDEKfCAjZGVmaW5lIEhB VkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFW RV9TRVRMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9ORVdMT0NBTEUgMQp8ICNkZWZpbmUgSEFW RV9HRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFW RV9TSFVURE9XTiAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmlu ZSBIQVZFX1NUUlNJR05BTCAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmlu ZSBIQVZFX1NFTkRUTyAxCnwgI2RlZmluZSBIQVZFX1JFQ1ZGUk9NIDEKfCAjZGVmaW5lIEhB VkVfR0VUU09DS05BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRJRkFERFJTIDEKfCAjZGVmaW5l IEhBVkVfRlJFRUlGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9HQUlfU1RSRVJST1IgMQp8ICNk ZWZpbmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFdFTlQgMQp8ICNkZWZpbmUg SEFWRV9FTkRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0dFVEdSRU5UIDEKfCAjZGVmaW5lIEhB VkVfRU5ER1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9SRU5BTUVBVDIgMQp8ICNkZWZpbmUgSEFW RV9DRk1BS0VSQVcgMQp8ICNkZWZpbmUgSEFWRV9DRlNFVFNQRUVEIDEKfCAjZGVmaW5lIEhB VkVfX19FWEVDVVRBQkxFX1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVfTE9HMiAxCnwgI2RlZmlu ZSBIQVZFX1BUSFJFQURfU0VUTkFNRV9OUCAxCnwgI2RlZmluZSBIQVZFX0FMSUdORURfQUxM T0MgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0FMSUdORURfQUxMT0MgMQp8ICNkZWZpbmUgSEFW RV9QT1NJWF9NQURWSVNFIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX0ZSQU1FX0FERFJF U1MgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fVU5XSU5EX0lOSVQgMQp8ICNkZWZpbmUg SEFWRV9GU0VFS08gMQp8ICNkZWZpbmUgSEFWRV9HUkFOVFBUIDEKfCAjZGVmaW5lIEhBVkVf R0VUUFQgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9PUEVOUFQgMQp8ICNkZWZpbmUgVEVSTUlO Rk8gMQp8ICNkZWZpbmUgVEVSTUlORk9fREVGSU5FU19CQyAxCnwgI2RlZmluZSBIQVZFX1RJ TUVSRkQgMQp8ICNkZWZpbmUgSEFWRV9WQUxHUklORF9WQUxHUklORF9IIDEKfCAjZGVmaW5l IEhBVkVfU1RSVUNUX1VOSVBBSVJfVU5JQ09ERSAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdf VkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9T TlBSSU5URiAxCnwgI2RlZmluZSBIQVZFX1NQQVdOX0ggMQp8ICNkZWZpbmUgSEFWRV9QT1NJ WF9TUEFXTiAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOX0ZJTEVfQUNUSU9OU19BRERD SERJUl9OUCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOQVRUUl9TRVRGTEFHUyAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfUE9TSVhfU1BBV05fU0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVf R0xJQiAxCnwgI2RlZmluZSBIQVZFX0xBTkdJTkZPX0NPREVTRVQgMQp8ICNkZWZpbmUgSEFW RV9MQU5HSU5GT19fTkxfUEFQRVJfV0lEVEggMQp8ICNkZWZpbmUgSEFWRV9NQlNUQVRFX1Qg MQp8ICNkZWZpbmUgQU1QRVJTQU5EX0ZVTExfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1BUWVMg MQp8ICNkZWZpbmUgSEFWRV9TT0NLRVRTIDEKfCAjZGVmaW5lIE5VTExfREVWSUNFICIvZGV2 L251bGwiCnwgI2RlZmluZSBTRVBDSEFSICc6Jwp8ICNkZWZpbmUgc3VicHJvY2Vzc2VzIDEK fCAjZGVmaW5lIFVTRVJfRlVMTF9OQU1FIHB3LT5wd19nZWNvcwp8ICNkZWZpbmUgRElSRUNU T1JZX1NFUCAnLycKfCAjZGVmaW5lIElTX0RFVklDRV9TRVAoX2NfKSAwCnwgI2RlZmluZSBJ U19ESVJFQ1RPUllfU0VQKF9jXykgKChfY18pID09IERJUkVDVE9SWV9TRVApCnwgI2RlZmlu ZSBJU19BTllfU0VQKF9jXykgKElTX0RJUkVDVE9SWV9TRVAgKF9jXykpCnwgI2RlZmluZSBI QVZFX1BST0NGUyAxCnwgI2RlZmluZSBERUZBVUxUX1NPVU5EX0RFVklDRSAiL2Rldi9kc3Ai CnwgI2RlZmluZSBJTlRFUlJVUFRfSU5QVVQgMQp8ICNkZWZpbmUgTkFSUk9XUFJPVE8gMQp8 ICNkZWZpbmUgVU5JWDk4X1BUWVMgMQp8ICNkZWZpbmUgUFRZX0lURVJBVElPTiBpbnQgaTsg Zm9yIChpID0gMDsgaSA8IDE7IGkrKykKfCAjZGVmaW5lIFBUWV9UVFlfTkFNRV9TUFJJTlRG IHsgY2hhciAqcHR5bmFtZSA9IDA7IHNpZ3NldF90IGJsb2NrZWQ7IHNpZ2VtcHR5c2V0ICgm YmxvY2tlZCk7IHNpZ2FkZHNldCAoJmJsb2NrZWQsIFNJR0NITEQpOyBwdGhyZWFkX3NpZ21h c2sgKFNJR19CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoZ3JhbnRwdCAoZmQpICE9IC0xICYm IHVubG9ja3B0IChmZCkgIT0gLTEpIHB0eW5hbWUgPSBwdHNuYW1lKGZkKTsgcHRocmVhZF9z aWdtYXNrIChTSUdfVU5CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoIXB0eW5hbWUpIHsgZW1h Y3NfY2xvc2UgKGZkKTsgcmV0dXJuIC0xOyB9IHNucHJpbnRmIChwdHlfbmFtZSwgUFRZX05B TUVfU0laRSwgIiVzIiwgcHR5bmFtZSk7IH0KfCAjZGVmaW5lIFBUWV9PUEVOIGRvIHsgZmQg PSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fQ0xPRVhFQyB8IE9fTk9DVFRZKTsgaWYgKGZk IDwgMCAmJiBlcnJubyA9PSBFSU5WQUwpIGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBP X05PQ1RUWSk7IH0gd2hpbGUgKGZhbHNlKQp8ICNkZWZpbmUgUFRZX05BTUVfU1BSSU5URiAv KiovCnwgI2RlZmluZSBTSUdOQUxTX1ZJQV9DSEFSQUNURVJTIDEKfCAvKiBlbmQgY29uZmRl ZnMuaC4gICovCnwgCnwgI2lmbmRlZiBfX2lhNjRfXwp8ICMgZXJyb3IgIm5vdCBpYTY0Igp8 ICNlbmRpZgp8IAp8IGludAp8IG1haW4gKHZvaWQpCnwgewp8IAp8ICAgOwp8ICAgcmV0dXJu IDA7CnwgfQpjb25maWd1cmU6MjQzNjQ6IGdjYyAtRSAgICAgY29uZnRlc3QuYwpjb25maWd1 cmU6MjQzNjQ6ICQ/ID0gMApjb25maWd1cmU6MjQzODU6IGNoZWNraW5nIGZvciBfc2V0am1w CmNvbmZpZ3VyZToyNDQwODogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv Z2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9i bGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAv aW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAt aXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlk IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGli LTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1sc3FsaXRlMyAt bFgxMSAgIC1sY2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhjYi1yZW5kZXIgPiY1IApjb25maWd1 cmU6MjQ0MDg6ICQ/ID0gMApjb25maWd1cmU6MjQ0MTc6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy ZToyNDQyNjogY2hlY2tpbmcgZm9yIHNpZ3NldGptcApjb25maWd1cmU6MjQ0NDY6IGdjYyAt byBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGli cnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVt IC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9s aWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNy L2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1p c3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0 LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXht YW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv ZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVt IC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5n MTYgICAgICAgY29uZnRlc3QuYyAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8g LWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJlOjI0NDQ2OiAkPyA9IDAKY29uZmln dXJlOjI0NDU1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjQ1ODg6IGNoZWNraW5nIFBPU0lY IHRlcm1pb3MKY29uZmlndXJlOjI0NjA5OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0 aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxp bnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9n bGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2Vi cCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ds aWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5j bHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgt Z251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1p c3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlw ZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxz cWxpdGUzIC1sWDExICAgLWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNiLXJlbmRlciA+JjUg CmNvbmZpZ3VyZToyNDYwOTogJD8gPSAwCmNvbmZpZ3VyZToyNDYxODogcmVzdWx0OiB5ZXMK Y29uZmlndXJlOjI0NjI2OiBjaGVja2luZyBzaXplIG9mIHNwZWVkX3QKY29uZmlndXJlOjI0 NjMyOiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIu MCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlz eXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9s aWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3Iv bGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIu MCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91 dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxzcWxpdGUzIC1sWDExICAgLWxjYWly byAtbGNhaXJvIC1seGNiIC1seGNiLXJlbmRlciA+JjUgCmNvbmZpZ3VyZToyNDYzMjogJD8g PSAwCmNvbmZpZ3VyZToyNDYzMjogLi9jb25mdGVzdApjb25maWd1cmU6MjQ2MzI6ICQ/ID0g MApjb25maWd1cmU6MjQ2NDg6IHJlc3VsdDogNApjb25maWd1cmU6MjQ2NjQ6IGNoZWNraW5n IGZvciB1c2FibGUgRklPTlJFQUQKY29uZmlndXJlOjI0Njk2OiBnY2MgLWMgIC1nMyAtTzIg LXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0 LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdu dS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUy IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv d2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAv aW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGlu dXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0x IC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVl dHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICBjb25mdGVzdC5jID4m NQpjb25maWd1cmU6MjQ2OTY6ICQ/ID0gMApjb25maWd1cmU6MjQ3MDY6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZToyNDcxNDogY2hlY2tpbmcgZm9yIHVzYWJsZSBTSUdJTwpjb25maWd1cmU6 MjQ3MzM6IGdjYyAtYyAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv bGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lz dGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAv dXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2 IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWly byAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2 XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9w aXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lz dGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGli cG5nMTYgICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyNDczMzogJD8gPSAwCmNvbmZp Z3VyZToyNDc0MTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI1MDAzOiBjaGVja2luZyBmb3Ig c3RydWN0IGFsaWdubWVudApjb25maWd1cmU6MjUwMjQ6IGdjYyAtYyAtZzMgLU8yICAgIGNv bmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyNTAyNDogJD8gPSAwCmNvbmZpZ3VyZToyNTAzMjog cmVzdWx0OiB5ZXMKY29uZmlndXJlOjI1MDQxOiBjaGVja2luZyBmb3IgdHlwZW9mIHN5bnRh eCBhbmQga2V5d29yZCBzcGVsbGluZwpjb25maWd1cmU6MjUwNzM6IGdjYyAtYyAtZzMgLU8y ICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyNTA3MzogJD8gPSAwCmNvbmZpZ3VyZToy NTA4MTogcmVzdWx0OiB0eXBlb2YKY29uZmlndXJlOjI1MDk1OiBjaGVja2luZyBmb3Igc3Rh dGVtZW50IGV4cHJlc3Npb25zCmNvbmZpZ3VyZToyNTExMjogZ2NjIC1jIC1nMyAtTzIgICAg Y29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjI1MTEyOiAkPyA9IDAKY29uZmlndXJlOjI1MTIw OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjUxOTA6IGNoZWNraW5nIHdoZXRoZXIgbWFsbG9j ICgwKSByZXR1cm5zIG5vbm51bGwKY29uZmlndXJlOjI1MjI1OiBnY2MgLW8gY29uZnRlc3Qg LWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCmNvbmZpZ3VyZToyNTIyNTogJD8gPSAw CmNvbmZpZ3VyZToyNTIyNTogLi9jb25mdGVzdApjb25maWd1cmU6MjUyMjU6ICQ/ID0gMApj b25maWd1cmU6MjUyMzc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNTMwMDogY2hlY2tpbmcg Zm9yIHN5cy9hY2wuaApjb25maWd1cmU6MjUzMDA6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0 ZXN0LmMgPiY1CmNvbmZpZ3VyZToyNTMwMDogJD8gPSAwCmNvbmZpZ3VyZToyNTMwMDogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjI1MzExOiBjaGVja2luZyBmb3IgbGlicmFyeSBjb250YWlu aW5nIGFjbF9nZXRfZmlsZQpjb25maWd1cmU6MjUzNDE6IGdjYyAtbyBjb25mdGVzdCAtZzMg LU8yICAgICAgY29uZnRlc3QuYyAgID4mNSAKL3Vzci9iaW4vbGQ6IC90bXAvY2N5b1JpMDcu bzogaW4gZnVuY3Rpb24gYG1haW4nOgovYXBwL2VtYWNzL2NvbmZ0ZXN0LmM6MzA4OiB1bmRl ZmluZWQgcmVmZXJlbmNlIHRvIGBhY2xfZ2V0X2ZpbGUnCmNvbGxlY3QyOiBlcnJvcjogbGQg cmV0dXJuZWQgMSBleGl0IHN0YXR1cwpjb25maWd1cmU6MjUzNDE6ICQ/ID0gMQpjb25maWd1 cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQ QUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1h Y3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMwLjAuNTAiCnwgI2RlZmluZSBQQUNL QUdFX1NUUklORyAiR05VIEVtYWNzIDMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JF UE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0 dHBzOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgSEFWRV9QRFVN UEVSIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9I IDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19I IDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVT X0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0gg MQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19V VFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBf SCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9MU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVm aW5lIEhBVkVfU0FOSVRJWkVSX0FTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9T QU5JVElaRVJfQ09NTU9OX0lOVEVSRkFDRV9ERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf U09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZF X1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVf RElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVf U1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVkZTX0ggMQp8ICNkZWZpbmUgSEFW RV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19DREVGU19IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX0lFRUU3NTRfSCAxCnwgI2RlZmluZSBI QVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5l IEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JBTkRPTV9IIDEKfCAjZGVm aW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBf REFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9I UFVYX0FMVF9YT1BFTl9TT0NLRVRfQVBJIDEKfCAjZGVmaW5lIF9ORVRCU0RfU09VUkNFIDEK fCAjZGVmaW5lIF9PUEVOQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9T RU1BTlRJQ1MgMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0FUVFJJQlNfRVhU X18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0JGUF9FWFRfXyAxCnwgI2Rl ZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfREZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1RE Q19XQU5UX0lFQ182MDU1OV9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1 NTlfRlVOQ1NfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X1RZUEVT X0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0xJQl9FWFQyX18gMQp8ICNkZWZpbmUg X19TVERDX1dBTlRfTUFUSF9TUEVDX0ZVTkNTX18gMQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VS Q0UgMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgR0NDX0xJTlQgMQp8 ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAjZGVmaW5lIEhBVkVfU1lTX1NP VU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2RlZmluZSBIQVZFX1NPVU5E IDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfQUREUl9OT19SQU5ET01JWkUgMQp8ICNk ZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZU0lORk9fVU5J VCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0gg MQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZFX0lGQUREUlNfSCAx CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUgSEFW RV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJF UV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJPQURB RERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERSIDEKfCAjZGVmaW5l IEhBVkVfU0JSSyAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhB VkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9E IDEKfCAjZGVmaW5lIEhBVkVfQ0FOT05JQ0FMSVpFX0ZJTEVfTkFNRSAxCnwgI2RlZmluZSBI QVZFX1JFQUxQQVRIIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9G Q0hNT0RBVCAxCnwgI2RlZmluZSBIQVZFX0xDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRM IDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRBVCAx CnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEK fCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFT SyAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfSVNCTEFOSyAx CnwgI2RlZmluZSBIQVZFX0lTV0NUWVBFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEK fCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEK fCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBTWVNURU1fTUFMTE9D IDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQUQgMQp8ICNk ZWZpbmUgVEhSRUFEU19FTkFCTEVEIDEKfCAjZGVmaW5lIEhBVkVfWEtCIDEKfCAjZGVmaW5l IEhBVkVfWEtCUkVGUkVTSEtFWUJPQVJETUFQUElORyAxCnwgI2RlZmluZSBIQVZFX1hLQkZS RUVOQU1FUyAxCnwgI2RlZmluZSBIQVZFX1hSTVNFVERBVEFCQVNFIDEKfCAjZGVmaW5lIEhB VkVfWFNDUkVFTlJFU09VUkNFU1RSSU5HIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTk5VTUJF Uk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhBVkVfWERJU1BMQVlDRUxMUyAxCnwgI2RlZmluZSBI QVZFX1hERVNUUk9ZU1VCV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gxMVI2IDEKfCAjZGVm aW5lIEhBVkVfWF9JMThOIDEKfCAjZGVmaW5lIEhBVkVfWElDQ0FMTEJBQ0tfQ0FMTEJBQ0sg MQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9YSU0gMQp8ICNkZWZpbmUgSEFWRV9SU1ZHIDEKfCAj ZGVmaW5lIEhBVkVfV0VCUCAxCnwgI2RlZmluZSBIQVZFX1NRTElURTMgMQp8ICNkZWZpbmUg SEFWRV9TUUxJVEUzX0xPQURfRVhURU5TSU9OIDEKfCAjZGVmaW5lIEhBVkVfR0VUQUREUklO Rk9fQSAxCnwgI2RlZmluZSBIQVZFX0dUSzMgMQp8ICNkZWZpbmUgR0RLX0RJU0FCTEVfREVQ UkVDQVRJT05fV0FSTklOR1MgMQp8ICNkZWZpbmUgR0xJQl9ESVNBQkxFX0RFUFJFQ0FUSU9O X1dBUk5JTkdTIDEKfCAjZGVmaW5lIFVTRV9HVEsgMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0Nf VFJJTSAxCnwgI2RlZmluZSBIQVZFX0RCVVMgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1dBVENI X0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19UWVBFX0lTX1ZBTElEIDEKfCAj ZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0RC VVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfSU5URVJG QUNFIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIgMQp8ICNkZWZpbmUg SEFWRV9HU0VUVElOR1MgMQp8ICNkZWZpbmUgSEFWRV9MSUJTRUxJTlVYIDEKfCAjZGVmaW5l IEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhBVkVfTElCU1lTVEVNRCAxCnwgI2RlZmluZSBI QVZFX0pTT04gMQp8ICNkZWZpbmUgSEFWRV9JTk9USUZZIDEKfCAjZGVmaW5lIFVTRV9GSUxF X05PVElGWSAxCnwgI2RlZmluZSBVU0VfVE9PTEtJVF9TQ1JPTExfQkFSUyAxCnwgI2RlZmlu ZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBVU0VfWElNIDEKfCAjZGVmaW5lIEhBVkVfWFJFTkRF UiAxCnwgI2RlZmluZSBVU0VfQ0FJUk9fWENCIDEKfCAjZGVmaW5lIFVTRV9DQUlSTyAxCnwg I2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAjZGVmaW5lIEhBVkVfRlRfRkFDRV9HRVRDSEFS VkFSSUFOVElOREVYIDEKfCAjZGVmaW5lIEhBVkVfTElCT1RGIDEKfCAjZGVmaW5lIEhBVkVf T1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTIDEKfCAjZGVmaW5lIEhBVkVfTTE3Tl9GTFQgMQp8 ICNkZWZpbmUgSEFWRV9IQVJGQlVaWiAxCnwgI2RlZmluZSBVU0VfWENCIDEKfCAjZGVmaW5l IEhBVkVfWFBNIDEKfCAjZGVmaW5lIEhBVkVfSlBFRyAxCnwgI2RlZmluZSBIQVZFX0xDTVMy IDEKfCAjZGVmaW5lIEhBVkVfWkxJQiAxCnwgI2RlZmluZSBEWU5BTUlDX0xJQl9TVUZGSVgg Ii5zbyIKfCAjZGVmaW5lIERZTkFNSUNfTElCX1NFQ09OREFSWV9TVUZGSVggIiIKfCAjZGVm aW5lIEhBVkVfRExBRERSIDEKfCAjZGVmaW5lIEhBVkVfTU9EVUxFUyAxCnwgI2RlZmluZSBN T0RVTEVTX1NVRkZJWCAiLnNvIgp8ICNkZWZpbmUgTkFUSVZFX0VMSVNQX1NVRkZJWCAiLmVs biIKfCAjZGVmaW5lIEhBVkVfUE5HIDEKfCAjZGVmaW5lIEhBVkVfVElGRiAxCnwgI2RlZmlu ZSBIQVZFX0dJRiAxCnwgI2RlZmluZSBIQVZFX0dQTSAxCnwgI2RlZmluZSBIQVZFX1hfU00g MQp8ICNkZWZpbmUgSEFWRV9YUkFORFIgMQp8ICNkZWZpbmUgSEFWRV9YSU5FUkFNQSAxCnwg I2RlZmluZSBIQVZFX1hGSVhFUyAxCnwgI2RlZmluZSBIQVZFX1hJTlBVVDIgMQp8ICNkZWZp bmUgSEFWRV9YSVNDUk9MTENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWElUT1VD SENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWElCQVJSSUVSUkVMRUFTRVBPSU5U RVJJTkZPX0RFVklDRUlEIDEKfCAjZGVmaW5lIEhBVkVfWElHRVNUVVJFQ0xBU1NJTkZPX1RZ UEUgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQyAxCnwgI2RlZmluZSBIQVZFX1hTWU5DVFJJR0dF UkZFTkNFIDEKfCAjZGVmaW5lIEhBVkVfWERCRSAxCnwgI2RlZmluZSBIQVZFX1hDQl9TSEFQ RSAxCnwgI2RlZmluZSBIQVZFX1hTSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hDT01QT1NJVEUg MQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwyIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU0VDQ09N UF9IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9GSUxURVJfRkxBR19UU1lOQyAxCnwgI2RlZmlu ZSBIQVZFX0xJTlVYX0ZJTFRFUl9IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX1NF VF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9GSUxURVJfRkxB R19UU1lOQyAxCnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA4CnwgI2RlZmluZSBIQVZFX0FDQ0VQ VDQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hESVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFN RSAxCnwgI2RlZmluZSBIQVZFX0dFVFJVU0FHRSAxCnwgI2RlZmluZSBIQVZFX0dFVF9DVVJS RU5UX0RJUl9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfTFJBTkQ0OCAxCnwgI2RlZmluZSBIQVZF X1JBTkRPTSAxCnwgI2RlZmluZSBIQVZFX1JJTlQgMQp8ICNkZWZpbmUgSEFWRV9UUlVOQyAx CnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEK fCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfTkVXTE9DQUxFIDEK fCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEK fCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01B U0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJTSUdOQUwgMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElN RVIgMQp8ICNkZWZpbmUgSEFWRV9TRU5EVE8gMQp8ICNkZWZpbmUgSEFWRV9SRUNWRlJPTSAx CnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tOQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUSUZBRERS UyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfR0FJX1NU UkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5U IDEKfCAjZGVmaW5lIEhBVkVfRU5EUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUkVOVCAx CnwgI2RlZmluZSBIQVZFX0VOREdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfUkVOQU1FQVQyIDEK fCAjZGVmaW5lIEhBVkVfQ0ZNQUtFUkFXIDEKfCAjZGVmaW5lIEhBVkVfQ0ZTRVRTUEVFRCAx CnwgI2RlZmluZSBIQVZFX19fRVhFQ1VUQUJMRV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0xP RzIgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NFVE5BTUVfTlAgMQp8ICNkZWZpbmUgSEFW RV9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTElHTkVEX0FMTE9DIDEK fCAjZGVmaW5lIEhBVkVfUE9TSVhfTUFEVklTRSAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJ Tl9GUkFNRV9BRERSRVNTIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX1VOV0lORF9JTklU IDEKfCAjZGVmaW5lIEhBVkVfRlNFRUtPIDEKfCAjZGVmaW5lIEhBVkVfR1JBTlRQVCAxCnwg I2RlZmluZSBIQVZFX0dFVFBUIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfT1BFTlBUIDEKfCAj ZGVmaW5lIFRFUk1JTkZPIDEKfCAjZGVmaW5lIFRFUk1JTkZPX0RFRklORVNfQkMgMQp8ICNk ZWZpbmUgSEFWRV9USU1FUkZEIDEKfCAjZGVmaW5lIEhBVkVfVkFMR1JJTkRfVkFMR1JJTkRf SCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9VTklQQUlSX1VOSUNPREUgMQp8ICNkZWZpbmUg SEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19GT1JLIDEKfCAj ZGVmaW5lIEhBVkVfU05QUklOVEYgMQp8ICNkZWZpbmUgSEFWRV9TUEFXTl9IIDEKfCAjZGVm aW5lIEhBVkVfUE9TSVhfU1BBV04gMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTl9GSUxF X0FDVElPTlNfQUREQ0hESVJfTlAgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTkFUVFJf U0VURkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BPU0lYX1NQQVdOX1NFVFNJRCAxCnwg I2RlZmluZSBIQVZFX0dMSUIgMQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5GT19DT0RFU0VUIDEK fCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fX05MX1BBUEVSX1dJRFRIIDEKfCAjZGVmaW5lIEhB VkVfTUJTVEFURV9UIDEKfCAjZGVmaW5lIEFNUEVSU0FORF9GVUxMX05BTUUgMQp8ICNkZWZp bmUgSEFWRV9QVFlTIDEKfCAjZGVmaW5lIEhBVkVfU09DS0VUUyAxCnwgI2RlZmluZSBOVUxM X0RFVklDRSAiL2Rldi9udWxsIgp8ICNkZWZpbmUgU0VQQ0hBUiAnOicKfCAjZGVmaW5lIHN1 YnByb2Nlc3NlcyAxCnwgI2RlZmluZSBVU0VSX0ZVTExfTkFNRSBwdy0+cHdfZ2Vjb3MKfCAj ZGVmaW5lIERJUkVDVE9SWV9TRVAgJy8nCnwgI2RlZmluZSBJU19ERVZJQ0VfU0VQKF9jXykg MAp8ICNkZWZpbmUgSVNfRElSRUNUT1JZX1NFUChfY18pICgoX2NfKSA9PSBESVJFQ1RPUllf U0VQKQp8ICNkZWZpbmUgSVNfQU5ZX1NFUChfY18pIChJU19ESVJFQ1RPUllfU0VQIChfY18p KQp8ICNkZWZpbmUgSEFWRV9QUk9DRlMgMQp8ICNkZWZpbmUgREVGQVVMVF9TT1VORF9ERVZJ Q0UgIi9kZXYvZHNwIgp8ICNkZWZpbmUgSU5URVJSVVBUX0lOUFVUIDEKfCAjZGVmaW5lIE5B UlJPV1BST1RPIDEKfCAjZGVmaW5lIFVOSVg5OF9QVFlTIDEKfCAjZGVmaW5lIFBUWV9JVEVS QVRJT04gaW50IGk7IGZvciAoaSA9IDA7IGkgPCAxOyBpKyspCnwgI2RlZmluZSBQVFlfVFRZ X05BTUVfU1BSSU5URiB7IGNoYXIgKnB0eW5hbWUgPSAwOyBzaWdzZXRfdCBibG9ja2VkOyBz aWdlbXB0eXNldCAoJmJsb2NrZWQpOyBzaWdhZGRzZXQgKCZibG9ja2VkLCBTSUdDSExEKTsg cHRocmVhZF9zaWdtYXNrIChTSUdfQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKGdyYW50cHQg KGZkKSAhPSAtMSAmJiB1bmxvY2twdCAoZmQpICE9IC0xKSBwdHluYW1lID0gcHRzbmFtZShm ZCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX1VOQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKCFw dHluYW1lKSB7IGVtYWNzX2Nsb3NlIChmZCk7IHJldHVybiAtMTsgfSBzbnByaW50ZiAocHR5 X25hbWUsIFBUWV9OQU1FX1NJWkUsICIlcyIsIHB0eW5hbWUpOyB9CnwgI2RlZmluZSBQVFlf T1BFTiBkbyB7IGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX0NMT0VYRUMgfCBPX05P Q1RUWSk7IGlmIChmZCA8IDAgJiYgZXJybm8gPT0gRUlOVkFMKSBmZCA9IHBvc2l4X29wZW5w dCAoT19SRFdSIHwgT19OT0NUVFkpOyB9IHdoaWxlIChmYWxzZSkKfCAjZGVmaW5lIFBUWV9O QU1FX1NQUklOVEYgLyoqLwp8ICNkZWZpbmUgU0lHTkFMU19WSUFfQ0hBUkFDVEVSUyAxCnwg I2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEK fCAjZGVmaW5lIEhBVkVfX1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVEpNUCAxCnwg I2RlZmluZSBIQVZFX1NUQUNLX09WRVJGTE9XX0hBTkRMSU5HIDEKfCAjZGVmaW5lIFVTRyAv KiovCnwgI2RlZmluZSBHTlVfTElOVVggLyoqLwp8ICNkZWZpbmUgU0laRU9GX1NQRUVEX1Qg NAp8ICNkZWZpbmUgVVNBQkxFX0ZJT05SRUFEIDEKfCAjZGVmaW5lIFVTQUJMRV9TSUdJTyAx CnwgI2RlZmluZSBDT1BZUklHSFQgIkNvcHlyaWdodCAoQykgMjAyMyBGcmVlIFNvZnR3YXJl IEZvdW5kYXRpb24sIEluYy4iCnwgI2RlZmluZSBURVJNX0hFQURFUiAiZ3RrdXRpbC5oIgp8 ICNkZWZpbmUgRU1BQ1NfQ09ORklHVVJBVElPTiAieDg2XzY0LXBjLWxpbnV4LWdudSIKfCAj ZGVmaW5lIEVNQUNTX0NPTkZJR19PUFRJT05TICIiCnwgI2RlZmluZSBIQVZFX1hfV0lORE9X UyAxCnwgI2RlZmluZSBIQVZFX1gxMSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9BVFRSSUJV VEVfQUxJR05FRCAxCnwgI2RlZmluZSBIQVZFX1RZUEVPRiAxCnwgI2RlZmluZSBIQVZFX1NU QVRFTUVOVF9FWFBSRVNTSU9OUyAxCnwgI2RlZmluZSBNQUxMT0NfMF9JU19OT05OVUxMIDEK fCAjZGVmaW5lIEhBVkVfU1lTX0FDTF9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwg CnwgLyogT3ZlcnJpZGUgYW55IEdDQyBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4g ZXJyb3IuCnwgICAgVXNlIGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2ggdGhlIHJldHVy biB0eXBlIG9mIGEgR0NDCnwgICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMgYXJndW1lbnQgcHJv dG90eXBlIHdvdWxkIHN0aWxsIGFwcGx5LiAgKi8KfCBjaGFyIGFjbF9nZXRfZmlsZSAoKTsK fCBpbnQKfCBtYWluICh2b2lkKQp8IHsKfCByZXR1cm4gYWNsX2dldF9maWxlICgpOwp8ICAg Owp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MjUzNDE6IGdjYyAtbyBjb25mdGVzdCAt ZzMgLU8yICAgICAgY29uZnRlc3QuYyAtbGFjbCAgICA+JjUgCmNvbmZpZ3VyZToyNTM0MTog JD8gPSAwCmNvbmZpZ3VyZToyNTM2MTogcmVzdWx0OiAtbGFjbApjb25maWd1cmU6MjUzNzA6 IGNoZWNraW5nIGZvciBhY2xfZ2V0X2ZpbGUKY29uZmlndXJlOjI1MzcwOiBnY2MgLW8gY29u ZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgLWxhY2wgICA+JjUgCmNvbmZpZ3VyZToy NTM3MDogJD8gPSAwCmNvbmZpZ3VyZToyNTM3MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI1 Mzc2OiBjaGVja2luZyBmb3IgYWNsX2dldF9mZApjb25maWd1cmU6MjUzNzY6IGdjYyAtbyBj b25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAtbGFjbCAgID4mNSAKY29uZmlndXJl OjI1Mzc2OiAkPyA9IDAKY29uZmlndXJlOjI1Mzc2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6 MjUzODI6IGNoZWNraW5nIGZvciBhY2xfc2V0X2ZpbGUKY29uZmlndXJlOjI1MzgyOiBnY2Mg LW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgLWxhY2wgICA+JjUgCmNvbmZp Z3VyZToyNTM4MjogJD8gPSAwCmNvbmZpZ3VyZToyNTM4MjogcmVzdWx0OiB5ZXMKY29uZmln dXJlOjI1Mzg4OiBjaGVja2luZyBmb3IgYWNsX3NldF9mZApjb25maWd1cmU6MjUzODg6IGdj YyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAtbGFjbCAgID4mNSAKY29u ZmlndXJlOjI1Mzg4OiAkPyA9IDAKY29uZmlndXJlOjI1Mzg4OiByZXN1bHQ6IHllcwpjb25m aWd1cmU6MjUzOTQ6IGNoZWNraW5nIGZvciBhY2xfZnJlZQpjb25maWd1cmU6MjUzOTQ6IGdj YyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAtbGFjbCAgID4mNSAKY29u ZmlndXJlOjI1Mzk0OiAkPyA9IDAKY29uZmlndXJlOjI1Mzk0OiByZXN1bHQ6IHllcwpjb25m aWd1cmU6MjU0MDA6IGNoZWNraW5nIGZvciBhY2xfZnJvbV9tb2RlCmNvbmZpZ3VyZToyNTQw MDogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jIC1sYWNsICAgPiY1 IApjb25maWd1cmU6MjU0MDA6ICQ/ID0gMApjb25maWd1cmU6MjU0MDA6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZToyNTQwNjogY2hlY2tpbmcgZm9yIGFjbF9mcm9tX3RleHQKY29uZmlndXJl OjI1NDA2OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgLWxhY2wg ICA+JjUgCmNvbmZpZ3VyZToyNTQwNjogJD8gPSAwCmNvbmZpZ3VyZToyNTQwNjogcmVzdWx0 OiB5ZXMKY29uZmlndXJlOjI1NDEyOiBjaGVja2luZyBmb3IgYWNsX2RlbGV0ZV9kZWZfZmls ZQpjb25maWd1cmU6MjU0MTI6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRl c3QuYyAtbGFjbCAgID4mNSAKY29uZmlndXJlOjI1NDEyOiAkPyA9IDAKY29uZmlndXJlOjI1 NDEyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjU0MTg6IGNoZWNraW5nIGZvciBhY2xfZXh0 ZW5kZWRfZmlsZQpjb25maWd1cmU6MjU0MTg6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAg ICAgY29uZnRlc3QuYyAtbGFjbCAgID4mNSAKY29uZmlndXJlOjI1NDE4OiAkPyA9IDAKY29u ZmlndXJlOjI1NDE4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjU0MjQ6IGNoZWNraW5nIGZv ciBhY2xfZGVsZXRlX2ZkX25wCmNvbmZpZ3VyZToyNTQyNDogZ2NjIC1vIGNvbmZ0ZXN0IC1n MyAtTzIgICAgICBjb25mdGVzdC5jIC1sYWNsICAgPiY1IAovdXNyL2Jpbi9sZDogL3RtcC9j YzZKYnlObi5vOiBpbiBmdW5jdGlvbiBgbWFpbic6Ci9hcHAvZW1hY3MvY29uZnRlc3QuYzoz MzY6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYGFjbF9kZWxldGVfZmRfbnAnCmNvbGxlY3Qy OiBlcnJvcjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpjb25maWd1cmU6MjU0MjQ6ICQ/ ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICov CnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0Vf VEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMwLjAuNTAiCnwg I2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDMwLjAuNTAiCnwgI2RlZmluZSBQ QUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFD S0FHRV9VUkwgImh0dHBzOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZp bmUgSEFWRV9QRFVNUEVSIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fSCAxCnwgI2RlZmluZSBI QVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFW RV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFW RV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBI QVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GU19IIDEKfCAjZGVmaW5lIEhB VkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5l IEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmlu ZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9MU0FOX0lOVEVSRkFD RV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0FTQU5fSU5URVJGQUNFX0ggMQp8ICNk ZWZpbmUgSEFWRV9TQU5JVElaRVJfQ09NTU9OX0lOVEVSRkFDRV9ERUZTX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwg I2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAj ZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAj ZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVkZTX0ggMQp8 ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19DREVGU19IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX0lFRUU3NTRfSCAx CnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9I IDEKfCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JBTkRP TV9IIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAx CnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEK fCAjZGVmaW5lIF9IUFVYX0FMVF9YT1BFTl9TT0NLRVRfQVBJIDEKfCAjZGVmaW5lIF9ORVRC U0RfU09VUkNFIDEKfCAjZGVmaW5lIF9PUEVOQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfUE9T SVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5 X0FUVFJJQlNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0JGUF9F WFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfREZQX0VYVF9fIDEKfCAj ZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENf V0FOVF9JRUNfNjA1NTlfRlVOQ1NfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVD XzYwNTU5X1RZUEVTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0xJQl9FWFQyX18g MQp8ICNkZWZpbmUgX19TVERDX1dBTlRfTUFUSF9TUEVDX0ZVTkNTX18gMQp8ICNkZWZpbmUg X1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUg R0NDX0xJTlQgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAjZGVmaW5l IEhBVkVfU1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2RlZmlu ZSBIQVZFX1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfQUREUl9OT19SQU5E T01JWkUgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVmaW5lIExJTlVY X1NZU0lORk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAxCnwgI2RlZmluZSBIQVZF X1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZF X0lGQUREUlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8 ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwgI2RlZmluZSBIQVZF X1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJF UV9JRlJfQlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERS IDEKfCAjZGVmaW5lIEhBVkVfU0JSSyAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEK fCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5l IEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfQ0FOT05JQ0FMSVpFX0ZJTEVfTkFNRSAx CnwgI2RlZmluZSBIQVZFX1JFQUxQQVRIIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNk ZWZpbmUgSEFWRV9GQ0hNT0RBVCAxCnwgI2RlZmluZSBIQVZFX0xDSE1PRCAxCnwgI2RlZmlu ZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhB VkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VU VElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1BU SFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhB VkVfSVNCTEFOSyAxCnwgI2RlZmluZSBIQVZFX0lTV0NUWVBFIDEKfCAjZGVmaW5lIEhBVkVf U1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0xP Q0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBT WVNURU1fTUFMTE9DIDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2RlZmluZSBIQVZFX1BU SFJFQUQgMQp8ICNkZWZpbmUgVEhSRUFEU19FTkFCTEVEIDEKfCAjZGVmaW5lIEhBVkVfWEtC IDEKfCAjZGVmaW5lIEhBVkVfWEtCUkVGUkVTSEtFWUJPQVJETUFQUElORyAxCnwgI2RlZmlu ZSBIQVZFX1hLQkZSRUVOQU1FUyAxCnwgI2RlZmluZSBIQVZFX1hSTVNFVERBVEFCQVNFIDEK fCAjZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RSSU5HIDEKfCAjZGVmaW5lIEhBVkVf WFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhBVkVfWERJU1BMQVlDRUxMUyAx CnwgI2RlZmluZSBIQVZFX1hERVNUUk9ZU1VCV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gx MVI2IDEKfCAjZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVmaW5lIEhBVkVfWElDQ0FMTEJB Q0tfQ0FMTEJBQ0sgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9YSU0gMQp8ICNkZWZpbmUgSEFW RV9SU1ZHIDEKfCAjZGVmaW5lIEhBVkVfV0VCUCAxCnwgI2RlZmluZSBIQVZFX1NRTElURTMg MQp8ICNkZWZpbmUgSEFWRV9TUUxJVEUzX0xPQURfRVhURU5TSU9OIDEKfCAjZGVmaW5lIEhB VkVfR0VUQUREUklORk9fQSAxCnwgI2RlZmluZSBIQVZFX0dUSzMgMQp8ICNkZWZpbmUgR0RL X0RJU0FCTEVfREVQUkVDQVRJT05fV0FSTklOR1MgMQp8ICNkZWZpbmUgR0xJQl9ESVNBQkxF X0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIFVTRV9HVEsgMQp8ICNkZWZpbmUg SEFWRV9NQUxMT0NfVFJJTSAxCnwgI2RlZmluZSBIQVZFX0RCVVMgMQp8ICNkZWZpbmUgSEFW RV9EQlVTX1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19UWVBFX0lT X1ZBTElEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAxCnwgI2Rl ZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFM SURBVEVfSU5URVJGQUNFIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIg MQp8ICNkZWZpbmUgSEFWRV9HU0VUVElOR1MgMQp8ICNkZWZpbmUgSEFWRV9MSUJTRUxJTlVY IDEKfCAjZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhBVkVfTElCU1lTVEVNRCAx CnwgI2RlZmluZSBIQVZFX0pTT04gMQp8ICNkZWZpbmUgSEFWRV9JTk9USUZZIDEKfCAjZGVm aW5lIFVTRV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBVU0VfVE9PTEtJVF9TQ1JPTExfQkFS UyAxCnwgI2RlZmluZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBVU0VfWElNIDEKfCAjZGVmaW5l IEhBVkVfWFJFTkRFUiAxCnwgI2RlZmluZSBVU0VfQ0FJUk9fWENCIDEKfCAjZGVmaW5lIFVT RV9DQUlSTyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAjZGVmaW5lIEhBVkVfRlRf RkFDRV9HRVRDSEFSVkFSSUFOVElOREVYIDEKfCAjZGVmaW5lIEhBVkVfTElCT1RGIDEKfCAj ZGVmaW5lIEhBVkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTIDEKfCAjZGVmaW5lIEhBVkVf TTE3Tl9GTFQgMQp8ICNkZWZpbmUgSEFWRV9IQVJGQlVaWiAxCnwgI2RlZmluZSBVU0VfWENC IDEKfCAjZGVmaW5lIEhBVkVfWFBNIDEKfCAjZGVmaW5lIEhBVkVfSlBFRyAxCnwgI2RlZmlu ZSBIQVZFX0xDTVMyIDEKfCAjZGVmaW5lIEhBVkVfWkxJQiAxCnwgI2RlZmluZSBEWU5BTUlD X0xJQl9TVUZGSVggIi5zbyIKfCAjZGVmaW5lIERZTkFNSUNfTElCX1NFQ09OREFSWV9TVUZG SVggIiIKfCAjZGVmaW5lIEhBVkVfRExBRERSIDEKfCAjZGVmaW5lIEhBVkVfTU9EVUxFUyAx CnwgI2RlZmluZSBNT0RVTEVTX1NVRkZJWCAiLnNvIgp8ICNkZWZpbmUgTkFUSVZFX0VMSVNQ X1NVRkZJWCAiLmVsbiIKfCAjZGVmaW5lIEhBVkVfUE5HIDEKfCAjZGVmaW5lIEhBVkVfVElG RiAxCnwgI2RlZmluZSBIQVZFX0dJRiAxCnwgI2RlZmluZSBIQVZFX0dQTSAxCnwgI2RlZmlu ZSBIQVZFX1hfU00gMQp8ICNkZWZpbmUgSEFWRV9YUkFORFIgMQp8ICNkZWZpbmUgSEFWRV9Y SU5FUkFNQSAxCnwgI2RlZmluZSBIQVZFX1hGSVhFUyAxCnwgI2RlZmluZSBIQVZFX1hJTlBV VDIgMQp8ICNkZWZpbmUgSEFWRV9YSVNDUk9MTENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5l IEhBVkVfWElUT1VDSENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWElCQVJSSUVS UkVMRUFTRVBPSU5URVJJTkZPX0RFVklDRUlEIDEKfCAjZGVmaW5lIEhBVkVfWElHRVNUVVJF Q0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQyAxCnwgI2RlZmluZSBIQVZF X1hTWU5DVFJJR0dFUkZFTkNFIDEKfCAjZGVmaW5lIEhBVkVfWERCRSAxCnwgI2RlZmluZSBI QVZFX1hDQl9TSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hTSEFQRSAxCnwgI2RlZmluZSBIQVZF X1hDT01QT1NJVEUgMQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwyIDEKfCAjZGVmaW5lIEhBVkVf TElOVVhfU0VDQ09NUF9IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX1NFVF9NT0RF X0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9GSUxURVJfRkxBR19UU1lO QyAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZJTFRFUl9IIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9TRUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09N UF9GSUxURVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA4CnwgI2RlZmlu ZSBIQVZFX0FDQ0VQVDQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hESVIgMQp8ICNkZWZpbmUgSEFW RV9HRVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJVU0FHRSAxCnwgI2RlZmluZSBI QVZFX0dFVF9DVVJSRU5UX0RJUl9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfTFJBTkQ0OCAxCnwg I2RlZmluZSBIQVZFX1JBTkRPTSAxCnwgI2RlZmluZSBIQVZFX1JJTlQgMQp8ICNkZWZpbmUg SEFWRV9UUlVOQyAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX0dF VFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVf TkVXTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVf U0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9Q VEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJTSUdOQUwgMQp8ICNkZWZpbmUg SEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9TRU5EVE8gMQp8ICNkZWZpbmUgSEFW RV9SRUNWRlJPTSAxCnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tOQU1FIDEKfCAjZGVmaW5lIEhB VkVfR0VUSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVJRkFERFJTIDEKfCAjZGVmaW5l IEhBVkVfR0FJX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAxCnwgI2RlZmluZSBI QVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EUFdFTlQgMQp8ICNkZWZpbmUgSEFW RV9HRVRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0VOREdSRU5UIDEKfCAjZGVmaW5lIEhBVkVf UkVOQU1FQVQyIDEKfCAjZGVmaW5lIEhBVkVfQ0ZNQUtFUkFXIDEKfCAjZGVmaW5lIEhBVkVf Q0ZTRVRTUEVFRCAxCnwgI2RlZmluZSBIQVZFX19fRVhFQ1VUQUJMRV9TVEFSVCAxCnwgI2Rl ZmluZSBIQVZFX0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NFVE5BTUVfTlAgMQp8 ICNkZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTElH TkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfTUFEVklTRSAxCnwgI2RlZmluZSBI QVZFX19fQlVJTFRJTl9GUkFNRV9BRERSRVNTIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElO X1VOV0lORF9JTklUIDEKfCAjZGVmaW5lIEhBVkVfRlNFRUtPIDEKfCAjZGVmaW5lIEhBVkVf R1JBTlRQVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBUIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhf T1BFTlBUIDEKfCAjZGVmaW5lIFRFUk1JTkZPIDEKfCAjZGVmaW5lIFRFUk1JTkZPX0RFRklO RVNfQkMgMQp8ICNkZWZpbmUgSEFWRV9USU1FUkZEIDEKfCAjZGVmaW5lIEhBVkVfVkFMR1JJ TkRfVkFMR1JJTkRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9VTklQQUlSX1VOSUNPREUg MQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lO R19GT1JLIDEKfCAjZGVmaW5lIEhBVkVfU05QUklOVEYgMQp8ICNkZWZpbmUgSEFWRV9TUEFX Tl9IIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV04gMQp8ICNkZWZpbmUgSEFWRV9QT1NJ WF9TUEFXTl9GSUxFX0FDVElPTlNfQUREQ0hESVJfTlAgMQp8ICNkZWZpbmUgSEFWRV9QT1NJ WF9TUEFXTkFUVFJfU0VURkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BPU0lYX1NQQVdO X1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX0dMSUIgMQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5G T19DT0RFU0VUIDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fX05MX1BBUEVSX1dJRFRIIDEK fCAjZGVmaW5lIEhBVkVfTUJTVEFURV9UIDEKfCAjZGVmaW5lIEFNUEVSU0FORF9GVUxMX05B TUUgMQp8ICNkZWZpbmUgSEFWRV9QVFlTIDEKfCAjZGVmaW5lIEhBVkVfU09DS0VUUyAxCnwg I2RlZmluZSBOVUxMX0RFVklDRSAiL2Rldi9udWxsIgp8ICNkZWZpbmUgU0VQQ0hBUiAnOicK fCAjZGVmaW5lIHN1YnByb2Nlc3NlcyAxCnwgI2RlZmluZSBVU0VSX0ZVTExfTkFNRSBwdy0+ cHdfZ2Vjb3MKfCAjZGVmaW5lIERJUkVDVE9SWV9TRVAgJy8nCnwgI2RlZmluZSBJU19ERVZJ Q0VfU0VQKF9jXykgMAp8ICNkZWZpbmUgSVNfRElSRUNUT1JZX1NFUChfY18pICgoX2NfKSA9 PSBESVJFQ1RPUllfU0VQKQp8ICNkZWZpbmUgSVNfQU5ZX1NFUChfY18pIChJU19ESVJFQ1RP UllfU0VQIChfY18pKQp8ICNkZWZpbmUgSEFWRV9QUk9DRlMgMQp8ICNkZWZpbmUgREVGQVVM VF9TT1VORF9ERVZJQ0UgIi9kZXYvZHNwIgp8ICNkZWZpbmUgSU5URVJSVVBUX0lOUFVUIDEK fCAjZGVmaW5lIE5BUlJPV1BST1RPIDEKfCAjZGVmaW5lIFVOSVg5OF9QVFlTIDEKfCAjZGVm aW5lIFBUWV9JVEVSQVRJT04gaW50IGk7IGZvciAoaSA9IDA7IGkgPCAxOyBpKyspCnwgI2Rl ZmluZSBQVFlfVFRZX05BTUVfU1BSSU5URiB7IGNoYXIgKnB0eW5hbWUgPSAwOyBzaWdzZXRf dCBibG9ja2VkOyBzaWdlbXB0eXNldCAoJmJsb2NrZWQpOyBzaWdhZGRzZXQgKCZibG9ja2Vk LCBTSUdDSExEKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfQkxPQ0ssICZibG9ja2VkLCAwKTsg aWYgKGdyYW50cHQgKGZkKSAhPSAtMSAmJiB1bmxvY2twdCAoZmQpICE9IC0xKSBwdHluYW1l ID0gcHRzbmFtZShmZCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX1VOQkxPQ0ssICZibG9ja2Vk LCAwKTsgaWYgKCFwdHluYW1lKSB7IGVtYWNzX2Nsb3NlIChmZCk7IHJldHVybiAtMTsgfSBz bnByaW50ZiAocHR5X25hbWUsIFBUWV9OQU1FX1NJWkUsICIlcyIsIHB0eW5hbWUpOyB9Cnwg I2RlZmluZSBQVFlfT1BFTiBkbyB7IGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX0NM T0VYRUMgfCBPX05PQ1RUWSk7IGlmIChmZCA8IDAgJiYgZXJybm8gPT0gRUlOVkFMKSBmZCA9 IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19OT0NUVFkpOyB9IHdoaWxlIChmYWxzZSkKfCAj ZGVmaW5lIFBUWV9OQU1FX1NQUklOVEYgLyoqLwp8ICNkZWZpbmUgU0lHTkFMU19WSUFfQ0hB UkFDVEVSUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgR0NfU0VU Sk1QX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfX1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NJ R1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NUQUNLX09WRVJGTE9XX0hBTkRMSU5HIDEKfCAj ZGVmaW5lIFVTRyAvKiovCnwgI2RlZmluZSBHTlVfTElOVVggLyoqLwp8ICNkZWZpbmUgU0la RU9GX1NQRUVEX1QgNAp8ICNkZWZpbmUgVVNBQkxFX0ZJT05SRUFEIDEKfCAjZGVmaW5lIFVT QUJMRV9TSUdJTyAxCnwgI2RlZmluZSBDT1BZUklHSFQgIkNvcHlyaWdodCAoQykgMjAyMyBG cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4iCnwgI2RlZmluZSBURVJNX0hFQURFUiAi Z3RrdXRpbC5oIgp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHVVJBVElPTiAieDg2XzY0LXBjLWxp bnV4LWdudSIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR19PUFRJT05TICIiCnwgI2RlZmluZSBI QVZFX1hfV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gxMSAxCnwgI2RlZmluZSBIQVZFX1NU UlVDVF9BVFRSSUJVVEVfQUxJR05FRCAxCnwgI2RlZmluZSBIQVZFX1RZUEVPRiAxCnwgI2Rl ZmluZSBIQVZFX1NUQVRFTUVOVF9FWFBSRVNTSU9OUyAxCnwgI2RlZmluZSBNQUxMT0NfMF9J U19OT05OVUxMIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0FDTF9IIDEKfCAjZGVmaW5lIEhBVkVf QUNMX0dFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GRCAxCnwgI2RlZmluZSBI QVZFX0FDTF9TRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRkQgMQp8ICNkZWZp bmUgSEFWRV9BQ0xfRlJFRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX01PREUgMQp8ICNk ZWZpbmUgSEFWRV9BQ0xfRlJPTV9URVhUIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0RFTEVURV9E RUZfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9FWFRFTkRFRF9GSUxFIDEKfCAvKiBlbmQg Y29uZmRlZnMuaC4gICovCnwgLyogRGVmaW5lIGFjbF9kZWxldGVfZmRfbnAgdG8gYW4gaW5u b2N1b3VzIHZhcmlhbnQsIGluIGNhc2UgPGxpbWl0cy5oPiBkZWNsYXJlcyBhY2xfZGVsZXRl X2ZkX25wLgp8ICAgIEZvciBleGFtcGxlLCBIUC1VWCAxMWkgPGxpbWl0cy5oPiBkZWNsYXJl cyBnZXR0aW1lb2ZkYXkuICAqLwp8ICNkZWZpbmUgYWNsX2RlbGV0ZV9mZF9ucCBpbm5vY3Vv dXNfYWNsX2RlbGV0ZV9mZF9ucAp8IAp8IC8qIFN5c3RlbSBoZWFkZXIgdG8gZGVmaW5lIF9f c3R1YiBtYWNyb3MgYW5kIGhvcGVmdWxseSBmZXcgcHJvdG90eXBlcywKfCAgICB3aGljaCBj YW4gY29uZmxpY3Qgd2l0aCBjaGFyIGFjbF9kZWxldGVfZmRfbnAgKCk7IGJlbG93LiAgKi8K fCAKfCAjaW5jbHVkZSA8bGltaXRzLmg+CnwgI3VuZGVmIGFjbF9kZWxldGVfZmRfbnAKfCAK fCAvKiBPdmVycmlkZSBhbnkgR0NDIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBl cnJvci4KfCAgICBVc2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJu IHR5cGUgb2YgYSBHQ0MKfCAgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90 b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLwp8ICNpZmRlZiBfX2NwbHVzcGx1cwp8IGV4 dGVybiAiQyIKfCAjZW5kaWYKfCBjaGFyIGFjbF9kZWxldGVfZmRfbnAgKCk7CnwgLyogVGhl IEdOVSBDIGxpYnJhcnkgZGVmaW5lcyB0aGlzIGZvciBmdW5jdGlvbnMgd2hpY2ggaXQgaW1w bGVtZW50cwp8ICAgICB0byBhbHdheXMgZmFpbCB3aXRoIEVOT1NZUy4gIFNvbWUgZnVuY3Rp b25zIGFyZSBhY3R1YWxseSBuYW1lZAp8ICAgICBzb21ldGhpbmcgc3RhcnRpbmcgd2l0aCBf XyBhbmQgdGhlIG5vcm1hbCBuYW1lIGlzIGFuIGFsaWFzLiAgKi8KfCAjaWYgZGVmaW5lZCBf X3N0dWJfYWNsX2RlbGV0ZV9mZF9ucCB8fCBkZWZpbmVkIF9fc3R1Yl9fX2FjbF9kZWxldGVf ZmRfbnAKfCBjaG9rZSBtZQp8ICNlbmRpZgp8IAp8IGludAp8IG1haW4gKHZvaWQpCnwgewp8 IHJldHVybiBhY2xfZGVsZXRlX2ZkX25wICgpOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpj b25maWd1cmU6MjU0MjQ6IHJlc3VsdDogbm8KY29uZmlndXJlOjI1NDMwOiBjaGVja2luZyBm b3IgYWNsX2RlbGV0ZV9maWxlX25wCmNvbmZpZ3VyZToyNTQzMDogZ2NjIC1vIGNvbmZ0ZXN0 IC1nMyAtTzIgICAgICBjb25mdGVzdC5jIC1sYWNsICAgPiY1IAovdXNyL2Jpbi9sZDogL3Rt cC9jYzdXeGppei5vOiBpbiBmdW5jdGlvbiBgbWFpbic6Ci9hcHAvZW1hY3MvY29uZnRlc3Qu YzozMzY6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYGFjbF9kZWxldGVfZmlsZV9ucCcKY29s bGVjdDI6IGVycm9yOiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVzCmNvbmZpZ3VyZToyNTQz MDogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZz LmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8ICNkZWZpbmUgUEFD S0FHRV9UQVJOQU1FICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMzAuMC41 MCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1hY3MgMzAuMC41MCIKfCAjZGVm aW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ251LWVtYWNzQGdudS5vcmciCnwgI2RlZmlu ZSBQQUNLQUdFX1VSTCAiaHR0cHM6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9lbWFjcy8iCnwg I2RlZmluZSBIQVZFX1BEVU1QRVIgMQp8ICNkZWZpbmUgSEFWRV9TVERJT19IIDEKfCAjZGVm aW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmlu ZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmlu ZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVm aW5lIEhBVkVfV0NIQVJfSCAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZTX0ggMQp8ICNkZWZp bmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TWVNJTkZPX0ggMQp8ICNk ZWZpbmUgSEFWRV9QVFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAj ZGVmaW5lIEhBVkVfVVRNUF9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0xTQU5fSU5U RVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQVNBTl9JTlRFUkZBQ0VfSCAx CnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9DT01NT05fSU5URVJGQUNFX0RFRlNfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9I IDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VOX0gg MQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX0VYRUNJTkZPX0gg MQp8ICNkZWZpbmUgSEFWRV9TVERJT19FWFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19WRlNf SCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0NERUZT X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfSUVFRTc1 NF9IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VM RUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERCT09MX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf UkFORE9NX0ggMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIF9BTExfU09V UkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8ICNkZWZpbmUgX0dOVV9TT1VS Q0UgMQp8ICNkZWZpbmUgX0hQVVhfQUxUX1hPUEVOX1NPQ0tFVF9BUEkgMQp8ICNkZWZpbmUg X05FVEJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUgX09QRU5CU0RfU09VUkNFIDEKfCAjZGVmaW5l IF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNf NjA1NTlfQVRUUklCU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlf QkZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9ERlBfRVhUX18g MQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0VYVF9fIDEKfCAjZGVmaW5lIF9f U1REQ19XQU5UX0lFQ182MDU1OV9GVU5DU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FO VF9JRUNfNjA1NTlfVFlQRVNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfTElCX0VY VDJfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9NQVRIX1NQRUNfRlVOQ1NfXyAxCnwgI2Rl ZmluZSBfVEFOREVNX1NPVVJDRSAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2Rl ZmluZSBHQ0NfTElOVCAxCnwgI2RlZmluZSBTWVNURU1fVFlQRSAiZ251L2xpbnV4Igp8ICNk ZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJEX0ggMQp8ICNkZWZpbmUgSEFWRV9BTFNBIDEKfCAj ZGVmaW5lIEhBVkVfU09VTkQgMQp8ICNkZWZpbmUgSEFWRV9QRVJTT05BTElUWV9BRERSX05P X1JBTkRPTUlaRSAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX1NZU0lORk8gMQp8ICNkZWZpbmUg TElOVVhfU1lTSU5GT19VTklUIDEKfCAjZGVmaW5lIEhBVkVfVEVSTV9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX05FVF9JRl9IIDEKfCAjZGVmaW5l IEhBVkVfSUZBRERSU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9GTEFH UyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfSFdBRERSIDEKfCAjZGVmaW5l IEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9ORVRNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNU X0lGUkVRX0lGUl9CUk9BREFERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZS X0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TQlJLIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJ WkUgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfVkZPUksgMQp8ICNk ZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9DQU5PTklDQUxJWkVfRklMRV9O QU1FIDEKfCAjZGVmaW5lIEhBVkVfUkVBTFBBVEggMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAx CnwgI2RlZmluZSBIQVZFX0ZDSE1PREFUIDEKfCAjZGVmaW5lIEhBVkVfTENITU9EIDEKfCAj ZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9GRE9QRU5ESVIgMQp8ICNkZWZp bmUgSEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMgMQp8ICNkZWZpbmUgSEFW RV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9QU0VMRUNUIDEKfCAjZGVmaW5lIEhB VkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZp bmUgSEFWRV9JU0JMQU5LIDEKfCAjZGVmaW5lIEhBVkVfSVNXQ1RZUEUgMQp8ICNkZWZpbmUg SEFWRV9TVFJUT0lNQVggMQp8ICNkZWZpbmUgSEFWRV9TWU1MSU5LIDEKfCAjZGVmaW5lIEhB VkVfTE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVm aW5lIFNZU1RFTV9NQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9NTUFQIDEKfCAjZGVmaW5lIEhB VkVfUFRIUkVBRCAxCnwgI2RlZmluZSBUSFJFQURTX0VOQUJMRUQgMQp8ICNkZWZpbmUgSEFW RV9YS0IgMQp8ICNkZWZpbmUgSEFWRV9YS0JSRUZSRVNIS0VZQk9BUkRNQVBQSU5HIDEKfCAj ZGVmaW5lIEhBVkVfWEtCRlJFRU5BTUVTIDEKfCAjZGVmaW5lIEhBVkVfWFJNU0VUREFUQUJB U0UgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOUkVTT1VSQ0VTVFJJTkcgMQp8ICNkZWZpbmUg SEFWRV9YU0NSRUVOTlVNQkVST0ZTQ1JFRU4gMQp8ICNkZWZpbmUgSEFWRV9YRElTUExBWUNF TExTIDEKfCAjZGVmaW5lIEhBVkVfWERFU1RST1lTVUJXSU5ET1dTIDEKfCAjZGVmaW5lIEhB VkVfWDExUjYgMQp8ICNkZWZpbmUgSEFWRV9YX0kxOE4gMQp8ICNkZWZpbmUgSEFWRV9YSUND QUxMQkFDS19DQUxMQkFDSyAxCnwgI2RlZmluZSBIQVZFX1gxMVI2X1hJTSAxCnwgI2RlZmlu ZSBIQVZFX1JTVkcgMQp8ICNkZWZpbmUgSEFWRV9XRUJQIDEKfCAjZGVmaW5lIEhBVkVfU1FM SVRFMyAxCnwgI2RlZmluZSBIQVZFX1NRTElURTNfTE9BRF9FWFRFTlNJT04gMQp8ICNkZWZp bmUgSEFWRV9HRVRBRERSSU5GT19BIDEKfCAjZGVmaW5lIEhBVkVfR1RLMyAxCnwgI2RlZmlu ZSBHREtfRElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAxCnwgI2RlZmluZSBHTElCX0RJ U0FCTEVfREVQUkVDQVRJT05fV0FSTklOR1MgMQp8ICNkZWZpbmUgVVNFX0dUSyAxCnwgI2Rl ZmluZSBIQVZFX01BTExPQ19UUklNIDEKfCAjZGVmaW5lIEhBVkVfREJVUyAxCnwgI2RlZmlu ZSBIQVZFX0RCVVNfV0FUQ0hfR0VUX1VOSVhfRkQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1RZ UEVfSVNfVkFMSUQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0JVU19OQU1FIDEK fCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9QQVRIIDEKfCAjZGVmaW5lIEhBVkVfREJV U19WQUxJREFURV9JTlRFUkZBQ0UgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX01F TUJFUiAxCnwgI2RlZmluZSBIQVZFX0dTRVRUSU5HUyAxCnwgI2RlZmluZSBIQVZFX0xJQlNF TElOVVggMQp8ICNkZWZpbmUgSEFWRV9HTlVUTFMgMQp8ICNkZWZpbmUgSEFWRV9MSUJTWVNU RU1EIDEKfCAjZGVmaW5lIEhBVkVfSlNPTiAxCnwgI2RlZmluZSBIQVZFX0lOT1RJRlkgMQp8 ICNkZWZpbmUgVVNFX0ZJTEVfTk9USUZZIDEKfCAjZGVmaW5lIFVTRV9UT09MS0lUX1NDUk9M TF9CQVJTIDEKfCAjZGVmaW5lIEhBVkVfWElNIDEKfCAjZGVmaW5lIFVTRV9YSU0gMQp8ICNk ZWZpbmUgSEFWRV9YUkVOREVSIDEKfCAjZGVmaW5lIFVTRV9DQUlST19YQ0IgMQp8ICNkZWZp bmUgVVNFX0NBSVJPIDEKfCAjZGVmaW5lIEhBVkVfRlJFRVRZUEUgMQp8ICNkZWZpbmUgSEFW RV9GVF9GQUNFX0dFVENIQVJWQVJJQU5USU5ERVggMQp8ICNkZWZpbmUgSEFWRV9MSUJPVEYg MQp8ICNkZWZpbmUgSEFWRV9PVEZfR0VUX1ZBUklBVElPTl9HTFlQSFMgMQp8ICNkZWZpbmUg SEFWRV9NMTdOX0ZMVCAxCnwgI2RlZmluZSBIQVZFX0hBUkZCVVpaIDEKfCAjZGVmaW5lIFVT RV9YQ0IgMQp8ICNkZWZpbmUgSEFWRV9YUE0gMQp8ICNkZWZpbmUgSEFWRV9KUEVHIDEKfCAj ZGVmaW5lIEhBVkVfTENNUzIgMQp8ICNkZWZpbmUgSEFWRV9aTElCIDEKfCAjZGVmaW5lIERZ TkFNSUNfTElCX1NVRkZJWCAiLnNvIgp8ICNkZWZpbmUgRFlOQU1JQ19MSUJfU0VDT05EQVJZ X1NVRkZJWCAiIgp8ICNkZWZpbmUgSEFWRV9ETEFERFIgMQp8ICNkZWZpbmUgSEFWRV9NT0RV TEVTIDEKfCAjZGVmaW5lIE1PRFVMRVNfU1VGRklYICIuc28iCnwgI2RlZmluZSBOQVRJVkVf RUxJU1BfU1VGRklYICIuZWxuIgp8ICNkZWZpbmUgSEFWRV9QTkcgMQp8ICNkZWZpbmUgSEFW RV9USUZGIDEKfCAjZGVmaW5lIEhBVkVfR0lGIDEKfCAjZGVmaW5lIEhBVkVfR1BNIDEKfCAj ZGVmaW5lIEhBVkVfWF9TTSAxCnwgI2RlZmluZSBIQVZFX1hSQU5EUiAxCnwgI2RlZmluZSBI QVZFX1hJTkVSQU1BIDEKfCAjZGVmaW5lIEhBVkVfWEZJWEVTIDEKfCAjZGVmaW5lIEhBVkVf WElOUFVUMiAxCnwgI2RlZmluZSBIQVZFX1hJU0NST0xMQ0xBU1NJTkZPX1RZUEUgMQp8ICNk ZWZpbmUgSEFWRV9YSVRPVUNIQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YSUJB UlJJRVJSRUxFQVNFUE9JTlRFUklORk9fREVWSUNFSUQgMQp8ICNkZWZpbmUgSEFWRV9YSUdF U1RVUkVDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hTWU5DIDEKfCAjZGVmaW5l IEhBVkVfWFNZTkNUUklHR0VSRkVOQ0UgMQp8ICNkZWZpbmUgSEFWRV9YREJFIDEKfCAjZGVm aW5lIEhBVkVfWENCX1NIQVBFIDEKfCAjZGVmaW5lIEhBVkVfWFNIQVBFIDEKfCAjZGVmaW5l IEhBVkVfWENPTVBPU0lURSAxCnwgI2RlZmluZSBIQVZFX0xJQlhNTDIgMQp8ICNkZWZpbmUg SEFWRV9MSU5VWF9TRUNDT01QX0ggMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfU0VU X01PREVfRklMVEVSIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX0ZJTFRFUl9GTEFH X1RTWU5DIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfRklMVEVSX0ggMQp8ICNkZWZpbmUgSEFW RV9ERUNMX1NFQ0NPTVBfU0VUX01PREVfRklMVEVSIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9T RUNDT01QX0ZJTFRFUl9GTEFHX1RTWU5DIDEKfCAjZGVmaW5lIFNJWkVPRl9MT05HIDgKfCAj ZGVmaW5lIEhBVkVfQUNDRVBUNCAxCnwgI2RlZmluZSBIQVZFX0ZDSERJUiAxCnwgI2RlZmlu ZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUUlVTQUdFIDEKfCAjZGVm aW5lIEhBVkVfR0VUX0NVUlJFTlRfRElSX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9MUkFORDQ4 IDEKfCAjZGVmaW5lIEhBVkVfUkFORE9NIDEKfCAjZGVmaW5lIEhBVkVfUklOVCAxCnwgI2Rl ZmluZSBIQVZFX1RSVU5DIDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhB VkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZpbmUg SEFWRV9ORVdMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSTElNSVQgMQp8ICNkZWZpbmUg SEFWRV9TRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TSFVURE9XTiAxCnwgI2RlZmluZSBI QVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlNJR05BTCAxCnwgI2Rl ZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX1NFTkRUTyAxCnwgI2RlZmlu ZSBIQVZFX1JFQ1ZGUk9NIDEKfCAjZGVmaW5lIEhBVkVfR0VUU09DS05BTUUgMQp8ICNkZWZp bmUgSEFWRV9HRVRJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfRlJFRUlGQUREUlMgMQp8ICNk ZWZpbmUgSEFWRV9HQUlfU1RSRVJST1IgMQp8ICNkZWZpbmUgSEFWRV9TWU5DIDEKfCAjZGVm aW5lIEhBVkVfR0VUUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRQV0VOVCAxCnwgI2RlZmlu ZSBIQVZFX0dFVEdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5ER1JFTlQgMQp8ICNkZWZpbmUg SEFWRV9SRU5BTUVBVDIgMQp8ICNkZWZpbmUgSEFWRV9DRk1BS0VSQVcgMQp8ICNkZWZpbmUg SEFWRV9DRlNFVFNQRUVEIDEKfCAjZGVmaW5lIEhBVkVfX19FWEVDVVRBQkxFX1NUQVJUIDEK fCAjZGVmaW5lIEhBVkVfTE9HMiAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0VUTkFNRV9O UCAxCnwgI2RlZmluZSBIQVZFX0FMSUdORURfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X0FMSUdORURfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9NQURWSVNFIDEKfCAjZGVm aW5lIEhBVkVfX19CVUlMVElOX0ZSQU1FX0FERFJFU1MgMQp8ICNkZWZpbmUgSEFWRV9fX0JV SUxUSU5fVU5XSU5EX0lOSVQgMQp8ICNkZWZpbmUgSEFWRV9GU0VFS08gMQp8ICNkZWZpbmUg SEFWRV9HUkFOVFBUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFQgMQp8ICNkZWZpbmUgSEFWRV9Q T1NJWF9PUEVOUFQgMQp8ICNkZWZpbmUgVEVSTUlORk8gMQp8ICNkZWZpbmUgVEVSTUlORk9f REVGSU5FU19CQyAxCnwgI2RlZmluZSBIQVZFX1RJTUVSRkQgMQp8ICNkZWZpbmUgSEFWRV9W QUxHUklORF9WQUxHUklORF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1VOSVBBSVJfVU5J Q09ERSAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9X T1JLSU5HX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9TTlBSSU5URiAxCnwgI2RlZmluZSBIQVZF X1NQQVdOX0ggMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTiAxCnwgI2RlZmluZSBIQVZF X1BPU0lYX1NQQVdOX0ZJTEVfQUNUSU9OU19BRERDSERJUl9OUCAxCnwgI2RlZmluZSBIQVZF X1BPU0lYX1NQQVdOQVRUUl9TRVRGTEFHUyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUE9TSVhf U1BBV05fU0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVfR0xJQiAxCnwgI2RlZmluZSBIQVZFX0xB TkdJTkZPX0NPREVTRVQgMQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5GT19fTkxfUEFQRVJfV0lE VEggMQp8ICNkZWZpbmUgSEFWRV9NQlNUQVRFX1QgMQp8ICNkZWZpbmUgQU1QRVJTQU5EX0ZV TExfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1BUWVMgMQp8ICNkZWZpbmUgSEFWRV9TT0NLRVRT IDEKfCAjZGVmaW5lIE5VTExfREVWSUNFICIvZGV2L251bGwiCnwgI2RlZmluZSBTRVBDSEFS ICc6Jwp8ICNkZWZpbmUgc3VicHJvY2Vzc2VzIDEKfCAjZGVmaW5lIFVTRVJfRlVMTF9OQU1F IHB3LT5wd19nZWNvcwp8ICNkZWZpbmUgRElSRUNUT1JZX1NFUCAnLycKfCAjZGVmaW5lIElT X0RFVklDRV9TRVAoX2NfKSAwCnwgI2RlZmluZSBJU19ESVJFQ1RPUllfU0VQKF9jXykgKChf Y18pID09IERJUkVDVE9SWV9TRVApCnwgI2RlZmluZSBJU19BTllfU0VQKF9jXykgKElTX0RJ UkVDVE9SWV9TRVAgKF9jXykpCnwgI2RlZmluZSBIQVZFX1BST0NGUyAxCnwgI2RlZmluZSBE RUZBVUxUX1NPVU5EX0RFVklDRSAiL2Rldi9kc3AiCnwgI2RlZmluZSBJTlRFUlJVUFRfSU5Q VVQgMQp8ICNkZWZpbmUgTkFSUk9XUFJPVE8gMQp8ICNkZWZpbmUgVU5JWDk4X1BUWVMgMQp8 ICNkZWZpbmUgUFRZX0lURVJBVElPTiBpbnQgaTsgZm9yIChpID0gMDsgaSA8IDE7IGkrKykK fCAjZGVmaW5lIFBUWV9UVFlfTkFNRV9TUFJJTlRGIHsgY2hhciAqcHR5bmFtZSA9IDA7IHNp Z3NldF90IGJsb2NrZWQ7IHNpZ2VtcHR5c2V0ICgmYmxvY2tlZCk7IHNpZ2FkZHNldCAoJmJs b2NrZWQsIFNJR0NITEQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19CTE9DSywgJmJsb2NrZWQs IDApOyBpZiAoZ3JhbnRwdCAoZmQpICE9IC0xICYmIHVubG9ja3B0IChmZCkgIT0gLTEpIHB0 eW5hbWUgPSBwdHNuYW1lKGZkKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfVU5CTE9DSywgJmJs b2NrZWQsIDApOyBpZiAoIXB0eW5hbWUpIHsgZW1hY3NfY2xvc2UgKGZkKTsgcmV0dXJuIC0x OyB9IHNucHJpbnRmIChwdHlfbmFtZSwgUFRZX05BTUVfU0laRSwgIiVzIiwgcHR5bmFtZSk7 IH0KfCAjZGVmaW5lIFBUWV9PUEVOIGRvIHsgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8 IE9fQ0xPRVhFQyB8IE9fTk9DVFRZKTsgaWYgKGZkIDwgMCAmJiBlcnJubyA9PSBFSU5WQUwp IGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX05PQ1RUWSk7IH0gd2hpbGUgKGZhbHNl KQp8ICNkZWZpbmUgUFRZX05BTUVfU1BSSU5URiAvKiovCnwgI2RlZmluZSBTSUdOQUxTX1ZJ QV9DSEFSQUNURVJTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBH Q19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgSEFWRV9fU0VUSk1QIDEKfCAjZGVmaW5lIEhB VkVfU0lHU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU1RBQ0tfT1ZFUkZMT1dfSEFORExJTkcg MQp8ICNkZWZpbmUgVVNHIC8qKi8KfCAjZGVmaW5lIEdOVV9MSU5VWCAvKiovCnwgI2RlZmlu ZSBTSVpFT0ZfU1BFRURfVCA0CnwgI2RlZmluZSBVU0FCTEVfRklPTlJFQUQgMQp8ICNkZWZp bmUgVVNBQkxFX1NJR0lPIDEKfCAjZGVmaW5lIENPUFlSSUdIVCAiQ29weXJpZ2h0IChDKSAy MDIzIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiIKfCAjZGVmaW5lIFRFUk1fSEVB REVSICJndGt1dGlsLmgiCnwgI2RlZmluZSBFTUFDU19DT05GSUdVUkFUSU9OICJ4ODZfNjQt cGMtbGludXgtZ251Igp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHX09QVElPTlMgIiIKfCAjZGVm aW5lIEhBVkVfWF9XSU5ET1dTIDEKfCAjZGVmaW5lIEhBVkVfWDExIDEKfCAjZGVmaW5lIEhB VkVfU1RSVUNUX0FUVFJJQlVURV9BTElHTkVEIDEKfCAjZGVmaW5lIEhBVkVfVFlQRU9GIDEK fCAjZGVmaW5lIEhBVkVfU1RBVEVNRU5UX0VYUFJFU1NJT05TIDEKfCAjZGVmaW5lIE1BTExP Q18wX0lTX05PTk5VTEwgMQp8ICNkZWZpbmUgSEFWRV9TWVNfQUNMX0ggMQp8ICNkZWZpbmUg SEFWRV9BQ0xfR0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZEIDEKfCAjZGVm aW5lIEhBVkVfQUNMX1NFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX1NFVF9GRCAxCnwg I2RlZmluZSBIQVZFX0FDTF9GUkVFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZST01fTU9ERSAx CnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX1RFWFQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfREVM RVRFX0RFRl9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VYVEVOREVEX0ZJTEUgMQp8IC8q IGVuZCBjb25mZGVmcy5oLiAgKi8KfCAvKiBEZWZpbmUgYWNsX2RlbGV0ZV9maWxlX25wIHRv IGFuIGlubm9jdW91cyB2YXJpYW50LCBpbiBjYXNlIDxsaW1pdHMuaD4gZGVjbGFyZXMgYWNs X2RlbGV0ZV9maWxlX25wLgp8ICAgIEZvciBleGFtcGxlLCBIUC1VWCAxMWkgPGxpbWl0cy5o PiBkZWNsYXJlcyBnZXR0aW1lb2ZkYXkuICAqLwp8ICNkZWZpbmUgYWNsX2RlbGV0ZV9maWxl X25wIGlubm9jdW91c19hY2xfZGVsZXRlX2ZpbGVfbnAKfCAKfCAvKiBTeXN0ZW0gaGVhZGVy IHRvIGRlZmluZSBfX3N0dWIgbWFjcm9zIGFuZCBob3BlZnVsbHkgZmV3IHByb3RvdHlwZXMs CnwgICAgd2hpY2ggY2FuIGNvbmZsaWN0IHdpdGggY2hhciBhY2xfZGVsZXRlX2ZpbGVfbnAg KCk7IGJlbG93LiAgKi8KfCAKfCAjaW5jbHVkZSA8bGltaXRzLmg+CnwgI3VuZGVmIGFjbF9k ZWxldGVfZmlsZV9ucAp8IAp8IC8qIE92ZXJyaWRlIGFueSBHQ0MgaW50ZXJuYWwgcHJvdG90 eXBlIHRvIGF2b2lkIGFuIGVycm9yLgp8ICAgIFVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0 IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIEdDQwp8ICAgIGJ1aWx0aW4gYW5kIHRoZW4g aXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCnwgI2lmZGVm IF9fY3BsdXNwbHVzCnwgZXh0ZXJuICJDIgp8ICNlbmRpZgp8IGNoYXIgYWNsX2RlbGV0ZV9m aWxlX25wICgpOwp8IC8qIFRoZSBHTlUgQyBsaWJyYXJ5IGRlZmluZXMgdGhpcyBmb3IgZnVu Y3Rpb25zIHdoaWNoIGl0IGltcGxlbWVudHMKfCAgICAgdG8gYWx3YXlzIGZhaWwgd2l0aCBF Tk9TWVMuICBTb21lIGZ1bmN0aW9ucyBhcmUgYWN0dWFsbHkgbmFtZWQKfCAgICAgc29tZXRo aW5nIHN0YXJ0aW5nIHdpdGggX18gYW5kIHRoZSBub3JtYWwgbmFtZSBpcyBhbiBhbGlhcy4g ICovCnwgI2lmIGRlZmluZWQgX19zdHViX2FjbF9kZWxldGVfZmlsZV9ucCB8fCBkZWZpbmVk IF9fc3R1Yl9fX2FjbF9kZWxldGVfZmlsZV9ucAp8IGNob2tlIG1lCnwgI2VuZGlmCnwgCnwg aW50CnwgbWFpbiAodm9pZCkKfCB7CnwgcmV0dXJuIGFjbF9kZWxldGVfZmlsZV9ucCAoKTsK fCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjI1NDMwOiByZXN1bHQ6IG5vCmNv bmZpZ3VyZToyNTQzNjogY2hlY2tpbmcgZm9yIGFjbF9jb3B5X2V4dF9uYXRpdmUKY29uZmln dXJlOjI1NDM2OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgLWxh Y2wgICA+JjUgCi91c3IvYmluL2xkOiAvdG1wL2NjTGNOR0xOLm86IGluIGZ1bmN0aW9uIGBt YWluJzoKL2FwcC9lbWFjcy9jb25mdGVzdC5jOjMzNjogdW5kZWZpbmVkIHJlZmVyZW5jZSB0 byBgYWNsX2NvcHlfZXh0X25hdGl2ZScKY29sbGVjdDI6IGVycm9yOiBsZCByZXR1cm5lZCAx IGV4aXQgc3RhdHVzCmNvbmZpZ3VyZToyNTQzNjogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVk IHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFN RSAiR05VIEVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJlbWFjcyIKfCAjZGVm aW5lIFBBQ0tBR0VfVkVSU0lPTiAiMzAuMC41MCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5H ICJHTlUgRW1hY3MgMzAuMC41MCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWct Z251LWVtYWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0cHM6Ly93d3cu Z251Lm9yZy9zb2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmluZSBIQVZFX1BEVU1QRVIgMQp8ICNk ZWZpbmUgSEFWRV9TVERJT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZp bmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZp bmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2Rl ZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfSCAxCnwgI2RlZmlu ZSBIQVZFX0xJTlVYX0ZTX0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19TWVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9QVFlfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAx CnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUF9IIDEKfCAjZGVm aW5lIEhBVkVfU0FOSVRJWkVSX0xTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9T QU5JVElaRVJfQVNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9D T01NT05fSU5URVJGQUNFX0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAx CnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAx CnwgI2RlZmluZSBIQVZFX0VYRUNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJT19FWFRf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19WRlNfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX0NERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElN RV9IIDEKfCAjZGVmaW5lIEhBVkVfSUVFRTc1NF9IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRT X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERC T09MX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkFORE9NX0ggMQp8ICNkZWZpbmUgU1REQ19I RUFERVJTIDEKfCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fQ19T T1VSQ0UgMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0hQVVhfQUxUX1hP UEVOX1NPQ0tFVF9BUEkgMQp8ICNkZWZpbmUgX05FVEJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUg X09QRU5CU0RfU09VUkNFIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAx CnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfQVRUUklCU19FWFRfXyAxCnwgI2Rl ZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfQkZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1RE Q19XQU5UX0lFQ182MDU1OV9ERlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVD XzYwNTU5X0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9GVU5DU19F WFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfVFlQRVNfRVhUX18gMQp8 ICNkZWZpbmUgX19TVERDX1dBTlRfTElCX0VYVDJfXyAxCnwgI2RlZmluZSBfX1NURENfV0FO VF9NQVRIX1NQRUNfRlVOQ1NfXyAxCnwgI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCnwgI2Rl ZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBHQ0NfTElOVCAxCnwgI2RlZmluZSBT WVNURU1fVFlQRSAiZ251L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJEX0gg MQp8ICNkZWZpbmUgSEFWRV9BTFNBIDEKfCAjZGVmaW5lIEhBVkVfU09VTkQgMQp8ICNkZWZp bmUgSEFWRV9QRVJTT05BTElUWV9BRERSX05PX1JBTkRPTUlaRSAxCnwgI2RlZmluZSBIQVZF X0xJTlVYX1NZU0lORk8gMQp8ICNkZWZpbmUgTElOVVhfU1lTSU5GT19VTklUIDEKfCAjZGVm aW5lIEhBVkVfVEVSTV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmlu ZSBIQVZFX05FVF9JRl9IIDEKfCAjZGVmaW5lIEhBVkVfSUZBRERSU19IIDEKfCAjZGVmaW5l IEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9GTEFHUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9J RlJFUV9JRlJfSFdBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9ORVRN QVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9CUk9BREFERFIgMQp8ICNk ZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TQlJL IDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEK fCAjZGVmaW5lIEhBVkVfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZp bmUgSEFWRV9DQU5PTklDQUxJWkVfRklMRV9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUkVBTFBB VEggMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PREFUIDEK fCAjZGVmaW5lIEhBVkVfTENITU9EIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZp bmUgSEFWRV9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgSEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5l IEhBVkVfRlNZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUg SEFWRV9QU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVm aW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFWRV9JU0JMQU5LIDEKfCAjZGVmaW5l IEhBVkVfSVNXQ1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9TVFJUT0lNQVggMQp8ICNkZWZpbmUg SEFWRV9TWU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUg SEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIFNZU1RFTV9NQUxMT0MgMQp8ICNkZWZp bmUgSEFWRV9NTUFQIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRCAxCnwgI2RlZmluZSBUSFJF QURTX0VOQUJMRUQgMQp8ICNkZWZpbmUgSEFWRV9YS0IgMQp8ICNkZWZpbmUgSEFWRV9YS0JS RUZSRVNIS0VZQk9BUkRNQVBQSU5HIDEKfCAjZGVmaW5lIEhBVkVfWEtCRlJFRU5BTUVTIDEK fCAjZGVmaW5lIEhBVkVfWFJNU0VUREFUQUJBU0UgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVO UkVTT1VSQ0VTVFJJTkcgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOTlVNQkVST0ZTQ1JFRU4g MQp8ICNkZWZpbmUgSEFWRV9YRElTUExBWUNFTExTIDEKfCAjZGVmaW5lIEhBVkVfWERFU1RS T1lTVUJXSU5ET1dTIDEKfCAjZGVmaW5lIEhBVkVfWDExUjYgMQp8ICNkZWZpbmUgSEFWRV9Y X0kxOE4gMQp8ICNkZWZpbmUgSEFWRV9YSUNDQUxMQkFDS19DQUxMQkFDSyAxCnwgI2RlZmlu ZSBIQVZFX1gxMVI2X1hJTSAxCnwgI2RlZmluZSBIQVZFX1JTVkcgMQp8ICNkZWZpbmUgSEFW RV9XRUJQIDEKfCAjZGVmaW5lIEhBVkVfU1FMSVRFMyAxCnwgI2RlZmluZSBIQVZFX1NRTElU RTNfTE9BRF9FWFRFTlNJT04gMQp8ICNkZWZpbmUgSEFWRV9HRVRBRERSSU5GT19BIDEKfCAj ZGVmaW5lIEhBVkVfR1RLMyAxCnwgI2RlZmluZSBHREtfRElTQUJMRV9ERVBSRUNBVElPTl9X QVJOSU5HUyAxCnwgI2RlZmluZSBHTElCX0RJU0FCTEVfREVQUkVDQVRJT05fV0FSTklOR1Mg MQp8ICNkZWZpbmUgVVNFX0dUSyAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19UUklNIDEKfCAj ZGVmaW5lIEhBVkVfREJVUyAxCnwgI2RlZmluZSBIQVZFX0RCVVNfV0FUQ0hfR0VUX1VOSVhf RkQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1RZUEVfSVNfVkFMSUQgMQp8ICNkZWZpbmUgSEFW RV9EQlVTX1ZBTElEQVRFX0JVU19OQU1FIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFU RV9QQVRIIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9JTlRFUkZBQ0UgMQp8ICNk ZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX01FTUJFUiAxCnwgI2RlZmluZSBIQVZFX0dTRVRU SU5HUyAxCnwgI2RlZmluZSBIQVZFX0xJQlNFTElOVVggMQp8ICNkZWZpbmUgSEFWRV9HTlVU TFMgMQp8ICNkZWZpbmUgSEFWRV9MSUJTWVNURU1EIDEKfCAjZGVmaW5lIEhBVkVfSlNPTiAx CnwgI2RlZmluZSBIQVZFX0lOT1RJRlkgMQp8ICNkZWZpbmUgVVNFX0ZJTEVfTk9USUZZIDEK fCAjZGVmaW5lIFVTRV9UT09MS0lUX1NDUk9MTF9CQVJTIDEKfCAjZGVmaW5lIEhBVkVfWElN IDEKfCAjZGVmaW5lIFVTRV9YSU0gMQp8ICNkZWZpbmUgSEFWRV9YUkVOREVSIDEKfCAjZGVm aW5lIFVTRV9DQUlST19YQ0IgMQp8ICNkZWZpbmUgVVNFX0NBSVJPIDEKfCAjZGVmaW5lIEhB VkVfRlJFRVRZUEUgMQp8ICNkZWZpbmUgSEFWRV9GVF9GQUNFX0dFVENIQVJWQVJJQU5USU5E RVggMQp8ICNkZWZpbmUgSEFWRV9MSUJPVEYgMQp8ICNkZWZpbmUgSEFWRV9PVEZfR0VUX1ZB UklBVElPTl9HTFlQSFMgMQp8ICNkZWZpbmUgSEFWRV9NMTdOX0ZMVCAxCnwgI2RlZmluZSBI QVZFX0hBUkZCVVpaIDEKfCAjZGVmaW5lIFVTRV9YQ0IgMQp8ICNkZWZpbmUgSEFWRV9YUE0g MQp8ICNkZWZpbmUgSEFWRV9KUEVHIDEKfCAjZGVmaW5lIEhBVkVfTENNUzIgMQp8ICNkZWZp bmUgSEFWRV9aTElCIDEKfCAjZGVmaW5lIERZTkFNSUNfTElCX1NVRkZJWCAiLnNvIgp8ICNk ZWZpbmUgRFlOQU1JQ19MSUJfU0VDT05EQVJZX1NVRkZJWCAiIgp8ICNkZWZpbmUgSEFWRV9E TEFERFIgMQp8ICNkZWZpbmUgSEFWRV9NT0RVTEVTIDEKfCAjZGVmaW5lIE1PRFVMRVNfU1VG RklYICIuc28iCnwgI2RlZmluZSBOQVRJVkVfRUxJU1BfU1VGRklYICIuZWxuIgp8ICNkZWZp bmUgSEFWRV9QTkcgMQp8ICNkZWZpbmUgSEFWRV9USUZGIDEKfCAjZGVmaW5lIEhBVkVfR0lG IDEKfCAjZGVmaW5lIEhBVkVfR1BNIDEKfCAjZGVmaW5lIEhBVkVfWF9TTSAxCnwgI2RlZmlu ZSBIQVZFX1hSQU5EUiAxCnwgI2RlZmluZSBIQVZFX1hJTkVSQU1BIDEKfCAjZGVmaW5lIEhB VkVfWEZJWEVTIDEKfCAjZGVmaW5lIEhBVkVfWElOUFVUMiAxCnwgI2RlZmluZSBIQVZFX1hJ U0NST0xMQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YSVRPVUNIQ0xBU1NJTkZP X1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YSUJBUlJJRVJSRUxFQVNFUE9JTlRFUklORk9fREVW SUNFSUQgMQp8ICNkZWZpbmUgSEFWRV9YSUdFU1RVUkVDTEFTU0lORk9fVFlQRSAxCnwgI2Rl ZmluZSBIQVZFX1hTWU5DIDEKfCAjZGVmaW5lIEhBVkVfWFNZTkNUUklHR0VSRkVOQ0UgMQp8 ICNkZWZpbmUgSEFWRV9YREJFIDEKfCAjZGVmaW5lIEhBVkVfWENCX1NIQVBFIDEKfCAjZGVm aW5lIEhBVkVfWFNIQVBFIDEKfCAjZGVmaW5lIEhBVkVfWENPTVBPU0lURSAxCnwgI2RlZmlu ZSBIQVZFX0xJQlhNTDIgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TRUNDT01QX0ggMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfU0VUX01PREVfRklMVEVSIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9TRUNDT01QX0ZJTFRFUl9GTEFHX1RTWU5DIDEKfCAjZGVmaW5lIEhBVkVfTElO VVhfRklMVEVSX0ggMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfU0VUX01PREVfRklM VEVSIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX0ZJTFRFUl9GTEFHX1RTWU5DIDEK fCAjZGVmaW5lIFNJWkVPRl9MT05HIDgKfCAjZGVmaW5lIEhBVkVfQUNDRVBUNCAxCnwgI2Rl ZmluZSBIQVZFX0ZDSERJUiAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVm aW5lIEhBVkVfR0VUUlVTQUdFIDEKfCAjZGVmaW5lIEhBVkVfR0VUX0NVUlJFTlRfRElSX05B TUUgMQp8ICNkZWZpbmUgSEFWRV9MUkFORDQ4IDEKfCAjZGVmaW5lIEhBVkVfUkFORE9NIDEK fCAjZGVmaW5lIEhBVkVfUklOVCAxCnwgI2RlZmluZSBIQVZFX1RSVU5DIDEKfCAjZGVmaW5l IEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUg SEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9ORVdMT0NBTEUgMQp8ICNkZWZpbmUg SEFWRV9HRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8ICNkZWZpbmUg SEFWRV9TSFVURE9XTiAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2Rl ZmluZSBIQVZFX1NUUlNJR05BTCAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2Rl ZmluZSBIQVZFX1NFTkRUTyAxCnwgI2RlZmluZSBIQVZFX1JFQ1ZGUk9NIDEKfCAjZGVmaW5l IEhBVkVfR0VUU09DS05BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRJRkFERFJTIDEKfCAjZGVm aW5lIEhBVkVfRlJFRUlGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9HQUlfU1RSRVJST1IgMQp8 ICNkZWZpbmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFdFTlQgMQp8ICNkZWZp bmUgSEFWRV9FTkRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0dFVEdSRU5UIDEKfCAjZGVmaW5l IEhBVkVfRU5ER1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9SRU5BTUVBVDIgMQp8ICNkZWZpbmUg SEFWRV9DRk1BS0VSQVcgMQp8ICNkZWZpbmUgSEFWRV9DRlNFVFNQRUVEIDEKfCAjZGVmaW5l IEhBVkVfX19FWEVDVVRBQkxFX1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVfTE9HMiAxCnwgI2Rl ZmluZSBIQVZFX1BUSFJFQURfU0VUTkFNRV9OUCAxCnwgI2RlZmluZSBIQVZFX0FMSUdORURf QUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0FMSUdORURfQUxMT0MgMQp8ICNkZWZpbmUg SEFWRV9QT1NJWF9NQURWSVNFIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX0ZSQU1FX0FE RFJFU1MgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fVU5XSU5EX0lOSVQgMQp8ICNkZWZp bmUgSEFWRV9GU0VFS08gMQp8ICNkZWZpbmUgSEFWRV9HUkFOVFBUIDEKfCAjZGVmaW5lIEhB VkVfR0VUUFQgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9PUEVOUFQgMQp8ICNkZWZpbmUgVEVS TUlORk8gMQp8ICNkZWZpbmUgVEVSTUlORk9fREVGSU5FU19CQyAxCnwgI2RlZmluZSBIQVZF X1RJTUVSRkQgMQp8ICNkZWZpbmUgSEFWRV9WQUxHUklORF9WQUxHUklORF9IIDEKfCAjZGVm aW5lIEhBVkVfU1RSVUNUX1VOSVBBSVJfVU5JQ09ERSAxCnwgI2RlZmluZSBIQVZFX1dPUktJ TkdfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX0ZPUksgMQp8ICNkZWZpbmUgSEFW RV9TTlBSSU5URiAxCnwgI2RlZmluZSBIQVZFX1NQQVdOX0ggMQp8ICNkZWZpbmUgSEFWRV9Q T1NJWF9TUEFXTiAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOX0ZJTEVfQUNUSU9OU19B RERDSERJUl9OUCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOQVRUUl9TRVRGTEFHUyAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfUE9TSVhfU1BBV05fU0VUU0lEIDEKfCAjZGVmaW5lIEhB VkVfR0xJQiAxCnwgI2RlZmluZSBIQVZFX0xBTkdJTkZPX0NPREVTRVQgMQp8ICNkZWZpbmUg SEFWRV9MQU5HSU5GT19fTkxfUEFQRVJfV0lEVEggMQp8ICNkZWZpbmUgSEFWRV9NQlNUQVRF X1QgMQp8ICNkZWZpbmUgQU1QRVJTQU5EX0ZVTExfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1BU WVMgMQp8ICNkZWZpbmUgSEFWRV9TT0NLRVRTIDEKfCAjZGVmaW5lIE5VTExfREVWSUNFICIv ZGV2L251bGwiCnwgI2RlZmluZSBTRVBDSEFSICc6Jwp8ICNkZWZpbmUgc3VicHJvY2Vzc2Vz IDEKfCAjZGVmaW5lIFVTRVJfRlVMTF9OQU1FIHB3LT5wd19nZWNvcwp8ICNkZWZpbmUgRElS RUNUT1JZX1NFUCAnLycKfCAjZGVmaW5lIElTX0RFVklDRV9TRVAoX2NfKSAwCnwgI2RlZmlu ZSBJU19ESVJFQ1RPUllfU0VQKF9jXykgKChfY18pID09IERJUkVDVE9SWV9TRVApCnwgI2Rl ZmluZSBJU19BTllfU0VQKF9jXykgKElTX0RJUkVDVE9SWV9TRVAgKF9jXykpCnwgI2RlZmlu ZSBIQVZFX1BST0NGUyAxCnwgI2RlZmluZSBERUZBVUxUX1NPVU5EX0RFVklDRSAiL2Rldi9k c3AiCnwgI2RlZmluZSBJTlRFUlJVUFRfSU5QVVQgMQp8ICNkZWZpbmUgTkFSUk9XUFJPVE8g MQp8ICNkZWZpbmUgVU5JWDk4X1BUWVMgMQp8ICNkZWZpbmUgUFRZX0lURVJBVElPTiBpbnQg aTsgZm9yIChpID0gMDsgaSA8IDE7IGkrKykKfCAjZGVmaW5lIFBUWV9UVFlfTkFNRV9TUFJJ TlRGIHsgY2hhciAqcHR5bmFtZSA9IDA7IHNpZ3NldF90IGJsb2NrZWQ7IHNpZ2VtcHR5c2V0 ICgmYmxvY2tlZCk7IHNpZ2FkZHNldCAoJmJsb2NrZWQsIFNJR0NITEQpOyBwdGhyZWFkX3Np Z21hc2sgKFNJR19CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoZ3JhbnRwdCAoZmQpICE9IC0x ICYmIHVubG9ja3B0IChmZCkgIT0gLTEpIHB0eW5hbWUgPSBwdHNuYW1lKGZkKTsgcHRocmVh ZF9zaWdtYXNrIChTSUdfVU5CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoIXB0eW5hbWUpIHsg ZW1hY3NfY2xvc2UgKGZkKTsgcmV0dXJuIC0xOyB9IHNucHJpbnRmIChwdHlfbmFtZSwgUFRZ X05BTUVfU0laRSwgIiVzIiwgcHR5bmFtZSk7IH0KfCAjZGVmaW5lIFBUWV9PUEVOIGRvIHsg ZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fQ0xPRVhFQyB8IE9fTk9DVFRZKTsgaWYg KGZkIDwgMCAmJiBlcnJubyA9PSBFSU5WQUwpIGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1Ig fCBPX05PQ1RUWSk7IH0gd2hpbGUgKGZhbHNlKQp8ICNkZWZpbmUgUFRZX05BTUVfU1BSSU5U RiAvKiovCnwgI2RlZmluZSBTSUdOQUxTX1ZJQV9DSEFSQUNURVJTIDEKfCAjZGVmaW5lIEdD X1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUg SEFWRV9fU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUSk1QIDEKfCAjZGVmaW5lIEhB VkVfU1RBQ0tfT1ZFUkZMT1dfSEFORExJTkcgMQp8ICNkZWZpbmUgVVNHIC8qKi8KfCAjZGVm aW5lIEdOVV9MSU5VWCAvKiovCnwgI2RlZmluZSBTSVpFT0ZfU1BFRURfVCA0CnwgI2RlZmlu ZSBVU0FCTEVfRklPTlJFQUQgMQp8ICNkZWZpbmUgVVNBQkxFX1NJR0lPIDEKfCAjZGVmaW5l IENPUFlSSUdIVCAiQ29weXJpZ2h0IChDKSAyMDIzIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv biwgSW5jLiIKfCAjZGVmaW5lIFRFUk1fSEVBREVSICJndGt1dGlsLmgiCnwgI2RlZmluZSBF TUFDU19DT05GSUdVUkFUSU9OICJ4ODZfNjQtcGMtbGludXgtZ251Igp8ICNkZWZpbmUgRU1B Q1NfQ09ORklHX09QVElPTlMgIiIKfCAjZGVmaW5lIEhBVkVfWF9XSU5ET1dTIDEKfCAjZGVm aW5lIEhBVkVfWDExIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0FUVFJJQlVURV9BTElHTkVE IDEKfCAjZGVmaW5lIEhBVkVfVFlQRU9GIDEKfCAjZGVmaW5lIEhBVkVfU1RBVEVNRU5UX0VY UFJFU1NJT05TIDEKfCAjZGVmaW5lIE1BTExPQ18wX0lTX05PTk5VTEwgMQp8ICNkZWZpbmUg SEFWRV9TWVNfQUNMX0ggMQp8ICNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZJTEUgMQp8ICNkZWZp bmUgSEFWRV9BQ0xfR0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX1NFVF9GSUxFIDEKfCAj ZGVmaW5lIEhBVkVfQUNMX1NFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUkVFIDEKfCAj ZGVmaW5lIEhBVkVfQUNMX0ZST01fTU9ERSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX1RF WFQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfREVMRVRFX0RFRl9GSUxFIDEKfCAjZGVmaW5lIEhB VkVfQUNMX0VYVEVOREVEX0ZJTEUgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAvKiBE ZWZpbmUgYWNsX2NvcHlfZXh0X25hdGl2ZSB0byBhbiBpbm5vY3VvdXMgdmFyaWFudCwgaW4g Y2FzZSA8bGltaXRzLmg+IGRlY2xhcmVzIGFjbF9jb3B5X2V4dF9uYXRpdmUuCnwgICAgRm9y IGV4YW1wbGUsIEhQLVVYIDExaSA8bGltaXRzLmg+IGRlY2xhcmVzIGdldHRpbWVvZmRheS4g ICovCnwgI2RlZmluZSBhY2xfY29weV9leHRfbmF0aXZlIGlubm9jdW91c19hY2xfY29weV9l eHRfbmF0aXZlCnwgCnwgLyogU3lzdGVtIGhlYWRlciB0byBkZWZpbmUgX19zdHViIG1hY3Jv cyBhbmQgaG9wZWZ1bGx5IGZldyBwcm90b3R5cGVzLAp8ICAgIHdoaWNoIGNhbiBjb25mbGlj dCB3aXRoIGNoYXIgYWNsX2NvcHlfZXh0X25hdGl2ZSAoKTsgYmVsb3cuICAqLwp8IAp8ICNp bmNsdWRlIDxsaW1pdHMuaD4KfCAjdW5kZWYgYWNsX2NvcHlfZXh0X25hdGl2ZQp8IAp8IC8q IE92ZXJyaWRlIGFueSBHQ0MgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9y Lgp8ICAgIFVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlw ZSBvZiBhIEdDQwp8ICAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlw ZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCnwgI2lmZGVmIF9fY3BsdXNwbHVzCnwgZXh0ZXJu ICJDIgp8ICNlbmRpZgp8IGNoYXIgYWNsX2NvcHlfZXh0X25hdGl2ZSAoKTsKfCAvKiBUaGUg R05VIEMgbGlicmFyeSBkZWZpbmVzIHRoaXMgZm9yIGZ1bmN0aW9ucyB3aGljaCBpdCBpbXBs ZW1lbnRzCnwgICAgIHRvIGFsd2F5cyBmYWlsIHdpdGggRU5PU1lTLiAgU29tZSBmdW5jdGlv bnMgYXJlIGFjdHVhbGx5IG5hbWVkCnwgICAgIHNvbWV0aGluZyBzdGFydGluZyB3aXRoIF9f IGFuZCB0aGUgbm9ybWFsIG5hbWUgaXMgYW4gYWxpYXMuICAqLwp8ICNpZiBkZWZpbmVkIF9f c3R1Yl9hY2xfY29weV9leHRfbmF0aXZlIHx8IGRlZmluZWQgX19zdHViX19fYWNsX2NvcHlf ZXh0X25hdGl2ZQp8IGNob2tlIG1lCnwgI2VuZGlmCnwgCnwgaW50CnwgbWFpbiAodm9pZCkK fCB7CnwgcmV0dXJuIGFjbF9jb3B5X2V4dF9uYXRpdmUgKCk7CnwgICA7CnwgICByZXR1cm4g MDsKfCB9CmNvbmZpZ3VyZToyNTQzNjogcmVzdWx0OiBubwpjb25maWd1cmU6MjU0NDI6IGNo ZWNraW5nIGZvciBhY2xfY3JlYXRlX2VudHJ5X25wCmNvbmZpZ3VyZToyNTQ0MjogZ2NjIC1v IGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jIC1sYWNsICAgPiY1IAovdXNyL2Jp bi9sZDogL3RtcC9jY0NaWlJIVi5vOiBpbiBmdW5jdGlvbiBgbWFpbic6Ci9hcHAvZW1hY3Mv Y29uZnRlc3QuYzozMzY6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYGFjbF9jcmVhdGVfZW50 cnlfbnAnCmNvbGxlY3QyOiBlcnJvcjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpjb25m aWd1cmU6MjU0NDI6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAv KiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAj ZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJ T04gIjMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDMwLjAu NTAiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3Jn Igp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHBzOi8vd3d3LmdudS5vcmcvc29mdHdhcmUv ZW1hY3MvIgp8ICNkZWZpbmUgSEFWRV9QRFVNUEVSIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9f SCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0gg MQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0gg MQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERf SCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GU19I IDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5G T19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VS Q0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9Q V0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpF Ul9MU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0FTQU5fSU5U RVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQ09NTU9OX0lOVEVSRkFDRV9E RUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9F WEVDSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfVkZTX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19DREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBI QVZFX0lFRUU3NTRfSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1JBTkRPTV9IIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmlu ZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5l IF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9IUFVYX0FMVF9YT1BFTl9TT0NLRVRfQVBJIDEK fCAjZGVmaW5lIF9ORVRCU0RfU09VUkNFIDEKfCAjZGVmaW5lIF9PUEVOQlNEX1NPVVJDRSAx CnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX19TVERD X1dBTlRfSUVDXzYwNTU5X0FUVFJJQlNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRf SUVDXzYwNTU5X0JGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlf REZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9FWFRfXyAxCnwg I2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRlVOQ1NfRVhUX18gMQp8ICNkZWZpbmUg X19TVERDX1dBTlRfSUVDXzYwNTU5X1RZUEVTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19X QU5UX0xJQl9FWFQyX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfTUFUSF9TUEVDX0ZVTkNT X18gMQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19FWFRFTlNJT05T X18gMQp8ICNkZWZpbmUgR0NDX0xJTlQgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9s aW51eCIKfCAjZGVmaW5lIEhBVkVfU1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVf QUxTQSAxCnwgI2RlZmluZSBIQVZFX1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJ VFlfQUREUl9OT19SQU5ET01JWkUgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEK fCAjZGVmaW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAx CnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAx CnwgI2RlZmluZSBIQVZFX0lGQUREUlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJF UV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAx CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBI QVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNU X0lGUkVRX0lGUl9BRERSIDEKfCAjZGVmaW5lIEhBVkVfU0JSSyAxCnwgI2RlZmluZSBIQVZF X0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZG T1JLIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfQ0FOT05JQ0FM SVpFX0ZJTEVfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1JFQUxQQVRIIDEKfCAjZGVmaW5lIEhB VkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0RBVCAxCnwgI2RlZmluZSBIQVZFX0xD SE1PRCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElS IDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAj ZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwg I2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5L IDEKfCAjZGVmaW5lIEhBVkVfSVNCTEFOSyAxCnwgI2RlZmluZSBIQVZFX0lTV0NUWVBFIDEK fCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwg I2RlZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0la RSAxCnwgI2RlZmluZSBTWVNURU1fTUFMTE9DIDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwg I2RlZmluZSBIQVZFX1BUSFJFQUQgMQp8ICNkZWZpbmUgVEhSRUFEU19FTkFCTEVEIDEKfCAj ZGVmaW5lIEhBVkVfWEtCIDEKfCAjZGVmaW5lIEhBVkVfWEtCUkVGUkVTSEtFWUJPQVJETUFQ UElORyAxCnwgI2RlZmluZSBIQVZFX1hLQkZSRUVOQU1FUyAxCnwgI2RlZmluZSBIQVZFX1hS TVNFVERBVEFCQVNFIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RSSU5HIDEK fCAjZGVmaW5lIEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhBVkVf WERJU1BMQVlDRUxMUyAxCnwgI2RlZmluZSBIQVZFX1hERVNUUk9ZU1VCV0lORE9XUyAxCnwg I2RlZmluZSBIQVZFX1gxMVI2IDEKfCAjZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVmaW5l IEhBVkVfWElDQ0FMTEJBQ0tfQ0FMTEJBQ0sgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9YSU0g MQp8ICNkZWZpbmUgSEFWRV9SU1ZHIDEKfCAjZGVmaW5lIEhBVkVfV0VCUCAxCnwgI2RlZmlu ZSBIQVZFX1NRTElURTMgMQp8ICNkZWZpbmUgSEFWRV9TUUxJVEUzX0xPQURfRVhURU5TSU9O IDEKfCAjZGVmaW5lIEhBVkVfR0VUQUREUklORk9fQSAxCnwgI2RlZmluZSBIQVZFX0dUSzMg MQp8ICNkZWZpbmUgR0RLX0RJU0FCTEVfREVQUkVDQVRJT05fV0FSTklOR1MgMQp8ICNkZWZp bmUgR0xJQl9ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIFVTRV9H VEsgMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfVFJJTSAxCnwgI2RlZmluZSBIQVZFX0RCVVMg MQp8ICNkZWZpbmUgSEFWRV9EQlVTX1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhB VkVfREJVU19UWVBFX0lTX1ZBTElEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9C VVNfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmlu ZSBIQVZFX0RCVVNfVkFMSURBVEVfSU5URVJGQUNFIDEKfCAjZGVmaW5lIEhBVkVfREJVU19W QUxJREFURV9NRU1CRVIgMQp8ICNkZWZpbmUgSEFWRV9HU0VUVElOR1MgMQp8ICNkZWZpbmUg SEFWRV9MSUJTRUxJTlVYIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhB VkVfTElCU1lTVEVNRCAxCnwgI2RlZmluZSBIQVZFX0pTT04gMQp8ICNkZWZpbmUgSEFWRV9J Tk9USUZZIDEKfCAjZGVmaW5lIFVTRV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBVU0VfVE9P TEtJVF9TQ1JPTExfQkFSUyAxCnwgI2RlZmluZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBVU0Vf WElNIDEKfCAjZGVmaW5lIEhBVkVfWFJFTkRFUiAxCnwgI2RlZmluZSBVU0VfQ0FJUk9fWENC IDEKfCAjZGVmaW5lIFVTRV9DQUlSTyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAj ZGVmaW5lIEhBVkVfRlRfRkFDRV9HRVRDSEFSVkFSSUFOVElOREVYIDEKfCAjZGVmaW5lIEhB VkVfTElCT1RGIDEKfCAjZGVmaW5lIEhBVkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTIDEK fCAjZGVmaW5lIEhBVkVfTTE3Tl9GTFQgMQp8ICNkZWZpbmUgSEFWRV9IQVJGQlVaWiAxCnwg I2RlZmluZSBVU0VfWENCIDEKfCAjZGVmaW5lIEhBVkVfWFBNIDEKfCAjZGVmaW5lIEhBVkVf SlBFRyAxCnwgI2RlZmluZSBIQVZFX0xDTVMyIDEKfCAjZGVmaW5lIEhBVkVfWkxJQiAxCnwg I2RlZmluZSBEWU5BTUlDX0xJQl9TVUZGSVggIi5zbyIKfCAjZGVmaW5lIERZTkFNSUNfTElC X1NFQ09OREFSWV9TVUZGSVggIiIKfCAjZGVmaW5lIEhBVkVfRExBRERSIDEKfCAjZGVmaW5l IEhBVkVfTU9EVUxFUyAxCnwgI2RlZmluZSBNT0RVTEVTX1NVRkZJWCAiLnNvIgp8ICNkZWZp bmUgTkFUSVZFX0VMSVNQX1NVRkZJWCAiLmVsbiIKfCAjZGVmaW5lIEhBVkVfUE5HIDEKfCAj ZGVmaW5lIEhBVkVfVElGRiAxCnwgI2RlZmluZSBIQVZFX0dJRiAxCnwgI2RlZmluZSBIQVZF X0dQTSAxCnwgI2RlZmluZSBIQVZFX1hfU00gMQp8ICNkZWZpbmUgSEFWRV9YUkFORFIgMQp8 ICNkZWZpbmUgSEFWRV9YSU5FUkFNQSAxCnwgI2RlZmluZSBIQVZFX1hGSVhFUyAxCnwgI2Rl ZmluZSBIQVZFX1hJTlBVVDIgMQp8ICNkZWZpbmUgSEFWRV9YSVNDUk9MTENMQVNTSU5GT19U WVBFIDEKfCAjZGVmaW5lIEhBVkVfWElUT1VDSENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5l IEhBVkVfWElCQVJSSUVSUkVMRUFTRVBPSU5URVJJTkZPX0RFVklDRUlEIDEKfCAjZGVmaW5l IEhBVkVfWElHRVNUVVJFQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQyAx CnwgI2RlZmluZSBIQVZFX1hTWU5DVFJJR0dFUkZFTkNFIDEKfCAjZGVmaW5lIEhBVkVfWERC RSAxCnwgI2RlZmluZSBIQVZFX1hDQl9TSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hTSEFQRSAx CnwgI2RlZmluZSBIQVZFX1hDT01QT1NJVEUgMQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwyIDEK fCAjZGVmaW5lIEhBVkVfTElOVVhfU0VDQ09NUF9IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9T RUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9G SUxURVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZJTFRFUl9IIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfU0VDQ09NUF9GSUxURVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBTSVpFT0Zf TE9ORyA4CnwgI2RlZmluZSBIQVZFX0FDQ0VQVDQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hESVIg MQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJVU0FH RSAxCnwgI2RlZmluZSBIQVZFX0dFVF9DVVJSRU5UX0RJUl9OQU1FIDEKfCAjZGVmaW5lIEhB VkVfTFJBTkQ0OCAxCnwgI2RlZmluZSBIQVZFX1JBTkRPTSAxCnwgI2RlZmluZSBIQVZFX1JJ TlQgMQp8ICNkZWZpbmUgSEFWRV9UUlVOQyAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwg I2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEK fCAjZGVmaW5lIEhBVkVfTkVXTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEK fCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8 ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJTSUdO QUwgMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9TRU5EVE8g MQp8ICNkZWZpbmUgSEFWRV9SRUNWRlJPTSAxCnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tOQU1F IDEKfCAjZGVmaW5lIEhBVkVfR0VUSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVJRkFE RFJTIDEKfCAjZGVmaW5lIEhBVkVfR0FJX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lO QyAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EUFdFTlQg MQp8ICNkZWZpbmUgSEFWRV9HRVRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0VOREdSRU5UIDEK fCAjZGVmaW5lIEhBVkVfUkVOQU1FQVQyIDEKfCAjZGVmaW5lIEhBVkVfQ0ZNQUtFUkFXIDEK fCAjZGVmaW5lIEhBVkVfQ0ZTRVRTUEVFRCAxCnwgI2RlZmluZSBIQVZFX19fRVhFQ1VUQUJM RV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFE X1NFVE5BTUVfTlAgMQp8ICNkZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfTUFEVklT RSAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9GUkFNRV9BRERSRVNTIDEKfCAjZGVmaW5l IEhBVkVfX19CVUlMVElOX1VOV0lORF9JTklUIDEKfCAjZGVmaW5lIEhBVkVfRlNFRUtPIDEK fCAjZGVmaW5lIEhBVkVfR1JBTlRQVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBUIDEKfCAjZGVm aW5lIEhBVkVfUE9TSVhfT1BFTlBUIDEKfCAjZGVmaW5lIFRFUk1JTkZPIDEKfCAjZGVmaW5l IFRFUk1JTkZPX0RFRklORVNfQkMgMQp8ICNkZWZpbmUgSEFWRV9USU1FUkZEIDEKfCAjZGVm aW5lIEhBVkVfVkFMR1JJTkRfVkFMR1JJTkRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9V TklQQUlSX1VOSUNPREUgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVm aW5lIEhBVkVfV09SS0lOR19GT1JLIDEKfCAjZGVmaW5lIEhBVkVfU05QUklOVEYgMQp8ICNk ZWZpbmUgSEFWRV9TUEFXTl9IIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV04gMQp8ICNk ZWZpbmUgSEFWRV9QT1NJWF9TUEFXTl9GSUxFX0FDVElPTlNfQUREQ0hESVJfTlAgMQp8ICNk ZWZpbmUgSEFWRV9QT1NJWF9TUEFXTkFUVFJfU0VURkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9E RUNMX1BPU0lYX1NQQVdOX1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX0dMSUIgMQp8ICNkZWZp bmUgSEFWRV9MQU5HSU5GT19DT0RFU0VUIDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fX05M X1BBUEVSX1dJRFRIIDEKfCAjZGVmaW5lIEhBVkVfTUJTVEFURV9UIDEKfCAjZGVmaW5lIEFN UEVSU0FORF9GVUxMX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9QVFlTIDEKfCAjZGVmaW5lIEhB VkVfU09DS0VUUyAxCnwgI2RlZmluZSBOVUxMX0RFVklDRSAiL2Rldi9udWxsIgp8ICNkZWZp bmUgU0VQQ0hBUiAnOicKfCAjZGVmaW5lIHN1YnByb2Nlc3NlcyAxCnwgI2RlZmluZSBVU0VS X0ZVTExfTkFNRSBwdy0+cHdfZ2Vjb3MKfCAjZGVmaW5lIERJUkVDVE9SWV9TRVAgJy8nCnwg I2RlZmluZSBJU19ERVZJQ0VfU0VQKF9jXykgMAp8ICNkZWZpbmUgSVNfRElSRUNUT1JZX1NF UChfY18pICgoX2NfKSA9PSBESVJFQ1RPUllfU0VQKQp8ICNkZWZpbmUgSVNfQU5ZX1NFUChf Y18pIChJU19ESVJFQ1RPUllfU0VQIChfY18pKQp8ICNkZWZpbmUgSEFWRV9QUk9DRlMgMQp8 ICNkZWZpbmUgREVGQVVMVF9TT1VORF9ERVZJQ0UgIi9kZXYvZHNwIgp8ICNkZWZpbmUgSU5U RVJSVVBUX0lOUFVUIDEKfCAjZGVmaW5lIE5BUlJPV1BST1RPIDEKfCAjZGVmaW5lIFVOSVg5 OF9QVFlTIDEKfCAjZGVmaW5lIFBUWV9JVEVSQVRJT04gaW50IGk7IGZvciAoaSA9IDA7IGkg PCAxOyBpKyspCnwgI2RlZmluZSBQVFlfVFRZX05BTUVfU1BSSU5URiB7IGNoYXIgKnB0eW5h bWUgPSAwOyBzaWdzZXRfdCBibG9ja2VkOyBzaWdlbXB0eXNldCAoJmJsb2NrZWQpOyBzaWdh ZGRzZXQgKCZibG9ja2VkLCBTSUdDSExEKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfQkxPQ0ss ICZibG9ja2VkLCAwKTsgaWYgKGdyYW50cHQgKGZkKSAhPSAtMSAmJiB1bmxvY2twdCAoZmQp ICE9IC0xKSBwdHluYW1lID0gcHRzbmFtZShmZCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX1VO QkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKCFwdHluYW1lKSB7IGVtYWNzX2Nsb3NlIChmZCk7 IHJldHVybiAtMTsgfSBzbnByaW50ZiAocHR5X25hbWUsIFBUWV9OQU1FX1NJWkUsICIlcyIs IHB0eW5hbWUpOyB9CnwgI2RlZmluZSBQVFlfT1BFTiBkbyB7IGZkID0gcG9zaXhfb3BlbnB0 IChPX1JEV1IgfCBPX0NMT0VYRUMgfCBPX05PQ1RUWSk7IGlmIChmZCA8IDAgJiYgZXJybm8g PT0gRUlOVkFMKSBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19OT0NUVFkpOyB9IHdo aWxlIChmYWxzZSkKfCAjZGVmaW5lIFBUWV9OQU1FX1NQUklOVEYgLyoqLwp8ICNkZWZpbmUg U0lHTkFMU19WSUFfQ0hBUkFDVEVSUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8 ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfX1NFVEpNUCAxCnwg I2RlZmluZSBIQVZFX1NJR1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NUQUNLX09WRVJGTE9X X0hBTkRMSU5HIDEKfCAjZGVmaW5lIFVTRyAvKiovCnwgI2RlZmluZSBHTlVfTElOVVggLyoq Lwp8ICNkZWZpbmUgU0laRU9GX1NQRUVEX1QgNAp8ICNkZWZpbmUgVVNBQkxFX0ZJT05SRUFE IDEKfCAjZGVmaW5lIFVTQUJMRV9TSUdJTyAxCnwgI2RlZmluZSBDT1BZUklHSFQgIkNvcHly aWdodCAoQykgMjAyMyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4iCnwgI2RlZmlu ZSBURVJNX0hFQURFUiAiZ3RrdXRpbC5oIgp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHVVJBVElP TiAieDg2XzY0LXBjLWxpbnV4LWdudSIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR19PUFRJT05T ICIiCnwgI2RlZmluZSBIQVZFX1hfV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gxMSAxCnwg I2RlZmluZSBIQVZFX1NUUlVDVF9BVFRSSUJVVEVfQUxJR05FRCAxCnwgI2RlZmluZSBIQVZF X1RZUEVPRiAxCnwgI2RlZmluZSBIQVZFX1NUQVRFTUVOVF9FWFBSRVNTSU9OUyAxCnwgI2Rl ZmluZSBNQUxMT0NfMF9JU19OT05OVUxMIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0FDTF9IIDEK fCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9G RCAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9T RVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJFRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9G Uk9NX01PREUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9URVhUIDEKfCAjZGVmaW5lIEhB VkVfQUNMX0RFTEVURV9ERUZfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9FWFRFTkRFRF9G SUxFIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgLyogRGVmaW5lIGFjbF9jcmVhdGVf ZW50cnlfbnAgdG8gYW4gaW5ub2N1b3VzIHZhcmlhbnQsIGluIGNhc2UgPGxpbWl0cy5oPiBk ZWNsYXJlcyBhY2xfY3JlYXRlX2VudHJ5X25wLgp8ICAgIEZvciBleGFtcGxlLCBIUC1VWCAx MWkgPGxpbWl0cy5oPiBkZWNsYXJlcyBnZXR0aW1lb2ZkYXkuICAqLwp8ICNkZWZpbmUgYWNs X2NyZWF0ZV9lbnRyeV9ucCBpbm5vY3VvdXNfYWNsX2NyZWF0ZV9lbnRyeV9ucAp8IAp8IC8q IFN5c3RlbSBoZWFkZXIgdG8gZGVmaW5lIF9fc3R1YiBtYWNyb3MgYW5kIGhvcGVmdWxseSBm ZXcgcHJvdG90eXBlcywKfCAgICB3aGljaCBjYW4gY29uZmxpY3Qgd2l0aCBjaGFyIGFjbF9j cmVhdGVfZW50cnlfbnAgKCk7IGJlbG93LiAgKi8KfCAKfCAjaW5jbHVkZSA8bGltaXRzLmg+ CnwgI3VuZGVmIGFjbF9jcmVhdGVfZW50cnlfbnAKfCAKfCAvKiBPdmVycmlkZSBhbnkgR0ND IGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4KfCAgICBVc2UgY2hhciBi ZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBHQ0MKfCAgICBi dWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBw bHkuICAqLwp8ICNpZmRlZiBfX2NwbHVzcGx1cwp8IGV4dGVybiAiQyIKfCAjZW5kaWYKfCBj aGFyIGFjbF9jcmVhdGVfZW50cnlfbnAgKCk7CnwgLyogVGhlIEdOVSBDIGxpYnJhcnkgZGVm aW5lcyB0aGlzIGZvciBmdW5jdGlvbnMgd2hpY2ggaXQgaW1wbGVtZW50cwp8ICAgICB0byBh bHdheXMgZmFpbCB3aXRoIEVOT1NZUy4gIFNvbWUgZnVuY3Rpb25zIGFyZSBhY3R1YWxseSBu YW1lZAp8ICAgICBzb21ldGhpbmcgc3RhcnRpbmcgd2l0aCBfXyBhbmQgdGhlIG5vcm1hbCBu YW1lIGlzIGFuIGFsaWFzLiAgKi8KfCAjaWYgZGVmaW5lZCBfX3N0dWJfYWNsX2NyZWF0ZV9l bnRyeV9ucCB8fCBkZWZpbmVkIF9fc3R1Yl9fX2FjbF9jcmVhdGVfZW50cnlfbnAKfCBjaG9r ZSBtZQp8ICNlbmRpZgp8IAp8IGludAp8IG1haW4gKHZvaWQpCnwgewp8IHJldHVybiBhY2xf Y3JlYXRlX2VudHJ5X25wICgpOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6 MjU0NDI6IHJlc3VsdDogbm8KY29uZmlndXJlOjI1NDQ4OiBjaGVja2luZyBmb3IgYWNsX3Rv X3Nob3J0X3RleHQKY29uZmlndXJlOjI1NDQ4OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAg ICAgIGNvbmZ0ZXN0LmMgLWxhY2wgICA+JjUgCi91c3IvYmluL2xkOiAvdG1wL2NjUlZBclBt Lm86IGluIGZ1bmN0aW9uIGBtYWluJzoKL2FwcC9lbWFjcy9jb25mdGVzdC5jOjMzNjogdW5k ZWZpbmVkIHJlZmVyZW5jZSB0byBgYWNsX3RvX3Nob3J0X3RleHQnCmNvbGxlY3QyOiBlcnJv cjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpjb25maWd1cmU6MjU0NDg6ICQ/ID0gMQpj b25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2Rl ZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFN RSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMwLjAuNTAiCnwgI2RlZmlu ZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdF X0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9V UkwgImh0dHBzOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgSEFW RV9QRFVNUEVSIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fSCAxCnwgI2RlZmluZSBIQVZFX1NU RExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRU WVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJ TkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1dD SEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFM TE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVf UFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZF X1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9MU0FOX0lOVEVSRkFDRV9IIDEK fCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0FTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUg SEFWRV9TQU5JVElaRVJfQ09NTU9OX0lOVEVSRkFDRV9ERUZTX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmlu ZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5l IEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5l IEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVkZTX0ggMQp8ICNkZWZp bmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19DREVGU19IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX0lFRUU3NTRfSCAxCnwgI2Rl ZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAj ZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JBTkRPTV9IIDEK fCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2Rl ZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVm aW5lIF9IUFVYX0FMVF9YT1BFTl9TT0NLRVRfQVBJIDEKfCAjZGVmaW5lIF9ORVRCU0RfU09V UkNFIDEKfCAjZGVmaW5lIF9PUEVOQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfUE9TSVhfUFRI UkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0FUVFJJ QlNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0JGUF9FWFRfXyAx CnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfREZQX0VYVF9fIDEKfCAjZGVmaW5l IF9fU1REQ19XQU5UX0lFQ182MDU1OV9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9J RUNfNjA1NTlfRlVOQ1NfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5 X1RZUEVTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0xJQl9FWFQyX18gMQp8ICNk ZWZpbmUgX19TVERDX1dBTlRfTUFUSF9TUEVDX0ZVTkNTX18gMQp8ICNkZWZpbmUgX1RBTkRF TV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgR0NDX0xJ TlQgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAjZGVmaW5lIEhBVkVf U1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2RlZmluZSBIQVZF X1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfQUREUl9OT19SQU5ET01JWkUg MQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZU0lO Rk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19X QUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZFX0lGQURE UlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8ICNkZWZp bmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVD VF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJf QlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERSIDEKfCAj ZGVmaW5lIEhBVkVfU0JSSyAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVm aW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVf RkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfQ0FOT05JQ0FMSVpFX0ZJTEVfTkFNRSAxCnwgI2Rl ZmluZSBIQVZFX1JFQUxQQVRIIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUg SEFWRV9GQ0hNT0RBVCAxCnwgI2RlZmluZSBIQVZFX0xDSE1PRCAxCnwgI2RlZmluZSBIQVZF X0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVfRlNU QVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9G REFZIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURf U0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfSVNC TEFOSyAxCnwgI2RlZmluZSBIQVZFX0lTV0NUWVBFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9J TUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FMVElN RV9SIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBTWVNURU1f TUFMTE9DIDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQUQg MQp8ICNkZWZpbmUgVEhSRUFEU19FTkFCTEVEIDEKfCAjZGVmaW5lIEhBVkVfWEtCIDEKfCAj ZGVmaW5lIEhBVkVfWEtCUkVGUkVTSEtFWUJPQVJETUFQUElORyAxCnwgI2RlZmluZSBIQVZF X1hLQkZSRUVOQU1FUyAxCnwgI2RlZmluZSBIQVZFX1hSTVNFVERBVEFCQVNFIDEKfCAjZGVm aW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RSSU5HIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVF Tk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhBVkVfWERJU1BMQVlDRUxMUyAxCnwgI2Rl ZmluZSBIQVZFX1hERVNUUk9ZU1VCV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gxMVI2IDEK fCAjZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVmaW5lIEhBVkVfWElDQ0FMTEJBQ0tfQ0FM TEJBQ0sgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9YSU0gMQp8ICNkZWZpbmUgSEFWRV9SU1ZH IDEKfCAjZGVmaW5lIEhBVkVfV0VCUCAxCnwgI2RlZmluZSBIQVZFX1NRTElURTMgMQp8ICNk ZWZpbmUgSEFWRV9TUUxJVEUzX0xPQURfRVhURU5TSU9OIDEKfCAjZGVmaW5lIEhBVkVfR0VU QUREUklORk9fQSAxCnwgI2RlZmluZSBIQVZFX0dUSzMgMQp8ICNkZWZpbmUgR0RLX0RJU0FC TEVfREVQUkVDQVRJT05fV0FSTklOR1MgMQp8ICNkZWZpbmUgR0xJQl9ESVNBQkxFX0RFUFJF Q0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIFVTRV9HVEsgMQp8ICNkZWZpbmUgSEFWRV9N QUxMT0NfVFJJTSAxCnwgI2RlZmluZSBIQVZFX0RCVVMgMQp8ICNkZWZpbmUgSEFWRV9EQlVT X1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19UWVBFX0lTX1ZBTElE IDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAxCnwgI2RlZmluZSBI QVZFX0RCVVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVf SU5URVJGQUNFIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIgMQp8ICNk ZWZpbmUgSEFWRV9HU0VUVElOR1MgMQp8ICNkZWZpbmUgSEFWRV9MSUJTRUxJTlVYIDEKfCAj ZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhBVkVfTElCU1lTVEVNRCAxCnwgI2Rl ZmluZSBIQVZFX0pTT04gMQp8ICNkZWZpbmUgSEFWRV9JTk9USUZZIDEKfCAjZGVmaW5lIFVT RV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBVU0VfVE9PTEtJVF9TQ1JPTExfQkFSUyAxCnwg I2RlZmluZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBVU0VfWElNIDEKfCAjZGVmaW5lIEhBVkVf WFJFTkRFUiAxCnwgI2RlZmluZSBVU0VfQ0FJUk9fWENCIDEKfCAjZGVmaW5lIFVTRV9DQUlS TyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAjZGVmaW5lIEhBVkVfRlRfRkFDRV9H RVRDSEFSVkFSSUFOVElOREVYIDEKfCAjZGVmaW5lIEhBVkVfTElCT1RGIDEKfCAjZGVmaW5l IEhBVkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTIDEKfCAjZGVmaW5lIEhBVkVfTTE3Tl9G TFQgMQp8ICNkZWZpbmUgSEFWRV9IQVJGQlVaWiAxCnwgI2RlZmluZSBVU0VfWENCIDEKfCAj ZGVmaW5lIEhBVkVfWFBNIDEKfCAjZGVmaW5lIEhBVkVfSlBFRyAxCnwgI2RlZmluZSBIQVZF X0xDTVMyIDEKfCAjZGVmaW5lIEhBVkVfWkxJQiAxCnwgI2RlZmluZSBEWU5BTUlDX0xJQl9T VUZGSVggIi5zbyIKfCAjZGVmaW5lIERZTkFNSUNfTElCX1NFQ09OREFSWV9TVUZGSVggIiIK fCAjZGVmaW5lIEhBVkVfRExBRERSIDEKfCAjZGVmaW5lIEhBVkVfTU9EVUxFUyAxCnwgI2Rl ZmluZSBNT0RVTEVTX1NVRkZJWCAiLnNvIgp8ICNkZWZpbmUgTkFUSVZFX0VMSVNQX1NVRkZJ WCAiLmVsbiIKfCAjZGVmaW5lIEhBVkVfUE5HIDEKfCAjZGVmaW5lIEhBVkVfVElGRiAxCnwg I2RlZmluZSBIQVZFX0dJRiAxCnwgI2RlZmluZSBIQVZFX0dQTSAxCnwgI2RlZmluZSBIQVZF X1hfU00gMQp8ICNkZWZpbmUgSEFWRV9YUkFORFIgMQp8ICNkZWZpbmUgSEFWRV9YSU5FUkFN QSAxCnwgI2RlZmluZSBIQVZFX1hGSVhFUyAxCnwgI2RlZmluZSBIQVZFX1hJTlBVVDIgMQp8 ICNkZWZpbmUgSEFWRV9YSVNDUk9MTENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVf WElUT1VDSENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWElCQVJSSUVSUkVMRUFT RVBPSU5URVJJTkZPX0RFVklDRUlEIDEKfCAjZGVmaW5lIEhBVkVfWElHRVNUVVJFQ0xBU1NJ TkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQyAxCnwgI2RlZmluZSBIQVZFX1hTWU5D VFJJR0dFUkZFTkNFIDEKfCAjZGVmaW5lIEhBVkVfWERCRSAxCnwgI2RlZmluZSBIQVZFX1hD Ql9TSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hTSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hDT01Q T1NJVEUgMQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwyIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhf U0VDQ09NUF9IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX1NFVF9NT0RFX0ZJTFRF UiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9GSUxURVJfRkxBR19UU1lOQyAxCnwg I2RlZmluZSBIQVZFX0xJTlVYX0ZJTFRFUl9IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUND T01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9GSUxU RVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA4CnwgI2RlZmluZSBIQVZF X0FDQ0VQVDQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hESVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRI T1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJVU0FHRSAxCnwgI2RlZmluZSBIQVZFX0dF VF9DVVJSRU5UX0RJUl9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfTFJBTkQ0OCAxCnwgI2RlZmlu ZSBIQVZFX1JBTkRPTSAxCnwgI2RlZmluZSBIQVZFX1JJTlQgMQp8ICNkZWZpbmUgSEFWRV9U UlVOQyAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VT SVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfTkVXTE9D QUxFIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJ TUlUIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFE X1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJTSUdOQUwgMQp8ICNkZWZpbmUgSEFWRV9T RVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9TRU5EVE8gMQp8ICNkZWZpbmUgSEFWRV9SRUNW RlJPTSAxCnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tOQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VU SUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVf R0FJX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dF VFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRH UkVOVCAxCnwgI2RlZmluZSBIQVZFX0VOREdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfUkVOQU1F QVQyIDEKfCAjZGVmaW5lIEhBVkVfQ0ZNQUtFUkFXIDEKfCAjZGVmaW5lIEhBVkVfQ0ZTRVRT UEVFRCAxCnwgI2RlZmluZSBIQVZFX19fRVhFQ1VUQUJMRV9TVEFSVCAxCnwgI2RlZmluZSBI QVZFX0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NFVE5BTUVfTlAgMQp8ICNkZWZp bmUgSEFWRV9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTElHTkVEX0FM TE9DIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfTUFEVklTRSAxCnwgI2RlZmluZSBIQVZFX19f QlVJTFRJTl9GUkFNRV9BRERSRVNTIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX1VOV0lO RF9JTklUIDEKfCAjZGVmaW5lIEhBVkVfRlNFRUtPIDEKfCAjZGVmaW5lIEhBVkVfR1JBTlRQ VCAxCnwgI2RlZmluZSBIQVZFX0dFVFBUIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfT1BFTlBU IDEKfCAjZGVmaW5lIFRFUk1JTkZPIDEKfCAjZGVmaW5lIFRFUk1JTkZPX0RFRklORVNfQkMg MQp8ICNkZWZpbmUgSEFWRV9USU1FUkZEIDEKfCAjZGVmaW5lIEhBVkVfVkFMR1JJTkRfVkFM R1JJTkRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9VTklQQUlSX1VOSUNPREUgMQp8ICNk ZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19GT1JL IDEKfCAjZGVmaW5lIEhBVkVfU05QUklOVEYgMQp8ICNkZWZpbmUgSEFWRV9TUEFXTl9IIDEK fCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV04gMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFX Tl9GSUxFX0FDVElPTlNfQUREQ0hESVJfTlAgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFX TkFUVFJfU0VURkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BPU0lYX1NQQVdOX1NFVFNJ RCAxCnwgI2RlZmluZSBIQVZFX0dMSUIgMQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5GT19DT0RF U0VUIDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fX05MX1BBUEVSX1dJRFRIIDEKfCAjZGVm aW5lIEhBVkVfTUJTVEFURV9UIDEKfCAjZGVmaW5lIEFNUEVSU0FORF9GVUxMX05BTUUgMQp8 ICNkZWZpbmUgSEFWRV9QVFlTIDEKfCAjZGVmaW5lIEhBVkVfU09DS0VUUyAxCnwgI2RlZmlu ZSBOVUxMX0RFVklDRSAiL2Rldi9udWxsIgp8ICNkZWZpbmUgU0VQQ0hBUiAnOicKfCAjZGVm aW5lIHN1YnByb2Nlc3NlcyAxCnwgI2RlZmluZSBVU0VSX0ZVTExfTkFNRSBwdy0+cHdfZ2Vj b3MKfCAjZGVmaW5lIERJUkVDVE9SWV9TRVAgJy8nCnwgI2RlZmluZSBJU19ERVZJQ0VfU0VQ KF9jXykgMAp8ICNkZWZpbmUgSVNfRElSRUNUT1JZX1NFUChfY18pICgoX2NfKSA9PSBESVJF Q1RPUllfU0VQKQp8ICNkZWZpbmUgSVNfQU5ZX1NFUChfY18pIChJU19ESVJFQ1RPUllfU0VQ IChfY18pKQp8ICNkZWZpbmUgSEFWRV9QUk9DRlMgMQp8ICNkZWZpbmUgREVGQVVMVF9TT1VO RF9ERVZJQ0UgIi9kZXYvZHNwIgp8ICNkZWZpbmUgSU5URVJSVVBUX0lOUFVUIDEKfCAjZGVm aW5lIE5BUlJPV1BST1RPIDEKfCAjZGVmaW5lIFVOSVg5OF9QVFlTIDEKfCAjZGVmaW5lIFBU WV9JVEVSQVRJT04gaW50IGk7IGZvciAoaSA9IDA7IGkgPCAxOyBpKyspCnwgI2RlZmluZSBQ VFlfVFRZX05BTUVfU1BSSU5URiB7IGNoYXIgKnB0eW5hbWUgPSAwOyBzaWdzZXRfdCBibG9j a2VkOyBzaWdlbXB0eXNldCAoJmJsb2NrZWQpOyBzaWdhZGRzZXQgKCZibG9ja2VkLCBTSUdD SExEKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKGdy YW50cHQgKGZkKSAhPSAtMSAmJiB1bmxvY2twdCAoZmQpICE9IC0xKSBwdHluYW1lID0gcHRz bmFtZShmZCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX1VOQkxPQ0ssICZibG9ja2VkLCAwKTsg aWYgKCFwdHluYW1lKSB7IGVtYWNzX2Nsb3NlIChmZCk7IHJldHVybiAtMTsgfSBzbnByaW50 ZiAocHR5X25hbWUsIFBUWV9OQU1FX1NJWkUsICIlcyIsIHB0eW5hbWUpOyB9CnwgI2RlZmlu ZSBQVFlfT1BFTiBkbyB7IGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX0NMT0VYRUMg fCBPX05PQ1RUWSk7IGlmIChmZCA8IDAgJiYgZXJybm8gPT0gRUlOVkFMKSBmZCA9IHBvc2l4 X29wZW5wdCAoT19SRFdSIHwgT19OT0NUVFkpOyB9IHdoaWxlIChmYWxzZSkKfCAjZGVmaW5l IFBUWV9OQU1FX1NQUklOVEYgLyoqLwp8ICNkZWZpbmUgU0lHTkFMU19WSUFfQ0hBUkFDVEVS UyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dP UktTIDEKfCAjZGVmaW5lIEhBVkVfX1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVEpN UCAxCnwgI2RlZmluZSBIQVZFX1NUQUNLX09WRVJGTE9XX0hBTkRMSU5HIDEKfCAjZGVmaW5l IFVTRyAvKiovCnwgI2RlZmluZSBHTlVfTElOVVggLyoqLwp8ICNkZWZpbmUgU0laRU9GX1NQ RUVEX1QgNAp8ICNkZWZpbmUgVVNBQkxFX0ZJT05SRUFEIDEKfCAjZGVmaW5lIFVTQUJMRV9T SUdJTyAxCnwgI2RlZmluZSBDT1BZUklHSFQgIkNvcHlyaWdodCAoQykgMjAyMyBGcmVlIFNv ZnR3YXJlIEZvdW5kYXRpb24sIEluYy4iCnwgI2RlZmluZSBURVJNX0hFQURFUiAiZ3RrdXRp bC5oIgp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHVVJBVElPTiAieDg2XzY0LXBjLWxpbnV4LWdu dSIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR19PUFRJT05TICIiCnwgI2RlZmluZSBIQVZFX1hf V0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gxMSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9B VFRSSUJVVEVfQUxJR05FRCAxCnwgI2RlZmluZSBIQVZFX1RZUEVPRiAxCnwgI2RlZmluZSBI QVZFX1NUQVRFTUVOVF9FWFBSRVNTSU9OUyAxCnwgI2RlZmluZSBNQUxMT0NfMF9JU19OT05O VUxMIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0FDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dF VF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FD TF9TRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRkQgMQp8ICNkZWZpbmUgSEFW RV9BQ0xfRlJFRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX01PREUgMQp8ICNkZWZpbmUg SEFWRV9BQ0xfRlJPTV9URVhUIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0RFTEVURV9ERUZfRklM RSAxCnwgI2RlZmluZSBIQVZFX0FDTF9FWFRFTkRFRF9GSUxFIDEKfCAvKiBlbmQgY29uZmRl ZnMuaC4gICovCnwgLyogRGVmaW5lIGFjbF90b19zaG9ydF90ZXh0IHRvIGFuIGlubm9jdW91 cyB2YXJpYW50LCBpbiBjYXNlIDxsaW1pdHMuaD4gZGVjbGFyZXMgYWNsX3RvX3Nob3J0X3Rl eHQuCnwgICAgRm9yIGV4YW1wbGUsIEhQLVVYIDExaSA8bGltaXRzLmg+IGRlY2xhcmVzIGdl dHRpbWVvZmRheS4gICovCnwgI2RlZmluZSBhY2xfdG9fc2hvcnRfdGV4dCBpbm5vY3VvdXNf YWNsX3RvX3Nob3J0X3RleHQKfCAKfCAvKiBTeXN0ZW0gaGVhZGVyIHRvIGRlZmluZSBfX3N0 dWIgbWFjcm9zIGFuZCBob3BlZnVsbHkgZmV3IHByb3RvdHlwZXMsCnwgICAgd2hpY2ggY2Fu IGNvbmZsaWN0IHdpdGggY2hhciBhY2xfdG9fc2hvcnRfdGV4dCAoKTsgYmVsb3cuICAqLwp8 IAp8ICNpbmNsdWRlIDxsaW1pdHMuaD4KfCAjdW5kZWYgYWNsX3RvX3Nob3J0X3RleHQKfCAK fCAvKiBPdmVycmlkZSBhbnkgR0NDIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBl cnJvci4KfCAgICBVc2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJu IHR5cGUgb2YgYSBHQ0MKfCAgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90 b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLwp8ICNpZmRlZiBfX2NwbHVzcGx1cwp8IGV4 dGVybiAiQyIKfCAjZW5kaWYKfCBjaGFyIGFjbF90b19zaG9ydF90ZXh0ICgpOwp8IC8qIFRo ZSBHTlUgQyBsaWJyYXJ5IGRlZmluZXMgdGhpcyBmb3IgZnVuY3Rpb25zIHdoaWNoIGl0IGlt cGxlbWVudHMKfCAgICAgdG8gYWx3YXlzIGZhaWwgd2l0aCBFTk9TWVMuICBTb21lIGZ1bmN0 aW9ucyBhcmUgYWN0dWFsbHkgbmFtZWQKfCAgICAgc29tZXRoaW5nIHN0YXJ0aW5nIHdpdGgg X18gYW5kIHRoZSBub3JtYWwgbmFtZSBpcyBhbiBhbGlhcy4gICovCnwgI2lmIGRlZmluZWQg X19zdHViX2FjbF90b19zaG9ydF90ZXh0IHx8IGRlZmluZWQgX19zdHViX19fYWNsX3RvX3No b3J0X3RleHQKfCBjaG9rZSBtZQp8ICNlbmRpZgp8IAp8IGludAp8IG1haW4gKHZvaWQpCnwg ewp8IHJldHVybiBhY2xfdG9fc2hvcnRfdGV4dCAoKTsKfCAgIDsKfCAgIHJldHVybiAwOwp8 IH0KY29uZmlndXJlOjI1NDQ4OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToyNTQ1NDogY2hlY2tp bmcgZm9yIGFjbF9mcmVlX3RleHQKY29uZmlndXJlOjI1NDU0OiBnY2MgLW8gY29uZnRlc3Qg LWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgLWxhY2wgICA+JjUgCi91c3IvYmluL2xkOiAvdG1w L2NjM3kwdTJ4Lm86IGluIGZ1bmN0aW9uIGBtYWluJzoKL2FwcC9lbWFjcy9jb25mdGVzdC5j OjMzNjogdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgYWNsX2ZyZWVfdGV4dCcKY29sbGVjdDI6 IGVycm9yOiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVzCmNvbmZpZ3VyZToyNTQ1NDogJD8g PSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8K fCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9U QVJOQU1FICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMzAuMC41MCIKfCAj ZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1hY3MgMzAuMC41MCIKfCAjZGVmaW5lIFBB Q0tBR0VfQlVHUkVQT1JUICJidWctZ251LWVtYWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNL QUdFX1VSTCAiaHR0cHM6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmlu ZSBIQVZFX1BEVU1QRVIgMQp8ICNkZWZpbmUgSEFWRV9TVERJT19IIDEKfCAjZGVmaW5lIEhB VkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZF X0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZF X1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhB VkVfV0NIQVJfSCAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZTX0ggMQp8ICNkZWZpbmUgSEFW RV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TWVNJTkZPX0ggMQp8ICNkZWZpbmUg SEFWRV9QVFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5l IEhBVkVfVVRNUF9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0xTQU5fSU5URVJGQUNF X0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQVNBTl9JTlRFUkZBQ0VfSCAxCnwgI2Rl ZmluZSBIQVZFX1NBTklUSVpFUl9DT01NT05fSU5URVJGQUNFX0RFRlNfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAj ZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNk ZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX0VYRUNJTkZPX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVERJT19FWFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19WRlNfSCAxCnwg I2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0NERUZTX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfSUVFRTc1NF9IIDEK fCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0gg MQp8ICNkZWZpbmUgSEFWRV9TVERCT09MX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkFORE9N X0ggMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIF9BTExfU09VUkNFIDEK fCAjZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8 ICNkZWZpbmUgX0hQVVhfQUxUX1hPUEVOX1NPQ0tFVF9BUEkgMQp8ICNkZWZpbmUgX05FVEJT RF9TT1VSQ0UgMQp8ICNkZWZpbmUgX09QRU5CU0RfU09VUkNFIDEKfCAjZGVmaW5lIF9QT1NJ WF9QVEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlf QVRUUklCU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfQkZQX0VY VF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9ERlBfRVhUX18gMQp8ICNk ZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19X QU5UX0lFQ182MDU1OV9GVU5DU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNf NjA1NTlfVFlQRVNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfTElCX0VYVDJfXyAx CnwgI2RlZmluZSBfX1NURENfV0FOVF9NQVRIX1NQRUNfRlVOQ1NfXyAxCnwgI2RlZmluZSBf VEFOREVNX1NPVVJDRSAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBH Q0NfTElOVCAxCnwgI2RlZmluZSBTWVNURU1fVFlQRSAiZ251L2xpbnV4Igp8ICNkZWZpbmUg SEFWRV9TWVNfU09VTkRDQVJEX0ggMQp8ICNkZWZpbmUgSEFWRV9BTFNBIDEKfCAjZGVmaW5l IEhBVkVfU09VTkQgMQp8ICNkZWZpbmUgSEFWRV9QRVJTT05BTElUWV9BRERSX05PX1JBTkRP TUlaRSAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX1NZU0lORk8gMQp8ICNkZWZpbmUgTElOVVhf U1lTSU5GT19VTklUIDEKfCAjZGVmaW5lIEhBVkVfVEVSTV9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX05FVF9JRl9IIDEKfCAjZGVmaW5lIEhBVkVf SUZBRERSU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9GTEFHUyAxCnwg I2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfSFdBRERSIDEKfCAjZGVmaW5lIEhBVkVf U1RSVUNUX0lGUkVRX0lGUl9ORVRNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVR X0lGUl9CUk9BREFERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0FERFIg MQp8ICNkZWZpbmUgSEFWRV9TQlJLIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8 ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfVkZPUksgMQp8ICNkZWZpbmUg SEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9DQU5PTklDQUxJWkVfRklMRV9OQU1FIDEK fCAjZGVmaW5lIEhBVkVfUkVBTFBBVEggMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwgI2Rl ZmluZSBIQVZFX0ZDSE1PREFUIDEKfCAjZGVmaW5lIEhBVkVfTENITU9EIDEKfCAjZGVmaW5l IEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgSEFW RV9GU1RBVEFUIDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRU SU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9QU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfUFRI UkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFW RV9JU0JMQU5LIDEKfCAjZGVmaW5lIEhBVkVfSVNXQ1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9T VFJUT0lNQVggMQp8ICNkZWZpbmUgSEFWRV9TWU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVfTE9D QUxUSU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIFNZ U1RFTV9NQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9NTUFQIDEKfCAjZGVmaW5lIEhBVkVfUFRI UkVBRCAxCnwgI2RlZmluZSBUSFJFQURTX0VOQUJMRUQgMQp8ICNkZWZpbmUgSEFWRV9YS0Ig MQp8ICNkZWZpbmUgSEFWRV9YS0JSRUZSRVNIS0VZQk9BUkRNQVBQSU5HIDEKfCAjZGVmaW5l IEhBVkVfWEtCRlJFRU5BTUVTIDEKfCAjZGVmaW5lIEhBVkVfWFJNU0VUREFUQUJBU0UgMQp8 ICNkZWZpbmUgSEFWRV9YU0NSRUVOUkVTT1VSQ0VTVFJJTkcgMQp8ICNkZWZpbmUgSEFWRV9Y U0NSRUVOTlVNQkVST0ZTQ1JFRU4gMQp8ICNkZWZpbmUgSEFWRV9YRElTUExBWUNFTExTIDEK fCAjZGVmaW5lIEhBVkVfWERFU1RST1lTVUJXSU5ET1dTIDEKfCAjZGVmaW5lIEhBVkVfWDEx UjYgMQp8ICNkZWZpbmUgSEFWRV9YX0kxOE4gMQp8ICNkZWZpbmUgSEFWRV9YSUNDQUxMQkFD S19DQUxMQkFDSyAxCnwgI2RlZmluZSBIQVZFX1gxMVI2X1hJTSAxCnwgI2RlZmluZSBIQVZF X1JTVkcgMQp8ICNkZWZpbmUgSEFWRV9XRUJQIDEKfCAjZGVmaW5lIEhBVkVfU1FMSVRFMyAx CnwgI2RlZmluZSBIQVZFX1NRTElURTNfTE9BRF9FWFRFTlNJT04gMQp8ICNkZWZpbmUgSEFW RV9HRVRBRERSSU5GT19BIDEKfCAjZGVmaW5lIEhBVkVfR1RLMyAxCnwgI2RlZmluZSBHREtf RElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAxCnwgI2RlZmluZSBHTElCX0RJU0FCTEVf REVQUkVDQVRJT05fV0FSTklOR1MgMQp8ICNkZWZpbmUgVVNFX0dUSyAxCnwgI2RlZmluZSBI QVZFX01BTExPQ19UUklNIDEKfCAjZGVmaW5lIEhBVkVfREJVUyAxCnwgI2RlZmluZSBIQVZF X0RCVVNfV0FUQ0hfR0VUX1VOSVhfRkQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1RZUEVfSVNf VkFMSUQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0JVU19OQU1FIDEKfCAjZGVm aW5lIEhBVkVfREJVU19WQUxJREFURV9QQVRIIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJ REFURV9JTlRFUkZBQ0UgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX01FTUJFUiAx CnwgI2RlZmluZSBIQVZFX0dTRVRUSU5HUyAxCnwgI2RlZmluZSBIQVZFX0xJQlNFTElOVVgg MQp8ICNkZWZpbmUgSEFWRV9HTlVUTFMgMQp8ICNkZWZpbmUgSEFWRV9MSUJTWVNURU1EIDEK fCAjZGVmaW5lIEhBVkVfSlNPTiAxCnwgI2RlZmluZSBIQVZFX0lOT1RJRlkgMQp8ICNkZWZp bmUgVVNFX0ZJTEVfTk9USUZZIDEKfCAjZGVmaW5lIFVTRV9UT09MS0lUX1NDUk9MTF9CQVJT IDEKfCAjZGVmaW5lIEhBVkVfWElNIDEKfCAjZGVmaW5lIFVTRV9YSU0gMQp8ICNkZWZpbmUg SEFWRV9YUkVOREVSIDEKfCAjZGVmaW5lIFVTRV9DQUlST19YQ0IgMQp8ICNkZWZpbmUgVVNF X0NBSVJPIDEKfCAjZGVmaW5lIEhBVkVfRlJFRVRZUEUgMQp8ICNkZWZpbmUgSEFWRV9GVF9G QUNFX0dFVENIQVJWQVJJQU5USU5ERVggMQp8ICNkZWZpbmUgSEFWRV9MSUJPVEYgMQp8ICNk ZWZpbmUgSEFWRV9PVEZfR0VUX1ZBUklBVElPTl9HTFlQSFMgMQp8ICNkZWZpbmUgSEFWRV9N MTdOX0ZMVCAxCnwgI2RlZmluZSBIQVZFX0hBUkZCVVpaIDEKfCAjZGVmaW5lIFVTRV9YQ0Ig MQp8ICNkZWZpbmUgSEFWRV9YUE0gMQp8ICNkZWZpbmUgSEFWRV9KUEVHIDEKfCAjZGVmaW5l IEhBVkVfTENNUzIgMQp8ICNkZWZpbmUgSEFWRV9aTElCIDEKfCAjZGVmaW5lIERZTkFNSUNf TElCX1NVRkZJWCAiLnNvIgp8ICNkZWZpbmUgRFlOQU1JQ19MSUJfU0VDT05EQVJZX1NVRkZJ WCAiIgp8ICNkZWZpbmUgSEFWRV9ETEFERFIgMQp8ICNkZWZpbmUgSEFWRV9NT0RVTEVTIDEK fCAjZGVmaW5lIE1PRFVMRVNfU1VGRklYICIuc28iCnwgI2RlZmluZSBOQVRJVkVfRUxJU1Bf U1VGRklYICIuZWxuIgp8ICNkZWZpbmUgSEFWRV9QTkcgMQp8ICNkZWZpbmUgSEFWRV9USUZG IDEKfCAjZGVmaW5lIEhBVkVfR0lGIDEKfCAjZGVmaW5lIEhBVkVfR1BNIDEKfCAjZGVmaW5l IEhBVkVfWF9TTSAxCnwgI2RlZmluZSBIQVZFX1hSQU5EUiAxCnwgI2RlZmluZSBIQVZFX1hJ TkVSQU1BIDEKfCAjZGVmaW5lIEhBVkVfWEZJWEVTIDEKfCAjZGVmaW5lIEhBVkVfWElOUFVU MiAxCnwgI2RlZmluZSBIQVZFX1hJU0NST0xMQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUg SEFWRV9YSVRPVUNIQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YSUJBUlJJRVJS RUxFQVNFUE9JTlRFUklORk9fREVWSUNFSUQgMQp8ICNkZWZpbmUgSEFWRV9YSUdFU1RVUkVD TEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hTWU5DIDEKfCAjZGVmaW5lIEhBVkVf WFNZTkNUUklHR0VSRkVOQ0UgMQp8ICNkZWZpbmUgSEFWRV9YREJFIDEKfCAjZGVmaW5lIEhB VkVfWENCX1NIQVBFIDEKfCAjZGVmaW5lIEhBVkVfWFNIQVBFIDEKfCAjZGVmaW5lIEhBVkVf WENPTVBPU0lURSAxCnwgI2RlZmluZSBIQVZFX0xJQlhNTDIgMQp8ICNkZWZpbmUgSEFWRV9M SU5VWF9TRUNDT01QX0ggMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfU0VUX01PREVf RklMVEVSIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX0ZJTFRFUl9GTEFHX1RTWU5D IDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfRklMVEVSX0ggMQp8ICNkZWZpbmUgSEFWRV9ERUNM X1NFQ0NPTVBfU0VUX01PREVfRklMVEVSIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01Q X0ZJTFRFUl9GTEFHX1RTWU5DIDEKfCAjZGVmaW5lIFNJWkVPRl9MT05HIDgKfCAjZGVmaW5l IEhBVkVfQUNDRVBUNCAxCnwgI2RlZmluZSBIQVZFX0ZDSERJUiAxCnwgI2RlZmluZSBIQVZF X0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUUlVTQUdFIDEKfCAjZGVmaW5lIEhB VkVfR0VUX0NVUlJFTlRfRElSX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9MUkFORDQ4IDEKfCAj ZGVmaW5lIEhBVkVfUkFORE9NIDEKfCAjZGVmaW5lIEhBVkVfUklOVCAxCnwgI2RlZmluZSBI QVZFX1RSVU5DIDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfR0VU UEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9O RVdMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9T RVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TSFVURE9XTiAxCnwgI2RlZmluZSBIQVZFX1BU SFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlNJR05BTCAxCnwgI2RlZmluZSBI QVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX1NFTkRUTyAxCnwgI2RlZmluZSBIQVZF X1JFQ1ZGUk9NIDEKfCAjZGVmaW5lIEhBVkVfR0VUU09DS05BTUUgMQp8ICNkZWZpbmUgSEFW RV9HRVRJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfRlJFRUlGQUREUlMgMQp8ICNkZWZpbmUg SEFWRV9HQUlfU1RSRVJST1IgMQp8ICNkZWZpbmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhB VkVfR0VUUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRQV0VOVCAxCnwgI2RlZmluZSBIQVZF X0dFVEdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5ER1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9S RU5BTUVBVDIgMQp8ICNkZWZpbmUgSEFWRV9DRk1BS0VSQVcgMQp8ICNkZWZpbmUgSEFWRV9D RlNFVFNQRUVEIDEKfCAjZGVmaW5lIEhBVkVfX19FWEVDVVRBQkxFX1NUQVJUIDEKfCAjZGVm aW5lIEhBVkVfTE9HMiAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0VUTkFNRV9OUCAxCnwg I2RlZmluZSBIQVZFX0FMSUdORURfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0FMSUdO RURfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9NQURWSVNFIDEKfCAjZGVmaW5lIEhB VkVfX19CVUlMVElOX0ZSQU1FX0FERFJFU1MgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5f VU5XSU5EX0lOSVQgMQp8ICNkZWZpbmUgSEFWRV9GU0VFS08gMQp8ICNkZWZpbmUgSEFWRV9H UkFOVFBUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFQgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9P UEVOUFQgMQp8ICNkZWZpbmUgVEVSTUlORk8gMQp8ICNkZWZpbmUgVEVSTUlORk9fREVGSU5F U19CQyAxCnwgI2RlZmluZSBIQVZFX1RJTUVSRkQgMQp8ICNkZWZpbmUgSEFWRV9WQUxHUklO RF9WQUxHUklORF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1VOSVBBSVJfVU5JQ09ERSAx CnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5H X0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9TTlBSSU5URiAxCnwgI2RlZmluZSBIQVZFX1NQQVdO X0ggMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTiAxCnwgI2RlZmluZSBIQVZFX1BPU0lY X1NQQVdOX0ZJTEVfQUNUSU9OU19BRERDSERJUl9OUCAxCnwgI2RlZmluZSBIQVZFX1BPU0lY X1NQQVdOQVRUUl9TRVRGTEFHUyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUE9TSVhfU1BBV05f U0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVfR0xJQiAxCnwgI2RlZmluZSBIQVZFX0xBTkdJTkZP X0NPREVTRVQgMQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5GT19fTkxfUEFQRVJfV0lEVEggMQp8 ICNkZWZpbmUgSEFWRV9NQlNUQVRFX1QgMQp8ICNkZWZpbmUgQU1QRVJTQU5EX0ZVTExfTkFN RSAxCnwgI2RlZmluZSBIQVZFX1BUWVMgMQp8ICNkZWZpbmUgSEFWRV9TT0NLRVRTIDEKfCAj ZGVmaW5lIE5VTExfREVWSUNFICIvZGV2L251bGwiCnwgI2RlZmluZSBTRVBDSEFSICc6Jwp8 ICNkZWZpbmUgc3VicHJvY2Vzc2VzIDEKfCAjZGVmaW5lIFVTRVJfRlVMTF9OQU1FIHB3LT5w d19nZWNvcwp8ICNkZWZpbmUgRElSRUNUT1JZX1NFUCAnLycKfCAjZGVmaW5lIElTX0RFVklD RV9TRVAoX2NfKSAwCnwgI2RlZmluZSBJU19ESVJFQ1RPUllfU0VQKF9jXykgKChfY18pID09 IERJUkVDVE9SWV9TRVApCnwgI2RlZmluZSBJU19BTllfU0VQKF9jXykgKElTX0RJUkVDVE9S WV9TRVAgKF9jXykpCnwgI2RlZmluZSBIQVZFX1BST0NGUyAxCnwgI2RlZmluZSBERUZBVUxU X1NPVU5EX0RFVklDRSAiL2Rldi9kc3AiCnwgI2RlZmluZSBJTlRFUlJVUFRfSU5QVVQgMQp8 ICNkZWZpbmUgTkFSUk9XUFJPVE8gMQp8ICNkZWZpbmUgVU5JWDk4X1BUWVMgMQp8ICNkZWZp bmUgUFRZX0lURVJBVElPTiBpbnQgaTsgZm9yIChpID0gMDsgaSA8IDE7IGkrKykKfCAjZGVm aW5lIFBUWV9UVFlfTkFNRV9TUFJJTlRGIHsgY2hhciAqcHR5bmFtZSA9IDA7IHNpZ3NldF90 IGJsb2NrZWQ7IHNpZ2VtcHR5c2V0ICgmYmxvY2tlZCk7IHNpZ2FkZHNldCAoJmJsb2NrZWQs IFNJR0NITEQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19CTE9DSywgJmJsb2NrZWQsIDApOyBp ZiAoZ3JhbnRwdCAoZmQpICE9IC0xICYmIHVubG9ja3B0IChmZCkgIT0gLTEpIHB0eW5hbWUg PSBwdHNuYW1lKGZkKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfVU5CTE9DSywgJmJsb2NrZWQs IDApOyBpZiAoIXB0eW5hbWUpIHsgZW1hY3NfY2xvc2UgKGZkKTsgcmV0dXJuIC0xOyB9IHNu cHJpbnRmIChwdHlfbmFtZSwgUFRZX05BTUVfU0laRSwgIiVzIiwgcHR5bmFtZSk7IH0KfCAj ZGVmaW5lIFBUWV9PUEVOIGRvIHsgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fQ0xP RVhFQyB8IE9fTk9DVFRZKTsgaWYgKGZkIDwgMCAmJiBlcnJubyA9PSBFSU5WQUwpIGZkID0g cG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX05PQ1RUWSk7IH0gd2hpbGUgKGZhbHNlKQp8ICNk ZWZpbmUgUFRZX05BTUVfU1BSSU5URiAvKiovCnwgI2RlZmluZSBTSUdOQUxTX1ZJQV9DSEFS QUNURVJTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBHQ19TRVRK TVBfV09SS1MgMQp8ICNkZWZpbmUgSEFWRV9fU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU0lH U0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU1RBQ0tfT1ZFUkZMT1dfSEFORExJTkcgMQp8ICNk ZWZpbmUgVVNHIC8qKi8KfCAjZGVmaW5lIEdOVV9MSU5VWCAvKiovCnwgI2RlZmluZSBTSVpF T0ZfU1BFRURfVCA0CnwgI2RlZmluZSBVU0FCTEVfRklPTlJFQUQgMQp8ICNkZWZpbmUgVVNB QkxFX1NJR0lPIDEKfCAjZGVmaW5lIENPUFlSSUdIVCAiQ29weXJpZ2h0IChDKSAyMDIzIEZy ZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiIKfCAjZGVmaW5lIFRFUk1fSEVBREVSICJn dGt1dGlsLmgiCnwgI2RlZmluZSBFTUFDU19DT05GSUdVUkFUSU9OICJ4ODZfNjQtcGMtbGlu dXgtZ251Igp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHX09QVElPTlMgIiIKfCAjZGVmaW5lIEhB VkVfWF9XSU5ET1dTIDEKfCAjZGVmaW5lIEhBVkVfWDExIDEKfCAjZGVmaW5lIEhBVkVfU1RS VUNUX0FUVFJJQlVURV9BTElHTkVEIDEKfCAjZGVmaW5lIEhBVkVfVFlQRU9GIDEKfCAjZGVm aW5lIEhBVkVfU1RBVEVNRU5UX0VYUFJFU1NJT05TIDEKfCAjZGVmaW5lIE1BTExPQ18wX0lT X05PTk5VTEwgMQp8ICNkZWZpbmUgSEFWRV9TWVNfQUNMX0ggMQp8ICNkZWZpbmUgSEFWRV9B Q0xfR0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZEIDEKfCAjZGVmaW5lIEhB VkVfQUNMX1NFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX1NFVF9GRCAxCnwgI2RlZmlu ZSBIQVZFX0FDTF9GUkVFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZST01fTU9ERSAxCnwgI2Rl ZmluZSBIQVZFX0FDTF9GUk9NX1RFWFQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfREVMRVRFX0RF Rl9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VYVEVOREVEX0ZJTEUgMQp8IC8qIGVuZCBj b25mZGVmcy5oLiAgKi8KfCAvKiBEZWZpbmUgYWNsX2ZyZWVfdGV4dCB0byBhbiBpbm5vY3Vv dXMgdmFyaWFudCwgaW4gY2FzZSA8bGltaXRzLmg+IGRlY2xhcmVzIGFjbF9mcmVlX3RleHQu CnwgICAgRm9yIGV4YW1wbGUsIEhQLVVYIDExaSA8bGltaXRzLmg+IGRlY2xhcmVzIGdldHRp bWVvZmRheS4gICovCnwgI2RlZmluZSBhY2xfZnJlZV90ZXh0IGlubm9jdW91c19hY2xfZnJl ZV90ZXh0CnwgCnwgLyogU3lzdGVtIGhlYWRlciB0byBkZWZpbmUgX19zdHViIG1hY3JvcyBh bmQgaG9wZWZ1bGx5IGZldyBwcm90b3R5cGVzLAp8ICAgIHdoaWNoIGNhbiBjb25mbGljdCB3 aXRoIGNoYXIgYWNsX2ZyZWVfdGV4dCAoKTsgYmVsb3cuICAqLwp8IAp8ICNpbmNsdWRlIDxs aW1pdHMuaD4KfCAjdW5kZWYgYWNsX2ZyZWVfdGV4dAp8IAp8IC8qIE92ZXJyaWRlIGFueSBH Q0MgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLgp8ICAgIFVzZSBjaGFy IGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIEdDQwp8ICAg IGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBh cHBseS4gICovCnwgI2lmZGVmIF9fY3BsdXNwbHVzCnwgZXh0ZXJuICJDIgp8ICNlbmRpZgp8 IGNoYXIgYWNsX2ZyZWVfdGV4dCAoKTsKfCAvKiBUaGUgR05VIEMgbGlicmFyeSBkZWZpbmVz IHRoaXMgZm9yIGZ1bmN0aW9ucyB3aGljaCBpdCBpbXBsZW1lbnRzCnwgICAgIHRvIGFsd2F5 cyBmYWlsIHdpdGggRU5PU1lTLiAgU29tZSBmdW5jdGlvbnMgYXJlIGFjdHVhbGx5IG5hbWVk CnwgICAgIHNvbWV0aGluZyBzdGFydGluZyB3aXRoIF9fIGFuZCB0aGUgbm9ybWFsIG5hbWUg aXMgYW4gYWxpYXMuICAqLwp8ICNpZiBkZWZpbmVkIF9fc3R1Yl9hY2xfZnJlZV90ZXh0IHx8 IGRlZmluZWQgX19zdHViX19fYWNsX2ZyZWVfdGV4dAp8IGNob2tlIG1lCnwgI2VuZGlmCnwg CnwgaW50CnwgbWFpbiAodm9pZCkKfCB7CnwgcmV0dXJuIGFjbF9mcmVlX3RleHQgKCk7Cnwg ICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToyNTQ1NDogcmVzdWx0OiBubwpjb25m aWd1cmU6MjU0NjM6IGNoZWNraW5nIGZvciB3b3JraW5nIGFjbF9nZXRfZmlsZQpjb25maWd1 cmU6MjU0ODY6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAtbGFj bCAgID4mNSAKY29uZmlndXJlOjI1NDg2OiAkPyA9IDAKY29uZmlndXJlOjI1NDk3OiByZXN1 bHQ6IHllcwpjb25maWd1cmU6MjU1MDU6IGNoZWNraW5nIGZvciBhY2wvbGliYWNsLmgKY29u ZmlndXJlOjI1NTA1OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1 cmU6MjU1MDU6ICQ/ID0gMApjb25maWd1cmU6MjU1MDU6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy ZToyNTUyMzogY2hlY2tpbmcgZm9yIGFjbF9lbnRyaWVzCmNvbmZpZ3VyZToyNTUyMzogZ2Nj IC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jIC1sYWNsICAgPiY1IApjb25m aWd1cmU6MjU1MjM6ICQ/ID0gMApjb25maWd1cmU6MjU1MjM6IHJlc3VsdDogeWVzCmNvbmZp Z3VyZToyNTUzNjogY2hlY2tpbmcgZm9yIEFDTF9GSVJTVF9FTlRSWQpjb25maWd1cmU6MjU1 NTU6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyNTU1NTog JD8gPSAwCmNvbmZpZ3VyZToyNTU2MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI1NTcwOiBj aGVja2luZyBmb3IgQUNMX1RZUEVfRVhURU5ERUQKY29uZmlndXJlOjI1NTg5OiBnY2MgLWMg LWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOjMxNDoxMjogZXJyb3I6ICdB Q0xfVFlQRV9FWFRFTkRFRCcgdW5kZWNsYXJlZCBoZXJlIChub3QgaW4gYSBmdW5jdGlvbikK ICAzMTQgfCBpbnQgdHlwZSA9IEFDTF9UWVBFX0VYVEVOREVEOwogICAgICB8ICAgICAgICAg ICAgXn5+fn5+fn5+fn5+fn5+fn4KY29uZmlndXJlOjI1NTg5OiAkPyA9IDEKY29uZmlndXJl OiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFD S0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNz Igp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FH RV9TVFJJTkcgIkdOVSBFbWFjcyAzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBP UlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJodHRw czovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIEhBVkVfUERVTVBF UiAxCnwgI2RlZmluZSBIQVZFX1NURElPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAx CnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAx CnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19I IDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEK fCAjZGVmaW5lIEhBVkVfTElOVVhfRlNfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1BUWV9IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRT TkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1QX0gg MQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfTFNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmlu ZSBIQVZFX1NBTklUSVpFUl9BU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FO SVRJWkVSX0NPTU1PTl9JTlRFUkZBQ0VfREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NP Q0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9Q VEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwgI2RlZmluZSBIQVZFX0RJ UkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1NU RElPX0VYVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1ZGU19IIDEKfCAjZGVmaW5lIEhBVkVf R0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfQ0RFRlNfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9JRUVFNzU0X0ggMQp8ICNkZWZpbmUgSEFW RV9MSU1JVFNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBI QVZFX1NUREJPT0xfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SQU5ET01fSCAxCnwgI2RlZmlu ZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RB UldJTl9DX1NPVVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBfSFBV WF9BTFRfWE9QRU5fU09DS0VUX0FQSSAxCnwgI2RlZmluZSBfTkVUQlNEX1NPVVJDRSAxCnwg I2RlZmluZSBfT1BFTkJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VN QU5USUNTIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9BVFRSSUJTX0VYVF9f IDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9CRlBfRVhUX18gMQp8ICNkZWZp bmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0RGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENf V0FOVF9JRUNfNjA1NTlfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5 X0ZVTkNTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9UWVBFU19F WFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9MSUJfRVhUMl9fIDEKfCAjZGVmaW5lIF9f U1REQ19XQU5UX01BVEhfU1BFQ19GVU5DU19fIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNF IDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIEdDQ19MSU5UIDEKfCAj ZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VO RENBUkRfSCAxCnwgI2RlZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAx CnwgI2RlZmluZSBIQVZFX1BFUlNPTkFMSVRZX0FERFJfTk9fUkFORE9NSVpFIDEKfCAjZGVm aW5lIEhBVkVfTElOVVhfU1lTSU5GTyAxCnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQg MQp8ICNkZWZpbmUgSEFWRV9URVJNX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEK fCAjZGVmaW5lIEhBVkVfTkVUX0lGX0ggMQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0ggMQp8 ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVf U1RSVUNUX0lGUkVRX0lGUl9IV0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFf SUZSX05FVE1BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQURE UiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQUREUiAxCnwgI2RlZmluZSBI QVZFX1NCUksgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZF X0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9WRk9SSyAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAx CnwgI2RlZmluZSBIQVZFX0NBTk9OSUNBTElaRV9GSUxFX05BTUUgMQp8ICNkZWZpbmUgSEFW RV9SRUFMUEFUSCAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfRkNI TU9EQVQgMQp8ICNkZWZpbmUgSEFWRV9MQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAx CnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8 ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwg I2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sg MQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX0lTQkxBTksgMQp8 ICNkZWZpbmUgSEFWRV9JU1dDVFlQRSAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwg I2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwg I2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgU1lTVEVNX01BTExPQyAx CnwgI2RlZmluZSBIQVZFX01NQVAgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEIDEKfCAjZGVm aW5lIFRIUkVBRFNfRU5BQkxFRCAxCnwgI2RlZmluZSBIQVZFX1hLQiAxCnwgI2RlZmluZSBI QVZFX1hLQlJFRlJFU0hLRVlCT0FSRE1BUFBJTkcgMQp8ICNkZWZpbmUgSEFWRV9YS0JGUkVF TkFNRVMgMQp8ICNkZWZpbmUgSEFWRV9YUk1TRVREQVRBQkFTRSAxCnwgI2RlZmluZSBIQVZF X1hTQ1JFRU5SRVNPVVJDRVNUUklORyAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJP RlNDUkVFTiAxCnwgI2RlZmluZSBIQVZFX1hESVNQTEFZQ0VMTFMgMQp8ICNkZWZpbmUgSEFW RV9YREVTVFJPWVNVQldJTkRPV1MgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNiAxCnwgI2RlZmlu ZSBIQVZFX1hfSTE4TiAxCnwgI2RlZmluZSBIQVZFX1hJQ0NBTExCQUNLX0NBTExCQUNLIDEK fCAjZGVmaW5lIEhBVkVfWDExUjZfWElNIDEKfCAjZGVmaW5lIEhBVkVfUlNWRyAxCnwgI2Rl ZmluZSBIQVZFX1dFQlAgMQp8ICNkZWZpbmUgSEFWRV9TUUxJVEUzIDEKfCAjZGVmaW5lIEhB VkVfU1FMSVRFM19MT0FEX0VYVEVOU0lPTiAxCnwgI2RlZmluZSBIQVZFX0dFVEFERFJJTkZP X0EgMQp8ICNkZWZpbmUgSEFWRV9HVEszIDEKfCAjZGVmaW5lIEdES19ESVNBQkxFX0RFUFJF Q0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIEdMSUJfRElTQUJMRV9ERVBSRUNBVElPTl9X QVJOSU5HUyAxCnwgI2RlZmluZSBVU0VfR1RLIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX1RS SU0gMQp8ICNkZWZpbmUgSEFWRV9EQlVTIDEKfCAjZGVmaW5lIEhBVkVfREJVU19XQVRDSF9H RVRfVU5JWF9GRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVFlQRV9JU19WQUxJRCAxCnwgI2Rl ZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfQlVTX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9EQlVT X1ZBTElEQVRFX1BBVEggMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0lOVEVSRkFD RSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfTUVNQkVSIDEKfCAjZGVmaW5lIEhB VkVfR1NFVFRJTkdTIDEKfCAjZGVmaW5lIEhBVkVfTElCU0VMSU5VWCAxCnwgI2RlZmluZSBI QVZFX0dOVVRMUyAxCnwgI2RlZmluZSBIQVZFX0xJQlNZU1RFTUQgMQp8ICNkZWZpbmUgSEFW RV9KU09OIDEKfCAjZGVmaW5lIEhBVkVfSU5PVElGWSAxCnwgI2RlZmluZSBVU0VfRklMRV9O T1RJRlkgMQp8ICNkZWZpbmUgVVNFX1RPT0xLSVRfU0NST0xMX0JBUlMgMQp8ICNkZWZpbmUg SEFWRV9YSU0gMQp8ICNkZWZpbmUgVVNFX1hJTSAxCnwgI2RlZmluZSBIQVZFX1hSRU5ERVIg MQp8ICNkZWZpbmUgVVNFX0NBSVJPX1hDQiAxCnwgI2RlZmluZSBVU0VfQ0FJUk8gMQp8ICNk ZWZpbmUgSEFWRV9GUkVFVFlQRSAxCnwgI2RlZmluZSBIQVZFX0ZUX0ZBQ0VfR0VUQ0hBUlZB UklBTlRJTkRFWCAxCnwgI2RlZmluZSBIQVZFX0xJQk9URiAxCnwgI2RlZmluZSBIQVZFX09U Rl9HRVRfVkFSSUFUSU9OX0dMWVBIUyAxCnwgI2RlZmluZSBIQVZFX00xN05fRkxUIDEKfCAj ZGVmaW5lIEhBVkVfSEFSRkJVWlogMQp8ICNkZWZpbmUgVVNFX1hDQiAxCnwgI2RlZmluZSBI QVZFX1hQTSAxCnwgI2RlZmluZSBIQVZFX0pQRUcgMQp8ICNkZWZpbmUgSEFWRV9MQ01TMiAx CnwgI2RlZmluZSBIQVZFX1pMSUIgMQp8ICNkZWZpbmUgRFlOQU1JQ19MSUJfU1VGRklYICIu c28iCnwgI2RlZmluZSBEWU5BTUlDX0xJQl9TRUNPTkRBUllfU1VGRklYICIiCnwgI2RlZmlu ZSBIQVZFX0RMQUREUiAxCnwgI2RlZmluZSBIQVZFX01PRFVMRVMgMQp8ICNkZWZpbmUgTU9E VUxFU19TVUZGSVggIi5zbyIKfCAjZGVmaW5lIE5BVElWRV9FTElTUF9TVUZGSVggIi5lbG4i CnwgI2RlZmluZSBIQVZFX1BORyAxCnwgI2RlZmluZSBIQVZFX1RJRkYgMQp8ICNkZWZpbmUg SEFWRV9HSUYgMQp8ICNkZWZpbmUgSEFWRV9HUE0gMQp8ICNkZWZpbmUgSEFWRV9YX1NNIDEK fCAjZGVmaW5lIEhBVkVfWFJBTkRSIDEKfCAjZGVmaW5lIEhBVkVfWElORVJBTUEgMQp8ICNk ZWZpbmUgSEFWRV9YRklYRVMgMQp8ICNkZWZpbmUgSEFWRV9YSU5QVVQyIDEKfCAjZGVmaW5l IEhBVkVfWElTQ1JPTExDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hJVE9VQ0hD TEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hJQkFSUklFUlJFTEVBU0VQT0lOVEVS SU5GT19ERVZJQ0VJRCAxCnwgI2RlZmluZSBIQVZFX1hJR0VTVFVSRUNMQVNTSU5GT19UWVBF IDEKfCAjZGVmaW5lIEhBVkVfWFNZTkMgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQ1RSSUdHRVJG RU5DRSAxCnwgI2RlZmluZSBIQVZFX1hEQkUgMQp8ICNkZWZpbmUgSEFWRV9YQ0JfU0hBUEUg MQp8ICNkZWZpbmUgSEFWRV9YU0hBUEUgMQp8ICNkZWZpbmUgSEFWRV9YQ09NUE9TSVRFIDEK fCAjZGVmaW5lIEhBVkVfTElCWE1MMiAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX1NFQ0NPTVBf SCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUg SEFWRV9MSU5VWF9GSUxURVJfSCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRf TU9ERV9GSUxURVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdf VFNZTkMgMQp8ICNkZWZpbmUgU0laRU9GX0xPTkcgOAp8ICNkZWZpbmUgSEFWRV9BQ0NFUFQ0 IDEKfCAjZGVmaW5lIEhBVkVfRkNIRElSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUg MQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNBR0UgMQp8ICNkZWZpbmUgSEFWRV9HRVRfQ1VSUkVO VF9ESVJfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0xSQU5ENDggMQp8ICNkZWZpbmUgSEFWRV9S QU5ET00gMQp8ICNkZWZpbmUgSEFWRV9SSU5UIDEKfCAjZGVmaW5lIEhBVkVfVFJVTkMgMQp8 ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwg I2RlZmluZSBIQVZFX1NFVExPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX05FV0xPQ0FMRSAxCnwg I2RlZmluZSBIQVZFX0dFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NFVFJMSU1JVCAxCnwg I2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNL IDEKfCAjZGVmaW5lIEhBVkVfU1RSU0lHTkFMIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVS IDEKfCAjZGVmaW5lIEhBVkVfU0VORFRPIDEKfCAjZGVmaW5lIEhBVkVfUkVDVkZST00gMQp8 ICNkZWZpbmUgSEFWRV9HRVRTT0NLTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVElGQUREUlMg MQp8ICNkZWZpbmUgSEFWRV9GUkVFSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0dBSV9TVFJF UlJPUiAxCnwgI2RlZmluZSBIQVZFX1NZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAx CnwgI2RlZmluZSBIQVZFX0VORFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8 ICNkZWZpbmUgSEFWRV9FTkRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX1JFTkFNRUFUMiAxCnwg I2RlZmluZSBIQVZFX0NGTUFLRVJBVyAxCnwgI2RlZmluZSBIQVZFX0NGU0VUU1BFRUQgMQp8 ICNkZWZpbmUgSEFWRV9fX0VYRUNVVEFCTEVfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9MT0cy IDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TRVROQU1FX05QIDEKfCAjZGVmaW5lIEhBVkVf QUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfQUxJR05FRF9BTExPQyAxCnwg I2RlZmluZSBIQVZFX1BPU0lYX01BRFZJU0UgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5f RlJBTUVfQUREUkVTUyAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9VTldJTkRfSU5JVCAx CnwgI2RlZmluZSBIQVZFX0ZTRUVLTyAxCnwgI2RlZmluZSBIQVZFX0dSQU5UUFQgMQp8ICNk ZWZpbmUgSEFWRV9HRVRQVCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX09QRU5QVCAxCnwgI2Rl ZmluZSBURVJNSU5GTyAxCnwgI2RlZmluZSBURVJNSU5GT19ERUZJTkVTX0JDIDEKfCAjZGVm aW5lIEhBVkVfVElNRVJGRCAxCnwgI2RlZmluZSBIQVZFX1ZBTEdSSU5EX1ZBTEdSSU5EX0gg MQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVU5JUEFJUl9VTklDT0RFIDEKfCAjZGVmaW5lIEhB VkVfV09SS0lOR19WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfRk9SSyAxCnwgI2Rl ZmluZSBIQVZFX1NOUFJJTlRGIDEKfCAjZGVmaW5lIEhBVkVfU1BBV05fSCAxCnwgI2RlZmlu ZSBIQVZFX1BPU0lYX1NQQVdOIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV05fRklMRV9B Q1RJT05TX0FERENIRElSX05QIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV05BVFRSX1NF VEZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QT1NJWF9TUEFXTl9TRVRTSUQgMQp8ICNk ZWZpbmUgSEFWRV9HTElCIDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fQ09ERVNFVCAxCnwg I2RlZmluZSBIQVZFX0xBTkdJTkZPX19OTF9QQVBFUl9XSURUSCAxCnwgI2RlZmluZSBIQVZF X01CU1RBVEVfVCAxCnwgI2RlZmluZSBBTVBFUlNBTkRfRlVMTF9OQU1FIDEKfCAjZGVmaW5l IEhBVkVfUFRZUyAxCnwgI2RlZmluZSBIQVZFX1NPQ0tFVFMgMQp8ICNkZWZpbmUgTlVMTF9E RVZJQ0UgIi9kZXYvbnVsbCIKfCAjZGVmaW5lIFNFUENIQVIgJzonCnwgI2RlZmluZSBzdWJw cm9jZXNzZXMgMQp8ICNkZWZpbmUgVVNFUl9GVUxMX05BTUUgcHctPnB3X2dlY29zCnwgI2Rl ZmluZSBESVJFQ1RPUllfU0VQICcvJwp8ICNkZWZpbmUgSVNfREVWSUNFX1NFUChfY18pIDAK fCAjZGVmaW5lIElTX0RJUkVDVE9SWV9TRVAoX2NfKSAoKF9jXykgPT0gRElSRUNUT1JZX1NF UCkKfCAjZGVmaW5lIElTX0FOWV9TRVAoX2NfKSAoSVNfRElSRUNUT1JZX1NFUCAoX2NfKSkK fCAjZGVmaW5lIEhBVkVfUFJPQ0ZTIDEKfCAjZGVmaW5lIERFRkFVTFRfU09VTkRfREVWSUNF ICIvZGV2L2RzcCIKfCAjZGVmaW5lIElOVEVSUlVQVF9JTlBVVCAxCnwgI2RlZmluZSBOQVJS T1dQUk9UTyAxCnwgI2RlZmluZSBVTklYOThfUFRZUyAxCnwgI2RlZmluZSBQVFlfSVRFUkFU SU9OIGludCBpOyBmb3IgKGkgPSAwOyBpIDwgMTsgaSsrKQp8ICNkZWZpbmUgUFRZX1RUWV9O QU1FX1NQUklOVEYgeyBjaGFyICpwdHluYW1lID0gMDsgc2lnc2V0X3QgYmxvY2tlZDsgc2ln ZW1wdHlzZXQgKCZibG9ja2VkKTsgc2lnYWRkc2V0ICgmYmxvY2tlZCwgU0lHQ0hMRCk7IHB0 aHJlYWRfc2lnbWFzayAoU0lHX0JMT0NLLCAmYmxvY2tlZCwgMCk7IGlmIChncmFudHB0IChm ZCkgIT0gLTEgJiYgdW5sb2NrcHQgKGZkKSAhPSAtMSkgcHR5bmFtZSA9IHB0c25hbWUoZmQp OyBwdGhyZWFkX3NpZ21hc2sgKFNJR19VTkJMT0NLLCAmYmxvY2tlZCwgMCk7IGlmICghcHR5 bmFtZSkgeyBlbWFjc19jbG9zZSAoZmQpOyByZXR1cm4gLTE7IH0gc25wcmludGYgKHB0eV9u YW1lLCBQVFlfTkFNRV9TSVpFLCAiJXMiLCBwdHluYW1lKTsgfQp8ICNkZWZpbmUgUFRZX09Q RU4gZG8geyBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19DTE9FWEVDIHwgT19OT0NU VFkpOyBpZiAoZmQgPCAwICYmIGVycm5vID09IEVJTlZBTCkgZmQgPSBwb3NpeF9vcGVucHQg KE9fUkRXUiB8IE9fTk9DVFRZKTsgfSB3aGlsZSAoZmFsc2UpCnwgI2RlZmluZSBQVFlfTkFN RV9TUFJJTlRGIC8qKi8KfCAjZGVmaW5lIFNJR05BTFNfVklBX0NIQVJBQ1RFUlMgMQp8ICNk ZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwg I2RlZmluZSBIQVZFX19TRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRVRKTVAgMQp8ICNk ZWZpbmUgSEFWRV9TVEFDS19PVkVSRkxPV19IQU5ETElORyAxCnwgI2RlZmluZSBVU0cgLyoq Lwp8ICNkZWZpbmUgR05VX0xJTlVYIC8qKi8KfCAjZGVmaW5lIFNJWkVPRl9TUEVFRF9UIDQK fCAjZGVmaW5lIFVTQUJMRV9GSU9OUkVBRCAxCnwgI2RlZmluZSBVU0FCTEVfU0lHSU8gMQp8 ICNkZWZpbmUgQ09QWVJJR0hUICJDb3B5cmlnaHQgKEMpIDIwMjMgRnJlZSBTb2Z0d2FyZSBG b3VuZGF0aW9uLCBJbmMuIgp8ICNkZWZpbmUgVEVSTV9IRUFERVIgImd0a3V0aWwuaCIKfCAj ZGVmaW5lIEVNQUNTX0NPTkZJR1VSQVRJT04gIng4Nl82NC1wYy1saW51eC1nbnUiCnwgI2Rl ZmluZSBFTUFDU19DT05GSUdfT1BUSU9OUyAiIgp8ICNkZWZpbmUgSEFWRV9YX1dJTkRPV1Mg MQp8ICNkZWZpbmUgSEFWRV9YMTEgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfQVRUUklCVVRF X0FMSUdORUQgMQp8ICNkZWZpbmUgSEFWRV9UWVBFT0YgMQp8ICNkZWZpbmUgSEFWRV9TVEFU RU1FTlRfRVhQUkVTU0lPTlMgMQp8ICNkZWZpbmUgTUFMTE9DXzBfSVNfTk9OTlVMTCAxCnwg I2RlZmluZSBIQVZFX1NZU19BQ0xfSCAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRklMRSAx CnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZJ TEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZS RUUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9NT0RFIDEKfCAjZGVmaW5lIEhBVkVfQUNM X0ZST01fVEVYVCAxCnwgI2RlZmluZSBIQVZFX0FDTF9ERUxFVEVfREVGX0ZJTEUgMQp8ICNk ZWZpbmUgSEFWRV9BQ0xfRVhURU5ERURfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9MSUJB Q0xfSCAxCnwgI2RlZmluZSBIQVZFX0FDTF9FTlRSSUVTIDEKfCAjZGVmaW5lIEhBVkVfQUNM X0ZJUlNUX0VOVFJZIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN5 cy90eXBlcy5oPgp8ICNpbmNsdWRlIDxzeXMvYWNsLmg+CnwgaW50IHR5cGUgPSBBQ0xfVFlQ RV9FWFRFTkRFRDsKfCBpbnQKfCBtYWluICh2b2lkKQp8IHsKfCAKfCAgIDsKfCAgIHJldHVy biAwOwp8IH0KY29uZmlndXJlOjI1NTk3OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToyNTc3OTog Y2hlY2tpbmcgZm9yIHdvcmtpbmcgYWxsb2NhLmgKY29uZmlndXJlOjI1Nzk3OiBnY2MgLW8g Y29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCmNvbmZpZ3VyZToyNTc5 NzogJD8gPSAwCmNvbmZpZ3VyZToyNTgwNjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI1ODE0 OiBjaGVja2luZyBmb3IgYWxsb2NhCmNvbmZpZ3VyZToyNTg1OTogcmVzdWx0OiB5ZXMKY29u ZmlndXJlOjI1OTMxOiBjaGVja2luZyBmb3IgYSByYWNlLWZyZWUgbWtkaXIgLXAKY29uZmln dXJlOjI1OTc1OiByZXN1bHQ6IC91c3IvYmluL21rZGlyIC1wCmNvbmZpZ3VyZToyNTk4MDog Y2hlY2tpbmcgd2hldGhlciB0aGUgcHJlcHJvY2Vzc29yIHN1cHBvcnRzIGluY2x1ZGVfbmV4 dApjb25maWd1cmU6MjYwMTk6IGdjYyAtYyAtZzMgLU8yICAgIC1JY29uZnRlc3RkMWIgLUlj b25mdGVzdGQyIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyNjAxOTogJD8gPSAwCmNvbmZp Z3VyZToyNjA0MjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI2MDY0OiBjaGVja2luZyB3aGV0 aGVyIHNvdXJjZSBjb2RlIGxpbmUgbGVuZ3RoIGlzIHVubGltaXRlZApjb25maWd1cmU6MjYw ODk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNjE4NDogY2hlY2tpbmcgd2hldGhlciBsc3Rh dCBjb3JyZWN0bHkgaGFuZGxlcyB0cmFpbGluZyBzbGFzaApjb25maWd1cmU6MjYyMzE6IGdj YyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAgID4mNSAKY29uZmlndXJl OjI2MjMxOiAkPyA9IDAKY29uZmlndXJlOjI2MjMxOiAuL2NvbmZ0ZXN0CmNvbmZpZ3VyZToy NjIzMTogJD8gPSAwCmNvbmZpZ3VyZToyNjI0NDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI2 MjU3OiBjaGVja2luZyB3aGV0aGVyIC8vIGlzIGRpc3RpbmN0IGZyb20gLwpjb25maWd1cmU6 MjYyODc6IHJlc3VsdDogbm8KY29uZmlndXJlOjI2Mjk5OiBjaGVja2luZyB3aGV0aGVyIHJl YWxwYXRoIHdvcmtzCmNvbmZpZ3VyZToyNjUxMzogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIg ICAgICBjb25mdGVzdC5jICAgPiY1IApjb25maWd1cmU6MjY1MTM6ICQ/ID0gMApjb25maWd1 cmU6MjY1MTM6IC4vY29uZnRlc3QKY29uZmlndXJlOjI2NTEzOiAkPyA9IDAKY29uZmlndXJl OjI2NTMwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjY1NTE6IGNoZWNraW5nIGZvciBmYWNj ZXNzYXQKY29uZmlndXJlOjI2NTg4OiBjaGVja2luZyBmb3IgZmFjY2Vzc2F0CmNvbmZpZ3Vy ZToyNjU4ODogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1 IApjb25maWd1cmU6MjY1ODg6ICQ/ID0gMApjb25maWd1cmU6MjY1ODg6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZToyNjYwMzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI2NjIxOiBjaGVja2lu ZyBmb3IgZ2V0Y3dkCmNvbmZpZ3VyZToyNjYyMTogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIg ICAgICBjb25mdGVzdC5jICAgPiY1IApjb25maWd1cmU6MjY2MjE6ICQ/ID0gMApjb25maWd1 cmU6MjY2MjE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNjgzMjogY2hlY2tpbmcgZm9yIEMv QysrIHJlc3RyaWN0IGtleXdvcmQKY29uZmlndXJlOjI2ODYyOiBnY2MgLWMgLWczIC1PMiAg ICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjY4NjI6ICQ/ID0gMApjb25maWd1cmU6MjY4 NzE6IHJlc3VsdDogX19yZXN0cmljdF9fCmNvbmZpZ3VyZToyNzMyNDogY2hlY2tpbmcgd2hl dGhlciBieXRlIG9yZGVyaW5nIGlzIGJpZ2VuZGlhbgpjb25maWd1cmU6MjczNDA6IGdjYyAt YyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6MzIxOjE2OiBlcnJvcjog dW5rbm93biB0eXBlIG5hbWUgJ25vdCcKICAzMjEgfCAgICAgICAgICAgICAgICBub3QgYSB1 bml2ZXJzYWwgY2FwYWJsZSBjb21waWxlcgogICAgICB8ICAgICAgICAgICAgICAgIF5+fgpj b25mdGVzdC5jOjMyMToyMjogZXJyb3I6IGV4cGVjdGVkICc9JywgJywnLCAnOycsICdhc20n IG9yICdfX2F0dHJpYnV0ZV9fJyBiZWZvcmUgJ3VuaXZlcnNhbCcKICAzMjEgfCAgICAgICAg ICAgICAgICBub3QgYSB1bml2ZXJzYWwgY2FwYWJsZSBjb21waWxlcgogICAgICB8ICAgICAg ICAgICAgICAgICAgICAgIF5+fn5+fn5+fgpjb25mdGVzdC5jOjMyMToyMjogZXJyb3I6IHVu a25vd24gdHlwZSBuYW1lICd1bml2ZXJzYWwnCmNvbmZpZ3VyZToyNzM0MDogJD8gPSAxCmNv bmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVm aW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1F ICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMzAuMC41MCIKfCAjZGVmaW5l IFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1hY3MgMzAuMC41MCIKfCAjZGVmaW5lIFBBQ0tBR0Vf QlVHUkVQT1JUICJidWctZ251LWVtYWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdFX1VS TCAiaHR0cHM6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmluZSBIQVZF X1BEVU1QRVIgMQp8ICNkZWZpbmUgSEFWRV9TVERJT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RE TElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZ UEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklO R1NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf VFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfV0NI QVJfSCAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZTX0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxM T0NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TWVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9Q VFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVf VVRNUF9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0xTQU5fSU5URVJGQUNFX0ggMQp8 ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQVNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBI QVZFX1NBTklUSVpFUl9DT01NT05fSU5URVJGQUNFX0RFRlNfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5l IEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUg SEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX0VYRUNJTkZPX0ggMQp8ICNkZWZpbmUg SEFWRV9TVERJT19FWFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19WRlNfSCAxCnwgI2RlZmlu ZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0NERUZTX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfSUVFRTc1NF9IIDEKfCAjZGVm aW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVERCT09MX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkFORE9NX0ggMQp8 ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAjZGVm aW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZp bmUgX0hQVVhfQUxUX1hPUEVOX1NPQ0tFVF9BUEkgMQp8ICNkZWZpbmUgX05FVEJTRF9TT1VS Q0UgMQp8ICNkZWZpbmUgX09QRU5CU0RfU09VUkNFIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhS RUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfQVRUUklC U19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfQkZQX0VYVF9fIDEK fCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9ERlBfRVhUX18gMQp8ICNkZWZpbmUg X19TVERDX1dBTlRfSUVDXzYwNTU5X0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lF Q182MDU1OV9GVU5DU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlf VFlQRVNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfTElCX0VYVDJfXyAxCnwgI2Rl ZmluZSBfX1NURENfV0FOVF9NQVRIX1NQRUNfRlVOQ1NfXyAxCnwgI2RlZmluZSBfVEFOREVN X1NPVVJDRSAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBHQ0NfTElO VCAxCnwgI2RlZmluZSBTWVNURU1fVFlQRSAiZ251L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9T WVNfU09VTkRDQVJEX0ggMQp8ICNkZWZpbmUgSEFWRV9BTFNBIDEKfCAjZGVmaW5lIEhBVkVf U09VTkQgMQp8ICNkZWZpbmUgSEFWRV9QRVJTT05BTElUWV9BRERSX05PX1JBTkRPTUlaRSAx CnwgI2RlZmluZSBIQVZFX0xJTlVYX1NZU0lORk8gMQp8ICNkZWZpbmUgTElOVVhfU1lTSU5G T19VTklUIDEKfCAjZGVmaW5lIEhBVkVfVEVSTV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dB SVRfSCAxCnwgI2RlZmluZSBIQVZFX05FVF9JRl9IIDEKfCAjZGVmaW5lIEhBVkVfSUZBRERS U19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9GTEFHUyAxCnwgI2RlZmlu ZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfSFdBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNU X0lGUkVRX0lGUl9ORVRNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9C Uk9BREFERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0FERFIgMQp8ICNk ZWZpbmUgSEFWRV9TQlJLIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZp bmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9G Q0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9DQU5PTklDQUxJWkVfRklMRV9OQU1FIDEKfCAjZGVm aW5lIEhBVkVfUkVBTFBBVEggMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwgI2RlZmluZSBI QVZFX0ZDSE1PREFUIDEKfCAjZGVmaW5lIEhBVkVfTENITU9EIDEKfCAjZGVmaW5lIEhBVkVf RkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgSEFWRV9GU1RB VEFUIDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZE QVkgMQp8ICNkZWZpbmUgSEFWRV9QU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9T SUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFWRV9JU0JM QU5LIDEKfCAjZGVmaW5lIEhBVkVfSVNXQ1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9TVFJUT0lN QVggMQp8ICNkZWZpbmUgSEFWRV9TWU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxUSU1F X1IgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIFNZU1RFTV9N QUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9NTUFQIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRCAx CnwgI2RlZmluZSBUSFJFQURTX0VOQUJMRUQgMQp8ICNkZWZpbmUgSEFWRV9YS0IgMQp8ICNk ZWZpbmUgSEFWRV9YS0JSRUZSRVNIS0VZQk9BUkRNQVBQSU5HIDEKfCAjZGVmaW5lIEhBVkVf WEtCRlJFRU5BTUVTIDEKfCAjZGVmaW5lIEhBVkVfWFJNU0VUREFUQUJBU0UgMQp8ICNkZWZp bmUgSEFWRV9YU0NSRUVOUkVTT1VSQ0VTVFJJTkcgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVO TlVNQkVST0ZTQ1JFRU4gMQp8ICNkZWZpbmUgSEFWRV9YRElTUExBWUNFTExTIDEKfCAjZGVm aW5lIEhBVkVfWERFU1RST1lTVUJXSU5ET1dTIDEKfCAjZGVmaW5lIEhBVkVfWDExUjYgMQp8 ICNkZWZpbmUgSEFWRV9YX0kxOE4gMQp8ICNkZWZpbmUgSEFWRV9YSUNDQUxMQkFDS19DQUxM QkFDSyAxCnwgI2RlZmluZSBIQVZFX1gxMVI2X1hJTSAxCnwgI2RlZmluZSBIQVZFX1JTVkcg MQp8ICNkZWZpbmUgSEFWRV9XRUJQIDEKfCAjZGVmaW5lIEhBVkVfU1FMSVRFMyAxCnwgI2Rl ZmluZSBIQVZFX1NRTElURTNfTE9BRF9FWFRFTlNJT04gMQp8ICNkZWZpbmUgSEFWRV9HRVRB RERSSU5GT19BIDEKfCAjZGVmaW5lIEhBVkVfR1RLMyAxCnwgI2RlZmluZSBHREtfRElTQUJM RV9ERVBSRUNBVElPTl9XQVJOSU5HUyAxCnwgI2RlZmluZSBHTElCX0RJU0FCTEVfREVQUkVD QVRJT05fV0FSTklOR1MgMQp8ICNkZWZpbmUgVVNFX0dUSyAxCnwgI2RlZmluZSBIQVZFX01B TExPQ19UUklNIDEKfCAjZGVmaW5lIEhBVkVfREJVUyAxCnwgI2RlZmluZSBIQVZFX0RCVVNf V0FUQ0hfR0VUX1VOSVhfRkQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1RZUEVfSVNfVkFMSUQg MQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0JVU19OQU1FIDEKfCAjZGVmaW5lIEhB VkVfREJVU19WQUxJREFURV9QQVRIIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9J TlRFUkZBQ0UgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX01FTUJFUiAxCnwgI2Rl ZmluZSBIQVZFX0dTRVRUSU5HUyAxCnwgI2RlZmluZSBIQVZFX0xJQlNFTElOVVggMQp8ICNk ZWZpbmUgSEFWRV9HTlVUTFMgMQp8ICNkZWZpbmUgSEFWRV9MSUJTWVNURU1EIDEKfCAjZGVm aW5lIEhBVkVfSlNPTiAxCnwgI2RlZmluZSBIQVZFX0lOT1RJRlkgMQp8ICNkZWZpbmUgVVNF X0ZJTEVfTk9USUZZIDEKfCAjZGVmaW5lIFVTRV9UT09MS0lUX1NDUk9MTF9CQVJTIDEKfCAj ZGVmaW5lIEhBVkVfWElNIDEKfCAjZGVmaW5lIFVTRV9YSU0gMQp8ICNkZWZpbmUgSEFWRV9Y UkVOREVSIDEKfCAjZGVmaW5lIFVTRV9DQUlST19YQ0IgMQp8ICNkZWZpbmUgVVNFX0NBSVJP IDEKfCAjZGVmaW5lIEhBVkVfRlJFRVRZUEUgMQp8ICNkZWZpbmUgSEFWRV9GVF9GQUNFX0dF VENIQVJWQVJJQU5USU5ERVggMQp8ICNkZWZpbmUgSEFWRV9MSUJPVEYgMQp8ICNkZWZpbmUg SEFWRV9PVEZfR0VUX1ZBUklBVElPTl9HTFlQSFMgMQp8ICNkZWZpbmUgSEFWRV9NMTdOX0ZM VCAxCnwgI2RlZmluZSBIQVZFX0hBUkZCVVpaIDEKfCAjZGVmaW5lIFVTRV9YQ0IgMQp8ICNk ZWZpbmUgSEFWRV9YUE0gMQp8ICNkZWZpbmUgSEFWRV9KUEVHIDEKfCAjZGVmaW5lIEhBVkVf TENNUzIgMQp8ICNkZWZpbmUgSEFWRV9aTElCIDEKfCAjZGVmaW5lIERZTkFNSUNfTElCX1NV RkZJWCAiLnNvIgp8ICNkZWZpbmUgRFlOQU1JQ19MSUJfU0VDT05EQVJZX1NVRkZJWCAiIgp8 ICNkZWZpbmUgSEFWRV9ETEFERFIgMQp8ICNkZWZpbmUgSEFWRV9NT0RVTEVTIDEKfCAjZGVm aW5lIE1PRFVMRVNfU1VGRklYICIuc28iCnwgI2RlZmluZSBOQVRJVkVfRUxJU1BfU1VGRklY ICIuZWxuIgp8ICNkZWZpbmUgSEFWRV9QTkcgMQp8ICNkZWZpbmUgSEFWRV9USUZGIDEKfCAj ZGVmaW5lIEhBVkVfR0lGIDEKfCAjZGVmaW5lIEhBVkVfR1BNIDEKfCAjZGVmaW5lIEhBVkVf WF9TTSAxCnwgI2RlZmluZSBIQVZFX1hSQU5EUiAxCnwgI2RlZmluZSBIQVZFX1hJTkVSQU1B IDEKfCAjZGVmaW5lIEhBVkVfWEZJWEVTIDEKfCAjZGVmaW5lIEhBVkVfWElOUFVUMiAxCnwg I2RlZmluZSBIQVZFX1hJU0NST0xMQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9Y SVRPVUNIQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YSUJBUlJJRVJSRUxFQVNF UE9JTlRFUklORk9fREVWSUNFSUQgMQp8ICNkZWZpbmUgSEFWRV9YSUdFU1RVUkVDTEFTU0lO Rk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hTWU5DIDEKfCAjZGVmaW5lIEhBVkVfWFNZTkNU UklHR0VSRkVOQ0UgMQp8ICNkZWZpbmUgSEFWRV9YREJFIDEKfCAjZGVmaW5lIEhBVkVfWENC X1NIQVBFIDEKfCAjZGVmaW5lIEhBVkVfWFNIQVBFIDEKfCAjZGVmaW5lIEhBVkVfWENPTVBP U0lURSAxCnwgI2RlZmluZSBIQVZFX0xJQlhNTDIgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9T RUNDT01QX0ggMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfU0VUX01PREVfRklMVEVS IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX0ZJTFRFUl9GTEFHX1RTWU5DIDEKfCAj ZGVmaW5lIEhBVkVfTElOVVhfRklMVEVSX0ggMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NP TVBfU0VUX01PREVfRklMVEVSIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX0ZJTFRF Ul9GTEFHX1RTWU5DIDEKfCAjZGVmaW5lIFNJWkVPRl9MT05HIDgKfCAjZGVmaW5lIEhBVkVf QUNDRVBUNCAxCnwgI2RlZmluZSBIQVZFX0ZDSERJUiAxCnwgI2RlZmluZSBIQVZFX0dFVEhP U1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUUlVTQUdFIDEKfCAjZGVmaW5lIEhBVkVfR0VU X0NVUlJFTlRfRElSX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9MUkFORDQ4IDEKfCAjZGVmaW5l IEhBVkVfUkFORE9NIDEKfCAjZGVmaW5lIEhBVkVfUklOVCAxCnwgI2RlZmluZSBIQVZFX1RS VU5DIDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJ WkUgMQp8ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9ORVdMT0NB TEUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRSTElN SVQgMQp8ICNkZWZpbmUgSEFWRV9TSFVURE9XTiAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURf U0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlNJR05BTCAxCnwgI2RlZmluZSBIQVZFX1NF VElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX1NFTkRUTyAxCnwgI2RlZmluZSBIQVZFX1JFQ1ZG Uk9NIDEKfCAjZGVmaW5lIEhBVkVfR0VUU09DS05BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRJ RkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfRlJFRUlGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9H QUlfU1RSRVJST1IgMQp8ICNkZWZpbmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VU UFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0dFVEdS RU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5ER1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9SRU5BTUVB VDIgMQp8ICNkZWZpbmUgSEFWRV9DRk1BS0VSQVcgMQp8ICNkZWZpbmUgSEFWRV9DRlNFVFNQ RUVEIDEKfCAjZGVmaW5lIEhBVkVfX19FWEVDVVRBQkxFX1NUQVJUIDEKfCAjZGVmaW5lIEhB VkVfTE9HMiAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0VUTkFNRV9OUCAxCnwgI2RlZmlu ZSBIQVZFX0FMSUdORURfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0FMSUdORURfQUxM T0MgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9NQURWSVNFIDEKfCAjZGVmaW5lIEhBVkVfX19C VUlMVElOX0ZSQU1FX0FERFJFU1MgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fVU5XSU5E X0lOSVQgMQp8ICNkZWZpbmUgSEFWRV9GU0VFS08gMQp8ICNkZWZpbmUgSEFWRV9HUkFOVFBU IDEKfCAjZGVmaW5lIEhBVkVfR0VUUFQgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9PUEVOUFQg MQp8ICNkZWZpbmUgVEVSTUlORk8gMQp8ICNkZWZpbmUgVEVSTUlORk9fREVGSU5FU19CQyAx CnwgI2RlZmluZSBIQVZFX1RJTUVSRkQgMQp8ICNkZWZpbmUgSEFWRV9WQUxHUklORF9WQUxH UklORF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1VOSVBBSVJfVU5JQ09ERSAxCnwgI2Rl ZmluZSBIQVZFX1dPUktJTkdfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX0ZPUksg MQp8ICNkZWZpbmUgSEFWRV9TTlBSSU5URiAxCnwgI2RlZmluZSBIQVZFX1NQQVdOX0ggMQp8 ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTiAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdO X0ZJTEVfQUNUSU9OU19BRERDSERJUl9OUCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdO QVRUUl9TRVRGTEFHUyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUE9TSVhfU1BBV05fU0VUU0lE IDEKfCAjZGVmaW5lIEhBVkVfR0xJQiAxCnwgI2RlZmluZSBIQVZFX0xBTkdJTkZPX0NPREVT RVQgMQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5GT19fTkxfUEFQRVJfV0lEVEggMQp8ICNkZWZp bmUgSEFWRV9NQlNUQVRFX1QgMQp8ICNkZWZpbmUgQU1QRVJTQU5EX0ZVTExfTkFNRSAxCnwg I2RlZmluZSBIQVZFX1BUWVMgMQp8ICNkZWZpbmUgSEFWRV9TT0NLRVRTIDEKfCAjZGVmaW5l IE5VTExfREVWSUNFICIvZGV2L251bGwiCnwgI2RlZmluZSBTRVBDSEFSICc6Jwp8ICNkZWZp bmUgc3VicHJvY2Vzc2VzIDEKfCAjZGVmaW5lIFVTRVJfRlVMTF9OQU1FIHB3LT5wd19nZWNv cwp8ICNkZWZpbmUgRElSRUNUT1JZX1NFUCAnLycKfCAjZGVmaW5lIElTX0RFVklDRV9TRVAo X2NfKSAwCnwgI2RlZmluZSBJU19ESVJFQ1RPUllfU0VQKF9jXykgKChfY18pID09IERJUkVD VE9SWV9TRVApCnwgI2RlZmluZSBJU19BTllfU0VQKF9jXykgKElTX0RJUkVDVE9SWV9TRVAg KF9jXykpCnwgI2RlZmluZSBIQVZFX1BST0NGUyAxCnwgI2RlZmluZSBERUZBVUxUX1NPVU5E X0RFVklDRSAiL2Rldi9kc3AiCnwgI2RlZmluZSBJTlRFUlJVUFRfSU5QVVQgMQp8ICNkZWZp bmUgTkFSUk9XUFJPVE8gMQp8ICNkZWZpbmUgVU5JWDk4X1BUWVMgMQp8ICNkZWZpbmUgUFRZ X0lURVJBVElPTiBpbnQgaTsgZm9yIChpID0gMDsgaSA8IDE7IGkrKykKfCAjZGVmaW5lIFBU WV9UVFlfTkFNRV9TUFJJTlRGIHsgY2hhciAqcHR5bmFtZSA9IDA7IHNpZ3NldF90IGJsb2Nr ZWQ7IHNpZ2VtcHR5c2V0ICgmYmxvY2tlZCk7IHNpZ2FkZHNldCAoJmJsb2NrZWQsIFNJR0NI TEQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoZ3Jh bnRwdCAoZmQpICE9IC0xICYmIHVubG9ja3B0IChmZCkgIT0gLTEpIHB0eW5hbWUgPSBwdHNu YW1lKGZkKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfVU5CTE9DSywgJmJsb2NrZWQsIDApOyBp ZiAoIXB0eW5hbWUpIHsgZW1hY3NfY2xvc2UgKGZkKTsgcmV0dXJuIC0xOyB9IHNucHJpbnRm IChwdHlfbmFtZSwgUFRZX05BTUVfU0laRSwgIiVzIiwgcHR5bmFtZSk7IH0KfCAjZGVmaW5l IFBUWV9PUEVOIGRvIHsgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fQ0xPRVhFQyB8 IE9fTk9DVFRZKTsgaWYgKGZkIDwgMCAmJiBlcnJubyA9PSBFSU5WQUwpIGZkID0gcG9zaXhf b3BlbnB0IChPX1JEV1IgfCBPX05PQ1RUWSk7IH0gd2hpbGUgKGZhbHNlKQp8ICNkZWZpbmUg UFRZX05BTUVfU1BSSU5URiAvKiovCnwgI2RlZmluZSBTSUdOQUxTX1ZJQV9DSEFSQUNURVJT IDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09S S1MgMQp8ICNkZWZpbmUgSEFWRV9fU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUSk1Q IDEKfCAjZGVmaW5lIEhBVkVfU1RBQ0tfT1ZFUkZMT1dfSEFORExJTkcgMQp8ICNkZWZpbmUg VVNHIC8qKi8KfCAjZGVmaW5lIEdOVV9MSU5VWCAvKiovCnwgI2RlZmluZSBTSVpFT0ZfU1BF RURfVCA0CnwgI2RlZmluZSBVU0FCTEVfRklPTlJFQUQgMQp8ICNkZWZpbmUgVVNBQkxFX1NJ R0lPIDEKfCAjZGVmaW5lIENPUFlSSUdIVCAiQ29weXJpZ2h0IChDKSAyMDIzIEZyZWUgU29m dHdhcmUgRm91bmRhdGlvbiwgSW5jLiIKfCAjZGVmaW5lIFRFUk1fSEVBREVSICJndGt1dGls LmgiCnwgI2RlZmluZSBFTUFDU19DT05GSUdVUkFUSU9OICJ4ODZfNjQtcGMtbGludXgtZ251 Igp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHX09QVElPTlMgIiIKfCAjZGVmaW5lIEhBVkVfWF9X SU5ET1dTIDEKfCAjZGVmaW5lIEhBVkVfWDExIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0FU VFJJQlVURV9BTElHTkVEIDEKfCAjZGVmaW5lIEhBVkVfVFlQRU9GIDEKfCAjZGVmaW5lIEhB VkVfU1RBVEVNRU5UX0VYUFJFU1NJT05TIDEKfCAjZGVmaW5lIE1BTExPQ18wX0lTX05PTk5V TEwgMQp8ICNkZWZpbmUgSEFWRV9TWVNfQUNMX0ggMQp8ICNkZWZpbmUgSEFWRV9BQ0xfR0VU X0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNM X1NFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX1NFVF9GRCAxCnwgI2RlZmluZSBIQVZF X0FDTF9GUkVFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZST01fTU9ERSAxCnwgI2RlZmluZSBI QVZFX0FDTF9GUk9NX1RFWFQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfREVMRVRFX0RFRl9GSUxF IDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VYVEVOREVEX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9B Q0xfTElCQUNMX0ggMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRU5UUklFUyAxCnwgI2RlZmluZSBI QVZFX0FDTF9GSVJTVF9FTlRSWSAxCnwgI2RlZmluZSBVU0VfQUNMIDEKfCAjZGVmaW5lIEhB VkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgTFNUQVRf Rk9MTE9XU19TTEFTSEVEX1NZTUxJTksgMQp8ICNkZWZpbmUgRlVOQ19SRUFMUEFUSF9XT1JL UyAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0dFVENXRCAx CnwgI2RlZmluZSByZXN0cmljdCBfX3Jlc3RyaWN0X18KfCAvKiBlbmQgY29uZmRlZnMuaC4g ICovCnwgI2lmbmRlZiBfX0FQUExFX0NDX18KfCAJICAgICAgIG5vdCBhIHVuaXZlcnNhbCBj YXBhYmxlIGNvbXBpbGVyCnwgCSAgICAgI2VuZGlmCnwgCSAgICAgdHlwZWRlZiBpbnQgZHVt bXk7CnwgCmNvbmZpZ3VyZToyNzM4NjogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+ JjUKY29uZmlndXJlOjI3Mzg2OiAkPyA9IDAKY29uZmlndXJlOjI3NDA1OiBnY2MgLWMgLWcz IC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiAnbWFpbic6 CmNvbmZ0ZXN0LmM6MzI3OjE4OiBlcnJvcjogdW5rbm93biB0eXBlIG5hbWUgJ25vdCc7IGRp ZCB5b3UgbWVhbiAnaW5vX3QnPwogIDMyNyB8ICAgICAgICAgICAgICAgICAgbm90IGJpZyBl bmRpYW4KICAgICAgfCAgICAgICAgICAgICAgICAgIF5+fgogICAgICB8ICAgICAgICAgICAg ICAgICAgaW5vX3QKY29uZnRlc3QuYzozMjc6MjY6IGVycm9yOiBleHBlY3RlZCAnPScsICcs JywgJzsnLCAnYXNtJyBvciAnX19hdHRyaWJ1dGVfXycgYmVmb3JlICdlbmRpYW4nCiAgMzI3 IHwgICAgICAgICAgICAgICAgICBub3QgYmlnIGVuZGlhbgogICAgICB8ICAgICAgICAgICAg ICAgICAgICAgICAgICBefn5+fn4KY29uZmlndXJlOjI3NDA1OiAkPyA9IDEKY29uZmlndXJl OiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFD S0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNz Igp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FH RV9TVFJJTkcgIkdOVSBFbWFjcyAzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBP UlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJodHRw czovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIEhBVkVfUERVTVBF UiAxCnwgI2RlZmluZSBIQVZFX1NURElPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAx CnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAx CnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19I IDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEK fCAjZGVmaW5lIEhBVkVfTElOVVhfRlNfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1BUWV9IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRT TkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1QX0gg MQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfTFNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmlu ZSBIQVZFX1NBTklUSVpFUl9BU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FO SVRJWkVSX0NPTU1PTl9JTlRFUkZBQ0VfREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NP Q0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9Q VEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwgI2RlZmluZSBIQVZFX0RJ UkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1NU RElPX0VYVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1ZGU19IIDEKfCAjZGVmaW5lIEhBVkVf R0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfQ0RFRlNfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9JRUVFNzU0X0ggMQp8ICNkZWZpbmUgSEFW RV9MSU1JVFNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBI QVZFX1NUREJPT0xfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SQU5ET01fSCAxCnwgI2RlZmlu ZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RB UldJTl9DX1NPVVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBfSFBV WF9BTFRfWE9QRU5fU09DS0VUX0FQSSAxCnwgI2RlZmluZSBfTkVUQlNEX1NPVVJDRSAxCnwg I2RlZmluZSBfT1BFTkJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VN QU5USUNTIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9BVFRSSUJTX0VYVF9f IDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9CRlBfRVhUX18gMQp8ICNkZWZp bmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0RGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENf V0FOVF9JRUNfNjA1NTlfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5 X0ZVTkNTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9UWVBFU19F WFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9MSUJfRVhUMl9fIDEKfCAjZGVmaW5lIF9f U1REQ19XQU5UX01BVEhfU1BFQ19GVU5DU19fIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNF IDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIEdDQ19MSU5UIDEKfCAj ZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VO RENBUkRfSCAxCnwgI2RlZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAx CnwgI2RlZmluZSBIQVZFX1BFUlNPTkFMSVRZX0FERFJfTk9fUkFORE9NSVpFIDEKfCAjZGVm aW5lIEhBVkVfTElOVVhfU1lTSU5GTyAxCnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQg MQp8ICNkZWZpbmUgSEFWRV9URVJNX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEK fCAjZGVmaW5lIEhBVkVfTkVUX0lGX0ggMQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0ggMQp8 ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVf U1RSVUNUX0lGUkVRX0lGUl9IV0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFf SUZSX05FVE1BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQURE UiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQUREUiAxCnwgI2RlZmluZSBI QVZFX1NCUksgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZF X0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9WRk9SSyAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAx CnwgI2RlZmluZSBIQVZFX0NBTk9OSUNBTElaRV9GSUxFX05BTUUgMQp8ICNkZWZpbmUgSEFW RV9SRUFMUEFUSCAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfRkNI TU9EQVQgMQp8ICNkZWZpbmUgSEFWRV9MQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAx CnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8 ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwg I2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sg MQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX0lTQkxBTksgMQp8 ICNkZWZpbmUgSEFWRV9JU1dDVFlQRSAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwg I2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwg I2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgU1lTVEVNX01BTExPQyAx CnwgI2RlZmluZSBIQVZFX01NQVAgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEIDEKfCAjZGVm aW5lIFRIUkVBRFNfRU5BQkxFRCAxCnwgI2RlZmluZSBIQVZFX1hLQiAxCnwgI2RlZmluZSBI QVZFX1hLQlJFRlJFU0hLRVlCT0FSRE1BUFBJTkcgMQp8ICNkZWZpbmUgSEFWRV9YS0JGUkVF TkFNRVMgMQp8ICNkZWZpbmUgSEFWRV9YUk1TRVREQVRBQkFTRSAxCnwgI2RlZmluZSBIQVZF X1hTQ1JFRU5SRVNPVVJDRVNUUklORyAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJP RlNDUkVFTiAxCnwgI2RlZmluZSBIQVZFX1hESVNQTEFZQ0VMTFMgMQp8ICNkZWZpbmUgSEFW RV9YREVTVFJPWVNVQldJTkRPV1MgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNiAxCnwgI2RlZmlu ZSBIQVZFX1hfSTE4TiAxCnwgI2RlZmluZSBIQVZFX1hJQ0NBTExCQUNLX0NBTExCQUNLIDEK fCAjZGVmaW5lIEhBVkVfWDExUjZfWElNIDEKfCAjZGVmaW5lIEhBVkVfUlNWRyAxCnwgI2Rl ZmluZSBIQVZFX1dFQlAgMQp8ICNkZWZpbmUgSEFWRV9TUUxJVEUzIDEKfCAjZGVmaW5lIEhB VkVfU1FMSVRFM19MT0FEX0VYVEVOU0lPTiAxCnwgI2RlZmluZSBIQVZFX0dFVEFERFJJTkZP X0EgMQp8ICNkZWZpbmUgSEFWRV9HVEszIDEKfCAjZGVmaW5lIEdES19ESVNBQkxFX0RFUFJF Q0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIEdMSUJfRElTQUJMRV9ERVBSRUNBVElPTl9X QVJOSU5HUyAxCnwgI2RlZmluZSBVU0VfR1RLIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX1RS SU0gMQp8ICNkZWZpbmUgSEFWRV9EQlVTIDEKfCAjZGVmaW5lIEhBVkVfREJVU19XQVRDSF9H RVRfVU5JWF9GRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVFlQRV9JU19WQUxJRCAxCnwgI2Rl ZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfQlVTX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9EQlVT X1ZBTElEQVRFX1BBVEggMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0lOVEVSRkFD RSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfTUVNQkVSIDEKfCAjZGVmaW5lIEhB VkVfR1NFVFRJTkdTIDEKfCAjZGVmaW5lIEhBVkVfTElCU0VMSU5VWCAxCnwgI2RlZmluZSBI QVZFX0dOVVRMUyAxCnwgI2RlZmluZSBIQVZFX0xJQlNZU1RFTUQgMQp8ICNkZWZpbmUgSEFW RV9KU09OIDEKfCAjZGVmaW5lIEhBVkVfSU5PVElGWSAxCnwgI2RlZmluZSBVU0VfRklMRV9O T1RJRlkgMQp8ICNkZWZpbmUgVVNFX1RPT0xLSVRfU0NST0xMX0JBUlMgMQp8ICNkZWZpbmUg SEFWRV9YSU0gMQp8ICNkZWZpbmUgVVNFX1hJTSAxCnwgI2RlZmluZSBIQVZFX1hSRU5ERVIg MQp8ICNkZWZpbmUgVVNFX0NBSVJPX1hDQiAxCnwgI2RlZmluZSBVU0VfQ0FJUk8gMQp8ICNk ZWZpbmUgSEFWRV9GUkVFVFlQRSAxCnwgI2RlZmluZSBIQVZFX0ZUX0ZBQ0VfR0VUQ0hBUlZB UklBTlRJTkRFWCAxCnwgI2RlZmluZSBIQVZFX0xJQk9URiAxCnwgI2RlZmluZSBIQVZFX09U Rl9HRVRfVkFSSUFUSU9OX0dMWVBIUyAxCnwgI2RlZmluZSBIQVZFX00xN05fRkxUIDEKfCAj ZGVmaW5lIEhBVkVfSEFSRkJVWlogMQp8ICNkZWZpbmUgVVNFX1hDQiAxCnwgI2RlZmluZSBI QVZFX1hQTSAxCnwgI2RlZmluZSBIQVZFX0pQRUcgMQp8ICNkZWZpbmUgSEFWRV9MQ01TMiAx CnwgI2RlZmluZSBIQVZFX1pMSUIgMQp8ICNkZWZpbmUgRFlOQU1JQ19MSUJfU1VGRklYICIu c28iCnwgI2RlZmluZSBEWU5BTUlDX0xJQl9TRUNPTkRBUllfU1VGRklYICIiCnwgI2RlZmlu ZSBIQVZFX0RMQUREUiAxCnwgI2RlZmluZSBIQVZFX01PRFVMRVMgMQp8ICNkZWZpbmUgTU9E VUxFU19TVUZGSVggIi5zbyIKfCAjZGVmaW5lIE5BVElWRV9FTElTUF9TVUZGSVggIi5lbG4i CnwgI2RlZmluZSBIQVZFX1BORyAxCnwgI2RlZmluZSBIQVZFX1RJRkYgMQp8ICNkZWZpbmUg SEFWRV9HSUYgMQp8ICNkZWZpbmUgSEFWRV9HUE0gMQp8ICNkZWZpbmUgSEFWRV9YX1NNIDEK fCAjZGVmaW5lIEhBVkVfWFJBTkRSIDEKfCAjZGVmaW5lIEhBVkVfWElORVJBTUEgMQp8ICNk ZWZpbmUgSEFWRV9YRklYRVMgMQp8ICNkZWZpbmUgSEFWRV9YSU5QVVQyIDEKfCAjZGVmaW5l IEhBVkVfWElTQ1JPTExDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hJVE9VQ0hD TEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hJQkFSUklFUlJFTEVBU0VQT0lOVEVS SU5GT19ERVZJQ0VJRCAxCnwgI2RlZmluZSBIQVZFX1hJR0VTVFVSRUNMQVNTSU5GT19UWVBF IDEKfCAjZGVmaW5lIEhBVkVfWFNZTkMgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQ1RSSUdHRVJG RU5DRSAxCnwgI2RlZmluZSBIQVZFX1hEQkUgMQp8ICNkZWZpbmUgSEFWRV9YQ0JfU0hBUEUg MQp8ICNkZWZpbmUgSEFWRV9YU0hBUEUgMQp8ICNkZWZpbmUgSEFWRV9YQ09NUE9TSVRFIDEK fCAjZGVmaW5lIEhBVkVfTElCWE1MMiAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX1NFQ0NPTVBf SCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUg SEFWRV9MSU5VWF9GSUxURVJfSCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRf TU9ERV9GSUxURVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdf VFNZTkMgMQp8ICNkZWZpbmUgU0laRU9GX0xPTkcgOAp8ICNkZWZpbmUgSEFWRV9BQ0NFUFQ0 IDEKfCAjZGVmaW5lIEhBVkVfRkNIRElSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUg MQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNBR0UgMQp8ICNkZWZpbmUgSEFWRV9HRVRfQ1VSUkVO VF9ESVJfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0xSQU5ENDggMQp8ICNkZWZpbmUgSEFWRV9S QU5ET00gMQp8ICNkZWZpbmUgSEFWRV9SSU5UIDEKfCAjZGVmaW5lIEhBVkVfVFJVTkMgMQp8 ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwg I2RlZmluZSBIQVZFX1NFVExPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX05FV0xPQ0FMRSAxCnwg I2RlZmluZSBIQVZFX0dFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NFVFJMSU1JVCAxCnwg I2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNL IDEKfCAjZGVmaW5lIEhBVkVfU1RSU0lHTkFMIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVS IDEKfCAjZGVmaW5lIEhBVkVfU0VORFRPIDEKfCAjZGVmaW5lIEhBVkVfUkVDVkZST00gMQp8 ICNkZWZpbmUgSEFWRV9HRVRTT0NLTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVElGQUREUlMg MQp8ICNkZWZpbmUgSEFWRV9GUkVFSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0dBSV9TVFJF UlJPUiAxCnwgI2RlZmluZSBIQVZFX1NZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAx CnwgI2RlZmluZSBIQVZFX0VORFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8 ICNkZWZpbmUgSEFWRV9FTkRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX1JFTkFNRUFUMiAxCnwg I2RlZmluZSBIQVZFX0NGTUFLRVJBVyAxCnwgI2RlZmluZSBIQVZFX0NGU0VUU1BFRUQgMQp8 ICNkZWZpbmUgSEFWRV9fX0VYRUNVVEFCTEVfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9MT0cy IDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TRVROQU1FX05QIDEKfCAjZGVmaW5lIEhBVkVf QUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfQUxJR05FRF9BTExPQyAxCnwg I2RlZmluZSBIQVZFX1BPU0lYX01BRFZJU0UgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5f RlJBTUVfQUREUkVTUyAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9VTldJTkRfSU5JVCAx CnwgI2RlZmluZSBIQVZFX0ZTRUVLTyAxCnwgI2RlZmluZSBIQVZFX0dSQU5UUFQgMQp8ICNk ZWZpbmUgSEFWRV9HRVRQVCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX09QRU5QVCAxCnwgI2Rl ZmluZSBURVJNSU5GTyAxCnwgI2RlZmluZSBURVJNSU5GT19ERUZJTkVTX0JDIDEKfCAjZGVm aW5lIEhBVkVfVElNRVJGRCAxCnwgI2RlZmluZSBIQVZFX1ZBTEdSSU5EX1ZBTEdSSU5EX0gg MQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVU5JUEFJUl9VTklDT0RFIDEKfCAjZGVmaW5lIEhB VkVfV09SS0lOR19WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfRk9SSyAxCnwgI2Rl ZmluZSBIQVZFX1NOUFJJTlRGIDEKfCAjZGVmaW5lIEhBVkVfU1BBV05fSCAxCnwgI2RlZmlu ZSBIQVZFX1BPU0lYX1NQQVdOIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV05fRklMRV9B Q1RJT05TX0FERENIRElSX05QIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV05BVFRSX1NF VEZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QT1NJWF9TUEFXTl9TRVRTSUQgMQp8ICNk ZWZpbmUgSEFWRV9HTElCIDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fQ09ERVNFVCAxCnwg I2RlZmluZSBIQVZFX0xBTkdJTkZPX19OTF9QQVBFUl9XSURUSCAxCnwgI2RlZmluZSBIQVZF X01CU1RBVEVfVCAxCnwgI2RlZmluZSBBTVBFUlNBTkRfRlVMTF9OQU1FIDEKfCAjZGVmaW5l IEhBVkVfUFRZUyAxCnwgI2RlZmluZSBIQVZFX1NPQ0tFVFMgMQp8ICNkZWZpbmUgTlVMTF9E RVZJQ0UgIi9kZXYvbnVsbCIKfCAjZGVmaW5lIFNFUENIQVIgJzonCnwgI2RlZmluZSBzdWJw cm9jZXNzZXMgMQp8ICNkZWZpbmUgVVNFUl9GVUxMX05BTUUgcHctPnB3X2dlY29zCnwgI2Rl ZmluZSBESVJFQ1RPUllfU0VQICcvJwp8ICNkZWZpbmUgSVNfREVWSUNFX1NFUChfY18pIDAK fCAjZGVmaW5lIElTX0RJUkVDVE9SWV9TRVAoX2NfKSAoKF9jXykgPT0gRElSRUNUT1JZX1NF UCkKfCAjZGVmaW5lIElTX0FOWV9TRVAoX2NfKSAoSVNfRElSRUNUT1JZX1NFUCAoX2NfKSkK fCAjZGVmaW5lIEhBVkVfUFJPQ0ZTIDEKfCAjZGVmaW5lIERFRkFVTFRfU09VTkRfREVWSUNF ICIvZGV2L2RzcCIKfCAjZGVmaW5lIElOVEVSUlVQVF9JTlBVVCAxCnwgI2RlZmluZSBOQVJS T1dQUk9UTyAxCnwgI2RlZmluZSBVTklYOThfUFRZUyAxCnwgI2RlZmluZSBQVFlfSVRFUkFU SU9OIGludCBpOyBmb3IgKGkgPSAwOyBpIDwgMTsgaSsrKQp8ICNkZWZpbmUgUFRZX1RUWV9O QU1FX1NQUklOVEYgeyBjaGFyICpwdHluYW1lID0gMDsgc2lnc2V0X3QgYmxvY2tlZDsgc2ln ZW1wdHlzZXQgKCZibG9ja2VkKTsgc2lnYWRkc2V0ICgmYmxvY2tlZCwgU0lHQ0hMRCk7IHB0 aHJlYWRfc2lnbWFzayAoU0lHX0JMT0NLLCAmYmxvY2tlZCwgMCk7IGlmIChncmFudHB0IChm ZCkgIT0gLTEgJiYgdW5sb2NrcHQgKGZkKSAhPSAtMSkgcHR5bmFtZSA9IHB0c25hbWUoZmQp OyBwdGhyZWFkX3NpZ21hc2sgKFNJR19VTkJMT0NLLCAmYmxvY2tlZCwgMCk7IGlmICghcHR5 bmFtZSkgeyBlbWFjc19jbG9zZSAoZmQpOyByZXR1cm4gLTE7IH0gc25wcmludGYgKHB0eV9u YW1lLCBQVFlfTkFNRV9TSVpFLCAiJXMiLCBwdHluYW1lKTsgfQp8ICNkZWZpbmUgUFRZX09Q RU4gZG8geyBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19DTE9FWEVDIHwgT19OT0NU VFkpOyBpZiAoZmQgPCAwICYmIGVycm5vID09IEVJTlZBTCkgZmQgPSBwb3NpeF9vcGVucHQg KE9fUkRXUiB8IE9fTk9DVFRZKTsgfSB3aGlsZSAoZmFsc2UpCnwgI2RlZmluZSBQVFlfTkFN RV9TUFJJTlRGIC8qKi8KfCAjZGVmaW5lIFNJR05BTFNfVklBX0NIQVJBQ1RFUlMgMQp8ICNk ZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwg I2RlZmluZSBIQVZFX19TRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRVRKTVAgMQp8ICNk ZWZpbmUgSEFWRV9TVEFDS19PVkVSRkxPV19IQU5ETElORyAxCnwgI2RlZmluZSBVU0cgLyoq Lwp8ICNkZWZpbmUgR05VX0xJTlVYIC8qKi8KfCAjZGVmaW5lIFNJWkVPRl9TUEVFRF9UIDQK fCAjZGVmaW5lIFVTQUJMRV9GSU9OUkVBRCAxCnwgI2RlZmluZSBVU0FCTEVfU0lHSU8gMQp8 ICNkZWZpbmUgQ09QWVJJR0hUICJDb3B5cmlnaHQgKEMpIDIwMjMgRnJlZSBTb2Z0d2FyZSBG b3VuZGF0aW9uLCBJbmMuIgp8ICNkZWZpbmUgVEVSTV9IRUFERVIgImd0a3V0aWwuaCIKfCAj ZGVmaW5lIEVNQUNTX0NPTkZJR1VSQVRJT04gIng4Nl82NC1wYy1saW51eC1nbnUiCnwgI2Rl ZmluZSBFTUFDU19DT05GSUdfT1BUSU9OUyAiIgp8ICNkZWZpbmUgSEFWRV9YX1dJTkRPV1Mg MQp8ICNkZWZpbmUgSEFWRV9YMTEgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfQVRUUklCVVRF X0FMSUdORUQgMQp8ICNkZWZpbmUgSEFWRV9UWVBFT0YgMQp8ICNkZWZpbmUgSEFWRV9TVEFU RU1FTlRfRVhQUkVTU0lPTlMgMQp8ICNkZWZpbmUgTUFMTE9DXzBfSVNfTk9OTlVMTCAxCnwg I2RlZmluZSBIQVZFX1NZU19BQ0xfSCAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRklMRSAx CnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZJ TEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZS RUUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9NT0RFIDEKfCAjZGVmaW5lIEhBVkVfQUNM X0ZST01fVEVYVCAxCnwgI2RlZmluZSBIQVZFX0FDTF9ERUxFVEVfREVGX0ZJTEUgMQp8ICNk ZWZpbmUgSEFWRV9BQ0xfRVhURU5ERURfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9MSUJB Q0xfSCAxCnwgI2RlZmluZSBIQVZFX0FDTF9FTlRSSUVTIDEKfCAjZGVmaW5lIEhBVkVfQUNM X0ZJUlNUX0VOVFJZIDEKfCAjZGVmaW5lIFVTRV9BQ0wgMQp8ICNkZWZpbmUgSEFWRV9BTExP Q0FfSCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBMU1RBVF9GT0xMT1dT X1NMQVNIRURfU1lNTElOSyAxCnwgI2RlZmluZSBGVU5DX1JFQUxQQVRIX1dPUktTIDEKfCAj ZGVmaW5lIEhBVkVfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfR0VUQ1dEIDEKfCAjZGVm aW5lIHJlc3RyaWN0IF9fcmVzdHJpY3RfXwp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAj aW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgCQkjaW5jbHVkZSA8c3lzL3BhcmFtLmg+CnwgCnwg aW50CnwgbWFpbiAodm9pZCkKfCB7CnwgI2lmIEJZVEVfT1JERVIgIT0gQklHX0VORElBTgp8 IAkJIG5vdCBiaWcgZW5kaWFuCnwgCQkjZW5kaWYKfCAKfCAgIDsKfCAgIHJldHVybiAwOwp8 IH0KY29uZmlndXJlOjI3NTM5OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToyNzc2NTogY2hlY2tp bmcgaWYgZW52aXJvbiBpcyBwcm9wZXJseSBkZWNsYXJlZApjb25maWd1cmU6Mjc3ODk6IGdj YyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6MzI3OjI2OiBlcnJv cjogY29uZmxpY3RpbmcgdHlwZXMgZm9yICdlbnZpcm9uJzsgaGF2ZSAnZm9vX3QnCiAgMzI3 IHwgICAgICAgICAgICAgZXh0ZXJuIGZvb190IGVudmlyb247CiAgICAgIHwgICAgICAgICAg ICAgICAgICAgICAgICAgIF5+fn5+fn4KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIGNvbmZ0ZXN0 LmM6MzIxOgovdXNyL2luY2x1ZGUvdW5pc3RkLmg6NTY2OjE1OiBub3RlOiBwcmV2aW91cyBk ZWNsYXJhdGlvbiBvZiAnZW52aXJvbicgd2l0aCB0eXBlICdjaGFyICoqJwogIDU2NiB8IGV4 dGVybiBjaGFyICoqZW52aXJvbjsKICAgICAgfCAgICAgICAgICAgICAgIF5+fn5+fn4KY29u ZmlndXJlOjI3Nzg5OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6Cnwg LyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwg I2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJT SU9OICIzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAzMC4w LjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9y ZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJodHRwczovL3d3dy5nbnUub3JnL3NvZnR3YXJl L2VtYWNzLyIKfCAjZGVmaW5lIEhBVkVfUERVTVBFUiAxCnwgI2RlZmluZSBIQVZFX1NURElP X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19I IDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9I IDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1RE X0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfRlNf SCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lO Rk9fSCAxCnwgI2RlZmluZSBIQVZFX1BUWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09V UkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVf UFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1QX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVEla RVJfTFNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9BU0FOX0lO VEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0NPTU1PTl9JTlRFUkZBQ0Vf REVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfVU5fSCAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVf RVhFQ0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1NURElPX0VYVF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1ZGU19IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfQ0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUg SEFWRV9JRUVFNzU0X0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NUREJPT0xfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19SQU5ET01fSCAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZp bmUgX0FMTF9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmlu ZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBfSFBVWF9BTFRfWE9QRU5fU09DS0VUX0FQSSAx CnwgI2RlZmluZSBfTkVUQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfT1BFTkJTRF9TT1VSQ0Ug MQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9fU1RE Q19XQU5UX0lFQ182MDU1OV9BVFRSSUJTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5U X0lFQ182MDU1OV9CRlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5 X0RGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRVhUX18gMQp8 ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0ZVTkNTX0VYVF9fIDEKfCAjZGVmaW5l IF9fU1REQ19XQU5UX0lFQ182MDU1OV9UWVBFU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENf V0FOVF9MSUJfRVhUMl9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX01BVEhfU1BFQ19GVU5D U19fIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9O U19fIDEKfCAjZGVmaW5lIEdDQ19MSU5UIDEKfCAjZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUv bGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAxCnwgI2RlZmluZSBIQVZF X0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwgI2RlZmluZSBIQVZFX1BFUlNPTkFM SVRZX0FERFJfTk9fUkFORE9NSVpFIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5GTyAx CnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUgSEFWRV9URVJNX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUX0lGX0gg MQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZS RVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9IV0FERFIg MQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX05FVE1BU0sgMQp8ICNkZWZpbmUg SEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVD VF9JRlJFUV9JRlJfQUREUiAxCnwgI2RlZmluZSBIQVZFX1NCUksgMQp8ICNkZWZpbmUgSEFW RV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9W Rk9SSyAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0NBTk9OSUNB TElaRV9GSUxFX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9SRUFMUEFUSCAxCnwgI2RlZmluZSBI QVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EQVQgMQp8ICNkZWZpbmUgSEFWRV9M Q0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJ UiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwg I2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8 ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElO SyAxCnwgI2RlZmluZSBIQVZFX0lTQkxBTksgMQp8ICNkZWZpbmUgSEFWRV9JU1dDVFlQRSAx CnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8 ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJ WkUgMQp8ICNkZWZpbmUgU1lTVEVNX01BTExPQyAxCnwgI2RlZmluZSBIQVZFX01NQVAgMQp8 ICNkZWZpbmUgSEFWRV9QVEhSRUFEIDEKfCAjZGVmaW5lIFRIUkVBRFNfRU5BQkxFRCAxCnwg I2RlZmluZSBIQVZFX1hLQiAxCnwgI2RlZmluZSBIQVZFX1hLQlJFRlJFU0hLRVlCT0FSRE1B UFBJTkcgMQp8ICNkZWZpbmUgSEFWRV9YS0JGUkVFTkFNRVMgMQp8ICNkZWZpbmUgSEFWRV9Y Uk1TRVREQVRBQkFTRSAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNPVVJDRVNUUklORyAx CnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJPRlNDUkVFTiAxCnwgI2RlZmluZSBIQVZF X1hESVNQTEFZQ0VMTFMgMQp8ICNkZWZpbmUgSEFWRV9YREVTVFJPWVNVQldJTkRPV1MgMQp8 ICNkZWZpbmUgSEFWRV9YMTFSNiAxCnwgI2RlZmluZSBIQVZFX1hfSTE4TiAxCnwgI2RlZmlu ZSBIQVZFX1hJQ0NBTExCQUNLX0NBTExCQUNLIDEKfCAjZGVmaW5lIEhBVkVfWDExUjZfWElN IDEKfCAjZGVmaW5lIEhBVkVfUlNWRyAxCnwgI2RlZmluZSBIQVZFX1dFQlAgMQp8ICNkZWZp bmUgSEFWRV9TUUxJVEUzIDEKfCAjZGVmaW5lIEhBVkVfU1FMSVRFM19MT0FEX0VYVEVOU0lP TiAxCnwgI2RlZmluZSBIQVZFX0dFVEFERFJJTkZPX0EgMQp8ICNkZWZpbmUgSEFWRV9HVEsz IDEKfCAjZGVmaW5lIEdES19ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVm aW5lIEdMSUJfRElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAxCnwgI2RlZmluZSBVU0Vf R1RLIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX1RSSU0gMQp8ICNkZWZpbmUgSEFWRV9EQlVT IDEKfCAjZGVmaW5lIEhBVkVfREJVU19XQVRDSF9HRVRfVU5JWF9GRCAxCnwgI2RlZmluZSBI QVZFX0RCVVNfVFlQRV9JU19WQUxJRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVf QlVTX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX1BBVEggMQp8ICNkZWZp bmUgSEFWRV9EQlVTX1ZBTElEQVRFX0lOVEVSRkFDRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNf VkFMSURBVEVfTUVNQkVSIDEKfCAjZGVmaW5lIEhBVkVfR1NFVFRJTkdTIDEKfCAjZGVmaW5l IEhBVkVfTElCU0VMSU5VWCAxCnwgI2RlZmluZSBIQVZFX0dOVVRMUyAxCnwgI2RlZmluZSBI QVZFX0xJQlNZU1RFTUQgMQp8ICNkZWZpbmUgSEFWRV9KU09OIDEKfCAjZGVmaW5lIEhBVkVf SU5PVElGWSAxCnwgI2RlZmluZSBVU0VfRklMRV9OT1RJRlkgMQp8ICNkZWZpbmUgVVNFX1RP T0xLSVRfU0NST0xMX0JBUlMgMQp8ICNkZWZpbmUgSEFWRV9YSU0gMQp8ICNkZWZpbmUgVVNF X1hJTSAxCnwgI2RlZmluZSBIQVZFX1hSRU5ERVIgMQp8ICNkZWZpbmUgVVNFX0NBSVJPX1hD QiAxCnwgI2RlZmluZSBVU0VfQ0FJUk8gMQp8ICNkZWZpbmUgSEFWRV9GUkVFVFlQRSAxCnwg I2RlZmluZSBIQVZFX0ZUX0ZBQ0VfR0VUQ0hBUlZBUklBTlRJTkRFWCAxCnwgI2RlZmluZSBI QVZFX0xJQk9URiAxCnwgI2RlZmluZSBIQVZFX09URl9HRVRfVkFSSUFUSU9OX0dMWVBIUyAx CnwgI2RlZmluZSBIQVZFX00xN05fRkxUIDEKfCAjZGVmaW5lIEhBVkVfSEFSRkJVWlogMQp8 ICNkZWZpbmUgVVNFX1hDQiAxCnwgI2RlZmluZSBIQVZFX1hQTSAxCnwgI2RlZmluZSBIQVZF X0pQRUcgMQp8ICNkZWZpbmUgSEFWRV9MQ01TMiAxCnwgI2RlZmluZSBIQVZFX1pMSUIgMQp8 ICNkZWZpbmUgRFlOQU1JQ19MSUJfU1VGRklYICIuc28iCnwgI2RlZmluZSBEWU5BTUlDX0xJ Ql9TRUNPTkRBUllfU1VGRklYICIiCnwgI2RlZmluZSBIQVZFX0RMQUREUiAxCnwgI2RlZmlu ZSBIQVZFX01PRFVMRVMgMQp8ICNkZWZpbmUgTU9EVUxFU19TVUZGSVggIi5zbyIKfCAjZGVm aW5lIE5BVElWRV9FTElTUF9TVUZGSVggIi5lbG4iCnwgI2RlZmluZSBIQVZFX1BORyAxCnwg I2RlZmluZSBIQVZFX1RJRkYgMQp8ICNkZWZpbmUgSEFWRV9HSUYgMQp8ICNkZWZpbmUgSEFW RV9HUE0gMQp8ICNkZWZpbmUgSEFWRV9YX1NNIDEKfCAjZGVmaW5lIEhBVkVfWFJBTkRSIDEK fCAjZGVmaW5lIEhBVkVfWElORVJBTUEgMQp8ICNkZWZpbmUgSEFWRV9YRklYRVMgMQp8ICNk ZWZpbmUgSEFWRV9YSU5QVVQyIDEKfCAjZGVmaW5lIEhBVkVfWElTQ1JPTExDTEFTU0lORk9f VFlQRSAxCnwgI2RlZmluZSBIQVZFX1hJVE9VQ0hDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmlu ZSBIQVZFX1hJQkFSUklFUlJFTEVBU0VQT0lOVEVSSU5GT19ERVZJQ0VJRCAxCnwgI2RlZmlu ZSBIQVZFX1hJR0VTVFVSRUNMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWFNZTkMg MQp8ICNkZWZpbmUgSEFWRV9YU1lOQ1RSSUdHRVJGRU5DRSAxCnwgI2RlZmluZSBIQVZFX1hE QkUgMQp8ICNkZWZpbmUgSEFWRV9YQ0JfU0hBUEUgMQp8ICNkZWZpbmUgSEFWRV9YU0hBUEUg MQp8ICNkZWZpbmUgSEFWRV9YQ09NUE9TSVRFIDEKfCAjZGVmaW5lIEhBVkVfTElCWE1MMiAx CnwgI2RlZmluZSBIQVZFX0xJTlVYX1NFQ0NPTVBfSCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xf U0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBf RklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GSUxURVJfSCAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgU0laRU9G X0xPTkcgOAp8ICNkZWZpbmUgSEFWRV9BQ0NFUFQ0IDEKfCAjZGVmaW5lIEhBVkVfRkNIRElS IDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNB R0UgMQp8ICNkZWZpbmUgSEFWRV9HRVRfQ1VSUkVOVF9ESVJfTkFNRSAxCnwgI2RlZmluZSBI QVZFX0xSQU5ENDggMQp8ICNkZWZpbmUgSEFWRV9SQU5ET00gMQp8ICNkZWZpbmUgSEFWRV9S SU5UIDEKfCAjZGVmaW5lIEhBVkVfVFJVTkMgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8 ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FMRSAx CnwgI2RlZmluZSBIQVZFX05FV0xPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJMSU1JVCAx CnwgI2RlZmluZSBIQVZFX1NFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEK fCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSU0lH TkFMIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfU0VORFRP IDEKfCAjZGVmaW5lIEhBVkVfUkVDVkZST00gMQp8ICNkZWZpbmUgSEFWRV9HRVRTT0NLTkFN RSAxCnwgI2RlZmluZSBIQVZFX0dFVElGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9GUkVFSUZB RERSUyAxCnwgI2RlZmluZSBIQVZFX0dBSV9TVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZFX1NZ TkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0VORFBXRU5U IDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRHUkVOVCAx CnwgI2RlZmluZSBIQVZFX1JFTkFNRUFUMiAxCnwgI2RlZmluZSBIQVZFX0NGTUFLRVJBVyAx CnwgI2RlZmluZSBIQVZFX0NGU0VUU1BFRUQgMQp8ICNkZWZpbmUgSEFWRV9fX0VYRUNVVEFC TEVfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9MT0cyIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVB RF9TRVROQU1FX05QIDEKfCAjZGVmaW5lIEhBVkVfQUxJR05FRF9BTExPQyAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfQUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX01BRFZJ U0UgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fRlJBTUVfQUREUkVTUyAxCnwgI2RlZmlu ZSBIQVZFX19fQlVJTFRJTl9VTldJTkRfSU5JVCAxCnwgI2RlZmluZSBIQVZFX0ZTRUVLTyAx CnwgI2RlZmluZSBIQVZFX0dSQU5UUFQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQVCAxCnwgI2Rl ZmluZSBIQVZFX1BPU0lYX09QRU5QVCAxCnwgI2RlZmluZSBURVJNSU5GTyAxCnwgI2RlZmlu ZSBURVJNSU5GT19ERUZJTkVTX0JDIDEKfCAjZGVmaW5lIEhBVkVfVElNRVJGRCAxCnwgI2Rl ZmluZSBIQVZFX1ZBTEdSSU5EX1ZBTEdSSU5EX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1Rf VU5JUEFJUl9VTklDT0RFIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwgI2Rl ZmluZSBIQVZFX1dPUktJTkdfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1NOUFJJTlRGIDEKfCAj ZGVmaW5lIEhBVkVfU1BBV05fSCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOIDEKfCAj ZGVmaW5lIEhBVkVfUE9TSVhfU1BBV05fRklMRV9BQ1RJT05TX0FERENIRElSX05QIDEKfCAj ZGVmaW5lIEhBVkVfUE9TSVhfU1BBV05BVFRSX1NFVEZMQUdTIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9QT1NJWF9TUEFXTl9TRVRTSUQgMQp8ICNkZWZpbmUgSEFWRV9HTElCIDEKfCAjZGVm aW5lIEhBVkVfTEFOR0lORk9fQ09ERVNFVCAxCnwgI2RlZmluZSBIQVZFX0xBTkdJTkZPX19O TF9QQVBFUl9XSURUSCAxCnwgI2RlZmluZSBIQVZFX01CU1RBVEVfVCAxCnwgI2RlZmluZSBB TVBFUlNBTkRfRlVMTF9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUFRZUyAxCnwgI2RlZmluZSBI QVZFX1NPQ0tFVFMgMQp8ICNkZWZpbmUgTlVMTF9ERVZJQ0UgIi9kZXYvbnVsbCIKfCAjZGVm aW5lIFNFUENIQVIgJzonCnwgI2RlZmluZSBzdWJwcm9jZXNzZXMgMQp8ICNkZWZpbmUgVVNF Ul9GVUxMX05BTUUgcHctPnB3X2dlY29zCnwgI2RlZmluZSBESVJFQ1RPUllfU0VQICcvJwp8 ICNkZWZpbmUgSVNfREVWSUNFX1NFUChfY18pIDAKfCAjZGVmaW5lIElTX0RJUkVDVE9SWV9T RVAoX2NfKSAoKF9jXykgPT0gRElSRUNUT1JZX1NFUCkKfCAjZGVmaW5lIElTX0FOWV9TRVAo X2NfKSAoSVNfRElSRUNUT1JZX1NFUCAoX2NfKSkKfCAjZGVmaW5lIEhBVkVfUFJPQ0ZTIDEK fCAjZGVmaW5lIERFRkFVTFRfU09VTkRfREVWSUNFICIvZGV2L2RzcCIKfCAjZGVmaW5lIElO VEVSUlVQVF9JTlBVVCAxCnwgI2RlZmluZSBOQVJST1dQUk9UTyAxCnwgI2RlZmluZSBVTklY OThfUFRZUyAxCnwgI2RlZmluZSBQVFlfSVRFUkFUSU9OIGludCBpOyBmb3IgKGkgPSAwOyBp IDwgMTsgaSsrKQp8ICNkZWZpbmUgUFRZX1RUWV9OQU1FX1NQUklOVEYgeyBjaGFyICpwdHlu YW1lID0gMDsgc2lnc2V0X3QgYmxvY2tlZDsgc2lnZW1wdHlzZXQgKCZibG9ja2VkKTsgc2ln YWRkc2V0ICgmYmxvY2tlZCwgU0lHQ0hMRCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX0JMT0NL LCAmYmxvY2tlZCwgMCk7IGlmIChncmFudHB0IChmZCkgIT0gLTEgJiYgdW5sb2NrcHQgKGZk KSAhPSAtMSkgcHR5bmFtZSA9IHB0c25hbWUoZmQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19V TkJMT0NLLCAmYmxvY2tlZCwgMCk7IGlmICghcHR5bmFtZSkgeyBlbWFjc19jbG9zZSAoZmQp OyByZXR1cm4gLTE7IH0gc25wcmludGYgKHB0eV9uYW1lLCBQVFlfTkFNRV9TSVpFLCAiJXMi LCBwdHluYW1lKTsgfQp8ICNkZWZpbmUgUFRZX09QRU4gZG8geyBmZCA9IHBvc2l4X29wZW5w dCAoT19SRFdSIHwgT19DTE9FWEVDIHwgT19OT0NUVFkpOyBpZiAoZmQgPCAwICYmIGVycm5v ID09IEVJTlZBTCkgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fTk9DVFRZKTsgfSB3 aGlsZSAoZmFsc2UpCnwgI2RlZmluZSBQVFlfTkFNRV9TUFJJTlRGIC8qKi8KfCAjZGVmaW5l IFNJR05BTFNfVklBX0NIQVJBQ1RFUlMgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEK fCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBIQVZFX19TRVRKTVAgMQp8 ICNkZWZpbmUgSEFWRV9TSUdTRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TVEFDS19PVkVSRkxP V19IQU5ETElORyAxCnwgI2RlZmluZSBVU0cgLyoqLwp8ICNkZWZpbmUgR05VX0xJTlVYIC8q Ki8KfCAjZGVmaW5lIFNJWkVPRl9TUEVFRF9UIDQKfCAjZGVmaW5lIFVTQUJMRV9GSU9OUkVB RCAxCnwgI2RlZmluZSBVU0FCTEVfU0lHSU8gMQp8ICNkZWZpbmUgQ09QWVJJR0hUICJDb3B5 cmlnaHQgKEMpIDIwMjMgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuIgp8ICNkZWZp bmUgVEVSTV9IRUFERVIgImd0a3V0aWwuaCIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR1VSQVRJ T04gIng4Nl82NC1wYy1saW51eC1nbnUiCnwgI2RlZmluZSBFTUFDU19DT05GSUdfT1BUSU9O UyAiIgp8ICNkZWZpbmUgSEFWRV9YX1dJTkRPV1MgMQp8ICNkZWZpbmUgSEFWRV9YMTEgMQp8 ICNkZWZpbmUgSEFWRV9TVFJVQ1RfQVRUUklCVVRFX0FMSUdORUQgMQp8ICNkZWZpbmUgSEFW RV9UWVBFT0YgMQp8ICNkZWZpbmUgSEFWRV9TVEFURU1FTlRfRVhQUkVTU0lPTlMgMQp8ICNk ZWZpbmUgTUFMTE9DXzBfSVNfTk9OTlVMTCAxCnwgI2RlZmluZSBIQVZFX1NZU19BQ0xfSCAx CnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRf RkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xf U0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZSRUUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xf RlJPTV9NT0RFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZST01fVEVYVCAxCnwgI2RlZmluZSBI QVZFX0FDTF9ERUxFVEVfREVGX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRVhURU5ERURf RklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9MSUJBQ0xfSCAxCnwgI2RlZmluZSBIQVZFX0FD TF9FTlRSSUVTIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZJUlNUX0VOVFJZIDEKfCAjZGVmaW5l IFVTRV9BQ0wgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAxCnwgI2RlZmluZSBIQVZFX0FM TE9DQSAxCnwgI2RlZmluZSBMU1RBVF9GT0xMT1dTX1NMQVNIRURfU1lNTElOSyAxCnwgI2Rl ZmluZSBGVU5DX1JFQUxQQVRIX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfRkFDQ0VTU0FUIDEK fCAjZGVmaW5lIEhBVkVfR0VUQ1dEIDEKfCAjZGVmaW5lIHJlc3RyaWN0IF9fcmVzdHJpY3Rf Xwp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaWYgSEFWRV9VTklTVERfSAp8ICAgICAg I2luY2x1ZGUgPHVuaXN0ZC5oPgp8ICAgICAgI2VuZGlmCnwgICAgICAvKiBtaW5ndywgQmVP UywgSGFpa3UgZGVjbGFyZSBlbnZpcm9uIGluIDxzdGRsaWIuaD4sIG5vdCBpbiA8dW5pc3Rk Lmg+LiAgKi8KfCAgICAgICNpbmNsdWRlIDxzdGRsaWIuaD4KfCAKfCAgICAgICAgICAgICB0 eXBlZGVmIHN0cnVjdCB7IGludCBmb287IH0gZm9vX3Q7CnwgICAgICAgICAgICAgZXh0ZXJu IGZvb190IGVudmlyb247CnwgaW50CnwgbWFpbiAodm9pZCkKfCB7CnwgZW52aXJvbi5mb28g PSAxOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6Mjc3OTc6IHJlc3VsdDog eWVzCmNvbmZpZ3VyZToyNzgxMjogY2hlY2tpbmcgZm9yIGNvbXBsZXRlIGVycm5vLmgKY29u ZmlndXJlOjI3ODg3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjgxOTQ6IGNoZWNraW5nIHdo ZXRoZXIgY3R5cGUuaCBkZWZpbmVzIF9faGVhZGVyX2lubGluZQpjb25maWd1cmU6MjgyMDg6 IGdjYyAtRSAgICBjb25mdGVzdC5jCmNvbmZ0ZXN0LmM6MzIzOjI4OiBlcnJvcjogI2Vycm9y ICI8Y3R5cGUuaD4gZG9lcyBub3QgZGVmaW5lIF9faGVhZGVyX2lubGluZSIKICAzMjMgfCAg ICAgICAgICAgICAgICAgICAgICAgICAgICNlcnJvciAiPGN0eXBlLmg+IGRvZXMgbm90IGRl ZmluZSBfX2hlYWRlcl9pbmxpbmUiCiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAg ICAgXn5+fn4KY29uZmlndXJlOjI4MjA4OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJv Z3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJH TlUgRW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUg UEFDS0FHRV9WRVJTSU9OICIzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdO VSBFbWFjcyAzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUt ZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJodHRwczovL3d3dy5nbnUu b3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIEhBVkVfUERVTVBFUiAxCnwgI2RlZmlu ZSBIQVZFX1NURElPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBI QVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBI QVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5l IEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhB VkVfTElOVVhfRlNfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1BUWV9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAj ZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1QX0ggMQp8ICNkZWZpbmUg SEFWRV9TQU5JVElaRVJfTFNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklU SVpFUl9BU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0NPTU1P Tl9JTlRFUkZBQ0VfREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAj ZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1NURElPX0VYVF9IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1ZGU19IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfQ0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0gg MQp8ICNkZWZpbmUgSEFWRV9JRUVFNzU0X0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAx CnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NUREJPT0xf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19SQU5ET01fSCAxCnwgI2RlZmluZSBTVERDX0hFQURF UlMgMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9DX1NPVVJD RSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBfSFBVWF9BTFRfWE9QRU5f U09DS0VUX0FQSSAxCnwgI2RlZmluZSBfTkVUQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfT1BF TkJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAj ZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9BVFRSSUJTX0VYVF9fIDEKfCAjZGVmaW5l IF9fU1REQ19XQU5UX0lFQ182MDU1OV9CRlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dB TlRfSUVDXzYwNTU5X0RGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1 NTlfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0ZVTkNTX0VYVF9f IDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9UWVBFU19FWFRfXyAxCnwgI2Rl ZmluZSBfX1NURENfV0FOVF9MSUJfRVhUMl9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX01B VEhfU1BFQ19GVU5DU19fIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVmaW5l IF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIEdDQ19MSU5UIDEKfCAjZGVmaW5lIFNZU1RF TV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAxCnwg I2RlZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwgI2RlZmluZSBI QVZFX1BFUlNPTkFMSVRZX0FERFJfTk9fUkFORE9NSVpFIDEKfCAjZGVmaW5lIEhBVkVfTElO VVhfU1lTSU5GTyAxCnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUg SEFWRV9URVJNX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhB VkVfTkVUX0lGX0ggMQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0ggMQp8ICNkZWZpbmUgSEFW RV9TVFJVQ1RfSUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVR X0lGUl9IV0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX05FVE1BU0sg MQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAxCnwgI2RlZmlu ZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQUREUiAxCnwgI2RlZmluZSBIQVZFX1NCUksgMQp8 ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNk ZWZpbmUgSEFWRV9WRk9SSyAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBI QVZFX0NBTk9OSUNBTElaRV9GSUxFX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9SRUFMUEFUSCAx CnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EQVQgMQp8ICNk ZWZpbmUgSEFWRV9MQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBI QVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFW RV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZF X1BTRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUg SEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX0lTQkxBTksgMQp8ICNkZWZpbmUgSEFW RV9JU1dDVFlQRSAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZF X1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmluZSBIQVZF X0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgU1lTVEVNX01BTExPQyAxCnwgI2RlZmluZSBI QVZFX01NQVAgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEIDEKfCAjZGVmaW5lIFRIUkVBRFNf RU5BQkxFRCAxCnwgI2RlZmluZSBIQVZFX1hLQiAxCnwgI2RlZmluZSBIQVZFX1hLQlJFRlJF U0hLRVlCT0FSRE1BUFBJTkcgMQp8ICNkZWZpbmUgSEFWRV9YS0JGUkVFTkFNRVMgMQp8ICNk ZWZpbmUgSEFWRV9YUk1TRVREQVRBQkFTRSAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNP VVJDRVNUUklORyAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJPRlNDUkVFTiAxCnwg I2RlZmluZSBIQVZFX1hESVNQTEFZQ0VMTFMgMQp8ICNkZWZpbmUgSEFWRV9YREVTVFJPWVNV QldJTkRPV1MgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNiAxCnwgI2RlZmluZSBIQVZFX1hfSTE4 TiAxCnwgI2RlZmluZSBIQVZFX1hJQ0NBTExCQUNLX0NBTExCQUNLIDEKfCAjZGVmaW5lIEhB VkVfWDExUjZfWElNIDEKfCAjZGVmaW5lIEhBVkVfUlNWRyAxCnwgI2RlZmluZSBIQVZFX1dF QlAgMQp8ICNkZWZpbmUgSEFWRV9TUUxJVEUzIDEKfCAjZGVmaW5lIEhBVkVfU1FMSVRFM19M T0FEX0VYVEVOU0lPTiAxCnwgI2RlZmluZSBIQVZFX0dFVEFERFJJTkZPX0EgMQp8ICNkZWZp bmUgSEFWRV9HVEszIDEKfCAjZGVmaW5lIEdES19ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5J TkdTIDEKfCAjZGVmaW5lIEdMSUJfRElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAxCnwg I2RlZmluZSBVU0VfR1RLIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX1RSSU0gMQp8ICNkZWZp bmUgSEFWRV9EQlVTIDEKfCAjZGVmaW5lIEhBVkVfREJVU19XQVRDSF9HRVRfVU5JWF9GRCAx CnwgI2RlZmluZSBIQVZFX0RCVVNfVFlQRV9JU19WQUxJRCAxCnwgI2RlZmluZSBIQVZFX0RC VVNfVkFMSURBVEVfQlVTX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX1BB VEggMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0lOVEVSRkFDRSAxCnwgI2RlZmlu ZSBIQVZFX0RCVVNfVkFMSURBVEVfTUVNQkVSIDEKfCAjZGVmaW5lIEhBVkVfR1NFVFRJTkdT IDEKfCAjZGVmaW5lIEhBVkVfTElCU0VMSU5VWCAxCnwgI2RlZmluZSBIQVZFX0dOVVRMUyAx CnwgI2RlZmluZSBIQVZFX0xJQlNZU1RFTUQgMQp8ICNkZWZpbmUgSEFWRV9KU09OIDEKfCAj ZGVmaW5lIEhBVkVfSU5PVElGWSAxCnwgI2RlZmluZSBVU0VfRklMRV9OT1RJRlkgMQp8ICNk ZWZpbmUgVVNFX1RPT0xLSVRfU0NST0xMX0JBUlMgMQp8ICNkZWZpbmUgSEFWRV9YSU0gMQp8 ICNkZWZpbmUgVVNFX1hJTSAxCnwgI2RlZmluZSBIQVZFX1hSRU5ERVIgMQp8ICNkZWZpbmUg VVNFX0NBSVJPX1hDQiAxCnwgI2RlZmluZSBVU0VfQ0FJUk8gMQp8ICNkZWZpbmUgSEFWRV9G UkVFVFlQRSAxCnwgI2RlZmluZSBIQVZFX0ZUX0ZBQ0VfR0VUQ0hBUlZBUklBTlRJTkRFWCAx CnwgI2RlZmluZSBIQVZFX0xJQk9URiAxCnwgI2RlZmluZSBIQVZFX09URl9HRVRfVkFSSUFU SU9OX0dMWVBIUyAxCnwgI2RlZmluZSBIQVZFX00xN05fRkxUIDEKfCAjZGVmaW5lIEhBVkVf SEFSRkJVWlogMQp8ICNkZWZpbmUgVVNFX1hDQiAxCnwgI2RlZmluZSBIQVZFX1hQTSAxCnwg I2RlZmluZSBIQVZFX0pQRUcgMQp8ICNkZWZpbmUgSEFWRV9MQ01TMiAxCnwgI2RlZmluZSBI QVZFX1pMSUIgMQp8ICNkZWZpbmUgRFlOQU1JQ19MSUJfU1VGRklYICIuc28iCnwgI2RlZmlu ZSBEWU5BTUlDX0xJQl9TRUNPTkRBUllfU1VGRklYICIiCnwgI2RlZmluZSBIQVZFX0RMQURE UiAxCnwgI2RlZmluZSBIQVZFX01PRFVMRVMgMQp8ICNkZWZpbmUgTU9EVUxFU19TVUZGSVgg Ii5zbyIKfCAjZGVmaW5lIE5BVElWRV9FTElTUF9TVUZGSVggIi5lbG4iCnwgI2RlZmluZSBI QVZFX1BORyAxCnwgI2RlZmluZSBIQVZFX1RJRkYgMQp8ICNkZWZpbmUgSEFWRV9HSUYgMQp8 ICNkZWZpbmUgSEFWRV9HUE0gMQp8ICNkZWZpbmUgSEFWRV9YX1NNIDEKfCAjZGVmaW5lIEhB VkVfWFJBTkRSIDEKfCAjZGVmaW5lIEhBVkVfWElORVJBTUEgMQp8ICNkZWZpbmUgSEFWRV9Y RklYRVMgMQp8ICNkZWZpbmUgSEFWRV9YSU5QVVQyIDEKfCAjZGVmaW5lIEhBVkVfWElTQ1JP TExDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hJVE9VQ0hDTEFTU0lORk9fVFlQ RSAxCnwgI2RlZmluZSBIQVZFX1hJQkFSUklFUlJFTEVBU0VQT0lOVEVSSU5GT19ERVZJQ0VJ RCAxCnwgI2RlZmluZSBIQVZFX1hJR0VTVFVSRUNMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5l IEhBVkVfWFNZTkMgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQ1RSSUdHRVJGRU5DRSAxCnwgI2Rl ZmluZSBIQVZFX1hEQkUgMQp8ICNkZWZpbmUgSEFWRV9YQ0JfU0hBUEUgMQp8ICNkZWZpbmUg SEFWRV9YU0hBUEUgMQp8ICNkZWZpbmUgSEFWRV9YQ09NUE9TSVRFIDEKfCAjZGVmaW5lIEhB VkVfTElCWE1MMiAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX1NFQ0NPTVBfSCAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZpbmUgSEFWRV9E RUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9G SUxURVJfSCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIg MQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNk ZWZpbmUgU0laRU9GX0xPTkcgOAp8ICNkZWZpbmUgSEFWRV9BQ0NFUFQ0IDEKfCAjZGVmaW5l IEhBVkVfRkNIRElSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUg SEFWRV9HRVRSVVNBR0UgMQp8ICNkZWZpbmUgSEFWRV9HRVRfQ1VSUkVOVF9ESVJfTkFNRSAx CnwgI2RlZmluZSBIQVZFX0xSQU5ENDggMQp8ICNkZWZpbmUgSEFWRV9SQU5ET00gMQp8ICNk ZWZpbmUgSEFWRV9SSU5UIDEKfCAjZGVmaW5lIEhBVkVfVFJVTkMgMQp8ICNkZWZpbmUgSEFW RV9TRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZF X1NFVExPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX05FV0xPQ0FMRSAxCnwgI2RlZmluZSBIQVZF X0dFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZF X1NIVVRET1dOIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5l IEhBVkVfU1RSU0lHTkFMIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5l IEhBVkVfU0VORFRPIDEKfCAjZGVmaW5lIEhBVkVfUkVDVkZST00gMQp8ICNkZWZpbmUgSEFW RV9HRVRTT0NLTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVElGQUREUlMgMQp8ICNkZWZpbmUg SEFWRV9GUkVFSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0dBSV9TVFJFUlJPUiAxCnwgI2Rl ZmluZSBIQVZFX1NZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBI QVZFX0VORFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFW RV9FTkRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX1JFTkFNRUFUMiAxCnwgI2RlZmluZSBIQVZF X0NGTUFLRVJBVyAxCnwgI2RlZmluZSBIQVZFX0NGU0VUU1BFRUQgMQp8ICNkZWZpbmUgSEFW RV9fX0VYRUNVVEFCTEVfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9MT0cyIDEKfCAjZGVmaW5l IEhBVkVfUFRIUkVBRF9TRVROQU1FX05QIDEKfCAjZGVmaW5lIEhBVkVfQUxJR05FRF9BTExP QyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfQUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZF X1BPU0lYX01BRFZJU0UgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fRlJBTUVfQUREUkVT UyAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9VTldJTkRfSU5JVCAxCnwgI2RlZmluZSBI QVZFX0ZTRUVLTyAxCnwgI2RlZmluZSBIQVZFX0dSQU5UUFQgMQp8ICNkZWZpbmUgSEFWRV9H RVRQVCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX09QRU5QVCAxCnwgI2RlZmluZSBURVJNSU5G TyAxCnwgI2RlZmluZSBURVJNSU5GT19ERUZJTkVTX0JDIDEKfCAjZGVmaW5lIEhBVkVfVElN RVJGRCAxCnwgI2RlZmluZSBIQVZFX1ZBTEdSSU5EX1ZBTEdSSU5EX0ggMQp8ICNkZWZpbmUg SEFWRV9TVFJVQ1RfVU5JUEFJUl9VTklDT0RFIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19W Rk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1NO UFJJTlRGIDEKfCAjZGVmaW5lIEhBVkVfU1BBV05fSCAxCnwgI2RlZmluZSBIQVZFX1BPU0lY X1NQQVdOIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV05fRklMRV9BQ1RJT05TX0FERENI RElSX05QIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV05BVFRSX1NFVEZMQUdTIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9QT1NJWF9TUEFXTl9TRVRTSUQgMQp8ICNkZWZpbmUgSEFWRV9H TElCIDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fQ09ERVNFVCAxCnwgI2RlZmluZSBIQVZF X0xBTkdJTkZPX19OTF9QQVBFUl9XSURUSCAxCnwgI2RlZmluZSBIQVZFX01CU1RBVEVfVCAx CnwgI2RlZmluZSBBTVBFUlNBTkRfRlVMTF9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUFRZUyAx CnwgI2RlZmluZSBIQVZFX1NPQ0tFVFMgMQp8ICNkZWZpbmUgTlVMTF9ERVZJQ0UgIi9kZXYv bnVsbCIKfCAjZGVmaW5lIFNFUENIQVIgJzonCnwgI2RlZmluZSBzdWJwcm9jZXNzZXMgMQp8 ICNkZWZpbmUgVVNFUl9GVUxMX05BTUUgcHctPnB3X2dlY29zCnwgI2RlZmluZSBESVJFQ1RP UllfU0VQICcvJwp8ICNkZWZpbmUgSVNfREVWSUNFX1NFUChfY18pIDAKfCAjZGVmaW5lIElT X0RJUkVDVE9SWV9TRVAoX2NfKSAoKF9jXykgPT0gRElSRUNUT1JZX1NFUCkKfCAjZGVmaW5l IElTX0FOWV9TRVAoX2NfKSAoSVNfRElSRUNUT1JZX1NFUCAoX2NfKSkKfCAjZGVmaW5lIEhB VkVfUFJPQ0ZTIDEKfCAjZGVmaW5lIERFRkFVTFRfU09VTkRfREVWSUNFICIvZGV2L2RzcCIK fCAjZGVmaW5lIElOVEVSUlVQVF9JTlBVVCAxCnwgI2RlZmluZSBOQVJST1dQUk9UTyAxCnwg I2RlZmluZSBVTklYOThfUFRZUyAxCnwgI2RlZmluZSBQVFlfSVRFUkFUSU9OIGludCBpOyBm b3IgKGkgPSAwOyBpIDwgMTsgaSsrKQp8ICNkZWZpbmUgUFRZX1RUWV9OQU1FX1NQUklOVEYg eyBjaGFyICpwdHluYW1lID0gMDsgc2lnc2V0X3QgYmxvY2tlZDsgc2lnZW1wdHlzZXQgKCZi bG9ja2VkKTsgc2lnYWRkc2V0ICgmYmxvY2tlZCwgU0lHQ0hMRCk7IHB0aHJlYWRfc2lnbWFz ayAoU0lHX0JMT0NLLCAmYmxvY2tlZCwgMCk7IGlmIChncmFudHB0IChmZCkgIT0gLTEgJiYg dW5sb2NrcHQgKGZkKSAhPSAtMSkgcHR5bmFtZSA9IHB0c25hbWUoZmQpOyBwdGhyZWFkX3Np Z21hc2sgKFNJR19VTkJMT0NLLCAmYmxvY2tlZCwgMCk7IGlmICghcHR5bmFtZSkgeyBlbWFj c19jbG9zZSAoZmQpOyByZXR1cm4gLTE7IH0gc25wcmludGYgKHB0eV9uYW1lLCBQVFlfTkFN RV9TSVpFLCAiJXMiLCBwdHluYW1lKTsgfQp8ICNkZWZpbmUgUFRZX09QRU4gZG8geyBmZCA9 IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19DTE9FWEVDIHwgT19OT0NUVFkpOyBpZiAoZmQg PCAwICYmIGVycm5vID09IEVJTlZBTCkgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9f Tk9DVFRZKTsgfSB3aGlsZSAoZmFsc2UpCnwgI2RlZmluZSBQVFlfTkFNRV9TUFJJTlRGIC8q Ki8KfCAjZGVmaW5lIFNJR05BTFNfVklBX0NIQVJBQ1RFUlMgMQp8ICNkZWZpbmUgR0NfU0VU Sk1QX1dPUktTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBIQVZF X19TRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9T VEFDS19PVkVSRkxPV19IQU5ETElORyAxCnwgI2RlZmluZSBVU0cgLyoqLwp8ICNkZWZpbmUg R05VX0xJTlVYIC8qKi8KfCAjZGVmaW5lIFNJWkVPRl9TUEVFRF9UIDQKfCAjZGVmaW5lIFVT QUJMRV9GSU9OUkVBRCAxCnwgI2RlZmluZSBVU0FCTEVfU0lHSU8gMQp8ICNkZWZpbmUgQ09Q WVJJR0hUICJDb3B5cmlnaHQgKEMpIDIwMjMgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJ bmMuIgp8ICNkZWZpbmUgVEVSTV9IRUFERVIgImd0a3V0aWwuaCIKfCAjZGVmaW5lIEVNQUNT X0NPTkZJR1VSQVRJT04gIng4Nl82NC1wYy1saW51eC1nbnUiCnwgI2RlZmluZSBFTUFDU19D T05GSUdfT1BUSU9OUyAiIgp8ICNkZWZpbmUgSEFWRV9YX1dJTkRPV1MgMQp8ICNkZWZpbmUg SEFWRV9YMTEgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfQVRUUklCVVRFX0FMSUdORUQgMQp8 ICNkZWZpbmUgSEFWRV9UWVBFT0YgMQp8ICNkZWZpbmUgSEFWRV9TVEFURU1FTlRfRVhQUkVT U0lPTlMgMQp8ICNkZWZpbmUgTUFMTE9DXzBfSVNfTk9OTlVMTCAxCnwgI2RlZmluZSBIQVZF X1NZU19BQ0xfSCAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRklMRSAxCnwgI2RlZmluZSBI QVZFX0FDTF9HRVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZJTEUgMQp8ICNkZWZp bmUgSEFWRV9BQ0xfU0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZSRUUgMQp8ICNkZWZp bmUgSEFWRV9BQ0xfRlJPTV9NT0RFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZST01fVEVYVCAx CnwgI2RlZmluZSBIQVZFX0FDTF9ERUxFVEVfREVGX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9B Q0xfRVhURU5ERURfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9MSUJBQ0xfSCAxCnwgI2Rl ZmluZSBIQVZFX0FDTF9FTlRSSUVTIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZJUlNUX0VOVFJZ IDEKfCAjZGVmaW5lIFVTRV9BQ0wgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAxCnwgI2Rl ZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBMU1RBVF9GT0xMT1dTX1NMQVNIRURfU1lN TElOSyAxCnwgI2RlZmluZSBGVU5DX1JFQUxQQVRIX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVf RkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfR0VUQ1dEIDEKfCAjZGVmaW5lIHJlc3RyaWN0 IF9fcmVzdHJpY3RfXwp8ICNkZWZpbmUgSEFWRV9FTlZJUk9OX0RFQ0wgMQp8IC8qIGVuZCBj b25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8Y3R5cGUuaD4KfCAgICAgICAgICAgICAgICAg ICAgICAgICAgI2lmbmRlZiBfX2hlYWRlcl9pbmxpbmUKfCAgICAgICAgICAgICAgICAgICAg ICAgICAgICNlcnJvciAiPGN0eXBlLmg+IGRvZXMgbm90IGRlZmluZSBfX2hlYWRlcl9pbmxp bmUiCnwgICAgICAgICAgICAgICAgICAgICAgICAgICNlbmRpZgp8IApjb25maWd1cmU6Mjgy MTY6IHJlc3VsdDogbm8KY29uZmlndXJlOjI4MzgxOiBjaGVja2luZyBmb3IgbW9kZV90CmNv bmZpZ3VyZToyODM4MTogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmln dXJlOjI4MzgxOiAkPyA9IDAKY29uZmlndXJlOjI4MzgxOiBnY2MgLWMgLWczIC1PMiAgICBj b25mdGVzdC5jID4mNQpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiAnbWFpbic6CmNvbmZ0ZXN0 LmM6MzUyOjIxOiBlcnJvcjogZXhwZWN0ZWQgZXhwcmVzc2lvbiBiZWZvcmUgJyknIHRva2Vu CiAgMzUyIHwgaWYgKHNpemVvZiAoKG1vZGVfdCkpKQogICAgICB8ICAgICAgICAgICAgICAg ICAgICAgXgpjb25maWd1cmU6MjgzODE6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9n cmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdO VSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQ QUNLQUdFX1ZFUlNJT04gIjMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05V IEVtYWNzIDMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1l bWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHBzOi8vd3d3LmdudS5v cmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgSEFWRV9QRFVNUEVSIDEKfCAjZGVmaW5l IEhBVkVfU1RESU9fSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhB VkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhB VkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUg SEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFW RV9MSU5VWF9GU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNk ZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBI QVZFX1NBTklUSVpFUl9MU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJ WkVSX0FTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQ09NTU9O X0lOVEVSRkFDRV9ERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNk ZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfVkZTX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19DREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAx CnwgI2RlZmluZSBIQVZFX0lFRUU3NTRfSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1REQk9PTF9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JBTkRPTV9IIDEKfCAjZGVmaW5lIFNURENfSEVBREVS UyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNF IDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9IUFVYX0FMVF9YT1BFTl9T T0NLRVRfQVBJIDEKfCAjZGVmaW5lIF9ORVRCU0RfU09VUkNFIDEKfCAjZGVmaW5lIF9PUEVO QlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNk ZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0FUVFJJQlNfRVhUX18gMQp8ICNkZWZpbmUg X19TVERDX1dBTlRfSUVDXzYwNTU5X0JGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FO VF9JRUNfNjA1NTlfREZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1 OV9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRlVOQ1NfRVhUX18g MQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X1RZUEVTX0VYVF9fIDEKfCAjZGVm aW5lIF9fU1REQ19XQU5UX0xJQl9FWFQyX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfTUFU SF9TUEVDX0ZVTkNTX18gMQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUg X19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgR0NDX0xJTlQgMQp8ICNkZWZpbmUgU1lTVEVN X1RZUEUgImdudS9saW51eCIKfCAjZGVmaW5lIEhBVkVfU1lTX1NPVU5EQ0FSRF9IIDEKfCAj ZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2RlZmluZSBIQVZFX1NPVU5EIDEKfCAjZGVmaW5lIEhB VkVfUEVSU09OQUxJVFlfQUREUl9OT19SQU5ET01JWkUgMQp8ICNkZWZpbmUgSEFWRV9MSU5V WF9TWVNJTkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwgI2RlZmluZSBI QVZFX1RFUk1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFW RV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZFX0lGQUREUlNfSCAxCnwgI2RlZmluZSBIQVZF X1NUUlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFf SUZSX0hXQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAx CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJPQURBRERSIDEKfCAjZGVmaW5l IEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERSIDEKfCAjZGVmaW5lIEhBVkVfU0JSSyAxCnwg I2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2Rl ZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhB VkVfQ0FOT05JQ0FMSVpFX0ZJTEVfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1JFQUxQQVRIIDEK fCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0RBVCAxCnwgI2Rl ZmluZSBIQVZFX0xDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhB VkVfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZF X0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVf UFNFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBI QVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfSVNCTEFOSyAxCnwgI2RlZmluZSBIQVZF X0lTV0NUWVBFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVf U1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVf R0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBTWVNURU1fTUFMTE9DIDEKfCAjZGVmaW5lIEhB VkVfTU1BUCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQUQgMQp8ICNkZWZpbmUgVEhSRUFEU19F TkFCTEVEIDEKfCAjZGVmaW5lIEhBVkVfWEtCIDEKfCAjZGVmaW5lIEhBVkVfWEtCUkVGUkVT SEtFWUJPQVJETUFQUElORyAxCnwgI2RlZmluZSBIQVZFX1hLQkZSRUVOQU1FUyAxCnwgI2Rl ZmluZSBIQVZFX1hSTVNFVERBVEFCQVNFIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09V UkNFU1RSSU5HIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAj ZGVmaW5lIEhBVkVfWERJU1BMQVlDRUxMUyAxCnwgI2RlZmluZSBIQVZFX1hERVNUUk9ZU1VC V0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gxMVI2IDEKfCAjZGVmaW5lIEhBVkVfWF9JMThO IDEKfCAjZGVmaW5lIEhBVkVfWElDQ0FMTEJBQ0tfQ0FMTEJBQ0sgMQp8ICNkZWZpbmUgSEFW RV9YMTFSNl9YSU0gMQp8ICNkZWZpbmUgSEFWRV9SU1ZHIDEKfCAjZGVmaW5lIEhBVkVfV0VC UCAxCnwgI2RlZmluZSBIQVZFX1NRTElURTMgMQp8ICNkZWZpbmUgSEFWRV9TUUxJVEUzX0xP QURfRVhURU5TSU9OIDEKfCAjZGVmaW5lIEhBVkVfR0VUQUREUklORk9fQSAxCnwgI2RlZmlu ZSBIQVZFX0dUSzMgMQp8ICNkZWZpbmUgR0RLX0RJU0FCTEVfREVQUkVDQVRJT05fV0FSTklO R1MgMQp8ICNkZWZpbmUgR0xJQl9ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAj ZGVmaW5lIFVTRV9HVEsgMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfVFJJTSAxCnwgI2RlZmlu ZSBIQVZFX0RCVVMgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1dBVENIX0dFVF9VTklYX0ZEIDEK fCAjZGVmaW5lIEhBVkVfREJVU19UWVBFX0lTX1ZBTElEIDEKfCAjZGVmaW5lIEhBVkVfREJV U19WQUxJREFURV9CVVNfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfUEFU SCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfSU5URVJGQUNFIDEKfCAjZGVmaW5l IEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIgMQp8ICNkZWZpbmUgSEFWRV9HU0VUVElOR1Mg MQp8ICNkZWZpbmUgSEFWRV9MSUJTRUxJTlVYIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTIDEK fCAjZGVmaW5lIEhBVkVfTElCU1lTVEVNRCAxCnwgI2RlZmluZSBIQVZFX0pTT04gMQp8ICNk ZWZpbmUgSEFWRV9JTk9USUZZIDEKfCAjZGVmaW5lIFVTRV9GSUxFX05PVElGWSAxCnwgI2Rl ZmluZSBVU0VfVE9PTEtJVF9TQ1JPTExfQkFSUyAxCnwgI2RlZmluZSBIQVZFX1hJTSAxCnwg I2RlZmluZSBVU0VfWElNIDEKfCAjZGVmaW5lIEhBVkVfWFJFTkRFUiAxCnwgI2RlZmluZSBV U0VfQ0FJUk9fWENCIDEKfCAjZGVmaW5lIFVTRV9DQUlSTyAxCnwgI2RlZmluZSBIQVZFX0ZS RUVUWVBFIDEKfCAjZGVmaW5lIEhBVkVfRlRfRkFDRV9HRVRDSEFSVkFSSUFOVElOREVYIDEK fCAjZGVmaW5lIEhBVkVfTElCT1RGIDEKfCAjZGVmaW5lIEhBVkVfT1RGX0dFVF9WQVJJQVRJ T05fR0xZUEhTIDEKfCAjZGVmaW5lIEhBVkVfTTE3Tl9GTFQgMQp8ICNkZWZpbmUgSEFWRV9I QVJGQlVaWiAxCnwgI2RlZmluZSBVU0VfWENCIDEKfCAjZGVmaW5lIEhBVkVfWFBNIDEKfCAj ZGVmaW5lIEhBVkVfSlBFRyAxCnwgI2RlZmluZSBIQVZFX0xDTVMyIDEKfCAjZGVmaW5lIEhB VkVfWkxJQiAxCnwgI2RlZmluZSBEWU5BTUlDX0xJQl9TVUZGSVggIi5zbyIKfCAjZGVmaW5l IERZTkFNSUNfTElCX1NFQ09OREFSWV9TVUZGSVggIiIKfCAjZGVmaW5lIEhBVkVfRExBRERS IDEKfCAjZGVmaW5lIEhBVkVfTU9EVUxFUyAxCnwgI2RlZmluZSBNT0RVTEVTX1NVRkZJWCAi LnNvIgp8ICNkZWZpbmUgTkFUSVZFX0VMSVNQX1NVRkZJWCAiLmVsbiIKfCAjZGVmaW5lIEhB VkVfUE5HIDEKfCAjZGVmaW5lIEhBVkVfVElGRiAxCnwgI2RlZmluZSBIQVZFX0dJRiAxCnwg I2RlZmluZSBIQVZFX0dQTSAxCnwgI2RlZmluZSBIQVZFX1hfU00gMQp8ICNkZWZpbmUgSEFW RV9YUkFORFIgMQp8ICNkZWZpbmUgSEFWRV9YSU5FUkFNQSAxCnwgI2RlZmluZSBIQVZFX1hG SVhFUyAxCnwgI2RlZmluZSBIQVZFX1hJTlBVVDIgMQp8ICNkZWZpbmUgSEFWRV9YSVNDUk9M TENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWElUT1VDSENMQVNTSU5GT19UWVBF IDEKfCAjZGVmaW5lIEhBVkVfWElCQVJSSUVSUkVMRUFTRVBPSU5URVJJTkZPX0RFVklDRUlE IDEKfCAjZGVmaW5lIEhBVkVfWElHRVNUVVJFQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUg SEFWRV9YU1lOQyAxCnwgI2RlZmluZSBIQVZFX1hTWU5DVFJJR0dFUkZFTkNFIDEKfCAjZGVm aW5lIEhBVkVfWERCRSAxCnwgI2RlZmluZSBIQVZFX1hDQl9TSEFQRSAxCnwgI2RlZmluZSBI QVZFX1hTSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hDT01QT1NJVEUgMQp8ICNkZWZpbmUgSEFW RV9MSUJYTUwyIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU0VDQ09NUF9IIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9TRUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfU0VDQ09NUF9GSUxURVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZJ TFRFUl9IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9GSUxURVJfRkxBR19UU1lOQyAxCnwgI2Rl ZmluZSBTSVpFT0ZfTE9ORyA4CnwgI2RlZmluZSBIQVZFX0FDQ0VQVDQgMQp8ICNkZWZpbmUg SEFWRV9GQ0hESVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAxCnwgI2RlZmluZSBI QVZFX0dFVFJVU0FHRSAxCnwgI2RlZmluZSBIQVZFX0dFVF9DVVJSRU5UX0RJUl9OQU1FIDEK fCAjZGVmaW5lIEhBVkVfTFJBTkQ0OCAxCnwgI2RlZmluZSBIQVZFX1JBTkRPTSAxCnwgI2Rl ZmluZSBIQVZFX1JJTlQgMQp8ICNkZWZpbmUgSEFWRV9UUlVOQyAxCnwgI2RlZmluZSBIQVZF X1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVf U0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfTkVXTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVf R0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVf U0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUg SEFWRV9TVFJTSUdOQUwgMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUg SEFWRV9TRU5EVE8gMQp8ICNkZWZpbmUgSEFWRV9SRUNWRlJPTSAxCnwgI2RlZmluZSBIQVZF X0dFVFNPQ0tOQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUSUZBRERSUyAxCnwgI2RlZmluZSBI QVZFX0ZSRUVJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfR0FJX1NUUkVSUk9SIDEKfCAjZGVm aW5lIEhBVkVfU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhB VkVfRU5EUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUkVOVCAxCnwgI2RlZmluZSBIQVZF X0VOREdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfUkVOQU1FQVQyIDEKfCAjZGVmaW5lIEhBVkVf Q0ZNQUtFUkFXIDEKfCAjZGVmaW5lIEhBVkVfQ0ZTRVRTUEVFRCAxCnwgI2RlZmluZSBIQVZF X19fRVhFQ1VUQUJMRV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0xPRzIgMQp8ICNkZWZpbmUg SEFWRV9QVEhSRUFEX1NFVE5BTUVfTlAgMQp8ICNkZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9D IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVf UE9TSVhfTUFEVklTRSAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9GUkFNRV9BRERSRVNT IDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX1VOV0lORF9JTklUIDEKfCAjZGVmaW5lIEhB VkVfRlNFRUtPIDEKfCAjZGVmaW5lIEhBVkVfR1JBTlRQVCAxCnwgI2RlZmluZSBIQVZFX0dF VFBUIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfT1BFTlBUIDEKfCAjZGVmaW5lIFRFUk1JTkZP IDEKfCAjZGVmaW5lIFRFUk1JTkZPX0RFRklORVNfQkMgMQp8ICNkZWZpbmUgSEFWRV9USU1F UkZEIDEKfCAjZGVmaW5lIEhBVkVfVkFMR1JJTkRfVkFMR1JJTkRfSCAxCnwgI2RlZmluZSBI QVZFX1NUUlVDVF9VTklQQUlSX1VOSUNPREUgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZG T1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19GT1JLIDEKfCAjZGVmaW5lIEhBVkVfU05Q UklOVEYgMQp8ICNkZWZpbmUgSEFWRV9TUEFXTl9IIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhf U1BBV04gMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTl9GSUxFX0FDVElPTlNfQUREQ0hE SVJfTlAgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTkFUVFJfU0VURkxBR1MgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX1BPU0lYX1NQQVdOX1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX0dM SUIgMQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5GT19DT0RFU0VUIDEKfCAjZGVmaW5lIEhBVkVf TEFOR0lORk9fX05MX1BBUEVSX1dJRFRIIDEKfCAjZGVmaW5lIEhBVkVfTUJTVEFURV9UIDEK fCAjZGVmaW5lIEFNUEVSU0FORF9GVUxMX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9QVFlTIDEK fCAjZGVmaW5lIEhBVkVfU09DS0VUUyAxCnwgI2RlZmluZSBOVUxMX0RFVklDRSAiL2Rldi9u dWxsIgp8ICNkZWZpbmUgU0VQQ0hBUiAnOicKfCAjZGVmaW5lIHN1YnByb2Nlc3NlcyAxCnwg I2RlZmluZSBVU0VSX0ZVTExfTkFNRSBwdy0+cHdfZ2Vjb3MKfCAjZGVmaW5lIERJUkVDVE9S WV9TRVAgJy8nCnwgI2RlZmluZSBJU19ERVZJQ0VfU0VQKF9jXykgMAp8ICNkZWZpbmUgSVNf RElSRUNUT1JZX1NFUChfY18pICgoX2NfKSA9PSBESVJFQ1RPUllfU0VQKQp8ICNkZWZpbmUg SVNfQU5ZX1NFUChfY18pIChJU19ESVJFQ1RPUllfU0VQIChfY18pKQp8ICNkZWZpbmUgSEFW RV9QUk9DRlMgMQp8ICNkZWZpbmUgREVGQVVMVF9TT1VORF9ERVZJQ0UgIi9kZXYvZHNwIgp8 ICNkZWZpbmUgSU5URVJSVVBUX0lOUFVUIDEKfCAjZGVmaW5lIE5BUlJPV1BST1RPIDEKfCAj ZGVmaW5lIFVOSVg5OF9QVFlTIDEKfCAjZGVmaW5lIFBUWV9JVEVSQVRJT04gaW50IGk7IGZv ciAoaSA9IDA7IGkgPCAxOyBpKyspCnwgI2RlZmluZSBQVFlfVFRZX05BTUVfU1BSSU5URiB7 IGNoYXIgKnB0eW5hbWUgPSAwOyBzaWdzZXRfdCBibG9ja2VkOyBzaWdlbXB0eXNldCAoJmJs b2NrZWQpOyBzaWdhZGRzZXQgKCZibG9ja2VkLCBTSUdDSExEKTsgcHRocmVhZF9zaWdtYXNr IChTSUdfQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKGdyYW50cHQgKGZkKSAhPSAtMSAmJiB1 bmxvY2twdCAoZmQpICE9IC0xKSBwdHluYW1lID0gcHRzbmFtZShmZCk7IHB0aHJlYWRfc2ln bWFzayAoU0lHX1VOQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKCFwdHluYW1lKSB7IGVtYWNz X2Nsb3NlIChmZCk7IHJldHVybiAtMTsgfSBzbnByaW50ZiAocHR5X25hbWUsIFBUWV9OQU1F X1NJWkUsICIlcyIsIHB0eW5hbWUpOyB9CnwgI2RlZmluZSBQVFlfT1BFTiBkbyB7IGZkID0g cG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX0NMT0VYRUMgfCBPX05PQ1RUWSk7IGlmIChmZCA8 IDAgJiYgZXJybm8gPT0gRUlOVkFMKSBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19O T0NUVFkpOyB9IHdoaWxlIChmYWxzZSkKfCAjZGVmaW5lIFBUWV9OQU1FX1NQUklOVEYgLyoq Lwp8ICNkZWZpbmUgU0lHTkFMU19WSUFfQ0hBUkFDVEVSUyAxCnwgI2RlZmluZSBHQ19TRVRK TVBfV09SS1MgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVf X1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NU QUNLX09WRVJGTE9XX0hBTkRMSU5HIDEKfCAjZGVmaW5lIFVTRyAvKiovCnwgI2RlZmluZSBH TlVfTElOVVggLyoqLwp8ICNkZWZpbmUgU0laRU9GX1NQRUVEX1QgNAp8ICNkZWZpbmUgVVNB QkxFX0ZJT05SRUFEIDEKfCAjZGVmaW5lIFVTQUJMRV9TSUdJTyAxCnwgI2RlZmluZSBDT1BZ UklHSFQgIkNvcHlyaWdodCAoQykgMjAyMyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIElu Yy4iCnwgI2RlZmluZSBURVJNX0hFQURFUiAiZ3RrdXRpbC5oIgp8ICNkZWZpbmUgRU1BQ1Nf Q09ORklHVVJBVElPTiAieDg2XzY0LXBjLWxpbnV4LWdudSIKfCAjZGVmaW5lIEVNQUNTX0NP TkZJR19PUFRJT05TICIiCnwgI2RlZmluZSBIQVZFX1hfV0lORE9XUyAxCnwgI2RlZmluZSBI QVZFX1gxMSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9BVFRSSUJVVEVfQUxJR05FRCAxCnwg I2RlZmluZSBIQVZFX1RZUEVPRiAxCnwgI2RlZmluZSBIQVZFX1NUQVRFTUVOVF9FWFBSRVNT SU9OUyAxCnwgI2RlZmluZSBNQUxMT0NfMF9JU19OT05OVUxMIDEKfCAjZGVmaW5lIEhBVkVf U1lTX0FDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GSUxFIDEKfCAjZGVmaW5lIEhB VkVfQUNMX0dFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRklMRSAxCnwgI2RlZmlu ZSBIQVZFX0FDTF9TRVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJFRSAxCnwgI2RlZmlu ZSBIQVZFX0FDTF9GUk9NX01PREUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9URVhUIDEK fCAjZGVmaW5lIEhBVkVfQUNMX0RFTEVURV9ERUZfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FD TF9FWFRFTkRFRF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0xJQkFDTF9IIDEKfCAjZGVm aW5lIEhBVkVfQUNMX0VOVFJJRVMgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRklSU1RfRU5UUlkg MQp8ICNkZWZpbmUgVVNFX0FDTCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVm aW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIExTVEFUX0ZPTExPV1NfU0xBU0hFRF9TWU1M SU5LIDEKfCAjZGVmaW5lIEZVTkNfUkVBTFBBVEhfV09SS1MgMQp8ICNkZWZpbmUgSEFWRV9G QUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9HRVRDV0QgMQp8ICNkZWZpbmUgcmVzdHJpY3Qg X19yZXN0cmljdF9fCnwgI2RlZmluZSBIQVZFX0VOVklST05fREVDTCAxCnwgLyogZW5kIGNv bmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxzdGRkZWYuaD4KfCAjaWZkZWYgSEFWRV9TVERJ T19ICnwgIyBpbmNsdWRlIDxzdGRpby5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NURExJ Ql9ICnwgIyBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJ TkdfSAp8ICMgaW5jbHVkZSA8c3RyaW5nLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfSU5U VFlQRVNfSAp8ICMgaW5jbHVkZSA8aW50dHlwZXMuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFW RV9TVERJTlRfSAp8ICMgaW5jbHVkZSA8c3RkaW50Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhB VkVfU1RSSU5HU19ICnwgIyBpbmNsdWRlIDxzdHJpbmdzLmg+CnwgI2VuZGlmCnwgI2lmZGVm IEhBVkVfU1lTX1RZUEVTX0gKfCAjIGluY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNlbmRpZgp8 ICNpZmRlZiBIQVZFX1NZU19TVEFUX0gKfCAjIGluY2x1ZGUgPHN5cy9zdGF0Lmg+CnwgI2Vu ZGlmCnwgI2lmZGVmIEhBVkVfVU5JU1REX0gKfCAjIGluY2x1ZGUgPHVuaXN0ZC5oPgp8ICNl bmRpZgp8IGludAp8IG1haW4gKHZvaWQpCnwgewp8IGlmIChzaXplb2YgKChtb2RlX3QpKSkK fCAJICAgIHJldHVybiAwOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6Mjgz ODE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyODQ3NDogY2hlY2tpbmcgd2hldGhlciBzdHJt b2RlIGlzIGRlY2xhcmVkCmNvbmZpZ3VyZToyODQ3NDogZ2NjIC1jIC1nMyAtTzIgICAgIGNv bmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6IEluIGZ1bmN0aW9uICdtYWluJzoKY29uZnRlc3Qu YzozNTY6MTA6IGVycm9yOiAnc3RybW9kZScgdW5kZWNsYXJlZCAoZmlyc3QgdXNlIGluIHRo aXMgZnVuY3Rpb24pOyBkaWQgeW91IG1lYW4gJ3N0cnRvZCc/CiAgMzU2IHwgICAodm9pZCkg c3RybW9kZTsKICAgICAgfCAgICAgICAgICBefn5+fn5+CiAgICAgIHwgICAgICAgICAgc3Ry dG9kCmNvbmZ0ZXN0LmM6MzU2OjEwOiBub3RlOiBlYWNoIHVuZGVjbGFyZWQgaWRlbnRpZmll ciBpcyByZXBvcnRlZCBvbmx5IG9uY2UgZm9yIGVhY2ggZnVuY3Rpb24gaXQgYXBwZWFycyBp bgpjb25maWd1cmU6Mjg0NzQ6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdh czoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFj cyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdF X1ZFUlNJT04gIjMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNz IDMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0Bn bnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHBzOi8vd3d3LmdudS5vcmcvc29m dHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgSEFWRV9QRFVNUEVSIDEKfCAjZGVmaW5lIEhBVkVf U1RESU9fSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RS SU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RE SU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf U1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9V TklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU5V WF9GU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf U1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf UkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUg SEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NB TklUSVpFUl9MU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0FT QU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQ09NTU9OX0lOVEVS RkFDRV9ERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUg SEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfVkZTX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19DREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2Rl ZmluZSBIQVZFX0lFRUU3NTRfSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1JBTkRPTV9IIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwg I2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAj ZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9IUFVYX0FMVF9YT1BFTl9TT0NLRVRf QVBJIDEKfCAjZGVmaW5lIF9ORVRCU0RfU09VUkNFIDEKfCAjZGVmaW5lIF9PUEVOQlNEX1NP VVJDRSAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUg X19TVERDX1dBTlRfSUVDXzYwNTU5X0FUVFJJQlNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERD X1dBTlRfSUVDXzYwNTU5X0JGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNf NjA1NTlfREZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9FWFRf XyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRlVOQ1NfRVhUX18gMQp8ICNk ZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X1RZUEVTX0VYVF9fIDEKfCAjZGVmaW5lIF9f U1REQ19XQU5UX0xJQl9FWFQyX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfTUFUSF9TUEVD X0ZVTkNTX18gMQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19FWFRF TlNJT05TX18gMQp8ICNkZWZpbmUgR0NDX0xJTlQgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUg ImdudS9saW51eCIKfCAjZGVmaW5lIEhBVkVfU1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5l IEhBVkVfQUxTQSAxCnwgI2RlZmluZSBIQVZFX1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVfUEVS U09OQUxJVFlfQUREUl9OT19SQU5ET01JWkUgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJ TkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RF Uk1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRf SUZfSCAxCnwgI2RlZmluZSBIQVZFX0lGQUREUlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVD VF9JRlJFUV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hX QUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2Rl ZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVf U1RSVUNUX0lGUkVRX0lGUl9BRERSIDEKfCAjZGVmaW5lIEhBVkVfU0JSSyAxCnwgI2RlZmlu ZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBI QVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfQ0FO T05JQ0FMSVpFX0ZJTEVfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1JFQUxQQVRIIDEKfCAjZGVm aW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0RBVCAxCnwgI2RlZmluZSBI QVZFX0xDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRP UEVORElSIDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5D IDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVD VCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1JF QURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfSVNCTEFOSyAxCnwgI2RlZmluZSBIQVZFX0lTV0NU WVBFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElO SyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRB QkxFU0laRSAxCnwgI2RlZmluZSBTWVNURU1fTUFMTE9DIDEKfCAjZGVmaW5lIEhBVkVfTU1B UCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQUQgMQp8ICNkZWZpbmUgVEhSRUFEU19FTkFCTEVE IDEKfCAjZGVmaW5lIEhBVkVfWEtCIDEKfCAjZGVmaW5lIEhBVkVfWEtCUkVGUkVTSEtFWUJP QVJETUFQUElORyAxCnwgI2RlZmluZSBIQVZFX1hLQkZSRUVOQU1FUyAxCnwgI2RlZmluZSBI QVZFX1hSTVNFVERBVEFCQVNFIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RS SU5HIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5l IEhBVkVfWERJU1BMQVlDRUxMUyAxCnwgI2RlZmluZSBIQVZFX1hERVNUUk9ZU1VCV0lORE9X UyAxCnwgI2RlZmluZSBIQVZFX1gxMVI2IDEKfCAjZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAj ZGVmaW5lIEhBVkVfWElDQ0FMTEJBQ0tfQ0FMTEJBQ0sgMQp8ICNkZWZpbmUgSEFWRV9YMTFS Nl9YSU0gMQp8ICNkZWZpbmUgSEFWRV9SU1ZHIDEKfCAjZGVmaW5lIEhBVkVfV0VCUCAxCnwg I2RlZmluZSBIQVZFX1NRTElURTMgMQp8ICNkZWZpbmUgSEFWRV9TUUxJVEUzX0xPQURfRVhU RU5TSU9OIDEKfCAjZGVmaW5lIEhBVkVfR0VUQUREUklORk9fQSAxCnwgI2RlZmluZSBIQVZF X0dUSzMgMQp8ICNkZWZpbmUgR0RLX0RJU0FCTEVfREVQUkVDQVRJT05fV0FSTklOR1MgMQp8 ICNkZWZpbmUgR0xJQl9ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5l IFVTRV9HVEsgMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfVFJJTSAxCnwgI2RlZmluZSBIQVZF X0RCVVMgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVm aW5lIEhBVkVfREJVU19UWVBFX0lTX1ZBTElEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJ REFURV9CVVNfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfUEFUSCAxCnwg I2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfSU5URVJGQUNFIDEKfCAjZGVmaW5lIEhBVkVf REJVU19WQUxJREFURV9NRU1CRVIgMQp8ICNkZWZpbmUgSEFWRV9HU0VUVElOR1MgMQp8ICNk ZWZpbmUgSEFWRV9MSUJTRUxJTlVYIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVm aW5lIEhBVkVfTElCU1lTVEVNRCAxCnwgI2RlZmluZSBIQVZFX0pTT04gMQp8ICNkZWZpbmUg SEFWRV9JTk9USUZZIDEKfCAjZGVmaW5lIFVTRV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBV U0VfVE9PTEtJVF9TQ1JPTExfQkFSUyAxCnwgI2RlZmluZSBIQVZFX1hJTSAxCnwgI2RlZmlu ZSBVU0VfWElNIDEKfCAjZGVmaW5lIEhBVkVfWFJFTkRFUiAxCnwgI2RlZmluZSBVU0VfQ0FJ Uk9fWENCIDEKfCAjZGVmaW5lIFVTRV9DQUlSTyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBF IDEKfCAjZGVmaW5lIEhBVkVfRlRfRkFDRV9HRVRDSEFSVkFSSUFOVElOREVYIDEKfCAjZGVm aW5lIEhBVkVfTElCT1RGIDEKfCAjZGVmaW5lIEhBVkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZ UEhTIDEKfCAjZGVmaW5lIEhBVkVfTTE3Tl9GTFQgMQp8ICNkZWZpbmUgSEFWRV9IQVJGQlVa WiAxCnwgI2RlZmluZSBVU0VfWENCIDEKfCAjZGVmaW5lIEhBVkVfWFBNIDEKfCAjZGVmaW5l IEhBVkVfSlBFRyAxCnwgI2RlZmluZSBIQVZFX0xDTVMyIDEKfCAjZGVmaW5lIEhBVkVfWkxJ QiAxCnwgI2RlZmluZSBEWU5BTUlDX0xJQl9TVUZGSVggIi5zbyIKfCAjZGVmaW5lIERZTkFN SUNfTElCX1NFQ09OREFSWV9TVUZGSVggIiIKfCAjZGVmaW5lIEhBVkVfRExBRERSIDEKfCAj ZGVmaW5lIEhBVkVfTU9EVUxFUyAxCnwgI2RlZmluZSBNT0RVTEVTX1NVRkZJWCAiLnNvIgp8 ICNkZWZpbmUgTkFUSVZFX0VMSVNQX1NVRkZJWCAiLmVsbiIKfCAjZGVmaW5lIEhBVkVfUE5H IDEKfCAjZGVmaW5lIEhBVkVfVElGRiAxCnwgI2RlZmluZSBIQVZFX0dJRiAxCnwgI2RlZmlu ZSBIQVZFX0dQTSAxCnwgI2RlZmluZSBIQVZFX1hfU00gMQp8ICNkZWZpbmUgSEFWRV9YUkFO RFIgMQp8ICNkZWZpbmUgSEFWRV9YSU5FUkFNQSAxCnwgI2RlZmluZSBIQVZFX1hGSVhFUyAx CnwgI2RlZmluZSBIQVZFX1hJTlBVVDIgMQp8ICNkZWZpbmUgSEFWRV9YSVNDUk9MTENMQVNT SU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWElUT1VDSENMQVNTSU5GT19UWVBFIDEKfCAj ZGVmaW5lIEhBVkVfWElCQVJSSUVSUkVMRUFTRVBPSU5URVJJTkZPX0RFVklDRUlEIDEKfCAj ZGVmaW5lIEhBVkVfWElHRVNUVVJFQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9Y U1lOQyAxCnwgI2RlZmluZSBIQVZFX1hTWU5DVFJJR0dFUkZFTkNFIDEKfCAjZGVmaW5lIEhB VkVfWERCRSAxCnwgI2RlZmluZSBIQVZFX1hDQl9TSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hT SEFQRSAxCnwgI2RlZmluZSBIQVZFX1hDT01QT1NJVEUgMQp8ICNkZWZpbmUgSEFWRV9MSUJY TUwyIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU0VDQ09NUF9IIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9TRUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VD Q09NUF9GSUxURVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZJTFRFUl9I IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9GSUxURVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBT SVpFT0ZfTE9ORyA4CnwgI2RlZmluZSBIQVZFX0FDQ0VQVDQgMQp8ICNkZWZpbmUgSEFWRV9G Q0hESVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dF VFJVU0FHRSAxCnwgI2RlZmluZSBIQVZFX0dFVF9DVVJSRU5UX0RJUl9OQU1FIDEKfCAjZGVm aW5lIEhBVkVfTFJBTkQ0OCAxCnwgI2RlZmluZSBIQVZFX1JBTkRPTSAxCnwgI2RlZmluZSBI QVZFX1JJTlQgMQp8ICNkZWZpbmUgSEFWRV9UUlVOQyAxCnwgI2RlZmluZSBIQVZFX1NFTEVD VCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9D QUxFIDEKfCAjZGVmaW5lIEhBVkVfTkVXTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJ TUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERP V04gMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9T VFJTSUdOQUwgMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9T RU5EVE8gMQp8ICNkZWZpbmUgSEFWRV9SRUNWRlJPTSAxCnwgI2RlZmluZSBIQVZFX0dFVFNP Q0tOQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0ZS RUVJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfR0FJX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhB VkVfU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5E UFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0VOREdS RU5UIDEKfCAjZGVmaW5lIEhBVkVfUkVOQU1FQVQyIDEKfCAjZGVmaW5lIEhBVkVfQ0ZNQUtF UkFXIDEKfCAjZGVmaW5lIEhBVkVfQ0ZTRVRTUEVFRCAxCnwgI2RlZmluZSBIQVZFX19fRVhF Q1VUQUJMRV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9Q VEhSRUFEX1NFVE5BTUVfTlAgMQp8ICNkZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9DIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhf TUFEVklTRSAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9GUkFNRV9BRERSRVNTIDEKfCAj ZGVmaW5lIEhBVkVfX19CVUlMVElOX1VOV0lORF9JTklUIDEKfCAjZGVmaW5lIEhBVkVfRlNF RUtPIDEKfCAjZGVmaW5lIEhBVkVfR1JBTlRQVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBUIDEK fCAjZGVmaW5lIEhBVkVfUE9TSVhfT1BFTlBUIDEKfCAjZGVmaW5lIFRFUk1JTkZPIDEKfCAj ZGVmaW5lIFRFUk1JTkZPX0RFRklORVNfQkMgMQp8ICNkZWZpbmUgSEFWRV9USU1FUkZEIDEK fCAjZGVmaW5lIEhBVkVfVkFMR1JJTkRfVkFMR1JJTkRfSCAxCnwgI2RlZmluZSBIQVZFX1NU UlVDVF9VTklQQUlSX1VOSUNPREUgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEK fCAjZGVmaW5lIEhBVkVfV09SS0lOR19GT1JLIDEKfCAjZGVmaW5lIEhBVkVfU05QUklOVEYg MQp8ICNkZWZpbmUgSEFWRV9TUEFXTl9IIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV04g MQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTl9GSUxFX0FDVElPTlNfQUREQ0hESVJfTlAg MQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTkFUVFJfU0VURkxBR1MgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX1BPU0lYX1NQQVdOX1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX0dMSUIgMQp8 ICNkZWZpbmUgSEFWRV9MQU5HSU5GT19DT0RFU0VUIDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lO Rk9fX05MX1BBUEVSX1dJRFRIIDEKfCAjZGVmaW5lIEhBVkVfTUJTVEFURV9UIDEKfCAjZGVm aW5lIEFNUEVSU0FORF9GVUxMX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9QVFlTIDEKfCAjZGVm aW5lIEhBVkVfU09DS0VUUyAxCnwgI2RlZmluZSBOVUxMX0RFVklDRSAiL2Rldi9udWxsIgp8 ICNkZWZpbmUgU0VQQ0hBUiAnOicKfCAjZGVmaW5lIHN1YnByb2Nlc3NlcyAxCnwgI2RlZmlu ZSBVU0VSX0ZVTExfTkFNRSBwdy0+cHdfZ2Vjb3MKfCAjZGVmaW5lIERJUkVDVE9SWV9TRVAg Jy8nCnwgI2RlZmluZSBJU19ERVZJQ0VfU0VQKF9jXykgMAp8ICNkZWZpbmUgSVNfRElSRUNU T1JZX1NFUChfY18pICgoX2NfKSA9PSBESVJFQ1RPUllfU0VQKQp8ICNkZWZpbmUgSVNfQU5Z X1NFUChfY18pIChJU19ESVJFQ1RPUllfU0VQIChfY18pKQp8ICNkZWZpbmUgSEFWRV9QUk9D RlMgMQp8ICNkZWZpbmUgREVGQVVMVF9TT1VORF9ERVZJQ0UgIi9kZXYvZHNwIgp8ICNkZWZp bmUgSU5URVJSVVBUX0lOUFVUIDEKfCAjZGVmaW5lIE5BUlJPV1BST1RPIDEKfCAjZGVmaW5l IFVOSVg5OF9QVFlTIDEKfCAjZGVmaW5lIFBUWV9JVEVSQVRJT04gaW50IGk7IGZvciAoaSA9 IDA7IGkgPCAxOyBpKyspCnwgI2RlZmluZSBQVFlfVFRZX05BTUVfU1BSSU5URiB7IGNoYXIg KnB0eW5hbWUgPSAwOyBzaWdzZXRfdCBibG9ja2VkOyBzaWdlbXB0eXNldCAoJmJsb2NrZWQp OyBzaWdhZGRzZXQgKCZibG9ja2VkLCBTSUdDSExEKTsgcHRocmVhZF9zaWdtYXNrIChTSUdf QkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKGdyYW50cHQgKGZkKSAhPSAtMSAmJiB1bmxvY2tw dCAoZmQpICE9IC0xKSBwdHluYW1lID0gcHRzbmFtZShmZCk7IHB0aHJlYWRfc2lnbWFzayAo U0lHX1VOQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKCFwdHluYW1lKSB7IGVtYWNzX2Nsb3Nl IChmZCk7IHJldHVybiAtMTsgfSBzbnByaW50ZiAocHR5X25hbWUsIFBUWV9OQU1FX1NJWkUs ICIlcyIsIHB0eW5hbWUpOyB9CnwgI2RlZmluZSBQVFlfT1BFTiBkbyB7IGZkID0gcG9zaXhf b3BlbnB0IChPX1JEV1IgfCBPX0NMT0VYRUMgfCBPX05PQ1RUWSk7IGlmIChmZCA8IDAgJiYg ZXJybm8gPT0gRUlOVkFMKSBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19OT0NUVFkp OyB9IHdoaWxlIChmYWxzZSkKfCAjZGVmaW5lIFBUWV9OQU1FX1NQUklOVEYgLyoqLwp8ICNk ZWZpbmUgU0lHTkFMU19WSUFfQ0hBUkFDVEVSUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09S S1MgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfX1NFVEpN UCAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NUQUNLX09W RVJGTE9XX0hBTkRMSU5HIDEKfCAjZGVmaW5lIFVTRyAvKiovCnwgI2RlZmluZSBHTlVfTElO VVggLyoqLwp8ICNkZWZpbmUgU0laRU9GX1NQRUVEX1QgNAp8ICNkZWZpbmUgVVNBQkxFX0ZJ T05SRUFEIDEKfCAjZGVmaW5lIFVTQUJMRV9TSUdJTyAxCnwgI2RlZmluZSBDT1BZUklHSFQg IkNvcHlyaWdodCAoQykgMjAyMyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4iCnwg I2RlZmluZSBURVJNX0hFQURFUiAiZ3RrdXRpbC5oIgp8ICNkZWZpbmUgRU1BQ1NfQ09ORklH VVJBVElPTiAieDg2XzY0LXBjLWxpbnV4LWdudSIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR19P UFRJT05TICIiCnwgI2RlZmluZSBIQVZFX1hfV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gx MSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9BVFRSSUJVVEVfQUxJR05FRCAxCnwgI2RlZmlu ZSBIQVZFX1RZUEVPRiAxCnwgI2RlZmluZSBIQVZFX1NUQVRFTUVOVF9FWFBSRVNTSU9OUyAx CnwgI2RlZmluZSBNQUxMT0NfMF9JU19OT05OVUxMIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0FD TF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNM X0dFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRklMRSAxCnwgI2RlZmluZSBIQVZF X0FDTF9TRVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJFRSAxCnwgI2RlZmluZSBIQVZF X0FDTF9GUk9NX01PREUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9URVhUIDEKfCAjZGVm aW5lIEhBVkVfQUNMX0RFTEVURV9ERUZfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9FWFRF TkRFRF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0xJQkFDTF9IIDEKfCAjZGVmaW5lIEhB VkVfQUNMX0VOVFJJRVMgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRklSU1RfRU5UUlkgMQp8ICNk ZWZpbmUgVVNFX0FDTCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhB VkVfQUxMT0NBIDEKfCAjZGVmaW5lIExTVEFUX0ZPTExPV1NfU0xBU0hFRF9TWU1MSU5LIDEK fCAjZGVmaW5lIEZVTkNfUkVBTFBBVEhfV09SS1MgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNT QVQgMQp8ICNkZWZpbmUgSEFWRV9HRVRDV0QgMQp8ICNkZWZpbmUgcmVzdHJpY3QgX19yZXN0 cmljdF9fCnwgI2RlZmluZSBIQVZFX0VOVklST05fREVDTCAxCnwgLyogZW5kIGNvbmZkZWZz LmguICAqLwp8ICNpbmNsdWRlIDxzdGRkZWYuaD4KfCAjaWZkZWYgSEFWRV9TVERJT19ICnwg IyBpbmNsdWRlIDxzdGRpby5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NURExJQl9ICnwg IyBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdfSAp8 ICMgaW5jbHVkZSA8c3RyaW5nLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfSU5UVFlQRVNf SAp8ICMgaW5jbHVkZSA8aW50dHlwZXMuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVERJ TlRfSAp8ICMgaW5jbHVkZSA8c3RkaW50Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RS SU5HU19ICnwgIyBpbmNsdWRlIDxzdHJpbmdzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVf U1lTX1RZUEVTX0gKfCAjIGluY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRl ZiBIQVZFX1NZU19TVEFUX0gKfCAjIGluY2x1ZGUgPHN5cy9zdGF0Lmg+CnwgI2VuZGlmCnwg I2lmZGVmIEhBVkVfVU5JU1REX0gKfCAjIGluY2x1ZGUgPHVuaXN0ZC5oPgp8ICNlbmRpZgp8 IGludAp8IG1haW4gKHZvaWQpCnwgewp8ICNpZm5kZWYgc3RybW9kZQp8ICNpZmRlZiBfX2Nw bHVzcGx1cwp8ICAgKHZvaWQpIHN0cm1vZGU7CnwgI2Vsc2UKfCAgICh2b2lkKSBzdHJtb2Rl Owp8ICNlbmRpZgp8ICNlbmRpZgp8IAp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1 cmU6Mjg0NzQ6IHJlc3VsdDogbm8KY29uZmlndXJlOjI4NDkyOiBjaGVja2luZyBmb3IgZ2F3 awpjb25maWd1cmU6Mjg1MTM6IGZvdW5kIC91c3IvYmluL2dhd2sKY29uZmlndXJlOjI4NTI0 OiByZXN1bHQ6IGdhd2sKY29uZmlndXJlOjI4NjMxOiBjaGVja2luZyBmb3IgZ2V0b3B0LmgK Y29uZmlndXJlOjI4NjMxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6Mjg2NDc6IGNoZWNraW5n IGZvciBnZXRvcHRfbG9uZ19vbmx5CmNvbmZpZ3VyZToyODY0NzogZ2NjIC1vIGNvbmZ0ZXN0 IC1nMyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1IApjb25maWd1cmU6Mjg2NDc6ICQ/ID0g MApjb25maWd1cmU6Mjg2NDc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyODY2MDogY2hlY2tp bmcgd2hldGhlciBnZXRvcHQgaXMgUE9TSVggY29tcGF0aWJsZQpjb25maWd1cmU6Mjg3MDQ6 IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAgID4mNSAKY29uZmln dXJlOjI4NzA0OiAkPyA9IDAKY29uZmlndXJlOjI4NzA0OiAuL2NvbmZ0ZXN0CmNvbmZpZ3Vy ZToyODcwNDogJD8gPSAwCmNvbmZpZ3VyZToyODc2NTogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAt TzIgICAgICBjb25mdGVzdC5jICAgPiY1IApjb25maWd1cmU6Mjg3NjU6ICQ/ID0gMApjb25m aWd1cmU6Mjg3NjU6IC4vY29uZnRlc3QKY29uZmlndXJlOjI4NzY1OiAkPyA9IDAKY29uZmln dXJlOjI4ODA5OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+ JjUgCmNvbmZpZ3VyZToyODgwOTogJD8gPSAwCmNvbmZpZ3VyZToyODgwOTogLi9jb25mdGVz dApwcm9ncmFtOiBvcHRpb24gcmVxdWlyZXMgYW4gYXJndW1lbnQgLS0gJ2InCmNvbmZpZ3Vy ZToyODgwOTogJD8gPSAwCmNvbmZpZ3VyZToyODgyODogcmVzdWx0OiB5ZXMKY29uZmlndXJl OjI4ODM2OiBjaGVja2luZyBmb3Igd29ya2luZyBHTlUgZ2V0b3B0IGZ1bmN0aW9uCmNvbmZp Z3VyZToyOTA2MDogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jICAg PiY1IApjb25maWd1cmU6MjkwNjA6ICQ/ID0gMApjb25maWd1cmU6MjkwNjA6IC4vY29uZnRl c3QKY29uZmlndXJlOjI5MDYwOiAkPyA9IDAKY29uZmlndXJlOjI5MDc3OiByZXN1bHQ6IHll cwpjb25maWd1cmU6MjkwODI6IGNoZWNraW5nIGZvciB3b3JraW5nIEdOVSBnZXRvcHRfbG9u ZyBmdW5jdGlvbgpjb25maWd1cmU6MjkxMjk6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAg ICAgY29uZnRlc3QuYyAgID4mNSAKY29uZmlndXJlOjI5MTI5OiAkPyA9IDAKY29uZmlndXJl OjI5MTI5OiAuL2NvbmZ0ZXN0CmNvbmZpZ3VyZToyOTEyOTogJD8gPSAwCmNvbmZpZ3VyZToy OTE0MTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI5MTY3OiBjaGVja2luZyB3aGV0aGVyIHRp bWVzcGVjX2dldCBpcyBkZWNsYXJlZApjb25maWd1cmU6MjkxNjc6IGdjYyAtYyAtZzMgLU8y ICAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjkxNjc6ICQ/ID0gMApjb25maWd1cmU6 MjkxNjc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyOTE3MzogY2hlY2tpbmcgZm9yIHRpbWVz cGVjX2dldApjb25maWd1cmU6MjkxOTQ6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAg Y29uZnRlc3QuYyAgID4mNSAKY29uZmlndXJlOjI5MTk0OiAkPyA9IDAKY29uZmlndXJlOjI5 MjE0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjkzMzk6IGNoZWNraW5nIGZvciBzdHJ1Y3Qg dGltZXZhbApjb25maWd1cmU6MjkzNjM6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMg PiY1CmNvbmZpZ3VyZToyOTM2MzogJD8gPSAwCmNvbmZpZ3VyZToyOTM3MjogcmVzdWx0OiB5 ZXMKY29uZmlndXJlOjI5Mzc3OiBjaGVja2luZyBmb3Igd2lkZS1lbm91Z2ggc3RydWN0IHRp bWV2YWwudHZfc2VjIG1lbWJlcgpjb25maWd1cmU6Mjk0MDU6IGdjYyAtYyAtZzMgLU8yICAg IGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyOTQwNTogJD8gPSAwCmNvbmZpZ3VyZToyOTQx NDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI5NTEzOiBjaGVja2luZyB3aGV0aGVyIGxpbWl0 cy5oIGhhcyBXT1JEX0JJVCwgQk9PTF9XSURUSCBldGMuCmNvbmZpZ3VyZToyOTUzOTogZ2Nj IC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjI5NTM5OiAkPyA9IDAK Y29uZmlndXJlOjI5NTQ3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6Mjk1NTg6IGNoZWNraW5n IHdoZXRoZXIgdGhlIGNvbXBpbGVyIHByb2R1Y2VzIG11bHRpLWFyY2ggYmluYXJpZXMKY29u ZmlndXJlOjI5NTczOiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25mdGVz dC5jOjMyNToxMzogZXJyb3I6IHVua25vd24gdHlwZSBuYW1lICdub3QnCiAgMzI1IHwgICAg ICAgICAgICAgbm90IGEgdW5pdmVyc2FsIGNhcGFibGUgY29tcGlsZXIKICAgICAgfCAgICAg ICAgICAgICBefn4KY29uZnRlc3QuYzozMjU6MTk6IGVycm9yOiBleHBlY3RlZCAnPScsICcs JywgJzsnLCAnYXNtJyBvciAnX19hdHRyaWJ1dGVfXycgYmVmb3JlICd1bml2ZXJzYWwnCiAg MzI1IHwgICAgICAgICAgICAgbm90IGEgdW5pdmVyc2FsIGNhcGFibGUgY29tcGlsZXIKICAg ICAgfCAgICAgICAgICAgICAgICAgICBefn5+fn5+fn4KY29uZnRlc3QuYzozMjU6MTk6IGVy cm9yOiB1bmtub3duIHR5cGUgbmFtZSAndW5pdmVyc2FsJwpjb25maWd1cmU6Mjk1NzM6ICQ/ ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICov CnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0Vf VEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMwLjAuNTAiCnwg I2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDMwLjAuNTAiCnwgI2RlZmluZSBQ QUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFD S0FHRV9VUkwgImh0dHBzOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZp bmUgSEFWRV9QRFVNUEVSIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fSCAxCnwgI2RlZmluZSBI QVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFW RV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFW RV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBI QVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GU19IIDEKfCAjZGVmaW5lIEhB VkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5l IEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmlu ZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9MU0FOX0lOVEVSRkFD RV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0FTQU5fSU5URVJGQUNFX0ggMQp8ICNk ZWZpbmUgSEFWRV9TQU5JVElaRVJfQ09NTU9OX0lOVEVSRkFDRV9ERUZTX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwg I2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAj ZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAj ZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVkZTX0ggMQp8 ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19DREVGU19IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX0lFRUU3NTRfSCAx CnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9I IDEKfCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JBTkRP TV9IIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAx CnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEK fCAjZGVmaW5lIF9IUFVYX0FMVF9YT1BFTl9TT0NLRVRfQVBJIDEKfCAjZGVmaW5lIF9ORVRC U0RfU09VUkNFIDEKfCAjZGVmaW5lIF9PUEVOQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfUE9T SVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5 X0FUVFJJQlNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0JGUF9F WFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfREZQX0VYVF9fIDEKfCAj ZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENf V0FOVF9JRUNfNjA1NTlfRlVOQ1NfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVD XzYwNTU5X1RZUEVTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0xJQl9FWFQyX18g MQp8ICNkZWZpbmUgX19TVERDX1dBTlRfTUFUSF9TUEVDX0ZVTkNTX18gMQp8ICNkZWZpbmUg X1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUg R0NDX0xJTlQgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAjZGVmaW5l IEhBVkVfU1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2RlZmlu ZSBIQVZFX1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfQUREUl9OT19SQU5E T01JWkUgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVmaW5lIExJTlVY X1NZU0lORk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAxCnwgI2RlZmluZSBIQVZF X1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZF X0lGQUREUlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8 ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwgI2RlZmluZSBIQVZF X1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJF UV9JRlJfQlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERS IDEKfCAjZGVmaW5lIEhBVkVfU0JSSyAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEK fCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5l IEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfQ0FOT05JQ0FMSVpFX0ZJTEVfTkFNRSAx CnwgI2RlZmluZSBIQVZFX1JFQUxQQVRIIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNk ZWZpbmUgSEFWRV9GQ0hNT0RBVCAxCnwgI2RlZmluZSBIQVZFX0xDSE1PRCAxCnwgI2RlZmlu ZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhB VkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VU VElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1BU SFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhB VkVfSVNCTEFOSyAxCnwgI2RlZmluZSBIQVZFX0lTV0NUWVBFIDEKfCAjZGVmaW5lIEhBVkVf U1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0xP Q0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBT WVNURU1fTUFMTE9DIDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2RlZmluZSBIQVZFX1BU SFJFQUQgMQp8ICNkZWZpbmUgVEhSRUFEU19FTkFCTEVEIDEKfCAjZGVmaW5lIEhBVkVfWEtC IDEKfCAjZGVmaW5lIEhBVkVfWEtCUkVGUkVTSEtFWUJPQVJETUFQUElORyAxCnwgI2RlZmlu ZSBIQVZFX1hLQkZSRUVOQU1FUyAxCnwgI2RlZmluZSBIQVZFX1hSTVNFVERBVEFCQVNFIDEK fCAjZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RSSU5HIDEKfCAjZGVmaW5lIEhBVkVf WFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhBVkVfWERJU1BMQVlDRUxMUyAx CnwgI2RlZmluZSBIQVZFX1hERVNUUk9ZU1VCV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gx MVI2IDEKfCAjZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVmaW5lIEhBVkVfWElDQ0FMTEJB Q0tfQ0FMTEJBQ0sgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9YSU0gMQp8ICNkZWZpbmUgSEFW RV9SU1ZHIDEKfCAjZGVmaW5lIEhBVkVfV0VCUCAxCnwgI2RlZmluZSBIQVZFX1NRTElURTMg MQp8ICNkZWZpbmUgSEFWRV9TUUxJVEUzX0xPQURfRVhURU5TSU9OIDEKfCAjZGVmaW5lIEhB VkVfR0VUQUREUklORk9fQSAxCnwgI2RlZmluZSBIQVZFX0dUSzMgMQp8ICNkZWZpbmUgR0RL X0RJU0FCTEVfREVQUkVDQVRJT05fV0FSTklOR1MgMQp8ICNkZWZpbmUgR0xJQl9ESVNBQkxF X0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIFVTRV9HVEsgMQp8ICNkZWZpbmUg SEFWRV9NQUxMT0NfVFJJTSAxCnwgI2RlZmluZSBIQVZFX0RCVVMgMQp8ICNkZWZpbmUgSEFW RV9EQlVTX1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19UWVBFX0lT X1ZBTElEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAxCnwgI2Rl ZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFM SURBVEVfSU5URVJGQUNFIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIg MQp8ICNkZWZpbmUgSEFWRV9HU0VUVElOR1MgMQp8ICNkZWZpbmUgSEFWRV9MSUJTRUxJTlVY IDEKfCAjZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhBVkVfTElCU1lTVEVNRCAx CnwgI2RlZmluZSBIQVZFX0pTT04gMQp8ICNkZWZpbmUgSEFWRV9JTk9USUZZIDEKfCAjZGVm aW5lIFVTRV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBVU0VfVE9PTEtJVF9TQ1JPTExfQkFS UyAxCnwgI2RlZmluZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBVU0VfWElNIDEKfCAjZGVmaW5l IEhBVkVfWFJFTkRFUiAxCnwgI2RlZmluZSBVU0VfQ0FJUk9fWENCIDEKfCAjZGVmaW5lIFVT RV9DQUlSTyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAjZGVmaW5lIEhBVkVfRlRf RkFDRV9HRVRDSEFSVkFSSUFOVElOREVYIDEKfCAjZGVmaW5lIEhBVkVfTElCT1RGIDEKfCAj ZGVmaW5lIEhBVkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTIDEKfCAjZGVmaW5lIEhBVkVf TTE3Tl9GTFQgMQp8ICNkZWZpbmUgSEFWRV9IQVJGQlVaWiAxCnwgI2RlZmluZSBVU0VfWENC IDEKfCAjZGVmaW5lIEhBVkVfWFBNIDEKfCAjZGVmaW5lIEhBVkVfSlBFRyAxCnwgI2RlZmlu ZSBIQVZFX0xDTVMyIDEKfCAjZGVmaW5lIEhBVkVfWkxJQiAxCnwgI2RlZmluZSBEWU5BTUlD X0xJQl9TVUZGSVggIi5zbyIKfCAjZGVmaW5lIERZTkFNSUNfTElCX1NFQ09OREFSWV9TVUZG SVggIiIKfCAjZGVmaW5lIEhBVkVfRExBRERSIDEKfCAjZGVmaW5lIEhBVkVfTU9EVUxFUyAx CnwgI2RlZmluZSBNT0RVTEVTX1NVRkZJWCAiLnNvIgp8ICNkZWZpbmUgTkFUSVZFX0VMSVNQ X1NVRkZJWCAiLmVsbiIKfCAjZGVmaW5lIEhBVkVfUE5HIDEKfCAjZGVmaW5lIEhBVkVfVElG RiAxCnwgI2RlZmluZSBIQVZFX0dJRiAxCnwgI2RlZmluZSBIQVZFX0dQTSAxCnwgI2RlZmlu ZSBIQVZFX1hfU00gMQp8ICNkZWZpbmUgSEFWRV9YUkFORFIgMQp8ICNkZWZpbmUgSEFWRV9Y SU5FUkFNQSAxCnwgI2RlZmluZSBIQVZFX1hGSVhFUyAxCnwgI2RlZmluZSBIQVZFX1hJTlBV VDIgMQp8ICNkZWZpbmUgSEFWRV9YSVNDUk9MTENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5l IEhBVkVfWElUT1VDSENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWElCQVJSSUVS UkVMRUFTRVBPSU5URVJJTkZPX0RFVklDRUlEIDEKfCAjZGVmaW5lIEhBVkVfWElHRVNUVVJF Q0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQyAxCnwgI2RlZmluZSBIQVZF X1hTWU5DVFJJR0dFUkZFTkNFIDEKfCAjZGVmaW5lIEhBVkVfWERCRSAxCnwgI2RlZmluZSBI QVZFX1hDQl9TSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hTSEFQRSAxCnwgI2RlZmluZSBIQVZF X1hDT01QT1NJVEUgMQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwyIDEKfCAjZGVmaW5lIEhBVkVf TElOVVhfU0VDQ09NUF9IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX1NFVF9NT0RF X0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9GSUxURVJfRkxBR19UU1lO QyAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZJTFRFUl9IIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9TRUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09N UF9GSUxURVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA4CnwgI2RlZmlu ZSBIQVZFX0FDQ0VQVDQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hESVIgMQp8ICNkZWZpbmUgSEFW RV9HRVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJVU0FHRSAxCnwgI2RlZmluZSBI QVZFX0dFVF9DVVJSRU5UX0RJUl9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfTFJBTkQ0OCAxCnwg I2RlZmluZSBIQVZFX1JBTkRPTSAxCnwgI2RlZmluZSBIQVZFX1JJTlQgMQp8ICNkZWZpbmUg SEFWRV9UUlVOQyAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX0dF VFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVf TkVXTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVf U0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9Q VEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJTSUdOQUwgMQp8ICNkZWZpbmUg SEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9TRU5EVE8gMQp8ICNkZWZpbmUgSEFW RV9SRUNWRlJPTSAxCnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tOQU1FIDEKfCAjZGVmaW5lIEhB VkVfR0VUSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVJRkFERFJTIDEKfCAjZGVmaW5l IEhBVkVfR0FJX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAxCnwgI2RlZmluZSBI QVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EUFdFTlQgMQp8ICNkZWZpbmUgSEFW RV9HRVRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0VOREdSRU5UIDEKfCAjZGVmaW5lIEhBVkVf UkVOQU1FQVQyIDEKfCAjZGVmaW5lIEhBVkVfQ0ZNQUtFUkFXIDEKfCAjZGVmaW5lIEhBVkVf Q0ZTRVRTUEVFRCAxCnwgI2RlZmluZSBIQVZFX19fRVhFQ1VUQUJMRV9TVEFSVCAxCnwgI2Rl ZmluZSBIQVZFX0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NFVE5BTUVfTlAgMQp8 ICNkZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTElH TkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfTUFEVklTRSAxCnwgI2RlZmluZSBI QVZFX19fQlVJTFRJTl9GUkFNRV9BRERSRVNTIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElO X1VOV0lORF9JTklUIDEKfCAjZGVmaW5lIEhBVkVfRlNFRUtPIDEKfCAjZGVmaW5lIEhBVkVf R1JBTlRQVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBUIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhf T1BFTlBUIDEKfCAjZGVmaW5lIFRFUk1JTkZPIDEKfCAjZGVmaW5lIFRFUk1JTkZPX0RFRklO RVNfQkMgMQp8ICNkZWZpbmUgSEFWRV9USU1FUkZEIDEKfCAjZGVmaW5lIEhBVkVfVkFMR1JJ TkRfVkFMR1JJTkRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9VTklQQUlSX1VOSUNPREUg MQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lO R19GT1JLIDEKfCAjZGVmaW5lIEhBVkVfU05QUklOVEYgMQp8ICNkZWZpbmUgSEFWRV9TUEFX Tl9IIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV04gMQp8ICNkZWZpbmUgSEFWRV9QT1NJ WF9TUEFXTl9GSUxFX0FDVElPTlNfQUREQ0hESVJfTlAgMQp8ICNkZWZpbmUgSEFWRV9QT1NJ WF9TUEFXTkFUVFJfU0VURkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BPU0lYX1NQQVdO X1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX0dMSUIgMQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5G T19DT0RFU0VUIDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fX05MX1BBUEVSX1dJRFRIIDEK fCAjZGVmaW5lIEhBVkVfTUJTVEFURV9UIDEKfCAjZGVmaW5lIEFNUEVSU0FORF9GVUxMX05B TUUgMQp8ICNkZWZpbmUgSEFWRV9QVFlTIDEKfCAjZGVmaW5lIEhBVkVfU09DS0VUUyAxCnwg I2RlZmluZSBOVUxMX0RFVklDRSAiL2Rldi9udWxsIgp8ICNkZWZpbmUgU0VQQ0hBUiAnOicK fCAjZGVmaW5lIHN1YnByb2Nlc3NlcyAxCnwgI2RlZmluZSBVU0VSX0ZVTExfTkFNRSBwdy0+ cHdfZ2Vjb3MKfCAjZGVmaW5lIERJUkVDVE9SWV9TRVAgJy8nCnwgI2RlZmluZSBJU19ERVZJ Q0VfU0VQKF9jXykgMAp8ICNkZWZpbmUgSVNfRElSRUNUT1JZX1NFUChfY18pICgoX2NfKSA9 PSBESVJFQ1RPUllfU0VQKQp8ICNkZWZpbmUgSVNfQU5ZX1NFUChfY18pIChJU19ESVJFQ1RP UllfU0VQIChfY18pKQp8ICNkZWZpbmUgSEFWRV9QUk9DRlMgMQp8ICNkZWZpbmUgREVGQVVM VF9TT1VORF9ERVZJQ0UgIi9kZXYvZHNwIgp8ICNkZWZpbmUgSU5URVJSVVBUX0lOUFVUIDEK fCAjZGVmaW5lIE5BUlJPV1BST1RPIDEKfCAjZGVmaW5lIFVOSVg5OF9QVFlTIDEKfCAjZGVm aW5lIFBUWV9JVEVSQVRJT04gaW50IGk7IGZvciAoaSA9IDA7IGkgPCAxOyBpKyspCnwgI2Rl ZmluZSBQVFlfVFRZX05BTUVfU1BSSU5URiB7IGNoYXIgKnB0eW5hbWUgPSAwOyBzaWdzZXRf dCBibG9ja2VkOyBzaWdlbXB0eXNldCAoJmJsb2NrZWQpOyBzaWdhZGRzZXQgKCZibG9ja2Vk LCBTSUdDSExEKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfQkxPQ0ssICZibG9ja2VkLCAwKTsg aWYgKGdyYW50cHQgKGZkKSAhPSAtMSAmJiB1bmxvY2twdCAoZmQpICE9IC0xKSBwdHluYW1l ID0gcHRzbmFtZShmZCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX1VOQkxPQ0ssICZibG9ja2Vk LCAwKTsgaWYgKCFwdHluYW1lKSB7IGVtYWNzX2Nsb3NlIChmZCk7IHJldHVybiAtMTsgfSBz bnByaW50ZiAocHR5X25hbWUsIFBUWV9OQU1FX1NJWkUsICIlcyIsIHB0eW5hbWUpOyB9Cnwg I2RlZmluZSBQVFlfT1BFTiBkbyB7IGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX0NM T0VYRUMgfCBPX05PQ1RUWSk7IGlmIChmZCA8IDAgJiYgZXJybm8gPT0gRUlOVkFMKSBmZCA9 IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19OT0NUVFkpOyB9IHdoaWxlIChmYWxzZSkKfCAj ZGVmaW5lIFBUWV9OQU1FX1NQUklOVEYgLyoqLwp8ICNkZWZpbmUgU0lHTkFMU19WSUFfQ0hB UkFDVEVSUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgR0NfU0VU Sk1QX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfX1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NJ R1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NUQUNLX09WRVJGTE9XX0hBTkRMSU5HIDEKfCAj ZGVmaW5lIFVTRyAvKiovCnwgI2RlZmluZSBHTlVfTElOVVggLyoqLwp8ICNkZWZpbmUgU0la RU9GX1NQRUVEX1QgNAp8ICNkZWZpbmUgVVNBQkxFX0ZJT05SRUFEIDEKfCAjZGVmaW5lIFVT QUJMRV9TSUdJTyAxCnwgI2RlZmluZSBDT1BZUklHSFQgIkNvcHlyaWdodCAoQykgMjAyMyBG cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4iCnwgI2RlZmluZSBURVJNX0hFQURFUiAi Z3RrdXRpbC5oIgp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHVVJBVElPTiAieDg2XzY0LXBjLWxp bnV4LWdudSIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR19PUFRJT05TICIiCnwgI2RlZmluZSBI QVZFX1hfV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gxMSAxCnwgI2RlZmluZSBIQVZFX1NU UlVDVF9BVFRSSUJVVEVfQUxJR05FRCAxCnwgI2RlZmluZSBIQVZFX1RZUEVPRiAxCnwgI2Rl ZmluZSBIQVZFX1NUQVRFTUVOVF9FWFBSRVNTSU9OUyAxCnwgI2RlZmluZSBNQUxMT0NfMF9J U19OT05OVUxMIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0FDTF9IIDEKfCAjZGVmaW5lIEhBVkVf QUNMX0dFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GRCAxCnwgI2RlZmluZSBI QVZFX0FDTF9TRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRkQgMQp8ICNkZWZp bmUgSEFWRV9BQ0xfRlJFRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX01PREUgMQp8ICNk ZWZpbmUgSEFWRV9BQ0xfRlJPTV9URVhUIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0RFTEVURV9E RUZfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9FWFRFTkRFRF9GSUxFIDEKfCAjZGVmaW5l IEhBVkVfQUNMX0xJQkFDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VOVFJJRVMgMQp8ICNk ZWZpbmUgSEFWRV9BQ0xfRklSU1RfRU5UUlkgMQp8ICNkZWZpbmUgVVNFX0FDTCAxCnwgI2Rl ZmluZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5l IExTVEFUX0ZPTExPV1NfU0xBU0hFRF9TWU1MSU5LIDEKfCAjZGVmaW5lIEZVTkNfUkVBTFBB VEhfV09SS1MgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9H RVRDV0QgMQp8ICNkZWZpbmUgcmVzdHJpY3QgX19yZXN0cmljdF9fCnwgI2RlZmluZSBIQVZF X0VOVklST05fREVDTCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSTU9ERSAwCnwgI2RlZmlu ZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0xPTkdfT05MWSAxCnwg LyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpZm5kZWYgX19BUFBMRV9DQ19fCnwgICAgICAg ICAgICAgbm90IGEgdW5pdmVyc2FsIGNhcGFibGUgY29tcGlsZXIKfCAgICAgICAgICAgICNl bmRpZgp8ICAgICAgICAgICAgdHlwZWRlZiBpbnQgZHVtbXk7CnwgCmNvbmZpZ3VyZToyOTYw MTogcmVzdWx0OiBubwpjb25maWd1cmU6Mjk3MzM6IGNoZWNraW5nIHdoZXRoZXIgc3RkaW50 LmggY29uZm9ybXMgdG8gQzk5CmNvbmZpZ3VyZToyOTkxMDogZ2NjIC1jIC1nMyAtTzIgICAg Y29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjI5OTEwOiAkPyA9IDAKY29uZmlndXJlOjI5OTk1 OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCmNvbmZp Z3VyZToyOTk5NTogJD8gPSAwCmNvbmZpZ3VyZToyOTk5NTogLi9jb25mdGVzdApjb25maWd1 cmU6Mjk5OTU6ICQ/ID0gMApjb25maWd1cmU6MzAwMDg6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy ZTozMDAxOTogY2hlY2tpbmcgd2hldGhlciBzdGRpbnQuaCB3b3JrcyB3aXRob3V0IElTTyBD IHByZWRlZmluZXMKY29uZmlndXJlOjMwMDUyOiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVz dC5jID4mNQpjb25maWd1cmU6MzAwNTI6ICQ/ID0gMApjb25maWd1cmU6MzAwNTk6IHJlc3Vs dDogeWVzCmNvbmZpZ3VyZTozMDA3MDogY2hlY2tpbmcgd2hldGhlciBzdGRpbnQuaCBoYXMg VUlOVE1BWF9XSURUSCBldGMuCmNvbmZpZ3VyZTozMDEwMzogZ2NjIC1jIC1nMyAtTzIgICAg Y29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjMwMTAzOiAkPyA9IDAKY29uZmlndXJlOjMwMTA5 OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzA2ODE6IGNoZWNraW5nIHdoZXRoZXIgbWVtbWVt IGlzIGRlY2xhcmVkCmNvbmZpZ3VyZTozMDY4MTogZ2NjIC1jIC1nMyAtTzIgICAgIGNvbmZ0 ZXN0LmMgPiY1CmNvbmZpZ3VyZTozMDY4MTogJD8gPSAwCmNvbmZpZ3VyZTozMDY4MTogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjMwODY4OiBjaGVja2luZyB3aGV0aGVyIG1lbXJjaHIgaXMg ZGVjbGFyZWQKY29uZmlndXJlOjMwODY4OiBnY2MgLWMgLWczIC1PMiAgICAgY29uZnRlc3Qu YyA+JjUKY29uZmlndXJlOjMwODY4OiAkPyA9IDAKY29uZmlndXJlOjMwODY4OiByZXN1bHQ6 IHllcwpjb25maWd1cmU6MzA4ODM6IGNoZWNraW5nIHdoZXRoZXIgPGxpbWl0cy5oPiBkZWZp bmVzIE1JTiBhbmQgTUFYCmNvbmZpZ3VyZTozMDkwMTogZ2NjIC1jIC1nMyAtTzIgICAgY29u ZnRlc3QuYyA+JjUKY29uZnRlc3QuYzozMjk6MjE6IHdhcm5pbmc6IGltcGxpY2l0IGRlY2xh cmF0aW9uIG9mIGZ1bmN0aW9uICdNSU4nIFstV2ltcGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0 aW9uXQogIDMyOSB8ICAgICAgICAgICAgIGludCB4ID0gTUlOICg0MiwgMTcpOwogICAgICB8 ICAgICAgICAgICAgICAgICAgICAgXn5+CmNvbmZ0ZXN0LmM6MzI5OjIxOiBlcnJvcjogaW5p dGlhbGl6ZXIgZWxlbWVudCBpcyBub3QgY29uc3RhbnQKY29uZmlndXJlOjMwOTAxOiAkPyA9 IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8 ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1RB Uk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIzMC4wLjUwIgp8ICNk ZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAzMC4wLjUwIgp8ICNkZWZpbmUgUEFD S0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tB R0VfVVJMICJodHRwczovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5l IEhBVkVfUERVTVBFUiAxCnwgI2RlZmluZSBIQVZFX1NURElPX0ggMQp8ICNkZWZpbmUgSEFW RV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVf SU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVf U1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFW RV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfRlNfSCAxCnwgI2RlZmluZSBIQVZF X01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmluZSBI QVZFX1BUWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUg SEFWRV9VVE1QX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfTFNBTl9JTlRFUkZBQ0Vf SCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9BU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVm aW5lIEhBVkVfU0FOSVRJWkVSX0NPTU1PTl9JTlRFUkZBQ0VfREVGU19IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNk ZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwgI2Rl ZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAxCnwgI2Rl ZmluZSBIQVZFX1NURElPX0VYVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1ZGU19IIDEKfCAj ZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfQ0RFRlNfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9JRUVFNzU0X0ggMQp8 ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAx CnwgI2RlZmluZSBIQVZFX1NUREJPT0xfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SQU5ET01f SCAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8 ICNkZWZpbmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwg I2RlZmluZSBfSFBVWF9BTFRfWE9QRU5fU09DS0VUX0FQSSAxCnwgI2RlZmluZSBfTkVUQlNE X1NPVVJDRSAxCnwgI2RlZmluZSBfT1BFTkJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUgX1BPU0lY X1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9B VFRSSUJTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9CRlBfRVhU X18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0RGUF9FWFRfXyAxCnwgI2Rl ZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dB TlRfSUVDXzYwNTU5X0ZVTkNTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182 MDU1OV9UWVBFU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9MSUJfRVhUMl9fIDEK fCAjZGVmaW5lIF9fU1REQ19XQU5UX01BVEhfU1BFQ19GVU5DU19fIDEKfCAjZGVmaW5lIF9U QU5ERU1fU09VUkNFIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIEdD Q19MSU5UIDEKfCAjZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBI QVZFX1NZU19TT1VORENBUkRfSCAxCnwgI2RlZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUg SEFWRV9TT1VORCAxCnwgI2RlZmluZSBIQVZFX1BFUlNPTkFMSVRZX0FERFJfTk9fUkFORE9N SVpFIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5GTyAxCnwgI2RlZmluZSBMSU5VWF9T WVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUgSEFWRV9URVJNX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUX0lGX0ggMQp8ICNkZWZpbmUgSEFWRV9J RkFERFJTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0ZMQUdTIDEKfCAj ZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9IV0FERFIgMQp8ICNkZWZpbmUgSEFWRV9T VFJVQ1RfSUZSRVFfSUZSX05FVE1BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFf SUZSX0JST0FEQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQUREUiAx CnwgI2RlZmluZSBIQVZFX1NCUksgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwg I2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9WRk9SSyAxCnwgI2RlZmluZSBI QVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0NBTk9OSUNBTElaRV9GSUxFX05BTUUgMQp8 ICNkZWZpbmUgSEFWRV9SRUFMUEFUSCAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVm aW5lIEhBVkVfRkNITU9EQVQgMQp8ICNkZWZpbmUgSEFWRV9MQ0hNT0QgMQp8ICNkZWZpbmUg SEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZF X0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJ TUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9QVEhS RUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZF X0lTQkxBTksgMQp8ICNkZWZpbmUgSEFWRV9JU1dDVFlQRSAxCnwgI2RlZmluZSBIQVZFX1NU UlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9MT0NB TFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgU1lT VEVNX01BTExPQyAxCnwgI2RlZmluZSBIQVZFX01NQVAgMQp8ICNkZWZpbmUgSEFWRV9QVEhS RUFEIDEKfCAjZGVmaW5lIFRIUkVBRFNfRU5BQkxFRCAxCnwgI2RlZmluZSBIQVZFX1hLQiAx CnwgI2RlZmluZSBIQVZFX1hLQlJFRlJFU0hLRVlCT0FSRE1BUFBJTkcgMQp8ICNkZWZpbmUg SEFWRV9YS0JGUkVFTkFNRVMgMQp8ICNkZWZpbmUgSEFWRV9YUk1TRVREQVRBQkFTRSAxCnwg I2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNPVVJDRVNUUklORyAxCnwgI2RlZmluZSBIQVZFX1hT Q1JFRU5OVU1CRVJPRlNDUkVFTiAxCnwgI2RlZmluZSBIQVZFX1hESVNQTEFZQ0VMTFMgMQp8 ICNkZWZpbmUgSEFWRV9YREVTVFJPWVNVQldJTkRPV1MgMQp8ICNkZWZpbmUgSEFWRV9YMTFS NiAxCnwgI2RlZmluZSBIQVZFX1hfSTE4TiAxCnwgI2RlZmluZSBIQVZFX1hJQ0NBTExCQUNL X0NBTExCQUNLIDEKfCAjZGVmaW5lIEhBVkVfWDExUjZfWElNIDEKfCAjZGVmaW5lIEhBVkVf UlNWRyAxCnwgI2RlZmluZSBIQVZFX1dFQlAgMQp8ICNkZWZpbmUgSEFWRV9TUUxJVEUzIDEK fCAjZGVmaW5lIEhBVkVfU1FMSVRFM19MT0FEX0VYVEVOU0lPTiAxCnwgI2RlZmluZSBIQVZF X0dFVEFERFJJTkZPX0EgMQp8ICNkZWZpbmUgSEFWRV9HVEszIDEKfCAjZGVmaW5lIEdES19E SVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIEdMSUJfRElTQUJMRV9E RVBSRUNBVElPTl9XQVJOSU5HUyAxCnwgI2RlZmluZSBVU0VfR1RLIDEKfCAjZGVmaW5lIEhB VkVfTUFMTE9DX1RSSU0gMQp8ICNkZWZpbmUgSEFWRV9EQlVTIDEKfCAjZGVmaW5lIEhBVkVf REJVU19XQVRDSF9HRVRfVU5JWF9GRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVFlQRV9JU19W QUxJRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfQlVTX05BTUUgMQp8ICNkZWZp bmUgSEFWRV9EQlVTX1ZBTElEQVRFX1BBVEggMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElE QVRFX0lOVEVSRkFDRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfTUVNQkVSIDEK fCAjZGVmaW5lIEhBVkVfR1NFVFRJTkdTIDEKfCAjZGVmaW5lIEhBVkVfTElCU0VMSU5VWCAx CnwgI2RlZmluZSBIQVZFX0dOVVRMUyAxCnwgI2RlZmluZSBIQVZFX0xJQlNZU1RFTUQgMQp8 ICNkZWZpbmUgSEFWRV9KU09OIDEKfCAjZGVmaW5lIEhBVkVfSU5PVElGWSAxCnwgI2RlZmlu ZSBVU0VfRklMRV9OT1RJRlkgMQp8ICNkZWZpbmUgVVNFX1RPT0xLSVRfU0NST0xMX0JBUlMg MQp8ICNkZWZpbmUgSEFWRV9YSU0gMQp8ICNkZWZpbmUgVVNFX1hJTSAxCnwgI2RlZmluZSBI QVZFX1hSRU5ERVIgMQp8ICNkZWZpbmUgVVNFX0NBSVJPX1hDQiAxCnwgI2RlZmluZSBVU0Vf Q0FJUk8gMQp8ICNkZWZpbmUgSEFWRV9GUkVFVFlQRSAxCnwgI2RlZmluZSBIQVZFX0ZUX0ZB Q0VfR0VUQ0hBUlZBUklBTlRJTkRFWCAxCnwgI2RlZmluZSBIQVZFX0xJQk9URiAxCnwgI2Rl ZmluZSBIQVZFX09URl9HRVRfVkFSSUFUSU9OX0dMWVBIUyAxCnwgI2RlZmluZSBIQVZFX00x N05fRkxUIDEKfCAjZGVmaW5lIEhBVkVfSEFSRkJVWlogMQp8ICNkZWZpbmUgVVNFX1hDQiAx CnwgI2RlZmluZSBIQVZFX1hQTSAxCnwgI2RlZmluZSBIQVZFX0pQRUcgMQp8ICNkZWZpbmUg SEFWRV9MQ01TMiAxCnwgI2RlZmluZSBIQVZFX1pMSUIgMQp8ICNkZWZpbmUgRFlOQU1JQ19M SUJfU1VGRklYICIuc28iCnwgI2RlZmluZSBEWU5BTUlDX0xJQl9TRUNPTkRBUllfU1VGRklY ICIiCnwgI2RlZmluZSBIQVZFX0RMQUREUiAxCnwgI2RlZmluZSBIQVZFX01PRFVMRVMgMQp8 ICNkZWZpbmUgTU9EVUxFU19TVUZGSVggIi5zbyIKfCAjZGVmaW5lIE5BVElWRV9FTElTUF9T VUZGSVggIi5lbG4iCnwgI2RlZmluZSBIQVZFX1BORyAxCnwgI2RlZmluZSBIQVZFX1RJRkYg MQp8ICNkZWZpbmUgSEFWRV9HSUYgMQp8ICNkZWZpbmUgSEFWRV9HUE0gMQp8ICNkZWZpbmUg SEFWRV9YX1NNIDEKfCAjZGVmaW5lIEhBVkVfWFJBTkRSIDEKfCAjZGVmaW5lIEhBVkVfWElO RVJBTUEgMQp8ICNkZWZpbmUgSEFWRV9YRklYRVMgMQp8ICNkZWZpbmUgSEFWRV9YSU5QVVQy IDEKfCAjZGVmaW5lIEhBVkVfWElTQ1JPTExDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBI QVZFX1hJVE9VQ0hDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hJQkFSUklFUlJF TEVBU0VQT0lOVEVSSU5GT19ERVZJQ0VJRCAxCnwgI2RlZmluZSBIQVZFX1hJR0VTVFVSRUNM QVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWFNZTkMgMQp8ICNkZWZpbmUgSEFWRV9Y U1lOQ1RSSUdHRVJGRU5DRSAxCnwgI2RlZmluZSBIQVZFX1hEQkUgMQp8ICNkZWZpbmUgSEFW RV9YQ0JfU0hBUEUgMQp8ICNkZWZpbmUgSEFWRV9YU0hBUEUgMQp8ICNkZWZpbmUgSEFWRV9Y Q09NUE9TSVRFIDEKfCAjZGVmaW5lIEhBVkVfTElCWE1MMiAxCnwgI2RlZmluZSBIQVZFX0xJ TlVYX1NFQ0NPTVBfSCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9G SUxURVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMg MQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GSUxURVJfSCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xf U0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBf RklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgU0laRU9GX0xPTkcgOAp8ICNkZWZpbmUg SEFWRV9BQ0NFUFQ0IDEKfCAjZGVmaW5lIEhBVkVfRkNIRElSIDEKfCAjZGVmaW5lIEhBVkVf R0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNBR0UgMQp8ICNkZWZpbmUgSEFW RV9HRVRfQ1VSUkVOVF9ESVJfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0xSQU5ENDggMQp8ICNk ZWZpbmUgSEFWRV9SQU5ET00gMQp8ICNkZWZpbmUgSEFWRV9SSU5UIDEKfCAjZGVmaW5lIEhB VkVfVFJVTkMgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9HRVRQ QUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX05F V0xPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NF VFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5lIEhBVkVfUFRI UkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSU0lHTkFMIDEKfCAjZGVmaW5lIEhB VkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfU0VORFRPIDEKfCAjZGVmaW5lIEhBVkVf UkVDVkZST00gMQp8ICNkZWZpbmUgSEFWRV9HRVRTT0NLTkFNRSAxCnwgI2RlZmluZSBIQVZF X0dFVElGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9GUkVFSUZBRERSUyAxCnwgI2RlZmluZSBI QVZFX0dBSV9TVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZFX1NZTkMgMQp8ICNkZWZpbmUgSEFW RV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0VORFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVf R0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX1JF TkFNRUFUMiAxCnwgI2RlZmluZSBIQVZFX0NGTUFLRVJBVyAxCnwgI2RlZmluZSBIQVZFX0NG U0VUU1BFRUQgMQp8ICNkZWZpbmUgSEFWRV9fX0VYRUNVVEFCTEVfU1RBUlQgMQp8ICNkZWZp bmUgSEFWRV9MT0cyIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TRVROQU1FX05QIDEKfCAj ZGVmaW5lIEhBVkVfQUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfQUxJR05F RF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX01BRFZJU0UgMQp8ICNkZWZpbmUgSEFW RV9fX0JVSUxUSU5fRlJBTUVfQUREUkVTUyAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9V TldJTkRfSU5JVCAxCnwgI2RlZmluZSBIQVZFX0ZTRUVLTyAxCnwgI2RlZmluZSBIQVZFX0dS QU5UUFQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQVCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX09Q RU5QVCAxCnwgI2RlZmluZSBURVJNSU5GTyAxCnwgI2RlZmluZSBURVJNSU5GT19ERUZJTkVT X0JDIDEKfCAjZGVmaW5lIEhBVkVfVElNRVJGRCAxCnwgI2RlZmluZSBIQVZFX1ZBTEdSSU5E X1ZBTEdSSU5EX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVU5JUEFJUl9VTklDT0RFIDEK fCAjZGVmaW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdf Rk9SSyAxCnwgI2RlZmluZSBIQVZFX1NOUFJJTlRGIDEKfCAjZGVmaW5lIEhBVkVfU1BBV05f SCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhf U1BBV05fRklMRV9BQ1RJT05TX0FERENIRElSX05QIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhf U1BBV05BVFRSX1NFVEZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QT1NJWF9TUEFXTl9T RVRTSUQgMQp8ICNkZWZpbmUgSEFWRV9HTElCIDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lORk9f Q09ERVNFVCAxCnwgI2RlZmluZSBIQVZFX0xBTkdJTkZPX19OTF9QQVBFUl9XSURUSCAxCnwg I2RlZmluZSBIQVZFX01CU1RBVEVfVCAxCnwgI2RlZmluZSBBTVBFUlNBTkRfRlVMTF9OQU1F IDEKfCAjZGVmaW5lIEhBVkVfUFRZUyAxCnwgI2RlZmluZSBIQVZFX1NPQ0tFVFMgMQp8ICNk ZWZpbmUgTlVMTF9ERVZJQ0UgIi9kZXYvbnVsbCIKfCAjZGVmaW5lIFNFUENIQVIgJzonCnwg I2RlZmluZSBzdWJwcm9jZXNzZXMgMQp8ICNkZWZpbmUgVVNFUl9GVUxMX05BTUUgcHctPnB3 X2dlY29zCnwgI2RlZmluZSBESVJFQ1RPUllfU0VQICcvJwp8ICNkZWZpbmUgSVNfREVWSUNF X1NFUChfY18pIDAKfCAjZGVmaW5lIElTX0RJUkVDVE9SWV9TRVAoX2NfKSAoKF9jXykgPT0g RElSRUNUT1JZX1NFUCkKfCAjZGVmaW5lIElTX0FOWV9TRVAoX2NfKSAoSVNfRElSRUNUT1JZ X1NFUCAoX2NfKSkKfCAjZGVmaW5lIEhBVkVfUFJPQ0ZTIDEKfCAjZGVmaW5lIERFRkFVTFRf U09VTkRfREVWSUNFICIvZGV2L2RzcCIKfCAjZGVmaW5lIElOVEVSUlVQVF9JTlBVVCAxCnwg I2RlZmluZSBOQVJST1dQUk9UTyAxCnwgI2RlZmluZSBVTklYOThfUFRZUyAxCnwgI2RlZmlu ZSBQVFlfSVRFUkFUSU9OIGludCBpOyBmb3IgKGkgPSAwOyBpIDwgMTsgaSsrKQp8ICNkZWZp bmUgUFRZX1RUWV9OQU1FX1NQUklOVEYgeyBjaGFyICpwdHluYW1lID0gMDsgc2lnc2V0X3Qg YmxvY2tlZDsgc2lnZW1wdHlzZXQgKCZibG9ja2VkKTsgc2lnYWRkc2V0ICgmYmxvY2tlZCwg U0lHQ0hMRCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX0JMT0NLLCAmYmxvY2tlZCwgMCk7IGlm IChncmFudHB0IChmZCkgIT0gLTEgJiYgdW5sb2NrcHQgKGZkKSAhPSAtMSkgcHR5bmFtZSA9 IHB0c25hbWUoZmQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19VTkJMT0NLLCAmYmxvY2tlZCwg MCk7IGlmICghcHR5bmFtZSkgeyBlbWFjc19jbG9zZSAoZmQpOyByZXR1cm4gLTE7IH0gc25w cmludGYgKHB0eV9uYW1lLCBQVFlfTkFNRV9TSVpFLCAiJXMiLCBwdHluYW1lKTsgfQp8ICNk ZWZpbmUgUFRZX09QRU4gZG8geyBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19DTE9F WEVDIHwgT19OT0NUVFkpOyBpZiAoZmQgPCAwICYmIGVycm5vID09IEVJTlZBTCkgZmQgPSBw b3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fTk9DVFRZKTsgfSB3aGlsZSAoZmFsc2UpCnwgI2Rl ZmluZSBQVFlfTkFNRV9TUFJJTlRGIC8qKi8KfCAjZGVmaW5lIFNJR05BTFNfVklBX0NIQVJB Q1RFUlMgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAjZGVmaW5lIEdDX1NFVEpN UF9XT1JLUyAxCnwgI2RlZmluZSBIQVZFX19TRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TSUdT RVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TVEFDS19PVkVSRkxPV19IQU5ETElORyAxCnwgI2Rl ZmluZSBVU0cgLyoqLwp8ICNkZWZpbmUgR05VX0xJTlVYIC8qKi8KfCAjZGVmaW5lIFNJWkVP Rl9TUEVFRF9UIDQKfCAjZGVmaW5lIFVTQUJMRV9GSU9OUkVBRCAxCnwgI2RlZmluZSBVU0FC TEVfU0lHSU8gMQp8ICNkZWZpbmUgQ09QWVJJR0hUICJDb3B5cmlnaHQgKEMpIDIwMjMgRnJl ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuIgp8ICNkZWZpbmUgVEVSTV9IRUFERVIgImd0 a3V0aWwuaCIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR1VSQVRJT04gIng4Nl82NC1wYy1saW51 eC1nbnUiCnwgI2RlZmluZSBFTUFDU19DT05GSUdfT1BUSU9OUyAiIgp8ICNkZWZpbmUgSEFW RV9YX1dJTkRPV1MgMQp8ICNkZWZpbmUgSEFWRV9YMTEgMQp8ICNkZWZpbmUgSEFWRV9TVFJV Q1RfQVRUUklCVVRFX0FMSUdORUQgMQp8ICNkZWZpbmUgSEFWRV9UWVBFT0YgMQp8ICNkZWZp bmUgSEFWRV9TVEFURU1FTlRfRVhQUkVTU0lPTlMgMQp8ICNkZWZpbmUgTUFMTE9DXzBfSVNf Tk9OTlVMTCAxCnwgI2RlZmluZSBIQVZFX1NZU19BQ0xfSCAxCnwgI2RlZmluZSBIQVZFX0FD TF9HRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRkQgMQp8ICNkZWZpbmUgSEFW RV9BQ0xfU0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZEIDEKfCAjZGVmaW5l IEhBVkVfQUNMX0ZSRUUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9NT0RFIDEKfCAjZGVm aW5lIEhBVkVfQUNMX0ZST01fVEVYVCAxCnwgI2RlZmluZSBIQVZFX0FDTF9ERUxFVEVfREVG X0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRVhURU5ERURfRklMRSAxCnwgI2RlZmluZSBI QVZFX0FDTF9MSUJBQ0xfSCAxCnwgI2RlZmluZSBIQVZFX0FDTF9FTlRSSUVTIDEKfCAjZGVm aW5lIEhBVkVfQUNMX0ZJUlNUX0VOVFJZIDEKfCAjZGVmaW5lIFVTRV9BQ0wgMQp8ICNkZWZp bmUgSEFWRV9BTExPQ0FfSCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBM U1RBVF9GT0xMT1dTX1NMQVNIRURfU1lNTElOSyAxCnwgI2RlZmluZSBGVU5DX1JFQUxQQVRI X1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfR0VU Q1dEIDEKfCAjZGVmaW5lIHJlc3RyaWN0IF9fcmVzdHJpY3RfXwp8ICNkZWZpbmUgSEFWRV9F TlZJUk9OX0RFQ0wgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUk1PREUgMAp8ICNkZWZpbmUg SEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9MT05HX09OTFkgMQp8ICNk ZWZpbmUgSEFWRV9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfVU5TSUdORURfTE9O R19MT05HX0lOVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfTUVNTUVNIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9NRU1SQ0hSIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUg PGxpbWl0cy5oPgp8ICAgICAgICAgICAgIGludCB4ID0gTUlOICg0MiwgMTcpOwp8IGludAp8 IG1haW4gKHZvaWQpCnwgewp8IAp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6 MzA5MDk6IHJlc3VsdDogbm8KY29uZmlndXJlOjMwOTIyOiBjaGVja2luZyB3aGV0aGVyIDxz eXMvcGFyYW0uaD4gZGVmaW5lcyBNSU4gYW5kIE1BWApjb25maWd1cmU6MzA5NDA6IGdjYyAt YyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozMDk0MDogJD8gPSAwCmNv bmZpZ3VyZTozMDk0ODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjMwOTgxOiBjaGVja2luZyB3 aGV0aGVyIHRpbWVfdCBpcyBzaWduZWQKY29uZmlndXJlOjMwOTk5OiBnY2MgLWMgLWczIC1P MiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzA5OTk6ICQ/ID0gMApjb25maWd1cmU6 MzEwMDc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMTAxNTogY2hlY2tpbmcgd2hldGhlciBh bGFybSBpcyBkZWNsYXJlZApjb25maWd1cmU6MzEwMTU6IGdjYyAtYyAtZzMgLU8yICAgICBj b25mdGVzdC5jID4mNQpjb25maWd1cmU6MzEwMTU6ICQ/ID0gMApjb25maWd1cmU6MzEwMTU6 IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMTAzMDogY2hlY2tpbmcgZm9yIHdvcmtpbmcgbWt0 aW1lCmNvbmZpZ3VyZTozMTI3NzogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25m dGVzdC5jICAgPiY1IApjb25maWd1cmU6MzEyNzc6ICQ/ID0gMApjb25maWd1cmU6MzEyNzc6 IC4vY29uZnRlc3QKY29uZmlndXJlOjMxMjc3OiAkPyA9IDY0CmNvbmZpZ3VyZTogcHJvZ3Jh bSBleGl0ZWQgd2l0aCBzdGF0dXMgNjQKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6 CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3Mi CnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9W RVJTSU9OICIzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAz MC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251 Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJodHRwczovL3d3dy5nbnUub3JnL3NvZnR3 YXJlL2VtYWNzLyIKfCAjZGVmaW5lIEhBVkVfUERVTVBFUiAxCnwgI2RlZmluZSBIQVZFX1NU RElPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklO R19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElO VF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NU QVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfVU5J U1REX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhf RlNfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZ U0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1BUWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JF U09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhB VkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1QX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5J VElaRVJfTFNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9BU0FO X0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0NPTU1PTl9JTlRFUkZB Q0VfREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfVU5fSCAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhB VkVfRVhFQ0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1NURElPX0VYVF9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1ZGU19IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfQ0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZp bmUgSEFWRV9JRUVFNzU0X0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NUREJPT0xfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19SQU5ET01fSCAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNk ZWZpbmUgX0FMTF9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2Rl ZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBfSFBVWF9BTFRfWE9QRU5fU09DS0VUX0FQ SSAxCnwgI2RlZmluZSBfTkVUQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfT1BFTkJTRF9TT1VS Q0UgMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9f U1REQ19XQU5UX0lFQ182MDU1OV9BVFRSSUJTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19X QU5UX0lFQ182MDU1OV9CRlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYw NTU5X0RGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRVhUX18g MQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0ZVTkNTX0VYVF9fIDEKfCAjZGVm aW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9UWVBFU19FWFRfXyAxCnwgI2RlZmluZSBfX1NU RENfV0FOVF9MSUJfRVhUMl9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX01BVEhfU1BFQ19G VU5DU19fIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVmaW5lIF9fRVhURU5T SU9OU19fIDEKfCAjZGVmaW5lIEdDQ19MSU5UIDEKfCAjZGVmaW5lIFNZU1RFTV9UWVBFICJn bnUvbGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAxCnwgI2RlZmluZSBI QVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwgI2RlZmluZSBIQVZFX1BFUlNP TkFMSVRZX0FERFJfTk9fUkFORE9NSVpFIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5G TyAxCnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUgSEFWRV9URVJN X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUX0lG X0ggMQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1Rf SUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9IV0FE RFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX05FVE1BU0sgMQp8ICNkZWZp bmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAxCnwgI2RlZmluZSBIQVZFX1NU UlVDVF9JRlJFUV9JRlJfQUREUiAxCnwgI2RlZmluZSBIQVZFX1NCUksgMQp8ICNkZWZpbmUg SEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFW RV9WRk9SSyAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0NBTk9O SUNBTElaRV9GSUxFX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9SRUFMUEFUSCAxCnwgI2RlZmlu ZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EQVQgMQp8ICNkZWZpbmUgSEFW RV9MQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX0ZET1BF TkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAx CnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1Qg MQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9SRUFE TElOSyAxCnwgI2RlZmluZSBIQVZFX0lTQkxBTksgMQp8ICNkZWZpbmUgSEFWRV9JU1dDVFlQ RSAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksg MQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJM RVNJWkUgMQp8ICNkZWZpbmUgU1lTVEVNX01BTExPQyAxCnwgI2RlZmluZSBIQVZFX01NQVAg MQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEIDEKfCAjZGVmaW5lIFRIUkVBRFNfRU5BQkxFRCAx CnwgI2RlZmluZSBIQVZFX1hLQiAxCnwgI2RlZmluZSBIQVZFX1hLQlJFRlJFU0hLRVlCT0FS RE1BUFBJTkcgMQp8ICNkZWZpbmUgSEFWRV9YS0JGUkVFTkFNRVMgMQp8ICNkZWZpbmUgSEFW RV9YUk1TRVREQVRBQkFTRSAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNPVVJDRVNUUklO RyAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJPRlNDUkVFTiAxCnwgI2RlZmluZSBI QVZFX1hESVNQTEFZQ0VMTFMgMQp8ICNkZWZpbmUgSEFWRV9YREVTVFJPWVNVQldJTkRPV1Mg MQp8ICNkZWZpbmUgSEFWRV9YMTFSNiAxCnwgI2RlZmluZSBIQVZFX1hfSTE4TiAxCnwgI2Rl ZmluZSBIQVZFX1hJQ0NBTExCQUNLX0NBTExCQUNLIDEKfCAjZGVmaW5lIEhBVkVfWDExUjZf WElNIDEKfCAjZGVmaW5lIEhBVkVfUlNWRyAxCnwgI2RlZmluZSBIQVZFX1dFQlAgMQp8ICNk ZWZpbmUgSEFWRV9TUUxJVEUzIDEKfCAjZGVmaW5lIEhBVkVfU1FMSVRFM19MT0FEX0VYVEVO U0lPTiAxCnwgI2RlZmluZSBIQVZFX0dFVEFERFJJTkZPX0EgMQp8ICNkZWZpbmUgSEFWRV9H VEszIDEKfCAjZGVmaW5lIEdES19ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAj ZGVmaW5lIEdMSUJfRElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAxCnwgI2RlZmluZSBV U0VfR1RLIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX1RSSU0gMQp8ICNkZWZpbmUgSEFWRV9E QlVTIDEKfCAjZGVmaW5lIEhBVkVfREJVU19XQVRDSF9HRVRfVU5JWF9GRCAxCnwgI2RlZmlu ZSBIQVZFX0RCVVNfVFlQRV9JU19WQUxJRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURB VEVfQlVTX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX1BBVEggMQp8ICNk ZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0lOVEVSRkFDRSAxCnwgI2RlZmluZSBIQVZFX0RC VVNfVkFMSURBVEVfTUVNQkVSIDEKfCAjZGVmaW5lIEhBVkVfR1NFVFRJTkdTIDEKfCAjZGVm aW5lIEhBVkVfTElCU0VMSU5VWCAxCnwgI2RlZmluZSBIQVZFX0dOVVRMUyAxCnwgI2RlZmlu ZSBIQVZFX0xJQlNZU1RFTUQgMQp8ICNkZWZpbmUgSEFWRV9KU09OIDEKfCAjZGVmaW5lIEhB VkVfSU5PVElGWSAxCnwgI2RlZmluZSBVU0VfRklMRV9OT1RJRlkgMQp8ICNkZWZpbmUgVVNF X1RPT0xLSVRfU0NST0xMX0JBUlMgMQp8ICNkZWZpbmUgSEFWRV9YSU0gMQp8ICNkZWZpbmUg VVNFX1hJTSAxCnwgI2RlZmluZSBIQVZFX1hSRU5ERVIgMQp8ICNkZWZpbmUgVVNFX0NBSVJP X1hDQiAxCnwgI2RlZmluZSBVU0VfQ0FJUk8gMQp8ICNkZWZpbmUgSEFWRV9GUkVFVFlQRSAx CnwgI2RlZmluZSBIQVZFX0ZUX0ZBQ0VfR0VUQ0hBUlZBUklBTlRJTkRFWCAxCnwgI2RlZmlu ZSBIQVZFX0xJQk9URiAxCnwgI2RlZmluZSBIQVZFX09URl9HRVRfVkFSSUFUSU9OX0dMWVBI UyAxCnwgI2RlZmluZSBIQVZFX00xN05fRkxUIDEKfCAjZGVmaW5lIEhBVkVfSEFSRkJVWlog MQp8ICNkZWZpbmUgVVNFX1hDQiAxCnwgI2RlZmluZSBIQVZFX1hQTSAxCnwgI2RlZmluZSBI QVZFX0pQRUcgMQp8ICNkZWZpbmUgSEFWRV9MQ01TMiAxCnwgI2RlZmluZSBIQVZFX1pMSUIg MQp8ICNkZWZpbmUgRFlOQU1JQ19MSUJfU1VGRklYICIuc28iCnwgI2RlZmluZSBEWU5BTUlD X0xJQl9TRUNPTkRBUllfU1VGRklYICIiCnwgI2RlZmluZSBIQVZFX0RMQUREUiAxCnwgI2Rl ZmluZSBIQVZFX01PRFVMRVMgMQp8ICNkZWZpbmUgTU9EVUxFU19TVUZGSVggIi5zbyIKfCAj ZGVmaW5lIE5BVElWRV9FTElTUF9TVUZGSVggIi5lbG4iCnwgI2RlZmluZSBIQVZFX1BORyAx CnwgI2RlZmluZSBIQVZFX1RJRkYgMQp8ICNkZWZpbmUgSEFWRV9HSUYgMQp8ICNkZWZpbmUg SEFWRV9HUE0gMQp8ICNkZWZpbmUgSEFWRV9YX1NNIDEKfCAjZGVmaW5lIEhBVkVfWFJBTkRS IDEKfCAjZGVmaW5lIEhBVkVfWElORVJBTUEgMQp8ICNkZWZpbmUgSEFWRV9YRklYRVMgMQp8 ICNkZWZpbmUgSEFWRV9YSU5QVVQyIDEKfCAjZGVmaW5lIEhBVkVfWElTQ1JPTExDTEFTU0lO Rk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hJVE9VQ0hDTEFTU0lORk9fVFlQRSAxCnwgI2Rl ZmluZSBIQVZFX1hJQkFSUklFUlJFTEVBU0VQT0lOVEVSSU5GT19ERVZJQ0VJRCAxCnwgI2Rl ZmluZSBIQVZFX1hJR0VTVFVSRUNMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWFNZ TkMgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQ1RSSUdHRVJGRU5DRSAxCnwgI2RlZmluZSBIQVZF X1hEQkUgMQp8ICNkZWZpbmUgSEFWRV9YQ0JfU0hBUEUgMQp8ICNkZWZpbmUgSEFWRV9YU0hB UEUgMQp8ICNkZWZpbmUgSEFWRV9YQ09NUE9TSVRFIDEKfCAjZGVmaW5lIEhBVkVfTElCWE1M MiAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX1NFQ0NPTVBfSCAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NP TVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GSUxURVJfSCAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgU0la RU9GX0xPTkcgOAp8ICNkZWZpbmUgSEFWRV9BQ0NFUFQ0IDEKfCAjZGVmaW5lIEhBVkVfRkNI RElSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRS VVNBR0UgMQp8ICNkZWZpbmUgSEFWRV9HRVRfQ1VSUkVOVF9ESVJfTkFNRSAxCnwgI2RlZmlu ZSBIQVZFX0xSQU5ENDggMQp8ICNkZWZpbmUgSEFWRV9SQU5ET00gMQp8ICNkZWZpbmUgSEFW RV9SSU5UIDEKfCAjZGVmaW5lIEhBVkVfVFJVTkMgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1Qg MQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FM RSAxCnwgI2RlZmluZSBIQVZFX05FV0xPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJMSU1J VCAxCnwgI2RlZmluZSBIQVZFX1NFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dO IDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RS U0lHTkFMIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfU0VO RFRPIDEKfCAjZGVmaW5lIEhBVkVfUkVDVkZST00gMQp8ICNkZWZpbmUgSEFWRV9HRVRTT0NL TkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVElGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9GUkVF SUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0dBSV9TVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZF X1NZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0VORFBX RU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRHUkVO VCAxCnwgI2RlZmluZSBIQVZFX1JFTkFNRUFUMiAxCnwgI2RlZmluZSBIQVZFX0NGTUFLRVJB VyAxCnwgI2RlZmluZSBIQVZFX0NGU0VUU1BFRUQgMQp8ICNkZWZpbmUgSEFWRV9fX0VYRUNV VEFCTEVfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9MT0cyIDEKfCAjZGVmaW5lIEhBVkVfUFRI UkVBRF9TRVROQU1FX05QIDEKfCAjZGVmaW5lIEhBVkVfQUxJR05FRF9BTExPQyAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfQUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX01B RFZJU0UgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fRlJBTUVfQUREUkVTUyAxCnwgI2Rl ZmluZSBIQVZFX19fQlVJTFRJTl9VTldJTkRfSU5JVCAxCnwgI2RlZmluZSBIQVZFX0ZTRUVL TyAxCnwgI2RlZmluZSBIQVZFX0dSQU5UUFQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQVCAxCnwg I2RlZmluZSBIQVZFX1BPU0lYX09QRU5QVCAxCnwgI2RlZmluZSBURVJNSU5GTyAxCnwgI2Rl ZmluZSBURVJNSU5GT19ERUZJTkVTX0JDIDEKfCAjZGVmaW5lIEhBVkVfVElNRVJGRCAxCnwg I2RlZmluZSBIQVZFX1ZBTEdSSU5EX1ZBTEdSSU5EX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJV Q1RfVU5JUEFJUl9VTklDT0RFIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwg I2RlZmluZSBIQVZFX1dPUktJTkdfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1NOUFJJTlRGIDEK fCAjZGVmaW5lIEhBVkVfU1BBV05fSCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOIDEK fCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV05fRklMRV9BQ1RJT05TX0FERENIRElSX05QIDEK fCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV05BVFRSX1NFVEZMQUdTIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9QT1NJWF9TUEFXTl9TRVRTSUQgMQp8ICNkZWZpbmUgSEFWRV9HTElCIDEKfCAj ZGVmaW5lIEhBVkVfTEFOR0lORk9fQ09ERVNFVCAxCnwgI2RlZmluZSBIQVZFX0xBTkdJTkZP X19OTF9QQVBFUl9XSURUSCAxCnwgI2RlZmluZSBIQVZFX01CU1RBVEVfVCAxCnwgI2RlZmlu ZSBBTVBFUlNBTkRfRlVMTF9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUFRZUyAxCnwgI2RlZmlu ZSBIQVZFX1NPQ0tFVFMgMQp8ICNkZWZpbmUgTlVMTF9ERVZJQ0UgIi9kZXYvbnVsbCIKfCAj ZGVmaW5lIFNFUENIQVIgJzonCnwgI2RlZmluZSBzdWJwcm9jZXNzZXMgMQp8ICNkZWZpbmUg VVNFUl9GVUxMX05BTUUgcHctPnB3X2dlY29zCnwgI2RlZmluZSBESVJFQ1RPUllfU0VQICcv Jwp8ICNkZWZpbmUgSVNfREVWSUNFX1NFUChfY18pIDAKfCAjZGVmaW5lIElTX0RJUkVDVE9S WV9TRVAoX2NfKSAoKF9jXykgPT0gRElSRUNUT1JZX1NFUCkKfCAjZGVmaW5lIElTX0FOWV9T RVAoX2NfKSAoSVNfRElSRUNUT1JZX1NFUCAoX2NfKSkKfCAjZGVmaW5lIEhBVkVfUFJPQ0ZT IDEKfCAjZGVmaW5lIERFRkFVTFRfU09VTkRfREVWSUNFICIvZGV2L2RzcCIKfCAjZGVmaW5l IElOVEVSUlVQVF9JTlBVVCAxCnwgI2RlZmluZSBOQVJST1dQUk9UTyAxCnwgI2RlZmluZSBV TklYOThfUFRZUyAxCnwgI2RlZmluZSBQVFlfSVRFUkFUSU9OIGludCBpOyBmb3IgKGkgPSAw OyBpIDwgMTsgaSsrKQp8ICNkZWZpbmUgUFRZX1RUWV9OQU1FX1NQUklOVEYgeyBjaGFyICpw dHluYW1lID0gMDsgc2lnc2V0X3QgYmxvY2tlZDsgc2lnZW1wdHlzZXQgKCZibG9ja2VkKTsg c2lnYWRkc2V0ICgmYmxvY2tlZCwgU0lHQ0hMRCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX0JM T0NLLCAmYmxvY2tlZCwgMCk7IGlmIChncmFudHB0IChmZCkgIT0gLTEgJiYgdW5sb2NrcHQg KGZkKSAhPSAtMSkgcHR5bmFtZSA9IHB0c25hbWUoZmQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJ R19VTkJMT0NLLCAmYmxvY2tlZCwgMCk7IGlmICghcHR5bmFtZSkgeyBlbWFjc19jbG9zZSAo ZmQpOyByZXR1cm4gLTE7IH0gc25wcmludGYgKHB0eV9uYW1lLCBQVFlfTkFNRV9TSVpFLCAi JXMiLCBwdHluYW1lKTsgfQp8ICNkZWZpbmUgUFRZX09QRU4gZG8geyBmZCA9IHBvc2l4X29w ZW5wdCAoT19SRFdSIHwgT19DTE9FWEVDIHwgT19OT0NUVFkpOyBpZiAoZmQgPCAwICYmIGVy cm5vID09IEVJTlZBTCkgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fTk9DVFRZKTsg fSB3aGlsZSAoZmFsc2UpCnwgI2RlZmluZSBQVFlfTkFNRV9TUFJJTlRGIC8qKi8KfCAjZGVm aW5lIFNJR05BTFNfVklBX0NIQVJBQ1RFUlMgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktT IDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBIQVZFX19TRVRKTVAg MQp8ICNkZWZpbmUgSEFWRV9TSUdTRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TVEFDS19PVkVS RkxPV19IQU5ETElORyAxCnwgI2RlZmluZSBVU0cgLyoqLwp8ICNkZWZpbmUgR05VX0xJTlVY IC8qKi8KfCAjZGVmaW5lIFNJWkVPRl9TUEVFRF9UIDQKfCAjZGVmaW5lIFVTQUJMRV9GSU9O UkVBRCAxCnwgI2RlZmluZSBVU0FCTEVfU0lHSU8gMQp8ICNkZWZpbmUgQ09QWVJJR0hUICJD b3B5cmlnaHQgKEMpIDIwMjMgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuIgp8ICNk ZWZpbmUgVEVSTV9IRUFERVIgImd0a3V0aWwuaCIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR1VS QVRJT04gIng4Nl82NC1wYy1saW51eC1nbnUiCnwgI2RlZmluZSBFTUFDU19DT05GSUdfT1BU SU9OUyAiIgp8ICNkZWZpbmUgSEFWRV9YX1dJTkRPV1MgMQp8ICNkZWZpbmUgSEFWRV9YMTEg MQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfQVRUUklCVVRFX0FMSUdORUQgMQp8ICNkZWZpbmUg SEFWRV9UWVBFT0YgMQp8ICNkZWZpbmUgSEFWRV9TVEFURU1FTlRfRVhQUkVTU0lPTlMgMQp8 ICNkZWZpbmUgTUFMTE9DXzBfSVNfTk9OTlVMTCAxCnwgI2RlZmluZSBIQVZFX1NZU19BQ0xf SCAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9H RVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9B Q0xfU0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZSRUUgMQp8ICNkZWZpbmUgSEFWRV9B Q0xfRlJPTV9NT0RFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZST01fVEVYVCAxCnwgI2RlZmlu ZSBIQVZFX0FDTF9ERUxFVEVfREVGX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRVhURU5E RURfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9MSUJBQ0xfSCAxCnwgI2RlZmluZSBIQVZF X0FDTF9FTlRSSUVTIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZJUlNUX0VOVFJZIDEKfCAjZGVm aW5lIFVTRV9BQ0wgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAxCnwgI2RlZmluZSBIQVZF X0FMTE9DQSAxCnwgI2RlZmluZSBMU1RBVF9GT0xMT1dTX1NMQVNIRURfU1lNTElOSyAxCnwg I2RlZmluZSBGVU5DX1JFQUxQQVRIX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfRkFDQ0VTU0FU IDEKfCAjZGVmaW5lIEhBVkVfR0VUQ1dEIDEKfCAjZGVmaW5lIHJlc3RyaWN0IF9fcmVzdHJp Y3RfXwp8ICNkZWZpbmUgSEFWRV9FTlZJUk9OX0RFQ0wgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X1NUUk1PREUgMAp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX0dF VE9QVF9MT05HX09OTFkgMQp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkdfSU5UIDEKfCAjZGVm aW5lIEhBVkVfVU5TSUdORURfTE9OR19MT05HX0lOVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xf TUVNTUVNIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9NRU1SQ0hSIDEKfCAjZGVmaW5lIEhBVkVf TUlOTUFYX0lOX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIFRJTUVfVF9JU19TSUdORUQgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX0FMQVJNIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwg LyogVGVzdCBwcm9ncmFtIGZyb20gUGF1bCBFZ2dlcnQgYW5kIFRvbnkgTGVuZWlzLiAgKi8K fCAjaW5jbHVkZSA8bGltaXRzLmg+CnwgI2luY2x1ZGUgPHN0ZGxpYi5oPgp8ICNpbmNsdWRl IDx0aW1lLmg+CnwgCnwgI2lmZGVmIEhBVkVfVU5JU1REX0gKfCAjIGluY2x1ZGUgPHVuaXN0 ZC5oPgp8ICNlbmRpZgp8IAp8ICNpZiBIQVZFX0RFQ0xfQUxBUk0KfCAjIGluY2x1ZGUgPHNp Z25hbC5oPgp8ICNlbmRpZgp8IAp8IAp8IAp8IAp8ICNpZiBkZWZpbmVkIF9XSU4zMiAmJiAh ZGVmaW5lZCBfX0NZR1dJTl9fCnwgI2RlZmluZSBhY2Nlc3MgICAgX2FjY2Vzcwp8ICNkZWZp bmUgY2hkaXIgICAgIF9jaGRpcgp8ICNkZWZpbmUgY2htb2QgICAgIF9jaG1vZAp8ICNkZWZp bmUgY2xvc2UgICAgIF9jbG9zZQp8ICNkZWZpbmUgY3JlYXQgICAgIF9jcmVhdAp8ICNkZWZp bmUgZHVwICAgICAgIF9kdXAKfCAjZGVmaW5lIGR1cDIgICAgICBfZHVwMgp8ICNkZWZpbmUg ZWN2dCAgICAgIF9lY3Z0CnwgI2RlZmluZSBleGVjbCAgICAgX2V4ZWNsCnwgI2RlZmluZSBl eGVjbGUgICAgX2V4ZWNsZQp8ICNkZWZpbmUgZXhlY2xwICAgIF9leGVjbHAKfCAjZGVmaW5l IGV4ZWN2ICAgICBfZXhlY3YKfCAjZGVmaW5lIGV4ZWN2ZSAgICBfZXhlY3ZlCnwgI2RlZmlu ZSBleGVjdnAgICAgX2V4ZWN2cAp8ICNkZWZpbmUgZXhlY3ZwZSAgIF9leGVjdnBlCnwgI2Rl ZmluZSBmY2xvc2VhbGwgX2ZjbG9zZWFsbAp8ICNkZWZpbmUgZmN2dCAgICAgIF9mY3Z0Cnwg I2RlZmluZSBmZG9wZW4gICAgX2Zkb3Blbgp8ICNkZWZpbmUgZmlsZW5vICAgIF9maWxlbm8K fCAjZGVmaW5lIGdjdnQgICAgICBfZ2N2dAp8ICNkZWZpbmUgZ2V0Y3dkICAgIF9nZXRjd2QK fCAjZGVmaW5lIGdldHBpZCAgICBfZ2V0cGlkCnwgI2RlZmluZSBnZXR3ICAgICAgX2dldHcK fCAjZGVmaW5lIGlzYXR0eSAgICBfaXNhdHR5CnwgI2RlZmluZSBqMCAgICAgICAgX2owCnwg I2RlZmluZSBqMSAgICAgICAgX2oxCnwgI2RlZmluZSBqbiAgICAgICAgX2puCnwgI2RlZmlu ZSBsZmluZCAgICAgX2xmaW5kCnwgI2RlZmluZSBsc2VhcmNoICAgX2xzZWFyY2gKfCAjZGVm aW5lIGxzZWVrICAgICBfbHNlZWsKfCAjZGVmaW5lIG1lbWNjcHkgICBfbWVtY2NweQp8ICNk ZWZpbmUgbWtkaXIgICAgIF9ta2Rpcgp8ICNkZWZpbmUgbWt0ZW1wICAgIF9ta3RlbXAKfCAj ZGVmaW5lIG9wZW4gICAgICBfb3Blbgp8ICNkZWZpbmUgcHV0ZW52ICAgIF9wdXRlbnYKfCAj ZGVmaW5lIHB1dHcgICAgICBfcHV0dwp8ICNkZWZpbmUgcmVhZCAgICAgIF9yZWFkCnwgI2Rl ZmluZSBybWRpciAgICAgX3JtZGlyCnwgI2RlZmluZSBzdHJkdXAgICAgX3N0cmR1cAp8ICNk ZWZpbmUgc3dhYiAgICAgIF9zd2FiCnwgI2RlZmluZSB0ZW1wbmFtICAgX3RlbXBuYW0KfCAj ZGVmaW5lIHR6c2V0ICAgICBfdHpzZXQKfCAjZGVmaW5lIHVtYXNrICAgICBfdW1hc2sKfCAj ZGVmaW5lIHVubGluayAgICBfdW5saW5rCnwgI2RlZmluZSB1dGltZSAgICAgX3V0aW1lCnwg I2RlZmluZSB3Y3NkdXAgICAgX3djc2R1cAp8ICNkZWZpbmUgd3JpdGUgICAgIF93cml0ZQp8 ICNkZWZpbmUgeTAgICAgICAgIF95MAp8ICNkZWZpbmUgeTEgICAgICAgIF95MQp8ICNkZWZp bmUgeW4gICAgICAgIF95bgp8ICNlbmRpZgp8IAp8IAp8IAp8ICNpZm5kZWYgVElNRV9UX0lT X1NJR05FRAp8ICMgZGVmaW5lIFRJTUVfVF9JU19TSUdORUQgMAp8ICNlbmRpZgp8IAp8IHN0 YXRpYyB0aW1lX3QgdGltZV90X21heDsKfCBzdGF0aWMgdGltZV90IHRpbWVfdF9taW47Cnwg CnwgLyogVmFsdWVzIHdlJ2xsIHVzZSB0byBzZXQgdGhlIFRaIGVudmlyb25tZW50IHZhcmlh YmxlLiAgKi8KfCBzdGF0aWMgY2hhciAqdHpfc3RyaW5nc1tdID0gewp8ICAgKGNoYXIgKikg MCwgIlRaPUdNVDAiLCAiVFo9SlNULTkiLAp8ICAgIlRaPUVTVCszRURUKzIsTTEwLjEuMC8w MDowMDowMCxNMi4zLjAvMDA6MDA6MDAiCnwgfTsKfCAjZGVmaW5lIE5fU1RSSU5HUyAoc2l6 ZW9mICh0el9zdHJpbmdzKSAvIHNpemVvZiAodHpfc3RyaW5nc1swXSkpCnwgCnwgLyogUmV0 dXJuIDAgaWYgbWt0aW1lIGZhaWxzIHRvIGNvbnZlcnQgYSBkYXRlIGluIHRoZSBzcHJpbmct Zm9yd2FyZCBnYXAuCnwgICAgQmFzZWQgb24gYSBwcm9ibGVtIHJlcG9ydCBmcm9tIEFuZHJl YXMgSmFlZ2VyLiAgKi8KfCBzdGF0aWMgaW50Cnwgc3ByaW5nX2ZvcndhcmRfZ2FwICgpCnwg ewp8ICAgLyogZ2xpYmMgKHVwIHRvIGFib3V0IDE5OTgtMTAtMDcpIGZhaWxlZCB0aGlzIHRl c3QuICovCnwgICBzdHJ1Y3QgdG0gdG07CnwgCnwgICAvKiBVc2UgdGhlIHBvcnRhYmxlIFBP U0lYLjEgc3BlY2lmaWNhdGlvbiAiVFo9UFNUOFBEVCxNNC4xLjAsTTEwLjUuMCIKfCAgICAg IGluc3RlYWQgb2YgIlRaPUFtZXJpY2EvVmFuY291dmVyIiBpbiBvcmRlciB0byBkZXRlY3Qg dGhlIGJ1ZyBldmVuCnwgICAgICBvbiBzeXN0ZW1zIHRoYXQgZG9uJ3Qgc3VwcG9ydCB0aGUg T2xzb24gZXh0ZW5zaW9uLCBvciBkb24ndCBoYXZlIHRoZQp8ICAgICAgZnVsbCB6b25laW5m byB0YWJsZXMgaW5zdGFsbGVkLiAgKi8KfCAgIGlmIChwdXRlbnYgKCJUWj1QU1Q4UERULE00 LjEuMCxNMTAuNS4wIikgIT0gMCkKfCAgICAgcmV0dXJuIC0xOwp8IAp8ICAgdG0udG1feWVh ciA9IDk4Owp8ICAgdG0udG1fbW9uID0gMzsKfCAgIHRtLnRtX21kYXkgPSA1Owp8ICAgdG0u dG1faG91ciA9IDI7CnwgICB0bS50bV9taW4gPSAwOwp8ICAgdG0udG1fc2VjID0gMDsKfCAg IHRtLnRtX2lzZHN0ID0gLTE7CnwgICByZXR1cm4gbWt0aW1lICgmdG0pICE9ICh0aW1lX3Qp IC0xOwp8IH0KfCAKfCBzdGF0aWMgaW50CnwgbWt0aW1lX3Rlc3QxICh0aW1lX3Qgbm93KQp8 IHsKfCAgIHN0cnVjdCB0bSAqbHQ7CnwgICByZXR1cm4gISAobHQgPSBsb2NhbHRpbWUgKCZu b3cpKSB8fCBta3RpbWUgKGx0KSA9PSBub3c7CnwgfQp8IAp8IHN0YXRpYyBpbnQKfCBta3Rp bWVfdGVzdCAodGltZV90IG5vdykKfCB7CnwgICByZXR1cm4gKG1rdGltZV90ZXN0MSAobm93 KQp8ICAgICAgICAgICAmJiBta3RpbWVfdGVzdDEgKCh0aW1lX3QpICh0aW1lX3RfbWF4IC0g bm93KSkKfCAgICAgICAgICAgJiYgbWt0aW1lX3Rlc3QxICgodGltZV90KSAodGltZV90X21p biArIG5vdykpKTsKfCB9CnwgCnwgc3RhdGljIGludAp8IGlyaXhfNl80X2J1ZyAoKQp8IHsK fCAgIC8qIEJhc2VkIG9uIGNvZGUgZnJvbSBBcmllbCBGYWlnb24uICAqLwp8ICAgc3RydWN0 IHRtIHRtOwp8ICAgdG0udG1feWVhciA9IDk2Owp8ICAgdG0udG1fbW9uID0gMzsKfCAgIHRt LnRtX21kYXkgPSAwOwp8ICAgdG0udG1faG91ciA9IDA7CnwgICB0bS50bV9taW4gPSAwOwp8 ICAgdG0udG1fc2VjID0gMDsKfCAgIHRtLnRtX2lzZHN0ID0gLTE7CnwgICBta3RpbWUgKCZ0 bSk7CnwgICByZXR1cm4gdG0udG1fbW9uID09IDIgJiYgdG0udG1fbWRheSA9PSAzMTsKfCB9 CnwgCnwgc3RhdGljIGludAp8IGJpZ3RpbWVfdGVzdCAoaW50IGopCnwgewp8ICAgc3RydWN0 IHRtIHRtOwp8ICAgdGltZV90IG5vdzsKfCAgIHRtLnRtX3llYXIgPSB0bS50bV9tb24gPSB0 bS50bV9tZGF5ID0gdG0udG1faG91ciA9IHRtLnRtX21pbiA9IHRtLnRtX3NlYyA9IGo7Cnwg ICBub3cgPSBta3RpbWUgKCZ0bSk7CnwgICBpZiAobm93ICE9ICh0aW1lX3QpIC0xKQp8ICAg ICB7CnwgICAgICAgc3RydWN0IHRtICpsdCA9IGxvY2FsdGltZSAoJm5vdyk7CnwgICAgICAg aWYgKCEgKGx0CnwgICAgICAgICAgICAgICYmIGx0LT50bV95ZWFyID09IHRtLnRtX3llYXIK fCAgICAgICAgICAgICAgJiYgbHQtPnRtX21vbiA9PSB0bS50bV9tb24KfCAgICAgICAgICAg ICAgJiYgbHQtPnRtX21kYXkgPT0gdG0udG1fbWRheQp8ICAgICAgICAgICAgICAmJiBsdC0+ dG1faG91ciA9PSB0bS50bV9ob3VyCnwgICAgICAgICAgICAgICYmIGx0LT50bV9taW4gPT0g dG0udG1fbWluCnwgICAgICAgICAgICAgICYmIGx0LT50bV9zZWMgPT0gdG0udG1fc2VjCnwg ICAgICAgICAgICAgICYmIGx0LT50bV95ZGF5ID09IHRtLnRtX3lkYXkKfCAgICAgICAgICAg ICAgJiYgbHQtPnRtX3dkYXkgPT0gdG0udG1fd2RheQp8ICAgICAgICAgICAgICAmJiAoKGx0 LT50bV9pc2RzdCA8IDAgPyAtMSA6IDAgPCBsdC0+dG1faXNkc3QpCnwgICAgICAgICAgICAg ICAgICAgPT0gKHRtLnRtX2lzZHN0IDwgMCA/IC0xIDogMCA8IHRtLnRtX2lzZHN0KSkpKQp8 ICAgICAgICAgcmV0dXJuIDA7CnwgICAgIH0KfCAgIHJldHVybiAxOwp8IH0KfCAKfCBzdGF0 aWMgaW50CnwgeWVhcl8yMDUwX3Rlc3QgKCkKfCB7CnwgICAvKiBUaGUgY29ycmVjdCBhbnN3 ZXIgZm9yIDIwNTAtMDItMDEgMDA6MDA6MDAgaW4gUGFjaWZpYyB0aW1lLAp8ICAgICAgaWdu b3JpbmcgbGVhcCBzZWNvbmRzLiAgKi8KfCAgIHVuc2lnbmVkIGxvbmcgaW50IGFuc3dlciA9 IDI1MjczMTUyMDBVTDsKfCAKfCAgIHN0cnVjdCB0bSB0bTsKfCAgIHRpbWVfdCB0Owp8ICAg dG0udG1feWVhciA9IDIwNTAgLSAxOTAwOwp8ICAgdG0udG1fbW9uID0gMiAtIDE7CnwgICB0 bS50bV9tZGF5ID0gMTsKfCAgIHRtLnRtX2hvdXIgPSB0bS50bV9taW4gPSB0bS50bV9zZWMg PSAwOwp8ICAgdG0udG1faXNkc3QgPSAtMTsKfCAKfCAgIC8qIFVzZSB0aGUgcG9ydGFibGUg UE9TSVguMSBzcGVjaWZpY2F0aW9uICJUWj1QU1Q4UERULE00LjEuMCxNMTAuNS4wIgp8ICAg ICAgaW5zdGVhZCBvZiAiVFo9QW1lcmljYS9WYW5jb3V2ZXIiIGluIG9yZGVyIHRvIGRldGVj dCB0aGUgYnVnIGV2ZW4KfCAgICAgIG9uIHN5c3RlbXMgdGhhdCBkb24ndCBzdXBwb3J0IHRo ZSBPbHNvbiBleHRlbnNpb24sIG9yIGRvbid0IGhhdmUgdGhlCnwgICAgICBmdWxsIHpvbmVp bmZvIHRhYmxlcyBpbnN0YWxsZWQuICAqLwp8ICAgaWYgKHB1dGVudiAoIlRaPVBTVDhQRFQs TTQuMS4wLE0xMC41LjAiKSAhPSAwKQp8ICAgICByZXR1cm4gLTE7CnwgCnwgICB0ID0gbWt0 aW1lICgmdG0pOwp8IAp8ICAgLyogQ2hlY2sgdGhhdCB0aGUgcmVzdWx0IGlzIGVpdGhlciBh IGZhaWx1cmUsIG9yIGNsb3NlIGVub3VnaAp8ICAgICAgdG8gdGhlIGNvcnJlY3QgYW5zd2Vy IHRoYXQgd2UgY2FuIGFzc3VtZSB0aGUgZGlzY3JlcGFuY3kgaXMKfCAgICAgIGR1ZSB0byBs ZWFwIHNlY29uZHMuICAqLwp8ICAgcmV0dXJuICh0ID09ICh0aW1lX3QpIC0xCnwgICAgICAg ICAgIHx8ICgwIDwgdCAmJiBhbnN3ZXIgLSAxMjAgPD0gdCAmJiB0IDw9IGFuc3dlciArIDEy MCkpOwp8IH0KfCAKfCBzdGF0aWMgaW50CnwgaW5kaWFuYV90ZXN0ICgpCnwgewp8ICAgaWYg KHB1dGVudiAoIlRaPUFtZXJpY2EvSW5kaWFuYS9JbmRpYW5hcG9saXMiKSAhPSAwKQp8ICAg ICByZXR1cm4gLTE7CnwgICBzdHJ1Y3QgdG0gdG07CnwgICB0bS50bV95ZWFyID0gMTk4NiAt IDE5MDA7IHRtLnRtX21vbiA9IDQgLSAxOyB0bS50bV9tZGF5ID0gMjg7CnwgICB0bS50bV9o b3VyID0gMTY7IHRtLnRtX21pbiA9IDI0OyB0bS50bV9zZWMgPSA1MDsgdG0udG1faXNkc3Qg PSAwOwp8ICAgdGltZV90IHN0ZCA9IG1rdGltZSAoJnRtKTsKfCAgIGlmICghIChzdGQgPT0g NTE1MTA3NDkwIHx8IHN0ZCA9PSA1MTUxMDc1MDMpKQp8ICAgICByZXR1cm4gMTsKfCAKfCAg IC8qIFRoaXMgcGxhdGZvcm0gc3VwcG9ydHMgVFpEQiwgZWl0aGVyIHdpdGhvdXQgb3Igd2l0 aCBsZWFwIHNlY29uZHMuCnwgICAgICBSZXR1cm4gdHJ1ZSBpZiBHTlUgQnVnIzQ4MDg1IGlz IGFic2VudC4gICovCnwgICB0bS50bV9pc2RzdCA9IDE7CnwgICB0aW1lX3QgZHN0ID0gbWt0 aW1lICgmdG0pOwp8ICAgcmV0dXJuIHN0ZCAtIGRzdCA9PSA2MCAqIDYwOwp8IH0KfCAKfCBp bnQKfCBtYWluICgpCnwgewp8ICAgaW50IHJlc3VsdCA9IDA7CnwgICB0aW1lX3QgdCwgZGVs dGE7CnwgICBpbnQgaSwgajsKfCAgIGludCB0aW1lX3Rfc2lnbmVkX21hZ25pdHVkZSA9ICh0 aW1lX3QpIH4gKHRpbWVfdCkgMCA8ICh0aW1lX3QpIC0xOwp8IAp8ICNpZiBIQVZFX0RFQ0xf QUxBUk0KfCAgIC8qIFRoaXMgdGVzdCBtYWtlcyBzb21lIGJ1Z2d5IG1rdGltZSBpbXBsZW1l bnRhdGlvbnMgbG9vcC4KfCAgICAgIEdpdmUgdXAgYWZ0ZXIgNjAgc2Vjb25kczsgYSBta3Rp bWUgc2xvd2VyIHRoYW4gdGhhdAp8ICAgICAgaXNuJ3Qgd29ydGggdXNpbmcgYW55d2F5LiAg Ki8KfCAgIHNpZ25hbCAoU0lHQUxSTSwgU0lHX0RGTCk7CnwgICBhbGFybSAoNjApOwp8ICNl bmRpZgp8IAp8ICAgdGltZV90X21heCA9ICghIFRJTUVfVF9JU19TSUdORUQKfCAgICAgICAg ICAgICAgICAgPyAodGltZV90KSAtMQp8ICAgICAgICAgICAgICAgICA6ICgoKCh0aW1lX3Qp IDEgPDwgKHNpemVvZiAodGltZV90KSAqIENIQVJfQklUIC0gMikpIC0gMSkKfCAgICAgICAg ICAgICAgICAgICAgKiAyICsgMSkpOwp8ICAgdGltZV90X21pbiA9ICghIFRJTUVfVF9JU19T SUdORUQKfCAgICAgICAgICAgICAgICAgPyAodGltZV90KSAwCnwgICAgICAgICAgICAgICAg IDogdGltZV90X3NpZ25lZF9tYWduaXR1ZGUKfCAgICAgICAgICAgICAgICAgPyB+ICh0aW1l X3QpIDAKfCAgICAgICAgICAgICAgICAgOiB+IHRpbWVfdF9tYXgpOwp8IAp8ICAgZGVsdGEg PSB0aW1lX3RfbWF4IC8gOTk3OyAvKiBhIHN1aXRhYmxlIHByaW1lIG51bWJlciAqLwp8ICAg Zm9yIChpID0gMDsgaSA8IE5fU1RSSU5HUzsgaSsrKQp8ICAgICB7CnwgICAgICAgaWYgKHR6 X3N0cmluZ3NbaV0pCnwgICAgICAgICBwdXRlbnYgKHR6X3N0cmluZ3NbaV0pOwp8IAp8ICAg ICAgIGZvciAodCA9IDA7IHQgPD0gdGltZV90X21heCAtIGRlbHRhICYmIChyZXN1bHQgJiAx KSA9PSAwOyB0ICs9IGRlbHRhKQp8ICAgICAgICAgaWYgKCEgbWt0aW1lX3Rlc3QgKHQpKQp8 ICAgICAgICAgICByZXN1bHQgfD0gMTsKfCAgICAgICBpZiAoKHJlc3VsdCAmIDIpID09IDAK fCAgICAgICAgICAgJiYgISAobWt0aW1lX3Rlc3QgKCh0aW1lX3QpIDEpCnwgICAgICAgICAg ICAgICAgICYmIG1rdGltZV90ZXN0ICgodGltZV90KSAoNjAgKiA2MCkpCnwgICAgICAgICAg ICAgICAgICYmIG1rdGltZV90ZXN0ICgodGltZV90KSAoNjAgKiA2MCAqIDI0KSkpKQp8ICAg ICAgICAgcmVzdWx0IHw9IDI7CnwgCnwgICAgICAgZm9yIChqID0gMTsgKHJlc3VsdCAmIDQp ID09IDA7IGogPDw9IDEpCnwgICAgICAgICB7CnwgICAgICAgICAgIGlmICghIGJpZ3RpbWVf dGVzdCAoaikpCnwgICAgICAgICAgICAgcmVzdWx0IHw9IDQ7CnwgICAgICAgICAgIGlmIChJ TlRfTUFYIC8gMiA8IGopCnwgICAgICAgICAgICAgYnJlYWs7CnwgICAgICAgICB9CnwgICAg ICAgaWYgKChyZXN1bHQgJiA4KSA9PSAwICYmICEgYmlndGltZV90ZXN0IChJTlRfTUFYKSkK fCAgICAgICAgIHJlc3VsdCB8PSA4Owp8ICAgICB9CnwgICBpZiAoISBpcml4XzZfNF9idWcg KCkpCnwgICAgIHJlc3VsdCB8PSAxNjsKfCAgIGlmICghIHNwcmluZ19mb3J3YXJkX2dhcCAo KSkKfCAgICAgcmVzdWx0IHw9IDMyOwp8ICAgaWYgKCEgeWVhcl8yMDUwX3Rlc3QgKCkgfHwg ISBpbmRpYW5hX3Rlc3QgKCkpCnwgICAgIHJlc3VsdCB8PSA2NDsKfCAgIHJldHVybiByZXN1 bHQ7CnwgfQpjb25maWd1cmU6MzEyOTA6IHJlc3VsdDogbm8KY29uZmlndXJlOjMxMzQ3OiBj aGVja2luZyB3aGV0aGVyIHN0cnVjdCB0bSBpcyBpbiBzeXMvdGltZS5oIG9yIHRpbWUuaApj b25maWd1cmU6MzEzNjg6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZp Z3VyZTozMTM2ODogJD8gPSAwCmNvbmZpZ3VyZTozMTM3NjogcmVzdWx0OiB0aW1lLmgKY29u ZmlndXJlOjMxMzg0OiBjaGVja2luZyBmb3Igc3RydWN0IHRtLnRtX3pvbmUKY29uZmlndXJl OjMxMzg0OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzEz ODQ6ICQ/ID0gMApjb25maWd1cmU6MzEzODQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMTQ1 MTogY2hlY2tpbmcgZm9yIHN0cnVjdCB0bS50bV9nbXRvZmYKY29uZmlndXJlOjMxNDUxOiBn Y2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzE0NTE6ICQ/ID0g MApjb25maWd1cmU6MzE0NTE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMTQ3MDogY2hlY2tp bmcgd2hldGhlciA8c3lzL3NlbGVjdC5oPiBpcyBzZWxmLWNvbnRhaW5lZApjb25maWd1cmU6 MzE0ODg6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozMTQ4 ODogJD8gPSAwCmNvbmZpZ3VyZTozMTUwODogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3Qu YyA+JjUKY29uZmlndXJlOjMxNTA4OiAkPyA9IDAKY29uZmlndXJlOjMxNTM5OiBnY2MgLW8g Y29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCmNvbmZpZ3VyZTozMTUz OTogJD8gPSAwCmNvbmZpZ3VyZTozMTU1MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjMxNzE1 OiBjaGVja2luZyBmb3IgaW5saW5lCmNvbmZpZ3VyZTozMTczMjogZ2NjIC1jIC1nMyAtTzIg ICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjMxNzMyOiAkPyA9IDAKY29uZmlndXJlOjMx NzQxOiByZXN1bHQ6IGlubGluZQpjb25maWd1cmU6MzE3NjI6IGNoZWNraW5nIGZvciBzaWdz ZXRfdApjb25maWd1cmU6MzE3NjI6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1 CmNvbmZpZ3VyZTozMTc2MjogJD8gPSAwCmNvbmZpZ3VyZTozMTc2MjogZ2NjIC1jIC1nMyAt TzIgICAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzogSW4gZnVuY3Rpb24gJ21haW4nOgpj b25mdGVzdC5jOjM0MzoyMzogZXJyb3I6IGV4cGVjdGVkIGV4cHJlc3Npb24gYmVmb3JlICcp JyB0b2tlbgogIDM0MyB8IGlmIChzaXplb2YgKChzaWdzZXRfdCkpKQogICAgICB8ICAgICAg ICAgICAgICAgICAgICAgICBeCmNvbmZpZ3VyZTozMTc2MjogJD8gPSAxCmNvbmZpZ3VyZTog ZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tB R0VfTkFNRSAiR05VIEVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJlbWFjcyIK fCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMzAuMC41MCIKfCAjZGVmaW5lIFBBQ0tBR0Vf U1RSSU5HICJHTlUgRW1hY3MgMzAuMC41MCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JU ICJidWctZ251LWVtYWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0cHM6 Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmluZSBIQVZFX1BEVU1QRVIg MQp8ICNkZWZpbmUgSEFWRV9TVERJT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8 ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8 ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAx CnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfSCAxCnwg I2RlZmluZSBIQVZFX0xJTlVYX0ZTX0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19TWVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9QVFlfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05B TUVfSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUF9IIDEK fCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0xTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUg SEFWRV9TQU5JVElaRVJfQVNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklU SVpFUl9DT01NT05fSU5URVJGQUNFX0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NL RVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfUFRI UkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9ESVJF TlRfSCAxCnwgI2RlZmluZSBIQVZFX0VYRUNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJ T19FWFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19WRlNfSCAxCnwgI2RlZmluZSBIQVZFX0dF VE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0NERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfSUVFRTc1NF9IIDEKfCAjZGVmaW5lIEhBVkVf TElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFW RV9TVERCT09MX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkFORE9NX0ggMQp8ICNkZWZpbmUg U1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJX SU5fQ19TT1VSQ0UgMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0hQVVhf QUxUX1hPUEVOX1NPQ0tFVF9BUEkgMQp8ICNkZWZpbmUgX05FVEJTRF9TT1VSQ0UgMQp8ICNk ZWZpbmUgX09QRU5CU0RfU09VUkNFIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFO VElDUyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfQVRUUklCU19FWFRfXyAx CnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfQkZQX0VYVF9fIDEKfCAjZGVmaW5l IF9fU1REQ19XQU5UX0lFQ182MDU1OV9ERlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dB TlRfSUVDXzYwNTU5X0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9G VU5DU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfVFlQRVNfRVhU X18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfTElCX0VYVDJfXyAxCnwgI2RlZmluZSBfX1NU RENfV0FOVF9NQVRIX1NQRUNfRlVOQ1NfXyAxCnwgI2RlZmluZSBfVEFOREVNX1NPVVJDRSAx CnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBHQ0NfTElOVCAxCnwgI2Rl ZmluZSBTWVNURU1fVFlQRSAiZ251L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRD QVJEX0ggMQp8ICNkZWZpbmUgSEFWRV9BTFNBIDEKfCAjZGVmaW5lIEhBVkVfU09VTkQgMQp8 ICNkZWZpbmUgSEFWRV9QRVJTT05BTElUWV9BRERSX05PX1JBTkRPTUlaRSAxCnwgI2RlZmlu ZSBIQVZFX0xJTlVYX1NZU0lORk8gMQp8ICNkZWZpbmUgTElOVVhfU1lTSU5GT19VTklUIDEK fCAjZGVmaW5lIEhBVkVfVEVSTV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwg I2RlZmluZSBIQVZFX05FVF9JRl9IIDEKfCAjZGVmaW5lIEhBVkVfSUZBRERSU19IIDEKfCAj ZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9GTEFHUyAxCnwgI2RlZmluZSBIQVZFX1NU UlVDVF9JRlJFUV9JRlJfSFdBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lG Ul9ORVRNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9CUk9BREFERFIg MQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0FERFIgMQp8ICNkZWZpbmUgSEFW RV9TQlJLIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9G T1JLIDEKfCAjZGVmaW5lIEhBVkVfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0QgMQp8 ICNkZWZpbmUgSEFWRV9DQU5PTklDQUxJWkVfRklMRV9OQU1FIDEKfCAjZGVmaW5lIEhBVkVf UkVBTFBBVEggMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1P REFUIDEKfCAjZGVmaW5lIEhBVkVfTENITU9EIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8 ICNkZWZpbmUgSEFWRV9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgSEFWRV9GU1RBVEFUIDEKfCAj ZGVmaW5lIEhBVkVfRlNZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNk ZWZpbmUgSEFWRV9QU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEK fCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFWRV9JU0JMQU5LIDEKfCAj ZGVmaW5lIEhBVkVfSVNXQ1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9TVFJUT0lNQVggMQp8ICNk ZWZpbmUgSEFWRV9TWU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxUSU1FX1IgMQp8ICNk ZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIFNZU1RFTV9NQUxMT0MgMQp8 ICNkZWZpbmUgSEFWRV9NTUFQIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRCAxCnwgI2RlZmlu ZSBUSFJFQURTX0VOQUJMRUQgMQp8ICNkZWZpbmUgSEFWRV9YS0IgMQp8ICNkZWZpbmUgSEFW RV9YS0JSRUZSRVNIS0VZQk9BUkRNQVBQSU5HIDEKfCAjZGVmaW5lIEhBVkVfWEtCRlJFRU5B TUVTIDEKfCAjZGVmaW5lIEhBVkVfWFJNU0VUREFUQUJBU0UgMQp8ICNkZWZpbmUgSEFWRV9Y U0NSRUVOUkVTT1VSQ0VTVFJJTkcgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOTlVNQkVST0ZT Q1JFRU4gMQp8ICNkZWZpbmUgSEFWRV9YRElTUExBWUNFTExTIDEKfCAjZGVmaW5lIEhBVkVf WERFU1RST1lTVUJXSU5ET1dTIDEKfCAjZGVmaW5lIEhBVkVfWDExUjYgMQp8ICNkZWZpbmUg SEFWRV9YX0kxOE4gMQp8ICNkZWZpbmUgSEFWRV9YSUNDQUxMQkFDS19DQUxMQkFDSyAxCnwg I2RlZmluZSBIQVZFX1gxMVI2X1hJTSAxCnwgI2RlZmluZSBIQVZFX1JTVkcgMQp8ICNkZWZp bmUgSEFWRV9XRUJQIDEKfCAjZGVmaW5lIEhBVkVfU1FMSVRFMyAxCnwgI2RlZmluZSBIQVZF X1NRTElURTNfTE9BRF9FWFRFTlNJT04gMQp8ICNkZWZpbmUgSEFWRV9HRVRBRERSSU5GT19B IDEKfCAjZGVmaW5lIEhBVkVfR1RLMyAxCnwgI2RlZmluZSBHREtfRElTQUJMRV9ERVBSRUNB VElPTl9XQVJOSU5HUyAxCnwgI2RlZmluZSBHTElCX0RJU0FCTEVfREVQUkVDQVRJT05fV0FS TklOR1MgMQp8ICNkZWZpbmUgVVNFX0dUSyAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19UUklN IDEKfCAjZGVmaW5lIEhBVkVfREJVUyAxCnwgI2RlZmluZSBIQVZFX0RCVVNfV0FUQ0hfR0VU X1VOSVhfRkQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1RZUEVfSVNfVkFMSUQgMQp8ICNkZWZp bmUgSEFWRV9EQlVTX1ZBTElEQVRFX0JVU19OQU1FIDEKfCAjZGVmaW5lIEhBVkVfREJVU19W QUxJREFURV9QQVRIIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9JTlRFUkZBQ0Ug MQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX01FTUJFUiAxCnwgI2RlZmluZSBIQVZF X0dTRVRUSU5HUyAxCnwgI2RlZmluZSBIQVZFX0xJQlNFTElOVVggMQp8ICNkZWZpbmUgSEFW RV9HTlVUTFMgMQp8ICNkZWZpbmUgSEFWRV9MSUJTWVNURU1EIDEKfCAjZGVmaW5lIEhBVkVf SlNPTiAxCnwgI2RlZmluZSBIQVZFX0lOT1RJRlkgMQp8ICNkZWZpbmUgVVNFX0ZJTEVfTk9U SUZZIDEKfCAjZGVmaW5lIFVTRV9UT09MS0lUX1NDUk9MTF9CQVJTIDEKfCAjZGVmaW5lIEhB VkVfWElNIDEKfCAjZGVmaW5lIFVTRV9YSU0gMQp8ICNkZWZpbmUgSEFWRV9YUkVOREVSIDEK fCAjZGVmaW5lIFVTRV9DQUlST19YQ0IgMQp8ICNkZWZpbmUgVVNFX0NBSVJPIDEKfCAjZGVm aW5lIEhBVkVfRlJFRVRZUEUgMQp8ICNkZWZpbmUgSEFWRV9GVF9GQUNFX0dFVENIQVJWQVJJ QU5USU5ERVggMQp8ICNkZWZpbmUgSEFWRV9MSUJPVEYgMQp8ICNkZWZpbmUgSEFWRV9PVEZf R0VUX1ZBUklBVElPTl9HTFlQSFMgMQp8ICNkZWZpbmUgSEFWRV9NMTdOX0ZMVCAxCnwgI2Rl ZmluZSBIQVZFX0hBUkZCVVpaIDEKfCAjZGVmaW5lIFVTRV9YQ0IgMQp8ICNkZWZpbmUgSEFW RV9YUE0gMQp8ICNkZWZpbmUgSEFWRV9KUEVHIDEKfCAjZGVmaW5lIEhBVkVfTENNUzIgMQp8 ICNkZWZpbmUgSEFWRV9aTElCIDEKfCAjZGVmaW5lIERZTkFNSUNfTElCX1NVRkZJWCAiLnNv Igp8ICNkZWZpbmUgRFlOQU1JQ19MSUJfU0VDT05EQVJZX1NVRkZJWCAiIgp8ICNkZWZpbmUg SEFWRV9ETEFERFIgMQp8ICNkZWZpbmUgSEFWRV9NT0RVTEVTIDEKfCAjZGVmaW5lIE1PRFVM RVNfU1VGRklYICIuc28iCnwgI2RlZmluZSBOQVRJVkVfRUxJU1BfU1VGRklYICIuZWxuIgp8 ICNkZWZpbmUgSEFWRV9QTkcgMQp8ICNkZWZpbmUgSEFWRV9USUZGIDEKfCAjZGVmaW5lIEhB VkVfR0lGIDEKfCAjZGVmaW5lIEhBVkVfR1BNIDEKfCAjZGVmaW5lIEhBVkVfWF9TTSAxCnwg I2RlZmluZSBIQVZFX1hSQU5EUiAxCnwgI2RlZmluZSBIQVZFX1hJTkVSQU1BIDEKfCAjZGVm aW5lIEhBVkVfWEZJWEVTIDEKfCAjZGVmaW5lIEhBVkVfWElOUFVUMiAxCnwgI2RlZmluZSBI QVZFX1hJU0NST0xMQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YSVRPVUNIQ0xB U1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YSUJBUlJJRVJSRUxFQVNFUE9JTlRFUklO Rk9fREVWSUNFSUQgMQp8ICNkZWZpbmUgSEFWRV9YSUdFU1RVUkVDTEFTU0lORk9fVFlQRSAx CnwgI2RlZmluZSBIQVZFX1hTWU5DIDEKfCAjZGVmaW5lIEhBVkVfWFNZTkNUUklHR0VSRkVO Q0UgMQp8ICNkZWZpbmUgSEFWRV9YREJFIDEKfCAjZGVmaW5lIEhBVkVfWENCX1NIQVBFIDEK fCAjZGVmaW5lIEhBVkVfWFNIQVBFIDEKfCAjZGVmaW5lIEhBVkVfWENPTVBPU0lURSAxCnwg I2RlZmluZSBIQVZFX0xJQlhNTDIgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TRUNDT01QX0gg MQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfU0VUX01PREVfRklMVEVSIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9TRUNDT01QX0ZJTFRFUl9GTEFHX1RTWU5DIDEKfCAjZGVmaW5lIEhB VkVfTElOVVhfRklMVEVSX0ggMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfU0VUX01P REVfRklMVEVSIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX0ZJTFRFUl9GTEFHX1RT WU5DIDEKfCAjZGVmaW5lIFNJWkVPRl9MT05HIDgKfCAjZGVmaW5lIEhBVkVfQUNDRVBUNCAx CnwgI2RlZmluZSBIQVZFX0ZDSERJUiAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEK fCAjZGVmaW5lIEhBVkVfR0VUUlVTQUdFIDEKfCAjZGVmaW5lIEhBVkVfR0VUX0NVUlJFTlRf RElSX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9MUkFORDQ4IDEKfCAjZGVmaW5lIEhBVkVfUkFO RE9NIDEKfCAjZGVmaW5lIEhBVkVfUklOVCAxCnwgI2RlZmluZSBIQVZFX1RSVU5DIDEKfCAj ZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNk ZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9ORVdMT0NBTEUgMQp8ICNk ZWZpbmUgSEFWRV9HRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8ICNk ZWZpbmUgSEFWRV9TSFVURE9XTiAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAx CnwgI2RlZmluZSBIQVZFX1NUUlNJR05BTCAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAx CnwgI2RlZmluZSBIQVZFX1NFTkRUTyAxCnwgI2RlZmluZSBIQVZFX1JFQ1ZGUk9NIDEKfCAj ZGVmaW5lIEhBVkVfR0VUU09DS05BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRJRkFERFJTIDEK fCAjZGVmaW5lIEhBVkVfRlJFRUlGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9HQUlfU1RSRVJS T1IgMQp8ICNkZWZpbmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFdFTlQgMQp8 ICNkZWZpbmUgSEFWRV9FTkRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0dFVEdSRU5UIDEKfCAj ZGVmaW5lIEhBVkVfRU5ER1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9SRU5BTUVBVDIgMQp8ICNk ZWZpbmUgSEFWRV9DRk1BS0VSQVcgMQp8ICNkZWZpbmUgSEFWRV9DRlNFVFNQRUVEIDEKfCAj ZGVmaW5lIEhBVkVfX19FWEVDVVRBQkxFX1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVfTE9HMiAx CnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0VUTkFNRV9OUCAxCnwgI2RlZmluZSBIQVZFX0FM SUdORURfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0FMSUdORURfQUxMT0MgMQp8ICNk ZWZpbmUgSEFWRV9QT1NJWF9NQURWSVNFIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX0ZS QU1FX0FERFJFU1MgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fVU5XSU5EX0lOSVQgMQp8 ICNkZWZpbmUgSEFWRV9GU0VFS08gMQp8ICNkZWZpbmUgSEFWRV9HUkFOVFBUIDEKfCAjZGVm aW5lIEhBVkVfR0VUUFQgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9PUEVOUFQgMQp8ICNkZWZp bmUgVEVSTUlORk8gMQp8ICNkZWZpbmUgVEVSTUlORk9fREVGSU5FU19CQyAxCnwgI2RlZmlu ZSBIQVZFX1RJTUVSRkQgMQp8ICNkZWZpbmUgSEFWRV9WQUxHUklORF9WQUxHUklORF9IIDEK fCAjZGVmaW5lIEhBVkVfU1RSVUNUX1VOSVBBSVJfVU5JQ09ERSAxCnwgI2RlZmluZSBIQVZF X1dPUktJTkdfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX0ZPUksgMQp8ICNkZWZp bmUgSEFWRV9TTlBSSU5URiAxCnwgI2RlZmluZSBIQVZFX1NQQVdOX0ggMQp8ICNkZWZpbmUg SEFWRV9QT1NJWF9TUEFXTiAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOX0ZJTEVfQUNU SU9OU19BRERDSERJUl9OUCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOQVRUUl9TRVRG TEFHUyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUE9TSVhfU1BBV05fU0VUU0lEIDEKfCAjZGVm aW5lIEhBVkVfR0xJQiAxCnwgI2RlZmluZSBIQVZFX0xBTkdJTkZPX0NPREVTRVQgMQp8ICNk ZWZpbmUgSEFWRV9MQU5HSU5GT19fTkxfUEFQRVJfV0lEVEggMQp8ICNkZWZpbmUgSEFWRV9N QlNUQVRFX1QgMQp8ICNkZWZpbmUgQU1QRVJTQU5EX0ZVTExfTkFNRSAxCnwgI2RlZmluZSBI QVZFX1BUWVMgMQp8ICNkZWZpbmUgSEFWRV9TT0NLRVRTIDEKfCAjZGVmaW5lIE5VTExfREVW SUNFICIvZGV2L251bGwiCnwgI2RlZmluZSBTRVBDSEFSICc6Jwp8ICNkZWZpbmUgc3VicHJv Y2Vzc2VzIDEKfCAjZGVmaW5lIFVTRVJfRlVMTF9OQU1FIHB3LT5wd19nZWNvcwp8ICNkZWZp bmUgRElSRUNUT1JZX1NFUCAnLycKfCAjZGVmaW5lIElTX0RFVklDRV9TRVAoX2NfKSAwCnwg I2RlZmluZSBJU19ESVJFQ1RPUllfU0VQKF9jXykgKChfY18pID09IERJUkVDVE9SWV9TRVAp CnwgI2RlZmluZSBJU19BTllfU0VQKF9jXykgKElTX0RJUkVDVE9SWV9TRVAgKF9jXykpCnwg I2RlZmluZSBIQVZFX1BST0NGUyAxCnwgI2RlZmluZSBERUZBVUxUX1NPVU5EX0RFVklDRSAi L2Rldi9kc3AiCnwgI2RlZmluZSBJTlRFUlJVUFRfSU5QVVQgMQp8ICNkZWZpbmUgTkFSUk9X UFJPVE8gMQp8ICNkZWZpbmUgVU5JWDk4X1BUWVMgMQp8ICNkZWZpbmUgUFRZX0lURVJBVElP TiBpbnQgaTsgZm9yIChpID0gMDsgaSA8IDE7IGkrKykKfCAjZGVmaW5lIFBUWV9UVFlfTkFN RV9TUFJJTlRGIHsgY2hhciAqcHR5bmFtZSA9IDA7IHNpZ3NldF90IGJsb2NrZWQ7IHNpZ2Vt cHR5c2V0ICgmYmxvY2tlZCk7IHNpZ2FkZHNldCAoJmJsb2NrZWQsIFNJR0NITEQpOyBwdGhy ZWFkX3NpZ21hc2sgKFNJR19CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoZ3JhbnRwdCAoZmQp ICE9IC0xICYmIHVubG9ja3B0IChmZCkgIT0gLTEpIHB0eW5hbWUgPSBwdHNuYW1lKGZkKTsg cHRocmVhZF9zaWdtYXNrIChTSUdfVU5CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoIXB0eW5h bWUpIHsgZW1hY3NfY2xvc2UgKGZkKTsgcmV0dXJuIC0xOyB9IHNucHJpbnRmIChwdHlfbmFt ZSwgUFRZX05BTUVfU0laRSwgIiVzIiwgcHR5bmFtZSk7IH0KfCAjZGVmaW5lIFBUWV9PUEVO IGRvIHsgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fQ0xPRVhFQyB8IE9fTk9DVFRZ KTsgaWYgKGZkIDwgMCAmJiBlcnJubyA9PSBFSU5WQUwpIGZkID0gcG9zaXhfb3BlbnB0IChP X1JEV1IgfCBPX05PQ1RUWSk7IH0gd2hpbGUgKGZhbHNlKQp8ICNkZWZpbmUgUFRZX05BTUVf U1BSSU5URiAvKiovCnwgI2RlZmluZSBTSUdOQUxTX1ZJQV9DSEFSQUNURVJTIDEKfCAjZGVm aW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNk ZWZpbmUgSEFWRV9fU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUSk1QIDEKfCAjZGVm aW5lIEhBVkVfU1RBQ0tfT1ZFUkZMT1dfSEFORExJTkcgMQp8ICNkZWZpbmUgVVNHIC8qKi8K fCAjZGVmaW5lIEdOVV9MSU5VWCAvKiovCnwgI2RlZmluZSBTSVpFT0ZfU1BFRURfVCA0Cnwg I2RlZmluZSBVU0FCTEVfRklPTlJFQUQgMQp8ICNkZWZpbmUgVVNBQkxFX1NJR0lPIDEKfCAj ZGVmaW5lIENPUFlSSUdIVCAiQ29weXJpZ2h0IChDKSAyMDIzIEZyZWUgU29mdHdhcmUgRm91 bmRhdGlvbiwgSW5jLiIKfCAjZGVmaW5lIFRFUk1fSEVBREVSICJndGt1dGlsLmgiCnwgI2Rl ZmluZSBFTUFDU19DT05GSUdVUkFUSU9OICJ4ODZfNjQtcGMtbGludXgtZ251Igp8ICNkZWZp bmUgRU1BQ1NfQ09ORklHX09QVElPTlMgIiIKfCAjZGVmaW5lIEhBVkVfWF9XSU5ET1dTIDEK fCAjZGVmaW5lIEhBVkVfWDExIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0FUVFJJQlVURV9B TElHTkVEIDEKfCAjZGVmaW5lIEhBVkVfVFlQRU9GIDEKfCAjZGVmaW5lIEhBVkVfU1RBVEVN RU5UX0VYUFJFU1NJT05TIDEKfCAjZGVmaW5lIE1BTExPQ18wX0lTX05PTk5VTEwgMQp8ICNk ZWZpbmUgSEFWRV9TWVNfQUNMX0ggMQp8ICNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZJTEUgMQp8 ICNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX1NFVF9GSUxF IDEKfCAjZGVmaW5lIEhBVkVfQUNMX1NFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUkVF IDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZST01fTU9ERSAxCnwgI2RlZmluZSBIQVZFX0FDTF9G Uk9NX1RFWFQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfREVMRVRFX0RFRl9GSUxFIDEKfCAjZGVm aW5lIEhBVkVfQUNMX0VYVEVOREVEX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfTElCQUNM X0ggMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRU5UUklFUyAxCnwgI2RlZmluZSBIQVZFX0FDTF9G SVJTVF9FTlRSWSAxCnwgI2RlZmluZSBVU0VfQUNMIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NB X0ggMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgTFNUQVRfRk9MTE9XU19T TEFTSEVEX1NZTUxJTksgMQp8ICNkZWZpbmUgRlVOQ19SRUFMUEFUSF9XT1JLUyAxCnwgI2Rl ZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0dFVENXRCAxCnwgI2RlZmlu ZSByZXN0cmljdCBfX3Jlc3RyaWN0X18KfCAjZGVmaW5lIEhBVkVfRU5WSVJPTl9ERUNMIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9TVFJNT0RFIDAKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0gg MQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfTE9OR19PTkxZIDEKfCAjZGVmaW5lIEhBVkVfTE9O R19MT05HX0lOVCAxCnwgI2RlZmluZSBIQVZFX1VOU0lHTkVEX0xPTkdfTE9OR19JTlQgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX01FTU1FTSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfTUVNUkNI UiAxCnwgI2RlZmluZSBIQVZFX01JTk1BWF9JTl9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBU SU1FX1RfSVNfU0lHTkVEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTEFSTSAxCnwgI2RlZmlu ZSBIQVZFX1NUUlVDVF9UTV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fWk9ORSAxCnwg I2RlZmluZSBIQVZFX1RNX0dNVE9GRiAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8IAp8 ICAgICAgICNpbmNsdWRlIDxzaWduYWwuaD4KfCAgICAgICAvKiBNaW5ndyBkZWZpbmVzIHNp Z3NldF90IG5vdCBpbiA8c2lnbmFsLmg+LCBidXQgaW4gPHN5cy90eXBlcy5oPi4gICovCnwg ICAgICAgI2luY2x1ZGUgPHN5cy90eXBlcy5oPgp8IAp8IAp8IGludAp8IG1haW4gKHZvaWQp Cnwgewp8IGlmIChzaXplb2YgKChzaWdzZXRfdCkpKQp8IAkgICAgcmV0dXJuIDA7CnwgICA7 CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZTozMTc2MjogcmVzdWx0OiB5ZXMKY29uZmln dXJlOjMxODYxOiBjaGVja2luZyBmb3Igdm9sYXRpbGUgc2lnX2F0b21pY190CmNvbmZpZ3Vy ZTozMTg2MTogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjMx ODYxOiAkPyA9IDAKY29uZmlndXJlOjMxODYxOiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVz dC5jID4mNQpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiAnbWFpbic6CmNvbmZ0ZXN0LmM6MzQy OjM2OiBlcnJvcjogZXhwZWN0ZWQgZXhwcmVzc2lvbiBiZWZvcmUgJyknIHRva2VuCiAgMzQy IHwgaWYgKHNpemVvZiAoKHZvbGF0aWxlIHNpZ19hdG9taWNfdCkpKQogICAgICB8ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgpjb25maWd1cmU6MzE4NjE6ICQ/ID0g MQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwg I2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFS TkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMwLjAuNTAiCnwgI2Rl ZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDMwLjAuNTAiCnwgI2RlZmluZSBQQUNL QUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FH RV9VUkwgImh0dHBzOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUg SEFWRV9QRFVNUEVSIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fSCAxCnwgI2RlZmluZSBIQVZF X1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9J TlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9T VFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZF X1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GU19IIDEKfCAjZGVmaW5lIEhBVkVf TUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhB VkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBI QVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9MU0FOX0lOVEVSRkFDRV9I IDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0FTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZp bmUgSEFWRV9TQU5JVElaRVJfQ09NTU9OX0lOVEVSRkFDRV9ERUZTX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2Rl ZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVm aW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVm aW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVkZTX0ggMQp8ICNk ZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19DREVGU19IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX0lFRUU3NTRfSCAxCnwg I2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEK fCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JBTkRPTV9I IDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwg I2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAj ZGVmaW5lIF9IUFVYX0FMVF9YT1BFTl9TT0NLRVRfQVBJIDEKfCAjZGVmaW5lIF9ORVRCU0Rf U09VUkNFIDEKfCAjZGVmaW5lIF9PUEVOQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfUE9TSVhf UFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0FU VFJJQlNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0JGUF9FWFRf XyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfREZQX0VYVF9fIDEKfCAjZGVm aW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FO VF9JRUNfNjA1NTlfRlVOQ1NfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYw NTU5X1RZUEVTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0xJQl9FWFQyX18gMQp8 ICNkZWZpbmUgX19TVERDX1dBTlRfTUFUSF9TUEVDX0ZVTkNTX18gMQp8ICNkZWZpbmUgX1RB TkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgR0ND X0xJTlQgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAjZGVmaW5lIEhB VkVfU1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2RlZmluZSBI QVZFX1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfQUREUl9OT19SQU5ET01J WkUgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZ U0lORk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZFX0lG QUREUlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8ICNk ZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwgI2RlZmluZSBIQVZFX1NU UlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9J RlJfQlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERSIDEK fCAjZGVmaW5lIEhBVkVfU0JSSyAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAj ZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhB VkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfQ0FOT05JQ0FMSVpFX0ZJTEVfTkFNRSAxCnwg I2RlZmluZSBIQVZFX1JFQUxQQVRIIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZp bmUgSEFWRV9GQ0hNT0RBVCAxCnwgI2RlZmluZSBIQVZFX0xDSE1PRCAxCnwgI2RlZmluZSBI QVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVf RlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElN RU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1BUSFJF QURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVf SVNCTEFOSyAxCnwgI2RlZmluZSBIQVZFX0lTV0NUWVBFIDEKfCAjZGVmaW5lIEhBVkVfU1RS VE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FM VElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBTWVNU RU1fTUFMTE9DIDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2RlZmluZSBIQVZFX1BUSFJF QUQgMQp8ICNkZWZpbmUgVEhSRUFEU19FTkFCTEVEIDEKfCAjZGVmaW5lIEhBVkVfWEtCIDEK fCAjZGVmaW5lIEhBVkVfWEtCUkVGUkVTSEtFWUJPQVJETUFQUElORyAxCnwgI2RlZmluZSBI QVZFX1hLQkZSRUVOQU1FUyAxCnwgI2RlZmluZSBIQVZFX1hSTVNFVERBVEFCQVNFIDEKfCAj ZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RSSU5HIDEKfCAjZGVmaW5lIEhBVkVfWFND UkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhBVkVfWERJU1BMQVlDRUxMUyAxCnwg I2RlZmluZSBIQVZFX1hERVNUUk9ZU1VCV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gxMVI2 IDEKfCAjZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVmaW5lIEhBVkVfWElDQ0FMTEJBQ0tf Q0FMTEJBQ0sgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9YSU0gMQp8ICNkZWZpbmUgSEFWRV9S U1ZHIDEKfCAjZGVmaW5lIEhBVkVfV0VCUCAxCnwgI2RlZmluZSBIQVZFX1NRTElURTMgMQp8 ICNkZWZpbmUgSEFWRV9TUUxJVEUzX0xPQURfRVhURU5TSU9OIDEKfCAjZGVmaW5lIEhBVkVf R0VUQUREUklORk9fQSAxCnwgI2RlZmluZSBIQVZFX0dUSzMgMQp8ICNkZWZpbmUgR0RLX0RJ U0FCTEVfREVQUkVDQVRJT05fV0FSTklOR1MgMQp8ICNkZWZpbmUgR0xJQl9ESVNBQkxFX0RF UFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIFVTRV9HVEsgMQp8ICNkZWZpbmUgSEFW RV9NQUxMT0NfVFJJTSAxCnwgI2RlZmluZSBIQVZFX0RCVVMgMQp8ICNkZWZpbmUgSEFWRV9E QlVTX1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19UWVBFX0lTX1ZB TElEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAxCnwgI2RlZmlu ZSBIQVZFX0RCVVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURB VEVfSU5URVJGQUNFIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIgMQp8 ICNkZWZpbmUgSEFWRV9HU0VUVElOR1MgMQp8ICNkZWZpbmUgSEFWRV9MSUJTRUxJTlVYIDEK fCAjZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhBVkVfTElCU1lTVEVNRCAxCnwg I2RlZmluZSBIQVZFX0pTT04gMQp8ICNkZWZpbmUgSEFWRV9JTk9USUZZIDEKfCAjZGVmaW5l IFVTRV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBVU0VfVE9PTEtJVF9TQ1JPTExfQkFSUyAx CnwgI2RlZmluZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBVU0VfWElNIDEKfCAjZGVmaW5lIEhB VkVfWFJFTkRFUiAxCnwgI2RlZmluZSBVU0VfQ0FJUk9fWENCIDEKfCAjZGVmaW5lIFVTRV9D QUlSTyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAjZGVmaW5lIEhBVkVfRlRfRkFD RV9HRVRDSEFSVkFSSUFOVElOREVYIDEKfCAjZGVmaW5lIEhBVkVfTElCT1RGIDEKfCAjZGVm aW5lIEhBVkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTIDEKfCAjZGVmaW5lIEhBVkVfTTE3 Tl9GTFQgMQp8ICNkZWZpbmUgSEFWRV9IQVJGQlVaWiAxCnwgI2RlZmluZSBVU0VfWENCIDEK fCAjZGVmaW5lIEhBVkVfWFBNIDEKfCAjZGVmaW5lIEhBVkVfSlBFRyAxCnwgI2RlZmluZSBI QVZFX0xDTVMyIDEKfCAjZGVmaW5lIEhBVkVfWkxJQiAxCnwgI2RlZmluZSBEWU5BTUlDX0xJ Ql9TVUZGSVggIi5zbyIKfCAjZGVmaW5lIERZTkFNSUNfTElCX1NFQ09OREFSWV9TVUZGSVgg IiIKfCAjZGVmaW5lIEhBVkVfRExBRERSIDEKfCAjZGVmaW5lIEhBVkVfTU9EVUxFUyAxCnwg I2RlZmluZSBNT0RVTEVTX1NVRkZJWCAiLnNvIgp8ICNkZWZpbmUgTkFUSVZFX0VMSVNQX1NV RkZJWCAiLmVsbiIKfCAjZGVmaW5lIEhBVkVfUE5HIDEKfCAjZGVmaW5lIEhBVkVfVElGRiAx CnwgI2RlZmluZSBIQVZFX0dJRiAxCnwgI2RlZmluZSBIQVZFX0dQTSAxCnwgI2RlZmluZSBI QVZFX1hfU00gMQp8ICNkZWZpbmUgSEFWRV9YUkFORFIgMQp8ICNkZWZpbmUgSEFWRV9YSU5F UkFNQSAxCnwgI2RlZmluZSBIQVZFX1hGSVhFUyAxCnwgI2RlZmluZSBIQVZFX1hJTlBVVDIg MQp8ICNkZWZpbmUgSEFWRV9YSVNDUk9MTENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhB VkVfWElUT1VDSENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWElCQVJSSUVSUkVM RUFTRVBPSU5URVJJTkZPX0RFVklDRUlEIDEKfCAjZGVmaW5lIEhBVkVfWElHRVNUVVJFQ0xB U1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQyAxCnwgI2RlZmluZSBIQVZFX1hT WU5DVFJJR0dFUkZFTkNFIDEKfCAjZGVmaW5lIEhBVkVfWERCRSAxCnwgI2RlZmluZSBIQVZF X1hDQl9TSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hTSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hD T01QT1NJVEUgMQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwyIDEKfCAjZGVmaW5lIEhBVkVfTElO VVhfU0VDQ09NUF9IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX1NFVF9NT0RFX0ZJ TFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9GSUxURVJfRkxBR19UU1lOQyAx CnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZJTFRFUl9IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9T RUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9G SUxURVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA4CnwgI2RlZmluZSBI QVZFX0FDQ0VQVDQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hESVIgMQp8ICNkZWZpbmUgSEFWRV9H RVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJVU0FHRSAxCnwgI2RlZmluZSBIQVZF X0dFVF9DVVJSRU5UX0RJUl9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfTFJBTkQ0OCAxCnwgI2Rl ZmluZSBIQVZFX1JBTkRPTSAxCnwgI2RlZmluZSBIQVZFX1JJTlQgMQp8ICNkZWZpbmUgSEFW RV9UUlVOQyAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBB R0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfTkVX TE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VU UkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9QVEhS RUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJTSUdOQUwgMQp8ICNkZWZpbmUgSEFW RV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9TRU5EVE8gMQp8ICNkZWZpbmUgSEFWRV9S RUNWRlJPTSAxCnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tOQU1FIDEKfCAjZGVmaW5lIEhBVkVf R0VUSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVJRkFERFJTIDEKfCAjZGVmaW5lIEhB VkVfR0FJX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAxCnwgI2RlZmluZSBIQVZF X0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9H RVRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0VOREdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfUkVO QU1FQVQyIDEKfCAjZGVmaW5lIEhBVkVfQ0ZNQUtFUkFXIDEKfCAjZGVmaW5lIEhBVkVfQ0ZT RVRTUEVFRCAxCnwgI2RlZmluZSBIQVZFX19fRVhFQ1VUQUJMRV9TVEFSVCAxCnwgI2RlZmlu ZSBIQVZFX0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NFVE5BTUVfTlAgMQp8ICNk ZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTElHTkVE X0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfTUFEVklTRSAxCnwgI2RlZmluZSBIQVZF X19fQlVJTFRJTl9GUkFNRV9BRERSRVNTIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX1VO V0lORF9JTklUIDEKfCAjZGVmaW5lIEhBVkVfRlNFRUtPIDEKfCAjZGVmaW5lIEhBVkVfR1JB TlRQVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBUIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfT1BF TlBUIDEKfCAjZGVmaW5lIFRFUk1JTkZPIDEKfCAjZGVmaW5lIFRFUk1JTkZPX0RFRklORVNf QkMgMQp8ICNkZWZpbmUgSEFWRV9USU1FUkZEIDEKfCAjZGVmaW5lIEhBVkVfVkFMR1JJTkRf VkFMR1JJTkRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9VTklQQUlSX1VOSUNPREUgMQp8 ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19G T1JLIDEKfCAjZGVmaW5lIEhBVkVfU05QUklOVEYgMQp8ICNkZWZpbmUgSEFWRV9TUEFXTl9I IDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV04gMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9T UEFXTl9GSUxFX0FDVElPTlNfQUREQ0hESVJfTlAgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9T UEFXTkFUVFJfU0VURkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BPU0lYX1NQQVdOX1NF VFNJRCAxCnwgI2RlZmluZSBIQVZFX0dMSUIgMQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5GT19D T0RFU0VUIDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fX05MX1BBUEVSX1dJRFRIIDEKfCAj ZGVmaW5lIEhBVkVfTUJTVEFURV9UIDEKfCAjZGVmaW5lIEFNUEVSU0FORF9GVUxMX05BTUUg MQp8ICNkZWZpbmUgSEFWRV9QVFlTIDEKfCAjZGVmaW5lIEhBVkVfU09DS0VUUyAxCnwgI2Rl ZmluZSBOVUxMX0RFVklDRSAiL2Rldi9udWxsIgp8ICNkZWZpbmUgU0VQQ0hBUiAnOicKfCAj ZGVmaW5lIHN1YnByb2Nlc3NlcyAxCnwgI2RlZmluZSBVU0VSX0ZVTExfTkFNRSBwdy0+cHdf Z2Vjb3MKfCAjZGVmaW5lIERJUkVDVE9SWV9TRVAgJy8nCnwgI2RlZmluZSBJU19ERVZJQ0Vf U0VQKF9jXykgMAp8ICNkZWZpbmUgSVNfRElSRUNUT1JZX1NFUChfY18pICgoX2NfKSA9PSBE SVJFQ1RPUllfU0VQKQp8ICNkZWZpbmUgSVNfQU5ZX1NFUChfY18pIChJU19ESVJFQ1RPUllf U0VQIChfY18pKQp8ICNkZWZpbmUgSEFWRV9QUk9DRlMgMQp8ICNkZWZpbmUgREVGQVVMVF9T T1VORF9ERVZJQ0UgIi9kZXYvZHNwIgp8ICNkZWZpbmUgSU5URVJSVVBUX0lOUFVUIDEKfCAj ZGVmaW5lIE5BUlJPV1BST1RPIDEKfCAjZGVmaW5lIFVOSVg5OF9QVFlTIDEKfCAjZGVmaW5l IFBUWV9JVEVSQVRJT04gaW50IGk7IGZvciAoaSA9IDA7IGkgPCAxOyBpKyspCnwgI2RlZmlu ZSBQVFlfVFRZX05BTUVfU1BSSU5URiB7IGNoYXIgKnB0eW5hbWUgPSAwOyBzaWdzZXRfdCBi bG9ja2VkOyBzaWdlbXB0eXNldCAoJmJsb2NrZWQpOyBzaWdhZGRzZXQgKCZibG9ja2VkLCBT SUdDSExEKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYg KGdyYW50cHQgKGZkKSAhPSAtMSAmJiB1bmxvY2twdCAoZmQpICE9IC0xKSBwdHluYW1lID0g cHRzbmFtZShmZCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX1VOQkxPQ0ssICZibG9ja2VkLCAw KTsgaWYgKCFwdHluYW1lKSB7IGVtYWNzX2Nsb3NlIChmZCk7IHJldHVybiAtMTsgfSBzbnBy aW50ZiAocHR5X25hbWUsIFBUWV9OQU1FX1NJWkUsICIlcyIsIHB0eW5hbWUpOyB9CnwgI2Rl ZmluZSBQVFlfT1BFTiBkbyB7IGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX0NMT0VY RUMgfCBPX05PQ1RUWSk7IGlmIChmZCA8IDAgJiYgZXJybm8gPT0gRUlOVkFMKSBmZCA9IHBv c2l4X29wZW5wdCAoT19SRFdSIHwgT19OT0NUVFkpOyB9IHdoaWxlIChmYWxzZSkKfCAjZGVm aW5lIFBUWV9OQU1FX1NQUklOVEYgLyoqLwp8ICNkZWZpbmUgU0lHTkFMU19WSUFfQ0hBUkFD VEVSUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgR0NfU0VUSk1Q X1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfX1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NJR1NF VEpNUCAxCnwgI2RlZmluZSBIQVZFX1NUQUNLX09WRVJGTE9XX0hBTkRMSU5HIDEKfCAjZGVm aW5lIFVTRyAvKiovCnwgI2RlZmluZSBHTlVfTElOVVggLyoqLwp8ICNkZWZpbmUgU0laRU9G X1NQRUVEX1QgNAp8ICNkZWZpbmUgVVNBQkxFX0ZJT05SRUFEIDEKfCAjZGVmaW5lIFVTQUJM RV9TSUdJTyAxCnwgI2RlZmluZSBDT1BZUklHSFQgIkNvcHlyaWdodCAoQykgMjAyMyBGcmVl IFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4iCnwgI2RlZmluZSBURVJNX0hFQURFUiAiZ3Rr dXRpbC5oIgp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHVVJBVElPTiAieDg2XzY0LXBjLWxpbnV4 LWdudSIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR19PUFRJT05TICIiCnwgI2RlZmluZSBIQVZF X1hfV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gxMSAxCnwgI2RlZmluZSBIQVZFX1NUUlVD VF9BVFRSSUJVVEVfQUxJR05FRCAxCnwgI2RlZmluZSBIQVZFX1RZUEVPRiAxCnwgI2RlZmlu ZSBIQVZFX1NUQVRFTUVOVF9FWFBSRVNTSU9OUyAxCnwgI2RlZmluZSBNQUxMT0NfMF9JU19O T05OVUxMIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0FDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNM X0dFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GRCAxCnwgI2RlZmluZSBIQVZF X0FDTF9TRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRkQgMQp8ICNkZWZpbmUg SEFWRV9BQ0xfRlJFRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX01PREUgMQp8ICNkZWZp bmUgSEFWRV9BQ0xfRlJPTV9URVhUIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0RFTEVURV9ERUZf RklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9FWFRFTkRFRF9GSUxFIDEKfCAjZGVmaW5lIEhB VkVfQUNMX0xJQkFDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VOVFJJRVMgMQp8ICNkZWZp bmUgSEFWRV9BQ0xfRklSU1RfRU5UUlkgMQp8ICNkZWZpbmUgVVNFX0FDTCAxCnwgI2RlZmlu ZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIExT VEFUX0ZPTExPV1NfU0xBU0hFRF9TWU1MSU5LIDEKfCAjZGVmaW5lIEZVTkNfUkVBTFBBVEhf V09SS1MgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9HRVRD V0QgMQp8ICNkZWZpbmUgcmVzdHJpY3QgX19yZXN0cmljdF9fCnwgI2RlZmluZSBIQVZFX0VO VklST05fREVDTCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSTU9ERSAwCnwgI2RlZmluZSBI QVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0xPTkdfT05MWSAxCnwgI2Rl ZmluZSBIQVZFX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUgSEFWRV9VTlNJR05FRF9MT05H X0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9NRU1NRU0gMQp8ICNkZWZpbmUgSEFW RV9ERUNMX01FTVJDSFIgMQp8ICNkZWZpbmUgSEFWRV9NSU5NQVhfSU5fU1lTX1BBUkFNX0gg MQp8ICNkZWZpbmUgVElNRV9UX0lTX1NJR05FRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfQUxB Uk0gMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVE1fVE1fWk9ORSAxCnwgI2RlZmluZSBIQVZF X1RNX1pPTkUgMQp8ICNkZWZpbmUgSEFWRV9UTV9HTVRPRkYgMQp8ICNkZWZpbmUgSEFWRV9T SUdTRVRfVCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8IAp8ICNpbmNsdWRlIDxzaWdu YWwuaD4KfCAKfCAKfCBpbnQKfCBtYWluICh2b2lkKQp8IHsKfCBpZiAoc2l6ZW9mICgodm9s YXRpbGUgc2lnX2F0b21pY190KSkpCnwgCSAgICByZXR1cm4gMDsKfCAgIDsKfCAgIHJldHVy biAwOwp8IH0KY29uZmlndXJlOjMxODYxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzE4Nzg6 IGNoZWNraW5nIGZvciBzaWdoYW5kbGVyX3QKY29uZmlndXJlOjMxODc4OiBnY2MgLWMgLWcz IC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzE4Nzg6ICQ/ID0gMApjb25maWd1 cmU6MzE4Nzg6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6 IEluIGZ1bmN0aW9uICdtYWluJzoKY29uZnRlc3QuYzozNDI6Mjc6IGVycm9yOiBleHBlY3Rl ZCBleHByZXNzaW9uIGJlZm9yZSAnKScgdG9rZW4KICAzNDIgfCBpZiAoc2l6ZW9mICgoc2ln aGFuZGxlcl90KSkpCiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICBeCmNvbmZp Z3VyZTozMTg3ODogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8q IGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8ICNk ZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lP TiAiMzAuMC41MCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1hY3MgMzAuMC41 MCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ251LWVtYWNzQGdudS5vcmci CnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0cHM6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9l bWFjcy8iCnwgI2RlZmluZSBIQVZFX1BEVU1QRVIgMQp8ICNkZWZpbmUgSEFWRV9TVERJT19I IDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAx CnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAx CnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9I IDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfSCAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZTX0gg MQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TWVNJTkZP X0ggMQp8ICNkZWZpbmUgSEFWRV9QVFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJD RV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BX RF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUF9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVS X0xTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQVNBTl9JTlRF UkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9DT01NT05fSU5URVJGQUNFX0RF RlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX0VY RUNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJT19FWFRfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19WRlNfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX0NERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhB VkVfSUVFRTc1NF9IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERCT09MX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfUkFORE9NX0ggMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5l IF9BTExfU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8ICNkZWZpbmUg X0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0hQVVhfQUxUX1hPUEVOX1NPQ0tFVF9BUEkgMQp8 ICNkZWZpbmUgX05FVEJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUgX09QRU5CU0RfU09VUkNFIDEK fCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBfX1NURENf V0FOVF9JRUNfNjA1NTlfQVRUUklCU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9J RUNfNjA1NTlfQkZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9E RlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0VYVF9fIDEKfCAj ZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9GVU5DU19FWFRfXyAxCnwgI2RlZmluZSBf X1NURENfV0FOVF9JRUNfNjA1NTlfVFlQRVNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dB TlRfTElCX0VYVDJfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9NQVRIX1NQRUNfRlVOQ1Nf XyAxCnwgI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNf XyAxCnwgI2RlZmluZSBHQ0NfTElOVCAxCnwgI2RlZmluZSBTWVNURU1fVFlQRSAiZ251L2xp bnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJEX0ggMQp8ICNkZWZpbmUgSEFWRV9B TFNBIDEKfCAjZGVmaW5lIEhBVkVfU09VTkQgMQp8ICNkZWZpbmUgSEFWRV9QRVJTT05BTElU WV9BRERSX05PX1JBTkRPTUlaRSAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX1NZU0lORk8gMQp8 ICNkZWZpbmUgTElOVVhfU1lTSU5GT19VTklUIDEKfCAjZGVmaW5lIEhBVkVfVEVSTV9IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX05FVF9JRl9IIDEK fCAjZGVmaW5lIEhBVkVfSUZBRERSU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVR X0lGUl9GTEFHUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfSFdBRERSIDEK fCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9ORVRNQVNLIDEKfCAjZGVmaW5lIEhB VkVfU1RSVUNUX0lGUkVRX0lGUl9CUk9BREFERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1Rf SUZSRVFfSUZSX0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TQlJLIDEKfCAjZGVmaW5lIEhBVkVf R0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfVkZP UksgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9DQU5PTklDQUxJ WkVfRklMRV9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUkVBTFBBVEggMQp8ICNkZWZpbmUgSEFW RV9MU1RBVCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PREFUIDEKfCAjZGVmaW5lIEhBVkVfTENI TU9EIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9GRE9QRU5ESVIg MQp8ICNkZWZpbmUgSEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMgMQp8ICNk ZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9QU0VMRUNUIDEKfCAj ZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksg MQp8ICNkZWZpbmUgSEFWRV9JU0JMQU5LIDEKfCAjZGVmaW5lIEhBVkVfSVNXQ1RZUEUgMQp8 ICNkZWZpbmUgSEFWRV9TVFJUT0lNQVggMQp8ICNkZWZpbmUgSEFWRV9TWU1MSU5LIDEKfCAj ZGVmaW5lIEhBVkVfTE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpF IDEKfCAjZGVmaW5lIFNZU1RFTV9NQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9NTUFQIDEKfCAj ZGVmaW5lIEhBVkVfUFRIUkVBRCAxCnwgI2RlZmluZSBUSFJFQURTX0VOQUJMRUQgMQp8ICNk ZWZpbmUgSEFWRV9YS0IgMQp8ICNkZWZpbmUgSEFWRV9YS0JSRUZSRVNIS0VZQk9BUkRNQVBQ SU5HIDEKfCAjZGVmaW5lIEhBVkVfWEtCRlJFRU5BTUVTIDEKfCAjZGVmaW5lIEhBVkVfWFJN U0VUREFUQUJBU0UgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOUkVTT1VSQ0VTVFJJTkcgMQp8 ICNkZWZpbmUgSEFWRV9YU0NSRUVOTlVNQkVST0ZTQ1JFRU4gMQp8ICNkZWZpbmUgSEFWRV9Y RElTUExBWUNFTExTIDEKfCAjZGVmaW5lIEhBVkVfWERFU1RST1lTVUJXSU5ET1dTIDEKfCAj ZGVmaW5lIEhBVkVfWDExUjYgMQp8ICNkZWZpbmUgSEFWRV9YX0kxOE4gMQp8ICNkZWZpbmUg SEFWRV9YSUNDQUxMQkFDS19DQUxMQkFDSyAxCnwgI2RlZmluZSBIQVZFX1gxMVI2X1hJTSAx CnwgI2RlZmluZSBIQVZFX1JTVkcgMQp8ICNkZWZpbmUgSEFWRV9XRUJQIDEKfCAjZGVmaW5l IEhBVkVfU1FMSVRFMyAxCnwgI2RlZmluZSBIQVZFX1NRTElURTNfTE9BRF9FWFRFTlNJT04g MQp8ICNkZWZpbmUgSEFWRV9HRVRBRERSSU5GT19BIDEKfCAjZGVmaW5lIEhBVkVfR1RLMyAx CnwgI2RlZmluZSBHREtfRElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAxCnwgI2RlZmlu ZSBHTElCX0RJU0FCTEVfREVQUkVDQVRJT05fV0FSTklOR1MgMQp8ICNkZWZpbmUgVVNFX0dU SyAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19UUklNIDEKfCAjZGVmaW5lIEhBVkVfREJVUyAx CnwgI2RlZmluZSBIQVZFX0RCVVNfV0FUQ0hfR0VUX1VOSVhfRkQgMQp8ICNkZWZpbmUgSEFW RV9EQlVTX1RZUEVfSVNfVkFMSUQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0JV U19OQU1FIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9QQVRIIDEKfCAjZGVmaW5l IEhBVkVfREJVU19WQUxJREFURV9JTlRFUkZBQ0UgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZB TElEQVRFX01FTUJFUiAxCnwgI2RlZmluZSBIQVZFX0dTRVRUSU5HUyAxCnwgI2RlZmluZSBI QVZFX0xJQlNFTElOVVggMQp8ICNkZWZpbmUgSEFWRV9HTlVUTFMgMQp8ICNkZWZpbmUgSEFW RV9MSUJTWVNURU1EIDEKfCAjZGVmaW5lIEhBVkVfSlNPTiAxCnwgI2RlZmluZSBIQVZFX0lO T1RJRlkgMQp8ICNkZWZpbmUgVVNFX0ZJTEVfTk9USUZZIDEKfCAjZGVmaW5lIFVTRV9UT09M S0lUX1NDUk9MTF9CQVJTIDEKfCAjZGVmaW5lIEhBVkVfWElNIDEKfCAjZGVmaW5lIFVTRV9Y SU0gMQp8ICNkZWZpbmUgSEFWRV9YUkVOREVSIDEKfCAjZGVmaW5lIFVTRV9DQUlST19YQ0Ig MQp8ICNkZWZpbmUgVVNFX0NBSVJPIDEKfCAjZGVmaW5lIEhBVkVfRlJFRVRZUEUgMQp8ICNk ZWZpbmUgSEFWRV9GVF9GQUNFX0dFVENIQVJWQVJJQU5USU5ERVggMQp8ICNkZWZpbmUgSEFW RV9MSUJPVEYgMQp8ICNkZWZpbmUgSEFWRV9PVEZfR0VUX1ZBUklBVElPTl9HTFlQSFMgMQp8 ICNkZWZpbmUgSEFWRV9NMTdOX0ZMVCAxCnwgI2RlZmluZSBIQVZFX0hBUkZCVVpaIDEKfCAj ZGVmaW5lIFVTRV9YQ0IgMQp8ICNkZWZpbmUgSEFWRV9YUE0gMQp8ICNkZWZpbmUgSEFWRV9K UEVHIDEKfCAjZGVmaW5lIEhBVkVfTENNUzIgMQp8ICNkZWZpbmUgSEFWRV9aTElCIDEKfCAj ZGVmaW5lIERZTkFNSUNfTElCX1NVRkZJWCAiLnNvIgp8ICNkZWZpbmUgRFlOQU1JQ19MSUJf U0VDT05EQVJZX1NVRkZJWCAiIgp8ICNkZWZpbmUgSEFWRV9ETEFERFIgMQp8ICNkZWZpbmUg SEFWRV9NT0RVTEVTIDEKfCAjZGVmaW5lIE1PRFVMRVNfU1VGRklYICIuc28iCnwgI2RlZmlu ZSBOQVRJVkVfRUxJU1BfU1VGRklYICIuZWxuIgp8ICNkZWZpbmUgSEFWRV9QTkcgMQp8ICNk ZWZpbmUgSEFWRV9USUZGIDEKfCAjZGVmaW5lIEhBVkVfR0lGIDEKfCAjZGVmaW5lIEhBVkVf R1BNIDEKfCAjZGVmaW5lIEhBVkVfWF9TTSAxCnwgI2RlZmluZSBIQVZFX1hSQU5EUiAxCnwg I2RlZmluZSBIQVZFX1hJTkVSQU1BIDEKfCAjZGVmaW5lIEhBVkVfWEZJWEVTIDEKfCAjZGVm aW5lIEhBVkVfWElOUFVUMiAxCnwgI2RlZmluZSBIQVZFX1hJU0NST0xMQ0xBU1NJTkZPX1RZ UEUgMQp8ICNkZWZpbmUgSEFWRV9YSVRPVUNIQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUg SEFWRV9YSUJBUlJJRVJSRUxFQVNFUE9JTlRFUklORk9fREVWSUNFSUQgMQp8ICNkZWZpbmUg SEFWRV9YSUdFU1RVUkVDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hTWU5DIDEK fCAjZGVmaW5lIEhBVkVfWFNZTkNUUklHR0VSRkVOQ0UgMQp8ICNkZWZpbmUgSEFWRV9YREJF IDEKfCAjZGVmaW5lIEhBVkVfWENCX1NIQVBFIDEKfCAjZGVmaW5lIEhBVkVfWFNIQVBFIDEK fCAjZGVmaW5lIEhBVkVfWENPTVBPU0lURSAxCnwgI2RlZmluZSBIQVZFX0xJQlhNTDIgMQp8 ICNkZWZpbmUgSEFWRV9MSU5VWF9TRUNDT01QX0ggMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NF Q0NPTVBfU0VUX01PREVfRklMVEVSIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX0ZJ TFRFUl9GTEFHX1RTWU5DIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfRklMVEVSX0ggMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfU0VUX01PREVfRklMVEVSIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9TRUNDT01QX0ZJTFRFUl9GTEFHX1RTWU5DIDEKfCAjZGVmaW5lIFNJWkVPRl9M T05HIDgKfCAjZGVmaW5lIEhBVkVfQUNDRVBUNCAxCnwgI2RlZmluZSBIQVZFX0ZDSERJUiAx CnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUUlVTQUdF IDEKfCAjZGVmaW5lIEhBVkVfR0VUX0NVUlJFTlRfRElSX05BTUUgMQp8ICNkZWZpbmUgSEFW RV9MUkFORDQ4IDEKfCAjZGVmaW5lIEhBVkVfUkFORE9NIDEKfCAjZGVmaW5lIEhBVkVfUklO VCAxCnwgI2RlZmluZSBIQVZFX1RSVU5DIDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAj ZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8 ICNkZWZpbmUgSEFWRV9ORVdMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSTElNSVQgMQp8 ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TSFVURE9XTiAxCnwg I2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlNJR05B TCAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX1NFTkRUTyAx CnwgI2RlZmluZSBIQVZFX1JFQ1ZGUk9NIDEKfCAjZGVmaW5lIEhBVkVfR0VUU09DS05BTUUg MQp8ICNkZWZpbmUgSEFWRV9HRVRJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfRlJFRUlGQURE UlMgMQp8ICNkZWZpbmUgSEFWRV9HQUlfU1RSRVJST1IgMQp8ICNkZWZpbmUgSEFWRV9TWU5D IDEKfCAjZGVmaW5lIEhBVkVfR0VUUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRQV0VOVCAx CnwgI2RlZmluZSBIQVZFX0dFVEdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5ER1JFTlQgMQp8 ICNkZWZpbmUgSEFWRV9SRU5BTUVBVDIgMQp8ICNkZWZpbmUgSEFWRV9DRk1BS0VSQVcgMQp8 ICNkZWZpbmUgSEFWRV9DRlNFVFNQRUVEIDEKfCAjZGVmaW5lIEhBVkVfX19FWEVDVVRBQkxF X1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVfTE9HMiAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURf U0VUTkFNRV9OUCAxCnwgI2RlZmluZSBIQVZFX0FMSUdORURfQUxMT0MgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX0FMSUdORURfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9NQURWSVNF IDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX0ZSQU1FX0FERFJFU1MgMQp8ICNkZWZpbmUg SEFWRV9fX0JVSUxUSU5fVU5XSU5EX0lOSVQgMQp8ICNkZWZpbmUgSEFWRV9GU0VFS08gMQp8 ICNkZWZpbmUgSEFWRV9HUkFOVFBUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFQgMQp8ICNkZWZp bmUgSEFWRV9QT1NJWF9PUEVOUFQgMQp8ICNkZWZpbmUgVEVSTUlORk8gMQp8ICNkZWZpbmUg VEVSTUlORk9fREVGSU5FU19CQyAxCnwgI2RlZmluZSBIQVZFX1RJTUVSRkQgMQp8ICNkZWZp bmUgSEFWRV9WQUxHUklORF9WQUxHUklORF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1VO SVBBSVJfVU5JQ09ERSAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVkZPUksgMQp8ICNkZWZp bmUgSEFWRV9XT1JLSU5HX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9TTlBSSU5URiAxCnwgI2Rl ZmluZSBIQVZFX1NQQVdOX0ggMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTiAxCnwgI2Rl ZmluZSBIQVZFX1BPU0lYX1NQQVdOX0ZJTEVfQUNUSU9OU19BRERDSERJUl9OUCAxCnwgI2Rl ZmluZSBIQVZFX1BPU0lYX1NQQVdOQVRUUl9TRVRGTEFHUyAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfUE9TSVhfU1BBV05fU0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVfR0xJQiAxCnwgI2RlZmlu ZSBIQVZFX0xBTkdJTkZPX0NPREVTRVQgMQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5GT19fTkxf UEFQRVJfV0lEVEggMQp8ICNkZWZpbmUgSEFWRV9NQlNUQVRFX1QgMQp8ICNkZWZpbmUgQU1Q RVJTQU5EX0ZVTExfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1BUWVMgMQp8ICNkZWZpbmUgSEFW RV9TT0NLRVRTIDEKfCAjZGVmaW5lIE5VTExfREVWSUNFICIvZGV2L251bGwiCnwgI2RlZmlu ZSBTRVBDSEFSICc6Jwp8ICNkZWZpbmUgc3VicHJvY2Vzc2VzIDEKfCAjZGVmaW5lIFVTRVJf RlVMTF9OQU1FIHB3LT5wd19nZWNvcwp8ICNkZWZpbmUgRElSRUNUT1JZX1NFUCAnLycKfCAj ZGVmaW5lIElTX0RFVklDRV9TRVAoX2NfKSAwCnwgI2RlZmluZSBJU19ESVJFQ1RPUllfU0VQ KF9jXykgKChfY18pID09IERJUkVDVE9SWV9TRVApCnwgI2RlZmluZSBJU19BTllfU0VQKF9j XykgKElTX0RJUkVDVE9SWV9TRVAgKF9jXykpCnwgI2RlZmluZSBIQVZFX1BST0NGUyAxCnwg I2RlZmluZSBERUZBVUxUX1NPVU5EX0RFVklDRSAiL2Rldi9kc3AiCnwgI2RlZmluZSBJTlRF UlJVUFRfSU5QVVQgMQp8ICNkZWZpbmUgTkFSUk9XUFJPVE8gMQp8ICNkZWZpbmUgVU5JWDk4 X1BUWVMgMQp8ICNkZWZpbmUgUFRZX0lURVJBVElPTiBpbnQgaTsgZm9yIChpID0gMDsgaSA8 IDE7IGkrKykKfCAjZGVmaW5lIFBUWV9UVFlfTkFNRV9TUFJJTlRGIHsgY2hhciAqcHR5bmFt ZSA9IDA7IHNpZ3NldF90IGJsb2NrZWQ7IHNpZ2VtcHR5c2V0ICgmYmxvY2tlZCk7IHNpZ2Fk ZHNldCAoJmJsb2NrZWQsIFNJR0NITEQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19CTE9DSywg JmJsb2NrZWQsIDApOyBpZiAoZ3JhbnRwdCAoZmQpICE9IC0xICYmIHVubG9ja3B0IChmZCkg IT0gLTEpIHB0eW5hbWUgPSBwdHNuYW1lKGZkKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfVU5C TE9DSywgJmJsb2NrZWQsIDApOyBpZiAoIXB0eW5hbWUpIHsgZW1hY3NfY2xvc2UgKGZkKTsg cmV0dXJuIC0xOyB9IHNucHJpbnRmIChwdHlfbmFtZSwgUFRZX05BTUVfU0laRSwgIiVzIiwg cHR5bmFtZSk7IH0KfCAjZGVmaW5lIFBUWV9PUEVOIGRvIHsgZmQgPSBwb3NpeF9vcGVucHQg KE9fUkRXUiB8IE9fQ0xPRVhFQyB8IE9fTk9DVFRZKTsgaWYgKGZkIDwgMCAmJiBlcnJubyA9 PSBFSU5WQUwpIGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX05PQ1RUWSk7IH0gd2hp bGUgKGZhbHNlKQp8ICNkZWZpbmUgUFRZX05BTUVfU1BSSU5URiAvKiovCnwgI2RlZmluZSBT SUdOQUxTX1ZJQV9DSEFSQUNURVJTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwg I2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgSEFWRV9fU0VUSk1QIDEKfCAj ZGVmaW5lIEhBVkVfU0lHU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU1RBQ0tfT1ZFUkZMT1df SEFORExJTkcgMQp8ICNkZWZpbmUgVVNHIC8qKi8KfCAjZGVmaW5lIEdOVV9MSU5VWCAvKiov CnwgI2RlZmluZSBTSVpFT0ZfU1BFRURfVCA0CnwgI2RlZmluZSBVU0FCTEVfRklPTlJFQUQg MQp8ICNkZWZpbmUgVVNBQkxFX1NJR0lPIDEKfCAjZGVmaW5lIENPUFlSSUdIVCAiQ29weXJp Z2h0IChDKSAyMDIzIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiIKfCAjZGVmaW5l IFRFUk1fSEVBREVSICJndGt1dGlsLmgiCnwgI2RlZmluZSBFTUFDU19DT05GSUdVUkFUSU9O ICJ4ODZfNjQtcGMtbGludXgtZ251Igp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHX09QVElPTlMg IiIKfCAjZGVmaW5lIEhBVkVfWF9XSU5ET1dTIDEKfCAjZGVmaW5lIEhBVkVfWDExIDEKfCAj ZGVmaW5lIEhBVkVfU1RSVUNUX0FUVFJJQlVURV9BTElHTkVEIDEKfCAjZGVmaW5lIEhBVkVf VFlQRU9GIDEKfCAjZGVmaW5lIEhBVkVfU1RBVEVNRU5UX0VYUFJFU1NJT05TIDEKfCAjZGVm aW5lIE1BTExPQ18wX0lTX05PTk5VTEwgMQp8ICNkZWZpbmUgSEFWRV9TWVNfQUNMX0ggMQp8 ICNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZE IDEKfCAjZGVmaW5lIEhBVkVfQUNMX1NFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX1NF VF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUkVFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZS T01fTU9ERSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX1RFWFQgMQp8ICNkZWZpbmUgSEFW RV9BQ0xfREVMRVRFX0RFRl9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VYVEVOREVEX0ZJ TEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfTElCQUNMX0ggMQp8ICNkZWZpbmUgSEFWRV9BQ0xf RU5UUklFUyAxCnwgI2RlZmluZSBIQVZFX0FDTF9GSVJTVF9FTlRSWSAxCnwgI2RlZmluZSBV U0VfQUNMIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFWRV9BTExP Q0EgMQp8ICNkZWZpbmUgTFNUQVRfRk9MTE9XU19TTEFTSEVEX1NZTUxJTksgMQp8ICNkZWZp bmUgRlVOQ19SRUFMUEFUSF9XT1JLUyAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwg I2RlZmluZSBIQVZFX0dFVENXRCAxCnwgI2RlZmluZSByZXN0cmljdCBfX3Jlc3RyaWN0X18K fCAjZGVmaW5lIEhBVkVfRU5WSVJPTl9ERUNMIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJN T0RFIDAKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRf TE9OR19PTkxZIDEKfCAjZGVmaW5lIEhBVkVfTE9OR19MT05HX0lOVCAxCnwgI2RlZmluZSBI QVZFX1VOU0lHTkVEX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX01FTU1F TSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfTUVNUkNIUiAxCnwgI2RlZmluZSBIQVZFX01JTk1B WF9JTl9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBUSU1FX1RfSVNfU0lHTkVEIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9BTEFSTSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9UTV9UTV9aT05F IDEKfCAjZGVmaW5lIEhBVkVfVE1fWk9ORSAxCnwgI2RlZmluZSBIQVZFX1RNX0dNVE9GRiAx CnwgI2RlZmluZSBIQVZFX1NJR1NFVF9UIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwg CnwgI2luY2x1ZGUgPHNpZ25hbC5oPgp8IAp8IAp8IGludAp8IG1haW4gKHZvaWQpCnwgewp8 IGlmIChzaXplb2YgKChzaWdoYW5kbGVyX3QpKSkKfCAJICAgIHJldHVybiAwOwp8ICAgOwp8 ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MzE4Nzg6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy ZTozMTkxMzogY2hlY2tpbmcgZm9yIHdjaGFyX3QKY29uZmlndXJlOjMxOTMxOiBnY2MgLWMg LWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzE5MzE6ICQ/ID0gMApjb25m aWd1cmU6MzE5Mzk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMTk1NTogY2hlY2tpbmcgZm9y IGdvb2QgbWF4X2FsaWduX3QKY29uZmlndXJlOjMxOTkyOiBnY2MgLWMgLWczIC1PMiAgICBj b25mdGVzdC5jID4mNQpjb25maWd1cmU6MzE5OTI6ICQ/ID0gMApjb25maWd1cmU6MzIwMDE6 IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMjAxMzogY2hlY2tpbmcgd2hldGhlciBOVUxMIGNh biBiZSB1c2VkIGluIGFyYml0cmFyeSBleHByZXNzaW9ucwpjb25maWd1cmU6MzIwMzI6IGdj YyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozMjAzMjogJD8gPSAw CmNvbmZpZ3VyZTozMjA0MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjMyMTc4OiBjaGVja2lu ZyB3aGV0aGVyIGZjbG9zZWFsbCBpcyBkZWNsYXJlZApjb25maWd1cmU6MzIxNzg6IGdjYyAt YyAtZzMgLU8yICAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzIxNzg6ICQ/ID0gMApj b25maWd1cmU6MzIxNzg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMjE4NzogY2hlY2tpbmcg d2hldGhlciBnZXR3IGlzIGRlY2xhcmVkCmNvbmZpZ3VyZTozMjE4NzogZ2NjIC1jIC1nMyAt TzIgICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozMjE4NzogJD8gPSAwCmNvbmZpZ3Vy ZTozMjE4NzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjMyMTk2OiBjaGVja2luZyB3aGV0aGVy IHB1dHcgaXMgZGVjbGFyZWQKY29uZmlndXJlOjMyMTk2OiBnY2MgLWMgLWczIC1PMiAgICAg Y29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjMyMTk2OiAkPyA9IDAKY29uZmlndXJlOjMyMTk2 OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzIyODM6IGNoZWNraW5nIHdoaWNoIGZsYXZvciBv ZiBwcmludGYgYXR0cmlidXRlIG1hdGNoZXMgaW50dHlwZXMgbWFjcm9zCmNvbmZpZ3VyZToz MjMxMTogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjMyMzEx OiAkPyA9IDAKY29uZmlndXJlOjMyMzE5OiByZXN1bHQ6IHN5c3RlbQpjb25maWd1cmU6MzI1 OTM6IGNoZWNraW5nIHdoZXRoZXIgZWN2dCBpcyBkZWNsYXJlZApjb25maWd1cmU6MzI1OTM6 IGdjYyAtYyAtZzMgLU8yICAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzI1OTM6ICQ/ ID0gMApjb25maWd1cmU6MzI1OTM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMjYwMjogY2hl Y2tpbmcgd2hldGhlciBmY3Z0IGlzIGRlY2xhcmVkCmNvbmZpZ3VyZTozMjYwMjogZ2NjIC1j IC1nMyAtTzIgICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozMjYwMjogJD8gPSAwCmNv bmZpZ3VyZTozMjYwMjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjMyNjExOiBjaGVja2luZyB3 aGV0aGVyIGdjdnQgaXMgZGVjbGFyZWQKY29uZmlndXJlOjMyNjExOiBnY2MgLWMgLWczIC1P MiAgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjMyNjExOiAkPyA9IDAKY29uZmlndXJl OjMyNjExOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzI3OTE6IGNoZWNraW5nIHdoZXRoZXIg c3RybmxlbiBpcyBkZWNsYXJlZApjb25maWd1cmU6MzI3OTE6IGdjYyAtYyAtZzMgLU8yICAg ICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzI3OTE6ICQ/ID0gMApjb25maWd1cmU6MzI3 OTE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMjgwMTogY2hlY2tpbmcgd2hldGhlciBzdHJ0 b2ltYXggaXMgZGVjbGFyZWQKY29uZmlndXJlOjMyODAxOiBnY2MgLWMgLWczIC1PMiAgICAg Y29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjMyODAxOiAkPyA9IDAKY29uZmlndXJlOjMyODAx OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzI5MDc6IGNoZWNraW5nIHdoZXRoZXIgc3RhdCBm aWxlLW1vZGUgbWFjcm9zIGFyZSBicm9rZW4KY29uZmlndXJlOjMyOTM1OiBnY2MgLWMgLWcz IC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzI5MzU6ICQ/ID0gMApjb25maWd1 cmU6MzI5NDM6IHJlc3VsdDogbm8KY29uZmlndXJlOjMzMDQ4OiBjaGVja2luZyBmb3Igbmxp bmtfdApjb25maWd1cmU6MzMwNDg6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1 CmNvbmZpZ3VyZTozMzA0ODogJD8gPSAwCmNvbmZpZ3VyZTozMzA0ODogZ2NjIC1jIC1nMyAt TzIgICAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzogSW4gZnVuY3Rpb24gJ21haW4nOgpj b25mdGVzdC5jOjM1MToyMjogZXJyb3I6IGV4cGVjdGVkIGV4cHJlc3Npb24gYmVmb3JlICcp JyB0b2tlbgogIDM1MSB8IGlmIChzaXplb2YgKChubGlua190KSkpCiAgICAgIHwgICAgICAg ICAgICAgICAgICAgICAgXgpjb25maWd1cmU6MzMwNDg6ICQ/ID0gMQpjb25maWd1cmU6IGZh aWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdF X05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwg I2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX1NU UklORyAiR05VIEVtYWNzIDMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAi YnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHBzOi8v d3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgSEFWRV9QRFVNUEVSIDEK fCAjZGVmaW5lIEhBVkVfU1RESU9fSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAj ZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAj ZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8 ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNk ZWZpbmUgSEFWRV9MSU5VWF9GU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1F X0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwg I2RlZmluZSBIQVZFX1NBTklUSVpFUl9MU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhB VkVfU0FOSVRJWkVSX0FTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVEla RVJfQ09NTU9OX0lOVEVSRkFDRV9ERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VU X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJF QURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5U X0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9f RVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVkZTX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRP UFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19DREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX0lFRUU3NTRfSCAxCnwgI2RlZmluZSBIQVZFX0xJ TUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVf U1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JBTkRPTV9IIDEKfCAjZGVmaW5lIFNU RENfSEVBREVSUyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lO X0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9IUFVYX0FM VF9YT1BFTl9TT0NLRVRfQVBJIDEKfCAjZGVmaW5lIF9ORVRCU0RfU09VUkNFIDEKfCAjZGVm aW5lIF9PUEVOQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJ Q1MgMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0FUVFJJQlNfRVhUX18gMQp8 ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0JGUF9FWFRfXyAxCnwgI2RlZmluZSBf X1NURENfV0FOVF9JRUNfNjA1NTlfREZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5U X0lFQ182MDU1OV9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRlVO Q1NfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X1RZUEVTX0VYVF9f IDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0xJQl9FWFQyX18gMQp8ICNkZWZpbmUgX19TVERD X1dBTlRfTUFUSF9TUEVDX0ZVTkNTX18gMQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8 ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgR0NDX0xJTlQgMQp8ICNkZWZp bmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAjZGVmaW5lIEhBVkVfU1lTX1NPVU5EQ0FS RF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2RlZmluZSBIQVZFX1NPVU5EIDEKfCAj ZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfQUREUl9OT19SQU5ET01JWkUgMQp8ICNkZWZpbmUg SEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwg I2RlZmluZSBIQVZFX1RFUk1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNk ZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZFX0lGQUREUlNfSCAxCnwgI2Rl ZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9TVFJV Q1RfSUZSRVFfSUZSX0hXQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJf TkVUTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJPQURBRERSIDEK fCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERSIDEKfCAjZGVmaW5lIEhBVkVf U0JSSyAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfRk9S SyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAj ZGVmaW5lIEhBVkVfQ0FOT05JQ0FMSVpFX0ZJTEVfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1JF QUxQQVRIIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0RB VCAxCnwgI2RlZmluZSBIQVZFX0xDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAj ZGVmaW5lIEhBVkVfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRBVCAxCnwgI2Rl ZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVm aW5lIEhBVkVfUFNFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwg I2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfSVNCTEFOSyAxCnwgI2Rl ZmluZSBIQVZFX0lTV0NUWVBFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVm aW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVm aW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBTWVNURU1fTUFMTE9DIDEKfCAj ZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQUQgMQp8ICNkZWZpbmUg VEhSRUFEU19FTkFCTEVEIDEKfCAjZGVmaW5lIEhBVkVfWEtCIDEKfCAjZGVmaW5lIEhBVkVf WEtCUkVGUkVTSEtFWUJPQVJETUFQUElORyAxCnwgI2RlZmluZSBIQVZFX1hLQkZSRUVOQU1F UyAxCnwgI2RlZmluZSBIQVZFX1hSTVNFVERBVEFCQVNFIDEKfCAjZGVmaW5lIEhBVkVfWFND UkVFTlJFU09VUkNFU1RSSU5HIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NS RUVOIDEKfCAjZGVmaW5lIEhBVkVfWERJU1BMQVlDRUxMUyAxCnwgI2RlZmluZSBIQVZFX1hE RVNUUk9ZU1VCV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gxMVI2IDEKfCAjZGVmaW5lIEhB VkVfWF9JMThOIDEKfCAjZGVmaW5lIEhBVkVfWElDQ0FMTEJBQ0tfQ0FMTEJBQ0sgMQp8ICNk ZWZpbmUgSEFWRV9YMTFSNl9YSU0gMQp8ICNkZWZpbmUgSEFWRV9SU1ZHIDEKfCAjZGVmaW5l IEhBVkVfV0VCUCAxCnwgI2RlZmluZSBIQVZFX1NRTElURTMgMQp8ICNkZWZpbmUgSEFWRV9T UUxJVEUzX0xPQURfRVhURU5TSU9OIDEKfCAjZGVmaW5lIEhBVkVfR0VUQUREUklORk9fQSAx CnwgI2RlZmluZSBIQVZFX0dUSzMgMQp8ICNkZWZpbmUgR0RLX0RJU0FCTEVfREVQUkVDQVRJ T05fV0FSTklOR1MgMQp8ICNkZWZpbmUgR0xJQl9ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5J TkdTIDEKfCAjZGVmaW5lIFVTRV9HVEsgMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfVFJJTSAx CnwgI2RlZmluZSBIQVZFX0RCVVMgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1dBVENIX0dFVF9V TklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19UWVBFX0lTX1ZBTElEIDEKfCAjZGVmaW5l IEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFM SURBVEVfUEFUSCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfSU5URVJGQUNFIDEK fCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIgMQp8ICNkZWZpbmUgSEFWRV9H U0VUVElOR1MgMQp8ICNkZWZpbmUgSEFWRV9MSUJTRUxJTlVYIDEKfCAjZGVmaW5lIEhBVkVf R05VVExTIDEKfCAjZGVmaW5lIEhBVkVfTElCU1lTVEVNRCAxCnwgI2RlZmluZSBIQVZFX0pT T04gMQp8ICNkZWZpbmUgSEFWRV9JTk9USUZZIDEKfCAjZGVmaW5lIFVTRV9GSUxFX05PVElG WSAxCnwgI2RlZmluZSBVU0VfVE9PTEtJVF9TQ1JPTExfQkFSUyAxCnwgI2RlZmluZSBIQVZF X1hJTSAxCnwgI2RlZmluZSBVU0VfWElNIDEKfCAjZGVmaW5lIEhBVkVfWFJFTkRFUiAxCnwg I2RlZmluZSBVU0VfQ0FJUk9fWENCIDEKfCAjZGVmaW5lIFVTRV9DQUlSTyAxCnwgI2RlZmlu ZSBIQVZFX0ZSRUVUWVBFIDEKfCAjZGVmaW5lIEhBVkVfRlRfRkFDRV9HRVRDSEFSVkFSSUFO VElOREVYIDEKfCAjZGVmaW5lIEhBVkVfTElCT1RGIDEKfCAjZGVmaW5lIEhBVkVfT1RGX0dF VF9WQVJJQVRJT05fR0xZUEhTIDEKfCAjZGVmaW5lIEhBVkVfTTE3Tl9GTFQgMQp8ICNkZWZp bmUgSEFWRV9IQVJGQlVaWiAxCnwgI2RlZmluZSBVU0VfWENCIDEKfCAjZGVmaW5lIEhBVkVf WFBNIDEKfCAjZGVmaW5lIEhBVkVfSlBFRyAxCnwgI2RlZmluZSBIQVZFX0xDTVMyIDEKfCAj ZGVmaW5lIEhBVkVfWkxJQiAxCnwgI2RlZmluZSBEWU5BTUlDX0xJQl9TVUZGSVggIi5zbyIK fCAjZGVmaW5lIERZTkFNSUNfTElCX1NFQ09OREFSWV9TVUZGSVggIiIKfCAjZGVmaW5lIEhB VkVfRExBRERSIDEKfCAjZGVmaW5lIEhBVkVfTU9EVUxFUyAxCnwgI2RlZmluZSBNT0RVTEVT X1NVRkZJWCAiLnNvIgp8ICNkZWZpbmUgTkFUSVZFX0VMSVNQX1NVRkZJWCAiLmVsbiIKfCAj ZGVmaW5lIEhBVkVfUE5HIDEKfCAjZGVmaW5lIEhBVkVfVElGRiAxCnwgI2RlZmluZSBIQVZF X0dJRiAxCnwgI2RlZmluZSBIQVZFX0dQTSAxCnwgI2RlZmluZSBIQVZFX1hfU00gMQp8ICNk ZWZpbmUgSEFWRV9YUkFORFIgMQp8ICNkZWZpbmUgSEFWRV9YSU5FUkFNQSAxCnwgI2RlZmlu ZSBIQVZFX1hGSVhFUyAxCnwgI2RlZmluZSBIQVZFX1hJTlBVVDIgMQp8ICNkZWZpbmUgSEFW RV9YSVNDUk9MTENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWElUT1VDSENMQVNT SU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWElCQVJSSUVSUkVMRUFTRVBPSU5URVJJTkZP X0RFVklDRUlEIDEKfCAjZGVmaW5lIEhBVkVfWElHRVNUVVJFQ0xBU1NJTkZPX1RZUEUgMQp8 ICNkZWZpbmUgSEFWRV9YU1lOQyAxCnwgI2RlZmluZSBIQVZFX1hTWU5DVFJJR0dFUkZFTkNF IDEKfCAjZGVmaW5lIEhBVkVfWERCRSAxCnwgI2RlZmluZSBIQVZFX1hDQl9TSEFQRSAxCnwg I2RlZmluZSBIQVZFX1hTSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hDT01QT1NJVEUgMQp8ICNk ZWZpbmUgSEFWRV9MSUJYTUwyIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU0VDQ09NUF9IIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfU0VDQ09NUF9GSUxURVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBIQVZF X0xJTlVYX0ZJTFRFUl9IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX1NFVF9NT0RF X0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9GSUxURVJfRkxBR19UU1lO QyAxCnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA4CnwgI2RlZmluZSBIQVZFX0FDQ0VQVDQgMQp8 ICNkZWZpbmUgSEFWRV9GQ0hESVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAxCnwg I2RlZmluZSBIQVZFX0dFVFJVU0FHRSAxCnwgI2RlZmluZSBIQVZFX0dFVF9DVVJSRU5UX0RJ Ul9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfTFJBTkQ0OCAxCnwgI2RlZmluZSBIQVZFX1JBTkRP TSAxCnwgI2RlZmluZSBIQVZFX1JJTlQgMQp8ICNkZWZpbmUgSEFWRV9UUlVOQyAxCnwgI2Rl ZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVm aW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfTkVXTE9DQUxFIDEKfCAjZGVm aW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVm aW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8 ICNkZWZpbmUgSEFWRV9TVFJTSUdOQUwgMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8 ICNkZWZpbmUgSEFWRV9TRU5EVE8gMQp8ICNkZWZpbmUgSEFWRV9SRUNWRlJPTSAxCnwgI2Rl ZmluZSBIQVZFX0dFVFNPQ0tOQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUSUZBRERSUyAxCnwg I2RlZmluZSBIQVZFX0ZSRUVJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfR0FJX1NUUkVSUk9S IDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAj ZGVmaW5lIEhBVkVfRU5EUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUkVOVCAxCnwgI2Rl ZmluZSBIQVZFX0VOREdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfUkVOQU1FQVQyIDEKfCAjZGVm aW5lIEhBVkVfQ0ZNQUtFUkFXIDEKfCAjZGVmaW5lIEhBVkVfQ0ZTRVRTUEVFRCAxCnwgI2Rl ZmluZSBIQVZFX19fRVhFQ1VUQUJMRV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0xPRzIgMQp8 ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NFVE5BTUVfTlAgMQp8ICNkZWZpbmUgSEFWRV9BTElH TkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTElHTkVEX0FMTE9DIDEKfCAjZGVm aW5lIEhBVkVfUE9TSVhfTUFEVklTRSAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9GUkFN RV9BRERSRVNTIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX1VOV0lORF9JTklUIDEKfCAj ZGVmaW5lIEhBVkVfRlNFRUtPIDEKfCAjZGVmaW5lIEhBVkVfR1JBTlRQVCAxCnwgI2RlZmlu ZSBIQVZFX0dFVFBUIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfT1BFTlBUIDEKfCAjZGVmaW5l IFRFUk1JTkZPIDEKfCAjZGVmaW5lIFRFUk1JTkZPX0RFRklORVNfQkMgMQp8ICNkZWZpbmUg SEFWRV9USU1FUkZEIDEKfCAjZGVmaW5lIEhBVkVfVkFMR1JJTkRfVkFMR1JJTkRfSCAxCnwg I2RlZmluZSBIQVZFX1NUUlVDVF9VTklQQUlSX1VOSUNPREUgMQp8ICNkZWZpbmUgSEFWRV9X T1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19GT1JLIDEKfCAjZGVmaW5l IEhBVkVfU05QUklOVEYgMQp8ICNkZWZpbmUgSEFWRV9TUEFXTl9IIDEKfCAjZGVmaW5lIEhB VkVfUE9TSVhfU1BBV04gMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTl9GSUxFX0FDVElP TlNfQUREQ0hESVJfTlAgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTkFUVFJfU0VURkxB R1MgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BPU0lYX1NQQVdOX1NFVFNJRCAxCnwgI2RlZmlu ZSBIQVZFX0dMSUIgMQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5GT19DT0RFU0VUIDEKfCAjZGVm aW5lIEhBVkVfTEFOR0lORk9fX05MX1BBUEVSX1dJRFRIIDEKfCAjZGVmaW5lIEhBVkVfTUJT VEFURV9UIDEKfCAjZGVmaW5lIEFNUEVSU0FORF9GVUxMX05BTUUgMQp8ICNkZWZpbmUgSEFW RV9QVFlTIDEKfCAjZGVmaW5lIEhBVkVfU09DS0VUUyAxCnwgI2RlZmluZSBOVUxMX0RFVklD RSAiL2Rldi9udWxsIgp8ICNkZWZpbmUgU0VQQ0hBUiAnOicKfCAjZGVmaW5lIHN1YnByb2Nl c3NlcyAxCnwgI2RlZmluZSBVU0VSX0ZVTExfTkFNRSBwdy0+cHdfZ2Vjb3MKfCAjZGVmaW5l IERJUkVDVE9SWV9TRVAgJy8nCnwgI2RlZmluZSBJU19ERVZJQ0VfU0VQKF9jXykgMAp8ICNk ZWZpbmUgSVNfRElSRUNUT1JZX1NFUChfY18pICgoX2NfKSA9PSBESVJFQ1RPUllfU0VQKQp8 ICNkZWZpbmUgSVNfQU5ZX1NFUChfY18pIChJU19ESVJFQ1RPUllfU0VQIChfY18pKQp8ICNk ZWZpbmUgSEFWRV9QUk9DRlMgMQp8ICNkZWZpbmUgREVGQVVMVF9TT1VORF9ERVZJQ0UgIi9k ZXYvZHNwIgp8ICNkZWZpbmUgSU5URVJSVVBUX0lOUFVUIDEKfCAjZGVmaW5lIE5BUlJPV1BS T1RPIDEKfCAjZGVmaW5lIFVOSVg5OF9QVFlTIDEKfCAjZGVmaW5lIFBUWV9JVEVSQVRJT04g aW50IGk7IGZvciAoaSA9IDA7IGkgPCAxOyBpKyspCnwgI2RlZmluZSBQVFlfVFRZX05BTUVf U1BSSU5URiB7IGNoYXIgKnB0eW5hbWUgPSAwOyBzaWdzZXRfdCBibG9ja2VkOyBzaWdlbXB0 eXNldCAoJmJsb2NrZWQpOyBzaWdhZGRzZXQgKCZibG9ja2VkLCBTSUdDSExEKTsgcHRocmVh ZF9zaWdtYXNrIChTSUdfQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKGdyYW50cHQgKGZkKSAh PSAtMSAmJiB1bmxvY2twdCAoZmQpICE9IC0xKSBwdHluYW1lID0gcHRzbmFtZShmZCk7IHB0 aHJlYWRfc2lnbWFzayAoU0lHX1VOQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKCFwdHluYW1l KSB7IGVtYWNzX2Nsb3NlIChmZCk7IHJldHVybiAtMTsgfSBzbnByaW50ZiAocHR5X25hbWUs IFBUWV9OQU1FX1NJWkUsICIlcyIsIHB0eW5hbWUpOyB9CnwgI2RlZmluZSBQVFlfT1BFTiBk byB7IGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX0NMT0VYRUMgfCBPX05PQ1RUWSk7 IGlmIChmZCA8IDAgJiYgZXJybm8gPT0gRUlOVkFMKSBmZCA9IHBvc2l4X29wZW5wdCAoT19S RFdSIHwgT19OT0NUVFkpOyB9IHdoaWxlIChmYWxzZSkKfCAjZGVmaW5lIFBUWV9OQU1FX1NQ UklOVEYgLyoqLwp8ICNkZWZpbmUgU0lHTkFMU19WSUFfQ0hBUkFDVEVSUyAxCnwgI2RlZmlu ZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAjZGVm aW5lIEhBVkVfX1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVEpNUCAxCnwgI2RlZmlu ZSBIQVZFX1NUQUNLX09WRVJGTE9XX0hBTkRMSU5HIDEKfCAjZGVmaW5lIFVTRyAvKiovCnwg I2RlZmluZSBHTlVfTElOVVggLyoqLwp8ICNkZWZpbmUgU0laRU9GX1NQRUVEX1QgNAp8ICNk ZWZpbmUgVVNBQkxFX0ZJT05SRUFEIDEKfCAjZGVmaW5lIFVTQUJMRV9TSUdJTyAxCnwgI2Rl ZmluZSBDT1BZUklHSFQgIkNvcHlyaWdodCAoQykgMjAyMyBGcmVlIFNvZnR3YXJlIEZvdW5k YXRpb24sIEluYy4iCnwgI2RlZmluZSBURVJNX0hFQURFUiAiZ3RrdXRpbC5oIgp8ICNkZWZp bmUgRU1BQ1NfQ09ORklHVVJBVElPTiAieDg2XzY0LXBjLWxpbnV4LWdudSIKfCAjZGVmaW5l IEVNQUNTX0NPTkZJR19PUFRJT05TICIiCnwgI2RlZmluZSBIQVZFX1hfV0lORE9XUyAxCnwg I2RlZmluZSBIQVZFX1gxMSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9BVFRSSUJVVEVfQUxJ R05FRCAxCnwgI2RlZmluZSBIQVZFX1RZUEVPRiAxCnwgI2RlZmluZSBIQVZFX1NUQVRFTUVO VF9FWFBSRVNTSU9OUyAxCnwgI2RlZmluZSBNQUxMT0NfMF9JU19OT05OVUxMIDEKfCAjZGVm aW5lIEhBVkVfU1lTX0FDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GSUxFIDEKfCAj ZGVmaW5lIEhBVkVfQUNMX0dFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRklMRSAx CnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJFRSAx CnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX01PREUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJP TV9URVhUIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0RFTEVURV9ERUZfRklMRSAxCnwgI2RlZmlu ZSBIQVZFX0FDTF9FWFRFTkRFRF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0xJQkFDTF9I IDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VOVFJJRVMgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRklS U1RfRU5UUlkgMQp8ICNkZWZpbmUgVVNFX0FDTCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQV9I IDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIExTVEFUX0ZPTExPV1NfU0xB U0hFRF9TWU1MSU5LIDEKfCAjZGVmaW5lIEZVTkNfUkVBTFBBVEhfV09SS1MgMQp8ICNkZWZp bmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9HRVRDV0QgMQp8ICNkZWZpbmUg cmVzdHJpY3QgX19yZXN0cmljdF9fCnwgI2RlZmluZSBIQVZFX0VOVklST05fREVDTCAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfU1RSTU9ERSAwCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEK fCAjZGVmaW5lIEhBVkVfR0VUT1BUX0xPTkdfT05MWSAxCnwgI2RlZmluZSBIQVZFX0xPTkdf TE9OR19JTlQgMQp8ICNkZWZpbmUgSEFWRV9VTlNJR05FRF9MT05HX0xPTkdfSU5UIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9NRU1NRU0gMQp8ICNkZWZpbmUgSEFWRV9ERUNMX01FTVJDSFIg MQp8ICNkZWZpbmUgSEFWRV9NSU5NQVhfSU5fU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgVElN RV9UX0lTX1NJR05FRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfQUxBUk0gMQp8ICNkZWZpbmUg SEFWRV9TVFJVQ1RfVE1fVE1fWk9ORSAxCnwgI2RlZmluZSBIQVZFX1RNX1pPTkUgMQp8ICNk ZWZpbmUgSEFWRV9UTV9HTVRPRkYgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRVRfVCAxCnwgI2Rl ZmluZSBIQVZFX1dDSEFSX1QgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZDTE9TRUFMTCAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfR0VUVyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUFVUVyAxCnwg I2RlZmluZSBfX1VTRV9NSU5HV19BTlNJX1NURElPIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9F Q1ZUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GQ1ZUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9H Q1ZUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJOTEVOIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9TVFJUT0lNQVggMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8c3lz L3R5cGVzLmg+CnwgICAgICAjaW5jbHVkZSA8c3lzL3N0YXQuaD4KfCAKfCBpbnQKfCBtYWlu ICh2b2lkKQp8IHsKfCBpZiAoc2l6ZW9mICgobmxpbmtfdCkpKQp8IAkgICAgcmV0dXJuIDA7 CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZTozMzA0ODogcmVzdWx0OiB5ZXMK Y29uZmlndXJlOjMzMTY4OiBjaGVja2luZyBmb3Igc3RydWN0IHRpbWVzcGVjIGluIDx0aW1l Lmg+CmNvbmZpZ3VyZTozMzE4NjogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUK Y29uZmlndXJlOjMzMTg2OiAkPyA9IDAKY29uZmlndXJlOjMzMTk0OiByZXN1bHQ6IHllcwpj b25maWd1cmU6MzMzODY6IGNoZWNraW5nIGZvciBUSU1FX1VUQyBpbiA8dGltZS5oPgpjb25m aWd1cmU6MzM0MDQ6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3Vy ZTozMzQwNDogJD8gPSAwCmNvbmZpZ3VyZTozMzQxMjogcmVzdWx0OiB5ZXMKY29uZmlndXJl OjMzNDIyOiBjaGVja2luZyB3aGV0aGVyIGV4ZWN2cGUgaXMgZGVjbGFyZWQKY29uZmlndXJl OjMzNDIyOiBnY2MgLWMgLWczIC1PMiAgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjMz NDIyOiAkPyA9IDAKY29uZmlndXJlOjMzNDIyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzM1 MzM6IGNoZWNraW5nIHdoZXRoZXIgY2xlYXJlcnJfdW5sb2NrZWQgaXMgZGVjbGFyZWQKY29u ZmlndXJlOjMzNTMzOiBnY2MgLWMgLWczIC1PMiAgICAgY29uZnRlc3QuYyA+JjUKY29uZmln dXJlOjMzNTMzOiAkPyA9IDAKY29uZmlndXJlOjMzNTMzOiByZXN1bHQ6IHllcwpjb25maWd1 cmU6MzM1NDI6IGNoZWNraW5nIHdoZXRoZXIgZmVvZl91bmxvY2tlZCBpcyBkZWNsYXJlZApj b25maWd1cmU6MzM1NDI6IGdjYyAtYyAtZzMgLU8yICAgICBjb25mdGVzdC5jID4mNQpjb25m aWd1cmU6MzM1NDI6ICQ/ID0gMApjb25maWd1cmU6MzM1NDI6IHJlc3VsdDogeWVzCmNvbmZp Z3VyZTozMzU1MTogY2hlY2tpbmcgd2hldGhlciBmZXJyb3JfdW5sb2NrZWQgaXMgZGVjbGFy ZWQKY29uZmlndXJlOjMzNTUxOiBnY2MgLWMgLWczIC1PMiAgICAgY29uZnRlc3QuYyA+JjUK Y29uZmlndXJlOjMzNTUxOiAkPyA9IDAKY29uZmlndXJlOjMzNTUxOiByZXN1bHQ6IHllcwpj b25maWd1cmU6MzM1NjA6IGNoZWNraW5nIHdoZXRoZXIgZmZsdXNoX3VubG9ja2VkIGlzIGRl Y2xhcmVkCmNvbmZpZ3VyZTozMzU2MDogZ2NjIC1jIC1nMyAtTzIgICAgIGNvbmZ0ZXN0LmMg PiY1CmNvbmZpZ3VyZTozMzU2MDogJD8gPSAwCmNvbmZpZ3VyZTozMzU2MDogcmVzdWx0OiB5 ZXMKY29uZmlndXJlOjMzNTY5OiBjaGVja2luZyB3aGV0aGVyIGZnZXRzX3VubG9ja2VkIGlz IGRlY2xhcmVkCmNvbmZpZ3VyZTozMzU2OTogZ2NjIC1jIC1nMyAtTzIgICAgIGNvbmZ0ZXN0 LmMgPiY1CmNvbmZpZ3VyZTozMzU2OTogJD8gPSAwCmNvbmZpZ3VyZTozMzU2OTogcmVzdWx0 OiB5ZXMKY29uZmlndXJlOjMzNTc4OiBjaGVja2luZyB3aGV0aGVyIGZwdXRjX3VubG9ja2Vk IGlzIGRlY2xhcmVkCmNvbmZpZ3VyZTozMzU3ODogZ2NjIC1jIC1nMyAtTzIgICAgIGNvbmZ0 ZXN0LmMgPiY1CmNvbmZpZ3VyZTozMzU3ODogJD8gPSAwCmNvbmZpZ3VyZTozMzU3ODogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjMzNTg3OiBjaGVja2luZyB3aGV0aGVyIGZwdXRzX3VubG9j a2VkIGlzIGRlY2xhcmVkCmNvbmZpZ3VyZTozMzU4NzogZ2NjIC1jIC1nMyAtTzIgICAgIGNv bmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozMzU4NzogJD8gPSAwCmNvbmZpZ3VyZTozMzU4Nzog cmVzdWx0OiB5ZXMKY29uZmlndXJlOjMzNTk2OiBjaGVja2luZyB3aGV0aGVyIGZyZWFkX3Vu bG9ja2VkIGlzIGRlY2xhcmVkCmNvbmZpZ3VyZTozMzU5NjogZ2NjIC1jIC1nMyAtTzIgICAg IGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozMzU5NjogJD8gPSAwCmNvbmZpZ3VyZTozMzU5 NjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjMzNjA1OiBjaGVja2luZyB3aGV0aGVyIGZ3cml0 ZV91bmxvY2tlZCBpcyBkZWNsYXJlZApjb25maWd1cmU6MzM2MDU6IGdjYyAtYyAtZzMgLU8y ICAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzM2MDU6ICQ/ID0gMApjb25maWd1cmU6 MzM2MDU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMzYxNDogY2hlY2tpbmcgd2hldGhlciBn ZXRjX3VubG9ja2VkIGlzIGRlY2xhcmVkCmNvbmZpZ3VyZTozMzYxNDogZ2NjIC1jIC1nMyAt TzIgICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozMzYxNDogJD8gPSAwCmNvbmZpZ3Vy ZTozMzYxNDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjMzNjIzOiBjaGVja2luZyB3aGV0aGVy IGdldGNoYXJfdW5sb2NrZWQgaXMgZGVjbGFyZWQKY29uZmlndXJlOjMzNjIzOiBnY2MgLWMg LWczIC1PMiAgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjMzNjIzOiAkPyA9IDAKY29u ZmlndXJlOjMzNjIzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzM2MzI6IGNoZWNraW5nIHdo ZXRoZXIgcHV0Y191bmxvY2tlZCBpcyBkZWNsYXJlZApjb25maWd1cmU6MzM2MzI6IGdjYyAt YyAtZzMgLU8yICAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzM2MzI6ICQ/ID0gMApj b25maWd1cmU6MzM2MzI6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMzY0MTogY2hlY2tpbmcg d2hldGhlciBwdXRjaGFyX3VubG9ja2VkIGlzIGRlY2xhcmVkCmNvbmZpZ3VyZTozMzY0MTog Z2NjIC1jIC1nMyAtTzIgICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozMzY0MTogJD8g PSAwCmNvbmZpZ3VyZTozMzY0MTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjMzNjUwOiBjaGVj a2luZyB0eXBlIG9mIGFycmF5IGFyZ3VtZW50IHRvIGdldGdyb3Vwcwpjb25maWd1cmU6MzM2 ODY6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAgID4mNSAKY29u ZmlndXJlOjMzNjg2OiAkPyA9IDAKY29uZmlndXJlOjMzNjg2OiAuL2NvbmZ0ZXN0CmNvbmZp Z3VyZTozMzY4NjogJD8gPSAwCmNvbmZpZ3VyZTozMzcxMzogcmVzdWx0OiBnaWRfdApjb25m aWd1cmU6MzM3MjA6IGNoZWNraW5nIHdoZXRoZXIgZ2V0ZHRhYmxlc2l6ZSBpcyBkZWNsYXJl ZApjb25maWd1cmU6MzM3MjA6IGdjYyAtYyAtZzMgLU8yICAgICBjb25mdGVzdC5jID4mNQpj b25maWd1cmU6MzM3MjA6ICQ/ID0gMApjb25maWd1cmU6MzM3MjA6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZTozMzczMDogY2hlY2tpbmcgd2hldGhlciBtYWxsb2MgaXMgcHRyZGlmZl90IHNh ZmUKY29uZmlndXJlOjMzNzY3OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpj b25maWd1cmU6MzM3Njc6ICQ/ID0gMApjb25maWd1cmU6MzM3NzY6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZTozMzc4NjogY2hlY2tpbmcgd2hldGhlciBtYWxsb2MsIHJlYWxsb2MsIGNhbGxv YyBzZXQgZXJybm8gb24gZmFpbHVyZQpjb25maWd1cmU6MzM4MDQ6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZTozMzgyMDogY2hlY2tpbmcgZm9yIE9fQ0xPRVhFQwpjb25maWd1cmU6MzM4NDE6 IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozMzg0MTogJD8g PSAwCmNvbmZpZ3VyZTozMzg0OTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjMzODU0OiBjaGVj a2luZyBmb3IgcHJvbW90ZWQgbW9kZV90IHR5cGUKY29uZmlndXJlOjMzODcyOiBnY2MgLWMg LWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiAnbWFp bic6CmNvbmZ0ZXN0LmM6MzY3OjEzOiBlcnJvcjogc2l6ZSBvZiBhcnJheSAnYXJyYXknIGlz IG5lZ2F0aXZlCiAgMzY3IHwgdHlwZWRlZiBpbnQgYXJyYXlbMiAqIChzaXplb2YgKG1vZGVf dCkgPCBzaXplb2YgKGludCkpIC0gMV07CiAgICAgIHwgICAgICAgICAgICAgXn5+fn4KY29u ZmlndXJlOjMzODcyOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6Cnwg LyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwg I2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJT SU9OICIzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAzMC4w LjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9y ZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJodHRwczovL3d3dy5nbnUub3JnL3NvZnR3YXJl L2VtYWNzLyIKfCAjZGVmaW5lIEhBVkVfUERVTVBFUiAxCnwgI2RlZmluZSBIQVZFX1NURElP X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19I IDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9I IDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1RE X0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfRlNf SCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lO Rk9fSCAxCnwgI2RlZmluZSBIQVZFX1BUWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09V UkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVf UFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1QX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVEla RVJfTFNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9BU0FOX0lO VEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0NPTU1PTl9JTlRFUkZBQ0Vf REVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfVU5fSCAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVf RVhFQ0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1NURElPX0VYVF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1ZGU19IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfQ0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUg SEFWRV9JRUVFNzU0X0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NUREJPT0xfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19SQU5ET01fSCAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZp bmUgX0FMTF9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmlu ZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBfSFBVWF9BTFRfWE9QRU5fU09DS0VUX0FQSSAx CnwgI2RlZmluZSBfTkVUQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfT1BFTkJTRF9TT1VSQ0Ug MQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9fU1RE Q19XQU5UX0lFQ182MDU1OV9BVFRSSUJTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5U X0lFQ182MDU1OV9CRlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5 X0RGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRVhUX18gMQp8 ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0ZVTkNTX0VYVF9fIDEKfCAjZGVmaW5l IF9fU1REQ19XQU5UX0lFQ182MDU1OV9UWVBFU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENf V0FOVF9MSUJfRVhUMl9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX01BVEhfU1BFQ19GVU5D U19fIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9O U19fIDEKfCAjZGVmaW5lIEdDQ19MSU5UIDEKfCAjZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUv bGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAxCnwgI2RlZmluZSBIQVZF X0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwgI2RlZmluZSBIQVZFX1BFUlNPTkFM SVRZX0FERFJfTk9fUkFORE9NSVpFIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5GTyAx CnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUgSEFWRV9URVJNX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUX0lGX0gg MQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZS RVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9IV0FERFIg MQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX05FVE1BU0sgMQp8ICNkZWZpbmUg SEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVD VF9JRlJFUV9JRlJfQUREUiAxCnwgI2RlZmluZSBIQVZFX1NCUksgMQp8ICNkZWZpbmUgSEFW RV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9W Rk9SSyAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0NBTk9OSUNB TElaRV9GSUxFX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9SRUFMUEFUSCAxCnwgI2RlZmluZSBI QVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EQVQgMQp8ICNkZWZpbmUgSEFWRV9M Q0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJ UiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwg I2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8 ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElO SyAxCnwgI2RlZmluZSBIQVZFX0lTQkxBTksgMQp8ICNkZWZpbmUgSEFWRV9JU1dDVFlQRSAx CnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8 ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJ WkUgMQp8ICNkZWZpbmUgU1lTVEVNX01BTExPQyAxCnwgI2RlZmluZSBIQVZFX01NQVAgMQp8 ICNkZWZpbmUgSEFWRV9QVEhSRUFEIDEKfCAjZGVmaW5lIFRIUkVBRFNfRU5BQkxFRCAxCnwg I2RlZmluZSBIQVZFX1hLQiAxCnwgI2RlZmluZSBIQVZFX1hLQlJFRlJFU0hLRVlCT0FSRE1B UFBJTkcgMQp8ICNkZWZpbmUgSEFWRV9YS0JGUkVFTkFNRVMgMQp8ICNkZWZpbmUgSEFWRV9Y Uk1TRVREQVRBQkFTRSAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNPVVJDRVNUUklORyAx CnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJPRlNDUkVFTiAxCnwgI2RlZmluZSBIQVZF X1hESVNQTEFZQ0VMTFMgMQp8ICNkZWZpbmUgSEFWRV9YREVTVFJPWVNVQldJTkRPV1MgMQp8 ICNkZWZpbmUgSEFWRV9YMTFSNiAxCnwgI2RlZmluZSBIQVZFX1hfSTE4TiAxCnwgI2RlZmlu ZSBIQVZFX1hJQ0NBTExCQUNLX0NBTExCQUNLIDEKfCAjZGVmaW5lIEhBVkVfWDExUjZfWElN IDEKfCAjZGVmaW5lIEhBVkVfUlNWRyAxCnwgI2RlZmluZSBIQVZFX1dFQlAgMQp8ICNkZWZp bmUgSEFWRV9TUUxJVEUzIDEKfCAjZGVmaW5lIEhBVkVfU1FMSVRFM19MT0FEX0VYVEVOU0lP TiAxCnwgI2RlZmluZSBIQVZFX0dFVEFERFJJTkZPX0EgMQp8ICNkZWZpbmUgSEFWRV9HVEsz IDEKfCAjZGVmaW5lIEdES19ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVm aW5lIEdMSUJfRElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAxCnwgI2RlZmluZSBVU0Vf R1RLIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX1RSSU0gMQp8ICNkZWZpbmUgSEFWRV9EQlVT IDEKfCAjZGVmaW5lIEhBVkVfREJVU19XQVRDSF9HRVRfVU5JWF9GRCAxCnwgI2RlZmluZSBI QVZFX0RCVVNfVFlQRV9JU19WQUxJRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVf QlVTX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX1BBVEggMQp8ICNkZWZp bmUgSEFWRV9EQlVTX1ZBTElEQVRFX0lOVEVSRkFDRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNf VkFMSURBVEVfTUVNQkVSIDEKfCAjZGVmaW5lIEhBVkVfR1NFVFRJTkdTIDEKfCAjZGVmaW5l IEhBVkVfTElCU0VMSU5VWCAxCnwgI2RlZmluZSBIQVZFX0dOVVRMUyAxCnwgI2RlZmluZSBI QVZFX0xJQlNZU1RFTUQgMQp8ICNkZWZpbmUgSEFWRV9KU09OIDEKfCAjZGVmaW5lIEhBVkVf SU5PVElGWSAxCnwgI2RlZmluZSBVU0VfRklMRV9OT1RJRlkgMQp8ICNkZWZpbmUgVVNFX1RP T0xLSVRfU0NST0xMX0JBUlMgMQp8ICNkZWZpbmUgSEFWRV9YSU0gMQp8ICNkZWZpbmUgVVNF X1hJTSAxCnwgI2RlZmluZSBIQVZFX1hSRU5ERVIgMQp8ICNkZWZpbmUgVVNFX0NBSVJPX1hD QiAxCnwgI2RlZmluZSBVU0VfQ0FJUk8gMQp8ICNkZWZpbmUgSEFWRV9GUkVFVFlQRSAxCnwg I2RlZmluZSBIQVZFX0ZUX0ZBQ0VfR0VUQ0hBUlZBUklBTlRJTkRFWCAxCnwgI2RlZmluZSBI QVZFX0xJQk9URiAxCnwgI2RlZmluZSBIQVZFX09URl9HRVRfVkFSSUFUSU9OX0dMWVBIUyAx CnwgI2RlZmluZSBIQVZFX00xN05fRkxUIDEKfCAjZGVmaW5lIEhBVkVfSEFSRkJVWlogMQp8 ICNkZWZpbmUgVVNFX1hDQiAxCnwgI2RlZmluZSBIQVZFX1hQTSAxCnwgI2RlZmluZSBIQVZF X0pQRUcgMQp8ICNkZWZpbmUgSEFWRV9MQ01TMiAxCnwgI2RlZmluZSBIQVZFX1pMSUIgMQp8 ICNkZWZpbmUgRFlOQU1JQ19MSUJfU1VGRklYICIuc28iCnwgI2RlZmluZSBEWU5BTUlDX0xJ Ql9TRUNPTkRBUllfU1VGRklYICIiCnwgI2RlZmluZSBIQVZFX0RMQUREUiAxCnwgI2RlZmlu ZSBIQVZFX01PRFVMRVMgMQp8ICNkZWZpbmUgTU9EVUxFU19TVUZGSVggIi5zbyIKfCAjZGVm aW5lIE5BVElWRV9FTElTUF9TVUZGSVggIi5lbG4iCnwgI2RlZmluZSBIQVZFX1BORyAxCnwg I2RlZmluZSBIQVZFX1RJRkYgMQp8ICNkZWZpbmUgSEFWRV9HSUYgMQp8ICNkZWZpbmUgSEFW RV9HUE0gMQp8ICNkZWZpbmUgSEFWRV9YX1NNIDEKfCAjZGVmaW5lIEhBVkVfWFJBTkRSIDEK fCAjZGVmaW5lIEhBVkVfWElORVJBTUEgMQp8ICNkZWZpbmUgSEFWRV9YRklYRVMgMQp8ICNk ZWZpbmUgSEFWRV9YSU5QVVQyIDEKfCAjZGVmaW5lIEhBVkVfWElTQ1JPTExDTEFTU0lORk9f VFlQRSAxCnwgI2RlZmluZSBIQVZFX1hJVE9VQ0hDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmlu ZSBIQVZFX1hJQkFSUklFUlJFTEVBU0VQT0lOVEVSSU5GT19ERVZJQ0VJRCAxCnwgI2RlZmlu ZSBIQVZFX1hJR0VTVFVSRUNMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWFNZTkMg MQp8ICNkZWZpbmUgSEFWRV9YU1lOQ1RSSUdHRVJGRU5DRSAxCnwgI2RlZmluZSBIQVZFX1hE QkUgMQp8ICNkZWZpbmUgSEFWRV9YQ0JfU0hBUEUgMQp8ICNkZWZpbmUgSEFWRV9YU0hBUEUg MQp8ICNkZWZpbmUgSEFWRV9YQ09NUE9TSVRFIDEKfCAjZGVmaW5lIEhBVkVfTElCWE1MMiAx CnwgI2RlZmluZSBIQVZFX0xJTlVYX1NFQ0NPTVBfSCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xf U0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBf RklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GSUxURVJfSCAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgU0laRU9G X0xPTkcgOAp8ICNkZWZpbmUgSEFWRV9BQ0NFUFQ0IDEKfCAjZGVmaW5lIEhBVkVfRkNIRElS IDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNB R0UgMQp8ICNkZWZpbmUgSEFWRV9HRVRfQ1VSUkVOVF9ESVJfTkFNRSAxCnwgI2RlZmluZSBI QVZFX0xSQU5ENDggMQp8ICNkZWZpbmUgSEFWRV9SQU5ET00gMQp8ICNkZWZpbmUgSEFWRV9S SU5UIDEKfCAjZGVmaW5lIEhBVkVfVFJVTkMgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8 ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FMRSAx CnwgI2RlZmluZSBIQVZFX05FV0xPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJMSU1JVCAx CnwgI2RlZmluZSBIQVZFX1NFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEK fCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSU0lH TkFMIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfU0VORFRP IDEKfCAjZGVmaW5lIEhBVkVfUkVDVkZST00gMQp8ICNkZWZpbmUgSEFWRV9HRVRTT0NLTkFN RSAxCnwgI2RlZmluZSBIQVZFX0dFVElGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9GUkVFSUZB RERSUyAxCnwgI2RlZmluZSBIQVZFX0dBSV9TVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZFX1NZ TkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0VORFBXRU5U IDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRHUkVOVCAx CnwgI2RlZmluZSBIQVZFX1JFTkFNRUFUMiAxCnwgI2RlZmluZSBIQVZFX0NGTUFLRVJBVyAx CnwgI2RlZmluZSBIQVZFX0NGU0VUU1BFRUQgMQp8ICNkZWZpbmUgSEFWRV9fX0VYRUNVVEFC TEVfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9MT0cyIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVB RF9TRVROQU1FX05QIDEKfCAjZGVmaW5lIEhBVkVfQUxJR05FRF9BTExPQyAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfQUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX01BRFZJ U0UgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fRlJBTUVfQUREUkVTUyAxCnwgI2RlZmlu ZSBIQVZFX19fQlVJTFRJTl9VTldJTkRfSU5JVCAxCnwgI2RlZmluZSBIQVZFX0ZTRUVLTyAx CnwgI2RlZmluZSBIQVZFX0dSQU5UUFQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQVCAxCnwgI2Rl ZmluZSBIQVZFX1BPU0lYX09QRU5QVCAxCnwgI2RlZmluZSBURVJNSU5GTyAxCnwgI2RlZmlu ZSBURVJNSU5GT19ERUZJTkVTX0JDIDEKfCAjZGVmaW5lIEhBVkVfVElNRVJGRCAxCnwgI2Rl ZmluZSBIQVZFX1ZBTEdSSU5EX1ZBTEdSSU5EX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1Rf VU5JUEFJUl9VTklDT0RFIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwgI2Rl ZmluZSBIQVZFX1dPUktJTkdfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1NOUFJJTlRGIDEKfCAj ZGVmaW5lIEhBVkVfU1BBV05fSCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOIDEKfCAj ZGVmaW5lIEhBVkVfUE9TSVhfU1BBV05fRklMRV9BQ1RJT05TX0FERENIRElSX05QIDEKfCAj ZGVmaW5lIEhBVkVfUE9TSVhfU1BBV05BVFRSX1NFVEZMQUdTIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9QT1NJWF9TUEFXTl9TRVRTSUQgMQp8ICNkZWZpbmUgSEFWRV9HTElCIDEKfCAjZGVm aW5lIEhBVkVfTEFOR0lORk9fQ09ERVNFVCAxCnwgI2RlZmluZSBIQVZFX0xBTkdJTkZPX19O TF9QQVBFUl9XSURUSCAxCnwgI2RlZmluZSBIQVZFX01CU1RBVEVfVCAxCnwgI2RlZmluZSBB TVBFUlNBTkRfRlVMTF9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUFRZUyAxCnwgI2RlZmluZSBI QVZFX1NPQ0tFVFMgMQp8ICNkZWZpbmUgTlVMTF9ERVZJQ0UgIi9kZXYvbnVsbCIKfCAjZGVm aW5lIFNFUENIQVIgJzonCnwgI2RlZmluZSBzdWJwcm9jZXNzZXMgMQp8ICNkZWZpbmUgVVNF Ul9GVUxMX05BTUUgcHctPnB3X2dlY29zCnwgI2RlZmluZSBESVJFQ1RPUllfU0VQICcvJwp8 ICNkZWZpbmUgSVNfREVWSUNFX1NFUChfY18pIDAKfCAjZGVmaW5lIElTX0RJUkVDVE9SWV9T RVAoX2NfKSAoKF9jXykgPT0gRElSRUNUT1JZX1NFUCkKfCAjZGVmaW5lIElTX0FOWV9TRVAo X2NfKSAoSVNfRElSRUNUT1JZX1NFUCAoX2NfKSkKfCAjZGVmaW5lIEhBVkVfUFJPQ0ZTIDEK fCAjZGVmaW5lIERFRkFVTFRfU09VTkRfREVWSUNFICIvZGV2L2RzcCIKfCAjZGVmaW5lIElO VEVSUlVQVF9JTlBVVCAxCnwgI2RlZmluZSBOQVJST1dQUk9UTyAxCnwgI2RlZmluZSBVTklY OThfUFRZUyAxCnwgI2RlZmluZSBQVFlfSVRFUkFUSU9OIGludCBpOyBmb3IgKGkgPSAwOyBp IDwgMTsgaSsrKQp8ICNkZWZpbmUgUFRZX1RUWV9OQU1FX1NQUklOVEYgeyBjaGFyICpwdHlu YW1lID0gMDsgc2lnc2V0X3QgYmxvY2tlZDsgc2lnZW1wdHlzZXQgKCZibG9ja2VkKTsgc2ln YWRkc2V0ICgmYmxvY2tlZCwgU0lHQ0hMRCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX0JMT0NL LCAmYmxvY2tlZCwgMCk7IGlmIChncmFudHB0IChmZCkgIT0gLTEgJiYgdW5sb2NrcHQgKGZk KSAhPSAtMSkgcHR5bmFtZSA9IHB0c25hbWUoZmQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19V TkJMT0NLLCAmYmxvY2tlZCwgMCk7IGlmICghcHR5bmFtZSkgeyBlbWFjc19jbG9zZSAoZmQp OyByZXR1cm4gLTE7IH0gc25wcmludGYgKHB0eV9uYW1lLCBQVFlfTkFNRV9TSVpFLCAiJXMi LCBwdHluYW1lKTsgfQp8ICNkZWZpbmUgUFRZX09QRU4gZG8geyBmZCA9IHBvc2l4X29wZW5w dCAoT19SRFdSIHwgT19DTE9FWEVDIHwgT19OT0NUVFkpOyBpZiAoZmQgPCAwICYmIGVycm5v ID09IEVJTlZBTCkgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fTk9DVFRZKTsgfSB3 aGlsZSAoZmFsc2UpCnwgI2RlZmluZSBQVFlfTkFNRV9TUFJJTlRGIC8qKi8KfCAjZGVmaW5l IFNJR05BTFNfVklBX0NIQVJBQ1RFUlMgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEK fCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBIQVZFX19TRVRKTVAgMQp8 ICNkZWZpbmUgSEFWRV9TSUdTRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TVEFDS19PVkVSRkxP V19IQU5ETElORyAxCnwgI2RlZmluZSBVU0cgLyoqLwp8ICNkZWZpbmUgR05VX0xJTlVYIC8q Ki8KfCAjZGVmaW5lIFNJWkVPRl9TUEVFRF9UIDQKfCAjZGVmaW5lIFVTQUJMRV9GSU9OUkVB RCAxCnwgI2RlZmluZSBVU0FCTEVfU0lHSU8gMQp8ICNkZWZpbmUgQ09QWVJJR0hUICJDb3B5 cmlnaHQgKEMpIDIwMjMgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuIgp8ICNkZWZp bmUgVEVSTV9IRUFERVIgImd0a3V0aWwuaCIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR1VSQVRJ T04gIng4Nl82NC1wYy1saW51eC1nbnUiCnwgI2RlZmluZSBFTUFDU19DT05GSUdfT1BUSU9O UyAiIgp8ICNkZWZpbmUgSEFWRV9YX1dJTkRPV1MgMQp8ICNkZWZpbmUgSEFWRV9YMTEgMQp8 ICNkZWZpbmUgSEFWRV9TVFJVQ1RfQVRUUklCVVRFX0FMSUdORUQgMQp8ICNkZWZpbmUgSEFW RV9UWVBFT0YgMQp8ICNkZWZpbmUgSEFWRV9TVEFURU1FTlRfRVhQUkVTU0lPTlMgMQp8ICNk ZWZpbmUgTUFMTE9DXzBfSVNfTk9OTlVMTCAxCnwgI2RlZmluZSBIQVZFX1NZU19BQ0xfSCAx CnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRf RkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xf U0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZSRUUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xf RlJPTV9NT0RFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZST01fVEVYVCAxCnwgI2RlZmluZSBI QVZFX0FDTF9ERUxFVEVfREVGX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRVhURU5ERURf RklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9MSUJBQ0xfSCAxCnwgI2RlZmluZSBIQVZFX0FD TF9FTlRSSUVTIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZJUlNUX0VOVFJZIDEKfCAjZGVmaW5l IFVTRV9BQ0wgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAxCnwgI2RlZmluZSBIQVZFX0FM TE9DQSAxCnwgI2RlZmluZSBMU1RBVF9GT0xMT1dTX1NMQVNIRURfU1lNTElOSyAxCnwgI2Rl ZmluZSBGVU5DX1JFQUxQQVRIX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfRkFDQ0VTU0FUIDEK fCAjZGVmaW5lIEhBVkVfR0VUQ1dEIDEKfCAjZGVmaW5lIHJlc3RyaWN0IF9fcmVzdHJpY3Rf Xwp8ICNkZWZpbmUgSEFWRV9FTlZJUk9OX0RFQ0wgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NU Uk1PREUgMAp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9Q VF9MT05HX09OTFkgMQp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5l IEhBVkVfVU5TSUdORURfTE9OR19MT05HX0lOVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfTUVN TUVNIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9NRU1SQ0hSIDEKfCAjZGVmaW5lIEhBVkVfTUlO TUFYX0lOX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIFRJTUVfVF9JU19TSUdORUQgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX0FMQVJNIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1RNX1RNX1pP TkUgMQp8ICNkZWZpbmUgSEFWRV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fR01UT0ZG IDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUX1QgMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9UIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9GQ0xPU0VBTEwgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dF VFcgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BVVFcgMQp8ICNkZWZpbmUgX19VU0VfTUlOR1df QU5TSV9TVERJTyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRUNWVCAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfRkNWVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0NWVCAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfU1RSTkxFTiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSVE9JTUFYIDEKfCAjZGVm aW5lIF9VU0VfU1REX1NUQVQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VYRUNWUEUgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX0NMRUFSRVJSX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9GRU9GX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRVJST1JfVU5MT0NLRUQg MQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZGTFVTSF9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfRkdFVFNfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZQVVRDX1VOTE9D S0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GUFVUU19VTkxPQ0tFRCAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfRlJFQURfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZXUklURV9V TkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VUQ19VTkxPQ0tFRCAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfR0VUQ0hBUl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUFVU Q19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUFVUQ0hBUl9VTkxPQ0tFRCAxCnwg I2RlZmluZSBHRVRHUk9VUFNfVCBnaWRfdAp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVERUQUJM RVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfUE9TSVggMQp8IC8qIGVuZCBjb25mZGVm cy5oLiAgKi8KfCAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgaW50CnwgbWFpbiAodm9pZCkK fCB7CnwgdHlwZWRlZiBpbnQgYXJyYXlbMiAqIChzaXplb2YgKG1vZGVfdCkgPCBzaXplb2Yg KGludCkpIC0gMV07CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZTozMzg4MTog cmVzdWx0OiBtb2RlX3QKY29uZmlndXJlOjMzODk1OiBjaGVja2luZyB3aGV0aGVyIHRoZSB1 dGltZXMgZnVuY3Rpb24gd29ya3MKY29uZmlndXJlOjM0MDM2OiBnY2MgLW8gY29uZnRlc3Qg LWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCmNvbmZpZ3VyZTozNDAzNjogJD8gPSAw CmNvbmZpZ3VyZTozNDAzNjogLi9jb25mdGVzdApjb25maWd1cmU6MzQwMzY6ICQ/ID0gMApj b25maWd1cmU6MzQwNDg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozNDA2MTogY2hlY2tpbmcg Zm9yIEMgY29tcGlsZXIgb3B0aW9uIHRvIGFsbG93IHdhcm5pbmdzCmNvbmZpZ3VyZTozNDA3 MDogZ2NjIC1nMyAtTzIgICAgLWMgY29uZnRlc3QuYyAyPmNvbmZ0ZXN0MS5lcnIKY29uZmln dXJlOjM0MDczOiAkPyA9IDAKY29uZmlndXJlOjM0MDc2OiBnY2MgLWczIC1PMiAgICAtV25v LWVycm9yIC1jIGNvbmZ0ZXN0LmMgMj5jb25mdGVzdDIuZXJyCmNvbmZpZ3VyZTozNDA3OTog JD8gPSAwCmNvbmZpZ3VyZTozNDA4OTogcmVzdWx0OiAtV25vLWVycm9yCmNvbmZpZ3VyZToz NDEyOTogZ2NjIC1nMyAtTzIgICAgLUUgY29uZnRlc3QuYyA+IGNvbmZ0ZXN0Lm91dApjb25m aWd1cmU6MzQxMzI6ICQ/ID0gMApjb25maWd1cmU6MzQxNjY6IGNoZWNraW5nIGZvciBhbGln bmFzIGFuZCBhbGlnbm9mCmNvbmZpZ3VyZTozNDIyNDogZ2NjIC1jIC1nMyAtTzIgICAgY29u ZnRlc3QuYyA+JjUKY29uZnRlc3QuYzozODI6MzE6IHdhcm5pbmc6IGltcGxpY2l0IGRlY2xh cmF0aW9uIG9mIGZ1bmN0aW9uICdhbGlnbm9mJyBbLVdpbXBsaWNpdC1mdW5jdGlvbi1kZWNs YXJhdGlvbl0KICAzODIgfCAgICAgICAgICAgICBjaGFyIHRlc3RfYWxpZ25vZlthbGlnbm9m IChkb3VibGUpID09IF9BbGlnbm9mIChkb3VibGUpID8gMSA6IC0xXTsKICAgICAgfCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+CmNvbmZ0ZXN0LmM6MzgyOjQwOiBl cnJvcjogZXhwZWN0ZWQgZXhwcmVzc2lvbiBiZWZvcmUgJ2RvdWJsZScKICAzODIgfCAgICAg ICAgICAgICBjaGFyIHRlc3RfYWxpZ25vZlthbGlnbm9mIChkb3VibGUpID09IF9BbGlnbm9m IChkb3VibGUpID8gMSA6IC0xXTsKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBefn5+fn4KY29uZnRlc3QuYzozODY6NTk6IGVycm9yOiBleHBlY3Rl ZCBkZWNsYXJhdGlvbiBzcGVjaWZpZXJzIG9yICcuLi4nIGJlZm9yZSBudW1lcmljIGNvbnN0 YW50CiAgMzg2IHwgICAgICAgICAgICAgICBzdHJ1Y3QgYWxpZ25hc190ZXN0IHsgY2hhciBj OyBjaGFyIGFsaWduYXMgKDgpIGFsaWduYXNfODsgfTsKICAgICAgfCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgpjb25mdGVz dC5jOjM4Njo3Mzogd2FybmluZzogbm8gc2VtaWNvbG9uIGF0IGVuZCBvZiBzdHJ1Y3Qgb3Ig dW5pb24KICAzODYgfCAgICAgICAgICAgICAgIHN0cnVjdCBhbGlnbmFzX3Rlc3QgeyBjaGFy IGM7IGNoYXIgYWxpZ25hcyAoOCkgYWxpZ25hc184OyB9OwogICAgICB8ICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIF4KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIGNvbmZ0ZXN0LmM6MzY5Ogpjb25mdGVz dC5jOjM4NzozMzogZXJyb3I6ICdzdHJ1Y3QgYWxpZ25hc190ZXN0JyBoYXMgbm8gbWVtYmVy IG5hbWVkICdhbGlnbmFzXzgnCiAgMzg3IHwgICAgICAgICAgICAgICBjaGFyIHRlc3RfYWxp Z25hc1tvZmZzZXRvZiAoc3RydWN0IGFsaWduYXNfdGVzdCwgYWxpZ25hc184KSA9PSA4CiAg ICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+fgpjb25maWd1 cmU6MzQyMjQ6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBj b25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVm aW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04g IjMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDMwLjAuNTAi CnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8 ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHBzOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1h Y3MvIgp8ICNkZWZpbmUgSEFWRV9QRFVNUEVSIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fSCAx CnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8 ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8 ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAx CnwgI2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GU19IIDEK fCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19I IDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0Vf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0Rf SCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9M U0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0FTQU5fSU5URVJG QUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQ09NTU9OX0lOVEVSRkFDRV9ERUZT X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf UEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVD SU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfVkZTX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19DREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZF X0lFRUU3NTRfSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1JBTkRPTV9IIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBf QUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9H TlVfU09VUkNFIDEKfCAjZGVmaW5lIF9IUFVYX0FMVF9YT1BFTl9TT0NLRVRfQVBJIDEKfCAj ZGVmaW5lIF9ORVRCU0RfU09VUkNFIDEKfCAjZGVmaW5lIF9PUEVOQlNEX1NPVVJDRSAxCnwg I2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX19TVERDX1dB TlRfSUVDXzYwNTU5X0FUVFJJQlNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVD XzYwNTU5X0JGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfREZQ X0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9FWFRfXyAxCnwgI2Rl ZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRlVOQ1NfRVhUX18gMQp8ICNkZWZpbmUgX19T VERDX1dBTlRfSUVDXzYwNTU5X1RZUEVTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5U X0xJQl9FWFQyX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfTUFUSF9TUEVDX0ZVTkNTX18g MQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18g MQp8ICNkZWZpbmUgR0NDX0xJTlQgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51 eCIKfCAjZGVmaW5lIEhBVkVfU1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxT QSAxCnwgI2RlZmluZSBIQVZFX1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlf QUREUl9OT19SQU5ET01JWkUgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAj ZGVmaW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAxCnwg I2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwg I2RlZmluZSBIQVZFX0lGQUREUlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9J RlJfRkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwg I2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZF X1NUUlVDVF9JRlJFUV9JRlJfQlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lG UkVRX0lGUl9BRERSIDEKfCAjZGVmaW5lIEhBVkVfU0JSSyAxCnwgI2RlZmluZSBIQVZFX0dF VFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JL IDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfQ0FOT05JQ0FMSVpF X0ZJTEVfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1JFQUxQQVRIIDEKfCAjZGVmaW5lIEhBVkVf TFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0RBVCAxCnwgI2RlZmluZSBIQVZFX0xDSE1P RCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEK fCAjZGVmaW5lIEhBVkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVm aW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2Rl ZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEK fCAjZGVmaW5lIEhBVkVfSVNCTEFOSyAxCnwgI2RlZmluZSBIQVZFX0lTV0NUWVBFIDEKfCAj ZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2Rl ZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAx CnwgI2RlZmluZSBTWVNURU1fTUFMTE9DIDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2Rl ZmluZSBIQVZFX1BUSFJFQUQgMQp8ICNkZWZpbmUgVEhSRUFEU19FTkFCTEVEIDEKfCAjZGVm aW5lIEhBVkVfWEtCIDEKfCAjZGVmaW5lIEhBVkVfWEtCUkVGUkVTSEtFWUJPQVJETUFQUElO RyAxCnwgI2RlZmluZSBIQVZFX1hLQkZSRUVOQU1FUyAxCnwgI2RlZmluZSBIQVZFX1hSTVNF VERBVEFCQVNFIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RSSU5HIDEKfCAj ZGVmaW5lIEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhBVkVfWERJ U1BMQVlDRUxMUyAxCnwgI2RlZmluZSBIQVZFX1hERVNUUk9ZU1VCV0lORE9XUyAxCnwgI2Rl ZmluZSBIQVZFX1gxMVI2IDEKfCAjZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVmaW5lIEhB VkVfWElDQ0FMTEJBQ0tfQ0FMTEJBQ0sgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9YSU0gMQp8 ICNkZWZpbmUgSEFWRV9SU1ZHIDEKfCAjZGVmaW5lIEhBVkVfV0VCUCAxCnwgI2RlZmluZSBI QVZFX1NRTElURTMgMQp8ICNkZWZpbmUgSEFWRV9TUUxJVEUzX0xPQURfRVhURU5TSU9OIDEK fCAjZGVmaW5lIEhBVkVfR0VUQUREUklORk9fQSAxCnwgI2RlZmluZSBIQVZFX0dUSzMgMQp8 ICNkZWZpbmUgR0RLX0RJU0FCTEVfREVQUkVDQVRJT05fV0FSTklOR1MgMQp8ICNkZWZpbmUg R0xJQl9ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIFVTRV9HVEsg MQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfVFJJTSAxCnwgI2RlZmluZSBIQVZFX0RCVVMgMQp8 ICNkZWZpbmUgSEFWRV9EQlVTX1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVf REJVU19UWVBFX0lTX1ZBTElEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNf TkFNRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmluZSBI QVZFX0RCVVNfVkFMSURBVEVfSU5URVJGQUNFIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJ REFURV9NRU1CRVIgMQp8ICNkZWZpbmUgSEFWRV9HU0VUVElOR1MgMQp8ICNkZWZpbmUgSEFW RV9MSUJTRUxJTlVYIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhBVkVf TElCU1lTVEVNRCAxCnwgI2RlZmluZSBIQVZFX0pTT04gMQp8ICNkZWZpbmUgSEFWRV9JTk9U SUZZIDEKfCAjZGVmaW5lIFVTRV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBVU0VfVE9PTEtJ VF9TQ1JPTExfQkFSUyAxCnwgI2RlZmluZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBVU0VfWElN IDEKfCAjZGVmaW5lIEhBVkVfWFJFTkRFUiAxCnwgI2RlZmluZSBVU0VfQ0FJUk9fWENCIDEK fCAjZGVmaW5lIFVTRV9DQUlSTyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAjZGVm aW5lIEhBVkVfRlRfRkFDRV9HRVRDSEFSVkFSSUFOVElOREVYIDEKfCAjZGVmaW5lIEhBVkVf TElCT1RGIDEKfCAjZGVmaW5lIEhBVkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTIDEKfCAj ZGVmaW5lIEhBVkVfTTE3Tl9GTFQgMQp8ICNkZWZpbmUgSEFWRV9IQVJGQlVaWiAxCnwgI2Rl ZmluZSBVU0VfWENCIDEKfCAjZGVmaW5lIEhBVkVfWFBNIDEKfCAjZGVmaW5lIEhBVkVfSlBF RyAxCnwgI2RlZmluZSBIQVZFX0xDTVMyIDEKfCAjZGVmaW5lIEhBVkVfWkxJQiAxCnwgI2Rl ZmluZSBEWU5BTUlDX0xJQl9TVUZGSVggIi5zbyIKfCAjZGVmaW5lIERZTkFNSUNfTElCX1NF Q09OREFSWV9TVUZGSVggIiIKfCAjZGVmaW5lIEhBVkVfRExBRERSIDEKfCAjZGVmaW5lIEhB VkVfTU9EVUxFUyAxCnwgI2RlZmluZSBNT0RVTEVTX1NVRkZJWCAiLnNvIgp8ICNkZWZpbmUg TkFUSVZFX0VMSVNQX1NVRkZJWCAiLmVsbiIKfCAjZGVmaW5lIEhBVkVfUE5HIDEKfCAjZGVm aW5lIEhBVkVfVElGRiAxCnwgI2RlZmluZSBIQVZFX0dJRiAxCnwgI2RlZmluZSBIQVZFX0dQ TSAxCnwgI2RlZmluZSBIQVZFX1hfU00gMQp8ICNkZWZpbmUgSEFWRV9YUkFORFIgMQp8ICNk ZWZpbmUgSEFWRV9YSU5FUkFNQSAxCnwgI2RlZmluZSBIQVZFX1hGSVhFUyAxCnwgI2RlZmlu ZSBIQVZFX1hJTlBVVDIgMQp8ICNkZWZpbmUgSEFWRV9YSVNDUk9MTENMQVNTSU5GT19UWVBF IDEKfCAjZGVmaW5lIEhBVkVfWElUT1VDSENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhB VkVfWElCQVJSSUVSUkVMRUFTRVBPSU5URVJJTkZPX0RFVklDRUlEIDEKfCAjZGVmaW5lIEhB VkVfWElHRVNUVVJFQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQyAxCnwg I2RlZmluZSBIQVZFX1hTWU5DVFJJR0dFUkZFTkNFIDEKfCAjZGVmaW5lIEhBVkVfWERCRSAx CnwgI2RlZmluZSBIQVZFX1hDQl9TSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hTSEFQRSAxCnwg I2RlZmluZSBIQVZFX1hDT01QT1NJVEUgMQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwyIDEKfCAj ZGVmaW5lIEhBVkVfTElOVVhfU0VDQ09NUF9IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUND T01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9GSUxU RVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZJTFRFUl9IIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9TRUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfU0VDQ09NUF9GSUxURVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBTSVpFT0ZfTE9O RyA4CnwgI2RlZmluZSBIQVZFX0FDQ0VQVDQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hESVIgMQp8 ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJVU0FHRSAx CnwgI2RlZmluZSBIQVZFX0dFVF9DVVJSRU5UX0RJUl9OQU1FIDEKfCAjZGVmaW5lIEhBVkVf TFJBTkQ0OCAxCnwgI2RlZmluZSBIQVZFX1JBTkRPTSAxCnwgI2RlZmluZSBIQVZFX1JJTlQg MQp8ICNkZWZpbmUgSEFWRV9UUlVOQyAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2Rl ZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAj ZGVmaW5lIEhBVkVfTkVXTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAj ZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNk ZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJTSUdOQUwg MQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9TRU5EVE8gMQp8 ICNkZWZpbmUgSEFWRV9SRUNWRlJPTSAxCnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tOQU1FIDEK fCAjZGVmaW5lIEhBVkVfR0VUSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVJRkFERFJT IDEKfCAjZGVmaW5lIEhBVkVfR0FJX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAx CnwgI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EUFdFTlQgMQp8 ICNkZWZpbmUgSEFWRV9HRVRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0VOREdSRU5UIDEKfCAj ZGVmaW5lIEhBVkVfUkVOQU1FQVQyIDEKfCAjZGVmaW5lIEhBVkVfQ0ZNQUtFUkFXIDEKfCAj ZGVmaW5lIEhBVkVfQ0ZTRVRTUEVFRCAxCnwgI2RlZmluZSBIQVZFX19fRVhFQ1VUQUJMRV9T VEFSVCAxCnwgI2RlZmluZSBIQVZFX0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NF VE5BTUVfTlAgMQp8ICNkZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfTUFEVklTRSAx CnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9GUkFNRV9BRERSRVNTIDEKfCAjZGVmaW5lIEhB VkVfX19CVUlMVElOX1VOV0lORF9JTklUIDEKfCAjZGVmaW5lIEhBVkVfRlNFRUtPIDEKfCAj ZGVmaW5lIEhBVkVfR1JBTlRQVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBUIDEKfCAjZGVmaW5l IEhBVkVfUE9TSVhfT1BFTlBUIDEKfCAjZGVmaW5lIFRFUk1JTkZPIDEKfCAjZGVmaW5lIFRF Uk1JTkZPX0RFRklORVNfQkMgMQp8ICNkZWZpbmUgSEFWRV9USU1FUkZEIDEKfCAjZGVmaW5l IEhBVkVfVkFMR1JJTkRfVkFMR1JJTkRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9VTklQ QUlSX1VOSUNPREUgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5l IEhBVkVfV09SS0lOR19GT1JLIDEKfCAjZGVmaW5lIEhBVkVfU05QUklOVEYgMQp8ICNkZWZp bmUgSEFWRV9TUEFXTl9IIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV04gMQp8ICNkZWZp bmUgSEFWRV9QT1NJWF9TUEFXTl9GSUxFX0FDVElPTlNfQUREQ0hESVJfTlAgMQp8ICNkZWZp bmUgSEFWRV9QT1NJWF9TUEFXTkFUVFJfU0VURkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X1BPU0lYX1NQQVdOX1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX0dMSUIgMQp8ICNkZWZpbmUg SEFWRV9MQU5HSU5GT19DT0RFU0VUIDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fX05MX1BB UEVSX1dJRFRIIDEKfCAjZGVmaW5lIEhBVkVfTUJTVEFURV9UIDEKfCAjZGVmaW5lIEFNUEVS U0FORF9GVUxMX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9QVFlTIDEKfCAjZGVmaW5lIEhBVkVf U09DS0VUUyAxCnwgI2RlZmluZSBOVUxMX0RFVklDRSAiL2Rldi9udWxsIgp8ICNkZWZpbmUg U0VQQ0hBUiAnOicKfCAjZGVmaW5lIHN1YnByb2Nlc3NlcyAxCnwgI2RlZmluZSBVU0VSX0ZV TExfTkFNRSBwdy0+cHdfZ2Vjb3MKfCAjZGVmaW5lIERJUkVDVE9SWV9TRVAgJy8nCnwgI2Rl ZmluZSBJU19ERVZJQ0VfU0VQKF9jXykgMAp8ICNkZWZpbmUgSVNfRElSRUNUT1JZX1NFUChf Y18pICgoX2NfKSA9PSBESVJFQ1RPUllfU0VQKQp8ICNkZWZpbmUgSVNfQU5ZX1NFUChfY18p IChJU19ESVJFQ1RPUllfU0VQIChfY18pKQp8ICNkZWZpbmUgSEFWRV9QUk9DRlMgMQp8ICNk ZWZpbmUgREVGQVVMVF9TT1VORF9ERVZJQ0UgIi9kZXYvZHNwIgp8ICNkZWZpbmUgSU5URVJS VVBUX0lOUFVUIDEKfCAjZGVmaW5lIE5BUlJPV1BST1RPIDEKfCAjZGVmaW5lIFVOSVg5OF9Q VFlTIDEKfCAjZGVmaW5lIFBUWV9JVEVSQVRJT04gaW50IGk7IGZvciAoaSA9IDA7IGkgPCAx OyBpKyspCnwgI2RlZmluZSBQVFlfVFRZX05BTUVfU1BSSU5URiB7IGNoYXIgKnB0eW5hbWUg PSAwOyBzaWdzZXRfdCBibG9ja2VkOyBzaWdlbXB0eXNldCAoJmJsb2NrZWQpOyBzaWdhZGRz ZXQgKCZibG9ja2VkLCBTSUdDSExEKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfQkxPQ0ssICZi bG9ja2VkLCAwKTsgaWYgKGdyYW50cHQgKGZkKSAhPSAtMSAmJiB1bmxvY2twdCAoZmQpICE9 IC0xKSBwdHluYW1lID0gcHRzbmFtZShmZCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX1VOQkxP Q0ssICZibG9ja2VkLCAwKTsgaWYgKCFwdHluYW1lKSB7IGVtYWNzX2Nsb3NlIChmZCk7IHJl dHVybiAtMTsgfSBzbnByaW50ZiAocHR5X25hbWUsIFBUWV9OQU1FX1NJWkUsICIlcyIsIHB0 eW5hbWUpOyB9CnwgI2RlZmluZSBQVFlfT1BFTiBkbyB7IGZkID0gcG9zaXhfb3BlbnB0IChP X1JEV1IgfCBPX0NMT0VYRUMgfCBPX05PQ1RUWSk7IGlmIChmZCA8IDAgJiYgZXJybm8gPT0g RUlOVkFMKSBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19OT0NUVFkpOyB9IHdoaWxl IChmYWxzZSkKfCAjZGVmaW5lIFBUWV9OQU1FX1NQUklOVEYgLyoqLwp8ICNkZWZpbmUgU0lH TkFMU19WSUFfQ0hBUkFDVEVSUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNk ZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfX1NFVEpNUCAxCnwgI2Rl ZmluZSBIQVZFX1NJR1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NUQUNLX09WRVJGTE9XX0hB TkRMSU5HIDEKfCAjZGVmaW5lIFVTRyAvKiovCnwgI2RlZmluZSBHTlVfTElOVVggLyoqLwp8 ICNkZWZpbmUgU0laRU9GX1NQRUVEX1QgNAp8ICNkZWZpbmUgVVNBQkxFX0ZJT05SRUFEIDEK fCAjZGVmaW5lIFVTQUJMRV9TSUdJTyAxCnwgI2RlZmluZSBDT1BZUklHSFQgIkNvcHlyaWdo dCAoQykgMjAyMyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4iCnwgI2RlZmluZSBU RVJNX0hFQURFUiAiZ3RrdXRpbC5oIgp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHVVJBVElPTiAi eDg2XzY0LXBjLWxpbnV4LWdudSIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR19PUFRJT05TICIi CnwgI2RlZmluZSBIQVZFX1hfV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gxMSAxCnwgI2Rl ZmluZSBIQVZFX1NUUlVDVF9BVFRSSUJVVEVfQUxJR05FRCAxCnwgI2RlZmluZSBIQVZFX1RZ UEVPRiAxCnwgI2RlZmluZSBIQVZFX1NUQVRFTUVOVF9FWFBSRVNTSU9OUyAxCnwgI2RlZmlu ZSBNQUxMT0NfMF9JU19OT05OVUxMIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0FDTF9IIDEKfCAj ZGVmaW5lIEhBVkVfQUNMX0dFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GRCAx CnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRf RkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJFRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9N X01PREUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9URVhUIDEKfCAjZGVmaW5lIEhBVkVf QUNMX0RFTEVURV9ERUZfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9FWFRFTkRFRF9GSUxF IDEKfCAjZGVmaW5lIEhBVkVfQUNMX0xJQkFDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VO VFJJRVMgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRklSU1RfRU5UUlkgMQp8ICNkZWZpbmUgVVNF X0FDTCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NB IDEKfCAjZGVmaW5lIExTVEFUX0ZPTExPV1NfU0xBU0hFRF9TWU1MSU5LIDEKfCAjZGVmaW5l IEZVTkNfUkVBTFBBVEhfV09SS1MgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNk ZWZpbmUgSEFWRV9HRVRDV0QgMQp8ICNkZWZpbmUgcmVzdHJpY3QgX19yZXN0cmljdF9fCnwg I2RlZmluZSBIQVZFX0VOVklST05fREVDTCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSTU9E RSAwCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0xP TkdfT05MWSAxCnwgI2RlZmluZSBIQVZFX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUgSEFW RV9VTlNJR05FRF9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9NRU1NRU0g MQp8ICNkZWZpbmUgSEFWRV9ERUNMX01FTVJDSFIgMQp8ICNkZWZpbmUgSEFWRV9NSU5NQVhf SU5fU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgVElNRV9UX0lTX1NJR05FRCAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfQUxBUk0gMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVE1fVE1fWk9ORSAx CnwgI2RlZmluZSBIQVZFX1RNX1pPTkUgMQp8ICNkZWZpbmUgSEFWRV9UTV9HTVRPRkYgMQp8 ICNkZWZpbmUgSEFWRV9TSUdTRVRfVCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX1QgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX0ZDTE9TRUFMTCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VUVyAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfUFVUVyAxCnwgI2RlZmluZSBfX1VTRV9NSU5HV19BTlNJ X1NURElPIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9FQ1ZUIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9GQ1ZUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HQ1ZUIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9TVFJOTEVOIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJUT0lNQVggMQp8ICNkZWZpbmUg X1VTRV9TVERfU1RBVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRVhFQ1ZQRSAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfQ0xFQVJFUlJfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZF T0ZfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZFUlJPUl9VTkxPQ0tFRCAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfRkZMVVNIX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9GR0VUU19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRlBVVENfVU5MT0NLRUQg MQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZQVVRTX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9GUkVBRF9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRldSSVRFX1VOTE9D S0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRDX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9HRVRDSEFSX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRDX1VO TE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRDSEFSX1VOTE9DS0VEIDEKfCAjZGVm aW5lIEdFVEdST1VQU19UIGdpZF90CnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VURFRBQkxFU0la RSAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19QT1NJWCAxCnwgI2RlZmluZSBQUk9NT1RFRF9N T0RFX1QgbW9kZV90CnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVVRJTUVTIDEKfCAvKiBlbmQg Y29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN0ZGludC5oPgp8ICAgICAgICAgICAgICNp ZmRlZiBJTkNMVURFX1NUREFMSUdOX0gKfCAgICAgICAgICAgICAgI2luY2x1ZGUgPHN0ZGFs aWduLmg+CnwgICAgICAgICAgICAgI2VuZGlmCnwgICAgICAgICAgICAgI2luY2x1ZGUgPHN0 ZGRlZi5oPgp8IAp8ICAgICAgICAgICAgIC8qIFRlc3QgdGhhdCBhbGlnbm9mIHlpZWxkcyBh IHJlc3VsdCBjb25zaXN0ZW50IHdpdGggb2Zmc2V0b2YuCnwgICAgICAgICAgICAgICAgVGhp cyBjYXRjaGVzIEdDQyBidWcgNTIwMjMKfCAgICAgICAgICAgICAgICA8aHR0cHM6Ly9nY2Mu Z251Lm9yZy9idWd6aWxsYS9zaG93X2J1Zy5jZ2k/aWQ9NTIwMjM+LiAgKi8KfCAgICAgICAg ICAgICAjaWZkZWYgX19jcGx1c3BsdXMKfCAgICAgICAgICAgICAgICB0ZW1wbGF0ZSA8Y2xh c3MgdD4gc3RydWN0IGFsaWdub2ZfaGVscGVyIHsgY2hhciBhOyB0IGI7IH07CnwgICAgICAg ICAgICAgIyBkZWZpbmUgYW8odHlwZSkgb2Zmc2V0b2YgKGFsaWdub2ZfaGVscGVyPHR5cGU+ LCBiKQp8ICAgICAgICAgICAgICNlbHNlCnwgICAgICAgICAgICAgIyBkZWZpbmUgYW8odHlw ZSkgb2Zmc2V0b2YgKHN0cnVjdCB7IGNoYXIgYTsgdHlwZSBiOyB9LCBiKQp8ICAgICAgICAg ICAgICNlbmRpZgp8ICAgICAgICAgICAgIGNoYXIgdGVzdF9kb3VibGVbYW8gKGRvdWJsZSkg JSBfQWxpZ25vZiAoZG91YmxlKSA9PSAwID8gMSA6IC0xXTsKfCAgICAgICAgICAgICBjaGFy IHRlc3RfbG9uZ1thbyAobG9uZyBpbnQpICUgX0FsaWdub2YgKGxvbmcgaW50KSA9PSAwID8g MSA6IC0xXTsKfCAgICAgICAgICAgICBjaGFyIHRlc3RfYWxpZ25vZlthbGlnbm9mIChkb3Vi bGUpID09IF9BbGlnbm9mIChkb3VibGUpID8gMSA6IC0xXTsKfCAKfCAgICAgICAgICAgICAv KiBUZXN0IGFsaWduYXMgb25seSBvbiBwbGF0Zm9ybXMgd2hlcmUgZ251bGliIGNhbiBoZWxw LiAgKi8KfCAgICAgICAgICAgICAjaWYgICAgICAgICAgICAgICAgICgoZGVmaW5lZCBfX2Nw bHVzcGx1cyAmJiAyMDExMDMgPD0gX19jcGx1c3BsdXMpICAgICAgICAgICAgICAgICAgfHwg KF9fVElOWUNfXyAmJiBkZWZpbmVkIF9fYXR0cmlidXRlX18pICAgICAgICAgICAgICAgICAg fHwgKGRlZmluZWQgX19BUFBMRV9fICYmIGRlZmluZWQgX19NQUNIX18gICAgICAgICAgICAg ICAgICAgICAgPyA0IDwgX19HTlVDX18gKyAoMSA8PSBfX0dOVUNfTUlOT1JfXykgICAgICAg ICAgICAgICAgICAgICAgOiBfX0dOVUNfXykgICAgICAgICAgICAgICAgICB8fCAoX19pYTY0 ICYmICg2MTIwMCA8PSBfX0hQX2NjIHx8IDYxMjAwIDw9IF9fSFBfYUNDKSkgICAgICAgICAg ICAgICAgICB8fCBfX0lDQyB8fCAweDU5MCA8PSBfX1NVTlBST19DIHx8IDB4MDYwMCA8PSBf X3hsQ19fICAgICAgICAgICAgICAgICAgfHwgMTMwMCA8PSBfTVNDX1ZFUikKfCAgICAgICAg ICAgICAgIHN0cnVjdCBhbGlnbmFzX3Rlc3QgeyBjaGFyIGM7IGNoYXIgYWxpZ25hcyAoOCkg YWxpZ25hc184OyB9Owp8ICAgICAgICAgICAgICAgY2hhciB0ZXN0X2FsaWduYXNbb2Zmc2V0 b2YgKHN0cnVjdCBhbGlnbmFzX3Rlc3QsIGFsaWduYXNfOCkgPT0gOAp8ICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgPyAxIDogLTFdOwp8ICAgICAgICAgICAgICNlbmRpZgp8 IAp8IGludAp8IG1haW4gKHZvaWQpCnwgewp8IAp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpj b25maWd1cmU6MzQyMjQ6IGdjYyAtYyAtZzMgLU8yIC1ESU5DTFVERV9TVERBTElHTl9IICAg IGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozNDIyNDogJD8gPSAwCmNvbmZpZ3VyZTozNDIz NjogcmVzdWx0OiB5ZXMsIDxzdGRhbGlnbi5oPiBtYWNyb3MKY29uZmlndXJlOjM0MjU4OiBj aGVja2luZyBmb3IgYWxsb2NhIGFzIGEgY29tcGlsZXIgYnVpbHQtaW4KY29uZmlndXJlOjM0 Mjg0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzQzMzM6IGNoZWNraW5nIGZvciBzdGF0aWNf YXNzZXJ0CmNvbmZpZ3VyZTozNDM3MTogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+ JjUKY29uZnRlc3QuYzozNzM6Mjg6IGVycm9yOiBleHBlY3RlZCBkZWNsYXJhdGlvbiBzcGVj aWZpZXJzIG9yICcuLi4nIGJlZm9yZSBudW1lcmljIGNvbnN0YW50CiAgMzczIHwgICAgICAg ICAgICAgc3RhdGljX2Fzc2VydCAoMiArIDIgPT0gNCwgImFyaXRobWV0aWMgZG9lcyBub3Qg d29yayIpOwogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KY29uZnRlc3Qu YzozNzM6NDA6IGVycm9yOiBleHBlY3RlZCBkZWNsYXJhdGlvbiBzcGVjaWZpZXJzIG9yICcu Li4nIGJlZm9yZSBzdHJpbmcgY29uc3RhbnQKICAzNzMgfCAgICAgICAgICAgICBzdGF0aWNf YXNzZXJ0ICgyICsgMiA9PSA0LCAiYXJpdGhtZXRpYyBkb2VzIG5vdCB3b3JrIik7CiAgICAg IHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn4KY29uZnRlc3QuYzozNzQ6Mjg6IGVycm9yOiBleHBlY3RlZCBkZWNs YXJhdGlvbiBzcGVjaWZpZXJzIG9yICcuLi4nIGJlZm9yZSBudW1lcmljIGNvbnN0YW50CiAg Mzc0IHwgICAgICAgICAgICAgc3RhdGljX2Fzc2VydCAoMiArIDIgPT0gNCk7CiAgICAgIHwg ICAgICAgICAgICAgICAgICAgICAgICAgICAgXgpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiAn bWFpbic6CmNvbmZ0ZXN0LmM6MzgwOjEzOiB3YXJuaW5nOiBpbXBsaWNpdCBkZWNsYXJhdGlv biBvZiBmdW5jdGlvbiAnc3RhdGljX2Fzc2VydCcgWy1XaW1wbGljaXQtZnVuY3Rpb24tZGVj bGFyYXRpb25dCiAgMzgwIHwgICAgICAgICAgICAgc3RhdGljX2Fzc2VydCAoc2l6ZW9mIChj aGFyKSA9PSAxLCAic2l6ZW9mIGRvZXMgbm90IHdvcmsiKTsKICAgICAgfCAgICAgICAgICAg ICBefn5+fn5+fn5+fn5+CmNvbmZpZ3VyZTozNDM3MTogJD8gPSAxCmNvbmZpZ3VyZTogZmFp bGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0Vf TkFNRSAiR05VIEVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJlbWFjcyIKfCAj ZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMzAuMC41MCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RS SU5HICJHTlUgRW1hY3MgMzAuMC41MCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJi dWctZ251LWVtYWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0cHM6Ly93 d3cuZ251Lm9yZy9zb2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmluZSBIQVZFX1BEVU1QRVIgMQp8 ICNkZWZpbmUgSEFWRV9TVERJT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwg I2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfSCAxCnwgI2Rl ZmluZSBIQVZFX0xJTlVYX0ZTX0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19TWVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9QVFlfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVf SCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUF9IIDEKfCAj ZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0xTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFW RV9TQU5JVElaRVJfQVNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpF Ul9DT01NT05fSU5URVJGQUNFX0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVB RF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRf SCAxCnwgI2RlZmluZSBIQVZFX0VYRUNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJT19F WFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19WRlNfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9Q VF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0NERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf VElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfSUVFRTc1NF9IIDEKfCAjZGVmaW5lIEhBVkVfTElN SVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9T VERCT09MX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkFORE9NX0ggMQp8ICNkZWZpbmUgU1RE Q19IRUFERVJTIDEKfCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5f Q19TT1VSQ0UgMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0hQVVhfQUxU X1hPUEVOX1NPQ0tFVF9BUEkgMQp8ICNkZWZpbmUgX05FVEJTRF9TT1VSQ0UgMQp8ICNkZWZp bmUgX09QRU5CU0RfU09VUkNFIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElD UyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfQVRUUklCU19FWFRfXyAxCnwg I2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfQkZQX0VYVF9fIDEKfCAjZGVmaW5lIF9f U1REQ19XQU5UX0lFQ182MDU1OV9ERlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRf SUVDXzYwNTU5X0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9GVU5D U19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfVFlQRVNfRVhUX18g MQp8ICNkZWZpbmUgX19TVERDX1dBTlRfTElCX0VYVDJfXyAxCnwgI2RlZmluZSBfX1NURENf V0FOVF9NQVRIX1NQRUNfRlVOQ1NfXyAxCnwgI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCnwg I2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBHQ0NfTElOVCAxCnwgI2RlZmlu ZSBTWVNURU1fVFlQRSAiZ251L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJE X0ggMQp8ICNkZWZpbmUgSEFWRV9BTFNBIDEKfCAjZGVmaW5lIEhBVkVfU09VTkQgMQp8ICNk ZWZpbmUgSEFWRV9QRVJTT05BTElUWV9BRERSX05PX1JBTkRPTUlaRSAxCnwgI2RlZmluZSBI QVZFX0xJTlVYX1NZU0lORk8gMQp8ICNkZWZpbmUgTElOVVhfU1lTSU5GT19VTklUIDEKfCAj ZGVmaW5lIEhBVkVfVEVSTV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2Rl ZmluZSBIQVZFX05FVF9JRl9IIDEKfCAjZGVmaW5lIEhBVkVfSUZBRERSU19IIDEKfCAjZGVm aW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9GTEFHUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVD VF9JRlJFUV9JRlJfSFdBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9O RVRNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9CUk9BREFERFIgMQp8 ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0FERFIgMQp8ICNkZWZpbmUgSEFWRV9T QlJLIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9GT1JL IDEKfCAjZGVmaW5lIEhBVkVfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNk ZWZpbmUgSEFWRV9DQU5PTklDQUxJWkVfRklMRV9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUkVB TFBBVEggMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PREFU IDEKfCAjZGVmaW5lIEhBVkVfTENITU9EIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNk ZWZpbmUgSEFWRV9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgSEFWRV9GU1RBVEFUIDEKfCAjZGVm aW5lIEhBVkVfRlNZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZp bmUgSEFWRV9QU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAj ZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFWRV9JU0JMQU5LIDEKfCAjZGVm aW5lIEhBVkVfSVNXQ1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9TVFJUT0lNQVggMQp8ICNkZWZp bmUgSEFWRV9TWU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxUSU1FX1IgMQp8ICNkZWZp bmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIFNZU1RFTV9NQUxMT0MgMQp8ICNk ZWZpbmUgSEFWRV9NTUFQIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRCAxCnwgI2RlZmluZSBU SFJFQURTX0VOQUJMRUQgMQp8ICNkZWZpbmUgSEFWRV9YS0IgMQp8ICNkZWZpbmUgSEFWRV9Y S0JSRUZSRVNIS0VZQk9BUkRNQVBQSU5HIDEKfCAjZGVmaW5lIEhBVkVfWEtCRlJFRU5BTUVT IDEKfCAjZGVmaW5lIEhBVkVfWFJNU0VUREFUQUJBU0UgMQp8ICNkZWZpbmUgSEFWRV9YU0NS RUVOUkVTT1VSQ0VTVFJJTkcgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOTlVNQkVST0ZTQ1JF RU4gMQp8ICNkZWZpbmUgSEFWRV9YRElTUExBWUNFTExTIDEKfCAjZGVmaW5lIEhBVkVfWERF U1RST1lTVUJXSU5ET1dTIDEKfCAjZGVmaW5lIEhBVkVfWDExUjYgMQp8ICNkZWZpbmUgSEFW RV9YX0kxOE4gMQp8ICNkZWZpbmUgSEFWRV9YSUNDQUxMQkFDS19DQUxMQkFDSyAxCnwgI2Rl ZmluZSBIQVZFX1gxMVI2X1hJTSAxCnwgI2RlZmluZSBIQVZFX1JTVkcgMQp8ICNkZWZpbmUg SEFWRV9XRUJQIDEKfCAjZGVmaW5lIEhBVkVfU1FMSVRFMyAxCnwgI2RlZmluZSBIQVZFX1NR TElURTNfTE9BRF9FWFRFTlNJT04gMQp8ICNkZWZpbmUgSEFWRV9HRVRBRERSSU5GT19BIDEK fCAjZGVmaW5lIEhBVkVfR1RLMyAxCnwgI2RlZmluZSBHREtfRElTQUJMRV9ERVBSRUNBVElP Tl9XQVJOSU5HUyAxCnwgI2RlZmluZSBHTElCX0RJU0FCTEVfREVQUkVDQVRJT05fV0FSTklO R1MgMQp8ICNkZWZpbmUgVVNFX0dUSyAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19UUklNIDEK fCAjZGVmaW5lIEhBVkVfREJVUyAxCnwgI2RlZmluZSBIQVZFX0RCVVNfV0FUQ0hfR0VUX1VO SVhfRkQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1RZUEVfSVNfVkFMSUQgMQp8ICNkZWZpbmUg SEFWRV9EQlVTX1ZBTElEQVRFX0JVU19OQU1FIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJ REFURV9QQVRIIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9JTlRFUkZBQ0UgMQp8 ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX01FTUJFUiAxCnwgI2RlZmluZSBIQVZFX0dT RVRUSU5HUyAxCnwgI2RlZmluZSBIQVZFX0xJQlNFTElOVVggMQp8ICNkZWZpbmUgSEFWRV9H TlVUTFMgMQp8ICNkZWZpbmUgSEFWRV9MSUJTWVNURU1EIDEKfCAjZGVmaW5lIEhBVkVfSlNP TiAxCnwgI2RlZmluZSBIQVZFX0lOT1RJRlkgMQp8ICNkZWZpbmUgVVNFX0ZJTEVfTk9USUZZ IDEKfCAjZGVmaW5lIFVTRV9UT09MS0lUX1NDUk9MTF9CQVJTIDEKfCAjZGVmaW5lIEhBVkVf WElNIDEKfCAjZGVmaW5lIFVTRV9YSU0gMQp8ICNkZWZpbmUgSEFWRV9YUkVOREVSIDEKfCAj ZGVmaW5lIFVTRV9DQUlST19YQ0IgMQp8ICNkZWZpbmUgVVNFX0NBSVJPIDEKfCAjZGVmaW5l IEhBVkVfRlJFRVRZUEUgMQp8ICNkZWZpbmUgSEFWRV9GVF9GQUNFX0dFVENIQVJWQVJJQU5U SU5ERVggMQp8ICNkZWZpbmUgSEFWRV9MSUJPVEYgMQp8ICNkZWZpbmUgSEFWRV9PVEZfR0VU X1ZBUklBVElPTl9HTFlQSFMgMQp8ICNkZWZpbmUgSEFWRV9NMTdOX0ZMVCAxCnwgI2RlZmlu ZSBIQVZFX0hBUkZCVVpaIDEKfCAjZGVmaW5lIFVTRV9YQ0IgMQp8ICNkZWZpbmUgSEFWRV9Y UE0gMQp8ICNkZWZpbmUgSEFWRV9KUEVHIDEKfCAjZGVmaW5lIEhBVkVfTENNUzIgMQp8ICNk ZWZpbmUgSEFWRV9aTElCIDEKfCAjZGVmaW5lIERZTkFNSUNfTElCX1NVRkZJWCAiLnNvIgp8 ICNkZWZpbmUgRFlOQU1JQ19MSUJfU0VDT05EQVJZX1NVRkZJWCAiIgp8ICNkZWZpbmUgSEFW RV9ETEFERFIgMQp8ICNkZWZpbmUgSEFWRV9NT0RVTEVTIDEKfCAjZGVmaW5lIE1PRFVMRVNf U1VGRklYICIuc28iCnwgI2RlZmluZSBOQVRJVkVfRUxJU1BfU1VGRklYICIuZWxuIgp8ICNk ZWZpbmUgSEFWRV9QTkcgMQp8ICNkZWZpbmUgSEFWRV9USUZGIDEKfCAjZGVmaW5lIEhBVkVf R0lGIDEKfCAjZGVmaW5lIEhBVkVfR1BNIDEKfCAjZGVmaW5lIEhBVkVfWF9TTSAxCnwgI2Rl ZmluZSBIQVZFX1hSQU5EUiAxCnwgI2RlZmluZSBIQVZFX1hJTkVSQU1BIDEKfCAjZGVmaW5l IEhBVkVfWEZJWEVTIDEKfCAjZGVmaW5lIEhBVkVfWElOUFVUMiAxCnwgI2RlZmluZSBIQVZF X1hJU0NST0xMQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YSVRPVUNIQ0xBU1NJ TkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YSUJBUlJJRVJSRUxFQVNFUE9JTlRFUklORk9f REVWSUNFSUQgMQp8ICNkZWZpbmUgSEFWRV9YSUdFU1RVUkVDTEFTU0lORk9fVFlQRSAxCnwg I2RlZmluZSBIQVZFX1hTWU5DIDEKfCAjZGVmaW5lIEhBVkVfWFNZTkNUUklHR0VSRkVOQ0Ug MQp8ICNkZWZpbmUgSEFWRV9YREJFIDEKfCAjZGVmaW5lIEhBVkVfWENCX1NIQVBFIDEKfCAj ZGVmaW5lIEhBVkVfWFNIQVBFIDEKfCAjZGVmaW5lIEhBVkVfWENPTVBPU0lURSAxCnwgI2Rl ZmluZSBIQVZFX0xJQlhNTDIgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TRUNDT01QX0ggMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfU0VUX01PREVfRklMVEVSIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9TRUNDT01QX0ZJTFRFUl9GTEFHX1RTWU5DIDEKfCAjZGVmaW5lIEhBVkVf TElOVVhfRklMVEVSX0ggMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfU0VUX01PREVf RklMVEVSIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX0ZJTFRFUl9GTEFHX1RTWU5D IDEKfCAjZGVmaW5lIFNJWkVPRl9MT05HIDgKfCAjZGVmaW5lIEhBVkVfQUNDRVBUNCAxCnwg I2RlZmluZSBIQVZFX0ZDSERJUiAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAj ZGVmaW5lIEhBVkVfR0VUUlVTQUdFIDEKfCAjZGVmaW5lIEhBVkVfR0VUX0NVUlJFTlRfRElS X05BTUUgMQp8ICNkZWZpbmUgSEFWRV9MUkFORDQ4IDEKfCAjZGVmaW5lIEhBVkVfUkFORE9N IDEKfCAjZGVmaW5lIEhBVkVfUklOVCAxCnwgI2RlZmluZSBIQVZFX1RSVU5DIDEKfCAjZGVm aW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZp bmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9ORVdMT0NBTEUgMQp8ICNkZWZp bmUgSEFWRV9HRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8ICNkZWZp bmUgSEFWRV9TSFVURE9XTiAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwg I2RlZmluZSBIQVZFX1NUUlNJR05BTCAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwg I2RlZmluZSBIQVZFX1NFTkRUTyAxCnwgI2RlZmluZSBIQVZFX1JFQ1ZGUk9NIDEKfCAjZGVm aW5lIEhBVkVfR0VUU09DS05BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRJRkFERFJTIDEKfCAj ZGVmaW5lIEhBVkVfRlJFRUlGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9HQUlfU1RSRVJST1Ig MQp8ICNkZWZpbmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFdFTlQgMQp8ICNk ZWZpbmUgSEFWRV9FTkRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0dFVEdSRU5UIDEKfCAjZGVm aW5lIEhBVkVfRU5ER1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9SRU5BTUVBVDIgMQp8ICNkZWZp bmUgSEFWRV9DRk1BS0VSQVcgMQp8ICNkZWZpbmUgSEFWRV9DRlNFVFNQRUVEIDEKfCAjZGVm aW5lIEhBVkVfX19FWEVDVVRBQkxFX1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVfTE9HMiAxCnwg I2RlZmluZSBIQVZFX1BUSFJFQURfU0VUTkFNRV9OUCAxCnwgI2RlZmluZSBIQVZFX0FMSUdO RURfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0FMSUdORURfQUxMT0MgMQp8ICNkZWZp bmUgSEFWRV9QT1NJWF9NQURWSVNFIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX0ZSQU1F X0FERFJFU1MgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fVU5XSU5EX0lOSVQgMQp8ICNk ZWZpbmUgSEFWRV9GU0VFS08gMQp8ICNkZWZpbmUgSEFWRV9HUkFOVFBUIDEKfCAjZGVmaW5l IEhBVkVfR0VUUFQgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9PUEVOUFQgMQp8ICNkZWZpbmUg VEVSTUlORk8gMQp8ICNkZWZpbmUgVEVSTUlORk9fREVGSU5FU19CQyAxCnwgI2RlZmluZSBI QVZFX1RJTUVSRkQgMQp8ICNkZWZpbmUgSEFWRV9WQUxHUklORF9WQUxHUklORF9IIDEKfCAj ZGVmaW5lIEhBVkVfU1RSVUNUX1VOSVBBSVJfVU5JQ09ERSAxCnwgI2RlZmluZSBIQVZFX1dP UktJTkdfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX0ZPUksgMQp8ICNkZWZpbmUg SEFWRV9TTlBSSU5URiAxCnwgI2RlZmluZSBIQVZFX1NQQVdOX0ggMQp8ICNkZWZpbmUgSEFW RV9QT1NJWF9TUEFXTiAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOX0ZJTEVfQUNUSU9O U19BRERDSERJUl9OUCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOQVRUUl9TRVRGTEFH UyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUE9TSVhfU1BBV05fU0VUU0lEIDEKfCAjZGVmaW5l IEhBVkVfR0xJQiAxCnwgI2RlZmluZSBIQVZFX0xBTkdJTkZPX0NPREVTRVQgMQp8ICNkZWZp bmUgSEFWRV9MQU5HSU5GT19fTkxfUEFQRVJfV0lEVEggMQp8ICNkZWZpbmUgSEFWRV9NQlNU QVRFX1QgMQp8ICNkZWZpbmUgQU1QRVJTQU5EX0ZVTExfTkFNRSAxCnwgI2RlZmluZSBIQVZF X1BUWVMgMQp8ICNkZWZpbmUgSEFWRV9TT0NLRVRTIDEKfCAjZGVmaW5lIE5VTExfREVWSUNF ICIvZGV2L251bGwiCnwgI2RlZmluZSBTRVBDSEFSICc6Jwp8ICNkZWZpbmUgc3VicHJvY2Vz c2VzIDEKfCAjZGVmaW5lIFVTRVJfRlVMTF9OQU1FIHB3LT5wd19nZWNvcwp8ICNkZWZpbmUg RElSRUNUT1JZX1NFUCAnLycKfCAjZGVmaW5lIElTX0RFVklDRV9TRVAoX2NfKSAwCnwgI2Rl ZmluZSBJU19ESVJFQ1RPUllfU0VQKF9jXykgKChfY18pID09IERJUkVDVE9SWV9TRVApCnwg I2RlZmluZSBJU19BTllfU0VQKF9jXykgKElTX0RJUkVDVE9SWV9TRVAgKF9jXykpCnwgI2Rl ZmluZSBIQVZFX1BST0NGUyAxCnwgI2RlZmluZSBERUZBVUxUX1NPVU5EX0RFVklDRSAiL2Rl di9kc3AiCnwgI2RlZmluZSBJTlRFUlJVUFRfSU5QVVQgMQp8ICNkZWZpbmUgTkFSUk9XUFJP VE8gMQp8ICNkZWZpbmUgVU5JWDk4X1BUWVMgMQp8ICNkZWZpbmUgUFRZX0lURVJBVElPTiBp bnQgaTsgZm9yIChpID0gMDsgaSA8IDE7IGkrKykKfCAjZGVmaW5lIFBUWV9UVFlfTkFNRV9T UFJJTlRGIHsgY2hhciAqcHR5bmFtZSA9IDA7IHNpZ3NldF90IGJsb2NrZWQ7IHNpZ2VtcHR5 c2V0ICgmYmxvY2tlZCk7IHNpZ2FkZHNldCAoJmJsb2NrZWQsIFNJR0NITEQpOyBwdGhyZWFk X3NpZ21hc2sgKFNJR19CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoZ3JhbnRwdCAoZmQpICE9 IC0xICYmIHVubG9ja3B0IChmZCkgIT0gLTEpIHB0eW5hbWUgPSBwdHNuYW1lKGZkKTsgcHRo cmVhZF9zaWdtYXNrIChTSUdfVU5CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoIXB0eW5hbWUp IHsgZW1hY3NfY2xvc2UgKGZkKTsgcmV0dXJuIC0xOyB9IHNucHJpbnRmIChwdHlfbmFtZSwg UFRZX05BTUVfU0laRSwgIiVzIiwgcHR5bmFtZSk7IH0KfCAjZGVmaW5lIFBUWV9PUEVOIGRv IHsgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fQ0xPRVhFQyB8IE9fTk9DVFRZKTsg aWYgKGZkIDwgMCAmJiBlcnJubyA9PSBFSU5WQUwpIGZkID0gcG9zaXhfb3BlbnB0IChPX1JE V1IgfCBPX05PQ1RUWSk7IH0gd2hpbGUgKGZhbHNlKQp8ICNkZWZpbmUgUFRZX05BTUVfU1BS SU5URiAvKiovCnwgI2RlZmluZSBTSUdOQUxTX1ZJQV9DSEFSQUNURVJTIDEKfCAjZGVmaW5l IEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZp bmUgSEFWRV9fU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUSk1QIDEKfCAjZGVmaW5l IEhBVkVfU1RBQ0tfT1ZFUkZMT1dfSEFORExJTkcgMQp8ICNkZWZpbmUgVVNHIC8qKi8KfCAj ZGVmaW5lIEdOVV9MSU5VWCAvKiovCnwgI2RlZmluZSBTSVpFT0ZfU1BFRURfVCA0CnwgI2Rl ZmluZSBVU0FCTEVfRklPTlJFQUQgMQp8ICNkZWZpbmUgVVNBQkxFX1NJR0lPIDEKfCAjZGVm aW5lIENPUFlSSUdIVCAiQ29weXJpZ2h0IChDKSAyMDIzIEZyZWUgU29mdHdhcmUgRm91bmRh dGlvbiwgSW5jLiIKfCAjZGVmaW5lIFRFUk1fSEVBREVSICJndGt1dGlsLmgiCnwgI2RlZmlu ZSBFTUFDU19DT05GSUdVUkFUSU9OICJ4ODZfNjQtcGMtbGludXgtZ251Igp8ICNkZWZpbmUg RU1BQ1NfQ09ORklHX09QVElPTlMgIiIKfCAjZGVmaW5lIEhBVkVfWF9XSU5ET1dTIDEKfCAj ZGVmaW5lIEhBVkVfWDExIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0FUVFJJQlVURV9BTElH TkVEIDEKfCAjZGVmaW5lIEhBVkVfVFlQRU9GIDEKfCAjZGVmaW5lIEhBVkVfU1RBVEVNRU5U X0VYUFJFU1NJT05TIDEKfCAjZGVmaW5lIE1BTExPQ18wX0lTX05PTk5VTEwgMQp8ICNkZWZp bmUgSEFWRV9TWVNfQUNMX0ggMQp8ICNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZJTEUgMQp8ICNk ZWZpbmUgSEFWRV9BQ0xfR0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX1NFVF9GSUxFIDEK fCAjZGVmaW5lIEhBVkVfQUNMX1NFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUkVFIDEK fCAjZGVmaW5lIEhBVkVfQUNMX0ZST01fTU9ERSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9N X1RFWFQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfREVMRVRFX0RFRl9GSUxFIDEKfCAjZGVmaW5l IEhBVkVfQUNMX0VYVEVOREVEX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfTElCQUNMX0gg MQp8ICNkZWZpbmUgSEFWRV9BQ0xfRU5UUklFUyAxCnwgI2RlZmluZSBIQVZFX0FDTF9GSVJT VF9FTlRSWSAxCnwgI2RlZmluZSBVU0VfQUNMIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0gg MQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgTFNUQVRfRk9MTE9XU19TTEFT SEVEX1NZTUxJTksgMQp8ICNkZWZpbmUgRlVOQ19SRUFMUEFUSF9XT1JLUyAxCnwgI2RlZmlu ZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0dFVENXRCAxCnwgI2RlZmluZSBy ZXN0cmljdCBfX3Jlc3RyaWN0X18KfCAjZGVmaW5lIEhBVkVfRU5WSVJPTl9ERUNMIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9TVFJNT0RFIDAKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8 ICNkZWZpbmUgSEFWRV9HRVRPUFRfTE9OR19PTkxZIDEKfCAjZGVmaW5lIEhBVkVfTE9OR19M T05HX0lOVCAxCnwgI2RlZmluZSBIQVZFX1VOU0lHTkVEX0xPTkdfTE9OR19JTlQgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX01FTU1FTSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfTUVNUkNIUiAx CnwgI2RlZmluZSBIQVZFX01JTk1BWF9JTl9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBUSU1F X1RfSVNfU0lHTkVEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTEFSTSAxCnwgI2RlZmluZSBI QVZFX1NUUlVDVF9UTV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fWk9ORSAxCnwgI2Rl ZmluZSBIQVZFX1RNX0dNVE9GRiAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVF9UIDEKfCAjZGVm aW5lIEhBVkVfV0NIQVJfVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkNMT1NFQUxMIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9HRVRXIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRXIDEKfCAj ZGVmaW5lIF9fVVNFX01JTkdXX0FOU0lfU1RESU8gMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VD VlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZDVlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dD VlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUk5MRU4gMQp8ICNkZWZpbmUgSEFWRV9ERUNM X1NUUlRPSU1BWCAxCnwgI2RlZmluZSBfVVNFX1NURF9TVEFUIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9FWEVDVlBFIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9DTEVBUkVSUl9VTkxPQ0tFRCAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfRkVPRl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfRkVSUk9SX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRkxVU0hfVU5MT0NL RUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZHRVRTX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9GUFVUQ19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRlBVVFNfVU5M T0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZSRUFEX1VOTE9DS0VEIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9GV1JJVEVfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVENf VU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVENIQVJfVU5MT0NLRUQgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX1BVVENfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BV VENIQVJfVU5MT0NLRUQgMQp8ICNkZWZpbmUgR0VUR1JPVVBTX1QgZ2lkX3QKfCAjZGVmaW5l IEhBVkVfREVDTF9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX1BPU0lY IDEKfCAjZGVmaW5lIFBST01PVEVEX01PREVfVCBtb2RlX3QKfCAjZGVmaW5lIEhBVkVfV09S S0lOR19VVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8IC8qIGVuZCBjb25mZGVm cy5oLiAgKi8KfCAjaWYgZGVmaW5lZCBfX2NsYW5nX18gJiYgX19TVERDX1ZFUlNJT05fXyA8 IDIwMjMxMQp8ICAgICAgICAgICAgICAjcHJhZ21hIGNsYW5nIGRpYWdub3N0aWMgZXJyb3Ig Ii1XYzJ4LWV4dGVuc2lvbnMiCnwgICAgICAgICAgICAgICNwcmFnbWEgY2xhbmcgZGlhZ25v c3RpYyBlcnJvciAiLVdjKysxei1leHRlbnNpb25zIgp8ICAgICAgICAgICAgICNlbmRpZgp8 ICAgICAgICAgICAgICNpZmRlZiBJTkNMVURFX0FTU0VSVF9ICnwgICAgICAgICAgICAgICNp bmNsdWRlIDxhc3NlcnQuaD4KfCAgICAgICAgICAgICAjZW5kaWYKfCAgICAgICAgICAgICBz dGF0aWNfYXNzZXJ0ICgyICsgMiA9PSA0LCAiYXJpdGhtZXRpYyBkb2VzIG5vdCB3b3JrIik7 CnwgICAgICAgICAgICAgc3RhdGljX2Fzc2VydCAoMiArIDIgPT0gNCk7CnwgCnwgaW50Cnwg bWFpbiAodm9pZCkKfCB7CnwgCnwgICAgICAgICAgICAgc3RhdGljX2Fzc2VydCAoc2l6ZW9m IChjaGFyKSA9PSAxLCAic2l6ZW9mIGRvZXMgbm90IHdvcmsiKTsKfCAgICAgICAgICAgICBz dGF0aWNfYXNzZXJ0IChzaXplb2YgKGNoYXIpID09IDEpOwp8IAp8ICAgOwp8ICAgcmV0dXJu IDA7CnwgfQpjb25maWd1cmU6MzQzNzE6IGdjYyAtYyAtZzMgLU8yIC1ESU5DTFVERV9BU1NF UlRfSCAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzQzNzE6ICQ/ID0gMApjb25maWd1 cmU6MzQzODI6IHJlc3VsdDogeWVzLCBhbiA8YXNzZXJ0Lmg+IG1hY3JvCmNvbmZpZ3VyZToz NDQ5OTogY2hlY2tpbmcgZm9yIF9fYnVpbHRpbl9leHBlY3QKY29uZmlndXJlOjM0NTE1OiBn Y2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCmNvbmZpZ3Vy ZTozNDUxNTogJD8gPSAwCmNvbmZpZ3VyZTozNDU0MjogcmVzdWx0OiB5ZXMKY29uZmlndXJl OjM0NTU2OiBjaGVja2luZyBmb3IgYnl0ZXN3YXAuaApjb25maWd1cmU6MzQ1NTY6IGdjYyAt YyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozNDU1NjogJD8gPSAwCmNv bmZpZ3VyZTozNDU1NjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM0NjY4OiBjaGVja2luZyBm b3IgcmVhZGxpbmthdApjb25maWd1cmU6MzQ3MDU6IGNoZWNraW5nIGZvciByZWFkbGlua2F0 CmNvbmZpZ3VyZTozNDcwNTogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVz dC5jICAgPiY1IApjb25maWd1cmU6MzQ3MDU6ICQ/ID0gMApjb25maWd1cmU6MzQ3MDU6IHJl c3VsdDogeWVzCmNvbmZpZ3VyZTozNDcyMDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM0NzQ2 OiBjaGVja2luZyBmb3IgbGlicmFyeSBjb250YWluaW5nIGNsb2NrX2dldHRpbWUKY29uZmln dXJlOjM0Nzc2OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+ JjUgCmNvbmZpZ3VyZTozNDc3NjogJD8gPSAwCmNvbmZpZ3VyZTozNDc5NjogcmVzdWx0OiBu b25lIHJlcXVpcmVkCmNvbmZpZ3VyZTozNDgwNjogY2hlY2tpbmcgZm9yIGNsb2NrX2dldHJl cwpjb25maWd1cmU6MzQ4MDY6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRl c3QuYyAgID4mNSAKY29uZmlndXJlOjM0ODA2OiAkPyA9IDAKY29uZmlndXJlOjM0ODA2OiBy ZXN1bHQ6IHllcwpjb25maWd1cmU6MzQ4MTI6IGNoZWNraW5nIGZvciBjbG9ja19nZXR0aW1l CmNvbmZpZ3VyZTozNDgxMjogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVz dC5jICAgPiY1IApjb25maWd1cmU6MzQ4MTI6ICQ/ID0gMApjb25maWd1cmU6MzQ4MTI6IHJl c3VsdDogeWVzCmNvbmZpZ3VyZTozNDgxODogY2hlY2tpbmcgZm9yIGNsb2NrX3NldHRpbWUK Y29uZmlndXJlOjM0ODE4OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0 LmMgICA+JjUgCmNvbmZpZ3VyZTozNDgxODogJD8gPSAwCmNvbmZpZ3VyZTozNDgxODogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjM0ODQxOiBjaGVja2luZyBmb3IgY29weV9maWxlX3Jhbmdl CmNvbmZpZ3VyZTozNDg2MzogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVz dC5jICAgPiY1IApjb25maWd1cmU6MzQ4NjM6ICQ/ID0gMApjb25maWd1cmU6MzQ4NzM6IHJl c3VsdDogeWVzCmNvbmZpZ3VyZTozNDg4NTogY2hlY2tpbmcgd2hldGhlciBjb3B5X2ZpbGVf cmFuZ2UgaXMga25vd24gdG8gd29yawpjb25maWd1cmU6MzQ5MDY6IGdjYyAtYyAtZzMgLU8y ICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozNDkwNjogJD8gPSAwCmNvbmZpZ3VyZToz NDkxNDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM0OTcwOiBjaGVja2luZyBmb3IgZF90eXBl IG1lbWJlciBpbiBkaXJlY3Rvcnkgc3RydWN0CmNvbmZpZ3VyZTozNDk5MDogZ2NjIC1vIGNv bmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1IApjb25maWd1cmU6MzQ5OTA6 ICQ/ID0gMApjb25maWd1cmU6MzUwMDE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozNTAxOTog Y2hlY2tpbmcgd2hldGhlciAvLyBpcyBkaXN0aW5jdCBmcm9tIC8KY29uZmlndXJlOjM1MDQ5 OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTozNTA2MDogY2hlY2tpbmcgd2hldGhlciBkdXAyIHdv cmtzCmNvbmZpZ3VyZTozNTE1MzogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25m dGVzdC5jICAgPiY1IApjb25maWd1cmU6MzUxNTM6ICQ/ID0gMApjb25maWd1cmU6MzUxNTM6 IC4vY29uZnRlc3QKY29uZmlndXJlOjM1MTUzOiAkPyA9IDAKY29uZmlndXJlOjM1MTY1OiBy ZXN1bHQ6IHllcwpjb25maWd1cmU6MzUyNjM6IGNoZWNraW5nIGZvciBsaWJyYXJ5IGNvbnRh aW5pbmcgYmFja3RyYWNlX3N5bWJvbHNfZmQKY29uZmlndXJlOjM1MjkzOiBnY2MgLW8gY29u ZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCmNvbmZpZ3VyZTozNTI5Mzog JD8gPSAwCmNvbmZpZ3VyZTozNTMxMzogcmVzdWx0OiBub25lIHJlcXVpcmVkCmNvbmZpZ3Vy ZTozNTM3NTogY2hlY2tpbmcgZm9yIGZhY2Nlc3NhdApjb25maWd1cmU6MzU0Mjc6IHJlc3Vs dDogeWVzCmNvbmZpZ3VyZTozNTUwMjogY2hlY2tpbmcgd2hldGhlciBmY2htb2RhdCB3b3Jr cwpjb25maWd1cmU6MzU1NzQ6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRl c3QuYyAgID4mNSAKY29uZmlndXJlOjM1NTc0OiAkPyA9IDAKY29uZmlndXJlOjM1NTc0OiAu L2NvbmZ0ZXN0CmNvbmZpZ3VyZTozNTU3NDogJD8gPSAwCmNvbmZpZ3VyZTozNTU5MDogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjM1NzI0OiBjaGVja2luZyB3aGV0aGVyIGZjbnRsIGhhbmRs ZXMgRl9EVVBGRCBjb3JyZWN0bHkKY29uZmlndXJlOjM1Nzg4OiBnY2MgLW8gY29uZnRlc3Qg LWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCmNvbmZpZ3VyZTozNTc4ODogJD8gPSAw CmNvbmZpZ3VyZTozNTc4ODogLi9jb25mdGVzdApjb25maWd1cmU6MzU3ODg6ICQ/ID0gMApj b25maWd1cmU6MzU3OTk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozNTgxNzogY2hlY2tpbmcg d2hldGhlciBmY250bCB1bmRlcnN0YW5kcyBGX0RVUEZEX0NMT0VYRUMKY29uZmlndXJlOjM1 ODUyOiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCmNv bmZpZ3VyZTozNTg1MjogJD8gPSAwCmNvbmZpZ3VyZTozNTg1MjogLi9jb25mdGVzdApjb25m aWd1cmU6MzU4NTI6ICQ/ID0gMApjb25maWd1cmU6MzU4NzE6IGdjYyAtYyAtZzMgLU8yICAg IGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6MzgyOjE6IGVycm9yOiB1bmtub3duIHR5cGUg bmFtZSAnY2hva2UnCiAgMzgyIHwgY2hva2UgbWUKICAgICAgfCBefn5+fgpjb25mdGVzdC5j OjM4Mjo5OiBlcnJvcjogZXhwZWN0ZWQgJzsnIGJlZm9yZSAnaW50JwogIDM4MiB8IGNob2tl IG1lCiAgICAgIHwgICAgICAgICBeCiAgICAgIHwgICAgICAgICA7Ci4uLi4uLgogIDM4NSB8 IGludAogICAgICB8IH5+fiAgICAgIApjb25maWd1cmU6MzU4NzE6ICQ/ID0gMQpjb25maWd1 cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQ QUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1h Y3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMwLjAuNTAiCnwgI2RlZmluZSBQQUNL QUdFX1NUUklORyAiR05VIEVtYWNzIDMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JF UE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0 dHBzOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgSEFWRV9QRFVN UEVSIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9I IDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19I IDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVT X0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0gg MQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19V VFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBf SCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9MU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVm aW5lIEhBVkVfU0FOSVRJWkVSX0FTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9T QU5JVElaRVJfQ09NTU9OX0lOVEVSRkFDRV9ERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf U09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZF X1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVf RElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVf U1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVkZTX0ggMQp8ICNkZWZpbmUgSEFW RV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19DREVGU19IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX0lFRUU3NTRfSCAxCnwgI2RlZmluZSBI QVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5l IEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JBTkRPTV9IIDEKfCAjZGVm aW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBf REFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9I UFVYX0FMVF9YT1BFTl9TT0NLRVRfQVBJIDEKfCAjZGVmaW5lIF9ORVRCU0RfU09VUkNFIDEK fCAjZGVmaW5lIF9PUEVOQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9T RU1BTlRJQ1MgMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0FUVFJJQlNfRVhU X18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0JGUF9FWFRfXyAxCnwgI2Rl ZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfREZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1RE Q19XQU5UX0lFQ182MDU1OV9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1 NTlfRlVOQ1NfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X1RZUEVT X0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0xJQl9FWFQyX18gMQp8ICNkZWZpbmUg X19TVERDX1dBTlRfTUFUSF9TUEVDX0ZVTkNTX18gMQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VS Q0UgMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgR0NDX0xJTlQgMQp8 ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAjZGVmaW5lIEhBVkVfU1lTX1NP VU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2RlZmluZSBIQVZFX1NPVU5E IDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfQUREUl9OT19SQU5ET01JWkUgMQp8ICNk ZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZU0lORk9fVU5J VCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0gg MQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZFX0lGQUREUlNfSCAx CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUgSEFW RV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJF UV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJPQURB RERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERSIDEKfCAjZGVmaW5l IEhBVkVfU0JSSyAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhB VkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9E IDEKfCAjZGVmaW5lIEhBVkVfQ0FOT05JQ0FMSVpFX0ZJTEVfTkFNRSAxCnwgI2RlZmluZSBI QVZFX1JFQUxQQVRIIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9G Q0hNT0RBVCAxCnwgI2RlZmluZSBIQVZFX0xDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRM IDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRBVCAx CnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEK fCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFT SyAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfSVNCTEFOSyAx CnwgI2RlZmluZSBIQVZFX0lTV0NUWVBFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEK fCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEK fCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBTWVNURU1fTUFMTE9D IDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQUQgMQp8ICNk ZWZpbmUgVEhSRUFEU19FTkFCTEVEIDEKfCAjZGVmaW5lIEhBVkVfWEtCIDEKfCAjZGVmaW5l IEhBVkVfWEtCUkVGUkVTSEtFWUJPQVJETUFQUElORyAxCnwgI2RlZmluZSBIQVZFX1hLQkZS RUVOQU1FUyAxCnwgI2RlZmluZSBIQVZFX1hSTVNFVERBVEFCQVNFIDEKfCAjZGVmaW5lIEhB VkVfWFNDUkVFTlJFU09VUkNFU1RSSU5HIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTk5VTUJF Uk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhBVkVfWERJU1BMQVlDRUxMUyAxCnwgI2RlZmluZSBI QVZFX1hERVNUUk9ZU1VCV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gxMVI2IDEKfCAjZGVm aW5lIEhBVkVfWF9JMThOIDEKfCAjZGVmaW5lIEhBVkVfWElDQ0FMTEJBQ0tfQ0FMTEJBQ0sg MQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9YSU0gMQp8ICNkZWZpbmUgSEFWRV9SU1ZHIDEKfCAj ZGVmaW5lIEhBVkVfV0VCUCAxCnwgI2RlZmluZSBIQVZFX1NRTElURTMgMQp8ICNkZWZpbmUg SEFWRV9TUUxJVEUzX0xPQURfRVhURU5TSU9OIDEKfCAjZGVmaW5lIEhBVkVfR0VUQUREUklO Rk9fQSAxCnwgI2RlZmluZSBIQVZFX0dUSzMgMQp8ICNkZWZpbmUgR0RLX0RJU0FCTEVfREVQ UkVDQVRJT05fV0FSTklOR1MgMQp8ICNkZWZpbmUgR0xJQl9ESVNBQkxFX0RFUFJFQ0FUSU9O X1dBUk5JTkdTIDEKfCAjZGVmaW5lIFVTRV9HVEsgMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0Nf VFJJTSAxCnwgI2RlZmluZSBIQVZFX0RCVVMgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1dBVENI X0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19UWVBFX0lTX1ZBTElEIDEKfCAj ZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0RC VVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfSU5URVJG QUNFIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIgMQp8ICNkZWZpbmUg SEFWRV9HU0VUVElOR1MgMQp8ICNkZWZpbmUgSEFWRV9MSUJTRUxJTlVYIDEKfCAjZGVmaW5l IEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhBVkVfTElCU1lTVEVNRCAxCnwgI2RlZmluZSBI QVZFX0pTT04gMQp8ICNkZWZpbmUgSEFWRV9JTk9USUZZIDEKfCAjZGVmaW5lIFVTRV9GSUxF X05PVElGWSAxCnwgI2RlZmluZSBVU0VfVE9PTEtJVF9TQ1JPTExfQkFSUyAxCnwgI2RlZmlu ZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBVU0VfWElNIDEKfCAjZGVmaW5lIEhBVkVfWFJFTkRF UiAxCnwgI2RlZmluZSBVU0VfQ0FJUk9fWENCIDEKfCAjZGVmaW5lIFVTRV9DQUlSTyAxCnwg I2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAjZGVmaW5lIEhBVkVfRlRfRkFDRV9HRVRDSEFS VkFSSUFOVElOREVYIDEKfCAjZGVmaW5lIEhBVkVfTElCT1RGIDEKfCAjZGVmaW5lIEhBVkVf T1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTIDEKfCAjZGVmaW5lIEhBVkVfTTE3Tl9GTFQgMQp8 ICNkZWZpbmUgSEFWRV9IQVJGQlVaWiAxCnwgI2RlZmluZSBVU0VfWENCIDEKfCAjZGVmaW5l IEhBVkVfWFBNIDEKfCAjZGVmaW5lIEhBVkVfSlBFRyAxCnwgI2RlZmluZSBIQVZFX0xDTVMy IDEKfCAjZGVmaW5lIEhBVkVfWkxJQiAxCnwgI2RlZmluZSBEWU5BTUlDX0xJQl9TVUZGSVgg Ii5zbyIKfCAjZGVmaW5lIERZTkFNSUNfTElCX1NFQ09OREFSWV9TVUZGSVggIiIKfCAjZGVm aW5lIEhBVkVfRExBRERSIDEKfCAjZGVmaW5lIEhBVkVfTU9EVUxFUyAxCnwgI2RlZmluZSBN T0RVTEVTX1NVRkZJWCAiLnNvIgp8ICNkZWZpbmUgTkFUSVZFX0VMSVNQX1NVRkZJWCAiLmVs biIKfCAjZGVmaW5lIEhBVkVfUE5HIDEKfCAjZGVmaW5lIEhBVkVfVElGRiAxCnwgI2RlZmlu ZSBIQVZFX0dJRiAxCnwgI2RlZmluZSBIQVZFX0dQTSAxCnwgI2RlZmluZSBIQVZFX1hfU00g MQp8ICNkZWZpbmUgSEFWRV9YUkFORFIgMQp8ICNkZWZpbmUgSEFWRV9YSU5FUkFNQSAxCnwg I2RlZmluZSBIQVZFX1hGSVhFUyAxCnwgI2RlZmluZSBIQVZFX1hJTlBVVDIgMQp8ICNkZWZp bmUgSEFWRV9YSVNDUk9MTENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWElUT1VD SENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWElCQVJSSUVSUkVMRUFTRVBPSU5U RVJJTkZPX0RFVklDRUlEIDEKfCAjZGVmaW5lIEhBVkVfWElHRVNUVVJFQ0xBU1NJTkZPX1RZ UEUgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQyAxCnwgI2RlZmluZSBIQVZFX1hTWU5DVFJJR0dF UkZFTkNFIDEKfCAjZGVmaW5lIEhBVkVfWERCRSAxCnwgI2RlZmluZSBIQVZFX1hDQl9TSEFQ RSAxCnwgI2RlZmluZSBIQVZFX1hTSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hDT01QT1NJVEUg MQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwyIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU0VDQ09N UF9IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9GSUxURVJfRkxBR19UU1lOQyAxCnwgI2RlZmlu ZSBIQVZFX0xJTlVYX0ZJTFRFUl9IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX1NF VF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9GSUxURVJfRkxB R19UU1lOQyAxCnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA4CnwgI2RlZmluZSBIQVZFX0FDQ0VQ VDQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hESVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFN RSAxCnwgI2RlZmluZSBIQVZFX0dFVFJVU0FHRSAxCnwgI2RlZmluZSBIQVZFX0dFVF9DVVJS RU5UX0RJUl9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfTFJBTkQ0OCAxCnwgI2RlZmluZSBIQVZF X1JBTkRPTSAxCnwgI2RlZmluZSBIQVZFX1JJTlQgMQp8ICNkZWZpbmUgSEFWRV9UUlVOQyAx CnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEK fCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfTkVXTE9DQUxFIDEK fCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEK fCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01B U0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJTSUdOQUwgMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElN RVIgMQp8ICNkZWZpbmUgSEFWRV9TRU5EVE8gMQp8ICNkZWZpbmUgSEFWRV9SRUNWRlJPTSAx CnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tOQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUSUZBRERS UyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfR0FJX1NU UkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5U IDEKfCAjZGVmaW5lIEhBVkVfRU5EUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUkVOVCAx CnwgI2RlZmluZSBIQVZFX0VOREdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfUkVOQU1FQVQyIDEK fCAjZGVmaW5lIEhBVkVfQ0ZNQUtFUkFXIDEKfCAjZGVmaW5lIEhBVkVfQ0ZTRVRTUEVFRCAx CnwgI2RlZmluZSBIQVZFX19fRVhFQ1VUQUJMRV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0xP RzIgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NFVE5BTUVfTlAgMQp8ICNkZWZpbmUgSEFW RV9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTElHTkVEX0FMTE9DIDEK fCAjZGVmaW5lIEhBVkVfUE9TSVhfTUFEVklTRSAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJ Tl9GUkFNRV9BRERSRVNTIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX1VOV0lORF9JTklU IDEKfCAjZGVmaW5lIEhBVkVfRlNFRUtPIDEKfCAjZGVmaW5lIEhBVkVfR1JBTlRQVCAxCnwg I2RlZmluZSBIQVZFX0dFVFBUIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfT1BFTlBUIDEKfCAj ZGVmaW5lIFRFUk1JTkZPIDEKfCAjZGVmaW5lIFRFUk1JTkZPX0RFRklORVNfQkMgMQp8ICNk ZWZpbmUgSEFWRV9USU1FUkZEIDEKfCAjZGVmaW5lIEhBVkVfVkFMR1JJTkRfVkFMR1JJTkRf SCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9VTklQQUlSX1VOSUNPREUgMQp8ICNkZWZpbmUg SEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19GT1JLIDEKfCAj ZGVmaW5lIEhBVkVfU05QUklOVEYgMQp8ICNkZWZpbmUgSEFWRV9TUEFXTl9IIDEKfCAjZGVm aW5lIEhBVkVfUE9TSVhfU1BBV04gMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTl9GSUxF X0FDVElPTlNfQUREQ0hESVJfTlAgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTkFUVFJf U0VURkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BPU0lYX1NQQVdOX1NFVFNJRCAxCnwg I2RlZmluZSBIQVZFX0dMSUIgMQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5GT19DT0RFU0VUIDEK fCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fX05MX1BBUEVSX1dJRFRIIDEKfCAjZGVmaW5lIEhB VkVfTUJTVEFURV9UIDEKfCAjZGVmaW5lIEFNUEVSU0FORF9GVUxMX05BTUUgMQp8ICNkZWZp bmUgSEFWRV9QVFlTIDEKfCAjZGVmaW5lIEhBVkVfU09DS0VUUyAxCnwgI2RlZmluZSBOVUxM X0RFVklDRSAiL2Rldi9udWxsIgp8ICNkZWZpbmUgU0VQQ0hBUiAnOicKfCAjZGVmaW5lIHN1 YnByb2Nlc3NlcyAxCnwgI2RlZmluZSBVU0VSX0ZVTExfTkFNRSBwdy0+cHdfZ2Vjb3MKfCAj ZGVmaW5lIERJUkVDVE9SWV9TRVAgJy8nCnwgI2RlZmluZSBJU19ERVZJQ0VfU0VQKF9jXykg MAp8ICNkZWZpbmUgSVNfRElSRUNUT1JZX1NFUChfY18pICgoX2NfKSA9PSBESVJFQ1RPUllf U0VQKQp8ICNkZWZpbmUgSVNfQU5ZX1NFUChfY18pIChJU19ESVJFQ1RPUllfU0VQIChfY18p KQp8ICNkZWZpbmUgSEFWRV9QUk9DRlMgMQp8ICNkZWZpbmUgREVGQVVMVF9TT1VORF9ERVZJ Q0UgIi9kZXYvZHNwIgp8ICNkZWZpbmUgSU5URVJSVVBUX0lOUFVUIDEKfCAjZGVmaW5lIE5B UlJPV1BST1RPIDEKfCAjZGVmaW5lIFVOSVg5OF9QVFlTIDEKfCAjZGVmaW5lIFBUWV9JVEVS QVRJT04gaW50IGk7IGZvciAoaSA9IDA7IGkgPCAxOyBpKyspCnwgI2RlZmluZSBQVFlfVFRZ X05BTUVfU1BSSU5URiB7IGNoYXIgKnB0eW5hbWUgPSAwOyBzaWdzZXRfdCBibG9ja2VkOyBz aWdlbXB0eXNldCAoJmJsb2NrZWQpOyBzaWdhZGRzZXQgKCZibG9ja2VkLCBTSUdDSExEKTsg cHRocmVhZF9zaWdtYXNrIChTSUdfQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKGdyYW50cHQg KGZkKSAhPSAtMSAmJiB1bmxvY2twdCAoZmQpICE9IC0xKSBwdHluYW1lID0gcHRzbmFtZShm ZCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX1VOQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKCFw dHluYW1lKSB7IGVtYWNzX2Nsb3NlIChmZCk7IHJldHVybiAtMTsgfSBzbnByaW50ZiAocHR5 X25hbWUsIFBUWV9OQU1FX1NJWkUsICIlcyIsIHB0eW5hbWUpOyB9CnwgI2RlZmluZSBQVFlf T1BFTiBkbyB7IGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX0NMT0VYRUMgfCBPX05P Q1RUWSk7IGlmIChmZCA8IDAgJiYgZXJybm8gPT0gRUlOVkFMKSBmZCA9IHBvc2l4X29wZW5w dCAoT19SRFdSIHwgT19OT0NUVFkpOyB9IHdoaWxlIChmYWxzZSkKfCAjZGVmaW5lIFBUWV9O QU1FX1NQUklOVEYgLyoqLwp8ICNkZWZpbmUgU0lHTkFMU19WSUFfQ0hBUkFDVEVSUyAxCnwg I2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEK fCAjZGVmaW5lIEhBVkVfX1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVEpNUCAxCnwg I2RlZmluZSBIQVZFX1NUQUNLX09WRVJGTE9XX0hBTkRMSU5HIDEKfCAjZGVmaW5lIFVTRyAv KiovCnwgI2RlZmluZSBHTlVfTElOVVggLyoqLwp8ICNkZWZpbmUgU0laRU9GX1NQRUVEX1Qg NAp8ICNkZWZpbmUgVVNBQkxFX0ZJT05SRUFEIDEKfCAjZGVmaW5lIFVTQUJMRV9TSUdJTyAx CnwgI2RlZmluZSBDT1BZUklHSFQgIkNvcHlyaWdodCAoQykgMjAyMyBGcmVlIFNvZnR3YXJl IEZvdW5kYXRpb24sIEluYy4iCnwgI2RlZmluZSBURVJNX0hFQURFUiAiZ3RrdXRpbC5oIgp8 ICNkZWZpbmUgRU1BQ1NfQ09ORklHVVJBVElPTiAieDg2XzY0LXBjLWxpbnV4LWdudSIKfCAj ZGVmaW5lIEVNQUNTX0NPTkZJR19PUFRJT05TICIiCnwgI2RlZmluZSBIQVZFX1hfV0lORE9X UyAxCnwgI2RlZmluZSBIQVZFX1gxMSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9BVFRSSUJV VEVfQUxJR05FRCAxCnwgI2RlZmluZSBIQVZFX1RZUEVPRiAxCnwgI2RlZmluZSBIQVZFX1NU QVRFTUVOVF9FWFBSRVNTSU9OUyAxCnwgI2RlZmluZSBNQUxMT0NfMF9JU19OT05OVUxMIDEK fCAjZGVmaW5lIEhBVkVfU1lTX0FDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GSUxF IDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRf RklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xf RlJFRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX01PREUgMQp8ICNkZWZpbmUgSEFWRV9B Q0xfRlJPTV9URVhUIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0RFTEVURV9ERUZfRklMRSAxCnwg I2RlZmluZSBIQVZFX0FDTF9FWFRFTkRFRF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0xJ QkFDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VOVFJJRVMgMQp8ICNkZWZpbmUgSEFWRV9B Q0xfRklSU1RfRU5UUlkgMQp8ICNkZWZpbmUgVVNFX0FDTCAxCnwgI2RlZmluZSBIQVZFX0FM TE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIExTVEFUX0ZPTExP V1NfU0xBU0hFRF9TWU1MSU5LIDEKfCAjZGVmaW5lIEZVTkNfUkVBTFBBVEhfV09SS1MgMQp8 ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9HRVRDV0QgMQp8ICNk ZWZpbmUgcmVzdHJpY3QgX19yZXN0cmljdF9fCnwgI2RlZmluZSBIQVZFX0VOVklST05fREVD TCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSTU9ERSAwCnwgI2RlZmluZSBIQVZFX0dFVE9Q VF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0xPTkdfT05MWSAxCnwgI2RlZmluZSBIQVZF X0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUgSEFWRV9VTlNJR05FRF9MT05HX0xPTkdfSU5U IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9NRU1NRU0gMQp8ICNkZWZpbmUgSEFWRV9ERUNMX01F TVJDSFIgMQp8ICNkZWZpbmUgSEFWRV9NSU5NQVhfSU5fU1lTX1BBUkFNX0ggMQp8ICNkZWZp bmUgVElNRV9UX0lTX1NJR05FRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfQUxBUk0gMQp8ICNk ZWZpbmUgSEFWRV9TVFJVQ1RfVE1fVE1fWk9ORSAxCnwgI2RlZmluZSBIQVZFX1RNX1pPTkUg MQp8ICNkZWZpbmUgSEFWRV9UTV9HTVRPRkYgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRVRfVCAx CnwgI2RlZmluZSBIQVZFX1dDSEFSX1QgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZDTE9TRUFM TCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VUVyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUFVU VyAxCnwgI2RlZmluZSBfX1VTRV9NSU5HV19BTlNJX1NURElPIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9FQ1ZUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GQ1ZUIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9HQ1ZUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJOTEVOIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9TVFJUT0lNQVggMQp8ICNkZWZpbmUgX1VTRV9TVERfU1RBVCAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfRVhFQ1ZQRSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfQ0xFQVJFUlJfVU5M T0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZFT0ZfVU5MT0NLRUQgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX0ZFUlJPUl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkZMVVNI X1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GR0VUU19VTkxPQ0tFRCAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfRlBVVENfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZQ VVRTX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GUkVBRF9VTkxPQ0tFRCAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfRldSSVRFX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9HRVRDX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRDSEFSX1VOTE9DS0VE IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRDX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9QVVRDSEFSX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEdFVEdST1VQU19UIGdpZF90Cnwg I2RlZmluZSBIQVZFX0RFQ0xfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZFX01BTExP Q19QT1NJWCAxCnwgI2RlZmluZSBQUk9NT1RFRF9NT0RFX1QgbW9kZV90CnwgI2RlZmluZSBI QVZFX1dPUktJTkdfVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5l IEhBVkVfX19CVUlMVElOX0VYUEVDVCAxCnwgI2RlZmluZSBIQVZFX0JZVEVTV0FQX0ggMQp8 ICNkZWZpbmUgR05VTElCX0NBTk9OSUNBTElaRV9MR1BMIDEKfCAjZGVmaW5lIEhBVkVfUkVB RExJTktBVCAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX0dFVFJFUyAxCnwgI2RlZmluZSBIQVZF X0NMT0NLX0dFVFRJTUUgMQp8ICNkZWZpbmUgSEFWRV9DTE9DS19TRVRUSU1FIDEKfCAjZGVm aW5lIEdOVUxJQl9DTE9TRV9TVFJFQU0gMQp8ICNkZWZpbmUgSEFWRV9DT1BZX0ZJTEVfUkFO R0UgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfRElSRU5UX0RfVFlQRSAxCnwgI2RlZmluZSBI QVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBHTlVMSUJfRkFDQ0VTU0FUIDEKfCAvKiBlbmQg Y29uZmRlZnMuaC4gICovCnwgCnwgI2lmZGVmIF9fbGludXhfXwp8IC8qIFRoZSBMaW51eCBr ZXJuZWwgb25seSBhZGRlZCBGX0RVUEZEX0NMT0VYRUMgaW4gMi42LjI0LCBzbyB3ZSBhbHdh eXMgcmVwbGFjZQp8ICAgIGl0IHRvIHN1cHBvcnQgdGhlIHNlbWFudGljcyBvbiBvbGRlciBr ZXJuZWxzIHRoYXQgZmFpbGVkIHdpdGggRUlOVkFMLiAgKi8KfCBjaG9rZSBtZQp8ICNlbmRp Zgp8IAp8IGludAp8IG1haW4gKHZvaWQpCnwgewp8IAp8ICAgOwp8ICAgcmV0dXJuIDA7Cnwg fQpjb25maWd1cmU6MzU4ODg6IHJlc3VsdDogbmVlZHMgcnVudGltZSBjaGVjawpjb25maWd1 cmU6MzU5NDE6IGNoZWNraW5nIHdoZXRoZXIgZmRvcGVuZGlyIGlzIGRlY2xhcmVkCmNvbmZp Z3VyZTozNTk0MTogZ2NjIC1jIC1nMyAtTzIgICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3Vy ZTozNTk0MTogJD8gPSAwCmNvbmZpZ3VyZTozNTk0MTogcmVzdWx0OiB5ZXMKY29uZmlndXJl OjM1OTYzOiBjaGVja2luZyB3aGV0aGVyIGZkb3BlbmRpciB3b3Jrcwpjb25maWd1cmU6MzYw MTM6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAgID4mNSAKY29u ZmlndXJlOjM2MDEzOiAkPyA9IDAKY29uZmlndXJlOjM2MDEzOiAuL2NvbmZ0ZXN0CmNvbmZp Z3VyZTozNjAxMzogJD8gPSAwCmNvbmZpZ3VyZTozNjAyNDogcmVzdWx0OiB5ZXMKY29uZmln dXJlOjM2MDY1OiBjaGVja2luZyBmb3IgZ2V0eGF0dHIgd2l0aCBYQVRUUl9OQU1FX1BPU0lY X0FDTCBtYWNyb3MKY29uZmlndXJlOjM2MDg5OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAg ICAgIGNvbmZ0ZXN0LmMgICA+JjUgCmNvbmZpZ3VyZTozNjA4OTogJD8gPSAwCmNvbmZpZ3Vy ZTozNjA5NjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM2MTE0OiBjaGVja2luZyBmb3IgZmxl eGlibGUgYXJyYXkgbWVtYmVyCmNvbmZpZ3VyZTozNjE0MzogZ2NjIC1jIC1nMyAtTzIgICAg Y29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjM2MTQzOiAkPyA9IDAKY29uZmlndXJlOjM2MTUx OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzYxNzA6IGNoZWNraW5nIGZvciBfX2ZwZW5kaW5n CmNvbmZpZ3VyZTozNjE4ODogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVz dC5jICAgPiY1IApjb25maWd1cmU6MzYxODg6ICQ/ID0gMApjb25maWd1cmU6MzYxOTg6IHJl c3VsdDogeWVzCmNvbmZpZ3VyZTozNjIwMTogY2hlY2tpbmcgd2hldGhlciBfX2ZwZW5kaW5n IGlzIGRlY2xhcmVkCmNvbmZpZ3VyZTozNjIwMTogZ2NjIC1jIC1nMyAtTzIgICAgIGNvbmZ0 ZXN0LmMgPiY1CmNvbmZpZ3VyZTozNjIwMTogJD8gPSAwCmNvbmZpZ3VyZTozNjIwMTogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjM2MjI0OiBjaGVja2luZyB3aGV0aGVyIGZyZWUgaXMga25v d24gdG8gcHJlc2VydmUgZXJybm8KY29uZmlndXJlOjM2MjQ4OiBnY2MgLWMgLWczIC1PMiAg ICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzYyNDg6ICQ/ID0gMApjb25maWd1cmU6MzYy NTc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozNjMwODogY2hlY2tpbmcgd2hldGhlciBmc3Rh dGF0ICguLi4sIDApIHdvcmtzCmNvbmZpZ3VyZTozNjMzNTogZ2NjIC1vIGNvbmZ0ZXN0IC1n MyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1IApjb25maWd1cmU6MzYzMzU6ICQ/ID0gMApj b25maWd1cmU6MzYzMzU6IC4vY29uZnRlc3QKY29uZmlndXJlOjM2MzM1OiAkPyA9IDAKY29u ZmlndXJlOjM2MzQ3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzYzOTU6IGNoZWNraW5nIGZv ciBzeXMvbW91bnQuaApjb25maWd1cmU6MzYzOTU6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0 ZXN0LmMgPiY1CmNvbmZpZ3VyZTozNjM5NTogJD8gPSAwCmNvbmZpZ3VyZTozNjM5NTogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjM2NDIwOiBjaGVja2luZyBmb3Igc3RhdHZmcyBmdW5jdGlv biAoU1ZSNCkKY29uZmlndXJlOjM2NDU2OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAg IGNvbmZ0ZXN0LmMgICA+JjUgCmNvbmZ0ZXN0LmM6IEluIGZ1bmN0aW9uICdtYWluJzoKY29u ZnRlc3QuYzo0MDg6MTogd2FybmluZzogYXJndW1lbnQgMSBudWxsIHdoZXJlIG5vbi1udWxs IGV4cGVjdGVkIFstV25vbm51bGxdCiAgNDA4IHwgc3RhdHZmcyAoMCwgJmZzZCk7CiAgICAg IHwgXn5+fn5+fgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gY29uZnRlc3QuYzozOTE6Ci91c3Iv aW5jbHVkZS94ODZfNjQtbGludXgtZ251L3N5cy9zdGF0dmZzLmg6NTE6MTI6IG5vdGU6IGlu IGEgY2FsbCB0byBmdW5jdGlvbiAnc3RhdHZmcycgZGVjbGFyZWQgJ25vbm51bGwnCiAgIDUx IHwgZXh0ZXJuIGludCBzdGF0dmZzIChjb25zdCBjaGFyICpfX3Jlc3RyaWN0IF9fZmlsZSwK ICAgICAgfCAgICAgICAgICAgIF5+fn5+fn4KY29uZmlndXJlOjM2NDU2OiAkPyA9IDAKY29u ZmlndXJlOjM2NDY2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzY0NzM6IGNoZWNraW5nIHdo ZXRoZXIgdG8gdXNlIHN0YXR2ZnM2NApjb25maWd1cmU6MzY0OTc6IGdjYyAtbyBjb25mdGVz dCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAgID4mNSAKY29uZnRlc3QuYzozODg6MjE6IGVy cm9yOiBzaXplIG9mIGFycmF5ICdjaGVja19mX2Jsb2Nrc19sYXJnZXJfaW5fc3RhdHZmczY0 JyBpcyBuZWdhdGl2ZQogIDM4OCB8ICAgICAgICAgICAgICAgICBpbnQgY2hlY2tfZl9ibG9j a3NfbGFyZ2VyX2luX3N0YXR2ZnM2NAogICAgICB8ICAgICAgICAgICAgICAgICAgICAgXn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgpjb25mdGVzdC5jOiBJbiBmdW5jdGlv biAnbWFpbic6CmNvbmZ0ZXN0LmM6Mzk2OjE6IHdhcm5pbmc6IGFyZ3VtZW50IDEgbnVsbCB3 aGVyZSBub24tbnVsbCBleHBlY3RlZCBbLVdub25udWxsXQogIDM5NiB8IHN0YXR2ZnM2NCAo MCwgJmZzZCk7CiAgICAgIHwgXn5+fn5+fn5+CkluIGZpbGUgaW5jbHVkZWQgZnJvbSBjb25m dGVzdC5jOjM4NjoKL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUvc3lzL3N0YXR2ZnMu aDo2NToxMjogbm90ZTogaW4gYSBjYWxsIHRvIGZ1bmN0aW9uICdzdGF0dmZzNjQnIGRlY2xh cmVkICdub25udWxsJwogICA2NSB8IGV4dGVybiBpbnQgc3RhdHZmczY0IChjb25zdCBjaGFy ICpfX3Jlc3RyaWN0IF9fZmlsZSwKICAgICAgfCAgICAgICAgICAgIF5+fn5+fn5+fgpjb25m aWd1cmU6MzY0OTc6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAv KiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAj ZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJ T04gIjMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDMwLjAu NTAiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3Jn Igp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHBzOi8vd3d3LmdudS5vcmcvc29mdHdhcmUv ZW1hY3MvIgp8ICNkZWZpbmUgSEFWRV9QRFVNUEVSIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9f SCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0gg MQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0gg MQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERf SCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GU19I IDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5G T19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VS Q0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9Q V0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpF Ul9MU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0FTQU5fSU5U RVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQ09NTU9OX0lOVEVSRkFDRV9E RUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9F WEVDSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfVkZTX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19DREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBI QVZFX0lFRUU3NTRfSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1JBTkRPTV9IIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmlu ZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5l IF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9IUFVYX0FMVF9YT1BFTl9TT0NLRVRfQVBJIDEK fCAjZGVmaW5lIF9ORVRCU0RfU09VUkNFIDEKfCAjZGVmaW5lIF9PUEVOQlNEX1NPVVJDRSAx CnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX19TVERD X1dBTlRfSUVDXzYwNTU5X0FUVFJJQlNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRf SUVDXzYwNTU5X0JGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlf REZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9FWFRfXyAxCnwg I2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRlVOQ1NfRVhUX18gMQp8ICNkZWZpbmUg X19TVERDX1dBTlRfSUVDXzYwNTU5X1RZUEVTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19X QU5UX0xJQl9FWFQyX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfTUFUSF9TUEVDX0ZVTkNT X18gMQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19FWFRFTlNJT05T X18gMQp8ICNkZWZpbmUgR0NDX0xJTlQgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9s aW51eCIKfCAjZGVmaW5lIEhBVkVfU1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVf QUxTQSAxCnwgI2RlZmluZSBIQVZFX1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJ VFlfQUREUl9OT19SQU5ET01JWkUgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEK fCAjZGVmaW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAx CnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAx CnwgI2RlZmluZSBIQVZFX0lGQUREUlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJF UV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAx CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBI QVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNU X0lGUkVRX0lGUl9BRERSIDEKfCAjZGVmaW5lIEhBVkVfU0JSSyAxCnwgI2RlZmluZSBIQVZF X0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZG T1JLIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfQ0FOT05JQ0FM SVpFX0ZJTEVfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1JFQUxQQVRIIDEKfCAjZGVmaW5lIEhB VkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0RBVCAxCnwgI2RlZmluZSBIQVZFX0xD SE1PRCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElS IDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAj ZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwg I2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5L IDEKfCAjZGVmaW5lIEhBVkVfSVNCTEFOSyAxCnwgI2RlZmluZSBIQVZFX0lTV0NUWVBFIDEK fCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwg I2RlZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0la RSAxCnwgI2RlZmluZSBTWVNURU1fTUFMTE9DIDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwg I2RlZmluZSBIQVZFX1BUSFJFQUQgMQp8ICNkZWZpbmUgVEhSRUFEU19FTkFCTEVEIDEKfCAj ZGVmaW5lIEhBVkVfWEtCIDEKfCAjZGVmaW5lIEhBVkVfWEtCUkVGUkVTSEtFWUJPQVJETUFQ UElORyAxCnwgI2RlZmluZSBIQVZFX1hLQkZSRUVOQU1FUyAxCnwgI2RlZmluZSBIQVZFX1hS TVNFVERBVEFCQVNFIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RSSU5HIDEK fCAjZGVmaW5lIEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhBVkVf WERJU1BMQVlDRUxMUyAxCnwgI2RlZmluZSBIQVZFX1hERVNUUk9ZU1VCV0lORE9XUyAxCnwg I2RlZmluZSBIQVZFX1gxMVI2IDEKfCAjZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVmaW5l IEhBVkVfWElDQ0FMTEJBQ0tfQ0FMTEJBQ0sgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9YSU0g MQp8ICNkZWZpbmUgSEFWRV9SU1ZHIDEKfCAjZGVmaW5lIEhBVkVfV0VCUCAxCnwgI2RlZmlu ZSBIQVZFX1NRTElURTMgMQp8ICNkZWZpbmUgSEFWRV9TUUxJVEUzX0xPQURfRVhURU5TSU9O IDEKfCAjZGVmaW5lIEhBVkVfR0VUQUREUklORk9fQSAxCnwgI2RlZmluZSBIQVZFX0dUSzMg MQp8ICNkZWZpbmUgR0RLX0RJU0FCTEVfREVQUkVDQVRJT05fV0FSTklOR1MgMQp8ICNkZWZp bmUgR0xJQl9ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIFVTRV9H VEsgMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfVFJJTSAxCnwgI2RlZmluZSBIQVZFX0RCVVMg MQp8ICNkZWZpbmUgSEFWRV9EQlVTX1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhB VkVfREJVU19UWVBFX0lTX1ZBTElEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9C VVNfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmlu ZSBIQVZFX0RCVVNfVkFMSURBVEVfSU5URVJGQUNFIDEKfCAjZGVmaW5lIEhBVkVfREJVU19W QUxJREFURV9NRU1CRVIgMQp8ICNkZWZpbmUgSEFWRV9HU0VUVElOR1MgMQp8ICNkZWZpbmUg SEFWRV9MSUJTRUxJTlVYIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhB VkVfTElCU1lTVEVNRCAxCnwgI2RlZmluZSBIQVZFX0pTT04gMQp8ICNkZWZpbmUgSEFWRV9J Tk9USUZZIDEKfCAjZGVmaW5lIFVTRV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBVU0VfVE9P TEtJVF9TQ1JPTExfQkFSUyAxCnwgI2RlZmluZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBVU0Vf WElNIDEKfCAjZGVmaW5lIEhBVkVfWFJFTkRFUiAxCnwgI2RlZmluZSBVU0VfQ0FJUk9fWENC IDEKfCAjZGVmaW5lIFVTRV9DQUlSTyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAj ZGVmaW5lIEhBVkVfRlRfRkFDRV9HRVRDSEFSVkFSSUFOVElOREVYIDEKfCAjZGVmaW5lIEhB VkVfTElCT1RGIDEKfCAjZGVmaW5lIEhBVkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTIDEK fCAjZGVmaW5lIEhBVkVfTTE3Tl9GTFQgMQp8ICNkZWZpbmUgSEFWRV9IQVJGQlVaWiAxCnwg I2RlZmluZSBVU0VfWENCIDEKfCAjZGVmaW5lIEhBVkVfWFBNIDEKfCAjZGVmaW5lIEhBVkVf SlBFRyAxCnwgI2RlZmluZSBIQVZFX0xDTVMyIDEKfCAjZGVmaW5lIEhBVkVfWkxJQiAxCnwg I2RlZmluZSBEWU5BTUlDX0xJQl9TVUZGSVggIi5zbyIKfCAjZGVmaW5lIERZTkFNSUNfTElC X1NFQ09OREFSWV9TVUZGSVggIiIKfCAjZGVmaW5lIEhBVkVfRExBRERSIDEKfCAjZGVmaW5l IEhBVkVfTU9EVUxFUyAxCnwgI2RlZmluZSBNT0RVTEVTX1NVRkZJWCAiLnNvIgp8ICNkZWZp bmUgTkFUSVZFX0VMSVNQX1NVRkZJWCAiLmVsbiIKfCAjZGVmaW5lIEhBVkVfUE5HIDEKfCAj ZGVmaW5lIEhBVkVfVElGRiAxCnwgI2RlZmluZSBIQVZFX0dJRiAxCnwgI2RlZmluZSBIQVZF X0dQTSAxCnwgI2RlZmluZSBIQVZFX1hfU00gMQp8ICNkZWZpbmUgSEFWRV9YUkFORFIgMQp8 ICNkZWZpbmUgSEFWRV9YSU5FUkFNQSAxCnwgI2RlZmluZSBIQVZFX1hGSVhFUyAxCnwgI2Rl ZmluZSBIQVZFX1hJTlBVVDIgMQp8ICNkZWZpbmUgSEFWRV9YSVNDUk9MTENMQVNTSU5GT19U WVBFIDEKfCAjZGVmaW5lIEhBVkVfWElUT1VDSENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5l IEhBVkVfWElCQVJSSUVSUkVMRUFTRVBPSU5URVJJTkZPX0RFVklDRUlEIDEKfCAjZGVmaW5l IEhBVkVfWElHRVNUVVJFQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQyAx CnwgI2RlZmluZSBIQVZFX1hTWU5DVFJJR0dFUkZFTkNFIDEKfCAjZGVmaW5lIEhBVkVfWERC RSAxCnwgI2RlZmluZSBIQVZFX1hDQl9TSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hTSEFQRSAx CnwgI2RlZmluZSBIQVZFX1hDT01QT1NJVEUgMQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwyIDEK fCAjZGVmaW5lIEhBVkVfTElOVVhfU0VDQ09NUF9IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9T RUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9G SUxURVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZJTFRFUl9IIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfU0VDQ09NUF9GSUxURVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBTSVpFT0Zf TE9ORyA4CnwgI2RlZmluZSBIQVZFX0FDQ0VQVDQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hESVIg MQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJVU0FH RSAxCnwgI2RlZmluZSBIQVZFX0dFVF9DVVJSRU5UX0RJUl9OQU1FIDEKfCAjZGVmaW5lIEhB VkVfTFJBTkQ0OCAxCnwgI2RlZmluZSBIQVZFX1JBTkRPTSAxCnwgI2RlZmluZSBIQVZFX1JJ TlQgMQp8ICNkZWZpbmUgSEFWRV9UUlVOQyAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwg I2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEK fCAjZGVmaW5lIEhBVkVfTkVXTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEK fCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8 ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJTSUdO QUwgMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9TRU5EVE8g MQp8ICNkZWZpbmUgSEFWRV9SRUNWRlJPTSAxCnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tOQU1F IDEKfCAjZGVmaW5lIEhBVkVfR0VUSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVJRkFE RFJTIDEKfCAjZGVmaW5lIEhBVkVfR0FJX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lO QyAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EUFdFTlQg MQp8ICNkZWZpbmUgSEFWRV9HRVRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0VOREdSRU5UIDEK fCAjZGVmaW5lIEhBVkVfUkVOQU1FQVQyIDEKfCAjZGVmaW5lIEhBVkVfQ0ZNQUtFUkFXIDEK fCAjZGVmaW5lIEhBVkVfQ0ZTRVRTUEVFRCAxCnwgI2RlZmluZSBIQVZFX19fRVhFQ1VUQUJM RV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFE X1NFVE5BTUVfTlAgMQp8ICNkZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfTUFEVklT RSAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9GUkFNRV9BRERSRVNTIDEKfCAjZGVmaW5l IEhBVkVfX19CVUlMVElOX1VOV0lORF9JTklUIDEKfCAjZGVmaW5lIEhBVkVfRlNFRUtPIDEK fCAjZGVmaW5lIEhBVkVfR1JBTlRQVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBUIDEKfCAjZGVm aW5lIEhBVkVfUE9TSVhfT1BFTlBUIDEKfCAjZGVmaW5lIFRFUk1JTkZPIDEKfCAjZGVmaW5l IFRFUk1JTkZPX0RFRklORVNfQkMgMQp8ICNkZWZpbmUgSEFWRV9USU1FUkZEIDEKfCAjZGVm aW5lIEhBVkVfVkFMR1JJTkRfVkFMR1JJTkRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9V TklQQUlSX1VOSUNPREUgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVm aW5lIEhBVkVfV09SS0lOR19GT1JLIDEKfCAjZGVmaW5lIEhBVkVfU05QUklOVEYgMQp8ICNk ZWZpbmUgSEFWRV9TUEFXTl9IIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV04gMQp8ICNk ZWZpbmUgSEFWRV9QT1NJWF9TUEFXTl9GSUxFX0FDVElPTlNfQUREQ0hESVJfTlAgMQp8ICNk ZWZpbmUgSEFWRV9QT1NJWF9TUEFXTkFUVFJfU0VURkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9E RUNMX1BPU0lYX1NQQVdOX1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX0dMSUIgMQp8ICNkZWZp bmUgSEFWRV9MQU5HSU5GT19DT0RFU0VUIDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fX05M X1BBUEVSX1dJRFRIIDEKfCAjZGVmaW5lIEhBVkVfTUJTVEFURV9UIDEKfCAjZGVmaW5lIEFN UEVSU0FORF9GVUxMX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9QVFlTIDEKfCAjZGVmaW5lIEhB VkVfU09DS0VUUyAxCnwgI2RlZmluZSBOVUxMX0RFVklDRSAiL2Rldi9udWxsIgp8ICNkZWZp bmUgU0VQQ0hBUiAnOicKfCAjZGVmaW5lIHN1YnByb2Nlc3NlcyAxCnwgI2RlZmluZSBVU0VS X0ZVTExfTkFNRSBwdy0+cHdfZ2Vjb3MKfCAjZGVmaW5lIERJUkVDVE9SWV9TRVAgJy8nCnwg I2RlZmluZSBJU19ERVZJQ0VfU0VQKF9jXykgMAp8ICNkZWZpbmUgSVNfRElSRUNUT1JZX1NF UChfY18pICgoX2NfKSA9PSBESVJFQ1RPUllfU0VQKQp8ICNkZWZpbmUgSVNfQU5ZX1NFUChf Y18pIChJU19ESVJFQ1RPUllfU0VQIChfY18pKQp8ICNkZWZpbmUgSEFWRV9QUk9DRlMgMQp8 ICNkZWZpbmUgREVGQVVMVF9TT1VORF9ERVZJQ0UgIi9kZXYvZHNwIgp8ICNkZWZpbmUgSU5U RVJSVVBUX0lOUFVUIDEKfCAjZGVmaW5lIE5BUlJPV1BST1RPIDEKfCAjZGVmaW5lIFVOSVg5 OF9QVFlTIDEKfCAjZGVmaW5lIFBUWV9JVEVSQVRJT04gaW50IGk7IGZvciAoaSA9IDA7IGkg PCAxOyBpKyspCnwgI2RlZmluZSBQVFlfVFRZX05BTUVfU1BSSU5URiB7IGNoYXIgKnB0eW5h bWUgPSAwOyBzaWdzZXRfdCBibG9ja2VkOyBzaWdlbXB0eXNldCAoJmJsb2NrZWQpOyBzaWdh ZGRzZXQgKCZibG9ja2VkLCBTSUdDSExEKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfQkxPQ0ss ICZibG9ja2VkLCAwKTsgaWYgKGdyYW50cHQgKGZkKSAhPSAtMSAmJiB1bmxvY2twdCAoZmQp ICE9IC0xKSBwdHluYW1lID0gcHRzbmFtZShmZCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX1VO QkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKCFwdHluYW1lKSB7IGVtYWNzX2Nsb3NlIChmZCk7 IHJldHVybiAtMTsgfSBzbnByaW50ZiAocHR5X25hbWUsIFBUWV9OQU1FX1NJWkUsICIlcyIs IHB0eW5hbWUpOyB9CnwgI2RlZmluZSBQVFlfT1BFTiBkbyB7IGZkID0gcG9zaXhfb3BlbnB0 IChPX1JEV1IgfCBPX0NMT0VYRUMgfCBPX05PQ1RUWSk7IGlmIChmZCA8IDAgJiYgZXJybm8g PT0gRUlOVkFMKSBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19OT0NUVFkpOyB9IHdo aWxlIChmYWxzZSkKfCAjZGVmaW5lIFBUWV9OQU1FX1NQUklOVEYgLyoqLwp8ICNkZWZpbmUg U0lHTkFMU19WSUFfQ0hBUkFDVEVSUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8 ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfX1NFVEpNUCAxCnwg I2RlZmluZSBIQVZFX1NJR1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NUQUNLX09WRVJGTE9X X0hBTkRMSU5HIDEKfCAjZGVmaW5lIFVTRyAvKiovCnwgI2RlZmluZSBHTlVfTElOVVggLyoq Lwp8ICNkZWZpbmUgU0laRU9GX1NQRUVEX1QgNAp8ICNkZWZpbmUgVVNBQkxFX0ZJT05SRUFE IDEKfCAjZGVmaW5lIFVTQUJMRV9TSUdJTyAxCnwgI2RlZmluZSBDT1BZUklHSFQgIkNvcHly aWdodCAoQykgMjAyMyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4iCnwgI2RlZmlu ZSBURVJNX0hFQURFUiAiZ3RrdXRpbC5oIgp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHVVJBVElP TiAieDg2XzY0LXBjLWxpbnV4LWdudSIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR19PUFRJT05T ICIiCnwgI2RlZmluZSBIQVZFX1hfV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gxMSAxCnwg I2RlZmluZSBIQVZFX1NUUlVDVF9BVFRSSUJVVEVfQUxJR05FRCAxCnwgI2RlZmluZSBIQVZF X1RZUEVPRiAxCnwgI2RlZmluZSBIQVZFX1NUQVRFTUVOVF9FWFBSRVNTSU9OUyAxCnwgI2Rl ZmluZSBNQUxMT0NfMF9JU19OT05OVUxMIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0FDTF9IIDEK fCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9G RCAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9T RVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJFRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9G Uk9NX01PREUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9URVhUIDEKfCAjZGVmaW5lIEhB VkVfQUNMX0RFTEVURV9ERUZfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9FWFRFTkRFRF9G SUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0xJQkFDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNM X0VOVFJJRVMgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRklSU1RfRU5UUlkgMQp8ICNkZWZpbmUg VVNFX0FDTCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxM T0NBIDEKfCAjZGVmaW5lIExTVEFUX0ZPTExPV1NfU0xBU0hFRF9TWU1MSU5LIDEKfCAjZGVm aW5lIEZVTkNfUkVBTFBBVEhfV09SS1MgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8 ICNkZWZpbmUgSEFWRV9HRVRDV0QgMQp8ICNkZWZpbmUgcmVzdHJpY3QgX19yZXN0cmljdF9f CnwgI2RlZmluZSBIQVZFX0VOVklST05fREVDTCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RS TU9ERSAwCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BU X0xPTkdfT05MWSAxCnwgI2RlZmluZSBIQVZFX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUg SEFWRV9VTlNJR05FRF9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9NRU1N RU0gMQp8ICNkZWZpbmUgSEFWRV9ERUNMX01FTVJDSFIgMQp8ICNkZWZpbmUgSEFWRV9NSU5N QVhfSU5fU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgVElNRV9UX0lTX1NJR05FRCAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfQUxBUk0gMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVE1fVE1fWk9O RSAxCnwgI2RlZmluZSBIQVZFX1RNX1pPTkUgMQp8ICNkZWZpbmUgSEFWRV9UTV9HTVRPRkYg MQp8ICNkZWZpbmUgSEFWRV9TSUdTRVRfVCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX1QgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX0ZDTE9TRUFMTCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VU VyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUFVUVyAxCnwgI2RlZmluZSBfX1VTRV9NSU5HV19B TlNJX1NURElPIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9FQ1ZUIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9GQ1ZUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HQ1ZUIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9TVFJOTEVOIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJUT0lNQVggMQp8ICNkZWZp bmUgX1VTRV9TVERfU1RBVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRVhFQ1ZQRSAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfQ0xFQVJFUlJfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X0ZFT0ZfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZFUlJPUl9VTkxPQ0tFRCAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfRkZMVVNIX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9GR0VUU19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRlBVVENfVU5MT0NL RUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZQVVRTX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9GUkVBRF9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRldSSVRFX1VO TE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRDX1VOTE9DS0VEIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9HRVRDSEFSX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRD X1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRDSEFSX1VOTE9DS0VEIDEKfCAj ZGVmaW5lIEdFVEdST1VQU19UIGdpZF90CnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VURFRBQkxF U0laRSAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19QT1NJWCAxCnwgI2RlZmluZSBQUk9NT1RF RF9NT0RFX1QgbW9kZV90CnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVVRJTUVTIDEKfCAjZGVm aW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX0VYUEVDVCAxCnwg I2RlZmluZSBIQVZFX0JZVEVTV0FQX0ggMQp8ICNkZWZpbmUgR05VTElCX0NBTk9OSUNBTEla RV9MR1BMIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZFX0NM T0NLX0dFVFJFUyAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX0dFVFRJTUUgMQp8ICNkZWZpbmUg SEFWRV9DTE9DS19TRVRUSU1FIDEKfCAjZGVmaW5lIEdOVUxJQl9DTE9TRV9TVFJFQU0gMQp8 ICNkZWZpbmUgSEFWRV9DT1BZX0ZJTEVfUkFOR0UgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1Rf RElSRU5UX0RfVFlQRSAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBH TlVMSUJfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRE9QRU5ESVIgMQp8ICNk ZWZpbmUgR05VTElCX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBHRVRYQVRUUl9XSVRIX1BPU0lY X0FDTFMgMQp8ICNkZWZpbmUgRkxFWElCTEVfQVJSQVlfTUVNQkVSIC8qKi8KfCAjZGVmaW5l IEhBVkVfREVDTF9fX0ZQRU5ESU5HIDEKfCAjZGVmaW5lIEhBVkVfRlJFRV9QT1NJWCAxCnwg I2RlZmluZSBIQVZFX1NZU19NT1VOVF9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwg I2luY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICAgICAgICAgICAgICAgICAjaW5jbHVkZSA8c3lz L3N0YXR2ZnMuaD4KfCAgICAgICAgICAgICAgICAgc3RydWN0IHN0YXR2ZnM2NCBmc2Q7Cnwg ICAgICAgICAgICAgICAgIGludCBjaGVja19mX2Jsb2Nrc19sYXJnZXJfaW5fc3RhdHZmczY0 CnwgICAgICAgICAgICAgICAgICAgW3NpemVvZiAoKChzdHJ1Y3Qgc3RhdHZmczY0ICopIDAp LT5mX2Jsb2NrcykKfCAgICAgICAgICAgICAgICAgICAgPiBzaXplb2YgKCgoc3RydWN0IHN0 YXR2ZnMgKikgMCktPmZfYmxvY2tzKQp8ICAgICAgICAgICAgICAgICAgICA/IDEgOiAtMV07 CnwgCnwgaW50CnwgbWFpbiAodm9pZCkKfCB7Cnwgc3RhdHZmczY0ICgwLCAmZnNkKTsKfCAg IDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjM2NTA3OiByZXN1bHQ6IG5vCmNvbmZp Z3VyZTozNjUyMzogY2hlY2tpbmcgZm9yIHR3by1hcmd1bWVudCBzdGF0ZnMgd2l0aCBzdGF0 ZnMuZl9mcnNpemUgbWVtYmVyCmNvbmZpZ3VyZTozNjU1MzogZ2NjIC1vIGNvbmZ0ZXN0IC1n MyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1IApjb25maWd1cmU6MzY1NTM6ICQ/ID0gMApj b25maWd1cmU6MzY1NTM6IC4vY29uZnRlc3QKY29uZmlndXJlOjM2NTUzOiAkPyA9IDAKY29u ZmlndXJlOjM2NTY1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzY4MDU6IGNoZWNraW5nIGZv ciBzeXMvZnMvczVwYXJhbS5oCmNvbmZpZ3VyZTozNjgwNTogZ2NjIC1jIC1nMyAtTzIgICAg Y29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzo0MTU6MTA6IGZhdGFsIGVycm9yOiBzeXMvZnMv czVwYXJhbS5oOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CiAgNDE1IHwgI2luY2x1ZGUg PHN5cy9mcy9zNXBhcmFtLmg+CiAgICAgIHwgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+ CmNvbXBpbGF0aW9uIHRlcm1pbmF0ZWQuCmNvbmZpZ3VyZTozNjgwNTogJD8gPSAxCmNvbmZp Z3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5l IFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJl bWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMzAuMC41MCIKfCAjZGVmaW5lIFBB Q0tBR0VfU1RSSU5HICJHTlUgRW1hY3MgMzAuMC41MCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVH UkVQT1JUICJidWctZ251LWVtYWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAi aHR0cHM6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmluZSBIQVZFX1BE VU1QRVIgMQp8ICNkZWZpbmUgSEFWRV9TVERJT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElC X0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVT X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1Nf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQ RVNfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJf SCAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZTX0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0Nf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19TWVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9QVFlf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRN UF9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0xTQU5fSU5URVJGQUNFX0ggMQp8ICNk ZWZpbmUgSEFWRV9TQU5JVElaRVJfQVNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZF X1NBTklUSVpFUl9DT01NT05fSU5URVJGQUNFX0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19TT0NLRVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhB VkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFW RV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX0VYRUNJTkZPX0ggMQp8ICNkZWZpbmUgSEFW RV9TVERJT19FWFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19WRlNfSCAxCnwgI2RlZmluZSBI QVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0NERUZTX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfSUVFRTc1NF9IIDEKfCAjZGVmaW5l IEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZp bmUgSEFWRV9TVERCT09MX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkFORE9NX0ggMQp8ICNk ZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAjZGVmaW5l IF9EQVJXSU5fQ19TT1VSQ0UgMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUg X0hQVVhfQUxUX1hPUEVOX1NPQ0tFVF9BUEkgMQp8ICNkZWZpbmUgX05FVEJTRF9TT1VSQ0Ug MQp8ICNkZWZpbmUgX09QRU5CU0RfU09VUkNFIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFE X1NFTUFOVElDUyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfQVRUUklCU19F WFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfQkZQX0VYVF9fIDEKfCAj ZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9ERlBfRVhUX18gMQp8ICNkZWZpbmUgX19T VERDX1dBTlRfSUVDXzYwNTU5X0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182 MDU1OV9GVU5DU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfVFlQ RVNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfTElCX0VYVDJfXyAxCnwgI2RlZmlu ZSBfX1NURENfV0FOVF9NQVRIX1NQRUNfRlVOQ1NfXyAxCnwgI2RlZmluZSBfVEFOREVNX1NP VVJDRSAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBHQ0NfTElOVCAx CnwgI2RlZmluZSBTWVNURU1fVFlQRSAiZ251L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNf U09VTkRDQVJEX0ggMQp8ICNkZWZpbmUgSEFWRV9BTFNBIDEKfCAjZGVmaW5lIEhBVkVfU09V TkQgMQp8ICNkZWZpbmUgSEFWRV9QRVJTT05BTElUWV9BRERSX05PX1JBTkRPTUlaRSAxCnwg I2RlZmluZSBIQVZFX0xJTlVYX1NZU0lORk8gMQp8ICNkZWZpbmUgTElOVVhfU1lTSU5GT19V TklUIDEKfCAjZGVmaW5lIEhBVkVfVEVSTV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRf SCAxCnwgI2RlZmluZSBIQVZFX05FVF9JRl9IIDEKfCAjZGVmaW5lIEhBVkVfSUZBRERSU19I IDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9GTEFHUyAxCnwgI2RlZmluZSBI QVZFX1NUUlVDVF9JRlJFUV9JRlJfSFdBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lG UkVRX0lGUl9ORVRNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9CUk9B REFERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0FERFIgMQp8ICNkZWZp bmUgSEFWRV9TQlJLIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUg SEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9GQ0hN T0QgMQp8ICNkZWZpbmUgSEFWRV9DQU5PTklDQUxJWkVfRklMRV9OQU1FIDEKfCAjZGVmaW5l IEhBVkVfUkVBTFBBVEggMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwgI2RlZmluZSBIQVZF X0ZDSE1PREFUIDEKfCAjZGVmaW5lIEhBVkVfTENITU9EIDEKfCAjZGVmaW5lIEhBVkVfRkNO VEwgMQp8ICNkZWZpbmUgSEFWRV9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgSEFWRV9GU1RBVEFU IDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkg MQp8ICNkZWZpbmUgSEFWRV9QU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdN QVNLIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFWRV9JU0JMQU5L IDEKfCAjZGVmaW5lIEhBVkVfSVNXQ1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9TVFJUT0lNQVgg MQp8ICNkZWZpbmUgSEFWRV9TWU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxUSU1FX1Ig MQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIFNZU1RFTV9NQUxM T0MgMQp8ICNkZWZpbmUgSEFWRV9NTUFQIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRCAxCnwg I2RlZmluZSBUSFJFQURTX0VOQUJMRUQgMQp8ICNkZWZpbmUgSEFWRV9YS0IgMQp8ICNkZWZp bmUgSEFWRV9YS0JSRUZSRVNIS0VZQk9BUkRNQVBQSU5HIDEKfCAjZGVmaW5lIEhBVkVfWEtC RlJFRU5BTUVTIDEKfCAjZGVmaW5lIEhBVkVfWFJNU0VUREFUQUJBU0UgMQp8ICNkZWZpbmUg SEFWRV9YU0NSRUVOUkVTT1VSQ0VTVFJJTkcgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOTlVN QkVST0ZTQ1JFRU4gMQp8ICNkZWZpbmUgSEFWRV9YRElTUExBWUNFTExTIDEKfCAjZGVmaW5l IEhBVkVfWERFU1RST1lTVUJXSU5ET1dTIDEKfCAjZGVmaW5lIEhBVkVfWDExUjYgMQp8ICNk ZWZpbmUgSEFWRV9YX0kxOE4gMQp8ICNkZWZpbmUgSEFWRV9YSUNDQUxMQkFDS19DQUxMQkFD SyAxCnwgI2RlZmluZSBIQVZFX1gxMVI2X1hJTSAxCnwgI2RlZmluZSBIQVZFX1JTVkcgMQp8 ICNkZWZpbmUgSEFWRV9XRUJQIDEKfCAjZGVmaW5lIEhBVkVfU1FMSVRFMyAxCnwgI2RlZmlu ZSBIQVZFX1NRTElURTNfTE9BRF9FWFRFTlNJT04gMQp8ICNkZWZpbmUgSEFWRV9HRVRBRERS SU5GT19BIDEKfCAjZGVmaW5lIEhBVkVfR1RLMyAxCnwgI2RlZmluZSBHREtfRElTQUJMRV9E RVBSRUNBVElPTl9XQVJOSU5HUyAxCnwgI2RlZmluZSBHTElCX0RJU0FCTEVfREVQUkVDQVRJ T05fV0FSTklOR1MgMQp8ICNkZWZpbmUgVVNFX0dUSyAxCnwgI2RlZmluZSBIQVZFX01BTExP Q19UUklNIDEKfCAjZGVmaW5lIEhBVkVfREJVUyAxCnwgI2RlZmluZSBIQVZFX0RCVVNfV0FU Q0hfR0VUX1VOSVhfRkQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1RZUEVfSVNfVkFMSUQgMQp8 ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0JVU19OQU1FIDEKfCAjZGVmaW5lIEhBVkVf REJVU19WQUxJREFURV9QQVRIIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9JTlRF UkZBQ0UgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX01FTUJFUiAxCnwgI2RlZmlu ZSBIQVZFX0dTRVRUSU5HUyAxCnwgI2RlZmluZSBIQVZFX0xJQlNFTElOVVggMQp8ICNkZWZp bmUgSEFWRV9HTlVUTFMgMQp8ICNkZWZpbmUgSEFWRV9MSUJTWVNURU1EIDEKfCAjZGVmaW5l IEhBVkVfSlNPTiAxCnwgI2RlZmluZSBIQVZFX0lOT1RJRlkgMQp8ICNkZWZpbmUgVVNFX0ZJ TEVfTk9USUZZIDEKfCAjZGVmaW5lIFVTRV9UT09MS0lUX1NDUk9MTF9CQVJTIDEKfCAjZGVm aW5lIEhBVkVfWElNIDEKfCAjZGVmaW5lIFVTRV9YSU0gMQp8ICNkZWZpbmUgSEFWRV9YUkVO REVSIDEKfCAjZGVmaW5lIFVTRV9DQUlST19YQ0IgMQp8ICNkZWZpbmUgVVNFX0NBSVJPIDEK fCAjZGVmaW5lIEhBVkVfRlJFRVRZUEUgMQp8ICNkZWZpbmUgSEFWRV9GVF9GQUNFX0dFVENI QVJWQVJJQU5USU5ERVggMQp8ICNkZWZpbmUgSEFWRV9MSUJPVEYgMQp8ICNkZWZpbmUgSEFW RV9PVEZfR0VUX1ZBUklBVElPTl9HTFlQSFMgMQp8ICNkZWZpbmUgSEFWRV9NMTdOX0ZMVCAx CnwgI2RlZmluZSBIQVZFX0hBUkZCVVpaIDEKfCAjZGVmaW5lIFVTRV9YQ0IgMQp8ICNkZWZp bmUgSEFWRV9YUE0gMQp8ICNkZWZpbmUgSEFWRV9KUEVHIDEKfCAjZGVmaW5lIEhBVkVfTENN UzIgMQp8ICNkZWZpbmUgSEFWRV9aTElCIDEKfCAjZGVmaW5lIERZTkFNSUNfTElCX1NVRkZJ WCAiLnNvIgp8ICNkZWZpbmUgRFlOQU1JQ19MSUJfU0VDT05EQVJZX1NVRkZJWCAiIgp8ICNk ZWZpbmUgSEFWRV9ETEFERFIgMQp8ICNkZWZpbmUgSEFWRV9NT0RVTEVTIDEKfCAjZGVmaW5l IE1PRFVMRVNfU1VGRklYICIuc28iCnwgI2RlZmluZSBOQVRJVkVfRUxJU1BfU1VGRklYICIu ZWxuIgp8ICNkZWZpbmUgSEFWRV9QTkcgMQp8ICNkZWZpbmUgSEFWRV9USUZGIDEKfCAjZGVm aW5lIEhBVkVfR0lGIDEKfCAjZGVmaW5lIEhBVkVfR1BNIDEKfCAjZGVmaW5lIEhBVkVfWF9T TSAxCnwgI2RlZmluZSBIQVZFX1hSQU5EUiAxCnwgI2RlZmluZSBIQVZFX1hJTkVSQU1BIDEK fCAjZGVmaW5lIEhBVkVfWEZJWEVTIDEKfCAjZGVmaW5lIEhBVkVfWElOUFVUMiAxCnwgI2Rl ZmluZSBIQVZFX1hJU0NST0xMQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YSVRP VUNIQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YSUJBUlJJRVJSRUxFQVNFUE9J TlRFUklORk9fREVWSUNFSUQgMQp8ICNkZWZpbmUgSEFWRV9YSUdFU1RVUkVDTEFTU0lORk9f VFlQRSAxCnwgI2RlZmluZSBIQVZFX1hTWU5DIDEKfCAjZGVmaW5lIEhBVkVfWFNZTkNUUklH R0VSRkVOQ0UgMQp8ICNkZWZpbmUgSEFWRV9YREJFIDEKfCAjZGVmaW5lIEhBVkVfWENCX1NI QVBFIDEKfCAjZGVmaW5lIEhBVkVfWFNIQVBFIDEKfCAjZGVmaW5lIEhBVkVfWENPTVBPU0lU RSAxCnwgI2RlZmluZSBIQVZFX0xJQlhNTDIgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TRUND T01QX0ggMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfU0VUX01PREVfRklMVEVSIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX0ZJTFRFUl9GTEFHX1RTWU5DIDEKfCAjZGVm aW5lIEhBVkVfTElOVVhfRklMVEVSX0ggMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBf U0VUX01PREVfRklMVEVSIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX0ZJTFRFUl9G TEFHX1RTWU5DIDEKfCAjZGVmaW5lIFNJWkVPRl9MT05HIDgKfCAjZGVmaW5lIEhBVkVfQUND RVBUNCAxCnwgI2RlZmluZSBIQVZFX0ZDSERJUiAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1RO QU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUUlVTQUdFIDEKfCAjZGVmaW5lIEhBVkVfR0VUX0NV UlJFTlRfRElSX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9MUkFORDQ4IDEKfCAjZGVmaW5lIEhB VkVfUkFORE9NIDEKfCAjZGVmaW5lIEhBVkVfUklOVCAxCnwgI2RlZmluZSBIQVZFX1RSVU5D IDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUg MQp8ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9ORVdMT0NBTEUg MQp8ICNkZWZpbmUgSEFWRV9HRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQg MQp8ICNkZWZpbmUgSEFWRV9TSFVURE9XTiAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lH TUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlNJR05BTCAxCnwgI2RlZmluZSBIQVZFX1NFVElU SU1FUiAxCnwgI2RlZmluZSBIQVZFX1NFTkRUTyAxCnwgI2RlZmluZSBIQVZFX1JFQ1ZGUk9N IDEKfCAjZGVmaW5lIEhBVkVfR0VUU09DS05BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRJRkFE RFJTIDEKfCAjZGVmaW5lIEhBVkVfRlJFRUlGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9HQUlf U1RSRVJST1IgMQp8ICNkZWZpbmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFdF TlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0dFVEdSRU5U IDEKfCAjZGVmaW5lIEhBVkVfRU5ER1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9SRU5BTUVBVDIg MQp8ICNkZWZpbmUgSEFWRV9DRk1BS0VSQVcgMQp8ICNkZWZpbmUgSEFWRV9DRlNFVFNQRUVE IDEKfCAjZGVmaW5lIEhBVkVfX19FWEVDVVRBQkxFX1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVf TE9HMiAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0VUTkFNRV9OUCAxCnwgI2RlZmluZSBI QVZFX0FMSUdORURfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0FMSUdORURfQUxMT0Mg MQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9NQURWSVNFIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlM VElOX0ZSQU1FX0FERFJFU1MgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fVU5XSU5EX0lO SVQgMQp8ICNkZWZpbmUgSEFWRV9GU0VFS08gMQp8ICNkZWZpbmUgSEFWRV9HUkFOVFBUIDEK fCAjZGVmaW5lIEhBVkVfR0VUUFQgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9PUEVOUFQgMQp8 ICNkZWZpbmUgVEVSTUlORk8gMQp8ICNkZWZpbmUgVEVSTUlORk9fREVGSU5FU19CQyAxCnwg I2RlZmluZSBIQVZFX1RJTUVSRkQgMQp8ICNkZWZpbmUgSEFWRV9WQUxHUklORF9WQUxHUklO RF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1VOSVBBSVJfVU5JQ09ERSAxCnwgI2RlZmlu ZSBIQVZFX1dPUktJTkdfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX0ZPUksgMQp8 ICNkZWZpbmUgSEFWRV9TTlBSSU5URiAxCnwgI2RlZmluZSBIQVZFX1NQQVdOX0ggMQp8ICNk ZWZpbmUgSEFWRV9QT1NJWF9TUEFXTiAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOX0ZJ TEVfQUNUSU9OU19BRERDSERJUl9OUCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOQVRU Ul9TRVRGTEFHUyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUE9TSVhfU1BBV05fU0VUU0lEIDEK fCAjZGVmaW5lIEhBVkVfR0xJQiAxCnwgI2RlZmluZSBIQVZFX0xBTkdJTkZPX0NPREVTRVQg MQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5GT19fTkxfUEFQRVJfV0lEVEggMQp8ICNkZWZpbmUg SEFWRV9NQlNUQVRFX1QgMQp8ICNkZWZpbmUgQU1QRVJTQU5EX0ZVTExfTkFNRSAxCnwgI2Rl ZmluZSBIQVZFX1BUWVMgMQp8ICNkZWZpbmUgSEFWRV9TT0NLRVRTIDEKfCAjZGVmaW5lIE5V TExfREVWSUNFICIvZGV2L251bGwiCnwgI2RlZmluZSBTRVBDSEFSICc6Jwp8ICNkZWZpbmUg c3VicHJvY2Vzc2VzIDEKfCAjZGVmaW5lIFVTRVJfRlVMTF9OQU1FIHB3LT5wd19nZWNvcwp8 ICNkZWZpbmUgRElSRUNUT1JZX1NFUCAnLycKfCAjZGVmaW5lIElTX0RFVklDRV9TRVAoX2Nf KSAwCnwgI2RlZmluZSBJU19ESVJFQ1RPUllfU0VQKF9jXykgKChfY18pID09IERJUkVDVE9S WV9TRVApCnwgI2RlZmluZSBJU19BTllfU0VQKF9jXykgKElTX0RJUkVDVE9SWV9TRVAgKF9j XykpCnwgI2RlZmluZSBIQVZFX1BST0NGUyAxCnwgI2RlZmluZSBERUZBVUxUX1NPVU5EX0RF VklDRSAiL2Rldi9kc3AiCnwgI2RlZmluZSBJTlRFUlJVUFRfSU5QVVQgMQp8ICNkZWZpbmUg TkFSUk9XUFJPVE8gMQp8ICNkZWZpbmUgVU5JWDk4X1BUWVMgMQp8ICNkZWZpbmUgUFRZX0lU RVJBVElPTiBpbnQgaTsgZm9yIChpID0gMDsgaSA8IDE7IGkrKykKfCAjZGVmaW5lIFBUWV9U VFlfTkFNRV9TUFJJTlRGIHsgY2hhciAqcHR5bmFtZSA9IDA7IHNpZ3NldF90IGJsb2NrZWQ7 IHNpZ2VtcHR5c2V0ICgmYmxvY2tlZCk7IHNpZ2FkZHNldCAoJmJsb2NrZWQsIFNJR0NITEQp OyBwdGhyZWFkX3NpZ21hc2sgKFNJR19CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoZ3JhbnRw dCAoZmQpICE9IC0xICYmIHVubG9ja3B0IChmZCkgIT0gLTEpIHB0eW5hbWUgPSBwdHNuYW1l KGZkKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfVU5CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAo IXB0eW5hbWUpIHsgZW1hY3NfY2xvc2UgKGZkKTsgcmV0dXJuIC0xOyB9IHNucHJpbnRmIChw dHlfbmFtZSwgUFRZX05BTUVfU0laRSwgIiVzIiwgcHR5bmFtZSk7IH0KfCAjZGVmaW5lIFBU WV9PUEVOIGRvIHsgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fQ0xPRVhFQyB8IE9f Tk9DVFRZKTsgaWYgKGZkIDwgMCAmJiBlcnJubyA9PSBFSU5WQUwpIGZkID0gcG9zaXhfb3Bl bnB0IChPX1JEV1IgfCBPX05PQ1RUWSk7IH0gd2hpbGUgKGZhbHNlKQp8ICNkZWZpbmUgUFRZ X05BTUVfU1BSSU5URiAvKiovCnwgI2RlZmluZSBTSUdOQUxTX1ZJQV9DSEFSQUNURVJTIDEK fCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1Mg MQp8ICNkZWZpbmUgSEFWRV9fU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUSk1QIDEK fCAjZGVmaW5lIEhBVkVfU1RBQ0tfT1ZFUkZMT1dfSEFORExJTkcgMQp8ICNkZWZpbmUgVVNH IC8qKi8KfCAjZGVmaW5lIEdOVV9MSU5VWCAvKiovCnwgI2RlZmluZSBTSVpFT0ZfU1BFRURf VCA0CnwgI2RlZmluZSBVU0FCTEVfRklPTlJFQUQgMQp8ICNkZWZpbmUgVVNBQkxFX1NJR0lP IDEKfCAjZGVmaW5lIENPUFlSSUdIVCAiQ29weXJpZ2h0IChDKSAyMDIzIEZyZWUgU29mdHdh cmUgRm91bmRhdGlvbiwgSW5jLiIKfCAjZGVmaW5lIFRFUk1fSEVBREVSICJndGt1dGlsLmgi CnwgI2RlZmluZSBFTUFDU19DT05GSUdVUkFUSU9OICJ4ODZfNjQtcGMtbGludXgtZ251Igp8 ICNkZWZpbmUgRU1BQ1NfQ09ORklHX09QVElPTlMgIiIKfCAjZGVmaW5lIEhBVkVfWF9XSU5E T1dTIDEKfCAjZGVmaW5lIEhBVkVfWDExIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0FUVFJJ QlVURV9BTElHTkVEIDEKfCAjZGVmaW5lIEhBVkVfVFlQRU9GIDEKfCAjZGVmaW5lIEhBVkVf U1RBVEVNRU5UX0VYUFJFU1NJT05TIDEKfCAjZGVmaW5lIE1BTExPQ18wX0lTX05PTk5VTEwg MQp8ICNkZWZpbmUgSEFWRV9TWVNfQUNMX0ggMQp8ICNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZJ TEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX1NF VF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX1NFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FD TF9GUkVFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZST01fTU9ERSAxCnwgI2RlZmluZSBIQVZF X0FDTF9GUk9NX1RFWFQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfREVMRVRFX0RFRl9GSUxFIDEK fCAjZGVmaW5lIEhBVkVfQUNMX0VYVEVOREVEX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xf TElCQUNMX0ggMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRU5UUklFUyAxCnwgI2RlZmluZSBIQVZF X0FDTF9GSVJTVF9FTlRSWSAxCnwgI2RlZmluZSBVU0VfQUNMIDEKfCAjZGVmaW5lIEhBVkVf QUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgTFNUQVRfRk9M TE9XU19TTEFTSEVEX1NZTUxJTksgMQp8ICNkZWZpbmUgRlVOQ19SRUFMUEFUSF9XT1JLUyAx CnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0dFVENXRCAxCnwg I2RlZmluZSByZXN0cmljdCBfX3Jlc3RyaWN0X18KfCAjZGVmaW5lIEhBVkVfRU5WSVJPTl9E RUNMIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJNT0RFIDAKfCAjZGVmaW5lIEhBVkVfR0VU T1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfTE9OR19PTkxZIDEKfCAjZGVmaW5lIEhB VkVfTE9OR19MT05HX0lOVCAxCnwgI2RlZmluZSBIQVZFX1VOU0lHTkVEX0xPTkdfTE9OR19J TlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX01FTU1FTSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xf TUVNUkNIUiAxCnwgI2RlZmluZSBIQVZFX01JTk1BWF9JTl9TWVNfUEFSQU1fSCAxCnwgI2Rl ZmluZSBUSU1FX1RfSVNfU0lHTkVEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTEFSTSAxCnwg I2RlZmluZSBIQVZFX1NUUlVDVF9UTV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fWk9O RSAxCnwgI2RlZmluZSBIQVZFX1RNX0dNVE9GRiAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVF9U IDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkNMT1NF QUxMIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRXIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9Q VVRXIDEKfCAjZGVmaW5lIF9fVVNFX01JTkdXX0FOU0lfU1RESU8gMQp8ICNkZWZpbmUgSEFW RV9ERUNMX0VDVlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZDVlQgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX0dDVlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUk5MRU4gMQp8ICNkZWZpbmUg SEFWRV9ERUNMX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBfVVNFX1NURF9TVEFUIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9FWEVDVlBFIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9DTEVBUkVSUl9V TkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkVPRl9VTkxPQ0tFRCAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfRkVSUk9SX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRkxV U0hfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZHRVRTX1VOTE9DS0VEIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9GUFVUQ19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xf RlBVVFNfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZSRUFEX1VOTE9DS0VEIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9GV1JJVEVfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9E RUNMX0dFVENfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVENIQVJfVU5MT0NL RUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BVVENfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX1BVVENIQVJfVU5MT0NLRUQgMQp8ICNkZWZpbmUgR0VUR1JPVVBTX1QgZ2lkX3QK fCAjZGVmaW5lIEhBVkVfREVDTF9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfTUFM TE9DX1BPU0lYIDEKfCAjZGVmaW5lIFBST01PVEVEX01PREVfVCBtb2RlX3QKfCAjZGVmaW5l IEhBVkVfV09SS0lOR19VVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZp bmUgSEFWRV9fX0JVSUxUSU5fRVhQRUNUIDEKfCAjZGVmaW5lIEhBVkVfQllURVNXQVBfSCAx CnwgI2RlZmluZSBHTlVMSUJfQ0FOT05JQ0FMSVpFX0xHUEwgMQp8ICNkZWZpbmUgSEFWRV9S RUFETElOS0FUIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tfR0VUUkVTIDEKfCAjZGVmaW5lIEhB VkVfQ0xPQ0tfR0VUVElNRSAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX1NFVFRJTUUgMQp8ICNk ZWZpbmUgR05VTElCX0NMT1NFX1NUUkVBTSAxCnwgI2RlZmluZSBIQVZFX0NPUFlfRklMRV9S QU5HRSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9ESVJFTlRfRF9UWVBFIDEKfCAjZGVmaW5l IEhBVkVfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEdOVUxJQl9GQUNDRVNTQVQgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBHTlVMSUJfRkRPUEVORElSIDEK fCAjZGVmaW5lIEdFVFhBVFRSX1dJVEhfUE9TSVhfQUNMUyAxCnwgI2RlZmluZSBGTEVYSUJM RV9BUlJBWV9NRU1CRVIgLyoqLwp8ICNkZWZpbmUgSEFWRV9ERUNMX19fRlBFTkRJTkcgMQp8 ICNkZWZpbmUgSEFWRV9GUkVFX1BPU0lYIDEKfCAjZGVmaW5lIEhBVkVfU1lTX01PVU5UX0gg MQp8ICNkZWZpbmUgU1RBVF9TVEFUVkZTIDEKfCAjZGVmaW5lIFNUQVRfU1RBVEZTMl9GUlNJ WkUgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8c3RkZGVmLmg+Cnwg I2lmZGVmIEhBVkVfU1RESU9fSAp8ICMgaW5jbHVkZSA8c3RkaW8uaD4KfCAjZW5kaWYKfCAj aWZkZWYgSEFWRV9TVERMSUJfSAp8ICMgaW5jbHVkZSA8c3RkbGliLmg+CnwgI2VuZGlmCnwg I2lmZGVmIEhBVkVfU1RSSU5HX0gKfCAjIGluY2x1ZGUgPHN0cmluZy5oPgp8ICNlbmRpZgp8 ICNpZmRlZiBIQVZFX0lOVFRZUEVTX0gKfCAjIGluY2x1ZGUgPGludHR5cGVzLmg+CnwgI2Vu ZGlmCnwgI2lmZGVmIEhBVkVfU1RESU5UX0gKfCAjIGluY2x1ZGUgPHN0ZGludC5oPgp8ICNl bmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR1NfSAp8ICMgaW5jbHVkZSA8c3RyaW5ncy5oPgp8 ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NZU19UWVBFU19ICnwgIyBpbmNsdWRlIDxzeXMvdHlw ZXMuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TWVNfU1RBVF9ICnwgIyBpbmNsdWRlIDxz eXMvc3RhdC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1VOSVNURF9ICnwgIyBpbmNsdWRl IDx1bmlzdGQuaD4KfCAjZW5kaWYKfCAjaW5jbHVkZSA8c3lzL2ZzL3M1cGFyYW0uaD4KY29u ZmlndXJlOjM2ODA1OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTozNjgxMTogY2hlY2tpbmcgZm9y IHN5cy9zdGF0ZnMuaApjb25maWd1cmU6MzY4MTE6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0 ZXN0LmMgPiY1CmNvbmZpZ3VyZTozNjgxMTogJD8gPSAwCmNvbmZpZ3VyZTozNjgxMTogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjM2ODE5OiBjaGVja2luZyBmb3Igc3RhdGZzIHRoYXQgdHJ1 bmNhdGVzIGJsb2NrIGNvdW50cwpjb25maWd1cmU6MzY4NDQ6IGdjYyAtYyAtZzMgLU8yICAg IGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6MzkwOjc6IGVycm9yOiBleHBlY3RlZCAnPScs ICcsJywgJzsnLCAnYXNtJyBvciAnX19hdHRyaWJ1dGVfXycgYmVmb3JlICctLScgdG9rZW4K ICAzOTAgfCBjaG9rZSAtLSB0aGlzIGlzIGEgd29ya2Fyb3VuZCBmb3IgYSBTdW4tc3BlY2lm aWMgcHJvYmxlbQogICAgICB8ICAgICAgIF5+CkluIGZpbGUgaW5jbHVkZWQgZnJvbSBjb25m dGVzdC5jOjM5MjoKL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUvc3lzL3R5cGVzLmg6 MzM6OTogZXJyb3I6IHVua25vd24gdHlwZSBuYW1lICdfX3VfY2hhcicKICAgMzMgfCB0eXBl ZGVmIF9fdV9jaGFyIHVfY2hhcjsKICAgICAgfCAgICAgICAgIF5+fn5+fn5+CmNvbmZpZ3Vy ZTozNjg0NDogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNv bmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8ICNkZWZp bmUgUEFDS0FHRV9UQVJOQU1FICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAi MzAuMC41MCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1hY3MgMzAuMC41MCIK fCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ251LWVtYWNzQGdudS5vcmciCnwg I2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0cHM6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9lbWFj cy8iCnwgI2RlZmluZSBIQVZFX1BEVU1QRVIgMQp8ICNkZWZpbmUgSEFWRV9TVERJT19IIDEK fCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwg I2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwg I2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEK fCAjZGVmaW5lIEhBVkVfV0NIQVJfSCAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZTX0ggMQp8 ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TWVNJTkZPX0gg MQp8ICNkZWZpbmUgSEFWRV9QVFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9I IDEKfCAjZGVmaW5lIEhBVkVfVVRNUF9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0xT QU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQVNBTl9JTlRFUkZB Q0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9DT01NT05fSU5URVJGQUNFX0RFRlNf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19Q QVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX0VYRUNJ TkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJT19FWFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19WRlNfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X0NERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVf SUVFRTc1NF9IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERCT09MX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfUkFORE9NX0ggMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIF9B TExfU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8ICNkZWZpbmUgX0dO VV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0hQVVhfQUxUX1hPUEVOX1NPQ0tFVF9BUEkgMQp8ICNk ZWZpbmUgX05FVEJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUgX09QRU5CU0RfU09VUkNFIDEKfCAj ZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBfX1NURENfV0FO VF9JRUNfNjA1NTlfQVRUUklCU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNf NjA1NTlfQkZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9ERlBf RVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0VYVF9fIDEKfCAjZGVm aW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9GVU5DU19FWFRfXyAxCnwgI2RlZmluZSBfX1NU RENfV0FOVF9JRUNfNjA1NTlfVFlQRVNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRf TElCX0VYVDJfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9NQVRIX1NQRUNfRlVOQ1NfXyAx CnwgI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAx CnwgI2RlZmluZSBHQ0NfTElOVCAxCnwgI2RlZmluZSBTWVNURU1fVFlQRSAiZ251L2xpbnV4 Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJEX0ggMQp8ICNkZWZpbmUgSEFWRV9BTFNB IDEKfCAjZGVmaW5lIEhBVkVfU09VTkQgMQp8ICNkZWZpbmUgSEFWRV9QRVJTT05BTElUWV9B RERSX05PX1JBTkRPTUlaRSAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX1NZU0lORk8gMQp8ICNk ZWZpbmUgTElOVVhfU1lTSU5GT19VTklUIDEKfCAjZGVmaW5lIEhBVkVfVEVSTV9IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX05FVF9JRl9IIDEKfCAj ZGVmaW5lIEhBVkVfSUZBRERSU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lG Ul9GTEFHUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfSFdBRERSIDEKfCAj ZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9ORVRNQVNLIDEKfCAjZGVmaW5lIEhBVkVf U1RSVUNUX0lGUkVRX0lGUl9CUk9BREFERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZS RVFfSUZSX0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TQlJLIDEKfCAjZGVmaW5lIEhBVkVfR0VU UEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfVkZPUksg MQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9DQU5PTklDQUxJWkVf RklMRV9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUkVBTFBBVEggMQp8ICNkZWZpbmUgSEFWRV9M U1RBVCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PREFUIDEKfCAjZGVmaW5lIEhBVkVfTENITU9E IDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9GRE9QRU5ESVIgMQp8 ICNkZWZpbmUgSEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMgMQp8ICNkZWZp bmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9QU0VMRUNUIDEKfCAjZGVm aW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8 ICNkZWZpbmUgSEFWRV9JU0JMQU5LIDEKfCAjZGVmaW5lIEhBVkVfSVNXQ1RZUEUgMQp8ICNk ZWZpbmUgSEFWRV9TVFJUT0lNQVggMQp8ICNkZWZpbmUgSEFWRV9TWU1MSU5LIDEKfCAjZGVm aW5lIEhBVkVfTE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEK fCAjZGVmaW5lIFNZU1RFTV9NQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9NTUFQIDEKfCAjZGVm aW5lIEhBVkVfUFRIUkVBRCAxCnwgI2RlZmluZSBUSFJFQURTX0VOQUJMRUQgMQp8ICNkZWZp bmUgSEFWRV9YS0IgMQp8ICNkZWZpbmUgSEFWRV9YS0JSRUZSRVNIS0VZQk9BUkRNQVBQSU5H IDEKfCAjZGVmaW5lIEhBVkVfWEtCRlJFRU5BTUVTIDEKfCAjZGVmaW5lIEhBVkVfWFJNU0VU REFUQUJBU0UgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOUkVTT1VSQ0VTVFJJTkcgMQp8ICNk ZWZpbmUgSEFWRV9YU0NSRUVOTlVNQkVST0ZTQ1JFRU4gMQp8ICNkZWZpbmUgSEFWRV9YRElT UExBWUNFTExTIDEKfCAjZGVmaW5lIEhBVkVfWERFU1RST1lTVUJXSU5ET1dTIDEKfCAjZGVm aW5lIEhBVkVfWDExUjYgMQp8ICNkZWZpbmUgSEFWRV9YX0kxOE4gMQp8ICNkZWZpbmUgSEFW RV9YSUNDQUxMQkFDS19DQUxMQkFDSyAxCnwgI2RlZmluZSBIQVZFX1gxMVI2X1hJTSAxCnwg I2RlZmluZSBIQVZFX1JTVkcgMQp8ICNkZWZpbmUgSEFWRV9XRUJQIDEKfCAjZGVmaW5lIEhB VkVfU1FMSVRFMyAxCnwgI2RlZmluZSBIQVZFX1NRTElURTNfTE9BRF9FWFRFTlNJT04gMQp8 ICNkZWZpbmUgSEFWRV9HRVRBRERSSU5GT19BIDEKfCAjZGVmaW5lIEhBVkVfR1RLMyAxCnwg I2RlZmluZSBHREtfRElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAxCnwgI2RlZmluZSBH TElCX0RJU0FCTEVfREVQUkVDQVRJT05fV0FSTklOR1MgMQp8ICNkZWZpbmUgVVNFX0dUSyAx CnwgI2RlZmluZSBIQVZFX01BTExPQ19UUklNIDEKfCAjZGVmaW5lIEhBVkVfREJVUyAxCnwg I2RlZmluZSBIQVZFX0RCVVNfV0FUQ0hfR0VUX1VOSVhfRkQgMQp8ICNkZWZpbmUgSEFWRV9E QlVTX1RZUEVfSVNfVkFMSUQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0JVU19O QU1FIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9QQVRIIDEKfCAjZGVmaW5lIEhB VkVfREJVU19WQUxJREFURV9JTlRFUkZBQ0UgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElE QVRFX01FTUJFUiAxCnwgI2RlZmluZSBIQVZFX0dTRVRUSU5HUyAxCnwgI2RlZmluZSBIQVZF X0xJQlNFTElOVVggMQp8ICNkZWZpbmUgSEFWRV9HTlVUTFMgMQp8ICNkZWZpbmUgSEFWRV9M SUJTWVNURU1EIDEKfCAjZGVmaW5lIEhBVkVfSlNPTiAxCnwgI2RlZmluZSBIQVZFX0lOT1RJ RlkgMQp8ICNkZWZpbmUgVVNFX0ZJTEVfTk9USUZZIDEKfCAjZGVmaW5lIFVTRV9UT09MS0lU X1NDUk9MTF9CQVJTIDEKfCAjZGVmaW5lIEhBVkVfWElNIDEKfCAjZGVmaW5lIFVTRV9YSU0g MQp8ICNkZWZpbmUgSEFWRV9YUkVOREVSIDEKfCAjZGVmaW5lIFVTRV9DQUlST19YQ0IgMQp8 ICNkZWZpbmUgVVNFX0NBSVJPIDEKfCAjZGVmaW5lIEhBVkVfRlJFRVRZUEUgMQp8ICNkZWZp bmUgSEFWRV9GVF9GQUNFX0dFVENIQVJWQVJJQU5USU5ERVggMQp8ICNkZWZpbmUgSEFWRV9M SUJPVEYgMQp8ICNkZWZpbmUgSEFWRV9PVEZfR0VUX1ZBUklBVElPTl9HTFlQSFMgMQp8ICNk ZWZpbmUgSEFWRV9NMTdOX0ZMVCAxCnwgI2RlZmluZSBIQVZFX0hBUkZCVVpaIDEKfCAjZGVm aW5lIFVTRV9YQ0IgMQp8ICNkZWZpbmUgSEFWRV9YUE0gMQp8ICNkZWZpbmUgSEFWRV9KUEVH IDEKfCAjZGVmaW5lIEhBVkVfTENNUzIgMQp8ICNkZWZpbmUgSEFWRV9aTElCIDEKfCAjZGVm aW5lIERZTkFNSUNfTElCX1NVRkZJWCAiLnNvIgp8ICNkZWZpbmUgRFlOQU1JQ19MSUJfU0VD T05EQVJZX1NVRkZJWCAiIgp8ICNkZWZpbmUgSEFWRV9ETEFERFIgMQp8ICNkZWZpbmUgSEFW RV9NT0RVTEVTIDEKfCAjZGVmaW5lIE1PRFVMRVNfU1VGRklYICIuc28iCnwgI2RlZmluZSBO QVRJVkVfRUxJU1BfU1VGRklYICIuZWxuIgp8ICNkZWZpbmUgSEFWRV9QTkcgMQp8ICNkZWZp bmUgSEFWRV9USUZGIDEKfCAjZGVmaW5lIEhBVkVfR0lGIDEKfCAjZGVmaW5lIEhBVkVfR1BN IDEKfCAjZGVmaW5lIEhBVkVfWF9TTSAxCnwgI2RlZmluZSBIQVZFX1hSQU5EUiAxCnwgI2Rl ZmluZSBIQVZFX1hJTkVSQU1BIDEKfCAjZGVmaW5lIEhBVkVfWEZJWEVTIDEKfCAjZGVmaW5l IEhBVkVfWElOUFVUMiAxCnwgI2RlZmluZSBIQVZFX1hJU0NST0xMQ0xBU1NJTkZPX1RZUEUg MQp8ICNkZWZpbmUgSEFWRV9YSVRPVUNIQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFW RV9YSUJBUlJJRVJSRUxFQVNFUE9JTlRFUklORk9fREVWSUNFSUQgMQp8ICNkZWZpbmUgSEFW RV9YSUdFU1RVUkVDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hTWU5DIDEKfCAj ZGVmaW5lIEhBVkVfWFNZTkNUUklHR0VSRkVOQ0UgMQp8ICNkZWZpbmUgSEFWRV9YREJFIDEK fCAjZGVmaW5lIEhBVkVfWENCX1NIQVBFIDEKfCAjZGVmaW5lIEhBVkVfWFNIQVBFIDEKfCAj ZGVmaW5lIEhBVkVfWENPTVBPU0lURSAxCnwgI2RlZmluZSBIQVZFX0xJQlhNTDIgMQp8ICNk ZWZpbmUgSEFWRV9MSU5VWF9TRUNDT01QX0ggMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NP TVBfU0VUX01PREVfRklMVEVSIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX0ZJTFRF Ul9GTEFHX1RTWU5DIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfRklMVEVSX0ggMQp8ICNkZWZp bmUgSEFWRV9ERUNMX1NFQ0NPTVBfU0VUX01PREVfRklMVEVSIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9TRUNDT01QX0ZJTFRFUl9GTEFHX1RTWU5DIDEKfCAjZGVmaW5lIFNJWkVPRl9MT05H IDgKfCAjZGVmaW5lIEhBVkVfQUNDRVBUNCAxCnwgI2RlZmluZSBIQVZFX0ZDSERJUiAxCnwg I2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUUlVTQUdFIDEK fCAjZGVmaW5lIEhBVkVfR0VUX0NVUlJFTlRfRElSX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9M UkFORDQ4IDEKfCAjZGVmaW5lIEhBVkVfUkFORE9NIDEKfCAjZGVmaW5lIEhBVkVfUklOVCAx CnwgI2RlZmluZSBIQVZFX1RSVU5DIDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVm aW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNk ZWZpbmUgSEFWRV9ORVdMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSTElNSVQgMQp8ICNk ZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TSFVURE9XTiAxCnwgI2Rl ZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlNJR05BTCAx CnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX1NFTkRUTyAxCnwg I2RlZmluZSBIQVZFX1JFQ1ZGUk9NIDEKfCAjZGVmaW5lIEhBVkVfR0VUU09DS05BTUUgMQp8 ICNkZWZpbmUgSEFWRV9HRVRJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfRlJFRUlGQUREUlMg MQp8ICNkZWZpbmUgSEFWRV9HQUlfU1RSRVJST1IgMQp8ICNkZWZpbmUgSEFWRV9TWU5DIDEK fCAjZGVmaW5lIEhBVkVfR0VUUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRQV0VOVCAxCnwg I2RlZmluZSBIQVZFX0dFVEdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5ER1JFTlQgMQp8ICNk ZWZpbmUgSEFWRV9SRU5BTUVBVDIgMQp8ICNkZWZpbmUgSEFWRV9DRk1BS0VSQVcgMQp8ICNk ZWZpbmUgSEFWRV9DRlNFVFNQRUVEIDEKfCAjZGVmaW5lIEhBVkVfX19FWEVDVVRBQkxFX1NU QVJUIDEKfCAjZGVmaW5lIEhBVkVfTE9HMiAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0VU TkFNRV9OUCAxCnwgI2RlZmluZSBIQVZFX0FMSUdORURfQUxMT0MgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX0FMSUdORURfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9NQURWSVNFIDEK fCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX0ZSQU1FX0FERFJFU1MgMQp8ICNkZWZpbmUgSEFW RV9fX0JVSUxUSU5fVU5XSU5EX0lOSVQgMQp8ICNkZWZpbmUgSEFWRV9GU0VFS08gMQp8ICNk ZWZpbmUgSEFWRV9HUkFOVFBUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFQgMQp8ICNkZWZpbmUg SEFWRV9QT1NJWF9PUEVOUFQgMQp8ICNkZWZpbmUgVEVSTUlORk8gMQp8ICNkZWZpbmUgVEVS TUlORk9fREVGSU5FU19CQyAxCnwgI2RlZmluZSBIQVZFX1RJTUVSRkQgMQp8ICNkZWZpbmUg SEFWRV9WQUxHUklORF9WQUxHUklORF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1VOSVBB SVJfVU5JQ09ERSAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVkZPUksgMQp8ICNkZWZpbmUg SEFWRV9XT1JLSU5HX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9TTlBSSU5URiAxCnwgI2RlZmlu ZSBIQVZFX1NQQVdOX0ggMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTiAxCnwgI2RlZmlu ZSBIQVZFX1BPU0lYX1NQQVdOX0ZJTEVfQUNUSU9OU19BRERDSERJUl9OUCAxCnwgI2RlZmlu ZSBIQVZFX1BPU0lYX1NQQVdOQVRUUl9TRVRGTEFHUyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xf UE9TSVhfU1BBV05fU0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVfR0xJQiAxCnwgI2RlZmluZSBI QVZFX0xBTkdJTkZPX0NPREVTRVQgMQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5GT19fTkxfUEFQ RVJfV0lEVEggMQp8ICNkZWZpbmUgSEFWRV9NQlNUQVRFX1QgMQp8ICNkZWZpbmUgQU1QRVJT QU5EX0ZVTExfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1BUWVMgMQp8ICNkZWZpbmUgSEFWRV9T T0NLRVRTIDEKfCAjZGVmaW5lIE5VTExfREVWSUNFICIvZGV2L251bGwiCnwgI2RlZmluZSBT RVBDSEFSICc6Jwp8ICNkZWZpbmUgc3VicHJvY2Vzc2VzIDEKfCAjZGVmaW5lIFVTRVJfRlVM TF9OQU1FIHB3LT5wd19nZWNvcwp8ICNkZWZpbmUgRElSRUNUT1JZX1NFUCAnLycKfCAjZGVm aW5lIElTX0RFVklDRV9TRVAoX2NfKSAwCnwgI2RlZmluZSBJU19ESVJFQ1RPUllfU0VQKF9j XykgKChfY18pID09IERJUkVDVE9SWV9TRVApCnwgI2RlZmluZSBJU19BTllfU0VQKF9jXykg KElTX0RJUkVDVE9SWV9TRVAgKF9jXykpCnwgI2RlZmluZSBIQVZFX1BST0NGUyAxCnwgI2Rl ZmluZSBERUZBVUxUX1NPVU5EX0RFVklDRSAiL2Rldi9kc3AiCnwgI2RlZmluZSBJTlRFUlJV UFRfSU5QVVQgMQp8ICNkZWZpbmUgTkFSUk9XUFJPVE8gMQp8ICNkZWZpbmUgVU5JWDk4X1BU WVMgMQp8ICNkZWZpbmUgUFRZX0lURVJBVElPTiBpbnQgaTsgZm9yIChpID0gMDsgaSA8IDE7 IGkrKykKfCAjZGVmaW5lIFBUWV9UVFlfTkFNRV9TUFJJTlRGIHsgY2hhciAqcHR5bmFtZSA9 IDA7IHNpZ3NldF90IGJsb2NrZWQ7IHNpZ2VtcHR5c2V0ICgmYmxvY2tlZCk7IHNpZ2FkZHNl dCAoJmJsb2NrZWQsIFNJR0NITEQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19CTE9DSywgJmJs b2NrZWQsIDApOyBpZiAoZ3JhbnRwdCAoZmQpICE9IC0xICYmIHVubG9ja3B0IChmZCkgIT0g LTEpIHB0eW5hbWUgPSBwdHNuYW1lKGZkKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfVU5CTE9D SywgJmJsb2NrZWQsIDApOyBpZiAoIXB0eW5hbWUpIHsgZW1hY3NfY2xvc2UgKGZkKTsgcmV0 dXJuIC0xOyB9IHNucHJpbnRmIChwdHlfbmFtZSwgUFRZX05BTUVfU0laRSwgIiVzIiwgcHR5 bmFtZSk7IH0KfCAjZGVmaW5lIFBUWV9PUEVOIGRvIHsgZmQgPSBwb3NpeF9vcGVucHQgKE9f UkRXUiB8IE9fQ0xPRVhFQyB8IE9fTk9DVFRZKTsgaWYgKGZkIDwgMCAmJiBlcnJubyA9PSBF SU5WQUwpIGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX05PQ1RUWSk7IH0gd2hpbGUg KGZhbHNlKQp8ICNkZWZpbmUgUFRZX05BTUVfU1BSSU5URiAvKiovCnwgI2RlZmluZSBTSUdO QUxTX1ZJQV9DSEFSQUNURVJTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2Rl ZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgSEFWRV9fU0VUSk1QIDEKfCAjZGVm aW5lIEhBVkVfU0lHU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU1RBQ0tfT1ZFUkZMT1dfSEFO RExJTkcgMQp8ICNkZWZpbmUgVVNHIC8qKi8KfCAjZGVmaW5lIEdOVV9MSU5VWCAvKiovCnwg I2RlZmluZSBTSVpFT0ZfU1BFRURfVCA0CnwgI2RlZmluZSBVU0FCTEVfRklPTlJFQUQgMQp8 ICNkZWZpbmUgVVNBQkxFX1NJR0lPIDEKfCAjZGVmaW5lIENPUFlSSUdIVCAiQ29weXJpZ2h0 IChDKSAyMDIzIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiIKfCAjZGVmaW5lIFRF Uk1fSEVBREVSICJndGt1dGlsLmgiCnwgI2RlZmluZSBFTUFDU19DT05GSUdVUkFUSU9OICJ4 ODZfNjQtcGMtbGludXgtZ251Igp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHX09QVElPTlMgIiIK fCAjZGVmaW5lIEhBVkVfWF9XSU5ET1dTIDEKfCAjZGVmaW5lIEhBVkVfWDExIDEKfCAjZGVm aW5lIEhBVkVfU1RSVUNUX0FUVFJJQlVURV9BTElHTkVEIDEKfCAjZGVmaW5lIEhBVkVfVFlQ RU9GIDEKfCAjZGVmaW5lIEhBVkVfU1RBVEVNRU5UX0VYUFJFU1NJT05TIDEKfCAjZGVmaW5l IE1BTExPQ18wX0lTX05PTk5VTEwgMQp8ICNkZWZpbmUgSEFWRV9TWVNfQUNMX0ggMQp8ICNk ZWZpbmUgSEFWRV9BQ0xfR0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZEIDEK fCAjZGVmaW5lIEhBVkVfQUNMX1NFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX1NFVF9G RCAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUkVFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZST01f TU9ERSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX1RFWFQgMQp8ICNkZWZpbmUgSEFWRV9B Q0xfREVMRVRFX0RFRl9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VYVEVOREVEX0ZJTEUg MQp8ICNkZWZpbmUgSEFWRV9BQ0xfTElCQUNMX0ggMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRU5U UklFUyAxCnwgI2RlZmluZSBIQVZFX0FDTF9GSVJTVF9FTlRSWSAxCnwgI2RlZmluZSBVU0Vf QUNMIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0Eg MQp8ICNkZWZpbmUgTFNUQVRfRk9MTE9XU19TTEFTSEVEX1NZTUxJTksgMQp8ICNkZWZpbmUg RlVOQ19SRUFMUEFUSF9XT1JLUyAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2Rl ZmluZSBIQVZFX0dFVENXRCAxCnwgI2RlZmluZSByZXN0cmljdCBfX3Jlc3RyaWN0X18KfCAj ZGVmaW5lIEhBVkVfRU5WSVJPTl9ERUNMIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJNT0RF IDAKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfTE9O R19PTkxZIDEKfCAjZGVmaW5lIEhBVkVfTE9OR19MT05HX0lOVCAxCnwgI2RlZmluZSBIQVZF X1VOU0lHTkVEX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX01FTU1FTSAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfTUVNUkNIUiAxCnwgI2RlZmluZSBIQVZFX01JTk1BWF9J Tl9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBUSU1FX1RfSVNfU0lHTkVEIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9BTEFSTSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9UTV9UTV9aT05FIDEK fCAjZGVmaW5lIEhBVkVfVE1fWk9ORSAxCnwgI2RlZmluZSBIQVZFX1RNX0dNVE9GRiAxCnwg I2RlZmluZSBIQVZFX1NJR1NFVF9UIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfVCAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfRkNMT1NFQUxMIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRXIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9QVVRXIDEKfCAjZGVmaW5lIF9fVVNFX01JTkdXX0FOU0lf U1RESU8gMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VDVlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X0ZDVlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dDVlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X1NUUk5MRU4gMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBf VVNFX1NURF9TVEFUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9FWEVDVlBFIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9DTEVBUkVSUl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkVP Rl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkVSUk9SX1VOTE9DS0VEIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9GRkxVU0hfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X0ZHRVRTX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GUFVUQ19VTkxPQ0tFRCAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfRlBVVFNfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9E RUNMX0ZSRUFEX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GV1JJVEVfVU5MT0NL RUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVENfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX0dFVENIQVJfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BVVENfVU5M T0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BVVENIQVJfVU5MT0NLRUQgMQp8ICNkZWZp bmUgR0VUR1JPVVBTX1QgZ2lkX3QKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVREVEFCTEVTSVpF IDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX1BPU0lYIDEKfCAjZGVmaW5lIFBST01PVEVEX01P REVfVCBtb2RlX3QKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19VVElNRVMgMQp8ICNkZWZpbmUg SEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fRVhQRUNUIDEKfCAjZGVm aW5lIEhBVkVfQllURVNXQVBfSCAxCnwgI2RlZmluZSBHTlVMSUJfQ0FOT05JQ0FMSVpFX0xH UEwgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tf R0VUUkVTIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tfR0VUVElNRSAxCnwgI2RlZmluZSBIQVZF X0NMT0NLX1NFVFRJTUUgMQp8ICNkZWZpbmUgR05VTElCX0NMT1NFX1NUUkVBTSAxCnwgI2Rl ZmluZSBIQVZFX0NPUFlfRklMRV9SQU5HRSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9ESVJF TlRfRF9UWVBFIDEKfCAjZGVmaW5lIEhBVkVfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEdOVUxJ Ql9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZET1BFTkRJUiAxCnwgI2RlZmlu ZSBHTlVMSUJfRkRPUEVORElSIDEKfCAjZGVmaW5lIEdFVFhBVFRSX1dJVEhfUE9TSVhfQUNM UyAxCnwgI2RlZmluZSBGTEVYSUJMRV9BUlJBWV9NRU1CRVIgLyoqLwp8ICNkZWZpbmUgSEFW RV9ERUNMX19fRlBFTkRJTkcgMQp8ICNkZWZpbmUgSEFWRV9GUkVFX1BPU0lYIDEKfCAjZGVm aW5lIEhBVkVfU1lTX01PVU5UX0ggMQp8ICNkZWZpbmUgU1RBVF9TVEFUVkZTIDEKfCAjZGVm aW5lIFNUQVRfU1RBVEZTMl9GUlNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVEZTX0gg MQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAjaWYgIWRlZmluZWQoc3VuKSAmJiAh ZGVmaW5lZChfX3N1bikKfCBjaG9rZSAtLSB0aGlzIGlzIGEgd29ya2Fyb3VuZCBmb3IgYSBT dW4tc3BlY2lmaWMgcHJvYmxlbQp8ICNlbmRpZgp8ICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4K fCAjaW5jbHVkZSA8c3lzL3Zmcy5oPgp8IAp8IGludAp8IG1haW4gKHZvaWQpCnwgewp8IHN0 cnVjdCBzdGF0ZnMgdDsgbG9uZyBjID0gKih0LmZfc3BhcmUpOwp8ICAgICAgICAgICAgaWYg KGMpIHJldHVybiAwOwp8IAp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MzY4 NTM6IHJlc3VsdDogbm8KY29uZmlndXJlOjM2OTA1OiBjaGVja2luZyBmb3IgZnV0aW1lbnMK Y29uZmlndXJlOjM2OTQyOiBjaGVja2luZyBmb3IgZnV0aW1lbnMKY29uZmlndXJlOjM2OTQy OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCmNvbmZp Z3VyZTozNjk0MjogJD8gPSAwCmNvbmZpZ3VyZTozNjk0MjogcmVzdWx0OiB5ZXMKY29uZmln dXJlOjM2OTU3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzY5Nzc6IGNoZWNraW5nIHdoZXRo ZXIgZnV0aW1lbnMgd29ya3MKY29uZmlndXJlOjM3MDMyOiBnY2MgLW8gY29uZnRlc3QgLWcz IC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCmNvbmZpZ3VyZTozNzAzMjogJD8gPSAwCmNv bmZpZ3VyZTozNzAzMjogLi9jb25mdGVzdApjb25maWd1cmU6MzcwMzI6ICQ/ID0gMApjb25m aWd1cmU6MzcwNDQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozNzA5MDogY2hlY2tpbmcgZm9y IGdldGxvYWRhdmcKY29uZmlndXJlOjM3MTI3OiBjaGVja2luZyBmb3IgZ2V0bG9hZGF2Zwpj b25maWd1cmU6MzcxMjc6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3Qu YyAgID4mNSAKY29uZmlndXJlOjM3MTI3OiAkPyA9IDAKY29uZmlndXJlOjM3MTI3OiByZXN1 bHQ6IHllcwpjb25maWd1cmU6MzcxNDI6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozNzUwODog Y2hlY2tpbmcgZm9yIHN5cy9sb2FkYXZnLmgKY29uZmlndXJlOjM3NTA4OiBnY2MgLWMgLWcz IC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOjQxODoxMDogZmF0YWwgZXJyb3I6 IHN5cy9sb2FkYXZnLmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKICA0MTggfCAjaW5j bHVkZSA8c3lzL2xvYWRhdmcuaD4KICAgICAgfCAgICAgICAgICBefn5+fn5+fn5+fn5+fn4K Y29tcGlsYXRpb24gdGVybWluYXRlZC4KY29uZmlndXJlOjM3NTA4OiAkPyA9IDEKY29uZmln dXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUg UEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVt YWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIzMC4wLjUwIgp8ICNkZWZpbmUgUEFD S0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdS RVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJo dHRwczovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIEhBVkVfUERV TVBFUiAxCnwgI2RlZmluZSBIQVZFX1NURElPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJf SCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNf SCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBF U19IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9I IDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfRlNfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1BUWV9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf VVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1Q X0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfTFNBTl9JTlRFUkZBQ0VfSCAxCnwgI2Rl ZmluZSBIQVZFX1NBTklUSVpFUl9BU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVf U0FOSVRJWkVSX0NPTU1PTl9JTlRFUkZBQ0VfREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFW RV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwgI2RlZmluZSBIQVZF X0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAxCnwgI2RlZmluZSBIQVZF X1NURElPX0VYVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1ZGU19IIDEKfCAjZGVmaW5lIEhB VkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfQ0RFRlNfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9JRUVFNzU0X0ggMQp8ICNkZWZpbmUg SEFWRV9MSU1JVFNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmlu ZSBIQVZFX1NUREJPT0xfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SQU5ET01fSCAxCnwgI2Rl ZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8ICNkZWZpbmUg X0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBf SFBVWF9BTFRfWE9QRU5fU09DS0VUX0FQSSAxCnwgI2RlZmluZSBfTkVUQlNEX1NPVVJDRSAx CnwgI2RlZmluZSBfT1BFTkJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURf U0VNQU5USUNTIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9BVFRSSUJTX0VY VF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9CRlBfRVhUX18gMQp8ICNk ZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0RGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NU RENfV0FOVF9JRUNfNjA1NTlfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYw NTU5X0ZVTkNTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9UWVBF U19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9MSUJfRVhUMl9fIDEKfCAjZGVmaW5l IF9fU1REQ19XQU5UX01BVEhfU1BFQ19GVU5DU19fIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09V UkNFIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIEdDQ19MSU5UIDEK fCAjZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19T T1VORENBUkRfSCAxCnwgI2RlZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VO RCAxCnwgI2RlZmluZSBIQVZFX1BFUlNPTkFMSVRZX0FERFJfTk9fUkFORE9NSVpFIDEKfCAj ZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5GTyAxCnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VO SVQgMQp8ICNkZWZpbmUgSEFWRV9URVJNX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9I IDEKfCAjZGVmaW5lIEhBVkVfTkVUX0lGX0ggMQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0gg MQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhB VkVfU1RSVUNUX0lGUkVRX0lGUl9IV0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZS RVFfSUZSX05FVE1BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FE QUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQUREUiAxCnwgI2RlZmlu ZSBIQVZFX1NCUksgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBI QVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9WRk9SSyAxCnwgI2RlZmluZSBIQVZFX0ZDSE1P RCAxCnwgI2RlZmluZSBIQVZFX0NBTk9OSUNBTElaRV9GSUxFX05BTUUgMQp8ICNkZWZpbmUg SEFWRV9SRUFMUEFUSCAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVf RkNITU9EQVQgMQp8ICNkZWZpbmUgSEFWRV9MQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9GQ05U TCAxCnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQg MQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAx CnwgI2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01B U0sgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX0lTQkxBTksg MQp8ICNkZWZpbmUgSEFWRV9JU1dDVFlQRSAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAx CnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAx CnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgU1lTVEVNX01BTExP QyAxCnwgI2RlZmluZSBIQVZFX01NQVAgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEIDEKfCAj ZGVmaW5lIFRIUkVBRFNfRU5BQkxFRCAxCnwgI2RlZmluZSBIQVZFX1hLQiAxCnwgI2RlZmlu ZSBIQVZFX1hLQlJFRlJFU0hLRVlCT0FSRE1BUFBJTkcgMQp8ICNkZWZpbmUgSEFWRV9YS0JG UkVFTkFNRVMgMQp8ICNkZWZpbmUgSEFWRV9YUk1TRVREQVRBQkFTRSAxCnwgI2RlZmluZSBI QVZFX1hTQ1JFRU5SRVNPVVJDRVNUUklORyAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5OVU1C RVJPRlNDUkVFTiAxCnwgI2RlZmluZSBIQVZFX1hESVNQTEFZQ0VMTFMgMQp8ICNkZWZpbmUg SEFWRV9YREVTVFJPWVNVQldJTkRPV1MgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNiAxCnwgI2Rl ZmluZSBIQVZFX1hfSTE4TiAxCnwgI2RlZmluZSBIQVZFX1hJQ0NBTExCQUNLX0NBTExCQUNL IDEKfCAjZGVmaW5lIEhBVkVfWDExUjZfWElNIDEKfCAjZGVmaW5lIEhBVkVfUlNWRyAxCnwg I2RlZmluZSBIQVZFX1dFQlAgMQp8ICNkZWZpbmUgSEFWRV9TUUxJVEUzIDEKfCAjZGVmaW5l IEhBVkVfU1FMSVRFM19MT0FEX0VYVEVOU0lPTiAxCnwgI2RlZmluZSBIQVZFX0dFVEFERFJJ TkZPX0EgMQp8ICNkZWZpbmUgSEFWRV9HVEszIDEKfCAjZGVmaW5lIEdES19ESVNBQkxFX0RF UFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIEdMSUJfRElTQUJMRV9ERVBSRUNBVElP Tl9XQVJOSU5HUyAxCnwgI2RlZmluZSBVU0VfR1RLIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9D X1RSSU0gMQp8ICNkZWZpbmUgSEFWRV9EQlVTIDEKfCAjZGVmaW5lIEhBVkVfREJVU19XQVRD SF9HRVRfVU5JWF9GRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVFlQRV9JU19WQUxJRCAxCnwg I2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfQlVTX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9E QlVTX1ZBTElEQVRFX1BBVEggMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0lOVEVS RkFDRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfTUVNQkVSIDEKfCAjZGVmaW5l IEhBVkVfR1NFVFRJTkdTIDEKfCAjZGVmaW5lIEhBVkVfTElCU0VMSU5VWCAxCnwgI2RlZmlu ZSBIQVZFX0dOVVRMUyAxCnwgI2RlZmluZSBIQVZFX0xJQlNZU1RFTUQgMQp8ICNkZWZpbmUg SEFWRV9KU09OIDEKfCAjZGVmaW5lIEhBVkVfSU5PVElGWSAxCnwgI2RlZmluZSBVU0VfRklM RV9OT1RJRlkgMQp8ICNkZWZpbmUgVVNFX1RPT0xLSVRfU0NST0xMX0JBUlMgMQp8ICNkZWZp bmUgSEFWRV9YSU0gMQp8ICNkZWZpbmUgVVNFX1hJTSAxCnwgI2RlZmluZSBIQVZFX1hSRU5E RVIgMQp8ICNkZWZpbmUgVVNFX0NBSVJPX1hDQiAxCnwgI2RlZmluZSBVU0VfQ0FJUk8gMQp8 ICNkZWZpbmUgSEFWRV9GUkVFVFlQRSAxCnwgI2RlZmluZSBIQVZFX0ZUX0ZBQ0VfR0VUQ0hB UlZBUklBTlRJTkRFWCAxCnwgI2RlZmluZSBIQVZFX0xJQk9URiAxCnwgI2RlZmluZSBIQVZF X09URl9HRVRfVkFSSUFUSU9OX0dMWVBIUyAxCnwgI2RlZmluZSBIQVZFX00xN05fRkxUIDEK fCAjZGVmaW5lIEhBVkVfSEFSRkJVWlogMQp8ICNkZWZpbmUgVVNFX1hDQiAxCnwgI2RlZmlu ZSBIQVZFX1hQTSAxCnwgI2RlZmluZSBIQVZFX0pQRUcgMQp8ICNkZWZpbmUgSEFWRV9MQ01T MiAxCnwgI2RlZmluZSBIQVZFX1pMSUIgMQp8ICNkZWZpbmUgRFlOQU1JQ19MSUJfU1VGRklY ICIuc28iCnwgI2RlZmluZSBEWU5BTUlDX0xJQl9TRUNPTkRBUllfU1VGRklYICIiCnwgI2Rl ZmluZSBIQVZFX0RMQUREUiAxCnwgI2RlZmluZSBIQVZFX01PRFVMRVMgMQp8ICNkZWZpbmUg TU9EVUxFU19TVUZGSVggIi5zbyIKfCAjZGVmaW5lIE5BVElWRV9FTElTUF9TVUZGSVggIi5l bG4iCnwgI2RlZmluZSBIQVZFX1BORyAxCnwgI2RlZmluZSBIQVZFX1RJRkYgMQp8ICNkZWZp bmUgSEFWRV9HSUYgMQp8ICNkZWZpbmUgSEFWRV9HUE0gMQp8ICNkZWZpbmUgSEFWRV9YX1NN IDEKfCAjZGVmaW5lIEhBVkVfWFJBTkRSIDEKfCAjZGVmaW5lIEhBVkVfWElORVJBTUEgMQp8 ICNkZWZpbmUgSEFWRV9YRklYRVMgMQp8ICNkZWZpbmUgSEFWRV9YSU5QVVQyIDEKfCAjZGVm aW5lIEhBVkVfWElTQ1JPTExDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hJVE9V Q0hDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hJQkFSUklFUlJFTEVBU0VQT0lO VEVSSU5GT19ERVZJQ0VJRCAxCnwgI2RlZmluZSBIQVZFX1hJR0VTVFVSRUNMQVNTSU5GT19U WVBFIDEKfCAjZGVmaW5lIEhBVkVfWFNZTkMgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQ1RSSUdH RVJGRU5DRSAxCnwgI2RlZmluZSBIQVZFX1hEQkUgMQp8ICNkZWZpbmUgSEFWRV9YQ0JfU0hB UEUgMQp8ICNkZWZpbmUgSEFWRV9YU0hBUEUgMQp8ICNkZWZpbmUgSEFWRV9YQ09NUE9TSVRF IDEKfCAjZGVmaW5lIEhBVkVfTElCWE1MMiAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX1NFQ0NP TVBfSCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZp bmUgSEFWRV9MSU5VWF9GSUxURVJfSCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9T RVRfTU9ERV9GSUxURVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZM QUdfVFNZTkMgMQp8ICNkZWZpbmUgU0laRU9GX0xPTkcgOAp8ICNkZWZpbmUgSEFWRV9BQ0NF UFQ0IDEKfCAjZGVmaW5lIEhBVkVfRkNIRElSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5B TUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNBR0UgMQp8ICNkZWZpbmUgSEFWRV9HRVRfQ1VS UkVOVF9ESVJfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0xSQU5ENDggMQp8ICNkZWZpbmUgSEFW RV9SQU5ET00gMQp8ICNkZWZpbmUgSEFWRV9SSU5UIDEKfCAjZGVmaW5lIEhBVkVfVFJVTkMg MQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAx CnwgI2RlZmluZSBIQVZFX1NFVExPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX05FV0xPQ0FMRSAx CnwgI2RlZmluZSBIQVZFX0dFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NFVFJMSU1JVCAx CnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdN QVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSU0lHTkFMIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJ TUVSIDEKfCAjZGVmaW5lIEhBVkVfU0VORFRPIDEKfCAjZGVmaW5lIEhBVkVfUkVDVkZST00g MQp8ICNkZWZpbmUgSEFWRV9HRVRTT0NLTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVElGQURE UlMgMQp8ICNkZWZpbmUgSEFWRV9GUkVFSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0dBSV9T VFJFUlJPUiAxCnwgI2RlZmluZSBIQVZFX1NZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VO VCAxCnwgI2RlZmluZSBIQVZFX0VORFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQg MQp8ICNkZWZpbmUgSEFWRV9FTkRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX1JFTkFNRUFUMiAx CnwgI2RlZmluZSBIQVZFX0NGTUFLRVJBVyAxCnwgI2RlZmluZSBIQVZFX0NGU0VUU1BFRUQg MQp8ICNkZWZpbmUgSEFWRV9fX0VYRUNVVEFCTEVfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9M T0cyIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TRVROQU1FX05QIDEKfCAjZGVmaW5lIEhB VkVfQUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfQUxJR05FRF9BTExPQyAx CnwgI2RlZmluZSBIQVZFX1BPU0lYX01BRFZJU0UgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxU SU5fRlJBTUVfQUREUkVTUyAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9VTldJTkRfSU5J VCAxCnwgI2RlZmluZSBIQVZFX0ZTRUVLTyAxCnwgI2RlZmluZSBIQVZFX0dSQU5UUFQgMQp8 ICNkZWZpbmUgSEFWRV9HRVRQVCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX09QRU5QVCAxCnwg I2RlZmluZSBURVJNSU5GTyAxCnwgI2RlZmluZSBURVJNSU5GT19ERUZJTkVTX0JDIDEKfCAj ZGVmaW5lIEhBVkVfVElNRVJGRCAxCnwgI2RlZmluZSBIQVZFX1ZBTEdSSU5EX1ZBTEdSSU5E X0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVU5JUEFJUl9VTklDT0RFIDEKfCAjZGVmaW5l IEhBVkVfV09SS0lOR19WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfRk9SSyAxCnwg I2RlZmluZSBIQVZFX1NOUFJJTlRGIDEKfCAjZGVmaW5lIEhBVkVfU1BBV05fSCAxCnwgI2Rl ZmluZSBIQVZFX1BPU0lYX1NQQVdOIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV05fRklM RV9BQ1RJT05TX0FERENIRElSX05QIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV05BVFRS X1NFVEZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QT1NJWF9TUEFXTl9TRVRTSUQgMQp8 ICNkZWZpbmUgSEFWRV9HTElCIDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fQ09ERVNFVCAx CnwgI2RlZmluZSBIQVZFX0xBTkdJTkZPX19OTF9QQVBFUl9XSURUSCAxCnwgI2RlZmluZSBI QVZFX01CU1RBVEVfVCAxCnwgI2RlZmluZSBBTVBFUlNBTkRfRlVMTF9OQU1FIDEKfCAjZGVm aW5lIEhBVkVfUFRZUyAxCnwgI2RlZmluZSBIQVZFX1NPQ0tFVFMgMQp8ICNkZWZpbmUgTlVM TF9ERVZJQ0UgIi9kZXYvbnVsbCIKfCAjZGVmaW5lIFNFUENIQVIgJzonCnwgI2RlZmluZSBz dWJwcm9jZXNzZXMgMQp8ICNkZWZpbmUgVVNFUl9GVUxMX05BTUUgcHctPnB3X2dlY29zCnwg I2RlZmluZSBESVJFQ1RPUllfU0VQICcvJwp8ICNkZWZpbmUgSVNfREVWSUNFX1NFUChfY18p IDAKfCAjZGVmaW5lIElTX0RJUkVDVE9SWV9TRVAoX2NfKSAoKF9jXykgPT0gRElSRUNUT1JZ X1NFUCkKfCAjZGVmaW5lIElTX0FOWV9TRVAoX2NfKSAoSVNfRElSRUNUT1JZX1NFUCAoX2Nf KSkKfCAjZGVmaW5lIEhBVkVfUFJPQ0ZTIDEKfCAjZGVmaW5lIERFRkFVTFRfU09VTkRfREVW SUNFICIvZGV2L2RzcCIKfCAjZGVmaW5lIElOVEVSUlVQVF9JTlBVVCAxCnwgI2RlZmluZSBO QVJST1dQUk9UTyAxCnwgI2RlZmluZSBVTklYOThfUFRZUyAxCnwgI2RlZmluZSBQVFlfSVRF UkFUSU9OIGludCBpOyBmb3IgKGkgPSAwOyBpIDwgMTsgaSsrKQp8ICNkZWZpbmUgUFRZX1RU WV9OQU1FX1NQUklOVEYgeyBjaGFyICpwdHluYW1lID0gMDsgc2lnc2V0X3QgYmxvY2tlZDsg c2lnZW1wdHlzZXQgKCZibG9ja2VkKTsgc2lnYWRkc2V0ICgmYmxvY2tlZCwgU0lHQ0hMRCk7 IHB0aHJlYWRfc2lnbWFzayAoU0lHX0JMT0NLLCAmYmxvY2tlZCwgMCk7IGlmIChncmFudHB0 IChmZCkgIT0gLTEgJiYgdW5sb2NrcHQgKGZkKSAhPSAtMSkgcHR5bmFtZSA9IHB0c25hbWUo ZmQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19VTkJMT0NLLCAmYmxvY2tlZCwgMCk7IGlmICgh cHR5bmFtZSkgeyBlbWFjc19jbG9zZSAoZmQpOyByZXR1cm4gLTE7IH0gc25wcmludGYgKHB0 eV9uYW1lLCBQVFlfTkFNRV9TSVpFLCAiJXMiLCBwdHluYW1lKTsgfQp8ICNkZWZpbmUgUFRZ X09QRU4gZG8geyBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19DTE9FWEVDIHwgT19O T0NUVFkpOyBpZiAoZmQgPCAwICYmIGVycm5vID09IEVJTlZBTCkgZmQgPSBwb3NpeF9vcGVu cHQgKE9fUkRXUiB8IE9fTk9DVFRZKTsgfSB3aGlsZSAoZmFsc2UpCnwgI2RlZmluZSBQVFlf TkFNRV9TUFJJTlRGIC8qKi8KfCAjZGVmaW5lIFNJR05BTFNfVklBX0NIQVJBQ1RFUlMgMQp8 ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAx CnwgI2RlZmluZSBIQVZFX19TRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRVRKTVAgMQp8 ICNkZWZpbmUgSEFWRV9TVEFDS19PVkVSRkxPV19IQU5ETElORyAxCnwgI2RlZmluZSBVU0cg LyoqLwp8ICNkZWZpbmUgR05VX0xJTlVYIC8qKi8KfCAjZGVmaW5lIFNJWkVPRl9TUEVFRF9U IDQKfCAjZGVmaW5lIFVTQUJMRV9GSU9OUkVBRCAxCnwgI2RlZmluZSBVU0FCTEVfU0lHSU8g MQp8ICNkZWZpbmUgQ09QWVJJR0hUICJDb3B5cmlnaHQgKEMpIDIwMjMgRnJlZSBTb2Z0d2Fy ZSBGb3VuZGF0aW9uLCBJbmMuIgp8ICNkZWZpbmUgVEVSTV9IRUFERVIgImd0a3V0aWwuaCIK fCAjZGVmaW5lIEVNQUNTX0NPTkZJR1VSQVRJT04gIng4Nl82NC1wYy1saW51eC1nbnUiCnwg I2RlZmluZSBFTUFDU19DT05GSUdfT1BUSU9OUyAiIgp8ICNkZWZpbmUgSEFWRV9YX1dJTkRP V1MgMQp8ICNkZWZpbmUgSEFWRV9YMTEgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfQVRUUklC VVRFX0FMSUdORUQgMQp8ICNkZWZpbmUgSEFWRV9UWVBFT0YgMQp8ICNkZWZpbmUgSEFWRV9T VEFURU1FTlRfRVhQUkVTU0lPTlMgMQp8ICNkZWZpbmUgTUFMTE9DXzBfSVNfTk9OTlVMTCAx CnwgI2RlZmluZSBIQVZFX1NZU19BQ0xfSCAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRklM RSAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VU X0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNM X0ZSRUUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9NT0RFIDEKfCAjZGVmaW5lIEhBVkVf QUNMX0ZST01fVEVYVCAxCnwgI2RlZmluZSBIQVZFX0FDTF9ERUxFVEVfREVGX0ZJTEUgMQp8 ICNkZWZpbmUgSEFWRV9BQ0xfRVhURU5ERURfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9M SUJBQ0xfSCAxCnwgI2RlZmluZSBIQVZFX0FDTF9FTlRSSUVTIDEKfCAjZGVmaW5lIEhBVkVf QUNMX0ZJUlNUX0VOVFJZIDEKfCAjZGVmaW5lIFVTRV9BQ0wgMQp8ICNkZWZpbmUgSEFWRV9B TExPQ0FfSCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBMU1RBVF9GT0xM T1dTX1NMQVNIRURfU1lNTElOSyAxCnwgI2RlZmluZSBGVU5DX1JFQUxQQVRIX1dPUktTIDEK fCAjZGVmaW5lIEhBVkVfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfR0VUQ1dEIDEKfCAj ZGVmaW5lIHJlc3RyaWN0IF9fcmVzdHJpY3RfXwp8ICNkZWZpbmUgSEFWRV9FTlZJUk9OX0RF Q0wgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUk1PREUgMAp8ICNkZWZpbmUgSEFWRV9HRVRP UFRfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9MT05HX09OTFkgMQp8ICNkZWZpbmUgSEFW RV9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfVU5TSUdORURfTE9OR19MT05HX0lO VCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfTUVNTUVNIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9N RU1SQ0hSIDEKfCAjZGVmaW5lIEhBVkVfTUlOTUFYX0lOX1NZU19QQVJBTV9IIDEKfCAjZGVm aW5lIFRJTUVfVF9JU19TSUdORUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0FMQVJNIDEKfCAj ZGVmaW5lIEhBVkVfU1RSVUNUX1RNX1RNX1pPTkUgMQp8ICNkZWZpbmUgSEFWRV9UTV9aT05F IDEKfCAjZGVmaW5lIEhBVkVfVE1fR01UT0ZGIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUX1Qg MQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9UIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GQ0xPU0VB TEwgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVFcgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BV VFcgMQp8ICNkZWZpbmUgX19VU0VfTUlOR1dfQU5TSV9TVERJTyAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfRUNWVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkNWVCAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfR0NWVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSTkxFTiAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIF9VU0VfU1REX1NUQVQgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX0VYRUNWUEUgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0NMRUFSRVJSX1VO TE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRU9GX1VOTE9DS0VEIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9GRVJST1JfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZGTFVT SF9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkdFVFNfVU5MT0NLRUQgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX0ZQVVRDX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9G UFVUU19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRlJFQURfVU5MT0NLRUQgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX0ZXUklURV9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfR0VUQ19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VUQ0hBUl9VTkxPQ0tF RCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUFVUQ19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfUFVUQ0hBUl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBHRVRHUk9VUFNfVCBnaWRfdAp8 ICNkZWZpbmUgSEFWRV9ERUNMX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9NQUxM T0NfUE9TSVggMQp8ICNkZWZpbmUgUFJPTU9URURfTU9ERV9UIG1vZGVfdAp8ICNkZWZpbmUg SEFWRV9XT1JLSU5HX1VUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmlu ZSBIQVZFX19fQlVJTFRJTl9FWFBFQ1QgMQp8ICNkZWZpbmUgSEFWRV9CWVRFU1dBUF9IIDEK fCAjZGVmaW5lIEdOVUxJQl9DQU5PTklDQUxJWkVfTEdQTCAxCnwgI2RlZmluZSBIQVZFX1JF QURMSU5LQVQgMQp8ICNkZWZpbmUgSEFWRV9DTE9DS19HRVRSRVMgMQp8ICNkZWZpbmUgSEFW RV9DTE9DS19HRVRUSU1FIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tfU0VUVElNRSAxCnwgI2Rl ZmluZSBHTlVMSUJfQ0xPU0VfU1RSRUFNIDEKfCAjZGVmaW5lIEhBVkVfQ09QWV9GSUxFX1JB TkdFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0RJUkVOVF9EX1RZUEUgMQp8ICNkZWZpbmUg SEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgR05VTElCX0ZBQ0NFU1NBVCAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfRkRPUEVORElSIDEKfCAjZGVmaW5lIEdOVUxJQl9GRE9QRU5ESVIgMQp8 ICNkZWZpbmUgR0VUWEFUVFJfV0lUSF9QT1NJWF9BQ0xTIDEKfCAjZGVmaW5lIEZMRVhJQkxF X0FSUkFZX01FTUJFUiAvKiovCnwgI2RlZmluZSBIQVZFX0RFQ0xfX19GUEVORElORyAxCnwg I2RlZmluZSBIQVZFX0ZSRUVfUE9TSVggMQp8ICNkZWZpbmUgSEFWRV9TWVNfTU9VTlRfSCAx CnwgI2RlZmluZSBTVEFUX1NUQVRWRlMgMQp8ICNkZWZpbmUgU1RBVF9TVEFURlMyX0ZSU0la RSAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFURlNfSCAxCnwgI2RlZmluZSBIQVZFX0ZVVElN RU5TIDEKfCAjZGVmaW5lIEhBVkVfR0VUTE9BREFWRyAxCnwgLyogZW5kIGNvbmZkZWZzLmgu ICAqLwp8ICNpbmNsdWRlIDxzdGRkZWYuaD4KfCAjaWZkZWYgSEFWRV9TVERJT19ICnwgIyBp bmNsdWRlIDxzdGRpby5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NURExJQl9ICnwgIyBp bmNsdWRlIDxzdGRsaWIuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdfSAp8ICMg aW5jbHVkZSA8c3RyaW5nLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfSU5UVFlQRVNfSAp8 ICMgaW5jbHVkZSA8aW50dHlwZXMuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVERJTlRf SAp8ICMgaW5jbHVkZSA8c3RkaW50Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RSSU5H U19ICnwgIyBpbmNsdWRlIDxzdHJpbmdzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1lT X1RZUEVTX0gKfCAjIGluY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBI QVZFX1NZU19TVEFUX0gKfCAjIGluY2x1ZGUgPHN5cy9zdGF0Lmg+CnwgI2VuZGlmCnwgI2lm ZGVmIEhBVkVfVU5JU1REX0gKfCAjIGluY2x1ZGUgPHVuaXN0ZC5oPgp8ICNlbmRpZgp8ICNp bmNsdWRlIDxzeXMvbG9hZGF2Zy5oPgpjb25maWd1cmU6Mzc1MDg6IHJlc3VsdDogbm8KY29u ZmlndXJlOjM3NTIwOiBjaGVja2luZyB3aGV0aGVyIGdldGxvYWRhdmcgaXMgZGVjbGFyZWQK Y29uZmlndXJlOjM3NTIwOiBnY2MgLWMgLWczIC1PMiAgICAgY29uZnRlc3QuYyA+JjUKY29u ZmlndXJlOjM3NTIwOiAkPyA9IDAKY29uZmlndXJlOjM3NTIwOiByZXN1bHQ6IHllcwpjb25m aWd1cmU6Mzc4MDI6IGNoZWNraW5nIGZvciBnZXRyYW5kb20KY29uZmlndXJlOjM3ODQ0OiBj aGVja2luZyBmb3IgZ2V0cmFuZG9tCmNvbmZpZ3VyZTozNzg0NDogZ2NjIC1vIGNvbmZ0ZXN0 IC1nMyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1IApjb25maWd1cmU6Mzc4NDQ6ICQ/ID0g MApjb25maWd1cmU6Mzc4NDQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozNzg1OTogcmVzdWx0 OiB5ZXMKY29uZmlndXJlOjM3ODc5OiBjaGVja2luZyB3aGV0aGVyIGdldHJhbmRvbSBpcyBj b21wYXRpYmxlIHdpdGggaXRzIEdOVStCU0Qgc2lnbmF0dXJlCmNvbmZpZ3VyZTozNzkwMzog Z2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjM3OTAzOiAkPyA9 IDAKY29uZmlndXJlOjM3OTEyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzgwMjM6IGNoZWNr aW5nIGZvciBnZXR0aW1lb2ZkYXkgd2l0aCBQT1NJWCBzaWduYXR1cmUKY29uZmlndXJlOjM4 MDUyOiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzgwNTI6 ICQ/ID0gMApjb25maWd1cmU6MzgwNzk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozODE3NDog Y2hlY2tpbmcgd2hldGhlciB0aGUgY29tcGlsZXIgc3VwcG9ydHMgdGhlIF9faW5saW5lIGtl eXdvcmQKY29uZmlndXJlOjM4MTkyOiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4m NQpjb25maWd1cmU6MzgxOTI6ICQ/ID0gMApjb25maWd1cmU6MzgyMDA6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZTozODIyNDogY2hlY2tpbmcgZm9yIGdtcC5oCmNvbmZpZ3VyZTozODIyNDog Z2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjM4MjI0OiAkPyA9 IDAKY29uZmlndXJlOjM4MjI0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzgyMzg6IGNoZWNr aW5nIGZvciBsaWJyYXJ5IGNvbnRhaW5pbmcgX19nbXB6X3JvaW5pdF9uCmNvbmZpZ3VyZToz ODI2ODogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1IAov dXNyL2Jpbi9sZDogL3RtcC9jY0lwSGZRWi5vOiBpbiBmdW5jdGlvbiBgbWFpbic6Ci9hcHAv ZW1hY3MvY29uZnRlc3QuYzo0MDM6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYF9fZ21wel9y b2luaXRfbicKY29sbGVjdDI6IGVycm9yOiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVzCmNv bmZpZ3VyZTozODI2ODogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8 IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8 ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVS U0lPTiAiMzAuMC41MCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1hY3MgMzAu MC41MCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ251LWVtYWNzQGdudS5v cmciCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0cHM6Ly93d3cuZ251Lm9yZy9zb2Z0d2Fy ZS9lbWFjcy8iCnwgI2RlZmluZSBIQVZFX1BEVU1QRVIgMQp8ICNkZWZpbmUgSEFWRV9TVERJ T19IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdf SCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRf SCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFU X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNU RF9IIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfSCAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZT X0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TWVNJ TkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9QVFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNP VVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZF X1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUF9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJ WkVSX0xTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQVNBTl9J TlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9DT01NT05fSU5URVJGQUNF X0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZF X0VYRUNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJT19FWFRfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19WRlNfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX0NERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5l IEhBVkVfSUVFRTc1NF9IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERCT09MX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfUkFORE9NX0ggMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVm aW5lIF9BTExfU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8ICNkZWZp bmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0hQVVhfQUxUX1hPUEVOX1NPQ0tFVF9BUEkg MQp8ICNkZWZpbmUgX05FVEJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUgX09QRU5CU0RfU09VUkNF IDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBfX1NU RENfV0FOVF9JRUNfNjA1NTlfQVRUUklCU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FO VF9JRUNfNjA1NTlfQkZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1 OV9ERlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0VYVF9fIDEK fCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9GVU5DU19FWFRfXyAxCnwgI2RlZmlu ZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfVFlQRVNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERD X1dBTlRfTElCX0VYVDJfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9NQVRIX1NQRUNfRlVO Q1NfXyAxCnwgI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCnwgI2RlZmluZSBfX0VYVEVOU0lP TlNfXyAxCnwgI2RlZmluZSBHQ0NfTElOVCAxCnwgI2RlZmluZSBTWVNURU1fVFlQRSAiZ251 L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJEX0ggMQp8ICNkZWZpbmUgSEFW RV9BTFNBIDEKfCAjZGVmaW5lIEhBVkVfU09VTkQgMQp8ICNkZWZpbmUgSEFWRV9QRVJTT05B TElUWV9BRERSX05PX1JBTkRPTUlaRSAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX1NZU0lORk8g MQp8ICNkZWZpbmUgTElOVVhfU1lTSU5GT19VTklUIDEKfCAjZGVmaW5lIEhBVkVfVEVSTV9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX05FVF9JRl9I IDEKfCAjZGVmaW5lIEhBVkVfSUZBRERSU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lG UkVRX0lGUl9GTEFHUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfSFdBRERS IDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9ORVRNQVNLIDEKfCAjZGVmaW5l IEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9CUk9BREFERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJV Q1RfSUZSRVFfSUZSX0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TQlJLIDEKfCAjZGVmaW5lIEhB VkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVf VkZPUksgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9DQU5PTklD QUxJWkVfRklMRV9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUkVBTFBBVEggMQp8ICNkZWZpbmUg SEFWRV9MU1RBVCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PREFUIDEKfCAjZGVmaW5lIEhBVkVf TENITU9EIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9GRE9QRU5E SVIgMQp8ICNkZWZpbmUgSEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMgMQp8 ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9QU0VMRUNUIDEK fCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJ TksgMQp8ICNkZWZpbmUgSEFWRV9JU0JMQU5LIDEKfCAjZGVmaW5lIEhBVkVfSVNXQ1RZUEUg MQp8ICNkZWZpbmUgSEFWRV9TVFJUT0lNQVggMQp8ICNkZWZpbmUgSEFWRV9TWU1MSU5LIDEK fCAjZGVmaW5lIEhBVkVfTE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVT SVpFIDEKfCAjZGVmaW5lIFNZU1RFTV9NQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9NTUFQIDEK fCAjZGVmaW5lIEhBVkVfUFRIUkVBRCAxCnwgI2RlZmluZSBUSFJFQURTX0VOQUJMRUQgMQp8 ICNkZWZpbmUgSEFWRV9YS0IgMQp8ICNkZWZpbmUgSEFWRV9YS0JSRUZSRVNIS0VZQk9BUkRN QVBQSU5HIDEKfCAjZGVmaW5lIEhBVkVfWEtCRlJFRU5BTUVTIDEKfCAjZGVmaW5lIEhBVkVf WFJNU0VUREFUQUJBU0UgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOUkVTT1VSQ0VTVFJJTkcg MQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOTlVNQkVST0ZTQ1JFRU4gMQp8ICNkZWZpbmUgSEFW RV9YRElTUExBWUNFTExTIDEKfCAjZGVmaW5lIEhBVkVfWERFU1RST1lTVUJXSU5ET1dTIDEK fCAjZGVmaW5lIEhBVkVfWDExUjYgMQp8ICNkZWZpbmUgSEFWRV9YX0kxOE4gMQp8ICNkZWZp bmUgSEFWRV9YSUNDQUxMQkFDS19DQUxMQkFDSyAxCnwgI2RlZmluZSBIQVZFX1gxMVI2X1hJ TSAxCnwgI2RlZmluZSBIQVZFX1JTVkcgMQp8ICNkZWZpbmUgSEFWRV9XRUJQIDEKfCAjZGVm aW5lIEhBVkVfU1FMSVRFMyAxCnwgI2RlZmluZSBIQVZFX1NRTElURTNfTE9BRF9FWFRFTlNJ T04gMQp8ICNkZWZpbmUgSEFWRV9HRVRBRERSSU5GT19BIDEKfCAjZGVmaW5lIEhBVkVfR1RL MyAxCnwgI2RlZmluZSBHREtfRElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAxCnwgI2Rl ZmluZSBHTElCX0RJU0FCTEVfREVQUkVDQVRJT05fV0FSTklOR1MgMQp8ICNkZWZpbmUgVVNF X0dUSyAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19UUklNIDEKfCAjZGVmaW5lIEhBVkVfREJV UyAxCnwgI2RlZmluZSBIQVZFX0RCVVNfV0FUQ0hfR0VUX1VOSVhfRkQgMQp8ICNkZWZpbmUg SEFWRV9EQlVTX1RZUEVfSVNfVkFMSUQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRF X0JVU19OQU1FIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9QQVRIIDEKfCAjZGVm aW5lIEhBVkVfREJVU19WQUxJREFURV9JTlRFUkZBQ0UgMQp8ICNkZWZpbmUgSEFWRV9EQlVT X1ZBTElEQVRFX01FTUJFUiAxCnwgI2RlZmluZSBIQVZFX0dTRVRUSU5HUyAxCnwgI2RlZmlu ZSBIQVZFX0xJQlNFTElOVVggMQp8ICNkZWZpbmUgSEFWRV9HTlVUTFMgMQp8ICNkZWZpbmUg SEFWRV9MSUJTWVNURU1EIDEKfCAjZGVmaW5lIEhBVkVfSlNPTiAxCnwgI2RlZmluZSBIQVZF X0lOT1RJRlkgMQp8ICNkZWZpbmUgVVNFX0ZJTEVfTk9USUZZIDEKfCAjZGVmaW5lIFVTRV9U T09MS0lUX1NDUk9MTF9CQVJTIDEKfCAjZGVmaW5lIEhBVkVfWElNIDEKfCAjZGVmaW5lIFVT RV9YSU0gMQp8ICNkZWZpbmUgSEFWRV9YUkVOREVSIDEKfCAjZGVmaW5lIFVTRV9DQUlST19Y Q0IgMQp8ICNkZWZpbmUgVVNFX0NBSVJPIDEKfCAjZGVmaW5lIEhBVkVfRlJFRVRZUEUgMQp8 ICNkZWZpbmUgSEFWRV9GVF9GQUNFX0dFVENIQVJWQVJJQU5USU5ERVggMQp8ICNkZWZpbmUg SEFWRV9MSUJPVEYgMQp8ICNkZWZpbmUgSEFWRV9PVEZfR0VUX1ZBUklBVElPTl9HTFlQSFMg MQp8ICNkZWZpbmUgSEFWRV9NMTdOX0ZMVCAxCnwgI2RlZmluZSBIQVZFX0hBUkZCVVpaIDEK fCAjZGVmaW5lIFVTRV9YQ0IgMQp8ICNkZWZpbmUgSEFWRV9YUE0gMQp8ICNkZWZpbmUgSEFW RV9KUEVHIDEKfCAjZGVmaW5lIEhBVkVfTENNUzIgMQp8ICNkZWZpbmUgSEFWRV9aTElCIDEK fCAjZGVmaW5lIERZTkFNSUNfTElCX1NVRkZJWCAiLnNvIgp8ICNkZWZpbmUgRFlOQU1JQ19M SUJfU0VDT05EQVJZX1NVRkZJWCAiIgp8ICNkZWZpbmUgSEFWRV9ETEFERFIgMQp8ICNkZWZp bmUgSEFWRV9NT0RVTEVTIDEKfCAjZGVmaW5lIE1PRFVMRVNfU1VGRklYICIuc28iCnwgI2Rl ZmluZSBOQVRJVkVfRUxJU1BfU1VGRklYICIuZWxuIgp8ICNkZWZpbmUgSEFWRV9QTkcgMQp8 ICNkZWZpbmUgSEFWRV9USUZGIDEKfCAjZGVmaW5lIEhBVkVfR0lGIDEKfCAjZGVmaW5lIEhB VkVfR1BNIDEKfCAjZGVmaW5lIEhBVkVfWF9TTSAxCnwgI2RlZmluZSBIQVZFX1hSQU5EUiAx CnwgI2RlZmluZSBIQVZFX1hJTkVSQU1BIDEKfCAjZGVmaW5lIEhBVkVfWEZJWEVTIDEKfCAj ZGVmaW5lIEhBVkVfWElOUFVUMiAxCnwgI2RlZmluZSBIQVZFX1hJU0NST0xMQ0xBU1NJTkZP X1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YSVRPVUNIQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZp bmUgSEFWRV9YSUJBUlJJRVJSRUxFQVNFUE9JTlRFUklORk9fREVWSUNFSUQgMQp8ICNkZWZp bmUgSEFWRV9YSUdFU1RVUkVDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hTWU5D IDEKfCAjZGVmaW5lIEhBVkVfWFNZTkNUUklHR0VSRkVOQ0UgMQp8ICNkZWZpbmUgSEFWRV9Y REJFIDEKfCAjZGVmaW5lIEhBVkVfWENCX1NIQVBFIDEKfCAjZGVmaW5lIEhBVkVfWFNIQVBF IDEKfCAjZGVmaW5lIEhBVkVfWENPTVBPU0lURSAxCnwgI2RlZmluZSBIQVZFX0xJQlhNTDIg MQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TRUNDT01QX0ggMQp8ICNkZWZpbmUgSEFWRV9ERUNM X1NFQ0NPTVBfU0VUX01PREVfRklMVEVSIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01Q X0ZJTFRFUl9GTEFHX1RTWU5DIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfRklMVEVSX0ggMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfU0VUX01PREVfRklMVEVSIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9TRUNDT01QX0ZJTFRFUl9GTEFHX1RTWU5DIDEKfCAjZGVmaW5lIFNJWkVP Rl9MT05HIDgKfCAjZGVmaW5lIEhBVkVfQUNDRVBUNCAxCnwgI2RlZmluZSBIQVZFX0ZDSERJ UiAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUUlVT QUdFIDEKfCAjZGVmaW5lIEhBVkVfR0VUX0NVUlJFTlRfRElSX05BTUUgMQp8ICNkZWZpbmUg SEFWRV9MUkFORDQ4IDEKfCAjZGVmaW5lIEhBVkVfUkFORE9NIDEKfCAjZGVmaW5lIEhBVkVf UklOVCAxCnwgI2RlZmluZSBIQVZFX1RSVU5DIDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEK fCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUg MQp8ICNkZWZpbmUgSEFWRV9ORVdMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSTElNSVQg MQp8ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TSFVURE9XTiAx CnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlNJ R05BTCAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX1NFTkRU TyAxCnwgI2RlZmluZSBIQVZFX1JFQ1ZGUk9NIDEKfCAjZGVmaW5lIEhBVkVfR0VUU09DS05B TUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfRlJFRUlG QUREUlMgMQp8ICNkZWZpbmUgSEFWRV9HQUlfU1RSRVJST1IgMQp8ICNkZWZpbmUgSEFWRV9T WU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRQV0VO VCAxCnwgI2RlZmluZSBIQVZFX0dFVEdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5ER1JFTlQg MQp8ICNkZWZpbmUgSEFWRV9SRU5BTUVBVDIgMQp8ICNkZWZpbmUgSEFWRV9DRk1BS0VSQVcg MQp8ICNkZWZpbmUgSEFWRV9DRlNFVFNQRUVEIDEKfCAjZGVmaW5lIEhBVkVfX19FWEVDVVRB QkxFX1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVfTE9HMiAxCnwgI2RlZmluZSBIQVZFX1BUSFJF QURfU0VUTkFNRV9OUCAxCnwgI2RlZmluZSBIQVZFX0FMSUdORURfQUxMT0MgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX0FMSUdORURfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9NQURW SVNFIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX0ZSQU1FX0FERFJFU1MgMQp8ICNkZWZp bmUgSEFWRV9fX0JVSUxUSU5fVU5XSU5EX0lOSVQgMQp8ICNkZWZpbmUgSEFWRV9GU0VFS08g MQp8ICNkZWZpbmUgSEFWRV9HUkFOVFBUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFQgMQp8ICNk ZWZpbmUgSEFWRV9QT1NJWF9PUEVOUFQgMQp8ICNkZWZpbmUgVEVSTUlORk8gMQp8ICNkZWZp bmUgVEVSTUlORk9fREVGSU5FU19CQyAxCnwgI2RlZmluZSBIQVZFX1RJTUVSRkQgMQp8ICNk ZWZpbmUgSEFWRV9WQUxHUklORF9WQUxHUklORF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNU X1VOSVBBSVJfVU5JQ09ERSAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVkZPUksgMQp8ICNk ZWZpbmUgSEFWRV9XT1JLSU5HX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9TTlBSSU5URiAxCnwg I2RlZmluZSBIQVZFX1NQQVdOX0ggMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTiAxCnwg I2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOX0ZJTEVfQUNUSU9OU19BRERDSERJUl9OUCAxCnwg I2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOQVRUUl9TRVRGTEFHUyAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfUE9TSVhfU1BBV05fU0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVfR0xJQiAxCnwgI2Rl ZmluZSBIQVZFX0xBTkdJTkZPX0NPREVTRVQgMQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5GT19f TkxfUEFQRVJfV0lEVEggMQp8ICNkZWZpbmUgSEFWRV9NQlNUQVRFX1QgMQp8ICNkZWZpbmUg QU1QRVJTQU5EX0ZVTExfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1BUWVMgMQp8ICNkZWZpbmUg SEFWRV9TT0NLRVRTIDEKfCAjZGVmaW5lIE5VTExfREVWSUNFICIvZGV2L251bGwiCnwgI2Rl ZmluZSBTRVBDSEFSICc6Jwp8ICNkZWZpbmUgc3VicHJvY2Vzc2VzIDEKfCAjZGVmaW5lIFVT RVJfRlVMTF9OQU1FIHB3LT5wd19nZWNvcwp8ICNkZWZpbmUgRElSRUNUT1JZX1NFUCAnLycK fCAjZGVmaW5lIElTX0RFVklDRV9TRVAoX2NfKSAwCnwgI2RlZmluZSBJU19ESVJFQ1RPUllf U0VQKF9jXykgKChfY18pID09IERJUkVDVE9SWV9TRVApCnwgI2RlZmluZSBJU19BTllfU0VQ KF9jXykgKElTX0RJUkVDVE9SWV9TRVAgKF9jXykpCnwgI2RlZmluZSBIQVZFX1BST0NGUyAx CnwgI2RlZmluZSBERUZBVUxUX1NPVU5EX0RFVklDRSAiL2Rldi9kc3AiCnwgI2RlZmluZSBJ TlRFUlJVUFRfSU5QVVQgMQp8ICNkZWZpbmUgTkFSUk9XUFJPVE8gMQp8ICNkZWZpbmUgVU5J WDk4X1BUWVMgMQp8ICNkZWZpbmUgUFRZX0lURVJBVElPTiBpbnQgaTsgZm9yIChpID0gMDsg aSA8IDE7IGkrKykKfCAjZGVmaW5lIFBUWV9UVFlfTkFNRV9TUFJJTlRGIHsgY2hhciAqcHR5 bmFtZSA9IDA7IHNpZ3NldF90IGJsb2NrZWQ7IHNpZ2VtcHR5c2V0ICgmYmxvY2tlZCk7IHNp Z2FkZHNldCAoJmJsb2NrZWQsIFNJR0NITEQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19CTE9D SywgJmJsb2NrZWQsIDApOyBpZiAoZ3JhbnRwdCAoZmQpICE9IC0xICYmIHVubG9ja3B0IChm ZCkgIT0gLTEpIHB0eW5hbWUgPSBwdHNuYW1lKGZkKTsgcHRocmVhZF9zaWdtYXNrIChTSUdf VU5CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoIXB0eW5hbWUpIHsgZW1hY3NfY2xvc2UgKGZk KTsgcmV0dXJuIC0xOyB9IHNucHJpbnRmIChwdHlfbmFtZSwgUFRZX05BTUVfU0laRSwgIiVz IiwgcHR5bmFtZSk7IH0KfCAjZGVmaW5lIFBUWV9PUEVOIGRvIHsgZmQgPSBwb3NpeF9vcGVu cHQgKE9fUkRXUiB8IE9fQ0xPRVhFQyB8IE9fTk9DVFRZKTsgaWYgKGZkIDwgMCAmJiBlcnJu byA9PSBFSU5WQUwpIGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX05PQ1RUWSk7IH0g d2hpbGUgKGZhbHNlKQp8ICNkZWZpbmUgUFRZX05BTUVfU1BSSU5URiAvKiovCnwgI2RlZmlu ZSBTSUdOQUxTX1ZJQV9DSEFSQUNURVJTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAx CnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgSEFWRV9fU0VUSk1QIDEK fCAjZGVmaW5lIEhBVkVfU0lHU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU1RBQ0tfT1ZFUkZM T1dfSEFORExJTkcgMQp8ICNkZWZpbmUgVVNHIC8qKi8KfCAjZGVmaW5lIEdOVV9MSU5VWCAv KiovCnwgI2RlZmluZSBTSVpFT0ZfU1BFRURfVCA0CnwgI2RlZmluZSBVU0FCTEVfRklPTlJF QUQgMQp8ICNkZWZpbmUgVVNBQkxFX1NJR0lPIDEKfCAjZGVmaW5lIENPUFlSSUdIVCAiQ29w eXJpZ2h0IChDKSAyMDIzIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiIKfCAjZGVm aW5lIFRFUk1fSEVBREVSICJndGt1dGlsLmgiCnwgI2RlZmluZSBFTUFDU19DT05GSUdVUkFU SU9OICJ4ODZfNjQtcGMtbGludXgtZ251Igp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHX09QVElP TlMgIiIKfCAjZGVmaW5lIEhBVkVfWF9XSU5ET1dTIDEKfCAjZGVmaW5lIEhBVkVfWDExIDEK fCAjZGVmaW5lIEhBVkVfU1RSVUNUX0FUVFJJQlVURV9BTElHTkVEIDEKfCAjZGVmaW5lIEhB VkVfVFlQRU9GIDEKfCAjZGVmaW5lIEhBVkVfU1RBVEVNRU5UX0VYUFJFU1NJT05TIDEKfCAj ZGVmaW5lIE1BTExPQ18wX0lTX05PTk5VTEwgMQp8ICNkZWZpbmUgSEFWRV9TWVNfQUNMX0gg MQp8ICNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfR0VU X0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX1NFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNM X1NFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUkVFIDEKfCAjZGVmaW5lIEhBVkVfQUNM X0ZST01fTU9ERSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX1RFWFQgMQp8ICNkZWZpbmUg SEFWRV9BQ0xfREVMRVRFX0RFRl9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VYVEVOREVE X0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfTElCQUNMX0ggMQp8ICNkZWZpbmUgSEFWRV9B Q0xfRU5UUklFUyAxCnwgI2RlZmluZSBIQVZFX0FDTF9GSVJTVF9FTlRSWSAxCnwgI2RlZmlu ZSBVU0VfQUNMIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFWRV9B TExPQ0EgMQp8ICNkZWZpbmUgTFNUQVRfRk9MTE9XU19TTEFTSEVEX1NZTUxJTksgMQp8ICNk ZWZpbmUgRlVOQ19SRUFMUEFUSF9XT1JLUyAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAx CnwgI2RlZmluZSBIQVZFX0dFVENXRCAxCnwgI2RlZmluZSByZXN0cmljdCBfX3Jlc3RyaWN0 X18KfCAjZGVmaW5lIEhBVkVfRU5WSVJPTl9ERUNMIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9T VFJNT0RFIDAKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRP UFRfTE9OR19PTkxZIDEKfCAjZGVmaW5lIEhBVkVfTE9OR19MT05HX0lOVCAxCnwgI2RlZmlu ZSBIQVZFX1VOU0lHTkVEX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX01F TU1FTSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfTUVNUkNIUiAxCnwgI2RlZmluZSBIQVZFX01J Tk1BWF9JTl9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBUSU1FX1RfSVNfU0lHTkVEIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9BTEFSTSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9UTV9UTV9a T05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fWk9ORSAxCnwgI2RlZmluZSBIQVZFX1RNX0dNVE9G RiAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVF9UIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfVCAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfRkNMT1NFQUxMIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9H RVRXIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRXIDEKfCAjZGVmaW5lIF9fVVNFX01JTkdX X0FOU0lfU1RESU8gMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VDVlQgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX0ZDVlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dDVlQgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX1NUUk5MRU4gMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUlRPSU1BWCAxCnwgI2Rl ZmluZSBfVVNFX1NURF9TVEFUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9FWEVDVlBFIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9DTEVBUkVSUl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfRkVPRl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkVSUk9SX1VOTE9DS0VE IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRkxVU0hfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX0ZHRVRTX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GUFVUQ19VTkxP Q0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRlBVVFNfVU5MT0NLRUQgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX0ZSRUFEX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GV1JJVEVf VU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVENfVU5MT0NLRUQgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX0dFVENIQVJfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BV VENfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BVVENIQVJfVU5MT0NLRUQgMQp8 ICNkZWZpbmUgR0VUR1JPVVBTX1QgZ2lkX3QKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVREVEFC TEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX1BPU0lYIDEKfCAjZGVmaW5lIFBST01P VEVEX01PREVfVCBtb2RlX3QKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19VVElNRVMgMQp8ICNk ZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fRVhQRUNUIDEK fCAjZGVmaW5lIEhBVkVfQllURVNXQVBfSCAxCnwgI2RlZmluZSBHTlVMSUJfQ0FOT05JQ0FM SVpFX0xHUEwgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKfCAjZGVmaW5lIEhBVkVf Q0xPQ0tfR0VUUkVTIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tfR0VUVElNRSAxCnwgI2RlZmlu ZSBIQVZFX0NMT0NLX1NFVFRJTUUgMQp8ICNkZWZpbmUgR05VTElCX0NMT1NFX1NUUkVBTSAx CnwgI2RlZmluZSBIQVZFX0NPUFlfRklMRV9SQU5HRSAxCnwgI2RlZmluZSBIQVZFX1NUUlVD VF9ESVJFTlRfRF9UWVBFIDEKfCAjZGVmaW5lIEhBVkVfRkFDQ0VTU0FUIDEKfCAjZGVmaW5l IEdOVUxJQl9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZET1BFTkRJUiAxCnwg I2RlZmluZSBHTlVMSUJfRkRPUEVORElSIDEKfCAjZGVmaW5lIEdFVFhBVFRSX1dJVEhfUE9T SVhfQUNMUyAxCnwgI2RlZmluZSBGTEVYSUJMRV9BUlJBWV9NRU1CRVIgLyoqLwp8ICNkZWZp bmUgSEFWRV9ERUNMX19fRlBFTkRJTkcgMQp8ICNkZWZpbmUgSEFWRV9GUkVFX1BPU0lYIDEK fCAjZGVmaW5lIEhBVkVfU1lTX01PVU5UX0ggMQp8ICNkZWZpbmUgU1RBVF9TVEFUVkZTIDEK fCAjZGVmaW5lIFNUQVRfU1RBVEZTMl9GUlNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RB VEZTX0ggMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVOUyAxCnwgI2RlZmluZSBIQVZFX0dFVExP QURBVkcgMQp8ICNkZWZpbmUgSEFWRV9HRVRSQU5ET00gMQp8ICNkZWZpbmUgSEFWRV9USU1F U1BFQ19HRVQgMQp8ICNkZWZpbmUgR0VUVElNRU9GREFZX1RJTUVaT05FIHZvaWQKfCAjZGVm aW5lIEhBVkVfX19JTkxJTkUgMQp8ICNkZWZpbmUgSEFWRV9HTVBfSCAxCnwgLyogZW5kIGNv bmZkZWZzLmguICAqLwp8IAp8IC8qIE92ZXJyaWRlIGFueSBHQ0MgaW50ZXJuYWwgcHJvdG90 eXBlIHRvIGF2b2lkIGFuIGVycm9yLgp8ICAgIFVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0 IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIEdDQwp8ICAgIGJ1aWx0aW4gYW5kIHRoZW4g aXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCnwgY2hhciBf X2dtcHpfcm9pbml0X24gKCk7CnwgaW50CnwgbWFpbiAodm9pZCkKfCB7CnwgcmV0dXJuIF9f Z21wel9yb2luaXRfbiAoKTsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjM4 MjY4OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgLWxnbXAgICAg PiY1IApjb25maWd1cmU6MzgyNjg6ICQ/ID0gMApjb25maWd1cmU6MzgyODg6IHJlc3VsdDog LWxnbXAKY29uZmlndXJlOjM4NDQ3OiBjaGVja2luZyBmb3IgbWVtbWVtCmNvbmZpZ3VyZToz ODQ0NzogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1IApj b25maWd1cmU6Mzg0NDc6ICQ/ID0gMApjb25maWd1cmU6Mzg0NDc6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZTozODQ2MzogY2hlY2tpbmcgd2hldGhlciBtZW1tZW0gd29ya3MKY29uZmlndXJl OjM4NTMxOiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUg CmNvbmZpZ3VyZTozODUzMTogJD8gPSAwCmNvbmZpZ3VyZTozODUzMTogLi9jb25mdGVzdApj b25maWd1cmU6Mzg1MzE6ICQ/ID0gMApjb25maWd1cmU6Mzg1NDM6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZTozODU5NDogY2hlY2tpbmcgZm9yIG1lbXBjcHkKY29uZmlndXJlOjM4NjMxOiBj aGVja2luZyBmb3IgbWVtcGNweQpjb25maWd1cmU6Mzg2MzE6IGdjYyAtbyBjb25mdGVzdCAt ZzMgLU8yICAgICAgY29uZnRlc3QuYyAgID4mNSAKY29uZnRlc3QuYzo0MTI6Njogd2Fybmlu ZzogY29uZmxpY3RpbmcgdHlwZXMgZm9yIGJ1aWx0LWluIGZ1bmN0aW9uICdtZW1wY3B5Jzsg ZXhwZWN0ZWQgJ3ZvaWQgKih2b2lkICosIGNvbnN0IHZvaWQgKiwgbG9uZyB1bnNpZ25lZCBp bnQpJyBbLVdidWlsdGluLWRlY2xhcmF0aW9uLW1pc21hdGNoXQogIDQxMiB8IGNoYXIgbWVt cGNweSAoKTsKICAgICAgfCAgICAgIF5+fn5+fn4KY29uZmlndXJlOjM4NjMxOiAkPyA9IDAK Y29uZmlndXJlOjM4NjMxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6Mzg2NDY6IHJlc3VsdDog eWVzCmNvbmZpZ3VyZTozODcxMjogY2hlY2tpbmcgZm9yIG1lbXJjaHIKY29uZmlndXJlOjM4 NzEyOiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCmNv bmZpZ3VyZTozODcxMjogJD8gPSAwCmNvbmZpZ3VyZTozODcxMjogcmVzdWx0OiB5ZXMKY29u ZmlndXJlOjM4Nzc0OiBjaGVja2luZyBmb3IgZXhwbGljaXRfbWVtc2V0CmNvbmZpZ3VyZToz ODc3NDogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1IAov dXNyL2Jpbi9sZDogL3RtcC9jY0JUaVJLRC5vOiBpbiBmdW5jdGlvbiBgbWFpbic6Ci9hcHAv ZW1hY3MvY29uZnRlc3QuYzo0MjU6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYGV4cGxpY2l0 X21lbXNldCcKY29sbGVjdDI6IGVycm9yOiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVzCmNv bmZpZ3VyZTozODc3NDogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8 IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8 ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVS U0lPTiAiMzAuMC41MCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1hY3MgMzAu MC41MCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ251LWVtYWNzQGdudS5v cmciCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0cHM6Ly93d3cuZ251Lm9yZy9zb2Z0d2Fy ZS9lbWFjcy8iCnwgI2RlZmluZSBIQVZFX1BEVU1QRVIgMQp8ICNkZWZpbmUgSEFWRV9TVERJ T19IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdf SCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRf SCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFU X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNU RF9IIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfSCAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZT X0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TWVNJ TkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9QVFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNP VVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZF X1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUF9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJ WkVSX0xTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQVNBTl9J TlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9DT01NT05fSU5URVJGQUNF X0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZF X0VYRUNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJT19FWFRfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19WRlNfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX0NERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5l IEhBVkVfSUVFRTc1NF9IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERCT09MX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfUkFORE9NX0ggMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVm aW5lIF9BTExfU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8ICNkZWZp bmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0hQVVhfQUxUX1hPUEVOX1NPQ0tFVF9BUEkg MQp8ICNkZWZpbmUgX05FVEJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUgX09QRU5CU0RfU09VUkNF IDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBfX1NU RENfV0FOVF9JRUNfNjA1NTlfQVRUUklCU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FO VF9JRUNfNjA1NTlfQkZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1 OV9ERlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0VYVF9fIDEK fCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9GVU5DU19FWFRfXyAxCnwgI2RlZmlu ZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfVFlQRVNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERD X1dBTlRfTElCX0VYVDJfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9NQVRIX1NQRUNfRlVO Q1NfXyAxCnwgI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCnwgI2RlZmluZSBfX0VYVEVOU0lP TlNfXyAxCnwgI2RlZmluZSBHQ0NfTElOVCAxCnwgI2RlZmluZSBTWVNURU1fVFlQRSAiZ251 L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJEX0ggMQp8ICNkZWZpbmUgSEFW RV9BTFNBIDEKfCAjZGVmaW5lIEhBVkVfU09VTkQgMQp8ICNkZWZpbmUgSEFWRV9QRVJTT05B TElUWV9BRERSX05PX1JBTkRPTUlaRSAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX1NZU0lORk8g MQp8ICNkZWZpbmUgTElOVVhfU1lTSU5GT19VTklUIDEKfCAjZGVmaW5lIEhBVkVfVEVSTV9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX05FVF9JRl9I IDEKfCAjZGVmaW5lIEhBVkVfSUZBRERSU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lG UkVRX0lGUl9GTEFHUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfSFdBRERS IDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9ORVRNQVNLIDEKfCAjZGVmaW5l IEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9CUk9BREFERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJV Q1RfSUZSRVFfSUZSX0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TQlJLIDEKfCAjZGVmaW5lIEhB VkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVf VkZPUksgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9DQU5PTklD QUxJWkVfRklMRV9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUkVBTFBBVEggMQp8ICNkZWZpbmUg SEFWRV9MU1RBVCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PREFUIDEKfCAjZGVmaW5lIEhBVkVf TENITU9EIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9GRE9QRU5E SVIgMQp8ICNkZWZpbmUgSEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMgMQp8 ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9QU0VMRUNUIDEK fCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJ TksgMQp8ICNkZWZpbmUgSEFWRV9JU0JMQU5LIDEKfCAjZGVmaW5lIEhBVkVfSVNXQ1RZUEUg MQp8ICNkZWZpbmUgSEFWRV9TVFJUT0lNQVggMQp8ICNkZWZpbmUgSEFWRV9TWU1MSU5LIDEK fCAjZGVmaW5lIEhBVkVfTE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVT SVpFIDEKfCAjZGVmaW5lIFNZU1RFTV9NQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9NTUFQIDEK fCAjZGVmaW5lIEhBVkVfUFRIUkVBRCAxCnwgI2RlZmluZSBUSFJFQURTX0VOQUJMRUQgMQp8 ICNkZWZpbmUgSEFWRV9YS0IgMQp8ICNkZWZpbmUgSEFWRV9YS0JSRUZSRVNIS0VZQk9BUkRN QVBQSU5HIDEKfCAjZGVmaW5lIEhBVkVfWEtCRlJFRU5BTUVTIDEKfCAjZGVmaW5lIEhBVkVf WFJNU0VUREFUQUJBU0UgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOUkVTT1VSQ0VTVFJJTkcg MQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOTlVNQkVST0ZTQ1JFRU4gMQp8ICNkZWZpbmUgSEFW RV9YRElTUExBWUNFTExTIDEKfCAjZGVmaW5lIEhBVkVfWERFU1RST1lTVUJXSU5ET1dTIDEK fCAjZGVmaW5lIEhBVkVfWDExUjYgMQp8ICNkZWZpbmUgSEFWRV9YX0kxOE4gMQp8ICNkZWZp bmUgSEFWRV9YSUNDQUxMQkFDS19DQUxMQkFDSyAxCnwgI2RlZmluZSBIQVZFX1gxMVI2X1hJ TSAxCnwgI2RlZmluZSBIQVZFX1JTVkcgMQp8ICNkZWZpbmUgSEFWRV9XRUJQIDEKfCAjZGVm aW5lIEhBVkVfU1FMSVRFMyAxCnwgI2RlZmluZSBIQVZFX1NRTElURTNfTE9BRF9FWFRFTlNJ T04gMQp8ICNkZWZpbmUgSEFWRV9HRVRBRERSSU5GT19BIDEKfCAjZGVmaW5lIEhBVkVfR1RL MyAxCnwgI2RlZmluZSBHREtfRElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAxCnwgI2Rl ZmluZSBHTElCX0RJU0FCTEVfREVQUkVDQVRJT05fV0FSTklOR1MgMQp8ICNkZWZpbmUgVVNF X0dUSyAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19UUklNIDEKfCAjZGVmaW5lIEhBVkVfREJV UyAxCnwgI2RlZmluZSBIQVZFX0RCVVNfV0FUQ0hfR0VUX1VOSVhfRkQgMQp8ICNkZWZpbmUg SEFWRV9EQlVTX1RZUEVfSVNfVkFMSUQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRF X0JVU19OQU1FIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9QQVRIIDEKfCAjZGVm aW5lIEhBVkVfREJVU19WQUxJREFURV9JTlRFUkZBQ0UgMQp8ICNkZWZpbmUgSEFWRV9EQlVT X1ZBTElEQVRFX01FTUJFUiAxCnwgI2RlZmluZSBIQVZFX0dTRVRUSU5HUyAxCnwgI2RlZmlu ZSBIQVZFX0xJQlNFTElOVVggMQp8ICNkZWZpbmUgSEFWRV9HTlVUTFMgMQp8ICNkZWZpbmUg SEFWRV9MSUJTWVNURU1EIDEKfCAjZGVmaW5lIEhBVkVfSlNPTiAxCnwgI2RlZmluZSBIQVZF X0lOT1RJRlkgMQp8ICNkZWZpbmUgVVNFX0ZJTEVfTk9USUZZIDEKfCAjZGVmaW5lIFVTRV9U T09MS0lUX1NDUk9MTF9CQVJTIDEKfCAjZGVmaW5lIEhBVkVfWElNIDEKfCAjZGVmaW5lIFVT RV9YSU0gMQp8ICNkZWZpbmUgSEFWRV9YUkVOREVSIDEKfCAjZGVmaW5lIFVTRV9DQUlST19Y Q0IgMQp8ICNkZWZpbmUgVVNFX0NBSVJPIDEKfCAjZGVmaW5lIEhBVkVfRlJFRVRZUEUgMQp8 ICNkZWZpbmUgSEFWRV9GVF9GQUNFX0dFVENIQVJWQVJJQU5USU5ERVggMQp8ICNkZWZpbmUg SEFWRV9MSUJPVEYgMQp8ICNkZWZpbmUgSEFWRV9PVEZfR0VUX1ZBUklBVElPTl9HTFlQSFMg MQp8ICNkZWZpbmUgSEFWRV9NMTdOX0ZMVCAxCnwgI2RlZmluZSBIQVZFX0hBUkZCVVpaIDEK fCAjZGVmaW5lIFVTRV9YQ0IgMQp8ICNkZWZpbmUgSEFWRV9YUE0gMQp8ICNkZWZpbmUgSEFW RV9KUEVHIDEKfCAjZGVmaW5lIEhBVkVfTENNUzIgMQp8ICNkZWZpbmUgSEFWRV9aTElCIDEK fCAjZGVmaW5lIERZTkFNSUNfTElCX1NVRkZJWCAiLnNvIgp8ICNkZWZpbmUgRFlOQU1JQ19M SUJfU0VDT05EQVJZX1NVRkZJWCAiIgp8ICNkZWZpbmUgSEFWRV9ETEFERFIgMQp8ICNkZWZp bmUgSEFWRV9NT0RVTEVTIDEKfCAjZGVmaW5lIE1PRFVMRVNfU1VGRklYICIuc28iCnwgI2Rl ZmluZSBOQVRJVkVfRUxJU1BfU1VGRklYICIuZWxuIgp8ICNkZWZpbmUgSEFWRV9QTkcgMQp8 ICNkZWZpbmUgSEFWRV9USUZGIDEKfCAjZGVmaW5lIEhBVkVfR0lGIDEKfCAjZGVmaW5lIEhB VkVfR1BNIDEKfCAjZGVmaW5lIEhBVkVfWF9TTSAxCnwgI2RlZmluZSBIQVZFX1hSQU5EUiAx CnwgI2RlZmluZSBIQVZFX1hJTkVSQU1BIDEKfCAjZGVmaW5lIEhBVkVfWEZJWEVTIDEKfCAj ZGVmaW5lIEhBVkVfWElOUFVUMiAxCnwgI2RlZmluZSBIQVZFX1hJU0NST0xMQ0xBU1NJTkZP X1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YSVRPVUNIQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZp bmUgSEFWRV9YSUJBUlJJRVJSRUxFQVNFUE9JTlRFUklORk9fREVWSUNFSUQgMQp8ICNkZWZp bmUgSEFWRV9YSUdFU1RVUkVDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hTWU5D IDEKfCAjZGVmaW5lIEhBVkVfWFNZTkNUUklHR0VSRkVOQ0UgMQp8ICNkZWZpbmUgSEFWRV9Y REJFIDEKfCAjZGVmaW5lIEhBVkVfWENCX1NIQVBFIDEKfCAjZGVmaW5lIEhBVkVfWFNIQVBF IDEKfCAjZGVmaW5lIEhBVkVfWENPTVBPU0lURSAxCnwgI2RlZmluZSBIQVZFX0xJQlhNTDIg MQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TRUNDT01QX0ggMQp8ICNkZWZpbmUgSEFWRV9ERUNM X1NFQ0NPTVBfU0VUX01PREVfRklMVEVSIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01Q X0ZJTFRFUl9GTEFHX1RTWU5DIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfRklMVEVSX0ggMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfU0VUX01PREVfRklMVEVSIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9TRUNDT01QX0ZJTFRFUl9GTEFHX1RTWU5DIDEKfCAjZGVmaW5lIFNJWkVP Rl9MT05HIDgKfCAjZGVmaW5lIEhBVkVfQUNDRVBUNCAxCnwgI2RlZmluZSBIQVZFX0ZDSERJ UiAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUUlVT QUdFIDEKfCAjZGVmaW5lIEhBVkVfR0VUX0NVUlJFTlRfRElSX05BTUUgMQp8ICNkZWZpbmUg SEFWRV9MUkFORDQ4IDEKfCAjZGVmaW5lIEhBVkVfUkFORE9NIDEKfCAjZGVmaW5lIEhBVkVf UklOVCAxCnwgI2RlZmluZSBIQVZFX1RSVU5DIDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEK fCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUg MQp8ICNkZWZpbmUgSEFWRV9ORVdMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSTElNSVQg MQp8ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TSFVURE9XTiAx CnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlNJ R05BTCAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX1NFTkRU TyAxCnwgI2RlZmluZSBIQVZFX1JFQ1ZGUk9NIDEKfCAjZGVmaW5lIEhBVkVfR0VUU09DS05B TUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfRlJFRUlG QUREUlMgMQp8ICNkZWZpbmUgSEFWRV9HQUlfU1RSRVJST1IgMQp8ICNkZWZpbmUgSEFWRV9T WU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRQV0VO VCAxCnwgI2RlZmluZSBIQVZFX0dFVEdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5ER1JFTlQg MQp8ICNkZWZpbmUgSEFWRV9SRU5BTUVBVDIgMQp8ICNkZWZpbmUgSEFWRV9DRk1BS0VSQVcg MQp8ICNkZWZpbmUgSEFWRV9DRlNFVFNQRUVEIDEKfCAjZGVmaW5lIEhBVkVfX19FWEVDVVRB QkxFX1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVfTE9HMiAxCnwgI2RlZmluZSBIQVZFX1BUSFJF QURfU0VUTkFNRV9OUCAxCnwgI2RlZmluZSBIQVZFX0FMSUdORURfQUxMT0MgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX0FMSUdORURfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9NQURW SVNFIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX0ZSQU1FX0FERFJFU1MgMQp8ICNkZWZp bmUgSEFWRV9fX0JVSUxUSU5fVU5XSU5EX0lOSVQgMQp8ICNkZWZpbmUgSEFWRV9GU0VFS08g MQp8ICNkZWZpbmUgSEFWRV9HUkFOVFBUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFQgMQp8ICNk ZWZpbmUgSEFWRV9QT1NJWF9PUEVOUFQgMQp8ICNkZWZpbmUgVEVSTUlORk8gMQp8ICNkZWZp bmUgVEVSTUlORk9fREVGSU5FU19CQyAxCnwgI2RlZmluZSBIQVZFX1RJTUVSRkQgMQp8ICNk ZWZpbmUgSEFWRV9WQUxHUklORF9WQUxHUklORF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNU X1VOSVBBSVJfVU5JQ09ERSAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVkZPUksgMQp8ICNk ZWZpbmUgSEFWRV9XT1JLSU5HX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9TTlBSSU5URiAxCnwg I2RlZmluZSBIQVZFX1NQQVdOX0ggMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTiAxCnwg I2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOX0ZJTEVfQUNUSU9OU19BRERDSERJUl9OUCAxCnwg I2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOQVRUUl9TRVRGTEFHUyAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfUE9TSVhfU1BBV05fU0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVfR0xJQiAxCnwgI2Rl ZmluZSBIQVZFX0xBTkdJTkZPX0NPREVTRVQgMQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5GT19f TkxfUEFQRVJfV0lEVEggMQp8ICNkZWZpbmUgSEFWRV9NQlNUQVRFX1QgMQp8ICNkZWZpbmUg QU1QRVJTQU5EX0ZVTExfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1BUWVMgMQp8ICNkZWZpbmUg SEFWRV9TT0NLRVRTIDEKfCAjZGVmaW5lIE5VTExfREVWSUNFICIvZGV2L251bGwiCnwgI2Rl ZmluZSBTRVBDSEFSICc6Jwp8ICNkZWZpbmUgc3VicHJvY2Vzc2VzIDEKfCAjZGVmaW5lIFVT RVJfRlVMTF9OQU1FIHB3LT5wd19nZWNvcwp8ICNkZWZpbmUgRElSRUNUT1JZX1NFUCAnLycK fCAjZGVmaW5lIElTX0RFVklDRV9TRVAoX2NfKSAwCnwgI2RlZmluZSBJU19ESVJFQ1RPUllf U0VQKF9jXykgKChfY18pID09IERJUkVDVE9SWV9TRVApCnwgI2RlZmluZSBJU19BTllfU0VQ KF9jXykgKElTX0RJUkVDVE9SWV9TRVAgKF9jXykpCnwgI2RlZmluZSBIQVZFX1BST0NGUyAx CnwgI2RlZmluZSBERUZBVUxUX1NPVU5EX0RFVklDRSAiL2Rldi9kc3AiCnwgI2RlZmluZSBJ TlRFUlJVUFRfSU5QVVQgMQp8ICNkZWZpbmUgTkFSUk9XUFJPVE8gMQp8ICNkZWZpbmUgVU5J WDk4X1BUWVMgMQp8ICNkZWZpbmUgUFRZX0lURVJBVElPTiBpbnQgaTsgZm9yIChpID0gMDsg aSA8IDE7IGkrKykKfCAjZGVmaW5lIFBUWV9UVFlfTkFNRV9TUFJJTlRGIHsgY2hhciAqcHR5 bmFtZSA9IDA7IHNpZ3NldF90IGJsb2NrZWQ7IHNpZ2VtcHR5c2V0ICgmYmxvY2tlZCk7IHNp Z2FkZHNldCAoJmJsb2NrZWQsIFNJR0NITEQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19CTE9D SywgJmJsb2NrZWQsIDApOyBpZiAoZ3JhbnRwdCAoZmQpICE9IC0xICYmIHVubG9ja3B0IChm ZCkgIT0gLTEpIHB0eW5hbWUgPSBwdHNuYW1lKGZkKTsgcHRocmVhZF9zaWdtYXNrIChTSUdf VU5CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoIXB0eW5hbWUpIHsgZW1hY3NfY2xvc2UgKGZk KTsgcmV0dXJuIC0xOyB9IHNucHJpbnRmIChwdHlfbmFtZSwgUFRZX05BTUVfU0laRSwgIiVz IiwgcHR5bmFtZSk7IH0KfCAjZGVmaW5lIFBUWV9PUEVOIGRvIHsgZmQgPSBwb3NpeF9vcGVu cHQgKE9fUkRXUiB8IE9fQ0xPRVhFQyB8IE9fTk9DVFRZKTsgaWYgKGZkIDwgMCAmJiBlcnJu byA9PSBFSU5WQUwpIGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX05PQ1RUWSk7IH0g d2hpbGUgKGZhbHNlKQp8ICNkZWZpbmUgUFRZX05BTUVfU1BSSU5URiAvKiovCnwgI2RlZmlu ZSBTSUdOQUxTX1ZJQV9DSEFSQUNURVJTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAx CnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgSEFWRV9fU0VUSk1QIDEK fCAjZGVmaW5lIEhBVkVfU0lHU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU1RBQ0tfT1ZFUkZM T1dfSEFORExJTkcgMQp8ICNkZWZpbmUgVVNHIC8qKi8KfCAjZGVmaW5lIEdOVV9MSU5VWCAv KiovCnwgI2RlZmluZSBTSVpFT0ZfU1BFRURfVCA0CnwgI2RlZmluZSBVU0FCTEVfRklPTlJF QUQgMQp8ICNkZWZpbmUgVVNBQkxFX1NJR0lPIDEKfCAjZGVmaW5lIENPUFlSSUdIVCAiQ29w eXJpZ2h0IChDKSAyMDIzIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiIKfCAjZGVm aW5lIFRFUk1fSEVBREVSICJndGt1dGlsLmgiCnwgI2RlZmluZSBFTUFDU19DT05GSUdVUkFU SU9OICJ4ODZfNjQtcGMtbGludXgtZ251Igp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHX09QVElP TlMgIiIKfCAjZGVmaW5lIEhBVkVfWF9XSU5ET1dTIDEKfCAjZGVmaW5lIEhBVkVfWDExIDEK fCAjZGVmaW5lIEhBVkVfU1RSVUNUX0FUVFJJQlVURV9BTElHTkVEIDEKfCAjZGVmaW5lIEhB VkVfVFlQRU9GIDEKfCAjZGVmaW5lIEhBVkVfU1RBVEVNRU5UX0VYUFJFU1NJT05TIDEKfCAj ZGVmaW5lIE1BTExPQ18wX0lTX05PTk5VTEwgMQp8ICNkZWZpbmUgSEFWRV9TWVNfQUNMX0gg MQp8ICNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfR0VU X0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX1NFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNM X1NFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUkVFIDEKfCAjZGVmaW5lIEhBVkVfQUNM X0ZST01fTU9ERSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX1RFWFQgMQp8ICNkZWZpbmUg SEFWRV9BQ0xfREVMRVRFX0RFRl9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VYVEVOREVE X0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfTElCQUNMX0ggMQp8ICNkZWZpbmUgSEFWRV9B Q0xfRU5UUklFUyAxCnwgI2RlZmluZSBIQVZFX0FDTF9GSVJTVF9FTlRSWSAxCnwgI2RlZmlu ZSBVU0VfQUNMIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFWRV9B TExPQ0EgMQp8ICNkZWZpbmUgTFNUQVRfRk9MTE9XU19TTEFTSEVEX1NZTUxJTksgMQp8ICNk ZWZpbmUgRlVOQ19SRUFMUEFUSF9XT1JLUyAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAx CnwgI2RlZmluZSBIQVZFX0dFVENXRCAxCnwgI2RlZmluZSByZXN0cmljdCBfX3Jlc3RyaWN0 X18KfCAjZGVmaW5lIEhBVkVfRU5WSVJPTl9ERUNMIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9T VFJNT0RFIDAKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRP UFRfTE9OR19PTkxZIDEKfCAjZGVmaW5lIEhBVkVfTE9OR19MT05HX0lOVCAxCnwgI2RlZmlu ZSBIQVZFX1VOU0lHTkVEX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX01F TU1FTSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfTUVNUkNIUiAxCnwgI2RlZmluZSBIQVZFX01J Tk1BWF9JTl9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBUSU1FX1RfSVNfU0lHTkVEIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9BTEFSTSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9UTV9UTV9a T05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fWk9ORSAxCnwgI2RlZmluZSBIQVZFX1RNX0dNVE9G RiAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVF9UIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfVCAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfRkNMT1NFQUxMIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9H RVRXIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRXIDEKfCAjZGVmaW5lIF9fVVNFX01JTkdX X0FOU0lfU1RESU8gMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VDVlQgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX0ZDVlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dDVlQgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX1NUUk5MRU4gMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUlRPSU1BWCAxCnwgI2Rl ZmluZSBfVVNFX1NURF9TVEFUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9FWEVDVlBFIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9DTEVBUkVSUl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfRkVPRl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkVSUk9SX1VOTE9DS0VE IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRkxVU0hfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX0ZHRVRTX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GUFVUQ19VTkxP Q0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRlBVVFNfVU5MT0NLRUQgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX0ZSRUFEX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GV1JJVEVf VU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVENfVU5MT0NLRUQgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX0dFVENIQVJfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BV VENfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BVVENIQVJfVU5MT0NLRUQgMQp8 ICNkZWZpbmUgR0VUR1JPVVBTX1QgZ2lkX3QKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVREVEFC TEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX1BPU0lYIDEKfCAjZGVmaW5lIFBST01P VEVEX01PREVfVCBtb2RlX3QKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19VVElNRVMgMQp8ICNk ZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fRVhQRUNUIDEK fCAjZGVmaW5lIEhBVkVfQllURVNXQVBfSCAxCnwgI2RlZmluZSBHTlVMSUJfQ0FOT05JQ0FM SVpFX0xHUEwgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKfCAjZGVmaW5lIEhBVkVf Q0xPQ0tfR0VUUkVTIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tfR0VUVElNRSAxCnwgI2RlZmlu ZSBIQVZFX0NMT0NLX1NFVFRJTUUgMQp8ICNkZWZpbmUgR05VTElCX0NMT1NFX1NUUkVBTSAx CnwgI2RlZmluZSBIQVZFX0NPUFlfRklMRV9SQU5HRSAxCnwgI2RlZmluZSBIQVZFX1NUUlVD VF9ESVJFTlRfRF9UWVBFIDEKfCAjZGVmaW5lIEhBVkVfRkFDQ0VTU0FUIDEKfCAjZGVmaW5l IEdOVUxJQl9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZET1BFTkRJUiAxCnwg I2RlZmluZSBHTlVMSUJfRkRPUEVORElSIDEKfCAjZGVmaW5lIEdFVFhBVFRSX1dJVEhfUE9T SVhfQUNMUyAxCnwgI2RlZmluZSBGTEVYSUJMRV9BUlJBWV9NRU1CRVIgLyoqLwp8ICNkZWZp bmUgSEFWRV9ERUNMX19fRlBFTkRJTkcgMQp8ICNkZWZpbmUgSEFWRV9GUkVFX1BPU0lYIDEK fCAjZGVmaW5lIEhBVkVfU1lTX01PVU5UX0ggMQp8ICNkZWZpbmUgU1RBVF9TVEFUVkZTIDEK fCAjZGVmaW5lIFNUQVRfU1RBVEZTMl9GUlNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RB VEZTX0ggMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVOUyAxCnwgI2RlZmluZSBIQVZFX0dFVExP QURBVkcgMQp8ICNkZWZpbmUgSEFWRV9HRVRSQU5ET00gMQp8ICNkZWZpbmUgSEFWRV9USU1F U1BFQ19HRVQgMQp8ICNkZWZpbmUgR0VUVElNRU9GREFZX1RJTUVaT05FIHZvaWQKfCAjZGVm aW5lIEhBVkVfX19JTkxJTkUgMQp8ICNkZWZpbmUgSEFWRV9HTVBfSCAxCnwgI2RlZmluZSBI QVZFX01FTU1FTSAxCnwgI2RlZmluZSBIQVZFX01FTVBDUFkgMQp8ICNkZWZpbmUgSEFWRV9N RU1SQ0hSIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgLyogRGVmaW5lIGV4cGxpY2l0 X21lbXNldCB0byBhbiBpbm5vY3VvdXMgdmFyaWFudCwgaW4gY2FzZSA8bGltaXRzLmg+IGRl Y2xhcmVzIGV4cGxpY2l0X21lbXNldC4KfCAgICBGb3IgZXhhbXBsZSwgSFAtVVggMTFpIDxs aW1pdHMuaD4gZGVjbGFyZXMgZ2V0dGltZW9mZGF5LiAgKi8KfCAjZGVmaW5lIGV4cGxpY2l0 X21lbXNldCBpbm5vY3VvdXNfZXhwbGljaXRfbWVtc2V0CnwgCnwgLyogU3lzdGVtIGhlYWRl ciB0byBkZWZpbmUgX19zdHViIG1hY3JvcyBhbmQgaG9wZWZ1bGx5IGZldyBwcm90b3R5cGVz LAp8ICAgIHdoaWNoIGNhbiBjb25mbGljdCB3aXRoIGNoYXIgZXhwbGljaXRfbWVtc2V0ICgp OyBiZWxvdy4gICovCnwgCnwgI2luY2x1ZGUgPGxpbWl0cy5oPgp8ICN1bmRlZiBleHBsaWNp dF9tZW1zZXQKfCAKfCAvKiBPdmVycmlkZSBhbnkgR0NDIGludGVybmFsIHByb3RvdHlwZSB0 byBhdm9pZCBhbiBlcnJvci4KfCAgICBVc2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRj aCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBHQ0MKfCAgICBidWlsdGluIGFuZCB0aGVuIGl0cyBh cmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLwp8ICNpZmRlZiBfX2Nw bHVzcGx1cwp8IGV4dGVybiAiQyIKfCAjZW5kaWYKfCBjaGFyIGV4cGxpY2l0X21lbXNldCAo KTsKfCAvKiBUaGUgR05VIEMgbGlicmFyeSBkZWZpbmVzIHRoaXMgZm9yIGZ1bmN0aW9ucyB3 aGljaCBpdCBpbXBsZW1lbnRzCnwgICAgIHRvIGFsd2F5cyBmYWlsIHdpdGggRU5PU1lTLiAg U29tZSBmdW5jdGlvbnMgYXJlIGFjdHVhbGx5IG5hbWVkCnwgICAgIHNvbWV0aGluZyBzdGFy dGluZyB3aXRoIF9fIGFuZCB0aGUgbm9ybWFsIG5hbWUgaXMgYW4gYWxpYXMuICAqLwp8ICNp ZiBkZWZpbmVkIF9fc3R1Yl9leHBsaWNpdF9tZW1zZXQgfHwgZGVmaW5lZCBfX3N0dWJfX19l eHBsaWNpdF9tZW1zZXQKfCBjaG9rZSBtZQp8ICNlbmRpZgp8IAp8IGludAp8IG1haW4gKHZv aWQpCnwgewp8IHJldHVybiBleHBsaWNpdF9tZW1zZXQgKCk7CnwgICA7CnwgICByZXR1cm4g MDsKfCB9CmNvbmZpZ3VyZTozODc3NDogcmVzdWx0OiBubwpjb25maWd1cmU6Mzg4MTU6IGNo ZWNraW5nIGZvciBta29zdGVtcApjb25maWd1cmU6Mzg4NTI6IGNoZWNraW5nIGZvciBta29z dGVtcApjb25maWd1cmU6Mzg4NTI6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29u ZnRlc3QuYyAgID4mNSAKY29uZmlndXJlOjM4ODUyOiAkPyA9IDAKY29uZmlndXJlOjM4ODUy OiByZXN1bHQ6IHllcwpjb25maWd1cmU6Mzg4Njc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToz ODk4NjogY2hlY2tpbmcgZm9yIGxpYnJhcnkgY29udGFpbmluZyBuYW5vc2xlZXAKY29uZmln dXJlOjM5MDE2OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+ JjUgCmNvbmZpZ3VyZTozOTAxNjogJD8gPSAwCmNvbmZpZ3VyZTozOTAzNjogcmVzdWx0OiBu b25lIHJlcXVpcmVkCmNvbmZpZ3VyZTozOTA1NzogY2hlY2tpbmcgZm9yIHdvcmtpbmcgbmFu b3NsZWVwCmNvbmZpZ3VyZTozOTE0MjogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBj b25mdGVzdC5jICAgPiY1IApjb25maWd1cmU6MzkxNDI6ICQ/ID0gMApjb25maWd1cmU6Mzkx NDI6IC4vY29uZnRlc3QKY29uZmlndXJlOjM5MTQyOiAkPyA9IDYKY29uZmlndXJlOiBwcm9n cmFtIGV4aXRlZCB3aXRoIHN0YXR1cyA2CmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2Fz Ogp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNz Igp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0Vf VkVSU0lPTiAiMzAuMC41MCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1hY3Mg MzAuMC41MCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ251LWVtYWNzQGdu dS5vcmciCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0cHM6Ly93d3cuZ251Lm9yZy9zb2Z0 d2FyZS9lbWFjcy8iCnwgI2RlZmluZSBIQVZFX1BEVU1QRVIgMQp8ICNkZWZpbmUgSEFWRV9T VERJT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJ TkdfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJ TlRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19T VEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1VO SVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfSCAxCnwgI2RlZmluZSBIQVZFX0xJTlVY X0ZTX0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19T WVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9QVFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19S RVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBI QVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUF9IIDEKfCAjZGVmaW5lIEhBVkVfU0FO SVRJWkVSX0xTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQVNB Tl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9DT01NT05fSU5URVJG QUNFX0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBI QVZFX0VYRUNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJT19FWFRfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19WRlNfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX0NERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVm aW5lIEhBVkVfSUVFRTc1NF9IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERCT09MX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfUkFORE9NX0ggMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAj ZGVmaW5lIF9BTExfU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8ICNk ZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0hQVVhfQUxUX1hPUEVOX1NPQ0tFVF9B UEkgMQp8ICNkZWZpbmUgX05FVEJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUgX09QRU5CU0RfU09V UkNFIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBf X1NURENfV0FOVF9JRUNfNjA1NTlfQVRUUklCU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENf V0FOVF9JRUNfNjA1NTlfQkZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182 MDU1OV9ERlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0VYVF9f IDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9GVU5DU19FWFRfXyAxCnwgI2Rl ZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfVFlQRVNfRVhUX18gMQp8ICNkZWZpbmUgX19T VERDX1dBTlRfTElCX0VYVDJfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9NQVRIX1NQRUNf RlVOQ1NfXyAxCnwgI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCnwgI2RlZmluZSBfX0VYVEVO U0lPTlNfXyAxCnwgI2RlZmluZSBHQ0NfTElOVCAxCnwgI2RlZmluZSBTWVNURU1fVFlQRSAi Z251L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJEX0ggMQp8ICNkZWZpbmUg SEFWRV9BTFNBIDEKfCAjZGVmaW5lIEhBVkVfU09VTkQgMQp8ICNkZWZpbmUgSEFWRV9QRVJT T05BTElUWV9BRERSX05PX1JBTkRPTUlaRSAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX1NZU0lO Rk8gMQp8ICNkZWZpbmUgTElOVVhfU1lTSU5GT19VTklUIDEKfCAjZGVmaW5lIEhBVkVfVEVS TV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX05FVF9J Rl9IIDEKfCAjZGVmaW5lIEhBVkVfSUZBRERSU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNU X0lGUkVRX0lGUl9GTEFHUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfSFdB RERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9ORVRNQVNLIDEKfCAjZGVm aW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9CUk9BREFERFIgMQp8ICNkZWZpbmUgSEFWRV9T VFJVQ1RfSUZSRVFfSUZSX0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TQlJLIDEKfCAjZGVmaW5l IEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhB VkVfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9DQU5P TklDQUxJWkVfRklMRV9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUkVBTFBBVEggMQp8ICNkZWZp bmUgSEFWRV9MU1RBVCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PREFUIDEKfCAjZGVmaW5lIEhB VkVfTENITU9EIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9GRE9Q RU5ESVIgMQp8ICNkZWZpbmUgSEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMg MQp8ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9QU0VMRUNU IDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfUkVB RExJTksgMQp8ICNkZWZpbmUgSEFWRV9JU0JMQU5LIDEKfCAjZGVmaW5lIEhBVkVfSVNXQ1RZ UEUgMQp8ICNkZWZpbmUgSEFWRV9TVFJUT0lNQVggMQp8ICNkZWZpbmUgSEFWRV9TWU1MSU5L IDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFC TEVTSVpFIDEKfCAjZGVmaW5lIFNZU1RFTV9NQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9NTUFQ IDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRCAxCnwgI2RlZmluZSBUSFJFQURTX0VOQUJMRUQg MQp8ICNkZWZpbmUgSEFWRV9YS0IgMQp8ICNkZWZpbmUgSEFWRV9YS0JSRUZSRVNIS0VZQk9B UkRNQVBQSU5HIDEKfCAjZGVmaW5lIEhBVkVfWEtCRlJFRU5BTUVTIDEKfCAjZGVmaW5lIEhB VkVfWFJNU0VUREFUQUJBU0UgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOUkVTT1VSQ0VTVFJJ TkcgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOTlVNQkVST0ZTQ1JFRU4gMQp8ICNkZWZpbmUg SEFWRV9YRElTUExBWUNFTExTIDEKfCAjZGVmaW5lIEhBVkVfWERFU1RST1lTVUJXSU5ET1dT IDEKfCAjZGVmaW5lIEhBVkVfWDExUjYgMQp8ICNkZWZpbmUgSEFWRV9YX0kxOE4gMQp8ICNk ZWZpbmUgSEFWRV9YSUNDQUxMQkFDS19DQUxMQkFDSyAxCnwgI2RlZmluZSBIQVZFX1gxMVI2 X1hJTSAxCnwgI2RlZmluZSBIQVZFX1JTVkcgMQp8ICNkZWZpbmUgSEFWRV9XRUJQIDEKfCAj ZGVmaW5lIEhBVkVfU1FMSVRFMyAxCnwgI2RlZmluZSBIQVZFX1NRTElURTNfTE9BRF9FWFRF TlNJT04gMQp8ICNkZWZpbmUgSEFWRV9HRVRBRERSSU5GT19BIDEKfCAjZGVmaW5lIEhBVkVf R1RLMyAxCnwgI2RlZmluZSBHREtfRElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAxCnwg I2RlZmluZSBHTElCX0RJU0FCTEVfREVQUkVDQVRJT05fV0FSTklOR1MgMQp8ICNkZWZpbmUg VVNFX0dUSyAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19UUklNIDEKfCAjZGVmaW5lIEhBVkVf REJVUyAxCnwgI2RlZmluZSBIQVZFX0RCVVNfV0FUQ0hfR0VUX1VOSVhfRkQgMQp8ICNkZWZp bmUgSEFWRV9EQlVTX1RZUEVfSVNfVkFMSUQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElE QVRFX0JVU19OQU1FIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9QQVRIIDEKfCAj ZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9JTlRFUkZBQ0UgMQp8ICNkZWZpbmUgSEFWRV9E QlVTX1ZBTElEQVRFX01FTUJFUiAxCnwgI2RlZmluZSBIQVZFX0dTRVRUSU5HUyAxCnwgI2Rl ZmluZSBIQVZFX0xJQlNFTElOVVggMQp8ICNkZWZpbmUgSEFWRV9HTlVUTFMgMQp8ICNkZWZp bmUgSEFWRV9MSUJTWVNURU1EIDEKfCAjZGVmaW5lIEhBVkVfSlNPTiAxCnwgI2RlZmluZSBI QVZFX0lOT1RJRlkgMQp8ICNkZWZpbmUgVVNFX0ZJTEVfTk9USUZZIDEKfCAjZGVmaW5lIFVT RV9UT09MS0lUX1NDUk9MTF9CQVJTIDEKfCAjZGVmaW5lIEhBVkVfWElNIDEKfCAjZGVmaW5l IFVTRV9YSU0gMQp8ICNkZWZpbmUgSEFWRV9YUkVOREVSIDEKfCAjZGVmaW5lIFVTRV9DQUlS T19YQ0IgMQp8ICNkZWZpbmUgVVNFX0NBSVJPIDEKfCAjZGVmaW5lIEhBVkVfRlJFRVRZUEUg MQp8ICNkZWZpbmUgSEFWRV9GVF9GQUNFX0dFVENIQVJWQVJJQU5USU5ERVggMQp8ICNkZWZp bmUgSEFWRV9MSUJPVEYgMQp8ICNkZWZpbmUgSEFWRV9PVEZfR0VUX1ZBUklBVElPTl9HTFlQ SFMgMQp8ICNkZWZpbmUgSEFWRV9NMTdOX0ZMVCAxCnwgI2RlZmluZSBIQVZFX0hBUkZCVVpa IDEKfCAjZGVmaW5lIFVTRV9YQ0IgMQp8ICNkZWZpbmUgSEFWRV9YUE0gMQp8ICNkZWZpbmUg SEFWRV9KUEVHIDEKfCAjZGVmaW5lIEhBVkVfTENNUzIgMQp8ICNkZWZpbmUgSEFWRV9aTElC IDEKfCAjZGVmaW5lIERZTkFNSUNfTElCX1NVRkZJWCAiLnNvIgp8ICNkZWZpbmUgRFlOQU1J Q19MSUJfU0VDT05EQVJZX1NVRkZJWCAiIgp8ICNkZWZpbmUgSEFWRV9ETEFERFIgMQp8ICNk ZWZpbmUgSEFWRV9NT0RVTEVTIDEKfCAjZGVmaW5lIE1PRFVMRVNfU1VGRklYICIuc28iCnwg I2RlZmluZSBOQVRJVkVfRUxJU1BfU1VGRklYICIuZWxuIgp8ICNkZWZpbmUgSEFWRV9QTkcg MQp8ICNkZWZpbmUgSEFWRV9USUZGIDEKfCAjZGVmaW5lIEhBVkVfR0lGIDEKfCAjZGVmaW5l IEhBVkVfR1BNIDEKfCAjZGVmaW5lIEhBVkVfWF9TTSAxCnwgI2RlZmluZSBIQVZFX1hSQU5E UiAxCnwgI2RlZmluZSBIQVZFX1hJTkVSQU1BIDEKfCAjZGVmaW5lIEhBVkVfWEZJWEVTIDEK fCAjZGVmaW5lIEhBVkVfWElOUFVUMiAxCnwgI2RlZmluZSBIQVZFX1hJU0NST0xMQ0xBU1NJ TkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YSVRPVUNIQ0xBU1NJTkZPX1RZUEUgMQp8ICNk ZWZpbmUgSEFWRV9YSUJBUlJJRVJSRUxFQVNFUE9JTlRFUklORk9fREVWSUNFSUQgMQp8ICNk ZWZpbmUgSEFWRV9YSUdFU1RVUkVDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hT WU5DIDEKfCAjZGVmaW5lIEhBVkVfWFNZTkNUUklHR0VSRkVOQ0UgMQp8ICNkZWZpbmUgSEFW RV9YREJFIDEKfCAjZGVmaW5lIEhBVkVfWENCX1NIQVBFIDEKfCAjZGVmaW5lIEhBVkVfWFNI QVBFIDEKfCAjZGVmaW5lIEhBVkVfWENPTVBPU0lURSAxCnwgI2RlZmluZSBIQVZFX0xJQlhN TDIgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TRUNDT01QX0ggMQp8ICNkZWZpbmUgSEFWRV9E RUNMX1NFQ0NPTVBfU0VUX01PREVfRklMVEVSIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUND T01QX0ZJTFRFUl9GTEFHX1RTWU5DIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfRklMVEVSX0gg MQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfU0VUX01PREVfRklMVEVSIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9TRUNDT01QX0ZJTFRFUl9GTEFHX1RTWU5DIDEKfCAjZGVmaW5lIFNJ WkVPRl9MT05HIDgKfCAjZGVmaW5lIEhBVkVfQUNDRVBUNCAxCnwgI2RlZmluZSBIQVZFX0ZD SERJUiAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VU UlVTQUdFIDEKfCAjZGVmaW5lIEhBVkVfR0VUX0NVUlJFTlRfRElSX05BTUUgMQp8ICNkZWZp bmUgSEFWRV9MUkFORDQ4IDEKfCAjZGVmaW5lIEhBVkVfUkFORE9NIDEKfCAjZGVmaW5lIEhB VkVfUklOVCAxCnwgI2RlZmluZSBIQVZFX1RSVU5DIDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNU IDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRVRMT0NB TEUgMQp8ICNkZWZpbmUgSEFWRV9ORVdMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSTElN SVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TSFVURE9X TiAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NU UlNJR05BTCAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX1NF TkRUTyAxCnwgI2RlZmluZSBIQVZFX1JFQ1ZGUk9NIDEKfCAjZGVmaW5lIEhBVkVfR0VUU09D S05BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfRlJF RUlGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9HQUlfU1RSRVJST1IgMQp8ICNkZWZpbmUgSEFW RV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRQ V0VOVCAxCnwgI2RlZmluZSBIQVZFX0dFVEdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5ER1JF TlQgMQp8ICNkZWZpbmUgSEFWRV9SRU5BTUVBVDIgMQp8ICNkZWZpbmUgSEFWRV9DRk1BS0VS QVcgMQp8ICNkZWZpbmUgSEFWRV9DRlNFVFNQRUVEIDEKfCAjZGVmaW5lIEhBVkVfX19FWEVD VVRBQkxFX1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVfTE9HMiAxCnwgI2RlZmluZSBIQVZFX1BU SFJFQURfU0VUTkFNRV9OUCAxCnwgI2RlZmluZSBIQVZFX0FMSUdORURfQUxMT0MgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX0FMSUdORURfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9N QURWSVNFIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX0ZSQU1FX0FERFJFU1MgMQp8ICNk ZWZpbmUgSEFWRV9fX0JVSUxUSU5fVU5XSU5EX0lOSVQgMQp8ICNkZWZpbmUgSEFWRV9GU0VF S08gMQp8ICNkZWZpbmUgSEFWRV9HUkFOVFBUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFQgMQp8 ICNkZWZpbmUgSEFWRV9QT1NJWF9PUEVOUFQgMQp8ICNkZWZpbmUgVEVSTUlORk8gMQp8ICNk ZWZpbmUgVEVSTUlORk9fREVGSU5FU19CQyAxCnwgI2RlZmluZSBIQVZFX1RJTUVSRkQgMQp8 ICNkZWZpbmUgSEFWRV9WQUxHUklORF9WQUxHUklORF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RS VUNUX1VOSVBBSVJfVU5JQ09ERSAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVkZPUksgMQp8 ICNkZWZpbmUgSEFWRV9XT1JLSU5HX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9TTlBSSU5URiAx CnwgI2RlZmluZSBIQVZFX1NQQVdOX0ggMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTiAx CnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOX0ZJTEVfQUNUSU9OU19BRERDSERJUl9OUCAx CnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOQVRUUl9TRVRGTEFHUyAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfUE9TSVhfU1BBV05fU0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVfR0xJQiAxCnwg I2RlZmluZSBIQVZFX0xBTkdJTkZPX0NPREVTRVQgMQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5G T19fTkxfUEFQRVJfV0lEVEggMQp8ICNkZWZpbmUgSEFWRV9NQlNUQVRFX1QgMQp8ICNkZWZp bmUgQU1QRVJTQU5EX0ZVTExfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1BUWVMgMQp8ICNkZWZp bmUgSEFWRV9TT0NLRVRTIDEKfCAjZGVmaW5lIE5VTExfREVWSUNFICIvZGV2L251bGwiCnwg I2RlZmluZSBTRVBDSEFSICc6Jwp8ICNkZWZpbmUgc3VicHJvY2Vzc2VzIDEKfCAjZGVmaW5l IFVTRVJfRlVMTF9OQU1FIHB3LT5wd19nZWNvcwp8ICNkZWZpbmUgRElSRUNUT1JZX1NFUCAn LycKfCAjZGVmaW5lIElTX0RFVklDRV9TRVAoX2NfKSAwCnwgI2RlZmluZSBJU19ESVJFQ1RP UllfU0VQKF9jXykgKChfY18pID09IERJUkVDVE9SWV9TRVApCnwgI2RlZmluZSBJU19BTllf U0VQKF9jXykgKElTX0RJUkVDVE9SWV9TRVAgKF9jXykpCnwgI2RlZmluZSBIQVZFX1BST0NG UyAxCnwgI2RlZmluZSBERUZBVUxUX1NPVU5EX0RFVklDRSAiL2Rldi9kc3AiCnwgI2RlZmlu ZSBJTlRFUlJVUFRfSU5QVVQgMQp8ICNkZWZpbmUgTkFSUk9XUFJPVE8gMQp8ICNkZWZpbmUg VU5JWDk4X1BUWVMgMQp8ICNkZWZpbmUgUFRZX0lURVJBVElPTiBpbnQgaTsgZm9yIChpID0g MDsgaSA8IDE7IGkrKykKfCAjZGVmaW5lIFBUWV9UVFlfTkFNRV9TUFJJTlRGIHsgY2hhciAq cHR5bmFtZSA9IDA7IHNpZ3NldF90IGJsb2NrZWQ7IHNpZ2VtcHR5c2V0ICgmYmxvY2tlZCk7 IHNpZ2FkZHNldCAoJmJsb2NrZWQsIFNJR0NITEQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19C TE9DSywgJmJsb2NrZWQsIDApOyBpZiAoZ3JhbnRwdCAoZmQpICE9IC0xICYmIHVubG9ja3B0 IChmZCkgIT0gLTEpIHB0eW5hbWUgPSBwdHNuYW1lKGZkKTsgcHRocmVhZF9zaWdtYXNrIChT SUdfVU5CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoIXB0eW5hbWUpIHsgZW1hY3NfY2xvc2Ug KGZkKTsgcmV0dXJuIC0xOyB9IHNucHJpbnRmIChwdHlfbmFtZSwgUFRZX05BTUVfU0laRSwg IiVzIiwgcHR5bmFtZSk7IH0KfCAjZGVmaW5lIFBUWV9PUEVOIGRvIHsgZmQgPSBwb3NpeF9v cGVucHQgKE9fUkRXUiB8IE9fQ0xPRVhFQyB8IE9fTk9DVFRZKTsgaWYgKGZkIDwgMCAmJiBl cnJubyA9PSBFSU5WQUwpIGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX05PQ1RUWSk7 IH0gd2hpbGUgKGZhbHNlKQp8ICNkZWZpbmUgUFRZX05BTUVfU1BSSU5URiAvKiovCnwgI2Rl ZmluZSBTSUdOQUxTX1ZJQV9DSEFSQUNURVJTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JL UyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgSEFWRV9fU0VUSk1Q IDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU1RBQ0tfT1ZF UkZMT1dfSEFORExJTkcgMQp8ICNkZWZpbmUgVVNHIC8qKi8KfCAjZGVmaW5lIEdOVV9MSU5V WCAvKiovCnwgI2RlZmluZSBTSVpFT0ZfU1BFRURfVCA0CnwgI2RlZmluZSBVU0FCTEVfRklP TlJFQUQgMQp8ICNkZWZpbmUgVVNBQkxFX1NJR0lPIDEKfCAjZGVmaW5lIENPUFlSSUdIVCAi Q29weXJpZ2h0IChDKSAyMDIzIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiIKfCAj ZGVmaW5lIFRFUk1fSEVBREVSICJndGt1dGlsLmgiCnwgI2RlZmluZSBFTUFDU19DT05GSUdV UkFUSU9OICJ4ODZfNjQtcGMtbGludXgtZ251Igp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHX09Q VElPTlMgIiIKfCAjZGVmaW5lIEhBVkVfWF9XSU5ET1dTIDEKfCAjZGVmaW5lIEhBVkVfWDEx IDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0FUVFJJQlVURV9BTElHTkVEIDEKfCAjZGVmaW5l IEhBVkVfVFlQRU9GIDEKfCAjZGVmaW5lIEhBVkVfU1RBVEVNRU5UX0VYUFJFU1NJT05TIDEK fCAjZGVmaW5lIE1BTExPQ18wX0lTX05PTk5VTEwgMQp8ICNkZWZpbmUgSEFWRV9TWVNfQUNM X0ggMQp8ICNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xf R0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX1NFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVf QUNMX1NFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUkVFIDEKfCAjZGVmaW5lIEhBVkVf QUNMX0ZST01fTU9ERSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX1RFWFQgMQp8ICNkZWZp bmUgSEFWRV9BQ0xfREVMRVRFX0RFRl9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VYVEVO REVEX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfTElCQUNMX0ggMQp8ICNkZWZpbmUgSEFW RV9BQ0xfRU5UUklFUyAxCnwgI2RlZmluZSBIQVZFX0FDTF9GSVJTVF9FTlRSWSAxCnwgI2Rl ZmluZSBVU0VfQUNMIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFW RV9BTExPQ0EgMQp8ICNkZWZpbmUgTFNUQVRfRk9MTE9XU19TTEFTSEVEX1NZTUxJTksgMQp8 ICNkZWZpbmUgRlVOQ19SRUFMUEFUSF9XT1JLUyAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NB VCAxCnwgI2RlZmluZSBIQVZFX0dFVENXRCAxCnwgI2RlZmluZSByZXN0cmljdCBfX3Jlc3Ry aWN0X18KfCAjZGVmaW5lIEhBVkVfRU5WSVJPTl9ERUNMIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9TVFJNT0RFIDAKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9H RVRPUFRfTE9OR19PTkxZIDEKfCAjZGVmaW5lIEhBVkVfTE9OR19MT05HX0lOVCAxCnwgI2Rl ZmluZSBIQVZFX1VOU0lHTkVEX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X01FTU1FTSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfTUVNUkNIUiAxCnwgI2RlZmluZSBIQVZF X01JTk1BWF9JTl9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBUSU1FX1RfSVNfU0lHTkVEIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9BTEFSTSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9UTV9U TV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fWk9ORSAxCnwgI2RlZmluZSBIQVZFX1RNX0dN VE9GRiAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVF9UIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJf VCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkNMT1NFQUxMIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9HRVRXIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRXIDEKfCAjZGVmaW5lIF9fVVNFX01J TkdXX0FOU0lfU1RESU8gMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VDVlQgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX0ZDVlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dDVlQgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX1NUUk5MRU4gMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUlRPSU1BWCAxCnwg I2RlZmluZSBfVVNFX1NURF9TVEFUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9FWEVDVlBFIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9DTEVBUkVSUl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfRkVPRl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkVSUk9SX1VOTE9D S0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRkxVU0hfVU5MT0NLRUQgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX0ZHRVRTX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GUFVUQ19V TkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRlBVVFNfVU5MT0NLRUQgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX0ZSRUFEX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GV1JJ VEVfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVENfVU5MT0NLRUQgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX0dFVENIQVJfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X1BVVENfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BVVENIQVJfVU5MT0NLRUQg MQp8ICNkZWZpbmUgR0VUR1JPVVBTX1QgZ2lkX3QKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRE VEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX1BPU0lYIDEKfCAjZGVmaW5lIFBS T01PVEVEX01PREVfVCBtb2RlX3QKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19VVElNRVMgMQp8 ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fRVhQRUNU IDEKfCAjZGVmaW5lIEhBVkVfQllURVNXQVBfSCAxCnwgI2RlZmluZSBHTlVMSUJfQ0FOT05J Q0FMSVpFX0xHUEwgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKfCAjZGVmaW5lIEhB VkVfQ0xPQ0tfR0VUUkVTIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tfR0VUVElNRSAxCnwgI2Rl ZmluZSBIQVZFX0NMT0NLX1NFVFRJTUUgMQp8ICNkZWZpbmUgR05VTElCX0NMT1NFX1NUUkVB TSAxCnwgI2RlZmluZSBIQVZFX0NPUFlfRklMRV9SQU5HRSAxCnwgI2RlZmluZSBIQVZFX1NU UlVDVF9ESVJFTlRfRF9UWVBFIDEKfCAjZGVmaW5lIEhBVkVfRkFDQ0VTU0FUIDEKfCAjZGVm aW5lIEdOVUxJQl9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZET1BFTkRJUiAx CnwgI2RlZmluZSBHTlVMSUJfRkRPUEVORElSIDEKfCAjZGVmaW5lIEdFVFhBVFRSX1dJVEhf UE9TSVhfQUNMUyAxCnwgI2RlZmluZSBGTEVYSUJMRV9BUlJBWV9NRU1CRVIgLyoqLwp8ICNk ZWZpbmUgSEFWRV9ERUNMX19fRlBFTkRJTkcgMQp8ICNkZWZpbmUgSEFWRV9GUkVFX1BPU0lY IDEKfCAjZGVmaW5lIEhBVkVfU1lTX01PVU5UX0ggMQp8ICNkZWZpbmUgU1RBVF9TVEFUVkZT IDEKfCAjZGVmaW5lIFNUQVRfU1RBVEZTMl9GUlNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TWVNf U1RBVEZTX0ggMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVOUyAxCnwgI2RlZmluZSBIQVZFX0dF VExPQURBVkcgMQp8ICNkZWZpbmUgSEFWRV9HRVRSQU5ET00gMQp8ICNkZWZpbmUgSEFWRV9U SU1FU1BFQ19HRVQgMQp8ICNkZWZpbmUgR0VUVElNRU9GREFZX1RJTUVaT05FIHZvaWQKfCAj ZGVmaW5lIEhBVkVfX19JTkxJTkUgMQp8ICNkZWZpbmUgSEFWRV9HTVBfSCAxCnwgI2RlZmlu ZSBIQVZFX01FTU1FTSAxCnwgI2RlZmluZSBIQVZFX01FTVBDUFkgMQp8ICNkZWZpbmUgSEFW RV9NRU1SQ0hSIDEKfCAjZGVmaW5lIEhBVkVfTUtPU1RFTVAgMQp8ICNkZWZpbmUgR05VTElC X01LT1NURU1QIDEKfCAjZGVmaW5lIE5FRURfTUtUSU1FX1dPUktJTkcgMQp8IC8qIGVuZCBj b25mZGVmcy5oLiAgKi8KfCAKfCAgICAgICAgICAgI2luY2x1ZGUgPGVycm5vLmg+CnwgICAg ICAgICAgICNpbmNsdWRlIDxsaW1pdHMuaD4KfCAgICAgICAgICAgI2luY2x1ZGUgPHNpZ25h bC5oPgp8ICAgICAgICAgICAjaW5jbHVkZSA8dGltZS5oPgp8ICAgICAgICAgICAjaW5jbHVk ZSA8dW5pc3RkLmg+CnwgICAgICAgICAgICNkZWZpbmUgVFlQRV9TSUdORUQodCkgKCEgKCh0 KSAwIDwgKHQpIC0xKSkKfCAgICAgICAgICAgI2RlZmluZSBUWVBFX01BWElNVU0odCkgICAg ICAgICAgICAgKCh0KSAoISBUWVBFX1NJR05FRCAodCkgICAgICAgICAgICAgICAgICAgPyAo dCkgLTEgICAgICAgICAgICAgICAgICAgOiAoKCgodCkgMSA8PCAoc2l6ZW9mICh0KSAqIENI QVJfQklUIC0gMikpIC0gMSkgKiAyICsgMSkpKQp8IAp8ICAgICAgICAgICAjaWYgSEFWRV9E RUNMX0FMQVJNCnwgICAgICAgICAgIHN0YXRpYyB2b2lkCnwgICAgICAgICAgIGNoZWNrX2Zv cl9TSUdBTFJNIChpbnQgc2lnKQp8ICAgICAgICAgICB7CnwgICAgICAgICAgICAgaWYgKHNp ZyAhPSBTSUdBTFJNKQp8ICAgICAgICAgICAgICAgX2V4aXQgKDEpOwp8ICAgICAgICAgICB9 CnwgICAgICAgICAgICNlbmRpZgp8IAp8ICAgICAgICAgICBpbnQKfCAgICAgICAgICAgbWFp biAoKQp8ICAgICAgICAgICB7CnwgICAgICAgICAgICAgc3RhdGljIHN0cnVjdCB0aW1lc3Bl YyB0c19zbGVlcDsKfCAgICAgICAgICAgICBzdGF0aWMgc3RydWN0IHRpbWVzcGVjIHRzX3Jl bWFpbmluZzsKfCAgICAgICAgICAgICAvKiBUZXN0IGZvciBtYWpvciBwcm9ibGVtcyBmaXJz dC4gICovCnwgICAgICAgICAgICAgaWYgKCEgbmFub3NsZWVwKQp8ICAgICAgICAgICAgICAg cmV0dXJuIDI7CnwgICAgICAgICAgICAgdHNfc2xlZXAudHZfc2VjID0gMDsKfCAgICAgICAg ICAgICB0c19zbGVlcC50dl9uc2VjID0gMTsKfCAgICAgICAgICAgICAjaWYgSEFWRV9ERUNM X0FMQVJNCnwgICAgICAgICAgICAgewp8ICAgICAgICAgICAgICAgc3RhdGljIHN0cnVjdCBz aWdhY3Rpb24gYWN0Owp8ICAgICAgICAgICAgICAgYWN0LnNhX2hhbmRsZXIgPSBjaGVja19m b3JfU0lHQUxSTTsKfCAgICAgICAgICAgICAgIHNpZ2VtcHR5c2V0ICgmYWN0LnNhX21hc2sp Owp8ICAgICAgICAgICAgICAgc2lnYWN0aW9uIChTSUdBTFJNLCAmYWN0LCBOVUxMKTsKfCAg ICAgICAgICAgICAgIGFsYXJtICgxKTsKfCAgICAgICAgICAgICAgIGlmIChuYW5vc2xlZXAg KCZ0c19zbGVlcCwgTlVMTCkgIT0gMCkKfCAgICAgICAgICAgICAgICAgcmV0dXJuIDM7Cnwg ICAgICAgICAgICAgICAvKiBUZXN0IGZvciBhIG1pbm9yIHByb2JsZW06IHRoZSBoYW5kbGlu ZyBvZiBsYXJnZSBhcmd1bWVudHMuICAqLwp8ICAgICAgICAgICAgICAgdHNfc2xlZXAudHZf c2VjID0gVFlQRV9NQVhJTVVNICh0aW1lX3QpOwp8ICAgICAgICAgICAgICAgdHNfc2xlZXAu dHZfbnNlYyA9IDk5OTk5OTk5OTsKfCAgICAgICAgICAgICAgIGFsYXJtICgxKTsKfCAgICAg ICAgICAgICAgIGlmIChuYW5vc2xlZXAgKCZ0c19zbGVlcCwgJnRzX3JlbWFpbmluZykgIT0g LTEpCnwgICAgICAgICAgICAgICAgIHJldHVybiA0Owp8ICAgICAgICAgICAgICAgaWYgKGVy cm5vICE9IEVJTlRSKQp8ICAgICAgICAgICAgICAgICByZXR1cm4gNTsKfCAgICAgICAgICAg ICAgIGlmICh0c19yZW1haW5pbmcudHZfc2VjIDw9IFRZUEVfTUFYSU1VTSAodGltZV90KSAt IDEwKQp8ICAgICAgICAgICAgICAgICByZXR1cm4gNjsKfCAgICAgICAgICAgICB9CnwgICAg ICAgICAgICAgI2Vsc2UgLyogQSBzaW1wbGVyIHRlc3QgZm9yIG5hdGl2ZSBXaW5kb3dzLiAg Ki8KfCAgICAgICAgICAgICBpZiAobmFub3NsZWVwICgmdHNfc2xlZXAsICZ0c19yZW1haW5p bmcpIDwgMCkKfCAgICAgICAgICAgICAgIHJldHVybiAzOwp8ICAgICAgICAgICAgIC8qIFRl c3QgZm9yIDMyLWJpdCBtaW5ndyBidWc6IG5lZ2F0aXZlIG5hbm9zZWNvbmQgdmFsdWVzIGRv IG5vdAp8ICAgICAgICAgICAgICAgIGNhdXNlIGZhaWx1cmUuICAqLwp8ICAgICAgICAgICAg IHRzX3NsZWVwLnR2X3NlYyA9IDE7CnwgICAgICAgICAgICAgdHNfc2xlZXAudHZfbnNlYyA9 IC0xOwp8ICAgICAgICAgICAgIGlmIChuYW5vc2xlZXAgKCZ0c19zbGVlcCwgJnRzX3JlbWFp bmluZykgIT0gLTEpCnwgICAgICAgICAgICAgICByZXR1cm4gNzsKfCAgICAgICAgICAgICAj ZW5kaWYKfCAgICAgICAgICAgICByZXR1cm4gMDsKfCAgICAgICAgICAgfQpjb25maWd1cmU6 MzkxNTg6IHJlc3VsdDogbm8gKG1pc2hhbmRsZXMgbGFyZ2UgYXJndW1lbnRzKQpjb25maWd1 cmU6MzkyMTE6IGNoZWNraW5nIGZvciBzeXMvcHN0YXQuaApjb25maWd1cmU6MzkyMTE6IGdj YyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6NDMxOjEwOiBmYXRh bCBlcnJvcjogc3lzL3BzdGF0Lmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKICA0MzEg fCAjaW5jbHVkZSA8c3lzL3BzdGF0Lmg+CiAgICAgIHwgICAgICAgICAgXn5+fn5+fn5+fn5+ fgpjb21waWxhdGlvbiB0ZXJtaW5hdGVkLgpjb25maWd1cmU6MzkyMTE6ICQ/ID0gMQpjb25m aWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmlu ZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAi ZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMwLjAuNTAiCnwgI2RlZmluZSBQ QUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX0JV R1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwg Imh0dHBzOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgSEFWRV9Q RFVNUEVSIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fSCAxCnwgI2RlZmluZSBIQVZFX1NURExJ Ql9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBF U19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdT X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZ UEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFS X0ggMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9D X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZ X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VU TVBfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9MU0FOX0lOVEVSRkFDRV9IIDEKfCAj ZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0FTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFW RV9TQU5JVElaRVJfQ09NTU9OX0lOVEVSRkFDRV9ERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBI QVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhB VkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5lIEhB VkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVkZTX0ggMQp8ICNkZWZpbmUg SEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19DREVGU19IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX0lFRUU3NTRfSCAxCnwgI2RlZmlu ZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVm aW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JBTkRPTV9IIDEKfCAj ZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmlu ZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5l IF9IUFVYX0FMVF9YT1BFTl9TT0NLRVRfQVBJIDEKfCAjZGVmaW5lIF9ORVRCU0RfU09VUkNF IDEKfCAjZGVmaW5lIF9PUEVOQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVB RF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0FUVFJJQlNf RVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0JGUF9FWFRfXyAxCnwg I2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfREZQX0VYVF9fIDEKfCAjZGVmaW5lIF9f U1REQ19XQU5UX0lFQ182MDU1OV9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNf NjA1NTlfRlVOQ1NfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X1RZ UEVTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0xJQl9FWFQyX18gMQp8ICNkZWZp bmUgX19TVERDX1dBTlRfTUFUSF9TUEVDX0ZVTkNTX18gMQp8ICNkZWZpbmUgX1RBTkRFTV9T T1VSQ0UgMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgR0NDX0xJTlQg MQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAjZGVmaW5lIEhBVkVfU1lT X1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2RlZmluZSBIQVZFX1NP VU5EIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfQUREUl9OT19SQU5ET01JWkUgMQp8 ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZU0lORk9f VU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlU X0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZFX0lGQUREUlNf SCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUg SEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9J RlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJP QURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERSIDEKfCAjZGVm aW5lIEhBVkVfU0JSSyAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5l IEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfRkNI TU9EIDEKfCAjZGVmaW5lIEhBVkVfQ0FOT05JQ0FMSVpFX0ZJTEVfTkFNRSAxCnwgI2RlZmlu ZSBIQVZFX1JFQUxQQVRIIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFW RV9GQ0hNT0RBVCAxCnwgI2RlZmluZSBIQVZFX0xDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0ZD TlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRB VCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZ IDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lH TUFTSyAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfSVNCTEFO SyAxCnwgI2RlZmluZSBIQVZFX0lTV0NUWVBFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFY IDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FMVElNRV9S IDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBTWVNURU1fTUFM TE9DIDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQUQgMQp8 ICNkZWZpbmUgVEhSRUFEU19FTkFCTEVEIDEKfCAjZGVmaW5lIEhBVkVfWEtCIDEKfCAjZGVm aW5lIEhBVkVfWEtCUkVGUkVTSEtFWUJPQVJETUFQUElORyAxCnwgI2RlZmluZSBIQVZFX1hL QkZSRUVOQU1FUyAxCnwgI2RlZmluZSBIQVZFX1hSTVNFVERBVEFCQVNFIDEKfCAjZGVmaW5l IEhBVkVfWFNDUkVFTlJFU09VUkNFU1RSSU5HIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTk5V TUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhBVkVfWERJU1BMQVlDRUxMUyAxCnwgI2RlZmlu ZSBIQVZFX1hERVNUUk9ZU1VCV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gxMVI2IDEKfCAj ZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVmaW5lIEhBVkVfWElDQ0FMTEJBQ0tfQ0FMTEJB Q0sgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9YSU0gMQp8ICNkZWZpbmUgSEFWRV9SU1ZHIDEK fCAjZGVmaW5lIEhBVkVfV0VCUCAxCnwgI2RlZmluZSBIQVZFX1NRTElURTMgMQp8ICNkZWZp bmUgSEFWRV9TUUxJVEUzX0xPQURfRVhURU5TSU9OIDEKfCAjZGVmaW5lIEhBVkVfR0VUQURE UklORk9fQSAxCnwgI2RlZmluZSBIQVZFX0dUSzMgMQp8ICNkZWZpbmUgR0RLX0RJU0FCTEVf REVQUkVDQVRJT05fV0FSTklOR1MgMQp8ICNkZWZpbmUgR0xJQl9ESVNBQkxFX0RFUFJFQ0FU SU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIFVTRV9HVEsgMQp8ICNkZWZpbmUgSEFWRV9NQUxM T0NfVFJJTSAxCnwgI2RlZmluZSBIQVZFX0RCVVMgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1dB VENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19UWVBFX0lTX1ZBTElEIDEK fCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAxCnwgI2RlZmluZSBIQVZF X0RCVVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfSU5U RVJGQUNFIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIgMQp8ICNkZWZp bmUgSEFWRV9HU0VUVElOR1MgMQp8ICNkZWZpbmUgSEFWRV9MSUJTRUxJTlVYIDEKfCAjZGVm aW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhBVkVfTElCU1lTVEVNRCAxCnwgI2RlZmlu ZSBIQVZFX0pTT04gMQp8ICNkZWZpbmUgSEFWRV9JTk9USUZZIDEKfCAjZGVmaW5lIFVTRV9G SUxFX05PVElGWSAxCnwgI2RlZmluZSBVU0VfVE9PTEtJVF9TQ1JPTExfQkFSUyAxCnwgI2Rl ZmluZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBVU0VfWElNIDEKfCAjZGVmaW5lIEhBVkVfWFJF TkRFUiAxCnwgI2RlZmluZSBVU0VfQ0FJUk9fWENCIDEKfCAjZGVmaW5lIFVTRV9DQUlSTyAx CnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAjZGVmaW5lIEhBVkVfRlRfRkFDRV9HRVRD SEFSVkFSSUFOVElOREVYIDEKfCAjZGVmaW5lIEhBVkVfTElCT1RGIDEKfCAjZGVmaW5lIEhB VkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTIDEKfCAjZGVmaW5lIEhBVkVfTTE3Tl9GTFQg MQp8ICNkZWZpbmUgSEFWRV9IQVJGQlVaWiAxCnwgI2RlZmluZSBVU0VfWENCIDEKfCAjZGVm aW5lIEhBVkVfWFBNIDEKfCAjZGVmaW5lIEhBVkVfSlBFRyAxCnwgI2RlZmluZSBIQVZFX0xD TVMyIDEKfCAjZGVmaW5lIEhBVkVfWkxJQiAxCnwgI2RlZmluZSBEWU5BTUlDX0xJQl9TVUZG SVggIi5zbyIKfCAjZGVmaW5lIERZTkFNSUNfTElCX1NFQ09OREFSWV9TVUZGSVggIiIKfCAj ZGVmaW5lIEhBVkVfRExBRERSIDEKfCAjZGVmaW5lIEhBVkVfTU9EVUxFUyAxCnwgI2RlZmlu ZSBNT0RVTEVTX1NVRkZJWCAiLnNvIgp8ICNkZWZpbmUgTkFUSVZFX0VMSVNQX1NVRkZJWCAi LmVsbiIKfCAjZGVmaW5lIEhBVkVfUE5HIDEKfCAjZGVmaW5lIEhBVkVfVElGRiAxCnwgI2Rl ZmluZSBIQVZFX0dJRiAxCnwgI2RlZmluZSBIQVZFX0dQTSAxCnwgI2RlZmluZSBIQVZFX1hf U00gMQp8ICNkZWZpbmUgSEFWRV9YUkFORFIgMQp8ICNkZWZpbmUgSEFWRV9YSU5FUkFNQSAx CnwgI2RlZmluZSBIQVZFX1hGSVhFUyAxCnwgI2RlZmluZSBIQVZFX1hJTlBVVDIgMQp8ICNk ZWZpbmUgSEFWRV9YSVNDUk9MTENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWElU T1VDSENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWElCQVJSSUVSUkVMRUFTRVBP SU5URVJJTkZPX0RFVklDRUlEIDEKfCAjZGVmaW5lIEhBVkVfWElHRVNUVVJFQ0xBU1NJTkZP X1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQyAxCnwgI2RlZmluZSBIQVZFX1hTWU5DVFJJ R0dFUkZFTkNFIDEKfCAjZGVmaW5lIEhBVkVfWERCRSAxCnwgI2RlZmluZSBIQVZFX1hDQl9T SEFQRSAxCnwgI2RlZmluZSBIQVZFX1hTSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hDT01QT1NJ VEUgMQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwyIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU0VD Q09NUF9IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9GSUxURVJfRkxBR19UU1lOQyAxCnwgI2Rl ZmluZSBIQVZFX0xJTlVYX0ZJTFRFUl9IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01Q X1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9GSUxURVJf RkxBR19UU1lOQyAxCnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA4CnwgI2RlZmluZSBIQVZFX0FD Q0VQVDQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hESVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NU TkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJVU0FHRSAxCnwgI2RlZmluZSBIQVZFX0dFVF9D VVJSRU5UX0RJUl9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfTFJBTkQ0OCAxCnwgI2RlZmluZSBI QVZFX1JBTkRPTSAxCnwgI2RlZmluZSBIQVZFX1JJTlQgMQp8ICNkZWZpbmUgSEFWRV9UUlVO QyAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpF IDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfTkVXTE9DQUxF IDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlU IDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJ R01BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJTSUdOQUwgMQp8ICNkZWZpbmUgSEFWRV9TRVRJ VElNRVIgMQp8ICNkZWZpbmUgSEFWRV9TRU5EVE8gMQp8ICNkZWZpbmUgSEFWRV9SRUNWRlJP TSAxCnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tOQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUSUZB RERSUyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfR0FJ X1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFBX RU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUkVO VCAxCnwgI2RlZmluZSBIQVZFX0VOREdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfUkVOQU1FQVQy IDEKfCAjZGVmaW5lIEhBVkVfQ0ZNQUtFUkFXIDEKfCAjZGVmaW5lIEhBVkVfQ0ZTRVRTUEVF RCAxCnwgI2RlZmluZSBIQVZFX19fRVhFQ1VUQUJMRV9TVEFSVCAxCnwgI2RlZmluZSBIQVZF X0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NFVE5BTUVfTlAgMQp8ICNkZWZpbmUg SEFWRV9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTElHTkVEX0FMTE9D IDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfTUFEVklTRSAxCnwgI2RlZmluZSBIQVZFX19fQlVJ TFRJTl9GUkFNRV9BRERSRVNTIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX1VOV0lORF9J TklUIDEKfCAjZGVmaW5lIEhBVkVfRlNFRUtPIDEKfCAjZGVmaW5lIEhBVkVfR1JBTlRQVCAx CnwgI2RlZmluZSBIQVZFX0dFVFBUIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfT1BFTlBUIDEK fCAjZGVmaW5lIFRFUk1JTkZPIDEKfCAjZGVmaW5lIFRFUk1JTkZPX0RFRklORVNfQkMgMQp8 ICNkZWZpbmUgSEFWRV9USU1FUkZEIDEKfCAjZGVmaW5lIEhBVkVfVkFMR1JJTkRfVkFMR1JJ TkRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9VTklQQUlSX1VOSUNPREUgMQp8ICNkZWZp bmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19GT1JLIDEK fCAjZGVmaW5lIEhBVkVfU05QUklOVEYgMQp8ICNkZWZpbmUgSEFWRV9TUEFXTl9IIDEKfCAj ZGVmaW5lIEhBVkVfUE9TSVhfU1BBV04gMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTl9G SUxFX0FDVElPTlNfQUREQ0hESVJfTlAgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTkFU VFJfU0VURkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BPU0lYX1NQQVdOX1NFVFNJRCAx CnwgI2RlZmluZSBIQVZFX0dMSUIgMQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5GT19DT0RFU0VU IDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fX05MX1BBUEVSX1dJRFRIIDEKfCAjZGVmaW5l IEhBVkVfTUJTVEFURV9UIDEKfCAjZGVmaW5lIEFNUEVSU0FORF9GVUxMX05BTUUgMQp8ICNk ZWZpbmUgSEFWRV9QVFlTIDEKfCAjZGVmaW5lIEhBVkVfU09DS0VUUyAxCnwgI2RlZmluZSBO VUxMX0RFVklDRSAiL2Rldi9udWxsIgp8ICNkZWZpbmUgU0VQQ0hBUiAnOicKfCAjZGVmaW5l IHN1YnByb2Nlc3NlcyAxCnwgI2RlZmluZSBVU0VSX0ZVTExfTkFNRSBwdy0+cHdfZ2Vjb3MK fCAjZGVmaW5lIERJUkVDVE9SWV9TRVAgJy8nCnwgI2RlZmluZSBJU19ERVZJQ0VfU0VQKF9j XykgMAp8ICNkZWZpbmUgSVNfRElSRUNUT1JZX1NFUChfY18pICgoX2NfKSA9PSBESVJFQ1RP UllfU0VQKQp8ICNkZWZpbmUgSVNfQU5ZX1NFUChfY18pIChJU19ESVJFQ1RPUllfU0VQIChf Y18pKQp8ICNkZWZpbmUgSEFWRV9QUk9DRlMgMQp8ICNkZWZpbmUgREVGQVVMVF9TT1VORF9E RVZJQ0UgIi9kZXYvZHNwIgp8ICNkZWZpbmUgSU5URVJSVVBUX0lOUFVUIDEKfCAjZGVmaW5l IE5BUlJPV1BST1RPIDEKfCAjZGVmaW5lIFVOSVg5OF9QVFlTIDEKfCAjZGVmaW5lIFBUWV9J VEVSQVRJT04gaW50IGk7IGZvciAoaSA9IDA7IGkgPCAxOyBpKyspCnwgI2RlZmluZSBQVFlf VFRZX05BTUVfU1BSSU5URiB7IGNoYXIgKnB0eW5hbWUgPSAwOyBzaWdzZXRfdCBibG9ja2Vk OyBzaWdlbXB0eXNldCAoJmJsb2NrZWQpOyBzaWdhZGRzZXQgKCZibG9ja2VkLCBTSUdDSExE KTsgcHRocmVhZF9zaWdtYXNrIChTSUdfQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKGdyYW50 cHQgKGZkKSAhPSAtMSAmJiB1bmxvY2twdCAoZmQpICE9IC0xKSBwdHluYW1lID0gcHRzbmFt ZShmZCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX1VOQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYg KCFwdHluYW1lKSB7IGVtYWNzX2Nsb3NlIChmZCk7IHJldHVybiAtMTsgfSBzbnByaW50ZiAo cHR5X25hbWUsIFBUWV9OQU1FX1NJWkUsICIlcyIsIHB0eW5hbWUpOyB9CnwgI2RlZmluZSBQ VFlfT1BFTiBkbyB7IGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX0NMT0VYRUMgfCBP X05PQ1RUWSk7IGlmIChmZCA8IDAgJiYgZXJybm8gPT0gRUlOVkFMKSBmZCA9IHBvc2l4X29w ZW5wdCAoT19SRFdSIHwgT19OT0NUVFkpOyB9IHdoaWxlIChmYWxzZSkKfCAjZGVmaW5lIFBU WV9OQU1FX1NQUklOVEYgLyoqLwp8ICNkZWZpbmUgU0lHTkFMU19WSUFfQ0hBUkFDVEVSUyAx CnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktT IDEKfCAjZGVmaW5lIEhBVkVfX1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVEpNUCAx CnwgI2RlZmluZSBIQVZFX1NUQUNLX09WRVJGTE9XX0hBTkRMSU5HIDEKfCAjZGVmaW5lIFVT RyAvKiovCnwgI2RlZmluZSBHTlVfTElOVVggLyoqLwp8ICNkZWZpbmUgU0laRU9GX1NQRUVE X1QgNAp8ICNkZWZpbmUgVVNBQkxFX0ZJT05SRUFEIDEKfCAjZGVmaW5lIFVTQUJMRV9TSUdJ TyAxCnwgI2RlZmluZSBDT1BZUklHSFQgIkNvcHlyaWdodCAoQykgMjAyMyBGcmVlIFNvZnR3 YXJlIEZvdW5kYXRpb24sIEluYy4iCnwgI2RlZmluZSBURVJNX0hFQURFUiAiZ3RrdXRpbC5o Igp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHVVJBVElPTiAieDg2XzY0LXBjLWxpbnV4LWdudSIK fCAjZGVmaW5lIEVNQUNTX0NPTkZJR19PUFRJT05TICIiCnwgI2RlZmluZSBIQVZFX1hfV0lO RE9XUyAxCnwgI2RlZmluZSBIQVZFX1gxMSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9BVFRS SUJVVEVfQUxJR05FRCAxCnwgI2RlZmluZSBIQVZFX1RZUEVPRiAxCnwgI2RlZmluZSBIQVZF X1NUQVRFTUVOVF9FWFBSRVNTSU9OUyAxCnwgI2RlZmluZSBNQUxMT0NfMF9JU19OT05OVUxM IDEKfCAjZGVmaW5lIEhBVkVfU1lTX0FDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9G SUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9T RVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9B Q0xfRlJFRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX01PREUgMQp8ICNkZWZpbmUgSEFW RV9BQ0xfRlJPTV9URVhUIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0RFTEVURV9ERUZfRklMRSAx CnwgI2RlZmluZSBIQVZFX0FDTF9FWFRFTkRFRF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNM X0xJQkFDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VOVFJJRVMgMQp8ICNkZWZpbmUgSEFW RV9BQ0xfRklSU1RfRU5UUlkgMQp8ICNkZWZpbmUgVVNFX0FDTCAxCnwgI2RlZmluZSBIQVZF X0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIExTVEFUX0ZP TExPV1NfU0xBU0hFRF9TWU1MSU5LIDEKfCAjZGVmaW5lIEZVTkNfUkVBTFBBVEhfV09SS1Mg MQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9HRVRDV0QgMQp8 ICNkZWZpbmUgcmVzdHJpY3QgX19yZXN0cmljdF9fCnwgI2RlZmluZSBIQVZFX0VOVklST05f REVDTCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSTU9ERSAwCnwgI2RlZmluZSBIQVZFX0dF VE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0xPTkdfT05MWSAxCnwgI2RlZmluZSBI QVZFX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUgSEFWRV9VTlNJR05FRF9MT05HX0xPTkdf SU5UIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9NRU1NRU0gMQp8ICNkZWZpbmUgSEFWRV9ERUNM X01FTVJDSFIgMQp8ICNkZWZpbmUgSEFWRV9NSU5NQVhfSU5fU1lTX1BBUkFNX0ggMQp8ICNk ZWZpbmUgVElNRV9UX0lTX1NJR05FRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfQUxBUk0gMQp8 ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVE1fVE1fWk9ORSAxCnwgI2RlZmluZSBIQVZFX1RNX1pP TkUgMQp8ICNkZWZpbmUgSEFWRV9UTV9HTVRPRkYgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRVRf VCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX1QgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZDTE9T RUFMTCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VUVyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xf UFVUVyAxCnwgI2RlZmluZSBfX1VTRV9NSU5HV19BTlNJX1NURElPIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9FQ1ZUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GQ1ZUIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9HQ1ZUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJOTEVOIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9TVFJUT0lNQVggMQp8ICNkZWZpbmUgX1VTRV9TVERfU1RBVCAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfRVhFQ1ZQRSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfQ0xFQVJFUlJf VU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZFT0ZfVU5MT0NLRUQgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX0ZFUlJPUl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkZM VVNIX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GR0VUU19VTkxPQ0tFRCAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfRlBVVENfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X0ZQVVRTX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GUkVBRF9VTkxPQ0tFRCAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfRldSSVRFX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9HRVRDX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRDSEFSX1VOTE9D S0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRDX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9QVVRDSEFSX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEdFVEdST1VQU19UIGdpZF90 CnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZFX01B TExPQ19QT1NJWCAxCnwgI2RlZmluZSBQUk9NT1RFRF9NT0RFX1QgbW9kZV90CnwgI2RlZmlu ZSBIQVZFX1dPUktJTkdfVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVm aW5lIEhBVkVfX19CVUlMVElOX0VYUEVDVCAxCnwgI2RlZmluZSBIQVZFX0JZVEVTV0FQX0gg MQp8ICNkZWZpbmUgR05VTElCX0NBTk9OSUNBTElaRV9MR1BMIDEKfCAjZGVmaW5lIEhBVkVf UkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX0dFVFJFUyAxCnwgI2RlZmluZSBI QVZFX0NMT0NLX0dFVFRJTUUgMQp8ICNkZWZpbmUgSEFWRV9DTE9DS19TRVRUSU1FIDEKfCAj ZGVmaW5lIEdOVUxJQl9DTE9TRV9TVFJFQU0gMQp8ICNkZWZpbmUgSEFWRV9DT1BZX0ZJTEVf UkFOR0UgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfRElSRU5UX0RfVFlQRSAxCnwgI2RlZmlu ZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBHTlVMSUJfRkFDQ0VTU0FUIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgR05VTElCX0ZET1BFTkRJUiAx CnwgI2RlZmluZSBHRVRYQVRUUl9XSVRIX1BPU0lYX0FDTFMgMQp8ICNkZWZpbmUgRkxFWElC TEVfQVJSQVlfTUVNQkVSIC8qKi8KfCAjZGVmaW5lIEhBVkVfREVDTF9fX0ZQRU5ESU5HIDEK fCAjZGVmaW5lIEhBVkVfRlJFRV9QT1NJWCAxCnwgI2RlZmluZSBIQVZFX1NZU19NT1VOVF9I IDEKfCAjZGVmaW5lIFNUQVRfU1RBVFZGUyAxCnwgI2RlZmluZSBTVEFUX1NUQVRGUzJfRlJT SVpFIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRGU19IIDEKfCAjZGVmaW5lIEhBVkVfRlVU SU1FTlMgMQp8ICNkZWZpbmUgSEFWRV9HRVRMT0FEQVZHIDEKfCAjZGVmaW5lIEhBVkVfR0VU UkFORE9NIDEKfCAjZGVmaW5lIEhBVkVfVElNRVNQRUNfR0VUIDEKfCAjZGVmaW5lIEdFVFRJ TUVPRkRBWV9USU1FWk9ORSB2b2lkCnwgI2RlZmluZSBIQVZFX19fSU5MSU5FIDEKfCAjZGVm aW5lIEhBVkVfR01QX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1NRU0gMQp8ICNkZWZpbmUgSEFW RV9NRU1QQ1BZIDEKfCAjZGVmaW5lIEhBVkVfTUVNUkNIUiAxCnwgI2RlZmluZSBIQVZFX01L T1NURU1QIDEKfCAjZGVmaW5lIEdOVUxJQl9NS09TVEVNUCAxCnwgI2RlZmluZSBORUVEX01L VElNRV9XT1JLSU5HIDEKfCAjZGVmaW5lIEhBVkVfQlVHX0JJR19OQU5PU0xFRVAgMQp8IC8q IGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8c3RkZGVmLmg+CnwgI2lmZGVmIEhB VkVfU1RESU9fSAp8ICMgaW5jbHVkZSA8c3RkaW8uaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFW RV9TVERMSUJfSAp8ICMgaW5jbHVkZSA8c3RkbGliLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhB VkVfU1RSSU5HX0gKfCAjIGluY2x1ZGUgPHN0cmluZy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBI QVZFX0lOVFRZUEVTX0gKfCAjIGluY2x1ZGUgPGludHR5cGVzLmg+CnwgI2VuZGlmCnwgI2lm ZGVmIEhBVkVfU1RESU5UX0gKfCAjIGluY2x1ZGUgPHN0ZGludC5oPgp8ICNlbmRpZgp8ICNp ZmRlZiBIQVZFX1NUUklOR1NfSAp8ICMgaW5jbHVkZSA8c3RyaW5ncy5oPgp8ICNlbmRpZgp8 ICNpZmRlZiBIQVZFX1NZU19UWVBFU19ICnwgIyBpbmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAj ZW5kaWYKfCAjaWZkZWYgSEFWRV9TWVNfU1RBVF9ICnwgIyBpbmNsdWRlIDxzeXMvc3RhdC5o Pgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1VOSVNURF9ICnwgIyBpbmNsdWRlIDx1bmlzdGQu aD4KfCAjZW5kaWYKfCAKfCAjaW5jbHVkZSA8c3lzL3BzdGF0Lmg+CmNvbmZpZ3VyZTozOTIx MTogcmVzdWx0OiBubwpjb25maWd1cmU6MzkyMTg6IGNoZWNraW5nIGZvciBzeXMvc3lzbXAu aApjb25maWd1cmU6MzkyMTg6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNv bmZ0ZXN0LmM6NDMxOjEwOiBmYXRhbCBlcnJvcjogc3lzL3N5c21wLmg6IE5vIHN1Y2ggZmls ZSBvciBkaXJlY3RvcnkKICA0MzEgfCAjaW5jbHVkZSA8c3lzL3N5c21wLmg+CiAgICAgIHwg ICAgICAgICAgXn5+fn5+fn5+fn5+fgpjb21waWxhdGlvbiB0ZXJtaW5hdGVkLgpjb25maWd1 cmU6MzkyMTg6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBj b25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVm aW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04g IjMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDMwLjAuNTAi CnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8 ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHBzOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1h Y3MvIgp8ICNkZWZpbmUgSEFWRV9QRFVNUEVSIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fSCAx CnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8 ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8 ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAx CnwgI2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GU19IIDEK fCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19I IDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0Vf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0Rf SCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9M U0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0FTQU5fSU5URVJG QUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQ09NTU9OX0lOVEVSRkFDRV9ERUZT X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf UEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVD SU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfVkZTX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19DREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZF X0lFRUU3NTRfSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1JBTkRPTV9IIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBf QUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9H TlVfU09VUkNFIDEKfCAjZGVmaW5lIF9IUFVYX0FMVF9YT1BFTl9TT0NLRVRfQVBJIDEKfCAj ZGVmaW5lIF9ORVRCU0RfU09VUkNFIDEKfCAjZGVmaW5lIF9PUEVOQlNEX1NPVVJDRSAxCnwg I2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX19TVERDX1dB TlRfSUVDXzYwNTU5X0FUVFJJQlNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVD XzYwNTU5X0JGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfREZQ X0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9FWFRfXyAxCnwgI2Rl ZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRlVOQ1NfRVhUX18gMQp8ICNkZWZpbmUgX19T VERDX1dBTlRfSUVDXzYwNTU5X1RZUEVTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5U X0xJQl9FWFQyX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfTUFUSF9TUEVDX0ZVTkNTX18g MQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18g MQp8ICNkZWZpbmUgR0NDX0xJTlQgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51 eCIKfCAjZGVmaW5lIEhBVkVfU1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxT QSAxCnwgI2RlZmluZSBIQVZFX1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlf QUREUl9OT19SQU5ET01JWkUgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAj ZGVmaW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAxCnwg I2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwg I2RlZmluZSBIQVZFX0lGQUREUlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9J RlJfRkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwg I2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZF X1NUUlVDVF9JRlJFUV9JRlJfQlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lG UkVRX0lGUl9BRERSIDEKfCAjZGVmaW5lIEhBVkVfU0JSSyAxCnwgI2RlZmluZSBIQVZFX0dF VFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JL IDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfQ0FOT05JQ0FMSVpF X0ZJTEVfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1JFQUxQQVRIIDEKfCAjZGVmaW5lIEhBVkVf TFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0RBVCAxCnwgI2RlZmluZSBIQVZFX0xDSE1P RCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEK fCAjZGVmaW5lIEhBVkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVm aW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2Rl ZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEK fCAjZGVmaW5lIEhBVkVfSVNCTEFOSyAxCnwgI2RlZmluZSBIQVZFX0lTV0NUWVBFIDEKfCAj ZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2Rl ZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAx CnwgI2RlZmluZSBTWVNURU1fTUFMTE9DIDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2Rl ZmluZSBIQVZFX1BUSFJFQUQgMQp8ICNkZWZpbmUgVEhSRUFEU19FTkFCTEVEIDEKfCAjZGVm aW5lIEhBVkVfWEtCIDEKfCAjZGVmaW5lIEhBVkVfWEtCUkVGUkVTSEtFWUJPQVJETUFQUElO RyAxCnwgI2RlZmluZSBIQVZFX1hLQkZSRUVOQU1FUyAxCnwgI2RlZmluZSBIQVZFX1hSTVNF VERBVEFCQVNFIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RSSU5HIDEKfCAj ZGVmaW5lIEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhBVkVfWERJ U1BMQVlDRUxMUyAxCnwgI2RlZmluZSBIQVZFX1hERVNUUk9ZU1VCV0lORE9XUyAxCnwgI2Rl ZmluZSBIQVZFX1gxMVI2IDEKfCAjZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVmaW5lIEhB VkVfWElDQ0FMTEJBQ0tfQ0FMTEJBQ0sgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9YSU0gMQp8 ICNkZWZpbmUgSEFWRV9SU1ZHIDEKfCAjZGVmaW5lIEhBVkVfV0VCUCAxCnwgI2RlZmluZSBI QVZFX1NRTElURTMgMQp8ICNkZWZpbmUgSEFWRV9TUUxJVEUzX0xPQURfRVhURU5TSU9OIDEK fCAjZGVmaW5lIEhBVkVfR0VUQUREUklORk9fQSAxCnwgI2RlZmluZSBIQVZFX0dUSzMgMQp8 ICNkZWZpbmUgR0RLX0RJU0FCTEVfREVQUkVDQVRJT05fV0FSTklOR1MgMQp8ICNkZWZpbmUg R0xJQl9ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIFVTRV9HVEsg MQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfVFJJTSAxCnwgI2RlZmluZSBIQVZFX0RCVVMgMQp8 ICNkZWZpbmUgSEFWRV9EQlVTX1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVf REJVU19UWVBFX0lTX1ZBTElEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNf TkFNRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmluZSBI QVZFX0RCVVNfVkFMSURBVEVfSU5URVJGQUNFIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJ REFURV9NRU1CRVIgMQp8ICNkZWZpbmUgSEFWRV9HU0VUVElOR1MgMQp8ICNkZWZpbmUgSEFW RV9MSUJTRUxJTlVYIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhBVkVf TElCU1lTVEVNRCAxCnwgI2RlZmluZSBIQVZFX0pTT04gMQp8ICNkZWZpbmUgSEFWRV9JTk9U SUZZIDEKfCAjZGVmaW5lIFVTRV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBVU0VfVE9PTEtJ VF9TQ1JPTExfQkFSUyAxCnwgI2RlZmluZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBVU0VfWElN IDEKfCAjZGVmaW5lIEhBVkVfWFJFTkRFUiAxCnwgI2RlZmluZSBVU0VfQ0FJUk9fWENCIDEK fCAjZGVmaW5lIFVTRV9DQUlSTyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAjZGVm aW5lIEhBVkVfRlRfRkFDRV9HRVRDSEFSVkFSSUFOVElOREVYIDEKfCAjZGVmaW5lIEhBVkVf TElCT1RGIDEKfCAjZGVmaW5lIEhBVkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTIDEKfCAj ZGVmaW5lIEhBVkVfTTE3Tl9GTFQgMQp8ICNkZWZpbmUgSEFWRV9IQVJGQlVaWiAxCnwgI2Rl ZmluZSBVU0VfWENCIDEKfCAjZGVmaW5lIEhBVkVfWFBNIDEKfCAjZGVmaW5lIEhBVkVfSlBF RyAxCnwgI2RlZmluZSBIQVZFX0xDTVMyIDEKfCAjZGVmaW5lIEhBVkVfWkxJQiAxCnwgI2Rl ZmluZSBEWU5BTUlDX0xJQl9TVUZGSVggIi5zbyIKfCAjZGVmaW5lIERZTkFNSUNfTElCX1NF Q09OREFSWV9TVUZGSVggIiIKfCAjZGVmaW5lIEhBVkVfRExBRERSIDEKfCAjZGVmaW5lIEhB VkVfTU9EVUxFUyAxCnwgI2RlZmluZSBNT0RVTEVTX1NVRkZJWCAiLnNvIgp8ICNkZWZpbmUg TkFUSVZFX0VMSVNQX1NVRkZJWCAiLmVsbiIKfCAjZGVmaW5lIEhBVkVfUE5HIDEKfCAjZGVm aW5lIEhBVkVfVElGRiAxCnwgI2RlZmluZSBIQVZFX0dJRiAxCnwgI2RlZmluZSBIQVZFX0dQ TSAxCnwgI2RlZmluZSBIQVZFX1hfU00gMQp8ICNkZWZpbmUgSEFWRV9YUkFORFIgMQp8ICNk ZWZpbmUgSEFWRV9YSU5FUkFNQSAxCnwgI2RlZmluZSBIQVZFX1hGSVhFUyAxCnwgI2RlZmlu ZSBIQVZFX1hJTlBVVDIgMQp8ICNkZWZpbmUgSEFWRV9YSVNDUk9MTENMQVNTSU5GT19UWVBF IDEKfCAjZGVmaW5lIEhBVkVfWElUT1VDSENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhB VkVfWElCQVJSSUVSUkVMRUFTRVBPSU5URVJJTkZPX0RFVklDRUlEIDEKfCAjZGVmaW5lIEhB VkVfWElHRVNUVVJFQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQyAxCnwg I2RlZmluZSBIQVZFX1hTWU5DVFJJR0dFUkZFTkNFIDEKfCAjZGVmaW5lIEhBVkVfWERCRSAx CnwgI2RlZmluZSBIQVZFX1hDQl9TSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hTSEFQRSAxCnwg I2RlZmluZSBIQVZFX1hDT01QT1NJVEUgMQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwyIDEKfCAj ZGVmaW5lIEhBVkVfTElOVVhfU0VDQ09NUF9IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUND T01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9GSUxU RVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZJTFRFUl9IIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9TRUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfU0VDQ09NUF9GSUxURVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBTSVpFT0ZfTE9O RyA4CnwgI2RlZmluZSBIQVZFX0FDQ0VQVDQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hESVIgMQp8 ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJVU0FHRSAx CnwgI2RlZmluZSBIQVZFX0dFVF9DVVJSRU5UX0RJUl9OQU1FIDEKfCAjZGVmaW5lIEhBVkVf TFJBTkQ0OCAxCnwgI2RlZmluZSBIQVZFX1JBTkRPTSAxCnwgI2RlZmluZSBIQVZFX1JJTlQg MQp8ICNkZWZpbmUgSEFWRV9UUlVOQyAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2Rl ZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAj ZGVmaW5lIEhBVkVfTkVXTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAj ZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNk ZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJTSUdOQUwg MQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9TRU5EVE8gMQp8 ICNkZWZpbmUgSEFWRV9SRUNWRlJPTSAxCnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tOQU1FIDEK fCAjZGVmaW5lIEhBVkVfR0VUSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVJRkFERFJT IDEKfCAjZGVmaW5lIEhBVkVfR0FJX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAx CnwgI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EUFdFTlQgMQp8 ICNkZWZpbmUgSEFWRV9HRVRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0VOREdSRU5UIDEKfCAj ZGVmaW5lIEhBVkVfUkVOQU1FQVQyIDEKfCAjZGVmaW5lIEhBVkVfQ0ZNQUtFUkFXIDEKfCAj ZGVmaW5lIEhBVkVfQ0ZTRVRTUEVFRCAxCnwgI2RlZmluZSBIQVZFX19fRVhFQ1VUQUJMRV9T VEFSVCAxCnwgI2RlZmluZSBIQVZFX0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NF VE5BTUVfTlAgMQp8ICNkZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfTUFEVklTRSAx CnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9GUkFNRV9BRERSRVNTIDEKfCAjZGVmaW5lIEhB VkVfX19CVUlMVElOX1VOV0lORF9JTklUIDEKfCAjZGVmaW5lIEhBVkVfRlNFRUtPIDEKfCAj ZGVmaW5lIEhBVkVfR1JBTlRQVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBUIDEKfCAjZGVmaW5l IEhBVkVfUE9TSVhfT1BFTlBUIDEKfCAjZGVmaW5lIFRFUk1JTkZPIDEKfCAjZGVmaW5lIFRF Uk1JTkZPX0RFRklORVNfQkMgMQp8ICNkZWZpbmUgSEFWRV9USU1FUkZEIDEKfCAjZGVmaW5l IEhBVkVfVkFMR1JJTkRfVkFMR1JJTkRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9VTklQ QUlSX1VOSUNPREUgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5l IEhBVkVfV09SS0lOR19GT1JLIDEKfCAjZGVmaW5lIEhBVkVfU05QUklOVEYgMQp8ICNkZWZp bmUgSEFWRV9TUEFXTl9IIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV04gMQp8ICNkZWZp bmUgSEFWRV9QT1NJWF9TUEFXTl9GSUxFX0FDVElPTlNfQUREQ0hESVJfTlAgMQp8ICNkZWZp bmUgSEFWRV9QT1NJWF9TUEFXTkFUVFJfU0VURkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X1BPU0lYX1NQQVdOX1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX0dMSUIgMQp8ICNkZWZpbmUg SEFWRV9MQU5HSU5GT19DT0RFU0VUIDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fX05MX1BB UEVSX1dJRFRIIDEKfCAjZGVmaW5lIEhBVkVfTUJTVEFURV9UIDEKfCAjZGVmaW5lIEFNUEVS U0FORF9GVUxMX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9QVFlTIDEKfCAjZGVmaW5lIEhBVkVf U09DS0VUUyAxCnwgI2RlZmluZSBOVUxMX0RFVklDRSAiL2Rldi9udWxsIgp8ICNkZWZpbmUg U0VQQ0hBUiAnOicKfCAjZGVmaW5lIHN1YnByb2Nlc3NlcyAxCnwgI2RlZmluZSBVU0VSX0ZV TExfTkFNRSBwdy0+cHdfZ2Vjb3MKfCAjZGVmaW5lIERJUkVDVE9SWV9TRVAgJy8nCnwgI2Rl ZmluZSBJU19ERVZJQ0VfU0VQKF9jXykgMAp8ICNkZWZpbmUgSVNfRElSRUNUT1JZX1NFUChf Y18pICgoX2NfKSA9PSBESVJFQ1RPUllfU0VQKQp8ICNkZWZpbmUgSVNfQU5ZX1NFUChfY18p IChJU19ESVJFQ1RPUllfU0VQIChfY18pKQp8ICNkZWZpbmUgSEFWRV9QUk9DRlMgMQp8ICNk ZWZpbmUgREVGQVVMVF9TT1VORF9ERVZJQ0UgIi9kZXYvZHNwIgp8ICNkZWZpbmUgSU5URVJS VVBUX0lOUFVUIDEKfCAjZGVmaW5lIE5BUlJPV1BST1RPIDEKfCAjZGVmaW5lIFVOSVg5OF9Q VFlTIDEKfCAjZGVmaW5lIFBUWV9JVEVSQVRJT04gaW50IGk7IGZvciAoaSA9IDA7IGkgPCAx OyBpKyspCnwgI2RlZmluZSBQVFlfVFRZX05BTUVfU1BSSU5URiB7IGNoYXIgKnB0eW5hbWUg PSAwOyBzaWdzZXRfdCBibG9ja2VkOyBzaWdlbXB0eXNldCAoJmJsb2NrZWQpOyBzaWdhZGRz ZXQgKCZibG9ja2VkLCBTSUdDSExEKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfQkxPQ0ssICZi bG9ja2VkLCAwKTsgaWYgKGdyYW50cHQgKGZkKSAhPSAtMSAmJiB1bmxvY2twdCAoZmQpICE9 IC0xKSBwdHluYW1lID0gcHRzbmFtZShmZCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX1VOQkxP Q0ssICZibG9ja2VkLCAwKTsgaWYgKCFwdHluYW1lKSB7IGVtYWNzX2Nsb3NlIChmZCk7IHJl dHVybiAtMTsgfSBzbnByaW50ZiAocHR5X25hbWUsIFBUWV9OQU1FX1NJWkUsICIlcyIsIHB0 eW5hbWUpOyB9CnwgI2RlZmluZSBQVFlfT1BFTiBkbyB7IGZkID0gcG9zaXhfb3BlbnB0IChP X1JEV1IgfCBPX0NMT0VYRUMgfCBPX05PQ1RUWSk7IGlmIChmZCA8IDAgJiYgZXJybm8gPT0g RUlOVkFMKSBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19OT0NUVFkpOyB9IHdoaWxl IChmYWxzZSkKfCAjZGVmaW5lIFBUWV9OQU1FX1NQUklOVEYgLyoqLwp8ICNkZWZpbmUgU0lH TkFMU19WSUFfQ0hBUkFDVEVSUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNk ZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfX1NFVEpNUCAxCnwgI2Rl ZmluZSBIQVZFX1NJR1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NUQUNLX09WRVJGTE9XX0hB TkRMSU5HIDEKfCAjZGVmaW5lIFVTRyAvKiovCnwgI2RlZmluZSBHTlVfTElOVVggLyoqLwp8 ICNkZWZpbmUgU0laRU9GX1NQRUVEX1QgNAp8ICNkZWZpbmUgVVNBQkxFX0ZJT05SRUFEIDEK fCAjZGVmaW5lIFVTQUJMRV9TSUdJTyAxCnwgI2RlZmluZSBDT1BZUklHSFQgIkNvcHlyaWdo dCAoQykgMjAyMyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4iCnwgI2RlZmluZSBU RVJNX0hFQURFUiAiZ3RrdXRpbC5oIgp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHVVJBVElPTiAi eDg2XzY0LXBjLWxpbnV4LWdudSIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR19PUFRJT05TICIi CnwgI2RlZmluZSBIQVZFX1hfV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gxMSAxCnwgI2Rl ZmluZSBIQVZFX1NUUlVDVF9BVFRSSUJVVEVfQUxJR05FRCAxCnwgI2RlZmluZSBIQVZFX1RZ UEVPRiAxCnwgI2RlZmluZSBIQVZFX1NUQVRFTUVOVF9FWFBSRVNTSU9OUyAxCnwgI2RlZmlu ZSBNQUxMT0NfMF9JU19OT05OVUxMIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0FDTF9IIDEKfCAj ZGVmaW5lIEhBVkVfQUNMX0dFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GRCAx CnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRf RkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJFRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9N X01PREUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9URVhUIDEKfCAjZGVmaW5lIEhBVkVf QUNMX0RFTEVURV9ERUZfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9FWFRFTkRFRF9GSUxF IDEKfCAjZGVmaW5lIEhBVkVfQUNMX0xJQkFDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VO VFJJRVMgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRklSU1RfRU5UUlkgMQp8ICNkZWZpbmUgVVNF X0FDTCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NB IDEKfCAjZGVmaW5lIExTVEFUX0ZPTExPV1NfU0xBU0hFRF9TWU1MSU5LIDEKfCAjZGVmaW5l IEZVTkNfUkVBTFBBVEhfV09SS1MgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNk ZWZpbmUgSEFWRV9HRVRDV0QgMQp8ICNkZWZpbmUgcmVzdHJpY3QgX19yZXN0cmljdF9fCnwg I2RlZmluZSBIQVZFX0VOVklST05fREVDTCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSTU9E RSAwCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0xP TkdfT05MWSAxCnwgI2RlZmluZSBIQVZFX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUgSEFW RV9VTlNJR05FRF9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9NRU1NRU0g MQp8ICNkZWZpbmUgSEFWRV9ERUNMX01FTVJDSFIgMQp8ICNkZWZpbmUgSEFWRV9NSU5NQVhf SU5fU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgVElNRV9UX0lTX1NJR05FRCAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfQUxBUk0gMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVE1fVE1fWk9ORSAx CnwgI2RlZmluZSBIQVZFX1RNX1pPTkUgMQp8ICNkZWZpbmUgSEFWRV9UTV9HTVRPRkYgMQp8 ICNkZWZpbmUgSEFWRV9TSUdTRVRfVCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX1QgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX0ZDTE9TRUFMTCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VUVyAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfUFVUVyAxCnwgI2RlZmluZSBfX1VTRV9NSU5HV19BTlNJ X1NURElPIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9FQ1ZUIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9GQ1ZUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HQ1ZUIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9TVFJOTEVOIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJUT0lNQVggMQp8ICNkZWZpbmUg X1VTRV9TVERfU1RBVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRVhFQ1ZQRSAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfQ0xFQVJFUlJfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZF T0ZfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZFUlJPUl9VTkxPQ0tFRCAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfRkZMVVNIX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9GR0VUU19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRlBVVENfVU5MT0NLRUQg MQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZQVVRTX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9GUkVBRF9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRldSSVRFX1VOTE9D S0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRDX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9HRVRDSEFSX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRDX1VO TE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRDSEFSX1VOTE9DS0VEIDEKfCAjZGVm aW5lIEdFVEdST1VQU19UIGdpZF90CnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VURFRBQkxFU0la RSAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19QT1NJWCAxCnwgI2RlZmluZSBQUk9NT1RFRF9N T0RFX1QgbW9kZV90CnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVVRJTUVTIDEKfCAjZGVmaW5l IEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX0VYUEVDVCAxCnwgI2Rl ZmluZSBIQVZFX0JZVEVTV0FQX0ggMQp8ICNkZWZpbmUgR05VTElCX0NBTk9OSUNBTElaRV9M R1BMIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZFX0NMT0NL X0dFVFJFUyAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX0dFVFRJTUUgMQp8ICNkZWZpbmUgSEFW RV9DTE9DS19TRVRUSU1FIDEKfCAjZGVmaW5lIEdOVUxJQl9DTE9TRV9TVFJFQU0gMQp8ICNk ZWZpbmUgSEFWRV9DT1BZX0ZJTEVfUkFOR0UgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfRElS RU5UX0RfVFlQRSAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBHTlVM SUJfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRE9QRU5ESVIgMQp8ICNkZWZp bmUgR05VTElCX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBHRVRYQVRUUl9XSVRIX1BPU0lYX0FD TFMgMQp8ICNkZWZpbmUgRkxFWElCTEVfQVJSQVlfTUVNQkVSIC8qKi8KfCAjZGVmaW5lIEhB VkVfREVDTF9fX0ZQRU5ESU5HIDEKfCAjZGVmaW5lIEhBVkVfRlJFRV9QT1NJWCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19NT1VOVF9IIDEKfCAjZGVmaW5lIFNUQVRfU1RBVFZGUyAxCnwgI2Rl ZmluZSBTVEFUX1NUQVRGUzJfRlJTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRGU19I IDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FTlMgMQp8ICNkZWZpbmUgSEFWRV9HRVRMT0FEQVZH IDEKfCAjZGVmaW5lIEhBVkVfR0VUUkFORE9NIDEKfCAjZGVmaW5lIEhBVkVfVElNRVNQRUNf R0VUIDEKfCAjZGVmaW5lIEdFVFRJTUVPRkRBWV9USU1FWk9ORSB2b2lkCnwgI2RlZmluZSBI QVZFX19fSU5MSU5FIDEKfCAjZGVmaW5lIEhBVkVfR01QX0ggMQp8ICNkZWZpbmUgSEFWRV9N RU1NRU0gMQp8ICNkZWZpbmUgSEFWRV9NRU1QQ1BZIDEKfCAjZGVmaW5lIEhBVkVfTUVNUkNI UiAxCnwgI2RlZmluZSBIQVZFX01LT1NURU1QIDEKfCAjZGVmaW5lIEdOVUxJQl9NS09TVEVN UCAxCnwgI2RlZmluZSBORUVEX01LVElNRV9XT1JLSU5HIDEKfCAjZGVmaW5lIEhBVkVfQlVH X0JJR19OQU5PU0xFRVAgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8 c3RkZGVmLmg+CnwgI2lmZGVmIEhBVkVfU1RESU9fSAp8ICMgaW5jbHVkZSA8c3RkaW8uaD4K fCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVERMSUJfSAp8ICMgaW5jbHVkZSA8c3RkbGliLmg+ CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RSSU5HX0gKfCAjIGluY2x1ZGUgPHN0cmluZy5o Pgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX0lOVFRZUEVTX0gKfCAjIGluY2x1ZGUgPGludHR5 cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RESU5UX0gKfCAjIGluY2x1ZGUgPHN0 ZGludC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR1NfSAp8ICMgaW5jbHVkZSA8 c3RyaW5ncy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NZU19UWVBFU19ICnwgIyBpbmNs dWRlIDxzeXMvdHlwZXMuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TWVNfU1RBVF9ICnwg IyBpbmNsdWRlIDxzeXMvc3RhdC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1VOSVNURF9I CnwgIyBpbmNsdWRlIDx1bmlzdGQuaD4KfCAjZW5kaWYKfCAKfCAjaW5jbHVkZSA8c3lzL3N5 c21wLmg+CmNvbmZpZ3VyZTozOTIxODogcmVzdWx0OiBubwpjb25maWd1cmU6MzkyMjU6IGNo ZWNraW5nIGZvciBzeXMvcGFyYW0uaApjb25maWd1cmU6MzkyMjU6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZTozOTIzMzogY2hlY2tpbmcgZm9yIHN5cy9zeXNjdGwuaApjb25maWd1cmU6Mzky MzM6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6NDM2OjEw OiBmYXRhbCBlcnJvcjogc3lzL3N5c2N0bC5oOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5 CiAgNDM2IHwgI2luY2x1ZGUgPHN5cy9zeXNjdGwuaD4KICAgICAgfCAgICAgICAgICBefn5+ fn5+fn5+fn5+fgpjb21waWxhdGlvbiB0ZXJtaW5hdGVkLgpjb25maWd1cmU6MzkyMzM6ICQ/ ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICov CnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0Vf VEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMwLjAuNTAiCnwg I2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDMwLjAuNTAiCnwgI2RlZmluZSBQ QUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFD S0FHRV9VUkwgImh0dHBzOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZp bmUgSEFWRV9QRFVNUEVSIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fSCAxCnwgI2RlZmluZSBI QVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFW RV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFW RV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBI QVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GU19IIDEKfCAjZGVmaW5lIEhB VkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5l IEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmlu ZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9MU0FOX0lOVEVSRkFD RV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0FTQU5fSU5URVJGQUNFX0ggMQp8ICNk ZWZpbmUgSEFWRV9TQU5JVElaRVJfQ09NTU9OX0lOVEVSRkFDRV9ERUZTX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwg I2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAj ZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAj ZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVkZTX0ggMQp8 ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19DREVGU19IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX0lFRUU3NTRfSCAx CnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9I IDEKfCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JBTkRP TV9IIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAx CnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEK fCAjZGVmaW5lIF9IUFVYX0FMVF9YT1BFTl9TT0NLRVRfQVBJIDEKfCAjZGVmaW5lIF9ORVRC U0RfU09VUkNFIDEKfCAjZGVmaW5lIF9PUEVOQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfUE9T SVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5 X0FUVFJJQlNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0JGUF9F WFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfREZQX0VYVF9fIDEKfCAj ZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENf V0FOVF9JRUNfNjA1NTlfRlVOQ1NfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVD XzYwNTU5X1RZUEVTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0xJQl9FWFQyX18g MQp8ICNkZWZpbmUgX19TVERDX1dBTlRfTUFUSF9TUEVDX0ZVTkNTX18gMQp8ICNkZWZpbmUg X1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUg R0NDX0xJTlQgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAjZGVmaW5l IEhBVkVfU1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2RlZmlu ZSBIQVZFX1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfQUREUl9OT19SQU5E T01JWkUgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVmaW5lIExJTlVY X1NZU0lORk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAxCnwgI2RlZmluZSBIQVZF X1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZF X0lGQUREUlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8 ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwgI2RlZmluZSBIQVZF X1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJF UV9JRlJfQlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERS IDEKfCAjZGVmaW5lIEhBVkVfU0JSSyAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEK fCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5l IEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfQ0FOT05JQ0FMSVpFX0ZJTEVfTkFNRSAx CnwgI2RlZmluZSBIQVZFX1JFQUxQQVRIIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNk ZWZpbmUgSEFWRV9GQ0hNT0RBVCAxCnwgI2RlZmluZSBIQVZFX0xDSE1PRCAxCnwgI2RlZmlu ZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhB VkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VU VElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1BU SFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhB VkVfSVNCTEFOSyAxCnwgI2RlZmluZSBIQVZFX0lTV0NUWVBFIDEKfCAjZGVmaW5lIEhBVkVf U1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0xP Q0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBT WVNURU1fTUFMTE9DIDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2RlZmluZSBIQVZFX1BU SFJFQUQgMQp8ICNkZWZpbmUgVEhSRUFEU19FTkFCTEVEIDEKfCAjZGVmaW5lIEhBVkVfWEtC IDEKfCAjZGVmaW5lIEhBVkVfWEtCUkVGUkVTSEtFWUJPQVJETUFQUElORyAxCnwgI2RlZmlu ZSBIQVZFX1hLQkZSRUVOQU1FUyAxCnwgI2RlZmluZSBIQVZFX1hSTVNFVERBVEFCQVNFIDEK fCAjZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RSSU5HIDEKfCAjZGVmaW5lIEhBVkVf WFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhBVkVfWERJU1BMQVlDRUxMUyAx CnwgI2RlZmluZSBIQVZFX1hERVNUUk9ZU1VCV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gx MVI2IDEKfCAjZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVmaW5lIEhBVkVfWElDQ0FMTEJB Q0tfQ0FMTEJBQ0sgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9YSU0gMQp8ICNkZWZpbmUgSEFW RV9SU1ZHIDEKfCAjZGVmaW5lIEhBVkVfV0VCUCAxCnwgI2RlZmluZSBIQVZFX1NRTElURTMg MQp8ICNkZWZpbmUgSEFWRV9TUUxJVEUzX0xPQURfRVhURU5TSU9OIDEKfCAjZGVmaW5lIEhB VkVfR0VUQUREUklORk9fQSAxCnwgI2RlZmluZSBIQVZFX0dUSzMgMQp8ICNkZWZpbmUgR0RL X0RJU0FCTEVfREVQUkVDQVRJT05fV0FSTklOR1MgMQp8ICNkZWZpbmUgR0xJQl9ESVNBQkxF X0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIFVTRV9HVEsgMQp8ICNkZWZpbmUg SEFWRV9NQUxMT0NfVFJJTSAxCnwgI2RlZmluZSBIQVZFX0RCVVMgMQp8ICNkZWZpbmUgSEFW RV9EQlVTX1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19UWVBFX0lT X1ZBTElEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAxCnwgI2Rl ZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFM SURBVEVfSU5URVJGQUNFIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIg MQp8ICNkZWZpbmUgSEFWRV9HU0VUVElOR1MgMQp8ICNkZWZpbmUgSEFWRV9MSUJTRUxJTlVY IDEKfCAjZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhBVkVfTElCU1lTVEVNRCAx CnwgI2RlZmluZSBIQVZFX0pTT04gMQp8ICNkZWZpbmUgSEFWRV9JTk9USUZZIDEKfCAjZGVm aW5lIFVTRV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBVU0VfVE9PTEtJVF9TQ1JPTExfQkFS UyAxCnwgI2RlZmluZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBVU0VfWElNIDEKfCAjZGVmaW5l IEhBVkVfWFJFTkRFUiAxCnwgI2RlZmluZSBVU0VfQ0FJUk9fWENCIDEKfCAjZGVmaW5lIFVT RV9DQUlSTyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAjZGVmaW5lIEhBVkVfRlRf RkFDRV9HRVRDSEFSVkFSSUFOVElOREVYIDEKfCAjZGVmaW5lIEhBVkVfTElCT1RGIDEKfCAj ZGVmaW5lIEhBVkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTIDEKfCAjZGVmaW5lIEhBVkVf TTE3Tl9GTFQgMQp8ICNkZWZpbmUgSEFWRV9IQVJGQlVaWiAxCnwgI2RlZmluZSBVU0VfWENC IDEKfCAjZGVmaW5lIEhBVkVfWFBNIDEKfCAjZGVmaW5lIEhBVkVfSlBFRyAxCnwgI2RlZmlu ZSBIQVZFX0xDTVMyIDEKfCAjZGVmaW5lIEhBVkVfWkxJQiAxCnwgI2RlZmluZSBEWU5BTUlD X0xJQl9TVUZGSVggIi5zbyIKfCAjZGVmaW5lIERZTkFNSUNfTElCX1NFQ09OREFSWV9TVUZG SVggIiIKfCAjZGVmaW5lIEhBVkVfRExBRERSIDEKfCAjZGVmaW5lIEhBVkVfTU9EVUxFUyAx CnwgI2RlZmluZSBNT0RVTEVTX1NVRkZJWCAiLnNvIgp8ICNkZWZpbmUgTkFUSVZFX0VMSVNQ X1NVRkZJWCAiLmVsbiIKfCAjZGVmaW5lIEhBVkVfUE5HIDEKfCAjZGVmaW5lIEhBVkVfVElG RiAxCnwgI2RlZmluZSBIQVZFX0dJRiAxCnwgI2RlZmluZSBIQVZFX0dQTSAxCnwgI2RlZmlu ZSBIQVZFX1hfU00gMQp8ICNkZWZpbmUgSEFWRV9YUkFORFIgMQp8ICNkZWZpbmUgSEFWRV9Y SU5FUkFNQSAxCnwgI2RlZmluZSBIQVZFX1hGSVhFUyAxCnwgI2RlZmluZSBIQVZFX1hJTlBV VDIgMQp8ICNkZWZpbmUgSEFWRV9YSVNDUk9MTENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5l IEhBVkVfWElUT1VDSENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWElCQVJSSUVS UkVMRUFTRVBPSU5URVJJTkZPX0RFVklDRUlEIDEKfCAjZGVmaW5lIEhBVkVfWElHRVNUVVJF Q0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQyAxCnwgI2RlZmluZSBIQVZF X1hTWU5DVFJJR0dFUkZFTkNFIDEKfCAjZGVmaW5lIEhBVkVfWERCRSAxCnwgI2RlZmluZSBI QVZFX1hDQl9TSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hTSEFQRSAxCnwgI2RlZmluZSBIQVZF X1hDT01QT1NJVEUgMQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwyIDEKfCAjZGVmaW5lIEhBVkVf TElOVVhfU0VDQ09NUF9IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX1NFVF9NT0RF X0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9GSUxURVJfRkxBR19UU1lO QyAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZJTFRFUl9IIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9TRUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09N UF9GSUxURVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA4CnwgI2RlZmlu ZSBIQVZFX0FDQ0VQVDQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hESVIgMQp8ICNkZWZpbmUgSEFW RV9HRVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJVU0FHRSAxCnwgI2RlZmluZSBI QVZFX0dFVF9DVVJSRU5UX0RJUl9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfTFJBTkQ0OCAxCnwg I2RlZmluZSBIQVZFX1JBTkRPTSAxCnwgI2RlZmluZSBIQVZFX1JJTlQgMQp8ICNkZWZpbmUg SEFWRV9UUlVOQyAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX0dF VFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVf TkVXTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVf U0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9Q VEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJTSUdOQUwgMQp8ICNkZWZpbmUg SEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9TRU5EVE8gMQp8ICNkZWZpbmUgSEFW RV9SRUNWRlJPTSAxCnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tOQU1FIDEKfCAjZGVmaW5lIEhB VkVfR0VUSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVJRkFERFJTIDEKfCAjZGVmaW5l IEhBVkVfR0FJX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAxCnwgI2RlZmluZSBI QVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EUFdFTlQgMQp8ICNkZWZpbmUgSEFW RV9HRVRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0VOREdSRU5UIDEKfCAjZGVmaW5lIEhBVkVf UkVOQU1FQVQyIDEKfCAjZGVmaW5lIEhBVkVfQ0ZNQUtFUkFXIDEKfCAjZGVmaW5lIEhBVkVf Q0ZTRVRTUEVFRCAxCnwgI2RlZmluZSBIQVZFX19fRVhFQ1VUQUJMRV9TVEFSVCAxCnwgI2Rl ZmluZSBIQVZFX0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NFVE5BTUVfTlAgMQp8 ICNkZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTElH TkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfTUFEVklTRSAxCnwgI2RlZmluZSBI QVZFX19fQlVJTFRJTl9GUkFNRV9BRERSRVNTIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElO X1VOV0lORF9JTklUIDEKfCAjZGVmaW5lIEhBVkVfRlNFRUtPIDEKfCAjZGVmaW5lIEhBVkVf R1JBTlRQVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBUIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhf T1BFTlBUIDEKfCAjZGVmaW5lIFRFUk1JTkZPIDEKfCAjZGVmaW5lIFRFUk1JTkZPX0RFRklO RVNfQkMgMQp8ICNkZWZpbmUgSEFWRV9USU1FUkZEIDEKfCAjZGVmaW5lIEhBVkVfVkFMR1JJ TkRfVkFMR1JJTkRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9VTklQQUlSX1VOSUNPREUg MQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lO R19GT1JLIDEKfCAjZGVmaW5lIEhBVkVfU05QUklOVEYgMQp8ICNkZWZpbmUgSEFWRV9TUEFX Tl9IIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV04gMQp8ICNkZWZpbmUgSEFWRV9QT1NJ WF9TUEFXTl9GSUxFX0FDVElPTlNfQUREQ0hESVJfTlAgMQp8ICNkZWZpbmUgSEFWRV9QT1NJ WF9TUEFXTkFUVFJfU0VURkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BPU0lYX1NQQVdO X1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX0dMSUIgMQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5G T19DT0RFU0VUIDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fX05MX1BBUEVSX1dJRFRIIDEK fCAjZGVmaW5lIEhBVkVfTUJTVEFURV9UIDEKfCAjZGVmaW5lIEFNUEVSU0FORF9GVUxMX05B TUUgMQp8ICNkZWZpbmUgSEFWRV9QVFlTIDEKfCAjZGVmaW5lIEhBVkVfU09DS0VUUyAxCnwg I2RlZmluZSBOVUxMX0RFVklDRSAiL2Rldi9udWxsIgp8ICNkZWZpbmUgU0VQQ0hBUiAnOicK fCAjZGVmaW5lIHN1YnByb2Nlc3NlcyAxCnwgI2RlZmluZSBVU0VSX0ZVTExfTkFNRSBwdy0+ cHdfZ2Vjb3MKfCAjZGVmaW5lIERJUkVDVE9SWV9TRVAgJy8nCnwgI2RlZmluZSBJU19ERVZJ Q0VfU0VQKF9jXykgMAp8ICNkZWZpbmUgSVNfRElSRUNUT1JZX1NFUChfY18pICgoX2NfKSA9 PSBESVJFQ1RPUllfU0VQKQp8ICNkZWZpbmUgSVNfQU5ZX1NFUChfY18pIChJU19ESVJFQ1RP UllfU0VQIChfY18pKQp8ICNkZWZpbmUgSEFWRV9QUk9DRlMgMQp8ICNkZWZpbmUgREVGQVVM VF9TT1VORF9ERVZJQ0UgIi9kZXYvZHNwIgp8ICNkZWZpbmUgSU5URVJSVVBUX0lOUFVUIDEK fCAjZGVmaW5lIE5BUlJPV1BST1RPIDEKfCAjZGVmaW5lIFVOSVg5OF9QVFlTIDEKfCAjZGVm aW5lIFBUWV9JVEVSQVRJT04gaW50IGk7IGZvciAoaSA9IDA7IGkgPCAxOyBpKyspCnwgI2Rl ZmluZSBQVFlfVFRZX05BTUVfU1BSSU5URiB7IGNoYXIgKnB0eW5hbWUgPSAwOyBzaWdzZXRf dCBibG9ja2VkOyBzaWdlbXB0eXNldCAoJmJsb2NrZWQpOyBzaWdhZGRzZXQgKCZibG9ja2Vk LCBTSUdDSExEKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfQkxPQ0ssICZibG9ja2VkLCAwKTsg aWYgKGdyYW50cHQgKGZkKSAhPSAtMSAmJiB1bmxvY2twdCAoZmQpICE9IC0xKSBwdHluYW1l ID0gcHRzbmFtZShmZCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX1VOQkxPQ0ssICZibG9ja2Vk LCAwKTsgaWYgKCFwdHluYW1lKSB7IGVtYWNzX2Nsb3NlIChmZCk7IHJldHVybiAtMTsgfSBz bnByaW50ZiAocHR5X25hbWUsIFBUWV9OQU1FX1NJWkUsICIlcyIsIHB0eW5hbWUpOyB9Cnwg I2RlZmluZSBQVFlfT1BFTiBkbyB7IGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX0NM T0VYRUMgfCBPX05PQ1RUWSk7IGlmIChmZCA8IDAgJiYgZXJybm8gPT0gRUlOVkFMKSBmZCA9 IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19OT0NUVFkpOyB9IHdoaWxlIChmYWxzZSkKfCAj ZGVmaW5lIFBUWV9OQU1FX1NQUklOVEYgLyoqLwp8ICNkZWZpbmUgU0lHTkFMU19WSUFfQ0hB UkFDVEVSUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgR0NfU0VU Sk1QX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfX1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NJ R1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NUQUNLX09WRVJGTE9XX0hBTkRMSU5HIDEKfCAj ZGVmaW5lIFVTRyAvKiovCnwgI2RlZmluZSBHTlVfTElOVVggLyoqLwp8ICNkZWZpbmUgU0la RU9GX1NQRUVEX1QgNAp8ICNkZWZpbmUgVVNBQkxFX0ZJT05SRUFEIDEKfCAjZGVmaW5lIFVT QUJMRV9TSUdJTyAxCnwgI2RlZmluZSBDT1BZUklHSFQgIkNvcHlyaWdodCAoQykgMjAyMyBG cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4iCnwgI2RlZmluZSBURVJNX0hFQURFUiAi Z3RrdXRpbC5oIgp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHVVJBVElPTiAieDg2XzY0LXBjLWxp bnV4LWdudSIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR19PUFRJT05TICIiCnwgI2RlZmluZSBI QVZFX1hfV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gxMSAxCnwgI2RlZmluZSBIQVZFX1NU UlVDVF9BVFRSSUJVVEVfQUxJR05FRCAxCnwgI2RlZmluZSBIQVZFX1RZUEVPRiAxCnwgI2Rl ZmluZSBIQVZFX1NUQVRFTUVOVF9FWFBSRVNTSU9OUyAxCnwgI2RlZmluZSBNQUxMT0NfMF9J U19OT05OVUxMIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0FDTF9IIDEKfCAjZGVmaW5lIEhBVkVf QUNMX0dFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GRCAxCnwgI2RlZmluZSBI QVZFX0FDTF9TRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRkQgMQp8ICNkZWZp bmUgSEFWRV9BQ0xfRlJFRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX01PREUgMQp8ICNk ZWZpbmUgSEFWRV9BQ0xfRlJPTV9URVhUIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0RFTEVURV9E RUZfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9FWFRFTkRFRF9GSUxFIDEKfCAjZGVmaW5l IEhBVkVfQUNMX0xJQkFDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VOVFJJRVMgMQp8ICNk ZWZpbmUgSEFWRV9BQ0xfRklSU1RfRU5UUlkgMQp8ICNkZWZpbmUgVVNFX0FDTCAxCnwgI2Rl ZmluZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5l IExTVEFUX0ZPTExPV1NfU0xBU0hFRF9TWU1MSU5LIDEKfCAjZGVmaW5lIEZVTkNfUkVBTFBB VEhfV09SS1MgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9H RVRDV0QgMQp8ICNkZWZpbmUgcmVzdHJpY3QgX19yZXN0cmljdF9fCnwgI2RlZmluZSBIQVZF X0VOVklST05fREVDTCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSTU9ERSAwCnwgI2RlZmlu ZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0xPTkdfT05MWSAxCnwg I2RlZmluZSBIQVZFX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUgSEFWRV9VTlNJR05FRF9M T05HX0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9NRU1NRU0gMQp8ICNkZWZpbmUg SEFWRV9ERUNMX01FTVJDSFIgMQp8ICNkZWZpbmUgSEFWRV9NSU5NQVhfSU5fU1lTX1BBUkFN X0ggMQp8ICNkZWZpbmUgVElNRV9UX0lTX1NJR05FRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xf QUxBUk0gMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVE1fVE1fWk9ORSAxCnwgI2RlZmluZSBI QVZFX1RNX1pPTkUgMQp8ICNkZWZpbmUgSEFWRV9UTV9HTVRPRkYgMQp8ICNkZWZpbmUgSEFW RV9TSUdTRVRfVCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX1QgMQp8ICNkZWZpbmUgSEFWRV9E RUNMX0ZDTE9TRUFMTCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VUVyAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfUFVUVyAxCnwgI2RlZmluZSBfX1VTRV9NSU5HV19BTlNJX1NURElPIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9FQ1ZUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GQ1ZUIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9HQ1ZUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJOTEVOIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9TVFJUT0lNQVggMQp8ICNkZWZpbmUgX1VTRV9TVERfU1RB VCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRVhFQ1ZQRSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xf Q0xFQVJFUlJfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZFT0ZfVU5MT0NLRUQg MQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZFUlJPUl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfRkZMVVNIX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GR0VUU19VTkxP Q0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRlBVVENfVU5MT0NLRUQgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX0ZQVVRTX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GUkVBRF9V TkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRldSSVRFX1VOTE9DS0VEIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9HRVRDX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRD SEFSX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRDX1VOTE9DS0VEIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9QVVRDSEFSX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEdFVEdST1VQ U19UIGdpZF90CnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VURFRBQkxFU0laRSAxCnwgI2RlZmlu ZSBIQVZFX01BTExPQ19QT1NJWCAxCnwgI2RlZmluZSBQUk9NT1RFRF9NT0RFX1QgbW9kZV90 CnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NB IDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX0VYUEVDVCAxCnwgI2RlZmluZSBIQVZFX0JZ VEVTV0FQX0ggMQp8ICNkZWZpbmUgR05VTElCX0NBTk9OSUNBTElaRV9MR1BMIDEKfCAjZGVm aW5lIEhBVkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX0dFVFJFUyAxCnwg I2RlZmluZSBIQVZFX0NMT0NLX0dFVFRJTUUgMQp8ICNkZWZpbmUgSEFWRV9DTE9DS19TRVRU SU1FIDEKfCAjZGVmaW5lIEdOVUxJQl9DTE9TRV9TVFJFQU0gMQp8ICNkZWZpbmUgSEFWRV9D T1BZX0ZJTEVfUkFOR0UgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfRElSRU5UX0RfVFlQRSAx CnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBHTlVMSUJfRkFDQ0VTU0FU IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgR05VTElCX0ZE T1BFTkRJUiAxCnwgI2RlZmluZSBHRVRYQVRUUl9XSVRIX1BPU0lYX0FDTFMgMQp8ICNkZWZp bmUgRkxFWElCTEVfQVJSQVlfTUVNQkVSIC8qKi8KfCAjZGVmaW5lIEhBVkVfREVDTF9fX0ZQ RU5ESU5HIDEKfCAjZGVmaW5lIEhBVkVfRlJFRV9QT1NJWCAxCnwgI2RlZmluZSBIQVZFX1NZ U19NT1VOVF9IIDEKfCAjZGVmaW5lIFNUQVRfU1RBVFZGUyAxCnwgI2RlZmluZSBTVEFUX1NU QVRGUzJfRlJTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRGU19IIDEKfCAjZGVmaW5l IEhBVkVfRlVUSU1FTlMgMQp8ICNkZWZpbmUgSEFWRV9HRVRMT0FEQVZHIDEKfCAjZGVmaW5l IEhBVkVfR0VUUkFORE9NIDEKfCAjZGVmaW5lIEhBVkVfVElNRVNQRUNfR0VUIDEKfCAjZGVm aW5lIEdFVFRJTUVPRkRBWV9USU1FWk9ORSB2b2lkCnwgI2RlZmluZSBIQVZFX19fSU5MSU5F IDEKfCAjZGVmaW5lIEhBVkVfR01QX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1NRU0gMQp8ICNk ZWZpbmUgSEFWRV9NRU1QQ1BZIDEKfCAjZGVmaW5lIEhBVkVfTUVNUkNIUiAxCnwgI2RlZmlu ZSBIQVZFX01LT1NURU1QIDEKfCAjZGVmaW5lIEdOVUxJQl9NS09TVEVNUCAxCnwgI2RlZmlu ZSBORUVEX01LVElNRV9XT1JLSU5HIDEKfCAjZGVmaW5lIEhBVkVfQlVHX0JJR19OQU5PU0xF RVAgMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgLyogZW5kIGNvbmZkZWZzLmgu ICAqLwp8ICNpbmNsdWRlIDxzdGRkZWYuaD4KfCAjaWZkZWYgSEFWRV9TVERJT19ICnwgIyBp bmNsdWRlIDxzdGRpby5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NURExJQl9ICnwgIyBp bmNsdWRlIDxzdGRsaWIuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdfSAp8ICMg aW5jbHVkZSA8c3RyaW5nLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfSU5UVFlQRVNfSAp8 ICMgaW5jbHVkZSA8aW50dHlwZXMuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVERJTlRf SAp8ICMgaW5jbHVkZSA8c3RkaW50Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RSSU5H U19ICnwgIyBpbmNsdWRlIDxzdHJpbmdzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1lT X1RZUEVTX0gKfCAjIGluY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBI QVZFX1NZU19TVEFUX0gKfCAjIGluY2x1ZGUgPHN5cy9zdGF0Lmg+CnwgI2VuZGlmCnwgI2lm ZGVmIEhBVkVfVU5JU1REX0gKfCAjIGluY2x1ZGUgPHVuaXN0ZC5oPgp8ICNlbmRpZgp8ICAg ICAgI2lmIEhBVkVfU1lTX1BBUkFNX0gKfCAgICAgICMgaW5jbHVkZSA8c3lzL3BhcmFtLmg+ CnwgICAgICAjZW5kaWYKfCAKfCAKfCAjaW5jbHVkZSA8c3lzL3N5c2N0bC5oPgpjb25maWd1 cmU6MzkyMzM6IHJlc3VsdDogbm8KY29uZmlndXJlOjM5MjQ2OiBjaGVja2luZyBmb3Igc2No ZWRfZ2V0YWZmaW5pdHlfbnAKY29uZmlndXJlOjM5MjQ2OiBnY2MgLW8gY29uZnRlc3QgLWcz IC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCi91c3IvYmluL2xkOiAvdG1wL2Njb1FMb0Js Lm86IGluIGZ1bmN0aW9uIGBtYWluJzoKL2FwcC9lbWFjcy9jb25mdGVzdC5jOjQzMDogdW5k ZWZpbmVkIHJlZmVyZW5jZSB0byBgc2NoZWRfZ2V0YWZmaW5pdHlfbnAnCmNvbGxlY3QyOiBl cnJvcjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpjb25maWd1cmU6MzkyNDY6ICQ/ID0g MQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwg I2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFS TkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMwLjAuNTAiCnwgI2Rl ZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDMwLjAuNTAiCnwgI2RlZmluZSBQQUNL QUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FH RV9VUkwgImh0dHBzOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUg SEFWRV9QRFVNUEVSIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fSCAxCnwgI2RlZmluZSBIQVZF X1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9J TlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9T VFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZF X1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GU19IIDEKfCAjZGVmaW5lIEhBVkVf TUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhB VkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBI QVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9MU0FOX0lOVEVSRkFDRV9I IDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0FTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZp bmUgSEFWRV9TQU5JVElaRVJfQ09NTU9OX0lOVEVSRkFDRV9ERUZTX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2Rl ZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVm aW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVm aW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVkZTX0ggMQp8ICNk ZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19DREVGU19IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX0lFRUU3NTRfSCAxCnwg I2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEK fCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JBTkRPTV9I IDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwg I2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAj ZGVmaW5lIF9IUFVYX0FMVF9YT1BFTl9TT0NLRVRfQVBJIDEKfCAjZGVmaW5lIF9ORVRCU0Rf U09VUkNFIDEKfCAjZGVmaW5lIF9PUEVOQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfUE9TSVhf UFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0FU VFJJQlNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0JGUF9FWFRf XyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfREZQX0VYVF9fIDEKfCAjZGVm aW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FO VF9JRUNfNjA1NTlfRlVOQ1NfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYw NTU5X1RZUEVTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0xJQl9FWFQyX18gMQp8 ICNkZWZpbmUgX19TVERDX1dBTlRfTUFUSF9TUEVDX0ZVTkNTX18gMQp8ICNkZWZpbmUgX1RB TkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgR0ND X0xJTlQgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAjZGVmaW5lIEhB VkVfU1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2RlZmluZSBI QVZFX1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfQUREUl9OT19SQU5ET01J WkUgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZ U0lORk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZFX0lG QUREUlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8ICNk ZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwgI2RlZmluZSBIQVZFX1NU UlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9J RlJfQlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERSIDEK fCAjZGVmaW5lIEhBVkVfU0JSSyAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAj ZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhB VkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfQ0FOT05JQ0FMSVpFX0ZJTEVfTkFNRSAxCnwg I2RlZmluZSBIQVZFX1JFQUxQQVRIIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZp bmUgSEFWRV9GQ0hNT0RBVCAxCnwgI2RlZmluZSBIQVZFX0xDSE1PRCAxCnwgI2RlZmluZSBI QVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVf RlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElN RU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1BUSFJF QURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVf SVNCTEFOSyAxCnwgI2RlZmluZSBIQVZFX0lTV0NUWVBFIDEKfCAjZGVmaW5lIEhBVkVfU1RS VE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FM VElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBTWVNU RU1fTUFMTE9DIDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2RlZmluZSBIQVZFX1BUSFJF QUQgMQp8ICNkZWZpbmUgVEhSRUFEU19FTkFCTEVEIDEKfCAjZGVmaW5lIEhBVkVfWEtCIDEK fCAjZGVmaW5lIEhBVkVfWEtCUkVGUkVTSEtFWUJPQVJETUFQUElORyAxCnwgI2RlZmluZSBI QVZFX1hLQkZSRUVOQU1FUyAxCnwgI2RlZmluZSBIQVZFX1hSTVNFVERBVEFCQVNFIDEKfCAj ZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RSSU5HIDEKfCAjZGVmaW5lIEhBVkVfWFND UkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhBVkVfWERJU1BMQVlDRUxMUyAxCnwg I2RlZmluZSBIQVZFX1hERVNUUk9ZU1VCV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gxMVI2 IDEKfCAjZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVmaW5lIEhBVkVfWElDQ0FMTEJBQ0tf Q0FMTEJBQ0sgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9YSU0gMQp8ICNkZWZpbmUgSEFWRV9S U1ZHIDEKfCAjZGVmaW5lIEhBVkVfV0VCUCAxCnwgI2RlZmluZSBIQVZFX1NRTElURTMgMQp8 ICNkZWZpbmUgSEFWRV9TUUxJVEUzX0xPQURfRVhURU5TSU9OIDEKfCAjZGVmaW5lIEhBVkVf R0VUQUREUklORk9fQSAxCnwgI2RlZmluZSBIQVZFX0dUSzMgMQp8ICNkZWZpbmUgR0RLX0RJ U0FCTEVfREVQUkVDQVRJT05fV0FSTklOR1MgMQp8ICNkZWZpbmUgR0xJQl9ESVNBQkxFX0RF UFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIFVTRV9HVEsgMQp8ICNkZWZpbmUgSEFW RV9NQUxMT0NfVFJJTSAxCnwgI2RlZmluZSBIQVZFX0RCVVMgMQp8ICNkZWZpbmUgSEFWRV9E QlVTX1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19UWVBFX0lTX1ZB TElEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAxCnwgI2RlZmlu ZSBIQVZFX0RCVVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURB VEVfSU5URVJGQUNFIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIgMQp8 ICNkZWZpbmUgSEFWRV9HU0VUVElOR1MgMQp8ICNkZWZpbmUgSEFWRV9MSUJTRUxJTlVYIDEK fCAjZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhBVkVfTElCU1lTVEVNRCAxCnwg I2RlZmluZSBIQVZFX0pTT04gMQp8ICNkZWZpbmUgSEFWRV9JTk9USUZZIDEKfCAjZGVmaW5l IFVTRV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBVU0VfVE9PTEtJVF9TQ1JPTExfQkFSUyAx CnwgI2RlZmluZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBVU0VfWElNIDEKfCAjZGVmaW5lIEhB VkVfWFJFTkRFUiAxCnwgI2RlZmluZSBVU0VfQ0FJUk9fWENCIDEKfCAjZGVmaW5lIFVTRV9D QUlSTyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAjZGVmaW5lIEhBVkVfRlRfRkFD RV9HRVRDSEFSVkFSSUFOVElOREVYIDEKfCAjZGVmaW5lIEhBVkVfTElCT1RGIDEKfCAjZGVm aW5lIEhBVkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTIDEKfCAjZGVmaW5lIEhBVkVfTTE3 Tl9GTFQgMQp8ICNkZWZpbmUgSEFWRV9IQVJGQlVaWiAxCnwgI2RlZmluZSBVU0VfWENCIDEK fCAjZGVmaW5lIEhBVkVfWFBNIDEKfCAjZGVmaW5lIEhBVkVfSlBFRyAxCnwgI2RlZmluZSBI QVZFX0xDTVMyIDEKfCAjZGVmaW5lIEhBVkVfWkxJQiAxCnwgI2RlZmluZSBEWU5BTUlDX0xJ Ql9TVUZGSVggIi5zbyIKfCAjZGVmaW5lIERZTkFNSUNfTElCX1NFQ09OREFSWV9TVUZGSVgg IiIKfCAjZGVmaW5lIEhBVkVfRExBRERSIDEKfCAjZGVmaW5lIEhBVkVfTU9EVUxFUyAxCnwg I2RlZmluZSBNT0RVTEVTX1NVRkZJWCAiLnNvIgp8ICNkZWZpbmUgTkFUSVZFX0VMSVNQX1NV RkZJWCAiLmVsbiIKfCAjZGVmaW5lIEhBVkVfUE5HIDEKfCAjZGVmaW5lIEhBVkVfVElGRiAx CnwgI2RlZmluZSBIQVZFX0dJRiAxCnwgI2RlZmluZSBIQVZFX0dQTSAxCnwgI2RlZmluZSBI QVZFX1hfU00gMQp8ICNkZWZpbmUgSEFWRV9YUkFORFIgMQp8ICNkZWZpbmUgSEFWRV9YSU5F UkFNQSAxCnwgI2RlZmluZSBIQVZFX1hGSVhFUyAxCnwgI2RlZmluZSBIQVZFX1hJTlBVVDIg MQp8ICNkZWZpbmUgSEFWRV9YSVNDUk9MTENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhB VkVfWElUT1VDSENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWElCQVJSSUVSUkVM RUFTRVBPSU5URVJJTkZPX0RFVklDRUlEIDEKfCAjZGVmaW5lIEhBVkVfWElHRVNUVVJFQ0xB U1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQyAxCnwgI2RlZmluZSBIQVZFX1hT WU5DVFJJR0dFUkZFTkNFIDEKfCAjZGVmaW5lIEhBVkVfWERCRSAxCnwgI2RlZmluZSBIQVZF X1hDQl9TSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hTSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hD T01QT1NJVEUgMQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwyIDEKfCAjZGVmaW5lIEhBVkVfTElO VVhfU0VDQ09NUF9IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX1NFVF9NT0RFX0ZJ TFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9GSUxURVJfRkxBR19UU1lOQyAx CnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZJTFRFUl9IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9T RUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9G SUxURVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA4CnwgI2RlZmluZSBI QVZFX0FDQ0VQVDQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hESVIgMQp8ICNkZWZpbmUgSEFWRV9H RVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJVU0FHRSAxCnwgI2RlZmluZSBIQVZF X0dFVF9DVVJSRU5UX0RJUl9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfTFJBTkQ0OCAxCnwgI2Rl ZmluZSBIQVZFX1JBTkRPTSAxCnwgI2RlZmluZSBIQVZFX1JJTlQgMQp8ICNkZWZpbmUgSEFW RV9UUlVOQyAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBB R0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfTkVX TE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VU UkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9QVEhS RUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJTSUdOQUwgMQp8ICNkZWZpbmUgSEFW RV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9TRU5EVE8gMQp8ICNkZWZpbmUgSEFWRV9S RUNWRlJPTSAxCnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tOQU1FIDEKfCAjZGVmaW5lIEhBVkVf R0VUSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVJRkFERFJTIDEKfCAjZGVmaW5lIEhB VkVfR0FJX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAxCnwgI2RlZmluZSBIQVZF X0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9H RVRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0VOREdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfUkVO QU1FQVQyIDEKfCAjZGVmaW5lIEhBVkVfQ0ZNQUtFUkFXIDEKfCAjZGVmaW5lIEhBVkVfQ0ZT RVRTUEVFRCAxCnwgI2RlZmluZSBIQVZFX19fRVhFQ1VUQUJMRV9TVEFSVCAxCnwgI2RlZmlu ZSBIQVZFX0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NFVE5BTUVfTlAgMQp8ICNk ZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTElHTkVE X0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfTUFEVklTRSAxCnwgI2RlZmluZSBIQVZF X19fQlVJTFRJTl9GUkFNRV9BRERSRVNTIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX1VO V0lORF9JTklUIDEKfCAjZGVmaW5lIEhBVkVfRlNFRUtPIDEKfCAjZGVmaW5lIEhBVkVfR1JB TlRQVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBUIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfT1BF TlBUIDEKfCAjZGVmaW5lIFRFUk1JTkZPIDEKfCAjZGVmaW5lIFRFUk1JTkZPX0RFRklORVNf QkMgMQp8ICNkZWZpbmUgSEFWRV9USU1FUkZEIDEKfCAjZGVmaW5lIEhBVkVfVkFMR1JJTkRf VkFMR1JJTkRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9VTklQQUlSX1VOSUNPREUgMQp8 ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19G T1JLIDEKfCAjZGVmaW5lIEhBVkVfU05QUklOVEYgMQp8ICNkZWZpbmUgSEFWRV9TUEFXTl9I IDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV04gMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9T UEFXTl9GSUxFX0FDVElPTlNfQUREQ0hESVJfTlAgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9T UEFXTkFUVFJfU0VURkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BPU0lYX1NQQVdOX1NF VFNJRCAxCnwgI2RlZmluZSBIQVZFX0dMSUIgMQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5GT19D T0RFU0VUIDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fX05MX1BBUEVSX1dJRFRIIDEKfCAj ZGVmaW5lIEhBVkVfTUJTVEFURV9UIDEKfCAjZGVmaW5lIEFNUEVSU0FORF9GVUxMX05BTUUg MQp8ICNkZWZpbmUgSEFWRV9QVFlTIDEKfCAjZGVmaW5lIEhBVkVfU09DS0VUUyAxCnwgI2Rl ZmluZSBOVUxMX0RFVklDRSAiL2Rldi9udWxsIgp8ICNkZWZpbmUgU0VQQ0hBUiAnOicKfCAj ZGVmaW5lIHN1YnByb2Nlc3NlcyAxCnwgI2RlZmluZSBVU0VSX0ZVTExfTkFNRSBwdy0+cHdf Z2Vjb3MKfCAjZGVmaW5lIERJUkVDVE9SWV9TRVAgJy8nCnwgI2RlZmluZSBJU19ERVZJQ0Vf U0VQKF9jXykgMAp8ICNkZWZpbmUgSVNfRElSRUNUT1JZX1NFUChfY18pICgoX2NfKSA9PSBE SVJFQ1RPUllfU0VQKQp8ICNkZWZpbmUgSVNfQU5ZX1NFUChfY18pIChJU19ESVJFQ1RPUllf U0VQIChfY18pKQp8ICNkZWZpbmUgSEFWRV9QUk9DRlMgMQp8ICNkZWZpbmUgREVGQVVMVF9T T1VORF9ERVZJQ0UgIi9kZXYvZHNwIgp8ICNkZWZpbmUgSU5URVJSVVBUX0lOUFVUIDEKfCAj ZGVmaW5lIE5BUlJPV1BST1RPIDEKfCAjZGVmaW5lIFVOSVg5OF9QVFlTIDEKfCAjZGVmaW5l IFBUWV9JVEVSQVRJT04gaW50IGk7IGZvciAoaSA9IDA7IGkgPCAxOyBpKyspCnwgI2RlZmlu ZSBQVFlfVFRZX05BTUVfU1BSSU5URiB7IGNoYXIgKnB0eW5hbWUgPSAwOyBzaWdzZXRfdCBi bG9ja2VkOyBzaWdlbXB0eXNldCAoJmJsb2NrZWQpOyBzaWdhZGRzZXQgKCZibG9ja2VkLCBT SUdDSExEKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYg KGdyYW50cHQgKGZkKSAhPSAtMSAmJiB1bmxvY2twdCAoZmQpICE9IC0xKSBwdHluYW1lID0g cHRzbmFtZShmZCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX1VOQkxPQ0ssICZibG9ja2VkLCAw KTsgaWYgKCFwdHluYW1lKSB7IGVtYWNzX2Nsb3NlIChmZCk7IHJldHVybiAtMTsgfSBzbnBy aW50ZiAocHR5X25hbWUsIFBUWV9OQU1FX1NJWkUsICIlcyIsIHB0eW5hbWUpOyB9CnwgI2Rl ZmluZSBQVFlfT1BFTiBkbyB7IGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX0NMT0VY RUMgfCBPX05PQ1RUWSk7IGlmIChmZCA8IDAgJiYgZXJybm8gPT0gRUlOVkFMKSBmZCA9IHBv c2l4X29wZW5wdCAoT19SRFdSIHwgT19OT0NUVFkpOyB9IHdoaWxlIChmYWxzZSkKfCAjZGVm aW5lIFBUWV9OQU1FX1NQUklOVEYgLyoqLwp8ICNkZWZpbmUgU0lHTkFMU19WSUFfQ0hBUkFD VEVSUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgR0NfU0VUSk1Q X1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfX1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NJR1NF VEpNUCAxCnwgI2RlZmluZSBIQVZFX1NUQUNLX09WRVJGTE9XX0hBTkRMSU5HIDEKfCAjZGVm aW5lIFVTRyAvKiovCnwgI2RlZmluZSBHTlVfTElOVVggLyoqLwp8ICNkZWZpbmUgU0laRU9G X1NQRUVEX1QgNAp8ICNkZWZpbmUgVVNBQkxFX0ZJT05SRUFEIDEKfCAjZGVmaW5lIFVTQUJM RV9TSUdJTyAxCnwgI2RlZmluZSBDT1BZUklHSFQgIkNvcHlyaWdodCAoQykgMjAyMyBGcmVl IFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4iCnwgI2RlZmluZSBURVJNX0hFQURFUiAiZ3Rr dXRpbC5oIgp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHVVJBVElPTiAieDg2XzY0LXBjLWxpbnV4 LWdudSIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR19PUFRJT05TICIiCnwgI2RlZmluZSBIQVZF X1hfV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gxMSAxCnwgI2RlZmluZSBIQVZFX1NUUlVD VF9BVFRSSUJVVEVfQUxJR05FRCAxCnwgI2RlZmluZSBIQVZFX1RZUEVPRiAxCnwgI2RlZmlu ZSBIQVZFX1NUQVRFTUVOVF9FWFBSRVNTSU9OUyAxCnwgI2RlZmluZSBNQUxMT0NfMF9JU19O T05OVUxMIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0FDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNM X0dFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GRCAxCnwgI2RlZmluZSBIQVZF X0FDTF9TRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRkQgMQp8ICNkZWZpbmUg SEFWRV9BQ0xfRlJFRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX01PREUgMQp8ICNkZWZp bmUgSEFWRV9BQ0xfRlJPTV9URVhUIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0RFTEVURV9ERUZf RklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9FWFRFTkRFRF9GSUxFIDEKfCAjZGVmaW5lIEhB VkVfQUNMX0xJQkFDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VOVFJJRVMgMQp8ICNkZWZp bmUgSEFWRV9BQ0xfRklSU1RfRU5UUlkgMQp8ICNkZWZpbmUgVVNFX0FDTCAxCnwgI2RlZmlu ZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIExT VEFUX0ZPTExPV1NfU0xBU0hFRF9TWU1MSU5LIDEKfCAjZGVmaW5lIEZVTkNfUkVBTFBBVEhf V09SS1MgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9HRVRD V0QgMQp8ICNkZWZpbmUgcmVzdHJpY3QgX19yZXN0cmljdF9fCnwgI2RlZmluZSBIQVZFX0VO VklST05fREVDTCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSTU9ERSAwCnwgI2RlZmluZSBI QVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0xPTkdfT05MWSAxCnwgI2Rl ZmluZSBIQVZFX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUgSEFWRV9VTlNJR05FRF9MT05H X0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9NRU1NRU0gMQp8ICNkZWZpbmUgSEFW RV9ERUNMX01FTVJDSFIgMQp8ICNkZWZpbmUgSEFWRV9NSU5NQVhfSU5fU1lTX1BBUkFNX0gg MQp8ICNkZWZpbmUgVElNRV9UX0lTX1NJR05FRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfQUxB Uk0gMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVE1fVE1fWk9ORSAxCnwgI2RlZmluZSBIQVZF X1RNX1pPTkUgMQp8ICNkZWZpbmUgSEFWRV9UTV9HTVRPRkYgMQp8ICNkZWZpbmUgSEFWRV9T SUdTRVRfVCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX1QgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X0ZDTE9TRUFMTCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VUVyAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfUFVUVyAxCnwgI2RlZmluZSBfX1VTRV9NSU5HV19BTlNJX1NURElPIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9FQ1ZUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GQ1ZUIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9HQ1ZUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJOTEVOIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9TVFJUT0lNQVggMQp8ICNkZWZpbmUgX1VTRV9TVERfU1RBVCAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfRVhFQ1ZQRSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfQ0xF QVJFUlJfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZFT0ZfVU5MT0NLRUQgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX0ZFUlJPUl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfRkZMVVNIX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GR0VUU19VTkxPQ0tF RCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRlBVVENfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX0ZQVVRTX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GUkVBRF9VTkxP Q0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRldSSVRFX1VOTE9DS0VEIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9HRVRDX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRDSEFS X1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRDX1VOTE9DS0VEIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9QVVRDSEFSX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEdFVEdST1VQU19U IGdpZF90CnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBI QVZFX01BTExPQ19QT1NJWCAxCnwgI2RlZmluZSBQUk9NT1RFRF9NT0RFX1QgbW9kZV90Cnwg I2RlZmluZSBIQVZFX1dPUktJTkdfVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEK fCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX0VYUEVDVCAxCnwgI2RlZmluZSBIQVZFX0JZVEVT V0FQX0ggMQp8ICNkZWZpbmUgR05VTElCX0NBTk9OSUNBTElaRV9MR1BMIDEKfCAjZGVmaW5l IEhBVkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX0dFVFJFUyAxCnwgI2Rl ZmluZSBIQVZFX0NMT0NLX0dFVFRJTUUgMQp8ICNkZWZpbmUgSEFWRV9DTE9DS19TRVRUSU1F IDEKfCAjZGVmaW5lIEdOVUxJQl9DTE9TRV9TVFJFQU0gMQp8ICNkZWZpbmUgSEFWRV9DT1BZ X0ZJTEVfUkFOR0UgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfRElSRU5UX0RfVFlQRSAxCnwg I2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBHTlVMSUJfRkFDQ0VTU0FUIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgR05VTElCX0ZET1BF TkRJUiAxCnwgI2RlZmluZSBHRVRYQVRUUl9XSVRIX1BPU0lYX0FDTFMgMQp8ICNkZWZpbmUg RkxFWElCTEVfQVJSQVlfTUVNQkVSIC8qKi8KfCAjZGVmaW5lIEhBVkVfREVDTF9fX0ZQRU5E SU5HIDEKfCAjZGVmaW5lIEhBVkVfRlJFRV9QT1NJWCAxCnwgI2RlZmluZSBIQVZFX1NZU19N T1VOVF9IIDEKfCAjZGVmaW5lIFNUQVRfU1RBVFZGUyAxCnwgI2RlZmluZSBTVEFUX1NUQVRG UzJfRlJTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRGU19IIDEKfCAjZGVmaW5lIEhB VkVfRlVUSU1FTlMgMQp8ICNkZWZpbmUgSEFWRV9HRVRMT0FEQVZHIDEKfCAjZGVmaW5lIEhB VkVfR0VUUkFORE9NIDEKfCAjZGVmaW5lIEhBVkVfVElNRVNQRUNfR0VUIDEKfCAjZGVmaW5l IEdFVFRJTUVPRkRBWV9USU1FWk9ORSB2b2lkCnwgI2RlZmluZSBIQVZFX19fSU5MSU5FIDEK fCAjZGVmaW5lIEhBVkVfR01QX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1NRU0gMQp8ICNkZWZp bmUgSEFWRV9NRU1QQ1BZIDEKfCAjZGVmaW5lIEhBVkVfTUVNUkNIUiAxCnwgI2RlZmluZSBI QVZFX01LT1NURU1QIDEKfCAjZGVmaW5lIEdOVUxJQl9NS09TVEVNUCAxCnwgI2RlZmluZSBO RUVEX01LVElNRV9XT1JLSU5HIDEKfCAjZGVmaW5lIEhBVkVfQlVHX0JJR19OQU5PU0xFRVAg MQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAq Lwp8IC8qIERlZmluZSBzY2hlZF9nZXRhZmZpbml0eV9ucCB0byBhbiBpbm5vY3VvdXMgdmFy aWFudCwgaW4gY2FzZSA8bGltaXRzLmg+IGRlY2xhcmVzIHNjaGVkX2dldGFmZmluaXR5X25w Lgp8ICAgIEZvciBleGFtcGxlLCBIUC1VWCAxMWkgPGxpbWl0cy5oPiBkZWNsYXJlcyBnZXR0 aW1lb2ZkYXkuICAqLwp8ICNkZWZpbmUgc2NoZWRfZ2V0YWZmaW5pdHlfbnAgaW5ub2N1b3Vz X3NjaGVkX2dldGFmZmluaXR5X25wCnwgCnwgLyogU3lzdGVtIGhlYWRlciB0byBkZWZpbmUg X19zdHViIG1hY3JvcyBhbmQgaG9wZWZ1bGx5IGZldyBwcm90b3R5cGVzLAp8ICAgIHdoaWNo IGNhbiBjb25mbGljdCB3aXRoIGNoYXIgc2NoZWRfZ2V0YWZmaW5pdHlfbnAgKCk7IGJlbG93 LiAgKi8KfCAKfCAjaW5jbHVkZSA8bGltaXRzLmg+CnwgI3VuZGVmIHNjaGVkX2dldGFmZmlu aXR5X25wCnwgCnwgLyogT3ZlcnJpZGUgYW55IEdDQyBpbnRlcm5hbCBwcm90b3R5cGUgdG8g YXZvaWQgYW4gZXJyb3IuCnwgICAgVXNlIGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2gg dGhlIHJldHVybiB0eXBlIG9mIGEgR0NDCnwgICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMgYXJn dW1lbnQgcHJvdG90eXBlIHdvdWxkIHN0aWxsIGFwcGx5LiAgKi8KfCAjaWZkZWYgX19jcGx1 c3BsdXMKfCBleHRlcm4gIkMiCnwgI2VuZGlmCnwgY2hhciBzY2hlZF9nZXRhZmZpbml0eV9u cCAoKTsKfCAvKiBUaGUgR05VIEMgbGlicmFyeSBkZWZpbmVzIHRoaXMgZm9yIGZ1bmN0aW9u cyB3aGljaCBpdCBpbXBsZW1lbnRzCnwgICAgIHRvIGFsd2F5cyBmYWlsIHdpdGggRU5PU1lT LiAgU29tZSBmdW5jdGlvbnMgYXJlIGFjdHVhbGx5IG5hbWVkCnwgICAgIHNvbWV0aGluZyBz dGFydGluZyB3aXRoIF9fIGFuZCB0aGUgbm9ybWFsIG5hbWUgaXMgYW4gYWxpYXMuICAqLwp8 ICNpZiBkZWZpbmVkIF9fc3R1Yl9zY2hlZF9nZXRhZmZpbml0eV9ucCB8fCBkZWZpbmVkIF9f c3R1Yl9fX3NjaGVkX2dldGFmZmluaXR5X25wCnwgY2hva2UgbWUKfCAjZW5kaWYKfCAKfCBp bnQKfCBtYWluICh2b2lkKQp8IHsKfCByZXR1cm4gc2NoZWRfZ2V0YWZmaW5pdHlfbnAgKCk7 CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZTozOTI0NjogcmVzdWx0OiBubwpj b25maWd1cmU6MzkyNTI6IGNoZWNraW5nIGZvciBwc3RhdF9nZXRkeW5hbWljCmNvbmZpZ3Vy ZTozOTI1MjogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1 IAovdXNyL2Jpbi9sZDogL3RtcC9jY05XZFM3NS5vOiBpbiBmdW5jdGlvbiBgbWFpbic6Ci9h cHAvZW1hY3MvY29uZnRlc3QuYzo0MzA6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYHBzdGF0 X2dldGR5bmFtaWMnCmNvbGxlY3QyOiBlcnJvcjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1 cwpjb25maWd1cmU6MzkyNTI6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdh czoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFj cyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdF X1ZFUlNJT04gIjMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNz IDMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0Bn bnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHBzOi8vd3d3LmdudS5vcmcvc29m dHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgSEFWRV9QRFVNUEVSIDEKfCAjZGVmaW5lIEhBVkVf U1RESU9fSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RS SU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RE SU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf U1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9V TklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU5V WF9GU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf U1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf UkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUg SEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NB TklUSVpFUl9MU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0FT QU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQ09NTU9OX0lOVEVS RkFDRV9ERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUg SEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfVkZTX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19DREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2Rl ZmluZSBIQVZFX0lFRUU3NTRfSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1JBTkRPTV9IIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwg I2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAj ZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9IUFVYX0FMVF9YT1BFTl9TT0NLRVRf QVBJIDEKfCAjZGVmaW5lIF9ORVRCU0RfU09VUkNFIDEKfCAjZGVmaW5lIF9PUEVOQlNEX1NP VVJDRSAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUg X19TVERDX1dBTlRfSUVDXzYwNTU5X0FUVFJJQlNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERD X1dBTlRfSUVDXzYwNTU5X0JGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNf NjA1NTlfREZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9FWFRf XyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRlVOQ1NfRVhUX18gMQp8ICNk ZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X1RZUEVTX0VYVF9fIDEKfCAjZGVmaW5lIF9f U1REQ19XQU5UX0xJQl9FWFQyX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfTUFUSF9TUEVD X0ZVTkNTX18gMQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19FWFRF TlNJT05TX18gMQp8ICNkZWZpbmUgR0NDX0xJTlQgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUg ImdudS9saW51eCIKfCAjZGVmaW5lIEhBVkVfU1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5l IEhBVkVfQUxTQSAxCnwgI2RlZmluZSBIQVZFX1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVfUEVS U09OQUxJVFlfQUREUl9OT19SQU5ET01JWkUgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJ TkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RF Uk1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRf SUZfSCAxCnwgI2RlZmluZSBIQVZFX0lGQUREUlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVD VF9JRlJFUV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hX QUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2Rl ZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVf U1RSVUNUX0lGUkVRX0lGUl9BRERSIDEKfCAjZGVmaW5lIEhBVkVfU0JSSyAxCnwgI2RlZmlu ZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBI QVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfQ0FO T05JQ0FMSVpFX0ZJTEVfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1JFQUxQQVRIIDEKfCAjZGVm aW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0RBVCAxCnwgI2RlZmluZSBI QVZFX0xDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRP UEVORElSIDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5D IDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVD VCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1JF QURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfSVNCTEFOSyAxCnwgI2RlZmluZSBIQVZFX0lTV0NU WVBFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElO SyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRB QkxFU0laRSAxCnwgI2RlZmluZSBTWVNURU1fTUFMTE9DIDEKfCAjZGVmaW5lIEhBVkVfTU1B UCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQUQgMQp8ICNkZWZpbmUgVEhSRUFEU19FTkFCTEVE IDEKfCAjZGVmaW5lIEhBVkVfWEtCIDEKfCAjZGVmaW5lIEhBVkVfWEtCUkVGUkVTSEtFWUJP QVJETUFQUElORyAxCnwgI2RlZmluZSBIQVZFX1hLQkZSRUVOQU1FUyAxCnwgI2RlZmluZSBI QVZFX1hSTVNFVERBVEFCQVNFIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RS SU5HIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5l IEhBVkVfWERJU1BMQVlDRUxMUyAxCnwgI2RlZmluZSBIQVZFX1hERVNUUk9ZU1VCV0lORE9X UyAxCnwgI2RlZmluZSBIQVZFX1gxMVI2IDEKfCAjZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAj ZGVmaW5lIEhBVkVfWElDQ0FMTEJBQ0tfQ0FMTEJBQ0sgMQp8ICNkZWZpbmUgSEFWRV9YMTFS Nl9YSU0gMQp8ICNkZWZpbmUgSEFWRV9SU1ZHIDEKfCAjZGVmaW5lIEhBVkVfV0VCUCAxCnwg I2RlZmluZSBIQVZFX1NRTElURTMgMQp8ICNkZWZpbmUgSEFWRV9TUUxJVEUzX0xPQURfRVhU RU5TSU9OIDEKfCAjZGVmaW5lIEhBVkVfR0VUQUREUklORk9fQSAxCnwgI2RlZmluZSBIQVZF X0dUSzMgMQp8ICNkZWZpbmUgR0RLX0RJU0FCTEVfREVQUkVDQVRJT05fV0FSTklOR1MgMQp8 ICNkZWZpbmUgR0xJQl9ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5l IFVTRV9HVEsgMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfVFJJTSAxCnwgI2RlZmluZSBIQVZF X0RCVVMgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVm aW5lIEhBVkVfREJVU19UWVBFX0lTX1ZBTElEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJ REFURV9CVVNfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfUEFUSCAxCnwg I2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfSU5URVJGQUNFIDEKfCAjZGVmaW5lIEhBVkVf REJVU19WQUxJREFURV9NRU1CRVIgMQp8ICNkZWZpbmUgSEFWRV9HU0VUVElOR1MgMQp8ICNk ZWZpbmUgSEFWRV9MSUJTRUxJTlVYIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVm aW5lIEhBVkVfTElCU1lTVEVNRCAxCnwgI2RlZmluZSBIQVZFX0pTT04gMQp8ICNkZWZpbmUg SEFWRV9JTk9USUZZIDEKfCAjZGVmaW5lIFVTRV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBV U0VfVE9PTEtJVF9TQ1JPTExfQkFSUyAxCnwgI2RlZmluZSBIQVZFX1hJTSAxCnwgI2RlZmlu ZSBVU0VfWElNIDEKfCAjZGVmaW5lIEhBVkVfWFJFTkRFUiAxCnwgI2RlZmluZSBVU0VfQ0FJ Uk9fWENCIDEKfCAjZGVmaW5lIFVTRV9DQUlSTyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBF IDEKfCAjZGVmaW5lIEhBVkVfRlRfRkFDRV9HRVRDSEFSVkFSSUFOVElOREVYIDEKfCAjZGVm aW5lIEhBVkVfTElCT1RGIDEKfCAjZGVmaW5lIEhBVkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZ UEhTIDEKfCAjZGVmaW5lIEhBVkVfTTE3Tl9GTFQgMQp8ICNkZWZpbmUgSEFWRV9IQVJGQlVa WiAxCnwgI2RlZmluZSBVU0VfWENCIDEKfCAjZGVmaW5lIEhBVkVfWFBNIDEKfCAjZGVmaW5l IEhBVkVfSlBFRyAxCnwgI2RlZmluZSBIQVZFX0xDTVMyIDEKfCAjZGVmaW5lIEhBVkVfWkxJ QiAxCnwgI2RlZmluZSBEWU5BTUlDX0xJQl9TVUZGSVggIi5zbyIKfCAjZGVmaW5lIERZTkFN SUNfTElCX1NFQ09OREFSWV9TVUZGSVggIiIKfCAjZGVmaW5lIEhBVkVfRExBRERSIDEKfCAj ZGVmaW5lIEhBVkVfTU9EVUxFUyAxCnwgI2RlZmluZSBNT0RVTEVTX1NVRkZJWCAiLnNvIgp8 ICNkZWZpbmUgTkFUSVZFX0VMSVNQX1NVRkZJWCAiLmVsbiIKfCAjZGVmaW5lIEhBVkVfUE5H IDEKfCAjZGVmaW5lIEhBVkVfVElGRiAxCnwgI2RlZmluZSBIQVZFX0dJRiAxCnwgI2RlZmlu ZSBIQVZFX0dQTSAxCnwgI2RlZmluZSBIQVZFX1hfU00gMQp8ICNkZWZpbmUgSEFWRV9YUkFO RFIgMQp8ICNkZWZpbmUgSEFWRV9YSU5FUkFNQSAxCnwgI2RlZmluZSBIQVZFX1hGSVhFUyAx CnwgI2RlZmluZSBIQVZFX1hJTlBVVDIgMQp8ICNkZWZpbmUgSEFWRV9YSVNDUk9MTENMQVNT SU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWElUT1VDSENMQVNTSU5GT19UWVBFIDEKfCAj ZGVmaW5lIEhBVkVfWElCQVJSSUVSUkVMRUFTRVBPSU5URVJJTkZPX0RFVklDRUlEIDEKfCAj ZGVmaW5lIEhBVkVfWElHRVNUVVJFQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9Y U1lOQyAxCnwgI2RlZmluZSBIQVZFX1hTWU5DVFJJR0dFUkZFTkNFIDEKfCAjZGVmaW5lIEhB VkVfWERCRSAxCnwgI2RlZmluZSBIQVZFX1hDQl9TSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hT SEFQRSAxCnwgI2RlZmluZSBIQVZFX1hDT01QT1NJVEUgMQp8ICNkZWZpbmUgSEFWRV9MSUJY TUwyIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU0VDQ09NUF9IIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9TRUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VD Q09NUF9GSUxURVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZJTFRFUl9I IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9GSUxURVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBT SVpFT0ZfTE9ORyA4CnwgI2RlZmluZSBIQVZFX0FDQ0VQVDQgMQp8ICNkZWZpbmUgSEFWRV9G Q0hESVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dF VFJVU0FHRSAxCnwgI2RlZmluZSBIQVZFX0dFVF9DVVJSRU5UX0RJUl9OQU1FIDEKfCAjZGVm aW5lIEhBVkVfTFJBTkQ0OCAxCnwgI2RlZmluZSBIQVZFX1JBTkRPTSAxCnwgI2RlZmluZSBI QVZFX1JJTlQgMQp8ICNkZWZpbmUgSEFWRV9UUlVOQyAxCnwgI2RlZmluZSBIQVZFX1NFTEVD VCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9D QUxFIDEKfCAjZGVmaW5lIEhBVkVfTkVXTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJ TUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERP V04gMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9T VFJTSUdOQUwgMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9T RU5EVE8gMQp8ICNkZWZpbmUgSEFWRV9SRUNWRlJPTSAxCnwgI2RlZmluZSBIQVZFX0dFVFNP Q0tOQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0ZS RUVJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfR0FJX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhB VkVfU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5E UFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0VOREdS RU5UIDEKfCAjZGVmaW5lIEhBVkVfUkVOQU1FQVQyIDEKfCAjZGVmaW5lIEhBVkVfQ0ZNQUtF UkFXIDEKfCAjZGVmaW5lIEhBVkVfQ0ZTRVRTUEVFRCAxCnwgI2RlZmluZSBIQVZFX19fRVhF Q1VUQUJMRV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9Q VEhSRUFEX1NFVE5BTUVfTlAgMQp8ICNkZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9DIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhf TUFEVklTRSAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9GUkFNRV9BRERSRVNTIDEKfCAj ZGVmaW5lIEhBVkVfX19CVUlMVElOX1VOV0lORF9JTklUIDEKfCAjZGVmaW5lIEhBVkVfRlNF RUtPIDEKfCAjZGVmaW5lIEhBVkVfR1JBTlRQVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBUIDEK fCAjZGVmaW5lIEhBVkVfUE9TSVhfT1BFTlBUIDEKfCAjZGVmaW5lIFRFUk1JTkZPIDEKfCAj ZGVmaW5lIFRFUk1JTkZPX0RFRklORVNfQkMgMQp8ICNkZWZpbmUgSEFWRV9USU1FUkZEIDEK fCAjZGVmaW5lIEhBVkVfVkFMR1JJTkRfVkFMR1JJTkRfSCAxCnwgI2RlZmluZSBIQVZFX1NU UlVDVF9VTklQQUlSX1VOSUNPREUgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEK fCAjZGVmaW5lIEhBVkVfV09SS0lOR19GT1JLIDEKfCAjZGVmaW5lIEhBVkVfU05QUklOVEYg MQp8ICNkZWZpbmUgSEFWRV9TUEFXTl9IIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV04g MQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTl9GSUxFX0FDVElPTlNfQUREQ0hESVJfTlAg MQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTkFUVFJfU0VURkxBR1MgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX1BPU0lYX1NQQVdOX1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX0dMSUIgMQp8 ICNkZWZpbmUgSEFWRV9MQU5HSU5GT19DT0RFU0VUIDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lO Rk9fX05MX1BBUEVSX1dJRFRIIDEKfCAjZGVmaW5lIEhBVkVfTUJTVEFURV9UIDEKfCAjZGVm aW5lIEFNUEVSU0FORF9GVUxMX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9QVFlTIDEKfCAjZGVm aW5lIEhBVkVfU09DS0VUUyAxCnwgI2RlZmluZSBOVUxMX0RFVklDRSAiL2Rldi9udWxsIgp8 ICNkZWZpbmUgU0VQQ0hBUiAnOicKfCAjZGVmaW5lIHN1YnByb2Nlc3NlcyAxCnwgI2RlZmlu ZSBVU0VSX0ZVTExfTkFNRSBwdy0+cHdfZ2Vjb3MKfCAjZGVmaW5lIERJUkVDVE9SWV9TRVAg Jy8nCnwgI2RlZmluZSBJU19ERVZJQ0VfU0VQKF9jXykgMAp8ICNkZWZpbmUgSVNfRElSRUNU T1JZX1NFUChfY18pICgoX2NfKSA9PSBESVJFQ1RPUllfU0VQKQp8ICNkZWZpbmUgSVNfQU5Z X1NFUChfY18pIChJU19ESVJFQ1RPUllfU0VQIChfY18pKQp8ICNkZWZpbmUgSEFWRV9QUk9D RlMgMQp8ICNkZWZpbmUgREVGQVVMVF9TT1VORF9ERVZJQ0UgIi9kZXYvZHNwIgp8ICNkZWZp bmUgSU5URVJSVVBUX0lOUFVUIDEKfCAjZGVmaW5lIE5BUlJPV1BST1RPIDEKfCAjZGVmaW5l IFVOSVg5OF9QVFlTIDEKfCAjZGVmaW5lIFBUWV9JVEVSQVRJT04gaW50IGk7IGZvciAoaSA9 IDA7IGkgPCAxOyBpKyspCnwgI2RlZmluZSBQVFlfVFRZX05BTUVfU1BSSU5URiB7IGNoYXIg KnB0eW5hbWUgPSAwOyBzaWdzZXRfdCBibG9ja2VkOyBzaWdlbXB0eXNldCAoJmJsb2NrZWQp OyBzaWdhZGRzZXQgKCZibG9ja2VkLCBTSUdDSExEKTsgcHRocmVhZF9zaWdtYXNrIChTSUdf QkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKGdyYW50cHQgKGZkKSAhPSAtMSAmJiB1bmxvY2tw dCAoZmQpICE9IC0xKSBwdHluYW1lID0gcHRzbmFtZShmZCk7IHB0aHJlYWRfc2lnbWFzayAo U0lHX1VOQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKCFwdHluYW1lKSB7IGVtYWNzX2Nsb3Nl IChmZCk7IHJldHVybiAtMTsgfSBzbnByaW50ZiAocHR5X25hbWUsIFBUWV9OQU1FX1NJWkUs ICIlcyIsIHB0eW5hbWUpOyB9CnwgI2RlZmluZSBQVFlfT1BFTiBkbyB7IGZkID0gcG9zaXhf b3BlbnB0IChPX1JEV1IgfCBPX0NMT0VYRUMgfCBPX05PQ1RUWSk7IGlmIChmZCA8IDAgJiYg ZXJybm8gPT0gRUlOVkFMKSBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19OT0NUVFkp OyB9IHdoaWxlIChmYWxzZSkKfCAjZGVmaW5lIFBUWV9OQU1FX1NQUklOVEYgLyoqLwp8ICNk ZWZpbmUgU0lHTkFMU19WSUFfQ0hBUkFDVEVSUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09S S1MgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfX1NFVEpN UCAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NUQUNLX09W RVJGTE9XX0hBTkRMSU5HIDEKfCAjZGVmaW5lIFVTRyAvKiovCnwgI2RlZmluZSBHTlVfTElO VVggLyoqLwp8ICNkZWZpbmUgU0laRU9GX1NQRUVEX1QgNAp8ICNkZWZpbmUgVVNBQkxFX0ZJ T05SRUFEIDEKfCAjZGVmaW5lIFVTQUJMRV9TSUdJTyAxCnwgI2RlZmluZSBDT1BZUklHSFQg IkNvcHlyaWdodCAoQykgMjAyMyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4iCnwg I2RlZmluZSBURVJNX0hFQURFUiAiZ3RrdXRpbC5oIgp8ICNkZWZpbmUgRU1BQ1NfQ09ORklH VVJBVElPTiAieDg2XzY0LXBjLWxpbnV4LWdudSIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR19P UFRJT05TICIiCnwgI2RlZmluZSBIQVZFX1hfV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gx MSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9BVFRSSUJVVEVfQUxJR05FRCAxCnwgI2RlZmlu ZSBIQVZFX1RZUEVPRiAxCnwgI2RlZmluZSBIQVZFX1NUQVRFTUVOVF9FWFBSRVNTSU9OUyAx CnwgI2RlZmluZSBNQUxMT0NfMF9JU19OT05OVUxMIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0FD TF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNM X0dFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRklMRSAxCnwgI2RlZmluZSBIQVZF X0FDTF9TRVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJFRSAxCnwgI2RlZmluZSBIQVZF X0FDTF9GUk9NX01PREUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9URVhUIDEKfCAjZGVm aW5lIEhBVkVfQUNMX0RFTEVURV9ERUZfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9FWFRF TkRFRF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0xJQkFDTF9IIDEKfCAjZGVmaW5lIEhB VkVfQUNMX0VOVFJJRVMgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRklSU1RfRU5UUlkgMQp8ICNk ZWZpbmUgVVNFX0FDTCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhB VkVfQUxMT0NBIDEKfCAjZGVmaW5lIExTVEFUX0ZPTExPV1NfU0xBU0hFRF9TWU1MSU5LIDEK fCAjZGVmaW5lIEZVTkNfUkVBTFBBVEhfV09SS1MgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNT QVQgMQp8ICNkZWZpbmUgSEFWRV9HRVRDV0QgMQp8ICNkZWZpbmUgcmVzdHJpY3QgX19yZXN0 cmljdF9fCnwgI2RlZmluZSBIQVZFX0VOVklST05fREVDTCAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfU1RSTU9ERSAwCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVf R0VUT1BUX0xPTkdfT05MWSAxCnwgI2RlZmluZSBIQVZFX0xPTkdfTE9OR19JTlQgMQp8ICNk ZWZpbmUgSEFWRV9VTlNJR05FRF9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9NRU1NRU0gMQp8ICNkZWZpbmUgSEFWRV9ERUNMX01FTVJDSFIgMQp8ICNkZWZpbmUgSEFW RV9NSU5NQVhfSU5fU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgVElNRV9UX0lTX1NJR05FRCAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfQUxBUk0gMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVE1f VE1fWk9ORSAxCnwgI2RlZmluZSBIQVZFX1RNX1pPTkUgMQp8ICNkZWZpbmUgSEFWRV9UTV9H TVRPRkYgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRVRfVCAxCnwgI2RlZmluZSBIQVZFX1dDSEFS X1QgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZDTE9TRUFMTCAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfR0VUVyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUFVUVyAxCnwgI2RlZmluZSBfX1VTRV9N SU5HV19BTlNJX1NURElPIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9FQ1ZUIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9GQ1ZUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HQ1ZUIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9TVFJOTEVOIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJUT0lNQVggMQp8 ICNkZWZpbmUgX1VTRV9TVERfU1RBVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRVhFQ1ZQRSAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfQ0xFQVJFUlJfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX0ZFT0ZfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZFUlJPUl9VTkxP Q0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkZMVVNIX1VOTE9DS0VEIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9GR0VUU19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRlBVVENf VU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZQVVRTX1VOTE9DS0VEIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9GUkVBRF9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRldS SVRFX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRDX1VOTE9DS0VEIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9HRVRDSEFSX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9QVVRDX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRDSEFSX1VOTE9DS0VE IDEKfCAjZGVmaW5lIEdFVEdST1VQU19UIGdpZF90CnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VU RFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19QT1NJWCAxCnwgI2RlZmluZSBQ Uk9NT1RFRF9NT0RFX1QgbW9kZV90CnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVVRJTUVTIDEK fCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX0VYUEVD VCAxCnwgI2RlZmluZSBIQVZFX0JZVEVTV0FQX0ggMQp8ICNkZWZpbmUgR05VTElCX0NBTk9O SUNBTElaRV9MR1BMIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBI QVZFX0NMT0NLX0dFVFJFUyAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX0dFVFRJTUUgMQp8ICNk ZWZpbmUgSEFWRV9DTE9DS19TRVRUSU1FIDEKfCAjZGVmaW5lIEdOVUxJQl9DTE9TRV9TVFJF QU0gMQp8ICNkZWZpbmUgSEFWRV9DT1BZX0ZJTEVfUkFOR0UgMQp8ICNkZWZpbmUgSEFWRV9T VFJVQ1RfRElSRU5UX0RfVFlQRSAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2Rl ZmluZSBHTlVMSUJfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRE9QRU5ESVIg MQp8ICNkZWZpbmUgR05VTElCX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBHRVRYQVRUUl9XSVRI X1BPU0lYX0FDTFMgMQp8ICNkZWZpbmUgRkxFWElCTEVfQVJSQVlfTUVNQkVSIC8qKi8KfCAj ZGVmaW5lIEhBVkVfREVDTF9fX0ZQRU5ESU5HIDEKfCAjZGVmaW5lIEhBVkVfRlJFRV9QT1NJ WCAxCnwgI2RlZmluZSBIQVZFX1NZU19NT1VOVF9IIDEKfCAjZGVmaW5lIFNUQVRfU1RBVFZG UyAxCnwgI2RlZmluZSBTVEFUX1NUQVRGUzJfRlJTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1NUQVRGU19IIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FTlMgMQp8ICNkZWZpbmUgSEFWRV9H RVRMT0FEQVZHIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkFORE9NIDEKfCAjZGVmaW5lIEhBVkVf VElNRVNQRUNfR0VUIDEKfCAjZGVmaW5lIEdFVFRJTUVPRkRBWV9USU1FWk9ORSB2b2lkCnwg I2RlZmluZSBIQVZFX19fSU5MSU5FIDEKfCAjZGVmaW5lIEhBVkVfR01QX0ggMQp8ICNkZWZp bmUgSEFWRV9NRU1NRU0gMQp8ICNkZWZpbmUgSEFWRV9NRU1QQ1BZIDEKfCAjZGVmaW5lIEhB VkVfTUVNUkNIUiAxCnwgI2RlZmluZSBIQVZFX01LT1NURU1QIDEKfCAjZGVmaW5lIEdOVUxJ Ql9NS09TVEVNUCAxCnwgI2RlZmluZSBORUVEX01LVElNRV9XT1JLSU5HIDEKfCAjZGVmaW5l IEhBVkVfQlVHX0JJR19OQU5PU0xFRVAgMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAx CnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8IC8qIERlZmluZSBwc3RhdF9nZXRkeW5hbWlj IHRvIGFuIGlubm9jdW91cyB2YXJpYW50LCBpbiBjYXNlIDxsaW1pdHMuaD4gZGVjbGFyZXMg cHN0YXRfZ2V0ZHluYW1pYy4KfCAgICBGb3IgZXhhbXBsZSwgSFAtVVggMTFpIDxsaW1pdHMu aD4gZGVjbGFyZXMgZ2V0dGltZW9mZGF5LiAgKi8KfCAjZGVmaW5lIHBzdGF0X2dldGR5bmFt aWMgaW5ub2N1b3VzX3BzdGF0X2dldGR5bmFtaWMKfCAKfCAvKiBTeXN0ZW0gaGVhZGVyIHRv IGRlZmluZSBfX3N0dWIgbWFjcm9zIGFuZCBob3BlZnVsbHkgZmV3IHByb3RvdHlwZXMsCnwg ICAgd2hpY2ggY2FuIGNvbmZsaWN0IHdpdGggY2hhciBwc3RhdF9nZXRkeW5hbWljICgpOyBi ZWxvdy4gICovCnwgCnwgI2luY2x1ZGUgPGxpbWl0cy5oPgp8ICN1bmRlZiBwc3RhdF9nZXRk eW5hbWljCnwgCnwgLyogT3ZlcnJpZGUgYW55IEdDQyBpbnRlcm5hbCBwcm90b3R5cGUgdG8g YXZvaWQgYW4gZXJyb3IuCnwgICAgVXNlIGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2gg dGhlIHJldHVybiB0eXBlIG9mIGEgR0NDCnwgICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMgYXJn dW1lbnQgcHJvdG90eXBlIHdvdWxkIHN0aWxsIGFwcGx5LiAgKi8KfCAjaWZkZWYgX19jcGx1 c3BsdXMKfCBleHRlcm4gIkMiCnwgI2VuZGlmCnwgY2hhciBwc3RhdF9nZXRkeW5hbWljICgp Owp8IC8qIFRoZSBHTlUgQyBsaWJyYXJ5IGRlZmluZXMgdGhpcyBmb3IgZnVuY3Rpb25zIHdo aWNoIGl0IGltcGxlbWVudHMKfCAgICAgdG8gYWx3YXlzIGZhaWwgd2l0aCBFTk9TWVMuICBT b21lIGZ1bmN0aW9ucyBhcmUgYWN0dWFsbHkgbmFtZWQKfCAgICAgc29tZXRoaW5nIHN0YXJ0 aW5nIHdpdGggX18gYW5kIHRoZSBub3JtYWwgbmFtZSBpcyBhbiBhbGlhcy4gICovCnwgI2lm IGRlZmluZWQgX19zdHViX3BzdGF0X2dldGR5bmFtaWMgfHwgZGVmaW5lZCBfX3N0dWJfX19w c3RhdF9nZXRkeW5hbWljCnwgY2hva2UgbWUKfCAjZW5kaWYKfCAKfCBpbnQKfCBtYWluICh2 b2lkKQp8IHsKfCByZXR1cm4gcHN0YXRfZ2V0ZHluYW1pYyAoKTsKfCAgIDsKfCAgIHJldHVy biAwOwp8IH0KY29uZmlndXJlOjM5MjUyOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTozOTI1ODog Y2hlY2tpbmcgZm9yIHN5c21wCmNvbmZpZ3VyZTozOTI1ODogZ2NjIC1vIGNvbmZ0ZXN0IC1n MyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1IAovdXNyL2Jpbi9sZDogL3RtcC9jY2loWkVR cy5vOiBpbiBmdW5jdGlvbiBgbWFpbic6Ci9hcHAvZW1hY3MvY29uZnRlc3QuYzo0MzA6IHVu ZGVmaW5lZCByZWZlcmVuY2UgdG8gYHN5c21wJwpjb2xsZWN0MjogZXJyb3I6IGxkIHJldHVy bmVkIDEgZXhpdCBzdGF0dXMKY29uZmlndXJlOjM5MjU4OiAkPyA9IDEKY29uZmlndXJlOiBm YWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FH RV9OQU1FICJHTlUgRW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8 ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9T VFJJTkcgIkdOVSBFbWFjcyAzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQg ImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJodHRwczov L3d3dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIEhBVkVfUERVTVBFUiAx CnwgI2RlZmluZSBIQVZFX1NURElPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwg I2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwg I2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEK fCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAj ZGVmaW5lIEhBVkVfTElOVVhfRlNfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1BUWV9IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFN RV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1QX0ggMQp8 ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfTFNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBI QVZFX1NBTklUSVpFUl9BU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJ WkVSX0NPTU1PTl9JTlRFUkZBQ0VfREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tF VF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhS RUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwgI2RlZmluZSBIQVZFX0RJUkVO VF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1NURElP X0VYVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1ZGU19IIDEKfCAjZGVmaW5lIEhBVkVfR0VU T1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfQ0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9JRUVFNzU0X0ggMQp8ICNkZWZpbmUgSEFWRV9M SU1JVFNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZF X1NUREJPT0xfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SQU5ET01fSCAxCnwgI2RlZmluZSBT VERDX0hFQURFUlMgMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJ Tl9DX1NPVVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBfSFBVWF9B TFRfWE9QRU5fU09DS0VUX0FQSSAxCnwgI2RlZmluZSBfTkVUQlNEX1NPVVJDRSAxCnwgI2Rl ZmluZSBfT1BFTkJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5U SUNTIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9BVFRSSUJTX0VYVF9fIDEK fCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9CRlBfRVhUX18gMQp8ICNkZWZpbmUg X19TVERDX1dBTlRfSUVDXzYwNTU5X0RGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FO VF9JRUNfNjA1NTlfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0ZV TkNTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9UWVBFU19FWFRf XyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9MSUJfRVhUMl9fIDEKfCAjZGVmaW5lIF9fU1RE Q19XQU5UX01BVEhfU1BFQ19GVU5DU19fIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEK fCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIEdDQ19MSU5UIDEKfCAjZGVm aW5lIFNZU1RFTV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENB UkRfSCAxCnwgI2RlZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwg I2RlZmluZSBIQVZFX1BFUlNPTkFMSVRZX0FERFJfTk9fUkFORE9NSVpFIDEKfCAjZGVmaW5l IEhBVkVfTElOVVhfU1lTSU5GTyAxCnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8 ICNkZWZpbmUgSEFWRV9URVJNX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAj ZGVmaW5lIEhBVkVfTkVUX0lGX0ggMQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfU1RS VUNUX0lGUkVRX0lGUl9IV0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZS X05FVE1BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAx CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQUREUiAxCnwgI2RlZmluZSBIQVZF X1NCUksgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX0ZP UksgMQp8ICNkZWZpbmUgSEFWRV9WRk9SSyAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwg I2RlZmluZSBIQVZFX0NBTk9OSUNBTElaRV9GSUxFX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9S RUFMUEFUSCAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9E QVQgMQp8ICNkZWZpbmUgSEFWRV9MQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwg I2RlZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNk ZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2Rl ZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8 ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX0lTQkxBTksgMQp8ICNk ZWZpbmUgSEFWRV9JU1dDVFlQRSAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2Rl ZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2Rl ZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgU1lTVEVNX01BTExPQyAxCnwg I2RlZmluZSBIQVZFX01NQVAgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEIDEKfCAjZGVmaW5l IFRIUkVBRFNfRU5BQkxFRCAxCnwgI2RlZmluZSBIQVZFX1hLQiAxCnwgI2RlZmluZSBIQVZF X1hLQlJFRlJFU0hLRVlCT0FSRE1BUFBJTkcgMQp8ICNkZWZpbmUgSEFWRV9YS0JGUkVFTkFN RVMgMQp8ICNkZWZpbmUgSEFWRV9YUk1TRVREQVRBQkFTRSAxCnwgI2RlZmluZSBIQVZFX1hT Q1JFRU5SRVNPVVJDRVNUUklORyAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJPRlND UkVFTiAxCnwgI2RlZmluZSBIQVZFX1hESVNQTEFZQ0VMTFMgMQp8ICNkZWZpbmUgSEFWRV9Y REVTVFJPWVNVQldJTkRPV1MgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNiAxCnwgI2RlZmluZSBI QVZFX1hfSTE4TiAxCnwgI2RlZmluZSBIQVZFX1hJQ0NBTExCQUNLX0NBTExCQUNLIDEKfCAj ZGVmaW5lIEhBVkVfWDExUjZfWElNIDEKfCAjZGVmaW5lIEhBVkVfUlNWRyAxCnwgI2RlZmlu ZSBIQVZFX1dFQlAgMQp8ICNkZWZpbmUgSEFWRV9TUUxJVEUzIDEKfCAjZGVmaW5lIEhBVkVf U1FMSVRFM19MT0FEX0VYVEVOU0lPTiAxCnwgI2RlZmluZSBIQVZFX0dFVEFERFJJTkZPX0Eg MQp8ICNkZWZpbmUgSEFWRV9HVEszIDEKfCAjZGVmaW5lIEdES19ESVNBQkxFX0RFUFJFQ0FU SU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIEdMSUJfRElTQUJMRV9ERVBSRUNBVElPTl9XQVJO SU5HUyAxCnwgI2RlZmluZSBVU0VfR1RLIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX1RSSU0g MQp8ICNkZWZpbmUgSEFWRV9EQlVTIDEKfCAjZGVmaW5lIEhBVkVfREJVU19XQVRDSF9HRVRf VU5JWF9GRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVFlQRV9JU19WQUxJRCAxCnwgI2RlZmlu ZSBIQVZFX0RCVVNfVkFMSURBVEVfQlVTX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZB TElEQVRFX1BBVEggMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0lOVEVSRkFDRSAx CnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfTUVNQkVSIDEKfCAjZGVmaW5lIEhBVkVf R1NFVFRJTkdTIDEKfCAjZGVmaW5lIEhBVkVfTElCU0VMSU5VWCAxCnwgI2RlZmluZSBIQVZF X0dOVVRMUyAxCnwgI2RlZmluZSBIQVZFX0xJQlNZU1RFTUQgMQp8ICNkZWZpbmUgSEFWRV9K U09OIDEKfCAjZGVmaW5lIEhBVkVfSU5PVElGWSAxCnwgI2RlZmluZSBVU0VfRklMRV9OT1RJ RlkgMQp8ICNkZWZpbmUgVVNFX1RPT0xLSVRfU0NST0xMX0JBUlMgMQp8ICNkZWZpbmUgSEFW RV9YSU0gMQp8ICNkZWZpbmUgVVNFX1hJTSAxCnwgI2RlZmluZSBIQVZFX1hSRU5ERVIgMQp8 ICNkZWZpbmUgVVNFX0NBSVJPX1hDQiAxCnwgI2RlZmluZSBVU0VfQ0FJUk8gMQp8ICNkZWZp bmUgSEFWRV9GUkVFVFlQRSAxCnwgI2RlZmluZSBIQVZFX0ZUX0ZBQ0VfR0VUQ0hBUlZBUklB TlRJTkRFWCAxCnwgI2RlZmluZSBIQVZFX0xJQk9URiAxCnwgI2RlZmluZSBIQVZFX09URl9H RVRfVkFSSUFUSU9OX0dMWVBIUyAxCnwgI2RlZmluZSBIQVZFX00xN05fRkxUIDEKfCAjZGVm aW5lIEhBVkVfSEFSRkJVWlogMQp8ICNkZWZpbmUgVVNFX1hDQiAxCnwgI2RlZmluZSBIQVZF X1hQTSAxCnwgI2RlZmluZSBIQVZFX0pQRUcgMQp8ICNkZWZpbmUgSEFWRV9MQ01TMiAxCnwg I2RlZmluZSBIQVZFX1pMSUIgMQp8ICNkZWZpbmUgRFlOQU1JQ19MSUJfU1VGRklYICIuc28i CnwgI2RlZmluZSBEWU5BTUlDX0xJQl9TRUNPTkRBUllfU1VGRklYICIiCnwgI2RlZmluZSBI QVZFX0RMQUREUiAxCnwgI2RlZmluZSBIQVZFX01PRFVMRVMgMQp8ICNkZWZpbmUgTU9EVUxF U19TVUZGSVggIi5zbyIKfCAjZGVmaW5lIE5BVElWRV9FTElTUF9TVUZGSVggIi5lbG4iCnwg I2RlZmluZSBIQVZFX1BORyAxCnwgI2RlZmluZSBIQVZFX1RJRkYgMQp8ICNkZWZpbmUgSEFW RV9HSUYgMQp8ICNkZWZpbmUgSEFWRV9HUE0gMQp8ICNkZWZpbmUgSEFWRV9YX1NNIDEKfCAj ZGVmaW5lIEhBVkVfWFJBTkRSIDEKfCAjZGVmaW5lIEhBVkVfWElORVJBTUEgMQp8ICNkZWZp bmUgSEFWRV9YRklYRVMgMQp8ICNkZWZpbmUgSEFWRV9YSU5QVVQyIDEKfCAjZGVmaW5lIEhB VkVfWElTQ1JPTExDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hJVE9VQ0hDTEFT U0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hJQkFSUklFUlJFTEVBU0VQT0lOVEVSSU5G T19ERVZJQ0VJRCAxCnwgI2RlZmluZSBIQVZFX1hJR0VTVFVSRUNMQVNTSU5GT19UWVBFIDEK fCAjZGVmaW5lIEhBVkVfWFNZTkMgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQ1RSSUdHRVJGRU5D RSAxCnwgI2RlZmluZSBIQVZFX1hEQkUgMQp8ICNkZWZpbmUgSEFWRV9YQ0JfU0hBUEUgMQp8 ICNkZWZpbmUgSEFWRV9YU0hBUEUgMQp8ICNkZWZpbmUgSEFWRV9YQ09NUE9TSVRFIDEKfCAj ZGVmaW5lIEhBVkVfTElCWE1MMiAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX1NFQ0NPTVBfSCAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgSEFW RV9MSU5VWF9GSUxURVJfSCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9E RV9GSUxURVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZ TkMgMQp8ICNkZWZpbmUgU0laRU9GX0xPTkcgOAp8ICNkZWZpbmUgSEFWRV9BQ0NFUFQ0IDEK fCAjZGVmaW5lIEhBVkVfRkNIRElSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8 ICNkZWZpbmUgSEFWRV9HRVRSVVNBR0UgMQp8ICNkZWZpbmUgSEFWRV9HRVRfQ1VSUkVOVF9E SVJfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0xSQU5ENDggMQp8ICNkZWZpbmUgSEFWRV9SQU5E T00gMQp8ICNkZWZpbmUgSEFWRV9SSU5UIDEKfCAjZGVmaW5lIEhBVkVfVFJVTkMgMQp8ICNk ZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2Rl ZmluZSBIQVZFX1NFVExPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX05FV0xPQ0FMRSAxCnwgI2Rl ZmluZSBIQVZFX0dFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NFVFJMSU1JVCAxCnwgI2Rl ZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEK fCAjZGVmaW5lIEhBVkVfU1RSU0lHTkFMIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEK fCAjZGVmaW5lIEhBVkVfU0VORFRPIDEKfCAjZGVmaW5lIEhBVkVfUkVDVkZST00gMQp8ICNk ZWZpbmUgSEFWRV9HRVRTT0NLTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVElGQUREUlMgMQp8 ICNkZWZpbmUgSEFWRV9GUkVFSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0dBSV9TVFJFUlJP UiAxCnwgI2RlZmluZSBIQVZFX1NZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwg I2RlZmluZSBIQVZFX0VORFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNk ZWZpbmUgSEFWRV9FTkRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX1JFTkFNRUFUMiAxCnwgI2Rl ZmluZSBIQVZFX0NGTUFLRVJBVyAxCnwgI2RlZmluZSBIQVZFX0NGU0VUU1BFRUQgMQp8ICNk ZWZpbmUgSEFWRV9fX0VYRUNVVEFCTEVfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9MT0cyIDEK fCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TRVROQU1FX05QIDEKfCAjZGVmaW5lIEhBVkVfQUxJ R05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfQUxJR05FRF9BTExPQyAxCnwgI2Rl ZmluZSBIQVZFX1BPU0lYX01BRFZJU0UgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fRlJB TUVfQUREUkVTUyAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9VTldJTkRfSU5JVCAxCnwg I2RlZmluZSBIQVZFX0ZTRUVLTyAxCnwgI2RlZmluZSBIQVZFX0dSQU5UUFQgMQp8ICNkZWZp bmUgSEFWRV9HRVRQVCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX09QRU5QVCAxCnwgI2RlZmlu ZSBURVJNSU5GTyAxCnwgI2RlZmluZSBURVJNSU5GT19ERUZJTkVTX0JDIDEKfCAjZGVmaW5l IEhBVkVfVElNRVJGRCAxCnwgI2RlZmluZSBIQVZFX1ZBTEdSSU5EX1ZBTEdSSU5EX0ggMQp8 ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVU5JUEFJUl9VTklDT0RFIDEKfCAjZGVmaW5lIEhBVkVf V09SS0lOR19WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfRk9SSyAxCnwgI2RlZmlu ZSBIQVZFX1NOUFJJTlRGIDEKfCAjZGVmaW5lIEhBVkVfU1BBV05fSCAxCnwgI2RlZmluZSBI QVZFX1BPU0lYX1NQQVdOIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV05fRklMRV9BQ1RJ T05TX0FERENIRElSX05QIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV05BVFRSX1NFVEZM QUdTIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QT1NJWF9TUEFXTl9TRVRTSUQgMQp8ICNkZWZp bmUgSEFWRV9HTElCIDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fQ09ERVNFVCAxCnwgI2Rl ZmluZSBIQVZFX0xBTkdJTkZPX19OTF9QQVBFUl9XSURUSCAxCnwgI2RlZmluZSBIQVZFX01C U1RBVEVfVCAxCnwgI2RlZmluZSBBTVBFUlNBTkRfRlVMTF9OQU1FIDEKfCAjZGVmaW5lIEhB VkVfUFRZUyAxCnwgI2RlZmluZSBIQVZFX1NPQ0tFVFMgMQp8ICNkZWZpbmUgTlVMTF9ERVZJ Q0UgIi9kZXYvbnVsbCIKfCAjZGVmaW5lIFNFUENIQVIgJzonCnwgI2RlZmluZSBzdWJwcm9j ZXNzZXMgMQp8ICNkZWZpbmUgVVNFUl9GVUxMX05BTUUgcHctPnB3X2dlY29zCnwgI2RlZmlu ZSBESVJFQ1RPUllfU0VQICcvJwp8ICNkZWZpbmUgSVNfREVWSUNFX1NFUChfY18pIDAKfCAj ZGVmaW5lIElTX0RJUkVDVE9SWV9TRVAoX2NfKSAoKF9jXykgPT0gRElSRUNUT1JZX1NFUCkK fCAjZGVmaW5lIElTX0FOWV9TRVAoX2NfKSAoSVNfRElSRUNUT1JZX1NFUCAoX2NfKSkKfCAj ZGVmaW5lIEhBVkVfUFJPQ0ZTIDEKfCAjZGVmaW5lIERFRkFVTFRfU09VTkRfREVWSUNFICIv ZGV2L2RzcCIKfCAjZGVmaW5lIElOVEVSUlVQVF9JTlBVVCAxCnwgI2RlZmluZSBOQVJST1dQ Uk9UTyAxCnwgI2RlZmluZSBVTklYOThfUFRZUyAxCnwgI2RlZmluZSBQVFlfSVRFUkFUSU9O IGludCBpOyBmb3IgKGkgPSAwOyBpIDwgMTsgaSsrKQp8ICNkZWZpbmUgUFRZX1RUWV9OQU1F X1NQUklOVEYgeyBjaGFyICpwdHluYW1lID0gMDsgc2lnc2V0X3QgYmxvY2tlZDsgc2lnZW1w dHlzZXQgKCZibG9ja2VkKTsgc2lnYWRkc2V0ICgmYmxvY2tlZCwgU0lHQ0hMRCk7IHB0aHJl YWRfc2lnbWFzayAoU0lHX0JMT0NLLCAmYmxvY2tlZCwgMCk7IGlmIChncmFudHB0IChmZCkg IT0gLTEgJiYgdW5sb2NrcHQgKGZkKSAhPSAtMSkgcHR5bmFtZSA9IHB0c25hbWUoZmQpOyBw dGhyZWFkX3NpZ21hc2sgKFNJR19VTkJMT0NLLCAmYmxvY2tlZCwgMCk7IGlmICghcHR5bmFt ZSkgeyBlbWFjc19jbG9zZSAoZmQpOyByZXR1cm4gLTE7IH0gc25wcmludGYgKHB0eV9uYW1l LCBQVFlfTkFNRV9TSVpFLCAiJXMiLCBwdHluYW1lKTsgfQp8ICNkZWZpbmUgUFRZX09QRU4g ZG8geyBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19DTE9FWEVDIHwgT19OT0NUVFkp OyBpZiAoZmQgPCAwICYmIGVycm5vID09IEVJTlZBTCkgZmQgPSBwb3NpeF9vcGVucHQgKE9f UkRXUiB8IE9fTk9DVFRZKTsgfSB3aGlsZSAoZmFsc2UpCnwgI2RlZmluZSBQVFlfTkFNRV9T UFJJTlRGIC8qKi8KfCAjZGVmaW5lIFNJR05BTFNfVklBX0NIQVJBQ1RFUlMgMQp8ICNkZWZp bmUgR0NfU0VUSk1QX1dPUktTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2Rl ZmluZSBIQVZFX19TRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRVRKTVAgMQp8ICNkZWZp bmUgSEFWRV9TVEFDS19PVkVSRkxPV19IQU5ETElORyAxCnwgI2RlZmluZSBVU0cgLyoqLwp8 ICNkZWZpbmUgR05VX0xJTlVYIC8qKi8KfCAjZGVmaW5lIFNJWkVPRl9TUEVFRF9UIDQKfCAj ZGVmaW5lIFVTQUJMRV9GSU9OUkVBRCAxCnwgI2RlZmluZSBVU0FCTEVfU0lHSU8gMQp8ICNk ZWZpbmUgQ09QWVJJR0hUICJDb3B5cmlnaHQgKEMpIDIwMjMgRnJlZSBTb2Z0d2FyZSBGb3Vu ZGF0aW9uLCBJbmMuIgp8ICNkZWZpbmUgVEVSTV9IRUFERVIgImd0a3V0aWwuaCIKfCAjZGVm aW5lIEVNQUNTX0NPTkZJR1VSQVRJT04gIng4Nl82NC1wYy1saW51eC1nbnUiCnwgI2RlZmlu ZSBFTUFDU19DT05GSUdfT1BUSU9OUyAiIgp8ICNkZWZpbmUgSEFWRV9YX1dJTkRPV1MgMQp8 ICNkZWZpbmUgSEFWRV9YMTEgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfQVRUUklCVVRFX0FM SUdORUQgMQp8ICNkZWZpbmUgSEFWRV9UWVBFT0YgMQp8ICNkZWZpbmUgSEFWRV9TVEFURU1F TlRfRVhQUkVTU0lPTlMgMQp8ICNkZWZpbmUgTUFMTE9DXzBfSVNfTk9OTlVMTCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19BQ0xfSCAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRklMRSAxCnwg I2RlZmluZSBIQVZFX0FDTF9HRVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZJTEUg MQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZSRUUg MQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9NT0RFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZS T01fVEVYVCAxCnwgI2RlZmluZSBIQVZFX0FDTF9ERUxFVEVfREVGX0ZJTEUgMQp8ICNkZWZp bmUgSEFWRV9BQ0xfRVhURU5ERURfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9MSUJBQ0xf SCAxCnwgI2RlZmluZSBIQVZFX0FDTF9FTlRSSUVTIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZJ UlNUX0VOVFJZIDEKfCAjZGVmaW5lIFVTRV9BQ0wgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0Ff SCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBMU1RBVF9GT0xMT1dTX1NM QVNIRURfU1lNTElOSyAxCnwgI2RlZmluZSBGVU5DX1JFQUxQQVRIX1dPUktTIDEKfCAjZGVm aW5lIEhBVkVfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfR0VUQ1dEIDEKfCAjZGVmaW5l IHJlc3RyaWN0IF9fcmVzdHJpY3RfXwp8ICNkZWZpbmUgSEFWRV9FTlZJUk9OX0RFQ0wgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX1NUUk1PREUgMAp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAx CnwgI2RlZmluZSBIQVZFX0dFVE9QVF9MT05HX09OTFkgMQp8ICNkZWZpbmUgSEFWRV9MT05H X0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfVU5TSUdORURfTE9OR19MT05HX0lOVCAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfTUVNTUVNIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9NRU1SQ0hS IDEKfCAjZGVmaW5lIEhBVkVfTUlOTUFYX0lOX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIFRJ TUVfVF9JU19TSUdORUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0FMQVJNIDEKfCAjZGVmaW5l IEhBVkVfU1RSVUNUX1RNX1RNX1pPTkUgMQp8ICNkZWZpbmUgSEFWRV9UTV9aT05FIDEKfCAj ZGVmaW5lIEhBVkVfVE1fR01UT0ZGIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUX1QgMQp8ICNk ZWZpbmUgSEFWRV9XQ0hBUl9UIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GQ0xPU0VBTEwgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX0dFVFcgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BVVFcgMQp8 ICNkZWZpbmUgX19VU0VfTUlOR1dfQU5TSV9TVERJTyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xf RUNWVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkNWVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xf R0NWVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSTkxFTiAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIF9VU0VfU1REX1NUQVQgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX0VYRUNWUEUgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0NMRUFSRVJSX1VOTE9DS0VE IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRU9GX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9GRVJST1JfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZGTFVTSF9VTkxP Q0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkdFVFNfVU5MT0NLRUQgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX0ZQVVRDX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GUFVUU19V TkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRlJFQURfVU5MT0NLRUQgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX0ZXUklURV9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VU Q19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VUQ0hBUl9VTkxPQ0tFRCAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfUFVUQ19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xf UFVUQ0hBUl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBHRVRHUk9VUFNfVCBnaWRfdAp8ICNkZWZp bmUgSEFWRV9ERUNMX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfUE9T SVggMQp8ICNkZWZpbmUgUFJPTU9URURfTU9ERV9UIG1vZGVfdAp8ICNkZWZpbmUgSEFWRV9X T1JLSU5HX1VUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBIQVZF X19fQlVJTFRJTl9FWFBFQ1QgMQp8ICNkZWZpbmUgSEFWRV9CWVRFU1dBUF9IIDEKfCAjZGVm aW5lIEdOVUxJQl9DQU5PTklDQUxJWkVfTEdQTCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5L QVQgMQp8ICNkZWZpbmUgSEFWRV9DTE9DS19HRVRSRVMgMQp8ICNkZWZpbmUgSEFWRV9DTE9D S19HRVRUSU1FIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tfU0VUVElNRSAxCnwgI2RlZmluZSBH TlVMSUJfQ0xPU0VfU1RSRUFNIDEKfCAjZGVmaW5lIEhBVkVfQ09QWV9GSUxFX1JBTkdFIDEK fCAjZGVmaW5lIEhBVkVfU1RSVUNUX0RJUkVOVF9EX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9G QUNDRVNTQVQgMQp8ICNkZWZpbmUgR05VTElCX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfRkRPUEVORElSIDEKfCAjZGVmaW5lIEdOVUxJQl9GRE9QRU5ESVIgMQp8ICNkZWZp bmUgR0VUWEFUVFJfV0lUSF9QT1NJWF9BQ0xTIDEKfCAjZGVmaW5lIEZMRVhJQkxFX0FSUkFZ X01FTUJFUiAvKiovCnwgI2RlZmluZSBIQVZFX0RFQ0xfX19GUEVORElORyAxCnwgI2RlZmlu ZSBIQVZFX0ZSRUVfUE9TSVggMQp8ICNkZWZpbmUgSEFWRV9TWVNfTU9VTlRfSCAxCnwgI2Rl ZmluZSBTVEFUX1NUQVRWRlMgMQp8ICNkZWZpbmUgU1RBVF9TVEFURlMyX0ZSU0laRSAxCnwg I2RlZmluZSBIQVZFX1NZU19TVEFURlNfSCAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRU5TIDEK fCAjZGVmaW5lIEhBVkVfR0VUTE9BREFWRyAxCnwgI2RlZmluZSBIQVZFX0dFVFJBTkRPTSAx CnwgI2RlZmluZSBIQVZFX1RJTUVTUEVDX0dFVCAxCnwgI2RlZmluZSBHRVRUSU1FT0ZEQVlf VElNRVpPTkUgdm9pZAp8ICNkZWZpbmUgSEFWRV9fX0lOTElORSAxCnwgI2RlZmluZSBIQVZF X0dNUF9IIDEKfCAjZGVmaW5lIEhBVkVfTUVNTUVNIDEKfCAjZGVmaW5lIEhBVkVfTUVNUENQ WSAxCnwgI2RlZmluZSBIQVZFX01FTVJDSFIgMQp8ICNkZWZpbmUgSEFWRV9NS09TVEVNUCAx CnwgI2RlZmluZSBHTlVMSUJfTUtPU1RFTVAgMQp8ICNkZWZpbmUgTkVFRF9NS1RJTUVfV09S S0lORyAxCnwgI2RlZmluZSBIQVZFX0JVR19CSUdfTkFOT1NMRUVQIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1BBUkFNX0ggMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAvKiBEZWZpbmUg c3lzbXAgdG8gYW4gaW5ub2N1b3VzIHZhcmlhbnQsIGluIGNhc2UgPGxpbWl0cy5oPiBkZWNs YXJlcyBzeXNtcC4KfCAgICBGb3IgZXhhbXBsZSwgSFAtVVggMTFpIDxsaW1pdHMuaD4gZGVj bGFyZXMgZ2V0dGltZW9mZGF5LiAgKi8KfCAjZGVmaW5lIHN5c21wIGlubm9jdW91c19zeXNt cAp8IAp8IC8qIFN5c3RlbSBoZWFkZXIgdG8gZGVmaW5lIF9fc3R1YiBtYWNyb3MgYW5kIGhv cGVmdWxseSBmZXcgcHJvdG90eXBlcywKfCAgICB3aGljaCBjYW4gY29uZmxpY3Qgd2l0aCBj aGFyIHN5c21wICgpOyBiZWxvdy4gICovCnwgCnwgI2luY2x1ZGUgPGxpbWl0cy5oPgp8ICN1 bmRlZiBzeXNtcAp8IAp8IC8qIE92ZXJyaWRlIGFueSBHQ0MgaW50ZXJuYWwgcHJvdG90eXBl IHRvIGF2b2lkIGFuIGVycm9yLgp8ICAgIFVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1h dGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIEdDQwp8ICAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRz IGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCnwgI2lmZGVmIF9f Y3BsdXNwbHVzCnwgZXh0ZXJuICJDIgp8ICNlbmRpZgp8IGNoYXIgc3lzbXAgKCk7CnwgLyog VGhlIEdOVSBDIGxpYnJhcnkgZGVmaW5lcyB0aGlzIGZvciBmdW5jdGlvbnMgd2hpY2ggaXQg aW1wbGVtZW50cwp8ICAgICB0byBhbHdheXMgZmFpbCB3aXRoIEVOT1NZUy4gIFNvbWUgZnVu Y3Rpb25zIGFyZSBhY3R1YWxseSBuYW1lZAp8ICAgICBzb21ldGhpbmcgc3RhcnRpbmcgd2l0 aCBfXyBhbmQgdGhlIG5vcm1hbCBuYW1lIGlzIGFuIGFsaWFzLiAgKi8KfCAjaWYgZGVmaW5l ZCBfX3N0dWJfc3lzbXAgfHwgZGVmaW5lZCBfX3N0dWJfX19zeXNtcAp8IGNob2tlIG1lCnwg I2VuZGlmCnwgCnwgaW50CnwgbWFpbiAodm9pZCkKfCB7CnwgcmV0dXJuIHN5c21wICgpOwp8 ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MzkyNTg6IHJlc3VsdDogbm8KY29u ZmlndXJlOjM5MjY0OiBjaGVja2luZyBmb3Igc3lzY3RsCmNvbmZpZ3VyZTozOTI2NDogZ2Nj IC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1IAovdXNyL2Jpbi9s ZDogL3RtcC9jY1NwdWJXQi5vOiBpbiBmdW5jdGlvbiBgbWFpbic6Ci9hcHAvZW1hY3MvY29u ZnRlc3QuYzo0MzA6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYHN5c2N0bCcKY29sbGVjdDI6 IGVycm9yOiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVzCmNvbmZpZ3VyZTozOTI2NDogJD8g PSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8K fCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9U QVJOQU1FICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMzAuMC41MCIKfCAj ZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1hY3MgMzAuMC41MCIKfCAjZGVmaW5lIFBB Q0tBR0VfQlVHUkVQT1JUICJidWctZ251LWVtYWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNL QUdFX1VSTCAiaHR0cHM6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmlu ZSBIQVZFX1BEVU1QRVIgMQp8ICNkZWZpbmUgSEFWRV9TVERJT19IIDEKfCAjZGVmaW5lIEhB VkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZF X0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZF X1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhB VkVfV0NIQVJfSCAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZTX0ggMQp8ICNkZWZpbmUgSEFW RV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TWVNJTkZPX0ggMQp8ICNkZWZpbmUg SEFWRV9QVFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5l IEhBVkVfVVRNUF9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0xTQU5fSU5URVJGQUNF X0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQVNBTl9JTlRFUkZBQ0VfSCAxCnwgI2Rl ZmluZSBIQVZFX1NBTklUSVpFUl9DT01NT05fSU5URVJGQUNFX0RFRlNfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAj ZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNk ZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX0VYRUNJTkZPX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVERJT19FWFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19WRlNfSCAxCnwg I2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0NERUZTX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfSUVFRTc1NF9IIDEK fCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0gg MQp8ICNkZWZpbmUgSEFWRV9TVERCT09MX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkFORE9N X0ggMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIF9BTExfU09VUkNFIDEK fCAjZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8 ICNkZWZpbmUgX0hQVVhfQUxUX1hPUEVOX1NPQ0tFVF9BUEkgMQp8ICNkZWZpbmUgX05FVEJT RF9TT1VSQ0UgMQp8ICNkZWZpbmUgX09QRU5CU0RfU09VUkNFIDEKfCAjZGVmaW5lIF9QT1NJ WF9QVEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlf QVRUUklCU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfQkZQX0VY VF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9ERlBfRVhUX18gMQp8ICNk ZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19X QU5UX0lFQ182MDU1OV9GVU5DU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNf NjA1NTlfVFlQRVNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfTElCX0VYVDJfXyAx CnwgI2RlZmluZSBfX1NURENfV0FOVF9NQVRIX1NQRUNfRlVOQ1NfXyAxCnwgI2RlZmluZSBf VEFOREVNX1NPVVJDRSAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBH Q0NfTElOVCAxCnwgI2RlZmluZSBTWVNURU1fVFlQRSAiZ251L2xpbnV4Igp8ICNkZWZpbmUg SEFWRV9TWVNfU09VTkRDQVJEX0ggMQp8ICNkZWZpbmUgSEFWRV9BTFNBIDEKfCAjZGVmaW5l IEhBVkVfU09VTkQgMQp8ICNkZWZpbmUgSEFWRV9QRVJTT05BTElUWV9BRERSX05PX1JBTkRP TUlaRSAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX1NZU0lORk8gMQp8ICNkZWZpbmUgTElOVVhf U1lTSU5GT19VTklUIDEKfCAjZGVmaW5lIEhBVkVfVEVSTV9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX05FVF9JRl9IIDEKfCAjZGVmaW5lIEhBVkVf SUZBRERSU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9GTEFHUyAxCnwg I2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfSFdBRERSIDEKfCAjZGVmaW5lIEhBVkVf U1RSVUNUX0lGUkVRX0lGUl9ORVRNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVR X0lGUl9CUk9BREFERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0FERFIg MQp8ICNkZWZpbmUgSEFWRV9TQlJLIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8 ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfVkZPUksgMQp8ICNkZWZpbmUg SEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9DQU5PTklDQUxJWkVfRklMRV9OQU1FIDEK fCAjZGVmaW5lIEhBVkVfUkVBTFBBVEggMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwgI2Rl ZmluZSBIQVZFX0ZDSE1PREFUIDEKfCAjZGVmaW5lIEhBVkVfTENITU9EIDEKfCAjZGVmaW5l IEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgSEFW RV9GU1RBVEFUIDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRU SU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9QU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfUFRI UkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFW RV9JU0JMQU5LIDEKfCAjZGVmaW5lIEhBVkVfSVNXQ1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9T VFJUT0lNQVggMQp8ICNkZWZpbmUgSEFWRV9TWU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVfTE9D QUxUSU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIFNZ U1RFTV9NQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9NTUFQIDEKfCAjZGVmaW5lIEhBVkVfUFRI UkVBRCAxCnwgI2RlZmluZSBUSFJFQURTX0VOQUJMRUQgMQp8ICNkZWZpbmUgSEFWRV9YS0Ig MQp8ICNkZWZpbmUgSEFWRV9YS0JSRUZSRVNIS0VZQk9BUkRNQVBQSU5HIDEKfCAjZGVmaW5l IEhBVkVfWEtCRlJFRU5BTUVTIDEKfCAjZGVmaW5lIEhBVkVfWFJNU0VUREFUQUJBU0UgMQp8 ICNkZWZpbmUgSEFWRV9YU0NSRUVOUkVTT1VSQ0VTVFJJTkcgMQp8ICNkZWZpbmUgSEFWRV9Y U0NSRUVOTlVNQkVST0ZTQ1JFRU4gMQp8ICNkZWZpbmUgSEFWRV9YRElTUExBWUNFTExTIDEK fCAjZGVmaW5lIEhBVkVfWERFU1RST1lTVUJXSU5ET1dTIDEKfCAjZGVmaW5lIEhBVkVfWDEx UjYgMQp8ICNkZWZpbmUgSEFWRV9YX0kxOE4gMQp8ICNkZWZpbmUgSEFWRV9YSUNDQUxMQkFD S19DQUxMQkFDSyAxCnwgI2RlZmluZSBIQVZFX1gxMVI2X1hJTSAxCnwgI2RlZmluZSBIQVZF X1JTVkcgMQp8ICNkZWZpbmUgSEFWRV9XRUJQIDEKfCAjZGVmaW5lIEhBVkVfU1FMSVRFMyAx CnwgI2RlZmluZSBIQVZFX1NRTElURTNfTE9BRF9FWFRFTlNJT04gMQp8ICNkZWZpbmUgSEFW RV9HRVRBRERSSU5GT19BIDEKfCAjZGVmaW5lIEhBVkVfR1RLMyAxCnwgI2RlZmluZSBHREtf RElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAxCnwgI2RlZmluZSBHTElCX0RJU0FCTEVf REVQUkVDQVRJT05fV0FSTklOR1MgMQp8ICNkZWZpbmUgVVNFX0dUSyAxCnwgI2RlZmluZSBI QVZFX01BTExPQ19UUklNIDEKfCAjZGVmaW5lIEhBVkVfREJVUyAxCnwgI2RlZmluZSBIQVZF X0RCVVNfV0FUQ0hfR0VUX1VOSVhfRkQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1RZUEVfSVNf VkFMSUQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0JVU19OQU1FIDEKfCAjZGVm aW5lIEhBVkVfREJVU19WQUxJREFURV9QQVRIIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJ REFURV9JTlRFUkZBQ0UgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX01FTUJFUiAx CnwgI2RlZmluZSBIQVZFX0dTRVRUSU5HUyAxCnwgI2RlZmluZSBIQVZFX0xJQlNFTElOVVgg MQp8ICNkZWZpbmUgSEFWRV9HTlVUTFMgMQp8ICNkZWZpbmUgSEFWRV9MSUJTWVNURU1EIDEK fCAjZGVmaW5lIEhBVkVfSlNPTiAxCnwgI2RlZmluZSBIQVZFX0lOT1RJRlkgMQp8ICNkZWZp bmUgVVNFX0ZJTEVfTk9USUZZIDEKfCAjZGVmaW5lIFVTRV9UT09MS0lUX1NDUk9MTF9CQVJT IDEKfCAjZGVmaW5lIEhBVkVfWElNIDEKfCAjZGVmaW5lIFVTRV9YSU0gMQp8ICNkZWZpbmUg SEFWRV9YUkVOREVSIDEKfCAjZGVmaW5lIFVTRV9DQUlST19YQ0IgMQp8ICNkZWZpbmUgVVNF X0NBSVJPIDEKfCAjZGVmaW5lIEhBVkVfRlJFRVRZUEUgMQp8ICNkZWZpbmUgSEFWRV9GVF9G QUNFX0dFVENIQVJWQVJJQU5USU5ERVggMQp8ICNkZWZpbmUgSEFWRV9MSUJPVEYgMQp8ICNk ZWZpbmUgSEFWRV9PVEZfR0VUX1ZBUklBVElPTl9HTFlQSFMgMQp8ICNkZWZpbmUgSEFWRV9N MTdOX0ZMVCAxCnwgI2RlZmluZSBIQVZFX0hBUkZCVVpaIDEKfCAjZGVmaW5lIFVTRV9YQ0Ig MQp8ICNkZWZpbmUgSEFWRV9YUE0gMQp8ICNkZWZpbmUgSEFWRV9KUEVHIDEKfCAjZGVmaW5l IEhBVkVfTENNUzIgMQp8ICNkZWZpbmUgSEFWRV9aTElCIDEKfCAjZGVmaW5lIERZTkFNSUNf TElCX1NVRkZJWCAiLnNvIgp8ICNkZWZpbmUgRFlOQU1JQ19MSUJfU0VDT05EQVJZX1NVRkZJ WCAiIgp8ICNkZWZpbmUgSEFWRV9ETEFERFIgMQp8ICNkZWZpbmUgSEFWRV9NT0RVTEVTIDEK fCAjZGVmaW5lIE1PRFVMRVNfU1VGRklYICIuc28iCnwgI2RlZmluZSBOQVRJVkVfRUxJU1Bf U1VGRklYICIuZWxuIgp8ICNkZWZpbmUgSEFWRV9QTkcgMQp8ICNkZWZpbmUgSEFWRV9USUZG IDEKfCAjZGVmaW5lIEhBVkVfR0lGIDEKfCAjZGVmaW5lIEhBVkVfR1BNIDEKfCAjZGVmaW5l IEhBVkVfWF9TTSAxCnwgI2RlZmluZSBIQVZFX1hSQU5EUiAxCnwgI2RlZmluZSBIQVZFX1hJ TkVSQU1BIDEKfCAjZGVmaW5lIEhBVkVfWEZJWEVTIDEKfCAjZGVmaW5lIEhBVkVfWElOUFVU MiAxCnwgI2RlZmluZSBIQVZFX1hJU0NST0xMQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUg SEFWRV9YSVRPVUNIQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YSUJBUlJJRVJS RUxFQVNFUE9JTlRFUklORk9fREVWSUNFSUQgMQp8ICNkZWZpbmUgSEFWRV9YSUdFU1RVUkVD TEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hTWU5DIDEKfCAjZGVmaW5lIEhBVkVf WFNZTkNUUklHR0VSRkVOQ0UgMQp8ICNkZWZpbmUgSEFWRV9YREJFIDEKfCAjZGVmaW5lIEhB VkVfWENCX1NIQVBFIDEKfCAjZGVmaW5lIEhBVkVfWFNIQVBFIDEKfCAjZGVmaW5lIEhBVkVf WENPTVBPU0lURSAxCnwgI2RlZmluZSBIQVZFX0xJQlhNTDIgMQp8ICNkZWZpbmUgSEFWRV9M SU5VWF9TRUNDT01QX0ggMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfU0VUX01PREVf RklMVEVSIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX0ZJTFRFUl9GTEFHX1RTWU5D IDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfRklMVEVSX0ggMQp8ICNkZWZpbmUgSEFWRV9ERUNM X1NFQ0NPTVBfU0VUX01PREVfRklMVEVSIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01Q X0ZJTFRFUl9GTEFHX1RTWU5DIDEKfCAjZGVmaW5lIFNJWkVPRl9MT05HIDgKfCAjZGVmaW5l IEhBVkVfQUNDRVBUNCAxCnwgI2RlZmluZSBIQVZFX0ZDSERJUiAxCnwgI2RlZmluZSBIQVZF X0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUUlVTQUdFIDEKfCAjZGVmaW5lIEhB VkVfR0VUX0NVUlJFTlRfRElSX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9MUkFORDQ4IDEKfCAj ZGVmaW5lIEhBVkVfUkFORE9NIDEKfCAjZGVmaW5lIEhBVkVfUklOVCAxCnwgI2RlZmluZSBI QVZFX1RSVU5DIDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfR0VU UEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9O RVdMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9T RVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TSFVURE9XTiAxCnwgI2RlZmluZSBIQVZFX1BU SFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlNJR05BTCAxCnwgI2RlZmluZSBI QVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX1NFTkRUTyAxCnwgI2RlZmluZSBIQVZF X1JFQ1ZGUk9NIDEKfCAjZGVmaW5lIEhBVkVfR0VUU09DS05BTUUgMQp8ICNkZWZpbmUgSEFW RV9HRVRJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfRlJFRUlGQUREUlMgMQp8ICNkZWZpbmUg SEFWRV9HQUlfU1RSRVJST1IgMQp8ICNkZWZpbmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhB VkVfR0VUUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRQV0VOVCAxCnwgI2RlZmluZSBIQVZF X0dFVEdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5ER1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9S RU5BTUVBVDIgMQp8ICNkZWZpbmUgSEFWRV9DRk1BS0VSQVcgMQp8ICNkZWZpbmUgSEFWRV9D RlNFVFNQRUVEIDEKfCAjZGVmaW5lIEhBVkVfX19FWEVDVVRBQkxFX1NUQVJUIDEKfCAjZGVm aW5lIEhBVkVfTE9HMiAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0VUTkFNRV9OUCAxCnwg I2RlZmluZSBIQVZFX0FMSUdORURfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0FMSUdO RURfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9NQURWSVNFIDEKfCAjZGVmaW5lIEhB VkVfX19CVUlMVElOX0ZSQU1FX0FERFJFU1MgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5f VU5XSU5EX0lOSVQgMQp8ICNkZWZpbmUgSEFWRV9GU0VFS08gMQp8ICNkZWZpbmUgSEFWRV9H UkFOVFBUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFQgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9P UEVOUFQgMQp8ICNkZWZpbmUgVEVSTUlORk8gMQp8ICNkZWZpbmUgVEVSTUlORk9fREVGSU5F U19CQyAxCnwgI2RlZmluZSBIQVZFX1RJTUVSRkQgMQp8ICNkZWZpbmUgSEFWRV9WQUxHUklO RF9WQUxHUklORF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1VOSVBBSVJfVU5JQ09ERSAx CnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5H X0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9TTlBSSU5URiAxCnwgI2RlZmluZSBIQVZFX1NQQVdO X0ggMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTiAxCnwgI2RlZmluZSBIQVZFX1BPU0lY X1NQQVdOX0ZJTEVfQUNUSU9OU19BRERDSERJUl9OUCAxCnwgI2RlZmluZSBIQVZFX1BPU0lY X1NQQVdOQVRUUl9TRVRGTEFHUyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUE9TSVhfU1BBV05f U0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVfR0xJQiAxCnwgI2RlZmluZSBIQVZFX0xBTkdJTkZP X0NPREVTRVQgMQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5GT19fTkxfUEFQRVJfV0lEVEggMQp8 ICNkZWZpbmUgSEFWRV9NQlNUQVRFX1QgMQp8ICNkZWZpbmUgQU1QRVJTQU5EX0ZVTExfTkFN RSAxCnwgI2RlZmluZSBIQVZFX1BUWVMgMQp8ICNkZWZpbmUgSEFWRV9TT0NLRVRTIDEKfCAj ZGVmaW5lIE5VTExfREVWSUNFICIvZGV2L251bGwiCnwgI2RlZmluZSBTRVBDSEFSICc6Jwp8 ICNkZWZpbmUgc3VicHJvY2Vzc2VzIDEKfCAjZGVmaW5lIFVTRVJfRlVMTF9OQU1FIHB3LT5w d19nZWNvcwp8ICNkZWZpbmUgRElSRUNUT1JZX1NFUCAnLycKfCAjZGVmaW5lIElTX0RFVklD RV9TRVAoX2NfKSAwCnwgI2RlZmluZSBJU19ESVJFQ1RPUllfU0VQKF9jXykgKChfY18pID09 IERJUkVDVE9SWV9TRVApCnwgI2RlZmluZSBJU19BTllfU0VQKF9jXykgKElTX0RJUkVDVE9S WV9TRVAgKF9jXykpCnwgI2RlZmluZSBIQVZFX1BST0NGUyAxCnwgI2RlZmluZSBERUZBVUxU X1NPVU5EX0RFVklDRSAiL2Rldi9kc3AiCnwgI2RlZmluZSBJTlRFUlJVUFRfSU5QVVQgMQp8 ICNkZWZpbmUgTkFSUk9XUFJPVE8gMQp8ICNkZWZpbmUgVU5JWDk4X1BUWVMgMQp8ICNkZWZp bmUgUFRZX0lURVJBVElPTiBpbnQgaTsgZm9yIChpID0gMDsgaSA8IDE7IGkrKykKfCAjZGVm aW5lIFBUWV9UVFlfTkFNRV9TUFJJTlRGIHsgY2hhciAqcHR5bmFtZSA9IDA7IHNpZ3NldF90 IGJsb2NrZWQ7IHNpZ2VtcHR5c2V0ICgmYmxvY2tlZCk7IHNpZ2FkZHNldCAoJmJsb2NrZWQs IFNJR0NITEQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19CTE9DSywgJmJsb2NrZWQsIDApOyBp ZiAoZ3JhbnRwdCAoZmQpICE9IC0xICYmIHVubG9ja3B0IChmZCkgIT0gLTEpIHB0eW5hbWUg PSBwdHNuYW1lKGZkKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfVU5CTE9DSywgJmJsb2NrZWQs IDApOyBpZiAoIXB0eW5hbWUpIHsgZW1hY3NfY2xvc2UgKGZkKTsgcmV0dXJuIC0xOyB9IHNu cHJpbnRmIChwdHlfbmFtZSwgUFRZX05BTUVfU0laRSwgIiVzIiwgcHR5bmFtZSk7IH0KfCAj ZGVmaW5lIFBUWV9PUEVOIGRvIHsgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fQ0xP RVhFQyB8IE9fTk9DVFRZKTsgaWYgKGZkIDwgMCAmJiBlcnJubyA9PSBFSU5WQUwpIGZkID0g cG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX05PQ1RUWSk7IH0gd2hpbGUgKGZhbHNlKQp8ICNk ZWZpbmUgUFRZX05BTUVfU1BSSU5URiAvKiovCnwgI2RlZmluZSBTSUdOQUxTX1ZJQV9DSEFS QUNURVJTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBHQ19TRVRK TVBfV09SS1MgMQp8ICNkZWZpbmUgSEFWRV9fU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU0lH U0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU1RBQ0tfT1ZFUkZMT1dfSEFORExJTkcgMQp8ICNk ZWZpbmUgVVNHIC8qKi8KfCAjZGVmaW5lIEdOVV9MSU5VWCAvKiovCnwgI2RlZmluZSBTSVpF T0ZfU1BFRURfVCA0CnwgI2RlZmluZSBVU0FCTEVfRklPTlJFQUQgMQp8ICNkZWZpbmUgVVNB QkxFX1NJR0lPIDEKfCAjZGVmaW5lIENPUFlSSUdIVCAiQ29weXJpZ2h0IChDKSAyMDIzIEZy ZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiIKfCAjZGVmaW5lIFRFUk1fSEVBREVSICJn dGt1dGlsLmgiCnwgI2RlZmluZSBFTUFDU19DT05GSUdVUkFUSU9OICJ4ODZfNjQtcGMtbGlu dXgtZ251Igp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHX09QVElPTlMgIiIKfCAjZGVmaW5lIEhB VkVfWF9XSU5ET1dTIDEKfCAjZGVmaW5lIEhBVkVfWDExIDEKfCAjZGVmaW5lIEhBVkVfU1RS VUNUX0FUVFJJQlVURV9BTElHTkVEIDEKfCAjZGVmaW5lIEhBVkVfVFlQRU9GIDEKfCAjZGVm aW5lIEhBVkVfU1RBVEVNRU5UX0VYUFJFU1NJT05TIDEKfCAjZGVmaW5lIE1BTExPQ18wX0lT X05PTk5VTEwgMQp8ICNkZWZpbmUgSEFWRV9TWVNfQUNMX0ggMQp8ICNkZWZpbmUgSEFWRV9B Q0xfR0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZEIDEKfCAjZGVmaW5lIEhB VkVfQUNMX1NFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX1NFVF9GRCAxCnwgI2RlZmlu ZSBIQVZFX0FDTF9GUkVFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZST01fTU9ERSAxCnwgI2Rl ZmluZSBIQVZFX0FDTF9GUk9NX1RFWFQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfREVMRVRFX0RF Rl9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VYVEVOREVEX0ZJTEUgMQp8ICNkZWZpbmUg SEFWRV9BQ0xfTElCQUNMX0ggMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRU5UUklFUyAxCnwgI2Rl ZmluZSBIQVZFX0FDTF9GSVJTVF9FTlRSWSAxCnwgI2RlZmluZSBVU0VfQUNMIDEKfCAjZGVm aW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUg TFNUQVRfRk9MTE9XU19TTEFTSEVEX1NZTUxJTksgMQp8ICNkZWZpbmUgRlVOQ19SRUFMUEFU SF9XT1JLUyAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0dF VENXRCAxCnwgI2RlZmluZSByZXN0cmljdCBfX3Jlc3RyaWN0X18KfCAjZGVmaW5lIEhBVkVf RU5WSVJPTl9ERUNMIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJNT0RFIDAKfCAjZGVmaW5l IEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfTE9OR19PTkxZIDEKfCAj ZGVmaW5lIEhBVkVfTE9OR19MT05HX0lOVCAxCnwgI2RlZmluZSBIQVZFX1VOU0lHTkVEX0xP TkdfTE9OR19JTlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX01FTU1FTSAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfTUVNUkNIUiAxCnwgI2RlZmluZSBIQVZFX01JTk1BWF9JTl9TWVNfUEFSQU1f SCAxCnwgI2RlZmluZSBUSU1FX1RfSVNfU0lHTkVEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9B TEFSTSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9UTV9UTV9aT05FIDEKfCAjZGVmaW5lIEhB VkVfVE1fWk9ORSAxCnwgI2RlZmluZSBIQVZFX1RNX0dNVE9GRiAxCnwgI2RlZmluZSBIQVZF X1NJR1NFVF9UIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfVCAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfRkNMT1NFQUxMIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRXIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9QVVRXIDEKfCAjZGVmaW5lIF9fVVNFX01JTkdXX0FOU0lfU1RESU8gMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX0VDVlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZDVlQgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX0dDVlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUk5MRU4gMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBfVVNFX1NURF9TVEFU IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9FWEVDVlBFIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9D TEVBUkVSUl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkVPRl9VTkxPQ0tFRCAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfRkVSUk9SX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9GRkxVU0hfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZHRVRTX1VOTE9D S0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GUFVUQ19VTkxPQ0tFRCAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfRlBVVFNfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZSRUFEX1VO TE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GV1JJVEVfVU5MT0NLRUQgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX0dFVENfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVENI QVJfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BVVENfVU5MT0NLRUQgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX1BVVENIQVJfVU5MT0NLRUQgMQp8ICNkZWZpbmUgR0VUR1JPVVBT X1QgZ2lkX3QKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5l IEhBVkVfTUFMTE9DX1BPU0lYIDEKfCAjZGVmaW5lIFBST01PVEVEX01PREVfVCBtb2RlX3QK fCAjZGVmaW5lIEhBVkVfV09SS0lOR19VVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0Eg MQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fRVhQRUNUIDEKfCAjZGVmaW5lIEhBVkVfQllU RVNXQVBfSCAxCnwgI2RlZmluZSBHTlVMSUJfQ0FOT05JQ0FMSVpFX0xHUEwgMQp8ICNkZWZp bmUgSEFWRV9SRUFETElOS0FUIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tfR0VUUkVTIDEKfCAj ZGVmaW5lIEhBVkVfQ0xPQ0tfR0VUVElNRSAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX1NFVFRJ TUUgMQp8ICNkZWZpbmUgR05VTElCX0NMT1NFX1NUUkVBTSAxCnwgI2RlZmluZSBIQVZFX0NP UFlfRklMRV9SQU5HRSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9ESVJFTlRfRF9UWVBFIDEK fCAjZGVmaW5lIEhBVkVfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEdOVUxJQl9GQUNDRVNTQVQg MQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBHTlVMSUJfRkRP UEVORElSIDEKfCAjZGVmaW5lIEdFVFhBVFRSX1dJVEhfUE9TSVhfQUNMUyAxCnwgI2RlZmlu ZSBGTEVYSUJMRV9BUlJBWV9NRU1CRVIgLyoqLwp8ICNkZWZpbmUgSEFWRV9ERUNMX19fRlBF TkRJTkcgMQp8ICNkZWZpbmUgSEFWRV9GUkVFX1BPU0lYIDEKfCAjZGVmaW5lIEhBVkVfU1lT X01PVU5UX0ggMQp8ICNkZWZpbmUgU1RBVF9TVEFUVkZTIDEKfCAjZGVmaW5lIFNUQVRfU1RB VEZTMl9GUlNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVEZTX0ggMQp8ICNkZWZpbmUg SEFWRV9GVVRJTUVOUyAxCnwgI2RlZmluZSBIQVZFX0dFVExPQURBVkcgMQp8ICNkZWZpbmUg SEFWRV9HRVRSQU5ET00gMQp8ICNkZWZpbmUgSEFWRV9USU1FU1BFQ19HRVQgMQp8ICNkZWZp bmUgR0VUVElNRU9GREFZX1RJTUVaT05FIHZvaWQKfCAjZGVmaW5lIEhBVkVfX19JTkxJTkUg MQp8ICNkZWZpbmUgSEFWRV9HTVBfSCAxCnwgI2RlZmluZSBIQVZFX01FTU1FTSAxCnwgI2Rl ZmluZSBIQVZFX01FTVBDUFkgMQp8ICNkZWZpbmUgSEFWRV9NRU1SQ0hSIDEKfCAjZGVmaW5l IEhBVkVfTUtPU1RFTVAgMQp8ICNkZWZpbmUgR05VTElCX01LT1NURU1QIDEKfCAjZGVmaW5l IE5FRURfTUtUSU1FX1dPUktJTkcgMQp8ICNkZWZpbmUgSEFWRV9CVUdfQklHX05BTk9TTEVF UCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4g ICovCnwgLyogRGVmaW5lIHN5c2N0bCB0byBhbiBpbm5vY3VvdXMgdmFyaWFudCwgaW4gY2Fz ZSA8bGltaXRzLmg+IGRlY2xhcmVzIHN5c2N0bC4KfCAgICBGb3IgZXhhbXBsZSwgSFAtVVgg MTFpIDxsaW1pdHMuaD4gZGVjbGFyZXMgZ2V0dGltZW9mZGF5LiAgKi8KfCAjZGVmaW5lIHN5 c2N0bCBpbm5vY3VvdXNfc3lzY3RsCnwgCnwgLyogU3lzdGVtIGhlYWRlciB0byBkZWZpbmUg X19zdHViIG1hY3JvcyBhbmQgaG9wZWZ1bGx5IGZldyBwcm90b3R5cGVzLAp8ICAgIHdoaWNo IGNhbiBjb25mbGljdCB3aXRoIGNoYXIgc3lzY3RsICgpOyBiZWxvdy4gICovCnwgCnwgI2lu Y2x1ZGUgPGxpbWl0cy5oPgp8ICN1bmRlZiBzeXNjdGwKfCAKfCAvKiBPdmVycmlkZSBhbnkg R0NDIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4KfCAgICBVc2UgY2hh ciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBHQ0MKfCAg ICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwg YXBwbHkuICAqLwp8ICNpZmRlZiBfX2NwbHVzcGx1cwp8IGV4dGVybiAiQyIKfCAjZW5kaWYK fCBjaGFyIHN5c2N0bCAoKTsKfCAvKiBUaGUgR05VIEMgbGlicmFyeSBkZWZpbmVzIHRoaXMg Zm9yIGZ1bmN0aW9ucyB3aGljaCBpdCBpbXBsZW1lbnRzCnwgICAgIHRvIGFsd2F5cyBmYWls IHdpdGggRU5PU1lTLiAgU29tZSBmdW5jdGlvbnMgYXJlIGFjdHVhbGx5IG5hbWVkCnwgICAg IHNvbWV0aGluZyBzdGFydGluZyB3aXRoIF9fIGFuZCB0aGUgbm9ybWFsIG5hbWUgaXMgYW4g YWxpYXMuICAqLwp8ICNpZiBkZWZpbmVkIF9fc3R1Yl9zeXNjdGwgfHwgZGVmaW5lZCBfX3N0 dWJfX19zeXNjdGwKfCBjaG9rZSBtZQp8ICNlbmRpZgp8IAp8IGludAp8IG1haW4gKHZvaWQp Cnwgewp8IHJldHVybiBzeXNjdGwgKCk7CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZp Z3VyZTozOTI2NDogcmVzdWx0OiBubwpjb25maWd1cmU6MzkyNzM6IGNoZWNraW5nIGZvciBz Y2hlZF9nZXRhZmZpbml0eQpjb25maWd1cmU6MzkzMTA6IGNoZWNraW5nIGZvciBzY2hlZF9n ZXRhZmZpbml0eQpjb25maWd1cmU6MzkzMTA6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAg ICAgY29uZnRlc3QuYyAgID4mNSAKY29uZmlndXJlOjM5MzEwOiAkPyA9IDAKY29uZmlndXJl OjM5MzEwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzkzMjU6IHJlc3VsdDogeWVzCmNvbmZp Z3VyZTozOTM0MTogY2hlY2tpbmcgZm9yIGdsaWJjIGNvbXBhdGlibGUgc2NoZWRfZ2V0YWZm aW5pdHkKY29uZmlndXJlOjM5MzU5OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4m NQpjb25maWd1cmU6MzkzNTk6ICQ/ID0gMApjb25maWd1cmU6MzkzNjg6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZTozOTQwMDogY2hlY2tpbmcgZm9yIHBpcGUyCmNvbmZpZ3VyZTozOTQzNzog Y2hlY2tpbmcgZm9yIHBpcGUyCmNvbmZpZ3VyZTozOTQzNzogZ2NjIC1vIGNvbmZ0ZXN0IC1n MyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1IApjb25maWd1cmU6Mzk0Mzc6ICQ/ID0gMApj b25maWd1cmU6Mzk0Mzc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozOTQ1MjogcmVzdWx0OiB5 ZXMKY29uZmlndXJlOjM5NDk2OiBjaGVja2luZyB3aGV0aGVyIHNpZ25hdHVyZSBvZiBwc2Vs ZWN0IGNvbmZvcm1zIHRvIFBPU0lYCmNvbmZpZ3VyZTozOTUxNzogZ2NjIC1vIGNvbmZ0ZXN0 IC1nMyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1IApjb25maWd1cmU6Mzk1MTc6ICQ/ID0g MApjb25maWd1cmU6Mzk1MjY6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozOTUyOTogY2hlY2tp bmcgd2hldGhlciBwc2VsZWN0IGRldGVjdHMgaW52YWxpZCBmZHMKY29uZmlndXJlOjM5NTgz OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCmNvbmZp Z3VyZTozOTU4MzogJD8gPSAwCmNvbmZpZ3VyZTozOTU4MzogLi9jb25mdGVzdApjb25maWd1 cmU6Mzk1ODM6ICQ/ID0gMApjb25maWd1cmU6Mzk1OTU6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy ZTozOTYzNTogY2hlY2tpbmcgd2hldGhlciBwdGhyZWFkX3NpZ21hc2sgaXMgYSBtYWNybwpj b25maWd1cmU6Mzk2NjE6IHJlc3VsdDogbm8KY29uZmlndXJlOjM5NjkyOiBjaGVja2luZyB3 aGV0aGVyIHB0aHJlYWRfc2lnbWFzayB3b3JrcyB3aXRob3V0IC1scHRocmVhZApjb25maWd1 cmU6Mzk3MjM6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAgID4m NSAKY29uZmlndXJlOjM5NzIzOiAkPyA9IDAKY29uZmlndXJlOjM5NzIzOiAuL2NvbmZ0ZXN0 CmNvbmZpZ3VyZTozOTcyMzogJD8gPSAxCmNvbmZpZ3VyZTogcHJvZ3JhbSBleGl0ZWQgd2l0 aCBzdGF0dXMgMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVm cy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBB Q0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMwLjAu NTAiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDMwLjAuNTAiCnwgI2Rl ZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZp bmUgUEFDS0FHRV9VUkwgImh0dHBzOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8 ICNkZWZpbmUgSEFWRV9QRFVNUEVSIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fSCAxCnwgI2Rl ZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZp bmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZp bmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2Rl ZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GU19IIDEKfCAjZGVm aW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAj ZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwg I2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9MU0FOX0lO VEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0FTQU5fSU5URVJGQUNFX0gg MQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQ09NTU9OX0lOVEVSRkFDRV9ERUZTX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1f SCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9I IDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19I IDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVkZT X0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19DREVG U19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX0lFRUU3 NTRfSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NF TEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1JBTkRPTV9IIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBfQUxMX1NP VVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09V UkNFIDEKfCAjZGVmaW5lIF9IUFVYX0FMVF9YT1BFTl9TT0NLRVRfQVBJIDEKfCAjZGVmaW5l IF9ORVRCU0RfU09VUkNFIDEKfCAjZGVmaW5lIF9PUEVOQlNEX1NPVVJDRSAxCnwgI2RlZmlu ZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVD XzYwNTU5X0FUVFJJQlNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5 X0JGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfREZQX0VYVF9f IDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9FWFRfXyAxCnwgI2RlZmluZSBf X1NURENfV0FOVF9JRUNfNjA1NTlfRlVOQ1NfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dB TlRfSUVDXzYwNTU5X1RZUEVTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0xJQl9F WFQyX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfTUFUSF9TUEVDX0ZVTkNTX18gMQp8ICNk ZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNk ZWZpbmUgR0NDX0xJTlQgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAj ZGVmaW5lIEhBVkVfU1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwg I2RlZmluZSBIQVZFX1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfQUREUl9O T19SQU5ET01JWkUgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVmaW5l IExJTlVYX1NZU0lORk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwgI2RlZmlu ZSBIQVZFX0lGQUREUlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxB R1MgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwgI2RlZmlu ZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlVD VF9JRlJFUV9JRlJfQlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lG Ul9BRERSIDEKfCAjZGVmaW5lIEhBVkVfU0JSSyAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VT SVpFIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEKfCAj ZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfQ0FOT05JQ0FMSVpFX0ZJTEVf TkFNRSAxCnwgI2RlZmluZSBIQVZFX1JFQUxQQVRIIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQg MQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0RBVCAxCnwgI2RlZmluZSBIQVZFX0xDSE1PRCAxCnwg I2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEKfCAjZGVm aW5lIEhBVkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhB VkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2RlZmluZSBI QVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVm aW5lIEhBVkVfSVNCTEFOSyAxCnwgI2RlZmluZSBIQVZFX0lTV0NUWVBFIDEKfCAjZGVmaW5l IEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBI QVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2Rl ZmluZSBTWVNURU1fTUFMTE9DIDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2RlZmluZSBI QVZFX1BUSFJFQUQgMQp8ICNkZWZpbmUgVEhSRUFEU19FTkFCTEVEIDEKfCAjZGVmaW5lIEhB VkVfWEtCIDEKfCAjZGVmaW5lIEhBVkVfWEtCUkVGUkVTSEtFWUJPQVJETUFQUElORyAxCnwg I2RlZmluZSBIQVZFX1hLQkZSRUVOQU1FUyAxCnwgI2RlZmluZSBIQVZFX1hSTVNFVERBVEFC QVNFIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RSSU5HIDEKfCAjZGVmaW5l IEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhBVkVfWERJU1BMQVlD RUxMUyAxCnwgI2RlZmluZSBIQVZFX1hERVNUUk9ZU1VCV0lORE9XUyAxCnwgI2RlZmluZSBI QVZFX1gxMVI2IDEKfCAjZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVmaW5lIEhBVkVfWElD Q0FMTEJBQ0tfQ0FMTEJBQ0sgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9YSU0gMQp8ICNkZWZp bmUgSEFWRV9SU1ZHIDEKfCAjZGVmaW5lIEhBVkVfV0VCUCAxCnwgI2RlZmluZSBIQVZFX1NR TElURTMgMQp8ICNkZWZpbmUgSEFWRV9TUUxJVEUzX0xPQURfRVhURU5TSU9OIDEKfCAjZGVm aW5lIEhBVkVfR0VUQUREUklORk9fQSAxCnwgI2RlZmluZSBIQVZFX0dUSzMgMQp8ICNkZWZp bmUgR0RLX0RJU0FCTEVfREVQUkVDQVRJT05fV0FSTklOR1MgMQp8ICNkZWZpbmUgR0xJQl9E SVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIFVTRV9HVEsgMQp8ICNk ZWZpbmUgSEFWRV9NQUxMT0NfVFJJTSAxCnwgI2RlZmluZSBIQVZFX0RCVVMgMQp8ICNkZWZp bmUgSEFWRV9EQlVTX1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19U WVBFX0lTX1ZBTElEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAx CnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmluZSBIQVZFX0RC VVNfVkFMSURBVEVfSU5URVJGQUNFIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9N RU1CRVIgMQp8ICNkZWZpbmUgSEFWRV9HU0VUVElOR1MgMQp8ICNkZWZpbmUgSEFWRV9MSUJT RUxJTlVYIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhBVkVfTElCU1lT VEVNRCAxCnwgI2RlZmluZSBIQVZFX0pTT04gMQp8ICNkZWZpbmUgSEFWRV9JTk9USUZZIDEK fCAjZGVmaW5lIFVTRV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBVU0VfVE9PTEtJVF9TQ1JP TExfQkFSUyAxCnwgI2RlZmluZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBVU0VfWElNIDEKfCAj ZGVmaW5lIEhBVkVfWFJFTkRFUiAxCnwgI2RlZmluZSBVU0VfQ0FJUk9fWENCIDEKfCAjZGVm aW5lIFVTRV9DQUlSTyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAjZGVmaW5lIEhB VkVfRlRfRkFDRV9HRVRDSEFSVkFSSUFOVElOREVYIDEKfCAjZGVmaW5lIEhBVkVfTElCT1RG IDEKfCAjZGVmaW5lIEhBVkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTIDEKfCAjZGVmaW5l IEhBVkVfTTE3Tl9GTFQgMQp8ICNkZWZpbmUgSEFWRV9IQVJGQlVaWiAxCnwgI2RlZmluZSBV U0VfWENCIDEKfCAjZGVmaW5lIEhBVkVfWFBNIDEKfCAjZGVmaW5lIEhBVkVfSlBFRyAxCnwg I2RlZmluZSBIQVZFX0xDTVMyIDEKfCAjZGVmaW5lIEhBVkVfWkxJQiAxCnwgI2RlZmluZSBE WU5BTUlDX0xJQl9TVUZGSVggIi5zbyIKfCAjZGVmaW5lIERZTkFNSUNfTElCX1NFQ09OREFS WV9TVUZGSVggIiIKfCAjZGVmaW5lIEhBVkVfRExBRERSIDEKfCAjZGVmaW5lIEhBVkVfTU9E VUxFUyAxCnwgI2RlZmluZSBNT0RVTEVTX1NVRkZJWCAiLnNvIgp8ICNkZWZpbmUgTkFUSVZF X0VMSVNQX1NVRkZJWCAiLmVsbiIKfCAjZGVmaW5lIEhBVkVfUE5HIDEKfCAjZGVmaW5lIEhB VkVfVElGRiAxCnwgI2RlZmluZSBIQVZFX0dJRiAxCnwgI2RlZmluZSBIQVZFX0dQTSAxCnwg I2RlZmluZSBIQVZFX1hfU00gMQp8ICNkZWZpbmUgSEFWRV9YUkFORFIgMQp8ICNkZWZpbmUg SEFWRV9YSU5FUkFNQSAxCnwgI2RlZmluZSBIQVZFX1hGSVhFUyAxCnwgI2RlZmluZSBIQVZF X1hJTlBVVDIgMQp8ICNkZWZpbmUgSEFWRV9YSVNDUk9MTENMQVNTSU5GT19UWVBFIDEKfCAj ZGVmaW5lIEhBVkVfWElUT1VDSENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWElC QVJSSUVSUkVMRUFTRVBPSU5URVJJTkZPX0RFVklDRUlEIDEKfCAjZGVmaW5lIEhBVkVfWElH RVNUVVJFQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQyAxCnwgI2RlZmlu ZSBIQVZFX1hTWU5DVFJJR0dFUkZFTkNFIDEKfCAjZGVmaW5lIEhBVkVfWERCRSAxCnwgI2Rl ZmluZSBIQVZFX1hDQl9TSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hTSEFQRSAxCnwgI2RlZmlu ZSBIQVZFX1hDT01QT1NJVEUgMQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwyIDEKfCAjZGVmaW5l IEhBVkVfTElOVVhfU0VDQ09NUF9IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX1NF VF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9GSUxURVJfRkxB R19UU1lOQyAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZJTFRFUl9IIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9TRUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xf U0VDQ09NUF9GSUxURVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA4Cnwg I2RlZmluZSBIQVZFX0FDQ0VQVDQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hESVIgMQp8ICNkZWZp bmUgSEFWRV9HRVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJVU0FHRSAxCnwgI2Rl ZmluZSBIQVZFX0dFVF9DVVJSRU5UX0RJUl9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfTFJBTkQ0 OCAxCnwgI2RlZmluZSBIQVZFX1JBTkRPTSAxCnwgI2RlZmluZSBIQVZFX1JJTlQgMQp8ICNk ZWZpbmUgSEFWRV9UUlVOQyAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBI QVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5l IEhBVkVfTkVXTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5l IEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUg SEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJTSUdOQUwgMQp8ICNk ZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9TRU5EVE8gMQp8ICNkZWZp bmUgSEFWRV9SRUNWRlJPTSAxCnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tOQU1FIDEKfCAjZGVm aW5lIEhBVkVfR0VUSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVJRkFERFJTIDEKfCAj ZGVmaW5lIEhBVkVfR0FJX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAxCnwgI2Rl ZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EUFdFTlQgMQp8ICNkZWZp bmUgSEFWRV9HRVRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0VOREdSRU5UIDEKfCAjZGVmaW5l IEhBVkVfUkVOQU1FQVQyIDEKfCAjZGVmaW5lIEhBVkVfQ0ZNQUtFUkFXIDEKfCAjZGVmaW5l IEhBVkVfQ0ZTRVRTUEVFRCAxCnwgI2RlZmluZSBIQVZFX19fRVhFQ1VUQUJMRV9TVEFSVCAx CnwgI2RlZmluZSBIQVZFX0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NFVE5BTUVf TlAgMQp8ICNkZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfTUFEVklTRSAxCnwgI2Rl ZmluZSBIQVZFX19fQlVJTFRJTl9GUkFNRV9BRERSRVNTIDEKfCAjZGVmaW5lIEhBVkVfX19C VUlMVElOX1VOV0lORF9JTklUIDEKfCAjZGVmaW5lIEhBVkVfRlNFRUtPIDEKfCAjZGVmaW5l IEhBVkVfR1JBTlRQVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBUIDEKfCAjZGVmaW5lIEhBVkVf UE9TSVhfT1BFTlBUIDEKfCAjZGVmaW5lIFRFUk1JTkZPIDEKfCAjZGVmaW5lIFRFUk1JTkZP X0RFRklORVNfQkMgMQp8ICNkZWZpbmUgSEFWRV9USU1FUkZEIDEKfCAjZGVmaW5lIEhBVkVf VkFMR1JJTkRfVkFMR1JJTkRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9VTklQQUlSX1VO SUNPREUgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVf V09SS0lOR19GT1JLIDEKfCAjZGVmaW5lIEhBVkVfU05QUklOVEYgMQp8ICNkZWZpbmUgSEFW RV9TUEFXTl9IIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV04gMQp8ICNkZWZpbmUgSEFW RV9QT1NJWF9TUEFXTl9GSUxFX0FDVElPTlNfQUREQ0hESVJfTlAgMQp8ICNkZWZpbmUgSEFW RV9QT1NJWF9TUEFXTkFUVFJfU0VURkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BPU0lY X1NQQVdOX1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX0dMSUIgMQp8ICNkZWZpbmUgSEFWRV9M QU5HSU5GT19DT0RFU0VUIDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fX05MX1BBUEVSX1dJ RFRIIDEKfCAjZGVmaW5lIEhBVkVfTUJTVEFURV9UIDEKfCAjZGVmaW5lIEFNUEVSU0FORF9G VUxMX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9QVFlTIDEKfCAjZGVmaW5lIEhBVkVfU09DS0VU UyAxCnwgI2RlZmluZSBOVUxMX0RFVklDRSAiL2Rldi9udWxsIgp8ICNkZWZpbmUgU0VQQ0hB UiAnOicKfCAjZGVmaW5lIHN1YnByb2Nlc3NlcyAxCnwgI2RlZmluZSBVU0VSX0ZVTExfTkFN RSBwdy0+cHdfZ2Vjb3MKfCAjZGVmaW5lIERJUkVDVE9SWV9TRVAgJy8nCnwgI2RlZmluZSBJ U19ERVZJQ0VfU0VQKF9jXykgMAp8ICNkZWZpbmUgSVNfRElSRUNUT1JZX1NFUChfY18pICgo X2NfKSA9PSBESVJFQ1RPUllfU0VQKQp8ICNkZWZpbmUgSVNfQU5ZX1NFUChfY18pIChJU19E SVJFQ1RPUllfU0VQIChfY18pKQp8ICNkZWZpbmUgSEFWRV9QUk9DRlMgMQp8ICNkZWZpbmUg REVGQVVMVF9TT1VORF9ERVZJQ0UgIi9kZXYvZHNwIgp8ICNkZWZpbmUgSU5URVJSVVBUX0lO UFVUIDEKfCAjZGVmaW5lIE5BUlJPV1BST1RPIDEKfCAjZGVmaW5lIFVOSVg5OF9QVFlTIDEK fCAjZGVmaW5lIFBUWV9JVEVSQVRJT04gaW50IGk7IGZvciAoaSA9IDA7IGkgPCAxOyBpKysp CnwgI2RlZmluZSBQVFlfVFRZX05BTUVfU1BSSU5URiB7IGNoYXIgKnB0eW5hbWUgPSAwOyBz aWdzZXRfdCBibG9ja2VkOyBzaWdlbXB0eXNldCAoJmJsb2NrZWQpOyBzaWdhZGRzZXQgKCZi bG9ja2VkLCBTSUdDSExEKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfQkxPQ0ssICZibG9ja2Vk LCAwKTsgaWYgKGdyYW50cHQgKGZkKSAhPSAtMSAmJiB1bmxvY2twdCAoZmQpICE9IC0xKSBw dHluYW1lID0gcHRzbmFtZShmZCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX1VOQkxPQ0ssICZi bG9ja2VkLCAwKTsgaWYgKCFwdHluYW1lKSB7IGVtYWNzX2Nsb3NlIChmZCk7IHJldHVybiAt MTsgfSBzbnByaW50ZiAocHR5X25hbWUsIFBUWV9OQU1FX1NJWkUsICIlcyIsIHB0eW5hbWUp OyB9CnwgI2RlZmluZSBQVFlfT1BFTiBkbyB7IGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1Ig fCBPX0NMT0VYRUMgfCBPX05PQ1RUWSk7IGlmIChmZCA8IDAgJiYgZXJybm8gPT0gRUlOVkFM KSBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19OT0NUVFkpOyB9IHdoaWxlIChmYWxz ZSkKfCAjZGVmaW5lIFBUWV9OQU1FX1NQUklOVEYgLyoqLwp8ICNkZWZpbmUgU0lHTkFMU19W SUFfQ0hBUkFDVEVSUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUg R0NfU0VUSk1QX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfX1NFVEpNUCAxCnwgI2RlZmluZSBI QVZFX1NJR1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NUQUNLX09WRVJGTE9XX0hBTkRMSU5H IDEKfCAjZGVmaW5lIFVTRyAvKiovCnwgI2RlZmluZSBHTlVfTElOVVggLyoqLwp8ICNkZWZp bmUgU0laRU9GX1NQRUVEX1QgNAp8ICNkZWZpbmUgVVNBQkxFX0ZJT05SRUFEIDEKfCAjZGVm aW5lIFVTQUJMRV9TSUdJTyAxCnwgI2RlZmluZSBDT1BZUklHSFQgIkNvcHlyaWdodCAoQykg MjAyMyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4iCnwgI2RlZmluZSBURVJNX0hF QURFUiAiZ3RrdXRpbC5oIgp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHVVJBVElPTiAieDg2XzY0 LXBjLWxpbnV4LWdudSIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR19PUFRJT05TICIiCnwgI2Rl ZmluZSBIQVZFX1hfV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gxMSAxCnwgI2RlZmluZSBI QVZFX1NUUlVDVF9BVFRSSUJVVEVfQUxJR05FRCAxCnwgI2RlZmluZSBIQVZFX1RZUEVPRiAx CnwgI2RlZmluZSBIQVZFX1NUQVRFTUVOVF9FWFBSRVNTSU9OUyAxCnwgI2RlZmluZSBNQUxM T0NfMF9JU19OT05OVUxMIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0FDTF9IIDEKfCAjZGVmaW5l IEhBVkVfQUNMX0dFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GRCAxCnwgI2Rl ZmluZSBIQVZFX0FDTF9TRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRkQgMQp8 ICNkZWZpbmUgSEFWRV9BQ0xfRlJFRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX01PREUg MQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9URVhUIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0RF TEVURV9ERUZfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9FWFRFTkRFRF9GSUxFIDEKfCAj ZGVmaW5lIEhBVkVfQUNMX0xJQkFDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VOVFJJRVMg MQp8ICNkZWZpbmUgSEFWRV9BQ0xfRklSU1RfRU5UUlkgMQp8ICNkZWZpbmUgVVNFX0FDTCAx CnwgI2RlZmluZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAj ZGVmaW5lIExTVEFUX0ZPTExPV1NfU0xBU0hFRF9TWU1MSU5LIDEKfCAjZGVmaW5lIEZVTkNf UkVBTFBBVEhfV09SS1MgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUg SEFWRV9HRVRDV0QgMQp8ICNkZWZpbmUgcmVzdHJpY3QgX19yZXN0cmljdF9fCnwgI2RlZmlu ZSBIQVZFX0VOVklST05fREVDTCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSTU9ERSAwCnwg I2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0xPTkdfT05M WSAxCnwgI2RlZmluZSBIQVZFX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUgSEFWRV9VTlNJ R05FRF9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9NRU1NRU0gMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX01FTVJDSFIgMQp8ICNkZWZpbmUgSEFWRV9NSU5NQVhfSU5fU1lT X1BBUkFNX0ggMQp8ICNkZWZpbmUgVElNRV9UX0lTX1NJR05FRCAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfQUxBUk0gMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVE1fVE1fWk9ORSAxCnwgI2Rl ZmluZSBIQVZFX1RNX1pPTkUgMQp8ICNkZWZpbmUgSEFWRV9UTV9HTVRPRkYgMQp8ICNkZWZp bmUgSEFWRV9TSUdTRVRfVCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX1QgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX0ZDTE9TRUFMTCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VUVyAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfUFVUVyAxCnwgI2RlZmluZSBfX1VTRV9NSU5HV19BTlNJX1NURElP IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9FQ1ZUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GQ1ZU IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HQ1ZUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJO TEVOIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJUT0lNQVggMQp8ICNkZWZpbmUgX1VTRV9T VERfU1RBVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRVhFQ1ZQRSAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfQ0xFQVJFUlJfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZFT0ZfVU5M T0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZFUlJPUl9VTkxPQ0tFRCAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfRkZMVVNIX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GR0VU U19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRlBVVENfVU5MT0NLRUQgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX0ZQVVRTX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9G UkVBRF9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRldSSVRFX1VOTE9DS0VEIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9HRVRDX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9HRVRDSEFSX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRDX1VOTE9DS0VE IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRDSEFSX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEdF VEdST1VQU19UIGdpZF90CnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VURFRBQkxFU0laRSAxCnwg I2RlZmluZSBIQVZFX01BTExPQ19QT1NJWCAxCnwgI2RlZmluZSBQUk9NT1RFRF9NT0RFX1Qg bW9kZV90CnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVf QUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX0VYUEVDVCAxCnwgI2RlZmluZSBI QVZFX0JZVEVTV0FQX0ggMQp8ICNkZWZpbmUgR05VTElCX0NBTk9OSUNBTElaRV9MR1BMIDEK fCAjZGVmaW5lIEhBVkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX0dFVFJF UyAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX0dFVFRJTUUgMQp8ICNkZWZpbmUgSEFWRV9DTE9D S19TRVRUSU1FIDEKfCAjZGVmaW5lIEdOVUxJQl9DTE9TRV9TVFJFQU0gMQp8ICNkZWZpbmUg SEFWRV9DT1BZX0ZJTEVfUkFOR0UgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfRElSRU5UX0Rf VFlQRSAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBHTlVMSUJfRkFD Q0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgR05V TElCX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBHRVRYQVRUUl9XSVRIX1BPU0lYX0FDTFMgMQp8 ICNkZWZpbmUgRkxFWElCTEVfQVJSQVlfTUVNQkVSIC8qKi8KfCAjZGVmaW5lIEhBVkVfREVD TF9fX0ZQRU5ESU5HIDEKfCAjZGVmaW5lIEhBVkVfRlJFRV9QT1NJWCAxCnwgI2RlZmluZSBI QVZFX1NZU19NT1VOVF9IIDEKfCAjZGVmaW5lIFNUQVRfU1RBVFZGUyAxCnwgI2RlZmluZSBT VEFUX1NUQVRGUzJfRlJTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRGU19IIDEKfCAj ZGVmaW5lIEhBVkVfRlVUSU1FTlMgMQp8ICNkZWZpbmUgSEFWRV9HRVRMT0FEQVZHIDEKfCAj ZGVmaW5lIEhBVkVfR0VUUkFORE9NIDEKfCAjZGVmaW5lIEhBVkVfVElNRVNQRUNfR0VUIDEK fCAjZGVmaW5lIEdFVFRJTUVPRkRBWV9USU1FWk9ORSB2b2lkCnwgI2RlZmluZSBIQVZFX19f SU5MSU5FIDEKfCAjZGVmaW5lIEhBVkVfR01QX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1NRU0g MQp8ICNkZWZpbmUgSEFWRV9NRU1QQ1BZIDEKfCAjZGVmaW5lIEhBVkVfTUVNUkNIUiAxCnwg I2RlZmluZSBIQVZFX01LT1NURU1QIDEKfCAjZGVmaW5lIEdOVUxJQl9NS09TVEVNUCAxCnwg I2RlZmluZSBORUVEX01LVElNRV9XT1JLSU5HIDEKfCAjZGVmaW5lIEhBVkVfQlVHX0JJR19O QU5PU0xFRVAgMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZF X1NDSEVEX0dFVEFGRklOSVRZIDEKfCAjZGVmaW5lIEhBVkVfU0NIRURfR0VUQUZGSU5JVFlf TElLRV9HTElCQyAxCnwgI2RlZmluZSBteV9zdHJmdGltZSBuc3RyZnRpbWUKfCAjZGVmaW5l IEhBVkVfUElQRTIgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAgICAgICAgICAg ICAgICAgICAgI2luY2x1ZGUgPHB0aHJlYWQuaD4KfCAgICAgICAgICAgICAgICAgICAgI2lu Y2x1ZGUgPHNpZ25hbC5oPgp8ICAgICAgICAgICAgICAgICAgICAjaW5jbHVkZSA8c3RkZGVm Lmg+CnwgICAgICAgICAgICAgICAgICAgIGludCBtYWluICgpCnwgICAgICAgICAgICAgICAg ICAgIHsKfCAgICAgICAgICAgICAgICAgICAgICBzaWdzZXRfdCBzZXQ7CnwgICAgICAgICAg ICAgICAgICAgICAgc2lnZW1wdHlzZXQgKCZzZXQpOwp8ICAgICAgICAgICAgICAgICAgICAg IHJldHVybiBwdGhyZWFkX3NpZ21hc2sgKDE3MjksICZzZXQsIE5VTEwpICE9IDA7CnwgICAg ICAgICAgICAgICAgICAgIH0KY29uZmlndXJlOjM5NzM1OiByZXN1bHQ6IHllcwpjb25maWd1 cmU6Mzk3NDg6IGNoZWNraW5nIHdoZXRoZXIgcHRocmVhZF9zaWdtYXNrIHJldHVybnMgZXJy b3IgbnVtYmVycwpjb25maWd1cmU6Mzk3ODI6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAg ICAgY29uZnRlc3QuYyAgICA+JjUgCmNvbmZpZ3VyZTozOTc4MjogJD8gPSAwCmNvbmZpZ3Vy ZTozOTc4MjogLi9jb25mdGVzdApjb25maWd1cmU6Mzk3ODI6ICQ/ID0gMApjb25maWd1cmU6 Mzk3OTU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozOTgwNjogY2hlY2tpbmcgd2hldGhlciBw dGhyZWFkX3NpZ21hc2sgdW5ibG9ja3Mgc2lnbmFscyBjb3JyZWN0bHkKY29uZmlndXJlOjM5 ODY4OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCmNv bmZpZ3VyZTozOTg2ODogJD8gPSAwCmNvbmZpZ3VyZTozOTg2ODogLi9jb25mdGVzdApjb25m aWd1cmU6Mzk4Njg6ICQ/ID0gMApjb25maWd1cmU6Mzk4ODE6IHJlc3VsdDogZ3Vlc3Npbmcg eWVzCmNvbmZpZ3VyZTozOTk0MjogY2hlY2tpbmcgZm9yIHhhdHRyIGxpYnJhcnkgd2l0aCBB VFRSX0FDVElPTl9QRVJNSVNTSU9OUwpjb25maWd1cmU6Mzk5Njg6IGdjYyAtbyBjb25mdGVz dCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAgID4mNSAKL3Vzci9iaW4vbGQ6IC90bXAvY2N4 UmlvNVIubzogaW4gZnVuY3Rpb24gYGlzX2F0dHJfcGVybWlzc2lvbnMnOgovYXBwL2VtYWNz L2NvbmZ0ZXN0LmM6NDEyOiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBhdHRyX2NvcHlfYWN0 aW9uJwovdXNyL2Jpbi9sZDogL3RtcC9jY3hSaW81Ui5vOiBpbiBmdW5jdGlvbiBgbWFpbic6 Ci9hcHAvZW1hY3MvY29uZnRlc3QuYzo0MTg6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYGF0 dHJfY29weV9mZCcKY29sbGVjdDI6IGVycm9yOiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVz CmNvbmZpZ3VyZTozOTk2ODogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2Fz Ogp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNz Igp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0Vf VkVSU0lPTiAiMzAuMC41MCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1hY3Mg MzAuMC41MCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ251LWVtYWNzQGdu dS5vcmciCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0cHM6Ly93d3cuZ251Lm9yZy9zb2Z0 d2FyZS9lbWFjcy8iCnwgI2RlZmluZSBIQVZFX1BEVU1QRVIgMQp8ICNkZWZpbmUgSEFWRV9T VERJT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJ TkdfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJ TlRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19T VEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1VO SVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfSCAxCnwgI2RlZmluZSBIQVZFX0xJTlVY X0ZTX0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19T WVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9QVFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19S RVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBI QVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUF9IIDEKfCAjZGVmaW5lIEhBVkVfU0FO SVRJWkVSX0xTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQVNB Tl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9DT01NT05fSU5URVJG QUNFX0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBI QVZFX0VYRUNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJT19FWFRfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19WRlNfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX0NERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVm aW5lIEhBVkVfSUVFRTc1NF9IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERCT09MX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfUkFORE9NX0ggMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAj ZGVmaW5lIF9BTExfU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8ICNk ZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0hQVVhfQUxUX1hPUEVOX1NPQ0tFVF9B UEkgMQp8ICNkZWZpbmUgX05FVEJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUgX09QRU5CU0RfU09V UkNFIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBf X1NURENfV0FOVF9JRUNfNjA1NTlfQVRUUklCU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENf V0FOVF9JRUNfNjA1NTlfQkZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182 MDU1OV9ERlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0VYVF9f IDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9GVU5DU19FWFRfXyAxCnwgI2Rl ZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfVFlQRVNfRVhUX18gMQp8ICNkZWZpbmUgX19T VERDX1dBTlRfTElCX0VYVDJfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9NQVRIX1NQRUNf RlVOQ1NfXyAxCnwgI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCnwgI2RlZmluZSBfX0VYVEVO U0lPTlNfXyAxCnwgI2RlZmluZSBHQ0NfTElOVCAxCnwgI2RlZmluZSBTWVNURU1fVFlQRSAi Z251L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJEX0ggMQp8ICNkZWZpbmUg SEFWRV9BTFNBIDEKfCAjZGVmaW5lIEhBVkVfU09VTkQgMQp8ICNkZWZpbmUgSEFWRV9QRVJT T05BTElUWV9BRERSX05PX1JBTkRPTUlaRSAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX1NZU0lO Rk8gMQp8ICNkZWZpbmUgTElOVVhfU1lTSU5GT19VTklUIDEKfCAjZGVmaW5lIEhBVkVfVEVS TV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX05FVF9J Rl9IIDEKfCAjZGVmaW5lIEhBVkVfSUZBRERSU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNU X0lGUkVRX0lGUl9GTEFHUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfSFdB RERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9ORVRNQVNLIDEKfCAjZGVm aW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9CUk9BREFERFIgMQp8ICNkZWZpbmUgSEFWRV9T VFJVQ1RfSUZSRVFfSUZSX0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TQlJLIDEKfCAjZGVmaW5l IEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhB VkVfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9DQU5P TklDQUxJWkVfRklMRV9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUkVBTFBBVEggMQp8ICNkZWZp bmUgSEFWRV9MU1RBVCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PREFUIDEKfCAjZGVmaW5lIEhB VkVfTENITU9EIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9GRE9Q RU5ESVIgMQp8ICNkZWZpbmUgSEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMg MQp8ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9QU0VMRUNU IDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfUkVB RExJTksgMQp8ICNkZWZpbmUgSEFWRV9JU0JMQU5LIDEKfCAjZGVmaW5lIEhBVkVfSVNXQ1RZ UEUgMQp8ICNkZWZpbmUgSEFWRV9TVFJUT0lNQVggMQp8ICNkZWZpbmUgSEFWRV9TWU1MSU5L IDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFC TEVTSVpFIDEKfCAjZGVmaW5lIFNZU1RFTV9NQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9NTUFQ IDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRCAxCnwgI2RlZmluZSBUSFJFQURTX0VOQUJMRUQg MQp8ICNkZWZpbmUgSEFWRV9YS0IgMQp8ICNkZWZpbmUgSEFWRV9YS0JSRUZSRVNIS0VZQk9B UkRNQVBQSU5HIDEKfCAjZGVmaW5lIEhBVkVfWEtCRlJFRU5BTUVTIDEKfCAjZGVmaW5lIEhB VkVfWFJNU0VUREFUQUJBU0UgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOUkVTT1VSQ0VTVFJJ TkcgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOTlVNQkVST0ZTQ1JFRU4gMQp8ICNkZWZpbmUg SEFWRV9YRElTUExBWUNFTExTIDEKfCAjZGVmaW5lIEhBVkVfWERFU1RST1lTVUJXSU5ET1dT IDEKfCAjZGVmaW5lIEhBVkVfWDExUjYgMQp8ICNkZWZpbmUgSEFWRV9YX0kxOE4gMQp8ICNk ZWZpbmUgSEFWRV9YSUNDQUxMQkFDS19DQUxMQkFDSyAxCnwgI2RlZmluZSBIQVZFX1gxMVI2 X1hJTSAxCnwgI2RlZmluZSBIQVZFX1JTVkcgMQp8ICNkZWZpbmUgSEFWRV9XRUJQIDEKfCAj ZGVmaW5lIEhBVkVfU1FMSVRFMyAxCnwgI2RlZmluZSBIQVZFX1NRTElURTNfTE9BRF9FWFRF TlNJT04gMQp8ICNkZWZpbmUgSEFWRV9HRVRBRERSSU5GT19BIDEKfCAjZGVmaW5lIEhBVkVf R1RLMyAxCnwgI2RlZmluZSBHREtfRElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAxCnwg I2RlZmluZSBHTElCX0RJU0FCTEVfREVQUkVDQVRJT05fV0FSTklOR1MgMQp8ICNkZWZpbmUg VVNFX0dUSyAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19UUklNIDEKfCAjZGVmaW5lIEhBVkVf REJVUyAxCnwgI2RlZmluZSBIQVZFX0RCVVNfV0FUQ0hfR0VUX1VOSVhfRkQgMQp8ICNkZWZp bmUgSEFWRV9EQlVTX1RZUEVfSVNfVkFMSUQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElE QVRFX0JVU19OQU1FIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9QQVRIIDEKfCAj ZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9JTlRFUkZBQ0UgMQp8ICNkZWZpbmUgSEFWRV9E QlVTX1ZBTElEQVRFX01FTUJFUiAxCnwgI2RlZmluZSBIQVZFX0dTRVRUSU5HUyAxCnwgI2Rl ZmluZSBIQVZFX0xJQlNFTElOVVggMQp8ICNkZWZpbmUgSEFWRV9HTlVUTFMgMQp8ICNkZWZp bmUgSEFWRV9MSUJTWVNURU1EIDEKfCAjZGVmaW5lIEhBVkVfSlNPTiAxCnwgI2RlZmluZSBI QVZFX0lOT1RJRlkgMQp8ICNkZWZpbmUgVVNFX0ZJTEVfTk9USUZZIDEKfCAjZGVmaW5lIFVT RV9UT09MS0lUX1NDUk9MTF9CQVJTIDEKfCAjZGVmaW5lIEhBVkVfWElNIDEKfCAjZGVmaW5l IFVTRV9YSU0gMQp8ICNkZWZpbmUgSEFWRV9YUkVOREVSIDEKfCAjZGVmaW5lIFVTRV9DQUlS T19YQ0IgMQp8ICNkZWZpbmUgVVNFX0NBSVJPIDEKfCAjZGVmaW5lIEhBVkVfRlJFRVRZUEUg MQp8ICNkZWZpbmUgSEFWRV9GVF9GQUNFX0dFVENIQVJWQVJJQU5USU5ERVggMQp8ICNkZWZp bmUgSEFWRV9MSUJPVEYgMQp8ICNkZWZpbmUgSEFWRV9PVEZfR0VUX1ZBUklBVElPTl9HTFlQ SFMgMQp8ICNkZWZpbmUgSEFWRV9NMTdOX0ZMVCAxCnwgI2RlZmluZSBIQVZFX0hBUkZCVVpa IDEKfCAjZGVmaW5lIFVTRV9YQ0IgMQp8ICNkZWZpbmUgSEFWRV9YUE0gMQp8ICNkZWZpbmUg SEFWRV9KUEVHIDEKfCAjZGVmaW5lIEhBVkVfTENNUzIgMQp8ICNkZWZpbmUgSEFWRV9aTElC IDEKfCAjZGVmaW5lIERZTkFNSUNfTElCX1NVRkZJWCAiLnNvIgp8ICNkZWZpbmUgRFlOQU1J Q19MSUJfU0VDT05EQVJZX1NVRkZJWCAiIgp8ICNkZWZpbmUgSEFWRV9ETEFERFIgMQp8ICNk ZWZpbmUgSEFWRV9NT0RVTEVTIDEKfCAjZGVmaW5lIE1PRFVMRVNfU1VGRklYICIuc28iCnwg I2RlZmluZSBOQVRJVkVfRUxJU1BfU1VGRklYICIuZWxuIgp8ICNkZWZpbmUgSEFWRV9QTkcg MQp8ICNkZWZpbmUgSEFWRV9USUZGIDEKfCAjZGVmaW5lIEhBVkVfR0lGIDEKfCAjZGVmaW5l IEhBVkVfR1BNIDEKfCAjZGVmaW5lIEhBVkVfWF9TTSAxCnwgI2RlZmluZSBIQVZFX1hSQU5E UiAxCnwgI2RlZmluZSBIQVZFX1hJTkVSQU1BIDEKfCAjZGVmaW5lIEhBVkVfWEZJWEVTIDEK fCAjZGVmaW5lIEhBVkVfWElOUFVUMiAxCnwgI2RlZmluZSBIQVZFX1hJU0NST0xMQ0xBU1NJ TkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YSVRPVUNIQ0xBU1NJTkZPX1RZUEUgMQp8ICNk ZWZpbmUgSEFWRV9YSUJBUlJJRVJSRUxFQVNFUE9JTlRFUklORk9fREVWSUNFSUQgMQp8ICNk ZWZpbmUgSEFWRV9YSUdFU1RVUkVDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hT WU5DIDEKfCAjZGVmaW5lIEhBVkVfWFNZTkNUUklHR0VSRkVOQ0UgMQp8ICNkZWZpbmUgSEFW RV9YREJFIDEKfCAjZGVmaW5lIEhBVkVfWENCX1NIQVBFIDEKfCAjZGVmaW5lIEhBVkVfWFNI QVBFIDEKfCAjZGVmaW5lIEhBVkVfWENPTVBPU0lURSAxCnwgI2RlZmluZSBIQVZFX0xJQlhN TDIgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TRUNDT01QX0ggMQp8ICNkZWZpbmUgSEFWRV9E RUNMX1NFQ0NPTVBfU0VUX01PREVfRklMVEVSIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUND T01QX0ZJTFRFUl9GTEFHX1RTWU5DIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfRklMVEVSX0gg MQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfU0VUX01PREVfRklMVEVSIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9TRUNDT01QX0ZJTFRFUl9GTEFHX1RTWU5DIDEKfCAjZGVmaW5lIFNJ WkVPRl9MT05HIDgKfCAjZGVmaW5lIEhBVkVfQUNDRVBUNCAxCnwgI2RlZmluZSBIQVZFX0ZD SERJUiAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VU UlVTQUdFIDEKfCAjZGVmaW5lIEhBVkVfR0VUX0NVUlJFTlRfRElSX05BTUUgMQp8ICNkZWZp bmUgSEFWRV9MUkFORDQ4IDEKfCAjZGVmaW5lIEhBVkVfUkFORE9NIDEKfCAjZGVmaW5lIEhB VkVfUklOVCAxCnwgI2RlZmluZSBIQVZFX1RSVU5DIDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNU IDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRVRMT0NB TEUgMQp8ICNkZWZpbmUgSEFWRV9ORVdMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSTElN SVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TSFVURE9X TiAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NU UlNJR05BTCAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX1NF TkRUTyAxCnwgI2RlZmluZSBIQVZFX1JFQ1ZGUk9NIDEKfCAjZGVmaW5lIEhBVkVfR0VUU09D S05BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfRlJF RUlGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9HQUlfU1RSRVJST1IgMQp8ICNkZWZpbmUgSEFW RV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRQ V0VOVCAxCnwgI2RlZmluZSBIQVZFX0dFVEdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5ER1JF TlQgMQp8ICNkZWZpbmUgSEFWRV9SRU5BTUVBVDIgMQp8ICNkZWZpbmUgSEFWRV9DRk1BS0VS QVcgMQp8ICNkZWZpbmUgSEFWRV9DRlNFVFNQRUVEIDEKfCAjZGVmaW5lIEhBVkVfX19FWEVD VVRBQkxFX1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVfTE9HMiAxCnwgI2RlZmluZSBIQVZFX1BU SFJFQURfU0VUTkFNRV9OUCAxCnwgI2RlZmluZSBIQVZFX0FMSUdORURfQUxMT0MgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX0FMSUdORURfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9N QURWSVNFIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX0ZSQU1FX0FERFJFU1MgMQp8ICNk ZWZpbmUgSEFWRV9fX0JVSUxUSU5fVU5XSU5EX0lOSVQgMQp8ICNkZWZpbmUgSEFWRV9GU0VF S08gMQp8ICNkZWZpbmUgSEFWRV9HUkFOVFBUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFQgMQp8 ICNkZWZpbmUgSEFWRV9QT1NJWF9PUEVOUFQgMQp8ICNkZWZpbmUgVEVSTUlORk8gMQp8ICNk ZWZpbmUgVEVSTUlORk9fREVGSU5FU19CQyAxCnwgI2RlZmluZSBIQVZFX1RJTUVSRkQgMQp8 ICNkZWZpbmUgSEFWRV9WQUxHUklORF9WQUxHUklORF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RS VUNUX1VOSVBBSVJfVU5JQ09ERSAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVkZPUksgMQp8 ICNkZWZpbmUgSEFWRV9XT1JLSU5HX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9TTlBSSU5URiAx CnwgI2RlZmluZSBIQVZFX1NQQVdOX0ggMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTiAx CnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOX0ZJTEVfQUNUSU9OU19BRERDSERJUl9OUCAx CnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOQVRUUl9TRVRGTEFHUyAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfUE9TSVhfU1BBV05fU0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVfR0xJQiAxCnwg I2RlZmluZSBIQVZFX0xBTkdJTkZPX0NPREVTRVQgMQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5G T19fTkxfUEFQRVJfV0lEVEggMQp8ICNkZWZpbmUgSEFWRV9NQlNUQVRFX1QgMQp8ICNkZWZp bmUgQU1QRVJTQU5EX0ZVTExfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1BUWVMgMQp8ICNkZWZp bmUgSEFWRV9TT0NLRVRTIDEKfCAjZGVmaW5lIE5VTExfREVWSUNFICIvZGV2L251bGwiCnwg I2RlZmluZSBTRVBDSEFSICc6Jwp8ICNkZWZpbmUgc3VicHJvY2Vzc2VzIDEKfCAjZGVmaW5l IFVTRVJfRlVMTF9OQU1FIHB3LT5wd19nZWNvcwp8ICNkZWZpbmUgRElSRUNUT1JZX1NFUCAn LycKfCAjZGVmaW5lIElTX0RFVklDRV9TRVAoX2NfKSAwCnwgI2RlZmluZSBJU19ESVJFQ1RP UllfU0VQKF9jXykgKChfY18pID09IERJUkVDVE9SWV9TRVApCnwgI2RlZmluZSBJU19BTllf U0VQKF9jXykgKElTX0RJUkVDVE9SWV9TRVAgKF9jXykpCnwgI2RlZmluZSBIQVZFX1BST0NG UyAxCnwgI2RlZmluZSBERUZBVUxUX1NPVU5EX0RFVklDRSAiL2Rldi9kc3AiCnwgI2RlZmlu ZSBJTlRFUlJVUFRfSU5QVVQgMQp8ICNkZWZpbmUgTkFSUk9XUFJPVE8gMQp8ICNkZWZpbmUg VU5JWDk4X1BUWVMgMQp8ICNkZWZpbmUgUFRZX0lURVJBVElPTiBpbnQgaTsgZm9yIChpID0g MDsgaSA8IDE7IGkrKykKfCAjZGVmaW5lIFBUWV9UVFlfTkFNRV9TUFJJTlRGIHsgY2hhciAq cHR5bmFtZSA9IDA7IHNpZ3NldF90IGJsb2NrZWQ7IHNpZ2VtcHR5c2V0ICgmYmxvY2tlZCk7 IHNpZ2FkZHNldCAoJmJsb2NrZWQsIFNJR0NITEQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19C TE9DSywgJmJsb2NrZWQsIDApOyBpZiAoZ3JhbnRwdCAoZmQpICE9IC0xICYmIHVubG9ja3B0 IChmZCkgIT0gLTEpIHB0eW5hbWUgPSBwdHNuYW1lKGZkKTsgcHRocmVhZF9zaWdtYXNrIChT SUdfVU5CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoIXB0eW5hbWUpIHsgZW1hY3NfY2xvc2Ug KGZkKTsgcmV0dXJuIC0xOyB9IHNucHJpbnRmIChwdHlfbmFtZSwgUFRZX05BTUVfU0laRSwg IiVzIiwgcHR5bmFtZSk7IH0KfCAjZGVmaW5lIFBUWV9PUEVOIGRvIHsgZmQgPSBwb3NpeF9v cGVucHQgKE9fUkRXUiB8IE9fQ0xPRVhFQyB8IE9fTk9DVFRZKTsgaWYgKGZkIDwgMCAmJiBl cnJubyA9PSBFSU5WQUwpIGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX05PQ1RUWSk7 IH0gd2hpbGUgKGZhbHNlKQp8ICNkZWZpbmUgUFRZX05BTUVfU1BSSU5URiAvKiovCnwgI2Rl ZmluZSBTSUdOQUxTX1ZJQV9DSEFSQUNURVJTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JL UyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgSEFWRV9fU0VUSk1Q IDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU1RBQ0tfT1ZF UkZMT1dfSEFORExJTkcgMQp8ICNkZWZpbmUgVVNHIC8qKi8KfCAjZGVmaW5lIEdOVV9MSU5V WCAvKiovCnwgI2RlZmluZSBTSVpFT0ZfU1BFRURfVCA0CnwgI2RlZmluZSBVU0FCTEVfRklP TlJFQUQgMQp8ICNkZWZpbmUgVVNBQkxFX1NJR0lPIDEKfCAjZGVmaW5lIENPUFlSSUdIVCAi Q29weXJpZ2h0IChDKSAyMDIzIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiIKfCAj ZGVmaW5lIFRFUk1fSEVBREVSICJndGt1dGlsLmgiCnwgI2RlZmluZSBFTUFDU19DT05GSUdV UkFUSU9OICJ4ODZfNjQtcGMtbGludXgtZ251Igp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHX09Q VElPTlMgIiIKfCAjZGVmaW5lIEhBVkVfWF9XSU5ET1dTIDEKfCAjZGVmaW5lIEhBVkVfWDEx IDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0FUVFJJQlVURV9BTElHTkVEIDEKfCAjZGVmaW5l IEhBVkVfVFlQRU9GIDEKfCAjZGVmaW5lIEhBVkVfU1RBVEVNRU5UX0VYUFJFU1NJT05TIDEK fCAjZGVmaW5lIE1BTExPQ18wX0lTX05PTk5VTEwgMQp8ICNkZWZpbmUgSEFWRV9TWVNfQUNM X0ggMQp8ICNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xf R0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX1NFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVf QUNMX1NFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUkVFIDEKfCAjZGVmaW5lIEhBVkVf QUNMX0ZST01fTU9ERSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX1RFWFQgMQp8ICNkZWZp bmUgSEFWRV9BQ0xfREVMRVRFX0RFRl9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VYVEVO REVEX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfTElCQUNMX0ggMQp8ICNkZWZpbmUgSEFW RV9BQ0xfRU5UUklFUyAxCnwgI2RlZmluZSBIQVZFX0FDTF9GSVJTVF9FTlRSWSAxCnwgI2Rl ZmluZSBVU0VfQUNMIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFW RV9BTExPQ0EgMQp8ICNkZWZpbmUgTFNUQVRfRk9MTE9XU19TTEFTSEVEX1NZTUxJTksgMQp8 ICNkZWZpbmUgRlVOQ19SRUFMUEFUSF9XT1JLUyAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NB VCAxCnwgI2RlZmluZSBIQVZFX0dFVENXRCAxCnwgI2RlZmluZSByZXN0cmljdCBfX3Jlc3Ry aWN0X18KfCAjZGVmaW5lIEhBVkVfRU5WSVJPTl9ERUNMIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9TVFJNT0RFIDAKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9H RVRPUFRfTE9OR19PTkxZIDEKfCAjZGVmaW5lIEhBVkVfTE9OR19MT05HX0lOVCAxCnwgI2Rl ZmluZSBIQVZFX1VOU0lHTkVEX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X01FTU1FTSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfTUVNUkNIUiAxCnwgI2RlZmluZSBIQVZF X01JTk1BWF9JTl9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBUSU1FX1RfSVNfU0lHTkVEIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9BTEFSTSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9UTV9U TV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fWk9ORSAxCnwgI2RlZmluZSBIQVZFX1RNX0dN VE9GRiAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVF9UIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJf VCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkNMT1NFQUxMIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9HRVRXIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRXIDEKfCAjZGVmaW5lIF9fVVNFX01J TkdXX0FOU0lfU1RESU8gMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VDVlQgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX0ZDVlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dDVlQgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX1NUUk5MRU4gMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUlRPSU1BWCAxCnwg I2RlZmluZSBfVVNFX1NURF9TVEFUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9FWEVDVlBFIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9DTEVBUkVSUl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfRkVPRl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkVSUk9SX1VOTE9D S0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRkxVU0hfVU5MT0NLRUQgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX0ZHRVRTX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GUFVUQ19V TkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRlBVVFNfVU5MT0NLRUQgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX0ZSRUFEX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GV1JJ VEVfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVENfVU5MT0NLRUQgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX0dFVENIQVJfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X1BVVENfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BVVENIQVJfVU5MT0NLRUQg MQp8ICNkZWZpbmUgR0VUR1JPVVBTX1QgZ2lkX3QKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRE VEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX1BPU0lYIDEKfCAjZGVmaW5lIFBS T01PVEVEX01PREVfVCBtb2RlX3QKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19VVElNRVMgMQp8 ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fRVhQRUNU IDEKfCAjZGVmaW5lIEhBVkVfQllURVNXQVBfSCAxCnwgI2RlZmluZSBHTlVMSUJfQ0FOT05J Q0FMSVpFX0xHUEwgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKfCAjZGVmaW5lIEhB VkVfQ0xPQ0tfR0VUUkVTIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tfR0VUVElNRSAxCnwgI2Rl ZmluZSBIQVZFX0NMT0NLX1NFVFRJTUUgMQp8ICNkZWZpbmUgR05VTElCX0NMT1NFX1NUUkVB TSAxCnwgI2RlZmluZSBIQVZFX0NPUFlfRklMRV9SQU5HRSAxCnwgI2RlZmluZSBIQVZFX1NU UlVDVF9ESVJFTlRfRF9UWVBFIDEKfCAjZGVmaW5lIEhBVkVfRkFDQ0VTU0FUIDEKfCAjZGVm aW5lIEdOVUxJQl9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZET1BFTkRJUiAx CnwgI2RlZmluZSBHTlVMSUJfRkRPUEVORElSIDEKfCAjZGVmaW5lIEdFVFhBVFRSX1dJVEhf UE9TSVhfQUNMUyAxCnwgI2RlZmluZSBGTEVYSUJMRV9BUlJBWV9NRU1CRVIgLyoqLwp8ICNk ZWZpbmUgSEFWRV9ERUNMX19fRlBFTkRJTkcgMQp8ICNkZWZpbmUgSEFWRV9GUkVFX1BPU0lY IDEKfCAjZGVmaW5lIEhBVkVfU1lTX01PVU5UX0ggMQp8ICNkZWZpbmUgU1RBVF9TVEFUVkZT IDEKfCAjZGVmaW5lIFNUQVRfU1RBVEZTMl9GUlNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TWVNf U1RBVEZTX0ggMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVOUyAxCnwgI2RlZmluZSBIQVZFX0dF VExPQURBVkcgMQp8ICNkZWZpbmUgSEFWRV9HRVRSQU5ET00gMQp8ICNkZWZpbmUgSEFWRV9U SU1FU1BFQ19HRVQgMQp8ICNkZWZpbmUgR0VUVElNRU9GREFZX1RJTUVaT05FIHZvaWQKfCAj ZGVmaW5lIEhBVkVfX19JTkxJTkUgMQp8ICNkZWZpbmUgSEFWRV9HTVBfSCAxCnwgI2RlZmlu ZSBIQVZFX01FTU1FTSAxCnwgI2RlZmluZSBIQVZFX01FTVBDUFkgMQp8ICNkZWZpbmUgSEFW RV9NRU1SQ0hSIDEKfCAjZGVmaW5lIEhBVkVfTUtPU1RFTVAgMQp8ICNkZWZpbmUgR05VTElC X01LT1NURU1QIDEKfCAjZGVmaW5lIE5FRURfTUtUSU1FX1dPUktJTkcgMQp8ICNkZWZpbmUg SEFWRV9CVUdfQklHX05BTk9TTEVFUCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEK fCAjZGVmaW5lIEhBVkVfU0NIRURfR0VUQUZGSU5JVFkgMQp8ICNkZWZpbmUgSEFWRV9TQ0hF RF9HRVRBRkZJTklUWV9MSUtFX0dMSUJDIDEKfCAjZGVmaW5lIG15X3N0cmZ0aW1lIG5zdHJm dGltZQp8ICNkZWZpbmUgSEFWRV9QSVBFMiAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8 ICNpbmNsdWRlIDxhdHRyL2Vycm9yX2NvbnRleHQuaD4KfCAgICAgICAgICAgICAgICNpbmNs dWRlIDxhdHRyL2xpYmF0dHIuaD4KfCAgICAgICAgICAgICAgIHN0YXRpYyBpbnQKfCAgICAg ICAgICAgICAgIGlzX2F0dHJfcGVybWlzc2lvbnMgKGNvbnN0IGNoYXIgKm5hbWUsIHN0cnVj dCBlcnJvcl9jb250ZXh0ICpjdHgpCnwgICAgICAgICAgICAgICB7CnwgICAgICAgICAgICAg ICAgIHJldHVybiBhdHRyX2NvcHlfYWN0aW9uIChuYW1lLCBjdHgpID09IEFUVFJfQUNUSU9O X1BFUk1JU1NJT05TOwp8ICAgICAgICAgICAgICAgfQp8IAp8IGludAp8IG1haW4gKHZvaWQp Cnwgewp8IHJldHVybiBhdHRyX2NvcHlfZmQgKCIvIiwgMCwgIi8iLCAwLCBpc19hdHRyX3Bl cm1pc3Npb25zLCAwKTsKfCAKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjM5 OTc0OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgLWxhdHRyICAg PiY1IApjb25maWd1cmU6Mzk5NzQ6ICQ/ID0gMApjb25maWd1cmU6Mzk5ODU6IHJlc3VsdDog LWxhdHRyCmNvbmZpZ3VyZTo0MDAxNjogY2hlY2tpbmcgd2hldGhlciByZWFkbGluayBzaWdu YXR1cmUgaXMgY29ycmVjdApjb25maWd1cmU6NDAwMzU6IGdjYyAtYyAtZzMgLU8yICAgIGNv bmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo0MDAzNTogJD8gPSAwCmNvbmZpZ3VyZTo0MDA0Mzog cmVzdWx0OiB5ZXMKY29uZmlndXJlOjQwMDQ1OiBjaGVja2luZyB3aGV0aGVyIHJlYWRsaW5r IGhhbmRsZXMgdHJhaWxpbmcgc2xhc2ggY29ycmVjdGx5CmNvbmZpZ3VyZTo0MDA4NTogZ2Nj IC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1IApjb25maWd1cmU6 NDAwODU6ICQ/ID0gMApjb25maWd1cmU6NDAwODU6IC4vY29uZnRlc3QKY29uZmlndXJlOjQw MDg1OiAkPyA9IDAKY29uZmlndXJlOjQwMDk3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NDAx MTM6IGNoZWNraW5nIHdoZXRoZXIgcmVhZGxpbmsgdHJ1bmNhdGVzIHJlc3VsdHMgY29ycmVj dGx5CmNvbmZpZ3VyZTo0MDE1MjogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25m dGVzdC5jICAgPiY1IApjb25maWd1cmU6NDAxNTI6ICQ/ID0gMApjb25maWd1cmU6NDAxNTI6 IC4vY29uZnRlc3QKY29uZmlndXJlOjQwMTUyOiAkPyA9IDAKY29uZmlndXJlOjQwMTY0OiBy ZXN1bHQ6IHllcwpjb25maWd1cmU6NDAyMTc6IGNoZWNraW5nIGZvciByZWFkbGlua2F0CmNv bmZpZ3VyZTo0MDI2OTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjQwMjkwOiBjaGVja2luZyB3 aGV0aGVyIHJlYWRsaW5rYXQgc2lnbmF0dXJlIGlzIGNvcnJlY3QKY29uZmlndXJlOjQwMzA5 OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6NDAzMDk6ICQ/ ID0gMApjb25maWd1cmU6NDAzMTc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo0MDM3MjogY2hl Y2tpbmcgZm9yIHdvcmtpbmcgcmVfY29tcGlsZV9wYXR0ZXJuCmNvbmZpZ3VyZTo0MDY4Nzog Z2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1IApjb25maWd1 cmU6NDA2ODc6ICQ/ID0gMApjb25maWd1cmU6NDA2ODc6IC4vY29uZnRlc3QKY29uZmlndXJl OjQwNjg3OiAkPyA9IDAKY29uZmlndXJlOjQwNjk5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6 NDA4MDM6IGNoZWNraW5nIGZvciBzaWcyc3RyCmNvbmZpZ3VyZTo0MDgwMzogZ2NjIC1vIGNv bmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1IAovdXNyL2Jpbi9sZDogL3Rt cC9jY0VjOGRTZy5vOiBpbiBmdW5jdGlvbiBgbWFpbic6Ci9hcHAvZW1hY3MvY29uZnRlc3Qu Yzo0MzY6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYHNpZzJzdHInCmNvbGxlY3QyOiBlcnJv cjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpjb25maWd1cmU6NDA4MDM6ICQ/ID0gMQpj b25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2Rl ZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFN RSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMwLjAuNTAiCnwgI2RlZmlu ZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdF X0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9V UkwgImh0dHBzOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgSEFW RV9QRFVNUEVSIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fSCAxCnwgI2RlZmluZSBIQVZFX1NU RExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRU WVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJ TkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1dD SEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFM TE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVf UFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZF X1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9MU0FOX0lOVEVSRkFDRV9IIDEK fCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0FTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUg SEFWRV9TQU5JVElaRVJfQ09NTU9OX0lOVEVSRkFDRV9ERUZTX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmlu ZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5l IEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5l IEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVkZTX0ggMQp8ICNkZWZp bmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19DREVGU19IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX0lFRUU3NTRfSCAxCnwgI2Rl ZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAj ZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JBTkRPTV9IIDEK fCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2Rl ZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVm aW5lIF9IUFVYX0FMVF9YT1BFTl9TT0NLRVRfQVBJIDEKfCAjZGVmaW5lIF9ORVRCU0RfU09V UkNFIDEKfCAjZGVmaW5lIF9PUEVOQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfUE9TSVhfUFRI UkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0FUVFJJ QlNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0JGUF9FWFRfXyAx CnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfREZQX0VYVF9fIDEKfCAjZGVmaW5l IF9fU1REQ19XQU5UX0lFQ182MDU1OV9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9J RUNfNjA1NTlfRlVOQ1NfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5 X1RZUEVTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0xJQl9FWFQyX18gMQp8ICNk ZWZpbmUgX19TVERDX1dBTlRfTUFUSF9TUEVDX0ZVTkNTX18gMQp8ICNkZWZpbmUgX1RBTkRF TV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgR0NDX0xJ TlQgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAjZGVmaW5lIEhBVkVf U1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2RlZmluZSBIQVZF X1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfQUREUl9OT19SQU5ET01JWkUg MQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZU0lO Rk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19X QUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZFX0lGQURE UlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8ICNkZWZp bmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVD VF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJf QlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERSIDEKfCAj ZGVmaW5lIEhBVkVfU0JSSyAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVm aW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVf RkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfQ0FOT05JQ0FMSVpFX0ZJTEVfTkFNRSAxCnwgI2Rl ZmluZSBIQVZFX1JFQUxQQVRIIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUg SEFWRV9GQ0hNT0RBVCAxCnwgI2RlZmluZSBIQVZFX0xDSE1PRCAxCnwgI2RlZmluZSBIQVZF X0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVfRlNU QVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9G REFZIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURf U0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfSVNC TEFOSyAxCnwgI2RlZmluZSBIQVZFX0lTV0NUWVBFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9J TUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FMVElN RV9SIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBTWVNURU1f TUFMTE9DIDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQUQg MQp8ICNkZWZpbmUgVEhSRUFEU19FTkFCTEVEIDEKfCAjZGVmaW5lIEhBVkVfWEtCIDEKfCAj ZGVmaW5lIEhBVkVfWEtCUkVGUkVTSEtFWUJPQVJETUFQUElORyAxCnwgI2RlZmluZSBIQVZF X1hLQkZSRUVOQU1FUyAxCnwgI2RlZmluZSBIQVZFX1hSTVNFVERBVEFCQVNFIDEKfCAjZGVm aW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RSSU5HIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVF Tk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhBVkVfWERJU1BMQVlDRUxMUyAxCnwgI2Rl ZmluZSBIQVZFX1hERVNUUk9ZU1VCV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gxMVI2IDEK fCAjZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVmaW5lIEhBVkVfWElDQ0FMTEJBQ0tfQ0FM TEJBQ0sgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9YSU0gMQp8ICNkZWZpbmUgSEFWRV9SU1ZH IDEKfCAjZGVmaW5lIEhBVkVfV0VCUCAxCnwgI2RlZmluZSBIQVZFX1NRTElURTMgMQp8ICNk ZWZpbmUgSEFWRV9TUUxJVEUzX0xPQURfRVhURU5TSU9OIDEKfCAjZGVmaW5lIEhBVkVfR0VU QUREUklORk9fQSAxCnwgI2RlZmluZSBIQVZFX0dUSzMgMQp8ICNkZWZpbmUgR0RLX0RJU0FC TEVfREVQUkVDQVRJT05fV0FSTklOR1MgMQp8ICNkZWZpbmUgR0xJQl9ESVNBQkxFX0RFUFJF Q0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIFVTRV9HVEsgMQp8ICNkZWZpbmUgSEFWRV9N QUxMT0NfVFJJTSAxCnwgI2RlZmluZSBIQVZFX0RCVVMgMQp8ICNkZWZpbmUgSEFWRV9EQlVT X1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19UWVBFX0lTX1ZBTElE IDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAxCnwgI2RlZmluZSBI QVZFX0RCVVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVf SU5URVJGQUNFIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIgMQp8ICNk ZWZpbmUgSEFWRV9HU0VUVElOR1MgMQp8ICNkZWZpbmUgSEFWRV9MSUJTRUxJTlVYIDEKfCAj ZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhBVkVfTElCU1lTVEVNRCAxCnwgI2Rl ZmluZSBIQVZFX0pTT04gMQp8ICNkZWZpbmUgSEFWRV9JTk9USUZZIDEKfCAjZGVmaW5lIFVT RV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBVU0VfVE9PTEtJVF9TQ1JPTExfQkFSUyAxCnwg I2RlZmluZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBVU0VfWElNIDEKfCAjZGVmaW5lIEhBVkVf WFJFTkRFUiAxCnwgI2RlZmluZSBVU0VfQ0FJUk9fWENCIDEKfCAjZGVmaW5lIFVTRV9DQUlS TyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAjZGVmaW5lIEhBVkVfRlRfRkFDRV9H RVRDSEFSVkFSSUFOVElOREVYIDEKfCAjZGVmaW5lIEhBVkVfTElCT1RGIDEKfCAjZGVmaW5l IEhBVkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTIDEKfCAjZGVmaW5lIEhBVkVfTTE3Tl9G TFQgMQp8ICNkZWZpbmUgSEFWRV9IQVJGQlVaWiAxCnwgI2RlZmluZSBVU0VfWENCIDEKfCAj ZGVmaW5lIEhBVkVfWFBNIDEKfCAjZGVmaW5lIEhBVkVfSlBFRyAxCnwgI2RlZmluZSBIQVZF X0xDTVMyIDEKfCAjZGVmaW5lIEhBVkVfWkxJQiAxCnwgI2RlZmluZSBEWU5BTUlDX0xJQl9T VUZGSVggIi5zbyIKfCAjZGVmaW5lIERZTkFNSUNfTElCX1NFQ09OREFSWV9TVUZGSVggIiIK fCAjZGVmaW5lIEhBVkVfRExBRERSIDEKfCAjZGVmaW5lIEhBVkVfTU9EVUxFUyAxCnwgI2Rl ZmluZSBNT0RVTEVTX1NVRkZJWCAiLnNvIgp8ICNkZWZpbmUgTkFUSVZFX0VMSVNQX1NVRkZJ WCAiLmVsbiIKfCAjZGVmaW5lIEhBVkVfUE5HIDEKfCAjZGVmaW5lIEhBVkVfVElGRiAxCnwg I2RlZmluZSBIQVZFX0dJRiAxCnwgI2RlZmluZSBIQVZFX0dQTSAxCnwgI2RlZmluZSBIQVZF X1hfU00gMQp8ICNkZWZpbmUgSEFWRV9YUkFORFIgMQp8ICNkZWZpbmUgSEFWRV9YSU5FUkFN QSAxCnwgI2RlZmluZSBIQVZFX1hGSVhFUyAxCnwgI2RlZmluZSBIQVZFX1hJTlBVVDIgMQp8 ICNkZWZpbmUgSEFWRV9YSVNDUk9MTENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVf WElUT1VDSENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWElCQVJSSUVSUkVMRUFT RVBPSU5URVJJTkZPX0RFVklDRUlEIDEKfCAjZGVmaW5lIEhBVkVfWElHRVNUVVJFQ0xBU1NJ TkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQyAxCnwgI2RlZmluZSBIQVZFX1hTWU5D VFJJR0dFUkZFTkNFIDEKfCAjZGVmaW5lIEhBVkVfWERCRSAxCnwgI2RlZmluZSBIQVZFX1hD Ql9TSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hTSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hDT01Q T1NJVEUgMQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwyIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhf U0VDQ09NUF9IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX1NFVF9NT0RFX0ZJTFRF UiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9GSUxURVJfRkxBR19UU1lOQyAxCnwg I2RlZmluZSBIQVZFX0xJTlVYX0ZJTFRFUl9IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUND T01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9GSUxU RVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA4CnwgI2RlZmluZSBIQVZF X0FDQ0VQVDQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hESVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRI T1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJVU0FHRSAxCnwgI2RlZmluZSBIQVZFX0dF VF9DVVJSRU5UX0RJUl9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfTFJBTkQ0OCAxCnwgI2RlZmlu ZSBIQVZFX1JBTkRPTSAxCnwgI2RlZmluZSBIQVZFX1JJTlQgMQp8ICNkZWZpbmUgSEFWRV9U UlVOQyAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VT SVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfTkVXTE9D QUxFIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJ TUlUIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFE X1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJTSUdOQUwgMQp8ICNkZWZpbmUgSEFWRV9T RVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9TRU5EVE8gMQp8ICNkZWZpbmUgSEFWRV9SRUNW RlJPTSAxCnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tOQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VU SUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVf R0FJX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dF VFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRH UkVOVCAxCnwgI2RlZmluZSBIQVZFX0VOREdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfUkVOQU1F QVQyIDEKfCAjZGVmaW5lIEhBVkVfQ0ZNQUtFUkFXIDEKfCAjZGVmaW5lIEhBVkVfQ0ZTRVRT UEVFRCAxCnwgI2RlZmluZSBIQVZFX19fRVhFQ1VUQUJMRV9TVEFSVCAxCnwgI2RlZmluZSBI QVZFX0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NFVE5BTUVfTlAgMQp8ICNkZWZp bmUgSEFWRV9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTElHTkVEX0FM TE9DIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfTUFEVklTRSAxCnwgI2RlZmluZSBIQVZFX19f QlVJTFRJTl9GUkFNRV9BRERSRVNTIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX1VOV0lO RF9JTklUIDEKfCAjZGVmaW5lIEhBVkVfRlNFRUtPIDEKfCAjZGVmaW5lIEhBVkVfR1JBTlRQ VCAxCnwgI2RlZmluZSBIQVZFX0dFVFBUIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfT1BFTlBU IDEKfCAjZGVmaW5lIFRFUk1JTkZPIDEKfCAjZGVmaW5lIFRFUk1JTkZPX0RFRklORVNfQkMg MQp8ICNkZWZpbmUgSEFWRV9USU1FUkZEIDEKfCAjZGVmaW5lIEhBVkVfVkFMR1JJTkRfVkFM R1JJTkRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9VTklQQUlSX1VOSUNPREUgMQp8ICNk ZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19GT1JL IDEKfCAjZGVmaW5lIEhBVkVfU05QUklOVEYgMQp8ICNkZWZpbmUgSEFWRV9TUEFXTl9IIDEK fCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV04gMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFX Tl9GSUxFX0FDVElPTlNfQUREQ0hESVJfTlAgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFX TkFUVFJfU0VURkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BPU0lYX1NQQVdOX1NFVFNJ RCAxCnwgI2RlZmluZSBIQVZFX0dMSUIgMQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5GT19DT0RF U0VUIDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fX05MX1BBUEVSX1dJRFRIIDEKfCAjZGVm aW5lIEhBVkVfTUJTVEFURV9UIDEKfCAjZGVmaW5lIEFNUEVSU0FORF9GVUxMX05BTUUgMQp8 ICNkZWZpbmUgSEFWRV9QVFlTIDEKfCAjZGVmaW5lIEhBVkVfU09DS0VUUyAxCnwgI2RlZmlu ZSBOVUxMX0RFVklDRSAiL2Rldi9udWxsIgp8ICNkZWZpbmUgU0VQQ0hBUiAnOicKfCAjZGVm aW5lIHN1YnByb2Nlc3NlcyAxCnwgI2RlZmluZSBVU0VSX0ZVTExfTkFNRSBwdy0+cHdfZ2Vj b3MKfCAjZGVmaW5lIERJUkVDVE9SWV9TRVAgJy8nCnwgI2RlZmluZSBJU19ERVZJQ0VfU0VQ KF9jXykgMAp8ICNkZWZpbmUgSVNfRElSRUNUT1JZX1NFUChfY18pICgoX2NfKSA9PSBESVJF Q1RPUllfU0VQKQp8ICNkZWZpbmUgSVNfQU5ZX1NFUChfY18pIChJU19ESVJFQ1RPUllfU0VQ IChfY18pKQp8ICNkZWZpbmUgSEFWRV9QUk9DRlMgMQp8ICNkZWZpbmUgREVGQVVMVF9TT1VO RF9ERVZJQ0UgIi9kZXYvZHNwIgp8ICNkZWZpbmUgSU5URVJSVVBUX0lOUFVUIDEKfCAjZGVm aW5lIE5BUlJPV1BST1RPIDEKfCAjZGVmaW5lIFVOSVg5OF9QVFlTIDEKfCAjZGVmaW5lIFBU WV9JVEVSQVRJT04gaW50IGk7IGZvciAoaSA9IDA7IGkgPCAxOyBpKyspCnwgI2RlZmluZSBQ VFlfVFRZX05BTUVfU1BSSU5URiB7IGNoYXIgKnB0eW5hbWUgPSAwOyBzaWdzZXRfdCBibG9j a2VkOyBzaWdlbXB0eXNldCAoJmJsb2NrZWQpOyBzaWdhZGRzZXQgKCZibG9ja2VkLCBTSUdD SExEKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKGdy YW50cHQgKGZkKSAhPSAtMSAmJiB1bmxvY2twdCAoZmQpICE9IC0xKSBwdHluYW1lID0gcHRz bmFtZShmZCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX1VOQkxPQ0ssICZibG9ja2VkLCAwKTsg aWYgKCFwdHluYW1lKSB7IGVtYWNzX2Nsb3NlIChmZCk7IHJldHVybiAtMTsgfSBzbnByaW50 ZiAocHR5X25hbWUsIFBUWV9OQU1FX1NJWkUsICIlcyIsIHB0eW5hbWUpOyB9CnwgI2RlZmlu ZSBQVFlfT1BFTiBkbyB7IGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX0NMT0VYRUMg fCBPX05PQ1RUWSk7IGlmIChmZCA8IDAgJiYgZXJybm8gPT0gRUlOVkFMKSBmZCA9IHBvc2l4 X29wZW5wdCAoT19SRFdSIHwgT19OT0NUVFkpOyB9IHdoaWxlIChmYWxzZSkKfCAjZGVmaW5l IFBUWV9OQU1FX1NQUklOVEYgLyoqLwp8ICNkZWZpbmUgU0lHTkFMU19WSUFfQ0hBUkFDVEVS UyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dP UktTIDEKfCAjZGVmaW5lIEhBVkVfX1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVEpN UCAxCnwgI2RlZmluZSBIQVZFX1NUQUNLX09WRVJGTE9XX0hBTkRMSU5HIDEKfCAjZGVmaW5l IFVTRyAvKiovCnwgI2RlZmluZSBHTlVfTElOVVggLyoqLwp8ICNkZWZpbmUgU0laRU9GX1NQ RUVEX1QgNAp8ICNkZWZpbmUgVVNBQkxFX0ZJT05SRUFEIDEKfCAjZGVmaW5lIFVTQUJMRV9T SUdJTyAxCnwgI2RlZmluZSBDT1BZUklHSFQgIkNvcHlyaWdodCAoQykgMjAyMyBGcmVlIFNv ZnR3YXJlIEZvdW5kYXRpb24sIEluYy4iCnwgI2RlZmluZSBURVJNX0hFQURFUiAiZ3RrdXRp bC5oIgp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHVVJBVElPTiAieDg2XzY0LXBjLWxpbnV4LWdu dSIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR19PUFRJT05TICIiCnwgI2RlZmluZSBIQVZFX1hf V0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gxMSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9B VFRSSUJVVEVfQUxJR05FRCAxCnwgI2RlZmluZSBIQVZFX1RZUEVPRiAxCnwgI2RlZmluZSBI QVZFX1NUQVRFTUVOVF9FWFBSRVNTSU9OUyAxCnwgI2RlZmluZSBNQUxMT0NfMF9JU19OT05O VUxMIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0FDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dF VF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FD TF9TRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRkQgMQp8ICNkZWZpbmUgSEFW RV9BQ0xfRlJFRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX01PREUgMQp8ICNkZWZpbmUg SEFWRV9BQ0xfRlJPTV9URVhUIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0RFTEVURV9ERUZfRklM RSAxCnwgI2RlZmluZSBIQVZFX0FDTF9FWFRFTkRFRF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVf QUNMX0xJQkFDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VOVFJJRVMgMQp8ICNkZWZpbmUg SEFWRV9BQ0xfRklSU1RfRU5UUlkgMQp8ICNkZWZpbmUgVVNFX0FDTCAxCnwgI2RlZmluZSBI QVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIExTVEFU X0ZPTExPV1NfU0xBU0hFRF9TWU1MSU5LIDEKfCAjZGVmaW5lIEZVTkNfUkVBTFBBVEhfV09S S1MgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9HRVRDV0Qg MQp8ICNkZWZpbmUgcmVzdHJpY3QgX19yZXN0cmljdF9fCnwgI2RlZmluZSBIQVZFX0VOVklS T05fREVDTCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSTU9ERSAwCnwgI2RlZmluZSBIQVZF X0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0xPTkdfT05MWSAxCnwgI2RlZmlu ZSBIQVZFX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUgSEFWRV9VTlNJR05FRF9MT05HX0xP TkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9NRU1NRU0gMQp8ICNkZWZpbmUgSEFWRV9E RUNMX01FTVJDSFIgMQp8ICNkZWZpbmUgSEFWRV9NSU5NQVhfSU5fU1lTX1BBUkFNX0ggMQp8 ICNkZWZpbmUgVElNRV9UX0lTX1NJR05FRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfQUxBUk0g MQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVE1fVE1fWk9ORSAxCnwgI2RlZmluZSBIQVZFX1RN X1pPTkUgMQp8ICNkZWZpbmUgSEFWRV9UTV9HTVRPRkYgMQp8ICNkZWZpbmUgSEFWRV9TSUdT RVRfVCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX1QgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZD TE9TRUFMTCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VUVyAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfUFVUVyAxCnwgI2RlZmluZSBfX1VTRV9NSU5HV19BTlNJX1NURElPIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9FQ1ZUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GQ1ZUIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9HQ1ZUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJOTEVOIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9TVFJUT0lNQVggMQp8ICNkZWZpbmUgX1VTRV9TVERfU1RBVCAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfRVhFQ1ZQRSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfQ0xFQVJF UlJfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZFT0ZfVU5MT0NLRUQgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX0ZFUlJPUl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xf RkZMVVNIX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GR0VUU19VTkxPQ0tFRCAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfRlBVVENfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9E RUNMX0ZQVVRTX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GUkVBRF9VTkxPQ0tF RCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRldSSVRFX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9HRVRDX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRDSEFSX1VO TE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRDX1VOTE9DS0VEIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9QVVRDSEFSX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEdFVEdST1VQU19UIGdp ZF90CnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZF X01BTExPQ19QT1NJWCAxCnwgI2RlZmluZSBQUk9NT1RFRF9NT0RFX1QgbW9kZV90CnwgI2Rl ZmluZSBIQVZFX1dPUktJTkdfVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAj ZGVmaW5lIEhBVkVfX19CVUlMVElOX0VYUEVDVCAxCnwgI2RlZmluZSBIQVZFX0JZVEVTV0FQ X0ggMQp8ICNkZWZpbmUgR05VTElCX0NBTk9OSUNBTElaRV9MR1BMIDEKfCAjZGVmaW5lIEhB VkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX0dFVFJFUyAxCnwgI2RlZmlu ZSBIQVZFX0NMT0NLX0dFVFRJTUUgMQp8ICNkZWZpbmUgSEFWRV9DTE9DS19TRVRUSU1FIDEK fCAjZGVmaW5lIEdOVUxJQl9DTE9TRV9TVFJFQU0gMQp8ICNkZWZpbmUgSEFWRV9DT1BZX0ZJ TEVfUkFOR0UgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfRElSRU5UX0RfVFlQRSAxCnwgI2Rl ZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBHTlVMSUJfRkFDQ0VTU0FUIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgR05VTElCX0ZET1BFTkRJ UiAxCnwgI2RlZmluZSBHRVRYQVRUUl9XSVRIX1BPU0lYX0FDTFMgMQp8ICNkZWZpbmUgRkxF WElCTEVfQVJSQVlfTUVNQkVSIC8qKi8KfCAjZGVmaW5lIEhBVkVfREVDTF9fX0ZQRU5ESU5H IDEKfCAjZGVmaW5lIEhBVkVfRlJFRV9QT1NJWCAxCnwgI2RlZmluZSBIQVZFX1NZU19NT1VO VF9IIDEKfCAjZGVmaW5lIFNUQVRfU1RBVFZGUyAxCnwgI2RlZmluZSBTVEFUX1NUQVRGUzJf RlJTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRGU19IIDEKfCAjZGVmaW5lIEhBVkVf RlVUSU1FTlMgMQp8ICNkZWZpbmUgSEFWRV9HRVRMT0FEQVZHIDEKfCAjZGVmaW5lIEhBVkVf R0VUUkFORE9NIDEKfCAjZGVmaW5lIEhBVkVfVElNRVNQRUNfR0VUIDEKfCAjZGVmaW5lIEdF VFRJTUVPRkRBWV9USU1FWk9ORSB2b2lkCnwgI2RlZmluZSBIQVZFX19fSU5MSU5FIDEKfCAj ZGVmaW5lIEhBVkVfR01QX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1NRU0gMQp8ICNkZWZpbmUg SEFWRV9NRU1QQ1BZIDEKfCAjZGVmaW5lIEhBVkVfTUVNUkNIUiAxCnwgI2RlZmluZSBIQVZF X01LT1NURU1QIDEKfCAjZGVmaW5lIEdOVUxJQl9NS09TVEVNUCAxCnwgI2RlZmluZSBORUVE X01LVElNRV9XT1JLSU5HIDEKfCAjZGVmaW5lIEhBVkVfQlVHX0JJR19OQU5PU0xFRVAgMQp8 ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1NDSEVEX0dFVEFG RklOSVRZIDEKfCAjZGVmaW5lIEhBVkVfU0NIRURfR0VUQUZGSU5JVFlfTElLRV9HTElCQyAx CnwgI2RlZmluZSBteV9zdHJmdGltZSBuc3RyZnRpbWUKfCAjZGVmaW5lIEhBVkVfUElQRTIg MQp8ICNkZWZpbmUgVVNFX1hBVFRSIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTktBVCAxCnwg LyogZW5kIGNvbmZkZWZzLmguICAqLwp8IC8qIERlZmluZSBzaWcyc3RyIHRvIGFuIGlubm9j dW91cyB2YXJpYW50LCBpbiBjYXNlIDxsaW1pdHMuaD4gZGVjbGFyZXMgc2lnMnN0ci4KfCAg ICBGb3IgZXhhbXBsZSwgSFAtVVggMTFpIDxsaW1pdHMuaD4gZGVjbGFyZXMgZ2V0dGltZW9m ZGF5LiAgKi8KfCAjZGVmaW5lIHNpZzJzdHIgaW5ub2N1b3VzX3NpZzJzdHIKfCAKfCAvKiBT eXN0ZW0gaGVhZGVyIHRvIGRlZmluZSBfX3N0dWIgbWFjcm9zIGFuZCBob3BlZnVsbHkgZmV3 IHByb3RvdHlwZXMsCnwgICAgd2hpY2ggY2FuIGNvbmZsaWN0IHdpdGggY2hhciBzaWcyc3Ry ICgpOyBiZWxvdy4gICovCnwgCnwgI2luY2x1ZGUgPGxpbWl0cy5oPgp8ICN1bmRlZiBzaWcy c3RyCnwgCnwgLyogT3ZlcnJpZGUgYW55IEdDQyBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZv aWQgYW4gZXJyb3IuCnwgICAgVXNlIGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2ggdGhl IHJldHVybiB0eXBlIG9mIGEgR0NDCnwgICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMgYXJndW1l bnQgcHJvdG90eXBlIHdvdWxkIHN0aWxsIGFwcGx5LiAgKi8KfCAjaWZkZWYgX19jcGx1c3Bs dXMKfCBleHRlcm4gIkMiCnwgI2VuZGlmCnwgY2hhciBzaWcyc3RyICgpOwp8IC8qIFRoZSBH TlUgQyBsaWJyYXJ5IGRlZmluZXMgdGhpcyBmb3IgZnVuY3Rpb25zIHdoaWNoIGl0IGltcGxl bWVudHMKfCAgICAgdG8gYWx3YXlzIGZhaWwgd2l0aCBFTk9TWVMuICBTb21lIGZ1bmN0aW9u cyBhcmUgYWN0dWFsbHkgbmFtZWQKfCAgICAgc29tZXRoaW5nIHN0YXJ0aW5nIHdpdGggX18g YW5kIHRoZSBub3JtYWwgbmFtZSBpcyBhbiBhbGlhcy4gICovCnwgI2lmIGRlZmluZWQgX19z dHViX3NpZzJzdHIgfHwgZGVmaW5lZCBfX3N0dWJfX19zaWcyc3RyCnwgY2hva2UgbWUKfCAj ZW5kaWYKfCAKfCBpbnQKfCBtYWluICh2b2lkKQp8IHsKfCByZXR1cm4gc2lnMnN0ciAoKTsK fCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjQwODAzOiByZXN1bHQ6IG5vCmNv bmZpZ3VyZTo0MDgzMTogY2hlY2tpbmcgZm9yIHNpZ2Rlc2NyX25wCmNvbmZpZ3VyZTo0MDgz MTogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1IApjb25m aWd1cmU6NDA4MzE6ICQ/ID0gMApjb25maWd1cmU6NDA4MzE6IHJlc3VsdDogeWVzCmNvbmZp Z3VyZTo0MDg3NzogY2hlY2tpbmcgZm9yIHNvY2tsZW5fdApjb25maWd1cmU6NDA4Nzc6IGdj YyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo0MDg3NzogJD8gPSAw CmNvbmZpZ3VyZTo0MDg3NzogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29u ZnRlc3QuYzogSW4gZnVuY3Rpb24gJ21haW4nOgpjb25mdGVzdC5jOjQyNToyNDogZXJyb3I6 IGV4cGVjdGVkIGV4cHJlc3Npb24gYmVmb3JlICcpJyB0b2tlbgogIDQyNSB8IGlmIChzaXpl b2YgKChzb2NrbGVuX3QpKSkKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgIF4KY29u ZmlndXJlOjQwODc3OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6Cnwg LyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwg I2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJT SU9OICIzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAzMC4w LjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9y ZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJodHRwczovL3d3dy5nbnUub3JnL3NvZnR3YXJl L2VtYWNzLyIKfCAjZGVmaW5lIEhBVkVfUERVTVBFUiAxCnwgI2RlZmluZSBIQVZFX1NURElP X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19I IDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9I IDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1RE X0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfRlNf SCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lO Rk9fSCAxCnwgI2RlZmluZSBIQVZFX1BUWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09V UkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVf UFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1QX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVEla RVJfTFNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9BU0FOX0lO VEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0NPTU1PTl9JTlRFUkZBQ0Vf REVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfVU5fSCAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVf RVhFQ0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1NURElPX0VYVF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1ZGU19IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfQ0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUg SEFWRV9JRUVFNzU0X0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NUREJPT0xfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19SQU5ET01fSCAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZp bmUgX0FMTF9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmlu ZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBfSFBVWF9BTFRfWE9QRU5fU09DS0VUX0FQSSAx CnwgI2RlZmluZSBfTkVUQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfT1BFTkJTRF9TT1VSQ0Ug MQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9fU1RE Q19XQU5UX0lFQ182MDU1OV9BVFRSSUJTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5U X0lFQ182MDU1OV9CRlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5 X0RGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRVhUX18gMQp8 ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0ZVTkNTX0VYVF9fIDEKfCAjZGVmaW5l IF9fU1REQ19XQU5UX0lFQ182MDU1OV9UWVBFU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENf V0FOVF9MSUJfRVhUMl9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX01BVEhfU1BFQ19GVU5D U19fIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9O U19fIDEKfCAjZGVmaW5lIEdDQ19MSU5UIDEKfCAjZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUv bGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAxCnwgI2RlZmluZSBIQVZF X0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwgI2RlZmluZSBIQVZFX1BFUlNPTkFM SVRZX0FERFJfTk9fUkFORE9NSVpFIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5GTyAx CnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUgSEFWRV9URVJNX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUX0lGX0gg MQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZS RVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9IV0FERFIg MQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX05FVE1BU0sgMQp8ICNkZWZpbmUg SEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVD VF9JRlJFUV9JRlJfQUREUiAxCnwgI2RlZmluZSBIQVZFX1NCUksgMQp8ICNkZWZpbmUgSEFW RV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9W Rk9SSyAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0NBTk9OSUNB TElaRV9GSUxFX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9SRUFMUEFUSCAxCnwgI2RlZmluZSBI QVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EQVQgMQp8ICNkZWZpbmUgSEFWRV9M Q0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJ UiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwg I2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8 ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElO SyAxCnwgI2RlZmluZSBIQVZFX0lTQkxBTksgMQp8ICNkZWZpbmUgSEFWRV9JU1dDVFlQRSAx CnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8 ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJ WkUgMQp8ICNkZWZpbmUgU1lTVEVNX01BTExPQyAxCnwgI2RlZmluZSBIQVZFX01NQVAgMQp8 ICNkZWZpbmUgSEFWRV9QVEhSRUFEIDEKfCAjZGVmaW5lIFRIUkVBRFNfRU5BQkxFRCAxCnwg I2RlZmluZSBIQVZFX1hLQiAxCnwgI2RlZmluZSBIQVZFX1hLQlJFRlJFU0hLRVlCT0FSRE1B UFBJTkcgMQp8ICNkZWZpbmUgSEFWRV9YS0JGUkVFTkFNRVMgMQp8ICNkZWZpbmUgSEFWRV9Y Uk1TRVREQVRBQkFTRSAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNPVVJDRVNUUklORyAx CnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJPRlNDUkVFTiAxCnwgI2RlZmluZSBIQVZF X1hESVNQTEFZQ0VMTFMgMQp8ICNkZWZpbmUgSEFWRV9YREVTVFJPWVNVQldJTkRPV1MgMQp8 ICNkZWZpbmUgSEFWRV9YMTFSNiAxCnwgI2RlZmluZSBIQVZFX1hfSTE4TiAxCnwgI2RlZmlu ZSBIQVZFX1hJQ0NBTExCQUNLX0NBTExCQUNLIDEKfCAjZGVmaW5lIEhBVkVfWDExUjZfWElN IDEKfCAjZGVmaW5lIEhBVkVfUlNWRyAxCnwgI2RlZmluZSBIQVZFX1dFQlAgMQp8ICNkZWZp bmUgSEFWRV9TUUxJVEUzIDEKfCAjZGVmaW5lIEhBVkVfU1FMSVRFM19MT0FEX0VYVEVOU0lP TiAxCnwgI2RlZmluZSBIQVZFX0dFVEFERFJJTkZPX0EgMQp8ICNkZWZpbmUgSEFWRV9HVEsz IDEKfCAjZGVmaW5lIEdES19ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVm aW5lIEdMSUJfRElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAxCnwgI2RlZmluZSBVU0Vf R1RLIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX1RSSU0gMQp8ICNkZWZpbmUgSEFWRV9EQlVT IDEKfCAjZGVmaW5lIEhBVkVfREJVU19XQVRDSF9HRVRfVU5JWF9GRCAxCnwgI2RlZmluZSBI QVZFX0RCVVNfVFlQRV9JU19WQUxJRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVf QlVTX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX1BBVEggMQp8ICNkZWZp bmUgSEFWRV9EQlVTX1ZBTElEQVRFX0lOVEVSRkFDRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNf VkFMSURBVEVfTUVNQkVSIDEKfCAjZGVmaW5lIEhBVkVfR1NFVFRJTkdTIDEKfCAjZGVmaW5l IEhBVkVfTElCU0VMSU5VWCAxCnwgI2RlZmluZSBIQVZFX0dOVVRMUyAxCnwgI2RlZmluZSBI QVZFX0xJQlNZU1RFTUQgMQp8ICNkZWZpbmUgSEFWRV9KU09OIDEKfCAjZGVmaW5lIEhBVkVf SU5PVElGWSAxCnwgI2RlZmluZSBVU0VfRklMRV9OT1RJRlkgMQp8ICNkZWZpbmUgVVNFX1RP T0xLSVRfU0NST0xMX0JBUlMgMQp8ICNkZWZpbmUgSEFWRV9YSU0gMQp8ICNkZWZpbmUgVVNF X1hJTSAxCnwgI2RlZmluZSBIQVZFX1hSRU5ERVIgMQp8ICNkZWZpbmUgVVNFX0NBSVJPX1hD QiAxCnwgI2RlZmluZSBVU0VfQ0FJUk8gMQp8ICNkZWZpbmUgSEFWRV9GUkVFVFlQRSAxCnwg I2RlZmluZSBIQVZFX0ZUX0ZBQ0VfR0VUQ0hBUlZBUklBTlRJTkRFWCAxCnwgI2RlZmluZSBI QVZFX0xJQk9URiAxCnwgI2RlZmluZSBIQVZFX09URl9HRVRfVkFSSUFUSU9OX0dMWVBIUyAx CnwgI2RlZmluZSBIQVZFX00xN05fRkxUIDEKfCAjZGVmaW5lIEhBVkVfSEFSRkJVWlogMQp8 ICNkZWZpbmUgVVNFX1hDQiAxCnwgI2RlZmluZSBIQVZFX1hQTSAxCnwgI2RlZmluZSBIQVZF X0pQRUcgMQp8ICNkZWZpbmUgSEFWRV9MQ01TMiAxCnwgI2RlZmluZSBIQVZFX1pMSUIgMQp8 ICNkZWZpbmUgRFlOQU1JQ19MSUJfU1VGRklYICIuc28iCnwgI2RlZmluZSBEWU5BTUlDX0xJ Ql9TRUNPTkRBUllfU1VGRklYICIiCnwgI2RlZmluZSBIQVZFX0RMQUREUiAxCnwgI2RlZmlu ZSBIQVZFX01PRFVMRVMgMQp8ICNkZWZpbmUgTU9EVUxFU19TVUZGSVggIi5zbyIKfCAjZGVm aW5lIE5BVElWRV9FTElTUF9TVUZGSVggIi5lbG4iCnwgI2RlZmluZSBIQVZFX1BORyAxCnwg I2RlZmluZSBIQVZFX1RJRkYgMQp8ICNkZWZpbmUgSEFWRV9HSUYgMQp8ICNkZWZpbmUgSEFW RV9HUE0gMQp8ICNkZWZpbmUgSEFWRV9YX1NNIDEKfCAjZGVmaW5lIEhBVkVfWFJBTkRSIDEK fCAjZGVmaW5lIEhBVkVfWElORVJBTUEgMQp8ICNkZWZpbmUgSEFWRV9YRklYRVMgMQp8ICNk ZWZpbmUgSEFWRV9YSU5QVVQyIDEKfCAjZGVmaW5lIEhBVkVfWElTQ1JPTExDTEFTU0lORk9f VFlQRSAxCnwgI2RlZmluZSBIQVZFX1hJVE9VQ0hDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmlu ZSBIQVZFX1hJQkFSUklFUlJFTEVBU0VQT0lOVEVSSU5GT19ERVZJQ0VJRCAxCnwgI2RlZmlu ZSBIQVZFX1hJR0VTVFVSRUNMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWFNZTkMg MQp8ICNkZWZpbmUgSEFWRV9YU1lOQ1RSSUdHRVJGRU5DRSAxCnwgI2RlZmluZSBIQVZFX1hE QkUgMQp8ICNkZWZpbmUgSEFWRV9YQ0JfU0hBUEUgMQp8ICNkZWZpbmUgSEFWRV9YU0hBUEUg MQp8ICNkZWZpbmUgSEFWRV9YQ09NUE9TSVRFIDEKfCAjZGVmaW5lIEhBVkVfTElCWE1MMiAx CnwgI2RlZmluZSBIQVZFX0xJTlVYX1NFQ0NPTVBfSCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xf U0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBf RklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GSUxURVJfSCAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgU0laRU9G X0xPTkcgOAp8ICNkZWZpbmUgSEFWRV9BQ0NFUFQ0IDEKfCAjZGVmaW5lIEhBVkVfRkNIRElS IDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNB R0UgMQp8ICNkZWZpbmUgSEFWRV9HRVRfQ1VSUkVOVF9ESVJfTkFNRSAxCnwgI2RlZmluZSBI QVZFX0xSQU5ENDggMQp8ICNkZWZpbmUgSEFWRV9SQU5ET00gMQp8ICNkZWZpbmUgSEFWRV9S SU5UIDEKfCAjZGVmaW5lIEhBVkVfVFJVTkMgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8 ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FMRSAx CnwgI2RlZmluZSBIQVZFX05FV0xPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJMSU1JVCAx CnwgI2RlZmluZSBIQVZFX1NFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEK fCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSU0lH TkFMIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfU0VORFRP IDEKfCAjZGVmaW5lIEhBVkVfUkVDVkZST00gMQp8ICNkZWZpbmUgSEFWRV9HRVRTT0NLTkFN RSAxCnwgI2RlZmluZSBIQVZFX0dFVElGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9GUkVFSUZB RERSUyAxCnwgI2RlZmluZSBIQVZFX0dBSV9TVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZFX1NZ TkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0VORFBXRU5U IDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRHUkVOVCAx CnwgI2RlZmluZSBIQVZFX1JFTkFNRUFUMiAxCnwgI2RlZmluZSBIQVZFX0NGTUFLRVJBVyAx CnwgI2RlZmluZSBIQVZFX0NGU0VUU1BFRUQgMQp8ICNkZWZpbmUgSEFWRV9fX0VYRUNVVEFC TEVfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9MT0cyIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVB RF9TRVROQU1FX05QIDEKfCAjZGVmaW5lIEhBVkVfQUxJR05FRF9BTExPQyAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfQUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX01BRFZJ U0UgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fRlJBTUVfQUREUkVTUyAxCnwgI2RlZmlu ZSBIQVZFX19fQlVJTFRJTl9VTldJTkRfSU5JVCAxCnwgI2RlZmluZSBIQVZFX0ZTRUVLTyAx CnwgI2RlZmluZSBIQVZFX0dSQU5UUFQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQVCAxCnwgI2Rl ZmluZSBIQVZFX1BPU0lYX09QRU5QVCAxCnwgI2RlZmluZSBURVJNSU5GTyAxCnwgI2RlZmlu ZSBURVJNSU5GT19ERUZJTkVTX0JDIDEKfCAjZGVmaW5lIEhBVkVfVElNRVJGRCAxCnwgI2Rl ZmluZSBIQVZFX1ZBTEdSSU5EX1ZBTEdSSU5EX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1Rf VU5JUEFJUl9VTklDT0RFIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwgI2Rl ZmluZSBIQVZFX1dPUktJTkdfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1NOUFJJTlRGIDEKfCAj ZGVmaW5lIEhBVkVfU1BBV05fSCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOIDEKfCAj ZGVmaW5lIEhBVkVfUE9TSVhfU1BBV05fRklMRV9BQ1RJT05TX0FERENIRElSX05QIDEKfCAj ZGVmaW5lIEhBVkVfUE9TSVhfU1BBV05BVFRSX1NFVEZMQUdTIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9QT1NJWF9TUEFXTl9TRVRTSUQgMQp8ICNkZWZpbmUgSEFWRV9HTElCIDEKfCAjZGVm aW5lIEhBVkVfTEFOR0lORk9fQ09ERVNFVCAxCnwgI2RlZmluZSBIQVZFX0xBTkdJTkZPX19O TF9QQVBFUl9XSURUSCAxCnwgI2RlZmluZSBIQVZFX01CU1RBVEVfVCAxCnwgI2RlZmluZSBB TVBFUlNBTkRfRlVMTF9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUFRZUyAxCnwgI2RlZmluZSBI QVZFX1NPQ0tFVFMgMQp8ICNkZWZpbmUgTlVMTF9ERVZJQ0UgIi9kZXYvbnVsbCIKfCAjZGVm aW5lIFNFUENIQVIgJzonCnwgI2RlZmluZSBzdWJwcm9jZXNzZXMgMQp8ICNkZWZpbmUgVVNF Ul9GVUxMX05BTUUgcHctPnB3X2dlY29zCnwgI2RlZmluZSBESVJFQ1RPUllfU0VQICcvJwp8 ICNkZWZpbmUgSVNfREVWSUNFX1NFUChfY18pIDAKfCAjZGVmaW5lIElTX0RJUkVDVE9SWV9T RVAoX2NfKSAoKF9jXykgPT0gRElSRUNUT1JZX1NFUCkKfCAjZGVmaW5lIElTX0FOWV9TRVAo X2NfKSAoSVNfRElSRUNUT1JZX1NFUCAoX2NfKSkKfCAjZGVmaW5lIEhBVkVfUFJPQ0ZTIDEK fCAjZGVmaW5lIERFRkFVTFRfU09VTkRfREVWSUNFICIvZGV2L2RzcCIKfCAjZGVmaW5lIElO VEVSUlVQVF9JTlBVVCAxCnwgI2RlZmluZSBOQVJST1dQUk9UTyAxCnwgI2RlZmluZSBVTklY OThfUFRZUyAxCnwgI2RlZmluZSBQVFlfSVRFUkFUSU9OIGludCBpOyBmb3IgKGkgPSAwOyBp IDwgMTsgaSsrKQp8ICNkZWZpbmUgUFRZX1RUWV9OQU1FX1NQUklOVEYgeyBjaGFyICpwdHlu YW1lID0gMDsgc2lnc2V0X3QgYmxvY2tlZDsgc2lnZW1wdHlzZXQgKCZibG9ja2VkKTsgc2ln YWRkc2V0ICgmYmxvY2tlZCwgU0lHQ0hMRCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX0JMT0NL LCAmYmxvY2tlZCwgMCk7IGlmIChncmFudHB0IChmZCkgIT0gLTEgJiYgdW5sb2NrcHQgKGZk KSAhPSAtMSkgcHR5bmFtZSA9IHB0c25hbWUoZmQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19V TkJMT0NLLCAmYmxvY2tlZCwgMCk7IGlmICghcHR5bmFtZSkgeyBlbWFjc19jbG9zZSAoZmQp OyByZXR1cm4gLTE7IH0gc25wcmludGYgKHB0eV9uYW1lLCBQVFlfTkFNRV9TSVpFLCAiJXMi LCBwdHluYW1lKTsgfQp8ICNkZWZpbmUgUFRZX09QRU4gZG8geyBmZCA9IHBvc2l4X29wZW5w dCAoT19SRFdSIHwgT19DTE9FWEVDIHwgT19OT0NUVFkpOyBpZiAoZmQgPCAwICYmIGVycm5v ID09IEVJTlZBTCkgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fTk9DVFRZKTsgfSB3 aGlsZSAoZmFsc2UpCnwgI2RlZmluZSBQVFlfTkFNRV9TUFJJTlRGIC8qKi8KfCAjZGVmaW5l IFNJR05BTFNfVklBX0NIQVJBQ1RFUlMgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEK fCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBIQVZFX19TRVRKTVAgMQp8 ICNkZWZpbmUgSEFWRV9TSUdTRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TVEFDS19PVkVSRkxP V19IQU5ETElORyAxCnwgI2RlZmluZSBVU0cgLyoqLwp8ICNkZWZpbmUgR05VX0xJTlVYIC8q Ki8KfCAjZGVmaW5lIFNJWkVPRl9TUEVFRF9UIDQKfCAjZGVmaW5lIFVTQUJMRV9GSU9OUkVB RCAxCnwgI2RlZmluZSBVU0FCTEVfU0lHSU8gMQp8ICNkZWZpbmUgQ09QWVJJR0hUICJDb3B5 cmlnaHQgKEMpIDIwMjMgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuIgp8ICNkZWZp bmUgVEVSTV9IRUFERVIgImd0a3V0aWwuaCIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR1VSQVRJ T04gIng4Nl82NC1wYy1saW51eC1nbnUiCnwgI2RlZmluZSBFTUFDU19DT05GSUdfT1BUSU9O UyAiIgp8ICNkZWZpbmUgSEFWRV9YX1dJTkRPV1MgMQp8ICNkZWZpbmUgSEFWRV9YMTEgMQp8 ICNkZWZpbmUgSEFWRV9TVFJVQ1RfQVRUUklCVVRFX0FMSUdORUQgMQp8ICNkZWZpbmUgSEFW RV9UWVBFT0YgMQp8ICNkZWZpbmUgSEFWRV9TVEFURU1FTlRfRVhQUkVTU0lPTlMgMQp8ICNk ZWZpbmUgTUFMTE9DXzBfSVNfTk9OTlVMTCAxCnwgI2RlZmluZSBIQVZFX1NZU19BQ0xfSCAx CnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRf RkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xf U0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZSRUUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xf RlJPTV9NT0RFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZST01fVEVYVCAxCnwgI2RlZmluZSBI QVZFX0FDTF9ERUxFVEVfREVGX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRVhURU5ERURf RklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9MSUJBQ0xfSCAxCnwgI2RlZmluZSBIQVZFX0FD TF9FTlRSSUVTIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZJUlNUX0VOVFJZIDEKfCAjZGVmaW5l IFVTRV9BQ0wgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAxCnwgI2RlZmluZSBIQVZFX0FM TE9DQSAxCnwgI2RlZmluZSBMU1RBVF9GT0xMT1dTX1NMQVNIRURfU1lNTElOSyAxCnwgI2Rl ZmluZSBGVU5DX1JFQUxQQVRIX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfRkFDQ0VTU0FUIDEK fCAjZGVmaW5lIEhBVkVfR0VUQ1dEIDEKfCAjZGVmaW5lIHJlc3RyaWN0IF9fcmVzdHJpY3Rf Xwp8ICNkZWZpbmUgSEFWRV9FTlZJUk9OX0RFQ0wgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NU Uk1PREUgMAp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9Q VF9MT05HX09OTFkgMQp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5l IEhBVkVfVU5TSUdORURfTE9OR19MT05HX0lOVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfTUVN TUVNIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9NRU1SQ0hSIDEKfCAjZGVmaW5lIEhBVkVfTUlO TUFYX0lOX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIFRJTUVfVF9JU19TSUdORUQgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX0FMQVJNIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1RNX1RNX1pP TkUgMQp8ICNkZWZpbmUgSEFWRV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fR01UT0ZG IDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUX1QgMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9UIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9GQ0xPU0VBTEwgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dF VFcgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BVVFcgMQp8ICNkZWZpbmUgX19VU0VfTUlOR1df QU5TSV9TVERJTyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRUNWVCAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfRkNWVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0NWVCAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfU1RSTkxFTiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSVE9JTUFYIDEKfCAjZGVm aW5lIF9VU0VfU1REX1NUQVQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VYRUNWUEUgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX0NMRUFSRVJSX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9GRU9GX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRVJST1JfVU5MT0NLRUQg MQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZGTFVTSF9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfRkdFVFNfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZQVVRDX1VOTE9D S0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GUFVUU19VTkxPQ0tFRCAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfRlJFQURfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZXUklURV9V TkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VUQ19VTkxPQ0tFRCAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfR0VUQ0hBUl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUFVU Q19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUFVUQ0hBUl9VTkxPQ0tFRCAxCnwg I2RlZmluZSBHRVRHUk9VUFNfVCBnaWRfdAp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVERUQUJM RVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfUE9TSVggMQp8ICNkZWZpbmUgUFJPTU9U RURfTU9ERV9UIG1vZGVfdAp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1VUSU1FUyAxCnwgI2Rl ZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9FWFBFQ1QgMQp8 ICNkZWZpbmUgSEFWRV9CWVRFU1dBUF9IIDEKfCAjZGVmaW5lIEdOVUxJQl9DQU5PTklDQUxJ WkVfTEdQTCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LQVQgMQp8ICNkZWZpbmUgSEFWRV9D TE9DS19HRVRSRVMgMQp8ICNkZWZpbmUgSEFWRV9DTE9DS19HRVRUSU1FIDEKfCAjZGVmaW5l IEhBVkVfQ0xPQ0tfU0VUVElNRSAxCnwgI2RlZmluZSBHTlVMSUJfQ0xPU0VfU1RSRUFNIDEK fCAjZGVmaW5lIEhBVkVfQ09QWV9GSUxFX1JBTkdFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNU X0RJUkVOVF9EX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUg R05VTElCX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkRPUEVORElSIDEKfCAj ZGVmaW5lIEdOVUxJQl9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgR0VUWEFUVFJfV0lUSF9QT1NJ WF9BQ0xTIDEKfCAjZGVmaW5lIEZMRVhJQkxFX0FSUkFZX01FTUJFUiAvKiovCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfX19GUEVORElORyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVfUE9TSVggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfTU9VTlRfSCAxCnwgI2RlZmluZSBTVEFUX1NUQVRWRlMgMQp8 ICNkZWZpbmUgU1RBVF9TVEFURlMyX0ZSU0laRSAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFU RlNfSCAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRU5TIDEKfCAjZGVmaW5lIEhBVkVfR0VUTE9B REFWRyAxCnwgI2RlZmluZSBIQVZFX0dFVFJBTkRPTSAxCnwgI2RlZmluZSBIQVZFX1RJTUVT UEVDX0dFVCAxCnwgI2RlZmluZSBHRVRUSU1FT0ZEQVlfVElNRVpPTkUgdm9pZAp8ICNkZWZp bmUgSEFWRV9fX0lOTElORSAxCnwgI2RlZmluZSBIQVZFX0dNUF9IIDEKfCAjZGVmaW5lIEhB VkVfTUVNTUVNIDEKfCAjZGVmaW5lIEhBVkVfTUVNUENQWSAxCnwgI2RlZmluZSBIQVZFX01F TVJDSFIgMQp8ICNkZWZpbmUgSEFWRV9NS09TVEVNUCAxCnwgI2RlZmluZSBHTlVMSUJfTUtP U1RFTVAgMQp8ICNkZWZpbmUgTkVFRF9NS1RJTUVfV09SS0lORyAxCnwgI2RlZmluZSBIQVZF X0JVR19CSUdfTkFOT1NMRUVQIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNk ZWZpbmUgSEFWRV9TQ0hFRF9HRVRBRkZJTklUWSAxCnwgI2RlZmluZSBIQVZFX1NDSEVEX0dF VEFGRklOSVRZX0xJS0VfR0xJQkMgMQp8ICNkZWZpbmUgbXlfc3RyZnRpbWUgbnN0cmZ0aW1l CnwgI2RlZmluZSBIQVZFX1BJUEUyIDEKfCAjZGVmaW5lIFVTRV9YQVRUUiAxCnwgI2RlZmlu ZSBIQVZFX1JFQURMSU5LQVQgMQp8ICNkZWZpbmUgSEFWRV9TSUdERVNDUl9OUCAxCnwgLyog ZW5kIGNvbmZkZWZzLmguICAqLwp8IAp8IC8qIDxzeXMvdHlwZXMuaD4gaXMgbm90IG5lZWRl ZCBhY2NvcmRpbmcgdG8gUE9TSVgsIGJ1dCB0aGUKfCAgICA8c3lzL3NvY2tldC5oPiBpbiBp Mzg2LXVua25vd24tZnJlZWJzZDQuMTAgYW5kCnwgICAgcG93ZXJwYy1hcHBsZS1kYXJ3aW41 LjUgcmVxdWlyZWQgaXQuICovCnwgI2luY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNpZiBIQVZF X1NZU19TT0NLRVRfSAp8ICMgaW5jbHVkZSA8c3lzL3NvY2tldC5oPgp8ICNlbGlmIEhBVkVf V1MyVENQSVBfSAp8ICMgaW5jbHVkZSA8d3MydGNwaXAuaD4KfCAjZW5kaWYKfCAKfCAKfCBp bnQKfCBtYWluICh2b2lkKQp8IHsKfCBpZiAoc2l6ZW9mICgoc29ja2xlbl90KSkpCnwgCSAg ICByZXR1cm4gMDsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjQwODc3OiBy ZXN1bHQ6IHllcwpjb25maWd1cmU6NDA5NDE6IGNoZWNraW5nIGZvciBzc2l6ZV90CmNvbmZp Z3VyZTo0MDk1OTogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJl OjQwOTU5OiAkPyA9IDAKY29uZmlndXJlOjQwOTY3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6 NDA5Nzk6IGNoZWNraW5nIGZvciBzdHJ1Y3Qgc3RhdC5zdF9hdGltLnR2X25zZWMKY29uZmln dXJlOjQwOTc5OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6 NDA5Nzk6ICQ/ID0gMApjb25maWd1cmU6NDA5Nzk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo0 MDk4NzogY2hlY2tpbmcgd2hldGhlciBzdHJ1Y3Qgc3RhdC5zdF9hdGltIGlzIG9mIHR5cGUg c3RydWN0IHRpbWVzcGVjCmNvbmZpZ3VyZTo0MTAxNTogZ2NjIC1jIC1nMyAtTzIgICAgY29u ZnRlc3QuYyA+JjUKY29uZmlndXJlOjQxMDE1OiAkPyA9IDAKY29uZmlndXJlOjQxMDIzOiBy ZXN1bHQ6IHllcwpjb25maWd1cmU6NDEwNzI6IGNoZWNraW5nIGZvciBzdHJ1Y3Qgc3RhdC5z dF9iaXJ0aHRpbWVzcGVjLnR2X25zZWMKY29uZmlndXJlOjQxMDcyOiBnY2MgLWMgLWczIC1P MiAgICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiAnbWFpbic6CmNv bmZ0ZXN0LmM6NDE5OjEyOiBlcnJvcjogJ3N0cnVjdCBzdGF0JyBoYXMgbm8gbWVtYmVyIG5h bWVkICdzdF9iaXJ0aHRpbWVzcGVjJwogIDQxOSB8IGlmIChhY19hZ2dyLnN0X2JpcnRodGlt ZXNwZWMudHZfbnNlYykKICAgICAgfCAgICAgICAgICAgIF4KY29uZmlndXJlOjQxMDcyOiAk PyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAq Lwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2RlZmluZSBQQUNLQUdF X1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIzMC4wLjUwIgp8 ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAzMC4wLjUwIgp8ICNkZWZpbmUg UEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBB Q0tBR0VfVVJMICJodHRwczovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVm aW5lIEhBVkVfUERVTVBFUiAxCnwgI2RlZmluZSBIQVZFX1NURElPX0ggMQp8ICNkZWZpbmUg SEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhB VkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhB VkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUg SEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfRlNfSCAxCnwgI2RlZmluZSBI QVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmlu ZSBIQVZFX1BUWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZp bmUgSEFWRV9VVE1QX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfTFNBTl9JTlRFUkZB Q0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9BU0FOX0lOVEVSRkFDRV9IIDEKfCAj ZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0NPTU1PTl9JTlRFUkZBQ0VfREVGU19IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8 ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwg I2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAxCnwg I2RlZmluZSBIQVZFX1NURElPX0VYVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1ZGU19IIDEK fCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfQ0RFRlNfSCAx CnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9JRUVFNzU0X0gg MQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1Rf SCAxCnwgI2RlZmluZSBIQVZFX1NUREJPT0xfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SQU5E T01fSCAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0Ug MQp8ICNkZWZpbmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAx CnwgI2RlZmluZSBfSFBVWF9BTFRfWE9QRU5fU09DS0VUX0FQSSAxCnwgI2RlZmluZSBfTkVU QlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfT1BFTkJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUgX1BP U0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1 OV9BVFRSSUJTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9CRlBf RVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0RGUF9FWFRfXyAxCnwg I2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRVhUX18gMQp8ICNkZWZpbmUgX19TVERD X1dBTlRfSUVDXzYwNTU5X0ZVTkNTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lF Q182MDU1OV9UWVBFU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9MSUJfRVhUMl9f IDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX01BVEhfU1BFQ19GVU5DU19fIDEKfCAjZGVmaW5l IF9UQU5ERU1fU09VUkNFIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5l IEdDQ19MSU5UIDEKfCAjZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmlu ZSBIQVZFX1NZU19TT1VORENBUkRfSCAxCnwgI2RlZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZp bmUgSEFWRV9TT1VORCAxCnwgI2RlZmluZSBIQVZFX1BFUlNPTkFMSVRZX0FERFJfTk9fUkFO RE9NSVpFIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5GTyAxCnwgI2RlZmluZSBMSU5V WF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUgSEFWRV9URVJNX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUX0lGX0ggMQp8ICNkZWZpbmUgSEFW RV9JRkFERFJTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0ZMQUdTIDEK fCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9IV0FERFIgMQp8ICNkZWZpbmUgSEFW RV9TVFJVQ1RfSUZSRVFfSUZSX05FVE1BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZS RVFfSUZSX0JST0FEQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQURE UiAxCnwgI2RlZmluZSBIQVZFX1NCUksgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAx CnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9WRk9SSyAxCnwgI2RlZmlu ZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0NBTk9OSUNBTElaRV9GSUxFX05BTUUg MQp8ICNkZWZpbmUgSEFWRV9SRUFMUEFUSCAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAj ZGVmaW5lIEhBVkVfRkNITU9EQVQgMQp8ICNkZWZpbmUgSEFWRV9MQ0hNT0QgMQp8ICNkZWZp bmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBI QVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dF VFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9Q VEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBI QVZFX0lTQkxBTksgMQp8ICNkZWZpbmUgSEFWRV9JU1dDVFlQRSAxCnwgI2RlZmluZSBIQVZF X1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9M T0NBTFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUg U1lTVEVNX01BTExPQyAxCnwgI2RlZmluZSBIQVZFX01NQVAgMQp8ICNkZWZpbmUgSEFWRV9Q VEhSRUFEIDEKfCAjZGVmaW5lIFRIUkVBRFNfRU5BQkxFRCAxCnwgI2RlZmluZSBIQVZFX1hL QiAxCnwgI2RlZmluZSBIQVZFX1hLQlJFRlJFU0hLRVlCT0FSRE1BUFBJTkcgMQp8ICNkZWZp bmUgSEFWRV9YS0JGUkVFTkFNRVMgMQp8ICNkZWZpbmUgSEFWRV9YUk1TRVREQVRBQkFTRSAx CnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNPVVJDRVNUUklORyAxCnwgI2RlZmluZSBIQVZF X1hTQ1JFRU5OVU1CRVJPRlNDUkVFTiAxCnwgI2RlZmluZSBIQVZFX1hESVNQTEFZQ0VMTFMg MQp8ICNkZWZpbmUgSEFWRV9YREVTVFJPWVNVQldJTkRPV1MgMQp8ICNkZWZpbmUgSEFWRV9Y MTFSNiAxCnwgI2RlZmluZSBIQVZFX1hfSTE4TiAxCnwgI2RlZmluZSBIQVZFX1hJQ0NBTExC QUNLX0NBTExCQUNLIDEKfCAjZGVmaW5lIEhBVkVfWDExUjZfWElNIDEKfCAjZGVmaW5lIEhB VkVfUlNWRyAxCnwgI2RlZmluZSBIQVZFX1dFQlAgMQp8ICNkZWZpbmUgSEFWRV9TUUxJVEUz IDEKfCAjZGVmaW5lIEhBVkVfU1FMSVRFM19MT0FEX0VYVEVOU0lPTiAxCnwgI2RlZmluZSBI QVZFX0dFVEFERFJJTkZPX0EgMQp8ICNkZWZpbmUgSEFWRV9HVEszIDEKfCAjZGVmaW5lIEdE S19ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIEdMSUJfRElTQUJM RV9ERVBSRUNBVElPTl9XQVJOSU5HUyAxCnwgI2RlZmluZSBVU0VfR1RLIDEKfCAjZGVmaW5l IEhBVkVfTUFMTE9DX1RSSU0gMQp8ICNkZWZpbmUgSEFWRV9EQlVTIDEKfCAjZGVmaW5lIEhB VkVfREJVU19XQVRDSF9HRVRfVU5JWF9GRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVFlQRV9J U19WQUxJRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfQlVTX05BTUUgMQp8ICNk ZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX1BBVEggMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZB TElEQVRFX0lOVEVSRkFDRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfTUVNQkVS IDEKfCAjZGVmaW5lIEhBVkVfR1NFVFRJTkdTIDEKfCAjZGVmaW5lIEhBVkVfTElCU0VMSU5V WCAxCnwgI2RlZmluZSBIQVZFX0dOVVRMUyAxCnwgI2RlZmluZSBIQVZFX0xJQlNZU1RFTUQg MQp8ICNkZWZpbmUgSEFWRV9KU09OIDEKfCAjZGVmaW5lIEhBVkVfSU5PVElGWSAxCnwgI2Rl ZmluZSBVU0VfRklMRV9OT1RJRlkgMQp8ICNkZWZpbmUgVVNFX1RPT0xLSVRfU0NST0xMX0JB UlMgMQp8ICNkZWZpbmUgSEFWRV9YSU0gMQp8ICNkZWZpbmUgVVNFX1hJTSAxCnwgI2RlZmlu ZSBIQVZFX1hSRU5ERVIgMQp8ICNkZWZpbmUgVVNFX0NBSVJPX1hDQiAxCnwgI2RlZmluZSBV U0VfQ0FJUk8gMQp8ICNkZWZpbmUgSEFWRV9GUkVFVFlQRSAxCnwgI2RlZmluZSBIQVZFX0ZU X0ZBQ0VfR0VUQ0hBUlZBUklBTlRJTkRFWCAxCnwgI2RlZmluZSBIQVZFX0xJQk9URiAxCnwg I2RlZmluZSBIQVZFX09URl9HRVRfVkFSSUFUSU9OX0dMWVBIUyAxCnwgI2RlZmluZSBIQVZF X00xN05fRkxUIDEKfCAjZGVmaW5lIEhBVkVfSEFSRkJVWlogMQp8ICNkZWZpbmUgVVNFX1hD QiAxCnwgI2RlZmluZSBIQVZFX1hQTSAxCnwgI2RlZmluZSBIQVZFX0pQRUcgMQp8ICNkZWZp bmUgSEFWRV9MQ01TMiAxCnwgI2RlZmluZSBIQVZFX1pMSUIgMQp8ICNkZWZpbmUgRFlOQU1J Q19MSUJfU1VGRklYICIuc28iCnwgI2RlZmluZSBEWU5BTUlDX0xJQl9TRUNPTkRBUllfU1VG RklYICIiCnwgI2RlZmluZSBIQVZFX0RMQUREUiAxCnwgI2RlZmluZSBIQVZFX01PRFVMRVMg MQp8ICNkZWZpbmUgTU9EVUxFU19TVUZGSVggIi5zbyIKfCAjZGVmaW5lIE5BVElWRV9FTElT UF9TVUZGSVggIi5lbG4iCnwgI2RlZmluZSBIQVZFX1BORyAxCnwgI2RlZmluZSBIQVZFX1RJ RkYgMQp8ICNkZWZpbmUgSEFWRV9HSUYgMQp8ICNkZWZpbmUgSEFWRV9HUE0gMQp8ICNkZWZp bmUgSEFWRV9YX1NNIDEKfCAjZGVmaW5lIEhBVkVfWFJBTkRSIDEKfCAjZGVmaW5lIEhBVkVf WElORVJBTUEgMQp8ICNkZWZpbmUgSEFWRV9YRklYRVMgMQp8ICNkZWZpbmUgSEFWRV9YSU5Q VVQyIDEKfCAjZGVmaW5lIEhBVkVfWElTQ1JPTExDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmlu ZSBIQVZFX1hJVE9VQ0hDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hJQkFSUklF UlJFTEVBU0VQT0lOVEVSSU5GT19ERVZJQ0VJRCAxCnwgI2RlZmluZSBIQVZFX1hJR0VTVFVS RUNMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWFNZTkMgMQp8ICNkZWZpbmUgSEFW RV9YU1lOQ1RSSUdHRVJGRU5DRSAxCnwgI2RlZmluZSBIQVZFX1hEQkUgMQp8ICNkZWZpbmUg SEFWRV9YQ0JfU0hBUEUgMQp8ICNkZWZpbmUgSEFWRV9YU0hBUEUgMQp8ICNkZWZpbmUgSEFW RV9YQ09NUE9TSVRFIDEKfCAjZGVmaW5lIEhBVkVfTElCWE1MMiAxCnwgI2RlZmluZSBIQVZF X0xJTlVYX1NFQ0NPTVBfSCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9E RV9GSUxURVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZ TkMgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GSUxURVJfSCAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NP TVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgU0laRU9GX0xPTkcgOAp8ICNkZWZp bmUgSEFWRV9BQ0NFUFQ0IDEKfCAjZGVmaW5lIEhBVkVfRkNIRElSIDEKfCAjZGVmaW5lIEhB VkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNBR0UgMQp8ICNkZWZpbmUg SEFWRV9HRVRfQ1VSUkVOVF9ESVJfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0xSQU5ENDggMQp8 ICNkZWZpbmUgSEFWRV9SQU5ET00gMQp8ICNkZWZpbmUgSEFWRV9SSU5UIDEKfCAjZGVmaW5l IEhBVkVfVFJVTkMgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9H RVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FMRSAxCnwgI2RlZmluZSBIQVZF X05FV0xPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZF X1NFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5lIEhBVkVf UFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSU0lHTkFMIDEKfCAjZGVmaW5l IEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfU0VORFRPIDEKfCAjZGVmaW5lIEhB VkVfUkVDVkZST00gMQp8ICNkZWZpbmUgSEFWRV9HRVRTT0NLTkFNRSAxCnwgI2RlZmluZSBI QVZFX0dFVElGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9GUkVFSUZBRERSUyAxCnwgI2RlZmlu ZSBIQVZFX0dBSV9TVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZFX1NZTkMgMQp8ICNkZWZpbmUg SEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0VORFBXRU5UIDEKfCAjZGVmaW5lIEhB VkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRHUkVOVCAxCnwgI2RlZmluZSBIQVZF X1JFTkFNRUFUMiAxCnwgI2RlZmluZSBIQVZFX0NGTUFLRVJBVyAxCnwgI2RlZmluZSBIQVZF X0NGU0VUU1BFRUQgMQp8ICNkZWZpbmUgSEFWRV9fX0VYRUNVVEFCTEVfU1RBUlQgMQp8ICNk ZWZpbmUgSEFWRV9MT0cyIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TRVROQU1FX05QIDEK fCAjZGVmaW5lIEhBVkVfQUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfQUxJ R05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX01BRFZJU0UgMQp8ICNkZWZpbmUg SEFWRV9fX0JVSUxUSU5fRlJBTUVfQUREUkVTUyAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJ Tl9VTldJTkRfSU5JVCAxCnwgI2RlZmluZSBIQVZFX0ZTRUVLTyAxCnwgI2RlZmluZSBIQVZF X0dSQU5UUFQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQVCAxCnwgI2RlZmluZSBIQVZFX1BPU0lY X09QRU5QVCAxCnwgI2RlZmluZSBURVJNSU5GTyAxCnwgI2RlZmluZSBURVJNSU5GT19ERUZJ TkVTX0JDIDEKfCAjZGVmaW5lIEhBVkVfVElNRVJGRCAxCnwgI2RlZmluZSBIQVZFX1ZBTEdS SU5EX1ZBTEdSSU5EX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVU5JUEFJUl9VTklDT0RF IDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJ TkdfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1NOUFJJTlRGIDEKfCAjZGVmaW5lIEhBVkVfU1BB V05fSCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOIDEKfCAjZGVmaW5lIEhBVkVfUE9T SVhfU1BBV05fRklMRV9BQ1RJT05TX0FERENIRElSX05QIDEKfCAjZGVmaW5lIEhBVkVfUE9T SVhfU1BBV05BVFRSX1NFVEZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QT1NJWF9TUEFX Tl9TRVRTSUQgMQp8ICNkZWZpbmUgSEFWRV9HTElCIDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lO Rk9fQ09ERVNFVCAxCnwgI2RlZmluZSBIQVZFX0xBTkdJTkZPX19OTF9QQVBFUl9XSURUSCAx CnwgI2RlZmluZSBIQVZFX01CU1RBVEVfVCAxCnwgI2RlZmluZSBBTVBFUlNBTkRfRlVMTF9O QU1FIDEKfCAjZGVmaW5lIEhBVkVfUFRZUyAxCnwgI2RlZmluZSBIQVZFX1NPQ0tFVFMgMQp8 ICNkZWZpbmUgTlVMTF9ERVZJQ0UgIi9kZXYvbnVsbCIKfCAjZGVmaW5lIFNFUENIQVIgJzon CnwgI2RlZmluZSBzdWJwcm9jZXNzZXMgMQp8ICNkZWZpbmUgVVNFUl9GVUxMX05BTUUgcHct PnB3X2dlY29zCnwgI2RlZmluZSBESVJFQ1RPUllfU0VQICcvJwp8ICNkZWZpbmUgSVNfREVW SUNFX1NFUChfY18pIDAKfCAjZGVmaW5lIElTX0RJUkVDVE9SWV9TRVAoX2NfKSAoKF9jXykg PT0gRElSRUNUT1JZX1NFUCkKfCAjZGVmaW5lIElTX0FOWV9TRVAoX2NfKSAoSVNfRElSRUNU T1JZX1NFUCAoX2NfKSkKfCAjZGVmaW5lIEhBVkVfUFJPQ0ZTIDEKfCAjZGVmaW5lIERFRkFV TFRfU09VTkRfREVWSUNFICIvZGV2L2RzcCIKfCAjZGVmaW5lIElOVEVSUlVQVF9JTlBVVCAx CnwgI2RlZmluZSBOQVJST1dQUk9UTyAxCnwgI2RlZmluZSBVTklYOThfUFRZUyAxCnwgI2Rl ZmluZSBQVFlfSVRFUkFUSU9OIGludCBpOyBmb3IgKGkgPSAwOyBpIDwgMTsgaSsrKQp8ICNk ZWZpbmUgUFRZX1RUWV9OQU1FX1NQUklOVEYgeyBjaGFyICpwdHluYW1lID0gMDsgc2lnc2V0 X3QgYmxvY2tlZDsgc2lnZW1wdHlzZXQgKCZibG9ja2VkKTsgc2lnYWRkc2V0ICgmYmxvY2tl ZCwgU0lHQ0hMRCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX0JMT0NLLCAmYmxvY2tlZCwgMCk7 IGlmIChncmFudHB0IChmZCkgIT0gLTEgJiYgdW5sb2NrcHQgKGZkKSAhPSAtMSkgcHR5bmFt ZSA9IHB0c25hbWUoZmQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19VTkJMT0NLLCAmYmxvY2tl ZCwgMCk7IGlmICghcHR5bmFtZSkgeyBlbWFjc19jbG9zZSAoZmQpOyByZXR1cm4gLTE7IH0g c25wcmludGYgKHB0eV9uYW1lLCBQVFlfTkFNRV9TSVpFLCAiJXMiLCBwdHluYW1lKTsgfQp8 ICNkZWZpbmUgUFRZX09QRU4gZG8geyBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19D TE9FWEVDIHwgT19OT0NUVFkpOyBpZiAoZmQgPCAwICYmIGVycm5vID09IEVJTlZBTCkgZmQg PSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fTk9DVFRZKTsgfSB3aGlsZSAoZmFsc2UpCnwg I2RlZmluZSBQVFlfTkFNRV9TUFJJTlRGIC8qKi8KfCAjZGVmaW5lIFNJR05BTFNfVklBX0NI QVJBQ1RFUlMgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAjZGVmaW5lIEdDX1NF VEpNUF9XT1JLUyAxCnwgI2RlZmluZSBIQVZFX19TRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9T SUdTRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TVEFDS19PVkVSRkxPV19IQU5ETElORyAxCnwg I2RlZmluZSBVU0cgLyoqLwp8ICNkZWZpbmUgR05VX0xJTlVYIC8qKi8KfCAjZGVmaW5lIFNJ WkVPRl9TUEVFRF9UIDQKfCAjZGVmaW5lIFVTQUJMRV9GSU9OUkVBRCAxCnwgI2RlZmluZSBV U0FCTEVfU0lHSU8gMQp8ICNkZWZpbmUgQ09QWVJJR0hUICJDb3B5cmlnaHQgKEMpIDIwMjMg RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuIgp8ICNkZWZpbmUgVEVSTV9IRUFERVIg Imd0a3V0aWwuaCIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR1VSQVRJT04gIng4Nl82NC1wYy1s aW51eC1nbnUiCnwgI2RlZmluZSBFTUFDU19DT05GSUdfT1BUSU9OUyAiIgp8ICNkZWZpbmUg SEFWRV9YX1dJTkRPV1MgMQp8ICNkZWZpbmUgSEFWRV9YMTEgMQp8ICNkZWZpbmUgSEFWRV9T VFJVQ1RfQVRUUklCVVRFX0FMSUdORUQgMQp8ICNkZWZpbmUgSEFWRV9UWVBFT0YgMQp8ICNk ZWZpbmUgSEFWRV9TVEFURU1FTlRfRVhQUkVTU0lPTlMgMQp8ICNkZWZpbmUgTUFMTE9DXzBf SVNfTk9OTlVMTCAxCnwgI2RlZmluZSBIQVZFX1NZU19BQ0xfSCAxCnwgI2RlZmluZSBIQVZF X0FDTF9HRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRkQgMQp8ICNkZWZpbmUg SEFWRV9BQ0xfU0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZEIDEKfCAjZGVm aW5lIEhBVkVfQUNMX0ZSRUUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9NT0RFIDEKfCAj ZGVmaW5lIEhBVkVfQUNMX0ZST01fVEVYVCAxCnwgI2RlZmluZSBIQVZFX0FDTF9ERUxFVEVf REVGX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRVhURU5ERURfRklMRSAxCnwgI2RlZmlu ZSBIQVZFX0FDTF9MSUJBQ0xfSCAxCnwgI2RlZmluZSBIQVZFX0FDTF9FTlRSSUVTIDEKfCAj ZGVmaW5lIEhBVkVfQUNMX0ZJUlNUX0VOVFJZIDEKfCAjZGVmaW5lIFVTRV9BQ0wgMQp8ICNk ZWZpbmUgSEFWRV9BTExPQ0FfSCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmlu ZSBMU1RBVF9GT0xMT1dTX1NMQVNIRURfU1lNTElOSyAxCnwgI2RlZmluZSBGVU5DX1JFQUxQ QVRIX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVf R0VUQ1dEIDEKfCAjZGVmaW5lIHJlc3RyaWN0IF9fcmVzdHJpY3RfXwp8ICNkZWZpbmUgSEFW RV9FTlZJUk9OX0RFQ0wgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUk1PREUgMAp8ICNkZWZp bmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9MT05HX09OTFkgMQp8 ICNkZWZpbmUgSEFWRV9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfVU5TSUdORURf TE9OR19MT05HX0lOVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfTUVNTUVNIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9NRU1SQ0hSIDEKfCAjZGVmaW5lIEhBVkVfTUlOTUFYX0lOX1NZU19QQVJB TV9IIDEKfCAjZGVmaW5lIFRJTUVfVF9JU19TSUdORUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X0FMQVJNIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1RNX1RNX1pPTkUgMQp8ICNkZWZpbmUg SEFWRV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fR01UT0ZGIDEKfCAjZGVmaW5lIEhB VkVfU0lHU0VUX1QgMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9UIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9GQ0xPU0VBTEwgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVFcgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX1BVVFcgMQp8ICNkZWZpbmUgX19VU0VfTUlOR1dfQU5TSV9TVERJTyAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfRUNWVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkNWVCAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfR0NWVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSTkxFTiAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIF9VU0VfU1REX1NU QVQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VYRUNWUEUgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X0NMRUFSRVJSX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRU9GX1VOTE9DS0VE IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRVJST1JfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX0ZGTFVTSF9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkdFVFNfVU5M T0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZQVVRDX1VOTE9DS0VEIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9GUFVUU19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRlJFQURf VU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZXUklURV9VTkxPQ0tFRCAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfR0VUQ19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VU Q0hBUl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUFVUQ19VTkxPQ0tFRCAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfUFVUQ0hBUl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBHRVRHUk9V UFNfVCBnaWRfdAp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZp bmUgSEFWRV9NQUxMT0NfUE9TSVggMQp8ICNkZWZpbmUgUFJPTU9URURfTU9ERV9UIG1vZGVf dAp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1VUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0FMTE9D QSAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9FWFBFQ1QgMQp8ICNkZWZpbmUgSEFWRV9C WVRFU1dBUF9IIDEKfCAjZGVmaW5lIEdOVUxJQl9DQU5PTklDQUxJWkVfTEdQTCAxCnwgI2Rl ZmluZSBIQVZFX1JFQURMSU5LQVQgMQp8ICNkZWZpbmUgSEFWRV9DTE9DS19HRVRSRVMgMQp8 ICNkZWZpbmUgSEFWRV9DTE9DS19HRVRUSU1FIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tfU0VU VElNRSAxCnwgI2RlZmluZSBHTlVMSUJfQ0xPU0VfU1RSRUFNIDEKfCAjZGVmaW5lIEhBVkVf Q09QWV9GSUxFX1JBTkdFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0RJUkVOVF9EX1RZUEUg MQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgR05VTElCX0ZBQ0NFU1NB VCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkRPUEVORElSIDEKfCAjZGVmaW5lIEdOVUxJQl9G RE9QRU5ESVIgMQp8ICNkZWZpbmUgR0VUWEFUVFJfV0lUSF9QT1NJWF9BQ0xTIDEKfCAjZGVm aW5lIEZMRVhJQkxFX0FSUkFZX01FTUJFUiAvKiovCnwgI2RlZmluZSBIQVZFX0RFQ0xfX19G UEVORElORyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVfUE9TSVggMQp8ICNkZWZpbmUgSEFWRV9T WVNfTU9VTlRfSCAxCnwgI2RlZmluZSBTVEFUX1NUQVRWRlMgMQp8ICNkZWZpbmUgU1RBVF9T VEFURlMyX0ZSU0laRSAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFURlNfSCAxCnwgI2RlZmlu ZSBIQVZFX0ZVVElNRU5TIDEKfCAjZGVmaW5lIEhBVkVfR0VUTE9BREFWRyAxCnwgI2RlZmlu ZSBIQVZFX0dFVFJBTkRPTSAxCnwgI2RlZmluZSBIQVZFX1RJTUVTUEVDX0dFVCAxCnwgI2Rl ZmluZSBHRVRUSU1FT0ZEQVlfVElNRVpPTkUgdm9pZAp8ICNkZWZpbmUgSEFWRV9fX0lOTElO RSAxCnwgI2RlZmluZSBIQVZFX0dNUF9IIDEKfCAjZGVmaW5lIEhBVkVfTUVNTUVNIDEKfCAj ZGVmaW5lIEhBVkVfTUVNUENQWSAxCnwgI2RlZmluZSBIQVZFX01FTVJDSFIgMQp8ICNkZWZp bmUgSEFWRV9NS09TVEVNUCAxCnwgI2RlZmluZSBHTlVMSUJfTUtPU1RFTVAgMQp8ICNkZWZp bmUgTkVFRF9NS1RJTUVfV09SS0lORyAxCnwgI2RlZmluZSBIQVZFX0JVR19CSUdfTkFOT1NM RUVQIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9TQ0hF RF9HRVRBRkZJTklUWSAxCnwgI2RlZmluZSBIQVZFX1NDSEVEX0dFVEFGRklOSVRZX0xJS0Vf R0xJQkMgMQp8ICNkZWZpbmUgbXlfc3RyZnRpbWUgbnN0cmZ0aW1lCnwgI2RlZmluZSBIQVZF X1BJUEUyIDEKfCAjZGVmaW5lIFVTRV9YQVRUUiAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5L QVQgMQp8ICNkZWZpbmUgSEFWRV9TSUdERVNDUl9OUCAxCnwgI2RlZmluZSBIQVZFX1NUUlVD VF9TVEFUX1NUX0FUSU1fVFZfTlNFQyAxCnwgI2RlZmluZSBUWVBFT0ZfU1RSVUNUX1NUQVRf U1RfQVRJTV9JU19TVFJVQ1RfVElNRVNQRUMgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8K fCAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgICAgICAjaW5jbHVkZSA8c3lzL3N0YXQuaD4K fCAKfCBpbnQKfCBtYWluICh2b2lkKQp8IHsKfCBzdGF0aWMgc3RydWN0IHN0YXQgYWNfYWdn cjsKfCBpZiAoYWNfYWdnci5zdF9iaXJ0aHRpbWVzcGVjLnR2X25zZWMpCnwgcmV0dXJuIDA7 CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZTo0MTA3MjogZ2NjIC1jIC1nMyAt TzIgICAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzogSW4gZnVuY3Rpb24gJ21haW4nOgpj b25mdGVzdC5jOjQxOToxOTogZXJyb3I6ICdzdHJ1Y3Qgc3RhdCcgaGFzIG5vIG1lbWJlciBu YW1lZCAnc3RfYmlydGh0aW1lc3BlYycKICA0MTkgfCBpZiAoc2l6ZW9mIGFjX2FnZ3Iuc3Rf YmlydGh0aW1lc3BlYy50dl9uc2VjKQogICAgICB8ICAgICAgICAgICAgICAgICAgIF4KY29u ZmlndXJlOjQxMDcyOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6Cnwg LyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwg I2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJT SU9OICIzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAzMC4w LjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9y ZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJodHRwczovL3d3dy5nbnUub3JnL3NvZnR3YXJl L2VtYWNzLyIKfCAjZGVmaW5lIEhBVkVfUERVTVBFUiAxCnwgI2RlZmluZSBIQVZFX1NURElP X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19I IDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9I IDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1RE X0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfRlNf SCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lO Rk9fSCAxCnwgI2RlZmluZSBIQVZFX1BUWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09V UkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVf UFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1QX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVEla RVJfTFNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9BU0FOX0lO VEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0NPTU1PTl9JTlRFUkZBQ0Vf REVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfVU5fSCAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVf RVhFQ0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1NURElPX0VYVF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1ZGU19IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfQ0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUg SEFWRV9JRUVFNzU0X0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NUREJPT0xfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19SQU5ET01fSCAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZp bmUgX0FMTF9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmlu ZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBfSFBVWF9BTFRfWE9QRU5fU09DS0VUX0FQSSAx CnwgI2RlZmluZSBfTkVUQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfT1BFTkJTRF9TT1VSQ0Ug MQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9fU1RE Q19XQU5UX0lFQ182MDU1OV9BVFRSSUJTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5U X0lFQ182MDU1OV9CRlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5 X0RGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRVhUX18gMQp8 ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0ZVTkNTX0VYVF9fIDEKfCAjZGVmaW5l IF9fU1REQ19XQU5UX0lFQ182MDU1OV9UWVBFU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENf V0FOVF9MSUJfRVhUMl9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX01BVEhfU1BFQ19GVU5D U19fIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9O U19fIDEKfCAjZGVmaW5lIEdDQ19MSU5UIDEKfCAjZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUv bGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAxCnwgI2RlZmluZSBIQVZF X0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwgI2RlZmluZSBIQVZFX1BFUlNPTkFM SVRZX0FERFJfTk9fUkFORE9NSVpFIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5GTyAx CnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUgSEFWRV9URVJNX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUX0lGX0gg MQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZS RVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9IV0FERFIg MQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX05FVE1BU0sgMQp8ICNkZWZpbmUg SEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVD VF9JRlJFUV9JRlJfQUREUiAxCnwgI2RlZmluZSBIQVZFX1NCUksgMQp8ICNkZWZpbmUgSEFW RV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9W Rk9SSyAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0NBTk9OSUNB TElaRV9GSUxFX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9SRUFMUEFUSCAxCnwgI2RlZmluZSBI QVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EQVQgMQp8ICNkZWZpbmUgSEFWRV9M Q0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJ UiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwg I2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8 ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElO SyAxCnwgI2RlZmluZSBIQVZFX0lTQkxBTksgMQp8ICNkZWZpbmUgSEFWRV9JU1dDVFlQRSAx CnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8 ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJ WkUgMQp8ICNkZWZpbmUgU1lTVEVNX01BTExPQyAxCnwgI2RlZmluZSBIQVZFX01NQVAgMQp8 ICNkZWZpbmUgSEFWRV9QVEhSRUFEIDEKfCAjZGVmaW5lIFRIUkVBRFNfRU5BQkxFRCAxCnwg I2RlZmluZSBIQVZFX1hLQiAxCnwgI2RlZmluZSBIQVZFX1hLQlJFRlJFU0hLRVlCT0FSRE1B UFBJTkcgMQp8ICNkZWZpbmUgSEFWRV9YS0JGUkVFTkFNRVMgMQp8ICNkZWZpbmUgSEFWRV9Y Uk1TRVREQVRBQkFTRSAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNPVVJDRVNUUklORyAx CnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJPRlNDUkVFTiAxCnwgI2RlZmluZSBIQVZF X1hESVNQTEFZQ0VMTFMgMQp8ICNkZWZpbmUgSEFWRV9YREVTVFJPWVNVQldJTkRPV1MgMQp8 ICNkZWZpbmUgSEFWRV9YMTFSNiAxCnwgI2RlZmluZSBIQVZFX1hfSTE4TiAxCnwgI2RlZmlu ZSBIQVZFX1hJQ0NBTExCQUNLX0NBTExCQUNLIDEKfCAjZGVmaW5lIEhBVkVfWDExUjZfWElN IDEKfCAjZGVmaW5lIEhBVkVfUlNWRyAxCnwgI2RlZmluZSBIQVZFX1dFQlAgMQp8ICNkZWZp bmUgSEFWRV9TUUxJVEUzIDEKfCAjZGVmaW5lIEhBVkVfU1FMSVRFM19MT0FEX0VYVEVOU0lP TiAxCnwgI2RlZmluZSBIQVZFX0dFVEFERFJJTkZPX0EgMQp8ICNkZWZpbmUgSEFWRV9HVEsz IDEKfCAjZGVmaW5lIEdES19ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVm aW5lIEdMSUJfRElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAxCnwgI2RlZmluZSBVU0Vf R1RLIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX1RSSU0gMQp8ICNkZWZpbmUgSEFWRV9EQlVT IDEKfCAjZGVmaW5lIEhBVkVfREJVU19XQVRDSF9HRVRfVU5JWF9GRCAxCnwgI2RlZmluZSBI QVZFX0RCVVNfVFlQRV9JU19WQUxJRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVf QlVTX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX1BBVEggMQp8ICNkZWZp bmUgSEFWRV9EQlVTX1ZBTElEQVRFX0lOVEVSRkFDRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNf VkFMSURBVEVfTUVNQkVSIDEKfCAjZGVmaW5lIEhBVkVfR1NFVFRJTkdTIDEKfCAjZGVmaW5l IEhBVkVfTElCU0VMSU5VWCAxCnwgI2RlZmluZSBIQVZFX0dOVVRMUyAxCnwgI2RlZmluZSBI QVZFX0xJQlNZU1RFTUQgMQp8ICNkZWZpbmUgSEFWRV9KU09OIDEKfCAjZGVmaW5lIEhBVkVf SU5PVElGWSAxCnwgI2RlZmluZSBVU0VfRklMRV9OT1RJRlkgMQp8ICNkZWZpbmUgVVNFX1RP T0xLSVRfU0NST0xMX0JBUlMgMQp8ICNkZWZpbmUgSEFWRV9YSU0gMQp8ICNkZWZpbmUgVVNF X1hJTSAxCnwgI2RlZmluZSBIQVZFX1hSRU5ERVIgMQp8ICNkZWZpbmUgVVNFX0NBSVJPX1hD QiAxCnwgI2RlZmluZSBVU0VfQ0FJUk8gMQp8ICNkZWZpbmUgSEFWRV9GUkVFVFlQRSAxCnwg I2RlZmluZSBIQVZFX0ZUX0ZBQ0VfR0VUQ0hBUlZBUklBTlRJTkRFWCAxCnwgI2RlZmluZSBI QVZFX0xJQk9URiAxCnwgI2RlZmluZSBIQVZFX09URl9HRVRfVkFSSUFUSU9OX0dMWVBIUyAx CnwgI2RlZmluZSBIQVZFX00xN05fRkxUIDEKfCAjZGVmaW5lIEhBVkVfSEFSRkJVWlogMQp8 ICNkZWZpbmUgVVNFX1hDQiAxCnwgI2RlZmluZSBIQVZFX1hQTSAxCnwgI2RlZmluZSBIQVZF X0pQRUcgMQp8ICNkZWZpbmUgSEFWRV9MQ01TMiAxCnwgI2RlZmluZSBIQVZFX1pMSUIgMQp8 ICNkZWZpbmUgRFlOQU1JQ19MSUJfU1VGRklYICIuc28iCnwgI2RlZmluZSBEWU5BTUlDX0xJ Ql9TRUNPTkRBUllfU1VGRklYICIiCnwgI2RlZmluZSBIQVZFX0RMQUREUiAxCnwgI2RlZmlu ZSBIQVZFX01PRFVMRVMgMQp8ICNkZWZpbmUgTU9EVUxFU19TVUZGSVggIi5zbyIKfCAjZGVm aW5lIE5BVElWRV9FTElTUF9TVUZGSVggIi5lbG4iCnwgI2RlZmluZSBIQVZFX1BORyAxCnwg I2RlZmluZSBIQVZFX1RJRkYgMQp8ICNkZWZpbmUgSEFWRV9HSUYgMQp8ICNkZWZpbmUgSEFW RV9HUE0gMQp8ICNkZWZpbmUgSEFWRV9YX1NNIDEKfCAjZGVmaW5lIEhBVkVfWFJBTkRSIDEK fCAjZGVmaW5lIEhBVkVfWElORVJBTUEgMQp8ICNkZWZpbmUgSEFWRV9YRklYRVMgMQp8ICNk ZWZpbmUgSEFWRV9YSU5QVVQyIDEKfCAjZGVmaW5lIEhBVkVfWElTQ1JPTExDTEFTU0lORk9f VFlQRSAxCnwgI2RlZmluZSBIQVZFX1hJVE9VQ0hDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmlu ZSBIQVZFX1hJQkFSUklFUlJFTEVBU0VQT0lOVEVSSU5GT19ERVZJQ0VJRCAxCnwgI2RlZmlu ZSBIQVZFX1hJR0VTVFVSRUNMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWFNZTkMg MQp8ICNkZWZpbmUgSEFWRV9YU1lOQ1RSSUdHRVJGRU5DRSAxCnwgI2RlZmluZSBIQVZFX1hE QkUgMQp8ICNkZWZpbmUgSEFWRV9YQ0JfU0hBUEUgMQp8ICNkZWZpbmUgSEFWRV9YU0hBUEUg MQp8ICNkZWZpbmUgSEFWRV9YQ09NUE9TSVRFIDEKfCAjZGVmaW5lIEhBVkVfTElCWE1MMiAx CnwgI2RlZmluZSBIQVZFX0xJTlVYX1NFQ0NPTVBfSCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xf U0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBf RklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GSUxURVJfSCAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgU0laRU9G X0xPTkcgOAp8ICNkZWZpbmUgSEFWRV9BQ0NFUFQ0IDEKfCAjZGVmaW5lIEhBVkVfRkNIRElS IDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNB R0UgMQp8ICNkZWZpbmUgSEFWRV9HRVRfQ1VSUkVOVF9ESVJfTkFNRSAxCnwgI2RlZmluZSBI QVZFX0xSQU5ENDggMQp8ICNkZWZpbmUgSEFWRV9SQU5ET00gMQp8ICNkZWZpbmUgSEFWRV9S SU5UIDEKfCAjZGVmaW5lIEhBVkVfVFJVTkMgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8 ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FMRSAx CnwgI2RlZmluZSBIQVZFX05FV0xPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJMSU1JVCAx CnwgI2RlZmluZSBIQVZFX1NFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEK fCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSU0lH TkFMIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfU0VORFRP IDEKfCAjZGVmaW5lIEhBVkVfUkVDVkZST00gMQp8ICNkZWZpbmUgSEFWRV9HRVRTT0NLTkFN RSAxCnwgI2RlZmluZSBIQVZFX0dFVElGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9GUkVFSUZB RERSUyAxCnwgI2RlZmluZSBIQVZFX0dBSV9TVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZFX1NZ TkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0VORFBXRU5U IDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRHUkVOVCAx CnwgI2RlZmluZSBIQVZFX1JFTkFNRUFUMiAxCnwgI2RlZmluZSBIQVZFX0NGTUFLRVJBVyAx CnwgI2RlZmluZSBIQVZFX0NGU0VUU1BFRUQgMQp8ICNkZWZpbmUgSEFWRV9fX0VYRUNVVEFC TEVfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9MT0cyIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVB RF9TRVROQU1FX05QIDEKfCAjZGVmaW5lIEhBVkVfQUxJR05FRF9BTExPQyAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfQUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX01BRFZJ U0UgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fRlJBTUVfQUREUkVTUyAxCnwgI2RlZmlu ZSBIQVZFX19fQlVJTFRJTl9VTldJTkRfSU5JVCAxCnwgI2RlZmluZSBIQVZFX0ZTRUVLTyAx CnwgI2RlZmluZSBIQVZFX0dSQU5UUFQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQVCAxCnwgI2Rl ZmluZSBIQVZFX1BPU0lYX09QRU5QVCAxCnwgI2RlZmluZSBURVJNSU5GTyAxCnwgI2RlZmlu ZSBURVJNSU5GT19ERUZJTkVTX0JDIDEKfCAjZGVmaW5lIEhBVkVfVElNRVJGRCAxCnwgI2Rl ZmluZSBIQVZFX1ZBTEdSSU5EX1ZBTEdSSU5EX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1Rf VU5JUEFJUl9VTklDT0RFIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwgI2Rl ZmluZSBIQVZFX1dPUktJTkdfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1NOUFJJTlRGIDEKfCAj ZGVmaW5lIEhBVkVfU1BBV05fSCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOIDEKfCAj ZGVmaW5lIEhBVkVfUE9TSVhfU1BBV05fRklMRV9BQ1RJT05TX0FERENIRElSX05QIDEKfCAj ZGVmaW5lIEhBVkVfUE9TSVhfU1BBV05BVFRSX1NFVEZMQUdTIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9QT1NJWF9TUEFXTl9TRVRTSUQgMQp8ICNkZWZpbmUgSEFWRV9HTElCIDEKfCAjZGVm aW5lIEhBVkVfTEFOR0lORk9fQ09ERVNFVCAxCnwgI2RlZmluZSBIQVZFX0xBTkdJTkZPX19O TF9QQVBFUl9XSURUSCAxCnwgI2RlZmluZSBIQVZFX01CU1RBVEVfVCAxCnwgI2RlZmluZSBB TVBFUlNBTkRfRlVMTF9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUFRZUyAxCnwgI2RlZmluZSBI QVZFX1NPQ0tFVFMgMQp8ICNkZWZpbmUgTlVMTF9ERVZJQ0UgIi9kZXYvbnVsbCIKfCAjZGVm aW5lIFNFUENIQVIgJzonCnwgI2RlZmluZSBzdWJwcm9jZXNzZXMgMQp8ICNkZWZpbmUgVVNF Ul9GVUxMX05BTUUgcHctPnB3X2dlY29zCnwgI2RlZmluZSBESVJFQ1RPUllfU0VQICcvJwp8 ICNkZWZpbmUgSVNfREVWSUNFX1NFUChfY18pIDAKfCAjZGVmaW5lIElTX0RJUkVDVE9SWV9T RVAoX2NfKSAoKF9jXykgPT0gRElSRUNUT1JZX1NFUCkKfCAjZGVmaW5lIElTX0FOWV9TRVAo X2NfKSAoSVNfRElSRUNUT1JZX1NFUCAoX2NfKSkKfCAjZGVmaW5lIEhBVkVfUFJPQ0ZTIDEK fCAjZGVmaW5lIERFRkFVTFRfU09VTkRfREVWSUNFICIvZGV2L2RzcCIKfCAjZGVmaW5lIElO VEVSUlVQVF9JTlBVVCAxCnwgI2RlZmluZSBOQVJST1dQUk9UTyAxCnwgI2RlZmluZSBVTklY OThfUFRZUyAxCnwgI2RlZmluZSBQVFlfSVRFUkFUSU9OIGludCBpOyBmb3IgKGkgPSAwOyBp IDwgMTsgaSsrKQp8ICNkZWZpbmUgUFRZX1RUWV9OQU1FX1NQUklOVEYgeyBjaGFyICpwdHlu YW1lID0gMDsgc2lnc2V0X3QgYmxvY2tlZDsgc2lnZW1wdHlzZXQgKCZibG9ja2VkKTsgc2ln YWRkc2V0ICgmYmxvY2tlZCwgU0lHQ0hMRCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX0JMT0NL LCAmYmxvY2tlZCwgMCk7IGlmIChncmFudHB0IChmZCkgIT0gLTEgJiYgdW5sb2NrcHQgKGZk KSAhPSAtMSkgcHR5bmFtZSA9IHB0c25hbWUoZmQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19V TkJMT0NLLCAmYmxvY2tlZCwgMCk7IGlmICghcHR5bmFtZSkgeyBlbWFjc19jbG9zZSAoZmQp OyByZXR1cm4gLTE7IH0gc25wcmludGYgKHB0eV9uYW1lLCBQVFlfTkFNRV9TSVpFLCAiJXMi LCBwdHluYW1lKTsgfQp8ICNkZWZpbmUgUFRZX09QRU4gZG8geyBmZCA9IHBvc2l4X29wZW5w dCAoT19SRFdSIHwgT19DTE9FWEVDIHwgT19OT0NUVFkpOyBpZiAoZmQgPCAwICYmIGVycm5v ID09IEVJTlZBTCkgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fTk9DVFRZKTsgfSB3 aGlsZSAoZmFsc2UpCnwgI2RlZmluZSBQVFlfTkFNRV9TUFJJTlRGIC8qKi8KfCAjZGVmaW5l IFNJR05BTFNfVklBX0NIQVJBQ1RFUlMgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEK fCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBIQVZFX19TRVRKTVAgMQp8 ICNkZWZpbmUgSEFWRV9TSUdTRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TVEFDS19PVkVSRkxP V19IQU5ETElORyAxCnwgI2RlZmluZSBVU0cgLyoqLwp8ICNkZWZpbmUgR05VX0xJTlVYIC8q Ki8KfCAjZGVmaW5lIFNJWkVPRl9TUEVFRF9UIDQKfCAjZGVmaW5lIFVTQUJMRV9GSU9OUkVB RCAxCnwgI2RlZmluZSBVU0FCTEVfU0lHSU8gMQp8ICNkZWZpbmUgQ09QWVJJR0hUICJDb3B5 cmlnaHQgKEMpIDIwMjMgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuIgp8ICNkZWZp bmUgVEVSTV9IRUFERVIgImd0a3V0aWwuaCIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR1VSQVRJ T04gIng4Nl82NC1wYy1saW51eC1nbnUiCnwgI2RlZmluZSBFTUFDU19DT05GSUdfT1BUSU9O UyAiIgp8ICNkZWZpbmUgSEFWRV9YX1dJTkRPV1MgMQp8ICNkZWZpbmUgSEFWRV9YMTEgMQp8 ICNkZWZpbmUgSEFWRV9TVFJVQ1RfQVRUUklCVVRFX0FMSUdORUQgMQp8ICNkZWZpbmUgSEFW RV9UWVBFT0YgMQp8ICNkZWZpbmUgSEFWRV9TVEFURU1FTlRfRVhQUkVTU0lPTlMgMQp8ICNk ZWZpbmUgTUFMTE9DXzBfSVNfTk9OTlVMTCAxCnwgI2RlZmluZSBIQVZFX1NZU19BQ0xfSCAx CnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRf RkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xf U0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZSRUUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xf RlJPTV9NT0RFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZST01fVEVYVCAxCnwgI2RlZmluZSBI QVZFX0FDTF9ERUxFVEVfREVGX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRVhURU5ERURf RklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9MSUJBQ0xfSCAxCnwgI2RlZmluZSBIQVZFX0FD TF9FTlRSSUVTIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZJUlNUX0VOVFJZIDEKfCAjZGVmaW5l IFVTRV9BQ0wgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAxCnwgI2RlZmluZSBIQVZFX0FM TE9DQSAxCnwgI2RlZmluZSBMU1RBVF9GT0xMT1dTX1NMQVNIRURfU1lNTElOSyAxCnwgI2Rl ZmluZSBGVU5DX1JFQUxQQVRIX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfRkFDQ0VTU0FUIDEK fCAjZGVmaW5lIEhBVkVfR0VUQ1dEIDEKfCAjZGVmaW5lIHJlc3RyaWN0IF9fcmVzdHJpY3Rf Xwp8ICNkZWZpbmUgSEFWRV9FTlZJUk9OX0RFQ0wgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NU Uk1PREUgMAp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9Q VF9MT05HX09OTFkgMQp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5l IEhBVkVfVU5TSUdORURfTE9OR19MT05HX0lOVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfTUVN TUVNIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9NRU1SQ0hSIDEKfCAjZGVmaW5lIEhBVkVfTUlO TUFYX0lOX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIFRJTUVfVF9JU19TSUdORUQgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX0FMQVJNIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1RNX1RNX1pP TkUgMQp8ICNkZWZpbmUgSEFWRV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fR01UT0ZG IDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUX1QgMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9UIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9GQ0xPU0VBTEwgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dF VFcgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BVVFcgMQp8ICNkZWZpbmUgX19VU0VfTUlOR1df QU5TSV9TVERJTyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRUNWVCAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfRkNWVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0NWVCAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfU1RSTkxFTiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSVE9JTUFYIDEKfCAjZGVm aW5lIF9VU0VfU1REX1NUQVQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VYRUNWUEUgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX0NMRUFSRVJSX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9GRU9GX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRVJST1JfVU5MT0NLRUQg MQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZGTFVTSF9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfRkdFVFNfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZQVVRDX1VOTE9D S0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GUFVUU19VTkxPQ0tFRCAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfRlJFQURfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZXUklURV9V TkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VUQ19VTkxPQ0tFRCAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfR0VUQ0hBUl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUFVU Q19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUFVUQ0hBUl9VTkxPQ0tFRCAxCnwg I2RlZmluZSBHRVRHUk9VUFNfVCBnaWRfdAp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVERUQUJM RVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfUE9TSVggMQp8ICNkZWZpbmUgUFJPTU9U RURfTU9ERV9UIG1vZGVfdAp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1VUSU1FUyAxCnwgI2Rl ZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9FWFBFQ1QgMQp8 ICNkZWZpbmUgSEFWRV9CWVRFU1dBUF9IIDEKfCAjZGVmaW5lIEdOVUxJQl9DQU5PTklDQUxJ WkVfTEdQTCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LQVQgMQp8ICNkZWZpbmUgSEFWRV9D TE9DS19HRVRSRVMgMQp8ICNkZWZpbmUgSEFWRV9DTE9DS19HRVRUSU1FIDEKfCAjZGVmaW5l IEhBVkVfQ0xPQ0tfU0VUVElNRSAxCnwgI2RlZmluZSBHTlVMSUJfQ0xPU0VfU1RSRUFNIDEK fCAjZGVmaW5lIEhBVkVfQ09QWV9GSUxFX1JBTkdFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNU X0RJUkVOVF9EX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUg R05VTElCX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkRPUEVORElSIDEKfCAj ZGVmaW5lIEdOVUxJQl9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgR0VUWEFUVFJfV0lUSF9QT1NJ WF9BQ0xTIDEKfCAjZGVmaW5lIEZMRVhJQkxFX0FSUkFZX01FTUJFUiAvKiovCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfX19GUEVORElORyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVfUE9TSVggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfTU9VTlRfSCAxCnwgI2RlZmluZSBTVEFUX1NUQVRWRlMgMQp8 ICNkZWZpbmUgU1RBVF9TVEFURlMyX0ZSU0laRSAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFU RlNfSCAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRU5TIDEKfCAjZGVmaW5lIEhBVkVfR0VUTE9B REFWRyAxCnwgI2RlZmluZSBIQVZFX0dFVFJBTkRPTSAxCnwgI2RlZmluZSBIQVZFX1RJTUVT UEVDX0dFVCAxCnwgI2RlZmluZSBHRVRUSU1FT0ZEQVlfVElNRVpPTkUgdm9pZAp8ICNkZWZp bmUgSEFWRV9fX0lOTElORSAxCnwgI2RlZmluZSBIQVZFX0dNUF9IIDEKfCAjZGVmaW5lIEhB VkVfTUVNTUVNIDEKfCAjZGVmaW5lIEhBVkVfTUVNUENQWSAxCnwgI2RlZmluZSBIQVZFX01F TVJDSFIgMQp8ICNkZWZpbmUgSEFWRV9NS09TVEVNUCAxCnwgI2RlZmluZSBHTlVMSUJfTUtP U1RFTVAgMQp8ICNkZWZpbmUgTkVFRF9NS1RJTUVfV09SS0lORyAxCnwgI2RlZmluZSBIQVZF X0JVR19CSUdfTkFOT1NMRUVQIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNk ZWZpbmUgSEFWRV9TQ0hFRF9HRVRBRkZJTklUWSAxCnwgI2RlZmluZSBIQVZFX1NDSEVEX0dF VEFGRklOSVRZX0xJS0VfR0xJQkMgMQp8ICNkZWZpbmUgbXlfc3RyZnRpbWUgbnN0cmZ0aW1l CnwgI2RlZmluZSBIQVZFX1BJUEUyIDEKfCAjZGVmaW5lIFVTRV9YQVRUUiAxCnwgI2RlZmlu ZSBIQVZFX1JFQURMSU5LQVQgMQp8ICNkZWZpbmUgSEFWRV9TSUdERVNDUl9OUCAxCnwgI2Rl ZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX0FUSU1fVFZfTlNFQyAxCnwgI2RlZmluZSBUWVBF T0ZfU1RSVUNUX1NUQVRfU1RfQVRJTV9JU19TVFJVQ1RfVElNRVNQRUMgMQp8IC8qIGVuZCBj b25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgICAgICAjaW5jbHVk ZSA8c3lzL3N0YXQuaD4KfCAKfCBpbnQKfCBtYWluICh2b2lkKQp8IHsKfCBzdGF0aWMgc3Ry dWN0IHN0YXQgYWNfYWdncjsKfCBpZiAoc2l6ZW9mIGFjX2FnZ3Iuc3RfYmlydGh0aW1lc3Bl Yy50dl9uc2VjKQp8IHJldHVybiAwOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1 cmU6NDEwNzI6IHJlc3VsdDogbm8KY29uZmlndXJlOjQxMDgyOiBjaGVja2luZyBmb3Igc3Ry dWN0IHN0YXQuc3RfYmlydGh0aW1lbnNlYwpjb25maWd1cmU6NDEwODI6IGdjYyAtYyAtZzMg LU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6IEluIGZ1bmN0aW9uICdtYWluJzoK Y29uZnRlc3QuYzo0MTk6MTI6IGVycm9yOiAnc3RydWN0IHN0YXQnIGhhcyBubyBtZW1iZXIg bmFtZWQgJ3N0X2JpcnRodGltZW5zZWMnCiAgNDE5IHwgaWYgKGFjX2FnZ3Iuc3RfYmlydGh0 aW1lbnNlYykKICAgICAgfCAgICAgICAgICAgIF4KY29uZmlndXJlOjQxMDgyOiAkPyA9IDEK Y29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNk ZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5B TUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIzMC4wLjUwIgp8ICNkZWZp bmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FH RV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0Vf VVJMICJodHRwczovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIEhB VkVfUERVTVBFUiAxCnwgI2RlZmluZSBIQVZFX1NURElPX0ggMQp8ICNkZWZpbmUgSEFWRV9T VERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfSU5U VFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RS SU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9X Q0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfRlNfSCAxCnwgI2RlZmluZSBIQVZFX01B TExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmluZSBIQVZF X1BUWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFW RV9VVE1QX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfTFNBTl9JTlRFUkZBQ0VfSCAx CnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9BU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5l IEhBVkVfU0FOSVRJWkVSX0NPTU1PTl9JTlRFUkZBQ0VfREVGU19IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZp bmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwgI2RlZmlu ZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAxCnwgI2RlZmlu ZSBIQVZFX1NURElPX0VYVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1ZGU19IIDEKfCAjZGVm aW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfQ0RFRlNfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9JRUVFNzU0X0ggMQp8ICNk ZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwg I2RlZmluZSBIQVZFX1NUREJPT0xfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SQU5ET01fSCAx CnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8ICNk ZWZpbmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2Rl ZmluZSBfSFBVWF9BTFRfWE9QRU5fU09DS0VUX0FQSSAxCnwgI2RlZmluZSBfTkVUQlNEX1NP VVJDRSAxCnwgI2RlZmluZSBfT1BFTkJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUgX1BPU0lYX1BU SFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9BVFRS SUJTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9CRlBfRVhUX18g MQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0RGUF9FWFRfXyAxCnwgI2RlZmlu ZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRf SUVDXzYwNTU5X0ZVTkNTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1 OV9UWVBFU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9MSUJfRVhUMl9fIDEKfCAj ZGVmaW5lIF9fU1REQ19XQU5UX01BVEhfU1BFQ19GVU5DU19fIDEKfCAjZGVmaW5lIF9UQU5E RU1fU09VUkNFIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIEdDQ19M SU5UIDEKfCAjZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBIQVZF X1NZU19TT1VORENBUkRfSCAxCnwgI2RlZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFW RV9TT1VORCAxCnwgI2RlZmluZSBIQVZFX1BFUlNPTkFMSVRZX0FERFJfTk9fUkFORE9NSVpF IDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5GTyAxCnwgI2RlZmluZSBMSU5VWF9TWVNJ TkZPX1VOSVQgMQp8ICNkZWZpbmUgSEFWRV9URVJNX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf V0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUX0lGX0ggMQp8ICNkZWZpbmUgSEFWRV9JRkFE RFJTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVm aW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9IV0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJV Q1RfSUZSRVFfSUZSX05FVE1BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZS X0JST0FEQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQUREUiAxCnwg I2RlZmluZSBIQVZFX1NCUksgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2Rl ZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9WRk9SSyAxCnwgI2RlZmluZSBIQVZF X0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0NBTk9OSUNBTElaRV9GSUxFX05BTUUgMQp8ICNk ZWZpbmUgSEFWRV9SRUFMUEFUSCAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5l IEhBVkVfRkNITU9EQVQgMQp8ICNkZWZpbmUgSEFWRV9MQ0hNT0QgMQp8ICNkZWZpbmUgSEFW RV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZT VEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVP RkRBWSAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFE X1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX0lT QkxBTksgMQp8ICNkZWZpbmUgSEFWRV9JU1dDVFlQRSAxCnwgI2RlZmluZSBIQVZFX1NUUlRP SU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJ TUVfUiAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgU1lTVEVN X01BTExPQyAxCnwgI2RlZmluZSBIQVZFX01NQVAgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFE IDEKfCAjZGVmaW5lIFRIUkVBRFNfRU5BQkxFRCAxCnwgI2RlZmluZSBIQVZFX1hLQiAxCnwg I2RlZmluZSBIQVZFX1hLQlJFRlJFU0hLRVlCT0FSRE1BUFBJTkcgMQp8ICNkZWZpbmUgSEFW RV9YS0JGUkVFTkFNRVMgMQp8ICNkZWZpbmUgSEFWRV9YUk1TRVREQVRBQkFTRSAxCnwgI2Rl ZmluZSBIQVZFX1hTQ1JFRU5SRVNPVVJDRVNUUklORyAxCnwgI2RlZmluZSBIQVZFX1hTQ1JF RU5OVU1CRVJPRlNDUkVFTiAxCnwgI2RlZmluZSBIQVZFX1hESVNQTEFZQ0VMTFMgMQp8ICNk ZWZpbmUgSEFWRV9YREVTVFJPWVNVQldJTkRPV1MgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNiAx CnwgI2RlZmluZSBIQVZFX1hfSTE4TiAxCnwgI2RlZmluZSBIQVZFX1hJQ0NBTExCQUNLX0NB TExCQUNLIDEKfCAjZGVmaW5lIEhBVkVfWDExUjZfWElNIDEKfCAjZGVmaW5lIEhBVkVfUlNW RyAxCnwgI2RlZmluZSBIQVZFX1dFQlAgMQp8ICNkZWZpbmUgSEFWRV9TUUxJVEUzIDEKfCAj ZGVmaW5lIEhBVkVfU1FMSVRFM19MT0FEX0VYVEVOU0lPTiAxCnwgI2RlZmluZSBIQVZFX0dF VEFERFJJTkZPX0EgMQp8ICNkZWZpbmUgSEFWRV9HVEszIDEKfCAjZGVmaW5lIEdES19ESVNB QkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIEdMSUJfRElTQUJMRV9ERVBS RUNBVElPTl9XQVJOSU5HUyAxCnwgI2RlZmluZSBVU0VfR1RLIDEKfCAjZGVmaW5lIEhBVkVf TUFMTE9DX1RSSU0gMQp8ICNkZWZpbmUgSEFWRV9EQlVTIDEKfCAjZGVmaW5lIEhBVkVfREJV U19XQVRDSF9HRVRfVU5JWF9GRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVFlQRV9JU19WQUxJ RCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfQlVTX05BTUUgMQp8ICNkZWZpbmUg SEFWRV9EQlVTX1ZBTElEQVRFX1BBVEggMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRF X0lOVEVSRkFDRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfTUVNQkVSIDEKfCAj ZGVmaW5lIEhBVkVfR1NFVFRJTkdTIDEKfCAjZGVmaW5lIEhBVkVfTElCU0VMSU5VWCAxCnwg I2RlZmluZSBIQVZFX0dOVVRMUyAxCnwgI2RlZmluZSBIQVZFX0xJQlNZU1RFTUQgMQp8ICNk ZWZpbmUgSEFWRV9KU09OIDEKfCAjZGVmaW5lIEhBVkVfSU5PVElGWSAxCnwgI2RlZmluZSBV U0VfRklMRV9OT1RJRlkgMQp8ICNkZWZpbmUgVVNFX1RPT0xLSVRfU0NST0xMX0JBUlMgMQp8 ICNkZWZpbmUgSEFWRV9YSU0gMQp8ICNkZWZpbmUgVVNFX1hJTSAxCnwgI2RlZmluZSBIQVZF X1hSRU5ERVIgMQp8ICNkZWZpbmUgVVNFX0NBSVJPX1hDQiAxCnwgI2RlZmluZSBVU0VfQ0FJ Uk8gMQp8ICNkZWZpbmUgSEFWRV9GUkVFVFlQRSAxCnwgI2RlZmluZSBIQVZFX0ZUX0ZBQ0Vf R0VUQ0hBUlZBUklBTlRJTkRFWCAxCnwgI2RlZmluZSBIQVZFX0xJQk9URiAxCnwgI2RlZmlu ZSBIQVZFX09URl9HRVRfVkFSSUFUSU9OX0dMWVBIUyAxCnwgI2RlZmluZSBIQVZFX00xN05f RkxUIDEKfCAjZGVmaW5lIEhBVkVfSEFSRkJVWlogMQp8ICNkZWZpbmUgVVNFX1hDQiAxCnwg I2RlZmluZSBIQVZFX1hQTSAxCnwgI2RlZmluZSBIQVZFX0pQRUcgMQp8ICNkZWZpbmUgSEFW RV9MQ01TMiAxCnwgI2RlZmluZSBIQVZFX1pMSUIgMQp8ICNkZWZpbmUgRFlOQU1JQ19MSUJf U1VGRklYICIuc28iCnwgI2RlZmluZSBEWU5BTUlDX0xJQl9TRUNPTkRBUllfU1VGRklYICIi CnwgI2RlZmluZSBIQVZFX0RMQUREUiAxCnwgI2RlZmluZSBIQVZFX01PRFVMRVMgMQp8ICNk ZWZpbmUgTU9EVUxFU19TVUZGSVggIi5zbyIKfCAjZGVmaW5lIE5BVElWRV9FTElTUF9TVUZG SVggIi5lbG4iCnwgI2RlZmluZSBIQVZFX1BORyAxCnwgI2RlZmluZSBIQVZFX1RJRkYgMQp8 ICNkZWZpbmUgSEFWRV9HSUYgMQp8ICNkZWZpbmUgSEFWRV9HUE0gMQp8ICNkZWZpbmUgSEFW RV9YX1NNIDEKfCAjZGVmaW5lIEhBVkVfWFJBTkRSIDEKfCAjZGVmaW5lIEhBVkVfWElORVJB TUEgMQp8ICNkZWZpbmUgSEFWRV9YRklYRVMgMQp8ICNkZWZpbmUgSEFWRV9YSU5QVVQyIDEK fCAjZGVmaW5lIEhBVkVfWElTQ1JPTExDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZF X1hJVE9VQ0hDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hJQkFSUklFUlJFTEVB U0VQT0lOVEVSSU5GT19ERVZJQ0VJRCAxCnwgI2RlZmluZSBIQVZFX1hJR0VTVFVSRUNMQVNT SU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWFNZTkMgMQp8ICNkZWZpbmUgSEFWRV9YU1lO Q1RSSUdHRVJGRU5DRSAxCnwgI2RlZmluZSBIQVZFX1hEQkUgMQp8ICNkZWZpbmUgSEFWRV9Y Q0JfU0hBUEUgMQp8ICNkZWZpbmUgSEFWRV9YU0hBUEUgMQp8ICNkZWZpbmUgSEFWRV9YQ09N UE9TSVRFIDEKfCAjZGVmaW5lIEhBVkVfTElCWE1MMiAxCnwgI2RlZmluZSBIQVZFX0xJTlVY X1NFQ0NPTVBfSCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxU RVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8 ICNkZWZpbmUgSEFWRV9MSU5VWF9GSUxURVJfSCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VD Q09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfRklM VEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgU0laRU9GX0xPTkcgOAp8ICNkZWZpbmUgSEFW RV9BQ0NFUFQ0IDEKfCAjZGVmaW5lIEhBVkVfRkNIRElSIDEKfCAjZGVmaW5lIEhBVkVfR0VU SE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNBR0UgMQp8ICNkZWZpbmUgSEFWRV9H RVRfQ1VSUkVOVF9ESVJfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0xSQU5ENDggMQp8ICNkZWZp bmUgSEFWRV9SQU5ET00gMQp8ICNkZWZpbmUgSEFWRV9SSU5UIDEKfCAjZGVmaW5lIEhBVkVf VFJVTkMgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdF U0laRSAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX05FV0xP Q0FMRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NFVFJM SU1JVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVB RF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSU0lHTkFMIDEKfCAjZGVmaW5lIEhBVkVf U0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfU0VORFRPIDEKfCAjZGVmaW5lIEhBVkVfUkVD VkZST00gMQp8ICNkZWZpbmUgSEFWRV9HRVRTT0NLTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dF VElGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9GUkVFSUZBRERSUyAxCnwgI2RlZmluZSBIQVZF X0dBSV9TVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZFX1NZTkMgMQp8ICNkZWZpbmUgSEFWRV9H RVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0VORFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VU R1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX1JFTkFN RUFUMiAxCnwgI2RlZmluZSBIQVZFX0NGTUFLRVJBVyAxCnwgI2RlZmluZSBIQVZFX0NGU0VU U1BFRUQgMQp8ICNkZWZpbmUgSEFWRV9fX0VYRUNVVEFCTEVfU1RBUlQgMQp8ICNkZWZpbmUg SEFWRV9MT0cyIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TRVROQU1FX05QIDEKfCAjZGVm aW5lIEhBVkVfQUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfQUxJR05FRF9B TExPQyAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX01BRFZJU0UgMQp8ICNkZWZpbmUgSEFWRV9f X0JVSUxUSU5fRlJBTUVfQUREUkVTUyAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9VTldJ TkRfSU5JVCAxCnwgI2RlZmluZSBIQVZFX0ZTRUVLTyAxCnwgI2RlZmluZSBIQVZFX0dSQU5U UFQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQVCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX09QRU5Q VCAxCnwgI2RlZmluZSBURVJNSU5GTyAxCnwgI2RlZmluZSBURVJNSU5GT19ERUZJTkVTX0JD IDEKfCAjZGVmaW5lIEhBVkVfVElNRVJGRCAxCnwgI2RlZmluZSBIQVZFX1ZBTEdSSU5EX1ZB TEdSSU5EX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVU5JUEFJUl9VTklDT0RFIDEKfCAj ZGVmaW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfRk9S SyAxCnwgI2RlZmluZSBIQVZFX1NOUFJJTlRGIDEKfCAjZGVmaW5lIEhBVkVfU1BBV05fSCAx CnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BB V05fRklMRV9BQ1RJT05TX0FERENIRElSX05QIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BB V05BVFRSX1NFVEZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QT1NJWF9TUEFXTl9TRVRT SUQgMQp8ICNkZWZpbmUgSEFWRV9HTElCIDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fQ09E RVNFVCAxCnwgI2RlZmluZSBIQVZFX0xBTkdJTkZPX19OTF9QQVBFUl9XSURUSCAxCnwgI2Rl ZmluZSBIQVZFX01CU1RBVEVfVCAxCnwgI2RlZmluZSBBTVBFUlNBTkRfRlVMTF9OQU1FIDEK fCAjZGVmaW5lIEhBVkVfUFRZUyAxCnwgI2RlZmluZSBIQVZFX1NPQ0tFVFMgMQp8ICNkZWZp bmUgTlVMTF9ERVZJQ0UgIi9kZXYvbnVsbCIKfCAjZGVmaW5lIFNFUENIQVIgJzonCnwgI2Rl ZmluZSBzdWJwcm9jZXNzZXMgMQp8ICNkZWZpbmUgVVNFUl9GVUxMX05BTUUgcHctPnB3X2dl Y29zCnwgI2RlZmluZSBESVJFQ1RPUllfU0VQICcvJwp8ICNkZWZpbmUgSVNfREVWSUNFX1NF UChfY18pIDAKfCAjZGVmaW5lIElTX0RJUkVDVE9SWV9TRVAoX2NfKSAoKF9jXykgPT0gRElS RUNUT1JZX1NFUCkKfCAjZGVmaW5lIElTX0FOWV9TRVAoX2NfKSAoSVNfRElSRUNUT1JZX1NF UCAoX2NfKSkKfCAjZGVmaW5lIEhBVkVfUFJPQ0ZTIDEKfCAjZGVmaW5lIERFRkFVTFRfU09V TkRfREVWSUNFICIvZGV2L2RzcCIKfCAjZGVmaW5lIElOVEVSUlVQVF9JTlBVVCAxCnwgI2Rl ZmluZSBOQVJST1dQUk9UTyAxCnwgI2RlZmluZSBVTklYOThfUFRZUyAxCnwgI2RlZmluZSBQ VFlfSVRFUkFUSU9OIGludCBpOyBmb3IgKGkgPSAwOyBpIDwgMTsgaSsrKQp8ICNkZWZpbmUg UFRZX1RUWV9OQU1FX1NQUklOVEYgeyBjaGFyICpwdHluYW1lID0gMDsgc2lnc2V0X3QgYmxv Y2tlZDsgc2lnZW1wdHlzZXQgKCZibG9ja2VkKTsgc2lnYWRkc2V0ICgmYmxvY2tlZCwgU0lH Q0hMRCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX0JMT0NLLCAmYmxvY2tlZCwgMCk7IGlmIChn cmFudHB0IChmZCkgIT0gLTEgJiYgdW5sb2NrcHQgKGZkKSAhPSAtMSkgcHR5bmFtZSA9IHB0 c25hbWUoZmQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19VTkJMT0NLLCAmYmxvY2tlZCwgMCk7 IGlmICghcHR5bmFtZSkgeyBlbWFjc19jbG9zZSAoZmQpOyByZXR1cm4gLTE7IH0gc25wcmlu dGYgKHB0eV9uYW1lLCBQVFlfTkFNRV9TSVpFLCAiJXMiLCBwdHluYW1lKTsgfQp8ICNkZWZp bmUgUFRZX09QRU4gZG8geyBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19DTE9FWEVD IHwgT19OT0NUVFkpOyBpZiAoZmQgPCAwICYmIGVycm5vID09IEVJTlZBTCkgZmQgPSBwb3Np eF9vcGVucHQgKE9fUkRXUiB8IE9fTk9DVFRZKTsgfSB3aGlsZSAoZmFsc2UpCnwgI2RlZmlu ZSBQVFlfTkFNRV9TUFJJTlRGIC8qKi8KfCAjZGVmaW5lIFNJR05BTFNfVklBX0NIQVJBQ1RF UlMgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9X T1JLUyAxCnwgI2RlZmluZSBIQVZFX19TRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRVRK TVAgMQp8ICNkZWZpbmUgSEFWRV9TVEFDS19PVkVSRkxPV19IQU5ETElORyAxCnwgI2RlZmlu ZSBVU0cgLyoqLwp8ICNkZWZpbmUgR05VX0xJTlVYIC8qKi8KfCAjZGVmaW5lIFNJWkVPRl9T UEVFRF9UIDQKfCAjZGVmaW5lIFVTQUJMRV9GSU9OUkVBRCAxCnwgI2RlZmluZSBVU0FCTEVf U0lHSU8gMQp8ICNkZWZpbmUgQ09QWVJJR0hUICJDb3B5cmlnaHQgKEMpIDIwMjMgRnJlZSBT b2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuIgp8ICNkZWZpbmUgVEVSTV9IRUFERVIgImd0a3V0 aWwuaCIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR1VSQVRJT04gIng4Nl82NC1wYy1saW51eC1n bnUiCnwgI2RlZmluZSBFTUFDU19DT05GSUdfT1BUSU9OUyAiIgp8ICNkZWZpbmUgSEFWRV9Y X1dJTkRPV1MgMQp8ICNkZWZpbmUgSEFWRV9YMTEgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1Rf QVRUUklCVVRFX0FMSUdORUQgMQp8ICNkZWZpbmUgSEFWRV9UWVBFT0YgMQp8ICNkZWZpbmUg SEFWRV9TVEFURU1FTlRfRVhQUkVTU0lPTlMgMQp8ICNkZWZpbmUgTUFMTE9DXzBfSVNfTk9O TlVMTCAxCnwgI2RlZmluZSBIQVZFX1NZU19BQ0xfSCAxCnwgI2RlZmluZSBIQVZFX0FDTF9H RVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9B Q0xfU0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZEIDEKfCAjZGVmaW5lIEhB VkVfQUNMX0ZSRUUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9NT0RFIDEKfCAjZGVmaW5l IEhBVkVfQUNMX0ZST01fVEVYVCAxCnwgI2RlZmluZSBIQVZFX0FDTF9ERUxFVEVfREVGX0ZJ TEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRVhURU5ERURfRklMRSAxCnwgI2RlZmluZSBIQVZF X0FDTF9MSUJBQ0xfSCAxCnwgI2RlZmluZSBIQVZFX0FDTF9FTlRSSUVTIDEKfCAjZGVmaW5l IEhBVkVfQUNMX0ZJUlNUX0VOVFJZIDEKfCAjZGVmaW5lIFVTRV9BQ0wgMQp8ICNkZWZpbmUg SEFWRV9BTExPQ0FfSCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBMU1RB VF9GT0xMT1dTX1NMQVNIRURfU1lNTElOSyAxCnwgI2RlZmluZSBGVU5DX1JFQUxQQVRIX1dP UktTIDEKfCAjZGVmaW5lIEhBVkVfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfR0VUQ1dE IDEKfCAjZGVmaW5lIHJlc3RyaWN0IF9fcmVzdHJpY3RfXwp8ICNkZWZpbmUgSEFWRV9FTlZJ Uk9OX0RFQ0wgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUk1PREUgMAp8ICNkZWZpbmUgSEFW RV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9MT05HX09OTFkgMQp8ICNkZWZp bmUgSEFWRV9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfVU5TSUdORURfTE9OR19M T05HX0lOVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfTUVNTUVNIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9NRU1SQ0hSIDEKfCAjZGVmaW5lIEhBVkVfTUlOTUFYX0lOX1NZU19QQVJBTV9IIDEK fCAjZGVmaW5lIFRJTUVfVF9JU19TSUdORUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0FMQVJN IDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1RNX1RNX1pPTkUgMQp8ICNkZWZpbmUgSEFWRV9U TV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fR01UT0ZGIDEKfCAjZGVmaW5lIEhBVkVfU0lH U0VUX1QgMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9UIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9G Q0xPU0VBTEwgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVFcgMQp8ICNkZWZpbmUgSEFWRV9E RUNMX1BVVFcgMQp8ICNkZWZpbmUgX19VU0VfTUlOR1dfQU5TSV9TVERJTyAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfRUNWVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkNWVCAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfR0NWVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSTkxFTiAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIF9VU0VfU1REX1NUQVQgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX0VYRUNWUEUgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0NMRUFS RVJSX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRU9GX1VOTE9DS0VEIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9GRVJST1JfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X0ZGTFVTSF9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkdFVFNfVU5MT0NLRUQg MQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZQVVRDX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9GUFVUU19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRlJFQURfVU5MT0NL RUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZXUklURV9VTkxPQ0tFRCAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfR0VUQ19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VUQ0hBUl9V TkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUFVUQ19VTkxPQ0tFRCAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfUFVUQ0hBUl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBHRVRHUk9VUFNfVCBn aWRfdAp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFW RV9NQUxMT0NfUE9TSVggMQp8ICNkZWZpbmUgUFJPTU9URURfTU9ERV9UIG1vZGVfdAp8ICNk ZWZpbmUgSEFWRV9XT1JLSU5HX1VUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwg I2RlZmluZSBIQVZFX19fQlVJTFRJTl9FWFBFQ1QgMQp8ICNkZWZpbmUgSEFWRV9CWVRFU1dB UF9IIDEKfCAjZGVmaW5lIEdOVUxJQl9DQU5PTklDQUxJWkVfTEdQTCAxCnwgI2RlZmluZSBI QVZFX1JFQURMSU5LQVQgMQp8ICNkZWZpbmUgSEFWRV9DTE9DS19HRVRSRVMgMQp8ICNkZWZp bmUgSEFWRV9DTE9DS19HRVRUSU1FIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tfU0VUVElNRSAx CnwgI2RlZmluZSBHTlVMSUJfQ0xPU0VfU1RSRUFNIDEKfCAjZGVmaW5lIEhBVkVfQ09QWV9G SUxFX1JBTkdFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0RJUkVOVF9EX1RZUEUgMQp8ICNk ZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgR05VTElCX0ZBQ0NFU1NBVCAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfRkRPUEVORElSIDEKfCAjZGVmaW5lIEdOVUxJQl9GRE9QRU5E SVIgMQp8ICNkZWZpbmUgR0VUWEFUVFJfV0lUSF9QT1NJWF9BQ0xTIDEKfCAjZGVmaW5lIEZM RVhJQkxFX0FSUkFZX01FTUJFUiAvKiovCnwgI2RlZmluZSBIQVZFX0RFQ0xfX19GUEVORElO RyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVfUE9TSVggMQp8ICNkZWZpbmUgSEFWRV9TWVNfTU9V TlRfSCAxCnwgI2RlZmluZSBTVEFUX1NUQVRWRlMgMQp8ICNkZWZpbmUgU1RBVF9TVEFURlMy X0ZSU0laRSAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFURlNfSCAxCnwgI2RlZmluZSBIQVZF X0ZVVElNRU5TIDEKfCAjZGVmaW5lIEhBVkVfR0VUTE9BREFWRyAxCnwgI2RlZmluZSBIQVZF X0dFVFJBTkRPTSAxCnwgI2RlZmluZSBIQVZFX1RJTUVTUEVDX0dFVCAxCnwgI2RlZmluZSBH RVRUSU1FT0ZEQVlfVElNRVpPTkUgdm9pZAp8ICNkZWZpbmUgSEFWRV9fX0lOTElORSAxCnwg I2RlZmluZSBIQVZFX0dNUF9IIDEKfCAjZGVmaW5lIEhBVkVfTUVNTUVNIDEKfCAjZGVmaW5l IEhBVkVfTUVNUENQWSAxCnwgI2RlZmluZSBIQVZFX01FTVJDSFIgMQp8ICNkZWZpbmUgSEFW RV9NS09TVEVNUCAxCnwgI2RlZmluZSBHTlVMSUJfTUtPU1RFTVAgMQp8ICNkZWZpbmUgTkVF RF9NS1RJTUVfV09SS0lORyAxCnwgI2RlZmluZSBIQVZFX0JVR19CSUdfTkFOT1NMRUVQIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9TQ0hFRF9HRVRB RkZJTklUWSAxCnwgI2RlZmluZSBIQVZFX1NDSEVEX0dFVEFGRklOSVRZX0xJS0VfR0xJQkMg MQp8ICNkZWZpbmUgbXlfc3RyZnRpbWUgbnN0cmZ0aW1lCnwgI2RlZmluZSBIQVZFX1BJUEUy IDEKfCAjZGVmaW5lIFVTRV9YQVRUUiAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LQVQgMQp8 ICNkZWZpbmUgSEFWRV9TSUdERVNDUl9OUCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFU X1NUX0FUSU1fVFZfTlNFQyAxCnwgI2RlZmluZSBUWVBFT0ZfU1RSVUNUX1NUQVRfU1RfQVRJ TV9JU19TVFJVQ1RfVElNRVNQRUMgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5j bHVkZSA8c3lzL3R5cGVzLmg+CnwgICAgICAgICAjaW5jbHVkZSA8c3lzL3N0YXQuaD4KfCAK fCBpbnQKfCBtYWluICh2b2lkKQp8IHsKfCBzdGF0aWMgc3RydWN0IHN0YXQgYWNfYWdncjsK fCBpZiAoYWNfYWdnci5zdF9iaXJ0aHRpbWVuc2VjKQp8IHJldHVybiAwOwp8ICAgOwp8ICAg cmV0dXJuIDA7CnwgfQpjb25maWd1cmU6NDEwODI6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0 ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6IEluIGZ1bmN0aW9uICdtYWluJzoKY29uZnRlc3QuYzo0 MTk6MTk6IGVycm9yOiAnc3RydWN0IHN0YXQnIGhhcyBubyBtZW1iZXIgbmFtZWQgJ3N0X2Jp cnRodGltZW5zZWMnCiAgNDE5IHwgaWYgKHNpemVvZiBhY19hZ2dyLnN0X2JpcnRodGltZW5z ZWMpCiAgICAgIHwgICAgICAgICAgICAgICAgICAgXgpjb25maWd1cmU6NDEwODI6ICQ/ID0g MQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwg I2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFS TkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMwLjAuNTAiCnwgI2Rl ZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDMwLjAuNTAiCnwgI2RlZmluZSBQQUNL QUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FH RV9VUkwgImh0dHBzOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUg SEFWRV9QRFVNUEVSIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fSCAxCnwgI2RlZmluZSBIQVZF X1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9J TlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9T VFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZF X1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GU19IIDEKfCAjZGVmaW5lIEhBVkVf TUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhB VkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBI QVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9MU0FOX0lOVEVSRkFDRV9I IDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0FTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZp bmUgSEFWRV9TQU5JVElaRVJfQ09NTU9OX0lOVEVSRkFDRV9ERUZTX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2Rl ZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVm aW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVm aW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVkZTX0ggMQp8ICNk ZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19DREVGU19IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX0lFRUU3NTRfSCAxCnwg I2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEK fCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JBTkRPTV9I IDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwg I2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAj ZGVmaW5lIF9IUFVYX0FMVF9YT1BFTl9TT0NLRVRfQVBJIDEKfCAjZGVmaW5lIF9ORVRCU0Rf U09VUkNFIDEKfCAjZGVmaW5lIF9PUEVOQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfUE9TSVhf UFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0FU VFJJQlNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0JGUF9FWFRf XyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfREZQX0VYVF9fIDEKfCAjZGVm aW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FO VF9JRUNfNjA1NTlfRlVOQ1NfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYw NTU5X1RZUEVTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0xJQl9FWFQyX18gMQp8 ICNkZWZpbmUgX19TVERDX1dBTlRfTUFUSF9TUEVDX0ZVTkNTX18gMQp8ICNkZWZpbmUgX1RB TkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgR0ND X0xJTlQgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAjZGVmaW5lIEhB VkVfU1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2RlZmluZSBI QVZFX1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfQUREUl9OT19SQU5ET01J WkUgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZ U0lORk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZFX0lG QUREUlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8ICNk ZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwgI2RlZmluZSBIQVZFX1NU UlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9J RlJfQlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERSIDEK fCAjZGVmaW5lIEhBVkVfU0JSSyAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAj ZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhB VkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfQ0FOT05JQ0FMSVpFX0ZJTEVfTkFNRSAxCnwg I2RlZmluZSBIQVZFX1JFQUxQQVRIIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZp bmUgSEFWRV9GQ0hNT0RBVCAxCnwgI2RlZmluZSBIQVZFX0xDSE1PRCAxCnwgI2RlZmluZSBI QVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVf RlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElN RU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1BUSFJF QURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVf SVNCTEFOSyAxCnwgI2RlZmluZSBIQVZFX0lTV0NUWVBFIDEKfCAjZGVmaW5lIEhBVkVfU1RS VE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FM VElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBTWVNU RU1fTUFMTE9DIDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2RlZmluZSBIQVZFX1BUSFJF QUQgMQp8ICNkZWZpbmUgVEhSRUFEU19FTkFCTEVEIDEKfCAjZGVmaW5lIEhBVkVfWEtCIDEK fCAjZGVmaW5lIEhBVkVfWEtCUkVGUkVTSEtFWUJPQVJETUFQUElORyAxCnwgI2RlZmluZSBI QVZFX1hLQkZSRUVOQU1FUyAxCnwgI2RlZmluZSBIQVZFX1hSTVNFVERBVEFCQVNFIDEKfCAj ZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RSSU5HIDEKfCAjZGVmaW5lIEhBVkVfWFND UkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhBVkVfWERJU1BMQVlDRUxMUyAxCnwg I2RlZmluZSBIQVZFX1hERVNUUk9ZU1VCV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gxMVI2 IDEKfCAjZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVmaW5lIEhBVkVfWElDQ0FMTEJBQ0tf Q0FMTEJBQ0sgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9YSU0gMQp8ICNkZWZpbmUgSEFWRV9S U1ZHIDEKfCAjZGVmaW5lIEhBVkVfV0VCUCAxCnwgI2RlZmluZSBIQVZFX1NRTElURTMgMQp8 ICNkZWZpbmUgSEFWRV9TUUxJVEUzX0xPQURfRVhURU5TSU9OIDEKfCAjZGVmaW5lIEhBVkVf R0VUQUREUklORk9fQSAxCnwgI2RlZmluZSBIQVZFX0dUSzMgMQp8ICNkZWZpbmUgR0RLX0RJ U0FCTEVfREVQUkVDQVRJT05fV0FSTklOR1MgMQp8ICNkZWZpbmUgR0xJQl9ESVNBQkxFX0RF UFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIFVTRV9HVEsgMQp8ICNkZWZpbmUgSEFW RV9NQUxMT0NfVFJJTSAxCnwgI2RlZmluZSBIQVZFX0RCVVMgMQp8ICNkZWZpbmUgSEFWRV9E QlVTX1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19UWVBFX0lTX1ZB TElEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAxCnwgI2RlZmlu ZSBIQVZFX0RCVVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURB VEVfSU5URVJGQUNFIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIgMQp8 ICNkZWZpbmUgSEFWRV9HU0VUVElOR1MgMQp8ICNkZWZpbmUgSEFWRV9MSUJTRUxJTlVYIDEK fCAjZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhBVkVfTElCU1lTVEVNRCAxCnwg I2RlZmluZSBIQVZFX0pTT04gMQp8ICNkZWZpbmUgSEFWRV9JTk9USUZZIDEKfCAjZGVmaW5l IFVTRV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBVU0VfVE9PTEtJVF9TQ1JPTExfQkFSUyAx CnwgI2RlZmluZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBVU0VfWElNIDEKfCAjZGVmaW5lIEhB VkVfWFJFTkRFUiAxCnwgI2RlZmluZSBVU0VfQ0FJUk9fWENCIDEKfCAjZGVmaW5lIFVTRV9D QUlSTyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAjZGVmaW5lIEhBVkVfRlRfRkFD RV9HRVRDSEFSVkFSSUFOVElOREVYIDEKfCAjZGVmaW5lIEhBVkVfTElCT1RGIDEKfCAjZGVm aW5lIEhBVkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTIDEKfCAjZGVmaW5lIEhBVkVfTTE3 Tl9GTFQgMQp8ICNkZWZpbmUgSEFWRV9IQVJGQlVaWiAxCnwgI2RlZmluZSBVU0VfWENCIDEK fCAjZGVmaW5lIEhBVkVfWFBNIDEKfCAjZGVmaW5lIEhBVkVfSlBFRyAxCnwgI2RlZmluZSBI QVZFX0xDTVMyIDEKfCAjZGVmaW5lIEhBVkVfWkxJQiAxCnwgI2RlZmluZSBEWU5BTUlDX0xJ Ql9TVUZGSVggIi5zbyIKfCAjZGVmaW5lIERZTkFNSUNfTElCX1NFQ09OREFSWV9TVUZGSVgg IiIKfCAjZGVmaW5lIEhBVkVfRExBRERSIDEKfCAjZGVmaW5lIEhBVkVfTU9EVUxFUyAxCnwg I2RlZmluZSBNT0RVTEVTX1NVRkZJWCAiLnNvIgp8ICNkZWZpbmUgTkFUSVZFX0VMSVNQX1NV RkZJWCAiLmVsbiIKfCAjZGVmaW5lIEhBVkVfUE5HIDEKfCAjZGVmaW5lIEhBVkVfVElGRiAx CnwgI2RlZmluZSBIQVZFX0dJRiAxCnwgI2RlZmluZSBIQVZFX0dQTSAxCnwgI2RlZmluZSBI QVZFX1hfU00gMQp8ICNkZWZpbmUgSEFWRV9YUkFORFIgMQp8ICNkZWZpbmUgSEFWRV9YSU5F UkFNQSAxCnwgI2RlZmluZSBIQVZFX1hGSVhFUyAxCnwgI2RlZmluZSBIQVZFX1hJTlBVVDIg MQp8ICNkZWZpbmUgSEFWRV9YSVNDUk9MTENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhB VkVfWElUT1VDSENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWElCQVJSSUVSUkVM RUFTRVBPSU5URVJJTkZPX0RFVklDRUlEIDEKfCAjZGVmaW5lIEhBVkVfWElHRVNUVVJFQ0xB U1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQyAxCnwgI2RlZmluZSBIQVZFX1hT WU5DVFJJR0dFUkZFTkNFIDEKfCAjZGVmaW5lIEhBVkVfWERCRSAxCnwgI2RlZmluZSBIQVZF X1hDQl9TSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hTSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hD T01QT1NJVEUgMQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwyIDEKfCAjZGVmaW5lIEhBVkVfTElO VVhfU0VDQ09NUF9IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX1NFVF9NT0RFX0ZJ TFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9GSUxURVJfRkxBR19UU1lOQyAx CnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZJTFRFUl9IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9T RUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9G SUxURVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA4CnwgI2RlZmluZSBI QVZFX0FDQ0VQVDQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hESVIgMQp8ICNkZWZpbmUgSEFWRV9H RVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJVU0FHRSAxCnwgI2RlZmluZSBIQVZF X0dFVF9DVVJSRU5UX0RJUl9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfTFJBTkQ0OCAxCnwgI2Rl ZmluZSBIQVZFX1JBTkRPTSAxCnwgI2RlZmluZSBIQVZFX1JJTlQgMQp8ICNkZWZpbmUgSEFW RV9UUlVOQyAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBB R0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfTkVX TE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VU UkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9QVEhS RUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJTSUdOQUwgMQp8ICNkZWZpbmUgSEFW RV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9TRU5EVE8gMQp8ICNkZWZpbmUgSEFWRV9S RUNWRlJPTSAxCnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tOQU1FIDEKfCAjZGVmaW5lIEhBVkVf R0VUSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVJRkFERFJTIDEKfCAjZGVmaW5lIEhB VkVfR0FJX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAxCnwgI2RlZmluZSBIQVZF X0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9H RVRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0VOREdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfUkVO QU1FQVQyIDEKfCAjZGVmaW5lIEhBVkVfQ0ZNQUtFUkFXIDEKfCAjZGVmaW5lIEhBVkVfQ0ZT RVRTUEVFRCAxCnwgI2RlZmluZSBIQVZFX19fRVhFQ1VUQUJMRV9TVEFSVCAxCnwgI2RlZmlu ZSBIQVZFX0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NFVE5BTUVfTlAgMQp8ICNk ZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTElHTkVE X0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfTUFEVklTRSAxCnwgI2RlZmluZSBIQVZF X19fQlVJTFRJTl9GUkFNRV9BRERSRVNTIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX1VO V0lORF9JTklUIDEKfCAjZGVmaW5lIEhBVkVfRlNFRUtPIDEKfCAjZGVmaW5lIEhBVkVfR1JB TlRQVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBUIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfT1BF TlBUIDEKfCAjZGVmaW5lIFRFUk1JTkZPIDEKfCAjZGVmaW5lIFRFUk1JTkZPX0RFRklORVNf QkMgMQp8ICNkZWZpbmUgSEFWRV9USU1FUkZEIDEKfCAjZGVmaW5lIEhBVkVfVkFMR1JJTkRf VkFMR1JJTkRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9VTklQQUlSX1VOSUNPREUgMQp8 ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19G T1JLIDEKfCAjZGVmaW5lIEhBVkVfU05QUklOVEYgMQp8ICNkZWZpbmUgSEFWRV9TUEFXTl9I IDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV04gMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9T UEFXTl9GSUxFX0FDVElPTlNfQUREQ0hESVJfTlAgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9T UEFXTkFUVFJfU0VURkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BPU0lYX1NQQVdOX1NF VFNJRCAxCnwgI2RlZmluZSBIQVZFX0dMSUIgMQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5GT19D T0RFU0VUIDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fX05MX1BBUEVSX1dJRFRIIDEKfCAj ZGVmaW5lIEhBVkVfTUJTVEFURV9UIDEKfCAjZGVmaW5lIEFNUEVSU0FORF9GVUxMX05BTUUg MQp8ICNkZWZpbmUgSEFWRV9QVFlTIDEKfCAjZGVmaW5lIEhBVkVfU09DS0VUUyAxCnwgI2Rl ZmluZSBOVUxMX0RFVklDRSAiL2Rldi9udWxsIgp8ICNkZWZpbmUgU0VQQ0hBUiAnOicKfCAj ZGVmaW5lIHN1YnByb2Nlc3NlcyAxCnwgI2RlZmluZSBVU0VSX0ZVTExfTkFNRSBwdy0+cHdf Z2Vjb3MKfCAjZGVmaW5lIERJUkVDVE9SWV9TRVAgJy8nCnwgI2RlZmluZSBJU19ERVZJQ0Vf U0VQKF9jXykgMAp8ICNkZWZpbmUgSVNfRElSRUNUT1JZX1NFUChfY18pICgoX2NfKSA9PSBE SVJFQ1RPUllfU0VQKQp8ICNkZWZpbmUgSVNfQU5ZX1NFUChfY18pIChJU19ESVJFQ1RPUllf U0VQIChfY18pKQp8ICNkZWZpbmUgSEFWRV9QUk9DRlMgMQp8ICNkZWZpbmUgREVGQVVMVF9T T1VORF9ERVZJQ0UgIi9kZXYvZHNwIgp8ICNkZWZpbmUgSU5URVJSVVBUX0lOUFVUIDEKfCAj ZGVmaW5lIE5BUlJPV1BST1RPIDEKfCAjZGVmaW5lIFVOSVg5OF9QVFlTIDEKfCAjZGVmaW5l IFBUWV9JVEVSQVRJT04gaW50IGk7IGZvciAoaSA9IDA7IGkgPCAxOyBpKyspCnwgI2RlZmlu ZSBQVFlfVFRZX05BTUVfU1BSSU5URiB7IGNoYXIgKnB0eW5hbWUgPSAwOyBzaWdzZXRfdCBi bG9ja2VkOyBzaWdlbXB0eXNldCAoJmJsb2NrZWQpOyBzaWdhZGRzZXQgKCZibG9ja2VkLCBT SUdDSExEKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYg KGdyYW50cHQgKGZkKSAhPSAtMSAmJiB1bmxvY2twdCAoZmQpICE9IC0xKSBwdHluYW1lID0g cHRzbmFtZShmZCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX1VOQkxPQ0ssICZibG9ja2VkLCAw KTsgaWYgKCFwdHluYW1lKSB7IGVtYWNzX2Nsb3NlIChmZCk7IHJldHVybiAtMTsgfSBzbnBy aW50ZiAocHR5X25hbWUsIFBUWV9OQU1FX1NJWkUsICIlcyIsIHB0eW5hbWUpOyB9CnwgI2Rl ZmluZSBQVFlfT1BFTiBkbyB7IGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX0NMT0VY RUMgfCBPX05PQ1RUWSk7IGlmIChmZCA8IDAgJiYgZXJybm8gPT0gRUlOVkFMKSBmZCA9IHBv c2l4X29wZW5wdCAoT19SRFdSIHwgT19OT0NUVFkpOyB9IHdoaWxlIChmYWxzZSkKfCAjZGVm aW5lIFBUWV9OQU1FX1NQUklOVEYgLyoqLwp8ICNkZWZpbmUgU0lHTkFMU19WSUFfQ0hBUkFD VEVSUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgR0NfU0VUSk1Q X1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfX1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NJR1NF VEpNUCAxCnwgI2RlZmluZSBIQVZFX1NUQUNLX09WRVJGTE9XX0hBTkRMSU5HIDEKfCAjZGVm aW5lIFVTRyAvKiovCnwgI2RlZmluZSBHTlVfTElOVVggLyoqLwp8ICNkZWZpbmUgU0laRU9G X1NQRUVEX1QgNAp8ICNkZWZpbmUgVVNBQkxFX0ZJT05SRUFEIDEKfCAjZGVmaW5lIFVTQUJM RV9TSUdJTyAxCnwgI2RlZmluZSBDT1BZUklHSFQgIkNvcHlyaWdodCAoQykgMjAyMyBGcmVl IFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4iCnwgI2RlZmluZSBURVJNX0hFQURFUiAiZ3Rr dXRpbC5oIgp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHVVJBVElPTiAieDg2XzY0LXBjLWxpbnV4 LWdudSIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR19PUFRJT05TICIiCnwgI2RlZmluZSBIQVZF X1hfV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gxMSAxCnwgI2RlZmluZSBIQVZFX1NUUlVD VF9BVFRSSUJVVEVfQUxJR05FRCAxCnwgI2RlZmluZSBIQVZFX1RZUEVPRiAxCnwgI2RlZmlu ZSBIQVZFX1NUQVRFTUVOVF9FWFBSRVNTSU9OUyAxCnwgI2RlZmluZSBNQUxMT0NfMF9JU19O T05OVUxMIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0FDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNM X0dFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GRCAxCnwgI2RlZmluZSBIQVZF X0FDTF9TRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRkQgMQp8ICNkZWZpbmUg SEFWRV9BQ0xfRlJFRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX01PREUgMQp8ICNkZWZp bmUgSEFWRV9BQ0xfRlJPTV9URVhUIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0RFTEVURV9ERUZf RklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9FWFRFTkRFRF9GSUxFIDEKfCAjZGVmaW5lIEhB VkVfQUNMX0xJQkFDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VOVFJJRVMgMQp8ICNkZWZp bmUgSEFWRV9BQ0xfRklSU1RfRU5UUlkgMQp8ICNkZWZpbmUgVVNFX0FDTCAxCnwgI2RlZmlu ZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIExT VEFUX0ZPTExPV1NfU0xBU0hFRF9TWU1MSU5LIDEKfCAjZGVmaW5lIEZVTkNfUkVBTFBBVEhf V09SS1MgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9HRVRD V0QgMQp8ICNkZWZpbmUgcmVzdHJpY3QgX19yZXN0cmljdF9fCnwgI2RlZmluZSBIQVZFX0VO VklST05fREVDTCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSTU9ERSAwCnwgI2RlZmluZSBI QVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0xPTkdfT05MWSAxCnwgI2Rl ZmluZSBIQVZFX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUgSEFWRV9VTlNJR05FRF9MT05H X0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9NRU1NRU0gMQp8ICNkZWZpbmUgSEFW RV9ERUNMX01FTVJDSFIgMQp8ICNkZWZpbmUgSEFWRV9NSU5NQVhfSU5fU1lTX1BBUkFNX0gg MQp8ICNkZWZpbmUgVElNRV9UX0lTX1NJR05FRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfQUxB Uk0gMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVE1fVE1fWk9ORSAxCnwgI2RlZmluZSBIQVZF X1RNX1pPTkUgMQp8ICNkZWZpbmUgSEFWRV9UTV9HTVRPRkYgMQp8ICNkZWZpbmUgSEFWRV9T SUdTRVRfVCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX1QgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X0ZDTE9TRUFMTCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VUVyAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfUFVUVyAxCnwgI2RlZmluZSBfX1VTRV9NSU5HV19BTlNJX1NURElPIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9FQ1ZUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GQ1ZUIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9HQ1ZUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJOTEVOIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9TVFJUT0lNQVggMQp8ICNkZWZpbmUgX1VTRV9TVERfU1RBVCAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfRVhFQ1ZQRSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfQ0xF QVJFUlJfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZFT0ZfVU5MT0NLRUQgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX0ZFUlJPUl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfRkZMVVNIX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GR0VUU19VTkxPQ0tF RCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRlBVVENfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX0ZQVVRTX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GUkVBRF9VTkxP Q0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRldSSVRFX1VOTE9DS0VEIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9HRVRDX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRDSEFS X1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRDX1VOTE9DS0VEIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9QVVRDSEFSX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEdFVEdST1VQU19U IGdpZF90CnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBI QVZFX01BTExPQ19QT1NJWCAxCnwgI2RlZmluZSBQUk9NT1RFRF9NT0RFX1QgbW9kZV90Cnwg I2RlZmluZSBIQVZFX1dPUktJTkdfVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEK fCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX0VYUEVDVCAxCnwgI2RlZmluZSBIQVZFX0JZVEVT V0FQX0ggMQp8ICNkZWZpbmUgR05VTElCX0NBTk9OSUNBTElaRV9MR1BMIDEKfCAjZGVmaW5l IEhBVkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX0dFVFJFUyAxCnwgI2Rl ZmluZSBIQVZFX0NMT0NLX0dFVFRJTUUgMQp8ICNkZWZpbmUgSEFWRV9DTE9DS19TRVRUSU1F IDEKfCAjZGVmaW5lIEdOVUxJQl9DTE9TRV9TVFJFQU0gMQp8ICNkZWZpbmUgSEFWRV9DT1BZ X0ZJTEVfUkFOR0UgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfRElSRU5UX0RfVFlQRSAxCnwg I2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBHTlVMSUJfRkFDQ0VTU0FUIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgR05VTElCX0ZET1BF TkRJUiAxCnwgI2RlZmluZSBHRVRYQVRUUl9XSVRIX1BPU0lYX0FDTFMgMQp8ICNkZWZpbmUg RkxFWElCTEVfQVJSQVlfTUVNQkVSIC8qKi8KfCAjZGVmaW5lIEhBVkVfREVDTF9fX0ZQRU5E SU5HIDEKfCAjZGVmaW5lIEhBVkVfRlJFRV9QT1NJWCAxCnwgI2RlZmluZSBIQVZFX1NZU19N T1VOVF9IIDEKfCAjZGVmaW5lIFNUQVRfU1RBVFZGUyAxCnwgI2RlZmluZSBTVEFUX1NUQVRG UzJfRlJTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRGU19IIDEKfCAjZGVmaW5lIEhB VkVfRlVUSU1FTlMgMQp8ICNkZWZpbmUgSEFWRV9HRVRMT0FEQVZHIDEKfCAjZGVmaW5lIEhB VkVfR0VUUkFORE9NIDEKfCAjZGVmaW5lIEhBVkVfVElNRVNQRUNfR0VUIDEKfCAjZGVmaW5l IEdFVFRJTUVPRkRBWV9USU1FWk9ORSB2b2lkCnwgI2RlZmluZSBIQVZFX19fSU5MSU5FIDEK fCAjZGVmaW5lIEhBVkVfR01QX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1NRU0gMQp8ICNkZWZp bmUgSEFWRV9NRU1QQ1BZIDEKfCAjZGVmaW5lIEhBVkVfTUVNUkNIUiAxCnwgI2RlZmluZSBI QVZFX01LT1NURU1QIDEKfCAjZGVmaW5lIEdOVUxJQl9NS09TVEVNUCAxCnwgI2RlZmluZSBO RUVEX01LVElNRV9XT1JLSU5HIDEKfCAjZGVmaW5lIEhBVkVfQlVHX0JJR19OQU5PU0xFRVAg MQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1NDSEVEX0dF VEFGRklOSVRZIDEKfCAjZGVmaW5lIEhBVkVfU0NIRURfR0VUQUZGSU5JVFlfTElLRV9HTElC QyAxCnwgI2RlZmluZSBteV9zdHJmdGltZSBuc3RyZnRpbWUKfCAjZGVmaW5lIEhBVkVfUElQ RTIgMQp8ICNkZWZpbmUgVVNFX1hBVFRSIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTktBVCAx CnwgI2RlZmluZSBIQVZFX1NJR0RFU0NSX05QIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NU QVRfU1RfQVRJTV9UVl9OU0VDIDEKfCAjZGVmaW5lIFRZUEVPRl9TVFJVQ1RfU1RBVF9TVF9B VElNX0lTX1NUUlVDVF9USU1FU1BFQyAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNp bmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAgICAgICAgICNpbmNsdWRlIDxzeXMvc3RhdC5oPgp8 IAp8IGludAp8IG1haW4gKHZvaWQpCnwgewp8IHN0YXRpYyBzdHJ1Y3Qgc3RhdCBhY19hZ2dy Owp8IGlmIChzaXplb2YgYWNfYWdnci5zdF9iaXJ0aHRpbWVuc2VjKQp8IHJldHVybiAwOwp8 ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6NDEwODI6IHJlc3VsdDogbm8KY29u ZmlndXJlOjQxMDkyOiBjaGVja2luZyBmb3Igc3RydWN0IHN0YXQuc3RfYmlydGh0aW0udHZf bnNlYwpjb25maWd1cmU6NDEwOTI6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1 CmNvbmZ0ZXN0LmM6IEluIGZ1bmN0aW9uICdtYWluJzoKY29uZnRlc3QuYzo0MTk6MTI6IGVy cm9yOiAnc3RydWN0IHN0YXQnIGhhcyBubyBtZW1iZXIgbmFtZWQgJ3N0X2JpcnRodGltJwog IDQxOSB8IGlmIChhY19hZ2dyLnN0X2JpcnRodGltLnR2X25zZWMpCiAgICAgIHwgICAgICAg ICAgICBeCmNvbmZpZ3VyZTo0MTA5MjogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dy YW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05V IEVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJlbWFjcyIKfCAjZGVmaW5lIFBB Q0tBR0VfVkVSU0lPTiAiMzAuMC41MCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUg RW1hY3MgMzAuMC41MCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ251LWVt YWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0cHM6Ly93d3cuZ251Lm9y Zy9zb2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmluZSBIQVZFX1BEVU1QRVIgMQp8ICNkZWZpbmUg SEFWRV9TVERJT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFW RV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFW RV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBI QVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfSCAxCnwgI2RlZmluZSBIQVZF X0xJTlVYX0ZTX0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19TWVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9QVFlfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2Rl ZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUF9IIDEKfCAjZGVmaW5lIEhB VkVfU0FOSVRJWkVSX0xTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVEla RVJfQVNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9DT01NT05f SU5URVJGQUNFX0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2Rl ZmluZSBIQVZFX0VYRUNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJT19FWFRfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19WRlNfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX0NERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEK fCAjZGVmaW5lIEhBVkVfSUVFRTc1NF9IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERCT09MX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfUkFORE9NX0ggMQp8ICNkZWZpbmUgU1REQ19IRUFERVJT IDEKfCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0Ug MQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0hQVVhfQUxUX1hPUEVOX1NP Q0tFVF9BUEkgMQp8ICNkZWZpbmUgX05FVEJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUgX09QRU5C U0RfU09VUkNFIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAxCnwgI2Rl ZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfQVRUUklCU19FWFRfXyAxCnwgI2RlZmluZSBf X1NURENfV0FOVF9JRUNfNjA1NTlfQkZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5U X0lFQ182MDU1OV9ERlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5 X0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9GVU5DU19FWFRfXyAx CnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfVFlQRVNfRVhUX18gMQp8ICNkZWZp bmUgX19TVERDX1dBTlRfTElCX0VYVDJfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9NQVRI X1NQRUNfRlVOQ1NfXyAxCnwgI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCnwgI2RlZmluZSBf X0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBHQ0NfTElOVCAxCnwgI2RlZmluZSBTWVNURU1f VFlQRSAiZ251L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJEX0ggMQp8ICNk ZWZpbmUgSEFWRV9BTFNBIDEKfCAjZGVmaW5lIEhBVkVfU09VTkQgMQp8ICNkZWZpbmUgSEFW RV9QRVJTT05BTElUWV9BRERSX05PX1JBTkRPTUlaRSAxCnwgI2RlZmluZSBIQVZFX0xJTlVY X1NZU0lORk8gMQp8ICNkZWZpbmUgTElOVVhfU1lTSU5GT19VTklUIDEKfCAjZGVmaW5lIEhB VkVfVEVSTV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZF X05FVF9JRl9IIDEKfCAjZGVmaW5lIEhBVkVfSUZBRERSU19IIDEKfCAjZGVmaW5lIEhBVkVf U1RSVUNUX0lGUkVRX0lGUl9GTEFHUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9J RlJfSFdBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9ORVRNQVNLIDEK fCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9CUk9BREFERFIgMQp8ICNkZWZpbmUg SEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TQlJLIDEKfCAj ZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVm aW5lIEhBVkVfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFW RV9DQU5PTklDQUxJWkVfRklMRV9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUkVBTFBBVEggMQp8 ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PREFUIDEKfCAjZGVm aW5lIEhBVkVfTENITU9EIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFW RV9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgSEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5lIEhBVkVf RlNZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9Q U0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhB VkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFWRV9JU0JMQU5LIDEKfCAjZGVmaW5lIEhBVkVf SVNXQ1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9TVFJUT0lNQVggMQp8ICNkZWZpbmUgSEFWRV9T WU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9H RVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIFNZU1RFTV9NQUxMT0MgMQp8ICNkZWZpbmUgSEFW RV9NTUFQIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRCAxCnwgI2RlZmluZSBUSFJFQURTX0VO QUJMRUQgMQp8ICNkZWZpbmUgSEFWRV9YS0IgMQp8ICNkZWZpbmUgSEFWRV9YS0JSRUZSRVNI S0VZQk9BUkRNQVBQSU5HIDEKfCAjZGVmaW5lIEhBVkVfWEtCRlJFRU5BTUVTIDEKfCAjZGVm aW5lIEhBVkVfWFJNU0VUREFUQUJBU0UgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOUkVTT1VS Q0VTVFJJTkcgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOTlVNQkVST0ZTQ1JFRU4gMQp8ICNk ZWZpbmUgSEFWRV9YRElTUExBWUNFTExTIDEKfCAjZGVmaW5lIEhBVkVfWERFU1RST1lTVUJX SU5ET1dTIDEKfCAjZGVmaW5lIEhBVkVfWDExUjYgMQp8ICNkZWZpbmUgSEFWRV9YX0kxOE4g MQp8ICNkZWZpbmUgSEFWRV9YSUNDQUxMQkFDS19DQUxMQkFDSyAxCnwgI2RlZmluZSBIQVZF X1gxMVI2X1hJTSAxCnwgI2RlZmluZSBIQVZFX1JTVkcgMQp8ICNkZWZpbmUgSEFWRV9XRUJQ IDEKfCAjZGVmaW5lIEhBVkVfU1FMSVRFMyAxCnwgI2RlZmluZSBIQVZFX1NRTElURTNfTE9B RF9FWFRFTlNJT04gMQp8ICNkZWZpbmUgSEFWRV9HRVRBRERSSU5GT19BIDEKfCAjZGVmaW5l IEhBVkVfR1RLMyAxCnwgI2RlZmluZSBHREtfRElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5H UyAxCnwgI2RlZmluZSBHTElCX0RJU0FCTEVfREVQUkVDQVRJT05fV0FSTklOR1MgMQp8ICNk ZWZpbmUgVVNFX0dUSyAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19UUklNIDEKfCAjZGVmaW5l IEhBVkVfREJVUyAxCnwgI2RlZmluZSBIQVZFX0RCVVNfV0FUQ0hfR0VUX1VOSVhfRkQgMQp8 ICNkZWZpbmUgSEFWRV9EQlVTX1RZUEVfSVNfVkFMSUQgMQp8ICNkZWZpbmUgSEFWRV9EQlVT X1ZBTElEQVRFX0JVU19OQU1FIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9QQVRI IDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9JTlRFUkZBQ0UgMQp8ICNkZWZpbmUg SEFWRV9EQlVTX1ZBTElEQVRFX01FTUJFUiAxCnwgI2RlZmluZSBIQVZFX0dTRVRUSU5HUyAx CnwgI2RlZmluZSBIQVZFX0xJQlNFTElOVVggMQp8ICNkZWZpbmUgSEFWRV9HTlVUTFMgMQp8 ICNkZWZpbmUgSEFWRV9MSUJTWVNURU1EIDEKfCAjZGVmaW5lIEhBVkVfSlNPTiAxCnwgI2Rl ZmluZSBIQVZFX0lOT1RJRlkgMQp8ICNkZWZpbmUgVVNFX0ZJTEVfTk9USUZZIDEKfCAjZGVm aW5lIFVTRV9UT09MS0lUX1NDUk9MTF9CQVJTIDEKfCAjZGVmaW5lIEhBVkVfWElNIDEKfCAj ZGVmaW5lIFVTRV9YSU0gMQp8ICNkZWZpbmUgSEFWRV9YUkVOREVSIDEKfCAjZGVmaW5lIFVT RV9DQUlST19YQ0IgMQp8ICNkZWZpbmUgVVNFX0NBSVJPIDEKfCAjZGVmaW5lIEhBVkVfRlJF RVRZUEUgMQp8ICNkZWZpbmUgSEFWRV9GVF9GQUNFX0dFVENIQVJWQVJJQU5USU5ERVggMQp8 ICNkZWZpbmUgSEFWRV9MSUJPVEYgMQp8ICNkZWZpbmUgSEFWRV9PVEZfR0VUX1ZBUklBVElP Tl9HTFlQSFMgMQp8ICNkZWZpbmUgSEFWRV9NMTdOX0ZMVCAxCnwgI2RlZmluZSBIQVZFX0hB UkZCVVpaIDEKfCAjZGVmaW5lIFVTRV9YQ0IgMQp8ICNkZWZpbmUgSEFWRV9YUE0gMQp8ICNk ZWZpbmUgSEFWRV9KUEVHIDEKfCAjZGVmaW5lIEhBVkVfTENNUzIgMQp8ICNkZWZpbmUgSEFW RV9aTElCIDEKfCAjZGVmaW5lIERZTkFNSUNfTElCX1NVRkZJWCAiLnNvIgp8ICNkZWZpbmUg RFlOQU1JQ19MSUJfU0VDT05EQVJZX1NVRkZJWCAiIgp8ICNkZWZpbmUgSEFWRV9ETEFERFIg MQp8ICNkZWZpbmUgSEFWRV9NT0RVTEVTIDEKfCAjZGVmaW5lIE1PRFVMRVNfU1VGRklYICIu c28iCnwgI2RlZmluZSBOQVRJVkVfRUxJU1BfU1VGRklYICIuZWxuIgp8ICNkZWZpbmUgSEFW RV9QTkcgMQp8ICNkZWZpbmUgSEFWRV9USUZGIDEKfCAjZGVmaW5lIEhBVkVfR0lGIDEKfCAj ZGVmaW5lIEhBVkVfR1BNIDEKfCAjZGVmaW5lIEhBVkVfWF9TTSAxCnwgI2RlZmluZSBIQVZF X1hSQU5EUiAxCnwgI2RlZmluZSBIQVZFX1hJTkVSQU1BIDEKfCAjZGVmaW5lIEhBVkVfWEZJ WEVTIDEKfCAjZGVmaW5lIEhBVkVfWElOUFVUMiAxCnwgI2RlZmluZSBIQVZFX1hJU0NST0xM Q0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YSVRPVUNIQ0xBU1NJTkZPX1RZUEUg MQp8ICNkZWZpbmUgSEFWRV9YSUJBUlJJRVJSRUxFQVNFUE9JTlRFUklORk9fREVWSUNFSUQg MQp8ICNkZWZpbmUgSEFWRV9YSUdFU1RVUkVDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBI QVZFX1hTWU5DIDEKfCAjZGVmaW5lIEhBVkVfWFNZTkNUUklHR0VSRkVOQ0UgMQp8ICNkZWZp bmUgSEFWRV9YREJFIDEKfCAjZGVmaW5lIEhBVkVfWENCX1NIQVBFIDEKfCAjZGVmaW5lIEhB VkVfWFNIQVBFIDEKfCAjZGVmaW5lIEhBVkVfWENPTVBPU0lURSAxCnwgI2RlZmluZSBIQVZF X0xJQlhNTDIgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TRUNDT01QX0ggMQp8ICNkZWZpbmUg SEFWRV9ERUNMX1NFQ0NPTVBfU0VUX01PREVfRklMVEVSIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9TRUNDT01QX0ZJTFRFUl9GTEFHX1RTWU5DIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfRklM VEVSX0ggMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfU0VUX01PREVfRklMVEVSIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX0ZJTFRFUl9GTEFHX1RTWU5DIDEKfCAjZGVm aW5lIFNJWkVPRl9MT05HIDgKfCAjZGVmaW5lIEhBVkVfQUNDRVBUNCAxCnwgI2RlZmluZSBI QVZFX0ZDSERJUiAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhB VkVfR0VUUlVTQUdFIDEKfCAjZGVmaW5lIEhBVkVfR0VUX0NVUlJFTlRfRElSX05BTUUgMQp8 ICNkZWZpbmUgSEFWRV9MUkFORDQ4IDEKfCAjZGVmaW5lIEhBVkVfUkFORE9NIDEKfCAjZGVm aW5lIEhBVkVfUklOVCAxCnwgI2RlZmluZSBIQVZFX1RSVU5DIDEKfCAjZGVmaW5lIEhBVkVf U0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9T RVRMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9ORVdMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9H RVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9T SFVURE9XTiAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBI QVZFX1NUUlNJR05BTCAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBI QVZFX1NFTkRUTyAxCnwgI2RlZmluZSBIQVZFX1JFQ1ZGUk9NIDEKfCAjZGVmaW5lIEhBVkVf R0VUU09DS05BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRJRkFERFJTIDEKfCAjZGVmaW5lIEhB VkVfRlJFRUlGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9HQUlfU1RSRVJST1IgMQp8ICNkZWZp bmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFdFTlQgMQp8ICNkZWZpbmUgSEFW RV9FTkRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0dFVEdSRU5UIDEKfCAjZGVmaW5lIEhBVkVf RU5ER1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9SRU5BTUVBVDIgMQp8ICNkZWZpbmUgSEFWRV9D Rk1BS0VSQVcgMQp8ICNkZWZpbmUgSEFWRV9DRlNFVFNQRUVEIDEKfCAjZGVmaW5lIEhBVkVf X19FWEVDVVRBQkxFX1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVfTE9HMiAxCnwgI2RlZmluZSBI QVZFX1BUSFJFQURfU0VUTkFNRV9OUCAxCnwgI2RlZmluZSBIQVZFX0FMSUdORURfQUxMT0Mg MQp8ICNkZWZpbmUgSEFWRV9ERUNMX0FMSUdORURfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9Q T1NJWF9NQURWSVNFIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX0ZSQU1FX0FERFJFU1Mg MQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fVU5XSU5EX0lOSVQgMQp8ICNkZWZpbmUgSEFW RV9GU0VFS08gMQp8ICNkZWZpbmUgSEFWRV9HUkFOVFBUIDEKfCAjZGVmaW5lIEhBVkVfR0VU UFQgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9PUEVOUFQgMQp8ICNkZWZpbmUgVEVSTUlORk8g MQp8ICNkZWZpbmUgVEVSTUlORk9fREVGSU5FU19CQyAxCnwgI2RlZmluZSBIQVZFX1RJTUVS RkQgMQp8ICNkZWZpbmUgSEFWRV9WQUxHUklORF9WQUxHUklORF9IIDEKfCAjZGVmaW5lIEhB VkVfU1RSVUNUX1VOSVBBSVJfVU5JQ09ERSAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVkZP UksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9TTlBS SU5URiAxCnwgI2RlZmluZSBIQVZFX1NQQVdOX0ggMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9T UEFXTiAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOX0ZJTEVfQUNUSU9OU19BRERDSERJ Ul9OUCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOQVRUUl9TRVRGTEFHUyAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfUE9TSVhfU1BBV05fU0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVfR0xJ QiAxCnwgI2RlZmluZSBIQVZFX0xBTkdJTkZPX0NPREVTRVQgMQp8ICNkZWZpbmUgSEFWRV9M QU5HSU5GT19fTkxfUEFQRVJfV0lEVEggMQp8ICNkZWZpbmUgSEFWRV9NQlNUQVRFX1QgMQp8 ICNkZWZpbmUgQU1QRVJTQU5EX0ZVTExfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1BUWVMgMQp8 ICNkZWZpbmUgSEFWRV9TT0NLRVRTIDEKfCAjZGVmaW5lIE5VTExfREVWSUNFICIvZGV2L251 bGwiCnwgI2RlZmluZSBTRVBDSEFSICc6Jwp8ICNkZWZpbmUgc3VicHJvY2Vzc2VzIDEKfCAj ZGVmaW5lIFVTRVJfRlVMTF9OQU1FIHB3LT5wd19nZWNvcwp8ICNkZWZpbmUgRElSRUNUT1JZ X1NFUCAnLycKfCAjZGVmaW5lIElTX0RFVklDRV9TRVAoX2NfKSAwCnwgI2RlZmluZSBJU19E SVJFQ1RPUllfU0VQKF9jXykgKChfY18pID09IERJUkVDVE9SWV9TRVApCnwgI2RlZmluZSBJ U19BTllfU0VQKF9jXykgKElTX0RJUkVDVE9SWV9TRVAgKF9jXykpCnwgI2RlZmluZSBIQVZF X1BST0NGUyAxCnwgI2RlZmluZSBERUZBVUxUX1NPVU5EX0RFVklDRSAiL2Rldi9kc3AiCnwg I2RlZmluZSBJTlRFUlJVUFRfSU5QVVQgMQp8ICNkZWZpbmUgTkFSUk9XUFJPVE8gMQp8ICNk ZWZpbmUgVU5JWDk4X1BUWVMgMQp8ICNkZWZpbmUgUFRZX0lURVJBVElPTiBpbnQgaTsgZm9y IChpID0gMDsgaSA8IDE7IGkrKykKfCAjZGVmaW5lIFBUWV9UVFlfTkFNRV9TUFJJTlRGIHsg Y2hhciAqcHR5bmFtZSA9IDA7IHNpZ3NldF90IGJsb2NrZWQ7IHNpZ2VtcHR5c2V0ICgmYmxv Y2tlZCk7IHNpZ2FkZHNldCAoJmJsb2NrZWQsIFNJR0NITEQpOyBwdGhyZWFkX3NpZ21hc2sg KFNJR19CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoZ3JhbnRwdCAoZmQpICE9IC0xICYmIHVu bG9ja3B0IChmZCkgIT0gLTEpIHB0eW5hbWUgPSBwdHNuYW1lKGZkKTsgcHRocmVhZF9zaWdt YXNrIChTSUdfVU5CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoIXB0eW5hbWUpIHsgZW1hY3Nf Y2xvc2UgKGZkKTsgcmV0dXJuIC0xOyB9IHNucHJpbnRmIChwdHlfbmFtZSwgUFRZX05BTUVf U0laRSwgIiVzIiwgcHR5bmFtZSk7IH0KfCAjZGVmaW5lIFBUWV9PUEVOIGRvIHsgZmQgPSBw b3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fQ0xPRVhFQyB8IE9fTk9DVFRZKTsgaWYgKGZkIDwg MCAmJiBlcnJubyA9PSBFSU5WQUwpIGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX05P Q1RUWSk7IH0gd2hpbGUgKGZhbHNlKQp8ICNkZWZpbmUgUFRZX05BTUVfU1BSSU5URiAvKiov CnwgI2RlZmluZSBTSUdOQUxTX1ZJQV9DSEFSQUNURVJTIDEKfCAjZGVmaW5lIEdDX1NFVEpN UF9XT1JLUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgSEFWRV9f U0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU1RB Q0tfT1ZFUkZMT1dfSEFORExJTkcgMQp8ICNkZWZpbmUgVVNHIC8qKi8KfCAjZGVmaW5lIEdO VV9MSU5VWCAvKiovCnwgI2RlZmluZSBTSVpFT0ZfU1BFRURfVCA0CnwgI2RlZmluZSBVU0FC TEVfRklPTlJFQUQgMQp8ICNkZWZpbmUgVVNBQkxFX1NJR0lPIDEKfCAjZGVmaW5lIENPUFlS SUdIVCAiQ29weXJpZ2h0IChDKSAyMDIzIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5j LiIKfCAjZGVmaW5lIFRFUk1fSEVBREVSICJndGt1dGlsLmgiCnwgI2RlZmluZSBFTUFDU19D T05GSUdVUkFUSU9OICJ4ODZfNjQtcGMtbGludXgtZ251Igp8ICNkZWZpbmUgRU1BQ1NfQ09O RklHX09QVElPTlMgIiIKfCAjZGVmaW5lIEhBVkVfWF9XSU5ET1dTIDEKfCAjZGVmaW5lIEhB VkVfWDExIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0FUVFJJQlVURV9BTElHTkVEIDEKfCAj ZGVmaW5lIEhBVkVfVFlQRU9GIDEKfCAjZGVmaW5lIEhBVkVfU1RBVEVNRU5UX0VYUFJFU1NJ T05TIDEKfCAjZGVmaW5lIE1BTExPQ18wX0lTX05PTk5VTEwgMQp8ICNkZWZpbmUgSEFWRV9T WVNfQUNMX0ggMQp8ICNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFW RV9BQ0xfR0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX1NFVF9GSUxFIDEKfCAjZGVmaW5l IEhBVkVfQUNMX1NFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUkVFIDEKfCAjZGVmaW5l IEhBVkVfQUNMX0ZST01fTU9ERSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX1RFWFQgMQp8 ICNkZWZpbmUgSEFWRV9BQ0xfREVMRVRFX0RFRl9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNM X0VYVEVOREVEX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfTElCQUNMX0ggMQp8ICNkZWZp bmUgSEFWRV9BQ0xfRU5UUklFUyAxCnwgI2RlZmluZSBIQVZFX0FDTF9GSVJTVF9FTlRSWSAx CnwgI2RlZmluZSBVU0VfQUNMIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZp bmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgTFNUQVRfRk9MTE9XU19TTEFTSEVEX1NZTUxJ TksgMQp8ICNkZWZpbmUgRlVOQ19SRUFMUEFUSF9XT1JLUyAxCnwgI2RlZmluZSBIQVZFX0ZB Q0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0dFVENXRCAxCnwgI2RlZmluZSByZXN0cmljdCBf X3Jlc3RyaWN0X18KfCAjZGVmaW5lIEhBVkVfRU5WSVJPTl9ERUNMIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9TVFJNT0RFIDAKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUg SEFWRV9HRVRPUFRfTE9OR19PTkxZIDEKfCAjZGVmaW5lIEhBVkVfTE9OR19MT05HX0lOVCAx CnwgI2RlZmluZSBIQVZFX1VOU0lHTkVEX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX01FTU1FTSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfTUVNUkNIUiAxCnwgI2RlZmlu ZSBIQVZFX01JTk1BWF9JTl9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBUSU1FX1RfSVNfU0lH TkVEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTEFSTSAxCnwgI2RlZmluZSBIQVZFX1NUUlVD VF9UTV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fWk9ORSAxCnwgI2RlZmluZSBIQVZF X1RNX0dNVE9GRiAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVF9UIDEKfCAjZGVmaW5lIEhBVkVf V0NIQVJfVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkNMT1NFQUxMIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9HRVRXIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRXIDEKfCAjZGVmaW5lIF9f VVNFX01JTkdXX0FOU0lfU1RESU8gMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VDVlQgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX0ZDVlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dDVlQgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX1NUUk5MRU4gMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUlRPSU1B WCAxCnwgI2RlZmluZSBfVVNFX1NURF9TVEFUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9FWEVD VlBFIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9DTEVBUkVSUl9VTkxPQ0tFRCAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfRkVPRl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkVSUk9S X1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRkxVU0hfVU5MT0NLRUQgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX0ZHRVRTX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9G UFVUQ19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRlBVVFNfVU5MT0NLRUQgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX0ZSRUFEX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9GV1JJVEVfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVENfVU5MT0NLRUQg MQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVENIQVJfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX1BVVENfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BVVENIQVJfVU5M T0NLRUQgMQp8ICNkZWZpbmUgR0VUR1JPVVBTX1QgZ2lkX3QKfCAjZGVmaW5lIEhBVkVfREVD TF9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX1BPU0lYIDEKfCAjZGVm aW5lIFBST01PVEVEX01PREVfVCBtb2RlX3QKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19VVElN RVMgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5f RVhQRUNUIDEKfCAjZGVmaW5lIEhBVkVfQllURVNXQVBfSCAxCnwgI2RlZmluZSBHTlVMSUJf Q0FOT05JQ0FMSVpFX0xHUEwgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKfCAjZGVm aW5lIEhBVkVfQ0xPQ0tfR0VUUkVTIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tfR0VUVElNRSAx CnwgI2RlZmluZSBIQVZFX0NMT0NLX1NFVFRJTUUgMQp8ICNkZWZpbmUgR05VTElCX0NMT1NF X1NUUkVBTSAxCnwgI2RlZmluZSBIQVZFX0NPUFlfRklMRV9SQU5HRSAxCnwgI2RlZmluZSBI QVZFX1NUUlVDVF9ESVJFTlRfRF9UWVBFIDEKfCAjZGVmaW5lIEhBVkVfRkFDQ0VTU0FUIDEK fCAjZGVmaW5lIEdOVUxJQl9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZET1BF TkRJUiAxCnwgI2RlZmluZSBHTlVMSUJfRkRPUEVORElSIDEKfCAjZGVmaW5lIEdFVFhBVFRS X1dJVEhfUE9TSVhfQUNMUyAxCnwgI2RlZmluZSBGTEVYSUJMRV9BUlJBWV9NRU1CRVIgLyoq Lwp8ICNkZWZpbmUgSEFWRV9ERUNMX19fRlBFTkRJTkcgMQp8ICNkZWZpbmUgSEFWRV9GUkVF X1BPU0lYIDEKfCAjZGVmaW5lIEhBVkVfU1lTX01PVU5UX0ggMQp8ICNkZWZpbmUgU1RBVF9T VEFUVkZTIDEKfCAjZGVmaW5lIFNUQVRfU1RBVEZTMl9GUlNJWkUgMQp8ICNkZWZpbmUgSEFW RV9TWVNfU1RBVEZTX0ggMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVOUyAxCnwgI2RlZmluZSBI QVZFX0dFVExPQURBVkcgMQp8ICNkZWZpbmUgSEFWRV9HRVRSQU5ET00gMQp8ICNkZWZpbmUg SEFWRV9USU1FU1BFQ19HRVQgMQp8ICNkZWZpbmUgR0VUVElNRU9GREFZX1RJTUVaT05FIHZv aWQKfCAjZGVmaW5lIEhBVkVfX19JTkxJTkUgMQp8ICNkZWZpbmUgSEFWRV9HTVBfSCAxCnwg I2RlZmluZSBIQVZFX01FTU1FTSAxCnwgI2RlZmluZSBIQVZFX01FTVBDUFkgMQp8ICNkZWZp bmUgSEFWRV9NRU1SQ0hSIDEKfCAjZGVmaW5lIEhBVkVfTUtPU1RFTVAgMQp8ICNkZWZpbmUg R05VTElCX01LT1NURU1QIDEKfCAjZGVmaW5lIE5FRURfTUtUSU1FX1dPUktJTkcgMQp8ICNk ZWZpbmUgSEFWRV9CVUdfQklHX05BTk9TTEVFUCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJB TV9IIDEKfCAjZGVmaW5lIEhBVkVfU0NIRURfR0VUQUZGSU5JVFkgMQp8ICNkZWZpbmUgSEFW RV9TQ0hFRF9HRVRBRkZJTklUWV9MSUtFX0dMSUJDIDEKfCAjZGVmaW5lIG15X3N0cmZ0aW1l IG5zdHJmdGltZQp8ICNkZWZpbmUgSEFWRV9QSVBFMiAxCnwgI2RlZmluZSBVU0VfWEFUVFIg MQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKfCAjZGVmaW5lIEhBVkVfU0lHREVTQ1Jf TlAgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9BVElNX1RWX05TRUMgMQp8ICNk ZWZpbmUgVFlQRU9GX1NUUlVDVF9TVEFUX1NUX0FUSU1fSVNfU1RSVUNUX1RJTUVTUEVDIDEK fCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICAg ICAgICAgICAjaW5jbHVkZSA8c3lzL3N0YXQuaD4KfCAKfCBpbnQKfCBtYWluICh2b2lkKQp8 IHsKfCBzdGF0aWMgc3RydWN0IHN0YXQgYWNfYWdncjsKfCBpZiAoYWNfYWdnci5zdF9iaXJ0 aHRpbS50dl9uc2VjKQp8IHJldHVybiAwOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25m aWd1cmU6NDEwOTI6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0 LmM6IEluIGZ1bmN0aW9uICdtYWluJzoKY29uZnRlc3QuYzo0MTk6MTk6IGVycm9yOiAnc3Ry dWN0IHN0YXQnIGhhcyBubyBtZW1iZXIgbmFtZWQgJ3N0X2JpcnRodGltJwogIDQxOSB8IGlm IChzaXplb2YgYWNfYWdnci5zdF9iaXJ0aHRpbS50dl9uc2VjKQogICAgICB8ICAgICAgICAg ICAgICAgICAgIF4KY29uZmlndXJlOjQxMDkyOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQg cHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1F ICJHTlUgRW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZp bmUgUEFDS0FHRV9WRVJTSU9OICIzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcg IkdOVSBFbWFjcyAzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1n bnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJodHRwczovL3d3dy5n bnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIEhBVkVfUERVTVBFUiAxCnwgI2Rl ZmluZSBIQVZFX1NURElPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmlu ZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmlu ZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVm aW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5l IEhBVkVfTElOVVhfRlNfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1BUWV9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEK fCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1QX0ggMQp8ICNkZWZp bmUgSEFWRV9TQU5JVElaRVJfTFNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NB TklUSVpFUl9BU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0NP TU1PTl9JTlRFUkZBQ0VfREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEK fCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1NURElPX0VYVF9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1ZGU19IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfQ0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1F X0ggMQp8ICNkZWZpbmUgSEFWRV9JRUVFNzU0X0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NUREJP T0xfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SQU5ET01fSCAxCnwgI2RlZmluZSBTVERDX0hF QURFUlMgMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9DX1NP VVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBfSFBVWF9BTFRfWE9Q RU5fU09DS0VUX0FQSSAxCnwgI2RlZmluZSBfTkVUQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBf T1BFTkJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEK fCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9BVFRSSUJTX0VYVF9fIDEKfCAjZGVm aW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9CRlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERD X1dBTlRfSUVDXzYwNTU5X0RGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNf NjA1NTlfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0ZVTkNTX0VY VF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9UWVBFU19FWFRfXyAxCnwg I2RlZmluZSBfX1NURENfV0FOVF9MSUJfRVhUMl9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5U X01BVEhfU1BFQ19GVU5DU19fIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVm aW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIEdDQ19MSU5UIDEKfCAjZGVmaW5lIFNZ U1RFTV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAx CnwgI2RlZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwgI2RlZmlu ZSBIQVZFX1BFUlNPTkFMSVRZX0FERFJfTk9fUkFORE9NSVpFIDEKfCAjZGVmaW5lIEhBVkVf TElOVVhfU1lTSU5GTyAxCnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZp bmUgSEFWRV9URVJNX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5l IEhBVkVfTkVUX0lGX0ggMQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0ggMQp8ICNkZWZpbmUg SEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lG UkVRX0lGUl9IV0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX05FVE1B U0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAxCnwgI2Rl ZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQUREUiAxCnwgI2RlZmluZSBIQVZFX1NCUksg MQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8 ICNkZWZpbmUgSEFWRV9WRk9SSyAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmlu ZSBIQVZFX0NBTk9OSUNBTElaRV9GSUxFX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9SRUFMUEFU SCAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EQVQgMQp8 ICNkZWZpbmUgSEFWRV9MQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmlu ZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUg SEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBI QVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZp bmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX0lTQkxBTksgMQp8ICNkZWZpbmUg SEFWRV9JU1dDVFlQRSAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBI QVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmluZSBI QVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgU1lTVEVNX01BTExPQyAxCnwgI2RlZmlu ZSBIQVZFX01NQVAgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEIDEKfCAjZGVmaW5lIFRIUkVB RFNfRU5BQkxFRCAxCnwgI2RlZmluZSBIQVZFX1hLQiAxCnwgI2RlZmluZSBIQVZFX1hLQlJF RlJFU0hLRVlCT0FSRE1BUFBJTkcgMQp8ICNkZWZpbmUgSEFWRV9YS0JGUkVFTkFNRVMgMQp8 ICNkZWZpbmUgSEFWRV9YUk1TRVREQVRBQkFTRSAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5S RVNPVVJDRVNUUklORyAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJPRlNDUkVFTiAx CnwgI2RlZmluZSBIQVZFX1hESVNQTEFZQ0VMTFMgMQp8ICNkZWZpbmUgSEFWRV9YREVTVFJP WVNVQldJTkRPV1MgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNiAxCnwgI2RlZmluZSBIQVZFX1hf STE4TiAxCnwgI2RlZmluZSBIQVZFX1hJQ0NBTExCQUNLX0NBTExCQUNLIDEKfCAjZGVmaW5l IEhBVkVfWDExUjZfWElNIDEKfCAjZGVmaW5lIEhBVkVfUlNWRyAxCnwgI2RlZmluZSBIQVZF X1dFQlAgMQp8ICNkZWZpbmUgSEFWRV9TUUxJVEUzIDEKfCAjZGVmaW5lIEhBVkVfU1FMSVRF M19MT0FEX0VYVEVOU0lPTiAxCnwgI2RlZmluZSBIQVZFX0dFVEFERFJJTkZPX0EgMQp8ICNk ZWZpbmUgSEFWRV9HVEszIDEKfCAjZGVmaW5lIEdES19ESVNBQkxFX0RFUFJFQ0FUSU9OX1dB Uk5JTkdTIDEKfCAjZGVmaW5lIEdMSUJfRElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAx CnwgI2RlZmluZSBVU0VfR1RLIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX1RSSU0gMQp8ICNk ZWZpbmUgSEFWRV9EQlVTIDEKfCAjZGVmaW5lIEhBVkVfREJVU19XQVRDSF9HRVRfVU5JWF9G RCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVFlQRV9JU19WQUxJRCAxCnwgI2RlZmluZSBIQVZF X0RCVVNfVkFMSURBVEVfQlVTX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRF X1BBVEggMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0lOVEVSRkFDRSAxCnwgI2Rl ZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfTUVNQkVSIDEKfCAjZGVmaW5lIEhBVkVfR1NFVFRJ TkdTIDEKfCAjZGVmaW5lIEhBVkVfTElCU0VMSU5VWCAxCnwgI2RlZmluZSBIQVZFX0dOVVRM UyAxCnwgI2RlZmluZSBIQVZFX0xJQlNZU1RFTUQgMQp8ICNkZWZpbmUgSEFWRV9KU09OIDEK fCAjZGVmaW5lIEhBVkVfSU5PVElGWSAxCnwgI2RlZmluZSBVU0VfRklMRV9OT1RJRlkgMQp8 ICNkZWZpbmUgVVNFX1RPT0xLSVRfU0NST0xMX0JBUlMgMQp8ICNkZWZpbmUgSEFWRV9YSU0g MQp8ICNkZWZpbmUgVVNFX1hJTSAxCnwgI2RlZmluZSBIQVZFX1hSRU5ERVIgMQp8ICNkZWZp bmUgVVNFX0NBSVJPX1hDQiAxCnwgI2RlZmluZSBVU0VfQ0FJUk8gMQp8ICNkZWZpbmUgSEFW RV9GUkVFVFlQRSAxCnwgI2RlZmluZSBIQVZFX0ZUX0ZBQ0VfR0VUQ0hBUlZBUklBTlRJTkRF WCAxCnwgI2RlZmluZSBIQVZFX0xJQk9URiAxCnwgI2RlZmluZSBIQVZFX09URl9HRVRfVkFS SUFUSU9OX0dMWVBIUyAxCnwgI2RlZmluZSBIQVZFX00xN05fRkxUIDEKfCAjZGVmaW5lIEhB VkVfSEFSRkJVWlogMQp8ICNkZWZpbmUgVVNFX1hDQiAxCnwgI2RlZmluZSBIQVZFX1hQTSAx CnwgI2RlZmluZSBIQVZFX0pQRUcgMQp8ICNkZWZpbmUgSEFWRV9MQ01TMiAxCnwgI2RlZmlu ZSBIQVZFX1pMSUIgMQp8ICNkZWZpbmUgRFlOQU1JQ19MSUJfU1VGRklYICIuc28iCnwgI2Rl ZmluZSBEWU5BTUlDX0xJQl9TRUNPTkRBUllfU1VGRklYICIiCnwgI2RlZmluZSBIQVZFX0RM QUREUiAxCnwgI2RlZmluZSBIQVZFX01PRFVMRVMgMQp8ICNkZWZpbmUgTU9EVUxFU19TVUZG SVggIi5zbyIKfCAjZGVmaW5lIE5BVElWRV9FTElTUF9TVUZGSVggIi5lbG4iCnwgI2RlZmlu ZSBIQVZFX1BORyAxCnwgI2RlZmluZSBIQVZFX1RJRkYgMQp8ICNkZWZpbmUgSEFWRV9HSUYg MQp8ICNkZWZpbmUgSEFWRV9HUE0gMQp8ICNkZWZpbmUgSEFWRV9YX1NNIDEKfCAjZGVmaW5l IEhBVkVfWFJBTkRSIDEKfCAjZGVmaW5lIEhBVkVfWElORVJBTUEgMQp8ICNkZWZpbmUgSEFW RV9YRklYRVMgMQp8ICNkZWZpbmUgSEFWRV9YSU5QVVQyIDEKfCAjZGVmaW5lIEhBVkVfWElT Q1JPTExDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hJVE9VQ0hDTEFTU0lORk9f VFlQRSAxCnwgI2RlZmluZSBIQVZFX1hJQkFSUklFUlJFTEVBU0VQT0lOVEVSSU5GT19ERVZJ Q0VJRCAxCnwgI2RlZmluZSBIQVZFX1hJR0VTVFVSRUNMQVNTSU5GT19UWVBFIDEKfCAjZGVm aW5lIEhBVkVfWFNZTkMgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQ1RSSUdHRVJGRU5DRSAxCnwg I2RlZmluZSBIQVZFX1hEQkUgMQp8ICNkZWZpbmUgSEFWRV9YQ0JfU0hBUEUgMQp8ICNkZWZp bmUgSEFWRV9YU0hBUEUgMQp8ICNkZWZpbmUgSEFWRV9YQ09NUE9TSVRFIDEKfCAjZGVmaW5l IEhBVkVfTElCWE1MMiAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX1NFQ0NPTVBfSCAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgSEFWRV9MSU5V WF9GSUxURVJfSCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxU RVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8 ICNkZWZpbmUgU0laRU9GX0xPTkcgOAp8ICNkZWZpbmUgSEFWRV9BQ0NFUFQ0IDEKfCAjZGVm aW5lIEhBVkVfRkNIRElSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZp bmUgSEFWRV9HRVRSVVNBR0UgMQp8ICNkZWZpbmUgSEFWRV9HRVRfQ1VSUkVOVF9ESVJfTkFN RSAxCnwgI2RlZmluZSBIQVZFX0xSQU5ENDggMQp8ICNkZWZpbmUgSEFWRV9SQU5ET00gMQp8 ICNkZWZpbmUgSEFWRV9SSU5UIDEKfCAjZGVmaW5lIEhBVkVfVFJVTkMgMQp8ICNkZWZpbmUg SEFWRV9TRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBI QVZFX1NFVExPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX05FV0xPQ0FMRSAxCnwgI2RlZmluZSBI QVZFX0dFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NFVFJMSU1JVCAxCnwgI2RlZmluZSBI QVZFX1NIVVRET1dOIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVm aW5lIEhBVkVfU1RSU0lHTkFMIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVm aW5lIEhBVkVfU0VORFRPIDEKfCAjZGVmaW5lIEhBVkVfUkVDVkZST00gMQp8ICNkZWZpbmUg SEFWRV9HRVRTT0NLTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVElGQUREUlMgMQp8ICNkZWZp bmUgSEFWRV9GUkVFSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0dBSV9TVFJFUlJPUiAxCnwg I2RlZmluZSBIQVZFX1NZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmlu ZSBIQVZFX0VORFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUg SEFWRV9FTkRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX1JFTkFNRUFUMiAxCnwgI2RlZmluZSBI QVZFX0NGTUFLRVJBVyAxCnwgI2RlZmluZSBIQVZFX0NGU0VUU1BFRUQgMQp8ICNkZWZpbmUg SEFWRV9fX0VYRUNVVEFCTEVfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9MT0cyIDEKfCAjZGVm aW5lIEhBVkVfUFRIUkVBRF9TRVROQU1FX05QIDEKfCAjZGVmaW5lIEhBVkVfQUxJR05FRF9B TExPQyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfQUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBI QVZFX1BPU0lYX01BRFZJU0UgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fRlJBTUVfQURE UkVTUyAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9VTldJTkRfSU5JVCAxCnwgI2RlZmlu ZSBIQVZFX0ZTRUVLTyAxCnwgI2RlZmluZSBIQVZFX0dSQU5UUFQgMQp8ICNkZWZpbmUgSEFW RV9HRVRQVCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX09QRU5QVCAxCnwgI2RlZmluZSBURVJN SU5GTyAxCnwgI2RlZmluZSBURVJNSU5GT19ERUZJTkVTX0JDIDEKfCAjZGVmaW5lIEhBVkVf VElNRVJGRCAxCnwgI2RlZmluZSBIQVZFX1ZBTEdSSU5EX1ZBTEdSSU5EX0ggMQp8ICNkZWZp bmUgSEFWRV9TVFJVQ1RfVU5JUEFJUl9VTklDT0RFIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lO R19WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfRk9SSyAxCnwgI2RlZmluZSBIQVZF X1NOUFJJTlRGIDEKfCAjZGVmaW5lIEhBVkVfU1BBV05fSCAxCnwgI2RlZmluZSBIQVZFX1BP U0lYX1NQQVdOIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV05fRklMRV9BQ1RJT05TX0FE RENIRElSX05QIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV05BVFRSX1NFVEZMQUdTIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9QT1NJWF9TUEFXTl9TRVRTSUQgMQp8ICNkZWZpbmUgSEFW RV9HTElCIDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fQ09ERVNFVCAxCnwgI2RlZmluZSBI QVZFX0xBTkdJTkZPX19OTF9QQVBFUl9XSURUSCAxCnwgI2RlZmluZSBIQVZFX01CU1RBVEVf VCAxCnwgI2RlZmluZSBBTVBFUlNBTkRfRlVMTF9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUFRZ UyAxCnwgI2RlZmluZSBIQVZFX1NPQ0tFVFMgMQp8ICNkZWZpbmUgTlVMTF9ERVZJQ0UgIi9k ZXYvbnVsbCIKfCAjZGVmaW5lIFNFUENIQVIgJzonCnwgI2RlZmluZSBzdWJwcm9jZXNzZXMg MQp8ICNkZWZpbmUgVVNFUl9GVUxMX05BTUUgcHctPnB3X2dlY29zCnwgI2RlZmluZSBESVJF Q1RPUllfU0VQICcvJwp8ICNkZWZpbmUgSVNfREVWSUNFX1NFUChfY18pIDAKfCAjZGVmaW5l IElTX0RJUkVDVE9SWV9TRVAoX2NfKSAoKF9jXykgPT0gRElSRUNUT1JZX1NFUCkKfCAjZGVm aW5lIElTX0FOWV9TRVAoX2NfKSAoSVNfRElSRUNUT1JZX1NFUCAoX2NfKSkKfCAjZGVmaW5l IEhBVkVfUFJPQ0ZTIDEKfCAjZGVmaW5lIERFRkFVTFRfU09VTkRfREVWSUNFICIvZGV2L2Rz cCIKfCAjZGVmaW5lIElOVEVSUlVQVF9JTlBVVCAxCnwgI2RlZmluZSBOQVJST1dQUk9UTyAx CnwgI2RlZmluZSBVTklYOThfUFRZUyAxCnwgI2RlZmluZSBQVFlfSVRFUkFUSU9OIGludCBp OyBmb3IgKGkgPSAwOyBpIDwgMTsgaSsrKQp8ICNkZWZpbmUgUFRZX1RUWV9OQU1FX1NQUklO VEYgeyBjaGFyICpwdHluYW1lID0gMDsgc2lnc2V0X3QgYmxvY2tlZDsgc2lnZW1wdHlzZXQg KCZibG9ja2VkKTsgc2lnYWRkc2V0ICgmYmxvY2tlZCwgU0lHQ0hMRCk7IHB0aHJlYWRfc2ln bWFzayAoU0lHX0JMT0NLLCAmYmxvY2tlZCwgMCk7IGlmIChncmFudHB0IChmZCkgIT0gLTEg JiYgdW5sb2NrcHQgKGZkKSAhPSAtMSkgcHR5bmFtZSA9IHB0c25hbWUoZmQpOyBwdGhyZWFk X3NpZ21hc2sgKFNJR19VTkJMT0NLLCAmYmxvY2tlZCwgMCk7IGlmICghcHR5bmFtZSkgeyBl bWFjc19jbG9zZSAoZmQpOyByZXR1cm4gLTE7IH0gc25wcmludGYgKHB0eV9uYW1lLCBQVFlf TkFNRV9TSVpFLCAiJXMiLCBwdHluYW1lKTsgfQp8ICNkZWZpbmUgUFRZX09QRU4gZG8geyBm ZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19DTE9FWEVDIHwgT19OT0NUVFkpOyBpZiAo ZmQgPCAwICYmIGVycm5vID09IEVJTlZBTCkgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8 IE9fTk9DVFRZKTsgfSB3aGlsZSAoZmFsc2UpCnwgI2RlZmluZSBQVFlfTkFNRV9TUFJJTlRG IC8qKi8KfCAjZGVmaW5lIFNJR05BTFNfVklBX0NIQVJBQ1RFUlMgMQp8ICNkZWZpbmUgR0Nf U0VUSk1QX1dPUktTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBI QVZFX19TRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRVRKTVAgMQp8ICNkZWZpbmUgSEFW RV9TVEFDS19PVkVSRkxPV19IQU5ETElORyAxCnwgI2RlZmluZSBVU0cgLyoqLwp8ICNkZWZp bmUgR05VX0xJTlVYIC8qKi8KfCAjZGVmaW5lIFNJWkVPRl9TUEVFRF9UIDQKfCAjZGVmaW5l IFVTQUJMRV9GSU9OUkVBRCAxCnwgI2RlZmluZSBVU0FCTEVfU0lHSU8gMQp8ICNkZWZpbmUg Q09QWVJJR0hUICJDb3B5cmlnaHQgKEMpIDIwMjMgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9u LCBJbmMuIgp8ICNkZWZpbmUgVEVSTV9IRUFERVIgImd0a3V0aWwuaCIKfCAjZGVmaW5lIEVN QUNTX0NPTkZJR1VSQVRJT04gIng4Nl82NC1wYy1saW51eC1nbnUiCnwgI2RlZmluZSBFTUFD U19DT05GSUdfT1BUSU9OUyAiIgp8ICNkZWZpbmUgSEFWRV9YX1dJTkRPV1MgMQp8ICNkZWZp bmUgSEFWRV9YMTEgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfQVRUUklCVVRFX0FMSUdORUQg MQp8ICNkZWZpbmUgSEFWRV9UWVBFT0YgMQp8ICNkZWZpbmUgSEFWRV9TVEFURU1FTlRfRVhQ UkVTU0lPTlMgMQp8ICNkZWZpbmUgTUFMTE9DXzBfSVNfTk9OTlVMTCAxCnwgI2RlZmluZSBI QVZFX1NZU19BQ0xfSCAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRklMRSAxCnwgI2RlZmlu ZSBIQVZFX0FDTF9HRVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZJTEUgMQp8ICNk ZWZpbmUgSEFWRV9BQ0xfU0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZSRUUgMQp8ICNk ZWZpbmUgSEFWRV9BQ0xfRlJPTV9NT0RFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZST01fVEVY VCAxCnwgI2RlZmluZSBIQVZFX0FDTF9ERUxFVEVfREVGX0ZJTEUgMQp8ICNkZWZpbmUgSEFW RV9BQ0xfRVhURU5ERURfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9MSUJBQ0xfSCAxCnwg I2RlZmluZSBIQVZFX0FDTF9FTlRSSUVTIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZJUlNUX0VO VFJZIDEKfCAjZGVmaW5lIFVTRV9BQ0wgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAxCnwg I2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBMU1RBVF9GT0xMT1dTX1NMQVNIRURf U1lNTElOSyAxCnwgI2RlZmluZSBGVU5DX1JFQUxQQVRIX1dPUktTIDEKfCAjZGVmaW5lIEhB VkVfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfR0VUQ1dEIDEKfCAjZGVmaW5lIHJlc3Ry aWN0IF9fcmVzdHJpY3RfXwp8ICNkZWZpbmUgSEFWRV9FTlZJUk9OX0RFQ0wgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX1NUUk1PREUgMAp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2Rl ZmluZSBIQVZFX0dFVE9QVF9MT05HX09OTFkgMQp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkdf SU5UIDEKfCAjZGVmaW5lIEhBVkVfVU5TSUdORURfTE9OR19MT05HX0lOVCAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfTUVNTUVNIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9NRU1SQ0hSIDEKfCAj ZGVmaW5lIEhBVkVfTUlOTUFYX0lOX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIFRJTUVfVF9J U19TSUdORUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0FMQVJNIDEKfCAjZGVmaW5lIEhBVkVf U1RSVUNUX1RNX1RNX1pPTkUgMQp8ICNkZWZpbmUgSEFWRV9UTV9aT05FIDEKfCAjZGVmaW5l IEhBVkVfVE1fR01UT0ZGIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUX1QgMQp8ICNkZWZpbmUg SEFWRV9XQ0hBUl9UIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GQ0xPU0VBTEwgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX0dFVFcgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BVVFcgMQp8ICNkZWZp bmUgX19VU0VfTUlOR1dfQU5TSV9TVERJTyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRUNWVCAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfRkNWVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0NWVCAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSTkxFTiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RS VE9JTUFYIDEKfCAjZGVmaW5lIF9VU0VfU1REX1NUQVQgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X0VYRUNWUEUgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0NMRUFSRVJSX1VOTE9DS0VEIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9GRU9GX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9G RVJST1JfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZGTFVTSF9VTkxPQ0tFRCAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfRkdFVFNfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9E RUNMX0ZQVVRDX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GUFVUU19VTkxPQ0tF RCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRlJFQURfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX0ZXUklURV9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VUQ19VTkxP Q0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VUQ0hBUl9VTkxPQ0tFRCAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfUFVUQ19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUFVUQ0hB Ul9VTkxPQ0tFRCAxCnwgI2RlZmluZSBHRVRHUk9VUFNfVCBnaWRfdAp8ICNkZWZpbmUgSEFW RV9ERUNMX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfUE9TSVggMQp8 ICNkZWZpbmUgUFJPTU9URURfTU9ERV9UIG1vZGVfdAp8ICNkZWZpbmUgSEFWRV9XT1JLSU5H X1VUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBIQVZFX19fQlVJ TFRJTl9FWFBFQ1QgMQp8ICNkZWZpbmUgSEFWRV9CWVRFU1dBUF9IIDEKfCAjZGVmaW5lIEdO VUxJQl9DQU5PTklDQUxJWkVfTEdQTCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LQVQgMQp8 ICNkZWZpbmUgSEFWRV9DTE9DS19HRVRSRVMgMQp8ICNkZWZpbmUgSEFWRV9DTE9DS19HRVRU SU1FIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tfU0VUVElNRSAxCnwgI2RlZmluZSBHTlVMSUJf Q0xPU0VfU1RSRUFNIDEKfCAjZGVmaW5lIEhBVkVfQ09QWV9GSUxFX1JBTkdFIDEKfCAjZGVm aW5lIEhBVkVfU1RSVUNUX0RJUkVOVF9EX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNT QVQgMQp8ICNkZWZpbmUgR05VTElCX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xf RkRPUEVORElSIDEKfCAjZGVmaW5lIEdOVUxJQl9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgR0VU WEFUVFJfV0lUSF9QT1NJWF9BQ0xTIDEKfCAjZGVmaW5lIEZMRVhJQkxFX0FSUkFZX01FTUJF UiAvKiovCnwgI2RlZmluZSBIQVZFX0RFQ0xfX19GUEVORElORyAxCnwgI2RlZmluZSBIQVZF X0ZSRUVfUE9TSVggMQp8ICNkZWZpbmUgSEFWRV9TWVNfTU9VTlRfSCAxCnwgI2RlZmluZSBT VEFUX1NUQVRWRlMgMQp8ICNkZWZpbmUgU1RBVF9TVEFURlMyX0ZSU0laRSAxCnwgI2RlZmlu ZSBIQVZFX1NZU19TVEFURlNfSCAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRU5TIDEKfCAjZGVm aW5lIEhBVkVfR0VUTE9BREFWRyAxCnwgI2RlZmluZSBIQVZFX0dFVFJBTkRPTSAxCnwgI2Rl ZmluZSBIQVZFX1RJTUVTUEVDX0dFVCAxCnwgI2RlZmluZSBHRVRUSU1FT0ZEQVlfVElNRVpP TkUgdm9pZAp8ICNkZWZpbmUgSEFWRV9fX0lOTElORSAxCnwgI2RlZmluZSBIQVZFX0dNUF9I IDEKfCAjZGVmaW5lIEhBVkVfTUVNTUVNIDEKfCAjZGVmaW5lIEhBVkVfTUVNUENQWSAxCnwg I2RlZmluZSBIQVZFX01FTVJDSFIgMQp8ICNkZWZpbmUgSEFWRV9NS09TVEVNUCAxCnwgI2Rl ZmluZSBHTlVMSUJfTUtPU1RFTVAgMQp8ICNkZWZpbmUgTkVFRF9NS1RJTUVfV09SS0lORyAx CnwgI2RlZmluZSBIQVZFX0JVR19CSUdfTkFOT1NMRUVQIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9TQ0hFRF9HRVRBRkZJTklUWSAxCnwgI2RlZmlu ZSBIQVZFX1NDSEVEX0dFVEFGRklOSVRZX0xJS0VfR0xJQkMgMQp8ICNkZWZpbmUgbXlfc3Ry ZnRpbWUgbnN0cmZ0aW1lCnwgI2RlZmluZSBIQVZFX1BJUEUyIDEKfCAjZGVmaW5lIFVTRV9Y QVRUUiAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LQVQgMQp8ICNkZWZpbmUgSEFWRV9TSUdE RVNDUl9OUCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX0FUSU1fVFZfTlNFQyAx CnwgI2RlZmluZSBUWVBFT0ZfU1RSVUNUX1NUQVRfU1RfQVRJTV9JU19TVFJVQ1RfVElNRVNQ RUMgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+ CnwgICAgICAgICAgICNpbmNsdWRlIDxzeXMvc3RhdC5oPgp8IAp8IGludAp8IG1haW4gKHZv aWQpCnwgewp8IHN0YXRpYyBzdHJ1Y3Qgc3RhdCBhY19hZ2dyOwp8IGlmIChzaXplb2YgYWNf YWdnci5zdF9iaXJ0aHRpbS50dl9uc2VjKQp8IHJldHVybiAwOwp8ICAgOwp8ICAgcmV0dXJu IDA7CnwgfQpjb25maWd1cmU6NDEwOTI6IHJlc3VsdDogbm8KY29uZmlndXJlOjQxMTA5OiBj aGVja2luZyBmb3IgYm9vbCwgdHJ1ZSwgZmFsc2UKY29uZmlndXJlOjQxMTI0OiBnY2MgLWMg LWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOjQxNDoxMzogZXJyb3I6ICNl cnJvciAidHJ1ZSA9PSBmYWxzZSIKICA0MTQgfCAgICAgICAgICAgICNlcnJvciAidHJ1ZSA9 PSBmYWxzZSIKICAgICAgfCAgICAgICAgICAgICBefn5+fgpjb25mdGVzdC5jOjQxNjoxODog ZXJyb3I6IHVua25vd24gdHlwZSBuYW1lICdib29sJwogIDQxNiB8ICAgICAgICAgICBleHRl cm4gYm9vbCBiOwogICAgICB8ICAgICAgICAgICAgICAgICAgXn5+fgpjb25mdGVzdC5jOjQx NzoxMTogZXJyb3I6IHVua25vd24gdHlwZSBuYW1lICdib29sJwogIDQxNyB8ICAgICAgICAg ICBib29sIGIgPSB0cnVlID09IGZhbHNlOwogICAgICB8ICAgICAgICAgICBefn5+CmNvbmZ0 ZXN0LmM6MToxOiBub3RlOiAnYm9vbCcgaXMgZGVmaW5lZCBpbiBoZWFkZXIgJzxzdGRib29s Lmg+JzsgZGlkIHlvdSBmb3JnZXQgdG8gJyNpbmNsdWRlIDxzdGRib29sLmg+Jz8KICAgIDEg fCAvKiBjb25mZGVmcy5oICovCmNvbmZ0ZXN0LmM6NDE3OjIwOiBlcnJvcjogJ3RydWUnIHVu ZGVjbGFyZWQgaGVyZSAobm90IGluIGEgZnVuY3Rpb24pCiAgNDE3IHwgICAgICAgICAgIGJv b2wgYiA9IHRydWUgPT0gZmFsc2U7CiAgICAgIHwgICAgICAgICAgICAgICAgICAgIF5+fn4K Y29uZnRlc3QuYzo0MTc6MjA6IG5vdGU6ICd0cnVlJyBpcyBkZWZpbmVkIGluIGhlYWRlciAn PHN0ZGJvb2wuaD4nOyBkaWQgeW91IGZvcmdldCB0byAnI2luY2x1ZGUgPHN0ZGJvb2wuaD4n Pwpjb25mdGVzdC5jOjQxNzoyODogZXJyb3I6ICdmYWxzZScgdW5kZWNsYXJlZCBoZXJlIChu b3QgaW4gYSBmdW5jdGlvbikKICA0MTcgfCAgICAgICAgICAgYm9vbCBiID0gdHJ1ZSA9PSBm YWxzZTsKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fgpjb25mdGVz dC5jOjQxNzoyODogbm90ZTogJ2ZhbHNlJyBpcyBkZWZpbmVkIGluIGhlYWRlciAnPHN0ZGJv b2wuaD4nOyBkaWQgeW91IGZvcmdldCB0byAnI2luY2x1ZGUgPHN0ZGJvb2wuaD4nPwpjb25m aWd1cmU6NDExMjQ6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAv KiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAj ZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJ T04gIjMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDMwLjAu NTAiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3Jn Igp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHBzOi8vd3d3LmdudS5vcmcvc29mdHdhcmUv ZW1hY3MvIgp8ICNkZWZpbmUgSEFWRV9QRFVNUEVSIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9f SCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0gg MQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0gg MQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERf SCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GU19I IDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5G T19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VS Q0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9Q V0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpF Ul9MU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0FTQU5fSU5U RVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQ09NTU9OX0lOVEVSRkFDRV9E RUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9F WEVDSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfVkZTX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19DREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBI QVZFX0lFRUU3NTRfSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1JBTkRPTV9IIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmlu ZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5l IF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9IUFVYX0FMVF9YT1BFTl9TT0NLRVRfQVBJIDEK fCAjZGVmaW5lIF9ORVRCU0RfU09VUkNFIDEKfCAjZGVmaW5lIF9PUEVOQlNEX1NPVVJDRSAx CnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX19TVERD X1dBTlRfSUVDXzYwNTU5X0FUVFJJQlNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRf SUVDXzYwNTU5X0JGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlf REZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9FWFRfXyAxCnwg I2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRlVOQ1NfRVhUX18gMQp8ICNkZWZpbmUg X19TVERDX1dBTlRfSUVDXzYwNTU5X1RZUEVTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19X QU5UX0xJQl9FWFQyX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfTUFUSF9TUEVDX0ZVTkNT X18gMQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19FWFRFTlNJT05T X18gMQp8ICNkZWZpbmUgR0NDX0xJTlQgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9s aW51eCIKfCAjZGVmaW5lIEhBVkVfU1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVf QUxTQSAxCnwgI2RlZmluZSBIQVZFX1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJ VFlfQUREUl9OT19SQU5ET01JWkUgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEK fCAjZGVmaW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAx CnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAx CnwgI2RlZmluZSBIQVZFX0lGQUREUlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJF UV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAx CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBI QVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNU X0lGUkVRX0lGUl9BRERSIDEKfCAjZGVmaW5lIEhBVkVfU0JSSyAxCnwgI2RlZmluZSBIQVZF X0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZG T1JLIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfQ0FOT05JQ0FM SVpFX0ZJTEVfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1JFQUxQQVRIIDEKfCAjZGVmaW5lIEhB VkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0RBVCAxCnwgI2RlZmluZSBIQVZFX0xD SE1PRCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElS IDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAj ZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwg I2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5L IDEKfCAjZGVmaW5lIEhBVkVfSVNCTEFOSyAxCnwgI2RlZmluZSBIQVZFX0lTV0NUWVBFIDEK fCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwg I2RlZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0la RSAxCnwgI2RlZmluZSBTWVNURU1fTUFMTE9DIDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwg I2RlZmluZSBIQVZFX1BUSFJFQUQgMQp8ICNkZWZpbmUgVEhSRUFEU19FTkFCTEVEIDEKfCAj ZGVmaW5lIEhBVkVfWEtCIDEKfCAjZGVmaW5lIEhBVkVfWEtCUkVGUkVTSEtFWUJPQVJETUFQ UElORyAxCnwgI2RlZmluZSBIQVZFX1hLQkZSRUVOQU1FUyAxCnwgI2RlZmluZSBIQVZFX1hS TVNFVERBVEFCQVNFIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RSSU5HIDEK fCAjZGVmaW5lIEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhBVkVf WERJU1BMQVlDRUxMUyAxCnwgI2RlZmluZSBIQVZFX1hERVNUUk9ZU1VCV0lORE9XUyAxCnwg I2RlZmluZSBIQVZFX1gxMVI2IDEKfCAjZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVmaW5l IEhBVkVfWElDQ0FMTEJBQ0tfQ0FMTEJBQ0sgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9YSU0g MQp8ICNkZWZpbmUgSEFWRV9SU1ZHIDEKfCAjZGVmaW5lIEhBVkVfV0VCUCAxCnwgI2RlZmlu ZSBIQVZFX1NRTElURTMgMQp8ICNkZWZpbmUgSEFWRV9TUUxJVEUzX0xPQURfRVhURU5TSU9O IDEKfCAjZGVmaW5lIEhBVkVfR0VUQUREUklORk9fQSAxCnwgI2RlZmluZSBIQVZFX0dUSzMg MQp8ICNkZWZpbmUgR0RLX0RJU0FCTEVfREVQUkVDQVRJT05fV0FSTklOR1MgMQp8ICNkZWZp bmUgR0xJQl9ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIFVTRV9H VEsgMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfVFJJTSAxCnwgI2RlZmluZSBIQVZFX0RCVVMg MQp8ICNkZWZpbmUgSEFWRV9EQlVTX1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhB VkVfREJVU19UWVBFX0lTX1ZBTElEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9C VVNfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmlu ZSBIQVZFX0RCVVNfVkFMSURBVEVfSU5URVJGQUNFIDEKfCAjZGVmaW5lIEhBVkVfREJVU19W QUxJREFURV9NRU1CRVIgMQp8ICNkZWZpbmUgSEFWRV9HU0VUVElOR1MgMQp8ICNkZWZpbmUg SEFWRV9MSUJTRUxJTlVYIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhB VkVfTElCU1lTVEVNRCAxCnwgI2RlZmluZSBIQVZFX0pTT04gMQp8ICNkZWZpbmUgSEFWRV9J Tk9USUZZIDEKfCAjZGVmaW5lIFVTRV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBVU0VfVE9P TEtJVF9TQ1JPTExfQkFSUyAxCnwgI2RlZmluZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBVU0Vf WElNIDEKfCAjZGVmaW5lIEhBVkVfWFJFTkRFUiAxCnwgI2RlZmluZSBVU0VfQ0FJUk9fWENC IDEKfCAjZGVmaW5lIFVTRV9DQUlSTyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAj ZGVmaW5lIEhBVkVfRlRfRkFDRV9HRVRDSEFSVkFSSUFOVElOREVYIDEKfCAjZGVmaW5lIEhB VkVfTElCT1RGIDEKfCAjZGVmaW5lIEhBVkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTIDEK fCAjZGVmaW5lIEhBVkVfTTE3Tl9GTFQgMQp8ICNkZWZpbmUgSEFWRV9IQVJGQlVaWiAxCnwg I2RlZmluZSBVU0VfWENCIDEKfCAjZGVmaW5lIEhBVkVfWFBNIDEKfCAjZGVmaW5lIEhBVkVf SlBFRyAxCnwgI2RlZmluZSBIQVZFX0xDTVMyIDEKfCAjZGVmaW5lIEhBVkVfWkxJQiAxCnwg I2RlZmluZSBEWU5BTUlDX0xJQl9TVUZGSVggIi5zbyIKfCAjZGVmaW5lIERZTkFNSUNfTElC X1NFQ09OREFSWV9TVUZGSVggIiIKfCAjZGVmaW5lIEhBVkVfRExBRERSIDEKfCAjZGVmaW5l IEhBVkVfTU9EVUxFUyAxCnwgI2RlZmluZSBNT0RVTEVTX1NVRkZJWCAiLnNvIgp8ICNkZWZp bmUgTkFUSVZFX0VMSVNQX1NVRkZJWCAiLmVsbiIKfCAjZGVmaW5lIEhBVkVfUE5HIDEKfCAj ZGVmaW5lIEhBVkVfVElGRiAxCnwgI2RlZmluZSBIQVZFX0dJRiAxCnwgI2RlZmluZSBIQVZF X0dQTSAxCnwgI2RlZmluZSBIQVZFX1hfU00gMQp8ICNkZWZpbmUgSEFWRV9YUkFORFIgMQp8 ICNkZWZpbmUgSEFWRV9YSU5FUkFNQSAxCnwgI2RlZmluZSBIQVZFX1hGSVhFUyAxCnwgI2Rl ZmluZSBIQVZFX1hJTlBVVDIgMQp8ICNkZWZpbmUgSEFWRV9YSVNDUk9MTENMQVNTSU5GT19U WVBFIDEKfCAjZGVmaW5lIEhBVkVfWElUT1VDSENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5l IEhBVkVfWElCQVJSSUVSUkVMRUFTRVBPSU5URVJJTkZPX0RFVklDRUlEIDEKfCAjZGVmaW5l IEhBVkVfWElHRVNUVVJFQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQyAx CnwgI2RlZmluZSBIQVZFX1hTWU5DVFJJR0dFUkZFTkNFIDEKfCAjZGVmaW5lIEhBVkVfWERC RSAxCnwgI2RlZmluZSBIQVZFX1hDQl9TSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hTSEFQRSAx CnwgI2RlZmluZSBIQVZFX1hDT01QT1NJVEUgMQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwyIDEK fCAjZGVmaW5lIEhBVkVfTElOVVhfU0VDQ09NUF9IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9T RUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9G SUxURVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZJTFRFUl9IIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfU0VDQ09NUF9GSUxURVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBTSVpFT0Zf TE9ORyA4CnwgI2RlZmluZSBIQVZFX0FDQ0VQVDQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hESVIg MQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJVU0FH RSAxCnwgI2RlZmluZSBIQVZFX0dFVF9DVVJSRU5UX0RJUl9OQU1FIDEKfCAjZGVmaW5lIEhB VkVfTFJBTkQ0OCAxCnwgI2RlZmluZSBIQVZFX1JBTkRPTSAxCnwgI2RlZmluZSBIQVZFX1JJ TlQgMQp8ICNkZWZpbmUgSEFWRV9UUlVOQyAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwg I2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEK fCAjZGVmaW5lIEhBVkVfTkVXTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEK fCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8 ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJTSUdO QUwgMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9TRU5EVE8g MQp8ICNkZWZpbmUgSEFWRV9SRUNWRlJPTSAxCnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tOQU1F IDEKfCAjZGVmaW5lIEhBVkVfR0VUSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVJRkFE RFJTIDEKfCAjZGVmaW5lIEhBVkVfR0FJX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lO QyAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EUFdFTlQg MQp8ICNkZWZpbmUgSEFWRV9HRVRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0VOREdSRU5UIDEK fCAjZGVmaW5lIEhBVkVfUkVOQU1FQVQyIDEKfCAjZGVmaW5lIEhBVkVfQ0ZNQUtFUkFXIDEK fCAjZGVmaW5lIEhBVkVfQ0ZTRVRTUEVFRCAxCnwgI2RlZmluZSBIQVZFX19fRVhFQ1VUQUJM RV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFE X1NFVE5BTUVfTlAgMQp8ICNkZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfTUFEVklT RSAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9GUkFNRV9BRERSRVNTIDEKfCAjZGVmaW5l IEhBVkVfX19CVUlMVElOX1VOV0lORF9JTklUIDEKfCAjZGVmaW5lIEhBVkVfRlNFRUtPIDEK fCAjZGVmaW5lIEhBVkVfR1JBTlRQVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBUIDEKfCAjZGVm aW5lIEhBVkVfUE9TSVhfT1BFTlBUIDEKfCAjZGVmaW5lIFRFUk1JTkZPIDEKfCAjZGVmaW5l IFRFUk1JTkZPX0RFRklORVNfQkMgMQp8ICNkZWZpbmUgSEFWRV9USU1FUkZEIDEKfCAjZGVm aW5lIEhBVkVfVkFMR1JJTkRfVkFMR1JJTkRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9V TklQQUlSX1VOSUNPREUgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVm aW5lIEhBVkVfV09SS0lOR19GT1JLIDEKfCAjZGVmaW5lIEhBVkVfU05QUklOVEYgMQp8ICNk ZWZpbmUgSEFWRV9TUEFXTl9IIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV04gMQp8ICNk ZWZpbmUgSEFWRV9QT1NJWF9TUEFXTl9GSUxFX0FDVElPTlNfQUREQ0hESVJfTlAgMQp8ICNk ZWZpbmUgSEFWRV9QT1NJWF9TUEFXTkFUVFJfU0VURkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9E RUNMX1BPU0lYX1NQQVdOX1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX0dMSUIgMQp8ICNkZWZp bmUgSEFWRV9MQU5HSU5GT19DT0RFU0VUIDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fX05M X1BBUEVSX1dJRFRIIDEKfCAjZGVmaW5lIEhBVkVfTUJTVEFURV9UIDEKfCAjZGVmaW5lIEFN UEVSU0FORF9GVUxMX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9QVFlTIDEKfCAjZGVmaW5lIEhB VkVfU09DS0VUUyAxCnwgI2RlZmluZSBOVUxMX0RFVklDRSAiL2Rldi9udWxsIgp8ICNkZWZp bmUgU0VQQ0hBUiAnOicKfCAjZGVmaW5lIHN1YnByb2Nlc3NlcyAxCnwgI2RlZmluZSBVU0VS X0ZVTExfTkFNRSBwdy0+cHdfZ2Vjb3MKfCAjZGVmaW5lIERJUkVDVE9SWV9TRVAgJy8nCnwg I2RlZmluZSBJU19ERVZJQ0VfU0VQKF9jXykgMAp8ICNkZWZpbmUgSVNfRElSRUNUT1JZX1NF UChfY18pICgoX2NfKSA9PSBESVJFQ1RPUllfU0VQKQp8ICNkZWZpbmUgSVNfQU5ZX1NFUChf Y18pIChJU19ESVJFQ1RPUllfU0VQIChfY18pKQp8ICNkZWZpbmUgSEFWRV9QUk9DRlMgMQp8 ICNkZWZpbmUgREVGQVVMVF9TT1VORF9ERVZJQ0UgIi9kZXYvZHNwIgp8ICNkZWZpbmUgSU5U RVJSVVBUX0lOUFVUIDEKfCAjZGVmaW5lIE5BUlJPV1BST1RPIDEKfCAjZGVmaW5lIFVOSVg5 OF9QVFlTIDEKfCAjZGVmaW5lIFBUWV9JVEVSQVRJT04gaW50IGk7IGZvciAoaSA9IDA7IGkg PCAxOyBpKyspCnwgI2RlZmluZSBQVFlfVFRZX05BTUVfU1BSSU5URiB7IGNoYXIgKnB0eW5h bWUgPSAwOyBzaWdzZXRfdCBibG9ja2VkOyBzaWdlbXB0eXNldCAoJmJsb2NrZWQpOyBzaWdh ZGRzZXQgKCZibG9ja2VkLCBTSUdDSExEKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfQkxPQ0ss ICZibG9ja2VkLCAwKTsgaWYgKGdyYW50cHQgKGZkKSAhPSAtMSAmJiB1bmxvY2twdCAoZmQp ICE9IC0xKSBwdHluYW1lID0gcHRzbmFtZShmZCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX1VO QkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKCFwdHluYW1lKSB7IGVtYWNzX2Nsb3NlIChmZCk7 IHJldHVybiAtMTsgfSBzbnByaW50ZiAocHR5X25hbWUsIFBUWV9OQU1FX1NJWkUsICIlcyIs IHB0eW5hbWUpOyB9CnwgI2RlZmluZSBQVFlfT1BFTiBkbyB7IGZkID0gcG9zaXhfb3BlbnB0 IChPX1JEV1IgfCBPX0NMT0VYRUMgfCBPX05PQ1RUWSk7IGlmIChmZCA8IDAgJiYgZXJybm8g PT0gRUlOVkFMKSBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19OT0NUVFkpOyB9IHdo aWxlIChmYWxzZSkKfCAjZGVmaW5lIFBUWV9OQU1FX1NQUklOVEYgLyoqLwp8ICNkZWZpbmUg U0lHTkFMU19WSUFfQ0hBUkFDVEVSUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8 ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfX1NFVEpNUCAxCnwg I2RlZmluZSBIQVZFX1NJR1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NUQUNLX09WRVJGTE9X X0hBTkRMSU5HIDEKfCAjZGVmaW5lIFVTRyAvKiovCnwgI2RlZmluZSBHTlVfTElOVVggLyoq Lwp8ICNkZWZpbmUgU0laRU9GX1NQRUVEX1QgNAp8ICNkZWZpbmUgVVNBQkxFX0ZJT05SRUFE IDEKfCAjZGVmaW5lIFVTQUJMRV9TSUdJTyAxCnwgI2RlZmluZSBDT1BZUklHSFQgIkNvcHly aWdodCAoQykgMjAyMyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4iCnwgI2RlZmlu ZSBURVJNX0hFQURFUiAiZ3RrdXRpbC5oIgp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHVVJBVElP TiAieDg2XzY0LXBjLWxpbnV4LWdudSIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR19PUFRJT05T ICIiCnwgI2RlZmluZSBIQVZFX1hfV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gxMSAxCnwg I2RlZmluZSBIQVZFX1NUUlVDVF9BVFRSSUJVVEVfQUxJR05FRCAxCnwgI2RlZmluZSBIQVZF X1RZUEVPRiAxCnwgI2RlZmluZSBIQVZFX1NUQVRFTUVOVF9FWFBSRVNTSU9OUyAxCnwgI2Rl ZmluZSBNQUxMT0NfMF9JU19OT05OVUxMIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0FDTF9IIDEK fCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9G RCAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9T RVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJFRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9G Uk9NX01PREUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9URVhUIDEKfCAjZGVmaW5lIEhB VkVfQUNMX0RFTEVURV9ERUZfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9FWFRFTkRFRF9G SUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0xJQkFDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNM X0VOVFJJRVMgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRklSU1RfRU5UUlkgMQp8ICNkZWZpbmUg VVNFX0FDTCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxM T0NBIDEKfCAjZGVmaW5lIExTVEFUX0ZPTExPV1NfU0xBU0hFRF9TWU1MSU5LIDEKfCAjZGVm aW5lIEZVTkNfUkVBTFBBVEhfV09SS1MgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8 ICNkZWZpbmUgSEFWRV9HRVRDV0QgMQp8ICNkZWZpbmUgcmVzdHJpY3QgX19yZXN0cmljdF9f CnwgI2RlZmluZSBIQVZFX0VOVklST05fREVDTCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RS TU9ERSAwCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BU X0xPTkdfT05MWSAxCnwgI2RlZmluZSBIQVZFX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUg SEFWRV9VTlNJR05FRF9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9NRU1N RU0gMQp8ICNkZWZpbmUgSEFWRV9ERUNMX01FTVJDSFIgMQp8ICNkZWZpbmUgSEFWRV9NSU5N QVhfSU5fU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgVElNRV9UX0lTX1NJR05FRCAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfQUxBUk0gMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVE1fVE1fWk9O RSAxCnwgI2RlZmluZSBIQVZFX1RNX1pPTkUgMQp8ICNkZWZpbmUgSEFWRV9UTV9HTVRPRkYg MQp8ICNkZWZpbmUgSEFWRV9TSUdTRVRfVCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX1QgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX0ZDTE9TRUFMTCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VU VyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUFVUVyAxCnwgI2RlZmluZSBfX1VTRV9NSU5HV19B TlNJX1NURElPIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9FQ1ZUIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9GQ1ZUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HQ1ZUIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9TVFJOTEVOIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJUT0lNQVggMQp8ICNkZWZp bmUgX1VTRV9TVERfU1RBVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRVhFQ1ZQRSAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfQ0xFQVJFUlJfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X0ZFT0ZfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZFUlJPUl9VTkxPQ0tFRCAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfRkZMVVNIX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9GR0VUU19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRlBVVENfVU5MT0NL RUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZQVVRTX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9GUkVBRF9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRldSSVRFX1VO TE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRDX1VOTE9DS0VEIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9HRVRDSEFSX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRD X1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRDSEFSX1VOTE9DS0VEIDEKfCAj ZGVmaW5lIEdFVEdST1VQU19UIGdpZF90CnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VURFRBQkxF U0laRSAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19QT1NJWCAxCnwgI2RlZmluZSBQUk9NT1RF RF9NT0RFX1QgbW9kZV90CnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVVRJTUVTIDEKfCAjZGVm aW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX0VYUEVDVCAxCnwg I2RlZmluZSBIQVZFX0JZVEVTV0FQX0ggMQp8ICNkZWZpbmUgR05VTElCX0NBTk9OSUNBTEla RV9MR1BMIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZFX0NM T0NLX0dFVFJFUyAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX0dFVFRJTUUgMQp8ICNkZWZpbmUg SEFWRV9DTE9DS19TRVRUSU1FIDEKfCAjZGVmaW5lIEdOVUxJQl9DTE9TRV9TVFJFQU0gMQp8 ICNkZWZpbmUgSEFWRV9DT1BZX0ZJTEVfUkFOR0UgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1Rf RElSRU5UX0RfVFlQRSAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBH TlVMSUJfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRE9QRU5ESVIgMQp8ICNk ZWZpbmUgR05VTElCX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBHRVRYQVRUUl9XSVRIX1BPU0lY X0FDTFMgMQp8ICNkZWZpbmUgRkxFWElCTEVfQVJSQVlfTUVNQkVSIC8qKi8KfCAjZGVmaW5l IEhBVkVfREVDTF9fX0ZQRU5ESU5HIDEKfCAjZGVmaW5lIEhBVkVfRlJFRV9QT1NJWCAxCnwg I2RlZmluZSBIQVZFX1NZU19NT1VOVF9IIDEKfCAjZGVmaW5lIFNUQVRfU1RBVFZGUyAxCnwg I2RlZmluZSBTVEFUX1NUQVRGUzJfRlJTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRG U19IIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FTlMgMQp8ICNkZWZpbmUgSEFWRV9HRVRMT0FE QVZHIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkFORE9NIDEKfCAjZGVmaW5lIEhBVkVfVElNRVNQ RUNfR0VUIDEKfCAjZGVmaW5lIEdFVFRJTUVPRkRBWV9USU1FWk9ORSB2b2lkCnwgI2RlZmlu ZSBIQVZFX19fSU5MSU5FIDEKfCAjZGVmaW5lIEhBVkVfR01QX0ggMQp8ICNkZWZpbmUgSEFW RV9NRU1NRU0gMQp8ICNkZWZpbmUgSEFWRV9NRU1QQ1BZIDEKfCAjZGVmaW5lIEhBVkVfTUVN UkNIUiAxCnwgI2RlZmluZSBIQVZFX01LT1NURU1QIDEKfCAjZGVmaW5lIEdOVUxJQl9NS09T VEVNUCAxCnwgI2RlZmluZSBORUVEX01LVElNRV9XT1JLSU5HIDEKfCAjZGVmaW5lIEhBVkVf QlVHX0JJR19OQU5PU0xFRVAgMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2Rl ZmluZSBIQVZFX1NDSEVEX0dFVEFGRklOSVRZIDEKfCAjZGVmaW5lIEhBVkVfU0NIRURfR0VU QUZGSU5JVFlfTElLRV9HTElCQyAxCnwgI2RlZmluZSBteV9zdHJmdGltZSBuc3RyZnRpbWUK fCAjZGVmaW5lIEhBVkVfUElQRTIgMQp8ICNkZWZpbmUgVVNFX1hBVFRSIDEKfCAjZGVmaW5l IEhBVkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZFX1NJR0RFU0NSX05QIDEKfCAjZGVm aW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfQVRJTV9UVl9OU0VDIDEKfCAjZGVmaW5lIFRZUEVP Rl9TVFJVQ1RfU1RBVF9TVF9BVElNX0lTX1NUUlVDVF9USU1FU1BFQyAxCnwgLyogZW5kIGNv bmZkZWZzLmguICAqLwp8IAp8ICAgICAgICAgICAjaWYgdHJ1ZSA9PSBmYWxzZQp8ICAgICAg ICAgICAgI2Vycm9yICJ0cnVlID09IGZhbHNlIgp8ICAgICAgICAgICAjZW5kaWYKfCAgICAg ICAgICAgZXh0ZXJuIGJvb2wgYjsKfCAgICAgICAgICAgYm9vbCBiID0gdHJ1ZSA9PSBmYWxz ZTsKY29uZmlndXJlOjQxMTMyOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo0MTU2NzogY2hlY2tp bmcgZm9yIHN0cGNweQpjb25maWd1cmU6NDE2MDQ6IGNoZWNraW5nIGZvciBzdHBjcHkKY29u ZmlndXJlOjQxNjA0OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMg ICA+JjUgCmNvbmZ0ZXN0LmM6NDMwOjY6IHdhcm5pbmc6IGNvbmZsaWN0aW5nIHR5cGVzIGZv ciBidWlsdC1pbiBmdW5jdGlvbiAnc3RwY3B5JzsgZXhwZWN0ZWQgJ2NoYXIgKihjaGFyICos IGNvbnN0IGNoYXIgKiknIFstV2J1aWx0aW4tZGVjbGFyYXRpb24tbWlzbWF0Y2hdCiAgNDMw IHwgY2hhciBzdHBjcHkgKCk7CiAgICAgIHwgICAgICBefn5+fn4KY29uZmlndXJlOjQxNjA0 OiAkPyA9IDAKY29uZmlndXJlOjQxNjA0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NDE2MTk6 IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo0MTY5ODogY2hlY2tpbmcgZm9yIHdvcmtpbmcgc3Ry bmxlbgpjb25maWd1cmU6NDE3Mzg6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29u ZnRlc3QuYyAgID4mNSAKY29uZmlndXJlOjQxNzM4OiAkPyA9IDAKY29uZmlndXJlOjQxNzM4 OiAuL2NvbmZ0ZXN0CmNvbmZpZ3VyZTo0MTczODogJD8gPSAwCmNvbmZpZ3VyZTo0MTc0OTog cmVzdWx0OiB5ZXMKY29uZmlndXJlOjQxODA0OiBjaGVja2luZyB3aGV0aGVyIHN0cnRvaW1h eCB3b3Jrcwpjb25maWd1cmU6NDE4NjI6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAg Y29uZnRlc3QuYyAgID4mNSAKY29uZmlndXJlOjQxODYyOiAkPyA9IDAKY29uZmlndXJlOjQx ODYyOiAuL2NvbmZ0ZXN0CmNvbmZpZ3VyZTo0MTg2MjogJD8gPSAwCmNvbmZpZ3VyZTo0MTg3 NDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjQxOTMxOiBjaGVja2luZyB3aGV0aGVyIHN5bWxp bmsgaGFuZGxlcyB0cmFpbGluZyBzbGFzaCBjb3JyZWN0bHkKY29uZmlndXJlOjQxOTcxOiBn Y2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCmNvbmZpZ3Vy ZTo0MTk3MTogJD8gPSAwCmNvbmZpZ3VyZTo0MTk3MTogLi9jb25mdGVzdApjb25maWd1cmU6 NDE5NzE6ICQ/ID0gMApjb25maWd1cmU6NDE5ODM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo0 MjA3NDogY2hlY2tpbmcgd2hldGhlciBsb2NhbHRpbWVfciBpcyBkZWNsYXJlZApjb25maWd1 cmU6NDIwNzQ6IGdjYyAtYyAtZzMgLU8yICAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6 NDIwNzQ6ICQ/ID0gMApjb25maWd1cmU6NDIwNzQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo0 MjA5ODogY2hlY2tpbmcgd2hldGhlciBsb2NhbHRpbWVfciBpcyBjb21wYXRpYmxlIHdpdGgg aXRzIFBPU0lYIHNpZ25hdHVyZQpjb25maWd1cmU6NDIxMzA6IGdjYyAtYyAtZzMgLU8yICAg IGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo0MjEzMDogJD8gPSAwCmNvbmZpZ3VyZTo0MjEz OTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjQyMjMyOiBjaGVja2luZyB3aGV0aGVyIGxvY2Fs dGltZSB3b3JrcyBldmVuIG5lYXIgZXh0cmVtYQpjb25maWd1cmU6NDIyNjg6IGdjYyAtbyBj b25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAgID4mNSAKY29uZmlndXJlOjQyMjY4 OiAkPyA9IDAKY29uZmlndXJlOjQyMjY4OiAuL2NvbmZ0ZXN0CmNvbmZpZ3VyZTo0MjI2ODog JD8gPSAwCmNvbmZpZ3VyZTo0MjI3ODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjQyMjg2OiBj aGVja2luZyBmb3IgdGltZXpvbmVfdApjb25maWd1cmU6NDIyODY6IGdjYyAtYyAtZzMgLU8y ICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6IEluIGZ1bmN0aW9uICdtYWluJzoKY29u ZnRlc3QuYzo0MjI6MTM6IGVycm9yOiAndGltZXpvbmVfdCcgdW5kZWNsYXJlZCAoZmlyc3Qg dXNlIGluIHRoaXMgZnVuY3Rpb24pOyBkaWQgeW91IG1lYW4gJ3RpbWV6b25lJz8KICA0MjIg fCBpZiAoc2l6ZW9mICh0aW1lem9uZV90KSkKICAgICAgfCAgICAgICAgICAgICBefn5+fn5+ fn5+CiAgICAgIHwgICAgICAgICAgICAgdGltZXpvbmUKY29uZnRlc3QuYzo0MjI6MTM6IG5v dGU6IGVhY2ggdW5kZWNsYXJlZCBpZGVudGlmaWVyIGlzIHJlcG9ydGVkIG9ubHkgb25jZSBm b3IgZWFjaCBmdW5jdGlvbiBpdCBhcHBlYXJzIGluCmNvbmZpZ3VyZTo0MjI4NjogJD8gPSAx CmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAj ZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJO QU1FICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMzAuMC41MCIKfCAjZGVm aW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1hY3MgMzAuMC41MCIKfCAjZGVmaW5lIFBBQ0tB R0VfQlVHUkVQT1JUICJidWctZ251LWVtYWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdF X1VSTCAiaHR0cHM6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmluZSBI QVZFX1BEVU1QRVIgMQp8ICNkZWZpbmUgSEFWRV9TVERJT19IIDEKfCAjZGVmaW5lIEhBVkVf U1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX0lO VFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1NU UklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVf V0NIQVJfSCAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZTX0ggMQp8ICNkZWZpbmUgSEFWRV9N QUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TWVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFW RV9QVFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhB VkVfVVRNUF9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0xTQU5fSU5URVJGQUNFX0gg MQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQVNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmlu ZSBIQVZFX1NBTklUSVpFUl9DT01NT05fSU5URVJGQUNFX0RFRlNfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVm aW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZp bmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX0VYRUNJTkZPX0ggMQp8ICNkZWZp bmUgSEFWRV9TVERJT19FWFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19WRlNfSCAxCnwgI2Rl ZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0NERUZTX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfSUVFRTc1NF9IIDEKfCAj ZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8 ICNkZWZpbmUgSEFWRV9TVERCT09MX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkFORE9NX0gg MQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAj ZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNk ZWZpbmUgX0hQVVhfQUxUX1hPUEVOX1NPQ0tFVF9BUEkgMQp8ICNkZWZpbmUgX05FVEJTRF9T T1VSQ0UgMQp8ICNkZWZpbmUgX09QRU5CU0RfU09VUkNFIDEKfCAjZGVmaW5lIF9QT1NJWF9Q VEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfQVRU UklCU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfQkZQX0VYVF9f IDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9ERlBfRVhUX18gMQp8ICNkZWZp bmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5U X0lFQ182MDU1OV9GVU5DU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1 NTlfVFlQRVNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfTElCX0VYVDJfXyAxCnwg I2RlZmluZSBfX1NURENfV0FOVF9NQVRIX1NQRUNfRlVOQ1NfXyAxCnwgI2RlZmluZSBfVEFO REVNX1NPVVJDRSAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBHQ0Nf TElOVCAxCnwgI2RlZmluZSBTWVNURU1fVFlQRSAiZ251L2xpbnV4Igp8ICNkZWZpbmUgSEFW RV9TWVNfU09VTkRDQVJEX0ggMQp8ICNkZWZpbmUgSEFWRV9BTFNBIDEKfCAjZGVmaW5lIEhB VkVfU09VTkQgMQp8ICNkZWZpbmUgSEFWRV9QRVJTT05BTElUWV9BRERSX05PX1JBTkRPTUla RSAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX1NZU0lORk8gMQp8ICNkZWZpbmUgTElOVVhfU1lT SU5GT19VTklUIDEKfCAjZGVmaW5lIEhBVkVfVEVSTV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX05FVF9JRl9IIDEKfCAjZGVmaW5lIEhBVkVfSUZB RERSU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9GTEFHUyAxCnwgI2Rl ZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfSFdBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RS VUNUX0lGUkVRX0lGUl9ORVRNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lG Ul9CUk9BREFERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0FERFIgMQp8 ICNkZWZpbmUgSEFWRV9TQlJLIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNk ZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfVkZPUksgMQp8ICNkZWZpbmUgSEFW RV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9DQU5PTklDQUxJWkVfRklMRV9OQU1FIDEKfCAj ZGVmaW5lIEhBVkVfUkVBTFBBVEggMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwgI2RlZmlu ZSBIQVZFX0ZDSE1PREFUIDEKfCAjZGVmaW5lIEhBVkVfTENITU9EIDEKfCAjZGVmaW5lIEhB VkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgSEFWRV9G U1RBVEFUIDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRUSU1F T0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9QU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVB RF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFWRV9J U0JMQU5LIDEKfCAjZGVmaW5lIEhBVkVfSVNXQ1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9TVFJU T0lNQVggMQp8ICNkZWZpbmUgSEFWRV9TWU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxU SU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIFNZU1RF TV9NQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9NTUFQIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVB RCAxCnwgI2RlZmluZSBUSFJFQURTX0VOQUJMRUQgMQp8ICNkZWZpbmUgSEFWRV9YS0IgMQp8 ICNkZWZpbmUgSEFWRV9YS0JSRUZSRVNIS0VZQk9BUkRNQVBQSU5HIDEKfCAjZGVmaW5lIEhB VkVfWEtCRlJFRU5BTUVTIDEKfCAjZGVmaW5lIEhBVkVfWFJNU0VUREFUQUJBU0UgMQp8ICNk ZWZpbmUgSEFWRV9YU0NSRUVOUkVTT1VSQ0VTVFJJTkcgMQp8ICNkZWZpbmUgSEFWRV9YU0NS RUVOTlVNQkVST0ZTQ1JFRU4gMQp8ICNkZWZpbmUgSEFWRV9YRElTUExBWUNFTExTIDEKfCAj ZGVmaW5lIEhBVkVfWERFU1RST1lTVUJXSU5ET1dTIDEKfCAjZGVmaW5lIEhBVkVfWDExUjYg MQp8ICNkZWZpbmUgSEFWRV9YX0kxOE4gMQp8ICNkZWZpbmUgSEFWRV9YSUNDQUxMQkFDS19D QUxMQkFDSyAxCnwgI2RlZmluZSBIQVZFX1gxMVI2X1hJTSAxCnwgI2RlZmluZSBIQVZFX1JT VkcgMQp8ICNkZWZpbmUgSEFWRV9XRUJQIDEKfCAjZGVmaW5lIEhBVkVfU1FMSVRFMyAxCnwg I2RlZmluZSBIQVZFX1NRTElURTNfTE9BRF9FWFRFTlNJT04gMQp8ICNkZWZpbmUgSEFWRV9H RVRBRERSSU5GT19BIDEKfCAjZGVmaW5lIEhBVkVfR1RLMyAxCnwgI2RlZmluZSBHREtfRElT QUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAxCnwgI2RlZmluZSBHTElCX0RJU0FCTEVfREVQ UkVDQVRJT05fV0FSTklOR1MgMQp8ICNkZWZpbmUgVVNFX0dUSyAxCnwgI2RlZmluZSBIQVZF X01BTExPQ19UUklNIDEKfCAjZGVmaW5lIEhBVkVfREJVUyAxCnwgI2RlZmluZSBIQVZFX0RC VVNfV0FUQ0hfR0VUX1VOSVhfRkQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1RZUEVfSVNfVkFM SUQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0JVU19OQU1FIDEKfCAjZGVmaW5l IEhBVkVfREJVU19WQUxJREFURV9QQVRIIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFU RV9JTlRFUkZBQ0UgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX01FTUJFUiAxCnwg I2RlZmluZSBIQVZFX0dTRVRUSU5HUyAxCnwgI2RlZmluZSBIQVZFX0xJQlNFTElOVVggMQp8 ICNkZWZpbmUgSEFWRV9HTlVUTFMgMQp8ICNkZWZpbmUgSEFWRV9MSUJTWVNURU1EIDEKfCAj ZGVmaW5lIEhBVkVfSlNPTiAxCnwgI2RlZmluZSBIQVZFX0lOT1RJRlkgMQp8ICNkZWZpbmUg VVNFX0ZJTEVfTk9USUZZIDEKfCAjZGVmaW5lIFVTRV9UT09MS0lUX1NDUk9MTF9CQVJTIDEK fCAjZGVmaW5lIEhBVkVfWElNIDEKfCAjZGVmaW5lIFVTRV9YSU0gMQp8ICNkZWZpbmUgSEFW RV9YUkVOREVSIDEKfCAjZGVmaW5lIFVTRV9DQUlST19YQ0IgMQp8ICNkZWZpbmUgVVNFX0NB SVJPIDEKfCAjZGVmaW5lIEhBVkVfRlJFRVRZUEUgMQp8ICNkZWZpbmUgSEFWRV9GVF9GQUNF X0dFVENIQVJWQVJJQU5USU5ERVggMQp8ICNkZWZpbmUgSEFWRV9MSUJPVEYgMQp8ICNkZWZp bmUgSEFWRV9PVEZfR0VUX1ZBUklBVElPTl9HTFlQSFMgMQp8ICNkZWZpbmUgSEFWRV9NMTdO X0ZMVCAxCnwgI2RlZmluZSBIQVZFX0hBUkZCVVpaIDEKfCAjZGVmaW5lIFVTRV9YQ0IgMQp8 ICNkZWZpbmUgSEFWRV9YUE0gMQp8ICNkZWZpbmUgSEFWRV9KUEVHIDEKfCAjZGVmaW5lIEhB VkVfTENNUzIgMQp8ICNkZWZpbmUgSEFWRV9aTElCIDEKfCAjZGVmaW5lIERZTkFNSUNfTElC X1NVRkZJWCAiLnNvIgp8ICNkZWZpbmUgRFlOQU1JQ19MSUJfU0VDT05EQVJZX1NVRkZJWCAi Igp8ICNkZWZpbmUgSEFWRV9ETEFERFIgMQp8ICNkZWZpbmUgSEFWRV9NT0RVTEVTIDEKfCAj ZGVmaW5lIE1PRFVMRVNfU1VGRklYICIuc28iCnwgI2RlZmluZSBOQVRJVkVfRUxJU1BfU1VG RklYICIuZWxuIgp8ICNkZWZpbmUgSEFWRV9QTkcgMQp8ICNkZWZpbmUgSEFWRV9USUZGIDEK fCAjZGVmaW5lIEhBVkVfR0lGIDEKfCAjZGVmaW5lIEhBVkVfR1BNIDEKfCAjZGVmaW5lIEhB VkVfWF9TTSAxCnwgI2RlZmluZSBIQVZFX1hSQU5EUiAxCnwgI2RlZmluZSBIQVZFX1hJTkVS QU1BIDEKfCAjZGVmaW5lIEhBVkVfWEZJWEVTIDEKfCAjZGVmaW5lIEhBVkVfWElOUFVUMiAx CnwgI2RlZmluZSBIQVZFX1hJU0NST0xMQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFW RV9YSVRPVUNIQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YSUJBUlJJRVJSRUxF QVNFUE9JTlRFUklORk9fREVWSUNFSUQgMQp8ICNkZWZpbmUgSEFWRV9YSUdFU1RVUkVDTEFT U0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hTWU5DIDEKfCAjZGVmaW5lIEhBVkVfWFNZ TkNUUklHR0VSRkVOQ0UgMQp8ICNkZWZpbmUgSEFWRV9YREJFIDEKfCAjZGVmaW5lIEhBVkVf WENCX1NIQVBFIDEKfCAjZGVmaW5lIEhBVkVfWFNIQVBFIDEKfCAjZGVmaW5lIEhBVkVfWENP TVBPU0lURSAxCnwgI2RlZmluZSBIQVZFX0xJQlhNTDIgMQp8ICNkZWZpbmUgSEFWRV9MSU5V WF9TRUNDT01QX0ggMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfU0VUX01PREVfRklM VEVSIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX0ZJTFRFUl9GTEFHX1RTWU5DIDEK fCAjZGVmaW5lIEhBVkVfTElOVVhfRklMVEVSX0ggMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NF Q0NPTVBfU0VUX01PREVfRklMVEVSIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX0ZJ TFRFUl9GTEFHX1RTWU5DIDEKfCAjZGVmaW5lIFNJWkVPRl9MT05HIDgKfCAjZGVmaW5lIEhB VkVfQUNDRVBUNCAxCnwgI2RlZmluZSBIQVZFX0ZDSERJUiAxCnwgI2RlZmluZSBIQVZFX0dF VEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUUlVTQUdFIDEKfCAjZGVmaW5lIEhBVkVf R0VUX0NVUlJFTlRfRElSX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9MUkFORDQ4IDEKfCAjZGVm aW5lIEhBVkVfUkFORE9NIDEKfCAjZGVmaW5lIEhBVkVfUklOVCAxCnwgI2RlZmluZSBIQVZF X1RSVU5DIDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFH RVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9ORVdM T0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRS TElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TSFVURE9XTiAxCnwgI2RlZmluZSBIQVZFX1BUSFJF QURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlNJR05BTCAxCnwgI2RlZmluZSBIQVZF X1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX1NFTkRUTyAxCnwgI2RlZmluZSBIQVZFX1JF Q1ZGUk9NIDEKfCAjZGVmaW5lIEhBVkVfR0VUU09DS05BTUUgMQp8ICNkZWZpbmUgSEFWRV9H RVRJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfRlJFRUlGQUREUlMgMQp8ICNkZWZpbmUgSEFW RV9HQUlfU1RSRVJST1IgMQp8ICNkZWZpbmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVf R0VUUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0dF VEdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5ER1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9SRU5B TUVBVDIgMQp8ICNkZWZpbmUgSEFWRV9DRk1BS0VSQVcgMQp8ICNkZWZpbmUgSEFWRV9DRlNF VFNQRUVEIDEKfCAjZGVmaW5lIEhBVkVfX19FWEVDVVRBQkxFX1NUQVJUIDEKfCAjZGVmaW5l IEhBVkVfTE9HMiAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0VUTkFNRV9OUCAxCnwgI2Rl ZmluZSBIQVZFX0FMSUdORURfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0FMSUdORURf QUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9NQURWSVNFIDEKfCAjZGVmaW5lIEhBVkVf X19CVUlMVElOX0ZSQU1FX0FERFJFU1MgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fVU5X SU5EX0lOSVQgMQp8ICNkZWZpbmUgSEFWRV9GU0VFS08gMQp8ICNkZWZpbmUgSEFWRV9HUkFO VFBUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFQgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9PUEVO UFQgMQp8ICNkZWZpbmUgVEVSTUlORk8gMQp8ICNkZWZpbmUgVEVSTUlORk9fREVGSU5FU19C QyAxCnwgI2RlZmluZSBIQVZFX1RJTUVSRkQgMQp8ICNkZWZpbmUgSEFWRV9WQUxHUklORF9W QUxHUklORF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1VOSVBBSVJfVU5JQ09ERSAxCnwg I2RlZmluZSBIQVZFX1dPUktJTkdfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX0ZP UksgMQp8ICNkZWZpbmUgSEFWRV9TTlBSSU5URiAxCnwgI2RlZmluZSBIQVZFX1NQQVdOX0gg MQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTiAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQ QVdOX0ZJTEVfQUNUSU9OU19BRERDSERJUl9OUCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQ QVdOQVRUUl9TRVRGTEFHUyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUE9TSVhfU1BBV05fU0VU U0lEIDEKfCAjZGVmaW5lIEhBVkVfR0xJQiAxCnwgI2RlZmluZSBIQVZFX0xBTkdJTkZPX0NP REVTRVQgMQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5GT19fTkxfUEFQRVJfV0lEVEggMQp8ICNk ZWZpbmUgSEFWRV9NQlNUQVRFX1QgMQp8ICNkZWZpbmUgQU1QRVJTQU5EX0ZVTExfTkFNRSAx CnwgI2RlZmluZSBIQVZFX1BUWVMgMQp8ICNkZWZpbmUgSEFWRV9TT0NLRVRTIDEKfCAjZGVm aW5lIE5VTExfREVWSUNFICIvZGV2L251bGwiCnwgI2RlZmluZSBTRVBDSEFSICc6Jwp8ICNk ZWZpbmUgc3VicHJvY2Vzc2VzIDEKfCAjZGVmaW5lIFVTRVJfRlVMTF9OQU1FIHB3LT5wd19n ZWNvcwp8ICNkZWZpbmUgRElSRUNUT1JZX1NFUCAnLycKfCAjZGVmaW5lIElTX0RFVklDRV9T RVAoX2NfKSAwCnwgI2RlZmluZSBJU19ESVJFQ1RPUllfU0VQKF9jXykgKChfY18pID09IERJ UkVDVE9SWV9TRVApCnwgI2RlZmluZSBJU19BTllfU0VQKF9jXykgKElTX0RJUkVDVE9SWV9T RVAgKF9jXykpCnwgI2RlZmluZSBIQVZFX1BST0NGUyAxCnwgI2RlZmluZSBERUZBVUxUX1NP VU5EX0RFVklDRSAiL2Rldi9kc3AiCnwgI2RlZmluZSBJTlRFUlJVUFRfSU5QVVQgMQp8ICNk ZWZpbmUgTkFSUk9XUFJPVE8gMQp8ICNkZWZpbmUgVU5JWDk4X1BUWVMgMQp8ICNkZWZpbmUg UFRZX0lURVJBVElPTiBpbnQgaTsgZm9yIChpID0gMDsgaSA8IDE7IGkrKykKfCAjZGVmaW5l IFBUWV9UVFlfTkFNRV9TUFJJTlRGIHsgY2hhciAqcHR5bmFtZSA9IDA7IHNpZ3NldF90IGJs b2NrZWQ7IHNpZ2VtcHR5c2V0ICgmYmxvY2tlZCk7IHNpZ2FkZHNldCAoJmJsb2NrZWQsIFNJ R0NITEQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAo Z3JhbnRwdCAoZmQpICE9IC0xICYmIHVubG9ja3B0IChmZCkgIT0gLTEpIHB0eW5hbWUgPSBw dHNuYW1lKGZkKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfVU5CTE9DSywgJmJsb2NrZWQsIDAp OyBpZiAoIXB0eW5hbWUpIHsgZW1hY3NfY2xvc2UgKGZkKTsgcmV0dXJuIC0xOyB9IHNucHJp bnRmIChwdHlfbmFtZSwgUFRZX05BTUVfU0laRSwgIiVzIiwgcHR5bmFtZSk7IH0KfCAjZGVm aW5lIFBUWV9PUEVOIGRvIHsgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fQ0xPRVhF QyB8IE9fTk9DVFRZKTsgaWYgKGZkIDwgMCAmJiBlcnJubyA9PSBFSU5WQUwpIGZkID0gcG9z aXhfb3BlbnB0IChPX1JEV1IgfCBPX05PQ1RUWSk7IH0gd2hpbGUgKGZhbHNlKQp8ICNkZWZp bmUgUFRZX05BTUVfU1BSSU5URiAvKiovCnwgI2RlZmluZSBTSUdOQUxTX1ZJQV9DSEFSQUNU RVJTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBf V09SS1MgMQp8ICNkZWZpbmUgSEFWRV9fU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VU Sk1QIDEKfCAjZGVmaW5lIEhBVkVfU1RBQ0tfT1ZFUkZMT1dfSEFORExJTkcgMQp8ICNkZWZp bmUgVVNHIC8qKi8KfCAjZGVmaW5lIEdOVV9MSU5VWCAvKiovCnwgI2RlZmluZSBTSVpFT0Zf U1BFRURfVCA0CnwgI2RlZmluZSBVU0FCTEVfRklPTlJFQUQgMQp8ICNkZWZpbmUgVVNBQkxF X1NJR0lPIDEKfCAjZGVmaW5lIENPUFlSSUdIVCAiQ29weXJpZ2h0IChDKSAyMDIzIEZyZWUg U29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiIKfCAjZGVmaW5lIFRFUk1fSEVBREVSICJndGt1 dGlsLmgiCnwgI2RlZmluZSBFTUFDU19DT05GSUdVUkFUSU9OICJ4ODZfNjQtcGMtbGludXgt Z251Igp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHX09QVElPTlMgIiIKfCAjZGVmaW5lIEhBVkVf WF9XSU5ET1dTIDEKfCAjZGVmaW5lIEhBVkVfWDExIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNU X0FUVFJJQlVURV9BTElHTkVEIDEKfCAjZGVmaW5lIEhBVkVfVFlQRU9GIDEKfCAjZGVmaW5l IEhBVkVfU1RBVEVNRU5UX0VYUFJFU1NJT05TIDEKfCAjZGVmaW5lIE1BTExPQ18wX0lTX05P Tk5VTEwgMQp8ICNkZWZpbmUgSEFWRV9TWVNfQUNMX0ggMQp8ICNkZWZpbmUgSEFWRV9BQ0xf R0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVf QUNMX1NFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX1NFVF9GRCAxCnwgI2RlZmluZSBI QVZFX0FDTF9GUkVFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZST01fTU9ERSAxCnwgI2RlZmlu ZSBIQVZFX0FDTF9GUk9NX1RFWFQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfREVMRVRFX0RFRl9G SUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VYVEVOREVEX0ZJTEUgMQp8ICNkZWZpbmUgSEFW RV9BQ0xfTElCQUNMX0ggMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRU5UUklFUyAxCnwgI2RlZmlu ZSBIQVZFX0FDTF9GSVJTVF9FTlRSWSAxCnwgI2RlZmluZSBVU0VfQUNMIDEKfCAjZGVmaW5l IEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgTFNU QVRfRk9MTE9XU19TTEFTSEVEX1NZTUxJTksgMQp8ICNkZWZpbmUgRlVOQ19SRUFMUEFUSF9X T1JLUyAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0dFVENX RCAxCnwgI2RlZmluZSByZXN0cmljdCBfX3Jlc3RyaWN0X18KfCAjZGVmaW5lIEhBVkVfRU5W SVJPTl9ERUNMIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJNT0RFIDAKfCAjZGVmaW5lIEhB VkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfTE9OR19PTkxZIDEKfCAjZGVm aW5lIEhBVkVfTE9OR19MT05HX0lOVCAxCnwgI2RlZmluZSBIQVZFX1VOU0lHTkVEX0xPTkdf TE9OR19JTlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX01FTU1FTSAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfTUVNUkNIUiAxCnwgI2RlZmluZSBIQVZFX01JTk1BWF9JTl9TWVNfUEFSQU1fSCAx CnwgI2RlZmluZSBUSU1FX1RfSVNfU0lHTkVEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTEFS TSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9UTV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVf VE1fWk9ORSAxCnwgI2RlZmluZSBIQVZFX1RNX0dNVE9GRiAxCnwgI2RlZmluZSBIQVZFX1NJ R1NFVF9UIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xf RkNMT1NFQUxMIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRXIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9QVVRXIDEKfCAjZGVmaW5lIF9fVVNFX01JTkdXX0FOU0lfU1RESU8gMQp8ICNkZWZp bmUgSEFWRV9ERUNMX0VDVlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZDVlQgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX0dDVlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUk5MRU4gMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBfVVNFX1NURF9TVEFUIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9FWEVDVlBFIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9DTEVB UkVSUl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkVPRl9VTkxPQ0tFRCAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfRkVSUk9SX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9GRkxVU0hfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZHRVRTX1VOTE9DS0VE IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GUFVUQ19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfRlBVVFNfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZSRUFEX1VOTE9D S0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GV1JJVEVfVU5MT0NLRUQgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX0dFVENfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVENIQVJf VU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BVVENfVU5MT0NLRUQgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX1BVVENIQVJfVU5MT0NLRUQgMQp8ICNkZWZpbmUgR0VUR1JPVVBTX1Qg Z2lkX3QKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhB VkVfTUFMTE9DX1BPU0lYIDEKfCAjZGVmaW5lIFBST01PVEVEX01PREVfVCBtb2RlX3QKfCAj ZGVmaW5lIEhBVkVfV09SS0lOR19VVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8 ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fRVhQRUNUIDEKfCAjZGVmaW5lIEhBVkVfQllURVNX QVBfSCAxCnwgI2RlZmluZSBHTlVMSUJfQ0FOT05JQ0FMSVpFX0xHUEwgMQp8ICNkZWZpbmUg SEFWRV9SRUFETElOS0FUIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tfR0VUUkVTIDEKfCAjZGVm aW5lIEhBVkVfQ0xPQ0tfR0VUVElNRSAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX1NFVFRJTUUg MQp8ICNkZWZpbmUgR05VTElCX0NMT1NFX1NUUkVBTSAxCnwgI2RlZmluZSBIQVZFX0NPUFlf RklMRV9SQU5HRSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9ESVJFTlRfRF9UWVBFIDEKfCAj ZGVmaW5lIEhBVkVfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEdOVUxJQl9GQUNDRVNTQVQgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBHTlVMSUJfRkRPUEVO RElSIDEKfCAjZGVmaW5lIEdFVFhBVFRSX1dJVEhfUE9TSVhfQUNMUyAxCnwgI2RlZmluZSBG TEVYSUJMRV9BUlJBWV9NRU1CRVIgLyoqLwp8ICNkZWZpbmUgSEFWRV9ERUNMX19fRlBFTkRJ TkcgMQp8ICNkZWZpbmUgSEFWRV9GUkVFX1BPU0lYIDEKfCAjZGVmaW5lIEhBVkVfU1lTX01P VU5UX0ggMQp8ICNkZWZpbmUgU1RBVF9TVEFUVkZTIDEKfCAjZGVmaW5lIFNUQVRfU1RBVEZT Ml9GUlNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVEZTX0ggMQp8ICNkZWZpbmUgSEFW RV9GVVRJTUVOUyAxCnwgI2RlZmluZSBIQVZFX0dFVExPQURBVkcgMQp8ICNkZWZpbmUgSEFW RV9HRVRSQU5ET00gMQp8ICNkZWZpbmUgSEFWRV9USU1FU1BFQ19HRVQgMQp8ICNkZWZpbmUg R0VUVElNRU9GREFZX1RJTUVaT05FIHZvaWQKfCAjZGVmaW5lIEhBVkVfX19JTkxJTkUgMQp8 ICNkZWZpbmUgSEFWRV9HTVBfSCAxCnwgI2RlZmluZSBIQVZFX01FTU1FTSAxCnwgI2RlZmlu ZSBIQVZFX01FTVBDUFkgMQp8ICNkZWZpbmUgSEFWRV9NRU1SQ0hSIDEKfCAjZGVmaW5lIEhB VkVfTUtPU1RFTVAgMQp8ICNkZWZpbmUgR05VTElCX01LT1NURU1QIDEKfCAjZGVmaW5lIE5F RURfTUtUSU1FX1dPUktJTkcgMQp8ICNkZWZpbmUgSEFWRV9CVUdfQklHX05BTk9TTEVFUCAx CnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfU0NIRURfR0VU QUZGSU5JVFkgMQp8ICNkZWZpbmUgSEFWRV9TQ0hFRF9HRVRBRkZJTklUWV9MSUtFX0dMSUJD IDEKfCAjZGVmaW5lIG15X3N0cmZ0aW1lIG5zdHJmdGltZQp8ICNkZWZpbmUgSEFWRV9QSVBF MiAxCnwgI2RlZmluZSBVU0VfWEFUVFIgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEK fCAjZGVmaW5lIEhBVkVfU0lHREVTQ1JfTlAgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RB VF9TVF9BVElNX1RWX05TRUMgMQp8ICNkZWZpbmUgVFlQRU9GX1NUUlVDVF9TVEFUX1NUX0FU SU1fSVNfU1RSVUNUX1RJTUVTUEVDIDEKfCAjZGVmaW5lIEdOVUxJQl9GU0NBTkYgMQp8ICNk ZWZpbmUgR05VTElCX1NDQU5GIDEKfCAjZGVmaW5lIEhBVkVfU1RQQ1BZIDEKfCAjZGVmaW5l IEdOVUxJQl9URU1QTkFNRSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfTE9DQUxUSU1FX1IgMQp8 IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8dGltZS5oPgp8IAp8IGludAp8 IG1haW4gKHZvaWQpCnwgewp8IGlmIChzaXplb2YgKHRpbWV6b25lX3QpKQp8IAkgcmV0dXJu IDA7CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZTo0MjI4NjogcmVzdWx0OiBu bwpjb25maWd1cmU6NDIzMjk6IGNoZWNraW5nIGZvciB0aW1lZ20KY29uZmlndXJlOjQyMzY2 OiBjaGVja2luZyBmb3IgdGltZWdtCmNvbmZpZ3VyZTo0MjM2NjogZ2NjIC1vIGNvbmZ0ZXN0 IC1nMyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1IApjb25maWd1cmU6NDIzNjY6ICQ/ID0g MApjb25maWd1cmU6NDIzNjY6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo0MjM4MTogcmVzdWx0 OiB5ZXMKY29uZmlndXJlOjQyNDQ0OiBjaGVja2luZyB3aGV0aGVyIHRpbWVyX3NldHRpbWUg aXMgZGVjbGFyZWQKY29uZmlndXJlOjQyNDQ0OiBnY2MgLWMgLWczIC1PMiAgICAgY29uZnRl c3QuYyA+JjUKY29uZmlndXJlOjQyNDQ0OiAkPyA9IDAKY29uZmlndXJlOjQyNDQ0OiByZXN1 bHQ6IHllcwpjb25maWd1cmU6NDI0NTc6IGNoZWNraW5nIGZvciBsaWJyYXJ5IGNvbnRhaW5p bmcgdGltZXJfc2V0dGltZQpjb25maWd1cmU6NDI0ODc6IGdjYyAtbyBjb25mdGVzdCAtZzMg LU8yICAgICAgY29uZnRlc3QuYyAgID4mNSAKY29uZmlndXJlOjQyNDg3OiAkPyA9IDAKY29u ZmlndXJlOjQyNTA3OiByZXN1bHQ6IG5vbmUgcmVxdWlyZWQKY29uZmlndXJlOjQyNTE4OiBj aGVja2luZyBmb3IgdGltZXJfc2V0dGltZQpjb25maWd1cmU6NDI1MTg6IGdjYyAtbyBjb25m dGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAgID4mNSAKY29uZmlndXJlOjQyNTE4OiAk PyA9IDAKY29uZmlndXJlOjQyNTE4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NDI1Njc6IGNo ZWNraW5nIGZvciB1dGltZW5zYXQKY29uZmlndXJlOjQyNjA0OiBjaGVja2luZyBmb3IgdXRp bWVuc2F0CmNvbmZpZ3VyZTo0MjYwNDogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBj b25mdGVzdC5jICAgPiY1IApjb25maWd1cmU6NDI2MDQ6ICQ/ID0gMApjb25maWd1cmU6NDI2 MDQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo0MjYxOTogcmVzdWx0OiB5ZXMKY29uZmlndXJl OjQyNjM5OiBjaGVja2luZyB3aGV0aGVyIHV0aW1lbnNhdCB3b3Jrcwpjb25maWd1cmU6NDI3 MjI6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAgID4mNSAKY29u ZmlndXJlOjQyNzIyOiAkPyA9IDAKY29uZmlndXJlOjQyNzIyOiAuL2NvbmZ0ZXN0CmNvbmZp Z3VyZTo0MjcyMjogJD8gPSAwCmNvbmZpZ3VyZTo0MjczODogcmVzdWx0OiB5ZXMKY29uZmln dXJlOjQyNzc5OiBjaGVja2luZyBmb3IgdmFyaWFibGUtbGVuZ3RoIGFycmF5cwpjb25maWd1 cmU6NDI4Mzc6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo0 MjgzNzogJD8gPSAwCmNvbmZpZ3VyZTo0Mjg0ODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjQz MzkwOiBjaGVja2luZyB3aGV0aGVyIGdldGR0YWJsZXNpemUgd29ya3MKY29uZmlndXJlOjQz NDMwOiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCmNv bmZpZ3VyZTo0MzQzMDogJD8gPSAwCmNvbmZpZ3VyZTo0MzQzMDogLi9jb25mdGVzdApjb25m aWd1cmU6NDM0MzA6ICQ/ID0gMApjb25maWd1cmU6NDM0NDQ6IHJlc3VsdDogeWVzCmNvbmZp Z3VyZTo0Mzk3OTogY2hlY2tpbmcgZm9yIF9fbWt0aW1lX2ludGVybmFsCmNvbmZpZ3VyZTo0 Mzk3OTogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1IAov dXNyL2Jpbi9sZDogL3RtcC9jY0dId29WQy5vOiBpbiBmdW5jdGlvbiBgbWFpbic6Ci9hcHAv ZW1hY3MvY29uZnRlc3QuYzo0NTA6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYF9fbWt0aW1l X2ludGVybmFsJwpjb2xsZWN0MjogZXJyb3I6IGxkIHJldHVybmVkIDEgZXhpdCBzdGF0dXMK Y29uZmlndXJlOjQzOTc5OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6 CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3Mi CnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9W RVJTSU9OICIzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAz MC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251 Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJodHRwczovL3d3dy5nbnUub3JnL3NvZnR3 YXJlL2VtYWNzLyIKfCAjZGVmaW5lIEhBVkVfUERVTVBFUiAxCnwgI2RlZmluZSBIQVZFX1NU RElPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklO R19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElO VF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NU QVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfVU5J U1REX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhf RlNfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZ U0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1BUWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JF U09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhB VkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1QX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5J VElaRVJfTFNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9BU0FO X0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0NPTU1PTl9JTlRFUkZB Q0VfREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfVU5fSCAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhB VkVfRVhFQ0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1NURElPX0VYVF9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1ZGU19IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfQ0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZp bmUgSEFWRV9JRUVFNzU0X0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NUREJPT0xfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19SQU5ET01fSCAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNk ZWZpbmUgX0FMTF9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2Rl ZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBfSFBVWF9BTFRfWE9QRU5fU09DS0VUX0FQ SSAxCnwgI2RlZmluZSBfTkVUQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfT1BFTkJTRF9TT1VS Q0UgMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9f U1REQ19XQU5UX0lFQ182MDU1OV9BVFRSSUJTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19X QU5UX0lFQ182MDU1OV9CRlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYw NTU5X0RGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRVhUX18g MQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0ZVTkNTX0VYVF9fIDEKfCAjZGVm aW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9UWVBFU19FWFRfXyAxCnwgI2RlZmluZSBfX1NU RENfV0FOVF9MSUJfRVhUMl9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX01BVEhfU1BFQ19G VU5DU19fIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVmaW5lIF9fRVhURU5T SU9OU19fIDEKfCAjZGVmaW5lIEdDQ19MSU5UIDEKfCAjZGVmaW5lIFNZU1RFTV9UWVBFICJn bnUvbGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAxCnwgI2RlZmluZSBI QVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwgI2RlZmluZSBIQVZFX1BFUlNP TkFMSVRZX0FERFJfTk9fUkFORE9NSVpFIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5G TyAxCnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUgSEFWRV9URVJN X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUX0lG X0ggMQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1Rf SUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9IV0FE RFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX05FVE1BU0sgMQp8ICNkZWZp bmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAxCnwgI2RlZmluZSBIQVZFX1NU UlVDVF9JRlJFUV9JRlJfQUREUiAxCnwgI2RlZmluZSBIQVZFX1NCUksgMQp8ICNkZWZpbmUg SEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFW RV9WRk9SSyAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0NBTk9O SUNBTElaRV9GSUxFX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9SRUFMUEFUSCAxCnwgI2RlZmlu ZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EQVQgMQp8ICNkZWZpbmUgSEFW RV9MQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX0ZET1BF TkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAx CnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1Qg MQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9SRUFE TElOSyAxCnwgI2RlZmluZSBIQVZFX0lTQkxBTksgMQp8ICNkZWZpbmUgSEFWRV9JU1dDVFlQ RSAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksg MQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJM RVNJWkUgMQp8ICNkZWZpbmUgU1lTVEVNX01BTExPQyAxCnwgI2RlZmluZSBIQVZFX01NQVAg MQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEIDEKfCAjZGVmaW5lIFRIUkVBRFNfRU5BQkxFRCAx CnwgI2RlZmluZSBIQVZFX1hLQiAxCnwgI2RlZmluZSBIQVZFX1hLQlJFRlJFU0hLRVlCT0FS RE1BUFBJTkcgMQp8ICNkZWZpbmUgSEFWRV9YS0JGUkVFTkFNRVMgMQp8ICNkZWZpbmUgSEFW RV9YUk1TRVREQVRBQkFTRSAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNPVVJDRVNUUklO RyAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJPRlNDUkVFTiAxCnwgI2RlZmluZSBI QVZFX1hESVNQTEFZQ0VMTFMgMQp8ICNkZWZpbmUgSEFWRV9YREVTVFJPWVNVQldJTkRPV1Mg MQp8ICNkZWZpbmUgSEFWRV9YMTFSNiAxCnwgI2RlZmluZSBIQVZFX1hfSTE4TiAxCnwgI2Rl ZmluZSBIQVZFX1hJQ0NBTExCQUNLX0NBTExCQUNLIDEKfCAjZGVmaW5lIEhBVkVfWDExUjZf WElNIDEKfCAjZGVmaW5lIEhBVkVfUlNWRyAxCnwgI2RlZmluZSBIQVZFX1dFQlAgMQp8ICNk ZWZpbmUgSEFWRV9TUUxJVEUzIDEKfCAjZGVmaW5lIEhBVkVfU1FMSVRFM19MT0FEX0VYVEVO U0lPTiAxCnwgI2RlZmluZSBIQVZFX0dFVEFERFJJTkZPX0EgMQp8ICNkZWZpbmUgSEFWRV9H VEszIDEKfCAjZGVmaW5lIEdES19ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAj ZGVmaW5lIEdMSUJfRElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAxCnwgI2RlZmluZSBV U0VfR1RLIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX1RSSU0gMQp8ICNkZWZpbmUgSEFWRV9E QlVTIDEKfCAjZGVmaW5lIEhBVkVfREJVU19XQVRDSF9HRVRfVU5JWF9GRCAxCnwgI2RlZmlu ZSBIQVZFX0RCVVNfVFlQRV9JU19WQUxJRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURB VEVfQlVTX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX1BBVEggMQp8ICNk ZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0lOVEVSRkFDRSAxCnwgI2RlZmluZSBIQVZFX0RC VVNfVkFMSURBVEVfTUVNQkVSIDEKfCAjZGVmaW5lIEhBVkVfR1NFVFRJTkdTIDEKfCAjZGVm aW5lIEhBVkVfTElCU0VMSU5VWCAxCnwgI2RlZmluZSBIQVZFX0dOVVRMUyAxCnwgI2RlZmlu ZSBIQVZFX0xJQlNZU1RFTUQgMQp8ICNkZWZpbmUgSEFWRV9KU09OIDEKfCAjZGVmaW5lIEhB VkVfSU5PVElGWSAxCnwgI2RlZmluZSBVU0VfRklMRV9OT1RJRlkgMQp8ICNkZWZpbmUgVVNF X1RPT0xLSVRfU0NST0xMX0JBUlMgMQp8ICNkZWZpbmUgSEFWRV9YSU0gMQp8ICNkZWZpbmUg VVNFX1hJTSAxCnwgI2RlZmluZSBIQVZFX1hSRU5ERVIgMQp8ICNkZWZpbmUgVVNFX0NBSVJP X1hDQiAxCnwgI2RlZmluZSBVU0VfQ0FJUk8gMQp8ICNkZWZpbmUgSEFWRV9GUkVFVFlQRSAx CnwgI2RlZmluZSBIQVZFX0ZUX0ZBQ0VfR0VUQ0hBUlZBUklBTlRJTkRFWCAxCnwgI2RlZmlu ZSBIQVZFX0xJQk9URiAxCnwgI2RlZmluZSBIQVZFX09URl9HRVRfVkFSSUFUSU9OX0dMWVBI UyAxCnwgI2RlZmluZSBIQVZFX00xN05fRkxUIDEKfCAjZGVmaW5lIEhBVkVfSEFSRkJVWlog MQp8ICNkZWZpbmUgVVNFX1hDQiAxCnwgI2RlZmluZSBIQVZFX1hQTSAxCnwgI2RlZmluZSBI QVZFX0pQRUcgMQp8ICNkZWZpbmUgSEFWRV9MQ01TMiAxCnwgI2RlZmluZSBIQVZFX1pMSUIg MQp8ICNkZWZpbmUgRFlOQU1JQ19MSUJfU1VGRklYICIuc28iCnwgI2RlZmluZSBEWU5BTUlD X0xJQl9TRUNPTkRBUllfU1VGRklYICIiCnwgI2RlZmluZSBIQVZFX0RMQUREUiAxCnwgI2Rl ZmluZSBIQVZFX01PRFVMRVMgMQp8ICNkZWZpbmUgTU9EVUxFU19TVUZGSVggIi5zbyIKfCAj ZGVmaW5lIE5BVElWRV9FTElTUF9TVUZGSVggIi5lbG4iCnwgI2RlZmluZSBIQVZFX1BORyAx CnwgI2RlZmluZSBIQVZFX1RJRkYgMQp8ICNkZWZpbmUgSEFWRV9HSUYgMQp8ICNkZWZpbmUg SEFWRV9HUE0gMQp8ICNkZWZpbmUgSEFWRV9YX1NNIDEKfCAjZGVmaW5lIEhBVkVfWFJBTkRS IDEKfCAjZGVmaW5lIEhBVkVfWElORVJBTUEgMQp8ICNkZWZpbmUgSEFWRV9YRklYRVMgMQp8 ICNkZWZpbmUgSEFWRV9YSU5QVVQyIDEKfCAjZGVmaW5lIEhBVkVfWElTQ1JPTExDTEFTU0lO Rk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hJVE9VQ0hDTEFTU0lORk9fVFlQRSAxCnwgI2Rl ZmluZSBIQVZFX1hJQkFSUklFUlJFTEVBU0VQT0lOVEVSSU5GT19ERVZJQ0VJRCAxCnwgI2Rl ZmluZSBIQVZFX1hJR0VTVFVSRUNMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWFNZ TkMgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQ1RSSUdHRVJGRU5DRSAxCnwgI2RlZmluZSBIQVZF X1hEQkUgMQp8ICNkZWZpbmUgSEFWRV9YQ0JfU0hBUEUgMQp8ICNkZWZpbmUgSEFWRV9YU0hB UEUgMQp8ICNkZWZpbmUgSEFWRV9YQ09NUE9TSVRFIDEKfCAjZGVmaW5lIEhBVkVfTElCWE1M MiAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX1NFQ0NPTVBfSCAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NP TVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GSUxURVJfSCAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgU0la RU9GX0xPTkcgOAp8ICNkZWZpbmUgSEFWRV9BQ0NFUFQ0IDEKfCAjZGVmaW5lIEhBVkVfRkNI RElSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRS VVNBR0UgMQp8ICNkZWZpbmUgSEFWRV9HRVRfQ1VSUkVOVF9ESVJfTkFNRSAxCnwgI2RlZmlu ZSBIQVZFX0xSQU5ENDggMQp8ICNkZWZpbmUgSEFWRV9SQU5ET00gMQp8ICNkZWZpbmUgSEFW RV9SSU5UIDEKfCAjZGVmaW5lIEhBVkVfVFJVTkMgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1Qg MQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FM RSAxCnwgI2RlZmluZSBIQVZFX05FV0xPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJMSU1J VCAxCnwgI2RlZmluZSBIQVZFX1NFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dO IDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RS U0lHTkFMIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfU0VO RFRPIDEKfCAjZGVmaW5lIEhBVkVfUkVDVkZST00gMQp8ICNkZWZpbmUgSEFWRV9HRVRTT0NL TkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVElGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9GUkVF SUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0dBSV9TVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZF X1NZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0VORFBX RU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRHUkVO VCAxCnwgI2RlZmluZSBIQVZFX1JFTkFNRUFUMiAxCnwgI2RlZmluZSBIQVZFX0NGTUFLRVJB VyAxCnwgI2RlZmluZSBIQVZFX0NGU0VUU1BFRUQgMQp8ICNkZWZpbmUgSEFWRV9fX0VYRUNV VEFCTEVfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9MT0cyIDEKfCAjZGVmaW5lIEhBVkVfUFRI UkVBRF9TRVROQU1FX05QIDEKfCAjZGVmaW5lIEhBVkVfQUxJR05FRF9BTExPQyAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfQUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX01B RFZJU0UgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fRlJBTUVfQUREUkVTUyAxCnwgI2Rl ZmluZSBIQVZFX19fQlVJTFRJTl9VTldJTkRfSU5JVCAxCnwgI2RlZmluZSBIQVZFX0ZTRUVL TyAxCnwgI2RlZmluZSBIQVZFX0dSQU5UUFQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQVCAxCnwg I2RlZmluZSBIQVZFX1BPU0lYX09QRU5QVCAxCnwgI2RlZmluZSBURVJNSU5GTyAxCnwgI2Rl ZmluZSBURVJNSU5GT19ERUZJTkVTX0JDIDEKfCAjZGVmaW5lIEhBVkVfVElNRVJGRCAxCnwg I2RlZmluZSBIQVZFX1ZBTEdSSU5EX1ZBTEdSSU5EX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJV Q1RfVU5JUEFJUl9VTklDT0RFIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwg I2RlZmluZSBIQVZFX1dPUktJTkdfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1NOUFJJTlRGIDEK fCAjZGVmaW5lIEhBVkVfU1BBV05fSCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOIDEK fCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV05fRklMRV9BQ1RJT05TX0FERENIRElSX05QIDEK fCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV05BVFRSX1NFVEZMQUdTIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9QT1NJWF9TUEFXTl9TRVRTSUQgMQp8ICNkZWZpbmUgSEFWRV9HTElCIDEKfCAj ZGVmaW5lIEhBVkVfTEFOR0lORk9fQ09ERVNFVCAxCnwgI2RlZmluZSBIQVZFX0xBTkdJTkZP X19OTF9QQVBFUl9XSURUSCAxCnwgI2RlZmluZSBIQVZFX01CU1RBVEVfVCAxCnwgI2RlZmlu ZSBBTVBFUlNBTkRfRlVMTF9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUFRZUyAxCnwgI2RlZmlu ZSBIQVZFX1NPQ0tFVFMgMQp8ICNkZWZpbmUgTlVMTF9ERVZJQ0UgIi9kZXYvbnVsbCIKfCAj ZGVmaW5lIFNFUENIQVIgJzonCnwgI2RlZmluZSBzdWJwcm9jZXNzZXMgMQp8ICNkZWZpbmUg VVNFUl9GVUxMX05BTUUgcHctPnB3X2dlY29zCnwgI2RlZmluZSBESVJFQ1RPUllfU0VQICcv Jwp8ICNkZWZpbmUgSVNfREVWSUNFX1NFUChfY18pIDAKfCAjZGVmaW5lIElTX0RJUkVDVE9S WV9TRVAoX2NfKSAoKF9jXykgPT0gRElSRUNUT1JZX1NFUCkKfCAjZGVmaW5lIElTX0FOWV9T RVAoX2NfKSAoSVNfRElSRUNUT1JZX1NFUCAoX2NfKSkKfCAjZGVmaW5lIEhBVkVfUFJPQ0ZT IDEKfCAjZGVmaW5lIERFRkFVTFRfU09VTkRfREVWSUNFICIvZGV2L2RzcCIKfCAjZGVmaW5l IElOVEVSUlVQVF9JTlBVVCAxCnwgI2RlZmluZSBOQVJST1dQUk9UTyAxCnwgI2RlZmluZSBV TklYOThfUFRZUyAxCnwgI2RlZmluZSBQVFlfSVRFUkFUSU9OIGludCBpOyBmb3IgKGkgPSAw OyBpIDwgMTsgaSsrKQp8ICNkZWZpbmUgUFRZX1RUWV9OQU1FX1NQUklOVEYgeyBjaGFyICpw dHluYW1lID0gMDsgc2lnc2V0X3QgYmxvY2tlZDsgc2lnZW1wdHlzZXQgKCZibG9ja2VkKTsg c2lnYWRkc2V0ICgmYmxvY2tlZCwgU0lHQ0hMRCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX0JM T0NLLCAmYmxvY2tlZCwgMCk7IGlmIChncmFudHB0IChmZCkgIT0gLTEgJiYgdW5sb2NrcHQg KGZkKSAhPSAtMSkgcHR5bmFtZSA9IHB0c25hbWUoZmQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJ R19VTkJMT0NLLCAmYmxvY2tlZCwgMCk7IGlmICghcHR5bmFtZSkgeyBlbWFjc19jbG9zZSAo ZmQpOyByZXR1cm4gLTE7IH0gc25wcmludGYgKHB0eV9uYW1lLCBQVFlfTkFNRV9TSVpFLCAi JXMiLCBwdHluYW1lKTsgfQp8ICNkZWZpbmUgUFRZX09QRU4gZG8geyBmZCA9IHBvc2l4X29w ZW5wdCAoT19SRFdSIHwgT19DTE9FWEVDIHwgT19OT0NUVFkpOyBpZiAoZmQgPCAwICYmIGVy cm5vID09IEVJTlZBTCkgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fTk9DVFRZKTsg fSB3aGlsZSAoZmFsc2UpCnwgI2RlZmluZSBQVFlfTkFNRV9TUFJJTlRGIC8qKi8KfCAjZGVm aW5lIFNJR05BTFNfVklBX0NIQVJBQ1RFUlMgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktT IDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBIQVZFX19TRVRKTVAg MQp8ICNkZWZpbmUgSEFWRV9TSUdTRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TVEFDS19PVkVS RkxPV19IQU5ETElORyAxCnwgI2RlZmluZSBVU0cgLyoqLwp8ICNkZWZpbmUgR05VX0xJTlVY IC8qKi8KfCAjZGVmaW5lIFNJWkVPRl9TUEVFRF9UIDQKfCAjZGVmaW5lIFVTQUJMRV9GSU9O UkVBRCAxCnwgI2RlZmluZSBVU0FCTEVfU0lHSU8gMQp8ICNkZWZpbmUgQ09QWVJJR0hUICJD b3B5cmlnaHQgKEMpIDIwMjMgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuIgp8ICNk ZWZpbmUgVEVSTV9IRUFERVIgImd0a3V0aWwuaCIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR1VS QVRJT04gIng4Nl82NC1wYy1saW51eC1nbnUiCnwgI2RlZmluZSBFTUFDU19DT05GSUdfT1BU SU9OUyAiIgp8ICNkZWZpbmUgSEFWRV9YX1dJTkRPV1MgMQp8ICNkZWZpbmUgSEFWRV9YMTEg MQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfQVRUUklCVVRFX0FMSUdORUQgMQp8ICNkZWZpbmUg SEFWRV9UWVBFT0YgMQp8ICNkZWZpbmUgSEFWRV9TVEFURU1FTlRfRVhQUkVTU0lPTlMgMQp8 ICNkZWZpbmUgTUFMTE9DXzBfSVNfTk9OTlVMTCAxCnwgI2RlZmluZSBIQVZFX1NZU19BQ0xf SCAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9H RVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9B Q0xfU0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZSRUUgMQp8ICNkZWZpbmUgSEFWRV9B Q0xfRlJPTV9NT0RFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZST01fVEVYVCAxCnwgI2RlZmlu ZSBIQVZFX0FDTF9ERUxFVEVfREVGX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRVhURU5E RURfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9MSUJBQ0xfSCAxCnwgI2RlZmluZSBIQVZF X0FDTF9FTlRSSUVTIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZJUlNUX0VOVFJZIDEKfCAjZGVm aW5lIFVTRV9BQ0wgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAxCnwgI2RlZmluZSBIQVZF X0FMTE9DQSAxCnwgI2RlZmluZSBMU1RBVF9GT0xMT1dTX1NMQVNIRURfU1lNTElOSyAxCnwg I2RlZmluZSBGVU5DX1JFQUxQQVRIX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfRkFDQ0VTU0FU IDEKfCAjZGVmaW5lIEhBVkVfR0VUQ1dEIDEKfCAjZGVmaW5lIHJlc3RyaWN0IF9fcmVzdHJp Y3RfXwp8ICNkZWZpbmUgSEFWRV9FTlZJUk9OX0RFQ0wgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X1NUUk1PREUgMAp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX0dF VE9QVF9MT05HX09OTFkgMQp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkdfSU5UIDEKfCAjZGVm aW5lIEhBVkVfVU5TSUdORURfTE9OR19MT05HX0lOVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xf TUVNTUVNIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9NRU1SQ0hSIDEKfCAjZGVmaW5lIEhBVkVf TUlOTUFYX0lOX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIFRJTUVfVF9JU19TSUdORUQgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX0FMQVJNIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1RNX1RN X1pPTkUgMQp8ICNkZWZpbmUgSEFWRV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fR01U T0ZGIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUX1QgMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9U IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GQ0xPU0VBTEwgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X0dFVFcgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BVVFcgMQp8ICNkZWZpbmUgX19VU0VfTUlO R1dfQU5TSV9TVERJTyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRUNWVCAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfRkNWVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0NWVCAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfU1RSTkxFTiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSVE9JTUFYIDEKfCAj ZGVmaW5lIF9VU0VfU1REX1NUQVQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VYRUNWUEUgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX0NMRUFSRVJSX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9GRU9GX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRVJST1JfVU5MT0NL RUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZGTFVTSF9VTkxPQ0tFRCAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfRkdFVFNfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZQVVRDX1VO TE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GUFVUU19VTkxPQ0tFRCAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfRlJFQURfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZXUklU RV9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VUQ19VTkxPQ0tFRCAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfR0VUQ0hBUl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xf UFVUQ19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUFVUQ0hBUl9VTkxPQ0tFRCAx CnwgI2RlZmluZSBHRVRHUk9VUFNfVCBnaWRfdAp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVERU QUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfUE9TSVggMQp8ICNkZWZpbmUgUFJP TU9URURfTU9ERV9UIG1vZGVfdAp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1VUSU1FUyAxCnwg I2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9FWFBFQ1Qg MQp8ICNkZWZpbmUgSEFWRV9CWVRFU1dBUF9IIDEKfCAjZGVmaW5lIEdOVUxJQl9DQU5PTklD QUxJWkVfTEdQTCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LQVQgMQp8ICNkZWZpbmUgSEFW RV9DTE9DS19HRVRSRVMgMQp8ICNkZWZpbmUgSEFWRV9DTE9DS19HRVRUSU1FIDEKfCAjZGVm aW5lIEhBVkVfQ0xPQ0tfU0VUVElNRSAxCnwgI2RlZmluZSBHTlVMSUJfQ0xPU0VfU1RSRUFN IDEKfCAjZGVmaW5lIEhBVkVfQ09QWV9GSUxFX1JBTkdFIDEKfCAjZGVmaW5lIEhBVkVfU1RS VUNUX0RJUkVOVF9EX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZp bmUgR05VTElCX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkRPUEVORElSIDEK fCAjZGVmaW5lIEdOVUxJQl9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgR0VUWEFUVFJfV0lUSF9Q T1NJWF9BQ0xTIDEKfCAjZGVmaW5lIEZMRVhJQkxFX0FSUkFZX01FTUJFUiAvKiovCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfX19GUEVORElORyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVfUE9TSVgg MQp8ICNkZWZpbmUgSEFWRV9TWVNfTU9VTlRfSCAxCnwgI2RlZmluZSBTVEFUX1NUQVRWRlMg MQp8ICNkZWZpbmUgU1RBVF9TVEFURlMyX0ZSU0laRSAxCnwgI2RlZmluZSBIQVZFX1NZU19T VEFURlNfSCAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRU5TIDEKfCAjZGVmaW5lIEhBVkVfR0VU TE9BREFWRyAxCnwgI2RlZmluZSBIQVZFX0dFVFJBTkRPTSAxCnwgI2RlZmluZSBIQVZFX1RJ TUVTUEVDX0dFVCAxCnwgI2RlZmluZSBHRVRUSU1FT0ZEQVlfVElNRVpPTkUgdm9pZAp8ICNk ZWZpbmUgSEFWRV9fX0lOTElORSAxCnwgI2RlZmluZSBIQVZFX0dNUF9IIDEKfCAjZGVmaW5l IEhBVkVfTUVNTUVNIDEKfCAjZGVmaW5lIEhBVkVfTUVNUENQWSAxCnwgI2RlZmluZSBIQVZF X01FTVJDSFIgMQp8ICNkZWZpbmUgSEFWRV9NS09TVEVNUCAxCnwgI2RlZmluZSBHTlVMSUJf TUtPU1RFTVAgMQp8ICNkZWZpbmUgTkVFRF9NS1RJTUVfV09SS0lORyAxCnwgI2RlZmluZSBI QVZFX0JVR19CSUdfTkFOT1NMRUVQIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8 ICNkZWZpbmUgSEFWRV9TQ0hFRF9HRVRBRkZJTklUWSAxCnwgI2RlZmluZSBIQVZFX1NDSEVE X0dFVEFGRklOSVRZX0xJS0VfR0xJQkMgMQp8ICNkZWZpbmUgbXlfc3RyZnRpbWUgbnN0cmZ0 aW1lCnwgI2RlZmluZSBIQVZFX1BJUEUyIDEKfCAjZGVmaW5lIFVTRV9YQVRUUiAxCnwgI2Rl ZmluZSBIQVZFX1JFQURMSU5LQVQgMQp8ICNkZWZpbmUgSEFWRV9TSUdERVNDUl9OUCAxCnwg I2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX0FUSU1fVFZfTlNFQyAxCnwgI2RlZmluZSBU WVBFT0ZfU1RSVUNUX1NUQVRfU1RfQVRJTV9JU19TVFJVQ1RfVElNRVNQRUMgMQp8ICNkZWZp bmUgR05VTElCX0ZTQ0FORiAxCnwgI2RlZmluZSBHTlVMSUJfU0NBTkYgMQp8ICNkZWZpbmUg SEFWRV9TVFBDUFkgMQp8ICNkZWZpbmUgR05VTElCX1RFTVBOQU1FIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9MT0NBTFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX1RJTUVHTSAxCnwgI2RlZmlu ZSBIQVZFX1RJTUVSX1NFVFRJTUUgMQp8ICNkZWZpbmUgR05VTElCX1NURElPX1NJTkdMRV9U SFJFQUQgMQp8ICNkZWZpbmUgVVNFX1VOTE9DS0VEX0lPIEdOVUxJQl9TVERJT19TSU5HTEVf VEhSRUFECnwgI2RlZmluZSBIQVZFX1VUSU1FTlNBVCAxCnwgI2RlZmluZSBIQVZFX0NfVkFS QVJSQVlTIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgLyogRGVmaW5lIF9fbWt0aW1l X2ludGVybmFsIHRvIGFuIGlubm9jdW91cyB2YXJpYW50LCBpbiBjYXNlIDxsaW1pdHMuaD4g ZGVjbGFyZXMgX19ta3RpbWVfaW50ZXJuYWwuCnwgICAgRm9yIGV4YW1wbGUsIEhQLVVYIDEx aSA8bGltaXRzLmg+IGRlY2xhcmVzIGdldHRpbWVvZmRheS4gICovCnwgI2RlZmluZSBfX21r dGltZV9pbnRlcm5hbCBpbm5vY3VvdXNfX19ta3RpbWVfaW50ZXJuYWwKfCAKfCAvKiBTeXN0 ZW0gaGVhZGVyIHRvIGRlZmluZSBfX3N0dWIgbWFjcm9zIGFuZCBob3BlZnVsbHkgZmV3IHBy b3RvdHlwZXMsCnwgICAgd2hpY2ggY2FuIGNvbmZsaWN0IHdpdGggY2hhciBfX21rdGltZV9p bnRlcm5hbCAoKTsgYmVsb3cuICAqLwp8IAp8ICNpbmNsdWRlIDxsaW1pdHMuaD4KfCAjdW5k ZWYgX19ta3RpbWVfaW50ZXJuYWwKfCAKfCAvKiBPdmVycmlkZSBhbnkgR0NDIGludGVybmFs IHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4KfCAgICBVc2UgY2hhciBiZWNhdXNlIGlu dCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBHQ0MKfCAgICBidWlsdGluIGFu ZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLwp8 ICNpZmRlZiBfX2NwbHVzcGx1cwp8IGV4dGVybiAiQyIKfCAjZW5kaWYKfCBjaGFyIF9fbWt0 aW1lX2ludGVybmFsICgpOwp8IC8qIFRoZSBHTlUgQyBsaWJyYXJ5IGRlZmluZXMgdGhpcyBm b3IgZnVuY3Rpb25zIHdoaWNoIGl0IGltcGxlbWVudHMKfCAgICAgdG8gYWx3YXlzIGZhaWwg d2l0aCBFTk9TWVMuICBTb21lIGZ1bmN0aW9ucyBhcmUgYWN0dWFsbHkgbmFtZWQKfCAgICAg c29tZXRoaW5nIHN0YXJ0aW5nIHdpdGggX18gYW5kIHRoZSBub3JtYWwgbmFtZSBpcyBhbiBh bGlhcy4gICovCnwgI2lmIGRlZmluZWQgX19zdHViX19fbWt0aW1lX2ludGVybmFsIHx8IGRl ZmluZWQgX19zdHViX19fX19ta3RpbWVfaW50ZXJuYWwKfCBjaG9rZSBtZQp8ICNlbmRpZgp8 IAp8IGludAp8IG1haW4gKHZvaWQpCnwgewp8IHJldHVybiBfX21rdGltZV9pbnRlcm5hbCAo KTsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjQzOTc5OiByZXN1bHQ6IG5v CmNvbmZpZ3VyZTo0NTA3MDogY2hlY2tpbmcgZm9yIHRpbWVyX2dldG92ZXJydW4KY29uZmln dXJlOjQ1MDcwOiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICAg PiY1IApjb25maWd1cmU6NDUwNzA6ICQ/ID0gMApjb25maWd1cmU6NDUwNzA6IHJlc3VsdDog eWVzCmNvbmZpZ3VyZTo0NTE1ODogY2hlY2tpbmcgZm9yIGdjYyBvcHRpb24gdG8gZGlzYWJs ZSBwb3NpdGlvbiBpbmRlcGVuZGVudCBleGVjdXRhYmxlcwpjb25maWd1cmU6NDUxOTU6IHJl c3VsdDogbm90IG5lZWRlZApjb25maWd1cmU6NDU3MDc6IGNyZWF0aW5nIC4vY29uZmlnLnN0 YXR1cwoKIyMgLS0tLS0tLS0tLS0tLS0tLSAjIwojIyBDYWNoZSB2YXJpYWJsZXMuICMjCiMj IC0tLS0tLS0tLS0tLS0tLS0gIyMKCmFjX2N2X2J1aWxkPXg4Nl82NC1wYy1saW51eC1nbnUK YWNfY3ZfY19iaWdlbmRpYW49bm8KYWNfY3ZfY19jb21waWxlcl9nbnU9eWVzCmFjX2N2X2Nf ZmxleG1lbWJlcj15ZXMKYWNfY3ZfY19pbmxpbmU9aW5saW5lCmFjX2N2X2NfcmVzdHJpY3Q9 X19yZXN0cmljdF9fCmFjX2N2X2NfdHlwZW9mPXR5cGVvZgphY19jdl9jX3ZhcmFycmF5cz15 ZXMKYWNfY3ZfZW52X0FMU0FfQ0ZMQUdTX3NldD0KYWNfY3ZfZW52X0FMU0FfQ0ZMQUdTX3Zh bHVlPQphY19jdl9lbnZfQUxTQV9MSUJTX3NldD0KYWNfY3ZfZW52X0FMU0FfTElCU192YWx1 ZT0KYWNfY3ZfZW52X0NBSVJPX0NGTEFHU19zZXQ9CmFjX2N2X2Vudl9DQUlST19DRkxBR1Nf dmFsdWU9CmFjX2N2X2Vudl9DQUlST19MSUJTX3NldD0KYWNfY3ZfZW52X0NBSVJPX0xJQlNf dmFsdWU9CmFjX2N2X2Vudl9DQUlST19YQ0JfQ0ZMQUdTX3NldD0KYWNfY3ZfZW52X0NBSVJP X1hDQl9DRkxBR1NfdmFsdWU9CmFjX2N2X2Vudl9DQUlST19YQ0JfTElCU19zZXQ9CmFjX2N2 X2Vudl9DQUlST19YQ0JfTElCU192YWx1ZT0KYWNfY3ZfZW52X0NBSVJPX1hMSUJfQ0ZMQUdT X3NldD0KYWNfY3ZfZW52X0NBSVJPX1hMSUJfQ0ZMQUdTX3ZhbHVlPQphY19jdl9lbnZfQ0FJ Uk9fWExJQl9MSUJTX3NldD0KYWNfY3ZfZW52X0NBSVJPX1hMSUJfTElCU192YWx1ZT0KYWNf Y3ZfZW52X0NDQ19zZXQ9CmFjX2N2X2Vudl9DQ0NfdmFsdWU9CmFjX2N2X2Vudl9DQ19zZXQ9 CmFjX2N2X2Vudl9DQ192YWx1ZT0KYWNfY3ZfZW52X0NGTEFHU19zZXQ9CmFjX2N2X2Vudl9D RkxBR1NfdmFsdWU9CmFjX2N2X2Vudl9DUFBGTEFHU19zZXQ9CmFjX2N2X2Vudl9DUFBGTEFH U192YWx1ZT0KYWNfY3ZfZW52X0NQUF9zZXQ9CmFjX2N2X2Vudl9DUFBfdmFsdWU9CmFjX2N2 X2Vudl9DWFhGTEFHU19zZXQ9CmFjX2N2X2Vudl9DWFhGTEFHU192YWx1ZT0KYWNfY3ZfZW52 X0NYWF9zZXQ9CmFjX2N2X2Vudl9DWFhfdmFsdWU9CmFjX2N2X2Vudl9EQlVTX0NGTEFHU19z ZXQ9CmFjX2N2X2Vudl9EQlVTX0NGTEFHU192YWx1ZT0KYWNfY3ZfZW52X0RCVVNfTElCU19z ZXQ9CmFjX2N2X2Vudl9EQlVTX0xJQlNfdmFsdWU9CmFjX2N2X2Vudl9GT05UQ09ORklHX0NG TEFHU19zZXQ9CmFjX2N2X2Vudl9GT05UQ09ORklHX0NGTEFHU192YWx1ZT0KYWNfY3ZfZW52 X0ZPTlRDT05GSUdfTElCU19zZXQ9CmFjX2N2X2Vudl9GT05UQ09ORklHX0xJQlNfdmFsdWU9 CmFjX2N2X2Vudl9GUkVFVFlQRV9DRkxBR1Nfc2V0PQphY19jdl9lbnZfRlJFRVRZUEVfQ0ZM QUdTX3ZhbHVlPQphY19jdl9lbnZfRlJFRVRZUEVfTElCU19zZXQ9CmFjX2N2X2Vudl9GUkVF VFlQRV9MSUJTX3ZhbHVlPQphY19jdl9lbnZfR0NPTkZfQ0ZMQUdTX3NldD0KYWNfY3ZfZW52 X0dDT05GX0NGTEFHU192YWx1ZT0KYWNfY3ZfZW52X0dDT05GX0xJQlNfc2V0PQphY19jdl9l bnZfR0NPTkZfTElCU192YWx1ZT0KYWNfY3ZfZW52X0dGSUxFTk9USUZZX0NGTEFHU19zZXQ9 CmFjX2N2X2Vudl9HRklMRU5PVElGWV9DRkxBR1NfdmFsdWU9CmFjX2N2X2Vudl9HRklMRU5P VElGWV9MSUJTX3NldD0KYWNfY3ZfZW52X0dGSUxFTk9USUZZX0xJQlNfdmFsdWU9CmFjX2N2 X2Vudl9HT0JKRUNUX0NGTEFHU19zZXQ9CmFjX2N2X2Vudl9HT0JKRUNUX0NGTEFHU192YWx1 ZT0KYWNfY3ZfZW52X0dPQkpFQ1RfTElCU19zZXQ9CmFjX2N2X2Vudl9HT0JKRUNUX0xJQlNf dmFsdWU9CmFjX2N2X2Vudl9HU0VUVElOR1NfQ0ZMQUdTX3NldD0KYWNfY3ZfZW52X0dTRVRU SU5HU19DRkxBR1NfdmFsdWU9CmFjX2N2X2Vudl9HU0VUVElOR1NfTElCU19zZXQ9CmFjX2N2 X2Vudl9HU0VUVElOR1NfTElCU192YWx1ZT0KYWNfY3ZfZW52X0dUS19DRkxBR1Nfc2V0PQph Y19jdl9lbnZfR1RLX0NGTEFHU192YWx1ZT0KYWNfY3ZfZW52X0dUS19MSUJTX3NldD0KYWNf Y3ZfZW52X0dUS19MSUJTX3ZhbHVlPQphY19jdl9lbnZfSEFSRkJVWlpfQ0ZMQUdTX3NldD0K YWNfY3ZfZW52X0hBUkZCVVpaX0NGTEFHU192YWx1ZT0KYWNfY3ZfZW52X0hBUkZCVVpaX0xJ QlNfc2V0PQphY19jdl9lbnZfSEFSRkJVWlpfTElCU192YWx1ZT0KYWNfY3ZfZW52X0lNQUdF TUFHSUNLX0NGTEFHU19zZXQ9CmFjX2N2X2Vudl9JTUFHRU1BR0lDS19DRkxBR1NfdmFsdWU9 CmFjX2N2X2Vudl9JTUFHRU1BR0lDS19MSUJTX3NldD0KYWNfY3ZfZW52X0lNQUdFTUFHSUNL X0xJQlNfdmFsdWU9CmFjX2N2X2Vudl9KU09OX0NGTEFHU19zZXQ9CmFjX2N2X2Vudl9KU09O X0NGTEFHU192YWx1ZT0KYWNfY3ZfZW52X0pTT05fTElCU19zZXQ9CmFjX2N2X2Vudl9KU09O X0xJQlNfdmFsdWU9CmFjX2N2X2Vudl9LUVVFVUVfQ0ZMQUdTX3NldD0KYWNfY3ZfZW52X0tR VUVVRV9DRkxBR1NfdmFsdWU9CmFjX2N2X2Vudl9LUVVFVUVfTElCU19zZXQ9CmFjX2N2X2Vu dl9LUVVFVUVfTElCU192YWx1ZT0KYWNfY3ZfZW52X0xDTVMyX0NGTEFHU19zZXQ9CmFjX2N2 X2Vudl9MQ01TMl9DRkxBR1NfdmFsdWU9CmFjX2N2X2Vudl9MQ01TMl9MSUJTX3NldD0KYWNf Y3ZfZW52X0xDTVMyX0xJQlNfdmFsdWU9CmFjX2N2X2Vudl9MREZMQUdTX3NldD0KYWNfY3Zf ZW52X0xERkxBR1NfdmFsdWU9CmFjX2N2X2Vudl9MSUJHTlVUTFNfQ0ZMQUdTX3NldD0KYWNf Y3ZfZW52X0xJQkdOVVRMU19DRkxBR1NfdmFsdWU9CmFjX2N2X2Vudl9MSUJHTlVUTFNfTElC U19zZXQ9CmFjX2N2X2Vudl9MSUJHTlVUTFNfTElCU192YWx1ZT0KYWNfY3ZfZW52X0xJQk9U Rl9DRkxBR1Nfc2V0PQphY19jdl9lbnZfTElCT1RGX0NGTEFHU192YWx1ZT0KYWNfY3ZfZW52 X0xJQk9URl9MSUJTX3NldD0KYWNfY3ZfZW52X0xJQk9URl9MSUJTX3ZhbHVlPQphY19jdl9l bnZfTElCU0VDQ09NUF9DRkxBR1Nfc2V0PQphY19jdl9lbnZfTElCU0VDQ09NUF9DRkxBR1Nf dmFsdWU9CmFjX2N2X2Vudl9MSUJTRUNDT01QX0xJQlNfc2V0PQphY19jdl9lbnZfTElCU0VD Q09NUF9MSUJTX3ZhbHVlPQphY19jdl9lbnZfTElCU1lTVEVNRF9DRkxBR1Nfc2V0PQphY19j dl9lbnZfTElCU1lTVEVNRF9DRkxBR1NfdmFsdWU9CmFjX2N2X2Vudl9MSUJTWVNURU1EX0xJ QlNfc2V0PQphY19jdl9lbnZfTElCU1lTVEVNRF9MSUJTX3ZhbHVlPQphY19jdl9lbnZfTElC U19zZXQ9CmFjX2N2X2Vudl9MSUJTX3ZhbHVlPQphY19jdl9lbnZfTElCWE1MMl9DRkxBR1Nf c2V0PQphY19jdl9lbnZfTElCWE1MMl9DRkxBR1NfdmFsdWU9CmFjX2N2X2Vudl9MSUJYTUwy X0xJQlNfc2V0PQphY19jdl9lbnZfTElCWE1MMl9MSUJTX3ZhbHVlPQphY19jdl9lbnZfTTE3 Tl9GTFRfQ0ZMQUdTX3NldD0KYWNfY3ZfZW52X00xN05fRkxUX0NGTEFHU192YWx1ZT0KYWNf Y3ZfZW52X00xN05fRkxUX0xJQlNfc2V0PQphY19jdl9lbnZfTTE3Tl9GTFRfTElCU192YWx1 ZT0KYWNfY3ZfZW52X09CSkNGTEFHU19zZXQ9CmFjX2N2X2Vudl9PQkpDRkxBR1NfdmFsdWU9 CmFjX2N2X2Vudl9PQkpDX3NldD0KYWNfY3ZfZW52X09CSkNfdmFsdWU9CmFjX2N2X2Vudl9Q S0dfQ09ORklHX0xJQkRJUl9zZXQ9CmFjX2N2X2Vudl9QS0dfQ09ORklHX0xJQkRJUl92YWx1 ZT0KYWNfY3ZfZW52X1BLR19DT05GSUdfUEFUSF9zZXQ9CmFjX2N2X2Vudl9QS0dfQ09ORklH X1BBVEhfdmFsdWU9CmFjX2N2X2Vudl9QS0dfQ09ORklHX3NldD0KYWNfY3ZfZW52X1BLR19D T05GSUdfdmFsdWU9CmFjX2N2X2Vudl9QTkdfQ0ZMQUdTX3NldD0KYWNfY3ZfZW52X1BOR19D RkxBR1NfdmFsdWU9CmFjX2N2X2Vudl9QTkdfTElCU19zZXQ9CmFjX2N2X2Vudl9QTkdfTElC U192YWx1ZT0KYWNfY3ZfZW52X1JTVkdfQ0ZMQUdTX3NldD0KYWNfY3ZfZW52X1JTVkdfQ0ZM QUdTX3ZhbHVlPQphY19jdl9lbnZfUlNWR19MSUJTX3NldD0KYWNfY3ZfZW52X1JTVkdfTElC U192YWx1ZT0KYWNfY3ZfZW52X1RSRUVfU0lUVEVSX0NGTEFHU19zZXQ9CmFjX2N2X2Vudl9U UkVFX1NJVFRFUl9DRkxBR1NfdmFsdWU9CmFjX2N2X2Vudl9UUkVFX1NJVFRFUl9MSUJTX3Nl dD0KYWNfY3ZfZW52X1RSRUVfU0lUVEVSX0xJQlNfdmFsdWU9CmFjX2N2X2Vudl9XRUJLSVRf Q0ZMQUdTX3NldD0KYWNfY3ZfZW52X1dFQktJVF9DRkxBR1NfdmFsdWU9CmFjX2N2X2Vudl9X RUJLSVRfTElCU19zZXQ9CmFjX2N2X2Vudl9XRUJLSVRfTElCU192YWx1ZT0KYWNfY3ZfZW52 X1dFQlBfQ0ZMQUdTX3NldD0KYWNfY3ZfZW52X1dFQlBfQ0ZMQUdTX3ZhbHVlPQphY19jdl9l bnZfV0VCUF9MSUJTX3NldD0KYWNfY3ZfZW52X1dFQlBfTElCU192YWx1ZT0KYWNfY3ZfZW52 X1hGSVhFU19DRkxBR1Nfc2V0PQphY19jdl9lbnZfWEZJWEVTX0NGTEFHU192YWx1ZT0KYWNf Y3ZfZW52X1hGSVhFU19MSUJTX3NldD0KYWNfY3ZfZW52X1hGSVhFU19MSUJTX3ZhbHVlPQph Y19jdl9lbnZfWEZUX0NGTEFHU19zZXQ9CmFjX2N2X2Vudl9YRlRfQ0ZMQUdTX3ZhbHVlPQph Y19jdl9lbnZfWEZUX0xJQlNfc2V0PQphY19jdl9lbnZfWEZUX0xJQlNfdmFsdWU9CmFjX2N2 X2Vudl9YSU5FUkFNQV9DRkxBR1Nfc2V0PQphY19jdl9lbnZfWElORVJBTUFfQ0ZMQUdTX3Zh bHVlPQphY19jdl9lbnZfWElORVJBTUFfTElCU19zZXQ9CmFjX2N2X2Vudl9YSU5FUkFNQV9M SUJTX3ZhbHVlPQphY19jdl9lbnZfWElOUFVUX0NGTEFHU19zZXQ9CmFjX2N2X2Vudl9YSU5Q VVRfQ0ZMQUdTX3ZhbHVlPQphY19jdl9lbnZfWElOUFVUX0xJQlNfc2V0PQphY19jdl9lbnZf WElOUFVUX0xJQlNfdmFsdWU9CmFjX2N2X2Vudl9YTUtNRl9zZXQ9CmFjX2N2X2Vudl9YTUtN Rl92YWx1ZT0KYWNfY3ZfZW52X1hSQU5EUl9DRkxBR1Nfc2V0PQphY19jdl9lbnZfWFJBTkRS X0NGTEFHU192YWx1ZT0KYWNfY3ZfZW52X1hSQU5EUl9MSUJTX3NldD0KYWNfY3ZfZW52X1hS QU5EUl9MSUJTX3ZhbHVlPQphY19jdl9lbnZfYnVpbGRfYWxpYXNfc2V0PQphY19jdl9lbnZf YnVpbGRfYWxpYXNfdmFsdWU9CmFjX2N2X2Vudl9ob3N0X2FsaWFzX3NldD0KYWNfY3ZfZW52 X2hvc3RfYWxpYXNfdmFsdWU9CmFjX2N2X2Vudl90YXJnZXRfYWxpYXNfc2V0PQphY19jdl9l bnZfdGFyZ2V0X2FsaWFzX3ZhbHVlPQphY19jdl9mdW5jX0ZUX0ZhY2VfR2V0Q2hhclZhcmlh bnRJbmRleD15ZXMKYWNfY3ZfZnVuY19XZWJQR2V0SW5mbz1ubwphY19jdl9mdW5jX1hEZXN0 cm95U3Vid2luZG93cz15ZXMKYWNfY3ZfZnVuY19YRGlzcGxheUNlbGxzPXllcwphY19jdl9m dW5jX1hTY3JlZW5OdW1iZXJPZlNjcmVlbj15ZXMKYWNfY3ZfZnVuY19YU2NyZWVuUmVzb3Vy Y2VTdHJpbmc9eWVzCmFjX2N2X2Z1bmNfWFN5bmNUcmlnZ2VyRmVuY2U9eWVzCmFjX2N2X2Z1 bmNfWGtiRnJlZU5hbWVzPXllcwphY19jdl9mdW5jX1hrYlJlZnJlc2hLZXlib2FyZE1hcHBp bmc9eWVzCmFjX2N2X2Z1bmNfWHJtU2V0RGF0YWJhc2U9eWVzCmFjX2N2X2Z1bmNfX19leGVj dXRhYmxlX3N0YXJ0PXllcwphY19jdl9mdW5jX19fbHNhbl9pZ25vcmVfb2JqZWN0PW5vCmFj X2N2X2Z1bmNfX19ta3RpbWVfaW50ZXJuYWw9bm8KYWNfY3ZfZnVuY19hY2NlcHQ0PXllcwph Y19jdl9mdW5jX2FjbF9jb3B5X2V4dF9uYXRpdmU9bm8KYWNfY3ZfZnVuY19hY2xfY3JlYXRl X2VudHJ5X25wPW5vCmFjX2N2X2Z1bmNfYWNsX2RlbGV0ZV9kZWZfZmlsZT15ZXMKYWNfY3Zf ZnVuY19hY2xfZGVsZXRlX2ZkX25wPW5vCmFjX2N2X2Z1bmNfYWNsX2RlbGV0ZV9maWxlX25w PW5vCmFjX2N2X2Z1bmNfYWNsX2VudHJpZXM9eWVzCmFjX2N2X2Z1bmNfYWNsX2V4dGVuZGVk X2ZpbGU9eWVzCmFjX2N2X2Z1bmNfYWNsX2ZyZWU9eWVzCmFjX2N2X2Z1bmNfYWNsX2ZyZWVf dGV4dD1ubwphY19jdl9mdW5jX2FjbF9mcm9tX21vZGU9eWVzCmFjX2N2X2Z1bmNfYWNsX2Zy b21fdGV4dD15ZXMKYWNfY3ZfZnVuY19hY2xfZ2V0X2ZkPXllcwphY19jdl9mdW5jX2FjbF9n ZXRfZmlsZT15ZXMKYWNfY3ZfZnVuY19hY2xfc2V0X2ZkPXllcwphY19jdl9mdW5jX2FjbF9z ZXRfZmlsZT15ZXMKYWNfY3ZfZnVuY19hY2xfdG9fc2hvcnRfdGV4dD1ubwphY19jdl9mdW5j X2FsaWduZWRfYWxsb2M9eWVzCmFjX2N2X2Z1bmNfYWxsb2NhX3dvcmtzPXllcwphY19jdl9m dW5jX2Nhbm9uaWNhbGl6ZV9maWxlX25hbWU9eWVzCmFjX2N2X2Z1bmNfY2ZtYWtlcmF3PXll cwphY19jdl9mdW5jX2Nmc2V0c3BlZWQ9eWVzCmFjX2N2X2Z1bmNfY2xvY2tfZ2V0cmVzPXll cwphY19jdl9mdW5jX2Nsb2NrX2dldHRpbWU9eWVzCmFjX2N2X2Z1bmNfY2xvY2tfc2V0dGlt ZT15ZXMKYWNfY3ZfZnVuY19kYnVzX3R5cGVfaXNfdmFsaWQ9eWVzCmFjX2N2X2Z1bmNfZGJ1 c192YWxpZGF0ZV9idXNfbmFtZT15ZXMKYWNfY3ZfZnVuY19kYnVzX3ZhbGlkYXRlX2ludGVy ZmFjZT15ZXMKYWNfY3ZfZnVuY19kYnVzX3ZhbGlkYXRlX21lbWJlcj15ZXMKYWNfY3ZfZnVu Y19kYnVzX3ZhbGlkYXRlX3BhdGg9eWVzCmFjX2N2X2Z1bmNfZGJ1c193YXRjaF9nZXRfdW5p eF9mZD15ZXMKYWNfY3ZfZnVuY19kbGFkZHI9eWVzCmFjX2N2X2Z1bmNfZGxmdW5jPW5vCmFj X2N2X2Z1bmNfZW5kZ3JlbnQ9eWVzCmFjX2N2X2Z1bmNfZW5kcHdlbnQ9eWVzCmFjX2N2X2Z1 bmNfZXhwbGljaXRfbWVtc2V0PW5vCmFjX2N2X2Z1bmNfZmFjY2Vzc2F0PXllcwphY19jdl9m dW5jX2ZjaGRpcj15ZXMKYWNfY3ZfZnVuY19mY2htb2Q9eWVzCmFjX2N2X2Z1bmNfZmNobW9k YXQ9eWVzCmFjX2N2X2Z1bmNfZmNudGw9eWVzCmFjX2N2X2Z1bmNfZmRvcGVuZGlyPXllcwph Y19jdl9mdW5jX2Zvcms9eWVzCmFjX2N2X2Z1bmNfZm9ya193b3Jrcz15ZXMKYWNfY3ZfZnVu Y19mcmVlaWZhZGRycz15ZXMKYWNfY3ZfZnVuY19mc3RhdGF0PXllcwphY19jdl9mdW5jX2Zz eW5jPXllcwphY19jdl9mdW5jX2Z1dGltZW5zPXllcwphY19jdl9mdW5jX2dhaV9zdHJlcnJv cj15ZXMKYWNfY3ZfZnVuY19nZXRfY3VycmVudF9kaXJfbmFtZT15ZXMKYWNfY3ZfZnVuY19n ZXRjd2Q9eWVzCmFjX2N2X2Z1bmNfZ2V0ZHRhYmxlc2l6ZT15ZXMKYWNfY3ZfZnVuY19nZXRn cmVudD15ZXMKYWNfY3ZfZnVuY19nZXRob3N0bmFtZT15ZXMKYWNfY3ZfZnVuY19nZXRpZmFk ZHJzPXllcwphY19jdl9mdW5jX2dldGxvYWRhdmc9eWVzCmFjX2N2X2Z1bmNfZ2V0b3B0X2xv bmdfb25seT15ZXMKYWNfY3ZfZnVuY19nZXRwYWdlc2l6ZT15ZXMKYWNfY3ZfZnVuY19nZXRw dD15ZXMKYWNfY3ZfZnVuY19nZXRwd2VudD15ZXMKYWNfY3ZfZnVuY19nZXRyYW5kb209eWVz CmFjX2N2X2Z1bmNfZ2V0cmxpbWl0PXllcwphY19jdl9mdW5jX2dldHJ1c2FnZT15ZXMKYWNf Y3ZfZnVuY19nZXRzb2NrbmFtZT15ZXMKYWNfY3ZfZnVuY19nZXR0aW1lb2ZkYXk9eWVzCmFj X2N2X2Z1bmNfZ3JhbnRwdD15ZXMKYWNfY3ZfZnVuY19pbm90aWZ5X2luaXQxPXllcwphY19j dl9mdW5jX2lzYmxhbms9eWVzCmFjX2N2X2Z1bmNfaXN3Y3R5cGU9eWVzCmFjX2N2X2Z1bmNf bGNobW9kPXllcwphY19jdl9mdW5jX2xvY2FsdGltZV9yPXllcwphY19jdl9mdW5jX2xvZzI9 eWVzCmFjX2N2X2Z1bmNfbHJhbmQ0OD15ZXMKYWNfY3ZfZnVuY19sc3RhdD15ZXMKYWNfY3Zf ZnVuY19tYWxsb2NfMF9ub25udWxsPXllcwphY19jdl9mdW5jX21hbGxvY190cmltPXllcwph Y19jdl9mdW5jX21lbW1lbT15ZXMKYWNfY3ZfZnVuY19tZW1wY3B5PXllcwphY19jdl9mdW5j X21lbXJjaHI9eWVzCmFjX2N2X2Z1bmNfbWVtc2V0X2V4cGxpY2l0PW5vCmFjX2N2X2Z1bmNf bWVtc2V0X3M9bm8KYWNfY3ZfZnVuY19ta29zdGVtcD15ZXMKYWNfY3ZfZnVuY19tbWFwX2Zp eGVkX21hcHBlZD15ZXMKYWNfY3ZfZnVuY19uZXdsb2NhbGU9eWVzCmFjX2N2X2Z1bmNfcGlw ZTI9eWVzCmFjX2N2X2Z1bmNfcG9zaXhfbWFkdmlzZT15ZXMKYWNfY3ZfZnVuY19wb3NpeF9v cGVucHQ9eWVzCmFjX2N2X2Z1bmNfcG9zaXhfc3Bhd249eWVzCmFjX2N2X2Z1bmNfcG9zaXhf c3Bhd25fZmlsZV9hY3Rpb25zX2FkZGNoZGlyPW5vCmFjX2N2X2Z1bmNfcG9zaXhfc3Bhd25f ZmlsZV9hY3Rpb25zX2FkZGNoZGlyX25wPXllcwphY19jdl9mdW5jX3Bvc2l4X3NwYXduYXR0 cl9zZXRmbGFncz15ZXMKYWNfY3ZfZnVuY19wc2VsZWN0PXllcwphY19jdl9mdW5jX3BzdGF0 X2dldGR5bmFtaWM9bm8KYWNfY3ZfZnVuY19wdGhyZWFkX3NldF9uYW1lX25wPW5vCmFjX2N2 X2Z1bmNfcHRocmVhZF9zZXRuYW1lX25wPXllcwphY19jdl9mdW5jX3B0aHJlYWRfc2lnbWFz az15ZXMKYWNfY3ZfZnVuY19yYW5kb209eWVzCmFjX2N2X2Z1bmNfcmVhZGxpbms9eWVzCmFj X2N2X2Z1bmNfcmVhZGxpbmthdD15ZXMKYWNfY3ZfZnVuY19yZWFscGF0aD15ZXMKYWNfY3Zf ZnVuY19yZWN2ZnJvbT15ZXMKYWNfY3ZfZnVuY19yZW5hbWVhdDI9eWVzCmFjX2N2X2Z1bmNf cmludD15ZXMKYWNfY3ZfZnVuY19zYnJrPXllcwphY19jdl9mdW5jX3NjaGVkX2dldGFmZmlu aXR5PXllcwphY19jdl9mdW5jX3NjaGVkX2dldGFmZmluaXR5X25wPW5vCmFjX2N2X2Z1bmNf c2VsZWN0PXllcwphY19jdl9mdW5jX3NlbmR0bz15ZXMKYWNfY3ZfZnVuY19zZXRpdGltZXI9 eWVzCmFjX2N2X2Z1bmNfc2V0bG9jYWxlPXllcwphY19jdl9mdW5jX3NldHJsaW1pdD15ZXMK YWNfY3ZfZnVuY19zaHV0ZG93bj15ZXMKYWNfY3ZfZnVuY19zaWcyc3RyPW5vCmFjX2N2X2Z1 bmNfc2lnZGVzY3JfbnA9eWVzCmFjX2N2X2Z1bmNfc25wcmludGY9eWVzCmFjX2N2X2Z1bmNf c3RwY3B5PXllcwphY19jdl9mdW5jX3N0cm5sZW5fd29ya2luZz15ZXMKYWNfY3ZfZnVuY19z dHJzaWduYWw9eWVzCmFjX2N2X2Z1bmNfc3RydG9pbWF4PXllcwphY19jdl9mdW5jX3N5bWxp bms9eWVzCmFjX2N2X2Z1bmNfc3luYz15ZXMKYWNfY3ZfZnVuY19zeXNjdGw9bm8KYWNfY3Zf ZnVuY19zeXNtcD1ubwphY19jdl9mdW5jX3RpbWVnbT15ZXMKYWNfY3ZfZnVuY190aW1lcl9n ZXRvdmVycnVuPXllcwphY19jdl9mdW5jX3RpbWVyX3NldHRpbWU9eWVzCmFjX2N2X2Z1bmNf dHJ1bmM9eWVzCmFjX2N2X2Z1bmNfdXRpbWVuc2F0PXllcwphY19jdl9mdW5jX3Zmb3JrPXll cwphY19jdl9mdW5jX3Zmb3JrX3dvcmtzPXllcwphY19jdl9oYXZlX2RlY2xfUE9TSVhfU1BB V05fU0VUU0lEPXllcwphY19jdl9oYXZlX2RlY2xfU0VDQ09NUF9GSUxURVJfRkxBR19UU1lO Qz15ZXMKYWNfY3ZfaGF2ZV9kZWNsX1NFQ0NPTVBfU0VUX01PREVfRklMVEVSPXllcwphY19j dl9oYXZlX2RlY2xfX19mcGVuZGluZz15ZXMKYWNfY3ZfaGF2ZV9kZWNsX2FsYXJtPXllcwph Y19jdl9oYXZlX2RlY2xfYWxpZ25lZF9hbGxvYz15ZXMKYWNfY3ZfaGF2ZV9kZWNsX2NsZWFy ZXJyX3VubG9ja2VkPXllcwphY19jdl9oYXZlX2RlY2xfZWN2dD15ZXMKYWNfY3ZfaGF2ZV9k ZWNsX2V4ZWN2cGU9eWVzCmFjX2N2X2hhdmVfZGVjbF9mY2xvc2VhbGw9eWVzCmFjX2N2X2hh dmVfZGVjbF9mY3Z0PXllcwphY19jdl9oYXZlX2RlY2xfZmRvcGVuZGlyPXllcwphY19jdl9o YXZlX2RlY2xfZmVvZl91bmxvY2tlZD15ZXMKYWNfY3ZfaGF2ZV9kZWNsX2ZlcnJvcl91bmxv Y2tlZD15ZXMKYWNfY3ZfaGF2ZV9kZWNsX2ZmbHVzaF91bmxvY2tlZD15ZXMKYWNfY3ZfaGF2 ZV9kZWNsX2ZnZXRzX3VubG9ja2VkPXllcwphY19jdl9oYXZlX2RlY2xfZnB1dGNfdW5sb2Nr ZWQ9eWVzCmFjX2N2X2hhdmVfZGVjbF9mcHV0c191bmxvY2tlZD15ZXMKYWNfY3ZfaGF2ZV9k ZWNsX2ZyZWFkX3VubG9ja2VkPXllcwphY19jdl9oYXZlX2RlY2xfZndyaXRlX3VubG9ja2Vk PXllcwphY19jdl9oYXZlX2RlY2xfZ2N2dD15ZXMKYWNfY3ZfaGF2ZV9kZWNsX2dldGNfdW5s b2NrZWQ9eWVzCmFjX2N2X2hhdmVfZGVjbF9nZXRjaGFyX3VubG9ja2VkPXllcwphY19jdl9o YXZlX2RlY2xfZ2V0ZHRhYmxlc2l6ZT15ZXMKYWNfY3ZfaGF2ZV9kZWNsX2dldGxvYWRhdmc9 eWVzCmFjX2N2X2hhdmVfZGVjbF9nZXR3PXllcwphY19jdl9oYXZlX2RlY2xfbG9jYWx0aW1l X3I9eWVzCmFjX2N2X2hhdmVfZGVjbF9tZW1tZW09eWVzCmFjX2N2X2hhdmVfZGVjbF9tZW1y Y2hyPXllcwphY19jdl9oYXZlX2RlY2xfcG5nX2xvbmdqbXA9eWVzCmFjX2N2X2hhdmVfZGVj bF9wdXRjX3VubG9ja2VkPXllcwphY19jdl9oYXZlX2RlY2xfcHV0Y2hhcl91bmxvY2tlZD15 ZXMKYWNfY3ZfaGF2ZV9kZWNsX3B1dHc9eWVzCmFjX2N2X2hhdmVfZGVjbF9zdHJtb2RlPW5v CmFjX2N2X2hhdmVfZGVjbF9zdHJubGVuPXllcwphY19jdl9oYXZlX2RlY2xfc3RydG9pbWF4 PXllcwphY19jdl9oYXZlX2RlY2xfdGltZXJfc2V0dGltZT15ZXMKYWNfY3ZfaGF2ZV9kZWNs X3RpbWVzcGVjX2dldD15ZXMKYWNfY3ZfaGF2ZV94PSdoYXZlX3g9eWVzCWFjX3hfaW5jbHVk ZXM9J1wnJydcJycJYWNfeF9saWJyYXJpZXM9J1wnJydcJycnCmFjX2N2X2hlYWRlcl9YMTFf U01fU01saWJfaD15ZXMKYWNfY3ZfaGVhZGVyX1gxMV9YbGliX3hjYl9oPXllcwphY19jdl9o ZWFkZXJfWDExX2V4dGVuc2lvbnNfWElucHV0Ml9oPXllcwphY19jdl9oZWFkZXJfWDExX2V4 dGVuc2lvbnNfWGNvbXBvc2l0ZV9oPXllcwphY19jdl9oZWFkZXJfWDExX2V4dGVuc2lvbnNf WGRiZV9oPXllcwphY19jdl9oZWFkZXJfWDExX2V4dGVuc2lvbnNfc2hhcGVfaD15ZXMKYWNf Y3ZfaGVhZGVyX1gxMV9leHRlbnNpb25zX3N5bmNfaD15ZXMKYWNfY3ZfaGVhZGVyX1gxMV94 cG1faD15ZXMKYWNfY3ZfaGVhZGVyX2FjbF9saWJhY2xfaD15ZXMKYWNfY3ZfaGVhZGVyX2J5 dGVzd2FwX2g9eWVzCmFjX2N2X2hlYWRlcl9jb2ZmX2g9bm8KYWNfY3ZfaGVhZGVyX2RpcmVu dF9oPXllcwphY19jdl9oZWFkZXJfZXhlY2luZm9faD15ZXMKYWNfY3ZfaGVhZGVyX2dldG9w dF9oPXllcwphY19jdl9oZWFkZXJfZ2lmX2xpYl9oPXllcwphY19jdl9oZWFkZXJfZ21wX2g9 eWVzCmFjX2N2X2hlYWRlcl9ncG1faD15ZXMKYWNfY3ZfaGVhZGVyX2llZWU3NTRfaD15ZXMK YWNfY3ZfaGVhZGVyX2lmYWRkcnNfaD15ZXMKYWNfY3ZfaGVhZGVyX2ludHR5cGVzX2g9eWVz CmFjX2N2X2hlYWRlcl9saW1pdHNfaD15ZXMKYWNfY3ZfaGVhZGVyX2xpbnV4X2ZpbHRlcl9o PXllcwphY19jdl9oZWFkZXJfbGludXhfZnNfaD15ZXMKYWNfY3ZfaGVhZGVyX2xpbnV4X3Nl Y2NvbXBfaD15ZXMKYWNfY3ZfaGVhZGVyX21hY2hpbmVfc291bmRjYXJkX2g9bm8KYWNfY3Zf aGVhZGVyX21hbGxvY19oPXllcwphY19jdl9oZWFkZXJfbWFsbG9jX21hbGxvY19oPW5vCmFj X2N2X2hlYWRlcl9taW5peF9jb25maWdfaD1ubwphY19jdl9oZWFkZXJfbW1zeXN0ZW1faD1u bwphY19jdl9oZWFkZXJfbmV0X2lmX2RsX2g9bm8KYWNfY3ZfaGVhZGVyX25ldF9pZl9oPXll cwphY19jdl9oZWFkZXJfcHRocmVhZF9oPXllcwphY19jdl9oZWFkZXJfcHR5X2g9eWVzCmFj X2N2X2hlYWRlcl9wd2RfaD15ZXMKYWNfY3ZfaGVhZGVyX3Nhbml0aXplcl9hc2FuX2ludGVy ZmFjZV9oPXllcwphY19jdl9oZWFkZXJfc2FuaXRpemVyX2NvbW1vbl9pbnRlcmZhY2VfZGVm c19oPXllcwphY19jdl9oZWFkZXJfc2FuaXRpemVyX2xzYW5faW50ZXJmYWNlX2g9eWVzCmFj X2N2X2hlYWRlcl9zb3VuZGNhcmRfaD1ubwphY19jdl9oZWFkZXJfc3Bhd25faD15ZXMKYWNf Y3ZfaGVhZGVyX3N0YXRfYnJva2VuPW5vCmFjX2N2X2hlYWRlcl9zdGRib29sX2g9eWVzCmFj X2N2X2hlYWRlcl9zdGRja2RpbnRfaD1ubwphY19jdl9oZWFkZXJfc3RkaW50X2g9eWVzCmFj X2N2X2hlYWRlcl9zdGRpb19leHRfaD15ZXMKYWNfY3ZfaGVhZGVyX3N0ZGlvX2g9eWVzCmFj X2N2X2hlYWRlcl9zdGRsaWJfaD15ZXMKYWNfY3ZfaGVhZGVyX3N0cmluZ19oPXllcwphY19j dl9oZWFkZXJfc3RyaW5nc19oPXllcwphY19jdl9oZWFkZXJfc3lzX2FjbF9oPXllcwphY19j dl9oZWFkZXJfc3lzX2NkZWZzX2g9eWVzCmFjX2N2X2hlYWRlcl9zeXNfZnNfczVwYXJhbV9o PW5vCmFjX2N2X2hlYWRlcl9zeXNfZnNfdHlwZXNfaD1ubwphY19jdl9oZWFkZXJfc3lzX2lu b3RpZnlfaD15ZXMKYWNfY3ZfaGVhZGVyX3N5c19sb2FkYXZnX2g9bm8KYWNfY3ZfaGVhZGVy X3N5c19tb3VudF9oPXllcwphY19jdl9oZWFkZXJfc3lzX3BhcmFtX2g9eWVzCmFjX2N2X2hl YWRlcl9zeXNfcHN0YXRfaD1ubwphY19jdl9oZWFkZXJfc3lzX3JhbmRvbV9oPXllcwphY19j dl9oZWFkZXJfc3lzX3Jlc291cmNlX2g9eWVzCmFjX2N2X2hlYWRlcl9zeXNfc2VsZWN0X2g9 eWVzCmFjX2N2X2hlYWRlcl9zeXNfc29ja2V0X2g9eWVzCmFjX2N2X2hlYWRlcl9zeXNfc291 bmRjYXJkX2g9eWVzCmFjX2N2X2hlYWRlcl9zeXNfc3RhdF9oPXllcwphY19jdl9oZWFkZXJf c3lzX3N0YXRmc19oPXllcwphY19jdl9oZWFkZXJfc3lzX3N5c2N0bF9oPW5vCmFjX2N2X2hl YWRlcl9zeXNfc3lzaW5mb19oPXllcwphY19jdl9oZWFkZXJfc3lzX3N5c21wX2g9bm8KYWNf Y3ZfaGVhZGVyX3N5c19zeXN0ZW1pbmZvX2g9bm8KYWNfY3ZfaGVhZGVyX3N5c190aW1lX2g9 eWVzCmFjX2N2X2hlYWRlcl9zeXNfdHlwZXNfaD15ZXMKYWNfY3ZfaGVhZGVyX3N5c191bl9o PXllcwphY19jdl9oZWFkZXJfc3lzX3V0c25hbWVfaD15ZXMKYWNfY3ZfaGVhZGVyX3N5c192 ZnNfaD15ZXMKYWNfY3ZfaGVhZGVyX3N5c193YWl0X2g9eWVzCmFjX2N2X2hlYWRlcl90aWZm aW9faD15ZXMKYWNfY3ZfaGVhZGVyX3VuaXN0ZF9oPXllcwphY19jdl9oZWFkZXJfdXRpbF9o PW5vCmFjX2N2X2hlYWRlcl91dG1wX2g9eWVzCmFjX2N2X2hlYWRlcl92YWxncmluZF92YWxn cmluZF9oPXllcwphY19jdl9oZWFkZXJfdmZvcmtfaD1ubwphY19jdl9oZWFkZXJfd2NoYXJf aD15ZXMKYWNfY3ZfaGVhZGVyX3hjYl9zaGFwZV9oPXllcwphY19jdl9ob3N0PXg4Nl82NC1w Yy1saW51eC1nbnUKYWNfY3ZfbGliX1NNX1NtY09wZW5Db25uZWN0aW9uPXllcwphY19jdl9s aWJfWDExX3hjYl9YR2V0WENCQ29ubmVjdGlvbj15ZXMKYWNfY3ZfbGliX1hic2RfbWFpbj1u bwphY19jdl9saWJfWGNvbXBvc2l0ZV9YQ29tcG9zaXRlUmVkaXJlY3RXaW5kb3c9eWVzCmFj X2N2X2xpYl9YZXh0X1hTaGFwZVF1ZXJ5VmVyc2lvbj15ZXMKYWNfY3ZfbGliX1hleHRfWFN5 bmNRdWVyeUV4dGVuc2lvbj15ZXMKYWNfY3ZfbGliX1hleHRfWGRiZUFsbG9jYXRlQmFja0J1 ZmZlck5hbWU9eWVzCmFjX2N2X2xpYl9YaV9YSUdyYWJCdXR0b249eWVzCmFjX2N2X2xpYl9Y cG1fWHBtUmVhZEZpbGVUb1BpeG1hcD15ZXMKYWNfY3ZfbGliX1hyZW5kZXJfWFJlbmRlclF1 ZXJ5RXh0ZW5zaW9uPXllcwphY19jdl9saWJfYW5sX2dldGFkZHJpbmZvX2E9eWVzCmFjX2N2 X2xpYl9naWZfR2lmTWFrZU1hcE9iamVjdD15ZXMKYWNfY3ZfbGliX2dwbV9HcG1fT3Blbj15 ZXMKYWNfY3ZfbGliX29zc2F1ZGlvX19vc3NfaW9jdGw9bm8KYWNfY3ZfbGliX290Zl9PVEZf Z2V0X3ZhcmlhdGlvbl9nbHlwaHM9eWVzCmFjX2N2X2xpYl9zZWxpbnV4X2xnZXRmaWxlY29u PXllcwphY19jdl9saWJfc3FsaXRlM19zcWxpdGUzX2xvYWRfZXh0ZW5zaW9uPXllcwphY19j dl9saWJfc3FsaXRlM19zcWxpdGUzX29wZW5fdjI9eWVzCmFjX2N2X2xpYl90aWZmX1RJRkZH ZXRWZXJzaW9uPXllcwphY19jdl9saWJfeGNiX3NoYXBlX3hjYl9zaGFwZV9jb21iaW5lPXll cwphY19jdl9saWJfeGNiX3hjYl90cmFuc2xhdGVfY29vcmRpbmF0ZXM9eWVzCmFjX2N2X2xp Yl94bWwyX2h0bWxSZWFkTWVtb3J5PXllcwphY19jdl9tZW1iZXJfWElCYXJyaWVyUmVsZWFz ZVBvaW50ZXJJbmZvX2RldmljZWlkPXllcwphY19jdl9tZW1iZXJfWElDQ2FsbGJhY2tfY2Fs bGJhY2s9eWVzCmFjX2N2X21lbWJlcl9YSUdlc3R1cmVDbGFzc0luZm9fdHlwZT15ZXMKYWNf Y3ZfbWVtYmVyX1hJU2Nyb2xsQ2xhc3NJbmZvX3R5cGU9eWVzCmFjX2N2X21lbWJlcl9YSVRv dWNoQ2xhc3NJbmZvX3R5cGU9eWVzCmFjX2N2X21lbWJlcl9zdHJ1Y3RfaWZyZXFfaWZyX2Fk ZHI9eWVzCmFjX2N2X21lbWJlcl9zdHJ1Y3RfaWZyZXFfaWZyX2FkZHJfc2FfbGVuPW5vCmFj X2N2X21lbWJlcl9zdHJ1Y3RfaWZyZXFfaWZyX2Jyb2FkYWRkcj15ZXMKYWNfY3ZfbWVtYmVy X3N0cnVjdF9pZnJlcV9pZnJfZmxhZ3M9eWVzCmFjX2N2X21lbWJlcl9zdHJ1Y3RfaWZyZXFf aWZyX2h3YWRkcj15ZXMKYWNfY3ZfbWVtYmVyX3N0cnVjdF9pZnJlcV9pZnJfbmV0bWFzaz15 ZXMKYWNfY3ZfbWVtYmVyX3N0cnVjdF9zdGF0X3N0X2F0aW1fdHZfbnNlYz15ZXMKYWNfY3Zf bWVtYmVyX3N0cnVjdF9zdGF0X3N0X2JpcnRodGltX3R2X25zZWM9bm8KYWNfY3ZfbWVtYmVy X3N0cnVjdF9zdGF0X3N0X2JpcnRodGltZW5zZWM9bm8KYWNfY3ZfbWVtYmVyX3N0cnVjdF9z dGF0X3N0X2JpcnRodGltZXNwZWNfdHZfbnNlYz1ubwphY19jdl9tZW1iZXJfc3RydWN0X3Rt X3RtX2dtdG9mZj15ZXMKYWNfY3ZfbWVtYmVyX3N0cnVjdF90bV90bV96b25lPXllcwphY19j dl9tZW1iZXJfc3RydWN0X3VuaXBhaXJfdW5pY29kZT15ZXMKYWNfY3Zfb2JqZXh0PW8KYWNf Y3ZfcGF0aF9FR1JFUD0nL3Vzci9iaW4vZ3JlcCAtRScKYWNfY3ZfcGF0aF9HUkVQPS91c3Iv YmluL2dyZXAKYWNfY3ZfcGF0aF9HWklQX1BST0c9L3Vzci9iaW4vZ3ppcAphY19jdl9wYXRo X0lOU1RBTExfSU5GTz0vdXNyL2Jpbi9pbnN0YWxsLWluZm8KYWNfY3ZfcGF0aF9NQUtFPW1h a2UKYWNfY3ZfcGF0aF9hY19wdF9QS0dfQ09ORklHPS91c3IvYmluL3BrZy1jb25maWcKYWNf Y3ZfcGF0aF9pbnN0YWxsPScvdXNyL2Jpbi9pbnN0YWxsIC1jJwphY19jdl9wYXRoX21rZGly PS91c3IvYmluL21rZGlyCmFjX2N2X3Byb2dfQVdLPWdhd2sKYWNfY3ZfcHJvZ19DUFA9J2dj YyAtRScKYWNfY3ZfcHJvZ19hY19jdF9BUj1hcgphY19jdl9wcm9nX2FjX2N0X0NDPWdjYwph Y19jdl9wcm9nX2FjX2N0X1JBTkxJQj1yYW5saWIKYWNfY3ZfcHJvZ19jY19jMTE9CmFjX2N2 X3Byb2dfY2NfZz15ZXMKYWNfY3ZfcHJvZ19jY19nY2NfY19vPXllcwphY19jdl9wcm9nX2Nj X3N0ZGM9CmFjX2N2X3NhZmVfdG9fZGVmaW5lX19fZXh0ZW5zaW9uc19fPXllcwphY19jdl9z ZWFyY2hfX19nbXB6X3JvaW5pdF9uPS1sZ21wCmFjX2N2X3NlYXJjaF9hY2xfZ2V0X2ZpbGU9 LWxhY2wKYWNfY3Zfc2VhcmNoX2JhY2t0cmFjZV9zeW1ib2xzX2ZkPSdub25lIHJlcXVpcmVk JwphY19jdl9zZWFyY2hfY2xvY2tfZ2V0dGltZT0nbm9uZSByZXF1aXJlZCcKYWNfY3Zfc2Vh cmNoX2luZmxhdGVFbmQ9LWx6CmFjX2N2X3NlYXJjaF9uYW5vc2xlZXA9J25vbmUgcmVxdWly ZWQnCmFjX2N2X3NlYXJjaF90aW1lcl9zZXR0aW1lPSdub25lIHJlcXVpcmVkJwphY19jdl9z aG91bGRfZGVmaW5lX194b3Blbl9zb3VyY2U9bm8KYWNfY3Zfc2l6ZW9mX2xvbmc9OAphY19j dl9zaXplb2Zfc3BlZWRfdD00CmFjX2N2X3N0cnVjdF90bT10aW1lLmgKYWNfY3Zfc3lzX2xh cmdlZmlsZV9vcHRzPSdub25lIG5lZWRlZCcKYWNfY3Zfc3lzX2xhcmdlZmlsZV9zb3VyY2U9 bm8KYWNfY3Zfc3lzX3Bvc2l4X3Rlcm1pb3M9eWVzCmFjX2N2X3R5cGVfZ2V0Z3JvdXBzPWdp ZF90CmFjX2N2X3R5cGVfbWJzdGF0ZV90PXllcwphY19jdl90eXBlX21vZGVfdD15ZXMKYWNf Y3ZfdHlwZV9ubGlua190PXllcwphY19jdl90eXBlX3BpZF90PXllcwphY19jdl90eXBlX3Np Z2hhbmRsZXJfdD15ZXMKYWNfY3ZfdHlwZV9zaWdzZXRfdD15ZXMKYWNfY3ZfdHlwZV9zb2Nr bGVuX3Q9eWVzCmFjX2N2X3R5cGVfdGltZXpvbmVfdD1ubwphY19jdl90eXBlX3ZvbGF0aWxl X3NpZ19hdG9taWNfdD15ZXMKYWNfY3ZfdHlwZW9mX3N0cnVjdF9zdGF0X3N0X2F0aW1faXNf c3RydWN0X3RpbWVzcGVjPXllcwphY19jdl93b3JraW5nX2FsbG9jYV9oPXllcwplbWFjc19j dl9hbHRlcm5hdGVfc3RhY2s9eWVzCmVtYWNzX2N2X2F1dG9kZXBlbmQ9eWVzCmVtYWNzX2N2 X2NsYW5nPW5vCmVtYWNzX2N2X2NwcF94cG1fcmV0dXJuX2FsbG9jX3BpeGVscz15ZXMKZW1h Y3NfY3ZfZmluZF9kZWxldGU9LWRlbGV0ZQplbWFjc19jdl9mdW5jX19fYnVpbHRpbl9mcmFt ZV9hZGRyZXNzPXllcwplbWFjc19jdl9mdW5jX19fYnVpbHRpbl91bndpbmRfaW5pdD15ZXMK ZW1hY3NfY3ZfZnVuY19fc2V0am1wPXllcwplbWFjc19jdl9mdW5jX3NpZ3NldGptcD15ZXMK ZW1hY3NfY3ZfZ3NldHRpbmdzX2luX2dpbz15ZXMKZW1hY3NfY3ZfZ3RrX2NvbXBpbGVzPXll cwplbWFjc19jdl9oYXZlX3RpbWVyZmQ9eWVzCmVtYWNzX2N2X2pwZWdsaWI9LWxqcGVnCmVt YWNzX2N2X2xhbmdpbmZvX19ubF9wYXBlcl93aWR0aD15ZXMKZW1hY3NfY3ZfbGFuZ2luZm9f Y29kZXNldD15ZXMKZW1hY3NfY3ZfbGliX21hdGg9LWxtCmVtYWNzX2N2X2xpbmtzX2dsaWI9 eWVzCmVtYWNzX2N2X2xpbnV4X3N5c2luZm89eWVzCmVtYWNzX2N2X2xuX3NfZmlsZW9ubHk9 J2xuIC1zJwplbWFjc19jdl9wZXJzb25hbGl0eV9hZGRyX25vX3JhbmRvbWl6ZT15ZXMKZW1h Y3NfY3ZfcHJvZ19jY19nMz15ZXMKZW1hY3NfY3ZfcHJvZ19jY19ub19waWU9J25vdCBuZWVk ZWQnCmVtYWNzX2N2X3B0aHJlYWRfbGliPSdub25lIG5lZWRlZCcKZW1hY3NfY3ZfcHRocmVh ZF9zZXRuYW1lX25wXzFhcmc9bm8KZW1hY3NfY3ZfcHRocmVhZF9zZXRuYW1lX25wXzNhcmc9 bm8KZW1hY3NfY3Zfc2FuaXRpemVfYWRkcmVzcz1ubwplbWFjc19jdl9zaWduYWxzX3ZpYV9j aGFycz15ZXMKZW1hY3NfY3Zfc3RhdGVtZW50X2V4cHJlc3Npb25zPXllcwplbWFjc19jdl9z dHJ1Y3RfYWxpZ25tZW50PXllcwplbWFjc19jdl90ZXJtaW5mb19kZWZpbmVzX0JDPXllcwpl bWFjc19jdl90cHV0c19saWI9LWx0aW5mbwplbWFjc19jdl91c2FibGVfRklPTlJFQUQ9eWVz CmVtYWNzX2N2X3VzYWJsZV9TSUdJTz15ZXMKZW1hY3NfY3ZfdmFyX2RvdWdfbGVhX21hbGxv Yz1ubwplbWFjc19jdl94MTFfdmVyc2lvbl82PXllcwplbWFjc19jdl94a2I9eWVzCmVtYWNz X2N2X3pub2NvbWJyZWxvYz0nbm90IG5lZWRlZCcKZnVfY3Zfc3lzX3N0YXRfc3RhdGZzMl9m cnNpemU9eWVzCmZ1X2N2X3N5c19zdGF0X3N0YXR2ZnM2ND1ubwpmdV9jdl9zeXNfc3RhdF9z dGF0dmZzPXllcwpmdV9jdl9zeXNfdHJ1bmNhdGluZ19zdGF0ZnM9bm8KZ2xfY3ZfX19idWls dGluX2V4cGVjdD15ZXMKZ2xfY3ZfYWNsX0FDTF9GSVJTVF9FTlRSWT15ZXMKZ2xfY3ZfYWNs X0FDTF9UWVBFX0VYVEVOREVEPW5vCmdsX2N2X2NfX19pbmxpbmU9eWVzCmdsX2N2X2NfYW1z dGVyZGFtX2NvbXBpbGVyPW5vCmdsX2N2X2NfYm9vbD1ubwpnbF9jdl9jX211bHRpYXJjaD1u bwpnbF9jdl9jY19ub21maV9uZWVkZWQ9bm8KZ2xfY3ZfY2Nfbm9tZmlfc3VwcG9ydGVkPXll cwpnbF9jdl9jY191bmluaXRpYWxpemVkX3N1cHBvcnRlZD15ZXMKZ2xfY3ZfY2Nfd2FsbG93 PS1Xbm8tZXJyb3IKZ2xfY3ZfY29tcGlsZXJfY2hlY2tfZGVjbF9vcHRpb249bm9uZQpnbF9j dl9jb21waWxlcl9jbGFuZz1ubwpnbF9jdl9jb3B5X2ZpbGVfcmFuZ2Vfa25vd25fdG9fd29y az15ZXMKZ2xfY3ZfZGVjbF9udWxsX3dvcmtzPXllcwpnbF9jdl9kZWNsX3JlYWRsaW5rX3dv cmtzPXllcwpnbF9jdl9kZWNsX3JlYWRsaW5rYXRfd29ya3M9eWVzCmdsX2N2X2RvdWJsZV9z bGFzaF9yb290PW5vCmdsX2N2X2ZzX3NwYWNlPXllcwpnbF9jdl9mdW5jX19fZnBlbmRpbmc9 eWVzCmdsX2N2X2Z1bmNfY29weV9maWxlX3JhbmdlPXllcwpnbF9jdl9mdW5jX2R1cDJfd29y a3M9eWVzCmdsX2N2X2Z1bmNfZmNobW9kYXRfd29ya3M9eWVzCmdsX2N2X2Z1bmNfZmNudGxf Zl9kdXBmZF9jbG9leGVjPSduZWVkcyBydW50aW1lIGNoZWNrJwpnbF9jdl9mdW5jX2ZjbnRs X2ZfZHVwZmRfd29ya3M9eWVzCmdsX2N2X2Z1bmNfZmRvcGVuZGlyX3dvcmtzPXllcwpnbF9j dl9mdW5jX2ZyZWVfcHJlc2VydmVzX2Vycm5vPXllcwpnbF9jdl9mdW5jX2ZzdGF0YXRfemVy b19mbGFnPXllcwpnbF9jdl9mdW5jX2Z1dGltZW5zX3dvcmtzPXllcwpnbF9jdl9mdW5jX2dl dGR0YWJsZXNpemVfd29ya3M9eWVzCmdsX2N2X2Z1bmNfZ2V0b3B0X2dudT15ZXMKZ2xfY3Zf ZnVuY19nZXRvcHRfbG9uZ19nbnU9eWVzCmdsX2N2X2Z1bmNfZ2V0b3B0X3Bvc2l4PXllcwpn bF9jdl9mdW5jX2dldHJhbmRvbV9vaz15ZXMKZ2xfY3ZfZnVuY19nZXR0aW1lb2ZkYXlfcG9z aXhfc2lnbmF0dXJlPXllcwpnbF9jdl9mdW5jX2xvY2FsdGltZV93b3Jrcz15ZXMKZ2xfY3Zf ZnVuY19sc3RhdF9kZXJlZmVyZW5jZXNfc2xhc2hlZF9zeW1saW5rPXllcwpnbF9jdl9mdW5j X21hbGxvY18wX25vbm51bGw9MQpnbF9jdl9mdW5jX21hbGxvY19wb3NpeD15ZXMKZ2xfY3Zf ZnVuY19tZW1tZW1fd29ya3NfYWx3YXlzPXllcwpnbF9jdl9mdW5jX25hbm9zbGVlcD0nbm8g KG1pc2hhbmRsZXMgbGFyZ2UgYXJndW1lbnRzKScKZ2xfY3ZfZnVuY19wcmludGZfYXR0cmli dXRlX2ZsYXZvcj1zeXN0ZW0KZ2xfY3ZfZnVuY19wc2VsZWN0X2RldGVjdHNfZWJhZGY9eWVz CmdsX2N2X2Z1bmNfcHRocmVhZF9zaWdtYXNrX2luX2xpYmNfd29ya3M9eWVzCmdsX2N2X2Z1 bmNfcHRocmVhZF9zaWdtYXNrX21hY3JvPW5vCmdsX2N2X2Z1bmNfcHRocmVhZF9zaWdtYXNr X3JldHVybl93b3Jrcz15ZXMKZ2xfY3ZfZnVuY19wdGhyZWFkX3NpZ21hc2tfdW5ibG9ja193 b3Jrcz0nZ3Vlc3NpbmcgeWVzJwpnbF9jdl9mdW5jX3JlX2NvbXBpbGVfcGF0dGVybl93b3Jr aW5nPXllcwpnbF9jdl9mdW5jX3JlYWRsaW5rX3RyYWlsaW5nX3NsYXNoPXllcwpnbF9jdl9m dW5jX3JlYWRsaW5rX3RydW5jYXRlPXllcwpnbF9jdl9mdW5jX3JlYWxwYXRoX3dvcmtzPXll cwpnbF9jdl9mdW5jX3NjaGVkX2dldGFmZmluaXR5Mz15ZXMKZ2xfY3ZfZnVuY19zdHJ0b2lt YXg9eWVzCmdsX2N2X2Z1bmNfc3ltbGlua193b3Jrcz15ZXMKZ2xfY3ZfZnVuY190aW1lc3Bl Y19nZXQ9eWVzCmdsX2N2X2Z1bmNfdXRpbWVuc2F0X3dvcmtzPXllcwpnbF9jdl9mdW5jX3dv cmtpbmdfYWNsX2dldF9maWxlPXllcwpnbF9jdl9mdW5jX3dvcmtpbmdfbWt0aW1lPW5vCmds X2N2X2Z1bmNfd29ya2luZ191dGltZXM9eWVzCmdsX2N2X2dldHhhdHRyX3dpdGhfcG9zaXhf YWNscz15ZXMKZ2xfY3ZfaGF2ZV9fX2hlYWRlcl9pbmxpbmU9bm8KZ2xfY3ZfaGF2ZV9pbmNs dWRlX25leHQ9eWVzCmdsX2N2X2hlYWRlcl9lcnJub19oX2NvbXBsZXRlPXllcwpnbF9jdl9o ZWFkZXJfbGltaXRzX3dpZHRoPXllcwpnbF9jdl9oZWFkZXJfc3RkaW50X3dpZHRoPXllcwpn bF9jdl9oZWFkZXJfc3RkaW50X3dpdGhvdXRfU1REQ19tYWNyb3M9eWVzCmdsX2N2X2hlYWRl cl9zeXNfc2VsZWN0X2hfc2VsZmNvbnRhaW5lZD15ZXMKZ2xfY3ZfaGVhZGVyX3dvcmtpbmdf c3RkYWxpZ25faD0neWVzLCA8c3RkYWxpZ24uaD4gbWFjcm9zJwpnbF9jdl9oZWFkZXJfd29y a2luZ19zdGRpbnRfaD15ZXMKZ2xfY3ZfbWFjcm9fT19DTE9FWEVDPXllcwpnbF9jdl9tYWxs b2NfcHRyZGlmZj15ZXMKZ2xfY3ZfbWlubWF4X2luX2xpbWl0c19oPW5vCmdsX2N2X21pbm1h eF9pbl9zeXNfcGFyYW1faD15ZXMKZ2xfY3ZfbmV4dF9kaXJlbnRfaD0nPGRpcmVudC5oPicK Z2xfY3ZfbmV4dF9mY250bF9oPSc8ZmNudGwuaD4nCmdsX2N2X25leHRfZ2V0b3B0X2g9Jzxn ZXRvcHQuaD4nCmdsX2N2X25leHRfaW50dHlwZXNfaD0nPGludHR5cGVzLmg+JwpnbF9jdl9u ZXh0X2xpbWl0c19oPSc8bGltaXRzLmg+JwpnbF9jdl9uZXh0X3NpZ25hbF9oPSc8c2lnbmFs Lmg+JwpnbF9jdl9uZXh0X3N0ZGludF9oPSc8c3RkaW50Lmg+JwpnbF9jdl9uZXh0X3N0ZGlv X2g9JzxzdGRpby5oPicKZ2xfY3ZfbmV4dF9zdGRsaWJfaD0nPHN0ZGxpYi5oPicKZ2xfY3Zf bmV4dF9zdHJpbmdfaD0nPHN0cmluZy5oPicKZ2xfY3ZfbmV4dF9zeXNfcmFuZG9tX2g9Jzxz eXMvcmFuZG9tLmg+JwpnbF9jdl9uZXh0X3N5c19zZWxlY3RfaD0nPHN5cy9zZWxlY3QuaD4n CmdsX2N2X25leHRfc3lzX3N0YXRfaD0nPHN5cy9zdGF0Lmg+JwpnbF9jdl9uZXh0X3N5c190 aW1lX2g9JzxzeXMvdGltZS5oPicKZ2xfY3ZfbmV4dF9zeXNfdHlwZXNfaD0nPHN5cy90eXBl cy5oPicKZ2xfY3ZfbmV4dF90aW1lX2g9Jzx0aW1lLmg+JwpnbF9jdl9uZXh0X3VuaXN0ZF9o PSc8dW5pc3RkLmg+JwpnbF9jdl9vbndhcmRzX2Z1bmNfZmFjY2Vzc2F0PXllcwpnbF9jdl9v bndhcmRzX2Z1bmNfZnV0aW1lbnM9eWVzCmdsX2N2X29ud2FyZHNfZnVuY19nZXRsb2FkYXZn PXllcwpnbF9jdl9vbndhcmRzX2Z1bmNfZ2V0cmFuZG9tPXllcwpnbF9jdl9vbndhcmRzX2Z1 bmNfbWVtcGNweT15ZXMKZ2xfY3Zfb253YXJkc19mdW5jX21rb3N0ZW1wPXllcwpnbF9jdl9v bndhcmRzX2Z1bmNfcGlwZTI9eWVzCmdsX2N2X29ud2FyZHNfZnVuY19yZWFkbGlua2F0PXll cwpnbF9jdl9vbndhcmRzX2Z1bmNfc2NoZWRfZ2V0YWZmaW5pdHk9eWVzCmdsX2N2X29ud2Fy ZHNfZnVuY19zdHBjcHk9eWVzCmdsX2N2X29ud2FyZHNfZnVuY190aW1lZ209eWVzCmdsX2N2 X29ud2FyZHNfZnVuY190aW1lc3BlY19nZXQ9eWVzCmdsX2N2X29ud2FyZHNfZnVuY191dGlt ZW5zYXQ9eWVzCmdsX2N2X3Byb21vdGVkX21vZGVfdD1tb2RlX3QKZ2xfY3ZfcnBsX2FsbG9j YT15ZXMKZ2xfY3Zfc2lnX3BzZWxlY3Q9eWVzCmdsX2N2X3NvdXJjZV9saW5lX2xlbmd0aF91 bmxpbWl0ZWQ9eWVzCmdsX2N2X3N0YXRpY19hc3NlcnQ9J3llcywgYW4gPGFzc2VydC5oPiBt YWNybycKZ2xfY3Zfc3RydWN0X2RpcmVudF9kX3R5cGU9eWVzCmdsX2N2X3N5c19zdHJ1Y3Rf dGltZXNwZWNfaW5fdGltZV9oPXllcwpnbF9jdl9zeXNfc3RydWN0X3RpbWV2YWw9eWVzCmds X2N2X3N5c19zdHJ1Y3RfdGltZXZhbF90dl9zZWM9eWVzCmdsX2N2X3RpbWVfaF9oYXNfVElN RV9VVEM9eWVzCmdsX2N2X3RpbWVfcl9wb3NpeD15ZXMKZ2xfY3ZfdGltZV90X2lzX3NpZ25l ZD15ZXMKZ2xfY3ZfdHlwZV9tYXhfYWxpZ25fdD15ZXMKZ2xfY3ZfdHlwZV9zaWdzZXRfdD15 ZXMKZ2xfY3Zfd2Fybl9jX19XYWxsPXllcwpnbF9jdl93YXJuX2NfX1dhcml0aF9jb252ZXJz aW9uPXllcwpnbF9jdl93YXJuX2NfX1dhcnJheV9ib3VuZHNfMj15ZXMKZ2xfY3Zfd2Fybl9j X19XYXR0cmlidXRlX2FsaWFzXzI9eWVzCmdsX2N2X3dhcm5fY19fV2RhdGVfdGltZT15ZXMK Z2xfY3Zfd2Fybl9jX19XZGlzYWJsZWRfb3B0aW1pemF0aW9uPXllcwpnbF9jdl93YXJuX2Nf X1dkb3VibGVfcHJvbW90aW9uPXllcwpnbF9jdl93YXJuX2NfX1dkdXBsaWNhdGVkX2NvbmQ9 eWVzCmdsX2N2X3dhcm5fY19fV2Vycm9yX19XdW5rbm93bl93YXJuaW5nX29wdGlvbj1ubwpn bF9jdl93YXJuX2NfX1dleHRyYT15ZXMKZ2xfY3Zfd2Fybl9jX19XZm9ybWF0XzI9eWVzCmds X2N2X3dhcm5fY19fV2Zvcm1hdF9zaWduZWRuZXNzPXllcwpnbF9jdl93YXJuX2NfX1dmb3Jt YXRfdHJ1bmNhdGlvbl8yPXllcwpnbF9jdl93YXJuX2NfX1dpbXBsaWNpdF9mYWxsdGhyb3Vn aF81PXllcwpnbF9jdl93YXJuX2NfX1dpbml0X3NlbGY9eWVzCmdsX2N2X3dhcm5fY19fV2lu dmFsaWRfcGNoPXllcwpnbF9jdl93YXJuX2NfX1dsb2dpY2FsX29wPXllcwpnbF9jdl93YXJu X2NfX1dtaXNzaW5nX2RlY2xhcmF0aW9ucz15ZXMKZ2xfY3Zfd2Fybl9jX19XbWlzc2luZ19p bmNsdWRlX2RpcnM9eWVzCmdsX2N2X3dhcm5fY19fV21pc3NpbmdfcHJvdG90eXBlcz15ZXMK Z2xfY3Zfd2Fybl9jX19XbmVzdGVkX2V4dGVybnM9eWVzCmdsX2N2X3dhcm5fY19fV25vX2Jp ZGlfY2hhcnM9eWVzCmdsX2N2X3dhcm5fY19fV25vX2Zvcm1hdF9ub25saXRlcmFsPXllcwpn bF9jdl93YXJuX2NfX1dub19taXNzaW5nX2ZpZWxkX2luaXRpYWxpemVycz15ZXMKZ2xfY3Zf d2Fybl9jX19Xbm9fb3ZlcnJpZGVfaW5pdD15ZXMKZ2xfY3Zfd2Fybl9jX19Xbm9fc2lnbl9j b21wYXJlPXllcwpnbF9jdl93YXJuX2NfX1dub190eXBlX2xpbWl0cz15ZXMKZ2xfY3Zfd2Fy bl9jX19Xbm9fdW51c2VkX3BhcmFtZXRlcj15ZXMKZ2xfY3Zfd2Fybl9jX19XbnVsbF9kZXJl ZmVyZW5jZT15ZXMKZ2xfY3Zfd2Fybl9jX19Xb2xkX3N0eWxlX2RlZmluaXRpb249eWVzCmds X2N2X3dhcm5fY19fV29wZW5tcF9zaW1kPXllcwpnbF9jdl93YXJuX2NfX1dwYWNrZWQ9eWVz CmdsX2N2X3dhcm5fY19fV3BvaW50ZXJfYXJpdGg9eWVzCmdsX2N2X3dhcm5fY19fV3JlZHVu ZGFudF9kZWNscz15ZXMKZ2xfY3Zfd2Fybl9jX19Xc2hpZnRfb3ZlcmZsb3dfMj15ZXMKZ2xf Y3Zfd2Fybl9jX19Xc3RyaWN0X3Byb3RvdHlwZXM9eWVzCmdsX2N2X3dhcm5fY19fV3N1Z2dl c3RfYXR0cmlidXRlX2Zvcm1hdD15ZXMKZ2xfY3Zfd2Fybl9jX19Xc3VnZ2VzdF9hdHRyaWJ1 dGVfbm9yZXR1cm49eWVzCmdsX2N2X3dhcm5fY19fV3N1Z2dlc3RfZmluYWxfbWV0aG9kcz15 ZXMKZ2xfY3Zfd2Fybl9jX19Xc3VnZ2VzdF9maW5hbF90eXBlcz15ZXMKZ2xfY3Zfd2Fybl9j X19XdHJhbXBvbGluZXM9eWVzCmdsX2N2X3dhcm5fY19fV3VuaW5pdGlhbGl6ZWQ9eWVzCmds X2N2X3dhcm5fY19fV3Vua25vd25fcHJhZ21hcz15ZXMKZ2xfY3Zfd2Fybl9jX19XdW51c2Vk X21hY3Jvcz15ZXMKZ2xfY3Zfd2Fybl9jX19XdXNlX2FmdGVyX2ZyZWVfMz15ZXMKZ2xfY3Zf d2Fybl9jX19XdmFyaWFkaWNfbWFjcm9zPXllcwpnbF9jdl93YXJuX2NfX1d2ZWN0b3Jfb3Bl cmF0aW9uX3BlcmZvcm1hbmNlPXllcwpnbF9jdl93YXJuX2NfX1d2bGFfbGFyZ2VyX3RoYW5f NDAzMT15ZXMKZ2xfY3Zfd2Fybl9jX19Xd3JpdGVfc3RyaW5ncz15ZXMKZ2xfY3Zfd2Fybl9j X19mbm9fY29tbW9uPXllcwpnbF9jdl94YXR0cl9saWI9LWxhdHRyCmd0X2N2X2Nfd2NoYXJf dD15ZXMKZ3RfY3Zfc3NpemVfdD15ZXMKZ3RfY3ZfdmFyX2Vudmlyb25fZGVjbGFyYXRpb249 eWVzCnBrZ19jdl9BTFNBX0NGTEFHUz0KcGtnX2N2X0FMU0FfTElCUz0tbGFzb3VuZApwa2df Y3ZfQ0FJUk9fQ0ZMQUdTPSctSS91c3IvaW5jbHVkZS9jYWlybyAtSS91c3IvaW5jbHVkZS9n bGliLTIuMCAtSS91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAt SS91c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91c3IvaW5jbHVkZS91dWlkIC1JL3Vzci9pbmNs dWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9saWJwbmcxNicKcGtnX2N2X0NBSVJPX0xJ QlM9LWxjYWlybwpwa2dfY3ZfQ0FJUk9fWENCX0NGTEFHUz0nLUkvdXNyL2luY2x1ZGUvY2Fp cm8gLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi94ODZfNjQtbGludXgtZ251 L2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLUkvdXNyL2luY2x1 ZGUvdXVpZCAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvbGlicG5n MTYnCnBrZ19jdl9DQUlST19YQ0JfTElCUz0nLWxjYWlybyAtbHhjYiAtbHhjYi1yZW5kZXIn CnBrZ19jdl9EQlVTX0NGTEFHUz0nLUkvdXNyL2luY2x1ZGUvZGJ1cy0xLjAgLUkvdXNyL2xp Yi94ODZfNjQtbGludXgtZ251L2RidXMtMS4wL2luY2x1ZGUnCnBrZ19jdl9EQlVTX0xJQlM9 LWxkYnVzLTEKcGtnX2N2X0ZPTlRDT05GSUdfQ0ZMQUdTPSctSS91c3IvaW5jbHVkZS91dWlk IC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9saWJwbmcxNicKcGtn X2N2X0ZPTlRDT05GSUdfTElCUz0nLWxmb250Y29uZmlnIC1sZnJlZXR5cGUnCnBrZ19jdl9G UkVFVFlQRV9DRkxBR1M9Jy1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVk ZS9saWJwbmcxNicKcGtnX2N2X0ZSRUVUWVBFX0xJQlM9LWxmcmVldHlwZQpwa2dfY3ZfR09C SkVDVF9DRkxBR1M9Jy1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIveDg2XzY0 LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlJwpwa2dfY3ZfR09CSkVDVF9MSUJTPSctbGdv YmplY3QtMi4wIC1sZ2xpYi0yLjAnCnBrZ19jdl9HU0VUVElOR1NfQ0ZMQUdTPSctcHRocmVh ZCAtSS91c3IvaW5jbHVkZS9saWJtb3VudCAtSS91c3IvaW5jbHVkZS9ibGtpZCAtSS91c3Iv aW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAv aW5jbHVkZScKcGtnX2N2X0dTRVRUSU5HU19MSUJTPSctbGdpby0yLjAgLWxnb2JqZWN0LTIu MCAtbGdsaWItMi4wJwpwa2dfY3ZfR1RLX0NGTEFHUz0nLXB0aHJlYWQgLUkvdXNyL2luY2x1 ZGUvZ3RrLTMuMCAtSS91c3IvaW5jbHVkZS9hdC1zcGkyLWF0ay8yLjAgLUkvdXNyL2luY2x1 ZGUvYXQtc3BpLTIuMCAtSS91c3IvaW5jbHVkZS9kYnVzLTEuMCAtSS91c3IvbGliL3g4Nl82 NC1saW51eC1nbnUvZGJ1cy0xLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9ndGstMy4wIC1J L3Vzci9pbmNsdWRlL2dpby11bml4LTIuMCAtSS91c3IvaW5jbHVkZS9jYWlybyAtSS91c3Iv aW5jbHVkZS9wYW5nby0xLjAgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1 ZGUvcGFuZ28tMS4wIC1JL3Vzci9pbmNsdWRlL2ZyaWJpZGkgLUkvdXNyL2luY2x1ZGUvaGFy ZmJ1enogLUkvdXNyL2luY2x1ZGUvYXRrLTEuMCAtSS91c3IvaW5jbHVkZS9jYWlybyAtSS91 c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91c3IvaW5jbHVkZS91dWlkIC1JL3Vzci9pbmNsdWRl L2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtSS91c3IvaW5jbHVk ZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1JL3Vzci9pbmNs dWRlL2xpYm1vdW50IC1JL3Vzci9pbmNsdWRlL2Jsa2lkIC1JL3Vzci9pbmNsdWRlL2dsaWIt Mi4wIC1JL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlJwpwa2df Y3ZfR1RLX0xJQlM9Jy1sZ3RrLTMgLWxnZGstMyAtbHBhbmdvY2Fpcm8tMS4wIC1scGFuZ28t MS4wIC1saGFyZmJ1enogLWxhdGstMS4wIC1sY2Fpcm8tZ29iamVjdCAtbGNhaXJvIC1sZ2Rr X3BpeGJ1Zi0yLjAgLWxnaW8tMi4wIC1sZ29iamVjdC0yLjAgLWxnbGliLTIuMCcKcGtnX2N2 X0hBUkZCVVpaX0NGTEFHUz0nLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1 ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2ds aWItMi4wIC1JL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlJwpw a2dfY3ZfSEFSRkJVWlpfTElCUz0tbGhhcmZidXp6CnBrZ19jdl9KU09OX0NGTEFHUz0KcGtn X2N2X0pTT05fTElCUz0tbGphbnNzb24KcGtnX2N2X0xDTVMyX0NGTEFHUz0KcGtnX2N2X0xD TVMyX0xJQlM9LWxsY21zMgpwa2dfY3ZfTElCR05VVExTX0NGTEFHUz0tSS91c3IvaW5jbHVk ZS9wMTEta2l0LTEKcGtnX2N2X0xJQkdOVVRMU19MSUJTPS1sZ251dGxzCnBrZ19jdl9MSUJP VEZfQ0ZMQUdTPSctSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvbGli cG5nMTYnCnBrZ19jdl9MSUJPVEZfTElCUz0nLWxvdGYgLWxmcmVldHlwZScKcGtnX2N2X0xJ QlNZU1RFTURfQ0ZMQUdTPQpwa2dfY3ZfTElCU1lTVEVNRF9MSUJTPS1sc3lzdGVtZApwa2df Y3ZfTElCWE1MMl9DRkxBR1M9LUkvdXNyL2luY2x1ZGUvbGlieG1sMgpwa2dfY3ZfTElCWE1M Ml9MSUJTPS1seG1sMgpwa2dfY3ZfTTE3Tl9GTFRfQ0ZMQUdTPQpwa2dfY3ZfTTE3Tl9GTFRf TElCUz0nLWxtMTduLWNvcmUgLWxtMTduLWZsdCAtbG0xN24tY29yZScKcGtnX2N2X1BOR19D RkxBR1M9LUkvdXNyL2luY2x1ZGUvbGlicG5nMTYKcGtnX2N2X1BOR19MSUJTPS1scG5nMTYK cGtnX2N2X1JTVkdfQ0ZMQUdTPSctcHRocmVhZCAtSS91c3IvaW5jbHVkZS9saWJyc3ZnLTIu MCAtSS91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtSS91c3IvaW5jbHVkZS94ODZfNjQt bGludXgtZ251IC1JL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1JL3Vzci9pbmNsdWRlL2Jsa2lk IC1JL3Vzci9pbmNsdWRlL2NhaXJvIC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9s aWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL3Bp eG1hbi0xIC1JL3Vzci9pbmNsdWRlL3V1aWQgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1J L3Vzci9pbmNsdWRlL2xpYnBuZzE2Jwpwa2dfY3ZfUlNWR19MSUJTPSctbHJzdmctMiAtbG0g LWxnaW8tMi4wIC1sZ2RrX3BpeGJ1Zi0yLjAgLWxnb2JqZWN0LTIuMCAtbGdsaWItMi4wIC1s Y2Fpcm8nCnBrZ19jdl9XRUJQX0NGTEFHUz0tSS91c3IvaW5jbHVkZS93ZWJwCnBrZ19jdl9X RUJQX0xJQlM9Jy1sd2VicGRlbXV4IC1sd2VicGRlY29kZXInCnBrZ19jdl9YRklYRVNfQ0ZM QUdTPQpwa2dfY3ZfWEZJWEVTX0xJQlM9LWxYZml4ZXMKcGtnX2N2X1hJTkVSQU1BX0NGTEFH Uz0KcGtnX2N2X1hJTkVSQU1BX0xJQlM9LWxYaW5lcmFtYQpwa2dfY3ZfWElOUFVUX0NGTEFH Uz0KcGtnX2N2X1hJTlBVVF9MSUJTPS1sWGkKcGtnX2N2X1hSQU5EUl9DRkxBR1M9CnBrZ19j dl9YUkFORFJfTElCUz0tbFhyYW5kcgoKIyMgLS0tLS0tLS0tLS0tLS0tLS0gIyMKIyMgT3V0 cHV0IHZhcmlhYmxlcy4gIyMKIyMgLS0tLS0tLS0tLS0tLS0tLS0gIyMKCkFMTE9DQT0nJwpB TExPQ0FfSD0nYWxsb2NhLmgnCkFMU0FfQ0ZMQUdTPScnCkFMU0FfTElCUz0nLWxhc291bmQn CkFNX0RFRkFVTFRfVkVSQk9TSVRZPScwJwpBUFBMRV9VTklWRVJTQUxfQlVJTEQ9JzAnCkFS PSdhcicKQVJGTEFHUz0nY3InCkFTU0VSVF9IPScnCkFVVE9fREVQRU5EPSd5ZXMnCkFXSz0n Z2F3aycKQklUU0laRU9GX1BUUkRJRkZfVD0nJwpCSVRTSVpFT0ZfU0lHX0FUT01JQ19UPScn CkJJVFNJWkVPRl9TSVpFX1Q9JycKQklUU0laRU9GX1dDSEFSX1Q9JycKQklUU0laRU9GX1dJ TlRfVD0nJwpCTEVTU01BSUxfVEFSR0VUPScnCkJSRVc9JycKQlVJTERfREVUQUlMUz0nJwpC WVRFU1dBUF9IPScnCkNBSVJPX0NGTEFHUz0nLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJv IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZf NjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3Bp eG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0 ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJw bmcxNicKQ0FJUk9fTElCUz0nLWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNiLXJlbmRlcicK Q0FJUk9fWENCX0NGTEFHUz0nLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgt Z251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1p c3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlw ZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2JwpDQUlST19YQ0JfTElCUz0nLWxj YWlybyAtbHhjYiAtbHhjYi1yZW5kZXInCkNBSVJPX1hMSUJfQ0ZMQUdTPScnCkNBSVJPX1hM SUJfTElCUz0nJwpDQz0nZ2NjJwpDRkxBR1M9Jy1nMyAtTzInCkNGTEFHU19TT1VORD0nICcK Q0hFQ0tfU1RSVUNUUz0nZmFsc2UnCkNMSUVOVFJFUz0nJwpDTElFTlRXPScnCkNMT0NLX1RJ TUVfTElCPScnCkNNX09CSj0nY20ubycKQ09NX0VSUkxJQj0nJwpDUFA9J2djYyAtRScKQ1BQ RkxBR1M9JyAgJwpDUllQVE9MSUI9JycKQ1hYPScnCkNYWEZMQUdTPScnCkNZR1dJTl9PQko9 JycKQ19TV0lUQ0hfTUFDSElORT0nJwpDX1NXSVRDSF9TWVNURU09JycKQ19TV0lUQ0hfWF9T SVRFPScgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2d0ay0zLjAgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2F0LXNwaTItYXRrLzIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYXQt c3BpLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZGJ1cy0xLjAgLWlzeXN0ZW0gL3Vzci9s aWIveDg2XzY0LWxpbnV4LWdudS9kYnVzLTEuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9ndGstMy4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9naW8tdW5peC0yLjAgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9wYW5nby0xLjAg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9w YW5nby0xLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyaWJpZGkgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2hhcmZidXp6IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9hdGstMS4wIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBl MiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251 IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv YmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGli L3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZScKREJVU19DRkxBR1M9Jy1pc3lz dGVtIC91c3IvaW5jbHVkZS9kYnVzLTEuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGlu dXgtZ251L2RidXMtMS4wL2luY2x1ZGUnCkRCVVNfTElCUz0nLWxkYnVzLTEnCkRCVVNfT0JK PSdkYnVzYmluZC5vJwpERUZTPSctREhBVkVfQ09ORklHX0gnCkRFU0xJQj0nJwpET0NNSVND X1czMj0nJwpEVU1QSU5HPSdwZHVtcGVyJwpEWU5BTUlDX0xJQl9TRUNPTkRBUllfU1VGRklY PScnCkRZTkFNSUNfTElCX1NVRkZJWD0nLnNvJwpEWU5MSUJfT0JKPSdkeW5saWIubycKRUNI T19DPScnCkVDSE9fTj0nLW4nCkVDSE9fVD0nJwpFR1JFUD0nL3Vzci9iaW4vZ3JlcCAtRScK RU1BQ1NSRVM9JycKRU1BQ1NfTUFOSUZFU1Q9JycKRU1VTFRJSE9QX0hJRERFTj0nJwpFTVVM VElIT1BfVkFMVUU9JycKRU5PTElOS19ISURERU49JycKRU5PTElOS19WQUxVRT0nJwpFT1ZF UkZMT1dfSElEREVOPScnCkVPVkVSRkxPV19WQUxVRT0nJwpFUlJOT19IPScnCkVVSURBQ0NF U1NfTElCR0VOPScnCkVYRUNJTkZPX0g9JycKRVhFRVhUPScnCkZJTEVfSEFTX0FDTF9MSUI9 JycKRklORF9ERUxFVEU9Jy1kZWxldGUnCkZJUlNURklMRV9PQko9JycKRk9OVENPTkZJR19D RkxBR1M9Jy1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2JwpGT05UQ09ORklH X0xJQlM9Jy1sZm9udGNvbmZpZyAtbGZyZWV0eXBlJwpGT05UX09CSj0neGZvbnQubyBmdGZv bnQubyBmdGNyZm9udC5vIGhiZm9udC5vJwpGUkVFVFlQRV9DRkxBR1M9Jy1pc3lzdGVtIC91 c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2JwpG UkVFVFlQRV9MSUJTPSctbGZyZWV0eXBlJwpHQ09ORl9DRkxBR1M9JycKR0NPTkZfTElCUz0n JwpHRVRBRERSSU5GT19BX0xJQlM9Jy1sYW5sJwpHRVRMT0FEQVZHX0xJQlM9JycKR0VUT1BU X0NERUZTX0g9JycKR0VUT1BUX0g9JycKR0VUUkFORE9NX0xJQj0nJwpHRklMRU5PVElGWV9D RkxBR1M9JycKR0ZJTEVOT1RJRllfTElCUz0nJwpHTF9DRkxBR19BTExPV19XQVJOSU5HUz0n LVduby1lcnJvcicKR0xfQ0ZMQUdfR05VTElCX1dBUk5JTkdTPScgLVduby1jYXN0LXF1YWwg LVduby1jb252ZXJzaW9uIC1Xbm8tZmxvYXQtZXF1YWwgLVduby1zaWduLWNvbXBhcmUgLVdu by11bmRlZiAtV25vLXVudXNlZC1mdW5jdGlvbiAtV25vLXVudXNlZC1wYXJhbWV0ZXIgLVdu by1mbG9hdC1jb252ZXJzaW9uIC1XaW1wbGljaXQtZmFsbHRocm91Z2ggLVduby1wZWRhbnRp YyAtV25vLXNpZ24tY29udmVyc2lvbiAtV25vLXR5cGUtbGltaXRzIC1Xbm8tdW5zdWZmaXhl ZC1mbG9hdC1jb25zdGFudHMnCkdMX0NPTkRfTElCVE9PTF9DT05ESVRJT049JycKR0xfQ09O RF9PQkpfQ0FOT05JQ0FMSVpFX0xHUExfQ09ORElUSU9OPScnCkdMX0NPTkRfT0JKX0NPUFlf RklMRV9SQU5HRV9DT05ESVRJT049JycKR0xfQ09ORF9PQkpfRElSRkRfQ09ORElUSU9OPScn CkdMX0NPTkRfT0JKX0RVUDJfQ09ORElUSU9OPScnCkdMX0NPTkRfT0JKX0VVSURBQ0NFU1Nf Q09ORElUSU9OPScnCkdMX0NPTkRfT0JKX0VYRUNJTkZPX0NPTkRJVElPTj0nJwpHTF9DT05E X09CSl9GQUNDRVNTQVRfQ09ORElUSU9OPScnCkdMX0NPTkRfT0JKX0ZDSE1PREFUX0NPTkRJ VElPTj0nJwpHTF9DT05EX09CSl9GQ05UTF9DT05ESVRJT049JzEnCkdMX0NPTkRfT0JKX0ZE T1BFTkRJUl9DT05ESVRJT049JycKR0xfQ09ORF9PQkpfRlBFTkRJTkdfQ09ORElUSU9OPScn CkdMX0NPTkRfT0JKX0ZSRUVfQ09ORElUSU9OPScnCkdMX0NPTkRfT0JKX0ZTVEFUQVRfQ09O RElUSU9OPScnCkdMX0NPTkRfT0JKX0ZTVVNBR0VfQ09ORElUSU9OPScxJwpHTF9DT05EX09C Sl9GU1lOQ19DT05ESVRJT049JycKR0xfQ09ORF9PQkpfRlVUSU1FTlNfQ09ORElUSU9OPScn CkdMX0NPTkRfT0JKX0dFVERUQUJMRVNJWkVfQ09ORElUSU9OPScnCkdMX0NPTkRfT0JKX0dF VEdST1VQU19DT05ESVRJT049JycKR0xfQ09ORF9PQkpfR0VUTE9BREFWR19DT05ESVRJT049 JycKR0xfQ09ORF9PQkpfR0VUT1BUX0NPTkRJVElPTj0nJwpHTF9DT05EX09CSl9HRVRSQU5E T01fQ09ORElUSU9OPScnCkdMX0NPTkRfT0JKX0dFVFRJTUVPRkRBWV9DT05ESVRJT049JycK R0xfQ09ORF9PQkpfR1JPVVBfTUVNQkVSX0NPTkRJVElPTj0nJwpHTF9DT05EX09CSl9MQ0hN T0RfQ09ORElUSU9OPScnCkdMX0NPTkRfT0JKX0xTVEFUX0NPTkRJVElPTj0nJwpHTF9DT05E X09CSl9NRU1QQ1BZX0NPTkRJVElPTj0nJwpHTF9DT05EX09CSl9NRU1SQ0hSX0NPTkRJVElP Tj0nJwpHTF9DT05EX09CSl9NRU1TRVRfRVhQTElDSVRfQ09ORElUSU9OPScxJwpHTF9DT05E X09CSl9NSU5JX0dNUF9HTlVMSUJfQ09ORElUSU9OPScnCkdMX0NPTkRfT0JKX01LT1NURU1Q X0NPTkRJVElPTj0nJwpHTF9DT05EX09CSl9OQU5PU0xFRVBfQ09ORElUSU9OPScxJwpHTF9D T05EX09CSl9PUEVOX0NPTkRJVElPTj0nJwpHTF9DT05EX09CSl9QU0VMRUNUX0NPTkRJVElP Tj0nJwpHTF9DT05EX09CSl9QVEhSRUFEX1NJR01BU0tfQ09ORElUSU9OPScnCkdMX0NPTkRf T0JKX1JBV01FTUNIUl9DT05ESVRJT049JycKR0xfQ09ORF9PQkpfUkVBRExJTktBVF9DT05E SVRJT049JycKR0xfQ09ORF9PQkpfUkVBRExJTktfQ09ORElUSU9OPScnCkdMX0NPTkRfT0JK X1JFR0VYX0NPTkRJVElPTj0nJwpHTF9DT05EX09CSl9TSUcyU1RSX0NPTkRJVElPTj0nMScK R0xfQ09ORF9PQkpfU0lHREVTQ1JfTlBfQ09ORElUSU9OPScnCkdMX0NPTkRfT0JKX1NURElP X1JFQURfQ09ORElUSU9OPScnCkdMX0NPTkRfT0JKX1NURElPX1dSSVRFX0NPTkRJVElPTj0n JwpHTF9DT05EX09CSl9TVFBDUFlfQ09ORElUSU9OPScnCkdMX0NPTkRfT0JKX1NUUk5MRU5f Q09ORElUSU9OPScnCkdMX0NPTkRfT0JKX1NUUlRPSU1BWF9DT05ESVRJT049JycKR0xfQ09O RF9PQkpfU1RSVE9MTF9DT05ESVRJT049JycKR0xfQ09ORF9PQkpfU1lNTElOS19DT05ESVRJ T049JycKR0xfQ09ORF9PQkpfVElNRUdNX0NPTkRJVElPTj0nMScKR0xfQ09ORF9PQkpfVElN RV9SWl9DT05ESVRJT049JzEnCkdMX0NPTkRfT0JKX1RJTUVfUl9DT05ESVRJT049JycKR0xf Q09ORF9PQkpfVVRJTUVOU0FUX0NPTkRJVElPTj0nJwpHTF9HRU5FUkFURV9BTExPQ0FfSF9D T05ESVRJT049JzEnCkdMX0dFTkVSQVRFX0FTU0VSVF9IX0NPTkRJVElPTj0nJwpHTF9HRU5F UkFURV9CWVRFU1dBUF9IX0NPTkRJVElPTj0nJwpHTF9HRU5FUkFURV9FUlJOT19IX0NPTkRJ VElPTj0nJwpHTF9HRU5FUkFURV9FWEVDSU5GT19IX0NPTkRJVElPTj0nJwpHTF9HRU5FUkFU RV9HRVRPUFRfQ0RFRlNfSF9DT05ESVRJT049JycKR0xfR0VORVJBVEVfR0VUT1BUX0hfQ09O RElUSU9OPScnCkdMX0dFTkVSQVRFX0dNUF9HTVBfSF9DT05ESVRJT049JycKR0xfR0VORVJB VEVfR01QX0hfQ09ORElUSU9OPScnCkdMX0dFTkVSQVRFX0lFRUU3NTRfSF9DT05ESVRJT049 JycKR0xfR0VORVJBVEVfTElNSVRTX0hfQ09ORElUSU9OPScxJwpHTF9HRU5FUkFURV9NSU5J X0dNUF9IX0NPTkRJVElPTj0nJwpHTF9HRU5FUkFURV9TVERDS0RJTlRfSF9DT05ESVRJT049 JzEnCkdMX0dFTkVSQVRFX1NURERFRl9IX0NPTkRJVElPTj0nJwpHTF9HRU5FUkFURV9TVERJ TlRfSF9DT05ESVRJT049JycKR0xfR05VTElCX0FDQ0VTUz0nMCcKR0xfR05VTElCX0FMSUdO RURfQUxMT0M9JzAnCkdMX0dOVUxJQl9BTFBIQVNPUlQ9JzAnCkdMX0dOVUxJQl9BVE9MTD0n MCcKR0xfR05VTElCX0NBTExPQ19HTlU9JzAnCkdMX0dOVUxJQl9DQUxMT0NfUE9TSVg9JzAn CkdMX0dOVUxJQl9DQU5PTklDQUxJWkVfRklMRV9OQU1FPScxJwpHTF9HTlVMSUJfQ0hESVI9 JzAnCkdMX0dOVUxJQl9DSE1PRD0nMCcKR0xfR05VTElCX0NIT1dOPScwJwpHTF9HTlVMSUJf Q0xPU0U9JzAnCkdMX0dOVUxJQl9DTE9TRURJUj0nMCcKR0xfR05VTElCX0NPUFlfRklMRV9S QU5HRT0nMScKR0xfR05VTElCX0NSRUFUPScwJwpHTF9HTlVMSUJfQ1RJTUU9JzAnCkdMX0dO VUxJQl9ESVJGRD0nMCcKR0xfR05VTElCX0RQUklOVEY9JzAnCkdMX0dOVUxJQl9EVVAyPScx JwpHTF9HTlVMSUJfRFVQMz0nMCcKR0xfR05VTElCX0RVUD0nMCcKR0xfR05VTElCX0VOVklS T049JzEnCkdMX0dOVUxJQl9FVUlEQUNDRVNTPScwJwpHTF9HTlVMSUJfRVhFQ0w9JzAnCkdM X0dOVUxJQl9FWEVDTEU9JzAnCkdMX0dOVUxJQl9FWEVDTFA9JzAnCkdMX0dOVUxJQl9FWEVD Vj0nMCcKR0xfR05VTElCX0VYRUNWRT0nMCcKR0xfR05VTElCX0VYRUNWUD0nMCcKR0xfR05V TElCX0VYRUNWUEU9JzAnCkdMX0dOVUxJQl9FWFBMSUNJVF9CWkVSTz0nMCcKR0xfR05VTElC X0ZBQ0NFU1NBVD0nMScKR0xfR05VTElCX0ZDSERJUj0nMCcKR0xfR05VTElCX0ZDSE1PREFU PScxJwpHTF9HTlVMSUJfRkNIT1dOQVQ9JzAnCkdMX0dOVUxJQl9GQ0xPU0U9JzAnCkdMX0dO VUxJQl9GQ05UTD0nMScKR0xfR05VTElCX0ZEQVRBU1lOQz0nMCcKR0xfR05VTElCX0ZET1BF Tj0nMCcKR0xfR05VTElCX0ZET1BFTkRJUj0nMScKR0xfR05VTElCX0ZGTFVTSD0nMCcKR0xf R05VTElCX0ZGU0w9JzAnCkdMX0dOVUxJQl9GRlNMTD0nMCcKR0xfR05VTElCX0ZHRVRDPScx JwpHTF9HTlVMSUJfRkdFVFM9JzEnCkdMX0dOVUxJQl9GT1BFTj0nMCcKR0xfR05VTElCX0ZP UEVOX0dOVT0nMCcKR0xfR05VTElCX0ZQUklOVEY9JzEnCkdMX0dOVUxJQl9GUFJJTlRGX1BP U0lYPScwJwpHTF9HTlVMSUJfRlBVUkdFPScwJwpHTF9HTlVMSUJfRlBVVEM9JzEnCkdMX0dO VUxJQl9GUFVUUz0nMScKR0xfR05VTElCX0ZSRUFEPScxJwpHTF9HTlVMSUJfRlJFRV9QT1NJ WD0nMScKR0xfR05VTElCX0ZSRU9QRU49JzAnCkdMX0dOVUxJQl9GU0NBTkY9JzEnCkdMX0dO VUxJQl9GU0VFSz0nMCcKR0xfR05VTElCX0ZTRUVLTz0nMCcKR0xfR05VTElCX0ZTVEFUPScw JwpHTF9HTlVMSUJfRlNUQVRBVD0nMScKR0xfR05VTElCX0ZTWU5DPScxJwpHTF9HTlVMSUJf RlRFTEw9JzAnCkdMX0dOVUxJQl9GVEVMTE89JzAnCkdMX0dOVUxJQl9GVFJVTkNBVEU9JzAn CkdMX0dOVUxJQl9GVVRJTUVOUz0nMScKR0xfR05VTElCX0ZXUklURT0nMScKR0xfR05VTElC X0dFVEM9JzEnCkdMX0dOVUxJQl9HRVRDSEFSPScxJwpHTF9HTlVMSUJfR0VUQ1dEPScwJwpH TF9HTlVMSUJfR0VUREVMSU09JzAnCkdMX0dOVUxJQl9HRVRET01BSU5OQU1FPScwJwpHTF9H TlVMSUJfR0VURFRBQkxFU0laRT0nMScKR0xfR05VTElCX0dFVEVOVFJPUFk9JzAnCkdMX0dO VUxJQl9HRVRHUk9VUFM9JzAnCkdMX0dOVUxJQl9HRVRIT1NUTkFNRT0nMCcKR0xfR05VTElC X0dFVExJTkU9JzAnCkdMX0dOVUxJQl9HRVRMT0FEQVZHPScxJwpHTF9HTlVMSUJfR0VUTE9H SU49JzAnCkdMX0dOVUxJQl9HRVRMT0dJTl9SPScwJwpHTF9HTlVMSUJfR0VUT1BUX1BPU0lY PScxJwpHTF9HTlVMSUJfR0VUUEFHRVNJWkU9JzAnCkdMX0dOVUxJQl9HRVRQQVNTPScwJwpH TF9HTlVMSUJfR0VUUEFTU19HTlU9JzAnCkdMX0dOVUxJQl9HRVRQUk9HTkFNRT0nMCcKR0xf R05VTElCX0dFVFJBTkRPTT0nMScKR0xfR05VTElCX0dFVFNVQk9QVD0nMCcKR0xfR05VTElC X0dFVFRJTUVPRkRBWT0nMScKR0xfR05VTElCX0dFVFVNQVNLPScwJwpHTF9HTlVMSUJfR0VU VVNFUlNIRUxMPScwJwpHTF9HTlVMSUJfR1JBTlRQVD0nMCcKR0xfR05VTElCX0dST1VQX01F TUJFUj0nMCcKR0xfR05VTElCX0lNQVhBQlM9JzAnCkdMX0dOVUxJQl9JTUFYRElWPScwJwpH TF9HTlVMSUJfSVNBVFRZPScwJwpHTF9HTlVMSUJfTENITU9EPScwJwpHTF9HTlVMSUJfTENI T1dOPScwJwpHTF9HTlVMSUJfTElOSz0nMCcKR0xfR05VTElCX0xJTktBVD0nMCcKR0xfR05V TElCX0xPQ0FMVElNRT0nMCcKR0xfR05VTElCX0xTRUVLPScwJwpHTF9HTlVMSUJfTFNUQVQ9 JzEnCkdMX0dOVUxJQl9NQUxMT0NfR05VPScwJwpHTF9HTlVMSUJfTUFMTE9DX1BPU0lYPScw JwpHTF9HTlVMSUJfTUJTQ0FTRUNNUD0nMCcKR0xfR05VTElCX01CU0NBU0VTVFI9JzAnCkdM X0dOVUxJQl9NQlNDSFI9JzAnCkdMX0dOVUxJQl9NQlNDU1BOPScwJwpHTF9HTlVMSUJfTUJT TEVOPScwJwpHTF9HTlVMSUJfTUJTTkNBU0VDTVA9JzAnCkdMX0dOVUxJQl9NQlNOTEVOPScw JwpHTF9HTlVMSUJfTUJTUEJSSz0nMCcKR0xfR05VTElCX01CU1BDQVNFQ01QPScwJwpHTF9H TlVMSUJfTUJTUkNIUj0nMCcKR0xfR05VTElCX01CU1NFUD0nMCcKR0xfR05VTElCX01CU1NQ Tj0nMCcKR0xfR05VTElCX01CU1NUUj0nMCcKR0xfR05VTElCX01CU1RPS19SPScwJwpHTF9H TlVMSUJfTUJUT1dDPScwJwpHTF9HTlVMSUJfTURBX0FDQ0VTUz0nMScKR0xfR05VTElCX01E QV9DSERJUj0nMScKR0xfR05VTElCX01EQV9DSE1PRD0nMScKR0xfR05VTElCX01EQV9DTE9T RT0nMScKR0xfR05VTElCX01EQV9DUkVBVD0nMScKR0xfR05VTElCX01EQV9EVVAyPScxJwpH TF9HTlVMSUJfTURBX0RVUD0nMScKR0xfR05VTElCX01EQV9FQ1ZUPScxJwpHTF9HTlVMSUJf TURBX0VYRUNMPScxJwpHTF9HTlVMSUJfTURBX0VYRUNMRT0nMScKR0xfR05VTElCX01EQV9F WEVDTFA9JzEnCkdMX0dOVUxJQl9NREFfRVhFQ1Y9JzEnCkdMX0dOVUxJQl9NREFfRVhFQ1ZF PScxJwpHTF9HTlVMSUJfTURBX0VYRUNWUD0nMScKR0xfR05VTElCX01EQV9FWEVDVlBFPScx JwpHTF9HTlVMSUJfTURBX0ZDTE9TRUFMTD0nMScKR0xfR05VTElCX01EQV9GQ1ZUPScxJwpH TF9HTlVMSUJfTURBX0ZET1BFTj0nMScKR0xfR05VTElCX01EQV9GSUxFTk89JzEnCkdMX0dO VUxJQl9NREFfR0NWVD0nMScKR0xfR05VTElCX01EQV9HRVRDV0Q9JzEnCkdMX0dOVUxJQl9N REFfR0VUUElEPScxJwpHTF9HTlVMSUJfTURBX0dFVFc9JzEnCkdMX0dOVUxJQl9NREFfSVNB VFRZPScxJwpHTF9HTlVMSUJfTURBX0xTRUVLPScxJwpHTF9HTlVMSUJfTURBX01FTUNDUFk9 JzEnCkdMX0dOVUxJQl9NREFfTUtESVI9JzEnCkdMX0dOVUxJQl9NREFfTUtURU1QPScxJwpH TF9HTlVMSUJfTURBX09QRU49JzEnCkdMX0dOVUxJQl9NREFfUFVURU5WPScxJwpHTF9HTlVM SUJfTURBX1BVVFc9JzEnCkdMX0dOVUxJQl9NREFfUkVBRD0nMScKR0xfR05VTElCX01EQV9S TURJUj0nMScKR0xfR05VTElCX01EQV9TVFJEVVA9JzEnCkdMX0dOVUxJQl9NREFfU1dBQj0n MScKR0xfR05VTElCX01EQV9URU1QTkFNPScxJwpHTF9HTlVMSUJfTURBX1RaU0VUPScxJwpH TF9HTlVMSUJfTURBX1VNQVNLPScxJwpHTF9HTlVMSUJfTURBX1VOTElOSz0nMScKR0xfR05V TElCX01EQV9XUklURT0nMScKR0xfR05VTElCX01FTUNIUj0nMCcKR0xfR05VTElCX01FTU1F TT0nMScKR0xfR05VTElCX01FTVBDUFk9JzEnCkdMX0dOVUxJQl9NRU1SQ0hSPScxJwpHTF9H TlVMSUJfTUVNU0VUX0VYUExJQ0lUPScxJwpHTF9HTlVMSUJfTUtESVI9JzAnCkdMX0dOVUxJ Ql9NS0RJUkFUPScwJwpHTF9HTlVMSUJfTUtEVEVNUD0nMCcKR0xfR05VTElCX01LRklGTz0n MCcKR0xfR05VTElCX01LRklGT0FUPScwJwpHTF9HTlVMSUJfTUtOT0Q9JzAnCkdMX0dOVUxJ Ql9NS05PREFUPScwJwpHTF9HTlVMSUJfTUtPU1RFTVA9JzEnCkdMX0dOVUxJQl9NS09TVEVN UFM9JzAnCkdMX0dOVUxJQl9NS1NURU1QPScwJwpHTF9HTlVMSUJfTUtTVEVNUFM9JzAnCkdM X0dOVUxJQl9NS1RJTUU9JzEnCkdMX0dOVUxJQl9OQU5PU0xFRVA9JzEnCkdMX0dOVUxJQl9O T05CTE9DS0lORz0nMCcKR0xfR05VTElCX09CU1RBQ0tfUFJJTlRGPScwJwpHTF9HTlVMSUJf T0JTVEFDS19QUklOVEZfUE9TSVg9JzAnCkdMX0dOVUxJQl9PUEVOPScwJwpHTF9HTlVMSUJf T1BFTkFUPScwJwpHTF9HTlVMSUJfT1BFTkRJUj0nMCcKR0xfR05VTElCX09WRVJSSURFU19T VFJVQ1RfU1RBVD0nMCcKR0xfR05VTElCX1BDTE9TRT0nMCcKR0xfR05VTElCX1BFUlJPUj0n MCcKR0xfR05VTElCX1BJUEUyPScxJwpHTF9HTlVMSUJfUElQRT0nMCcKR0xfR05VTElCX1BP UEVOPScwJwpHTF9HTlVMSUJfUE9TSVhfTUVNQUxJR049JzAnCkdMX0dOVUxJQl9QT1NJWF9P UEVOUFQ9JzAnCkdMX0dOVUxJQl9QUkVBRD0nMCcKR0xfR05VTElCX1BSSU5URj0nMScKR0xf R05VTElCX1BSSU5URl9QT1NJWD0nMCcKR0xfR05VTElCX1BTRUxFQ1Q9JzEnCkdMX0dOVUxJ Ql9QVEhSRUFEX1NJR01BU0s9JzEnCkdMX0dOVUxJQl9QVFNOQU1FPScwJwpHTF9HTlVMSUJf UFRTTkFNRV9SPScwJwpHTF9HTlVMSUJfUFVUQz0nMScKR0xfR05VTElCX1BVVENIQVI9JzEn CkdMX0dOVUxJQl9QVVRFTlY9JzAnCkdMX0dOVUxJQl9QVVRTPScxJwpHTF9HTlVMSUJfUFdS SVRFPScwJwpHTF9HTlVMSUJfUVNPUlRfUj0nMCcKR0xfR05VTElCX1JBSVNFPScwJwpHTF9H TlVMSUJfUkFORE9NPScwJwpHTF9HTlVMSUJfUkFORE9NX1I9JzAnCkdMX0dOVUxJQl9SQVdN RU1DSFI9JzAnCkdMX0dOVUxJQl9SRUFEPScwJwpHTF9HTlVMSUJfUkVBRERJUj0nMCcKR0xf R05VTElCX1JFQURMSU5LPScxJwpHTF9HTlVMSUJfUkVBRExJTktBVD0nMScKR0xfR05VTElC X1JFQUxMT0NBUlJBWT0nMCcKR0xfR05VTElCX1JFQUxMT0NfR05VPScwJwpHTF9HTlVMSUJf UkVBTExPQ19QT1NJWD0nMCcKR0xfR05VTElCX1JFQUxQQVRIPScxJwpHTF9HTlVMSUJfUkVN T1ZFPScwJwpHTF9HTlVMSUJfUkVOQU1FPScwJwpHTF9HTlVMSUJfUkVOQU1FQVQ9JzAnCkdM X0dOVUxJQl9SRVdJTkRESVI9JzAnCkdMX0dOVUxJQl9STURJUj0nMCcKR0xfR05VTElCX1JQ TUFUQ0g9JzAnCkdMX0dOVUxJQl9TQ0FORElSPScwJwpHTF9HTlVMSUJfU0NBTkY9JzEnCkdM X0dOVUxJQl9TRUNVUkVfR0VURU5WPScwJwpHTF9HTlVMSUJfU0VMRUNUPScwJwpHTF9HTlVM SUJfU0VURU5WPScwJwpHTF9HTlVMSUJfU0VUSE9TVE5BTUU9JzAnCkdMX0dOVUxJQl9TSUdB QkJSRVZfTlA9JzAnCkdMX0dOVUxJQl9TSUdBQ1RJT049JzAnCkdMX0dOVUxJQl9TSUdERVND Ul9OUD0nMScKR0xfR05VTElCX1NJR05BTF9IX1NJR1BJUEU9JzAnCkdMX0dOVUxJQl9TSUdQ Uk9DTUFTSz0nMCcKR0xfR05VTElCX1NMRUVQPScwJwpHTF9HTlVMSUJfU05QUklOVEY9JzAn CkdMX0dOVUxJQl9TUFJJTlRGX1BPU0lYPScwJwpHTF9HTlVMSUJfU1RBVD0nMCcKR0xfR05V TElCX1NURElPX0hfTk9OQkxPQ0tJTkc9JzAnCkdMX0dOVUxJQl9TVERJT19IX1NJR1BJUEU9 JzAnCkdMX0dOVUxJQl9TVFBDUFk9JzEnCkdMX0dOVUxJQl9TVFBOQ1BZPScwJwpHTF9HTlVM SUJfU1RSQ0FTRVNUUj0nMCcKR0xfR05VTElCX1NUUkNIUk5VTD0nMCcKR0xfR05VTElCX1NU UkRVUD0nMCcKR0xfR05VTElCX1NUUkVSUk9SPScwJwpHTF9HTlVMSUJfU1RSRVJST1JOQU1F X05QPScwJwpHTF9HTlVMSUJfU1RSRVJST1JfUj0nMCcKR0xfR05VTElCX1NUUkZUSU1FPScw JwpHTF9HTlVMSUJfU1RSTkNBVD0nMCcKR0xfR05VTElCX1NUUk5EVVA9JzAnCkdMX0dOVUxJ Ql9TVFJOTEVOPScxJwpHTF9HTlVMSUJfU1RSUEJSSz0nMCcKR0xfR05VTElCX1NUUlBUSU1F PScwJwpHTF9HTlVMSUJfU1RSU0VQPScwJwpHTF9HTlVMSUJfU1RSU0lHTkFMPScwJwpHTF9H TlVMSUJfU1RSU1RSPScwJwpHTF9HTlVMSUJfU1RSVE9EPScwJwpHTF9HTlVMSUJfU1RSVE9J TUFYPScxJwpHTF9HTlVMSUJfU1RSVE9LX1I9JzAnCkdMX0dOVUxJQl9TVFJUT0w9JzAnCkdM X0dOVUxJQl9TVFJUT0xEPScwJwpHTF9HTlVMSUJfU1RSVE9MTD0nMCcKR0xfR05VTElCX1NU UlRPVUw9JzAnCkdMX0dOVUxJQl9TVFJUT1VMTD0nMCcKR0xfR05VTElCX1NUUlRPVU1BWD0n MCcKR0xfR05VTElCX1NUUlZFUlNDTVA9JzAnCkdMX0dOVUxJQl9TWU1MSU5LPScxJwpHTF9H TlVMSUJfU1lNTElOS0FUPScwJwpHTF9HTlVMSUJfU1lTVEVNX1BPU0lYPScwJwpHTF9HTlVM SUJfVElNRUdNPScxJwpHTF9HTlVMSUJfVElNRVNQRUNfR0VUPScwJwpHTF9HTlVMSUJfVElN RVNQRUNfR0VUUkVTPScwJwpHTF9HTlVMSUJfVElNRV9SPScxJwpHTF9HTlVMSUJfVElNRV9S Wj0nMScKR0xfR05VTElCX1RNUEZJTEU9JzAnCkdMX0dOVUxJQl9UUlVOQ0FURT0nMCcKR0xf R05VTElCX1RUWU5BTUVfUj0nMCcKR0xfR05VTElCX1RaU0VUPScwJwpHTF9HTlVMSUJfVU5J U1REX0hfR0VUT1BUPScwJwpHTF9HTlVMSUJfVU5JU1REX0hfTk9OQkxPQ0tJTkc9JzAnCkdM X0dOVUxJQl9VTklTVERfSF9TSUdQSVBFPScwJwpHTF9HTlVMSUJfVU5MSU5LPScwJwpHTF9H TlVMSUJfVU5MSU5LQVQ9JzAnCkdMX0dOVUxJQl9VTkxPQ0tQVD0nMCcKR0xfR05VTElCX1VO U0VURU5WPScwJwpHTF9HTlVMSUJfVVNMRUVQPScwJwpHTF9HTlVMSUJfVVRJTUVOU0FUPScx JwpHTF9HTlVMSUJfVkFTUFJJTlRGPScwJwpHTF9HTlVMSUJfVkRQUklOVEY9JzAnCkdMX0dO VUxJQl9WRlBSSU5URj0nMScKR0xfR05VTElCX1ZGUFJJTlRGX1BPU0lYPScwJwpHTF9HTlVM SUJfVkZTQ0FORj0nMCcKR0xfR05VTElCX1ZQUklOVEY9JzEnCkdMX0dOVUxJQl9WUFJJTlRG X1BPU0lYPScwJwpHTF9HTlVMSUJfVlNDQU5GPScwJwpHTF9HTlVMSUJfVlNOUFJJTlRGPScw JwpHTF9HTlVMSUJfVlNQUklOVEZfUE9TSVg9JzAnCkdMX0dOVUxJQl9XQ1RPTUI9JzAnCkdM X0dOVUxJQl9XUklURT0nMCcKR0xfR05VTElCX19FWElUPScwJwpHTUFMTE9DX09CSj0nJwpH TVBfSD0nJwpHTlVMSUJIRUFERVJTX09WRVJSSURFX1dJTlRfVD0nMCcKR05VTElCX0dFVFRJ TUVPRkRBWT0nMCcKR05VTElCX1dBUk5fQ0ZMQUdTPScgLWZuby1jb21tb24gLVdhbGwgLVdh cml0aC1jb252ZXJzaW9uIC1XZGF0ZS10aW1lIC1XZGlzYWJsZWQtb3B0aW1pemF0aW9uIC1X ZG91YmxlLXByb21vdGlvbiAtV2R1cGxpY2F0ZWQtY29uZCAtV2V4dHJhIC1XZm9ybWF0LXNp Z25lZG5lc3MgLVdpbml0LXNlbGYgLVdpbnZhbGlkLXBjaCAtV2xvZ2ljYWwtb3AgLVdtaXNz aW5nLWRlY2xhcmF0aW9ucyAtV21pc3NpbmctaW5jbHVkZS1kaXJzIC1XbWlzc2luZy1wcm90 b3R5cGVzIC1XbmVzdGVkLWV4dGVybnMgLVdudWxsLWRlcmVmZXJlbmNlIC1Xb2xkLXN0eWxl LWRlZmluaXRpb24gLVdvcGVubXAtc2ltZCAtV3BhY2tlZCAtV3BvaW50ZXItYXJpdGggLVdz dHJpY3QtcHJvdG90eXBlcyAtV3N1Z2dlc3QtYXR0cmlidXRlPWZvcm1hdCAtV3N1Z2dlc3Qt YXR0cmlidXRlPW5vcmV0dXJuIC1Xc3VnZ2VzdC1maW5hbC1tZXRob2RzIC1Xc3VnZ2VzdC1m aW5hbC10eXBlcyAtV3RyYW1wb2xpbmVzIC1XdW5pbml0aWFsaXplZCAtV3Vua25vd24tcHJh Z21hcyAtV3ZhcmlhZGljLW1hY3JvcyAtV3ZlY3Rvci1vcGVyYXRpb24tcGVyZm9ybWFuY2Ug LVd3cml0ZS1zdHJpbmdzIC1XYXJyYXktYm91bmRzPTIgLVdhdHRyaWJ1dGUtYWxpYXM9MiAt V2Zvcm1hdD0yIC1XZm9ybWF0LXRydW5jYXRpb249MiAtV2ltcGxpY2l0LWZhbGx0aHJvdWdo PTUgLVdzaGlmdC1vdmVyZmxvdz0yIC1XdXNlLWFmdGVyLWZyZWU9MyAtV3ZsYS1sYXJnZXIt dGhhbj00MDMxIC1XcmVkdW5kYW50LWRlY2xzIC1Xbm8tbWlzc2luZy1maWVsZC1pbml0aWFs aXplcnMgLVduby1vdmVycmlkZS1pbml0IC1Xbm8tc2lnbi1jb21wYXJlIC1Xbm8tdHlwZS1s aW1pdHMgLVduby11bnVzZWQtcGFyYW1ldGVyIC1Xbm8tZm9ybWF0LW5vbmxpdGVyYWwgLVdu by1iaWRpLWNoYXJzJwpHTlVTVEVQX0NGTEFHUz0nJwpHTlVfT0JKQ19DRkxBR1M9JycKR09C SkVDVF9DRkxBR1M9Jy1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAv dXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUnCkdPQkpFQ1RfTElC Uz0nLWxnb2JqZWN0LTIuMCAtbGdsaWItMi4wJwpHUkVQPScvdXNyL2Jpbi9ncmVwJwpHU0VU VElOR1NfQ0ZMQUdTPSctcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGli LTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1 ZGUnCkdTRVRUSU5HU19MSUJTPSctbGdpby0yLjAgLWxnb2JqZWN0LTIuMCAtbGdsaWItMi4w JwpHVEtfQ0ZMQUdTPSctcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ3RrLTMuMCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvYXQtc3BpMi1hdGsvMi4wIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9hdC1zcGktMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9kYnVzLTEuMCAtaXN5c3Rl bSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2RidXMtMS4wL2luY2x1ZGUgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2d0ay0zLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dpby11bml4LTIu MCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3Bh bmdvLTEuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvaGFyZmJ1enogLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3BhbmdvLTEuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJpYmlkaSAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvaGFyZmJ1enogLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2F0ay0xLjAg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXht YW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv ZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1s aW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0g L3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlJwpHVEtfTElCUz0n LWxndGstMyAtbGdkay0zIC1scGFuZ29jYWlyby0xLjAgLWxwYW5nby0xLjAgLWxoYXJmYnV6 eiAtbGF0ay0xLjAgLWxjYWlyby1nb2JqZWN0IC1sY2Fpcm8gLWxnZGtfcGl4YnVmLTIuMCAt bGdpby0yLjAgLWxnb2JqZWN0LTIuMCAtbGdsaWItMi4wJwpHVEtfT0JKPSdndGt1dGlsLm8g ZW1hY3NndGtmaXhlZC5vJwpHWklQX1BST0c9Jy91c3IvYmluL2d6aXAnCkhBSUtVX0NGTEFH Uz0nJwpIQUlLVV9DWFhfT0JKPScnCkhBSUtVX0xJQlM9JycKSEFJS1VfT0JKPScnCkhBUkZC VVpaX0NGTEFHUz0nLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1p c3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQt bGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUnCkhBUkZCVVpaX0xJQlM9Jy1saGFyZmJ1enon CkhBVkVfQUxJR05FRF9BTExPQz0nMScKSEFWRV9BTExPQ0FfSD0nMScKSEFWRV9BTFBIQVNP UlQ9JzEnCkhBVkVfQVRPTEw9JzEnCkhBVkVfQkVfQVBQPSdubycKSEFWRV9DOTlfU1RESU5U X0g9JzEnCkhBVkVfQ0FOT05JQ0FMSVpFX0ZJTEVfTkFNRT0nMScKSEFWRV9DSE9XTj0nMScK SEFWRV9DTE9TRURJUj0nMScKSEFWRV9DT1BZX0ZJTEVfUkFOR0U9JzEnCkhBVkVfREVDTF9E SVJGRD0nMScKSEFWRV9ERUNMX0VDVlQ9JzEnCkhBVkVfREVDTF9FTlZJUk9OPScxJwpIQVZF X0RFQ0xfRVhFQ1ZQRT0nMScKSEFWRV9ERUNMX0ZDSERJUj0nMScKSEFWRV9ERUNMX0ZDTE9T RUFMTD0nMScKSEFWRV9ERUNMX0ZDVlQ9JzEnCkhBVkVfREVDTF9GREFUQVNZTkM9JzEnCkhB VkVfREVDTF9GRE9QRU5ESVI9JzEnCkhBVkVfREVDTF9GUFVSR0U9JzEnCkhBVkVfREVDTF9G U0VFS089JzEnCkhBVkVfREVDTF9GVEVMTE89JzEnCkhBVkVfREVDTF9HQ1ZUPScxJwpIQVZF X0RFQ0xfR0VUREVMSU09JzEnCkhBVkVfREVDTF9HRVRET01BSU5OQU1FPScxJwpIQVZFX0RF Q0xfR0VUTElORT0nMScKSEFWRV9ERUNMX0dFVExPQURBVkc9JzEnCkhBVkVfREVDTF9HRVRM T0dJTj0nMScKSEFWRV9ERUNMX0dFVExPR0lOX1I9JzEnCkhBVkVfREVDTF9HRVRQQUdFU0la RT0nMScKSEFWRV9ERUNMX0dFVFVTRVJTSEVMTD0nMScKSEFWRV9ERUNMX0dFVFc9JzEnCkhB VkVfREVDTF9JTUFYQUJTPScxJwpIQVZFX0RFQ0xfSU1BWERJVj0nMScKSEFWRV9ERUNMX0lO SVRTVEFURT0nMScKSEFWRV9ERUNMX0xPQ0FMVElNRV9SPScxJwpIQVZFX0RFQ0xfTUVNTUVN PScxJwpIQVZFX0RFQ0xfTUVNUkNIUj0nMScKSEFWRV9ERUNMX09CU1RBQ0tfUFJJTlRGPScx JwpIQVZFX0RFQ0xfUE9TSVhfU1BBV05fU0VUU0lEPScnCkhBVkVfREVDTF9QVVRXPScxJwpI QVZFX0RFQ0xfU0VURU5WPScxJwpIQVZFX0RFQ0xfU0VUSE9TVE5BTUU9JzEnCkhBVkVfREVD TF9TRVRTVEFURT0nMScKSEFWRV9ERUNMX1NOUFJJTlRGPScxJwpIQVZFX0RFQ0xfU1RSRFVQ PScxJwpIQVZFX0RFQ0xfU1RSRVJST1JfUj0nMScKSEFWRV9ERUNMX1NUUk5EVVA9JzEnCkhB VkVfREVDTF9TVFJOTEVOPScxJwpIQVZFX0RFQ0xfU1RSU0lHTkFMPScxJwpIQVZFX0RFQ0xf U1RSVE9JTUFYPScxJwpIQVZFX0RFQ0xfU1RSVE9LX1I9JzEnCkhBVkVfREVDTF9TVFJUT1VN QVg9JzEnCkhBVkVfREVDTF9UUlVOQ0FURT0nMScKSEFWRV9ERUNMX1RUWU5BTUVfUj0nMScK SEFWRV9ERUNMX1VOU0VURU5WPScxJwpIQVZFX0RFQ0xfVlNOUFJJTlRGPScxJwpIQVZFX0RJ UkVOVF9IPScxJwpIQVZFX0RQUklOVEY9JzEnCkhBVkVfRFVQMz0nMScKSEFWRV9FVUlEQUND RVNTPScxJwpIQVZFX0VYRUNWUEU9JzEnCkhBVkVfRVhQTElDSVRfQlpFUk89JzEnCkhBVkVf RkFDQ0VTU0FUPScxJwpIQVZFX0ZDSERJUj0nMScKSEFWRV9GQ0hNT0RBVD0nMScKSEFWRV9G Q0hPV05BVD0nMScKSEFWRV9GQ05UTD0nMScKSEFWRV9GREFUQVNZTkM9JzEnCkhBVkVfRkRP UEVORElSPScxJwpIQVZFX0ZGU0w9JzEnCkhBVkVfRkZTTEw9JzEnCkhBVkVfRlNFRUtPPScx JwpIQVZFX0ZTVEFUQVQ9JzEnCkhBVkVfRlNZTkM9JzEnCkhBVkVfRlRFTExPPScxJwpIQVZF X0ZUUlVOQ0FURT0nMScKSEFWRV9GVVRJTUVOUz0nMScKSEFWRV9HRVREVEFCTEVTSVpFPScx JwpIQVZFX0dFVEVOVFJPUFk9JzEnCkhBVkVfR0VUR1JPVVBTPScxJwpIQVZFX0dFVEhPU1RO QU1FPScxJwpIQVZFX0dFVExPR0lOPScxJwpIQVZFX0dFVE9QVF9IPScxJwpIQVZFX0dFVFBB R0VTSVpFPScxJwpIQVZFX0dFVFBBU1M9JzEnCkhBVkVfR0VUUFJPR05BTUU9JzEnCkhBVkVf R0VUUkFORE9NPScxJwpIQVZFX0dFVFNVQk9QVD0nMScKSEFWRV9HRVRUSU1FT0ZEQVk9JzEn CkhBVkVfR0VUVU1BU0s9JzEnCkhBVkVfR1JBTlRQVD0nMScKSEFWRV9HUk9VUF9NRU1CRVI9 JzEnCkhBVkVfR1NFVFRJTkdTPSd5ZXMnCkhBVkVfSU1BWEFCUz0nMScKSEFWRV9JTUFYRElW PScxJwpIQVZFX0lNQVhESVZfVD0nMScKSEFWRV9JTklUU1RBVEU9JzEnCkhBVkVfSU5UVFlQ RVNfSD0nMScKSEFWRV9MQ0hNT0Q9JzEnCkhBVkVfTENIT1dOPScxJwpIQVZFX0xJQkdNUD0n eWVzJwpIQVZFX0xJQlNFQ0NPTVA9J25vJwpIQVZFX0xJTks9JzEnCkhBVkVfTElOS0FUPScx JwpIQVZFX0xTVEFUPScxJwpIQVZFX01BQ1BPUlRTPScnCkhBVkVfTUFYX0FMSUdOX1Q9JzEn CkhBVkVfTUJTTEVOPScwJwpIQVZFX01CVE9XQz0nMScKSEFWRV9NRU1QQ1BZPScxJwpIQVZF X01FTVNFVF9FWFBMSUNJVD0nMCcKSEFWRV9NS0RJUkFUPScxJwpIQVZFX01LRFRFTVA9JzEn CkhBVkVfTUtGSUZPPScxJwpIQVZFX01LRklGT0FUPScxJwpIQVZFX01LTk9EPScxJwpIQVZF X01LTk9EQVQ9JzEnCkhBVkVfTUtPU1RFTVA9JzEnCkhBVkVfTUtPU1RFTVBTPScxJwpIQVZF X01LU1RFTVA9JzEnCkhBVkVfTUtTVEVNUFM9JzEnCkhBVkVfTU9EVUxFUz0neWVzJwpIQVZF X05BTk9TTEVFUD0nMScKSEFWRV9OQVRJVkVfQ09NUD0nbm8nCkhBVkVfT1BFTkFUPScxJwpI QVZFX09QRU5ESVI9JzEnCkhBVkVfT1NfSD0nMCcKSEFWRV9QQ0xPU0U9JzEnCkhBVkVfUERV TVBFUj0neWVzJwpIQVZFX1BHVEs9J25vJwpIQVZFX1BJUEUyPScxJwpIQVZFX1BJUEU9JzEn CkhBVkVfUE9QRU49JzEnCkhBVkVfUE9TSVhfTUVNQUxJR049JzEnCkhBVkVfUE9TSVhfT1BF TlBUPScxJwpIQVZFX1BPU0lYX1NJR05BTEJMT0NLSU5HPScxJwpIQVZFX1BPU0lYX1NQQVdO PScnCkhBVkVfUE9TSVhfU1BBV05BVFRSX1NFVEZMQUdTPScnCkhBVkVfUE9TSVhfU1BBV05f RklMRV9BQ1RJT05TX0FERENIRElSPScnCkhBVkVfUE9TSVhfU1BBV05fRklMRV9BQ1RJT05T X0FERENIRElSX05QPScnCkhBVkVfUFJFQUQ9JzEnCkhBVkVfUFNFTEVDVD0nMScKSEFWRV9Q VEhSRUFEX1NJR01BU0s9JzEnCkhBVkVfUFRTTkFNRT0nMScKSEFWRV9QVFNOQU1FX1I9JzEn CkhBVkVfUFdSSVRFPScxJwpIQVZFX1FTT1JUX1I9JzEnCkhBVkVfUkFJU0U9JzEnCkhBVkVf UkFORE9NPScxJwpIQVZFX1JBTkRPTV9IPScxJwpIQVZFX1JBTkRPTV9SPScxJwpIQVZFX1JB V01FTUNIUj0nMScKSEFWRV9SRUFERElSPScxJwpIQVZFX1JFQURMSU5LPScxJwpIQVZFX1JF QURMSU5LQVQ9JzEnCkhBVkVfUkVBTExPQ0FSUkFZPScxJwpIQVZFX1JFQUxQQVRIPScxJwpI QVZFX1JFTkFNRUFUPScxJwpIQVZFX1JFV0lORERJUj0nMScKSEFWRV9SUE1BVENIPScxJwpI QVZFX1NDQU5ESVI9JzEnCkhBVkVfU0VDQ09NUD0neWVzJwpIQVZFX1NFQ1VSRV9HRVRFTlY9 JzEnCkhBVkVfU0VURU5WPScxJwpIQVZFX1NFVEhPU1ROQU1FPScxJwpIQVZFX1NFVFNUQVRF PScxJwpIQVZFX1NJR0FCQlJFVl9OUD0nMScKSEFWRV9TSUdBQ1RJT049JzEnCkhBVkVfU0lH REVTQ1JfTlA9JzEnCkhBVkVfU0lHSEFORExFUl9UPScxJwpIQVZFX1NJR0lORk9fVD0nMScK SEFWRV9TSUdORURfU0lHX0FUT01JQ19UPScnCkhBVkVfU0lHTkVEX1dDSEFSX1Q9JycKSEFW RV9TSUdORURfV0lOVF9UPScnCkhBVkVfU0lHU0VUX1Q9JzEnCkhBVkVfU0xFRVA9JzEnCkhB VkVfU1BBV05fSD0nJwpIQVZFX1NURElOVF9IPScxJwpIQVZFX1NUUENQWT0nMScKSEFWRV9T VFBOQ1BZPScxJwpIQVZFX1NUUkNBU0VTVFI9JzEnCkhBVkVfU1RSQ0hSTlVMPScxJwpIQVZF X1NUUkVSUk9STkFNRV9OUD0nMScKSEFWRV9TVFJQQlJLPScxJwpIQVZFX1NUUlBUSU1FPScx JwpIQVZFX1NUUlNFUD0nMScKSEFWRV9TVFJUT0Q9JzEnCkhBVkVfU1RSVE9MPScxJwpIQVZF X1NUUlRPTEQ9JzEnCkhBVkVfU1RSVE9MTD0nMScKSEFWRV9TVFJUT1VMPScxJwpIQVZFX1NU UlRPVUxMPScxJwpIQVZFX1NUUlVDVF9SQU5ET01fREFUQT0nMScKSEFWRV9TVFJVQ1RfU0lH QUNUSU9OX1NBX1NJR0FDVElPTj0nMScKSEFWRV9TVFJVQ1RfVElNRVZBTD0nMScKSEFWRV9T VFJWRVJTQ01QPScxJwpIQVZFX1NZTUxJTks9JzEnCkhBVkVfU1lNTElOS0FUPScxJwpIQVZF X1NZU19CSVRZUEVTX0g9JzAnCkhBVkVfU1lTX0NERUZTX0g9JycKSEFWRV9TWVNfSU5UVFlQ RVNfSD0nMCcKSEFWRV9TWVNfTE9BREFWR19IPScwJwpIQVZFX1NZU19QQVJBTV9IPScwJwpI QVZFX1NZU19SQU5ET01fSD0nMScKSEFWRV9TWVNfU0VMRUNUX0g9JzEnCkhBVkVfU1lTX1RJ TUVfSD0nMScKSEFWRV9TWVNfVFlQRVNfSD0nMScKSEFWRV9USU1FR009JzEnCkhBVkVfVElN RVNQRUNfR0VUPScxJwpIQVZFX1RJTUVTUEVDX0dFVFJFUz0nMScKSEFWRV9USU1FWk9ORV9U PScwJwpIQVZFX1RZUEVfVk9MQVRJTEVfU0lHX0FUT01JQ19UPScxJwpIQVZFX1VOSVNURF9I PScxJwpIQVZFX1VOTElOS0FUPScxJwpIQVZFX1VOTE9DS1BUPScxJwpIQVZFX1VTTEVFUD0n MScKSEFWRV9VVElNRU5TQVQ9JzEnCkhBVkVfVkFTUFJJTlRGPScxJwpIQVZFX1ZEUFJJTlRG PScxJwpIQVZFX1dDSEFSX0g9JzEnCkhBVkVfV0NIQVJfVD0nMScKSEFWRV9XSU5TT0NLMl9I PScwJwpIQVZFX1hTRVJWRVI9JycKSEFWRV9fRVhJVD0nMScKSFlCUklEX01BTExPQz0nJwpJ RUVFNzU0X0g9JycKSU1BR0VNQUdJQ0tfQ0ZMQUdTPScnCklNQUdFTUFHSUNLX0xJQlM9JycK SU5DTFVERV9ORVhUPSdpbmNsdWRlX25leHQnCklOQ0xVREVfTkVYVF9BU19GSVJTVF9ESVJF Q1RJVkU9J2luY2x1ZGVfbmV4dCcKSU5TVEFMTF9BUkNIX0lOREVQX0VYVFJBPSdpbnN0YWxs LWV0YycKSU5TVEFMTF9EQVRBPScke0lOU1RBTEx9IC1tIDY0NCcKSU5TVEFMTF9JTkZPPScv dXNyL2Jpbi9pbnN0YWxsLWluZm8nCklOU1RBTExfUFJPR1JBTT0nJHtJTlNUQUxMfScKSU5T VEFMTF9TQ1JJUFQ9JyR7SU5TVEFMTH0nCklOVDMyX01BWF9MVF9JTlRNQVhfTUFYPScxJwpJ TlQ2NF9NQVhfRVFfTE9OR19NQVg9J2RlZmluZWQgX0xQNjQnCkpTT05fQ0ZMQUdTPScnCkpT T05fTElCUz0nLWxqYW5zc29uJwpKU09OX09CSj0nanNvbi5vJwpLUVVFVUVfQ0ZMQUdTPScn CktRVUVVRV9MSUJTPScnCktSQjRMSUI9JycKS1JCNUxJQj0nJwpMQ01TMl9DRkxBR1M9JycK TENNUzJfTElCUz0nLWxsY21zMicKTERGTEFHUz0nICcKTERfU1dJVENIX1NZU1RFTT0nJwpM RF9TV0lUQ0hfU1lTVEVNX1RFTUFDUz0nICQoTERfU1dJVENIX1hfU0lURV9SUEFUSCknCkxE X1NXSVRDSF9YX1NJVEU9JycKTERfU1dJVENIX1hfU0lURV9SUEFUSD0nJwpMSUJHQ0NKSVRf Q0ZMQUdTPScnCkxJQkdDQ0pJVF9MSUJTPScnCkxJQkdJRj0nLWxnaWYnCkxJQkdNUD0nLWxn bXAnCkxJQkdOVVRMU19DRkxBR1M9Jy1pc3lzdGVtIC91c3IvaW5jbHVkZS9wMTEta2l0LTEn CkxJQkdOVVRMU19MSUJTPSctbGdudXRscycKTElCR05VX0xJQkRFUFM9JycKTElCR05VX0xU TElCREVQUz0nJwpMSUJHUE09Jy1sZ3BtJwpMSUJIRVNJT0Q9JycKTElCSU5UTD0nJwpMSUJK UEVHPSctbGpwZWcnCkxJQk1PRFVMRVM9Jy1sZGwnCkxJQk9CSlM9JycKTElCT1RGX0NGTEFH Uz0nLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvbGlicG5nMTYnCkxJQk9URl9MSUJTPSctbG90ZiAtbGZyZWV0eXBlJwpMSUJQTkc9Jy1s cG5nMTYnCkxJQlJFU09MVj0nJwpMSUJTPScgJwpMSUJTRUNDT01QX0NGTEFHUz0nJwpMSUJT RUNDT01QX0xJQlM9JycKTElCU0VMSU5VWF9MSUJTPSctbHNlbGludXgnCkxJQlNPVU5EPScg LWxhc291bmQnCkxJQlNZU1RFTURfQ0ZMQUdTPScnCkxJQlNZU1RFTURfTElCUz0nLWxzeXN0 ZW1kJwpMSUJTX0VDTElFTlQ9JycKTElCU19HTlVTVEVQPScnCkxJQlNfTUFJTD0nJwpMSUJT X1NZU1RFTT0nJwpMSUJTX1RFUk1DQVA9Jy1sdGluZm8nCkxJQlRJRkY9Jy1sdGlmZicKTElC WE1FTlU9JycKTElCWE1MMl9DRkxBR1M9Jy1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJ4bWwy JwpMSUJYTUwyX0xJQlM9Jy1seG1sMicKTElCWE1VPScnCkxJQlhQTT0nLWxYcG0nCkxJQlhT TT0nLWxTTSAtbElDRScKTElCWFRSNj0nJwpMSUJYVF9PVEhFUj0nJChMSUJYU00pJwpMSUJY X09USEVSPSckKExJQlhUKSAkKExJQlhfRVhUUkEpJwpMSUJaPSctbHonCkxJQl9BQ0w9Jy1s YWNsJwpMSUJfQ0xPQ0tfR0VUVElNRT0nJwpMSUJfRUFDQ0VTUz0nJwpMSUJfRVhFQ0lORk89 JycKTElCX0dFVFJBTkRPTT0nJwpMSUJfTUFUSD0nLWxtJwpMSUJfTkFOT1NMRUVQPScnCkxJ Ql9QVEhSRUFEPScnCkxJQl9QVEhSRUFEX1NJR01BU0s9JycKTElCX1RJTUVSX1RJTUU9JycK TElCX1dTT0NLMzI9JycKTElCX1hBVFRSPSctbGF0dHInCkxJTUlUU19IPSdsaW1pdHMuaCcK TE5fU19GSUxFT05MWT0nbG4gLXMnCkxUTElCR01QPSctbGdtcCcKTFRMSUJJTlRMPScnCkxU TElCT0JKUz0nJwpNMTdOX0ZMVF9DRkxBR1M9JycKTTE3Tl9GTFRfTElCUz0nLWxtMTduLWNv cmUgLWxtMTduLWZsdCAtbG0xN24tY29yZScKTUFLRUlORk89J21ha2VpbmZvJwpNQUtFX1BS T0c9JycKTUtESVJfUD0nL3Vzci9iaW4vbWtkaXIgLXAnCk1PRFVMRVNfT0JKPSdlbWFjcy1t b2R1bGUubycKTU9EVUxFU19TRUNPTkRBUllfU1VGRklYPScnCk1PRFVMRVNfU1VGRklYPScu c28nCk5BTk9TTEVFUF9MSUI9JycKTkFUSVZFX0NPTVBJTEFUSU9OX0FPVD0nbm8nCk5FWFRf QVNTRVJUX0g9JycKTkVYVF9BU19GSVJTVF9ESVJFQ1RJVkVfQVNTRVJUX0g9JycKTkVYVF9B U19GSVJTVF9ESVJFQ1RJVkVfRElSRU5UX0g9JzxkaXJlbnQuaD4nCk5FWFRfQVNfRklSU1Rf RElSRUNUSVZFX0VSUk5PX0g9JycKTkVYVF9BU19GSVJTVF9ESVJFQ1RJVkVfRkNOVExfSD0n PGZjbnRsLmg+JwpORVhUX0FTX0ZJUlNUX0RJUkVDVElWRV9HRVRPUFRfSD0nPGdldG9wdC5o PicKTkVYVF9BU19GSVJTVF9ESVJFQ1RJVkVfSU5UVFlQRVNfSD0nPGludHR5cGVzLmg+JwpO RVhUX0FTX0ZJUlNUX0RJUkVDVElWRV9MSU1JVFNfSD0nPGxpbWl0cy5oPicKTkVYVF9BU19G SVJTVF9ESVJFQ1RJVkVfU0lHTkFMX0g9JzxzaWduYWwuaD4nCk5FWFRfQVNfRklSU1RfRElS RUNUSVZFX1NURERFRl9IPScnCk5FWFRfQVNfRklSU1RfRElSRUNUSVZFX1NURElOVF9IPSc8 c3RkaW50Lmg+JwpORVhUX0FTX0ZJUlNUX0RJUkVDVElWRV9TVERJT19IPSc8c3RkaW8uaD4n Ck5FWFRfQVNfRklSU1RfRElSRUNUSVZFX1NURExJQl9IPSc8c3RkbGliLmg+JwpORVhUX0FT X0ZJUlNUX0RJUkVDVElWRV9TVFJJTkdfSD0nPHN0cmluZy5oPicKTkVYVF9BU19GSVJTVF9E SVJFQ1RJVkVfU1lTX1JBTkRPTV9IPSc8c3lzL3JhbmRvbS5oPicKTkVYVF9BU19GSVJTVF9E SVJFQ1RJVkVfU1lTX1NFTEVDVF9IPSc8c3lzL3NlbGVjdC5oPicKTkVYVF9BU19GSVJTVF9E SVJFQ1RJVkVfU1lTX1NUQVRfSD0nPHN5cy9zdGF0Lmg+JwpORVhUX0FTX0ZJUlNUX0RJUkVD VElWRV9TWVNfVElNRV9IPSc8c3lzL3RpbWUuaD4nCk5FWFRfQVNfRklSU1RfRElSRUNUSVZF X1NZU19UWVBFU19IPSc8c3lzL3R5cGVzLmg+JwpORVhUX0FTX0ZJUlNUX0RJUkVDVElWRV9U SU1FX0g9Jzx0aW1lLmg+JwpORVhUX0FTX0ZJUlNUX0RJUkVDVElWRV9VTklTVERfSD0nPHVu aXN0ZC5oPicKTkVYVF9ESVJFTlRfSD0nPGRpcmVudC5oPicKTkVYVF9FUlJOT19IPScnCk5F WFRfRkNOVExfSD0nPGZjbnRsLmg+JwpORVhUX0dFVE9QVF9IPSc8Z2V0b3B0Lmg+JwpORVhU X0lOVFRZUEVTX0g9JzxpbnR0eXBlcy5oPicKTkVYVF9MSU1JVFNfSD0nPGxpbWl0cy5oPicK TkVYVF9TSUdOQUxfSD0nPHNpZ25hbC5oPicKTkVYVF9TVERERUZfSD0nJwpORVhUX1NURElO VF9IPSc8c3RkaW50Lmg+JwpORVhUX1NURElPX0g9JzxzdGRpby5oPicKTkVYVF9TVERMSUJf SD0nPHN0ZGxpYi5oPicKTkVYVF9TVFJJTkdfSD0nPHN0cmluZy5oPicKTkVYVF9TWVNfUkFO RE9NX0g9JzxzeXMvcmFuZG9tLmg+JwpORVhUX1NZU19TRUxFQ1RfSD0nPHN5cy9zZWxlY3Qu aD4nCk5FWFRfU1lTX1NUQVRfSD0nPHN5cy9zdGF0Lmg+JwpORVhUX1NZU19USU1FX0g9Jzxz eXMvdGltZS5oPicKTkVYVF9TWVNfVFlQRVNfSD0nPHN5cy90eXBlcy5oPicKTkVYVF9USU1F X0g9Jzx0aW1lLmg+JwpORVhUX1VOSVNURF9IPSc8dW5pc3RkLmg+JwpOT1RJRllfQ0ZMQUdT PScnCk5PVElGWV9MSUJTPScnCk5PVElGWV9PQko9J2lub3RpZnkubycKTlNfT0JKPScnCk5T X09CSkNfT0JKPScnCk5URElSPScnCk5UTElCPScnCk9CSkM9JycKT0JKQ0ZMQUdTPScnCk9C SkVYVD0nbycKT1RIRVJfRklMRVM9JycKUEFDS0FHRV9CVUdSRVBPUlQ9J2J1Zy1nbnUtZW1h Y3NAZ251Lm9yZycKUEFDS0FHRV9OQU1FPSdHTlUgRW1hY3MnClBBQ0tBR0VfU1RSSU5HPSdH TlUgRW1hY3MgMzAuMC41MCcKUEFDS0FHRV9UQVJOQU1FPSdlbWFjcycKUEFDS0FHRV9VUkw9 J2h0dHBzOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvJwpQQUNLQUdFX1ZFUlNJT049 JzMwLjAuNTAnClBBVEhfU0VQQVJBVE9SPSc6JwpQQVhDVEw9JycKUEFYQ1RMX2R1bXBlZD0n JwpQQVhDVExfbm90ZHVtcGVkPScnClBHVEtfTElCUz0nJwpQR1RLX09CSj0nJwpQS0dfQ09O RklHPScvdXNyL2Jpbi9wa2ctY29uZmlnJwpQS0dfQ09ORklHX0xJQkRJUj0nJwpQS0dfQ09O RklHX1BBVEg9JycKUE5HX0NGTEFHUz0nLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2 JwpQTkdfTElCUz0nLWxwbmcxNicKUE9TVF9BTExPQ19PQko9JycKUFJBR01BX0NPTFVNTlM9 JycKUFJBR01BX1NZU1RFTV9IRUFERVI9JyNwcmFnbWEgR0NDIHN5c3RlbV9oZWFkZXInClBS RV9BTExPQ19PQko9J2xhc3RmaWxlLm8nClBSSVBUUl9QUkVGSVg9J19fUFJJUFRSX1BSRUZJ WCcKUFJPRklMSU5HX0NGTEFHUz0nJwpQVEhSRUFEX0hfREVGSU5FU19TVFJVQ1RfVElNRVNQ RUM9JzAnClBUSFJFQURfU0lHTUFTS19MSUI9JycKUFRSRElGRl9UX1NVRkZJWD0nJwpRQ09Q WV9BQ0xfTElCPSctbGF0dHInClJBTExPQ19PQko9JycKUkFOTElCPSdyYW5saWInClJFUExB Q0VfQUNDRVNTPScwJwpSRVBMQUNFX0FMSUdORURfQUxMT0M9JzAnClJFUExBQ0VfQ0FMTE9D X0ZPUl9DQUxMT0NfR05VPScwJwpSRVBMQUNFX0NBTExPQ19GT1JfQ0FMTE9DX1BPU0lYPScw JwpSRVBMQUNFX0NBTk9OSUNBTElaRV9GSUxFX05BTUU9JzAnClJFUExBQ0VfQ0hNT0Q9JzAn ClJFUExBQ0VfQ0hPV049JzAnClJFUExBQ0VfQ0xPU0U9JzAnClJFUExBQ0VfQ0xPU0VESVI9 JzAnClJFUExBQ0VfQ09QWV9GSUxFX1JBTkdFPScwJwpSRVBMQUNFX0NSRUFUPScwJwpSRVBM QUNFX0NUSU1FPSdHTlVMSUJfUE9SVENIRUNLJwpSRVBMQUNFX0RJUkZEPScwJwpSRVBMQUNF X0RQUklOVEY9JzAnClJFUExBQ0VfRFVQMj0nMCcKUkVQTEFDRV9EVVAzPScwJwpSRVBMQUNF X0RVUD0nMCcKUkVQTEFDRV9FWEVDTD0nMCcKUkVQTEFDRV9FWEVDTEU9JzAnClJFUExBQ0Vf RVhFQ0xQPScwJwpSRVBMQUNFX0VYRUNWPScwJwpSRVBMQUNFX0VYRUNWRT0nMCcKUkVQTEFD RV9FWEVDVlA9JzAnClJFUExBQ0VfRVhFQ1ZQRT0nMCcKUkVQTEFDRV9GQUNDRVNTQVQ9JzAn ClJFUExBQ0VfRkNITU9EQVQ9JzAnClJFUExBQ0VfRkNIT1dOQVQ9JzAnClJFUExBQ0VfRkNM T1NFPScwJwpSRVBMQUNFX0ZDTlRMPScxJwpSRVBMQUNFX0ZEQVRBU1lOQz0nMCcKUkVQTEFD RV9GRE9QRU49JzAnClJFUExBQ0VfRkRPUEVORElSPScwJwpSRVBMQUNFX0ZGTFVTSD0nMCcK UkVQTEFDRV9GRlNMTD0nMCcKUkVQTEFDRV9GT1BFTj0nMCcKUkVQTEFDRV9GT1BFTl9GT1Jf Rk9QRU5fR05VPScwJwpSRVBMQUNFX0ZQUklOVEY9JzAnClJFUExBQ0VfRlBVUkdFPScwJwpS RVBMQUNFX0ZSRUU9JzAnClJFUExBQ0VfRlJFT1BFTj0nMCcKUkVQTEFDRV9GU0VFSz0nMCcK UkVQTEFDRV9GU0VFS089JzAnClJFUExBQ0VfRlNUQVQ9JzAnClJFUExBQ0VfRlNUQVRBVD0n MCcKUkVQTEFDRV9GVEVMTD0nMCcKUkVQTEFDRV9GVEVMTE89JzAnClJFUExBQ0VfRlRSVU5D QVRFPScwJwpSRVBMQUNFX0ZVVElNRU5TPScwJwpSRVBMQUNFX0dFVENXRD0nMCcKUkVQTEFD RV9HRVRERUxJTT0nMCcKUkVQTEFDRV9HRVRET01BSU5OQU1FPScwJwpSRVBMQUNFX0dFVERU QUJMRVNJWkU9JzAnClJFUExBQ0VfR0VURU5UUk9QWT0nMCcKUkVQTEFDRV9HRVRHUk9VUFM9 JzAnClJFUExBQ0VfR0VUTElORT0nMCcKUkVQTEFDRV9HRVRMT0FEQVZHPScwJwpSRVBMQUNF X0dFVExPR0lOX1I9JzAnClJFUExBQ0VfR0VUUEFHRVNJWkU9JzAnClJFUExBQ0VfR0VUUEFT Uz0nMCcKUkVQTEFDRV9HRVRQQVNTX0ZPUl9HRVRQQVNTX0dOVT0nMCcKUkVQTEFDRV9HRVRQ Uk9HTkFNRT0nMCcKUkVQTEFDRV9HRVRSQU5ET009JzAnClJFUExBQ0VfR0VUU1VCT1BUPScw JwpSRVBMQUNFX0dFVFRJTUVPRkRBWT0nMCcKUkVQTEFDRV9HTVRJTUU9JzAnClJFUExBQ0Vf SU1BWEFCUz0nMCcKUkVQTEFDRV9JTUFYRElWPScwJwpSRVBMQUNFX0lOSVRTVEFURT0nMCcK UkVQTEFDRV9JU0FUVFk9JzAnClJFUExBQ0VfTENIT1dOPScwJwpSRVBMQUNFX0xJTks9JzAn ClJFUExBQ0VfTElOS0FUPScwJwpSRVBMQUNFX0xPQ0FMVElNRT0nMCcKUkVQTEFDRV9MT0NB TFRJTUVfUj0nMCcKUkVQTEFDRV9MU0VFSz0nMCcKUkVQTEFDRV9MU1RBVD0nMCcKUkVQTEFD RV9NQUxMT0NfRk9SX01BTExPQ19HTlU9JzAnClJFUExBQ0VfTUFMTE9DX0ZPUl9NQUxMT0Nf UE9TSVg9JzAnClJFUExBQ0VfTUJUT1dDPScwJwpSRVBMQUNFX01FTUNIUj0nMCcKUkVQTEFD RV9NRU1NRU09JzAnClJFUExBQ0VfTUVNUENQWT0nMCcKUkVQTEFDRV9NS0RJUj0nMCcKUkVQ TEFDRV9NS0ZJRk89JzAnClJFUExBQ0VfTUtGSUZPQVQ9JzAnClJFUExBQ0VfTUtOT0Q9JzAn ClJFUExBQ0VfTUtOT0RBVD0nMCcKUkVQTEFDRV9NS09TVEVNUD0nMCcKUkVQTEFDRV9NS09T VEVNUFM9JzAnClJFUExBQ0VfTUtTVEVNUD0nMCcKUkVQTEFDRV9NS1RJTUU9JzEnClJFUExB Q0VfTkFOT1NMRUVQPScxJwpSRVBMQUNFX05VTEw9JzAnClJFUExBQ0VfT0JTVEFDS19QUklO VEY9JzAnClJFUExBQ0VfT1BFTj0nMCcKUkVQTEFDRV9PUEVOQVQ9JzAnClJFUExBQ0VfT1BF TkRJUj0nMCcKUkVQTEFDRV9QRVJST1I9JzAnClJFUExBQ0VfUElQRTI9JzEnClJFUExBQ0Vf UE9QRU49JzAnClJFUExBQ0VfUE9TSVhfTUVNQUxJR049JzAnClJFUExBQ0VfUE9TSVhfT1BF TlBUPScwJwpSRVBMQUNFX1BSRUFEPScwJwpSRVBMQUNFX1BSSU5URj0nMCcKUkVQTEFDRV9Q U0VMRUNUPScwJwpSRVBMQUNFX1BUSFJFQURfU0lHTUFTSz0nMCcKUkVQTEFDRV9QVFNOQU1F PScwJwpSRVBMQUNFX1BUU05BTUVfUj0nMCcKUkVQTEFDRV9QVVRFTlY9JzAnClJFUExBQ0Vf UFdSSVRFPScwJwpSRVBMQUNFX1FTT1JUX1I9JzAnClJFUExBQ0VfUkFJU0U9JzAnClJFUExB Q0VfUkFORE9NPScwJwpSRVBMQUNFX1JBTkRPTV9SPScwJwpSRVBMQUNFX1JFQUQ9JzAnClJF UExBQ0VfUkVBRExJTks9JzAnClJFUExBQ0VfUkVBRExJTktBVD0nMCcKUkVQTEFDRV9SRUFM TE9DQVJSQVk9JzAnClJFUExBQ0VfUkVBTExPQ19GT1JfUkVBTExPQ19HTlU9JzAnClJFUExB Q0VfUkVBTExPQ19GT1JfUkVBTExPQ19QT1NJWD0nMCcKUkVQTEFDRV9SRUFMUEFUSD0nMCcK UkVQTEFDRV9SRU1PVkU9JzAnClJFUExBQ0VfUkVOQU1FPScwJwpSRVBMQUNFX1JFTkFNRUFU PScwJwpSRVBMQUNFX1JNRElSPScwJwpSRVBMQUNFX1NFTEVDVD0nMCcKUkVQTEFDRV9TRVRF TlY9JzAnClJFUExBQ0VfU0VUSE9TVE5BTUU9JzAnClJFUExBQ0VfU0VUU1RBVEU9JzAnClJF UExBQ0VfU0xFRVA9JzAnClJFUExBQ0VfU05QUklOVEY9JzAnClJFUExBQ0VfU1BSSU5URj0n MCcKUkVQTEFDRV9TVEFUPScwJwpSRVBMQUNFX1NURElPX1JFQURfRlVOQ1M9JzAnClJFUExB Q0VfU1RESU9fV1JJVEVfRlVOQ1M9JzAnClJFUExBQ0VfU1RQQ1BZPScwJwpSRVBMQUNFX1NU UE5DUFk9JzAnClJFUExBQ0VfU1RSQ0FTRVNUUj0nMCcKUkVQTEFDRV9TVFJDSFJOVUw9JzAn ClJFUExBQ0VfU1RSRFVQPScwJwpSRVBMQUNFX1NUUkVSUk9SPScwJwpSRVBMQUNFX1NUUkVS Uk9STkFNRV9OUD0nMCcKUkVQTEFDRV9TVFJFUlJPUl9SPScwJwpSRVBMQUNFX1NUUkZUSU1F PSdHTlVMSUJfUE9SVENIRUNLJwpSRVBMQUNFX1NUUk5DQVQ9JzAnClJFUExBQ0VfU1RSTkRV UD0nMCcKUkVQTEFDRV9TVFJOTEVOPScwJwpSRVBMQUNFX1NUUlNJR05BTD0nMCcKUkVQTEFD RV9TVFJTVFI9JzAnClJFUExBQ0VfU1RSVE9EPScwJwpSRVBMQUNFX1NUUlRPSU1BWD0nMCcK UkVQTEFDRV9TVFJUT0tfUj0nMCcKUkVQTEFDRV9TVFJUT0w9JzAnClJFUExBQ0VfU1RSVE9M RD0nMCcKUkVQTEFDRV9TVFJUT0xMPScwJwpSRVBMQUNFX1NUUlRPVUw9JzAnClJFUExBQ0Vf U1RSVE9VTEw9JzAnClJFUExBQ0VfU1RSVE9VTUFYPScwJwpSRVBMQUNFX1NUUlVDVF9USU1F VkFMPScwJwpSRVBMQUNFX1NZTUxJTks9JzAnClJFUExBQ0VfU1lNTElOS0FUPScwJwpSRVBM QUNFX1RJTUVHTT0nMScKUkVQTEFDRV9USU1FU1BFQ19HRVQ9J0dOVUxJQl9QT1JUQ0hFQ0sn ClJFUExBQ0VfVE1QRklMRT0nMCcKUkVQTEFDRV9UUlVOQ0FURT0nMCcKUkVQTEFDRV9UVFlO QU1FX1I9JzAnClJFUExBQ0VfVFpTRVQ9J0dOVUxJQl9QT1JUQ0hFQ0snClJFUExBQ0VfVU5M SU5LPScwJwpSRVBMQUNFX1VOTElOS0FUPScwJwpSRVBMQUNFX1VOU0VURU5WPScwJwpSRVBM QUNFX1VTTEVFUD0nMCcKUkVQTEFDRV9VVElNRU5TQVQ9JzAnClJFUExBQ0VfVkFTUFJJTlRG PScwJwpSRVBMQUNFX1ZEUFJJTlRGPScwJwpSRVBMQUNFX1ZGUFJJTlRGPScwJwpSRVBMQUNF X1ZQUklOVEY9JzAnClJFUExBQ0VfVlNOUFJJTlRGPScwJwpSRVBMQUNFX1ZTUFJJTlRGPScw JwpSRVBMQUNFX1dDVE9NQj0nMCcKUkVQTEFDRV9XUklURT0nMCcKUkVQTEFDRV9fRVhJVD0n MCcKUlNWR19DRkxBR1M9Jy1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3Zn LTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1v dW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv Y2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGli L3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYnClJTVkdf TElCUz0nLWxyc3ZnLTIgLWxtIC1sZ2lvLTIuMCAtbGdka19waXhidWYtMi4wIC1sZ29iamVj dC0yLjAgLWxnbGliLTIuMCAtbGNhaXJvJwpTRVBDSEFSPSc6JwpTRVRGQVRUUj0nJwpTRVRU SU5HU19DRkxBR1M9Jy1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWIt Mi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVk ZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2 XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlJwpTRVRUSU5HU19MSUJTPSctbGdpby0y LjAgLWxnb2JqZWN0LTIuMCAtbGdsaWItMi4wIC1sZ29iamVjdC0yLjAgLWxnbGliLTIuMCcK U0hFTEw9Jy9iaW4vYmFzaCcKU0lHX0FUT01JQ19UX1NVRkZJWD0nJwpTSVpFT0ZfTE9ORz0n OCcKU0laRV9UX1NVRkZJWD0nJwpTTUFMTF9KQV9ESUM9J25vJwpTUUxJVEUzX0xJQlM9Jy1s c3FsaXRlMycKU1REQ0tESU5UX0g9J3N0ZGNrZGludC5oJwpTVERERUZfSD0nJwpTVERJTlRf SD0nJwpTVUJESVJfTUFLRUZJTEVTX0lOPScgJChzcmNkaXIpL2xpYi9NYWtlZmlsZS5pbiAk KHNyY2RpcikvbGliLXNyYy9NYWtlZmlsZS5pbiAkKHNyY2Rpcikvb2xkWE1lbnUvTWFrZWZp bGUuaW4gJChzcmNkaXIpL2RvYy9lbWFjcy9NYWtlZmlsZS5pbiAkKHNyY2RpcikvZG9jL21p c2MvTWFrZWZpbGUuaW4gJChzcmNkaXIpL2RvYy9saXNwaW50cm8vTWFrZWZpbGUuaW4gJChz cmNkaXIpL2RvYy9saXNwcmVmL01ha2VmaWxlLmluICQoc3JjZGlyKS9zcmMvTWFrZWZpbGUu aW4gJChzcmNkaXIpL2x3bGliL01ha2VmaWxlLmluICQoc3JjZGlyKS9saXNwL01ha2VmaWxl LmluICQoc3JjZGlyKS9sZWltL01ha2VmaWxlLmluICQoc3JjZGlyKS9uZXh0c3RlcC9NYWtl ZmlsZS5pbiAkKHNyY2RpcikvbnQvTWFrZWZpbGUuaW4gJChzcmNkaXIpL3Rlc3QvTWFrZWZp bGUuaW4gJChzcmNkaXIpL3Rlc3QvaW5mcmEvTWFrZWZpbGUuaW4gJChzcmNkaXIpL2FkbWlu L2NoYXJzZXRzL01ha2VmaWxlLmluICQoc3JjZGlyKS9hZG1pbi91bmlkYXRhL01ha2VmaWxl LmluICQoc3JjZGlyKS9hZG1pbi9ncmFtbWFycy9NYWtlZmlsZS5pbicKU1lTVEVNX1RZUEU9 J2dudS9saW51eCcKU1lTX1RJTUVfSF9ERUZJTkVTX1NUUlVDVF9USU1FU1BFQz0nMCcKVEVS TUNBUF9PQko9J3Rlcm1pbmZvLm8nClRJTUVSX1RJTUVfTElCPScnClRJTUVfSF9ERUZJTkVT X1NUUlVDVF9USU1FU1BFQz0nMScKVElNRV9IX0RFRklORVNfVElNRV9VVEM9JzEnClRPT0xL SVRfTElCVz0nLWxndGstMyAtbGdkay0zIC1scGFuZ29jYWlyby0xLjAgLWxwYW5nby0xLjAg LWxoYXJmYnV6eiAtbGF0ay0xLjAgLWxjYWlyby1nb2JqZWN0IC1sY2Fpcm8gLWxnZGtfcGl4 YnVmLTIuMCAtbGdpby0yLjAgLWxnb2JqZWN0LTIuMCAtbGdsaWItMi4wJwpUUkVFX1NJVFRF Ul9DRkxBR1M9JycKVFJFRV9TSVRURVJfTElCUz0nJwpVSU5UMzJfTUFYX0xUX1VJTlRNQVhf TUFYPScxJwpVSU5UNjRfTUFYX0VRX1VMT05HX01BWD0nZGVmaW5lZCBfTFA2NCcKVU5ERUZJ TkVfU1RSVE9LX1I9JzAnClVORVhFQ19PQko9JycKVU5JU1REX0hfREVGSU5FU19TVFJVQ1Rf VElNRVNQRUM9JzAnClVOSVNURF9IX0hBVkVfU1lTX1JBTkRPTV9IPScxJwpVTklTVERfSF9I QVZFX1dJTlNPQ0syX0g9JzAnClVOSVNURF9IX0hBVkVfV0lOU09DSzJfSF9BTkRfVVNFX1NP Q0tFVFM9JzAnClVTRV9BQ0w9JzEnClVTRV9TVEFSVFVQX05PVElGSUNBVElPTj0neWVzJwpW TUxJTUlUX09CSj0nJwpXMzJfTElCUz0nJwpXMzJfT0JKPScnClczMl9SRVNfTElOSz0nJwpX QVJOX0NGTEFHUz0nIC1mbm8tY29tbW9uIC1XYWxsIC1XYXJpdGgtY29udmVyc2lvbiAtV2Rh dGUtdGltZSAtV2Rpc2FibGVkLW9wdGltaXphdGlvbiAtV2RvdWJsZS1wcm9tb3Rpb24gLVdk dXBsaWNhdGVkLWNvbmQgLVdleHRyYSAtV2Zvcm1hdC1zaWduZWRuZXNzIC1XaW5pdC1zZWxm IC1XaW52YWxpZC1wY2ggLVdsb2dpY2FsLW9wIC1XbWlzc2luZy1kZWNsYXJhdGlvbnMgLVdt aXNzaW5nLWluY2x1ZGUtZGlycyAtV21pc3NpbmctcHJvdG90eXBlcyAtV25lc3RlZC1leHRl cm5zIC1XbnVsbC1kZXJlZmVyZW5jZSAtV29sZC1zdHlsZS1kZWZpbml0aW9uIC1Xb3Blbm1w LXNpbWQgLVdwYWNrZWQgLVdwb2ludGVyLWFyaXRoIC1Xc3RyaWN0LXByb3RvdHlwZXMgLVdz dWdnZXN0LWF0dHJpYnV0ZT1mb3JtYXQgLVdzdWdnZXN0LWF0dHJpYnV0ZT1ub3JldHVybiAt V3N1Z2dlc3QtZmluYWwtbWV0aG9kcyAtV3N1Z2dlc3QtZmluYWwtdHlwZXMgLVd0cmFtcG9s aW5lcyAtV3VuaW5pdGlhbGl6ZWQgLVd1bmtub3duLXByYWdtYXMgLVd1bnVzZWQtbWFjcm9z IC1XdmFyaWFkaWMtbWFjcm9zIC1XdmVjdG9yLW9wZXJhdGlvbi1wZXJmb3JtYW5jZSAtV3dy aXRlLXN0cmluZ3MgLVdhcnJheS1ib3VuZHM9MiAtV2F0dHJpYnV0ZS1hbGlhcz0yIC1XZm9y bWF0PTIgLVdmb3JtYXQtdHJ1bmNhdGlvbj0yIC1XaW1wbGljaXQtZmFsbHRocm91Z2g9NSAt V3NoaWZ0LW92ZXJmbG93PTIgLVd1c2UtYWZ0ZXItZnJlZT0zIC1XdmxhLWxhcmdlci10aGFu PTQwMzEgLVdyZWR1bmRhbnQtZGVjbHMgLVduby1taXNzaW5nLWZpZWxkLWluaXRpYWxpemVy cyAtV25vLW92ZXJyaWRlLWluaXQgLVduby1zaWduLWNvbXBhcmUgLVduby10eXBlLWxpbWl0 cyAtV25vLXVudXNlZC1wYXJhbWV0ZXIgLVduby1mb3JtYXQtbm9ubGl0ZXJhbCAtV25vLWJp ZGktY2hhcnMnCldDSEFSX1RfU1VGRklYPScnCldFQktJVF9DRkxBR1M9JycKV0VCS0lUX0xJ QlM9JycKV0VCUF9DRkxBR1M9Jy1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwJwpXRUJQX0xJ QlM9Jy1sd2VicGRlbXV4IC1sd2VicGRlY29kZXInCldFUlJPUl9DRkxBR1M9JycKV0lER0VU X09CSj0nJwpXSU5ET1dTXzY0X0JJVF9PRkZfVD0nMCcKV0lORE9XU182NF9CSVRfU1RfU0la RT0nMCcKV0lORE9XU19TVEFUX0lOT0RFUz0nMCcKV0lORE9XU19TVEFUX1RJTUVTUEVDPScw JwpXSU5ET1dfU1lTVEVNX09CSj0nZm9udHNldC5vIGZyaW5nZS5vIGltYWdlLm8gdGV4dGNv bnYubycKV0lORFJFUz0nJwpXSU5UX1RfU1VGRklYPScnClhBUkdTX0xJTUlUPScnClhDQl9M SUJTPSctbFgxMS14Y2IgLWx4Y2InClhDT01QT1NJVEVfQ0ZMQUdTPScnClhDT01QT1NJVEVf TElCUz0nLWxYY29tcG9zaXRlJwpYQ1JVTj0nJwpYREJFX0NGTEFHUz0nJwpYREJFX0xJQlM9 Jy1sWGV4dCcKWEZJWEVTX0NGTEFHUz0nJwpYRklYRVNfTElCUz0nLWxYZml4ZXMnClhGVF9D RkxBR1M9JycKWEZUX0xJQlM9JycKWEdTRUxPQko9J3hnc2VsZWN0Lm8nClhJTkVSQU1BX0NG TEFHUz0nJwpYSU5FUkFNQV9MSUJTPSctbFhpbmVyYW1hJwpYSU5QVVRfQ0ZMQUdTPScnClhJ TlBVVF9MSUJTPSctbFhpJwpYTUVOVV9PQko9J3htZW51Lm8nClhNS01GPScnClhPQko9J3h0 ZXJtLm8geGZucy5vIHhzZWxlY3QubyB4cmRiLm8geHNtZm5zLm8geHNldHRpbmdzLm8nClhS QU5EUl9DRkxBR1M9JycKWFJBTkRSX0xJQlM9Jy1sWHJhbmRyJwpYUkVOREVSX0xJQlM9Jy1s WHJlbmRlcicKWFNIQVBFX0NGTEFHUz0nJwpYU0hBUEVfTElCUz0nLWxYZXh0IC1seGNiLXNo YXBlJwpYU1lOQ19DRkxBR1M9JycKWFNZTkNfTElCUz0nLWxYZXh0JwpYV0lER0VUU19PQko9 JycKWF9UT09MS0lUX1RZUEU9J25vbmUnCmFjX2N0X0NDPSdnY2MnCmFjX2N0X0NYWD0nJwph Y19jdF9PQkpDPScnCmFyY2hsaWJkaXI9JyR7bGliZXhlY2Rpcn0vZW1hY3MvJHt2ZXJzaW9u fS8ke2NvbmZpZ3VyYXRpb259JwpiaW5kaXI9JyR7ZXhlY19wcmVmaXh9L2JpbicKYml0bWFw ZGlyPScvdXNyL2luY2x1ZGUvWDExL2JpdG1hcHMnCmJ1aWxkPSd4ODZfNjQtcGMtbGludXgt Z251JwpidWlsZF9hbGlhcz0nJwpidWlsZF9jcHU9J3g4Nl82NCcKYnVpbGRfb3M9J2xpbnV4 LWdudScKYnVpbGRfdmVuZG9yPSdwYycKY2FjaGVfZmlsZT0nL2Rldi9udWxsJwpjYW5vbmlj YWw9J3g4Nl82NC1wYy1saW51eC1nbnUnCmNvbW1hX3NwYWNlX3ZlcnNpb249JycKY29tbWFf dmVyc2lvbj0nJwpjb25maWd1cmF0aW9uPSd4ODZfNjQtcGMtbGludXgtZ251Jwpjb3B5cmln aHQ9J0NvcHlyaWdodCAoQykgMjAyMyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4n CmRhdGFkaXI9JyR7ZGF0YXJvb3RkaXJ9JwpkYXRhcm9vdGRpcj0nJHtwcmVmaXh9L3NoYXJl Jwpkb2NkaXI9JyR7ZGF0YXJvb3RkaXJ9L2RvYy8ke1BBQ0tBR0VfVEFSTkFNRX0nCmR2aWRp cj0nJHtkb2NkaXJ9JwplbWFjc19tYWpvcl92ZXJzaW9uPSczMCcKZXRjZGlyPScke2RhdGFk aXJ9L2VtYWNzLyR7dmVyc2lvbn0vZXRjJwpldGNkb2NkaXI9JyR7ZGF0YWRpcn0vZW1hY3Mv JHt2ZXJzaW9ufS9ldGMnCmV4ZWNfcHJlZml4PScke3ByZWZpeH0nCmdhbWVkaXI9JyR7bG9j YWxzdGF0ZWRpcn0vZ2FtZXMvZW1hY3MnCmdhbWVncm91cD0nJwpnYW1ldXNlcj0nJwpnbF9H TlVMSUJfRU5BQkxFRF8wM2UwYWFhZDRjYjg5Y2E3NTc2NTNiZDM2N2E2Y2NiN19DT05ESVRJ T049JycKZ2xfR05VTElCX0VOQUJMRURfMjYwOTQxYzBlNWRjNjdlYzllODdkMWZiMzIxYzMw MGJfQ09ORElUSU9OPScnCmdsX0dOVUxJQl9FTkFCTEVEXzUyNjQyOTRhYTBhNTU1NzU0MWI1 M2M4Yzc0MWY3ZjMxX0NPTkRJVElPTj0nMScKZ2xfR05VTElCX0VOQUJMRURfNjA5OWU5NzM3 Zjc1N2RiMzZjNDdmYTlkOWYwMmU4OGNfQ09ORElUSU9OPScnCmdsX0dOVUxJQl9FTkFCTEVE XzYxYmNhY2E3NmIzZTZmOWFlNTVkNTdhMWMzMTkzYmM0X0NPTkRJVElPTj0nJwpnbF9HTlVM SUJfRU5BQkxFRF82ODJlNjA5NjA0Y2NhYWM2YmUzODJlNGVlM2E0ZWFlY19DT05ESVRJT049 JycKZ2xfR05VTElCX0VOQUJMRURfODQ0NDAzNGVhNzc5Yjg4NzY4ODY1YmI2MGI0ZmI4Yzlf Q09ORElUSU9OPScnCmdsX0dOVUxJQl9FTkFCTEVEXzkyNTY3N2YwMzQzZGU2NGI4OWE5ZjBj NzkwYjQxMDRjX0NPTkRJVElPTj0nJwpnbF9HTlVMSUJfRU5BQkxFRF9hOTc4Njg1MGU5OTlh ZTY1YTgzNmE2MDQxZThlNWVkMV9DT05ESVRJT049JycKZ2xfR05VTElCX0VOQUJMRURfYmU0 NTNjZWM1ZWVjZjU3MzFhMjc0ZjJkZTdmMmRiMzZfQ09ORElUSU9OPScnCmdsX0dOVUxJQl9F TkFCTEVEX2Nsb2V4ZWNfQ09ORElUSU9OPScnCmdsX0dOVUxJQl9FTkFCTEVEX2QzYjIzODM3 MjBlZTBlNTQxMzU3YWEyYWFjNTk4ZTJiX0NPTkRJVElPTj0nJwpnbF9HTlVMSUJfRU5BQkxF RF9kaXJmZF9DT05ESVRJT049JycKZ2xfR05VTElCX0VOQUJMRURfZTgwYmY2Zjc1NzA5NWQy ZTVmYzk0ZGFmYjhmOGZjOGJfQ09ORElUSU9OPScnCmdsX0dOVUxJQl9FTkFCTEVEX2VmNDU1 MjI1YzAwZjUwNDljODA4YzJlZGEzZTc2ODY2X0NPTkRJVElPTj0nJwpnbF9HTlVMSUJfRU5B QkxFRF9ldWlkYWNjZXNzX0NPTkRJVElPTj0nJwpnbF9HTlVMSUJfRU5BQkxFRF9mZDM4Yzdl NDYzYjU0NzQ0Yjc3Yjk4YWVhZmI0ZmE3Y19DT05ESVRJT049JycKZ2xfR05VTElCX0VOQUJM RURfZ2V0ZHRhYmxlc2l6ZV9DT05ESVRJT049JzEnCmdsX0dOVUxJQl9FTkFCTEVEX2dldGdy b3Vwc19DT05ESVRJT049JycKZ2xfR05VTElCX0VOQUJMRURfbGNobW9kX0NPTkRJVElPTj0n JwpnbF9HTlVMSUJfRU5BQkxFRF9vcGVuX0NPTkRJVElPTj0nJwpnbF9HTlVMSUJfRU5BQkxF RF9yYXdtZW1jaHJfQ09ORElUSU9OPScnCmdsX0dOVUxJQl9FTkFCTEVEX3N0cnRvbGxfQ09O RElUSU9OPScnCmdsX0dOVUxJQl9FTkFCTEVEX3V0aW1lbnNfQ09ORElUSU9OPScnCmdsX0xJ Qk9CSkRFUFM9JyAuLyQoREVQRElSKS9ta3RpbWUuUG8nCmdsX0xJQk9CSlM9JyBta3RpbWUu bycKZ2xfTFRMSUJPQkpTPScgbWt0aW1lLmxvJwpnbHRlc3RzX0xJQk9CSkRFUFM9JycKZ2x0 ZXN0c19MSUJPQkpTPScnCmdsdGVzdHNfTFRMSUJPQkpTPScnCmdsdGVzdHNfV0lUTkVTUz0n SU5fRU1BQ1NfR05VTElCX1RFU1RTJwpnc2V0dGluZ3NzY2hlbWFkaXI9JycKaG9zdD0neDg2 XzY0LXBjLWxpbnV4LWdudScKaG9zdF9hbGlhcz0nJwpob3N0X2NwdT0neDg2XzY0Jwpob3N0 X29zPSdsaW51eC1nbnUnCmhvc3RfdmVuZG9yPSdwYycKaHRtbGRpcj0nJHtkb2NkaXJ9Jwpp bmNsdWRlZGlyPScke3ByZWZpeH0vaW5jbHVkZScKaW5mb2Rpcj0nJHtkYXRhcm9vdGRpcn0v aW5mbycKbGliZGlyPScke2V4ZWNfcHJlZml4fS9saWInCmxpYmV4ZWNkaXI9JyR7ZXhlY19w cmVmaXh9L2xpYmV4ZWMnCmxpYmxvY2tmaWxlPScnCmxpc3BkaXI9JyR7ZGF0YWRpcn0vZW1h Y3MvJHt2ZXJzaW9ufS9saXNwJwpsaXNwZGlycmVsPScke3ZlcnNpb259L2xpc3AnCmxpc3Bw YXRoPScke2xvY2FsbGlzcHBhdGh9OiR7c3RhbmRhcmRsaXNwcGF0aH0nCmxvY2FsZWRpcj0n JHtkYXRhcm9vdGRpcn0vbG9jYWxlJwpsb2NhbGxpc3BwYXRoPScke2RhdGFkaXJ9L2VtYWNz LyR7dmVyc2lvbn0vc2l0ZS1saXNwOiR7ZGF0YWRpcn0vZW1hY3Mvc2l0ZS1saXNwJwpsb2Nh bHN0YXRlZGlyPScke3ByZWZpeH0vdmFyJwptYW5kaXI9JyR7ZGF0YXJvb3RkaXJ9L21hbicK bnNfYXBwYmluZGlyPScnCm5zX2FwcGRpcj0nJwpuc19hcHBsaWJkaXI9JycKbnNfYXBwbGli ZXhlY2Rpcj0nJwpuc19hcHByZXNkaXI9JycKbnNfYXBwc3JjPScnCm5zX2NoZWNrX2ZpbGU9 JycKbnNfc2VsZl9jb250YWluZWQ9J25vJwpvbGRpbmNsdWRlZGlyPScvdXNyL2luY2x1ZGUn CnBkZmRpcj0nJHtkb2NkaXJ9JwpwcmVmaXg9Jy91c3IvbG9jYWwnCnByb2dyYW1fdHJhbnNm b3JtX25hbWU9J3MseCx4LCcKcHNkaXI9JyR7ZG9jZGlyfScKcnVuc3RhdGVkaXI9JyR7bG9j YWxzdGF0ZWRpcn0vcnVuJwpzYmluZGlyPScke2V4ZWNfcHJlZml4fS9zYmluJwpzaGFyZWRz dGF0ZWRpcj0nJHtwcmVmaXh9L2NvbScKc3JjZGlyPScuJwpzdGFuZGFyZGxpc3BwYXRoPSck e2xpc3BkaXJ9JwpzeXNjb25mZGlyPScke3ByZWZpeH0vZXRjJwp0YXJnZXRfYWxpYXM9JycK dmVyc2lvbj0nMzAuMC41MCcKd2l0aF9tYWlsdXRpbHM9J3llcycKeF9kZWZhdWx0X3NlYXJj aF9wYXRoPScvdXNyL3NoYXJlL1gxMS8lTC8lVC8lTiVDJVM6L3Vzci9zaGFyZS9YMTEvJWwv JVQvJU4lQyVTOi91c3Ivc2hhcmUvWDExLyVULyVOJUMlUzovdXNyL3NoYXJlL1gxMS8lTC8l VC8lTiVTOi91c3Ivc2hhcmUvWDExLyVsLyVULyVOJVM6L3Vzci9zaGFyZS9YMTEvJVQvJU4l UzovdXNyL2xpYi9YMTEvJUwvJVQvJU4lQyVTOi91c3IvbGliL1gxMS8lbC8lVC8lTiVDJVM6 L3Vzci9saWIvWDExLyVULyVOJUMlUzovdXNyL2xpYi9YMTEvJUwvJVQvJU4lUzovdXNyL2xp Yi9YMTEvJWwvJVQvJU4lUzovdXNyL2xpYi9YMTEvJVQvJU4lUycKCiMjIC0tLS0tLS0tLS0t LS0tLS0tLS0gIyMKIyMgRmlsZSBzdWJzdGl0dXRpb25zLiAjIwojIyAtLS0tLS0tLS0tLS0t LS0tLS0tICMjCgptb2R1bGVfZW52X3NuaXBwZXRfMjU9Jy4vc3JjL21vZHVsZS1lbnYtMjUu aCcKbW9kdWxlX2Vudl9zbmlwcGV0XzI2PScuL3NyYy9tb2R1bGUtZW52LTI2LmgnCm1vZHVs ZV9lbnZfc25pcHBldF8yNz0nLi9zcmMvbW9kdWxlLWVudi0yNy5oJwptb2R1bGVfZW52X3Nu aXBwZXRfMjg9Jy4vc3JjL21vZHVsZS1lbnYtMjguaCcKbW9kdWxlX2Vudl9zbmlwcGV0XzI5 PScuL3NyYy9tb2R1bGUtZW52LTI5LmgnCm1vZHVsZV9lbnZfc25pcHBldF8zMD0nLi9zcmMv bW9kdWxlLWVudi0zMC5oJwoKIyMgLS0tLS0tLS0tLS0gIyMKIyMgY29uZmRlZnMuaC4gIyMK IyMgLS0tLS0tLS0tLS0gIyMKCi8qIGNvbmZkZWZzLmggKi8KI2RlZmluZSBQQUNLQUdFX05B TUUgIkdOVSBFbWFjcyIKI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgojZGVmaW5l IFBBQ0tBR0VfVkVSU0lPTiAiMzAuMC41MCIKI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05V IEVtYWNzIDMwLjAuNTAiCiNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1h Y3NAZ251Lm9yZyIKI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0cHM6Ly93d3cuZ251Lm9yZy9z b2Z0d2FyZS9lbWFjcy8iCiNkZWZpbmUgSEFWRV9QRFVNUEVSIDEKI2RlZmluZSBIQVZFX1NU RElPX0ggMQojZGVmaW5lIEhBVkVfU1RETElCX0ggMQojZGVmaW5lIEhBVkVfU1RSSU5HX0gg MQojZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCiNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCiNk ZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQojZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCiNkZWZp bmUgSEFWRV9TWVNfVFlQRVNfSCAxCiNkZWZpbmUgSEFWRV9VTklTVERfSCAxCiNkZWZpbmUg SEFWRV9XQ0hBUl9IIDEKI2RlZmluZSBIQVZFX0xJTlVYX0ZTX0ggMQojZGVmaW5lIEhBVkVf TUFMTE9DX0ggMQojZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCiNkZWZpbmUgSEFWRV9Q VFlfSCAxCiNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCiNkZWZpbmUgSEFWRV9TWVNf VVRTTkFNRV9IIDEKI2RlZmluZSBIQVZFX1BXRF9IIDEKI2RlZmluZSBIQVZFX1VUTVBfSCAx CiNkZWZpbmUgSEFWRV9TQU5JVElaRVJfTFNBTl9JTlRFUkZBQ0VfSCAxCiNkZWZpbmUgSEFW RV9TQU5JVElaRVJfQVNBTl9JTlRFUkZBQ0VfSCAxCiNkZWZpbmUgSEFWRV9TQU5JVElaRVJf Q09NTU9OX0lOVEVSRkFDRV9ERUZTX0ggMQojZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEK I2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCiNk ZWZpbmUgSEFWRV9TWVNfVU5fSCAxCiNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCiNkZWZpbmUg SEFWRV9FWEVDSU5GT19IIDEKI2RlZmluZSBIQVZFX1NURElPX0VYVF9IIDEKI2RlZmluZSBI QVZFX1NZU19WRlNfSCAxCiNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCiNkZWZpbmUgSEFWRV9T WVNfQ0RFRlNfSCAxCiNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKI2RlZmluZSBIQVZFX0lF RUU3NTRfSCAxCiNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCiNkZWZpbmUgSEFWRV9TWVNfU0VM RUNUX0ggMQojZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKI2RlZmluZSBIQVZFX1NZU19SQU5E T01fSCAxCiNkZWZpbmUgU1REQ19IRUFERVJTIDEKI2RlZmluZSBfQUxMX1NPVVJDRSAxCiNk ZWZpbmUgX0RBUldJTl9DX1NPVVJDRSAxCiNkZWZpbmUgX0dOVV9TT1VSQ0UgMQojZGVmaW5l IF9IUFVYX0FMVF9YT1BFTl9TT0NLRVRfQVBJIDEKI2RlZmluZSBfTkVUQlNEX1NPVVJDRSAx CiNkZWZpbmUgX09QRU5CU0RfU09VUkNFIDEKI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1B TlRJQ1MgMQojZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9BVFRSSUJTX0VYVF9fIDEK I2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfQkZQX0VYVF9fIDEKI2RlZmluZSBfX1NU RENfV0FOVF9JRUNfNjA1NTlfREZQX0VYVF9fIDEKI2RlZmluZSBfX1NURENfV0FOVF9JRUNf NjA1NTlfRVhUX18gMQojZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9GVU5DU19FWFRf XyAxCiNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X1RZUEVTX0VYVF9fIDEKI2RlZmlu ZSBfX1NURENfV0FOVF9MSUJfRVhUMl9fIDEKI2RlZmluZSBfX1NURENfV0FOVF9NQVRIX1NQ RUNfRlVOQ1NfXyAxCiNkZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQojZGVmaW5lIF9fRVhURU5T SU9OU19fIDEKI2RlZmluZSBHQ0NfTElOVCAxCiNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9s aW51eCIKI2RlZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAxCiNkZWZpbmUgSEFWRV9BTFNB IDEKI2RlZmluZSBIQVZFX1NPVU5EIDEKI2RlZmluZSBIQVZFX1BFUlNPTkFMSVRZX0FERFJf Tk9fUkFORE9NSVpFIDEKI2RlZmluZSBIQVZFX0xJTlVYX1NZU0lORk8gMQojZGVmaW5lIExJ TlVYX1NZU0lORk9fVU5JVCAxCiNkZWZpbmUgSEFWRV9URVJNX0ggMQojZGVmaW5lIEhBVkVf U1lTX1dBSVRfSCAxCiNkZWZpbmUgSEFWRV9ORVRfSUZfSCAxCiNkZWZpbmUgSEFWRV9JRkFE RFJTX0ggMQojZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9GTEFHUyAxCiNkZWZpbmUg SEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCiNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZS RVFfSUZSX05FVE1BU0sgMQojZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9CUk9BREFE RFIgMQojZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERSIDEKI2RlZmluZSBIQVZF X1NCUksgMQojZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQojZGVmaW5lIEhBVkVfRk9SSyAx CiNkZWZpbmUgSEFWRV9WRk9SSyAxCiNkZWZpbmUgSEFWRV9GQ0hNT0QgMQojZGVmaW5lIEhB VkVfQ0FOT05JQ0FMSVpFX0ZJTEVfTkFNRSAxCiNkZWZpbmUgSEFWRV9SRUFMUEFUSCAxCiNk ZWZpbmUgSEFWRV9MU1RBVCAxCiNkZWZpbmUgSEFWRV9GQ0hNT0RBVCAxCiNkZWZpbmUgSEFW RV9MQ0hNT0QgMQojZGVmaW5lIEhBVkVfRkNOVEwgMQojZGVmaW5lIEhBVkVfRkRPUEVORElS IDEKI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQojZGVmaW5lIEhBVkVfRlNZTkMgMQojZGVmaW5l IEhBVkVfR0VUVElNRU9GREFZIDEKI2RlZmluZSBIQVZFX1BTRUxFQ1QgMQojZGVmaW5lIEhB VkVfUFRIUkVBRF9TSUdNQVNLIDEKI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKI2RlZmluZSBI QVZFX0lTQkxBTksgMQojZGVmaW5lIEhBVkVfSVNXQ1RZUEUgMQojZGVmaW5lIEhBVkVfU1RS VE9JTUFYIDEKI2RlZmluZSBIQVZFX1NZTUxJTksgMQojZGVmaW5lIEhBVkVfTE9DQUxUSU1F X1IgMQojZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCiNkZWZpbmUgU1lTVEVNX01BTExP QyAxCiNkZWZpbmUgSEFWRV9NTUFQIDEKI2RlZmluZSBIQVZFX1BUSFJFQUQgMQojZGVmaW5l IFRIUkVBRFNfRU5BQkxFRCAxCiNkZWZpbmUgSEFWRV9YS0IgMQojZGVmaW5lIEhBVkVfWEtC UkVGUkVTSEtFWUJPQVJETUFQUElORyAxCiNkZWZpbmUgSEFWRV9YS0JGUkVFTkFNRVMgMQoj ZGVmaW5lIEhBVkVfWFJNU0VUREFUQUJBU0UgMQojZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09V UkNFU1RSSU5HIDEKI2RlZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJPRlNDUkVFTiAxCiNkZWZp bmUgSEFWRV9YRElTUExBWUNFTExTIDEKI2RlZmluZSBIQVZFX1hERVNUUk9ZU1VCV0lORE9X UyAxCiNkZWZpbmUgSEFWRV9YMTFSNiAxCiNkZWZpbmUgSEFWRV9YX0kxOE4gMQojZGVmaW5l IEhBVkVfWElDQ0FMTEJBQ0tfQ0FMTEJBQ0sgMQojZGVmaW5lIEhBVkVfWDExUjZfWElNIDEK I2RlZmluZSBIQVZFX1JTVkcgMQojZGVmaW5lIEhBVkVfV0VCUCAxCiNkZWZpbmUgSEFWRV9T UUxJVEUzIDEKI2RlZmluZSBIQVZFX1NRTElURTNfTE9BRF9FWFRFTlNJT04gMQojZGVmaW5l IEhBVkVfR0VUQUREUklORk9fQSAxCiNkZWZpbmUgSEFWRV9HVEszIDEKI2RlZmluZSBHREtf RElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAxCiNkZWZpbmUgR0xJQl9ESVNBQkxFX0RF UFJFQ0FUSU9OX1dBUk5JTkdTIDEKI2RlZmluZSBVU0VfR1RLIDEKI2RlZmluZSBIQVZFX01B TExPQ19UUklNIDEKI2RlZmluZSBIQVZFX0RCVVMgMQojZGVmaW5lIEhBVkVfREJVU19XQVRD SF9HRVRfVU5JWF9GRCAxCiNkZWZpbmUgSEFWRV9EQlVTX1RZUEVfSVNfVkFMSUQgMQojZGVm aW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAxCiNkZWZpbmUgSEFWRV9EQlVTX1ZB TElEQVRFX1BBVEggMQojZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9JTlRFUkZBQ0UgMQoj ZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIgMQojZGVmaW5lIEhBVkVfR1NFVFRJ TkdTIDEKI2RlZmluZSBIQVZFX0xJQlNFTElOVVggMQojZGVmaW5lIEhBVkVfR05VVExTIDEK I2RlZmluZSBIQVZFX0xJQlNZU1RFTUQgMQojZGVmaW5lIEhBVkVfSlNPTiAxCiNkZWZpbmUg SEFWRV9JTk9USUZZIDEKI2RlZmluZSBVU0VfRklMRV9OT1RJRlkgMQojZGVmaW5lIFVTRV9U T09MS0lUX1NDUk9MTF9CQVJTIDEKI2RlZmluZSBIQVZFX1hJTSAxCiNkZWZpbmUgVVNFX1hJ TSAxCiNkZWZpbmUgSEFWRV9YUkVOREVSIDEKI2RlZmluZSBVU0VfQ0FJUk9fWENCIDEKI2Rl ZmluZSBVU0VfQ0FJUk8gMQojZGVmaW5lIEhBVkVfRlJFRVRZUEUgMQojZGVmaW5lIEhBVkVf RlRfRkFDRV9HRVRDSEFSVkFSSUFOVElOREVYIDEKI2RlZmluZSBIQVZFX0xJQk9URiAxCiNk ZWZpbmUgSEFWRV9PVEZfR0VUX1ZBUklBVElPTl9HTFlQSFMgMQojZGVmaW5lIEhBVkVfTTE3 Tl9GTFQgMQojZGVmaW5lIEhBVkVfSEFSRkJVWlogMQojZGVmaW5lIFVTRV9YQ0IgMQojZGVm aW5lIEhBVkVfWFBNIDEKI2RlZmluZSBIQVZFX0pQRUcgMQojZGVmaW5lIEhBVkVfTENNUzIg MQojZGVmaW5lIEhBVkVfWkxJQiAxCiNkZWZpbmUgRFlOQU1JQ19MSUJfU1VGRklYICIuc28i CiNkZWZpbmUgRFlOQU1JQ19MSUJfU0VDT05EQVJZX1NVRkZJWCAiIgojZGVmaW5lIEhBVkVf RExBRERSIDEKI2RlZmluZSBIQVZFX01PRFVMRVMgMQojZGVmaW5lIE1PRFVMRVNfU1VGRklY ICIuc28iCiNkZWZpbmUgTkFUSVZFX0VMSVNQX1NVRkZJWCAiLmVsbiIKI2RlZmluZSBIQVZF X1BORyAxCiNkZWZpbmUgSEFWRV9USUZGIDEKI2RlZmluZSBIQVZFX0dJRiAxCiNkZWZpbmUg SEFWRV9HUE0gMQojZGVmaW5lIEhBVkVfWF9TTSAxCiNkZWZpbmUgSEFWRV9YUkFORFIgMQoj ZGVmaW5lIEhBVkVfWElORVJBTUEgMQojZGVmaW5lIEhBVkVfWEZJWEVTIDEKI2RlZmluZSBI QVZFX1hJTlBVVDIgMQojZGVmaW5lIEhBVkVfWElTQ1JPTExDTEFTU0lORk9fVFlQRSAxCiNk ZWZpbmUgSEFWRV9YSVRPVUNIQ0xBU1NJTkZPX1RZUEUgMQojZGVmaW5lIEhBVkVfWElCQVJS SUVSUkVMRUFTRVBPSU5URVJJTkZPX0RFVklDRUlEIDEKI2RlZmluZSBIQVZFX1hJR0VTVFVS RUNMQVNTSU5GT19UWVBFIDEKI2RlZmluZSBIQVZFX1hTWU5DIDEKI2RlZmluZSBIQVZFX1hT WU5DVFJJR0dFUkZFTkNFIDEKI2RlZmluZSBIQVZFX1hEQkUgMQojZGVmaW5lIEhBVkVfWENC X1NIQVBFIDEKI2RlZmluZSBIQVZFX1hTSEFQRSAxCiNkZWZpbmUgSEFWRV9YQ09NUE9TSVRF IDEKI2RlZmluZSBIQVZFX0xJQlhNTDIgMQojZGVmaW5lIEhBVkVfTElOVVhfU0VDQ09NUF9I IDEKI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQojZGVmaW5l IEhBVkVfREVDTF9TRUNDT01QX0ZJTFRFUl9GTEFHX1RTWU5DIDEKI2RlZmluZSBIQVZFX0xJ TlVYX0ZJTFRFUl9IIDEKI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxU RVIgMQojZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX0ZJTFRFUl9GTEFHX1RTWU5DIDEKI2Rl ZmluZSBTSVpFT0ZfTE9ORyA4CiNkZWZpbmUgSEFWRV9BQ0NFUFQ0IDEKI2RlZmluZSBIQVZF X0ZDSERJUiAxCiNkZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAxCiNkZWZpbmUgSEFWRV9HRVRS VVNBR0UgMQojZGVmaW5lIEhBVkVfR0VUX0NVUlJFTlRfRElSX05BTUUgMQojZGVmaW5lIEhB VkVfTFJBTkQ0OCAxCiNkZWZpbmUgSEFWRV9SQU5ET00gMQojZGVmaW5lIEhBVkVfUklOVCAx CiNkZWZpbmUgSEFWRV9UUlVOQyAxCiNkZWZpbmUgSEFWRV9TRUxFQ1QgMQojZGVmaW5lIEhB VkVfR0VUUEFHRVNJWkUgMQojZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKI2RlZmluZSBIQVZF X05FV0xPQ0FMRSAxCiNkZWZpbmUgSEFWRV9HRVRSTElNSVQgMQojZGVmaW5lIEhBVkVfU0VU UkxJTUlUIDEKI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKI2RlZmluZSBIQVZFX1BUSFJFQURf U0lHTUFTSyAxCiNkZWZpbmUgSEFWRV9TVFJTSUdOQUwgMQojZGVmaW5lIEhBVkVfU0VUSVRJ TUVSIDEKI2RlZmluZSBIQVZFX1NFTkRUTyAxCiNkZWZpbmUgSEFWRV9SRUNWRlJPTSAxCiNk ZWZpbmUgSEFWRV9HRVRTT0NLTkFNRSAxCiNkZWZpbmUgSEFWRV9HRVRJRkFERFJTIDEKI2Rl ZmluZSBIQVZFX0ZSRUVJRkFERFJTIDEKI2RlZmluZSBIQVZFX0dBSV9TVFJFUlJPUiAxCiNk ZWZpbmUgSEFWRV9TWU5DIDEKI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKI2RlZmluZSBIQVZF X0VORFBXRU5UIDEKI2RlZmluZSBIQVZFX0dFVEdSRU5UIDEKI2RlZmluZSBIQVZFX0VOREdS RU5UIDEKI2RlZmluZSBIQVZFX1JFTkFNRUFUMiAxCiNkZWZpbmUgSEFWRV9DRk1BS0VSQVcg MQojZGVmaW5lIEhBVkVfQ0ZTRVRTUEVFRCAxCiNkZWZpbmUgSEFWRV9fX0VYRUNVVEFCTEVf U1RBUlQgMQojZGVmaW5lIEhBVkVfTE9HMiAxCiNkZWZpbmUgSEFWRV9QVEhSRUFEX1NFVE5B TUVfTlAgMQojZGVmaW5lIEhBVkVfQUxJR05FRF9BTExPQyAxCiNkZWZpbmUgSEFWRV9ERUNM X0FMSUdORURfQUxMT0MgMQojZGVmaW5lIEhBVkVfUE9TSVhfTUFEVklTRSAxCiNkZWZpbmUg SEFWRV9fX0JVSUxUSU5fRlJBTUVfQUREUkVTUyAxCiNkZWZpbmUgSEFWRV9fX0JVSUxUSU5f VU5XSU5EX0lOSVQgMQojZGVmaW5lIEhBVkVfRlNFRUtPIDEKI2RlZmluZSBIQVZFX0dSQU5U UFQgMQojZGVmaW5lIEhBVkVfR0VUUFQgMQojZGVmaW5lIEhBVkVfUE9TSVhfT1BFTlBUIDEK I2RlZmluZSBURVJNSU5GTyAxCiNkZWZpbmUgVEVSTUlORk9fREVGSU5FU19CQyAxCiNkZWZp bmUgSEFWRV9USU1FUkZEIDEKI2RlZmluZSBIQVZFX1ZBTEdSSU5EX1ZBTEdSSU5EX0ggMQoj ZGVmaW5lIEhBVkVfU1RSVUNUX1VOSVBBSVJfVU5JQ09ERSAxCiNkZWZpbmUgSEFWRV9XT1JL SU5HX1ZGT1JLIDEKI2RlZmluZSBIQVZFX1dPUktJTkdfRk9SSyAxCiNkZWZpbmUgSEFWRV9T TlBSSU5URiAxCiNkZWZpbmUgSEFWRV9TUEFXTl9IIDEKI2RlZmluZSBIQVZFX1BPU0lYX1NQ QVdOIDEKI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOX0ZJTEVfQUNUSU9OU19BRERDSERJUl9O UCAxCiNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTkFUVFJfU0VURkxBR1MgMQojZGVmaW5lIEhB VkVfREVDTF9QT1NJWF9TUEFXTl9TRVRTSUQgMQojZGVmaW5lIEhBVkVfR0xJQiAxCiNkZWZp bmUgSEFWRV9MQU5HSU5GT19DT0RFU0VUIDEKI2RlZmluZSBIQVZFX0xBTkdJTkZPX19OTF9Q QVBFUl9XSURUSCAxCiNkZWZpbmUgSEFWRV9NQlNUQVRFX1QgMQojZGVmaW5lIEFNUEVSU0FO RF9GVUxMX05BTUUgMQojZGVmaW5lIEhBVkVfUFRZUyAxCiNkZWZpbmUgSEFWRV9TT0NLRVRT IDEKI2RlZmluZSBOVUxMX0RFVklDRSAiL2Rldi9udWxsIgojZGVmaW5lIFNFUENIQVIgJzon CiNkZWZpbmUgc3VicHJvY2Vzc2VzIDEKI2RlZmluZSBVU0VSX0ZVTExfTkFNRSBwdy0+cHdf Z2Vjb3MKI2RlZmluZSBESVJFQ1RPUllfU0VQICcvJwojZGVmaW5lIElTX0RFVklDRV9TRVAo X2NfKSAwCiNkZWZpbmUgSVNfRElSRUNUT1JZX1NFUChfY18pICgoX2NfKSA9PSBESVJFQ1RP UllfU0VQKQojZGVmaW5lIElTX0FOWV9TRVAoX2NfKSAoSVNfRElSRUNUT1JZX1NFUCAoX2Nf KSkKI2RlZmluZSBIQVZFX1BST0NGUyAxCiNkZWZpbmUgREVGQVVMVF9TT1VORF9ERVZJQ0Ug Ii9kZXYvZHNwIgojZGVmaW5lIElOVEVSUlVQVF9JTlBVVCAxCiNkZWZpbmUgTkFSUk9XUFJP VE8gMQojZGVmaW5lIFVOSVg5OF9QVFlTIDEKI2RlZmluZSBQVFlfSVRFUkFUSU9OIGludCBp OyBmb3IgKGkgPSAwOyBpIDwgMTsgaSsrKQojZGVmaW5lIFBUWV9UVFlfTkFNRV9TUFJJTlRG IHsgY2hhciAqcHR5bmFtZSA9IDA7IHNpZ3NldF90IGJsb2NrZWQ7IHNpZ2VtcHR5c2V0ICgm YmxvY2tlZCk7IHNpZ2FkZHNldCAoJmJsb2NrZWQsIFNJR0NITEQpOyBwdGhyZWFkX3NpZ21h c2sgKFNJR19CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoZ3JhbnRwdCAoZmQpICE9IC0xICYm IHVubG9ja3B0IChmZCkgIT0gLTEpIHB0eW5hbWUgPSBwdHNuYW1lKGZkKTsgcHRocmVhZF9z aWdtYXNrIChTSUdfVU5CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoIXB0eW5hbWUpIHsgZW1h Y3NfY2xvc2UgKGZkKTsgcmV0dXJuIC0xOyB9IHNucHJpbnRmIChwdHlfbmFtZSwgUFRZX05B TUVfU0laRSwgIiVzIiwgcHR5bmFtZSk7IH0KI2RlZmluZSBQVFlfT1BFTiBkbyB7IGZkID0g cG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX0NMT0VYRUMgfCBPX05PQ1RUWSk7IGlmIChmZCA8 IDAgJiYgZXJybm8gPT0gRUlOVkFMKSBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19O T0NUVFkpOyB9IHdoaWxlIChmYWxzZSkKI2RlZmluZSBQVFlfTkFNRV9TUFJJTlRGIC8qKi8K I2RlZmluZSBTSUdOQUxTX1ZJQV9DSEFSQUNURVJTIDEKI2RlZmluZSBHQ19TRVRKTVBfV09S S1MgMQojZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCiNkZWZpbmUgSEFWRV9fU0VUSk1QIDEK I2RlZmluZSBIQVZFX1NJR1NFVEpNUCAxCiNkZWZpbmUgSEFWRV9TVEFDS19PVkVSRkxPV19I QU5ETElORyAxCiNkZWZpbmUgVVNHIC8qKi8KI2RlZmluZSBHTlVfTElOVVggLyoqLwojZGVm aW5lIFNJWkVPRl9TUEVFRF9UIDQKI2RlZmluZSBVU0FCTEVfRklPTlJFQUQgMQojZGVmaW5l IFVTQUJMRV9TSUdJTyAxCiNkZWZpbmUgQ09QWVJJR0hUICJDb3B5cmlnaHQgKEMpIDIwMjMg RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuIgojZGVmaW5lIFRFUk1fSEVBREVSICJn dGt1dGlsLmgiCiNkZWZpbmUgRU1BQ1NfQ09ORklHVVJBVElPTiAieDg2XzY0LXBjLWxpbnV4 LWdudSIKI2RlZmluZSBFTUFDU19DT05GSUdfT1BUSU9OUyAiIgojZGVmaW5lIEhBVkVfWF9X SU5ET1dTIDEKI2RlZmluZSBIQVZFX1gxMSAxCiNkZWZpbmUgSEFWRV9TVFJVQ1RfQVRUUklC VVRFX0FMSUdORUQgMQojZGVmaW5lIEhBVkVfVFlQRU9GIDEKI2RlZmluZSBIQVZFX1NUQVRF TUVOVF9FWFBSRVNTSU9OUyAxCiNkZWZpbmUgTUFMTE9DXzBfSVNfTk9OTlVMTCAxCiNkZWZp bmUgSEFWRV9TWVNfQUNMX0ggMQojZGVmaW5lIEhBVkVfQUNMX0dFVF9GSUxFIDEKI2RlZmlu ZSBIQVZFX0FDTF9HRVRfRkQgMQojZGVmaW5lIEhBVkVfQUNMX1NFVF9GSUxFIDEKI2RlZmlu ZSBIQVZFX0FDTF9TRVRfRkQgMQojZGVmaW5lIEhBVkVfQUNMX0ZSRUUgMQojZGVmaW5lIEhB VkVfQUNMX0ZST01fTU9ERSAxCiNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9URVhUIDEKI2RlZmlu ZSBIQVZFX0FDTF9ERUxFVEVfREVGX0ZJTEUgMQojZGVmaW5lIEhBVkVfQUNMX0VYVEVOREVE X0ZJTEUgMQojZGVmaW5lIEhBVkVfQUNMX0xJQkFDTF9IIDEKI2RlZmluZSBIQVZFX0FDTF9F TlRSSUVTIDEKI2RlZmluZSBIQVZFX0FDTF9GSVJTVF9FTlRSWSAxCiNkZWZpbmUgVVNFX0FD TCAxCiNkZWZpbmUgSEFWRV9BTExPQ0FfSCAxCiNkZWZpbmUgSEFWRV9BTExPQ0EgMQojZGVm aW5lIExTVEFUX0ZPTExPV1NfU0xBU0hFRF9TWU1MSU5LIDEKI2RlZmluZSBGVU5DX1JFQUxQ QVRIX1dPUktTIDEKI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCiNkZWZpbmUgSEFWRV9HRVRD V0QgMQojZGVmaW5lIHJlc3RyaWN0IF9fcmVzdHJpY3RfXwojZGVmaW5lIEhBVkVfRU5WSVJP Tl9ERUNMIDEKI2RlZmluZSBIQVZFX0RFQ0xfU1RSTU9ERSAwCiNkZWZpbmUgSEFWRV9HRVRP UFRfSCAxCiNkZWZpbmUgSEFWRV9HRVRPUFRfTE9OR19PTkxZIDEKI2RlZmluZSBIQVZFX0xP TkdfTE9OR19JTlQgMQojZGVmaW5lIEhBVkVfVU5TSUdORURfTE9OR19MT05HX0lOVCAxCiNk ZWZpbmUgSEFWRV9ERUNMX01FTU1FTSAxCiNkZWZpbmUgSEFWRV9ERUNMX01FTVJDSFIgMQoj ZGVmaW5lIEhBVkVfTUlOTUFYX0lOX1NZU19QQVJBTV9IIDEKI2RlZmluZSBUSU1FX1RfSVNf U0lHTkVEIDEKI2RlZmluZSBIQVZFX0RFQ0xfQUxBUk0gMQojZGVmaW5lIEhBVkVfU1RSVUNU X1RNX1RNX1pPTkUgMQojZGVmaW5lIEhBVkVfVE1fWk9ORSAxCiNkZWZpbmUgSEFWRV9UTV9H TVRPRkYgMQojZGVmaW5lIEhBVkVfU0lHU0VUX1QgMQojZGVmaW5lIEhBVkVfV0NIQVJfVCAx CiNkZWZpbmUgSEFWRV9ERUNMX0ZDTE9TRUFMTCAxCiNkZWZpbmUgSEFWRV9ERUNMX0dFVFcg MQojZGVmaW5lIEhBVkVfREVDTF9QVVRXIDEKI2RlZmluZSBfX1VTRV9NSU5HV19BTlNJX1NU RElPIDEKI2RlZmluZSBIQVZFX0RFQ0xfRUNWVCAxCiNkZWZpbmUgSEFWRV9ERUNMX0ZDVlQg MQojZGVmaW5lIEhBVkVfREVDTF9HQ1ZUIDEKI2RlZmluZSBIQVZFX0RFQ0xfU1RSTkxFTiAx CiNkZWZpbmUgSEFWRV9ERUNMX1NUUlRPSU1BWCAxCiNkZWZpbmUgX1VTRV9TVERfU1RBVCAx CiNkZWZpbmUgSEFWRV9ERUNMX0VYRUNWUEUgMQojZGVmaW5lIEhBVkVfREVDTF9DTEVBUkVS Ul9VTkxPQ0tFRCAxCiNkZWZpbmUgSEFWRV9ERUNMX0ZFT0ZfVU5MT0NLRUQgMQojZGVmaW5l IEhBVkVfREVDTF9GRVJST1JfVU5MT0NLRUQgMQojZGVmaW5lIEhBVkVfREVDTF9GRkxVU0hf VU5MT0NLRUQgMQojZGVmaW5lIEhBVkVfREVDTF9GR0VUU19VTkxPQ0tFRCAxCiNkZWZpbmUg SEFWRV9ERUNMX0ZQVVRDX1VOTE9DS0VEIDEKI2RlZmluZSBIQVZFX0RFQ0xfRlBVVFNfVU5M T0NLRUQgMQojZGVmaW5lIEhBVkVfREVDTF9GUkVBRF9VTkxPQ0tFRCAxCiNkZWZpbmUgSEFW RV9ERUNMX0ZXUklURV9VTkxPQ0tFRCAxCiNkZWZpbmUgSEFWRV9ERUNMX0dFVENfVU5MT0NL RUQgMQojZGVmaW5lIEhBVkVfREVDTF9HRVRDSEFSX1VOTE9DS0VEIDEKI2RlZmluZSBIQVZF X0RFQ0xfUFVUQ19VTkxPQ0tFRCAxCiNkZWZpbmUgSEFWRV9ERUNMX1BVVENIQVJfVU5MT0NL RUQgMQojZGVmaW5lIEdFVEdST1VQU19UIGdpZF90CiNkZWZpbmUgSEFWRV9ERUNMX0dFVERU QUJMRVNJWkUgMQojZGVmaW5lIEhBVkVfTUFMTE9DX1BPU0lYIDEKI2RlZmluZSBQUk9NT1RF RF9NT0RFX1QgbW9kZV90CiNkZWZpbmUgSEFWRV9XT1JLSU5HX1VUSU1FUyAxCiNkZWZpbmUg SEFWRV9BTExPQ0EgMQojZGVmaW5lIEhBVkVfX19CVUlMVElOX0VYUEVDVCAxCiNkZWZpbmUg SEFWRV9CWVRFU1dBUF9IIDEKI2RlZmluZSBHTlVMSUJfQ0FOT05JQ0FMSVpFX0xHUEwgMQoj ZGVmaW5lIEhBVkVfUkVBRExJTktBVCAxCiNkZWZpbmUgSEFWRV9DTE9DS19HRVRSRVMgMQoj ZGVmaW5lIEhBVkVfQ0xPQ0tfR0VUVElNRSAxCiNkZWZpbmUgSEFWRV9DTE9DS19TRVRUSU1F IDEKI2RlZmluZSBHTlVMSUJfQ0xPU0VfU1RSRUFNIDEKI2RlZmluZSBIQVZFX0NPUFlfRklM RV9SQU5HRSAxCiNkZWZpbmUgSEFWRV9TVFJVQ1RfRElSRU5UX0RfVFlQRSAxCiNkZWZpbmUg SEFWRV9GQUNDRVNTQVQgMQojZGVmaW5lIEdOVUxJQl9GQUNDRVNTQVQgMQojZGVmaW5lIEhB VkVfREVDTF9GRE9QRU5ESVIgMQojZGVmaW5lIEdOVUxJQl9GRE9QRU5ESVIgMQojZGVmaW5l IEdFVFhBVFRSX1dJVEhfUE9TSVhfQUNMUyAxCiNkZWZpbmUgRkxFWElCTEVfQVJSQVlfTUVN QkVSIC8qKi8KI2RlZmluZSBIQVZFX0RFQ0xfX19GUEVORElORyAxCiNkZWZpbmUgSEFWRV9G UkVFX1BPU0lYIDEKI2RlZmluZSBIQVZFX1NZU19NT1VOVF9IIDEKI2RlZmluZSBTVEFUX1NU QVRWRlMgMQojZGVmaW5lIFNUQVRfU1RBVEZTMl9GUlNJWkUgMQojZGVmaW5lIEhBVkVfU1lT X1NUQVRGU19IIDEKI2RlZmluZSBIQVZFX0ZVVElNRU5TIDEKI2RlZmluZSBIQVZFX0dFVExP QURBVkcgMQojZGVmaW5lIEhBVkVfR0VUUkFORE9NIDEKI2RlZmluZSBIQVZFX1RJTUVTUEVD X0dFVCAxCiNkZWZpbmUgR0VUVElNRU9GREFZX1RJTUVaT05FIHZvaWQKI2RlZmluZSBIQVZF X19fSU5MSU5FIDEKI2RlZmluZSBIQVZFX0dNUF9IIDEKI2RlZmluZSBIQVZFX01FTU1FTSAx CiNkZWZpbmUgSEFWRV9NRU1QQ1BZIDEKI2RlZmluZSBIQVZFX01FTVJDSFIgMQojZGVmaW5l IEhBVkVfTUtPU1RFTVAgMQojZGVmaW5lIEdOVUxJQl9NS09TVEVNUCAxCiNkZWZpbmUgTkVF RF9NS1RJTUVfV09SS0lORyAxCiNkZWZpbmUgSEFWRV9CVUdfQklHX05BTk9TTEVFUCAxCiNk ZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCiNkZWZpbmUgSEFWRV9TQ0hFRF9HRVRBRkZJTklU WSAxCiNkZWZpbmUgSEFWRV9TQ0hFRF9HRVRBRkZJTklUWV9MSUtFX0dMSUJDIDEKI2RlZmlu ZSBteV9zdHJmdGltZSBuc3RyZnRpbWUKI2RlZmluZSBIQVZFX1BJUEUyIDEKI2RlZmluZSBV U0VfWEFUVFIgMQojZGVmaW5lIEhBVkVfUkVBRExJTktBVCAxCiNkZWZpbmUgSEFWRV9TSUdE RVNDUl9OUCAxCiNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9BVElNX1RWX05TRUMgMQoj ZGVmaW5lIFRZUEVPRl9TVFJVQ1RfU1RBVF9TVF9BVElNX0lTX1NUUlVDVF9USU1FU1BFQyAx CiNkZWZpbmUgR05VTElCX0ZTQ0FORiAxCiNkZWZpbmUgR05VTElCX1NDQU5GIDEKI2RlZmlu ZSBIQVZFX1NUUENQWSAxCiNkZWZpbmUgR05VTElCX1RFTVBOQU1FIDEKI2RlZmluZSBIQVZF X0RFQ0xfTE9DQUxUSU1FX1IgMQojZGVmaW5lIEhBVkVfVElNRUdNIDEKI2RlZmluZSBIQVZF X1RJTUVSX1NFVFRJTUUgMQojZGVmaW5lIEdOVUxJQl9TVERJT19TSU5HTEVfVEhSRUFEIDEK I2RlZmluZSBVU0VfVU5MT0NLRURfSU8gR05VTElCX1NURElPX1NJTkdMRV9USFJFQUQKI2Rl ZmluZSBIQVZFX1VUSU1FTlNBVCAxCiNkZWZpbmUgSEFWRV9DX1ZBUkFSUkFZUyAxCiNkZWZp bmUgTkVFRF9NS1RJTUVfSU5URVJOQUwgMQojZGVmaW5lIEhBVkVfVElNRVJfR0VUT1ZFUlJV TiAxCiNkZWZpbmUgSEFWRV9XSU5ET1dfU1lTVEVNIDEKI2RlZmluZSBQT0xMX0ZPUl9JTlBV VCAxCiNkZWZpbmUgSEFWRV9URVhUX0NPTlZFUlNJT04gMQojZGVmaW5lIEVNQUNTX0NPTkZJ R19GRUFUVVJFUyAiQUNMIENBSVJPIERCVVMgRlJFRVRZUEUgR0lGIEdMSUIgR01QIEdOVVRM UyBHUE0gR1NFVFRJTkdTIEhBUkZCVVpaIEpQRUcgSlNPTiBMQ01TMiBMSUJPVEYgTElCU0VM SU5VWCBMSUJTWVNURU1EIExJQlhNTDIgTTE3Tl9GTFQgTU9EVUxFUyBOT1RJRlkgSU5PVElG WSBQRFVNUEVSIFBORyBSU1ZHIFNFQ0NPTVAgU09VTkQgU1FMSVRFMyBUSFJFQURTIFRJRkYg VE9PTEtJVF9TQ1JPTExfQkFSUyBXRUJQIFgxMSBYREJFIFhJTSBYSU5QVVQyIFhQTSBHVEsz IFpMSUIiCgpjb25maWd1cmU6IGV4aXQgMAoKIyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAj IwojIyBSdW5uaW5nIGNvbmZpZy5zdGF0dXMuICMjCiMjIC0tLS0tLS0tLS0tLS0tLS0tLS0t LS0gIyMKClRoaXMgZmlsZSB3YXMgZXh0ZW5kZWQgYnkgR05VIEVtYWNzIGNvbmZpZy5zdGF0 dXMgMzAuMC41MCwgd2hpY2ggd2FzCmdlbmVyYXRlZCBieSBHTlUgQXV0b2NvbmYgMi43MS4g IEludm9jYXRpb24gY29tbWFuZCBsaW5lIHdhcwoKICBDT05GSUdfRklMRVMgICAgPSAKICBD T05GSUdfSEVBREVSUyAgPSAKICBDT05GSUdfTElOS1MgICAgPSAKICBDT05GSUdfQ09NTUFO RFMgPSAKICAkIC4vY29uZmlnLnN0YXR1cyAKCm9uIE5hbm9LREUKCmNvbmZpZy5zdGF0dXM6 MjUxNDogY3JlYXRpbmcgc3JjL3ZlcmJvc2UubWsKY29uZmlnLnN0YXR1czoyNTE0OiBjcmVh dGluZyBzcmMvZW1hY3MtbW9kdWxlLmgKY29uZmlnLnN0YXR1czoyNTE0OiBjcmVhdGluZyBN YWtlZmlsZQpjb25maWcuc3RhdHVzOjI1MTQ6IGNyZWF0aW5nIGxpYi9nbnVsaWIubWsKY29u ZmlnLnN0YXR1czoyNTE0OiBjcmVhdGluZyAuL2RvYy9tYW4vZW1hY3MuMQpjb25maWcuc3Rh dHVzOjI1MTQ6IGNyZWF0aW5nIGxpYi9NYWtlZmlsZQpjb25maWcuc3RhdHVzOjI1MTQ6IGNy ZWF0aW5nIGxpYi1zcmMvTWFrZWZpbGUKY29uZmlnLnN0YXR1czoyNTE0OiBjcmVhdGluZyBv bGRYTWVudS9NYWtlZmlsZQpjb25maWcuc3RhdHVzOjI1MTQ6IGNyZWF0aW5nIGRvYy9lbWFj cy9NYWtlZmlsZQpjb25maWcuc3RhdHVzOjI1MTQ6IGNyZWF0aW5nIGRvYy9taXNjL01ha2Vm aWxlCmNvbmZpZy5zdGF0dXM6MjUxNDogY3JlYXRpbmcgZG9jL2xpc3BpbnRyby9NYWtlZmls ZQpjb25maWcuc3RhdHVzOjI1MTQ6IGNyZWF0aW5nIGRvYy9saXNwcmVmL01ha2VmaWxlCmNv bmZpZy5zdGF0dXM6MjUxNDogY3JlYXRpbmcgc3JjL01ha2VmaWxlCmNvbmZpZy5zdGF0dXM6 MjUxNDogY3JlYXRpbmcgbHdsaWIvTWFrZWZpbGUKY29uZmlnLnN0YXR1czoyNTE0OiBjcmVh dGluZyBsaXNwL01ha2VmaWxlCmNvbmZpZy5zdGF0dXM6MjUxNDogY3JlYXRpbmcgbGVpbS9N YWtlZmlsZQpjb25maWcuc3RhdHVzOjI1MTQ6IGNyZWF0aW5nIG5leHRzdGVwL01ha2VmaWxl CmNvbmZpZy5zdGF0dXM6MjUxNDogY3JlYXRpbmcgbnQvTWFrZWZpbGUKY29uZmlnLnN0YXR1 czoyNTE0OiBjcmVhdGluZyB0ZXN0L01ha2VmaWxlCmNvbmZpZy5zdGF0dXM6MjUxNDogY3Jl YXRpbmcgdGVzdC9tYW51YWwvbm92ZXJsYXkvTWFrZWZpbGUKY29uZmlnLnN0YXR1czoyNTE0 OiBjcmVhdGluZyB0ZXN0L2luZnJhL01ha2VmaWxlCmNvbmZpZy5zdGF0dXM6MjUxNDogY3Jl YXRpbmcgYWRtaW4vY2hhcnNldHMvTWFrZWZpbGUKY29uZmlnLnN0YXR1czoyNTE0OiBjcmVh dGluZyBhZG1pbi91bmlkYXRhL01ha2VmaWxlCmNvbmZpZy5zdGF0dXM6MjUxNDogY3JlYXRp bmcgYWRtaW4vZ3JhbW1hcnMvTWFrZWZpbGUKY29uZmlnLnN0YXR1czoyNTE0OiBjcmVhdGlu ZyBzcmMvY29uZmlnLmgKY29uZmlnLnN0YXR1czoyNzE0OiBleGVjdXRpbmcgc3JjL2VwYXRo cy5oIGNvbW1hbmRzCmNvbmZpZy5zdGF0dXM6MjcxNDogZXhlY3V0aW5nIHNyYy8uZ2RiaW5p dCBjb21tYW5kcwpjb25maWcuc3RhdHVzOjI3MTQ6IGV4ZWN1dGluZyBkb2MvZW1hY3MvZW1h Y3N2ZXIudGV4aSBjb21tYW5kcwpjb25maWcuc3RhdHVzOjI3MTQ6IGV4ZWN1dGluZyBldGMt cmVmY2FyZHMtZW1hY3N2ZXIudGV4IGNvbW1hbmRzCg== --------------NrcUj0Jc4O8s9q8nlKDLSkFI--