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 10:44:07 +0100 Message-ID: <38da7ea8-1903-4153-6533-d199efff4ffd@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> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------3uwEpcw87tp3rRzlLl9gyzFz" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="17182"; 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 10:45:28 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 1pZqMR-0000AC-Fc for geb-bug-gnu-emacs@m.gmane-mx.org; Wed, 08 Mar 2023 10:45:28 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pZqM7-0000Jd-VQ; Wed, 08 Mar 2023 04:45:08 -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 1pZqM3-0000JB-PZ for bug-gnu-emacs@gnu.org; Wed, 08 Mar 2023 04:45: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 1pZqM2-0006pS-PB for bug-gnu-emacs@gnu.org; Wed, 08 Mar 2023 04:45:03 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1pZqM2-0003fM-3F for bug-gnu-emacs@gnu.org; Wed, 08 Mar 2023 04:45: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 09:45: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.167826865914016 (code B ref 61988); Wed, 08 Mar 2023 09:45:01 +0000 Original-Received: (at 61988) by debbugs.gnu.org; 8 Mar 2023 09:44:19 +0000 Original-Received: from localhost ([127.0.0.1]:47814 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pZqLL-0003e0-BW for submit@debbugs.gnu.org; Wed, 08 Mar 2023 04:44:19 -0500 Original-Received: from michael-notr.mail.tiscali.it ([213.205.33.216]:33561 helo=smtp.tiscali.it) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pZqLH-0003dp-4a for 61988@debbugs.gnu.org; Wed, 08 Mar 2023 04:44:17 -0500 Original-Received: from [192.168.1.12] ([79.19.39.144]) by michael.mail.tiscali.it with id Vlk72902r36cfzB01lk84B; Wed, 08 Mar 2023 09:44:12 +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: <87edpzobtk.fsf@yahoo.com> DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tiscali.it; s=smtp; t=1678268652; bh=+X+2jK7/oYOQrpWrLLKa3ja57xemgADNFKKZJC2B6Pk=; h=Date:Subject:To:Cc:References:From:In-Reply-To; b=csvColxOB4LUbZDITTQS1wQCUM4siOphYDfZx2NP8a97GpcYQPqbSUErjrJWkENzu 2b1/ZdmHl6yEtV4f0g/5/nXxmdODxRDAa9/vmo4BCMyHv08gitJv7Tsnw8FNy1CjDr tsmpLPfdob09lLmgxwpOXIp9SB/h1zqECEKegOK4= 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:257526 Archived-At: This is a multi-part message in MIME format. --------------3uwEpcw87tp3rRzlLl9gyzFz Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 bm90IHdvcmtzOg0KDQovdXNyL2Jpbi9sZDogaW1hZ2UubzogdW5kZWZpbmVkIHJlZmVyZW5j ZSB0byBzeW1ib2wgJ1dlYlBHZXRJbmZvJw0KL3Vzci9iaW4vbGQ6IC9saWIveDg2XzY0LWxp bnV4LWdudS9saWJ3ZWJwLnNvLjc6IGVycm9yIGFkZGluZyBzeW1ib2xzOiANCkRTTyBtaXNz aW5nIGZyb20gY29tbWFuZCBsaW5lDQpjb2xsZWN0MjogZXJyb3I6IGxkIHJldHVybmVkIDEg ZXhpdCBzdGF0dXMNCm1ha2VbM106ICoqKiBbTWFrZWZpbGU6NzA1OiB0ZW1hY3NdIEVycm9y ZSAxDQptYWtlWzNdOiB1c2NpdGEgZGFsbGEgZGlyZWN0b3J5IMKrL2FwcC9lbWFjcy9zcmPC uw0KbWFrZVsyXTogKioqIFtNYWtlZmlsZTo1NDQ6IHNyY10gRXJyb3JlIDINCm1ha2VbMl06 IHVzY2l0YSBkYWxsYSBkaXJlY3RvcnkgwqsvYXBwL2VtYWNzwrsNCm1ha2VbMV06ICoqKiBb TWFrZWZpbGU6MTI2MDogYWN0dWFsLWJvb3RzdHJhcF0gRXJyb3JlIDINCm1ha2VbMV06IHVz Y2l0YSBkYWxsYSBkaXJlY3RvcnkgwqsvYXBwL2VtYWNzwrsNCm1ha2VbMV06IGluZ3Jlc3Nv IG5lbGxhIGRpcmVjdG9yeSDCqy9hcHAvZW1hY3PCuw0KKioqDQoqKiogIm1ha2UgYm9vdHN0 cmFwIiBmYWlsZWQgd2l0aCBleGl0IHN0YXR1cyAyLg0KKioqDQoqKiogWW91IGNvdWxkIHRy eSB0bzoNCioqKiAtIHJ1biAibWFrZSBleHRyYWNsZWFuIiBhbmQgcnVuICJtYWtlIiBhZ2Fp biAob3IsIGVxdWl2YWxlbnRseSwgcnVuDQoqKirCoMKgICJtYWtlIGJvb3RzdHJhcCBjb25m aWd1cmU9ZGVmYXVsdCIpLCB0byByZWJ1aWxkIEVtYWNzIHdpdGggdGhlDQoqKirCoMKgIGRl ZmF1bHQgY29uZmlndXJhdGlvbiBvcHRpb25zLCB3aGljaCBtaWdodCBmaXggdGhlIHByb2Js ZW0NCioqKiAtIHJ1biAiZ2l0IGNsZWFuIC1mZHgiIGFuZCBydW4gIm1ha2UgYm9vdHN0cmFw IiBhZ2Fpbiwgd2hpY2ggbWlnaHQNCioqKsKgwqAgZml4IHRoZSBwcm9ibGVtIGlmICJtYWtl IGJvb3RzdHJhcCBjb25maWd1cmU9ZGVmYXVsdCIgZGlkIG5vdA0KKioqwqDCoCAhQkVXQVJF ISAiZ2l0IGNsZWFuIC1mZHgiIGRlbGV0ZXMgYWxsIGZpbGVzIHRoYXQgYXJlIG5vdCB1bmRl cg0KKioqwqDCoCAhQkVXQVJFISB2ZXJzaW9uIGNvbnRyb2wsIHdoaWNoIG1lYW5zIHRoYXQg YWxsIGNoYW5nZXMgdG8gc3VjaA0KKioqwqDCoCAhQkVXQVJFISBmaWxlcyB3aWxsIGJlIGxv c3QgYW5kIGNhbm5vdCBiZSByZXN0b3JlZCBsYXRlcg0KKioqIC0gcnVuICJtYWtlIFY9MSIs IHdoaWNoIGRpc3BsYXlzIHRoZSBmdWxsIGNvbW1hbmRzIGludm9rZWQgYnkgbWFrZSwNCioq KsKgwqAgdG8gZnVydGhlciBpbnZlc3RpZ2F0ZSB0aGUgcHJvYmxlbQ0KKioqIC0gcmVwb3J0 IHRoZSBwcm9ibGVtIGFuZCBhc2sgZm9yIGhlbHAgYnkgc2VuZGluZyBhbiBlbWFpbCB0bw0K KioqwqDCoCBidWctZ251LWVtYWNzQGdudS5vcmcsIG1lbnRpb25pbmcgYXQgbGVhc3QgdGhl IGJ1aWxkIGVycm9yDQoqKirCoMKgIG1lc3NhZ2UsIHRoZSBwbGF0Zm9ybSwgYW5kIHRoZSBy ZXBvc2l0b3J5IHJldmlzaW9uIGRpc3BsYXllZCBieQ0KKioqwqDCoCAiZ2l0IHJldi1wYXJz ZSBIRUFEIg0KKioqDQptYWtlWzFdOiAqKiogW01ha2VmaWxlOjQxNDogYWR2aWNlLW9uLWZh aWx1cmVdIEVycm9yZSAyDQptYWtlWzFdOiB1c2NpdGEgZGFsbGEgZGlyZWN0b3J5IMKrL2Fw cC9lbWFjc8K7DQptYWtlOiAqKiogW01ha2VmaWxlOjEyNDM6IGJvb3RzdHJhcF0gRXJyb3Jl IDINCg0KYXR0YWNoZWQgY29uZmlndXJlLmFjIGFuZCBsb2cNCg0KZmlyc3QgcGF0Y2ggd29y a3MNCg0KbGFzdCBwYXRjaCBub3Qgd29ya3MNCg0KYmVzdCByZWdhcmRzDQoNCg0KDQpJbCAw OC8wMy8yMyAxMDowMiwgUG8gTHUgaGEgc2NyaXR0bzoNCj4gWW91ciBjb25maWcubG9nIHNo b3dzIHlvdSBhcHBsaWVkIHRoZSBvbGQgcGF0Y2guICBJJ20gdGFsa2luZyBhYm91dCB0aGlz DQo+IG5ldyBvbmU6DQo+DQo+IGRpZmYgLS1naXQgYS9jb25maWd1cmUuYWMgYi9jb25maWd1 cmUuYWMNCj4gaW5kZXggYmM3ZTYxMDQ4YzMuLjE0NzdlMDRiN2Q4IDEwMDY0NA0KPiAtLS0g YS9jb25maWd1cmUuYWMNCj4gKysrIGIvY29uZmlndXJlLmFjDQo+IEBAIC0yODA2LDYgKzI4 MDYsMjIgQEAgQUNfREVGVU4NCj4gICAgICAgICBXRUJQX01PRFVMRT0ibGlid2VicGRlbXV4 ID49ICRXRUJQX1JFUVVJUkVEIg0KPiAgIA0KPiAgICAgICAgIEVNQUNTX0NIRUNLX01PRFVM RVMoW1dFQlBdLCBbJFdFQlBfTU9EVUxFXSkNCj4gKw0KPiArICAgICAgIyBXZWJQR2V0SW5m byBpcyBzb21ldGltZXMgbm90IHByZXNlbnQgaW5zaWRlIGxpYndlYnBkZW11eCwgc28NCj4g KyAgICAgICMgaWYgaXQgZG9lcyBub3QgbGluaywgYWxzbyBjaGVjayBmb3IgbGlid2VicGRl Y29kZXIuDQo+ICsNCj4gKyAgICAgIE9MRF9DRkxBR1M9JENGTEFHUw0KPiArICAgICAgT0xE X0xJQlM9JExJQlMNCj4gKyAgICAgIENGTEFHUz0iJENGTEFHUyAkV0VCUF9DRkxBR1MiDQo+ ICsgICAgICBMSUJTPSIkTElCUyAkV0VCUF9MSUJTIg0KPiArDQo+ICsgICAgICBBQ19DSEVD S19GVU5DKFtXZWJQR2V0SW5mb10sIFtdLA0KPiArICAgICAgICBbV0VCUF9NT0RVTEU9IiRX RUJQX01PRFVMRSBsaWJ3ZWJwZGVjb2RlciA+PSAkV0VCUF9SRVFVSVJFRCINCj4gKwkgRU1B Q1NfQ0hFQ0tfTU9EVUxFUyhbV0VCUF0sIFskV0VCUF9NT0RVTEVdKV0pDQo+ICsNCj4gKyAg ICAgIENGTEFHUz0kT0xEX0NGTEFHUw0KPiArICAgICAgTElCUz0kT0xEX0xJQlMNCj4gKw0K PiAgICAgICAgIEFDX1NVQlNUKFtXRUJQX0NGTEFHU10pDQo+ICAgICAgICAgQUNfU1VCU1Qo W1dFQlBfTElCU10pDQo+ICAgICAgZmkNCj4NCj4gd2l0aCB0aGlzIHBhdGNoIGFwcGxpZWQs IGFuZCBhZnRlciB5b3UgcnVuIGF1dG9nZW4uc2gsIGRvZXMgRW1hY3MNCj4gY29uZmlndXJl IGFuZCBidWlsZCBub3JtYWxseT8NCg== --------------3uwEpcw87tp3rRzlLl9gyzFz 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 Y29uZnRlc3QuYyAgPiY1IAovdXNyL2Jpbi9sZDogL3RtcC9jY3AyY3czYS5vOiBpbiBmdW5j 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 MyAtTzIgICAgIGNvbmZ0ZXN0LmMgID4mNSAKL3Vzci9iaW4vbGQ6IC90bXAvY2NBZlp4c3Iu 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 MyAtTzIgICAgIGNvbmZ0ZXN0LmMgID4mNSAKL3Vzci9iaW4vbGQ6IC90bXAvY2MzVVRxMVQu 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+JjUgCi91c3IvYmluL2xkOiAvdG1wL2NjbWJ1VTFyLm86IGlu 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 ZXMKY29uZmlndXJlOjE0MjM4OiBjaGVja2luZyBmb3IgV2ViUEdldEluZm8KY29uZmlndXJl OjE0MjM4OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVm LTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAg LWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVp ZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAgICAgICBjb25mdGVzdC5j IC1sWDExICAgLWx3ZWJwZGVtdXggPiY1IAovdXNyL2Jpbi9sZDogL3RtcC9jY0Fsa3hwTS5v OiBpbiBmdW5jdGlvbiBgbWFpbic6Ci9hcHAvZW1hY3MvY29uZnRlc3QuYzoxNTA6IHVuZGVm aW5lZCByZWZlcmVuY2UgdG8gYFdlYlBHZXRJbmZvJwpjb2xsZWN0MjogZXJyb3I6IGxkIHJl dHVybmVkIDEgZXhpdCBzdGF0dXMKY29uZmlndXJlOjE0MjM4OiAkPyA9IDEKY29uZmlndXJl 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 MDsKfCB9CmNvbmZpZ3VyZToxNDIzODogcmVzdWx0OiBubwpjb25maWd1cmU6MTQyNDY6IGNo ZWNraW5nIGZvciBsaWJ3ZWJwZGVtdXggPj0gMC42LjAgbGlid2VicGRlY29kZXIgPj0gMC42 LjAKY29uZmlndXJlOjE0MzExOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQzNDA6IGNoZWNr aW5nIGZvciBzcWxpdGUzX29wZW5fdjIgaW4gLWxzcWxpdGUzCmNvbmZpZ3VyZToxNDM2Mzog Z2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVt IC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5n MTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgICAgICAgY29uZnRlc3QuYyAtbHNxbGl0 ZTMgIC1sWDExICAgPiY1IApjb25maWd1cmU6MTQzNjM6ICQ/ID0gMApjb25maWd1cmU6MTQz NzM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDM5MzogY2hlY2tpbmcgZm9yIHNxbGl0ZTNf bG9hZF9leHRlbnNpb24gaW4gLWxzcWxpdGUzCmNvbmZpZ3VyZToxNDQxNjogZ2NjIC1vIGNv bmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3Zn LTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1v dW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv Y2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGli L3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL3dlYnAgICAgICAgY29uZnRlc3QuYyAtbHNxbGl0ZTMgIC1sc3Fs aXRlMyAtbFgxMSAgID4mNSAKY29uZmlndXJlOjE0NDE2OiAkPyA9IDAKY29uZmlndXJlOjE0 NDI2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQ2NjE6IGNoZWNraW5nIGZvciBnZXRhZGRy aW5mb19hIGluIC1sYW5sCmNvbmZpZ3VyZToxNDY4NDogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMg LU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4 Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVt IC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51 eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0 eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL3dlYnAgICAgICAgY29uZnRlc3QuYyAtbGFubCAgLWxzcWxpdGUzIC1sWDExICAgPiY1 IApjb25maWd1cmU6MTQ2ODQ6ICQ/ID0gMApjb25maWd1cmU6MTQ2OTQ6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZToxNDcyNjogY2hlY2tpbmcgZm9yIGd0aystMy4wID49IDMuMTAgZ2xpYi0y LjAgPj0gMi4zNy41CmNvbmZpZ3VyZToxNDczMzogJFBLR19DT05GSUcgLS1leGlzdHMgLS1w cmludC1lcnJvcnMgIiRHVEtfTU9EVUxFUyIKY29uZmlndXJlOjE0NzM2OiAkPyA9IDAKY29u ZmlndXJlOjE0NzUwOiAkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyAiJEdU S19NT0RVTEVTIgpjb25maWd1cmU6MTQ3NTM6ICQ/ID0gMApjb25maWd1cmU6MTQ3OTE6IHJl c3VsdDogeWVzCmNvbmZpZ3VyZToxNDkxNDogY2hlY2tpbmcgd2hldGhlciBHVEsgY29tcGls ZXMKY29uZmlndXJlOjE0OTQ1OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdu dSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIu MC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtcHRo cmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ3RrLTMuMCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvYXQtc3BpMi1hdGsvMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9hdC1zcGktMi4wIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9kYnVzLTEuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQt bGludXgtZ251L2RidXMtMS4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2d0ay0z LjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dpby11bml4LTIuMCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BhbmdvLTEuMCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvaGFyZmJ1enogLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BhbmdvLTEuMCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJpYmlkaSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvaGFy ZmJ1enogLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2F0ay0xLjAgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGli cG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxp bnV4LWdudS9nbGliLTIuMC9pbmNsdWRlICAgICAgIGNvbmZ0ZXN0LmMgLWxndGstMyAtbGdk ay0zIC1scGFuZ29jYWlyby0xLjAgLWxwYW5nby0xLjAgLWxoYXJmYnV6eiAtbGF0ay0xLjAg LWxjYWlyby1nb2JqZWN0IC1sY2Fpcm8gLWxnZGtfcGl4YnVmLTIuMCAtbGdpby0yLjAgLWxn b2JqZWN0LTIuMCAtbGdsaWItMi4wIC1sc3FsaXRlMyAtbFgxMSAgID4mNSAKY29uZmlndXJl OjE0OTQ1OiAkPyA9IDAKY29uZmlndXJlOjE0OTU0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6 MTQ5NzA6IFdBUk5JTkc6IFlvdXIgdmVyc2lvbiBvZiBHdGsrIHdpbGwgaGF2ZSBwcm9ibGVt cyB3aXRoCiAgICAgICBjbG9zaW5nIG9wZW4gZGlzcGxheXMuICBUaGlzIGlzIG5vIHByb2Js ZW0gaWYgeW91IGp1c3QgdXNlCiAgICAgICBvbmUgZGlzcGxheSwgYnV0IGlmIHlvdSB1c2Ug bW9yZSB0aGFuIG9uZSBhbmQgY2xvc2Ugb25lIG9mIHRoZW0KICAgICAgIEVtYWNzIG1heSBj cmFzaC4KICAgICAgIFNlZSBodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ3RrL2lz c3Vlcy8yMjEKY29uZmlndXJlOjE1MTE4OiBjaGVja2luZyBmb3IgbWFsbG9jX3RyaW0KY29u ZmlndXJlOjE1MTE4OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGst cGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lk IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xp Yi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNs dWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAgICAgICBjb25m dGVzdC5jIC1sc3FsaXRlMyAtbFgxMSAgID4mNSAKY29uZmlndXJlOjE1MTE4OiAkPyA9IDAK Y29uZmlndXJlOjE1MTE4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTUxMzE6IGNoZWNraW5n IGZvciBkYnVzLTEgPj0gMS4wCmNvbmZpZ3VyZToxNTEzODogJFBLR19DT05GSUcgLS1leGlz dHMgLS1wcmludC1lcnJvcnMgImRidXMtMSA+PSAxLjAiCmNvbmZpZ3VyZToxNTE0MTogJD8g PSAwCmNvbmZpZ3VyZToxNTE1NTogJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJv cnMgImRidXMtMSA+PSAxLjAiCmNvbmZpZ3VyZToxNTE1ODogJD8gPSAwCmNvbmZpZ3VyZTox NTE5NjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE1MjA3OiBjaGVja2luZyBmb3IgZGJ1c193 YXRjaF9nZXRfdW5peF9mZApjb25maWd1cmU6MTUyMDc6IGdjYyAtbyBjb25mdGVzdCAgLWcz IC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94 ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGlu dXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0x IC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVl dHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5j bHVkZS93ZWJwICAgICAgIGNvbmZ0ZXN0LmMgLWxzcWxpdGUzIC1sWDExICAgLWxkYnVzLTEg PiY1IApjb25maWd1cmU6MTUyMDc6ICQ/ID0gMApjb25maWd1cmU6MTUyMDc6IHJlc3VsdDog eWVzCmNvbmZpZ3VyZToxNTIxMzogY2hlY2tpbmcgZm9yIGRidXNfdHlwZV9pc192YWxpZApj b25maWd1cmU6MTUyMTM6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dk ay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1p c3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxr aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9n bGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2lu Y2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5j bHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwICAgICAgIGNv bmZ0ZXN0LmMgLWxzcWxpdGUzIC1sWDExICAgLWxkYnVzLTEgPiY1IApjb25maWd1cmU6MTUy MTM6ICQ/ID0gMApjb25maWd1cmU6MTUyMTM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNTIx OTogY2hlY2tpbmcgZm9yIGRidXNfdmFsaWRhdGVfYnVzX25hbWUKY29uZmlndXJlOjE1MjE5 OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0 ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJw bmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAgICAgICBjb25mdGVzdC5jIC1sc3Fs aXRlMyAtbFgxMSAgIC1sZGJ1cy0xID4mNSAKY29uZmlndXJlOjE1MjE5OiAkPyA9IDAKY29u ZmlndXJlOjE1MjE5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTUyMjU6IGNoZWNraW5nIGZv ciBkYnVzX3ZhbGlkYXRlX3BhdGgKY29uZmlndXJlOjE1MjI1OiBnY2MgLW8gY29uZnRlc3Qg IC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0 LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXht YW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv ZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvd2VicCAgICAgICBjb25mdGVzdC5jIC1sc3FsaXRlMyAtbFgxMSAgIC1sZGJ1 cy0xID4mNSAKY29uZmlndXJlOjE1MjI1OiAkPyA9IDAKY29uZmlndXJlOjE1MjI1OiByZXN1 bHQ6IHllcwpjb25maWd1cmU6MTUyMzE6IGNoZWNraW5nIGZvciBkYnVzX3ZhbGlkYXRlX2lu dGVyZmFjZQpjb25maWd1cmU6MTUyMzE6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRo cmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGlu dXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2ds aWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVt IC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJw ICAgICAgIGNvbmZ0ZXN0LmMgLWxzcWxpdGUzIC1sWDExICAgLWxkYnVzLTEgPiY1IApjb25m aWd1cmU6MTUyMzE6ICQ/ID0gMApjb25maWd1cmU6MTUyMzE6IHJlc3VsdDogeWVzCmNvbmZp Z3VyZToxNTIzNzogY2hlY2tpbmcgZm9yIGRidXNfdmFsaWRhdGVfbWVtYmVyCmNvbmZpZ3Vy ZToxNTIzNzogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1 Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4w IC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1 aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgICAgICAgY29uZnRlc3Qu YyAtbHNxbGl0ZTMgLWxYMTEgICAtbGRidXMtMSA+JjUgCmNvbmZpZ3VyZToxNTIzNzogJD8g PSAwCmNvbmZpZ3VyZToxNTIzNzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE1MjU2OiBjaGVj a2luZyBmb3IgZ2lvLTIuMCA+PSAyLjI2CmNvbmZpZ3VyZToxNTI2MzogJFBLR19DT05GSUcg LS1leGlzdHMgLS1wcmludC1lcnJvcnMgImdpby0yLjAgPj0gMi4yNiIKY29uZmlndXJlOjE1 MjY2OiAkPyA9IDAKY29uZmlndXJlOjE1MjgwOiAkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXBy aW50LWVycm9ycyAiZ2lvLTIuMCA+PSAyLjI2Igpjb25maWd1cmU6MTUyODM6ICQ/ID0gMApj b25maWd1cmU6MTUzMjE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNTMzMTogY2hlY2tpbmcg d2hldGhlciBHU2V0dGluZ3MgaXMgaW4gZ2lvCmNvbmZpZ3VyZToxNTM1NDogZ2NjIC1vIGNv bmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3Zn LTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1v dW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv Y2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGli L3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xp Ym1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIu MC9pbmNsdWRlICAgICAgIGNvbmZ0ZXN0LmMgLWxzcWxpdGUzIC1sWDExICAgLWxnaW8tMi4w IC1sZ29iamVjdC0yLjAgLWxnbGliLTIuMCA+JjUgCmNvbmZpZ3VyZToxNTM1NDogJD8gPSAw CmNvbmZpZ3VyZToxNTM2MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE1NDY2OiBjaGVja2lu ZyBmb3IgZ29iamVjdC0yLjAgPj0gMi4wCmNvbmZpZ3VyZToxNTQ3MzogJFBLR19DT05GSUcg LS1leGlzdHMgLS1wcmludC1lcnJvcnMgImdvYmplY3QtMi4wID49IDIuMCIKY29uZmlndXJl OjE1NDc2OiAkPyA9IDAKY29uZmlndXJlOjE1NDkwOiAkUEtHX0NPTkZJRyAtLWV4aXN0cyAt LXByaW50LWVycm9ycyAiZ29iamVjdC0yLjAgPj0gMi4wIgpjb25maWd1cmU6MTU0OTM6ICQ/ ID0gMApjb25maWd1cmU6MTU1MzE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNTU1OTogY2hl Y2tpbmcgZm9yIGxnZXRmaWxlY29uIGluIC1sc2VsaW51eApjb25maWd1cmU6MTU1ODI6IGdj YyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv bGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lz dGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAv dXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2 IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwICAgICAgIGNvbmZ0ZXN0LmMgLWxzZWxpbnV4 ICAtbHNxbGl0ZTMgLWxYMTEgICA+JjUgCmNvbmZpZ3VyZToxNTU4MjogJD8gPSAwCmNvbmZp Z3VyZToxNTU5MjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE1NjE0OiBjaGVja2luZyBmb3Ig Z251dGxzID49IDIuMTIuMgpjb25maWd1cmU6MTU2MjE6ICRQS0dfQ09ORklHIC0tZXhpc3Rz IC0tcHJpbnQtZXJyb3JzICJnbnV0bHMgPj0gMi4xMi4yIgpjb25maWd1cmU6MTU2MjQ6ICQ/ ID0gMApjb25maWd1cmU6MTU2Mzg6ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJy b3JzICJnbnV0bHMgPj0gMi4xMi4yIgpjb25maWd1cmU6MTU2NDE6ICQ/ID0gMApjb25maWd1 cmU6MTU2Nzk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNTcwMzogY2hlY2tpbmcgZm9yIGxp YnN5c3RlbWQgPj0gMjIyCmNvbmZpZ3VyZToxNTcxMDogJFBLR19DT05GSUcgLS1leGlzdHMg LS1wcmludC1lcnJvcnMgImxpYnN5c3RlbWQgPj0gMjIyIgpjb25maWd1cmU6MTU3MTM6ICQ/ ID0gMApjb25maWd1cmU6MTU3Mjc6ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJy b3JzICJsaWJzeXN0ZW1kID49IDIyMiIKY29uZmlndXJlOjE1NzMwOiAkPyA9IDAKY29uZmln dXJlOjE1NzY4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTU3ODk6IGNoZWNraW5nIGZvciBq YW5zc29uID49IDIuNwpjb25maWd1cmU6MTU3OTY6ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0t cHJpbnQtZXJyb3JzICJqYW5zc29uID49IDIuNyIKY29uZmlndXJlOjE1Nzk5OiAkPyA9IDAK Y29uZmlndXJlOjE1ODEzOiAkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyAi amFuc3NvbiA+PSAyLjciCmNvbmZpZ3VyZToxNTgxNjogJD8gPSAwCmNvbmZpZ3VyZToxNTg1 NDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE1ODgzOiBjaGVja2luZyBmb3IgdHJlZS1zaXR0 ZXIgPj0gMC4yMC4yCmNvbmZpZ3VyZToxNTg5MDogJFBLR19DT05GSUcgLS1leGlzdHMgLS1w cmludC1lcnJvcnMgInRyZWUtc2l0dGVyID49IDAuMjAuMiIKUGFja2FnZSB0cmVlLXNpdHRl ciB3YXMgbm90IGZvdW5kIGluIHRoZSBwa2ctY29uZmlnIHNlYXJjaCBwYXRoLgpQZXJoYXBz IHlvdSBzaG91bGQgYWRkIHRoZSBkaXJlY3RvcnkgY29udGFpbmluZyBgdHJlZS1zaXR0ZXIu cGMnCnRvIHRoZSBQS0dfQ09ORklHX1BBVEggZW52aXJvbm1lbnQgdmFyaWFibGUKTm8gcGFj a2FnZSAndHJlZS1zaXR0ZXInIGZvdW5kCmNvbmZpZ3VyZToxNTg5MzogJD8gPSAxCmNvbmZp Z3VyZToxNTkwNzogJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgInRyZWUt c2l0dGVyID49IDAuMjAuMiIKUGFja2FnZSB0cmVlLXNpdHRlciB3YXMgbm90IGZvdW5kIGlu IHRoZSBwa2ctY29uZmlnIHNlYXJjaCBwYXRoLgpQZXJoYXBzIHlvdSBzaG91bGQgYWRkIHRo ZSBkaXJlY3RvcnkgY29udGFpbmluZyBgdHJlZS1zaXR0ZXIucGMnCnRvIHRoZSBQS0dfQ09O RklHX1BBVEggZW52aXJvbm1lbnQgdmFyaWFibGUKTm8gcGFja2FnZSAndHJlZS1zaXR0ZXIn IGZvdW5kCmNvbmZpZ3VyZToxNTkxMDogJD8gPSAxCmNvbmZpZ3VyZToxNTkyNDogcmVzdWx0 OiBubwpObyBwYWNrYWdlICd0cmVlLXNpdHRlcicgZm91bmQKY29uZmlndXJlOjE1OTYwOiBj aGVja2luZyBmb3IgdHJlZS1zaXR0ZXIgPj0gMC42LjMKY29uZmlndXJlOjE1OTY3OiAkUEtH X0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyAidHJlZS1zaXR0ZXIgPj0gMC42LjMi ClBhY2thZ2UgdHJlZS1zaXR0ZXIgd2FzIG5vdCBmb3VuZCBpbiB0aGUgcGtnLWNvbmZpZyBz ZWFyY2ggcGF0aC4KUGVyaGFwcyB5b3Ugc2hvdWxkIGFkZCB0aGUgZGlyZWN0b3J5IGNvbnRh aW5pbmcgYHRyZWUtc2l0dGVyLnBjJwp0byB0aGUgUEtHX0NPTkZJR19QQVRIIGVudmlyb25t ZW50IHZhcmlhYmxlCk5vIHBhY2thZ2UgJ3RyZWUtc2l0dGVyJyBmb3VuZApjb25maWd1cmU6 MTU5NzA6ICQ/ID0gMQpjb25maWd1cmU6MTU5ODQ6ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0t cHJpbnQtZXJyb3JzICJ0cmVlLXNpdHRlciA+PSAwLjYuMyIKUGFja2FnZSB0cmVlLXNpdHRl ciB3YXMgbm90IGZvdW5kIGluIHRoZSBwa2ctY29uZmlnIHNlYXJjaCBwYXRoLgpQZXJoYXBz IHlvdSBzaG91bGQgYWRkIHRoZSBkaXJlY3RvcnkgY29udGFpbmluZyBgdHJlZS1zaXR0ZXIu cGMnCnRvIHRoZSBQS0dfQ09ORklHX1BBVEggZW52aXJvbm1lbnQgdmFyaWFibGUKTm8gcGFj a2FnZSAndHJlZS1zaXR0ZXInIGZvdW5kCmNvbmZpZ3VyZToxNTk4NzogJD8gPSAxCmNvbmZp Z3VyZToxNjAwMTogcmVzdWx0OiBubwpObyBwYWNrYWdlICd0cmVlLXNpdHRlcicgZm91bmQK Y29uZmlndXJlOjE2MDkzOiBjaGVja2luZyBmb3Igc3lzL2lub3RpZnkuaApjb25maWd1cmU6 MTYwOTM6IGdjYyAtYyAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv bGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lz dGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAv dXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2 IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwICAgICBjb25mdGVzdC5jID4mNQpjb25maWd1 cmU6MTYwOTM6ICQ/ID0gMApjb25maWd1cmU6MTYwOTM6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy ZToxNjEwMDogY2hlY2tpbmcgZm9yIGlub3RpZnlfaW5pdDEKY29uZmlndXJlOjE2MTAwOiBn Y2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0g L3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcx NiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAgICAgICBjb25mdGVzdC5jIC1sc3FsaXRl MyAtbFgxMSAgID4mNSAKY29uZmlndXJlOjE2MTAwOiAkPyA9IDAKY29uZmlndXJlOjE2MTAw OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTY4MzM6IGdjYyAtYyAgLWczIC1PMiAtcHRocmVh ZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgt Z251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWIt Mi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwICAg ICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MTY4MzM6ICQ/ID0gMApjb25maWd1cmU6MTY4 NjY6IGdjYyAtYyAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGli cnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVt IC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9s aWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNy L2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1p c3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwICAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6 MTY4NjY6ICQ/ID0gMApjb25maWd1cmU6MTY4Njg6IGNoZWNraW5nIGZvciBYUmVuZGVyUXVl cnlFeHRlbnNpb24gaW4gLWxYcmVuZGVyCmNvbmZpZ3VyZToxNjg5MTogZ2NjIC1vIGNvbmZ0 ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIu MCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50 IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fp cm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4 Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv cGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3dlYnAgICAgICAgY29uZnRlc3QuYyAtbFhyZW5kZXIgIC1sc3FsaXRl MyAtbFgxMSAgID4mNSAKY29uZmlndXJlOjE2ODkxOiAkPyA9IDAKY29uZmlndXJlOjE2OTAx OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTY5MjY6IGNoZWNraW5nIGZvciBjYWlybyA+PSAx LjguMApjb25maWd1cmU6MTY5MzM6ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJy b3JzICIkQ0FJUk9fTU9EVUxFIgpjb25maWd1cmU6MTY5MzY6ICQ/ID0gMApjb25maWd1cmU6 MTY5NTA6ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzICIkQ0FJUk9fTU9E VUxFIgpjb25maWd1cmU6MTY5NTM6ICQ/ID0gMApjb25maWd1cmU6MTY5OTE6IHJlc3VsdDog eWVzCmNvbmZpZ3VyZToxNzAwMDogY2hlY2tpbmcgZm9yIGNhaXJvLXhjYiA+PSAxLjguMApj b25maWd1cmU6MTcwMDc6ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzICIk Q0FJUk9fWENCX01PRFVMRSIKY29uZmlndXJlOjE3MDEwOiAkPyA9IDAKY29uZmlndXJlOjE3 MDI0OiAkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyAiJENBSVJPX1hDQl9N T0RVTEUiCmNvbmZpZ3VyZToxNzAyNzogJD8gPSAwCmNvbmZpZ3VyZToxNzA2NTogcmVzdWx0 OiB5ZXMKY29uZmlndXJlOjE3NTM5OiBjaGVja2luZyBmb3IgZnJlZXR5cGUyCmNvbmZpZ3Vy ZToxNzU0NjogJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgImZyZWV0eXBl MiIKY29uZmlndXJlOjE3NTQ5OiAkPyA9IDAKY29uZmlndXJlOjE3NTYzOiAkUEtHX0NPTkZJ RyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyAiZnJlZXR5cGUyIgpjb25maWd1cmU6MTc1NjY6 ICQ/ID0gMApjb25maWd1cmU6MTc2MDQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNzYxNDog Y2hlY2tpbmcgZm9yIGZvbnRjb25maWcgPj0gMi4yLjAKY29uZmlndXJlOjE3NjIxOiAkUEtH X0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyAiZm9udGNvbmZpZyA+PSAyLjIuMCIK Y29uZmlndXJlOjE3NjI0OiAkPyA9IDAKY29uZmlndXJlOjE3NjM4OiAkUEtHX0NPTkZJRyAt LWV4aXN0cyAtLXByaW50LWVycm9ycyAiZm9udGNvbmZpZyA+PSAyLjIuMCIKY29uZmlndXJl OjE3NjQxOiAkPyA9IDAKY29uZmlndXJlOjE3Njc5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6 MTgwMDg6IGNoZWNraW5nIGZvciBGVF9GYWNlX0dldENoYXJWYXJpYW50SW5kZXgKY29uZmln dXJlOjE4MDA4OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4 YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0y LjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRl IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv dXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVt IC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5n MTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9n bGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2lu Y2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5j bHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxmcmVldHlw ZSAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVy ID4mNSAKY29uZmlndXJlOjE4MDA4OiAkPyA9IDAKY29uZmlndXJlOjE4MDA4OiByZXN1bHQ6 IHllcwpjb25maWd1cmU6MTgwMjA6IGNoZWNraW5nIGZvciBsaWJvdGYKY29uZmlndXJlOjE4 MDI3OiAkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyAibGlib3RmIgpjb25m aWd1cmU6MTgwMzA6ICQ/ID0gMApjb25maWd1cmU6MTgwNDQ6ICRQS0dfQ09ORklHIC0tZXhp c3RzIC0tcHJpbnQtZXJyb3JzICJsaWJvdGYiCmNvbmZpZ3VyZToxODA0NzogJD8gPSAwCmNv bmZpZ3VyZToxODA4NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE4MDk0OiBjaGVja2luZyBm b3IgT1RGX2dldF92YXJpYXRpb25fZ2x5cGhzIGluIC1sb3RmCmNvbmZpZ3VyZToxODExNzog Z2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVt IC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5n MTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Nh aXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94 ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVt IC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlz eXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9s aWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1sb3RmICAtbHNxbGl0ZTMgLWxYMTEgICAtbGNh aXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJlOjE4MTE3OiAk PyA9IDAKY29uZmlndXJlOjE4MTI3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTgxNTU6IGNo ZWNraW5nIGZvciBtMTduLWZsdApjb25maWd1cmU6MTgxNjI6ICRQS0dfQ09ORklHIC0tZXhp c3RzIC0tcHJpbnQtZXJyb3JzICJtMTduLWZsdCIKY29uZmlndXJlOjE4MTY1OiAkPyA9IDAK Y29uZmlndXJlOjE4MTc5OiAkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyAi bTE3bi1mbHQiCmNvbmZpZ3VyZToxODE4MjogJD8gPSAwCmNvbmZpZ3VyZToxODIyMDogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjE4NTMzOiBjaGVja2luZyBmb3IgaGFyZmJ1enogPj0gMC45 LjQyCmNvbmZpZ3VyZToxODU0MDogJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJv cnMgImhhcmZidXp6ID49ICRoYXJmYnV6el9yZXF1aXJlZF92ZXIiCmNvbmZpZ3VyZToxODU0 MzogJD8gPSAwCmNvbmZpZ3VyZToxODU1NzogJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmlu dC1lcnJvcnMgImhhcmZidXp6ID49ICRoYXJmYnV6el9yZXF1aXJlZF92ZXIiCmNvbmZpZ3Vy ZToxODU2MDogJD8gPSAwCmNvbmZpZ3VyZToxODU5ODogcmVzdWx0OiB5ZXMKY29uZmlndXJl OjE5MDE5OiBjaGVja2luZyBmb3IgWDExL1hsaWIteGNiLmgKY29uZmlndXJlOjE5MDE5OiBn Y2MgLWMgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmct Mi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91 bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9j YWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIv eDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51 eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0 eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNy L2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAg ICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MTkwMTk6ICQ/ID0gMApjb25maWd1cmU6MTkw MTk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxOTAyMjogY2hlY2tpbmcgZm9yIHhjYl90cmFu c2xhdGVfY29vcmRpbmF0ZXMgaW4gLWx4Y2IKY29uZmlndXJlOjE5MDQ1OiBnY2MgLW8gY29u ZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmct Mi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91 bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9j YWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIv eDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51 eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0 eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNy L2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAg ICAgIGNvbmZ0ZXN0LmMgLWx4Y2IgIC1sc3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWly byAtbHhjYiAtbHhjYi1yZW5kZXIgPiY1IApjb25maWd1cmU6MTkwNDU6ICQ/ID0gMApjb25m aWd1cmU6MTkwNTU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxOTA2NTogY2hlY2tpbmcgZm9y IFhHZXRYQ0JDb25uZWN0aW9uIGluIC1sWDExLXhjYgpjb25maWd1cmU6MTkwODg6IGdjYyAt byBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGli cnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVt IC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9s aWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNy L2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1p c3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0 LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXht YW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv ZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVt IC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5n MTYgICAgICAgY29uZnRlc3QuYyAtbFgxMS14Y2IgIC1sc3FsaXRlMyAtbFgxMSAgIC1sY2Fp cm8gLWxjYWlybyAtbHhjYiAtbHhjYi1yZW5kZXIgPiY1IApjb25maWd1cmU6MTkwODg6ICQ/ ID0gMApjb25maWd1cmU6MTkwOTg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxOTIyMDogY2hl Y2tpbmcgZm9yIFgxMS94cG0uaApjb25maWd1cmU6MTkyMjA6IGdjYyAtYyAgLWczIC1PMiAt cHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQt bGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251 L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lz dGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93 ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv Z2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9p bmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51 eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0 eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgIGNvbmZ0ZXN0LmMgPiY1 CmNvbmZpZ3VyZToxOTIyMDogJD8gPSAwCmNvbmZpZ3VyZToxOTIyMDogcmVzdWx0OiB5ZXMK Y29uZmlndXJlOjE5MjIzOiBjaGVja2luZyBmb3IgWHBtUmVhZEZpbGVUb1BpeG1hcCBpbiAt bFhwbQpjb25maWd1cmU6MTkyNDY6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVh ZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgt Z251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWIt Mi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0y LjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRl IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv dXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUv Z2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAtbFhwbSAt bFgxMSAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVu ZGVyID4mNSAKY29uZmlndXJlOjE5MjQ2OiAkPyA9IDAKY29uZmlndXJlOjE5MjU2OiByZXN1 bHQ6IHllcwpjb25maWd1cmU6MTkyNjY6IGNoZWNraW5nIGZvciBYcG1SZXR1cm5BbGxvY1Bp eGVscyBwcmVwcm9jZXNzb3IgZGVmaW5lCmNvbmZpZ3VyZToxOTI5MDogcmVzdWx0OiB5ZXMK Y29uZmlndXJlOjE5MzQzOiBjaGVja2luZyBmb3IganBlZ2xpYiA2YiBvciBsYXRlcgpjb25m aWd1cmU6MTkzNzc6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1w aXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lz dGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGli LTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1 ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0 ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJw bmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAv aW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAtbHNxbGl0ZTMgLWxYMTEg ICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKL3Vzci9iaW4vbGQ6 IC90bXAvY2MwYU5DMjEubzogaW4gZnVuY3Rpb24gYG1haW4nOgovYXBwL2VtYWNzL2NvbmZ0 ZXN0LmM6MTcxOiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBqcGVnX0NyZWF0ZURlY29tcHJl c3MnCi91c3IvYmluL2xkOiAvYXBwL2VtYWNzL2NvbmZ0ZXN0LmM6MTczOiB1bmRlZmluZWQg cmVmZXJlbmNlIHRvIGBqcGVnX2Rlc3Ryb3lfZGVjb21wcmVzcycKY29sbGVjdDI6IGVycm9y OiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVzCmNvbmZpZ3VyZToxOTM3NzogJD8gPSAxCmNv 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 ZWZpbmUgSEFWRV9YUE0gMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjdW5kZWYgSEFW RV9TVERMSUJfSCAvKiBBdm9pZCBjb25maWcuaC9qcGVnbGliLmggY29sbGlzaW9uLiAgKi8K fCAJCSNpbmNsdWRlIDxzdGRpby5oPiAvKiBqcGVnbGliLmggbmVlZHMgRklMRSBhbmQgc2l6 ZV90LiAgKi8KfCAJCSNpbmNsdWRlIDxqcGVnbGliLmg+CnwgCQkjaW5jbHVkZSA8amVycm9y Lmg+CnwgCQljaGFyIHZlcmlmeVtKUEVHX0xJQl9WRVJTSU9OIDwgNjIgPyAtMSA6IDFdOwp8 IAkJc3RydWN0IGpwZWdfZGVjb21wcmVzc19zdHJ1Y3QgY2luZm87CnwgCnwgaW50CnwgbWFp biAodm9pZCkKfCB7CnwgCnwgCQlqcGVnX2NyZWF0ZV9kZWNvbXByZXNzICgmY2luZm8pOwp8 IAkJV0FSTk1TICgmY2luZm8sIEpXUk5fSlBFR19FT0YpOwp8IAkJanBlZ19kZXN0cm95X2Rl Y29tcHJlc3MgKCZjaW5mbyk7CnwgCnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3Vy ZToxOTM3NzogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1 Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4w IC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1 aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAv dXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2 IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xp Yi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNs dWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1sc3FsaXRlMyAtbFgxMSAgIC1s Y2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhjYi1yZW5kZXIgLWxqcGVnID4mNSAKY29uZmlndXJl OjE5Mzc3OiAkPyA9IDAKY29uZmlndXJlOjE5Mzg5OiByZXN1bHQ6IC1sanBlZwpjb25maWd1 cmU6MTk0MTI6IGNoZWNraW5nIGZvciBsY21zMgpjb25maWd1cmU6MTk0MTk6ICRQS0dfQ09O RklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzICJsY21zMiIKY29uZmlndXJlOjE5NDIyOiAk PyA9IDAKY29uZmlndXJlOjE5NDM2OiAkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVy cm9ycyAibGNtczIiCmNvbmZpZ3VyZToxOTQzOTogJD8gPSAwCmNvbmZpZ3VyZToxOTQ3Nzog cmVzdWx0OiB5ZXMKY29uZmlndXJlOjE5NDk5OiBjaGVja2luZyBmb3IgbGlicmFyeSBjb250 YWluaW5nIGluZmxhdGVFbmQKY29uZmlndXJlOjE5NTI5OiBnY2MgLW8gY29uZnRlc3QgIC1n MyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv eDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxp bnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4t MSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJl ZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xp Yi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJv IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZf NjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3Bp eG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0 ZXN0LmMgLWxzcWxpdGUzIC1sWDExICAgLWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNiLXJl bmRlciA+JjUgCi91c3IvYmluL2xkOiAvdG1wL2NjUjJqaXpMLm86IGluIGZ1bmN0aW9uIGBt YWluJzoKL2FwcC9lbWFjcy9jb25mdGVzdC5jOjE3MDogdW5kZWZpbmVkIHJlZmVyZW5jZSB0 byBgaW5mbGF0ZUVuZCcKY29sbGVjdDI6IGVycm9yOiBsZCByZXR1cm5lZCAxIGV4aXQgc3Rh dHVzCmNvbmZpZ3VyZToxOTUyOTogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0g 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 bmUgSEFWRV9KUEVHIDEKfCAjZGVmaW5lIEhBVkVfTENNUzIgMQp8IC8qIGVuZCBjb25mZGVm cy5oLiAgKi8KfCAKfCAvKiBPdmVycmlkZSBhbnkgR0NDIGludGVybmFsIHByb3RvdHlwZSB0 byBhdm9pZCBhbiBlcnJvci4KfCAgICBVc2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRj aCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBHQ0MKfCAgICBidWlsdGluIGFuZCB0aGVuIGl0cyBh cmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLwp8IGNoYXIgaW5mbGF0 ZUVuZCAoKTsKfCBpbnQKfCBtYWluICh2b2lkKQp8IHsKfCByZXR1cm4gaW5mbGF0ZUVuZCAo KTsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjE5NTI5OiBnY2MgLW8gY29u ZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmct Mi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91 bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9j YWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIv eDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51 eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0 eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNy L2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAg ICAgIGNvbmZ0ZXN0LmMgLWx6ICAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8g LWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJlOjE5NTI5OiAkPyA9IDAKY29uZmln dXJlOjE5NTQ5OiByZXN1bHQ6IC1segpjb25maWd1cmU6MTk2MzU6IGNoZWNraW5nIGZvciBk bGFkZHIKY29uZmlndXJlOjE5NjM1OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJl YWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4 LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGli LTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWIt Mi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVk ZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251 L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lz dGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxzcWxp dGUzIC1sWDExICAgLWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNiLXJlbmRlciAtbGRsID4m NSAKY29uZmlndXJlOjE5NjM1OiAkPyA9IDAKY29uZmlndXJlOjE5NjM1OiByZXN1bHQ6IHll cwpjb25maWd1cmU6MTk2NDE6IGNoZWNraW5nIGZvciBkbGZ1bmMKY29uZmlndXJlOjE5NjQx OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0 ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJw bmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv Y2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGli L3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAt aXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlk IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxzcWxpdGUzIC1sWDExICAgLWxjYWlybyAt bGNhaXJvIC1seGNiIC1seGNiLXJlbmRlciAtbGRsID4mNSAKL3Vzci9iaW4vbGQ6IC90bXAv Y2NLMjVaRDAubzogaW4gZnVuY3Rpb24gYG1haW4nOgovYXBwL2VtYWNzL2NvbmZ0ZXN0LmM6 MTkzOiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBkbGZ1bmMnCmNvbGxlY3QyOiBlcnJvcjog bGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpjb25maWd1cmU6MTk2NDE6ICQ/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 ZGVmaW5lIEhBVkVfRExBRERSIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgLyogRGVm aW5lIGRsZnVuYyB0byBhbiBpbm5vY3VvdXMgdmFyaWFudCwgaW4gY2FzZSA8bGltaXRzLmg+ IGRlY2xhcmVzIGRsZnVuYy4KfCAgICBGb3IgZXhhbXBsZSwgSFAtVVggMTFpIDxsaW1pdHMu aD4gZGVjbGFyZXMgZ2V0dGltZW9mZGF5LiAgKi8KfCAjZGVmaW5lIGRsZnVuYyBpbm5vY3Vv dXNfZGxmdW5jCnwgCnwgLyogU3lzdGVtIGhlYWRlciB0byBkZWZpbmUgX19zdHViIG1hY3Jv cyBhbmQgaG9wZWZ1bGx5IGZldyBwcm90b3R5cGVzLAp8ICAgIHdoaWNoIGNhbiBjb25mbGlj dCB3aXRoIGNoYXIgZGxmdW5jICgpOyBiZWxvdy4gICovCnwgCnwgI2luY2x1ZGUgPGxpbWl0 cy5oPgp8ICN1bmRlZiBkbGZ1bmMKfCAKfCAvKiBPdmVycmlkZSBhbnkgR0NDIGludGVybmFs IHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4KfCAgICBVc2UgY2hhciBiZWNhdXNlIGlu dCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBHQ0MKfCAgICBidWlsdGluIGFu ZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLwp8 ICNpZmRlZiBfX2NwbHVzcGx1cwp8IGV4dGVybiAiQyIKfCAjZW5kaWYKfCBjaGFyIGRsZnVu YyAoKTsKfCAvKiBUaGUgR05VIEMgbGlicmFyeSBkZWZpbmVzIHRoaXMgZm9yIGZ1bmN0aW9u cyB3aGljaCBpdCBpbXBsZW1lbnRzCnwgICAgIHRvIGFsd2F5cyBmYWlsIHdpdGggRU5PU1lT LiAgU29tZSBmdW5jdGlvbnMgYXJlIGFjdHVhbGx5IG5hbWVkCnwgICAgIHNvbWV0aGluZyBz dGFydGluZyB3aXRoIF9fIGFuZCB0aGUgbm9ybWFsIG5hbWUgaXMgYW4gYWxpYXMuICAqLwp8 ICNpZiBkZWZpbmVkIF9fc3R1Yl9kbGZ1bmMgfHwgZGVmaW5lZCBfX3N0dWJfX19kbGZ1bmMK fCBjaG9rZSBtZQp8ICNlbmRpZgp8IAp8IGludAp8IG1haW4gKHZvaWQpCnwgewp8IHJldHVy biBkbGZ1bmMgKCk7CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToxOTY0MTog cmVzdWx0OiBubwpjb25maWd1cmU6MTk5NDU6IGNoZWNraW5nIGZvciBsaWJwbmcgPj0gMS4w LjAKY29uZmlndXJlOjE5OTUyOiAkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9y cyAibGlicG5nID49IDEuMC4wIgpjb25maWd1cmU6MTk5NTU6ICQ/ID0gMApjb25maWd1cmU6 MTk5Njk6ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzICJsaWJwbmcgPj0g MS4wLjAiCmNvbmZpZ3VyZToxOTk3MjogJD8gPSAwCmNvbmZpZ3VyZToyMDAxMDogcmVzdWx0 OiB5ZXMKY29uZmlndXJlOjIwMDgwOiBjaGVja2luZyB3aGV0aGVyIHBuZ19sb25nam1wIGlz IGRlY2xhcmVkCmNvbmZpZ3VyZToyMDA4MDogZ2NjIC1jICAtZzMgLU8yIC1wdGhyZWFkIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv Z2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9i bGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAv aW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAt aXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlk IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGli LTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5n MTYgICAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjAwODA6ICQ/ID0gMApjb25maWd1 cmU6MjAwODA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMDEyMDogY2hlY2tpbmcgZm9yIHRp ZmZpby5oCmNvbmZpZ3VyZToyMDEyMDogZ2NjIC1jICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2Rr LXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtp ZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ds aWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5j bHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5 c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xp YnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIu MC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjIw MTIwOiAkPyA9IDAKY29uZmlndXJlOjIwMTIwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjAx MjY6IGNoZWNraW5nIGZvciBUSUZGR2V0VmVyc2lvbiBpbiAtbHRpZmYKY29uZmlndXJlOjIw MTQ5OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIu MCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlz eXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9s aWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3Iv bGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIu MCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91 dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWx0aWZmIC1sanBlZyAtbHogLWxtIC1s c3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhjYi1yZW5kZXIgPiY1 IApjb25maWd1cmU6MjAxNDk6ICQ/ID0gMApjb25maWd1cmU6MjAxNTk6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZToyMDIwMzogY2hlY2tpbmcgZm9yIGdpZl9saWIuaApjb25maWd1cmU6MjAy MDM6IGdjYyAtYyAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGli cnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVt IC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9s aWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNy L2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1p c3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0 LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXht YW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv ZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVt IC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5n MTYgICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyMDIwMzogJD8gPSAwCmNvbmZpZ3Vy ZToyMDIwMzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIwMjA4OiBjaGVja2luZyBmb3IgR2lm TWFrZU1hcE9iamVjdCBpbiAtbGdpZgpjb25maWd1cmU6MjAyMzE6IGdjYyAtbyBjb25mdGVz dCAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5j bHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJv IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZf NjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3Bp eG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91 c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdu dS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUy IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv Y2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGli L3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAg Y29uZnRlc3QuYyAtbGdpZiAgLWxzcWxpdGUzIC1sWDExICAgLWxjYWlybyAtbGNhaXJvIC1s eGNiIC1seGNiLXJlbmRlciA+JjUgCmNvbmZpZ3VyZToyMDIzMTogJD8gPSAwCmNvbmZpZ3Vy ZToyMDI0MTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIwNDE1OiBjaGVja2luZyBmb3IgZ3Bt LmgKY29uZmlndXJlOjIwNDE1OiBnY2MgLWMgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4 YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0y LjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRl IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv dXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVt IC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5n MTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9n bGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2lu Y2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5j bHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnBuZzE2ICAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjA0MTU6 ICQ/ID0gMApjb25maWd1cmU6MjA0MTU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMDQxODog Y2hlY2tpbmcgZm9yIEdwbV9PcGVuIGluIC1sZ3BtCmNvbmZpZ3VyZToyMDQ0MTogZ2NjIC1v IGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJy c3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xp Ym1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3Iv bGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQt bGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1h bi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9m cmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0g L3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcx NiAgICAgICBjb25mdGVzdC5jIC1sZ3BtICAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1s Y2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJlOjIwNDQxOiAkPyA9IDAK Y29uZmlndXJlOjIwNDUxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjA1MDM6IGNoZWNraW5n IGZvciBYMTEvU00vU01saWIuaApjb25maWd1cmU6MjA1MDM6IGdjYyAtYyAgLWczIC1PMiAt cHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQt bGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251 L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lz dGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93 ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv Z2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9p bmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51 eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0 eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgIGNvbmZ0ZXN0LmMgPiY1 CmNvbmZpZ3VyZToyMDUwMzogJD8gPSAwCmNvbmZpZ3VyZToyMDUwMzogcmVzdWx0OiB5ZXMK Y29uZmlndXJlOjIwNTA2OiBjaGVja2luZyBmb3IgU21jT3BlbkNvbm5lY3Rpb24gaW4gLWxT TQpjb25maWd1cmU6MjA1Mjk6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251 IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv YmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4w L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAg LWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVp ZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xp Yi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAtbFNNIC1sSUNF IC1sc3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhjYi1yZW5kZXIg PiY1IApjb25maWd1cmU6MjA1Mjk6ICQ/ID0gMApjb25maWd1cmU6MjA1Mzk6IHJlc3VsdDog eWVzCmNvbmZpZ3VyZToyMDU2NTogY2hlY2tpbmcgZm9yIHhyYW5kciA+PSAxLjIuMgpjb25m aWd1cmU6MjA1NzI6ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzICIkWFJB TkRSX01PRFVMRVMiCmNvbmZpZ3VyZToyMDU3NTogJD8gPSAwCmNvbmZpZ3VyZToyMDU4OTog JFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgIiRYUkFORFJfTU9EVUxFUyIK Y29uZmlndXJlOjIwNTkyOiAkPyA9IDAKY29uZmlndXJlOjIwNjMwOiByZXN1bHQ6IHllcwpj b25maWd1cmU6MjA3MDY6IGNoZWNraW5nIGZvciB4aW5lcmFtYSA+PSAxLjAuMgpjb25maWd1 cmU6MjA3MTM6ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzICIkWElORVJB TUFfTU9EVUxFUyIKY29uZmlndXJlOjIwNzE2OiAkPyA9IDAKY29uZmlndXJlOjIwNzMwOiAk UEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyAiJFhJTkVSQU1BX01PRFVMRVMi CmNvbmZpZ3VyZToyMDczMzogJD8gPSAwCmNvbmZpZ3VyZToyMDc3MTogcmVzdWx0OiB5ZXMK Y29uZmlndXJlOjIwODQzOiBjaGVja2luZyBmb3IgeGZpeGVzID49IDEuMC4wCmNvbmZpZ3Vy ZToyMDg1MDogJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgIiRYRklYRVNf TU9EVUxFUyIKY29uZmlndXJlOjIwODUzOiAkPyA9IDAKY29uZmlndXJlOjIwODY3OiAkUEtH X0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyAiJFhGSVhFU19NT0RVTEVTIgpjb25m aWd1cmU6MjA4NzA6ICQ/ID0gMApjb25maWd1cmU6MjA5MDg6IHJlc3VsdDogeWVzCmNvbmZp Z3VyZToyMDk3ODogY2hlY2tpbmcgZm9yIHhpCmNvbmZpZ3VyZToyMDk4NTogJFBLR19DT05G SUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgInhpIgpjb25maWd1cmU6MjA5ODg6ICQ/ID0g MApjb25maWd1cmU6MjEwMDI6ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3Jz ICJ4aSIKY29uZmlndXJlOjIxMDA1OiAkPyA9IDAKY29uZmlndXJlOjIxMDQzOiByZXN1bHQ6 IHllcwpjb25maWd1cmU6MjEwNTA6IGNoZWNraW5nIGZvciBYMTEvZXh0ZW5zaW9ucy9YSW5w dXQyLmgKY29uZmlndXJlOjIxMDUwOiBnY2MgLWMgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGst cGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lk IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xp Yi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNs dWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lz dGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGli cG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4w L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjEw NTA6ICQ/ID0gMApjb25maWd1cmU6MjEwNTA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMTA1 MzogY2hlY2tpbmcgZm9yIFhJR3JhYkJ1dHRvbiBpbiAtbFhpCmNvbmZpZ3VyZToyMTA3Njog Z2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVt IC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5n MTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Nh aXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94 ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVt IC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlz eXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9s aWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1sWGkgIC1sc3FsaXRlMyAtbFgxMSAgIC1sY2Fp cm8gLWxjYWlybyAtbHhjYiAtbHhjYi1yZW5kZXIgPiY1IApjb25maWd1cmU6MjEwNzY6ICQ/ ID0gMApjb25maWd1cmU6MjEwODY6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMTExMDogY2hl Y2tpbmcgZm9yIFhJU2Nyb2xsQ2xhc3NJbmZvLnR5cGUKY29uZmlndXJlOjIxMTEwOiBnY2Mg LWMgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4w IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWly byAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2 XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9w aXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1n bnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBl MiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xp Yi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICBj b25mdGVzdC5jID4mNQpjb25maWd1cmU6MjExMTA6ICQ/ID0gMApjb25maWd1cmU6MjExMTA6 IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMTExOTogY2hlY2tpbmcgZm9yIFhJVG91Y2hDbGFz c0luZm8udHlwZQpjb25maWd1cmU6MjExMTk6IGdjYyAtYyAgLWczIC1PMiAtcHRocmVhZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251 IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv YmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4w L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAg LWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVp ZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xp Yi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3Vy ZToyMTExOTogJD8gPSAwCmNvbmZpZ3VyZToyMTExOTogcmVzdWx0OiB5ZXMKY29uZmlndXJl OjIxMTI4OiBjaGVja2luZyBmb3IgWElCYXJyaWVyUmVsZWFzZVBvaW50ZXJJbmZvLmRldmlj ZWlkCmNvbmZpZ3VyZToyMTEyODogZ2NjIC1jICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBp eGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWIt Mi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVk ZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3Rl bSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBu ZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv Z2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9p bmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjIxMTI4 OiAkPyA9IDAKY29uZmlndXJlOjIxMTI4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjExMzc6 IGNoZWNraW5nIGZvciBYSUdlc3R1cmVDbGFzc0luZm8udHlwZQpjb25maWd1cmU6MjExMzc6 IGdjYyAtYyAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2 Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJt b3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xp Yi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lz dGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxp bnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4t MSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJl ZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91 c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYg ICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyMTEzNzogJD8gPSAwCmNvbmZpZ3VyZToy MTEzNzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIxMTU2OiBjaGVja2luZyBmb3IgWDExL2V4 dGVuc2lvbnMvc3luYy5oCmNvbmZpZ3VyZToyMTE1NjogZ2NjIC1jICAtZzMgLU8yIC1wdGhy ZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51 eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5j bHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xp Yi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGli LTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1 ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdu dS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUy IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgY29uZnRlc3QuYyA+JjUKY29u ZmlndXJlOjIxMTU2OiAkPyA9IDAKY29uZmlndXJlOjIxMTU2OiByZXN1bHQ6IHllcwpjb25m aWd1cmU6MjExNjA6IGNoZWNraW5nIGZvciBYU3luY1F1ZXJ5RXh0ZW5zaW9uIGluIC1sWGV4 dApjb25maWd1cmU6MjExODM6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251 IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv YmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4w L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAg LWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVp ZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xp Yi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAtbFhleHQgIC1s c3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhjYi1yZW5kZXIgPiY1 IApjb25maWd1cmU6MjExODM6ICQ/ID0gMApjb25maWd1cmU6MjExOTM6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZToyMTIxMDogY2hlY2tpbmcgZm9yIFhTeW5jVHJpZ2dlckZlbmNlCmNvbmZp Z3VyZToyMTIxMDogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBp eGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWIt Mi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVk ZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3Rl bSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBu ZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv Z2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9p bmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1sWGV4dCAtbHNxbGl0ZTMg LWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmln dXJlOjIxMjEwOiAkPyA9IDAKY29uZmlndXJlOjIxMjEwOiByZXN1bHQ6IHllcwpjb25maWd1 cmU6MjEyMjc6IGNoZWNraW5nIGZvciBYMTEvZXh0ZW5zaW9ucy9YZGJlLmgKY29uZmlndXJl OjIxMjI3OiBnY2MgLWMgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0g L3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcx NiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fp cm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4 Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv cGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5 c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xp YnBuZzE2ICAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjEyMjc6ICQ/ID0gMApjb25m aWd1cmU6MjEyMjc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMTIzMjogY2hlY2tpbmcgZm9y IFhkYmVBbGxvY2F0ZUJhY2tCdWZmZXJOYW1lIGluIC1sWGV4dApjb25maWd1cmU6MjEyNTU6 IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1p c3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5j bHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3Rl bSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBu ZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9j YWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIv eDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1p c3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv bGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAtbFhleHQgIC1sc3FsaXRlMyAtbFgxMSAgIC1s Y2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhjYi1yZW5kZXIgPiY1IApjb25maWd1cmU6MjEyNTU6 ICQ/ID0gMApjb25maWd1cmU6MjEyNjU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMTI5MTog Y2hlY2tpbmcgZm9yIFgxMS9leHRlbnNpb25zL3NoYXBlLmgKY29uZmlndXJlOjIxMjkxOiBn Y2MgLWMgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmct Mi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91 bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9j YWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIv eDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51 eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0 eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNy L2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAg ICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjEyOTE6ICQ/ID0gMApjb25maWd1cmU6MjEy OTE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMTI5NjogY2hlY2tpbmcgZm9yIFhTaGFwZVF1 ZXJ5VmVyc2lvbiBpbiAtbFhleHQKY29uZmlndXJlOjIxMzE5OiBnY2MgLW8gY29uZnRlc3Qg IC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0 LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXht YW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv ZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUv Z2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Nh aXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94 ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNv bmZ0ZXN0LmMgLWxYZXh0ICAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4 Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJlOjIxMzE5OiAkPyA9IDAKY29uZmlndXJl OjIxMzI5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjEzNDA6IGNoZWNraW5nIGZvciB4Y2Iv c2hhcGUuaApjb25maWd1cmU6MjEzNDA6IGdjYyAtYyAgLWczIC1PMiAtcHRocmVhZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dk ay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1p c3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxr aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9n bGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2lu Y2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5j bHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlz eXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9s aWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0y LjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToy MTM0MDogJD8gPSAwCmNvbmZpZ3VyZToyMTM0MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIx MzQ0OiBjaGVja2luZyBmb3IgeGNiX3NoYXBlX2NvbWJpbmUgaW4gLWx4Y2Itc2hhcGUKY29u ZmlndXJlOjIxMzY3OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGst cGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lk IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xp Yi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNs dWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lz dGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGli cG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4w L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWx4Y2Itc2hhcGUgIC1s c3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhjYi1yZW5kZXIgPiY1 IApjb25maWd1cmU6MjEzNjc6ICQ/ID0gMApjb25maWd1cmU6MjEzNzc6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZToyMTQwNjogY2hlY2tpbmcgZm9yIFgxMS9leHRlbnNpb25zL1hjb21wb3Np dGUuaApjb25maWd1cmU6MjE0MDY6IGdjYyAtYyAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1w aXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lz dGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGli LTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1 ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0 ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJw bmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAv aW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvbGlicG5nMTYgICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyMTQw NjogJD8gPSAwCmNvbmZpZ3VyZToyMTQwNjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIxNDEx OiBjaGVja2luZyBmb3IgWENvbXBvc2l0ZVJlZGlyZWN0V2luZG93IGluIC1sWGNvbXBvc2l0 ZQpjb25maWd1cmU6MjE0MzQ6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251 IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv YmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4w L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAg LWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVp ZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xp Yi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAtbFhjb21wb3Np dGUgIC1sc3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhjYi1yZW5k ZXIgPiY1IApjb25maWd1cmU6MjE0MzQ6ICQ/ID0gMApjb25maWd1cmU6MjE0NDQ6IHJlc3Vs dDogeWVzCmNvbmZpZ3VyZToyMTQ3MjogY2hlY2tpbmcgZm9yIGxpYnhtbC0yLjAgPiAyLjYu MTcKY29uZmlndXJlOjIxNDc5OiAkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9y cyAibGlieG1sLTIuMCA+IDIuNi4xNyIKY29uZmlndXJlOjIxNDgyOiAkPyA9IDAKY29uZmln dXJlOjIxNDk2OiAkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyAibGlieG1s LTIuMCA+IDIuNi4xNyIKY29uZmlndXJlOjIxNDk5OiAkPyA9IDAKY29uZmlndXJlOjIxNTM3 OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjE1NzI6IGNoZWNraW5nIGZvciBodG1sUmVhZE1l bW9yeSBpbiAtbHhtbDIKY29uZmlndXJlOjIxNTk1OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAt TzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2 XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4 LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5 cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0y LjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQt bGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1h bi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9m cmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0 LmMgLWx4bWwyIC1seG1sMiAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4 Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJlOjIxNTk1OiAkPyA9IDAKY29uZmlndXJl OjIxNjA1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjE4NTc6IGNoZWNraW5nIGZvciBsaW51 eC9zZWNjb21wLmgKY29uZmlndXJlOjIxODU3OiBnY2MgLWMgIC1nMyAtTzIgLXB0aHJlYWQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdu dSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIu MC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4w IC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1 aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2ds aWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVt IC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICBjb25mdGVzdC5jID4mNQpjb25maWd1 cmU6MjE4NTc6ICQ/ID0gMApjb25maWd1cmU6MjE4NTc6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy ZToyMTg2MzogY2hlY2tpbmcgd2hldGhlciBTRUNDT01QX1NFVF9NT0RFX0ZJTFRFUiBpcyBk ZWNsYXJlZApjb25maWd1cmU6MjE4NjM6IGdjYyAtYyAgLWczIC1PMiAtcHRocmVhZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dk ay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1p c3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxr aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9n bGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2lu Y2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5j bHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlz eXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9s aWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0y LjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6 MjE4NjM6ICQ/ID0gMApjb25maWd1cmU6MjE4NjM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToy MTg3ODogY2hlY2tpbmcgd2hldGhlciBTRUNDT01QX0ZJTFRFUl9GTEFHX1RTWU5DIGlzIGRl Y2xhcmVkCmNvbmZpZ3VyZToyMTg3ODogZ2NjIC1jICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2Rr LXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtp ZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ds aWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5j bHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5 c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xp YnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIu MC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToy MTg3ODogJD8gPSAwCmNvbmZpZ3VyZToyMTg3ODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIx ODU3OiBjaGVja2luZyBmb3IgbGludXgvZmlsdGVyLmgKY29uZmlndXJlOjIxODU3OiBnY2Mg LWMgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4w IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWly byAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2 XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9w aXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1n bnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBl MiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xp Yi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICBj b25mdGVzdC5jID4mNQpjb25maWd1cmU6MjE4NTc6ICQ/ID0gMApjb25maWd1cmU6MjE4NTc6 IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMTg2MzogY2hlY2tpbmcgd2hldGhlciBTRUNDT01Q X1NFVF9NT0RFX0ZJTFRFUiBpcyBkZWNsYXJlZApjb25maWd1cmU6MjE4NjM6IHJlc3VsdDog eWVzCmNvbmZpZ3VyZToyMTg3ODogY2hlY2tpbmcgd2hldGhlciBTRUNDT01QX0ZJTFRFUl9G TEFHX1RTWU5DIGlzIGRlY2xhcmVkCmNvbmZpZ3VyZToyMTg3ODogcmVzdWx0OiB5ZXMKY29u ZmlndXJlOjIxOTAxOiBjaGVja2luZyBmb3IgbGlic2VjY29tcCA+PSAyLjUuMgpjb25maWd1 cmU6MjE5MDg6ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzICJsaWJzZWNj b21wID49IDIuNS4yIgpQYWNrYWdlIGxpYnNlY2NvbXAgd2FzIG5vdCBmb3VuZCBpbiB0aGUg cGtnLWNvbmZpZyBzZWFyY2ggcGF0aC4KUGVyaGFwcyB5b3Ugc2hvdWxkIGFkZCB0aGUgZGly ZWN0b3J5IGNvbnRhaW5pbmcgYGxpYnNlY2NvbXAucGMnCnRvIHRoZSBQS0dfQ09ORklHX1BB VEggZW52aXJvbm1lbnQgdmFyaWFibGUKTm8gcGFja2FnZSAnbGlic2VjY29tcCcgZm91bmQK Y29uZmlndXJlOjIxOTExOiAkPyA9IDEKY29uZmlndXJlOjIxOTI1OiAkUEtHX0NPTkZJRyAt LWV4aXN0cyAtLXByaW50LWVycm9ycyAibGlic2VjY29tcCA+PSAyLjUuMiIKUGFja2FnZSBs aWJzZWNjb21wIHdhcyBub3QgZm91bmQgaW4gdGhlIHBrZy1jb25maWcgc2VhcmNoIHBhdGgu ClBlcmhhcHMgeW91IHNob3VsZCBhZGQgdGhlIGRpcmVjdG9yeSBjb250YWluaW5nIGBsaWJz ZWNjb21wLnBjJwp0byB0aGUgUEtHX0NPTkZJR19QQVRIIGVudmlyb25tZW50IHZhcmlhYmxl Ck5vIHBhY2thZ2UgJ2xpYnNlY2NvbXAnIGZvdW5kCmNvbmZpZ3VyZToyMTkyODogJD8gPSAx CmNvbmZpZ3VyZToyMTk0MjogcmVzdWx0OiBubwpObyBwYWNrYWdlICdsaWJzZWNjb21wJyBm b3VuZApjb25maWd1cmU6MjE5Nzk6IGNoZWNraW5nIHNpemUgb2YgbG9uZwpjb25maWd1cmU6 MjE5ODU6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYt Mi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAt aXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlk IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vz ci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWIt Mi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVk ZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAtbHNxbGl0ZTMgLWxYMTEgICAtbGNh aXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJlOjIxOTg1OiAk PyA9IDAKY29uZmlndXJlOjIxOTg1OiAuL2NvbmZ0ZXN0CmNvbmZpZ3VyZToyMTk4NTogJD8g PSAwCmNvbmZpZ3VyZToyMjAwMDogcmVzdWx0OiA4CmNvbmZpZ3VyZToyMjAxMzogY2hlY2tp bmcgZm9yIGFjY2VwdDQKY29uZmlndXJlOjIyMDEzOiBnY2MgLW8gY29uZnRlc3QgIC1nMyAt TzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2 XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4 LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5 cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0y LjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQt bGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1h bi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9m cmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0 LmMgIC1sbSAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2It cmVuZGVyID4mNSAKY29uZmlndXJlOjIyMDEzOiAkPyA9IDAKY29uZmlndXJlOjIyMDEzOiBy ZXN1bHQ6IHllcwpjb25maWd1cmU6MjIwMTk6IGNoZWNraW5nIGZvciBmY2hkaXIKY29uZmln dXJlOjIyMDE5OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4 YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0y LjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRl IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv dXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVt IC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5n MTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9n bGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2lu Y2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5j bHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgIC1sbSAtbHNxbGl0ZTMgLWxY MTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJl OjIyMDE5OiAkPyA9IDAKY29uZmlndXJlOjIyMDE5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6 MjIwMjU6IGNoZWNraW5nIGZvciBnZXRob3N0bmFtZQpjb25maWd1cmU6MjIwMjU6IGdjYyAt byBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGli cnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVt IC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9s aWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNy L2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1p c3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0 LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXht YW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv ZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVt IC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5n MTYgICAgICAgY29uZnRlc3QuYyAgLWxtIC1sc3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxj YWlybyAtbHhjYiAtbHhjYi1yZW5kZXIgPiY1IApjb25maWd1cmU6MjIwMjU6ICQ/ID0gMApj b25maWd1cmU6MjIwMjU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjAzMTogY2hlY2tpbmcg Zm9yIGdldHJ1c2FnZQpjb25maWd1cmU6MjIwMzE6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1P MiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZf NjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgt Z251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1p c3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlw ZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVk ZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIu MC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1s aW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFu LTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Zy ZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3Qu YyAgLWxtIC1sc3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhjYi1y ZW5kZXIgPiY1IApjb25maWd1cmU6MjIwMzE6ICQ/ID0gMApjb25maWd1cmU6MjIwMzE6IHJl c3VsdDogeWVzCmNvbmZpZ3VyZToyMjAzNzogY2hlY2tpbmcgZm9yIGdldF9jdXJyZW50X2Rp cl9uYW1lCmNvbmZpZ3VyZToyMjAzNzogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhy ZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51 eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5j bHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xp Yi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGli LTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1 ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdu dS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUy IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jICAtbG0g LWxzcWxpdGUzIC1sWDExICAgLWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNiLXJlbmRlciA+ JjUgCmNvbmZpZ3VyZToyMjAzNzogJD8gPSAwCmNvbmZpZ3VyZToyMjAzNzogcmVzdWx0OiB5 ZXMKY29uZmlndXJlOjIyMDQzOiBjaGVja2luZyBmb3IgbHJhbmQ0OApjb25maWd1cmU6MjIw NDM6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4w IC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5 c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xp YnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9s aWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4w IC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1 aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAgLWxtIC1sc3FsaXRlMyAtbFgxMSAgIC1s Y2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhjYi1yZW5kZXIgPiY1IApjb25maWd1cmU6MjIwNDM6 ICQ/ID0gMApjb25maWd1cmU6MjIwNDM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjA0OTog Y2hlY2tpbmcgZm9yIHJhbmRvbQpjb25maWd1cmU6MjIwNDk6IGdjYyAtbyBjb25mdGVzdCAg LWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQt bGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1h bi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9m cmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3Iv aW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9n bGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fp cm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4 Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv cGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29u ZnRlc3QuYyAgLWxtIC1sc3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWlybyAtbHhjYiAt bHhjYi1yZW5kZXIgPiY1IApjb25maWd1cmU6MjIwNDk6ICQ/ID0gMApjb25maWd1cmU6MjIw NDk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjA1NTogY2hlY2tpbmcgZm9yIHJpbnQKY29u ZmlndXJlOjIyMDU1OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGst cGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lk IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xp Yi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNs dWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lz dGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGli cG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4w L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgIC1sbSAtbHNxbGl0ZTMg LWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZnRl c3QuYzoyMTk6Njogd2FybmluZzogY29uZmxpY3RpbmcgdHlwZXMgZm9yIGJ1aWx0LWluIGZ1 bmN0aW9uICdyaW50JzsgZXhwZWN0ZWQgJ2RvdWJsZShkb3VibGUpJyBbLVdidWlsdGluLWRl Y2xhcmF0aW9uLW1pc21hdGNoXQogIDIxOSB8IGNoYXIgcmludCAoKTsKICAgICAgfCAgICAg IF5+fn4KY29uZnRlc3QuYzoyMTE6MTogbm90ZTogJ3JpbnQnIGlzIGRlY2xhcmVkIGluIGhl YWRlciAnPG1hdGguaD4nCiAgMjEwIHwgI2luY2x1ZGUgPGxpbWl0cy5oPgogIDIxMSB8ICN1 bmRlZiByaW50CmNvbmZpZ3VyZToyMjA1NTogJD8gPSAwCmNvbmZpZ3VyZToyMjA1NTogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjIyMDYxOiBjaGVja2luZyBmb3IgdHJ1bmMKY29uZmlndXJl OjIyMDYxOiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVm LTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAg LWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVp ZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91 c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGli LTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1 ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgIC1sbSAtbHNxbGl0ZTMgLWxYMTEg ICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZnRlc3QuYzoy MjA6Njogd2FybmluZzogY29uZmxpY3RpbmcgdHlwZXMgZm9yIGJ1aWx0LWluIGZ1bmN0aW9u ICd0cnVuYyc7IGV4cGVjdGVkICdkb3VibGUoZG91YmxlKScgWy1XYnVpbHRpbi1kZWNsYXJh dGlvbi1taXNtYXRjaF0KICAyMjAgfCBjaGFyIHRydW5jICgpOwogICAgICB8ICAgICAgXn5+ fn4KY29uZnRlc3QuYzoyMTI6MTogbm90ZTogJ3RydW5jJyBpcyBkZWNsYXJlZCBpbiBoZWFk ZXIgJzxtYXRoLmg+JwogIDIxMSB8ICNpbmNsdWRlIDxsaW1pdHMuaD4KICAyMTIgfCAjdW5k ZWYgdHJ1bmMKY29uZmlndXJlOjIyMDYxOiAkPyA9IDAKY29uZmlndXJlOjIyMDYxOiByZXN1 bHQ6IHllcwpjb25maWd1cmU6MjIwNjc6IGNoZWNraW5nIGZvciBzZWxlY3QKY29uZmlndXJl OjIyMDY3OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVm LTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAg LWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVp ZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91 c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGli LTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1 ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgIC1sbSAtbHNxbGl0ZTMgLWxYMTEg ICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJlOjIy MDY3OiAkPyA9IDAKY29uZmlndXJlOjIyMDY3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjIw NzM6IGNoZWNraW5nIGZvciBnZXRwYWdlc2l6ZQpjb25maWd1cmU6MjIwNzM6IHJlc3VsdDog eWVzCmNvbmZpZ3VyZToyMjA3OTogY2hlY2tpbmcgZm9yIHNldGxvY2FsZQpjb25maWd1cmU6 MjIwNzk6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYt Mi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAt aXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlk IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vz ci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWIt Mi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVk ZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAgLWxtIC1sc3FsaXRlMyAtbFgxMSAg IC1sY2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhjYi1yZW5kZXIgPiY1IApjb25maWd1cmU6MjIw Nzk6ICQ/ID0gMApjb25maWd1cmU6MjIwNzk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjA4 NTogY2hlY2tpbmcgZm9yIG5ld2xvY2FsZQpjb25maWd1cmU6MjIwODU6IGdjYyAtbyBjb25m dGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0y LjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3Vu dCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Nh aXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94 ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVt IC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4 LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5 cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3Iv bGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAg ICAgY29uZnRlc3QuYyAgLWxtIC1sc3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWlybyAt bHhjYiAtbHhjYi1yZW5kZXIgPiY1IApjb25maWd1cmU6MjIwODU6ICQ/ID0gMApjb25maWd1 cmU6MjIwODU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjA5MTogY2hlY2tpbmcgZm9yIGdl dHJsaW1pdApjb25maWd1cmU6MjIwOTE6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRo cmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGlu dXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2ds aWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVt IC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJw IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xp Yi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNs dWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1n bnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBl MiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAgLWxt IC1sc3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhjYi1yZW5kZXIg PiY1IApjb25maWd1cmU6MjIwOTE6ICQ/ID0gMApjb25maWd1cmU6MjIwOTE6IHJlc3VsdDog eWVzCmNvbmZpZ3VyZToyMjA5NzogY2hlY2tpbmcgZm9yIHNldHJsaW1pdApjb25maWd1cmU6 MjIwOTc6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYt Mi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAt aXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlk IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vz ci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWIt Mi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVk ZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAgLWxtIC1sc3FsaXRlMyAtbFgxMSAg IC1sY2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhjYi1yZW5kZXIgPiY1IApjb25maWd1cmU6MjIw OTc6ICQ/ID0gMApjb25maWd1cmU6MjIwOTc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjEw MzogY2hlY2tpbmcgZm9yIHNodXRkb3duCmNvbmZpZ3VyZToyMjEwMzogZ2NjIC1vIGNvbmZ0 ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIu MCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50 IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fp cm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4 Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv cGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgt Z251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1p c3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlw ZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9s aWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAg ICBjb25mdGVzdC5jICAtbG0gLWxzcWxpdGUzIC1sWDExICAgLWxjYWlybyAtbGNhaXJvIC1s eGNiIC1seGNiLXJlbmRlciA+JjUgCmNvbmZpZ3VyZToyMjEwMzogJD8gPSAwCmNvbmZpZ3Vy ZToyMjEwMzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIyMTA5OiBjaGVja2luZyBmb3IgcHRo cmVhZF9zaWdtYXNrCmNvbmZpZ3VyZToyMjEwOTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIy MTE1OiBjaGVja2luZyBmb3Igc3Ryc2lnbmFsCmNvbmZpZ3VyZToyMjExNTogZ2NjIC1vIGNv bmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3Zn LTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1v dW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv Y2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGli L3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGlu dXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0x IC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVl dHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5j bHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vz ci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAg ICAgICBjb25mdGVzdC5jICAtbG0gLWxzcWxpdGUzIC1sWDExICAgLWxjYWlybyAtbGNhaXJv IC1seGNiIC1seGNiLXJlbmRlciA+JjUgCmNvbmZpZ3VyZToyMjExNTogJD8gPSAwCmNvbmZp Z3VyZToyMjExNTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIyMTIxOiBjaGVja2luZyBmb3Ig c2V0aXRpbWVyCmNvbmZpZ3VyZToyMjEyMTogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1w dGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1s aW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUv Z2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dl YnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9n bGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2lu Y2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5j bHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4 LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5 cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jICAt bG0gLWxzcWxpdGUzIC1sWDExICAgLWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNiLXJlbmRl ciA+JjUgCmNvbmZpZ3VyZToyMjEyMTogJD8gPSAwCmNvbmZpZ3VyZToyMjEyMTogcmVzdWx0 OiB5ZXMKY29uZmlndXJlOjIyMTI3OiBjaGVja2luZyBmb3Igc2VuZHRvCmNvbmZpZ3VyZToy MjEyNzogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0y LjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1p c3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv bGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNy L2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1p c3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0y LjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRl IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv dXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jICAtbG0gLWxzcWxpdGUzIC1sWDExICAg LWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNiLXJlbmRlciA+JjUgCmNvbmZpZ3VyZToyMjEy NzogJD8gPSAwCmNvbmZpZ3VyZToyMjEyNzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIyMTMz OiBjaGVja2luZyBmb3IgcmVjdmZyb20KY29uZmlndXJlOjIyMTMzOiBnY2MgLW8gY29uZnRl c3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4w IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWly byAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2 XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9w aXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1n bnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBl MiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xp Yi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAg IGNvbmZ0ZXN0LmMgIC1sbSAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4 Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJlOjIyMTMzOiAkPyA9IDAKY29uZmlndXJl OjIyMTMzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjIxMzk6IGNoZWNraW5nIGZvciBnZXRz b2NrbmFtZQpjb25maWd1cmU6MjIxMzk6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRo cmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGlu dXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2ds aWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVt IC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJw IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xp Yi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNs dWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1n bnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBl MiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAgLWxt IC1sc3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhjYi1yZW5kZXIg PiY1IApjb25maWd1cmU6MjIxMzk6ICQ/ID0gMApjb25maWd1cmU6MjIxMzk6IHJlc3VsdDog eWVzCmNvbmZpZ3VyZToyMjE0NTogY2hlY2tpbmcgZm9yIGdldGlmYWRkcnMKY29uZmlndXJl OjIyMTQ1OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVm LTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAg LWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVp ZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91 c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGli LTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1 ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgIC1sbSAtbHNxbGl0ZTMgLWxYMTEg ICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJlOjIy MTQ1OiAkPyA9IDAKY29uZmlndXJlOjIyMTQ1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjIx NTE6IGNoZWNraW5nIGZvciBmcmVlaWZhZGRycwpjb25maWd1cmU6MjIxNTE6IGdjYyAtbyBj b25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2 Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJt b3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xp Yi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lz dGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxp bnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4t MSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJl ZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91 c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYg ICAgICAgY29uZnRlc3QuYyAgLWxtIC1sc3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWly byAtbHhjYiAtbHhjYi1yZW5kZXIgPiY1IApjb25maWd1cmU6MjIxNTE6ICQ/ID0gMApjb25m aWd1cmU6MjIxNTE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjE1NzogY2hlY2tpbmcgZm9y IGdhaV9zdHJlcnJvcgpjb25maWd1cmU6MjIxNTc6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1P MiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZf NjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgt Z251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1p c3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlw ZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVk ZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIu MC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1s aW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFu LTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Zy ZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3Qu YyAgLWxtIC1sc3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhjYi1y ZW5kZXIgPiY1IApjb25maWd1cmU6MjIxNTc6ICQ/ID0gMApjb25maWd1cmU6MjIxNTc6IHJl c3VsdDogeWVzCmNvbmZpZ3VyZToyMjE2MzogY2hlY2tpbmcgZm9yIHN5bmMKY29uZmlndXJl OjIyMTYzOiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVm LTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAg LWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVp ZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91 c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGli LTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1 ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgIC1sbSAtbHNxbGl0ZTMgLWxYMTEg ICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJlOjIy MTYzOiAkPyA9IDAKY29uZmlndXJlOjIyMTYzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjIx Njk6IGNoZWNraW5nIGZvciBnZXRwd2VudApjb25maWd1cmU6MjIxNjk6IGdjYyAtbyBjb25m dGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0y LjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3Vu dCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Nh aXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94 ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVt IC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4 LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5 cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3Iv bGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAg ICAgY29uZnRlc3QuYyAgLWxtIC1sc3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWlybyAt bHhjYiAtbHhjYi1yZW5kZXIgPiY1IApjb25maWd1cmU6MjIxNjk6ICQ/ID0gMApjb25maWd1 cmU6MjIxNjk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjE3NTogY2hlY2tpbmcgZm9yIGVu ZHB3ZW50CmNvbmZpZ3VyZToyMjE3NTogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhy ZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51 eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5j bHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xp Yi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGli LTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1 ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdu dS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUy IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jICAtbG0g LWxzcWxpdGUzIC1sWDExICAgLWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNiLXJlbmRlciA+ JjUgCmNvbmZpZ3VyZToyMjE3NTogJD8gPSAwCmNvbmZpZ3VyZToyMjE3NTogcmVzdWx0OiB5 ZXMKY29uZmlndXJlOjIyMTgxOiBjaGVja2luZyBmb3IgZ2V0Z3JlbnQKY29uZmlndXJlOjIy MTgxOiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIu MCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlz eXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9s aWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3Iv bGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIu MCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91 dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgIC1sbSAtbHNxbGl0ZTMgLWxYMTEgICAt bGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJlOjIyMTgx OiAkPyA9IDAKY29uZmlndXJlOjIyMTgxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjIxODc6 IGNoZWNraW5nIGZvciBlbmRncmVudApjb25maWd1cmU6MjIxODc6IGdjYyAtbyBjb25mdGVz dCAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5j bHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJv IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZf NjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3Bp eG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91 c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdu dS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUy IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv Y2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGli L3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAg Y29uZnRlc3QuYyAgLWxtIC1sc3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWlybyAtbHhj YiAtbHhjYi1yZW5kZXIgPiY1IApjb25maWd1cmU6MjIxODc6ICQ/ID0gMApjb25maWd1cmU6 MjIxODc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjE5MzogY2hlY2tpbmcgZm9yIHJlbmFt ZWF0Mgpjb25maWd1cmU6MjIxOTM6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVh ZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgt Z251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWIt Mi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0y LjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRl IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv dXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUv Z2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAgLWxtIC1s c3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhjYi1yZW5kZXIgPiY1 IApjb25maWd1cmU6MjIxOTM6ICQ/ID0gMApjb25maWd1cmU6MjIxOTM6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZToyMjE5OTogY2hlY2tpbmcgZm9yIGNmbWFrZXJhdwpjb25maWd1cmU6MjIx OTk6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4w IC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5 c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xp YnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9s aWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4w IC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1 aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAgLWxtIC1sc3FsaXRlMyAtbFgxMSAgIC1s Y2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhjYi1yZW5kZXIgPiY1IApjb25maWd1cmU6MjIxOTk6 ICQ/ID0gMApjb25maWd1cmU6MjIxOTk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjIwNTog Y2hlY2tpbmcgZm9yIGNmc2V0c3BlZWQKY29uZmlndXJlOjIyMjA1OiBnY2MgLW8gY29uZnRl c3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4w IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWly byAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2 XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9w aXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1n bnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBl MiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xp Yi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAg IGNvbmZ0ZXN0LmMgIC1sbSAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4 Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJlOjIyMjA1OiAkPyA9IDAKY29uZmlndXJl OjIyMjA1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjIyMTE6IGNoZWNraW5nIGZvciBfX2V4 ZWN1dGFibGVfc3RhcnQKY29uZmlndXJlOjIyMjExOiBnY2MgLW8gY29uZnRlc3QgIC1nMyAt TzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2 XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4 LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5 cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0y LjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQt bGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1h bi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9m cmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0 LmMgIC1sbSAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2It cmVuZGVyID4mNSAKY29uZmlndXJlOjIyMjExOiAkPyA9IDAKY29uZmlndXJlOjIyMjExOiBy ZXN1bHQ6IHllcwpjb25maWd1cmU6MjIyMTc6IGNoZWNraW5nIGZvciBsb2cyCmNvbmZpZ3Vy ZToyMjIxNzogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1 Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4w IC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1 aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAv dXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2 IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xp Yi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNs dWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jICAtbG0gLWxzcWxpdGUzIC1sWDEx ICAgLWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNiLXJlbmRlciA+JjUgCmNvbmZ0ZXN0LmM6 MjQ2OjY6IHdhcm5pbmc6IGNvbmZsaWN0aW5nIHR5cGVzIGZvciBidWlsdC1pbiBmdW5jdGlv biAnbG9nMic7IGV4cGVjdGVkICdkb3VibGUoZG91YmxlKScgWy1XYnVpbHRpbi1kZWNsYXJh dGlvbi1taXNtYXRjaF0KICAyNDYgfCBjaGFyIGxvZzIgKCk7CiAgICAgIHwgICAgICBefn5+ CmNvbmZ0ZXN0LmM6MjM4OjE6IG5vdGU6ICdsb2cyJyBpcyBkZWNsYXJlZCBpbiBoZWFkZXIg JzxtYXRoLmg+JwogIDIzNyB8ICNpbmNsdWRlIDxsaW1pdHMuaD4KICAyMzggfCAjdW5kZWYg bG9nMgpjb25maWd1cmU6MjIyMTc6ICQ/ID0gMApjb25maWd1cmU6MjIyMTc6IHJlc3VsdDog eWVzCmNvbmZpZ3VyZToyMjIyMzogY2hlY2tpbmcgZm9yIHB0aHJlYWRfc2V0bmFtZV9ucApj b25maWd1cmU6MjIyMjM6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dk ay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1p c3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxr aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9n bGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2lu Y2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5j bHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlz eXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9s aWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0y LjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAgLWxtIC1sc3FsaXRl MyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhjYi1yZW5kZXIgPiY1IApjb25m aWd1cmU6MjIyMjM6ICQ/ID0gMApjb25maWd1cmU6MjIyMjM6IHJlc3VsdDogeWVzCmNvbmZp Z3VyZToyMjIyOTogY2hlY2tpbmcgZm9yIHB0aHJlYWRfc2V0X25hbWVfbnAKY29uZmlndXJl OjIyMjI5OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVm LTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAg LWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVp ZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91 c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGli LTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1 ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgIC1sbSAtbHNxbGl0ZTMgLWxYMTEg ICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKL3Vzci9iaW4vbGQ6 IC90bXAvY2NWRmtNRnQubzogaW4gZnVuY3Rpb24gYG1haW4nOgovYXBwL2VtYWNzL2NvbmZ0 ZXN0LmM6MjU5OiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBwdGhyZWFkX3NldF9uYW1lX25w Jwpjb2xsZWN0MjogZXJyb3I6IGxkIHJldHVybmVkIDEgZXhpdCBzdGF0dXMKY29uZmlndXJl OjIyMjI5OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29u 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 X0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9IV0FERFIgMQp8ICNk ZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX05FVE1BU0sgMQp8ICNkZWZpbmUgSEFWRV9T VFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJF UV9JRlJfQUREUiAxCnwgI2RlZmluZSBIQVZFX1NCUksgMQp8ICNkZWZpbmUgSEFWRV9HRVRQ QUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9WRk9SSyAx CnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0NBTk9OSUNBTElaRV9G SUxFX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9SRUFMUEFUSCAxCnwgI2RlZmluZSBIQVZFX0xT VEFUIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EQVQgMQp8ICNkZWZpbmUgSEFWRV9MQ0hNT0Qg MQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwg I2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmlu ZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZp bmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwg I2RlZmluZSBIQVZFX0lTQkxBTksgMQp8ICNkZWZpbmUgSEFWRV9JU1dDVFlQRSAxCnwgI2Rl ZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZp bmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8 ICNkZWZpbmUgU1lTVEVNX01BTExPQyAxCnwgI2RlZmluZSBIQVZFX01NQVAgMQp8ICNkZWZp bmUgSEFWRV9QVEhSRUFEIDEKfCAjZGVmaW5lIFRIUkVBRFNfRU5BQkxFRCAxCnwgI2RlZmlu ZSBIQVZFX1hLQiAxCnwgI2RlZmluZSBIQVZFX1hLQlJFRlJFU0hLRVlCT0FSRE1BUFBJTkcg MQp8ICNkZWZpbmUgSEFWRV9YS0JGUkVFTkFNRVMgMQp8ICNkZWZpbmUgSEFWRV9YUk1TRVRE QVRBQkFTRSAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNPVVJDRVNUUklORyAxCnwgI2Rl ZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJPRlNDUkVFTiAxCnwgI2RlZmluZSBIQVZFX1hESVNQ TEFZQ0VMTFMgMQp8ICNkZWZpbmUgSEFWRV9YREVTVFJPWVNVQldJTkRPV1MgMQp8ICNkZWZp bmUgSEFWRV9YMTFSNiAxCnwgI2RlZmluZSBIQVZFX1hfSTE4TiAxCnwgI2RlZmluZSBIQVZF X1hJQ0NBTExCQUNLX0NBTExCQUNLIDEKfCAjZGVmaW5lIEhBVkVfWDExUjZfWElNIDEKfCAj ZGVmaW5lIEhBVkVfUlNWRyAxCnwgI2RlZmluZSBIQVZFX1dFQlAgMQp8ICNkZWZpbmUgSEFW RV9TUUxJVEUzIDEKfCAjZGVmaW5lIEhBVkVfU1FMSVRFM19MT0FEX0VYVEVOU0lPTiAxCnwg I2RlZmluZSBIQVZFX0dFVEFERFJJTkZPX0EgMQp8ICNkZWZpbmUgSEFWRV9HVEszIDEKfCAj ZGVmaW5lIEdES19ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIEdM SUJfRElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAxCnwgI2RlZmluZSBVU0VfR1RLIDEK fCAjZGVmaW5lIEhBVkVfTUFMTE9DX1RSSU0gMQp8ICNkZWZpbmUgSEFWRV9EQlVTIDEKfCAj ZGVmaW5lIEhBVkVfREJVU19XQVRDSF9HRVRfVU5JWF9GRCAxCnwgI2RlZmluZSBIQVZFX0RC VVNfVFlQRV9JU19WQUxJRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfQlVTX05B TUUgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX1BBVEggMQp8ICNkZWZpbmUgSEFW RV9EQlVTX1ZBTElEQVRFX0lOVEVSRkFDRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURB VEVfTUVNQkVSIDEKfCAjZGVmaW5lIEhBVkVfR1NFVFRJTkdTIDEKfCAjZGVmaW5lIEhBVkVf TElCU0VMSU5VWCAxCnwgI2RlZmluZSBIQVZFX0dOVVRMUyAxCnwgI2RlZmluZSBIQVZFX0xJ QlNZU1RFTUQgMQp8ICNkZWZpbmUgSEFWRV9KU09OIDEKfCAjZGVmaW5lIEhBVkVfSU5PVElG WSAxCnwgI2RlZmluZSBVU0VfRklMRV9OT1RJRlkgMQp8ICNkZWZpbmUgVVNFX1RPT0xLSVRf U0NST0xMX0JBUlMgMQp8ICNkZWZpbmUgSEFWRV9YSU0gMQp8ICNkZWZpbmUgVVNFX1hJTSAx CnwgI2RlZmluZSBIQVZFX1hSRU5ERVIgMQp8ICNkZWZpbmUgVVNFX0NBSVJPX1hDQiAxCnwg I2RlZmluZSBVU0VfQ0FJUk8gMQp8ICNkZWZpbmUgSEFWRV9GUkVFVFlQRSAxCnwgI2RlZmlu ZSBIQVZFX0ZUX0ZBQ0VfR0VUQ0hBUlZBUklBTlRJTkRFWCAxCnwgI2RlZmluZSBIQVZFX0xJ Qk9URiAxCnwgI2RlZmluZSBIQVZFX09URl9HRVRfVkFSSUFUSU9OX0dMWVBIUyAxCnwgI2Rl ZmluZSBIQVZFX00xN05fRkxUIDEKfCAjZGVmaW5lIEhBVkVfSEFSRkJVWlogMQp8ICNkZWZp bmUgVVNFX1hDQiAxCnwgI2RlZmluZSBIQVZFX1hQTSAxCnwgI2RlZmluZSBIQVZFX0pQRUcg MQp8ICNkZWZpbmUgSEFWRV9MQ01TMiAxCnwgI2RlZmluZSBIQVZFX1pMSUIgMQp8ICNkZWZp bmUgRFlOQU1JQ19MSUJfU1VGRklYICIuc28iCnwgI2RlZmluZSBEWU5BTUlDX0xJQl9TRUNP TkRBUllfU1VGRklYICIiCnwgI2RlZmluZSBIQVZFX0RMQUREUiAxCnwgI2RlZmluZSBIQVZF X01PRFVMRVMgMQp8ICNkZWZpbmUgTU9EVUxFU19TVUZGSVggIi5zbyIKfCAjZGVmaW5lIE5B VElWRV9FTElTUF9TVUZGSVggIi5lbG4iCnwgI2RlZmluZSBIQVZFX1BORyAxCnwgI2RlZmlu ZSBIQVZFX1RJRkYgMQp8ICNkZWZpbmUgSEFWRV9HSUYgMQp8ICNkZWZpbmUgSEFWRV9HUE0g MQp8ICNkZWZpbmUgSEFWRV9YX1NNIDEKfCAjZGVmaW5lIEhBVkVfWFJBTkRSIDEKfCAjZGVm aW5lIEhBVkVfWElORVJBTUEgMQp8ICNkZWZpbmUgSEFWRV9YRklYRVMgMQp8ICNkZWZpbmUg SEFWRV9YSU5QVVQyIDEKfCAjZGVmaW5lIEhBVkVfWElTQ1JPTExDTEFTU0lORk9fVFlQRSAx CnwgI2RlZmluZSBIQVZFX1hJVE9VQ0hDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZF X1hJQkFSUklFUlJFTEVBU0VQT0lOVEVSSU5GT19ERVZJQ0VJRCAxCnwgI2RlZmluZSBIQVZF X1hJR0VTVFVSRUNMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWFNZTkMgMQp8ICNk ZWZpbmUgSEFWRV9YU1lOQ1RSSUdHRVJGRU5DRSAxCnwgI2RlZmluZSBIQVZFX1hEQkUgMQp8 ICNkZWZpbmUgSEFWRV9YQ0JfU0hBUEUgMQp8ICNkZWZpbmUgSEFWRV9YU0hBUEUgMQp8ICNk ZWZpbmUgSEFWRV9YQ09NUE9TSVRFIDEKfCAjZGVmaW5lIEhBVkVfTElCWE1MMiAxCnwgI2Rl ZmluZSBIQVZFX0xJTlVYX1NFQ0NPTVBfSCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09N UF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVS X0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GSUxURVJfSCAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZpbmUgSEFWRV9E RUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgU0laRU9GX0xPTkcg OAp8ICNkZWZpbmUgSEFWRV9BQ0NFUFQ0IDEKfCAjZGVmaW5lIEhBVkVfRkNIRElSIDEKfCAj ZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNBR0UgMQp8 ICNkZWZpbmUgSEFWRV9HRVRfQ1VSUkVOVF9ESVJfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0xS QU5ENDggMQp8ICNkZWZpbmUgSEFWRV9SQU5ET00gMQp8ICNkZWZpbmUgSEFWRV9SSU5UIDEK fCAjZGVmaW5lIEhBVkVfVFJVTkMgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZp bmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FMRSAxCnwgI2Rl ZmluZSBIQVZFX05FV0xPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJMSU1JVCAxCnwgI2Rl ZmluZSBIQVZFX1NFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVm aW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSU0lHTkFMIDEK fCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfU0VORFRPIDEKfCAj ZGVmaW5lIEhBVkVfUkVDVkZST00gMQp8ICNkZWZpbmUgSEFWRV9HRVRTT0NLTkFNRSAxCnwg I2RlZmluZSBIQVZFX0dFVElGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9GUkVFSUZBRERSUyAx CnwgI2RlZmluZSBIQVZFX0dBSV9TVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZFX1NZTkMgMQp8 ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0VORFBXRU5UIDEKfCAj ZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRHUkVOVCAxCnwgI2Rl ZmluZSBIQVZFX1JFTkFNRUFUMiAxCnwgI2RlZmluZSBIQVZFX0NGTUFLRVJBVyAxCnwgI2Rl ZmluZSBIQVZFX0NGU0VUU1BFRUQgMQp8ICNkZWZpbmUgSEFWRV9fX0VYRUNVVEFCTEVfU1RB UlQgMQp8ICNkZWZpbmUgSEFWRV9MT0cyIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TRVRO QU1FX05QIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgLyogRGVmaW5lIHB0aHJlYWRf c2V0X25hbWVfbnAgdG8gYW4gaW5ub2N1b3VzIHZhcmlhbnQsIGluIGNhc2UgPGxpbWl0cy5o PiBkZWNsYXJlcyBwdGhyZWFkX3NldF9uYW1lX25wLgp8ICAgIEZvciBleGFtcGxlLCBIUC1V WCAxMWkgPGxpbWl0cy5oPiBkZWNsYXJlcyBnZXR0aW1lb2ZkYXkuICAqLwp8ICNkZWZpbmUg cHRocmVhZF9zZXRfbmFtZV9ucCBpbm5vY3VvdXNfcHRocmVhZF9zZXRfbmFtZV9ucAp8IAp8 IC8qIFN5c3RlbSBoZWFkZXIgdG8gZGVmaW5lIF9fc3R1YiBtYWNyb3MgYW5kIGhvcGVmdWxs eSBmZXcgcHJvdG90eXBlcywKfCAgICB3aGljaCBjYW4gY29uZmxpY3Qgd2l0aCBjaGFyIHB0 aHJlYWRfc2V0X25hbWVfbnAgKCk7IGJlbG93LiAgKi8KfCAKfCAjaW5jbHVkZSA8bGltaXRz Lmg+CnwgI3VuZGVmIHB0aHJlYWRfc2V0X25hbWVfbnAKfCAKfCAvKiBPdmVycmlkZSBhbnkg R0NDIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4KfCAgICBVc2UgY2hh ciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBHQ0MKfCAg ICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwg YXBwbHkuICAqLwp8ICNpZmRlZiBfX2NwbHVzcGx1cwp8IGV4dGVybiAiQyIKfCAjZW5kaWYK fCBjaGFyIHB0aHJlYWRfc2V0X25hbWVfbnAgKCk7CnwgLyogVGhlIEdOVSBDIGxpYnJhcnkg ZGVmaW5lcyB0aGlzIGZvciBmdW5jdGlvbnMgd2hpY2ggaXQgaW1wbGVtZW50cwp8ICAgICB0 byBhbHdheXMgZmFpbCB3aXRoIEVOT1NZUy4gIFNvbWUgZnVuY3Rpb25zIGFyZSBhY3R1YWxs eSBuYW1lZAp8ICAgICBzb21ldGhpbmcgc3RhcnRpbmcgd2l0aCBfXyBhbmQgdGhlIG5vcm1h bCBuYW1lIGlzIGFuIGFsaWFzLiAgKi8KfCAjaWYgZGVmaW5lZCBfX3N0dWJfcHRocmVhZF9z ZXRfbmFtZV9ucCB8fCBkZWZpbmVkIF9fc3R1Yl9fX3B0aHJlYWRfc2V0X25hbWVfbnAKfCBj aG9rZSBtZQp8ICNlbmRpZgp8IAp8IGludAp8IG1haW4gKHZvaWQpCnwgewp8IHJldHVybiBw dGhyZWFkX3NldF9uYW1lX25wICgpOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1 cmU6MjIyMjk6IHJlc3VsdDogbm8KY29uZmlndXJlOjIyMjM5OiBjaGVja2luZyB3aGV0aGVy IHB0aHJlYWRfc2V0bmFtZV9ucCB0YWtlcyBhIHNpbmdsZSBhcmd1bWVudApjb25maWd1cmU6 MjIyNTY6IGdjYyAtYyAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv bGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lz dGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAv dXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2 IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWly byAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2 XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9w aXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lz dGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGli cG5nMTYgICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6IEluIGZ1bmN0aW9uICdtYWlu JzoKY29uZnRlc3QuYzoyMzY6MjE6IHdhcm5pbmc6IHBhc3NpbmcgYXJndW1lbnQgMSBvZiAn cHRocmVhZF9zZXRuYW1lX25wJyBtYWtlcyBpbnRlZ2VyIGZyb20gcG9pbnRlciB3aXRob3V0 IGEgY2FzdCBbLVdpbnQtY29udmVyc2lvbl0KICAyMzYgfCBwdGhyZWFkX3NldG5hbWVfbnAg KCJhIik7CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICBefn4KICAgICAgfCAgICAgICAg ICAgICAgICAgICAgIHwKICAgICAgfCAgICAgICAgICAgICAgICAgICAgIGNoYXIgKgpJbiBm aWxlIGluY2x1ZGVkIGZyb20gY29uZnRlc3QuYzoyMzI6Ci91c3IvaW5jbHVkZS9wdGhyZWFk Lmg6NDYzOjQyOiBub3RlOiBleHBlY3RlZCAncHRocmVhZF90JyB7YWthICdsb25nIHVuc2ln bmVkIGludCd9IGJ1dCBhcmd1bWVudCBpcyBvZiB0eXBlICdjaGFyIConCiAgNDYzIHwgZXh0 ZXJuIGludCBwdGhyZWFkX3NldG5hbWVfbnAgKHB0aHJlYWRfdCBfX3RhcmdldF90aHJlYWQs IGNvbnN0IGNoYXIgKl9fbmFtZSkKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgfn5+fn5+fn5+fl5+fn5+fn5+fn5+fn5+fgpjb25mdGVzdC5jOjIzNjoxOiBlcnJv cjogdG9vIGZldyBhcmd1bWVudHMgdG8gZnVuY3Rpb24gJ3B0aHJlYWRfc2V0bmFtZV9ucCcK ICAyMzYgfCBwdGhyZWFkX3NldG5hbWVfbnAgKCJhIik7CiAgICAgIHwgXn5+fn5+fn5+fn5+ fn5+fn5+Ci91c3IvaW5jbHVkZS9wdGhyZWFkLmg6NDYzOjEyOiBub3RlOiBkZWNsYXJlZCBo ZXJlCiAgNDYzIHwgZXh0ZXJuIGludCBwdGhyZWFkX3NldG5hbWVfbnAgKHB0aHJlYWRfdCBf X3RhcmdldF90aHJlYWQsIGNvbnN0IGNoYXIgKl9fbmFtZSkKICAgICAgfCAgICAgICAgICAg IF5+fn5+fn5+fn5+fn5+fn5+fgpjb25maWd1cmU6MjIyNTY6ICQ/ID0gMQpjb25maWd1cmU6 IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNL QUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3Mi CnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdF X1NUUklORyAiR05VIEVtYWNzIDMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9S VCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHBz Oi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgSEFWRV9QRFVNUEVS IDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEK fCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEK fCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0gg MQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8 ICNkZWZpbmUgSEFWRV9MSU5VWF9GU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNO QU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAx CnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9MU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5l IEhBVkVfU0FOSVRJWkVSX0FTQU5fSU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5J VElaRVJfQ09NTU9OX0lOVEVSRkFDRV9ERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09D S0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BU SFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfRElS RU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RE SU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVkZTX0ggMQp8ICNkZWZpbmUgSEFWRV9H RVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19DREVGU19IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX0lFRUU3NTRfSCAxCnwgI2RlZmluZSBIQVZF X0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhB VkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JBTkRPTV9IIDEKfCAjZGVmaW5l IFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFS V0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9IUFVY X0FMVF9YT1BFTl9TT0NLRVRfQVBJIDEKfCAjZGVmaW5lIF9ORVRCU0RfU09VUkNFIDEKfCAj ZGVmaW5lIF9PUEVOQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1B TlRJQ1MgMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0FUVFJJQlNfRVhUX18g MQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0JGUF9FWFRfXyAxCnwgI2RlZmlu ZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfREZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19X QU5UX0lFQ182MDU1OV9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlf RlVOQ1NfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X1RZUEVTX0VY VF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0xJQl9FWFQyX18gMQp8ICNkZWZpbmUgX19T VERDX1dBTlRfTUFUSF9TUEVDX0ZVTkNTX18gMQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0Ug MQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgR0NDX0xJTlQgMQp8ICNk ZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAjZGVmaW5lIEhBVkVfU1lTX1NPVU5E Q0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2RlZmluZSBIQVZFX1NPVU5EIDEK fCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfQUREUl9OT19SQU5ET01JWkUgMQp8ICNkZWZp bmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZU0lORk9fVU5JVCAx CnwgI2RlZmluZSBIQVZFX1RFUk1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8 ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZFX0lGQUREUlNfSCAxCnwg I2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9T VFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9J RlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJPQURBRERS IDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERSIDEKfCAjZGVmaW5lIEhB VkVfU0JSSyAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVf Rk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEK fCAjZGVmaW5lIEhBVkVfQ0FOT05JQ0FMSVpFX0ZJTEVfTkFNRSAxCnwgI2RlZmluZSBIQVZF X1JFQUxQQVRIIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hN T0RBVCAxCnwgI2RlZmluZSBIQVZFX0xDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEK fCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRBVCAxCnwg I2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAj ZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAx CnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfSVNCTEFOSyAxCnwg I2RlZmluZSBIQVZFX0lTV0NUWVBFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEKfCAj ZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEKfCAj ZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBTWVNURU1fTUFMTE9DIDEK fCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQUQgMQp8ICNkZWZp bmUgVEhSRUFEU19FTkFCTEVEIDEKfCAjZGVmaW5lIEhBVkVfWEtCIDEKfCAjZGVmaW5lIEhB VkVfWEtCUkVGUkVTSEtFWUJPQVJETUFQUElORyAxCnwgI2RlZmluZSBIQVZFX1hLQkZSRUVO QU1FUyAxCnwgI2RlZmluZSBIQVZFX1hSTVNFVERBVEFCQVNFIDEKfCAjZGVmaW5lIEhBVkVf WFNDUkVFTlJFU09VUkNFU1RSSU5HIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTk5VTUJFUk9G U0NSRUVOIDEKfCAjZGVmaW5lIEhBVkVfWERJU1BMQVlDRUxMUyAxCnwgI2RlZmluZSBIQVZF X1hERVNUUk9ZU1VCV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gxMVI2IDEKfCAjZGVmaW5l IEhBVkVfWF9JMThOIDEKfCAjZGVmaW5lIEhBVkVfWElDQ0FMTEJBQ0tfQ0FMTEJBQ0sgMQp8 ICNkZWZpbmUgSEFWRV9YMTFSNl9YSU0gMQp8ICNkZWZpbmUgSEFWRV9SU1ZHIDEKfCAjZGVm aW5lIEhBVkVfV0VCUCAxCnwgI2RlZmluZSBIQVZFX1NRTElURTMgMQp8ICNkZWZpbmUgSEFW RV9TUUxJVEUzX0xPQURfRVhURU5TSU9OIDEKfCAjZGVmaW5lIEhBVkVfR0VUQUREUklORk9f QSAxCnwgI2RlZmluZSBIQVZFX0dUSzMgMQp8ICNkZWZpbmUgR0RLX0RJU0FCTEVfREVQUkVD QVRJT05fV0FSTklOR1MgMQp8ICNkZWZpbmUgR0xJQl9ESVNBQkxFX0RFUFJFQ0FUSU9OX1dB Uk5JTkdTIDEKfCAjZGVmaW5lIFVTRV9HVEsgMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfVFJJ TSAxCnwgI2RlZmluZSBIQVZFX0RCVVMgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1dBVENIX0dF VF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19UWVBFX0lTX1ZBTElEIDEKfCAjZGVm aW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNf VkFMSURBVEVfUEFUSCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfSU5URVJGQUNF IDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIgMQp8ICNkZWZpbmUgSEFW RV9HU0VUVElOR1MgMQp8ICNkZWZpbmUgSEFWRV9MSUJTRUxJTlVYIDEKfCAjZGVmaW5lIEhB VkVfR05VVExTIDEKfCAjZGVmaW5lIEhBVkVfTElCU1lTVEVNRCAxCnwgI2RlZmluZSBIQVZF X0pTT04gMQp8ICNkZWZpbmUgSEFWRV9JTk9USUZZIDEKfCAjZGVmaW5lIFVTRV9GSUxFX05P VElGWSAxCnwgI2RlZmluZSBVU0VfVE9PTEtJVF9TQ1JPTExfQkFSUyAxCnwgI2RlZmluZSBI QVZFX1hJTSAxCnwgI2RlZmluZSBVU0VfWElNIDEKfCAjZGVmaW5lIEhBVkVfWFJFTkRFUiAx CnwgI2RlZmluZSBVU0VfQ0FJUk9fWENCIDEKfCAjZGVmaW5lIFVTRV9DQUlSTyAxCnwgI2Rl ZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAjZGVmaW5lIEhBVkVfRlRfRkFDRV9HRVRDSEFSVkFS SUFOVElOREVYIDEKfCAjZGVmaW5lIEhBVkVfTElCT1RGIDEKfCAjZGVmaW5lIEhBVkVfT1RG X0dFVF9WQVJJQVRJT05fR0xZUEhTIDEKfCAjZGVmaW5lIEhBVkVfTTE3Tl9GTFQgMQp8ICNk ZWZpbmUgSEFWRV9IQVJGQlVaWiAxCnwgI2RlZmluZSBVU0VfWENCIDEKfCAjZGVmaW5lIEhB VkVfWFBNIDEKfCAjZGVmaW5lIEhBVkVfSlBFRyAxCnwgI2RlZmluZSBIQVZFX0xDTVMyIDEK fCAjZGVmaW5lIEhBVkVfWkxJQiAxCnwgI2RlZmluZSBEWU5BTUlDX0xJQl9TVUZGSVggIi5z byIKfCAjZGVmaW5lIERZTkFNSUNfTElCX1NFQ09OREFSWV9TVUZGSVggIiIKfCAjZGVmaW5l IEhBVkVfRExBRERSIDEKfCAjZGVmaW5lIEhBVkVfTU9EVUxFUyAxCnwgI2RlZmluZSBNT0RV TEVTX1NVRkZJWCAiLnNvIgp8ICNkZWZpbmUgTkFUSVZFX0VMSVNQX1NVRkZJWCAiLmVsbiIK fCAjZGVmaW5lIEhBVkVfUE5HIDEKfCAjZGVmaW5lIEhBVkVfVElGRiAxCnwgI2RlZmluZSBI QVZFX0dJRiAxCnwgI2RlZmluZSBIQVZFX0dQTSAxCnwgI2RlZmluZSBIQVZFX1hfU00gMQp8 ICNkZWZpbmUgSEFWRV9YUkFORFIgMQp8ICNkZWZpbmUgSEFWRV9YSU5FUkFNQSAxCnwgI2Rl ZmluZSBIQVZFX1hGSVhFUyAxCnwgI2RlZmluZSBIQVZFX1hJTlBVVDIgMQp8ICNkZWZpbmUg SEFWRV9YSVNDUk9MTENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWElUT1VDSENM QVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWElCQVJSSUVSUkVMRUFTRVBPSU5URVJJ TkZPX0RFVklDRUlEIDEKfCAjZGVmaW5lIEhBVkVfWElHRVNUVVJFQ0xBU1NJTkZPX1RZUEUg MQp8ICNkZWZpbmUgSEFWRV9YU1lOQyAxCnwgI2RlZmluZSBIQVZFX1hTWU5DVFJJR0dFUkZF TkNFIDEKfCAjZGVmaW5lIEhBVkVfWERCRSAxCnwgI2RlZmluZSBIQVZFX1hDQl9TSEFQRSAx CnwgI2RlZmluZSBIQVZFX1hTSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hDT01QT1NJVEUgMQp8 ICNkZWZpbmUgSEFWRV9MSUJYTUwyIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU0VDQ09NUF9I IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9GSUxURVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBI QVZFX0xJTlVYX0ZJTFRFUl9IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX1NFVF9N T0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9GSUxURVJfRkxBR19U U1lOQyAxCnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA4CnwgI2RlZmluZSBIQVZFX0FDQ0VQVDQg MQp8ICNkZWZpbmUgSEFWRV9GQ0hESVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAx CnwgI2RlZmluZSBIQVZFX0dFVFJVU0FHRSAxCnwgI2RlZmluZSBIQVZFX0dFVF9DVVJSRU5U X0RJUl9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfTFJBTkQ0OCAxCnwgI2RlZmluZSBIQVZFX1JB TkRPTSAxCnwgI2RlZmluZSBIQVZFX1JJTlQgMQp8ICNkZWZpbmUgSEFWRV9UUlVOQyAxCnwg I2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAj ZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfTkVXTE9DQUxFIDEKfCAj ZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAj ZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sg MQp8ICNkZWZpbmUgSEFWRV9TVFJTSUdOQUwgMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIg MQp8ICNkZWZpbmUgSEFWRV9TRU5EVE8gMQp8ICNkZWZpbmUgSEFWRV9SRUNWRlJPTSAxCnwg I2RlZmluZSBIQVZFX0dFVFNPQ0tOQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUSUZBRERSUyAx CnwgI2RlZmluZSBIQVZFX0ZSRUVJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfR0FJX1NUUkVS Uk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEK fCAjZGVmaW5lIEhBVkVfRU5EUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUkVOVCAxCnwg I2RlZmluZSBIQVZFX0VOREdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfUkVOQU1FQVQyIDEKfCAj ZGVmaW5lIEhBVkVfQ0ZNQUtFUkFXIDEKfCAjZGVmaW5lIEhBVkVfQ0ZTRVRTUEVFRCAxCnwg I2RlZmluZSBIQVZFX19fRVhFQ1VUQUJMRV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0xPRzIg MQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NFVE5BTUVfTlAgMQp8IC8qIGVuZCBjb25mZGVm cy5oLiAgKi8KfCAjaW5jbHVkZSA8cHRocmVhZC5oPgp8IGludAp8IG1haW4gKHZvaWQpCnwg ewp8IHB0aHJlYWRfc2V0bmFtZV9ucCAoImEiKTsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0K Y29uZmlndXJlOjIyMjY0OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToyMjI3MTogY2hlY2tpbmcg d2hldGhlciBwdGhyZWFkX3NldG5hbWVfbnAgdGFrZXMgdGhyZWUgYXJndW1lbnRzCmNvbmZp Z3VyZToyMjI4ODogZ2NjIC1jICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lz dGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGli cG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xp Yi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lz dGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAg LWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVp ZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9saWJwbmcxNiAgICAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzogSW4gZnVuY3Rpb24g J21haW4nOgpjb25mdGVzdC5jOjIzNjoxOiBlcnJvcjogdG9vIG1hbnkgYXJndW1lbnRzIHRv IGZ1bmN0aW9uICdwdGhyZWFkX3NldG5hbWVfbnAnCiAgMjM2IHwgcHRocmVhZF9zZXRuYW1l X25wICgwLCAiJXMiLCAiYSIpOwogICAgICB8IF5+fn5+fn5+fn5+fn5+fn5+fgpJbiBmaWxl IGluY2x1ZGVkIGZyb20gY29uZnRlc3QuYzoyMzI6Ci91c3IvaW5jbHVkZS9wdGhyZWFkLmg6 NDYzOjEyOiBub3RlOiBkZWNsYXJlZCBoZXJlCiAgNDYzIHwgZXh0ZXJuIGludCBwdGhyZWFk X3NldG5hbWVfbnAgKHB0aHJlYWRfdCBfX3RhcmdldF90aHJlYWQsIGNvbnN0IGNoYXIgKl9f bmFtZSkKICAgICAgfCAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fgpjb25maWd1cmU6 MjIyODg6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25m ZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5l IFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMw LjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDMwLjAuNTAiCnwg I2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNk ZWZpbmUgUEFDS0FHRV9VUkwgImh0dHBzOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3Mv Igp8ICNkZWZpbmUgSEFWRV9QRFVNUEVSIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fSCAxCnwg I2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNk ZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwg I2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GU19IIDEKfCAj ZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEK fCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAx CnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAx CnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9MU0FO X0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0FTQU5fSU5URVJGQUNF X0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQ09NTU9OX0lOVEVSRkFDRV9ERUZTX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFS QU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19V Tl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5G T19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf VkZTX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19D REVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX0lF RUU3NTRfSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1JBTkRPTV9IIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBfQUxM X1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVf U09VUkNFIDEKfCAjZGVmaW5lIF9IUFVYX0FMVF9YT1BFTl9TT0NLRVRfQVBJIDEKfCAjZGVm aW5lIF9ORVRCU0RfU09VUkNFIDEKfCAjZGVmaW5lIF9PUEVOQlNEX1NPVVJDRSAxCnwgI2Rl ZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX19TVERDX1dBTlRf SUVDXzYwNTU5X0FUVFJJQlNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYw NTU5X0JGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfREZQX0VY VF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9FWFRfXyAxCnwgI2RlZmlu ZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRlVOQ1NfRVhUX18gMQp8ICNkZWZpbmUgX19TVERD X1dBTlRfSUVDXzYwNTU5X1RZUEVTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0xJ Ql9FWFQyX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfTUFUSF9TUEVDX0ZVTkNTX18gMQp8 ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8 ICNkZWZpbmUgR0NDX0xJTlQgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIK fCAjZGVmaW5lIEhBVkVfU1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAx CnwgI2RlZmluZSBIQVZFX1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfQURE Ul9OT19SQU5ET01JWkUgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVm aW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwgI2Rl ZmluZSBIQVZFX0lGQUREUlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJf RkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwgI2Rl ZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NU UlVDVF9JRlJFUV9JRlJfQlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVR X0lGUl9BRERSIDEKfCAjZGVmaW5lIEhBVkVfU0JSSyAxCnwgI2RlZmluZSBIQVZFX0dFVFBB R0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEK fCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfQ0FOT05JQ0FMSVpFX0ZJ TEVfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1JFQUxQQVRIIDEKfCAjZGVmaW5lIEhBVkVfTFNU QVQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0RBVCAxCnwgI2RlZmluZSBIQVZFX0xDSE1PRCAx CnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEKfCAj ZGVmaW5lIEhBVkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5l IEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2RlZmlu ZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAj ZGVmaW5lIEhBVkVfSVNCTEFOSyAxCnwgI2RlZmluZSBIQVZFX0lTV0NUWVBFIDEKfCAjZGVm aW5lIEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmlu ZSBIQVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwg I2RlZmluZSBTWVNURU1fTUFMTE9DIDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2RlZmlu ZSBIQVZFX1BUSFJFQUQgMQp8ICNkZWZpbmUgVEhSRUFEU19FTkFCTEVEIDEKfCAjZGVmaW5l IEhBVkVfWEtCIDEKfCAjZGVmaW5lIEhBVkVfWEtCUkVGUkVTSEtFWUJPQVJETUFQUElORyAx CnwgI2RlZmluZSBIQVZFX1hLQkZSRUVOQU1FUyAxCnwgI2RlZmluZSBIQVZFX1hSTVNFVERB VEFCQVNFIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RSSU5HIDEKfCAjZGVm aW5lIEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhBVkVfWERJU1BM QVlDRUxMUyAxCnwgI2RlZmluZSBIQVZFX1hERVNUUk9ZU1VCV0lORE9XUyAxCnwgI2RlZmlu ZSBIQVZFX1gxMVI2IDEKfCAjZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVmaW5lIEhBVkVf WElDQ0FMTEJBQ0tfQ0FMTEJBQ0sgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9YSU0gMQp8ICNk ZWZpbmUgSEFWRV9SU1ZHIDEKfCAjZGVmaW5lIEhBVkVfV0VCUCAxCnwgI2RlZmluZSBIQVZF X1NRTElURTMgMQp8ICNkZWZpbmUgSEFWRV9TUUxJVEUzX0xPQURfRVhURU5TSU9OIDEKfCAj ZGVmaW5lIEhBVkVfR0VUQUREUklORk9fQSAxCnwgI2RlZmluZSBIQVZFX0dUSzMgMQp8ICNk ZWZpbmUgR0RLX0RJU0FCTEVfREVQUkVDQVRJT05fV0FSTklOR1MgMQp8ICNkZWZpbmUgR0xJ Ql9ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIFVTRV9HVEsgMQp8 ICNkZWZpbmUgSEFWRV9NQUxMT0NfVFJJTSAxCnwgI2RlZmluZSBIQVZFX0RCVVMgMQp8ICNk ZWZpbmUgSEFWRV9EQlVTX1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVfREJV U19UWVBFX0lTX1ZBTElEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFN RSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmluZSBIQVZF X0RCVVNfVkFMSURBVEVfSU5URVJGQUNFIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFU RV9NRU1CRVIgMQp8ICNkZWZpbmUgSEFWRV9HU0VUVElOR1MgMQp8ICNkZWZpbmUgSEFWRV9M SUJTRUxJTlVYIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhBVkVfTElC U1lTVEVNRCAxCnwgI2RlZmluZSBIQVZFX0pTT04gMQp8ICNkZWZpbmUgSEFWRV9JTk9USUZZ IDEKfCAjZGVmaW5lIFVTRV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBVU0VfVE9PTEtJVF9T Q1JPTExfQkFSUyAxCnwgI2RlZmluZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBVU0VfWElNIDEK fCAjZGVmaW5lIEhBVkVfWFJFTkRFUiAxCnwgI2RlZmluZSBVU0VfQ0FJUk9fWENCIDEKfCAj ZGVmaW5lIFVTRV9DQUlSTyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAjZGVmaW5l IEhBVkVfRlRfRkFDRV9HRVRDSEFSVkFSSUFOVElOREVYIDEKfCAjZGVmaW5lIEhBVkVfTElC T1RGIDEKfCAjZGVmaW5lIEhBVkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTIDEKfCAjZGVm aW5lIEhBVkVfTTE3Tl9GTFQgMQp8ICNkZWZpbmUgSEFWRV9IQVJGQlVaWiAxCnwgI2RlZmlu ZSBVU0VfWENCIDEKfCAjZGVmaW5lIEhBVkVfWFBNIDEKfCAjZGVmaW5lIEhBVkVfSlBFRyAx CnwgI2RlZmluZSBIQVZFX0xDTVMyIDEKfCAjZGVmaW5lIEhBVkVfWkxJQiAxCnwgI2RlZmlu ZSBEWU5BTUlDX0xJQl9TVUZGSVggIi5zbyIKfCAjZGVmaW5lIERZTkFNSUNfTElCX1NFQ09O REFSWV9TVUZGSVggIiIKfCAjZGVmaW5lIEhBVkVfRExBRERSIDEKfCAjZGVmaW5lIEhBVkVf TU9EVUxFUyAxCnwgI2RlZmluZSBNT0RVTEVTX1NVRkZJWCAiLnNvIgp8ICNkZWZpbmUgTkFU SVZFX0VMSVNQX1NVRkZJWCAiLmVsbiIKfCAjZGVmaW5lIEhBVkVfUE5HIDEKfCAjZGVmaW5l IEhBVkVfVElGRiAxCnwgI2RlZmluZSBIQVZFX0dJRiAxCnwgI2RlZmluZSBIQVZFX0dQTSAx CnwgI2RlZmluZSBIQVZFX1hfU00gMQp8ICNkZWZpbmUgSEFWRV9YUkFORFIgMQp8ICNkZWZp bmUgSEFWRV9YSU5FUkFNQSAxCnwgI2RlZmluZSBIQVZFX1hGSVhFUyAxCnwgI2RlZmluZSBI QVZFX1hJTlBVVDIgMQp8ICNkZWZpbmUgSEFWRV9YSVNDUk9MTENMQVNTSU5GT19UWVBFIDEK fCAjZGVmaW5lIEhBVkVfWElUT1VDSENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVf WElCQVJSSUVSUkVMRUFTRVBPSU5URVJJTkZPX0RFVklDRUlEIDEKfCAjZGVmaW5lIEhBVkVf WElHRVNUVVJFQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQyAxCnwgI2Rl ZmluZSBIQVZFX1hTWU5DVFJJR0dFUkZFTkNFIDEKfCAjZGVmaW5lIEhBVkVfWERCRSAxCnwg I2RlZmluZSBIQVZFX1hDQl9TSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hTSEFQRSAxCnwgI2Rl ZmluZSBIQVZFX1hDT01QT1NJVEUgMQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwyIDEKfCAjZGVm aW5lIEhBVkVfTElOVVhfU0VDQ09NUF9IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01Q X1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9GSUxURVJf RkxBR19UU1lOQyAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZJTFRFUl9IIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9TRUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfU0VDQ09NUF9GSUxURVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA4 CnwgI2RlZmluZSBIQVZFX0FDQ0VQVDQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hESVIgMQp8ICNk ZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJVU0FHRSAxCnwg I2RlZmluZSBIQVZFX0dFVF9DVVJSRU5UX0RJUl9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfTFJB TkQ0OCAxCnwgI2RlZmluZSBIQVZFX1JBTkRPTSAxCnwgI2RlZmluZSBIQVZFX1JJTlQgMQp8 ICNkZWZpbmUgSEFWRV9UUlVOQyAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmlu ZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVm aW5lIEhBVkVfTkVXTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVm aW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZp bmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJTSUdOQUwgMQp8 ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9TRU5EVE8gMQp8ICNk ZWZpbmUgSEFWRV9SRUNWRlJPTSAxCnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tOQU1FIDEKfCAj ZGVmaW5lIEhBVkVfR0VUSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVJRkFERFJTIDEK fCAjZGVmaW5lIEhBVkVfR0FJX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAxCnwg I2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EUFdFTlQgMQp8ICNk ZWZpbmUgSEFWRV9HRVRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0VOREdSRU5UIDEKfCAjZGVm aW5lIEhBVkVfUkVOQU1FQVQyIDEKfCAjZGVmaW5lIEhBVkVfQ0ZNQUtFUkFXIDEKfCAjZGVm aW5lIEhBVkVfQ0ZTRVRTUEVFRCAxCnwgI2RlZmluZSBIQVZFX19fRVhFQ1VUQUJMRV9TVEFS VCAxCnwgI2RlZmluZSBIQVZFX0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NFVE5B TUVfTlAgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8cHRocmVhZC5o Pgp8IGludAp8IG1haW4gKHZvaWQpCnwgewp8IHB0aHJlYWRfc2V0bmFtZV9ucCAoMCwgIiVz IiwgImEiKTsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjIyMjk2OiByZXN1 bHQ6IG5vCmNvbmZpZ3VyZToyMjMxMDogY2hlY2tpbmcgZm9yIGFsaWduZWRfYWxsb2MKY29u ZmlndXJlOjIyMzEwOiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGst cGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lk IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xp Yi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNs dWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lz dGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGli cG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4w L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxzcWxpdGUzIC1sWDEx ICAgLWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNiLXJlbmRlciA+JjUgCmNvbmZ0ZXN0LmM6 MjQ4OjY6IHdhcm5pbmc6IGNvbmZsaWN0aW5nIHR5cGVzIGZvciBidWlsdC1pbiBmdW5jdGlv biAnYWxpZ25lZF9hbGxvYyc7IGV4cGVjdGVkICd2b2lkICoobG9uZyB1bnNpZ25lZCBpbnQs ICBsb25nIHVuc2lnbmVkIGludCknIFstV2J1aWx0aW4tZGVjbGFyYXRpb24tbWlzbWF0Y2hd CiAgMjQ4IHwgY2hhciBhbGlnbmVkX2FsbG9jICgpOwogICAgICB8ICAgICAgXn5+fn5+fn5+ fn5+fgpjb25mdGVzdC5jOjI0MDoxOiBub3RlOiAnYWxpZ25lZF9hbGxvYycgaXMgZGVjbGFy ZWQgaW4gaGVhZGVyICc8c3RkbGliLmg+JwogIDIzOSB8ICNpbmNsdWRlIDxsaW1pdHMuaD4K ICAyNDAgfCAjdW5kZWYgYWxpZ25lZF9hbGxvYwpjb25maWd1cmU6MjIzMTA6ICQ/ID0gMApj b25maWd1cmU6MjIzMTA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjMyMDogY2hlY2tpbmcg d2hldGhlciBhbGlnbmVkX2FsbG9jIGlzIGRlY2xhcmVkCmNvbmZpZ3VyZToyMjMyMDogZ2Nj IC1jICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIu MCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50 IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fp cm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4 Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv cGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgt Z251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1p c3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlw ZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9s aWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAg IGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyMjMyMDogJD8gPSAwCmNvbmZpZ3VyZToyMjMy MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIyMzQ4OiBjaGVja2luZyBmb3IgcG9zaXhfbWFk dmlzZQpjb25maWd1cmU6MjIzNDg6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVh ZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgt Z251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWIt Mi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0y LjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRl IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv dXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUv Z2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAtbHNxbGl0 ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29u ZmlndXJlOjIyMzQ4OiAkPyA9IDAKY29uZmlndXJlOjIyMzQ4OiByZXN1bHQ6IHllcwpjb25m aWd1cmU6MjIzNTY6IGNoZWNraW5nIGZvciBfX2J1aWx0aW5fZnJhbWVfYWRkcmVzcwpjb25m aWd1cmU6MjIzNzM6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1w aXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lz dGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGli LTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1 ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0 ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJw bmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAv aW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAtbHNxbGl0ZTMgLWxYMTEg ICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJlOjIy MzczOiAkPyA9IDAKY29uZmlndXJlOjIyMzgyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjIz ODk6IGNoZWNraW5nIGZvciBfX2J1aWx0aW5fdW53aW5kX2luaXQKY29uZmlndXJlOjIyNDA2 OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0 ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJw bmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv Y2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGli L3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAt aXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlk IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxzcWxpdGUzIC1sWDExICAgLWxjYWlybyAt bGNhaXJvIC1seGNiIC1seGNiLXJlbmRlciA+JjUgCmNvbmZpZ3VyZToyMjQwNjogJD8gPSAw CmNvbmZpZ3VyZToyMjQxNTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIyNDI2OiBjaGVja2lu ZyBmb3IgX0xBUkdFRklMRV9TT1VSQ0UgdmFsdWUgbmVlZGVkIGZvciBsYXJnZSBmaWxlcwpj b25maWd1cmU6MjI0NDY6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dk ay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1p c3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxr aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9n bGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2lu Y2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5j bHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlz eXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9s aWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0y LjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAtbHNxbGl0ZTMgLWxY MTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJl OjIyNDQ2OiAkPyA9IDAKY29uZmlndXJlOjIyNDc2OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToy MjQ5NzogY2hlY2tpbmcgZm9yIGdyYW50cHQKY29uZmlndXJlOjIyNDk3OiBnY2MgLW8gY29u ZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmct Mi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91 bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9j YWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIv eDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51 eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0 eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNy L2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAg ICAgIGNvbmZ0ZXN0LmMgLWxzcWxpdGUzIC1sWDExICAgLWxjYWlybyAtbGNhaXJvIC1seGNi IC1seGNiLXJlbmRlciA+JjUgCmNvbmZpZ3VyZToyMjQ5NzogJD8gPSAwCmNvbmZpZ3VyZToy MjQ5NzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIyNTA2OiBjaGVja2luZyBmb3IgZ2V0cHQK Y29uZmlndXJlOjIyNTA2OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9n ZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Js a2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv Z2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9p bmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1p c3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv bGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWIt Mi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxzcWxpdGUzIC1s WDExICAgLWxjYWlybyAtbGNhaXJvIC1seGNiIC1seGNiLXJlbmRlciA+JjUgCmNvbmZpZ3Vy ZToyMjUwNjogJD8gPSAwCmNvbmZpZ3VyZToyMjUwNjogcmVzdWx0OiB5ZXMKY29uZmlndXJl OjIyNTEyOiBjaGVja2luZyBmb3IgcG9zaXhfb3BlbnB0CmNvbmZpZ3VyZToyMjUxMjogZ2Nj IC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9s aWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91 c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJv IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZf NjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3Bp eG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0 ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJw bmcxNiAgICAgICBjb25mdGVzdC5jIC1sc3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWly byAtbHhjYiAtbHhjYi1yZW5kZXIgPiY1IApjb25maWd1cmU6MjI1MTI6ICQ/ID0gMApjb25m aWd1cmU6MjI1MTI6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjUyNjogY2hlY2tpbmcgZm9y IGxpYnJhcnkgY29udGFpbmluZyB0cHV0cwpjb25maWd1cmU6MjI1ODA6IGdjYyAtbyBjb25m dGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0y LjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3Vu dCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Nh aXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94 ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVt IC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4 LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5 cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3Iv bGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAg ICAgY29uZnRlc3QuYyAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2Ig LWx4Y2ItcmVuZGVyID4mNSAKL3Vzci9iaW4vbGQ6IC90bXAvY2NIYnhqalUubzogaW4gZnVu Y3Rpb24gYG1haW4nOgovYXBwL2VtYWNzL2NvbmZ0ZXN0LmM6MjQ2OiB1bmRlZmluZWQgcmVm ZXJlbmNlIHRvIGB0cHV0cycKY29sbGVjdDI6IGVycm9yOiBsZCByZXR1cm5lZCAxIGV4aXQg c3RhdHVzCmNvbmZpZ3VyZToyMjU4MDogJD8gPSAxCmNvbmZpZ3VyZTogcHJvZ3JhbSBleGl0 ZWQgd2l0aCBzdGF0dXMgMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBj 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 IEhBVkVfUE9TSVhfT1BFTlBUIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgCnwgICBl eHRlcm4gdm9pZCB0cHV0cyAoY29uc3QgY2hhciAqLCBpbnQsIGludCAoKikoaW50KSk7Cnwg ICAgICAgIGludCBtYWluIChpbnQgYXJnYywgY2hhciAqKmFyZ3YpCnwgICAgICAgIHsKfCAJ ICBpZiAoYXJnYyA9PSAxMDAwMCkKfCAJICAgIHRwdXRzIChhcmd2WzBdLCAwLCAwKTsKfCAJ ICByZXR1cm4gMDsKfCAgICAgICAgfQp8IApjb25maWd1cmU6MjI1ODA6IGdjYyAtbyBjb25m dGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0y LjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3Vu dCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Nh aXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94 ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVt IC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4 LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5 cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3Iv bGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAg ICAgY29uZnRlc3QuYyAtbHRpbmZvIC1sc3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWly byAtbHhjYiAtbHhjYi1yZW5kZXIgPiY1IApjb25maWd1cmU6MjI1ODA6ICQ/ID0gMApjb25m aWd1cmU6MjI1ODA6IC4vY29uZnRlc3QKY29uZmlndXJlOjIyNTgwOiAkPyA9IDAKY29uZmln dXJlOjIyNTk3OiByZXN1bHQ6IC1sdGluZm8KY29uZmlndXJlOjIyNzAzOiBjaGVja2luZyB3 aGV0aGVyIC1sdGluZm8gbGlicmFyeSBkZWZpbmVzIEJDCmNvbmZpZ3VyZToyMjcyMjogZ2Nj IC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9s aWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91 c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJv IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZf NjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3Bp eG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0 ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJw bmcxNiAgICAgICBjb25mdGVzdC5jIC1sc3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWly byAtbHhjYiAtbHhjYi1yZW5kZXIgLWx0aW5mbyA+JjUgCmNvbmZpZ3VyZToyMjcyMjogJD8g PSAwCmNvbmZpZ3VyZToyMjczMjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIyNzQ5OiBjaGVj a2luZyBmb3IgdGltZXJmZCBpbnRlcmZhY2UKY29uZmlndXJlOjIyNzY5OiBnY2MgLWMgIC1n MyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv eDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxp bnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4t MSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJl ZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xp Yi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJv IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZf NjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3Bp eG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICBjb25mdGVz dC5jID4mNQpjb25maWd1cmU6MjI3Njk6ICQ/ID0gMApjb25maWd1cmU6MjI3Nzc6IHJlc3Vs dDogeWVzCmNvbmZpZ3VyZToyMjc4NjogY2hlY2tpbmcgd2hldGhlciBzaWduYWxzIGNhbiBi ZSBoYW5kbGVkIG9uIGFsdGVybmF0ZSBzdGFjawpjb25maWd1cmU6MjI4MTE6IGdjYyAtYyAg LWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQt bGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1h bi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9m cmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3Iv aW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9n bGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fp cm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4 Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv cGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgIGNvbmZ0 ZXN0LmMgPiY1CmNvbmZpZ3VyZToyMjgxMTogJD8gPSAwCmNvbmZpZ3VyZToyMjgxOTogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjIzNDQ1OiBjaGVja2luZyBmb3IgdmFsZ3JpbmQvdmFsZ3Jp bmQuaApjb25maWd1cmU6MjM0NDU6IGdjYyAtYyAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1w aXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lz dGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGli LTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1 ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0 ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJw bmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAv aW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvbGlicG5nMTYgICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyMzQ0 NTogJD8gPSAwCmNvbmZpZ3VyZToyMzQ0NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIzNDUz OiBjaGVja2luZyBmb3Igc3RydWN0IHVuaXBhaXIudW5pY29kZQpjb25maWd1cmU6MjM0NTM6 IGdjYyAtYyAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2 Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJt b3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xp Yi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lz dGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxp bnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4t MSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJl ZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91 c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYg ICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyMzQ1MzogJD8gPSAwCmNvbmZpZ3VyZToy MzQ1MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIzNDY4OiBjaGVja2luZyBmb3IgcGlkX3QK Y29uZmlndXJlOjIzNDY4OiBnY2MgLWMgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVm LTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAg LWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVp ZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91 c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGli LTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1 ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2xpYnBuZzE2ICAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjM0Njg6ICQ/ ID0gMApjb25maWd1cmU6MjM0Njg6IGdjYyAtYyAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1w aXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lz dGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGli LTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1 ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0 ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJw bmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAv aW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvbGlicG5nMTYgICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6IElu IGZ1bmN0aW9uICdtYWluJzoKY29uZnRlc3QuYzoyNzg6MjA6IGVycm9yOiBleHBlY3RlZCBl eHByZXNzaW9uIGJlZm9yZSAnKScgdG9rZW4KICAyNzggfCBpZiAoc2l6ZW9mICgocGlkX3Qp KSkKICAgICAgfCAgICAgICAgICAgICAgICAgICAgXgpjb25maWd1cmU6MjM0Njg6ICQ/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 IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8c3RkZGVmLmg+CnwgI2lmZGVm IEhBVkVfU1RESU9fSAp8ICMgaW5jbHVkZSA8c3RkaW8uaD4KfCAjZW5kaWYKfCAjaWZkZWYg SEFWRV9TVERMSUJfSAp8ICMgaW5jbHVkZSA8c3RkbGliLmg+CnwgI2VuZGlmCnwgI2lmZGVm IEhBVkVfU1RSSU5HX0gKfCAjIGluY2x1ZGUgPHN0cmluZy5oPgp8ICNlbmRpZgp8ICNpZmRl ZiBIQVZFX0lOVFRZUEVTX0gKfCAjIGluY2x1ZGUgPGludHR5cGVzLmg+CnwgI2VuZGlmCnwg I2lmZGVmIEhBVkVfU1RESU5UX0gKfCAjIGluY2x1ZGUgPHN0ZGludC5oPgp8ICNlbmRpZgp8 ICNpZmRlZiBIQVZFX1NUUklOR1NfSAp8ICMgaW5jbHVkZSA8c3RyaW5ncy5oPgp8ICNlbmRp Zgp8ICNpZmRlZiBIQVZFX1NZU19UWVBFU19ICnwgIyBpbmNsdWRlIDxzeXMvdHlwZXMuaD4K fCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TWVNfU1RBVF9ICnwgIyBpbmNsdWRlIDxzeXMvc3Rh dC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1VOSVNURF9ICnwgIyBpbmNsdWRlIDx1bmlz dGQuaD4KfCAjZW5kaWYKfCAKfCBpbnQKfCBtYWluICh2b2lkKQp8IHsKfCBpZiAoc2l6ZW9m ICgocGlkX3QpKSkKfCAJICAgIHJldHVybiAwOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpj b25maWd1cmU6MjM0Njg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMzUxMDogY2hlY2tpbmcg Zm9yIHdvcmtpbmcgZm9yawpjb25maWd1cmU6MjM1MzQ6IGdjYyAtbyBjb25mdGVzdCAgLWcz IC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94 ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGlu dXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0x IC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVl dHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5j bHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGli LTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8g LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82 NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4 bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRl c3QuYyAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVu ZGVyID4mNSAKY29uZmlndXJlOjIzNTM0OiAkPyA9IDAKY29uZmlndXJlOjIzNTM0OiAuL2Nv bmZ0ZXN0CmNvbmZpZ3VyZToyMzUzNDogJD8gPSAwCmNvbmZpZ3VyZToyMzU0NTogcmVzdWx0 OiB5ZXMKY29uZmlndXJlOjIzNTY2OiBjaGVja2luZyBmb3Igd29ya2luZyB2Zm9yawpjb25m aWd1cmU6MjM2OTU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMzcyMTogY2hlY2tpbmcgZm9y IHNucHJpbnRmCmNvbmZpZ3VyZToyMzcyMTogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1w dGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1s aW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUv Z2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dl YnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9n bGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2lu Y2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5j bHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4 LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5 cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1s c3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhjYi1yZW5kZXIgPiY1 IApjb25mdGVzdC5jOjI2NDo2OiB3YXJuaW5nOiBjb25mbGljdGluZyB0eXBlcyBmb3IgYnVp bHQtaW4gZnVuY3Rpb24gJ3NucHJpbnRmJzsgZXhwZWN0ZWQgJ2ludChjaGFyICosIGxvbmcg dW5zaWduZWQgaW50LCAgY29uc3QgY2hhciAqLCAuLi4pJyBbLVdidWlsdGluLWRlY2xhcmF0 aW9uLW1pc21hdGNoXQogIDI2NCB8IGNoYXIgc25wcmludGYgKCk7CiAgICAgIHwgICAgICBe fn5+fn5+fgpjb25mdGVzdC5jOjI1NjoxOiBub3RlOiAnc25wcmludGYnIGlzIGRlY2xhcmVk IGluIGhlYWRlciAnPHN0ZGlvLmg+JwogIDI1NSB8ICNpbmNsdWRlIDxsaW1pdHMuaD4KICAy NTYgfCAjdW5kZWYgc25wcmludGYKY29uZmlndXJlOjIzNzIxOiAkPyA9IDAKY29uZmlndXJl OjIzNzIxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjM3Mjk6IGNoZWNraW5nIGZvciBzcGF3 bi5oCmNvbmZpZ3VyZToyMzcyOTogZ2NjIC1jICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBp eGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWIt Mi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVk ZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3Rl bSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBu ZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv Z2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9p bmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjIzNzI5 OiAkPyA9IDAKY29uZmlndXJlOjIzNzI5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjM3Mzc6 IGNoZWNraW5nIGZvciBwb3NpeF9zcGF3bgpjb25maWd1cmU6MjM3Mzc6IGdjYyAtbyBjb25m dGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0y LjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3Vu dCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Nh aXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94 ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVt IC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4 LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5 cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3Iv bGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAg ICAgY29uZnRlc3QuYyAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2Ig LWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJlOjIzNzM3OiAkPyA9IDAKY29uZmlndXJlOjIz NzM3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjM3NDM6IGNoZWNraW5nIGZvciBwb3NpeF9z cGF3bl9maWxlX2FjdGlvbnNfYWRkY2hkaXIKY29uZmlndXJlOjIzNzQzOiBnY2MgLW8gY29u ZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmct Mi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91 bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9j YWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIv eDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51 eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0 eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNy L2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAg ICAgIGNvbmZ0ZXN0LmMgLWxzcWxpdGUzIC1sWDExICAgLWxjYWlybyAtbGNhaXJvIC1seGNi IC1seGNiLXJlbmRlciA+JjUgCi91c3IvYmluL2xkOiAvdG1wL2Njc1l6RVkwLm86IGluIGZ1 bmN0aW9uIGBtYWluJzoKL2FwcC9lbWFjcy9jb25mdGVzdC5jOjI3ODogdW5kZWZpbmVkIHJl ZmVyZW5jZSB0byBgcG9zaXhfc3Bhd25fZmlsZV9hY3Rpb25zX2FkZGNoZGlyJwpjb2xsZWN0 MjogZXJyb3I6IGxkIHJldHVybmVkIDEgZXhpdCBzdGF0dXMKY29uZmlndXJlOjIzNzQzOiAk 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 V05fSCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOIDEKfCAvKiBlbmQgY29uZmRlZnMu aC4gICovCnwgLyogRGVmaW5lIHBvc2l4X3NwYXduX2ZpbGVfYWN0aW9uc19hZGRjaGRpciB0 byBhbiBpbm5vY3VvdXMgdmFyaWFudCwgaW4gY2FzZSA8bGltaXRzLmg+IGRlY2xhcmVzIHBv c2l4X3NwYXduX2ZpbGVfYWN0aW9uc19hZGRjaGRpci4KfCAgICBGb3IgZXhhbXBsZSwgSFAt VVggMTFpIDxsaW1pdHMuaD4gZGVjbGFyZXMgZ2V0dGltZW9mZGF5LiAgKi8KfCAjZGVmaW5l IHBvc2l4X3NwYXduX2ZpbGVfYWN0aW9uc19hZGRjaGRpciBpbm5vY3VvdXNfcG9zaXhfc3Bh d25fZmlsZV9hY3Rpb25zX2FkZGNoZGlyCnwgCnwgLyogU3lzdGVtIGhlYWRlciB0byBkZWZp bmUgX19zdHViIG1hY3JvcyBhbmQgaG9wZWZ1bGx5IGZldyBwcm90b3R5cGVzLAp8ICAgIHdo aWNoIGNhbiBjb25mbGljdCB3aXRoIGNoYXIgcG9zaXhfc3Bhd25fZmlsZV9hY3Rpb25zX2Fk ZGNoZGlyICgpOyBiZWxvdy4gICovCnwgCnwgI2luY2x1ZGUgPGxpbWl0cy5oPgp8ICN1bmRl ZiBwb3NpeF9zcGF3bl9maWxlX2FjdGlvbnNfYWRkY2hkaXIKfCAKfCAvKiBPdmVycmlkZSBh bnkgR0NDIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4KfCAgICBVc2Ug Y2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBHQ0MK fCAgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3Rp bGwgYXBwbHkuICAqLwp8ICNpZmRlZiBfX2NwbHVzcGx1cwp8IGV4dGVybiAiQyIKfCAjZW5k aWYKfCBjaGFyIHBvc2l4X3NwYXduX2ZpbGVfYWN0aW9uc19hZGRjaGRpciAoKTsKfCAvKiBU aGUgR05VIEMgbGlicmFyeSBkZWZpbmVzIHRoaXMgZm9yIGZ1bmN0aW9ucyB3aGljaCBpdCBp bXBsZW1lbnRzCnwgICAgIHRvIGFsd2F5cyBmYWlsIHdpdGggRU5PU1lTLiAgU29tZSBmdW5j dGlvbnMgYXJlIGFjdHVhbGx5IG5hbWVkCnwgICAgIHNvbWV0aGluZyBzdGFydGluZyB3aXRo IF9fIGFuZCB0aGUgbm9ybWFsIG5hbWUgaXMgYW4gYWxpYXMuICAqLwp8ICNpZiBkZWZpbmVk IF9fc3R1Yl9wb3NpeF9zcGF3bl9maWxlX2FjdGlvbnNfYWRkY2hkaXIgfHwgZGVmaW5lZCBf X3N0dWJfX19wb3NpeF9zcGF3bl9maWxlX2FjdGlvbnNfYWRkY2hkaXIKfCBjaG9rZSBtZQp8 ICNlbmRpZgp8IAp8IGludAp8IG1haW4gKHZvaWQpCnwgewp8IHJldHVybiBwb3NpeF9zcGF3 bl9maWxlX2FjdGlvbnNfYWRkY2hkaXIgKCk7CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNv bmZpZ3VyZToyMzc0MzogcmVzdWx0OiBubwpjb25maWd1cmU6MjM3NDk6IGNoZWNraW5nIGZv ciBwb3NpeF9zcGF3bl9maWxlX2FjdGlvbnNfYWRkY2hkaXJfbnAKY29uZmlndXJlOjIzNzQ5 OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0 ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJw bmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv Y2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGli L3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAt aXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlk IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxzcWxpdGUzIC1sWDExICAgLWxjYWlybyAt bGNhaXJvIC1seGNiIC1seGNiLXJlbmRlciA+JjUgCmNvbmZpZ3VyZToyMzc0OTogJD8gPSAw CmNvbmZpZ3VyZToyMzc0OTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIzNzU1OiBjaGVja2lu ZyBmb3IgcG9zaXhfc3Bhd25hdHRyX3NldGZsYWdzCmNvbmZpZ3VyZToyMzc1NTogZ2NjIC1v IGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJy c3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xp Ym1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3Iv bGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQt bGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1h bi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9m cmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0g L3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcx NiAgICAgICBjb25mdGVzdC5jIC1sc3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWlybyAt bHhjYiAtbHhjYi1yZW5kZXIgPiY1IApjb25maWd1cmU6MjM3NTU6ICQ/ID0gMApjb25maWd1 cmU6MjM3NTU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMzc2NjogY2hlY2tpbmcgd2hldGhl ciBQT1NJWF9TUEFXTl9TRVRTSUQgaXMgZGVjbGFyZWQKY29uZmlndXJlOjIzNzY2OiBnY2Mg LWMgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4w IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWly byAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2 XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9w aXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1n bnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBl MiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xp Yi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAg Y29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjIzNzY2OiAkPyA9IDAKY29uZmlndXJlOjIzNzY2 OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjM3ODE6IGNoZWNraW5nIHdoZXRoZXIgR0xpYiBp cyBsaW5rZWQgaW4KY29uZmlndXJlOjIzODA1OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIg LXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUveDg2XzY0 LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdu dS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUy IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv d2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAv aW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGlu dXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0x IC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVl dHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1wdGhyZWFkIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9ndGstMy4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9hdC1zcGkyLWF0 ay8yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2F0LXNwaS0yLjAgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2RidXMtMS4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZGJ1 cy0xLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ3RrLTMuMCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvZ2lvLXVuaXgtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvcGFuZ28tMS4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9o YXJmYnV6eiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGFuZ28tMS4wIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9mcmliaWRpIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9oYXJmYnV6eiAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvYXRrLTEuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlk IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv bGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWIt Mi4wL2luY2x1ZGUgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4w IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91bnQg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWly byAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2 XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9w aXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvZGJ1cy0xLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdu dS9kYnVzLTEuMC9pbmNsdWRlIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJt b3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAv aW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9s aWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlICAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91 c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGli LTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1 ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxzcWxpdGUzIC1sWDExICAgLWxj YWlybyAtbGNhaXJvIC1seGNiIC1seGNiLXJlbmRlciAtbGd0ay0zIC1sZ2RrLTMgLWxwYW5n b2NhaXJvLTEuMCAtbHBhbmdvLTEuMCAtbGhhcmZidXp6IC1sYXRrLTEuMCAtbGNhaXJvLWdv YmplY3QgLWxjYWlybyAtbGdka19waXhidWYtMi4wIC1sZ2lvLTIuMCAtbGdvYmplY3QtMi4w IC1sZ2xpYi0yLjAgLWxyc3ZnLTIgLWxtIC1sZ2lvLTIuMCAtbGdka19waXhidWYtMi4wIC1s Z29iamVjdC0yLjAgLWxnbGliLTIuMCAtbGNhaXJvIC1sZGJ1cy0xIC1sZ2lvLTIuMCAtbGdv YmplY3QtMi4wIC1sZ2xpYi0yLjAgLWxnb2JqZWN0LTIuMCAtbGdsaWItMi4wICAtbGNhaXJv IC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJlOjIzODA1OiAkPyA9 IDAKY29uZmlndXJlOjIzODE2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjM4Mjg6IGNoZWNr aW5nIGZvciBubF9sYW5naW5mbyBhbmQgQ09ERVNFVApjb25maWd1cmU6MjM4NDU6IGdjYyAt byBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGli cnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVt IC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9s aWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNy L2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1p c3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0 LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXht YW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv ZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVt IC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5n MTYgICAgICAgY29uZnRlc3QuYyAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8g LWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJlOjIzODQ1OiAkPyA9IDAKY29uZmln dXJlOjIzODU1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjM4NjI6IGNoZWNraW5nIGZvciBu bF9sYW5naW5mbyBhbmQgX05MX1BBUEVSX1dJRFRICmNvbmZpZ3VyZToyMzg3OTogZ2NjIC1v IGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJy c3ZnLTIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xp Ym1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3Iv bGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQt bGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1h bi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9m cmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0g L3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcx NiAgICAgICBjb25mdGVzdC5jIC1sc3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWlybyAt bHhjYiAtbHhjYi1yZW5kZXIgPiY1IApjb25maWd1cmU6MjM4Nzk6ICQ/ID0gMApjb25maWd1 cmU6MjM4ODk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMzkwMDogY2hlY2tpbmcgZm9yIG1i c3RhdGVfdApjb25maWd1cmU6MjM5MTg6IGdjYyAtYyAgLWczIC1PMiAtcHRocmVhZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dk ay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1p c3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxr aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9n bGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2lu Y2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5j bHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlz eXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9s aWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0y LjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToy MzkxODogJD8gPSAwCmNvbmZpZ3VyZToyMzkyNjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI0 MjQ3OiBjaGVja2luZyBmb3Igc2lnbmFscyB2aWEgY2hhcmFjdGVycwpjb25maWd1cmU6MjQy Njk6IGdjYyAtRSAgICAgY29uZnRlc3QuYwpjb25maWd1cmU6MjQyNjk6ICQ/ID0gMApjb25m aWd1cmU6MjQyNzc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNDMxNzogZ2NjIC1FICAgICBj b25mdGVzdC5jCmNvbmZ0ZXN0LmM6MjgxOjM6IGVycm9yOiAjZXJyb3IgIm5vdCBpYTY0Igog IDI4MSB8ICMgZXJyb3IgIm5vdCBpYTY0IgogICAgICB8ICAgXn5+fn4KY29uZmlndXJlOjI0 MzE3OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRl 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 X05QIDEKfCAjZGVmaW5lIEhBVkVfQUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfQUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX01BRFZJU0UgMQp8ICNk ZWZpbmUgSEFWRV9fX0JVSUxUSU5fRlJBTUVfQUREUkVTUyAxCnwgI2RlZmluZSBIQVZFX19f QlVJTFRJTl9VTldJTkRfSU5JVCAxCnwgI2RlZmluZSBIQVZFX0ZTRUVLTyAxCnwgI2RlZmlu ZSBIQVZFX0dSQU5UUFQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQVCAxCnwgI2RlZmluZSBIQVZF X1BPU0lYX09QRU5QVCAxCnwgI2RlZmluZSBURVJNSU5GTyAxCnwgI2RlZmluZSBURVJNSU5G T19ERUZJTkVTX0JDIDEKfCAjZGVmaW5lIEhBVkVfVElNRVJGRCAxCnwgI2RlZmluZSBIQVZF X1ZBTEdSSU5EX1ZBTEdSSU5EX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVU5JUEFJUl9V TklDT0RFIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwgI2RlZmluZSBIQVZF X1dPUktJTkdfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1NOUFJJTlRGIDEKfCAjZGVmaW5lIEhB VkVfU1BBV05fSCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOIDEKfCAjZGVmaW5lIEhB VkVfUE9TSVhfU1BBV05fRklMRV9BQ1RJT05TX0FERENIRElSX05QIDEKfCAjZGVmaW5lIEhB VkVfUE9TSVhfU1BBV05BVFRSX1NFVEZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QT1NJ WF9TUEFXTl9TRVRTSUQgMQp8ICNkZWZpbmUgSEFWRV9HTElCIDEKfCAjZGVmaW5lIEhBVkVf TEFOR0lORk9fQ09ERVNFVCAxCnwgI2RlZmluZSBIQVZFX0xBTkdJTkZPX19OTF9QQVBFUl9X SURUSCAxCnwgI2RlZmluZSBIQVZFX01CU1RBVEVfVCAxCnwgI2RlZmluZSBBTVBFUlNBTkRf RlVMTF9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUFRZUyAxCnwgI2RlZmluZSBIQVZFX1NPQ0tF VFMgMQp8ICNkZWZpbmUgTlVMTF9ERVZJQ0UgIi9kZXYvbnVsbCIKfCAjZGVmaW5lIFNFUENI QVIgJzonCnwgI2RlZmluZSBzdWJwcm9jZXNzZXMgMQp8ICNkZWZpbmUgVVNFUl9GVUxMX05B TUUgcHctPnB3X2dlY29zCnwgI2RlZmluZSBESVJFQ1RPUllfU0VQICcvJwp8ICNkZWZpbmUg SVNfREVWSUNFX1NFUChfY18pIDAKfCAjZGVmaW5lIElTX0RJUkVDVE9SWV9TRVAoX2NfKSAo KF9jXykgPT0gRElSRUNUT1JZX1NFUCkKfCAjZGVmaW5lIElTX0FOWV9TRVAoX2NfKSAoSVNf RElSRUNUT1JZX1NFUCAoX2NfKSkKfCAjZGVmaW5lIEhBVkVfUFJPQ0ZTIDEKfCAjZGVmaW5l IERFRkFVTFRfU09VTkRfREVWSUNFICIvZGV2L2RzcCIKfCAjZGVmaW5lIElOVEVSUlVQVF9J TlBVVCAxCnwgI2RlZmluZSBOQVJST1dQUk9UTyAxCnwgI2RlZmluZSBVTklYOThfUFRZUyAx CnwgI2RlZmluZSBQVFlfSVRFUkFUSU9OIGludCBpOyBmb3IgKGkgPSAwOyBpIDwgMTsgaSsr KQp8ICNkZWZpbmUgUFRZX1RUWV9OQU1FX1NQUklOVEYgeyBjaGFyICpwdHluYW1lID0gMDsg c2lnc2V0X3QgYmxvY2tlZDsgc2lnZW1wdHlzZXQgKCZibG9ja2VkKTsgc2lnYWRkc2V0ICgm YmxvY2tlZCwgU0lHQ0hMRCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX0JMT0NLLCAmYmxvY2tl ZCwgMCk7IGlmIChncmFudHB0IChmZCkgIT0gLTEgJiYgdW5sb2NrcHQgKGZkKSAhPSAtMSkg cHR5bmFtZSA9IHB0c25hbWUoZmQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19VTkJMT0NLLCAm YmxvY2tlZCwgMCk7IGlmICghcHR5bmFtZSkgeyBlbWFjc19jbG9zZSAoZmQpOyByZXR1cm4g LTE7IH0gc25wcmludGYgKHB0eV9uYW1lLCBQVFlfTkFNRV9TSVpFLCAiJXMiLCBwdHluYW1l KTsgfQp8ICNkZWZpbmUgUFRZX09QRU4gZG8geyBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdS IHwgT19DTE9FWEVDIHwgT19OT0NUVFkpOyBpZiAoZmQgPCAwICYmIGVycm5vID09IEVJTlZB TCkgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fTk9DVFRZKTsgfSB3aGlsZSAoZmFs c2UpCnwgI2RlZmluZSBQVFlfTkFNRV9TUFJJTlRGIC8qKi8KfCAjZGVmaW5lIFNJR05BTFNf VklBX0NIQVJBQ1RFUlMgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAjaWZuZGVm IF9faWE2NF9fCnwgIyBlcnJvciAibm90IGlhNjQiCnwgI2VuZGlmCnwgCnwgaW50CnwgbWFp biAodm9pZCkKfCB7CnwgCnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToyNDM2 MDogZ2NjIC1FICAgICBjb25mdGVzdC5jCmNvbmZpZ3VyZToyNDM2MDogJD8gPSAwCmNvbmZp Z3VyZToyNDM4MTogY2hlY2tpbmcgZm9yIF9zZXRqbXAKY29uZmlndXJlOjI0NDA0OiBnY2Mg LW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xp YnJzdmctMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv bGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vz ci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8g LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82 NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4 bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3Rl bSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBu ZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxzcWxpdGUzIC1sWDExICAgLWxjYWlybyAtbGNhaXJv IC1seGNiIC1seGNiLXJlbmRlciA+JjUgCmNvbmZpZ3VyZToyNDQwNDogJD8gPSAwCmNvbmZp Z3VyZToyNDQxMzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI0NDIyOiBjaGVja2luZyBmb3Ig c2lnc2V0am1wCmNvbmZpZ3VyZToyNDQ0MjogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1w dGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82NC1s aW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUv Z2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3dl YnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9n bGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2lu Y2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5j bHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4 LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5 cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1s c3FsaXRlMyAtbFgxMSAgIC1sY2Fpcm8gLWxjYWlybyAtbHhjYiAtbHhjYi1yZW5kZXIgPiY1 IApjb25maWd1cmU6MjQ0NDI6ICQ/ID0gMApjb25maWd1cmU6MjQ0NTE6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZToyNDU4NDogY2hlY2tpbmcgUE9TSVggdGVybWlvcwpjb25maWd1cmU6MjQ2 MDU6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4w IC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5 c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xp YnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9s aWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4w IC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1 aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJv IC1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyID4mNSAKY29uZmlndXJlOjI0NjA1OiAkPyA9 IDAKY29uZmlndXJlOjI0NjE0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjQ2MjI6IGNoZWNr aW5nIHNpemUgb2Ygc3BlZWRfdApjb25maWd1cmU6MjQ2Mjg6IGdjYyAtbyBjb25mdGVzdCAg LWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQt bGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1h bi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9m cmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3Iv aW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9n bGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fp cm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4 Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv cGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNs dWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29u ZnRlc3QuYyAtbHNxbGl0ZTMgLWxYMTEgICAtbGNhaXJvIC1sY2Fpcm8gLWx4Y2IgLWx4Y2It cmVuZGVyID4mNSAKY29uZmlndXJlOjI0NjI4OiAkPyA9IDAKY29uZmlndXJlOjI0NjI4OiAu L2NvbmZ0ZXN0CmNvbmZpZ3VyZToyNDYyODogJD8gPSAwCmNvbmZpZ3VyZToyNDY0NDogcmVz dWx0OiA0CmNvbmZpZ3VyZToyNDY2MDogY2hlY2tpbmcgZm9yIHVzYWJsZSBGSU9OUkVBRApj b25maWd1cmU6MjQ2OTI6IGdjYyAtYyAgLWczIC1PMiAtcHRocmVhZCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1waXhidWYt Mi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAt aXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlk IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS93ZWJwIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vz ci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWIt Mi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVk ZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvbGlicG5nMTYgICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyNDY5MjogJD8g PSAwCmNvbmZpZ3VyZToyNDcwMjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI0NzEwOiBjaGVj a2luZyBmb3IgdXNhYmxlIFNJR0lPCmNvbmZpZ3VyZToyNDcyOTogZ2NjIC1jICAtZzMgLU8y IC1wdGhyZWFkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtaXN5c3RlbSAv dXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3g4Nl82 NC1saW51eC1nbnUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91 c3IvaW5jbHVkZS9ibGtpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1n bnUvZ2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlz eXN0ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBl MiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L3dlYnAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4w L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxp bnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4t MSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJl ZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgY29uZnRlc3QuYyA+ JjUKY29uZmlndXJlOjI0NzI5OiAkPyA9IDAKY29uZmlndXJlOjI0NzM3OiByZXN1bHQ6IHll cwpjb25maWd1cmU6MjQ5OTk6IGNoZWNraW5nIGZvciBzdHJ1Y3QgYWxpZ25tZW50CmNvbmZp Z3VyZToyNTAyMDogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJl OjI1MDIwOiAkPyA9IDAKY29uZmlndXJlOjI1MDI4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6 MjUwMzc6IGNoZWNraW5nIGZvciB0eXBlb2Ygc3ludGF4IGFuZCBrZXl3b3JkIHNwZWxsaW5n CmNvbmZpZ3VyZToyNTA2OTogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29u ZmlndXJlOjI1MDY5OiAkPyA9IDAKY29uZmlndXJlOjI1MDc3OiByZXN1bHQ6IHR5cGVvZgpj b25maWd1cmU6MjUwOTE6IGNoZWNraW5nIGZvciBzdGF0ZW1lbnQgZXhwcmVzc2lvbnMKY29u ZmlndXJlOjI1MTA4OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1 cmU6MjUxMDg6ICQ/ID0gMApjb25maWd1cmU6MjUxMTY6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy ZToyNTE4NjogY2hlY2tpbmcgd2hldGhlciBtYWxsb2MgKDApIHJldHVybnMgbm9ubnVsbApj b25maWd1cmU6MjUyMjE6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3Qu YyAgID4mNSAKY29uZmlndXJlOjI1MjIxOiAkPyA9IDAKY29uZmlndXJlOjI1MjIxOiAuL2Nv bmZ0ZXN0CmNvbmZpZ3VyZToyNTIyMTogJD8gPSAwCmNvbmZpZ3VyZToyNTIzMzogcmVzdWx0 OiB5ZXMKY29uZmlndXJlOjI1Mjk2OiBjaGVja2luZyBmb3Igc3lzL2FjbC5oCmNvbmZpZ3Vy ZToyNTI5NjogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjI1 Mjk2OiAkPyA9IDAKY29uZmlndXJlOjI1Mjk2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjUz MDc6IGNoZWNraW5nIGZvciBsaWJyYXJ5IGNvbnRhaW5pbmcgYWNsX2dldF9maWxlCmNvbmZp Z3VyZToyNTMzNzogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jICAg PiY1IAovdXNyL2Jpbi9sZDogL3RtcC9jY3JmRlYyQS5vOiBpbiBmdW5jdGlvbiBgbWFpbic6 Ci9hcHAvZW1hY3MvY29uZnRlc3QuYzozMDg6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYGFj bF9nZXRfZmlsZScKY29sbGVjdDI6IGVycm9yOiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVz CmNvbmZpZ3VyZToyNTMzNzogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2Fz 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 X0ggMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAvKiBPdmVycmlkZSBhbnkgR0ND IGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4KfCAgICBVc2UgY2hhciBi ZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBHQ0MKfCAgICBi dWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBw bHkuICAqLwp8IGNoYXIgYWNsX2dldF9maWxlICgpOwp8IGludAp8IG1haW4gKHZvaWQpCnwg ewp8IHJldHVybiBhY2xfZ2V0X2ZpbGUgKCk7CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNv bmZpZ3VyZToyNTMzNzogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5j IC1sYWNsICAgID4mNSAKY29uZmlndXJlOjI1MzM3OiAkPyA9IDAKY29uZmlndXJlOjI1MzU3 OiByZXN1bHQ6IC1sYWNsCmNvbmZpZ3VyZToyNTM2NjogY2hlY2tpbmcgZm9yIGFjbF9nZXRf ZmlsZQpjb25maWd1cmU6MjUzNjY6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29u ZnRlc3QuYyAtbGFjbCAgID4mNSAKY29uZmlndXJlOjI1MzY2OiAkPyA9IDAKY29uZmlndXJl OjI1MzY2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjUzNzI6IGNoZWNraW5nIGZvciBhY2xf Z2V0X2ZkCmNvbmZpZ3VyZToyNTM3MjogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBj b25mdGVzdC5jIC1sYWNsICAgPiY1IApjb25maWd1cmU6MjUzNzI6ICQ/ID0gMApjb25maWd1 cmU6MjUzNzI6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNTM3ODogY2hlY2tpbmcgZm9yIGFj bF9zZXRfZmlsZQpjb25maWd1cmU6MjUzNzg6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAg ICAgY29uZnRlc3QuYyAtbGFjbCAgID4mNSAKY29uZmlndXJlOjI1Mzc4OiAkPyA9IDAKY29u ZmlndXJlOjI1Mzc4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjUzODQ6IGNoZWNraW5nIGZv ciBhY2xfc2V0X2ZkCmNvbmZpZ3VyZToyNTM4NDogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIg ICAgICBjb25mdGVzdC5jIC1sYWNsICAgPiY1IApjb25maWd1cmU6MjUzODQ6ICQ/ID0gMApj b25maWd1cmU6MjUzODQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNTM5MDogY2hlY2tpbmcg Zm9yIGFjbF9mcmVlCmNvbmZpZ3VyZToyNTM5MDogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIg ICAgICBjb25mdGVzdC5jIC1sYWNsICAgPiY1IApjb25maWd1cmU6MjUzOTA6ICQ/ID0gMApj b25maWd1cmU6MjUzOTA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNTM5NjogY2hlY2tpbmcg Zm9yIGFjbF9mcm9tX21vZGUKY29uZmlndXJlOjI1Mzk2OiBnY2MgLW8gY29uZnRlc3QgLWcz IC1PMiAgICAgIGNvbmZ0ZXN0LmMgLWxhY2wgICA+JjUgCmNvbmZpZ3VyZToyNTM5NjogJD8g PSAwCmNvbmZpZ3VyZToyNTM5NjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI1NDAyOiBjaGVj a2luZyBmb3IgYWNsX2Zyb21fdGV4dApjb25maWd1cmU6MjU0MDI6IGdjYyAtbyBjb25mdGVz dCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAtbGFjbCAgID4mNSAKY29uZmlndXJlOjI1NDAy OiAkPyA9IDAKY29uZmlndXJlOjI1NDAyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjU0MDg6 IGNoZWNraW5nIGZvciBhY2xfZGVsZXRlX2RlZl9maWxlCmNvbmZpZ3VyZToyNTQwODogZ2Nj IC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jIC1sYWNsICAgPiY1IApjb25m aWd1cmU6MjU0MDg6ICQ/ID0gMApjb25maWd1cmU6MjU0MDg6IHJlc3VsdDogeWVzCmNvbmZp Z3VyZToyNTQxNDogY2hlY2tpbmcgZm9yIGFjbF9leHRlbmRlZF9maWxlCmNvbmZpZ3VyZToy NTQxNDogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jIC1sYWNsICAg PiY1IApjb25maWd1cmU6MjU0MTQ6ICQ/ID0gMApjb25maWd1cmU6MjU0MTQ6IHJlc3VsdDog eWVzCmNvbmZpZ3VyZToyNTQyMDogY2hlY2tpbmcgZm9yIGFjbF9kZWxldGVfZmRfbnAKY29u ZmlndXJlOjI1NDIwOiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMg LWxhY2wgICA+JjUgCi91c3IvYmluL2xkOiAvdG1wL2NjZ2o3YTQ5Lm86IGluIGZ1bmN0aW9u IGBtYWluJzoKL2FwcC9lbWFjcy9jb25mdGVzdC5jOjMzNjogdW5kZWZpbmVkIHJlZmVyZW5j ZSB0byBgYWNsX2RlbGV0ZV9mZF9ucCcKY29sbGVjdDI6IGVycm9yOiBsZCByZXR1cm5lZCAx IGV4aXQgc3RhdHVzCmNvbmZpZ3VyZToyNTQyMDogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVk 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 ZWZpbmUgYWNsX2RlbGV0ZV9mZF9ucCB0byBhbiBpbm5vY3VvdXMgdmFyaWFudCwgaW4gY2Fz ZSA8bGltaXRzLmg+IGRlY2xhcmVzIGFjbF9kZWxldGVfZmRfbnAuCnwgICAgRm9yIGV4YW1w bGUsIEhQLVVYIDExaSA8bGltaXRzLmg+IGRlY2xhcmVzIGdldHRpbWVvZmRheS4gICovCnwg I2RlZmluZSBhY2xfZGVsZXRlX2ZkX25wIGlubm9jdW91c19hY2xfZGVsZXRlX2ZkX25wCnwg CnwgLyogU3lzdGVtIGhlYWRlciB0byBkZWZpbmUgX19zdHViIG1hY3JvcyBhbmQgaG9wZWZ1 bGx5IGZldyBwcm90b3R5cGVzLAp8ICAgIHdoaWNoIGNhbiBjb25mbGljdCB3aXRoIGNoYXIg YWNsX2RlbGV0ZV9mZF9ucCAoKTsgYmVsb3cuICAqLwp8IAp8ICNpbmNsdWRlIDxsaW1pdHMu aD4KfCAjdW5kZWYgYWNsX2RlbGV0ZV9mZF9ucAp8IAp8IC8qIE92ZXJyaWRlIGFueSBHQ0Mg aW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLgp8ICAgIFVzZSBjaGFyIGJl Y2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIEdDQwp8ICAgIGJ1 aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBs eS4gICovCnwgI2lmZGVmIF9fY3BsdXNwbHVzCnwgZXh0ZXJuICJDIgp8ICNlbmRpZgp8IGNo YXIgYWNsX2RlbGV0ZV9mZF9ucCAoKTsKfCAvKiBUaGUgR05VIEMgbGlicmFyeSBkZWZpbmVz IHRoaXMgZm9yIGZ1bmN0aW9ucyB3aGljaCBpdCBpbXBsZW1lbnRzCnwgICAgIHRvIGFsd2F5 cyBmYWlsIHdpdGggRU5PU1lTLiAgU29tZSBmdW5jdGlvbnMgYXJlIGFjdHVhbGx5IG5hbWVk CnwgICAgIHNvbWV0aGluZyBzdGFydGluZyB3aXRoIF9fIGFuZCB0aGUgbm9ybWFsIG5hbWUg aXMgYW4gYWxpYXMuICAqLwp8ICNpZiBkZWZpbmVkIF9fc3R1Yl9hY2xfZGVsZXRlX2ZkX25w IHx8IGRlZmluZWQgX19zdHViX19fYWNsX2RlbGV0ZV9mZF9ucAp8IGNob2tlIG1lCnwgI2Vu ZGlmCnwgCnwgaW50CnwgbWFpbiAodm9pZCkKfCB7CnwgcmV0dXJuIGFjbF9kZWxldGVfZmRf bnAgKCk7CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToyNTQyMDogcmVzdWx0 OiBubwpjb25maWd1cmU6MjU0MjY6IGNoZWNraW5nIGZvciBhY2xfZGVsZXRlX2ZpbGVfbnAK Y29uZmlndXJlOjI1NDI2OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0 LmMgLWxhY2wgICA+JjUgCi91c3IvYmluL2xkOiAvdG1wL2NjTjdiOFdlLm86IGluIGZ1bmN0 aW9uIGBtYWluJzoKL2FwcC9lbWFjcy9jb25mdGVzdC5jOjMzNjogdW5kZWZpbmVkIHJlZmVy ZW5jZSB0byBgYWNsX2RlbGV0ZV9maWxlX25wJwpjb2xsZWN0MjogZXJyb3I6IGxkIHJldHVy bmVkIDEgZXhpdCBzdGF0dXMKY29uZmlndXJlOjI1NDI2OiAkPyA9IDEKY29uZmlndXJlOiBm 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 bmUgSEFWRV9BQ0xfRVhURU5ERURfRklMRSAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8 IC8qIERlZmluZSBhY2xfZGVsZXRlX2ZpbGVfbnAgdG8gYW4gaW5ub2N1b3VzIHZhcmlhbnQs IGluIGNhc2UgPGxpbWl0cy5oPiBkZWNsYXJlcyBhY2xfZGVsZXRlX2ZpbGVfbnAuCnwgICAg Rm9yIGV4YW1wbGUsIEhQLVVYIDExaSA8bGltaXRzLmg+IGRlY2xhcmVzIGdldHRpbWVvZmRh eS4gICovCnwgI2RlZmluZSBhY2xfZGVsZXRlX2ZpbGVfbnAgaW5ub2N1b3VzX2FjbF9kZWxl dGVfZmlsZV9ucAp8IAp8IC8qIFN5c3RlbSBoZWFkZXIgdG8gZGVmaW5lIF9fc3R1YiBtYWNy b3MgYW5kIGhvcGVmdWxseSBmZXcgcHJvdG90eXBlcywKfCAgICB3aGljaCBjYW4gY29uZmxp Y3Qgd2l0aCBjaGFyIGFjbF9kZWxldGVfZmlsZV9ucCAoKTsgYmVsb3cuICAqLwp8IAp8ICNp bmNsdWRlIDxsaW1pdHMuaD4KfCAjdW5kZWYgYWNsX2RlbGV0ZV9maWxlX25wCnwgCnwgLyog T3ZlcnJpZGUgYW55IEdDQyBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3Iu CnwgICAgVXNlIGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2ggdGhlIHJldHVybiB0eXBl IG9mIGEgR0NDCnwgICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMgYXJndW1lbnQgcHJvdG90eXBl IHdvdWxkIHN0aWxsIGFwcGx5LiAgKi8KfCAjaWZkZWYgX19jcGx1c3BsdXMKfCBleHRlcm4g IkMiCnwgI2VuZGlmCnwgY2hhciBhY2xfZGVsZXRlX2ZpbGVfbnAgKCk7CnwgLyogVGhlIEdO VSBDIGxpYnJhcnkgZGVmaW5lcyB0aGlzIGZvciBmdW5jdGlvbnMgd2hpY2ggaXQgaW1wbGVt ZW50cwp8ICAgICB0byBhbHdheXMgZmFpbCB3aXRoIEVOT1NZUy4gIFNvbWUgZnVuY3Rpb25z IGFyZSBhY3R1YWxseSBuYW1lZAp8ICAgICBzb21ldGhpbmcgc3RhcnRpbmcgd2l0aCBfXyBh bmQgdGhlIG5vcm1hbCBuYW1lIGlzIGFuIGFsaWFzLiAgKi8KfCAjaWYgZGVmaW5lZCBfX3N0 dWJfYWNsX2RlbGV0ZV9maWxlX25wIHx8IGRlZmluZWQgX19zdHViX19fYWNsX2RlbGV0ZV9m aWxlX25wCnwgY2hva2UgbWUKfCAjZW5kaWYKfCAKfCBpbnQKfCBtYWluICh2b2lkKQp8IHsK fCByZXR1cm4gYWNsX2RlbGV0ZV9maWxlX25wICgpOwp8ICAgOwp8ICAgcmV0dXJuIDA7Cnwg fQpjb25maWd1cmU6MjU0MjY6IHJlc3VsdDogbm8KY29uZmlndXJlOjI1NDMyOiBjaGVja2lu ZyBmb3IgYWNsX2NvcHlfZXh0X25hdGl2ZQpjb25maWd1cmU6MjU0MzI6IGdjYyAtbyBjb25m dGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAtbGFjbCAgID4mNSAKL3Vzci9iaW4vbGQ6 IC90bXAvY2MzYnpWUTkubzogaW4gZnVuY3Rpb24gYG1haW4nOgovYXBwL2VtYWNzL2NvbmZ0 ZXN0LmM6MzM2OiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBhY2xfY29weV9leHRfbmF0aXZl Jwpjb2xsZWN0MjogZXJyb3I6IGxkIHJldHVybmVkIDEgZXhpdCBzdGF0dXMKY29uZmlndXJl OjI1NDMyOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29u 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 X0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9IV0FERFIgMQp8ICNk ZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX05FVE1BU0sgMQp8ICNkZWZpbmUgSEFWRV9T VFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJF UV9JRlJfQUREUiAxCnwgI2RlZmluZSBIQVZFX1NCUksgMQp8ICNkZWZpbmUgSEFWRV9HRVRQ QUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9WRk9SSyAx CnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0NBTk9OSUNBTElaRV9G SUxFX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9SRUFMUEFUSCAxCnwgI2RlZmluZSBIQVZFX0xT VEFUIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EQVQgMQp8ICNkZWZpbmUgSEFWRV9MQ0hNT0Qg MQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwg I2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmlu ZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZp bmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwg I2RlZmluZSBIQVZFX0lTQkxBTksgMQp8ICNkZWZpbmUgSEFWRV9JU1dDVFlQRSAxCnwgI2Rl ZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZp bmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8 ICNkZWZpbmUgU1lTVEVNX01BTExPQyAxCnwgI2RlZmluZSBIQVZFX01NQVAgMQp8ICNkZWZp bmUgSEFWRV9QVEhSRUFEIDEKfCAjZGVmaW5lIFRIUkVBRFNfRU5BQkxFRCAxCnwgI2RlZmlu ZSBIQVZFX1hLQiAxCnwgI2RlZmluZSBIQVZFX1hLQlJFRlJFU0hLRVlCT0FSRE1BUFBJTkcg MQp8ICNkZWZpbmUgSEFWRV9YS0JGUkVFTkFNRVMgMQp8ICNkZWZpbmUgSEFWRV9YUk1TRVRE QVRBQkFTRSAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNPVVJDRVNUUklORyAxCnwgI2Rl ZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJPRlNDUkVFTiAxCnwgI2RlZmluZSBIQVZFX1hESVNQ TEFZQ0VMTFMgMQp8ICNkZWZpbmUgSEFWRV9YREVTVFJPWVNVQldJTkRPV1MgMQp8ICNkZWZp bmUgSEFWRV9YMTFSNiAxCnwgI2RlZmluZSBIQVZFX1hfSTE4TiAxCnwgI2RlZmluZSBIQVZF X1hJQ0NBTExCQUNLX0NBTExCQUNLIDEKfCAjZGVmaW5lIEhBVkVfWDExUjZfWElNIDEKfCAj ZGVmaW5lIEhBVkVfUlNWRyAxCnwgI2RlZmluZSBIQVZFX1dFQlAgMQp8ICNkZWZpbmUgSEFW RV9TUUxJVEUzIDEKfCAjZGVmaW5lIEhBVkVfU1FMSVRFM19MT0FEX0VYVEVOU0lPTiAxCnwg I2RlZmluZSBIQVZFX0dFVEFERFJJTkZPX0EgMQp8ICNkZWZpbmUgSEFWRV9HVEszIDEKfCAj ZGVmaW5lIEdES19ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIEdM SUJfRElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAxCnwgI2RlZmluZSBVU0VfR1RLIDEK fCAjZGVmaW5lIEhBVkVfTUFMTE9DX1RSSU0gMQp8ICNkZWZpbmUgSEFWRV9EQlVTIDEKfCAj ZGVmaW5lIEhBVkVfREJVU19XQVRDSF9HRVRfVU5JWF9GRCAxCnwgI2RlZmluZSBIQVZFX0RC VVNfVFlQRV9JU19WQUxJRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfQlVTX05B TUUgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX1BBVEggMQp8ICNkZWZpbmUgSEFW RV9EQlVTX1ZBTElEQVRFX0lOVEVSRkFDRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURB VEVfTUVNQkVSIDEKfCAjZGVmaW5lIEhBVkVfR1NFVFRJTkdTIDEKfCAjZGVmaW5lIEhBVkVf TElCU0VMSU5VWCAxCnwgI2RlZmluZSBIQVZFX0dOVVRMUyAxCnwgI2RlZmluZSBIQVZFX0xJ QlNZU1RFTUQgMQp8ICNkZWZpbmUgSEFWRV9KU09OIDEKfCAjZGVmaW5lIEhBVkVfSU5PVElG WSAxCnwgI2RlZmluZSBVU0VfRklMRV9OT1RJRlkgMQp8ICNkZWZpbmUgVVNFX1RPT0xLSVRf U0NST0xMX0JBUlMgMQp8ICNkZWZpbmUgSEFWRV9YSU0gMQp8ICNkZWZpbmUgVVNFX1hJTSAx CnwgI2RlZmluZSBIQVZFX1hSRU5ERVIgMQp8ICNkZWZpbmUgVVNFX0NBSVJPX1hDQiAxCnwg I2RlZmluZSBVU0VfQ0FJUk8gMQp8ICNkZWZpbmUgSEFWRV9GUkVFVFlQRSAxCnwgI2RlZmlu ZSBIQVZFX0ZUX0ZBQ0VfR0VUQ0hBUlZBUklBTlRJTkRFWCAxCnwgI2RlZmluZSBIQVZFX0xJ Qk9URiAxCnwgI2RlZmluZSBIQVZFX09URl9HRVRfVkFSSUFUSU9OX0dMWVBIUyAxCnwgI2Rl ZmluZSBIQVZFX00xN05fRkxUIDEKfCAjZGVmaW5lIEhBVkVfSEFSRkJVWlogMQp8ICNkZWZp bmUgVVNFX1hDQiAxCnwgI2RlZmluZSBIQVZFX1hQTSAxCnwgI2RlZmluZSBIQVZFX0pQRUcg MQp8ICNkZWZpbmUgSEFWRV9MQ01TMiAxCnwgI2RlZmluZSBIQVZFX1pMSUIgMQp8ICNkZWZp bmUgRFlOQU1JQ19MSUJfU1VGRklYICIuc28iCnwgI2RlZmluZSBEWU5BTUlDX0xJQl9TRUNP TkRBUllfU1VGRklYICIiCnwgI2RlZmluZSBIQVZFX0RMQUREUiAxCnwgI2RlZmluZSBIQVZF X01PRFVMRVMgMQp8ICNkZWZpbmUgTU9EVUxFU19TVUZGSVggIi5zbyIKfCAjZGVmaW5lIE5B VElWRV9FTElTUF9TVUZGSVggIi5lbG4iCnwgI2RlZmluZSBIQVZFX1BORyAxCnwgI2RlZmlu ZSBIQVZFX1RJRkYgMQp8ICNkZWZpbmUgSEFWRV9HSUYgMQp8ICNkZWZpbmUgSEFWRV9HUE0g MQp8ICNkZWZpbmUgSEFWRV9YX1NNIDEKfCAjZGVmaW5lIEhBVkVfWFJBTkRSIDEKfCAjZGVm aW5lIEhBVkVfWElORVJBTUEgMQp8ICNkZWZpbmUgSEFWRV9YRklYRVMgMQp8ICNkZWZpbmUg SEFWRV9YSU5QVVQyIDEKfCAjZGVmaW5lIEhBVkVfWElTQ1JPTExDTEFTU0lORk9fVFlQRSAx CnwgI2RlZmluZSBIQVZFX1hJVE9VQ0hDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZF X1hJQkFSUklFUlJFTEVBU0VQT0lOVEVSSU5GT19ERVZJQ0VJRCAxCnwgI2RlZmluZSBIQVZF X1hJR0VTVFVSRUNMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWFNZTkMgMQp8ICNk ZWZpbmUgSEFWRV9YU1lOQ1RSSUdHRVJGRU5DRSAxCnwgI2RlZmluZSBIQVZFX1hEQkUgMQp8 ICNkZWZpbmUgSEFWRV9YQ0JfU0hBUEUgMQp8ICNkZWZpbmUgSEFWRV9YU0hBUEUgMQp8ICNk ZWZpbmUgSEFWRV9YQ09NUE9TSVRFIDEKfCAjZGVmaW5lIEhBVkVfTElCWE1MMiAxCnwgI2Rl ZmluZSBIQVZFX0xJTlVYX1NFQ0NPTVBfSCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09N UF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVS X0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GSUxURVJfSCAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZpbmUgSEFWRV9E RUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgU0laRU9GX0xPTkcg OAp8ICNkZWZpbmUgSEFWRV9BQ0NFUFQ0IDEKfCAjZGVmaW5lIEhBVkVfRkNIRElSIDEKfCAj ZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNBR0UgMQp8 ICNkZWZpbmUgSEFWRV9HRVRfQ1VSUkVOVF9ESVJfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0xS QU5ENDggMQp8ICNkZWZpbmUgSEFWRV9SQU5ET00gMQp8ICNkZWZpbmUgSEFWRV9SSU5UIDEK fCAjZGVmaW5lIEhBVkVfVFJVTkMgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZp bmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FMRSAxCnwgI2Rl ZmluZSBIQVZFX05FV0xPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJMSU1JVCAxCnwgI2Rl ZmluZSBIQVZFX1NFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVm aW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSU0lHTkFMIDEK fCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfU0VORFRPIDEKfCAj ZGVmaW5lIEhBVkVfUkVDVkZST00gMQp8ICNkZWZpbmUgSEFWRV9HRVRTT0NLTkFNRSAxCnwg I2RlZmluZSBIQVZFX0dFVElGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9GUkVFSUZBRERSUyAx CnwgI2RlZmluZSBIQVZFX0dBSV9TVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZFX1NZTkMgMQp8 ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0VORFBXRU5UIDEKfCAj ZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRHUkVOVCAxCnwgI2Rl ZmluZSBIQVZFX1JFTkFNRUFUMiAxCnwgI2RlZmluZSBIQVZFX0NGTUFLRVJBVyAxCnwgI2Rl ZmluZSBIQVZFX0NGU0VUU1BFRUQgMQp8ICNkZWZpbmUgSEFWRV9fX0VYRUNVVEFCTEVfU1RB UlQgMQp8ICNkZWZpbmUgSEFWRV9MT0cyIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TRVRO QU1FX05QIDEKfCAjZGVmaW5lIEhBVkVfQUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfQUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX01BRFZJU0UgMQp8 ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fRlJBTUVfQUREUkVTUyAxCnwgI2RlZmluZSBIQVZF X19fQlVJTFRJTl9VTldJTkRfSU5JVCAxCnwgI2RlZmluZSBIQVZFX0ZTRUVLTyAxCnwgI2Rl ZmluZSBIQVZFX0dSQU5UUFQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQVCAxCnwgI2RlZmluZSBI QVZFX1BPU0lYX09QRU5QVCAxCnwgI2RlZmluZSBURVJNSU5GTyAxCnwgI2RlZmluZSBURVJN SU5GT19ERUZJTkVTX0JDIDEKfCAjZGVmaW5lIEhBVkVfVElNRVJGRCAxCnwgI2RlZmluZSBI QVZFX1ZBTEdSSU5EX1ZBTEdSSU5EX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVU5JUEFJ Ul9VTklDT0RFIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwgI2RlZmluZSBI QVZFX1dPUktJTkdfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1NOUFJJTlRGIDEKfCAjZGVmaW5l IEhBVkVfU1BBV05fSCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOIDEKfCAjZGVmaW5l IEhBVkVfUE9TSVhfU1BBV05fRklMRV9BQ1RJT05TX0FERENIRElSX05QIDEKfCAjZGVmaW5l IEhBVkVfUE9TSVhfU1BBV05BVFRSX1NFVEZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9Q T1NJWF9TUEFXTl9TRVRTSUQgMQp8ICNkZWZpbmUgSEFWRV9HTElCIDEKfCAjZGVmaW5lIEhB VkVfTEFOR0lORk9fQ09ERVNFVCAxCnwgI2RlZmluZSBIQVZFX0xBTkdJTkZPX19OTF9QQVBF Ul9XSURUSCAxCnwgI2RlZmluZSBIQVZFX01CU1RBVEVfVCAxCnwgI2RlZmluZSBBTVBFUlNB TkRfRlVMTF9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUFRZUyAxCnwgI2RlZmluZSBIQVZFX1NP Q0tFVFMgMQp8ICNkZWZpbmUgTlVMTF9ERVZJQ0UgIi9kZXYvbnVsbCIKfCAjZGVmaW5lIFNF UENIQVIgJzonCnwgI2RlZmluZSBzdWJwcm9jZXNzZXMgMQp8ICNkZWZpbmUgVVNFUl9GVUxM X05BTUUgcHctPnB3X2dlY29zCnwgI2RlZmluZSBESVJFQ1RPUllfU0VQICcvJwp8ICNkZWZp bmUgSVNfREVWSUNFX1NFUChfY18pIDAKfCAjZGVmaW5lIElTX0RJUkVDVE9SWV9TRVAoX2Nf KSAoKF9jXykgPT0gRElSRUNUT1JZX1NFUCkKfCAjZGVmaW5lIElTX0FOWV9TRVAoX2NfKSAo SVNfRElSRUNUT1JZX1NFUCAoX2NfKSkKfCAjZGVmaW5lIEhBVkVfUFJPQ0ZTIDEKfCAjZGVm aW5lIERFRkFVTFRfU09VTkRfREVWSUNFICIvZGV2L2RzcCIKfCAjZGVmaW5lIElOVEVSUlVQ VF9JTlBVVCAxCnwgI2RlZmluZSBOQVJST1dQUk9UTyAxCnwgI2RlZmluZSBVTklYOThfUFRZ UyAxCnwgI2RlZmluZSBQVFlfSVRFUkFUSU9OIGludCBpOyBmb3IgKGkgPSAwOyBpIDwgMTsg aSsrKQp8ICNkZWZpbmUgUFRZX1RUWV9OQU1FX1NQUklOVEYgeyBjaGFyICpwdHluYW1lID0g MDsgc2lnc2V0X3QgYmxvY2tlZDsgc2lnZW1wdHlzZXQgKCZibG9ja2VkKTsgc2lnYWRkc2V0 ICgmYmxvY2tlZCwgU0lHQ0hMRCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX0JMT0NLLCAmYmxv Y2tlZCwgMCk7IGlmIChncmFudHB0IChmZCkgIT0gLTEgJiYgdW5sb2NrcHQgKGZkKSAhPSAt MSkgcHR5bmFtZSA9IHB0c25hbWUoZmQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19VTkJMT0NL LCAmYmxvY2tlZCwgMCk7IGlmICghcHR5bmFtZSkgeyBlbWFjc19jbG9zZSAoZmQpOyByZXR1 cm4gLTE7IH0gc25wcmludGYgKHB0eV9uYW1lLCBQVFlfTkFNRV9TSVpFLCAiJXMiLCBwdHlu YW1lKTsgfQp8ICNkZWZpbmUgUFRZX09QRU4gZG8geyBmZCA9IHBvc2l4X29wZW5wdCAoT19S RFdSIHwgT19DTE9FWEVDIHwgT19OT0NUVFkpOyBpZiAoZmQgPCAwICYmIGVycm5vID09IEVJ TlZBTCkgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fTk9DVFRZKTsgfSB3aGlsZSAo ZmFsc2UpCnwgI2RlZmluZSBQVFlfTkFNRV9TUFJJTlRGIC8qKi8KfCAjZGVmaW5lIFNJR05B TFNfVklBX0NIQVJBQ1RFUlMgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAjZGVm aW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBIQVZFX19TRVRKTVAgMQp8ICNkZWZp bmUgSEFWRV9TSUdTRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TVEFDS19PVkVSRkxPV19IQU5E TElORyAxCnwgI2RlZmluZSBVU0cgLyoqLwp8ICNkZWZpbmUgR05VX0xJTlVYIC8qKi8KfCAj ZGVmaW5lIFNJWkVPRl9TUEVFRF9UIDQKfCAjZGVmaW5lIFVTQUJMRV9GSU9OUkVBRCAxCnwg I2RlZmluZSBVU0FCTEVfU0lHSU8gMQp8ICNkZWZpbmUgQ09QWVJJR0hUICJDb3B5cmlnaHQg KEMpIDIwMjMgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuIgp8ICNkZWZpbmUgVEVS TV9IRUFERVIgImd0a3V0aWwuaCIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR1VSQVRJT04gIng4 Nl82NC1wYy1saW51eC1nbnUiCnwgI2RlZmluZSBFTUFDU19DT05GSUdfT1BUSU9OUyAiIgp8 ICNkZWZpbmUgSEFWRV9YX1dJTkRPV1MgMQp8ICNkZWZpbmUgSEFWRV9YMTEgMQp8ICNkZWZp bmUgSEFWRV9TVFJVQ1RfQVRUUklCVVRFX0FMSUdORUQgMQp8ICNkZWZpbmUgSEFWRV9UWVBF T0YgMQp8ICNkZWZpbmUgSEFWRV9TVEFURU1FTlRfRVhQUkVTU0lPTlMgMQp8ICNkZWZpbmUg TUFMTE9DXzBfSVNfTk9OTlVMTCAxCnwgI2RlZmluZSBIQVZFX1NZU19BQ0xfSCAxCnwgI2Rl ZmluZSBIQVZFX0FDTF9HRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRkQgMQp8 ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZE IDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZSRUUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9N T0RFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZST01fVEVYVCAxCnwgI2RlZmluZSBIQVZFX0FD TF9ERUxFVEVfREVGX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRVhURU5ERURfRklMRSAx CnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8IC8qIERlZmluZSBhY2xfY29weV9leHRfbmF0 aXZlIHRvIGFuIGlubm9jdW91cyB2YXJpYW50LCBpbiBjYXNlIDxsaW1pdHMuaD4gZGVjbGFy ZXMgYWNsX2NvcHlfZXh0X25hdGl2ZS4KfCAgICBGb3IgZXhhbXBsZSwgSFAtVVggMTFpIDxs aW1pdHMuaD4gZGVjbGFyZXMgZ2V0dGltZW9mZGF5LiAgKi8KfCAjZGVmaW5lIGFjbF9jb3B5 X2V4dF9uYXRpdmUgaW5ub2N1b3VzX2FjbF9jb3B5X2V4dF9uYXRpdmUKfCAKfCAvKiBTeXN0 ZW0gaGVhZGVyIHRvIGRlZmluZSBfX3N0dWIgbWFjcm9zIGFuZCBob3BlZnVsbHkgZmV3IHBy b3RvdHlwZXMsCnwgICAgd2hpY2ggY2FuIGNvbmZsaWN0IHdpdGggY2hhciBhY2xfY29weV9l eHRfbmF0aXZlICgpOyBiZWxvdy4gICovCnwgCnwgI2luY2x1ZGUgPGxpbWl0cy5oPgp8ICN1 bmRlZiBhY2xfY29weV9leHRfbmF0aXZlCnwgCnwgLyogT3ZlcnJpZGUgYW55IEdDQyBpbnRl cm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuCnwgICAgVXNlIGNoYXIgYmVjYXVz ZSBpbnQgbWlnaHQgbWF0Y2ggdGhlIHJldHVybiB0eXBlIG9mIGEgR0NDCnwgICAgYnVpbHRp biBhbmQgdGhlbiBpdHMgYXJndW1lbnQgcHJvdG90eXBlIHdvdWxkIHN0aWxsIGFwcGx5LiAg Ki8KfCAjaWZkZWYgX19jcGx1c3BsdXMKfCBleHRlcm4gIkMiCnwgI2VuZGlmCnwgY2hhciBh Y2xfY29weV9leHRfbmF0aXZlICgpOwp8IC8qIFRoZSBHTlUgQyBsaWJyYXJ5IGRlZmluZXMg dGhpcyBmb3IgZnVuY3Rpb25zIHdoaWNoIGl0IGltcGxlbWVudHMKfCAgICAgdG8gYWx3YXlz IGZhaWwgd2l0aCBFTk9TWVMuICBTb21lIGZ1bmN0aW9ucyBhcmUgYWN0dWFsbHkgbmFtZWQK fCAgICAgc29tZXRoaW5nIHN0YXJ0aW5nIHdpdGggX18gYW5kIHRoZSBub3JtYWwgbmFtZSBp cyBhbiBhbGlhcy4gICovCnwgI2lmIGRlZmluZWQgX19zdHViX2FjbF9jb3B5X2V4dF9uYXRp dmUgfHwgZGVmaW5lZCBfX3N0dWJfX19hY2xfY29weV9leHRfbmF0aXZlCnwgY2hva2UgbWUK fCAjZW5kaWYKfCAKfCBpbnQKfCBtYWluICh2b2lkKQp8IHsKfCByZXR1cm4gYWNsX2NvcHlf ZXh0X25hdGl2ZSAoKTsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjI1NDMy OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToyNTQzODogY2hlY2tpbmcgZm9yIGFjbF9jcmVhdGVf ZW50cnlfbnAKY29uZmlndXJlOjI1NDM4OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAg IGNvbmZ0ZXN0LmMgLWxhY2wgICA+JjUgCi91c3IvYmluL2xkOiAvdG1wL2NjeVNGa0FpLm86 IGluIGZ1bmN0aW9uIGBtYWluJzoKL2FwcC9lbWFjcy9jb25mdGVzdC5jOjMzNjogdW5kZWZp bmVkIHJlZmVyZW5jZSB0byBgYWNsX2NyZWF0ZV9lbnRyeV9ucCcKY29sbGVjdDI6IGVycm9y OiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVzCmNvbmZpZ3VyZToyNTQzODogJD8gPSAxCmNv 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 IDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VYVEVOREVEX0ZJTEUgMQp8IC8qIGVuZCBjb25mZGVm cy5oLiAgKi8KfCAvKiBEZWZpbmUgYWNsX2NyZWF0ZV9lbnRyeV9ucCB0byBhbiBpbm5vY3Vv dXMgdmFyaWFudCwgaW4gY2FzZSA8bGltaXRzLmg+IGRlY2xhcmVzIGFjbF9jcmVhdGVfZW50 cnlfbnAuCnwgICAgRm9yIGV4YW1wbGUsIEhQLVVYIDExaSA8bGltaXRzLmg+IGRlY2xhcmVz IGdldHRpbWVvZmRheS4gICovCnwgI2RlZmluZSBhY2xfY3JlYXRlX2VudHJ5X25wIGlubm9j dW91c19hY2xfY3JlYXRlX2VudHJ5X25wCnwgCnwgLyogU3lzdGVtIGhlYWRlciB0byBkZWZp bmUgX19zdHViIG1hY3JvcyBhbmQgaG9wZWZ1bGx5IGZldyBwcm90b3R5cGVzLAp8ICAgIHdo aWNoIGNhbiBjb25mbGljdCB3aXRoIGNoYXIgYWNsX2NyZWF0ZV9lbnRyeV9ucCAoKTsgYmVs b3cuICAqLwp8IAp8ICNpbmNsdWRlIDxsaW1pdHMuaD4KfCAjdW5kZWYgYWNsX2NyZWF0ZV9l bnRyeV9ucAp8IAp8IC8qIE92ZXJyaWRlIGFueSBHQ0MgaW50ZXJuYWwgcHJvdG90eXBlIHRv IGF2b2lkIGFuIGVycm9yLgp8ICAgIFVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNo IHRoZSByZXR1cm4gdHlwZSBvZiBhIEdDQwp8ICAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFy Z3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCnwgI2lmZGVmIF9fY3Bs dXNwbHVzCnwgZXh0ZXJuICJDIgp8ICNlbmRpZgp8IGNoYXIgYWNsX2NyZWF0ZV9lbnRyeV9u cCAoKTsKfCAvKiBUaGUgR05VIEMgbGlicmFyeSBkZWZpbmVzIHRoaXMgZm9yIGZ1bmN0aW9u cyB3aGljaCBpdCBpbXBsZW1lbnRzCnwgICAgIHRvIGFsd2F5cyBmYWlsIHdpdGggRU5PU1lT LiAgU29tZSBmdW5jdGlvbnMgYXJlIGFjdHVhbGx5IG5hbWVkCnwgICAgIHNvbWV0aGluZyBz dGFydGluZyB3aXRoIF9fIGFuZCB0aGUgbm9ybWFsIG5hbWUgaXMgYW4gYWxpYXMuICAqLwp8 ICNpZiBkZWZpbmVkIF9fc3R1Yl9hY2xfY3JlYXRlX2VudHJ5X25wIHx8IGRlZmluZWQgX19z dHViX19fYWNsX2NyZWF0ZV9lbnRyeV9ucAp8IGNob2tlIG1lCnwgI2VuZGlmCnwgCnwgaW50 CnwgbWFpbiAodm9pZCkKfCB7CnwgcmV0dXJuIGFjbF9jcmVhdGVfZW50cnlfbnAgKCk7Cnwg ICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToyNTQzODogcmVzdWx0OiBubwpjb25m aWd1cmU6MjU0NDQ6IGNoZWNraW5nIGZvciBhY2xfdG9fc2hvcnRfdGV4dApjb25maWd1cmU6 MjU0NDQ6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAtbGFjbCAg ID4mNSAKL3Vzci9iaW4vbGQ6IC90bXAvY2NaMFVmSkUubzogaW4gZnVuY3Rpb24gYG1haW4n OgovYXBwL2VtYWNzL2NvbmZ0ZXN0LmM6MzM2OiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBh Y2xfdG9fc2hvcnRfdGV4dCcKY29sbGVjdDI6IGVycm9yOiBsZCByZXR1cm5lZCAxIGV4aXQg c3RhdHVzCmNvbmZpZ3VyZToyNTQ0NDogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dy 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 X0VYVEVOREVEX0ZJTEUgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAvKiBEZWZpbmUg YWNsX3RvX3Nob3J0X3RleHQgdG8gYW4gaW5ub2N1b3VzIHZhcmlhbnQsIGluIGNhc2UgPGxp bWl0cy5oPiBkZWNsYXJlcyBhY2xfdG9fc2hvcnRfdGV4dC4KfCAgICBGb3IgZXhhbXBsZSwg SFAtVVggMTFpIDxsaW1pdHMuaD4gZGVjbGFyZXMgZ2V0dGltZW9mZGF5LiAgKi8KfCAjZGVm aW5lIGFjbF90b19zaG9ydF90ZXh0IGlubm9jdW91c19hY2xfdG9fc2hvcnRfdGV4dAp8IAp8 IC8qIFN5c3RlbSBoZWFkZXIgdG8gZGVmaW5lIF9fc3R1YiBtYWNyb3MgYW5kIGhvcGVmdWxs eSBmZXcgcHJvdG90eXBlcywKfCAgICB3aGljaCBjYW4gY29uZmxpY3Qgd2l0aCBjaGFyIGFj bF90b19zaG9ydF90ZXh0ICgpOyBiZWxvdy4gICovCnwgCnwgI2luY2x1ZGUgPGxpbWl0cy5o Pgp8ICN1bmRlZiBhY2xfdG9fc2hvcnRfdGV4dAp8IAp8IC8qIE92ZXJyaWRlIGFueSBHQ0Mg aW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLgp8ICAgIFVzZSBjaGFyIGJl Y2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIEdDQwp8ICAgIGJ1 aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBs eS4gICovCnwgI2lmZGVmIF9fY3BsdXNwbHVzCnwgZXh0ZXJuICJDIgp8ICNlbmRpZgp8IGNo YXIgYWNsX3RvX3Nob3J0X3RleHQgKCk7CnwgLyogVGhlIEdOVSBDIGxpYnJhcnkgZGVmaW5l cyB0aGlzIGZvciBmdW5jdGlvbnMgd2hpY2ggaXQgaW1wbGVtZW50cwp8ICAgICB0byBhbHdh eXMgZmFpbCB3aXRoIEVOT1NZUy4gIFNvbWUgZnVuY3Rpb25zIGFyZSBhY3R1YWxseSBuYW1l ZAp8ICAgICBzb21ldGhpbmcgc3RhcnRpbmcgd2l0aCBfXyBhbmQgdGhlIG5vcm1hbCBuYW1l IGlzIGFuIGFsaWFzLiAgKi8KfCAjaWYgZGVmaW5lZCBfX3N0dWJfYWNsX3RvX3Nob3J0X3Rl eHQgfHwgZGVmaW5lZCBfX3N0dWJfX19hY2xfdG9fc2hvcnRfdGV4dAp8IGNob2tlIG1lCnwg I2VuZGlmCnwgCnwgaW50CnwgbWFpbiAodm9pZCkKfCB7CnwgcmV0dXJuIGFjbF90b19zaG9y dF90ZXh0ICgpOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MjU0NDQ6IHJl c3VsdDogbm8KY29uZmlndXJlOjI1NDUwOiBjaGVja2luZyBmb3IgYWNsX2ZyZWVfdGV4dApj b25maWd1cmU6MjU0NTA6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3Qu YyAtbGFjbCAgID4mNSAKL3Vzci9iaW4vbGQ6IC90bXAvY2NwNG9nNTAubzogaW4gZnVuY3Rp b24gYG1haW4nOgovYXBwL2VtYWNzL2NvbmZ0ZXN0LmM6MzM2OiB1bmRlZmluZWQgcmVmZXJl bmNlIHRvIGBhY2xfZnJlZV90ZXh0Jwpjb2xsZWN0MjogZXJyb3I6IGxkIHJldHVybmVkIDEg ZXhpdCBzdGF0dXMKY29uZmlndXJlOjI1NDUwOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQg 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 RV9BQ0xfRVhURU5ERURfRklMRSAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8IC8qIERl ZmluZSBhY2xfZnJlZV90ZXh0IHRvIGFuIGlubm9jdW91cyB2YXJpYW50LCBpbiBjYXNlIDxs aW1pdHMuaD4gZGVjbGFyZXMgYWNsX2ZyZWVfdGV4dC4KfCAgICBGb3IgZXhhbXBsZSwgSFAt VVggMTFpIDxsaW1pdHMuaD4gZGVjbGFyZXMgZ2V0dGltZW9mZGF5LiAgKi8KfCAjZGVmaW5l IGFjbF9mcmVlX3RleHQgaW5ub2N1b3VzX2FjbF9mcmVlX3RleHQKfCAKfCAvKiBTeXN0ZW0g aGVhZGVyIHRvIGRlZmluZSBfX3N0dWIgbWFjcm9zIGFuZCBob3BlZnVsbHkgZmV3IHByb3Rv dHlwZXMsCnwgICAgd2hpY2ggY2FuIGNvbmZsaWN0IHdpdGggY2hhciBhY2xfZnJlZV90ZXh0 ICgpOyBiZWxvdy4gICovCnwgCnwgI2luY2x1ZGUgPGxpbWl0cy5oPgp8ICN1bmRlZiBhY2xf ZnJlZV90ZXh0CnwgCnwgLyogT3ZlcnJpZGUgYW55IEdDQyBpbnRlcm5hbCBwcm90b3R5cGUg dG8gYXZvaWQgYW4gZXJyb3IuCnwgICAgVXNlIGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0 Y2ggdGhlIHJldHVybiB0eXBlIG9mIGEgR0NDCnwgICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMg YXJndW1lbnQgcHJvdG90eXBlIHdvdWxkIHN0aWxsIGFwcGx5LiAgKi8KfCAjaWZkZWYgX19j cGx1c3BsdXMKfCBleHRlcm4gIkMiCnwgI2VuZGlmCnwgY2hhciBhY2xfZnJlZV90ZXh0ICgp Owp8IC8qIFRoZSBHTlUgQyBsaWJyYXJ5IGRlZmluZXMgdGhpcyBmb3IgZnVuY3Rpb25zIHdo aWNoIGl0IGltcGxlbWVudHMKfCAgICAgdG8gYWx3YXlzIGZhaWwgd2l0aCBFTk9TWVMuICBT b21lIGZ1bmN0aW9ucyBhcmUgYWN0dWFsbHkgbmFtZWQKfCAgICAgc29tZXRoaW5nIHN0YXJ0 aW5nIHdpdGggX18gYW5kIHRoZSBub3JtYWwgbmFtZSBpcyBhbiBhbGlhcy4gICovCnwgI2lm IGRlZmluZWQgX19zdHViX2FjbF9mcmVlX3RleHQgfHwgZGVmaW5lZCBfX3N0dWJfX19hY2xf ZnJlZV90ZXh0CnwgY2hva2UgbWUKfCAjZW5kaWYKfCAKfCBpbnQKfCBtYWluICh2b2lkKQp8 IHsKfCByZXR1cm4gYWNsX2ZyZWVfdGV4dCAoKTsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0K Y29uZmlndXJlOjI1NDUwOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToyNTQ1OTogY2hlY2tpbmcg Zm9yIHdvcmtpbmcgYWNsX2dldF9maWxlCmNvbmZpZ3VyZToyNTQ4MjogZ2NjIC1vIGNvbmZ0 ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jIC1sYWNsICAgPiY1IApjb25maWd1cmU6MjU0 ODI6ICQ/ID0gMApjb25maWd1cmU6MjU0OTM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNTUw MTogY2hlY2tpbmcgZm9yIGFjbC9saWJhY2wuaApjb25maWd1cmU6MjU1MDE6IGdjYyAtYyAt ZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyNTUwMTogJD8gPSAwCmNvbmZp Z3VyZToyNTUwMTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI1NTE5OiBjaGVja2luZyBmb3Ig YWNsX2VudHJpZXMKY29uZmlndXJlOjI1NTE5OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAg ICAgIGNvbmZ0ZXN0LmMgLWxhY2wgICA+JjUgCmNvbmZpZ3VyZToyNTUxOTogJD8gPSAwCmNv bmZpZ3VyZToyNTUxOTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI1NTMyOiBjaGVja2luZyBm b3IgQUNMX0ZJUlNUX0VOVFJZCmNvbmZpZ3VyZToyNTU1MTogZ2NjIC1jIC1nMyAtTzIgICAg Y29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjI1NTUxOiAkPyA9IDAKY29uZmlndXJlOjI1NTU5 OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjU1NjY6IGNoZWNraW5nIGZvciBBQ0xfVFlQRV9F WFRFTkRFRApjb25maWd1cmU6MjU1ODU6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMg PiY1CmNvbmZ0ZXN0LmM6MzE0OjEyOiBlcnJvcjogJ0FDTF9UWVBFX0VYVEVOREVEJyB1bmRl Y2xhcmVkIGhlcmUgKG5vdCBpbiBhIGZ1bmN0aW9uKQogIDMxNCB8IGludCB0eXBlID0gQUNM X1RZUEVfRVhURU5ERUQ7CiAgICAgIHwgICAgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fgpj b25maWd1cmU6MjU1ODU6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoK fCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIK fCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZF UlNJT04gIjMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDMw LjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUu b3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHBzOi8vd3d3LmdudS5vcmcvc29mdHdh cmUvZW1hY3MvIgp8ICNkZWZpbmUgSEFWRV9QRFVNUEVSIDEKfCAjZGVmaW5lIEhBVkVfU1RE SU9fSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5H X0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5U X0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RB VF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklT VERfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9G U19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lT SU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVT T1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFW RV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklU SVpFUl9MU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0FTQU5f SU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQ09NTU9OX0lOVEVSRkFD RV9ERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFW RV9FWEVDSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfVkZTX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19DREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmlu ZSBIQVZFX0lFRUU3NTRfSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1JBTkRPTV9IIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2Rl ZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVm aW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9IUFVYX0FMVF9YT1BFTl9TT0NLRVRfQVBJ IDEKfCAjZGVmaW5lIF9ORVRCU0RfU09VUkNFIDEKfCAjZGVmaW5lIF9PUEVOQlNEX1NPVVJD RSAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX19T VERDX1dBTlRfSUVDXzYwNTU5X0FUVFJJQlNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dB TlRfSUVDXzYwNTU5X0JGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1 NTlfREZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9FWFRfXyAx CnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRlVOQ1NfRVhUX18gMQp8ICNkZWZp bmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X1RZUEVTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1RE Q19XQU5UX0xJQl9FWFQyX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfTUFUSF9TUEVDX0ZV TkNTX18gMQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19FWFRFTlNJ T05TX18gMQp8ICNkZWZpbmUgR0NDX0xJTlQgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdu dS9saW51eCIKfCAjZGVmaW5lIEhBVkVfU1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhB VkVfQUxTQSAxCnwgI2RlZmluZSBIQVZFX1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09O QUxJVFlfQUREUl9OT19SQU5ET01JWkUgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZP IDEKfCAjZGVmaW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1f SCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZf SCAxCnwgI2RlZmluZSBIQVZFX0lGQUREUlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9J RlJFUV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQURE UiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmlu ZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RS VUNUX0lGUkVRX0lGUl9BRERSIDEKfCAjZGVmaW5lIEhBVkVfU0JSSyAxCnwgI2RlZmluZSBI QVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZF X1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfQ0FOT05J Q0FMSVpFX0ZJTEVfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1JFQUxQQVRIIDEKfCAjZGVmaW5l IEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0RBVCAxCnwgI2RlZmluZSBIQVZF X0xDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVO RElSIDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEK fCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAx CnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1JFQURM SU5LIDEKfCAjZGVmaW5lIEhBVkVfSVNCTEFOSyAxCnwgI2RlZmluZSBIQVZFX0lTV0NUWVBF IDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAx CnwgI2RlZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxF U0laRSAxCnwgI2RlZmluZSBTWVNURU1fTUFMTE9DIDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAx CnwgI2RlZmluZSBIQVZFX1BUSFJFQUQgMQp8ICNkZWZpbmUgVEhSRUFEU19FTkFCTEVEIDEK fCAjZGVmaW5lIEhBVkVfWEtCIDEKfCAjZGVmaW5lIEhBVkVfWEtCUkVGUkVTSEtFWUJPQVJE TUFQUElORyAxCnwgI2RlZmluZSBIQVZFX1hLQkZSRUVOQU1FUyAxCnwgI2RlZmluZSBIQVZF X1hSTVNFVERBVEFCQVNFIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RSSU5H IDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhB VkVfWERJU1BMQVlDRUxMUyAxCnwgI2RlZmluZSBIQVZFX1hERVNUUk9ZU1VCV0lORE9XUyAx CnwgI2RlZmluZSBIQVZFX1gxMVI2IDEKfCAjZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVm aW5lIEhBVkVfWElDQ0FMTEJBQ0tfQ0FMTEJBQ0sgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9Y SU0gMQp8ICNkZWZpbmUgSEFWRV9SU1ZHIDEKfCAjZGVmaW5lIEhBVkVfV0VCUCAxCnwgI2Rl ZmluZSBIQVZFX1NRTElURTMgMQp8ICNkZWZpbmUgSEFWRV9TUUxJVEUzX0xPQURfRVhURU5T SU9OIDEKfCAjZGVmaW5lIEhBVkVfR0VUQUREUklORk9fQSAxCnwgI2RlZmluZSBIQVZFX0dU SzMgMQp8ICNkZWZpbmUgR0RLX0RJU0FCTEVfREVQUkVDQVRJT05fV0FSTklOR1MgMQp8ICNk ZWZpbmUgR0xJQl9ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIFVT RV9HVEsgMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfVFJJTSAxCnwgI2RlZmluZSBIQVZFX0RC VVMgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5l IEhBVkVfREJVU19UWVBFX0lTX1ZBTElEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFU RV9CVVNfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfUEFUSCAxCnwgI2Rl ZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfSU5URVJGQUNFIDEKfCAjZGVmaW5lIEhBVkVfREJV U19WQUxJREFURV9NRU1CRVIgMQp8ICNkZWZpbmUgSEFWRV9HU0VUVElOR1MgMQp8ICNkZWZp bmUgSEFWRV9MSUJTRUxJTlVYIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5l IEhBVkVfTElCU1lTVEVNRCAxCnwgI2RlZmluZSBIQVZFX0pTT04gMQp8ICNkZWZpbmUgSEFW RV9JTk9USUZZIDEKfCAjZGVmaW5lIFVTRV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBVU0Vf VE9PTEtJVF9TQ1JPTExfQkFSUyAxCnwgI2RlZmluZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBV U0VfWElNIDEKfCAjZGVmaW5lIEhBVkVfWFJFTkRFUiAxCnwgI2RlZmluZSBVU0VfQ0FJUk9f WENCIDEKfCAjZGVmaW5lIFVTRV9DQUlSTyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEK fCAjZGVmaW5lIEhBVkVfRlRfRkFDRV9HRVRDSEFSVkFSSUFOVElOREVYIDEKfCAjZGVmaW5l IEhBVkVfTElCT1RGIDEKfCAjZGVmaW5lIEhBVkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZUEhT IDEKfCAjZGVmaW5lIEhBVkVfTTE3Tl9GTFQgMQp8ICNkZWZpbmUgSEFWRV9IQVJGQlVaWiAx CnwgI2RlZmluZSBVU0VfWENCIDEKfCAjZGVmaW5lIEhBVkVfWFBNIDEKfCAjZGVmaW5lIEhB VkVfSlBFRyAxCnwgI2RlZmluZSBIQVZFX0xDTVMyIDEKfCAjZGVmaW5lIEhBVkVfWkxJQiAx CnwgI2RlZmluZSBEWU5BTUlDX0xJQl9TVUZGSVggIi5zbyIKfCAjZGVmaW5lIERZTkFNSUNf TElCX1NFQ09OREFSWV9TVUZGSVggIiIKfCAjZGVmaW5lIEhBVkVfRExBRERSIDEKfCAjZGVm aW5lIEhBVkVfTU9EVUxFUyAxCnwgI2RlZmluZSBNT0RVTEVTX1NVRkZJWCAiLnNvIgp8ICNk ZWZpbmUgTkFUSVZFX0VMSVNQX1NVRkZJWCAiLmVsbiIKfCAjZGVmaW5lIEhBVkVfUE5HIDEK fCAjZGVmaW5lIEhBVkVfVElGRiAxCnwgI2RlZmluZSBIQVZFX0dJRiAxCnwgI2RlZmluZSBI QVZFX0dQTSAxCnwgI2RlZmluZSBIQVZFX1hfU00gMQp8ICNkZWZpbmUgSEFWRV9YUkFORFIg MQp8ICNkZWZpbmUgSEFWRV9YSU5FUkFNQSAxCnwgI2RlZmluZSBIQVZFX1hGSVhFUyAxCnwg I2RlZmluZSBIQVZFX1hJTlBVVDIgMQp8ICNkZWZpbmUgSEFWRV9YSVNDUk9MTENMQVNTSU5G T19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWElUT1VDSENMQVNTSU5GT19UWVBFIDEKfCAjZGVm aW5lIEhBVkVfWElCQVJSSUVSUkVMRUFTRVBPSU5URVJJTkZPX0RFVklDRUlEIDEKfCAjZGVm aW5lIEhBVkVfWElHRVNUVVJFQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YU1lO QyAxCnwgI2RlZmluZSBIQVZFX1hTWU5DVFJJR0dFUkZFTkNFIDEKfCAjZGVmaW5lIEhBVkVf WERCRSAxCnwgI2RlZmluZSBIQVZFX1hDQl9TSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hTSEFQ RSAxCnwgI2RlZmluZSBIQVZFX1hDT01QT1NJVEUgMQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwy IDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU0VDQ09NUF9IIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9TRUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09N UF9GSUxURVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZJTFRFUl9IIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfU0VDQ09NUF9GSUxURVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBTSVpF T0ZfTE9ORyA4CnwgI2RlZmluZSBIQVZFX0FDQ0VQVDQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hE SVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJV U0FHRSAxCnwgI2RlZmluZSBIQVZFX0dFVF9DVVJSRU5UX0RJUl9OQU1FIDEKfCAjZGVmaW5l IEhBVkVfTFJBTkQ0OCAxCnwgI2RlZmluZSBIQVZFX1JBTkRPTSAxCnwgI2RlZmluZSBIQVZF X1JJTlQgMQp8ICNkZWZpbmUgSEFWRV9UUlVOQyAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAx CnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxF IDEKfCAjZGVmaW5lIEhBVkVfTkVXTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlU IDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04g MQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJT SUdOQUwgMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9TRU5E VE8gMQp8ICNkZWZpbmUgSEFWRV9SRUNWRlJPTSAxCnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tO QU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVJ RkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfR0FJX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVf U1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EUFdF TlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0VOREdSRU5U IDEKfCAjZGVmaW5lIEhBVkVfUkVOQU1FQVQyIDEKfCAjZGVmaW5lIEhBVkVfQ0ZNQUtFUkFX IDEKfCAjZGVmaW5lIEhBVkVfQ0ZTRVRTUEVFRCAxCnwgI2RlZmluZSBIQVZFX19fRVhFQ1VU QUJMRV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9QVEhS RUFEX1NFVE5BTUVfTlAgMQp8ICNkZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9DIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfTUFE VklTRSAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9GUkFNRV9BRERSRVNTIDEKfCAjZGVm aW5lIEhBVkVfX19CVUlMVElOX1VOV0lORF9JTklUIDEKfCAjZGVmaW5lIEhBVkVfRlNFRUtP IDEKfCAjZGVmaW5lIEhBVkVfR1JBTlRQVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBUIDEKfCAj ZGVmaW5lIEhBVkVfUE9TSVhfT1BFTlBUIDEKfCAjZGVmaW5lIFRFUk1JTkZPIDEKfCAjZGVm aW5lIFRFUk1JTkZPX0RFRklORVNfQkMgMQp8ICNkZWZpbmUgSEFWRV9USU1FUkZEIDEKfCAj ZGVmaW5lIEhBVkVfVkFMR1JJTkRfVkFMR1JJTkRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVD VF9VTklQQUlSX1VOSUNPREUgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAj ZGVmaW5lIEhBVkVfV09SS0lOR19GT1JLIDEKfCAjZGVmaW5lIEhBVkVfU05QUklOVEYgMQp8 ICNkZWZpbmUgSEFWRV9TUEFXTl9IIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV04gMQp8 ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTl9GSUxFX0FDVElPTlNfQUREQ0hESVJfTlAgMQp8 ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTkFUVFJfU0VURkxBR1MgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX1BPU0lYX1NQQVdOX1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX0dMSUIgMQp8ICNk ZWZpbmUgSEFWRV9MQU5HSU5GT19DT0RFU0VUIDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lORk9f X05MX1BBUEVSX1dJRFRIIDEKfCAjZGVmaW5lIEhBVkVfTUJTVEFURV9UIDEKfCAjZGVmaW5l IEFNUEVSU0FORF9GVUxMX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9QVFlTIDEKfCAjZGVmaW5l IEhBVkVfU09DS0VUUyAxCnwgI2RlZmluZSBOVUxMX0RFVklDRSAiL2Rldi9udWxsIgp8ICNk ZWZpbmUgU0VQQ0hBUiAnOicKfCAjZGVmaW5lIHN1YnByb2Nlc3NlcyAxCnwgI2RlZmluZSBV U0VSX0ZVTExfTkFNRSBwdy0+cHdfZ2Vjb3MKfCAjZGVmaW5lIERJUkVDVE9SWV9TRVAgJy8n CnwgI2RlZmluZSBJU19ERVZJQ0VfU0VQKF9jXykgMAp8ICNkZWZpbmUgSVNfRElSRUNUT1JZ X1NFUChfY18pICgoX2NfKSA9PSBESVJFQ1RPUllfU0VQKQp8ICNkZWZpbmUgSVNfQU5ZX1NF UChfY18pIChJU19ESVJFQ1RPUllfU0VQIChfY18pKQp8ICNkZWZpbmUgSEFWRV9QUk9DRlMg MQp8ICNkZWZpbmUgREVGQVVMVF9TT1VORF9ERVZJQ0UgIi9kZXYvZHNwIgp8ICNkZWZpbmUg SU5URVJSVVBUX0lOUFVUIDEKfCAjZGVmaW5lIE5BUlJPV1BST1RPIDEKfCAjZGVmaW5lIFVO SVg5OF9QVFlTIDEKfCAjZGVmaW5lIFBUWV9JVEVSQVRJT04gaW50IGk7IGZvciAoaSA9IDA7 IGkgPCAxOyBpKyspCnwgI2RlZmluZSBQVFlfVFRZX05BTUVfU1BSSU5URiB7IGNoYXIgKnB0 eW5hbWUgPSAwOyBzaWdzZXRfdCBibG9ja2VkOyBzaWdlbXB0eXNldCAoJmJsb2NrZWQpOyBz aWdhZGRzZXQgKCZibG9ja2VkLCBTSUdDSExEKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfQkxP Q0ssICZibG9ja2VkLCAwKTsgaWYgKGdyYW50cHQgKGZkKSAhPSAtMSAmJiB1bmxvY2twdCAo ZmQpICE9IC0xKSBwdHluYW1lID0gcHRzbmFtZShmZCk7IHB0aHJlYWRfc2lnbWFzayAoU0lH X1VOQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKCFwdHluYW1lKSB7IGVtYWNzX2Nsb3NlIChm ZCk7IHJldHVybiAtMTsgfSBzbnByaW50ZiAocHR5X25hbWUsIFBUWV9OQU1FX1NJWkUsICIl cyIsIHB0eW5hbWUpOyB9CnwgI2RlZmluZSBQVFlfT1BFTiBkbyB7IGZkID0gcG9zaXhfb3Bl bnB0IChPX1JEV1IgfCBPX0NMT0VYRUMgfCBPX05PQ1RUWSk7IGlmIChmZCA8IDAgJiYgZXJy bm8gPT0gRUlOVkFMKSBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19OT0NUVFkpOyB9 IHdoaWxlIChmYWxzZSkKfCAjZGVmaW5lIFBUWV9OQU1FX1NQUklOVEYgLyoqLwp8ICNkZWZp bmUgU0lHTkFMU19WSUFfQ0hBUkFDVEVSUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1Mg MQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfX1NFVEpNUCAx CnwgI2RlZmluZSBIQVZFX1NJR1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NUQUNLX09WRVJG TE9XX0hBTkRMSU5HIDEKfCAjZGVmaW5lIFVTRyAvKiovCnwgI2RlZmluZSBHTlVfTElOVVgg LyoqLwp8ICNkZWZpbmUgU0laRU9GX1NQRUVEX1QgNAp8ICNkZWZpbmUgVVNBQkxFX0ZJT05S RUFEIDEKfCAjZGVmaW5lIFVTQUJMRV9TSUdJTyAxCnwgI2RlZmluZSBDT1BZUklHSFQgIkNv cHlyaWdodCAoQykgMjAyMyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4iCnwgI2Rl ZmluZSBURVJNX0hFQURFUiAiZ3RrdXRpbC5oIgp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHVVJB VElPTiAieDg2XzY0LXBjLWxpbnV4LWdudSIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR19PUFRJ T05TICIiCnwgI2RlZmluZSBIQVZFX1hfV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gxMSAx CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9BVFRSSUJVVEVfQUxJR05FRCAxCnwgI2RlZmluZSBI QVZFX1RZUEVPRiAxCnwgI2RlZmluZSBIQVZFX1NUQVRFTUVOVF9FWFBSRVNTSU9OUyAxCnwg I2RlZmluZSBNQUxMT0NfMF9JU19OT05OVUxMIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0FDTF9I IDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dF VF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FD TF9TRVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJFRSAxCnwgI2RlZmluZSBIQVZFX0FD TF9GUk9NX01PREUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9URVhUIDEKfCAjZGVmaW5l IEhBVkVfQUNMX0RFTEVURV9ERUZfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9FWFRFTkRF RF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0xJQkFDTF9IIDEKfCAjZGVmaW5lIEhBVkVf QUNMX0VOVFJJRVMgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRklSU1RfRU5UUlkgMQp8IC8qIGVu ZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgI2luY2x1ZGUg PHN5cy9hY2wuaD4KfCBpbnQgdHlwZSA9IEFDTF9UWVBFX0VYVEVOREVEOwp8IGludAp8IG1h aW4gKHZvaWQpCnwgewp8IAp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MjU1 OTM6IHJlc3VsdDogbm8KY29uZmlndXJlOjI1Nzc1OiBjaGVja2luZyBmb3Igd29ya2luZyBh bGxvY2EuaApjb25maWd1cmU6MjU3OTM6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAg Y29uZnRlc3QuYyAgID4mNSAKY29uZmlndXJlOjI1NzkzOiAkPyA9IDAKY29uZmlndXJlOjI1 ODAyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjU4MTA6IGNoZWNraW5nIGZvciBhbGxvY2EK Y29uZmlndXJlOjI1ODU1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjU5Mjc6IGNoZWNraW5n IGZvciBhIHJhY2UtZnJlZSBta2RpciAtcApjb25maWd1cmU6MjU5NzE6IHJlc3VsdDogL3Vz ci9iaW4vbWtkaXIgLXAKY29uZmlndXJlOjI1OTc2OiBjaGVja2luZyB3aGV0aGVyIHRoZSBw cmVwcm9jZXNzb3Igc3VwcG9ydHMgaW5jbHVkZV9uZXh0CmNvbmZpZ3VyZToyNjAxNTogZ2Nj IC1jIC1nMyAtTzIgICAgLUljb25mdGVzdGQxYiAtSWNvbmZ0ZXN0ZDIgY29uZnRlc3QuYyA+ JjUKY29uZmlndXJlOjI2MDE1OiAkPyA9IDAKY29uZmlndXJlOjI2MDM4OiByZXN1bHQ6IHll cwpjb25maWd1cmU6MjYwNjA6IGNoZWNraW5nIHdoZXRoZXIgc291cmNlIGNvZGUgbGluZSBs ZW5ndGggaXMgdW5saW1pdGVkCmNvbmZpZ3VyZToyNjA4NTogcmVzdWx0OiB5ZXMKY29uZmln dXJlOjI2MTgwOiBjaGVja2luZyB3aGV0aGVyIGxzdGF0IGNvcnJlY3RseSBoYW5kbGVzIHRy YWlsaW5nIHNsYXNoCmNvbmZpZ3VyZToyNjIyNzogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIg ICAgICBjb25mdGVzdC5jICAgPiY1IApjb25maWd1cmU6MjYyMjc6ICQ/ID0gMApjb25maWd1 cmU6MjYyMjc6IC4vY29uZnRlc3QKY29uZmlndXJlOjI2MjI3OiAkPyA9IDAKY29uZmlndXJl OjI2MjQwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjYyNTM6IGNoZWNraW5nIHdoZXRoZXIg Ly8gaXMgZGlzdGluY3QgZnJvbSAvCmNvbmZpZ3VyZToyNjI4MzogcmVzdWx0OiBubwpjb25m aWd1cmU6MjYyOTU6IGNoZWNraW5nIHdoZXRoZXIgcmVhbHBhdGggd29ya3MKY29uZmlndXJl OjI2NTA5OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUg CmNvbmZpZ3VyZToyNjUwOTogJD8gPSAwCmNvbmZpZ3VyZToyNjUwOTogLi9jb25mdGVzdApj b25maWd1cmU6MjY1MDk6ICQ/ID0gMApjb25maWd1cmU6MjY1MjY6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZToyNjU0NzogY2hlY2tpbmcgZm9yIGZhY2Nlc3NhdApjb25maWd1cmU6MjY1ODQ6 IGNoZWNraW5nIGZvciBmYWNjZXNzYXQKY29uZmlndXJlOjI2NTg0OiBnY2MgLW8gY29uZnRl c3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCmNvbmZpZ3VyZToyNjU4NDogJD8g PSAwCmNvbmZpZ3VyZToyNjU4NDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI2NTk5OiByZXN1 bHQ6IHllcwpjb25maWd1cmU6MjY2MTc6IGNoZWNraW5nIGZvciBnZXRjd2QKY29uZmlndXJl OjI2NjE3OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUg CmNvbmZpZ3VyZToyNjYxNzogJD8gPSAwCmNvbmZpZ3VyZToyNjYxNzogcmVzdWx0OiB5ZXMK Y29uZmlndXJlOjI2ODI4OiBjaGVja2luZyBmb3IgQy9DKysgcmVzdHJpY3Qga2V5d29yZApj b25maWd1cmU6MjY4NTg6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZp Z3VyZToyNjg1ODogJD8gPSAwCmNvbmZpZ3VyZToyNjg2NzogcmVzdWx0OiBfX3Jlc3RyaWN0 X18KY29uZmlndXJlOjI3MzIwOiBjaGVja2luZyB3aGV0aGVyIGJ5dGUgb3JkZXJpbmcgaXMg YmlnZW5kaWFuCmNvbmZpZ3VyZToyNzMzNjogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3Qu YyA+JjUKY29uZnRlc3QuYzozMjE6MTY6IGVycm9yOiB1bmtub3duIHR5cGUgbmFtZSAnbm90 JwogIDMyMSB8ICAgICAgICAgICAgICAgIG5vdCBhIHVuaXZlcnNhbCBjYXBhYmxlIGNvbXBp bGVyCiAgICAgIHwgICAgICAgICAgICAgICAgXn5+CmNvbmZ0ZXN0LmM6MzIxOjIyOiBlcnJv cjogZXhwZWN0ZWQgJz0nLCAnLCcsICc7JywgJ2FzbScgb3IgJ19fYXR0cmlidXRlX18nIGJl Zm9yZSAndW5pdmVyc2FsJwogIDMyMSB8ICAgICAgICAgICAgICAgIG5vdCBhIHVuaXZlcnNh bCBjYXBhYmxlIGNvbXBpbGVyCiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+ fn5+CmNvbmZ0ZXN0LmM6MzIxOjIyOiBlcnJvcjogdW5rbm93biB0eXBlIG5hbWUgJ3VuaXZl cnNhbCcKY29uZmlndXJlOjI3MzM2OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3Jh bSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUg RW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFD S0FHRV9WRVJTSU9OICIzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBF bWFjcyAzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1h Y3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJodHRwczovL3d3dy5nbnUub3Jn L3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIEhBVkVfUERVTVBFUiAxCnwgI2RlZmluZSBI QVZFX1NURElPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZF X1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZF X1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhB VkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVf TElOVVhfRlNfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1NZU0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1BUWV9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVm aW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1QX0ggMQp8ICNkZWZpbmUgSEFW RV9TQU5JVElaRVJfTFNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpF Ul9BU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0NPTU1PTl9J TlRFUkZBQ0VfREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVm aW5lIEhBVkVfRVhFQ0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1NURElPX0VYVF9IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1ZGU19IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfQ0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8 ICNkZWZpbmUgSEFWRV9JRUVFNzU0X0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NUREJPT0xfSCAx CnwgI2RlZmluZSBIQVZFX1NZU19SQU5ET01fSCAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMg MQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9DX1NPVVJDRSAx CnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBfSFBVWF9BTFRfWE9QRU5fU09D S0VUX0FQSSAxCnwgI2RlZmluZSBfTkVUQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfT1BFTkJT RF9TT1VSQ0UgMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVm aW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9BVFRSSUJTX0VYVF9fIDEKfCAjZGVmaW5lIF9f U1REQ19XQU5UX0lFQ182MDU1OV9CRlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRf SUVDXzYwNTU5X0RGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlf RVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0ZVTkNTX0VYVF9fIDEK fCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9UWVBFU19FWFRfXyAxCnwgI2RlZmlu ZSBfX1NURENfV0FOVF9MSUJfRVhUMl9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX01BVEhf U1BFQ19GVU5DU19fIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVmaW5lIF9f RVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIEdDQ19MSU5UIDEKfCAjZGVmaW5lIFNZU1RFTV9U WVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAxCnwgI2Rl ZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwgI2RlZmluZSBIQVZF X1BFUlNPTkFMSVRZX0FERFJfTk9fUkFORE9NSVpFIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhf U1lTSU5GTyAxCnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUgSEFW RV9URVJNX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVf TkVUX0lGX0ggMQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0ggMQp8ICNkZWZpbmUgSEFWRV9T VFJVQ1RfSUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lG Ul9IV0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX05FVE1BU0sgMQp8 ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAxCnwgI2RlZmluZSBI QVZFX1NUUlVDVF9JRlJFUV9JRlJfQUREUiAxCnwgI2RlZmluZSBIQVZFX1NCUksgMQp8ICNk ZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZp bmUgSEFWRV9WRk9SSyAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZF X0NBTk9OSUNBTElaRV9GSUxFX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9SRUFMUEFUSCAxCnwg I2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EQVQgMQp8ICNkZWZp bmUgSEFWRV9MQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZF X0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9G U1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX1BT RUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFW RV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX0lTQkxBTksgMQp8ICNkZWZpbmUgSEFWRV9J U1dDVFlQRSAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZ TUxJTksgMQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX0dF VERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgU1lTVEVNX01BTExPQyAxCnwgI2RlZmluZSBIQVZF X01NQVAgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEIDEKfCAjZGVmaW5lIFRIUkVBRFNfRU5B QkxFRCAxCnwgI2RlZmluZSBIQVZFX1hLQiAxCnwgI2RlZmluZSBIQVZFX1hLQlJFRlJFU0hL RVlCT0FSRE1BUFBJTkcgMQp8ICNkZWZpbmUgSEFWRV9YS0JGUkVFTkFNRVMgMQp8ICNkZWZp bmUgSEFWRV9YUk1TRVREQVRBQkFTRSAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNPVVJD RVNUUklORyAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJPRlNDUkVFTiAxCnwgI2Rl ZmluZSBIQVZFX1hESVNQTEFZQ0VMTFMgMQp8ICNkZWZpbmUgSEFWRV9YREVTVFJPWVNVQldJ TkRPV1MgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNiAxCnwgI2RlZmluZSBIQVZFX1hfSTE4TiAx CnwgI2RlZmluZSBIQVZFX1hJQ0NBTExCQUNLX0NBTExCQUNLIDEKfCAjZGVmaW5lIEhBVkVf WDExUjZfWElNIDEKfCAjZGVmaW5lIEhBVkVfUlNWRyAxCnwgI2RlZmluZSBIQVZFX1dFQlAg MQp8ICNkZWZpbmUgSEFWRV9TUUxJVEUzIDEKfCAjZGVmaW5lIEhBVkVfU1FMSVRFM19MT0FE X0VYVEVOU0lPTiAxCnwgI2RlZmluZSBIQVZFX0dFVEFERFJJTkZPX0EgMQp8ICNkZWZpbmUg SEFWRV9HVEszIDEKfCAjZGVmaW5lIEdES19ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdT IDEKfCAjZGVmaW5lIEdMSUJfRElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAxCnwgI2Rl ZmluZSBVU0VfR1RLIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX1RSSU0gMQp8ICNkZWZpbmUg SEFWRV9EQlVTIDEKfCAjZGVmaW5lIEhBVkVfREJVU19XQVRDSF9HRVRfVU5JWF9GRCAxCnwg I2RlZmluZSBIQVZFX0RCVVNfVFlQRV9JU19WQUxJRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNf VkFMSURBVEVfQlVTX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX1BBVEgg MQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0lOVEVSRkFDRSAxCnwgI2RlZmluZSBI QVZFX0RCVVNfVkFMSURBVEVfTUVNQkVSIDEKfCAjZGVmaW5lIEhBVkVfR1NFVFRJTkdTIDEK fCAjZGVmaW5lIEhBVkVfTElCU0VMSU5VWCAxCnwgI2RlZmluZSBIQVZFX0dOVVRMUyAxCnwg I2RlZmluZSBIQVZFX0xJQlNZU1RFTUQgMQp8ICNkZWZpbmUgSEFWRV9KU09OIDEKfCAjZGVm aW5lIEhBVkVfSU5PVElGWSAxCnwgI2RlZmluZSBVU0VfRklMRV9OT1RJRlkgMQp8ICNkZWZp bmUgVVNFX1RPT0xLSVRfU0NST0xMX0JBUlMgMQp8ICNkZWZpbmUgSEFWRV9YSU0gMQp8ICNk ZWZpbmUgVVNFX1hJTSAxCnwgI2RlZmluZSBIQVZFX1hSRU5ERVIgMQp8ICNkZWZpbmUgVVNF X0NBSVJPX1hDQiAxCnwgI2RlZmluZSBVU0VfQ0FJUk8gMQp8ICNkZWZpbmUgSEFWRV9GUkVF VFlQRSAxCnwgI2RlZmluZSBIQVZFX0ZUX0ZBQ0VfR0VUQ0hBUlZBUklBTlRJTkRFWCAxCnwg I2RlZmluZSBIQVZFX0xJQk9URiAxCnwgI2RlZmluZSBIQVZFX09URl9HRVRfVkFSSUFUSU9O X0dMWVBIUyAxCnwgI2RlZmluZSBIQVZFX00xN05fRkxUIDEKfCAjZGVmaW5lIEhBVkVfSEFS RkJVWlogMQp8ICNkZWZpbmUgVVNFX1hDQiAxCnwgI2RlZmluZSBIQVZFX1hQTSAxCnwgI2Rl ZmluZSBIQVZFX0pQRUcgMQp8ICNkZWZpbmUgSEFWRV9MQ01TMiAxCnwgI2RlZmluZSBIQVZF X1pMSUIgMQp8ICNkZWZpbmUgRFlOQU1JQ19MSUJfU1VGRklYICIuc28iCnwgI2RlZmluZSBE WU5BTUlDX0xJQl9TRUNPTkRBUllfU1VGRklYICIiCnwgI2RlZmluZSBIQVZFX0RMQUREUiAx CnwgI2RlZmluZSBIQVZFX01PRFVMRVMgMQp8ICNkZWZpbmUgTU9EVUxFU19TVUZGSVggIi5z byIKfCAjZGVmaW5lIE5BVElWRV9FTElTUF9TVUZGSVggIi5lbG4iCnwgI2RlZmluZSBIQVZF X1BORyAxCnwgI2RlZmluZSBIQVZFX1RJRkYgMQp8ICNkZWZpbmUgSEFWRV9HSUYgMQp8ICNk ZWZpbmUgSEFWRV9HUE0gMQp8ICNkZWZpbmUgSEFWRV9YX1NNIDEKfCAjZGVmaW5lIEhBVkVf WFJBTkRSIDEKfCAjZGVmaW5lIEhBVkVfWElORVJBTUEgMQp8ICNkZWZpbmUgSEFWRV9YRklY RVMgMQp8ICNkZWZpbmUgSEFWRV9YSU5QVVQyIDEKfCAjZGVmaW5lIEhBVkVfWElTQ1JPTExD TEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hJVE9VQ0hDTEFTU0lORk9fVFlQRSAx CnwgI2RlZmluZSBIQVZFX1hJQkFSUklFUlJFTEVBU0VQT0lOVEVSSU5GT19ERVZJQ0VJRCAx CnwgI2RlZmluZSBIQVZFX1hJR0VTVFVSRUNMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhB VkVfWFNZTkMgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQ1RSSUdHRVJGRU5DRSAxCnwgI2RlZmlu ZSBIQVZFX1hEQkUgMQp8ICNkZWZpbmUgSEFWRV9YQ0JfU0hBUEUgMQp8ICNkZWZpbmUgSEFW RV9YU0hBUEUgMQp8ICNkZWZpbmUgSEFWRV9YQ09NUE9TSVRFIDEKfCAjZGVmaW5lIEhBVkVf TElCWE1MMiAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX1NFQ0NPTVBfSCAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X1NFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GSUxU RVJfSCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZp bmUgU0laRU9GX0xPTkcgOAp8ICNkZWZpbmUgSEFWRV9BQ0NFUFQ0IDEKfCAjZGVmaW5lIEhB VkVfRkNIRElSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFW RV9HRVRSVVNBR0UgMQp8ICNkZWZpbmUgSEFWRV9HRVRfQ1VSUkVOVF9ESVJfTkFNRSAxCnwg I2RlZmluZSBIQVZFX0xSQU5ENDggMQp8ICNkZWZpbmUgSEFWRV9SQU5ET00gMQp8ICNkZWZp bmUgSEFWRV9SSU5UIDEKfCAjZGVmaW5lIEhBVkVfVFJVTkMgMQp8ICNkZWZpbmUgSEFWRV9T RUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NF VExPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX05FV0xPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX0dF VFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NI VVRET1dOIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhB VkVfU1RSU0lHTkFMIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhB VkVfU0VORFRPIDEKfCAjZGVmaW5lIEhBVkVfUkVDVkZST00gMQp8ICNkZWZpbmUgSEFWRV9H RVRTT0NLTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVElGQUREUlMgMQp8ICNkZWZpbmUgSEFW RV9GUkVFSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0dBSV9TVFJFUlJPUiAxCnwgI2RlZmlu ZSBIQVZFX1NZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZF X0VORFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9F TkRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX1JFTkFNRUFUMiAxCnwgI2RlZmluZSBIQVZFX0NG TUFLRVJBVyAxCnwgI2RlZmluZSBIQVZFX0NGU0VUU1BFRUQgMQp8ICNkZWZpbmUgSEFWRV9f X0VYRUNVVEFCTEVfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9MT0cyIDEKfCAjZGVmaW5lIEhB VkVfUFRIUkVBRF9TRVROQU1FX05QIDEKfCAjZGVmaW5lIEhBVkVfQUxJR05FRF9BTExPQyAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfQUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX1BP U0lYX01BRFZJU0UgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fRlJBTUVfQUREUkVTUyAx CnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9VTldJTkRfSU5JVCAxCnwgI2RlZmluZSBIQVZF X0ZTRUVLTyAxCnwgI2RlZmluZSBIQVZFX0dSQU5UUFQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQ VCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX09QRU5QVCAxCnwgI2RlZmluZSBURVJNSU5GTyAx CnwgI2RlZmluZSBURVJNSU5GT19ERUZJTkVTX0JDIDEKfCAjZGVmaW5lIEhBVkVfVElNRVJG RCAxCnwgI2RlZmluZSBIQVZFX1ZBTEdSSU5EX1ZBTEdSSU5EX0ggMQp8ICNkZWZpbmUgSEFW RV9TVFJVQ1RfVU5JUEFJUl9VTklDT0RFIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19WRk9S SyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1NOUFJJ TlRGIDEKfCAjZGVmaW5lIEhBVkVfU1BBV05fSCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQ QVdOIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV05fRklMRV9BQ1RJT05TX0FERENIRElS X05QIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV05BVFRSX1NFVEZMQUdTIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9QT1NJWF9TUEFXTl9TRVRTSUQgMQp8ICNkZWZpbmUgSEFWRV9HTElC IDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fQ09ERVNFVCAxCnwgI2RlZmluZSBIQVZFX0xB TkdJTkZPX19OTF9QQVBFUl9XSURUSCAxCnwgI2RlZmluZSBIQVZFX01CU1RBVEVfVCAxCnwg I2RlZmluZSBBTVBFUlNBTkRfRlVMTF9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUFRZUyAxCnwg I2RlZmluZSBIQVZFX1NPQ0tFVFMgMQp8ICNkZWZpbmUgTlVMTF9ERVZJQ0UgIi9kZXYvbnVs bCIKfCAjZGVmaW5lIFNFUENIQVIgJzonCnwgI2RlZmluZSBzdWJwcm9jZXNzZXMgMQp8ICNk ZWZpbmUgVVNFUl9GVUxMX05BTUUgcHctPnB3X2dlY29zCnwgI2RlZmluZSBESVJFQ1RPUllf U0VQICcvJwp8ICNkZWZpbmUgSVNfREVWSUNFX1NFUChfY18pIDAKfCAjZGVmaW5lIElTX0RJ UkVDVE9SWV9TRVAoX2NfKSAoKF9jXykgPT0gRElSRUNUT1JZX1NFUCkKfCAjZGVmaW5lIElT X0FOWV9TRVAoX2NfKSAoSVNfRElSRUNUT1JZX1NFUCAoX2NfKSkKfCAjZGVmaW5lIEhBVkVf UFJPQ0ZTIDEKfCAjZGVmaW5lIERFRkFVTFRfU09VTkRfREVWSUNFICIvZGV2L2RzcCIKfCAj ZGVmaW5lIElOVEVSUlVQVF9JTlBVVCAxCnwgI2RlZmluZSBOQVJST1dQUk9UTyAxCnwgI2Rl ZmluZSBVTklYOThfUFRZUyAxCnwgI2RlZmluZSBQVFlfSVRFUkFUSU9OIGludCBpOyBmb3Ig KGkgPSAwOyBpIDwgMTsgaSsrKQp8ICNkZWZpbmUgUFRZX1RUWV9OQU1FX1NQUklOVEYgeyBj aGFyICpwdHluYW1lID0gMDsgc2lnc2V0X3QgYmxvY2tlZDsgc2lnZW1wdHlzZXQgKCZibG9j a2VkKTsgc2lnYWRkc2V0ICgmYmxvY2tlZCwgU0lHQ0hMRCk7IHB0aHJlYWRfc2lnbWFzayAo U0lHX0JMT0NLLCAmYmxvY2tlZCwgMCk7IGlmIChncmFudHB0IChmZCkgIT0gLTEgJiYgdW5s b2NrcHQgKGZkKSAhPSAtMSkgcHR5bmFtZSA9IHB0c25hbWUoZmQpOyBwdGhyZWFkX3NpZ21h c2sgKFNJR19VTkJMT0NLLCAmYmxvY2tlZCwgMCk7IGlmICghcHR5bmFtZSkgeyBlbWFjc19j bG9zZSAoZmQpOyByZXR1cm4gLTE7IH0gc25wcmludGYgKHB0eV9uYW1lLCBQVFlfTkFNRV9T SVpFLCAiJXMiLCBwdHluYW1lKTsgfQp8ICNkZWZpbmUgUFRZX09QRU4gZG8geyBmZCA9IHBv c2l4X29wZW5wdCAoT19SRFdSIHwgT19DTE9FWEVDIHwgT19OT0NUVFkpOyBpZiAoZmQgPCAw ICYmIGVycm5vID09IEVJTlZBTCkgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fTk9D VFRZKTsgfSB3aGlsZSAoZmFsc2UpCnwgI2RlZmluZSBQVFlfTkFNRV9TUFJJTlRGIC8qKi8K fCAjZGVmaW5lIFNJR05BTFNfVklBX0NIQVJBQ1RFUlMgMQp8ICNkZWZpbmUgR0NfU0VUSk1Q X1dPUktTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBIQVZFX19T RVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TVEFD S19PVkVSRkxPV19IQU5ETElORyAxCnwgI2RlZmluZSBVU0cgLyoqLwp8ICNkZWZpbmUgR05V X0xJTlVYIC8qKi8KfCAjZGVmaW5lIFNJWkVPRl9TUEVFRF9UIDQKfCAjZGVmaW5lIFVTQUJM RV9GSU9OUkVBRCAxCnwgI2RlZmluZSBVU0FCTEVfU0lHSU8gMQp8ICNkZWZpbmUgQ09QWVJJ R0hUICJDb3B5cmlnaHQgKEMpIDIwMjMgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMu Igp8ICNkZWZpbmUgVEVSTV9IRUFERVIgImd0a3V0aWwuaCIKfCAjZGVmaW5lIEVNQUNTX0NP TkZJR1VSQVRJT04gIng4Nl82NC1wYy1saW51eC1nbnUiCnwgI2RlZmluZSBFTUFDU19DT05G SUdfT1BUSU9OUyAiIgp8ICNkZWZpbmUgSEFWRV9YX1dJTkRPV1MgMQp8ICNkZWZpbmUgSEFW RV9YMTEgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfQVRUUklCVVRFX0FMSUdORUQgMQp8ICNk ZWZpbmUgSEFWRV9UWVBFT0YgMQp8ICNkZWZpbmUgSEFWRV9TVEFURU1FTlRfRVhQUkVTU0lP TlMgMQp8ICNkZWZpbmUgTUFMTE9DXzBfSVNfTk9OTlVMTCAxCnwgI2RlZmluZSBIQVZFX1NZ U19BQ0xfSCAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRklMRSAxCnwgI2RlZmluZSBIQVZF X0FDTF9HRVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZJTEUgMQp8ICNkZWZpbmUg SEFWRV9BQ0xfU0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZSRUUgMQp8ICNkZWZpbmUg SEFWRV9BQ0xfRlJPTV9NT0RFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZST01fVEVYVCAxCnwg I2RlZmluZSBIQVZFX0FDTF9ERUxFVEVfREVGX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xf RVhURU5ERURfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9MSUJBQ0xfSCAxCnwgI2RlZmlu ZSBIQVZFX0FDTF9FTlRSSUVTIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZJUlNUX0VOVFJZIDEK fCAjZGVmaW5lIFVTRV9BQ0wgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAxCnwgI2RlZmlu ZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBMU1RBVF9GT0xMT1dTX1NMQVNIRURfU1lNTElO SyAxCnwgI2RlZmluZSBGVU5DX1JFQUxQQVRIX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfRkFD Q0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfR0VUQ1dEIDEKfCAjZGVmaW5lIHJlc3RyaWN0IF9f cmVzdHJpY3RfXwp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaWZuZGVmIF9fQVBQTEVf Q0NfXwp8IAkgICAgICAgbm90IGEgdW5pdmVyc2FsIGNhcGFibGUgY29tcGlsZXIKfCAJICAg ICAjZW5kaWYKfCAJICAgICB0eXBlZGVmIGludCBkdW1teTsKfCAKY29uZmlndXJlOjI3Mzgy OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjczODI6ICQ/ ID0gMApjb25maWd1cmU6Mjc0MDE6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1 CmNvbmZ0ZXN0LmM6IEluIGZ1bmN0aW9uICdtYWluJzoKY29uZnRlc3QuYzozMjc6MTg6IGVy cm9yOiB1bmtub3duIHR5cGUgbmFtZSAnbm90JzsgZGlkIHlvdSBtZWFuICdpbm9fdCc/CiAg MzI3IHwgICAgICAgICAgICAgICAgICBub3QgYmlnIGVuZGlhbgogICAgICB8ICAgICAgICAg ICAgICAgICAgXn5+CiAgICAgIHwgICAgICAgICAgICAgICAgICBpbm9fdApjb25mdGVzdC5j OjMyNzoyNjogZXJyb3I6IGV4cGVjdGVkICc9JywgJywnLCAnOycsICdhc20nIG9yICdfX2F0 dHJpYnV0ZV9fJyBiZWZvcmUgJ2VuZGlhbicKICAzMjcgfCAgICAgICAgICAgICAgICAgIG5v dCBiaWcgZW5kaWFuCiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fgpj b25maWd1cmU6Mjc0MDE6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoK fCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIK fCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZF UlNJT04gIjMwLjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDMw LjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUu b3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHBzOi8vd3d3LmdudS5vcmcvc29mdHdh cmUvZW1hY3MvIgp8ICNkZWZpbmUgSEFWRV9QRFVNUEVSIDEKfCAjZGVmaW5lIEhBVkVfU1RE SU9fSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5H X0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5U X0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RB VF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklT VERfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9G U19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lT SU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVT T1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFW RV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklU SVpFUl9MU0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0FTQU5f SU5URVJGQUNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQ09NTU9OX0lOVEVSRkFD RV9ERUZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFW RV9FWEVDSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfVkZTX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19DREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmlu ZSBIQVZFX0lFRUU3NTRfSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1JBTkRPTV9IIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2Rl ZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVm aW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9IUFVYX0FMVF9YT1BFTl9TT0NLRVRfQVBJ IDEKfCAjZGVmaW5lIF9ORVRCU0RfU09VUkNFIDEKfCAjZGVmaW5lIF9PUEVOQlNEX1NPVVJD RSAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX19T VERDX1dBTlRfSUVDXzYwNTU5X0FUVFJJQlNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dB TlRfSUVDXzYwNTU5X0JGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1 NTlfREZQX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9FWFRfXyAx CnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRlVOQ1NfRVhUX18gMQp8ICNkZWZp bmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X1RZUEVTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1RE Q19XQU5UX0xJQl9FWFQyX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfTUFUSF9TUEVDX0ZV TkNTX18gMQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19FWFRFTlNJ T05TX18gMQp8ICNkZWZpbmUgR0NDX0xJTlQgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdu dS9saW51eCIKfCAjZGVmaW5lIEhBVkVfU1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhB VkVfQUxTQSAxCnwgI2RlZmluZSBIQVZFX1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09O QUxJVFlfQUREUl9OT19SQU5ET01JWkUgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZP IDEKfCAjZGVmaW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1f SCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZf SCAxCnwgI2RlZmluZSBIQVZFX0lGQUREUlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9J RlJFUV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQURE UiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmlu ZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RS VUNUX0lGUkVRX0lGUl9BRERSIDEKfCAjZGVmaW5lIEhBVkVfU0JSSyAxCnwgI2RlZmluZSBI QVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZF X1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfQ0FOT05J Q0FMSVpFX0ZJTEVfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1JFQUxQQVRIIDEKfCAjZGVmaW5l IEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0RBVCAxCnwgI2RlZmluZSBIQVZF X0xDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVO RElSIDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEK fCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAx CnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1JFQURM SU5LIDEKfCAjZGVmaW5lIEhBVkVfSVNCTEFOSyAxCnwgI2RlZmluZSBIQVZFX0lTV0NUWVBF IDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAx CnwgI2RlZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxF U0laRSAxCnwgI2RlZmluZSBTWVNURU1fTUFMTE9DIDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAx CnwgI2RlZmluZSBIQVZFX1BUSFJFQUQgMQp8ICNkZWZpbmUgVEhSRUFEU19FTkFCTEVEIDEK fCAjZGVmaW5lIEhBVkVfWEtCIDEKfCAjZGVmaW5lIEhBVkVfWEtCUkVGUkVTSEtFWUJPQVJE TUFQUElORyAxCnwgI2RlZmluZSBIQVZFX1hLQkZSRUVOQU1FUyAxCnwgI2RlZmluZSBIQVZF X1hSTVNFVERBVEFCQVNFIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RSSU5H IDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhB VkVfWERJU1BMQVlDRUxMUyAxCnwgI2RlZmluZSBIQVZFX1hERVNUUk9ZU1VCV0lORE9XUyAx CnwgI2RlZmluZSBIQVZFX1gxMVI2IDEKfCAjZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVm aW5lIEhBVkVfWElDQ0FMTEJBQ0tfQ0FMTEJBQ0sgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9Y SU0gMQp8ICNkZWZpbmUgSEFWRV9SU1ZHIDEKfCAjZGVmaW5lIEhBVkVfV0VCUCAxCnwgI2Rl ZmluZSBIQVZFX1NRTElURTMgMQp8ICNkZWZpbmUgSEFWRV9TUUxJVEUzX0xPQURfRVhURU5T SU9OIDEKfCAjZGVmaW5lIEhBVkVfR0VUQUREUklORk9fQSAxCnwgI2RlZmluZSBIQVZFX0dU SzMgMQp8ICNkZWZpbmUgR0RLX0RJU0FCTEVfREVQUkVDQVRJT05fV0FSTklOR1MgMQp8ICNk ZWZpbmUgR0xJQl9ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIFVT RV9HVEsgMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfVFJJTSAxCnwgI2RlZmluZSBIQVZFX0RC VVMgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5l IEhBVkVfREJVU19UWVBFX0lTX1ZBTElEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFU RV9CVVNfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfUEFUSCAxCnwgI2Rl ZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfSU5URVJGQUNFIDEKfCAjZGVmaW5lIEhBVkVfREJV U19WQUxJREFURV9NRU1CRVIgMQp8ICNkZWZpbmUgSEFWRV9HU0VUVElOR1MgMQp8ICNkZWZp bmUgSEFWRV9MSUJTRUxJTlVYIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5l IEhBVkVfTElCU1lTVEVNRCAxCnwgI2RlZmluZSBIQVZFX0pTT04gMQp8ICNkZWZpbmUgSEFW RV9JTk9USUZZIDEKfCAjZGVmaW5lIFVTRV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBVU0Vf VE9PTEtJVF9TQ1JPTExfQkFSUyAxCnwgI2RlZmluZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBV U0VfWElNIDEKfCAjZGVmaW5lIEhBVkVfWFJFTkRFUiAxCnwgI2RlZmluZSBVU0VfQ0FJUk9f WENCIDEKfCAjZGVmaW5lIFVTRV9DQUlSTyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEK fCAjZGVmaW5lIEhBVkVfRlRfRkFDRV9HRVRDSEFSVkFSSUFOVElOREVYIDEKfCAjZGVmaW5l IEhBVkVfTElCT1RGIDEKfCAjZGVmaW5lIEhBVkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZUEhT IDEKfCAjZGVmaW5lIEhBVkVfTTE3Tl9GTFQgMQp8ICNkZWZpbmUgSEFWRV9IQVJGQlVaWiAx CnwgI2RlZmluZSBVU0VfWENCIDEKfCAjZGVmaW5lIEhBVkVfWFBNIDEKfCAjZGVmaW5lIEhB VkVfSlBFRyAxCnwgI2RlZmluZSBIQVZFX0xDTVMyIDEKfCAjZGVmaW5lIEhBVkVfWkxJQiAx CnwgI2RlZmluZSBEWU5BTUlDX0xJQl9TVUZGSVggIi5zbyIKfCAjZGVmaW5lIERZTkFNSUNf TElCX1NFQ09OREFSWV9TVUZGSVggIiIKfCAjZGVmaW5lIEhBVkVfRExBRERSIDEKfCAjZGVm aW5lIEhBVkVfTU9EVUxFUyAxCnwgI2RlZmluZSBNT0RVTEVTX1NVRkZJWCAiLnNvIgp8ICNk ZWZpbmUgTkFUSVZFX0VMSVNQX1NVRkZJWCAiLmVsbiIKfCAjZGVmaW5lIEhBVkVfUE5HIDEK fCAjZGVmaW5lIEhBVkVfVElGRiAxCnwgI2RlZmluZSBIQVZFX0dJRiAxCnwgI2RlZmluZSBI QVZFX0dQTSAxCnwgI2RlZmluZSBIQVZFX1hfU00gMQp8ICNkZWZpbmUgSEFWRV9YUkFORFIg MQp8ICNkZWZpbmUgSEFWRV9YSU5FUkFNQSAxCnwgI2RlZmluZSBIQVZFX1hGSVhFUyAxCnwg I2RlZmluZSBIQVZFX1hJTlBVVDIgMQp8ICNkZWZpbmUgSEFWRV9YSVNDUk9MTENMQVNTSU5G T19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWElUT1VDSENMQVNTSU5GT19UWVBFIDEKfCAjZGVm aW5lIEhBVkVfWElCQVJSSUVSUkVMRUFTRVBPSU5URVJJTkZPX0RFVklDRUlEIDEKfCAjZGVm aW5lIEhBVkVfWElHRVNUVVJFQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YU1lO QyAxCnwgI2RlZmluZSBIQVZFX1hTWU5DVFJJR0dFUkZFTkNFIDEKfCAjZGVmaW5lIEhBVkVf WERCRSAxCnwgI2RlZmluZSBIQVZFX1hDQl9TSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hTSEFQ RSAxCnwgI2RlZmluZSBIQVZFX1hDT01QT1NJVEUgMQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwy IDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU0VDQ09NUF9IIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9TRUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09N UF9GSUxURVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZJTFRFUl9IIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfU0VDQ09NUF9GSUxURVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBTSVpF T0ZfTE9ORyA4CnwgI2RlZmluZSBIQVZFX0FDQ0VQVDQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hE SVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJV U0FHRSAxCnwgI2RlZmluZSBIQVZFX0dFVF9DVVJSRU5UX0RJUl9OQU1FIDEKfCAjZGVmaW5l IEhBVkVfTFJBTkQ0OCAxCnwgI2RlZmluZSBIQVZFX1JBTkRPTSAxCnwgI2RlZmluZSBIQVZF X1JJTlQgMQp8ICNkZWZpbmUgSEFWRV9UUlVOQyAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAx CnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxF IDEKfCAjZGVmaW5lIEhBVkVfTkVXTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlU IDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04g MQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJT SUdOQUwgMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9TRU5E VE8gMQp8ICNkZWZpbmUgSEFWRV9SRUNWRlJPTSAxCnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tO QU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVJ RkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfR0FJX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVf U1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EUFdF TlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0VOREdSRU5U IDEKfCAjZGVmaW5lIEhBVkVfUkVOQU1FQVQyIDEKfCAjZGVmaW5lIEhBVkVfQ0ZNQUtFUkFX IDEKfCAjZGVmaW5lIEhBVkVfQ0ZTRVRTUEVFRCAxCnwgI2RlZmluZSBIQVZFX19fRVhFQ1VU QUJMRV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9QVEhS RUFEX1NFVE5BTUVfTlAgMQp8ICNkZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9DIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfTUFE VklTRSAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9GUkFNRV9BRERSRVNTIDEKfCAjZGVm aW5lIEhBVkVfX19CVUlMVElOX1VOV0lORF9JTklUIDEKfCAjZGVmaW5lIEhBVkVfRlNFRUtP IDEKfCAjZGVmaW5lIEhBVkVfR1JBTlRQVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBUIDEKfCAj ZGVmaW5lIEhBVkVfUE9TSVhfT1BFTlBUIDEKfCAjZGVmaW5lIFRFUk1JTkZPIDEKfCAjZGVm aW5lIFRFUk1JTkZPX0RFRklORVNfQkMgMQp8ICNkZWZpbmUgSEFWRV9USU1FUkZEIDEKfCAj ZGVmaW5lIEhBVkVfVkFMR1JJTkRfVkFMR1JJTkRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVD VF9VTklQQUlSX1VOSUNPREUgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAj ZGVmaW5lIEhBVkVfV09SS0lOR19GT1JLIDEKfCAjZGVmaW5lIEhBVkVfU05QUklOVEYgMQp8 ICNkZWZpbmUgSEFWRV9TUEFXTl9IIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV04gMQp8 ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTl9GSUxFX0FDVElPTlNfQUREQ0hESVJfTlAgMQp8 ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTkFUVFJfU0VURkxBR1MgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX1BPU0lYX1NQQVdOX1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX0dMSUIgMQp8ICNk ZWZpbmUgSEFWRV9MQU5HSU5GT19DT0RFU0VUIDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lORk9f X05MX1BBUEVSX1dJRFRIIDEKfCAjZGVmaW5lIEhBVkVfTUJTVEFURV9UIDEKfCAjZGVmaW5l IEFNUEVSU0FORF9GVUxMX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9QVFlTIDEKfCAjZGVmaW5l IEhBVkVfU09DS0VUUyAxCnwgI2RlZmluZSBOVUxMX0RFVklDRSAiL2Rldi9udWxsIgp8ICNk ZWZpbmUgU0VQQ0hBUiAnOicKfCAjZGVmaW5lIHN1YnByb2Nlc3NlcyAxCnwgI2RlZmluZSBV U0VSX0ZVTExfTkFNRSBwdy0+cHdfZ2Vjb3MKfCAjZGVmaW5lIERJUkVDVE9SWV9TRVAgJy8n CnwgI2RlZmluZSBJU19ERVZJQ0VfU0VQKF9jXykgMAp8ICNkZWZpbmUgSVNfRElSRUNUT1JZ X1NFUChfY18pICgoX2NfKSA9PSBESVJFQ1RPUllfU0VQKQp8ICNkZWZpbmUgSVNfQU5ZX1NF UChfY18pIChJU19ESVJFQ1RPUllfU0VQIChfY18pKQp8ICNkZWZpbmUgSEFWRV9QUk9DRlMg MQp8ICNkZWZpbmUgREVGQVVMVF9TT1VORF9ERVZJQ0UgIi9kZXYvZHNwIgp8ICNkZWZpbmUg SU5URVJSVVBUX0lOUFVUIDEKfCAjZGVmaW5lIE5BUlJPV1BST1RPIDEKfCAjZGVmaW5lIFVO SVg5OF9QVFlTIDEKfCAjZGVmaW5lIFBUWV9JVEVSQVRJT04gaW50IGk7IGZvciAoaSA9IDA7 IGkgPCAxOyBpKyspCnwgI2RlZmluZSBQVFlfVFRZX05BTUVfU1BSSU5URiB7IGNoYXIgKnB0 eW5hbWUgPSAwOyBzaWdzZXRfdCBibG9ja2VkOyBzaWdlbXB0eXNldCAoJmJsb2NrZWQpOyBz aWdhZGRzZXQgKCZibG9ja2VkLCBTSUdDSExEKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfQkxP Q0ssICZibG9ja2VkLCAwKTsgaWYgKGdyYW50cHQgKGZkKSAhPSAtMSAmJiB1bmxvY2twdCAo ZmQpICE9IC0xKSBwdHluYW1lID0gcHRzbmFtZShmZCk7IHB0aHJlYWRfc2lnbWFzayAoU0lH X1VOQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKCFwdHluYW1lKSB7IGVtYWNzX2Nsb3NlIChm ZCk7IHJldHVybiAtMTsgfSBzbnByaW50ZiAocHR5X25hbWUsIFBUWV9OQU1FX1NJWkUsICIl cyIsIHB0eW5hbWUpOyB9CnwgI2RlZmluZSBQVFlfT1BFTiBkbyB7IGZkID0gcG9zaXhfb3Bl bnB0IChPX1JEV1IgfCBPX0NMT0VYRUMgfCBPX05PQ1RUWSk7IGlmIChmZCA8IDAgJiYgZXJy bm8gPT0gRUlOVkFMKSBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19OT0NUVFkpOyB9 IHdoaWxlIChmYWxzZSkKfCAjZGVmaW5lIFBUWV9OQU1FX1NQUklOVEYgLyoqLwp8ICNkZWZp bmUgU0lHTkFMU19WSUFfQ0hBUkFDVEVSUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1Mg MQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfX1NFVEpNUCAx CnwgI2RlZmluZSBIQVZFX1NJR1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NUQUNLX09WRVJG TE9XX0hBTkRMSU5HIDEKfCAjZGVmaW5lIFVTRyAvKiovCnwgI2RlZmluZSBHTlVfTElOVVgg LyoqLwp8ICNkZWZpbmUgU0laRU9GX1NQRUVEX1QgNAp8ICNkZWZpbmUgVVNBQkxFX0ZJT05S RUFEIDEKfCAjZGVmaW5lIFVTQUJMRV9TSUdJTyAxCnwgI2RlZmluZSBDT1BZUklHSFQgIkNv cHlyaWdodCAoQykgMjAyMyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4iCnwgI2Rl ZmluZSBURVJNX0hFQURFUiAiZ3RrdXRpbC5oIgp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHVVJB VElPTiAieDg2XzY0LXBjLWxpbnV4LWdudSIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR19PUFRJ T05TICIiCnwgI2RlZmluZSBIQVZFX1hfV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gxMSAx CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9BVFRSSUJVVEVfQUxJR05FRCAxCnwgI2RlZmluZSBI QVZFX1RZUEVPRiAxCnwgI2RlZmluZSBIQVZFX1NUQVRFTUVOVF9FWFBSRVNTSU9OUyAxCnwg I2RlZmluZSBNQUxMT0NfMF9JU19OT05OVUxMIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0FDTF9I IDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dF VF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FD TF9TRVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJFRSAxCnwgI2RlZmluZSBIQVZFX0FD TF9GUk9NX01PREUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9URVhUIDEKfCAjZGVmaW5l IEhBVkVfQUNMX0RFTEVURV9ERUZfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9FWFRFTkRF RF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0xJQkFDTF9IIDEKfCAjZGVmaW5lIEhBVkVf QUNMX0VOVFJJRVMgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRklSU1RfRU5UUlkgMQp8ICNkZWZp bmUgVVNFX0FDTCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVf QUxMT0NBIDEKfCAjZGVmaW5lIExTVEFUX0ZPTExPV1NfU0xBU0hFRF9TWU1MSU5LIDEKfCAj ZGVmaW5lIEZVTkNfUkVBTFBBVEhfV09SS1MgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQg MQp8ICNkZWZpbmUgSEFWRV9HRVRDV0QgMQp8ICNkZWZpbmUgcmVzdHJpY3QgX19yZXN0cmlj dF9fCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4K fCAJCSNpbmNsdWRlIDxzeXMvcGFyYW0uaD4KfCAKfCBpbnQKfCBtYWluICh2b2lkKQp8IHsK fCAjaWYgQllURV9PUkRFUiAhPSBCSUdfRU5ESUFOCnwgCQkgbm90IGJpZyBlbmRpYW4KfCAJ CSNlbmRpZgp8IAp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6Mjc1MzU6IHJl c3VsdDogbm8KY29uZmlndXJlOjI3NzYxOiBjaGVja2luZyBpZiBlbnZpcm9uIGlzIHByb3Bl cmx5IGRlY2xhcmVkCmNvbmZpZ3VyZToyNzc4NTogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRl c3QuYyA+JjUKY29uZnRlc3QuYzozMjc6MjY6IGVycm9yOiBjb25mbGljdGluZyB0eXBlcyBm b3IgJ2Vudmlyb24nOyBoYXZlICdmb29fdCcKICAzMjcgfCAgICAgICAgICAgICBleHRlcm4g Zm9vX3QgZW52aXJvbjsKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+ fgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gY29uZnRlc3QuYzozMjE6Ci91c3IvaW5jbHVkZS91 bmlzdGQuaDo1NjY6MTU6IG5vdGU6IHByZXZpb3VzIGRlY2xhcmF0aW9uIG9mICdlbnZpcm9u JyB3aXRoIHR5cGUgJ2NoYXIgKionCiAgNTY2IHwgZXh0ZXJuIGNoYXIgKiplbnZpcm9uOwog ICAgICB8ICAgICAgICAgICAgICAgXn5+fn5+fgpjb25maWd1cmU6Mjc3ODU6ICQ/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 MQp8ICNkZWZpbmUgcmVzdHJpY3QgX19yZXN0cmljdF9fCnwgLyogZW5kIGNvbmZkZWZzLmgu ICAqLwp8ICNpZiBIQVZFX1VOSVNURF9ICnwgICAgICAjaW5jbHVkZSA8dW5pc3RkLmg+Cnwg ICAgICAjZW5kaWYKfCAgICAgIC8qIG1pbmd3LCBCZU9TLCBIYWlrdSBkZWNsYXJlIGVudmly b24gaW4gPHN0ZGxpYi5oPiwgbm90IGluIDx1bmlzdGQuaD4uICAqLwp8ICAgICAgI2luY2x1 ZGUgPHN0ZGxpYi5oPgp8IAp8ICAgICAgICAgICAgIHR5cGVkZWYgc3RydWN0IHsgaW50IGZv bzsgfSBmb29fdDsKfCAgICAgICAgICAgICBleHRlcm4gZm9vX3QgZW52aXJvbjsKfCBpbnQK fCBtYWluICh2b2lkKQp8IHsKfCBlbnZpcm9uLmZvbyA9IDE7CnwgICA7CnwgICByZXR1cm4g MDsKfCB9CmNvbmZpZ3VyZToyNzc5MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI3ODA4OiBj aGVja2luZyBmb3IgY29tcGxldGUgZXJybm8uaApjb25maWd1cmU6Mjc4ODM6IHJlc3VsdDog eWVzCmNvbmZpZ3VyZToyODE5MDogY2hlY2tpbmcgd2hldGhlciBjdHlwZS5oIGRlZmluZXMg X19oZWFkZXJfaW5saW5lCmNvbmZpZ3VyZToyODIwNDogZ2NjIC1FICAgIGNvbmZ0ZXN0LmMK Y29uZnRlc3QuYzozMjM6Mjg6IGVycm9yOiAjZXJyb3IgIjxjdHlwZS5oPiBkb2VzIG5vdCBk ZWZpbmUgX19oZWFkZXJfaW5saW5lIgogIDMyMyB8ICAgICAgICAgICAgICAgICAgICAgICAg ICAgI2Vycm9yICI8Y3R5cGUuaD4gZG9lcyBub3QgZGVmaW5lIF9faGVhZGVyX2lubGluZSIK ICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fgpjb25maWd1cmU6Mjgy MDQ6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVm 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 ZSBIQVZFX0VOVklST05fREVDTCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNs dWRlIDxjdHlwZS5oPgp8ICAgICAgICAgICAgICAgICAgICAgICAgICAjaWZuZGVmIF9faGVh ZGVyX2lubGluZQp8ICAgICAgICAgICAgICAgICAgICAgICAgICAgI2Vycm9yICI8Y3R5cGUu aD4gZG9lcyBub3QgZGVmaW5lIF9faGVhZGVyX2lubGluZSIKfCAgICAgICAgICAgICAgICAg ICAgICAgICAgI2VuZGlmCnwgCmNvbmZpZ3VyZToyODIxMjogcmVzdWx0OiBubwpjb25maWd1 cmU6MjgzNzc6IGNoZWNraW5nIGZvciBtb2RlX3QKY29uZmlndXJlOjI4Mzc3OiBnY2MgLWMg LWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjgzNzc6ICQ/ID0gMApjb25m aWd1cmU6MjgzNzc6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0 LmM6IEluIGZ1bmN0aW9uICdtYWluJzoKY29uZnRlc3QuYzozNTI6MjE6IGVycm9yOiBleHBl Y3RlZCBleHByZXNzaW9uIGJlZm9yZSAnKScgdG9rZW4KICAzNTIgfCBpZiAoc2l6ZW9mICgo bW9kZV90KSkpCiAgICAgIHwgICAgICAgICAgICAgICAgICAgICBeCmNvbmZpZ3VyZToyODM3 NzogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZz 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 RVRFX0RFRl9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VYVEVOREVEX0ZJTEUgMQp8ICNk ZWZpbmUgSEFWRV9BQ0xfTElCQUNMX0ggMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRU5UUklFUyAx CnwgI2RlZmluZSBIQVZFX0FDTF9GSVJTVF9FTlRSWSAxCnwgI2RlZmluZSBVU0VfQUNMIDEK fCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNk ZWZpbmUgTFNUQVRfRk9MTE9XU19TTEFTSEVEX1NZTUxJTksgMQp8ICNkZWZpbmUgRlVOQ19S RUFMUEFUSF9XT1JLUyAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBI QVZFX0dFVENXRCAxCnwgI2RlZmluZSByZXN0cmljdCBfX3Jlc3RyaWN0X18KfCAjZGVmaW5l IEhBVkVfRU5WSVJPTl9ERUNMIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1 ZGUgPHN0ZGRlZi5oPgp8ICNpZmRlZiBIQVZFX1NURElPX0gKfCAjIGluY2x1ZGUgPHN0ZGlv Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RETElCX0gKfCAjIGluY2x1ZGUgPHN0ZGxp Yi5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR19ICnwgIyBpbmNsdWRlIDxzdHJp bmcuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9JTlRUWVBFU19ICnwgIyBpbmNsdWRlIDxp bnR0eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NURElOVF9ICnwgIyBpbmNsdWRl IDxzdGRpbnQuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdTX0gKfCAjIGluY2x1 ZGUgPHN0cmluZ3MuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TWVNfVFlQRVNfSAp8ICMg aW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1lTX1NUQVRf SAp8ICMgaW5jbHVkZSA8c3lzL3N0YXQuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9VTklT VERfSAp8ICMgaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgaW50CnwgbWFpbiAodm9p ZCkKfCB7CnwgaWYgKHNpemVvZiAoKG1vZGVfdCkpKQp8IAkgICAgcmV0dXJuIDA7CnwgICA7 CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToyODM3NzogcmVzdWx0OiB5ZXMKY29uZmln dXJlOjI4NDcwOiBjaGVja2luZyB3aGV0aGVyIHN0cm1vZGUgaXMgZGVjbGFyZWQKY29uZmln dXJlOjI4NDcwOiBnY2MgLWMgLWczIC1PMiAgICAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3Qu YzogSW4gZnVuY3Rpb24gJ21haW4nOgpjb25mdGVzdC5jOjM1NjoxMDogZXJyb3I6ICdzdHJt b2RlJyB1bmRlY2xhcmVkIChmaXJzdCB1c2UgaW4gdGhpcyBmdW5jdGlvbik7IGRpZCB5b3Ug bWVhbiAnc3RydG9kJz8KICAzNTYgfCAgICh2b2lkKSBzdHJtb2RlOwogICAgICB8ICAgICAg ICAgIF5+fn5+fn4KICAgICAgfCAgICAgICAgICBzdHJ0b2QKY29uZnRlc3QuYzozNTY6MTA6 IG5vdGU6IGVhY2ggdW5kZWNsYXJlZCBpZGVudGlmaWVyIGlzIHJlcG9ydGVkIG9ubHkgb25j ZSBmb3IgZWFjaCBmdW5jdGlvbiBpdCBhcHBlYXJzIGluCmNvbmZpZ3VyZToyODQ3MDogJD8g 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 RU5WSVJPTl9ERUNMIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN0 ZGRlZi5oPgp8ICNpZmRlZiBIQVZFX1NURElPX0gKfCAjIGluY2x1ZGUgPHN0ZGlvLmg+Cnwg I2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RETElCX0gKfCAjIGluY2x1ZGUgPHN0ZGxpYi5oPgp8 ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR19ICnwgIyBpbmNsdWRlIDxzdHJpbmcuaD4K fCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9JTlRUWVBFU19ICnwgIyBpbmNsdWRlIDxpbnR0eXBl cy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NURElOVF9ICnwgIyBpbmNsdWRlIDxzdGRp bnQuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdTX0gKfCAjIGluY2x1ZGUgPHN0 cmluZ3MuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TWVNfVFlQRVNfSAp8ICMgaW5jbHVk ZSA8c3lzL3R5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1lTX1NUQVRfSAp8ICMg aW5jbHVkZSA8c3lzL3N0YXQuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9VTklTVERfSAp8 ICMgaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgaW50CnwgbWFpbiAodm9pZCkKfCB7 CnwgI2lmbmRlZiBzdHJtb2RlCnwgI2lmZGVmIF9fY3BsdXNwbHVzCnwgICAodm9pZCkgc3Ry bW9kZTsKfCAjZWxzZQp8ICAgKHZvaWQpIHN0cm1vZGU7CnwgI2VuZGlmCnwgI2VuZGlmCnwg CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToyODQ3MDogcmVzdWx0OiBubwpj b25maWd1cmU6Mjg0ODg6IGNoZWNraW5nIGZvciBnYXdrCmNvbmZpZ3VyZToyODUwOTogZm91 bmQgL3Vzci9iaW4vZ2F3awpjb25maWd1cmU6Mjg1MjA6IHJlc3VsdDogZ2F3awpjb25maWd1 cmU6Mjg2Mjc6IGNoZWNraW5nIGZvciBnZXRvcHQuaApjb25maWd1cmU6Mjg2Mjc6IHJlc3Vs dDogeWVzCmNvbmZpZ3VyZToyODY0MzogY2hlY2tpbmcgZm9yIGdldG9wdF9sb25nX29ubHkK Y29uZmlndXJlOjI4NjQzOiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0 LmMgICA+JjUgCmNvbmZpZ3VyZToyODY0MzogJD8gPSAwCmNvbmZpZ3VyZToyODY0MzogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjI4NjU2OiBjaGVja2luZyB3aGV0aGVyIGdldG9wdCBpcyBQ T1NJWCBjb21wYXRpYmxlCmNvbmZpZ3VyZToyODcwMDogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAt TzIgICAgICBjb25mdGVzdC5jICAgPiY1IApjb25maWd1cmU6Mjg3MDA6ICQ/ID0gMApjb25m aWd1cmU6Mjg3MDA6IC4vY29uZnRlc3QKY29uZmlndXJlOjI4NzAwOiAkPyA9IDAKY29uZmln dXJlOjI4NzYxOiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+ JjUgCmNvbmZpZ3VyZToyODc2MTogJD8gPSAwCmNvbmZpZ3VyZToyODc2MTogLi9jb25mdGVz dApjb25maWd1cmU6Mjg3NjE6ICQ/ID0gMApjb25maWd1cmU6Mjg4MDU6IGdjYyAtbyBjb25m dGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAgID4mNSAKY29uZmlndXJlOjI4ODA1OiAk PyA9IDAKY29uZmlndXJlOjI4ODA1OiAuL2NvbmZ0ZXN0CnByb2dyYW06IG9wdGlvbiByZXF1 aXJlcyBhbiBhcmd1bWVudCAtLSAnYicKY29uZmlndXJlOjI4ODA1OiAkPyA9IDAKY29uZmln dXJlOjI4ODI0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6Mjg4MzI6IGNoZWNraW5nIGZvciB3 b3JraW5nIEdOVSBnZXRvcHQgZnVuY3Rpb24KY29uZmlndXJlOjI5MDU2OiBnY2MgLW8gY29u ZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCmNvbmZpZ3VyZToyOTA1Njog JD8gPSAwCmNvbmZpZ3VyZToyOTA1NjogLi9jb25mdGVzdApjb25maWd1cmU6MjkwNTY6ICQ/ ID0gMApjb25maWd1cmU6MjkwNzM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyOTA3ODogY2hl Y2tpbmcgZm9yIHdvcmtpbmcgR05VIGdldG9wdF9sb25nIGZ1bmN0aW9uCmNvbmZpZ3VyZToy OTEyNTogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1IApj b25maWd1cmU6MjkxMjU6ICQ/ID0gMApjb25maWd1cmU6MjkxMjU6IC4vY29uZnRlc3QKY29u ZmlndXJlOjI5MTI1OiAkPyA9IDAKY29uZmlndXJlOjI5MTM3OiByZXN1bHQ6IHllcwpjb25m aWd1cmU6MjkxNjM6IGNoZWNraW5nIHdoZXRoZXIgdGltZXNwZWNfZ2V0IGlzIGRlY2xhcmVk CmNvbmZpZ3VyZToyOTE2MzogZ2NjIC1jIC1nMyAtTzIgICAgIGNvbmZ0ZXN0LmMgPiY1CmNv bmZpZ3VyZToyOTE2MzogJD8gPSAwCmNvbmZpZ3VyZToyOTE2MzogcmVzdWx0OiB5ZXMKY29u ZmlndXJlOjI5MTY5OiBjaGVja2luZyBmb3IgdGltZXNwZWNfZ2V0CmNvbmZpZ3VyZToyOTE5 MDogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1IApjb25m aWd1cmU6MjkxOTA6ICQ/ID0gMApjb25maWd1cmU6MjkyMTA6IHJlc3VsdDogeWVzCmNvbmZp Z3VyZToyOTMzNTogY2hlY2tpbmcgZm9yIHN0cnVjdCB0aW1ldmFsCmNvbmZpZ3VyZToyOTM1 OTogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjI5MzU5OiAk PyA9IDAKY29uZmlndXJlOjI5MzY4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjkzNzM6IGNo ZWNraW5nIGZvciB3aWRlLWVub3VnaCBzdHJ1Y3QgdGltZXZhbC50dl9zZWMgbWVtYmVyCmNv bmZpZ3VyZToyOTQwMTogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmln dXJlOjI5NDAxOiAkPyA9IDAKY29uZmlndXJlOjI5NDEwOiByZXN1bHQ6IHllcwpjb25maWd1 cmU6Mjk1MDk6IGNoZWNraW5nIHdoZXRoZXIgbGltaXRzLmggaGFzIFdPUkRfQklULCBCT09M X1dJRFRIIGV0Yy4KY29uZmlndXJlOjI5NTM1OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVz dC5jID4mNQpjb25maWd1cmU6Mjk1MzU6ICQ/ID0gMApjb25maWd1cmU6Mjk1NDM6IHJlc3Vs dDogeWVzCmNvbmZpZ3VyZToyOTU1NDogY2hlY2tpbmcgd2hldGhlciB0aGUgY29tcGlsZXIg cHJvZHVjZXMgbXVsdGktYXJjaCBiaW5hcmllcwpjb25maWd1cmU6Mjk1Njk6IGdjYyAtYyAt ZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6MzI1OjEzOiBlcnJvcjogdW5r bm93biB0eXBlIG5hbWUgJ25vdCcKICAzMjUgfCAgICAgICAgICAgICBub3QgYSB1bml2ZXJz YWwgY2FwYWJsZSBjb21waWxlcgogICAgICB8ICAgICAgICAgICAgIF5+fgpjb25mdGVzdC5j OjMyNToxOTogZXJyb3I6IGV4cGVjdGVkICc9JywgJywnLCAnOycsICdhc20nIG9yICdfX2F0 dHJpYnV0ZV9fJyBiZWZvcmUgJ3VuaXZlcnNhbCcKICAzMjUgfCAgICAgICAgICAgICBub3Qg YSB1bml2ZXJzYWwgY2FwYWJsZSBjb21waWxlcgogICAgICB8ICAgICAgICAgICAgICAgICAg IF5+fn5+fn5+fgpjb25mdGVzdC5jOjMyNToxOTogZXJyb3I6IHVua25vd24gdHlwZSBuYW1l ICd1bml2ZXJzYWwnCmNvbmZpZ3VyZToyOTU2OTogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVk 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 VkVfQUNMX0VYVEVOREVEX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfTElCQUNMX0ggMQp8 ICNkZWZpbmUgSEFWRV9BQ0xfRU5UUklFUyAxCnwgI2RlZmluZSBIQVZFX0FDTF9GSVJTVF9F TlRSWSAxCnwgI2RlZmluZSBVU0VfQUNMIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8 ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgTFNUQVRfRk9MTE9XU19TTEFTSEVE X1NZTUxJTksgMQp8ICNkZWZpbmUgRlVOQ19SRUFMUEFUSF9XT1JLUyAxCnwgI2RlZmluZSBI QVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0dFVENXRCAxCnwgI2RlZmluZSByZXN0 cmljdCBfX3Jlc3RyaWN0X18KfCAjZGVmaW5lIEhBVkVfRU5WSVJPTl9ERUNMIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9TVFJNT0RFIDAKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNk ZWZpbmUgSEFWRV9HRVRPUFRfTE9OR19PTkxZIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICov CnwgI2lmbmRlZiBfX0FQUExFX0NDX18KfCAgICAgICAgICAgICBub3QgYSB1bml2ZXJzYWwg Y2FwYWJsZSBjb21waWxlcgp8ICAgICAgICAgICAgI2VuZGlmCnwgICAgICAgICAgICB0eXBl ZGVmIGludCBkdW1teTsKfCAKY29uZmlndXJlOjI5NTk3OiByZXN1bHQ6IG5vCmNvbmZpZ3Vy ZToyOTcyOTogY2hlY2tpbmcgd2hldGhlciBzdGRpbnQuaCBjb25mb3JtcyB0byBDOTkKY29u ZmlndXJlOjI5OTA2OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1 cmU6Mjk5MDY6ICQ/ID0gMApjb25maWd1cmU6Mjk5OTE6IGdjYyAtbyBjb25mdGVzdCAtZzMg LU8yICAgICAgY29uZnRlc3QuYyAgID4mNSAKY29uZmlndXJlOjI5OTkxOiAkPyA9IDAKY29u ZmlndXJlOjI5OTkxOiAuL2NvbmZ0ZXN0CmNvbmZpZ3VyZToyOTk5MTogJD8gPSAwCmNvbmZp Z3VyZTozMDAwNDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjMwMDE1OiBjaGVja2luZyB3aGV0 aGVyIHN0ZGludC5oIHdvcmtzIHdpdGhvdXQgSVNPIEMgcHJlZGVmaW5lcwpjb25maWd1cmU6 MzAwNDg6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozMDA0 ODogJD8gPSAwCmNvbmZpZ3VyZTozMDA1NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjMwMDY2 OiBjaGVja2luZyB3aGV0aGVyIHN0ZGludC5oIGhhcyBVSU5UTUFYX1dJRFRIIGV0Yy4KY29u ZmlndXJlOjMwMDk5OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1 cmU6MzAwOTk6ICQ/ID0gMApjb25maWd1cmU6MzAxMDU6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy ZTozMDY3NzogY2hlY2tpbmcgd2hldGhlciBtZW1tZW0gaXMgZGVjbGFyZWQKY29uZmlndXJl OjMwNjc3OiBnY2MgLWMgLWczIC1PMiAgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjMw Njc3OiAkPyA9IDAKY29uZmlndXJlOjMwNjc3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzA4 NjQ6IGNoZWNraW5nIHdoZXRoZXIgbWVtcmNociBpcyBkZWNsYXJlZApjb25maWd1cmU6MzA4 NjQ6IGdjYyAtYyAtZzMgLU8yICAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzA4NjQ6 ICQ/ID0gMApjb25maWd1cmU6MzA4NjQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMDg3OTog Y2hlY2tpbmcgd2hldGhlciA8bGltaXRzLmg+IGRlZmluZXMgTUlOIGFuZCBNQVgKY29uZmln dXJlOjMwODk3OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5j OjMyOToyMTogd2FybmluZzogaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24gJ01J TicgWy1XaW1wbGljaXQtZnVuY3Rpb24tZGVjbGFyYXRpb25dCiAgMzI5IHwgICAgICAgICAg ICAgaW50IHggPSBNSU4gKDQyLCAxNyk7CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICBe fn4KY29uZnRlc3QuYzozMjk6MjE6IGVycm9yOiBpbml0aWFsaXplciBlbGVtZW50IGlzIG5v dCBjb25zdGFudApjb25maWd1cmU6MzA4OTc6ICQ/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 aW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERSIDEKfCAjZGVmaW5lIEhBVkVfU0JSSyAx CnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwg I2RlZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5l IEhBVkVfQ0FOT05JQ0FMSVpFX0ZJTEVfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1JFQUxQQVRI IDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0RBVCAxCnwg I2RlZmluZSBIQVZFX0xDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5l IEhBVkVfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRBVCAxCnwgI2RlZmluZSBI QVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhB VkVfUFNFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmlu ZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfSVNCTEFOSyAxCnwgI2RlZmluZSBI QVZFX0lTV0NUWVBFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhB VkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5lIEhB VkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBTWVNURU1fTUFMTE9DIDEKfCAjZGVmaW5l IEhBVkVfTU1BUCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQUQgMQp8ICNkZWZpbmUgVEhSRUFE U19FTkFCTEVEIDEKfCAjZGVmaW5lIEhBVkVfWEtCIDEKfCAjZGVmaW5lIEhBVkVfWEtCUkVG UkVTSEtFWUJPQVJETUFQUElORyAxCnwgI2RlZmluZSBIQVZFX1hLQkZSRUVOQU1FUyAxCnwg I2RlZmluZSBIQVZFX1hSTVNFVERBVEFCQVNFIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTlJF U09VUkNFU1RSSU5HIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEK fCAjZGVmaW5lIEhBVkVfWERJU1BMQVlDRUxMUyAxCnwgI2RlZmluZSBIQVZFX1hERVNUUk9Z U1VCV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gxMVI2IDEKfCAjZGVmaW5lIEhBVkVfWF9J MThOIDEKfCAjZGVmaW5lIEhBVkVfWElDQ0FMTEJBQ0tfQ0FMTEJBQ0sgMQp8ICNkZWZpbmUg SEFWRV9YMTFSNl9YSU0gMQp8ICNkZWZpbmUgSEFWRV9SU1ZHIDEKfCAjZGVmaW5lIEhBVkVf V0VCUCAxCnwgI2RlZmluZSBIQVZFX1NRTElURTMgMQp8ICNkZWZpbmUgSEFWRV9TUUxJVEUz X0xPQURfRVhURU5TSU9OIDEKfCAjZGVmaW5lIEhBVkVfR0VUQUREUklORk9fQSAxCnwgI2Rl ZmluZSBIQVZFX0dUSzMgMQp8ICNkZWZpbmUgR0RLX0RJU0FCTEVfREVQUkVDQVRJT05fV0FS TklOR1MgMQp8ICNkZWZpbmUgR0xJQl9ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEK fCAjZGVmaW5lIFVTRV9HVEsgMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfVFJJTSAxCnwgI2Rl ZmluZSBIQVZFX0RCVVMgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1dBVENIX0dFVF9VTklYX0ZE IDEKfCAjZGVmaW5lIEhBVkVfREJVU19UWVBFX0lTX1ZBTElEIDEKfCAjZGVmaW5lIEhBVkVf REJVU19WQUxJREFURV9CVVNfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVf UEFUSCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfSU5URVJGQUNFIDEKfCAjZGVm aW5lIEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIgMQp8ICNkZWZpbmUgSEFWRV9HU0VUVElO R1MgMQp8ICNkZWZpbmUgSEFWRV9MSUJTRUxJTlVYIDEKfCAjZGVmaW5lIEhBVkVfR05VVExT IDEKfCAjZGVmaW5lIEhBVkVfTElCU1lTVEVNRCAxCnwgI2RlZmluZSBIQVZFX0pTT04gMQp8 ICNkZWZpbmUgSEFWRV9JTk9USUZZIDEKfCAjZGVmaW5lIFVTRV9GSUxFX05PVElGWSAxCnwg I2RlZmluZSBVU0VfVE9PTEtJVF9TQ1JPTExfQkFSUyAxCnwgI2RlZmluZSBIQVZFX1hJTSAx CnwgI2RlZmluZSBVU0VfWElNIDEKfCAjZGVmaW5lIEhBVkVfWFJFTkRFUiAxCnwgI2RlZmlu ZSBVU0VfQ0FJUk9fWENCIDEKfCAjZGVmaW5lIFVTRV9DQUlSTyAxCnwgI2RlZmluZSBIQVZF X0ZSRUVUWVBFIDEKfCAjZGVmaW5lIEhBVkVfRlRfRkFDRV9HRVRDSEFSVkFSSUFOVElOREVY IDEKfCAjZGVmaW5lIEhBVkVfTElCT1RGIDEKfCAjZGVmaW5lIEhBVkVfT1RGX0dFVF9WQVJJ QVRJT05fR0xZUEhTIDEKfCAjZGVmaW5lIEhBVkVfTTE3Tl9GTFQgMQp8ICNkZWZpbmUgSEFW RV9IQVJGQlVaWiAxCnwgI2RlZmluZSBVU0VfWENCIDEKfCAjZGVmaW5lIEhBVkVfWFBNIDEK fCAjZGVmaW5lIEhBVkVfSlBFRyAxCnwgI2RlZmluZSBIQVZFX0xDTVMyIDEKfCAjZGVmaW5l IEhBVkVfWkxJQiAxCnwgI2RlZmluZSBEWU5BTUlDX0xJQl9TVUZGSVggIi5zbyIKfCAjZGVm aW5lIERZTkFNSUNfTElCX1NFQ09OREFSWV9TVUZGSVggIiIKfCAjZGVmaW5lIEhBVkVfRExB RERSIDEKfCAjZGVmaW5lIEhBVkVfTU9EVUxFUyAxCnwgI2RlZmluZSBNT0RVTEVTX1NVRkZJ WCAiLnNvIgp8ICNkZWZpbmUgTkFUSVZFX0VMSVNQX1NVRkZJWCAiLmVsbiIKfCAjZGVmaW5l IEhBVkVfUE5HIDEKfCAjZGVmaW5lIEhBVkVfVElGRiAxCnwgI2RlZmluZSBIQVZFX0dJRiAx CnwgI2RlZmluZSBIQVZFX0dQTSAxCnwgI2RlZmluZSBIQVZFX1hfU00gMQp8ICNkZWZpbmUg SEFWRV9YUkFORFIgMQp8ICNkZWZpbmUgSEFWRV9YSU5FUkFNQSAxCnwgI2RlZmluZSBIQVZF X1hGSVhFUyAxCnwgI2RlZmluZSBIQVZFX1hJTlBVVDIgMQp8ICNkZWZpbmUgSEFWRV9YSVND Uk9MTENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWElUT1VDSENMQVNTSU5GT19U WVBFIDEKfCAjZGVmaW5lIEhBVkVfWElCQVJSSUVSUkVMRUFTRVBPSU5URVJJTkZPX0RFVklD RUlEIDEKfCAjZGVmaW5lIEhBVkVfWElHRVNUVVJFQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZp bmUgSEFWRV9YU1lOQyAxCnwgI2RlZmluZSBIQVZFX1hTWU5DVFJJR0dFUkZFTkNFIDEKfCAj ZGVmaW5lIEhBVkVfWERCRSAxCnwgI2RlZmluZSBIQVZFX1hDQl9TSEFQRSAxCnwgI2RlZmlu ZSBIQVZFX1hTSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hDT01QT1NJVEUgMQp8ICNkZWZpbmUg SEFWRV9MSUJYTUwyIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU0VDQ09NUF9IIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9TRUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfU0VDQ09NUF9GSUxURVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBIQVZFX0xJTlVY X0ZJTFRFUl9IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX1NFVF9NT0RFX0ZJTFRF UiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9GSUxURVJfRkxBR19UU1lOQyAxCnwg I2RlZmluZSBTSVpFT0ZfTE9ORyA4CnwgI2RlZmluZSBIQVZFX0FDQ0VQVDQgMQp8ICNkZWZp bmUgSEFWRV9GQ0hESVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAxCnwgI2RlZmlu ZSBIQVZFX0dFVFJVU0FHRSAxCnwgI2RlZmluZSBIQVZFX0dFVF9DVVJSRU5UX0RJUl9OQU1F IDEKfCAjZGVmaW5lIEhBVkVfTFJBTkQ0OCAxCnwgI2RlZmluZSBIQVZFX1JBTkRPTSAxCnwg I2RlZmluZSBIQVZFX1JJTlQgMQp8ICNkZWZpbmUgSEFWRV9UUlVOQyAxCnwgI2RlZmluZSBI QVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhB VkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfTkVXTE9DQUxFIDEKfCAjZGVmaW5lIEhB VkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhB VkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZp bmUgSEFWRV9TVFJTSUdOQUwgMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZp bmUgSEFWRV9TRU5EVE8gMQp8ICNkZWZpbmUgSEFWRV9SRUNWRlJPTSAxCnwgI2RlZmluZSBI QVZFX0dFVFNPQ0tOQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUSUZBRERSUyAxCnwgI2RlZmlu ZSBIQVZFX0ZSRUVJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfR0FJX1NUUkVSUk9SIDEKfCAj ZGVmaW5lIEhBVkVfU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5l IEhBVkVfRU5EUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUkVOVCAxCnwgI2RlZmluZSBI QVZFX0VOREdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfUkVOQU1FQVQyIDEKfCAjZGVmaW5lIEhB VkVfQ0ZNQUtFUkFXIDEKfCAjZGVmaW5lIEhBVkVfQ0ZTRVRTUEVFRCAxCnwgI2RlZmluZSBI QVZFX19fRVhFQ1VUQUJMRV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0xPRzIgMQp8ICNkZWZp bmUgSEFWRV9QVEhSRUFEX1NFVE5BTUVfTlAgMQp8ICNkZWZpbmUgSEFWRV9BTElHTkVEX0FM TE9DIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhB VkVfUE9TSVhfTUFEVklTRSAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9GUkFNRV9BRERS RVNTIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX1VOV0lORF9JTklUIDEKfCAjZGVmaW5l IEhBVkVfRlNFRUtPIDEKfCAjZGVmaW5lIEhBVkVfR1JBTlRQVCAxCnwgI2RlZmluZSBIQVZF X0dFVFBUIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfT1BFTlBUIDEKfCAjZGVmaW5lIFRFUk1J TkZPIDEKfCAjZGVmaW5lIFRFUk1JTkZPX0RFRklORVNfQkMgMQp8ICNkZWZpbmUgSEFWRV9U SU1FUkZEIDEKfCAjZGVmaW5lIEhBVkVfVkFMR1JJTkRfVkFMR1JJTkRfSCAxCnwgI2RlZmlu ZSBIQVZFX1NUUlVDVF9VTklQQUlSX1VOSUNPREUgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5H X1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19GT1JLIDEKfCAjZGVmaW5lIEhBVkVf U05QUklOVEYgMQp8ICNkZWZpbmUgSEFWRV9TUEFXTl9IIDEKfCAjZGVmaW5lIEhBVkVfUE9T SVhfU1BBV04gMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTl9GSUxFX0FDVElPTlNfQURE Q0hESVJfTlAgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTkFUVFJfU0VURkxBR1MgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX1BPU0lYX1NQQVdOX1NFVFNJRCAxCnwgI2RlZmluZSBIQVZF X0dMSUIgMQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5GT19DT0RFU0VUIDEKfCAjZGVmaW5lIEhB VkVfTEFOR0lORk9fX05MX1BBUEVSX1dJRFRIIDEKfCAjZGVmaW5lIEhBVkVfTUJTVEFURV9U IDEKfCAjZGVmaW5lIEFNUEVSU0FORF9GVUxMX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9QVFlT IDEKfCAjZGVmaW5lIEhBVkVfU09DS0VUUyAxCnwgI2RlZmluZSBOVUxMX0RFVklDRSAiL2Rl di9udWxsIgp8ICNkZWZpbmUgU0VQQ0hBUiAnOicKfCAjZGVmaW5lIHN1YnByb2Nlc3NlcyAx CnwgI2RlZmluZSBVU0VSX0ZVTExfTkFNRSBwdy0+cHdfZ2Vjb3MKfCAjZGVmaW5lIERJUkVD VE9SWV9TRVAgJy8nCnwgI2RlZmluZSBJU19ERVZJQ0VfU0VQKF9jXykgMAp8ICNkZWZpbmUg SVNfRElSRUNUT1JZX1NFUChfY18pICgoX2NfKSA9PSBESVJFQ1RPUllfU0VQKQp8ICNkZWZp bmUgSVNfQU5ZX1NFUChfY18pIChJU19ESVJFQ1RPUllfU0VQIChfY18pKQp8ICNkZWZpbmUg SEFWRV9QUk9DRlMgMQp8ICNkZWZpbmUgREVGQVVMVF9TT1VORF9ERVZJQ0UgIi9kZXYvZHNw Igp8ICNkZWZpbmUgSU5URVJSVVBUX0lOUFVUIDEKfCAjZGVmaW5lIE5BUlJPV1BST1RPIDEK fCAjZGVmaW5lIFVOSVg5OF9QVFlTIDEKfCAjZGVmaW5lIFBUWV9JVEVSQVRJT04gaW50IGk7 IGZvciAoaSA9IDA7IGkgPCAxOyBpKyspCnwgI2RlZmluZSBQVFlfVFRZX05BTUVfU1BSSU5U RiB7IGNoYXIgKnB0eW5hbWUgPSAwOyBzaWdzZXRfdCBibG9ja2VkOyBzaWdlbXB0eXNldCAo JmJsb2NrZWQpOyBzaWdhZGRzZXQgKCZibG9ja2VkLCBTSUdDSExEKTsgcHRocmVhZF9zaWdt YXNrIChTSUdfQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKGdyYW50cHQgKGZkKSAhPSAtMSAm JiB1bmxvY2twdCAoZmQpICE9IC0xKSBwdHluYW1lID0gcHRzbmFtZShmZCk7IHB0aHJlYWRf c2lnbWFzayAoU0lHX1VOQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKCFwdHluYW1lKSB7IGVt YWNzX2Nsb3NlIChmZCk7IHJldHVybiAtMTsgfSBzbnByaW50ZiAocHR5X25hbWUsIFBUWV9O QU1FX1NJWkUsICIlcyIsIHB0eW5hbWUpOyB9CnwgI2RlZmluZSBQVFlfT1BFTiBkbyB7IGZk ID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX0NMT0VYRUMgfCBPX05PQ1RUWSk7IGlmIChm ZCA8IDAgJiYgZXJybm8gPT0gRUlOVkFMKSBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwg T19OT0NUVFkpOyB9IHdoaWxlIChmYWxzZSkKfCAjZGVmaW5lIFBUWV9OQU1FX1NQUklOVEYg LyoqLwp8ICNkZWZpbmUgU0lHTkFMU19WSUFfQ0hBUkFDVEVSUyAxCnwgI2RlZmluZSBHQ19T RVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAjZGVmaW5lIEhB VkVfX1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVEpNUCAxCnwgI2RlZmluZSBIQVZF X1NUQUNLX09WRVJGTE9XX0hBTkRMSU5HIDEKfCAjZGVmaW5lIFVTRyAvKiovCnwgI2RlZmlu ZSBHTlVfTElOVVggLyoqLwp8ICNkZWZpbmUgU0laRU9GX1NQRUVEX1QgNAp8ICNkZWZpbmUg VVNBQkxFX0ZJT05SRUFEIDEKfCAjZGVmaW5lIFVTQUJMRV9TSUdJTyAxCnwgI2RlZmluZSBD T1BZUklHSFQgIkNvcHlyaWdodCAoQykgMjAyMyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24s IEluYy4iCnwgI2RlZmluZSBURVJNX0hFQURFUiAiZ3RrdXRpbC5oIgp8ICNkZWZpbmUgRU1B Q1NfQ09ORklHVVJBVElPTiAieDg2XzY0LXBjLWxpbnV4LWdudSIKfCAjZGVmaW5lIEVNQUNT X0NPTkZJR19PUFRJT05TICIiCnwgI2RlZmluZSBIQVZFX1hfV0lORE9XUyAxCnwgI2RlZmlu ZSBIQVZFX1gxMSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9BVFRSSUJVVEVfQUxJR05FRCAx CnwgI2RlZmluZSBIQVZFX1RZUEVPRiAxCnwgI2RlZmluZSBIQVZFX1NUQVRFTUVOVF9FWFBS RVNTSU9OUyAxCnwgI2RlZmluZSBNQUxMT0NfMF9JU19OT05OVUxMIDEKfCAjZGVmaW5lIEhB VkVfU1lTX0FDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GSUxFIDEKfCAjZGVmaW5l IEhBVkVfQUNMX0dFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRklMRSAxCnwgI2Rl ZmluZSBIQVZFX0FDTF9TRVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJFRSAxCnwgI2Rl ZmluZSBIQVZFX0FDTF9GUk9NX01PREUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9URVhU IDEKfCAjZGVmaW5lIEhBVkVfQUNMX0RFTEVURV9ERUZfRklMRSAxCnwgI2RlZmluZSBIQVZF X0FDTF9FWFRFTkRFRF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0xJQkFDTF9IIDEKfCAj ZGVmaW5lIEhBVkVfQUNMX0VOVFJJRVMgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRklSU1RfRU5U UlkgMQp8ICNkZWZpbmUgVVNFX0FDTCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQV9IIDEKfCAj ZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIExTVEFUX0ZPTExPV1NfU0xBU0hFRF9T WU1MSU5LIDEKfCAjZGVmaW5lIEZVTkNfUkVBTFBBVEhfV09SS1MgMQp8ICNkZWZpbmUgSEFW RV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9HRVRDV0QgMQp8ICNkZWZpbmUgcmVzdHJp Y3QgX19yZXN0cmljdF9fCnwgI2RlZmluZSBIQVZFX0VOVklST05fREVDTCAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfU1RSTU9ERSAwCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVm aW5lIEhBVkVfR0VUT1BUX0xPTkdfT05MWSAxCnwgI2RlZmluZSBIQVZFX0xPTkdfTE9OR19J TlQgMQp8ICNkZWZpbmUgSEFWRV9VTlNJR05FRF9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9NRU1NRU0gMQp8ICNkZWZpbmUgSEFWRV9ERUNMX01FTVJDSFIgMQp8IC8q IGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8bGltaXRzLmg+CnwgICAgICAgICAg ICAgaW50IHggPSBNSU4gKDQyLCAxNyk7CnwgaW50CnwgbWFpbiAodm9pZCkKfCB7CnwgCnwg ICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZTozMDkwNTogcmVzdWx0OiBubwpjb25m aWd1cmU6MzA5MTg6IGNoZWNraW5nIHdoZXRoZXIgPHN5cy9wYXJhbS5oPiBkZWZpbmVzIE1J TiBhbmQgTUFYCmNvbmZpZ3VyZTozMDkzNjogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3Qu YyA+JjUKY29uZmlndXJlOjMwOTM2OiAkPyA9IDAKY29uZmlndXJlOjMwOTQ0OiByZXN1bHQ6 IHllcwpjb25maWd1cmU6MzA5Nzc6IGNoZWNraW5nIHdoZXRoZXIgdGltZV90IGlzIHNpZ25l ZApjb25maWd1cmU6MzA5OTU6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNv bmZpZ3VyZTozMDk5NTogJD8gPSAwCmNvbmZpZ3VyZTozMTAwMzogcmVzdWx0OiB5ZXMKY29u ZmlndXJlOjMxMDExOiBjaGVja2luZyB3aGV0aGVyIGFsYXJtIGlzIGRlY2xhcmVkCmNvbmZp Z3VyZTozMTAxMTogZ2NjIC1jIC1nMyAtTzIgICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3Vy ZTozMTAxMTogJD8gPSAwCmNvbmZpZ3VyZTozMTAxMTogcmVzdWx0OiB5ZXMKY29uZmlndXJl OjMxMDI2OiBjaGVja2luZyBmb3Igd29ya2luZyBta3RpbWUKY29uZmlndXJlOjMxMjczOiBn Y2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCmNvbmZpZ3Vy ZTozMTI3MzogJD8gPSAwCmNvbmZpZ3VyZTozMTI3MzogLi9jb25mdGVzdApjb25maWd1cmU6 MzEyNzM6ICQ/ID0gNjQKY29uZmlndXJlOiBwcm9ncmFtIGV4aXRlZCB3aXRoIHN0YXR1cyA2 NApjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwg 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 Uk0gMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAvKiBUZXN0IHByb2dyYW0gZnJvbSBQ YXVsIEVnZ2VydCBhbmQgVG9ueSBMZW5laXMuICAqLwp8ICNpbmNsdWRlIDxsaW1pdHMuaD4K fCAjaW5jbHVkZSA8c3RkbGliLmg+CnwgI2luY2x1ZGUgPHRpbWUuaD4KfCAKfCAjaWZkZWYg SEFWRV9VTklTVERfSAp8ICMgaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgCnwgI2lm IEhBVkVfREVDTF9BTEFSTQp8ICMgaW5jbHVkZSA8c2lnbmFsLmg+CnwgI2VuZGlmCnwgCnwg CnwgCnwgCnwgI2lmIGRlZmluZWQgX1dJTjMyICYmICFkZWZpbmVkIF9fQ1lHV0lOX18KfCAj ZGVmaW5lIGFjY2VzcyAgICBfYWNjZXNzCnwgI2RlZmluZSBjaGRpciAgICAgX2NoZGlyCnwg I2RlZmluZSBjaG1vZCAgICAgX2NobW9kCnwgI2RlZmluZSBjbG9zZSAgICAgX2Nsb3NlCnwg I2RlZmluZSBjcmVhdCAgICAgX2NyZWF0CnwgI2RlZmluZSBkdXAgICAgICAgX2R1cAp8ICNk ZWZpbmUgZHVwMiAgICAgIF9kdXAyCnwgI2RlZmluZSBlY3Z0ICAgICAgX2VjdnQKfCAjZGVm aW5lIGV4ZWNsICAgICBfZXhlY2wKfCAjZGVmaW5lIGV4ZWNsZSAgICBfZXhlY2xlCnwgI2Rl ZmluZSBleGVjbHAgICAgX2V4ZWNscAp8ICNkZWZpbmUgZXhlY3YgICAgIF9leGVjdgp8ICNk ZWZpbmUgZXhlY3ZlICAgIF9leGVjdmUKfCAjZGVmaW5lIGV4ZWN2cCAgICBfZXhlY3ZwCnwg I2RlZmluZSBleGVjdnBlICAgX2V4ZWN2cGUKfCAjZGVmaW5lIGZjbG9zZWFsbCBfZmNsb3Nl YWxsCnwgI2RlZmluZSBmY3Z0ICAgICAgX2ZjdnQKfCAjZGVmaW5lIGZkb3BlbiAgICBfZmRv cGVuCnwgI2RlZmluZSBmaWxlbm8gICAgX2ZpbGVubwp8ICNkZWZpbmUgZ2N2dCAgICAgIF9n Y3Z0CnwgI2RlZmluZSBnZXRjd2QgICAgX2dldGN3ZAp8ICNkZWZpbmUgZ2V0cGlkICAgIF9n ZXRwaWQKfCAjZGVmaW5lIGdldHcgICAgICBfZ2V0dwp8ICNkZWZpbmUgaXNhdHR5ICAgIF9p c2F0dHkKfCAjZGVmaW5lIGowICAgICAgICBfajAKfCAjZGVmaW5lIGoxICAgICAgICBfajEK fCAjZGVmaW5lIGpuICAgICAgICBfam4KfCAjZGVmaW5lIGxmaW5kICAgICBfbGZpbmQKfCAj ZGVmaW5lIGxzZWFyY2ggICBfbHNlYXJjaAp8ICNkZWZpbmUgbHNlZWsgICAgIF9sc2Vlawp8 ICNkZWZpbmUgbWVtY2NweSAgIF9tZW1jY3B5CnwgI2RlZmluZSBta2RpciAgICAgX21rZGly CnwgI2RlZmluZSBta3RlbXAgICAgX21rdGVtcAp8ICNkZWZpbmUgb3BlbiAgICAgIF9vcGVu CnwgI2RlZmluZSBwdXRlbnYgICAgX3B1dGVudgp8ICNkZWZpbmUgcHV0dyAgICAgIF9wdXR3 CnwgI2RlZmluZSByZWFkICAgICAgX3JlYWQKfCAjZGVmaW5lIHJtZGlyICAgICBfcm1kaXIK fCAjZGVmaW5lIHN0cmR1cCAgICBfc3RyZHVwCnwgI2RlZmluZSBzd2FiICAgICAgX3N3YWIK fCAjZGVmaW5lIHRlbXBuYW0gICBfdGVtcG5hbQp8ICNkZWZpbmUgdHpzZXQgICAgIF90enNl dAp8ICNkZWZpbmUgdW1hc2sgICAgIF91bWFzawp8ICNkZWZpbmUgdW5saW5rICAgIF91bmxp bmsKfCAjZGVmaW5lIHV0aW1lICAgICBfdXRpbWUKfCAjZGVmaW5lIHdjc2R1cCAgICBfd2Nz ZHVwCnwgI2RlZmluZSB3cml0ZSAgICAgX3dyaXRlCnwgI2RlZmluZSB5MCAgICAgICAgX3kw CnwgI2RlZmluZSB5MSAgICAgICAgX3kxCnwgI2RlZmluZSB5biAgICAgICAgX3luCnwgI2Vu ZGlmCnwgCnwgCnwgCnwgI2lmbmRlZiBUSU1FX1RfSVNfU0lHTkVECnwgIyBkZWZpbmUgVElN RV9UX0lTX1NJR05FRCAwCnwgI2VuZGlmCnwgCnwgc3RhdGljIHRpbWVfdCB0aW1lX3RfbWF4 Owp8IHN0YXRpYyB0aW1lX3QgdGltZV90X21pbjsKfCAKfCAvKiBWYWx1ZXMgd2UnbGwgdXNl IHRvIHNldCB0aGUgVFogZW52aXJvbm1lbnQgdmFyaWFibGUuICAqLwp8IHN0YXRpYyBjaGFy ICp0el9zdHJpbmdzW10gPSB7CnwgICAoY2hhciAqKSAwLCAiVFo9R01UMCIsICJUWj1KU1Qt OSIsCnwgICAiVFo9RVNUKzNFRFQrMixNMTAuMS4wLzAwOjAwOjAwLE0yLjMuMC8wMDowMDow MCIKfCB9Owp8ICNkZWZpbmUgTl9TVFJJTkdTIChzaXplb2YgKHR6X3N0cmluZ3MpIC8gc2l6 ZW9mICh0el9zdHJpbmdzWzBdKSkKfCAKfCAvKiBSZXR1cm4gMCBpZiBta3RpbWUgZmFpbHMg dG8gY29udmVydCBhIGRhdGUgaW4gdGhlIHNwcmluZy1mb3J3YXJkIGdhcC4KfCAgICBCYXNl ZCBvbiBhIHByb2JsZW0gcmVwb3J0IGZyb20gQW5kcmVhcyBKYWVnZXIuICAqLwp8IHN0YXRp YyBpbnQKfCBzcHJpbmdfZm9yd2FyZF9nYXAgKCkKfCB7CnwgICAvKiBnbGliYyAodXAgdG8g YWJvdXQgMTk5OC0xMC0wNykgZmFpbGVkIHRoaXMgdGVzdC4gKi8KfCAgIHN0cnVjdCB0bSB0 bTsKfCAKfCAgIC8qIFVzZSB0aGUgcG9ydGFibGUgUE9TSVguMSBzcGVjaWZpY2F0aW9uICJU Wj1QU1Q4UERULE00LjEuMCxNMTAuNS4wIgp8ICAgICAgaW5zdGVhZCBvZiAiVFo9QW1lcmlj YS9WYW5jb3V2ZXIiIGluIG9yZGVyIHRvIGRldGVjdCB0aGUgYnVnIGV2ZW4KfCAgICAgIG9u IHN5c3RlbXMgdGhhdCBkb24ndCBzdXBwb3J0IHRoZSBPbHNvbiBleHRlbnNpb24sIG9yIGRv bid0IGhhdmUgdGhlCnwgICAgICBmdWxsIHpvbmVpbmZvIHRhYmxlcyBpbnN0YWxsZWQuICAq Lwp8ICAgaWYgKHB1dGVudiAoIlRaPVBTVDhQRFQsTTQuMS4wLE0xMC41LjAiKSAhPSAwKQp8 ICAgICByZXR1cm4gLTE7CnwgCnwgICB0bS50bV95ZWFyID0gOTg7CnwgICB0bS50bV9tb24g PSAzOwp8ICAgdG0udG1fbWRheSA9IDU7CnwgICB0bS50bV9ob3VyID0gMjsKfCAgIHRtLnRt X21pbiA9IDA7CnwgICB0bS50bV9zZWMgPSAwOwp8ICAgdG0udG1faXNkc3QgPSAtMTsKfCAg IHJldHVybiBta3RpbWUgKCZ0bSkgIT0gKHRpbWVfdCkgLTE7CnwgfQp8IAp8IHN0YXRpYyBp bnQKfCBta3RpbWVfdGVzdDEgKHRpbWVfdCBub3cpCnwgewp8ICAgc3RydWN0IHRtICpsdDsK fCAgIHJldHVybiAhIChsdCA9IGxvY2FsdGltZSAoJm5vdykpIHx8IG1rdGltZSAobHQpID09 IG5vdzsKfCB9CnwgCnwgc3RhdGljIGludAp8IG1rdGltZV90ZXN0ICh0aW1lX3Qgbm93KQp8 IHsKfCAgIHJldHVybiAobWt0aW1lX3Rlc3QxIChub3cpCnwgICAgICAgICAgICYmIG1rdGlt ZV90ZXN0MSAoKHRpbWVfdCkgKHRpbWVfdF9tYXggLSBub3cpKQp8ICAgICAgICAgICAmJiBt a3RpbWVfdGVzdDEgKCh0aW1lX3QpICh0aW1lX3RfbWluICsgbm93KSkpOwp8IH0KfCAKfCBz dGF0aWMgaW50CnwgaXJpeF82XzRfYnVnICgpCnwgewp8ICAgLyogQmFzZWQgb24gY29kZSBm cm9tIEFyaWVsIEZhaWdvbi4gICovCnwgICBzdHJ1Y3QgdG0gdG07CnwgICB0bS50bV95ZWFy ID0gOTY7CnwgICB0bS50bV9tb24gPSAzOwp8ICAgdG0udG1fbWRheSA9IDA7CnwgICB0bS50 bV9ob3VyID0gMDsKfCAgIHRtLnRtX21pbiA9IDA7CnwgICB0bS50bV9zZWMgPSAwOwp8ICAg dG0udG1faXNkc3QgPSAtMTsKfCAgIG1rdGltZSAoJnRtKTsKfCAgIHJldHVybiB0bS50bV9t b24gPT0gMiAmJiB0bS50bV9tZGF5ID09IDMxOwp8IH0KfCAKfCBzdGF0aWMgaW50CnwgYmln dGltZV90ZXN0IChpbnQgaikKfCB7CnwgICBzdHJ1Y3QgdG0gdG07CnwgICB0aW1lX3Qgbm93 Owp8ICAgdG0udG1feWVhciA9IHRtLnRtX21vbiA9IHRtLnRtX21kYXkgPSB0bS50bV9ob3Vy ID0gdG0udG1fbWluID0gdG0udG1fc2VjID0gajsKfCAgIG5vdyA9IG1rdGltZSAoJnRtKTsK fCAgIGlmIChub3cgIT0gKHRpbWVfdCkgLTEpCnwgICAgIHsKfCAgICAgICBzdHJ1Y3QgdG0g Kmx0ID0gbG9jYWx0aW1lICgmbm93KTsKfCAgICAgICBpZiAoISAobHQKfCAgICAgICAgICAg ICAgJiYgbHQtPnRtX3llYXIgPT0gdG0udG1feWVhcgp8ICAgICAgICAgICAgICAmJiBsdC0+ dG1fbW9uID09IHRtLnRtX21vbgp8ICAgICAgICAgICAgICAmJiBsdC0+dG1fbWRheSA9PSB0 bS50bV9tZGF5CnwgICAgICAgICAgICAgICYmIGx0LT50bV9ob3VyID09IHRtLnRtX2hvdXIK fCAgICAgICAgICAgICAgJiYgbHQtPnRtX21pbiA9PSB0bS50bV9taW4KfCAgICAgICAgICAg ICAgJiYgbHQtPnRtX3NlYyA9PSB0bS50bV9zZWMKfCAgICAgICAgICAgICAgJiYgbHQtPnRt X3lkYXkgPT0gdG0udG1feWRheQp8ICAgICAgICAgICAgICAmJiBsdC0+dG1fd2RheSA9PSB0 bS50bV93ZGF5CnwgICAgICAgICAgICAgICYmICgobHQtPnRtX2lzZHN0IDwgMCA/IC0xIDog MCA8IGx0LT50bV9pc2RzdCkKfCAgICAgICAgICAgICAgICAgICA9PSAodG0udG1faXNkc3Qg PCAwID8gLTEgOiAwIDwgdG0udG1faXNkc3QpKSkpCnwgICAgICAgICByZXR1cm4gMDsKfCAg ICAgfQp8ICAgcmV0dXJuIDE7CnwgfQp8IAp8IHN0YXRpYyBpbnQKfCB5ZWFyXzIwNTBfdGVz dCAoKQp8IHsKfCAgIC8qIFRoZSBjb3JyZWN0IGFuc3dlciBmb3IgMjA1MC0wMi0wMSAwMDow MDowMCBpbiBQYWNpZmljIHRpbWUsCnwgICAgICBpZ25vcmluZyBsZWFwIHNlY29uZHMuICAq Lwp8ICAgdW5zaWduZWQgbG9uZyBpbnQgYW5zd2VyID0gMjUyNzMxNTIwMFVMOwp8IAp8ICAg c3RydWN0IHRtIHRtOwp8ICAgdGltZV90IHQ7CnwgICB0bS50bV95ZWFyID0gMjA1MCAtIDE5 MDA7CnwgICB0bS50bV9tb24gPSAyIC0gMTsKfCAgIHRtLnRtX21kYXkgPSAxOwp8ICAgdG0u dG1faG91ciA9IHRtLnRtX21pbiA9IHRtLnRtX3NlYyA9IDA7CnwgICB0bS50bV9pc2RzdCA9 IC0xOwp8IAp8ICAgLyogVXNlIHRoZSBwb3J0YWJsZSBQT1NJWC4xIHNwZWNpZmljYXRpb24g IlRaPVBTVDhQRFQsTTQuMS4wLE0xMC41LjAiCnwgICAgICBpbnN0ZWFkIG9mICJUWj1BbWVy aWNhL1ZhbmNvdXZlciIgaW4gb3JkZXIgdG8gZGV0ZWN0IHRoZSBidWcgZXZlbgp8ICAgICAg b24gc3lzdGVtcyB0aGF0IGRvbid0IHN1cHBvcnQgdGhlIE9sc29uIGV4dGVuc2lvbiwgb3Ig ZG9uJ3QgaGF2ZSB0aGUKfCAgICAgIGZ1bGwgem9uZWluZm8gdGFibGVzIGluc3RhbGxlZC4g ICovCnwgICBpZiAocHV0ZW52ICgiVFo9UFNUOFBEVCxNNC4xLjAsTTEwLjUuMCIpICE9IDAp CnwgICAgIHJldHVybiAtMTsKfCAKfCAgIHQgPSBta3RpbWUgKCZ0bSk7CnwgCnwgICAvKiBD aGVjayB0aGF0IHRoZSByZXN1bHQgaXMgZWl0aGVyIGEgZmFpbHVyZSwgb3IgY2xvc2UgZW5v dWdoCnwgICAgICB0byB0aGUgY29ycmVjdCBhbnN3ZXIgdGhhdCB3ZSBjYW4gYXNzdW1lIHRo ZSBkaXNjcmVwYW5jeSBpcwp8ICAgICAgZHVlIHRvIGxlYXAgc2Vjb25kcy4gICovCnwgICBy ZXR1cm4gKHQgPT0gKHRpbWVfdCkgLTEKfCAgICAgICAgICAgfHwgKDAgPCB0ICYmIGFuc3dl ciAtIDEyMCA8PSB0ICYmIHQgPD0gYW5zd2VyICsgMTIwKSk7CnwgfQp8IAp8IHN0YXRpYyBp bnQKfCBpbmRpYW5hX3Rlc3QgKCkKfCB7CnwgICBpZiAocHV0ZW52ICgiVFo9QW1lcmljYS9J bmRpYW5hL0luZGlhbmFwb2xpcyIpICE9IDApCnwgICAgIHJldHVybiAtMTsKfCAgIHN0cnVj dCB0bSB0bTsKfCAgIHRtLnRtX3llYXIgPSAxOTg2IC0gMTkwMDsgdG0udG1fbW9uID0gNCAt IDE7IHRtLnRtX21kYXkgPSAyODsKfCAgIHRtLnRtX2hvdXIgPSAxNjsgdG0udG1fbWluID0g MjQ7IHRtLnRtX3NlYyA9IDUwOyB0bS50bV9pc2RzdCA9IDA7CnwgICB0aW1lX3Qgc3RkID0g bWt0aW1lICgmdG0pOwp8ICAgaWYgKCEgKHN0ZCA9PSA1MTUxMDc0OTAgfHwgc3RkID09IDUx NTEwNzUwMykpCnwgICAgIHJldHVybiAxOwp8IAp8ICAgLyogVGhpcyBwbGF0Zm9ybSBzdXBw b3J0cyBUWkRCLCBlaXRoZXIgd2l0aG91dCBvciB3aXRoIGxlYXAgc2Vjb25kcy4KfCAgICAg IFJldHVybiB0cnVlIGlmIEdOVSBCdWcjNDgwODUgaXMgYWJzZW50LiAgKi8KfCAgIHRtLnRt X2lzZHN0ID0gMTsKfCAgIHRpbWVfdCBkc3QgPSBta3RpbWUgKCZ0bSk7CnwgICByZXR1cm4g c3RkIC0gZHN0ID09IDYwICogNjA7CnwgfQp8IAp8IGludAp8IG1haW4gKCkKfCB7CnwgICBp bnQgcmVzdWx0ID0gMDsKfCAgIHRpbWVfdCB0LCBkZWx0YTsKfCAgIGludCBpLCBqOwp8ICAg aW50IHRpbWVfdF9zaWduZWRfbWFnbml0dWRlID0gKHRpbWVfdCkgfiAodGltZV90KSAwIDwg KHRpbWVfdCkgLTE7CnwgCnwgI2lmIEhBVkVfREVDTF9BTEFSTQp8ICAgLyogVGhpcyB0ZXN0 IG1ha2VzIHNvbWUgYnVnZ3kgbWt0aW1lIGltcGxlbWVudGF0aW9ucyBsb29wLgp8ICAgICAg R2l2ZSB1cCBhZnRlciA2MCBzZWNvbmRzOyBhIG1rdGltZSBzbG93ZXIgdGhhbiB0aGF0Cnwg ICAgICBpc24ndCB3b3J0aCB1c2luZyBhbnl3YXkuICAqLwp8ICAgc2lnbmFsIChTSUdBTFJN LCBTSUdfREZMKTsKfCAgIGFsYXJtICg2MCk7CnwgI2VuZGlmCnwgCnwgICB0aW1lX3RfbWF4 ID0gKCEgVElNRV9UX0lTX1NJR05FRAp8ICAgICAgICAgICAgICAgICA/ICh0aW1lX3QpIC0x CnwgICAgICAgICAgICAgICAgIDogKCgoKHRpbWVfdCkgMSA8PCAoc2l6ZW9mICh0aW1lX3Qp ICogQ0hBUl9CSVQgLSAyKSkgLSAxKQp8ICAgICAgICAgICAgICAgICAgICAqIDIgKyAxKSk7 CnwgICB0aW1lX3RfbWluID0gKCEgVElNRV9UX0lTX1NJR05FRAp8ICAgICAgICAgICAgICAg ICA/ICh0aW1lX3QpIDAKfCAgICAgICAgICAgICAgICAgOiB0aW1lX3Rfc2lnbmVkX21hZ25p dHVkZQp8ICAgICAgICAgICAgICAgICA/IH4gKHRpbWVfdCkgMAp8ICAgICAgICAgICAgICAg ICA6IH4gdGltZV90X21heCk7CnwgCnwgICBkZWx0YSA9IHRpbWVfdF9tYXggLyA5OTc7IC8q IGEgc3VpdGFibGUgcHJpbWUgbnVtYmVyICovCnwgICBmb3IgKGkgPSAwOyBpIDwgTl9TVFJJ TkdTOyBpKyspCnwgICAgIHsKfCAgICAgICBpZiAodHpfc3RyaW5nc1tpXSkKfCAgICAgICAg IHB1dGVudiAodHpfc3RyaW5nc1tpXSk7CnwgCnwgICAgICAgZm9yICh0ID0gMDsgdCA8PSB0 aW1lX3RfbWF4IC0gZGVsdGEgJiYgKHJlc3VsdCAmIDEpID09IDA7IHQgKz0gZGVsdGEpCnwg ICAgICAgICBpZiAoISBta3RpbWVfdGVzdCAodCkpCnwgICAgICAgICAgIHJlc3VsdCB8PSAx Owp8ICAgICAgIGlmICgocmVzdWx0ICYgMikgPT0gMAp8ICAgICAgICAgICAmJiAhIChta3Rp bWVfdGVzdCAoKHRpbWVfdCkgMSkKfCAgICAgICAgICAgICAgICAgJiYgbWt0aW1lX3Rlc3Qg KCh0aW1lX3QpICg2MCAqIDYwKSkKfCAgICAgICAgICAgICAgICAgJiYgbWt0aW1lX3Rlc3Qg KCh0aW1lX3QpICg2MCAqIDYwICogMjQpKSkpCnwgICAgICAgICByZXN1bHQgfD0gMjsKfCAK fCAgICAgICBmb3IgKGogPSAxOyAocmVzdWx0ICYgNCkgPT0gMDsgaiA8PD0gMSkKfCAgICAg ICAgIHsKfCAgICAgICAgICAgaWYgKCEgYmlndGltZV90ZXN0IChqKSkKfCAgICAgICAgICAg ICByZXN1bHQgfD0gNDsKfCAgICAgICAgICAgaWYgKElOVF9NQVggLyAyIDwgaikKfCAgICAg ICAgICAgICBicmVhazsKfCAgICAgICAgIH0KfCAgICAgICBpZiAoKHJlc3VsdCAmIDgpID09 IDAgJiYgISBiaWd0aW1lX3Rlc3QgKElOVF9NQVgpKQp8ICAgICAgICAgcmVzdWx0IHw9IDg7 CnwgICAgIH0KfCAgIGlmICghIGlyaXhfNl80X2J1ZyAoKSkKfCAgICAgcmVzdWx0IHw9IDE2 Owp8ICAgaWYgKCEgc3ByaW5nX2ZvcndhcmRfZ2FwICgpKQp8ICAgICByZXN1bHQgfD0gMzI7 CnwgICBpZiAoISB5ZWFyXzIwNTBfdGVzdCAoKSB8fCAhIGluZGlhbmFfdGVzdCAoKSkKfCAg ICAgcmVzdWx0IHw9IDY0Owp8ICAgcmV0dXJuIHJlc3VsdDsKfCB9CmNvbmZpZ3VyZTozMTI4 NjogcmVzdWx0OiBubwpjb25maWd1cmU6MzEzNDM6IGNoZWNraW5nIHdoZXRoZXIgc3RydWN0 IHRtIGlzIGluIHN5cy90aW1lLmggb3IgdGltZS5oCmNvbmZpZ3VyZTozMTM2NDogZ2NjIC1j IC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjMxMzY0OiAkPyA9IDAKY29u ZmlndXJlOjMxMzcyOiByZXN1bHQ6IHRpbWUuaApjb25maWd1cmU6MzEzODA6IGNoZWNraW5n IGZvciBzdHJ1Y3QgdG0udG1fem9uZQpjb25maWd1cmU6MzEzODA6IGdjYyAtYyAtZzMgLU8y ICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozMTM4MDogJD8gPSAwCmNvbmZpZ3VyZToz MTM4MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjMxNDQ3OiBjaGVja2luZyBmb3Igc3RydWN0 IHRtLnRtX2dtdG9mZgpjb25maWd1cmU6MzE0NDc6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0 ZXN0LmMgPiY1CmNvbmZpZ3VyZTozMTQ0NzogJD8gPSAwCmNvbmZpZ3VyZTozMTQ0NzogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjMxNDY2OiBjaGVja2luZyB3aGV0aGVyIDxzeXMvc2VsZWN0 Lmg+IGlzIHNlbGYtY29udGFpbmVkCmNvbmZpZ3VyZTozMTQ4NDogZ2NjIC1jIC1nMyAtTzIg ICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjMxNDg0OiAkPyA9IDAKY29uZmlndXJlOjMx NTA0OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzE1MDQ6 ICQ/ID0gMApjb25maWd1cmU6MzE1MzU6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAg Y29uZnRlc3QuYyAgID4mNSAKY29uZmlndXJlOjMxNTM1OiAkPyA9IDAKY29uZmlndXJlOjMx NTQ5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzE3MTE6IGNoZWNraW5nIGZvciBpbmxpbmUK Y29uZmlndXJlOjMxNzI4OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25m aWd1cmU6MzE3Mjg6ICQ/ID0gMApjb25maWd1cmU6MzE3Mzc6IHJlc3VsdDogaW5saW5lCmNv bmZpZ3VyZTozMTc1ODogY2hlY2tpbmcgZm9yIHNpZ3NldF90CmNvbmZpZ3VyZTozMTc1ODog Z2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjMxNzU4OiAkPyA9 IDAKY29uZmlndXJlOjMxNzU4OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpj b25mdGVzdC5jOiBJbiBmdW5jdGlvbiAnbWFpbic6CmNvbmZ0ZXN0LmM6MzQzOjIzOiBlcnJv cjogZXhwZWN0ZWQgZXhwcmVzc2lvbiBiZWZvcmUgJyknIHRva2VuCiAgMzQzIHwgaWYgKHNp emVvZiAoKHNpZ3NldF90KSkpCiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIF4KY29u ZmlndXJlOjMxNzU4OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6Cnwg 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 IDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgCnwgICAgICAgI2luY2x1ZGUgPHNpZ25h bC5oPgp8ICAgICAgIC8qIE1pbmd3IGRlZmluZXMgc2lnc2V0X3Qgbm90IGluIDxzaWduYWwu aD4sIGJ1dCBpbiA8c3lzL3R5cGVzLmg+LiAgKi8KfCAgICAgICAjaW5jbHVkZSA8c3lzL3R5 cGVzLmg+CnwgCnwgCnwgaW50CnwgbWFpbiAodm9pZCkKfCB7CnwgaWYgKHNpemVvZiAoKHNp Z3NldF90KSkpCnwgCSAgICByZXR1cm4gMDsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29u ZmlndXJlOjMxNzU4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzE4NTc6IGNoZWNraW5nIGZv ciB2b2xhdGlsZSBzaWdfYXRvbWljX3QKY29uZmlndXJlOjMxODU3OiBnY2MgLWMgLWczIC1P MiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzE4NTc6ICQ/ID0gMApjb25maWd1cmU6 MzE4NTc6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6IElu IGZ1bmN0aW9uICdtYWluJzoKY29uZnRlc3QuYzozNDI6MzY6IGVycm9yOiBleHBlY3RlZCBl eHByZXNzaW9uIGJlZm9yZSAnKScgdG9rZW4KICAzNDIgfCBpZiAoc2l6ZW9mICgodm9sYXRp bGUgc2lnX2F0b21pY190KSkpCiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBeCmNvbmZpZ3VyZTozMTg1NzogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHBy 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 KiovCnwgI2RlZmluZSBTSUdOQUxTX1ZJQV9DSEFSQUNURVJTIDEKfCAjZGVmaW5lIEdDX1NF VEpNUF9XT1JLUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgSEFW RV9fU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVf U1RBQ0tfT1ZFUkZMT1dfSEFORExJTkcgMQp8ICNkZWZpbmUgVVNHIC8qKi8KfCAjZGVmaW5l IEdOVV9MSU5VWCAvKiovCnwgI2RlZmluZSBTSVpFT0ZfU1BFRURfVCA0CnwgI2RlZmluZSBV U0FCTEVfRklPTlJFQUQgMQp8ICNkZWZpbmUgVVNBQkxFX1NJR0lPIDEKfCAjZGVmaW5lIENP UFlSSUdIVCAiQ29weXJpZ2h0IChDKSAyMDIzIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwg SW5jLiIKfCAjZGVmaW5lIFRFUk1fSEVBREVSICJndGt1dGlsLmgiCnwgI2RlZmluZSBFTUFD U19DT05GSUdVUkFUSU9OICJ4ODZfNjQtcGMtbGludXgtZ251Igp8ICNkZWZpbmUgRU1BQ1Nf Q09ORklHX09QVElPTlMgIiIKfCAjZGVmaW5lIEhBVkVfWF9XSU5ET1dTIDEKfCAjZGVmaW5l IEhBVkVfWDExIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0FUVFJJQlVURV9BTElHTkVEIDEK fCAjZGVmaW5lIEhBVkVfVFlQRU9GIDEKfCAjZGVmaW5lIEhBVkVfU1RBVEVNRU5UX0VYUFJF U1NJT05TIDEKfCAjZGVmaW5lIE1BTExPQ18wX0lTX05PTk5VTEwgMQp8ICNkZWZpbmUgSEFW RV9TWVNfQUNMX0ggMQp8ICNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZJTEUgMQp8ICNkZWZpbmUg SEFWRV9BQ0xfR0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX1NFVF9GSUxFIDEKfCAjZGVm aW5lIEhBVkVfQUNMX1NFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUkVFIDEKfCAjZGVm aW5lIEhBVkVfQUNMX0ZST01fTU9ERSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX1RFWFQg MQp8ICNkZWZpbmUgSEFWRV9BQ0xfREVMRVRFX0RFRl9GSUxFIDEKfCAjZGVmaW5lIEhBVkVf QUNMX0VYVEVOREVEX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfTElCQUNMX0ggMQp8ICNk ZWZpbmUgSEFWRV9BQ0xfRU5UUklFUyAxCnwgI2RlZmluZSBIQVZFX0FDTF9GSVJTVF9FTlRS WSAxCnwgI2RlZmluZSBVU0VfQUNMIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNk ZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgTFNUQVRfRk9MTE9XU19TTEFTSEVEX1NZ TUxJTksgMQp8ICNkZWZpbmUgRlVOQ19SRUFMUEFUSF9XT1JLUyAxCnwgI2RlZmluZSBIQVZF X0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0dFVENXRCAxCnwgI2RlZmluZSByZXN0cmlj dCBfX3Jlc3RyaWN0X18KfCAjZGVmaW5lIEhBVkVfRU5WSVJPTl9ERUNMIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9TVFJNT0RFIDAKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZp bmUgSEFWRV9HRVRPUFRfTE9OR19PTkxZIDEKfCAjZGVmaW5lIEhBVkVfTE9OR19MT05HX0lO VCAxCnwgI2RlZmluZSBIQVZFX1VOU0lHTkVEX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX01FTU1FTSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfTUVNUkNIUiAxCnwgI2Rl ZmluZSBIQVZFX01JTk1BWF9JTl9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBUSU1FX1RfSVNf U0lHTkVEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTEFSTSAxCnwgI2RlZmluZSBIQVZFX1NU UlVDVF9UTV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fWk9ORSAxCnwgI2RlZmluZSBI QVZFX1RNX0dNVE9GRiAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVF9UIDEKfCAvKiBlbmQgY29u ZmRlZnMuaC4gICovCnwgCnwgI2luY2x1ZGUgPHNpZ25hbC5oPgp8IAp8IAp8IGludAp8IG1h aW4gKHZvaWQpCnwgewp8IGlmIChzaXplb2YgKCh2b2xhdGlsZSBzaWdfYXRvbWljX3QpKSkK fCAJICAgIHJldHVybiAwOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MzE4 NTc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMTg3NDogY2hlY2tpbmcgZm9yIHNpZ2hhbmRs ZXJfdApjb25maWd1cmU6MzE4NzQ6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1 CmNvbmZpZ3VyZTozMTg3NDogJD8gPSAwCmNvbmZpZ3VyZTozMTg3NDogZ2NjIC1jIC1nMyAt TzIgICAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzogSW4gZnVuY3Rpb24gJ21haW4nOgpj b25mdGVzdC5jOjM0MjoyNzogZXJyb3I6IGV4cGVjdGVkIGV4cHJlc3Npb24gYmVmb3JlICcp JyB0b2tlbgogIDM0MiB8IGlmIChzaXplb2YgKChzaWdoYW5kbGVyX3QpKSkKICAgICAgfCAg ICAgICAgICAgICAgICAgICAgICAgICAgIF4KY29uZmlndXJlOjMxODc0OiAkPyA9IDEKY29u 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 IEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9IV0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1Rf SUZSRVFfSUZSX05FVE1BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JS T0FEQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQUREUiAxCnwgI2Rl ZmluZSBIQVZFX1NCUksgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmlu ZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9WRk9SSyAxCnwgI2RlZmluZSBIQVZFX0ZD SE1PRCAxCnwgI2RlZmluZSBIQVZFX0NBTk9OSUNBTElaRV9GSUxFX05BTUUgMQp8ICNkZWZp bmUgSEFWRV9SRUFMUEFUSCAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhB VkVfRkNITU9EQVQgMQp8ICNkZWZpbmUgSEFWRV9MQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9G Q05UTCAxCnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFU QVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRB WSAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJ R01BU0sgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX0lTQkxB TksgMQp8ICNkZWZpbmUgSEFWRV9JU1dDVFlQRSAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1B WCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVf UiAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgU1lTVEVNX01B TExPQyAxCnwgI2RlZmluZSBIQVZFX01NQVAgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEIDEK fCAjZGVmaW5lIFRIUkVBRFNfRU5BQkxFRCAxCnwgI2RlZmluZSBIQVZFX1hLQiAxCnwgI2Rl ZmluZSBIQVZFX1hLQlJFRlJFU0hLRVlCT0FSRE1BUFBJTkcgMQp8ICNkZWZpbmUgSEFWRV9Y S0JGUkVFTkFNRVMgMQp8ICNkZWZpbmUgSEFWRV9YUk1TRVREQVRBQkFTRSAxCnwgI2RlZmlu ZSBIQVZFX1hTQ1JFRU5SRVNPVVJDRVNUUklORyAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5O VU1CRVJPRlNDUkVFTiAxCnwgI2RlZmluZSBIQVZFX1hESVNQTEFZQ0VMTFMgMQp8ICNkZWZp bmUgSEFWRV9YREVTVFJPWVNVQldJTkRPV1MgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNiAxCnwg I2RlZmluZSBIQVZFX1hfSTE4TiAxCnwgI2RlZmluZSBIQVZFX1hJQ0NBTExCQUNLX0NBTExC QUNLIDEKfCAjZGVmaW5lIEhBVkVfWDExUjZfWElNIDEKfCAjZGVmaW5lIEhBVkVfUlNWRyAx CnwgI2RlZmluZSBIQVZFX1dFQlAgMQp8ICNkZWZpbmUgSEFWRV9TUUxJVEUzIDEKfCAjZGVm aW5lIEhBVkVfU1FMSVRFM19MT0FEX0VYVEVOU0lPTiAxCnwgI2RlZmluZSBIQVZFX0dFVEFE RFJJTkZPX0EgMQp8ICNkZWZpbmUgSEFWRV9HVEszIDEKfCAjZGVmaW5lIEdES19ESVNBQkxF X0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIEdMSUJfRElTQUJMRV9ERVBSRUNB VElPTl9XQVJOSU5HUyAxCnwgI2RlZmluZSBVU0VfR1RLIDEKfCAjZGVmaW5lIEhBVkVfTUFM TE9DX1RSSU0gMQp8ICNkZWZpbmUgSEFWRV9EQlVTIDEKfCAjZGVmaW5lIEhBVkVfREJVU19X QVRDSF9HRVRfVU5JWF9GRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVFlQRV9JU19WQUxJRCAx CnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfQlVTX05BTUUgMQp8ICNkZWZpbmUgSEFW RV9EQlVTX1ZBTElEQVRFX1BBVEggMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0lO VEVSRkFDRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfTUVNQkVSIDEKfCAjZGVm aW5lIEhBVkVfR1NFVFRJTkdTIDEKfCAjZGVmaW5lIEhBVkVfTElCU0VMSU5VWCAxCnwgI2Rl ZmluZSBIQVZFX0dOVVRMUyAxCnwgI2RlZmluZSBIQVZFX0xJQlNZU1RFTUQgMQp8ICNkZWZp bmUgSEFWRV9KU09OIDEKfCAjZGVmaW5lIEhBVkVfSU5PVElGWSAxCnwgI2RlZmluZSBVU0Vf RklMRV9OT1RJRlkgMQp8ICNkZWZpbmUgVVNFX1RPT0xLSVRfU0NST0xMX0JBUlMgMQp8ICNk ZWZpbmUgSEFWRV9YSU0gMQp8ICNkZWZpbmUgVVNFX1hJTSAxCnwgI2RlZmluZSBIQVZFX1hS RU5ERVIgMQp8ICNkZWZpbmUgVVNFX0NBSVJPX1hDQiAxCnwgI2RlZmluZSBVU0VfQ0FJUk8g MQp8ICNkZWZpbmUgSEFWRV9GUkVFVFlQRSAxCnwgI2RlZmluZSBIQVZFX0ZUX0ZBQ0VfR0VU Q0hBUlZBUklBTlRJTkRFWCAxCnwgI2RlZmluZSBIQVZFX0xJQk9URiAxCnwgI2RlZmluZSBI QVZFX09URl9HRVRfVkFSSUFUSU9OX0dMWVBIUyAxCnwgI2RlZmluZSBIQVZFX00xN05fRkxU IDEKfCAjZGVmaW5lIEhBVkVfSEFSRkJVWlogMQp8ICNkZWZpbmUgVVNFX1hDQiAxCnwgI2Rl ZmluZSBIQVZFX1hQTSAxCnwgI2RlZmluZSBIQVZFX0pQRUcgMQp8ICNkZWZpbmUgSEFWRV9M Q01TMiAxCnwgI2RlZmluZSBIQVZFX1pMSUIgMQp8ICNkZWZpbmUgRFlOQU1JQ19MSUJfU1VG RklYICIuc28iCnwgI2RlZmluZSBEWU5BTUlDX0xJQl9TRUNPTkRBUllfU1VGRklYICIiCnwg I2RlZmluZSBIQVZFX0RMQUREUiAxCnwgI2RlZmluZSBIQVZFX01PRFVMRVMgMQp8ICNkZWZp bmUgTU9EVUxFU19TVUZGSVggIi5zbyIKfCAjZGVmaW5lIE5BVElWRV9FTElTUF9TVUZGSVgg Ii5lbG4iCnwgI2RlZmluZSBIQVZFX1BORyAxCnwgI2RlZmluZSBIQVZFX1RJRkYgMQp8ICNk ZWZpbmUgSEFWRV9HSUYgMQp8ICNkZWZpbmUgSEFWRV9HUE0gMQp8ICNkZWZpbmUgSEFWRV9Y X1NNIDEKfCAjZGVmaW5lIEhBVkVfWFJBTkRSIDEKfCAjZGVmaW5lIEhBVkVfWElORVJBTUEg MQp8ICNkZWZpbmUgSEFWRV9YRklYRVMgMQp8ICNkZWZpbmUgSEFWRV9YSU5QVVQyIDEKfCAj ZGVmaW5lIEhBVkVfWElTQ1JPTExDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hJ VE9VQ0hDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hJQkFSUklFUlJFTEVBU0VQ T0lOVEVSSU5GT19ERVZJQ0VJRCAxCnwgI2RlZmluZSBIQVZFX1hJR0VTVFVSRUNMQVNTSU5G T19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWFNZTkMgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQ1RS SUdHRVJGRU5DRSAxCnwgI2RlZmluZSBIQVZFX1hEQkUgMQp8ICNkZWZpbmUgSEFWRV9YQ0Jf U0hBUEUgMQp8ICNkZWZpbmUgSEFWRV9YU0hBUEUgMQp8ICNkZWZpbmUgSEFWRV9YQ09NUE9T SVRFIDEKfCAjZGVmaW5lIEhBVkVfTElCWE1MMiAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX1NF Q0NPTVBfSCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIg MQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNk ZWZpbmUgSEFWRV9MSU5VWF9GSUxURVJfSCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09N UF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVS X0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgU0laRU9GX0xPTkcgOAp8ICNkZWZpbmUgSEFWRV9B Q0NFUFQ0IDEKfCAjZGVmaW5lIEhBVkVfRkNIRElSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9T VE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNBR0UgMQp8ICNkZWZpbmUgSEFWRV9HRVRf Q1VSUkVOVF9ESVJfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0xSQU5ENDggMQp8ICNkZWZpbmUg SEFWRV9SQU5ET00gMQp8ICNkZWZpbmUgSEFWRV9SSU5UIDEKfCAjZGVmaW5lIEhBVkVfVFJV TkMgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0la RSAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX05FV0xPQ0FM RSAxCnwgI2RlZmluZSBIQVZFX0dFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NFVFJMSU1J VCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9T SUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSU0lHTkFMIDEKfCAjZGVmaW5lIEhBVkVfU0VU SVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfU0VORFRPIDEKfCAjZGVmaW5lIEhBVkVfUkVDVkZS T00gMQp8ICNkZWZpbmUgSEFWRV9HRVRTT0NLTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVElG QUREUlMgMQp8ICNkZWZpbmUgSEFWRV9GUkVFSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0dB SV9TVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZFX1NZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRQ V0VOVCAxCnwgI2RlZmluZSBIQVZFX0VORFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JF TlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX1JFTkFNRUFU MiAxCnwgI2RlZmluZSBIQVZFX0NGTUFLRVJBVyAxCnwgI2RlZmluZSBIQVZFX0NGU0VUU1BF RUQgMQp8ICNkZWZpbmUgSEFWRV9fX0VYRUNVVEFCTEVfU1RBUlQgMQp8ICNkZWZpbmUgSEFW RV9MT0cyIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TRVROQU1FX05QIDEKfCAjZGVmaW5l IEhBVkVfQUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfQUxJR05FRF9BTExP QyAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX01BRFZJU0UgMQp8ICNkZWZpbmUgSEFWRV9fX0JV SUxUSU5fRlJBTUVfQUREUkVTUyAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9VTldJTkRf SU5JVCAxCnwgI2RlZmluZSBIQVZFX0ZTRUVLTyAxCnwgI2RlZmluZSBIQVZFX0dSQU5UUFQg MQp8ICNkZWZpbmUgSEFWRV9HRVRQVCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX09QRU5QVCAx CnwgI2RlZmluZSBURVJNSU5GTyAxCnwgI2RlZmluZSBURVJNSU5GT19ERUZJTkVTX0JDIDEK fCAjZGVmaW5lIEhBVkVfVElNRVJGRCAxCnwgI2RlZmluZSBIQVZFX1ZBTEdSSU5EX1ZBTEdS SU5EX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVU5JUEFJUl9VTklDT0RFIDEKfCAjZGVm aW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfRk9SSyAx CnwgI2RlZmluZSBIQVZFX1NOUFJJTlRGIDEKfCAjZGVmaW5lIEhBVkVfU1BBV05fSCAxCnwg I2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV05f RklMRV9BQ1RJT05TX0FERENIRElSX05QIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV05B VFRSX1NFVEZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QT1NJWF9TUEFXTl9TRVRTSUQg MQp8ICNkZWZpbmUgSEFWRV9HTElCIDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fQ09ERVNF VCAxCnwgI2RlZmluZSBIQVZFX0xBTkdJTkZPX19OTF9QQVBFUl9XSURUSCAxCnwgI2RlZmlu ZSBIQVZFX01CU1RBVEVfVCAxCnwgI2RlZmluZSBBTVBFUlNBTkRfRlVMTF9OQU1FIDEKfCAj ZGVmaW5lIEhBVkVfUFRZUyAxCnwgI2RlZmluZSBIQVZFX1NPQ0tFVFMgMQp8ICNkZWZpbmUg TlVMTF9ERVZJQ0UgIi9kZXYvbnVsbCIKfCAjZGVmaW5lIFNFUENIQVIgJzonCnwgI2RlZmlu ZSBzdWJwcm9jZXNzZXMgMQp8ICNkZWZpbmUgVVNFUl9GVUxMX05BTUUgcHctPnB3X2dlY29z CnwgI2RlZmluZSBESVJFQ1RPUllfU0VQICcvJwp8ICNkZWZpbmUgSVNfREVWSUNFX1NFUChf Y18pIDAKfCAjZGVmaW5lIElTX0RJUkVDVE9SWV9TRVAoX2NfKSAoKF9jXykgPT0gRElSRUNU T1JZX1NFUCkKfCAjZGVmaW5lIElTX0FOWV9TRVAoX2NfKSAoSVNfRElSRUNUT1JZX1NFUCAo X2NfKSkKfCAjZGVmaW5lIEhBVkVfUFJPQ0ZTIDEKfCAjZGVmaW5lIERFRkFVTFRfU09VTkRf REVWSUNFICIvZGV2L2RzcCIKfCAjZGVmaW5lIElOVEVSUlVQVF9JTlBVVCAxCnwgI2RlZmlu ZSBOQVJST1dQUk9UTyAxCnwgI2RlZmluZSBVTklYOThfUFRZUyAxCnwgI2RlZmluZSBQVFlf SVRFUkFUSU9OIGludCBpOyBmb3IgKGkgPSAwOyBpIDwgMTsgaSsrKQp8ICNkZWZpbmUgUFRZ X1RUWV9OQU1FX1NQUklOVEYgeyBjaGFyICpwdHluYW1lID0gMDsgc2lnc2V0X3QgYmxvY2tl ZDsgc2lnZW1wdHlzZXQgKCZibG9ja2VkKTsgc2lnYWRkc2V0ICgmYmxvY2tlZCwgU0lHQ0hM RCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX0JMT0NLLCAmYmxvY2tlZCwgMCk7IGlmIChncmFu dHB0IChmZCkgIT0gLTEgJiYgdW5sb2NrcHQgKGZkKSAhPSAtMSkgcHR5bmFtZSA9IHB0c25h bWUoZmQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19VTkJMT0NLLCAmYmxvY2tlZCwgMCk7IGlm ICghcHR5bmFtZSkgeyBlbWFjc19jbG9zZSAoZmQpOyByZXR1cm4gLTE7IH0gc25wcmludGYg KHB0eV9uYW1lLCBQVFlfTkFNRV9TSVpFLCAiJXMiLCBwdHluYW1lKTsgfQp8ICNkZWZpbmUg UFRZX09QRU4gZG8geyBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19DTE9FWEVDIHwg T19OT0NUVFkpOyBpZiAoZmQgPCAwICYmIGVycm5vID09IEVJTlZBTCkgZmQgPSBwb3NpeF9v cGVucHQgKE9fUkRXUiB8IE9fTk9DVFRZKTsgfSB3aGlsZSAoZmFsc2UpCnwgI2RlZmluZSBQ VFlfTkFNRV9TUFJJTlRGIC8qKi8KfCAjZGVmaW5lIFNJR05BTFNfVklBX0NIQVJBQ1RFUlMg MQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JL UyAxCnwgI2RlZmluZSBIQVZFX19TRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRVRKTVAg MQp8ICNkZWZpbmUgSEFWRV9TVEFDS19PVkVSRkxPV19IQU5ETElORyAxCnwgI2RlZmluZSBV U0cgLyoqLwp8ICNkZWZpbmUgR05VX0xJTlVYIC8qKi8KfCAjZGVmaW5lIFNJWkVPRl9TUEVF RF9UIDQKfCAjZGVmaW5lIFVTQUJMRV9GSU9OUkVBRCAxCnwgI2RlZmluZSBVU0FCTEVfU0lH SU8gMQp8ICNkZWZpbmUgQ09QWVJJR0hUICJDb3B5cmlnaHQgKEMpIDIwMjMgRnJlZSBTb2Z0 d2FyZSBGb3VuZGF0aW9uLCBJbmMuIgp8ICNkZWZpbmUgVEVSTV9IRUFERVIgImd0a3V0aWwu aCIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR1VSQVRJT04gIng4Nl82NC1wYy1saW51eC1nbnUi CnwgI2RlZmluZSBFTUFDU19DT05GSUdfT1BUSU9OUyAiIgp8ICNkZWZpbmUgSEFWRV9YX1dJ TkRPV1MgMQp8ICNkZWZpbmUgSEFWRV9YMTEgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfQVRU UklCVVRFX0FMSUdORUQgMQp8ICNkZWZpbmUgSEFWRV9UWVBFT0YgMQp8ICNkZWZpbmUgSEFW RV9TVEFURU1FTlRfRVhQUkVTU0lPTlMgMQp8ICNkZWZpbmUgTUFMTE9DXzBfSVNfTk9OTlVM TCAxCnwgI2RlZmluZSBIQVZFX1NZU19BQ0xfSCAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRf RklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xf U0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVf QUNMX0ZSRUUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9NT0RFIDEKfCAjZGVmaW5lIEhB VkVfQUNMX0ZST01fVEVYVCAxCnwgI2RlZmluZSBIQVZFX0FDTF9ERUxFVEVfREVGX0ZJTEUg MQp8ICNkZWZpbmUgSEFWRV9BQ0xfRVhURU5ERURfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FD TF9MSUJBQ0xfSCAxCnwgI2RlZmluZSBIQVZFX0FDTF9FTlRSSUVTIDEKfCAjZGVmaW5lIEhB VkVfQUNMX0ZJUlNUX0VOVFJZIDEKfCAjZGVmaW5lIFVTRV9BQ0wgMQp8ICNkZWZpbmUgSEFW RV9BTExPQ0FfSCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBMU1RBVF9G T0xMT1dTX1NMQVNIRURfU1lNTElOSyAxCnwgI2RlZmluZSBGVU5DX1JFQUxQQVRIX1dPUktT IDEKfCAjZGVmaW5lIEhBVkVfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfR0VUQ1dEIDEK fCAjZGVmaW5lIHJlc3RyaWN0IF9fcmVzdHJpY3RfXwp8ICNkZWZpbmUgSEFWRV9FTlZJUk9O X0RFQ0wgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUk1PREUgMAp8ICNkZWZpbmUgSEFWRV9H RVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9MT05HX09OTFkgMQp8ICNkZWZpbmUg SEFWRV9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfVU5TSUdORURfTE9OR19MT05H X0lOVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfTUVNTUVNIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9NRU1SQ0hSIDEKfCAjZGVmaW5lIEhBVkVfTUlOTUFYX0lOX1NZU19QQVJBTV9IIDEKfCAj ZGVmaW5lIFRJTUVfVF9JU19TSUdORUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0FMQVJNIDEK fCAjZGVmaW5lIEhBVkVfU1RSVUNUX1RNX1RNX1pPTkUgMQp8ICNkZWZpbmUgSEFWRV9UTV9a T05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fR01UT0ZGIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VU X1QgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAjaW5jbHVkZSA8c2lnbmFsLmg+ CnwgCnwgCnwgaW50CnwgbWFpbiAodm9pZCkKfCB7CnwgaWYgKHNpemVvZiAoKHNpZ2hhbmRs ZXJfdCkpKQp8IAkgICAgcmV0dXJuIDA7CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZp Z3VyZTozMTg3NDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjMxOTA5OiBjaGVja2luZyBmb3Ig d2NoYXJfdApjb25maWd1cmU6MzE5Mjc6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMg PiY1CmNvbmZpZ3VyZTozMTkyNzogJD8gPSAwCmNvbmZpZ3VyZTozMTkzNTogcmVzdWx0OiB5 ZXMKY29uZmlndXJlOjMxOTUxOiBjaGVja2luZyBmb3IgZ29vZCBtYXhfYWxpZ25fdApjb25m aWd1cmU6MzE5ODg6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3Vy ZTozMTk4ODogJD8gPSAwCmNvbmZpZ3VyZTozMTk5NzogcmVzdWx0OiB5ZXMKY29uZmlndXJl OjMyMDA5OiBjaGVja2luZyB3aGV0aGVyIE5VTEwgY2FuIGJlIHVzZWQgaW4gYXJiaXRyYXJ5 IGV4cHJlc3Npb25zCmNvbmZpZ3VyZTozMjAyODogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRl c3QuYyA+JjUKY29uZmlndXJlOjMyMDI4OiAkPyA9IDAKY29uZmlndXJlOjMyMDM2OiByZXN1 bHQ6IHllcwpjb25maWd1cmU6MzIxNzQ6IGNoZWNraW5nIHdoZXRoZXIgZmNsb3NlYWxsIGlz IGRlY2xhcmVkCmNvbmZpZ3VyZTozMjE3NDogZ2NjIC1jIC1nMyAtTzIgICAgIGNvbmZ0ZXN0 LmMgPiY1CmNvbmZpZ3VyZTozMjE3NDogJD8gPSAwCmNvbmZpZ3VyZTozMjE3NDogcmVzdWx0 OiB5ZXMKY29uZmlndXJlOjMyMTgzOiBjaGVja2luZyB3aGV0aGVyIGdldHcgaXMgZGVjbGFy ZWQKY29uZmlndXJlOjMyMTgzOiBnY2MgLWMgLWczIC1PMiAgICAgY29uZnRlc3QuYyA+JjUK Y29uZmlndXJlOjMyMTgzOiAkPyA9IDAKY29uZmlndXJlOjMyMTgzOiByZXN1bHQ6IHllcwpj b25maWd1cmU6MzIxOTI6IGNoZWNraW5nIHdoZXRoZXIgcHV0dyBpcyBkZWNsYXJlZApjb25m aWd1cmU6MzIxOTI6IGdjYyAtYyAtZzMgLU8yICAgICBjb25mdGVzdC5jID4mNQpjb25maWd1 cmU6MzIxOTI6ICQ/ID0gMApjb25maWd1cmU6MzIxOTI6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy ZTozMjI3OTogY2hlY2tpbmcgd2hpY2ggZmxhdm9yIG9mIHByaW50ZiBhdHRyaWJ1dGUgbWF0 Y2hlcyBpbnR0eXBlcyBtYWNyb3MKY29uZmlndXJlOjMyMzA3OiBnY2MgLWMgLWczIC1PMiAg ICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzIzMDc6ICQ/ID0gMApjb25maWd1cmU6MzIz MTU6IHJlc3VsdDogc3lzdGVtCmNvbmZpZ3VyZTozMjU4OTogY2hlY2tpbmcgd2hldGhlciBl Y3Z0IGlzIGRlY2xhcmVkCmNvbmZpZ3VyZTozMjU4OTogZ2NjIC1jIC1nMyAtTzIgICAgIGNv bmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozMjU4OTogJD8gPSAwCmNvbmZpZ3VyZTozMjU4OTog cmVzdWx0OiB5ZXMKY29uZmlndXJlOjMyNTk4OiBjaGVja2luZyB3aGV0aGVyIGZjdnQgaXMg ZGVjbGFyZWQKY29uZmlndXJlOjMyNTk4OiBnY2MgLWMgLWczIC1PMiAgICAgY29uZnRlc3Qu YyA+JjUKY29uZmlndXJlOjMyNTk4OiAkPyA9IDAKY29uZmlndXJlOjMyNTk4OiByZXN1bHQ6 IHllcwpjb25maWd1cmU6MzI2MDc6IGNoZWNraW5nIHdoZXRoZXIgZ2N2dCBpcyBkZWNsYXJl ZApjb25maWd1cmU6MzI2MDc6IGdjYyAtYyAtZzMgLU8yICAgICBjb25mdGVzdC5jID4mNQpj b25maWd1cmU6MzI2MDc6ICQ/ID0gMApjb25maWd1cmU6MzI2MDc6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZTozMjc4NzogY2hlY2tpbmcgd2hldGhlciBzdHJubGVuIGlzIGRlY2xhcmVkCmNv bmZpZ3VyZTozMjc4NzogZ2NjIC1jIC1nMyAtTzIgICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZp Z3VyZTozMjc4NzogJD8gPSAwCmNvbmZpZ3VyZTozMjc4NzogcmVzdWx0OiB5ZXMKY29uZmln dXJlOjMyNzk3OiBjaGVja2luZyB3aGV0aGVyIHN0cnRvaW1heCBpcyBkZWNsYXJlZApjb25m aWd1cmU6MzI3OTc6IGdjYyAtYyAtZzMgLU8yICAgICBjb25mdGVzdC5jID4mNQpjb25maWd1 cmU6MzI3OTc6ICQ/ID0gMApjb25maWd1cmU6MzI3OTc6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy ZTozMjkwMzogY2hlY2tpbmcgd2hldGhlciBzdGF0IGZpbGUtbW9kZSBtYWNyb3MgYXJlIGJy b2tlbgpjb25maWd1cmU6MzI5MzE6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1 CmNvbmZpZ3VyZTozMjkzMTogJD8gPSAwCmNvbmZpZ3VyZTozMjkzOTogcmVzdWx0OiBubwpj b25maWd1cmU6MzMwNDQ6IGNoZWNraW5nIGZvciBubGlua190CmNvbmZpZ3VyZTozMzA0NDog Z2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjMzMDQ0OiAkPyA9 IDAKY29uZmlndXJlOjMzMDQ0OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpj b25mdGVzdC5jOiBJbiBmdW5jdGlvbiAnbWFpbic6CmNvbmZ0ZXN0LmM6MzUxOjIyOiBlcnJv cjogZXhwZWN0ZWQgZXhwcmVzc2lvbiBiZWZvcmUgJyknIHRva2VuCiAgMzUxIHwgaWYgKHNp emVvZiAoKG5saW5rX3QpKSkKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICBeCmNvbmZp Z3VyZTozMzA0NDogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8q 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 CnwgI2RlZmluZSBIQVZFX1NJR1NFVF9UIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfVCAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfRkNMT1NFQUxMIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRX IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRXIDEKfCAjZGVmaW5lIF9fVVNFX01JTkdXX0FO U0lfU1RESU8gMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VDVlQgMQp8ICNkZWZpbmUgSEFWRV9E RUNMX0ZDVlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dDVlQgMQp8ICNkZWZpbmUgSEFWRV9E RUNMX1NUUk5MRU4gMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUlRPSU1BWCAxCnwgLyogZW5k IGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAgICAgICNpbmNs dWRlIDxzeXMvc3RhdC5oPgp8IAp8IGludAp8IG1haW4gKHZvaWQpCnwgewp8IGlmIChzaXpl b2YgKChubGlua190KSkpCnwgCSAgICByZXR1cm4gMDsKfCAgIDsKfCAgIHJldHVybiAwOwp8 IH0KY29uZmlndXJlOjMzMDQ0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzMxNjQ6IGNoZWNr aW5nIGZvciBzdHJ1Y3QgdGltZXNwZWMgaW4gPHRpbWUuaD4KY29uZmlndXJlOjMzMTgyOiBn Y2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzMxODI6ICQ/ID0g MApjb25maWd1cmU6MzMxOTA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMzM4MjogY2hlY2tp bmcgZm9yIFRJTUVfVVRDIGluIDx0aW1lLmg+CmNvbmZpZ3VyZTozMzQwMDogZ2NjIC1jIC1n MyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjMzNDAwOiAkPyA9IDAKY29uZmln dXJlOjMzNDA4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzM0MTg6IGNoZWNraW5nIHdoZXRo ZXIgZXhlY3ZwZSBpcyBkZWNsYXJlZApjb25maWd1cmU6MzM0MTg6IGdjYyAtYyAtZzMgLU8y ICAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzM0MTg6ICQ/ID0gMApjb25maWd1cmU6 MzM0MTg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMzUyOTogY2hlY2tpbmcgd2hldGhlciBj bGVhcmVycl91bmxvY2tlZCBpcyBkZWNsYXJlZApjb25maWd1cmU6MzM1Mjk6IGdjYyAtYyAt ZzMgLU8yICAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzM1Mjk6ICQ/ID0gMApjb25m aWd1cmU6MzM1Mjk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMzUzODogY2hlY2tpbmcgd2hl dGhlciBmZW9mX3VubG9ja2VkIGlzIGRlY2xhcmVkCmNvbmZpZ3VyZTozMzUzODogZ2NjIC1j IC1nMyAtTzIgICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozMzUzODogJD8gPSAwCmNv bmZpZ3VyZTozMzUzODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjMzNTQ3OiBjaGVja2luZyB3 aGV0aGVyIGZlcnJvcl91bmxvY2tlZCBpcyBkZWNsYXJlZApjb25maWd1cmU6MzM1NDc6IGdj YyAtYyAtZzMgLU8yICAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzM1NDc6ICQ/ID0g MApjb25maWd1cmU6MzM1NDc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMzU1NjogY2hlY2tp bmcgd2hldGhlciBmZmx1c2hfdW5sb2NrZWQgaXMgZGVjbGFyZWQKY29uZmlndXJlOjMzNTU2 OiBnY2MgLWMgLWczIC1PMiAgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjMzNTU2OiAk PyA9IDAKY29uZmlndXJlOjMzNTU2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzM1NjU6IGNo ZWNraW5nIHdoZXRoZXIgZmdldHNfdW5sb2NrZWQgaXMgZGVjbGFyZWQKY29uZmlndXJlOjMz NTY1OiBnY2MgLWMgLWczIC1PMiAgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjMzNTY1 OiAkPyA9IDAKY29uZmlndXJlOjMzNTY1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzM1NzQ6 IGNoZWNraW5nIHdoZXRoZXIgZnB1dGNfdW5sb2NrZWQgaXMgZGVjbGFyZWQKY29uZmlndXJl OjMzNTc0OiBnY2MgLWMgLWczIC1PMiAgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjMz NTc0OiAkPyA9IDAKY29uZmlndXJlOjMzNTc0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzM1 ODM6IGNoZWNraW5nIHdoZXRoZXIgZnB1dHNfdW5sb2NrZWQgaXMgZGVjbGFyZWQKY29uZmln dXJlOjMzNTgzOiBnY2MgLWMgLWczIC1PMiAgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJl OjMzNTgzOiAkPyA9IDAKY29uZmlndXJlOjMzNTgzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6 MzM1OTI6IGNoZWNraW5nIHdoZXRoZXIgZnJlYWRfdW5sb2NrZWQgaXMgZGVjbGFyZWQKY29u ZmlndXJlOjMzNTkyOiBnY2MgLWMgLWczIC1PMiAgICAgY29uZnRlc3QuYyA+JjUKY29uZmln dXJlOjMzNTkyOiAkPyA9IDAKY29uZmlndXJlOjMzNTkyOiByZXN1bHQ6IHllcwpjb25maWd1 cmU6MzM2MDE6IGNoZWNraW5nIHdoZXRoZXIgZndyaXRlX3VubG9ja2VkIGlzIGRlY2xhcmVk CmNvbmZpZ3VyZTozMzYwMTogZ2NjIC1jIC1nMyAtTzIgICAgIGNvbmZ0ZXN0LmMgPiY1CmNv bmZpZ3VyZTozMzYwMTogJD8gPSAwCmNvbmZpZ3VyZTozMzYwMTogcmVzdWx0OiB5ZXMKY29u ZmlndXJlOjMzNjEwOiBjaGVja2luZyB3aGV0aGVyIGdldGNfdW5sb2NrZWQgaXMgZGVjbGFy ZWQKY29uZmlndXJlOjMzNjEwOiBnY2MgLWMgLWczIC1PMiAgICAgY29uZnRlc3QuYyA+JjUK Y29uZmlndXJlOjMzNjEwOiAkPyA9IDAKY29uZmlndXJlOjMzNjEwOiByZXN1bHQ6IHllcwpj b25maWd1cmU6MzM2MTk6IGNoZWNraW5nIHdoZXRoZXIgZ2V0Y2hhcl91bmxvY2tlZCBpcyBk ZWNsYXJlZApjb25maWd1cmU6MzM2MTk6IGdjYyAtYyAtZzMgLU8yICAgICBjb25mdGVzdC5j ID4mNQpjb25maWd1cmU6MzM2MTk6ICQ/ID0gMApjb25maWd1cmU6MzM2MTk6IHJlc3VsdDog eWVzCmNvbmZpZ3VyZTozMzYyODogY2hlY2tpbmcgd2hldGhlciBwdXRjX3VubG9ja2VkIGlz IGRlY2xhcmVkCmNvbmZpZ3VyZTozMzYyODogZ2NjIC1jIC1nMyAtTzIgICAgIGNvbmZ0ZXN0 LmMgPiY1CmNvbmZpZ3VyZTozMzYyODogJD8gPSAwCmNvbmZpZ3VyZTozMzYyODogcmVzdWx0 OiB5ZXMKY29uZmlndXJlOjMzNjM3OiBjaGVja2luZyB3aGV0aGVyIHB1dGNoYXJfdW5sb2Nr ZWQgaXMgZGVjbGFyZWQKY29uZmlndXJlOjMzNjM3OiBnY2MgLWMgLWczIC1PMiAgICAgY29u ZnRlc3QuYyA+JjUKY29uZmlndXJlOjMzNjM3OiAkPyA9IDAKY29uZmlndXJlOjMzNjM3OiBy ZXN1bHQ6IHllcwpjb25maWd1cmU6MzM2NDY6IGNoZWNraW5nIHR5cGUgb2YgYXJyYXkgYXJn dW1lbnQgdG8gZ2V0Z3JvdXBzCmNvbmZpZ3VyZTozMzY4MjogZ2NjIC1vIGNvbmZ0ZXN0IC1n MyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1IApjb25maWd1cmU6MzM2ODI6ICQ/ID0gMApj b25maWd1cmU6MzM2ODI6IC4vY29uZnRlc3QKY29uZmlndXJlOjMzNjgyOiAkPyA9IDAKY29u ZmlndXJlOjMzNzA5OiByZXN1bHQ6IGdpZF90CmNvbmZpZ3VyZTozMzcxNjogY2hlY2tpbmcg d2hldGhlciBnZXRkdGFibGVzaXplIGlzIGRlY2xhcmVkCmNvbmZpZ3VyZTozMzcxNjogZ2Nj IC1jIC1nMyAtTzIgICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozMzcxNjogJD8gPSAw CmNvbmZpZ3VyZTozMzcxNjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjMzNzI2OiBjaGVja2lu ZyB3aGV0aGVyIG1hbGxvYyBpcyBwdHJkaWZmX3Qgc2FmZQpjb25maWd1cmU6MzM3NjM6IGdj YyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozMzc2MzogJD8gPSAw CmNvbmZpZ3VyZTozMzc3MjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjMzNzgyOiBjaGVja2lu ZyB3aGV0aGVyIG1hbGxvYywgcmVhbGxvYywgY2FsbG9jIHNldCBlcnJubyBvbiBmYWlsdXJl CmNvbmZpZ3VyZTozMzgwMDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjMzODE2OiBjaGVja2lu ZyBmb3IgT19DTE9FWEVDCmNvbmZpZ3VyZTozMzgzNzogZ2NjIC1jIC1nMyAtTzIgICAgY29u ZnRlc3QuYyA+JjUKY29uZmlndXJlOjMzODM3OiAkPyA9IDAKY29uZmlndXJlOjMzODQ1OiBy ZXN1bHQ6IHllcwpjb25maWd1cmU6MzM4NTA6IGNoZWNraW5nIGZvciBwcm9tb3RlZCBtb2Rl X3QgdHlwZQpjb25maWd1cmU6MzM4Njg6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMg PiY1CmNvbmZ0ZXN0LmM6IEluIGZ1bmN0aW9uICdtYWluJzoKY29uZnRlc3QuYzozNjc6MTM6 IGVycm9yOiBzaXplIG9mIGFycmF5ICdhcnJheScgaXMgbmVnYXRpdmUKICAzNjcgfCB0eXBl ZGVmIGludCBhcnJheVsyICogKHNpemVvZiAobW9kZV90KSA8IHNpemVvZiAoaW50KSkgLSAx XTsKICAgICAgfCAgICAgICAgICAgICBefn5+fgpjb25maWd1cmU6MzM4Njg6ICQ/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 X01BTExPQ19QT1NJWCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxz eXMvdHlwZXMuaD4KfCBpbnQKfCBtYWluICh2b2lkKQp8IHsKfCB0eXBlZGVmIGludCBhcnJh eVsyICogKHNpemVvZiAobW9kZV90KSA8IHNpemVvZiAoaW50KSkgLSAxXTsKfCAgIDsKfCAg IHJldHVybiAwOwp8IH0KY29uZmlndXJlOjMzODc3OiByZXN1bHQ6IG1vZGVfdApjb25maWd1 cmU6MzM4OTE6IGNoZWNraW5nIHdoZXRoZXIgdGhlIHV0aW1lcyBmdW5jdGlvbiB3b3Jrcwpj b25maWd1cmU6MzQwMzI6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3Qu YyAgID4mNSAKY29uZmlndXJlOjM0MDMyOiAkPyA9IDAKY29uZmlndXJlOjM0MDMyOiAuL2Nv bmZ0ZXN0CmNvbmZpZ3VyZTozNDAzMjogJD8gPSAwCmNvbmZpZ3VyZTozNDA0NDogcmVzdWx0 OiB5ZXMKY29uZmlndXJlOjM0MDU3OiBjaGVja2luZyBmb3IgQyBjb21waWxlciBvcHRpb24g dG8gYWxsb3cgd2FybmluZ3MKY29uZmlndXJlOjM0MDY2OiBnY2MgLWczIC1PMiAgICAtYyBj b25mdGVzdC5jIDI+Y29uZnRlc3QxLmVycgpjb25maWd1cmU6MzQwNjk6ICQ/ID0gMApjb25m aWd1cmU6MzQwNzI6IGdjYyAtZzMgLU8yICAgIC1Xbm8tZXJyb3IgLWMgY29uZnRlc3QuYyAy PmNvbmZ0ZXN0Mi5lcnIKY29uZmlndXJlOjM0MDc1OiAkPyA9IDAKY29uZmlndXJlOjM0MDg1 OiByZXN1bHQ6IC1Xbm8tZXJyb3IKY29uZmlndXJlOjM0MTI1OiBnY2MgLWczIC1PMiAgICAt RSBjb25mdGVzdC5jID4gY29uZnRlc3Qub3V0CmNvbmZpZ3VyZTozNDEyODogJD8gPSAwCmNv bmZpZ3VyZTozNDE2MjogY2hlY2tpbmcgZm9yIGFsaWduYXMgYW5kIGFsaWdub2YKY29uZmln dXJlOjM0MjIwOiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5j OjM4MjozMTogd2FybmluZzogaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24gJ2Fs aWdub2YnIFstV2ltcGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQogIDM4MiB8ICAgICAg ICAgICAgIGNoYXIgdGVzdF9hbGlnbm9mW2FsaWdub2YgKGRvdWJsZSkgPT0gX0FsaWdub2Yg KGRvdWJsZSkgPyAxIDogLTFdOwogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIF5+fn5+fn4KY29uZnRlc3QuYzozODI6NDA6IGVycm9yOiBleHBlY3RlZCBleHByZXNz aW9uIGJlZm9yZSAnZG91YmxlJwogIDM4MiB8ICAgICAgICAgICAgIGNoYXIgdGVzdF9hbGln bm9mW2FsaWdub2YgKGRvdWJsZSkgPT0gX0FsaWdub2YgKGRvdWJsZSkgPyAxIDogLTFdOwog ICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fgpj b25mdGVzdC5jOjM4Njo1OTogZXJyb3I6IGV4cGVjdGVkIGRlY2xhcmF0aW9uIHNwZWNpZmll cnMgb3IgJy4uLicgYmVmb3JlIG51bWVyaWMgY29uc3RhbnQKICAzODYgfCAgICAgICAgICAg ICAgIHN0cnVjdCBhbGlnbmFzX3Rlc3QgeyBjaGFyIGM7IGNoYXIgYWxpZ25hcyAoOCkgYWxp Z25hc184OyB9OwogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBeCmNvbmZ0ZXN0LmM6Mzg2OjczOiB3YXJuaW5nOiBu byBzZW1pY29sb24gYXQgZW5kIG9mIHN0cnVjdCBvciB1bmlvbgogIDM4NiB8ICAgICAgICAg ICAgICAgc3RydWN0IGFsaWduYXNfdGVzdCB7IGNoYXIgYzsgY2hhciBhbGlnbmFzICg4KSBh bGlnbmFzXzg7IH07CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgpJbiBmaWxlIGluY2x1 ZGVkIGZyb20gY29uZnRlc3QuYzozNjk6CmNvbmZ0ZXN0LmM6Mzg3OjMzOiBlcnJvcjogJ3N0 cnVjdCBhbGlnbmFzX3Rlc3QnIGhhcyBubyBtZW1iZXIgbmFtZWQgJ2FsaWduYXNfOCcKICAz ODcgfCAgICAgICAgICAgICAgIGNoYXIgdGVzdF9hbGlnbmFzW29mZnNldG9mIChzdHJ1Y3Qg YWxpZ25hc190ZXN0LCBhbGlnbmFzXzgpID09IDgKICAgICAgfCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIF5+fn5+fn5+CmNvbmZpZ3VyZTozNDIyMDogJD8gPSAxCmNvbmZp 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 IEhBVkVfV09SS0lOR19VVElNRVMgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5j bHVkZSA8c3RkaW50Lmg+CnwgICAgICAgICAgICAgI2lmZGVmIElOQ0xVREVfU1REQUxJR05f SAp8ICAgICAgICAgICAgICAjaW5jbHVkZSA8c3RkYWxpZ24uaD4KfCAgICAgICAgICAgICAj ZW5kaWYKfCAgICAgICAgICAgICAjaW5jbHVkZSA8c3RkZGVmLmg+CnwgCnwgICAgICAgICAg ICAgLyogVGVzdCB0aGF0IGFsaWdub2YgeWllbGRzIGEgcmVzdWx0IGNvbnNpc3RlbnQgd2l0 aCBvZmZzZXRvZi4KfCAgICAgICAgICAgICAgICBUaGlzIGNhdGNoZXMgR0NDIGJ1ZyA1MjAy Mwp8ICAgICAgICAgICAgICAgIDxodHRwczovL2djYy5nbnUub3JnL2J1Z3ppbGxhL3Nob3df YnVnLmNnaT9pZD01MjAyMz4uICAqLwp8ICAgICAgICAgICAgICNpZmRlZiBfX2NwbHVzcGx1 cwp8ICAgICAgICAgICAgICAgIHRlbXBsYXRlIDxjbGFzcyB0PiBzdHJ1Y3QgYWxpZ25vZl9o ZWxwZXIgeyBjaGFyIGE7IHQgYjsgfTsKfCAgICAgICAgICAgICAjIGRlZmluZSBhbyh0eXBl KSBvZmZzZXRvZiAoYWxpZ25vZl9oZWxwZXI8dHlwZT4sIGIpCnwgICAgICAgICAgICAgI2Vs c2UKfCAgICAgICAgICAgICAjIGRlZmluZSBhbyh0eXBlKSBvZmZzZXRvZiAoc3RydWN0IHsg Y2hhciBhOyB0eXBlIGI7IH0sIGIpCnwgICAgICAgICAgICAgI2VuZGlmCnwgICAgICAgICAg ICAgY2hhciB0ZXN0X2RvdWJsZVthbyAoZG91YmxlKSAlIF9BbGlnbm9mIChkb3VibGUpID09 IDAgPyAxIDogLTFdOwp8ICAgICAgICAgICAgIGNoYXIgdGVzdF9sb25nW2FvIChsb25nIGlu dCkgJSBfQWxpZ25vZiAobG9uZyBpbnQpID09IDAgPyAxIDogLTFdOwp8ICAgICAgICAgICAg IGNoYXIgdGVzdF9hbGlnbm9mW2FsaWdub2YgKGRvdWJsZSkgPT0gX0FsaWdub2YgKGRvdWJs ZSkgPyAxIDogLTFdOwp8IAp8ICAgICAgICAgICAgIC8qIFRlc3QgYWxpZ25hcyBvbmx5IG9u IHBsYXRmb3JtcyB3aGVyZSBnbnVsaWIgY2FuIGhlbHAuICAqLwp8ICAgICAgICAgICAgICNp ZiAgICAgICAgICAgICAgICAgKChkZWZpbmVkIF9fY3BsdXNwbHVzICYmIDIwMTEwMyA8PSBf X2NwbHVzcGx1cykgICAgICAgICAgICAgICAgICB8fCAoX19USU5ZQ19fICYmIGRlZmluZWQg X19hdHRyaWJ1dGVfXykgICAgICAgICAgICAgICAgICB8fCAoZGVmaW5lZCBfX0FQUExFX18g JiYgZGVmaW5lZCBfX01BQ0hfXyAgICAgICAgICAgICAgICAgICAgICA/IDQgPCBfX0dOVUNf XyArICgxIDw9IF9fR05VQ19NSU5PUl9fKSAgICAgICAgICAgICAgICAgICAgICA6IF9fR05V Q19fKSAgICAgICAgICAgICAgICAgIHx8IChfX2lhNjQgJiYgKDYxMjAwIDw9IF9fSFBfY2Mg fHwgNjEyMDAgPD0gX19IUF9hQ0MpKSAgICAgICAgICAgICAgICAgIHx8IF9fSUNDIHx8IDB4 NTkwIDw9IF9fU1VOUFJPX0MgfHwgMHgwNjAwIDw9IF9feGxDX18gICAgICAgICAgICAgICAg ICB8fCAxMzAwIDw9IF9NU0NfVkVSKQp8ICAgICAgICAgICAgICAgc3RydWN0IGFsaWduYXNf dGVzdCB7IGNoYXIgYzsgY2hhciBhbGlnbmFzICg4KSBhbGlnbmFzXzg7IH07CnwgICAgICAg ICAgICAgICBjaGFyIHRlc3RfYWxpZ25hc1tvZmZzZXRvZiAoc3RydWN0IGFsaWduYXNfdGVz dCwgYWxpZ25hc184KSA9PSA4CnwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/ IDEgOiAtMV07CnwgICAgICAgICAgICAgI2VuZGlmCnwgCnwgaW50CnwgbWFpbiAodm9pZCkK fCB7CnwgCnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZTozNDIyMDogZ2NjIC1j IC1nMyAtTzIgLURJTkNMVURFX1NUREFMSUdOX0ggICAgY29uZnRlc3QuYyA+JjUKY29uZmln dXJlOjM0MjIwOiAkPyA9IDAKY29uZmlndXJlOjM0MjMyOiByZXN1bHQ6IHllcywgPHN0ZGFs aWduLmg+IG1hY3Jvcwpjb25maWd1cmU6MzQyNTQ6IGNoZWNraW5nIGZvciBhbGxvY2EgYXMg YSBjb21waWxlciBidWlsdC1pbgpjb25maWd1cmU6MzQyODA6IHJlc3VsdDogeWVzCmNvbmZp Z3VyZTozNDMyOTogY2hlY2tpbmcgZm9yIHN0YXRpY19hc3NlcnQKY29uZmlndXJlOjM0MzY3 OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOjM3MzoyODog ZXJyb3I6IGV4cGVjdGVkIGRlY2xhcmF0aW9uIHNwZWNpZmllcnMgb3IgJy4uLicgYmVmb3Jl IG51bWVyaWMgY29uc3RhbnQKICAzNzMgfCAgICAgICAgICAgICBzdGF0aWNfYXNzZXJ0ICgy ICsgMiA9PSA0LCAiYXJpdGhtZXRpYyBkb2VzIG5vdCB3b3JrIik7CiAgICAgIHwgICAgICAg ICAgICAgICAgICAgICAgICAgICAgXgpjb25mdGVzdC5jOjM3Mzo0MDogZXJyb3I6IGV4cGVj dGVkIGRlY2xhcmF0aW9uIHNwZWNpZmllcnMgb3IgJy4uLicgYmVmb3JlIHN0cmluZyBjb25z dGFudAogIDM3MyB8ICAgICAgICAgICAgIHN0YXRpY19hc3NlcnQgKDIgKyAyID09IDQsICJh cml0aG1ldGljIGRvZXMgbm90IHdvcmsiKTsKICAgICAgfCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgpjb25mdGVz dC5jOjM3NDoyODogZXJyb3I6IGV4cGVjdGVkIGRlY2xhcmF0aW9uIHNwZWNpZmllcnMgb3Ig Jy4uLicgYmVmb3JlIG51bWVyaWMgY29uc3RhbnQKICAzNzQgfCAgICAgICAgICAgICBzdGF0 aWNfYXNzZXJ0ICgyICsgMiA9PSA0KTsKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAg ICAgICBeCmNvbmZ0ZXN0LmM6IEluIGZ1bmN0aW9uICdtYWluJzoKY29uZnRlc3QuYzozODA6 MTM6IHdhcm5pbmc6IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9uICdzdGF0aWNf YXNzZXJ0JyBbLVdpbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0KICAzODAgfCAgICAg ICAgICAgICBzdGF0aWNfYXNzZXJ0IChzaXplb2YgKGNoYXIpID09IDEsICJzaXplb2YgZG9l cyBub3Qgd29yayIpOwogICAgICB8ICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn4KY29uZmln dXJlOjM0MzY3OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyog 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 RUNPTkRBUllfU1VGRklYICIiCnwgI2RlZmluZSBIQVZFX0RMQUREUiAxCnwgI2RlZmluZSBI QVZFX01PRFVMRVMgMQp8ICNkZWZpbmUgTU9EVUxFU19TVUZGSVggIi5zbyIKfCAjZGVmaW5l IE5BVElWRV9FTElTUF9TVUZGSVggIi5lbG4iCnwgI2RlZmluZSBIQVZFX1BORyAxCnwgI2Rl ZmluZSBIQVZFX1RJRkYgMQp8ICNkZWZpbmUgSEFWRV9HSUYgMQp8ICNkZWZpbmUgSEFWRV9H UE0gMQp8ICNkZWZpbmUgSEFWRV9YX1NNIDEKfCAjZGVmaW5lIEhBVkVfWFJBTkRSIDEKfCAj ZGVmaW5lIEhBVkVfWElORVJBTUEgMQp8ICNkZWZpbmUgSEFWRV9YRklYRVMgMQp8ICNkZWZp bmUgSEFWRV9YSU5QVVQyIDEKfCAjZGVmaW5lIEhBVkVfWElTQ1JPTExDTEFTU0lORk9fVFlQ RSAxCnwgI2RlZmluZSBIQVZFX1hJVE9VQ0hDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBI QVZFX1hJQkFSUklFUlJFTEVBU0VQT0lOVEVSSU5GT19ERVZJQ0VJRCAxCnwgI2RlZmluZSBI QVZFX1hJR0VTVFVSRUNMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWFNZTkMgMQp8 ICNkZWZpbmUgSEFWRV9YU1lOQ1RSSUdHRVJGRU5DRSAxCnwgI2RlZmluZSBIQVZFX1hEQkUg MQp8ICNkZWZpbmUgSEFWRV9YQ0JfU0hBUEUgMQp8ICNkZWZpbmUgSEFWRV9YU0hBUEUgMQp8 ICNkZWZpbmUgSEFWRV9YQ09NUE9TSVRFIDEKfCAjZGVmaW5lIEhBVkVfTElCWE1MMiAxCnwg I2RlZmluZSBIQVZFX0xJTlVYX1NFQ0NPTVBfSCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VD Q09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfRklM VEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GSUxURVJfSCAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgU0laRU9GX0xP TkcgOAp8ICNkZWZpbmUgSEFWRV9BQ0NFUFQ0IDEKfCAjZGVmaW5lIEhBVkVfRkNIRElSIDEK fCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNBR0Ug MQp8ICNkZWZpbmUgSEFWRV9HRVRfQ1VSUkVOVF9ESVJfTkFNRSAxCnwgI2RlZmluZSBIQVZF X0xSQU5ENDggMQp8ICNkZWZpbmUgSEFWRV9SQU5ET00gMQp8ICNkZWZpbmUgSEFWRV9SSU5U IDEKfCAjZGVmaW5lIEhBVkVfVFJVTkMgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNk ZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FMRSAxCnwg I2RlZmluZSBIQVZFX05FV0xPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJMSU1JVCAxCnwg I2RlZmluZSBIQVZFX1NFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAj ZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSU0lHTkFM IDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfU0VORFRPIDEK fCAjZGVmaW5lIEhBVkVfUkVDVkZST00gMQp8ICNkZWZpbmUgSEFWRV9HRVRTT0NLTkFNRSAx CnwgI2RlZmluZSBIQVZFX0dFVElGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9GUkVFSUZBRERS UyAxCnwgI2RlZmluZSBIQVZFX0dBSV9TVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZFX1NZTkMg MQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0VORFBXRU5UIDEK fCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRHUkVOVCAxCnwg I2RlZmluZSBIQVZFX1JFTkFNRUFUMiAxCnwgI2RlZmluZSBIQVZFX0NGTUFLRVJBVyAxCnwg I2RlZmluZSBIQVZFX0NGU0VUU1BFRUQgMQp8ICNkZWZpbmUgSEFWRV9fX0VYRUNVVEFCTEVf U1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9MT0cyIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9T RVROQU1FX05QIDEKfCAjZGVmaW5lIEhBVkVfQUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfQUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX01BRFZJU0Ug MQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fRlJBTUVfQUREUkVTUyAxCnwgI2RlZmluZSBI QVZFX19fQlVJTFRJTl9VTldJTkRfSU5JVCAxCnwgI2RlZmluZSBIQVZFX0ZTRUVLTyAxCnwg I2RlZmluZSBIQVZFX0dSQU5UUFQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQVCAxCnwgI2RlZmlu ZSBIQVZFX1BPU0lYX09QRU5QVCAxCnwgI2RlZmluZSBURVJNSU5GTyAxCnwgI2RlZmluZSBU RVJNSU5GT19ERUZJTkVTX0JDIDEKfCAjZGVmaW5lIEhBVkVfVElNRVJGRCAxCnwgI2RlZmlu ZSBIQVZFX1ZBTEdSSU5EX1ZBTEdSSU5EX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVU5J UEFJUl9VTklDT0RFIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwgI2RlZmlu ZSBIQVZFX1dPUktJTkdfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1NOUFJJTlRGIDEKfCAjZGVm aW5lIEhBVkVfU1BBV05fSCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOIDEKfCAjZGVm aW5lIEhBVkVfUE9TSVhfU1BBV05fRklMRV9BQ1RJT05TX0FERENIRElSX05QIDEKfCAjZGVm aW5lIEhBVkVfUE9TSVhfU1BBV05BVFRSX1NFVEZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9QT1NJWF9TUEFXTl9TRVRTSUQgMQp8ICNkZWZpbmUgSEFWRV9HTElCIDEKfCAjZGVmaW5l IEhBVkVfTEFOR0lORk9fQ09ERVNFVCAxCnwgI2RlZmluZSBIQVZFX0xBTkdJTkZPX19OTF9Q QVBFUl9XSURUSCAxCnwgI2RlZmluZSBIQVZFX01CU1RBVEVfVCAxCnwgI2RlZmluZSBBTVBF UlNBTkRfRlVMTF9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUFRZUyAxCnwgI2RlZmluZSBIQVZF X1NPQ0tFVFMgMQp8ICNkZWZpbmUgTlVMTF9ERVZJQ0UgIi9kZXYvbnVsbCIKfCAjZGVmaW5l IFNFUENIQVIgJzonCnwgI2RlZmluZSBzdWJwcm9jZXNzZXMgMQp8ICNkZWZpbmUgVVNFUl9G VUxMX05BTUUgcHctPnB3X2dlY29zCnwgI2RlZmluZSBESVJFQ1RPUllfU0VQICcvJwp8ICNk ZWZpbmUgSVNfREVWSUNFX1NFUChfY18pIDAKfCAjZGVmaW5lIElTX0RJUkVDVE9SWV9TRVAo X2NfKSAoKF9jXykgPT0gRElSRUNUT1JZX1NFUCkKfCAjZGVmaW5lIElTX0FOWV9TRVAoX2Nf KSAoSVNfRElSRUNUT1JZX1NFUCAoX2NfKSkKfCAjZGVmaW5lIEhBVkVfUFJPQ0ZTIDEKfCAj ZGVmaW5lIERFRkFVTFRfU09VTkRfREVWSUNFICIvZGV2L2RzcCIKfCAjZGVmaW5lIElOVEVS UlVQVF9JTlBVVCAxCnwgI2RlZmluZSBOQVJST1dQUk9UTyAxCnwgI2RlZmluZSBVTklYOThf UFRZUyAxCnwgI2RlZmluZSBQVFlfSVRFUkFUSU9OIGludCBpOyBmb3IgKGkgPSAwOyBpIDwg MTsgaSsrKQp8ICNkZWZpbmUgUFRZX1RUWV9OQU1FX1NQUklOVEYgeyBjaGFyICpwdHluYW1l ID0gMDsgc2lnc2V0X3QgYmxvY2tlZDsgc2lnZW1wdHlzZXQgKCZibG9ja2VkKTsgc2lnYWRk c2V0ICgmYmxvY2tlZCwgU0lHQ0hMRCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX0JMT0NLLCAm YmxvY2tlZCwgMCk7IGlmIChncmFudHB0IChmZCkgIT0gLTEgJiYgdW5sb2NrcHQgKGZkKSAh PSAtMSkgcHR5bmFtZSA9IHB0c25hbWUoZmQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19VTkJM T0NLLCAmYmxvY2tlZCwgMCk7IGlmICghcHR5bmFtZSkgeyBlbWFjc19jbG9zZSAoZmQpOyBy ZXR1cm4gLTE7IH0gc25wcmludGYgKHB0eV9uYW1lLCBQVFlfTkFNRV9TSVpFLCAiJXMiLCBw dHluYW1lKTsgfQp8ICNkZWZpbmUgUFRZX09QRU4gZG8geyBmZCA9IHBvc2l4X29wZW5wdCAo T19SRFdSIHwgT19DTE9FWEVDIHwgT19OT0NUVFkpOyBpZiAoZmQgPCAwICYmIGVycm5vID09 IEVJTlZBTCkgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fTk9DVFRZKTsgfSB3aGls ZSAoZmFsc2UpCnwgI2RlZmluZSBQVFlfTkFNRV9TUFJJTlRGIC8qKi8KfCAjZGVmaW5lIFNJ R05BTFNfVklBX0NIQVJBQ1RFUlMgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAj ZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBIQVZFX19TRVRKTVAgMQp8ICNk ZWZpbmUgSEFWRV9TSUdTRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TVEFDS19PVkVSRkxPV19I QU5ETElORyAxCnwgI2RlZmluZSBVU0cgLyoqLwp8ICNkZWZpbmUgR05VX0xJTlVYIC8qKi8K fCAjZGVmaW5lIFNJWkVPRl9TUEVFRF9UIDQKfCAjZGVmaW5lIFVTQUJMRV9GSU9OUkVBRCAx CnwgI2RlZmluZSBVU0FCTEVfU0lHSU8gMQp8ICNkZWZpbmUgQ09QWVJJR0hUICJDb3B5cmln aHQgKEMpIDIwMjMgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuIgp8ICNkZWZpbmUg VEVSTV9IRUFERVIgImd0a3V0aWwuaCIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR1VSQVRJT04g Ing4Nl82NC1wYy1saW51eC1nbnUiCnwgI2RlZmluZSBFTUFDU19DT05GSUdfT1BUSU9OUyAi Igp8ICNkZWZpbmUgSEFWRV9YX1dJTkRPV1MgMQp8ICNkZWZpbmUgSEFWRV9YMTEgMQp8ICNk ZWZpbmUgSEFWRV9TVFJVQ1RfQVRUUklCVVRFX0FMSUdORUQgMQp8ICNkZWZpbmUgSEFWRV9U WVBFT0YgMQp8ICNkZWZpbmUgSEFWRV9TVEFURU1FTlRfRVhQUkVTU0lPTlMgMQp8ICNkZWZp bmUgTUFMTE9DXzBfSVNfTk9OTlVMTCAxCnwgI2RlZmluZSBIQVZFX1NZU19BQ0xfSCAxCnwg I2RlZmluZSBIQVZFX0FDTF9HRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRkQg MQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VU X0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZSRUUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJP TV9NT0RFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZST01fVEVYVCAxCnwgI2RlZmluZSBIQVZF X0FDTF9ERUxFVEVfREVGX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRVhURU5ERURfRklM RSAxCnwgI2RlZmluZSBIQVZFX0FDTF9MSUJBQ0xfSCAxCnwgI2RlZmluZSBIQVZFX0FDTF9F TlRSSUVTIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZJUlNUX0VOVFJZIDEKfCAjZGVmaW5lIFVT RV9BQ0wgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAxCnwgI2RlZmluZSBIQVZFX0FMTE9D QSAxCnwgI2RlZmluZSBMU1RBVF9GT0xMT1dTX1NMQVNIRURfU1lNTElOSyAxCnwgI2RlZmlu ZSBGVU5DX1JFQUxQQVRIX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfRkFDQ0VTU0FUIDEKfCAj ZGVmaW5lIEhBVkVfR0VUQ1dEIDEKfCAjZGVmaW5lIHJlc3RyaWN0IF9fcmVzdHJpY3RfXwp8 ICNkZWZpbmUgSEFWRV9FTlZJUk9OX0RFQ0wgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUk1P REUgMAp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9M T05HX09OTFkgMQp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhB VkVfVU5TSUdORURfTE9OR19MT05HX0lOVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfTUVNTUVN IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9NRU1SQ0hSIDEKfCAjZGVmaW5lIEhBVkVfTUlOTUFY X0lOX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIFRJTUVfVF9JU19TSUdORUQgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX0FMQVJNIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1RNX1RNX1pPTkUg MQp8ICNkZWZpbmUgSEFWRV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fR01UT0ZGIDEK fCAjZGVmaW5lIEhBVkVfU0lHU0VUX1QgMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9UIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9GQ0xPU0VBTEwgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVFcg MQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BVVFcgMQp8ICNkZWZpbmUgX19VU0VfTUlOR1dfQU5T SV9TVERJTyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRUNWVCAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfRkNWVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0NWVCAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfU1RSTkxFTiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSVE9JTUFYIDEKfCAjZGVmaW5l IF9VU0VfU1REX1NUQVQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VYRUNWUEUgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX0NMRUFSRVJSX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9G RU9GX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRVJST1JfVU5MT0NLRUQgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX0ZGTFVTSF9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfRkdFVFNfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZQVVRDX1VOTE9DS0VE IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GUFVUU19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfRlJFQURfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZXUklURV9VTkxP Q0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VUQ19VTkxPQ0tFRCAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfR0VUQ0hBUl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUFVUQ19V TkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUFVUQ0hBUl9VTkxPQ0tFRCAxCnwgI2Rl ZmluZSBHRVRHUk9VUFNfVCBnaWRfdAp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVERUQUJMRVNJ WkUgMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfUE9TSVggMQp8ICNkZWZpbmUgUFJPTU9URURf TU9ERV9UIG1vZGVfdAp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1VUSU1FUyAxCnwgI2RlZmlu ZSBIQVZFX0FMTE9DQSAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpZiBkZWZpbmVk IF9fY2xhbmdfXyAmJiBfX1NURENfVkVSU0lPTl9fIDwgMjAyMzExCnwgICAgICAgICAgICAg ICNwcmFnbWEgY2xhbmcgZGlhZ25vc3RpYyBlcnJvciAiLVdjMngtZXh0ZW5zaW9ucyIKfCAg ICAgICAgICAgICAgI3ByYWdtYSBjbGFuZyBkaWFnbm9zdGljIGVycm9yICItV2MrKzF6LWV4 dGVuc2lvbnMiCnwgICAgICAgICAgICAgI2VuZGlmCnwgICAgICAgICAgICAgI2lmZGVmIElO Q0xVREVfQVNTRVJUX0gKfCAgICAgICAgICAgICAgI2luY2x1ZGUgPGFzc2VydC5oPgp8ICAg ICAgICAgICAgICNlbmRpZgp8ICAgICAgICAgICAgIHN0YXRpY19hc3NlcnQgKDIgKyAyID09 IDQsICJhcml0aG1ldGljIGRvZXMgbm90IHdvcmsiKTsKfCAgICAgICAgICAgICBzdGF0aWNf YXNzZXJ0ICgyICsgMiA9PSA0KTsKfCAKfCBpbnQKfCBtYWluICh2b2lkKQp8IHsKfCAKfCAg ICAgICAgICAgICBzdGF0aWNfYXNzZXJ0IChzaXplb2YgKGNoYXIpID09IDEsICJzaXplb2Yg ZG9lcyBub3Qgd29yayIpOwp8ICAgICAgICAgICAgIHN0YXRpY19hc3NlcnQgKHNpemVvZiAo Y2hhcikgPT0gMSk7CnwgCnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZTozNDM2 NzogZ2NjIC1jIC1nMyAtTzIgLURJTkNMVURFX0FTU0VSVF9IICAgIGNvbmZ0ZXN0LmMgPiY1 CmNvbmZpZ3VyZTozNDM2NzogJD8gPSAwCmNvbmZpZ3VyZTozNDM3ODogcmVzdWx0OiB5ZXMs IGFuIDxhc3NlcnQuaD4gbWFjcm8KY29uZmlndXJlOjM0NDk1OiBjaGVja2luZyBmb3IgX19i dWlsdGluX2V4cGVjdApjb25maWd1cmU6MzQ1MTE6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8y ICAgICAgY29uZnRlc3QuYyAgID4mNSAKY29uZmlndXJlOjM0NTExOiAkPyA9IDAKY29uZmln dXJlOjM0NTM4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzQ1NTI6IGNoZWNraW5nIGZvciBi eXRlc3dhcC5oCmNvbmZpZ3VyZTozNDU1MjogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3Qu YyA+JjUKY29uZmlndXJlOjM0NTUyOiAkPyA9IDAKY29uZmlndXJlOjM0NTUyOiByZXN1bHQ6 IHllcwpjb25maWd1cmU6MzQ2NjQ6IGNoZWNraW5nIGZvciByZWFkbGlua2F0CmNvbmZpZ3Vy ZTozNDcwMTogY2hlY2tpbmcgZm9yIHJlYWRsaW5rYXQKY29uZmlndXJlOjM0NzAxOiBnY2Mg LW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCmNvbmZpZ3VyZToz NDcwMTogJD8gPSAwCmNvbmZpZ3VyZTozNDcwMTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM0 NzE2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzQ3NDI6IGNoZWNraW5nIGZvciBsaWJyYXJ5 IGNvbnRhaW5pbmcgY2xvY2tfZ2V0dGltZQpjb25maWd1cmU6MzQ3NzI6IGdjYyAtbyBjb25m dGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAgID4mNSAKY29uZmlndXJlOjM0NzcyOiAk PyA9IDAKY29uZmlndXJlOjM0NzkyOiByZXN1bHQ6IG5vbmUgcmVxdWlyZWQKY29uZmlndXJl OjM0ODAyOiBjaGVja2luZyBmb3IgY2xvY2tfZ2V0cmVzCmNvbmZpZ3VyZTozNDgwMjogZ2Nj IC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1IApjb25maWd1cmU6 MzQ4MDI6ICQ/ID0gMApjb25maWd1cmU6MzQ4MDI6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToz NDgwODogY2hlY2tpbmcgZm9yIGNsb2NrX2dldHRpbWUKY29uZmlndXJlOjM0ODA4OiBnY2Mg LW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCmNvbmZpZ3VyZToz NDgwODogJD8gPSAwCmNvbmZpZ3VyZTozNDgwODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM0 ODE0OiBjaGVja2luZyBmb3IgY2xvY2tfc2V0dGltZQpjb25maWd1cmU6MzQ4MTQ6IGdjYyAt byBjb25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAgID4mNSAKY29uZmlndXJlOjM0 ODE0OiAkPyA9IDAKY29uZmlndXJlOjM0ODE0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzQ4 Mzc6IGNoZWNraW5nIGZvciBjb3B5X2ZpbGVfcmFuZ2UKY29uZmlndXJlOjM0ODU5OiBnY2Mg LW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCmNvbmZpZ3VyZToz NDg1OTogJD8gPSAwCmNvbmZpZ3VyZTozNDg2OTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM0 ODgxOiBjaGVja2luZyB3aGV0aGVyIGNvcHlfZmlsZV9yYW5nZSBpcyBrbm93biB0byB3b3Jr CmNvbmZpZ3VyZTozNDkwMjogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29u ZmlndXJlOjM0OTAyOiAkPyA9IDAKY29uZmlndXJlOjM0OTEwOiByZXN1bHQ6IHllcwpjb25m aWd1cmU6MzQ5NjY6IGNoZWNraW5nIGZvciBkX3R5cGUgbWVtYmVyIGluIGRpcmVjdG9yeSBz dHJ1Y3QKY29uZmlndXJlOjM0OTg2OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNv bmZ0ZXN0LmMgICA+JjUgCmNvbmZpZ3VyZTozNDk4NjogJD8gPSAwCmNvbmZpZ3VyZTozNDk5 NzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM1MDE1OiBjaGVja2luZyB3aGV0aGVyIC8vIGlz IGRpc3RpbmN0IGZyb20gLwpjb25maWd1cmU6MzUwNDU6IHJlc3VsdDogbm8KY29uZmlndXJl OjM1MDU2OiBjaGVja2luZyB3aGV0aGVyIGR1cDIgd29ya3MKY29uZmlndXJlOjM1MTQ5OiBn Y2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCmNvbmZpZ3Vy ZTozNTE0OTogJD8gPSAwCmNvbmZpZ3VyZTozNTE0OTogLi9jb25mdGVzdApjb25maWd1cmU6 MzUxNDk6ICQ/ID0gMApjb25maWd1cmU6MzUxNjE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToz NTI1OTogY2hlY2tpbmcgZm9yIGxpYnJhcnkgY29udGFpbmluZyBiYWNrdHJhY2Vfc3ltYm9s c19mZApjb25maWd1cmU6MzUyODk6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29u ZnRlc3QuYyAgID4mNSAKY29uZmlndXJlOjM1Mjg5OiAkPyA9IDAKY29uZmlndXJlOjM1MzA5 OiByZXN1bHQ6IG5vbmUgcmVxdWlyZWQKY29uZmlndXJlOjM1MzcxOiBjaGVja2luZyBmb3Ig ZmFjY2Vzc2F0CmNvbmZpZ3VyZTozNTQyMzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM1NDk4 OiBjaGVja2luZyB3aGV0aGVyIGZjaG1vZGF0IHdvcmtzCmNvbmZpZ3VyZTozNTU3MDogZ2Nj IC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1IApjb25maWd1cmU6 MzU1NzA6ICQ/ID0gMApjb25maWd1cmU6MzU1NzA6IC4vY29uZnRlc3QKY29uZmlndXJlOjM1 NTcwOiAkPyA9IDAKY29uZmlndXJlOjM1NTg2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzU3 MjA6IGNoZWNraW5nIHdoZXRoZXIgZmNudGwgaGFuZGxlcyBGX0RVUEZEIGNvcnJlY3RseQpj b25maWd1cmU6MzU3ODQ6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3Qu YyAgID4mNSAKY29uZmlndXJlOjM1Nzg0OiAkPyA9IDAKY29uZmlndXJlOjM1Nzg0OiAuL2Nv bmZ0ZXN0CmNvbmZpZ3VyZTozNTc4NDogJD8gPSAwCmNvbmZpZ3VyZTozNTc5NTogcmVzdWx0 OiB5ZXMKY29uZmlndXJlOjM1ODEzOiBjaGVja2luZyB3aGV0aGVyIGZjbnRsIHVuZGVyc3Rh bmRzIEZfRFVQRkRfQ0xPRVhFQwpjb25maWd1cmU6MzU4NDg6IGdjYyAtbyBjb25mdGVzdCAt ZzMgLU8yICAgICAgY29uZnRlc3QuYyAgID4mNSAKY29uZmlndXJlOjM1ODQ4OiAkPyA9IDAK Y29uZmlndXJlOjM1ODQ4OiAuL2NvbmZ0ZXN0CmNvbmZpZ3VyZTozNTg0ODogJD8gPSAwCmNv bmZpZ3VyZTozNTg2NzogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZnRl c3QuYzozODI6MTogZXJyb3I6IHVua25vd24gdHlwZSBuYW1lICdjaG9rZScKICAzODIgfCBj aG9rZSBtZQogICAgICB8IF5+fn5+CmNvbmZ0ZXN0LmM6MzgyOjk6IGVycm9yOiBleHBlY3Rl ZCAnOycgYmVmb3JlICdpbnQnCiAgMzgyIHwgY2hva2UgbWUKICAgICAgfCAgICAgICAgIF4K ICAgICAgfCAgICAgICAgIDsKLi4uLi4uCiAgMzg1IHwgaW50CiAgICAgIHwgfn5+ICAgICAg CmNvbmZpZ3VyZTozNTg2NzogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2Fz 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 aW5lIEdOVUxJQl9GQUNDRVNTQVQgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAj aWZkZWYgX19saW51eF9fCnwgLyogVGhlIExpbnV4IGtlcm5lbCBvbmx5IGFkZGVkIEZfRFVQ RkRfQ0xPRVhFQyBpbiAyLjYuMjQsIHNvIHdlIGFsd2F5cyByZXBsYWNlCnwgICAgaXQgdG8g c3VwcG9ydCB0aGUgc2VtYW50aWNzIG9uIG9sZGVyIGtlcm5lbHMgdGhhdCBmYWlsZWQgd2l0 aCBFSU5WQUwuICAqLwp8IGNob2tlIG1lCnwgI2VuZGlmCnwgCnwgaW50CnwgbWFpbiAodm9p ZCkKfCB7CnwgCnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZTozNTg4NDogcmVz dWx0OiBuZWVkcyBydW50aW1lIGNoZWNrCmNvbmZpZ3VyZTozNTkzNzogY2hlY2tpbmcgd2hl dGhlciBmZG9wZW5kaXIgaXMgZGVjbGFyZWQKY29uZmlndXJlOjM1OTM3OiBnY2MgLWMgLWcz IC1PMiAgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjM1OTM3OiAkPyA9IDAKY29uZmln dXJlOjM1OTM3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzU5NTk6IGNoZWNraW5nIHdoZXRo ZXIgZmRvcGVuZGlyIHdvcmtzCmNvbmZpZ3VyZTozNjAwOTogZ2NjIC1vIGNvbmZ0ZXN0IC1n MyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1IApjb25maWd1cmU6MzYwMDk6ICQ/ID0gMApj b25maWd1cmU6MzYwMDk6IC4vY29uZnRlc3QKY29uZmlndXJlOjM2MDA5OiAkPyA9IDAKY29u ZmlndXJlOjM2MDIwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzYwNjE6IGNoZWNraW5nIGZv ciBnZXR4YXR0ciB3aXRoIFhBVFRSX05BTUVfUE9TSVhfQUNMIG1hY3Jvcwpjb25maWd1cmU6 MzYwODU6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAgID4mNSAK Y29uZmlndXJlOjM2MDg1OiAkPyA9IDAKY29uZmlndXJlOjM2MDkyOiByZXN1bHQ6IHllcwpj b25maWd1cmU6MzYxMTA6IGNoZWNraW5nIGZvciBmbGV4aWJsZSBhcnJheSBtZW1iZXIKY29u ZmlndXJlOjM2MTM5OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1 cmU6MzYxMzk6ICQ/ID0gMApjb25maWd1cmU6MzYxNDc6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy ZTozNjE2NjogY2hlY2tpbmcgZm9yIF9fZnBlbmRpbmcKY29uZmlndXJlOjM2MTg0OiBnY2Mg LW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCmNvbmZpZ3VyZToz NjE4NDogJD8gPSAwCmNvbmZpZ3VyZTozNjE5NDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM2 MTk3OiBjaGVja2luZyB3aGV0aGVyIF9fZnBlbmRpbmcgaXMgZGVjbGFyZWQKY29uZmlndXJl OjM2MTk3OiBnY2MgLWMgLWczIC1PMiAgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjM2 MTk3OiAkPyA9IDAKY29uZmlndXJlOjM2MTk3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzYy MjA6IGNoZWNraW5nIHdoZXRoZXIgZnJlZSBpcyBrbm93biB0byBwcmVzZXJ2ZSBlcnJubwpj b25maWd1cmU6MzYyNDQ6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZp Z3VyZTozNjI0NDogJD8gPSAwCmNvbmZpZ3VyZTozNjI1MzogcmVzdWx0OiB5ZXMKY29uZmln dXJlOjM2MzA0OiBjaGVja2luZyB3aGV0aGVyIGZzdGF0YXQgKC4uLiwgMCkgd29ya3MKY29u ZmlndXJlOjM2MzMxOiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMg ICA+JjUgCmNvbmZpZ3VyZTozNjMzMTogJD8gPSAwCmNvbmZpZ3VyZTozNjMzMTogLi9jb25m dGVzdApjb25maWd1cmU6MzYzMzE6ICQ/ID0gMApjb25maWd1cmU6MzYzNDM6IHJlc3VsdDog eWVzCmNvbmZpZ3VyZTozNjM5MTogY2hlY2tpbmcgZm9yIHN5cy9tb3VudC5oCmNvbmZpZ3Vy ZTozNjM5MTogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjM2 MzkxOiAkPyA9IDAKY29uZmlndXJlOjM2MzkxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzY0 MTY6IGNoZWNraW5nIGZvciBzdGF0dmZzIGZ1bmN0aW9uIChTVlI0KQpjb25maWd1cmU6MzY0 NTI6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAgID4mNSAKY29u ZnRlc3QuYzogSW4gZnVuY3Rpb24gJ21haW4nOgpjb25mdGVzdC5jOjQwODoxOiB3YXJuaW5n OiBhcmd1bWVudCAxIG51bGwgd2hlcmUgbm9uLW51bGwgZXhwZWN0ZWQgWy1Xbm9ubnVsbF0K ICA0MDggfCBzdGF0dmZzICgwLCAmZnNkKTsKICAgICAgfCBefn5+fn5+CkluIGZpbGUgaW5j bHVkZWQgZnJvbSBjb25mdGVzdC5jOjM5MToKL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1n bnUvc3lzL3N0YXR2ZnMuaDo1MToxMjogbm90ZTogaW4gYSBjYWxsIHRvIGZ1bmN0aW9uICdz dGF0dmZzJyBkZWNsYXJlZCAnbm9ubnVsbCcKICAgNTEgfCBleHRlcm4gaW50IHN0YXR2ZnMg KGNvbnN0IGNoYXIgKl9fcmVzdHJpY3QgX19maWxlLAogICAgICB8ICAgICAgICAgICAgXn5+ fn5+fgpjb25maWd1cmU6MzY0NTI6ICQ/ID0gMApjb25maWd1cmU6MzY0NjI6IHJlc3VsdDog eWVzCmNvbmZpZ3VyZTozNjQ2OTogY2hlY2tpbmcgd2hldGhlciB0byB1c2Ugc3RhdHZmczY0 CmNvbmZpZ3VyZTozNjQ5MzogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVz dC5jICAgPiY1IApjb25mdGVzdC5jOjM4ODoyMTogZXJyb3I6IHNpemUgb2YgYXJyYXkgJ2No ZWNrX2ZfYmxvY2tzX2xhcmdlcl9pbl9zdGF0dmZzNjQnIGlzIG5lZ2F0aXZlCiAgMzg4IHwg ICAgICAgICAgICAgICAgIGludCBjaGVja19mX2Jsb2Nrc19sYXJnZXJfaW5fc3RhdHZmczY0 CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+CmNvbmZ0ZXN0LmM6IEluIGZ1bmN0aW9uICdtYWluJzoKY29uZnRlc3QuYzoz OTY6MTogd2FybmluZzogYXJndW1lbnQgMSBudWxsIHdoZXJlIG5vbi1udWxsIGV4cGVjdGVk IFstV25vbm51bGxdCiAgMzk2IHwgc3RhdHZmczY0ICgwLCAmZnNkKTsKICAgICAgfCBefn5+ fn5+fn4KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIGNvbmZ0ZXN0LmM6Mzg2OgovdXNyL2luY2x1 ZGUveDg2XzY0LWxpbnV4LWdudS9zeXMvc3RhdHZmcy5oOjY1OjEyOiBub3RlOiBpbiBhIGNh bGwgdG8gZnVuY3Rpb24gJ3N0YXR2ZnM2NCcgZGVjbGFyZWQgJ25vbm51bGwnCiAgIDY1IHwg ZXh0ZXJuIGludCBzdGF0dmZzNjQgKGNvbnN0IGNoYXIgKl9fcmVzdHJpY3QgX19maWxlLAog ICAgICB8ICAgICAgICAgICAgXn5+fn5+fn5+CmNvbmZpZ3VyZTozNjQ5MzogJD8gPSAxCmNv 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 CnwgI2RlZmluZSByZXN0cmljdCBfX3Jlc3RyaWN0X18KfCAjZGVmaW5lIEhBVkVfRU5WSVJP Tl9ERUNMIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJNT0RFIDAKfCAjZGVmaW5lIEhBVkVf R0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfTE9OR19PTkxZIDEKfCAjZGVmaW5l IEhBVkVfTE9OR19MT05HX0lOVCAxCnwgI2RlZmluZSBIQVZFX1VOU0lHTkVEX0xPTkdfTE9O R19JTlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX01FTU1FTSAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfTUVNUkNIUiAxCnwgI2RlZmluZSBIQVZFX01JTk1BWF9JTl9TWVNfUEFSQU1fSCAxCnwg I2RlZmluZSBUSU1FX1RfSVNfU0lHTkVEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTEFSTSAx CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9UTV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1f Wk9ORSAxCnwgI2RlZmluZSBIQVZFX1RNX0dNVE9GRiAxCnwgI2RlZmluZSBIQVZFX1NJR1NF VF9UIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkNM T1NFQUxMIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRXIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9QVVRXIDEKfCAjZGVmaW5lIF9fVVNFX01JTkdXX0FOU0lfU1RESU8gMQp8ICNkZWZpbmUg SEFWRV9ERUNMX0VDVlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZDVlQgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX0dDVlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUk5MRU4gMQp8ICNkZWZp bmUgSEFWRV9ERUNMX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBfVVNFX1NURF9TVEFUIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9FWEVDVlBFIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9DTEVBUkVS Ul9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkVPRl9VTkxPQ0tFRCAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfRkVSUk9SX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9G RkxVU0hfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZHRVRTX1VOTE9DS0VEIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9GUFVUQ19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfRlBVVFNfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZSRUFEX1VOTE9DS0VE IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GV1JJVEVfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX0dFVENfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVENIQVJfVU5M T0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BVVENfVU5MT0NLRUQgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX1BVVENIQVJfVU5MT0NLRUQgMQp8ICNkZWZpbmUgR0VUR1JPVVBTX1QgZ2lk X3QKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVf TUFMTE9DX1BPU0lYIDEKfCAjZGVmaW5lIFBST01PVEVEX01PREVfVCBtb2RlX3QKfCAjZGVm aW5lIEhBVkVfV09SS0lOR19VVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNk ZWZpbmUgSEFWRV9fX0JVSUxUSU5fRVhQRUNUIDEKfCAjZGVmaW5lIEhBVkVfQllURVNXQVBf SCAxCnwgI2RlZmluZSBHTlVMSUJfQ0FOT05JQ0FMSVpFX0xHUEwgMQp8ICNkZWZpbmUgSEFW RV9SRUFETElOS0FUIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tfR0VUUkVTIDEKfCAjZGVmaW5l IEhBVkVfQ0xPQ0tfR0VUVElNRSAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX1NFVFRJTUUgMQp8 ICNkZWZpbmUgR05VTElCX0NMT1NFX1NUUkVBTSAxCnwgI2RlZmluZSBIQVZFX0NPUFlfRklM RV9SQU5HRSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9ESVJFTlRfRF9UWVBFIDEKfCAjZGVm aW5lIEhBVkVfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEdOVUxJQl9GQUNDRVNTQVQgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBHTlVMSUJfRkRPUEVORElS IDEKfCAjZGVmaW5lIEdFVFhBVFRSX1dJVEhfUE9TSVhfQUNMUyAxCnwgI2RlZmluZSBGTEVY SUJMRV9BUlJBWV9NRU1CRVIgLyoqLwp8ICNkZWZpbmUgSEFWRV9ERUNMX19fRlBFTkRJTkcg MQp8ICNkZWZpbmUgSEFWRV9GUkVFX1BPU0lYIDEKfCAjZGVmaW5lIEhBVkVfU1lTX01PVU5U X0ggMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+ CnwgICAgICAgICAgICAgICAgICNpbmNsdWRlIDxzeXMvc3RhdHZmcy5oPgp8ICAgICAgICAg ICAgICAgICBzdHJ1Y3Qgc3RhdHZmczY0IGZzZDsKfCAgICAgICAgICAgICAgICAgaW50IGNo ZWNrX2ZfYmxvY2tzX2xhcmdlcl9pbl9zdGF0dmZzNjQKfCAgICAgICAgICAgICAgICAgICBb c2l6ZW9mICgoKHN0cnVjdCBzdGF0dmZzNjQgKikgMCktPmZfYmxvY2tzKQp8ICAgICAgICAg ICAgICAgICAgICA+IHNpemVvZiAoKChzdHJ1Y3Qgc3RhdHZmcyAqKSAwKS0+Zl9ibG9ja3Mp CnwgICAgICAgICAgICAgICAgICAgID8gMSA6IC0xXTsKfCAKfCBpbnQKfCBtYWluICh2b2lk KQp8IHsKfCBzdGF0dmZzNjQgKDAsICZmc2QpOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpj b25maWd1cmU6MzY1MDM6IHJlc3VsdDogbm8KY29uZmlndXJlOjM2NTE5OiBjaGVja2luZyBm b3IgdHdvLWFyZ3VtZW50IHN0YXRmcyB3aXRoIHN0YXRmcy5mX2Zyc2l6ZSBtZW1iZXIKY29u ZmlndXJlOjM2NTQ5OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMg ICA+JjUgCmNvbmZpZ3VyZTozNjU0OTogJD8gPSAwCmNvbmZpZ3VyZTozNjU0OTogLi9jb25m dGVzdApjb25maWd1cmU6MzY1NDk6ICQ/ID0gMApjb25maWd1cmU6MzY1NjE6IHJlc3VsdDog eWVzCmNvbmZpZ3VyZTozNjgwMTogY2hlY2tpbmcgZm9yIHN5cy9mcy9zNXBhcmFtLmgKY29u ZmlndXJlOjM2ODAxOiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25mdGVz dC5jOjQxNToxMDogZmF0YWwgZXJyb3I6IHN5cy9mcy9zNXBhcmFtLmg6IE5vIHN1Y2ggZmls ZSBvciBkaXJlY3RvcnkKICA0MTUgfCAjaW5jbHVkZSA8c3lzL2ZzL3M1cGFyYW0uaD4KICAg ICAgfCAgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn4KY29tcGlsYXRpb24gdGVybWluYXRl ZC4KY29uZmlndXJlOjM2ODAxOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3 YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1h Y3MiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FH RV9WRVJTSU9OICIzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFj cyAzMC4wLjUwIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NA Z251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJodHRwczovL3d3dy5nbnUub3JnL3Nv ZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIEhBVkVfUERVTVBFUiAxCnwgI2RlZmluZSBIQVZF X1NURElPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NU UklOR19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NU RElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVf VU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfTElO VVhfRlNfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1NZU0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1BUWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5l IEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1QX0ggMQp8ICNkZWZpbmUgSEFWRV9T QU5JVElaRVJfTFNBTl9JTlRFUkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9B U0FOX0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0NPTU1PTl9JTlRF UkZBQ0VfREVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfVU5fSCAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5l IEhBVkVfRVhFQ0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1NURElPX0VYVF9IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1ZGU19IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfQ0RFRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNk ZWZpbmUgSEFWRV9JRUVFNzU0X0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NUREJPT0xfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19SQU5ET01fSCAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8 ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9DX1NPVVJDRSAxCnwg I2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBfSFBVWF9BTFRfWE9QRU5fU09DS0VU X0FQSSAxCnwgI2RlZmluZSBfTkVUQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfT1BFTkJTRF9T T1VSQ0UgMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5l IF9fU1REQ19XQU5UX0lFQ182MDU1OV9BVFRSSUJTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1RE Q19XQU5UX0lFQ182MDU1OV9CRlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVD XzYwNTU5X0RGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRVhU X18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0ZVTkNTX0VYVF9fIDEKfCAj ZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9UWVBFU19FWFRfXyAxCnwgI2RlZmluZSBf X1NURENfV0FOVF9MSUJfRVhUMl9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX01BVEhfU1BF Q19GVU5DU19fIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVmaW5lIF9fRVhU RU5TSU9OU19fIDEKfCAjZGVmaW5lIEdDQ19MSU5UIDEKfCAjZGVmaW5lIFNZU1RFTV9UWVBF ICJnbnUvbGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAxCnwgI2RlZmlu ZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwgI2RlZmluZSBIQVZFX1BF UlNPTkFMSVRZX0FERFJfTk9fUkFORE9NSVpFIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU1lT SU5GTyAxCnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUgSEFWRV9U RVJNX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVU X0lGX0ggMQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJV Q1RfSUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9I V0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX05FVE1BU0sgMQp8ICNk ZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAxCnwgI2RlZmluZSBIQVZF X1NUUlVDVF9JRlJFUV9JRlJfQUREUiAxCnwgI2RlZmluZSBIQVZFX1NCUksgMQp8ICNkZWZp bmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUg SEFWRV9WRk9SSyAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0NB Tk9OSUNBTElaRV9GSUxFX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9SRUFMUEFUSCAxCnwgI2Rl ZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EQVQgMQp8ICNkZWZpbmUg SEFWRV9MQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX0ZE T1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lO QyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX1BTRUxF Q1QgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9S RUFETElOSyAxCnwgI2RlZmluZSBIQVZFX0lTQkxBTksgMQp8ICNkZWZpbmUgSEFWRV9JU1dD VFlQRSAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJ TksgMQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX0dFVERU QUJMRVNJWkUgMQp8ICNkZWZpbmUgU1lTVEVNX01BTExPQyAxCnwgI2RlZmluZSBIQVZFX01N QVAgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEIDEKfCAjZGVmaW5lIFRIUkVBRFNfRU5BQkxF RCAxCnwgI2RlZmluZSBIQVZFX1hLQiAxCnwgI2RlZmluZSBIQVZFX1hLQlJFRlJFU0hLRVlC T0FSRE1BUFBJTkcgMQp8ICNkZWZpbmUgSEFWRV9YS0JGUkVFTkFNRVMgMQp8ICNkZWZpbmUg SEFWRV9YUk1TRVREQVRBQkFTRSAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNPVVJDRVNU UklORyAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJPRlNDUkVFTiAxCnwgI2RlZmlu ZSBIQVZFX1hESVNQTEFZQ0VMTFMgMQp8ICNkZWZpbmUgSEFWRV9YREVTVFJPWVNVQldJTkRP V1MgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNiAxCnwgI2RlZmluZSBIQVZFX1hfSTE4TiAxCnwg I2RlZmluZSBIQVZFX1hJQ0NBTExCQUNLX0NBTExCQUNLIDEKfCAjZGVmaW5lIEhBVkVfWDEx UjZfWElNIDEKfCAjZGVmaW5lIEhBVkVfUlNWRyAxCnwgI2RlZmluZSBIQVZFX1dFQlAgMQp8 ICNkZWZpbmUgSEFWRV9TUUxJVEUzIDEKfCAjZGVmaW5lIEhBVkVfU1FMSVRFM19MT0FEX0VY VEVOU0lPTiAxCnwgI2RlZmluZSBIQVZFX0dFVEFERFJJTkZPX0EgMQp8ICNkZWZpbmUgSEFW RV9HVEszIDEKfCAjZGVmaW5lIEdES19ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEK fCAjZGVmaW5lIEdMSUJfRElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAxCnwgI2RlZmlu ZSBVU0VfR1RLIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX1RSSU0gMQp8ICNkZWZpbmUgSEFW RV9EQlVTIDEKfCAjZGVmaW5lIEhBVkVfREJVU19XQVRDSF9HRVRfVU5JWF9GRCAxCnwgI2Rl ZmluZSBIQVZFX0RCVVNfVFlQRV9JU19WQUxJRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFM SURBVEVfQlVTX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX1BBVEggMQp8 ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0lOVEVSRkFDRSAxCnwgI2RlZmluZSBIQVZF X0RCVVNfVkFMSURBVEVfTUVNQkVSIDEKfCAjZGVmaW5lIEhBVkVfR1NFVFRJTkdTIDEKfCAj ZGVmaW5lIEhBVkVfTElCU0VMSU5VWCAxCnwgI2RlZmluZSBIQVZFX0dOVVRMUyAxCnwgI2Rl ZmluZSBIQVZFX0xJQlNZU1RFTUQgMQp8ICNkZWZpbmUgSEFWRV9KU09OIDEKfCAjZGVmaW5l IEhBVkVfSU5PVElGWSAxCnwgI2RlZmluZSBVU0VfRklMRV9OT1RJRlkgMQp8ICNkZWZpbmUg VVNFX1RPT0xLSVRfU0NST0xMX0JBUlMgMQp8ICNkZWZpbmUgSEFWRV9YSU0gMQp8ICNkZWZp bmUgVVNFX1hJTSAxCnwgI2RlZmluZSBIQVZFX1hSRU5ERVIgMQp8ICNkZWZpbmUgVVNFX0NB SVJPX1hDQiAxCnwgI2RlZmluZSBVU0VfQ0FJUk8gMQp8ICNkZWZpbmUgSEFWRV9GUkVFVFlQ RSAxCnwgI2RlZmluZSBIQVZFX0ZUX0ZBQ0VfR0VUQ0hBUlZBUklBTlRJTkRFWCAxCnwgI2Rl ZmluZSBIQVZFX0xJQk9URiAxCnwgI2RlZmluZSBIQVZFX09URl9HRVRfVkFSSUFUSU9OX0dM WVBIUyAxCnwgI2RlZmluZSBIQVZFX00xN05fRkxUIDEKfCAjZGVmaW5lIEhBVkVfSEFSRkJV WlogMQp8ICNkZWZpbmUgVVNFX1hDQiAxCnwgI2RlZmluZSBIQVZFX1hQTSAxCnwgI2RlZmlu ZSBIQVZFX0pQRUcgMQp8ICNkZWZpbmUgSEFWRV9MQ01TMiAxCnwgI2RlZmluZSBIQVZFX1pM SUIgMQp8ICNkZWZpbmUgRFlOQU1JQ19MSUJfU1VGRklYICIuc28iCnwgI2RlZmluZSBEWU5B TUlDX0xJQl9TRUNPTkRBUllfU1VGRklYICIiCnwgI2RlZmluZSBIQVZFX0RMQUREUiAxCnwg I2RlZmluZSBIQVZFX01PRFVMRVMgMQp8ICNkZWZpbmUgTU9EVUxFU19TVUZGSVggIi5zbyIK fCAjZGVmaW5lIE5BVElWRV9FTElTUF9TVUZGSVggIi5lbG4iCnwgI2RlZmluZSBIQVZFX1BO RyAxCnwgI2RlZmluZSBIQVZFX1RJRkYgMQp8ICNkZWZpbmUgSEFWRV9HSUYgMQp8ICNkZWZp bmUgSEFWRV9HUE0gMQp8ICNkZWZpbmUgSEFWRV9YX1NNIDEKfCAjZGVmaW5lIEhBVkVfWFJB TkRSIDEKfCAjZGVmaW5lIEhBVkVfWElORVJBTUEgMQp8ICNkZWZpbmUgSEFWRV9YRklYRVMg MQp8ICNkZWZpbmUgSEFWRV9YSU5QVVQyIDEKfCAjZGVmaW5lIEhBVkVfWElTQ1JPTExDTEFT U0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hJVE9VQ0hDTEFTU0lORk9fVFlQRSAxCnwg I2RlZmluZSBIQVZFX1hJQkFSUklFUlJFTEVBU0VQT0lOVEVSSU5GT19ERVZJQ0VJRCAxCnwg I2RlZmluZSBIQVZFX1hJR0VTVFVSRUNMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVf WFNZTkMgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQ1RSSUdHRVJGRU5DRSAxCnwgI2RlZmluZSBI QVZFX1hEQkUgMQp8ICNkZWZpbmUgSEFWRV9YQ0JfU0hBUEUgMQp8ICNkZWZpbmUgSEFWRV9Y U0hBUEUgMQp8ICNkZWZpbmUgSEFWRV9YQ09NUE9TSVRFIDEKfCAjZGVmaW5lIEhBVkVfTElC WE1MMiAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX1NFQ0NPTVBfSCAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NF Q0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GSUxURVJf SCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUg U0laRU9GX0xPTkcgOAp8ICNkZWZpbmUgSEFWRV9BQ0NFUFQ0IDEKfCAjZGVmaW5lIEhBVkVf RkNIRElSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9H RVRSVVNBR0UgMQp8ICNkZWZpbmUgSEFWRV9HRVRfQ1VSUkVOVF9ESVJfTkFNRSAxCnwgI2Rl ZmluZSBIQVZFX0xSQU5ENDggMQp8ICNkZWZpbmUgSEFWRV9SQU5ET00gMQp8ICNkZWZpbmUg SEFWRV9SSU5UIDEKfCAjZGVmaW5lIEhBVkVfVFJVTkMgMQp8ICNkZWZpbmUgSEFWRV9TRUxF Q1QgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NFVExP Q0FMRSAxCnwgI2RlZmluZSBIQVZFX05FV0xPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJM SU1JVCAxCnwgI2RlZmluZSBIQVZFX1NFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRE T1dOIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVf U1RSU0lHTkFMIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVf U0VORFRPIDEKfCAjZGVmaW5lIEhBVkVfUkVDVkZST00gMQp8ICNkZWZpbmUgSEFWRV9HRVRT T0NLTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVElGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9G UkVFSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0dBSV9TVFJFUlJPUiAxCnwgI2RlZmluZSBI QVZFX1NZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0VO RFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRH UkVOVCAxCnwgI2RlZmluZSBIQVZFX1JFTkFNRUFUMiAxCnwgI2RlZmluZSBIQVZFX0NGTUFL RVJBVyAxCnwgI2RlZmluZSBIQVZFX0NGU0VUU1BFRUQgMQp8ICNkZWZpbmUgSEFWRV9fX0VY RUNVVEFCTEVfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9MT0cyIDEKfCAjZGVmaW5lIEhBVkVf UFRIUkVBRF9TRVROQU1FX05QIDEKfCAjZGVmaW5lIEhBVkVfQUxJR05FRF9BTExPQyAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfQUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX1BPU0lY X01BRFZJU0UgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fRlJBTUVfQUREUkVTUyAxCnwg I2RlZmluZSBIQVZFX19fQlVJTFRJTl9VTldJTkRfSU5JVCAxCnwgI2RlZmluZSBIQVZFX0ZT RUVLTyAxCnwgI2RlZmluZSBIQVZFX0dSQU5UUFQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQVCAx CnwgI2RlZmluZSBIQVZFX1BPU0lYX09QRU5QVCAxCnwgI2RlZmluZSBURVJNSU5GTyAxCnwg I2RlZmluZSBURVJNSU5GT19ERUZJTkVTX0JDIDEKfCAjZGVmaW5lIEhBVkVfVElNRVJGRCAx CnwgI2RlZmluZSBIQVZFX1ZBTEdSSU5EX1ZBTEdSSU5EX0ggMQp8ICNkZWZpbmUgSEFWRV9T VFJVQ1RfVU5JUEFJUl9VTklDT0RFIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19WRk9SSyAx CnwgI2RlZmluZSBIQVZFX1dPUktJTkdfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1NOUFJJTlRG IDEKfCAjZGVmaW5lIEhBVkVfU1BBV05fSCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdO IDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV05fRklMRV9BQ1RJT05TX0FERENIRElSX05Q IDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV05BVFRSX1NFVEZMQUdTIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9QT1NJWF9TUEFXTl9TRVRTSUQgMQp8ICNkZWZpbmUgSEFWRV9HTElCIDEK fCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fQ09ERVNFVCAxCnwgI2RlZmluZSBIQVZFX0xBTkdJ TkZPX19OTF9QQVBFUl9XSURUSCAxCnwgI2RlZmluZSBIQVZFX01CU1RBVEVfVCAxCnwgI2Rl ZmluZSBBTVBFUlNBTkRfRlVMTF9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUFRZUyAxCnwgI2Rl ZmluZSBIQVZFX1NPQ0tFVFMgMQp8ICNkZWZpbmUgTlVMTF9ERVZJQ0UgIi9kZXYvbnVsbCIK fCAjZGVmaW5lIFNFUENIQVIgJzonCnwgI2RlZmluZSBzdWJwcm9jZXNzZXMgMQp8ICNkZWZp bmUgVVNFUl9GVUxMX05BTUUgcHctPnB3X2dlY29zCnwgI2RlZmluZSBESVJFQ1RPUllfU0VQ ICcvJwp8ICNkZWZpbmUgSVNfREVWSUNFX1NFUChfY18pIDAKfCAjZGVmaW5lIElTX0RJUkVD VE9SWV9TRVAoX2NfKSAoKF9jXykgPT0gRElSRUNUT1JZX1NFUCkKfCAjZGVmaW5lIElTX0FO WV9TRVAoX2NfKSAoSVNfRElSRUNUT1JZX1NFUCAoX2NfKSkKfCAjZGVmaW5lIEhBVkVfUFJP Q0ZTIDEKfCAjZGVmaW5lIERFRkFVTFRfU09VTkRfREVWSUNFICIvZGV2L2RzcCIKfCAjZGVm aW5lIElOVEVSUlVQVF9JTlBVVCAxCnwgI2RlZmluZSBOQVJST1dQUk9UTyAxCnwgI2RlZmlu ZSBVTklYOThfUFRZUyAxCnwgI2RlZmluZSBQVFlfSVRFUkFUSU9OIGludCBpOyBmb3IgKGkg PSAwOyBpIDwgMTsgaSsrKQp8ICNkZWZpbmUgUFRZX1RUWV9OQU1FX1NQUklOVEYgeyBjaGFy ICpwdHluYW1lID0gMDsgc2lnc2V0X3QgYmxvY2tlZDsgc2lnZW1wdHlzZXQgKCZibG9ja2Vk KTsgc2lnYWRkc2V0ICgmYmxvY2tlZCwgU0lHQ0hMRCk7IHB0aHJlYWRfc2lnbWFzayAoU0lH X0JMT0NLLCAmYmxvY2tlZCwgMCk7IGlmIChncmFudHB0IChmZCkgIT0gLTEgJiYgdW5sb2Nr cHQgKGZkKSAhPSAtMSkgcHR5bmFtZSA9IHB0c25hbWUoZmQpOyBwdGhyZWFkX3NpZ21hc2sg KFNJR19VTkJMT0NLLCAmYmxvY2tlZCwgMCk7IGlmICghcHR5bmFtZSkgeyBlbWFjc19jbG9z ZSAoZmQpOyByZXR1cm4gLTE7IH0gc25wcmludGYgKHB0eV9uYW1lLCBQVFlfTkFNRV9TSVpF LCAiJXMiLCBwdHluYW1lKTsgfQp8ICNkZWZpbmUgUFRZX09QRU4gZG8geyBmZCA9IHBvc2l4 X29wZW5wdCAoT19SRFdSIHwgT19DTE9FWEVDIHwgT19OT0NUVFkpOyBpZiAoZmQgPCAwICYm IGVycm5vID09IEVJTlZBTCkgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fTk9DVFRZ KTsgfSB3aGlsZSAoZmFsc2UpCnwgI2RlZmluZSBQVFlfTkFNRV9TUFJJTlRGIC8qKi8KfCAj ZGVmaW5lIFNJR05BTFNfVklBX0NIQVJBQ1RFUlMgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dP UktTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBIQVZFX19TRVRK TVAgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TVEFDS19P VkVSRkxPV19IQU5ETElORyAxCnwgI2RlZmluZSBVU0cgLyoqLwp8ICNkZWZpbmUgR05VX0xJ TlVYIC8qKi8KfCAjZGVmaW5lIFNJWkVPRl9TUEVFRF9UIDQKfCAjZGVmaW5lIFVTQUJMRV9G SU9OUkVBRCAxCnwgI2RlZmluZSBVU0FCTEVfU0lHSU8gMQp8ICNkZWZpbmUgQ09QWVJJR0hU ICJDb3B5cmlnaHQgKEMpIDIwMjMgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuIgp8 ICNkZWZpbmUgVEVSTV9IRUFERVIgImd0a3V0aWwuaCIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJ R1VSQVRJT04gIng4Nl82NC1wYy1saW51eC1nbnUiCnwgI2RlZmluZSBFTUFDU19DT05GSUdf T1BUSU9OUyAiIgp8ICNkZWZpbmUgSEFWRV9YX1dJTkRPV1MgMQp8ICNkZWZpbmUgSEFWRV9Y MTEgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfQVRUUklCVVRFX0FMSUdORUQgMQp8ICNkZWZp bmUgSEFWRV9UWVBFT0YgMQp8ICNkZWZpbmUgSEFWRV9TVEFURU1FTlRfRVhQUkVTU0lPTlMg MQp8ICNkZWZpbmUgTUFMTE9DXzBfSVNfTk9OTlVMTCAxCnwgI2RlZmluZSBIQVZFX1NZU19B Q0xfSCAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FD TF9HRVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFW RV9BQ0xfU0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZSRUUgMQp8ICNkZWZpbmUgSEFW RV9BQ0xfRlJPTV9NT0RFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZST01fVEVYVCAxCnwgI2Rl ZmluZSBIQVZFX0FDTF9ERUxFVEVfREVGX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRVhU RU5ERURfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9MSUJBQ0xfSCAxCnwgI2RlZmluZSBI QVZFX0FDTF9FTlRSSUVTIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZJUlNUX0VOVFJZIDEKfCAj ZGVmaW5lIFVTRV9BQ0wgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAxCnwgI2RlZmluZSBI QVZFX0FMTE9DQSAxCnwgI2RlZmluZSBMU1RBVF9GT0xMT1dTX1NMQVNIRURfU1lNTElOSyAx CnwgI2RlZmluZSBGVU5DX1JFQUxQQVRIX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfRkFDQ0VT U0FUIDEKfCAjZGVmaW5lIEhBVkVfR0VUQ1dEIDEKfCAjZGVmaW5lIHJlc3RyaWN0IF9fcmVz dHJpY3RfXwp8ICNkZWZpbmUgSEFWRV9FTlZJUk9OX0RFQ0wgMQp8ICNkZWZpbmUgSEFWRV9E RUNMX1NUUk1PREUgMAp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZF X0dFVE9QVF9MT05HX09OTFkgMQp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkdfSU5UIDEKfCAj ZGVmaW5lIEhBVkVfVU5TSUdORURfTE9OR19MT05HX0lOVCAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfTUVNTUVNIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9NRU1SQ0hSIDEKfCAjZGVmaW5lIEhB VkVfTUlOTUFYX0lOX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIFRJTUVfVF9JU19TSUdORUQg MQp8ICNkZWZpbmUgSEFWRV9ERUNMX0FMQVJNIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1RN X1RNX1pPTkUgMQp8ICNkZWZpbmUgSEFWRV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1f R01UT0ZGIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUX1QgMQp8ICNkZWZpbmUgSEFWRV9XQ0hB Ul9UIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GQ0xPU0VBTEwgMQp8ICNkZWZpbmUgSEFWRV9E RUNMX0dFVFcgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BVVFcgMQp8ICNkZWZpbmUgX19VU0Vf TUlOR1dfQU5TSV9TVERJTyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRUNWVCAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfRkNWVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0NWVCAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfU1RSTkxFTiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSVE9JTUFYIDEK fCAjZGVmaW5lIF9VU0VfU1REX1NUQVQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VYRUNWUEUg MQp8ICNkZWZpbmUgSEFWRV9ERUNMX0NMRUFSRVJSX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9GRU9GX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRVJST1JfVU5M T0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZGTFVTSF9VTkxPQ0tFRCAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfRkdFVFNfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZQVVRD X1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GUFVUU19VTkxPQ0tFRCAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfRlJFQURfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZX UklURV9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VUQ19VTkxPQ0tFRCAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfR0VUQ0hBUl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfUFVUQ19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUFVUQ0hBUl9VTkxPQ0tF RCAxCnwgI2RlZmluZSBHRVRHUk9VUFNfVCBnaWRfdAp8ICNkZWZpbmUgSEFWRV9ERUNMX0dF VERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfUE9TSVggMQp8ICNkZWZpbmUg UFJPTU9URURfTU9ERV9UIG1vZGVfdAp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1VUSU1FUyAx CnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9FWFBF Q1QgMQp8ICNkZWZpbmUgSEFWRV9CWVRFU1dBUF9IIDEKfCAjZGVmaW5lIEdOVUxJQl9DQU5P TklDQUxJWkVfTEdQTCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LQVQgMQp8ICNkZWZpbmUg SEFWRV9DTE9DS19HRVRSRVMgMQp8ICNkZWZpbmUgSEFWRV9DTE9DS19HRVRUSU1FIDEKfCAj ZGVmaW5lIEhBVkVfQ0xPQ0tfU0VUVElNRSAxCnwgI2RlZmluZSBHTlVMSUJfQ0xPU0VfU1RS RUFNIDEKfCAjZGVmaW5lIEhBVkVfQ09QWV9GSUxFX1JBTkdFIDEKfCAjZGVmaW5lIEhBVkVf U1RSVUNUX0RJUkVOVF9EX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNk ZWZpbmUgR05VTElCX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkRPUEVORElS IDEKfCAjZGVmaW5lIEdOVUxJQl9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgR0VUWEFUVFJfV0lU SF9QT1NJWF9BQ0xTIDEKfCAjZGVmaW5lIEZMRVhJQkxFX0FSUkFZX01FTUJFUiAvKiovCnwg I2RlZmluZSBIQVZFX0RFQ0xfX19GUEVORElORyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVfUE9T SVggMQp8ICNkZWZpbmUgSEFWRV9TWVNfTU9VTlRfSCAxCnwgI2RlZmluZSBTVEFUX1NUQVRW RlMgMQp8ICNkZWZpbmUgU1RBVF9TVEFURlMyX0ZSU0laRSAxCnwgLyogZW5kIGNvbmZkZWZz LmguICAqLwp8ICNpbmNsdWRlIDxzdGRkZWYuaD4KfCAjaWZkZWYgSEFWRV9TVERJT19ICnwg IyBpbmNsdWRlIDxzdGRpby5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NURExJQl9ICnwg IyBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdfSAp8 ICMgaW5jbHVkZSA8c3RyaW5nLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfSU5UVFlQRVNf SAp8ICMgaW5jbHVkZSA8aW50dHlwZXMuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVERJ TlRfSAp8ICMgaW5jbHVkZSA8c3RkaW50Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RS SU5HU19ICnwgIyBpbmNsdWRlIDxzdHJpbmdzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVf U1lTX1RZUEVTX0gKfCAjIGluY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRl ZiBIQVZFX1NZU19TVEFUX0gKfCAjIGluY2x1ZGUgPHN5cy9zdGF0Lmg+CnwgI2VuZGlmCnwg I2lmZGVmIEhBVkVfVU5JU1REX0gKfCAjIGluY2x1ZGUgPHVuaXN0ZC5oPgp8ICNlbmRpZgp8 ICNpbmNsdWRlIDxzeXMvZnMvczVwYXJhbS5oPgpjb25maWd1cmU6MzY4MDE6IHJlc3VsdDog bm8KY29uZmlndXJlOjM2ODA3OiBjaGVja2luZyBmb3Igc3lzL3N0YXRmcy5oCmNvbmZpZ3Vy ZTozNjgwNzogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjM2 ODA3OiAkPyA9IDAKY29uZmlndXJlOjM2ODA3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzY4 MTU6IGNoZWNraW5nIGZvciBzdGF0ZnMgdGhhdCB0cnVuY2F0ZXMgYmxvY2sgY291bnRzCmNv bmZpZ3VyZTozNjg0MDogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZnRl c3QuYzozOTA6NzogZXJyb3I6IGV4cGVjdGVkICc9JywgJywnLCAnOycsICdhc20nIG9yICdf X2F0dHJpYnV0ZV9fJyBiZWZvcmUgJy0tJyB0b2tlbgogIDM5MCB8IGNob2tlIC0tIHRoaXMg aXMgYSB3b3JrYXJvdW5kIGZvciBhIFN1bi1zcGVjaWZpYyBwcm9ibGVtCiAgICAgIHwgICAg ICAgXn4KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIGNvbmZ0ZXN0LmM6MzkyOgovdXNyL2luY2x1 ZGUveDg2XzY0LWxpbnV4LWdudS9zeXMvdHlwZXMuaDozMzo5OiBlcnJvcjogdW5rbm93biB0 eXBlIG5hbWUgJ19fdV9jaGFyJwogICAzMyB8IHR5cGVkZWYgX191X2NoYXIgdV9jaGFyOwog ICAgICB8ICAgICAgICAgXn5+fn5+fn4KY29uZmlndXJlOjM2ODQwOiAkPyA9IDEKY29uZmln 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 RSAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFURlNfSCAxCnwgLyogZW5kIGNvbmZkZWZzLmgu ICAqLwp8IAp8ICNpZiAhZGVmaW5lZChzdW4pICYmICFkZWZpbmVkKF9fc3VuKQp8IGNob2tl IC0tIHRoaXMgaXMgYSB3b3JrYXJvdW5kIGZvciBhIFN1bi1zcGVjaWZpYyBwcm9ibGVtCnwg I2VuZGlmCnwgI2luY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNpbmNsdWRlIDxzeXMvdmZzLmg+ CnwgCnwgaW50CnwgbWFpbiAodm9pZCkKfCB7Cnwgc3RydWN0IHN0YXRmcyB0OyBsb25nIGMg PSAqKHQuZl9zcGFyZSk7CnwgICAgICAgICAgICBpZiAoYykgcmV0dXJuIDA7CnwgCnwgICA7 CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZTozNjg0OTogcmVzdWx0OiBubwpjb25maWd1 cmU6MzY5MDE6IGNoZWNraW5nIGZvciBmdXRpbWVucwpjb25maWd1cmU6MzY5Mzg6IGNoZWNr aW5nIGZvciBmdXRpbWVucwpjb25maWd1cmU6MzY5Mzg6IGdjYyAtbyBjb25mdGVzdCAtZzMg LU8yICAgICAgY29uZnRlc3QuYyAgID4mNSAKY29uZmlndXJlOjM2OTM4OiAkPyA9IDAKY29u ZmlndXJlOjM2OTM4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzY5NTM6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZTozNjk3MzogY2hlY2tpbmcgd2hldGhlciBmdXRpbWVucyB3b3Jrcwpjb25m aWd1cmU6MzcwMjg6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAg ID4mNSAKY29uZmlndXJlOjM3MDI4OiAkPyA9IDAKY29uZmlndXJlOjM3MDI4OiAuL2NvbmZ0 ZXN0CmNvbmZpZ3VyZTozNzAyODogJD8gPSAwCmNvbmZpZ3VyZTozNzA0MDogcmVzdWx0OiB5 ZXMKY29uZmlndXJlOjM3MDg2OiBjaGVja2luZyBmb3IgZ2V0bG9hZGF2Zwpjb25maWd1cmU6 MzcxMjM6IGNoZWNraW5nIGZvciBnZXRsb2FkYXZnCmNvbmZpZ3VyZTozNzEyMzogZ2NjIC1v IGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1IApjb25maWd1cmU6Mzcx MjM6ICQ/ID0gMApjb25maWd1cmU6MzcxMjM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozNzEz ODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM3NTA0OiBjaGVja2luZyBmb3Igc3lzL2xvYWRh dmcuaApjb25maWd1cmU6Mzc1MDQ6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1 CmNvbmZ0ZXN0LmM6NDE4OjEwOiBmYXRhbCBlcnJvcjogc3lzL2xvYWRhdmcuaDogTm8gc3Vj aCBmaWxlIG9yIGRpcmVjdG9yeQogIDQxOCB8ICNpbmNsdWRlIDxzeXMvbG9hZGF2Zy5oPgog ICAgICB8ICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fgpjb21waWxhdGlvbiB0ZXJtaW5hdGVk Lgpjb25maWd1cmU6Mzc1MDQ6ICQ/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 RVRMT0FEQVZHIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN0ZGRl Zi5oPgp8ICNpZmRlZiBIQVZFX1NURElPX0gKfCAjIGluY2x1ZGUgPHN0ZGlvLmg+CnwgI2Vu ZGlmCnwgI2lmZGVmIEhBVkVfU1RETElCX0gKfCAjIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICNl bmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR19ICnwgIyBpbmNsdWRlIDxzdHJpbmcuaD4KfCAj ZW5kaWYKfCAjaWZkZWYgSEFWRV9JTlRUWVBFU19ICnwgIyBpbmNsdWRlIDxpbnR0eXBlcy5o Pgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NURElOVF9ICnwgIyBpbmNsdWRlIDxzdGRpbnQu aD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdTX0gKfCAjIGluY2x1ZGUgPHN0cmlu Z3MuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TWVNfVFlQRVNfSAp8ICMgaW5jbHVkZSA8 c3lzL3R5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1lTX1NUQVRfSAp8ICMgaW5j bHVkZSA8c3lzL3N0YXQuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9VTklTVERfSAp8ICMg aW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgI2luY2x1ZGUgPHN5cy9sb2FkYXZnLmg+ CmNvbmZpZ3VyZTozNzUwNDogcmVzdWx0OiBubwpjb25maWd1cmU6Mzc1MTY6IGNoZWNraW5n IHdoZXRoZXIgZ2V0bG9hZGF2ZyBpcyBkZWNsYXJlZApjb25maWd1cmU6Mzc1MTY6IGdjYyAt YyAtZzMgLU8yICAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6Mzc1MTY6ICQ/ID0gMApj b25maWd1cmU6Mzc1MTY6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozNzc5ODogY2hlY2tpbmcg Zm9yIGdldHJhbmRvbQpjb25maWd1cmU6Mzc4NDA6IGNoZWNraW5nIGZvciBnZXRyYW5kb20K Y29uZmlndXJlOjM3ODQwOiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0 LmMgICA+JjUgCmNvbmZpZ3VyZTozNzg0MDogJD8gPSAwCmNvbmZpZ3VyZTozNzg0MDogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjM3ODU1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6Mzc4NzU6 IGNoZWNraW5nIHdoZXRoZXIgZ2V0cmFuZG9tIGlzIGNvbXBhdGlibGUgd2l0aCBpdHMgR05V K0JTRCBzaWduYXR1cmUKY29uZmlndXJlOjM3ODk5OiBnY2MgLWMgLWczIC1PMiAgICBjb25m dGVzdC5jID4mNQpjb25maWd1cmU6Mzc4OTk6ICQ/ID0gMApjb25maWd1cmU6Mzc5MDg6IHJl c3VsdDogeWVzCmNvbmZpZ3VyZTozODAxOTogY2hlY2tpbmcgZm9yIGdldHRpbWVvZmRheSB3 aXRoIFBPU0lYIHNpZ25hdHVyZQpjb25maWd1cmU6MzgwNDg6IGdjYyAtYyAtZzMgLU8yICAg IGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozODA0ODogJD8gPSAwCmNvbmZpZ3VyZTozODA3 NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM4MTcwOiBjaGVja2luZyB3aGV0aGVyIHRoZSBj b21waWxlciBzdXBwb3J0cyB0aGUgX19pbmxpbmUga2V5d29yZApjb25maWd1cmU6MzgxODg6 IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozODE4ODogJD8g PSAwCmNvbmZpZ3VyZTozODE5NjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM4MjIwOiBjaGVj a2luZyBmb3IgZ21wLmgKY29uZmlndXJlOjM4MjIwOiBnY2MgLWMgLWczIC1PMiAgICBjb25m dGVzdC5jID4mNQpjb25maWd1cmU6MzgyMjA6ICQ/ID0gMApjb25maWd1cmU6MzgyMjA6IHJl c3VsdDogeWVzCmNvbmZpZ3VyZTozODIzNDogY2hlY2tpbmcgZm9yIGxpYnJhcnkgY29udGFp bmluZyBfX2dtcHpfcm9pbml0X24KY29uZmlndXJlOjM4MjY0OiBnY2MgLW8gY29uZnRlc3Qg LWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCi91c3IvYmluL2xkOiAvdG1wL2NjQjRa TUpKLm86IGluIGZ1bmN0aW9uIGBtYWluJzoKL2FwcC9lbWFjcy9jb25mdGVzdC5jOjQwMzog dW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgX19nbXB6X3JvaW5pdF9uJwpjb2xsZWN0MjogZXJy b3I6IGxkIHJldHVybmVkIDEgZXhpdCBzdGF0dXMKY29uZmlndXJlOjM4MjY0OiAkPyA9IDEK 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 I2RlZmluZSBIQVZFX0dNUF9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgCnwgLyog T3ZlcnJpZGUgYW55IEdDQyBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3Iu CnwgICAgVXNlIGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2ggdGhlIHJldHVybiB0eXBl IG9mIGEgR0NDCnwgICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMgYXJndW1lbnQgcHJvdG90eXBl IHdvdWxkIHN0aWxsIGFwcGx5LiAgKi8KfCBjaGFyIF9fZ21wel9yb2luaXRfbiAoKTsKfCBp bnQKfCBtYWluICh2b2lkKQp8IHsKfCByZXR1cm4gX19nbXB6X3JvaW5pdF9uICgpOwp8ICAg Owp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MzgyNjQ6IGdjYyAtbyBjb25mdGVzdCAt ZzMgLU8yICAgICAgY29uZnRlc3QuYyAtbGdtcCAgICA+JjUgCmNvbmZpZ3VyZTozODI2NDog JD8gPSAwCmNvbmZpZ3VyZTozODI4NDogcmVzdWx0OiAtbGdtcApjb25maWd1cmU6Mzg0NDM6 IGNoZWNraW5nIGZvciBtZW1tZW0KY29uZmlndXJlOjM4NDQzOiBnY2MgLW8gY29uZnRlc3Qg LWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCmNvbmZpZ3VyZTozODQ0MzogJD8gPSAw CmNvbmZpZ3VyZTozODQ0MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM4NDU5OiBjaGVja2lu ZyB3aGV0aGVyIG1lbW1lbSB3b3Jrcwpjb25maWd1cmU6Mzg1Mjc6IGdjYyAtbyBjb25mdGVz dCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAgID4mNSAKY29uZmlndXJlOjM4NTI3OiAkPyA9 IDAKY29uZmlndXJlOjM4NTI3OiAuL2NvbmZ0ZXN0CmNvbmZpZ3VyZTozODUyNzogJD8gPSAw CmNvbmZpZ3VyZTozODUzOTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM4NTkwOiBjaGVja2lu ZyBmb3IgbWVtcGNweQpjb25maWd1cmU6Mzg2Mjc6IGNoZWNraW5nIGZvciBtZW1wY3B5CmNv bmZpZ3VyZTozODYyNzogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5j ICAgPiY1IApjb25mdGVzdC5jOjQxMjo2OiB3YXJuaW5nOiBjb25mbGljdGluZyB0eXBlcyBm b3IgYnVpbHQtaW4gZnVuY3Rpb24gJ21lbXBjcHknOyBleHBlY3RlZCAndm9pZCAqKHZvaWQg KiwgY29uc3Qgdm9pZCAqLCBsb25nIHVuc2lnbmVkIGludCknIFstV2J1aWx0aW4tZGVjbGFy YXRpb24tbWlzbWF0Y2hdCiAgNDEyIHwgY2hhciBtZW1wY3B5ICgpOwogICAgICB8ICAgICAg Xn5+fn5+fgpjb25maWd1cmU6Mzg2Mjc6ICQ/ID0gMApjb25maWd1cmU6Mzg2Mjc6IHJlc3Vs dDogeWVzCmNvbmZpZ3VyZTozODY0MjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM4NzA4OiBj aGVja2luZyBmb3IgbWVtcmNocgpjb25maWd1cmU6Mzg3MDg6IGdjYyAtbyBjb25mdGVzdCAt ZzMgLU8yICAgICAgY29uZnRlc3QuYyAgID4mNSAKY29uZmlndXJlOjM4NzA4OiAkPyA9IDAK Y29uZmlndXJlOjM4NzA4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6Mzg3NzA6IGNoZWNraW5n IGZvciBleHBsaWNpdF9tZW1zZXQKY29uZmlndXJlOjM4NzcwOiBnY2MgLW8gY29uZnRlc3Qg LWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCi91c3IvYmluL2xkOiAvdG1wL2NjWmN6 TUMwLm86IGluIGZ1bmN0aW9uIGBtYWluJzoKL2FwcC9lbWFjcy9jb25mdGVzdC5jOjQyNTog dW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgZXhwbGljaXRfbWVtc2V0Jwpjb2xsZWN0MjogZXJy b3I6IGxkIHJldHVybmVkIDEgZXhpdCBzdGF0dXMKY29uZmlndXJlOjM4NzcwOiAkPyA9IDEK 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 IEhBVkVfTUVNUENQWSAxCnwgI2RlZmluZSBIQVZFX01FTVJDSFIgMQp8IC8qIGVuZCBjb25m ZGVmcy5oLiAgKi8KfCAvKiBEZWZpbmUgZXhwbGljaXRfbWVtc2V0IHRvIGFuIGlubm9jdW91 cyB2YXJpYW50LCBpbiBjYXNlIDxsaW1pdHMuaD4gZGVjbGFyZXMgZXhwbGljaXRfbWVtc2V0 Lgp8ICAgIEZvciBleGFtcGxlLCBIUC1VWCAxMWkgPGxpbWl0cy5oPiBkZWNsYXJlcyBnZXR0 aW1lb2ZkYXkuICAqLwp8ICNkZWZpbmUgZXhwbGljaXRfbWVtc2V0IGlubm9jdW91c19leHBs aWNpdF9tZW1zZXQKfCAKfCAvKiBTeXN0ZW0gaGVhZGVyIHRvIGRlZmluZSBfX3N0dWIgbWFj cm9zIGFuZCBob3BlZnVsbHkgZmV3IHByb3RvdHlwZXMsCnwgICAgd2hpY2ggY2FuIGNvbmZs aWN0IHdpdGggY2hhciBleHBsaWNpdF9tZW1zZXQgKCk7IGJlbG93LiAgKi8KfCAKfCAjaW5j bHVkZSA8bGltaXRzLmg+CnwgI3VuZGVmIGV4cGxpY2l0X21lbXNldAp8IAp8IC8qIE92ZXJy aWRlIGFueSBHQ0MgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLgp8ICAg IFVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBh IEdDQwp8ICAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3Vs ZCBzdGlsbCBhcHBseS4gICovCnwgI2lmZGVmIF9fY3BsdXNwbHVzCnwgZXh0ZXJuICJDIgp8 ICNlbmRpZgp8IGNoYXIgZXhwbGljaXRfbWVtc2V0ICgpOwp8IC8qIFRoZSBHTlUgQyBsaWJy YXJ5IGRlZmluZXMgdGhpcyBmb3IgZnVuY3Rpb25zIHdoaWNoIGl0IGltcGxlbWVudHMKfCAg ICAgdG8gYWx3YXlzIGZhaWwgd2l0aCBFTk9TWVMuICBTb21lIGZ1bmN0aW9ucyBhcmUgYWN0 dWFsbHkgbmFtZWQKfCAgICAgc29tZXRoaW5nIHN0YXJ0aW5nIHdpdGggX18gYW5kIHRoZSBu b3JtYWwgbmFtZSBpcyBhbiBhbGlhcy4gICovCnwgI2lmIGRlZmluZWQgX19zdHViX2V4cGxp Y2l0X21lbXNldCB8fCBkZWZpbmVkIF9fc3R1Yl9fX2V4cGxpY2l0X21lbXNldAp8IGNob2tl IG1lCnwgI2VuZGlmCnwgCnwgaW50CnwgbWFpbiAodm9pZCkKfCB7CnwgcmV0dXJuIGV4cGxp Y2l0X21lbXNldCAoKTsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjM4Nzcw OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTozODgxMTogY2hlY2tpbmcgZm9yIG1rb3N0ZW1wCmNv bmZpZ3VyZTozODg0ODogY2hlY2tpbmcgZm9yIG1rb3N0ZW1wCmNvbmZpZ3VyZTozODg0ODog Z2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1IApjb25maWd1 cmU6Mzg4NDg6ICQ/ID0gMApjb25maWd1cmU6Mzg4NDg6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy ZTozODg2MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM4OTgyOiBjaGVja2luZyBmb3IgbGli cmFyeSBjb250YWluaW5nIG5hbm9zbGVlcApjb25maWd1cmU6MzkwMTI6IGdjYyAtbyBjb25m dGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAgID4mNSAKY29uZmlndXJlOjM5MDEyOiAk PyA9IDAKY29uZmlndXJlOjM5MDMyOiByZXN1bHQ6IG5vbmUgcmVxdWlyZWQKY29uZmlndXJl OjM5MDUzOiBjaGVja2luZyBmb3Igd29ya2luZyBuYW5vc2xlZXAKY29uZmlndXJlOjM5MTM4 OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCmNvbmZp Z3VyZTozOTEzODogJD8gPSAwCmNvbmZpZ3VyZTozOTEzODogLi9jb25mdGVzdApjb25maWd1 cmU6MzkxMzg6ICQ/ID0gNgpjb25maWd1cmU6IHByb2dyYW0gZXhpdGVkIHdpdGggc3RhdHVz IDYKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8 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 VkVfREVDTF9NRU1SQ0hSIDEKfCAjZGVmaW5lIEhBVkVfTUlOTUFYX0lOX1NZU19QQVJBTV9I IDEKfCAjZGVmaW5lIFRJTUVfVF9JU19TSUdORUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0FM QVJNIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1RNX1RNX1pPTkUgMQp8ICNkZWZpbmUgSEFW RV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fR01UT0ZGIDEKfCAjZGVmaW5lIEhBVkVf U0lHU0VUX1QgMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9UIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9GQ0xPU0VBTEwgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVFcgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX1BVVFcgMQp8ICNkZWZpbmUgX19VU0VfTUlOR1dfQU5TSV9TVERJTyAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfRUNWVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkNWVCAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfR0NWVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSTkxFTiAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIF9VU0VfU1REX1NUQVQg MQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VYRUNWUEUgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0NM RUFSRVJSX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRU9GX1VOTE9DS0VEIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9GRVJST1JfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9E RUNMX0ZGTFVTSF9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkdFVFNfVU5MT0NL RUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZQVVRDX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9GUFVUU19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRlJFQURfVU5M T0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZXUklURV9VTkxPQ0tFRCAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfR0VUQ19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VUQ0hB Ul9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUFVUQ19VTkxPQ0tFRCAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfUFVUQ0hBUl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBHRVRHUk9VUFNf VCBnaWRfdAp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUg SEFWRV9NQUxMT0NfUE9TSVggMQp8ICNkZWZpbmUgUFJPTU9URURfTU9ERV9UIG1vZGVfdAp8 ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1VUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAx CnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9FWFBFQ1QgMQp8ICNkZWZpbmUgSEFWRV9CWVRF U1dBUF9IIDEKfCAjZGVmaW5lIEdOVUxJQl9DQU5PTklDQUxJWkVfTEdQTCAxCnwgI2RlZmlu ZSBIQVZFX1JFQURMSU5LQVQgMQp8ICNkZWZpbmUgSEFWRV9DTE9DS19HRVRSRVMgMQp8ICNk ZWZpbmUgSEFWRV9DTE9DS19HRVRUSU1FIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tfU0VUVElN RSAxCnwgI2RlZmluZSBHTlVMSUJfQ0xPU0VfU1RSRUFNIDEKfCAjZGVmaW5lIEhBVkVfQ09Q WV9GSUxFX1JBTkdFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0RJUkVOVF9EX1RZUEUgMQp8 ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgR05VTElCX0ZBQ0NFU1NBVCAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfRkRPUEVORElSIDEKfCAjZGVmaW5lIEdOVUxJQl9GRE9Q RU5ESVIgMQp8ICNkZWZpbmUgR0VUWEFUVFJfV0lUSF9QT1NJWF9BQ0xTIDEKfCAjZGVmaW5l IEZMRVhJQkxFX0FSUkFZX01FTUJFUiAvKiovCnwgI2RlZmluZSBIQVZFX0RFQ0xfX19GUEVO RElORyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVfUE9TSVggMQp8ICNkZWZpbmUgSEFWRV9TWVNf TU9VTlRfSCAxCnwgI2RlZmluZSBTVEFUX1NUQVRWRlMgMQp8ICNkZWZpbmUgU1RBVF9TVEFU RlMyX0ZSU0laRSAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFURlNfSCAxCnwgI2RlZmluZSBI QVZFX0ZVVElNRU5TIDEKfCAjZGVmaW5lIEhBVkVfR0VUTE9BREFWRyAxCnwgI2RlZmluZSBI QVZFX0dFVFJBTkRPTSAxCnwgI2RlZmluZSBIQVZFX1RJTUVTUEVDX0dFVCAxCnwgI2RlZmlu ZSBHRVRUSU1FT0ZEQVlfVElNRVpPTkUgdm9pZAp8ICNkZWZpbmUgSEFWRV9fX0lOTElORSAx CnwgI2RlZmluZSBIQVZFX0dNUF9IIDEKfCAjZGVmaW5lIEhBVkVfTUVNTUVNIDEKfCAjZGVm aW5lIEhBVkVfTUVNUENQWSAxCnwgI2RlZmluZSBIQVZFX01FTVJDSFIgMQp8ICNkZWZpbmUg SEFWRV9NS09TVEVNUCAxCnwgI2RlZmluZSBHTlVMSUJfTUtPU1RFTVAgMQp8ICNkZWZpbmUg TkVFRF9NS1RJTUVfV09SS0lORyAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8IAp8ICAg ICAgICAgICAjaW5jbHVkZSA8ZXJybm8uaD4KfCAgICAgICAgICAgI2luY2x1ZGUgPGxpbWl0 cy5oPgp8ICAgICAgICAgICAjaW5jbHVkZSA8c2lnbmFsLmg+CnwgICAgICAgICAgICNpbmNs dWRlIDx0aW1lLmg+CnwgICAgICAgICAgICNpbmNsdWRlIDx1bmlzdGQuaD4KfCAgICAgICAg ICAgI2RlZmluZSBUWVBFX1NJR05FRCh0KSAoISAoKHQpIDAgPCAodCkgLTEpKQp8ICAgICAg ICAgICAjZGVmaW5lIFRZUEVfTUFYSU1VTSh0KSAgICAgICAgICAgICAoKHQpICghIFRZUEVf U0lHTkVEICh0KSAgICAgICAgICAgICAgICAgICA/ICh0KSAtMSAgICAgICAgICAgICAgICAg ICA6ICgoKCh0KSAxIDw8IChzaXplb2YgKHQpICogQ0hBUl9CSVQgLSAyKSkgLSAxKSAqIDIg KyAxKSkpCnwgCnwgICAgICAgICAgICNpZiBIQVZFX0RFQ0xfQUxBUk0KfCAgICAgICAgICAg c3RhdGljIHZvaWQKfCAgICAgICAgICAgY2hlY2tfZm9yX1NJR0FMUk0gKGludCBzaWcpCnwg ICAgICAgICAgIHsKfCAgICAgICAgICAgICBpZiAoc2lnICE9IFNJR0FMUk0pCnwgICAgICAg ICAgICAgICBfZXhpdCAoMSk7CnwgICAgICAgICAgIH0KfCAgICAgICAgICAgI2VuZGlmCnwg CnwgICAgICAgICAgIGludAp8ICAgICAgICAgICBtYWluICgpCnwgICAgICAgICAgIHsKfCAg ICAgICAgICAgICBzdGF0aWMgc3RydWN0IHRpbWVzcGVjIHRzX3NsZWVwOwp8ICAgICAgICAg ICAgIHN0YXRpYyBzdHJ1Y3QgdGltZXNwZWMgdHNfcmVtYWluaW5nOwp8ICAgICAgICAgICAg IC8qIFRlc3QgZm9yIG1ham9yIHByb2JsZW1zIGZpcnN0LiAgKi8KfCAgICAgICAgICAgICBp ZiAoISBuYW5vc2xlZXApCnwgICAgICAgICAgICAgICByZXR1cm4gMjsKfCAgICAgICAgICAg ICB0c19zbGVlcC50dl9zZWMgPSAwOwp8ICAgICAgICAgICAgIHRzX3NsZWVwLnR2X25zZWMg PSAxOwp8ICAgICAgICAgICAgICNpZiBIQVZFX0RFQ0xfQUxBUk0KfCAgICAgICAgICAgICB7 CnwgICAgICAgICAgICAgICBzdGF0aWMgc3RydWN0IHNpZ2FjdGlvbiBhY3Q7CnwgICAgICAg ICAgICAgICBhY3Quc2FfaGFuZGxlciA9IGNoZWNrX2Zvcl9TSUdBTFJNOwp8ICAgICAgICAg ICAgICAgc2lnZW1wdHlzZXQgKCZhY3Quc2FfbWFzayk7CnwgICAgICAgICAgICAgICBzaWdh Y3Rpb24gKFNJR0FMUk0sICZhY3QsIE5VTEwpOwp8ICAgICAgICAgICAgICAgYWxhcm0gKDEp Owp8ICAgICAgICAgICAgICAgaWYgKG5hbm9zbGVlcCAoJnRzX3NsZWVwLCBOVUxMKSAhPSAw KQp8ICAgICAgICAgICAgICAgICByZXR1cm4gMzsKfCAgICAgICAgICAgICAgIC8qIFRlc3Qg Zm9yIGEgbWlub3IgcHJvYmxlbTogdGhlIGhhbmRsaW5nIG9mIGxhcmdlIGFyZ3VtZW50cy4g ICovCnwgICAgICAgICAgICAgICB0c19zbGVlcC50dl9zZWMgPSBUWVBFX01BWElNVU0gKHRp bWVfdCk7CnwgICAgICAgICAgICAgICB0c19zbGVlcC50dl9uc2VjID0gOTk5OTk5OTk5Owp8 ICAgICAgICAgICAgICAgYWxhcm0gKDEpOwp8ICAgICAgICAgICAgICAgaWYgKG5hbm9zbGVl cCAoJnRzX3NsZWVwLCAmdHNfcmVtYWluaW5nKSAhPSAtMSkKfCAgICAgICAgICAgICAgICAg cmV0dXJuIDQ7CnwgICAgICAgICAgICAgICBpZiAoZXJybm8gIT0gRUlOVFIpCnwgICAgICAg ICAgICAgICAgIHJldHVybiA1Owp8ICAgICAgICAgICAgICAgaWYgKHRzX3JlbWFpbmluZy50 dl9zZWMgPD0gVFlQRV9NQVhJTVVNICh0aW1lX3QpIC0gMTApCnwgICAgICAgICAgICAgICAg IHJldHVybiA2Owp8ICAgICAgICAgICAgIH0KfCAgICAgICAgICAgICAjZWxzZSAvKiBBIHNp bXBsZXIgdGVzdCBmb3IgbmF0aXZlIFdpbmRvd3MuICAqLwp8ICAgICAgICAgICAgIGlmIChu YW5vc2xlZXAgKCZ0c19zbGVlcCwgJnRzX3JlbWFpbmluZykgPCAwKQp8ICAgICAgICAgICAg ICAgcmV0dXJuIDM7CnwgICAgICAgICAgICAgLyogVGVzdCBmb3IgMzItYml0IG1pbmd3IGJ1 ZzogbmVnYXRpdmUgbmFub3NlY29uZCB2YWx1ZXMgZG8gbm90CnwgICAgICAgICAgICAgICAg Y2F1c2UgZmFpbHVyZS4gICovCnwgICAgICAgICAgICAgdHNfc2xlZXAudHZfc2VjID0gMTsK fCAgICAgICAgICAgICB0c19zbGVlcC50dl9uc2VjID0gLTE7CnwgICAgICAgICAgICAgaWYg KG5hbm9zbGVlcCAoJnRzX3NsZWVwLCAmdHNfcmVtYWluaW5nKSAhPSAtMSkKfCAgICAgICAg ICAgICAgIHJldHVybiA3Owp8ICAgICAgICAgICAgICNlbmRpZgp8ICAgICAgICAgICAgIHJl dHVybiAwOwp8ICAgICAgICAgICB9CmNvbmZpZ3VyZTozOTE1NDogcmVzdWx0OiBubyAobWlz aGFuZGxlcyBsYXJnZSBhcmd1bWVudHMpCmNvbmZpZ3VyZTozOTIwNzogY2hlY2tpbmcgZm9y IHN5cy9wc3RhdC5oCmNvbmZpZ3VyZTozOTIwNzogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRl c3QuYyA+JjUKY29uZnRlc3QuYzo0MzE6MTA6IGZhdGFsIGVycm9yOiBzeXMvcHN0YXQuaDog Tm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQogIDQzMSB8ICNpbmNsdWRlIDxzeXMvcHN0YXQu aD4KICAgICAgfCAgICAgICAgICBefn5+fn5+fn5+fn5+CmNvbXBpbGF0aW9uIHRlcm1pbmF0 ZWQuCmNvbmZpZ3VyZTozOTIwNzogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0g 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 TiAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOX0ZJTEVfQUNUSU9OU19BRERDSERJUl9O UCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOQVRUUl9TRVRGTEFHUyAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfUE9TSVhfU1BBV05fU0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVfR0xJQiAx CnwgI2RlZmluZSBIQVZFX0xBTkdJTkZPX0NPREVTRVQgMQp8ICNkZWZpbmUgSEFWRV9MQU5H SU5GT19fTkxfUEFQRVJfV0lEVEggMQp8ICNkZWZpbmUgSEFWRV9NQlNUQVRFX1QgMQp8ICNk ZWZpbmUgQU1QRVJTQU5EX0ZVTExfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1BUWVMgMQp8ICNk ZWZpbmUgSEFWRV9TT0NLRVRTIDEKfCAjZGVmaW5lIE5VTExfREVWSUNFICIvZGV2L251bGwi CnwgI2RlZmluZSBTRVBDSEFSICc6Jwp8ICNkZWZpbmUgc3VicHJvY2Vzc2VzIDEKfCAjZGVm aW5lIFVTRVJfRlVMTF9OQU1FIHB3LT5wd19nZWNvcwp8ICNkZWZpbmUgRElSRUNUT1JZX1NF UCAnLycKfCAjZGVmaW5lIElTX0RFVklDRV9TRVAoX2NfKSAwCnwgI2RlZmluZSBJU19ESVJF Q1RPUllfU0VQKF9jXykgKChfY18pID09IERJUkVDVE9SWV9TRVApCnwgI2RlZmluZSBJU19B TllfU0VQKF9jXykgKElTX0RJUkVDVE9SWV9TRVAgKF9jXykpCnwgI2RlZmluZSBIQVZFX1BS T0NGUyAxCnwgI2RlZmluZSBERUZBVUxUX1NPVU5EX0RFVklDRSAiL2Rldi9kc3AiCnwgI2Rl ZmluZSBJTlRFUlJVUFRfSU5QVVQgMQp8ICNkZWZpbmUgTkFSUk9XUFJPVE8gMQp8ICNkZWZp bmUgVU5JWDk4X1BUWVMgMQp8ICNkZWZpbmUgUFRZX0lURVJBVElPTiBpbnQgaTsgZm9yIChp ID0gMDsgaSA8IDE7IGkrKykKfCAjZGVmaW5lIFBUWV9UVFlfTkFNRV9TUFJJTlRGIHsgY2hh ciAqcHR5bmFtZSA9IDA7IHNpZ3NldF90IGJsb2NrZWQ7IHNpZ2VtcHR5c2V0ICgmYmxvY2tl ZCk7IHNpZ2FkZHNldCAoJmJsb2NrZWQsIFNJR0NITEQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJ R19CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoZ3JhbnRwdCAoZmQpICE9IC0xICYmIHVubG9j a3B0IChmZCkgIT0gLTEpIHB0eW5hbWUgPSBwdHNuYW1lKGZkKTsgcHRocmVhZF9zaWdtYXNr IChTSUdfVU5CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoIXB0eW5hbWUpIHsgZW1hY3NfY2xv c2UgKGZkKTsgcmV0dXJuIC0xOyB9IHNucHJpbnRmIChwdHlfbmFtZSwgUFRZX05BTUVfU0la RSwgIiVzIiwgcHR5bmFtZSk7IH0KfCAjZGVmaW5lIFBUWV9PUEVOIGRvIHsgZmQgPSBwb3Np eF9vcGVucHQgKE9fUkRXUiB8IE9fQ0xPRVhFQyB8IE9fTk9DVFRZKTsgaWYgKGZkIDwgMCAm JiBlcnJubyA9PSBFSU5WQUwpIGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX05PQ1RU WSk7IH0gd2hpbGUgKGZhbHNlKQp8ICNkZWZpbmUgUFRZX05BTUVfU1BSSU5URiAvKiovCnwg I2RlZmluZSBTSUdOQUxTX1ZJQV9DSEFSQUNURVJTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9X T1JLUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgSEFWRV9fU0VU Sk1QIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU1RBQ0tf T1ZFUkZMT1dfSEFORExJTkcgMQp8ICNkZWZpbmUgVVNHIC8qKi8KfCAjZGVmaW5lIEdOVV9M SU5VWCAvKiovCnwgI2RlZmluZSBTSVpFT0ZfU1BFRURfVCA0CnwgI2RlZmluZSBVU0FCTEVf RklPTlJFQUQgMQp8ICNkZWZpbmUgVVNBQkxFX1NJR0lPIDEKfCAjZGVmaW5lIENPUFlSSUdI VCAiQ29weXJpZ2h0IChDKSAyMDIzIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiIK fCAjZGVmaW5lIFRFUk1fSEVBREVSICJndGt1dGlsLmgiCnwgI2RlZmluZSBFTUFDU19DT05G SUdVUkFUSU9OICJ4ODZfNjQtcGMtbGludXgtZ251Igp8ICNkZWZpbmUgRU1BQ1NfQ09ORklH X09QVElPTlMgIiIKfCAjZGVmaW5lIEhBVkVfWF9XSU5ET1dTIDEKfCAjZGVmaW5lIEhBVkVf WDExIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0FUVFJJQlVURV9BTElHTkVEIDEKfCAjZGVm aW5lIEhBVkVfVFlQRU9GIDEKfCAjZGVmaW5lIEhBVkVfU1RBVEVNRU5UX0VYUFJFU1NJT05T IDEKfCAjZGVmaW5lIE1BTExPQ18wX0lTX05PTk5VTEwgMQp8ICNkZWZpbmUgSEFWRV9TWVNf QUNMX0ggMQp8ICNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9B Q0xfR0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX1NFVF9GSUxFIDEKfCAjZGVmaW5lIEhB VkVfQUNMX1NFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUkVFIDEKfCAjZGVmaW5lIEhB VkVfQUNMX0ZST01fTU9ERSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX1RFWFQgMQp8ICNk ZWZpbmUgSEFWRV9BQ0xfREVMRVRFX0RFRl9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VY VEVOREVEX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfTElCQUNMX0ggMQp8ICNkZWZpbmUg SEFWRV9BQ0xfRU5UUklFUyAxCnwgI2RlZmluZSBIQVZFX0FDTF9GSVJTVF9FTlRSWSAxCnwg I2RlZmluZSBVU0VfQUNMIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUg SEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgTFNUQVRfRk9MTE9XU19TTEFTSEVEX1NZTUxJTksg MQp8ICNkZWZpbmUgRlVOQ19SRUFMUEFUSF9XT1JLUyAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NF U1NBVCAxCnwgI2RlZmluZSBIQVZFX0dFVENXRCAxCnwgI2RlZmluZSByZXN0cmljdCBfX3Jl c3RyaWN0X18KfCAjZGVmaW5lIEhBVkVfRU5WSVJPTl9ERUNMIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9TVFJNT0RFIDAKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFW RV9HRVRPUFRfTE9OR19PTkxZIDEKfCAjZGVmaW5lIEhBVkVfTE9OR19MT05HX0lOVCAxCnwg I2RlZmluZSBIQVZFX1VOU0lHTkVEX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUgSEFWRV9E RUNMX01FTU1FTSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfTUVNUkNIUiAxCnwgI2RlZmluZSBI QVZFX01JTk1BWF9JTl9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBUSU1FX1RfSVNfU0lHTkVE IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTEFSTSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9U TV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fWk9ORSAxCnwgI2RlZmluZSBIQVZFX1RN X0dNVE9GRiAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVF9UIDEKfCAjZGVmaW5lIEhBVkVfV0NI QVJfVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkNMT1NFQUxMIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9HRVRXIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRXIDEKfCAjZGVmaW5lIF9fVVNF X01JTkdXX0FOU0lfU1RESU8gMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VDVlQgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX0ZDVlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dDVlQgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX1NUUk5MRU4gMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUlRPSU1BWCAx CnwgI2RlZmluZSBfVVNFX1NURF9TVEFUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9FWEVDVlBF IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9DTEVBUkVSUl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfRkVPRl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkVSUk9SX1VO TE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRkxVU0hfVU5MT0NLRUQgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX0ZHRVRTX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GUFVU Q19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRlBVVFNfVU5MT0NLRUQgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX0ZSRUFEX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9G V1JJVEVfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVENfVU5MT0NLRUQgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX0dFVENIQVJfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9E RUNMX1BVVENfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BVVENIQVJfVU5MT0NL RUQgMQp8ICNkZWZpbmUgR0VUR1JPVVBTX1QgZ2lkX3QKfCAjZGVmaW5lIEhBVkVfREVDTF9H RVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX1BPU0lYIDEKfCAjZGVmaW5l IFBST01PVEVEX01PREVfVCBtb2RlX3QKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19VVElNRVMg MQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fRVhQ RUNUIDEKfCAjZGVmaW5lIEhBVkVfQllURVNXQVBfSCAxCnwgI2RlZmluZSBHTlVMSUJfQ0FO T05JQ0FMSVpFX0xHUEwgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKfCAjZGVmaW5l IEhBVkVfQ0xPQ0tfR0VUUkVTIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tfR0VUVElNRSAxCnwg I2RlZmluZSBIQVZFX0NMT0NLX1NFVFRJTUUgMQp8ICNkZWZpbmUgR05VTElCX0NMT1NFX1NU UkVBTSAxCnwgI2RlZmluZSBIQVZFX0NPUFlfRklMRV9SQU5HRSAxCnwgI2RlZmluZSBIQVZF X1NUUlVDVF9ESVJFTlRfRF9UWVBFIDEKfCAjZGVmaW5lIEhBVkVfRkFDQ0VTU0FUIDEKfCAj ZGVmaW5lIEdOVUxJQl9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZET1BFTkRJ UiAxCnwgI2RlZmluZSBHTlVMSUJfRkRPUEVORElSIDEKfCAjZGVmaW5lIEdFVFhBVFRSX1dJ VEhfUE9TSVhfQUNMUyAxCnwgI2RlZmluZSBGTEVYSUJMRV9BUlJBWV9NRU1CRVIgLyoqLwp8 ICNkZWZpbmUgSEFWRV9ERUNMX19fRlBFTkRJTkcgMQp8ICNkZWZpbmUgSEFWRV9GUkVFX1BP U0lYIDEKfCAjZGVmaW5lIEhBVkVfU1lTX01PVU5UX0ggMQp8ICNkZWZpbmUgU1RBVF9TVEFU VkZTIDEKfCAjZGVmaW5lIFNUQVRfU1RBVEZTMl9GUlNJWkUgMQp8ICNkZWZpbmUgSEFWRV9T WVNfU1RBVEZTX0ggMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVOUyAxCnwgI2RlZmluZSBIQVZF X0dFVExPQURBVkcgMQp8ICNkZWZpbmUgSEFWRV9HRVRSQU5ET00gMQp8ICNkZWZpbmUgSEFW RV9USU1FU1BFQ19HRVQgMQp8ICNkZWZpbmUgR0VUVElNRU9GREFZX1RJTUVaT05FIHZvaWQK fCAjZGVmaW5lIEhBVkVfX19JTkxJTkUgMQp8ICNkZWZpbmUgSEFWRV9HTVBfSCAxCnwgI2Rl ZmluZSBIQVZFX01FTU1FTSAxCnwgI2RlZmluZSBIQVZFX01FTVBDUFkgMQp8ICNkZWZpbmUg SEFWRV9NRU1SQ0hSIDEKfCAjZGVmaW5lIEhBVkVfTUtPU1RFTVAgMQp8ICNkZWZpbmUgR05V TElCX01LT1NURU1QIDEKfCAjZGVmaW5lIE5FRURfTUtUSU1FX1dPUktJTkcgMQp8ICNkZWZp bmUgSEFWRV9CVUdfQklHX05BTk9TTEVFUCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8 ICNpbmNsdWRlIDxzdGRkZWYuaD4KfCAjaWZkZWYgSEFWRV9TVERJT19ICnwgIyBpbmNsdWRl IDxzdGRpby5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NURExJQl9ICnwgIyBpbmNsdWRl IDxzdGRsaWIuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdfSAp8ICMgaW5jbHVk ZSA8c3RyaW5nLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfSU5UVFlQRVNfSAp8ICMgaW5j bHVkZSA8aW50dHlwZXMuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVERJTlRfSAp8ICMg aW5jbHVkZSA8c3RkaW50Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RSSU5HU19ICnwg IyBpbmNsdWRlIDxzdHJpbmdzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1lTX1RZUEVT X0gKfCAjIGluY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NZ U19TVEFUX0gKfCAjIGluY2x1ZGUgPHN5cy9zdGF0Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhB VkVfVU5JU1REX0gKfCAjIGluY2x1ZGUgPHVuaXN0ZC5oPgp8ICNlbmRpZgp8IAp8ICNpbmNs dWRlIDxzeXMvcHN0YXQuaD4KY29uZmlndXJlOjM5MjA3OiByZXN1bHQ6IG5vCmNvbmZpZ3Vy ZTozOTIxNDogY2hlY2tpbmcgZm9yIHN5cy9zeXNtcC5oCmNvbmZpZ3VyZTozOTIxNDogZ2Nj IC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzo0MzE6MTA6IGZhdGFs IGVycm9yOiBzeXMvc3lzbXAuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQogIDQzMSB8 ICNpbmNsdWRlIDxzeXMvc3lzbXAuaD4KICAgICAgfCAgICAgICAgICBefn5+fn5+fn5+fn5+ CmNvbXBpbGF0aW9uIHRlcm1pbmF0ZWQuCmNvbmZpZ3VyZTozOTIxNDogJD8gPSAxCmNvbmZp 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 WkUgMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVEZTX0ggMQp8ICNkZWZpbmUgSEFWRV9GVVRJ TUVOUyAxCnwgI2RlZmluZSBIQVZFX0dFVExPQURBVkcgMQp8ICNkZWZpbmUgSEFWRV9HRVRS QU5ET00gMQp8ICNkZWZpbmUgSEFWRV9USU1FU1BFQ19HRVQgMQp8ICNkZWZpbmUgR0VUVElN RU9GREFZX1RJTUVaT05FIHZvaWQKfCAjZGVmaW5lIEhBVkVfX19JTkxJTkUgMQp8ICNkZWZp bmUgSEFWRV9HTVBfSCAxCnwgI2RlZmluZSBIQVZFX01FTU1FTSAxCnwgI2RlZmluZSBIQVZF X01FTVBDUFkgMQp8ICNkZWZpbmUgSEFWRV9NRU1SQ0hSIDEKfCAjZGVmaW5lIEhBVkVfTUtP U1RFTVAgMQp8ICNkZWZpbmUgR05VTElCX01LT1NURU1QIDEKfCAjZGVmaW5lIE5FRURfTUtU SU1FX1dPUktJTkcgMQp8ICNkZWZpbmUgSEFWRV9CVUdfQklHX05BTk9TTEVFUCAxCnwgLyog ZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxzdGRkZWYuaD4KfCAjaWZkZWYgSEFW RV9TVERJT19ICnwgIyBpbmNsdWRlIDxzdGRpby5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZF X1NURExJQl9ICnwgIyBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFW RV9TVFJJTkdfSAp8ICMgaW5jbHVkZSA8c3RyaW5nLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhB VkVfSU5UVFlQRVNfSAp8ICMgaW5jbHVkZSA8aW50dHlwZXMuaD4KfCAjZW5kaWYKfCAjaWZk ZWYgSEFWRV9TVERJTlRfSAp8ICMgaW5jbHVkZSA8c3RkaW50Lmg+CnwgI2VuZGlmCnwgI2lm ZGVmIEhBVkVfU1RSSU5HU19ICnwgIyBpbmNsdWRlIDxzdHJpbmdzLmg+CnwgI2VuZGlmCnwg I2lmZGVmIEhBVkVfU1lTX1RZUEVTX0gKfCAjIGluY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNl bmRpZgp8ICNpZmRlZiBIQVZFX1NZU19TVEFUX0gKfCAjIGluY2x1ZGUgPHN5cy9zdGF0Lmg+ CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfVU5JU1REX0gKfCAjIGluY2x1ZGUgPHVuaXN0ZC5o Pgp8ICNlbmRpZgp8IAp8ICNpbmNsdWRlIDxzeXMvc3lzbXAuaD4KY29uZmlndXJlOjM5MjE0 OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTozOTIyMTogY2hlY2tpbmcgZm9yIHN5cy9wYXJhbS5o CmNvbmZpZ3VyZTozOTIyMTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM5MjI5OiBjaGVja2lu ZyBmb3Igc3lzL3N5c2N0bC5oCmNvbmZpZ3VyZTozOTIyOTogZ2NjIC1jIC1nMyAtTzIgICAg Y29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzo0MzY6MTA6IGZhdGFsIGVycm9yOiBzeXMvc3lz Y3RsLmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKICA0MzYgfCAjaW5jbHVkZSA8c3lz L3N5c2N0bC5oPgogICAgICB8ICAgICAgICAgIF5+fn5+fn5+fn5+fn5+CmNvbXBpbGF0aW9u IHRlcm1pbmF0ZWQuCmNvbmZpZ3VyZTozOTIyOTogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVk 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 VkVfQUNMX0VYVEVOREVEX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfTElCQUNMX0ggMQp8 ICNkZWZpbmUgSEFWRV9BQ0xfRU5UUklFUyAxCnwgI2RlZmluZSBIQVZFX0FDTF9GSVJTVF9F TlRSWSAxCnwgI2RlZmluZSBVU0VfQUNMIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8 ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgTFNUQVRfRk9MTE9XU19TTEFTSEVE X1NZTUxJTksgMQp8ICNkZWZpbmUgRlVOQ19SRUFMUEFUSF9XT1JLUyAxCnwgI2RlZmluZSBI QVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0dFVENXRCAxCnwgI2RlZmluZSByZXN0 cmljdCBfX3Jlc3RyaWN0X18KfCAjZGVmaW5lIEhBVkVfRU5WSVJPTl9ERUNMIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9TVFJNT0RFIDAKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNk ZWZpbmUgSEFWRV9HRVRPUFRfTE9OR19PTkxZIDEKfCAjZGVmaW5lIEhBVkVfTE9OR19MT05H X0lOVCAxCnwgI2RlZmluZSBIQVZFX1VOU0lHTkVEX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX01FTU1FTSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfTUVNUkNIUiAxCnwg I2RlZmluZSBIQVZFX01JTk1BWF9JTl9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBUSU1FX1Rf SVNfU0lHTkVEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTEFSTSAxCnwgI2RlZmluZSBIQVZF X1NUUlVDVF9UTV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fWk9ORSAxCnwgI2RlZmlu ZSBIQVZFX1RNX0dNVE9GRiAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVF9UIDEKfCAjZGVmaW5l IEhBVkVfV0NIQVJfVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkNMT1NFQUxMIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9HRVRXIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRXIDEKfCAjZGVm aW5lIF9fVVNFX01JTkdXX0FOU0lfU1RESU8gMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VDVlQg MQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZDVlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dDVlQg MQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUk5MRU4gMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NU UlRPSU1BWCAxCnwgI2RlZmluZSBfVVNFX1NURF9TVEFUIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9FWEVDVlBFIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9DTEVBUkVSUl9VTkxPQ0tFRCAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfRkVPRl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xf RkVSUk9SX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRkxVU0hfVU5MT0NLRUQg MQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZHRVRTX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9GUFVUQ19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRlBVVFNfVU5MT0NL RUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZSRUFEX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9GV1JJVEVfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVENfVU5M T0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVENIQVJfVU5MT0NLRUQgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX1BVVENfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BVVENI QVJfVU5MT0NLRUQgMQp8ICNkZWZpbmUgR0VUR1JPVVBTX1QgZ2lkX3QKfCAjZGVmaW5lIEhB VkVfREVDTF9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX1BPU0lYIDEK fCAjZGVmaW5lIFBST01PVEVEX01PREVfVCBtb2RlX3QKfCAjZGVmaW5lIEhBVkVfV09SS0lO R19VVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgSEFWRV9fX0JV SUxUSU5fRVhQRUNUIDEKfCAjZGVmaW5lIEhBVkVfQllURVNXQVBfSCAxCnwgI2RlZmluZSBH TlVMSUJfQ0FOT05JQ0FMSVpFX0xHUEwgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEK fCAjZGVmaW5lIEhBVkVfQ0xPQ0tfR0VUUkVTIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tfR0VU VElNRSAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX1NFVFRJTUUgMQp8ICNkZWZpbmUgR05VTElC X0NMT1NFX1NUUkVBTSAxCnwgI2RlZmluZSBIQVZFX0NPUFlfRklMRV9SQU5HRSAxCnwgI2Rl ZmluZSBIQVZFX1NUUlVDVF9ESVJFTlRfRF9UWVBFIDEKfCAjZGVmaW5lIEhBVkVfRkFDQ0VT U0FUIDEKfCAjZGVmaW5lIEdOVUxJQl9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X0ZET1BFTkRJUiAxCnwgI2RlZmluZSBHTlVMSUJfRkRPUEVORElSIDEKfCAjZGVmaW5lIEdF VFhBVFRSX1dJVEhfUE9TSVhfQUNMUyAxCnwgI2RlZmluZSBGTEVYSUJMRV9BUlJBWV9NRU1C RVIgLyoqLwp8ICNkZWZpbmUgSEFWRV9ERUNMX19fRlBFTkRJTkcgMQp8ICNkZWZpbmUgSEFW RV9GUkVFX1BPU0lYIDEKfCAjZGVmaW5lIEhBVkVfU1lTX01PVU5UX0ggMQp8ICNkZWZpbmUg U1RBVF9TVEFUVkZTIDEKfCAjZGVmaW5lIFNUQVRfU1RBVEZTMl9GUlNJWkUgMQp8ICNkZWZp bmUgSEFWRV9TWVNfU1RBVEZTX0ggMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVOUyAxCnwgI2Rl ZmluZSBIQVZFX0dFVExPQURBVkcgMQp8ICNkZWZpbmUgSEFWRV9HRVRSQU5ET00gMQp8ICNk ZWZpbmUgSEFWRV9USU1FU1BFQ19HRVQgMQp8ICNkZWZpbmUgR0VUVElNRU9GREFZX1RJTUVa T05FIHZvaWQKfCAjZGVmaW5lIEhBVkVfX19JTkxJTkUgMQp8ICNkZWZpbmUgSEFWRV9HTVBf SCAxCnwgI2RlZmluZSBIQVZFX01FTU1FTSAxCnwgI2RlZmluZSBIQVZFX01FTVBDUFkgMQp8 ICNkZWZpbmUgSEFWRV9NRU1SQ0hSIDEKfCAjZGVmaW5lIEhBVkVfTUtPU1RFTVAgMQp8ICNk ZWZpbmUgR05VTElCX01LT1NURU1QIDEKfCAjZGVmaW5lIE5FRURfTUtUSU1FX1dPUktJTkcg MQp8ICNkZWZpbmUgSEFWRV9CVUdfQklHX05BTk9TTEVFUCAxCnwgI2RlZmluZSBIQVZFX1NZ U19QQVJBTV9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN0ZGRl Zi5oPgp8ICNpZmRlZiBIQVZFX1NURElPX0gKfCAjIGluY2x1ZGUgPHN0ZGlvLmg+CnwgI2Vu ZGlmCnwgI2lmZGVmIEhBVkVfU1RETElCX0gKfCAjIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICNl bmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR19ICnwgIyBpbmNsdWRlIDxzdHJpbmcuaD4KfCAj ZW5kaWYKfCAjaWZkZWYgSEFWRV9JTlRUWVBFU19ICnwgIyBpbmNsdWRlIDxpbnR0eXBlcy5o Pgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NURElOVF9ICnwgIyBpbmNsdWRlIDxzdGRpbnQu aD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdTX0gKfCAjIGluY2x1ZGUgPHN0cmlu Z3MuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TWVNfVFlQRVNfSAp8ICMgaW5jbHVkZSA8 c3lzL3R5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1lTX1NUQVRfSAp8ICMgaW5j bHVkZSA8c3lzL3N0YXQuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9VTklTVERfSAp8ICMg aW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgICAgICAjaWYgSEFWRV9TWVNfUEFSQU1f SAp8ICAgICAgIyBpbmNsdWRlIDxzeXMvcGFyYW0uaD4KfCAgICAgICNlbmRpZgp8IAp8IAp8 ICNpbmNsdWRlIDxzeXMvc3lzY3RsLmg+CmNvbmZpZ3VyZTozOTIyOTogcmVzdWx0OiBubwpj b25maWd1cmU6MzkyNDI6IGNoZWNraW5nIGZvciBzY2hlZF9nZXRhZmZpbml0eV9ucApjb25m aWd1cmU6MzkyNDI6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAg ID4mNSAKL3Vzci9iaW4vbGQ6IC90bXAvY2NsellQdEgubzogaW4gZnVuY3Rpb24gYG1haW4n OgovYXBwL2VtYWNzL2NvbmZ0ZXN0LmM6NDMwOiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBz Y2hlZF9nZXRhZmZpbml0eV9ucCcKY29sbGVjdDI6IGVycm9yOiBsZCByZXR1cm5lZCAxIGV4 aXQgc3RhdHVzCmNvbmZpZ3VyZTozOTI0MjogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHBy 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 KiovCnwgI2RlZmluZSBTSUdOQUxTX1ZJQV9DSEFSQUNURVJTIDEKfCAjZGVmaW5lIEdDX1NF VEpNUF9XT1JLUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgSEFW RV9fU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVf U1RBQ0tfT1ZFUkZMT1dfSEFORExJTkcgMQp8ICNkZWZpbmUgVVNHIC8qKi8KfCAjZGVmaW5l IEdOVV9MSU5VWCAvKiovCnwgI2RlZmluZSBTSVpFT0ZfU1BFRURfVCA0CnwgI2RlZmluZSBV U0FCTEVfRklPTlJFQUQgMQp8ICNkZWZpbmUgVVNBQkxFX1NJR0lPIDEKfCAjZGVmaW5lIENP UFlSSUdIVCAiQ29weXJpZ2h0IChDKSAyMDIzIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwg SW5jLiIKfCAjZGVmaW5lIFRFUk1fSEVBREVSICJndGt1dGlsLmgiCnwgI2RlZmluZSBFTUFD U19DT05GSUdVUkFUSU9OICJ4ODZfNjQtcGMtbGludXgtZ251Igp8ICNkZWZpbmUgRU1BQ1Nf Q09ORklHX09QVElPTlMgIiIKfCAjZGVmaW5lIEhBVkVfWF9XSU5ET1dTIDEKfCAjZGVmaW5l IEhBVkVfWDExIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0FUVFJJQlVURV9BTElHTkVEIDEK fCAjZGVmaW5lIEhBVkVfVFlQRU9GIDEKfCAjZGVmaW5lIEhBVkVfU1RBVEVNRU5UX0VYUFJF U1NJT05TIDEKfCAjZGVmaW5lIE1BTExPQ18wX0lTX05PTk5VTEwgMQp8ICNkZWZpbmUgSEFW RV9TWVNfQUNMX0ggMQp8ICNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZJTEUgMQp8ICNkZWZpbmUg SEFWRV9BQ0xfR0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX1NFVF9GSUxFIDEKfCAjZGVm aW5lIEhBVkVfQUNMX1NFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUkVFIDEKfCAjZGVm aW5lIEhBVkVfQUNMX0ZST01fTU9ERSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX1RFWFQg MQp8ICNkZWZpbmUgSEFWRV9BQ0xfREVMRVRFX0RFRl9GSUxFIDEKfCAjZGVmaW5lIEhBVkVf QUNMX0VYVEVOREVEX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfTElCQUNMX0ggMQp8ICNk ZWZpbmUgSEFWRV9BQ0xfRU5UUklFUyAxCnwgI2RlZmluZSBIQVZFX0FDTF9GSVJTVF9FTlRS WSAxCnwgI2RlZmluZSBVU0VfQUNMIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNk ZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgTFNUQVRfRk9MTE9XU19TTEFTSEVEX1NZ TUxJTksgMQp8ICNkZWZpbmUgRlVOQ19SRUFMUEFUSF9XT1JLUyAxCnwgI2RlZmluZSBIQVZF X0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0dFVENXRCAxCnwgI2RlZmluZSByZXN0cmlj dCBfX3Jlc3RyaWN0X18KfCAjZGVmaW5lIEhBVkVfRU5WSVJPTl9ERUNMIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9TVFJNT0RFIDAKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZp bmUgSEFWRV9HRVRPUFRfTE9OR19PTkxZIDEKfCAjZGVmaW5lIEhBVkVfTE9OR19MT05HX0lO VCAxCnwgI2RlZmluZSBIQVZFX1VOU0lHTkVEX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX01FTU1FTSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfTUVNUkNIUiAxCnwgI2Rl ZmluZSBIQVZFX01JTk1BWF9JTl9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBUSU1FX1RfSVNf U0lHTkVEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTEFSTSAxCnwgI2RlZmluZSBIQVZFX1NU UlVDVF9UTV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fWk9ORSAxCnwgI2RlZmluZSBI QVZFX1RNX0dNVE9GRiAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVF9UIDEKfCAjZGVmaW5lIEhB VkVfV0NIQVJfVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkNMT1NFQUxMIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9HRVRXIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRXIDEKfCAjZGVmaW5l IF9fVVNFX01JTkdXX0FOU0lfU1RESU8gMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VDVlQgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX0ZDVlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dDVlQgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX1NUUk5MRU4gMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUlRP SU1BWCAxCnwgI2RlZmluZSBfVVNFX1NURF9TVEFUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9F WEVDVlBFIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9DTEVBUkVSUl9VTkxPQ0tFRCAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfRkVPRl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkVS Uk9SX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRkxVU0hfVU5MT0NLRUQgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX0ZHRVRTX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9GUFVUQ19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRlBVVFNfVU5MT0NLRUQg MQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZSRUFEX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9GV1JJVEVfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVENfVU5MT0NL RUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVENIQVJfVU5MT0NLRUQgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX1BVVENfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BVVENIQVJf VU5MT0NLRUQgMQp8ICNkZWZpbmUgR0VUR1JPVVBTX1QgZ2lkX3QKfCAjZGVmaW5lIEhBVkVf REVDTF9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX1BPU0lYIDEKfCAj ZGVmaW5lIFBST01PVEVEX01PREVfVCBtb2RlX3QKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19V VElNRVMgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxU SU5fRVhQRUNUIDEKfCAjZGVmaW5lIEhBVkVfQllURVNXQVBfSCAxCnwgI2RlZmluZSBHTlVM SUJfQ0FOT05JQ0FMSVpFX0xHUEwgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKfCAj ZGVmaW5lIEhBVkVfQ0xPQ0tfR0VUUkVTIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tfR0VUVElN RSAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX1NFVFRJTUUgMQp8ICNkZWZpbmUgR05VTElCX0NM T1NFX1NUUkVBTSAxCnwgI2RlZmluZSBIQVZFX0NPUFlfRklMRV9SQU5HRSAxCnwgI2RlZmlu ZSBIQVZFX1NUUlVDVF9ESVJFTlRfRF9UWVBFIDEKfCAjZGVmaW5lIEhBVkVfRkFDQ0VTU0FU IDEKfCAjZGVmaW5lIEdOVUxJQl9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZE T1BFTkRJUiAxCnwgI2RlZmluZSBHTlVMSUJfRkRPUEVORElSIDEKfCAjZGVmaW5lIEdFVFhB VFRSX1dJVEhfUE9TSVhfQUNMUyAxCnwgI2RlZmluZSBGTEVYSUJMRV9BUlJBWV9NRU1CRVIg LyoqLwp8ICNkZWZpbmUgSEFWRV9ERUNMX19fRlBFTkRJTkcgMQp8ICNkZWZpbmUgSEFWRV9G UkVFX1BPU0lYIDEKfCAjZGVmaW5lIEhBVkVfU1lTX01PVU5UX0ggMQp8ICNkZWZpbmUgU1RB VF9TVEFUVkZTIDEKfCAjZGVmaW5lIFNUQVRfU1RBVEZTMl9GUlNJWkUgMQp8ICNkZWZpbmUg SEFWRV9TWVNfU1RBVEZTX0ggMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVOUyAxCnwgI2RlZmlu ZSBIQVZFX0dFVExPQURBVkcgMQp8ICNkZWZpbmUgSEFWRV9HRVRSQU5ET00gMQp8ICNkZWZp bmUgSEFWRV9USU1FU1BFQ19HRVQgMQp8ICNkZWZpbmUgR0VUVElNRU9GREFZX1RJTUVaT05F IHZvaWQKfCAjZGVmaW5lIEhBVkVfX19JTkxJTkUgMQp8ICNkZWZpbmUgSEFWRV9HTVBfSCAx CnwgI2RlZmluZSBIQVZFX01FTU1FTSAxCnwgI2RlZmluZSBIQVZFX01FTVBDUFkgMQp8ICNk ZWZpbmUgSEFWRV9NRU1SQ0hSIDEKfCAjZGVmaW5lIEhBVkVfTUtPU1RFTVAgMQp8ICNkZWZp bmUgR05VTElCX01LT1NURU1QIDEKfCAjZGVmaW5lIE5FRURfTUtUSU1FX1dPUktJTkcgMQp8 ICNkZWZpbmUgSEFWRV9CVUdfQklHX05BTk9TTEVFUCAxCnwgI2RlZmluZSBIQVZFX1NZU19Q QVJBTV9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgLyogRGVmaW5lIHNjaGVkX2dl dGFmZmluaXR5X25wIHRvIGFuIGlubm9jdW91cyB2YXJpYW50LCBpbiBjYXNlIDxsaW1pdHMu aD4gZGVjbGFyZXMgc2NoZWRfZ2V0YWZmaW5pdHlfbnAuCnwgICAgRm9yIGV4YW1wbGUsIEhQ LVVYIDExaSA8bGltaXRzLmg+IGRlY2xhcmVzIGdldHRpbWVvZmRheS4gICovCnwgI2RlZmlu ZSBzY2hlZF9nZXRhZmZpbml0eV9ucCBpbm5vY3VvdXNfc2NoZWRfZ2V0YWZmaW5pdHlfbnAK fCAKfCAvKiBTeXN0ZW0gaGVhZGVyIHRvIGRlZmluZSBfX3N0dWIgbWFjcm9zIGFuZCBob3Bl ZnVsbHkgZmV3IHByb3RvdHlwZXMsCnwgICAgd2hpY2ggY2FuIGNvbmZsaWN0IHdpdGggY2hh ciBzY2hlZF9nZXRhZmZpbml0eV9ucCAoKTsgYmVsb3cuICAqLwp8IAp8ICNpbmNsdWRlIDxs aW1pdHMuaD4KfCAjdW5kZWYgc2NoZWRfZ2V0YWZmaW5pdHlfbnAKfCAKfCAvKiBPdmVycmlk ZSBhbnkgR0NDIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4KfCAgICBV c2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBH Q0MKfCAgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQg c3RpbGwgYXBwbHkuICAqLwp8ICNpZmRlZiBfX2NwbHVzcGx1cwp8IGV4dGVybiAiQyIKfCAj ZW5kaWYKfCBjaGFyIHNjaGVkX2dldGFmZmluaXR5X25wICgpOwp8IC8qIFRoZSBHTlUgQyBs aWJyYXJ5IGRlZmluZXMgdGhpcyBmb3IgZnVuY3Rpb25zIHdoaWNoIGl0IGltcGxlbWVudHMK fCAgICAgdG8gYWx3YXlzIGZhaWwgd2l0aCBFTk9TWVMuICBTb21lIGZ1bmN0aW9ucyBhcmUg YWN0dWFsbHkgbmFtZWQKfCAgICAgc29tZXRoaW5nIHN0YXJ0aW5nIHdpdGggX18gYW5kIHRo ZSBub3JtYWwgbmFtZSBpcyBhbiBhbGlhcy4gICovCnwgI2lmIGRlZmluZWQgX19zdHViX3Nj aGVkX2dldGFmZmluaXR5X25wIHx8IGRlZmluZWQgX19zdHViX19fc2NoZWRfZ2V0YWZmaW5p dHlfbnAKfCBjaG9rZSBtZQp8ICNlbmRpZgp8IAp8IGludAp8IG1haW4gKHZvaWQpCnwgewp8 IHJldHVybiBzY2hlZF9nZXRhZmZpbml0eV9ucCAoKTsKfCAgIDsKfCAgIHJldHVybiAwOwp8 IH0KY29uZmlndXJlOjM5MjQyOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTozOTI0ODogY2hlY2tp bmcgZm9yIHBzdGF0X2dldGR5bmFtaWMKY29uZmlndXJlOjM5MjQ4OiBnY2MgLW8gY29uZnRl c3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCi91c3IvYmluL2xkOiAvdG1wL2Nj N081ZE1DLm86IGluIGZ1bmN0aW9uIGBtYWluJzoKL2FwcC9lbWFjcy9jb25mdGVzdC5jOjQz MDogdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgcHN0YXRfZ2V0ZHluYW1pYycKY29sbGVjdDI6 IGVycm9yOiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVzCmNvbmZpZ3VyZTozOTI0ODogJD8g 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 ICovCnwgLyogRGVmaW5lIHBzdGF0X2dldGR5bmFtaWMgdG8gYW4gaW5ub2N1b3VzIHZhcmlh bnQsIGluIGNhc2UgPGxpbWl0cy5oPiBkZWNsYXJlcyBwc3RhdF9nZXRkeW5hbWljLgp8ICAg IEZvciBleGFtcGxlLCBIUC1VWCAxMWkgPGxpbWl0cy5oPiBkZWNsYXJlcyBnZXR0aW1lb2Zk YXkuICAqLwp8ICNkZWZpbmUgcHN0YXRfZ2V0ZHluYW1pYyBpbm5vY3VvdXNfcHN0YXRfZ2V0 ZHluYW1pYwp8IAp8IC8qIFN5c3RlbSBoZWFkZXIgdG8gZGVmaW5lIF9fc3R1YiBtYWNyb3Mg YW5kIGhvcGVmdWxseSBmZXcgcHJvdG90eXBlcywKfCAgICB3aGljaCBjYW4gY29uZmxpY3Qg d2l0aCBjaGFyIHBzdGF0X2dldGR5bmFtaWMgKCk7IGJlbG93LiAgKi8KfCAKfCAjaW5jbHVk ZSA8bGltaXRzLmg+CnwgI3VuZGVmIHBzdGF0X2dldGR5bmFtaWMKfCAKfCAvKiBPdmVycmlk ZSBhbnkgR0NDIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4KfCAgICBV c2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBH Q0MKfCAgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQg c3RpbGwgYXBwbHkuICAqLwp8ICNpZmRlZiBfX2NwbHVzcGx1cwp8IGV4dGVybiAiQyIKfCAj ZW5kaWYKfCBjaGFyIHBzdGF0X2dldGR5bmFtaWMgKCk7CnwgLyogVGhlIEdOVSBDIGxpYnJh cnkgZGVmaW5lcyB0aGlzIGZvciBmdW5jdGlvbnMgd2hpY2ggaXQgaW1wbGVtZW50cwp8ICAg ICB0byBhbHdheXMgZmFpbCB3aXRoIEVOT1NZUy4gIFNvbWUgZnVuY3Rpb25zIGFyZSBhY3R1 YWxseSBuYW1lZAp8ICAgICBzb21ldGhpbmcgc3RhcnRpbmcgd2l0aCBfXyBhbmQgdGhlIG5v cm1hbCBuYW1lIGlzIGFuIGFsaWFzLiAgKi8KfCAjaWYgZGVmaW5lZCBfX3N0dWJfcHN0YXRf Z2V0ZHluYW1pYyB8fCBkZWZpbmVkIF9fc3R1Yl9fX3BzdGF0X2dldGR5bmFtaWMKfCBjaG9r ZSBtZQp8ICNlbmRpZgp8IAp8IGludAp8IG1haW4gKHZvaWQpCnwgewp8IHJldHVybiBwc3Rh dF9nZXRkeW5hbWljICgpOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6Mzky NDg6IHJlc3VsdDogbm8KY29uZmlndXJlOjM5MjU0OiBjaGVja2luZyBmb3Igc3lzbXAKY29u ZmlndXJlOjM5MjU0OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMg ICA+JjUgCi91c3IvYmluL2xkOiAvdG1wL2NjQXFQSHFkLm86IGluIGZ1bmN0aW9uIGBtYWlu JzoKL2FwcC9lbWFjcy9jb25mdGVzdC5jOjQzMDogdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBg c3lzbXAnCmNvbGxlY3QyOiBlcnJvcjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpjb25m aWd1cmU6MzkyNTQ6ICQ/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 QlVHX0JJR19OQU5PU0xFRVAgMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgLyog ZW5kIGNvbmZkZWZzLmguICAqLwp8IC8qIERlZmluZSBzeXNtcCB0byBhbiBpbm5vY3VvdXMg dmFyaWFudCwgaW4gY2FzZSA8bGltaXRzLmg+IGRlY2xhcmVzIHN5c21wLgp8ICAgIEZvciBl eGFtcGxlLCBIUC1VWCAxMWkgPGxpbWl0cy5oPiBkZWNsYXJlcyBnZXR0aW1lb2ZkYXkuICAq Lwp8ICNkZWZpbmUgc3lzbXAgaW5ub2N1b3VzX3N5c21wCnwgCnwgLyogU3lzdGVtIGhlYWRl ciB0byBkZWZpbmUgX19zdHViIG1hY3JvcyBhbmQgaG9wZWZ1bGx5IGZldyBwcm90b3R5cGVz LAp8ICAgIHdoaWNoIGNhbiBjb25mbGljdCB3aXRoIGNoYXIgc3lzbXAgKCk7IGJlbG93LiAg Ki8KfCAKfCAjaW5jbHVkZSA8bGltaXRzLmg+CnwgI3VuZGVmIHN5c21wCnwgCnwgLyogT3Zl cnJpZGUgYW55IEdDQyBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuCnwg ICAgVXNlIGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2ggdGhlIHJldHVybiB0eXBlIG9m IGEgR0NDCnwgICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMgYXJndW1lbnQgcHJvdG90eXBlIHdv dWxkIHN0aWxsIGFwcGx5LiAgKi8KfCAjaWZkZWYgX19jcGx1c3BsdXMKfCBleHRlcm4gIkMi CnwgI2VuZGlmCnwgY2hhciBzeXNtcCAoKTsKfCAvKiBUaGUgR05VIEMgbGlicmFyeSBkZWZp bmVzIHRoaXMgZm9yIGZ1bmN0aW9ucyB3aGljaCBpdCBpbXBsZW1lbnRzCnwgICAgIHRvIGFs d2F5cyBmYWlsIHdpdGggRU5PU1lTLiAgU29tZSBmdW5jdGlvbnMgYXJlIGFjdHVhbGx5IG5h bWVkCnwgICAgIHNvbWV0aGluZyBzdGFydGluZyB3aXRoIF9fIGFuZCB0aGUgbm9ybWFsIG5h bWUgaXMgYW4gYWxpYXMuICAqLwp8ICNpZiBkZWZpbmVkIF9fc3R1Yl9zeXNtcCB8fCBkZWZp bmVkIF9fc3R1Yl9fX3N5c21wCnwgY2hva2UgbWUKfCAjZW5kaWYKfCAKfCBpbnQKfCBtYWlu ICh2b2lkKQp8IHsKfCByZXR1cm4gc3lzbXAgKCk7CnwgICA7CnwgICByZXR1cm4gMDsKfCB9 CmNvbmZpZ3VyZTozOTI1NDogcmVzdWx0OiBubwpjb25maWd1cmU6MzkyNjA6IGNoZWNraW5n IGZvciBzeXNjdGwKY29uZmlndXJlOjM5MjYwOiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAg ICAgIGNvbmZ0ZXN0LmMgICA+JjUgCi91c3IvYmluL2xkOiAvdG1wL2NjR2pzQTJ3Lm86IGlu IGZ1bmN0aW9uIGBtYWluJzoKL2FwcC9lbWFjcy9jb25mdGVzdC5jOjQzMDogdW5kZWZpbmVk IHJlZmVyZW5jZSB0byBgc3lzY3RsJwpjb2xsZWN0MjogZXJyb3I6IGxkIHJldHVybmVkIDEg ZXhpdCBzdGF0dXMKY29uZmlndXJlOjM5MjYwOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQg 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 X1BBUkFNX0ggMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAvKiBEZWZpbmUgc3lzY3Rs IHRvIGFuIGlubm9jdW91cyB2YXJpYW50LCBpbiBjYXNlIDxsaW1pdHMuaD4gZGVjbGFyZXMg c3lzY3RsLgp8ICAgIEZvciBleGFtcGxlLCBIUC1VWCAxMWkgPGxpbWl0cy5oPiBkZWNsYXJl cyBnZXR0aW1lb2ZkYXkuICAqLwp8ICNkZWZpbmUgc3lzY3RsIGlubm9jdW91c19zeXNjdGwK fCAKfCAvKiBTeXN0ZW0gaGVhZGVyIHRvIGRlZmluZSBfX3N0dWIgbWFjcm9zIGFuZCBob3Bl ZnVsbHkgZmV3IHByb3RvdHlwZXMsCnwgICAgd2hpY2ggY2FuIGNvbmZsaWN0IHdpdGggY2hh ciBzeXNjdGwgKCk7IGJlbG93LiAgKi8KfCAKfCAjaW5jbHVkZSA8bGltaXRzLmg+CnwgI3Vu ZGVmIHN5c2N0bAp8IAp8IC8qIE92ZXJyaWRlIGFueSBHQ0MgaW50ZXJuYWwgcHJvdG90eXBl IHRvIGF2b2lkIGFuIGVycm9yLgp8ICAgIFVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1h dGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIEdDQwp8ICAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRz IGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCnwgI2lmZGVmIF9f Y3BsdXNwbHVzCnwgZXh0ZXJuICJDIgp8ICNlbmRpZgp8IGNoYXIgc3lzY3RsICgpOwp8IC8q IFRoZSBHTlUgQyBsaWJyYXJ5IGRlZmluZXMgdGhpcyBmb3IgZnVuY3Rpb25zIHdoaWNoIGl0 IGltcGxlbWVudHMKfCAgICAgdG8gYWx3YXlzIGZhaWwgd2l0aCBFTk9TWVMuICBTb21lIGZ1 bmN0aW9ucyBhcmUgYWN0dWFsbHkgbmFtZWQKfCAgICAgc29tZXRoaW5nIHN0YXJ0aW5nIHdp dGggX18gYW5kIHRoZSBub3JtYWwgbmFtZSBpcyBhbiBhbGlhcy4gICovCnwgI2lmIGRlZmlu ZWQgX19zdHViX3N5c2N0bCB8fCBkZWZpbmVkIF9fc3R1Yl9fX3N5c2N0bAp8IGNob2tlIG1l CnwgI2VuZGlmCnwgCnwgaW50CnwgbWFpbiAodm9pZCkKfCB7CnwgcmV0dXJuIHN5c2N0bCAo KTsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjM5MjYwOiByZXN1bHQ6IG5v CmNvbmZpZ3VyZTozOTI2OTogY2hlY2tpbmcgZm9yIHNjaGVkX2dldGFmZmluaXR5CmNvbmZp Z3VyZTozOTMwNjogY2hlY2tpbmcgZm9yIHNjaGVkX2dldGFmZmluaXR5CmNvbmZpZ3VyZToz OTMwNjogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1IApj b25maWd1cmU6MzkzMDY6ICQ/ID0gMApjb25maWd1cmU6MzkzMDY6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZTozOTMyMTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM5MzM3OiBjaGVja2luZyBm b3IgZ2xpYmMgY29tcGF0aWJsZSBzY2hlZF9nZXRhZmZpbml0eQpjb25maWd1cmU6MzkzNTU6 IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozOTM1NTogJD8g PSAwCmNvbmZpZ3VyZTozOTM2NDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM5Mzk2OiBjaGVj a2luZyBmb3IgcGlwZTIKY29uZmlndXJlOjM5NDMzOiBjaGVja2luZyBmb3IgcGlwZTIKY29u ZmlndXJlOjM5NDMzOiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMg ICA+JjUgCmNvbmZpZ3VyZTozOTQzMzogJD8gPSAwCmNvbmZpZ3VyZTozOTQzMzogcmVzdWx0 OiB5ZXMKY29uZmlndXJlOjM5NDQ4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6Mzk0OTI6IGNo ZWNraW5nIHdoZXRoZXIgc2lnbmF0dXJlIG9mIHBzZWxlY3QgY29uZm9ybXMgdG8gUE9TSVgK Y29uZmlndXJlOjM5NTEzOiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0 LmMgICA+JjUgCmNvbmZpZ3VyZTozOTUxMzogJD8gPSAwCmNvbmZpZ3VyZTozOTUyMjogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjM5NTI1OiBjaGVja2luZyB3aGV0aGVyIHBzZWxlY3QgZGV0 ZWN0cyBpbnZhbGlkIGZkcwpjb25maWd1cmU6Mzk1Nzk6IGdjYyAtbyBjb25mdGVzdCAtZzMg LU8yICAgICAgY29uZnRlc3QuYyAgID4mNSAKY29uZmlndXJlOjM5NTc5OiAkPyA9IDAKY29u ZmlndXJlOjM5NTc5OiAuL2NvbmZ0ZXN0CmNvbmZpZ3VyZTozOTU3OTogJD8gPSAwCmNvbmZp Z3VyZTozOTU5MTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM5NjMxOiBjaGVja2luZyB3aGV0 aGVyIHB0aHJlYWRfc2lnbWFzayBpcyBhIG1hY3JvCmNvbmZpZ3VyZTozOTY1NzogcmVzdWx0 OiBubwpjb25maWd1cmU6Mzk2ODg6IGNoZWNraW5nIHdoZXRoZXIgcHRocmVhZF9zaWdtYXNr IHdvcmtzIHdpdGhvdXQgLWxwdGhyZWFkCmNvbmZpZ3VyZTozOTcxOTogZ2NjIC1vIGNvbmZ0 ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1IApjb25maWd1cmU6Mzk3MTk6ICQ/ ID0gMApjb25maWd1cmU6Mzk3MTk6IC4vY29uZnRlc3QKY29uZmlndXJlOjM5NzE5OiAkPyA9 IDEKY29uZmlndXJlOiBwcm9ncmFtIGV4aXRlZCB3aXRoIHN0YXR1cyAxCmNvbmZpZ3VyZTog 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 I2RlZmluZSBIQVZFX1RNX0dNVE9GRiAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVF9UIDEKfCAj ZGVmaW5lIEhBVkVfV0NIQVJfVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkNMT1NFQUxMIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9HRVRXIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRXIDEK fCAjZGVmaW5lIF9fVVNFX01JTkdXX0FOU0lfU1RESU8gMQp8ICNkZWZpbmUgSEFWRV9ERUNM X0VDVlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZDVlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X0dDVlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUk5MRU4gMQp8ICNkZWZpbmUgSEFWRV9E RUNMX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBfVVNFX1NURF9TVEFUIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9FWEVDVlBFIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9DTEVBUkVSUl9VTkxPQ0tF RCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkVPRl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfRkVSUk9SX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRkxVU0hfVU5M T0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZHRVRTX1VOTE9DS0VEIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9GUFVUQ19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRlBVVFNf VU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZSRUFEX1VOTE9DS0VEIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9GV1JJVEVfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dF VENfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVENIQVJfVU5MT0NLRUQgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX1BVVENfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X1BVVENIQVJfVU5MT0NLRUQgMQp8ICNkZWZpbmUgR0VUR1JPVVBTX1QgZ2lkX3QKfCAjZGVm aW5lIEhBVkVfREVDTF9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX1BP U0lYIDEKfCAjZGVmaW5lIFBST01PVEVEX01PREVfVCBtb2RlX3QKfCAjZGVmaW5lIEhBVkVf V09SS0lOR19VVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgSEFW RV9fX0JVSUxUSU5fRVhQRUNUIDEKfCAjZGVmaW5lIEhBVkVfQllURVNXQVBfSCAxCnwgI2Rl ZmluZSBHTlVMSUJfQ0FOT05JQ0FMSVpFX0xHUEwgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElO S0FUIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tfR0VUUkVTIDEKfCAjZGVmaW5lIEhBVkVfQ0xP Q0tfR0VUVElNRSAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX1NFVFRJTUUgMQp8ICNkZWZpbmUg R05VTElCX0NMT1NFX1NUUkVBTSAxCnwgI2RlZmluZSBIQVZFX0NPUFlfRklMRV9SQU5HRSAx CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9ESVJFTlRfRF9UWVBFIDEKfCAjZGVmaW5lIEhBVkVf RkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEdOVUxJQl9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBHTlVMSUJfRkRPUEVORElSIDEKfCAjZGVm aW5lIEdFVFhBVFRSX1dJVEhfUE9TSVhfQUNMUyAxCnwgI2RlZmluZSBGTEVYSUJMRV9BUlJB WV9NRU1CRVIgLyoqLwp8ICNkZWZpbmUgSEFWRV9ERUNMX19fRlBFTkRJTkcgMQp8ICNkZWZp bmUgSEFWRV9GUkVFX1BPU0lYIDEKfCAjZGVmaW5lIEhBVkVfU1lTX01PVU5UX0ggMQp8ICNk ZWZpbmUgU1RBVF9TVEFUVkZTIDEKfCAjZGVmaW5lIFNUQVRfU1RBVEZTMl9GUlNJWkUgMQp8 ICNkZWZpbmUgSEFWRV9TWVNfU1RBVEZTX0ggMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVOUyAx CnwgI2RlZmluZSBIQVZFX0dFVExPQURBVkcgMQp8ICNkZWZpbmUgSEFWRV9HRVRSQU5ET00g MQp8ICNkZWZpbmUgSEFWRV9USU1FU1BFQ19HRVQgMQp8ICNkZWZpbmUgR0VUVElNRU9GREFZ X1RJTUVaT05FIHZvaWQKfCAjZGVmaW5lIEhBVkVfX19JTkxJTkUgMQp8ICNkZWZpbmUgSEFW RV9HTVBfSCAxCnwgI2RlZmluZSBIQVZFX01FTU1FTSAxCnwgI2RlZmluZSBIQVZFX01FTVBD UFkgMQp8ICNkZWZpbmUgSEFWRV9NRU1SQ0hSIDEKfCAjZGVmaW5lIEhBVkVfTUtPU1RFTVAg MQp8ICNkZWZpbmUgR05VTElCX01LT1NURU1QIDEKfCAjZGVmaW5lIE5FRURfTUtUSU1FX1dP UktJTkcgMQp8ICNkZWZpbmUgSEFWRV9CVUdfQklHX05BTk9TTEVFUCAxCnwgI2RlZmluZSBI QVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfU0NIRURfR0VUQUZGSU5JVFkgMQp8 ICNkZWZpbmUgSEFWRV9TQ0hFRF9HRVRBRkZJTklUWV9MSUtFX0dMSUJDIDEKfCAjZGVmaW5l IG15X3N0cmZ0aW1lIG5zdHJmdGltZQp8ICNkZWZpbmUgSEFWRV9QSVBFMiAxCnwgLyogZW5k IGNvbmZkZWZzLmguICAqLwp8IAp8ICAgICAgICAgICAgICAgICAgICAjaW5jbHVkZSA8cHRo cmVhZC5oPgp8ICAgICAgICAgICAgICAgICAgICAjaW5jbHVkZSA8c2lnbmFsLmg+CnwgICAg ICAgICAgICAgICAgICAgICNpbmNsdWRlIDxzdGRkZWYuaD4KfCAgICAgICAgICAgICAgICAg ICAgaW50IG1haW4gKCkKfCAgICAgICAgICAgICAgICAgICAgewp8ICAgICAgICAgICAgICAg ICAgICAgIHNpZ3NldF90IHNldDsKfCAgICAgICAgICAgICAgICAgICAgICBzaWdlbXB0eXNl dCAoJnNldCk7CnwgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHB0aHJlYWRfc2lnbWFz ayAoMTcyOSwgJnNldCwgTlVMTCkgIT0gMDsKfCAgICAgICAgICAgICAgICAgICAgfQpjb25m aWd1cmU6Mzk3MzE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozOTc0NDogY2hlY2tpbmcgd2hl dGhlciBwdGhyZWFkX3NpZ21hc2sgcmV0dXJucyBlcnJvciBudW1iZXJzCmNvbmZpZ3VyZToz OTc3ODogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jICAgID4mNSAK Y29uZmlndXJlOjM5Nzc4OiAkPyA9IDAKY29uZmlndXJlOjM5Nzc4OiAuL2NvbmZ0ZXN0CmNv bmZpZ3VyZTozOTc3ODogJD8gPSAwCmNvbmZpZ3VyZTozOTc5MTogcmVzdWx0OiB5ZXMKY29u ZmlndXJlOjM5ODAyOiBjaGVja2luZyB3aGV0aGVyIHB0aHJlYWRfc2lnbWFzayB1bmJsb2Nr cyBzaWduYWxzIGNvcnJlY3RseQpjb25maWd1cmU6Mzk4NjQ6IGdjYyAtbyBjb25mdGVzdCAt ZzMgLU8yICAgICAgY29uZnRlc3QuYyAgID4mNSAKY29uZmlndXJlOjM5ODY0OiAkPyA9IDAK Y29uZmlndXJlOjM5ODY0OiAuL2NvbmZ0ZXN0CmNvbmZpZ3VyZTozOTg2NDogJD8gPSAwCmNv bmZpZ3VyZTozOTg3NzogcmVzdWx0OiBndWVzc2luZyB5ZXMKY29uZmlndXJlOjM5OTM4OiBj aGVja2luZyBmb3IgeGF0dHIgbGlicmFyeSB3aXRoIEFUVFJfQUNUSU9OX1BFUk1JU1NJT05T CmNvbmZpZ3VyZTozOTk2NDogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVz dC5jICAgPiY1IAovdXNyL2Jpbi9sZDogL3RtcC9jY0NUd0xaSC5vOiBpbiBmdW5jdGlvbiBg aXNfYXR0cl9wZXJtaXNzaW9ucyc6Ci9hcHAvZW1hY3MvY29uZnRlc3QuYzo0MTI6IHVuZGVm aW5lZCByZWZlcmVuY2UgdG8gYGF0dHJfY29weV9hY3Rpb24nCi91c3IvYmluL2xkOiAvdG1w L2NjQ1R3TFpILm86IGluIGZ1bmN0aW9uIGBtYWluJzoKL2FwcC9lbWFjcy9jb25mdGVzdC5j OjQxODogdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgYXR0cl9jb3B5X2ZkJwpjb2xsZWN0Mjog ZXJyb3I6IGxkIHJldHVybmVkIDEgZXhpdCBzdGF0dXMKY29uZmlndXJlOjM5OTY0OiAkPyA9 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 VkVfREVDTF9NRU1SQ0hSIDEKfCAjZGVmaW5lIEhBVkVfTUlOTUFYX0lOX1NZU19QQVJBTV9I IDEKfCAjZGVmaW5lIFRJTUVfVF9JU19TSUdORUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0FM QVJNIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1RNX1RNX1pPTkUgMQp8ICNkZWZpbmUgSEFW RV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fR01UT0ZGIDEKfCAjZGVmaW5lIEhBVkVf U0lHU0VUX1QgMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9UIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9GQ0xPU0VBTEwgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVFcgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX1BVVFcgMQp8ICNkZWZpbmUgX19VU0VfTUlOR1dfQU5TSV9TVERJTyAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfRUNWVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkNWVCAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfR0NWVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSTkxFTiAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIF9VU0VfU1REX1NUQVQg MQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VYRUNWUEUgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0NM RUFSRVJSX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRU9GX1VOTE9DS0VEIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9GRVJST1JfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9E RUNMX0ZGTFVTSF9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkdFVFNfVU5MT0NL RUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZQVVRDX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9GUFVUU19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRlJFQURfVU5M T0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZXUklURV9VTkxPQ0tFRCAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfR0VUQ19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VUQ0hB Ul9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUFVUQ19VTkxPQ0tFRCAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfUFVUQ0hBUl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBHRVRHUk9VUFNf VCBnaWRfdAp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUg SEFWRV9NQUxMT0NfUE9TSVggMQp8ICNkZWZpbmUgUFJPTU9URURfTU9ERV9UIG1vZGVfdAp8 ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1VUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAx CnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9FWFBFQ1QgMQp8ICNkZWZpbmUgSEFWRV9CWVRF U1dBUF9IIDEKfCAjZGVmaW5lIEdOVUxJQl9DQU5PTklDQUxJWkVfTEdQTCAxCnwgI2RlZmlu ZSBIQVZFX1JFQURMSU5LQVQgMQp8ICNkZWZpbmUgSEFWRV9DTE9DS19HRVRSRVMgMQp8ICNk ZWZpbmUgSEFWRV9DTE9DS19HRVRUSU1FIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tfU0VUVElN RSAxCnwgI2RlZmluZSBHTlVMSUJfQ0xPU0VfU1RSRUFNIDEKfCAjZGVmaW5lIEhBVkVfQ09Q WV9GSUxFX1JBTkdFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0RJUkVOVF9EX1RZUEUgMQp8 ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgR05VTElCX0ZBQ0NFU1NBVCAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfRkRPUEVORElSIDEKfCAjZGVmaW5lIEdOVUxJQl9GRE9Q RU5ESVIgMQp8ICNkZWZpbmUgR0VUWEFUVFJfV0lUSF9QT1NJWF9BQ0xTIDEKfCAjZGVmaW5l IEZMRVhJQkxFX0FSUkFZX01FTUJFUiAvKiovCnwgI2RlZmluZSBIQVZFX0RFQ0xfX19GUEVO RElORyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVfUE9TSVggMQp8ICNkZWZpbmUgSEFWRV9TWVNf TU9VTlRfSCAxCnwgI2RlZmluZSBTVEFUX1NUQVRWRlMgMQp8ICNkZWZpbmUgU1RBVF9TVEFU RlMyX0ZSU0laRSAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFURlNfSCAxCnwgI2RlZmluZSBI QVZFX0ZVVElNRU5TIDEKfCAjZGVmaW5lIEhBVkVfR0VUTE9BREFWRyAxCnwgI2RlZmluZSBI QVZFX0dFVFJBTkRPTSAxCnwgI2RlZmluZSBIQVZFX1RJTUVTUEVDX0dFVCAxCnwgI2RlZmlu ZSBHRVRUSU1FT0ZEQVlfVElNRVpPTkUgdm9pZAp8ICNkZWZpbmUgSEFWRV9fX0lOTElORSAx CnwgI2RlZmluZSBIQVZFX0dNUF9IIDEKfCAjZGVmaW5lIEhBVkVfTUVNTUVNIDEKfCAjZGVm aW5lIEhBVkVfTUVNUENQWSAxCnwgI2RlZmluZSBIQVZFX01FTVJDSFIgMQp8ICNkZWZpbmUg SEFWRV9NS09TVEVNUCAxCnwgI2RlZmluZSBHTlVMSUJfTUtPU1RFTVAgMQp8ICNkZWZpbmUg TkVFRF9NS1RJTUVfV09SS0lORyAxCnwgI2RlZmluZSBIQVZFX0JVR19CSUdfTkFOT1NMRUVQ IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9TQ0hFRF9H RVRBRkZJTklUWSAxCnwgI2RlZmluZSBIQVZFX1NDSEVEX0dFVEFGRklOSVRZX0xJS0VfR0xJ QkMgMQp8ICNkZWZpbmUgbXlfc3RyZnRpbWUgbnN0cmZ0aW1lCnwgI2RlZmluZSBIQVZFX1BJ UEUyIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPGF0dHIvZXJyb3Jf Y29udGV4dC5oPgp8ICAgICAgICAgICAgICAgI2luY2x1ZGUgPGF0dHIvbGliYXR0ci5oPgp8 ICAgICAgICAgICAgICAgc3RhdGljIGludAp8ICAgICAgICAgICAgICAgaXNfYXR0cl9wZXJt aXNzaW9ucyAoY29uc3QgY2hhciAqbmFtZSwgc3RydWN0IGVycm9yX2NvbnRleHQgKmN0eCkK fCAgICAgICAgICAgICAgIHsKfCAgICAgICAgICAgICAgICAgcmV0dXJuIGF0dHJfY29weV9h Y3Rpb24gKG5hbWUsIGN0eCkgPT0gQVRUUl9BQ1RJT05fUEVSTUlTU0lPTlM7CnwgICAgICAg ICAgICAgICB9CnwgCnwgaW50CnwgbWFpbiAodm9pZCkKfCB7CnwgcmV0dXJuIGF0dHJfY29w eV9mZCAoIi8iLCAwLCAiLyIsIDAsIGlzX2F0dHJfcGVybWlzc2lvbnMsIDApOwp8IAp8ICAg Owp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6Mzk5NzA6IGdjYyAtbyBjb25mdGVzdCAt ZzMgLU8yICAgICAgY29uZnRlc3QuYyAtbGF0dHIgICA+JjUgCmNvbmZpZ3VyZTozOTk3MDog JD8gPSAwCmNvbmZpZ3VyZTozOTk4MTogcmVzdWx0OiAtbGF0dHIKY29uZmlndXJlOjQwMDEy OiBjaGVja2luZyB3aGV0aGVyIHJlYWRsaW5rIHNpZ25hdHVyZSBpcyBjb3JyZWN0CmNvbmZp Z3VyZTo0MDAzMTogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJl OjQwMDMxOiAkPyA9IDAKY29uZmlndXJlOjQwMDM5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6 NDAwNDE6IGNoZWNraW5nIHdoZXRoZXIgcmVhZGxpbmsgaGFuZGxlcyB0cmFpbGluZyBzbGFz aCBjb3JyZWN0bHkKY29uZmlndXJlOjQwMDgxOiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAg ICAgIGNvbmZ0ZXN0LmMgICA+JjUgCmNvbmZpZ3VyZTo0MDA4MTogJD8gPSAwCmNvbmZpZ3Vy ZTo0MDA4MTogLi9jb25mdGVzdApjb25maWd1cmU6NDAwODE6ICQ/ID0gMApjb25maWd1cmU6 NDAwOTM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo0MDEwOTogY2hlY2tpbmcgd2hldGhlciBy ZWFkbGluayB0cnVuY2F0ZXMgcmVzdWx0cyBjb3JyZWN0bHkKY29uZmlndXJlOjQwMTQ4OiBn Y2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCmNvbmZpZ3Vy ZTo0MDE0ODogJD8gPSAwCmNvbmZpZ3VyZTo0MDE0ODogLi9jb25mdGVzdApjb25maWd1cmU6 NDAxNDg6ICQ/ID0gMApjb25maWd1cmU6NDAxNjA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo0 MDIxMzogY2hlY2tpbmcgZm9yIHJlYWRsaW5rYXQKY29uZmlndXJlOjQwMjY1OiByZXN1bHQ6 IHllcwpjb25maWd1cmU6NDAyODY6IGNoZWNraW5nIHdoZXRoZXIgcmVhZGxpbmthdCBzaWdu YXR1cmUgaXMgY29ycmVjdApjb25maWd1cmU6NDAzMDU6IGdjYyAtYyAtZzMgLU8yICAgIGNv bmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo0MDMwNTogJD8gPSAwCmNvbmZpZ3VyZTo0MDMxMzog cmVzdWx0OiB5ZXMKY29uZmlndXJlOjQwMzY4OiBjaGVja2luZyBmb3Igd29ya2luZyByZV9j b21waWxlX3BhdHRlcm4KY29uZmlndXJlOjQwNjgzOiBnY2MgLW8gY29uZnRlc3QgLWczIC1P MiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCmNvbmZpZ3VyZTo0MDY4MzogJD8gPSAwCmNvbmZp Z3VyZTo0MDY4MzogLi9jb25mdGVzdApjb25maWd1cmU6NDA2ODM6ICQ/ID0gMApjb25maWd1 cmU6NDA2OTU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo0MDc5OTogY2hlY2tpbmcgZm9yIHNp ZzJzdHIKY29uZmlndXJlOjQwNzk5OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNv bmZ0ZXN0LmMgICA+JjUgCi91c3IvYmluL2xkOiAvdG1wL2NjNWZ2Y0lqLm86IGluIGZ1bmN0 aW9uIGBtYWluJzoKL2FwcC9lbWFjcy9jb25mdGVzdC5jOjQzNjogdW5kZWZpbmVkIHJlZmVy ZW5jZSB0byBgc2lnMnN0cicKY29sbGVjdDI6IGVycm9yOiBsZCByZXR1cm5lZCAxIGV4aXQg c3RhdHVzCmNvbmZpZ3VyZTo0MDc5OTogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dy 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 MQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICov CnwgLyogRGVmaW5lIHNpZzJzdHIgdG8gYW4gaW5ub2N1b3VzIHZhcmlhbnQsIGluIGNhc2Ug PGxpbWl0cy5oPiBkZWNsYXJlcyBzaWcyc3RyLgp8ICAgIEZvciBleGFtcGxlLCBIUC1VWCAx MWkgPGxpbWl0cy5oPiBkZWNsYXJlcyBnZXR0aW1lb2ZkYXkuICAqLwp8ICNkZWZpbmUgc2ln MnN0ciBpbm5vY3VvdXNfc2lnMnN0cgp8IAp8IC8qIFN5c3RlbSBoZWFkZXIgdG8gZGVmaW5l IF9fc3R1YiBtYWNyb3MgYW5kIGhvcGVmdWxseSBmZXcgcHJvdG90eXBlcywKfCAgICB3aGlj aCBjYW4gY29uZmxpY3Qgd2l0aCBjaGFyIHNpZzJzdHIgKCk7IGJlbG93LiAgKi8KfCAKfCAj aW5jbHVkZSA8bGltaXRzLmg+CnwgI3VuZGVmIHNpZzJzdHIKfCAKfCAvKiBPdmVycmlkZSBh bnkgR0NDIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4KfCAgICBVc2Ug Y2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBHQ0MK fCAgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3Rp bGwgYXBwbHkuICAqLwp8ICNpZmRlZiBfX2NwbHVzcGx1cwp8IGV4dGVybiAiQyIKfCAjZW5k aWYKfCBjaGFyIHNpZzJzdHIgKCk7CnwgLyogVGhlIEdOVSBDIGxpYnJhcnkgZGVmaW5lcyB0 aGlzIGZvciBmdW5jdGlvbnMgd2hpY2ggaXQgaW1wbGVtZW50cwp8ICAgICB0byBhbHdheXMg ZmFpbCB3aXRoIEVOT1NZUy4gIFNvbWUgZnVuY3Rpb25zIGFyZSBhY3R1YWxseSBuYW1lZAp8 ICAgICBzb21ldGhpbmcgc3RhcnRpbmcgd2l0aCBfXyBhbmQgdGhlIG5vcm1hbCBuYW1lIGlz IGFuIGFsaWFzLiAgKi8KfCAjaWYgZGVmaW5lZCBfX3N0dWJfc2lnMnN0ciB8fCBkZWZpbmVk IF9fc3R1Yl9fX3NpZzJzdHIKfCBjaG9rZSBtZQp8ICNlbmRpZgp8IAp8IGludAp8IG1haW4g KHZvaWQpCnwgewp8IHJldHVybiBzaWcyc3RyICgpOwp8ICAgOwp8ICAgcmV0dXJuIDA7Cnwg fQpjb25maWd1cmU6NDA3OTk6IHJlc3VsdDogbm8KY29uZmlndXJlOjQwODI3OiBjaGVja2lu ZyBmb3Igc2lnZGVzY3JfbnAKY29uZmlndXJlOjQwODI3OiBnY2MgLW8gY29uZnRlc3QgLWcz IC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCmNvbmZpZ3VyZTo0MDgyNzogJD8gPSAwCmNv bmZpZ3VyZTo0MDgyNzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjQwODczOiBjaGVja2luZyBm b3Igc29ja2xlbl90CmNvbmZpZ3VyZTo0MDg3MzogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRl c3QuYyA+JjUKY29uZmlndXJlOjQwODczOiAkPyA9IDAKY29uZmlndXJlOjQwODczOiBnY2Mg LWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiAn bWFpbic6CmNvbmZ0ZXN0LmM6NDI1OjI0OiBlcnJvcjogZXhwZWN0ZWQgZXhwcmVzc2lvbiBi ZWZvcmUgJyknIHRva2VuCiAgNDI1IHwgaWYgKHNpemVvZiAoKHNvY2tsZW5fdCkpKQogICAg ICB8ICAgICAgICAgICAgICAgICAgICAgICAgXgpjb25maWd1cmU6NDA4NzM6ICQ/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 I2RlZmluZSBIQVZFX1NJR0RFU0NSX05QIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwg CnwgLyogPHN5cy90eXBlcy5oPiBpcyBub3QgbmVlZGVkIGFjY29yZGluZyB0byBQT1NJWCwg YnV0IHRoZQp8ICAgIDxzeXMvc29ja2V0Lmg+IGluIGkzODYtdW5rbm93bi1mcmVlYnNkNC4x MCBhbmQKfCAgICBwb3dlcnBjLWFwcGxlLWRhcndpbjUuNSByZXF1aXJlZCBpdC4gKi8KfCAj aW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgI2lmIEhBVkVfU1lTX1NPQ0tFVF9ICnwgIyBpbmNs dWRlIDxzeXMvc29ja2V0Lmg+CnwgI2VsaWYgSEFWRV9XUzJUQ1BJUF9ICnwgIyBpbmNsdWRl IDx3czJ0Y3BpcC5oPgp8ICNlbmRpZgp8IAp8IAp8IGludAp8IG1haW4gKHZvaWQpCnwgewp8 IGlmIChzaXplb2YgKChzb2NrbGVuX3QpKSkKfCAJICAgIHJldHVybiAwOwp8ICAgOwp8ICAg cmV0dXJuIDA7CnwgfQpjb25maWd1cmU6NDA4NzM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo0 MDkzNzogY2hlY2tpbmcgZm9yIHNzaXplX3QKY29uZmlndXJlOjQwOTU1OiBnY2MgLWMgLWcz IC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6NDA5NTU6ICQ/ID0gMApjb25maWd1 cmU6NDA5NjM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo0MDk3NTogY2hlY2tpbmcgZm9yIHN0 cnVjdCBzdGF0LnN0X2F0aW0udHZfbnNlYwpjb25maWd1cmU6NDA5NzU6IGdjYyAtYyAtZzMg LU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo0MDk3NTogJD8gPSAwCmNvbmZpZ3Vy ZTo0MDk3NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjQwOTgzOiBjaGVja2luZyB3aGV0aGVy IHN0cnVjdCBzdGF0LnN0X2F0aW0gaXMgb2YgdHlwZSBzdHJ1Y3QgdGltZXNwZWMKY29uZmln dXJlOjQxMDExOiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6 NDEwMTE6ICQ/ID0gMApjb25maWd1cmU6NDEwMTk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo0 MTA2ODogY2hlY2tpbmcgZm9yIHN0cnVjdCBzdGF0LnN0X2JpcnRodGltZXNwZWMudHZfbnNl Ywpjb25maWd1cmU6NDEwNjg6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNv bmZ0ZXN0LmM6IEluIGZ1bmN0aW9uICdtYWluJzoKY29uZnRlc3QuYzo0MTk6MTI6IGVycm9y OiAnc3RydWN0IHN0YXQnIGhhcyBubyBtZW1iZXIgbmFtZWQgJ3N0X2JpcnRodGltZXNwZWMn CiAgNDE5IHwgaWYgKGFjX2FnZ3Iuc3RfYmlydGh0aW1lc3BlYy50dl9uc2VjKQogICAgICB8 ICAgICAgICAgICAgXgpjb25maWd1cmU6NDEwNjg6ICQ/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 ZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5l IEhBVkVfUFNFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2Rl ZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfSVNCTEFOSyAxCnwgI2RlZmlu ZSBIQVZFX0lTV0NUWVBFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVmaW5l IEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5l IEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBTWVNURU1fTUFMTE9DIDEKfCAjZGVm aW5lIEhBVkVfTU1BUCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQUQgMQp8ICNkZWZpbmUgVEhS RUFEU19FTkFCTEVEIDEKfCAjZGVmaW5lIEhBVkVfWEtCIDEKfCAjZGVmaW5lIEhBVkVfWEtC UkVGUkVTSEtFWUJPQVJETUFQUElORyAxCnwgI2RlZmluZSBIQVZFX1hLQkZSRUVOQU1FUyAx CnwgI2RlZmluZSBIQVZFX1hSTVNFVERBVEFCQVNFIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVF TlJFU09VUkNFU1RSSU5HIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NSRUVO IDEKfCAjZGVmaW5lIEhBVkVfWERJU1BMQVlDRUxMUyAxCnwgI2RlZmluZSBIQVZFX1hERVNU Uk9ZU1VCV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gxMVI2IDEKfCAjZGVmaW5lIEhBVkVf WF9JMThOIDEKfCAjZGVmaW5lIEhBVkVfWElDQ0FMTEJBQ0tfQ0FMTEJBQ0sgMQp8ICNkZWZp bmUgSEFWRV9YMTFSNl9YSU0gMQp8ICNkZWZpbmUgSEFWRV9SU1ZHIDEKfCAjZGVmaW5lIEhB VkVfV0VCUCAxCnwgI2RlZmluZSBIQVZFX1NRTElURTMgMQp8ICNkZWZpbmUgSEFWRV9TUUxJ VEUzX0xPQURfRVhURU5TSU9OIDEKfCAjZGVmaW5lIEhBVkVfR0VUQUREUklORk9fQSAxCnwg I2RlZmluZSBIQVZFX0dUSzMgMQp8ICNkZWZpbmUgR0RLX0RJU0FCTEVfREVQUkVDQVRJT05f V0FSTklOR1MgMQp8ICNkZWZpbmUgR0xJQl9ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdT IDEKfCAjZGVmaW5lIFVTRV9HVEsgMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfVFJJTSAxCnwg I2RlZmluZSBIQVZFX0RCVVMgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1dBVENIX0dFVF9VTklY X0ZEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19UWVBFX0lTX1ZBTElEIDEKfCAjZGVmaW5lIEhB VkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURB VEVfUEFUSCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfSU5URVJGQUNFIDEKfCAj ZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIgMQp8ICNkZWZpbmUgSEFWRV9HU0VU VElOR1MgMQp8ICNkZWZpbmUgSEFWRV9MSUJTRUxJTlVYIDEKfCAjZGVmaW5lIEhBVkVfR05V VExTIDEKfCAjZGVmaW5lIEhBVkVfTElCU1lTVEVNRCAxCnwgI2RlZmluZSBIQVZFX0pTT04g MQp8ICNkZWZpbmUgSEFWRV9JTk9USUZZIDEKfCAjZGVmaW5lIFVTRV9GSUxFX05PVElGWSAx CnwgI2RlZmluZSBVU0VfVE9PTEtJVF9TQ1JPTExfQkFSUyAxCnwgI2RlZmluZSBIQVZFX1hJ TSAxCnwgI2RlZmluZSBVU0VfWElNIDEKfCAjZGVmaW5lIEhBVkVfWFJFTkRFUiAxCnwgI2Rl ZmluZSBVU0VfQ0FJUk9fWENCIDEKfCAjZGVmaW5lIFVTRV9DQUlSTyAxCnwgI2RlZmluZSBI QVZFX0ZSRUVUWVBFIDEKfCAjZGVmaW5lIEhBVkVfRlRfRkFDRV9HRVRDSEFSVkFSSUFOVElO REVYIDEKfCAjZGVmaW5lIEhBVkVfTElCT1RGIDEKfCAjZGVmaW5lIEhBVkVfT1RGX0dFVF9W QVJJQVRJT05fR0xZUEhTIDEKfCAjZGVmaW5lIEhBVkVfTTE3Tl9GTFQgMQp8ICNkZWZpbmUg SEFWRV9IQVJGQlVaWiAxCnwgI2RlZmluZSBVU0VfWENCIDEKfCAjZGVmaW5lIEhBVkVfWFBN IDEKfCAjZGVmaW5lIEhBVkVfSlBFRyAxCnwgI2RlZmluZSBIQVZFX0xDTVMyIDEKfCAjZGVm aW5lIEhBVkVfWkxJQiAxCnwgI2RlZmluZSBEWU5BTUlDX0xJQl9TVUZGSVggIi5zbyIKfCAj ZGVmaW5lIERZTkFNSUNfTElCX1NFQ09OREFSWV9TVUZGSVggIiIKfCAjZGVmaW5lIEhBVkVf RExBRERSIDEKfCAjZGVmaW5lIEhBVkVfTU9EVUxFUyAxCnwgI2RlZmluZSBNT0RVTEVTX1NV RkZJWCAiLnNvIgp8ICNkZWZpbmUgTkFUSVZFX0VMSVNQX1NVRkZJWCAiLmVsbiIKfCAjZGVm aW5lIEhBVkVfUE5HIDEKfCAjZGVmaW5lIEhBVkVfVElGRiAxCnwgI2RlZmluZSBIQVZFX0dJ RiAxCnwgI2RlZmluZSBIQVZFX0dQTSAxCnwgI2RlZmluZSBIQVZFX1hfU00gMQp8ICNkZWZp bmUgSEFWRV9YUkFORFIgMQp8ICNkZWZpbmUgSEFWRV9YSU5FUkFNQSAxCnwgI2RlZmluZSBI QVZFX1hGSVhFUyAxCnwgI2RlZmluZSBIQVZFX1hJTlBVVDIgMQp8ICNkZWZpbmUgSEFWRV9Y SVNDUk9MTENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWElUT1VDSENMQVNTSU5G T19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWElCQVJSSUVSUkVMRUFTRVBPSU5URVJJTkZPX0RF VklDRUlEIDEKfCAjZGVmaW5lIEhBVkVfWElHRVNUVVJFQ0xBU1NJTkZPX1RZUEUgMQp8ICNk ZWZpbmUgSEFWRV9YU1lOQyAxCnwgI2RlZmluZSBIQVZFX1hTWU5DVFJJR0dFUkZFTkNFIDEK fCAjZGVmaW5lIEhBVkVfWERCRSAxCnwgI2RlZmluZSBIQVZFX1hDQl9TSEFQRSAxCnwgI2Rl ZmluZSBIQVZFX1hTSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hDT01QT1NJVEUgMQp8ICNkZWZp bmUgSEFWRV9MSUJYTUwyIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU0VDQ09NUF9IIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfU0VDQ09NUF9GSUxURVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBIQVZFX0xJ TlVYX0ZJTFRFUl9IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX1NFVF9NT0RFX0ZJ TFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9GSUxURVJfRkxBR19UU1lOQyAx CnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA4CnwgI2RlZmluZSBIQVZFX0FDQ0VQVDQgMQp8ICNk ZWZpbmUgSEFWRV9GQ0hESVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAxCnwgI2Rl ZmluZSBIQVZFX0dFVFJVU0FHRSAxCnwgI2RlZmluZSBIQVZFX0dFVF9DVVJSRU5UX0RJUl9O QU1FIDEKfCAjZGVmaW5lIEhBVkVfTFJBTkQ0OCAxCnwgI2RlZmluZSBIQVZFX1JBTkRPTSAx CnwgI2RlZmluZSBIQVZFX1JJTlQgMQp8ICNkZWZpbmUgSEFWRV9UUlVOQyAxCnwgI2RlZmlu ZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5l IEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfTkVXTE9DQUxFIDEKfCAjZGVmaW5l IEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVmaW5l IEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNk ZWZpbmUgSEFWRV9TVFJTSUdOQUwgMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNk ZWZpbmUgSEFWRV9TRU5EVE8gMQp8ICNkZWZpbmUgSEFWRV9SRUNWRlJPTSAxCnwgI2RlZmlu ZSBIQVZFX0dFVFNPQ0tOQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUSUZBRERSUyAxCnwgI2Rl ZmluZSBIQVZFX0ZSRUVJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfR0FJX1NUUkVSUk9SIDEK fCAjZGVmaW5lIEhBVkVfU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVm aW5lIEhBVkVfRU5EUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUkVOVCAxCnwgI2RlZmlu ZSBIQVZFX0VOREdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfUkVOQU1FQVQyIDEKfCAjZGVmaW5l IEhBVkVfQ0ZNQUtFUkFXIDEKfCAjZGVmaW5lIEhBVkVfQ0ZTRVRTUEVFRCAxCnwgI2RlZmlu ZSBIQVZFX19fRVhFQ1VUQUJMRV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0xPRzIgMQp8ICNk ZWZpbmUgSEFWRV9QVEhSRUFEX1NFVE5BTUVfTlAgMQp8ICNkZWZpbmUgSEFWRV9BTElHTkVE X0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5l IEhBVkVfUE9TSVhfTUFEVklTRSAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9GUkFNRV9B RERSRVNTIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX1VOV0lORF9JTklUIDEKfCAjZGVm aW5lIEhBVkVfRlNFRUtPIDEKfCAjZGVmaW5lIEhBVkVfR1JBTlRQVCAxCnwgI2RlZmluZSBI QVZFX0dFVFBUIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfT1BFTlBUIDEKfCAjZGVmaW5lIFRF Uk1JTkZPIDEKfCAjZGVmaW5lIFRFUk1JTkZPX0RFRklORVNfQkMgMQp8ICNkZWZpbmUgSEFW RV9USU1FUkZEIDEKfCAjZGVmaW5lIEhBVkVfVkFMR1JJTkRfVkFMR1JJTkRfSCAxCnwgI2Rl ZmluZSBIQVZFX1NUUlVDVF9VTklQQUlSX1VOSUNPREUgMQp8ICNkZWZpbmUgSEFWRV9XT1JL SU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19GT1JLIDEKfCAjZGVmaW5lIEhB VkVfU05QUklOVEYgMQp8ICNkZWZpbmUgSEFWRV9TUEFXTl9IIDEKfCAjZGVmaW5lIEhBVkVf UE9TSVhfU1BBV04gMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTl9GSUxFX0FDVElPTlNf QUREQ0hESVJfTlAgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TUEFXTkFUVFJfU0VURkxBR1Mg MQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BPU0lYX1NQQVdOX1NFVFNJRCAxCnwgI2RlZmluZSBI QVZFX0dMSUIgMQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5GT19DT0RFU0VUIDEKfCAjZGVmaW5l IEhBVkVfTEFOR0lORk9fX05MX1BBUEVSX1dJRFRIIDEKfCAjZGVmaW5lIEhBVkVfTUJTVEFU RV9UIDEKfCAjZGVmaW5lIEFNUEVSU0FORF9GVUxMX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9Q VFlTIDEKfCAjZGVmaW5lIEhBVkVfU09DS0VUUyAxCnwgI2RlZmluZSBOVUxMX0RFVklDRSAi L2Rldi9udWxsIgp8ICNkZWZpbmUgU0VQQ0hBUiAnOicKfCAjZGVmaW5lIHN1YnByb2Nlc3Nl cyAxCnwgI2RlZmluZSBVU0VSX0ZVTExfTkFNRSBwdy0+cHdfZ2Vjb3MKfCAjZGVmaW5lIERJ UkVDVE9SWV9TRVAgJy8nCnwgI2RlZmluZSBJU19ERVZJQ0VfU0VQKF9jXykgMAp8ICNkZWZp bmUgSVNfRElSRUNUT1JZX1NFUChfY18pICgoX2NfKSA9PSBESVJFQ1RPUllfU0VQKQp8ICNk ZWZpbmUgSVNfQU5ZX1NFUChfY18pIChJU19ESVJFQ1RPUllfU0VQIChfY18pKQp8ICNkZWZp bmUgSEFWRV9QUk9DRlMgMQp8ICNkZWZpbmUgREVGQVVMVF9TT1VORF9ERVZJQ0UgIi9kZXYv ZHNwIgp8ICNkZWZpbmUgSU5URVJSVVBUX0lOUFVUIDEKfCAjZGVmaW5lIE5BUlJPV1BST1RP IDEKfCAjZGVmaW5lIFVOSVg5OF9QVFlTIDEKfCAjZGVmaW5lIFBUWV9JVEVSQVRJT04gaW50 IGk7IGZvciAoaSA9IDA7IGkgPCAxOyBpKyspCnwgI2RlZmluZSBQVFlfVFRZX05BTUVfU1BS SU5URiB7IGNoYXIgKnB0eW5hbWUgPSAwOyBzaWdzZXRfdCBibG9ja2VkOyBzaWdlbXB0eXNl dCAoJmJsb2NrZWQpOyBzaWdhZGRzZXQgKCZibG9ja2VkLCBTSUdDSExEKTsgcHRocmVhZF9z aWdtYXNrIChTSUdfQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKGdyYW50cHQgKGZkKSAhPSAt MSAmJiB1bmxvY2twdCAoZmQpICE9IC0xKSBwdHluYW1lID0gcHRzbmFtZShmZCk7IHB0aHJl YWRfc2lnbWFzayAoU0lHX1VOQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKCFwdHluYW1lKSB7 IGVtYWNzX2Nsb3NlIChmZCk7IHJldHVybiAtMTsgfSBzbnByaW50ZiAocHR5X25hbWUsIFBU WV9OQU1FX1NJWkUsICIlcyIsIHB0eW5hbWUpOyB9CnwgI2RlZmluZSBQVFlfT1BFTiBkbyB7 IGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX0NMT0VYRUMgfCBPX05PQ1RUWSk7IGlm IChmZCA8IDAgJiYgZXJybm8gPT0gRUlOVkFMKSBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdS IHwgT19OT0NUVFkpOyB9IHdoaWxlIChmYWxzZSkKfCAjZGVmaW5lIFBUWV9OQU1FX1NQUklO VEYgLyoqLwp8ICNkZWZpbmUgU0lHTkFMU19WSUFfQ0hBUkFDVEVSUyAxCnwgI2RlZmluZSBH Q19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAjZGVmaW5l IEhBVkVfX1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVEpNUCAxCnwgI2RlZmluZSBI QVZFX1NUQUNLX09WRVJGTE9XX0hBTkRMSU5HIDEKfCAjZGVmaW5lIFVTRyAvKiovCnwgI2Rl ZmluZSBHTlVfTElOVVggLyoqLwp8ICNkZWZpbmUgU0laRU9GX1NQRUVEX1QgNAp8ICNkZWZp bmUgVVNBQkxFX0ZJT05SRUFEIDEKfCAjZGVmaW5lIFVTQUJMRV9TSUdJTyAxCnwgI2RlZmlu ZSBDT1BZUklHSFQgIkNvcHlyaWdodCAoQykgMjAyMyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRp b24sIEluYy4iCnwgI2RlZmluZSBURVJNX0hFQURFUiAiZ3RrdXRpbC5oIgp8ICNkZWZpbmUg RU1BQ1NfQ09ORklHVVJBVElPTiAieDg2XzY0LXBjLWxpbnV4LWdudSIKfCAjZGVmaW5lIEVN QUNTX0NPTkZJR19PUFRJT05TICIiCnwgI2RlZmluZSBIQVZFX1hfV0lORE9XUyAxCnwgI2Rl ZmluZSBIQVZFX1gxMSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9BVFRSSUJVVEVfQUxJR05F RCAxCnwgI2RlZmluZSBIQVZFX1RZUEVPRiAxCnwgI2RlZmluZSBIQVZFX1NUQVRFTUVOVF9F WFBSRVNTSU9OUyAxCnwgI2RlZmluZSBNQUxMT0NfMF9JU19OT05OVUxMIDEKfCAjZGVmaW5l IEhBVkVfU1lTX0FDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GSUxFIDEKfCAjZGVm aW5lIEhBVkVfQUNMX0dFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRklMRSAxCnwg I2RlZmluZSBIQVZFX0FDTF9TRVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJFRSAxCnwg I2RlZmluZSBIQVZFX0FDTF9GUk9NX01PREUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9U RVhUIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0RFTEVURV9ERUZfRklMRSAxCnwgI2RlZmluZSBI QVZFX0FDTF9FWFRFTkRFRF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0xJQkFDTF9IIDEK fCAjZGVmaW5lIEhBVkVfQUNMX0VOVFJJRVMgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRklSU1Rf RU5UUlkgMQp8ICNkZWZpbmUgVVNFX0FDTCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQV9IIDEK fCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIExTVEFUX0ZPTExPV1NfU0xBU0hF RF9TWU1MSU5LIDEKfCAjZGVmaW5lIEZVTkNfUkVBTFBBVEhfV09SS1MgMQp8ICNkZWZpbmUg SEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9HRVRDV0QgMQp8ICNkZWZpbmUgcmVz dHJpY3QgX19yZXN0cmljdF9fCnwgI2RlZmluZSBIQVZFX0VOVklST05fREVDTCAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfU1RSTU9ERSAwCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAj ZGVmaW5lIEhBVkVfR0VUT1BUX0xPTkdfT05MWSAxCnwgI2RlZmluZSBIQVZFX0xPTkdfTE9O R19JTlQgMQp8ICNkZWZpbmUgSEFWRV9VTlNJR05FRF9MT05HX0xPTkdfSU5UIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9NRU1NRU0gMQp8ICNkZWZpbmUgSEFWRV9ERUNMX01FTVJDSFIgMQp8 ICNkZWZpbmUgSEFWRV9NSU5NQVhfSU5fU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgVElNRV9U X0lTX1NJR05FRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfQUxBUk0gMQp8ICNkZWZpbmUgSEFW RV9TVFJVQ1RfVE1fVE1fWk9ORSAxCnwgI2RlZmluZSBIQVZFX1RNX1pPTkUgMQp8ICNkZWZp bmUgSEFWRV9UTV9HTVRPRkYgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRVRfVCAxCnwgI2RlZmlu ZSBIQVZFX1dDSEFSX1QgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZDTE9TRUFMTCAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfR0VUVyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUFVUVyAxCnwgI2Rl ZmluZSBfX1VTRV9NSU5HV19BTlNJX1NURElPIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9FQ1ZU IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GQ1ZUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HQ1ZU IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJOTEVOIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9T VFJUT0lNQVggMQp8ICNkZWZpbmUgX1VTRV9TVERfU1RBVCAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfRVhFQ1ZQRSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfQ0xFQVJFUlJfVU5MT0NLRUQgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX0ZFT0ZfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X0ZFUlJPUl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkZMVVNIX1VOTE9DS0VE IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GR0VUU19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfRlBVVENfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZQVVRTX1VOTE9D S0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GUkVBRF9VTkxPQ0tFRCAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfRldSSVRFX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRDX1VO TE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRDSEFSX1VOTE9DS0VEIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9QVVRDX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRD SEFSX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEdFVEdST1VQU19UIGdpZF90CnwgI2RlZmluZSBI QVZFX0RFQ0xfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19QT1NJWCAx CnwgI2RlZmluZSBQUk9NT1RFRF9NT0RFX1QgbW9kZV90CnwgI2RlZmluZSBIQVZFX1dPUktJ TkdfVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfX19C VUlMVElOX0VYUEVDVCAxCnwgI2RlZmluZSBIQVZFX0JZVEVTV0FQX0ggMQp8ICNkZWZpbmUg R05VTElCX0NBTk9OSUNBTElaRV9MR1BMIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTktBVCAx CnwgI2RlZmluZSBIQVZFX0NMT0NLX0dFVFJFUyAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX0dF VFRJTUUgMQp8ICNkZWZpbmUgSEFWRV9DTE9DS19TRVRUSU1FIDEKfCAjZGVmaW5lIEdOVUxJ Ql9DTE9TRV9TVFJFQU0gMQp8ICNkZWZpbmUgSEFWRV9DT1BZX0ZJTEVfUkFOR0UgMQp8ICNk ZWZpbmUgSEFWRV9TVFJVQ1RfRElSRU5UX0RfVFlQRSAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NF U1NBVCAxCnwgI2RlZmluZSBHTlVMSUJfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgR05VTElCX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBH RVRYQVRUUl9XSVRIX1BPU0lYX0FDTFMgMQp8ICNkZWZpbmUgRkxFWElCTEVfQVJSQVlfTUVN QkVSIC8qKi8KfCAjZGVmaW5lIEhBVkVfREVDTF9fX0ZQRU5ESU5HIDEKfCAjZGVmaW5lIEhB VkVfRlJFRV9QT1NJWCAxCnwgI2RlZmluZSBIQVZFX1NZU19NT1VOVF9IIDEKfCAjZGVmaW5l IFNUQVRfU1RBVFZGUyAxCnwgI2RlZmluZSBTVEFUX1NUQVRGUzJfRlJTSVpFIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1NUQVRGU19IIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FTlMgMQp8ICNk ZWZpbmUgSEFWRV9HRVRMT0FEQVZHIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkFORE9NIDEKfCAj ZGVmaW5lIEhBVkVfVElNRVNQRUNfR0VUIDEKfCAjZGVmaW5lIEdFVFRJTUVPRkRBWV9USU1F Wk9ORSB2b2lkCnwgI2RlZmluZSBIQVZFX19fSU5MSU5FIDEKfCAjZGVmaW5lIEhBVkVfR01Q X0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1NRU0gMQp8ICNkZWZpbmUgSEFWRV9NRU1QQ1BZIDEK fCAjZGVmaW5lIEhBVkVfTUVNUkNIUiAxCnwgI2RlZmluZSBIQVZFX01LT1NURU1QIDEKfCAj ZGVmaW5lIEdOVUxJQl9NS09TVEVNUCAxCnwgI2RlZmluZSBORUVEX01LVElNRV9XT1JLSU5H IDEKfCAjZGVmaW5lIEhBVkVfQlVHX0JJR19OQU5PU0xFRVAgMQp8ICNkZWZpbmUgSEFWRV9T WVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1NDSEVEX0dFVEFGRklOSVRZIDEKfCAjZGVm aW5lIEhBVkVfU0NIRURfR0VUQUZGSU5JVFlfTElLRV9HTElCQyAxCnwgI2RlZmluZSBteV9z dHJmdGltZSBuc3RyZnRpbWUKfCAjZGVmaW5lIEhBVkVfUElQRTIgMQp8ICNkZWZpbmUgVVNF X1hBVFRSIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZFX1NJ R0RFU0NSX05QIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfQVRJTV9UVl9OU0VD IDEKfCAjZGVmaW5lIFRZUEVPRl9TVFJVQ1RfU1RBVF9TVF9BVElNX0lTX1NUUlVDVF9USU1F U1BFQyAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxzeXMvdHlwZXMu aD4KfCAgICAgICNpbmNsdWRlIDxzeXMvc3RhdC5oPgp8IAp8IGludAp8IG1haW4gKHZvaWQp Cnwgewp8IHN0YXRpYyBzdHJ1Y3Qgc3RhdCBhY19hZ2dyOwp8IGlmIChhY19hZ2dyLnN0X2Jp cnRodGltZXNwZWMudHZfbnNlYykKfCByZXR1cm4gMDsKfCAgIDsKfCAgIHJldHVybiAwOwp8 IH0KY29uZmlndXJlOjQxMDY4OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpj b25mdGVzdC5jOiBJbiBmdW5jdGlvbiAnbWFpbic6CmNvbmZ0ZXN0LmM6NDE5OjE5OiBlcnJv cjogJ3N0cnVjdCBzdGF0JyBoYXMgbm8gbWVtYmVyIG5hbWVkICdzdF9iaXJ0aHRpbWVzcGVj JwogIDQxOSB8IGlmIChzaXplb2YgYWNfYWdnci5zdF9iaXJ0aHRpbWVzcGVjLnR2X25zZWMp CiAgICAgIHwgICAgICAgICAgICAgICAgICAgXgpjb25maWd1cmU6NDEwNjg6ICQ/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 I2RlZmluZSBIQVZFX1NJR0RFU0NSX05QIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRf U1RfQVRJTV9UVl9OU0VDIDEKfCAjZGVmaW5lIFRZUEVPRl9TVFJVQ1RfU1RBVF9TVF9BVElN X0lTX1NUUlVDVF9USU1FU1BFQyAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNs dWRlIDxzeXMvdHlwZXMuaD4KfCAgICAgICNpbmNsdWRlIDxzeXMvc3RhdC5oPgp8IAp8IGlu dAp8IG1haW4gKHZvaWQpCnwgewp8IHN0YXRpYyBzdHJ1Y3Qgc3RhdCBhY19hZ2dyOwp8IGlm IChzaXplb2YgYWNfYWdnci5zdF9iaXJ0aHRpbWVzcGVjLnR2X25zZWMpCnwgcmV0dXJuIDA7 CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZTo0MTA2ODogcmVzdWx0OiBubwpj b25maWd1cmU6NDEwNzg6IGNoZWNraW5nIGZvciBzdHJ1Y3Qgc3RhdC5zdF9iaXJ0aHRpbWVu c2VjCmNvbmZpZ3VyZTo0MTA3ODogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUK Y29uZnRlc3QuYzogSW4gZnVuY3Rpb24gJ21haW4nOgpjb25mdGVzdC5jOjQxOToxMjogZXJy b3I6ICdzdHJ1Y3Qgc3RhdCcgaGFzIG5vIG1lbWJlciBuYW1lZCAnc3RfYmlydGh0aW1lbnNl YycKICA0MTkgfCBpZiAoYWNfYWdnci5zdF9iaXJ0aHRpbWVuc2VjKQogICAgICB8ICAgICAg ICAgICAgXgpjb25maWd1cmU6NDEwNzg6ICQ/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 X19yZXN0cmljdF9fCnwgI2RlZmluZSBIQVZFX0VOVklST05fREVDTCAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfU1RSTU9ERSAwCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5l IEhBVkVfR0VUT1BUX0xPTkdfT05MWSAxCnwgI2RlZmluZSBIQVZFX0xPTkdfTE9OR19JTlQg MQp8ICNkZWZpbmUgSEFWRV9VTlNJR05FRF9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9NRU1NRU0gMQp8ICNkZWZpbmUgSEFWRV9ERUNMX01FTVJDSFIgMQp8ICNkZWZp bmUgSEFWRV9NSU5NQVhfSU5fU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgVElNRV9UX0lTX1NJ R05FRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfQUxBUk0gMQp8ICNkZWZpbmUgSEFWRV9TVFJV Q1RfVE1fVE1fWk9ORSAxCnwgI2RlZmluZSBIQVZFX1RNX1pPTkUgMQp8ICNkZWZpbmUgSEFW RV9UTV9HTVRPRkYgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRVRfVCAxCnwgI2RlZmluZSBIQVZF X1dDSEFSX1QgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZDTE9TRUFMTCAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfR0VUVyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUFVUVyAxCnwgI2RlZmluZSBf X1VTRV9NSU5HV19BTlNJX1NURElPIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9FQ1ZUIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9GQ1ZUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HQ1ZUIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9TVFJOTEVOIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJUT0lN QVggMQp8ICNkZWZpbmUgX1VTRV9TVERfU1RBVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRVhF Q1ZQRSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfQ0xFQVJFUlJfVU5MT0NLRUQgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX0ZFT0ZfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZFUlJP Ul9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkZMVVNIX1VOTE9DS0VEIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9GR0VUU19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xf RlBVVENfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZQVVRTX1VOTE9DS0VEIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9GUkVBRF9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfRldSSVRFX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRDX1VOTE9DS0VE IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRDSEFSX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9QVVRDX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRDSEFSX1VO TE9DS0VEIDEKfCAjZGVmaW5lIEdFVEdST1VQU19UIGdpZF90CnwgI2RlZmluZSBIQVZFX0RF Q0xfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19QT1NJWCAxCnwgI2Rl ZmluZSBQUk9NT1RFRF9NT0RFX1QgbW9kZV90CnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVVRJ TUVTIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElO X0VYUEVDVCAxCnwgI2RlZmluZSBIQVZFX0JZVEVTV0FQX0ggMQp8ICNkZWZpbmUgR05VTElC X0NBTk9OSUNBTElaRV9MR1BMIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTktBVCAxCnwgI2Rl ZmluZSBIQVZFX0NMT0NLX0dFVFJFUyAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX0dFVFRJTUUg MQp8ICNkZWZpbmUgSEFWRV9DTE9DS19TRVRUSU1FIDEKfCAjZGVmaW5lIEdOVUxJQl9DTE9T RV9TVFJFQU0gMQp8ICNkZWZpbmUgSEFWRV9DT1BZX0ZJTEVfUkFOR0UgMQp8ICNkZWZpbmUg SEFWRV9TVFJVQ1RfRElSRU5UX0RfVFlQRSAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAx CnwgI2RlZmluZSBHTlVMSUJfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRE9Q RU5ESVIgMQp8ICNkZWZpbmUgR05VTElCX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBHRVRYQVRU Ul9XSVRIX1BPU0lYX0FDTFMgMQp8ICNkZWZpbmUgRkxFWElCTEVfQVJSQVlfTUVNQkVSIC8q Ki8KfCAjZGVmaW5lIEhBVkVfREVDTF9fX0ZQRU5ESU5HIDEKfCAjZGVmaW5lIEhBVkVfRlJF RV9QT1NJWCAxCnwgI2RlZmluZSBIQVZFX1NZU19NT1VOVF9IIDEKfCAjZGVmaW5lIFNUQVRf U1RBVFZGUyAxCnwgI2RlZmluZSBTVEFUX1NUQVRGUzJfRlJTSVpFIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1NUQVRGU19IIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FTlMgMQp8ICNkZWZpbmUg SEFWRV9HRVRMT0FEQVZHIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkFORE9NIDEKfCAjZGVmaW5l IEhBVkVfVElNRVNQRUNfR0VUIDEKfCAjZGVmaW5lIEdFVFRJTUVPRkRBWV9USU1FWk9ORSB2 b2lkCnwgI2RlZmluZSBIQVZFX19fSU5MSU5FIDEKfCAjZGVmaW5lIEhBVkVfR01QX0ggMQp8 ICNkZWZpbmUgSEFWRV9NRU1NRU0gMQp8ICNkZWZpbmUgSEFWRV9NRU1QQ1BZIDEKfCAjZGVm aW5lIEhBVkVfTUVNUkNIUiAxCnwgI2RlZmluZSBIQVZFX01LT1NURU1QIDEKfCAjZGVmaW5l IEdOVUxJQl9NS09TVEVNUCAxCnwgI2RlZmluZSBORUVEX01LVElNRV9XT1JLSU5HIDEKfCAj ZGVmaW5lIEhBVkVfQlVHX0JJR19OQU5PU0xFRVAgMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFS QU1fSCAxCnwgI2RlZmluZSBIQVZFX1NDSEVEX0dFVEFGRklOSVRZIDEKfCAjZGVmaW5lIEhB VkVfU0NIRURfR0VUQUZGSU5JVFlfTElLRV9HTElCQyAxCnwgI2RlZmluZSBteV9zdHJmdGlt ZSBuc3RyZnRpbWUKfCAjZGVmaW5lIEhBVkVfUElQRTIgMQp8ICNkZWZpbmUgVVNFX1hBVFRS IDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZFX1NJR0RFU0NS X05QIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfQVRJTV9UVl9OU0VDIDEKfCAj ZGVmaW5lIFRZUEVPRl9TVFJVQ1RfU1RBVF9TVF9BVElNX0lTX1NUUlVDVF9USU1FU1BFQyAx CnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAg ICAgICAgICNpbmNsdWRlIDxzeXMvc3RhdC5oPgp8IAp8IGludAp8IG1haW4gKHZvaWQpCnwg ewp8IHN0YXRpYyBzdHJ1Y3Qgc3RhdCBhY19hZ2dyOwp8IGlmIChhY19hZ2dyLnN0X2JpcnRo dGltZW5zZWMpCnwgcmV0dXJuIDA7CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3Vy ZTo0MTA3ODogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzog SW4gZnVuY3Rpb24gJ21haW4nOgpjb25mdGVzdC5jOjQxOToxOTogZXJyb3I6ICdzdHJ1Y3Qg c3RhdCcgaGFzIG5vIG1lbWJlciBuYW1lZCAnc3RfYmlydGh0aW1lbnNlYycKICA0MTkgfCBp ZiAoc2l6ZW9mIGFjX2FnZ3Iuc3RfYmlydGh0aW1lbnNlYykKICAgICAgfCAgICAgICAgICAg ICAgICAgICBeCmNvbmZpZ3VyZTo0MTA3ODogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHBy 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 KiovCnwgI2RlZmluZSBTSUdOQUxTX1ZJQV9DSEFSQUNURVJTIDEKfCAjZGVmaW5lIEdDX1NF VEpNUF9XT1JLUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgSEFW RV9fU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVf U1RBQ0tfT1ZFUkZMT1dfSEFORExJTkcgMQp8ICNkZWZpbmUgVVNHIC8qKi8KfCAjZGVmaW5l IEdOVV9MSU5VWCAvKiovCnwgI2RlZmluZSBTSVpFT0ZfU1BFRURfVCA0CnwgI2RlZmluZSBV U0FCTEVfRklPTlJFQUQgMQp8ICNkZWZpbmUgVVNBQkxFX1NJR0lPIDEKfCAjZGVmaW5lIENP UFlSSUdIVCAiQ29weXJpZ2h0IChDKSAyMDIzIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwg SW5jLiIKfCAjZGVmaW5lIFRFUk1fSEVBREVSICJndGt1dGlsLmgiCnwgI2RlZmluZSBFTUFD U19DT05GSUdVUkFUSU9OICJ4ODZfNjQtcGMtbGludXgtZ251Igp8ICNkZWZpbmUgRU1BQ1Nf Q09ORklHX09QVElPTlMgIiIKfCAjZGVmaW5lIEhBVkVfWF9XSU5ET1dTIDEKfCAjZGVmaW5l IEhBVkVfWDExIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0FUVFJJQlVURV9BTElHTkVEIDEK fCAjZGVmaW5lIEhBVkVfVFlQRU9GIDEKfCAjZGVmaW5lIEhBVkVfU1RBVEVNRU5UX0VYUFJF U1NJT05TIDEKfCAjZGVmaW5lIE1BTExPQ18wX0lTX05PTk5VTEwgMQp8ICNkZWZpbmUgSEFW RV9TWVNfQUNMX0ggMQp8ICNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZJTEUgMQp8ICNkZWZpbmUg SEFWRV9BQ0xfR0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX1NFVF9GSUxFIDEKfCAjZGVm aW5lIEhBVkVfQUNMX1NFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUkVFIDEKfCAjZGVm aW5lIEhBVkVfQUNMX0ZST01fTU9ERSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX1RFWFQg MQp8ICNkZWZpbmUgSEFWRV9BQ0xfREVMRVRFX0RFRl9GSUxFIDEKfCAjZGVmaW5lIEhBVkVf QUNMX0VYVEVOREVEX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfTElCQUNMX0ggMQp8ICNk ZWZpbmUgSEFWRV9BQ0xfRU5UUklFUyAxCnwgI2RlZmluZSBIQVZFX0FDTF9GSVJTVF9FTlRS WSAxCnwgI2RlZmluZSBVU0VfQUNMIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNk ZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgTFNUQVRfRk9MTE9XU19TTEFTSEVEX1NZ TUxJTksgMQp8ICNkZWZpbmUgRlVOQ19SRUFMUEFUSF9XT1JLUyAxCnwgI2RlZmluZSBIQVZF X0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0dFVENXRCAxCnwgI2RlZmluZSByZXN0cmlj dCBfX3Jlc3RyaWN0X18KfCAjZGVmaW5lIEhBVkVfRU5WSVJPTl9ERUNMIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9TVFJNT0RFIDAKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZp bmUgSEFWRV9HRVRPUFRfTE9OR19PTkxZIDEKfCAjZGVmaW5lIEhBVkVfTE9OR19MT05HX0lO VCAxCnwgI2RlZmluZSBIQVZFX1VOU0lHTkVEX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX01FTU1FTSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfTUVNUkNIUiAxCnwgI2Rl ZmluZSBIQVZFX01JTk1BWF9JTl9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBUSU1FX1RfSVNf U0lHTkVEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTEFSTSAxCnwgI2RlZmluZSBIQVZFX1NU UlVDVF9UTV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fWk9ORSAxCnwgI2RlZmluZSBI QVZFX1RNX0dNVE9GRiAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVF9UIDEKfCAjZGVmaW5lIEhB VkVfV0NIQVJfVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkNMT1NFQUxMIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9HRVRXIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRXIDEKfCAjZGVmaW5l IF9fVVNFX01JTkdXX0FOU0lfU1RESU8gMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VDVlQgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX0ZDVlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dDVlQgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX1NUUk5MRU4gMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUlRP SU1BWCAxCnwgI2RlZmluZSBfVVNFX1NURF9TVEFUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9F WEVDVlBFIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9DTEVBUkVSUl9VTkxPQ0tFRCAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfRkVPRl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkVS Uk9SX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRkxVU0hfVU5MT0NLRUQgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX0ZHRVRTX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9GUFVUQ19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRlBVVFNfVU5MT0NLRUQg MQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZSRUFEX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9GV1JJVEVfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVENfVU5MT0NL RUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVENIQVJfVU5MT0NLRUQgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX1BVVENfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BVVENIQVJf VU5MT0NLRUQgMQp8ICNkZWZpbmUgR0VUR1JPVVBTX1QgZ2lkX3QKfCAjZGVmaW5lIEhBVkVf REVDTF9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX1BPU0lYIDEKfCAj ZGVmaW5lIFBST01PVEVEX01PREVfVCBtb2RlX3QKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19V VElNRVMgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxU SU5fRVhQRUNUIDEKfCAjZGVmaW5lIEhBVkVfQllURVNXQVBfSCAxCnwgI2RlZmluZSBHTlVM SUJfQ0FOT05JQ0FMSVpFX0xHUEwgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKfCAj ZGVmaW5lIEhBVkVfQ0xPQ0tfR0VUUkVTIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tfR0VUVElN RSAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX1NFVFRJTUUgMQp8ICNkZWZpbmUgR05VTElCX0NM T1NFX1NUUkVBTSAxCnwgI2RlZmluZSBIQVZFX0NPUFlfRklMRV9SQU5HRSAxCnwgI2RlZmlu ZSBIQVZFX1NUUlVDVF9ESVJFTlRfRF9UWVBFIDEKfCAjZGVmaW5lIEhBVkVfRkFDQ0VTU0FU IDEKfCAjZGVmaW5lIEdOVUxJQl9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZE T1BFTkRJUiAxCnwgI2RlZmluZSBHTlVMSUJfRkRPUEVORElSIDEKfCAjZGVmaW5lIEdFVFhB VFRSX1dJVEhfUE9TSVhfQUNMUyAxCnwgI2RlZmluZSBGTEVYSUJMRV9BUlJBWV9NRU1CRVIg LyoqLwp8ICNkZWZpbmUgSEFWRV9ERUNMX19fRlBFTkRJTkcgMQp8ICNkZWZpbmUgSEFWRV9G UkVFX1BPU0lYIDEKfCAjZGVmaW5lIEhBVkVfU1lTX01PVU5UX0ggMQp8ICNkZWZpbmUgU1RB VF9TVEFUVkZTIDEKfCAjZGVmaW5lIFNUQVRfU1RBVEZTMl9GUlNJWkUgMQp8ICNkZWZpbmUg SEFWRV9TWVNfU1RBVEZTX0ggMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVOUyAxCnwgI2RlZmlu ZSBIQVZFX0dFVExPQURBVkcgMQp8ICNkZWZpbmUgSEFWRV9HRVRSQU5ET00gMQp8ICNkZWZp bmUgSEFWRV9USU1FU1BFQ19HRVQgMQp8ICNkZWZpbmUgR0VUVElNRU9GREFZX1RJTUVaT05F IHZvaWQKfCAjZGVmaW5lIEhBVkVfX19JTkxJTkUgMQp8ICNkZWZpbmUgSEFWRV9HTVBfSCAx CnwgI2RlZmluZSBIQVZFX01FTU1FTSAxCnwgI2RlZmluZSBIQVZFX01FTVBDUFkgMQp8ICNk ZWZpbmUgSEFWRV9NRU1SQ0hSIDEKfCAjZGVmaW5lIEhBVkVfTUtPU1RFTVAgMQp8ICNkZWZp bmUgR05VTElCX01LT1NURU1QIDEKfCAjZGVmaW5lIE5FRURfTUtUSU1FX1dPUktJTkcgMQp8 ICNkZWZpbmUgSEFWRV9CVUdfQklHX05BTk9TTEVFUCAxCnwgI2RlZmluZSBIQVZFX1NZU19Q QVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfU0NIRURfR0VUQUZGSU5JVFkgMQp8ICNkZWZpbmUg SEFWRV9TQ0hFRF9HRVRBRkZJTklUWV9MSUtFX0dMSUJDIDEKfCAjZGVmaW5lIG15X3N0cmZ0 aW1lIG5zdHJmdGltZQp8ICNkZWZpbmUgSEFWRV9QSVBFMiAxCnwgI2RlZmluZSBVU0VfWEFU VFIgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKfCAjZGVmaW5lIEhBVkVfU0lHREVT Q1JfTlAgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9BVElNX1RWX05TRUMgMQp8 ICNkZWZpbmUgVFlQRU9GX1NUUlVDVF9TVEFUX1NUX0FUSU1fSVNfU1RSVUNUX1RJTUVTUEVD IDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN5cy90eXBlcy5oPgp8 ICAgICAgICAgI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CnwgCnwgaW50CnwgbWFpbiAodm9pZCkK fCB7Cnwgc3RhdGljIHN0cnVjdCBzdGF0IGFjX2FnZ3I7CnwgaWYgKHNpemVvZiBhY19hZ2dy LnN0X2JpcnRodGltZW5zZWMpCnwgcmV0dXJuIDA7CnwgICA7CnwgICByZXR1cm4gMDsKfCB9 CmNvbmZpZ3VyZTo0MTA3ODogcmVzdWx0OiBubwpjb25maWd1cmU6NDEwODg6IGNoZWNraW5n IGZvciBzdHJ1Y3Qgc3RhdC5zdF9iaXJ0aHRpbS50dl9uc2VjCmNvbmZpZ3VyZTo0MTA4ODog Z2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzogSW4gZnVuY3Rp b24gJ21haW4nOgpjb25mdGVzdC5jOjQxOToxMjogZXJyb3I6ICdzdHJ1Y3Qgc3RhdCcgaGFz IG5vIG1lbWJlciBuYW1lZCAnc3RfYmlydGh0aW0nCiAgNDE5IHwgaWYgKGFjX2FnZ3Iuc3Rf YmlydGh0aW0udHZfbnNlYykKICAgICAgfCAgICAgICAgICAgIF4KY29uZmlndXJlOjQxMDg4 OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMu aCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2RlZmluZSBQQUNL QUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIzMC4wLjUw Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAzMC4wLjUwIgp8ICNkZWZp bmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5l IFBBQ0tBR0VfVVJMICJodHRwczovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAj ZGVmaW5lIEhBVkVfUERVTVBFUiAxCnwgI2RlZmluZSBIQVZFX1NURElPX0ggMQp8ICNkZWZp bmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5l IEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5l IEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZp bmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfRlNfSCAxCnwgI2RlZmlu ZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2Rl ZmluZSBIQVZFX1BUWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNk ZWZpbmUgSEFWRV9VVE1QX0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfTFNBTl9JTlRF UkZBQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9BU0FOX0lOVEVSRkFDRV9IIDEK fCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0NPTU1PTl9JTlRFUkZBQ0VfREVGU19IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0gg MQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAx CnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAx CnwgI2RlZmluZSBIQVZFX1NURElPX0VYVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1ZGU19I IDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfQ0RFRlNf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9JRUVFNzU0 X0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxF Q1RfSCAxCnwgI2RlZmluZSBIQVZFX1NUREJPT0xfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19S QU5ET01fSCAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgX0FMTF9TT1VS Q0UgMQp8ICNkZWZpbmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJD RSAxCnwgI2RlZmluZSBfSFBVWF9BTFRfWE9QRU5fU09DS0VUX0FQSSAxCnwgI2RlZmluZSBf TkVUQlNEX1NPVVJDRSAxCnwgI2RlZmluZSBfT1BFTkJTRF9TT1VSQ0UgMQp8ICNkZWZpbmUg X1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182 MDU1OV9BVFRSSUJTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9C RlBfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0RGUF9FWFRfXyAx CnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRVhUX18gMQp8ICNkZWZpbmUgX19T VERDX1dBTlRfSUVDXzYwNTU5X0ZVTkNTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5U X0lFQ182MDU1OV9UWVBFU19FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9MSUJfRVhU Ml9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX01BVEhfU1BFQ19GVU5DU19fIDEKfCAjZGVm aW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVm aW5lIEdDQ19MSU5UIDEKfCAjZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUvbGludXgiCnwgI2Rl ZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAxCnwgI2RlZmluZSBIQVZFX0FMU0EgMQp8ICNk ZWZpbmUgSEFWRV9TT1VORCAxCnwgI2RlZmluZSBIQVZFX1BFUlNPTkFMSVRZX0FERFJfTk9f UkFORE9NSVpFIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5GTyAxCnwgI2RlZmluZSBM SU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUgSEFWRV9URVJNX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUX0lGX0ggMQp8ICNkZWZpbmUg SEFWRV9JRkFERFJTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0ZMQUdT IDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9IV0FERFIgMQp8ICNkZWZpbmUg SEFWRV9TVFJVQ1RfSUZSRVFfSUZSX05FVE1BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1Rf SUZSRVFfSUZSX0JST0FEQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJf QUREUiAxCnwgI2RlZmluZSBIQVZFX1NCUksgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0la RSAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9WRk9SSyAxCnwgI2Rl ZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0NBTk9OSUNBTElaRV9GSUxFX05B TUUgMQp8ICNkZWZpbmUgSEFWRV9SRUFMUEFUSCAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEK fCAjZGVmaW5lIEhBVkVfRkNITU9EQVQgMQp8ICNkZWZpbmUgSEFWRV9MQ0hNT0QgMQp8ICNk ZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2RlZmlu ZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZF X0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUgSEFW RV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmlu ZSBIQVZFX0lTQkxBTksgMQp8ICNkZWZpbmUgSEFWRV9JU1dDVFlQRSAxCnwgI2RlZmluZSBI QVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFW RV9MT0NBTFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZp bmUgU1lTVEVNX01BTExPQyAxCnwgI2RlZmluZSBIQVZFX01NQVAgMQp8ICNkZWZpbmUgSEFW RV9QVEhSRUFEIDEKfCAjZGVmaW5lIFRIUkVBRFNfRU5BQkxFRCAxCnwgI2RlZmluZSBIQVZF X1hLQiAxCnwgI2RlZmluZSBIQVZFX1hLQlJFRlJFU0hLRVlCT0FSRE1BUFBJTkcgMQp8ICNk ZWZpbmUgSEFWRV9YS0JGUkVFTkFNRVMgMQp8ICNkZWZpbmUgSEFWRV9YUk1TRVREQVRBQkFT RSAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNPVVJDRVNUUklORyAxCnwgI2RlZmluZSBI QVZFX1hTQ1JFRU5OVU1CRVJPRlNDUkVFTiAxCnwgI2RlZmluZSBIQVZFX1hESVNQTEFZQ0VM TFMgMQp8ICNkZWZpbmUgSEFWRV9YREVTVFJPWVNVQldJTkRPV1MgMQp8ICNkZWZpbmUgSEFW RV9YMTFSNiAxCnwgI2RlZmluZSBIQVZFX1hfSTE4TiAxCnwgI2RlZmluZSBIQVZFX1hJQ0NB TExCQUNLX0NBTExCQUNLIDEKfCAjZGVmaW5lIEhBVkVfWDExUjZfWElNIDEKfCAjZGVmaW5l IEhBVkVfUlNWRyAxCnwgI2RlZmluZSBIQVZFX1dFQlAgMQp8ICNkZWZpbmUgSEFWRV9TUUxJ VEUzIDEKfCAjZGVmaW5lIEhBVkVfU1FMSVRFM19MT0FEX0VYVEVOU0lPTiAxCnwgI2RlZmlu ZSBIQVZFX0dFVEFERFJJTkZPX0EgMQp8ICNkZWZpbmUgSEFWRV9HVEszIDEKfCAjZGVmaW5l IEdES19ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIEdMSUJfRElT QUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAxCnwgI2RlZmluZSBVU0VfR1RLIDEKfCAjZGVm aW5lIEhBVkVfTUFMTE9DX1RSSU0gMQp8ICNkZWZpbmUgSEFWRV9EQlVTIDEKfCAjZGVmaW5l IEhBVkVfREJVU19XQVRDSF9HRVRfVU5JWF9GRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVFlQ RV9JU19WQUxJRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfQlVTX05BTUUgMQp8 ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX1BBVEggMQp8ICNkZWZpbmUgSEFWRV9EQlVT X1ZBTElEQVRFX0lOVEVSRkFDRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfTUVN QkVSIDEKfCAjZGVmaW5lIEhBVkVfR1NFVFRJTkdTIDEKfCAjZGVmaW5lIEhBVkVfTElCU0VM SU5VWCAxCnwgI2RlZmluZSBIQVZFX0dOVVRMUyAxCnwgI2RlZmluZSBIQVZFX0xJQlNZU1RF TUQgMQp8ICNkZWZpbmUgSEFWRV9KU09OIDEKfCAjZGVmaW5lIEhBVkVfSU5PVElGWSAxCnwg I2RlZmluZSBVU0VfRklMRV9OT1RJRlkgMQp8ICNkZWZpbmUgVVNFX1RPT0xLSVRfU0NST0xM X0JBUlMgMQp8ICNkZWZpbmUgSEFWRV9YSU0gMQp8ICNkZWZpbmUgVVNFX1hJTSAxCnwgI2Rl ZmluZSBIQVZFX1hSRU5ERVIgMQp8ICNkZWZpbmUgVVNFX0NBSVJPX1hDQiAxCnwgI2RlZmlu ZSBVU0VfQ0FJUk8gMQp8ICNkZWZpbmUgSEFWRV9GUkVFVFlQRSAxCnwgI2RlZmluZSBIQVZF X0ZUX0ZBQ0VfR0VUQ0hBUlZBUklBTlRJTkRFWCAxCnwgI2RlZmluZSBIQVZFX0xJQk9URiAx CnwgI2RlZmluZSBIQVZFX09URl9HRVRfVkFSSUFUSU9OX0dMWVBIUyAxCnwgI2RlZmluZSBI QVZFX00xN05fRkxUIDEKfCAjZGVmaW5lIEhBVkVfSEFSRkJVWlogMQp8ICNkZWZpbmUgVVNF X1hDQiAxCnwgI2RlZmluZSBIQVZFX1hQTSAxCnwgI2RlZmluZSBIQVZFX0pQRUcgMQp8ICNk ZWZpbmUgSEFWRV9MQ01TMiAxCnwgI2RlZmluZSBIQVZFX1pMSUIgMQp8ICNkZWZpbmUgRFlO QU1JQ19MSUJfU1VGRklYICIuc28iCnwgI2RlZmluZSBEWU5BTUlDX0xJQl9TRUNPTkRBUllf U1VGRklYICIiCnwgI2RlZmluZSBIQVZFX0RMQUREUiAxCnwgI2RlZmluZSBIQVZFX01PRFVM RVMgMQp8ICNkZWZpbmUgTU9EVUxFU19TVUZGSVggIi5zbyIKfCAjZGVmaW5lIE5BVElWRV9F TElTUF9TVUZGSVggIi5lbG4iCnwgI2RlZmluZSBIQVZFX1BORyAxCnwgI2RlZmluZSBIQVZF X1RJRkYgMQp8ICNkZWZpbmUgSEFWRV9HSUYgMQp8ICNkZWZpbmUgSEFWRV9HUE0gMQp8ICNk ZWZpbmUgSEFWRV9YX1NNIDEKfCAjZGVmaW5lIEhBVkVfWFJBTkRSIDEKfCAjZGVmaW5lIEhB VkVfWElORVJBTUEgMQp8ICNkZWZpbmUgSEFWRV9YRklYRVMgMQp8ICNkZWZpbmUgSEFWRV9Y SU5QVVQyIDEKfCAjZGVmaW5lIEhBVkVfWElTQ1JPTExDTEFTU0lORk9fVFlQRSAxCnwgI2Rl ZmluZSBIQVZFX1hJVE9VQ0hDTEFTU0lORk9fVFlQRSAxCnwgI2RlZmluZSBIQVZFX1hJQkFS UklFUlJFTEVBU0VQT0lOVEVSSU5GT19ERVZJQ0VJRCAxCnwgI2RlZmluZSBIQVZFX1hJR0VT VFVSRUNMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVfWFNZTkMgMQp8ICNkZWZpbmUg SEFWRV9YU1lOQ1RSSUdHRVJGRU5DRSAxCnwgI2RlZmluZSBIQVZFX1hEQkUgMQp8ICNkZWZp bmUgSEFWRV9YQ0JfU0hBUEUgMQp8ICNkZWZpbmUgSEFWRV9YU0hBUEUgMQp8ICNkZWZpbmUg SEFWRV9YQ09NUE9TSVRFIDEKfCAjZGVmaW5lIEhBVkVfTElCWE1MMiAxCnwgI2RlZmluZSBI QVZFX0xJTlVYX1NFQ0NPTVBfSCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9TRVRf TU9ERV9GSUxURVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdf VFNZTkMgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GSUxURVJfSCAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NF Q0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMgMQp8ICNkZWZpbmUgU0laRU9GX0xPTkcgOAp8ICNk ZWZpbmUgSEFWRV9BQ0NFUFQ0IDEKfCAjZGVmaW5lIEhBVkVfRkNIRElSIDEKfCAjZGVmaW5l IEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNBR0UgMQp8ICNkZWZp bmUgSEFWRV9HRVRfQ1VSUkVOVF9ESVJfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0xSQU5ENDgg MQp8ICNkZWZpbmUgSEFWRV9SQU5ET00gMQp8ICNkZWZpbmUgSEFWRV9SSU5UIDEKfCAjZGVm aW5lIEhBVkVfVFJVTkMgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZpbmUgSEFW RV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FMRSAxCnwgI2RlZmluZSBI QVZFX05FV0xPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJMSU1JVCAxCnwgI2RlZmluZSBI QVZFX1NFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5lIEhB VkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSU0lHTkFMIDEKfCAjZGVm aW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfU0VORFRPIDEKfCAjZGVmaW5l IEhBVkVfUkVDVkZST00gMQp8ICNkZWZpbmUgSEFWRV9HRVRTT0NLTkFNRSAxCnwgI2RlZmlu ZSBIQVZFX0dFVElGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9GUkVFSUZBRERSUyAxCnwgI2Rl ZmluZSBIQVZFX0dBSV9TVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZFX1NZTkMgMQp8ICNkZWZp bmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0VORFBXRU5UIDEKfCAjZGVmaW5l IEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRHUkVOVCAxCnwgI2RlZmluZSBI QVZFX1JFTkFNRUFUMiAxCnwgI2RlZmluZSBIQVZFX0NGTUFLRVJBVyAxCnwgI2RlZmluZSBI QVZFX0NGU0VUU1BFRUQgMQp8ICNkZWZpbmUgSEFWRV9fX0VYRUNVVEFCTEVfU1RBUlQgMQp8 ICNkZWZpbmUgSEFWRV9MT0cyIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TRVROQU1FX05Q IDEKfCAjZGVmaW5lIEhBVkVfQUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xf QUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX01BRFZJU0UgMQp8ICNkZWZp bmUgSEFWRV9fX0JVSUxUSU5fRlJBTUVfQUREUkVTUyAxCnwgI2RlZmluZSBIQVZFX19fQlVJ TFRJTl9VTldJTkRfSU5JVCAxCnwgI2RlZmluZSBIQVZFX0ZTRUVLTyAxCnwgI2RlZmluZSBI QVZFX0dSQU5UUFQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQVCAxCnwgI2RlZmluZSBIQVZFX1BP U0lYX09QRU5QVCAxCnwgI2RlZmluZSBURVJNSU5GTyAxCnwgI2RlZmluZSBURVJNSU5GT19E RUZJTkVTX0JDIDEKfCAjZGVmaW5lIEhBVkVfVElNRVJGRCAxCnwgI2RlZmluZSBIQVZFX1ZB TEdSSU5EX1ZBTEdSSU5EX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVU5JUEFJUl9VTklD T0RFIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dP UktJTkdfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1NOUFJJTlRGIDEKfCAjZGVmaW5lIEhBVkVf U1BBV05fSCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOIDEKfCAjZGVmaW5lIEhBVkVf UE9TSVhfU1BBV05fRklMRV9BQ1RJT05TX0FERENIRElSX05QIDEKfCAjZGVmaW5lIEhBVkVf UE9TSVhfU1BBV05BVFRSX1NFVEZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QT1NJWF9T UEFXTl9TRVRTSUQgMQp8ICNkZWZpbmUgSEFWRV9HTElCIDEKfCAjZGVmaW5lIEhBVkVfTEFO R0lORk9fQ09ERVNFVCAxCnwgI2RlZmluZSBIQVZFX0xBTkdJTkZPX19OTF9QQVBFUl9XSURU SCAxCnwgI2RlZmluZSBIQVZFX01CU1RBVEVfVCAxCnwgI2RlZmluZSBBTVBFUlNBTkRfRlVM TF9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUFRZUyAxCnwgI2RlZmluZSBIQVZFX1NPQ0tFVFMg MQp8ICNkZWZpbmUgTlVMTF9ERVZJQ0UgIi9kZXYvbnVsbCIKfCAjZGVmaW5lIFNFUENIQVIg JzonCnwgI2RlZmluZSBzdWJwcm9jZXNzZXMgMQp8ICNkZWZpbmUgVVNFUl9GVUxMX05BTUUg cHctPnB3X2dlY29zCnwgI2RlZmluZSBESVJFQ1RPUllfU0VQICcvJwp8ICNkZWZpbmUgSVNf REVWSUNFX1NFUChfY18pIDAKfCAjZGVmaW5lIElTX0RJUkVDVE9SWV9TRVAoX2NfKSAoKF9j XykgPT0gRElSRUNUT1JZX1NFUCkKfCAjZGVmaW5lIElTX0FOWV9TRVAoX2NfKSAoSVNfRElS RUNUT1JZX1NFUCAoX2NfKSkKfCAjZGVmaW5lIEhBVkVfUFJPQ0ZTIDEKfCAjZGVmaW5lIERF RkFVTFRfU09VTkRfREVWSUNFICIvZGV2L2RzcCIKfCAjZGVmaW5lIElOVEVSUlVQVF9JTlBV VCAxCnwgI2RlZmluZSBOQVJST1dQUk9UTyAxCnwgI2RlZmluZSBVTklYOThfUFRZUyAxCnwg I2RlZmluZSBQVFlfSVRFUkFUSU9OIGludCBpOyBmb3IgKGkgPSAwOyBpIDwgMTsgaSsrKQp8 ICNkZWZpbmUgUFRZX1RUWV9OQU1FX1NQUklOVEYgeyBjaGFyICpwdHluYW1lID0gMDsgc2ln c2V0X3QgYmxvY2tlZDsgc2lnZW1wdHlzZXQgKCZibG9ja2VkKTsgc2lnYWRkc2V0ICgmYmxv Y2tlZCwgU0lHQ0hMRCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX0JMT0NLLCAmYmxvY2tlZCwg MCk7IGlmIChncmFudHB0IChmZCkgIT0gLTEgJiYgdW5sb2NrcHQgKGZkKSAhPSAtMSkgcHR5 bmFtZSA9IHB0c25hbWUoZmQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19VTkJMT0NLLCAmYmxv Y2tlZCwgMCk7IGlmICghcHR5bmFtZSkgeyBlbWFjc19jbG9zZSAoZmQpOyByZXR1cm4gLTE7 IH0gc25wcmludGYgKHB0eV9uYW1lLCBQVFlfTkFNRV9TSVpFLCAiJXMiLCBwdHluYW1lKTsg fQp8ICNkZWZpbmUgUFRZX09QRU4gZG8geyBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwg T19DTE9FWEVDIHwgT19OT0NUVFkpOyBpZiAoZmQgPCAwICYmIGVycm5vID09IEVJTlZBTCkg ZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fTk9DVFRZKTsgfSB3aGlsZSAoZmFsc2Up CnwgI2RlZmluZSBQVFlfTkFNRV9TUFJJTlRGIC8qKi8KfCAjZGVmaW5lIFNJR05BTFNfVklB X0NIQVJBQ1RFUlMgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAjZGVmaW5lIEdD X1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBIQVZFX19TRVRKTVAgMQp8ICNkZWZpbmUgSEFW RV9TSUdTRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TVEFDS19PVkVSRkxPV19IQU5ETElORyAx CnwgI2RlZmluZSBVU0cgLyoqLwp8ICNkZWZpbmUgR05VX0xJTlVYIC8qKi8KfCAjZGVmaW5l IFNJWkVPRl9TUEVFRF9UIDQKfCAjZGVmaW5lIFVTQUJMRV9GSU9OUkVBRCAxCnwgI2RlZmlu ZSBVU0FCTEVfU0lHSU8gMQp8ICNkZWZpbmUgQ09QWVJJR0hUICJDb3B5cmlnaHQgKEMpIDIw MjMgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuIgp8ICNkZWZpbmUgVEVSTV9IRUFE RVIgImd0a3V0aWwuaCIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR1VSQVRJT04gIng4Nl82NC1w Yy1saW51eC1nbnUiCnwgI2RlZmluZSBFTUFDU19DT05GSUdfT1BUSU9OUyAiIgp8ICNkZWZp bmUgSEFWRV9YX1dJTkRPV1MgMQp8ICNkZWZpbmUgSEFWRV9YMTEgMQp8ICNkZWZpbmUgSEFW RV9TVFJVQ1RfQVRUUklCVVRFX0FMSUdORUQgMQp8ICNkZWZpbmUgSEFWRV9UWVBFT0YgMQp8 ICNkZWZpbmUgSEFWRV9TVEFURU1FTlRfRVhQUkVTU0lPTlMgMQp8ICNkZWZpbmUgTUFMTE9D XzBfSVNfTk9OTlVMTCAxCnwgI2RlZmluZSBIQVZFX1NZU19BQ0xfSCAxCnwgI2RlZmluZSBI QVZFX0FDTF9HRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRkQgMQp8ICNkZWZp bmUgSEFWRV9BQ0xfU0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZEIDEKfCAj ZGVmaW5lIEhBVkVfQUNMX0ZSRUUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9NT0RFIDEK fCAjZGVmaW5lIEhBVkVfQUNMX0ZST01fVEVYVCAxCnwgI2RlZmluZSBIQVZFX0FDTF9ERUxF VEVfREVGX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRVhURU5ERURfRklMRSAxCnwgI2Rl ZmluZSBIQVZFX0FDTF9MSUJBQ0xfSCAxCnwgI2RlZmluZSBIQVZFX0FDTF9FTlRSSUVTIDEK fCAjZGVmaW5lIEhBVkVfQUNMX0ZJUlNUX0VOVFJZIDEKfCAjZGVmaW5lIFVTRV9BQ0wgMQp8 ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2Rl ZmluZSBMU1RBVF9GT0xMT1dTX1NMQVNIRURfU1lNTElOSyAxCnwgI2RlZmluZSBGVU5DX1JF QUxQQVRIX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhB VkVfR0VUQ1dEIDEKfCAjZGVmaW5lIHJlc3RyaWN0IF9fcmVzdHJpY3RfXwp8ICNkZWZpbmUg SEFWRV9FTlZJUk9OX0RFQ0wgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUk1PREUgMAp8ICNk ZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9MT05HX09OTFkg MQp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfVU5TSUdO RURfTE9OR19MT05HX0lOVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfTUVNTUVNIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9NRU1SQ0hSIDEKfCAjZGVmaW5lIEhBVkVfTUlOTUFYX0lOX1NZU19Q QVJBTV9IIDEKfCAjZGVmaW5lIFRJTUVfVF9JU19TSUdORUQgMQp8ICNkZWZpbmUgSEFWRV9E RUNMX0FMQVJNIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1RNX1RNX1pPTkUgMQp8ICNkZWZp bmUgSEFWRV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fR01UT0ZGIDEKfCAjZGVmaW5l IEhBVkVfU0lHU0VUX1QgMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9UIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9GQ0xPU0VBTEwgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVFcgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX1BVVFcgMQp8ICNkZWZpbmUgX19VU0VfTUlOR1dfQU5TSV9TVERJTyAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfRUNWVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkNWVCAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfR0NWVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSTkxF TiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIF9VU0VfU1RE X1NUQVQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VYRUNWUEUgMQp8ICNkZWZpbmUgSEFWRV9E RUNMX0NMRUFSRVJSX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRU9GX1VOTE9D S0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRVJST1JfVU5MT0NLRUQgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX0ZGTFVTSF9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkdFVFNf VU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZQVVRDX1VOTE9DS0VEIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9GUFVUU19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRlJF QURfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZXUklURV9VTkxPQ0tFRCAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfR0VUQ19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xf R0VUQ0hBUl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUFVUQ19VTkxPQ0tFRCAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfUFVUQ0hBUl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBHRVRH Uk9VUFNfVCBnaWRfdAp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVERUQUJMRVNJWkUgMQp8ICNk ZWZpbmUgSEFWRV9NQUxMT0NfUE9TSVggMQp8ICNkZWZpbmUgUFJPTU9URURfTU9ERV9UIG1v ZGVfdAp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1VUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0FM TE9DQSAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9FWFBFQ1QgMQp8ICNkZWZpbmUgSEFW RV9CWVRFU1dBUF9IIDEKfCAjZGVmaW5lIEdOVUxJQl9DQU5PTklDQUxJWkVfTEdQTCAxCnwg I2RlZmluZSBIQVZFX1JFQURMSU5LQVQgMQp8ICNkZWZpbmUgSEFWRV9DTE9DS19HRVRSRVMg MQp8ICNkZWZpbmUgSEFWRV9DTE9DS19HRVRUSU1FIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tf U0VUVElNRSAxCnwgI2RlZmluZSBHTlVMSUJfQ0xPU0VfU1RSRUFNIDEKfCAjZGVmaW5lIEhB VkVfQ09QWV9GSUxFX1JBTkdFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0RJUkVOVF9EX1RZ UEUgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgR05VTElCX0ZBQ0NF U1NBVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkRPUEVORElSIDEKfCAjZGVmaW5lIEdOVUxJ Ql9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgR0VUWEFUVFJfV0lUSF9QT1NJWF9BQ0xTIDEKfCAj ZGVmaW5lIEZMRVhJQkxFX0FSUkFZX01FTUJFUiAvKiovCnwgI2RlZmluZSBIQVZFX0RFQ0xf X19GUEVORElORyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVfUE9TSVggMQp8ICNkZWZpbmUgSEFW RV9TWVNfTU9VTlRfSCAxCnwgI2RlZmluZSBTVEFUX1NUQVRWRlMgMQp8ICNkZWZpbmUgU1RB VF9TVEFURlMyX0ZSU0laRSAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFURlNfSCAxCnwgI2Rl ZmluZSBIQVZFX0ZVVElNRU5TIDEKfCAjZGVmaW5lIEhBVkVfR0VUTE9BREFWRyAxCnwgI2Rl ZmluZSBIQVZFX0dFVFJBTkRPTSAxCnwgI2RlZmluZSBIQVZFX1RJTUVTUEVDX0dFVCAxCnwg I2RlZmluZSBHRVRUSU1FT0ZEQVlfVElNRVpPTkUgdm9pZAp8ICNkZWZpbmUgSEFWRV9fX0lO TElORSAxCnwgI2RlZmluZSBIQVZFX0dNUF9IIDEKfCAjZGVmaW5lIEhBVkVfTUVNTUVNIDEK fCAjZGVmaW5lIEhBVkVfTUVNUENQWSAxCnwgI2RlZmluZSBIQVZFX01FTVJDSFIgMQp8ICNk ZWZpbmUgSEFWRV9NS09TVEVNUCAxCnwgI2RlZmluZSBHTlVMSUJfTUtPU1RFTVAgMQp8ICNk ZWZpbmUgTkVFRF9NS1RJTUVfV09SS0lORyAxCnwgI2RlZmluZSBIQVZFX0JVR19CSUdfTkFO T1NMRUVQIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9T Q0hFRF9HRVRBRkZJTklUWSAxCnwgI2RlZmluZSBIQVZFX1NDSEVEX0dFVEFGRklOSVRZX0xJ S0VfR0xJQkMgMQp8ICNkZWZpbmUgbXlfc3RyZnRpbWUgbnN0cmZ0aW1lCnwgI2RlZmluZSBI QVZFX1BJUEUyIDEKfCAjZGVmaW5lIFVTRV9YQVRUUiAxCnwgI2RlZmluZSBIQVZFX1JFQURM SU5LQVQgMQp8ICNkZWZpbmUgSEFWRV9TSUdERVNDUl9OUCAxCnwgI2RlZmluZSBIQVZFX1NU UlVDVF9TVEFUX1NUX0FUSU1fVFZfTlNFQyAxCnwgI2RlZmluZSBUWVBFT0ZfU1RSVUNUX1NU QVRfU1RfQVRJTV9JU19TVFJVQ1RfVElNRVNQRUMgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAg Ki8KfCAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgICAgICAgICAgICNpbmNsdWRlIDxzeXMv c3RhdC5oPgp8IAp8IGludAp8IG1haW4gKHZvaWQpCnwgewp8IHN0YXRpYyBzdHJ1Y3Qgc3Rh dCBhY19hZ2dyOwp8IGlmIChhY19hZ2dyLnN0X2JpcnRodGltLnR2X25zZWMpCnwgcmV0dXJu IDA7CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZTo0MTA4ODogZ2NjIC1jIC1n MyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzogSW4gZnVuY3Rpb24gJ21haW4n Ogpjb25mdGVzdC5jOjQxOToxOTogZXJyb3I6ICdzdHJ1Y3Qgc3RhdCcgaGFzIG5vIG1lbWJl ciBuYW1lZCAnc3RfYmlydGh0aW0nCiAgNDE5IHwgaWYgKHNpemVvZiBhY19hZ2dyLnN0X2Jp cnRodGltLnR2X25zZWMpCiAgICAgIHwgICAgICAgICAgICAgICAgICAgXgpjb25maWd1cmU6 NDEwODg6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25m ZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5l IFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMw LjAuNTAiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDMwLjAuNTAiCnwg I2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNk ZWZpbmUgUEFDS0FHRV9VUkwgImh0dHBzOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3Mv Igp8ICNkZWZpbmUgSEFWRV9QRFVNUEVSIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fSCAxCnwg I2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNk ZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwg I2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9GU19IIDEKfCAj ZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEK fCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAx CnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAx CnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NBTklUSVpFUl9MU0FO X0lOVEVSRkFDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU0FOSVRJWkVSX0FTQU5fSU5URVJGQUNF X0ggMQp8ICNkZWZpbmUgSEFWRV9TQU5JVElaRVJfQ09NTU9OX0lOVEVSRkFDRV9ERUZTX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFS QU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19V Tl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5G T19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf VkZTX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19D REVGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX0lF RUU3NTRfSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1JBTkRPTV9IIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBfQUxM X1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVf U09VUkNFIDEKfCAjZGVmaW5lIF9IUFVYX0FMVF9YT1BFTl9TT0NLRVRfQVBJIDEKfCAjZGVm aW5lIF9ORVRCU0RfU09VUkNFIDEKfCAjZGVmaW5lIF9PUEVOQlNEX1NPVVJDRSAxCnwgI2Rl ZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX19TVERDX1dBTlRf SUVDXzYwNTU5X0FUVFJJQlNfRVhUX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYw NTU5X0JGUF9FWFRfXyAxCnwgI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfREZQX0VY VF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9FWFRfXyAxCnwgI2RlZmlu ZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfRlVOQ1NfRVhUX18gMQp8ICNkZWZpbmUgX19TVERD X1dBTlRfSUVDXzYwNTU5X1RZUEVTX0VYVF9fIDEKfCAjZGVmaW5lIF9fU1REQ19XQU5UX0xJ Ql9FWFQyX18gMQp8ICNkZWZpbmUgX19TVERDX1dBTlRfTUFUSF9TUEVDX0ZVTkNTX18gMQp8 ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8 ICNkZWZpbmUgR0NDX0xJTlQgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIK fCAjZGVmaW5lIEhBVkVfU1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAx CnwgI2RlZmluZSBIQVZFX1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfQURE Ul9OT19SQU5ET01JWkUgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVm aW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwgI2Rl ZmluZSBIQVZFX0lGQUREUlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJf RkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwgI2Rl ZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NU UlVDVF9JRlJFUV9JRlJfQlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVR X0lGUl9BRERSIDEKfCAjZGVmaW5lIEhBVkVfU0JSSyAxCnwgI2RlZmluZSBIQVZFX0dFVFBB R0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEK fCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfQ0FOT05JQ0FMSVpFX0ZJ TEVfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1JFQUxQQVRIIDEKfCAjZGVmaW5lIEhBVkVfTFNU QVQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0RBVCAxCnwgI2RlZmluZSBIQVZFX0xDSE1PRCAx CnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEKfCAj ZGVmaW5lIEhBVkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5l IEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2RlZmlu ZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAj ZGVmaW5lIEhBVkVfSVNCTEFOSyAxCnwgI2RlZmluZSBIQVZFX0lTV0NUWVBFIDEKfCAjZGVm aW5lIEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmlu ZSBIQVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwg I2RlZmluZSBTWVNURU1fTUFMTE9DIDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2RlZmlu ZSBIQVZFX1BUSFJFQUQgMQp8ICNkZWZpbmUgVEhSRUFEU19FTkFCTEVEIDEKfCAjZGVmaW5l IEhBVkVfWEtCIDEKfCAjZGVmaW5lIEhBVkVfWEtCUkVGUkVTSEtFWUJPQVJETUFQUElORyAx CnwgI2RlZmluZSBIQVZFX1hLQkZSRUVOQU1FUyAxCnwgI2RlZmluZSBIQVZFX1hSTVNFVERB VEFCQVNFIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RSSU5HIDEKfCAjZGVm aW5lIEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhBVkVfWERJU1BM QVlDRUxMUyAxCnwgI2RlZmluZSBIQVZFX1hERVNUUk9ZU1VCV0lORE9XUyAxCnwgI2RlZmlu ZSBIQVZFX1gxMVI2IDEKfCAjZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVmaW5lIEhBVkVf WElDQ0FMTEJBQ0tfQ0FMTEJBQ0sgMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9YSU0gMQp8ICNk ZWZpbmUgSEFWRV9SU1ZHIDEKfCAjZGVmaW5lIEhBVkVfV0VCUCAxCnwgI2RlZmluZSBIQVZF X1NRTElURTMgMQp8ICNkZWZpbmUgSEFWRV9TUUxJVEUzX0xPQURfRVhURU5TSU9OIDEKfCAj ZGVmaW5lIEhBVkVfR0VUQUREUklORk9fQSAxCnwgI2RlZmluZSBIQVZFX0dUSzMgMQp8ICNk ZWZpbmUgR0RLX0RJU0FCTEVfREVQUkVDQVRJT05fV0FSTklOR1MgMQp8ICNkZWZpbmUgR0xJ Ql9ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKfCAjZGVmaW5lIFVTRV9HVEsgMQp8 ICNkZWZpbmUgSEFWRV9NQUxMT0NfVFJJTSAxCnwgI2RlZmluZSBIQVZFX0RCVVMgMQp8ICNk ZWZpbmUgSEFWRV9EQlVTX1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVfREJV U19UWVBFX0lTX1ZBTElEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFN RSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmluZSBIQVZF X0RCVVNfVkFMSURBVEVfSU5URVJGQUNFIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFU RV9NRU1CRVIgMQp8ICNkZWZpbmUgSEFWRV9HU0VUVElOR1MgMQp8ICNkZWZpbmUgSEFWRV9M SUJTRUxJTlVYIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhBVkVfTElC U1lTVEVNRCAxCnwgI2RlZmluZSBIQVZFX0pTT04gMQp8ICNkZWZpbmUgSEFWRV9JTk9USUZZ IDEKfCAjZGVmaW5lIFVTRV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBVU0VfVE9PTEtJVF9T Q1JPTExfQkFSUyAxCnwgI2RlZmluZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBVU0VfWElNIDEK fCAjZGVmaW5lIEhBVkVfWFJFTkRFUiAxCnwgI2RlZmluZSBVU0VfQ0FJUk9fWENCIDEKfCAj ZGVmaW5lIFVTRV9DQUlSTyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAjZGVmaW5l IEhBVkVfRlRfRkFDRV9HRVRDSEFSVkFSSUFOVElOREVYIDEKfCAjZGVmaW5lIEhBVkVfTElC T1RGIDEKfCAjZGVmaW5lIEhBVkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTIDEKfCAjZGVm aW5lIEhBVkVfTTE3Tl9GTFQgMQp8ICNkZWZpbmUgSEFWRV9IQVJGQlVaWiAxCnwgI2RlZmlu ZSBVU0VfWENCIDEKfCAjZGVmaW5lIEhBVkVfWFBNIDEKfCAjZGVmaW5lIEhBVkVfSlBFRyAx CnwgI2RlZmluZSBIQVZFX0xDTVMyIDEKfCAjZGVmaW5lIEhBVkVfWkxJQiAxCnwgI2RlZmlu ZSBEWU5BTUlDX0xJQl9TVUZGSVggIi5zbyIKfCAjZGVmaW5lIERZTkFNSUNfTElCX1NFQ09O REFSWV9TVUZGSVggIiIKfCAjZGVmaW5lIEhBVkVfRExBRERSIDEKfCAjZGVmaW5lIEhBVkVf TU9EVUxFUyAxCnwgI2RlZmluZSBNT0RVTEVTX1NVRkZJWCAiLnNvIgp8ICNkZWZpbmUgTkFU SVZFX0VMSVNQX1NVRkZJWCAiLmVsbiIKfCAjZGVmaW5lIEhBVkVfUE5HIDEKfCAjZGVmaW5l IEhBVkVfVElGRiAxCnwgI2RlZmluZSBIQVZFX0dJRiAxCnwgI2RlZmluZSBIQVZFX0dQTSAx CnwgI2RlZmluZSBIQVZFX1hfU00gMQp8ICNkZWZpbmUgSEFWRV9YUkFORFIgMQp8ICNkZWZp bmUgSEFWRV9YSU5FUkFNQSAxCnwgI2RlZmluZSBIQVZFX1hGSVhFUyAxCnwgI2RlZmluZSBI QVZFX1hJTlBVVDIgMQp8ICNkZWZpbmUgSEFWRV9YSVNDUk9MTENMQVNTSU5GT19UWVBFIDEK fCAjZGVmaW5lIEhBVkVfWElUT1VDSENMQVNTSU5GT19UWVBFIDEKfCAjZGVmaW5lIEhBVkVf WElCQVJSSUVSUkVMRUFTRVBPSU5URVJJTkZPX0RFVklDRUlEIDEKfCAjZGVmaW5lIEhBVkVf WElHRVNUVVJFQ0xBU1NJTkZPX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9YU1lOQyAxCnwgI2Rl ZmluZSBIQVZFX1hTWU5DVFJJR0dFUkZFTkNFIDEKfCAjZGVmaW5lIEhBVkVfWERCRSAxCnwg I2RlZmluZSBIQVZFX1hDQl9TSEFQRSAxCnwgI2RlZmluZSBIQVZFX1hTSEFQRSAxCnwgI2Rl ZmluZSBIQVZFX1hDT01QT1NJVEUgMQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwyIDEKfCAjZGVm aW5lIEhBVkVfTElOVVhfU0VDQ09NUF9IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRUNDT01Q X1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VDQ09NUF9GSUxURVJf RkxBR19UU1lOQyAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX0ZJTFRFUl9IIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9TRUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfU0VDQ09NUF9GSUxURVJfRkxBR19UU1lOQyAxCnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA4 CnwgI2RlZmluZSBIQVZFX0FDQ0VQVDQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hESVIgMQp8ICNk ZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJVU0FHRSAxCnwg I2RlZmluZSBIQVZFX0dFVF9DVVJSRU5UX0RJUl9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfTFJB TkQ0OCAxCnwgI2RlZmluZSBIQVZFX1JBTkRPTSAxCnwgI2RlZmluZSBIQVZFX1JJTlQgMQp8 ICNkZWZpbmUgSEFWRV9UUlVOQyAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmlu ZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVm aW5lIEhBVkVfTkVXTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVm aW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZp bmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJTSUdOQUwgMQp8 ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9TRU5EVE8gMQp8ICNk ZWZpbmUgSEFWRV9SRUNWRlJPTSAxCnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tOQU1FIDEKfCAj ZGVmaW5lIEhBVkVfR0VUSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVJRkFERFJTIDEK fCAjZGVmaW5lIEhBVkVfR0FJX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAxCnwg I2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EUFdFTlQgMQp8ICNk ZWZpbmUgSEFWRV9HRVRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0VOREdSRU5UIDEKfCAjZGVm aW5lIEhBVkVfUkVOQU1FQVQyIDEKfCAjZGVmaW5lIEhBVkVfQ0ZNQUtFUkFXIDEKfCAjZGVm aW5lIEhBVkVfQ0ZTRVRTUEVFRCAxCnwgI2RlZmluZSBIQVZFX19fRVhFQ1VUQUJMRV9TVEFS VCAxCnwgI2RlZmluZSBIQVZFX0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NFVE5B TUVfTlAgMQp8ICNkZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfTUFEVklTRSAxCnwg I2RlZmluZSBIQVZFX19fQlVJTFRJTl9GUkFNRV9BRERSRVNTIDEKfCAjZGVmaW5lIEhBVkVf X19CVUlMVElOX1VOV0lORF9JTklUIDEKfCAjZGVmaW5lIEhBVkVfRlNFRUtPIDEKfCAjZGVm aW5lIEhBVkVfR1JBTlRQVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBUIDEKfCAjZGVmaW5lIEhB VkVfUE9TSVhfT1BFTlBUIDEKfCAjZGVmaW5lIFRFUk1JTkZPIDEKfCAjZGVmaW5lIFRFUk1J TkZPX0RFRklORVNfQkMgMQp8ICNkZWZpbmUgSEFWRV9USU1FUkZEIDEKfCAjZGVmaW5lIEhB VkVfVkFMR1JJTkRfVkFMR1JJTkRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9VTklQQUlS X1VOSUNPREUgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhB VkVfV09SS0lOR19GT1JLIDEKfCAjZGVmaW5lIEhBVkVfU05QUklOVEYgMQp8ICNkZWZpbmUg SEFWRV9TUEFXTl9IIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU1BBV04gMQp8ICNkZWZpbmUg SEFWRV9QT1NJWF9TUEFXTl9GSUxFX0FDVElPTlNfQUREQ0hESVJfTlAgMQp8ICNkZWZpbmUg SEFWRV9QT1NJWF9TUEFXTkFUVFJfU0VURkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BP U0lYX1NQQVdOX1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX0dMSUIgMQp8ICNkZWZpbmUgSEFW RV9MQU5HSU5GT19DT0RFU0VUIDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fX05MX1BBUEVS X1dJRFRIIDEKfCAjZGVmaW5lIEhBVkVfTUJTVEFURV9UIDEKfCAjZGVmaW5lIEFNUEVSU0FO RF9GVUxMX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9QVFlTIDEKfCAjZGVmaW5lIEhBVkVfU09D S0VUUyAxCnwgI2RlZmluZSBOVUxMX0RFVklDRSAiL2Rldi9udWxsIgp8ICNkZWZpbmUgU0VQ Q0hBUiAnOicKfCAjZGVmaW5lIHN1YnByb2Nlc3NlcyAxCnwgI2RlZmluZSBVU0VSX0ZVTExf TkFNRSBwdy0+cHdfZ2Vjb3MKfCAjZGVmaW5lIERJUkVDVE9SWV9TRVAgJy8nCnwgI2RlZmlu ZSBJU19ERVZJQ0VfU0VQKF9jXykgMAp8ICNkZWZpbmUgSVNfRElSRUNUT1JZX1NFUChfY18p ICgoX2NfKSA9PSBESVJFQ1RPUllfU0VQKQp8ICNkZWZpbmUgSVNfQU5ZX1NFUChfY18pIChJ U19ESVJFQ1RPUllfU0VQIChfY18pKQp8ICNkZWZpbmUgSEFWRV9QUk9DRlMgMQp8ICNkZWZp bmUgREVGQVVMVF9TT1VORF9ERVZJQ0UgIi9kZXYvZHNwIgp8ICNkZWZpbmUgSU5URVJSVVBU X0lOUFVUIDEKfCAjZGVmaW5lIE5BUlJPV1BST1RPIDEKfCAjZGVmaW5lIFVOSVg5OF9QVFlT IDEKfCAjZGVmaW5lIFBUWV9JVEVSQVRJT04gaW50IGk7IGZvciAoaSA9IDA7IGkgPCAxOyBp KyspCnwgI2RlZmluZSBQVFlfVFRZX05BTUVfU1BSSU5URiB7IGNoYXIgKnB0eW5hbWUgPSAw OyBzaWdzZXRfdCBibG9ja2VkOyBzaWdlbXB0eXNldCAoJmJsb2NrZWQpOyBzaWdhZGRzZXQg KCZibG9ja2VkLCBTSUdDSExEKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfQkxPQ0ssICZibG9j a2VkLCAwKTsgaWYgKGdyYW50cHQgKGZkKSAhPSAtMSAmJiB1bmxvY2twdCAoZmQpICE9IC0x KSBwdHluYW1lID0gcHRzbmFtZShmZCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX1VOQkxPQ0ss ICZibG9ja2VkLCAwKTsgaWYgKCFwdHluYW1lKSB7IGVtYWNzX2Nsb3NlIChmZCk7IHJldHVy biAtMTsgfSBzbnByaW50ZiAocHR5X25hbWUsIFBUWV9OQU1FX1NJWkUsICIlcyIsIHB0eW5h bWUpOyB9CnwgI2RlZmluZSBQVFlfT1BFTiBkbyB7IGZkID0gcG9zaXhfb3BlbnB0IChPX1JE V1IgfCBPX0NMT0VYRUMgfCBPX05PQ1RUWSk7IGlmIChmZCA8IDAgJiYgZXJybm8gPT0gRUlO VkFMKSBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19OT0NUVFkpOyB9IHdoaWxlIChm YWxzZSkKfCAjZGVmaW5lIFBUWV9OQU1FX1NQUklOVEYgLyoqLwp8ICNkZWZpbmUgU0lHTkFM U19WSUFfQ0hBUkFDVEVSUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZp bmUgR0NfU0VUSk1QX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfX1NFVEpNUCAxCnwgI2RlZmlu ZSBIQVZFX1NJR1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NUQUNLX09WRVJGTE9XX0hBTkRM SU5HIDEKfCAjZGVmaW5lIFVTRyAvKiovCnwgI2RlZmluZSBHTlVfTElOVVggLyoqLwp8ICNk ZWZpbmUgU0laRU9GX1NQRUVEX1QgNAp8ICNkZWZpbmUgVVNBQkxFX0ZJT05SRUFEIDEKfCAj ZGVmaW5lIFVTQUJMRV9TSUdJTyAxCnwgI2RlZmluZSBDT1BZUklHSFQgIkNvcHlyaWdodCAo QykgMjAyMyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4iCnwgI2RlZmluZSBURVJN X0hFQURFUiAiZ3RrdXRpbC5oIgp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHVVJBVElPTiAieDg2 XzY0LXBjLWxpbnV4LWdudSIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR19PUFRJT05TICIiCnwg I2RlZmluZSBIQVZFX1hfV0lORE9XUyAxCnwgI2RlZmluZSBIQVZFX1gxMSAxCnwgI2RlZmlu ZSBIQVZFX1NUUlVDVF9BVFRSSUJVVEVfQUxJR05FRCAxCnwgI2RlZmluZSBIQVZFX1RZUEVP RiAxCnwgI2RlZmluZSBIQVZFX1NUQVRFTUVOVF9FWFBSRVNTSU9OUyAxCnwgI2RlZmluZSBN QUxMT0NfMF9JU19OT05OVUxMIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0FDTF9IIDEKfCAjZGVm aW5lIEhBVkVfQUNMX0dFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GRCAxCnwg I2RlZmluZSBIQVZFX0FDTF9TRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRkQg MQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJFRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX01P REUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9URVhUIDEKfCAjZGVmaW5lIEhBVkVfQUNM X0RFTEVURV9ERUZfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9FWFRFTkRFRF9GSUxFIDEK fCAjZGVmaW5lIEhBVkVfQUNMX0xJQkFDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VOVFJJ RVMgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRklSU1RfRU5UUlkgMQp8ICNkZWZpbmUgVVNFX0FD TCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEK fCAjZGVmaW5lIExTVEFUX0ZPTExPV1NfU0xBU0hFRF9TWU1MSU5LIDEKfCAjZGVmaW5lIEZV TkNfUkVBTFBBVEhfV09SS1MgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZp bmUgSEFWRV9HRVRDV0QgMQp8ICNkZWZpbmUgcmVzdHJpY3QgX19yZXN0cmljdF9fCnwgI2Rl ZmluZSBIQVZFX0VOVklST05fREVDTCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSTU9ERSAw CnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0xPTkdf T05MWSAxCnwgI2RlZmluZSBIQVZFX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUgSEFWRV9V TlNJR05FRF9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9NRU1NRU0gMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX01FTVJDSFIgMQp8ICNkZWZpbmUgSEFWRV9NSU5NQVhfSU5f U1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgVElNRV9UX0lTX1NJR05FRCAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfQUxBUk0gMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVE1fVE1fWk9ORSAxCnwg I2RlZmluZSBIQVZFX1RNX1pPTkUgMQp8ICNkZWZpbmUgSEFWRV9UTV9HTVRPRkYgMQp8ICNk ZWZpbmUgSEFWRV9TSUdTRVRfVCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX1QgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX0ZDTE9TRUFMTCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VUVyAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfUFVUVyAxCnwgI2RlZmluZSBfX1VTRV9NSU5HV19BTlNJX1NU RElPIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9FQ1ZUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9G Q1ZUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HQ1ZUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9T VFJOTEVOIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJUT0lNQVggMQp8ICNkZWZpbmUgX1VT RV9TVERfU1RBVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRVhFQ1ZQRSAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfQ0xFQVJFUlJfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZFT0Zf VU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZFUlJPUl9VTkxPQ0tFRCAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfRkZMVVNIX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9G R0VUU19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRlBVVENfVU5MT0NLRUQgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX0ZQVVRTX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9GUkVBRF9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRldSSVRFX1VOTE9DS0VE IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRDX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9HRVRDSEFSX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRDX1VOTE9D S0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9QVVRDSEFSX1VOTE9DS0VEIDEKfCAjZGVmaW5l IEdFVEdST1VQU19UIGdpZF90CnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VURFRBQkxFU0laRSAx CnwgI2RlZmluZSBIQVZFX01BTExPQ19QT1NJWCAxCnwgI2RlZmluZSBQUk9NT1RFRF9NT0RF X1QgbW9kZV90CnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVVRJTUVTIDEKfCAjZGVmaW5lIEhB VkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX0VYUEVDVCAxCnwgI2RlZmlu ZSBIQVZFX0JZVEVTV0FQX0ggMQp8ICNkZWZpbmUgR05VTElCX0NBTk9OSUNBTElaRV9MR1BM IDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX0dF VFJFUyAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX0dFVFRJTUUgMQp8ICNkZWZpbmUgSEFWRV9D TE9DS19TRVRUSU1FIDEKfCAjZGVmaW5lIEdOVUxJQl9DTE9TRV9TVFJFQU0gMQp8ICNkZWZp bmUgSEFWRV9DT1BZX0ZJTEVfUkFOR0UgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfRElSRU5U X0RfVFlQRSAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBHTlVMSUJf RkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRE9QRU5ESVIgMQp8ICNkZWZpbmUg R05VTElCX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBHRVRYQVRUUl9XSVRIX1BPU0lYX0FDTFMg MQp8ICNkZWZpbmUgRkxFWElCTEVfQVJSQVlfTUVNQkVSIC8qKi8KfCAjZGVmaW5lIEhBVkVf REVDTF9fX0ZQRU5ESU5HIDEKfCAjZGVmaW5lIEhBVkVfRlJFRV9QT1NJWCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19NT1VOVF9IIDEKfCAjZGVmaW5lIFNUQVRfU1RBVFZGUyAxCnwgI2RlZmlu ZSBTVEFUX1NUQVRGUzJfRlJTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRGU19IIDEK fCAjZGVmaW5lIEhBVkVfRlVUSU1FTlMgMQp8ICNkZWZpbmUgSEFWRV9HRVRMT0FEQVZHIDEK fCAjZGVmaW5lIEhBVkVfR0VUUkFORE9NIDEKfCAjZGVmaW5lIEhBVkVfVElNRVNQRUNfR0VU IDEKfCAjZGVmaW5lIEdFVFRJTUVPRkRBWV9USU1FWk9ORSB2b2lkCnwgI2RlZmluZSBIQVZF X19fSU5MSU5FIDEKfCAjZGVmaW5lIEhBVkVfR01QX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1N RU0gMQp8ICNkZWZpbmUgSEFWRV9NRU1QQ1BZIDEKfCAjZGVmaW5lIEhBVkVfTUVNUkNIUiAx CnwgI2RlZmluZSBIQVZFX01LT1NURU1QIDEKfCAjZGVmaW5lIEdOVUxJQl9NS09TVEVNUCAx CnwgI2RlZmluZSBORUVEX01LVElNRV9XT1JLSU5HIDEKfCAjZGVmaW5lIEhBVkVfQlVHX0JJ R19OQU5PU0xFRVAgMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBI QVZFX1NDSEVEX0dFVEFGRklOSVRZIDEKfCAjZGVmaW5lIEhBVkVfU0NIRURfR0VUQUZGSU5J VFlfTElLRV9HTElCQyAxCnwgI2RlZmluZSBteV9zdHJmdGltZSBuc3RyZnRpbWUKfCAjZGVm aW5lIEhBVkVfUElQRTIgMQp8ICNkZWZpbmUgVVNFX1hBVFRSIDEKfCAjZGVmaW5lIEhBVkVf UkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZFX1NJR0RFU0NSX05QIDEKfCAjZGVmaW5lIEhB VkVfU1RSVUNUX1NUQVRfU1RfQVRJTV9UVl9OU0VDIDEKfCAjZGVmaW5lIFRZUEVPRl9TVFJV Q1RfU1RBVF9TVF9BVElNX0lTX1NUUlVDVF9USU1FU1BFQyAxCnwgLyogZW5kIGNvbmZkZWZz LmguICAqLwp8ICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAgICAgICAgICAgI2luY2x1ZGUg PHN5cy9zdGF0Lmg+CnwgCnwgaW50CnwgbWFpbiAodm9pZCkKfCB7Cnwgc3RhdGljIHN0cnVj dCBzdGF0IGFjX2FnZ3I7CnwgaWYgKHNpemVvZiBhY19hZ2dyLnN0X2JpcnRodGltLnR2X25z ZWMpCnwgcmV0dXJuIDA7CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZTo0MTA4 ODogcmVzdWx0OiBubwpjb25maWd1cmU6NDExMDU6IGNoZWNraW5nIGZvciBib29sLCB0cnVl LCBmYWxzZQpjb25maWd1cmU6NDExMjA6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMg PiY1CmNvbmZ0ZXN0LmM6NDE0OjEzOiBlcnJvcjogI2Vycm9yICJ0cnVlID09IGZhbHNlIgog IDQxNCB8ICAgICAgICAgICAgI2Vycm9yICJ0cnVlID09IGZhbHNlIgogICAgICB8ICAgICAg ICAgICAgIF5+fn5+CmNvbmZ0ZXN0LmM6NDE2OjE4OiBlcnJvcjogdW5rbm93biB0eXBlIG5h bWUgJ2Jvb2wnCiAgNDE2IHwgICAgICAgICAgIGV4dGVybiBib29sIGI7CiAgICAgIHwgICAg ICAgICAgICAgICAgICBefn5+CmNvbmZ0ZXN0LmM6NDE3OjExOiBlcnJvcjogdW5rbm93biB0 eXBlIG5hbWUgJ2Jvb2wnCiAgNDE3IHwgICAgICAgICAgIGJvb2wgYiA9IHRydWUgPT0gZmFs c2U7CiAgICAgIHwgICAgICAgICAgIF5+fn4KY29uZnRlc3QuYzoxOjE6IG5vdGU6ICdib29s JyBpcyBkZWZpbmVkIGluIGhlYWRlciAnPHN0ZGJvb2wuaD4nOyBkaWQgeW91IGZvcmdldCB0 byAnI2luY2x1ZGUgPHN0ZGJvb2wuaD4nPwogICAgMSB8IC8qIGNvbmZkZWZzLmggKi8KY29u ZnRlc3QuYzo0MTc6MjA6IGVycm9yOiAndHJ1ZScgdW5kZWNsYXJlZCBoZXJlIChub3QgaW4g YSBmdW5jdGlvbikKICA0MTcgfCAgICAgICAgICAgYm9vbCBiID0gdHJ1ZSA9PSBmYWxzZTsK ICAgICAgfCAgICAgICAgICAgICAgICAgICAgXn5+fgpjb25mdGVzdC5jOjQxNzoyMDogbm90 ZTogJ3RydWUnIGlzIGRlZmluZWQgaW4gaGVhZGVyICc8c3RkYm9vbC5oPic7IGRpZCB5b3Ug Zm9yZ2V0IHRvICcjaW5jbHVkZSA8c3RkYm9vbC5oPic/CmNvbmZ0ZXN0LmM6NDE3OjI4OiBl cnJvcjogJ2ZhbHNlJyB1bmRlY2xhcmVkIGhlcmUgKG5vdCBpbiBhIGZ1bmN0aW9uKQogIDQx NyB8ICAgICAgICAgICBib29sIGIgPSB0cnVlID09IGZhbHNlOwogICAgICB8ICAgICAgICAg ICAgICAgICAgICAgICAgICAgIF5+fn5+CmNvbmZ0ZXN0LmM6NDE3OjI4OiBub3RlOiAnZmFs c2UnIGlzIGRlZmluZWQgaW4gaGVhZGVyICc8c3RkYm9vbC5oPic7IGRpZCB5b3UgZm9yZ2V0 IHRvICcjaW5jbHVkZSA8c3RkYm9vbC5oPic/CmNvbmZpZ3VyZTo0MTEyMDogJD8gPSAxCmNv 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 CnwgI2RlZmluZSByZXN0cmljdCBfX3Jlc3RyaWN0X18KfCAjZGVmaW5lIEhBVkVfRU5WSVJP Tl9ERUNMIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJNT0RFIDAKfCAjZGVmaW5lIEhBVkVf R0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfTE9OR19PTkxZIDEKfCAjZGVmaW5l IEhBVkVfTE9OR19MT05HX0lOVCAxCnwgI2RlZmluZSBIQVZFX1VOU0lHTkVEX0xPTkdfTE9O R19JTlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX01FTU1FTSAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfTUVNUkNIUiAxCnwgI2RlZmluZSBIQVZFX01JTk1BWF9JTl9TWVNfUEFSQU1fSCAxCnwg I2RlZmluZSBUSU1FX1RfSVNfU0lHTkVEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTEFSTSAx CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9UTV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1f Wk9ORSAxCnwgI2RlZmluZSBIQVZFX1RNX0dNVE9GRiAxCnwgI2RlZmluZSBIQVZFX1NJR1NF VF9UIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkNM T1NFQUxMIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRXIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9QVVRXIDEKfCAjZGVmaW5lIF9fVVNFX01JTkdXX0FOU0lfU1RESU8gMQp8ICNkZWZpbmUg SEFWRV9ERUNMX0VDVlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZDVlQgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX0dDVlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUk5MRU4gMQp8ICNkZWZp bmUgSEFWRV9ERUNMX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBfVVNFX1NURF9TVEFUIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9FWEVDVlBFIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9DTEVBUkVS Ul9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkVPRl9VTkxPQ0tFRCAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfRkVSUk9SX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9G RkxVU0hfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZHRVRTX1VOTE9DS0VEIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9GUFVUQ19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfRlBVVFNfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZSRUFEX1VOTE9DS0VE IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GV1JJVEVfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX0dFVENfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVENIQVJfVU5M T0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BVVENfVU5MT0NLRUQgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX1BVVENIQVJfVU5MT0NLRUQgMQp8ICNkZWZpbmUgR0VUR1JPVVBTX1QgZ2lk X3QKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVf TUFMTE9DX1BPU0lYIDEKfCAjZGVmaW5lIFBST01PVEVEX01PREVfVCBtb2RlX3QKfCAjZGVm aW5lIEhBVkVfV09SS0lOR19VVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNk ZWZpbmUgSEFWRV9fX0JVSUxUSU5fRVhQRUNUIDEKfCAjZGVmaW5lIEhBVkVfQllURVNXQVBf SCAxCnwgI2RlZmluZSBHTlVMSUJfQ0FOT05JQ0FMSVpFX0xHUEwgMQp8ICNkZWZpbmUgSEFW RV9SRUFETElOS0FUIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tfR0VUUkVTIDEKfCAjZGVmaW5l IEhBVkVfQ0xPQ0tfR0VUVElNRSAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX1NFVFRJTUUgMQp8 ICNkZWZpbmUgR05VTElCX0NMT1NFX1NUUkVBTSAxCnwgI2RlZmluZSBIQVZFX0NPUFlfRklM RV9SQU5HRSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9ESVJFTlRfRF9UWVBFIDEKfCAjZGVm aW5lIEhBVkVfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEdOVUxJQl9GQUNDRVNTQVQgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBHTlVMSUJfRkRPUEVORElS IDEKfCAjZGVmaW5lIEdFVFhBVFRSX1dJVEhfUE9TSVhfQUNMUyAxCnwgI2RlZmluZSBGTEVY SUJMRV9BUlJBWV9NRU1CRVIgLyoqLwp8ICNkZWZpbmUgSEFWRV9ERUNMX19fRlBFTkRJTkcg MQp8ICNkZWZpbmUgSEFWRV9GUkVFX1BPU0lYIDEKfCAjZGVmaW5lIEhBVkVfU1lTX01PVU5U X0ggMQp8ICNkZWZpbmUgU1RBVF9TVEFUVkZTIDEKfCAjZGVmaW5lIFNUQVRfU1RBVEZTMl9G UlNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVEZTX0ggMQp8ICNkZWZpbmUgSEFWRV9G VVRJTUVOUyAxCnwgI2RlZmluZSBIQVZFX0dFVExPQURBVkcgMQp8ICNkZWZpbmUgSEFWRV9H RVRSQU5ET00gMQp8ICNkZWZpbmUgSEFWRV9USU1FU1BFQ19HRVQgMQp8ICNkZWZpbmUgR0VU VElNRU9GREFZX1RJTUVaT05FIHZvaWQKfCAjZGVmaW5lIEhBVkVfX19JTkxJTkUgMQp8ICNk ZWZpbmUgSEFWRV9HTVBfSCAxCnwgI2RlZmluZSBIQVZFX01FTU1FTSAxCnwgI2RlZmluZSBI QVZFX01FTVBDUFkgMQp8ICNkZWZpbmUgSEFWRV9NRU1SQ0hSIDEKfCAjZGVmaW5lIEhBVkVf TUtPU1RFTVAgMQp8ICNkZWZpbmUgR05VTElCX01LT1NURU1QIDEKfCAjZGVmaW5lIE5FRURf TUtUSU1FX1dPUktJTkcgMQp8ICNkZWZpbmUgSEFWRV9CVUdfQklHX05BTk9TTEVFUCAxCnwg I2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfU0NIRURfR0VUQUZG SU5JVFkgMQp8ICNkZWZpbmUgSEFWRV9TQ0hFRF9HRVRBRkZJTklUWV9MSUtFX0dMSUJDIDEK fCAjZGVmaW5lIG15X3N0cmZ0aW1lIG5zdHJmdGltZQp8ICNkZWZpbmUgSEFWRV9QSVBFMiAx CnwgI2RlZmluZSBVU0VfWEFUVFIgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKfCAj ZGVmaW5lIEhBVkVfU0lHREVTQ1JfTlAgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9T VF9BVElNX1RWX05TRUMgMQp8ICNkZWZpbmUgVFlQRU9GX1NUUlVDVF9TVEFUX1NUX0FUSU1f SVNfU1RSVUNUX1RJTUVTUEVDIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgCnwgICAg ICAgICAgICNpZiB0cnVlID09IGZhbHNlCnwgICAgICAgICAgICAjZXJyb3IgInRydWUgPT0g ZmFsc2UiCnwgICAgICAgICAgICNlbmRpZgp8ICAgICAgICAgICBleHRlcm4gYm9vbCBiOwp8 ICAgICAgICAgICBib29sIGIgPSB0cnVlID09IGZhbHNlOwpjb25maWd1cmU6NDExMjg6IHJl c3VsdDogbm8KY29uZmlndXJlOjQxNTYzOiBjaGVja2luZyBmb3Igc3RwY3B5CmNvbmZpZ3Vy ZTo0MTYwMDogY2hlY2tpbmcgZm9yIHN0cGNweQpjb25maWd1cmU6NDE2MDA6IGdjYyAtbyBj b25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAgID4mNSAKY29uZnRlc3QuYzo0MzA6 Njogd2FybmluZzogY29uZmxpY3RpbmcgdHlwZXMgZm9yIGJ1aWx0LWluIGZ1bmN0aW9uICdz dHBjcHknOyBleHBlY3RlZCAnY2hhciAqKGNoYXIgKiwgY29uc3QgY2hhciAqKScgWy1XYnVp bHRpbi1kZWNsYXJhdGlvbi1taXNtYXRjaF0KICA0MzAgfCBjaGFyIHN0cGNweSAoKTsKICAg ICAgfCAgICAgIF5+fn5+fgpjb25maWd1cmU6NDE2MDA6ICQ/ID0gMApjb25maWd1cmU6NDE2 MDA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo0MTYxNTogcmVzdWx0OiB5ZXMKY29uZmlndXJl OjQxNjk0OiBjaGVja2luZyBmb3Igd29ya2luZyBzdHJubGVuCmNvbmZpZ3VyZTo0MTczNDog Z2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1IApjb25maWd1 cmU6NDE3MzQ6ICQ/ID0gMApjb25maWd1cmU6NDE3MzQ6IC4vY29uZnRlc3QKY29uZmlndXJl OjQxNzM0OiAkPyA9IDAKY29uZmlndXJlOjQxNzQ1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6 NDE4MDA6IGNoZWNraW5nIHdoZXRoZXIgc3RydG9pbWF4IHdvcmtzCmNvbmZpZ3VyZTo0MTg1 ODogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1IApjb25m aWd1cmU6NDE4NTg6ICQ/ID0gMApjb25maWd1cmU6NDE4NTg6IC4vY29uZnRlc3QKY29uZmln dXJlOjQxODU4OiAkPyA9IDAKY29uZmlndXJlOjQxODcwOiByZXN1bHQ6IHllcwpjb25maWd1 cmU6NDE5Mjc6IGNoZWNraW5nIHdoZXRoZXIgc3ltbGluayBoYW5kbGVzIHRyYWlsaW5nIHNs YXNoIGNvcnJlY3RseQpjb25maWd1cmU6NDE5Njc6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8y ICAgICAgY29uZnRlc3QuYyAgID4mNSAKY29uZmlndXJlOjQxOTY3OiAkPyA9IDAKY29uZmln dXJlOjQxOTY3OiAuL2NvbmZ0ZXN0CmNvbmZpZ3VyZTo0MTk2NzogJD8gPSAwCmNvbmZpZ3Vy ZTo0MTk3OTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjQyMDcwOiBjaGVja2luZyB3aGV0aGVy IGxvY2FsdGltZV9yIGlzIGRlY2xhcmVkCmNvbmZpZ3VyZTo0MjA3MDogZ2NjIC1jIC1nMyAt TzIgICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo0MjA3MDogJD8gPSAwCmNvbmZpZ3Vy ZTo0MjA3MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjQyMDk0OiBjaGVja2luZyB3aGV0aGVy IGxvY2FsdGltZV9yIGlzIGNvbXBhdGlibGUgd2l0aCBpdHMgUE9TSVggc2lnbmF0dXJlCmNv bmZpZ3VyZTo0MjEyNjogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmln dXJlOjQyMTI2OiAkPyA9IDAKY29uZmlndXJlOjQyMTM1OiByZXN1bHQ6IHllcwpjb25maWd1 cmU6NDIyMjg6IGNoZWNraW5nIHdoZXRoZXIgbG9jYWx0aW1lIHdvcmtzIGV2ZW4gbmVhciBl eHRyZW1hCmNvbmZpZ3VyZTo0MjI2NDogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBj b25mdGVzdC5jICAgPiY1IApjb25maWd1cmU6NDIyNjQ6ICQ/ID0gMApjb25maWd1cmU6NDIy NjQ6IC4vY29uZnRlc3QKY29uZmlndXJlOjQyMjY0OiAkPyA9IDAKY29uZmlndXJlOjQyMjc0 OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NDIyODI6IGNoZWNraW5nIGZvciB0aW1lem9uZV90 CmNvbmZpZ3VyZTo0MjI4MjogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29u ZnRlc3QuYzogSW4gZnVuY3Rpb24gJ21haW4nOgpjb25mdGVzdC5jOjQyMjoxMzogZXJyb3I6 ICd0aW1lem9uZV90JyB1bmRlY2xhcmVkIChmaXJzdCB1c2UgaW4gdGhpcyBmdW5jdGlvbik7 IGRpZCB5b3UgbWVhbiAndGltZXpvbmUnPwogIDQyMiB8IGlmIChzaXplb2YgKHRpbWV6b25l X3QpKQogICAgICB8ICAgICAgICAgICAgIF5+fn5+fn5+fn4KICAgICAgfCAgICAgICAgICAg ICB0aW1lem9uZQpjb25mdGVzdC5jOjQyMjoxMzogbm90ZTogZWFjaCB1bmRlY2xhcmVkIGlk ZW50aWZpZXIgaXMgcmVwb3J0ZWQgb25seSBvbmNlIGZvciBlYWNoIGZ1bmN0aW9uIGl0IGFw cGVhcnMgaW4KY29uZmlndXJlOjQyMjgyOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJv 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 IF9fcmVzdHJpY3RfXwp8ICNkZWZpbmUgSEFWRV9FTlZJUk9OX0RFQ0wgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX1NUUk1PREUgMAp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmlu ZSBIQVZFX0dFVE9QVF9MT05HX09OTFkgMQp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkdfSU5U IDEKfCAjZGVmaW5lIEhBVkVfVU5TSUdORURfTE9OR19MT05HX0lOVCAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfTUVNTUVNIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9NRU1SQ0hSIDEKfCAjZGVm aW5lIEhBVkVfTUlOTUFYX0lOX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIFRJTUVfVF9JU19T SUdORUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0FMQVJNIDEKfCAjZGVmaW5lIEhBVkVfU1RS VUNUX1RNX1RNX1pPTkUgMQp8ICNkZWZpbmUgSEFWRV9UTV9aT05FIDEKfCAjZGVmaW5lIEhB VkVfVE1fR01UT0ZGIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUX1QgMQp8ICNkZWZpbmUgSEFW RV9XQ0hBUl9UIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GQ0xPU0VBTEwgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX0dFVFcgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1BVVFcgMQp8ICNkZWZpbmUg X19VU0VfTUlOR1dfQU5TSV9TVERJTyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRUNWVCAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfRkNWVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0NWVCAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfU1RSTkxFTiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSVE9J TUFYIDEKfCAjZGVmaW5lIF9VU0VfU1REX1NUQVQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VY RUNWUEUgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0NMRUFSRVJSX1VOTE9DS0VEIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9GRU9GX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRVJS T1JfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZGTFVTSF9VTkxPQ0tFRCAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfRkdFVFNfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X0ZQVVRDX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GUFVUU19VTkxPQ0tFRCAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfRlJFQURfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9E RUNMX0ZXUklURV9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VUQ19VTkxPQ0tF RCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VUQ0hBUl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfUFVUQ19VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUFVUQ0hBUl9V TkxPQ0tFRCAxCnwgI2RlZmluZSBHRVRHUk9VUFNfVCBnaWRfdAp8ICNkZWZpbmUgSEFWRV9E RUNMX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfUE9TSVggMQp8ICNk ZWZpbmUgUFJPTU9URURfTU9ERV9UIG1vZGVfdAp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1VU SU1FUyAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJ Tl9FWFBFQ1QgMQp8ICNkZWZpbmUgSEFWRV9CWVRFU1dBUF9IIDEKfCAjZGVmaW5lIEdOVUxJ Ql9DQU5PTklDQUxJWkVfTEdQTCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LQVQgMQp8ICNk ZWZpbmUgSEFWRV9DTE9DS19HRVRSRVMgMQp8ICNkZWZpbmUgSEFWRV9DTE9DS19HRVRUSU1F IDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tfU0VUVElNRSAxCnwgI2RlZmluZSBHTlVMSUJfQ0xP U0VfU1RSRUFNIDEKfCAjZGVmaW5lIEhBVkVfQ09QWV9GSUxFX1JBTkdFIDEKfCAjZGVmaW5l IEhBVkVfU1RSVUNUX0RJUkVOVF9EX1RZUEUgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQg MQp8ICNkZWZpbmUgR05VTElCX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkRP UEVORElSIDEKfCAjZGVmaW5lIEdOVUxJQl9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgR0VUWEFU VFJfV0lUSF9QT1NJWF9BQ0xTIDEKfCAjZGVmaW5lIEZMRVhJQkxFX0FSUkFZX01FTUJFUiAv KiovCnwgI2RlZmluZSBIQVZFX0RFQ0xfX19GUEVORElORyAxCnwgI2RlZmluZSBIQVZFX0ZS RUVfUE9TSVggMQp8ICNkZWZpbmUgSEFWRV9TWVNfTU9VTlRfSCAxCnwgI2RlZmluZSBTVEFU X1NUQVRWRlMgMQp8ICNkZWZpbmUgU1RBVF9TVEFURlMyX0ZSU0laRSAxCnwgI2RlZmluZSBI QVZFX1NZU19TVEFURlNfSCAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRU5TIDEKfCAjZGVmaW5l IEhBVkVfR0VUTE9BREFWRyAxCnwgI2RlZmluZSBIQVZFX0dFVFJBTkRPTSAxCnwgI2RlZmlu ZSBIQVZFX1RJTUVTUEVDX0dFVCAxCnwgI2RlZmluZSBHRVRUSU1FT0ZEQVlfVElNRVpPTkUg dm9pZAp8ICNkZWZpbmUgSEFWRV9fX0lOTElORSAxCnwgI2RlZmluZSBIQVZFX0dNUF9IIDEK fCAjZGVmaW5lIEhBVkVfTUVNTUVNIDEKfCAjZGVmaW5lIEhBVkVfTUVNUENQWSAxCnwgI2Rl ZmluZSBIQVZFX01FTVJDSFIgMQp8ICNkZWZpbmUgSEFWRV9NS09TVEVNUCAxCnwgI2RlZmlu ZSBHTlVMSUJfTUtPU1RFTVAgMQp8ICNkZWZpbmUgTkVFRF9NS1RJTUVfV09SS0lORyAxCnwg I2RlZmluZSBIQVZFX0JVR19CSUdfTkFOT1NMRUVQIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BB UkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9TQ0hFRF9HRVRBRkZJTklUWSAxCnwgI2RlZmluZSBI QVZFX1NDSEVEX0dFVEFGRklOSVRZX0xJS0VfR0xJQkMgMQp8ICNkZWZpbmUgbXlfc3RyZnRp bWUgbnN0cmZ0aW1lCnwgI2RlZmluZSBIQVZFX1BJUEUyIDEKfCAjZGVmaW5lIFVTRV9YQVRU UiAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LQVQgMQp8ICNkZWZpbmUgSEFWRV9TSUdERVND Ul9OUCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX0FUSU1fVFZfTlNFQyAxCnwg I2RlZmluZSBUWVBFT0ZfU1RSVUNUX1NUQVRfU1RfQVRJTV9JU19TVFJVQ1RfVElNRVNQRUMg MQp8ICNkZWZpbmUgR05VTElCX0ZTQ0FORiAxCnwgI2RlZmluZSBHTlVMSUJfU0NBTkYgMQp8 ICNkZWZpbmUgSEFWRV9TVFBDUFkgMQp8ICNkZWZpbmUgR05VTElCX1RFTVBOQU1FIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9MT0NBTFRJTUVfUiAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAq Lwp8ICNpbmNsdWRlIDx0aW1lLmg+CnwgCnwgaW50CnwgbWFpbiAodm9pZCkKfCB7CnwgaWYg KHNpemVvZiAodGltZXpvbmVfdCkpCnwgCSByZXR1cm4gMDsKfCAgIDsKfCAgIHJldHVybiAw Owp8IH0KY29uZmlndXJlOjQyMjgyOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo0MjMyNTogY2hl Y2tpbmcgZm9yIHRpbWVnbQpjb25maWd1cmU6NDIzNjI6IGNoZWNraW5nIGZvciB0aW1lZ20K Y29uZmlndXJlOjQyMzYyOiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0 LmMgICA+JjUgCmNvbmZpZ3VyZTo0MjM2MjogJD8gPSAwCmNvbmZpZ3VyZTo0MjM2MjogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjQyMzc3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NDI0NDA6 IGNoZWNraW5nIHdoZXRoZXIgdGltZXJfc2V0dGltZSBpcyBkZWNsYXJlZApjb25maWd1cmU6 NDI0NDA6IGdjYyAtYyAtZzMgLU8yICAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6NDI0 NDA6ICQ/ID0gMApjb25maWd1cmU6NDI0NDA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo0MjQ1 MzogY2hlY2tpbmcgZm9yIGxpYnJhcnkgY29udGFpbmluZyB0aW1lcl9zZXR0aW1lCmNvbmZp Z3VyZTo0MjQ4MzogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jICAg PiY1IApjb25maWd1cmU6NDI0ODM6ICQ/ID0gMApjb25maWd1cmU6NDI1MDM6IHJlc3VsdDog bm9uZSByZXF1aXJlZApjb25maWd1cmU6NDI1MTQ6IGNoZWNraW5nIGZvciB0aW1lcl9zZXR0 aW1lCmNvbmZpZ3VyZTo0MjUxNDogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25m dGVzdC5jICAgPiY1IApjb25maWd1cmU6NDI1MTQ6ICQ/ID0gMApjb25maWd1cmU6NDI1MTQ6 IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo0MjU2MzogY2hlY2tpbmcgZm9yIHV0aW1lbnNhdApj b25maWd1cmU6NDI2MDA6IGNoZWNraW5nIGZvciB1dGltZW5zYXQKY29uZmlndXJlOjQyNjAw OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCmNvbmZp Z3VyZTo0MjYwMDogJD8gPSAwCmNvbmZpZ3VyZTo0MjYwMDogcmVzdWx0OiB5ZXMKY29uZmln dXJlOjQyNjE1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NDI2MzU6IGNoZWNraW5nIHdoZXRo ZXIgdXRpbWVuc2F0IHdvcmtzCmNvbmZpZ3VyZTo0MjcxODogZ2NjIC1vIGNvbmZ0ZXN0IC1n MyAtTzIgICAgICBjb25mdGVzdC5jICAgPiY1IApjb25maWd1cmU6NDI3MTg6ICQ/ID0gMApj b25maWd1cmU6NDI3MTg6IC4vY29uZnRlc3QKY29uZmlndXJlOjQyNzE4OiAkPyA9IDAKY29u ZmlndXJlOjQyNzM0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NDI3NzU6IGNoZWNraW5nIGZv ciB2YXJpYWJsZS1sZW5ndGggYXJyYXlzCmNvbmZpZ3VyZTo0MjgzMzogZ2NjIC1jIC1nMyAt TzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjQyODMzOiAkPyA9IDAKY29uZmlndXJl OjQyODQ0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NDMzODY6IGNoZWNraW5nIHdoZXRoZXIg Z2V0ZHRhYmxlc2l6ZSB3b3Jrcwpjb25maWd1cmU6NDM0MjY6IGdjYyAtbyBjb25mdGVzdCAt ZzMgLU8yICAgICAgY29uZnRlc3QuYyAgID4mNSAKY29uZmlndXJlOjQzNDI2OiAkPyA9IDAK Y29uZmlndXJlOjQzNDI2OiAuL2NvbmZ0ZXN0CmNvbmZpZ3VyZTo0MzQyNjogJD8gPSAwCmNv bmZpZ3VyZTo0MzQ0MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjQzOTc1OiBjaGVja2luZyBm b3IgX19ta3RpbWVfaW50ZXJuYWwKY29uZmlndXJlOjQzOTc1OiBnY2MgLW8gY29uZnRlc3Qg LWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgICA+JjUgCi91c3IvYmluL2xkOiAvdG1wL2NjSFhY OW1sLm86IGluIGZ1bmN0aW9uIGBtYWluJzoKL2FwcC9lbWFjcy9jb25mdGVzdC5jOjQ1MDog dW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgX19ta3RpbWVfaW50ZXJuYWwnCmNvbGxlY3QyOiBl cnJvcjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpjb25maWd1cmU6NDM5NzU6ICQ/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 VElNX0lTX1NUUlVDVF9USU1FU1BFQyAxCnwgI2RlZmluZSBHTlVMSUJfRlNDQU5GIDEKfCAj ZGVmaW5lIEdOVUxJQl9TQ0FORiAxCnwgI2RlZmluZSBIQVZFX1NUUENQWSAxCnwgI2RlZmlu ZSBHTlVMSUJfVEVNUE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0xPQ0FMVElNRV9SIDEK fCAjZGVmaW5lIEhBVkVfVElNRUdNIDEKfCAjZGVmaW5lIEhBVkVfVElNRVJfU0VUVElNRSAx CnwgI2RlZmluZSBHTlVMSUJfU1RESU9fU0lOR0xFX1RIUkVBRCAxCnwgI2RlZmluZSBVU0Vf VU5MT0NLRURfSU8gR05VTElCX1NURElPX1NJTkdMRV9USFJFQUQKfCAjZGVmaW5lIEhBVkVf VVRJTUVOU0FUIDEKfCAjZGVmaW5lIEhBVkVfQ19WQVJBUlJBWVMgMQp8IC8qIGVuZCBjb25m ZGVmcy5oLiAgKi8KfCAvKiBEZWZpbmUgX19ta3RpbWVfaW50ZXJuYWwgdG8gYW4gaW5ub2N1 b3VzIHZhcmlhbnQsIGluIGNhc2UgPGxpbWl0cy5oPiBkZWNsYXJlcyBfX21rdGltZV9pbnRl cm5hbC4KfCAgICBGb3IgZXhhbXBsZSwgSFAtVVggMTFpIDxsaW1pdHMuaD4gZGVjbGFyZXMg Z2V0dGltZW9mZGF5LiAgKi8KfCAjZGVmaW5lIF9fbWt0aW1lX2ludGVybmFsIGlubm9jdW91 c19fX21rdGltZV9pbnRlcm5hbAp8IAp8IC8qIFN5c3RlbSBoZWFkZXIgdG8gZGVmaW5lIF9f c3R1YiBtYWNyb3MgYW5kIGhvcGVmdWxseSBmZXcgcHJvdG90eXBlcywKfCAgICB3aGljaCBj YW4gY29uZmxpY3Qgd2l0aCBjaGFyIF9fbWt0aW1lX2ludGVybmFsICgpOyBiZWxvdy4gICov CnwgCnwgI2luY2x1ZGUgPGxpbWl0cy5oPgp8ICN1bmRlZiBfX21rdGltZV9pbnRlcm5hbAp8 IAp8IC8qIE92ZXJyaWRlIGFueSBHQ0MgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFu IGVycm9yLgp8ICAgIFVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1 cm4gdHlwZSBvZiBhIEdDQwp8ICAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHBy b3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCnwgI2lmZGVmIF9fY3BsdXNwbHVzCnwg ZXh0ZXJuICJDIgp8ICNlbmRpZgp8IGNoYXIgX19ta3RpbWVfaW50ZXJuYWwgKCk7CnwgLyog VGhlIEdOVSBDIGxpYnJhcnkgZGVmaW5lcyB0aGlzIGZvciBmdW5jdGlvbnMgd2hpY2ggaXQg aW1wbGVtZW50cwp8ICAgICB0byBhbHdheXMgZmFpbCB3aXRoIEVOT1NZUy4gIFNvbWUgZnVu Y3Rpb25zIGFyZSBhY3R1YWxseSBuYW1lZAp8ICAgICBzb21ldGhpbmcgc3RhcnRpbmcgd2l0 aCBfXyBhbmQgdGhlIG5vcm1hbCBuYW1lIGlzIGFuIGFsaWFzLiAgKi8KfCAjaWYgZGVmaW5l ZCBfX3N0dWJfX19ta3RpbWVfaW50ZXJuYWwgfHwgZGVmaW5lZCBfX3N0dWJfX19fX21rdGlt ZV9pbnRlcm5hbAp8IGNob2tlIG1lCnwgI2VuZGlmCnwgCnwgaW50CnwgbWFpbiAodm9pZCkK fCB7CnwgcmV0dXJuIF9fbWt0aW1lX2ludGVybmFsICgpOwp8ICAgOwp8ICAgcmV0dXJuIDA7 CnwgfQpjb25maWd1cmU6NDM5NzU6IHJlc3VsdDogbm8KY29uZmlndXJlOjQ1MDY2OiBjaGVj a2luZyBmb3IgdGltZXJfZ2V0b3ZlcnJ1bgpjb25maWd1cmU6NDUwNjY6IGdjYyAtbyBjb25m dGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAgICA+JjUgCmNvbmZpZ3VyZTo0NTA2Njog JD8gPSAwCmNvbmZpZ3VyZTo0NTA2NjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjQ1MTU0OiBj aGVja2luZyBmb3IgZ2NjIG9wdGlvbiB0byBkaXNhYmxlIHBvc2l0aW9uIGluZGVwZW5kZW50 IGV4ZWN1dGFibGVzCmNvbmZpZ3VyZTo0NTE5MTogcmVzdWx0OiBub3QgbmVlZGVkCmNvbmZp Z3VyZTo0NTcwMzogY3JlYXRpbmcgLi9jb25maWcuc3RhdHVzCgojIyAtLS0tLS0tLS0tLS0t LS0tICMjCiMjIENhY2hlIHZhcmlhYmxlcy4gIyMKIyMgLS0tLS0tLS0tLS0tLS0tLSAjIwoK YWNfY3ZfYnVpbGQ9eDg2XzY0LXBjLWxpbnV4LWdudQphY19jdl9jX2JpZ2VuZGlhbj1ubwph Y19jdl9jX2NvbXBpbGVyX2dudT15ZXMKYWNfY3ZfY19mbGV4bWVtYmVyPXllcwphY19jdl9j X2lubGluZT1pbmxpbmUKYWNfY3ZfY19yZXN0cmljdD1fX3Jlc3RyaWN0X18KYWNfY3ZfY190 eXBlb2Y9dHlwZW9mCmFjX2N2X2NfdmFyYXJyYXlzPXllcwphY19jdl9lbnZfQUxTQV9DRkxB R1Nfc2V0PQphY19jdl9lbnZfQUxTQV9DRkxBR1NfdmFsdWU9CmFjX2N2X2Vudl9BTFNBX0xJ QlNfc2V0PQphY19jdl9lbnZfQUxTQV9MSUJTX3ZhbHVlPQphY19jdl9lbnZfQ0FJUk9fQ0ZM QUdTX3NldD0KYWNfY3ZfZW52X0NBSVJPX0NGTEFHU192YWx1ZT0KYWNfY3ZfZW52X0NBSVJP X0xJQlNfc2V0PQphY19jdl9lbnZfQ0FJUk9fTElCU192YWx1ZT0KYWNfY3ZfZW52X0NBSVJP X1hDQl9DRkxBR1Nfc2V0PQphY19jdl9lbnZfQ0FJUk9fWENCX0NGTEFHU192YWx1ZT0KYWNf Y3ZfZW52X0NBSVJPX1hDQl9MSUJTX3NldD0KYWNfY3ZfZW52X0NBSVJPX1hDQl9MSUJTX3Zh bHVlPQphY19jdl9lbnZfQ0FJUk9fWExJQl9DRkxBR1Nfc2V0PQphY19jdl9lbnZfQ0FJUk9f WExJQl9DRkxBR1NfdmFsdWU9CmFjX2N2X2Vudl9DQUlST19YTElCX0xJQlNfc2V0PQphY19j dl9lbnZfQ0FJUk9fWExJQl9MSUJTX3ZhbHVlPQphY19jdl9lbnZfQ0NDX3NldD0KYWNfY3Zf ZW52X0NDQ192YWx1ZT0KYWNfY3ZfZW52X0NDX3NldD0KYWNfY3ZfZW52X0NDX3ZhbHVlPQph Y19jdl9lbnZfQ0ZMQUdTX3NldD0KYWNfY3ZfZW52X0NGTEFHU192YWx1ZT0KYWNfY3ZfZW52 X0NQUEZMQUdTX3NldD0KYWNfY3ZfZW52X0NQUEZMQUdTX3ZhbHVlPQphY19jdl9lbnZfQ1BQ X3NldD0KYWNfY3ZfZW52X0NQUF92YWx1ZT0KYWNfY3ZfZW52X0NYWEZMQUdTX3NldD0KYWNf Y3ZfZW52X0NYWEZMQUdTX3ZhbHVlPQphY19jdl9lbnZfQ1hYX3NldD0KYWNfY3ZfZW52X0NY WF92YWx1ZT0KYWNfY3ZfZW52X0RCVVNfQ0ZMQUdTX3NldD0KYWNfY3ZfZW52X0RCVVNfQ0ZM QUdTX3ZhbHVlPQphY19jdl9lbnZfREJVU19MSUJTX3NldD0KYWNfY3ZfZW52X0RCVVNfTElC U192YWx1ZT0KYWNfY3ZfZW52X0ZPTlRDT05GSUdfQ0ZMQUdTX3NldD0KYWNfY3ZfZW52X0ZP TlRDT05GSUdfQ0ZMQUdTX3ZhbHVlPQphY19jdl9lbnZfRk9OVENPTkZJR19MSUJTX3NldD0K YWNfY3ZfZW52X0ZPTlRDT05GSUdfTElCU192YWx1ZT0KYWNfY3ZfZW52X0ZSRUVUWVBFX0NG TEFHU19zZXQ9CmFjX2N2X2Vudl9GUkVFVFlQRV9DRkxBR1NfdmFsdWU9CmFjX2N2X2Vudl9G UkVFVFlQRV9MSUJTX3NldD0KYWNfY3ZfZW52X0ZSRUVUWVBFX0xJQlNfdmFsdWU9CmFjX2N2 X2Vudl9HQ09ORl9DRkxBR1Nfc2V0PQphY19jdl9lbnZfR0NPTkZfQ0ZMQUdTX3ZhbHVlPQph Y19jdl9lbnZfR0NPTkZfTElCU19zZXQ9CmFjX2N2X2Vudl9HQ09ORl9MSUJTX3ZhbHVlPQph Y19jdl9lbnZfR0ZJTEVOT1RJRllfQ0ZMQUdTX3NldD0KYWNfY3ZfZW52X0dGSUxFTk9USUZZ X0NGTEFHU192YWx1ZT0KYWNfY3ZfZW52X0dGSUxFTk9USUZZX0xJQlNfc2V0PQphY19jdl9l bnZfR0ZJTEVOT1RJRllfTElCU192YWx1ZT0KYWNfY3ZfZW52X0dPQkpFQ1RfQ0ZMQUdTX3Nl dD0KYWNfY3ZfZW52X0dPQkpFQ1RfQ0ZMQUdTX3ZhbHVlPQphY19jdl9lbnZfR09CSkVDVF9M SUJTX3NldD0KYWNfY3ZfZW52X0dPQkpFQ1RfTElCU192YWx1ZT0KYWNfY3ZfZW52X0dTRVRU SU5HU19DRkxBR1Nfc2V0PQphY19jdl9lbnZfR1NFVFRJTkdTX0NGTEFHU192YWx1ZT0KYWNf Y3ZfZW52X0dTRVRUSU5HU19MSUJTX3NldD0KYWNfY3ZfZW52X0dTRVRUSU5HU19MSUJTX3Zh bHVlPQphY19jdl9lbnZfR1RLX0NGTEFHU19zZXQ9CmFjX2N2X2Vudl9HVEtfQ0ZMQUdTX3Zh bHVlPQphY19jdl9lbnZfR1RLX0xJQlNfc2V0PQphY19jdl9lbnZfR1RLX0xJQlNfdmFsdWU9 CmFjX2N2X2Vudl9IQVJGQlVaWl9DRkxBR1Nfc2V0PQphY19jdl9lbnZfSEFSRkJVWlpfQ0ZM QUdTX3ZhbHVlPQphY19jdl9lbnZfSEFSRkJVWlpfTElCU19zZXQ9CmFjX2N2X2Vudl9IQVJG QlVaWl9MSUJTX3ZhbHVlPQphY19jdl9lbnZfSU1BR0VNQUdJQ0tfQ0ZMQUdTX3NldD0KYWNf Y3ZfZW52X0lNQUdFTUFHSUNLX0NGTEFHU192YWx1ZT0KYWNfY3ZfZW52X0lNQUdFTUFHSUNL X0xJQlNfc2V0PQphY19jdl9lbnZfSU1BR0VNQUdJQ0tfTElCU192YWx1ZT0KYWNfY3ZfZW52 X0pTT05fQ0ZMQUdTX3NldD0KYWNfY3ZfZW52X0pTT05fQ0ZMQUdTX3ZhbHVlPQphY19jdl9l bnZfSlNPTl9MSUJTX3NldD0KYWNfY3ZfZW52X0pTT05fTElCU192YWx1ZT0KYWNfY3ZfZW52 X0tRVUVVRV9DRkxBR1Nfc2V0PQphY19jdl9lbnZfS1FVRVVFX0NGTEFHU192YWx1ZT0KYWNf Y3ZfZW52X0tRVUVVRV9MSUJTX3NldD0KYWNfY3ZfZW52X0tRVUVVRV9MSUJTX3ZhbHVlPQph Y19jdl9lbnZfTENNUzJfQ0ZMQUdTX3NldD0KYWNfY3ZfZW52X0xDTVMyX0NGTEFHU192YWx1 ZT0KYWNfY3ZfZW52X0xDTVMyX0xJQlNfc2V0PQphY19jdl9lbnZfTENNUzJfTElCU192YWx1 ZT0KYWNfY3ZfZW52X0xERkxBR1Nfc2V0PQphY19jdl9lbnZfTERGTEFHU192YWx1ZT0KYWNf Y3ZfZW52X0xJQkdOVVRMU19DRkxBR1Nfc2V0PQphY19jdl9lbnZfTElCR05VVExTX0NGTEFH U192YWx1ZT0KYWNfY3ZfZW52X0xJQkdOVVRMU19MSUJTX3NldD0KYWNfY3ZfZW52X0xJQkdO VVRMU19MSUJTX3ZhbHVlPQphY19jdl9lbnZfTElCT1RGX0NGTEFHU19zZXQ9CmFjX2N2X2Vu dl9MSUJPVEZfQ0ZMQUdTX3ZhbHVlPQphY19jdl9lbnZfTElCT1RGX0xJQlNfc2V0PQphY19j dl9lbnZfTElCT1RGX0xJQlNfdmFsdWU9CmFjX2N2X2Vudl9MSUJTRUNDT01QX0NGTEFHU19z ZXQ9CmFjX2N2X2Vudl9MSUJTRUNDT01QX0NGTEFHU192YWx1ZT0KYWNfY3ZfZW52X0xJQlNF Q0NPTVBfTElCU19zZXQ9CmFjX2N2X2Vudl9MSUJTRUNDT01QX0xJQlNfdmFsdWU9CmFjX2N2 X2Vudl9MSUJTWVNURU1EX0NGTEFHU19zZXQ9CmFjX2N2X2Vudl9MSUJTWVNURU1EX0NGTEFH U192YWx1ZT0KYWNfY3ZfZW52X0xJQlNZU1RFTURfTElCU19zZXQ9CmFjX2N2X2Vudl9MSUJT WVNURU1EX0xJQlNfdmFsdWU9CmFjX2N2X2Vudl9MSUJTX3NldD0KYWNfY3ZfZW52X0xJQlNf dmFsdWU9CmFjX2N2X2Vudl9MSUJYTUwyX0NGTEFHU19zZXQ9CmFjX2N2X2Vudl9MSUJYTUwy X0NGTEFHU192YWx1ZT0KYWNfY3ZfZW52X0xJQlhNTDJfTElCU19zZXQ9CmFjX2N2X2Vudl9M SUJYTUwyX0xJQlNfdmFsdWU9CmFjX2N2X2Vudl9NMTdOX0ZMVF9DRkxBR1Nfc2V0PQphY19j dl9lbnZfTTE3Tl9GTFRfQ0ZMQUdTX3ZhbHVlPQphY19jdl9lbnZfTTE3Tl9GTFRfTElCU19z ZXQ9CmFjX2N2X2Vudl9NMTdOX0ZMVF9MSUJTX3ZhbHVlPQphY19jdl9lbnZfT0JKQ0ZMQUdT X3NldD0KYWNfY3ZfZW52X09CSkNGTEFHU192YWx1ZT0KYWNfY3ZfZW52X09CSkNfc2V0PQph Y19jdl9lbnZfT0JKQ192YWx1ZT0KYWNfY3ZfZW52X1BLR19DT05GSUdfTElCRElSX3NldD0K YWNfY3ZfZW52X1BLR19DT05GSUdfTElCRElSX3ZhbHVlPQphY19jdl9lbnZfUEtHX0NPTkZJ R19QQVRIX3NldD0KYWNfY3ZfZW52X1BLR19DT05GSUdfUEFUSF92YWx1ZT0KYWNfY3ZfZW52 X1BLR19DT05GSUdfc2V0PQphY19jdl9lbnZfUEtHX0NPTkZJR192YWx1ZT0KYWNfY3ZfZW52 X1BOR19DRkxBR1Nfc2V0PQphY19jdl9lbnZfUE5HX0NGTEFHU192YWx1ZT0KYWNfY3ZfZW52 X1BOR19MSUJTX3NldD0KYWNfY3ZfZW52X1BOR19MSUJTX3ZhbHVlPQphY19jdl9lbnZfUlNW R19DRkxBR1Nfc2V0PQphY19jdl9lbnZfUlNWR19DRkxBR1NfdmFsdWU9CmFjX2N2X2Vudl9S U1ZHX0xJQlNfc2V0PQphY19jdl9lbnZfUlNWR19MSUJTX3ZhbHVlPQphY19jdl9lbnZfVFJF RV9TSVRURVJfQ0ZMQUdTX3NldD0KYWNfY3ZfZW52X1RSRUVfU0lUVEVSX0NGTEFHU192YWx1 ZT0KYWNfY3ZfZW52X1RSRUVfU0lUVEVSX0xJQlNfc2V0PQphY19jdl9lbnZfVFJFRV9TSVRU RVJfTElCU192YWx1ZT0KYWNfY3ZfZW52X1dFQktJVF9DRkxBR1Nfc2V0PQphY19jdl9lbnZf V0VCS0lUX0NGTEFHU192YWx1ZT0KYWNfY3ZfZW52X1dFQktJVF9MSUJTX3NldD0KYWNfY3Zf ZW52X1dFQktJVF9MSUJTX3ZhbHVlPQphY19jdl9lbnZfV0VCUF9DRkxBR1Nfc2V0PQphY19j dl9lbnZfV0VCUF9DRkxBR1NfdmFsdWU9CmFjX2N2X2Vudl9XRUJQX0xJQlNfc2V0PQphY19j dl9lbnZfV0VCUF9MSUJTX3ZhbHVlPQphY19jdl9lbnZfWEZJWEVTX0NGTEFHU19zZXQ9CmFj X2N2X2Vudl9YRklYRVNfQ0ZMQUdTX3ZhbHVlPQphY19jdl9lbnZfWEZJWEVTX0xJQlNfc2V0 PQphY19jdl9lbnZfWEZJWEVTX0xJQlNfdmFsdWU9CmFjX2N2X2Vudl9YRlRfQ0ZMQUdTX3Nl dD0KYWNfY3ZfZW52X1hGVF9DRkxBR1NfdmFsdWU9CmFjX2N2X2Vudl9YRlRfTElCU19zZXQ9 CmFjX2N2X2Vudl9YRlRfTElCU192YWx1ZT0KYWNfY3ZfZW52X1hJTkVSQU1BX0NGTEFHU19z ZXQ9CmFjX2N2X2Vudl9YSU5FUkFNQV9DRkxBR1NfdmFsdWU9CmFjX2N2X2Vudl9YSU5FUkFN QV9MSUJTX3NldD0KYWNfY3ZfZW52X1hJTkVSQU1BX0xJQlNfdmFsdWU9CmFjX2N2X2Vudl9Y SU5QVVRfQ0ZMQUdTX3NldD0KYWNfY3ZfZW52X1hJTlBVVF9DRkxBR1NfdmFsdWU9CmFjX2N2 X2Vudl9YSU5QVVRfTElCU19zZXQ9CmFjX2N2X2Vudl9YSU5QVVRfTElCU192YWx1ZT0KYWNf Y3ZfZW52X1hNS01GX3NldD0KYWNfY3ZfZW52X1hNS01GX3ZhbHVlPQphY19jdl9lbnZfWFJB TkRSX0NGTEFHU19zZXQ9CmFjX2N2X2Vudl9YUkFORFJfQ0ZMQUdTX3ZhbHVlPQphY19jdl9l bnZfWFJBTkRSX0xJQlNfc2V0PQphY19jdl9lbnZfWFJBTkRSX0xJQlNfdmFsdWU9CmFjX2N2 X2Vudl9idWlsZF9hbGlhc19zZXQ9CmFjX2N2X2Vudl9idWlsZF9hbGlhc192YWx1ZT0KYWNf Y3ZfZW52X2hvc3RfYWxpYXNfc2V0PQphY19jdl9lbnZfaG9zdF9hbGlhc192YWx1ZT0KYWNf Y3ZfZW52X3RhcmdldF9hbGlhc19zZXQ9CmFjX2N2X2Vudl90YXJnZXRfYWxpYXNfdmFsdWU9 CmFjX2N2X2Z1bmNfRlRfRmFjZV9HZXRDaGFyVmFyaWFudEluZGV4PXllcwphY19jdl9mdW5j X1dlYlBHZXRJbmZvPW5vCmFjX2N2X2Z1bmNfWERlc3Ryb3lTdWJ3aW5kb3dzPXllcwphY19j dl9mdW5jX1hEaXNwbGF5Q2VsbHM9eWVzCmFjX2N2X2Z1bmNfWFNjcmVlbk51bWJlck9mU2Ny ZWVuPXllcwphY19jdl9mdW5jX1hTY3JlZW5SZXNvdXJjZVN0cmluZz15ZXMKYWNfY3ZfZnVu Y19YU3luY1RyaWdnZXJGZW5jZT15ZXMKYWNfY3ZfZnVuY19Ya2JGcmVlTmFtZXM9eWVzCmFj X2N2X2Z1bmNfWGtiUmVmcmVzaEtleWJvYXJkTWFwcGluZz15ZXMKYWNfY3ZfZnVuY19Ycm1T ZXREYXRhYmFzZT15ZXMKYWNfY3ZfZnVuY19fX2V4ZWN1dGFibGVfc3RhcnQ9eWVzCmFjX2N2 X2Z1bmNfX19sc2FuX2lnbm9yZV9vYmplY3Q9bm8KYWNfY3ZfZnVuY19fX21rdGltZV9pbnRl cm5hbD1ubwphY19jdl9mdW5jX2FjY2VwdDQ9eWVzCmFjX2N2X2Z1bmNfYWNsX2NvcHlfZXh0 X25hdGl2ZT1ubwphY19jdl9mdW5jX2FjbF9jcmVhdGVfZW50cnlfbnA9bm8KYWNfY3ZfZnVu Y19hY2xfZGVsZXRlX2RlZl9maWxlPXllcwphY19jdl9mdW5jX2FjbF9kZWxldGVfZmRfbnA9 bm8KYWNfY3ZfZnVuY19hY2xfZGVsZXRlX2ZpbGVfbnA9bm8KYWNfY3ZfZnVuY19hY2xfZW50 cmllcz15ZXMKYWNfY3ZfZnVuY19hY2xfZXh0ZW5kZWRfZmlsZT15ZXMKYWNfY3ZfZnVuY19h Y2xfZnJlZT15ZXMKYWNfY3ZfZnVuY19hY2xfZnJlZV90ZXh0PW5vCmFjX2N2X2Z1bmNfYWNs X2Zyb21fbW9kZT15ZXMKYWNfY3ZfZnVuY19hY2xfZnJvbV90ZXh0PXllcwphY19jdl9mdW5j X2FjbF9nZXRfZmQ9eWVzCmFjX2N2X2Z1bmNfYWNsX2dldF9maWxlPXllcwphY19jdl9mdW5j X2FjbF9zZXRfZmQ9eWVzCmFjX2N2X2Z1bmNfYWNsX3NldF9maWxlPXllcwphY19jdl9mdW5j X2FjbF90b19zaG9ydF90ZXh0PW5vCmFjX2N2X2Z1bmNfYWxpZ25lZF9hbGxvYz15ZXMKYWNf Y3ZfZnVuY19hbGxvY2Ffd29ya3M9eWVzCmFjX2N2X2Z1bmNfY2Fub25pY2FsaXplX2ZpbGVf bmFtZT15ZXMKYWNfY3ZfZnVuY19jZm1ha2VyYXc9eWVzCmFjX2N2X2Z1bmNfY2ZzZXRzcGVl ZD15ZXMKYWNfY3ZfZnVuY19jbG9ja19nZXRyZXM9eWVzCmFjX2N2X2Z1bmNfY2xvY2tfZ2V0 dGltZT15ZXMKYWNfY3ZfZnVuY19jbG9ja19zZXR0aW1lPXllcwphY19jdl9mdW5jX2RidXNf dHlwZV9pc192YWxpZD15ZXMKYWNfY3ZfZnVuY19kYnVzX3ZhbGlkYXRlX2J1c19uYW1lPXll cwphY19jdl9mdW5jX2RidXNfdmFsaWRhdGVfaW50ZXJmYWNlPXllcwphY19jdl9mdW5jX2Ri dXNfdmFsaWRhdGVfbWVtYmVyPXllcwphY19jdl9mdW5jX2RidXNfdmFsaWRhdGVfcGF0aD15 ZXMKYWNfY3ZfZnVuY19kYnVzX3dhdGNoX2dldF91bml4X2ZkPXllcwphY19jdl9mdW5jX2Rs YWRkcj15ZXMKYWNfY3ZfZnVuY19kbGZ1bmM9bm8KYWNfY3ZfZnVuY19lbmRncmVudD15ZXMK YWNfY3ZfZnVuY19lbmRwd2VudD15ZXMKYWNfY3ZfZnVuY19leHBsaWNpdF9tZW1zZXQ9bm8K YWNfY3ZfZnVuY19mYWNjZXNzYXQ9eWVzCmFjX2N2X2Z1bmNfZmNoZGlyPXllcwphY19jdl9m dW5jX2ZjaG1vZD15ZXMKYWNfY3ZfZnVuY19mY2htb2RhdD15ZXMKYWNfY3ZfZnVuY19mY250 bD15ZXMKYWNfY3ZfZnVuY19mZG9wZW5kaXI9eWVzCmFjX2N2X2Z1bmNfZm9yaz15ZXMKYWNf Y3ZfZnVuY19mb3JrX3dvcmtzPXllcwphY19jdl9mdW5jX2ZyZWVpZmFkZHJzPXllcwphY19j dl9mdW5jX2ZzdGF0YXQ9eWVzCmFjX2N2X2Z1bmNfZnN5bmM9eWVzCmFjX2N2X2Z1bmNfZnV0 aW1lbnM9eWVzCmFjX2N2X2Z1bmNfZ2FpX3N0cmVycm9yPXllcwphY19jdl9mdW5jX2dldF9j dXJyZW50X2Rpcl9uYW1lPXllcwphY19jdl9mdW5jX2dldGN3ZD15ZXMKYWNfY3ZfZnVuY19n ZXRkdGFibGVzaXplPXllcwphY19jdl9mdW5jX2dldGdyZW50PXllcwphY19jdl9mdW5jX2dl dGhvc3RuYW1lPXllcwphY19jdl9mdW5jX2dldGlmYWRkcnM9eWVzCmFjX2N2X2Z1bmNfZ2V0 bG9hZGF2Zz15ZXMKYWNfY3ZfZnVuY19nZXRvcHRfbG9uZ19vbmx5PXllcwphY19jdl9mdW5j X2dldHBhZ2VzaXplPXllcwphY19jdl9mdW5jX2dldHB0PXllcwphY19jdl9mdW5jX2dldHB3 ZW50PXllcwphY19jdl9mdW5jX2dldHJhbmRvbT15ZXMKYWNfY3ZfZnVuY19nZXRybGltaXQ9 eWVzCmFjX2N2X2Z1bmNfZ2V0cnVzYWdlPXllcwphY19jdl9mdW5jX2dldHNvY2tuYW1lPXll cwphY19jdl9mdW5jX2dldHRpbWVvZmRheT15ZXMKYWNfY3ZfZnVuY19ncmFudHB0PXllcwph Y19jdl9mdW5jX2lub3RpZnlfaW5pdDE9eWVzCmFjX2N2X2Z1bmNfaXNibGFuaz15ZXMKYWNf Y3ZfZnVuY19pc3djdHlwZT15ZXMKYWNfY3ZfZnVuY19sY2htb2Q9eWVzCmFjX2N2X2Z1bmNf bG9jYWx0aW1lX3I9eWVzCmFjX2N2X2Z1bmNfbG9nMj15ZXMKYWNfY3ZfZnVuY19scmFuZDQ4 PXllcwphY19jdl9mdW5jX2xzdGF0PXllcwphY19jdl9mdW5jX21hbGxvY18wX25vbm51bGw9 eWVzCmFjX2N2X2Z1bmNfbWFsbG9jX3RyaW09eWVzCmFjX2N2X2Z1bmNfbWVtbWVtPXllcwph Y19jdl9mdW5jX21lbXBjcHk9eWVzCmFjX2N2X2Z1bmNfbWVtcmNocj15ZXMKYWNfY3ZfZnVu Y19tZW1zZXRfZXhwbGljaXQ9bm8KYWNfY3ZfZnVuY19tZW1zZXRfcz1ubwphY19jdl9mdW5j X21rb3N0ZW1wPXllcwphY19jdl9mdW5jX21tYXBfZml4ZWRfbWFwcGVkPXllcwphY19jdl9m dW5jX25ld2xvY2FsZT15ZXMKYWNfY3ZfZnVuY19waXBlMj15ZXMKYWNfY3ZfZnVuY19wb3Np eF9tYWR2aXNlPXllcwphY19jdl9mdW5jX3Bvc2l4X29wZW5wdD15ZXMKYWNfY3ZfZnVuY19w b3NpeF9zcGF3bj15ZXMKYWNfY3ZfZnVuY19wb3NpeF9zcGF3bl9maWxlX2FjdGlvbnNfYWRk Y2hkaXI9bm8KYWNfY3ZfZnVuY19wb3NpeF9zcGF3bl9maWxlX2FjdGlvbnNfYWRkY2hkaXJf bnA9eWVzCmFjX2N2X2Z1bmNfcG9zaXhfc3Bhd25hdHRyX3NldGZsYWdzPXllcwphY19jdl9m dW5jX3BzZWxlY3Q9eWVzCmFjX2N2X2Z1bmNfcHN0YXRfZ2V0ZHluYW1pYz1ubwphY19jdl9m dW5jX3B0aHJlYWRfc2V0X25hbWVfbnA9bm8KYWNfY3ZfZnVuY19wdGhyZWFkX3NldG5hbWVf bnA9eWVzCmFjX2N2X2Z1bmNfcHRocmVhZF9zaWdtYXNrPXllcwphY19jdl9mdW5jX3JhbmRv bT15ZXMKYWNfY3ZfZnVuY19yZWFkbGluaz15ZXMKYWNfY3ZfZnVuY19yZWFkbGlua2F0PXll cwphY19jdl9mdW5jX3JlYWxwYXRoPXllcwphY19jdl9mdW5jX3JlY3Zmcm9tPXllcwphY19j dl9mdW5jX3JlbmFtZWF0Mj15ZXMKYWNfY3ZfZnVuY19yaW50PXllcwphY19jdl9mdW5jX3Ni cms9eWVzCmFjX2N2X2Z1bmNfc2NoZWRfZ2V0YWZmaW5pdHk9eWVzCmFjX2N2X2Z1bmNfc2No ZWRfZ2V0YWZmaW5pdHlfbnA9bm8KYWNfY3ZfZnVuY19zZWxlY3Q9eWVzCmFjX2N2X2Z1bmNf c2VuZHRvPXllcwphY19jdl9mdW5jX3NldGl0aW1lcj15ZXMKYWNfY3ZfZnVuY19zZXRsb2Nh bGU9eWVzCmFjX2N2X2Z1bmNfc2V0cmxpbWl0PXllcwphY19jdl9mdW5jX3NodXRkb3duPXll cwphY19jdl9mdW5jX3NpZzJzdHI9bm8KYWNfY3ZfZnVuY19zaWdkZXNjcl9ucD15ZXMKYWNf Y3ZfZnVuY19zbnByaW50Zj15ZXMKYWNfY3ZfZnVuY19zdHBjcHk9eWVzCmFjX2N2X2Z1bmNf c3Rybmxlbl93b3JraW5nPXllcwphY19jdl9mdW5jX3N0cnNpZ25hbD15ZXMKYWNfY3ZfZnVu Y19zdHJ0b2ltYXg9eWVzCmFjX2N2X2Z1bmNfc3ltbGluaz15ZXMKYWNfY3ZfZnVuY19zeW5j PXllcwphY19jdl9mdW5jX3N5c2N0bD1ubwphY19jdl9mdW5jX3N5c21wPW5vCmFjX2N2X2Z1 bmNfdGltZWdtPXllcwphY19jdl9mdW5jX3RpbWVyX2dldG92ZXJydW49eWVzCmFjX2N2X2Z1 bmNfdGltZXJfc2V0dGltZT15ZXMKYWNfY3ZfZnVuY190cnVuYz15ZXMKYWNfY3ZfZnVuY191 dGltZW5zYXQ9eWVzCmFjX2N2X2Z1bmNfdmZvcms9eWVzCmFjX2N2X2Z1bmNfdmZvcmtfd29y a3M9eWVzCmFjX2N2X2hhdmVfZGVjbF9QT1NJWF9TUEFXTl9TRVRTSUQ9eWVzCmFjX2N2X2hh dmVfZGVjbF9TRUNDT01QX0ZJTFRFUl9GTEFHX1RTWU5DPXllcwphY19jdl9oYXZlX2RlY2xf U0VDQ09NUF9TRVRfTU9ERV9GSUxURVI9eWVzCmFjX2N2X2hhdmVfZGVjbF9fX2ZwZW5kaW5n PXllcwphY19jdl9oYXZlX2RlY2xfYWxhcm09eWVzCmFjX2N2X2hhdmVfZGVjbF9hbGlnbmVk X2FsbG9jPXllcwphY19jdl9oYXZlX2RlY2xfY2xlYXJlcnJfdW5sb2NrZWQ9eWVzCmFjX2N2 X2hhdmVfZGVjbF9lY3Z0PXllcwphY19jdl9oYXZlX2RlY2xfZXhlY3ZwZT15ZXMKYWNfY3Zf aGF2ZV9kZWNsX2ZjbG9zZWFsbD15ZXMKYWNfY3ZfaGF2ZV9kZWNsX2ZjdnQ9eWVzCmFjX2N2 X2hhdmVfZGVjbF9mZG9wZW5kaXI9eWVzCmFjX2N2X2hhdmVfZGVjbF9mZW9mX3VubG9ja2Vk PXllcwphY19jdl9oYXZlX2RlY2xfZmVycm9yX3VubG9ja2VkPXllcwphY19jdl9oYXZlX2Rl Y2xfZmZsdXNoX3VubG9ja2VkPXllcwphY19jdl9oYXZlX2RlY2xfZmdldHNfdW5sb2NrZWQ9 eWVzCmFjX2N2X2hhdmVfZGVjbF9mcHV0Y191bmxvY2tlZD15ZXMKYWNfY3ZfaGF2ZV9kZWNs X2ZwdXRzX3VubG9ja2VkPXllcwphY19jdl9oYXZlX2RlY2xfZnJlYWRfdW5sb2NrZWQ9eWVz CmFjX2N2X2hhdmVfZGVjbF9md3JpdGVfdW5sb2NrZWQ9eWVzCmFjX2N2X2hhdmVfZGVjbF9n Y3Z0PXllcwphY19jdl9oYXZlX2RlY2xfZ2V0Y191bmxvY2tlZD15ZXMKYWNfY3ZfaGF2ZV9k ZWNsX2dldGNoYXJfdW5sb2NrZWQ9eWVzCmFjX2N2X2hhdmVfZGVjbF9nZXRkdGFibGVzaXpl PXllcwphY19jdl9oYXZlX2RlY2xfZ2V0bG9hZGF2Zz15ZXMKYWNfY3ZfaGF2ZV9kZWNsX2dl dHc9eWVzCmFjX2N2X2hhdmVfZGVjbF9sb2NhbHRpbWVfcj15ZXMKYWNfY3ZfaGF2ZV9kZWNs X21lbW1lbT15ZXMKYWNfY3ZfaGF2ZV9kZWNsX21lbXJjaHI9eWVzCmFjX2N2X2hhdmVfZGVj bF9wbmdfbG9uZ2ptcD15ZXMKYWNfY3ZfaGF2ZV9kZWNsX3B1dGNfdW5sb2NrZWQ9eWVzCmFj X2N2X2hhdmVfZGVjbF9wdXRjaGFyX3VubG9ja2VkPXllcwphY19jdl9oYXZlX2RlY2xfcHV0 dz15ZXMKYWNfY3ZfaGF2ZV9kZWNsX3N0cm1vZGU9bm8KYWNfY3ZfaGF2ZV9kZWNsX3N0cm5s ZW49eWVzCmFjX2N2X2hhdmVfZGVjbF9zdHJ0b2ltYXg9eWVzCmFjX2N2X2hhdmVfZGVjbF90 aW1lcl9zZXR0aW1lPXllcwphY19jdl9oYXZlX2RlY2xfdGltZXNwZWNfZ2V0PXllcwphY19j dl9oYXZlX3g9J2hhdmVfeD15ZXMJYWNfeF9pbmNsdWRlcz0nXCcnJ1wnJwlhY194X2xpYnJh cmllcz0nXCcnJ1wnJycKYWNfY3ZfaGVhZGVyX1gxMV9TTV9TTWxpYl9oPXllcwphY19jdl9o ZWFkZXJfWDExX1hsaWJfeGNiX2g9eWVzCmFjX2N2X2hlYWRlcl9YMTFfZXh0ZW5zaW9uc19Y SW5wdXQyX2g9eWVzCmFjX2N2X2hlYWRlcl9YMTFfZXh0ZW5zaW9uc19YY29tcG9zaXRlX2g9 eWVzCmFjX2N2X2hlYWRlcl9YMTFfZXh0ZW5zaW9uc19YZGJlX2g9eWVzCmFjX2N2X2hlYWRl cl9YMTFfZXh0ZW5zaW9uc19zaGFwZV9oPXllcwphY19jdl9oZWFkZXJfWDExX2V4dGVuc2lv bnNfc3luY19oPXllcwphY19jdl9oZWFkZXJfWDExX3hwbV9oPXllcwphY19jdl9oZWFkZXJf YWNsX2xpYmFjbF9oPXllcwphY19jdl9oZWFkZXJfYnl0ZXN3YXBfaD15ZXMKYWNfY3ZfaGVh ZGVyX2NvZmZfaD1ubwphY19jdl9oZWFkZXJfZGlyZW50X2g9eWVzCmFjX2N2X2hlYWRlcl9l eGVjaW5mb19oPXllcwphY19jdl9oZWFkZXJfZ2V0b3B0X2g9eWVzCmFjX2N2X2hlYWRlcl9n aWZfbGliX2g9eWVzCmFjX2N2X2hlYWRlcl9nbXBfaD15ZXMKYWNfY3ZfaGVhZGVyX2dwbV9o PXllcwphY19jdl9oZWFkZXJfaWVlZTc1NF9oPXllcwphY19jdl9oZWFkZXJfaWZhZGRyc19o PXllcwphY19jdl9oZWFkZXJfaW50dHlwZXNfaD15ZXMKYWNfY3ZfaGVhZGVyX2xpbWl0c19o PXllcwphY19jdl9oZWFkZXJfbGludXhfZmlsdGVyX2g9eWVzCmFjX2N2X2hlYWRlcl9saW51 eF9mc19oPXllcwphY19jdl9oZWFkZXJfbGludXhfc2VjY29tcF9oPXllcwphY19jdl9oZWFk ZXJfbWFjaGluZV9zb3VuZGNhcmRfaD1ubwphY19jdl9oZWFkZXJfbWFsbG9jX2g9eWVzCmFj X2N2X2hlYWRlcl9tYWxsb2NfbWFsbG9jX2g9bm8KYWNfY3ZfaGVhZGVyX21pbml4X2NvbmZp Z19oPW5vCmFjX2N2X2hlYWRlcl9tbXN5c3RlbV9oPW5vCmFjX2N2X2hlYWRlcl9uZXRfaWZf ZGxfaD1ubwphY19jdl9oZWFkZXJfbmV0X2lmX2g9eWVzCmFjX2N2X2hlYWRlcl9wdGhyZWFk X2g9eWVzCmFjX2N2X2hlYWRlcl9wdHlfaD15ZXMKYWNfY3ZfaGVhZGVyX3B3ZF9oPXllcwph Y19jdl9oZWFkZXJfc2FuaXRpemVyX2FzYW5faW50ZXJmYWNlX2g9eWVzCmFjX2N2X2hlYWRl cl9zYW5pdGl6ZXJfY29tbW9uX2ludGVyZmFjZV9kZWZzX2g9eWVzCmFjX2N2X2hlYWRlcl9z YW5pdGl6ZXJfbHNhbl9pbnRlcmZhY2VfaD15ZXMKYWNfY3ZfaGVhZGVyX3NvdW5kY2FyZF9o PW5vCmFjX2N2X2hlYWRlcl9zcGF3bl9oPXllcwphY19jdl9oZWFkZXJfc3RhdF9icm9rZW49 bm8KYWNfY3ZfaGVhZGVyX3N0ZGJvb2xfaD15ZXMKYWNfY3ZfaGVhZGVyX3N0ZGNrZGludF9o PW5vCmFjX2N2X2hlYWRlcl9zdGRpbnRfaD15ZXMKYWNfY3ZfaGVhZGVyX3N0ZGlvX2V4dF9o PXllcwphY19jdl9oZWFkZXJfc3RkaW9faD15ZXMKYWNfY3ZfaGVhZGVyX3N0ZGxpYl9oPXll cwphY19jdl9oZWFkZXJfc3RyaW5nX2g9eWVzCmFjX2N2X2hlYWRlcl9zdHJpbmdzX2g9eWVz CmFjX2N2X2hlYWRlcl9zeXNfYWNsX2g9eWVzCmFjX2N2X2hlYWRlcl9zeXNfY2RlZnNfaD15 ZXMKYWNfY3ZfaGVhZGVyX3N5c19mc19zNXBhcmFtX2g9bm8KYWNfY3ZfaGVhZGVyX3N5c19m c190eXBlc19oPW5vCmFjX2N2X2hlYWRlcl9zeXNfaW5vdGlmeV9oPXllcwphY19jdl9oZWFk ZXJfc3lzX2xvYWRhdmdfaD1ubwphY19jdl9oZWFkZXJfc3lzX21vdW50X2g9eWVzCmFjX2N2 X2hlYWRlcl9zeXNfcGFyYW1faD15ZXMKYWNfY3ZfaGVhZGVyX3N5c19wc3RhdF9oPW5vCmFj X2N2X2hlYWRlcl9zeXNfcmFuZG9tX2g9eWVzCmFjX2N2X2hlYWRlcl9zeXNfcmVzb3VyY2Vf aD15ZXMKYWNfY3ZfaGVhZGVyX3N5c19zZWxlY3RfaD15ZXMKYWNfY3ZfaGVhZGVyX3N5c19z b2NrZXRfaD15ZXMKYWNfY3ZfaGVhZGVyX3N5c19zb3VuZGNhcmRfaD15ZXMKYWNfY3ZfaGVh ZGVyX3N5c19zdGF0X2g9eWVzCmFjX2N2X2hlYWRlcl9zeXNfc3RhdGZzX2g9eWVzCmFjX2N2 X2hlYWRlcl9zeXNfc3lzY3RsX2g9bm8KYWNfY3ZfaGVhZGVyX3N5c19zeXNpbmZvX2g9eWVz CmFjX2N2X2hlYWRlcl9zeXNfc3lzbXBfaD1ubwphY19jdl9oZWFkZXJfc3lzX3N5c3RlbWlu Zm9faD1ubwphY19jdl9oZWFkZXJfc3lzX3RpbWVfaD15ZXMKYWNfY3ZfaGVhZGVyX3N5c190 eXBlc19oPXllcwphY19jdl9oZWFkZXJfc3lzX3VuX2g9eWVzCmFjX2N2X2hlYWRlcl9zeXNf dXRzbmFtZV9oPXllcwphY19jdl9oZWFkZXJfc3lzX3Zmc19oPXllcwphY19jdl9oZWFkZXJf c3lzX3dhaXRfaD15ZXMKYWNfY3ZfaGVhZGVyX3RpZmZpb19oPXllcwphY19jdl9oZWFkZXJf dW5pc3RkX2g9eWVzCmFjX2N2X2hlYWRlcl91dGlsX2g9bm8KYWNfY3ZfaGVhZGVyX3V0bXBf aD15ZXMKYWNfY3ZfaGVhZGVyX3ZhbGdyaW5kX3ZhbGdyaW5kX2g9eWVzCmFjX2N2X2hlYWRl cl92Zm9ya19oPW5vCmFjX2N2X2hlYWRlcl93Y2hhcl9oPXllcwphY19jdl9oZWFkZXJfeGNi X3NoYXBlX2g9eWVzCmFjX2N2X2hvc3Q9eDg2XzY0LXBjLWxpbnV4LWdudQphY19jdl9saWJf U01fU21jT3BlbkNvbm5lY3Rpb249eWVzCmFjX2N2X2xpYl9YMTFfeGNiX1hHZXRYQ0JDb25u ZWN0aW9uPXllcwphY19jdl9saWJfWGJzZF9tYWluPW5vCmFjX2N2X2xpYl9YY29tcG9zaXRl X1hDb21wb3NpdGVSZWRpcmVjdFdpbmRvdz15ZXMKYWNfY3ZfbGliX1hleHRfWFNoYXBlUXVl cnlWZXJzaW9uPXllcwphY19jdl9saWJfWGV4dF9YU3luY1F1ZXJ5RXh0ZW5zaW9uPXllcwph Y19jdl9saWJfWGV4dF9YZGJlQWxsb2NhdGVCYWNrQnVmZmVyTmFtZT15ZXMKYWNfY3ZfbGli X1hpX1hJR3JhYkJ1dHRvbj15ZXMKYWNfY3ZfbGliX1hwbV9YcG1SZWFkRmlsZVRvUGl4bWFw PXllcwphY19jdl9saWJfWHJlbmRlcl9YUmVuZGVyUXVlcnlFeHRlbnNpb249eWVzCmFjX2N2 X2xpYl9hbmxfZ2V0YWRkcmluZm9fYT15ZXMKYWNfY3ZfbGliX2dpZl9HaWZNYWtlTWFwT2Jq ZWN0PXllcwphY19jdl9saWJfZ3BtX0dwbV9PcGVuPXllcwphY19jdl9saWJfb3NzYXVkaW9f X29zc19pb2N0bD1ubwphY19jdl9saWJfb3RmX09URl9nZXRfdmFyaWF0aW9uX2dseXBocz15 ZXMKYWNfY3ZfbGliX3NlbGludXhfbGdldGZpbGVjb249eWVzCmFjX2N2X2xpYl9zcWxpdGUz X3NxbGl0ZTNfbG9hZF9leHRlbnNpb249eWVzCmFjX2N2X2xpYl9zcWxpdGUzX3NxbGl0ZTNf b3Blbl92Mj15ZXMKYWNfY3ZfbGliX3RpZmZfVElGRkdldFZlcnNpb249eWVzCmFjX2N2X2xp Yl94Y2Jfc2hhcGVfeGNiX3NoYXBlX2NvbWJpbmU9eWVzCmFjX2N2X2xpYl94Y2JfeGNiX3Ry YW5zbGF0ZV9jb29yZGluYXRlcz15ZXMKYWNfY3ZfbGliX3htbDJfaHRtbFJlYWRNZW1vcnk9 eWVzCmFjX2N2X21lbWJlcl9YSUJhcnJpZXJSZWxlYXNlUG9pbnRlckluZm9fZGV2aWNlaWQ9 eWVzCmFjX2N2X21lbWJlcl9YSUNDYWxsYmFja19jYWxsYmFjaz15ZXMKYWNfY3ZfbWVtYmVy X1hJR2VzdHVyZUNsYXNzSW5mb190eXBlPXllcwphY19jdl9tZW1iZXJfWElTY3JvbGxDbGFz c0luZm9fdHlwZT15ZXMKYWNfY3ZfbWVtYmVyX1hJVG91Y2hDbGFzc0luZm9fdHlwZT15ZXMK YWNfY3ZfbWVtYmVyX3N0cnVjdF9pZnJlcV9pZnJfYWRkcj15ZXMKYWNfY3ZfbWVtYmVyX3N0 cnVjdF9pZnJlcV9pZnJfYWRkcl9zYV9sZW49bm8KYWNfY3ZfbWVtYmVyX3N0cnVjdF9pZnJl cV9pZnJfYnJvYWRhZGRyPXllcwphY19jdl9tZW1iZXJfc3RydWN0X2lmcmVxX2lmcl9mbGFn cz15ZXMKYWNfY3ZfbWVtYmVyX3N0cnVjdF9pZnJlcV9pZnJfaHdhZGRyPXllcwphY19jdl9t ZW1iZXJfc3RydWN0X2lmcmVxX2lmcl9uZXRtYXNrPXllcwphY19jdl9tZW1iZXJfc3RydWN0 X3N0YXRfc3RfYXRpbV90dl9uc2VjPXllcwphY19jdl9tZW1iZXJfc3RydWN0X3N0YXRfc3Rf YmlydGh0aW1fdHZfbnNlYz1ubwphY19jdl9tZW1iZXJfc3RydWN0X3N0YXRfc3RfYmlydGh0 aW1lbnNlYz1ubwphY19jdl9tZW1iZXJfc3RydWN0X3N0YXRfc3RfYmlydGh0aW1lc3BlY190 dl9uc2VjPW5vCmFjX2N2X21lbWJlcl9zdHJ1Y3RfdG1fdG1fZ210b2ZmPXllcwphY19jdl9t ZW1iZXJfc3RydWN0X3RtX3RtX3pvbmU9eWVzCmFjX2N2X21lbWJlcl9zdHJ1Y3RfdW5pcGFp cl91bmljb2RlPXllcwphY19jdl9vYmpleHQ9bwphY19jdl9wYXRoX0VHUkVQPScvdXNyL2Jp bi9ncmVwIC1FJwphY19jdl9wYXRoX0dSRVA9L3Vzci9iaW4vZ3JlcAphY19jdl9wYXRoX0da SVBfUFJPRz0vdXNyL2Jpbi9nemlwCmFjX2N2X3BhdGhfSU5TVEFMTF9JTkZPPS91c3IvYmlu L2luc3RhbGwtaW5mbwphY19jdl9wYXRoX01BS0U9bWFrZQphY19jdl9wYXRoX2FjX3B0X1BL R19DT05GSUc9L3Vzci9iaW4vcGtnLWNvbmZpZwphY19jdl9wYXRoX2luc3RhbGw9Jy91c3Iv YmluL2luc3RhbGwgLWMnCmFjX2N2X3BhdGhfbWtkaXI9L3Vzci9iaW4vbWtkaXIKYWNfY3Zf cHJvZ19BV0s9Z2F3awphY19jdl9wcm9nX0NQUD0nZ2NjIC1FJwphY19jdl9wcm9nX2FjX2N0 X0FSPWFyCmFjX2N2X3Byb2dfYWNfY3RfQ0M9Z2NjCmFjX2N2X3Byb2dfYWNfY3RfUkFOTElC PXJhbmxpYgphY19jdl9wcm9nX2NjX2MxMT0KYWNfY3ZfcHJvZ19jY19nPXllcwphY19jdl9w cm9nX2NjX2djY19jX289eWVzCmFjX2N2X3Byb2dfY2Nfc3RkYz0KYWNfY3Zfc2FmZV90b19k ZWZpbmVfX19leHRlbnNpb25zX189eWVzCmFjX2N2X3NlYXJjaF9fX2dtcHpfcm9pbml0X249 LWxnbXAKYWNfY3Zfc2VhcmNoX2FjbF9nZXRfZmlsZT0tbGFjbAphY19jdl9zZWFyY2hfYmFj a3RyYWNlX3N5bWJvbHNfZmQ9J25vbmUgcmVxdWlyZWQnCmFjX2N2X3NlYXJjaF9jbG9ja19n ZXR0aW1lPSdub25lIHJlcXVpcmVkJwphY19jdl9zZWFyY2hfaW5mbGF0ZUVuZD0tbHoKYWNf Y3Zfc2VhcmNoX25hbm9zbGVlcD0nbm9uZSByZXF1aXJlZCcKYWNfY3Zfc2VhcmNoX3RpbWVy X3NldHRpbWU9J25vbmUgcmVxdWlyZWQnCmFjX2N2X3Nob3VsZF9kZWZpbmVfX3hvcGVuX3Nv dXJjZT1ubwphY19jdl9zaXplb2ZfbG9uZz04CmFjX2N2X3NpemVvZl9zcGVlZF90PTQKYWNf Y3Zfc3RydWN0X3RtPXRpbWUuaAphY19jdl9zeXNfbGFyZ2VmaWxlX29wdHM9J25vbmUgbmVl ZGVkJwphY19jdl9zeXNfbGFyZ2VmaWxlX3NvdXJjZT1ubwphY19jdl9zeXNfcG9zaXhfdGVy bWlvcz15ZXMKYWNfY3ZfdHlwZV9nZXRncm91cHM9Z2lkX3QKYWNfY3ZfdHlwZV9tYnN0YXRl X3Q9eWVzCmFjX2N2X3R5cGVfbW9kZV90PXllcwphY19jdl90eXBlX25saW5rX3Q9eWVzCmFj X2N2X3R5cGVfcGlkX3Q9eWVzCmFjX2N2X3R5cGVfc2lnaGFuZGxlcl90PXllcwphY19jdl90 eXBlX3NpZ3NldF90PXllcwphY19jdl90eXBlX3NvY2tsZW5fdD15ZXMKYWNfY3ZfdHlwZV90 aW1lem9uZV90PW5vCmFjX2N2X3R5cGVfdm9sYXRpbGVfc2lnX2F0b21pY190PXllcwphY19j dl90eXBlb2Zfc3RydWN0X3N0YXRfc3RfYXRpbV9pc19zdHJ1Y3RfdGltZXNwZWM9eWVzCmFj X2N2X3dvcmtpbmdfYWxsb2NhX2g9eWVzCmVtYWNzX2N2X2FsdGVybmF0ZV9zdGFjaz15ZXMK ZW1hY3NfY3ZfYXV0b2RlcGVuZD15ZXMKZW1hY3NfY3ZfY2xhbmc9bm8KZW1hY3NfY3ZfY3Bw X3hwbV9yZXR1cm5fYWxsb2NfcGl4ZWxzPXllcwplbWFjc19jdl9maW5kX2RlbGV0ZT0tZGVs ZXRlCmVtYWNzX2N2X2Z1bmNfX19idWlsdGluX2ZyYW1lX2FkZHJlc3M9eWVzCmVtYWNzX2N2 X2Z1bmNfX19idWlsdGluX3Vud2luZF9pbml0PXllcwplbWFjc19jdl9mdW5jX19zZXRqbXA9 eWVzCmVtYWNzX2N2X2Z1bmNfc2lnc2V0am1wPXllcwplbWFjc19jdl9nc2V0dGluZ3NfaW5f Z2lvPXllcwplbWFjc19jdl9ndGtfY29tcGlsZXM9eWVzCmVtYWNzX2N2X2hhdmVfdGltZXJm ZD15ZXMKZW1hY3NfY3ZfanBlZ2xpYj0tbGpwZWcKZW1hY3NfY3ZfbGFuZ2luZm9fX25sX3Bh cGVyX3dpZHRoPXllcwplbWFjc19jdl9sYW5naW5mb19jb2Rlc2V0PXllcwplbWFjc19jdl9s aWJfbWF0aD0tbG0KZW1hY3NfY3ZfbGlua3NfZ2xpYj15ZXMKZW1hY3NfY3ZfbGludXhfc3lz aW5mbz15ZXMKZW1hY3NfY3ZfbG5fc19maWxlb25seT0nbG4gLXMnCmVtYWNzX2N2X3BlcnNv bmFsaXR5X2FkZHJfbm9fcmFuZG9taXplPXllcwplbWFjc19jdl9wcm9nX2NjX2czPXllcwpl bWFjc19jdl9wcm9nX2NjX25vX3BpZT0nbm90IG5lZWRlZCcKZW1hY3NfY3ZfcHRocmVhZF9s aWI9J25vbmUgbmVlZGVkJwplbWFjc19jdl9wdGhyZWFkX3NldG5hbWVfbnBfMWFyZz1ubwpl bWFjc19jdl9wdGhyZWFkX3NldG5hbWVfbnBfM2FyZz1ubwplbWFjc19jdl9zYW5pdGl6ZV9h ZGRyZXNzPW5vCmVtYWNzX2N2X3NpZ25hbHNfdmlhX2NoYXJzPXllcwplbWFjc19jdl9zdGF0 ZW1lbnRfZXhwcmVzc2lvbnM9eWVzCmVtYWNzX2N2X3N0cnVjdF9hbGlnbm1lbnQ9eWVzCmVt YWNzX2N2X3Rlcm1pbmZvX2RlZmluZXNfQkM9eWVzCmVtYWNzX2N2X3RwdXRzX2xpYj0tbHRp bmZvCmVtYWNzX2N2X3VzYWJsZV9GSU9OUkVBRD15ZXMKZW1hY3NfY3ZfdXNhYmxlX1NJR0lP PXllcwplbWFjc19jdl92YXJfZG91Z19sZWFfbWFsbG9jPW5vCmVtYWNzX2N2X3gxMV92ZXJz aW9uXzY9eWVzCmVtYWNzX2N2X3hrYj15ZXMKZW1hY3NfY3Zfem5vY29tYnJlbG9jPSdub3Qg bmVlZGVkJwpmdV9jdl9zeXNfc3RhdF9zdGF0ZnMyX2Zyc2l6ZT15ZXMKZnVfY3Zfc3lzX3N0 YXRfc3RhdHZmczY0PW5vCmZ1X2N2X3N5c19zdGF0X3N0YXR2ZnM9eWVzCmZ1X2N2X3N5c190 cnVuY2F0aW5nX3N0YXRmcz1ubwpnbF9jdl9fX2J1aWx0aW5fZXhwZWN0PXllcwpnbF9jdl9h Y2xfQUNMX0ZJUlNUX0VOVFJZPXllcwpnbF9jdl9hY2xfQUNMX1RZUEVfRVhURU5ERUQ9bm8K Z2xfY3ZfY19fX2lubGluZT15ZXMKZ2xfY3ZfY19hbXN0ZXJkYW1fY29tcGlsZXI9bm8KZ2xf Y3ZfY19ib29sPW5vCmdsX2N2X2NfbXVsdGlhcmNoPW5vCmdsX2N2X2NjX25vbWZpX25lZWRl ZD1ubwpnbF9jdl9jY19ub21maV9zdXBwb3J0ZWQ9eWVzCmdsX2N2X2NjX3VuaW5pdGlhbGl6 ZWRfc3VwcG9ydGVkPXllcwpnbF9jdl9jY193YWxsb3c9LVduby1lcnJvcgpnbF9jdl9jb21w aWxlcl9jaGVja19kZWNsX29wdGlvbj1ub25lCmdsX2N2X2NvbXBpbGVyX2NsYW5nPW5vCmds X2N2X2NvcHlfZmlsZV9yYW5nZV9rbm93bl90b193b3JrPXllcwpnbF9jdl9kZWNsX251bGxf d29ya3M9eWVzCmdsX2N2X2RlY2xfcmVhZGxpbmtfd29ya3M9eWVzCmdsX2N2X2RlY2xfcmVh ZGxpbmthdF93b3Jrcz15ZXMKZ2xfY3ZfZG91YmxlX3NsYXNoX3Jvb3Q9bm8KZ2xfY3ZfZnNf c3BhY2U9eWVzCmdsX2N2X2Z1bmNfX19mcGVuZGluZz15ZXMKZ2xfY3ZfZnVuY19jb3B5X2Zp bGVfcmFuZ2U9eWVzCmdsX2N2X2Z1bmNfZHVwMl93b3Jrcz15ZXMKZ2xfY3ZfZnVuY19mY2ht b2RhdF93b3Jrcz15ZXMKZ2xfY3ZfZnVuY19mY250bF9mX2R1cGZkX2Nsb2V4ZWM9J25lZWRz IHJ1bnRpbWUgY2hlY2snCmdsX2N2X2Z1bmNfZmNudGxfZl9kdXBmZF93b3Jrcz15ZXMKZ2xf Y3ZfZnVuY19mZG9wZW5kaXJfd29ya3M9eWVzCmdsX2N2X2Z1bmNfZnJlZV9wcmVzZXJ2ZXNf ZXJybm89eWVzCmdsX2N2X2Z1bmNfZnN0YXRhdF96ZXJvX2ZsYWc9eWVzCmdsX2N2X2Z1bmNf ZnV0aW1lbnNfd29ya3M9eWVzCmdsX2N2X2Z1bmNfZ2V0ZHRhYmxlc2l6ZV93b3Jrcz15ZXMK Z2xfY3ZfZnVuY19nZXRvcHRfZ251PXllcwpnbF9jdl9mdW5jX2dldG9wdF9sb25nX2dudT15 ZXMKZ2xfY3ZfZnVuY19nZXRvcHRfcG9zaXg9eWVzCmdsX2N2X2Z1bmNfZ2V0cmFuZG9tX29r PXllcwpnbF9jdl9mdW5jX2dldHRpbWVvZmRheV9wb3NpeF9zaWduYXR1cmU9eWVzCmdsX2N2 X2Z1bmNfbG9jYWx0aW1lX3dvcmtzPXllcwpnbF9jdl9mdW5jX2xzdGF0X2RlcmVmZXJlbmNl c19zbGFzaGVkX3N5bWxpbms9eWVzCmdsX2N2X2Z1bmNfbWFsbG9jXzBfbm9ubnVsbD0xCmds X2N2X2Z1bmNfbWFsbG9jX3Bvc2l4PXllcwpnbF9jdl9mdW5jX21lbW1lbV93b3Jrc19hbHdh eXM9eWVzCmdsX2N2X2Z1bmNfbmFub3NsZWVwPSdubyAobWlzaGFuZGxlcyBsYXJnZSBhcmd1 bWVudHMpJwpnbF9jdl9mdW5jX3ByaW50Zl9hdHRyaWJ1dGVfZmxhdm9yPXN5c3RlbQpnbF9j dl9mdW5jX3BzZWxlY3RfZGV0ZWN0c19lYmFkZj15ZXMKZ2xfY3ZfZnVuY19wdGhyZWFkX3Np Z21hc2tfaW5fbGliY193b3Jrcz15ZXMKZ2xfY3ZfZnVuY19wdGhyZWFkX3NpZ21hc2tfbWFj cm89bm8KZ2xfY3ZfZnVuY19wdGhyZWFkX3NpZ21hc2tfcmV0dXJuX3dvcmtzPXllcwpnbF9j dl9mdW5jX3B0aHJlYWRfc2lnbWFza191bmJsb2NrX3dvcmtzPSdndWVzc2luZyB5ZXMnCmds X2N2X2Z1bmNfcmVfY29tcGlsZV9wYXR0ZXJuX3dvcmtpbmc9eWVzCmdsX2N2X2Z1bmNfcmVh ZGxpbmtfdHJhaWxpbmdfc2xhc2g9eWVzCmdsX2N2X2Z1bmNfcmVhZGxpbmtfdHJ1bmNhdGU9 eWVzCmdsX2N2X2Z1bmNfcmVhbHBhdGhfd29ya3M9eWVzCmdsX2N2X2Z1bmNfc2NoZWRfZ2V0 YWZmaW5pdHkzPXllcwpnbF9jdl9mdW5jX3N0cnRvaW1heD15ZXMKZ2xfY3ZfZnVuY19zeW1s aW5rX3dvcmtzPXllcwpnbF9jdl9mdW5jX3RpbWVzcGVjX2dldD15ZXMKZ2xfY3ZfZnVuY191 dGltZW5zYXRfd29ya3M9eWVzCmdsX2N2X2Z1bmNfd29ya2luZ19hY2xfZ2V0X2ZpbGU9eWVz CmdsX2N2X2Z1bmNfd29ya2luZ19ta3RpbWU9bm8KZ2xfY3ZfZnVuY193b3JraW5nX3V0aW1l cz15ZXMKZ2xfY3ZfZ2V0eGF0dHJfd2l0aF9wb3NpeF9hY2xzPXllcwpnbF9jdl9oYXZlX19f aGVhZGVyX2lubGluZT1ubwpnbF9jdl9oYXZlX2luY2x1ZGVfbmV4dD15ZXMKZ2xfY3ZfaGVh ZGVyX2Vycm5vX2hfY29tcGxldGU9eWVzCmdsX2N2X2hlYWRlcl9saW1pdHNfd2lkdGg9eWVz CmdsX2N2X2hlYWRlcl9zdGRpbnRfd2lkdGg9eWVzCmdsX2N2X2hlYWRlcl9zdGRpbnRfd2l0 aG91dF9TVERDX21hY3Jvcz15ZXMKZ2xfY3ZfaGVhZGVyX3N5c19zZWxlY3RfaF9zZWxmY29u dGFpbmVkPXllcwpnbF9jdl9oZWFkZXJfd29ya2luZ19zdGRhbGlnbl9oPSd5ZXMsIDxzdGRh bGlnbi5oPiBtYWNyb3MnCmdsX2N2X2hlYWRlcl93b3JraW5nX3N0ZGludF9oPXllcwpnbF9j dl9tYWNyb19PX0NMT0VYRUM9eWVzCmdsX2N2X21hbGxvY19wdHJkaWZmPXllcwpnbF9jdl9t aW5tYXhfaW5fbGltaXRzX2g9bm8KZ2xfY3ZfbWlubWF4X2luX3N5c19wYXJhbV9oPXllcwpn bF9jdl9uZXh0X2RpcmVudF9oPSc8ZGlyZW50Lmg+JwpnbF9jdl9uZXh0X2ZjbnRsX2g9Jzxm Y250bC5oPicKZ2xfY3ZfbmV4dF9nZXRvcHRfaD0nPGdldG9wdC5oPicKZ2xfY3ZfbmV4dF9p bnR0eXBlc19oPSc8aW50dHlwZXMuaD4nCmdsX2N2X25leHRfbGltaXRzX2g9JzxsaW1pdHMu aD4nCmdsX2N2X25leHRfc2lnbmFsX2g9JzxzaWduYWwuaD4nCmdsX2N2X25leHRfc3RkaW50 X2g9JzxzdGRpbnQuaD4nCmdsX2N2X25leHRfc3RkaW9faD0nPHN0ZGlvLmg+JwpnbF9jdl9u ZXh0X3N0ZGxpYl9oPSc8c3RkbGliLmg+JwpnbF9jdl9uZXh0X3N0cmluZ19oPSc8c3RyaW5n Lmg+JwpnbF9jdl9uZXh0X3N5c19yYW5kb21faD0nPHN5cy9yYW5kb20uaD4nCmdsX2N2X25l eHRfc3lzX3NlbGVjdF9oPSc8c3lzL3NlbGVjdC5oPicKZ2xfY3ZfbmV4dF9zeXNfc3RhdF9o PSc8c3lzL3N0YXQuaD4nCmdsX2N2X25leHRfc3lzX3RpbWVfaD0nPHN5cy90aW1lLmg+Jwpn bF9jdl9uZXh0X3N5c190eXBlc19oPSc8c3lzL3R5cGVzLmg+JwpnbF9jdl9uZXh0X3RpbWVf aD0nPHRpbWUuaD4nCmdsX2N2X25leHRfdW5pc3RkX2g9Jzx1bmlzdGQuaD4nCmdsX2N2X29u d2FyZHNfZnVuY19mYWNjZXNzYXQ9eWVzCmdsX2N2X29ud2FyZHNfZnVuY19mdXRpbWVucz15 ZXMKZ2xfY3Zfb253YXJkc19mdW5jX2dldGxvYWRhdmc9eWVzCmdsX2N2X29ud2FyZHNfZnVu Y19nZXRyYW5kb209eWVzCmdsX2N2X29ud2FyZHNfZnVuY19tZW1wY3B5PXllcwpnbF9jdl9v bndhcmRzX2Z1bmNfbWtvc3RlbXA9eWVzCmdsX2N2X29ud2FyZHNfZnVuY19waXBlMj15ZXMK Z2xfY3Zfb253YXJkc19mdW5jX3JlYWRsaW5rYXQ9eWVzCmdsX2N2X29ud2FyZHNfZnVuY19z Y2hlZF9nZXRhZmZpbml0eT15ZXMKZ2xfY3Zfb253YXJkc19mdW5jX3N0cGNweT15ZXMKZ2xf Y3Zfb253YXJkc19mdW5jX3RpbWVnbT15ZXMKZ2xfY3Zfb253YXJkc19mdW5jX3RpbWVzcGVj X2dldD15ZXMKZ2xfY3Zfb253YXJkc19mdW5jX3V0aW1lbnNhdD15ZXMKZ2xfY3ZfcHJvbW90 ZWRfbW9kZV90PW1vZGVfdApnbF9jdl9ycGxfYWxsb2NhPXllcwpnbF9jdl9zaWdfcHNlbGVj dD15ZXMKZ2xfY3Zfc291cmNlX2xpbmVfbGVuZ3RoX3VubGltaXRlZD15ZXMKZ2xfY3Zfc3Rh dGljX2Fzc2VydD0neWVzLCBhbiA8YXNzZXJ0Lmg+IG1hY3JvJwpnbF9jdl9zdHJ1Y3RfZGly ZW50X2RfdHlwZT15ZXMKZ2xfY3Zfc3lzX3N0cnVjdF90aW1lc3BlY19pbl90aW1lX2g9eWVz CmdsX2N2X3N5c19zdHJ1Y3RfdGltZXZhbD15ZXMKZ2xfY3Zfc3lzX3N0cnVjdF90aW1ldmFs X3R2X3NlYz15ZXMKZ2xfY3ZfdGltZV9oX2hhc19USU1FX1VUQz15ZXMKZ2xfY3ZfdGltZV9y X3Bvc2l4PXllcwpnbF9jdl90aW1lX3RfaXNfc2lnbmVkPXllcwpnbF9jdl90eXBlX21heF9h bGlnbl90PXllcwpnbF9jdl90eXBlX3NpZ3NldF90PXllcwpnbF9jdl93YXJuX2NfX1dhbGw9 eWVzCmdsX2N2X3dhcm5fY19fV2FyaXRoX2NvbnZlcnNpb249eWVzCmdsX2N2X3dhcm5fY19f V2FycmF5X2JvdW5kc18yPXllcwpnbF9jdl93YXJuX2NfX1dhdHRyaWJ1dGVfYWxpYXNfMj15 ZXMKZ2xfY3Zfd2Fybl9jX19XZGF0ZV90aW1lPXllcwpnbF9jdl93YXJuX2NfX1dkaXNhYmxl ZF9vcHRpbWl6YXRpb249eWVzCmdsX2N2X3dhcm5fY19fV2RvdWJsZV9wcm9tb3Rpb249eWVz CmdsX2N2X3dhcm5fY19fV2R1cGxpY2F0ZWRfY29uZD15ZXMKZ2xfY3Zfd2Fybl9jX19XZXJy b3JfX1d1bmtub3duX3dhcm5pbmdfb3B0aW9uPW5vCmdsX2N2X3dhcm5fY19fV2V4dHJhPXll cwpnbF9jdl93YXJuX2NfX1dmb3JtYXRfMj15ZXMKZ2xfY3Zfd2Fybl9jX19XZm9ybWF0X3Np Z25lZG5lc3M9eWVzCmdsX2N2X3dhcm5fY19fV2Zvcm1hdF90cnVuY2F0aW9uXzI9eWVzCmds X2N2X3dhcm5fY19fV2ltcGxpY2l0X2ZhbGx0aHJvdWdoXzU9eWVzCmdsX2N2X3dhcm5fY19f V2luaXRfc2VsZj15ZXMKZ2xfY3Zfd2Fybl9jX19XaW52YWxpZF9wY2g9eWVzCmdsX2N2X3dh cm5fY19fV2xvZ2ljYWxfb3A9eWVzCmdsX2N2X3dhcm5fY19fV21pc3NpbmdfZGVjbGFyYXRp b25zPXllcwpnbF9jdl93YXJuX2NfX1dtaXNzaW5nX2luY2x1ZGVfZGlycz15ZXMKZ2xfY3Zf d2Fybl9jX19XbWlzc2luZ19wcm90b3R5cGVzPXllcwpnbF9jdl93YXJuX2NfX1duZXN0ZWRf ZXh0ZXJucz15ZXMKZ2xfY3Zfd2Fybl9jX19Xbm9fYmlkaV9jaGFycz15ZXMKZ2xfY3Zfd2Fy bl9jX19Xbm9fZm9ybWF0X25vbmxpdGVyYWw9eWVzCmdsX2N2X3dhcm5fY19fV25vX21pc3Np bmdfZmllbGRfaW5pdGlhbGl6ZXJzPXllcwpnbF9jdl93YXJuX2NfX1dub19vdmVycmlkZV9p bml0PXllcwpnbF9jdl93YXJuX2NfX1dub19zaWduX2NvbXBhcmU9eWVzCmdsX2N2X3dhcm5f Y19fV25vX3R5cGVfbGltaXRzPXllcwpnbF9jdl93YXJuX2NfX1dub191bnVzZWRfcGFyYW1l dGVyPXllcwpnbF9jdl93YXJuX2NfX1dudWxsX2RlcmVmZXJlbmNlPXllcwpnbF9jdl93YXJu X2NfX1dvbGRfc3R5bGVfZGVmaW5pdGlvbj15ZXMKZ2xfY3Zfd2Fybl9jX19Xb3Blbm1wX3Np bWQ9eWVzCmdsX2N2X3dhcm5fY19fV3BhY2tlZD15ZXMKZ2xfY3Zfd2Fybl9jX19XcG9pbnRl cl9hcml0aD15ZXMKZ2xfY3Zfd2Fybl9jX19XcmVkdW5kYW50X2RlY2xzPXllcwpnbF9jdl93 YXJuX2NfX1dzaGlmdF9vdmVyZmxvd18yPXllcwpnbF9jdl93YXJuX2NfX1dzdHJpY3RfcHJv dG90eXBlcz15ZXMKZ2xfY3Zfd2Fybl9jX19Xc3VnZ2VzdF9hdHRyaWJ1dGVfZm9ybWF0PXll cwpnbF9jdl93YXJuX2NfX1dzdWdnZXN0X2F0dHJpYnV0ZV9ub3JldHVybj15ZXMKZ2xfY3Zf d2Fybl9jX19Xc3VnZ2VzdF9maW5hbF9tZXRob2RzPXllcwpnbF9jdl93YXJuX2NfX1dzdWdn ZXN0X2ZpbmFsX3R5cGVzPXllcwpnbF9jdl93YXJuX2NfX1d0cmFtcG9saW5lcz15ZXMKZ2xf Y3Zfd2Fybl9jX19XdW5pbml0aWFsaXplZD15ZXMKZ2xfY3Zfd2Fybl9jX19XdW5rbm93bl9w cmFnbWFzPXllcwpnbF9jdl93YXJuX2NfX1d1bnVzZWRfbWFjcm9zPXllcwpnbF9jdl93YXJu X2NfX1d1c2VfYWZ0ZXJfZnJlZV8zPXllcwpnbF9jdl93YXJuX2NfX1d2YXJpYWRpY19tYWNy b3M9eWVzCmdsX2N2X3dhcm5fY19fV3ZlY3Rvcl9vcGVyYXRpb25fcGVyZm9ybWFuY2U9eWVz CmdsX2N2X3dhcm5fY19fV3ZsYV9sYXJnZXJfdGhhbl80MDMxPXllcwpnbF9jdl93YXJuX2Nf X1d3cml0ZV9zdHJpbmdzPXllcwpnbF9jdl93YXJuX2NfX2Zub19jb21tb249eWVzCmdsX2N2 X3hhdHRyX2xpYj0tbGF0dHIKZ3RfY3ZfY193Y2hhcl90PXllcwpndF9jdl9zc2l6ZV90PXll cwpndF9jdl92YXJfZW52aXJvbl9kZWNsYXJhdGlvbj15ZXMKcGtnX2N2X0FMU0FfQ0ZMQUdT PQpwa2dfY3ZfQUxTQV9MSUJTPS1sYXNvdW5kCnBrZ19jdl9DQUlST19DRkxBR1M9Jy1JL3Vz ci9pbmNsdWRlL2NhaXJvIC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIveDg2 XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL3BpeG1hbi0x IC1JL3Vzci9pbmNsdWRlL3V1aWQgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9p bmNsdWRlL2xpYnBuZzE2Jwpwa2dfY3ZfQ0FJUk9fTElCUz0tbGNhaXJvCnBrZ19jdl9DQUlS T19YQ0JfQ0ZMQUdTPSctSS91c3IvaW5jbHVkZS9jYWlybyAtSS91c3IvaW5jbHVkZS9nbGli LTIuMCAtSS91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVkZSAtSS91 c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91c3IvaW5jbHVkZS91dWlkIC1JL3Vzci9pbmNsdWRl L2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9saWJwbmcxNicKcGtnX2N2X0NBSVJPX1hDQl9M SUJTPSctbGNhaXJvIC1seGNiIC1seGNiLXJlbmRlcicKcGtnX2N2X0RCVVNfQ0ZMQUdTPSct SS91c3IvaW5jbHVkZS9kYnVzLTEuMCAtSS91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZGJ1 cy0xLjAvaW5jbHVkZScKcGtnX2N2X0RCVVNfTElCUz0tbGRidXMtMQpwa2dfY3ZfRk9OVENP TkZJR19DRkxBR1M9Jy1JL3Vzci9pbmNsdWRlL3V1aWQgLUkvdXNyL2luY2x1ZGUvZnJlZXR5 cGUyIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2Jwpwa2dfY3ZfRk9OVENPTkZJR19MSUJTPSct bGZvbnRjb25maWcgLWxmcmVldHlwZScKcGtnX2N2X0ZSRUVUWVBFX0NGTEFHUz0nLUkvdXNy L2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2Jwpwa2dfY3ZfRlJF RVRZUEVfTElCUz0tbGZyZWV0eXBlCnBrZ19jdl9HT0JKRUNUX0NGTEFHUz0nLUkvdXNyL2lu Y2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2lu Y2x1ZGUnCnBrZ19jdl9HT0JKRUNUX0xJQlM9Jy1sZ29iamVjdC0yLjAgLWxnbGliLTIuMCcK cGtnX2N2X0dTRVRUSU5HU19DRkxBR1M9Jy1wdGhyZWFkIC1JL3Vzci9pbmNsdWRlL2xpYm1v dW50IC1JL3Vzci9pbmNsdWRlL2Jsa2lkIC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vz ci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlJwpwa2dfY3ZfR1NFVFRJ TkdTX0xJQlM9Jy1sZ2lvLTIuMCAtbGdvYmplY3QtMi4wIC1sZ2xpYi0yLjAnCnBrZ19jdl9H VEtfQ0ZMQUdTPSctcHRocmVhZCAtSS91c3IvaW5jbHVkZS9ndGstMy4wIC1JL3Vzci9pbmNs dWRlL2F0LXNwaTItYXRrLzIuMCAtSS91c3IvaW5jbHVkZS9hdC1zcGktMi4wIC1JL3Vzci9p bmNsdWRlL2RidXMtMS4wIC1JL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9kYnVzLTEuMC9p bmNsdWRlIC1JL3Vzci9pbmNsdWRlL2d0ay0zLjAgLUkvdXNyL2luY2x1ZGUvZ2lvLXVuaXgt Mi4wIC1JL3Vzci9pbmNsdWRlL2NhaXJvIC1JL3Vzci9pbmNsdWRlL3BhbmdvLTEuMCAtSS91 c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9wYW5nby0xLjAgLUkvdXNyL2lu Y2x1ZGUvZnJpYmlkaSAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9h dGstMS4wIC1JL3Vzci9pbmNsdWRlL2NhaXJvIC1JL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1J L3Vzci9pbmNsdWRlL3V1aWQgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNs dWRlL2dkay1waXhidWYtMi4wIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNs dWRlL3g4Nl82NC1saW51eC1nbnUgLUkvdXNyL2luY2x1ZGUvbGlibW91bnQgLUkvdXNyL2lu Y2x1ZGUvYmxraWQgLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi94ODZfNjQt bGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUnCnBrZ19jdl9HVEtfTElCUz0nLWxndGstMyAt bGdkay0zIC1scGFuZ29jYWlyby0xLjAgLWxwYW5nby0xLjAgLWxoYXJmYnV6eiAtbGF0ay0x LjAgLWxjYWlyby1nb2JqZWN0IC1sY2Fpcm8gLWxnZGtfcGl4YnVmLTIuMCAtbGdpby0yLjAg LWxnb2JqZWN0LTIuMCAtbGdsaWItMi4wJwpwa2dfY3ZfSEFSRkJVWlpfQ0ZMQUdTPSctSS91 c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2lu Y2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi94ODZf NjQtbGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUnCnBrZ19jdl9IQVJGQlVaWl9MSUJTPS1s aGFyZmJ1enoKcGtnX2N2X0pTT05fQ0ZMQUdTPQpwa2dfY3ZfSlNPTl9MSUJTPS1samFuc3Nv bgpwa2dfY3ZfTENNUzJfQ0ZMQUdTPQpwa2dfY3ZfTENNUzJfTElCUz0tbGxjbXMyCnBrZ19j dl9MSUJHTlVUTFNfQ0ZMQUdTPS1JL3Vzci9pbmNsdWRlL3AxMS1raXQtMQpwa2dfY3ZfTElC R05VVExTX0xJQlM9LWxnbnV0bHMKcGtnX2N2X0xJQk9URl9DRkxBR1M9Jy1JL3Vzci9pbmNs dWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9saWJwbmcxNicKcGtnX2N2X0xJQk9URl9M SUJTPSctbG90ZiAtbGZyZWV0eXBlJwpwa2dfY3ZfTElCU1lTVEVNRF9DRkxBR1M9CnBrZ19j dl9MSUJTWVNURU1EX0xJQlM9LWxzeXN0ZW1kCnBrZ19jdl9MSUJYTUwyX0NGTEFHUz0tSS91 c3IvaW5jbHVkZS9saWJ4bWwyCnBrZ19jdl9MSUJYTUwyX0xJQlM9LWx4bWwyCnBrZ19jdl9N MTdOX0ZMVF9DRkxBR1M9CnBrZ19jdl9NMTdOX0ZMVF9MSUJTPSctbG0xN24tY29yZSAtbG0x N24tZmx0IC1sbTE3bi1jb3JlJwpwa2dfY3ZfUE5HX0NGTEFHUz0tSS91c3IvaW5jbHVkZS9s aWJwbmcxNgpwa2dfY3ZfUE5HX0xJQlM9LWxwbmcxNgpwa2dfY3ZfUlNWR19DRkxBR1M9Jy1w dGhyZWFkIC1JL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1JL3Vzci9pbmNsdWRlL2dkay1w aXhidWYtMi4wIC1JL3Vzci9pbmNsdWRlL3g4Nl82NC1saW51eC1nbnUgLUkvdXNyL2luY2x1 ZGUvbGlibW91bnQgLUkvdXNyL2luY2x1ZGUvYmxraWQgLUkvdXNyL2luY2x1ZGUvY2Fpcm8g LUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2ds aWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLUkvdXNyL2luY2x1ZGUv dXVpZCAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYn CnBrZ19jdl9SU1ZHX0xJQlM9Jy1scnN2Zy0yIC1sbSAtbGdpby0yLjAgLWxnZGtfcGl4YnVm LTIuMCAtbGdvYmplY3QtMi4wIC1sZ2xpYi0yLjAgLWxjYWlybycKcGtnX2N2X1dFQlBfQ0ZM QUdTPSctaXN5c3RlbSAvdXNyL2luY2x1ZGUvd2VicCcKcGtnX2N2X1dFQlBfTElCUz0tbHdl YnBkZW11eApwa2dfY3ZfWEZJWEVTX0NGTEFHUz0KcGtnX2N2X1hGSVhFU19MSUJTPS1sWGZp eGVzCnBrZ19jdl9YSU5FUkFNQV9DRkxBR1M9CnBrZ19jdl9YSU5FUkFNQV9MSUJTPS1sWGlu ZXJhbWEKcGtnX2N2X1hJTlBVVF9DRkxBR1M9CnBrZ19jdl9YSU5QVVRfTElCUz0tbFhpCnBr Z19jdl9YUkFORFJfQ0ZMQUdTPQpwa2dfY3ZfWFJBTkRSX0xJQlM9LWxYcmFuZHIKCiMjIC0t LS0tLS0tLS0tLS0tLS0tICMjCiMjIE91dHB1dCB2YXJpYWJsZXMuICMjCiMjIC0tLS0tLS0t LS0tLS0tLS0tICMjCgpBTExPQ0E9JycKQUxMT0NBX0g9J2FsbG9jYS5oJwpBTFNBX0NGTEFH Uz0nJwpBTFNBX0xJQlM9Jy1sYXNvdW5kJwpBTV9ERUZBVUxUX1ZFUkJPU0lUWT0nMCcKQVBQ TEVfVU5JVkVSU0FMX0JVSUxEPScwJwpBUj0nYXInCkFSRkxBR1M9J2NyJwpBU1NFUlRfSD0n JwpBVVRPX0RFUEVORD0neWVzJwpBV0s9J2dhd2snCkJJVFNJWkVPRl9QVFJESUZGX1Q9JycK QklUU0laRU9GX1NJR19BVE9NSUNfVD0nJwpCSVRTSVpFT0ZfU0laRV9UPScnCkJJVFNJWkVP Rl9XQ0hBUl9UPScnCkJJVFNJWkVPRl9XSU5UX1Q9JycKQkxFU1NNQUlMX1RBUkdFVD0nJwpC UkVXPScnCkJVSUxEX0RFVEFJTFM9JycKQllURVNXQVBfSD0nJwpDQUlST19DRkxBR1M9Jy1p c3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0y LjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRl IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUv dXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUv Z2xpYi0yLjAvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL3V1aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlicG5nMTYnCkNBSVJPX0xJQlM9Jy1sY2Fpcm8gLWxj YWlybyAtbHhjYiAtbHhjYi1yZW5kZXInCkNBSVJPX1hDQl9DRkxBR1M9Jy1pc3lzdGVtIC91 c3IvaW5jbHVkZS9jYWlybyAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0 ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9waXhtYW4tMSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvdXVpZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJw bmcxNicKQ0FJUk9fWENCX0xJQlM9Jy1sY2Fpcm8gLWx4Y2IgLWx4Y2ItcmVuZGVyJwpDQUlS T19YTElCX0NGTEFHUz0nJwpDQUlST19YTElCX0xJQlM9JycKQ0M9J2djYycKQ0ZMQUdTPSct ZzMgLU8yJwpDRkxBR1NfU09VTkQ9JyAnCkNIRUNLX1NUUlVDVFM9J2ZhbHNlJwpDTElFTlRS RVM9JycKQ0xJRU5UVz0nJwpDTE9DS19USU1FX0xJQj0nJwpDTV9PQko9J2NtLm8nCkNPTV9F UlJMSUI9JycKQ1BQPSdnY2MgLUUnCkNQUEZMQUdTPScgICcKQ1JZUFRPTElCPScnCkNYWD0n JwpDWFhGTEFHUz0nJwpDWUdXSU5fT0JKPScnCkNfU1dJVENIX01BQ0hJTkU9JycKQ19TV0lU Q0hfU1lTVEVNPScnCkNfU1dJVENIX1hfU0lURT0nIC1wdGhyZWFkIC1pc3lzdGVtIC91c3Iv aW5jbHVkZS9ndGstMy4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9hdC1zcGkyLWF0ay8yLjAg LWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2F0LXNwaS0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2RidXMtMS4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZGJ1cy0xLjAv aW5jbHVkZSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ3RrLTMuMCAtaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvZ2lvLXVuaXgtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvcGFuZ28tMS4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9oYXJmYnV6 eiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvcGFuZ28tMS4wIC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9mcmliaWRpIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9oYXJmYnV6eiAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvYXRrLTEuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvY2Fpcm8gLWlzeXN0ZW0g L3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5jbHVkZS91dWlkIC1pc3lz dGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dkay1w aXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNy L2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudSAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvbGlibW91 bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9n bGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2lu Y2x1ZGUnCkRCVVNfQ0ZMQUdTPSctaXN5c3RlbSAvdXNyL2luY2x1ZGUvZGJ1cy0xLjAgLWlz eXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9kYnVzLTEuMC9pbmNsdWRlJwpEQlVT X0xJQlM9Jy1sZGJ1cy0xJwpEQlVTX09CSj0nZGJ1c2JpbmQubycKREVGUz0nLURIQVZFX0NP TkZJR19IJwpERVNMSUI9JycKRE9DTUlTQ19XMzI9JycKRFVNUElORz0ncGR1bXBlcicKRFlO QU1JQ19MSUJfU0VDT05EQVJZX1NVRkZJWD0nJwpEWU5BTUlDX0xJQl9TVUZGSVg9Jy5zbycK RFlOTElCX09CSj0nZHlubGliLm8nCkVDSE9fQz0nJwpFQ0hPX049Jy1uJwpFQ0hPX1Q9JycK RUdSRVA9Jy91c3IvYmluL2dyZXAgLUUnCkVNQUNTUkVTPScnCkVNQUNTX01BTklGRVNUPScn CkVNVUxUSUhPUF9ISURERU49JycKRU1VTFRJSE9QX1ZBTFVFPScnCkVOT0xJTktfSElEREVO PScnCkVOT0xJTktfVkFMVUU9JycKRU9WRVJGTE9XX0hJRERFTj0nJwpFT1ZFUkZMT1dfVkFM VUU9JycKRVJSTk9fSD0nJwpFVUlEQUNDRVNTX0xJQkdFTj0nJwpFWEVDSU5GT19IPScnCkVY RUVYVD0nJwpGSUxFX0hBU19BQ0xfTElCPScnCkZJTkRfREVMRVRFPSctZGVsZXRlJwpGSVJT VEZJTEVfT0JKPScnCkZPTlRDT05GSUdfQ0ZMQUdTPSctaXN5c3RlbSAvdXNyL2luY2x1ZGUv dXVpZCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVtIC91c3IvaW5j bHVkZS9saWJwbmcxNicKRk9OVENPTkZJR19MSUJTPSctbGZvbnRjb25maWcgLWxmcmVldHlw ZScKRk9OVF9PQko9J3hmb250Lm8gZnRmb250Lm8gZnRjcmZvbnQubyBoYmZvbnQubycKRlJF RVRZUEVfQ0ZMQUdTPSctaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9saWJwbmcxNicKRlJFRVRZUEVfTElCUz0nLWxmcmVldHlwZScKR0NP TkZfQ0ZMQUdTPScnCkdDT05GX0xJQlM9JycKR0VUQUREUklORk9fQV9MSUJTPSctbGFubCcK R0VUTE9BREFWR19MSUJTPScnCkdFVE9QVF9DREVGU19IPScnCkdFVE9QVF9IPScnCkdFVFJB TkRPTV9MSUI9JycKR0ZJTEVOT1RJRllfQ0ZMQUdTPScnCkdGSUxFTk9USUZZX0xJQlM9JycK R0xfQ0ZMQUdfQUxMT1dfV0FSTklOR1M9Jy1Xbm8tZXJyb3InCkdMX0NGTEFHX0dOVUxJQl9X QVJOSU5HUz0nIC1Xbm8tY2FzdC1xdWFsIC1Xbm8tY29udmVyc2lvbiAtV25vLWZsb2F0LWVx dWFsIC1Xbm8tc2lnbi1jb21wYXJlIC1Xbm8tdW5kZWYgLVduby11bnVzZWQtZnVuY3Rpb24g LVduby11bnVzZWQtcGFyYW1ldGVyIC1Xbm8tZmxvYXQtY29udmVyc2lvbiAtV2ltcGxpY2l0 LWZhbGx0aHJvdWdoIC1Xbm8tcGVkYW50aWMgLVduby1zaWduLWNvbnZlcnNpb24gLVduby10 eXBlLWxpbWl0cyAtV25vLXVuc3VmZml4ZWQtZmxvYXQtY29uc3RhbnRzJwpHTF9DT05EX0xJ QlRPT0xfQ09ORElUSU9OPScnCkdMX0NPTkRfT0JKX0NBTk9OSUNBTElaRV9MR1BMX0NPTkRJ VElPTj0nJwpHTF9DT05EX09CSl9DT1BZX0ZJTEVfUkFOR0VfQ09ORElUSU9OPScnCkdMX0NP TkRfT0JKX0RJUkZEX0NPTkRJVElPTj0nJwpHTF9DT05EX09CSl9EVVAyX0NPTkRJVElPTj0n JwpHTF9DT05EX09CSl9FVUlEQUNDRVNTX0NPTkRJVElPTj0nJwpHTF9DT05EX09CSl9FWEVD SU5GT19DT05ESVRJT049JycKR0xfQ09ORF9PQkpfRkFDQ0VTU0FUX0NPTkRJVElPTj0nJwpH TF9DT05EX09CSl9GQ0hNT0RBVF9DT05ESVRJT049JycKR0xfQ09ORF9PQkpfRkNOVExfQ09O RElUSU9OPScxJwpHTF9DT05EX09CSl9GRE9QRU5ESVJfQ09ORElUSU9OPScnCkdMX0NPTkRf T0JKX0ZQRU5ESU5HX0NPTkRJVElPTj0nJwpHTF9DT05EX09CSl9GUkVFX0NPTkRJVElPTj0n JwpHTF9DT05EX09CSl9GU1RBVEFUX0NPTkRJVElPTj0nJwpHTF9DT05EX09CSl9GU1VTQUdF X0NPTkRJVElPTj0nMScKR0xfQ09ORF9PQkpfRlNZTkNfQ09ORElUSU9OPScnCkdMX0NPTkRf T0JKX0ZVVElNRU5TX0NPTkRJVElPTj0nJwpHTF9DT05EX09CSl9HRVREVEFCTEVTSVpFX0NP TkRJVElPTj0nJwpHTF9DT05EX09CSl9HRVRHUk9VUFNfQ09ORElUSU9OPScnCkdMX0NPTkRf T0JKX0dFVExPQURBVkdfQ09ORElUSU9OPScnCkdMX0NPTkRfT0JKX0dFVE9QVF9DT05ESVRJ T049JycKR0xfQ09ORF9PQkpfR0VUUkFORE9NX0NPTkRJVElPTj0nJwpHTF9DT05EX09CSl9H RVRUSU1FT0ZEQVlfQ09ORElUSU9OPScnCkdMX0NPTkRfT0JKX0dST1VQX01FTUJFUl9DT05E SVRJT049JycKR0xfQ09ORF9PQkpfTENITU9EX0NPTkRJVElPTj0nJwpHTF9DT05EX09CSl9M U1RBVF9DT05ESVRJT049JycKR0xfQ09ORF9PQkpfTUVNUENQWV9DT05ESVRJT049JycKR0xf Q09ORF9PQkpfTUVNUkNIUl9DT05ESVRJT049JycKR0xfQ09ORF9PQkpfTUVNU0VUX0VYUExJ Q0lUX0NPTkRJVElPTj0nMScKR0xfQ09ORF9PQkpfTUlOSV9HTVBfR05VTElCX0NPTkRJVElP Tj0nJwpHTF9DT05EX09CSl9NS09TVEVNUF9DT05ESVRJT049JycKR0xfQ09ORF9PQkpfTkFO T1NMRUVQX0NPTkRJVElPTj0nMScKR0xfQ09ORF9PQkpfT1BFTl9DT05ESVRJT049JycKR0xf Q09ORF9PQkpfUFNFTEVDVF9DT05ESVRJT049JycKR0xfQ09ORF9PQkpfUFRIUkVBRF9TSUdN QVNLX0NPTkRJVElPTj0nJwpHTF9DT05EX09CSl9SQVdNRU1DSFJfQ09ORElUSU9OPScnCkdM X0NPTkRfT0JKX1JFQURMSU5LQVRfQ09ORElUSU9OPScnCkdMX0NPTkRfT0JKX1JFQURMSU5L X0NPTkRJVElPTj0nJwpHTF9DT05EX09CSl9SRUdFWF9DT05ESVRJT049JycKR0xfQ09ORF9P QkpfU0lHMlNUUl9DT05ESVRJT049JzEnCkdMX0NPTkRfT0JKX1NJR0RFU0NSX05QX0NPTkRJ VElPTj0nJwpHTF9DT05EX09CSl9TVERJT19SRUFEX0NPTkRJVElPTj0nJwpHTF9DT05EX09C Sl9TVERJT19XUklURV9DT05ESVRJT049JycKR0xfQ09ORF9PQkpfU1RQQ1BZX0NPTkRJVElP Tj0nJwpHTF9DT05EX09CSl9TVFJOTEVOX0NPTkRJVElPTj0nJwpHTF9DT05EX09CSl9TVFJU T0lNQVhfQ09ORElUSU9OPScnCkdMX0NPTkRfT0JKX1NUUlRPTExfQ09ORElUSU9OPScnCkdM X0NPTkRfT0JKX1NZTUxJTktfQ09ORElUSU9OPScnCkdMX0NPTkRfT0JKX1RJTUVHTV9DT05E SVRJT049JzEnCkdMX0NPTkRfT0JKX1RJTUVfUlpfQ09ORElUSU9OPScxJwpHTF9DT05EX09C Sl9USU1FX1JfQ09ORElUSU9OPScnCkdMX0NPTkRfT0JKX1VUSU1FTlNBVF9DT05ESVRJT049 JycKR0xfR0VORVJBVEVfQUxMT0NBX0hfQ09ORElUSU9OPScxJwpHTF9HRU5FUkFURV9BU1NF UlRfSF9DT05ESVRJT049JycKR0xfR0VORVJBVEVfQllURVNXQVBfSF9DT05ESVRJT049JycK R0xfR0VORVJBVEVfRVJSTk9fSF9DT05ESVRJT049JycKR0xfR0VORVJBVEVfRVhFQ0lORk9f SF9DT05ESVRJT049JycKR0xfR0VORVJBVEVfR0VUT1BUX0NERUZTX0hfQ09ORElUSU9OPScn CkdMX0dFTkVSQVRFX0dFVE9QVF9IX0NPTkRJVElPTj0nJwpHTF9HRU5FUkFURV9HTVBfR01Q X0hfQ09ORElUSU9OPScnCkdMX0dFTkVSQVRFX0dNUF9IX0NPTkRJVElPTj0nJwpHTF9HRU5F UkFURV9JRUVFNzU0X0hfQ09ORElUSU9OPScnCkdMX0dFTkVSQVRFX0xJTUlUU19IX0NPTkRJ VElPTj0nMScKR0xfR0VORVJBVEVfTUlOSV9HTVBfSF9DT05ESVRJT049JycKR0xfR0VORVJB VEVfU1REQ0tESU5UX0hfQ09ORElUSU9OPScxJwpHTF9HRU5FUkFURV9TVERERUZfSF9DT05E SVRJT049JycKR0xfR0VORVJBVEVfU1RESU5UX0hfQ09ORElUSU9OPScnCkdMX0dOVUxJQl9B Q0NFU1M9JzAnCkdMX0dOVUxJQl9BTElHTkVEX0FMTE9DPScwJwpHTF9HTlVMSUJfQUxQSEFT T1JUPScwJwpHTF9HTlVMSUJfQVRPTEw9JzAnCkdMX0dOVUxJQl9DQUxMT0NfR05VPScwJwpH TF9HTlVMSUJfQ0FMTE9DX1BPU0lYPScwJwpHTF9HTlVMSUJfQ0FOT05JQ0FMSVpFX0ZJTEVf TkFNRT0nMScKR0xfR05VTElCX0NIRElSPScwJwpHTF9HTlVMSUJfQ0hNT0Q9JzAnCkdMX0dO VUxJQl9DSE9XTj0nMCcKR0xfR05VTElCX0NMT1NFPScwJwpHTF9HTlVMSUJfQ0xPU0VESVI9 JzAnCkdMX0dOVUxJQl9DT1BZX0ZJTEVfUkFOR0U9JzEnCkdMX0dOVUxJQl9DUkVBVD0nMCcK R0xfR05VTElCX0NUSU1FPScwJwpHTF9HTlVMSUJfRElSRkQ9JzAnCkdMX0dOVUxJQl9EUFJJ TlRGPScwJwpHTF9HTlVMSUJfRFVQMj0nMScKR0xfR05VTElCX0RVUDM9JzAnCkdMX0dOVUxJ Ql9EVVA9JzAnCkdMX0dOVUxJQl9FTlZJUk9OPScxJwpHTF9HTlVMSUJfRVVJREFDQ0VTUz0n MCcKR0xfR05VTElCX0VYRUNMPScwJwpHTF9HTlVMSUJfRVhFQ0xFPScwJwpHTF9HTlVMSUJf RVhFQ0xQPScwJwpHTF9HTlVMSUJfRVhFQ1Y9JzAnCkdMX0dOVUxJQl9FWEVDVkU9JzAnCkdM X0dOVUxJQl9FWEVDVlA9JzAnCkdMX0dOVUxJQl9FWEVDVlBFPScwJwpHTF9HTlVMSUJfRVhQ TElDSVRfQlpFUk89JzAnCkdMX0dOVUxJQl9GQUNDRVNTQVQ9JzEnCkdMX0dOVUxJQl9GQ0hE SVI9JzAnCkdMX0dOVUxJQl9GQ0hNT0RBVD0nMScKR0xfR05VTElCX0ZDSE9XTkFUPScwJwpH TF9HTlVMSUJfRkNMT1NFPScwJwpHTF9HTlVMSUJfRkNOVEw9JzEnCkdMX0dOVUxJQl9GREFU QVNZTkM9JzAnCkdMX0dOVUxJQl9GRE9QRU49JzAnCkdMX0dOVUxJQl9GRE9QRU5ESVI9JzEn CkdMX0dOVUxJQl9GRkxVU0g9JzAnCkdMX0dOVUxJQl9GRlNMPScwJwpHTF9HTlVMSUJfRkZT TEw9JzAnCkdMX0dOVUxJQl9GR0VUQz0nMScKR0xfR05VTElCX0ZHRVRTPScxJwpHTF9HTlVM SUJfRk9QRU49JzAnCkdMX0dOVUxJQl9GT1BFTl9HTlU9JzAnCkdMX0dOVUxJQl9GUFJJTlRG PScxJwpHTF9HTlVMSUJfRlBSSU5URl9QT1NJWD0nMCcKR0xfR05VTElCX0ZQVVJHRT0nMCcK R0xfR05VTElCX0ZQVVRDPScxJwpHTF9HTlVMSUJfRlBVVFM9JzEnCkdMX0dOVUxJQl9GUkVB RD0nMScKR0xfR05VTElCX0ZSRUVfUE9TSVg9JzEnCkdMX0dOVUxJQl9GUkVPUEVOPScwJwpH TF9HTlVMSUJfRlNDQU5GPScxJwpHTF9HTlVMSUJfRlNFRUs9JzAnCkdMX0dOVUxJQl9GU0VF S089JzAnCkdMX0dOVUxJQl9GU1RBVD0nMCcKR0xfR05VTElCX0ZTVEFUQVQ9JzEnCkdMX0dO VUxJQl9GU1lOQz0nMScKR0xfR05VTElCX0ZURUxMPScwJwpHTF9HTlVMSUJfRlRFTExPPScw JwpHTF9HTlVMSUJfRlRSVU5DQVRFPScwJwpHTF9HTlVMSUJfRlVUSU1FTlM9JzEnCkdMX0dO VUxJQl9GV1JJVEU9JzEnCkdMX0dOVUxJQl9HRVRDPScxJwpHTF9HTlVMSUJfR0VUQ0hBUj0n MScKR0xfR05VTElCX0dFVENXRD0nMCcKR0xfR05VTElCX0dFVERFTElNPScwJwpHTF9HTlVM SUJfR0VURE9NQUlOTkFNRT0nMCcKR0xfR05VTElCX0dFVERUQUJMRVNJWkU9JzEnCkdMX0dO VUxJQl9HRVRFTlRST1BZPScwJwpHTF9HTlVMSUJfR0VUR1JPVVBTPScwJwpHTF9HTlVMSUJf R0VUSE9TVE5BTUU9JzAnCkdMX0dOVUxJQl9HRVRMSU5FPScwJwpHTF9HTlVMSUJfR0VUTE9B REFWRz0nMScKR0xfR05VTElCX0dFVExPR0lOPScwJwpHTF9HTlVMSUJfR0VUTE9HSU5fUj0n MCcKR0xfR05VTElCX0dFVE9QVF9QT1NJWD0nMScKR0xfR05VTElCX0dFVFBBR0VTSVpFPScw JwpHTF9HTlVMSUJfR0VUUEFTUz0nMCcKR0xfR05VTElCX0dFVFBBU1NfR05VPScwJwpHTF9H TlVMSUJfR0VUUFJPR05BTUU9JzAnCkdMX0dOVUxJQl9HRVRSQU5ET009JzEnCkdMX0dOVUxJ Ql9HRVRTVUJPUFQ9JzAnCkdMX0dOVUxJQl9HRVRUSU1FT0ZEQVk9JzEnCkdMX0dOVUxJQl9H RVRVTUFTSz0nMCcKR0xfR05VTElCX0dFVFVTRVJTSEVMTD0nMCcKR0xfR05VTElCX0dSQU5U UFQ9JzAnCkdMX0dOVUxJQl9HUk9VUF9NRU1CRVI9JzAnCkdMX0dOVUxJQl9JTUFYQUJTPScw JwpHTF9HTlVMSUJfSU1BWERJVj0nMCcKR0xfR05VTElCX0lTQVRUWT0nMCcKR0xfR05VTElC X0xDSE1PRD0nMCcKR0xfR05VTElCX0xDSE9XTj0nMCcKR0xfR05VTElCX0xJTks9JzAnCkdM X0dOVUxJQl9MSU5LQVQ9JzAnCkdMX0dOVUxJQl9MT0NBTFRJTUU9JzAnCkdMX0dOVUxJQl9M U0VFSz0nMCcKR0xfR05VTElCX0xTVEFUPScxJwpHTF9HTlVMSUJfTUFMTE9DX0dOVT0nMCcK R0xfR05VTElCX01BTExPQ19QT1NJWD0nMCcKR0xfR05VTElCX01CU0NBU0VDTVA9JzAnCkdM X0dOVUxJQl9NQlNDQVNFU1RSPScwJwpHTF9HTlVMSUJfTUJTQ0hSPScwJwpHTF9HTlVMSUJf TUJTQ1NQTj0nMCcKR0xfR05VTElCX01CU0xFTj0nMCcKR0xfR05VTElCX01CU05DQVNFQ01Q PScwJwpHTF9HTlVMSUJfTUJTTkxFTj0nMCcKR0xfR05VTElCX01CU1BCUks9JzAnCkdMX0dO VUxJQl9NQlNQQ0FTRUNNUD0nMCcKR0xfR05VTElCX01CU1JDSFI9JzAnCkdMX0dOVUxJQl9N QlNTRVA9JzAnCkdMX0dOVUxJQl9NQlNTUE49JzAnCkdMX0dOVUxJQl9NQlNTVFI9JzAnCkdM X0dOVUxJQl9NQlNUT0tfUj0nMCcKR0xfR05VTElCX01CVE9XQz0nMCcKR0xfR05VTElCX01E QV9BQ0NFU1M9JzEnCkdMX0dOVUxJQl9NREFfQ0hESVI9JzEnCkdMX0dOVUxJQl9NREFfQ0hN T0Q9JzEnCkdMX0dOVUxJQl9NREFfQ0xPU0U9JzEnCkdMX0dOVUxJQl9NREFfQ1JFQVQ9JzEn CkdMX0dOVUxJQl9NREFfRFVQMj0nMScKR0xfR05VTElCX01EQV9EVVA9JzEnCkdMX0dOVUxJ Ql9NREFfRUNWVD0nMScKR0xfR05VTElCX01EQV9FWEVDTD0nMScKR0xfR05VTElCX01EQV9F WEVDTEU9JzEnCkdMX0dOVUxJQl9NREFfRVhFQ0xQPScxJwpHTF9HTlVMSUJfTURBX0VYRUNW PScxJwpHTF9HTlVMSUJfTURBX0VYRUNWRT0nMScKR0xfR05VTElCX01EQV9FWEVDVlA9JzEn CkdMX0dOVUxJQl9NREFfRVhFQ1ZQRT0nMScKR0xfR05VTElCX01EQV9GQ0xPU0VBTEw9JzEn CkdMX0dOVUxJQl9NREFfRkNWVD0nMScKR0xfR05VTElCX01EQV9GRE9QRU49JzEnCkdMX0dO VUxJQl9NREFfRklMRU5PPScxJwpHTF9HTlVMSUJfTURBX0dDVlQ9JzEnCkdMX0dOVUxJQl9N REFfR0VUQ1dEPScxJwpHTF9HTlVMSUJfTURBX0dFVFBJRD0nMScKR0xfR05VTElCX01EQV9H RVRXPScxJwpHTF9HTlVMSUJfTURBX0lTQVRUWT0nMScKR0xfR05VTElCX01EQV9MU0VFSz0n MScKR0xfR05VTElCX01EQV9NRU1DQ1BZPScxJwpHTF9HTlVMSUJfTURBX01LRElSPScxJwpH TF9HTlVMSUJfTURBX01LVEVNUD0nMScKR0xfR05VTElCX01EQV9PUEVOPScxJwpHTF9HTlVM SUJfTURBX1BVVEVOVj0nMScKR0xfR05VTElCX01EQV9QVVRXPScxJwpHTF9HTlVMSUJfTURB X1JFQUQ9JzEnCkdMX0dOVUxJQl9NREFfUk1ESVI9JzEnCkdMX0dOVUxJQl9NREFfU1RSRFVQ PScxJwpHTF9HTlVMSUJfTURBX1NXQUI9JzEnCkdMX0dOVUxJQl9NREFfVEVNUE5BTT0nMScK R0xfR05VTElCX01EQV9UWlNFVD0nMScKR0xfR05VTElCX01EQV9VTUFTSz0nMScKR0xfR05V TElCX01EQV9VTkxJTks9JzEnCkdMX0dOVUxJQl9NREFfV1JJVEU9JzEnCkdMX0dOVUxJQl9N RU1DSFI9JzAnCkdMX0dOVUxJQl9NRU1NRU09JzEnCkdMX0dOVUxJQl9NRU1QQ1BZPScxJwpH TF9HTlVMSUJfTUVNUkNIUj0nMScKR0xfR05VTElCX01FTVNFVF9FWFBMSUNJVD0nMScKR0xf R05VTElCX01LRElSPScwJwpHTF9HTlVMSUJfTUtESVJBVD0nMCcKR0xfR05VTElCX01LRFRF TVA9JzAnCkdMX0dOVUxJQl9NS0ZJRk89JzAnCkdMX0dOVUxJQl9NS0ZJRk9BVD0nMCcKR0xf R05VTElCX01LTk9EPScwJwpHTF9HTlVMSUJfTUtOT0RBVD0nMCcKR0xfR05VTElCX01LT1NU RU1QPScxJwpHTF9HTlVMSUJfTUtPU1RFTVBTPScwJwpHTF9HTlVMSUJfTUtTVEVNUD0nMCcK R0xfR05VTElCX01LU1RFTVBTPScwJwpHTF9HTlVMSUJfTUtUSU1FPScxJwpHTF9HTlVMSUJf TkFOT1NMRUVQPScxJwpHTF9HTlVMSUJfTk9OQkxPQ0tJTkc9JzAnCkdMX0dOVUxJQl9PQlNU QUNLX1BSSU5URj0nMCcKR0xfR05VTElCX09CU1RBQ0tfUFJJTlRGX1BPU0lYPScwJwpHTF9H TlVMSUJfT1BFTj0nMCcKR0xfR05VTElCX09QRU5BVD0nMCcKR0xfR05VTElCX09QRU5ESVI9 JzAnCkdMX0dOVUxJQl9PVkVSUklERVNfU1RSVUNUX1NUQVQ9JzAnCkdMX0dOVUxJQl9QQ0xP U0U9JzAnCkdMX0dOVUxJQl9QRVJST1I9JzAnCkdMX0dOVUxJQl9QSVBFMj0nMScKR0xfR05V TElCX1BJUEU9JzAnCkdMX0dOVUxJQl9QT1BFTj0nMCcKR0xfR05VTElCX1BPU0lYX01FTUFM SUdOPScwJwpHTF9HTlVMSUJfUE9TSVhfT1BFTlBUPScwJwpHTF9HTlVMSUJfUFJFQUQ9JzAn CkdMX0dOVUxJQl9QUklOVEY9JzEnCkdMX0dOVUxJQl9QUklOVEZfUE9TSVg9JzAnCkdMX0dO VUxJQl9QU0VMRUNUPScxJwpHTF9HTlVMSUJfUFRIUkVBRF9TSUdNQVNLPScxJwpHTF9HTlVM SUJfUFRTTkFNRT0nMCcKR0xfR05VTElCX1BUU05BTUVfUj0nMCcKR0xfR05VTElCX1BVVEM9 JzEnCkdMX0dOVUxJQl9QVVRDSEFSPScxJwpHTF9HTlVMSUJfUFVURU5WPScwJwpHTF9HTlVM SUJfUFVUUz0nMScKR0xfR05VTElCX1BXUklURT0nMCcKR0xfR05VTElCX1FTT1JUX1I9JzAn CkdMX0dOVUxJQl9SQUlTRT0nMCcKR0xfR05VTElCX1JBTkRPTT0nMCcKR0xfR05VTElCX1JB TkRPTV9SPScwJwpHTF9HTlVMSUJfUkFXTUVNQ0hSPScwJwpHTF9HTlVMSUJfUkVBRD0nMCcK R0xfR05VTElCX1JFQURESVI9JzAnCkdMX0dOVUxJQl9SRUFETElOSz0nMScKR0xfR05VTElC X1JFQURMSU5LQVQ9JzEnCkdMX0dOVUxJQl9SRUFMTE9DQVJSQVk9JzAnCkdMX0dOVUxJQl9S RUFMTE9DX0dOVT0nMCcKR0xfR05VTElCX1JFQUxMT0NfUE9TSVg9JzAnCkdMX0dOVUxJQl9S RUFMUEFUSD0nMScKR0xfR05VTElCX1JFTU9WRT0nMCcKR0xfR05VTElCX1JFTkFNRT0nMCcK R0xfR05VTElCX1JFTkFNRUFUPScwJwpHTF9HTlVMSUJfUkVXSU5ERElSPScwJwpHTF9HTlVM SUJfUk1ESVI9JzAnCkdMX0dOVUxJQl9SUE1BVENIPScwJwpHTF9HTlVMSUJfU0NBTkRJUj0n MCcKR0xfR05VTElCX1NDQU5GPScxJwpHTF9HTlVMSUJfU0VDVVJFX0dFVEVOVj0nMCcKR0xf R05VTElCX1NFTEVDVD0nMCcKR0xfR05VTElCX1NFVEVOVj0nMCcKR0xfR05VTElCX1NFVEhP U1ROQU1FPScwJwpHTF9HTlVMSUJfU0lHQUJCUkVWX05QPScwJwpHTF9HTlVMSUJfU0lHQUNU SU9OPScwJwpHTF9HTlVMSUJfU0lHREVTQ1JfTlA9JzEnCkdMX0dOVUxJQl9TSUdOQUxfSF9T SUdQSVBFPScwJwpHTF9HTlVMSUJfU0lHUFJPQ01BU0s9JzAnCkdMX0dOVUxJQl9TTEVFUD0n MCcKR0xfR05VTElCX1NOUFJJTlRGPScwJwpHTF9HTlVMSUJfU1BSSU5URl9QT1NJWD0nMCcK R0xfR05VTElCX1NUQVQ9JzAnCkdMX0dOVUxJQl9TVERJT19IX05PTkJMT0NLSU5HPScwJwpH TF9HTlVMSUJfU1RESU9fSF9TSUdQSVBFPScwJwpHTF9HTlVMSUJfU1RQQ1BZPScxJwpHTF9H TlVMSUJfU1RQTkNQWT0nMCcKR0xfR05VTElCX1NUUkNBU0VTVFI9JzAnCkdMX0dOVUxJQl9T VFJDSFJOVUw9JzAnCkdMX0dOVUxJQl9TVFJEVVA9JzAnCkdMX0dOVUxJQl9TVFJFUlJPUj0n MCcKR0xfR05VTElCX1NUUkVSUk9STkFNRV9OUD0nMCcKR0xfR05VTElCX1NUUkVSUk9SX1I9 JzAnCkdMX0dOVUxJQl9TVFJGVElNRT0nMCcKR0xfR05VTElCX1NUUk5DQVQ9JzAnCkdMX0dO VUxJQl9TVFJORFVQPScwJwpHTF9HTlVMSUJfU1RSTkxFTj0nMScKR0xfR05VTElCX1NUUlBC Uks9JzAnCkdMX0dOVUxJQl9TVFJQVElNRT0nMCcKR0xfR05VTElCX1NUUlNFUD0nMCcKR0xf R05VTElCX1NUUlNJR05BTD0nMCcKR0xfR05VTElCX1NUUlNUUj0nMCcKR0xfR05VTElCX1NU UlRPRD0nMCcKR0xfR05VTElCX1NUUlRPSU1BWD0nMScKR0xfR05VTElCX1NUUlRPS19SPScw JwpHTF9HTlVMSUJfU1RSVE9MPScwJwpHTF9HTlVMSUJfU1RSVE9MRD0nMCcKR0xfR05VTElC X1NUUlRPTEw9JzAnCkdMX0dOVUxJQl9TVFJUT1VMPScwJwpHTF9HTlVMSUJfU1RSVE9VTEw9 JzAnCkdMX0dOVUxJQl9TVFJUT1VNQVg9JzAnCkdMX0dOVUxJQl9TVFJWRVJTQ01QPScwJwpH TF9HTlVMSUJfU1lNTElOSz0nMScKR0xfR05VTElCX1NZTUxJTktBVD0nMCcKR0xfR05VTElC X1NZU1RFTV9QT1NJWD0nMCcKR0xfR05VTElCX1RJTUVHTT0nMScKR0xfR05VTElCX1RJTUVT UEVDX0dFVD0nMCcKR0xfR05VTElCX1RJTUVTUEVDX0dFVFJFUz0nMCcKR0xfR05VTElCX1RJ TUVfUj0nMScKR0xfR05VTElCX1RJTUVfUlo9JzEnCkdMX0dOVUxJQl9UTVBGSUxFPScwJwpH TF9HTlVMSUJfVFJVTkNBVEU9JzAnCkdMX0dOVUxJQl9UVFlOQU1FX1I9JzAnCkdMX0dOVUxJ Ql9UWlNFVD0nMCcKR0xfR05VTElCX1VOSVNURF9IX0dFVE9QVD0nMCcKR0xfR05VTElCX1VO SVNURF9IX05PTkJMT0NLSU5HPScwJwpHTF9HTlVMSUJfVU5JU1REX0hfU0lHUElQRT0nMCcK R0xfR05VTElCX1VOTElOSz0nMCcKR0xfR05VTElCX1VOTElOS0FUPScwJwpHTF9HTlVMSUJf VU5MT0NLUFQ9JzAnCkdMX0dOVUxJQl9VTlNFVEVOVj0nMCcKR0xfR05VTElCX1VTTEVFUD0n MCcKR0xfR05VTElCX1VUSU1FTlNBVD0nMScKR0xfR05VTElCX1ZBU1BSSU5URj0nMCcKR0xf R05VTElCX1ZEUFJJTlRGPScwJwpHTF9HTlVMSUJfVkZQUklOVEY9JzEnCkdMX0dOVUxJQl9W RlBSSU5URl9QT1NJWD0nMCcKR0xfR05VTElCX1ZGU0NBTkY9JzAnCkdMX0dOVUxJQl9WUFJJ TlRGPScxJwpHTF9HTlVMSUJfVlBSSU5URl9QT1NJWD0nMCcKR0xfR05VTElCX1ZTQ0FORj0n MCcKR0xfR05VTElCX1ZTTlBSSU5URj0nMCcKR0xfR05VTElCX1ZTUFJJTlRGX1BPU0lYPScw JwpHTF9HTlVMSUJfV0NUT01CPScwJwpHTF9HTlVMSUJfV1JJVEU9JzAnCkdMX0dOVUxJQl9f RVhJVD0nMCcKR01BTExPQ19PQko9JycKR01QX0g9JycKR05VTElCSEVBREVSU19PVkVSUklE RV9XSU5UX1Q9JzAnCkdOVUxJQl9HRVRUSU1FT0ZEQVk9JzAnCkdOVUxJQl9XQVJOX0NGTEFH Uz0nIC1mbm8tY29tbW9uIC1XYWxsIC1XYXJpdGgtY29udmVyc2lvbiAtV2RhdGUtdGltZSAt V2Rpc2FibGVkLW9wdGltaXphdGlvbiAtV2RvdWJsZS1wcm9tb3Rpb24gLVdkdXBsaWNhdGVk LWNvbmQgLVdleHRyYSAtV2Zvcm1hdC1zaWduZWRuZXNzIC1XaW5pdC1zZWxmIC1XaW52YWxp ZC1wY2ggLVdsb2dpY2FsLW9wIC1XbWlzc2luZy1kZWNsYXJhdGlvbnMgLVdtaXNzaW5nLWlu Y2x1ZGUtZGlycyAtV21pc3NpbmctcHJvdG90eXBlcyAtV25lc3RlZC1leHRlcm5zIC1XbnVs bC1kZXJlZmVyZW5jZSAtV29sZC1zdHlsZS1kZWZpbml0aW9uIC1Xb3Blbm1wLXNpbWQgLVdw YWNrZWQgLVdwb2ludGVyLWFyaXRoIC1Xc3RyaWN0LXByb3RvdHlwZXMgLVdzdWdnZXN0LWF0 dHJpYnV0ZT1mb3JtYXQgLVdzdWdnZXN0LWF0dHJpYnV0ZT1ub3JldHVybiAtV3N1Z2dlc3Qt ZmluYWwtbWV0aG9kcyAtV3N1Z2dlc3QtZmluYWwtdHlwZXMgLVd0cmFtcG9saW5lcyAtV3Vu aW5pdGlhbGl6ZWQgLVd1bmtub3duLXByYWdtYXMgLVd2YXJpYWRpYy1tYWNyb3MgLVd2ZWN0 b3Itb3BlcmF0aW9uLXBlcmZvcm1hbmNlIC1Xd3JpdGUtc3RyaW5ncyAtV2FycmF5LWJvdW5k cz0yIC1XYXR0cmlidXRlLWFsaWFzPTIgLVdmb3JtYXQ9MiAtV2Zvcm1hdC10cnVuY2F0aW9u PTIgLVdpbXBsaWNpdC1mYWxsdGhyb3VnaD01IC1Xc2hpZnQtb3ZlcmZsb3c9MiAtV3VzZS1h ZnRlci1mcmVlPTMgLVd2bGEtbGFyZ2VyLXRoYW49NDAzMSAtV3JlZHVuZGFudC1kZWNscyAt V25vLW1pc3NpbmctZmllbGQtaW5pdGlhbGl6ZXJzIC1Xbm8tb3ZlcnJpZGUtaW5pdCAtV25v LXNpZ24tY29tcGFyZSAtV25vLXR5cGUtbGltaXRzIC1Xbm8tdW51c2VkLXBhcmFtZXRlciAt V25vLWZvcm1hdC1ub25saXRlcmFsIC1Xbm8tYmlkaS1jaGFycycKR05VU1RFUF9DRkxBR1M9 JycKR05VX09CSkNfQ0ZMQUdTPScnCkdPQkpFQ1RfQ0ZMQUdTPSctaXN5c3RlbSAvdXNyL2lu Y2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGli LTIuMC9pbmNsdWRlJwpHT0JKRUNUX0xJQlM9Jy1sZ29iamVjdC0yLjAgLWxnbGliLTIuMCcK R1JFUD0nL3Vzci9iaW4vZ3JlcCcKR1NFVFRJTkdTX0NGTEFHUz0nLXB0aHJlYWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ibGtpZCAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0 LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlJwpHU0VUVElOR1NfTElCUz0nLWxnaW8tMi4w IC1sZ29iamVjdC0yLjAgLWxnbGliLTIuMCcKR1RLX0NGTEFHUz0nLXB0aHJlYWQgLWlzeXN0 ZW0gL3Vzci9pbmNsdWRlL2d0ay0zLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2F0LXNwaTIt YXRrLzIuMCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYXQtc3BpLTIuMCAtaXN5c3RlbSAvdXNy L2luY2x1ZGUvZGJ1cy0xLjAgLWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9k YnVzLTEuMC9pbmNsdWRlIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9ndGstMy4wIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9naW8tdW5peC0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJv IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9wYW5nby0xLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRl L2hhcmZidXp6IC1pc3lzdGVtIC91c3IvaW5jbHVkZS9wYW5nby0xLjAgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2ZyaWJpZGkgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1pc3lz dGVtIC91c3IvaW5jbHVkZS9hdGstMS4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9jYWlybyAt aXN5c3RlbSAvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3V1 aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtaXN5c3RlbSAvdXNyL2luY2x1 ZGUvZ2RrLXBpeGJ1Zi0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1pc3lz dGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1pc3lzdGVtIC91c3IvaW5jbHVk ZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxraWQgLWlzeXN0ZW0gL3Vzci9p bmNsdWRlL2dsaWItMi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xp Yi0yLjAvaW5jbHVkZScKR1RLX0xJQlM9Jy1sZ3RrLTMgLWxnZGstMyAtbHBhbmdvY2Fpcm8t MS4wIC1scGFuZ28tMS4wIC1saGFyZmJ1enogLWxhdGstMS4wIC1sY2Fpcm8tZ29iamVjdCAt bGNhaXJvIC1sZ2RrX3BpeGJ1Zi0yLjAgLWxnaW8tMi4wIC1sZ29iamVjdC0yLjAgLWxnbGli LTIuMCcKR1RLX09CSj0nZ3RrdXRpbC5vIGVtYWNzZ3RrZml4ZWQubycKR1pJUF9QUk9HPScv dXNyL2Jpbi9nemlwJwpIQUlLVV9DRkxBR1M9JycKSEFJS1VfQ1hYX09CSj0nJwpIQUlLVV9M SUJTPScnCkhBSUtVX09CSj0nJwpIQVJGQlVaWl9DRkxBR1M9Jy1pc3lzdGVtIC91c3IvaW5j bHVkZS9oYXJmYnV6eiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1pc3lzdGVt IC91c3IvaW5jbHVkZS9saWJwbmcxNiAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvZ2xpYi0yLjAg LWlzeXN0ZW0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlJwpI QVJGQlVaWl9MSUJTPSctbGhhcmZidXp6JwpIQVZFX0FMSUdORURfQUxMT0M9JzEnCkhBVkVf QUxMT0NBX0g9JzEnCkhBVkVfQUxQSEFTT1JUPScxJwpIQVZFX0FUT0xMPScxJwpIQVZFX0JF X0FQUD0nbm8nCkhBVkVfQzk5X1NURElOVF9IPScxJwpIQVZFX0NBTk9OSUNBTElaRV9GSUxF X05BTUU9JzEnCkhBVkVfQ0hPV049JzEnCkhBVkVfQ0xPU0VESVI9JzEnCkhBVkVfQ09QWV9G SUxFX1JBTkdFPScxJwpIQVZFX0RFQ0xfRElSRkQ9JzEnCkhBVkVfREVDTF9FQ1ZUPScxJwpI QVZFX0RFQ0xfRU5WSVJPTj0nMScKSEFWRV9ERUNMX0VYRUNWUEU9JzEnCkhBVkVfREVDTF9G Q0hESVI9JzEnCkhBVkVfREVDTF9GQ0xPU0VBTEw9JzEnCkhBVkVfREVDTF9GQ1ZUPScxJwpI QVZFX0RFQ0xfRkRBVEFTWU5DPScxJwpIQVZFX0RFQ0xfRkRPUEVORElSPScxJwpIQVZFX0RF Q0xfRlBVUkdFPScxJwpIQVZFX0RFQ0xfRlNFRUtPPScxJwpIQVZFX0RFQ0xfRlRFTExPPScx JwpIQVZFX0RFQ0xfR0NWVD0nMScKSEFWRV9ERUNMX0dFVERFTElNPScxJwpIQVZFX0RFQ0xf R0VURE9NQUlOTkFNRT0nMScKSEFWRV9ERUNMX0dFVExJTkU9JzEnCkhBVkVfREVDTF9HRVRM T0FEQVZHPScxJwpIQVZFX0RFQ0xfR0VUTE9HSU49JzEnCkhBVkVfREVDTF9HRVRMT0dJTl9S PScxJwpIQVZFX0RFQ0xfR0VUUEFHRVNJWkU9JzEnCkhBVkVfREVDTF9HRVRVU0VSU0hFTEw9 JzEnCkhBVkVfREVDTF9HRVRXPScxJwpIQVZFX0RFQ0xfSU1BWEFCUz0nMScKSEFWRV9ERUNM X0lNQVhESVY9JzEnCkhBVkVfREVDTF9JTklUU1RBVEU9JzEnCkhBVkVfREVDTF9MT0NBTFRJ TUVfUj0nMScKSEFWRV9ERUNMX01FTU1FTT0nMScKSEFWRV9ERUNMX01FTVJDSFI9JzEnCkhB VkVfREVDTF9PQlNUQUNLX1BSSU5URj0nMScKSEFWRV9ERUNMX1BPU0lYX1NQQVdOX1NFVFNJ RD0nJwpIQVZFX0RFQ0xfUFVUVz0nMScKSEFWRV9ERUNMX1NFVEVOVj0nMScKSEFWRV9ERUNM X1NFVEhPU1ROQU1FPScxJwpIQVZFX0RFQ0xfU0VUU1RBVEU9JzEnCkhBVkVfREVDTF9TTlBS SU5URj0nMScKSEFWRV9ERUNMX1NUUkRVUD0nMScKSEFWRV9ERUNMX1NUUkVSUk9SX1I9JzEn CkhBVkVfREVDTF9TVFJORFVQPScxJwpIQVZFX0RFQ0xfU1RSTkxFTj0nMScKSEFWRV9ERUNM X1NUUlNJR05BTD0nMScKSEFWRV9ERUNMX1NUUlRPSU1BWD0nMScKSEFWRV9ERUNMX1NUUlRP S19SPScxJwpIQVZFX0RFQ0xfU1RSVE9VTUFYPScxJwpIQVZFX0RFQ0xfVFJVTkNBVEU9JzEn CkhBVkVfREVDTF9UVFlOQU1FX1I9JzEnCkhBVkVfREVDTF9VTlNFVEVOVj0nMScKSEFWRV9E RUNMX1ZTTlBSSU5URj0nMScKSEFWRV9ESVJFTlRfSD0nMScKSEFWRV9EUFJJTlRGPScxJwpI QVZFX0RVUDM9JzEnCkhBVkVfRVVJREFDQ0VTUz0nMScKSEFWRV9FWEVDVlBFPScxJwpIQVZF X0VYUExJQ0lUX0JaRVJPPScxJwpIQVZFX0ZBQ0NFU1NBVD0nMScKSEFWRV9GQ0hESVI9JzEn CkhBVkVfRkNITU9EQVQ9JzEnCkhBVkVfRkNIT1dOQVQ9JzEnCkhBVkVfRkNOVEw9JzEnCkhB VkVfRkRBVEFTWU5DPScxJwpIQVZFX0ZET1BFTkRJUj0nMScKSEFWRV9GRlNMPScxJwpIQVZF X0ZGU0xMPScxJwpIQVZFX0ZTRUVLTz0nMScKSEFWRV9GU1RBVEFUPScxJwpIQVZFX0ZTWU5D PScxJwpIQVZFX0ZURUxMTz0nMScKSEFWRV9GVFJVTkNBVEU9JzEnCkhBVkVfRlVUSU1FTlM9 JzEnCkhBVkVfR0VURFRBQkxFU0laRT0nMScKSEFWRV9HRVRFTlRST1BZPScxJwpIQVZFX0dF VEdST1VQUz0nMScKSEFWRV9HRVRIT1NUTkFNRT0nMScKSEFWRV9HRVRMT0dJTj0nMScKSEFW RV9HRVRPUFRfSD0nMScKSEFWRV9HRVRQQUdFU0laRT0nMScKSEFWRV9HRVRQQVNTPScxJwpI QVZFX0dFVFBST0dOQU1FPScxJwpIQVZFX0dFVFJBTkRPTT0nMScKSEFWRV9HRVRTVUJPUFQ9 JzEnCkhBVkVfR0VUVElNRU9GREFZPScxJwpIQVZFX0dFVFVNQVNLPScxJwpIQVZFX0dSQU5U UFQ9JzEnCkhBVkVfR1JPVVBfTUVNQkVSPScxJwpIQVZFX0dTRVRUSU5HUz0neWVzJwpIQVZF X0lNQVhBQlM9JzEnCkhBVkVfSU1BWERJVj0nMScKSEFWRV9JTUFYRElWX1Q9JzEnCkhBVkVf SU5JVFNUQVRFPScxJwpIQVZFX0lOVFRZUEVTX0g9JzEnCkhBVkVfTENITU9EPScxJwpIQVZF X0xDSE9XTj0nMScKSEFWRV9MSUJHTVA9J3llcycKSEFWRV9MSUJTRUNDT01QPSdubycKSEFW RV9MSU5LPScxJwpIQVZFX0xJTktBVD0nMScKSEFWRV9MU1RBVD0nMScKSEFWRV9NQUNQT1JU Uz0nJwpIQVZFX01BWF9BTElHTl9UPScxJwpIQVZFX01CU0xFTj0nMCcKSEFWRV9NQlRPV0M9 JzEnCkhBVkVfTUVNUENQWT0nMScKSEFWRV9NRU1TRVRfRVhQTElDSVQ9JzAnCkhBVkVfTUtE SVJBVD0nMScKSEFWRV9NS0RURU1QPScxJwpIQVZFX01LRklGTz0nMScKSEFWRV9NS0ZJRk9B VD0nMScKSEFWRV9NS05PRD0nMScKSEFWRV9NS05PREFUPScxJwpIQVZFX01LT1NURU1QPScx JwpIQVZFX01LT1NURU1QUz0nMScKSEFWRV9NS1NURU1QPScxJwpIQVZFX01LU1RFTVBTPScx JwpIQVZFX01PRFVMRVM9J3llcycKSEFWRV9OQU5PU0xFRVA9JzEnCkhBVkVfTkFUSVZFX0NP TVA9J25vJwpIQVZFX09QRU5BVD0nMScKSEFWRV9PUEVORElSPScxJwpIQVZFX09TX0g9JzAn CkhBVkVfUENMT1NFPScxJwpIQVZFX1BEVU1QRVI9J3llcycKSEFWRV9QR1RLPSdubycKSEFW RV9QSVBFMj0nMScKSEFWRV9QSVBFPScxJwpIQVZFX1BPUEVOPScxJwpIQVZFX1BPU0lYX01F TUFMSUdOPScxJwpIQVZFX1BPU0lYX09QRU5QVD0nMScKSEFWRV9QT1NJWF9TSUdOQUxCTE9D S0lORz0nMScKSEFWRV9QT1NJWF9TUEFXTj0nJwpIQVZFX1BPU0lYX1NQQVdOQVRUUl9TRVRG TEFHUz0nJwpIQVZFX1BPU0lYX1NQQVdOX0ZJTEVfQUNUSU9OU19BRERDSERJUj0nJwpIQVZF X1BPU0lYX1NQQVdOX0ZJTEVfQUNUSU9OU19BRERDSERJUl9OUD0nJwpIQVZFX1BSRUFEPScx JwpIQVZFX1BTRUxFQ1Q9JzEnCkhBVkVfUFRIUkVBRF9TSUdNQVNLPScxJwpIQVZFX1BUU05B TUU9JzEnCkhBVkVfUFRTTkFNRV9SPScxJwpIQVZFX1BXUklURT0nMScKSEFWRV9RU09SVF9S PScxJwpIQVZFX1JBSVNFPScxJwpIQVZFX1JBTkRPTT0nMScKSEFWRV9SQU5ET01fSD0nMScK SEFWRV9SQU5ET01fUj0nMScKSEFWRV9SQVdNRU1DSFI9JzEnCkhBVkVfUkVBRERJUj0nMScK SEFWRV9SRUFETElOSz0nMScKSEFWRV9SRUFETElOS0FUPScxJwpIQVZFX1JFQUxMT0NBUlJB WT0nMScKSEFWRV9SRUFMUEFUSD0nMScKSEFWRV9SRU5BTUVBVD0nMScKSEFWRV9SRVdJTkRE SVI9JzEnCkhBVkVfUlBNQVRDSD0nMScKSEFWRV9TQ0FORElSPScxJwpIQVZFX1NFQ0NPTVA9 J3llcycKSEFWRV9TRUNVUkVfR0VURU5WPScxJwpIQVZFX1NFVEVOVj0nMScKSEFWRV9TRVRI T1NUTkFNRT0nMScKSEFWRV9TRVRTVEFURT0nMScKSEFWRV9TSUdBQkJSRVZfTlA9JzEnCkhB VkVfU0lHQUNUSU9OPScxJwpIQVZFX1NJR0RFU0NSX05QPScxJwpIQVZFX1NJR0hBTkRMRVJf VD0nMScKSEFWRV9TSUdJTkZPX1Q9JzEnCkhBVkVfU0lHTkVEX1NJR19BVE9NSUNfVD0nJwpI QVZFX1NJR05FRF9XQ0hBUl9UPScnCkhBVkVfU0lHTkVEX1dJTlRfVD0nJwpIQVZFX1NJR1NF VF9UPScxJwpIQVZFX1NMRUVQPScxJwpIQVZFX1NQQVdOX0g9JycKSEFWRV9TVERJTlRfSD0n MScKSEFWRV9TVFBDUFk9JzEnCkhBVkVfU1RQTkNQWT0nMScKSEFWRV9TVFJDQVNFU1RSPScx JwpIQVZFX1NUUkNIUk5VTD0nMScKSEFWRV9TVFJFUlJPUk5BTUVfTlA9JzEnCkhBVkVfU1RS UEJSSz0nMScKSEFWRV9TVFJQVElNRT0nMScKSEFWRV9TVFJTRVA9JzEnCkhBVkVfU1RSVE9E PScxJwpIQVZFX1NUUlRPTD0nMScKSEFWRV9TVFJUT0xEPScxJwpIQVZFX1NUUlRPTEw9JzEn CkhBVkVfU1RSVE9VTD0nMScKSEFWRV9TVFJUT1VMTD0nMScKSEFWRV9TVFJVQ1RfUkFORE9N X0RBVEE9JzEnCkhBVkVfU1RSVUNUX1NJR0FDVElPTl9TQV9TSUdBQ1RJT049JzEnCkhBVkVf U1RSVUNUX1RJTUVWQUw9JzEnCkhBVkVfU1RSVkVSU0NNUD0nMScKSEFWRV9TWU1MSU5LPScx JwpIQVZFX1NZTUxJTktBVD0nMScKSEFWRV9TWVNfQklUWVBFU19IPScwJwpIQVZFX1NZU19D REVGU19IPScnCkhBVkVfU1lTX0lOVFRZUEVTX0g9JzAnCkhBVkVfU1lTX0xPQURBVkdfSD0n MCcKSEFWRV9TWVNfUEFSQU1fSD0nMCcKSEFWRV9TWVNfUkFORE9NX0g9JzEnCkhBVkVfU1lT X1NFTEVDVF9IPScxJwpIQVZFX1NZU19USU1FX0g9JzEnCkhBVkVfU1lTX1RZUEVTX0g9JzEn CkhBVkVfVElNRUdNPScxJwpIQVZFX1RJTUVTUEVDX0dFVD0nMScKSEFWRV9USU1FU1BFQ19H RVRSRVM9JzEnCkhBVkVfVElNRVpPTkVfVD0nMCcKSEFWRV9UWVBFX1ZPTEFUSUxFX1NJR19B VE9NSUNfVD0nMScKSEFWRV9VTklTVERfSD0nMScKSEFWRV9VTkxJTktBVD0nMScKSEFWRV9V TkxPQ0tQVD0nMScKSEFWRV9VU0xFRVA9JzEnCkhBVkVfVVRJTUVOU0FUPScxJwpIQVZFX1ZB U1BSSU5URj0nMScKSEFWRV9WRFBSSU5URj0nMScKSEFWRV9XQ0hBUl9IPScxJwpIQVZFX1dD SEFSX1Q9JzEnCkhBVkVfV0lOU09DSzJfSD0nMCcKSEFWRV9YU0VSVkVSPScnCkhBVkVfX0VY SVQ9JzEnCkhZQlJJRF9NQUxMT0M9JycKSUVFRTc1NF9IPScnCklNQUdFTUFHSUNLX0NGTEFH Uz0nJwpJTUFHRU1BR0lDS19MSUJTPScnCklOQ0xVREVfTkVYVD0naW5jbHVkZV9uZXh0JwpJ TkNMVURFX05FWFRfQVNfRklSU1RfRElSRUNUSVZFPSdpbmNsdWRlX25leHQnCklOU1RBTExf QVJDSF9JTkRFUF9FWFRSQT0naW5zdGFsbC1ldGMnCklOU1RBTExfREFUQT0nJHtJTlNUQUxM fSAtbSA2NDQnCklOU1RBTExfSU5GTz0nL3Vzci9iaW4vaW5zdGFsbC1pbmZvJwpJTlNUQUxM X1BST0dSQU09JyR7SU5TVEFMTH0nCklOU1RBTExfU0NSSVBUPScke0lOU1RBTEx9JwpJTlQz Ml9NQVhfTFRfSU5UTUFYX01BWD0nMScKSU5UNjRfTUFYX0VRX0xPTkdfTUFYPSdkZWZpbmVk IF9MUDY0JwpKU09OX0NGTEFHUz0nJwpKU09OX0xJQlM9Jy1samFuc3NvbicKSlNPTl9PQko9 J2pzb24ubycKS1FVRVVFX0NGTEFHUz0nJwpLUVVFVUVfTElCUz0nJwpLUkI0TElCPScnCktS QjVMSUI9JycKTENNUzJfQ0ZMQUdTPScnCkxDTVMyX0xJQlM9Jy1sbGNtczInCkxERkxBR1M9 JyAnCkxEX1NXSVRDSF9TWVNURU09JycKTERfU1dJVENIX1NZU1RFTV9URU1BQ1M9JyAkKExE X1NXSVRDSF9YX1NJVEVfUlBBVEgpJwpMRF9TV0lUQ0hfWF9TSVRFPScnCkxEX1NXSVRDSF9Y X1NJVEVfUlBBVEg9JycKTElCR0NDSklUX0NGTEFHUz0nJwpMSUJHQ0NKSVRfTElCUz0nJwpM SUJHSUY9Jy1sZ2lmJwpMSUJHTVA9Jy1sZ21wJwpMSUJHTlVUTFNfQ0ZMQUdTPSctaXN5c3Rl bSAvdXNyL2luY2x1ZGUvcDExLWtpdC0xJwpMSUJHTlVUTFNfTElCUz0nLWxnbnV0bHMnCkxJ QkdOVV9MSUJERVBTPScnCkxJQkdOVV9MVExJQkRFUFM9JycKTElCR1BNPSctbGdwbScKTElC SEVTSU9EPScnCkxJQklOVEw9JycKTElCSlBFRz0nLWxqcGVnJwpMSUJNT0RVTEVTPSctbGRs JwpMSUJPQkpTPScnCkxJQk9URl9DRkxBR1M9Jy1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVl dHlwZTIgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2xpYnBuZzE2JwpMSUJPVEZfTElCUz0nLWxv dGYgLWxmcmVldHlwZScKTElCUE5HPSctbHBuZzE2JwpMSUJSRVNPTFY9JycKTElCUz0nICcK TElCU0VDQ09NUF9DRkxBR1M9JycKTElCU0VDQ09NUF9MSUJTPScnCkxJQlNFTElOVVhfTElC Uz0nLWxzZWxpbnV4JwpMSUJTT1VORD0nIC1sYXNvdW5kJwpMSUJTWVNURU1EX0NGTEFHUz0n JwpMSUJTWVNURU1EX0xJQlM9Jy1sc3lzdGVtZCcKTElCU19FQ0xJRU5UPScnCkxJQlNfR05V U1RFUD0nJwpMSUJTX01BSUw9JycKTElCU19TWVNURU09JycKTElCU19URVJNQ0FQPSctbHRp bmZvJwpMSUJUSUZGPSctbHRpZmYnCkxJQlhNRU5VPScnCkxJQlhNTDJfQ0ZMQUdTPSctaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlieG1sMicKTElCWE1MMl9MSUJTPSctbHhtbDInCkxJQlhN VT0nJwpMSUJYUE09Jy1sWHBtJwpMSUJYU009Jy1sU00gLWxJQ0UnCkxJQlhUUjY9JycKTElC WFRfT1RIRVI9JyQoTElCWFNNKScKTElCWF9PVEhFUj0nJChMSUJYVCkgJChMSUJYX0VYVFJB KScKTElCWj0nLWx6JwpMSUJfQUNMPSctbGFjbCcKTElCX0NMT0NLX0dFVFRJTUU9JycKTElC X0VBQ0NFU1M9JycKTElCX0VYRUNJTkZPPScnCkxJQl9HRVRSQU5ET009JycKTElCX01BVEg9 Jy1sbScKTElCX05BTk9TTEVFUD0nJwpMSUJfUFRIUkVBRD0nJwpMSUJfUFRIUkVBRF9TSUdN QVNLPScnCkxJQl9USU1FUl9USU1FPScnCkxJQl9XU09DSzMyPScnCkxJQl9YQVRUUj0nLWxh dHRyJwpMSU1JVFNfSD0nbGltaXRzLmgnCkxOX1NfRklMRU9OTFk9J2xuIC1zJwpMVExJQkdN UD0nLWxnbXAnCkxUTElCSU5UTD0nJwpMVExJQk9CSlM9JycKTTE3Tl9GTFRfQ0ZMQUdTPScn Ck0xN05fRkxUX0xJQlM9Jy1sbTE3bi1jb3JlIC1sbTE3bi1mbHQgLWxtMTduLWNvcmUnCk1B S0VJTkZPPSdtYWtlaW5mbycKTUFLRV9QUk9HPScnCk1LRElSX1A9Jy91c3IvYmluL21rZGly IC1wJwpNT0RVTEVTX09CSj0nZW1hY3MtbW9kdWxlLm8nCk1PRFVMRVNfU0VDT05EQVJZX1NV RkZJWD0nJwpNT0RVTEVTX1NVRkZJWD0nLnNvJwpOQU5PU0xFRVBfTElCPScnCk5BVElWRV9D T01QSUxBVElPTl9BT1Q9J25vJwpORVhUX0FTU0VSVF9IPScnCk5FWFRfQVNfRklSU1RfRElS RUNUSVZFX0FTU0VSVF9IPScnCk5FWFRfQVNfRklSU1RfRElSRUNUSVZFX0RJUkVOVF9IPSc8 ZGlyZW50Lmg+JwpORVhUX0FTX0ZJUlNUX0RJUkVDVElWRV9FUlJOT19IPScnCk5FWFRfQVNf RklSU1RfRElSRUNUSVZFX0ZDTlRMX0g9JzxmY250bC5oPicKTkVYVF9BU19GSVJTVF9ESVJF Q1RJVkVfR0VUT1BUX0g9JzxnZXRvcHQuaD4nCk5FWFRfQVNfRklSU1RfRElSRUNUSVZFX0lO VFRZUEVTX0g9JzxpbnR0eXBlcy5oPicKTkVYVF9BU19GSVJTVF9ESVJFQ1RJVkVfTElNSVRT X0g9JzxsaW1pdHMuaD4nCk5FWFRfQVNfRklSU1RfRElSRUNUSVZFX1NJR05BTF9IPSc8c2ln bmFsLmg+JwpORVhUX0FTX0ZJUlNUX0RJUkVDVElWRV9TVERERUZfSD0nJwpORVhUX0FTX0ZJ UlNUX0RJUkVDVElWRV9TVERJTlRfSD0nPHN0ZGludC5oPicKTkVYVF9BU19GSVJTVF9ESVJF Q1RJVkVfU1RESU9fSD0nPHN0ZGlvLmg+JwpORVhUX0FTX0ZJUlNUX0RJUkVDVElWRV9TVERM SUJfSD0nPHN0ZGxpYi5oPicKTkVYVF9BU19GSVJTVF9ESVJFQ1RJVkVfU1RSSU5HX0g9Jzxz dHJpbmcuaD4nCk5FWFRfQVNfRklSU1RfRElSRUNUSVZFX1NZU19SQU5ET01fSD0nPHN5cy9y YW5kb20uaD4nCk5FWFRfQVNfRklSU1RfRElSRUNUSVZFX1NZU19TRUxFQ1RfSD0nPHN5cy9z ZWxlY3QuaD4nCk5FWFRfQVNfRklSU1RfRElSRUNUSVZFX1NZU19TVEFUX0g9JzxzeXMvc3Rh dC5oPicKTkVYVF9BU19GSVJTVF9ESVJFQ1RJVkVfU1lTX1RJTUVfSD0nPHN5cy90aW1lLmg+ JwpORVhUX0FTX0ZJUlNUX0RJUkVDVElWRV9TWVNfVFlQRVNfSD0nPHN5cy90eXBlcy5oPicK TkVYVF9BU19GSVJTVF9ESVJFQ1RJVkVfVElNRV9IPSc8dGltZS5oPicKTkVYVF9BU19GSVJT VF9ESVJFQ1RJVkVfVU5JU1REX0g9Jzx1bmlzdGQuaD4nCk5FWFRfRElSRU5UX0g9JzxkaXJl bnQuaD4nCk5FWFRfRVJSTk9fSD0nJwpORVhUX0ZDTlRMX0g9JzxmY250bC5oPicKTkVYVF9H RVRPUFRfSD0nPGdldG9wdC5oPicKTkVYVF9JTlRUWVBFU19IPSc8aW50dHlwZXMuaD4nCk5F WFRfTElNSVRTX0g9JzxsaW1pdHMuaD4nCk5FWFRfU0lHTkFMX0g9JzxzaWduYWwuaD4nCk5F WFRfU1REREVGX0g9JycKTkVYVF9TVERJTlRfSD0nPHN0ZGludC5oPicKTkVYVF9TVERJT19I PSc8c3RkaW8uaD4nCk5FWFRfU1RETElCX0g9JzxzdGRsaWIuaD4nCk5FWFRfU1RSSU5HX0g9 JzxzdHJpbmcuaD4nCk5FWFRfU1lTX1JBTkRPTV9IPSc8c3lzL3JhbmRvbS5oPicKTkVYVF9T WVNfU0VMRUNUX0g9JzxzeXMvc2VsZWN0Lmg+JwpORVhUX1NZU19TVEFUX0g9JzxzeXMvc3Rh dC5oPicKTkVYVF9TWVNfVElNRV9IPSc8c3lzL3RpbWUuaD4nCk5FWFRfU1lTX1RZUEVTX0g9 JzxzeXMvdHlwZXMuaD4nCk5FWFRfVElNRV9IPSc8dGltZS5oPicKTkVYVF9VTklTVERfSD0n PHVuaXN0ZC5oPicKTk9USUZZX0NGTEFHUz0nJwpOT1RJRllfTElCUz0nJwpOT1RJRllfT0JK PSdpbm90aWZ5Lm8nCk5TX09CSj0nJwpOU19PQkpDX09CSj0nJwpOVERJUj0nJwpOVExJQj0n JwpPQkpDPScnCk9CSkNGTEFHUz0nJwpPQkpFWFQ9J28nCk9USEVSX0ZJTEVTPScnClBBQ0tB R0VfQlVHUkVQT1JUPSdidWctZ251LWVtYWNzQGdudS5vcmcnClBBQ0tBR0VfTkFNRT0nR05V IEVtYWNzJwpQQUNLQUdFX1NUUklORz0nR05VIEVtYWNzIDMwLjAuNTAnClBBQ0tBR0VfVEFS TkFNRT0nZW1hY3MnClBBQ0tBR0VfVVJMPSdodHRwczovL3d3dy5nbnUub3JnL3NvZnR3YXJl L2VtYWNzLycKUEFDS0FHRV9WRVJTSU9OPSczMC4wLjUwJwpQQVRIX1NFUEFSQVRPUj0nOicK UEFYQ1RMPScnClBBWENUTF9kdW1wZWQ9JycKUEFYQ1RMX25vdGR1bXBlZD0nJwpQR1RLX0xJ QlM9JycKUEdUS19PQko9JycKUEtHX0NPTkZJRz0nL3Vzci9iaW4vcGtnLWNvbmZpZycKUEtH X0NPTkZJR19MSUJESVI9JycKUEtHX0NPTkZJR19QQVRIPScnClBOR19DRkxBR1M9Jy1pc3lz dGVtIC91c3IvaW5jbHVkZS9saWJwbmcxNicKUE5HX0xJQlM9Jy1scG5nMTYnClBPU1RfQUxM T0NfT0JKPScnClBSQUdNQV9DT0xVTU5TPScnClBSQUdNQV9TWVNURU1fSEVBREVSPScjcHJh Z21hIEdDQyBzeXN0ZW1faGVhZGVyJwpQUkVfQUxMT0NfT0JKPSdsYXN0ZmlsZS5vJwpQUklQ VFJfUFJFRklYPSdfX1BSSVBUUl9QUkVGSVgnClBST0ZJTElOR19DRkxBR1M9JycKUFRIUkVB RF9IX0RFRklORVNfU1RSVUNUX1RJTUVTUEVDPScwJwpQVEhSRUFEX1NJR01BU0tfTElCPScn ClBUUkRJRkZfVF9TVUZGSVg9JycKUUNPUFlfQUNMX0xJQj0nLWxhdHRyJwpSQUxMT0NfT0JK PScnClJBTkxJQj0ncmFubGliJwpSRVBMQUNFX0FDQ0VTUz0nMCcKUkVQTEFDRV9BTElHTkVE X0FMTE9DPScwJwpSRVBMQUNFX0NBTExPQ19GT1JfQ0FMTE9DX0dOVT0nMCcKUkVQTEFDRV9D QUxMT0NfRk9SX0NBTExPQ19QT1NJWD0nMCcKUkVQTEFDRV9DQU5PTklDQUxJWkVfRklMRV9O QU1FPScwJwpSRVBMQUNFX0NITU9EPScwJwpSRVBMQUNFX0NIT1dOPScwJwpSRVBMQUNFX0NM T1NFPScwJwpSRVBMQUNFX0NMT1NFRElSPScwJwpSRVBMQUNFX0NPUFlfRklMRV9SQU5HRT0n MCcKUkVQTEFDRV9DUkVBVD0nMCcKUkVQTEFDRV9DVElNRT0nR05VTElCX1BPUlRDSEVDSycK UkVQTEFDRV9ESVJGRD0nMCcKUkVQTEFDRV9EUFJJTlRGPScwJwpSRVBMQUNFX0RVUDI9JzAn ClJFUExBQ0VfRFVQMz0nMCcKUkVQTEFDRV9EVVA9JzAnClJFUExBQ0VfRVhFQ0w9JzAnClJF UExBQ0VfRVhFQ0xFPScwJwpSRVBMQUNFX0VYRUNMUD0nMCcKUkVQTEFDRV9FWEVDVj0nMCcK UkVQTEFDRV9FWEVDVkU9JzAnClJFUExBQ0VfRVhFQ1ZQPScwJwpSRVBMQUNFX0VYRUNWUEU9 JzAnClJFUExBQ0VfRkFDQ0VTU0FUPScwJwpSRVBMQUNFX0ZDSE1PREFUPScwJwpSRVBMQUNF X0ZDSE9XTkFUPScwJwpSRVBMQUNFX0ZDTE9TRT0nMCcKUkVQTEFDRV9GQ05UTD0nMScKUkVQ TEFDRV9GREFUQVNZTkM9JzAnClJFUExBQ0VfRkRPUEVOPScwJwpSRVBMQUNFX0ZET1BFTkRJ Uj0nMCcKUkVQTEFDRV9GRkxVU0g9JzAnClJFUExBQ0VfRkZTTEw9JzAnClJFUExBQ0VfRk9Q RU49JzAnClJFUExBQ0VfRk9QRU5fRk9SX0ZPUEVOX0dOVT0nMCcKUkVQTEFDRV9GUFJJTlRG PScwJwpSRVBMQUNFX0ZQVVJHRT0nMCcKUkVQTEFDRV9GUkVFPScwJwpSRVBMQUNFX0ZSRU9Q RU49JzAnClJFUExBQ0VfRlNFRUs9JzAnClJFUExBQ0VfRlNFRUtPPScwJwpSRVBMQUNFX0ZT VEFUPScwJwpSRVBMQUNFX0ZTVEFUQVQ9JzAnClJFUExBQ0VfRlRFTEw9JzAnClJFUExBQ0Vf RlRFTExPPScwJwpSRVBMQUNFX0ZUUlVOQ0FURT0nMCcKUkVQTEFDRV9GVVRJTUVOUz0nMCcK UkVQTEFDRV9HRVRDV0Q9JzAnClJFUExBQ0VfR0VUREVMSU09JzAnClJFUExBQ0VfR0VURE9N QUlOTkFNRT0nMCcKUkVQTEFDRV9HRVREVEFCTEVTSVpFPScwJwpSRVBMQUNFX0dFVEVOVFJP UFk9JzAnClJFUExBQ0VfR0VUR1JPVVBTPScwJwpSRVBMQUNFX0dFVExJTkU9JzAnClJFUExB Q0VfR0VUTE9BREFWRz0nMCcKUkVQTEFDRV9HRVRMT0dJTl9SPScwJwpSRVBMQUNFX0dFVFBB R0VTSVpFPScwJwpSRVBMQUNFX0dFVFBBU1M9JzAnClJFUExBQ0VfR0VUUEFTU19GT1JfR0VU UEFTU19HTlU9JzAnClJFUExBQ0VfR0VUUFJPR05BTUU9JzAnClJFUExBQ0VfR0VUUkFORE9N PScwJwpSRVBMQUNFX0dFVFNVQk9QVD0nMCcKUkVQTEFDRV9HRVRUSU1FT0ZEQVk9JzAnClJF UExBQ0VfR01USU1FPScwJwpSRVBMQUNFX0lNQVhBQlM9JzAnClJFUExBQ0VfSU1BWERJVj0n MCcKUkVQTEFDRV9JTklUU1RBVEU9JzAnClJFUExBQ0VfSVNBVFRZPScwJwpSRVBMQUNFX0xD SE9XTj0nMCcKUkVQTEFDRV9MSU5LPScwJwpSRVBMQUNFX0xJTktBVD0nMCcKUkVQTEFDRV9M T0NBTFRJTUU9JzAnClJFUExBQ0VfTE9DQUxUSU1FX1I9JzAnClJFUExBQ0VfTFNFRUs9JzAn ClJFUExBQ0VfTFNUQVQ9JzAnClJFUExBQ0VfTUFMTE9DX0ZPUl9NQUxMT0NfR05VPScwJwpS RVBMQUNFX01BTExPQ19GT1JfTUFMTE9DX1BPU0lYPScwJwpSRVBMQUNFX01CVE9XQz0nMCcK UkVQTEFDRV9NRU1DSFI9JzAnClJFUExBQ0VfTUVNTUVNPScwJwpSRVBMQUNFX01FTVBDUFk9 JzAnClJFUExBQ0VfTUtESVI9JzAnClJFUExBQ0VfTUtGSUZPPScwJwpSRVBMQUNFX01LRklG T0FUPScwJwpSRVBMQUNFX01LTk9EPScwJwpSRVBMQUNFX01LTk9EQVQ9JzAnClJFUExBQ0Vf TUtPU1RFTVA9JzAnClJFUExBQ0VfTUtPU1RFTVBTPScwJwpSRVBMQUNFX01LU1RFTVA9JzAn ClJFUExBQ0VfTUtUSU1FPScxJwpSRVBMQUNFX05BTk9TTEVFUD0nMScKUkVQTEFDRV9OVUxM PScwJwpSRVBMQUNFX09CU1RBQ0tfUFJJTlRGPScwJwpSRVBMQUNFX09QRU49JzAnClJFUExB Q0VfT1BFTkFUPScwJwpSRVBMQUNFX09QRU5ESVI9JzAnClJFUExBQ0VfUEVSUk9SPScwJwpS RVBMQUNFX1BJUEUyPScxJwpSRVBMQUNFX1BPUEVOPScwJwpSRVBMQUNFX1BPU0lYX01FTUFM SUdOPScwJwpSRVBMQUNFX1BPU0lYX09QRU5QVD0nMCcKUkVQTEFDRV9QUkVBRD0nMCcKUkVQ TEFDRV9QUklOVEY9JzAnClJFUExBQ0VfUFNFTEVDVD0nMCcKUkVQTEFDRV9QVEhSRUFEX1NJ R01BU0s9JzAnClJFUExBQ0VfUFRTTkFNRT0nMCcKUkVQTEFDRV9QVFNOQU1FX1I9JzAnClJF UExBQ0VfUFVURU5WPScwJwpSRVBMQUNFX1BXUklURT0nMCcKUkVQTEFDRV9RU09SVF9SPScw JwpSRVBMQUNFX1JBSVNFPScwJwpSRVBMQUNFX1JBTkRPTT0nMCcKUkVQTEFDRV9SQU5ET01f Uj0nMCcKUkVQTEFDRV9SRUFEPScwJwpSRVBMQUNFX1JFQURMSU5LPScwJwpSRVBMQUNFX1JF QURMSU5LQVQ9JzAnClJFUExBQ0VfUkVBTExPQ0FSUkFZPScwJwpSRVBMQUNFX1JFQUxMT0Nf Rk9SX1JFQUxMT0NfR05VPScwJwpSRVBMQUNFX1JFQUxMT0NfRk9SX1JFQUxMT0NfUE9TSVg9 JzAnClJFUExBQ0VfUkVBTFBBVEg9JzAnClJFUExBQ0VfUkVNT1ZFPScwJwpSRVBMQUNFX1JF TkFNRT0nMCcKUkVQTEFDRV9SRU5BTUVBVD0nMCcKUkVQTEFDRV9STURJUj0nMCcKUkVQTEFD RV9TRUxFQ1Q9JzAnClJFUExBQ0VfU0VURU5WPScwJwpSRVBMQUNFX1NFVEhPU1ROQU1FPScw JwpSRVBMQUNFX1NFVFNUQVRFPScwJwpSRVBMQUNFX1NMRUVQPScwJwpSRVBMQUNFX1NOUFJJ TlRGPScwJwpSRVBMQUNFX1NQUklOVEY9JzAnClJFUExBQ0VfU1RBVD0nMCcKUkVQTEFDRV9T VERJT19SRUFEX0ZVTkNTPScwJwpSRVBMQUNFX1NURElPX1dSSVRFX0ZVTkNTPScwJwpSRVBM QUNFX1NUUENQWT0nMCcKUkVQTEFDRV9TVFBOQ1BZPScwJwpSRVBMQUNFX1NUUkNBU0VTVFI9 JzAnClJFUExBQ0VfU1RSQ0hSTlVMPScwJwpSRVBMQUNFX1NUUkRVUD0nMCcKUkVQTEFDRV9T VFJFUlJPUj0nMCcKUkVQTEFDRV9TVFJFUlJPUk5BTUVfTlA9JzAnClJFUExBQ0VfU1RSRVJS T1JfUj0nMCcKUkVQTEFDRV9TVFJGVElNRT0nR05VTElCX1BPUlRDSEVDSycKUkVQTEFDRV9T VFJOQ0FUPScwJwpSRVBMQUNFX1NUUk5EVVA9JzAnClJFUExBQ0VfU1RSTkxFTj0nMCcKUkVQ TEFDRV9TVFJTSUdOQUw9JzAnClJFUExBQ0VfU1RSU1RSPScwJwpSRVBMQUNFX1NUUlRPRD0n MCcKUkVQTEFDRV9TVFJUT0lNQVg9JzAnClJFUExBQ0VfU1RSVE9LX1I9JzAnClJFUExBQ0Vf U1RSVE9MPScwJwpSRVBMQUNFX1NUUlRPTEQ9JzAnClJFUExBQ0VfU1RSVE9MTD0nMCcKUkVQ TEFDRV9TVFJUT1VMPScwJwpSRVBMQUNFX1NUUlRPVUxMPScwJwpSRVBMQUNFX1NUUlRPVU1B WD0nMCcKUkVQTEFDRV9TVFJVQ1RfVElNRVZBTD0nMCcKUkVQTEFDRV9TWU1MSU5LPScwJwpS RVBMQUNFX1NZTUxJTktBVD0nMCcKUkVQTEFDRV9USU1FR009JzEnClJFUExBQ0VfVElNRVNQ RUNfR0VUPSdHTlVMSUJfUE9SVENIRUNLJwpSRVBMQUNFX1RNUEZJTEU9JzAnClJFUExBQ0Vf VFJVTkNBVEU9JzAnClJFUExBQ0VfVFRZTkFNRV9SPScwJwpSRVBMQUNFX1RaU0VUPSdHTlVM SUJfUE9SVENIRUNLJwpSRVBMQUNFX1VOTElOSz0nMCcKUkVQTEFDRV9VTkxJTktBVD0nMCcK UkVQTEFDRV9VTlNFVEVOVj0nMCcKUkVQTEFDRV9VU0xFRVA9JzAnClJFUExBQ0VfVVRJTUVO U0FUPScwJwpSRVBMQUNFX1ZBU1BSSU5URj0nMCcKUkVQTEFDRV9WRFBSSU5URj0nMCcKUkVQ TEFDRV9WRlBSSU5URj0nMCcKUkVQTEFDRV9WUFJJTlRGPScwJwpSRVBMQUNFX1ZTTlBSSU5U Rj0nMCcKUkVQTEFDRV9WU1BSSU5URj0nMCcKUkVQTEFDRV9XQ1RPTUI9JzAnClJFUExBQ0Vf V1JJVEU9JzAnClJFUExBQ0VfX0VYSVQ9JzAnClJTVkdfQ0ZMQUdTPSctcHRocmVhZCAtaXN5 c3RlbSAvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dk ay1waXhidWYtMi4wIC1pc3lzdGVtIC91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1p c3lzdGVtIC91c3IvaW5jbHVkZS9saWJtb3VudCAtaXN5c3RlbSAvdXNyL2luY2x1ZGUvYmxr aWQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2NhaXJvIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9n bGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2dsaWItMi4wL2lu Y2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1pc3lzdGVtIC91c3IvaW5j bHVkZS91dWlkIC1pc3lzdGVtIC91c3IvaW5jbHVkZS9mcmVldHlwZTIgLWlzeXN0ZW0gL3Vz ci9pbmNsdWRlL2xpYnBuZzE2JwpSU1ZHX0xJQlM9Jy1scnN2Zy0yIC1sbSAtbGdpby0yLjAg LWxnZGtfcGl4YnVmLTIuMCAtbGdvYmplY3QtMi4wIC1sZ2xpYi0yLjAgLWxjYWlybycKU0VQ Q0hBUj0nOicKU0VURkFUVFI9JycKU0VUVElOR1NfQ0ZMQUdTPSctcHRocmVhZCAtaXN5c3Rl bSAvdXNyL2luY2x1ZGUvbGlibW91bnQgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2Jsa2lkIC1p c3lzdGVtIC91c3IvaW5jbHVkZS9nbGliLTIuMCAtaXN5c3RlbSAvdXNyL2xpYi94ODZfNjQt bGludXgtZ251L2dsaWItMi4wL2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9pbmNsdWRlL2dsaWIt Mi4wIC1pc3lzdGVtIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvZ2xpYi0yLjAvaW5jbHVk ZScKU0VUVElOR1NfTElCUz0nLWxnaW8tMi4wIC1sZ29iamVjdC0yLjAgLWxnbGliLTIuMCAt bGdvYmplY3QtMi4wIC1sZ2xpYi0yLjAnClNIRUxMPScvYmluL2Jhc2gnClNJR19BVE9NSUNf VF9TVUZGSVg9JycKU0laRU9GX0xPTkc9JzgnClNJWkVfVF9TVUZGSVg9JycKU01BTExfSkFf RElDPSdubycKU1FMSVRFM19MSUJTPSctbHNxbGl0ZTMnClNURENLRElOVF9IPSdzdGRja2Rp bnQuaCcKU1REREVGX0g9JycKU1RESU5UX0g9JycKU1VCRElSX01BS0VGSUxFU19JTj0nICQo c3JjZGlyKS9saWIvTWFrZWZpbGUuaW4gJChzcmNkaXIpL2xpYi1zcmMvTWFrZWZpbGUuaW4g JChzcmNkaXIpL29sZFhNZW51L01ha2VmaWxlLmluICQoc3JjZGlyKS9kb2MvZW1hY3MvTWFr ZWZpbGUuaW4gJChzcmNkaXIpL2RvYy9taXNjL01ha2VmaWxlLmluICQoc3JjZGlyKS9kb2Mv bGlzcGludHJvL01ha2VmaWxlLmluICQoc3JjZGlyKS9kb2MvbGlzcHJlZi9NYWtlZmlsZS5p biAkKHNyY2Rpcikvc3JjL01ha2VmaWxlLmluICQoc3JjZGlyKS9sd2xpYi9NYWtlZmlsZS5p biAkKHNyY2RpcikvbGlzcC9NYWtlZmlsZS5pbiAkKHNyY2RpcikvbGVpbS9NYWtlZmlsZS5p biAkKHNyY2RpcikvbmV4dHN0ZXAvTWFrZWZpbGUuaW4gJChzcmNkaXIpL250L01ha2VmaWxl LmluICQoc3JjZGlyKS90ZXN0L01ha2VmaWxlLmluICQoc3JjZGlyKS90ZXN0L2luZnJhL01h a2VmaWxlLmluICQoc3JjZGlyKS9hZG1pbi9jaGFyc2V0cy9NYWtlZmlsZS5pbiAkKHNyY2Rp cikvYWRtaW4vdW5pZGF0YS9NYWtlZmlsZS5pbiAkKHNyY2RpcikvYWRtaW4vZ3JhbW1hcnMv TWFrZWZpbGUuaW4nClNZU1RFTV9UWVBFPSdnbnUvbGludXgnClNZU19USU1FX0hfREVGSU5F U19TVFJVQ1RfVElNRVNQRUM9JzAnClRFUk1DQVBfT0JKPSd0ZXJtaW5mby5vJwpUSU1FUl9U SU1FX0xJQj0nJwpUSU1FX0hfREVGSU5FU19TVFJVQ1RfVElNRVNQRUM9JzEnClRJTUVfSF9E RUZJTkVTX1RJTUVfVVRDPScxJwpUT09MS0lUX0xJQlc9Jy1sZ3RrLTMgLWxnZGstMyAtbHBh bmdvY2Fpcm8tMS4wIC1scGFuZ28tMS4wIC1saGFyZmJ1enogLWxhdGstMS4wIC1sY2Fpcm8t Z29iamVjdCAtbGNhaXJvIC1sZ2RrX3BpeGJ1Zi0yLjAgLWxnaW8tMi4wIC1sZ29iamVjdC0y LjAgLWxnbGliLTIuMCcKVFJFRV9TSVRURVJfQ0ZMQUdTPScnClRSRUVfU0lUVEVSX0xJQlM9 JycKVUlOVDMyX01BWF9MVF9VSU5UTUFYX01BWD0nMScKVUlOVDY0X01BWF9FUV9VTE9OR19N QVg9J2RlZmluZWQgX0xQNjQnClVOREVGSU5FX1NUUlRPS19SPScwJwpVTkVYRUNfT0JKPScn ClVOSVNURF9IX0RFRklORVNfU1RSVUNUX1RJTUVTUEVDPScwJwpVTklTVERfSF9IQVZFX1NZ U19SQU5ET01fSD0nMScKVU5JU1REX0hfSEFWRV9XSU5TT0NLMl9IPScwJwpVTklTVERfSF9I QVZFX1dJTlNPQ0syX0hfQU5EX1VTRV9TT0NLRVRTPScwJwpVU0VfQUNMPScxJwpVU0VfU1RB UlRVUF9OT1RJRklDQVRJT049J3llcycKVk1MSU1JVF9PQko9JycKVzMyX0xJQlM9JycKVzMy X09CSj0nJwpXMzJfUkVTX0xJTks9JycKV0FSTl9DRkxBR1M9JyAtZm5vLWNvbW1vbiAtV2Fs bCAtV2FyaXRoLWNvbnZlcnNpb24gLVdkYXRlLXRpbWUgLVdkaXNhYmxlZC1vcHRpbWl6YXRp b24gLVdkb3VibGUtcHJvbW90aW9uIC1XZHVwbGljYXRlZC1jb25kIC1XZXh0cmEgLVdmb3Jt YXQtc2lnbmVkbmVzcyAtV2luaXQtc2VsZiAtV2ludmFsaWQtcGNoIC1XbG9naWNhbC1vcCAt V21pc3NpbmctZGVjbGFyYXRpb25zIC1XbWlzc2luZy1pbmNsdWRlLWRpcnMgLVdtaXNzaW5n LXByb3RvdHlwZXMgLVduZXN0ZWQtZXh0ZXJucyAtV251bGwtZGVyZWZlcmVuY2UgLVdvbGQt c3R5bGUtZGVmaW5pdGlvbiAtV29wZW5tcC1zaW1kIC1XcGFja2VkIC1XcG9pbnRlci1hcml0 aCAtV3N0cmljdC1wcm90b3R5cGVzIC1Xc3VnZ2VzdC1hdHRyaWJ1dGU9Zm9ybWF0IC1Xc3Vn Z2VzdC1hdHRyaWJ1dGU9bm9yZXR1cm4gLVdzdWdnZXN0LWZpbmFsLW1ldGhvZHMgLVdzdWdn ZXN0LWZpbmFsLXR5cGVzIC1XdHJhbXBvbGluZXMgLVd1bmluaXRpYWxpemVkIC1XdW5rbm93 bi1wcmFnbWFzIC1XdW51c2VkLW1hY3JvcyAtV3ZhcmlhZGljLW1hY3JvcyAtV3ZlY3Rvci1v cGVyYXRpb24tcGVyZm9ybWFuY2UgLVd3cml0ZS1zdHJpbmdzIC1XYXJyYXktYm91bmRzPTIg LVdhdHRyaWJ1dGUtYWxpYXM9MiAtV2Zvcm1hdD0yIC1XZm9ybWF0LXRydW5jYXRpb249MiAt V2ltcGxpY2l0LWZhbGx0aHJvdWdoPTUgLVdzaGlmdC1vdmVyZmxvdz0yIC1XdXNlLWFmdGVy LWZyZWU9MyAtV3ZsYS1sYXJnZXItdGhhbj00MDMxIC1XcmVkdW5kYW50LWRlY2xzIC1Xbm8t bWlzc2luZy1maWVsZC1pbml0aWFsaXplcnMgLVduby1vdmVycmlkZS1pbml0IC1Xbm8tc2ln bi1jb21wYXJlIC1Xbm8tdHlwZS1saW1pdHMgLVduby11bnVzZWQtcGFyYW1ldGVyIC1Xbm8t Zm9ybWF0LW5vbmxpdGVyYWwgLVduby1iaWRpLWNoYXJzJwpXQ0hBUl9UX1NVRkZJWD0nJwpX RUJLSVRfQ0ZMQUdTPScnCldFQktJVF9MSUJTPScnCldFQlBfQ0ZMQUdTPSctaXN5c3RlbSAv dXNyL2luY2x1ZGUvd2VicCcKV0VCUF9MSUJTPSctbHdlYnBkZW11eCcKV0VSUk9SX0NGTEFH Uz0nJwpXSURHRVRfT0JKPScnCldJTkRPV1NfNjRfQklUX09GRl9UPScwJwpXSU5ET1dTXzY0 X0JJVF9TVF9TSVpFPScwJwpXSU5ET1dTX1NUQVRfSU5PREVTPScwJwpXSU5ET1dTX1NUQVRf VElNRVNQRUM9JzAnCldJTkRPV19TWVNURU1fT0JKPSdmb250c2V0Lm8gZnJpbmdlLm8gaW1h Z2UubyB0ZXh0Y29udi5vJwpXSU5EUkVTPScnCldJTlRfVF9TVUZGSVg9JycKWEFSR1NfTElN SVQ9JycKWENCX0xJQlM9Jy1sWDExLXhjYiAtbHhjYicKWENPTVBPU0lURV9DRkxBR1M9JycK WENPTVBPU0lURV9MSUJTPSctbFhjb21wb3NpdGUnClhDUlVOPScnClhEQkVfQ0ZMQUdTPScn ClhEQkVfTElCUz0nLWxYZXh0JwpYRklYRVNfQ0ZMQUdTPScnClhGSVhFU19MSUJTPSctbFhm aXhlcycKWEZUX0NGTEFHUz0nJwpYRlRfTElCUz0nJwpYR1NFTE9CSj0neGdzZWxlY3QubycK WElORVJBTUFfQ0ZMQUdTPScnClhJTkVSQU1BX0xJQlM9Jy1sWGluZXJhbWEnClhJTlBVVF9D RkxBR1M9JycKWElOUFVUX0xJQlM9Jy1sWGknClhNRU5VX09CSj0neG1lbnUubycKWE1LTUY9 JycKWE9CSj0neHRlcm0ubyB4Zm5zLm8geHNlbGVjdC5vIHhyZGIubyB4c21mbnMubyB4c2V0 dGluZ3MubycKWFJBTkRSX0NGTEFHUz0nJwpYUkFORFJfTElCUz0nLWxYcmFuZHInClhSRU5E RVJfTElCUz0nLWxYcmVuZGVyJwpYU0hBUEVfQ0ZMQUdTPScnClhTSEFQRV9MSUJTPSctbFhl eHQgLWx4Y2Itc2hhcGUnClhTWU5DX0NGTEFHUz0nJwpYU1lOQ19MSUJTPSctbFhleHQnClhX SURHRVRTX09CSj0nJwpYX1RPT0xLSVRfVFlQRT0nbm9uZScKYWNfY3RfQ0M9J2djYycKYWNf Y3RfQ1hYPScnCmFjX2N0X09CSkM9JycKYXJjaGxpYmRpcj0nJHtsaWJleGVjZGlyfS9lbWFj cy8ke3ZlcnNpb259LyR7Y29uZmlndXJhdGlvbn0nCmJpbmRpcj0nJHtleGVjX3ByZWZpeH0v YmluJwpiaXRtYXBkaXI9Jy91c3IvaW5jbHVkZS9YMTEvYml0bWFwcycKYnVpbGQ9J3g4Nl82 NC1wYy1saW51eC1nbnUnCmJ1aWxkX2FsaWFzPScnCmJ1aWxkX2NwdT0neDg2XzY0JwpidWls ZF9vcz0nbGludXgtZ251JwpidWlsZF92ZW5kb3I9J3BjJwpjYWNoZV9maWxlPScvZGV2L251 bGwnCmNhbm9uaWNhbD0neDg2XzY0LXBjLWxpbnV4LWdudScKY29tbWFfc3BhY2VfdmVyc2lv bj0nJwpjb21tYV92ZXJzaW9uPScnCmNvbmZpZ3VyYXRpb249J3g4Nl82NC1wYy1saW51eC1n bnUnCmNvcHlyaWdodD0nQ29weXJpZ2h0IChDKSAyMDIzIEZyZWUgU29mdHdhcmUgRm91bmRh dGlvbiwgSW5jLicKZGF0YWRpcj0nJHtkYXRhcm9vdGRpcn0nCmRhdGFyb290ZGlyPScke3By ZWZpeH0vc2hhcmUnCmRvY2Rpcj0nJHtkYXRhcm9vdGRpcn0vZG9jLyR7UEFDS0FHRV9UQVJO QU1FfScKZHZpZGlyPScke2RvY2Rpcn0nCmVtYWNzX21ham9yX3ZlcnNpb249JzMwJwpldGNk aXI9JyR7ZGF0YWRpcn0vZW1hY3MvJHt2ZXJzaW9ufS9ldGMnCmV0Y2RvY2Rpcj0nJHtkYXRh ZGlyfS9lbWFjcy8ke3ZlcnNpb259L2V0YycKZXhlY19wcmVmaXg9JyR7cHJlZml4fScKZ2Ft ZWRpcj0nJHtsb2NhbHN0YXRlZGlyfS9nYW1lcy9lbWFjcycKZ2FtZWdyb3VwPScnCmdhbWV1 c2VyPScnCmdsX0dOVUxJQl9FTkFCTEVEXzAzZTBhYWFkNGNiODljYTc1NzY1M2JkMzY3YTZj Y2I3X0NPTkRJVElPTj0nJwpnbF9HTlVMSUJfRU5BQkxFRF8yNjA5NDFjMGU1ZGM2N2VjOWU4 N2QxZmIzMjFjMzAwYl9DT05ESVRJT049JycKZ2xfR05VTElCX0VOQUJMRURfNTI2NDI5NGFh MGE1NTU3NTQxYjUzYzhjNzQxZjdmMzFfQ09ORElUSU9OPScxJwpnbF9HTlVMSUJfRU5BQkxF RF82MDk5ZTk3MzdmNzU3ZGIzNmM0N2ZhOWQ5ZjAyZTg4Y19DT05ESVRJT049JycKZ2xfR05V TElCX0VOQUJMRURfNjFiY2FjYTc2YjNlNmY5YWU1NWQ1N2ExYzMxOTNiYzRfQ09ORElUSU9O PScnCmdsX0dOVUxJQl9FTkFCTEVEXzY4MmU2MDk2MDRjY2FhYzZiZTM4MmU0ZWUzYTRlYWVj X0NPTkRJVElPTj0nJwpnbF9HTlVMSUJfRU5BQkxFRF84NDQ0MDM0ZWE3NzliODg3Njg4NjVi YjYwYjRmYjhjOV9DT05ESVRJT049JycKZ2xfR05VTElCX0VOQUJMRURfOTI1Njc3ZjAzNDNk ZTY0Yjg5YTlmMGM3OTBiNDEwNGNfQ09ORElUSU9OPScnCmdsX0dOVUxJQl9FTkFCTEVEX2E5 Nzg2ODUwZTk5OWFlNjVhODM2YTYwNDFlOGU1ZWQxX0NPTkRJVElPTj0nJwpnbF9HTlVMSUJf RU5BQkxFRF9iZTQ1M2NlYzVlZWNmNTczMWEyNzRmMmRlN2YyZGIzNl9DT05ESVRJT049JycK Z2xfR05VTElCX0VOQUJMRURfY2xvZXhlY19DT05ESVRJT049JycKZ2xfR05VTElCX0VOQUJM RURfZDNiMjM4MzcyMGVlMGU1NDEzNTdhYTJhYWM1OThlMmJfQ09ORElUSU9OPScnCmdsX0dO VUxJQl9FTkFCTEVEX2RpcmZkX0NPTkRJVElPTj0nJwpnbF9HTlVMSUJfRU5BQkxFRF9lODBi ZjZmNzU3MDk1ZDJlNWZjOTRkYWZiOGY4ZmM4Yl9DT05ESVRJT049JycKZ2xfR05VTElCX0VO QUJMRURfZWY0NTUyMjVjMDBmNTA0OWM4MDhjMmVkYTNlNzY4NjZfQ09ORElUSU9OPScnCmds X0dOVUxJQl9FTkFCTEVEX2V1aWRhY2Nlc3NfQ09ORElUSU9OPScnCmdsX0dOVUxJQl9FTkFC TEVEX2ZkMzhjN2U0NjNiNTQ3NDRiNzdiOThhZWFmYjRmYTdjX0NPTkRJVElPTj0nJwpnbF9H TlVMSUJfRU5BQkxFRF9nZXRkdGFibGVzaXplX0NPTkRJVElPTj0nMScKZ2xfR05VTElCX0VO QUJMRURfZ2V0Z3JvdXBzX0NPTkRJVElPTj0nJwpnbF9HTlVMSUJfRU5BQkxFRF9sY2htb2Rf Q09ORElUSU9OPScnCmdsX0dOVUxJQl9FTkFCTEVEX29wZW5fQ09ORElUSU9OPScnCmdsX0dO VUxJQl9FTkFCTEVEX3Jhd21lbWNocl9DT05ESVRJT049JycKZ2xfR05VTElCX0VOQUJMRURf c3RydG9sbF9DT05ESVRJT049JycKZ2xfR05VTElCX0VOQUJMRURfdXRpbWVuc19DT05ESVRJ T049JycKZ2xfTElCT0JKREVQUz0nIC4vJChERVBESVIpL21rdGltZS5QbycKZ2xfTElCT0JK Uz0nIG1rdGltZS5vJwpnbF9MVExJQk9CSlM9JyBta3RpbWUubG8nCmdsdGVzdHNfTElCT0JK REVQUz0nJwpnbHRlc3RzX0xJQk9CSlM9JycKZ2x0ZXN0c19MVExJQk9CSlM9JycKZ2x0ZXN0 c19XSVRORVNTPSdJTl9FTUFDU19HTlVMSUJfVEVTVFMnCmdzZXR0aW5nc3NjaGVtYWRpcj0n Jwpob3N0PSd4ODZfNjQtcGMtbGludXgtZ251Jwpob3N0X2FsaWFzPScnCmhvc3RfY3B1PSd4 ODZfNjQnCmhvc3Rfb3M9J2xpbnV4LWdudScKaG9zdF92ZW5kb3I9J3BjJwpodG1sZGlyPSck e2RvY2Rpcn0nCmluY2x1ZGVkaXI9JyR7cHJlZml4fS9pbmNsdWRlJwppbmZvZGlyPScke2Rh dGFyb290ZGlyfS9pbmZvJwpsaWJkaXI9JyR7ZXhlY19wcmVmaXh9L2xpYicKbGliZXhlY2Rp cj0nJHtleGVjX3ByZWZpeH0vbGliZXhlYycKbGlibG9ja2ZpbGU9JycKbGlzcGRpcj0nJHtk YXRhZGlyfS9lbWFjcy8ke3ZlcnNpb259L2xpc3AnCmxpc3BkaXJyZWw9JyR7dmVyc2lvbn0v bGlzcCcKbGlzcHBhdGg9JyR7bG9jYWxsaXNwcGF0aH06JHtzdGFuZGFyZGxpc3BwYXRofScK bG9jYWxlZGlyPScke2RhdGFyb290ZGlyfS9sb2NhbGUnCmxvY2FsbGlzcHBhdGg9JyR7ZGF0 YWRpcn0vZW1hY3MvJHt2ZXJzaW9ufS9zaXRlLWxpc3A6JHtkYXRhZGlyfS9lbWFjcy9zaXRl LWxpc3AnCmxvY2Fsc3RhdGVkaXI9JyR7cHJlZml4fS92YXInCm1hbmRpcj0nJHtkYXRhcm9v dGRpcn0vbWFuJwpuc19hcHBiaW5kaXI9JycKbnNfYXBwZGlyPScnCm5zX2FwcGxpYmRpcj0n Jwpuc19hcHBsaWJleGVjZGlyPScnCm5zX2FwcHJlc2Rpcj0nJwpuc19hcHBzcmM9JycKbnNf Y2hlY2tfZmlsZT0nJwpuc19zZWxmX2NvbnRhaW5lZD0nbm8nCm9sZGluY2x1ZGVkaXI9Jy91 c3IvaW5jbHVkZScKcGRmZGlyPScke2RvY2Rpcn0nCnByZWZpeD0nL3Vzci9sb2NhbCcKcHJv Z3JhbV90cmFuc2Zvcm1fbmFtZT0ncyx4LHgsJwpwc2Rpcj0nJHtkb2NkaXJ9JwpydW5zdGF0 ZWRpcj0nJHtsb2NhbHN0YXRlZGlyfS9ydW4nCnNiaW5kaXI9JyR7ZXhlY19wcmVmaXh9L3Ni aW4nCnNoYXJlZHN0YXRlZGlyPScke3ByZWZpeH0vY29tJwpzcmNkaXI9Jy4nCnN0YW5kYXJk bGlzcHBhdGg9JyR7bGlzcGRpcn0nCnN5c2NvbmZkaXI9JyR7cHJlZml4fS9ldGMnCnRhcmdl dF9hbGlhcz0nJwp2ZXJzaW9uPSczMC4wLjUwJwp3aXRoX21haWx1dGlscz0neWVzJwp4X2Rl ZmF1bHRfc2VhcmNoX3BhdGg9Jy91c3Ivc2hhcmUvWDExLyVMLyVULyVOJUMlUzovdXNyL3No YXJlL1gxMS8lbC8lVC8lTiVDJVM6L3Vzci9zaGFyZS9YMTEvJVQvJU4lQyVTOi91c3Ivc2hh cmUvWDExLyVMLyVULyVOJVM6L3Vzci9zaGFyZS9YMTEvJWwvJVQvJU4lUzovdXNyL3NoYXJl L1gxMS8lVC8lTiVTOi91c3IvbGliL1gxMS8lTC8lVC8lTiVDJVM6L3Vzci9saWIvWDExLyVs LyVULyVOJUMlUzovdXNyL2xpYi9YMTEvJVQvJU4lQyVTOi91c3IvbGliL1gxMS8lTC8lVC8l TiVTOi91c3IvbGliL1gxMS8lbC8lVC8lTiVTOi91c3IvbGliL1gxMS8lVC8lTiVTJwoKIyMg LS0tLS0tLS0tLS0tLS0tLS0tLSAjIwojIyBGaWxlIHN1YnN0aXR1dGlvbnMuICMjCiMjIC0t LS0tLS0tLS0tLS0tLS0tLS0gIyMKCm1vZHVsZV9lbnZfc25pcHBldF8yNT0nLi9zcmMvbW9k dWxlLWVudi0yNS5oJwptb2R1bGVfZW52X3NuaXBwZXRfMjY9Jy4vc3JjL21vZHVsZS1lbnYt MjYuaCcKbW9kdWxlX2Vudl9zbmlwcGV0XzI3PScuL3NyYy9tb2R1bGUtZW52LTI3LmgnCm1v ZHVsZV9lbnZfc25pcHBldF8yOD0nLi9zcmMvbW9kdWxlLWVudi0yOC5oJwptb2R1bGVfZW52 X3NuaXBwZXRfMjk9Jy4vc3JjL21vZHVsZS1lbnYtMjkuaCcKbW9kdWxlX2Vudl9zbmlwcGV0 XzMwPScuL3NyYy9tb2R1bGUtZW52LTMwLmgnCgojIyAtLS0tLS0tLS0tLSAjIwojIyBjb25m ZGVmcy5oLiAjIwojIyAtLS0tLS0tLS0tLSAjIwoKLyogY29uZmRlZnMuaCAqLwojZGVmaW5l IFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgojZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1h Y3MiCiNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIzMC4wLjUwIgojZGVmaW5lIFBBQ0tBR0Vf U1RSSU5HICJHTlUgRW1hY3MgMzAuMC41MCIKI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAi YnVnLWdudS1lbWFjc0BnbnUub3JnIgojZGVmaW5lIFBBQ0tBR0VfVVJMICJodHRwczovL3d3 dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKI2RlZmluZSBIQVZFX1BEVU1QRVIgMQojZGVm aW5lIEhBVkVfU1RESU9fSCAxCiNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCiNkZWZpbmUgSEFW RV9TVFJJTkdfSCAxCiNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKI2RlZmluZSBIQVZFX1NU RElOVF9IIDEKI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCiNkZWZpbmUgSEFWRV9TWVNfU1RB VF9IIDEKI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKI2RlZmluZSBIQVZFX1VOSVNURF9I IDEKI2RlZmluZSBIQVZFX1dDSEFSX0ggMQojZGVmaW5lIEhBVkVfTElOVVhfRlNfSCAxCiNk ZWZpbmUgSEFWRV9NQUxMT0NfSCAxCiNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKI2Rl ZmluZSBIQVZFX1BUWV9IIDEKI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKI2RlZmlu ZSBIQVZFX1NZU19VVFNOQU1FX0ggMQojZGVmaW5lIEhBVkVfUFdEX0ggMQojZGVmaW5lIEhB VkVfVVRNUF9IIDEKI2RlZmluZSBIQVZFX1NBTklUSVpFUl9MU0FOX0lOVEVSRkFDRV9IIDEK I2RlZmluZSBIQVZFX1NBTklUSVpFUl9BU0FOX0lOVEVSRkFDRV9IIDEKI2RlZmluZSBIQVZF X1NBTklUSVpFUl9DT01NT05fSU5URVJGQUNFX0RFRlNfSCAxCiNkZWZpbmUgSEFWRV9TWVNf U09DS0VUX0ggMQojZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQojZGVmaW5lIEhBVkVfUFRI UkVBRF9IIDEKI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKI2RlZmluZSBIQVZFX0RJUkVOVF9I IDEKI2RlZmluZSBIQVZFX0VYRUNJTkZPX0ggMQojZGVmaW5lIEhBVkVfU1RESU9fRVhUX0gg MQojZGVmaW5lIEhBVkVfU1lTX1ZGU19IIDEKI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKI2Rl ZmluZSBIQVZFX1NZU19DREVGU19IIDEKI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQojZGVm aW5lIEhBVkVfSUVFRTc1NF9IIDEKI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKI2RlZmluZSBI QVZFX1NZU19TRUxFQ1RfSCAxCiNkZWZpbmUgSEFWRV9TVERCT09MX0ggMQojZGVmaW5lIEhB VkVfU1lTX1JBTkRPTV9IIDEKI2RlZmluZSBTVERDX0hFQURFUlMgMQojZGVmaW5lIF9BTExf U09VUkNFIDEKI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKI2RlZmluZSBfR05VX1NPVVJD RSAxCiNkZWZpbmUgX0hQVVhfQUxUX1hPUEVOX1NPQ0tFVF9BUEkgMQojZGVmaW5lIF9ORVRC U0RfU09VUkNFIDEKI2RlZmluZSBfT1BFTkJTRF9TT1VSQ0UgMQojZGVmaW5lIF9QT1NJWF9Q VEhSRUFEX1NFTUFOVElDUyAxCiNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5X0FUVFJJ QlNfRVhUX18gMQojZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9CRlBfRVhUX18gMQoj ZGVmaW5lIF9fU1REQ19XQU5UX0lFQ182MDU1OV9ERlBfRVhUX18gMQojZGVmaW5lIF9fU1RE Q19XQU5UX0lFQ182MDU1OV9FWFRfXyAxCiNkZWZpbmUgX19TVERDX1dBTlRfSUVDXzYwNTU5 X0ZVTkNTX0VYVF9fIDEKI2RlZmluZSBfX1NURENfV0FOVF9JRUNfNjA1NTlfVFlQRVNfRVhU X18gMQojZGVmaW5lIF9fU1REQ19XQU5UX0xJQl9FWFQyX18gMQojZGVmaW5lIF9fU1REQ19X QU5UX01BVEhfU1BFQ19GVU5DU19fIDEKI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCiNkZWZp bmUgX19FWFRFTlNJT05TX18gMQojZGVmaW5lIEdDQ19MSU5UIDEKI2RlZmluZSBTWVNURU1f VFlQRSAiZ251L2xpbnV4IgojZGVmaW5lIEhBVkVfU1lTX1NPVU5EQ0FSRF9IIDEKI2RlZmlu ZSBIQVZFX0FMU0EgMQojZGVmaW5lIEhBVkVfU09VTkQgMQojZGVmaW5lIEhBVkVfUEVSU09O QUxJVFlfQUREUl9OT19SQU5ET01JWkUgMQojZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5GTyAx CiNkZWZpbmUgTElOVVhfU1lTSU5GT19VTklUIDEKI2RlZmluZSBIQVZFX1RFUk1fSCAxCiNk ZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKI2RlZmluZSBIQVZFX05FVF9JRl9IIDEKI2RlZmlu ZSBIQVZFX0lGQUREUlNfSCAxCiNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0ZMQUdT IDEKI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfSFdBRERSIDEKI2RlZmluZSBIQVZF X1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCiNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFf SUZSX0JST0FEQUREUiAxCiNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0FERFIgMQoj ZGVmaW5lIEhBVkVfU0JSSyAxCiNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCiNkZWZpbmUg SEFWRV9GT1JLIDEKI2RlZmluZSBIQVZFX1ZGT1JLIDEKI2RlZmluZSBIQVZFX0ZDSE1PRCAx CiNkZWZpbmUgSEFWRV9DQU5PTklDQUxJWkVfRklMRV9OQU1FIDEKI2RlZmluZSBIQVZFX1JF QUxQQVRIIDEKI2RlZmluZSBIQVZFX0xTVEFUIDEKI2RlZmluZSBIQVZFX0ZDSE1PREFUIDEK I2RlZmluZSBIQVZFX0xDSE1PRCAxCiNkZWZpbmUgSEFWRV9GQ05UTCAxCiNkZWZpbmUgSEFW RV9GRE9QRU5ESVIgMQojZGVmaW5lIEhBVkVfRlNUQVRBVCAxCiNkZWZpbmUgSEFWRV9GU1lO QyAxCiNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQojZGVmaW5lIEhBVkVfUFNFTEVDVCAx CiNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQojZGVmaW5lIEhBVkVfUkVBRExJTksg MQojZGVmaW5lIEhBVkVfSVNCTEFOSyAxCiNkZWZpbmUgSEFWRV9JU1dDVFlQRSAxCiNkZWZp bmUgSEFWRV9TVFJUT0lNQVggMQojZGVmaW5lIEhBVkVfU1lNTElOSyAxCiNkZWZpbmUgSEFW RV9MT0NBTFRJTUVfUiAxCiNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKI2RlZmluZSBT WVNURU1fTUFMTE9DIDEKI2RlZmluZSBIQVZFX01NQVAgMQojZGVmaW5lIEhBVkVfUFRIUkVB RCAxCiNkZWZpbmUgVEhSRUFEU19FTkFCTEVEIDEKI2RlZmluZSBIQVZFX1hLQiAxCiNkZWZp bmUgSEFWRV9YS0JSRUZSRVNIS0VZQk9BUkRNQVBQSU5HIDEKI2RlZmluZSBIQVZFX1hLQkZS RUVOQU1FUyAxCiNkZWZpbmUgSEFWRV9YUk1TRVREQVRBQkFTRSAxCiNkZWZpbmUgSEFWRV9Y U0NSRUVOUkVTT1VSQ0VTVFJJTkcgMQojZGVmaW5lIEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NS RUVOIDEKI2RlZmluZSBIQVZFX1hESVNQTEFZQ0VMTFMgMQojZGVmaW5lIEhBVkVfWERFU1RS T1lTVUJXSU5ET1dTIDEKI2RlZmluZSBIQVZFX1gxMVI2IDEKI2RlZmluZSBIQVZFX1hfSTE4 TiAxCiNkZWZpbmUgSEFWRV9YSUNDQUxMQkFDS19DQUxMQkFDSyAxCiNkZWZpbmUgSEFWRV9Y MTFSNl9YSU0gMQojZGVmaW5lIEhBVkVfUlNWRyAxCiNkZWZpbmUgSEFWRV9XRUJQIDEKI2Rl ZmluZSBIQVZFX1NRTElURTMgMQojZGVmaW5lIEhBVkVfU1FMSVRFM19MT0FEX0VYVEVOU0lP TiAxCiNkZWZpbmUgSEFWRV9HRVRBRERSSU5GT19BIDEKI2RlZmluZSBIQVZFX0dUSzMgMQoj ZGVmaW5lIEdES19ESVNBQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTIDEKI2RlZmluZSBHTElC X0RJU0FCTEVfREVQUkVDQVRJT05fV0FSTklOR1MgMQojZGVmaW5lIFVTRV9HVEsgMQojZGVm aW5lIEhBVkVfTUFMTE9DX1RSSU0gMQojZGVmaW5lIEhBVkVfREJVUyAxCiNkZWZpbmUgSEFW RV9EQlVTX1dBVENIX0dFVF9VTklYX0ZEIDEKI2RlZmluZSBIQVZFX0RCVVNfVFlQRV9JU19W QUxJRCAxCiNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0JVU19OQU1FIDEKI2RlZmluZSBI QVZFX0RCVVNfVkFMSURBVEVfUEFUSCAxCiNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0lO VEVSRkFDRSAxCiNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX01FTUJFUiAxCiNkZWZpbmUg SEFWRV9HU0VUVElOR1MgMQojZGVmaW5lIEhBVkVfTElCU0VMSU5VWCAxCiNkZWZpbmUgSEFW RV9HTlVUTFMgMQojZGVmaW5lIEhBVkVfTElCU1lTVEVNRCAxCiNkZWZpbmUgSEFWRV9KU09O IDEKI2RlZmluZSBIQVZFX0lOT1RJRlkgMQojZGVmaW5lIFVTRV9GSUxFX05PVElGWSAxCiNk ZWZpbmUgVVNFX1RPT0xLSVRfU0NST0xMX0JBUlMgMQojZGVmaW5lIEhBVkVfWElNIDEKI2Rl ZmluZSBVU0VfWElNIDEKI2RlZmluZSBIQVZFX1hSRU5ERVIgMQojZGVmaW5lIFVTRV9DQUlS T19YQ0IgMQojZGVmaW5lIFVTRV9DQUlSTyAxCiNkZWZpbmUgSEFWRV9GUkVFVFlQRSAxCiNk ZWZpbmUgSEFWRV9GVF9GQUNFX0dFVENIQVJWQVJJQU5USU5ERVggMQojZGVmaW5lIEhBVkVf TElCT1RGIDEKI2RlZmluZSBIQVZFX09URl9HRVRfVkFSSUFUSU9OX0dMWVBIUyAxCiNkZWZp bmUgSEFWRV9NMTdOX0ZMVCAxCiNkZWZpbmUgSEFWRV9IQVJGQlVaWiAxCiNkZWZpbmUgVVNF X1hDQiAxCiNkZWZpbmUgSEFWRV9YUE0gMQojZGVmaW5lIEhBVkVfSlBFRyAxCiNkZWZpbmUg SEFWRV9MQ01TMiAxCiNkZWZpbmUgSEFWRV9aTElCIDEKI2RlZmluZSBEWU5BTUlDX0xJQl9T VUZGSVggIi5zbyIKI2RlZmluZSBEWU5BTUlDX0xJQl9TRUNPTkRBUllfU1VGRklYICIiCiNk ZWZpbmUgSEFWRV9ETEFERFIgMQojZGVmaW5lIEhBVkVfTU9EVUxFUyAxCiNkZWZpbmUgTU9E VUxFU19TVUZGSVggIi5zbyIKI2RlZmluZSBOQVRJVkVfRUxJU1BfU1VGRklYICIuZWxuIgoj ZGVmaW5lIEhBVkVfUE5HIDEKI2RlZmluZSBIQVZFX1RJRkYgMQojZGVmaW5lIEhBVkVfR0lG IDEKI2RlZmluZSBIQVZFX0dQTSAxCiNkZWZpbmUgSEFWRV9YX1NNIDEKI2RlZmluZSBIQVZF X1hSQU5EUiAxCiNkZWZpbmUgSEFWRV9YSU5FUkFNQSAxCiNkZWZpbmUgSEFWRV9YRklYRVMg MQojZGVmaW5lIEhBVkVfWElOUFVUMiAxCiNkZWZpbmUgSEFWRV9YSVNDUk9MTENMQVNTSU5G T19UWVBFIDEKI2RlZmluZSBIQVZFX1hJVE9VQ0hDTEFTU0lORk9fVFlQRSAxCiNkZWZpbmUg SEFWRV9YSUJBUlJJRVJSRUxFQVNFUE9JTlRFUklORk9fREVWSUNFSUQgMQojZGVmaW5lIEhB VkVfWElHRVNUVVJFQ0xBU1NJTkZPX1RZUEUgMQojZGVmaW5lIEhBVkVfWFNZTkMgMQojZGVm aW5lIEhBVkVfWFNZTkNUUklHR0VSRkVOQ0UgMQojZGVmaW5lIEhBVkVfWERCRSAxCiNkZWZp bmUgSEFWRV9YQ0JfU0hBUEUgMQojZGVmaW5lIEhBVkVfWFNIQVBFIDEKI2RlZmluZSBIQVZF X1hDT01QT1NJVEUgMQojZGVmaW5lIEhBVkVfTElCWE1MMiAxCiNkZWZpbmUgSEFWRV9MSU5V WF9TRUNDT01QX0ggMQojZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX1NFVF9NT0RFX0ZJTFRF UiAxCiNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMgMQojZGVm aW5lIEhBVkVfTElOVVhfRklMVEVSX0ggMQojZGVmaW5lIEhBVkVfREVDTF9TRUNDT01QX1NF VF9NT0RFX0ZJTFRFUiAxCiNkZWZpbmUgSEFWRV9ERUNMX1NFQ0NPTVBfRklMVEVSX0ZMQUdf VFNZTkMgMQojZGVmaW5lIFNJWkVPRl9MT05HIDgKI2RlZmluZSBIQVZFX0FDQ0VQVDQgMQoj ZGVmaW5lIEhBVkVfRkNIRElSIDEKI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKI2RlZmlu ZSBIQVZFX0dFVFJVU0FHRSAxCiNkZWZpbmUgSEFWRV9HRVRfQ1VSUkVOVF9ESVJfTkFNRSAx CiNkZWZpbmUgSEFWRV9MUkFORDQ4IDEKI2RlZmluZSBIQVZFX1JBTkRPTSAxCiNkZWZpbmUg SEFWRV9SSU5UIDEKI2RlZmluZSBIQVZFX1RSVU5DIDEKI2RlZmluZSBIQVZFX1NFTEVDVCAx CiNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCiNkZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQoj ZGVmaW5lIEhBVkVfTkVXTE9DQUxFIDEKI2RlZmluZSBIQVZFX0dFVFJMSU1JVCAxCiNkZWZp bmUgSEFWRV9TRVRSTElNSVQgMQojZGVmaW5lIEhBVkVfU0hVVERPV04gMQojZGVmaW5lIEhB VkVfUFRIUkVBRF9TSUdNQVNLIDEKI2RlZmluZSBIQVZFX1NUUlNJR05BTCAxCiNkZWZpbmUg SEFWRV9TRVRJVElNRVIgMQojZGVmaW5lIEhBVkVfU0VORFRPIDEKI2RlZmluZSBIQVZFX1JF Q1ZGUk9NIDEKI2RlZmluZSBIQVZFX0dFVFNPQ0tOQU1FIDEKI2RlZmluZSBIQVZFX0dFVElG QUREUlMgMQojZGVmaW5lIEhBVkVfRlJFRUlGQUREUlMgMQojZGVmaW5lIEhBVkVfR0FJX1NU UkVSUk9SIDEKI2RlZmluZSBIQVZFX1NZTkMgMQojZGVmaW5lIEhBVkVfR0VUUFdFTlQgMQoj ZGVmaW5lIEhBVkVfRU5EUFdFTlQgMQojZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQojZGVmaW5l IEhBVkVfRU5ER1JFTlQgMQojZGVmaW5lIEhBVkVfUkVOQU1FQVQyIDEKI2RlZmluZSBIQVZF X0NGTUFLRVJBVyAxCiNkZWZpbmUgSEFWRV9DRlNFVFNQRUVEIDEKI2RlZmluZSBIQVZFX19f RVhFQ1VUQUJMRV9TVEFSVCAxCiNkZWZpbmUgSEFWRV9MT0cyIDEKI2RlZmluZSBIQVZFX1BU SFJFQURfU0VUTkFNRV9OUCAxCiNkZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9DIDEKI2RlZmlu ZSBIQVZFX0RFQ0xfQUxJR05FRF9BTExPQyAxCiNkZWZpbmUgSEFWRV9QT1NJWF9NQURWSVNF IDEKI2RlZmluZSBIQVZFX19fQlVJTFRJTl9GUkFNRV9BRERSRVNTIDEKI2RlZmluZSBIQVZF X19fQlVJTFRJTl9VTldJTkRfSU5JVCAxCiNkZWZpbmUgSEFWRV9GU0VFS08gMQojZGVmaW5l IEhBVkVfR1JBTlRQVCAxCiNkZWZpbmUgSEFWRV9HRVRQVCAxCiNkZWZpbmUgSEFWRV9QT1NJ WF9PUEVOUFQgMQojZGVmaW5lIFRFUk1JTkZPIDEKI2RlZmluZSBURVJNSU5GT19ERUZJTkVT X0JDIDEKI2RlZmluZSBIQVZFX1RJTUVSRkQgMQojZGVmaW5lIEhBVkVfVkFMR1JJTkRfVkFM R1JJTkRfSCAxCiNkZWZpbmUgSEFWRV9TVFJVQ1RfVU5JUEFJUl9VTklDT0RFIDEKI2RlZmlu ZSBIQVZFX1dPUktJTkdfVkZPUksgMQojZGVmaW5lIEhBVkVfV09SS0lOR19GT1JLIDEKI2Rl ZmluZSBIQVZFX1NOUFJJTlRGIDEKI2RlZmluZSBIQVZFX1NQQVdOX0ggMQojZGVmaW5lIEhB VkVfUE9TSVhfU1BBV04gMQojZGVmaW5lIEhBVkVfUE9TSVhfU1BBV05fRklMRV9BQ1RJT05T X0FERENIRElSX05QIDEKI2RlZmluZSBIQVZFX1BPU0lYX1NQQVdOQVRUUl9TRVRGTEFHUyAx CiNkZWZpbmUgSEFWRV9ERUNMX1BPU0lYX1NQQVdOX1NFVFNJRCAxCiNkZWZpbmUgSEFWRV9H TElCIDEKI2RlZmluZSBIQVZFX0xBTkdJTkZPX0NPREVTRVQgMQojZGVmaW5lIEhBVkVfTEFO R0lORk9fX05MX1BBUEVSX1dJRFRIIDEKI2RlZmluZSBIQVZFX01CU1RBVEVfVCAxCiNkZWZp bmUgQU1QRVJTQU5EX0ZVTExfTkFNRSAxCiNkZWZpbmUgSEFWRV9QVFlTIDEKI2RlZmluZSBI QVZFX1NPQ0tFVFMgMQojZGVmaW5lIE5VTExfREVWSUNFICIvZGV2L251bGwiCiNkZWZpbmUg U0VQQ0hBUiAnOicKI2RlZmluZSBzdWJwcm9jZXNzZXMgMQojZGVmaW5lIFVTRVJfRlVMTF9O QU1FIHB3LT5wd19nZWNvcwojZGVmaW5lIERJUkVDVE9SWV9TRVAgJy8nCiNkZWZpbmUgSVNf REVWSUNFX1NFUChfY18pIDAKI2RlZmluZSBJU19ESVJFQ1RPUllfU0VQKF9jXykgKChfY18p ID09IERJUkVDVE9SWV9TRVApCiNkZWZpbmUgSVNfQU5ZX1NFUChfY18pIChJU19ESVJFQ1RP UllfU0VQIChfY18pKQojZGVmaW5lIEhBVkVfUFJPQ0ZTIDEKI2RlZmluZSBERUZBVUxUX1NP VU5EX0RFVklDRSAiL2Rldi9kc3AiCiNkZWZpbmUgSU5URVJSVVBUX0lOUFVUIDEKI2RlZmlu ZSBOQVJST1dQUk9UTyAxCiNkZWZpbmUgVU5JWDk4X1BUWVMgMQojZGVmaW5lIFBUWV9JVEVS QVRJT04gaW50IGk7IGZvciAoaSA9IDA7IGkgPCAxOyBpKyspCiNkZWZpbmUgUFRZX1RUWV9O QU1FX1NQUklOVEYgeyBjaGFyICpwdHluYW1lID0gMDsgc2lnc2V0X3QgYmxvY2tlZDsgc2ln ZW1wdHlzZXQgKCZibG9ja2VkKTsgc2lnYWRkc2V0ICgmYmxvY2tlZCwgU0lHQ0hMRCk7IHB0 aHJlYWRfc2lnbWFzayAoU0lHX0JMT0NLLCAmYmxvY2tlZCwgMCk7IGlmIChncmFudHB0IChm ZCkgIT0gLTEgJiYgdW5sb2NrcHQgKGZkKSAhPSAtMSkgcHR5bmFtZSA9IHB0c25hbWUoZmQp OyBwdGhyZWFkX3NpZ21hc2sgKFNJR19VTkJMT0NLLCAmYmxvY2tlZCwgMCk7IGlmICghcHR5 bmFtZSkgeyBlbWFjc19jbG9zZSAoZmQpOyByZXR1cm4gLTE7IH0gc25wcmludGYgKHB0eV9u YW1lLCBQVFlfTkFNRV9TSVpFLCAiJXMiLCBwdHluYW1lKTsgfQojZGVmaW5lIFBUWV9PUEVO IGRvIHsgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fQ0xPRVhFQyB8IE9fTk9DVFRZ KTsgaWYgKGZkIDwgMCAmJiBlcnJubyA9PSBFSU5WQUwpIGZkID0gcG9zaXhfb3BlbnB0IChP X1JEV1IgfCBPX05PQ1RUWSk7IH0gd2hpbGUgKGZhbHNlKQojZGVmaW5lIFBUWV9OQU1FX1NQ UklOVEYgLyoqLwojZGVmaW5lIFNJR05BTFNfVklBX0NIQVJBQ1RFUlMgMQojZGVmaW5lIEdD X1NFVEpNUF9XT1JLUyAxCiNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKI2RlZmluZSBIQVZF X19TRVRKTVAgMQojZGVmaW5lIEhBVkVfU0lHU0VUSk1QIDEKI2RlZmluZSBIQVZFX1NUQUNL X09WRVJGTE9XX0hBTkRMSU5HIDEKI2RlZmluZSBVU0cgLyoqLwojZGVmaW5lIEdOVV9MSU5V WCAvKiovCiNkZWZpbmUgU0laRU9GX1NQRUVEX1QgNAojZGVmaW5lIFVTQUJMRV9GSU9OUkVB RCAxCiNkZWZpbmUgVVNBQkxFX1NJR0lPIDEKI2RlZmluZSBDT1BZUklHSFQgIkNvcHlyaWdo dCAoQykgMjAyMyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4iCiNkZWZpbmUgVEVS TV9IRUFERVIgImd0a3V0aWwuaCIKI2RlZmluZSBFTUFDU19DT05GSUdVUkFUSU9OICJ4ODZf NjQtcGMtbGludXgtZ251IgojZGVmaW5lIEVNQUNTX0NPTkZJR19PUFRJT05TICIiCiNkZWZp bmUgSEFWRV9YX1dJTkRPV1MgMQojZGVmaW5lIEhBVkVfWDExIDEKI2RlZmluZSBIQVZFX1NU UlVDVF9BVFRSSUJVVEVfQUxJR05FRCAxCiNkZWZpbmUgSEFWRV9UWVBFT0YgMQojZGVmaW5l IEhBVkVfU1RBVEVNRU5UX0VYUFJFU1NJT05TIDEKI2RlZmluZSBNQUxMT0NfMF9JU19OT05O VUxMIDEKI2RlZmluZSBIQVZFX1NZU19BQ0xfSCAxCiNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZJ TEUgMQojZGVmaW5lIEhBVkVfQUNMX0dFVF9GRCAxCiNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZJ TEUgMQojZGVmaW5lIEhBVkVfQUNMX1NFVF9GRCAxCiNkZWZpbmUgSEFWRV9BQ0xfRlJFRSAx CiNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9NT0RFIDEKI2RlZmluZSBIQVZFX0FDTF9GUk9NX1RF WFQgMQojZGVmaW5lIEhBVkVfQUNMX0RFTEVURV9ERUZfRklMRSAxCiNkZWZpbmUgSEFWRV9B Q0xfRVhURU5ERURfRklMRSAxCiNkZWZpbmUgSEFWRV9BQ0xfTElCQUNMX0ggMQojZGVmaW5l IEhBVkVfQUNMX0VOVFJJRVMgMQojZGVmaW5lIEhBVkVfQUNMX0ZJUlNUX0VOVFJZIDEKI2Rl ZmluZSBVU0VfQUNMIDEKI2RlZmluZSBIQVZFX0FMTE9DQV9IIDEKI2RlZmluZSBIQVZFX0FM TE9DQSAxCiNkZWZpbmUgTFNUQVRfRk9MTE9XU19TTEFTSEVEX1NZTUxJTksgMQojZGVmaW5l IEZVTkNfUkVBTFBBVEhfV09SS1MgMQojZGVmaW5lIEhBVkVfRkFDQ0VTU0FUIDEKI2RlZmlu ZSBIQVZFX0dFVENXRCAxCiNkZWZpbmUgcmVzdHJpY3QgX19yZXN0cmljdF9fCiNkZWZpbmUg SEFWRV9FTlZJUk9OX0RFQ0wgMQojZGVmaW5lIEhBVkVfREVDTF9TVFJNT0RFIDAKI2RlZmlu ZSBIQVZFX0dFVE9QVF9IIDEKI2RlZmluZSBIQVZFX0dFVE9QVF9MT05HX09OTFkgMQojZGVm aW5lIEhBVkVfTE9OR19MT05HX0lOVCAxCiNkZWZpbmUgSEFWRV9VTlNJR05FRF9MT05HX0xP TkdfSU5UIDEKI2RlZmluZSBIQVZFX0RFQ0xfTUVNTUVNIDEKI2RlZmluZSBIQVZFX0RFQ0xf TUVNUkNIUiAxCiNkZWZpbmUgSEFWRV9NSU5NQVhfSU5fU1lTX1BBUkFNX0ggMQojZGVmaW5l IFRJTUVfVF9JU19TSUdORUQgMQojZGVmaW5lIEhBVkVfREVDTF9BTEFSTSAxCiNkZWZpbmUg SEFWRV9TVFJVQ1RfVE1fVE1fWk9ORSAxCiNkZWZpbmUgSEFWRV9UTV9aT05FIDEKI2RlZmlu ZSBIQVZFX1RNX0dNVE9GRiAxCiNkZWZpbmUgSEFWRV9TSUdTRVRfVCAxCiNkZWZpbmUgSEFW RV9XQ0hBUl9UIDEKI2RlZmluZSBIQVZFX0RFQ0xfRkNMT1NFQUxMIDEKI2RlZmluZSBIQVZF X0RFQ0xfR0VUVyAxCiNkZWZpbmUgSEFWRV9ERUNMX1BVVFcgMQojZGVmaW5lIF9fVVNFX01J TkdXX0FOU0lfU1RESU8gMQojZGVmaW5lIEhBVkVfREVDTF9FQ1ZUIDEKI2RlZmluZSBIQVZF X0RFQ0xfRkNWVCAxCiNkZWZpbmUgSEFWRV9ERUNMX0dDVlQgMQojZGVmaW5lIEhBVkVfREVD TF9TVFJOTEVOIDEKI2RlZmluZSBIQVZFX0RFQ0xfU1RSVE9JTUFYIDEKI2RlZmluZSBfVVNF X1NURF9TVEFUIDEKI2RlZmluZSBIQVZFX0RFQ0xfRVhFQ1ZQRSAxCiNkZWZpbmUgSEFWRV9E RUNMX0NMRUFSRVJSX1VOTE9DS0VEIDEKI2RlZmluZSBIQVZFX0RFQ0xfRkVPRl9VTkxPQ0tF RCAxCiNkZWZpbmUgSEFWRV9ERUNMX0ZFUlJPUl9VTkxPQ0tFRCAxCiNkZWZpbmUgSEFWRV9E RUNMX0ZGTFVTSF9VTkxPQ0tFRCAxCiNkZWZpbmUgSEFWRV9ERUNMX0ZHRVRTX1VOTE9DS0VE IDEKI2RlZmluZSBIQVZFX0RFQ0xfRlBVVENfVU5MT0NLRUQgMQojZGVmaW5lIEhBVkVfREVD TF9GUFVUU19VTkxPQ0tFRCAxCiNkZWZpbmUgSEFWRV9ERUNMX0ZSRUFEX1VOTE9DS0VEIDEK I2RlZmluZSBIQVZFX0RFQ0xfRldSSVRFX1VOTE9DS0VEIDEKI2RlZmluZSBIQVZFX0RFQ0xf R0VUQ19VTkxPQ0tFRCAxCiNkZWZpbmUgSEFWRV9ERUNMX0dFVENIQVJfVU5MT0NLRUQgMQoj ZGVmaW5lIEhBVkVfREVDTF9QVVRDX1VOTE9DS0VEIDEKI2RlZmluZSBIQVZFX0RFQ0xfUFVU Q0hBUl9VTkxPQ0tFRCAxCiNkZWZpbmUgR0VUR1JPVVBTX1QgZ2lkX3QKI2RlZmluZSBIQVZF X0RFQ0xfR0VURFRBQkxFU0laRSAxCiNkZWZpbmUgSEFWRV9NQUxMT0NfUE9TSVggMQojZGVm aW5lIFBST01PVEVEX01PREVfVCBtb2RlX3QKI2RlZmluZSBIQVZFX1dPUktJTkdfVVRJTUVT IDEKI2RlZmluZSBIQVZFX0FMTE9DQSAxCiNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fRVhQRUNU IDEKI2RlZmluZSBIQVZFX0JZVEVTV0FQX0ggMQojZGVmaW5lIEdOVUxJQl9DQU5PTklDQUxJ WkVfTEdQTCAxCiNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKI2RlZmluZSBIQVZFX0NMT0NL X0dFVFJFUyAxCiNkZWZpbmUgSEFWRV9DTE9DS19HRVRUSU1FIDEKI2RlZmluZSBIQVZFX0NM T0NLX1NFVFRJTUUgMQojZGVmaW5lIEdOVUxJQl9DTE9TRV9TVFJFQU0gMQojZGVmaW5lIEhB VkVfQ09QWV9GSUxFX1JBTkdFIDEKI2RlZmluZSBIQVZFX1NUUlVDVF9ESVJFTlRfRF9UWVBF IDEKI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCiNkZWZpbmUgR05VTElCX0ZBQ0NFU1NBVCAx CiNkZWZpbmUgSEFWRV9ERUNMX0ZET1BFTkRJUiAxCiNkZWZpbmUgR05VTElCX0ZET1BFTkRJ UiAxCiNkZWZpbmUgR0VUWEFUVFJfV0lUSF9QT1NJWF9BQ0xTIDEKI2RlZmluZSBGTEVYSUJM RV9BUlJBWV9NRU1CRVIgLyoqLwojZGVmaW5lIEhBVkVfREVDTF9fX0ZQRU5ESU5HIDEKI2Rl ZmluZSBIQVZFX0ZSRUVfUE9TSVggMQojZGVmaW5lIEhBVkVfU1lTX01PVU5UX0ggMQojZGVm aW5lIFNUQVRfU1RBVFZGUyAxCiNkZWZpbmUgU1RBVF9TVEFURlMyX0ZSU0laRSAxCiNkZWZp bmUgSEFWRV9TWVNfU1RBVEZTX0ggMQojZGVmaW5lIEhBVkVfRlVUSU1FTlMgMQojZGVmaW5l IEhBVkVfR0VUTE9BREFWRyAxCiNkZWZpbmUgSEFWRV9HRVRSQU5ET00gMQojZGVmaW5lIEhB VkVfVElNRVNQRUNfR0VUIDEKI2RlZmluZSBHRVRUSU1FT0ZEQVlfVElNRVpPTkUgdm9pZAoj ZGVmaW5lIEhBVkVfX19JTkxJTkUgMQojZGVmaW5lIEhBVkVfR01QX0ggMQojZGVmaW5lIEhB VkVfTUVNTUVNIDEKI2RlZmluZSBIQVZFX01FTVBDUFkgMQojZGVmaW5lIEhBVkVfTUVNUkNI UiAxCiNkZWZpbmUgSEFWRV9NS09TVEVNUCAxCiNkZWZpbmUgR05VTElCX01LT1NURU1QIDEK I2RlZmluZSBORUVEX01LVElNRV9XT1JLSU5HIDEKI2RlZmluZSBIQVZFX0JVR19CSUdfTkFO T1NMRUVQIDEKI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKI2RlZmluZSBIQVZFX1NDSEVE X0dFVEFGRklOSVRZIDEKI2RlZmluZSBIQVZFX1NDSEVEX0dFVEFGRklOSVRZX0xJS0VfR0xJ QkMgMQojZGVmaW5lIG15X3N0cmZ0aW1lIG5zdHJmdGltZQojZGVmaW5lIEhBVkVfUElQRTIg MQojZGVmaW5lIFVTRV9YQVRUUiAxCiNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKI2RlZmlu ZSBIQVZFX1NJR0RFU0NSX05QIDEKI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX0FUSU1f VFZfTlNFQyAxCiNkZWZpbmUgVFlQRU9GX1NUUlVDVF9TVEFUX1NUX0FUSU1fSVNfU1RSVUNU X1RJTUVTUEVDIDEKI2RlZmluZSBHTlVMSUJfRlNDQU5GIDEKI2RlZmluZSBHTlVMSUJfU0NB TkYgMQojZGVmaW5lIEhBVkVfU1RQQ1BZIDEKI2RlZmluZSBHTlVMSUJfVEVNUE5BTUUgMQoj ZGVmaW5lIEhBVkVfREVDTF9MT0NBTFRJTUVfUiAxCiNkZWZpbmUgSEFWRV9USU1FR00gMQoj ZGVmaW5lIEhBVkVfVElNRVJfU0VUVElNRSAxCiNkZWZpbmUgR05VTElCX1NURElPX1NJTkdM RV9USFJFQUQgMQojZGVmaW5lIFVTRV9VTkxPQ0tFRF9JTyBHTlVMSUJfU1RESU9fU0lOR0xF X1RIUkVBRAojZGVmaW5lIEhBVkVfVVRJTUVOU0FUIDEKI2RlZmluZSBIQVZFX0NfVkFSQVJS QVlTIDEKI2RlZmluZSBORUVEX01LVElNRV9JTlRFUk5BTCAxCiNkZWZpbmUgSEFWRV9USU1F Ul9HRVRPVkVSUlVOIDEKI2RlZmluZSBIQVZFX1dJTkRPV19TWVNURU0gMQojZGVmaW5lIFBP TExfRk9SX0lOUFVUIDEKI2RlZmluZSBIQVZFX1RFWFRfQ09OVkVSU0lPTiAxCiNkZWZpbmUg RU1BQ1NfQ09ORklHX0ZFQVRVUkVTICJBQ0wgQ0FJUk8gREJVUyBGUkVFVFlQRSBHSUYgR0xJ QiBHTVAgR05VVExTIEdQTSBHU0VUVElOR1MgSEFSRkJVWlogSlBFRyBKU09OIExDTVMyIExJ Qk9URiBMSUJTRUxJTlVYIExJQlNZU1RFTUQgTElCWE1MMiBNMTdOX0ZMVCBNT0RVTEVTIE5P VElGWSBJTk9USUZZIFBEVU1QRVIgUE5HIFJTVkcgU0VDQ09NUCBTT1VORCBTUUxJVEUzIFRI UkVBRFMgVElGRiBUT09MS0lUX1NDUk9MTF9CQVJTIFdFQlAgWDExIFhEQkUgWElNIFhJTlBV VDIgWFBNIEdUSzMgWkxJQiIKCmNvbmZpZ3VyZTogZXhpdCAwCgojIyAtLS0tLS0tLS0tLS0t LS0tLS0tLS0tICMjCiMjIFJ1bm5pbmcgY29uZmlnLnN0YXR1cy4gIyMKIyMgLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSAjIwoKVGhpcyBmaWxlIHdhcyBleHRlbmRlZCBieSBHTlUgRW1hY3Mg Y29uZmlnLnN0YXR1cyAzMC4wLjUwLCB3aGljaCB3YXMKZ2VuZXJhdGVkIGJ5IEdOVSBBdXRv Y29uZiAyLjcxLiAgSW52b2NhdGlvbiBjb21tYW5kIGxpbmUgd2FzCgogIENPTkZJR19GSUxF UyAgICA9IAogIENPTkZJR19IRUFERVJTICA9IAogIENPTkZJR19MSU5LUyAgICA9IAogIENP TkZJR19DT01NQU5EUyA9IAogICQgLi9jb25maWcuc3RhdHVzIAoKb24gTmFub0tERQoKY29u ZmlnLnN0YXR1czoyNTE0OiBjcmVhdGluZyBzcmMvdmVyYm9zZS5tawpjb25maWcuc3RhdHVz OjI1MTQ6IGNyZWF0aW5nIHNyYy9lbWFjcy1tb2R1bGUuaApjb25maWcuc3RhdHVzOjI1MTQ6 IGNyZWF0aW5nIE1ha2VmaWxlCmNvbmZpZy5zdGF0dXM6MjUxNDogY3JlYXRpbmcgbGliL2du dWxpYi5tawpjb25maWcuc3RhdHVzOjI1MTQ6IGNyZWF0aW5nIC4vZG9jL21hbi9lbWFjcy4x CmNvbmZpZy5zdGF0dXM6MjUxNDogY3JlYXRpbmcgbGliL01ha2VmaWxlCmNvbmZpZy5zdGF0 dXM6MjUxNDogY3JlYXRpbmcgbGliLXNyYy9NYWtlZmlsZQpjb25maWcuc3RhdHVzOjI1MTQ6 IGNyZWF0aW5nIG9sZFhNZW51L01ha2VmaWxlCmNvbmZpZy5zdGF0dXM6MjUxNDogY3JlYXRp bmcgZG9jL2VtYWNzL01ha2VmaWxlCmNvbmZpZy5zdGF0dXM6MjUxNDogY3JlYXRpbmcgZG9j L21pc2MvTWFrZWZpbGUKY29uZmlnLnN0YXR1czoyNTE0OiBjcmVhdGluZyBkb2MvbGlzcGlu dHJvL01ha2VmaWxlCmNvbmZpZy5zdGF0dXM6MjUxNDogY3JlYXRpbmcgZG9jL2xpc3ByZWYv TWFrZWZpbGUKY29uZmlnLnN0YXR1czoyNTE0OiBjcmVhdGluZyBzcmMvTWFrZWZpbGUKY29u ZmlnLnN0YXR1czoyNTE0OiBjcmVhdGluZyBsd2xpYi9NYWtlZmlsZQpjb25maWcuc3RhdHVz OjI1MTQ6IGNyZWF0aW5nIGxpc3AvTWFrZWZpbGUKY29uZmlnLnN0YXR1czoyNTE0OiBjcmVh dGluZyBsZWltL01ha2VmaWxlCmNvbmZpZy5zdGF0dXM6MjUxNDogY3JlYXRpbmcgbmV4dHN0 ZXAvTWFrZWZpbGUKY29uZmlnLnN0YXR1czoyNTE0OiBjcmVhdGluZyBudC9NYWtlZmlsZQpj b25maWcuc3RhdHVzOjI1MTQ6IGNyZWF0aW5nIHRlc3QvTWFrZWZpbGUKY29uZmlnLnN0YXR1 czoyNTE0OiBjcmVhdGluZyB0ZXN0L21hbnVhbC9ub3ZlcmxheS9NYWtlZmlsZQpjb25maWcu c3RhdHVzOjI1MTQ6IGNyZWF0aW5nIHRlc3QvaW5mcmEvTWFrZWZpbGUKY29uZmlnLnN0YXR1 czoyNTE0OiBjcmVhdGluZyBhZG1pbi9jaGFyc2V0cy9NYWtlZmlsZQpjb25maWcuc3RhdHVz OjI1MTQ6IGNyZWF0aW5nIGFkbWluL3VuaWRhdGEvTWFrZWZpbGUKY29uZmlnLnN0YXR1czoy NTE0OiBjcmVhdGluZyBhZG1pbi9ncmFtbWFycy9NYWtlZmlsZQpjb25maWcuc3RhdHVzOjI1 MTQ6IGNyZWF0aW5nIHNyYy9jb25maWcuaApjb25maWcuc3RhdHVzOjI3MTQ6IGV4ZWN1dGlu ZyBzcmMvZXBhdGhzLmggY29tbWFuZHMKY29uZmlnLnN0YXR1czoyNzE0OiBleGVjdXRpbmcg c3JjLy5nZGJpbml0IGNvbW1hbmRzCmNvbmZpZy5zdGF0dXM6MjcxNDogZXhlY3V0aW5nIGRv Yy9lbWFjcy9lbWFjc3Zlci50ZXhpIGNvbW1hbmRzCmNvbmZpZy5zdGF0dXM6MjcxNDogZXhl Y3V0aW5nIGV0Yy1yZWZjYXJkcy1lbWFjc3Zlci50ZXggY29tbWFuZHMK --------------3uwEpcw87tp3rRzlLl9gyzFz 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 X01PRFVMRVMoW1dFQlBdLCBbJFdFQlBfTU9EVUxFXSkKCiAgICAgICMgV2ViUEdldEluZm8g aXMgc29tZXRpbWVzIG5vdCBwcmVzZW50IGluc2lkZSBsaWJ3ZWJwZGVtdXgsIHNvCiAgICAg ICMgaWYgaXQgZG9lcyBub3QgbGluaywgYWxzbyBjaGVjayBmb3IgbGlid2VicGRlY29kZXIu CgogICAgICBPTERfQ0ZMQUdTPSRDRkxBR1MKICAgICAgT0xEX0xJQlM9JExJQlMKICAgICAg Q0ZMQUdTPSIkQ0ZMQUdTICRXRUJQX0NGTEFHUyIKICAgICAgTElCUz0iJExJQlMgJFdFQlBf TElCUyIKIAogICAgICBBQ19DSEVDS19GVU5DKFtXZWJQR2V0SW5mb10sIFtdLAogICAgICAg ICBbV0VCUF9NT0RVTEU9IiRXRUJQX01PRFVMRSBsaWJ3ZWJwZGVjb2RlciA+PSAkV0VCUF9S RVFVSVJFRCIKICAgICAgIEVNQUNTX0NIRUNLX01PRFVMRVMoW1dFQlBdLCBbJFdFQlBfTU9E VUxFXSldKQogCiAgICAgIENGTEFHUz0kT0xEX0NGTEFHUwogICAgICBMSUJTPSRPTERfTElC UwogCiAgICAgIEFDX1NVQlNUKFtXRUJQX0NGTEFHU10pCiAgICAgIEFDX1NVQlNUKFtXRUJQ X0xJQlNdKQogICBmaQogICBpZiB0ZXN0ICRIQVZFX1dFQlAgPSB5ZXM7IHRoZW4KICAgICAg QUNfREVGSU5FKFtIQVZFX1dFQlBdLCBbMV0sIFtEZWZpbmUgdG8gMSBpZiB1c2luZyBsaWJ3 ZWJwLl0pCiAgICAgIENGTEFHUz0iJENGTEFHUyAkV0VCUF9DRkxBR1MiCiAgICAgICMgV2lu ZG93cyBsb2FkcyBsaWJ3ZWJwIGR5bmFtaWNhbGx5CiAgICAgIGlmIHRlc3QgIiR7b3BzeXN9 IiA9ICJtaW5ndzMyIjsgdGhlbgoJV0VCUF9MSUJTPQogICAgICBmaQogICBmaQpmaQoKIyMj IFVzZSAtbHNxbGl0ZTMgaWYgYXZhaWxhYmxlLCB1bmxlc3MgJy0td2l0aC1zcWxpdGUzPW5v JwpIQVZFX1NRTElURTM9bm8KaWYgdGVzdCAiJHt3aXRoX3NxbGl0ZTN9IiAhPSAibm8iOyB0 aGVuCiAgIEFDX0NIRUNLX0xJQihbc3FsaXRlM10sIFtzcWxpdGUzX29wZW5fdjJdLAogICAg IFtIQVZFX1NRTElURTM9eWVzXSwKICAgICBbSEFWRV9TUUxJVEUzPW5vXSkKICAgaWYgdGVz dCAiJEhBVkVfU1FMSVRFMyIgPSAieWVzIjsgdGhlbgogICAgIFNRTElURTNfTElCUz0tbHNx bGl0ZTMKICAgICBBQ19TVUJTVChbU1FMSVRFM19MSUJTXSkKICAgICBMSUJTPSIkU1FMSVRF M19MSUJTICRMSUJTIgogICAgIEFDX0RFRklORShbSEFWRV9TUUxJVEUzXSwgWzFdLAogICAg ICAgW0RlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBsaWJzcWxpdGUzIGxpYnJhcnkgKC1s c3FsaXRlKS5dKQogICAgICMgV2luZG93cyBsb2FkcyBsaWJzcWxpdGUgZHluYW1pY2FsbHkK ICAgICBpZiB0ZXN0ICIke29wc3lzfSIgPSAibWluZ3czMiI7IHRoZW4KICAgICAgICBTUUxJ VEUzX0xJQlM9CiAgICAgZmkKICAgICBBQ19DSEVDS19MSUIoW3NxbGl0ZTNdLCBbc3FsaXRl M19sb2FkX2V4dGVuc2lvbl0sCiAgICAgICBbSEFWRV9TUUxJVEUzX0xPQURfRVhURU5TSU9O PXllc10sCiAgICAgICBbSEFWRV9TUUxJVEUzX0xPQURfRVhURU5TSU9OPW5vXSkKICAgICBp ZiB0ZXN0ICIkSEFWRV9TUUxJVEUzX0xPQURfRVhURU5TSU9OIiA9ICJ5ZXMiOyB0aGVuCiAg ICAgICBBQ19ERUZJTkUoW0hBVkVfU1FMSVRFM19MT0FEX0VYVEVOU0lPTl0sIFsxXSwKCSBb RGVmaW5lIHRvIDEgaWYgc3FsaXRlMyBzdXBwb3J0cyBsb2FkaW5nIGV4dGVuc2lvbnMuXSkK ICAgICBmaQogICBmaQpmaQoKSEFWRV9JTUFHRU1BR0lDSz1ubwppZiB0ZXN0ICIke0hBVkVf WDExfSIgPSAieWVzIiB8fCB0ZXN0ICIke0hBVkVfTlN9IiA9ICJ5ZXMiIHx8IHRlc3QgIiR7 SEFWRV9XMzJ9IiA9ICJ5ZXMiIHx8IFwKICAgdGVzdCAiJHtIQVZFX0JFX0FQUH0iID0gInll cyIgfHwgdGVzdCAiJHt3aW5kb3dfc3lzdGVtfSIgPSAicGd0ayI7IHRoZW4KICBpZiB0ZXN0 ICIke3dpdGhfaW1hZ2VtYWdpY2t9IiAhPSAibm8iOyB0aGVuCiAgICBpZiB0ZXN0IC1uICIk QlJFVyI7IHRoZW4KICAgICAgIyBIb21lYnJldyBkb2Vzbid0IGxpbmsgSW1hZ2VNYWdpY2sg NiBieSBkZWZhdWx0LCBzbyBtYWtlIHN1cmUKICAgICAgIyBwa2djb25maWcgY2FuIGZpbmQg aXQuCiAgICAgIGV4cG9ydCBQS0dfQ09ORklHX1BBVEg9IiRQS0dfQ09ORklHX1BBVEgkUEFU SF9TRVBBUkFUT1JgJEJSRVcgLS1wcmVmaXggaW1hZ2VtYWdpY2tANiAyPi9kZXYvbnVsbGAv bGliL3BrZ2NvbmZpZyIKICAgIGZpCgogICAgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyhbSU1BR0VN QUdJQ0tdLCBbTWFnaWNrV2FuZCA+PSA3XSkKICAgIGlmIHRlc3QgJEhBVkVfSU1BR0VNQUdJ Q0sgPSB5ZXM7IHRoZW4KICAgICAgIEFDX0RFRklORShbSEFWRV9JTUFHRU1BR0lDSzddLCBb MV0sCgkgW0RlZmluZSB0byAxIGlmIHVzaW5nIEltYWdlTWFnaWNrNy5dKQogICAgZWxzZQog ICAgICAgIyMgNi4zLjUgaXMgdGhlIGVhcmxpZXN0IHZlcnNpb24ga25vd24gdG8gd29yazsg c2VlIEJ1ZyMxNzMzOS4KICAgICAgICMjIDYuOC4yIG1ha2VzIEVtYWNzIGNyYXNoOyBzZWUg QnVnIzEzODY3LgogICAgICAgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyhbSU1BR0VNQUdJQ0tdLCBb V2FuZCA+PSA2LjMuNSBXYW5kICE9IDYuOC4yXSkKICAgIGZpCgogICAgaWYgdGVzdCAkSEFW RV9JTUFHRU1BR0lDSyA9IHllczsgdGhlbgogICAgICBPTERfQ0ZMQUdTPSRDRkxBR1MKICAg ICAgT0xEX0xJQlM9JExJQlMKICAgICAgQ0ZMQUdTPSIkQ0ZMQUdTICRJTUFHRU1BR0lDS19D RkxBR1MiCiAgICAgIExJQlM9IiRJTUFHRU1BR0lDS19MSUJTICRMSUJTIgogICAgICBBQ19D SEVDS19GVU5DUyhbTWFnaWNrUmVsaW5xdWlzaE1lbW9yeSBNYWdpY2tFeHBvcnRJbWFnZVBp eGVscyBcCgkJICAgICAgTWFnaWNrTWVyZ2VJbWFnZUxheWVycyBNYWdpY2tBdXRvT3JpZW50 SW1hZ2VdKQogICAgICBDRkxBR1M9JE9MRF9DRkxBR1MKICAgICAgTElCUz0kT0xEX0xJQlMK ICAgICAgIyBDaGVjayB0aGF0IEltYWdlTWFnaWNrIGxpbmtzLiAgSXQgZG9lcyBub3QgbGlu ayBvbiBGZWRvcmEgMjUKICAgICAgIyB3aXRoICcuL2NvbmZpZ3VyZSBDQz1jbGFuZycsIGFz IHBrZy1jb25maWcgb3V0cHV0cyBmbGFncyBsaWtlCiAgICAgICMgLWxvbXAgdGhhdCB3b3Jr IGZvciBHQ0MgYnV0IG5vdCBDbGFuZy4KICAgICAgaWYgdGVzdCAiJGFjX2N2X2Z1bmNfTWFn aWNrUmVsaW5xdWlzaE1lbW9yeSIgIT0geWVzOyB0aGVuCglIQVZFX0lNQUdFTUFHSUNLPW5v CiAgICAgIGZpCiAgICBmaQogICAgaWYgdGVzdCAkSEFWRV9JTUFHRU1BR0lDSyA9IHllczsg dGhlbgogICAgICBBQ19ERUZJTkUoW0hBVkVfSU1BR0VNQUdJQ0tdLCBbMV0sIFtEZWZpbmUg dG8gMSBpZiB1c2luZyBJbWFnZU1hZ2ljay5dKQogICAgZWxzZQogICAgICBpZiB0ZXN0ICIk e3dpdGhfaW1hZ2VtYWdpY2t9IiAhPSAibm8iOyB0aGVuCiAgICAgICAgQUNfTVNHX0VSUk9S KFtJbWFnZU1hZ2ljayB3YW50ZWQsIGJ1dCBpdCBkb2VzIG5vdCBjb21waWxlLiAgTWF5YmUg c29tZSBsaWJyYXJ5IGZpbGVzIGFyZSBtaXNzaW5nP10pOwogICAgICBmaQogICAgICBJTUFH RU1BR0lDS19DRkxBR1M9CiAgICAgIElNQUdFTUFHSUNLX0xJQlM9CiAgICBmaQogICAgQUNf U1VCU1QoW0lNQUdFTUFHSUNLX0NGTEFHU10pCiAgICBBQ19TVUJTVChbSU1BR0VNQUdJQ0tf TElCU10pCiAgZmkKZmkKCkFDX0NIRUNLX0xJQihbYW5sXSwgW2dldGFkZHJpbmZvX2FdLCBb SEFWRV9HRVRBRERSSU5GT19BPXllc10pCmlmIHRlc3QgIiR7SEFWRV9HRVRBRERSSU5GT19B fSIgPSAieWVzIjsgdGhlbgogIEFDX0RFRklORShbSEFWRV9HRVRBRERSSU5GT19BXSwgWzFd LApbRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgZ2V0YWRkcmluZm9fYSBmb3IgYXN5bmNocm9u b3VzIEROUyByZXNvbHV0aW9uLl0pCiAgR0VUQUREUklORk9fQV9MSUJTPSItbGFubCIKICBB Q19TVUJTVChbR0VUQUREUklORk9fQV9MSUJTXSkKZmkKCkhBVkVfR1RLPW5vCkdUS19PQko9 Cmd0a190ZXJtX2hlYWRlcj0kdGVybV9oZWFkZXIKY2hlY2tfZ3RrMj1ubwpndGszX3BrZ19l cnJvcnM9CmlmIHRlc3QgIiR7b3BzeXN9IiAhPSAibWluZ3czMiI7IHRoZW4KICBpZiB0ZXN0 ICIke3dpdGhfZ3RrM30iID0gInllcyIgfHwgdGVzdCAiJHt3aXRoX2d0a30iID0gInllcyIg fHwgdGVzdCAiJFVTRV9YX1RPT0xLSVQiID0gIm1heWJlIjsgdGhlbgogICAgR0xJQl9SRVFV SVJFRD0yLjM3LjUKICAgIGlmIHRlc3QgIiR7d2luZG93X3N5c3RlbX0iID0gIngxMSI7IHRo ZW4KICAgICAgR1RLX1JFUVVJUkVEPTMuMTAKICAgIGVsc2UKICAgICAgR1RLX1JFUVVJUkVE PTMuMjIuMjMKICAgIGZpCiAgICBHVEtfTU9EVUxFUz0iZ3RrKy0zLjAgPj0gJEdUS19SRVFV SVJFRCBnbGliLTIuMCA+PSAkR0xJQl9SRVFVSVJFRCIKCiAgICBkbmwgQ2hlY2tzIGZvciBs aWJyYXJpZXMuCiAgICBFTUFDU19DSEVDS19NT0RVTEVTKFtHVEtdLCBbJEdUS19NT0RVTEVT XSwKICAgICAgW3BrZ19jaGVja19ndGs9eWVzXSwgW3BrZ19jaGVja19ndGs9bm9dKQogICAg aWYgdGVzdCAiJHBrZ19jaGVja19ndGsiID0gIm5vIiAmJiB0ZXN0ICIkd2l0aF9ndGszIiA9 ICJ5ZXMiOyB0aGVuCiAgICAgICBBQ19NU0dfRVJST1IoWyRHVEtfUEtHX0VSUk9SU10pCiAg ICBmaQogICAgaWYgdGVzdCAiJHBrZ19jaGVja19ndGsiID0gInllcyI7IHRoZW4KICAgICAg IEFDX0RFRklORShbSEFWRV9HVEszXSwgWzFdLCBbRGVmaW5lIHRvIDEgaWYgdXNpbmcgR1RL IDMgb3IgbGF0ZXIuXSkKICAgICAgIEdUS19PQko9ZW1hY3NndGtmaXhlZC5vCiAgICAgICBn dGtfdGVybV9oZWFkZXI9Z3RrdXRpbC5oCiAgICAgICBVU0VfR1RLX1RPT0xLSVQ9IkdUSzMi CiAgICAgICBpZiB0ZXN0ICJ4JGFjX2VuYWJsZV9ndGtfZGVwcmVjYXRpb25fd2FybmluZ3Mi ID0geDsgdGhlbgoJIEFDX0RFRklORShbR0RLX0RJU0FCTEVfREVQUkVDQVRJT05fV0FSTklO R1NdLCBbMV0sCgkgICBbRGVmaW5lIHRvIDEgdG8gZGlzYWJsZSBHVEsrL0dESyBkZXByZWNh dGlvbiB3YXJuaW5ncy5dKQoJIEFDX0RFRklORShbR0xJQl9ESVNBQkxFX0RFUFJFQ0FUSU9O X1dBUk5JTkdTXSwgWzFdLAoJICAgW0RlZmluZSB0byAxIHRvIGRpc2FibGUgR2xpYiBkZXBy ZWNhdGlvbiB3YXJuaW5ncy5dKQogICAgICAgZmkKICAgIGVsc2UKICAgICAgIGNoZWNrX2d0 azI9eWVzCiAgICAgICBndGszX3BrZ19lcnJvcnM9IiRHVEtfUEtHX0VSUk9SUyAiCiAgICBm aQogIGZpCgogIGlmIHRlc3QgIiR7d2l0aF9ndGsyfSIgPSAieWVzIiB8fCB0ZXN0ICIkY2hl Y2tfZ3RrMiIgPSAieWVzIjsgdGhlbgogICAgR0xJQl9SRVFVSVJFRD0yLjI4CiAgICBHVEtf UkVRVUlSRUQ9Mi4yNAogICAgR1RLX01PRFVMRVM9Imd0aystMi4wID49ICRHVEtfUkVRVUlS RUQgZ2xpYi0yLjAgPj0gJEdMSUJfUkVRVUlSRUQiCgogICAgZG5sIENoZWNrcyBmb3IgbGli cmFyaWVzLgogICAgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyhbR1RLXSwgWyRHVEtfTU9EVUxFU10s CiAgICAgIFtwa2dfY2hlY2tfZ3RrPXllc10sIFtwa2dfY2hlY2tfZ3RrPW5vXSkKICAgIGlm IHRlc3QgIiRwa2dfY2hlY2tfZ3RrIiA9ICJubyIgJiYKICAgICAgIHsgdGVzdCAiJHdpdGhf Z3RrIiA9IHllcyB8fCB0ZXN0ICIkd2l0aF9ndGsyIiA9ICJ5ZXMiOyB9CiAgICB0aGVuCiAg ICAgIEFDX01TR19FUlJPUihbJGd0azNfcGtnX2Vycm9ycyRHVEtfUEtHX0VSUk9SU10pCiAg ICBmaQogICAgdGVzdCAiJHBrZ19jaGVja19ndGsiID0gInllcyIgJiYgVVNFX0dUS19UT09M S0lUPSJHVEsyIgogIGZpCmZpCgpPTERfQ0ZMQUdTPSRDRkxBR1MKT0xEX0xJQlM9JExJQlMK CmlmIHRlc3QgeCIkcGtnX2NoZWNrX2d0ayIgPSB4eWVzOyB0aGVuCgogIEFDX1NVQlNUKFtH VEtfTElCU10pCiAgQ0ZMQUdTPSIkQ0ZMQUdTICRHVEtfQ0ZMQUdTIgogIExJQlM9IiRHVEtf TElCUyAkTElCUyIKICBkbmwgVHJ5IHRvIGNvbXBpbGUgYSBzaW1wbGUgR1RLIHByb2dyYW0u CiAgQUNfQ0FDSEVfQ0hFQ0soW3doZXRoZXIgR1RLIGNvbXBpbGVzXSwgW2VtYWNzX2N2X2d0 a19jb21waWxlc10sCiAgW0FDX0xJTktfSUZFTFNFKAogICAgW0FDX0xBTkdfUFJPR1JBTSgK ICAgICAgIFtbLyogQ2hlY2sgdGhlIEd0ayBhbmQgR2xpYiBBUElzLiAgKi8KCSAjaW5jbHVk ZSA8Z3RrL2d0ay5oPgoJICNpbmNsdWRlIDxnbGliLW9iamVjdC5oPgoJIHN0YXRpYyB2b2lk CgkgY2FsbGJhY2sgKEdPYmplY3QgKmdvLCBHUGFyYW1TcGVjICpzcGVjLCBncG9pbnRlciB1 c2VyX2RhdGEpCgkge30KICAgICAgIF1dLAogICAgICAgW1sKCSBHdGtTZXR0aW5ncyAqZ3Mg PSAwOwoJIC8qIFVzZSBHX0NBTExCQUNLIHRvIG1ha2Ugc3VyZSBmdW5jdGlvbiBwb2ludGVy cyBjYW4gYmUgY2FzdCB0byB2b2lkICo7CgkgICAgc3RyaWN0IEMgcHJvaGliaXRzIHRoaXMu ICBVc2UgZ3RrX21haW5faXRlcmF0aW9uIHRvIHRlc3QgdGhhdCB0aGUKCSAgICBsaWJyYXJp ZXMgYXJlIHRoZXJlLiAgKi8KCSBpZiAoZ19zaWduYWxfaGFuZGxlcl9maW5kIChHX09CSkVD VCAoZ3MpLCBHX1NJR05BTF9NQVRDSF9GVU5DLAoJCQkJICAgIDAsIDAsIDAsIEdfQ0FMTEJB Q0sgKGNhbGxiYWNrKSwgMCkpCgkgICBndGtfbWFpbl9pdGVyYXRpb24gKCk7CiAgICAgICBd XSldLAogICAgW2VtYWNzX2N2X2d0a19jb21waWxlcz15ZXNdLCBbZW1hY3NfY3ZfZ3RrX2Nv bXBpbGVzPW5vXSldKQogIGlmIHRlc3QgIiR7ZW1hY3NfY3ZfZ3RrX2NvbXBpbGVzfSIgIT0g InllcyI7IHRoZW4KICAgIEdUS19PQko9CiAgICBpZiB0ZXN0ICIkVVNFX1hfVE9PTEtJVCIg IT0gIm1heWJlIjsgdGhlbgogICAgICBBQ19NU0dfRVJST1IoW0d0aysgd2FudGVkLCBidXQg aXQgZG9lcyBub3QgY29tcGlsZSwgc2VlIGNvbmZpZy5sb2cuICBNYXliZSBzb21lIHgxMS1k ZXZlbCBmaWxlcyBtaXNzaW5nP10pOwogICAgZmkKICBlbHNlCiAgICBDX1NXSVRDSF9YX1NJ VEU9IiRDX1NXSVRDSF9YX1NJVEUgJEdUS19DRkxBR1MiCiAgICBIQVZFX0dUSz15ZXMKICAg IEFDX0RFRklORShbVVNFX0dUS10sIFsxXSwgW0RlZmluZSB0byAxIGlmIHVzaW5nIEdUSy5d KQogICAgR1RLX09CSj0iZ3RrdXRpbC5vICRHVEtfT0JKIgogICAgdGVybV9oZWFkZXI9JGd0 a190ZXJtX2hlYWRlcgogICAgVVNFX1hfVE9PTEtJVD1ub25lCiAgICBBQ19NU0dfV0FSTihb W1lvdXIgdmVyc2lvbiBvZiBHdGsrIHdpbGwgaGF2ZSBwcm9ibGVtcyB3aXRoCiAgICAgICBj bG9zaW5nIG9wZW4gZGlzcGxheXMuICBUaGlzIGlzIG5vIHByb2JsZW0gaWYgeW91IGp1c3Qg dXNlCiAgICAgICBvbmUgZGlzcGxheSwgYnV0IGlmIHlvdSB1c2UgbW9yZSB0aGFuIG9uZSBh bmQgY2xvc2Ugb25lIG9mIHRoZW0KICAgICAgIEVtYWNzIG1heSBjcmFzaC4KICAgICAgIFNl ZSBodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ3RrL2lzc3Vlcy8yMjFdXSkKICBm aQoKZmkKQUNfU1VCU1QoW0dUS19PQkpdKQoKCmlmIHRlc3QgIiR7SEFWRV9HVEt9IiA9ICJ5 ZXMiOyB0aGVuCgogIGRubCAgR1RLIHNjcm9sbGJhcnMgcmVzZW1ibGUgdG9vbGtpdCBzY3Jv bGxiYXJzIGEgbG90LCBzbyB0byBhdm9pZAogIGRubCAgYSBsb3QgaWYgI2lmZGVmOnMsIHNh eSB3ZSBoYXZlIHRvb2xraXQgc2Nyb2xsYmFycy4KICBpZiB0ZXN0ICIkd2l0aF90b29sa2l0 X3Njcm9sbF9iYXJzIiAhPSBubzsgdGhlbgogICAgd2l0aF90b29sa2l0X3Njcm9sbF9iYXJz PXllcwogIGZpCgogIHRlcm1faGVhZGVyPWd0a3V0aWwuaAoKICBpZiB0ZXN0ICIke1VTRV9H VEtfVE9PTEtJVH0iID0gR1RLMjsgdGhlbgoKICAgIGRubCAgQ2hlY2sgaWYgd2UgaGF2ZSB0 aGUgb2xkIGZpbGUgc2VsZWN0aW9uIGRpYWxvZyBkZWNsYXJlZCBhbmQKICAgIGRubCAgaW4g dGhlIGxpbmsgbGlicmFyeS4gIEluIDIueCBpdCBtYXkgYmUgaW4gdGhlIGxpYnJhcnksCiAg ICBkbmwgIGJ1dCBub3QgZGVjbGFyZWQgaWYgZGVwcmVjYXRlZCBmZWF0dXJlZCBoYXMgYmVl biBzZWxlY3RlZCBvdXQuCiAgICBkbmwgIEFDX0NIRUNLX0RFQ0wgY2hlY2tzIGZvciBhIG1h Y3JvLCBzbyBjaGVjayBmb3IgR1RLX1RZUEVfRklMRV9TRUxFQ1RJT04uCiAgICBIQVZFX0dU S19GSUxFX1NFTEVDVElPTj1ubwogICAgQUNfQ0hFQ0tfREVDTChbR1RLX1RZUEVfRklMRV9T RUxFQ1RJT05dLAoJCSAgW0hBVkVfR1RLX0ZJTEVfU0VMRUNUSU9OPXllc10sCgkJICBbSEFW RV9HVEtfRklMRV9TRUxFQ1RJT049bm9dLAoJCSAgW0FDX0lOQ0xVREVTX0RFRkFVTFQKI2lu Y2x1ZGUgPGd0ay9ndGsuaD5dKQogICAgaWYgdGVzdCAiJEhBVkVfR1RLX0ZJTEVfU0VMRUNU SU9OIiA9IHllczsgdGhlbgogICAgICBBQ19DSEVDS19GVU5DUyhbZ3RrX2ZpbGVfc2VsZWN0 aW9uX25ld10pCiAgICBmaQoKICAgIGRubCBUaGlzIHByb2NlZHVyZSBjYXVzZXMgYSBidWcg b24gY2VydGFpbiBVYnVudHUgR1RLKzIgYnVpbGRzCiAgICBBQ19DSEVDS19GVU5DUyhbZ3Rr X3dpbmRvd19zZXRfaGFzX3Jlc2l6ZV9ncmlwXSkKICBmaQpmaQoKQ0ZMQUdTPSRPTERfQ0ZM QUdTCkxJQlM9JE9MRF9MSUJTCgpQR1RLX09CSj0KUEdUS19MSUJTPQppZiB0ZXN0ICIkd2lu ZG93X3N5c3RlbSIgPSAicGd0ayI7IHRoZW4KICBQR1RLX09CSj0icGd0a2Zucy5vIHBndGt0 ZXJtLm8gcGd0a3NlbGVjdC5vIHBndGttZW51Lm8gcGd0a2ltLm8geHNldHRpbmdzLm8iCiAg UEdUS19MSUJTPSIkR1RLX0xJQlMiCmZpCkFDX1NVQlNUKFtQR1RLX09CSl0pCkFDX1NVQlNU KFtQR1RLX0xJQlNdKQoKQUNfQ0hFQ0tfRlVOQ1MoW21hbGxvY190cmltXSkKCmRubCBELUJ1 cyBoYXMgYmVlbiB0ZXN0ZWQgdW5kZXIgR05VL0xpbnV4IG9ubHkuICBNdXN0IGJlIGFkYXB0 ZWQgZm9yCmRubCBvdGhlciBwbGF0Zm9ybXMuCkhBVkVfREJVUz1ubwpEQlVTX09CSj0KaWYg dGVzdCAiJHt3aXRoX2RidXN9IiA9ICJ5ZXMiOyB0aGVuCiAgIEVNQUNTX0NIRUNLX01PRFVM RVMoW0RCVVNdLCBbZGJ1cy0xID49IDEuMF0pCiAgIGlmIHRlc3QgIiRIQVZFX0RCVVMiID0g eWVzOyB0aGVuCiAgICAgQUNfREVGSU5FKFtIQVZFX0RCVVNdLCBbMV0sIFtEZWZpbmUgdG8g MSBpZiB1c2luZyBELUJ1cy5dKQogICAgIGRubCBkYnVzX3dhdGNoX2dldF91bml4X2ZkIGhh cyBiZWVuIGludHJvZHVjZWQgaW4gRC1CdXMgMS4xLjEuCiAgICAgZG5sIGRidXNfdHlwZV9p c192YWxpZCBhbmQgZGJ1c192YWxpZGF0ZV8qIGhhdmUgYmVlbiBpbnRyb2R1Y2VkIGluCiAg ICAgZG5sIEQtQnVzIDEuNS4xMi4KICAgICBPTERfTElCUz0kTElCUwogICAgIExJQlM9IiRM SUJTICREQlVTX0xJQlMiCiAgICAgQUNfQ0hFQ0tfRlVOQ1MoW2RidXNfd2F0Y2hfZ2V0X3Vu aXhfZmQgXAoJCSAgICBkYnVzX3R5cGVfaXNfdmFsaWQgXAoJCSAgICBkYnVzX3ZhbGlkYXRl X2J1c19uYW1lIFwKICAgICAgICAgICAgICAgICAgICBkYnVzX3ZhbGlkYXRlX3BhdGggXAoJ CSAgICBkYnVzX3ZhbGlkYXRlX2ludGVyZmFjZSBcCgkJICAgIGRidXNfdmFsaWRhdGVfbWVt YmVyXSkKICAgICBMSUJTPSRPTERfTElCUwogICAgIERCVVNfT0JKPWRidXNiaW5kLm8KICAg ZmkKZmkKQUNfU1VCU1QoW0RCVVNfQ0ZMQUdTXSkKQUNfU1VCU1QoW0RCVVNfTElCU10pCkFD X1NVQlNUKFtEQlVTX09CSl0pCgpkbmwgR1NldHRpbmdzIGhhcyBiZWVuIHRlc3RlZCB1bmRl ciBHTlUvTGludXggb25seS4KSEFWRV9HU0VUVElOR1M9bm8KaWYgdGVzdCAiJHtIQVZFX1gx MX0iID0gInllcyIgLW8gIiR7d2luZG93X3N5c3RlbX0iID0gInBndGsiICYmIHRlc3QgIiR7 d2l0aF9nc2V0dGluZ3N9IiA9ICJ5ZXMiOyB0aGVuCiAgIEVNQUNTX0NIRUNLX01PRFVMRVMo W0dTRVRUSU5HU10sIFtnaW8tMi4wID49IDIuMjZdKQogICBpZiB0ZXN0ICIkSEFWRV9HU0VU VElOR1MiID0gInllcyI7IHRoZW4KICAgICAgb2xkX0NGTEFHUz0kQ0ZMQUdTCiAgICAgIENG TEFHUz0iJENGTEFHUyAkR1NFVFRJTkdTX0NGTEFHUyIKICAgICAgb2xkX0xJQlM9JExJQlMK ICAgICAgTElCUz0iJExJQlMgJEdTRVRUSU5HU19MSUJTIgogICAgICBBQ19DQUNIRV9DSEVD Syhbd2hldGhlciBHU2V0dGluZ3MgaXMgaW4gZ2lvXSwgW2VtYWNzX2N2X2dzZXR0aW5nc19p bl9naW9dLAogICAgICBbQUNfTElOS19JRkVMU0UoCiAgICAgICAgIFtBQ19MQU5HX1BST0dS QU0oCgkgICAgIFtbLyogQ2hlY2sgdGhhdCBnc2V0dGluZ3MgcmVhbGx5IGlzIHByZXNlbnQu ICAqLwoJICAgICAjaW5jbHVkZSA8Z2xpYi1vYmplY3QuaD4KCSAgICAgI2luY2x1ZGUgPGdp by9naW8uaD4KCSAgICAgXV0sCgkgICAgIFtbCgkgICAgICAgR1NldHRpbmdzICpzZXR0aW5n czsKCSAgICAgICBHVmFyaWFudCAqdmFsID0gZ19zZXR0aW5nc19nZXRfdmFsdWUgKHNldHRp bmdzLCAiIik7CgkgICAgIF1dKV0sCiAgICAgICBbZW1hY3NfY3ZfZ3NldHRpbmdzX2luX2dp bz15ZXNdLCBbZW1hY3NfY3ZfZ3NldHRpbmdzX2luX2dpbz1ub10pXSkKCiAgICAgIGlmIHRl c3QgIiRlbWFjc19jdl9nc2V0dGluZ3NfaW5fZ2lvIiA9ICJ5ZXMiOyB0aGVuCglBQ19ERUZJ TkUoW0hBVkVfR1NFVFRJTkdTXSwgWzFdLCBbRGVmaW5lIHRvIDEgaWYgdXNpbmcgR1NldHRp bmdzLl0pCglTRVRUSU5HU19DRkxBR1M9IiRHU0VUVElOR1NfQ0ZMQUdTIgoJU0VUVElOR1Nf TElCUz0iJEdTRVRUSU5HU19MSUJTIgoJdGVzdCAiJHdpdGhfZ2NvbmYiID0gInllcyIgfHwg d2l0aF9nY29uZj1ubwogICAgICBmaQogICAgICBDRkxBR1M9JG9sZF9DRkxBR1MKICAgICAg TElCUz0kb2xkX0xJQlMKICAgZmkKZmkKQUNfU1VCU1QoW0hBVkVfR1NFVFRJTkdTXSkKCmRu bCBHQ29uZiBoYXMgYmVlbiB0ZXN0ZWQgdW5kZXIgR05VL0xpbnV4IG9ubHkuCmRubCBUaGUg dmVyc2lvbiBpcyByZWFsbHkgYXJiaXRyYXJ5LCBpdCBpcyBhYm91dCB0aGUgc2FtZSBhZ2Ug YXMgR3RrKyAyLjYuCkhBVkVfR0NPTkY9bm8KaWYgdGVzdCAiJHtIQVZFX1gxMX0iID0gInll cyIgLW8gIiR7d2luZG93X3N5c3RlbX0iID0gInBndGsiICYmIHRlc3QgIiR7d2l0aF9nY29u Zn0iICE9ICJubyI7IHRoZW4KICAgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyhbR0NPTkZdLCBbZ2Nv bmYtMi4wID49IDIuMTNdKQogICBpZiB0ZXN0ICIkSEFWRV9HQ09ORiIgPSB5ZXM7IHRoZW4K ICAgICAgQUNfREVGSU5FKFtIQVZFX0dDT05GXSwgWzFdLCBbRGVmaW5lIHRvIDEgaWYgdXNp bmcgR0NvbmYuXSkKICAgICAgZG5sIE5ld2VyIEdDb25mIGRvZXNuJ3QgbGluayB3aXRoIGdf b2JqZWN0cywgc28gdGhpcyBpcyBub3QgZGVmaW5lZC4KICAgICAgU0VUVElOR1NfQ0ZMQUdT PSIkU0VUVElOR1NfQ0ZMQUdTICRHQ09ORl9DRkxBR1MiCiAgICAgIFNFVFRJTkdTX0xJQlM9 IiRTRVRUSU5HU19MSUJTICRHQ09ORl9MSUJTIgogICBmaQpmaQoKaWYgdGVzdCAiJEhBVkVf R1NFVFRJTkdTIiA9ICJ5ZXMiIHx8IHRlc3QgIiRIQVZFX0dDT05GIiA9ICJ5ZXMiOyB0aGVu CiAgICBFTUFDU19DSEVDS19NT0RVTEVTKFtHT0JKRUNUXSwgW2dvYmplY3QtMi4wID49IDIu MF0pCiAgICBpZiB0ZXN0ICIkSEFWRV9HT0JKRUNUIiA9ICJ5ZXMiOyB0aGVuCiAgICAgICBT RVRUSU5HU19DRkxBR1M9IiRTRVRUSU5HU19DRkxBR1MgJEdPQkpFQ1RfQ0ZMQUdTIgogICAg ICAgU0VUVElOR1NfTElCUz0iJFNFVFRJTkdTX0xJQlMgJEdPQkpFQ1RfTElCUyIKICAgIGZp CiAgICBTQVZFX0NGTEFHUz0iJENGTEFHUyIKICAgIFNBVkVfTElCUz0iJExJQlMiCiAgICBD RkxBR1M9IiRTRVRUSU5HU19DRkxBR1MgJENGTEFHUyIKICAgIExJQlM9IiRTRVRUSU5HU19M SUJTICRMSUJTIgogICAgQ0ZMQUdTPSIkU0FWRV9DRkxBR1MiCiAgICBMSUJTPSIkU0FWRV9M SUJTIgpmaQpBQ19TVUJTVChbU0VUVElOR1NfQ0ZMQUdTXSkKQUNfU1VCU1QoW1NFVFRJTkdT X0xJQlNdKQoKVVNFX1NUQVJUVVBfTk9USUZJQ0FUSU9OPW5vCmlmIHRlc3QgIiR7SEFWRV9H VEt9IiA9ICJ5ZXMiOyB0aGVuCiAgICBVU0VfU1RBUlRVUF9OT1RJRklDQVRJT049eWVzCmZp CkFDX1NVQlNUKFtVU0VfU1RBUlRVUF9OT1RJRklDQVRJT05dKQoKZG5sIFNFTGludXggaXMg YXZhaWxhYmxlIGZvciBHTlUvTGludXggb25seS4KSEFWRV9MSUJTRUxJTlVYPW5vCkxJQlNF TElOVVhfTElCUz0KaWYgdGVzdCAiJHt3aXRoX3NlbGludXh9IiA9ICJ5ZXMiOyB0aGVuCiAg IEFDX0NIRUNLX0xJQihbc2VsaW51eF0sIFtsZ2V0ZmlsZWNvbl0sCiAgICAgW0hBVkVfTElC U0VMSU5VWD15ZXNdLAogICAgIFtIQVZFX0xJQlNFTElOVVg9bm9dKQogICBpZiB0ZXN0ICIk SEFWRV9MSUJTRUxJTlVYIiA9IHllczsgdGhlbgogICAgICBBQ19ERUZJTkUoW0hBVkVfTElC U0VMSU5VWF0sIFsxXSwgW0RlZmluZSB0byAxIGlmIHVzaW5nIFNFTGludXguXSkKICAgICAg TElCU0VMSU5VWF9MSUJTPS1sc2VsaW51eAogICBmaQpmaQpBQ19TVUJTVChbTElCU0VMSU5V WF9MSUJTXSkKCkhBVkVfR05VVExTPW5vCmlmIHRlc3QgIiR7d2l0aF9nbnV0bHN9IiAhPSAi bm8iIDsgdGhlbgogIEVNQUNTX0NIRUNLX01PRFVMRVMoW0xJQkdOVVRMU10sIFtnbnV0bHMg Pj0gMi4xMi4yXSwKICAgIFtIQVZFX0dOVVRMUz15ZXNdLCBbSEFWRV9HTlVUTFM9bm9dKQog IGlmIHRlc3QgIiR7SEFWRV9HTlVUTFN9IiA9ICJ5ZXMiOyB0aGVuCiAgICBBQ19ERUZJTkUo W0hBVkVfR05VVExTXSwgWzFdLCBbRGVmaW5lIGlmIHVzaW5nIEdudVRMUy5dKQogIGZpCgog ICMgV2luZG93cyBsb2FkcyBHbnVUTFMgZHluYW1pY2FsbHkKICBpZiB0ZXN0ICIke29wc3lz fSIgPSAibWluZ3czMiI7IHRoZW4KICAgIExJQkdOVVRMU19MSUJTPQogIGZpCmZpCgpBQ19T VUJTVChbTElCR05VVExTX0xJQlNdKQpBQ19TVUJTVChbTElCR05VVExTX0NGTEFHU10pCgpI QVZFX0xJQlNZU1RFTUQ9bm8KaWYgdGVzdCAiJHt3aXRoX2xpYnN5c3RlbWR9IiA9ICJ5ZXMi IDsgdGhlbgogIGRubCBUaGlzIGNvZGUgaGFzIGJlZW4gdGVzdGVkIHdpdGggbGlic3lzdGVt ZCAyMjIgYW5kIGxhdGVyLgogIGRubCBGSVhNRTogRmluZCB0aGUgZWFybGllc3QgdmVyc2lv biBudW1iZXIgZm9yIHdoaWNoIEVtYWNzIHNob3VsZCB3b3JrLAogIGRubCBhbmQgY2hhbmdl ICcyMjInIHRvIHRoYXQgbnVtYmVyLgogIEVNQUNTX0NIRUNLX01PRFVMRVMoW0xJQlNZU1RF TURdLCBbbGlic3lzdGVtZCA+PSAyMjJdLAogICAgW0hBVkVfTElCU1lTVEVNRD15ZXNdLCBb SEFWRV9MSUJTWVNURU1EPW5vXSkKICBpZiB0ZXN0ICIke0hBVkVfTElCU1lTVEVNRH0iID0g InllcyI7IHRoZW4KICAgIEFDX0RFRklORShbSEFWRV9MSUJTWVNURU1EXSwgWzFdLCBbRGVm aW5lIGlmIHVzaW5nIGxpYnN5c3RlbWQuXSkKICBmaQpmaQoKQUNfU1VCU1QoW0xJQlNZU1RF TURfTElCU10pCkFDX1NVQlNUKFtMSUJTWVNURU1EX0NGTEFHU10pCgpIQVZFX0pTT049bm8K SlNPTl9PQko9CgppZiB0ZXN0ICIke3dpdGhfanNvbn0iICE9IG5vOyB0aGVuCiAgRU1BQ1Nf Q0hFQ0tfTU9EVUxFUyhbSlNPTl0sIFtqYW5zc29uID49IDIuN10sCiAgICBbSEFWRV9KU09O PXllc10sIFtIQVZFX0pTT049bm9dKQogIGlmIHRlc3QgIiR7SEFWRV9KU09OfSIgPSB5ZXM7 IHRoZW4KICAgIEFDX0RFRklORShbSEFWRV9KU09OXSwgWzFdLCBbRGVmaW5lIGlmIHVzaW5n IEphbnNzb24uXSkKICAgIEpTT05fT0JKPWpzb24ubwogIGZpCgogICMgV2luZG93cyBsb2Fk cyBsaWJqYW5zc29uIGR5bmFtaWNhbGx5CiAgaWYgdGVzdCAiJHtvcHN5c30iID0gIm1pbmd3 MzIiOyB0aGVuCiAgICBKU09OX0xJQlM9CiAgZmkKZmkKCkFDX1NVQlNUKFtKU09OX0xJQlNd KQpBQ19TVUJTVChbSlNPTl9DRkxBR1NdKQpBQ19TVUJTVChbSlNPTl9PQkpdKQoKSEFWRV9U UkVFX1NJVFRFUj1ubwpUUkVFX1NJVFRFUl9PQko9Ck5FRURfRFlOTElCPW5vCgppZiB0ZXN0 ICIke3dpdGhfdHJlZV9zaXR0ZXJ9IiAhPSAibm8iOyB0aGVuCiAgIGRubCBUcmVlLXNpdHRl ciAwLjIwLjIgYWRkZWQgc3VwcG9ydCB0byBjaGFuZ2UgdGhlIG1hbGxvYyBpdCB1c2VzCiAg IGRubCBhdCBydW50aW1lLCB3ZSBuZWVkIHRoYXQgZmVhdHVyZS4gIEhvd2V2ZXIsIHRyZWUt c2l0dGVyJ3MKICAgZG5sIE1ha2VmaWxlIGhhcyBwcm9ibGVtcywgdW50aWwgdGhhdCdzIGZp eGVkLCBhbGwgdHJlZS1zaXR0ZXIKICAgZG5sIGxpYnJhcmllcyBkaXN0cmlidXRlZCBhcmUg dmVyc2lvbmVkIDAuNi4zLiAgV2UgdHJ5IHRvCiAgIGRubCBhY2NlcHQgYSB0cmVlLXNpdHRl ciBsaWJyYXJ5IHRoYXQgaGFzIGluY29ycmVjdCB2ZXJzaW9uIGFzIGxvbmcKICAgZG5sIGFz IGl0IHN1cHBvcnRzIGNoYW5naW5nIG1hbGxvYy4KICBFTUFDU19DSEVDS19NT0RVTEVTKFtU UkVFX1NJVFRFUl0sIFt0cmVlLXNpdHRlciA+PSAwLjIwLjJdLAogICAgW0hBVkVfVFJFRV9T SVRURVI9eWVzXSwgW0hBVkVfVFJFRV9TSVRURVI9bm9dKQogIGlmIHRlc3QgIiR7SEFWRV9U UkVFX1NJVFRFUn0iID0geWVzOyB0aGVuCiAgICBBQ19ERUZJTkUoSEFWRV9UUkVFX1NJVFRF UiwgMSwgW0RlZmluZSBpZiB1c2luZyB0cmVlLXNpdHRlci5dKQogIGVsc2UKICAgIEVNQUNT X0NIRUNLX01PRFVMRVMoW1RSRUVfU0lUVEVSXSwgW3RyZWUtc2l0dGVyID49IDAuNi4zXSwK ICAgICAgW0hBVkVfVFJFRV9TSVRURVI9eWVzXSwgW0hBVkVfVFJFRV9TSVRURVI9bm9dKQog ICAgaWYgdGVzdCAiJHtIQVZFX1RSRUVfU0lUVEVSfSIgPSB5ZXM7IHRoZW4KICAgICAgT0xE X0NGTEFHUz0kQ0ZMQUdTCiAgICAgIE9MRF9MSUJTPSRMSUJTCiAgICAgIENGTEFHUz0iJENG TEFHUyAkVFJFRV9TSVRURVJfQ0ZMQUdTIgogICAgICBMSUJTPSIkVFJFRV9TSVRURVJfTElC UyAkTElCUyIKICAgICAgQUNfQ0hFQ0tfRlVOQ1MoW3RzX3NldF9hbGxvY2F0b3JdKQogICAg ICBDRkxBR1M9JE9MRF9DRkxBR1MKICAgICAgTElCUz0kT0xEX0xJQlMKICAgICAgaWYgdGVz dCAiJGFjX2N2X2Z1bmNfdHNfc2V0X2FsbG9jYXRvciIgPSB5ZXM7IHRoZW4KICAgICAgICBB Q19ERUZJTkUoSEFWRV9UUkVFX1NJVFRFUiwgMSwgW0RlZmluZSBpZiB1c2luZyB0cmVlLXNp dHRlci5dKQoJTkVFRF9EWU5MSUI9eWVzCiAgICAgIGVsc2UKICAgICAgICBBQ19NU0dfRVJS T1IoW1RyZWUtc2l0dGVyIGxpYnJhcnkgZXhpc3RzIGJ1dCBpdHMgdmVyc2lvbiBpcyB0b28g b2xkXSk7CiAgICAgICAgVFJFRV9TSVRURVJfQ0ZMQUdTPQogICAgICAgIFRSRUVfU0lUVEVS X0xJQlM9CiAgICAgIGZpCiAgICBmaQogIGZpCgogICMgV2luZG93cyBsb2FkcyB0cmVlLXNp dHRlciBkeW5hbWljYWxseQogIGlmIHRlc3QgIiR7b3BzeXN9IiA9ICJtaW5ndzMyIjsgdGhl bgogICAgVFJFRV9TSVRURVJfTElCUz0KICBmaQpmaQoKQUNfU1VCU1QoVFJFRV9TSVRURVJf TElCUykKQUNfU1VCU1QoVFJFRV9TSVRURVJfQ0ZMQUdTKQoKTk9USUZZX09CSj0KTk9USUZZ X1NVTU1BUlk9bm8KCmRubCBNUyBXaW5kb3dzIG5hdGl2ZSBmaWxlIG1vbml0b3IgaXMgYXZh aWxhYmxlIGZvciBtaW5ndzMyIG9ubHkuCmNhc2UgJHdpdGhfZmlsZV9ub3RpZmljYXRpb24s JG9wc3lzIGluCiAgdzMyLGN5Z3dpbikKICAgIEFDX01TR19FUlJPUihbJy0td2l0aC1maWxl LW5vdGlmaWNhdGlvbj13MzInIHdhcyBzcGVjaWZpZWQsIGJ1dAogICAgdGhpcyBpcyBvbmx5 IHN1cHBvcnRlZCBvbiBNUy1XaW5kb3dzIG5hdGl2ZSBhbmQgTWluR1czMiBidWlsZHMuCiAg ICBDb25zaWRlciB1c2luZyBnZmlsZSBpbnN0ZWFkLl0pCiAgICA7OwogIHczMiwqIHwgeWVz LG1pbmd3MzIpCiAgICBBQ19DSEVDS19IRUFERVIoW3dpbmRvd3MuaF0pCiAgICBpZiB0ZXN0 ICIkYWNfY3ZfaGVhZGVyX3dpbmRvd3NfaCIgPSB5ZXMgOyB0aGVuCiAgICAgICBBQ19ERUZJ TkUoW0hBVkVfVzMyTk9USUZZXSwgWzFdLCBbRGVmaW5lIHRvIDEgdG8gdXNlIHczMm5vdGlm eS5dKQogICAgICAgTk9USUZZX09CSj13MzJub3RpZnkubwogICAgICAgTk9USUZZX1NVTU1B Ulk9InllcyAodzMyKSIKICAgIGZpIDs7CmVzYWMKCmRubCBpbm90aWZ5IGlzIGF2YWlsYWJs ZSBvbmx5IG9uIEdOVS9MaW51eC4KY2FzZSAkd2l0aF9maWxlX25vdGlmaWNhdGlvbiwkTk9U SUZZX09CSiBpbgogIGlub3RpZnksIHwgeWVzLCkKICAgIEFDX0NIRUNLX0hFQURFUihbc3lz L2lub3RpZnkuaF0pCiAgICBpZiB0ZXN0ICIkYWNfY3ZfaGVhZGVyX3N5c19pbm90aWZ5X2gi ID0geWVzIDsgdGhlbgoJQUNfQ0hFQ0tfRlVOQyhbaW5vdGlmeV9pbml0MV0pCglpZiB0ZXN0 ICIkYWNfY3ZfZnVuY19pbm90aWZ5X2luaXQxIiA9IHllczsgdGhlbgoJICBBQ19ERUZJTkUo W0hBVkVfSU5PVElGWV0sIFsxXSwgW0RlZmluZSB0byAxIHRvIHVzZSBpbm90aWZ5Ll0pCgkg IE5PVElGWV9PQko9aW5vdGlmeS5vCgkgIE5PVElGWV9TVU1NQVJZPSJ5ZXMgLWxnbGliYyAo aW5vdGlmeSkiCiAgICAgICBmaQogICAgZmkgOzsKZXNhYwoKZG5sIGtxdWV1ZSBpcyBhdmFp bGFibGUgb24gQlNELWxpa2Ugc3lzdGVtcy4KY2FzZSAkd2l0aF9maWxlX25vdGlmaWNhdGlv biwkTk9USUZZX09CSiBpbgogIGtxdWV1ZSwqIHwgeWVzLCkKICAgIEVNQUNTX0NIRUNLX01P RFVMRVMoW0tRVUVVRV0sIFtsaWJrcXVldWVdKQogICAgaWYgdGVzdCAiJEhBVkVfS1FVRVVF IiA9ICJ5ZXMiOyB0aGVuCiAgICAgICBBQ19ERUZJTkUoW0hBVkVfS1FVRVVFXSwgWzFdLCBb RGVmaW5lIHRvIDEgdG8gdXNlIGtxdWV1ZS5dKQogICAgICAgQ1BQRkxBR1M9IiRDUFBGTEFH UyAtSS91c3IvaW5jbHVkZS9rcXVldWUiCiAgICAgICBOT1RJRllfQ0ZMQUdTPSRLUVVFVUVf Q0ZMQUdTCiAgICAgICBOT1RJRllfTElCUz0kS1FVRVVFX0xJQlMKICAgICAgIE5PVElGWV9P Qko9a3F1ZXVlLm8KICAgICAgIE5PVElGWV9TVU1NQVJZPSJ5ZXMgLWxrcXVldWUiCiAgICBl bHNlCiAgICAgICBBQ19TRUFSQ0hfTElCUyhba3F1ZXVlXSwgW10pCiAgICAgICBpZiB0ZXN0 ICIkYWNfY3Zfc2VhcmNoX2txdWV1ZSIgIT0gbm87IHRoZW4KCSBBQ19ERUZJTkUoW0hBVkVf S1FVRVVFXSwgWzFdLCBbRGVmaW5lIHRvIDEgdG8gdXNlIGtxdWV1ZS5dKQoJIE5PVElGWV9P Qko9a3F1ZXVlLm8KCSBOT1RJRllfU1VNTUFSWT0ieWVzIChrcXVldWUpIgogICAgICAgZmkK ICAgIGZpIDs7CmVzYWMKCmRubCBnX2ZpbGVfbW9uaXRvciBleGlzdHMgc2luY2UgZ2xpYiAy LjE4LiAgR19GSUxFX01PTklUT1JfRVZFTlRfTU9WRUQKZG5sIGhhcyBiZWVuIGFkZGVkIGlu IGdsaWIgMi4yNC4gIEl0IGhhcyBiZWVuIHRlc3RlZCB1bmRlcgpkbmwgR05VL0xpbnV4IG9u bHkuCmNhc2UgJHdpdGhfZmlsZV9ub3RpZmljYXRpb24sJE5PVElGWV9PQkogaW4KICBnZmls ZSwqIHwgeWVzLCkKICAgIGlmIHRlc3QgIiR7SEFWRV9OU30iID0geWVzOyB0aGVuCiAgICAg ICBBQ19NU0dfRVJST1IoWyctLXdpdGgtZmlsZS1ub3RpZmljYXRpb249Z2ZpbGUnIGlzIG5v dCBzdXBwb3J0ZWQgaW4gTmV4dFN0ZXAgYnVpbGRzLgpDb25zaWRlciBrcXVldWUgaW5zdGVh ZC5dKQogICAgZWxzZQogICAgICAgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyhbR0ZJTEVOT1RJRlld LCBbZ2lvLTIuMCA+PSAyLjI0XSkKICAgICAgIGlmIHRlc3QgIiRIQVZFX0dGSUxFTk9USUZZ IiA9ICJ5ZXMiOyB0aGVuCgkgIEFDX0RFRklORShbSEFWRV9HRklMRU5PVElGWV0sIFsxXSwg W0RlZmluZSB0byAxIGlmIHVzaW5nIEdGaWxlLl0pCgkgIE5PVElGWV9DRkxBR1M9JEdGSUxF Tk9USUZZX0NGTEFHUwoJICBOT1RJRllfTElCUz0kR0ZJTEVOT1RJRllfTElCUwoJICBOT1RJ RllfT0JKPWdmaWxlbm90aWZ5Lm8KCSAgTk9USUZZX1NVTU1BUlk9InllcyAtbGdpbyAoZ2Zp bGUpIgogICAgICAgZmkKICAgIGZpIDs7CmVzYWMKCmNhc2UgJHdpdGhfZmlsZV9ub3RpZmlj YXRpb24sJE5PVElGWV9PQkogaW4KICB5ZXMsKiB8IG5vLCogfCAqLD8qKSA7OwogICopIEFD X01TR19FUlJPUihbRmlsZSBub3RpZmljYXRpb24gJyR3aXRoX2ZpbGVfbm90aWZpY2F0aW9u JyByZXF1ZXN0ZWQgYnV0IHJlcXVpcmVtZW50cyBub3QgZm91bmQuXSkgOzsKZXNhYwoKaWYg dGVzdCAtbiAiJE5PVElGWV9PQkoiOyB0aGVuCiAgIEFDX0RFRklORShbVVNFX0ZJTEVfTk9U SUZZXSwgWzFdLAogICAgIFtEZWZpbmUgdG8gMSBpZiB1c2luZyBmaWxlIG5vdGlmaWNhdGlv bnMuXSkKZmkKQUNfU1VCU1QoW05PVElGWV9DRkxBR1NdKQpBQ19TVUJTVChbTk9USUZZX0xJ QlNdKQpBQ19TVUJTVChbTk9USUZZX09CSl0pCgpkbmwgRG8gbm90IHB1dCB3aGl0ZXNwYWNl IGJlZm9yZSB0aGUgI2luY2x1ZGUgc3RhdGVtZW50cyBiZWxvdy4KZG5sIE9sZGVyIGNvbXBp bGVycyAoZWcgc3Vub3M0IGNjKSBjaG9rZSBvbiBpdC4KSEFWRV9YQVczRD1ubwpMVUNJRF9M SUJXPQppZiB0ZXN0IHgiJHtVU0VfWF9UT09MS0lUfSIgPSB4bWF5YmUgfHwgdGVzdCB4IiR7 VVNFX1hfVE9PTEtJVH0iID0geExVQ0lEOyB0aGVuCiAgaWYgdGVzdCAiJHdpdGhfeGF3M2Qi ICE9IG5vOyB0aGVuCiAgICBBQ19DQUNIRV9WQUwoW2VtYWNzX2N2X3hhdzNkXSwKICAgIFtB Q19MSU5LX0lGRUxTRShbQUNfTEFOR19QUk9HUkFNKFtbCiNpbmNsdWRlIDxYMTEvSW50cmlu c2ljLmg+CiNpbmNsdWRlIDxYMTEvWGF3M2QvU2ltcGxlLmg+XV0sCiAgICAgIFtbXV0pXSwK ICAgICAgW0FDX0NIRUNLX0xJQihbWGF3M2RdLCBbWGF3U2Nyb2xsYmFyU2V0VGh1bWJdLAoJ CSAgICBbZW1hY3NfY3ZfeGF3M2Q9eWVzXSwKCQkgICAgW2VtYWNzX2N2X3hhdzNkPW5vXSld LAogICAgICBbZW1hY3NfY3ZfeGF3M2Q9bm9dKV0pCiAgZWxzZQogICAgZW1hY3NfY3ZfeGF3 M2Q9bm8KICBmaQogIGlmIHRlc3QgJGVtYWNzX2N2X3hhdzNkID0geWVzOyB0aGVuCiAgICBB Q19NU0dfQ0hFQ0tJTkcoW2ZvciB4YXczZF0pCiAgICBBQ19NU0dfUkVTVUxUKFt5ZXM7IHVz aW5nIEx1Y2lkIHRvb2xraXRdKQogICAgVVNFX1hfVE9PTEtJVD1MVUNJRAogICAgSEFWRV9Y QVczRD15ZXMKICAgIExVQ0lEX0xJQlc9LWxYYXczZAogICAgQUNfREVGSU5FKFtIQVZFX1hB VzNEXSwgWzFdLAogICAgICAgICAgICAgIFtEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUg WGF3M2QgbGlicmFyeSAoLWxYYXczZCkuXSkKICBlbHNlCiAgICBBQ19NU0dfQ0hFQ0tJTkco W2ZvciB4YXczZF0pCiAgICBBQ19NU0dfUkVTVUxUKFtub10pCiAgICBBQ19NU0dfQ0hFQ0tJ TkcoW2ZvciBsaWJYYXddKQogICAgQUNfQ0FDSEVfVkFMKFtlbWFjc19jdl94YXddLAogICAg W0FDX0xJTktfSUZFTFNFKFtBQ19MQU5HX1BST0dSQU0oW1sKI2luY2x1ZGUgPFgxMS9JbnRy aW5zaWMuaD4KI2luY2x1ZGUgPFgxMS9YYXcvU2ltcGxlLmg+XV0sCiAgICAgIFtbXV0pXSwK ICAgICAgW2VtYWNzX2N2X3hhdz15ZXNdLAogICAgICBbZW1hY3NfY3ZfeGF3PW5vXSldKQog ICAgaWYgdGVzdCAkZW1hY3NfY3ZfeGF3ID0geWVzOyB0aGVuCiAgICAgIEFDX01TR19SRVNV TFQoW3llczsgdXNpbmcgTHVjaWQgdG9vbGtpdF0pCiAgICAgIFVTRV9YX1RPT0xLSVQ9TFVD SUQKICAgICAgTFVDSURfTElCVz0tbFhhdwogICAgZWxpZiB0ZXN0IHgiJHtVU0VfWF9UT09M S0lUfSIgPSB4TFVDSUQ7IHRoZW4KICAgICAgQUNfTVNHX0VSUk9SKFtMdWNpZCB0b29sa2l0 IHJlcXVpcmVzIFgxMS9YYXcgaW5jbHVkZSBmaWxlc10pCiAgICBlbHNlCiAgICAgIEFDX01T R19FUlJPUihbTm8gWCB0b29sa2l0IGNvdWxkIGJlIGZvdW5kLgpJZiB5b3UgYXJlIHN1cmUg eW91IHdhbnQgRW1hY3MgY29tcGlsZWQgd2l0aG91dCBhbiBYIHRvb2xraXQsIHBhc3MKICAt LXdpdGgteC10b29sa2l0PW5vCnRvIGNvbmZpZ3VyZS4gIE90aGVyd2lzZSwgaW5zdGFsbCB0 aGUgZGV2ZWxvcG1lbnQgbGlicmFyaWVzIGZvciB0aGUgdG9vbGtpdAp0aGF0IHlvdSB3YW50 IHRvIHVzZSAoZS5nLiBHdGsrKSBhbmQgcmUtcnVuIGNvbmZpZ3VyZS5dKQogICAgZmkKICBm aQpmaQoKWF9UT09MS0lUX1RZUEU9JFVTRV9YX1RPT0xLSVQKCkxJQlhUUjY9CkxJQlhNVT0K aWYgdGVzdCAiJHtVU0VfWF9UT09MS0lUfSIgIT0gIm5vbmUiOyB0aGVuCiAgQUNfTVNHX0NI RUNLSU5HKFtYMTEgdG9vbGtpdCB2ZXJzaW9uXSkKICBBQ19DQUNIRV9WQUwoW2VtYWNzX2N2 X3gxMV90b29sa2l0X3ZlcnNpb25fNl0sCiAgW0FDX0xJTktfSUZFTFNFKFtBQ19MQU5HX1BS T0dSQU0oW1sjaW5jbHVkZSA8WDExL0ludHJpbnNpYy5oPl1dLApbWyNpZiBYdFNwZWNpZmlj YXRpb25SZWxlYXNlIDwgNgpmYWlsOwojZW5kaWYKXV0pXSwgW2VtYWNzX2N2X3gxMV90b29s a2l0X3ZlcnNpb25fNj15ZXNdLAogICAgICBbZW1hY3NfY3ZfeDExX3Rvb2xraXRfdmVyc2lv bl82PW5vXSldKQogIEhBVkVfWDExWFRSNj0kZW1hY3NfY3ZfeDExX3Rvb2xraXRfdmVyc2lv bl82CiAgaWYgdGVzdCAkZW1hY3NfY3ZfeDExX3Rvb2xraXRfdmVyc2lvbl82ID0geWVzOyB0 aGVuCiAgICBBQ19NU0dfUkVTVUxUKFs2IG9yIG5ld2VyXSkKICAgIEFDX0RFRklORShbSEFW RV9YMTFYVFI2XSwgWzFdLAoJICAgICAgW0RlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBY MTFSNiBvciBuZXdlciB2ZXJzaW9uIG9mIFh0Ll0pCiAgICBMSUJYVFI2PSItbFNNIC1sSUNF IgogICAgY2FzZSAiJG9wc3lzIiBpbgogICAgICAjIyBVc2UgbGlidy5hIGFsb25nIHdpdGgg WDExUjYgWHQuCiAgICAgIHVuaXh3YXJlKSBMSUJYVFI2PSIkTElCWFRSNiAtbHciIDs7CiAg ICBlc2FjCiAgZWxzZQogICAgQUNfTVNHX1JFU1VMVChbYmVmb3JlIDZdKQogIGZpCgpkbmwg SWYgdXNpbmcgdG9vbGtpdCwgY2hlY2sgd2hldGhlciBsaWJYbXUuYSBleGlzdHMuCmRubCB0 cmFubGVAaW50ZWxsaWNvcnAuY29tIHNheXMgbGliWG11LmEgY2FuIG5lZWQgWHRNYWxsb2Mg aW4gbGliWHQuYSB0byBsaW5rLgogIE9MRExJQlM9IiRMSUJTIgogIGlmIHRlc3QgeCRIQVZF X1gxMVhUUjYgPSB4eWVzOyB0aGVuCiAgICBPVEhFUkxJQlM9Jy1sWHQgLWxTTSAtbElDRScK ICBlbHNlCiAgICBPVEhFUkxJQlM9Jy1sWHQnCiAgZmkKICBBQ19TRUFSQ0hfTElCUyhbWG11 Q29udmVydFN0YW5kYXJkU2VsZWN0aW9uXSwgW1htdV0sIFtdLCBbXSwgWyRPVEhFUkxJQlNd KQogIGlmIHRlc3QgIlgkTElCUyIgIT0gIlgkT0xETElCUyI7IHRoZW4KICAgIExJQlhNVT0k YWNfY3Zfc2VhcmNoX1htdUNvbnZlcnRTdGFuZGFyZFNlbGVjdGlvbgogIGZpCiAgTElCUz0k T0xETElCUwogIGRubCBhY19jdl9zZWFyY2hfWG11Q29udmVydFN0YW5kYXJkU2VsZWN0aW9u IGlzIGFsc28gcmVmZXJlbmNlZCBiZWxvdy4KZmkKQUNfU1VCU1QoW0xJQlhUUjZdKQpBQ19T VUJTVChbTElCWE1VXSkKCkxJQlhQPQppZiB0ZXN0ICIke1VTRV9YX1RPT0xLSVR9IiA9ICJN T1RJRiI7IHRoZW4KICAjIE9wZW5Nb3RpZiBtYXkgYmUgaW5zdGFsbGVkIGluIHN1Y2ggYSB3 YXkgb24gc29tZSBHTlUvTGludXggc3lzdGVtcy4KICBpZiB0ZXN0IC1kIC91c3IvaW5jbHVk ZS9vcGVubW90aWY7IHRoZW4KICAgIENQUEZMQUdTPSItSS91c3IvaW5jbHVkZS9vcGVubW90 aWYgJENQUEZMQUdTIgogICAgZW1hY3NfY3Zfb3Blbm1vdGlmPXllcwogICAgY2FzZSAiJGNh bm9uaWNhbCIgaW4KICAgICAgeDg2XzY0LSotbGludXgtZ251KiB8IHBvd2VycGM2NC0qLWxp bnV4LWdudSogfCBzcGFyYzY0LSotbGludXgtZ251KikKICAgICAgdGVzdCAtZCAvdXNyL2xp YjY0L29wZW5tb3RpZiAmJiBMREZMQUdTPSItTC91c3IvbGliNjQvb3Blbm1vdGlmICRMREZM QUdTIgogICAgICA7OwogICAgICAqKQogICAgICB0ZXN0IC1kIC91c3IvbGliL29wZW5tb3Rp ZiAmJiBMREZMQUdTPSItTC91c3IvbGliL29wZW5tb3RpZiAkTERGTEFHUyIKICAgIGVzYWMK ICBlbHNlCiAgICBlbWFjc19jdl9vcGVubW90aWY9bm8KICBmaQogIEFDX0NBQ0hFX0NIRUNL KFtmb3IgKE9wZW4pTW90aWYgdmVyc2lvbiAyLjFdLCBbZW1hY3NfY3ZfbW90aWZfdmVyc2lv bl8yXzFdLAogIFtBQ19DT01QSUxFX0lGRUxTRShbQUNfTEFOR19QUk9HUkFNKFtbI2luY2x1 ZGUgPFhtL1htLmg+XV0sCiAgICBbWyNpZiBYbVZFUlNJT04gPiAyIHx8IChYbVZFUlNJT04g PT0gMiAmJiBYbVJFVklTSU9OID49IDEpCmludCB4ID0gNTsKI2Vsc2UKTW90aWYgdmVyc2lv biBwcmlvciB0byAyLjEuCiNlbmRpZl1dKV0sCiAgICAgW2VtYWNzX2N2X21vdGlmX3ZlcnNp b25fMl8xPXllc10sCiAgICAgW2VtYWNzX2N2X21vdGlmX3ZlcnNpb25fMl8xPW5vXSldKQog IGlmIHRlc3QgJGVtYWNzX2N2X21vdGlmX3ZlcnNpb25fMl8xID0geWVzOyB0aGVuCiAgICBB Q19DSEVDS19MSUIoW1hwXSwgW1hwQ3JlYXRlQ29udGV4dF0sIFtMSUJYUD0tbFhwXSkKICAg IGlmIHRlc3QgeCRlbWFjc19jdl9vcGVubW90aWYgPSB4eWVzOyB0aGVuCiAgICAgIFJFQUxf Q1BQRkxBR1M9Ii1JL3Vzci9pbmNsdWRlL29wZW5tb3RpZiAkUkVBTF9DUFBGTEFHUyIKICAg IGZpCiAgZWxzZQogICAgIyBXZSBwdXQgdGhpcyBpbiBDRkxBR1MgdGVtcG9yYXJpbHkgdG8g cHJlY2VkZSBvdGhlciAtSSBvcHRpb25zCiAgICAjIHRoYXQgbWlnaHQgYmUgaW4gQ0ZMQUdT IHRlbXBvcmFyaWx5LgogICAgIyBXZSBwdXQgdGhpcyBpbiBDUFBGTEFHUyB3aGVyZSBpdCBw cmVjZWRlcyB0aGUgb3RoZXIgLUkgb3B0aW9ucy4KICAgIE9MRF9DUFBGTEFHUz0kQ1BQRkxB R1MKICAgIE9MRF9DRkxBR1M9JENGTEFHUwogICAgQ1BQRkxBR1M9Ii1JL3Vzci9YMTFSNi9M ZXNzVGlmL01vdGlmMS4yL2luY2x1ZGUgJENQUEZMQUdTIgogICAgQ0ZMQUdTPSItSS91c3Iv WDExUjYvTGVzc1RpZi9Nb3RpZjEuMi9pbmNsdWRlICRDRkxBR1MiCiAgICBBQ19DQUNIRV9D SEVDSyhbZm9yIExlc3NUaWYgd2hlcmUgc29tZSBzeXN0ZW1zIHB1dCBpdF0sIFtlbWFjc19j dl9sZXNzdGlmXSwKICAgICAgW0FDX0NPTVBJTEVfSUZFTFNFKAoJIFtBQ19MQU5HX1BST0dS QU0oCgkgICAgW1sjaW5jbHVkZSA8L3Vzci9YMTFSNi9MZXNzVGlmL01vdGlmMS4yL2luY2x1 ZGUvWG0vWG0uaD4KCSAgICBdXSwKCSAgICBbW2ludCB4ID0gNTtdXSldLAoJIFtlbWFjc19j dl9sZXNzdGlmPXllc10sCgkgW2VtYWNzX2N2X2xlc3N0aWY9bm9dKV0pCiAgICBpZiB0ZXN0 ICRlbWFjc19jdl9sZXNzdGlmID0geWVzOyB0aGVuCiAgICAgICMgTWFrZSBzdXJlIHRoaXMg LUkgb3B0aW9uIHJlbWFpbnMgaW4gQ1BQRkxBR1MgYWZ0ZXIgaXQgaXMgc2V0CiAgICAgICMg YmFjayB0byBSRUFMX0NQUEZMQUdTLgogICAgICAjIFRoZXJlIGlzIG5vIG5lZWQgdG8gY2hh bmdlIFJFQUxfQ0ZMQUdTLCBiZWNhdXNlIFJFQUxfQ0ZMQUdTIGRvZXMgbm90CiAgICAgICMg aGF2ZSB0aG9zZSBvdGhlciAtSSBvcHRpb25zIGFueXdheS4gIFVsdGltYXRlbHksIGhhdmlu ZyB0aGlzCiAgICAgICMgZGlyZWN0b3J5IHVsdGltYXRlbHkgaW4gQ1BQRkxBR1Mgd2lsbCBi ZSBlbm91Z2guCiAgICAgIFJFQUxfQ1BQRkxBR1M9Ii1JL3Vzci9YMTFSNi9MZXNzVGlmL01v dGlmMS4yL2luY2x1ZGUgJFJFQUxfQ1BQRkxBR1MiCiAgICAgIExERkxBR1M9Ii1ML3Vzci9Y MTFSNi9MZXNzVGlmL01vdGlmMS4yL2xpYiAkTERGTEFHUyIKICAgIGVsc2UKICAgICAgQ0ZM QUdTPSRPTERfQ0ZMQUdTCiAgICAgIENQUEZMQUdTPSRPTERfQ1BQRkxBR1MKICAgIGZpCiAg ZmkKICBBQ19DSEVDS19IRUFERVIoW1htL0J1bGxldGluQi5oXSwgW10sCiAgICBbQUNfTVNH X0VSUk9SKFtNb3RpZiB0b29sa2l0IHJlcXVlc3RlZCBidXQgcmVxdWlyZW1lbnRzIG5vdCBm b3VuZC5dKV0pCmZpCgpkbmwgVXNlIHRvb2xraXQgc2Nyb2xsIGJhcnMgaWYgY29uZmlndXJl ZCBmb3IgR1RLIG9yIFggdG9vbGtpdCBhbmQgZWl0aGVyCmRubCB1c2luZyBNb3RpZiBvciBY YXczZCBpcyBhdmFpbGFibGUsIGFuZCB1bmxlc3MKZG5sIC0td2l0aC10b29sa2l0LXNjcm9s bC1iYXJzPW5vIHdhcyBzcGVjaWZpZWQuCgpBSF9URU1QTEFURShbVVNFX1RPT0xLSVRfU0NS T0xMX0JBUlNdLAoJICAgIFtEZWZpbmUgdG8gMSBpZiB3ZSBzaG91bGQgdXNlIHRvb2xraXQg c2Nyb2xsIGJhcnMuXSlkbmwKVVNFX1RPT0xLSVRfU0NST0xMX0JBUlM9bm8KaWYgdGVzdCAi JHt3aXRoX3Rvb2xraXRfc2Nyb2xsX2JhcnN9IiAhPSAibm8iOyB0aGVuCiAgaWYgdGVzdCAi JHtVU0VfWF9UT09MS0lUfSIgIT0gIm5vbmUiOyB0aGVuCiAgICBpZiB0ZXN0ICIke1VTRV9Y X1RPT0xLSVR9IiA9ICJNT1RJRiI7IHRoZW4KICAgICAgQUNfREVGSU5FKFtVU0VfVE9PTEtJ VF9TQ1JPTExfQkFSU10pCiAgICAgIEhBVkVfWEFXM0Q9bm8KICAgICAgVVNFX1RPT0xLSVRf U0NST0xMX0JBUlM9eWVzCiAgICBlbGlmIHRlc3QgIiR7SEFWRV9YQVczRH0iID0gInllcyIg fHwgdGVzdCAiJHtVU0VfWF9UT09MS0lUfSIgPSAiTFVDSUQiOyB0aGVuCiAgICAgIEFDX0RF RklORShbVVNFX1RPT0xLSVRfU0NST0xMX0JBUlNdKQogICAgICBVU0VfVE9PTEtJVF9TQ1JP TExfQkFSUz15ZXMKICAgIGZpCiAgZWxpZiB0ZXN0ICIke0hBVkVfR1RLfSIgPSAieWVzIjsg dGhlbgogICAgQUNfREVGSU5FKFtVU0VfVE9PTEtJVF9TQ1JPTExfQkFSU10pCiAgICBVU0Vf VE9PTEtJVF9TQ1JPTExfQkFSUz15ZXMKICBlbGlmIHRlc3QgIiR7SEFWRV9OU30iID0gInll cyI7IHRoZW4KICAgIEFDX0RFRklORShbVVNFX1RPT0xLSVRfU0NST0xMX0JBUlNdKQogICAg VVNFX1RPT0xLSVRfU0NST0xMX0JBUlM9eWVzCiAgZWxpZiB0ZXN0ICIke0hBVkVfVzMyfSIg PSAieWVzIjsgdGhlbgogICAgQUNfREVGSU5FKFtVU0VfVE9PTEtJVF9TQ1JPTExfQkFSU10p CiAgICBVU0VfVE9PTEtJVF9TQ1JPTExfQkFSUz15ZXMKICBlbGlmIHRlc3QgIiR7SEFWRV9C RV9BUFB9IiA9ICJ5ZXMiOyB0aGVuCiAgICBBQ19ERUZJTkUoW1VTRV9UT09MS0lUX1NDUk9M TF9CQVJTXSkKICAgIFVTRV9UT09MS0lUX1NDUk9MTF9CQVJTPXllcwogIGZpCmVsaWYgdGVz dCAiJHt3aW5kb3dfc3lzdGVtfSIgIT0gIngxMSIgJiYgdGVzdCAiJHt3aW5kb3dfc3lzdGVt fSIgIT0gIm5vbmUiOyB0aGVuCiAgQUNfTVNHX0VSUk9SKFtOb24tdG9vbGtpdCBzY3JvbGwg YmFycyBhcmUgbm90IGltcGxlbWVudGVkIGZvciB5b3VyIHN5c3RlbV0pCmZpCgpkbmwgU2Vl IGlmIFhJTSBpcyBhdmFpbGFibGUuCkFDX0NPTVBJTEVfSUZFTFNFKFtBQ19MQU5HX1BST0dS QU0oW1sKCSAgI2luY2x1ZGUgPFgxMS9YbGliLmg+CgkgICNpbmNsdWRlIDxYMTEvWHJlc291 cmNlLmg+XV0sCgkgW1tYSU1Qcm9jICBjYWxsYmFjaztdXSldLAoJIFtIQVZFX1hJTT15ZXMK CSBBQ19ERUZJTkUoW0hBVkVfWElNXSwgWzFdLCBbRGVmaW5lIHRvIDEgaWYgWElNIGlzIGF2 YWlsYWJsZV0pXSwKCSBbSEFWRV9YSU09bm9dKQoKZG5sIE5vdGUgdGhpcyBpcyBub24tc3Rh bmRhcmQuICAtLXdpdGgteGltIGRvZXMgbm90IGNvbnRyb2wgd2hldGhlcgpkbmwgWElNIHN1 cHBvcnQgaXMgY29tcGlsZWQgaW4sIGl0IG9ubHkgYWZmZWN0cyB0aGUgcnVudGltZSBkZWZh dWx0IG9mCmRubCB1c2VfeGltIGluIHh0ZXJtLmMuCmlmIHRlc3QgIiR7d2l0aF94aW19IiAh PSAibm8iOyB0aGVuCiAgQUNfREVGSU5FKFtVU0VfWElNXSwgWzFdLAoJICAgIFtEZWZpbmUg dG8gMSB0byBkZWZhdWx0IHJ1bnRpbWUgdXNlIG9mIFhJTSB0byBvbi5dKQpmaQoKIyBDaGVj ayBmb3IgWFJlbmRlcgpIQVZFX1hSRU5ERVI9bm8KaWYgdGVzdCAiJHtIQVZFX1gxMX0iID0g InllcyI7IHRoZW4KICBBQ19DT01QSUxFX0lGRUxTRSgKICAgIFtBQ19MQU5HX1BST0dSQU0o CiAgICAgICBbWyNpbmNsdWRlIDxYMTEvSW50cmluc2ljLmg+CgkgI2luY2x1ZGUgPFgxMS9l eHRlbnNpb25zL1hyZW5kZXIuaD4KICAgICAgIF1dLAogICAgICAgW1tyZXR1cm4gIVhSZW5k ZXJRdWVyeUV4dGVuc2lvbjtdXSldLAogICAgW0FDX0NIRUNLX0xJQihbWHJlbmRlcl0sIFtY UmVuZGVyUXVlcnlFeHRlbnNpb25dLCBbSEFWRV9YUkVOREVSPXllc10pXSkKICBpZiB0ZXN0 ICRIQVZFX1hSRU5ERVIgPSB5ZXM7IHRoZW4KICAgIFhSRU5ERVJfTElCUz0iLWxYcmVuZGVy IgogICAgQUNfU1VCU1QoW1hSRU5ERVJfTElCU10pCiAgICBBQ19ERUZJTkUoW0hBVkVfWFJF TkRFUl0sIFsxXSwgW0RlZmluZSB0byAxIGlmIFhSZW5kZXIgaXMgYXZhaWxhYmxlLl0pCiAg ZmkKZmkKCkhBVkVfQ0FJUk89bm8KaWYgdGVzdCAiJHtIQVZFX1gxMX0iID0gInllcyI7IHRo ZW4KICBpZiB0ZXN0ICIke3dpdGhfY2Fpcm99IiAhPSAibm8iOyB0aGVuCiAgICBDQUlST19S RVFVSVJFRD0xLjguMAogICAgQ0FJUk9fTU9EVUxFPSJjYWlybyA+PSAkQ0FJUk9fUkVRVUlS RUQiCiAgICBFTUFDU19DSEVDS19NT0RVTEVTKFtDQUlST10sIFskQ0FJUk9fTU9EVUxFXSkK ICAgIGlmIHRlc3QgJEhBVkVfQ0FJUk8gPSB5ZXM7IHRoZW4KICAgICAgQ0FJUk9fWENCX01P RFVMRT0iY2Fpcm8teGNiID49ICRDQUlST19SRVFVSVJFRCIKICAgICAgRU1BQ1NfQ0hFQ0tf TU9EVUxFUyhbQ0FJUk9fWENCXSwgWyRDQUlST19YQ0JfTU9EVUxFXSkKICAgICAgaWYgdGVz dCAkSEFWRV9DQUlST19YQ0IgPSB5ZXM7IHRoZW4KCUNBSVJPX0NGTEFHUz0iJENBSVJPX0NG TEFHUyAkQ0FJUk9fWENCX0NGTEFHUyIKCUNBSVJPX0xJQlM9IiRDQUlST19MSUJTICRDQUlS T19YQ0JfTElCUyIKCUFDX0RFRklORShbVVNFX0NBSVJPX1hDQl0sIFsxXSwKCSAgW0RlZmlu ZSB0byAxIGlmIGNhaXJvIFhDQiBzdXJmYWNlcyBhcmUgYXZhaWxhYmxlLl0pCiAgICAgIGZp CiAgICAgIEFDX0RFRklORShbVVNFX0NBSVJPXSwgWzFdLCBbRGVmaW5lIHRvIDEgaWYgdXNp bmcgY2Fpcm8uXSkKICAgICAgQ0ZMQUdTPSIkQ0ZMQUdTICRDQUlST19DRkxBR1MiCiAgICAg IExJQlM9IiRMSUJTICRDQUlST19MSUJTIgogICAgICBBQ19TVUJTVChbQ0FJUk9fQ0ZMQUdT XSkKICAgICAgQUNfU1VCU1QoW0NBSVJPX0xJQlNdKQogICAgZWxzZQogICAgICBBQ19NU0df V0FSTihbY2Fpcm8gcmVxdWVzdGVkIGJ1dCBub3QgZm91bmQuXSkKICAgIGZpCiAgZmkKZmkK CmRubCBFbmFibGUgeHdpZGdldHMgaWYgR1RLMyBhbmQgV2ViS2l0R1RLKyBhcmUgYXZhaWxh YmxlLgpkbmwgRW5hYmxlIHh3aWRnZXRzIGlmIG1hY09TIENvY29hIGFuZCBXZWJLaXQgZnJh bWV3b3JrIGFyZSBhdmFpbGFibGUuCkhBVkVfWFdJREdFVFM9bm8KWFdJREdFVFNfT0JKPQpp ZiB0ZXN0ICIkd2l0aF94d2lkZ2V0cyIgIT0gIm5vIjsgdGhlbgogIGlmIHRlc3QgIiRVU0Vf R1RLX1RPT0xLSVQiID0gIkdUSzMiICYmIHRlc3QgIiR3aW5kb3dfc3lzdGVtIiAhPSAibm9u ZSI7IHRoZW4KICAgIFdFQktJVF9SRVFVSVJFRD0yLjEyCiAgICBXRUJLSVRfTU9EVUxFUz0i d2Via2l0Mmd0ay00LjEgPj0gJFdFQktJVF9SRVFVSVJFRCIKICAgIEVNQUNTX0NIRUNLX01P RFVMRVMoW1dFQktJVF0sIFskV0VCS0lUX01PRFVMRVNdKQogICAgaWYgdGVzdCAiJEhBVkVf V0VCS0lUIiA9ICJubyI7IHRoZW4KICAgICAgV0VCS0lUX01PRFVMRVM9IndlYmtpdDJndGst NC4wID49ICRXRUJLSVRfUkVRVUlSRUQiCiAgICAgIEVNQUNTX0NIRUNLX01PRFVMRVMoW1dF QktJVF0sIFskV0VCS0lUX01PRFVMRVNdKQogICAgZmkKICAgIEhBVkVfWFdJREdFVFM9JEhB VkVfV0VCS0lUCiAgICBYV0lER0VUU19PQko9Inh3aWRnZXQubyIKICAgIGlmIHRlc3QgIiRI QVZFX1hfV0lORE9XUyIgPSAieWVzIiAmJiB0ZXN0ICIke3dpdGhfY2Fpcm99IiA9ICJubyI7 IHRoZW4KICAgICAgQ0FJUk9fWExJQl9NT0RVTEVTPSJjYWlybyA+PSAxLjguMCBjYWlyby14 bGliID49IDEuOC4wIgogICAgICBFTUFDU19DSEVDS19NT0RVTEVTKFtDQUlST19YTElCXSwg WyRDQUlST19YTElCX01PRFVMRVNdKQogICAgICBpZiB0ZXN0ICRIQVZFX0NBSVJPX1hMSUIg PSAieWVzIjsgdGhlbgogICAgICAgIENBSVJPX0NGTEFHUz0iJENBSVJPX1hMSUJfQ0ZMQUdT IgoJQ0FJUk9fTElCUz0iJENBSVJPX1hMSUJfTElCUyIKCUFDX1NVQlNUKFtDQUlST19DRkxB R1NdKQoJQUNfU1VCU1QoW0NBSVJPX0xJQlNdKQogICAgICBlbHNlCiAgICAgICAgQUNfTVNH X0VSUk9SKFt4d2lkZ2V0cyByZXF1ZXN0ZWQsIGJ1dCBhIHN1aXRhYmxlIGNhaXJvIGluc3Rh bGxhdGlvbiB3YXNuJ3QgZm91bmRdKQogICAgICBmaQogICAgZmkKICBlbGlmIHRlc3QgIiR7 TlNfSU1QTF9DT0NPQX0iID0gInllcyI7IHRoZW4KICAgIGRubCBGSVhNRTogQ2hlY2sgZnJh bWV3b3JrIFdlYktpdDIKICAgIGRubCBXRUJLSVRfUkVRVUlSRUQ9TS5tLnAKICAgIFdFQktJ VF9MSUJTPSItV2wsLWZyYW1ld29yayAtV2wsV2ViS2l0IgogICAgV0VCS0lUX0NGTEFHUz0i LUkvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9XZWJLaXQuZnJhbWV3b3JrL0hlYWRlcnMi CiAgICBIQVZFX1dFQktJVD0ieWVzIgogICAgSEFWRV9YV0lER0VUUz0kSEFWRV9XRUJLSVQK ICAgIFhXSURHRVRTX09CSj0ieHdpZGdldC5vIgogICAgTlNfT0JKQ19PQko9IiROU19PQkpD X09CSiBuc3h3aWRnZXQubyIKICAgIGRubCBVcGRhdGUgTlNfT0JKQ19PQkogd2l0aCBhZGRl ZCBuc3h3aWRnZXQubwogICAgQUNfU1VCU1QoW05TX09CSkNfT0JKXSkKICBlbHNlCiAgICBB Q19NU0dfRVJST1IoW3h3aWRnZXRzIHJlcXVlc3RlZCwgaXQgcmVxdWlyZXMgR1RLMyBhcyBY IHdpbmRvdyB0b29sa2l0IG9yIG1hY09TIENvY29hIGFzIHdpbmRvdyBzeXN0ZW0uXSkKICBm aQoKICB0ZXN0ICRIQVZFX1hXSURHRVRTID0geWVzIHx8CiAgICBBQ19NU0dfRVJST1IoW3h3 aWRnZXRzIHJlcXVlc3RlZCBidXQgV2ViS2l0R1RLKyBvciBXZWJLaXQgZnJhbWV3b3JrIG5v dCBmb3VuZC5dKQoKICBBQ19ERUZJTkUoW0hBVkVfWFdJREdFVFNdLCBbMV0sIFtEZWZpbmUg dG8gMSBpZiB5b3UgaGF2ZSB4d2lkZ2V0cyBzdXBwb3J0Ll0pCmZpCkFDX1NVQlNUKFtYV0lE R0VUU19PQkpdKQoKaWYgdGVzdCAiJHdpbmRvd19zeXN0ZW0iID0gInBndGsiOyB0aGVuCiAg Q0FJUk9fUkVRVUlSRUQ9MS4xMi4wCiAgQ0FJUk9fTU9EVUxFPSJjYWlybyA+PSAkQ0FJUk9f UkVRVUlSRUQiCiAgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyhbQ0FJUk9dLCBbJENBSVJPX01PRFVM RV0pCiAgaWYgdGVzdCAkSEFWRV9DQUlSTyA9IHllczsgdGhlbgogICAgQUNfREVGSU5FKFtV U0VfQ0FJUk9dLCBbMV0sIFtEZWZpbmUgdG8gMSBpZiB1c2luZyBjYWlyby5dKQogIGVsc2UK ICAgIEFDX01TR19FUlJPUihbY2Fpcm8gcmVxdWlyZWQgYnV0IG5vdCBmb3VuZC5dKQogIGZp CgogIENGTEFHUz0iJENGTEFHUyAkQ0FJUk9fQ0ZMQUdTIgogIExJQlM9IiRMSUJTICRDQUlS T19MSUJTIgogIEFDX1NVQlNUKFtDQUlST19DRkxBR1NdKQogIEFDX1NVQlNUKFtDQUlST19M SUJTXSkKZmkKCmlmIHRlc3QgIiR7SEFWRV9CRV9BUFB9IiA9ICJ5ZXMiOyB0aGVuCiAgaWYg dGVzdCAiJHt3aXRoX2JlX2NhaXJvfSIgIT0gIm5vIjsgdGhlbgogICAgQ0FJUk9fUkVRVUlS RUQ9MS44LjAKICAgIENBSVJPX01PRFVMRT0iY2Fpcm8gPj0gJENBSVJPX1JFUVVJUkVEIgog ICAgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyhbQ0FJUk9dLCBbJENBSVJPX01PRFVMRV0pCiAgICBp ZiB0ZXN0ICRIQVZFX0NBSVJPID0geWVzOyB0aGVuCiAgICAgIEFDX0RFRklORShbVVNFX0JF X0NBSVJPXSwgWzFdLCBbRGVmaW5lIHRvIDEgaWYgdXNpbmcgY2Fpcm8gb24gSGFpa3UuXSkK ICAgICAgQ0ZMQUdTPSIkQ0ZMQUdTICRDQUlST19DRkxBR1MiCiAgICAgIExJQlM9IiRMSUJT ICRDQUlST19MSUJTIgogICAgICBBQ19TVUJTVChbQ0FJUk9fQ0ZMQUdTXSkKICAgICAgQUNf U1VCU1QoW0NBSVJPX0xJQlNdKQogICAgZWxzZQogICAgICBBQ19NU0dfV0FSTihbY2Fpcm8g cmVxdWVzdGVkIGJ1dCBub3QgZm91bmQuXSkKICAgIGZpCiAgZmkKZmkKCiMjIyBTdGFydCBv ZiBmb250LWJhY2tlbmQgKHVuZGVyIGFueSBwbGF0Zm9ybSkgc2VjdGlvbi4KIyAobm90aGlu ZyBoZXJlIHlldCAtLSB0aGlzIGlzIGEgcGxhY2Vob2xkZXIpCiMjIyBFbmQgb2YgZm9udC1i YWNrZW5kICh1bmRlciBhbnkgcGxhdGZvcm0pIHNlY3Rpb24uCgojIyMgU3RhcnQgb2YgZm9u dC1iYWNrZW5kICh1bmRlciBYMTEpIHNlY3Rpb24uCmlmIHRlc3QgIiR7SEFWRV9YMTF9IiA9 ICJ5ZXMiOyB0aGVuCiAgaWYgdGVzdCAkSEFWRV9DQUlSTyA9IHllczsgdGhlbgogICAgZG5s IFN0cmljdCBsaW5rZXJzIGZhaWwgd2l0aAogICAgZG5sIGZ0Zm9udC5vOiB1bmRlZmluZWQg cmVmZXJlbmNlIHRvIHN5bWJvbCAnRlRfTmV3X0ZhY2UnCiAgICBkbmwgaWYgLWxmcmVldHlw ZSBpcyBub3Qgc3BlY2lmaWVkLgogICAgZG5sIFRoZSBmb2xsb3dpbmcgaXMgbmVlZGVkIHRv IHNldCBGUkVFVFlQRV9MSUJTLgogICAgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyhbRlJFRVRZUEVd LCBbZnJlZXR5cGUyXSkKCiAgICB0ZXN0ICIkSEFWRV9GUkVFVFlQRSIgPSAibm8iICYmIEFD X01TR19FUlJPUihbY2Fpcm8gcmVxdWlyZXMgbGliZnJlZXR5cGVdKQoKICAgIEVNQUNTX0NI RUNLX01PRFVMRVMoW0ZPTlRDT05GSUddLCBbZm9udGNvbmZpZyA+PSAyLjIuMF0pCgogICAg dGVzdCAiJEhBVkVfRk9OVENPTkZJRyIgPSAibm8iICYmCiAgICAgIEFDX01TR19FUlJPUihb Y2Fpcm8gcmVxdWlyZXMgbGliZm9udGNvbmZpZ10pCiAgICBkbmwgRm9yIHRoZSAiRG9lcyBF bWFjcyB1c2UiIG1lc3NhZ2UgYXQgdGhlIGVuZC4KICAgIEhBVkVfWEZUPW5vCiAgZWxzZQog ICAgIyMgVXNlIC1sWGZ0IGlmIGF2YWlsYWJsZSwgdW5sZXNzICctLXdpdGgteGZ0PW5vJy4K ICAgIEhBVkVfWEZUPW1heWJlCiAgICBpZiB0ZXN0ICJ4JHt3aXRoX3h9IiA9ICJ4bm8iOyB0 aGVuCiAgICAgIHdpdGhfeGZ0PSJubyI7CiAgICBmaQoKICAgIGlmIHRlc3QgIiR3aXRoX3hm dCIgIT0gbm87IHRoZW4KICAgICAgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyhbRk9OVENPTkZJR10s IFtmb250Y29uZmlnID49IDIuMi4wXSkKICAgICAgd2l0aF94ZnQ9JEhBVkVfRk9OVENPTkZJ RwogICAgZmkKCiAgICBpZiB0ZXN0ICJ4JHt3aXRoX3hmdH0iICE9ICJ4bm8iOyB0aGVuCgog ICAgICBFTUFDU19DSEVDS19NT0RVTEVTKFtYRlRdLCBbeGZ0ID49IDAuMTMuMF0sIFtdLCBb SEFWRV9YRlQ9bm9dKQogICAgICAjIyBCZWNhdXNlIHh0ZXJtLmMgdXNlcyBYUmVuZGVyUXVl cnlFeHRlbnNpb24gd2hlbiBYRlQgaXMKICAgICAgIyMgZW5hYmxlZCwgd2UgYWxzbyBuZWVk IHRvIGxpbmsgdG8gLWxYcmVuZGVyLgogICAgICBpZiB0ZXN0ICIkSEFWRV9YRlQiICE9IG5v ICYmIHRlc3QgIiRIQVZFX1hSRU5ERVIiICE9IG5vOyB0aGVuCglPTERfQ1BQRkxBR1M9IiRD UFBGTEFHUyIKCU9MRF9DRkxBR1M9IiRDRkxBR1MiCglPTERfTElCUz0iJExJQlMiCglDUFBG TEFHUz0iJENQUEZMQUdTICRYRlRfQ0ZMQUdTIgoJQ0ZMQUdTPSIkQ0ZMQUdTICRYRlRfQ0ZM QUdTIgoJTElCUz0iJFhGVF9MSUJTICRMSUJTIgoJQUNfQ0hFQ0tfSEVBREVSKFtYMTEvWGZ0 L1hmdC5oXSwKCSAgW0FDX0NIRUNLX0xJQihbWGZ0XSwgW1hmdEZvbnRPcGVuXSwgW0hBVkVf WEZUPXllc10sCgkgICAgIFtdLCBbJFhGVF9MSUJTXSldLAoJICBbXSwKICAgICAgICAgIFtb I2luY2x1ZGUgPFgxMS9YLmg+XV0pCgoJaWYgdGVzdCAiJHtIQVZFX1hGVH0iID0gInllcyI7 IHRoZW4KCSAgQUNfREVGSU5FKFtIQVZFX1hGVF0sIFsxXSwgW0RlZmluZSB0byAxIGlmIHlv dSBoYXZlIHRoZSBYZnQgbGlicmFyeS5dKQoJICAgIEFDX1NVQlNUKFtYRlRfTElCU10pCgkg IENfU1dJVENIX1hfU0lURT0iJENfU1dJVENIX1hfU0lURSAkWEZUX0NGTEFHUyIKCWZpICAg ICAgICAgICAgICAgICAgICAgICAgIyAiJHtIQVZFX1hGVH0iID0gInllcyIKCUNQUEZMQUdT PSRPTERfQ1BQRkxBR1MKCUNGTEFHUz0kT0xEX0NGTEFHUwoJTElCUz0kT0xEX0xJQlMKICAg ICAgZWxzZQogICAgICAjIE1ha2Ugc3VyZSBYRlQgaXMgZGlzYWJsZWQgaWYgd2UgZm91bmQg WEZUIGJ1dCBub3QgWFJlbmRlcgoJSEFWRV9YRlQ9bm8KICAgICAgZmkgICAgICAgICAgICAg ICAgICAgICAgICAgICMgIiRIQVZFX1hGVCIgIT0gbm8KICAgIGZpICAgICAgICAgICAgICAg ICAgICAgICAgICAgICMgIngke3dpdGhfeGZ0fSIgIT0gInhubyIKCiAgICBpZiB0ZXN0ICIk SEFWRV9YRlQiICE9ICJ5ZXMiOyB0aGVuCiAgICAgICBkbmwgRm9yIHRoZSAiRG9lcyBFbWFj cyB1c2UiIG1lc3NhZ2UgYXQgdGhlIGVuZC4KICAgICAgIEhBVkVfWEZUPW5vCiAgICAgICBI QVZFX0ZSRUVUWVBFPW5vCiAgICBlbHNlCiAgICAgICBkbmwgU3RyaWN0IGxpbmtlcnMgZmFp bCB3aXRoCiAgICAgICBkbmwgZnRmb250Lm86IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gc3lt Ym9sICdGVF9OZXdfRmFjZScKICAgICAgIGRubCBpZiAtbGZyZWV0eXBlIGlzIG5vdCBzcGVj aWZpZWQuCiAgICAgICBkbmwgVGhlIGZvbGxvd2luZyBpcyBuZWVkZWQgdG8gc2V0IEZSRUVU WVBFX0xJQlMuCiAgICAgICBFTUFDU19DSEVDS19NT0RVTEVTKFtGUkVFVFlQRV0sIFtmcmVl dHlwZTJdKQoKICAgICAgIHRlc3QgIiRIQVZFX0ZSRUVUWVBFIiA9ICJubyIgJiYKCSBBQ19N U0dfRVJST1IoW2xpYnhmdCByZXF1aXJlcyBsaWJmcmVldHlwZV0pCiAgICBmaQogIGZpCQkJ CSAgIyAkSEFWRV9DQUlSTyAhPSB5ZXMKCiAgSEFWRV9MSUJPVEY9bm8KICBpZiB0ZXN0ICIk e0hBVkVfRlJFRVRZUEV9IiA9ICJ5ZXMiOyB0aGVuCiAgICBBQ19ERUZJTkUoW0hBVkVfRlJF RVRZUEVdLCBbMV0sCgkgICAgICBbRGVmaW5lIHRvIDEgaWYgdXNpbmcgdGhlIGZyZWV0eXBl IGFuZCBmb250Y29uZmlnIGxpYnJhcmllcy5dKQogICAgT0xEX0NGTEFHUz0kQ0ZMQUdTCiAg ICBPTERfTElCUz0kTElCUwogICAgQ0ZMQUdTPSIkQ0ZMQUdTICRGUkVFVFlQRV9DRkxBR1Mi CiAgICBMSUJTPSIkRlJFRVRZUEVfTElCUyAkTElCUyIKICAgIEFDX0NIRUNLX0ZVTkNTKFtG VF9GYWNlX0dldENoYXJWYXJpYW50SW5kZXhdKQogICAgQ0ZMQUdTPSRPTERfQ0ZMQUdTCiAg ICBMSUJTPSRPTERfTElCUwogICAgaWYgdGVzdCAiJHt3aXRoX2xpYm90Zn0iICE9ICJubyI7 IHRoZW4KICAgICAgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyhbTElCT1RGXSwgW2xpYm90Zl0pCiAg ICAgIGlmIHRlc3QgIiRIQVZFX0xJQk9URiIgPSAieWVzIjsgdGhlbgoJQUNfREVGSU5FKFtI QVZFX0xJQk9URl0sIFsxXSwgW0RlZmluZSB0byAxIGlmIHVzaW5nIGxpYm90Zi5dKQoJQUNf Q0hFQ0tfTElCKFtvdGZdLCBbT1RGX2dldF92YXJpYXRpb25fZ2x5cGhzXSwKCQkgICAgIFtI QVZFX09URl9HRVRfVkFSSUFUSU9OX0dMWVBIUz15ZXNdLAoJCSAgICAgW0hBVkVfT1RGX0dF VF9WQVJJQVRJT05fR0xZUEhTPW5vXSkKCWlmIHRlc3QgIiR7SEFWRV9PVEZfR0VUX1ZBUklB VElPTl9HTFlQSFN9IiA9ICJ5ZXMiOyB0aGVuCgkgIEFDX0RFRklORShbSEFWRV9PVEZfR0VU X1ZBUklBVElPTl9HTFlQSFNdLCBbMV0sCgkJICAgIFtEZWZpbmUgdG8gMSBpZiBsaWJvdGYg aGFzIE9URl9nZXRfdmFyaWF0aW9uX2dseXBocy5dKQoJZmkKCWlmICEgJFBLR19DT05GSUcg LS1hdGxlYXN0LXZlcnNpb249MC45LjE2IGxpYm90ZjsgdGhlbgoJICBBQ19ERUZJTkUoW0hB VkVfT1RGX0tBTk5BREFfQlVHXSwgWzFdLApbRGVmaW5lIHRvIDEgaWYgbGlib3RmIGlzIGFm ZmVjdGVkIGJ5IGh0dHBzOi8vZGViYnVncy5nbnUub3JnLzI4MTEwLl0pCglmaQogICAgICBm aQogICAgZmkKICBkbmwgRklYTUUgc2hvdWxkIHRoZXJlIGJlIGFuIGVycm9yIGlmIEhBVkVf RlJFRVRZUEUgIT0geWVzPwogIGRubCBEb2VzIHRoZSBuZXcgZm9udCBiYWNrZW5kIHJlcXVp cmUgaXQsIG9yIGNhbiBpdCB3b3JrIHdpdGhvdXQgaXQ/CiAgZmkKCiAgSEFWRV9NMTdOX0ZM VD1ubwogIGlmIHRlc3QgIiR7SEFWRV9MSUJPVEZ9IiA9IHllczsgdGhlbgogICAgaWYgdGVz dCAiJHt3aXRoX20xN25fZmx0fSIgIT0gIm5vIjsgdGhlbgogICAgICBFTUFDU19DSEVDS19N T0RVTEVTKFtNMTdOX0ZMVF0sIFttMTduLWZsdF0pCiAgICAgIGlmIHRlc3QgIiRIQVZFX00x N05fRkxUIiA9ICJ5ZXMiOyB0aGVuCglBQ19ERUZJTkUoW0hBVkVfTTE3Tl9GTFRdLCBbMV0s IFtEZWZpbmUgdG8gMSBpZiB1c2luZyBsaWJtMTduLWZsdC5dKQogICAgICBmaQogICAgZmkK ICBmaQplbHNlICMgIiR7SEFWRV9YMTF9IiAhPSAieWVzIgogIGlmIHRlc3QgJHdpbmRvd19z eXN0ZW0gPSBwZ3RrOyB0aGVuCiAgICBFTUFDU19DSEVDS19NT0RVTEVTKFtGT05UQ09ORklH XSwgW2ZvbnRjb25maWcgPj0gMi4yLjBdKQogICAgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyhbRlJF RVRZUEVdLCBbZnJlZXR5cGUyXSkKICAgIGlmIHRlc3QgIiRIQVZFX0ZPTlRDT05GSUciICE9 IHllcyAtbyAiJEhBVkVfRlJFRVRZUEUiICE9IHllczsgdGhlbgogICAgICBBQ19NU0dfRVJS T1IoW2ZvbnRjb25maWcgYW5kIGZyZWV0eXBlIGlzIHJlcXVpcmVkLl0pCiAgICBmaQogICAg SEFWRV9MSUJPVEY9bm8KICAgIEFDX0RFRklORShbSEFWRV9GUkVFVFlQRV0sIFsxXSwKCSAg ICAgIFtEZWZpbmUgdG8gMSBpZiB1c2luZyB0aGUgZnJlZXR5cGUgYW5kIGZvbnRjb25maWcg bGlicmFyaWVzLl0pCiAgICBpZiB0ZXN0ICIke3dpdGhfbGlib3RmfSIgIT0gIm5vIjsgdGhl bgogICAgICBFTUFDU19DSEVDS19NT0RVTEVTKFtMSUJPVEZdLCBbbGlib3RmXSkKICAgICAg aWYgdGVzdCAiJEhBVkVfTElCT1RGIiA9ICJ5ZXMiOyB0aGVuCglBQ19ERUZJTkUoW0hBVkVf TElCT1RGXSwgWzFdLCBbRGVmaW5lIHRvIDEgaWYgdXNpbmcgbGlib3RmLl0pCglBQ19DSEVD S19MSUIoW290Zl0sIFtPVEZfZ2V0X3ZhcmlhdGlvbl9nbHlwaHNdLAoJCSAgICAgW0hBVkVf T1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTPXllc10sCgkJICAgICBbSEFWRV9PVEZfR0VUX1ZB UklBVElPTl9HTFlQSFM9bm9dKQoJaWYgdGVzdCAiJHtIQVZFX09URl9HRVRfVkFSSUFUSU9O X0dMWVBIU30iID0gInllcyI7IHRoZW4KCSAgQUNfREVGSU5FKFtIQVZFX09URl9HRVRfVkFS SUFUSU9OX0dMWVBIU10sIFsxXSwKCQkgICAgW0RlZmluZSB0byAxIGlmIGxpYm90ZiBoYXMg T1RGX2dldF92YXJpYXRpb25fZ2x5cGhzLl0pCglmaQogICAgICBmaQogICAgZmkKICBlbHNl CiAgICBIQVZFX1hGVD1ubwogICAgSEFWRV9GUkVFVFlQRT1ubwogICAgSEFWRV9MSUJPVEY9 bm8KICAgIEhBVkVfTTE3Tl9GTFQ9bm8KICBmaQpmaSAgICMgIiR7SEFWRV9YMTF9IiAhPSAi eWVzIgoKSEFWRV9IQVJGQlVaWj1ubwojIyMgT24gTVMtV2luZG93cyB3ZSB1c2UgaGJfZm9u dF9nZXRfbm9taW5hbF9nbHlwaCwgd2hpY2ggYXBwZWFyZWQKIyMjIGluIEhhcmZCdXp6IHZl cnNpb24gMS4yLjMKaWYgdGVzdCAiJHtIQVZFX1czMn0iID0gInllcyI7IHRoZW4KICBoYXJm YnV6el9yZXF1aXJlZF92ZXI9MS4yLjMKZWxzZQogIGhhcmZidXp6X3JlcXVpcmVkX3Zlcj0w LjkuNDIKZmkKaWYgdGVzdCAiJHtIQVZFX1gxMX0iID0gInllcyIgJiYgdGVzdCAiJHtIQVZF X0ZSRUVUWVBFfSIgPSAieWVzIiBcCiAgICAgICAgfHwgdGVzdCAiJHdpbmRvd19zeXN0ZW0i ID0gInBndGsiIFwKICAgICAgICB8fCB0ZXN0ICIke0hBVkVfVzMyfSIgPSAieWVzIjsgdGhl bgogIGlmIHRlc3QgIiR7d2l0aF9oYXJmYnV6en0iICE9ICJubyI7IHRoZW4KICAgIEVNQUNT X0NIRUNLX01PRFVMRVMoW0hBUkZCVVpaXSwgW2hhcmZidXp6ID49ICRoYXJmYnV6el9yZXF1 aXJlZF92ZXJdKQogICAgaWYgdGVzdCAiJEhBVkVfSEFSRkJVWloiID0gInllcyI7IHRoZW4K ICAgICAgQUNfREVGSU5FKFtIQVZFX0hBUkZCVVpaXSwgWzFdLCBbRGVmaW5lIHRvIDEgaWYg dXNpbmcgSGFyZkJ1enouXSkKICAgICAgIyMjIG1pbmd3MzIgYW5kIEN5Z3dpbi13MzIgZG9u J3QgdXNlIC1saGFyZmJ1enosIHNpbmNlIHRoZXkgbG9hZAogICAgICAjIyMgdGhlIGxpYnJh cnkgZHluYW1pY2FsbHkuCiAgICAgIGlmIHRlc3QgIiR7SEFWRV9XMzJ9IiA9ICJ5ZXMiOyB0 aGVuCiAgICAgICAgSEFSRkJVWlpfTElCUz0KICAgICAgZmkKICAgIGZpCiAgZmkKZmkKCiMj IyBTdGFydCBvZiBmb250LWJhY2tlbmQgKHVuZGVyIEhhaWt1KSBzZWxlY3Rpb25uLgppZiB0 ZXN0ICIke0hBVkVfQkVfQVBQfSIgPSAieWVzIjsgdGhlbgogIGlmIHRlc3QgJEhBVkVfQ0FJ Uk8gPSAieWVzIjsgdGhlbgogICAgICBFTUFDU19DSEVDS19NT0RVTEVTKFtGUkVFVFlQRV0s IFtmcmVldHlwZTIgPj0gMi41LjBdKQogICAgICB0ZXN0ICIkSEFWRV9GUkVFVFlQRSIgPSAi bm8iICYmCglBQ19NU0dfRVJST1IoW2NhaXJvIG9uIEhhaWt1IHJlcXVpcmVzIGxpYmZyZWV0 eXBlXSkKICAgICAgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyhbRk9OVENPTkZJR10sIFtmb250Y29u ZmlnID49IDIuMi4wXSkKICAgICAgdGVzdCAiJEhBVkVfRk9OVENPTkZJRyIgPSAibm8iICYm CglBQ19NU0dfRVJST1IoW2NhaXJvIG9uIEhhaWt1IHJlcXVpcmVzIGxpYmZvbnRjb25maWdd KQogIGZpCgogIEhBVkVfTElCT1RGPW5vCgogIGlmIHRlc3QgIiR7SEFWRV9GUkVFVFlQRX0i ID0gInllcyI7IHRoZW4KICAgIEFDX0RFRklORShbSEFWRV9GUkVFVFlQRV0sIFsxXSwKCSAg ICAgIFtEZWZpbmUgdG8gMSBpZiB1c2luZyB0aGUgZnJlZXR5cGUgYW5kIGZvbnRjb25maWcg bGlicmFyaWVzLl0pCiAgICBPTERfQ0ZMQUdTPSRDRkxBR1MKICAgIE9MRF9MSUJTPSRMSUJT CiAgICBDRkxBR1M9IiRDRkxBR1MgJEZSRUVUWVBFX0NGTEFHUyIKICAgIExJQlM9IiRGUkVF VFlQRV9MSUJTICRMSUJTIgogICAgQUNfQ0hFQ0tfRlVOQ1MoW0ZUX0ZhY2VfR2V0Q2hhclZh cmlhbnRJbmRleF0pCiAgICBDRkxBR1M9JE9MRF9DRkxBR1MKICAgIExJQlM9JE9MRF9MSUJT CiAgICBpZiB0ZXN0ICIke3dpdGhfbGlib3RmfSIgIT0gIm5vIjsgdGhlbgogICAgICBFTUFD U19DSEVDS19NT0RVTEVTKFtMSUJPVEZdLCBbbGlib3RmXSkKICAgICAgaWYgdGVzdCAiJEhB VkVfTElCT1RGIiA9ICJ5ZXMiOyB0aGVuCglBQ19ERUZJTkUoW0hBVkVfTElCT1RGXSwgWzFd LCBbRGVmaW5lIHRvIDEgaWYgdXNpbmcgbGlib3RmLl0pCglBQ19DSEVDS19MSUIoW290Zl0s IFtPVEZfZ2V0X3ZhcmlhdGlvbl9nbHlwaHNdLAoJCSAgICAgW0hBVkVfT1RGX0dFVF9WQVJJ QVRJT05fR0xZUEhTPXllc10sCgkJICAgICBbSEFWRV9PVEZfR0VUX1ZBUklBVElPTl9HTFlQ SFM9bm9dKQoJaWYgdGVzdCAiJHtIQVZFX09URl9HRVRfVkFSSUFUSU9OX0dMWVBIU30iID0g InllcyI7IHRoZW4KCSAgQUNfREVGSU5FKFtIQVZFX09URl9HRVRfVkFSSUFUSU9OX0dMWVBI U10sIFsxXSwKCQkgICAgW0RlZmluZSB0byAxIGlmIGxpYm90ZiBoYXMgT1RGX2dldF92YXJp YXRpb25fZ2x5cGhzLl0pCglmaQoJaWYgISAkUEtHX0NPTkZJRyAtLWF0bGVhc3QtdmVyc2lv bj0wLjkuMTYgbGlib3RmOyB0aGVuCgkgIEFDX0RFRklORShbSEFWRV9PVEZfS0FOTkFEQV9C VUddLCBbMV0sCltEZWZpbmUgdG8gMSBpZiBsaWJvdGYgaXMgYWZmZWN0ZWQgYnkgaHR0cHM6 Ly9kZWJidWdzLmdudS5vcmcvMjgxMTAuXSkKCWZpCiAgICAgIGZpCiAgICBmaQogIGRubCBG SVhNRSBzaG91bGQgdGhlcmUgYmUgYW4gZXJyb3IgaWYgSEFWRV9GUkVFVFlQRSAhPSB5ZXM/ CiAgZG5sIERvZXMgdGhlIG5ldyBmb250IGJhY2tlbmQgcmVxdWlyZSBpdCwgb3IgY2FuIGl0 IHdvcmsgd2l0aG91dCBpdD8KICBmaQpmaQoKaWYgdGVzdCAiJHtIQVZFX0JFX0FQUH0iID0g InllcyIgJiYgdGVzdCAiJHtIQVZFX0ZSRUVUWVBFfSIgPSAieWVzIjsgdGhlbgogIGlmIHRl c3QgIiR7d2l0aF9oYXJmYnV6en0iICE9ICJubyI7IHRoZW4KICAgIEVNQUNTX0NIRUNLX01P RFVMRVMoW0hBUkZCVVpaXSwgW2hhcmZidXp6ID49ICRoYXJmYnV6el9yZXF1aXJlZF92ZXJd KQogICAgaWYgdGVzdCAiJEhBVkVfSEFSRkJVWloiID0gInllcyI7IHRoZW4KICAgICAgQUNf REVGSU5FKFtIQVZFX0hBUkZCVVpaXSwgWzFdLCBbRGVmaW5lIHRvIDEgaWYgdXNpbmcgSGFy ZkJ1enouXSkKICAgIGZpCiAgZmkKZmkKCiMjIyBFbmQgb2YgZm9udC1iYWNrZW5kIHNlY3Rp b24uCgpBQ19TVUJTVChbRlJFRVRZUEVfQ0ZMQUdTXSkKQUNfU1VCU1QoW0ZSRUVUWVBFX0xJ QlNdKQpBQ19TVUJTVChbRk9OVENPTkZJR19DRkxBR1NdKQpBQ19TVUJTVChbRk9OVENPTkZJ R19MSUJTXSkKQUNfU1VCU1QoW0hBUkZCVVpaX0NGTEFHU10pCkFDX1NVQlNUKFtIQVJGQlVa Wl9MSUJTXSkKQUNfU1VCU1QoW0xJQk9URl9DRkxBR1NdKQpBQ19TVUJTVChbTElCT1RGX0xJ QlNdKQpBQ19TVUJTVChbTTE3Tl9GTFRfQ0ZMQUdTXSkKQUNfU1VCU1QoW00xN05fRkxUX0xJ QlNdKQoKWENCX0xJQlM9CmlmIHRlc3QgIiR7SEFWRV9YMTF9IiA9ICJ5ZXMiOyB0aGVuCiAg QUNfQ0hFQ0tfSEVBREVSKFtYMTEvWGxpYi14Y2IuaF0sCiAgICBbQUNfQ0hFQ0tfTElCKFt4 Y2JdLCBbeGNiX3RyYW5zbGF0ZV9jb29yZGluYXRlc10sIFtIQVZFX1hDQj15ZXNdKV0pCiAg aWYgdGVzdCAiJHtIQVZFX1hDQn0iID0gInllcyI7IHRoZW4KICAgIEFDX0NIRUNLX0xJQihb WDExLXhjYl0sIFtYR2V0WENCQ29ubmVjdGlvbl0sIFtIQVZFX1gxMV9YQ0I9eWVzXSkKICAg IGlmIHRlc3QgIiR7SEFWRV9YMTFfWENCfSIgPSAieWVzIjsgdGhlbgogICAgICBBQ19ERUZJ TkUoW1VTRV9YQ0JdLCBbMV0sCltEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgWENCIGxp YnJhcnkgYW5kIFgxMS1YQ0IgbGlicmFyeSBmb3IgbWl4ZWQKWDExL1hDQiBwcm9ncmFtbWlu Zy5dKQogICAgICBYQ0JfTElCUz0iLWxYMTEteGNiIC1seGNiIgogICAgZmkKICBmaQpmaQpB Q19TVUJTVChbWENCX0xJQlNdKQoKIyMjIFVzZSAtbFhwbSBpZiBhdmFpbGFibGUsIHVubGVz cyAnLS13aXRoLXhwbT1ubycuCiMjIyBtaW5ndzMyIGRvZXNuJ3QgdXNlIC1sWHBtLCBzaW5j ZSBpdCBsb2FkcyB0aGUgbGlicmFyeSBkeW5hbWljYWxseS4KIyMjIFRoZSBDeWd3aW4tdzMy IGJ1aWxkIHVzZXMgPG5vWC94cG0uaD4gaW5zdGVhZCBvZiA8WDExL3hwbS5oPiwgc28KIyMj IHdlIG5lZWQgdG8gc2V0IExERkxBR1MgYWNjb3JkaW5nbHkuCkhBVkVfWFBNPW5vCkxJQlhQ TT0KaWYgdGVzdCAiJHtIQVZFX1czMn0iID0gInllcyIgJiYgdGVzdCAiJHtvcHN5c30iID0g ImN5Z3dpbiI7IHRoZW4KICBpZiB0ZXN0ICIke3dpdGhfeHBtfSIgIT0gIm5vIjsgdGhlbgog ICAgU0FWRV9MREZMQUdTPSIkTERGTEFHUyIKICAgIExERkxBR1M9IiRMREZMQUdTIC1ML3Vz ci9saWIvbm9YIgogICAgQUNfQ0hFQ0tfSEVBREVSKFtub1gveHBtLmhdLAogICAgICBbQUNf Q0hFQ0tfTElCKFtYcG1dLCBbWHBtUmVhZEZpbGVUb0ltYWdlXSwgW0hBVkVfWFBNPXllc10p XSkKICAgIGlmIHRlc3QgIiR7SEFWRV9YUE19IiA9ICJ5ZXMiOyB0aGVuCiAgICAgIEFDX0NB Q0hFX0NIRUNLKFtmb3IgWHBtUmV0dXJuQWxsb2NQaXhlbHMgcHJlcHJvY2Vzc29yIGRlZmlu ZV0sCiAgICAgIFtlbWFjc19jdl9jcHBfeHBtX3JldHVybl9hbGxvY19waXhlbHNdLAogICAg ICBbQUNfRUdSRVBfQ1BQKFtub19yZXR1cm5fYWxsb2NfcGl4ZWxzXSwKICAgICAgWyNpbmNs dWRlICJub1gveHBtLmgiCiNpZm5kZWYgWHBtUmV0dXJuQWxsb2NQaXhlbHMKbm9fcmV0dXJu X2FsbG9jX3BpeGVscwojZW5kaWYKICAgICAgXSwgW2VtYWNzX2N2X2NwcF94cG1fcmV0dXJu X2FsbG9jX3BpeGVscz1ub10sCgkgW2VtYWNzX2N2X2NwcF94cG1fcmV0dXJuX2FsbG9jX3Bp eGVscz15ZXNdKV0pCgogICAgICBpZiB0ZXN0ICIkZW1hY3NfY3ZfY3BwX3hwbV9yZXR1cm5f YWxsb2NfcGl4ZWxzIiA9ICJubyI7IHRoZW4KICAgICAgICBIQVZFX1hQTT1ubwogICAgICAg IExERkxBR1M9IiRTQVZFX0xERkxBR1MiCiAgICAgIGZpCiAgICBmaQogIGZpCgogIGlmIHRl c3QgIiR7SEFWRV9YUE19IiA9ICJ5ZXMiOyB0aGVuCiAgICBBQ19ERUZJTkUoW0hBVkVfWFBN XSwgWzFdLAogICAgICBbRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIFhwbSBsaWJyYXJ5 ICgtbFhwbSkuXSkKICAgIExJQlhQTT0tbFhwbQogIGZpCmZpCgppZiB0ZXN0ICIke0hBVkVf WDExfSIgPSAieWVzIjsgdGhlbgogIGRubCBBdm9pZCBYcG0gb24gQUlYIHVubGVzcyByZXF1 ZXN0ZWQsIGFzIGl0IGNyYXNoZXM7IHNlZSBCdWcjMTc1OTguCiAgY2FzZSAkb3BzeXMsJHdp dGhfeHBtX3NldCwkd2l0aF94cG0gaW4KICAgIGFpeDQtMixzZXQseWVzKSA7OwogICAgYWl4 NC0yLCopIHdpdGhfeHBtPW5vOzsKICBlc2FjCgogIGlmIHRlc3QgIiR7d2l0aF94cG19IiAh PSAibm8iOyB0aGVuCiAgICBBQ19DSEVDS19IRUFERVIoW1gxMS94cG0uaF0sCiAgICAgIFtB Q19DSEVDS19MSUIoW1hwbV0sIFtYcG1SZWFkRmlsZVRvUGl4bWFwXSwKCSBbSEFWRV9YUE09 eWVzXSwgW10sIFstbFgxMV0pXSkKICAgIGlmIHRlc3QgIiR7SEFWRV9YUE19IiA9ICJ5ZXMi OyB0aGVuCiAgICAgIEFDX0NBQ0hFX0NIRUNLKFtmb3IgWHBtUmV0dXJuQWxsb2NQaXhlbHMg cHJlcHJvY2Vzc29yIGRlZmluZV0sCiAgICAgIFtlbWFjc19jdl9jcHBfeHBtX3JldHVybl9h bGxvY19waXhlbHNdLAogICAgICBbQUNfRUdSRVBfQ1BQKFtub19yZXR1cm5fYWxsb2NfcGl4 ZWxzXSwKICAgICAgWyNpbmNsdWRlICJYMTEveHBtLmgiCiNpZm5kZWYgWHBtUmV0dXJuQWxs b2NQaXhlbHMKbm9fcmV0dXJuX2FsbG9jX3BpeGVscwojZW5kaWYKICAgICAgXSwgW2VtYWNz X2N2X2NwcF94cG1fcmV0dXJuX2FsbG9jX3BpeGVscz1ub10sCgkgW2VtYWNzX2N2X2NwcF94 cG1fcmV0dXJuX2FsbG9jX3BpeGVscz15ZXNdKV0pCgogICAgICBpZiB0ZXN0ICIkZW1hY3Nf Y3ZfY3BwX3hwbV9yZXR1cm5fYWxsb2NfcGl4ZWxzIiA9ICJubyI7IHRoZW4KCUhBVkVfWFBN PW5vCiAgICAgIGZpCiAgICBmaQogIGZpCgogIGlmIHRlc3QgIiR7SEFWRV9YUE19IiA9ICJ5 ZXMiOyB0aGVuCiAgICBBQ19ERUZJTkUoW0hBVkVfWFBNXSwgWzFdLAogICAgICBbRGVmaW5l IHRvIDEgaWYgeW91IGhhdmUgdGhlIFhwbSBsaWJyYXJ5ICgtbFhwbSkuXSkKICAgIExJQlhQ TT0tbFhwbQogIGVsaWYgdGVzdCAiJG9wc3lzLCRMVUNJRF9MSUJXIiA9IGFpeDQtMiwtbFhh dzsgdGhlbgogICAgZG5sIEFJWCAtbFhhdyBuZWVkcyAtbFhwbSBsaW5rZWQgdG9vOyBzZWUg QnVnIzE3NTk4IE1lc3NhZ2UjMTUyLgogICAgTElCWFBNPS1sWHBtCiAgZmkKZmkKCiMjIyBG SVhNRTogUGVyaGFwcyByZWdyb3VwIHRvIG1pbmltaXplIGNvZGUgZHVwbGljYXRpb24gZHVl IHRvIE1pbkdXJ3MKIyMjIHNsaWdodGx5IGRpZmZlcmVudCByZXF1aXJlbWVudHMgd3J0IGlt YWdlIGxpYnJhcmllcyAoaXQgZG9lc24ndAojIyMgdXNlIC1sWHBtIGJlY2F1c2UgaXQgbG9h ZHMgdGhlIHhwbSBzaGFyZWQgbGlicmFyeSBkeW5hbWljYWxseSBhdAojIyMgcnVuIHRpbWUp LgppZiB0ZXN0ICIke29wc3lzfSIgPSAibWluZ3czMiI7IHRoZW4KICBpZiB0ZXN0ICIke3dp dGhfeHBtfSIgIT0gIm5vIjsgdGhlbgogICAgQUNfQ0hFQ0tfSEVBREVSKFtYMTEveHBtLmhd LCBbSEFWRV9YUE09eWVzXSwgW0hBVkVfWFBNPW5vXSwgWwojZGVmaW5lIEZPUl9NU1cgMV0p CiAgZmkKCiAgaWYgdGVzdCAiJHtIQVZFX1hQTX0iID0gInllcyI7IHRoZW4KICAgIEFDX0RF RklORShbSEFWRV9YUE1dLCBbMV0sCiAgICAgIFtEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0 aGUgWHBtIGxpYnJhcnkgKC1sWHBtKS5dKQogIGZpCmZpCgpBQ19TVUJTVChbTElCWFBNXSkK CiMjIyBVc2UgLWxqcGVnIGlmIGF2YWlsYWJsZSwgdW5sZXNzICctLXdpdGgtanBlZz1ubycu CkhBVkVfSlBFRz1ubwpMSUJKUEVHPQppZiB0ZXN0ICIke0hBVkVfWDExfSIgPSAieWVzIiB8 fCB0ZXN0ICIke0hBVkVfVzMyfSIgPSAieWVzIiBcCiAgIHx8IHRlc3QgIiR7SEFWRV9OU30i ID0gInllcyIgfHwgdGVzdCAiJHtIQVZFX0JFX0FQUH0iID0gInllcyIgXAogICB8fCB0ZXN0 ICIkd2luZG93X3N5c3RlbSIgPSAicGd0ayI7IHRoZW4KICBpZiB0ZXN0ICIke3dpdGhfanBl Z30iICE9ICJubyI7IHRoZW4KICAgIEFDX0NBQ0hFX0NIRUNLKFtmb3IganBlZ2xpYiA2YiBv ciBsYXRlcl0sCiAgICAgIFtlbWFjc19jdl9qcGVnbGliXSwKICAgICAgW09MRF9MSUJTPSRM SUJTCiAgICAgICBmb3IgZW1hY3NfY3ZfanBlZ2xpYiBpbiB5ZXMgLWxqcGVnIG5vOyBkbwoJ IGNhc2UgJGVtYWNzX2N2X2pwZWdsaWIgaW4KCSAgIHllcykgOzsKCSAgIG5vKSBicmVhazs7 CgkgICAqKSBMSUJTPSIkTElCUyAkZW1hY3NfY3ZfanBlZ2xpYiI7OwoJIGVzYWMKCSBBQ19M SU5LX0lGRUxTRSgKCSAgIFtBQ19MQU5HX1BST0dSQU0oCgkgICAgICBbWyN1bmRlZiBIQVZF X1NURExJQl9IIC8qIEF2b2lkIGNvbmZpZy5oL2pwZWdsaWIuaCBjb2xsaXNpb24uICAqLwoJ CSNpbmNsdWRlIDxzdGRpby5oPiAvKiBqcGVnbGliLmggbmVlZHMgRklMRSBhbmQgc2l6ZV90 LiAgKi8KCQkjaW5jbHVkZSA8anBlZ2xpYi5oPgoJCSNpbmNsdWRlIDxqZXJyb3IuaD4KCQlj aGFyIHZlcmlmeVtKUEVHX0xJQl9WRVJTSU9OIDwgNjIgPyAtMSA6IDFdOwoJCXN0cnVjdCBq cGVnX2RlY29tcHJlc3Nfc3RydWN0IGNpbmZvOwoJICAgICAgXV0sCgkgICAgICBbWwoJCWpw ZWdfY3JlYXRlX2RlY29tcHJlc3MgKCZjaW5mbyk7CgkJV0FSTk1TICgmY2luZm8sIEpXUk5f SlBFR19FT0YpOwoJCWpwZWdfZGVzdHJveV9kZWNvbXByZXNzICgmY2luZm8pOwoJICAgICAg XV0pXSwKCSAgIFtlbWFjc19saW5rX29rPXllc10sCgkgICBbZW1hY3NfbGlua19vaz1ub10p CgkgTElCUz0kT0xEX0xJQlMKCSB0ZXN0ICRlbWFjc19saW5rX29rID0geWVzICYmIGJyZWFr CiAgICAgICBkb25lXSkKICAgIGlmIHRlc3QgIiRlbWFjc19jdl9qcGVnbGliIiAhPSBubzsg dGhlbgogICAgICBIQVZFX0pQRUc9eWVzCiAgICAgIEFDX0RFRklORShbSEFWRV9KUEVHXSwg WzFdLAoJW0RlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBqcGVnIGxpYnJhcnkgKHR5cGlj YWxseSAtbGpwZWcpLl0pCiAgICAgICMjIyBtaW5ndzMyIGRvZXNuJ3QgdXNlIC1sanBlZywg c2luY2UgaXQgbG9hZHMgdGhlIGxpYnJhcnkKICAgICAgIyMjIGR5bmFtaWNhbGx5IHdoZW4g bmVlZGVkLCBhbmQgZG9lc24ndCB3YW50IGEgcnVuLXRpbWUKICAgICAgIyMjIGRlcGVuZGVu Y3kgb24gdGhlIGpwZWdsaWIgRExMLgogICAgICB0ZXN0ICIkZW1hY3NfY3ZfanBlZ2xpYiIg IT0geWVzICYmIHRlc3QgIiR7b3BzeXN9IiAhPSAibWluZ3czMiIgXAogICAgICAmJiBMSUJK UEVHPSRlbWFjc19jdl9qcGVnbGliCiAgICBmaQogIGZpCmZpCkFDX1NVQlNUKFtMSUJKUEVH XSkKCkhBVkVfTENNUzI9bm8KTENNUzJfQ0ZMQUdTPQpMQ01TMl9MSUJTPQppZiB0ZXN0ICIk e3dpdGhfbGNtczJ9IiAhPSAibm8iOyB0aGVuCiAgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyhbTENN UzJdLCBbbGNtczJdKQpmaQppZiB0ZXN0ICIke0hBVkVfTENNUzJ9IiA9ICJ5ZXMiOyB0aGVu CiAgQUNfREVGSU5FKFtIQVZFX0xDTVMyXSwgWzFdLAogICAgW0RlZmluZSB0byAxIGlmIHlv dSBoYXZlIHRoZSBsY21zMiBsaWJyYXJ5ICgtbGxjbXMyKS5dKQogICMjIyBtaW5ndzMyIGRv ZXNuJ3QgdXNlIC1sbGNtczIsIHNpbmNlIGl0IGxvYWRzIHRoZSBsaWJyYXJ5IGR5bmFtaWNh bGx5LgogIGlmIHRlc3QgIiR7b3BzeXN9IiA9ICJtaW5ndzMyIjsgdGhlbgogICAgIExDTVMy X0xJQlM9CiAgZmkKZmkKQUNfU1VCU1QoW0xDTVMyX0NGTEFHU10pCkFDX1NVQlNUKFtMQ01T Ml9MSUJTXSkKCkhBVkVfWkxJQj1ubwpMSUJaPQppZiB0ZXN0ICIke3dpdGhfemxpYn0iICE9 ICJubyI7IHRoZW4KICBPTElCUz0kTElCUwogIEFDX1NFQVJDSF9MSUJTKFtpbmZsYXRlRW5k XSwgW3pdLCBbSEFWRV9aTElCPXllc10pCiAgTElCUz0kT0xJQlMKICBjYXNlICRhY19jdl9z ZWFyY2hfaW5mbGF0ZUVuZCBpbgogICAgLSopIExJQlo9JGFjX2N2X3NlYXJjaF9pbmZsYXRl RW5kIDs7CiAgZXNhYwpmaQppZiB0ZXN0ICIke0hBVkVfWkxJQn0iID0gInllcyI7IHRoZW4K ICBBQ19ERUZJTkUoW0hBVkVfWkxJQl0sIFsxXSwKICAgIFtEZWZpbmUgdG8gMSBpZiB5b3Ug aGF2ZSB0aGUgemxpYiBsaWJyYXJ5ICgtbHopLl0pCiAgIyMjIG1pbmd3MzIgZG9lc24ndCB1 c2UgLWx6LCBzaW5jZSBpdCBsb2FkcyB0aGUgbGlicmFyeSBkeW5hbWljYWxseS4KICBpZiB0 ZXN0ICIke29wc3lzfSIgPSAibWluZ3czMiI7IHRoZW4KICAgICBMSUJaPQogIGZpCmZpCkFD X1NVQlNUKFtMSUJaXSkKCiMjIyBEeW5hbWljIGxpYnJhcnkgc3VwcG9ydApjYXNlICRvcHN5 cyBpbgogIGN5Z3dpbnxtaW5ndzMyKSBEWU5BTUlDX0xJQl9TVUZGSVg9Ii5kbGwiIDs7CiAg ZGFyd2luKSBEWU5BTUlDX0xJQl9TVUZGSVg9Ii5keWxpYiIgOzsKICAqKSBEWU5BTUlDX0xJ Ql9TVUZGSVg9Ii5zbyIgOzsKZXNhYwpjYXNlICIke29wc3lzfSIgaW4KICBkYXJ3aW4pIERZ TkFNSUNfTElCX1NFQ09OREFSWV9TVUZGSVg9Jy5zbycgOzsKICAqKSBEWU5BTUlDX0xJQl9T RUNPTkRBUllfU1VGRklYPScnIDs7CmVzYWMKQUNfREVGSU5FX1VOUVVPVEVEKERZTkFNSUNf TElCX1NVRkZJWCwgIiREWU5BTUlDX0xJQl9TVUZGSVgiLAogIFtTeXN0ZW0gZXh0ZW5zaW9u IGZvciBkeW5hbWljIGxpYnJhcmllc10pCkFDX0RFRklORV9VTlFVT1RFRChEWU5BTUlDX0xJ Ql9TRUNPTkRBUllfU1VGRklYLCAiJERZTkFNSUNfTElCX1NFQ09OREFSWV9TVUZGSVgiLAog IFtBbHRlcm5hdGl2ZSBzeXN0ZW0gZXh0ZW5zaW9uIGZvciBkeW5hbWljIGxpYnJhcmllcy5d KQoKQUNfU1VCU1QoRFlOQU1JQ19MSUJfU1VGRklYKQpBQ19TVUJTVChEWU5BTUlDX0xJQl9T RUNPTkRBUllfU1VGRklYKQoKIyMjIER5bmFtaWMgbW9kdWxlcyBzdXBwb3J0CkxJQk1PRFVM RVM9CkhBVkVfTU9EVUxFUz1ubwpNT0RVTEVTX09CSj0KTU9EVUxFU19TVUZGSVg9IiR7RFlO QU1JQ19MSUJfU1VGRklYfSIKTU9EVUxFU19TRUNPTkRBUllfU1VGRklYPSIke0RZTkFNSUNf TElCX1NFQ09OREFSWV9TVUZGSVh9IgoKIyBwZ3RrdGVybS5jIHVzZXMgZGxzeW0KaWYgdGVz dCAkd2luZG93X3N5c3RlbSA9IHBndGs7IHRoZW4KICBjYXNlICRvcHN5cyBpbgogICAgZ251 fGdudS1saW51eCkKICAgIExJQk1PRFVMRVM9Ii1sZGwiCiAgICA7OwogIGVzYWMKZmkKCmlm IHRlc3QgIiR7d2l0aF9tb2R1bGVzfSIgIT0gIm5vIjsgdGhlbgogIGNhc2UgJG9wc3lzIGlu CiAgICBnbnV8Z251LWxpbnV4KQogICAgICBMSUJNT0RVTEVTPSItbGRsIgogICAgICBIQVZF X01PRFVMRVM9eWVzCiAgICAgIDs7CiAgICBjeWd3aW58bWluZ3czMnxkYXJ3aW4pCiAgICAg IEhBVkVfTU9EVUxFUz15ZXMKICAgICAgOzsKICAgICopCiAgICAgICMgQlNEIHN5c3RlbXMg aGF2ZSBkbG9wZW4gaW4gbGliYy4KICAgICAgQUNfQ0hFQ0tfRlVOQyhbZGxvcGVuXSwgW0hB VkVfTU9EVUxFUz15ZXNdKQogICAgICA7OwogIGVzYWMKCiAgaWYgdGVzdCAiJHtIQVZFX01P RFVMRVN9IiA9IG5vOyB0aGVuCiAgICBBQ19NU0dfRVJST1IoW0R5bmFtaWMgbW9kdWxlcyBh cmUgbm90IHN1cHBvcnRlZCBvbiB5b3VyIHN5c3RlbV0pCiAgZWxzZQogICAgU0FWRV9MSUJT PSRMSUJTCiAgICBMSUJTPSIkTElCUyAkTElCTU9EVUxFUyIKICAgIEFDX0NIRUNLX0ZVTkNT KFtkbGFkZHIgZGxmdW5jXSkKICAgIExJQlM9JFNBVkVfTElCUwogIGZpCmZpCgppZiB0ZXN0 ICIke0hBVkVfTU9EVUxFU30iID0geWVzOyB0aGVuCiAgIE1PRFVMRVNfT0JKPSJlbWFjcy1t b2R1bGUubyIKICAgTkVFRF9EWU5MSUI9eWVzCiAgIEFDX0RFRklORShbSEFWRV9NT0RVTEVT XSwgWzFdLCBbRGVmaW5lIHRvIDEgaWYgZHluYW1pYyBtb2R1bGVzIGFyZSBlbmFibGVkXSkK ICAgQUNfREVGSU5FX1VOUVVPVEVEKFtNT0RVTEVTX1NVRkZJWF0sIFsiJE1PRFVMRVNfU1VG RklYIl0sCiAgICAgW1N5c3RlbSBleHRlbnNpb24gZm9yIGR5bmFtaWMgbGlicmFyaWVzXSkK ICAgaWYgdGVzdCAtbiAiJHtNT0RVTEVTX1NFQ09OREFSWV9TVUZGSVh9IjsgdGhlbgogICAg IEFDX0RFRklORV9VTlFVT1RFRChbTU9EVUxFU19TRUNPTkRBUllfU1VGRklYXSwKICAgICAg IFsiJE1PRFVMRVNfU0VDT05EQVJZX1NVRkZJWCJdLAogICAgICAgW0FsdGVybmF0aXZlIHN5 c3RlbSBleHRlbnNpb24gZm9yIGR5bmFtaWMgbGlicmFyaWVzLl0pCiAgIGZpCmZpCkFDX1NV QlNUKFtNT0RVTEVTX09CSl0pCkFDX1NVQlNUKFtMSUJNT0RVTEVTXSkKQUNfU1VCU1QoW0hB VkVfTU9EVUxFU10pCkFDX1NVQlNUKFtNT0RVTEVTX1NVRkZJWF0pCkFDX1NVQlNUKFtNT0RV TEVTX1NFQ09OREFSWV9TVUZGSVhdKQoKQUNfQ09ORklHX0ZJTEVTKFtzcmMvZW1hY3MtbW9k dWxlLmhdKQpBQ19TVUJTVF9GSUxFKFttb2R1bGVfZW52X3NuaXBwZXRfMjVdKQpBQ19TVUJT VF9GSUxFKFttb2R1bGVfZW52X3NuaXBwZXRfMjZdKQpBQ19TVUJTVF9GSUxFKFttb2R1bGVf ZW52X3NuaXBwZXRfMjddKQpBQ19TVUJTVF9GSUxFKFttb2R1bGVfZW52X3NuaXBwZXRfMjhd KQpBQ19TVUJTVF9GSUxFKFttb2R1bGVfZW52X3NuaXBwZXRfMjldKQpBQ19TVUJTVF9GSUxF KFttb2R1bGVfZW52X3NuaXBwZXRfMzBdKQptb2R1bGVfZW52X3NuaXBwZXRfMjU9IiRzcmNk aXIvc3JjL21vZHVsZS1lbnYtMjUuaCIKbW9kdWxlX2Vudl9zbmlwcGV0XzI2PSIkc3JjZGly L3NyYy9tb2R1bGUtZW52LTI2LmgiCm1vZHVsZV9lbnZfc25pcHBldF8yNz0iJHNyY2Rpci9z cmMvbW9kdWxlLWVudi0yNy5oIgptb2R1bGVfZW52X3NuaXBwZXRfMjg9IiRzcmNkaXIvc3Jj L21vZHVsZS1lbnYtMjguaCIKbW9kdWxlX2Vudl9zbmlwcGV0XzI5PSIkc3JjZGlyL3NyYy9t b2R1bGUtZW52LTI5LmgiCm1vZHVsZV9lbnZfc25pcHBldF8zMD0iJHNyY2Rpci9zcmMvbW9k dWxlLWVudi0zMC5oIgplbWFjc19tYWpvcl92ZXJzaW9uPSIke1BBQ0tBR0VfVkVSU0lPTiUl Lip9IgpBQ19TVUJTVChbZW1hY3NfbWFqb3JfdmVyc2lvbl0pCgojIyMgRW1hY3MgTGlzcCBu YXRpdmUgY29tcGlsZXIgc3VwcG9ydAoKQUNfREVGVU4oW2xpYmdjY2ppdF9zbW9rZV90ZXN0 XSwgWwogIEFDX0xBTkdfU09VUkNFKAogICAgW1sjaW5jbHVkZSA8bGliZ2Njaml0Lmg+CiAg ICAgICNpbmNsdWRlIDxzdGRsaWIuaD4KICAgICAgI2luY2x1ZGUgPHN0ZGlvLmg+CiAgICAg IGludAogICAgICBtYWluIChpbnQgYXJnYywgY2hhciAqKmFyZ3YpCiAgICAgIHsKICAgICAg ICBnY2Nfaml0X2NvbnRleHQgKmN0eHQ7CiAgICAgICAgZ2NjX2ppdF9yZXN1bHQgKnJlc3Vs dDsKICAgICAgICBjdHh0ID0gZ2NjX2ppdF9jb250ZXh0X2FjcXVpcmUgKCk7CiAgICAgICAg aWYgKCFjdHh0KQogICAgICAgICAgZXhpdCAoMSk7CiAgICAgICAgZ2NjX2ppdF90eXBlICpp bnRfdHlwZSA9CiAgICAgICAgICBnY2Nfaml0X2NvbnRleHRfZ2V0X3R5cGUgKGN0eHQsIEdD Q19KSVRfVFlQRV9JTlQpOwogICAgICAgIGdjY19qaXRfZnVuY3Rpb24gKmZ1bmMgPQogICAg ICAgICAgZ2NjX2ppdF9jb250ZXh0X25ld19mdW5jdGlvbiAoY3R4dCwgTlVMTCwKICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdDQ19KSVRfRlVOQ1RJT05fRVhQ T1JURUQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnRfdHlw ZSwgImZvbyIsIDAsIE5VTEwsIDApOwogICAgICAgIGdjY19qaXRfYmxvY2sgKmJsb2NrID0g Z2NjX2ppdF9mdW5jdGlvbl9uZXdfYmxvY2sgKGZ1bmMsICJmb28iKTsKICAgICAgICBnY2Nf aml0X2Jsb2NrX2VuZF93aXRoX3JldHVybiAoCiAgICAgICAgICBibG9jaywKICAgICAgICAg IE5VTEwsCiAgICAgICAgICBnY2Nfaml0X2NvbnRleHRfbmV3X3J2YWx1ZV9mcm9tX2ludCAo Y3R4dCwgaW50X3R5cGUsIDEpKTsKICAgICAgICByZXN1bHQgPSBnY2Nfaml0X2NvbnRleHRf Y29tcGlsZSAoY3R4dCk7CiAgICAgICAgaWYgKCFyZXN1bHQpCiAgICAgICAgICBleGl0ICgx KTsKICAgICAgICB0eXBlZGVmIGludCAoKmZuX3R5cGUpICh2b2lkKTsKICAgICAgICBmbl90 eXBlIGZvbyA9CiAgICAgICAgICAoZm5fdHlwZSlnY2Nfaml0X3Jlc3VsdF9nZXRfY29kZSAo cmVzdWx0LCAiZm9vIik7CiAgICAgICAgaWYgKCFmb28pCiAgICAgICAgICBleGl0ICgxKTsK ICAgICAgICBpZiAoZm9vICgpICE9IDEpCiAgICAgICAgICBleGl0ICgxKTsKICAgICAgICBn Y2Nfaml0X2NvbnRleHRfcmVsZWFzZSAoY3R4dCk7CiAgICAgICAgZ2NjX2ppdF9yZXN1bHRf cmVsZWFzZSAocmVzdWx0KTsKICAgICAgICByZXR1cm4gMDsKICAgICAgfV1dKV0pCgpBQ19E RUZVTihbbGliZ2Njaml0X25vdF9mb3VuZF0sIFsKICBBQ19NU0dfRVJST1IoW0VMaXNwIG5h dGl2ZSBjb21waWxlciB3YXMgcmVxdWVzdGVkLCBidXQgbGliZ2Njaml0IHdhcyBub3QgZm91 bmQuClBsZWFzZSB0cnkgaW5zdGFsbGluZyBsaWJnY2NqaXQgb3IgYSBzaW1pbGFyIHBhY2th Z2UuCklmIHlvdSBhcmUgc3VyZSB5b3Ugd2FudCBFbWFjcyBiZSBjb21waWxlZCB3aXRob3V0 IEVMaXNwIG5hdGl2ZSBjb21waWxlciwKcGFzcyB0aGUgLS13aXRob3V0LW5hdGl2ZS1jb21w aWxhdGlvbiBvcHRpb24gdG8gY29uZmlndXJlLl0pXSkKCkFDX0RFRlVOKFtsaWJnY2NqaXRf ZGV2X25vdF9mb3VuZF0sIFsKICBBQ19NU0dfRVJST1IoW0VMaXNwIG5hdGl2ZSBjb21waWxl ciB3YXMgcmVxdWVzdGVkLCBidXQgbGliZ2Njaml0IGhlYWRlciBmaWxlcyB3ZXJlCm5vdCBm b3VuZC4KUGxlYXNlIHRyeSBpbnN0YWxsaW5nIGxpYmdjY2ppdC1kZXYgb3IgYSBzaW1pbGFy IHBhY2thZ2UuCklmIHlvdSBhcmUgc3VyZSB5b3Ugd2FudCBFbWFjcyBiZSBjb21waWxlZCB3 aXRob3V0IEVMaXNwIG5hdGl2ZSBjb21waWxlciwKcGFzcyB0aGUgLS13aXRob3V0LW5hdGl2 ZS1jb21waWxhdGlvbiBvcHRpb24gdG8gY29uZmlndXJlLl0pXSkKCkFDX0RFRlVOKFtsaWJn Y2NqaXRfYnJva2VuXSwgWwogIEFDX01TR19FUlJPUihbVGhlIGluc3RhbGxlZCBsaWJnY2Nq aXQgZmFpbGVkIHRvIGNvbXBpbGUgYW5kIHJ1biBhIHRlc3QgcHJvZ3JhbSB1c2luZwp0aGUg bGliZ2Njaml0IGxpYnJhcnk7IHNlZSBjb25maWcubG9nIGZvciB0aGUgZGV0YWlscyBvZiB0 aGUgZmFpbHVyZS4KVGhlIHRlc3QgcHJvZ3JhbSBjYW4gYmUgZm91bmQgaGVyZToKPGh0dHBz Oi8vZ2NjLmdudS5vcmcvb25saW5lZG9jcy9qaXQvaW50cm8vdHV0b3JpYWwwMS5odG1sPi4K WW91IGNhbiB0cnkgY29tcGlsaW5nIGl0IHlvdXJzZWxmIHRvIGludmVzdGlnYXRlIHRoZSBp c3N1ZXMuClBsZWFzZSByZXBvcnQgdGhlIGlzc3VlIHRvIHlvdXIgZGlzdHJpYnV0aW9uIGlm IGxpYmdjY2ppdCB3YXMgaW5zdGFsbGVkCnRocm91Z2ggdGhhdC4KWW91IGNhbiBmaW5kIHRo ZSBpbnN0cnVjdGlvbnMgb24gaG93IHRvIGNvbXBpbGUgYW5kIGluc3RhbGwgbGliZ2Njaml0 IGZyb20Kc291cmNlIG9uIHRoaXMgc2l0ZToKPGh0dHBzOi8vZ2NjLmdudS5vcmcvd2lraS9K SVQ+Ll0pXSkKCkhBVkVfTkFUSVZFX0NPTVA9bm8KTElCR0NDSklUX0xJQlM9CkxJQkdDQ0pJ VF9DRkxBR1M9CmlmIHRlc3QgIiRjYW5vbmljYWwiID0gaTY4Ni1wYy1jeWd3aW47IHRoZW4K ICBpZiB0ZXN0ICIke3dpdGhfY3lnd2luMzJfbmF0aXZlX2NvbXBpbGF0aW9ufSIgPSB5ZXM7 IHRoZW4KICAgIHdpdGhfbmF0aXZlX2NvbXBpbGF0aW9uPXllcwogIGVsaWYgdGVzdCAiJHt3 aXRoX25hdGl2ZV9jb21waWxhdGlvbn0iICE9IG5vOyB0aGVuCiAgICBBQ19NU0dfRVJST1Io W05hdGl2ZSBjb21waWxhdGlvbiBpcyBub3Qgc3VwcG9ydGVkIG9uIDMyLWJpdCBDeWd3aW4u CklmIHlvdSByZWFsbHkgd2FudCB0byB0cnkgaXQgYW55d2F5LCB1c2UgdGhlIGNvbmZpZ3Vy ZSBvcHRpb24KJy0td2l0aC1jeWd3aW4zMi1uYXRpdmUtY29tcGlsYXRpb24nLl0pCiAgZmkK ZmkKCmlmIHRlc3QgIiR7d2l0aF9uYXRpdmVfY29tcGlsYXRpb259IiAhPSAibm8iOyB0aGVu CiAgICBpZiB0ZXN0ICIke0hBVkVfUERVTVBFUn0iID0gbm87IHRoZW4KICAgICAgIEFDX01T R19FUlJPUihbJy0td2l0aC1uYXRpdmUtY29tcGlsYXRpb24nIHJlcXVpcmVzICctLXdpdGgt ZHVtcGluZz1wZHVtcGVyJ10pCiAgICBmaQogICAgaWYgdGVzdCAiJHtIQVZFX1pMSUJ9IiA9 IG5vOyB0aGVuCiAgICAgICBBQ19NU0dfRVJST1IoWyctLXdpdGgtbmF0aXZlLWNvbXBpbGF0 aW9uJyByZXF1aXJlcyB6bGliXSkKICAgIGZpCgogICAgU0FWRV9DRkxBR1M9JENGTEFHUwog ICAgU0FWRV9MSUJTPSRMSUJTCgogICAgaWYgdGVzdCAiJHtvcHN5c30iID0gImRhcndpbiI7 IHRoZW4KICAgICAgIyBFbnN1cmUgbGliZ2Njaml0IGluc3RhbGxlZCBieSBIb21lYnJldyBv ciBtYWNwb3J0cyBjYW4gYmUgZm91bmQuCiAgICAgIGlmIHRlc3QgLW4gIiRCUkVXIjsgdGhl bgogICAgICAgIGlmIHRlc3QgLW4gImAkQlJFVyAtLXByZWZpeCAtLWluc3RhbGxlZCBsaWJn Y2NqaXQgMj4vZGV2L251bGxgIjsgdGhlbgogICAgICAgICAgTUFDX0NGTEFHUz0iLUkkKGRp cm5hbWUgJCgkQlJFVyBscyAtdiBsaWJnY2NqaXQgfCBcCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdyZXAgbGliZ2Njaml0LmgpKSIKICAgICAg ICAgIE1BQ19MSUJTPSItTCQoZGlybmFtZSAkKCRCUkVXIGxzIC12IGxpYmdjY2ppdCBcCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGdyZXAgLW0xIC1FICdsaWJnY2Nq aXRcLihzb3xkeWxpYikkJykpIgogICAgICAgIGZpCiAgICAgIGZpCgogICAgICBpZiB0ZXN0 IC1uICIkSEFWRV9NQUNQT1JUUyI7IHRoZW4KICAgICAgICAjIERldGVybWluZSB3aGljaCBn Y2MgdmVyc2lvbiBoYXMgYmVlbiBpbnN0YWxsZWQgKGdjYzExLCBmb3IKICAgICAgICAjIGlu c3RhbmNlKS4gVXNlIHRoZSBsYXRlc3QgdmVyc2lvbiwgaWYgbW9yZSB0aGFuIG9uZSBpcwog ICAgICAgICMgYXZhaWxhYmxlLiAgKFdlIGZpbHRlciBvdXQgdGhlIGdjYzQgcGFja2FnZXMs IGJlY2F1c2UgdGhleQogICAgICAgICMgZG9uJ3Qgc3VwcG9ydCBqaXQsIGFuZCB0aGV5IGhh dmUgbmFtZXMgbGlrZSAiZ2NjNDkiIHRoYXQKICAgICAgICAjIHNvcnQgbGF0ZXIgdGhhbiAi Z2NjMTEiLikKICAgICAgICBQT1JUX1BBQ0tBR0U9JChwb3J0IGluc3RhbGxlZCBhY3RpdmUg fCBncmVwICdeICpnY2NAPDpAMC05QDo+QCogJyB8IFwKICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGF3ayAneyBwcmludCAkMTsgfScgfCBncmVwIC12ICdnY2M0QDw6QDAtOUA6PkAn IHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgc29ydCAtViB8IHRhaWwgLW4gMSkK ICAgICAgICBpZiB0ZXN0IC1uICIkUE9SVF9QQUNLQUdFIjsgdGhlbgogICAgICAgICAgTUFD X0NGTEFHUz0iLUkkKGRpcm5hbWUgJChwb3J0IGNvbnRlbnRzICRQT1JUX1BBQ0tBR0UgfCBc CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBncmVwIGxpYmdj Y2ppdC5oKSkiCiAgICAgICAgICBNQUNfTElCUz0iLUwkKGRpcm5hbWUgJChwb3J0IGNvbnRl bnRzICRQT1JUX1BBQ0tBR0UgfCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBncmVwIGxpYmdjY2ppdC5keWxpYikpIgogICAgICAgIGZpCiAgICAg IGZpCgogICAgICBpZiB0ZXN0IC1uICIkTUFDX0NGTEFHUyIgJiYgdGVzdCAtbiAiJE1BQ19M SUJTIjsgdGhlbgogICAgICAgIENGTEFHUz0iJENGTEFHUyAke01BQ19DRkxBR1N9IgogICAg ICAgIExJQlM9IiRMSUJTICR7TUFDX0xJQlN9IgogICAgICBmaQogICAgZmkKCiAgICAjIENo ZWNrIGlmIGxpYmdjY2ppdCBpcyBhdmFpbGFibGUuCiAgICBBQ19DSEVDS19MSUIoW2djY2pp dF0sIFtnY2Nfaml0X2NvbnRleHRfYWNxdWlyZV0sCiAgICAgIFtdLCBbbGliZ2Njaml0X25v dF9mb3VuZF0pCiAgICBBQ19DSEVDS19IRUFERVJTKFtsaWJnY2NqaXQuaF0sIFtdLCBbbGli Z2Njaml0X2Rldl9ub3RfZm91bmRdKQogICAgIyBDaGVjayBpZiBsaWJnY2NqaXQgcmVhbGx5 IHdvcmtzLgogICAgQUNfUlVOX0lGRUxTRShbbGliZ2Njaml0X3Ntb2tlX3Rlc3RdLCBbXSwg W2xpYmdjY2ppdF9icm9rZW5dKQogICAgSEFWRV9OQVRJVkVfQ09NUD15ZXMKICAgIGNhc2Ug IiR7b3BzeXN9IiBpbgogICAgICAjIG1pbmd3MzIgbG9hZHMgdGhlIGxpYnJhcnkgZHluYW1p Y2FsbHkuCiAgICAgIG1pbmd3MzIpIDs7CiAgICAgICMgT3BlbkJTRCBkb2Vzbid0IGhhdmUg bGliZGwsIGFsbCB0aGUgZnVuY3Rpb25zIGFyZSBpbiBsaWJjCiAgICAgIG5ldGJzZHxvcGVu YnNkKQogICAgICAgIExJQkdDQ0pJVF9MSUJTPSItbGdjY2ppdCIgOzsKICAgICAgZGFyd2lu KQogICAgICAgIExJQkdDQ0pJVF9DRkxBR1M9IiR7TUFDX0NGTEFHU30iCiAgICAgICAgTElC R0NDSklUX0xJQlM9IiR7TUFDX0xJQlN9IC1sZ2Njaml0IC1sZGwiOzsKICAgICAgKikKICAg ICAgICBMSUJHQ0NKSVRfTElCUz0iLWxnY2NqaXQgLWxkbCIgOzsKICAgIGVzYWMKICAgIE5F RURfRFlOTElCPXllcwogICAgQUNfREVGSU5FKFtIQVZFX05BVElWRV9DT01QXSwgWzFdLAog ICAgICBbRGVmaW5lIHRvIDEgaWYgbmF0aXZlIGNvbXBpbGVyIGlzIGF2YWlsYWJsZS5dKQoK ICAgIENGTEFHUz0kU0FWRV9DRkxBR1MKICAgIExJQlM9JFNBVkVfTElCUwpmaQpBQ19ERUZJ TkVfVU5RVU9URUQoW05BVElWRV9FTElTUF9TVUZGSVhdLCBbIi5lbG4iXSwKICBbU3lzdGVt IGV4dGVuc2lvbiBmb3IgbmF0aXZlIGNvbXBpbGVkIGVsaXNwXSkKQUNfU1VCU1QoW0hBVkVf TkFUSVZFX0NPTVBdKQpBQ19TVUJTVChbTElCR0NDSklUX0NGTEFHU10pCkFDX1NVQlNUKFtM SUJHQ0NKSVRfTElCU10pCgpEWU5MSUJfT0JKPQppZiB0ZXN0ICIke05FRURfRFlOTElCfSIg PSB5ZXM7IHRoZW4KICBEWU5MSUJfT0JKPSJkeW5saWIubyIKZmkKQUNfU1VCU1QoW0RZTkxJ Ql9PQkpdKQoKIyMjIFVzZSAtbHBuZyBpZiBhdmFpbGFibGUsIHVubGVzcyAnLS13aXRoLXBu Zz1ubycuCkhBVkVfUE5HPW5vCkxJQlBORz0KUE5HX0NGTEFHUz0KaWYgdGVzdCAiJHt3aXRo X3BuZ30iICE9IG5vOyB0aGVuCiAgIyBtaW5ndzMyIGxvYWRzIHRoZSBsaWJyYXJ5IGR5bmFt aWNhbGx5LgogIGlmIHRlc3QgIiRvcHN5cyIgPSBtaW5ndzMyOyB0aGVuCiAgICBBQ19DSEVD S19IRUFERVIoW3BuZy5oXSwgW0hBVkVfUE5HPXllc10pCiAgZWxpZiB0ZXN0ICIke0hBVkVf WDExfSIgPSAieWVzIiB8fCB0ZXN0ICIke0hBVkVfVzMyfSIgPSAieWVzIiBcCiAgICAgICB8 fCB0ZXN0ICIke0hBVkVfTlN9IiA9ICJ5ZXMiIHx8IHRlc3QgIiR7SEFWRV9CRV9BUFB9IiA9 ICJ5ZXMiIFwKICAgICAgIHx8IHRlc3QgIiR3aW5kb3dfc3lzdGVtIiA9ICJwZ3RrIjsgdGhl bgogICAgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyhbUE5HXSwgW2xpYnBuZyA+PSAxLjAuMF0pCiAg ICBpZiB0ZXN0ICRIQVZFX1BORyA9IHllczsgdGhlbgogICAgICBMSUJQTkc9JFBOR19MSUJT CiAgICBlbHNlCiAgICAgICMgVGVzdCBvbGQgd2F5IGluIGNhc2UgcGtnLWNvbmZpZyBkb2Vz bid0IGhhdmUgaXQgKG9sZGVyIG1hY2hpbmVzKS4KICAgICAgQUNfTVNHX0NIRUNLSU5HKFtm b3IgbGlicG5nIG5vdCBjb25maWd1cmVkIGJ5IHBrZy1jb25maWddKQoKICAgICAgcG5nX2Nm bGFncz1gKGxpYnBuZy1jb25maWcgLS1jZmxhZ3MpIDI+JkFTX01FU1NBR0VfTE9HX0ZEYCAm JgogICAgICBwbmdfbGRmbGFncz1gKGxpYnBuZy1jb25maWcgLS1sZGZsYWdzKSAyPiZBU19N RVNTQUdFX0xPR19GRGAgfHwgewoJIyBsaWJwbmctY29uZmlnIGRvZXMgbm90IHdvcms7IGNv bmZpZ3VyZSBieSBoYW5kLgoJIyBEZWJpYW4gdW5zdGFibGUgYXMgb2YgSnVseSAyMDAzIGhh cyBtdWx0aXBsZSBsaWJwbmdzLCBhbmQgcHV0cyBwbmcuaAoJIyBpbiAvdXNyL2luY2x1ZGUv bGlicG5nLgoJaWYgdGVzdCAtciAvdXNyL2luY2x1ZGUvbGlicG5nL3BuZy5oICYmCgkgICB0 ZXN0ICEgLXIgL3Vzci9pbmNsdWRlL3BuZy5oOyB0aGVuCgkgIHBuZ19jZmxhZ3M9LUkvdXNy L2luY2x1ZGUvbGlicG5nCgllbHNlCgkgIHBuZ19jZmxhZ3M9CglmaQoJcG5nX2xkZmxhZ3M9 Jy1scG5nJwogICAgICB9CiAgICAgIFNBVkVfQ0ZMQUdTPSRDRkxBR1MKICAgICAgU0FWRV9M SUJTPSRMSUJTCiAgICAgIENGTEFHUz0iJENGTEFHUyAkcG5nX2NmbGFncyIKICAgICAgTElC Uz0iJHBuZ19sZGZsYWdzIC1seiAtbG0gJExJQlMiCiAgICAgIEFDX0xJTktfSUZFTFNFKAoJ W0FDX0xBTkdfUFJPR1JBTShbWyNpbmNsdWRlIDxwbmcuaD5dXSwKCSAgIFtbcmV0dXJuICFw bmdfZ2V0X2NoYW5uZWxzICgwLCAwKTtdXSldLAoJW0hBVkVfUE5HPXllcwoJIFBOR19DRkxB R1M9YEFTX0VDSE8oWyIkcG5nX2NmbGFncyJdKSB8IHNlZCAtZSAiJGVkaXRfY2ZsYWdzImAK CSBMSUJQTkc9JHBuZ19sZGZsYWdzXSkKICAgICAgQ0ZMQUdTPSRTQVZFX0NGTEFHUwogICAg ICBMSUJTPSRTQVZFX0xJQlMKICAgICAgQUNfTVNHX1JFU1VMVChbJEhBVkVfUE5HXSkKICAg IGZpCgogICAgIyAkTElCUE5HIHJlcXVpcmVzIGV4cGxpY2l0IC1seiBpbiBzb21lIGNhc2Vz LgogICAgIyBXZSBkb24ndCBrbm93IHdoYXQgdGhvc2UgY2FzZXMgYXJlLCBleGFjdGx5LCBz byBwbGF5IGl0IHNhZmUgYW5kCiAgICAjIGFwcGVuZCAtbHogdG8gYW55IG5vbmVtcHR5ICRM SUJQTkcsIHVubGVzcyB3ZSdyZSBhbHJlYWR5IHVzaW5nIExJQlouCiAgICBjYXNlICIgJExJ QlBORyAiLCRMSUJaIGluCiAgICAgIConIC1seiAnKiwgfCAqJyAnLD8qKSA7OwogICAgICAq KSBMSUJQTkc9IiRMSUJQTkcgLWx6IiA7OwogICAgZXNhYwogIGZpCmZpCmlmIHRlc3QgJEhB VkVfUE5HID0geWVzOyB0aGVuCiAgQUNfREVGSU5FKFtIQVZFX1BOR10sIFsxXSwgW0RlZmlu ZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBwbmcgbGlicmFyeS5dKQoKICBTQVZFX0NGTEFHUz0k Q0ZMQUdTCiAgQ0ZMQUdTPSIkQ0ZMQUdTICRQTkdfQ0ZMQUdTIgogIEFDX0NIRUNLX0RFQ0wo W3BuZ19sb25nam1wXSwKICAgIFtdLAogICAgW0FDX0RFRklORShbUE5HX0RFUFNUUlVDVF0s IFtdLAogICAgICAgW0RlZmluZSB0byBlbXB0eSB0byBzdXBwcmVzcyBkZXByZWNhdGlvbiB3 YXJuaW5ncyB3aGVuIGJ1aWxkaW5nCgl3aXRoIC0tZW5hYmxlLWdjYy13YXJuaW5ncyBhbmQg d2l0aCBsaWJwbmcgdmVyc2lvbnMgYmVmb3JlIDEuNSwKCXdoaWNoIGxhY2sgcG5nX2xvbmdq bXAuXSldLAogICAgW1sjaW5jbHVkZSA8cG5nLmg+CiAgICBdXSkKICBDRkxBR1M9JFNBVkVf Q0ZMQUdTCmZpCkFDX1NVQlNUKFtMSUJQTkddKQpBQ19TVUJTVChbUE5HX0NGTEFHU10pCgoj IyMgVXNlIC1sdGlmZiBpZiBhdmFpbGFibGUsIHVubGVzcyAnLS13aXRoLXRpZmY9bm8nLgoj IyMgbWluZ3czMiBkb2Vzbid0IHVzZSAtbHRpZmYsIHNpbmNlIGl0IGxvYWRzIHRoZSBsaWJy YXJ5IGR5bmFtaWNhbGx5LgpIQVZFX1RJRkY9bm8KTElCVElGRj0KaWYgdGVzdCAiJHtvcHN5 c30iID0gIm1pbmd3MzIiOyB0aGVuCiAgaWYgdGVzdCAiJHt3aXRoX3RpZmZ9IiAhPSAibm8i OyB0aGVuCiAgICBBQ19DSEVDS19IRUFERVIoW3RpZmZpby5oXSwgW0hBVkVfVElGRj15ZXNd LCBbSEFWRV9USUZGPW5vXSkKICBmaQogIGlmIHRlc3QgIiR7SEFWRV9USUZGfSIgPSAieWVz IjsgdGhlbgogICAgQUNfREVGSU5FKFtIQVZFX1RJRkZdLCBbMV0sCiAgICAgIFtEZWZpbmUg dG8gMSBpZiB5b3UgaGF2ZSB0aGUgdGlmZiBsaWJyYXJ5ICgtbHRpZmYpLl0pCiAgZmkKZWxp ZiB0ZXN0ICIke0hBVkVfWDExfSIgPSAieWVzIiB8fCB0ZXN0ICIke0hBVkVfVzMyfSIgPSAi eWVzIiBcCiAgICAgfHwgdGVzdCAiJHtIQVZFX05TfSIgPSAieWVzIiB8fCB0ZXN0ICIke0hB VkVfQkVfQVBQfSIgPSAieWVzIiBcCiAgICAgfHwgdGVzdCAiJHdpbmRvd19zeXN0ZW0iID0g InBndGsiOyB0aGVuCiAgaWYgdGVzdCAiJHt3aXRoX3RpZmZ9IiAhPSAibm8iOyB0aGVuCiAg ICBBQ19DSEVDS19IRUFERVIoW3RpZmZpby5oXSwKICAgICAgW3RpZmZsaWJzPSItbHogLWxt IgogICAgICAjIEF0IGxlYXN0IG9uZSB0aWZmIHBhY2thZ2UgcmVxdWlyZXMgdGhlIGpwZWcg bGlicmFyeS4KICAgICAgaWYgdGVzdCAiJHtIQVZFX0pQRUd9IiA9IHllczsgdGhlbiB0aWZm bGlicz0iLWxqcGVnICR0aWZmbGlicyI7IGZpCiAgICAgIEFDX0NIRUNLX0xJQihbdGlmZl0s IFtUSUZGR2V0VmVyc2lvbl0sIFtIQVZFX1RJRkY9eWVzXSwgW10sCglbJHRpZmZsaWJzXSld KQogIGZpCgogIGlmIHRlc3QgIiR7SEFWRV9USUZGfSIgPSAieWVzIjsgdGhlbgogICAgQUNf REVGSU5FKFtIQVZFX1RJRkZdLCBbMV0sCiAgICAgIFtEZWZpbmUgdG8gMSBpZiB5b3UgaGF2 ZSB0aGUgdGlmZiBsaWJyYXJ5ICgtbHRpZmYpLl0pCiAgICBkbmwgRklYTUUgLWx6IC1sbSwg YXMgcGVyIGxpYnBuZz8KICAgIExJQlRJRkY9LWx0aWZmCiAgZmkKZmkKQUNfU1VCU1QoW0xJ QlRJRkZdKQoKIyMjIFVzZSAtbGdpZiBvciAtbHVuZ2lmIGlmIGF2YWlsYWJsZSwgdW5sZXNz ICctLXdpdGgtZ2lmPW5vJy4KIyMjIG1pbmd3MzIgZG9lc24ndCB1c2UgLWxnaWYvLWx1bmdp Ziwgc2luY2UgaXQgbG9hZHMgdGhlIGxpYnJhcnkgZHluYW1pY2FsbHkuCkhBVkVfR0lGPW5v CkxJQkdJRj0KaWYgdGVzdCAiJHtvcHN5c30iID0gIm1pbmd3MzIiOyB0aGVuCiAgaWYgdGVz dCAiJHt3aXRoX2dpZn0iICE9ICJubyI7IHRoZW4KICAgIEFDX0NIRUNLX0hFQURFUihbZ2lm X2xpYi5oXSwgW0hBVkVfR0lGPXllc10sIFtIQVZFX0dJRj1ub10pCiAgZmkKICBpZiB0ZXN0 ICIke0hBVkVfR0lGfSIgPSAieWVzIjsgdGhlbgogICAgQUNfREVGSU5FKFtIQVZFX0dJRl0s IFsxXSwKICAgICAgW0RlZmluZSB0byAxIGlmIHlvdSBoYXZlIGEgZ2lmIChvciB1bmdpZikg bGlicmFyeS5dKQogIGZpCmVsaWYgdGVzdCAiJHtIQVZFX1gxMX0iID0gInllcyIgJiYgdGVz dCAiJHt3aXRoX2dpZn0iICE9ICJubyIgXAogICAgICAgIHx8IHRlc3QgIiR7SEFWRV9XMzJ9 IiA9ICJ5ZXMiIHx8IHRlc3QgIiR7SEFWRV9OU30iID0gInllcyIgXAoJfHwgdGVzdCAiJHtI QVZFX0JFX0FQUH0iID0gInllcyIgfHwgdGVzdCAiJHdpbmRvd19zeXN0ZW0iID0gInBndGsi IFwKCSYmIHRlc3QgIiR7d2l0aF9naWZ9IiAhPSAibm8iOyB0aGVuCiAgQUNfQ0hFQ0tfSEVB REVSKFtnaWZfbGliLmhdLAojIEVHaWZQdXRFeHRlbnNpb25MYXN0IG9ubHkgZXhpc3RzIGZy b20gdmVyc2lvbiBsaWJ1bmdpZi00LjEuMGIxLgojIEVhcmxpZXIgdmVyc2lvbnMgY2FuIGNy YXNoIEVtYWNzLCBidXQgdmVyc2lvbiA1LjAgcmVtb3ZlcyBFR2lmUHV0RXh0ZW5zaW9uTGFz dC4KICAgIFtBQ19DSEVDS19MSUIoW2dpZl0sIFtHaWZNYWtlTWFwT2JqZWN0XSwgW0hBVkVf R0lGPXllc10sCglbQUNfQ0hFQ0tfTElCKFtnaWZdLCBbRUdpZlB1dEV4dGVuc2lvbkxhc3Rd LAoJICAgW0hBVkVfR0lGPXllc10sCgkgICBbSEFWRV9HSUY9bWF5YmVdKV0pXSkKCiAgaWYg dGVzdCAiJEhBVkVfR0lGIiA9IHllczsgdGhlbgogICAgTElCR0lGPS1sZ2lmCiAgZWxpZiB0 ZXN0ICIkSEFWRV9HSUYiID0gbWF5YmU7IHRoZW4KIyBJZiBnaWZfbGliLmggYnV0IG5vIGxp YmdpZiwgdHJ5IGxpYnVuZ2lmLgogICAgQUNfQ0hFQ0tfTElCKFt1bmdpZl0sIFtFR2lmUHV0 RXh0ZW5zaW9uTGFzdF0sCiAgICAgIFtIQVZFX0dJRj15ZXNdLAogICAgICBbSEFWRV9HSUY9 bm9dKQogICAgdGVzdCAiJEhBVkVfR0lGIiA9IHllcyAmJiBMSUJHSUY9LWx1bmdpZgogIGZp CgogIGlmIHRlc3QgIiR7SEFWRV9HSUZ9IiA9ICJ5ZXMiOyB0aGVuCiAgICBBQ19ERUZJTkUo W0hBVkVfR0lGXSwgWzFdLAogICAgICBbRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgYSBnaWYg KG9yIHVuZ2lmKSBsaWJyYXJ5Ll0pCiAgZmkKZmkKQUNfU1VCU1QoW0xJQkdJRl0pCgpkbmwg Q2hlY2sgZm9yIHJlcXVpcmVkIGxpYnJhcmllcy4KTUlTU0lORz0KV0lUSF9JRkFWQUlMQUJM RT0KaWYgdGVzdCAiJHtIQVZFX1gxMX0iID0gInllcyI7IHRoZW4KICBjYXNlICR3aXRoX3hw bSwkSEFWRV9YUE0gaW4KICAgIG5vLCogfCBpZmF2YWlsYWJsZSwqIHwgKix5ZXMpIDs7CiAg ICAqKSBNSVNTSU5HPSJsaWJYcG0iCiAgICAgICBXSVRIX0lGQVZBSUxBQkxFPSItLXdpdGgt eHBtPWlmYXZhaWxhYmxlIjs7CiAgZXNhYwogIGNhc2UgJHdpdGhfanBlZywkSEFWRV9KUEVH IGluCiAgICBubywqIHwgaWZhdmFpbGFibGUsKiB8ICoseWVzKSA7OwogICAgKikgTUlTU0lO Rz0iJE1JU1NJTkcgbGlianBlZyIKICAgICAgIFdJVEhfSUZBVkFJTEFCTEU9IiRXSVRIX0lG QVZBSUxBQkxFIC0td2l0aC1qcGVnPWlmYXZhaWxhYmxlIjs7CiAgZXNhYwogIGNhc2UgJHdp dGhfcG5nLCRIQVZFX1BORyBpbgogICAgbm8sKiB8IGlmYXZhaWxhYmxlLCogfCAqLHllcykg OzsKICAgICopIE1JU1NJTkc9IiRNSVNTSU5HIGxpYnBuZyIKICAgICAgIFdJVEhfSUZBVkFJ TEFCTEU9IiRXSVRIX0lGQVZBSUxBQkxFIC0td2l0aC1wbmc9aWZhdmFpbGFibGUiOzsKICBl c2FjCiAgY2FzZSAkd2l0aF9naWYsJEhBVkVfR0lGIGluCiAgICBubywqIHwgaWZhdmFpbGFi bGUsKiB8ICoseWVzKSA7OwogICAgKikgTUlTU0lORz0iJE1JU1NJTkcgbGliZ2lmL2xpYnVu Z2lmIgogICAgICAgV0lUSF9JRkFWQUlMQUJMRT0iJFdJVEhfSUZBVkFJTEFCTEUgLS13aXRo LWdpZj1pZmF2YWlsYWJsZSI7OwogIGVzYWMKICBjYXNlICR3aXRoX3RpZmYsJEhBVkVfVElG RiBpbgogICAgbm8sKiB8IGlmYXZhaWxhYmxlLCogfCAqLHllcykgOzsKICAgICopIE1JU1NJ Tkc9IiRNSVNTSU5HIGxpYnRpZmYiCiAgICAgICBXSVRIX0lGQVZBSUxBQkxFPSIkV0lUSF9J RkFWQUlMQUJMRSAtLXdpdGgtdGlmZj1pZmF2YWlsYWJsZSI7OwogIGVzYWMKZmkKY2FzZSAk d2l0aF9nbnV0bHMsJEhBVkVfR05VVExTIGluCiAgbm8sKiB8IGlmYXZhaWxhYmxlLCogfCAq LHllcykgOzsKICAqKSBNSVNTSU5HPSIkTUlTU0lORyBnbnV0bHMiCiAgICAgV0lUSF9JRkFW QUlMQUJMRT0iJFdJVEhfSUZBVkFJTEFCTEUgLS13aXRoLWdudXRscz1pZmF2YWlsYWJsZSI7 Owplc2FjCmNhc2UgJHdpdGhfanNvbiwkSEFWRV9KU09OIGluCiAgbm8sKiB8IGlmYXZhaWxh YmxlLCogfCAqLHllcykgOzsKICAqKSBNSVNTSU5HPSIkTUlTU0lORyBqc29uIgogICAgIFdJ VEhfSUZBVkFJTEFCTEU9IiRXSVRIX0lGQVZBSUxBQkxFIC0td2l0aC1qc29uPWlmYXZhaWxh YmxlIjs7CmVzYWMKY2FzZSAkd2l0aF90cmVlX3NpdHRlciwkSEFWRV9UUkVFX1NJVFRFUiBp bgogIG5vLCogfCBpZmF2YWlsYWJsZSwqIHwgKix5ZXMpIDs7CiAgKikgTUlTU0lORz0iJE1J U1NJTkcgdHJlZS1zaXR0ZXIiCiAgICAgV0lUSF9JRkFWQUlMQUJMRT0iJFdJVEhfSUZBVkFJ TEFCTEUgLS13aXRoLXRyZWUtc2l0dGVyPWlmYXZhaWxhYmxlIjs7CmVzYWMKCmlmIHRlc3Qg Ilgke01JU1NJTkd9IiAhPSBYOyB0aGVuCiAgIyBJZiB3ZSBoYXZlIGEgbWlzc2luZyBsaWJy YXJ5LCBhbmQgd2UgZG9uJ3QgaGF2ZSBwa2ctY29uZmlnIGluc3RhbGxlZCwKICAjIHRoZSBt aXNzaW5nIHBrZy1jb25maWcgbWF5IGJlIHRoZSByZWFzb24uICBHaXZlIHRoZSB1c2VyIGEg aGludC4KICBpZiB0ZXN0ICJYJHtQS0dfQ09ORklHfSIgPSBYOyB0aGVuCiAgICBBQ19NU0df V0FSTihbVW5hYmxlIHRvIGxvY2F0ZSBhIHVzYWJsZSBwa2ctY29uZmlnXSkKICBmaQogIEFD X01TR19FUlJPUihbVGhlIGZvbGxvd2luZyByZXF1aXJlZCBsaWJyYXJpZXMgd2VyZSBub3Qg Zm91bmQ6CiAgICAkTUlTU0lORwpNYXliZSBzb21lIGRldmVsb3BtZW50IGxpYnJhcmllcy9w YWNrYWdlcyBhcmUgbWlzc2luZz8KVG8gYnVpbGQgYW55d2F5LCBnaXZlOgogICAgJFdJVEhf SUZBVkFJTEFCTEUKYXMgb3B0aW9ucyB0byBjb25maWd1cmUuXSkKZmkKCiMjIyBVc2UgLWxn cG0gaWYgYXZhaWxhYmxlLCB1bmxlc3MgJy0td2l0aC1ncG09bm8nLgpIQVZFX0dQTT1ubwpM SUJHUE09CmlmIHRlc3QgIiR7d2l0aF9ncG19IiAhPSAibm8iOyB0aGVuCiAgQUNfQ0hFQ0tf SEVBREVSKFtncG0uaF0sCiAgICBbQUNfQ0hFQ0tfTElCKFtncG1dLCBbR3BtX09wZW5dLCBb SEFWRV9HUE09eWVzXSldKQoKICBpZiB0ZXN0ICIke0hBVkVfR1BNfSIgPSAieWVzIjsgdGhl bgogICAgQUNfREVGSU5FKFtIQVZFX0dQTV0sIFsxXSwKICAgICAgW0RlZmluZSB0byAxIGlm IHlvdSBoYXZlIHRoZSBncG0gbGlicmFyeSAoLWxncG0pLl0pCiAgICBMSUJHUE09LWxncG0K ICBmaQpmaQpBQ19TVUJTVChbTElCR1BNXSkKCmRubCBDaGVjayBmb3IgbWFsbG9jL21hbGxv Yy5oIG9uIGRhcndpbgpBQ19DSEVDS19IRUFERVJTX09OQ0UoW21hbGxvYy9tYWxsb2MuaF0p CgpHTlVTVEVQX0NGTEFHUz0KIyMjIFVzZSBOZVhUc3RlcCBBUEkgdG8gaW1wbGVtZW50IEdV SS4KaWYgdGVzdCAiJHtIQVZFX05TfSIgPSAieWVzIjsgdGhlbgogIEFDX0RFRklORShbSEFW RV9OU10sIFsxXSwKICAgIFtEZWZpbmUgdG8gMSBpZiB5b3UgYXJlIHVzaW5nIHRoZSBOZVhU c3RlcCBBUEksCiAgICAgZWl0aGVyIEdOVXN0ZXAgb3IgQ29jb2Egb24gbWFjT1MuXSkKICBp ZiB0ZXN0ICIke05TX0lNUExfQ09DT0F9IiA9ICJ5ZXMiOyB0aGVuCiAgICBBQ19ERUZJTkUo W05TX0lNUExfQ09DT0FdLCBbMV0sCiAgICAgIFtEZWZpbmUgdG8gMSBpZiB5b3UgYXJlIHVz aW5nIE5TIHdpbmRvd2luZyB1bmRlciBtYWNPUy5dKQogIGZpCiAgaWYgdGVzdCAiJHtOU19J TVBMX0dOVVNURVB9IiA9ICJ5ZXMiOyB0aGVuCiAgICBBQ19ERUZJTkUoW05TX0lNUExfR05V U1RFUF0sIFsxXSwKICAgICAgW0RlZmluZSB0byAxIGlmIHlvdSBhcmUgdXNpbmcgTlMgd2lu ZG93aW5nIHVuZGVyIEdOVXN0ZXAuXSkKICAgIGlmIHRlc3QgJE5TX0dOVVNURVBfQ09ORklH ICE9IHllczsgdGhlbgogICAgICAjIFNlZSBhbHNvIC5tLm8gcnVsZSBpbiBzcmMvTWFrZWZp bGUuaW4uICAqLwogICAgICAjIEZJWE1FOiBhcmUgYWxsIHRoZXNlIGZsYWdzIHJlYWxseSBu ZWVkZWQ/ICBEb2N1bWVudCBoZXJlIHdoeS4gICovCiAgICAgIEdOVVNURVBfQ0ZMQUdTPSIt RF9SRUVOVFJBTlQgLWZQSUMgLWZuby1zdHJpY3QtYWxpYXNpbmcgLUkke0dOVVNURVBfU1lT VEVNX0hFQURFUlN9ICR7R05VU1RFUF9MT0NBTF9IRUFERVJTfSIKICAgICAgIyMgRXh0cmEg Q0ZMQUdTIGFwcGxpZWQgdG8gc3JjLyoubSBmaWxlcy4KICAgICAgR05VX09CSkNfQ0ZMQUdT PSIkR05VX09CSkNfQ0ZMQUdTIC1mZ251LXJ1bnRpbWUgLVduby1pbXBvcnQgLWZjb25zdGFu dC1zdHJpbmctY2xhc3M9TlNDb25zdGFudFN0cmluZyAtREdOVVNURVBfQkFTRV9MSUJSQVJZ PTEgLURHTlVfR1VJX0xJQlJBUlk9MSAtREdOVV9SVU5USU1FPTEgLURHU1dBUk4gLURHU0RJ QUdOT1NFIgogICAgZmkKICBmaQogIE9USEVSX0ZJTEVTPW5zLWFwcApmaQoKIyMjIFVzZSBz ZXNzaW9uIG1hbmFnZW1lbnQgKC1sU00gLWxJQ0UpIGlmIGF2YWlsYWJsZQpIQVZFX1hfU009 bm8KTElCWFNNPQppZiB0ZXN0ICIke0hBVkVfWDExfSIgPSAieWVzIjsgdGhlbgogIEFDX0NI RUNLX0hFQURFUihbWDExL1NNL1NNbGliLmhdLAogICAgW0FDX0NIRUNLX0xJQihbU01dLCBb U21jT3BlbkNvbm5lY3Rpb25dLCBbSEFWRV9YX1NNPXllc10sIFtdLCBbLWxJQ0VdKV0pCgog IGlmIHRlc3QgIiR7SEFWRV9YX1NNfSIgPSAieWVzIjsgdGhlbgogICAgQUNfREVGSU5FKFtI QVZFX1hfU01dLCBbMV0sCiAgICAgIFtEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgU00g bGlicmFyeSAoLWxTTSkuXSkKICAgIExJQlhTTT0iLWxTTSAtbElDRSIKICBmaQpmaQpBQ19T VUJTVChbTElCWFNNXSkKCiMjIyBVc2UgWFJhbmRyICgtbFhyYW5kcikgaWYgYXZhaWxhYmxl CkhBVkVfWFJBTkRSPW5vCmlmIHRlc3QgIiR7SEFWRV9YMTF9IiA9ICJ5ZXMiOyB0aGVuCiAg WFJBTkRSX1JFUVVJUkVEPTEuMi4yCiAgWFJBTkRSX01PRFVMRVM9InhyYW5kciA+PSAkWFJB TkRSX1JFUVVJUkVEIgogIEVNQUNTX0NIRUNLX01PRFVMRVMoW1hSQU5EUl0sIFskWFJBTkRS X01PRFVMRVNdKQogIGlmIHRlc3QgJEhBVkVfWFJBTkRSID0gbm87IHRoZW4KICAgICMgVGVz dCBvbGQgd2F5IGluIGNhc2UgcGtnLWNvbmZpZyBkb2Vzbid0IGhhdmUgaXQgKG9sZGVyIG1h Y2hpbmVzKS4KICAgICMgSW5jbHVkZSBYcmVuZGVyLmggYnkgaGFuZCB0byB3b3JrIGFyb3Vu ZCBidWcgaW4gb2xkZXIgWHJhbmRyLmgKICAgICMgKGUuZy4gUkhFTDUpIGFuZCBzaWxlbmNl IChoYXJtbGVzcykgY29uZmlndXJlIHdhcm5pbmcgKGJ1ZyMxODQ2NSkuCiAgICBBQ19DSEVD S19IRUFERVIoW1gxMS9leHRlbnNpb25zL1hyYW5kci5oXSwKICAgICAgW0FDX0NIRUNLX0xJ QihbWHJhbmRyXSwgW1hSUkdldFNjcmVlblJlc291cmNlc10sIFtIQVZFX1hSQU5EUj15ZXNd KV0sCiAgICAgIFtdLCBbQUNfSU5DTFVERVNfREVGQVVMVAojaW5jbHVkZSA8WDExL2V4dGVu c2lvbnMvWHJlbmRlci5oPl0pCiAgICBpZiB0ZXN0ICRIQVZFX1hSQU5EUiA9IHllczsgdGhl bgogICAgICBYUkFORFJfTElCUz0tbFhyYW5kcgogICAgZmkKICBmaQogIGlmIHRlc3QgJEhB VkVfWFJBTkRSID0geWVzOyB0aGVuCiAgICBBQ19ERUZJTkUoW0hBVkVfWFJBTkRSXSwgWzFd LAogICAgICBbRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIFhSYW5kciBleHRlbnNpb24u XSkKICBmaQpmaQpBQ19TVUJTVChbWFJBTkRSX0NGTEFHU10pCkFDX1NVQlNUKFtYUkFORFJf TElCU10pCgojIyMgVXNlIFhpbmVyYW1hICgtbFhpbmVyYW1hKSBpZiBhdmFpbGFibGUKSEFW RV9YSU5FUkFNQT1ubwppZiB0ZXN0ICIke0hBVkVfWDExfSIgPSAieWVzIjsgdGhlbgogIFhJ TkVSQU1BX1JFUVVJUkVEPTEuMC4yCiAgWElORVJBTUFfTU9EVUxFUz0ieGluZXJhbWEgPj0g JFhJTkVSQU1BX1JFUVVJUkVEIgogIEVNQUNTX0NIRUNLX01PRFVMRVMoW1hJTkVSQU1BXSwg WyRYSU5FUkFNQV9NT0RVTEVTXSkKICBpZiB0ZXN0ICRIQVZFX1hJTkVSQU1BID0gbm87IHRo ZW4KICAgICMgVGVzdCBvbGQgd2F5IGluIGNhc2UgcGtnLWNvbmZpZyBkb2Vzbid0IGhhdmUg aXQgKG9sZGVyIG1hY2hpbmVzKS4KICAgIEFDX0NIRUNLX0hFQURFUihbWDExL2V4dGVuc2lv bnMvWGluZXJhbWEuaF0sCiAgICAgIFtBQ19DSEVDS19MSUIoW1hpbmVyYW1hXSwgW1hpbmVy YW1hUXVlcnlFeHRlbnNpb25dLAoJIFtIQVZFX1hJTkVSQU1BPXllc10pXSkKICAgIGlmIHRl c3QgJEhBVkVfWElORVJBTUEgPSB5ZXM7IHRoZW4KICAgICAgWElORVJBTUFfTElCUz0tbFhp bmVyYW1hCiAgICBmaQogIGZpCiAgaWYgdGVzdCAkSEFWRV9YSU5FUkFNQSA9IHllczsgdGhl bgogICAgQUNfREVGSU5FKFtIQVZFX1hJTkVSQU1BXSwgWzFdLAogICAgICBbRGVmaW5lIHRv IDEgaWYgeW91IGhhdmUgdGhlIFhpbmVyYW1hIGV4dGVuc2lvbi5dKQogIGZpCmZpCkFDX1NV QlNUKFtYSU5FUkFNQV9DRkxBR1NdKQpBQ19TVUJTVChbWElORVJBTUFfTElCU10pCgojIyMg VXNlIFhmaXhlcyAoLWxYZml4ZXMpIGlmIGF2YWlsYWJsZQpIQVZFX1hGSVhFUz1ubwppZiB0 ZXN0ICIke0hBVkVfWDExfSIgPSAieWVzIjsgdGhlbgogIFhGSVhFU19SRVFVSVJFRD0xLjAu MAogIFhGSVhFU19NT0RVTEVTPSJ4Zml4ZXMgPj0gJFhGSVhFU19SRVFVSVJFRCIKICBFTUFD U19DSEVDS19NT0RVTEVTKFtYRklYRVNdLCBbJFhGSVhFU19NT0RVTEVTXSkKICBpZiB0ZXN0 ICRIQVZFX1hGSVhFUyA9IG5vOyB0aGVuCiAgICAjIFRlc3Qgb2xkIHdheSBpbiBjYXNlIHBr Zy1jb25maWcgZG9lc24ndCBoYXZlIGl0IChvbGRlciBtYWNoaW5lcykuCiAgICBBQ19DSEVD S19IRUFERVIoW1gxMS9leHRlbnNpb25zL1hmaXhlcy5oXSwKICAgICAgW0FDX0NIRUNLX0xJ QihbWGZpeGVzXSwgW1hGaXhlc0hpZGVDdXJzb3JdLCBbSEFWRV9YRklYRVM9eWVzXSldKQog ICAgaWYgdGVzdCAkSEFWRV9YRklYRVMgPSB5ZXM7IHRoZW4KICAgICAgWEZJWEVTX0xJQlM9 LWxYZml4ZXMKICAgIGZpCiAgZmkKICBpZiB0ZXN0ICRIQVZFX1hGSVhFUyA9IHllczsgdGhl bgogICAgQUNfREVGSU5FKFtIQVZFX1hGSVhFU10sIFsxXSwKICAgICAgW0RlZmluZSB0byAx IGlmIHlvdSBoYXZlIHRoZSBYZml4ZXMgZXh0ZW5zaW9uLl0pCiAgZmkKZmkKQUNfU1VCU1Qo W1hGSVhFU19DRkxBR1NdKQpBQ19TVUJTVChbWEZJWEVTX0xJQlNdKQoKIyMgVXNlIFhJbnB1 dCAyLjAgaWYgYXZhaWxhYmxlCkhBVkVfWElOUFVUMj1ubwppZiB0ZXN0ICIke0hBVkVfWDEx fSIgPSAieWVzIiAmJiB0ZXN0ICIke3dpdGhfeGlucHV0Mn0iICE9ICJubyI7IHRoZW4KICAg RU1BQ1NfQ0hFQ0tfTU9EVUxFUyhbWElOUFVUXSwgW3hpXSkKICAgaWYgdGVzdCAkSEFWRV9Y SU5QVVQgPSB5ZXM7IHRoZW4KICAgICAjIE5vdyBjaGVjayBmb3IgWElucHV0Mi5oCiAgICAg QUNfQ0hFQ0tfSEVBREVSKFtYMTEvZXh0ZW5zaW9ucy9YSW5wdXQyLmhdLAogICAgICAgW0FD X0NIRUNLX0xJQihbWGldLCBbWElHcmFiQnV0dG9uXSwgW0hBVkVfWElOUFVUMj15ZXNdKV0p CiAgIGZpCiAgIGlmIHRlc3QgJEhBVkVfWElOUFVUMiA9IHllczsgdGhlbgogICAgIEFDX0RF RklORShbSEFWRV9YSU5QVVQyXSwgWzFdLAogICAgICAgW0RlZmluZSB0byAxIGlmIHRoZSBY IElucHV0IEV4dGVuc2lvbiB2ZXJzaW9uIDIuMCBvciBsYXRlciBpcyBwcmVzZW50Ll0pCiAg ICAgaWYgdGVzdCAiJFVTRV9HVEtfVE9PTEtJVCIgPSAiR1RLMiI7IHRoZW4KICAgICAgIEFD X01TR19XQVJOKFtZb3UgYXJlIGJ1aWxkaW5nIEVtYWNzIHdpdGggR1RLKyAyIGFuZCB0aGUg WCBJbnB1dCBFeHRlbnNpb24gdmVyc2lvbiAyLgpUaGlzIG1pZ2h0IGxlYWQgdG8gcHJvYmxl bXMgaWYgeW91ciB2ZXJzaW9uIG9mIEdUSysgaXMgbm90IGJ1aWx0IHdpdGggc3VwcG9ydCBm b3IgWElucHV0IDIuXSkKICAgICBmaQoKICAgICAjIE5vdyBjaGVjayBmb3Igc29tZSBtZW1i ZXJzICh3aGljaCB1c2VkIGluIGNvbmp1bmN0aW9uIHdpdGgKICAgICAjIHByb3RvY29sIGRl ZmluaXRpb25zKSBjYW4gYmUgdXNlZCB0byBkZXRlcm1pbmUgdGhlIHZlcnNpb24gb2YKICAg ICAjIFhJbnB1dCBzdXBwb3J0ZWQuCiAgICAgQUNfQ0hFQ0tfTUVNQkVSUyhbWElTY3JvbGxD bGFzc0luZm8udHlwZSwgWElUb3VjaENsYXNzSW5mby50eXBlLAogICAgICAgWElCYXJyaWVy UmVsZWFzZVBvaW50ZXJJbmZvLmRldmljZWlkLCBYSUdlc3R1cmVDbGFzc0luZm8udHlwZV0s CiAgICAgICBbXSwgW10sIFsjaW5jbHVkZSA8WDExL2V4dGVuc2lvbnMvWElucHV0Mi5oPl0p CiAgIGZpCmZpCkFDX1NVQlNUKFtYSU5QVVRfQ0ZMQUdTXSkKQUNfU1VCU1QoW1hJTlBVVF9M SUJTXSkKClhTWU5DX0xJQlM9ClhTWU5DX0NGTEFHUz0KSEFWRV9YU1lOQz1ubwppZiB0ZXN0 ICIke0hBVkVfWDExfSIgPSAieWVzIjsgdGhlbgogICBBQ19DSEVDS19IRUFERVIoW1gxMS9l eHRlbnNpb25zL3N5bmMuaF0sCiAgICAgW0FDX0NIRUNLX0xJQihbWGV4dF0sIFtYU3luY1F1 ZXJ5RXh0ZW5zaW9uXSwgW0hBVkVfWFNZTkM9eWVzXSldLAogICAgIFtdLCBbI2luY2x1ZGUg PFgxMS9YbGliLmg+XSkKCiAgaWYgdGVzdCAiJHtIQVZFX1hTWU5DfSIgPSAieWVzIjsgdGhl bgogICAgQUNfREVGSU5FKFtIQVZFX1hTWU5DXSwgWzFdLAogICAgICBbRGVmaW5lIHRvIDEg aWYgdGhlIFggU3luY2hyb25pemF0aW9uIEV4dGVuc2lvbiBpcyBhdmFpbGFibGUuXSkKICAg IFhTWU5DX0xJQlM9Ii1sWGV4dCIKICAgIE9MRExJQlM9IiRMSUJTIgogICAgTElCUz0iLWxY ZXh0ICRMSUJTIiAjIFNldCB0aGlzIHRlbXBvcmFyaWx5IGZvciBBQ19DSEVDS19GVU5DCiAg ICBBQ19DSEVDS19GVU5DUyhbWFN5bmNUcmlnZ2VyRmVuY2VdKSAjIENoZWNrIGZvciB2ZXJz aW9uIDMuMQogICAgTElCUz0iJE9MRExJQlMiCiAgZmkKZmkKQUNfU1VCU1QoW1hTWU5DX0xJ QlNdKQpBQ19TVUJTVChbWFNZTkNfQ0ZMQUdTXSkKCiMjIyBVc2UgWGRiZSAoLWxYZGJlKSBp ZiBhdmFpbGFibGUKSEFWRV9YREJFPW5vCmlmIHRlc3QgIiR7SEFWRV9YMTF9IiA9ICJ5ZXMi OyB0aGVuCiAgaWYgdGVzdCAiJHt3aXRoX3hkYmV9IiAhPSAibm8iOyB0aGVuCiAgICBBQ19D SEVDS19IRUFERVIoW1gxMS9leHRlbnNpb25zL1hkYmUuaF0sCiAgICAgIFtBQ19DSEVDS19M SUIoW1hleHRdLCBbWGRiZUFsbG9jYXRlQmFja0J1ZmZlck5hbWVdLCBbSEFWRV9YREJFPXll c10pXSwKICAgICAgW10sCiAgICAgIFsjaW5jbHVkZSA8WDExL1hsaWIuaD4KICAgICAgXSkK ICBmaQogIGlmIHRlc3QgJEhBVkVfWERCRSA9IHllczsgdGhlbgogICAgWERCRV9MSUJTPS1s WGV4dAogIGZpCiAgaWYgdGVzdCAkSEFWRV9YREJFID0geWVzOyB0aGVuCiAgICBBQ19ERUZJ TkUoW0hBVkVfWERCRV0sIFsxXSwgW0RlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBYZGJl IGV4dGVuc2lvbi5dKQogIGZpCmZpCkFDX1NVQlNUKFtYREJFX0NGTEFHU10pCkFDX1NVQlNU KFtYREJFX0xJQlNdKQoKIyMjIFVzZSB0aGUgTm9ucmVjdGFuZ3VsYXIgV2luZG93IFNoYXBl IGV4dGVuc2lvbiBpZiBhdmFpbGFibGUuCkhBVkVfWFNIQVBFPW5vCkhBVkVfWENCX1NIQVBF PW5vCmlmIHRlc3QgIiR7SEFWRV9YMTF9IiA9ICJ5ZXMiOyB0aGVuCiAgQUNfQ0hFQ0tfSEVB REVSKFtYMTEvZXh0ZW5zaW9ucy9zaGFwZS5oXSwKICAgIFtBQ19DSEVDS19MSUIoW1hleHRd LCBbWFNoYXBlUXVlcnlWZXJzaW9uXSwgW0hBVkVfWFNIQVBFPXllc10pXSwKICAgIFtdLAog ICAgWyNpbmNsdWRlIDxYMTEvZXh0ZW5zaW9ucy9zaGFwZS5oPgogICAgXSkKICBpZiB0ZXN0 ICRIQVZFX1hTSEFQRSA9IHllczsgdGhlbgogICAgWFNIQVBFX0xJQlM9LWxYZXh0CiAgICBB Q19DSEVDS19IRUFERVIoW3hjYi9zaGFwZS5oXSwKICAgICAgW0FDX0NIRUNLX0xJQihbeGNi LXNoYXBlXSwgW3hjYl9zaGFwZV9jb21iaW5lXSwgW0hBVkVfWENCX1NIQVBFPXllc10pXSwK ICAgICAgW10sCiAgICAgIFsjaW5jbHVkZSA8eGNiL3NoYXBlLmg+XSkKCiAgICBpZiB0ZXN0 ICRIQVZFX1hDQl9TSEFQRSA9IHllcyAmJiB0ZXN0ICIkWENCX0xJQlMiICE9ICIiOyB0aGVu CiAgICAgIFhTSEFQRV9MSUJTPSIkWFNIQVBFX0xJQlMgLWx4Y2Itc2hhcGUiCiAgICAgIEFD X0RFRklORShbSEFWRV9YQ0JfU0hBUEVdLCBbMV0sCglbRGVmaW5lIHRvIDEgaWYgWENCIHN1 cHBvcnRzIHRoZQoJIE5vbnJlY3Rhbmd1bGFyIFdpbmRvdyBTaGFwZSBleHRlbnNpb24uXSkK ICAgIGZpCiAgZmkKICBpZiB0ZXN0ICRIQVZFX1hTSEFQRSA9IHllczsgdGhlbgogICAgQUNf REVGSU5FKFtIQVZFX1hTSEFQRV0sIFsxXSwKICAgICAgW0RlZmluZSB0byAxIGlmIHlvdSBo YXZlIHRoZSBOb25yZWN0YW5ndWxhciBXaW5kb3cgU2hhcGUgZXh0ZW5zaW9uLl0pCiAgZmkK ZmkKQUNfU1VCU1QoW1hTSEFQRV9DRkxBR1NdKQpBQ19TVUJTVChbWFNIQVBFX0xJQlNdKQoK IyMjIFVzZSBYY29tcG9zaXRlICgtbFhjb21wb3NpdGUpIGlmIGF2YWlsYWJsZQpIQVZFX1hD T01QT1NJVEU9bm8KaWYgdGVzdCAiJHtIQVZFX1gxMX0iID0gInllcyI7IHRoZW4KICBBQ19D SEVDS19IRUFERVIoW1gxMS9leHRlbnNpb25zL1hjb21wb3NpdGUuaF0sCiAgICBbQUNfQ0hF Q0tfTElCKFtYY29tcG9zaXRlXSwgW1hDb21wb3NpdGVSZWRpcmVjdFdpbmRvd10sCiAgICAg ICBbSEFWRV9YQ09NUE9TSVRFPXllc10pXSwKICAgIFtdLAogICAgWyNpbmNsdWRlIDxYMTEv ZXh0ZW5zaW9ucy9YY29tcG9zaXRlLmg+CiAgICBdKQogIGlmIHRlc3QgJEhBVkVfWENPTVBP U0lURSA9IHllczsgdGhlbgogICAgWENPTVBPU0lURV9MSUJTPS1sWGNvbXBvc2l0ZQogIGZp CiAgaWYgdGVzdCAkSEFWRV9YQ09NUE9TSVRFID0geWVzOyB0aGVuCiAgICBBQ19ERUZJTkUo W0hBVkVfWENPTVBPU0lURV0sIFsxXSwKICAgICAgW0RlZmluZSB0byAxIGlmIHlvdSBoYXZl IHRoZSBYQ09NUE9TSVRFIGV4dGVuc2lvbi5dKQogIGZpCmZpCkFDX1NVQlNUKFtYQ09NUE9T SVRFX0NGTEFHU10pCkFDX1NVQlNUKFtYQ09NUE9TSVRFX0xJQlNdKQoKIyMjIFVzZSBsaWJ4 bWwgKC1seG1sMikgaWYgYXZhaWxhYmxlCiMjIyBtaW5ndzMyIGRvZXNuJ3QgdXNlIC1seG1s Miwgc2luY2UgaXQgbG9hZHMgdGhlIGxpYnJhcnkgZHluYW1pY2FsbHkuCkhBVkVfTElCWE1M Mj1ubwppZiB0ZXN0ICIke3dpdGhfeG1sMn0iICE9ICJubyI7IHRoZW4KICAjIyMgSSdtIG5v dCBzdXJlIHdoYXQgdGhlIHZlcnNpb24gbnVtYmVyIHNob3VsZCBiZSwgc28gSSBqdXN0IGd1 ZXNzZWQuCiAgRU1BQ1NfQ0hFQ0tfTU9EVUxFUyhbTElCWE1MMl0sIFtsaWJ4bWwtMi4wID4g Mi42LjE3XSkKICAjIEJ1aWx0LWluIGxpYnhtbDIgb24gT1MgWCAxMC44IGxhY2tzIGxpYnht bC0yLjAucGMuCiAgaWYgdGVzdCAiJHtIQVZFX0xJQlhNTDJ9IiAhPSAieWVzIiAmJiB0ZXN0 ICIkb3BzeXMiID0gImRhcndpbiI7IHRoZW4KICAgIFNBVkVfQ1BQRkxBR1M9IiRDUFBGTEFH UyIKICAgIGlmIHRlc3QgLXogIiR4Y3Nka2RpciIgLWEgLW4gIiRYQ1JVTiIgLWEgISAtZCAv dXNyL2luY2x1ZGU7IHRoZW4KICAgICAgZG5sIC91c3IvaW5jbHVkZSBpcyBub3QgZm91bmQu ICBUcnkgWGNvZGUgU0RLIGRpciBpZiBpdCBpcyBzYW5lLgogICAgICB4Y3Nka2Rpcj1gJFhD UlVOIC0tc2hvdy1zZGstcGF0aCAyPi9kZXYvbnVsbGAKICAgICAgY2FzZSAkeGNzZGtkaXIg aW4KCSpbW1xcXCJcI1wkXCZcJ1xgJGFtX2xmXCBcCV1dKikKCXhjc2RrZGlyPSIiIDs7CiAg ICAgIGVzYWMKICAgIGZpCiAgICBDUFBGTEFHUz0iJENQUEZMQUdTIC1pc3lzdGVtJHt4Y3Nk a2Rpcn0vdXNyL2luY2x1ZGUvbGlieG1sMiIKICAgIEFDX0NIRUNLX0hFQURFUihbbGlieG1s L0hUTUxwYXJzZXIuaF0sCiAgICAgIFtBQ19DSEVDS19ERUNMKFtIVE1MX1BBUlNFX1JFQ09W RVJdLCBbSEFWRV9MSUJYTUwyPXllc10sIFtdLAoJCSAgICAgWyNpbmNsdWRlIDxsaWJ4bWwv SFRNTHBhcnNlci5oPl0pXSkKICAgIENQUEZMQUdTPSIkU0FWRV9DUFBGTEFHUyIKICAgIGlm IHRlc3QgIiR7SEFWRV9MSUJYTUwyfSIgPSAieWVzIjsgdGhlbgogICAgICBMSUJYTUwyX0NG TEFHUz0iLWlzeXN0ZW0ke3hjc2RrZGlyfS91c3IvaW5jbHVkZS9saWJ4bWwyIgogICAgICBM SUJYTUwyX0xJQlM9Ii1seG1sMiIKICAgIGZpCiAgZmkKICBpZiB0ZXN0ICIke0hBVkVfTElC WE1MMn0iID0gInllcyI7IHRoZW4KICAgIGlmIHRlc3QgIiR7b3BzeXN9IiAhPSAibWluZ3cz MiI7IHRoZW4KICAgICAgQUNfQ0hFQ0tfTElCKFt4bWwyXSwgW2h0bWxSZWFkTWVtb3J5XSwK CVtIQVZFX0xJQlhNTDI9eWVzXSwKCVtIQVZFX0xJQlhNTDI9bm9dLAogICAgICAgIFskTElC WE1MMl9MSUJTXSkKICAgIGVsc2UKICAgICAgTElCWE1MMl9MSUJTPSIiCiAgICBmaQogICAg aWYgdGVzdCAiJHtIQVZFX0xJQlhNTDJ9IiA9ICJ5ZXMiOyB0aGVuCiAgICAgIEFDX0RFRklO RShbSEFWRV9MSUJYTUwyXSwgWzFdLAoJW0RlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBs aWJ4bWwgbGlicmFyeSAoLWx4bWwyKS5dKQogICAgZWxzZQogICAgICBMSUJYTUwyX0xJQlM9 IiIKICAgICAgTElCWE1MMl9DRkxBR1M9IiIKICAgIGZpCiAgZmkKZmkKQUNfU1VCU1QoW0xJ QlhNTDJfTElCU10pCkFDX1NVQlNUKFtMSUJYTUwyX0NGTEFHU10pCgpCTEVTU01BSUxfVEFS R0VUPQpMSUJTX01BSUw9CmlmIHRlc3QgISAiJHdpdGhfbWFpbHV0aWxzIjsgdGhlbgogICMg Q2hlY2sgZm9yIG1haWwtbG9ja2luZyBmdW5jdGlvbnMgaW4gYSAibWFpbCIgbGlicmFyeS4g IFByb2JhYmx5IHRoaXMgc2hvdWxkCiAgIyBoYXZlIHRoZSBzYW1lIGNoZWNrIGFzIGZvciBs aWJsb2NrZmlsZSBiZWxvdy4KICBBQ19DSEVDS19MSUIoW21haWxdLCBbbWFpbGxvY2tdLCBb aGF2ZV9tYWlsPXllc10sIFtoYXZlX21haWw9bm9dKQogIGlmIHRlc3QgJGhhdmVfbWFpbCA9 IHllczsgdGhlbgogICAgTElCU19NQUlMPS1sbWFpbAogICAgQUNfREVGSU5FKFtIQVZFX0xJ Qk1BSUxdLCBbMV0sCiAgICAgIFtEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgJ21haWwn IGxpYnJhcnkgKC1sbWFpbCkuXSkKCiAgICBPTERfTElCUz0kTElCUwogICAgTElCUz0iJExJ QlNfTUFJTCAkTElCUyIKICAgIEFDX0NIRUNLX0ZVTkNTKFt0b3VjaGxvY2tdKQogICAgTElC Uz0kT0xEX0xJQlMKICBmaQogIGRubCBEZWJpYW4sIGF0IGxlYXN0OgogIEFDX0NIRUNLX0xJ QihbbG9ja2ZpbGVdLCBbbWFpbGxvY2tdLCBbaGF2ZV9sb2NrZmlsZT15ZXNdLCBbaGF2ZV9s b2NrZmlsZT1ub10pCiAgaWYgdGVzdCAkaGF2ZV9sb2NrZmlsZSA9IHllczsgdGhlbgogICAg IExJQlNfTUFJTD0tbGxvY2tmaWxlCiAgICAgQUNfREVGSU5FKFtIQVZFX0xJQkxPQ0tGSUxF XSwgWzFdLAogICAgICAgW0RlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSAnbG9ja2ZpbGUn IGxpYnJhcnkgKC1sbG9ja2ZpbGUpLl0pCiAgZWxzZQogICAgIyBJZiB3ZSBoYXZlIHRoZSBz aGFyZWQgbGlibG9ja2ZpbGUsIGFzc3VtZSB3ZSBtdXN0IHVzZSBpdCBmb3IgbWFpbAogICAg IyBsb2NraW5nIChlLmcuIERlYmlhbikuICBJZiB3ZSBjb3VsZG4ndCBsaW5rIGFnYWluc3Qg bGlibG9ja2ZpbGUKICAgICMgKG5vIGxpYmxvY2tmaWxlLmEgaW5zdGFsbGVkKSwgZW5zdXJl IHRoYXQgd2UgZG9uJ3QgbmVlZCB0by4KICAgIGRubCBUaGlzIHdvcmtzIGZvciBmaWxlcyBn ZW5lcmFsbHksIG5vdCBqdXN0IGV4ZWN1dGFibGVzLgogICAgZG5sIFNob3VsZCB3ZSBsb29r IGVsc2V3aGVyZSBmb3IgaXQ/ICBNYXliZSBleGFtaW5lIC9ldGMvbGQuc28uY29uZj8KICAg IEFDX0NIRUNLX1BST0coW2xpYmxvY2tmaWxlXSwgW2xpYmxvY2tmaWxlLnNvXSwgW3llc10s IFtub10sCgkJICBbL3Vzci9saWI6L2xpYjovdXNyL2xvY2FsL2xpYjokTERfTElCUkFSWV9Q QVRIXSkKICAgIGlmIHRlc3QgIiRhY19jdl9wcm9nX2xpYmxvY2tmaWxlIiA9IHllczsgdGhl bgogICAgICBBQ19NU0dfRVJST1IoW1NoYXJlZCBsaWJsb2NrZmlsZSBmb3VuZCBidXQgY2Fu J3QgbGluayBhZ2FpbnN0IGl0LgpUaGlzIHByb2JhYmx5IG1lYW5zIHRoYXQgbW92ZW1haWwg Y291bGQgbG9zZSBtYWlsLgpUaGVyZSBtYXkgYmUgYSAnZGV2ZWxvcG1lbnQnIHBhY2thZ2Ug dG8gaW5zdGFsbCBjb250YWluaW5nIGxpYmxvY2tmaWxlLl0pCiAgICBmaQogIGZpCiAgQUNf Q0hFQ0tfSEVBREVSUyhbbWFpbGxvY2suaF0pCgogICMjIERlZmluZSBNQUlMX1VTRV9GTE9D SyAob3IgTE9DS0YpIGlmIHRoZSBtYWlsZXIgdXNlcyBmbG9jayAob3IgbG9ja2YpIHRvCiAg IyMgaW50ZXJsb2NrIGFjY2VzcyB0byB0aGUgbWFpbCBzcG9vbC4gIFRoZSBhbHRlcm5hdGl2 ZSBpcyBhIGxvY2sgZmlsZSBuYW1lZAogICMjIC91c3Ivc3Bvb2wvbWFpbC8kVVNFUi5sb2Nr LgogIG1haWxfbG9jaz1ubwogIGNhc2UgJG9wc3lzIGluCiAgICBhaXg0LTIpIG1haWxfbG9j az0ibG9ja2YiIDs7CgogICAgZ251fGZyZWVic2R8ZHJhZ29uZmx5fG5ldGJzZHxvcGVuYnNk fGRhcndpbikgbWFpbF9sb2NrPSJmbG9jayIgOzsKCiAgICAjIyBPbiBHTlUvTGludXggc3lz dGVtcywgYm90aCBtZXRob2RzIGFyZSB1c2VkIGJ5IHZhcmlvdXMgbWFpbCBwcm9ncmFtcy4K ICAgICMjIEkgYXNzdW1lIG1vc3QgcGVvcGxlIGFyZSB1c2luZyBuZXdlciBtYWlsZXJzIHRo YXQgaGF2ZSBoZWFyZCBvZiBmbG9jay4KICAgICMjIENoYW5nZSB0aGlzIGlmIHlvdSBuZWVk IHRvLgogICAgIyMgRGViaWFuIGNvbnRhaW5zIGEgcGF0Y2ggd2hpY2ggc2F5czogIk9uIERl Ymlhbi9HTlUvTGludXggc3lzdGVtcywKICAgICMjIGNvbmZpZ3VyZSBnZXRzIHRoZSByaWdo dCBhbnN3ZXJzLCBhbmQgdGhhdCBtZWFucyAqTk9UKiB1c2luZyBmbG9jay4KICAgICMjIFVz aW5nIGZsb2NrIGlzIGd1YXJhbnRlZWQgdG8gYmUgdGhlIHdyb25nIHRoaW5nLiBTZWUgRGVi aWFuIFBvbGljeQogICAgIyMgZm9yIGRldGFpbHMuIiBhbmQgdGhlbiB1c2VzICcjaWZkZWYg REVCSUFOJy4gIFVuZm9ydHVuYXRlbHkgdGhlCiAgICAjIyBEZWJpYW4gbWFpbnRhaW5lciBo YXNuJ3QgcHJvdmlkZWQgYSBjbGVhbiBmaXggZm9yIEVtYWNzLgogICAgIyMgbW92ZW1haWwu YyB3aWxsIHVzZSAnbWFpbGxvY2snIHdoZW4gTUFJTERJUiwgSEFWRV9MSUJNQUlMIGFuZAog ICAgIyMgSEFWRV9NQUlMTE9DS19IIGFyZSBkZWZpbmVkLCBzbyB0aGUgZm9sbG93aW5nIGFw cGVhcnMgdG8gYmUgdGhlCiAgICAjIyBjb3JyZWN0IGxvZ2ljLiAgLS0gZngKICAgICMjIFdl IG11c3QgY2hlY2sgZm9yIEhBVkVfTElCTE9DS0ZJTEUgdG9vLCBhcyBtb3ZlbWFpbCBkb2Vz LgogICAgIyMgbGlibG9ja2ZpbGUgaXMgYSBGcmVlIFNvZnR3YXJlIHJlcGxhY2VtZW50IGZv ciBsaWJtYWlsLCB1c2VkIG9uCiAgICAjIyBEZWJpYW4gc3lzdGVtcyBhbmQgZWxzZXdoZXJl LiAtcmZyLgogICAgZ251LSopCiAgICAgIG1haWxfbG9jaz0iZmxvY2siCiAgICAgIGlmIHRl c3QgJGhhdmVfbWFpbCA9IHllcyB8fCB0ZXN0ICRoYXZlX2xvY2tmaWxlID0geWVzOyB0aGVu Cgl0ZXN0ICRhY19jdl9oZWFkZXJfbWFpbGxvY2tfaCA9IHllcyAmJiBtYWlsX2xvY2s9bm8K ICAgICAgZmkgOzsKCiAgICBtaW5ndzMyKQogICAgICBtYWlsX2xvY2s9Im5vbmUtbmVlZGVk IiA7OwogIGVzYWMKCiAgY2FzZSAkbWFpbF9sb2NrIGluCiAgICBmbG9jaykgQUNfREVGSU5F KFtNQUlMX1VTRV9GTE9DS10sIFsxXSwKCSAgICAgW0RlZmluZSBpZiB0aGUgbWFpbGVyIHVz ZXMgZmxvY2sgdG8gaW50ZXJsb2NrIHRoZSBtYWlsIHNwb29sLl0pOzsKCiAgICBsb2NrZikg QUNfREVGSU5FKFtNQUlMX1VTRV9MT0NLRl0sIFsxXSwKCSAgICAgW0RlZmluZSBpZiB0aGUg bWFpbGVyIHVzZXMgbG9ja2YgdG8gaW50ZXJsb2NrIHRoZSBtYWlsIHNwb29sLl0pOzsKCiAg ICBub25lLW5lZWRlZCkgOzsKCiAgICAqKSBCTEVTU01BSUxfVEFSR0VUPSJuZWVkLWJsZXNz bWFpbCIgOzsKICBlc2FjCmZpCkFDX1NVQlNUKFtCTEVTU01BSUxfVEFSR0VUXSkKQUNfU1VC U1QoW0xJQlNfTUFJTF0pCgpIQVZFX1NFQ0NPTVA9bm8KQUNfQ0hFQ0tfSEVBREVSUygKICBb bGludXgvc2VjY29tcC5oIGxpbnV4L2ZpbHRlci5oXSwKICBbQUNfQ0hFQ0tfREVDTFMoCiAg ICBbU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIsIFNFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZTkNd LAogICAgW0hBVkVfU0VDQ09NUD15ZXNdLCBbXSwKICAgIFtbCiAgICAjaW5jbHVkZSA8bGlu dXgvc2VjY29tcC5oPgogICAgXV0pXSkKQUNfU1VCU1QoW0hBVkVfU0VDQ09NUF0pCgpFTUFD U19DSEVDS19NT0RVTEVTKFtMSUJTRUNDT01QXSwgW2xpYnNlY2NvbXAgPj0gMi41LjJdKQpB Q19TVUJTVChbSEFWRV9MSUJTRUNDT01QXSkKQUNfU1VCU1QoW0xJQlNFQ0NPTVBfTElCU10p CkFDX1NVQlNUKFtMSUJTRUNDT01QX0NGTEFHU10pCgpBQ19DSEVDS19TSVpFT0YoW2xvbmdd KQpTSVpFT0ZfTE9ORz0iJGFjX2N2X3NpemVvZl9sb25nIgpBQ19TVUJTVChbU0laRU9GX0xP TkddKQoKT0xEX0xJQlM9JExJQlMKTElCUz0iJExJQl9QVEhSRUFEICRMSUJfTUFUSCAkTElC UyIKQUNfQ0hFQ0tfRlVOQ1MoW2FjY2VwdDQgZmNoZGlyIGdldGhvc3RuYW1lIFwKZ2V0cnVz YWdlIGdldF9jdXJyZW50X2Rpcl9uYW1lIFwKbHJhbmQ0OCByYW5kb20gcmludCB0cnVuYyBc CnNlbGVjdCBnZXRwYWdlc2l6ZSBzZXRsb2NhbGUgbmV3bG9jYWxlIFwKZ2V0cmxpbWl0IHNl dHJsaW1pdCBzaHV0ZG93biBcCnB0aHJlYWRfc2lnbWFzayBzdHJzaWduYWwgc2V0aXRpbWVy IFwKc2VuZHRvIHJlY3Zmcm9tIGdldHNvY2tuYW1lIGdldGlmYWRkcnMgZnJlZWlmYWRkcnMg XApnYWlfc3RyZXJyb3Igc3luYyBcCmdldHB3ZW50IGVuZHB3ZW50IGdldGdyZW50IGVuZGdy ZW50IFwKcmVuYW1lYXQyIFwKY2ZtYWtlcmF3IGNmc2V0c3BlZWQgX19leGVjdXRhYmxlX3N0 YXJ0IGxvZzIgcHRocmVhZF9zZXRuYW1lX25wIFwKcHRocmVhZF9zZXRfbmFtZV9ucF0pCkxJ QlM9JE9MRF9MSUJTCgppZiB0ZXN0ICIkYWNfY3ZfZnVuY19wdGhyZWFkX3NldG5hbWVfbnAi ID0gInllcyI7IHRoZW4KICBBQ19DQUNIRV9DSEVDSygKICAgW3doZXRoZXIgcHRocmVhZF9z ZXRuYW1lX25wIHRha2VzIGEgc2luZ2xlIGFyZ3VtZW50XSwKICAgW2VtYWNzX2N2X3B0aHJl YWRfc2V0bmFtZV9ucF8xYXJnXSwKICAgW0FDX0NPTVBJTEVfSUZFTFNFKAogICAgIFtBQ19M QU5HX1BST0dSQU0oCiAgICAgICBbWyNpbmNsdWRlIDxwdGhyZWFkLmg+XV0sCiAgICAgICBb W3B0aHJlYWRfc2V0bmFtZV9ucCAoImEiKTtdXSldLAogICAgIFtlbWFjc19jdl9wdGhyZWFk X3NldG5hbWVfbnBfMWFyZz15ZXNdLAogICAgIFtlbWFjc19jdl9wdGhyZWFkX3NldG5hbWVf bnBfMWFyZz1ub10pXSkKICBpZiB0ZXN0ICIkZW1hY3NfY3ZfcHRocmVhZF9zZXRuYW1lX25w XzFhcmciID0gInllcyI7IHRoZW4KICAgIEFDX0RFRklORSgKICAgICAgW0hBVkVfUFRIUkVB RF9TRVROQU1FX05QXzFBUkddLCBbMV0sCiAgICAgIFtEZWZpbmUgdG8gMSBpZiBwdGhyZWFk X3NldG5hbWVfbnAgdGFrZXMgYSBzaW5nbGUgYXJndW1lbnQuXSkKICBlbHNlCiAgICBBQ19D QUNIRV9DSEVDSygKICAgICBbd2hldGhlciBwdGhyZWFkX3NldG5hbWVfbnAgdGFrZXMgdGhy ZWUgYXJndW1lbnRzXSwKICAgICBbZW1hY3NfY3ZfcHRocmVhZF9zZXRuYW1lX25wXzNhcmdd LAogICAgIFtBQ19DT01QSUxFX0lGRUxTRSgKICAgICAgIFtBQ19MQU5HX1BST0dSQU0oCiAg ICAgICAgIFtbI2luY2x1ZGUgPHB0aHJlYWQuaD5dXSwKICAgICAgICAgW1twdGhyZWFkX3Nl dG5hbWVfbnAgKDAsICIlcyIsICJhIik7XV0pXSwKICAgICAgIFtlbWFjc19jdl9wdGhyZWFk X3NldG5hbWVfbnBfM2FyZz15ZXNdLAogICAgICAgW2VtYWNzX2N2X3B0aHJlYWRfc2V0bmFt ZV9ucF8zYXJnPW5vXSldKQogICAgIGlmIHRlc3QgIiRlbWFjc19jdl9wdGhyZWFkX3NldG5h bWVfbnBfM2FyZyIgPSAieWVzIjsgdGhlbgogICAgICAgQUNfREVGSU5FKAoJIFtIQVZFX1BU SFJFQURfU0VUTkFNRV9OUF8zQVJHXSwgWzFdLAogICAgICAgICBbRGVmaW5lIHRvIDEgaWYg cHRocmVhZF9zZXRuYW1lX25wIHRha2VzIHRocmVlIGFyZ3VtZW50cy5dKQogICAgIGZpCiAg ZmkKZmkKCmRubCBObyBuZWVkIHRvIGNoZWNrIGZvciBwb3NpeF9tZW1hbGlnbiBpZiBhbGln bmVkX2FsbG9jIHdvcmtzLgpBQ19DSEVDS19GVU5DUyhbYWxpZ25lZF9hbGxvYyBwb3NpeF9t ZW1hbGlnbl0sIFticmVha10pCkFDX0NIRUNLX0RFQ0xTKFthbGlnbmVkX2FsbG9jXSwgW10s IFtdLCBbWyNpbmNsdWRlIDxzdGRsaWIuaD5dXSkKCmNhc2UgJHdpdGhfdW5leGVjLCRjYW5v bmljYWwgaW4KICB5ZXMsYWxwaGEqKQogICAgQUNfQ0hFQ0tfREVDTChbX19FTEZfX10sIFtd LAogICAgICBbQUNfTVNHX0VSUk9SKFtOb24tRUxGIHN5c3RlbXMgYXJlIG5vdCBzdXBwb3J0 ZWQgb24gdGhpcyBwbGF0Zm9ybS5dKV0pOzsKZXNhYwoKaWYgdGVzdCAiJHdpdGhfdW5leGVj IiA9IHllcyAmJiB0ZXN0ICIkb3BzeXMiID0gImhhaWt1IjsgdGhlbgogIGRubCBBIHNlcmlv dXMgYXR0ZW1wdCB3YXMgYWN0dWFsbHkgbWFkZSB0byBwb3J0IHVuZXhlYyB0byBIYWlrdS4K ICBkbmwgU29tZXRoaW5nIGluIGxpYnN0ZGMrKyBzZWVtcyB0byBwcmV2ZW50IGl0IGZyb20g d29ya2luZy4KICBBQ19NU0dfRVJST1IoW0hhaWt1IGlzIG5vdCBzdXBwb3J0ZWQgYnkgdGhl IGxlZ2FjeSB1bmV4ZWMgZHVtcGVyLgpQbGVhc2UgdXNlIHRoZSBwb3J0YWJsZSBkdW1wZXIg aW5zdGVhZC5dKQpmaQoKIyBEdW1wIGxvYWRpbmcKQUNfQ0hFQ0tfRlVOQ1MoW3Bvc2l4X21h ZHZpc2VdKQoKZG5sIENhbm5vdCB1c2UgQUNfQ0hFQ0tfRlVOQ1MKQUNfQ0FDSEVfQ0hFQ0so W2ZvciBfX2J1aWx0aW5fZnJhbWVfYWRkcmVzc10sCiAgW2VtYWNzX2N2X2Z1bmNfX19idWls dGluX2ZyYW1lX2FkZHJlc3NdLAogIFtBQ19MSU5LX0lGRUxTRShbQUNfTEFOR19QUk9HUkFN KFtdLCBbX19idWlsdGluX2ZyYW1lX2FkZHJlc3MgKDApO10pXSwKICAgICBbZW1hY3NfY3Zf ZnVuY19fX2J1aWx0aW5fZnJhbWVfYWRkcmVzcz15ZXNdLAogICAgIFtlbWFjc19jdl9mdW5j X19fYnVpbHRpbl9mcmFtZV9hZGRyZXNzPW5vXSldKQppZiB0ZXN0ICRlbWFjc19jdl9mdW5j X19fYnVpbHRpbl9mcmFtZV9hZGRyZXNzID0geWVzOyB0aGVuCiAgQUNfREVGSU5FKFtIQVZF X19fQlVJTFRJTl9GUkFNRV9BRERSRVNTXSwgWzFdLAoJICAgIFtEZWZpbmUgdG8gMSBpZiB5 b3UgaGF2ZSB0aGUgJ19fYnVpbHRpbl9mcmFtZV9hZGRyZXNzJyBmdW5jdGlvbi5dKQpmaQpB Q19DQUNIRV9DSEVDSyhbZm9yIF9fYnVpbHRpbl91bndpbmRfaW5pdF0sCgkgICAgICAgW2Vt YWNzX2N2X2Z1bmNfX19idWlsdGluX3Vud2luZF9pbml0XSwKW0FDX0xJTktfSUZFTFNFKFtB Q19MQU5HX1BST0dSQU0oW10sIFtfX2J1aWx0aW5fdW53aW5kX2luaXQgKCk7XSldLAoJCVtl bWFjc19jdl9mdW5jX19fYnVpbHRpbl91bndpbmRfaW5pdD15ZXNdLAoJCVtlbWFjc19jdl9m dW5jX19fYnVpbHRpbl91bndpbmRfaW5pdD1ub10pXSkKaWYgdGVzdCAkZW1hY3NfY3ZfZnVu Y19fX2J1aWx0aW5fdW53aW5kX2luaXQgPSB5ZXM7IHRoZW4KICBBQ19ERUZJTkUoW0hBVkVf X19CVUlMVElOX1VOV0lORF9JTklUXSwgWzFdLAoJICAgIFtEZWZpbmUgdG8gMSBpZiB5b3Ug aGF2ZSB0aGUgJ19fYnVpbHRpbl91bndpbmRfaW5pdCcgZnVuY3Rpb24uXSkKZmkKCkFDX0NI RUNLX0hFQURFUlNfT05DRShbc3lzL3VuLmhdKQoKQUNfRlVOQ19GU0VFS08KCiMgVU5JWDk4 IFBUWXMuCkFDX0NIRUNLX0ZVTkNTKFtncmFudHB0XSkKCiMgUFRZLXJlbGF0ZWQgR05VIGV4 dGVuc2lvbnMuCkFDX0NIRUNLX0ZVTkNTKFtnZXRwdCBwb3NpeF9vcGVucHRdKQoKZG5sIFJ1 biBhIHRlc3QgcHJvZ3JhbSB0aGF0IGNvbnRhaW5zIGEgY2FsbCB0byB0cHV0cywgYSBjYWxs IHRoYXQgaXMKZG5sIG5ldmVyIGV4ZWN1dGVkLiAgVGhpcyB0ZXN0cyB3aGV0aGVyIGEgcHJl LSdtYWluJyBkeW5hbWljIGxpbmtlcgpkbmwgd29ya3Mgd2l0aCB0aGUgbGlicmFyeS4gIEl0 J3MgdG9vIG11Y2ggdHJvdWJsZSB0byBhY3R1YWxseSBjYWxsCmRubCB0cHV0cyBpbiB0aGUg dGVzdCBwcm9ncmFtLCBkdWUgdG8gcG9ydGFiaWxpdHkgaGFzc2xlcy4gIFdoZW4KZG5sIGNy b3NzLWNvbXBpbGluZywgYXNzdW1lIHRoZSB0ZXN0IHByb2dyYW0gd2lsbCBydW4gaWYgaXQg bGlua3MuCkFDX0RFRlVOKFt0cHV0c19saW5rX3NvdXJjZV0sIFsKICBBQ19MQU5HX1NPVVJD RSgKICAgICBbW2V4dGVybiB2b2lkIHRwdXRzIChjb25zdCBjaGFyICosIGludCwgaW50ICgq KShpbnQpKTsKICAgICAgIGludCBtYWluIChpbnQgYXJnYywgY2hhciAqKmFyZ3YpCiAgICAg ICB7CgkgIGlmIChhcmdjID09IDEwMDAwKQoJICAgIHRwdXRzIChhcmd2WzBdLCAwLCAwKTsK CSAgcmV0dXJuIDA7CiAgICAgICB9XV0pCl0pCiMgQ2hlY2sgdGhpcyBub3csIHNvIHRoYXQg d2Ugd2lsbCBOT1QgZmluZCB0aGUgYWJvdmUgZnVuY3Rpb25zIGluIG5jdXJzZXMuCiMgVGhh dCBpcyBiZWNhdXNlIHdlIGhhdmUgbm90IHNldCB1cCB0byBsaW5rIG5jdXJzZXMgaW4gbGli LXNyYy4KIyBJdCdzIGJldHRlciB0byBiZWxpZXZlIGEgZnVuY3Rpb24gaXMgbm90IGF2YWls YWJsZQojIHRoYW4gdG8gZXhwZWN0IHRvIGZpbmQgaXQgaW4gbmN1cnNlcy4KIyBBbHNvIHdl IG5lZWQgdHB1dHMgYW5kIGZyaWVuZHMgdG8gYmUgYWJsZSB0byBidWlsZCBhdCBhbGwuCkFD X0NBQ0hFX0NIRUNLKFtmb3IgbGlicmFyeSBjb250YWluaW5nIHRwdXRzXSwgW2VtYWNzX2N2 X3RwdXRzX2xpYl0sCltpZiB0ZXN0ICIke29wc3lzfSIgPSAibWluZ3czMiI7IHRoZW4KICBl bWFjc19jdl90cHV0c19saWI9J25vbmUgcmVxdWlyZWQnCmVsc2UKICAjIGN1cnNlcyBwcmVj ZWRlcyB0ZXJtY2FwIGJlY2F1c2Ugb2YgQUlYIChCdWcjOTczNiMzNSkgYW5kIE9wZW5JbmRp YW5hLgogIHRwdXRzX2xpYnJhcmllcz0ndGluZm8gbmN1cnNlcyB0ZXJtaW5mbyBjdXJzZXMg dGVybWNhcCB0aW5mb3cgbmN1cnNlc3cnCiAgZm9yIHRwdXRzX2xpYnJhcnkgaW4gJycgJHRw dXRzX2xpYnJhcmllczsgZG8KICAgIE9MSUJTPSRMSUJTCiAgICBpZiB0ZXN0IC16ICIkdHB1 dHNfbGlicmFyeSI7IHRoZW4KICAgICAgZW1hY3NfY3ZfdHB1dHNfbGliPSdub25lIHJlcXVp cmVkJwogICAgZWxzZQogICAgICBlbWFjc19jdl90cHV0c19saWI9LWwkdHB1dHNfbGlicmFy eQogICAgICBMSUJTPSIkZW1hY3NfY3ZfdHB1dHNfbGliICRMSUJTIgogICAgZmkKICAgIEFD X1JVTl9JRkVMU0UoW3RwdXRzX2xpbmtfc291cmNlXSwgW10sIFtlbWFjc19jdl90cHV0c19s aWI9bm9dLAogICAgICBbQUNfTElOS19JRkVMU0UoW3RwdXRzX2xpbmtfc291cmNlXSwgW10s IFtlbWFjc19jdl90cHV0c19saWI9bm9dKV0pCiAgICBMSUJTPSRPTElCUwogICAgaWYgdGVz dCAiWCRlbWFjc19jdl90cHV0c19saWIiICE9IFhubzsgdGhlbgogICAgICBicmVhawogICAg ZmkKICBkb25lCmZpXSkKQVNfQ0FTRShbIiRlbWFjc19jdl90cHV0c19saWIiXSwKICBbbm9d LCBbQUNfTVNHX0VSUk9SKFtUaGUgcmVxdWlyZWQgZnVuY3Rpb24gJ3RwdXRzJyB3YXMgbm90 IGZvdW5kIGluIGFueSBsaWJyYXJ5LgpUaGUgZm9sbG93aW5nIGxpYnJhcmllcyB3ZXJlIHRy aWVkIChpbiBvcmRlcik6CiAgbGlidGluZm8sIGxpYm5jdXJzZXMsIGxpYnRlcm1pbmZvLCBs aWJjdXJzZXMsIGxpYnRlcm1jYXAKUGxlYXNlIHRyeSBpbnN0YWxsaW5nIHdoaWNoZXZlciBv ZiB0aGVzZSBsaWJyYXJpZXMgaXMgbW9zdCBhcHByb3ByaWF0ZQpmb3IgeW91ciBzeXN0ZW0s IHRvZ2V0aGVyIHdpdGggaXRzIGhlYWRlciBmaWxlcy4KRm9yIGV4YW1wbGUsIGEgbGlibmN1 cnNlcy1kZXYoZWwpIG9yIHNpbWlsYXIgcGFja2FnZS5dKV0sCiAgWy1sKl0sIFtMSUJTX1RF Uk1DQVA9JGVtYWNzX2N2X3RwdXRzX2xpYl0sCiAgWypdLCBbTElCU19URVJNQ0FQPV0pCgoj IyBVc2UgdGVybWNhcCBpbnN0ZWFkIG9mIHRlcm1pbmZvPwojIyBPbmx5IHRydWUgZm9yOiBm cmVlYnNkIDwgNDAwMDAsIG1zLXczMiwgbXNkb3MsIG5ldGJzZCA8IDU5OTAwMjUwMC4KVEVS TUlORk89eWVzCiMjIEZJWE1FPyAgSW4gdGhlIGNhc2VzIGJlbG93IHdoZXJlIHdlIHVuY29u ZGl0aW9uYWxseSBzZXQKIyMgTElCU19URVJNQ0FQPSItbG5jdXJzZXMiLCB0aGlzIG92ZXJy aWRlcyBMSUJTX1RFUk1DQVAgPSAtbHRpbmZvLAojIyBpZiB0aGF0IHdhcyBmb3VuZCBhYm92 ZSB0byBoYXZlIHRwdXRzLgojIyBTaG91bGQgd2UgdXNlIHRoZSBnbnUqIGxvZ2ljIGV2ZXJ5 d2hlcmU/CmNhc2UgIiRvcHN5cyIgaW4KICAjIyBkYXJ3aW46IFByZXZlbnRzIGNyYXNoZXMg d2hlbiBydW5uaW5nIEVtYWNzIGluIFRlcm1pbmFsLmFwcCB1bmRlciAxMC4yLgogICMjICBU aGUgbmN1cnNlcyBsaWJyYXJ5IGhhcyBiZWVuIG1vdmVkIG91dCBvZiB0aGUgU3lzdGVtIGZy YW1ld29yayBpbgogICMjICBNYWMgT1MgWCAxMC4yLiAgU28gaWYgY29uZmlndXJlIGRldGVj dHMgaXQsIHNldCB0aGUgY29tbWFuZC1saW5lCiAgIyMgIG9wdGlvbiB0byB1c2UgaXQuCiAg ZGFyd2luKSBMSUJTX1RFUk1DQVA9Ii1sbmN1cnNlcyIgOzsKCiAgZ251KikgdGVzdCAteiAi JExJQlNfVEVSTUNBUCIgJiYgTElCU19URVJNQ0FQPSItbG5jdXJzZXMiIDs7CgogIGZyZWVi c2QpCiAgICBBQ19NU0dfQ0hFQ0tJTkcoW3doZXRoZXIgRnJlZUJTRCBpcyBuZXcgZW5vdWdo IHRvIHVzZSB0ZXJtaW5mb10pCiAgICBBQ19DQUNIRV9WQUwoW2VtYWNzX2N2X2ZyZWVic2Rf dGVybWluZm9dLAogICAgW0FDX0xJTktfSUZFTFNFKFtBQ19MQU5HX1BST0dSQU0oW1sjaW5j bHVkZSA8b3NyZWxkYXRlLmg+XV0sCltbI2lmIF9fRnJlZUJTRF92ZXJzaW9uIDwgNDAwMDAw CmZhaWw7CiNlbmRpZgpdXSldLCBbZW1hY3NfY3ZfZnJlZWJzZF90ZXJtaW5mbz15ZXNdLAog ICAgICBbZW1hY3NfY3ZfZnJlZWJzZF90ZXJtaW5mbz1ub10pXSkKCiAgICBBQ19NU0dfUkVT VUxUKFskZW1hY3NfY3ZfZnJlZWJzZF90ZXJtaW5mb10pCgogICAgaWYgdGVzdCAkZW1hY3Nf Y3ZfZnJlZWJzZF90ZXJtaW5mbyA9IHllczsgdGhlbgogICAgICBMSUJTX1RFUk1DQVA9Ii1s bmN1cnNlcyIKICAgIGVsc2UKICAgICAgVEVSTUlORk89bm8KICAgICAgTElCU19URVJNQ0FQ PSItbHRlcm1jYXAiCiAgICBmaQogICAgOzsKCiAgbWluZ3czMikKICAgIFRFUk1JTkZPPW5v CiAgICBMSUJTX1RFUk1DQVA9CiAgICA7OwoKICBuZXRic2QpCiAgICBpZiB0ZXN0ICJ4JExJ QlNfVEVSTUNBUCIgIT0gIngtbHRlcm1pbmZvIjsgdGhlbgogICAgICBURVJNSU5GTz1ubwog ICAgICBMSUJTX1RFUk1DQVA9Ii1sdGVybWNhcCIKICAgIGZpCiAgICA7OwoKICBvcGVuYnNk IHwgZHJhZ29uZmx5KSBMSUJTX1RFUk1DQVA9Ii1sbmN1cnNlcyIgOzsKCiAgIyMgaHB1eDog TWFrZSBzdXJlIHdlIGdldCBzZWxlY3QgZnJvbSBsaWJjIHJhdGhlciB0aGFuIGZyb20gbGli Y3Vyc2VzCiAgIyMgIGJlY2F1c2UgbGliY3Vyc2VzIG9uIEhQVVggMTAuMTAgaGFzIGEgYnJv a2VuIHZlcnNpb24gb2Ygc2VsZWN0LgogICMjICBXZSB1c2VkIHRvIHVzZSAtbGMgLWxjdXJz ZXMsIGJ1dCB0aGlzIG1heSBiZSBjbGVhbmVyLgogICMjIEZJWE1FPyAgQnV0IFRFUk1JTkZP ID0geWVzIG9uIGhwdXggKGl0IHVzZWQgdG8gYmUgZXhwbGljaXRseQogICMgc2V0IHRoYXQg d2F5LCBub3cgaXQgdXNlcyB0aGUgZGVmYXVsdCkuICBJc24ndCB0aGlzIGEgY29udHJhZGlj dGlvbj8KICBocHV4KikgTElCU19URVJNQ0FQPSItbHRlcm1jYXAiIDs7Cgplc2FjCgpURVJN Q0FQX09CSj10cGFyYW0ubwppZiB0ZXN0ICRURVJNSU5GTyA9IHllczsgdGhlbgogIEFDX0RF RklORShbVEVSTUlORk9dLCBbMV0sCiAgICBbRGVmaW5lIHRvIDEgaWYgeW91IHVzZSB0ZXJt aW5mbyBpbnN0ZWFkIG9mIHRlcm1jYXAuXSkKICBURVJNQ0FQX09CSj10ZXJtaW5mby5vCiAg QUNfQ0FDSEVfQ0hFQ0soW3doZXRoZXIgJExJQlNfVEVSTUNBUCBsaWJyYXJ5IGRlZmluZXMg QkNdLAogICAgW2VtYWNzX2N2X3Rlcm1pbmZvX2RlZmluZXNfQkNdLAogICAgW09MRF9MSUJT PSRMSUJTCiAgICAgTElCUz0iJExJQlMgJExJQlNfVEVSTUNBUCIKICAgICBBQ19MSU5LX0lG RUxTRShbQUNfTEFOR19QUk9HUkFNKFtbZXh0ZXJuIGNoYXIgKkJDO11dLCBbW3JldHVybiAh KkJDO11dKV0sCiAgICAgICBbZW1hY3NfY3ZfdGVybWluZm9fZGVmaW5lc19CQz15ZXNdLAog ICAgICAgW2VtYWNzX2N2X3Rlcm1pbmZvX2RlZmluZXNfQkM9bm9dKQogICAgIExJQlM9JE9M RF9MSUJTXSkKICBpZiB0ZXN0ICIkZW1hY3NfY3ZfdGVybWluZm9fZGVmaW5lc19CQyIgPSB5 ZXM7IHRoZW4KICAgIEFDX0RFRklORShbVEVSTUlORk9fREVGSU5FU19CQ10sIFsxXSwgW0Rl ZmluZSB0byAxIGlmIHRoZQogICAgICB0ZXJtaW5mbyBsaWJyYXJ5IGRlZmluZXMgdGhlIHZh cmlhYmxlcyBCQywgUEMsIGFuZCBVUC5dKQogIGZpCmZpCmlmIHRlc3QgIlgkTElCU19URVJN Q0FQIiA9ICJYLWxuY3Vyc2VzIjsgdGhlbgogIEFDX0RFRklORShbVVNFX05DVVJTRVNdLCBb MV0sIFtEZWZpbmUgdG8gMSBpZiB5b3UgdXNlIG5jdXJzZXMuXSkKZmkKQUNfU1VCU1QoW0xJ QlNfVEVSTUNBUF0pCkFDX1NVQlNUKFtURVJNQ0FQX09CSl0pCgojIEdOVS9MaW51eC1zcGVj aWZpYyB0aW1lciBmdW5jdGlvbnMuCkFDX0NBQ0hFX0NIRUNLKFtmb3IgdGltZXJmZCBpbnRl cmZhY2VdLCBbZW1hY3NfY3ZfaGF2ZV90aW1lcmZkXSwKICBbQUNfQ09NUElMRV9JRkVMU0Uo CiAgICAgW0FDX0xBTkdfUFJPR1JBTShbWyNpbmNsdWRlIDxzeXMvdGltZXJmZC5oPgoJCSAg ICAgIF1dLAoJCSAgICAgIFtbdGltZXJmZF9jcmVhdGUgKENMT0NLX1JFQUxUSU1FLAoJCQkJ CVRGRF9DTE9FWEVDIHwgVEZEX05PTkJMT0NLKTsKCQkJdGltZXJmZF9zZXR0aW1lICgwLCBU RkRfVElNRVJfQUJTVElNRSwgMCwgMCk7XV0pXSwKICAgICBbZW1hY3NfY3ZfaGF2ZV90aW1l cmZkPXllc10sCiAgICAgW2VtYWNzX2N2X2hhdmVfdGltZXJmZD1ub10pXSkKaWYgdGVzdCAi JGVtYWNzX2N2X2hhdmVfdGltZXJmZCIgPSB5ZXM7IHRoZW4KICBBQ19ERUZJTkUoW0hBVkVf VElNRVJGRF0sIFsxXSwKICAgIFtEZWZpbmUgdG8gMSBpZiB0aW1lcmZkIGZ1bmN0aW9ucyBh cmUgc3VwcG9ydGVkIGFzIGluIEdOVS9MaW51eC5dKQpmaQoKIyBBbHRlcm5hdGUgc3RhY2sg Zm9yIHNpZ25hbCBoYW5kbGVycy4KQUNfQ0FDSEVfQ0hFQ0soW3doZXRoZXIgc2lnbmFscyBj YW4gYmUgaGFuZGxlZCBvbiBhbHRlcm5hdGUgc3RhY2tdLAoJICAgICAgIFtlbWFjc19jdl9h bHRlcm5hdGVfc3RhY2tdLAogIFtBQ19DT01QSUxFX0lGRUxTRSgKICAgICBbQUNfTEFOR19Q Uk9HUkFNKFtbI2luY2x1ZGUgPHNpZ25hbC5oPgoJCQkjaW5jbHVkZSA8c3RkbGliLmg+CgkJ ICAgICAgXV0sCgkJICAgICAgW1tzdGFja190IHNzOwoJCQlzdHJ1Y3Qgc2lnYWN0aW9uIHNh OwoJCQlzcy5zc19zcCA9IG1hbGxvYyAoU0lHU1RLU1opOwoJCQlzcy5zc19zaXplID0gU0lH U1RLU1o7CgkJCXNhLnNhX2ZsYWdzID0gU0FfU0lHSU5GTyB8IFNBX09OU1RBQ0s7CgkJCXNp Z2FsdHN0YWNrICgmc3MsIDApOwoJCQlzaWdhY3Rpb24gKFNJR1NFR1YsICZzYSwgMCk7XV0p XSwKICAgICBbZW1hY3NfY3ZfYWx0ZXJuYXRlX3N0YWNrPXllc10sCiAgICAgW2VtYWNzX2N2 X2FsdGVybmF0ZV9zdGFjaz1ub10pXSkKCiMgRG8gd2UgbmVlZCB0aGUgSGVzaW9kIGxpYnJh cnkgdG8gcHJvdmlkZSB0aGUgc3VwcG9ydCByb3V0aW5lcz8KZG5sIEZJWE1FPyAgU2hvdWxk IHdlIGJlIHNraXBwaW5nIHRoaXMgb24gRGFyd2luIHRvbz8KTElCSEVTSU9EPQpMSUJSRVNP TFY9CmlmIHRlc3QgIiR3aXRoX2hlc2lvZCIgIT0gbm8gOyB0aGVuCiAgIyBEb24ndCBzZXQg JExJQlMgaGVyZSAtLSBzZWUgY29tbWVudHMgYWJvdmUuICBGSVhNRSB3aGljaCBjb21tZW50 cz8KICByZXNvbHY9bm8KICBBQ19DSEVDS19GVU5DKFtyZXNfc2VuZF0sIFtdLCBbQUNfQ0hF Q0tfRlVOQyhbX19yZXNfc2VuZF0sIFtdLAogICAgIFtBQ19DSEVDS19MSUIoW3Jlc29sdl0s IFtyZXNfc2VuZF0sIFtyZXNvbHY9eWVzXSwKCQkgIFtBQ19DSEVDS19MSUIoW3Jlc29sdl0s IFtfX3Jlc19zZW5kXSwgW3Jlc29sdj15ZXNdKV0pXSldKQogIGlmIHRlc3QgIiRyZXNvbHYi ID0geWVzIDsgdGhlbgogICAgUkVTT0xWTElCPS1scmVzb2x2CiAgZWxzZQogICAgUkVTT0xW TElCPQogIGZpCiAgaGVzaW9kPW5vCiAgQUNfQ0hFQ0tfRlVOQyhbaGVzX2dldG1haWxob3N0 XSwgW10sCiAgICBbQUNfQ0hFQ0tfTElCKFtoZXNpb2RdLCBbaGVzX2dldG1haWxob3N0XSwK ICAgICAgIFtoZXNpb2Q9eWVzXSwgWzpdLCBbJFJFU09MVkxJQl0pXSkKCiAgaWYgdGVzdCB4 IiRoZXNpb2QiID0geHllczsgdGhlbgogICAgTElCSEVTSU9EPS1saGVzaW9kCiAgICBMSUJS RVNPTFY9JFJFU09MVkxJQgogIGZpCmZpCkFDX1NVQlNUKFtMSUJIRVNJT0RdKQpBQ19TVUJT VChbTElCUkVTT0xWXSkKCiMgVGhlc2UgdGVsbCB1cyB3aGljaCBLZXJiZXJvcy1yZWxhdGVk IGxpYnJhcmllcyB0byB1c2UuCkNPTV9FUlJMSUI9CkNSWVBUT0xJQj0KS1JCNUxJQj0KREVT TElCPQpLUkI0TElCPQoKaWYgdGVzdCAiJHt3aXRoX2tlcmJlcm9zfSIgIT0gbm87IHRoZW4K ICBPTERfTElCUz0kTElCUwogIEFDX0NIRUNLX0xJQihbY29tX2Vycl0sIFtjb21fZXJyXSwg W2hhdmVfY29tX2Vycj15ZXNdLCBbaGF2ZV9jb21fZXJyPW5vXSkKICBpZiB0ZXN0ICRoYXZl X2NvbV9lcnIgPSB5ZXM7IHRoZW4KICAgIENPTV9FUlJMSUI9LWxjb21fZXJyCiAgICBMSUJT PSIkQ09NX0VSUkxJQiAkTElCUyIKICBmaQogIEFDX0NIRUNLX0xJQihbY3J5cHRvXSwgW21p dF9kZXNfY2JjX2VuY3J5cHRdLAogICAgW2hhdmVfY3J5cHRvPXllc10sCiAgICBbaGF2ZV9j cnlwdG89bm9dKQogIGlmIHRlc3QgJGhhdmVfY3J5cHRvID0geWVzOyB0aGVuCiAgICBDUllQ VE9MSUI9LWxjcnlwdG8KICAgIExJQlM9IiRDUllQVE9MSUIgJExJQlMiCiAgZmkKICBBQ19D SEVDS19MSUIoW2s1Y3J5cHRvXSwgW21pdF9kZXNfY2JjX2VuY3J5cHRdLAogICAgW2hhdmVf azVjcnlwdG89eWVzXSwKICAgIFtoYXZlX2s1Y3J5cHRvPW5vXSkKICBpZiB0ZXN0ICRoYXZl X2s1Y3J5cHRvID0geWVzOyB0aGVuCiAgICBDUllQVE9MSUI9LWxrNWNyeXB0bwogICAgTElC Uz0iJENSWVBUT0xJQiAkTElCUyIKICBmaQogIEFDX0NIRUNLX0xJQihba3JiNV0sIFtrcmI1 X2luaXRfY29udGV4dF0sIFtoYXZlX2tyYjU9eWVzXSwgW2hhdmVfa3JiNT1ub10pCiAgaWYg dGVzdCAkaGF2ZV9rcmI1PXllczsgdGhlbgogICAgS1JCNUxJQj0tbGtyYjUKICAgIExJQlM9 IiRLUkI1TElCICRMSUJTIgogIGZpCiAgZG5sIEZJWE1FIFNpbXBsaWZ5LiAgRG9lcyBub3Qg bWF0Y2ggMjIgbG9naWMsIHRoYW5rcyB0byBkZWZhdWx0X29mZj8KICBpZiB0ZXN0ICIke3dp dGhfa2VyYmVyb3M1fSIgPSBubzsgdGhlbgogICAgQUNfQ0hFQ0tfTElCKFtkZXM0MjVdLCBb ZGVzX2NiY19lbmNyeXB0XSwKICAgICAgW2hhdmVfZGVzNDI1PXllc10sCiAgICAgIFtoYXZl X2RlczQyNT1ub10pCiAgICBpZiB0ZXN0ICRoYXZlX2RlczQyNSA9IHllczsgdGhlbgogICAg ICBERVNMSUI9LWxkZXM0MjUKICAgICAgTElCUz0iJERFU0xJQiAkTElCUyIKICAgIGVsc2UK ICAgICAgQUNfQ0hFQ0tfTElCKFtkZXNdLCBbZGVzX2NiY19lbmNyeXB0XSwgW2hhdmVfZGVz PXllc10sIFtoYXZlX2Rlcz1ub10pCiAgICAgIGlmIHRlc3QgJGhhdmVfZGVzID0geWVzOyB0 aGVuCiAgICAgICAgREVTTElCPS1sZGVzCiAgICAgICAgTElCUz0iJERFU0xJQiAkTElCUyIK ICAgICAgZmkKICAgIGZpCiAgICBBQ19DSEVDS19MSUIoW2tyYjRdLCBba3JiX2dldF9jcmVk XSwgW2hhdmVfa3JiND15ZXNdLCBbaGF2ZV9rcmI0PW5vXSkKICAgIGlmIHRlc3QgJGhhdmVf a3JiNCA9IHllczsgdGhlbgogICAgICBLUkI0TElCPS1sa3JiNAogICAgICBMSUJTPSIkS1JC NExJQiAkTElCUyIKICAgIGVsc2UKICAgICAgQUNfQ0hFQ0tfTElCKFtrcmJdLCBba3JiX2dl dF9jcmVkXSwgW2hhdmVfa3JiPXllc10sIFtoYXZlX2tyYj1ub10pCiAgICAgIGlmIHRlc3Qg JGhhdmVfa3JiID0geWVzOyB0aGVuCiAgICAgICAgS1JCNExJQj0tbGtyYgogICAgICAgIExJ QlM9IiRLUkI0TElCICRMSUJTIgogICAgICBmaQogICAgZmkKICBmaQoKICBpZiB0ZXN0ICIk e3dpdGhfa2VyYmVyb3M1fSIgIT0gbm87IHRoZW4KICAgIEFDX0NIRUNLX0hFQURFUlMoW2ty YjUuaF0sCiAgICAgIFtBQ19DSEVDS19NRU1CRVJTKFtrcmI1X2Vycm9yLnRleHQsIGtyYjVf ZXJyb3IuZV90ZXh0XSwgW10sIFtdLAoJCSAgICAgICAgWyNpbmNsdWRlIDxrcmI1Lmg+XSld KQogIGVsc2UKICAgIEFDX0NIRUNLX0hFQURFUlMoW2tyYi5oXSwgW10sCgkJICAgICBbQUNf Q0hFQ0tfSEVBREVSUyhba2VyYmVyb3NJVi9rcmIuaF0sIFtdLAoJCQkJICAgICAgIFtBQ19D SEVDS19IRUFERVJTKFtrZXJiZXJvcy9rcmIuaF0pXSldKQogIGZpCiAgQUNfQ0hFQ0tfSEVB REVSUyhbY29tX2Vyci5oXSkKICBMSUJTPSRPTERfTElCUwpmaQoKQUNfU1VCU1QoW0NPTV9F UlJMSUJdKQpBQ19TVUJTVChbQ1JZUFRPTElCXSkKQUNfU1VCU1QoW0tSQjVMSUJdKQpBQ19T VUJTVChbREVTTElCXSkKQUNfU1VCU1QoW0tSQjRMSUJdKQoKQUNfQ0hFQ0tfSEVBREVSUyhb dmFsZ3JpbmQvdmFsZ3JpbmQuaF0pCgpBQ19DSEVDS19NRU1CRVJTKFtzdHJ1Y3QgdW5pcGFp ci51bmljb2RlXSwgW10sIFtdLCBbWyNpbmNsdWRlIDxsaW51eC9rZC5oPl1dKQoKQUNfQ0hF Q0tfRlVOQ1NfT05DRShbX19sc2FuX2lnbm9yZV9vYmplY3RdKQoKQUNfRlVOQ19GT1JLCgpk bmwgQUNfQ0hFQ0tfRlVOQ1NfT05DRSB3b3VsZG7igJl0IGJlIHJpZ2h0IGZvciBzbnByaW50 Ziwgd2hpY2ggbmVlZHMKZG5sIHRoZSBjdXJyZW50IENGTEFHUyBldGMuCkFDX0NIRUNLX0ZV TkNTKFtzbnByaW50Zl0pCgpkbmwgcG9zaXhfc3Bhd24uICBUaGUgY2hkaXIgYW5kIHNldHNp ZCBmdW5jdGlvbmFsaXR5IGlzIHJlbGF0aXZlbHkKZG5sIHJlY2VudCwgc28gd2UgY2hlY2sg Zm9yIGl0IHNwZWNpZmljYWxseS4KQUNfQ0hFQ0tfSEVBREVSUyhbc3Bhd24uaF0pCkFDX1NV QlNUKFtIQVZFX1NQQVdOX0hdKQpBQ19DSEVDS19GVU5DUyhbcG9zaXhfc3Bhd24gXAogICAg ICAgICAgICAgICAgcG9zaXhfc3Bhd25fZmlsZV9hY3Rpb25zX2FkZGNoZGlyIFwKICAgICAg ICAgICAgICAgIHBvc2l4X3NwYXduX2ZpbGVfYWN0aW9uc19hZGRjaGRpcl9ucCBcCiAgICAg ICAgICAgICAgICBwb3NpeF9zcGF3bmF0dHJfc2V0ZmxhZ3NdKQpBQ19TVUJTVChbSEFWRV9Q T1NJWF9TUEFXTl0pCkFDX1NVQlNUKFtIQVZFX1BPU0lYX1NQQVdOX0ZJTEVfQUNUSU9OU19B RERDSERJUl0pCkFDX1NVQlNUKFtIQVZFX1BPU0lYX1NQQVdOX0ZJTEVfQUNUSU9OU19BRERD SERJUl9OUF0pCkFDX1NVQlNUKFtIQVZFX1BPU0lYX1NQQVdOQVRUUl9TRVRGTEFHU10pCkFD X0NIRUNLX0RFQ0xTKFtQT1NJWF9TUEFXTl9TRVRTSURdLCBbXSwgW10sIFtbCiAgICAgICAg ICAgICAgICNpbmNsdWRlIDxzcGF3bi5oPgogICAgICAgICAgICAgICBdXSkKQUNfU1VCU1Qo W0hBVkVfREVDTF9QT1NJWF9TUEFXTl9TRVRTSURdKQoKZG5sIENoZWNrIGZvciBnbGliLiAg VGhpcyBkaWZmZXJzIGZyb20gb3RoZXIgbGlicmFyeSBjaGVja3MgaW4gdGhhdApkbmwgRW1h Y3MgbmVlZCBub3QgbGluayB0byBnbGliIHVubGVzcyBzb21lIG90aGVyIGxpYnJhcnkgaXMg YWxyZWFkeQpkbmwgbGlua2luZyB0byBnbGliLiAgQWx0aG91Z2ggZ2xpYiBwcm92aWRlcyBu byBmYWNpbGl0aWVzIHRoYXQgRW1hY3MKZG5sIG5lZWRzIGZvciBpdHMgb3duIHB1cnBvc2Vz LCB3aGVuIGdsaWIgaXMgcHJlc2VudCBFbWFjcyBuZWVkcyB0bwpkbmwgdXNlIHByaW1pdGl2 ZXMgbGlrZSBnX21haW5fY29udGV4dF9xdWVyeSB0byBhdm9pZCBjbGFzaGluZyB3aXRoCmRu bCBnbGliIGF0IGEgbG93IGxldmVsLgpkbmwKZG5sIENoZWNrIHRoaXMgbGF0ZSwgc2luY2Ug aXQgZGVwZW5kcyBvbiAkR1RLX0NGTEFHUyBldGMuClhHU0VMT0JKPQpBQ19DQUNIRV9DSEVD Syhbd2hldGhlciBHTGliIGlzIGxpbmtlZCBpbl0sIFtlbWFjc19jdl9saW5rc19nbGliXSwK W09MRENGTEFHUz0iJENGTEFHUyIKT0xETElCUz0iJExJQlMiCkNGTEFHUz0iJENGTEFHUyAk R1RLX0NGTEFHUyAkUlNWR19DRkxBR1MgJERCVVNfQ0ZMQUdTICRTRVRUSU5HU19DRkxBR1Mi CkxJQlM9IiRMSUJTICRHVEtfTElCUyAkUlNWR19MSUJTICREQlVTX0xJQlMgJFNFVFRJTkdT X0xJQlMiCkNGTEFHUz0iJENGTEFHUyAkTk9USUZZX0NGTEFHUyAkQ0FJUk9fQ0ZMQUdTIgpM SUJTPSIkTElCUyAkTk9USUZZX0xJQlMgJENBSVJPX0xJQlMiCkFDX0xJTktfSUZFTFNFKFtB Q19MQU5HX1BST0dSQU0oCglbWyNpbmNsdWRlIDxnbGliLmg+CgldXSwKCVtbZ19wcmludCAo IkhlbGxvIHdvcmxkIik7XV0pXSwKICAgICBbZW1hY3NfY3ZfbGlua3NfZ2xpYj15ZXNdLAog ICAgIFtlbWFjc19jdl9saW5rc19nbGliPW5vXSkKQ0ZMQUdTPSIkT0xEQ0ZMQUdTIgpMSUJT PSIkT0xETElCUyJdKQppZiB0ZXN0ICIke2VtYWNzX2N2X2xpbmtzX2dsaWJ9IiA9ICJ5ZXMi OyB0aGVuCiAgQUNfREVGSU5FKFtIQVZFX0dMSUJdLCBbMV0sIFtEZWZpbmUgdG8gMSBpZiBH TGliIGlzIGxpbmtlZCBpbi5dKQogIGlmIHRlc3QgIiRIQVZFX05TIiA9IG5vIDsgdGhlbgog ICAgWEdTRUxPQko9eGdzZWxlY3QubwogIGZpCmZpCkFDX1NVQlNUKFtYR1NFTE9CSl0pCgpk bmwgQWRhcHRlZCBmcm9tIEhhaWJsZSdzIHZlcnNpb24uCkFDX0NBQ0hFX0NIRUNLKFtmb3Ig bmxfbGFuZ2luZm8gYW5kIENPREVTRVRdLCBbZW1hY3NfY3ZfbGFuZ2luZm9fY29kZXNldF0s CiAgW0FDX0xJTktfSUZFTFNFKFtBQ19MQU5HX1BST0dSQU0oW1sjaW5jbHVkZSA8bGFuZ2lu Zm8uaD5dXSwKICAgIFtbY2hhciAqY3MgPSBubF9sYW5naW5mbyhDT0RFU0VUKTtdXSldLAog ICAgW2VtYWNzX2N2X2xhbmdpbmZvX2NvZGVzZXQ9eWVzXSwKICAgIFtlbWFjc19jdl9sYW5n aW5mb19jb2Rlc2V0PW5vXSkKICBdKQppZiB0ZXN0ICIkZW1hY3NfY3ZfbGFuZ2luZm9fY29k ZXNldCIgPSB5ZXM7IHRoZW4KICBBQ19ERUZJTkUoW0hBVkVfTEFOR0lORk9fQ09ERVNFVF0s IFsxXSwKICAgIFtEZWZpbmUgaWYgeW91IGhhdmUgPGxhbmdpbmZvLmg+IGFuZCBubF9sYW5n aW5mbyAoQ09ERVNFVCkuXSkKCiAgQUNfQ0FDSEVfQ0hFQ0soW2ZvciBubF9sYW5naW5mbyBh bmQgX05MX1BBUEVSX1dJRFRIXSwKICAgIFtlbWFjc19jdl9sYW5naW5mb19fbmxfcGFwZXJf d2lkdGhdLAogICAgW0FDX0xJTktfSUZFTFNFKFtBQ19MQU5HX1BST0dSQU0oW1sjaW5jbHVk ZSA8bGFuZ2luZm8uaD5dXSwKICAgICAgW1tjaGFyICpjcyA9IG5sX2xhbmdpbmZvIChfTkxf UEFQRVJfV0lEVEgpO11dKV0sCiAgICAgIFtlbWFjc19jdl9sYW5naW5mb19fbmxfcGFwZXJf d2lkdGg9eWVzXSwKICAgICAgW2VtYWNzX2N2X2xhbmdpbmZvX19ubF9wYXBlcl93aWR0aD1u b10pCiAgICBdKQogIGlmIHRlc3QgIiRlbWFjc19jdl9sYW5naW5mb19fbmxfcGFwZXJfd2lk dGgiID0geWVzOyB0aGVuCiAgICBBQ19ERUZJTkUoW0hBVkVfTEFOR0lORk9fX05MX1BBUEVS X1dJRFRIXSwgWzFdLAogICAgICBbRGVmaW5lIGlmIHlvdSBoYXZlIDxsYW5naW5mby5oPiBh bmQgbmxfbGFuZ2luZm8gKF9OTF9QQVBFUl9XSURUSCkuXSkKICBmaQpmaQoKQUNfVFlQRV9N QlNUQVRFX1QKCmRubCBGaXhtZTogQUNfU1lTX1BPU0lYX1RFUk1JT1Mgc2hvdWxkIHByb2Jh Ymx5IGJlIHVzZWQsIGJ1dCBpdCdzIG5vdCBjbGVhcgpkbmwgaG93IHRoZSB0dHkgY29kZSBp cyByZWxhdGVkIHRvIFBPU0lYIGFuZC9vciBvdGhlciB2ZXJzaW9ucyBvZiB0ZXJtaW9zLgpk bmwgVGhlIGZvbGxvd2luZyBsb29rcyBsaWtlIGEgdXNlZnVsIHN0YXJ0LgpkbmwKZG5sIEFD X1NZU19QT1NJWF9URVJNSU9TCmRubCBpZiB0ZXN0ICRhY19jdl9zeXNfcG9zaXhfdGVybWlv cyA9IHllczsgdGhlbgpkbmwgICAgQUNfREVGSU5FKFtIQVZFX1RFUk1JT1NdLCBbMV0sCmRu bCAgICAgIFtEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSBQT1NJWC1zdHlsZQpkbmwgICAgICAg ZnVuY3Rpb25zIGFuZCBtYWNyb3MgZm9yIHRlcm1pbmFsIGNvbnRyb2wuXSkKZG5sICAgIEFD X0RFRklORShbSEFWRV9UQ0FUVFJdLCBbMV0sCmRubCAgICAgIFtEZWZpbmUgdG8gMSBpZiB5 b3UgaGF2ZSB0Y2dldGF0dHIgYW5kIHRjc2V0YXR0ci5dKQpkbmwgZmkKCmRubCBUdXJuZWQg b24gSnVuZSAxOTk2IHN1cHBvc2luZyBub2JvZHkgd2lsbCBtaW5kIGl0LgpkbmwgTWluR1cg ZW11bGF0ZXMgcGFzc3dkIGRhdGFiYXNlLCBzbyB0aGlzIGZlYXR1cmUgZG9lc24ndCBtYWtl IHNlbnNlIHRoZXJlLgppZiB0ZXN0ICIke29wc3lzfSIgIT0gIm1pbmd3MzIiOyB0aGVuCiAg IEFDX0RFRklORShbQU1QRVJTQU5EX0ZVTExfTkFNRV0sIFsxXSwgW0RlZmluZSB0byB1c2Ug dGhlIGNvbnZlbnRpb24gdGhhdCAmCiAgICAgaW4gdGhlIGZ1bGwgbmFtZSBzdGFuZHMgZm9y IHRoZSBsb2dpbiBpZC5dKQpmaQoKZG5sIEV2ZXJ5Ym9keSBzdXBwb3J0cyB0aGlzLCBleGNl cHQgTVMuCmRubCBTZWVtcyBsaWtlIHRoZSBraW5kIG9mIHRoaW5nIHdlIHNob3VsZCBiZSB0 ZXN0aW5nIGZvciwgdGhvdWdoLgojIyBOb3RlOiBQVFlzIGFyZSBicm9rZW4gb24gZGFyd2lu IDw2LiAgVXNlIGF0IHlvdXIgb3duIHJpc2suCmlmIHRlc3QgIiR7b3BzeXN9IiAhPSAibWlu Z3czMiI7IHRoZW4KICBBQ19ERUZJTkUoW0hBVkVfUFRZU10sIFsxXSwgW0RlZmluZSBpZiB0 aGUgc3lzdGVtIHN1cHBvcnRzIHB0eSBkZXZpY2VzLl0pCmZpCgpkbmwgRXZlcnlib2R5IHN1 cHBvcnRzIHRoaXMsIGV4Y2VwdCBNUy1ET1MuCmRubCBTZWVtcyBsaWtlIHRoZSBraW5kIG9m IHRoaW5nIHdlIHNob3VsZCBiZSB0ZXN0aW5nIGZvciwgdGhvdWdoLgpBQ19ERUZJTkUoW0hB VkVfU09DS0VUU10sIFsxXSwgW0RlZmluZSBpZiB0aGUgc3lzdGVtIHN1cHBvcnRzCiAgNC4y LWNvbXBhdGlibGUgc29ja2V0cy5dKQoKQUhfVEVNUExBVEUoW0lOVEVSTkFMX1RFUk1JTkFM XSwKICBbVGhpcyBpcyBzdWJzdGl0dXRlZCB3aGVuICRURVJNIGlzICJpbnRlcm5hbCIuXSkK CkFIX1RFTVBMQVRFKFtOVUxMX0RFVklDRV0sIFtOYW1lIG9mIHRoZSBmaWxlIHRvIG9wZW4g dG8gZ2V0CiAgYSBudWxsIGZpbGUsIG9yIGEgZGF0YSBzaW5rLl0pCmlmIHRlc3QgIiR7b3Bz eXN9IiA9ICJtaW5ndzMyIjsgdGhlbgogIEFDX0RFRklORShbTlVMTF9ERVZJQ0VdLCBbIk5V TDoiXSkKZWxzZQogIEFDX0RFRklORShbTlVMTF9ERVZJQ0VdLCBbIi9kZXYvbnVsbCJdKQpm aQoKaWYgdGVzdCAiJHtvcHN5c30iID0gIm1pbmd3MzIiOyB0aGVuCiAgU0VQQ0hBUj0nOycK ZWxzZQogIFNFUENIQVI9JzonCmZpCkFDX0RFRklORV9VTlFVT1RFRChbU0VQQ0hBUl0sIFsn JFNFUENIQVInXSwKICBbQ2hhcmFjdGVyIHRoYXQgc2VwYXJhdGVzIFBBVEggZWxlbWVudHMu XSkKZG5sIFRoaXMgaXMgZm9yIE1pbkdXLCBhbmQgaXMgdXNlZCBpbiB0ZXN0L01ha2VmaWxl LmluLgpkbmwgVGhlIE1TWVMgQmFzaCBoYXMgaGV1cmlzdGljcyBmb3IgcmVwbGFjaW5nICc6 JyB3aXRoICc7JyB3aGVuIGl0CmRubCBkZWNpZGVzIHRoYXQgYSBjb21tYW5kLWxpbmUgYXJn dW1lbnQgdG8gYmUgcGFzc2VkIHRvIGEgTWluR1cgcHJvZ3JhbQpkbmwgaXMgYSBQQVRILXN0 eWxlIGxpc3Qgb2YgZGlyZWN0b3JpZXMuICBCdXQgdGhhdCBoZXVyaXN0aWNzIHBsYXlzIGl0 CmRubCBzYWZlLCBhbmQgb25seSBkb2VzIHRoZSByZXBsYWNlbWVudCB3aGVuIGl0IGlzIF9h YnNvbHV0ZWx5XyBzdXJlIGl0CmRubCBzZWVzIGEgY29sb24tc2VwYXJhdGVkIGxpc3Qgb2Yg ZmlsZSBuYW1lczsgZS5nLiAiOi4iIGlzIGxlZnQgYWxvbmUsCmRubCB3aGljaCBicmVha3Mg aW4tdHJlZSBidWlsZHMuICBTbyB3ZSBkbyB0aGlzIG1hbnVhbGx5IGluc3RlYWQuCmRubCBO b3RlIHRoYXQgd2UgY2Fubm90IHJlbHkgb24gUEFUSF9TRVBBUkFUT1IsIGFzIHRoYXQgb25l IHdpbGwgYWx3YXlzCmRubCBiZSBjb21wdXRlZCBhcyAnOicgaW4gTVNZUyBCYXNoLgpBQ19T VUJTVChbU0VQQ0hBUl0pCgpkbmwgRXZlcnlib2R5IHN1cHBvcnRzIHRoaXMsIGV4Y2VwdCBN Uy1ET1MuCkFDX0RFRklORShbc3VicHJvY2Vzc2VzXSwgWzFdLCBbRGVmaW5lIHRvIGVuYWJs ZSBhc3luY2hyb25vdXMgc3VicHJvY2Vzc2VzLl0pCgpBQ19ERUZJTkUoW1VTRVJfRlVMTF9O QU1FXSwgW3B3LT5wd19nZWNvc10sIFtIb3cgdG8gZ2V0IGEgdXNlcidzIGZ1bGwgbmFtZS5d KQoKCkFDX0RFRklORShbRElSRUNUT1JZX1NFUF0sIFsnLyddLAogIFtDaGFyYWN0ZXIgdGhh dCBzZXBhcmF0ZXMgZGlyZWN0b3JpZXMgaW4gYSBmaWxlIG5hbWUuXSkKCmlmIHRlc3QgIiR7 b3BzeXN9IiA9ICJtaW5ndzMyIjsgdGhlbgogIEFDX0RFRklORShbSVNfREVWSUNFX1NFUChf Y18pXSwgWygoX2NfKSA9PSAnOicpXSwKICAgIFtSZXR1cm5zIHRydWUgaWYgY2hhcmFjdGVy IGlzIGEgZGV2aWNlIHNlcGFyYXRvci5dKQoKICBBQ19ERUZJTkUoW0lTX0RJUkVDVE9SWV9T RVAoX2NfKV0sIFsoKF9jXykgPT0gJy8nIHx8IChfY18pID09ICdcXCcpXSwKICAgIFtSZXR1 cm5zIHRydWUgaWYgY2hhcmFjdGVyIGlzIGEgZGlyZWN0b3J5IHNlcGFyYXRvci5dKQoKICBB Q19ERUZJTkUoW0lTX0FOWV9TRVAoX2NfKV0sCiAgICBbKElTX0RJUkVDVE9SWV9TRVAgKF9j XykgfHwgSVNfREVWSUNFX1NFUCAoX2NfKSldLAogICAgW1JldHVybnMgdHJ1ZSBpZiBjaGFy YWN0ZXIgaXMgYW55IGZvcm0gb2Ygc2VwYXJhdG9yLl0pCmVsc2UKICBBQ19ERUZJTkUoW0lT X0RFVklDRV9TRVAoX2NfKV0sIDAsCiAgICBbUmV0dXJucyB0cnVlIGlmIGNoYXJhY3RlciBp cyBhIGRldmljZSBzZXBhcmF0b3IuXSkKCiAgQUNfREVGSU5FKFtJU19ESVJFQ1RPUllfU0VQ KF9jXyldLCBbKChfY18pID09IERJUkVDVE9SWV9TRVApXSwKICAgIFtSZXR1cm5zIHRydWUg aWYgY2hhcmFjdGVyIGlzIGEgZGlyZWN0b3J5IHNlcGFyYXRvci5dKQoKICBBQ19ERUZJTkUo W0lTX0FOWV9TRVAoX2NfKV0sIFsoSVNfRElSRUNUT1JZX1NFUCAoX2NfKSldLAogICAgW1Jl dHVybnMgdHJ1ZSBpZiBjaGFyYWN0ZXIgaXMgYW55IGZvcm0gb2Ygc2VwYXJhdG9yLl0pCmZp CgppZiB0ZXN0ICIkVVNFX1hfVE9PTEtJVCIgIT0gIm5vbmUiOyB0aGVuCiAgaGF2ZV9lZGl0 cmVzPXllcwogIGNhc2UgJG9wc3lzIGluCiAgICBocHV4KikKICAgICAgZG5sIEFzc2FyIFdl c3Rlcmx1bmQgPGFzc2FyQHNpY3Muc2U+IHNheXMgdGhpcyBpcyBuZWNlc3NhcnkKICAgICAg ZG5sIGZvciBIUC1VWCAxMC4yMCwgYW5kIHRoYXQgaXQgd29ya3MgZm9yIEhQLVVYIDAgYXMg d2VsbC4KICAgICAgaGF2ZV9lZGl0cmVzPW5vCiAgICA7OwogIGVzYWMKICBpZiB0ZXN0ICIk aGF2ZV9lZGl0cmVzIiAhPSBubyAmJiB0ZXN0ICEgLXogIiRMSUJYTVUiOyB0aGVuCiAgICBP TERMSUJTPSIkTElCUyIKICAgIGRubCBTZWUgbGliWG11LmEgY2hlY2sgYWJvdmUuCiAgICBp ZiB0ZXN0IHgkSEFWRV9YMTFYVFI2ID0geHllczsgdGhlbgogICAgICBMSUJTPSItbFh0IC1s U00gLWxJQ0UgJExJQlhNVSIKICAgIGVsc2UKICAgICAgT1RIRVJMSUJTPSItbFh0IC0kTElC WE1VIgogICAgZmkKICAgIEFDX0xJTktfSUZFTFNFKFtBQ19MQU5HX1BST0dSQU0oCiAgICAg IFtbI2luY2x1ZGUgPFgxMS9JbnRyaW5zaWMuaD4KICAgICAgICNpbmNsdWRlIDxYMTEvWG11 L0VkaXRyZXMuaD5dXSwKICAgICAgW1tfWEVkaXRSZXNDaGVja01lc3NhZ2VzICgwLCAwLCAw LCAwKTtdXSldLAogICAgICBbQUNfREVGSU5FKFtYX1RPT0xLSVRfRURJVFJFU10sIFsxXSwK ICAgICAgICBbRGVmaW5lIHRvIDEgaWYgd2Ugc2hvdWxkIHVzZSBYRWRpdFJlcy5dKV0pCiAg ICBMSUJTPSRPTERMSUJTCiAgZmkKZmkKCmNhc2UgJG9wc3lzIGluCiAgc29sYXJpcyB8IHVu aXh3YXJlICkKICAgIGRubCBTb21lIFNWcjRzIGRvbid0IGRlZmluZSBOU0lHIGluIHN5cy9z aWduYWwuaCBmb3IgQU5TSSBlbnZpcm9ubWVudHM7CiAgICBkbmwgaW5zdGVhZCwgdGhlcmUn cyBhIHN5c3RlbSB2YXJpYWJsZSBfc3lzX25zaWcuICBVbmZvcnR1bmF0ZWx5LCB3ZQogICAg ZG5sIG5lZWQgdGhlIGNvbnN0YW50IHRvIGRpbWVuc2lvbiBhbiBhcnJheS4gIFNvIHdpcmUg aW4gdGhlIGFwcHJvcHJpYXRlCiAgICBkbmwgdmFsdWUgaGVyZS4KICAgIEFDX0RFRklORShb TlNJR19NSU5JTVVNXSwgWzMyXSwgW01pbmltdW0gdmFsdWUgb2YgTlNJRy5dKQogICAgOzsK ZXNhYwoKZW1hY3NfYnJva2VuX1NJR0lPPW5vCgpjYXNlICRvcHN5cyBpbgogIGRubCBTSUdJ TyBleGlzdHMsIGJ1dCB0aGUgZmVhdHVyZSBkb2Vzbid0IHdvcmsgaW4gdGhlIHdheSBFbWFj cyBuZWVkcy4KICBocHV4KiB8IG5hY2wgfCBzb2xhcmlzIHwgdW5peHdhcmUgKQogICAgZW1h Y3NfYnJva2VuX1NJR0lPPXllcwogICAgOzsKCiAgYWl4NC0yKQogICAgZG5sIE9uIEFJWCBF bWFjcyB1c2VzIHRoZSBnbWFsbG9jLmMgbWFsbG9jIGltcGxlbWVudGF0aW9uLiAgQnV0IGdp dmVuCiAgICBkbmwgdGhlIHdheSB0aGlzIHN5c3RlbSB3b3JrcywgbGliYyBmdW5jdGlvbnMg dGhhdCByZXR1cm4gbWFsbG9jZWQKICAgIGRubCBtZW1vcnkgdXNlIHRoZSBsaWJjIG1hbGxv YyBpbXBsZW1lbnRhdGlvbi4gQ2FsbGluZyB4ZnJlZSBvcgogICAgZG5sIHhyZWFsbG9jIG9u IHRoZSByZXN1bHRzIG9mIHN1Y2ggZnVuY3Rpb25zIHJlc3VsdHMgaW4gYSBjcmFzaC4KICAg IGRubAogICAgZG5sIE9uZSBzb2x1dGlvbiBmb3IgdGhpcyBjb3VsZCBiZSB0byBkZWZpbmUg U1lTVEVNX01BTExPQyBpbiBjb25maWd1cmUsCiAgICBkbmwgYnV0IHRoYXQgZG9lcyBub3Qg Y3VycmVudGx5IHdvcmsgb24gdGhpcyBzeXN0ZW0uCiAgICBkbmwKICAgIGRubCBJdCBpcyBw b3NzaWJsZSB0byBjb21wbGV0ZWx5IG92ZXJyaWRlIHRoZSBtYWxsb2MgaW1wbGVtZW50YXRp b24gb24KICAgIGRubCBBSVgsIGJ1dCB0aGF0IGludm9sdmVzIHB1dHRpbmcgdGhlIG1hbGxv YyBmdW5jdGlvbnMgaW4gYSBzaGFyZWQKICAgIGRubCBsaWJyYXJ5IGFuZCBzZXR0aW5nIHRo ZSBNQUxMT0NUWVBFIGVudmlyb25tZW50IHZhcmlhYmxlIHRvIHBvaW50IHRvCiAgICBkbmwg dGhhdCBzaGFyZWQgbGlicmFyeS4KICAgIGRubAogICAgZG5sIEVtYWNzIGN1cnJlbnRseSBj YWxscyB4cmVhbGxvYyBvbiB0aGUgcmVzdWx0cyBvZiBnZXRfY3VycmVudF9kaXIgbmFtZSwK ICAgIGRubCB0byBhdm9pZCBhIGNyYXNoIGp1c3QgdXNlIHRoZSBFbWFjcyBpbXBsZW1lbnRh dGlvbiBmb3IgdGhhdCBmdW5jdGlvbi4KICAgIGRubAogICAgZG5sIEZJWE1FIFdlIGNvdWxk IGNoYW5nZSB0aGUgQUNfQ0hFQ0tfRlVOQ1MgY2FsbCBuZWFyIHRoZSBzdGFydAogICAgZG5s IG9mIHRoaXMgZmlsZSwgc28gdGhhdCB3ZSBkbyBub3QgY2hlY2sgZm9yIGdldF9jdXJyZW50 X2Rpcl9uYW1lCiAgICBkbmwgb24gQUlYLiAgQnV0IHRoYXQgbWlnaHQgYmUgZnJhZ2lsZSBp ZiBzb21ldGhpbmcgZWxzZSBlbmRzCiAgICBkbmwgdXAgdGVzdGluZyBmb3IgZ2V0X2N1cnJl bnRfZGlyX25hbWUgYXMgYSBkZXBlbmRlbmN5LgogICAgQUNfREVGSU5FKFtCUk9LRU5fR0VU X0NVUlJFTlRfRElSX05BTUVdLCBbMV0sIFtEZWZpbmUgaWYKICAgICAgZ2V0X2N1cnJlbnRf ZGlyX25hbWUgc2hvdWxkIG5vdCBiZSB1c2VkLl0pCiAgICA7OwoKICBmcmVlYnNkKQogICAg ZG5sIENpcmN1bXZlbnQgYSBidWcgaW4gRnJlZUJTRC4gIEluIHRoZSBmb2xsb3dpbmcgc2Vx dWVuY2Ugb2YKICAgIGRubCB3cml0ZXMvcmVhZHMgb24gYSBQVFksIHJlYWQoMikgcmV0dXJu cyBib2d1cyBkYXRhOgogICAgZG5sCiAgICBkbmwgd3JpdGUoMikgIDEwMjIgYnl0ZXMKICAg IGRubCB3cml0ZSgyKSAgIDk1NCBieXRlcywgZ2V0IEVBR0FJTgogICAgZG5sIHJlYWQoMikg ICAxMDI0IGJ5dGVzIGluIHByb2Nlc3NfcmVhZF9vdXRwdXQKICAgIGRubCByZWFkKDIpICAg ICAxMSBieXRlcyBpbiBwcm9jZXNzX3JlYWRfb3V0cHV0CiAgICBkbmwKICAgIGRubCBUaGF0 IGlzLCByZWFkKDIpIHJldHVybnMgbW9yZSBieXRlcyB0aGFuIGhhdmUgZXZlciBiZWVuIHdy aXR0ZW4KICAgIGRubCBzdWNjZXNzZnVsbHkuICBUaGUgMTAzMyBieXRlcyByZWFkIGFyZSB0 aGUgMTAyMiBieXRlcyB3cml0dGVuCiAgICBkbmwgc3VjY2Vzc2Z1bGx5IGFmdGVyIHByb2Nl c3NpbmcgKGZvciBleGFtcGxlIHdpdGggQ1JzIGFkZGVkIGlmIHRoZQogICAgZG5sIHRlcm1p bmFsIGlzIHNldCB1cCB0aGF0IHdheSB3aGljaCBpdCBpcyBoZXJlKS4gIFRoZSBzYW1lIGJ5 dGVzIHdpbGwKICAgIGRubCBiZSBzZWVuIGFnYWluIGluIGEgbGF0ZXIgcmVhZCgyKSwgd2l0 aG91dCB0aGUgQ1JzLgogICAgQUNfREVGSU5FKFtCUk9LRU5fUFRZX1JFQURfQUZURVJfRUFH QUlOXSwgWzFdLCBbRGVmaW5lIG9uIEZyZWVCU0QgdG8KICAgICAgd29yayBhcm91bmQgYW4g aXNzdWUgd2hlbiByZWFkaW5nIGZyb20gYSBQVFkuXSkKICAgIDs7CmVzYWMKCmNhc2UgJG9w c3lzIGluCiAgZ251LSogfCBzb2xhcmlzICkKICAgIGRubCBGSVhNRSBDYW4ndCB3ZSB0ZXN0 IGlmIHRoaXMgZXhpc3RzIChlZyAvcHJvYy8kJCk/CiAgICBBQ19ERUZJTkUoW0hBVkVfUFJP Q0ZTXSwgWzFdLCBbRGVmaW5lIGlmIHlvdSBoYXZlIHRoZSAvcHJvYyBmaWxlc3lzdGVtLl0p CiAgOzsKZXNhYwoKY2FzZSAkb3BzeXMgaW4KICBkYXJ3aW4gfCBkcmFnb25mbHkgfCBmcmVl YnNkIHwgbmV0YnNkIHwgb3BlbmJzZCApCiAgICBBQ19ERUZJTkUoW0RPTlRfUkVPUEVOX1BU WV0sIFsxXSwgW0RlZmluZSBpZiBwcm9jZXNzLmMgZG9lcyBub3QgbmVlZCB0bwogICAgICBj bG9zZSBhIHB0eSB0byBtYWtlIGl0IGEgY29udHJvbGxpbmcgdGVybWluYWwgKGl0IGlzIGFs cmVhZHkgYQogICAgICBjb250cm9sbGluZyB0ZXJtaW5hbCBvZiB0aGUgc3VicHJvY2Vzcywg YmVjYXVzZSB3ZSBkaWQgaW9jdGwgVElPQ1NDVFRZKS5dKQogIDs7CmVzYWMKCmRubCBGSVhN RSBTdXJlbHkgd2UgY2FuIHRlc3QgZm9yIHRoaXMgcmF0aGVyIHRoYW4gaGFyZC1jb2RlIGl0 LgpjYXNlICRvcHN5cyBpbgogIG5ldGJzZCB8IG9wZW5ic2QpIHNvdW5kX2RldmljZT0iL2Rl di9hdWRpbyIgOzsKICAqKSBzb3VuZF9kZXZpY2U9Ii9kZXYvZHNwIiA7Owplc2FjCgpkbmwg VXNlZCBpbiBzb3VuZC5jCkFDX0RFRklORV9VTlFVT1RFRChbREVGQVVMVF9TT1VORF9ERVZJ Q0VdLCBbIiRzb3VuZF9kZXZpY2UiXSwKICBbTmFtZSBvZiB0aGUgZGVmYXVsdCBzb3VuZCBk ZXZpY2UuXSkKCgpkbmwgRW1hY3MgY2FuIHJlYWQgaW5wdXQgdXNpbmcgU0lHSU8gYW5kIGJ1 ZmZlcmluZyBjaGFyYWN0ZXJzIGl0c2VsZiwKZG5sIG9yIHVzaW5nIENCUkVBSyBtb2RlIGFu ZCBtYWtpbmcgQy1nIGNhdXNlIFNJR0lOVC4KZG5sIFRoZSBjaG9pY2UgaXMgY29udHJvbGxl ZCBieSB0aGUgdmFyaWFibGUgaW50ZXJydXB0X2lucHV0LgpkbmwKZG5sIERlZmluZSBJTlRF UlJVUFRfSU5QVVQgdG8gbWFrZSBpbnRlcnJ1cHRfaW5wdXQgPSAxIHRoZSBkZWZhdWx0ICh1 c2UgU0lHSU8pCmRubApkbmwgRW1hY3MgdXNlcyB0aGUgcHJlc2VuY2Ugb2YgdGhlIFVTQUJM RV9TSUdJTyBtYWNybwpkbmwgdG8gaW5kaWNhdGUgd2hldGhlciBvciBub3Qgc2lnbmFsLWRy aXZlbiBJL08gaXMgcG9zc2libGUuICBJdCB1c2VzCmRubCBJTlRFUlJVUFRfSU5QVVQgdG8g ZGVjaWRlIHdoZXRoZXIgdG8gdXNlIGl0IGJ5IGRlZmF1bHQuCmRubApkbmwgU0lHSU8gY2Fu IGJlIHVzZWQgb25seSBvbiBzeXN0ZW1zIHRoYXQgaW1wbGVtZW50IGl0ICg0LjIgYW5kIDQu MykuCmRubCBDQlJFQUsgbW9kZSBoYXMgdHdvIGRpc2FkdmFudGFnZXMKZG5sIDEpIEF0IGxl YXN0IGluIDQuMiwgaXQgaXMgaW1wb3NzaWJsZSB0byBoYW5kbGUgdGhlIE1ldGEga2V5IHBy b3Blcmx5LgpkbmwgSSBoZWFyIHRoYXQgaW4gc3lzdGVtIFYgdGhpcyBwcm9ibGVtIGRvZXMg bm90IGV4aXN0LgpkbmwgMikgQ29udHJvbC1HIGNhdXNlcyBvdXRwdXQgdG8gYmUgZGlzY2Fy ZGVkLgpkbmwgSSBkbyBub3Qga25vdyB3aGV0aGVyIHRoaXMgY2FuIGJlIGZpeGVkIGluIHN5 c3RlbSBWLgpkbmwKZG5sIEFub3RoZXIgbWV0aG9kIG9mIGRvaW5nIGlucHV0IGlzIHBsYW5u ZWQgYnV0IG5vdCBpbXBsZW1lbnRlZC4KZG5sIEl0IHdvdWxkIGhhdmUgRW1hY3MgZm9yayBv ZmYgYSBzZXBhcmF0ZSBwcm9jZXNzCmRubCB0byByZWFkIHRoZSBpbnB1dCBhbmQgc2VuZCBp dCB0byB0aGUgdHJ1ZSBFbWFjcyBwcm9jZXNzCmRubCB0aHJvdWdoIGEgcGlwZS4KY2FzZSAk b3BzeXMgaW4KICBkYXJ3aW4gfCBnbnUtbGludXggfCBnbnUta2ZyZWVic2QpCiAgICBBQ19E RUZJTkUoW0lOVEVSUlVQVF9JTlBVVF0sIFsxXSwgW0RlZmluZSB0byByZWFkIGlucHV0IHVz aW5nIFNJR0lPLl0pCiAgOzsKZXNhYwoKCmRubCBJZiB0aGUgc3lzdGVtJ3MgaW1ha2UgY29u ZmlndXJhdGlvbiBmaWxlIGRlZmluZXMgJ05lZWRXaWRlUHJvdG90eXBlcycKZG5sIGFzICdO TycsIHdlIG11c3QgZGVmaW5lIE5BUlJPV1BST1RPIG1hbnVhbGx5LiAgU3VjaCBhIGRlZmlu ZSBpcwpkbmwgZ2VuZXJhdGVkIGluIHRoZSBNYWtlZmlsZSBnZW5lcmF0ZWQgYnkgJ3hta21m Jy4gIElmIHdlIGRvbid0IGRlZmluZQpkbmwgTkFSUk9XUFJPVE8sIHdlIHdpbGwgc2VlIHRo ZSB3cm9uZyBmdW5jdGlvbiBwcm90b3R5cGVzIGZvciBYIGZ1bmN0aW9ucwpkbmwgdGFraW5n IGZsb2F0IG9yIGRvdWJsZSBwYXJhbWV0ZXJzLgpjYXNlICRvcHN5cyBpbgogIGN5Z3dpbnxn bnV8Z251LWxpbnV4fGdudS1rZnJlZWJzZHxmcmVlYnNkfG5ldGJzZHxvcGVuYnNkKQogICAg QUNfREVGSU5FKFtOQVJST1dQUk9UT10sIFsxXSwgW0RlZmluZSBpZiBzeXN0ZW0ncyBpbWFr ZSBjb25maWd1cmF0aW9uCiAgICAgIGZpbGUgZGVmaW5lcyAnTmVlZFdpZGVQcm90b3R5cGVz JyBhcyAnTk8nLl0pCiAgOzsKZXNhYwoKCmRubCBVc2VkIGluIHByb2Nlc3MuYywgdGhpcyBt dXN0IGJlIGEgbG9vcCwgZXZlbiBpZiBpdCBvbmx5IHJ1bnMgb25jZS4KQUhfVEVNUExBVEUo W1BUWV9JVEVSQVRJT05dLCBbSG93IHRvIGl0ZXJhdGUgb3ZlciBQVFlzLl0pCmRubCBPbmx5 IHVzZWQgaWYgIVBUWV9JVEVSQVRJT04uICBJdGVyYXRlIGZyb20gRklSU1RfUFRZX0xFVFRF UiB0byB6LApkbmwgdHJ5aW5nIHN1ZmZpeGVzIDAtMTYuCkFIX1RFTVBMQVRFKFtGSVJTVF9Q VFlfTEVUVEVSXSwgW0xldHRlciB0byB1c2UgaW4gZmluZGluZyBkZXZpY2UgbmFtZSBvZgog IGZpcnN0IFBUWSwgaWYgUFRZcyBhcmUgc3VwcG9ydGVkLl0pCkFIX1RFTVBMQVRFKFtQVFlf T1BFTl0sIFtIb3cgdG8gb3BlbiBhIFBUWSwgaWYgbm9uLXN0YW5kYXJkLl0pCkFIX1RFTVBM QVRFKFtQVFlfTkFNRV9TUFJJTlRGXSwgW0hvdyB0byBnZXQgdGhlIGRldmljZSBuYW1lIG9m IHRoZSBjb250cm9sCiAgZW5kIG9mIGEgUFRZLCBpZiBub24tc3RhbmRhcmQuXSkKQUhfVEVN UExBVEUoW1BUWV9UVFlfTkFNRV9TUFJJTlRGXSwgW0hvdyB0byBnZXQgZGV2aWNlIG5hbWUg b2YgdGhlIHR0eQogIGVuZCBvZiBhIFBUWSwgaWYgbm9uLXN0YW5kYXJkLl0pCgpjYXNlICRv cHN5cyBpbgogIGFpeDQtMiApCiAgICBBQ19ERUZJTkUoW1BUWV9JVEVSQVRJT05dLCBbaW50 IGM7IGZvciAoYyA9IDA7ICFjIDsgYysrKV0pCiAgICBkbmwgWW91IGFsbG9jYXRlIGEgcHR5 IGJ5IG9wZW5pbmcgL2Rldi9wdGMgdG8gZ2V0IHRoZSBtYXN0ZXIgc2lkZS4KICAgIGRubCBU byBnZXQgdGhlIG5hbWUgb2YgdGhlIHNsYXZlIHNpZGUsIHlvdSBqdXN0IHR0eW5hbWUoKSB0 aGUgbWFzdGVyIHNpZGUuCiAgICBBQ19ERUZJTkUoW1BUWV9OQU1FX1NQUklOVEZdLCBbc3Ry Y3B5IChwdHlfbmFtZSwgIi9kZXYvcHRjIik7XSkKICAgIEFDX0RFRklORShbUFRZX1RUWV9O QU1FX1NQUklOVEZdLCBbc3RyY3B5IChwdHlfbmFtZSwgdHR5bmFtZSAoZmQpKTtdKQogICAg OzsKCiAgY3lnd2luICkKICAgIEFDX0RFRklORShbUFRZX0lURVJBVElPTl0sIFtpbnQgaTsg Zm9yIChpID0gMDsgaSA8IDE7IGkrKyldKQogICAgZG5sIG11bHRpLWxpbmUgQUNfREVGSU5F cyBhcmUgaGFyZC4gOigKICAgIEFDX0RFRklORShbUFRZX09QRU5dLAogICAgICBbIGRvIHsg aW50IGR1bW15OyBzaWdzZXRfdCBibG9ja2VkLCBwcm9jbWFzazsgc2lnZW1wdHlzZXQgKCZi bG9ja2VkKTsgc2lnYWRkc2V0ICgmYmxvY2tlZCwgU0lHQ0hMRCk7IHB0aHJlYWRfc2lnbWFz ayAoU0lHX0JMT0NLLCAmYmxvY2tlZCwgJnByb2NtYXNrKTsgaWYgKC0xID09IG9wZW5wdHkg KCZmZCwgJmR1bW15LCBwdHlfbmFtZSwgMCwgMCkpIGZkID0gLTE7IHB0aHJlYWRfc2lnbWFz ayAoU0lHX1NFVE1BU0ssICZwcm9jbWFzaywgMCk7IGlmIChmZCA+PSAwKSBlbWFjc19jbG9z ZSAoZHVtbXkpOyB9IHdoaWxlIChmYWxzZSldKQogICAgQUNfREVGSU5FKFtQVFlfTkFNRV9T UFJJTlRGXSwgW10pCiAgICBBQ19ERUZJTkUoW1BUWV9UVFlfTkFNRV9TUFJJTlRGXSwgW10p CiAgICA7OwoKICBnbnUgfCBxbnhudG8gKQogICAgQUNfREVGSU5FKFtGSVJTVF9QVFlfTEVU VEVSXSwgWydwJ10pCiAgICA7OwoKICBnbnUtbGludXggfCBnbnUta2ZyZWVic2QgfCBkcmFn b25mbHkgfCBmcmVlYnNkIHwgb3BlbmJzZCB8IG5ldGJzZCB8IGRhcndpbiB8IG5hY2wgKQog ICAgZG5sIGlmIEhBVkVfR1JBTlRQVAogICAgaWYgdGVzdCAieCRhY19jdl9mdW5jX2dyYW50 cHQiID0geHllczsgdGhlbgogICAgICBBQ19ERUZJTkUoW1VOSVg5OF9QVFlTXSwgWzFdLCBb RGVmaW5lIGlmIHRoZSBzeXN0ZW0gaGFzIFVuaXg5OCBQVFlzLl0pCiAgICAgIEFDX0RFRklO RShbUFRZX0lURVJBVElPTl0sIFtpbnQgaTsgZm9yIChpID0gMDsgaSA8IDE7IGkrKyldKQog ICAgICBkbmwgTm90ZSB0aGF0IGdyYW50cHQgYW5kIHVubG9ja3B0IG1heSBmb3JrLiAgV2Ug bXVzdCBibG9jayBTSUdDSExECiAgICAgIGRubCB0byBwcmV2ZW50IHNpZ2NobGRfaGFuZGxl ciBmcm9tIGludGVyY2VwdGluZyB0aGUgY2hpbGQncyBkZWF0aC4KICAgICAgQUNfREVGSU5F KFtQVFlfVFRZX05BTUVfU1BSSU5URl0sCglbeyBjaGFyICpwdHluYW1lID0gMDsgc2lnc2V0 X3QgYmxvY2tlZDsgc2lnZW1wdHlzZXQgKCZibG9ja2VkKTsgc2lnYWRkc2V0ICgmYmxvY2tl ZCwgU0lHQ0hMRCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX0JMT0NLLCAmYmxvY2tlZCwgMCk7 IGlmIChncmFudHB0IChmZCkgIT0gLTEgJiYgdW5sb2NrcHQgKGZkKSAhPSAtMSkgcHR5bmFt ZSA9IHB0c25hbWUoZmQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19VTkJMT0NLLCAmYmxvY2tl ZCwgMCk7IGlmICghcHR5bmFtZSkgeyBlbWFjc19jbG9zZSAoZmQpOyByZXR1cm4gLTE7IH0g c25wcmludGYgKHB0eV9uYW1lLCBQVFlfTkFNRV9TSVpFLCAiJXMiLCBwdHluYW1lKTsgfV0p CiAgICAgIGRubCBpZiBIQVZFX1BPU0lYX09QRU5QVAogICAgICBpZiB0ZXN0ICJ4JGFjX2N2 X2Z1bmNfcG9zaXhfb3BlbnB0IiA9IHh5ZXM7IHRoZW4KCUFDX0RFRklORShbUFRZX09QRU5d LAoJICBbZG8geyBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19DTE9FWEVDIHwgT19O T0NUVFkpOyBpZiAoZmQgPCAwICYmIGVycm5vID09IEVJTlZBTCkgZmQgPSBwb3NpeF9vcGVu cHQgKE9fUkRXUiB8IE9fTk9DVFRZKTsgfSB3aGlsZSAoZmFsc2UpXSkKCUFDX0RFRklORShb UFRZX05BTUVfU1BSSU5URl0sIFtdKQogICAgICBkbmwgaWYgSEFWRV9HRVRQVAogICAgICBl bGlmIHRlc3QgIngkYWNfY3ZfZnVuY19nZXRwdCIgPSB4eWVzOyB0aGVuCglBQ19ERUZJTkUo W1BUWV9PUEVOXSwgW2ZkID0gZ2V0cHQgKCldKQoJQUNfREVGSU5FKFtQVFlfTkFNRV9TUFJJ TlRGXSwgW10pCiAgICAgIGVsc2UKCUFDX0RFRklORShbUFRZX05BTUVfU1BSSU5URl0sIFtz dHJjcHkgKHB0eV9uYW1lLCAiL2Rldi9wdG14Iik7XSkKICAgICAgZmkKICAgIGVsc2UKICAg ICAgQUNfREVGSU5FKFtGSVJTVF9QVFlfTEVUVEVSXSwgWydwJ10pCiAgICBmaQogICAgOzsK CiAgaHB1eCopCiAgICBBQ19ERUZJTkUoW0ZJUlNUX1BUWV9MRVRURVJdLCBbJ3AnXSkKICAg IEFDX0RFRklORShbUFRZX05BTUVfU1BSSU5URl0sCiAgICAgIFtzcHJpbnRmIChwdHlfbmFt ZSwgIi9kZXYvcHR5bS9wdHklYyV4IiwgYywgaSk7XSkKICAgIEFDX0RFRklORShbUFRZX1RU WV9OQU1FX1NQUklOVEZdLAogICAgICBbc3ByaW50ZiAocHR5X25hbWUsICIvZGV2L3B0eS90 dHklYyV4IiwgYywgaSk7XSkKICAgIDs7CgogIHNvbGFyaXMgKQogICAgZG5sIE9uIFN5c1Zy NCwgZ3JhbnRwdCgzKSBmb3JrcyBhIHN1YnByb2Nlc3MsIHNvIGRvIG5vdCB1c2UKICAgIGRu bCBPX0NMT0VYRUMgd2hlbiBvcGVuaW5nIHRoZSBwdHksIGFuZCBrZWVwIHRoZSBTSUdDSExE IGhhbmRsZXIKICAgIGRubCBmcm9tIGludGVyY2VwdGluZyB0aGF0IGRlYXRoLiAgSWYgYW55 IGNoaWxkIGJ1dCBncmFudHB0J3Mgc2hvdWxkIGRpZQogICAgZG5sIHdpdGhpbiwgaXQgc2hv dWxkIGJlIGNhdWdodCBhZnRlciBzaWdyZWxzZSgyKS4KICAgIEFDX0RFRklORShbUFRZX09Q RU5dLCBbZmQgPSBvcGVuIChwdHlfbmFtZSwgT19SRFdSIHwgT19OT05CTE9DSyldKQogICAg QUNfREVGSU5FKFtQVFlfVFRZX05BTUVfU1BSSU5URl0sCiAgICAgIFt7IGNoYXIgKnB0c25h bWUgKGludCksICpwdHluYW1lOyBpbnQgZ3JhbnRwdF9yZXN1bHQ7IHNpZ3NldF90IGJsb2Nr ZWQ7IHNpZ2VtcHR5c2V0ICgmYmxvY2tlZCk7IHNpZ2FkZHNldCAoJmJsb2NrZWQsIFNJR0NI TEQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19CTE9DSywgJmJsb2NrZWQsIDApOyBncmFudHB0 X3Jlc3VsdCA9IGdyYW50cHQgKGZkKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfVU5CTE9DSywg JmJsb2NrZWQsIDApOyBpZiAoZ3JhbnRwdF9yZXN1bHQgPT0gLTEgfHwgdW5sb2NrcHQgKGZk KSA9PSAtMSB8fCAhKHB0eW5hbWUgPSBwdHNuYW1lIChmZCkpKSB7IGVtYWNzX2Nsb3NlIChm ZCk7IHJldHVybiAtMTsgfSBzbnByaW50ZiAocHR5X25hbWUsIFBUWV9OQU1FX1NJWkUsICIl cyIsIHB0eW5hbWUpOyB9XSkKICAgIDs7CgogIHVuaXh3YXJlICkKICAgIGRubCBDb21tZW50 cyBhcmUgYXMgcGVyIHNvbGFyaXMuCiAgICBBQ19ERUZJTkUoW1BUWV9PUEVOXSwgW2ZkID0g b3BlbiAocHR5X25hbWUsIE9fUkRXUiB8IE9fTk9OQkxPQ0spXSkKICAgIEFDX0RFRklORShb UFRZX1RUWV9OQU1FX1NQUklOVEZdLAogICAgICBbeyBjaGFyICpwdHNuYW1lIChpbnQpLCAq cHR5bmFtZTsgaW50IGdyYW50cHRfcmVzdWx0OyBzaWdzZXRfdCBibG9ja2VkOyBzaWdlbXB0 eXNldCAoJmJsb2NrZWQpOyBzaWdhZGRzZXQgKCZibG9ja2VkLCBTSUdDSExEKTsgcHRocmVh ZF9zaWdtYXNrIChTSUdfQkxPQ0ssICZibG9ja2VkLCAwKTsgZ3JhbnRwdF9yZXN1bHQgPSBn cmFudHB0IChmZCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX1VOQkxPQ0ssICZibG9ja2VkLCAw KTsgaWYgKGdyYW50cHRfcmVzdWx0ID09IC0xKSBmYXRhbCgiY291bGQgbm90IGdyYW50IHNs YXZlIHB0eSIpOyBpZiAodW5sb2NrcHQoZmQpID09IC0xKSBmYXRhbCgiY291bGQgbm90IHVu bG9jayBzbGF2ZSBwdHkiKTsgaWYgKCEocHR5bmFtZSA9IHB0c25hbWUoZmQpKSkgZmF0YWwg KCJjb3VsZCBub3QgZW5hYmxlIHNsYXZlIHB0eSIpOyBzbnByaW50ZiAocHR5X25hbWUsIFBU WV9OQU1FX1NJWkUsICIlcyIsIHB0eW5hbWUpOyB9XSkKICAgIDs7CgogIGhhaWt1KikKICAg IEFDX0RFRklORShbRklSU1RfUFRZX0xFVFRFUl0sIFsncyddKQogICAgQUNfREVGSU5FKFtQ VFlfTkFNRV9TUFJJTlRGXSwgW10pCiAgICBkbmwgb24gSGFpa3UgcHR5IG5hbWVzIGFyZW4n dCBkaXN0aW5jdGl2ZSwgdGh1cyB0aGUgdXNlIG9mIHBvc2l4X29wZW5wdAogICAgQUNfREVG SU5FKFtQVFlfT1BFTl0sIFtmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19OT05CTE9D SyldKQogICAgQUNfREVGSU5FKFtQVFlfVFRZX05BTUVfU1BSSU5URl0sCiAgICAgIFt7IGNo YXIgKnB0eW5hbWU7IGludCBncmFudHB0X3Jlc3VsdDsgc2lnc2V0X3QgYmxvY2tlZDsgc2ln ZW1wdHlzZXQgKCZibG9ja2VkKTsgc2lnYWRkc2V0ICgmYmxvY2tlZCwgU0lHQ0hMRCk7IHB0 aHJlYWRfc2lnbWFzayAoU0lHX0JMT0NLLCAmYmxvY2tlZCwgMCk7IGdyYW50cHRfcmVzdWx0 ID0gZ3JhbnRwdCAoZmQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19VTkJMT0NLLCAmYmxvY2tl ZCwgMCk7IGlmIChncmFudHB0X3Jlc3VsdCA9PSAtMSkgZmF0YWwoImNvdWxkIG5vdCBncmFu dCBzbGF2ZSBwdHkiKTsgaWYgKHVubG9ja3B0KGZkKSA9PSAtMSkgZmF0YWwoImNvdWxkIG5v dCB1bmxvY2sgc2xhdmUgcHR5Iik7IGlmICghKHB0eW5hbWUgPSBwdHNuYW1lKGZkKSkpIGZh dGFsICgiY291bGQgbm90IGVuYWJsZSBzbGF2ZSBwdHkiKTsgc25wcmludGYgKHB0eV9uYW1l LCBQVFlfTkFNRV9TSVpFLCAiJXMiLCBwdHluYW1lKTsgfV0pCiAgICA7Owplc2FjCgoKY2Fz ZSAkb3BzeXMgaW4KICBzb2xhcmlzIHwgdW5peHdhcmUgKQogICAgZG5sIFRoaXMgY2hhbmdl IG1lYW5zIHRoYXQgd2UgZG9uJ3QgbG9vcCB0aHJvdWdoIGFsbG9jYXRlX3B0eSB0b28KICAg IGRubCBtYW55IHRpbWVzIGluIHRoZSAocmFyZSkgZXZlbnQgb2YgYSBmYWlsdXJlLgogICAg QUNfREVGSU5FKFtGSVJTVF9QVFlfTEVUVEVSXSwgWyd6J10pCiAgICBBQ19ERUZJTkUoW1BU WV9OQU1FX1NQUklOVEZdLCBbc3RyY3B5IChwdHlfbmFtZSwgIi9kZXYvcHRteCIpO10pCiAg ICBkbmwgUHVzaCB2YXJpb3VzIHN0cmVhbXMgbW9kdWxlcyBvbnRvIGEgUFRZIGNoYW5uZWwu ICBVc2VkIGluIHByb2Nlc3MuYy4KICAgIEFDX0RFRklORShbU0VUVVBfU0xBVkVfUFRZXSwK ICAgICAgW2lmIChpb2N0bCAoc3RkX2luLCBJX1BVU0gsICJwdGVtIikgPT0gLTEpIGZhdGFs ICgiaW9jdGwgSV9QVVNIIHB0ZW0iKTsgaWYgKGlvY3RsIChzdGRfaW4sIElfUFVTSCwgImxk dGVybSIpID09IC0xKSBmYXRhbCAoImlvY3RsIElfUFVTSCBsZHRlcm0iKTsgaWYgKGlvY3Rs IChzdGRfaW4sIElfUFVTSCwgInR0Y29tcGF0IikgPT0gLTEpIGZhdGFsICgiaW9jdGwgSV9Q VVNIIHR0Y29tcGF0Iik7XSwgW0hvdyB0byBzZXQgdXAgYSBzbGF2ZSBQVFksIGlmIG5lZWRl ZC5dKQogICAgOzsKZXNhYwoKCkFIX1RFTVBMQVRFKFtTSUdOQUxTX1ZJQV9DSEFSQUNURVJT XSwgW01ha2UgcHJvY2Vzc19zZW5kX3NpZ25hbCB3b3JrIGJ5CiJ0eXBpbmciIGEgc2lnbmFs IGNoYXJhY3RlciBvbiB0aGUgcHR5Ll0pCgpjYXNlICRvcHN5cyBpbgogIGRubCBQZXJyeSBT bWl0aCA8cGVkekBkZGl2dDEuYXVzdGluLmlibS5jb20+IHNheXMgdGhpcyBpcyBjb3JyZWN0 IGZvciBBSVguCiAgYWl4NC0yIHwgY3lnd2luIHwgZ251IHwgZHJhZ29uZmx5IHwgZnJlZWJz ZCB8IG5ldGJzZCB8IG9wZW5ic2QgfCBkYXJ3aW4gKQogICAgQUNfREVGSU5FKFtTSUdOQUxT X1ZJQV9DSEFSQUNURVJTXSwgWzFdKQogICAgOzsKCiAgZG5sIDIxIEp1biAwNjogRXJpYyBI YW5jaHJvdyA8b2ZmYnkxQGJsYXJnLm5ldD4gc2F5cyB0aGlzIHdvcmtzLgogIGRubCBGSVhN RSBEb2VzIGdudS1rZnJlZWJzZCBoYXZlIGxpbnV4L3ZlcnNpb24uaD8gIEl0IHNlZW1zIHVu bGlrZWx5Li4uCiAgZ251LWxpbnV4IHwgZ251LWtmcmVlYnNkICkKCiAgICBBQ19DQUNIRV9D SEVDSyhbZm9yIHNpZ25hbHMgdmlhIGNoYXJhY3RlcnNdLCBbZW1hY3NfY3Zfc2lnbmFsc192 aWFfY2hhcnNdLAogICAgW0FDX1BSRVBST0NfSUZFTFNFKFtBQ19MQU5HX1BST0dSQU0oW1sK I2luY2x1ZGUgPGxpbnV4L3ZlcnNpb24uaD4KI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8IDB4 MjA0MDAKIyBlcnJvciAiTGludXggdmVyc2lvbiB0b28gb2xkIgojZW5kaWYKICAgICAgXV0s IFtbXV0pXSwKCVtlbWFjc19jdl9zaWduYWxzX3ZpYV9jaGFycz15ZXNdLAoJW2VtYWNzX2N2 X3NpZ25hbHNfdmlhX2NoYXJzPW5vXSldKQoKICAgIHRlc3QgIiRlbWFjc19jdl9zaWduYWxz X3ZpYV9jaGFycyIgPSB5ZXMgJiYKICAgICAgQUNfREVGSU5FKFtTSUdOQUxTX1ZJQV9DSEFS QUNURVJTXSwgWzFdKQogICAgOzsKZXNhYwoKCkFIX1RFTVBMQVRFKFtUQUIzXSwgW1VuZG9j dW1lbnRlZC5dKQoKY2FzZSAkb3BzeXMgaW4KICBkYXJ3aW4pIEFDX0RFRklORShbVEFCM10s IFtPWFRBQlNdKSA7OwoKICBnbnUgfCBkcmFnb25mbHkgfCBmcmVlYnNkIHwgbmV0YnNkIHwg b3BlbmJzZCApCiAgICBBQ19ERUZJTkUoW1RBQkRMWV0sIFtPWFRBQlNdLCBbVW5kb2N1bWVu dGVkLl0pCiAgICBBQ19ERUZJTkUoW1RBQjNdLCBbT1hUQUJTXSkKICAgIDs7CgogIGdudS1s aW51eCB8IGdudS1rZnJlZWJzZCApCiAgICBBQ19QUkVQUk9DX0lGRUxTRSgKICAgICAgW0FD X0xBTkdfUFJPR1JBTSgKCSBbWwojaWZuZGVmIF9faWE2NF9fCiMgZXJyb3IgIm5vdCBpYTY0 IgojZW5kaWYKCSBdXSwgW1tdXSldLAogICAgICBbQUNfREVGSU5FKFtHQ19NQVJLX1NFQ09O REFSWV9TVEFDSygpXSwKICAgICAgICBbZG8geyBleHRlcm4gdm9pZCAqX19saWJjX2lhNjRf cmVnaXN0ZXJfYmFja2luZ19zdG9yZV9iYXNlOyBfX2J1aWx0aW5faWE2NF9mbHVzaHJzICgp OyBtYXJrX21lbW9yeSAoX19saWJjX2lhNjRfcmVnaXN0ZXJfYmFja2luZ19zdG9yZV9iYXNl LCBfX2J1aWx0aW5faWE2NF9ic3AgKCkpO30gd2hpbGUgKGZhbHNlKV0sCglbTWFyayBhIHNl Y29uZGFyeSBzdGFjaywgbGlrZSB0aGUgcmVnaXN0ZXIgc3RhY2sgb24gdGhlIGlhNjQuXSld LCBbXSkKICAgIDs7CgogIGhwdXgqKQogICAgQUNfREVGSU5FKFtSVU5fVElNRV9SRU1BUF0s IFsxXSwgW0RlZmluZSBpZiBlbWFjcy5jIG5lZWRzIHRvIGNhbGwKICAgICAgcnVuX3RpbWVf cmVtYXA7IGZvciBIUFVYLl0pCiAgICA7Owplc2FjCgoKZG5sIFRoaXMgd29uJ3QgYmUgdXNl ZCBhdXRvbWF0aWNhbGx5IHlldC4gIFdlIGFsc28gbmVlZCB0byBrbm93LCBhdCBsZWFzdCwK ZG5sIHRoYXQgdGhlIHN0YWNrIGlzIGNvbnRpbnVvdXMuCkFIX1RFTVBMQVRFKFtHQ19TRVRK TVBfV09SS1NdLCBbRGVmaW5lIGlmIHNldGptcCBpcyBrbm93biB0byBzYXZlIGFsbAogIHJl Z2lzdGVycyByZWxldmFudCBmb3IgY29uc2VydmF0aXZlIGdhcmJhZ2UgY29sbGVjdGlvbiBp biB0aGUgam1wX2J1Zi5dKQoKCmNhc2UgJG9wc3lzIGluCiAgZG5sIE5vdCBhbGwgdGhlIGFy Y2hpdGVjdHVyZXMgYXJlIHRlc3RlZCwgYnV0IHRoZXJlIGFyZSBEZWJpYW4gcGFja2FnZXMK ICBkbmwgZm9yIFNDTSBhbmQvb3IgR3VpbGUgb24gdGhlbSwgc28gdGhlIHRlY2huaXF1ZSBt dXN0IHdvcmsuICBTZWUgYWxzbwogIGRubCBjb21tZW50cyBpbiBhbGxvYy5jIGNvbmNlcm5p bmcgc2V0am1wIGFuZCBnY2MuCiAgZG5sIEZpeG1lOiBpdCdzIHByb2JhYmx5IHNhZmUgdG8g anVzdCB1c2UgdGhlIEdDQyBjb25kaXRpb25hbCBiZWxvdy4KICBnbnUtbGludXggfCBnbnUt a2ZyZWVic2QgKQogICAgQUNfUFJFUFJPQ19JRkVMU0UoW0FDX0xBTkdfUFJPR1JBTShbWwoj aWYgZGVmaW5lZCBfX2kzODZfXyB8fCBkZWZpbmVkIF9fc3BhcmNfXyB8fCBkZWZpbmVkIF9f bWM2ODAwMF9fIFwKICB8fCBkZWZpbmVkIF9fYWxwaGFfXyB8fCBkZWZpbmVkIF9fbWlwc19f IHx8IGRlZmluZWQgX19zMzkwX18gXAogIHx8IGRlZmluZWQgX19hcm1fXyB8fCBkZWZpbmVk IF9fcG93ZXJwY19fIHx8IGRlZmluZWQgX19hbWQ2NF9fIFwKICB8fCBkZWZpbmVkIF9feDg2 XzY0X18gXAogIHx8IGRlZmluZWQgX19pYTY0X18gfHwgZGVmaW5lZCBfX3NoX18KLyogb2sg Ki8KI2Vsc2UKIyBlcnJvciAic2V0am1wIG5vdCBrbm93biB0byB3b3JrIG9uIHRoaXMgYXJj aCIKI2VuZGlmCiAgICBdXSwgW1tdXSldLCBbQUNfREVGSU5FKFtHQ19TRVRKTVBfV09SS1Nd LCBbMV0pXSkKICAgIDs7CmVzYWMKCgppZiB0ZXN0IHgkR0NDID0geHllczsgdGhlbgogICBk bmwgR0NfU0VUSk1QX1dPUktTIGlzIG5lYXJseSBhbHdheXMgYXBwcm9wcmlhdGUgZm9yIEdD Qy4KICAgQUNfREVGSU5FKFtHQ19TRVRKTVBfV09SS1NdLCBbMV0pCmVsc2UKICBjYXNlICRv cHN5cyBpbgogICAgYWl4KiB8IGRyYWdvbmZseSB8IGZyZWVic2QgfCBuZXRic2QgfCBvcGVu YnNkIHwgc29sYXJpcyApCiAgICAgIEFDX0RFRklORShbR0NfU0VUSk1QX1dPUktTXSwgWzFd KQogICAgICA7OwogIGVzYWMKZmkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkbmwg R0NDPwoKZG5sIEluIGEgd2VpcmQgcXVpcmssIE1TIHJ1bnRpbWUgdXNlcyBfc2V0am1wIGFu ZCBsb25nam1wLgpBQ19DQUNIRV9DSEVDSyhbZm9yIF9zZXRqbXBdLCBbZW1hY3NfY3ZfZnVu Y19fc2V0am1wXSwKICBbQUNfTElOS19JRkVMU0UoCiAgICAgW0FDX0xBTkdfUFJPR1JBTSgK ICAgICAgIFtbI2luY2x1ZGUgPHNldGptcC5oPgogICAgICAgICAjaWZkZWYgX19NSU5HVzMy X18KICAgICAgICAgIyBkZWZpbmUgX2xvbmdqbXAgbG9uZ2ptcAogICAgICAgICAjZW5kaWYK ICAgICAgIF1dLAogICAgICAgW1tqbXBfYnVmIGo7CgkgaWYgKCEgX3NldGptcCAoaikpCgkg ICBfbG9uZ2ptcCAoaiwgMSk7XV0pXSwKICAgICBbZW1hY3NfY3ZfZnVuY19fc2V0am1wPXll c10sCiAgICAgW2VtYWNzX2N2X2Z1bmNfX3NldGptcD1ub10pXSkKaWYgdGVzdCAkZW1hY3Nf Y3ZfZnVuY19fc2V0am1wID0geWVzOyB0aGVuCiAgQUNfREVGSU5FKFtIQVZFX19TRVRKTVBd LCBbMV0sIFtEZWZpbmUgdG8gMSBpZiBfc2V0am1wIGFuZCBfbG9uZ2ptcCB3b3JrLl0pCmZp CgojIFdlIG5lZWQgdG8gcHJlc2VydmUgc2lnbmFsIG1hc2sgdG8gaGFuZGxlIEMgc3RhY2sg b3ZlcmZsb3dzLgpBQ19DQUNIRV9DSEVDSyhbZm9yIHNpZ3NldGptcF0sIFtlbWFjc19jdl9m dW5jX3NpZ3NldGptcF0sCiAgW0FDX0xJTktfSUZFTFNFKAogICAgIFtBQ19MQU5HX1BST0dS QU0oCiAgICAgICBbWyNpbmNsdWRlIDxzZXRqbXAuaD4KICAgICAgIF1dLAogICAgICAgW1tz aWdqbXBfYnVmIGo7CiAgICAgICAgIGlmICghIHNpZ3NldGptcCAoaiwgMSkpCgkgICBzaWds b25nam1wIChqLCAxKTtdXSldLAogICAgIFtlbWFjc19jdl9mdW5jX3NpZ3NldGptcD15ZXNd LAogICAgIFtlbWFjc19jdl9mdW5jX3NpZ3NldGptcD1ub10pXSkKaWYgdGVzdCAkZW1hY3Nf Y3ZfZnVuY19zaWdzZXRqbXAgPSB5ZXM7IHRoZW4KICBBQ19ERUZJTkUoW0hBVkVfU0lHU0VU Sk1QXSwgWzFdLAogICAgW0RlZmluZSB0byAxIGlmIHNpZ3NldGptcCBhbmQgc2lnbG9uZ2pt cCB3b3JrLl0pCmZpCgpjYXNlICRlbWFjc19jdl9mdW5jX3NpZ3NldGptcCwkZW1hY3NfY3Zf YWx0ZXJuYXRlX3N0YWNrLCRvcHN5cyBpbgogIHllcyx5ZXMsKiB8ICosKixtaW5ndzMyKQog ICAgQUNfREVGSU5FKFtIQVZFX1NUQUNLX09WRVJGTE9XX0hBTkRMSU5HXSwgWzFdLAogICAg ICBbRGVmaW5lIHRvIDEgaWYgQyBzdGFjayBvdmVyZmxvdyBjYW4gYmUgaGFuZGxlZCBpbiBz b21lIGNhc2VzLl0pOzsKZXNhYwoKY2FzZSAkb3BzeXMgaW4KICBzb2xhcmlzIHwgdW5peHdh cmUgKQogICAgZG5sIFRJT0NHUEdSUCBpcyBicm9rZW4gaW4gU3lzVnI0LCBzbyB3ZSBjYW4n dCBzZW5kIHNpZ25hbHMgdG8gUFRZCiAgICBkbmwgc3VicHJvY2Vzc2VzIHRoZSB1c3VhbCB3 YXkuICBCdXQgVElPQ1NJR05BTCBkb2VzIHdvcmsgZm9yIFBUWXMsCiAgICBkbmwgYW5kIHRo aXMgaXMgYWxsIHdlIG5lZWQuCiAgICBBQ19ERUZJTkUoW1RJT0NTSUdTRU5EXSwgW1RJT0NT SUdOQUxdLCBbU29tZSBwbGF0Zm9ybXMgcmVkZWZpbmUgdGhpcy5dKQogICAgOzsKZXNhYwoK CmNhc2UgJG9wc3lzIGluCiAgaHB1eCogfCBzb2xhcmlzICkKICAgIGRubCBVc2VkIGluIHhm YWNlcy5jLgogICAgQUNfREVGSU5FKFtYT1NfTkVFRFNfVElNRV9IXSwgWzFdLCBbQ29tcGVu c2F0ZSBmb3IgYSBidWcgaW4gWG9zLmggb24KICAgICAgc29tZSBzeXN0ZW1zLCB3aGVyZSBp dCByZXF1aXJlcyB0aW1lLmguXSkKICAgIDs7CmVzYWMKCgpkbmwgRGVmaW5lIHN5bWJvbHMg dG8gaWRlbnRpZnkgdGhlIHZlcnNpb24gb2YgVW5peCB0aGlzIGlzLgpkbmwgRGVmaW5lIGFs bCB0aGUgc3ltYm9scyB0aGF0IGFwcGx5IGNvcnJlY3RseS4KQUhfVEVNUExBVEUoW0RPU19O VF0sIFtEZWZpbmUgaWYgdGhlIHN5c3RlbSBpcyBNUyBET1Mgb3IgTVMgV2luZG93cy5dKQpB SF9URU1QTEFURShbTVNET1NdLCBbRGVmaW5lIGlmIHRoZSBzeXN0ZW0gaXMgTVMgRE9TLl0p CkFIX1RFTVBMQVRFKFtVU0ddLCBbRGVmaW5lIGlmIHRoZSBzeXN0ZW0gaXMgY29tcGF0aWJs ZSB3aXRoIFN5c3RlbSBJSUkuXSkKQUhfVEVNUExBVEUoW1VTRzVfNF0sCiAgW0RlZmluZSBp ZiB0aGUgc3lzdGVtIGlzIGNvbXBhdGlibGUgd2l0aCBTeXN0ZW0gViBSZWxlYXNlIDQuXSkK CmNhc2UgJG9wc3lzIGluCiAgYWl4NC0yKQogICAgQUNfREVGSU5FKFtVU0ddLCBbXSkKICAg IGRubCBUaGlzIHN5bWJvbCBzaG91bGQgYmUgZGVmaW5lZCBvbiBBSVggVmVyc2lvbiAzICA/ Pz8/Pz8/CiAgICBBQ19QUkVQUk9DX0lGRUxTRShbQUNfTEFOR19QUk9HUkFNKFtbCiNpZm5k ZWYgX0FJWAojIGVycm9yICJfQUlYIG5vdCBkZWZpbmVkIgojZW5kaWYKICAgIF1dLCBbW11d KV0sIFtdLCBbQUNfREVGSU5FKFtfQUlYXSwgW10sIFtEZWZpbmUgaWYgdGhlIHN5c3RlbSBp cyBBSVguXSldKQogICAgOzsKCiAgY3lnd2luKQogICAgQUNfREVGSU5FKFtDWUdXSU5dLCBb MV0sIFtEZWZpbmUgaWYgdGhlIHN5c3RlbSBpcyBDeWd3aW4uXSkKICAgIDs7CgogIGRhcndp bikKICAgIGRubCBOb3QgX19BUFBMRV9fLCBhcyB0aGlzIG1heSBub3QgYmUgZGVmaW5lZCBv biBub24tbWFjT1MgRGFyd2luLgogICAgZG5sIE5vdCBEQVJXSU4sIGJlY2F1c2UgUGFudGhl ciBhbmQgbG93ZXIgQ29yZUZvdW5kYXRpb24uaCB1c2UgREFSV0lOIHRvCiAgICBkbmwgZGlz dGluZ3Vpc2ggbWFjT1MgZnJvbSBwdXJlIERhcndpbi4KICAgIEFDX0RFRklORShbREFSV0lO X09TXSwgW10sIFtEZWZpbmUgaWYgdGhlIHN5c3RlbSBpcyBEYXJ3aW4uXSkKICAgIDs7Cgog IGdudS1saW51eCB8IGdudS1rZnJlZWJzZCApCiAgICBBQ19ERUZJTkUoW1VTR10sIFtdKQog ICAgQUNfREVGSU5FKFtHTlVfTElOVVhdLCBbXSwKICAgICAgW0RlZmluZSBpZiB0aGlzIHN5 c3RlbSBpcyBjb21wYXRpYmxlIHdpdGggR05VL0xpbnV4Ll0pCiAgICA7OwoKICBocHV4KikK ICAgIEFDX0RFRklORShbVVNHXSwgW10pCiAgICBBQ19ERUZJTkUoW0hQVVhdLCBbXSwgW0Rl ZmluZSBpZiB0aGUgc3lzdGVtIGlzIEhQVVguXSkKICAgIDs7CgogIG1pbmd3MzIpCiAgICBB Q19ERUZJTkUoW0RPU19OVF0sIFtdKQogICAgQUNfREVGSU5FKFtXSU5ET1dTTlRdLCBbMV0s IFtEZWZpbmUgaWYgY29tcGlsaW5nIGZvciBuYXRpdmUgTVMgV2luZG93cy5dKQogICAgaWYg dGVzdCAieCRhY19lbmFibGVfY2hlY2tpbmciICE9ICJ4IiA7IHRoZW4KICAgICAgQUNfREVG SU5FKFtFTUFDU0RFQlVHXSwgWzFdLAoJW0RlZmluZSB0byAxIHRvIGVuYWJsZSB3MzIgZGVi dWcgZmFjaWxpdGllcy5dKQogICAgZmkKICAgIDs7CgogIHNvbGFyaXMpCiAgICBBQ19ERUZJ TkUoW1VTR10sIFtdKQogICAgQUNfREVGSU5FKFtVU0c1XzRdLCBbXSkKICAgIEFDX0RFRklO RShbU09MQVJJUzJdLCBbXSwgW0RlZmluZSBpZiB0aGUgc3lzdGVtIGlzIFNvbGFyaXMuXSkK ICAgIDs7CgogIHVuaXh3YXJlKQogICAgQUNfREVGSU5FKFtVU0ddLCBbXSkKICAgIEFDX0RF RklORShbVVNHNV80XSwgW10pCiAgICA7OwoKICBoYWlrdSkKICAgIEFDX0RFRklORShbSEFJ S1VdLCBbXSwgW0RlZmluZSBpZiB0aGUgc3lzdGVtIGlzIEhhaWt1Ll0pCiAgICA7Owplc2Fj CgpBQ19TWVNfUE9TSVhfVEVSTUlPUwppZiB0ZXN0ICRhY19jdl9zeXNfcG9zaXhfdGVybWlv cyA9IHllczsgdGhlbgogIEFDX0NIRUNLX1NJWkVPRihbc3BlZWRfdF0sIFtdLCBbI2luY2x1 ZGUgPHRlcm1pb3MuaD5dKQogIGRubCBvbiBIYWlrdSwgYW5kIHBvc3NpYmx5IG90aGVyIHBs YXRmb3Jtcywgc3BlZWRfdCBpcyBkZWZpbmVkIHRvCiAgZG5sIHVuc2lnbmVkIGNoYXIsIGV2 ZW4gd2hlbiBzcGVlZHMgZ3JlYXRlciB0aGFuIDIwMCBiYXVkIGFyZQogIGRubCBkZWZpbmVk LgoKICBpZiB0ZXN0ICR7YWNfY3Zfc2l6ZW9mX3NwZWVkX3R9IC1sdCAyOyB0aGVuCiAgICBB Q19ERUZJTkUoW0hBVkVfVElOWV9TUEVFRF9UXSwgWzFdLAogICAgICAgIFtEZWZpbmUgdG8g MSBpZiBzcGVlZF90IGhhcyBzb21lIHNvcnQgb2Ygbm9uc2Vuc2ljYWxseSB0aW55IHNpemUu XSkKICBmaQpmaQoKQUNfQ0FDSEVfQ0hFQ0soW2ZvciB1c2FibGUgRklPTlJFQURdLCBbZW1h Y3NfY3ZfdXNhYmxlX0ZJT05SRUFEXSwKICBbY2FzZSAkb3BzeXMgaW4KICAgICBhaXg0LTIg fCBuYWNsKQogICAgICAgZG5sIEJVSUxEIDkwMDggLSBGSU9OUkVBRCBwcm9ibGVtIHN0aWxs IGV4aXN0cyBpbiBYLVdpbmRvd3MuCiAgICAgICBlbWFjc19jdl91c2FibGVfRklPTlJFQUQ9 bm8KICAgICAgIDs7CgogICAgIG1pbmd3MzIpCiAgICAgICBlbWFjc19jdl91c2FibGVfRklP TlJFQUQ9eWVzCiAgICAgICA7OwoKICAgICAqKQogICAgICAgQUNfQ09NUElMRV9JRkVMU0Uo CgkgW0FDX0xBTkdfUFJPR1JBTShbWyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KCQkJICAgICNp bmNsdWRlIDxzeXMvaW9jdGwuaD4KCQkJICAgICNpZmRlZiBVU0c1XzQKCQkJICAgICMgaW5j bHVkZSA8c3lzL2ZpbGlvLmg+CgkJCSAgICAjZW5kaWYKCQkJICBdXSwKCQkJICBbW2ludCBm b28gPSBpb2N0bCAoMCwgRklPTlJFQUQsICZmb28pO11dKV0sCgkgW2VtYWNzX2N2X3VzYWJs ZV9GSU9OUkVBRD15ZXNdLAoJIFtlbWFjc19jdl91c2FibGVfRklPTlJFQUQ9bm9dKQogICAg ICAgOzsKICAgZXNhY10pCmlmIHRlc3QgJGVtYWNzX2N2X3VzYWJsZV9GSU9OUkVBRCA9IHll czsgdGhlbgogIEFDX0RFRklORShbVVNBQkxFX0ZJT05SRUFEXSwgWzFdLCBbRGVmaW5lIHRv IDEgaWYgRklPTlJFQUQgaXMgdXNhYmxlLl0pCgogIGlmIHRlc3QgJGVtYWNzX2Jyb2tlbl9T SUdJTyA9IG5vOyB0aGVuCiAgICBBQ19DQUNIRV9DSEVDSyhbZm9yIHVzYWJsZSBTSUdJT10s IFtlbWFjc19jdl91c2FibGVfU0lHSU9dLAogICAgICBbQUNfQ09NUElMRV9JRkVMU0UoCgkg W0FDX0xBTkdfUFJPR1JBTShbWyNpbmNsdWRlIDxmY250bC5oPgoJCQkgICAgI2luY2x1ZGUg PHNpZ25hbC5oPgoJCQkgIF1dLAoJCQkgIFtbaW50IGZvbyA9IFNJR0lPIHwgRl9TRVRGTCB8 IEZBU1lOQztdXSldLAoJIFtlbWFjc19jdl91c2FibGVfU0lHSU89eWVzXSwKCSBbZW1hY3Nf Y3ZfdXNhYmxlX1NJR0lPPW5vXSldLAogICAgICBbZW1hY3NfY3ZfdXNhYmxlX1NJR0lPPXll c10sCiAgICAgIFtlbWFjc19jdl91c2FibGVfU0lHSU89bm9dKQogICAgaWYgdGVzdCAkZW1h Y3NfY3ZfdXNhYmxlX1NJR0lPID0geWVzOyB0aGVuCiAgICAgIEFDX0RFRklORShbVVNBQkxF X1NJR0lPXSwgWzFdLCBbRGVmaW5lIHRvIDEgaWYgU0lHSU8gaXMgdXNhYmxlLl0pCiAgICBm aQogIGZpCgogIGlmIHRlc3QgJGVtYWNzX2Jyb2tlbl9TSUdJTyA9IG5vICYmIHRlc3QgJGVt YWNzX2N2X3VzYWJsZV9TSUdJTyA9IG5vOyB0aGVuCiAgICBBQ19DQUNIRV9DSEVDSyhbZm9y IHVzYWJsZSBTSUdQT0xMXSwgW2VtYWNzX2N2X3VzYWJsZV9TSUdQT0xMXSwKICAgICAgW0FD X0NPTVBJTEVfSUZFTFNFKAoJIFtBQ19MQU5HX1BST0dSQU0oW1sjaW5jbHVkZSA8ZmNudGwu aD4KCQkJICAgICNpbmNsdWRlIDxzaWduYWwuaD4KCQkJICBdXSwKCQkJICBbW2ludCBmb28g PSBTSUdQT0xMIHwgRl9TRVRGTDtdXSldLAoJIFtlbWFjc19jdl91c2FibGVfU0lHUE9MTD15 ZXNdLAoJIFtlbWFjc19jdl91c2FibGVfU0lHUE9MTD1ub10pXSwKICAgICAgW2VtYWNzX2N2 X3VzYWJsZV9TSUdQT0xMPXllc10sCiAgICAgIFtlbWFjc19jdl91c2FibGVfU0lHUE9MTD1u b10pCiAgICBpZiB0ZXN0ICRlbWFjc19jdl91c2FibGVfU0lHUE9MTCA9IHllczsgdGhlbgog ICAgICBBQ19ERUZJTkUoW1VTQUJMRV9TSUdQT0xMXSwgWzFdLCBbRGVmaW5lIHRvIDEgaWYg U0lHUE9MTCBpcyB1c2FibGUgYnV0IFNJR0lPIGlzIG5vdC5dKQogICAgZmkKICBmaQpmaQoK Y2FzZSAkb3BzeXMgaW4KICBocHV4MTEpCiAgICBkbmwgSXQgd29ya3MgdG8gb3BlbiB0aGUg cHR5J3MgdHR5IGluIHRoZSBwYXJlbnQgKEVtYWNzKSwgdGhlbgogICAgZG5sIGNsb3NlIGFu ZCByZW9wZW4gaXQgaW4gdGhlIGNoaWxkLgogICAgQUNfREVGSU5FKFtVU0dfU1VCVFRZX1dP UktTXSwgWzFdLCBbRGVmaW5lIGZvciBVU0cgc3lzdGVtcyB3aGVyZSBpdAogICAgICB3b3Jr cyB0byBvcGVuIGEgcHR5J3MgdHR5IGluIHRoZSBwYXJlbnQgcHJvY2VzcywgdGhlbiBjbG9z ZSBhbmQKICAgICAgcmVvcGVuIGl0IGluIHRoZSBjaGlsZC5dKQogICAgOzsKCiAgc29sYXJp cykKICAgIEFDX0RFRklORShbX1NUUlVDVFVSRURfUFJPQ10sIFsxXSwgW05lZWRlZCBmb3Ig c3lzdGVtX3Byb2Nlc3NfYXR0cmlidXRlcwogICAgICBvbiBTb2xhcmlzLl0pCiAgICA7Owpl c2FjCgojIFNldCB1cCB0aGUgQ0ZMQUdTIGZvciByZWFsIGNvbXBpbGF0aW9uLCBzbyB3ZSBj YW4gc3Vic3RpdHV0ZSBpdC4KQ0ZMQUdTPSIkUkVBTF9DRkxBR1MiCkNQUEZMQUdTPSIkUkVB TF9DUFBGTEFHUyIKTElCUz0iJFJFQUxfTElCUyIKCiMjIEhhY2sgdG8gZGV0ZWN0IGEgYnVn Z3kgR0NDIHZlcnNpb24uCmlmIHRlc3QgIiRHQ0MiID0geWVzICYmIFwKICAgJENDIC0tdmVy c2lvbiAyPiAvZGV2L251bGwgfCBncmVwICdnY2MuKiA0LjUuMCcgPi9kZXYvbnVsbDsgdGhl bgogIGNhc2UgJENGTEFHUyBpbgogICAgKi1mbm8tb3B0aW1pemUtc2libGluZy1jYWxscyop IDs7CiAgICAqLU9APDpAMjNAOj5AKikKICAgICAgQUNfTVNHX0VSUk9SKFtHQ0MgNC41LjAg aGFzIHByb2JsZW1zIGNvbXBpbGluZyBFbWFjczsgc2VlIGV0Yy9QUk9CTEVNUy5dKTs7CiAg ZXNhYwpmaQoKdmVyc2lvbj0kUEFDS0FHRV9WRVJTSU9OCgpjb3B5cmlnaHQ9IkNvcHlyaWdo dCAoQykgMjAyMyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4iCkFDX0RFRklORV9V TlFVT1RFRChbQ09QWVJJR0hUXSwgWyIkY29weXJpZ2h0Il0sCiAgW1Nob3J0IGNvcHlyaWdo dCBzdHJpbmcgZm9yIHRoaXMgdmVyc2lvbiBvZiBFbWFjcy5dKQpBQ19TVUJTVChbY29weXJp Z2h0XSkKCiMjIyBTcGVjaWZ5IHdoYXQgc29ydCBvZiB0aGluZ3Mgd2UnbGwgYmUgZWRpdGlu ZyBpbnRvIE1ha2VmaWxlIGFuZCBjb25maWcuaC4KIyMjIFVzZSBjb25maWd1cmF0aW9uIGhl cmUgdW5jYW5vbmljYWxpemVkIHRvIGF2b2lkIGV4Y2VlZGluZyBzaXplIGxpbWl0cy4KQUNf U1VCU1QoW3ZlcnNpb25dKQpBQ19TVUJTVChbY29uZmlndXJhdGlvbl0pCiMjIFVudXNlZD8K QUNfU1VCU1QoW2Nhbm9uaWNhbF0pCkFDX1NVQlNUKFtzcmNkaXJdKQpBQ19TVUJTVChbcHJl Zml4XSkKQUNfU1VCU1QoW2V4ZWNfcHJlZml4XSkKQUNfU1VCU1QoW2JpbmRpcl0pCkFDX1NV QlNUKFtkYXRhZGlyXSkKQUNfU1VCU1QoW2dzZXR0aW5nc3NjaGVtYWRpcl0pCkFDX1NVQlNU KFtzaGFyZWRzdGF0ZWRpcl0pCkFDX1NVQlNUKFtsaWJleGVjZGlyXSkKQUNfU1VCU1QoW21h bmRpcl0pCkFDX1NVQlNUKFtpbmZvZGlyXSkKQUNfU1VCU1QoW2xpc3BkaXJyZWxdKQpBQ19T VUJTVChbbGlzcGRpcl0pCkFDX1NVQlNUKFtzdGFuZGFyZGxpc3BwYXRoXSkKQUNfU1VCU1Qo W2xvY2FsbGlzcHBhdGhdKQpBQ19TVUJTVChbbGlzcHBhdGhdKQpBQ19TVUJTVChbeF9kZWZh dWx0X3NlYXJjaF9wYXRoXSkKQUNfU1VCU1QoW2V0Y2Rpcl0pCkFDX1NVQlNUKFthcmNobGli ZGlyXSkKQUNfU1VCU1QoW2V0Y2RvY2Rpcl0pCkFDX1NVQlNUKFtiaXRtYXBkaXJdKQpBQ19T VUJTVChbZ2FtZWRpcl0pCkFDX1NVQlNUKFtnYW1ldXNlcl0pCkFDX1NVQlNUKFtnYW1lZ3Jv dXBdKQojIyBGSVhNRT8gTm90aGluZyB1c2VzIEBMRF9TV0lUQ0hfWF9TSVRFQC4KIyMgc3Jj L01ha2VmaWxlLmluIGRpZCBhZGQgTERfU1dJVENIX1hfU0lURSAoYXMgYSBjcHAgZGVmaW5l KSB0byB0aGUKIyMgZW5kIG9mIExJQlhfQkFTRSwgYnV0IG5vdGhpbmcgZXZlciBzZXQgaXQu CkFDX1NVQlNUKFtMRF9TV0lUQ0hfWF9TSVRFXSkKQUNfU1VCU1QoW0NfU1dJVENIX1hfU0lU RV0pCkFDX1NVQlNUKFtHTlVTVEVQX0NGTEFHU10pCkFDX1NVQlNUKFtDRkxBR1NdKQojIyBV c2VkIGluIGx3bGliL01ha2VmaWxlLmluLgpBQ19TVUJTVChbWF9UT09MS0lUX1RZUEVdKQpB Q19TVUJTVChbbnNfYXBwZGlyXSkKQUNfU1VCU1QoW25zX2FwcGJpbmRpcl0pCkFDX1NVQlNU KFtuc19hcHBsaWJleGVjZGlyXSkKQUNfU1VCU1QoW25zX2FwcGxpYmRpcl0pCkFDX1NVQlNU KFtuc19hcHByZXNkaXJdKQpBQ19TVUJTVChbbnNfYXBwc3JjXSkKQUNfU1VCU1QoW0dOVV9P QkpDX0NGTEFHU10pCkFDX1NVQlNUKFtPVEhFUl9GSUxFU10pCgppZiB0ZXN0IC1uICIke3Rl cm1faGVhZGVyfSI7IHRoZW4KICAgIEFDX0RFRklORV9VTlFVT1RFRChbVEVSTV9IRUFERVJd LCBbIiR7dGVybV9oZWFkZXJ9Il0sCiAgICAgICAgW0RlZmluZSB0byB0aGUgaGVhZGVyIGZv ciB0aGUgYnVpbHQtaW4gd2luZG93IHN5c3RlbS5dKQpmaQoKQUNfREVGSU5FX1VOUVVPVEVE KFtFTUFDU19DT05GSUdVUkFUSU9OXSwgIFsiJHtjYW5vbmljYWx9Il0sCgkJICAgW0RlZmlu ZSB0byB0aGUgY2Fub25pY2FsIEVtYWNzIGNvbmZpZ3VyYXRpb24gbmFtZS5dKQpBQ19ERUZJ TkVfVU5RVU9URUQoW0VNQUNTX0NPTkZJR19PUFRJT05TXSwgIiR7ZW1hY3NfY29uZmlnX29w dGlvbnN9IiwKCQkgICBbRGVmaW5lIHRvIHRoZSBvcHRpb25zIHBhc3NlZCB0byBjb25maWd1 cmUuXSkKClhNRU5VX09CSj0KWE9CSj0KRk9OVF9PQko9CmlmIHRlc3QgIiR7SEFWRV9YX1dJ TkRPV1N9IiA9ICJ5ZXMiIDsgdGhlbgogIEFDX0RFRklORShbSEFWRV9YX1dJTkRPV1NdLCBb MV0sCgkgICAgW0RlZmluZSB0byAxIGlmIHlvdSB3YW50IHRvIHVzZSB0aGUgWCB3aW5kb3cg c3lzdGVtLl0pCiAgWE1FTlVfT0JKPXhtZW51Lm8KICBYT0JKPSJ4dGVybS5vIHhmbnMubyB4 c2VsZWN0Lm8geHJkYi5vIHhzbWZucy5vIHhzZXR0aW5ncy5vIgogIEZPTlRfT0JKPXhmb250 Lm8KICBpZiB0ZXN0ICIkSEFWRV9DQUlSTyIgPSAieWVzIjsgdGhlbgogICAgRk9OVF9PQko9 IiRGT05UX09CSiBmdGZvbnQubyBmdGNyZm9udC5vIgogIGVsaWYgdGVzdCAiJEhBVkVfWEZU IiA9ICJ5ZXMiOyB0aGVuCiAgICBGT05UX09CSj0iJEZPTlRfT0JKIGZ0Zm9udC5vIHhmdGZv bnQubyIKICBlbGlmIHRlc3QgIiRIQVZFX0ZSRUVUWVBFIiA9ICJ5ZXMiOyB0aGVuCiAgICBG T05UX09CSj0iJEZPTlRfT0JKIGZ0Zm9udC5vIgogIGZpCmZpCgppZiB0ZXN0ICIke3dpbmRv d19zeXN0ZW19IiA9ICJwZ3RrIjsgdGhlbgogICBGT05UX09CSj0iZnRmb250Lm8gZnRjcmZv bnQubyIKZmkKCmlmIHRlc3QgIiR7SEFWRV9CRV9BUFB9IiA9ICJ5ZXMiIDsgdGhlbgogIGlm IHRlc3QgIiR7SEFWRV9DQUlST30iID0gInllcyI7IHRoZW4KICAgIEZPTlRfT0JKPSIkRk9O VF9PQkogZnRmb250Lm8gZnRjcmZvbnQubyIKICBmaQpmaQoKaWYgdGVzdCAiJHtIQVZFX0hB UkZCVVpafSIgPSAieWVzIiA7IHRoZW4KICBGT05UX09CSj0iJEZPTlRfT0JKIGhiZm9udC5v IgpmaQpBQ19TVUJTVChbRk9OVF9PQkpdKQpBQ19TVUJTVChbWE1FTlVfT0JKXSkKQUNfU1VC U1QoW1hPQkpdKQpBQ19TVUJTVChbRk9OVF9PQkpdKQoKV0lER0VUX09CSj0KTU9USUZfTElC Vz0KaWYgdGVzdCAiJHtVU0VfWF9UT09MS0lUfSIgIT0gIm5vbmUiIDsgdGhlbgogIFdJREdF VF9PQko9d2lkZ2V0Lm8KICBBQ19ERUZJTkUoW1VTRV9YX1RPT0xLSVRdLCBbMV0sIFtEZWZp bmUgdG8gMSBpZiB1c2luZyBhbiBYIHRvb2xraXQuXSkKICBpZiB0ZXN0ICIke1VTRV9YX1RP T0xLSVR9IiA9ICJMVUNJRCI7IHRoZW4KICAgIEFDX0RFRklORShbVVNFX0xVQ0lEXSwgWzFd LCBbRGVmaW5lIHRvIDEgaWYgdXNpbmcgdGhlIEx1Y2lkIFggdG9vbGtpdC5dKQogIGVsaWYg dGVzdCAiJHtVU0VfWF9UT09MS0lUfSIgPSAiTU9USUYiOyB0aGVuCiAgICBBQ19ERUZJTkUo W1VTRV9NT1RJRl0sIFsxXSwgW0RlZmluZSB0byAxIGlmIHVzaW5nIHRoZSBNb3RpZiBYIHRv b2xraXQuXSkKICAgIE1PVElGX0xJQlc9LWxYbQogICAgY2FzZSAiJG9wc3lzIiBpbgogICAg ICBnbnUtbGludXgpCiAgICAgICAgIyMgUGF1bCBBYnJhaGFtcyA8YWJyYWhhbXMgYXQgZXF1 aW5veC5zaGF5c25ldC5jb20+IHNheXMgdGhpcyBpcyBuZWVkZWQuCiAgICAgICAgTU9USUZf TElCVz0iJE1PVElGX0xJQlcgLWxYcG0iCiAgICAgICAgOzsKCiAgICAgIHVuaXh3YXJlKQog ICAgICAgICMjIFJpY2hhcmQgQW50aG9ueSBSeWFuIDxyeWFuciBhdCBlbGxpbmd0bi5mdGMu bnJjcy51c2RhLmdvdj4KICAgICAgICAjIyBzYXlzIC1sWGltcCBpcyBuZWVkZWQgaW4gVU5J WF9TViAuLi4gNC4yIDEuMS4yLgogICAgICAgIE1PVElGX0xJQlc9Ik1PVElGX0xJQlcgLWxY aW1wIgogICAgICAgIDs7CgogICAgICBhaXg0LTIpCiAgICAgICAgIyMgb2xzb25AbWNzLmFu bC5nb3Ygc2F5cyAtbGkxOG4gaXMgbmVlZGVkIGJ5IC1sWG0uCiAgICAgICAgTU9USUZfTElC Vz0iJE1PVElGX0xJQlcgLWxpMThuIgogICAgICAgIDs7CiAgICBlc2FjCiAgICBNT1RJRl9M SUJXPSIkTU9USUZfTElCVyAkTElCWFAiCiAgZmkKZmkKQUNfU1VCU1QoW1dJREdFVF9PQkpd KQoKVE9PTEtJVF9MSUJXPQpjYXNlICIkVVNFX1hfVE9PTEtJVCIgaW4KICBNT1RJRikgVE9P TEtJVF9MSUJXPSIkTU9USUZfTElCVyIgOzsKICBMVUNJRCkgVE9PTEtJVF9MSUJXPSIkTFVD SURfTElCVyIgOzsKICBub25lKSB0ZXN0ICJ4JEhBVkVfR1RLIiA9ICJ4eWVzIiAmJiBUT09M S0lUX0xJQlc9IiRHVEtfTElCUyIgOzsKZXNhYwppZiB0ZXN0ICIkSEFWRV9YV0lER0VUUyIg PSAieWVzIjsgdGhlbgogIFRPT0xLSVRfTElCVz0iJFRPT0xLSVRfTElCVyAtbFhjb21wb3Np dGUiCmZpCkFDX1NVQlNUKFtUT09MS0lUX0xJQlddKQoKaWYgdGVzdCAiJHtvcHN5c30iICE9 ICJtaW5ndzMyIjsgdGhlbgogIGlmIHRlc3QgIiRVU0VfWF9UT09MS0lUIiA9ICJub25lIjsg dGhlbgogICAgTElCWFRfT1RIRVI9IlwkKExJQlhTTSkiCiAgZWxzZQogICAgTElCWFRfT1RI RVI9IlwkKExJQlhNVSkgLWxYdCBcJChMSUJYVFI2KSAtbFhleHQiCiAgZmkKZmkKQUNfU1VC U1QoW0xJQlhUX09USEVSXSkKCmlmIHRlc3QgIiR7SEFWRV9YMTF9IiA9ICJ5ZXMiIDsgdGhl bgogIEFDX0RFRklORShbSEFWRV9YMTFdLCBbMV0sCgkgICAgW0RlZmluZSB0byAxIGlmIHlv dSB3YW50IHRvIHVzZSB2ZXJzaW9uIDExIG9mIFggd2luZG93cy5dKQogIExJQlhfT1RIRVI9 IlwkKExJQlhUKSBcJChMSUJYX0VYVFJBKSIKZWxzZQogIExJQlhfT1RIRVI9CmZpCkFDX1NV QlNUKFtMSUJYX09USEVSXSkKCkhBVkVfT0xEWE1FTlU9bm8KaWYgdGVzdCAiJEhBVkVfR1RL IiA9IHllcyB8fCB0ZXN0ICIkSEFWRV9YMTEiICE9IHllczsgdGhlbgogIExJQlhNRU5VPQpl bGlmIHRlc3QgIiRVU0VfWF9UT09MS0lUIiA9IG5vbmU7IHRoZW4KICBIQVZFX09MRFhNRU5V PXllcwogIExJQlhNRU5VPSckKG9sZFhNZW51ZGlyKS9saWJYTWVudTExLmEnCiAgQVVUT0RF UEVORF9QQVJFTlRTPSIkQVVUT0RFUEVORF9QQVJFTlRTIG9sZFhNZW51IgplbHNlCiAgTElC WE1FTlU9JyQobHdsaWJkaXIpL2xpYmx3LmEnCiAgQVVUT0RFUEVORF9QQVJFTlRTPSIkQVVU T0RFUEVORF9QQVJFTlRTIGx3bGliIgpmaQpBQ19TVUJTVChbTElCWE1FTlVdKQoKQUNfQ0FD SEVfQ0hFQ0soW2ZvciBzdHJ1Y3QgYWxpZ25tZW50XSwKICBbZW1hY3NfY3Zfc3RydWN0X2Fs aWdubWVudF0sCiAgW0FDX0NPTVBJTEVfSUZFTFNFKAogICAgIFtBQ19MQU5HX1BST0dSQU0o W1sjaW5jbHVkZSA8c3RkZGVmLmg+CgkJCXN0cnVjdCBzIHsgY2hhciBjOyB9IF9fYXR0cmli dXRlX18gKChhbGlnbmVkICg4KSkpOwoJCQlzdHJ1Y3QgdCB7IGNoYXIgYzsgc3RydWN0IHMg czsgfTsKCQkJY2hhciB2ZXJpZnlbb2Zmc2V0b2YgKHN0cnVjdCB0LCBzKSA9PSA4ID8gMSA6 IC0xXTsKCQkgICAgICBdXSldLAogICAgIFtlbWFjc19jdl9zdHJ1Y3RfYWxpZ25tZW50PXll c10sCiAgICAgW2VtYWNzX2N2X3N0cnVjdF9hbGlnbm1lbnQ9bm9dKV0pCmlmIHRlc3QgIiRl bWFjc19jdl9zdHJ1Y3RfYWxpZ25tZW50IiA9IHllczsgdGhlbgogIEFDX0RFRklORShbSEFW RV9TVFJVQ1RfQVRUUklCVVRFX0FMSUdORURdLCBbMV0sCiAgICBbRGVmaW5lIHRvIDEgaWYg J3N0cnVjdCBfX2F0dHJpYnV0ZV9fICgoYWxpZ25lZCAoTikpKScgYWxpZ25zIHRoZQogICAg IHN0cnVjdHVyZSB0byBhbiBOLWJ5dGUgYm91bmRhcnkuXSkKZmkKCkFDX0NfVFlQRU9GCgpB Q19DQUNIRV9DSEVDSyhbZm9yIHN0YXRlbWVudCBleHByZXNzaW9uc10sCiAgW2VtYWNzX2N2 X3N0YXRlbWVudF9leHByZXNzaW9uc10sCiAgW0FDX0NPTVBJTEVfSUZFTFNFKAogICAgIFtB Q19MQU5HX1BST0dSQU0oW10sIFtbcmV0dXJuICh7IGludCB4ID0gNTsgeC14OyB9KTtdXSld LAogICAgIFtlbWFjc19jdl9zdGF0ZW1lbnRfZXhwcmVzc2lvbnM9eWVzXSwKICAgICBbZW1h Y3NfY3Zfc3RhdGVtZW50X2V4cHJlc3Npb25zPW5vXSldKQppZiB0ZXN0ICIkZW1hY3NfY3Zf c3RhdGVtZW50X2V4cHJlc3Npb25zIiA9IHllczsgdGhlbgogIEFDX0RFRklORShbSEFWRV9T VEFURU1FTlRfRVhQUkVTU0lPTlNdLCBbMV0sCiAgICBbRGVmaW5lIHRvIDEgaWYgc3RhdGVt ZW50IGV4cHJlc3Npb25zIHdvcmsuXSkKZmkKCmlmIHRlc3QgIiR7R05VX01BTExPQ30iID0g InllcyIgOyB0aGVuCiAgQUNfREVGSU5FKFtHTlVfTUFMTE9DXSwgWzFdLAoJICAgIFtEZWZp bmUgdG8gMSBpZiB5b3Ugd2FudCB0byB1c2UgdGhlIEdOVSBtZW1vcnkgYWxsb2NhdG9yLl0p CmZpCgpSQUxMT0NfT0JKPQppZiB0ZXN0ICIke1JFTF9BTExPQ30iID0gInllcyIgOyB0aGVu CiAgQUNfREVGSU5FKFtSRUxfQUxMT0NdLCBbMV0sCgkgICAgW0RlZmluZSBSRUxfQUxMT0Mg aWYgeW91IHdhbnQgdG8gdXNlIHRoZSByZWxvY2F0aW5nIGFsbG9jYXRvciBmb3IKCSAgICAg YnVmZmVyIHNwYWNlLl0pCgogIHRlc3QgIiRzeXN0ZW1fbWFsbG9jIiAhPSAieWVzIiAmJiBS QUxMT0NfT0JKPXJhbGxvYy5vCmZpCkFDX1NVQlNUKFtSQUxMT0NfT0JKXSkKCmlmIHRlc3Qg IiRvcHN5cyIgPSAiY3lnd2luIjsgdGhlbgogIENZR1dJTl9PQko9ImN5Z3czMi5vIgogICMj IEN5Z3dpbiBkaWZmZXJzIGJlY2F1c2Ugb2YgaXRzIHVuZXhlYygpLgogIFBSRV9BTExPQ19P Qko9CiAgUE9TVF9BTExPQ19PQko9bGFzdGZpbGUubwplbGlmIHRlc3QgIiRvcHN5cyIgPSAi bWluZ3czMiI7IHRoZW4KICBDWUdXSU5fT0JKPQogIFBSRV9BTExPQ19PQko9CiAgUE9TVF9B TExPQ19PQko9bGFzdGZpbGUubwplbHNlCiAgQ1lHV0lOX09CSj0KICBQUkVfQUxMT0NfT0JK PWxhc3RmaWxlLm8KICBQT1NUX0FMTE9DX09CSj0KZmkKQUNfU1VCU1QoW0NZR1dJTl9PQkpd KQpBQ19TVUJTVChbUFJFX0FMTE9DX09CSl0pCkFDX1NVQlNUKFtQT1NUX0FMTE9DX09CSl0p CgpkbmwgQ2FsbCB0aGlzICdGT1JUSUZZX1NPVVInIHNvIHRoYXQgaXQgc29ydHMgYmVmb3Jl IHRoZSAnRk9SVElGWV9TT1VSQ0UnCmRubCB2ZXJiYXRpbSBkZWZpbmVkIGFib3ZlLiAgVGhl IHRyaWNreSBuYW1lIGlzIGFwcm9wb3MsIGFzIHRoaXMgaGFjawpkbmwgbWFrZXMgRm9ydGlm eSBnbyBzb3VyIQpBSF9WRVJCQVRJTShbRk9SVElGWV9TT1VSXSwKWy8qIFdpdGhvdXQgdGhl IGZvbGxvd2luZyB3b3JrYXJvdW5kLCBFbWFjcyBydW5zIHNsb3dseSBvbiBPUyBYIDEwLjgu CiAgIFRoZSB3b3JrYXJvdW5kIGRpc2FibGVzIHNvbWUgdXNlZnVsIHJ1bi10aW1lIGNoZWNr aW5nLCBzbyBpdAogICBzaG91bGQgYmUgY29uZGl0aW9uYWwgdG8gdGhlIHBsYXRmb3JtcyB3 aXRoIHRoZSBwZXJmb3JtYW5jZSBidWcuCiAgIFBlcmhhcHMgQXBwbGUgd2lsbCBmaXggdGhp cyBzb21lIGRheTsgYWxzbyBzZWUgbTQvZXh0ZXJuLWlubGluZS5tNC4gICovCiNpZiBkZWZp bmVkIF9fQVBQTEVfXyAmJiBkZWZpbmVkIF9fR05VQ19fCiMgaWZuZGVmIF9ET05UX1VTRV9D VFlQRV9JTkxJTkVfCiMgIGRlZmluZSBfRE9OVF9VU0VfQ1RZUEVfSU5MSU5FXwojIGVuZGlm CiMgaWZuZGVmIF9GT1JUSUZZX1NPVVJDRQojICBkZWZpbmUgX0ZPUlRJRllfU09VUkNFIDAK IyBlbmRpZgojZW5kaWYKXSkKCiMgSWYgdXNlciBhc2tzIHRvIG9taXQgZmVhdHVyZXMsIGRp c2FibGUgb3B0aW9uYWwgZmVhdHVyZXMgdGhhdCBnbnVsaWIKIyBtaWdodCBvdGhlcndpc2Ug ZW5hYmxlLgppZiB0ZXN0ICIkd2l0aF9mZWF0dXJlcyIgPSBubyAmJiB0ZXN0ICIkZW5hYmxl X2FjbCIgIT0geWVzOyB0aGVuCiAgZW5hYmxlX2FjbD1ubwpmaQoKIyBDb25maWd1cmUgZ251 bGliLiAgQWx0aG91Z2ggdGhpcyBkb2VzIG5vdCBhZmZlY3QgQ0ZMQUdTIG9yIExJQlMgcGVy bWFuZW50bHkuCiMgaXQgdGVtcG9yYXJpbHkgcmV2ZXJ0cyB0aGVtIHRvIHRoZWlyIHByZS1w a2ctY29uZmlnIHZhbHVlcywKIyBiZWNhdXNlIGdudWxpYiBuZWVkcyB0byB3b3JrIHdpdGgg Ym90aCBzcmMgKHdoaWNoIHVzZXMgdGhlCiMgcGtnLWNvbmZpZyBzdHVmZikgYW5kIGxpYi1z cmMgKHdoaWNoIGRvZXMgbm90KS4gIEZvciBleGFtcGxlLCBnbnVsaWIKIyBtYXkgbmVlZCB0 byBkZXRlcm1pbmUgd2hldGhlciBDTE9DS19USU1FX0xJQiBzaG91bGQgY29udGFpbiAtbHJ0 LAojIGFuZCBpdCB0aGVyZWZvcmUgbmVlZHMgdG8gcnVuIGluIGFuIGVudmlyb25tZW50IHdo ZXJlIExJQlMgZG9lcyBub3QKIyBhbHJlYWR5IGNvbnRhaW4gLWxydCBtZXJlbHkgYmVjYXVz ZSAncGtnLWNvbmZpZyAtLWxpYnMnIHByaW50ZWQgJy1scnQnCiMgZm9yIHNvbWUgcGFja2Fn ZSB1bnJlbGF0ZWQgdG8gbGliLXNyYy4KU0FWRV9DRkxBR1M9JENGTEFHUwpTQVZFX0xJQlM9 JExJQlMKQ0ZMQUdTPSRwcmVfUEtHX0NPTkZJR19DRkxBR1MKTElCUz0iJExJQl9QVEhSRUFE ICRwcmVfUEtHX0NPTkZJR19MSUJTIgpnbF9BU1NFUlRfTk9fR05VTElCX1BPU0lYQ0hFQ0sK Z2xfQVNTRVJUX05PX0dOVUxJQl9URVNUUwpnbF9FRU1BTExPQwpnbF9JTklUCkNGTEFHUz0k U0FWRV9DRkxBR1MKTElCUz0kU0FWRV9MSUJTCgojIHRpbWVyX2dldG92ZXJydW4gbmVlZHMg dGhlIHNhbWUgbGlicmFyeSBhcyB0aW1lcl9zZXR0aW1lCk9MRF9MSUJTPSRMSUJTCkxJQlM9 IiRMSUJfVElNRVJfVElNRSAkTElCUyIKQUNfQ0hFQ0tfRlVOQ1MoW3RpbWVyX2dldG92ZXJy dW5dKQpMSUJTPSRPTERfTElCUwoKaWYgdGVzdCAiJHtvcHN5c30iID0gIm1pbmd3MzIiOyB0 aGVuCiAgQ1BQRkxBR1M9IiRDUFBGTEFHUyAtRFVTRV9DUlRfRExMPTEgLUkgXCR7YWJzX3Rv cF9zcmNkaXJ9L250L2luYyIKICAjIFJlbW92ZSB1bm5lZWRlZCBzd2l0Y2hlcyBmcm9tIHRo ZSB2YWx1ZSBvZiBDQyB0aGF0IGdvZXMgdG8gTWFrZWZpbGVzCiAgQ0M9YEFTX0VDSE8oWyIk Q0MiXSkgfCBzZWQgLWUgInMsJEdDQ19URVNUX09QVElPTlMsLCJgCmZpCgpjYXNlICIkb3Bz eXMiIGluCiAgYWl4NC0yKSBMRF9TV0lUQ0hfU1lTVEVNX1RFTUFDUz0iLVdsLC1ibm9kZWxj c2VjdCIgOzsKCiAgY3lnd2luKSBMRF9TV0lUQ0hfU1lTVEVNX1RFTUFDUz0iLVdsLC1zdGFj aywweDAwODAwMDAwIiA7OwoKICBkYXJ3aW4pCiAgIGlmIHRlc3QgIiRIQVZFX05TIiA9ICJ5 ZXMiOyB0aGVuCiAgICAgbGlic19uc2d1aT0iLWZyYW1ld29yayBBcHBLaXQiCiAgICAgaWYg dGVzdCAiJE5TX0lNUExfQ09DT0EiID0gInllcyI7IHRoZW4KICAgICAgICBsaWJzX25zZ3Vp PSIkbGlic19uc2d1aSAtZnJhbWV3b3JrIElPS2l0IC1mcmFtZXdvcmsgQ2FyYm9uIFwKICAg ICAgICAgICAgICAgICAgICAtZnJhbWV3b3JrIElPU3VyZmFjZSAtZnJhbWV3b3JrIFF1YXJ0 ekNvcmUiCiAgICAgICAgaWYgdGVzdCAiJGVtYWNzX2N2X21hY29zeF8xMl8wIiA9ICJ5ZXMi OyB0aGVuCgkgIGxpYnNfbnNndWk9IiRsaWJzX25zZ3VpIC1mcmFtZXdvcmsgVW5pZm9ybVR5 cGVJZGVudGlmaWVycyIKCWZpCiAgICAgZmkKICAgZWxzZQogICAgIGxpYnNfbnNndWk9CiAg IGZpCiAgIExEX1NXSVRDSF9TWVNURU1fVEVNQUNTPSRsaWJzX25zZ3VpCiAgICMjIFRoZSAt aGVhZGVycGFkIG9wdGlvbiB0ZWxscyBsZCAoc2VlIG1hbiBwYWdlKSB0byBsZWF2ZSByb29t IGF0IHRoZQogICAjIyBlbmQgb2YgdGhlIGhlYWRlciBmb3IgYWRkaW5nIGxvYWQgY29tbWFu ZHMuICBOZWVkZWQgZm9yIGR1bXBpbmcuCiAgICMjIDB4MTAwMCBpcyBlbm91Z2ggZm9yIHJv dWdobHkgNTIgbG9hZCBjb21tYW5kcyBvbiB0aGUgeDg2XzY0CiAgICMjIGFyY2hpdGVjdHVy ZSAod2hlcmUgdGhleSBhcmUgNzggYnl0ZXMgZWFjaCkuIFRoZSBhY3R1YWwgbnVtYmVyIG9m CiAgICMjIGxvYWQgY29tbWFuZHMgYWRkZWQgaXMgbm90IGNvbnNpc3RlbnQgYnV0IG5vcm1h bGx5IHJhbmdlcyBmcm9tCiAgICMjIGFib3V0IDE0IHRvIGFib3V0IDM0LiBTZXR0aW5nIGl0 IGhpZ2ggZ2V0cyB1cyBwbGVudHkgb2Ygc2xvcCBhbmQKICAgIyMgb25seSBjb3N0cyBhYm91 dCAxLjVLIG9mIHdhc3RlZCBiaW5hcnkgc3BhY2UuCiAgIGhlYWRlcnBhZF9leHRyYT0xMDAw CiAgIGlmIHRlc3QgIiR3aXRoX3VuZXhlYyIgPSB5ZXM7IHRoZW4KICAgICBMRF9TV0lUQ0hf U1lTVEVNX1RFTUFDUz0iLWZuby1waWUgJExEX1NXSVRDSF9TWVNURU1fVEVNQUNTIC1YbGlu a2VyIC1oZWFkZXJwYWQgLVhsaW5rZXIgJGhlYWRlcnBhZF9leHRyYSIKICAgZmkKCiAgICMj IFRoaXMgaXMgaGVyZSBiZWNhdXNlIHNyYy9NYWtlZmlsZS5pbiBkaWQgc29tZSBleHRyYSBm aWRkbGluZyBhcm91bmQKICAgIyMgd2l0aCBMRF9TV0lUQ0hfU1lTVEVNLiAgSXQgc2VlbXMg Y2xlYW5lciB0byBwdXQgdGhpcyBpbgogICAjIyBMRF9TV0lUQ0hfU1lTVEVNX1RFTUFDUyBp bnN0ZWFkLAogICB0ZXN0ICJ4JExEX1NXSVRDSF9TWVNURU0iID0gIngiICYmIHRlc3QgIngk R0NDIiAhPSAieHllcyIgJiYgXAogICAgIExEX1NXSVRDSF9TWVNURU1fVEVNQUNTPSItWCAk TERfU1dJVENIX1NZU1RFTV9URU1BQ1MiCiAgIDs7CgogICMjIExEX1NXSVRDSF9YX1NJVEVf UlBBVEggaXMgYSAtcnBhdGggb3B0aW9uIHNheWluZyB3aGVyZSB0bwogICMjIGZpbmQgWCBh dCBydW4tdGltZS4KICAjIyBXaGVuIGhhbmRsZWQgYnkgY3BwLCB0aGlzIHdhcyBpbiBMRF9T V0lUQ0hfU1lTVEVNLiAgSG93ZXZlciwgYXQgdGhlCiAgIyMgcG9pbnQgd2hlcmUgY29uZmln dXJlIHNvdXJjZWQgdGhlIHMvKi5oIGZpbGUsIExEX1NXSVRDSF9YX1NJVEVfUlBBVEgKICAj IyBoYWQgbm90IHlldCBiZWVuIGRlZmluZWQgYW5kIHdhcyBleHBhbmRlZCB0byBudWxsLiAg SGVuY2UgTERfU1dJVENIX1NZU1RFTQogICMjIGhhZCBkaWZmZXJlbnQgdmFsdWVzIGluIGNv bmZpZ3VyZSAoaW4gYWNfbGluaykgYW5kIHNyYy9NYWtlZmlsZS5pbi4KICAjIyBJdCBzZWVt cyBjbGVhcmVyIHRoZXJlZm9yZSB0byBwdXQgdGhpcyBwaWVjZSBpbiBMRF9TV0lUQ0hfU1lT VEVNX1RFTUFDUy4KICBnbnUqKSBMRF9TV0lUQ0hfU1lTVEVNX1RFTUFDUz0iXCQoTERfU1dJ VENIX1hfU0lURV9SUEFUSCkiIDs7CgogIG1pbmd3MzIpCiAgICMjIElzIGl0IGFueSBiZXR0 ZXIgdW5kZXIgTWluR1c2NCB0byByZWxvY2F0ZSBlbWFjcyBpbnRvIGhpZ2hlciBhZGRyZXNz ZXM/CiAgIGNhc2UgIiRjYW5vbmljYWwiIGluCiAgICAgeDg2XzY0LSotKikgTERfU1dJVENI X1NZU1RFTV9URU1BQ1M9Ii1XbCwtc3RhY2ssMHgwMDgwMDAwMCAtV2wsLWhlYXAsMHgwMDEw MDAwMCAtV2wsLWltYWdlLWJhc2UsMHg0MDAwMDAwMDAgLVdsLC1lbnRyeSxfX3N0YXJ0IC1X bCwtTWFwLC4vdGVtYWNzLm1hcCIgOzsKICAgICAqKSBMRF9TV0lUQ0hfU1lTVEVNX1RFTUFD Uz0iLVdsLC1zdGFjaywweDAwODAwMDAwIC1XbCwtaGVhcCwweDAwMTAwMDAwIC1XbCwtaW1h Z2UtYmFzZSwweDAxMDAwMDAwIC1XbCwtZW50cnksX19zdGFydCAtV2wsLU1hcCwuL3RlbWFj cy5tYXAiIDs7CiAgIGVzYWMKICAgIyMgSWYgdGhleSB3YW50IHVuZXhlYywgZGlzYWJsZSBX aW5kb3dzIEFTTFIgZm9yIHRoZSBFbWFjcyBiaW5hcnkKICAgaWYgdGVzdCAiJHdpdGhfZHVt cGluZyIgPSAidW5leGVjIjsgdGhlbgogICAgICBjYXNlICIkY2Fub25pY2FsIiBpbgogICAg ICAgIHg4Nl82NC0qLSopIExEX1NXSVRDSF9TWVNURU1fVEVNQUNTPSIkTERfU1dJVENIX1NZ U1RFTV9URU1BQ1MgLVdsLC1kaXNhYmxlLWR5bmFtaWNiYXNlIC1XbCwtZGlzYWJsZS1oaWdo LWVudHJvcHktdmEgLVdsLC1kZWZhdWx0LWltYWdlLWJhc2UtbG93IiA7OwogICAgICAgICop IExEX1NXSVRDSF9TWVNURU1fVEVNQUNTPSIkTERfU1dJVENIX1NZU1RFTV9URU1BQ1MgLVds LC1kaXNhYmxlLWR5bmFtaWNiYXNlIiA7OwogICAgICBlc2FjCiAgIGZpCiAgIDs7CgogICop IExEX1NXSVRDSF9TWVNURU1fVEVNQUNTPSA7Owplc2FjCgojIC1uby1waWUgb3IgLW5vcGll IGZpeGVzIGEgdGVtYWNzIHNlZ2ZhdWx0IG9uIEdlbnRvbywgT3BlbkJTRCwKIyBVYnVudHUs IGFuZCBvdGhlciBzeXN0ZW1zIHdpdGggImhhcmRlbmVkIiBHQ0MgY29uZmlndXJhdGlvbnMg Zm9yCiMgc29tZSByZWFzb24gKEJ1ZyMxODc4NCkuICBXZSBkb24ndCBrbm93IHdoeSB0aGlz IHdvcmtzLCBidXQgbm90CiMgc2VnZmF1bHRpbmcgaXMgYmV0dGVyIHRoYW4gc2VnZmF1bHRp bmcuICBVc2UgYWNfY193ZXJyb3JfZmxhZz15ZXMKIyB3aGVuIHRyeWluZyB0aGUgb3B0aW9u LCBvdGhlcndpc2UgY2xhbmcga2VlcHMgd2FybmluZyB0aGF0IGl0IGRvZXMKIyBub3QgdW5k ZXJzdGFuZCBpdCwgYW5kIHByZS00LjYgR0NDIGhhcyBhIHNpbWlsYXIgcHJvYmxlbQojIChC dWcjMjAzMzgpLiAgUHJlZmVyIC1uby1waWUgdG8gLW5vcGllLCBhcyAtbm8tcGllIGlzIHRo ZQojIHNwZWxsaW5nIHVzZWQgYnkgR0NDIDYuMS4wIGFuZCBsYXRlciAoQnVnIzI0NjgyKS4K QUNfQ0FDSEVfQ0hFQ0soCiAgW2ZvciAkQ0Mgb3B0aW9uIHRvIGRpc2FibGUgcG9zaXRpb24g aW5kZXBlbmRlbnQgZXhlY3V0YWJsZXNdLAogIFtlbWFjc19jdl9wcm9nX2NjX25vX3BpZV0s CiAgW2lmIHRlc3QgJHdpdGhfdW5leGVjID0gbm87IHRoZW4KICAgICBlbWFjc19jdl9wcm9n X2NjX25vX3BpZT0nbm90IG5lZWRlZCcKICAgZWxzZQogICAgIGVtYWNzX3NhdmVfY193ZXJy b3JfZmxhZz0kYWNfY193ZXJyb3JfZmxhZwogICAgIGVtYWNzX3NhdmVfTERGTEFHUz0kTERG TEFHUwogICAgIGFjX2Nfd2Vycm9yX2ZsYWc9eWVzCiAgICAgZm9yIGVtYWNzX2N2X3Byb2df Y2Nfbm9fcGllIGluIC1uby1waWUgLW5vcGllIG5vOyBkbwogICAgICAgdGVzdCAkZW1hY3Nf Y3ZfcHJvZ19jY19ub19waWUgPSBubyAmJiBicmVhawogICAgICAgTERGTEFHUz0iJGVtYWNz X3NhdmVfTERGTEFHUyAkZW1hY3NfY3ZfcHJvZ19jY19ub19waWUiCiAgICAgICBBQ19MSU5L X0lGRUxTRShbQUNfTEFOR19QUk9HUkFNKFtdLCBbXSldLCBbYnJlYWtdKQogICAgIGRvbmUK ICAgICBhY19jX3dlcnJvcl9mbGFnPSRlbWFjc19zYXZlX2Nfd2Vycm9yX2ZsYWcKICAgICBM REZMQUdTPSRlbWFjc19zYXZlX0xERkxBR1MKICAgZmldKQpjYXNlICRlbWFjc19jdl9wcm9n X2NjX25vX3BpZSBpbgogIC0qKQogICAgTERfU1dJVENIX1NZU1RFTV9URU1BQ1M9IiRMRF9T V0lUQ0hfU1lTVEVNX1RFTUFDUyAkZW1hY3NfY3ZfcHJvZ19jY19ub19waWUiCiAgICA7Owpl c2FjCgppZiB0ZXN0IHgkYWNfZW5hYmxlX3Byb2ZpbGluZyAhPSB4IDsgdGhlbgogIGNhc2Ug JG9wc3lzIGluCiAgICAqZnJlZWJzZCB8IGdudS1saW51eCkgOzsKICAgICopIExEX1NXSVRD SF9TWVNURU1fVEVNQUNTPSIkTERfU1dJVENIX1NZU1RFTV9URU1BQ1MgLXBnIiA7OwogIGVz YWMKZmkKCkxEX1NXSVRDSF9TWVNURU1fVEVNQUNTPSIkTERGTEFHU19OT0NPTUJSRUxPQyAk TERfU1dJVENIX1NZU1RFTV9URU1BQ1MiCgpBQ19TVUJTVChbTERfU1dJVENIX1NZU1RFTV9U RU1BQ1NdKQoKIyMgQ29tbW9uIGZvciBhbGwgd2luZG93IHN5c3RlbXMKaWYgdGVzdCAiJHdp bmRvd19zeXN0ZW0iICE9ICJub25lIjsgdGhlbgogIEFDX0RFRklORShbSEFWRV9XSU5ET1df U1lTVEVNXSwgWzFdLCBbRGVmaW5lIGlmIHlvdSBoYXZlIGEgd2luZG93IHN5c3RlbS5dKQog IEFDX0RFRklORShbUE9MTF9GT1JfSU5QVVRdLCBbMV0sCiAgICBbRGVmaW5lIGlmIHlvdSBw b2xsIHBlcmlvZGljYWxseSB0byBkZXRlY3QgQy1nLl0pCiAgV0lORE9XX1NZU1RFTV9PQko9 ImZvbnRzZXQubyBmcmluZ2UubyBpbWFnZS5vIgoKICBpZiB0ZXN0ICIkd2luZG93X3N5c3Rl bSIgPSAieDExIjsgdGhlbgogICAgQUNfREVGSU5FKFtIQVZFX1RFWFRfQ09OVkVSU0lPTl0s IFsxXSwKICAgICAgW0RlZmluZSBpZiB0aGUgd2luZG93IHN5c3RlbSBoYXMgdGV4dCBjb252 ZXJzaW9uIHN1cHBvcnQuXSkKICAgIFdJTkRPV19TWVNURU1fT0JKPSIkV0lORE9XX1NZU1RF TV9PQkogdGV4dGNvbnYubyIKICBmaQpmaQoKQUNfU1VCU1QoW1dJTkRPV19TWVNURU1fT0JK XSkKCkFIX1RPUChbLyogR05VIEVtYWNzIHNpdGUgY29uZmlndXJhdGlvbiB0ZW1wbGF0ZSBm aWxlLgoKQ29weXJpZ2h0IChDKSAxOTg4LCAxOTkzLTE5OTQsIDE5OTktMjAwMiwgMjAwNC0y MDIxCiAgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCgpUaGlzIGZpbGUgaXMgcGFy dCBvZiBHTlUgRW1hY3MuCgpHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiBy ZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQppdCB1bmRlciB0aGUgdGVybXMgb2YgdGhl IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQp0aGUgRnJlZSBT b2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBv ciAoYXQKeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgoKR05VIEVtYWNzIGlzIGRp c3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCmJ1dCBXSVRI T1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9m Ck1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4g IFNlZSB0aGUKR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4K CllvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1 YmxpYyBMaWNlbnNlCmFsb25nIHdpdGggR05VIEVtYWNzLiAgSWYgbm90LCBzZWUgPGh0dHBz Oi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4gICovCgoKLyogTm8gY29kZSBpbiBFbWFjcyAj aW5jbHVkZXMgY29uZmlnLmggdHdpY2UsIGJ1dCBzb21lIGJpdHMgb2YgY29kZQogICBpbnRl bmRlZCB0byB3b3JrIHdpdGggb3RoZXIgcGFja2FnZXMgYXMgd2VsbCAobGlrZSBnbWFsbG9j LmMpCiAgIHRoaW5rIHRoZXkgY2FuIGluY2x1ZGUgaXQgYXMgbWFueSB0aW1lcyBhcyB0aGV5 IGxpa2UuICAqLwojaWZuZGVmIEVNQUNTX0NPTkZJR19ICiNkZWZpbmUgRU1BQ1NfQ09ORklH X0gKXSlkbmwKCkFIX0JPVFRPTShbI2luY2x1ZGUgPGNvbmZfcG9zdC5oPgoKI2VuZGlmIC8q IEVNQUNTX0NPTkZJR19IICovCgovKgpMb2NhbCBWYXJpYWJsZXM6Cm1vZGU6IGMKRW5kOgoq LwpdKWRubAoKIyMjIyBSZXBvcnQgb24gd2hhdCB3ZSBkZWNpZGVkIHRvIGRvLgojIyMjIFJl cG9ydCBHVEsgYXMgYSB0b29sa2l0LCBldmVuIGlmIGl0IGRvZXNuJ3QgdXNlIFh0LgojIyMj IEl0IG1ha2VzIHByaW50aW5nIHJlc3VsdCBtb3JlIHVuZGVyc3RhbmRhYmxlIGFzIHVzaW5n IEdUSyBzZXRzCiMjIyMgdG9vbGtpdF9zY3JvbGxfYmFycyB0byB5ZXMgYnkgZGVmYXVsdC4K aWYgdGVzdCAiJHtIQVZFX0dUS30iID0gInllcyI7IHRoZW4KICBVU0VfWF9UT09MS0lUPSIk VVNFX0dUS19UT09MS0lUIgpmaQoKaWYgdGVzdCAkVVNFX0FDTCAtbmUgMDsgdGhlbgogIEFD TF9TVU1NQVJZPSJ5ZXMiCiAgdGVzdCAiJExJQl9BQ0wiICYmIEFDTF9TVU1NQVJZPSIkQUNM X1NVTU1BUlkgJExJQl9BQ0wiCiAgdGVzdCAiJExJQl9YQVRUUiIgJiYgQUNMX1NVTU1BUlk9 IiRBQ0xfU1VNTUFSWSAkTElCX1hBVFRSIgplbHNlCiAgQUNMX1NVTU1BUlk9bm8KZmkKCmlm IHRlc3QgLXogIiRHTVBfSCI7IHRoZW4KICBIQVZFX0dNUD15ZXMKZWxzZQogIEhBVkVfR01Q PW5vCmZpCgplbWFjc19zdGFuZGFyZF9kaXJzPSdTdGFuZGFyZCBkaXJzJwpBU19FQ0hPKFsi CkNvbmZpZ3VyZWQgZm9yICcke2Nhbm9uaWNhbH0nLgoKICBXaGVyZSBzaG91bGQgdGhlIGJ1 aWxkIHByb2Nlc3MgZmluZCB0aGUgc291cmNlIGNvZGU/ICAgICR7c3JjZGlyfQogIFdoYXQg Y29tcGlsZXIgc2hvdWxkIGVtYWNzIGJlIGJ1aWx0IHdpdGg/ICAgICAgICAgICAgICAgJHtD Q30gJHtDRkxBR1N9CiAgU2hvdWxkIEVtYWNzIHVzZSB0aGUgR05VIHZlcnNpb24gb2YgbWFs bG9jPyAgICAgICAgICAgICAke0dOVV9NQUxMT0N9JHtHTlVfTUFMTE9DX3JlYXNvbn0KICBT aG91bGQgRW1hY3MgdXNlIGEgcmVsb2NhdGluZyBhbGxvY2F0b3IgZm9yIGJ1ZmZlcnM/ICAg ICR7UkVMX0FMTE9DfQogIFNob3VsZCBFbWFjcyB1c2UgbW1hcCgyKSBmb3IgYnVmZmVyIGFs bG9jYXRpb24/ICAgICAgICAgJHVzZV9tbWFwX2Zvcl9idWZmZXJzCiAgV2hhdCB3aW5kb3cg c3lzdGVtIHNob3VsZCBFbWFjcyB1c2U/ICAgICAgICAgICAgICAgICAgICAke3dpbmRvd19z eXN0ZW19CiAgV2hhdCB0b29sa2l0IHNob3VsZCBFbWFjcyB1c2U/ICAgICAgICAgICAgICAg ICAgICAgICAgICAke1VTRV9YX1RPT0xLSVR9CiAgV2hlcmUgZG8gd2UgZmluZCBYIFdpbmRv d3MgaGVhZGVyIGZpbGVzPyAgICAgICAgICAgICAgICAke3hfaW5jbHVkZXM6LSRlbWFjc19z dGFuZGFyZF9kaXJzfQogIFdoZXJlIGRvIHdlIGZpbmQgWCBXaW5kb3dzIGxpYnJhcmllcz8g ICAgICAgICAgICAgICAgICAgJHt4X2xpYnJhcmllczotJGVtYWNzX3N0YW5kYXJkX2RpcnN9 Il0pCgojIyMjIFBsZWFzZSByZXNwZWN0IGFscGhhYmV0aWNhbCBvcmRlcmluZyB3aGVuIG1h a2luZyBhZGRpdGlvbnMuCm9wdHNlcD0KZW1hY3NfY29uZmlnX2ZlYXR1cmVzPQpmb3Igb3B0 IGluIEFDTCBCRV9BUFAgQ0FJUk8gREJVUyBGUkVFVFlQRSBHQ09ORiBHSUYgR0xJQiBHTVAg R05VVExTIEdQTSBHU0VUVElOR1MgXAogSEFSRkJVWlogSU1BR0VNQUdJQ0sgSlBFRyBKU09O IExDTVMyIExJQk9URiBMSUJTRUxJTlVYIExJQlNZU1RFTUQgTElCWE1MMiBcCiBNMTdOX0ZM VCBNT0RVTEVTIE5BVElWRV9DT01QIE5PVElGWSBOUyBPTERYTUVOVSBQRFVNUEVSIFBHVEsg UE5HIFJTVkcgU0VDQ09NUCBcCiBTT1VORCBTUUxJVEUzIFRIUkVBRFMgVElGRiBUT09MS0lU X1NDUk9MTF9CQVJTIFRSRUVfU0lUVEVSIFwKIFVORVhFQyBXRUJQIFgxMSBYQVczRCBYREJF IFhGVCBYSU0gWElOUFVUMiBYUE0gWFdJREdFVFMgWF9UT09MS0lUIFwKIFpMSUI7IGRvCgog ICAgY2FzZSAkb3B0IGluCiAgICAgIFBEVU1QRVIpIHZhbD0ke3dpdGhfcGR1bXBlcn0gOzsK ICAgICAgVU5FWEVDKSB2YWw9JHt3aXRoX3VuZXhlY30gOzsKICAgICAgR0xJQikgdmFsPSR7 ZW1hY3NfY3ZfbGlua3NfZ2xpYn0gOzsKICAgICAgTk9USUZZfEFDTCkgZXZhbCB2YWw9XCR7 JHtvcHR9X1NVTU1BUll9IDs7CiAgICAgIFRPT0xLSVRfU0NST0xMX0JBUlN8WF9UT09MS0lU KSBldmFsIHZhbD1cJHtVU0VfJG9wdH0gOzsKICAgICAgVEhSRUFEUykgdmFsPSR7dGhyZWFk c19lbmFibGVkfSA7OwogICAgICAqKSBldmFsIHZhbD1cJHtIQVZFXyRvcHR9IDs7CiAgICBl c2FjCiAgICBjYXNlIHgkdmFsIGluCiAgICAgIHhub3x4bm9uZXx4KSBjb250aW51ZSA7Owog ICAgZXNhYwogICAgY2FzZSAkb3B0IGluCiAgICAgIFhfVE9PTEtJVCkKICAgICAgICBjYXNl ICR2YWwgaW4KICAgICAgICAgIEdUSyp8TFVDSUR8TU9USUYpIG9wdD0kdmFsIDs7CiAgICAg ICAgICAqKSBjb250aW51ZSA7OwogICAgICAgIGVzYWMKICAgICAgOzsKICAgICAgTk9USUZZ KQogICAgICAgIGNhc2UgJHZhbCBpbgogICAgICAgICAgKmxrcXVldWUqKSBvcHQ9IiRvcHQg TElCS1FVRVVFIiA7OwogICAgICAgICAgKmtxdWV1ZSopIG9wdD0iJG9wdCBLUVVFVUUiIDs7 CiAgICAgICAgICAqaW5vdGlmeSopIG9wdD0iJG9wdCBJTk9USUZZIiA7OwogICAgICAgICAg KmdmaWxlKikgb3B0PSIkb3B0IEdGSUxFTk9USUZZIiA7OwogICAgICAgICAgKnczMiopIG9w dD0iJG9wdCBXMzJOT1RJRlkiIDs7CiAgICAgICAgZXNhYwogICAgICA7OwogICAgZXNhYwog ICAgQVNfVkFSX0FQUEVORChbZW1hY3NfY29uZmlnX2ZlYXR1cmVzXSwgWyIkb3B0c2VwJG9w dCJdKQogICAgb3B0c2VwPScgJwpkb25lCkFDX0RFRklORV9VTlFVT1RFRChbRU1BQ1NfQ09O RklHX0ZFQVRVUkVTXSwgWyIke2VtYWNzX2NvbmZpZ19mZWF0dXJlc30iXSwKICBbU3VtbWFy eSBvZiBzb21lIG9mIHRoZSBtYWluIGZlYXR1cmVzIGVuYWJsZWQgYnkgY29uZmlndXJlLl0p CgpBU19FQ0hPKFsiICBEb2VzIEVtYWNzIHVzZSAtbFhhdzNkPyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICR7SEFWRV9YQVczRH0KICBEb2VzIEVtYWNzIHVzZSB0aGUgWCBE b3VibGUgQnVmZmVyIEV4dGVuc2lvbj8gICAgICAgICAgICR7SEFWRV9YREJFfQogIERvZXMg RW1hY3MgdXNlIC1sWHBtPyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHtI QVZFX1hQTX0KICBEb2VzIEVtYWNzIHVzZSAtbGpwZWc/ICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICR7SEFWRV9KUEVHfQogIERvZXMgRW1hY3MgdXNlIC1sdGlmZj8gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHtIQVZFX1RJRkZ9CiAgRG9lcyBFbWFj cyB1c2UgYSBnaWYgbGlicmFyeT8gICAgICAgICAgICAgICAgICAgICAgICAgICAke0hBVkVf R0lGfSAkTElCR0lGCiAgRG9lcyBFbWFjcyB1c2UgYSBwbmcgbGlicmFyeT8gICAgICAgICAg ICAgICAgICAgICAgICAgICAke0hBVkVfUE5HfSAkTElCUE5HCiAgRG9lcyBFbWFjcyB1c2Ug LWxyc3ZnLTI/ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAke0hBVkVfUlNWR30K ICBEb2VzIEVtYWNzIHVzZSAtbHdlYnA/ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICR7SEFWRV9XRUJQfQogIERvZXMgRW1hY3MgdXNlIC1sc3FsaXRlMz8gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgJHtIQVZFX1NRTElURTN9CiAgRG9lcyBFbWFjcyB1c2Ug Y2Fpcm8/ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAke0hBVkVfQ0FJUk99 CiAgRG9lcyBFbWFjcyB1c2UgLWxsY21zMj8gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAke0hBVkVfTENNUzJ9CiAgRG9lcyBFbWFjcyB1c2UgaW1hZ2VtYWdpY2s/ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAke0hBVkVfSU1BR0VNQUdJQ0t9CiAgRG9lcyBFbWFj cyB1c2UgbmF0aXZlIEFQSXMgZm9yIGltYWdlcz8gICAgICAgICAgICAgICAgICAke05BVElW RV9JTUFHRV9BUEl9CiAgRG9lcyBFbWFjcyBzdXBwb3J0IHNvdW5kPyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAke0hBVkVfU09VTkR9CiAgRG9lcyBFbWFjcyB1c2UgLWxncG0/ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAke0hBVkVfR1BNfQogIERvZXMg RW1hY3MgdXNlIC1sZGJ1cz8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHtI QVZFX0RCVVN9CiAgRG9lcyBFbWFjcyB1c2UgLWxnY29uZj8gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAke0hBVkVfR0NPTkZ9CiAgRG9lcyBFbWFjcyB1c2UgR1NldHRpbmdz PyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAke0hBVkVfR1NFVFRJTkdTfQogIERv ZXMgRW1hY3MgdXNlIGEgZmlsZSBub3RpZmljYXRpb24gbGlicmFyeT8gICAgICAgICAgICAg JHtOT1RJRllfU1VNTUFSWX0KICBEb2VzIEVtYWNzIHVzZSBhY2Nlc3MgY29udHJvbCBsaXN0 cz8gICAgICAgICAgICAgICAgICAgICR7QUNMX1NVTU1BUll9CiAgRG9lcyBFbWFjcyB1c2Ug LWxzZWxpbnV4PyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAke0hBVkVfTElCU0VM SU5VWH0KICBEb2VzIEVtYWNzIHVzZSAtbGdudXRscz8gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICR7SEFWRV9HTlVUTFN9CiAgRG9lcyBFbWFjcyB1c2UgLWx4bWwyPyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAke0hBVkVfTElCWE1MMn0KICBEb2VzIEVt YWNzIHVzZSAtbGZyZWV0eXBlPyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR7SEFW RV9GUkVFVFlQRX0KICBEb2VzIEVtYWNzIHVzZSBIYXJmQnV6ej8gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICR7SEFWRV9IQVJGQlVaWn0KICBEb2VzIEVtYWNzIHVzZSAtbG0x N24tZmx0PyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR7SEFWRV9NMTdOX0ZMVH0K ICBEb2VzIEVtYWNzIHVzZSAtbG90Zj8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICR7SEFWRV9MSUJPVEZ9CiAgRG9lcyBFbWFjcyB1c2UgLWx4ZnQ/ICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAke0hBVkVfWEZUfQogIERvZXMgRW1hY3MgdXNlIC1s c3lzdGVtZD8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHtIQVZFX0xJQlNZU1RF TUR9CiAgRG9lcyBFbWFjcyB1c2UgLWxqYW5zc29uPyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAke0hBVkVfSlNPTn0KICBEb2VzIEVtYWNzIHVzZSAtbHRyZWUtc2l0dGVyPyAg ICAgICAgICAgICAgICAgICAgICAgICAgICR7SEFWRV9UUkVFX1NJVFRFUn0KICBEb2VzIEVt YWNzIHVzZSB0aGUgR01QIGxpYnJhcnk/ICAgICAgICAgICAgICAgICAgICAgICAgICR7SEFW RV9HTVB9CiAgRG9lcyBFbWFjcyBkaXJlY3RseSB1c2UgemxpYj8gICAgICAgICAgICAgICAg ICAgICAgICAgICAke0hBVkVfWkxJQn0KICBEb2VzIEVtYWNzIGhhdmUgZHluYW1pYyBtb2R1 bGVzIHN1cHBvcnQ/ICAgICAgICAgICAgICAgICR7SEFWRV9NT0RVTEVTfQogIERvZXMgRW1h Y3MgdXNlIHRvb2xraXQgc2Nyb2xsIGJhcnM/ICAgICAgICAgICAgICAgICAgICAgJHtVU0Vf VE9PTEtJVF9TQ1JPTExfQkFSU30KICBEb2VzIEVtYWNzIHN1cHBvcnQgWHdpZGdldHM/ICAg ICAgICAgICAgICAgICAgICAgICAgICAgICR7SEFWRV9YV0lER0VUU30KICBEb2VzIEVtYWNz IGhhdmUgdGhyZWFkaW5nIHN1cHBvcnQgaW4gbGlzcD8gICAgICAgICAgICAgICR7dGhyZWFk c19lbmFibGVkfQogIERvZXMgRW1hY3Mgc3VwcG9ydCB0aGUgcG9ydGFibGUgZHVtcGVyPyAg ICAgICAgICAgICAgICAgJHt3aXRoX3BkdW1wZXJ9CiAgRG9lcyBFbWFjcyBzdXBwb3J0IGxl Z2FjeSB1bmV4ZWMgZHVtcGluZz8gICAgICAgICAgICAgICAke3dpdGhfdW5leGVjfQogIFdo aWNoIGR1bXBpbmcgc3RyYXRlZ3kgZG9lcyBFbWFjcyB1c2U/ICAgICAgICAgICAgICAgICAg JHt3aXRoX2R1bXBpbmd9CiAgRG9lcyBFbWFjcyBoYXZlIG5hdGl2ZSBsaXNwIGNvbXBpbGVy PyAgICAgICAgICAgICAgICAgICAke0hBVkVfTkFUSVZFX0NPTVB9CiAgRG9lcyBFbWFjcyB1 c2UgdmVyc2lvbiAyIG9mIHRoZSBYIElucHV0IEV4dGVuc2lvbj8gICAgICAke0hBVkVfWElO UFVUMn0KICBEb2VzIEVtYWNzIGdlbmVyYXRlIGEgc21hbGxlci1zaXplIEphcGFuZXNlIGRp Y3Rpb25hcnk/ICR7d2l0aF9zbWFsbF9qYV9kaWN9CiJdKQoKaWYgdGVzdCAtbiAiJHtFTUFD U0RBVEF9IjsgdGhlbgogICBBU19FQ0hPKFsiICBFbnZpcm9ubWVudCB2YXJpYWJsZSBFTUFD U0RBVEEgc2V0IHRvOiAgICAgICAgICAgICAgICAgICRFTUFDU0RBVEEiXSkKZmkKaWYgdGVz dCAtbiAiJHtFTUFDU0RPQ30iOyB0aGVuCiAgIEFTX0VDSE8oWyIgIEVudmlyb25tZW50IHZh cmlhYmxlIEVNQUNTRE9DIHNldCB0bzogICAgICAgICAgICAgICAgICAgJEVNQUNTRE9DIl0p CmZpCgplY2hvCgppZiB0ZXN0ICIkSEFWRV9OUyIgPSAieWVzIjsgdGhlbgogICBlY2hvCiAg IEFTX0VDSE8oWyJSdW4gJyR7TUFLRS1tYWtlfScgdG8gYnVpbGQgRW1hY3MsIHRoZW4gcnVu ICdzcmMvZW1hY3MnIHRvIHRlc3QgaXQuClJ1biAnJHtNQUtFLW1ha2V9IGluc3RhbGwnIGlu IG9yZGVyIHRvIGJ1aWxkIGFuIGFwcGxpY2F0aW9uIGJ1bmRsZS4KVGhlIGFwcGxpY2F0aW9u IHdpbGwgZ28gdG8gbmV4dHN0ZXAvRW1hY3MuYXBwIGFuZCBjYW4gYmUgcnVuIG9yIG1vdmVk CmZyb20gdGhlcmUuIl0pCiAgIGlmIHRlc3QgIiRFTl9OU19TRUxGX0NPTlRBSU5FRCIgPSAi eWVzIjsgdGhlbgogICAgICBlY2hvICJUaGUgYXBwbGljYXRpb24gd2lsbCBiZSBmdWxseSBz ZWxmLWNvbnRhaW5lZC4iCiAgICBlbHNlCiAgICAgIEFTX0VDSE8oWyJUaGUgbGlzcCByZXNv dXJjZXMgZm9yIHRoZSBhcHBsaWNhdGlvbiB3aWxsIGJlIGluc3RhbGxlZCB1bmRlciAke3By ZWZpeH0uCllvdSBtYXkgbmVlZCB0byBydW4gXCIke01BS0UtbWFrZX0gaW5zdGFsbFwiIHdp dGggc3Vkby4gIFRoZSBhcHBsaWNhdGlvbiB3aWxsIGZhaWwKdG8gcnVuIGlmIHRoZXNlIHJl c291cmNlcyBhcmUgbm90IGluc3RhbGxlZC4iXSkKICAgZmkKICAgZWNobwpmaQoKY2FzZSAk b3BzeXMsJGVtYWNzX3VuYW1lX3IgaW4KICBjeWd3aW4sMS41LiopCiAgICBBQ19NU0dfV0FS TihbW2J1aWxkaW5nIEVtYWNzIG9uIEN5Z3dpbiAxLjUgaXMgbm90IHN1cHBvcnRlZC5dXSkK ICAgICAgICAgICBlY2hvCgkgICA7OwogIGN5Z3dpbiwzLjAuW1swLTddXScoJyogfCBjeWd3 aW4sMy4xLltbMC0yXV0nKCcqKQogICAgQUNfREVGSU5FKFtIQVZFX0NZR1dJTl9PX1BBVEhf QlVHXSwgWzFdLAogICAgICBbRGVmaW5lIHRvIDEgaWYgb3BlbmluZyBhIEZJRk8sIHNvY2tl dCwgb3Igc3ltbGluayB3aXRoIE9fUEFUSCBpcyBidWdneS5dKTs7CmVzYWMKCiMgUmVtb3Zl IGFueSB0cmFpbGluZyBzbGFzaGVzIGluIHRoZXNlIHZhcmlhYmxlcy4KY2FzZSAkcHJlZml4 IGluCiAgKi8pIHByZWZpeD1gQVNfRElSTkFNRShbIiRwcmVmaXguIl0pYDs7CmVzYWMKY2Fz ZSAkZXhlY19wcmVmaXggaW4KICAqLykgZXhlY19wcmVmaXg9YEFTX0RJUk5BTUUoWyIkZXhl Y19wcmVmaXguIl0pYDs7CmVzYWMKCmlmIHRlc3QgIiRIQVZFX05TIiA9ICJ5ZXMiOyB0aGVu CiAgaWYgdGVzdCAiJE5TX0lNUExfR05VU1RFUCIgPSB5ZXM7IHRoZW4KICAgIEFDX0NPTkZJ R19GSUxFUyhbbmV4dHN0ZXAvR05Vc3RlcC9FbWFjcy5iYXNlL1Jlc291cmNlcy9JbmZvLWdu dXN0ZXAucGxpc3Q6bmV4dHN0ZXAvdGVtcGxhdGVzL0luZm8tZ251c3RlcC5wbGlzdC5pbiBc CiAgICAgIG5leHRzdGVwL0dOVXN0ZXAvRW1hY3MuYmFzZS9SZXNvdXJjZXMvRW1hY3MuZGVz a3RvcDpuZXh0c3RlcC90ZW1wbGF0ZXMvRW1hY3MuZGVza3RvcC5pbl0pCiAgICBuc19jaGVj a19maWxlPVJlc291cmNlcy9JbmZvLWdudXN0ZXAucGxpc3QKICBlbHNlCiAgICBBQ19DT05G SUdfRklMRVMoW25leHRzdGVwL0NvY29hL0VtYWNzLmJhc2UvQ29udGVudHMvSW5mby5wbGlz dDpuZXh0c3RlcC90ZW1wbGF0ZXMvSW5mby5wbGlzdC5pbiBcCiAgICAgIG5leHRzdGVwL0Nv Y29hL0VtYWNzLmJhc2UvQ29udGVudHMvUmVzb3VyY2VzL0VuZ2xpc2gubHByb2ovSW5mb1Bs aXN0LnN0cmluZ3M6bmV4dHN0ZXAvdGVtcGxhdGVzL0luZm9QbGlzdC5zdHJpbmdzLmluXSkK ICAgIG5zX2NoZWNrX2ZpbGU9Q29udGVudHMvSW5mby5wbGlzdAogIGZpCiAgQUNfU1VCU1Qo W25zX2NoZWNrX2ZpbGVdKQpmaQoKQUNfQ09ORklHX0ZJTEVTKFtNYWtlZmlsZSBsaWIvZ251 bGliLm1rXSkKCmRubCBjb25maWcuc3RhdHVzIHRyZWF0cyAkc3JjZGlyIHNwZWNpYWxseSwg c28gSSB0aGluayB0aGlzIGlzIG9rLi4uCkFDX0NPTkZJR19GSUxFUyhbJHNyY2Rpci9kb2Mv bWFuL2VtYWNzLjFdKQoKbTRfZGVmaW5lKFtzdWJkaXJfbWFrZWZpbGVzXSwKICBbbGliL01h a2VmaWxlIGxpYi1zcmMvTWFrZWZpbGUgb2xkWE1lbnUvTWFrZWZpbGUgZG9jL2VtYWNzL01h a2VmaWxlIGRvYy9taXNjL01ha2VmaWxlIGRvYy9saXNwaW50cm8vTWFrZWZpbGUgZG9jL2xp c3ByZWYvTWFrZWZpbGUgc3JjL01ha2VmaWxlIGx3bGliL01ha2VmaWxlIGxpc3AvTWFrZWZp bGUgbGVpbS9NYWtlZmlsZSBuZXh0c3RlcC9NYWtlZmlsZSBudC9NYWtlZmlsZV0pClNVQkRJ Ul9NQUtFRklMRVM9InN1YmRpcl9tYWtlZmlsZXMiCkFDX0NPTkZJR19GSUxFUyhzdWJkaXJf bWFrZWZpbGVzKQoKZG5sIFRoZSB0ZXN0LyBkaXJlY3RvcnkgaXMgbWlzc2luZyBpZiAnLi9t YWtlLWRpc3QgLS1uby10ZXN0cycgd2FzIHVzZWQuCm9wdF9tYWtlZmlsZT10ZXN0L01ha2Vm aWxlCmlmIHRlc3QgLWYgIiRzcmNkaXIvJG9wdF9tYWtlZmlsZS5pbiI7IHRoZW4KICBTVUJE SVJfTUFLRUZJTEVTPSIkU1VCRElSX01BS0VGSUxFUyAkb3B0X21ha2VmaWxlIgogIGRubCBB Z2FpbiwgaXQncyBiZXN0IG5vdCB0byB1c2UgYSB2YXJpYWJsZS4gIFRob3VnaCB5b3UgY2Fu IGFkZAogIGRubCAiLCBbXSwgW29wdF9tYWtlZmlsZT0nJG9wdF9tYWtlZmlsZSddIiBhbmQg aXQgc2hvdWxkIHdvcmsuCiAgQUNfQ09ORklHX0ZJTEVTKFt0ZXN0L01ha2VmaWxlXSkKICBB Q19DT05GSUdfRklMRVMoW3Rlc3QvbWFudWFsL25vdmVybGF5L01ha2VmaWxlXSkKZmkKb3B0 X21ha2VmaWxlPXRlc3QvaW5mcmEvTWFrZWZpbGUKaWYgdGVzdCAtZiAiJHNyY2Rpci8kb3B0 X21ha2VmaWxlLmluIjsgdGhlbgogIFNVQkRJUl9NQUtFRklMRVM9IiRTVUJESVJfTUFLRUZJ TEVTICRvcHRfbWFrZWZpbGUiCiAgZG5sIEFnYWluLCBpdCdzIGJlc3Qgbm90IHRvIHVzZSBh IHZhcmlhYmxlLiAgVGhvdWdoIHlvdSBjYW4gYWRkCiAgZG5sICIsIFtdLCBbb3B0X21ha2Vm aWxlPSckb3B0X21ha2VmaWxlJ10iIGFuZCBpdCBzaG91bGQgd29yay4KICBBQ19DT05GSUdf RklMRVMoW3Rlc3QvaW5mcmEvTWFrZWZpbGVdKQpmaQoKCmRubCBUaGUgYWRtaW4vIGRpcmVj dG9yeSB1c2VkIHRvIGJlIGV4Y2x1ZGVkIGZyb20gdGFyZmlsZXMuCmlmIHRlc3QgLWQgJHNy Y2Rpci9hZG1pbjsgdGhlbgogIFNVQkRJUl9NQUtFRklMRVM9IiRTVUJESVJfTUFLRUZJTEVT IGFkbWluL2NoYXJzZXRzL01ha2VmaWxlIGFkbWluL3VuaWRhdGEvTWFrZWZpbGUgYWRtaW4v Z3JhbW1hcnMvTWFrZWZpbGUiCiAgQUNfQ09ORklHX0ZJTEVTKFthZG1pbi9jaGFyc2V0cy9N YWtlZmlsZV0pCiAgQUNfQ09ORklHX0ZJTEVTKFthZG1pbi91bmlkYXRhL01ha2VmaWxlXSkK ICBBQ19DT05GSUdfRklMRVMoW2FkbWluL2dyYW1tYXJzL01ha2VmaWxlXSkKZmkgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBkbmwgLWQgYWRtaW4KCgpTVUJESVJfTUFLRUZJTEVT X0lOPWBlY2hvICIgJHtTVUJESVJfTUFLRUZJTEVTfSIgfCBzZWQgLWUgJ3N8IHwgJChzcmNk aXIpL3xnJyAtZSAnc3xNYWtlZmlsZXxNYWtlZmlsZS5pbnxnJ2AKCkFDX1NVQlNUKFtTVUJE SVJfTUFLRUZJTEVTX0lOXSkKClNNQUxMX0pBX0RJQz0kd2l0aF9zbWFsbF9qYV9kaWMKQUNf U1VCU1QoW1NNQUxMX0pBX0RJQ10pCgpkbmwgWW91IG1pZ2h0IHdvbmRlciAoSSBkaWQpIHdo eSBlcGF0aHMuaCBpcyBnZW5lcmF0ZWQgYnkgcnVubmluZyBtYWtlLApkbmwgcmF0aGVyIHRo YW4ganVzdCBsZXR0aW5nIGNvbmZpZ3VyZSBnZW5lcmF0ZSBpdCBmcm9tIGVwYXRocy5pbi4K ZG5sIE9uZSByZWFzb24gaXMgdGhhdCB0aGUgdmFyaW91cyBwYXRocyBhcmUgbm90IGZ1bGx5 IGV4cGFuZGVkIChzZWUgYWJvdmUpOwpkbmwgZS5nLiwgZ2FtZWRpcj0nJHtsb2NhbHN0YXRl ZGlyfS9nYW1lcy9lbWFjcycuCmRubCBTZWNvbmRseSwgdGhlIEdOVSBDb2Rpbmcgc3RhbmRh cmRzIHJlcXVpcmUgdGhhdCBvbmUgc2hvdWxkIGJlIGFibGUKZG5sIHRvIHJ1biAnbWFrZSBw cmVmaXg9L3NvbWUvd2hlcmUvZWxzZScgYW5kIG92ZXJyaWRlIHRoZSB2YWx1ZXMgc2V0CmRu bCBieSBjb25maWd1cmUuICBUaGlzIGFsc28gZXhwbGFpbnMgdGhlICdtb3ZlLWlmLWNoYW5n ZScgdGVzdCBhbmQKZG5sIHRoZSB1c2Ugb2YgZm9yY2UgaW4gdGhlICdlcGF0aHMtZm9yY2Un IHJ1bGUgaW4gTWFrZWZpbGUuaW4uCkFDX0NPTkZJR19DT01NQU5EUyhbc3JjL2VwYXRocy5o XSwgWwppZiB0ZXN0ICIke29wc3lzfSIgPSAibWluZ3czMiI7IHRoZW4KICAke01BS0UtbWFr ZX0gTUFLRUZJTEVfTkFNRT1kby1ub3QtbWFrZS1NYWtlZmlsZSBlcGF0aHMtZm9yY2UtdzMy CmVsaWYgdGVzdCAiJEhBVkVfTlMiID0gInllcyIgJiYgdGVzdCAiJEVOX05TX1NFTEZfQ09O VEFJTkVEIiA9ICJ5ZXMiOyB0aGVuCiAgJHtNQUtFLW1ha2V9IE1BS0VGSUxFX05BTUU9ZG8t bm90LW1ha2UtTWFrZWZpbGUgZXBhdGhzLWZvcmNlLW5zLXNlbGYtY29udGFpbmVkCmVsc2UK ICAke01BS0UtbWFrZX0gTUFLRUZJTEVfTkFNRT1kby1ub3QtbWFrZS1NYWtlZmlsZSBlcGF0 aHMtZm9yY2UKZmkgfHwgQUNfTVNHX0VSUk9SKFsnc3JjL2VwYXRocy5oJyBjb3VsZCBub3Qg YmUgbWFkZS5dKQpdLCBbR0NDPSIkR0NDIiBDUFBGTEFHUz0iJENQUEZMQUdTIiBvcHN5cz0i JG9wc3lzIiBIQVZFX05TPSIkSEFWRV9OUyIKICAgIEVOX05TX1NFTEZfQ09OVEFJTkVEPSIk RU5fTlNfU0VMRl9DT05UQUlORUQiXSkKCmRubCBOQiB3ZSBoYXZlIHRvIGNoZWF0IGFuZCB1 c2UgdGhlIGFjXy4uLiB2ZXJzaW9uIGJlY2F1c2UgYWJzX3RvcF9zcmNkaXIKZG5sIGlzIG5v dCB5ZXQgc2V0LCBzaWdoLiAgT3Igd2UgY291bGQgdXNlIC4uLyRzcmNkaXIvc3JjLy5nZGJp bml0LApkbmwgb3IgYSBzeW1saW5rPwpBQ19DT05GSUdfQ09NTUFORFMoW3NyYy8uZ2RiaW5p dF0sIFsKaWYgdGVzdCAhIC1mIHNyYy8uZ2RiaW5pdCAmJiB0ZXN0IC1mICIkc3JjZGlyL3Ny Yy8uZ2RiaW5pdCI7IHRoZW4KICBBU19FQ0hPKFsic291cmNlICRhY19hYnNfdG9wX3NyY2Rp ci9zcmMvLmdkYmluaXQiXSkgPiBzcmMvLmdkYmluaXQKZmkKXSkKCmRubCBQZXJoYXBzIHRo aXMgd291bGQgYmUgYmV0dGVyIG5hbWVkIGRvYy1lbWFjcy1lbWFjc3Zlci50ZXhpPwpkbmwg U2VlIGNvbW1lbnRzIGZvciBldGMtcmVmY2FyZHMtZW1hY3N2ZXIudGV4LgpkbmwgU2luY2Ug d2UgZ2V0IGEgZG9jL2VtYWNzIGRpcmVjdG9yeSBnZW5lcmF0ZWQgYW55d2F5LCBmb3IgdGhl IE1ha2VmaWxlLApkbmwgaXQgaXMgbm90IHF1aXRlIHRoZSBzYW1lLiAgQnV0IHdlIGFyZSBn ZW5lcmF0aW5nIGluICRzcmNkaXIuCkFDX0NPTkZJR19DT01NQU5EUyhbZG9jL2VtYWNzL2Vt YWNzdmVyLnRleGldLCBbCiR7TUFLRS1tYWtlfSAtcyAtLW5vLXByaW50LWRpcmVjdG9yeSAt QyBkb2MvZW1hY3MgZG9jLWVtYWNzdmVyIHx8IFwKQUNfTVNHX0VSUk9SKFsnZG9jL2VtYWNz L2VtYWNzdmVyLnRleGknIGNvdWxkIG5vdCBiZSBtYWRlLl0pCl0pCgpkbmwgSWYgd2UgZ2l2 ZSB0aGlzIHRoZSBtb3JlIG5hdHVyYWwgbmFtZSwgZXRjL3JlZmNhcmRzL2VtYWNzdmVyLnRl eGksCmRubCB0aGVuIGEgZGlyZWN0b3J5IGV0Yy9yZWZjYXJkcyBpcyBjcmVhdGVkIGluIHRo ZSBidWlsZCBkaXJlY3RvcnksCmRubCB3aGljaCBpcyBwcm9iYWJseSBoYXJtbGVzcywgYnV0 IGNvbmZ1c2luZyAoaW4gb3V0LW9mLXRyZWUgYnVpbGRzKS4KZG5sIChJZiB3ZSB3ZXJlIHRv IGdlbmVyYXRlIGV0Yy9yZWZjYXJkcy9NYWtlZmlsZSwgdGhpcyBtaWdodCBjaGFuZ2UuKQpk bmwgSXQgaXMgcmVhbGx5ICRzcmNkaXIvZXRjL3JlZmNhcmRzL2VtYWNzdmVyLnRleCB0aGF0 IHdlIGdlbmVyYXRlLgpBQ19DT05GSUdfQ09NTUFORFMoW2V0Yy1yZWZjYXJkcy1lbWFjc3Zl ci50ZXhdLCBbCiR7TUFLRS1tYWtlfSAtcyBNQUtFRklMRV9OQU1FPWRvLW5vdC1tYWtlLU1h a2VmaWxlIGV0Yy1lbWFjc3ZlciB8fCBcCkFDX01TR19FUlJPUihbJ2V0Yy9yZWZjYXJkcy9l bWFjc3Zlci50ZXgnIGNvdWxkIG5vdCBiZSBtYWRlLl0pCl0pCgppZiB0ZXN0ICRBVVRPX0RF UEVORCA9IHllczsgdGhlbgogICBmb3IgZGlyIGluICRBVVRPREVQRU5EX1BBUkVOVFM7IGRv CiAgICAgQVNfTUtESVJfUChbJGRpci9kZXBzXSkKICAgZG9uZQpmaQppZiAkZ2xfZ251bGli X2VuYWJsZWRfZHluYXJyYXkgfHwgJGdsX2dudWxpYl9lbmFibGVkX3NjcmF0Y2hfYnVmZmVy OyB0aGVuCiAgQVNfTUtESVJfUChbbGliL21hbGxvY10pCiAgaWYgdGVzdCAkQVVUT19ERVBF TkQgPSB5ZXM7IHRoZW4KICAgIEFTX01LRElSX1AoW2xpYi9kZXBzL21hbGxvY10pCiAgZmkK ZmkKCkFDX09VVFBVVAoKaWYgdGVzdCAhICIkd2l0aF9tYWlsdXRpbHMiOyB0aGVuCiAgaWYg dGVzdCAiJHdpdGhfcG9wIiA9IHllczsgdGhlbgogICAgQUNfTVNHX1dBUk4oW1RoaXMgY29u ZmlndXJhdGlvbiBpbnN0YWxscyBhICdtb3ZlbWFpbCcgcHJvZ3JhbQp0aGF0IHJldHJpZXZl cyBQT1AzIGVtYWlsIHZpYSBvbmx5IGluc2VjdXJlIGNoYW5uZWxzLgpUbyBvbWl0IGluc2Vj dXJlIFBPUDMsIHlvdSBjYW4gdXNlICckMCAtLXdpdGhvdXQtcG9wJy5dKQogIGVsaWYgdGVz dCAiJHdpdGhfcG9wIiA9IG5vLWJ5LWRlZmF1bHQ7IHRoZW4KICAgIEFDX01TR19XQVJOKFtU aGlzIGNvbmZpZ3VyYXRpb24gaW5zdGFsbHMgYSAnbW92ZW1haWwnIHByb2dyYW0KdGhhdCBk b2VzIG5vdCByZXRyaWV2ZSBQT1AzIGVtYWlsLiAgQnkgZGVmYXVsdCwgRW1hY3MgMjUgYW5k IGVhcmxpZXIKaW5zdGFsbGVkIGEgJ21vdmVtYWlsJyBwcm9ncmFtIHRoYXQgcmV0cmlldmVk IFBPUDMgZW1haWwgdmlhIG9ubHkKaW5zZWN1cmUgY2hhbm5lbHMsIGEgcHJhY3RpY2UgdGhh dCBpcyBubyBsb25nZXIgcmVjb21tZW5kZWQgYnV0IHRoYXQKeW91IGNhbiBjb250aW51ZSB0 byBzdXBwb3J0IGJ5IHVzaW5nICckMCAtLXdpdGgtcG9wJy5dKQogIGZpCgogIGNhc2UgJG9w c3lzIGluCiAgICBtaW5ndzMyKQogICAgICAjIERvbid0IHN1Z2dlc3QgR05VIE1haWx1dGls cywgYXMgaXQgaGFzbid0IGJlZW4gcG9ydGVkLgogICAgICA7OwogICAgKikKICAgICAgZW1h Y3NfZml4X21vdmVtYWlsPSJ1c2UgJyQwIC0td2l0aC1tYWlsdXRpbHMnIgogICAgICBjYXNl IGAobW92ZW1haWwgLS12ZXJzaW9uKSAyPi9kZXYvbnVsbGAgaW4KCSpNYWlsdXRpbHMqKSA7 OwoJKikgZW1hY3NfZml4X21vdmVtYWlsPSJpbnN0YWxsIEdOVSBNYWlsdXRpbHMKPGh0dHBz Oi8vbWFpbHV0aWxzLm9yZz4gYW5kICRlbWFjc19maXhfbW92ZW1haWwiOzsKICAgICAgZXNh YwogICAgICBBQ19NU0dfTk9USUNFKFtZb3UgbWlnaHQgd2FudCB0byAkZW1hY3NfZml4X21v dmVtYWlsLl0pOzsKICBlc2FjCmZpCgppZiB0ZXN0ICIke0hBVkVfWEZUfSIgPSB5ZXM7IHRo ZW4KICBBQ19NU0dfV0FSTihbVGhpcyBjb25maWd1cmF0aW9uIHVzZXMgbGliWGZ0LCB3aGlj aCBoYXMgYSBudW1iZXIgb2YKICAgIGZvbnQgcmVuZGVyaW5nIGlzc3VlcywgYW5kIGlzIGJl aW5nIGNvbnNpZGVyZWQgZm9yIHJlbW92YWwgaW4gdGhlCiAgICBuZXh0IHJlbGVhc2Ugb2Yg RW1hY3MuICBQbGVhc2UgY29uc2lkZXIgdXNpbmcgQ2Fpcm8gZ3JhcGhpY3MgKwogICAgSGFy ZkJ1enogdGV4dCBzaGFwaW5nIGluc3RlYWQgKHRoZXkgYXJlIGF1dG8tZGV0ZWN0ZWQgaWYg dGhlCiAgICByZWxldmFudCBkZXZlbG9wbWVudCBoZWFkZXJzIGFyZSBpbnN0YWxsZWQpLl0p CmZpCgppZiB0ZXN0ICIke0hBVkVfQ0FJUk99IiA9ICJ5ZXMiICYmIHRlc3QgIiR7SEFWRV9I QVJGQlVaWn0iID0gbm87IHRoZW4KICBBQ19NU0dfV0FSTihbVGhpcyBjb25maWd1cmF0aW9u IHVzZXMgdGhlIENhaXJvIGdyYXBoaWNzIGxpYnJhcnksCiAgICBidXQgbm90IHRoZSBIYXJm QnV6eiBmb250IHNoYXBpbmcgbGlicmFyeSAobWluaW11bSB2ZXJzaW9uICRoYXJmYnV6el9y ZXF1aXJlZF92ZXIpLgogICAgV2UgcmVjb21tZW5kIHRoZSB1c2Ugb2YgSGFyZkJ1enogd2hl biB1c2luZyBDYWlybywgcGxlYXNlIGluc3RhbGwKICAgIGFwcHJvcHJpYXRlIEhhcmZCdXp6 IGRldmVsb3BtZW50IHBhY2thZ2VzLl0pCmZpCgojIExldCBwbGFpbiAnbWFrZScgd29yay4K dGVzdCAiJE1BS0UiID0gbWFrZSB8fCB0ZXN0IC1mIG1ha2VmaWxlIHx8IGNhdCA+bWFrZWZp bGUgPDxFT0YKLlBPU0lYOgpNQUtFID0gJE1BS0UKYWxsOgoJXCQoTUFLRSkgLWYgTWFrZWZp bGUgXCQ/Ci5ERUZBVUxUOgoJXCQoTUFLRSkgLWYgTWFrZWZpbGUgXCQ8CkVPRgo= --------------3uwEpcw87tp3rRzlLl9gyzFz--