From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: aditya siram Newsgroups: gmane.emacs.devel Subject: Performance regressions in Emacs 25. Date: Sat, 27 Aug 2016 13:03:46 -0500 Message-ID: NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary=94eb2c192e7439d169053b1176b2 X-Trace: blaine.gmane.org 1472323627 1449 195.159.176.226 (27 Aug 2016 18:47:07 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Sat, 27 Aug 2016 18:47:07 +0000 (UTC) To: "emacs-devel@gnu.org Development" Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Aug 27 20:44:06 2016 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bdiaJ-0000vO-Fb for ged-emacs-devel@m.gmane.org; Sat, 27 Aug 2016 20:44:05 +0200 Original-Received: from localhost ([::1]:36878 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bdiaH-0002hG-1G for ged-emacs-devel@m.gmane.org; Sat, 27 Aug 2016 14:44:01 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:43792) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bdhyx-00027l-ER for emacs-devel@gnu.org; Sat, 27 Aug 2016 14:06:23 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bdhy2-0002u0-GL for emacs-devel@gnu.org; Sat, 27 Aug 2016 14:05:26 -0400 Original-Received: from mail-wm0-x235.google.com ([2a00:1450:400c:c09::235]:35353) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bdhy1-0002tC-4H for emacs-devel@gnu.org; Sat, 27 Aug 2016 14:04:30 -0400 Original-Received: by mail-wm0-x235.google.com with SMTP id f65so29656806wmi.0 for ; Sat, 27 Aug 2016 11:04:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:from:date:message-id:subject:to; bh=5wz7ZWqicGxYoSe6kpaqA7yy2e19PoMnJm626ey4emo=; b=Siw1q4WyWdZJkYIVhDqmHmWeUBcGpcW/1+duJih3ZwYmxIFUJzh3Jw/KuHLjjiiwJM KzmBnppezuuOJaN0dde2/EpQWRxpw6UbPP7nPrcH0bV0E0eOY3jOmjc8QFk50AlIsdCM +e8btXAdAinMIPw9tODlnKql6u8+sfgL/c2OVk/vbaDv6fpJJ99EgcM/9eKNUiZKoOEv lVO2yKfqn4mQEGJGuEb/ihi+0Zz1PRVGaZfZECZcIvXXotEX8wXUf7XuHn2hCbzIDnPh haYO4S5JCX9zfDqtywz+tUaTWQS+VrtzHiLgaDJzPAzlqtYf3mtzEGQYtp5RE8P7OR3P GBjQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=5wz7ZWqicGxYoSe6kpaqA7yy2e19PoMnJm626ey4emo=; b=JDpwOzICQDRmMxCn14i/1cFMYWNBFyylVuOofj7DT2N/akelItn9nMlPswmDE0IXz7 8gJl55+3X2K3ElkQwFWsSg41jucd9fUTa0EK9R05sAG7YUqOk0IBpaWUkD4AHaKR5XLJ gdtXjwh/30fty3nCtpCz5KPECHszUapZjZq3rToMrQVqEQQOBSQIHJR/XAikCgBY9nYL eyV4IU2LlUn/waSBFU+OK20CdzFj+7nDe/ZdVXKllTNqJO3jWzwbrjOvcNtggNU37JIV uNcR0uWIchpIH4oUx4xZZMJV4Lzlg0JGCvmg4aTB9YsVAZ2eWxX9JSqj2hnhmB3FEnVJ 53pA== X-Gm-Message-State: AE9vXwMh5njiUFi1aycXGcJwq7428N5s7RgweXj7Ma1jBVzYl5pED4b0GRL1ZO2tPupOB7J4cLoDXW/R/IAVYg== X-Received: by 10.28.196.136 with SMTP id u130mr3613162wmf.83.1472321067521; Sat, 27 Aug 2016 11:04:27 -0700 (PDT) Original-Received: by 10.28.152.68 with HTTP; Sat, 27 Aug 2016 11:03:46 -0700 (PDT) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2a00:1450:400c:c09::235 X-Mailman-Approved-At: Sat, 27 Aug 2016 14:43:46 -0400 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:206834 Archived-At: --94eb2c192e7439d169053b1176b2 Content-Type: multipart/alternative; boundary=94eb2c192e7439d15d053b1176b0 --94eb2c192e7439d15d053b1176b0 Content-Type: text/plain; charset=UTF-8 Hi all, I am the author of shen-elisp [1], an implemenation of the Shen [2] programming language in Elisp. I've noticed that when I built and ran the test suite in Emacs 24 (via Arch) and Emacs 25 (compiled in Arch) (config.log attached) I ran into performance regression where the test suite went from 55 seconds to 100 seconds to complete. My .emacs (actually .spacemacs) was identical across both runs. This regression is reproducible across OS's. Installing shen-elisp is pretty easy since it's on Melpa [3], but running the test suite requires the Shen sources. I realize this is a tedious setup process just to show a perf. bug but unfortunately I don't have time right now to whittle it down to a minimal case, however since Emacs 25 is on the brink of release I thought I'd mention it. Fortunately it's not that hard to show and I am happy to work with someone if they want to try. Thanks! -deech [1] https://github.com/deech/shen-elisp [2] http://shenlanguage.org/ [3] https://melpa.org/#/shen-elisp --94eb2c192e7439d15d053b1176b0 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
Hi all,
I am the author of shen-elisp [1], an implemena= tion of the Shen [2] programming language in Elisp. I've noticed that w= hen I built and ran the test suite in Emacs 24 (via Arch) and Emacs 25 (com= piled in Arch) (config.log attached) I ran into performance regression wher= e the test suite went from 55 seconds to 100 seconds to complete. My .emacs= (actually .spacemacs) was identical across both runs. This regression is r= eproducible across OS's.

Installing shen-elisp is pretty easy si= nce it's on Melpa [3], but running the test suite requires the Shen sou= rces.

I realize this is a tedious setup process just to show a perf.= bug but unfortunately I don't have time right now to whittle it down t= o a minimal case, however since Emacs 25 is on the brink of release I thoug= ht I'd mention it. Fortunately it's not that hard to show and I am = happy to work with someone if they want to try.

Thanks!
-deech

[1] https://github= .com/deech/shen-elisp
[2] http:= //shenlanguage.org/
[3] h= ttps://melpa.org/#/shen-elisp

--94eb2c192e7439d15d053b1176b0-- --94eb2c192e7439d169053b1176b2 Content-Type: text/x-log; charset=US-ASCII; name="config.log" Content-Disposition: attachment; filename="config.log" Content-Transfer-Encoding: base64 X-Attachment-Id: f_isdhw8e60 VGhpcyBmaWxlIGNvbnRhaW5zIGFueSBtZXNzYWdlcyBwcm9kdWNlZCBieSBjb21waWxlcnMgd2hp bGUKcnVubmluZyBjb25maWd1cmUsIHRvIGFpZCBkZWJ1Z2dpbmcgaWYgY29uZmlndXJlIG1ha2Vz IGEgbWlzdGFrZS4KCkl0IHdhcyBjcmVhdGVkIGJ5IEdOVSBFbWFjcyBjb25maWd1cmUgMjUuMSwg d2hpY2ggd2FzCmdlbmVyYXRlZCBieSBHTlUgQXV0b2NvbmYgMi42OS4gIEludm9jYXRpb24gY29t bWFuZCBsaW5lIHdhcwoKICAkIC4vY29uZmlndXJlIC0td2l0aC14LXRvb2xraXQ9bHVjaWQKCiMj IC0tLS0tLS0tLSAjIwojIyBQbGF0Zm9ybS4gIyMKIyMgLS0tLS0tLS0tICMjCgpob3N0bmFtZSA9 IGRlZWNoLXRoaW5rcGFkCnVuYW1lIC1tID0geDg2XzY0CnVuYW1lIC1yID0gNC40LjE2LTEtbHRz CnVuYW1lIC1zID0gTGludXgKdW5hbWUgLXYgPSAjMSBTTVAgVGh1IEp1bCAyOCAxNjoyMToxOCBD RVNUIDIwMTYKCi91c3IvYmluL3VuYW1lIC1wID0gdW5rbm93bgovYmluL3VuYW1lIC1YICAgICA9 IHVua25vd24KCi9iaW4vYXJjaCAgICAgICAgICAgICAgPSB1bmtub3duCi91c3IvYmluL2FyY2gg LWsgICAgICAgPSB1bmtub3duCi91c3IvY29udmV4L2dldHN5c2luZm8gPSB1bmtub3duCi91c3Iv YmluL2hvc3RpbmZvICAgICAgPSB1bmtub3duCi9iaW4vbWFjaGluZSAgICAgICAgICAgPSB1bmtu b3duCi91c3IvYmluL29zbGV2ZWwgICAgICAgPSB1bmtub3duCi9iaW4vdW5pdmVyc2UgICAgICAg ICAgPSB1bmtub3duCgpQQVRIOiAvaG9tZS9kZWVjaC8uY2FiYWwvYmluClBBVEg6IC9ob21lL2Rl ZWNoL0hhc2tlbGwvc3RhY2stMS4wLjQuMy1saW51eC14ODZfNjQKUEFUSDogL2hvbWUvZGVlY2gv RG93bmxvYWRzL2pkazEuOC4wXzkxLy9iaW4KUEFUSDogL2hvbWUvZGVlY2gvU2NhbGEvc2J0L2Jp bgpQQVRIOiAvaG9tZS9kZWVjaC9TY2FsYS9zY2FsYS0yLjExLjgvYmluClBBVEg6IC9ob21lL2Rl ZWNoL1NjYWxhL2FwYWNoZS1tYXZlbi0zLjMuOS9iaW4KUEFUSDogL2hvbWUvZGVlY2gvLmxvY2Fs L2JpbgpQQVRIOiAvdXNyL2xvY2FsL3NiaW4KUEFUSDogL3Vzci9sb2NhbC9iaW4KUEFUSDogL3Vz ci9iaW4KUEFUSDogL3Vzci9iaW4vc2l0ZV9wZXJsClBBVEg6IC91c3IvYmluL3ZlbmRvcl9wZXJs ClBBVEg6IC91c3IvYmluL2NvcmVfcGVybAoKCiMjIC0tLS0tLS0tLS0tICMjCiMjIENvcmUgdGVz dHMuICMjCiMjIC0tLS0tLS0tLS0tICMjCgpjb25maWd1cmU6MzgwMDogY2hlY2tpbmcgZm9yIHhj cnVuCmNvbmZpZ3VyZTozODMwOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTozODk3OiBjaGVja2luZyBm b3IgR05VIE1ha2UKY29uZmlndXJlOjM5NDc6IHJlc3VsdDogbWFrZQpjb25maWd1cmU6Mzk3Mzog Y2hlY2tpbmcgZm9yIGEgQlNELWNvbXBhdGlibGUgaW5zdGFsbApjb25maWd1cmU6NDA0MTogcmVz dWx0OiAvdXNyL2Jpbi9pbnN0YWxsIC1jCmNvbmZpZ3VyZTo0MDUyOiBjaGVja2luZyB3aGV0aGVy IGJ1aWxkIGVudmlyb25tZW50IGlzIHNhbmUKY29uZmlndXJlOjQxMDc6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZTo0MjU4OiBjaGVja2luZyBmb3IgYSB0aHJlYWQtc2FmZSBta2RpciAtcApjb25maWd1 cmU6NDI5NzogcmVzdWx0OiAvdXNyL2Jpbi9ta2RpciAtcApjb25maWd1cmU6NDMwNDogY2hlY2tp bmcgZm9yIGdhd2sKY29uZmlndXJlOjQzMjA6IGZvdW5kIC91c3IvYmluL2dhd2sKY29uZmlndXJl OjQzMzE6IHJlc3VsdDogZ2F3awpjb25maWd1cmU6NDM2NDogY2hlY2tpbmcgd2hldGhlciBtYWtl IHN1cHBvcnRzIG5lc3RlZCB2YXJpYWJsZXMKY29uZmlndXJlOjQzODE6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZTo0NTEyOiBjaGVja2luZyBidWlsZCBzeXN0ZW0gdHlwZQpjb25maWd1cmU6NDUyNjog cmVzdWx0OiB4ODZfNjQtdW5rbm93bi1saW51eC1nbnUKY29uZmlndXJlOjQ1NDY6IGNoZWNraW5n IGhvc3Qgc3lzdGVtIHR5cGUKY29uZmlndXJlOjQ1NTk6IHJlc3VsdDogeDg2XzY0LXVua25vd24t bGludXgtZ251CmNvbmZpZ3VyZTo1NDc1OiBjaGVja2luZyBmb3IgZ2NjCmNvbmZpZ3VyZTo1NDkx OiBmb3VuZCAvdXNyL2Jpbi9nY2MKY29uZmlndXJlOjU1MDI6IHJlc3VsdDogZ2NjCmNvbmZpZ3Vy ZTo1NTMzOiBjaGVja2luZyBmb3IgQyBjb21waWxlciB2ZXJzaW9uCmNvbmZpZ3VyZTo1NTQyOiBn Y2MgLS12ZXJzaW9uID4mNQpnY2MgKEdDQykgNi4xLjEgMjAxNjA4MDIKQ29weXJpZ2h0IChDKSAy MDE2IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgpUaGlzIGlzIGZyZWUgc29mdHdhcmU7 IHNlZSB0aGUgc291cmNlIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuICBUaGVyZSBpcyBOTwp3YXJy YW50eTsgbm90IGV2ZW4gZm9yIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJ Q1VMQVIgUFVSUE9TRS4KCmNvbmZpZ3VyZTo1NTUzOiAkPyA9IDAKY29uZmlndXJlOjU1NDI6IGdj YyAtdiA+JjUKVXNpbmcgYnVpbHQtaW4gc3BlY3MuCkNPTExFQ1RfR0NDPWdjYwpDT0xMRUNUX0xU T19XUkFQUEVSPS91c3IvbGliL2djYy94ODZfNjQtcGMtbGludXgtZ251LzYuMS4xL2x0by13cmFw cGVyClRhcmdldDogeDg2XzY0LXBjLWxpbnV4LWdudQpDb25maWd1cmVkIHdpdGg6IC9idWlsZC9n Y2Mvc3JjL2djYy9jb25maWd1cmUgLS1wcmVmaXg9L3VzciAtLWxpYmRpcj0vdXNyL2xpYiAtLWxp YmV4ZWNkaXI9L3Vzci9saWIgLS1tYW5kaXI9L3Vzci9zaGFyZS9tYW4gLS1pbmZvZGlyPS91c3Iv c2hhcmUvaW5mbyAtLXdpdGgtYnVndXJsPWh0dHBzOi8vYnVncy5hcmNobGludXgub3JnLyAtLWVu YWJsZS1sYW5ndWFnZXM9YyxjKyssYWRhLGZvcnRyYW4sZ28sbHRvLG9iamMsb2JqLWMrKyAtLWVu YWJsZS1zaGFyZWQgLS1lbmFibGUtdGhyZWFkcz1wb3NpeCAtLWVuYWJsZS1saWJtcHggLS13aXRo LXN5c3RlbS16bGliIC0td2l0aC1pc2wgLS1lbmFibGUtX19jeGFfYXRleGl0IC0tZGlzYWJsZS1s aWJ1bndpbmQtZXhjZXB0aW9ucyAtLWVuYWJsZS1jbG9jYWxlPWdudSAtLWRpc2FibGUtbGlic3Rk Y3h4LXBjaCAtLWRpc2FibGUtbGlic3NwIC0tZW5hYmxlLWdudS11bmlxdWUtb2JqZWN0IC0tZW5h YmxlLWxpbmtlci1idWlsZC1pZCAtLWVuYWJsZS1sdG8gLS1lbmFibGUtcGx1Z2luIC0tZW5hYmxl LWluc3RhbGwtbGliaWJlcnR5IC0td2l0aC1saW5rZXItaGFzaC1zdHlsZT1nbnUgLS1lbmFibGUt Z251LWluZGlyZWN0LWZ1bmN0aW9uIC0tZGlzYWJsZS1tdWx0aWxpYiAtLWRpc2FibGUtd2Vycm9y IC0tZW5hYmxlLWNoZWNraW5nPXJlbGVhc2UKVGhyZWFkIG1vZGVsOiBwb3NpeApnY2MgdmVyc2lv biA2LjEuMSAyMDE2MDgwMiAoR0NDKSAKY29uZmlndXJlOjU1NTM6ICQ/ID0gMApjb25maWd1cmU6 NTU0MjogZ2NjIC1WID4mNQpnY2M6IGVycm9yOiB1bnJlY29nbml6ZWQgY29tbWFuZCBsaW5lIG9w dGlvbiAnLVYnCmdjYzogZmF0YWwgZXJyb3I6IG5vIGlucHV0IGZpbGVzCmNvbXBpbGF0aW9uIHRl cm1pbmF0ZWQuCmNvbmZpZ3VyZTo1NTUzOiAkPyA9IDEKY29uZmlndXJlOjU1NDI6IGdjYyAtcXZl cnNpb24gPiY1CmdjYzogZXJyb3I6IHVucmVjb2duaXplZCBjb21tYW5kIGxpbmUgb3B0aW9uICct cXZlcnNpb24nOyBkaWQgeW91IG1lYW4gJy0tdmVyc2lvbic/CmdjYzogZmF0YWwgZXJyb3I6IG5v IGlucHV0IGZpbGVzCmNvbXBpbGF0aW9uIHRlcm1pbmF0ZWQuCmNvbmZpZ3VyZTo1NTUzOiAkPyA9 IDEKY29uZmlndXJlOjU1NzM6IGNoZWNraW5nIHdoZXRoZXIgdGhlIEMgY29tcGlsZXIgd29ya3MK Y29uZmlndXJlOjU1OTU6IGdjYyAgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjU1OTk6ICQ/ ID0gMApjb25maWd1cmU6NTY0NzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjU2NTA6IGNoZWNraW5n IGZvciBDIGNvbXBpbGVyIGRlZmF1bHQgb3V0cHV0IGZpbGUgbmFtZQpjb25maWd1cmU6NTY1Mjog cmVzdWx0OiBhLm91dApjb25maWd1cmU6NTY1ODogY2hlY2tpbmcgZm9yIHN1ZmZpeCBvZiBleGVj dXRhYmxlcwpjb25maWd1cmU6NTY2NTogZ2NjIC1vIGNvbmZ0ZXN0ICAgIGNvbmZ0ZXN0LmMgID4m NQpjb25maWd1cmU6NTY2OTogJD8gPSAwCmNvbmZpZ3VyZTo1NjkxOiByZXN1bHQ6IApjb25maWd1 cmU6NTcxMzogY2hlY2tpbmcgd2hldGhlciB3ZSBhcmUgY3Jvc3MgY29tcGlsaW5nCmNvbmZpZ3Vy ZTo1NzIxOiBnY2MgLW8gY29uZnRlc3QgICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZTo1NzI1 OiAkPyA9IDAKY29uZmlndXJlOjU3MzI6IC4vY29uZnRlc3QKY29uZmlndXJlOjU3MzY6ICQ/ID0g MApjb25maWd1cmU6NTc1MTogcmVzdWx0OiBubwpjb25maWd1cmU6NTc1NjogY2hlY2tpbmcgZm9y IHN1ZmZpeCBvZiBvYmplY3QgZmlsZXMKY29uZmlndXJlOjU3Nzg6IGdjYyAtYyAgIGNvbmZ0ZXN0 LmMgPiY1CmNvbmZpZ3VyZTo1NzgyOiAkPyA9IDAKY29uZmlndXJlOjU4MDM6IHJlc3VsdDogbwpj b25maWd1cmU6NTgwNzogY2hlY2tpbmcgd2hldGhlciB3ZSBhcmUgdXNpbmcgdGhlIEdOVSBDIGNv bXBpbGVyCmNvbmZpZ3VyZTo1ODI2OiBnY2MgLWMgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6 NTgyNjogJD8gPSAwCmNvbmZpZ3VyZTo1ODM1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NTg0NDog Y2hlY2tpbmcgd2hldGhlciBnY2MgYWNjZXB0cyAtZwpjb25maWd1cmU6NTg2NDogZ2NjIC1jIC1n ICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6NTg2NDogJD8gPSAwCmNvbmZpZ3VyZTo1OTA1OiBy ZXN1bHQ6IHllcwpjb25maWd1cmU6NTkzNDogY2hlY2tpbmcgd2hldGhlciBnY2MgdW5kZXJzdGFu ZHMgLWMgYW5kIC1vIHRvZ2V0aGVyCmNvbmZpZ3VyZTo1OTU2OiBnY2MgLWMgY29uZnRlc3QuYyAt byBjb25mdGVzdDIubwpjb25maWd1cmU6NTk1OTogJD8gPSAwCmNvbmZpZ3VyZTo1OTU2OiBnY2Mg LWMgY29uZnRlc3QuYyAtbyBjb25mdGVzdDIubwpjb25maWd1cmU6NTk1OTogJD8gPSAwCmNvbmZp Z3VyZTo1OTcxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6NTk5OTogY2hlY2tpbmcgZm9yIHN0eWxl IG9mIGluY2x1ZGUgdXNlZCBieSBtYWtlCmNvbmZpZ3VyZTo2MDI3OiByZXN1bHQ6IEdOVQpjb25m aWd1cmU6NjA1MzogY2hlY2tpbmcgZGVwZW5kZW5jeSBzdHlsZSBvZiBnY2MKY29uZmlndXJlOjYx NjQ6IHJlc3VsdDogZ2NjMwpjb25maWd1cmU6NjIyOTogY2hlY2tpbmcgZm9yIGdjYyBvcHRpb24g dG8gYWNjZXB0IElTTyBDOTkKY29uZmlndXJlOjYzNzg6IGdjYyAgLWMgLWcgLU8yICBjb25mdGVz dC5jID4mNQpjb25maWd1cmU6NjM3ODogJD8gPSAwCmNvbmZpZ3VyZTo2MzkxOiByZXN1bHQ6IG5v bmUgbmVlZGVkCmNvbmZpZ3VyZTo2NDA4OiBjaGVja2luZyBmb3IgZ2NjIG9wdGlvbiB0byBhY2Nl cHQgSVNPIFN0YW5kYXJkIEMKY29uZmlndXJlOjY0MTk6IHJlc3VsdDogbm9uZSBuZWVkZWQKY29u ZmlndXJlOjY0Njc6IGNoZWNraW5nIGZvciBwdXRlbnYKY29uZmlndXJlOjY0Njc6IGdjYyAtbyBj b25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjY0Njc6ICQ/ID0gMApj b25maWd1cmU6NjQ2NzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjY0Njc6IGNoZWNraW5nIGZvciB0 enNldApjb25maWd1cmU6NjQ2NzogZ2NjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMg ID4mNQpjb25maWd1cmU6NjQ2NzogJD8gPSAwCmNvbmZpZ3VyZTo2NDY3OiByZXN1bHQ6IHllcwpj b25maWd1cmU6NjQ2NzogY2hlY2tpbmcgZm9yIGZjaG1vZApjb25maWd1cmU6NjQ2NzogZ2NjIC1v IGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6NjQ2NzogJD8gPSAw CmNvbmZpZ3VyZTo2NDY3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NjQ2NzogY2hlY2tpbmcgZm9y IHJlYWRsaW5rYXQKY29uZmlndXJlOjY0Njc6IGdjYyAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25m dGVzdC5jICA+JjUKY29uZmlndXJlOjY0Njc6ICQ/ID0gMApjb25maWd1cmU6NjQ2NzogcmVzdWx0 OiB5ZXMKY29uZmlndXJlOjY0Njc6IGNoZWNraW5nIGZvciBmYWNjZXNzYXQKY29uZmlndXJlOjY0 Njc6IGdjYyAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjY0 Njc6ICQ/ID0gMApjb25maWd1cmU6NjQ2NzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjY0Njc6IGNo ZWNraW5nIGZvciBmY250bApjb25maWd1cmU6NjQ2NzogZ2NjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAg IGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6NjQ2NzogJD8gPSAwCmNvbmZpZ3VyZTo2NDY3OiBy ZXN1bHQ6IHllcwpjb25maWd1cmU6NjQ2NzogY2hlY2tpbmcgZm9yIGZkb3BlbmRpcgpjb25maWd1 cmU6NjQ2NzogZ2NjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1 cmU6NjQ2NzogJD8gPSAwCmNvbmZpZ3VyZTo2NDY3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NjQ2 NzogY2hlY2tpbmcgZm9yIGZzdGF0YXQKY29uZmlndXJlOjY0Njc6IGdjYyAtbyBjb25mdGVzdCAt ZyAtTzIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjY0Njc6ICQ/ID0gMApjb25maWd1cmU6 NjQ2NzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjY0Njc6IGNoZWNraW5nIGZvciBmc3luYwpjb25m aWd1cmU6NjQ2NzogZ2NjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25m aWd1cmU6NjQ2NzogJD8gPSAwCmNvbmZpZ3VyZTo2NDY3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6 NjQ2NzogY2hlY2tpbmcgZm9yIGdldHRpbWVvZmRheQpjb25maWd1cmU6NjQ2NzogZ2NjIC1vIGNv bmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6NjQ2NzogJD8gPSAwCmNv bmZpZ3VyZTo2NDY3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NjQ2NzogY2hlY2tpbmcgZm9yIG5h bm90aW1lCmNvbmZpZ3VyZTo2NDY3OiBnY2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3Qu YyAgPiY1Ci90bXAvY2NtbEtYdmgubzogSW4gZnVuY3Rpb24gYG1haW4nOgovaG9tZS9kZWVjaC9E b3dubG9hZHMvZW1hY3MtMjUuMS9jb25mdGVzdC5jOjU2OiB1bmRlZmluZWQgcmVmZXJlbmNlIHRv IGBuYW5vdGltZScKY29sbGVjdDI6IGVycm9yOiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVzCmNv bmZpZ3VyZTo2NDY3OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyog Y29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2RlZmlu ZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyNS4x Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAyNS4xIgp8ICNkZWZpbmUgUEFD S0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0Vf VVJMICJodHRwOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgUEFDS0FH RSAiZW1hY3MiCnwgI2RlZmluZSBWRVJTSU9OICIyNS4xIgp8ICNkZWZpbmUgTUFJTF9VU0VfUE9Q IDEKfCAjZGVmaW5lIEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfVFpTRVQgMQp8ICNkZWZp bmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKfCAjZGVmaW5lIEhB VkVfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9GRE9Q RU5ESVIgMQp8ICNkZWZpbmUgSEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMgMQp8 ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAv KiBEZWZpbmUgbmFub3RpbWUgdG8gYW4gaW5ub2N1b3VzIHZhcmlhbnQsIGluIGNhc2UgPGxpbWl0 cy5oPiBkZWNsYXJlcyBuYW5vdGltZS4KfCAgICBGb3IgZXhhbXBsZSwgSFAtVVggMTFpIDxsaW1p dHMuaD4gZGVjbGFyZXMgZ2V0dGltZW9mZGF5LiAgKi8KfCAjZGVmaW5lIG5hbm90aW1lIGlubm9j dW91c19uYW5vdGltZQp8IAp8IC8qIFN5c3RlbSBoZWFkZXIgdG8gZGVmaW5lIF9fc3R1YiBtYWNy b3MgYW5kIGhvcGVmdWxseSBmZXcgcHJvdG90eXBlcywKfCAgICAgd2hpY2ggY2FuIGNvbmZsaWN0 IHdpdGggY2hhciBuYW5vdGltZSAoKTsgYmVsb3cuCnwgICAgIFByZWZlciA8bGltaXRzLmg+IHRv IDxhc3NlcnQuaD4gaWYgX19TVERDX18gaXMgZGVmaW5lZCwgc2luY2UKfCAgICAgPGxpbWl0cy5o PiBleGlzdHMgZXZlbiBvbiBmcmVlc3RhbmRpbmcgY29tcGlsZXJzLiAgKi8KfCAKfCAjaWZkZWYg X19TVERDX18KfCAjIGluY2x1ZGUgPGxpbWl0cy5oPgp8ICNlbHNlCnwgIyBpbmNsdWRlIDxhc3Nl cnQuaD4KfCAjZW5kaWYKfCAKfCAjdW5kZWYgbmFub3RpbWUKfCAKfCAvKiBPdmVycmlkZSBhbnkg R0NDIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4KfCAgICBVc2UgY2hhciBi ZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBHQ0MKfCAgICBidWls dGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAq Lwp8ICNpZmRlZiBfX2NwbHVzcGx1cwp8IGV4dGVybiAiQyIKfCAjZW5kaWYKfCBjaGFyIG5hbm90 aW1lICgpOwp8IC8qIFRoZSBHTlUgQyBsaWJyYXJ5IGRlZmluZXMgdGhpcyBmb3IgZnVuY3Rpb25z IHdoaWNoIGl0IGltcGxlbWVudHMKfCAgICAgdG8gYWx3YXlzIGZhaWwgd2l0aCBFTk9TWVMuICBT b21lIGZ1bmN0aW9ucyBhcmUgYWN0dWFsbHkgbmFtZWQKfCAgICAgc29tZXRoaW5nIHN0YXJ0aW5n IHdpdGggX18gYW5kIHRoZSBub3JtYWwgbmFtZSBpcyBhbiBhbGlhcy4gICovCnwgI2lmIGRlZmlu ZWQgX19zdHViX25hbm90aW1lIHx8IGRlZmluZWQgX19zdHViX19fbmFub3RpbWUKfCBjaG9rZSBt ZQp8ICNlbmRpZgp8IAp8IGludAp8IG1haW4gKCkKfCB7CnwgcmV0dXJuIG5hbm90aW1lICgpOwp8 ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6NjQ2NzogcmVzdWx0OiBubwpjb25maWd1 cmU6NjQ2NzogY2hlY2tpbmcgZm9yIGxzdGF0CmNvbmZpZ3VyZTo2NDY3OiBnY2MgLW8gY29uZnRl c3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZTo2NDY3OiAkPyA9IDAKY29uZmln dXJlOjY0Njc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo2NDY3OiBjaGVja2luZyBmb3IgbWtvc3Rl bXAKY29uZmlndXJlOjY0Njc6IGdjYyAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICA+ JjUKY29uZmlndXJlOjY0Njc6ICQ/ID0gMApjb25maWd1cmU6NjQ2NzogcmVzdWx0OiB5ZXMKY29u ZmlndXJlOjY0Njc6IGNoZWNraW5nIGZvciBwaXBlMgpjb25maWd1cmU6NjQ2NzogZ2NjIC1vIGNv bmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6NjQ2NzogJD8gPSAwCmNv bmZpZ3VyZTo2NDY3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NjQ2NzogY2hlY2tpbmcgZm9yIHBz ZWxlY3QKY29uZmlndXJlOjY0Njc6IGdjYyAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5j ICA+JjUKY29uZmlndXJlOjY0Njc6ICQ/ID0gMApjb25maWd1cmU6NjQ2NzogcmVzdWx0OiB5ZXMK Y29uZmlndXJlOjY0Njc6IGNoZWNraW5nIGZvciByZWFkbGluawpjb25maWd1cmU6NjQ2NzogZ2Nj IC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6NjQ2NzogJD8g PSAwCmNvbmZpZ3VyZTo2NDY3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NjQ2NzogY2hlY2tpbmcg Zm9yIHN0cnRvaW1heApjb25maWd1cmU6NjQ2NzogZ2NjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNv bmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6NjQ2NzogJD8gPSAwCmNvbmZpZ3VyZTo2NDY3OiByZXN1 bHQ6IHllcwpjb25maWd1cmU6NjQ2NzogY2hlY2tpbmcgZm9yIHN0cnRvdW1heApjb25maWd1cmU6 NjQ2NzogZ2NjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6 NjQ2NzogJD8gPSAwCmNvbmZpZ3VyZTo2NDY3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NjQ2Nzog Y2hlY2tpbmcgZm9yIHN5bWxpbmsKY29uZmlndXJlOjY0Njc6IGdjYyAtbyBjb25mdGVzdCAtZyAt TzIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjY0Njc6ICQ/ID0gMApjb25maWd1cmU6NjQ2 NzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjY0Njc6IGNoZWNraW5nIGZvciBsb2NhbHRpbWVfcgpj b25maWd1cmU6NjQ2NzogZ2NjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpj b25maWd1cmU6NjQ2NzogJD8gPSAwCmNvbmZpZ3VyZTo2NDY3OiByZXN1bHQ6IHllcwpjb25maWd1 cmU6NjQ2NzogY2hlY2tpbmcgZm9yIHRpbWVnbQpjb25maWd1cmU6NjQ2NzogZ2NjIC1vIGNvbmZ0 ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6NjQ2NzogJD8gPSAwCmNvbmZp Z3VyZTo2NDY3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NjQ2NzogY2hlY2tpbmcgZm9yIGZ1dGlt ZXMKY29uZmlndXJlOjY0Njc6IGdjYyAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICA+ JjUKY29uZmlndXJlOjY0Njc6ICQ/ID0gMApjb25maWd1cmU6NjQ2NzogcmVzdWx0OiB5ZXMKY29u ZmlndXJlOjY0Njc6IGNoZWNraW5nIGZvciBmdXRpbWVzYXQKY29uZmlndXJlOjY0Njc6IGdjYyAt byBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjY0Njc6ICQ/ID0g MApjb25maWd1cmU6NjQ2NzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjY0Njc6IGNoZWNraW5nIGZv ciBmdXRpbWVucwpjb25maWd1cmU6NjQ2NzogZ2NjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0 ZXN0LmMgID4mNQpjb25maWd1cmU6NjQ2NzogJD8gPSAwCmNvbmZpZ3VyZTo2NDY3OiByZXN1bHQ6 IHllcwpjb25maWd1cmU6NjQ2NzogY2hlY2tpbmcgZm9yIHV0aW1lbnNhdApjb25maWd1cmU6NjQ2 NzogZ2NjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6NjQ2 NzogJD8gPSAwCmNvbmZpZ3VyZTo2NDY3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NjQ2NzogY2hl Y2tpbmcgZm9yIGx1dGltZXMKY29uZmlndXJlOjY0Njc6IGdjYyAtbyBjb25mdGVzdCAtZyAtTzIg ICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjY0Njc6ICQ/ID0gMApjb25maWd1cmU6NjQ2Nzog cmVzdWx0OiB5ZXMKY29uZmlndXJlOjY0Njc6IGNoZWNraW5nIGZvciBnZXRkdGFibGVzaXplCmNv bmZpZ3VyZTo2NDY3OiBnY2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CmNv bmZpZ3VyZTo2NDY3OiAkPyA9IDAKY29uZmlndXJlOjY0Njc6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy ZTo2NDY3OiBjaGVja2luZyBmb3Igc2VjdXJlX2dldGVudgpjb25maWd1cmU6NjQ2NzogZ2NjIC1v IGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6NjQ2NzogJD8gPSAw CmNvbmZpZ3VyZTo2NDY3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NjQ4NzogY2hlY2tpbmcgaG93 IHRvIHJ1biB0aGUgQyBwcmVwcm9jZXNzb3IKY29uZmlndXJlOjY1MTg6IGdjYyAtRSAgY29uZnRl c3QuYwpjb25maWd1cmU6NjUxODogJD8gPSAwCmNvbmZpZ3VyZTo2NTMyOiBnY2MgLUUgIGNvbmZ0 ZXN0LmMKY29uZnRlc3QuYzozOToyODogZmF0YWwgZXJyb3I6IGFjX25vbmV4aXN0ZW50Lmg6IE5v IHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKICNpbmNsdWRlIDxhY19ub25leGlzdGVudC5oPgogICAg ICAgICAgICAgICAgICAgICAgICAgICAgXgpjb21waWxhdGlvbiB0ZXJtaW5hdGVkLgpjb25maWd1 cmU6NjUzMjogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZk ZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8ICNkZWZpbmUgUEFD S0FHRV9UQVJOQU1FICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMjUuMSIKfCAj ZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1hY3MgMjUuMSIKfCAjZGVmaW5lIFBBQ0tBR0Vf QlVHUkVQT1JUICJidWctZ251LWVtYWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAi aHR0cDovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIFBBQ0tBR0UgImVt YWNzIgp8ICNkZWZpbmUgVkVSU0lPTiAiMjUuMSIKfCAjZGVmaW5lIE1BSUxfVVNFX1BPUCAxCnwg I2RlZmluZSBIQVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1RaU0VUIDEKfCAjZGVmaW5lIEhB VkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZFX0ZB Q0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElS IDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVm aW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUg SEFWRV9NS09TVEVNUCAxCnwgI2RlZmluZSBIQVZFX1BJUEUyIDEKfCAjZGVmaW5lIEhBVkVfUFNF TEVDVCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFY IDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9VTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwg I2RlZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfVElNRUdNIDEKfCAjZGVm aW5lIEhBVkVfRlVUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVNBVCAxCnwgI2RlZmluZSBI QVZFX0ZVVElNRU5TIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVOU0FUIDEKfCAjZGVmaW5lIEhBVkVf TFVUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9T RUNVUkVfR0VURU5WIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPGFjX25v bmV4aXN0ZW50Lmg+CmNvbmZpZ3VyZTo2NTU3OiByZXN1bHQ6IGdjYyAtRQpjb25maWd1cmU6NjU3 NzogZ2NjIC1FICBjb25mdGVzdC5jCmNvbmZpZ3VyZTo2NTc3OiAkPyA9IDAKY29uZmlndXJlOjY1 OTE6IGdjYyAtRSAgY29uZnRlc3QuYwpjb25mdGVzdC5jOjM5OjI4OiBmYXRhbCBlcnJvcjogYWNf bm9uZXhpc3RlbnQuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQogI2luY2x1ZGUgPGFjX25v bmV4aXN0ZW50Lmg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCmNvbXBpbGF0aW9uIHRl cm1pbmF0ZWQuCmNvbmZpZ3VyZTo2NTkxOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3Jh bSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1h Y3MiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9W RVJTSU9OICIyNS4xIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAyNS4xIgp8 ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVm aW5lIFBBQ0tBR0VfVVJMICJodHRwOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNk ZWZpbmUgUEFDS0FHRSAiZW1hY3MiCnwgI2RlZmluZSBWRVJTSU9OICIyNS4xIgp8ICNkZWZpbmUg TUFJTF9VU0VfUE9QIDEKfCAjZGVmaW5lIEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfVFpT RVQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEK fCAjZGVmaW5lIEhBVkVfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZp bmUgSEFWRV9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgSEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5lIEhB VkVfRlNZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9M U1RBVCAxCnwgI2RlZmluZSBIQVZFX01LT1NURU1QIDEKfCAjZGVmaW5lIEhBVkVfUElQRTIgMQp8 ICNkZWZpbmUgSEFWRV9QU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZp bmUgSEFWRV9TVFJUT0lNQVggMQp8ICNkZWZpbmUgSEFWRV9TVFJUT1VNQVggMQp8ICNkZWZpbmUg SEFWRV9TWU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUgSEFW RV9USU1FR00gMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1F U0FUIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FTlMgMQp8ICNkZWZpbmUgSEFWRV9VVElNRU5TQVQg MQp8ICNkZWZpbmUgSEFWRV9MVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAx CnwgI2RlZmluZSBIQVZFX1NFQ1VSRV9HRVRFTlYgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8K fCAjaW5jbHVkZSA8YWNfbm9uZXhpc3RlbnQuaD4KY29uZmlndXJlOjY2MjA6IGNoZWNraW5nIGZv ciBncmVwIHRoYXQgaGFuZGxlcyBsb25nIGxpbmVzIGFuZCAtZQpjb25maWd1cmU6NjY3ODogcmVz dWx0OiAvdXNyL2Jpbi9ncmVwCmNvbmZpZ3VyZTo2NjgzOiBjaGVja2luZyBmb3IgZWdyZXAKY29u ZmlndXJlOjY3NDU6IHJlc3VsdDogL3Vzci9iaW4vZ3JlcCAtRQpjb25maWd1cmU6Njc1MDogY2hl Y2tpbmcgZm9yIEFOU0kgQyBoZWFkZXIgZmlsZXMKY29uZmlndXJlOjY3NzA6IGdjYyAtYyAtZyAt TzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo2NzcwOiAkPyA9IDAKY29uZmlndXJlOjY4NDM6 IGdjYyAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjY4NDM6 ICQ/ID0gMApjb25maWd1cmU6Njg0MzogLi9jb25mdGVzdApjb25maWd1cmU6Njg0MzogJD8gPSAw CmNvbmZpZ3VyZTo2ODU0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6Njg2NzogY2hlY2tpbmcgZm9y IHN5cy90eXBlcy5oCmNvbmZpZ3VyZTo2ODY3OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4m NQpjb25maWd1cmU6Njg2NzogJD8gPSAwCmNvbmZpZ3VyZTo2ODY3OiByZXN1bHQ6IHllcwpjb25m aWd1cmU6Njg2NzogY2hlY2tpbmcgZm9yIHN5cy9zdGF0LmgKY29uZmlndXJlOjY4Njc6IGdjYyAt YyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo2ODY3OiAkPyA9IDAKY29uZmlndXJl OjY4Njc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo2ODY3OiBjaGVja2luZyBmb3Igc3RkbGliLmgK Y29uZmlndXJlOjY4Njc6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo2 ODY3OiAkPyA9IDAKY29uZmlndXJlOjY4Njc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo2ODY3OiBj aGVja2luZyBmb3Igc3RyaW5nLmgKY29uZmlndXJlOjY4Njc6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0 ZXN0LmMgPiY1CmNvbmZpZ3VyZTo2ODY3OiAkPyA9IDAKY29uZmlndXJlOjY4Njc6IHJlc3VsdDog eWVzCmNvbmZpZ3VyZTo2ODY3OiBjaGVja2luZyBmb3IgbWVtb3J5LmgKY29uZmlndXJlOjY4Njc6 IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo2ODY3OiAkPyA9IDAKY29u ZmlndXJlOjY4Njc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo2ODY3OiBjaGVja2luZyBmb3Igc3Ry aW5ncy5oCmNvbmZpZ3VyZTo2ODY3OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25m aWd1cmU6Njg2NzogJD8gPSAwCmNvbmZpZ3VyZTo2ODY3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6 Njg2NzogY2hlY2tpbmcgZm9yIGludHR5cGVzLmgKY29uZmlndXJlOjY4Njc6IGdjYyAtYyAtZyAt TzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo2ODY3OiAkPyA9IDAKY29uZmlndXJlOjY4Njc6 IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo2ODY3OiBjaGVja2luZyBmb3Igc3RkaW50LmgKY29uZmln dXJlOjY4Njc6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo2ODY3OiAk PyA9IDAKY29uZmlndXJlOjY4Njc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo2ODY3OiBjaGVja2lu ZyBmb3IgdW5pc3RkLmgKY29uZmlndXJlOjY4Njc6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMg PiY1CmNvbmZpZ3VyZTo2ODY3OiAkPyA9IDAKY29uZmlndXJlOjY4Njc6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZTo2ODgwOiBjaGVja2luZyBtaW5peC9jb25maWcuaCB1c2FiaWxpdHkKY29uZmlndXJl OjY4ODA6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6ODI6MjY6IGZh dGFsIGVycm9yOiBtaW5peC9jb25maWcuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQogI2lu Y2x1ZGUgPG1pbml4L2NvbmZpZy5oPgogICAgICAgICAgICAgICAgICAgICAgICAgIF4KY29tcGls YXRpb24gdGVybWluYXRlZC4KY29uZmlndXJlOjY4ODA6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxl ZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUg IkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQ QUNLQUdFX1ZFUlNJT04gIjI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNz IDI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3Jn Igp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHA6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9lbWFj cy8iCnwgI2RlZmluZSBQQUNLQUdFICJlbWFjcyIKfCAjZGVmaW5lIFZFUlNJT04gIjI1LjEiCnwg I2RlZmluZSBNQUlMX1VTRV9QT1AgMQp8ICNkZWZpbmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZpbmUg SEFWRV9UWlNFVCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX1JFQURM SU5LQVQgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAx CnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNk ZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmlu ZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfTUtPU1RFTVAgMQp8ICNkZWZpbmUgSEFWRV9Q SVBFMiAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAx CnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX1NUUlRPVU1BWCAxCnwg I2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2Rl ZmluZSBIQVZFX1RJTUVHTSAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVMgMQp8ICNkZWZpbmUgSEFW RV9GVVRJTUVTQVQgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVOUyAxCnwgI2RlZmluZSBIQVZFX1VU SU1FTlNBVCAxCnwgI2RlZmluZSBIQVZFX0xVVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFC TEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VDVVJFX0dFVEVOViAxCnwgI2RlZmluZSBTVERDX0hF QURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19T VEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19I IDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8 ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNk ZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRl IDxzdGRpby5oPgp8ICNpZmRlZiBIQVZFX1NZU19UWVBFU19ICnwgIyBpbmNsdWRlIDxzeXMvdHlw ZXMuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TWVNfU1RBVF9ICnwgIyBpbmNsdWRlIDxzeXMv c3RhdC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBTVERDX0hFQURFUlMKfCAjIGluY2x1ZGUgPHN0ZGxp Yi5oPgp8ICMgaW5jbHVkZSA8c3RkZGVmLmg+CnwgI2Vsc2UKfCAjIGlmZGVmIEhBVkVfU1RETElC X0gKfCAjICBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjIGVuZGlmCnwgI2VuZGlmCnwgI2lmZGVmIEhB VkVfU1RSSU5HX0gKfCAjIGlmICFkZWZpbmVkIFNURENfSEVBREVSUyAmJiBkZWZpbmVkIEhBVkVf TUVNT1JZX0gKfCAjICBpbmNsdWRlIDxtZW1vcnkuaD4KfCAjIGVuZGlmCnwgIyBpbmNsdWRlIDxz dHJpbmcuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdTX0gKfCAjIGluY2x1ZGUgPHN0 cmluZ3MuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9JTlRUWVBFU19ICnwgIyBpbmNsdWRlIDxp bnR0eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NURElOVF9ICnwgIyBpbmNsdWRlIDxz dGRpbnQuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9VTklTVERfSAp8ICMgaW5jbHVkZSA8dW5p c3RkLmg+CnwgI2VuZGlmCnwgI2luY2x1ZGUgPG1pbml4L2NvbmZpZy5oPgpjb25maWd1cmU6Njg4 MDogcmVzdWx0OiBubwpjb25maWd1cmU6Njg4MDogY2hlY2tpbmcgbWluaXgvY29uZmlnLmggcHJl c2VuY2UKY29uZmlndXJlOjY4ODA6IGdjYyAtRSAgY29uZnRlc3QuYwpjb25mdGVzdC5jOjQ5OjI2 OiBmYXRhbCBlcnJvcjogbWluaXgvY29uZmlnLmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkK ICNpbmNsdWRlIDxtaW5peC9jb25maWcuaD4KICAgICAgICAgICAgICAgICAgICAgICAgICBeCmNv bXBpbGF0aW9uIHRlcm1pbmF0ZWQuCmNvbmZpZ3VyZTo2ODgwOiAkPyA9IDEKY29uZmlndXJlOiBm YWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9O QU1FICJHTlUgRW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZp bmUgUEFDS0FHRV9WRVJTSU9OICIyNS4xIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBF bWFjcyAyNS4xIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251 Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJodHRwOi8vd3d3LmdudS5vcmcvc29mdHdhcmUv ZW1hY3MvIgp8ICNkZWZpbmUgUEFDS0FHRSAiZW1hY3MiCnwgI2RlZmluZSBWRVJTSU9OICIyNS4x Igp8ICNkZWZpbmUgTUFJTF9VU0VfUE9QIDEKfCAjZGVmaW5lIEhBVkVfUFVURU5WIDEKfCAjZGVm aW5lIEhBVkVfVFpTRVQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9S RUFETElOS0FUIDEKfCAjZGVmaW5lIEhBVkVfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfRkNO VEwgMQp8ICNkZWZpbmUgSEFWRV9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgSEFWRV9GU1RBVEFUIDEK fCAjZGVmaW5lIEhBVkVfRlNZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNk ZWZpbmUgSEFWRV9MU1RBVCAxCnwgI2RlZmluZSBIQVZFX01LT1NURU1QIDEKfCAjZGVmaW5lIEhB VkVfUElQRTIgMQp8ICNkZWZpbmUgSEFWRV9QU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJ TksgMQp8ICNkZWZpbmUgSEFWRV9TVFJUT0lNQVggMQp8ICNkZWZpbmUgSEFWRV9TVFJUT1VNQVgg MQp8ICNkZWZpbmUgSEFWRV9TWU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxUSU1FX1IgMQp8 ICNkZWZpbmUgSEFWRV9USU1FR00gMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVTIDEKfCAjZGVmaW5l IEhBVkVfRlVUSU1FU0FUIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FTlMgMQp8ICNkZWZpbmUgSEFW RV9VVElNRU5TQVQgMQp8ICNkZWZpbmUgSEFWRV9MVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfR0VU RFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NFQ1VSRV9HRVRFTlYgMQp8ICNkZWZpbmUgU1RE Q19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJ TkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19I IDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEK fCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5j bHVkZSA8bWluaXgvY29uZmlnLmg+CmNvbmZpZ3VyZTo2ODgwOiByZXN1bHQ6IG5vCmNvbmZpZ3Vy ZTo2ODgwOiBjaGVja2luZyBmb3IgbWluaXgvY29uZmlnLmgKY29uZmlndXJlOjY4ODA6IHJlc3Vs dDogbm8KY29uZmlndXJlOjY5MDQ6IGNoZWNraW5nIHdoZXRoZXIgaXQgaXMgc2FmZSB0byBkZWZp bmUgX19FWFRFTlNJT05TX18KY29uZmlndXJlOjY5MjI6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0 LmMgPiY1CmNvbmZpZ3VyZTo2OTIyOiAkPyA9IDAKY29uZmlndXJlOjY5Mjk6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZTo2OTQ2OiBjaGVja2luZyB3aGV0aGVyIF9YT1BFTl9TT1VSQ0Ugc2hvdWxkIGJl IGRlZmluZWQKY29uZmlndXJlOjY5NjU6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNv bmZpZ3VyZTo2OTY1OiAkPyA9IDAKY29uZmlndXJlOjY5ODk6IHJlc3VsdDogbm8KY29uZmlndXJl OjcwMDQ6IGNoZWNraW5nIGZvciBNaW5peCBBbXN0ZXJkYW0gY29tcGlsZXIKY29uZmlndXJlOjcw Mjg6IHJlc3VsdDogbm8KY29uZmlndXJlOjcwODg6IGNoZWNraW5nIGZvciBhcgpjb25maWd1cmU6 NzEwNDogZm91bmQgL3Vzci9iaW4vYXIKY29uZmlndXJlOjcxMTU6IHJlc3VsdDogYXIKY29uZmln dXJlOjcxNDE6IGNoZWNraW5nIHRoZSBhcmNoaXZlciAoYXIpIGludGVyZmFjZQpjb25maWd1cmU6 NzE1NzogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjcxNTc6ICQ/ID0g MApjb25maWd1cmU6NzE1OTogYXIgY3J1IGxpYmNvbmZ0ZXN0LmEgY29uZnRlc3QubyA+JjUKYXI6 IGB1JyBtb2RpZmllciBpZ25vcmVkIHNpbmNlIGBEJyBpcyB0aGUgZGVmYXVsdCAoc2VlIGBVJykK Y29uZmlndXJlOjcxNjI6ICQ/ID0gMApjb25maWd1cmU6NzE5MDogcmVzdWx0OiBhcgpjb25maWd1 cmU6NzI1NTogY2hlY2tpbmcgZm9yIGFyCmNvbmZpZ3VyZTo3MjgyOiByZXN1bHQ6IGFyCmNvbmZp Z3VyZTo3MzU3OiBjaGVja2luZyBmb3IgcmFubGliCmNvbmZpZ3VyZTo3MzczOiBmb3VuZCAvdXNy L2Jpbi9yYW5saWIKY29uZmlndXJlOjczODQ6IHJlc3VsdDogcmFubGliCmNvbmZpZ3VyZTo3NDE3 OiBjaGVja2luZyBmb3Igc3BlY2lhbCBDIGNvbXBpbGVyIG9wdGlvbnMgbmVlZGVkIGZvciBsYXJn ZSBmaWxlcwpjb25maWd1cmU6NzQ2MjogcmVzdWx0OiBubwpjb25maWd1cmU6NzQ2ODogY2hlY2tp bmcgZm9yIF9GSUxFX09GRlNFVF9CSVRTIHZhbHVlIG5lZWRlZCBmb3IgbGFyZ2UgZmlsZXMKY29u ZmlndXJlOjc0OTM6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo3NDkz OiAkPyA9IDAKY29uZmlndXJlOjc1MjU6IHJlc3VsdDogbm8KY29uZmlndXJlOjc3NTQ6IGNoZWNr aW5nIHdoZXRoZXIgZ2NjIGFjY2VwdHMgLWczIC1PMgpjb25maWd1cmU6Nzc3MDogZ2NjIC1vIGNv bmZ0ZXN0IC1nMyAtTzIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjc3NzA6ICQ/ID0gMApj b25maWd1cmU6Nzc3ODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjc4NDI6IGNoZWNraW5nIHdoZXRo ZXIgdGhlIGNvbXBpbGVyIGlzIGNsYW5nCmNvbmZpZ3VyZTo3ODYyOiBnY2MgLWMgLWczIC1PMiAg Y29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzo1OToxMjogZXJyb3I6IGV4cGVjdGVkICc9JywgJywn LCAnOycsICdhc20nIG9yICdfX2F0dHJpYnV0ZV9fJyBiZWZvcmUgc3RyaW5nIGNvbnN0YW50CiAg ICAgIGVycm9yICJub3QgY2xhbmciOwogICAgICAgICAgICBefn5+fn5+fn5+fgpjb25maWd1cmU6 Nzg2MjogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZz LmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8ICNkZWZpbmUgUEFDS0FH RV9UQVJOQU1FICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMjUuMSIKfCAjZGVm aW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1hY3MgMjUuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVH UkVQT1JUICJidWctZ251LWVtYWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0 cDovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIFBBQ0tBR0UgImVtYWNz Igp8ICNkZWZpbmUgVkVSU0lPTiAiMjUuMSIKfCAjZGVmaW5lIE1BSUxfVVNFX1BPUCAxCnwgI2Rl ZmluZSBIQVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1RaU0VUIDEKfCAjZGVmaW5lIEhBVkVf RkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NF U1NBVCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEK fCAjZGVmaW5lIEhBVkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5l IEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFW RV9NS09TVEVNUCAxCnwgI2RlZmluZSBIQVZFX1BJUEUyIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVD VCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEK fCAjZGVmaW5lIEhBVkVfU1RSVE9VTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2Rl ZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfVElNRUdNIDEKfCAjZGVmaW5l IEhBVkVfRlVUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVNBVCAxCnwgI2RlZmluZSBIQVZF X0ZVVElNRU5TIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVOU0FUIDEKfCAjZGVmaW5lIEhBVkVfTFVU SU1FUyAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRUNV UkVfR0VURU5WIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19U WVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJ Ql9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAx CnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8 ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVm aW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAjZGVmaW5lIF9E QVJXSU5fQ19TT1VSQ0UgMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19VU0Vf TUlOR1dfQU5TSV9TVERJTyAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8 ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9VU0VfNjRfQklUX0lO T0RFIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgCnwgCSAgI2lmbmRlZiBfX2NsYW5nX18K fCAJICAgIGVycm9yICJub3QgY2xhbmciOwp8IAkgICNlbmRpZgp8IAp8IGludAp8IG1haW4gKCkK fCB7CnwgCnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZTo3ODY5OiByZXN1bHQ6IG5v CmNvbmZpZ3VyZTo3ODc0OiBjaGVja2luZyB3aGV0aGVyIEMgY29tcGlsZXIgaGFuZGxlcyAtV2Vy cm9yIC1XdW5rbm93bi13YXJuaW5nLW9wdGlvbgpjb25maWd1cmU6Nzg5MzogZ2NjIC1vIGNvbmZ0 ZXN0IC1nMyAtTzIgIC1XZXJyb3IgLVd1bmtub3duLXdhcm5pbmctb3B0aW9uICAgY29uZnRlc3Qu YyAgPiY1CmdjYzogZXJyb3I6IHVucmVjb2duaXplZCBjb21tYW5kIGxpbmUgb3B0aW9uICctV3Vu a25vd24td2FybmluZy1vcHRpb24nOyBkaWQgeW91IG1lYW4gJy1Xbm8td2FybmluZy10b2tlbic/ CmNvbmZpZ3VyZTo3ODkzOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6Cnwg LyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2Rl ZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIy NS4xIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAyNS4xIgp8ICNkZWZpbmUg UEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tB R0VfVVJMICJodHRwOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgUEFD S0FHRSAiZW1hY3MiCnwgI2RlZmluZSBWRVJTSU9OICIyNS4xIgp8ICNkZWZpbmUgTUFJTF9VU0Vf UE9QIDEKfCAjZGVmaW5lIEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfVFpTRVQgMQp8ICNk ZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKfCAjZGVmaW5l IEhBVkVfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9G RE9QRU5ESVIgMQp8ICNkZWZpbmUgSEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMg MQp8ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwg I2RlZmluZSBIQVZFX01LT1NURU1QIDEKfCAjZGVmaW5lIEhBVkVfUElQRTIgMQp8ICNkZWZpbmUg SEFWRV9QU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFWRV9T VFJUT0lNQVggMQp8ICNkZWZpbmUgSEFWRV9TVFJUT1VNQVggMQp8ICNkZWZpbmUgSEFWRV9TWU1M SU5LIDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9USU1FR00g MQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FU0FUIDEKfCAj ZGVmaW5lIEhBVkVfRlVUSU1FTlMgMQp8ICNkZWZpbmUgSEFWRV9VVElNRU5TQVQgMQp8ICNkZWZp bmUgSEFWRV9MVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmlu ZSBIQVZFX1NFQ1VSRV9HRVRFTlYgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5l IEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZF X01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5U VFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1RE X0ggMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8 ICNkZWZpbmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2Rl ZmluZSBfX1VTRV9NSU5HV19BTlNJX1NURElPIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NF TUFOVElDUyAxCnwgI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX1VT RV82NF9CSVRfSU5PREUgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCBpbnQKfCBtYWlu ICgpCnwgewp8IAp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6NzkwMzogcmVzdWx0 OiBubwpjb25maWd1cmU6OTA2MTogY2hlY2tpbmcgd2hldGhlciBtYWtlIHN1cHBvcnRzIG5lc3Rl ZCB2YXJpYWJsZXMKY29uZmlndXJlOjkwNzg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo5MTAwOiBj aGVja2luZyB3aGV0aGVyIGxuIC1zIHdvcmtzIGZvciBmaWxlcyBpbiB0aGUgc2FtZSBkaXJlY3Rv cnkKY29uZmlndXJlOjkxMjU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo5MTQyOiBjaGVja2luZyBm b3IgaW5zdGFsbC1pbmZvCmNvbmZpZ3VyZTo5MTYwOiBmb3VuZCAvdXNyL2Jpbi9pbnN0YWxsLWlu Zm8KY29uZmlndXJlOjkxNzM6IHJlc3VsdDogL3Vzci9iaW4vaW5zdGFsbC1pbmZvCmNvbmZpZ3Vy ZTo5MTgzOiBjaGVja2luZyBmb3IgZ3ppcApjb25maWd1cmU6OTIwMTogZm91bmQgL3Vzci9iaW4v Z3ppcApjb25maWd1cmU6OTIxMzogcmVzdWx0OiAvdXNyL2Jpbi9nemlwCmNvbmZpZ3VyZTo5MjI5 OiBjaGVja2luZyBmb3Igc2V0ZmF0dHIKY29uZmlndXJlOjkyNDE6IHJlc3VsdDogeWVzCmNvbmZp Z3VyZTo5Mzk5OiBjaGVja2luZyBmb3IgLXpub2NvbWJyZWxvYwpjb25maWd1cmU6OTQxMjogZ2Nj IC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAtV2wsLXpub2NvbWJyZWxvYyBjb25mdGVzdC5jICA+JjUK Y29uZmlndXJlOjk0MTI6ICQ/ID0gMApjb25maWd1cmU6OTQxMzogcmVzdWx0OiB5ZXMKY29uZmln dXJlOjk0MjU6IGNoZWNraW5nIHdoZXRoZXIgYWRkcmVzc2VzIGFyZSBzYW5pdGl6ZWQKY29uZmln dXJlOjk0NDg6IGdjYyAtYyAtZzMgLU8yICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOjYyOjEx OiBlcnJvcjogZXhwZWN0ZWQgJz0nLCAnLCcsICc7JywgJ2FzbScgb3IgJ19fYXR0cmlidXRlX18n IGJlZm9yZSBzdHJpbmcgY29uc3RhbnQKICAgICBlcnJvciAiQWRkcmVzc2VzIGFyZSBub3Qgc2Fu aXRpemVkLiI7CiAgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CmNvbmZp Z3VyZTo5NDQ4OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29u ZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2RlZmluZSBQ QUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyNS4xIgp8 ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAyNS4xIgp8ICNkZWZpbmUgUEFDS0FH RV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJM ICJodHRwOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgUEFDS0FHRSAi ZW1hY3MiCnwgI2RlZmluZSBWRVJTSU9OICIyNS4xIgp8ICNkZWZpbmUgTUFJTF9VU0VfUE9QIDEK fCAjZGVmaW5lIEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfVFpTRVQgMQp8ICNkZWZpbmUg SEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKfCAjZGVmaW5lIEhBVkVf RkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9GRE9QRU5E SVIgMQp8ICNkZWZpbmUgSEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMgMQp8ICNk ZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwgI2RlZmlu ZSBIQVZFX01LT1NURU1QIDEKfCAjZGVmaW5lIEhBVkVfUElQRTIgMQp8ICNkZWZpbmUgSEFWRV9Q U0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFWRV9TVFJUT0lN QVggMQp8ICNkZWZpbmUgSEFWRV9TVFJUT1VNQVggMQp8ICNkZWZpbmUgSEFWRV9TWU1MSU5LIDEK fCAjZGVmaW5lIEhBVkVfTE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9USU1FR00gMQp8ICNk ZWZpbmUgSEFWRV9GVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FU0FUIDEKfCAjZGVmaW5l IEhBVkVfRlVUSU1FTlMgMQp8ICNkZWZpbmUgSEFWRV9VVElNRU5TQVQgMQp8ICNkZWZpbmUgSEFW RV9MVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZF X1NFQ1VSRV9HRVRFTlYgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVf U1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9S WV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNf SCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8 ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8ICNkZWZp bmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBf X1VTRV9NSU5HV19BTlNJX1NURElPIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElD UyAxCnwgI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX1VTRV82NF9C SVRfSU5PREUgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaWZuZGVmIF9faGFzX2ZlYXR1 cmUKfCAJICAjZGVmaW5lIF9faGFzX2ZlYXR1cmUoZikgMAp8IAkgICNlbmRpZgp8IAkgICNpZiBk ZWZpbmVkIF9fU0FOSVRJWkVfQUREUkVTU19fIHx8IF9faGFzX2ZlYXR1cmUgKGFkZHJlc3Nfc2Fu aXRpemVyKQp8IAkgICNlbHNlCnwgCSAgIGVycm9yICJBZGRyZXNzZXMgYXJlIG5vdCBzYW5pdGl6 ZWQuIjsKfCAJICAjZW5kaWYKfCAKfCBpbnQKfCBtYWluICgpCnwgewp8IAp8ICAgOwp8ICAgcmV0 dXJuIDA7CnwgfQpjb25maWd1cmU6OTQ1NTogcmVzdWx0OiBubwpjb25maWd1cmU6OTYzNTogY2hl Y2tpbmcgZm9yIGxpYnJhcnkgY29udGFpbmluZyBzcXJ0CmNvbmZpZ3VyZTo5NjY2OiBnY2MgLW8g Y29uZnRlc3QgLWczIC1PMiAgICAgY29uZnRlc3QuYyAgPiY1IApjb25mdGVzdC5jOjY0OjY6IHdh cm5pbmc6IGNvbmZsaWN0aW5nIHR5cGVzIGZvciBidWlsdC1pbiBmdW5jdGlvbiAnc3FydCcKIGNo YXIgc3FydCAoKTsKICAgICAgXn5+fgovdG1wL2NjSVFzTXNnLm86IEluIGZ1bmN0aW9uIGBtYWlu JzoKL2hvbWUvZGVlY2gvRG93bmxvYWRzL2VtYWNzLTI1LjEvY29uZnRlc3QuYzo2ODogdW5kZWZp bmVkIHJlZmVyZW5jZSB0byBgc3FydCcKY29sbGVjdDI6IGVycm9yOiBsZCByZXR1cm5lZCAxIGV4 aXQgc3RhdHVzCmNvbmZpZ3VyZTo5NjY2OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3Jh bSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1h Y3MiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9W RVJTSU9OICIyNS4xIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAyNS4xIgp8 ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVm aW5lIFBBQ0tBR0VfVVJMICJodHRwOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNk ZWZpbmUgUEFDS0FHRSAiZW1hY3MiCnwgI2RlZmluZSBWRVJTSU9OICIyNS4xIgp8ICNkZWZpbmUg TUFJTF9VU0VfUE9QIDEKfCAjZGVmaW5lIEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfVFpT RVQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEK fCAjZGVmaW5lIEhBVkVfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZp bmUgSEFWRV9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgSEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5lIEhB VkVfRlNZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9M U1RBVCAxCnwgI2RlZmluZSBIQVZFX01LT1NURU1QIDEKfCAjZGVmaW5lIEhBVkVfUElQRTIgMQp8 ICNkZWZpbmUgSEFWRV9QU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZp bmUgSEFWRV9TVFJUT0lNQVggMQp8ICNkZWZpbmUgSEFWRV9TVFJUT1VNQVggMQp8ICNkZWZpbmUg SEFWRV9TWU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUgSEFW RV9USU1FR00gMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1F U0FUIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FTlMgMQp8ICNkZWZpbmUgSEFWRV9VVElNRU5TQVQg MQp8ICNkZWZpbmUgSEFWRV9MVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAx CnwgI2RlZmluZSBIQVZFX1NFQ1VSRV9HRVRFTlYgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEK fCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2Rl ZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5l IEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhB VkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgX0FMTF9T T1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJD RSAxCnwgI2RlZmluZSBfX1VTRV9NSU5HV19BTlNJX1NURElPIDEKfCAjZGVmaW5lIF9QT1NJWF9Q VEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCnwgI2RlZmluZSBf REFSV0lOX1VTRV82NF9CSVRfSU5PREUgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAv KiBPdmVycmlkZSBhbnkgR0NDIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4K fCAgICBVc2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2Yg YSBHQ0MKfCAgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQg c3RpbGwgYXBwbHkuICAqLwp8ICNpZmRlZiBfX2NwbHVzcGx1cwp8IGV4dGVybiAiQyIKfCAjZW5k aWYKfCBjaGFyIHNxcnQgKCk7CnwgaW50CnwgbWFpbiAoKQp8IHsKfCByZXR1cm4gc3FydCAoKTsK fCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjk2NjY6IGdjYyAtbyBjb25mdGVzdCAt ZzMgLU8yICAgICBjb25mdGVzdC5jIC1sbSAgID4mNSAKY29uZnRlc3QuYzo2NDo2OiB3YXJuaW5n OiBjb25mbGljdGluZyB0eXBlcyBmb3IgYnVpbHQtaW4gZnVuY3Rpb24gJ3NxcnQnCiBjaGFyIHNx cnQgKCk7CiAgICAgIF5+fn4KY29uZmlndXJlOjk2NjY6ICQ/ID0gMApjb25maWd1cmU6OTY4Mzog cmVzdWx0OiAtbG0KY29uZmlndXJlOjk3OTQ6IGNoZWNraW5nIGZvciBwa2ctY29uZmlnCmNvbmZp Z3VyZTo5ODEyOiBmb3VuZCAvdXNyL2Jpbi9wa2ctY29uZmlnCmNvbmZpZ3VyZTo5ODI0OiByZXN1 bHQ6IC91c3IvYmluL3BrZy1jb25maWcKY29uZmlndXJlOjk4NDk6IGNoZWNraW5nIHBrZy1jb25m aWcgaXMgYXQgbGVhc3QgdmVyc2lvbiAwLjkuMApjb25maWd1cmU6OTg1MjogcmVzdWx0OiB5ZXMK Y29uZmlndXJlOjk4Njk6IGNoZWNraW5nIGZvciBtYWNoaW5lL3NvdW5kY2FyZC5oCmNvbmZpZ3Vy ZTo5ODY5OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOjY1OjMx OiBmYXRhbCBlcnJvcjogbWFjaGluZS9zb3VuZGNhcmQuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVj dG9yeQogI2luY2x1ZGUgPG1hY2hpbmUvc291bmRjYXJkLmg+CiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBeCmNvbXBpbGF0aW9uIHRlcm1pbmF0ZWQuCmNvbmZpZ3VyZTo5ODY5OiAkPyA9 IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNk ZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUg ImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyNS4xIgp8ICNkZWZpbmUgUEFDS0FH RV9TVFJJTkcgIkdOVSBFbWFjcyAyNS4xIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1 Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJodHRwOi8vd3d3Lmdu dS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgUEFDS0FHRSAiZW1hY3MiCnwgI2RlZmlu ZSBWRVJTSU9OICIyNS4xIgp8ICNkZWZpbmUgTUFJTF9VU0VfUE9QIDEKfCAjZGVmaW5lIEhBVkVf UFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfVFpTRVQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0QgMQp8 ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKfCAjZGVmaW5lIEhBVkVfRkFDQ0VTU0FUIDEKfCAj ZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9GRE9QRU5ESVIgMQp8ICNkZWZpbmUg SEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRU SU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwgI2RlZmluZSBIQVZFX01LT1NURU1Q IDEKfCAjZGVmaW5lIEhBVkVfUElQRTIgMQp8ICNkZWZpbmUgSEFWRV9QU0VMRUNUIDEKfCAjZGVm aW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFWRV9TVFJUT0lNQVggMQp8ICNkZWZpbmUg SEFWRV9TVFJUT1VNQVggMQp8ICNkZWZpbmUgSEFWRV9TWU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVf TE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9USU1FR00gMQp8ICNkZWZpbmUgSEFWRV9GVVRJ TUVTIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FU0FUIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FTlMg MQp8ICNkZWZpbmUgSEFWRV9VVElNRU5TQVQgMQp8ICNkZWZpbmUgSEFWRV9MVVRJTUVTIDEKfCAj ZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NFQ1VSRV9HRVRFTlYg MQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5l IEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBI QVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgX19FWFRF TlNJT05TX18gMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9DX1NP VVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBfX1VTRV9NSU5HV19BTlNJ X1NURElPIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBf VEFOREVNX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX1VTRV82NF9CSVRfSU5PREUgMQp8ICNk ZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwg CnwgICAgICNpZmRlZiBfX01JTkdXMzJfXwp8ICAgICAjZGVmaW5lIFdJTjMyX0xFQU5fQU5EX01F QU4KfCAgICAgI2luY2x1ZGUgPHdpbmRvd3MuaD4KfCAgICAgI2VuZGlmCnwgCnwgCnwgI2luY2x1 ZGUgPG1hY2hpbmUvc291bmRjYXJkLmg+CmNvbmZpZ3VyZTo5ODY5OiByZXN1bHQ6IG5vCmNvbmZp Z3VyZTo5ODY5OiBjaGVja2luZyBmb3Igc3lzL3NvdW5kY2FyZC5oCmNvbmZpZ3VyZTo5ODY5OiBn Y2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6OTg2OTogJD8gPSAwCmNv bmZpZ3VyZTo5ODY5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6OTg2OTogY2hlY2tpbmcgZm9yIHNv dW5kY2FyZC5oCmNvbmZpZ3VyZTo5ODY5OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4m NQpjb25mdGVzdC5jOjY2OjIzOiBmYXRhbCBlcnJvcjogc291bmRjYXJkLmg6IE5vIHN1Y2ggZmls ZSBvciBkaXJlY3RvcnkKICNpbmNsdWRlIDxzb3VuZGNhcmQuaD4KICAgICAgICAgICAgICAgICAg ICAgICBeCmNvbXBpbGF0aW9uIHRlcm1pbmF0ZWQuCmNvbmZpZ3VyZTo5ODY5OiAkPyA9IDEKY29u ZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUg UEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNz Igp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyNS4xIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJ TkcgIkdOVSBFbWFjcyAyNS4xIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUt ZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJodHRwOi8vd3d3LmdudS5vcmcv c29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgUEFDS0FHRSAiZW1hY3MiCnwgI2RlZmluZSBWRVJT SU9OICIyNS4xIgp8ICNkZWZpbmUgTUFJTF9VU0VfUE9QIDEKfCAjZGVmaW5lIEhBVkVfUFVURU5W IDEKfCAjZGVmaW5lIEhBVkVfVFpTRVQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZp bmUgSEFWRV9SRUFETElOS0FUIDEKfCAjZGVmaW5lIEhBVkVfRkFDQ0VTU0FUIDEKfCAjZGVmaW5l IEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgSEFWRV9G U1RBVEFUIDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZE QVkgMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwgI2RlZmluZSBIQVZFX01LT1NURU1QIDEKfCAj ZGVmaW5lIEhBVkVfUElQRTIgMQp8ICNkZWZpbmUgSEFWRV9QU0VMRUNUIDEKfCAjZGVmaW5lIEhB VkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFWRV9TVFJUT0lNQVggMQp8ICNkZWZpbmUgSEFWRV9T VFJUT1VNQVggMQp8ICNkZWZpbmUgSEFWRV9TWU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxU SU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9USU1FR00gMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVTIDEK fCAjZGVmaW5lIEhBVkVfRlVUSU1FU0FUIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FTlMgMQp8ICNk ZWZpbmUgSEFWRV9VVElNRU5TQVQgMQp8ICNkZWZpbmUgSEFWRV9MVVRJTUVTIDEKfCAjZGVmaW5l IEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NFQ1VSRV9HRVRFTlYgMQp8ICNk ZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUg SEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVf U1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NU RElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgX19FWFRFTlNJT05T X18gMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9DX1NPVVJDRSAx CnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBfX1VTRV9NSU5HV19BTlNJX1NURElP IDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBfVEFOREVN X1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX1VTRV82NF9CSVRfSU5PREUgMQp8ICNkZWZpbmUg U1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAjZGVmaW5lIEhBVkVfU1lTX1NPVU5EQ0FSRF9IIDEK fCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgCnwgICAgICNpZmRlZiBfX01JTkdXMzJfXwp8ICAg ICAjZGVmaW5lIFdJTjMyX0xFQU5fQU5EX01FQU4KfCAgICAgI2luY2x1ZGUgPHdpbmRvd3MuaD4K fCAgICAgI2VuZGlmCnwgCnwgCnwgI2luY2x1ZGUgPHNvdW5kY2FyZC5oPgpjb25maWd1cmU6OTg2 OTogcmVzdWx0OiBubwpjb25maWd1cmU6OTg2OTogY2hlY2tpbmcgZm9yIG1tc3lzdGVtLmgKY29u ZmlndXJlOjk4Njk6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6 NjY6MjI6IGZhdGFsIGVycm9yOiBtbXN5c3RlbS5oOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5 CiAjaW5jbHVkZSA8bW1zeXN0ZW0uaD4KICAgICAgICAgICAgICAgICAgICAgIF4KY29tcGlsYXRp b24gdGVybWluYXRlZC4KY29uZmlndXJlOjk4Njk6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBw cm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdO VSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNL QUdFX1ZFUlNJT04gIjI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDI1 LjEiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8 ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHA6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9lbWFjcy8i CnwgI2RlZmluZSBQQUNLQUdFICJlbWFjcyIKfCAjZGVmaW5lIFZFUlNJT04gIjI1LjEiCnwgI2Rl ZmluZSBNQUlMX1VTRV9QT1AgMQp8ICNkZWZpbmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZpbmUgSEFW RV9UWlNFVCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5L QVQgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwg I2RlZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZp bmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBI QVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfTUtPU1RFTVAgMQp8ICNkZWZpbmUgSEFWRV9QSVBF MiAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwg I2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX1NUUlRPVU1BWCAxCnwgI2Rl ZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmlu ZSBIQVZFX1RJTUVHTSAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9G VVRJTUVTQVQgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVOUyAxCnwgI2RlZmluZSBIQVZFX1VUSU1F TlNBVCAxCnwgI2RlZmluZSBIQVZFX0xVVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVT SVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VDVVJFX0dFVEVOViAxCnwgI2RlZmluZSBTVERDX0hFQURF UlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFU X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEK fCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNk ZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZp bmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBf QUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVf U09VUkNFIDEKfCAjZGVmaW5lIF9fVVNFX01JTkdXX0FOU0lfU1RESU8gMQp8ICNkZWZpbmUgX1BP U0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVm aW5lIF9EQVJXSU5fVVNFXzY0X0JJVF9JTk9ERSAxCnwgI2RlZmluZSBTWVNURU1fVFlQRSAiZ251 L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJEX0ggMQp8IC8qIGVuZCBjb25mZGVm cy5oLiAgKi8KfCAKfCAgICAgI2lmZGVmIF9fTUlOR1czMl9fCnwgICAgICNkZWZpbmUgV0lOMzJf TEVBTl9BTkRfTUVBTgp8ICAgICAjaW5jbHVkZSA8d2luZG93cy5oPgp8ICAgICAjZW5kaWYKfCAK fCAKfCAjaW5jbHVkZSA8bW1zeXN0ZW0uaD4KY29uZmlndXJlOjk4Njk6IHJlc3VsdDogbm8KY29u ZmlndXJlOjk4OTA6IGNoZWNraW5nIGZvciBfb3NzX2lvY3RsIGluIC1sb3NzYXVkaW8KY29uZmln dXJlOjk5MTU6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICBjb25mdGVzdC5jIC1sb3NzYXVk aW8gICA+JjUgCi91c3IvYmluL2xkOiBjYW5ub3QgZmluZCAtbG9zc2F1ZGlvCmNvbGxlY3QyOiBl cnJvcjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpjb25maWd1cmU6OTkxNTogJD8gPSAxCmNv bmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5l IFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJlbWFj cyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMjUuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RS SU5HICJHTlUgRW1hY3MgMjUuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ251 LWVtYWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0cDovL3d3dy5nbnUub3Jn L3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIFBBQ0tBR0UgImVtYWNzIgp8ICNkZWZpbmUgVkVS U0lPTiAiMjUuMSIKfCAjZGVmaW5lIE1BSUxfVVNFX1BPUCAxCnwgI2RlZmluZSBIQVZFX1BVVEVO ViAxCnwgI2RlZmluZSBIQVZFX1RaU0VUIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVm aW5lIEhBVkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmlu ZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVf RlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9G REFZIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9NS09TVEVNUCAxCnwg I2RlZmluZSBIQVZFX1BJUEUyIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2RlZmluZSBI QVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVf U1RSVE9VTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FM VElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfVElNRUdNIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FUyAx CnwgI2RlZmluZSBIQVZFX0ZVVElNRVNBVCAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRU5TIDEKfCAj ZGVmaW5lIEhBVkVfVVRJTUVOU0FUIDEKfCAjZGVmaW5lIEhBVkVfTFVUSU1FUyAxCnwgI2RlZmlu ZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRUNVUkVfR0VURU5WIDEKfCAj ZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5l IEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZF X1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9T VERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9O U19fIDEKfCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0Ug MQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19VU0VfTUlOR1dfQU5TSV9TVERJ TyAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX1RBTkRF TV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9VU0VfNjRfQklUX0lOT0RFIDEKfCAjZGVmaW5l IFNZU1RFTV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAx CnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8IAp8IC8qIE92ZXJyaWRlIGFueSBHQ0MgaW50ZXJu YWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLgp8ICAgIFVzZSBjaGFyIGJlY2F1c2UgaW50 IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIEdDQwp8ICAgIGJ1aWx0aW4gYW5kIHRo ZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCnwgI2lmZGVm IF9fY3BsdXNwbHVzCnwgZXh0ZXJuICJDIgp8ICNlbmRpZgp8IGNoYXIgX29zc19pb2N0bCAoKTsK fCBpbnQKfCBtYWluICgpCnwgewp8IHJldHVybiBfb3NzX2lvY3RsICgpOwp8ICAgOwp8ICAgcmV0 dXJuIDA7CnwgfQpjb25maWd1cmU6OTkyNDogcmVzdWx0OiBubwpjb25maWd1cmU6OTk0MjogY2hl Y2tpbmcgZm9yIEFMU0EKY29uZmlndXJlOjk5NDk6ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0tcHJp bnQtZXJyb3JzICIkQUxTQV9NT0RVTEVTIgpjb25maWd1cmU6OTk1MjogJD8gPSAwCmNvbmZpZ3Vy ZTo5OTY2OiAkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyAiJEFMU0FfTU9EVUxF UyIKY29uZmlndXJlOjk5Njk6ICQ/ID0gMApjb25maWd1cmU6MTAwMDc6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZToxMDAyODogZ2NjIC1jIC1JL3Vzci9pbmNsdWRlL2Fsc2EgLWczIC1PMiAgICBjb25m dGVzdC5jID4mNQpjb25maWd1cmU6MTAwMjg6ICQ/ID0gMApjb25maWd1cmU6MTAwODk6IGNoZWNr aW5nIGZvciBzeXMvc3lzdGVtaW5mby5oCmNvbmZpZ3VyZToxMDA4OTogZ2NjIC1jIC1nMyAtTzIg ICAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzo5NToyODogZmF0YWwgZXJyb3I6IHN5cy9zeXN0 ZW1pbmZvLmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKICNpbmNsdWRlIDxzeXMvc3lzdGVt aW5mby5oPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgXgpjb21waWxhdGlvbiB0ZXJtaW5h dGVkLgpjb25maWd1cmU6MTAwODk6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdh czoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIK fCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJ T04gIjI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDI1LjEiCnwgI2Rl ZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUg UEFDS0FHRV9VUkwgImh0dHA6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmlu ZSBQQUNLQUdFICJlbWFjcyIKfCAjZGVmaW5lIFZFUlNJT04gIjI1LjEiCnwgI2RlZmluZSBNQUlM X1VTRV9QT1AgMQp8ICNkZWZpbmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9UWlNFVCAx CnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LQVQgMQp8ICNk ZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBI QVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9G U1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX0xTVEFU IDEKfCAjZGVmaW5lIEhBVkVfTUtPU1RFTVAgMQp8ICNkZWZpbmUgSEFWRV9QSVBFMiAxCnwgI2Rl ZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBI QVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX1NUUlRPVU1BWCAxCnwgI2RlZmluZSBIQVZF X1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX1RJ TUVHTSAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVTQVQg MQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVOUyAxCnwgI2RlZmluZSBIQVZFX1VUSU1FTlNBVCAxCnwg I2RlZmluZSBIQVZFX0xVVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAj ZGVmaW5lIEhBVkVfU0VDVVJFX0dFVEVOViAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNk ZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5l IEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFW RV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9V TklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBfQUxMX1NPVVJD RSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEK fCAjZGVmaW5lIF9fVVNFX01JTkdXX0FOU0lfU1RESU8gMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJF QURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJX SU5fVVNFXzY0X0JJVF9JTk9ERSAxCnwgI2RlZmluZSBTWVNURU1fVFlQRSAiZ251L2xpbnV4Igp8 ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJEX0ggMQp8ICNkZWZpbmUgSEFWRV9BTFNBIDEKfCAj ZGVmaW5lIEhBVkVfU09VTkQgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8 c3RkaW8uaD4KfCAjaWZkZWYgSEFWRV9TWVNfVFlQRVNfSAp8ICMgaW5jbHVkZSA8c3lzL3R5cGVz Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1lTX1NUQVRfSAp8ICMgaW5jbHVkZSA8c3lzL3N0 YXQuaD4KfCAjZW5kaWYKfCAjaWZkZWYgU1REQ19IRUFERVJTCnwgIyBpbmNsdWRlIDxzdGRsaWIu aD4KfCAjIGluY2x1ZGUgPHN0ZGRlZi5oPgp8ICNlbHNlCnwgIyBpZmRlZiBIQVZFX1NURExJQl9I CnwgIyAgaW5jbHVkZSA8c3RkbGliLmg+CnwgIyBlbmRpZgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZF X1NUUklOR19ICnwgIyBpZiAhZGVmaW5lZCBTVERDX0hFQURFUlMgJiYgZGVmaW5lZCBIQVZFX01F TU9SWV9ICnwgIyAgaW5jbHVkZSA8bWVtb3J5Lmg+CnwgIyBlbmRpZgp8ICMgaW5jbHVkZSA8c3Ry aW5nLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RSSU5HU19ICnwgIyBpbmNsdWRlIDxzdHJp bmdzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfSU5UVFlQRVNfSAp8ICMgaW5jbHVkZSA8aW50 dHlwZXMuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVERJTlRfSAp8ICMgaW5jbHVkZSA8c3Rk aW50Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfVU5JU1REX0gKfCAjIGluY2x1ZGUgPHVuaXN0 ZC5oPgp8ICNlbmRpZgp8IAp8ICNpbmNsdWRlIDxzeXMvc3lzdGVtaW5mby5oPgpjb25maWd1cmU6 MTAwODk6IHJlc3VsdDogbm8KY29uZmlndXJlOjEwMDg5OiBjaGVja2luZyBmb3Igc3lzL3N5c2lu Zm8uaApjb25maWd1cmU6MTAwODk6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNv bmZpZ3VyZToxMDA4OTogJD8gPSAwCmNvbmZpZ3VyZToxMDA4OTogcmVzdWx0OiB5ZXMKY29uZmln dXJlOjEwMDg5OiBjaGVja2luZyBmb3IgY29mZi5oCmNvbmZpZ3VyZToxMDA4OTogZ2NjIC1jIC1n MyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzo5NjoxODogZmF0YWwgZXJyb3I6IGNv ZmYuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQogI2luY2x1ZGUgPGNvZmYuaD4KICAgICAg ICAgICAgICAgICAgXgpjb21waWxhdGlvbiB0ZXJtaW5hdGVkLgpjb25maWd1cmU6MTAwODk6ICQ/ ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwg I2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFN RSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjI1LjEiCnwgI2RlZmluZSBQQUNL QUdFX1NUUklORyAiR05VIEVtYWNzIDI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAi YnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHA6Ly93d3cu Z251Lm9yZy9zb2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmluZSBQQUNLQUdFICJlbWFjcyIKfCAjZGVm aW5lIFZFUlNJT04gIjI1LjEiCnwgI2RlZmluZSBNQUlMX1VTRV9QT1AgMQp8ICNkZWZpbmUgSEFW RV9QVVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9UWlNFVCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAx CnwgI2RlZmluZSBIQVZFX1JFQURMSU5LQVQgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8 ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2RlZmlu ZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dF VFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfTUtPU1RF TVAgMQp8ICNkZWZpbmUgSEFWRV9QSVBFMiAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNk ZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmlu ZSBIQVZFX1NUUlRPVU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFW RV9MT0NBTFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX1RJTUVHTSAxCnwgI2RlZmluZSBIQVZFX0ZV VElNRVMgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVTQVQgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVO UyAxCnwgI2RlZmluZSBIQVZFX1VUSU1FTlNBVCAxCnwgI2RlZmluZSBIQVZFX0xVVElNRVMgMQp8 ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VDVVJFX0dFVEVO ViAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAx CnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwg I2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZp bmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5l IEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VY VEVOU0lPTlNfXyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0Nf U09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9fVVNFX01JTkdXX0FO U0lfU1RESU8gMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5l IF9UQU5ERU1fU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fVVNFXzY0X0JJVF9JTk9ERSAxCnwg I2RlZmluZSBTWVNURU1fVFlQRSAiZ251L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRD QVJEX0ggMQp8ICNkZWZpbmUgSEFWRV9BTFNBIDEKfCAjZGVmaW5lIEhBVkVfU09VTkQgMQp8ICNk ZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2lu Y2x1ZGUgPHN0ZGlvLmg+CnwgI2lmZGVmIEhBVkVfU1lTX1RZUEVTX0gKfCAjIGluY2x1ZGUgPHN5 cy90eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NZU19TVEFUX0gKfCAjIGluY2x1ZGUg PHN5cy9zdGF0Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIFNURENfSEVBREVSUwp8ICMgaW5jbHVkZSA8 c3RkbGliLmg+CnwgIyBpbmNsdWRlIDxzdGRkZWYuaD4KfCAjZWxzZQp8ICMgaWZkZWYgSEFWRV9T VERMSUJfSAp8ICMgIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgZW5kaWYKfCAjZW5kaWYKfCAjaWZk ZWYgSEFWRV9TVFJJTkdfSAp8ICMgaWYgIWRlZmluZWQgU1REQ19IRUFERVJTICYmIGRlZmluZWQg SEFWRV9NRU1PUllfSAp8ICMgIGluY2x1ZGUgPG1lbW9yeS5oPgp8ICMgZW5kaWYKfCAjIGluY2x1 ZGUgPHN0cmluZy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR1NfSAp8ICMgaW5jbHVk ZSA8c3RyaW5ncy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX0lOVFRZUEVTX0gKfCAjIGluY2x1 ZGUgPGludHR5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RESU5UX0gKfCAjIGluY2x1 ZGUgPHN0ZGludC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1VOSVNURF9ICnwgIyBpbmNsdWRl IDx1bmlzdGQuaD4KfCAjZW5kaWYKfCAKfCAjaW5jbHVkZSA8Y29mZi5oPgpjb25maWd1cmU6MTAw ODk6IHJlc3VsdDogbm8KY29uZmlndXJlOjEwMDg5OiBjaGVja2luZyBmb3IgcHR5LmgKY29uZmln dXJlOjEwMDg5OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MTAw ODk6ICQ/ID0gMApjb25maWd1cmU6MTAwODk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMDA4OTog Y2hlY2tpbmcgZm9yIHN5cy9yZXNvdXJjZS5oCmNvbmZpZ3VyZToxMDA4OTogZ2NjIC1jIC1nMyAt TzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjEwMDg5OiAkPyA9IDAKY29uZmlndXJlOjEw MDg5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTAwODk6IGNoZWNraW5nIGZvciBzeXMvdXRzbmFt ZS5oCmNvbmZpZ3VyZToxMDA4OTogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29u ZmlndXJlOjEwMDg5OiAkPyA9IDAKY29uZmlndXJlOjEwMDg5OiByZXN1bHQ6IHllcwpjb25maWd1 cmU6MTAwODk6IGNoZWNraW5nIGZvciBwd2QuaApjb25maWd1cmU6MTAwODk6IGdjYyAtYyAtZzMg LU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxMDA4OTogJD8gPSAwCmNvbmZpZ3VyZTox MDA4OTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEwMDg5OiBjaGVja2luZyBmb3IgdXRtcC5oCmNv bmZpZ3VyZToxMDA4OTogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJl OjEwMDg5OiAkPyA9IDAKY29uZmlndXJlOjEwMDg5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTAw ODk6IGNoZWNraW5nIGZvciB1dGlsLmgKY29uZmlndXJlOjEwMDg5OiBnY2MgLWMgLWczIC1PMiAg ICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOjEwMToxODogZmF0YWwgZXJyb3I6IHV0aWwuaDog Tm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQogI2luY2x1ZGUgPHV0aWwuaD4KICAgICAgICAgICAg ICAgICAgXgpjb21waWxhdGlvbiB0ZXJtaW5hdGVkLgpjb25maWd1cmU6MTAwODk6ICQ/ID0gMQpj b25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmlu ZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1h Y3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX1NU UklORyAiR05VIEVtYWNzIDI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdu dS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHA6Ly93d3cuZ251Lm9y Zy9zb2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmluZSBQQUNLQUdFICJlbWFjcyIKfCAjZGVmaW5lIFZF UlNJT04gIjI1LjEiCnwgI2RlZmluZSBNQUlMX1VTRV9QT1AgMQp8ICNkZWZpbmUgSEFWRV9QVVRF TlYgMQp8ICNkZWZpbmUgSEFWRV9UWlNFVCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2Rl ZmluZSBIQVZFX1JFQURMSU5LQVQgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZp bmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZF X0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVP RkRBWSAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfTUtPU1RFTVAgMQp8 ICNkZWZpbmUgSEFWRV9QSVBFMiAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUg SEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZF X1NUUlRPVU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9MT0NB TFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX1RJTUVHTSAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVMg MQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVTQVQgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVOUyAxCnwg I2RlZmluZSBIQVZFX1VUSU1FTlNBVCAxCnwgI2RlZmluZSBIQVZFX0xVVElNRVMgMQp8ICNkZWZp bmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VDVVJFX0dFVEVOViAxCnwg I2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmlu ZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFW RV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVf U1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lP TlNfXyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNF IDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9fVVNFX01JTkdXX0FOU0lfU1RE SU8gMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9UQU5E RU1fU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fVVNFXzY0X0JJVF9JTk9ERSAxCnwgI2RlZmlu ZSBTWVNURU1fVFlQRSAiZ251L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJEX0gg MQp8ICNkZWZpbmUgSEFWRV9BTFNBIDEKfCAjZGVmaW5lIEhBVkVfU09VTkQgMQp8ICNkZWZpbmUg SEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZp bmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgLyogZW5kIGNvbmZkZWZz LmguICAqLwp8ICNpbmNsdWRlIDxzdGRpby5oPgp8ICNpZmRlZiBIQVZFX1NZU19UWVBFU19ICnwg IyBpbmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TWVNfU1RBVF9I CnwgIyBpbmNsdWRlIDxzeXMvc3RhdC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBTVERDX0hFQURFUlMK fCAjIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgaW5jbHVkZSA8c3RkZGVmLmg+CnwgI2Vsc2UKfCAj IGlmZGVmIEhBVkVfU1RETElCX0gKfCAjICBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjIGVuZGlmCnwg I2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RSSU5HX0gKfCAjIGlmICFkZWZpbmVkIFNURENfSEVBREVS UyAmJiBkZWZpbmVkIEhBVkVfTUVNT1JZX0gKfCAjICBpbmNsdWRlIDxtZW1vcnkuaD4KfCAjIGVu ZGlmCnwgIyBpbmNsdWRlIDxzdHJpbmcuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdT X0gKfCAjIGluY2x1ZGUgPHN0cmluZ3MuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9JTlRUWVBF U19ICnwgIyBpbmNsdWRlIDxpbnR0eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NURElO VF9ICnwgIyBpbmNsdWRlIDxzdGRpbnQuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9VTklTVERf SAp8ICMgaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgCnwgI2luY2x1ZGUgPHV0aWwuaD4K Y29uZmlndXJlOjEwMDg5OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToxMDA4OTogY2hlY2tpbmcgZm9y IHN5cy9zb2NrZXQuaApjb25maWd1cmU6MTAwODk6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0 LmMgPiY1CmNvbmZpZ3VyZToxMDA4OTogJD8gPSAwCmNvbmZpZ3VyZToxMDA4OTogcmVzdWx0OiB5 ZXMKY29uZmlndXJlOjEwMDg5OiBjaGVja2luZyBmb3Igc3RkbGliLmgKY29uZmlndXJlOjEwMDg5 OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTAwODk6IGNoZWNraW5nIGZvciB1bmlzdGQuaApjb25m aWd1cmU6MTAwODk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMDA4OTogY2hlY2tpbmcgZm9yIHN5 cy9wYXJhbS5oCmNvbmZpZ3VyZToxMDA4OTogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+ JjUKY29uZmlndXJlOjEwMDg5OiAkPyA9IDAKY29uZmlndXJlOjEwMDg5OiByZXN1bHQ6IHllcwpj b25maWd1cmU6MTAwODk6IGNoZWNraW5nIGZvciBwdGhyZWFkLmgKY29uZmlndXJlOjEwMDg5OiBn Y2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MTAwODk6ICQ/ID0gMApj b25maWd1cmU6MTAwODk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMDA4OTogY2hlY2tpbmcgZm9y IG1hbGxvYy9tYWxsb2MuaApjb25maWd1cmU6MTAwODk6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0 ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6MTA2OjI3OiBmYXRhbCBlcnJvcjogbWFsbG9jL21hbGxvYy5o OiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CiAjaW5jbHVkZSA8bWFsbG9jL21hbGxvYy5oPgog ICAgICAgICAgICAgICAgICAgICAgICAgICBeCmNvbXBpbGF0aW9uIHRlcm1pbmF0ZWQuCmNvbmZp Z3VyZToxMDA4OTogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNv bmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8ICNkZWZpbmUg UEFDS0FHRV9UQVJOQU1FICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMjUuMSIK fCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1hY3MgMjUuMSIKfCAjZGVmaW5lIFBBQ0tB R0VfQlVHUkVQT1JUICJidWctZ251LWVtYWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdFX1VS TCAiaHR0cDovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIFBBQ0tBR0Ug ImVtYWNzIgp8ICNkZWZpbmUgVkVSU0lPTiAiMjUuMSIKfCAjZGVmaW5lIE1BSUxfVVNFX1BPUCAx CnwgI2RlZmluZSBIQVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1RaU0VUIDEKfCAjZGVmaW5l IEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZF X0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVO RElSIDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAj ZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZp bmUgSEFWRV9NS09TVEVNUCAxCnwgI2RlZmluZSBIQVZFX1BJUEUyIDEKfCAjZGVmaW5lIEhBVkVf UFNFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9J TUFYIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9VTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAx CnwgI2RlZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfVElNRUdNIDEKfCAj ZGVmaW5lIEhBVkVfRlVUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVNBVCAxCnwgI2RlZmlu ZSBIQVZFX0ZVVElNRU5TIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVOU0FUIDEKfCAjZGVmaW5lIEhB VkVfTFVUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFW RV9TRUNVUkVfR0VURU5WIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZF X1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZF X1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1P UllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVT X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEK fCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAjZGVm aW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUg X19VU0VfTUlOR1dfQU5TSV9TVERJTyAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJ Q1MgMQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9VU0VfNjRf QklUX0lOT0RFIDEKfCAjZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBI QVZFX1NZU19TT1VORENBUkRfSCAxCnwgI2RlZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFW RV9TT1VORCAxCnwgI2RlZmluZSBIQVZFX1NZU19TWVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9Q VFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUF9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0gg MQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEK fCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2lu Y2x1ZGUgPHN0ZGlvLmg+CnwgI2lmZGVmIEhBVkVfU1lTX1RZUEVTX0gKfCAjIGluY2x1ZGUgPHN5 cy90eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NZU19TVEFUX0gKfCAjIGluY2x1ZGUg PHN5cy9zdGF0Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIFNURENfSEVBREVSUwp8ICMgaW5jbHVkZSA8 c3RkbGliLmg+CnwgIyBpbmNsdWRlIDxzdGRkZWYuaD4KfCAjZWxzZQp8ICMgaWZkZWYgSEFWRV9T VERMSUJfSAp8ICMgIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgZW5kaWYKfCAjZW5kaWYKfCAjaWZk ZWYgSEFWRV9TVFJJTkdfSAp8ICMgaWYgIWRlZmluZWQgU1REQ19IRUFERVJTICYmIGRlZmluZWQg SEFWRV9NRU1PUllfSAp8ICMgIGluY2x1ZGUgPG1lbW9yeS5oPgp8ICMgZW5kaWYKfCAjIGluY2x1 ZGUgPHN0cmluZy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR1NfSAp8ICMgaW5jbHVk ZSA8c3RyaW5ncy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX0lOVFRZUEVTX0gKfCAjIGluY2x1 ZGUgPGludHR5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RESU5UX0gKfCAjIGluY2x1 ZGUgPHN0ZGludC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1VOSVNURF9ICnwgIyBpbmNsdWRl IDx1bmlzdGQuaD4KfCAjZW5kaWYKfCAKfCAjaW5jbHVkZSA8bWFsbG9jL21hbGxvYy5oPgpjb25m aWd1cmU6MTAwODk6IHJlc3VsdDogbm8KY29uZmlndXJlOjEwMDg5OiBjaGVja2luZyBmb3IgbWFp bGxvY2suaApjb25maWd1cmU6MTAwODk6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1 CmNvbmZ0ZXN0LmM6MTA2OjIyOiBmYXRhbCBlcnJvcjogbWFpbGxvY2suaDogTm8gc3VjaCBmaWxl IG9yIGRpcmVjdG9yeQogI2luY2x1ZGUgPG1haWxsb2NrLmg+CiAgICAgICAgICAgICAgICAgICAg ICBeCmNvbXBpbGF0aW9uIHRlcm1pbmF0ZWQuCmNvbmZpZ3VyZToxMDA4OTogJD8gPSAxCmNvbmZp Z3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBB Q0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJlbWFjcyIK fCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMjUuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5H ICJHTlUgRW1hY3MgMjUuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ251LWVt YWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0cDovL3d3dy5nbnUub3JnL3Nv ZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIFBBQ0tBR0UgImVtYWNzIgp8ICNkZWZpbmUgVkVSU0lP TiAiMjUuMSIKfCAjZGVmaW5lIE1BSUxfVVNFX1BPUCAxCnwgI2RlZmluZSBIQVZFX1BVVEVOViAx CnwgI2RlZmluZSBIQVZFX1RaU0VUIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5l IEhBVkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBI QVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVfRlNU QVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZ IDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9NS09TVEVNUCAxCnwgI2Rl ZmluZSBIQVZFX1BJUEUyIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2RlZmluZSBIQVZF X1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1RS VE9VTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FMVElN RV9SIDEKfCAjZGVmaW5lIEhBVkVfVElNRUdNIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FUyAxCnwg I2RlZmluZSBIQVZFX0ZVVElNRVNBVCAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRU5TIDEKfCAjZGVm aW5lIEhBVkVfVVRJTUVOU0FUIDEKfCAjZGVmaW5lIEhBVkVfTFVUSU1FUyAxCnwgI2RlZmluZSBI QVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRUNVUkVfR0VURU5WIDEKfCAjZGVm aW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhB VkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NU UklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJ TlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19f IDEKfCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8 ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19VU0VfTUlOR1dfQU5TSV9TVERJTyAx CnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX1RBTkRFTV9T T1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9VU0VfNjRfQklUX0lOT0RFIDEKfCAjZGVmaW5lIFNZ U1RFTV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAxCnwg I2RlZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwgI2RlZmluZSBIQVZF X1NZU19TWVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9QVFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBI QVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NP Q0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9I IDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN0ZGlvLmg+CnwgI2lmZGVm IEhBVkVfU1lTX1RZUEVTX0gKfCAjIGluY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNlbmRpZgp8ICNp ZmRlZiBIQVZFX1NZU19TVEFUX0gKfCAjIGluY2x1ZGUgPHN5cy9zdGF0Lmg+CnwgI2VuZGlmCnwg I2lmZGVmIFNURENfSEVBREVSUwp8ICMgaW5jbHVkZSA8c3RkbGliLmg+CnwgIyBpbmNsdWRlIDxz dGRkZWYuaD4KfCAjZWxzZQp8ICMgaWZkZWYgSEFWRV9TVERMSUJfSAp8ICMgIGluY2x1ZGUgPHN0 ZGxpYi5oPgp8ICMgZW5kaWYKfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdfSAp8ICMgaWYg IWRlZmluZWQgU1REQ19IRUFERVJTICYmIGRlZmluZWQgSEFWRV9NRU1PUllfSAp8ICMgIGluY2x1 ZGUgPG1lbW9yeS5oPgp8ICMgZW5kaWYKfCAjIGluY2x1ZGUgPHN0cmluZy5oPgp8ICNlbmRpZgp8 ICNpZmRlZiBIQVZFX1NUUklOR1NfSAp8ICMgaW5jbHVkZSA8c3RyaW5ncy5oPgp8ICNlbmRpZgp8 ICNpZmRlZiBIQVZFX0lOVFRZUEVTX0gKfCAjIGluY2x1ZGUgPGludHR5cGVzLmg+CnwgI2VuZGlm CnwgI2lmZGVmIEhBVkVfU1RESU5UX0gKfCAjIGluY2x1ZGUgPHN0ZGludC5oPgp8ICNlbmRpZgp8 ICNpZmRlZiBIQVZFX1VOSVNURF9ICnwgIyBpbmNsdWRlIDx1bmlzdGQuaD4KfCAjZW5kaWYKfCAK fCAjaW5jbHVkZSA8bWFpbGxvY2suaD4KY29uZmlndXJlOjEwMDg5OiByZXN1bHQ6IG5vCmNvbmZp Z3VyZToxMDA4OTogY2hlY2tpbmcgZm9yIHN5cy91bi5oCmNvbmZpZ3VyZToxMDA4OTogZ2NjIC1j IC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjEwMDg5OiAkPyA9IDAKY29uZmln dXJlOjEwMDg5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTAwODk6IGNoZWNraW5nIGZvciBkaXJl bnQuaApjb25maWd1cmU6MTAwODk6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNv bmZpZ3VyZToxMDA4OTogJD8gPSAwCmNvbmZpZ3VyZToxMDA4OTogcmVzdWx0OiB5ZXMKY29uZmln dXJlOjEwMDg5OiBjaGVja2luZyBmb3IgZXhlY2luZm8uaApjb25maWd1cmU6MTAwODk6IGdjYyAt YyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxMDA4OTogJD8gPSAwCmNvbmZp Z3VyZToxMDA4OTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEwMDg5OiBjaGVja2luZyBmb3Igc3Rk aW9fZXh0LmgKY29uZmlndXJlOjEwMDg5OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4m NQpjb25maWd1cmU6MTAwODk6ICQ/ID0gMApjb25maWd1cmU6MTAwODk6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZToxMDA4OTogY2hlY2tpbmcgZm9yIGdldG9wdC5oCmNvbmZpZ3VyZToxMDA4OTogZ2Nj IC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjEwMDg5OiAkPyA9IDAKY29u ZmlndXJlOjEwMDg5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTAwODk6IGNoZWNraW5nIGZvciBz eXMvdGltZS5oCmNvbmZpZ3VyZToxMDA4OTogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+ JjUKY29uZmlndXJlOjEwMDg5OiAkPyA9IDAKY29uZmlndXJlOjEwMDg5OiByZXN1bHQ6IHllcwpj b25maWd1cmU6MTAwODk6IGNoZWNraW5nIGZvciB3Y2hhci5oCmNvbmZpZ3VyZToxMDA4OTogZ2Nj IC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjEwMDg5OiAkPyA9IDAKY29u ZmlndXJlOjEwMDg5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTAwODk6IGNoZWNraW5nIGZvciBz dGRpbnQuaApjb25maWd1cmU6MTAwODk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMDA4OTogY2hl Y2tpbmcgZm9yIGludHR5cGVzLmgKY29uZmlndXJlOjEwMDg5OiByZXN1bHQ6IHllcwpjb25maWd1 cmU6MTAwODk6IGNoZWNraW5nIGZvciBzeXMvc2VsZWN0LmgKY29uZmlndXJlOjEwMDg5OiBnY2Mg LWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MTAwODk6ICQ/ID0gMApjb25m aWd1cmU6MTAwODk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMDA4OTogY2hlY2tpbmcgZm9yIHN5 cy9zdGF0LmgKY29uZmlndXJlOjEwMDg5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTAwODk6IGNo ZWNraW5nIGZvciB1dGltZS5oCmNvbmZpZ3VyZToxMDA4OTogZ2NjIC1jIC1nMyAtTzIgICAgY29u ZnRlc3QuYyA+JjUKY29uZmlndXJlOjEwMDg5OiAkPyA9IDAKY29uZmlndXJlOjEwMDg5OiByZXN1 bHQ6IHllcwpjb25maWd1cmU6MTAxMjA6IGNoZWNraW5nIGlmIHBlcnNvbmFsaXR5IExJTlVYMzIg Y2FuIGJlIHNldApjb25maWd1cmU6MTAxMzM6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMg PiY1CmNvbmZpZ3VyZToxMDEzMzogJD8gPSAwCmNvbmZpZ3VyZToxMDEzOTogcmVzdWx0OiB5ZXMK Y29uZmlndXJlOjEwMTUyOiBjaGVja2luZyBpZiBMaW51eCBzeXNpbmZvIG1heSBiZSB1c2VkCmNv bmZpZ3VyZToxMDE2NzogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJl OjEwMTY3OiAkPyA9IDAKY29uZmlndXJlOjEwMTczOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTAx OTA6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxMDE5MDogJD8g PSAwCmNvbmZpZ3VyZToxMDIwMTogY2hlY2tpbmcgZm9yIHRlcm0uaApjb25maWd1cmU6MTAyMDE6 IGdjYyAtRSAgICBjb25mdGVzdC5jCmNvbmZpZ3VyZToxMDIwMTogJD8gPSAwCmNvbmZpZ3VyZTox MDIwMTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEwMjExOiBjaGVja2luZyB3aGV0aGVyIHRpbWUu aCBhbmQgc3lzL3RpbWUuaCBtYXkgYm90aCBiZSBpbmNsdWRlZApjb25maWd1cmU6MTAyMzE6IGdj YyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxMDIzMTogJD8gPSAwCmNv bmZpZ3VyZToxMDIzODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEwMjQ2OiBjaGVja2luZyB3aGV0 aGVyIHN5c19zaWdsaXN0IGlzIGRlY2xhcmVkCmNvbmZpZ3VyZToxMDI0NjogZ2NjIC1jIC1nMyAt TzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjEwMjQ2OiAkPyA9IDAKY29uZmlndXJlOjEw MjQ2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTAyNzU6IGNoZWNraW5nIGZvciBzeXMvd2FpdC5o IHRoYXQgaXMgUE9TSVguMSBjb21wYXRpYmxlCmNvbmZpZ3VyZToxMDMwMTogZ2NjIC1jIC1nMyAt TzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjEwMzAxOiAkPyA9IDAKY29uZmlndXJlOjEw MzA4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTAzMjI6IGNoZWNraW5nIGZvciBuZXQvaWYuaApj b25maWd1cmU6MTAzMjI6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3Vy ZToxMDMyMjogJD8gPSAwCmNvbmZpZ3VyZToxMDMyMjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEw MzM4OiBjaGVja2luZyBmb3IgaWZhZGRycy5oCmNvbmZpZ3VyZToxMDMzODogZ2NjIC1jIC1nMyAt TzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjEwMzM4OiAkPyA9IDAKY29uZmlndXJlOjEw MzM4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTAzNTQ6IGNoZWNraW5nIGZvciBuZXQvaWZfZGwu aApjb25maWd1cmU6MTAzNTQ6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0 ZXN0LmM6MTMwOjIzOiBmYXRhbCBlcnJvcjogbmV0L2lmX2RsLmg6IE5vIHN1Y2ggZmlsZSBvciBk aXJlY3RvcnkKICNpbmNsdWRlIDxuZXQvaWZfZGwuaD4KICAgICAgICAgICAgICAgICAgICAgICBe CmNvbXBpbGF0aW9uIHRlcm1pbmF0ZWQuCmNvbmZpZ3VyZToxMDM1NDogJD8gPSAxCmNvbmZpZ3Vy ZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tB R0VfTkFNRSAiR05VIEVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJlbWFjcyIKfCAj ZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMjUuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJH TlUgRW1hY3MgMjUuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ251LWVtYWNz QGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0cDovL3d3dy5nbnUub3JnL3NvZnR3 YXJlL2VtYWNzLyIKfCAjZGVmaW5lIFBBQ0tBR0UgImVtYWNzIgp8ICNkZWZpbmUgVkVSU0lPTiAi MjUuMSIKfCAjZGVmaW5lIE1BSUxfVVNFX1BPUCAxCnwgI2RlZmluZSBIQVZFX1BVVEVOViAxCnwg I2RlZmluZSBIQVZFX1RaU0VUIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhB VkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZF X0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRB VCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEK fCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9NS09TVEVNUCAxCnwgI2RlZmlu ZSBIQVZFX1BJUEUyIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1JF QURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9V TUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FMVElNRV9S IDEKfCAjZGVmaW5lIEhBVkVfVElNRUdNIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FUyAxCnwgI2Rl ZmluZSBIQVZFX0ZVVElNRVNBVCAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRU5TIDEKfCAjZGVmaW5l IEhBVkVfVVRJTUVOU0FUIDEKfCAjZGVmaW5lIEhBVkVfTFVUSU1FUyAxCnwgI2RlZmluZSBIQVZF X0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRUNVUkVfR0VURU5WIDEKfCAjZGVmaW5l IFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVf U1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklO R1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRf SCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEK fCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8ICNk ZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19VU0VfTUlOR1dfQU5TSV9TVERJTyAxCnwg I2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VS Q0UgMQp8ICNkZWZpbmUgX0RBUldJTl9VU0VfNjRfQklUX0lOT0RFIDEKfCAjZGVmaW5lIFNZU1RF TV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAxCnwgI2Rl ZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwgI2RlZmluZSBIQVZFX1NZ U19TWVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9QVFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19S RVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZF X1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tF VF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAx CnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2Rl ZmluZSBIQVZFX0VYRUNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJT19FWFRfSCAxCnwgI2Rl ZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmlu ZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZF X0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BF UlNPTkFMSVRZX0xJTlVYMzIgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVm aW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAxCnwgI2RlZmlu ZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NZU19TSUdMSVNUIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX05FVF9JRl9IIDEKfCAj ZGVmaW5lIEhBVkVfSUZBRERSU19IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1 ZGUgPHN0ZGlvLmg+CnwgI2lmZGVmIEhBVkVfU1lTX1RZUEVTX0gKfCAjIGluY2x1ZGUgPHN5cy90 eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NZU19TVEFUX0gKfCAjIGluY2x1ZGUgPHN5 cy9zdGF0Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIFNURENfSEVBREVSUwp8ICMgaW5jbHVkZSA8c3Rk bGliLmg+CnwgIyBpbmNsdWRlIDxzdGRkZWYuaD4KfCAjZWxzZQp8ICMgaWZkZWYgSEFWRV9TVERM SUJfSAp8ICMgIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgZW5kaWYKfCAjZW5kaWYKfCAjaWZkZWYg SEFWRV9TVFJJTkdfSAp8ICMgaWYgIWRlZmluZWQgU1REQ19IRUFERVJTICYmIGRlZmluZWQgSEFW RV9NRU1PUllfSAp8ICMgIGluY2x1ZGUgPG1lbW9yeS5oPgp8ICMgZW5kaWYKfCAjIGluY2x1ZGUg PHN0cmluZy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR1NfSAp8ICMgaW5jbHVkZSA8 c3RyaW5ncy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX0lOVFRZUEVTX0gKfCAjIGluY2x1ZGUg PGludHR5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RESU5UX0gKfCAjIGluY2x1ZGUg PHN0ZGludC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1VOSVNURF9ICnwgIyBpbmNsdWRlIDx1 bmlzdGQuaD4KfCAjZW5kaWYKfCAjaWYgSEFWRV9TWVNfU09DS0VUX0gKfCAjaW5jbHVkZSA8c3lz L3NvY2tldC5oPgp8ICNlbmRpZgp8IAp8ICNpbmNsdWRlIDxuZXQvaWZfZGwuaD4KY29uZmlndXJl OjEwMzU0OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToxMDM2OTogY2hlY2tpbmcgZm9yIHN0cnVjdCBp ZnJlcS5pZnJfZmxhZ3MKY29uZmlndXJlOjEwMzY5OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVz dC5jID4mNQpjb25maWd1cmU6MTAzNjk6ICQ/ID0gMApjb25maWd1cmU6MTAzNjk6IHJlc3VsdDog eWVzCmNvbmZpZ3VyZToxMDM4NTogY2hlY2tpbmcgZm9yIHN0cnVjdCBpZnJlcS5pZnJfaHdhZGRy CmNvbmZpZ3VyZToxMDM4NTogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZnRl c3QuYzogSW4gZnVuY3Rpb24gJ21haW4nOgpjb25mdGVzdC5jOjEzODo1OiBlcnJvcjogdXNlZCBz dHJ1Y3QgdHlwZSB2YWx1ZSB3aGVyZSBzY2FsYXIgaXMgcmVxdWlyZWQKIGlmIChhY19hZ2dyLmlm cl9od2FkZHIpCiAgICAgXn5+fn5+fgpjb25maWd1cmU6MTAzODU6ICQ/ID0gMQpjb25maWd1cmU6 IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdF X05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2Rl ZmluZSBQQUNLQUdFX1ZFUlNJT04gIjI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05V IEVtYWNzIDI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0Bn bnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHA6Ly93d3cuZ251Lm9yZy9zb2Z0d2Fy ZS9lbWFjcy8iCnwgI2RlZmluZSBQQUNLQUdFICJlbWFjcyIKfCAjZGVmaW5lIFZFUlNJT04gIjI1 LjEiCnwgI2RlZmluZSBNQUlMX1VTRV9QT1AgMQp8ICNkZWZpbmUgSEFWRV9QVVRFTlYgMQp8ICNk ZWZpbmUgSEFWRV9UWlNFVCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZF X1JFQURMSU5LQVQgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9G Q05UTCAxCnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQg MQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwg I2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfTUtPU1RFTVAgMQp8ICNkZWZpbmUg SEFWRV9QSVBFMiAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9SRUFE TElOSyAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX1NUUlRPVU1B WCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAx CnwgI2RlZmluZSBIQVZFX1RJTUVHTSAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVMgMQp8ICNkZWZp bmUgSEFWRV9GVVRJTUVTQVQgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVOUyAxCnwgI2RlZmluZSBI QVZFX1VUSU1FTlNBVCAxCnwgI2RlZmluZSBIQVZFX0xVVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9H RVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VDVVJFX0dFVEVOViAxCnwgI2RlZmluZSBT VERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NU UklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdT X0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0gg MQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwg I2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVm aW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9fVVNFX01JTkdXX0FOU0lfU1RESU8gMQp8ICNk ZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNF IDEKfCAjZGVmaW5lIF9EQVJXSU5fVVNFXzY0X0JJVF9JTk9ERSAxCnwgI2RlZmluZSBTWVNURU1f VFlQRSAiZ251L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJEX0ggMQp8ICNkZWZp bmUgSEFWRV9BTFNBIDEKfCAjZGVmaW5lIEhBVkVfU09VTkQgMQp8ICNkZWZpbmUgSEFWRV9TWVNf U1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVT T1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9Q V0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRf SCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZp bmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZp bmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUg SEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9J TlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QRVJT T05BTElUWV9MSU5VWDMyIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5GTyAxCnwgI2RlZmlu ZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUgSEFWRV9URVJNX0ggMQp8ICNkZWZpbmUg VElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TWVNfU0lHTElTVCAxCnwg I2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwgI2Rl ZmluZSBIQVZFX0lGQUREUlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxB R1MgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8c3RkaW8uaD4KfCAjaWZk ZWYgSEFWRV9TWVNfVFlQRVNfSAp8ICMgaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgI2VuZGlmCnwg I2lmZGVmIEhBVkVfU1lTX1NUQVRfSAp8ICMgaW5jbHVkZSA8c3lzL3N0YXQuaD4KfCAjZW5kaWYK fCAjaWZkZWYgU1REQ19IRUFERVJTCnwgIyBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjIGluY2x1ZGUg PHN0ZGRlZi5oPgp8ICNlbHNlCnwgIyBpZmRlZiBIQVZFX1NURExJQl9ICnwgIyAgaW5jbHVkZSA8 c3RkbGliLmg+CnwgIyBlbmRpZgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR19ICnwgIyBp ZiAhZGVmaW5lZCBTVERDX0hFQURFUlMgJiYgZGVmaW5lZCBIQVZFX01FTU9SWV9ICnwgIyAgaW5j bHVkZSA8bWVtb3J5Lmg+CnwgIyBlbmRpZgp8ICMgaW5jbHVkZSA8c3RyaW5nLmg+CnwgI2VuZGlm CnwgI2lmZGVmIEhBVkVfU1RSSU5HU19ICnwgIyBpbmNsdWRlIDxzdHJpbmdzLmg+CnwgI2VuZGlm CnwgI2lmZGVmIEhBVkVfSU5UVFlQRVNfSAp8ICMgaW5jbHVkZSA8aW50dHlwZXMuaD4KfCAjZW5k aWYKfCAjaWZkZWYgSEFWRV9TVERJTlRfSAp8ICMgaW5jbHVkZSA8c3RkaW50Lmg+CnwgI2VuZGlm CnwgI2lmZGVmIEhBVkVfVU5JU1REX0gKfCAjIGluY2x1ZGUgPHVuaXN0ZC5oPgp8ICNlbmRpZgp8 ICNpZiBIQVZFX1NZU19TT0NLRVRfSAp8ICNpbmNsdWRlIDxzeXMvc29ja2V0Lmg+CnwgI2VuZGlm CnwgI2lmIEhBVkVfTkVUX0lGX0gKfCAjaW5jbHVkZSA8bmV0L2lmLmg+CnwgI2VuZGlmCnwgCnwg aW50CnwgbWFpbiAoKQp8IHsKfCBzdGF0aWMgc3RydWN0IGlmcmVxIGFjX2FnZ3I7CnwgaWYgKGFj X2FnZ3IuaWZyX2h3YWRkcikKfCByZXR1cm4gMDsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29u ZmlndXJlOjEwMzg1OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6 MTAzODU6ICQ/ID0gMApjb25maWd1cmU6MTAzODU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMDQw MTogY2hlY2tpbmcgZm9yIHN0cnVjdCBpZnJlcS5pZnJfbmV0bWFzawpjb25maWd1cmU6MTA0MDE6 IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6IEluIGZ1bmN0aW9u ICdtYWluJzoKY29uZnRlc3QuYzoxMzk6NTogZXJyb3I6IHVzZWQgc3RydWN0IHR5cGUgdmFsdWUg d2hlcmUgc2NhbGFyIGlzIHJlcXVpcmVkCiBpZiAoYWNfYWdnci5pZnJfbmV0bWFzaykKICAgICBe fn5+fn5+CmNvbmZpZ3VyZToxMDQwMTogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0g d2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNz Igp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVS U0lPTiAiMjUuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1hY3MgMjUuMSIKfCAj ZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ251LWVtYWNzQGdudS5vcmciCnwgI2RlZmlu ZSBQQUNLQUdFX1VSTCAiaHR0cDovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVm aW5lIFBBQ0tBR0UgImVtYWNzIgp8ICNkZWZpbmUgVkVSU0lPTiAiMjUuMSIKfCAjZGVmaW5lIE1B SUxfVVNFX1BPUCAxCnwgI2RlZmluZSBIQVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1RaU0VU IDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTktBVCAxCnwg I2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5l IEhBVkVfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZF X0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfTFNU QVQgMQp8ICNkZWZpbmUgSEFWRV9NS09TVEVNUCAxCnwgI2RlZmluZSBIQVZFX1BJUEUyIDEKfCAj ZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5l IEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9VTUFYIDEKfCAjZGVmaW5lIEhB VkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVf VElNRUdNIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVNB VCAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRU5TIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVOU0FUIDEK fCAjZGVmaW5lIEhBVkVfTFVUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8 ICNkZWZpbmUgSEFWRV9TRUNVUkVfR0VURU5WIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwg I2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwg I2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZp bmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBI QVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZF X1VOSVNURF9IIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIF9BTExfU09V UkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0Ug MQp8ICNkZWZpbmUgX19VU0VfTUlOR1dfQU5TSV9TVERJTyAxCnwgI2RlZmluZSBfUE9TSVhfUFRI UkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RB UldJTl9VU0VfNjRfQklUX0lOT0RFIDEKfCAjZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUvbGludXgi CnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAxCnwgI2RlZmluZSBIQVZFX0FMU0EgMQp8 ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwgI2RlZmluZSBIQVZFX1NZU19TWVNJTkZPX0ggMQp8ICNk ZWZpbmUgSEFWRV9QVFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5l IEhBVkVfVVRNUF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhB VkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX0VYRUNJTkZP X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJT19FWFRfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8 ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAj ZGVmaW5lIEhBVkVfVVRJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BFUlNPTkFMSVRZX0xJTlVYMzIg MQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZU0lORk9f VU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAxCnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJ TUUgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NZU19TSUdMSVNUIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX05FVF9JRl9IIDEKfCAjZGVmaW5lIEhBVkVfSUZBRERS U19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9GTEFHUyAxCnwgI2RlZmluZSBI QVZFX1NUUlVDVF9JRlJFUV9JRlJfSFdBRERSIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwg I2luY2x1ZGUgPHN0ZGlvLmg+CnwgI2lmZGVmIEhBVkVfU1lTX1RZUEVTX0gKfCAjIGluY2x1ZGUg PHN5cy90eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NZU19TVEFUX0gKfCAjIGluY2x1 ZGUgPHN5cy9zdGF0Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIFNURENfSEVBREVSUwp8ICMgaW5jbHVk ZSA8c3RkbGliLmg+CnwgIyBpbmNsdWRlIDxzdGRkZWYuaD4KfCAjZWxzZQp8ICMgaWZkZWYgSEFW RV9TVERMSUJfSAp8ICMgIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgZW5kaWYKfCAjZW5kaWYKfCAj aWZkZWYgSEFWRV9TVFJJTkdfSAp8ICMgaWYgIWRlZmluZWQgU1REQ19IRUFERVJTICYmIGRlZmlu ZWQgSEFWRV9NRU1PUllfSAp8ICMgIGluY2x1ZGUgPG1lbW9yeS5oPgp8ICMgZW5kaWYKfCAjIGlu Y2x1ZGUgPHN0cmluZy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR1NfSAp8ICMgaW5j bHVkZSA8c3RyaW5ncy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX0lOVFRZUEVTX0gKfCAjIGlu Y2x1ZGUgPGludHR5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RESU5UX0gKfCAjIGlu Y2x1ZGUgPHN0ZGludC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1VOSVNURF9ICnwgIyBpbmNs dWRlIDx1bmlzdGQuaD4KfCAjZW5kaWYKfCAjaWYgSEFWRV9TWVNfU09DS0VUX0gKfCAjaW5jbHVk ZSA8c3lzL3NvY2tldC5oPgp8ICNlbmRpZgp8ICNpZiBIQVZFX05FVF9JRl9ICnwgI2luY2x1ZGUg PG5ldC9pZi5oPgp8ICNlbmRpZgp8IAp8IGludAp8IG1haW4gKCkKfCB7Cnwgc3RhdGljIHN0cnVj dCBpZnJlcSBhY19hZ2dyOwp8IGlmIChhY19hZ2dyLmlmcl9uZXRtYXNrKQp8IHJldHVybiAwOwp8 ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MTA0MDE6IGdjYyAtYyAtZzMgLU8yICAg IGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxMDQwMTogJD8gPSAwCmNvbmZpZ3VyZToxMDQwMTog cmVzdWx0OiB5ZXMKY29uZmlndXJlOjEwNDE3OiBjaGVja2luZyBmb3Igc3RydWN0IGlmcmVxLmlm cl9icm9hZGFkZHIKY29uZmlndXJlOjEwNDE3OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5j ID4mNQpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiAnbWFpbic6CmNvbmZ0ZXN0LmM6MTQwOjU6IGVy cm9yOiB1c2VkIHN0cnVjdCB0eXBlIHZhbHVlIHdoZXJlIHNjYWxhciBpcyByZXF1aXJlZAogaWYg KGFjX2FnZ3IuaWZyX2Jyb2FkYWRkcikKICAgICBefn5+fn5+CmNvbmZpZ3VyZToxMDQxNzogJD8g PSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAj ZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1F ICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMjUuMSIKfCAjZGVmaW5lIFBBQ0tB R0VfU1RSSU5HICJHTlUgRW1hY3MgMjUuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJi dWctZ251LWVtYWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0cDovL3d3dy5n bnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIFBBQ0tBR0UgImVtYWNzIgp8ICNkZWZp bmUgVkVSU0lPTiAiMjUuMSIKfCAjZGVmaW5lIE1BSUxfVVNFX1BPUCAxCnwgI2RlZmluZSBIQVZF X1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1RaU0VUIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEK fCAjZGVmaW5lIEhBVkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwg I2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEKfCAjZGVmaW5l IEhBVkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VU VElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9NS09TVEVN UCAxCnwgI2RlZmluZSBIQVZFX1BJUEUyIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2Rl ZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVmaW5l IEhBVkVfU1RSVE9VTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZF X0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfVElNRUdNIDEKfCAjZGVmaW5lIEhBVkVfRlVU SU1FUyAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVNBVCAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRU5T IDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVOU0FUIDEKfCAjZGVmaW5lIEhBVkVfTFVUSU1FUyAxCnwg I2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRUNVUkVfR0VURU5W IDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAj ZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmlu ZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUg SEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIF9fRVhU RU5TSU9OU19fIDEKfCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fQ19T T1VSQ0UgMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19VU0VfTUlOR1dfQU5T SV9TVERJTyAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUg X1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9VU0VfNjRfQklUX0lOT0RFIDEKfCAj ZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENB UkRfSCAxCnwgI2RlZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19TWVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9QVFlfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwg I2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFW RV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVf UFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9ESVJF TlRfSCAxCnwgI2RlZmluZSBIQVZFX0VYRUNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJT19F WFRfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVf SCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwg I2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVfSCAxCnwgI2Rl ZmluZSBIQVZFX1BFUlNPTkFMSVRZX0xJTlVYMzIgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJ TkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1f SCAxCnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NZ U19TSUdMSVNUIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX05F VF9JRl9IIDEKfCAjZGVmaW5lIEhBVkVfSUZBRERSU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNU X0lGUkVRX0lGUl9GTEFHUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfSFdBRERS IDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9ORVRNQVNLIDEKfCAvKiBlbmQgY29u ZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN0ZGlvLmg+CnwgI2lmZGVmIEhBVkVfU1lTX1RZUEVT X0gKfCAjIGluY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NZU19T VEFUX0gKfCAjIGluY2x1ZGUgPHN5cy9zdGF0Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIFNURENfSEVB REVSUwp8ICMgaW5jbHVkZSA8c3RkbGliLmg+CnwgIyBpbmNsdWRlIDxzdGRkZWYuaD4KfCAjZWxz ZQp8ICMgaWZkZWYgSEFWRV9TVERMSUJfSAp8ICMgIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgZW5k aWYKfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdfSAp8ICMgaWYgIWRlZmluZWQgU1REQ19I RUFERVJTICYmIGRlZmluZWQgSEFWRV9NRU1PUllfSAp8ICMgIGluY2x1ZGUgPG1lbW9yeS5oPgp8 ICMgZW5kaWYKfCAjIGluY2x1ZGUgPHN0cmluZy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NU UklOR1NfSAp8ICMgaW5jbHVkZSA8c3RyaW5ncy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX0lO VFRZUEVTX0gKfCAjIGluY2x1ZGUgPGludHR5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVf U1RESU5UX0gKfCAjIGluY2x1ZGUgPHN0ZGludC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1VO SVNURF9ICnwgIyBpbmNsdWRlIDx1bmlzdGQuaD4KfCAjZW5kaWYKfCAjaWYgSEFWRV9TWVNfU09D S0VUX0gKfCAjaW5jbHVkZSA8c3lzL3NvY2tldC5oPgp8ICNlbmRpZgp8ICNpZiBIQVZFX05FVF9J Rl9ICnwgI2luY2x1ZGUgPG5ldC9pZi5oPgp8ICNlbmRpZgp8IAp8IGludAp8IG1haW4gKCkKfCB7 Cnwgc3RhdGljIHN0cnVjdCBpZnJlcSBhY19hZ2dyOwp8IGlmIChhY19hZ2dyLmlmcl9icm9hZGFk ZHIpCnwgcmV0dXJuIDA7CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToxMDQxNzog Z2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjEwNDE3OiAkPyA9IDAK Y29uZmlndXJlOjEwNDE3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTA0MzM6IGNoZWNraW5nIGZv ciBzdHJ1Y3QgaWZyZXEuaWZyX2FkZHIKY29uZmlndXJlOjEwNDMzOiBnY2MgLWMgLWczIC1PMiAg ICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiAnbWFpbic6CmNvbmZ0ZXN0 LmM6MTQxOjU6IGVycm9yOiB1c2VkIHN0cnVjdCB0eXBlIHZhbHVlIHdoZXJlIHNjYWxhciBpcyBy ZXF1aXJlZAogaWYgKGFjX2FnZ3IuaWZyX2FkZHIpCiAgICAgXn5+fn5+fgpjb25maWd1cmU6MTA0 MzM6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5o ICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0Vf VEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjI1LjEiCnwgI2RlZmlu ZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JF UE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHA6 Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmluZSBQQUNLQUdFICJlbWFjcyIK fCAjZGVmaW5lIFZFUlNJT04gIjI1LjEiCnwgI2RlZmluZSBNQUlMX1VTRV9QT1AgMQp8ICNkZWZp bmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9UWlNFVCAxCnwgI2RlZmluZSBIQVZFX0ZD SE1PRCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LQVQgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNT QVQgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwg I2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBI QVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVf TUtPU1RFTVAgMQp8ICNkZWZpbmUgSEFWRV9QSVBFMiAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1Qg MQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwg I2RlZmluZSBIQVZFX1NUUlRPVU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZp bmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX1RJTUVHTSAxCnwgI2RlZmluZSBI QVZFX0ZVVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVTQVQgMQp8ICNkZWZpbmUgSEFWRV9G VVRJTUVOUyAxCnwgI2RlZmluZSBIQVZFX1VUSU1FTlNBVCAxCnwgI2RlZmluZSBIQVZFX0xVVElN RVMgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VDVVJF X0dFVEVOViAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQ RVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJf SCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8 ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAj ZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmlu ZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFS V0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9fVVNFX01J TkdXX0FOU0lfU1RESU8gMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAj ZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fVVNFXzY0X0JJVF9JTk9E RSAxCnwgI2RlZmluZSBTWVNURU1fVFlQRSAiZ251L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNf U09VTkRDQVJEX0ggMQp8ICNkZWZpbmUgSEFWRV9BTFNBIDEKfCAjZGVmaW5lIEhBVkVfU09VTkQg MQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1F X0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVm aW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmlu ZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhB VkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVf U1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5U X0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVD VF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0gg MQp8ICNkZWZpbmUgSEFWRV9QRVJTT05BTElUWV9MSU5VWDMyIDEKfCAjZGVmaW5lIEhBVkVfTElO VVhfU1lTSU5GTyAxCnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUgSEFW RV9URVJNX0ggMQp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9TWVNfU0lHTElTVCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUg SEFWRV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZFX0lGQUREUlNfSCAxCnwgI2RlZmluZSBIQVZF X1NUUlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZS X0hXQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2Rl ZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJPQURBRERSIDEKfCAvKiBlbmQgY29uZmRlZnMu aC4gICovCnwgI2luY2x1ZGUgPHN0ZGlvLmg+CnwgI2lmZGVmIEhBVkVfU1lTX1RZUEVTX0gKfCAj IGluY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NZU19TVEFUX0gK fCAjIGluY2x1ZGUgPHN5cy9zdGF0Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIFNURENfSEVBREVSUwp8 ICMgaW5jbHVkZSA8c3RkbGliLmg+CnwgIyBpbmNsdWRlIDxzdGRkZWYuaD4KfCAjZWxzZQp8ICMg aWZkZWYgSEFWRV9TVERMSUJfSAp8ICMgIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgZW5kaWYKfCAj ZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdfSAp8ICMgaWYgIWRlZmluZWQgU1REQ19IRUFERVJT ICYmIGRlZmluZWQgSEFWRV9NRU1PUllfSAp8ICMgIGluY2x1ZGUgPG1lbW9yeS5oPgp8ICMgZW5k aWYKfCAjIGluY2x1ZGUgPHN0cmluZy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR1Nf SAp8ICMgaW5jbHVkZSA8c3RyaW5ncy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX0lOVFRZUEVT X0gKfCAjIGluY2x1ZGUgPGludHR5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RESU5U X0gKfCAjIGluY2x1ZGUgPHN0ZGludC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1VOSVNURF9I CnwgIyBpbmNsdWRlIDx1bmlzdGQuaD4KfCAjZW5kaWYKfCAjaWYgSEFWRV9TWVNfU09DS0VUX0gK fCAjaW5jbHVkZSA8c3lzL3NvY2tldC5oPgp8ICNlbmRpZgp8ICNpZiBIQVZFX05FVF9JRl9ICnwg I2luY2x1ZGUgPG5ldC9pZi5oPgp8ICNlbmRpZgp8IAp8IGludAp8IG1haW4gKCkKfCB7Cnwgc3Rh dGljIHN0cnVjdCBpZnJlcSBhY19hZ2dyOwp8IGlmIChhY19hZ2dyLmlmcl9hZGRyKQp8IHJldHVy biAwOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MTA0MzM6IGdjYyAtYyAtZzMg LU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxMDQzMzogJD8gPSAwCmNvbmZpZ3VyZTox MDQzMzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEwNDQ5OiBjaGVja2luZyBmb3Igc3RydWN0IGlm cmVxLmlmcl9hZGRyLnNhX2xlbgpjb25maWd1cmU6MTA0NDk6IGdjYyAtYyAtZzMgLU8yICAgIGNv bmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6IEluIGZ1bmN0aW9uICdtYWluJzoKY29uZnRlc3QuYzox NDI6MjE6IGVycm9yOiAnc3RydWN0IHNvY2thZGRyJyBoYXMgbm8gbWVtYmVyIG5hbWVkICdzYV9s ZW4nCiBpZiAoYWNfYWdnci5pZnJfYWRkci5zYV9sZW4pCiAgICAgICAgICAgICAgICAgICAgIF4K Y29uZmlndXJlOjEwNDQ5OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6Cnwg LyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2Rl ZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIy NS4xIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAyNS4xIgp8ICNkZWZpbmUg UEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tB R0VfVVJMICJodHRwOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgUEFD S0FHRSAiZW1hY3MiCnwgI2RlZmluZSBWRVJTSU9OICIyNS4xIgp8ICNkZWZpbmUgTUFJTF9VU0Vf UE9QIDEKfCAjZGVmaW5lIEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfVFpTRVQgMQp8ICNk ZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKfCAjZGVmaW5l IEhBVkVfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9G RE9QRU5ESVIgMQp8ICNkZWZpbmUgSEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMg MQp8ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwg I2RlZmluZSBIQVZFX01LT1NURU1QIDEKfCAjZGVmaW5lIEhBVkVfUElQRTIgMQp8ICNkZWZpbmUg SEFWRV9QU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFWRV9T VFJUT0lNQVggMQp8ICNkZWZpbmUgSEFWRV9TVFJUT1VNQVggMQp8ICNkZWZpbmUgSEFWRV9TWU1M SU5LIDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9USU1FR00g MQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FU0FUIDEKfCAj ZGVmaW5lIEhBVkVfRlVUSU1FTlMgMQp8ICNkZWZpbmUgSEFWRV9VVElNRU5TQVQgMQp8ICNkZWZp bmUgSEFWRV9MVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmlu ZSBIQVZFX1NFQ1VSRV9HRVRFTlYgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5l IEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZF X01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5U VFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1RE X0ggMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8 ICNkZWZpbmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2Rl ZmluZSBfX1VTRV9NSU5HV19BTlNJX1NURElPIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NF TUFOVElDUyAxCnwgI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX1VT RV82NF9CSVRfSU5PREUgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAjZGVm aW5lIEhBVkVfU1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2RlZmlu ZSBIQVZFX1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmluZSBI QVZFX1BUWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9V VE1QX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERM SUJfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFN X0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAx CnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAxCnwg I2RlZmluZSBIQVZFX1NURElPX0VYVF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfSCAxCnwgI2RlZmlu ZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUg SEFWRV9VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfTElOVVgzMiAxCnwgI2Rl ZmluZSBIQVZFX0xJTlVYX1NZU0lORk8gMQp8ICNkZWZpbmUgTElOVVhfU1lTSU5GT19VTklUIDEK fCAjZGVmaW5lIEhBVkVfVEVSTV9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfU1lTX1NJR0xJU1QgMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9I IDEKfCAjZGVmaW5lIEhBVkVfTkVUX0lGX0ggMQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0ggMQp8 ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfU1RS VUNUX0lGUkVRX0lGUl9IV0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX05F VE1BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAxCnwgI2Rl ZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQUREUiAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAq Lwp8ICNpbmNsdWRlIDxzdGRpby5oPgp8ICNpZmRlZiBIQVZFX1NZU19UWVBFU19ICnwgIyBpbmNs dWRlIDxzeXMvdHlwZXMuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TWVNfU1RBVF9ICnwgIyBp bmNsdWRlIDxzeXMvc3RhdC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBTVERDX0hFQURFUlMKfCAjIGlu Y2x1ZGUgPHN0ZGxpYi5oPgp8ICMgaW5jbHVkZSA8c3RkZGVmLmg+CnwgI2Vsc2UKfCAjIGlmZGVm IEhBVkVfU1RETElCX0gKfCAjICBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjIGVuZGlmCnwgI2VuZGlm CnwgI2lmZGVmIEhBVkVfU1RSSU5HX0gKfCAjIGlmICFkZWZpbmVkIFNURENfSEVBREVSUyAmJiBk ZWZpbmVkIEhBVkVfTUVNT1JZX0gKfCAjICBpbmNsdWRlIDxtZW1vcnkuaD4KfCAjIGVuZGlmCnwg IyBpbmNsdWRlIDxzdHJpbmcuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdTX0gKfCAj IGluY2x1ZGUgPHN0cmluZ3MuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9JTlRUWVBFU19ICnwg IyBpbmNsdWRlIDxpbnR0eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NURElOVF9ICnwg IyBpbmNsdWRlIDxzdGRpbnQuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9VTklTVERfSAp8ICMg aW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgI2lmIEhBVkVfU1lTX1NPQ0tFVF9ICnwgI2lu Y2x1ZGUgPHN5cy9zb2NrZXQuaD4KfCAjZW5kaWYKfCAjaWYgSEFWRV9ORVRfSUZfSAp8ICNpbmNs dWRlIDxuZXQvaWYuaD4KfCAjZW5kaWYKfCAKfCBpbnQKfCBtYWluICgpCnwgewp8IHN0YXRpYyBz dHJ1Y3QgaWZyZXEgYWNfYWdncjsKfCBpZiAoYWNfYWdnci5pZnJfYWRkci5zYV9sZW4pCnwgcmV0 dXJuIDA7CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToxMDQ0OTogZ2NjIC1jIC1n MyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzogSW4gZnVuY3Rpb24gJ21haW4nOgpj b25mdGVzdC5jOjE0MjoyODogZXJyb3I6ICdzdHJ1Y3Qgc29ja2FkZHInIGhhcyBubyBtZW1iZXIg bmFtZWQgJ3NhX2xlbicKIGlmIChzaXplb2YgYWNfYWdnci5pZnJfYWRkci5zYV9sZW4pCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICBeCmNvbmZpZ3VyZToxMDQ0OTogJD8gPSAxCmNvbmZpZ3Vy ZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tB R0VfTkFNRSAiR05VIEVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJlbWFjcyIKfCAj ZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMjUuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJH TlUgRW1hY3MgMjUuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ251LWVtYWNz QGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0cDovL3d3dy5nbnUub3JnL3NvZnR3 YXJlL2VtYWNzLyIKfCAjZGVmaW5lIFBBQ0tBR0UgImVtYWNzIgp8ICNkZWZpbmUgVkVSU0lPTiAi MjUuMSIKfCAjZGVmaW5lIE1BSUxfVVNFX1BPUCAxCnwgI2RlZmluZSBIQVZFX1BVVEVOViAxCnwg I2RlZmluZSBIQVZFX1RaU0VUIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhB VkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZF X0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRB VCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEK fCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9NS09TVEVNUCAxCnwgI2RlZmlu ZSBIQVZFX1BJUEUyIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1JF QURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9V TUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FMVElNRV9S IDEKfCAjZGVmaW5lIEhBVkVfVElNRUdNIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FUyAxCnwgI2Rl ZmluZSBIQVZFX0ZVVElNRVNBVCAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRU5TIDEKfCAjZGVmaW5l IEhBVkVfVVRJTUVOU0FUIDEKfCAjZGVmaW5lIEhBVkVfTFVUSU1FUyAxCnwgI2RlZmluZSBIQVZF X0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRUNVUkVfR0VURU5WIDEKfCAjZGVmaW5l IFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVf U1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklO R1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRf SCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEK fCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8ICNk ZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19VU0VfTUlOR1dfQU5TSV9TVERJTyAxCnwg I2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VS Q0UgMQp8ICNkZWZpbmUgX0RBUldJTl9VU0VfNjRfQklUX0lOT0RFIDEKfCAjZGVmaW5lIFNZU1RF TV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAxCnwgI2Rl ZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwgI2RlZmluZSBIQVZFX1NZ U19TWVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9QVFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19S RVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZF X1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tF VF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAx CnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2Rl ZmluZSBIQVZFX0VYRUNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJT19FWFRfSCAxCnwgI2Rl ZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmlu ZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZF X0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BF UlNPTkFMSVRZX0xJTlVYMzIgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVm aW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAxCnwgI2RlZmlu ZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NZU19TSUdMSVNUIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX05FVF9JRl9IIDEKfCAj ZGVmaW5lIEhBVkVfSUZBRERSU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9G TEFHUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfSFdBRERSIDEKfCAjZGVmaW5l IEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9ORVRNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lG UkVRX0lGUl9CUk9BREFERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0FERFIg MQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8c3RkaW8uaD4KfCAjaWZkZWYg SEFWRV9TWVNfVFlQRVNfSAp8ICMgaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgI2VuZGlmCnwgI2lm ZGVmIEhBVkVfU1lTX1NUQVRfSAp8ICMgaW5jbHVkZSA8c3lzL3N0YXQuaD4KfCAjZW5kaWYKfCAj aWZkZWYgU1REQ19IRUFERVJTCnwgIyBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjIGluY2x1ZGUgPHN0 ZGRlZi5oPgp8ICNlbHNlCnwgIyBpZmRlZiBIQVZFX1NURExJQl9ICnwgIyAgaW5jbHVkZSA8c3Rk bGliLmg+CnwgIyBlbmRpZgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR19ICnwgIyBpZiAh ZGVmaW5lZCBTVERDX0hFQURFUlMgJiYgZGVmaW5lZCBIQVZFX01FTU9SWV9ICnwgIyAgaW5jbHVk ZSA8bWVtb3J5Lmg+CnwgIyBlbmRpZgp8ICMgaW5jbHVkZSA8c3RyaW5nLmg+CnwgI2VuZGlmCnwg I2lmZGVmIEhBVkVfU1RSSU5HU19ICnwgIyBpbmNsdWRlIDxzdHJpbmdzLmg+CnwgI2VuZGlmCnwg I2lmZGVmIEhBVkVfSU5UVFlQRVNfSAp8ICMgaW5jbHVkZSA8aW50dHlwZXMuaD4KfCAjZW5kaWYK fCAjaWZkZWYgSEFWRV9TVERJTlRfSAp8ICMgaW5jbHVkZSA8c3RkaW50Lmg+CnwgI2VuZGlmCnwg I2lmZGVmIEhBVkVfVU5JU1REX0gKfCAjIGluY2x1ZGUgPHVuaXN0ZC5oPgp8ICNlbmRpZgp8ICNp ZiBIQVZFX1NZU19TT0NLRVRfSAp8ICNpbmNsdWRlIDxzeXMvc29ja2V0Lmg+CnwgI2VuZGlmCnwg I2lmIEhBVkVfTkVUX0lGX0gKfCAjaW5jbHVkZSA8bmV0L2lmLmg+CnwgI2VuZGlmCnwgCnwgaW50 CnwgbWFpbiAoKQp8IHsKfCBzdGF0aWMgc3RydWN0IGlmcmVxIGFjX2FnZ3I7CnwgaWYgKHNpemVv ZiBhY19hZ2dyLmlmcl9hZGRyLnNhX2xlbikKfCByZXR1cm4gMDsKfCAgIDsKfCAgIHJldHVybiAw Owp8IH0KY29uZmlndXJlOjEwNDQ5OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToxMDQ3MTogY2hlY2tp bmcgd2hldGhlciBnY2MgdW5kZXJzdGFuZHMgLU1NRCAtTUYKY29uZmlndXJlOjEwNDg2OiBnY2Mg LWMgLWczIC1PMiAtTU1EIC1NRiBkZXBzLmQgLU1QICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3Vy ZToxMDQ4NjogJD8gPSAwCmNvbmZpZ3VyZToxMDQ5NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEw NTAzOiBjaGVja2luZyBmb3IgbG9uZyBmaWxlIG5hbWVzCmNvbmZpZ3VyZToxMDUzNTogcmVzdWx0 OiB5ZXMKY29uZmlndXJlOjEwNTUyOiBjaGVja2luZyBmb3IgWApjb25maWd1cmU6MTA2NjA6IGdj YyAtRSAgICBjb25mdGVzdC5jCmNvbmZpZ3VyZToxMDY2MDogJD8gPSAwCmNvbmZpZ3VyZToxMDY5 MTogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgIGNvbmZ0ZXN0LmMgLWxYMTEgID4mNSAKY29u ZmlndXJlOjEwNjkxOiAkPyA9IDAKY29uZmlndXJlOjEwNzQxOiByZXN1bHQ6IGxpYnJhcmllcyAs IGhlYWRlcnMgCmNvbmZpZ3VyZToxMTQ0MDogY2hlY2tpbmcgd2hldGhlciBtYWxsb2MgaXMgRG91 ZyBMZWEgc3R5bGUKY29uZmlndXJlOjExNDYxOiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAg Y29uZnRlc3QuYyAgPiY1IApjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiAnbWFpbic6CmNvbmZ0ZXN0 LmM6MTA2OjY6IGVycm9yOiAnX19tYWxsb2NfaW5pdGlhbGl6ZV9ob29rJyB1bmRlY2xhcmVkIChm aXJzdCB1c2UgaW4gdGhpcyBmdW5jdGlvbikKICAgICAgX19tYWxsb2NfaW5pdGlhbGl6ZV9ob29r ID0gaG9vazsKICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CmNvbmZ0ZXN0LmM6MTA2OjY6 IG5vdGU6IGVhY2ggdW5kZWNsYXJlZCBpZGVudGlmaWVyIGlzIHJlcG9ydGVkIG9ubHkgb25jZSBm b3IgZWFjaCBmdW5jdGlvbiBpdCBhcHBlYXJzIGluCmNvbmZpZ3VyZToxMTQ2MTogJD8gPSAxCmNv bmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5l IFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJlbWFj cyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMjUuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RS SU5HICJHTlUgRW1hY3MgMjUuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ251 LWVtYWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0cDovL3d3dy5nbnUub3Jn L3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIFBBQ0tBR0UgImVtYWNzIgp8ICNkZWZpbmUgVkVS U0lPTiAiMjUuMSIKfCAjZGVmaW5lIE1BSUxfVVNFX1BPUCAxCnwgI2RlZmluZSBIQVZFX1BVVEVO ViAxCnwgI2RlZmluZSBIQVZFX1RaU0VUIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVm aW5lIEhBVkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmlu ZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVf RlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9G REFZIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9NS09TVEVNUCAxCnwg I2RlZmluZSBIQVZFX1BJUEUyIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2RlZmluZSBI QVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVf U1RSVE9VTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FM VElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfVElNRUdNIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FUyAx CnwgI2RlZmluZSBIQVZFX0ZVVElNRVNBVCAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRU5TIDEKfCAj ZGVmaW5lIEhBVkVfVVRJTUVOU0FUIDEKfCAjZGVmaW5lIEhBVkVfTFVUSU1FUyAxCnwgI2RlZmlu ZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRUNVUkVfR0VURU5WIDEKfCAj ZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5l IEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZF X1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9T VERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9O U19fIDEKfCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0Ug MQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19VU0VfTUlOR1dfQU5TSV9TVERJ TyAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX1RBTkRF TV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9VU0VfNjRfQklUX0lOT0RFIDEKfCAjZGVmaW5l IFNZU1RFTV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAx CnwgI2RlZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwgI2RlZmluZSBI QVZFX1NZU19TWVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9QVFlfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmlu ZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklT VERfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVB RF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAx CnwgI2RlZmluZSBIQVZFX0VYRUNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJT19FWFRfSCAx CnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwg I2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmlu ZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVfSCAxCnwgI2RlZmluZSBI QVZFX1BFUlNPTkFMSVRZX0xJTlVYMzIgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEK fCAjZGVmaW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAxCnwg I2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NZU19TSUdM SVNUIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX05FVF9JRl9I IDEKfCAjZGVmaW5lIEhBVkVfSUZBRERSU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVR X0lGUl9GTEFHUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfSFdBRERSIDEKfCAj ZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9ORVRNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RS VUNUX0lGUkVRX0lGUl9CUk9BREFERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZS X0FERFIgMQp8ICNkZWZpbmUgSEFWRV9MT05HX0ZJTEVfTkFNRVMgMQp8IC8qIGVuZCBjb25mZGVm cy5oLiAgKi8KfCAjaW5jbHVkZSA8bWFsbG9jLmg+CnwgCSAgICBzdGF0aWMgdm9pZCBob29rICh2 b2lkKSB7fQp8IGludAp8IG1haW4gKCkKfCB7CnwgbWFsbG9jX3NldF9zdGF0ZSAobWFsbG9jX2dl dF9zdGF0ZSAoKSk7CnwgCSAgICBfX2FmdGVyX21vcmVjb3JlX2hvb2sgPSBob29rOwp8IAkgICAg X19tYWxsb2NfaW5pdGlhbGl6ZV9ob29rID0gaG9vazsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0K Y29uZmlndXJlOjExNDY4OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToxMTUwNTogY2hlY2tpbmcgc3lz L3ZsaW1pdC5oIHVzYWJpbGl0eQpjb25maWd1cmU6MTE1MDU6IGdjYyAtYyAtZzMgLU8yICAgIGNv bmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxMTUwNTogJD8gPSAwCmNvbmZpZ3VyZToxMTUwNTogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjExNTA1OiBjaGVja2luZyBzeXMvdmxpbWl0LmggcHJlc2VuY2UK Y29uZmlndXJlOjExNTA1OiBnY2MgLUUgICAgY29uZnRlc3QuYwpjb25maWd1cmU6MTE1MDU6ICQ/ ID0gMApjb25maWd1cmU6MTE1MDU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMTUwNTogY2hlY2tp bmcgZm9yIHN5cy92bGltaXQuaApjb25maWd1cmU6MTE1MDU6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy ZToxMTUxNTogY2hlY2tpbmcgZm9yIGRhdGFfc3RhcnQKY29uZmlndXJlOjExNTMxOiBnY2MgLW8g Y29uZnRlc3QgLWczIC1PMiAgICAgY29uZnRlc3QuYyAgPiY1IApjb25maWd1cmU6MTE1MzE6ICQ/ ID0gMApjb25maWd1cmU6MTE1Mzk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMTU4NjogY2hlY2tp bmcgZm9yIGdldHBhZ2VzaXplCmNvbmZpZ3VyZToxMTU4NjogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAt TzIgICAgIGNvbmZ0ZXN0LmMgID4mNSAKY29uZmlndXJlOjExNTg2OiAkPyA9IDAKY29uZmlndXJl OjExNTg2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTE1OTU6IGNoZWNraW5nIGZvciB3b3JraW5n IG1tYXAKY29uZmlndXJlOjExNzQyOiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgY29uZnRl c3QuYyAgPiY1IApjb25maWd1cmU6MTE3NDI6ICQ/ID0gMApjb25maWd1cmU6MTE3NDI6IC4vY29u ZnRlc3QKY29uZmlndXJlOjExNzQyOiAkPyA9IDAKY29uZmlndXJlOjExNzUyOiByZXN1bHQ6IHll cwpjb25maWd1cmU6MTE3NzA6IGNoZWNraW5nIGZvciBtYWluIGluIC1sWGJzZApjb25maWd1cmU6 MTE3ODk6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICBjb25mdGVzdC5jIC1sWGJzZCAgICA+ JjUgCi91c3IvYmluL2xkOiBjYW5ub3QgZmluZCAtbFhic2QKY29sbGVjdDI6IGVycm9yOiBsZCBy ZXR1cm5lZCAxIGV4aXQgc3RhdHVzCmNvbmZpZ3VyZToxMTc4OTogJD8gPSAxCmNvbmZpZ3VyZTog ZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0Vf TkFNRSAiR05VIEVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJlbWFjcyIKfCAjZGVm aW5lIFBBQ0tBR0VfVkVSU0lPTiAiMjUuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUg RW1hY3MgMjUuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ251LWVtYWNzQGdu dS5vcmciCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0cDovL3d3dy5nbnUub3JnL3NvZnR3YXJl L2VtYWNzLyIKfCAjZGVmaW5lIFBBQ0tBR0UgImVtYWNzIgp8ICNkZWZpbmUgVkVSU0lPTiAiMjUu MSIKfCAjZGVmaW5lIE1BSUxfVVNFX1BPUCAxCnwgI2RlZmluZSBIQVZFX1BVVEVOViAxCnwgI2Rl ZmluZSBIQVZFX1RaU0VUIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVf UkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0ZD TlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRBVCAx CnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAj ZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9NS09TVEVNUCAxCnwgI2RlZmluZSBI QVZFX1BJUEUyIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1JFQURM SU5LIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9VTUFY IDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEK fCAjZGVmaW5lIEhBVkVfVElNRUdNIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FUyAxCnwgI2RlZmlu ZSBIQVZFX0ZVVElNRVNBVCAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRU5TIDEKfCAjZGVmaW5lIEhB VkVfVVRJTUVOU0FUIDEKfCAjZGVmaW5lIEhBVkVfTFVUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0dF VERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRUNVUkVfR0VURU5WIDEKfCAjZGVmaW5lIFNU RENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RS SU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1Nf SCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAx CnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAj ZGVmaW5lIF9BTExfU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8ICNkZWZp bmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19VU0VfTUlOR1dfQU5TSV9TVERJTyAxCnwgI2Rl ZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0Ug MQp8ICNkZWZpbmUgX0RBUldJTl9VU0VfNjRfQklUX0lOT0RFIDEKfCAjZGVmaW5lIFNZU1RFTV9U WVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAxCnwgI2RlZmlu ZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwgI2RlZmluZSBIQVZFX1NZU19T WVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9QVFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNP VVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BX RF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9I IDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmlu ZSBIQVZFX0VYRUNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJT19FWFRfSCAxCnwgI2RlZmlu ZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBI QVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX0lO VFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BFUlNP TkFMSVRZX0xJTlVYMzIgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVmaW5l IExJTlVYX1NZU0lORk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAxCnwgI2RlZmluZSBU SU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NZU19TSUdMSVNUIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX05FVF9JRl9IIDEKfCAjZGVm aW5lIEhBVkVfSUZBRERSU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9GTEFH UyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfSFdBRERSIDEKfCAjZGVmaW5lIEhB VkVfU1RSVUNUX0lGUkVRX0lGUl9ORVRNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVR X0lGUl9CUk9BREFERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0FERFIgMQp8 ICNkZWZpbmUgSEFWRV9MT05HX0ZJTEVfTkFNRVMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVkxJTUlU X0ggMQp8ICNkZWZpbmUgSEFWRV9EQVRBX1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJ WkUgMQp8ICNkZWZpbmUgSEFWRV9NTUFQIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgCnwg CnwgaW50CnwgbWFpbiAoKQp8IHsKfCByZXR1cm4gbWFpbiAoKTsKfCAgIDsKfCAgIHJldHVybiAw Owp8IH0KY29uZmlndXJlOjExNzk4OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToxMTgxMDogY2hlY2tp bmcgZm9yIHB0aHJlYWQgbGlicmFyeQpjb25maWd1cmU6MTE4NDY6IGdjYyAtbyBjb25mdGVzdCAt ZzMgLU8yICAgICBjb25mdGVzdC5jICAgPiY1IAovdG1wL2NjeXkySlBqLm86IEluIGZ1bmN0aW9u IGBtYWluJzoKL2hvbWUvZGVlY2gvRG93bmxvYWRzL2VtYWNzLTI1LjEvY29uZnRlc3QuYzoxMTI6 IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYHB0aHJlYWRfY3JlYXRlJwovaG9tZS9kZWVjaC9Eb3du bG9hZHMvZW1hY3MtMjUuMS9jb25mdGVzdC5jOjExMzogdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBg cHRocmVhZF9zaWdtYXNrJwovaG9tZS9kZWVjaC9Eb3dubG9hZHMvZW1hY3MtMjUuMS9jb25mdGVz dC5jOjExNDogdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgcHRocmVhZF9raWxsJwovaG9tZS9kZWVj aC9Eb3dubG9hZHMvZW1hY3MtMjUuMS9jb25mdGVzdC5jOjExODogdW5kZWZpbmVkIHJlZmVyZW5j ZSB0byBgcHRocmVhZF9hdGZvcmsnCmNvbGxlY3QyOiBlcnJvcjogbGQgcmV0dXJuZWQgMSBleGl0 IHN0YXR1cwpjb25maWd1cmU6MTE4NDY6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFt IHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFj cyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZF UlNJT04gIjI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDI1LjEiCnwg I2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZp bmUgUEFDS0FHRV9VUkwgImh0dHA6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9lbWFjcy8iCnwgI2Rl ZmluZSBQQUNLQUdFICJlbWFjcyIKfCAjZGVmaW5lIFZFUlNJT04gIjI1LjEiCnwgI2RlZmluZSBN QUlMX1VTRV9QT1AgMQp8ICNkZWZpbmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9UWlNF VCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LQVQgMQp8 ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmlu ZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFW RV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX0xT VEFUIDEKfCAjZGVmaW5lIEhBVkVfTUtPU1RFTVAgMQp8ICNkZWZpbmUgSEFWRV9QSVBFMiAxCnwg I2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmlu ZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX1NUUlRPVU1BWCAxCnwgI2RlZmluZSBI QVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmluZSBIQVZF X1RJTUVHTSAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVT QVQgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVOUyAxCnwgI2RlZmluZSBIQVZFX1VUSU1FTlNBVCAx CnwgI2RlZmluZSBIQVZFX0xVVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEK fCAjZGVmaW5lIEhBVkVfU0VDVVJFX0dFVEVOViAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8 ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8 ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVm aW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUg SEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFW RV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBfQUxMX1NP VVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNF IDEKfCAjZGVmaW5lIF9fVVNFX01JTkdXX0FOU0lfU1RESU8gMQp8ICNkZWZpbmUgX1BPU0lYX1BU SFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVmaW5lIF9E QVJXSU5fVVNFXzY0X0JJVF9JTk9ERSAxCnwgI2RlZmluZSBTWVNURU1fVFlQRSAiZ251L2xpbnV4 Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJEX0ggMQp8ICNkZWZpbmUgSEFWRV9BTFNBIDEK fCAjZGVmaW5lIEhBVkVfU09VTkQgMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAj ZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmlu ZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBI QVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5G T19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEK fCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwg I2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QRVJTT05BTElUWV9MSU5VWDMy IDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5GTyAxCnwgI2RlZmluZSBMSU5VWF9TWVNJTkZP X1VOSVQgMQp8ICNkZWZpbmUgSEFWRV9URVJNX0ggMQp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19U SU1FIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TWVNfU0lHTElTVCAxCnwgI2RlZmluZSBIQVZFX1NZ U19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZFX0lGQURE UlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUg SEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJF UV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJPQURBRERS IDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERSIDEKfCAjZGVmaW5lIEhBVkVf TE9OR19GSUxFX05BTUVTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1ZMSU1JVF9IIDEKfCAjZGVmaW5l IEhBVkVfREFUQV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5l IEhBVkVfTU1BUCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxwdGhyZWFk Lmg+CnwgCSAgICAgICNpbmNsdWRlIDxzaWduYWwuaD4KfCAJICAgICAgc2lnc2V0X3Qgb2xkX21h c2ssIG5ld19tYXNrOwp8IAkgICAgICB2b2lkIG5vb3AgKHZvaWQpIHt9CnwgaW50CnwgbWFpbiAo KQp8IHsKfCBwdGhyZWFkX3QgdGggPSBwdGhyZWFkX3NlbGYgKCk7CnwgCSAgICAgIGludCBzdGF0 dXMgPSAwOwp8IAkgICAgICBzdGF0dXMgKz0gcHRocmVhZF9jcmVhdGUgKCZ0aCwgMCwgMCwgMCk7 CnwgCSAgICAgIHN0YXR1cyArPSBwdGhyZWFkX3NpZ21hc2sgKFNJR19CTE9DSywgJm5ld19tYXNr LCAmb2xkX21hc2spOwp8IAkgICAgICBzdGF0dXMgKz0gcHRocmVhZF9raWxsICh0aCwgMCk7Cnwg CSAgICAgICNpZiAhIChkZWZpbmVkIFNZU1RFTV9NQUxMT0MgfHwgZGVmaW5lZCBIWUJSSURfTUFM TE9DIAkJICAgICB8fCBkZWZpbmVkIERPVUdfTEVBX01BTExPQykKfCAJICAgICAgLyogVGVzdCBm b3IgcHRocmVhZF9hdGZvcmsgb25seSBpZiBnbWFsbG9jIHVzZXMgaXQsCnwgCQkgYXMgb2xkZXIt c3R5bGUgaG9zdHMgbGlrZSBNaXJCU0QgMTAgbGFjayBpdC4gICovCnwgCSAgICAgIHN0YXR1cyAr PSBwdGhyZWFkX2F0Zm9yayAobm9vcCwgbm9vcCwgbm9vcCk7CnwgCSAgICAgICNlbmRpZgp8IAkg ICAgICByZXR1cm4gc3RhdHVzOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MTE4 NDY6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICBjb25mdGVzdC5jICAgLWxwdGhyZWFkID4m NSAKY29uZmlndXJlOjExODQ2OiAkPyA9IDAKY29uZmlndXJlOjExODU3OiByZXN1bHQ6IC1scHRo cmVhZApjb25maWd1cmU6MTE5NDg6IGNoZWNraW5nIHdoZXRoZXIgWCBvbiBHTlUvTGludXggbmVl ZHMgLWIgdG8gbGluawpjb25maWd1cmU6MTE5NjE6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAg ICAgICBjb25mdGVzdC5jIC1sWDExICAgPiY1IApjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiAnbWFp bic6CmNvbmZ0ZXN0LmM6MTA4OjE6IHdhcm5pbmc6IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1 bmN0aW9uICdYT3BlbkRpc3BsYXknIFstV2ltcGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQog WE9wZW5EaXNwbGF5ICgiZm9vIik7CiBefn5+fn5+fn5+fn4KY29uZmlndXJlOjExOTYxOiAkPyA9 IDAKY29uZmlndXJlOjEyMDA1OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToxMjAxMjogY2hlY2tpbmcg Zm9yIFhrYgpjb25maWd1cmU6MTIwMjY6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAgICAgICBj b25mdGVzdC5jIC1sWDExICAgPiY1IApjb25maWd1cmU6MTIwMjY6ICQ/ID0gMApjb25maWd1cmU6 MTIwMzM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMjA0NTogY2hlY2tpbmcgZm9yIFhybVNldERh dGFiYXNlCmNvbmZpZ3VyZToxMjA0NTogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yICAgICAgIGNv bmZ0ZXN0LmMgLWxYMTEgICA+JjUgCmNvbmZpZ3VyZToxMjA0NTogJD8gPSAwCmNvbmZpZ3VyZTox MjA0NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEyMDQ1OiBjaGVja2luZyBmb3IgWFNjcmVlblJl c291cmNlU3RyaW5nCmNvbmZpZ3VyZToxMjA0NTogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yICAg ICAgIGNvbmZ0ZXN0LmMgLWxYMTEgICA+JjUgCmNvbmZpZ3VyZToxMjA0NTogJD8gPSAwCmNvbmZp Z3VyZToxMjA0NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEyMDQ1OiBjaGVja2luZyBmb3IgWFNj cmVlbk51bWJlck9mU2NyZWVuCmNvbmZpZ3VyZToxMjA0NTogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMg LU8yICAgICAgIGNvbmZ0ZXN0LmMgLWxYMTEgICA+JjUgCmNvbmZpZ3VyZToxMjA0NTogJD8gPSAw CmNvbmZpZ3VyZToxMjA0NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEyMDU3OiBjaGVja2luZyBY MTEgdmVyc2lvbiA2CmNvbmZpZ3VyZToxMjA3NjogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yICAg ICAgIGNvbmZ0ZXN0LmMgLWxYMTEgICA+JjUgCmNvbmZpZ3VyZToxMjA3NjogJD8gPSAwCmNvbmZp Z3VyZToxMjA4NjogcmVzdWx0OiA2IG9yIG5ld2VyCmNvbmZpZ3VyZToxMjExOTogY2hlY2tpbmcg Zm9yIFJTVkcKY29uZmlndXJlOjEyMTI2OiAkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVy cm9ycyAiJFJTVkdfTU9EVUxFIgpjb25maWd1cmU6MTIxMjk6ICQ/ID0gMApjb25maWd1cmU6MTIx NDM6ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzICIkUlNWR19NT0RVTEUiCmNv bmZpZ3VyZToxMjE0NjogJD8gPSAwCmNvbmZpZ3VyZToxMjE4NDogcmVzdWx0OiB5ZXMKY29uZmln dXJlOjEyMjEzOiBjaGVja2luZyBmb3IgSU1BR0VNQUdJQ0sKY29uZmlndXJlOjEyMjIwOiAkUEtH X0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyAiJElNQUdFTUFHSUNLX01PRFVMRSIKY29u ZmlndXJlOjEyMjIzOiAkPyA9IDAKY29uZmlndXJlOjEyMjM3OiAkUEtHX0NPTkZJRyAtLWV4aXN0 cyAtLXByaW50LWVycm9ycyAiJElNQUdFTUFHSUNLX01PRFVMRSIKY29uZmlndXJlOjEyMjQwOiAk PyA9IDAKY29uZmlndXJlOjEyMjc4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTIyOTc6IGNoZWNr aW5nIGZvciBNYWdpY2tFeHBvcnRJbWFnZVBpeGVscwpjb25maWd1cmU6MTIyOTc6IGdjYyAtbyBj b25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtSS91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtSS91 c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3Iv aW5jbHVkZS9jYWlybyAtSS91c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91c3IvaW5jbHVkZS9mcmVl dHlwZTIgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkv dXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9p bmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9n bGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvbGliZHJt IC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1mb3Blbm1wIC1ETUFHSUNLQ09SRV9IRFJJX0VOQUJM RT0xIC1ETUFHSUNLQ09SRV9RVUFOVFVNX0RFUFRIPTE2IC1mb3Blbm1wIC1ETUFHSUNLQ09SRV9I RFJJX0VOQUJMRT0xIC1ETUFHSUNLQ09SRV9RVUFOVFVNX0RFUFRIPTE2IC1JL3Vzci9pbmNsdWRl L0ltYWdlTWFnaWNrLTYgICAgICAgY29uZnRlc3QuYyAtbE1hZ2lja1dhbmQtNi5RMTZIRFJJIC1s TWFnaWNrQ29yZS02LlExNkhEUkkgLWxYMTEgICA+JjUgCmNvbmZpZ3VyZToxMjI5NzogJD8gPSAw CmNvbmZpZ3VyZToxMjI5NzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEyMjk3OiBjaGVja2luZyBm b3IgTWFnaWNrTWVyZ2VJbWFnZUxheWVycwpjb25maWd1cmU6MTIyOTc6IGdjYyAtbyBjb25mdGVz dCAgLWczIC1PMiAtcHRocmVhZCAtSS91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtSS91c3IvaW5j bHVkZS9nZGstcGl4YnVmLTIuMCAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVk ZS9jYWlybyAtSS91c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIg LUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2lu Y2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRl L2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIu MCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvbGliZHJtIC1JL3Vz ci9pbmNsdWRlL2xpYnBuZzE2IC1mb3Blbm1wIC1ETUFHSUNLQ09SRV9IRFJJX0VOQUJMRT0xIC1E TUFHSUNLQ09SRV9RVUFOVFVNX0RFUFRIPTE2IC1mb3Blbm1wIC1ETUFHSUNLQ09SRV9IRFJJX0VO QUJMRT0xIC1ETUFHSUNLQ09SRV9RVUFOVFVNX0RFUFRIPTE2IC1JL3Vzci9pbmNsdWRlL0ltYWdl TWFnaWNrLTYgICAgICAgY29uZnRlc3QuYyAtbE1hZ2lja1dhbmQtNi5RMTZIRFJJIC1sTWFnaWNr Q29yZS02LlExNkhEUkkgLWxYMTEgICA+JjUgCmNvbmZpZ3VyZToxMjI5NzogJD8gPSAwCmNvbmZp Z3VyZToxMjI5NzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEyNzc4OiBjaGVja2luZyBmb3IgREJV Uwpjb25maWd1cmU6MTI3ODU6ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzICJk YnVzLTEgPj0gMS4wIgpjb25maWd1cmU6MTI3ODg6ICQ/ID0gMApjb25maWd1cmU6MTI4MDI6ICRQ S0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzICJkYnVzLTEgPj0gMS4wIgpjb25maWd1 cmU6MTI4MDU6ICQ/ID0gMApjb25maWd1cmU6MTI4NDM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTox Mjg2MjogY2hlY2tpbmcgZm9yIGRidXNfd2F0Y2hfZ2V0X3VuaXhfZmQKY29uZmlndXJlOjEyODYy OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLUkvdXNyL2luY2x1ZGUvbGlicnN2 Zy0yLjAgLUkvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLUkvdXNyL2luY2x1ZGUvbGlicG5n MTYgLUkvdXNyL2luY2x1ZGUvY2Fpcm8gLUkvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLUkvdXNyL2lu Y2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hh cmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVk ZSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNy L2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNs dWRlL2xpYmRybSAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1sWDEx ICAgLWxkYnVzLTEgPiY1IApjb25maWd1cmU6MTI4NjI6ICQ/ID0gMApjb25maWd1cmU6MTI4NjI6 IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMjg2MjogY2hlY2tpbmcgZm9yIGRidXNfdHlwZV9pc192 YWxpZApjb25maWd1cmU6MTI4NjI6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAt SS91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtSS91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAt SS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9jYWlybyAtSS91c3IvaW5jbHVk ZS9waXhtYW4tMSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvbGlicG5n MTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNy L2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5j bHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4w L2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvbGliZHJtIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAg ICAgIGNvbmZ0ZXN0LmMgLWxYMTEgICAtbGRidXMtMSA+JjUgCmNvbmZpZ3VyZToxMjg2MjogJD8g PSAwCmNvbmZpZ3VyZToxMjg2MjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEyODYyOiBjaGVja2lu ZyBmb3IgZGJ1c192YWxpZGF0ZV9idXNfbmFtZQpjb25maWd1cmU6MTI4NjI6IGdjYyAtbyBjb25m dGVzdCAgLWczIC1PMiAtcHRocmVhZCAtSS91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtSS91c3Iv aW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5j bHVkZS9jYWlybyAtSS91c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91c3IvaW5jbHVkZS9mcmVldHlw ZTIgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNy L2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNs dWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGli LTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvbGliZHJtIC1J L3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxYMTEgICAtbGRidXMtMSA+ JjUgCmNvbmZpZ3VyZToxMjg2MjogJD8gPSAwCmNvbmZpZ3VyZToxMjg2MjogcmVzdWx0OiB5ZXMK Y29uZmlndXJlOjEyODYyOiBjaGVja2luZyBmb3IgZGJ1c192YWxpZGF0ZV9wYXRoCmNvbmZpZ3Vy ZToxMjg2MjogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1JL3Vzci9pbmNsdWRl L2xpYnJzdmctMi4wIC1JL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1JL3Vzci9pbmNsdWRl L2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2NhaXJvIC1JL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1J L3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5j bHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4w L2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6 IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91 c3IvaW5jbHVkZS9saWJkcm0gLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3Qu YyAtbFgxMSAgIC1sZGJ1cy0xID4mNSAKY29uZmlndXJlOjEyODYyOiAkPyA9IDAKY29uZmlndXJl OjEyODYyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTI4NjI6IGNoZWNraW5nIGZvciBkYnVzX3Zh bGlkYXRlX2ludGVyZmFjZQpjb25maWd1cmU6MTI4NjI6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1P MiAtcHRocmVhZCAtSS91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtSS91c3IvaW5jbHVkZS9nZGst cGl4YnVmLTIuMCAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9jYWlybyAt SS91c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2lu Y2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xp Yi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBl MiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3Iv bGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvbGliZHJtIC1JL3Vzci9pbmNsdWRl L2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxYMTEgICAtbGRidXMtMSA+JjUgCmNvbmZpZ3Vy ZToxMjg2MjogJD8gPSAwCmNvbmZpZ3VyZToxMjg2MjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEy ODYyOiBjaGVja2luZyBmb3IgZGJ1c192YWxpZGF0ZV9tZW1iZXIKY29uZmlndXJlOjEyODYyOiBn Y2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLUkvdXNyL2luY2x1ZGUvbGlicnN2Zy0y LjAgLUkvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYg LUkvdXNyL2luY2x1ZGUvY2Fpcm8gLUkvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLUkvdXNyL2luY2x1 ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZi dXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAt SS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2lu Y2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRl L2xpYmRybSAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1sWDExICAg LWxkYnVzLTEgPiY1IApjb25maWd1cmU6MTI4NjI6ICQ/ID0gMApjb25maWd1cmU6MTI4NjI6IHJl c3VsdDogeWVzCmNvbmZpZ3VyZToxMjg4MzogY2hlY2tpbmcgZm9yIEdTRVRUSU5HUwpjb25maWd1 cmU6MTI4OTA6ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzICJnaW8tMi4wID49 IDIuMjYiCmNvbmZpZ3VyZToxMjg5MzogJD8gPSAwCmNvbmZpZ3VyZToxMjkwNzogJFBLR19DT05G SUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgImdpby0yLjAgPj0gMi4yNiIKY29uZmlndXJlOjEy OTEwOiAkPyA9IDAKY29uZmlndXJlOjEyOTQ4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTI5NTg6 IGNoZWNraW5nIHdoZXRoZXIgR1NldHRpbmdzIGlzIGluIGdpbwpjb25maWd1cmU6MTI5Nzc6IGdj YyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtSS91c3IvaW5jbHVkZS9saWJyc3ZnLTIu MCAtSS91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAt SS91c3IvaW5jbHVkZS9jYWlybyAtSS91c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91c3IvaW5jbHVk ZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1 enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1J L3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5j bHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUv bGliZHJtIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1wdGhyZWFkIC1JL3Vzci9pbmNsdWRlL2ds aWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAgICAgICBjb25mdGVzdC5jIC1sWDEx ICAgLWxnaW8tMi4wIC1sZ29iamVjdC0yLjAgLWxnbGliLTIuMCA+JjUgCmNvbmZpZ3VyZToxMjk3 NzogJD8gPSAwCmNvbmZpZ3VyZToxMjk4NDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEzMDAzOiBj aGVja2luZyBmb3IgR0NPTkYKY29uZmlndXJlOjEzMDEwOiAkUEtHX0NPTkZJRyAtLWV4aXN0cyAt LXByaW50LWVycm9ycyAiZ2NvbmYtMi4wID49IDIuMTMiCmNvbmZpZ3VyZToxMzAxMzogJD8gPSAw CmNvbmZpZ3VyZToxMzAyNzogJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgImdj b25mLTIuMCA+PSAyLjEzIgpjb25maWd1cmU6MTMwMzA6ICQ/ID0gMApjb25maWd1cmU6MTMwNjg6 IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMzA4NTogY2hlY2tpbmcgZm9yIEdPQkpFQ1QKY29uZmln dXJlOjEzMDkyOiAkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyAiZ29iamVjdC0y LjAgPj0gMi4wIgpjb25maWd1cmU6MTMwOTU6ICQ/ID0gMApjb25maWd1cmU6MTMxMDk6ICRQS0df Q09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzICJnb2JqZWN0LTIuMCA+PSAyLjAiCmNvbmZp Z3VyZToxMzExMjogJD8gPSAwCmNvbmZpZ3VyZToxMzE1MDogcmVzdWx0OiB5ZXMKY29uZmlndXJl OjEzMTczOiBjaGVja2luZyBmb3IgbGdldGZpbGVjb24gaW4gLWxzZWxpbnV4CmNvbmZpZ3VyZTox MzE5ODogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1JL3Vzci9pbmNsdWRlL2xp YnJzdmctMi4wIC1JL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1JL3Vzci9pbmNsdWRlL2xp YnBuZzE2IC1JL3Vzci9pbmNsdWRlL2NhaXJvIC1JL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1JL3Vz ci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVk ZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2lu Y2x1ZGUgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1J L3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3Iv aW5jbHVkZS9saWJkcm0gLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAt bHNlbGludXggIC1sWDExICAgPiY1IAovdXNyL2Jpbi9sZDogY2Fubm90IGZpbmQgLWxzZWxpbnV4 CmNvbGxlY3QyOiBlcnJvcjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpjb25maWd1cmU6MTMx OTg6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5o ICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0Vf VEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjI1LjEiCnwgI2RlZmlu ZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JF UE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHA6 Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmluZSBQQUNLQUdFICJlbWFjcyIK fCAjZGVmaW5lIFZFUlNJT04gIjI1LjEiCnwgI2RlZmluZSBNQUlMX1VTRV9QT1AgMQp8ICNkZWZp bmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9UWlNFVCAxCnwgI2RlZmluZSBIQVZFX0ZD SE1PRCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LQVQgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNT QVQgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwg I2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBI QVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVf TUtPU1RFTVAgMQp8ICNkZWZpbmUgSEFWRV9QSVBFMiAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1Qg MQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwg I2RlZmluZSBIQVZFX1NUUlRPVU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZp bmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX1RJTUVHTSAxCnwgI2RlZmluZSBI QVZFX0ZVVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVTQVQgMQp8ICNkZWZpbmUgSEFWRV9G VVRJTUVOUyAxCnwgI2RlZmluZSBIQVZFX1VUSU1FTlNBVCAxCnwgI2RlZmluZSBIQVZFX0xVVElN RVMgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VDVVJF X0dFVEVOViAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQ RVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJf SCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8 ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAj ZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmlu ZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFS V0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9fVVNFX01J TkdXX0FOU0lfU1RESU8gMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAj ZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fVVNFXzY0X0JJVF9JTk9E RSAxCnwgI2RlZmluZSBTWVNURU1fVFlQRSAiZ251L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNf U09VTkRDQVJEX0ggMQp8ICNkZWZpbmUgSEFWRV9BTFNBIDEKfCAjZGVmaW5lIEhBVkVfU09VTkQg MQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1F X0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVm aW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmlu ZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhB VkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVf U1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5U X0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVD VF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0gg MQp8ICNkZWZpbmUgSEFWRV9QRVJTT05BTElUWV9MSU5VWDMyIDEKfCAjZGVmaW5lIEhBVkVfTElO VVhfU1lTSU5GTyAxCnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUgSEFW RV9URVJNX0ggMQp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9TWVNfU0lHTElTVCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUg SEFWRV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZFX0lGQUREUlNfSCAxCnwgI2RlZmluZSBIQVZF X1NUUlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZS X0hXQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2Rl ZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RS VUNUX0lGUkVRX0lGUl9BRERSIDEKfCAjZGVmaW5lIEhBVkVfTE9OR19GSUxFX05BTUVTIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1ZMSU1JVF9IIDEKfCAjZGVmaW5lIEhBVkVfREFUQV9TVEFSVCAxCnwg I2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2RlZmlu ZSBIQVZFX1BUSFJFQUQgMQp8ICNkZWZpbmUgSEFWRV9YS0IgMQp8ICNkZWZpbmUgSEFWRV9YUk1T RVREQVRBQkFTRSAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNPVVJDRVNUUklORyAxCnwgI2Rl ZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJPRlNDUkVFTiAxCnwgI2RlZmluZSBIQVZFX1gxMVI2IDEK fCAjZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVmaW5lIEhBVkVfWDExUjZfWElNIDEKfCAjZGVm aW5lIEhBVkVfUlNWRyAxCnwgI2RlZmluZSBIQVZFX0lNQUdFTUFHSUNLIDEKfCAjZGVmaW5lIEhB VkVfTUFHSUNLRVhQT1JUSU1BR0VQSVhFTFMgMQp8ICNkZWZpbmUgSEFWRV9NQUdJQ0tNRVJHRUlN QUdFTEFZRVJTIDEKfCAjZGVmaW5lIEhBVkVfREJVUyAxCnwgI2RlZmluZSBIQVZFX0RCVVNfV0FU Q0hfR0VUX1VOSVhfRkQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1RZUEVfSVNfVkFMSUQgMQp8ICNk ZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0JVU19OQU1FIDEKfCAjZGVmaW5lIEhBVkVfREJVU19W QUxJREFURV9QQVRIIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9JTlRFUkZBQ0UgMQp8 ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX01FTUJFUiAxCnwgI2RlZmluZSBIQVZFX0dTRVRU SU5HUyAxCnwgI2RlZmluZSBIQVZFX0dDT05GIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwg CnwgLyogT3ZlcnJpZGUgYW55IEdDQyBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJy b3IuCnwgICAgVXNlIGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2ggdGhlIHJldHVybiB0eXBl IG9mIGEgR0NDCnwgICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMgYXJndW1lbnQgcHJvdG90eXBlIHdv dWxkIHN0aWxsIGFwcGx5LiAgKi8KfCAjaWZkZWYgX19jcGx1c3BsdXMKfCBleHRlcm4gIkMiCnwg I2VuZGlmCnwgY2hhciBsZ2V0ZmlsZWNvbiAoKTsKfCBpbnQKfCBtYWluICgpCnwgewp8IHJldHVy biBsZ2V0ZmlsZWNvbiAoKTsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjEzMjA3 OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToxMzIyODogY2hlY2tpbmcgZm9yIExJQkdOVVRMUwpjb25m aWd1cmU6MTMyMzU6ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzICJnbnV0bHMg Pj0gMi42LjYiCmNvbmZpZ3VyZToxMzIzODogJD8gPSAwCmNvbmZpZ3VyZToxMzI1MjogJFBLR19D T05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgImdudXRscyA+PSAyLjYuNiIKY29uZmlndXJl OjEzMjU1OiAkPyA9IDAKY29uZmlndXJlOjEzMjkzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTMz MDQ6IGNoZWNraW5nIGZvciBMSUJHTlVUTFMzCmNvbmZpZ3VyZToxMzMxMTogJFBLR19DT05GSUcg LS1leGlzdHMgLS1wcmludC1lcnJvcnMgImdudXRscyA+PSAzLjAuMCIKY29uZmlndXJlOjEzMzE0 OiAkPyA9IDAKY29uZmlndXJlOjEzMzI4OiAkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVy cm9ycyAiZ251dGxzID49IDMuMC4wIgpjb25maWd1cmU6MTMzMzE6ICQ/ID0gMApjb25maWd1cmU6 MTMzNjk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMzQxNDogY2hlY2tpbmcgc3lzL2lub3RpZnku aCB1c2FiaWxpdHkKY29uZmlndXJlOjEzNDE0OiBnY2MgLWMgIC1nMyAtTzIgLXB0aHJlYWQgLUkv dXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLUkvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLUkv dXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvY2Fpcm8gLUkvdXNyL2luY2x1ZGUv cGl4bWFuLTEgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2 IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9s aWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1 ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9p bmNsdWRlIC1JL3Vzci9pbmNsdWRlL2xpYmRybSAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAg Y29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjEzNDE0OiAkPyA9IDAKY29uZmlndXJlOjEzNDE0OiBy ZXN1bHQ6IHllcwpjb25maWd1cmU6MTM0MTQ6IGNoZWNraW5nIHN5cy9pbm90aWZ5LmggcHJlc2Vu Y2UKY29uZmlndXJlOjEzNDE0OiBnY2MgLUUgICAgIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjEzNDE0 OiAkPyA9IDAKY29uZmlndXJlOjEzNDE0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTM0MTQ6IGNo ZWNraW5nIGZvciBzeXMvaW5vdGlmeS5oCmNvbmZpZ3VyZToxMzQxNDogcmVzdWx0OiB5ZXMKY29u ZmlndXJlOjEzNDIxOiBjaGVja2luZyBmb3IgaW5vdGlmeV9pbml0MQpjb25maWd1cmU6MTM0MjE6 IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtSS91c3IvaW5jbHVkZS9saWJyc3Zn LTIuMCAtSS91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtSS91c3IvaW5jbHVkZS9saWJwbmcx NiAtSS91c3IvaW5jbHVkZS9jYWlybyAtSS91c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91c3IvaW5j bHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFy ZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRl IC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3Iv aW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1 ZGUvbGliZHJtIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxYMTEg ICA+JjUgCmNvbmZpZ3VyZToxMzQyMTogJD8gPSAwCmNvbmZpZ3VyZToxMzQyMTogcmVzdWx0OiB5 ZXMKY29uZmlndXJlOjEzNzEwOiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLUkv dXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLUkvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLUkv dXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvY2Fpcm8gLUkvdXNyL2luY2x1ZGUv cGl4bWFuLTEgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2 IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9s aWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1 ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9p bmNsdWRlIC1JL3Vzci9pbmNsdWRlL2xpYmRybSAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAg ICBjb25mdGVzdC5jIC1sWDExICAgPiY1IApjb25mdGVzdC5jOjEzMDozMDogZmF0YWwgZXJyb3I6 IFgxMS9YYXczZC9TaW1wbGUuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQogI2luY2x1ZGUg PFgxMS9YYXczZC9TaW1wbGUuaD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgpjb21w aWxhdGlvbiB0ZXJtaW5hdGVkLgpjb25maWd1cmU6MTM3MTA6ICQ/ID0gMQpjb25maWd1cmU6IGZh aWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05B TUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmlu ZSBQQUNLQUdFX1ZFUlNJT04gIjI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVt YWNzIDI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUu b3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHA6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9l bWFjcy8iCnwgI2RlZmluZSBQQUNLQUdFICJlbWFjcyIKfCAjZGVmaW5lIFZFUlNJT04gIjI1LjEi CnwgI2RlZmluZSBNQUlMX1VTRV9QT1AgMQp8ICNkZWZpbmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZp bmUgSEFWRV9UWlNFVCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX1JF QURMSU5LQVQgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9GQ05U TCAxCnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8 ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2Rl ZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfTUtPU1RFTVAgMQp8ICNkZWZpbmUgSEFW RV9QSVBFMiAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElO SyAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX1NUUlRPVU1BWCAx CnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwg I2RlZmluZSBIQVZFX1RJTUVHTSAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVMgMQp8ICNkZWZpbmUg SEFWRV9GVVRJTUVTQVQgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVOUyAxCnwgI2RlZmluZSBIQVZF X1VUSU1FTlNBVCAxCnwgI2RlZmluZSBIQVZFX0xVVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9HRVRE VEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VDVVJFX0dFVEVOViAxCnwgI2RlZmluZSBTVERD X0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklO R19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0gg MQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8 ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2Rl ZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5l IF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9fVVNFX01JTkdXX0FOU0lfU1RESU8gMQp8ICNkZWZp bmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEK fCAjZGVmaW5lIF9EQVJXSU5fVVNFXzY0X0JJVF9JTk9ERSAxCnwgI2RlZmluZSBTWVNURU1fVFlQ RSAiZ251L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJEX0ggMQp8ICNkZWZpbmUg SEFWRV9BTFNBIDEKfCAjZGVmaW5lIEhBVkVfU09VTkQgMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lT SU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VS Q0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0Rf SCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAx CnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUg SEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUg SEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFW RV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRU WVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QRVJTT05B TElUWV9MSU5VWDMyIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5GTyAxCnwgI2RlZmluZSBM SU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUgSEFWRV9URVJNX0ggMQp8ICNkZWZpbmUgVElN RV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TWVNfU0lHTElTVCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwgI2RlZmlu ZSBIQVZFX0lGQUREUlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxBR1Mg MQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwgI2RlZmluZSBIQVZF X1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9J RlJfQlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERSIDEKfCAj ZGVmaW5lIEhBVkVfTE9OR19GSUxFX05BTUVTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1ZMSU1JVF9I IDEKfCAjZGVmaW5lIEhBVkVfREFUQV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpF IDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQUQgMQp8ICNkZWZp bmUgSEFWRV9YS0IgMQp8ICNkZWZpbmUgSEFWRV9YUk1TRVREQVRBQkFTRSAxCnwgI2RlZmluZSBI QVZFX1hTQ1JFRU5SRVNPVVJDRVNUUklORyAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJP RlNDUkVFTiAxCnwgI2RlZmluZSBIQVZFX1gxMVI2IDEKfCAjZGVmaW5lIEhBVkVfWF9JMThOIDEK fCAjZGVmaW5lIEhBVkVfWDExUjZfWElNIDEKfCAjZGVmaW5lIEhBVkVfUlNWRyAxCnwgI2RlZmlu ZSBIQVZFX0lNQUdFTUFHSUNLIDEKfCAjZGVmaW5lIEhBVkVfTUFHSUNLRVhQT1JUSU1BR0VQSVhF TFMgMQp8ICNkZWZpbmUgSEFWRV9NQUdJQ0tNRVJHRUlNQUdFTEFZRVJTIDEKfCAjZGVmaW5lIEhB VkVfREJVUyAxCnwgI2RlZmluZSBIQVZFX0RCVVNfV0FUQ0hfR0VUX1VOSVhfRkQgMQp8ICNkZWZp bmUgSEFWRV9EQlVTX1RZUEVfSVNfVkFMSUQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRF X0JVU19OQU1FIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9QQVRIIDEKfCAjZGVmaW5l IEhBVkVfREJVU19WQUxJREFURV9JTlRFUkZBQ0UgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElE QVRFX01FTUJFUiAxCnwgI2RlZmluZSBIQVZFX0dTRVRUSU5HUyAxCnwgI2RlZmluZSBIQVZFX0dD T05GIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTMyAxCnwg I2RlZmluZSBIQVZFX0lOT1RJRlkgMQp8ICNkZWZpbmUgVVNFX0ZJTEVfTk9USUZZIDEKfCAvKiBl bmQgY29uZmRlZnMuaC4gICovCnwgCnwgI2luY2x1ZGUgPFgxMS9JbnRyaW5zaWMuaD4KfCAjaW5j bHVkZSA8WDExL1hhdzNkL1NpbXBsZS5oPgp8IGludAp8IG1haW4gKCkKfCB7CnwgCnwgICA7Cnwg ICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToxMzc3NTogY2hlY2tpbmcgZm9yIHhhdzNkCmNvbmZp Z3VyZToxMzc3NzogcmVzdWx0OiBubwpjb25maWd1cmU6MTM3Nzk6IGNoZWNraW5nIGZvciBsaWJY YXcKY29uZmlndXJlOjEzNzk3OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLUkv dXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLUkvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLUkv dXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvY2Fpcm8gLUkvdXNyL2luY2x1ZGUv cGl4bWFuLTEgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2 IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9s aWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1 ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9p bmNsdWRlIC1JL3Vzci9pbmNsdWRlL2xpYmRybSAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAg ICBjb25mdGVzdC5jIC1sWDExICAgPiY1IApjb25maWd1cmU6MTM3OTc6ICQ/ID0gMApjb25maWd1 cmU6MTM4MDc6IHJlc3VsdDogeWVzOyB1c2luZyBMdWNpZCB0b29sa2l0CmNvbmZpZ3VyZToxMzgy ODogY2hlY2tpbmcgWDExIHRvb2xraXQgdmVyc2lvbgpjb25maWd1cmU6MTM4NDc6IGdjYyAtbyBj b25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtSS91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtSS91 c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3Iv aW5jbHVkZS9jYWlybyAtSS91c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91c3IvaW5jbHVkZS9mcmVl dHlwZTIgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkv dXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9p bmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9n bGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvbGliZHJt IC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxYMTEgICA+JjUgCmNv bmZpZ3VyZToxMzg0NzogJD8gPSAwCmNvbmZpZ3VyZToxMzg1ODogcmVzdWx0OiA2IG9yIG5ld2Vy CmNvbmZpZ3VyZToxMzg3OTogY2hlY2tpbmcgZm9yIGxpYnJhcnkgY29udGFpbmluZyBYbXVDb252 ZXJ0U3RhbmRhcmRTZWxlY3Rpb24KY29uZmlndXJlOjEzOTEwOiBnY2MgLW8gY29uZnRlc3QgIC1n MyAtTzIgLXB0aHJlYWQgLUkvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLUkvdXNyL2luY2x1ZGUv Z2RrLXBpeGJ1Zi0yLjAgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvY2Fp cm8gLUkvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vz ci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRl L2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9mcmVl dHlwZTIgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkv dXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2xpYmRybSAtSS91c3IvaW5j bHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1sWDExICAgPiY1IAovdG1wL2NjOXFDckI2 Lm86IEluIGZ1bmN0aW9uIGBtYWluJzoKL2hvbWUvZGVlY2gvRG93bmxvYWRzL2VtYWNzLTI1LjEv Y29uZnRlc3QuYzoxNDA6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYFhtdUNvbnZlcnRTdGFuZGFy ZFNlbGVjdGlvbicKY29sbGVjdDI6IGVycm9yOiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVzCmNv bmZpZ3VyZToxMzkxMDogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8q IGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8ICNkZWZp bmUgUEFDS0FHRV9UQVJOQU1FICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMjUu MSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1hY3MgMjUuMSIKfCAjZGVmaW5lIFBB Q0tBR0VfQlVHUkVQT1JUICJidWctZ251LWVtYWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdF X1VSTCAiaHR0cDovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIFBBQ0tB R0UgImVtYWNzIgp8ICNkZWZpbmUgVkVSU0lPTiAiMjUuMSIKfCAjZGVmaW5lIE1BSUxfVVNFX1BP UCAxCnwgI2RlZmluZSBIQVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1RaU0VUIDEKfCAjZGVm aW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBI QVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRP UEVORElSIDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEK fCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNk ZWZpbmUgSEFWRV9NS09TVEVNUCAxCnwgI2RlZmluZSBIQVZFX1BJUEUyIDEKfCAjZGVmaW5lIEhB VkVfUFNFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfU1RS VE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9VTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElO SyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfVElNRUdNIDEK fCAjZGVmaW5lIEhBVkVfRlVUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVNBVCAxCnwgI2Rl ZmluZSBIQVZFX0ZVVElNRU5TIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVOU0FUIDEKfCAjZGVmaW5l IEhBVkVfTFVUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUg SEFWRV9TRUNVUkVfR0VURU5WIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBI QVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBI QVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9N RU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZ UEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9I IDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAj ZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZp bmUgX19VU0VfTUlOR1dfQU5TSV9TVERJTyAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1B TlRJQ1MgMQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9VU0Vf NjRfQklUX0lOT0RFIDEKfCAjZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmlu ZSBIQVZFX1NZU19TT1VORENBUkRfSCAxCnwgI2RlZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUg SEFWRV9TT1VORCAxCnwgI2RlZmluZSBIQVZFX1NZU19TWVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFW RV9QVFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRN UF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElC X0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9I IDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8 ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX0VYRUNJTkZPX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVERJT19FWFRfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUg SEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhB VkVfVVRJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BFUlNPTkFMSVRZX0xJTlVYMzIgMQp8ICNkZWZp bmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwg I2RlZmluZSBIQVZFX1RFUk1fSCAxCnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX1NZU19TSUdMSVNUIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAx CnwgI2RlZmluZSBIQVZFX05FVF9JRl9IIDEKfCAjZGVmaW5lIEhBVkVfSUZBRERSU19IIDEKfCAj ZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9GTEFHUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVD VF9JRlJFUV9JRlJfSFdBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9ORVRN QVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9CUk9BREFERFIgMQp8ICNkZWZp bmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0FERFIgMQp8ICNkZWZpbmUgSEFWRV9MT05HX0ZJTEVf TkFNRVMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVkxJTUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9EQVRB X1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9NTUFQ IDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRCAxCnwgI2RlZmluZSBIQVZFX1hLQiAxCnwgI2RlZmlu ZSBIQVZFX1hSTVNFVERBVEFCQVNFIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RS SU5HIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhB VkVfWDExUjYgMQp8ICNkZWZpbmUgSEFWRV9YX0kxOE4gMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9Y SU0gMQp8ICNkZWZpbmUgSEFWRV9SU1ZHIDEKfCAjZGVmaW5lIEhBVkVfSU1BR0VNQUdJQ0sgMQp8 ICNkZWZpbmUgSEFWRV9NQUdJQ0tFWFBPUlRJTUFHRVBJWEVMUyAxCnwgI2RlZmluZSBIQVZFX01B R0lDS01FUkdFSU1BR0VMQVlFUlMgMQp8ICNkZWZpbmUgSEFWRV9EQlVTIDEKfCAjZGVmaW5lIEhB VkVfREJVU19XQVRDSF9HRVRfVU5JWF9GRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVFlQRV9JU19W QUxJRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfQlVTX05BTUUgMQp8ICNkZWZpbmUg SEFWRV9EQlVTX1ZBTElEQVRFX1BBVEggMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0lO VEVSRkFDRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfTUVNQkVSIDEKfCAjZGVmaW5l IEhBVkVfR1NFVFRJTkdTIDEKfCAjZGVmaW5lIEhBVkVfR0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9H TlVUTFMgMQp8ICNkZWZpbmUgSEFWRV9HTlVUTFMzIDEKfCAjZGVmaW5lIEhBVkVfSU5PVElGWSAx CnwgI2RlZmluZSBVU0VfRklMRV9OT1RJRlkgMQp8ICNkZWZpbmUgSEFWRV9YMTFYVFI2IDEKfCAv KiBlbmQgY29uZmRlZnMuaC4gICovCnwgCnwgLyogT3ZlcnJpZGUgYW55IEdDQyBpbnRlcm5hbCBw cm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuCnwgICAgVXNlIGNoYXIgYmVjYXVzZSBpbnQgbWln aHQgbWF0Y2ggdGhlIHJldHVybiB0eXBlIG9mIGEgR0NDCnwgICAgYnVpbHRpbiBhbmQgdGhlbiBp dHMgYXJndW1lbnQgcHJvdG90eXBlIHdvdWxkIHN0aWxsIGFwcGx5LiAgKi8KfCAjaWZkZWYgX19j cGx1c3BsdXMKfCBleHRlcm4gIkMiCnwgI2VuZGlmCnwgY2hhciBYbXVDb252ZXJ0U3RhbmRhcmRT ZWxlY3Rpb24gKCk7CnwgaW50CnwgbWFpbiAoKQp8IHsKfCByZXR1cm4gWG11Q29udmVydFN0YW5k YXJkU2VsZWN0aW9uICgpOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MTM5MTA6 IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtSS91c3IvaW5jbHVkZS9saWJyc3Zn LTIuMCAtSS91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtSS91c3IvaW5jbHVkZS9saWJwbmcx NiAtSS91c3IvaW5jbHVkZS9jYWlybyAtSS91c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91c3IvaW5j bHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFy ZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRl IC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3Iv aW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1 ZGUvbGliZHJtIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxYbXUg LWxYdCAtbFNNIC1sSUNFIC1sWDExICAgPiY1IApjb25maWd1cmU6MTM5MTA6ICQ/ID0gMApjb25m aWd1cmU6MTM5Mjc6IHJlc3VsdDogLWxYbXUKY29uZmlndXJlOjE0MTMwOiBnY2MgLWMgIC1nMyAt TzIgLXB0aHJlYWQgLUkvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLUkvdXNyL2luY2x1ZGUvZ2Rr LXBpeGJ1Zi0yLjAgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvY2Fpcm8g LUkvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9p bmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2ds aWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9mcmVldHlw ZTIgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNy L2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2xpYmRybSAtSS91c3IvaW5jbHVk ZS9saWJwbmcxNiAgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjE0MTMwOiAkPyA9IDAKY29u ZmlndXJlOjE0MTc5OiBnY2MgLWMgIC1nMyAtTzIgLXB0aHJlYWQgLUkvdXNyL2luY2x1ZGUvbGli cnN2Zy0yLjAgLUkvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLUkvdXNyL2luY2x1ZGUvbGli cG5nMTYgLUkvdXNyL2luY2x1ZGUvY2Fpcm8gLUkvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLUkvdXNy L2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRl L2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5j bHVkZSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkv dXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9p bmNsdWRlL2xpYmRybSAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtLXBlZGFudGljLWVycm9ycyAg ICAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzogSW4gZnVuY3Rpb24gJ21haW4nOgpjb25mdGVz dC5jOjE1MDo3MjogZXJyb3I6IHBhc3NpbmcgYXJndW1lbnQgNSBvZiAnWFJlZ2lzdGVySU1JbnN0 YW50aWF0ZUNhbGxiYWNrJyBmcm9tIGluY29tcGF0aWJsZSBwb2ludGVyIHR5cGUgWy1XaW5jb21w YXRpYmxlLXBvaW50ZXItdHlwZXNdCiAodm9pZClYUmVnaXN0ZXJJTUluc3RhbnRpYXRlQ2FsbGJh Y2soZGlzcGxheSwgZGIsIHJlc19uYW1lLCByZXNfY2xhc3MsIGNhbGxiYWNrLAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBefn5+fn5+fgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gY29uZnRlc3QuYzoxMzM6MDoKL3Vz ci9pbmNsdWRlL1gxMS9YbGliLmg6MzkzMToxMzogbm90ZTogZXhwZWN0ZWQgJ1hJRFByb2Mge2Fr YSB2b2lkICgqKShzdHJ1Y3QgX1hEaXNwbGF5ICosIGNoYXIgKiwgY2hhciAqKX0nIGJ1dCBhcmd1 bWVudCBpcyBvZiB0eXBlICdYSU1Qcm9jIHtha2Egdm9pZCAoKikoc3RydWN0IF9YSU0gKiwgY2hh ciAqLCBjaGFyICopfScKIGV4dGVybiBCb29sIFhSZWdpc3RlcklNSW5zdGFudGlhdGVDYWxsYmFj aygKICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgpjb25mdGVzdC5j OjE1MTo0OiBlcnJvcjogcGFzc2luZyBhcmd1bWVudCA2IG9mICdYUmVnaXN0ZXJJTUluc3RhbnRp YXRlQ2FsbGJhY2snIGZyb20gaW5jb21wYXRpYmxlIHBvaW50ZXIgdHlwZSBbLVdpbmNvbXBhdGli bGUtcG9pbnRlci10eXBlc10KICAgIGNsaWVudF9kYXRhKTsKICAgIF5+fn5+fn5+fn5+CkluIGZp bGUgaW5jbHVkZWQgZnJvbSBjb25mdGVzdC5jOjEzMzowOgovdXNyL2luY2x1ZGUvWDExL1hsaWIu aDozOTMxOjEzOiBub3RlOiBleHBlY3RlZCAnWFBvaW50ZXIge2FrYSBjaGFyICp9JyBidXQgYXJn dW1lbnQgaXMgb2YgdHlwZSAnY2hhciAqKicKIGV4dGVybiBCb29sIFhSZWdpc3RlcklNSW5zdGFu dGlhdGVDYWxsYmFjaygKICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fgpjb25maWd1cmU6MTQxNzk6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoK fCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAj ZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04g IjI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDI1LjEiCnwgI2RlZmlu ZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFD S0FHRV9VUkwgImh0dHA6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmluZSBQ QUNLQUdFICJlbWFjcyIKfCAjZGVmaW5lIFZFUlNJT04gIjI1LjEiCnwgI2RlZmluZSBNQUlMX1VT RV9QT1AgMQp8ICNkZWZpbmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9UWlNFVCAxCnwg I2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LQVQgMQp8ICNkZWZp bmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZF X0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lO QyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEK fCAjZGVmaW5lIEhBVkVfTUtPU1RFTVAgMQp8ICNkZWZpbmUgSEFWRV9QSVBFMiAxCnwgI2RlZmlu ZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZF X1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX1NUUlRPVU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZ TUxJTksgMQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX1RJTUVH TSAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVTQVQgMQp8 ICNkZWZpbmUgSEFWRV9GVVRJTUVOUyAxCnwgI2RlZmluZSBIQVZFX1VUSU1FTlNBVCAxCnwgI2Rl ZmluZSBIQVZFX0xVVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVm aW5lIEhBVkVfU0VDVVJFX0dFVEVOViAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZp bmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZp bmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhB VkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9J TlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklT VERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAx CnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAj ZGVmaW5lIF9fVVNFX01JTkdXX0FOU0lfU1RESU8gMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURf U0VNQU5USUNTIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5f VVNFXzY0X0JJVF9JTk9ERSAxCnwgI2RlZmluZSBTWVNURU1fVFlQRSAiZ251L2xpbnV4Igp8ICNk ZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJEX0ggMQp8ICNkZWZpbmUgSEFWRV9BTFNBIDEKfCAjZGVm aW5lIEhBVkVfU09VTkQgMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5l IEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZF X1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBIQVZFX1NU RExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFS QU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9I IDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEK fCAjZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVm aW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmlu ZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QRVJTT05BTElUWV9MSU5VWDMyIDEKfCAj ZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5GTyAxCnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQg MQp8ICNkZWZpbmUgSEFWRV9URVJNX0ggMQp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9TWVNfU0lHTElTVCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlU X0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZFX0lGQUREUlNfSCAx CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9T VFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJf TkVUTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJPQURBRERSIDEKfCAj ZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERSIDEKfCAjZGVmaW5lIEhBVkVfTE9OR19G SUxFX05BTUVTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1ZMSU1JVF9IIDEKfCAjZGVmaW5lIEhBVkVf REFUQV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVf TU1BUCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQUQgMQp8ICNkZWZpbmUgSEFWRV9YS0IgMQp8ICNk ZWZpbmUgSEFWRV9YUk1TRVREQVRBQkFTRSAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNPVVJD RVNUUklORyAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJPRlNDUkVFTiAxCnwgI2RlZmlu ZSBIQVZFX1gxMVI2IDEKfCAjZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVmaW5lIEhBVkVfWDEx UjZfWElNIDEKfCAjZGVmaW5lIEhBVkVfUlNWRyAxCnwgI2RlZmluZSBIQVZFX0lNQUdFTUFHSUNL IDEKfCAjZGVmaW5lIEhBVkVfTUFHSUNLRVhQT1JUSU1BR0VQSVhFTFMgMQp8ICNkZWZpbmUgSEFW RV9NQUdJQ0tNRVJHRUlNQUdFTEFZRVJTIDEKfCAjZGVmaW5lIEhBVkVfREJVUyAxCnwgI2RlZmlu ZSBIQVZFX0RCVVNfV0FUQ0hfR0VUX1VOSVhfRkQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1RZUEVf SVNfVkFMSUQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0JVU19OQU1FIDEKfCAjZGVm aW5lIEhBVkVfREJVU19WQUxJREFURV9QQVRIIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFU RV9JTlRFUkZBQ0UgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX01FTUJFUiAxCnwgI2Rl ZmluZSBIQVZFX0dTRVRUSU5HUyAxCnwgI2RlZmluZSBIQVZFX0dDT05GIDEKfCAjZGVmaW5lIEhB VkVfR05VVExTIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTMyAxCnwgI2RlZmluZSBIQVZFX0lOT1RJ RlkgMQp8ICNkZWZpbmUgVVNFX0ZJTEVfTk9USUZZIDEKfCAjZGVmaW5lIEhBVkVfWDExWFRSNiAx CnwgI2RlZmluZSBVU0VfVE9PTEtJVF9TQ1JPTExfQkFSUyAxCnwgI2RlZmluZSBIQVZFX1hJTSAx CnwgI2RlZmluZSBVU0VfWElNIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgCnwgI2luY2x1 ZGUgPFgxMS9YbGliLmg+CnwgI2luY2x1ZGUgPFgxMS9YcmVzb3VyY2UuaD4KfCBpbnQKfCBtYWlu ICgpCnwgewp8IERpc3BsYXkgKmRpc3BsYXk7CnwgWHJtRGF0YWJhc2UgZGI7CnwgY2hhciAqcmVz X25hbWU7CnwgY2hhciAqcmVzX2NsYXNzOwp8IFhJTVByb2MgIGNhbGxiYWNrOwp8IFhQb2ludGVy ICpjbGllbnRfZGF0YTsKfCAjaWZuZGVmIF9fR05VQ19fCnwgLyogSWYgd2UncmUgbm90IHVzaW5n IEdDQywgaXQncyBwcm9iYWJseSBub3QgWEZyZWU4NiwgYW5kIHRoaXMgaXMKfCAgICBwcm9iYWJs eSByaWdodCwgYnV0IHdlIGNhbid0IHVzZSBzb21ldGhpbmcgbGlrZSAtLXBlZGFudGljLWVycm9y cy4gICovCnwgZXh0ZXJuIEJvb2wgWFJlZ2lzdGVySU1JbnN0YW50aWF0ZUNhbGxiYWNrKERpc3Bs YXkqLCBYcm1EYXRhYmFzZSwgY2hhciosCnwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGNoYXIqLCBYSU1Qcm9jLCBYUG9pbnRlciopOwp8ICNlbmRpZgp8ICh2b2lk KVhSZWdpc3RlcklNSW5zdGFudGlhdGVDYWxsYmFjayhkaXNwbGF5LCBkYiwgcmVzX25hbWUsIHJl c19jbGFzcywgY2FsbGJhY2ssCnwgICAgY2xpZW50X2RhdGEpOwp8ICAgOwp8ICAgcmV0dXJuIDA7 CnwgfQpjb25maWd1cmU6MTQyMDg6IGNoZWNraW5nIGZvciBGT05UQ09ORklHCmNvbmZpZ3VyZTox NDIxNTogJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgImZvbnRjb25maWcgPj0g Mi4yLjAiCmNvbmZpZ3VyZToxNDIxODogJD8gPSAwCmNvbmZpZ3VyZToxNDIzMjogJFBLR19DT05G SUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgImZvbnRjb25maWcgPj0gMi4yLjAiCmNvbmZpZ3Vy ZToxNDIzNTogJD8gPSAwCmNvbmZpZ3VyZToxNDI3MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0 Mjg1OiBjaGVja2luZyBmb3IgWEZUCmNvbmZpZ3VyZToxNDI5MjogJFBLR19DT05GSUcgLS1leGlz dHMgLS1wcmludC1lcnJvcnMgInhmdCA+PSAwLjEzLjAiCmNvbmZpZ3VyZToxNDI5NTogJD8gPSAw CmNvbmZpZ3VyZToxNDMwOTogJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgInhm dCA+PSAwLjEzLjAiCmNvbmZpZ3VyZToxNDMxMjogJD8gPSAwCmNvbmZpZ3VyZToxNDM1MDogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjE0MzU4OiBjaGVja2luZyBmb3IgWFJlbmRlclF1ZXJ5RXh0ZW5z aW9uIGluIC1sWHJlbmRlcgpjb25maWd1cmU6MTQzODM6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1P MiAtcHRocmVhZCAtSS91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtSS91c3IvaW5jbHVkZS9nZGst cGl4YnVmLTIuMCAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9jYWlybyAt SS91c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2lu Y2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xp Yi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBl MiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3Iv bGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvbGliZHJtIC1JL3Vzci9pbmNsdWRl L2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxYcmVuZGVyICAtbFgxMSAgID4mNSAKY29uZmln dXJlOjE0MzgzOiAkPyA9IDAKY29uZmlndXJlOjE0MzkyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6 MTQ0MDY6IGNoZWNraW5nIGZvciBYMTEvWGZ0L1hmdC5oCmNvbmZpZ3VyZToxNDQwNjogZ2NjIC1j ICAtZzMgLU8yIC1wdGhyZWFkIC1JL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1JL3Vzci9pbmNs dWRlL2dkay1waXhidWYtMi4wIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRl L2NhaXJvIC1JL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAt SS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5j bHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUv ZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4w IC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9saWJkcm0gLUkvdXNy L2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRl L2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4w IC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkv dXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1 ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlICAgICAtSS91c3IvaW5jbHVk ZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1 enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1J L3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5j bHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4w L2luY2x1ZGUgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjE0NDA2OiAkPyA9IDAKY29uZmlndXJl OjE0NDA2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQ0MDk6IGNoZWNraW5nIGZvciBYZnRGb250 T3BlbiBpbiAtbFhmdApjb25maWd1cmU6MTQ0MzQ6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAt cHRocmVhZCAtSS91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtSS91c3IvaW5jbHVkZS9nZGstcGl4 YnVmLTIuMCAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9jYWlybyAtSS91 c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1 ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0y LjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAt SS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGli L2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvbGliZHJtIC1JL3Vzci9pbmNsdWRlL2xp YnBuZzE2IC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAt SS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGli L2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRl L2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4w IC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAgICAgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUy IC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9p bmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVk ZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1 enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlICAg Y29uZnRlc3QuYyAtbFhmdCAtbFhyZW5kZXIgLWxYZnQgLWxYcmVuZGVyIC1sWGZ0IC1sWDExICAg PiY1IApjb25maWd1cmU6MTQ0MzQ6ICQ/ID0gMApjb25maWd1cmU6MTQ0NDM6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZToxNDQ3NDogY2hlY2tpbmcgZm9yIEZSRUVUWVBFCmNvbmZpZ3VyZToxNDQ4MTog JFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgImZyZWV0eXBlMiIKY29uZmlndXJl OjE0NDg0OiAkPyA9IDAKY29uZmlndXJlOjE0NDk4OiAkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXBy aW50LWVycm9ycyAiZnJlZXR5cGUyIgpjb25maWd1cmU6MTQ1MDE6ICQ/ID0gMApjb25maWd1cmU6 MTQ1Mzk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDU1NjogY2hlY2tpbmcgZm9yIExJQk9URgpj b25maWd1cmU6MTQ1NjM6ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzICJsaWJv dGYiCmNvbmZpZ3VyZToxNDU2NjogJD8gPSAwCmNvbmZpZ3VyZToxNDU4MDogJFBLR19DT05GSUcg LS1leGlzdHMgLS1wcmludC1lcnJvcnMgImxpYm90ZiIKY29uZmlndXJlOjE0NTgzOiAkPyA9IDAK Y29uZmlndXJlOjE0NjIxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQ2MzA6IGNoZWNraW5nIGZv ciBPVEZfZ2V0X3ZhcmlhdGlvbl9nbHlwaHMgaW4gLWxvdGYKY29uZmlndXJlOjE0NjU1OiBnY2Mg LW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLUkvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAg LUkvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkv dXNyL2luY2x1ZGUvY2Fpcm8gLUkvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLUkvdXNyL2luY2x1ZGUv ZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6 IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91 c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1 ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2xp YmRybSAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1sb3RmICAtbFgx MSAgID4mNSAKY29uZmlndXJlOjE0NjU1OiAkPyA9IDAKY29uZmlndXJlOjE0NjY0OiByZXN1bHQ6 IHllcwpjb25maWd1cmU6MTQ2ODY6IGNoZWNraW5nIGZvciBNMTdOX0ZMVApjb25maWd1cmU6MTQ2 OTM6ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzICJtMTduLWZsdCIKY29uZmln dXJlOjE0Njk2OiAkPyA9IDAKY29uZmlndXJlOjE0NzEwOiAkUEtHX0NPTkZJRyAtLWV4aXN0cyAt LXByaW50LWVycm9ycyAibTE3bi1mbHQiCmNvbmZpZ3VyZToxNDcxMzogJD8gPSAwCmNvbmZpZ3Vy ZToxNDc1MTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0ODc0OiBjaGVja2luZyBYMTEvWGxpYi14 Y2IuaCB1c2FiaWxpdHkKY29uZmlndXJlOjE0ODc0OiBnY2MgLWMgIC1nMyAtTzIgLXB0aHJlYWQg LUkvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLUkvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAg LUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvY2Fpcm8gLUkvdXNyL2luY2x1 ZGUvcGl4bWFuLTEgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2xpYnBu ZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vz ci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2lu Y2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIu MC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2xpYmRybSAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAg ICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjE0ODc0OiAkPyA9IDAKY29uZmlndXJlOjE0ODc0 OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQ4NzQ6IGNoZWNraW5nIFgxMS9YbGliLXhjYi5oIHBy ZXNlbmNlCmNvbmZpZ3VyZToxNDg3NDogZ2NjIC1FICAgICBjb25mdGVzdC5jCmNvbmZpZ3VyZTox NDg3NDogJD8gPSAwCmNvbmZpZ3VyZToxNDg3NDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0ODc0 OiBjaGVja2luZyBmb3IgWDExL1hsaWIteGNiLmgKY29uZmlndXJlOjE0ODc0OiByZXN1bHQ6IHll cwpjb25maWd1cmU6MTQ4NzY6IGNoZWNraW5nIGZvciB4Y2JfdHJhbnNsYXRlX2Nvb3JkaW5hdGVz IGluIC1seGNiCmNvbmZpZ3VyZToxNDkwMTogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhy ZWFkIC1JL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1JL3Vzci9pbmNsdWRlL2dkay1waXhidWYt Mi4wIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2NhaXJvIC1JL3Vzci9p bmNsdWRlL3BpeG1hbi0xIC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9s aWJwbmcxNiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAt SS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vz ci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xp Yi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9saWJkcm0gLUkvdXNyL2luY2x1ZGUvbGlicG5n MTYgICAgICAgY29uZnRlc3QuYyAtbHhjYiAgLWxYMTEgICA+JjUgCmNvbmZpZ3VyZToxNDkwMTog JD8gPSAwCmNvbmZpZ3VyZToxNDkxMDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0OTIwOiBjaGVj a2luZyBmb3IgWEdldFhDQkNvbm5lY3Rpb24gaW4gLWxYMTEteGNiCmNvbmZpZ3VyZToxNDk0NTog Z2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1JL3Vzci9pbmNsdWRlL2xpYnJzdmct Mi4wIC1JL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2 IC1JL3Vzci9pbmNsdWRlL2NhaXJvIC1JL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1JL3Vzci9pbmNs dWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9oYXJm YnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUg LUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9p bmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVk ZS9saWJkcm0gLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAtbFgxMS14 Y2IgIC1sWDExICAgPiY1IApjb25maWd1cmU6MTQ5NDU6ICQ/ID0gMApjb25maWd1cmU6MTQ5NTQ6 IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNTA3MzogY2hlY2tpbmcgWDExL3hwbS5oIHVzYWJpbGl0 eQpjb25maWd1cmU6MTUwNzM6IGdjYyAtYyAgLWczIC1PMiAtcHRocmVhZCAtSS91c3IvaW5jbHVk ZS9saWJyc3ZnLTIuMCAtSS91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtSS91c3IvaW5jbHVk ZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9jYWlybyAtSS91c3IvaW5jbHVkZS9waXhtYW4tMSAt SS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2lu Y2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIu MC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6 eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkv dXNyL2luY2x1ZGUvbGliZHJtIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICBjb25mdGVzdC5j ID4mNQpjb25maWd1cmU6MTUwNzM6ICQ/ID0gMApjb25maWd1cmU6MTUwNzM6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZToxNTA3MzogY2hlY2tpbmcgWDExL3hwbS5oIHByZXNlbmNlCmNvbmZpZ3VyZTox NTA3MzogZ2NjIC1FICAgICBjb25mdGVzdC5jCmNvbmZpZ3VyZToxNTA3MzogJD8gPSAwCmNvbmZp Z3VyZToxNTA3MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE1MDczOiBjaGVja2luZyBmb3IgWDEx L3hwbS5oCmNvbmZpZ3VyZToxNTA3MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE1MDc1OiBjaGVj a2luZyBmb3IgWHBtUmVhZEZpbGVUb1BpeG1hcCBpbiAtbFhwbQpjb25maWd1cmU6MTUxMDA6IGdj YyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtSS91c3IvaW5jbHVkZS9saWJyc3ZnLTIu MCAtSS91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAt SS91c3IvaW5jbHVkZS9jYWlybyAtSS91c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91c3IvaW5jbHVk ZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1 enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1J L3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5j bHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUv bGliZHJtIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxYcG0gLWxY MTEgLWxYMTEgICA+JjUgCmNvbmZpZ3VyZToxNTEwMDogJD8gPSAwCmNvbmZpZ3VyZToxNTEwOTog cmVzdWx0OiB5ZXMKY29uZmlndXJlOjE1MTE5OiBjaGVja2luZyBmb3IgWHBtUmV0dXJuQWxsb2NQ aXhlbHMgcHJlcHJvY2Vzc29yIGRlZmluZQpjb25maWd1cmU6MTUxMzk6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZToxNTE4OTogY2hlY2tpbmcgZm9yIGpwZWdsaWIgNmIgb3IgbGF0ZXIKY29uZmlndXJl OjE1MjIyOiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLUkvdXNyL2luY2x1ZGUv bGlicnN2Zy0yLjAgLUkvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLUkvdXNyL2luY2x1ZGUv bGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvY2Fpcm8gLUkvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLUkv dXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNs dWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAv aW5jbHVkZSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enog LUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vz ci9pbmNsdWRlL2xpYmRybSAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5j IC1sWDExICAgPiY1IAovdG1wL2NjdG93V1BULm86IEluIGZ1bmN0aW9uIGBtYWluJzoKL2hvbWUv ZGVlY2gvRG93bmxvYWRzL2VtYWNzLTI1LjEvY29uZnRlc3QuYzoxNTE6IHVuZGVmaW5lZCByZWZl cmVuY2UgdG8gYGpwZWdfQ3JlYXRlRGVjb21wcmVzcycKL2hvbWUvZGVlY2gvRG93bmxvYWRzL2Vt YWNzLTI1LjEvY29uZnRlc3QuYzoxNTM6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYGpwZWdfZGVz dHJveV9kZWNvbXByZXNzJwpjb2xsZWN0MjogZXJyb3I6IGxkIHJldHVybmVkIDEgZXhpdCBzdGF0 dXMKY29uZmlndXJlOjE1MjIyOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6 CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwg I2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9O ICIyNS4xIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAyNS4xIgp8ICNkZWZp bmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBB Q0tBR0VfVVJMICJodHRwOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUg UEFDS0FHRSAiZW1hY3MiCnwgI2RlZmluZSBWRVJTSU9OICIyNS4xIgp8ICNkZWZpbmUgTUFJTF9V U0VfUE9QIDEKfCAjZGVmaW5lIEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfVFpTRVQgMQp8 ICNkZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKfCAjZGVm aW5lIEhBVkVfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFW RV9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgSEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5lIEhBVkVfRlNZ TkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAx CnwgI2RlZmluZSBIQVZFX01LT1NURU1QIDEKfCAjZGVmaW5lIEhBVkVfUElQRTIgMQp8ICNkZWZp bmUgSEFWRV9QU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFW RV9TVFJUT0lNQVggMQp8ICNkZWZpbmUgSEFWRV9TVFJUT1VNQVggMQp8ICNkZWZpbmUgSEFWRV9T WU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9USU1F R00gMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FU0FUIDEK fCAjZGVmaW5lIEhBVkVfRlVUSU1FTlMgMQp8ICNkZWZpbmUgSEFWRV9VVElNRU5TQVQgMQp8ICNk ZWZpbmUgSEFWRV9MVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2Rl ZmluZSBIQVZFX1NFQ1VSRV9HRVRFTlYgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVm aW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBI QVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVf SU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5J U1REX0ggMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0Ug MQp8ICNkZWZpbmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwg I2RlZmluZSBfX1VTRV9NSU5HV19BTlNJX1NURElPIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFE X1NFTUFOVElDUyAxCnwgI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lO X1VTRV82NF9CSVRfSU5PREUgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAj ZGVmaW5lIEhBVkVfU1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2Rl ZmluZSBIQVZFX1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmlu ZSBIQVZFX1BUWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFW RV9VVE1QX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9T VERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BB UkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5f SCAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAx CnwgI2RlZmluZSBIQVZFX1NURElPX0VYVF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfSCAxCnwgI2Rl ZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZp bmUgSEFWRV9VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfTElOVVgzMiAxCnwg I2RlZmluZSBIQVZFX0xJTlVYX1NZU0lORk8gMQp8ICNkZWZpbmUgTElOVVhfU1lTSU5GT19VTklU IDEKfCAjZGVmaW5lIEhBVkVfVEVSTV9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfU1lTX1NJR0xJU1QgMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJ VF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUX0lGX0ggMQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0gg MQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVf U1RSVUNUX0lGUkVRX0lGUl9IV0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZS X05FVE1BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAxCnwg I2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQUREUiAxCnwgI2RlZmluZSBIQVZFX0xPTkdf RklMRV9OQU1FUyAxCnwgI2RlZmluZSBIQVZFX1NZU19WTElNSVRfSCAxCnwgI2RlZmluZSBIQVZF X0RBVEFfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZF X01NQVAgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEIDEKfCAjZGVmaW5lIEhBVkVfWEtCIDEKfCAj ZGVmaW5lIEhBVkVfWFJNU0VUREFUQUJBU0UgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOUkVTT1VS Q0VTVFJJTkcgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOTlVNQkVST0ZTQ1JFRU4gMQp8ICNkZWZp bmUgSEFWRV9YMTFSNiAxCnwgI2RlZmluZSBIQVZFX1hfSTE4TiAxCnwgI2RlZmluZSBIQVZFX1gx MVI2X1hJTSAxCnwgI2RlZmluZSBIQVZFX1JTVkcgMQp8ICNkZWZpbmUgSEFWRV9JTUFHRU1BR0lD SyAxCnwgI2RlZmluZSBIQVZFX01BR0lDS0VYUE9SVElNQUdFUElYRUxTIDEKfCAjZGVmaW5lIEhB VkVfTUFHSUNLTUVSR0VJTUFHRUxBWUVSUyAxCnwgI2RlZmluZSBIQVZFX0RCVVMgMQp8ICNkZWZp bmUgSEFWRV9EQlVTX1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19UWVBF X0lTX1ZBTElEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAxCnwgI2Rl ZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURB VEVfSU5URVJGQUNFIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIgMQp8ICNk ZWZpbmUgSEFWRV9HU0VUVElOR1MgMQp8ICNkZWZpbmUgSEFWRV9HQ09ORiAxCnwgI2RlZmluZSBI QVZFX0dOVVRMUyAxCnwgI2RlZmluZSBIQVZFX0dOVVRMUzMgMQp8ICNkZWZpbmUgSEFWRV9JTk9U SUZZIDEKfCAjZGVmaW5lIFVTRV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBIQVZFX1gxMVhUUjYg MQp8ICNkZWZpbmUgVVNFX1RPT0xLSVRfU0NST0xMX0JBUlMgMQp8ICNkZWZpbmUgSEFWRV9YSU0g MQp8ICNkZWZpbmUgVVNFX1hJTSAxCnwgI2RlZmluZSBYUmVnaXN0ZXJJTUluc3RhbnRpYXRlQ2Fs bGJhY2tfYXJnNiBYUG9pbnRlcgp8ICNkZWZpbmUgSEFWRV9YRlQgMQp8ICNkZWZpbmUgSEFWRV9G UkVFVFlQRSAxCnwgI2RlZmluZSBIQVZFX0xJQk9URiAxCnwgI2RlZmluZSBIQVZFX09URl9HRVRf VkFSSUFUSU9OX0dMWVBIUyAxCnwgI2RlZmluZSBIQVZFX00xN05fRkxUIDEKfCAjZGVmaW5lIFVT RV9YQ0IgMQp8ICNkZWZpbmUgSEFWRV9YUE0gMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAj dW5kZWYgSEFWRV9TVERMSUJfSCAvKiBBdm9pZCBjb25maWcuaC9qcGVnbGliLmggY29sbGlzaW9u LiAgKi8KfCAJICAgICAgI2luY2x1ZGUgPHN0ZGlvLmg+IC8qIGpwZWdsaWIuaCBuZWVkcyBGSUxF IGFuZCBzaXplX3QuICAqLwp8IAkgICAgICAjaW5jbHVkZSA8anBlZ2xpYi5oPgp8IAkgICAgICAj aW5jbHVkZSA8amVycm9yLmg+CnwgCSAgICAgIGNoYXIgdmVyaWZ5W0pQRUdfTElCX1ZFUlNJT04g PCA2MiA/IC0xIDogMV07CnwgCSAgICAgIHN0cnVjdCBqcGVnX2RlY29tcHJlc3Nfc3RydWN0IGNp bmZvOwp8IAp8IGludAp8IG1haW4gKCkKfCB7CnwgCnwgCSAgICAgIGpwZWdfY3JlYXRlX2RlY29t cHJlc3MgKCZjaW5mbyk7CnwgCSAgICAgIFdBUk5NUyAoJmNpbmZvLCBKV1JOX0pQRUdfRU9GKTsK fCAJICAgICAganBlZ19kZXN0cm95X2RlY29tcHJlc3MgKCZjaW5mbyk7CnwgCnwgICA7CnwgICBy ZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToxNTIyMjogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1w dGhyZWFkIC1JL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1JL3Vzci9pbmNsdWRlL2dkay1waXhi dWYtMi4wIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2NhaXJvIC1JL3Vz ci9pbmNsdWRlL3BpeG1hbi0xIC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVk ZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIu MCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1J L3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIv Z2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9saWJkcm0gLUkvdXNyL2luY2x1ZGUvbGli cG5nMTYgICAgICAgY29uZnRlc3QuYyAtbFgxMSAgIC1sanBlZyA+JjUgCmNvbmZpZ3VyZToxNTIy MjogJD8gPSAwCmNvbmZpZ3VyZToxNTIzMzogcmVzdWx0OiAtbGpwZWcKY29uZmlndXJlOjE1MjUz OiBjaGVja2luZyBmb3IgbGlicmFyeSBjb250YWluaW5nIGluZmxhdGVFbmQKY29uZmlndXJlOjE1 Mjg0OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLUkvdXNyL2luY2x1ZGUvbGli cnN2Zy0yLjAgLUkvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLUkvdXNyL2luY2x1ZGUvbGli cG5nMTYgLUkvdXNyL2luY2x1ZGUvY2Fpcm8gLUkvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLUkvdXNy L2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRl L2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5j bHVkZSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkv dXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9p bmNsdWRlL2xpYmRybSAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1s WDExICAgPiY1IAovdG1wL2NjdmpVOTE0Lm86IEluIGZ1bmN0aW9uIGBtYWluJzoKL2hvbWUvZGVl Y2gvRG93bmxvYWRzL2VtYWNzLTI1LjEvY29uZnRlc3QuYzoxNTI6IHVuZGVmaW5lZCByZWZlcmVu Y2UgdG8gYGluZmxhdGVFbmQnCmNvbGxlY3QyOiBlcnJvcjogbGQgcmV0dXJuZWQgMSBleGl0IHN0 YXR1cwpjb25maWd1cmU6MTUyODQ6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdh czoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIK fCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJ T04gIjI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDI1LjEiCnwgI2Rl ZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUg UEFDS0FHRV9VUkwgImh0dHA6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmlu ZSBQQUNLQUdFICJlbWFjcyIKfCAjZGVmaW5lIFZFUlNJT04gIjI1LjEiCnwgI2RlZmluZSBNQUlM X1VTRV9QT1AgMQp8ICNkZWZpbmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9UWlNFVCAx CnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LQVQgMQp8ICNk ZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBI QVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9G U1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX0xTVEFU IDEKfCAjZGVmaW5lIEhBVkVfTUtPU1RFTVAgMQp8ICNkZWZpbmUgSEFWRV9QSVBFMiAxCnwgI2Rl ZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBI QVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX1NUUlRPVU1BWCAxCnwgI2RlZmluZSBIQVZF X1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX1RJ TUVHTSAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVTQVQg MQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVOUyAxCnwgI2RlZmluZSBIQVZFX1VUSU1FTlNBVCAxCnwg I2RlZmluZSBIQVZFX0xVVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAj ZGVmaW5lIEhBVkVfU0VDVVJFX0dFVEVOViAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNk ZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5l IEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFW RV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9V TklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBfQUxMX1NPVVJD RSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEK fCAjZGVmaW5lIF9fVVNFX01JTkdXX0FOU0lfU1RESU8gMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJF QURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJX SU5fVVNFXzY0X0JJVF9JTk9ERSAxCnwgI2RlZmluZSBTWVNURU1fVFlQRSAiZ251L2xpbnV4Igp8 ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJEX0ggMQp8ICNkZWZpbmUgSEFWRV9BTFNBIDEKfCAj ZGVmaW5lIEhBVkVfU09VTkQgMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVm aW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBI QVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBIQVZF X1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf UEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19V Tl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19I IDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAx CnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAj ZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2Rl ZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QRVJTT05BTElUWV9MSU5VWDMyIDEK fCAjZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5GTyAxCnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VO SVQgMQp8ICNkZWZpbmUgSEFWRV9URVJNX0ggMQp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1F IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TWVNfU0lHTElTVCAxCnwgI2RlZmluZSBIQVZFX1NZU19X QUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZFX0lGQUREUlNf SCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUgSEFW RV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9J RlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJPQURBRERSIDEK fCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERSIDEKfCAjZGVmaW5lIEhBVkVfTE9O R19GSUxFX05BTUVTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1ZMSU1JVF9IIDEKfCAjZGVmaW5lIEhB VkVfREFUQV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhB VkVfTU1BUCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQUQgMQp8ICNkZWZpbmUgSEFWRV9YS0IgMQp8 ICNkZWZpbmUgSEFWRV9YUk1TRVREQVRBQkFTRSAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNP VVJDRVNUUklORyAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJPRlNDUkVFTiAxCnwgI2Rl ZmluZSBIQVZFX1gxMVI2IDEKfCAjZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVmaW5lIEhBVkVf WDExUjZfWElNIDEKfCAjZGVmaW5lIEhBVkVfUlNWRyAxCnwgI2RlZmluZSBIQVZFX0lNQUdFTUFH SUNLIDEKfCAjZGVmaW5lIEhBVkVfTUFHSUNLRVhQT1JUSU1BR0VQSVhFTFMgMQp8ICNkZWZpbmUg SEFWRV9NQUdJQ0tNRVJHRUlNQUdFTEFZRVJTIDEKfCAjZGVmaW5lIEhBVkVfREJVUyAxCnwgI2Rl ZmluZSBIQVZFX0RCVVNfV0FUQ0hfR0VUX1VOSVhfRkQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1RZ UEVfSVNfVkFMSUQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0JVU19OQU1FIDEKfCAj ZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9QQVRIIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJ REFURV9JTlRFUkZBQ0UgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX01FTUJFUiAxCnwg I2RlZmluZSBIQVZFX0dTRVRUSU5HUyAxCnwgI2RlZmluZSBIQVZFX0dDT05GIDEKfCAjZGVmaW5l IEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTMyAxCnwgI2RlZmluZSBIQVZFX0lO T1RJRlkgMQp8ICNkZWZpbmUgVVNFX0ZJTEVfTk9USUZZIDEKfCAjZGVmaW5lIEhBVkVfWDExWFRS NiAxCnwgI2RlZmluZSBVU0VfVE9PTEtJVF9TQ1JPTExfQkFSUyAxCnwgI2RlZmluZSBIQVZFX1hJ TSAxCnwgI2RlZmluZSBVU0VfWElNIDEKfCAjZGVmaW5lIFhSZWdpc3RlcklNSW5zdGFudGlhdGVD YWxsYmFja19hcmc2IFhQb2ludGVyCnwgI2RlZmluZSBIQVZFX1hGVCAxCnwgI2RlZmluZSBIQVZF X0ZSRUVUWVBFIDEKfCAjZGVmaW5lIEhBVkVfTElCT1RGIDEKfCAjZGVmaW5lIEhBVkVfT1RGX0dF VF9WQVJJQVRJT05fR0xZUEhTIDEKfCAjZGVmaW5lIEhBVkVfTTE3Tl9GTFQgMQp8ICNkZWZpbmUg VVNFX1hDQiAxCnwgI2RlZmluZSBIQVZFX1hQTSAxCnwgI2RlZmluZSBIQVZFX0pQRUcgMQp8IC8q IGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAvKiBPdmVycmlkZSBhbnkgR0NDIGludGVybmFsIHBy b3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4KfCAgICBVc2UgY2hhciBiZWNhdXNlIGludCBtaWdo dCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBHQ0MKfCAgICBidWlsdGluIGFuZCB0aGVuIGl0 cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLwp8ICNpZmRlZiBfX2Nw bHVzcGx1cwp8IGV4dGVybiAiQyIKfCAjZW5kaWYKfCBjaGFyIGluZmxhdGVFbmQgKCk7CnwgaW50 CnwgbWFpbiAoKQp8IHsKfCByZXR1cm4gaW5mbGF0ZUVuZCAoKTsKfCAgIDsKfCAgIHJldHVybiAw Owp8IH0KY29uZmlndXJlOjE1Mjg0OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQg LUkvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLUkvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAg LUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvY2Fpcm8gLUkvdXNyL2luY2x1 ZGUvcGl4bWFuLTEgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2xpYnBu ZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vz ci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2lu Y2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIu MC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2xpYmRybSAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAg ICAgICBjb25mdGVzdC5jIC1seiAgLWxYMTEgICA+JjUgCmNvbmZpZ3VyZToxNTI4NDogJD8gPSAw CmNvbmZpZ3VyZToxNTMwMTogcmVzdWx0OiAtbHoKY29uZmlndXJlOjE1NDA3OiBjaGVja2luZyBm b3IgcG5nCmNvbmZpZ3VyZToxNTQzNzogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFk IC1JL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1JL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4w IC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2NhaXJvIC1JL3Vzci9pbmNs dWRlL3BpeG1hbi0xIC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9saWJw bmcxNiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91 c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9p bmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0y LjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9saWJkcm0gLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYg LUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAtbHBuZzE2IC1seiAtbG0g LWxYMTEgICA+JjUgCmNvbmZpZ3VyZToxNTQzNzogJD8gPSAwCmNvbmZpZ3VyZToxNTQ1MjogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjE1NDYzOiBjaGVja2luZyB3aGV0aGVyIHBuZ19sb25nam1wIGlz IGRlY2xhcmVkCmNvbmZpZ3VyZToxNTQ2MzogZ2NjIC1jICAtZzMgLU8yIC1wdGhyZWFkIC1JL3Vz ci9pbmNsdWRlL2xpYnJzdmctMi4wIC1JL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1JL3Vz ci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2NhaXJvIC1JL3Vzci9pbmNsdWRlL3Bp eG1hbi0xIC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAt SS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGli L2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRl L2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5j bHVkZSAtSS91c3IvaW5jbHVkZS9saWJkcm0gLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNy L2luY2x1ZGUvbGlicG5nMTYgICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxNTQ2MzogJD8g PSAwCmNvbmZpZ3VyZToxNTQ2MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE1NTAxOiBjaGVja2lu ZyB0aWZmaW8uaCB1c2FiaWxpdHkKY29uZmlndXJlOjE1NTAxOiBnY2MgLWMgIC1nMyAtTzIgLXB0 aHJlYWQgLUkvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLUkvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1 Zi0yLjAgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvY2Fpcm8gLUkvdXNy L2luY2x1ZGUvcGl4bWFuLTEgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRl L2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4w IC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkv dXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9n bGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2xpYmRybSAtSS91c3IvaW5jbHVkZS9saWJw bmcxNiAgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjE1NTAxOiAkPyA9IDAKY29uZmlndXJl OjE1NTAxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTU1MDE6IGNoZWNraW5nIHRpZmZpby5oIHBy ZXNlbmNlCmNvbmZpZ3VyZToxNTUwMTogZ2NjIC1FICAgICBjb25mdGVzdC5jCmNvbmZpZ3VyZTox NTUwMTogJD8gPSAwCmNvbmZpZ3VyZToxNTUwMTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE1NTAx OiBjaGVja2luZyBmb3IgdGlmZmlvLmgKY29uZmlndXJlOjE1NTAxOiByZXN1bHQ6IHllcwpjb25m aWd1cmU6MTU1MDY6IGNoZWNraW5nIGZvciBUSUZGR2V0VmVyc2lvbiBpbiAtbHRpZmYKY29uZmln dXJlOjE1NTMxOiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLUkvdXNyL2luY2x1 ZGUvbGlicnN2Zy0yLjAgLUkvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLUkvdXNyL2luY2x1 ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvY2Fpcm8gLUkvdXNyL2luY2x1ZGUvcGl4bWFuLTEg LUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9p bmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0y LjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1 enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1J L3Vzci9pbmNsdWRlL2xpYmRybSAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVz dC5jIC1sdGlmZiAtbGpwZWcgLWx6IC1sbSAtbFgxMSAgID4mNSAKY29uZmlndXJlOjE1NTMxOiAk PyA9IDAKY29uZmlndXJlOjE1NTQwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTU1ODI6IGNoZWNr aW5nIGdpZl9saWIuaCB1c2FiaWxpdHkKY29uZmlndXJlOjE1NTgyOiBnY2MgLWMgIC1nMyAtTzIg LXB0aHJlYWQgLUkvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLUkvdXNyL2luY2x1ZGUvZ2RrLXBp eGJ1Zi0yLjAgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvY2Fpcm8gLUkv dXNyL2luY2x1ZGUvcGl4bWFuLTEgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNs dWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWIt Mi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIg LUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xp Yi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2xpYmRybSAtSS91c3IvaW5jbHVkZS9s aWJwbmcxNiAgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjE1NTgyOiAkPyA9IDAKY29uZmln dXJlOjE1NTgyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTU1ODI6IGNoZWNraW5nIGdpZl9saWIu aCBwcmVzZW5jZQpjb25maWd1cmU6MTU1ODI6IGdjYyAtRSAgICAgY29uZnRlc3QuYwpjb25maWd1 cmU6MTU1ODI6ICQ/ID0gMApjb25maWd1cmU6MTU1ODI6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTox NTU4MjogY2hlY2tpbmcgZm9yIGdpZl9saWIuaApjb25maWd1cmU6MTU1ODI6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZToxNTU4NjogY2hlY2tpbmcgZm9yIEdpZk1ha2VNYXBPYmplY3QgaW4gLWxnaWYK Y29uZmlndXJlOjE1NjExOiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLUkvdXNy L2luY2x1ZGUvbGlicnN2Zy0yLjAgLUkvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLUkvdXNy L2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvY2Fpcm8gLUkvdXNyL2luY2x1ZGUvcGl4 bWFuLTEgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1J L3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIv Z2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUv aGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNs dWRlIC1JL3Vzci9pbmNsdWRlL2xpYmRybSAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBj b25mdGVzdC5jIC1sZ2lmICAtbFgxMSAgID4mNSAKY29uZmlndXJlOjE1NjExOiAkPyA9IDAKY29u ZmlndXJlOjE1NjIwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTU3NTg6IGNoZWNraW5nIGdwbS5o IHVzYWJpbGl0eQpjb25maWd1cmU6MTU3NTg6IGdjYyAtYyAgLWczIC1PMiAtcHRocmVhZCAtSS91 c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtSS91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtSS91 c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9jYWlybyAtSS91c3IvaW5jbHVkZS9w aXhtYW4tMSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYg LUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xp Yi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVk ZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2lu Y2x1ZGUgLUkvdXNyL2luY2x1ZGUvbGliZHJtIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICBj b25mdGVzdC5jID4mNQpjb25maWd1cmU6MTU3NTg6ICQ/ID0gMApjb25maWd1cmU6MTU3NTg6IHJl c3VsdDogeWVzCmNvbmZpZ3VyZToxNTc1ODogY2hlY2tpbmcgZ3BtLmggcHJlc2VuY2UKY29uZmln dXJlOjE1NzU4OiBnY2MgLUUgICAgIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjE1NzU4OiAkPyA9IDAK Y29uZmlndXJlOjE1NzU4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTU3NTg6IGNoZWNraW5nIGZv ciBncG0uaApjb25maWd1cmU6MTU3NTg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNTc2MDogY2hl Y2tpbmcgZm9yIEdwbV9PcGVuIGluIC1sZ3BtCmNvbmZpZ3VyZToxNTc4NTogZ2NjIC1vIGNvbmZ0 ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1JL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1JL3Vzci9p bmNsdWRlL2dkay1waXhidWYtMi4wIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNs dWRlL2NhaXJvIC1JL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBl MiAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3Iv aW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1 ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWIt Mi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9saWJkcm0gLUkv dXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAtbGdwbSAgLWxYMTEgICA+JjUg CmNvbmZpZ3VyZToxNTc4NTogJD8gPSAwCmNvbmZpZ3VyZToxNTc5NDogcmVzdWx0OiB5ZXMKY29u ZmlndXJlOjE1ODQ3OiBjaGVja2luZyBYMTEvU00vU01saWIuaCB1c2FiaWxpdHkKY29uZmlndXJl OjE1ODQ3OiBnY2MgLWMgIC1nMyAtTzIgLXB0aHJlYWQgLUkvdXNyL2luY2x1ZGUvbGlicnN2Zy0y LjAgLUkvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYg LUkvdXNyL2luY2x1ZGUvY2Fpcm8gLUkvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLUkvdXNyL2luY2x1 ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZi dXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAt SS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2lu Y2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRl L2xpYmRybSAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgY29uZnRlc3QuYyA+JjUKY29uZmln dXJlOjE1ODQ3OiAkPyA9IDAKY29uZmlndXJlOjE1ODQ3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6 MTU4NDc6IGNoZWNraW5nIFgxMS9TTS9TTWxpYi5oIHByZXNlbmNlCmNvbmZpZ3VyZToxNTg0Nzog Z2NjIC1FICAgICBjb25mdGVzdC5jCmNvbmZpZ3VyZToxNTg0NzogJD8gPSAwCmNvbmZpZ3VyZTox NTg0NzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE1ODQ3OiBjaGVja2luZyBmb3IgWDExL1NNL1NN bGliLmgKY29uZmlndXJlOjE1ODQ3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTU4NDk6IGNoZWNr aW5nIGZvciBTbWNPcGVuQ29ubmVjdGlvbiBpbiAtbFNNCmNvbmZpZ3VyZToxNTg3NDogZ2NjIC1v IGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1JL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1J L3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vz ci9pbmNsdWRlL2NhaXJvIC1JL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1JL3Vzci9pbmNsdWRlL2Zy ZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAt SS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNy L2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRl L2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9saWJk cm0gLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAtbFNNIC1sSUNFIC1s WDExICAgPiY1IApjb25maWd1cmU6MTU4NzQ6ICQ/ID0gMApjb25maWd1cmU6MTU4ODM6IHJlc3Vs dDogeWVzCmNvbmZpZ3VyZToxNTkwOTogY2hlY2tpbmcgZm9yIFhSQU5EUgpjb25maWd1cmU6MTU5 MTY6ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzICIkWFJBTkRSX01PRFVMRVMi CmNvbmZpZ3VyZToxNTkxOTogJD8gPSAwCmNvbmZpZ3VyZToxNTkzMzogJFBLR19DT05GSUcgLS1l eGlzdHMgLS1wcmludC1lcnJvcnMgIiRYUkFORFJfTU9EVUxFUyIKY29uZmlndXJlOjE1OTM2OiAk PyA9IDAKY29uZmlndXJlOjE1OTc0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTYwNTA6IGNoZWNr aW5nIGZvciBYSU5FUkFNQQpjb25maWd1cmU6MTYwNTc6ICRQS0dfQ09ORklHIC0tZXhpc3RzIC0t cHJpbnQtZXJyb3JzICIkWElORVJBTUFfTU9EVUxFUyIKY29uZmlndXJlOjE2MDYwOiAkPyA9IDAK Y29uZmlndXJlOjE2MDc0OiAkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyAiJFhJ TkVSQU1BX01PRFVMRVMiCmNvbmZpZ3VyZToxNjA3NzogJD8gPSAwCmNvbmZpZ3VyZToxNjExNTog cmVzdWx0OiB5ZXMKY29uZmlndXJlOjE2MTg3OiBjaGVja2luZyBmb3IgWEZJWEVTCmNvbmZpZ3Vy ZToxNjE5NDogJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgIiRYRklYRVNfTU9E VUxFUyIKY29uZmlndXJlOjE2MTk3OiAkPyA9IDAKY29uZmlndXJlOjE2MjExOiAkUEtHX0NPTkZJ RyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyAiJFhGSVhFU19NT0RVTEVTIgpjb25maWd1cmU6MTYy MTQ6ICQ/ID0gMApjb25maWd1cmU6MTYyNTI6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNjMyNDog Y2hlY2tpbmcgZm9yIExJQlhNTDIKY29uZmlndXJlOjE2MzMxOiAkUEtHX0NPTkZJRyAtLWV4aXN0 cyAtLXByaW50LWVycm9ycyAibGlieG1sLTIuMCA+IDIuNi4xNyIKY29uZmlndXJlOjE2MzM0OiAk PyA9IDAKY29uZmlndXJlOjE2MzQ4OiAkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9y cyAibGlieG1sLTIuMCA+IDIuNi4xNyIKY29uZmlndXJlOjE2MzUxOiAkPyA9IDAKY29uZmlndXJl OjE2Mzg5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTY0MjQ6IGNoZWNraW5nIGZvciBodG1sUmVh ZE1lbW9yeSBpbiAtbHhtbDIKY29uZmlndXJlOjE2NDQ5OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAt TzIgLXB0aHJlYWQgLUkvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLUkvdXNyL2luY2x1ZGUvZ2Rr LXBpeGJ1Zi0yLjAgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvY2Fpcm8g LUkvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9p bmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2ds aWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9mcmVldHlw ZTIgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNy L2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2xpYmRybSAtSS91c3IvaW5jbHVk ZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1seG1sMiAtbHhtbDIgLWxYMTEgICA+JjUgCmNv bmZpZ3VyZToxNjQ0OTogJD8gPSAwCmNvbmZpZ3VyZToxNjQ1ODogcmVzdWx0OiB5ZXMKY29uZmln dXJlOjE2NDg3OiBjaGVja2luZyB3aGV0aGVyIG5ldGRiIGRlY2xhcmVzIGhfZXJybm8KY29uZmln dXJlOjE2NTAzOiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLUkvdXNyL2luY2x1 ZGUvbGlicnN2Zy0yLjAgLUkvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLUkvdXNyL2luY2x1 ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvY2Fpcm8gLUkvdXNyL2luY2x1ZGUvcGl4bWFuLTEg LUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9p bmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0y LjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1 enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1J L3Vzci9pbmNsdWRlL2xpYmRybSAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVz dC5jIC1sWDExICAgPiY1IApjb25maWd1cmU6MTY1MDM6ICQ/ID0gMApjb25maWd1cmU6MTY1MTE6 IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNjUyMTogY2hlY2tpbmcgZm9yIG1haWxsb2NrIGluIC1s bWFpbApjb25maWd1cmU6MTY1NDY6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAt SS91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtSS91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAt SS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9jYWlybyAtSS91c3IvaW5jbHVk ZS9waXhtYW4tMSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvbGlicG5n MTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNy L2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5j bHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4w L2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvbGliZHJtIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAg ICAgIGNvbmZ0ZXN0LmMgLWxtYWlsICAtbFgxMSAgID4mNSAKL3Vzci9iaW4vbGQ6IGNhbm5vdCBm aW5kIC1sbWFpbApjb2xsZWN0MjogZXJyb3I6IGxkIHJldHVybmVkIDEgZXhpdCBzdGF0dXMKY29u ZmlndXJlOjE2NTQ2OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyog Y29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2RlZmlu ZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyNS4x Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAyNS4xIgp8ICNkZWZpbmUgUEFD S0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0Vf VVJMICJodHRwOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgUEFDS0FH RSAiZW1hY3MiCnwgI2RlZmluZSBWRVJTSU9OICIyNS4xIgp8ICNkZWZpbmUgTUFJTF9VU0VfUE9Q IDEKfCAjZGVmaW5lIEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfVFpTRVQgMQp8ICNkZWZp bmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKfCAjZGVmaW5lIEhB VkVfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9GRE9Q RU5ESVIgMQp8ICNkZWZpbmUgSEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMgMQp8 ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwgI2Rl ZmluZSBIQVZFX01LT1NURU1QIDEKfCAjZGVmaW5lIEhBVkVfUElQRTIgMQp8ICNkZWZpbmUgSEFW RV9QU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFWRV9TVFJU T0lNQVggMQp8ICNkZWZpbmUgSEFWRV9TVFJUT1VNQVggMQp8ICNkZWZpbmUgSEFWRV9TWU1MSU5L IDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9USU1FR00gMQp8 ICNkZWZpbmUgSEFWRV9GVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FU0FUIDEKfCAjZGVm aW5lIEhBVkVfRlVUSU1FTlMgMQp8ICNkZWZpbmUgSEFWRV9VVElNRU5TQVQgMQp8ICNkZWZpbmUg SEFWRV9MVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBI QVZFX1NFQ1VSRV9HRVRFTlYgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhB VkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01F TU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQ RVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0gg MQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8ICNk ZWZpbmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmlu ZSBfX1VTRV9NSU5HV19BTlNJX1NURElPIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFO VElDUyAxCnwgI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX1VTRV82 NF9CSVRfSU5PREUgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAjZGVmaW5l IEhBVkVfU1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2RlZmluZSBI QVZFX1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmluZSBIQVZF X1BUWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1Q X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJf SCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0gg MQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwg I2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAxCnwgI2Rl ZmluZSBIQVZFX1NURElPX0VYVF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfSCAxCnwgI2RlZmluZSBI QVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFW RV9VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfTElOVVgzMiAxCnwgI2RlZmlu ZSBIQVZFX0xJTlVYX1NZU0lORk8gMQp8ICNkZWZpbmUgTElOVVhfU1lTSU5GT19VTklUIDEKfCAj ZGVmaW5lIEhBVkVfVEVSTV9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfU1lTX1NJR0xJU1QgMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEK fCAjZGVmaW5lIEhBVkVfTkVUX0lGX0ggMQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNU X0lGUkVRX0lGUl9IV0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX05FVE1B U0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAxCnwgI2RlZmlu ZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQUREUiAxCnwgI2RlZmluZSBIQVZFX0xPTkdfRklMRV9O QU1FUyAxCnwgI2RlZmluZSBIQVZFX1NZU19WTElNSVRfSCAxCnwgI2RlZmluZSBIQVZFX0RBVEFf U1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX01NQVAg MQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEIDEKfCAjZGVmaW5lIEhBVkVfWEtCIDEKfCAjZGVmaW5l IEhBVkVfWFJNU0VUREFUQUJBU0UgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOUkVTT1VSQ0VTVFJJ TkcgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOTlVNQkVST0ZTQ1JFRU4gMQp8ICNkZWZpbmUgSEFW RV9YMTFSNiAxCnwgI2RlZmluZSBIQVZFX1hfSTE4TiAxCnwgI2RlZmluZSBIQVZFX1gxMVI2X1hJ TSAxCnwgI2RlZmluZSBIQVZFX1JTVkcgMQp8ICNkZWZpbmUgSEFWRV9JTUFHRU1BR0lDSyAxCnwg I2RlZmluZSBIQVZFX01BR0lDS0VYUE9SVElNQUdFUElYRUxTIDEKfCAjZGVmaW5lIEhBVkVfTUFH SUNLTUVSR0VJTUFHRUxBWUVSUyAxCnwgI2RlZmluZSBIQVZFX0RCVVMgMQp8ICNkZWZpbmUgSEFW RV9EQlVTX1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19UWVBFX0lTX1ZB TElEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAxCnwgI2RlZmluZSBI QVZFX0RCVVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfSU5U RVJGQUNFIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIgMQp8ICNkZWZpbmUg SEFWRV9HU0VUVElOR1MgMQp8ICNkZWZpbmUgSEFWRV9HQ09ORiAxCnwgI2RlZmluZSBIQVZFX0dO VVRMUyAxCnwgI2RlZmluZSBIQVZFX0dOVVRMUzMgMQp8ICNkZWZpbmUgSEFWRV9JTk9USUZZIDEK fCAjZGVmaW5lIFVTRV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBIQVZFX1gxMVhUUjYgMQp8ICNk ZWZpbmUgVVNFX1RPT0xLSVRfU0NST0xMX0JBUlMgMQp8ICNkZWZpbmUgSEFWRV9YSU0gMQp8ICNk ZWZpbmUgVVNFX1hJTSAxCnwgI2RlZmluZSBYUmVnaXN0ZXJJTUluc3RhbnRpYXRlQ2FsbGJhY2tf YXJnNiBYUG9pbnRlcgp8ICNkZWZpbmUgSEFWRV9YRlQgMQp8ICNkZWZpbmUgSEFWRV9GUkVFVFlQ RSAxCnwgI2RlZmluZSBIQVZFX0xJQk9URiAxCnwgI2RlZmluZSBIQVZFX09URl9HRVRfVkFSSUFU SU9OX0dMWVBIUyAxCnwgI2RlZmluZSBIQVZFX00xN05fRkxUIDEKfCAjZGVmaW5lIFVTRV9YQ0Ig MQp8ICNkZWZpbmUgSEFWRV9YUE0gMQp8ICNkZWZpbmUgSEFWRV9KUEVHIDEKfCAjZGVmaW5lIEhB VkVfWkxJQiAxCnwgI2RlZmluZSBIQVZFX1BORyAxCnwgI2RlZmluZSBIQVZFX1RJRkYgMQp8ICNk ZWZpbmUgSEFWRV9HSUYgMQp8ICNkZWZpbmUgSEFWRV9HUE0gMQp8ICNkZWZpbmUgSEFWRV9YX1NN IDEKfCAjZGVmaW5lIEhBVkVfWFJBTkRSIDEKfCAjZGVmaW5lIEhBVkVfWElORVJBTUEgMQp8ICNk ZWZpbmUgSEFWRV9YRklYRVMgMQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwyIDEKfCAjZGVmaW5lIEhB VkVfSF9FUlJOTyAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8IAp8IC8qIE92ZXJyaWRlIGFu eSBHQ0MgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLgp8ICAgIFVzZSBjaGFy IGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIEdDQwp8ICAgIGJ1 aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4g ICovCnwgI2lmZGVmIF9fY3BsdXNwbHVzCnwgZXh0ZXJuICJDIgp8ICNlbmRpZgp8IGNoYXIgbWFp bGxvY2sgKCk7CnwgaW50CnwgbWFpbiAoKQp8IHsKfCByZXR1cm4gbWFpbGxvY2sgKCk7CnwgICA7 CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToxNjU1NTogcmVzdWx0OiBubwpjb25maWd1cmU6 MTY1ODY6IGNoZWNraW5nIGZvciBtYWlsbG9jayBpbiAtbGxvY2tmaWxlCmNvbmZpZ3VyZToxNjYx MTogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1JL3Vzci9pbmNsdWRlL2xpYnJz dmctMi4wIC1JL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1JL3Vzci9pbmNsdWRlL2xpYnBu ZzE2IC1JL3Vzci9pbmNsdWRlL2NhaXJvIC1JL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1JL3Vzci9p bmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9o YXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1 ZGUgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vz ci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5j bHVkZS9saWJkcm0gLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAtbGxv Y2tmaWxlICAtbFgxMSAgID4mNSAKL3Vzci9iaW4vbGQ6IGNhbm5vdCBmaW5kIC1sbG9ja2ZpbGUK Y29sbGVjdDI6IGVycm9yOiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVzCmNvbmZpZ3VyZToxNjYx MTogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmgg Ki8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9U QVJOQU1FICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMjUuMSIKfCAjZGVmaW5l IFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1hY3MgMjUuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQ T1JUICJidWctZ251LWVtYWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0cDov L3d3dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIFBBQ0tBR0UgImVtYWNzIgp8 ICNkZWZpbmUgVkVSU0lPTiAiMjUuMSIKfCAjZGVmaW5lIE1BSUxfVVNFX1BPUCAxCnwgI2RlZmlu ZSBIQVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1RaU0VUIDEKfCAjZGVmaW5lIEhBVkVfRkNI TU9EIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NB VCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEKfCAj ZGVmaW5lIEhBVkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhB VkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9N S09TVEVNUCAxCnwgI2RlZmluZSBIQVZFX1BJUEUyIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAx CnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEKfCAj ZGVmaW5lIEhBVkVfU1RSVE9VTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmlu ZSBIQVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfVElNRUdNIDEKfCAjZGVmaW5lIEhB VkVfRlVUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVNBVCAxCnwgI2RlZmluZSBIQVZFX0ZV VElNRU5TIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVOU0FUIDEKfCAjZGVmaW5lIEhBVkVfTFVUSU1F UyAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRUNVUkVf R0VURU5WIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBF U19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9I IDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwg I2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5l IF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJX SU5fQ19TT1VSQ0UgMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19VU0VfTUlO R1dfQU5TSV9TVERJTyAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNk ZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9VU0VfNjRfQklUX0lOT0RF IDEKfCAjZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19T T1VORENBUkRfSCAxCnwgI2RlZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAx CnwgI2RlZmluZSBIQVZFX1NZU19TWVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9QVFlfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVf SCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUF9IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZp bmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5l IEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFW RV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX0VYRUNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9T VERJT19FWFRfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRf SCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNU X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVfSCAx CnwgI2RlZmluZSBIQVZFX1BFUlNPTkFMSVRZX0xJTlVYMzIgMQp8ICNkZWZpbmUgSEFWRV9MSU5V WF9TWVNJTkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwgI2RlZmluZSBIQVZF X1RFUk1fSCAxCnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9E RUNMX1NZU19TSUdMSVNUIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBI QVZFX05FVF9JRl9IIDEKfCAjZGVmaW5lIEhBVkVfSUZBRERSU19IIDEKfCAjZGVmaW5lIEhBVkVf U1RSVUNUX0lGUkVRX0lGUl9GTEFHUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJf SFdBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9ORVRNQVNLIDEKfCAjZGVm aW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9CUk9BREFERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJV Q1RfSUZSRVFfSUZSX0FERFIgMQp8ICNkZWZpbmUgSEFWRV9MT05HX0ZJTEVfTkFNRVMgMQp8ICNk ZWZpbmUgSEFWRV9TWVNfVkxJTUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9EQVRBX1NUQVJUIDEKfCAj ZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9NTUFQIDEKfCAjZGVmaW5l IEhBVkVfUFRIUkVBRCAxCnwgI2RlZmluZSBIQVZFX1hLQiAxCnwgI2RlZmluZSBIQVZFX1hSTVNF VERBVEFCQVNFIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RSSU5HIDEKfCAjZGVm aW5lIEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhBVkVfWDExUjYgMQp8 ICNkZWZpbmUgSEFWRV9YX0kxOE4gMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9YSU0gMQp8ICNkZWZp bmUgSEFWRV9SU1ZHIDEKfCAjZGVmaW5lIEhBVkVfSU1BR0VNQUdJQ0sgMQp8ICNkZWZpbmUgSEFW RV9NQUdJQ0tFWFBPUlRJTUFHRVBJWEVMUyAxCnwgI2RlZmluZSBIQVZFX01BR0lDS01FUkdFSU1B R0VMQVlFUlMgMQp8ICNkZWZpbmUgSEFWRV9EQlVTIDEKfCAjZGVmaW5lIEhBVkVfREJVU19XQVRD SF9HRVRfVU5JWF9GRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVFlQRV9JU19WQUxJRCAxCnwgI2Rl ZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfQlVTX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZB TElEQVRFX1BBVEggMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0lOVEVSRkFDRSAxCnwg I2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfTUVNQkVSIDEKfCAjZGVmaW5lIEhBVkVfR1NFVFRJ TkdTIDEKfCAjZGVmaW5lIEhBVkVfR0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9HTlVUTFMgMQp8ICNk ZWZpbmUgSEFWRV9HTlVUTFMzIDEKfCAjZGVmaW5lIEhBVkVfSU5PVElGWSAxCnwgI2RlZmluZSBV U0VfRklMRV9OT1RJRlkgMQp8ICNkZWZpbmUgSEFWRV9YMTFYVFI2IDEKfCAjZGVmaW5lIFVTRV9U T09MS0lUX1NDUk9MTF9CQVJTIDEKfCAjZGVmaW5lIEhBVkVfWElNIDEKfCAjZGVmaW5lIFVTRV9Y SU0gMQp8ICNkZWZpbmUgWFJlZ2lzdGVySU1JbnN0YW50aWF0ZUNhbGxiYWNrX2FyZzYgWFBvaW50 ZXIKfCAjZGVmaW5lIEhBVkVfWEZUIDEKfCAjZGVmaW5lIEhBVkVfRlJFRVRZUEUgMQp8ICNkZWZp bmUgSEFWRV9MSUJPVEYgMQp8ICNkZWZpbmUgSEFWRV9PVEZfR0VUX1ZBUklBVElPTl9HTFlQSFMg MQp8ICNkZWZpbmUgSEFWRV9NMTdOX0ZMVCAxCnwgI2RlZmluZSBVU0VfWENCIDEKfCAjZGVmaW5l IEhBVkVfWFBNIDEKfCAjZGVmaW5lIEhBVkVfSlBFRyAxCnwgI2RlZmluZSBIQVZFX1pMSUIgMQp8 ICNkZWZpbmUgSEFWRV9QTkcgMQp8ICNkZWZpbmUgSEFWRV9USUZGIDEKfCAjZGVmaW5lIEhBVkVf R0lGIDEKfCAjZGVmaW5lIEhBVkVfR1BNIDEKfCAjZGVmaW5lIEhBVkVfWF9TTSAxCnwgI2RlZmlu ZSBIQVZFX1hSQU5EUiAxCnwgI2RlZmluZSBIQVZFX1hJTkVSQU1BIDEKfCAjZGVmaW5lIEhBVkVf WEZJWEVTIDEKfCAjZGVmaW5lIEhBVkVfTElCWE1MMiAxCnwgI2RlZmluZSBIQVZFX0hfRVJSTk8g MQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAvKiBPdmVycmlkZSBhbnkgR0NDIGludGVy bmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4KfCAgICBVc2UgY2hhciBiZWNhdXNlIGlu dCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBHQ0MKfCAgICBidWlsdGluIGFuZCB0 aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLwp8ICNpZmRl ZiBfX2NwbHVzcGx1cwp8IGV4dGVybiAiQyIKfCAjZW5kaWYKfCBjaGFyIG1haWxsb2NrICgpOwp8 IGludAp8IG1haW4gKCkKfCB7CnwgcmV0dXJuIG1haWxsb2NrICgpOwp8ICAgOwp8ICAgcmV0dXJu IDA7CnwgfQpjb25maWd1cmU6MTY2MjA6IHJlc3VsdDogbm8KY29uZmlndXJlOjE2NjM5OiBjaGVj a2luZyBmb3IgbGlibG9ja2ZpbGUuc28KY29uZmlndXJlOjE2NjY4OiByZXN1bHQ6IG5vCmNvbmZp Z3VyZToxNjc1MTogY2hlY2tpbmcgZm9yIGFjY2VwdDQKY29uZmlndXJlOjE2NzUxOiBnY2MgLW8g Y29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLUkvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLUkv dXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNy L2luY2x1ZGUvY2Fpcm8gLUkvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLUkvdXNyL2luY2x1ZGUvZnJl ZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1J L3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3Iv aW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUv Z2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2xpYmRy bSAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1scHRocmVhZCAtbG0g LWxYMTEgICA+JjUgCmNvbmZpZ3VyZToxNjc1MTogJD8gPSAwCmNvbmZpZ3VyZToxNjc1MTogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjE2NzUxOiBjaGVja2luZyBmb3IgZmNoZGlyCmNvbmZpZ3VyZTox Njc1MTogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1JL3Vzci9pbmNsdWRlL2xp YnJzdmctMi4wIC1JL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1JL3Vzci9pbmNsdWRlL2xp YnBuZzE2IC1JL3Vzci9pbmNsdWRlL2NhaXJvIC1JL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1JL3Vz ci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVk ZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2lu Y2x1ZGUgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1J L3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3Iv aW5jbHVkZS9saWJkcm0gLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAt bHB0aHJlYWQgLWxtIC1sWDExICAgPiY1IApjb25maWd1cmU6MTY3NTE6ICQ/ID0gMApjb25maWd1 cmU6MTY3NTE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNjc1MTogY2hlY2tpbmcgZm9yIGdldGhv c3RuYW1lCmNvbmZpZ3VyZToxNjc1MTogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFk IC1JL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1JL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4w IC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2NhaXJvIC1JL3Vzci9pbmNs dWRlL3BpeG1hbi0xIC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9saWJw bmcxNiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91 c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9p bmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0y LjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9saWJkcm0gLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYg ICAgICAgY29uZnRlc3QuYyAtbHB0aHJlYWQgLWxtIC1sWDExICAgPiY1IApjb25maWd1cmU6MTY3 NTE6ICQ/ID0gMApjb25maWd1cmU6MTY3NTE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNjc1MTog Y2hlY2tpbmcgZm9yIGdldHJ1c2FnZQpjb25maWd1cmU6MTY3NTE6IGdjYyAtbyBjb25mdGVzdCAg LWczIC1PMiAtcHRocmVhZCAtSS91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtSS91c3IvaW5jbHVk ZS9nZGstcGl4YnVmLTIuMCAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9j YWlybyAtSS91c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkv dXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1 ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2Zy ZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAt SS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvbGliZHJtIC1JL3Vzci9p bmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxwdGhyZWFkIC1sbSAtbFgxMSAgID4m NSAKY29uZmlndXJlOjE2NzUxOiAkPyA9IDAKY29uZmlndXJlOjE2NzUxOiByZXN1bHQ6IHllcwpj b25maWd1cmU6MTY3NTE6IGNoZWNraW5nIGZvciBnZXRfY3VycmVudF9kaXJfbmFtZQpjb25maWd1 cmU6MTY3NTE6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtSS91c3IvaW5jbHVk ZS9saWJyc3ZnLTIuMCAtSS91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtSS91c3IvaW5jbHVk ZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9jYWlybyAtSS91c3IvaW5jbHVkZS9waXhtYW4tMSAt SS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2lu Y2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIu MC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6 eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkv dXNyL2luY2x1ZGUvbGliZHJtIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0 LmMgLWxwdGhyZWFkIC1sbSAtbFgxMSAgID4mNSAKY29uZmlndXJlOjE2NzUxOiAkPyA9IDAKY29u ZmlndXJlOjE2NzUxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTY3NTE6IGNoZWNraW5nIGZvciBs cmFuZDQ4CmNvbmZpZ3VyZToxNjc1MTogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFk IC1JL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1JL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4w IC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2NhaXJvIC1JL3Vzci9pbmNs dWRlL3BpeG1hbi0xIC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9saWJw bmcxNiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91 c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9p bmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0y LjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9saWJkcm0gLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYg ICAgICAgY29uZnRlc3QuYyAtbHB0aHJlYWQgLWxtIC1sWDExICAgPiY1IApjb25maWd1cmU6MTY3 NTE6ICQ/ID0gMApjb25maWd1cmU6MTY3NTE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNjc1MTog Y2hlY2tpbmcgZm9yIHJhbmRvbQpjb25maWd1cmU6MTY3NTE6IGdjYyAtbyBjb25mdGVzdCAgLWcz IC1PMiAtcHRocmVhZCAtSS91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtSS91c3IvaW5jbHVkZS9n ZGstcGl4YnVmLTIuMCAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9jYWly byAtSS91c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNy L2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUv Z2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2ZyZWV0 eXBlMiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91 c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvbGliZHJtIC1JL3Vzci9pbmNs dWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxwdGhyZWFkIC1sbSAtbFgxMSAgID4mNSAK Y29uZmlndXJlOjE2NzUxOiAkPyA9IDAKY29uZmlndXJlOjE2NzUxOiByZXN1bHQ6IHllcwpjb25m aWd1cmU6MTY3NTE6IGNoZWNraW5nIGZvciByaW50CmNvbmZpZ3VyZToxNjc1MTogZ2NjIC1vIGNv bmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1JL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1JL3Vz ci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9p bmNsdWRlL2NhaXJvIC1JL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1JL3Vzci9pbmNsdWRlL2ZyZWV0 eXBlMiAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91 c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2lu Y2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2ds aWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9saWJkcm0g LUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAtbHB0aHJlYWQgLWxtIC1s WDExICAgPiY1IApjb25mdGVzdC5jOjE4Mzo2OiB3YXJuaW5nOiBjb25mbGljdGluZyB0eXBlcyBm b3IgYnVpbHQtaW4gZnVuY3Rpb24gJ3JpbnQnCiBjaGFyIHJpbnQgKCk7CiAgICAgIF5+fn4KY29u ZmlndXJlOjE2NzUxOiAkPyA9IDAKY29uZmlndXJlOjE2NzUxOiByZXN1bHQ6IHllcwpjb25maWd1 cmU6MTY3NTE6IGNoZWNraW5nIGZvciBzZWxlY3QKY29uZmlndXJlOjE2NzUxOiBnY2MgLW8gY29u ZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLUkvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLUkvdXNy L2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2lu Y2x1ZGUvY2Fpcm8gLUkvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLUkvdXNyL2luY2x1ZGUvZnJlZXR5 cGUyIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vz ci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5j bHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xp Yi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2xpYmRybSAt SS91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1scHRocmVhZCAtbG0gLWxY MTEgICA+JjUgCmNvbmZpZ3VyZToxNjc1MTogJD8gPSAwCmNvbmZpZ3VyZToxNjc1MTogcmVzdWx0 OiB5ZXMKY29uZmlndXJlOjE2NzUxOiBjaGVja2luZyBmb3IgZ2V0cGFnZXNpemUKY29uZmlndXJl OjE2NzUxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTY3NTE6IGNoZWNraW5nIGZvciBzZXRsb2Nh bGUKY29uZmlndXJlOjE2NzUxOiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLUkv dXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLUkvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLUkv dXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvY2Fpcm8gLUkvdXNyL2luY2x1ZGUv cGl4bWFuLTEgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2 IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9s aWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1 ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9p bmNsdWRlIC1JL3Vzci9pbmNsdWRlL2xpYmRybSAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAg ICBjb25mdGVzdC5jIC1scHRocmVhZCAtbG0gLWxYMTEgICA+JjUgCmNvbmZpZ3VyZToxNjc1MTog JD8gPSAwCmNvbmZpZ3VyZToxNjc1MTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE2NzUxOiBjaGVj a2luZyBmb3IgbmV3bG9jYWxlCmNvbmZpZ3VyZToxNjc1MTogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMg LU8yIC1wdGhyZWFkIC1JL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1JL3Vzci9pbmNsdWRlL2dk ay1waXhidWYtMi4wIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2NhaXJv IC1JL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3Iv aW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9n bGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvZnJlZXR5 cGUyIC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vz ci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9saWJkcm0gLUkvdXNyL2luY2x1 ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAtbHB0aHJlYWQgLWxtIC1sWDExICAgPiY1IApj b25maWd1cmU6MTY3NTE6ICQ/ID0gMApjb25maWd1cmU6MTY3NTE6IHJlc3VsdDogeWVzCmNvbmZp Z3VyZToxNjc1MTogY2hlY2tpbmcgZm9yIGdldHJsaW1pdApjb25maWd1cmU6MTY3NTE6IGdjYyAt byBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtSS91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAt SS91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91 c3IvaW5jbHVkZS9jYWlybyAtSS91c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91c3IvaW5jbHVkZS9m cmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enog LUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vz ci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVk ZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvbGli ZHJtIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxwdGhyZWFkIC1s bSAtbFgxMSAgID4mNSAKY29uZmlndXJlOjE2NzUxOiAkPyA9IDAKY29uZmlndXJlOjE2NzUxOiBy ZXN1bHQ6IHllcwpjb25maWd1cmU6MTY3NTE6IGNoZWNraW5nIGZvciBzZXRybGltaXQKY29uZmln dXJlOjE2NzUxOiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLUkvdXNyL2luY2x1 ZGUvbGlicnN2Zy0yLjAgLUkvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLUkvdXNyL2luY2x1 ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvY2Fpcm8gLUkvdXNyL2luY2x1ZGUvcGl4bWFuLTEg LUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9p bmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0y LjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1 enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1J L3Vzci9pbmNsdWRlL2xpYmRybSAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVz dC5jIC1scHRocmVhZCAtbG0gLWxYMTEgICA+JjUgCmNvbmZpZ3VyZToxNjc1MTogJD8gPSAwCmNv bmZpZ3VyZToxNjc1MTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE2NzUxOiBjaGVja2luZyBmb3Ig c2h1dGRvd24KY29uZmlndXJlOjE2NzUxOiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJl YWQgLUkvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLUkvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0y LjAgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvY2Fpcm8gLUkvdXNyL2lu Y2x1ZGUvcGl4bWFuLTEgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2xp YnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1J L3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNy L2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGli LTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2xpYmRybSAtSS91c3IvaW5jbHVkZS9saWJwbmcx NiAgICAgICBjb25mdGVzdC5jIC1scHRocmVhZCAtbG0gLWxYMTEgICA+JjUgCmNvbmZpZ3VyZTox Njc1MTogJD8gPSAwCmNvbmZpZ3VyZToxNjc1MTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE2NzUx OiBjaGVja2luZyBmb3IgZ2V0YWRkcmluZm8KY29uZmlndXJlOjE2NzUxOiBnY2MgLW8gY29uZnRl c3QgIC1nMyAtTzIgLXB0aHJlYWQgLUkvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLUkvdXNyL2lu Y2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1 ZGUvY2Fpcm8gLUkvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUy IC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9p bmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVk ZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0y LjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2xpYmRybSAtSS91 c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1scHRocmVhZCAtbG0gLWxYMTEg ICA+JjUgCmNvbmZpZ3VyZToxNjc1MTogJD8gPSAwCmNvbmZpZ3VyZToxNjc1MTogcmVzdWx0OiB5 ZXMKY29uZmlndXJlOjE2NzUxOiBjaGVja2luZyBmb3IgcHRocmVhZF9zaWdtYXNrCmNvbmZpZ3Vy ZToxNjc1MTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE2NzUxOiBjaGVja2luZyBmb3Igc3Ryc2ln bmFsCmNvbmZpZ3VyZToxNjc1MTogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1J L3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1JL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1J L3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2NhaXJvIC1JL3Vzci9pbmNsdWRl L3BpeG1hbi0xIC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9saWJwbmcx NiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3Iv bGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNs dWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAv aW5jbHVkZSAtSS91c3IvaW5jbHVkZS9saWJkcm0gLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAg ICAgY29uZnRlc3QuYyAtbHB0aHJlYWQgLWxtIC1sWDExICAgPiY1IApjb25maWd1cmU6MTY3NTE6 ICQ/ID0gMApjb25maWd1cmU6MTY3NTE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNjc1MTogY2hl Y2tpbmcgZm9yIHNldGl0aW1lcgpjb25maWd1cmU6MTY3NTE6IGdjYyAtbyBjb25mdGVzdCAgLWcz IC1PMiAtcHRocmVhZCAtSS91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtSS91c3IvaW5jbHVkZS9n ZGstcGl4YnVmLTIuMCAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9jYWly byAtSS91c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNy L2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUv Z2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2ZyZWV0 eXBlMiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91 c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvbGliZHJtIC1JL3Vzci9pbmNs dWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxwdGhyZWFkIC1sbSAtbFgxMSAgID4mNSAK Y29uZmlndXJlOjE2NzUxOiAkPyA9IDAKY29uZmlndXJlOjE2NzUxOiByZXN1bHQ6IHllcwpjb25m aWd1cmU6MTY3NTE6IGNoZWNraW5nIGZvciBzZW5kdG8KY29uZmlndXJlOjE2NzUxOiBnY2MgLW8g Y29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLUkvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLUkv dXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNy L2luY2x1ZGUvY2Fpcm8gLUkvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLUkvdXNyL2luY2x1ZGUvZnJl ZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1J L3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3Iv aW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUv Z2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2xpYmRy bSAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1scHRocmVhZCAtbG0g LWxYMTEgICA+JjUgCmNvbmZpZ3VyZToxNjc1MTogJD8gPSAwCmNvbmZpZ3VyZToxNjc1MTogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjE2NzUxOiBjaGVja2luZyBmb3IgcmVjdmZyb20KY29uZmlndXJl OjE2NzUxOiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLUkvdXNyL2luY2x1ZGUv bGlicnN2Zy0yLjAgLUkvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLUkvdXNyL2luY2x1ZGUv bGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvY2Fpcm8gLUkvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLUkv dXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNs dWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAv aW5jbHVkZSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enog LUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vz ci9pbmNsdWRlL2xpYmRybSAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5j IC1scHRocmVhZCAtbG0gLWxYMTEgICA+JjUgCmNvbmZpZ3VyZToxNjc1MTogJD8gPSAwCmNvbmZp Z3VyZToxNjc1MTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE2NzUxOiBjaGVja2luZyBmb3IgZ2V0 c29ja25hbWUKY29uZmlndXJlOjE2NzUxOiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJl YWQgLUkvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLUkvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0y LjAgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvY2Fpcm8gLUkvdXNyL2lu Y2x1ZGUvcGl4bWFuLTEgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2xp YnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1J L3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNy L2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGli LTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2xpYmRybSAtSS91c3IvaW5jbHVkZS9saWJwbmcx NiAgICAgICBjb25mdGVzdC5jIC1scHRocmVhZCAtbG0gLWxYMTEgICA+JjUgCmNvbmZpZ3VyZTox Njc1MTogJD8gPSAwCmNvbmZpZ3VyZToxNjc1MTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE2NzUx OiBjaGVja2luZyBmb3IgZ2V0cGVlcm5hbWUKY29uZmlndXJlOjE2NzUxOiBnY2MgLW8gY29uZnRl c3QgIC1nMyAtTzIgLXB0aHJlYWQgLUkvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLUkvdXNyL2lu Y2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1 ZGUvY2Fpcm8gLUkvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUy IC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9p bmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVk ZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0y LjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2xpYmRybSAtSS91 c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1scHRocmVhZCAtbG0gLWxYMTEg ICA+JjUgCmNvbmZpZ3VyZToxNjc1MTogJD8gPSAwCmNvbmZpZ3VyZToxNjc1MTogcmVzdWx0OiB5 ZXMKY29uZmlndXJlOjE2NzUxOiBjaGVja2luZyBmb3IgZ2V0aWZhZGRycwpjb25maWd1cmU6MTY3 NTE6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtSS91c3IvaW5jbHVkZS9saWJy c3ZnLTIuMCAtSS91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtSS91c3IvaW5jbHVkZS9saWJw bmcxNiAtSS91c3IvaW5jbHVkZS9jYWlybyAtSS91c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91c3Iv aW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUv aGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNs dWRlIC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91 c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2lu Y2x1ZGUvbGliZHJtIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxw dGhyZWFkIC1sbSAtbFgxMSAgID4mNSAKY29uZmlndXJlOjE2NzUxOiAkPyA9IDAKY29uZmlndXJl OjE2NzUxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTY3NTE6IGNoZWNraW5nIGZvciBmcmVlaWZh ZGRycwpjb25maWd1cmU6MTY3NTE6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAt SS91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtSS91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAt SS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9jYWlybyAtSS91c3IvaW5jbHVk ZS9waXhtYW4tMSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvbGlicG5n MTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNy L2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5j bHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4w L2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvbGliZHJtIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAg ICAgIGNvbmZ0ZXN0LmMgLWxwdGhyZWFkIC1sbSAtbFgxMSAgID4mNSAKY29uZmlndXJlOjE2NzUx OiAkPyA9IDAKY29uZmlndXJlOjE2NzUxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTY3NTE6IGNo ZWNraW5nIGZvciBnYWlfc3RyZXJyb3IKY29uZmlndXJlOjE2NzUxOiBnY2MgLW8gY29uZnRlc3Qg IC1nMyAtTzIgLXB0aHJlYWQgLUkvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLUkvdXNyL2luY2x1 ZGUvZ2RrLXBpeGJ1Zi0yLjAgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUv Y2Fpcm8gLUkvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1J L3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNs dWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9m cmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAg LUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2xpYmRybSAtSS91c3Iv aW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1scHRocmVhZCAtbG0gLWxYMTEgICA+ JjUgCmNvbmZpZ3VyZToxNjc1MTogJD8gPSAwCmNvbmZpZ3VyZToxNjc1MTogcmVzdWx0OiB5ZXMK Y29uZmlndXJlOjE2NzUxOiBjaGVja2luZyBmb3Igc3luYwpjb25maWd1cmU6MTY3NTE6IGdjYyAt byBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtSS91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAt SS91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91 c3IvaW5jbHVkZS9jYWlybyAtSS91c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91c3IvaW5jbHVkZS9m cmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enog LUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vz ci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVk ZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvbGli ZHJtIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxwdGhyZWFkIC1s bSAtbFgxMSAgID4mNSAKY29uZmlndXJlOjE2NzUxOiAkPyA9IDAKY29uZmlndXJlOjE2NzUxOiBy ZXN1bHQ6IHllcwpjb25maWd1cmU6MTY3NTE6IGNoZWNraW5nIGZvciBnZXRwd2VudApjb25maWd1 cmU6MTY3NTE6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtSS91c3IvaW5jbHVk ZS9saWJyc3ZnLTIuMCAtSS91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtSS91c3IvaW5jbHVk ZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9jYWlybyAtSS91c3IvaW5jbHVkZS9waXhtYW4tMSAt SS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2lu Y2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIu MC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6 eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkv dXNyL2luY2x1ZGUvbGliZHJtIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0 LmMgLWxwdGhyZWFkIC1sbSAtbFgxMSAgID4mNSAKY29uZmlndXJlOjE2NzUxOiAkPyA9IDAKY29u ZmlndXJlOjE2NzUxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTY3NTE6IGNoZWNraW5nIGZvciBl bmRwd2VudApjb25maWd1cmU6MTY3NTE6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVh ZCAtSS91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtSS91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIu MCAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9jYWlybyAtSS91c3IvaW5j bHVkZS9waXhtYW4tMSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvbGli cG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkv dXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3Iv aW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWIt Mi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvbGliZHJtIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2 ICAgICAgIGNvbmZ0ZXN0LmMgLWxwdGhyZWFkIC1sbSAtbFgxMSAgID4mNSAKY29uZmlndXJlOjE2 NzUxOiAkPyA9IDAKY29uZmlndXJlOjE2NzUxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTY3NTE6 IGNoZWNraW5nIGZvciBnZXRncmVudApjb25maWd1cmU6MTY3NTE6IGdjYyAtbyBjb25mdGVzdCAg LWczIC1PMiAtcHRocmVhZCAtSS91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtSS91c3IvaW5jbHVk ZS9nZGstcGl4YnVmLTIuMCAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9j YWlybyAtSS91c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkv dXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1 ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2Zy ZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAt SS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvbGliZHJtIC1JL3Vzci9p bmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxwdGhyZWFkIC1sbSAtbFgxMSAgID4m NSAKY29uZmlndXJlOjE2NzUxOiAkPyA9IDAKY29uZmlndXJlOjE2NzUxOiByZXN1bHQ6IHllcwpj b25maWd1cmU6MTY3NTE6IGNoZWNraW5nIGZvciBlbmRncmVudApjb25maWd1cmU6MTY3NTE6IGdj YyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtSS91c3IvaW5jbHVkZS9saWJyc3ZnLTIu MCAtSS91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAt SS91c3IvaW5jbHVkZS9jYWlybyAtSS91c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91c3IvaW5jbHVk ZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1 enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1J L3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5j bHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUv bGliZHJtIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxwdGhyZWFk IC1sbSAtbFgxMSAgID4mNSAKY29uZmlndXJlOjE2NzUxOiAkPyA9IDAKY29uZmlndXJlOjE2NzUx OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTY3NTE6IGNoZWNraW5nIGZvciBjZm1ha2VyYXcKY29u ZmlndXJlOjE2NzUxOiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLUkvdXNyL2lu Y2x1ZGUvbGlicnN2Zy0yLjAgLUkvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLUkvdXNyL2lu Y2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvY2Fpcm8gLUkvdXNyL2luY2x1ZGUvcGl4bWFu LTEgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vz ci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xp Yi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvaGFy ZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRl IC1JL3Vzci9pbmNsdWRlL2xpYmRybSAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25m dGVzdC5jIC1scHRocmVhZCAtbG0gLWxYMTEgICA+JjUgCmNvbmZpZ3VyZToxNjc1MTogJD8gPSAw CmNvbmZpZ3VyZToxNjc1MTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE2NzUxOiBjaGVja2luZyBm b3IgY2ZzZXRzcGVlZApjb25maWd1cmU6MTY3NTE6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAt cHRocmVhZCAtSS91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtSS91c3IvaW5jbHVkZS9nZGstcGl4 YnVmLTIuMCAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9jYWlybyAtSS91 c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1 ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0y LjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAt SS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGli L2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvbGliZHJtIC1JL3Vzci9pbmNsdWRlL2xp YnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxwdGhyZWFkIC1sbSAtbFgxMSAgID4mNSAKY29uZmln dXJlOjE2NzUxOiAkPyA9IDAKY29uZmlndXJlOjE2NzUxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6 MTY3NTE6IGNoZWNraW5nIGZvciBjb3B5c2lnbgpjb25maWd1cmU6MTY3NTE6IGdjYyAtbyBjb25m dGVzdCAgLWczIC1PMiAtcHRocmVhZCAtSS91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtSS91c3Iv aW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5j bHVkZS9jYWlybyAtSS91c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91c3IvaW5jbHVkZS9mcmVldHlw ZTIgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNy L2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNs dWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGli LTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvbGliZHJtIC1J L3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxwdGhyZWFkIC1sbSAtbFgx MSAgID4mNSAKY29uZnRlc3QuYzoyMDk6Njogd2FybmluZzogY29uZmxpY3RpbmcgdHlwZXMgZm9y IGJ1aWx0LWluIGZ1bmN0aW9uICdjb3B5c2lnbicKIGNoYXIgY29weXNpZ24gKCk7CiAgICAgIF5+ fn5+fn5+CmNvbmZpZ3VyZToxNjc1MTogJD8gPSAwCmNvbmZpZ3VyZToxNjc1MTogcmVzdWx0OiB5 ZXMKY29uZmlndXJlOjE2NzUxOiBjaGVja2luZyBmb3IgX19leGVjdXRhYmxlX3N0YXJ0CmNvbmZp Z3VyZToxNjc1MTogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1JL3Vzci9pbmNs dWRlL2xpYnJzdmctMi4wIC1JL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1JL3Vzci9pbmNs dWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2NhaXJvIC1JL3Vzci9pbmNsdWRlL3BpeG1hbi0x IC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3Iv aW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWIt Mi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2hhcmZi dXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAt SS91c3IvaW5jbHVkZS9saWJkcm0gLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRl c3QuYyAtbHB0aHJlYWQgLWxtIC1sWDExICAgPiY1IApjb25maWd1cmU6MTY3NTE6ICQ/ID0gMApj b25maWd1cmU6MTY3NTE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNjc1MTogY2hlY2tpbmcgZm9y IGxvZzIKY29uZmlndXJlOjE2NzUxOiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQg LUkvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLUkvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAg LUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvY2Fpcm8gLUkvdXNyL2luY2x1 ZGUvcGl4bWFuLTEgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2xpYnBu ZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vz ci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2lu Y2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIu MC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2xpYmRybSAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAg ICAgICBjb25mdGVzdC5jIC1scHRocmVhZCAtbG0gLWxYMTEgICA+JjUgCmNvbmZ0ZXN0LmM6MjEx OjY6IHdhcm5pbmc6IGNvbmZsaWN0aW5nIHR5cGVzIGZvciBidWlsdC1pbiBmdW5jdGlvbiAnbG9n MicKIGNoYXIgbG9nMiAoKTsKICAgICAgXn5+fgpjb25maWd1cmU6MTY3NTE6ICQ/ID0gMApjb25m aWd1cmU6MTY3NTE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNjc2NTogY2hlY2tpbmcgZm9yIGFs aWduZWRfYWxsb2MKY29uZmlndXJlOjE2NzY1OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0 aHJlYWQgLUkvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLUkvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1 Zi0yLjAgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvY2Fpcm8gLUkvdXNy L2luY2x1ZGUvcGl4bWFuLTEgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRl L2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4w IC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkv dXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9n bGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2xpYmRybSAtSS91c3IvaW5jbHVkZS9saWJw bmcxNiAgICAgICBjb25mdGVzdC5jIC1sWDExICAgPiY1IApjb25mdGVzdC5jOjIxMjo2OiB3YXJu aW5nOiBjb25mbGljdGluZyB0eXBlcyBmb3IgYnVpbHQtaW4gZnVuY3Rpb24gJ2FsaWduZWRfYWxs b2MnCiBjaGFyIGFsaWduZWRfYWxsb2MgKCk7CiAgICAgIF5+fn5+fn5+fn5+fn4KY29uZmlndXJl OjE2NzY1OiAkPyA9IDAKY29uZmlndXJlOjE2NzY1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTY3 NzU6IGNoZWNraW5nIGZvciBfX2J1aWx0aW5fdW53aW5kX2luaXQKY29uZmlndXJlOjE2NzkxOiBn Y2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJlYWQgLUkvdXNyL2luY2x1ZGUvbGlicnN2Zy0y LjAgLUkvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYg LUkvdXNyL2luY2x1ZGUvY2Fpcm8gLUkvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLUkvdXNyL2luY2x1 ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZi dXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAt SS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2lu Y2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRl L2xpYmRybSAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1sWDExICAg PiY1IApjb25maWd1cmU6MTY3OTE6ICQ/ID0gMApjb25maWd1cmU6MTY3OTk6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZToxNjgxMTogY2hlY2tpbmcgZm9yIF9MQVJHRUZJTEVfU09VUkNFIHZhbHVlIG5l ZWRlZCBmb3IgbGFyZ2UgZmlsZXMKY29uZmlndXJlOjE2ODMwOiBnY2MgLW8gY29uZnRlc3QgIC1n MyAtTzIgLXB0aHJlYWQgLUkvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLUkvdXNyL2luY2x1ZGUv Z2RrLXBpeGJ1Zi0yLjAgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvY2Fp cm8gLUkvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vz ci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRl L2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9mcmVl dHlwZTIgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkv dXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2xpYmRybSAtSS91c3IvaW5j bHVkZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1sWDExICAgPiY1IApjb25maWd1cmU6MTY4 MzA6ICQ/ID0gMApjb25maWd1cmU6MTY4NTg6IHJlc3VsdDogbm8KY29uZmlndXJlOjE2ODgzOiBj aGVja2luZyBmb3IgZ3JhbnRwdApjb25maWd1cmU6MTY4ODM6IGdjYyAtbyBjb25mdGVzdCAgLWcz IC1PMiAtcHRocmVhZCAtSS91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtSS91c3IvaW5jbHVkZS9n ZGstcGl4YnVmLTIuMCAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9jYWly byAtSS91c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNy L2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUv Z2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2ZyZWV0 eXBlMiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91 c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvbGliZHJtIC1JL3Vzci9pbmNs dWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxYMTEgICA+JjUgCmNvbmZpZ3VyZToxNjg4 MzogJD8gPSAwCmNvbmZpZ3VyZToxNjg4MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE2ODk3OiBj aGVja2luZyBmb3IgZ2V0cHQKY29uZmlndXJlOjE2ODk3OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAt TzIgLXB0aHJlYWQgLUkvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLUkvdXNyL2luY2x1ZGUvZ2Rr LXBpeGJ1Zi0yLjAgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvY2Fpcm8g LUkvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9p bmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2ds aWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9mcmVldHlw ZTIgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNy L2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2xpYmRybSAtSS91c3IvaW5jbHVk ZS9saWJwbmcxNiAgICAgICBjb25mdGVzdC5jIC1sWDExICAgPiY1IApjb25maWd1cmU6MTY4OTc6 ICQ/ID0gMApjb25maWd1cmU6MTY4OTc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNjg5NzogY2hl Y2tpbmcgZm9yIHBvc2l4X29wZW5wdApjb25maWd1cmU6MTY4OTc6IGdjYyAtbyBjb25mdGVzdCAg LWczIC1PMiAtcHRocmVhZCAtSS91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtSS91c3IvaW5jbHVk ZS9nZGstcGl4YnVmLTIuMCAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9j YWlybyAtSS91c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkv dXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1 ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2Zy ZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAt SS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvbGliZHJtIC1JL3Vzci9p bmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxYMTEgICA+JjUgCmNvbmZpZ3VyZTox Njg5NzogJD8gPSAwCmNvbmZpZ3VyZToxNjg5NzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE2OTEy OiBjaGVja2luZyBmb3IgbGlicmFyeSBjb250YWluaW5nIHRwdXRzCmNvbmZpZ3VyZToxNjk2ODog Z2NjIC1vIGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1JL3Vzci9pbmNsdWRlL2xpYnJzdmct Mi4wIC1JL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2 IC1JL3Vzci9pbmNsdWRlL2NhaXJvIC1JL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1JL3Vzci9pbmNs dWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9oYXJm YnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUg LUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9p bmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVk ZS9saWJkcm0gLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAtbFgxMSAg ID4mNSAKL3RtcC9jY3Y2OVJJRy5vOiBJbiBmdW5jdGlvbiBgbWFpbic6Ci9ob21lL2RlZWNoL0Rv d25sb2Fkcy9lbWFjcy0yNS4xL2NvbmZ0ZXN0LmM6MjAwOiB1bmRlZmluZWQgcmVmZXJlbmNlIHRv IGB0cHV0cycKY29sbGVjdDI6IGVycm9yOiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVzCmNvbmZp Z3VyZToxNjk2ODogJD8gPSAxCmNvbmZpZ3VyZTogcHJvZ3JhbSBleGl0ZWQgd2l0aCBzdGF0dXMg MQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2Rl ZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAi ZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjI1LjEiCnwgI2RlZmluZSBQQUNLQUdF X1NUUklORyAiR05VIEVtYWNzIDI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVn LWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHA6Ly93d3cuZ251 Lm9yZy9zb2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmluZSBQQUNLQUdFICJlbWFjcyIKfCAjZGVmaW5l IFZFUlNJT04gIjI1LjEiCnwgI2RlZmluZSBNQUlMX1VTRV9QT1AgMQp8ICNkZWZpbmUgSEFWRV9Q VVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9UWlNFVCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwg I2RlZmluZSBIQVZFX1JFQURMSU5LQVQgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNk ZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBI QVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJ TUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfTUtPU1RFTVAg MQp8ICNkZWZpbmUgSEFWRV9QSVBFMiAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZp bmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBI QVZFX1NUUlRPVU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9M T0NBTFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX1RJTUVHTSAxCnwgI2RlZmluZSBIQVZFX0ZVVElN RVMgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVTQVQgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVOUyAx CnwgI2RlZmluZSBIQVZFX1VUSU1FTlNBVCAxCnwgI2RlZmluZSBIQVZFX0xVVElNRVMgMQp8ICNk ZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VDVVJFX0dFVEVOViAx CnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2Rl ZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUg SEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhB VkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVO U0lPTlNfXyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09V UkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9fVVNFX01JTkdXX0FOU0lf U1RESU8gMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9U QU5ERU1fU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fVVNFXzY0X0JJVF9JTk9ERSAxCnwgI2Rl ZmluZSBTWVNURU1fVFlQRSAiZ251L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJE X0ggMQp8ICNkZWZpbmUgSEFWRV9BTFNBIDEKfCAjZGVmaW5lIEhBVkVfU09VTkQgMQp8ICNkZWZp bmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNk ZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVf VU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BU SFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5U X0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fRVhU X0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0gg MQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNk ZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZp bmUgSEFWRV9QRVJTT05BTElUWV9MSU5VWDMyIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5G TyAxCnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUgSEFWRV9URVJNX0gg MQp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TWVNf U0lHTElTVCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRf SUZfSCAxCnwgI2RlZmluZSBIQVZFX0lGQUREUlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9J RlJFUV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAx CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZF X1NUUlVDVF9JRlJFUV9JRlJfQlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVR X0lGUl9BRERSIDEKfCAjZGVmaW5lIEhBVkVfTE9OR19GSUxFX05BTUVTIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1ZMSU1JVF9IIDEKfCAjZGVmaW5lIEhBVkVfREFUQV9TVEFSVCAxCnwgI2RlZmluZSBI QVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2RlZmluZSBIQVZFX1BU SFJFQUQgMQp8ICNkZWZpbmUgSEFWRV9YS0IgMQp8ICNkZWZpbmUgSEFWRV9YUk1TRVREQVRBQkFT RSAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNPVVJDRVNUUklORyAxCnwgI2RlZmluZSBIQVZF X1hTQ1JFRU5OVU1CRVJPRlNDUkVFTiAxCnwgI2RlZmluZSBIQVZFX1gxMVI2IDEKfCAjZGVmaW5l IEhBVkVfWF9JMThOIDEKfCAjZGVmaW5lIEhBVkVfWDExUjZfWElNIDEKfCAjZGVmaW5lIEhBVkVf UlNWRyAxCnwgI2RlZmluZSBIQVZFX0lNQUdFTUFHSUNLIDEKfCAjZGVmaW5lIEhBVkVfTUFHSUNL RVhQT1JUSU1BR0VQSVhFTFMgMQp8ICNkZWZpbmUgSEFWRV9NQUdJQ0tNRVJHRUlNQUdFTEFZRVJT IDEKfCAjZGVmaW5lIEhBVkVfREJVUyAxCnwgI2RlZmluZSBIQVZFX0RCVVNfV0FUQ0hfR0VUX1VO SVhfRkQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1RZUEVfSVNfVkFMSUQgMQp8ICNkZWZpbmUgSEFW RV9EQlVTX1ZBTElEQVRFX0JVU19OQU1FIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9Q QVRIIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9JTlRFUkZBQ0UgMQp8ICNkZWZpbmUg SEFWRV9EQlVTX1ZBTElEQVRFX01FTUJFUiAxCnwgI2RlZmluZSBIQVZFX0dTRVRUSU5HUyAxCnwg I2RlZmluZSBIQVZFX0dDT05GIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhB VkVfR05VVExTMyAxCnwgI2RlZmluZSBIQVZFX0lOT1RJRlkgMQp8ICNkZWZpbmUgVVNFX0ZJTEVf Tk9USUZZIDEKfCAjZGVmaW5lIEhBVkVfWDExWFRSNiAxCnwgI2RlZmluZSBVU0VfVE9PTEtJVF9T Q1JPTExfQkFSUyAxCnwgI2RlZmluZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBVU0VfWElNIDEKfCAj ZGVmaW5lIFhSZWdpc3RlcklNSW5zdGFudGlhdGVDYWxsYmFja19hcmc2IFhQb2ludGVyCnwgI2Rl ZmluZSBIQVZFX1hGVCAxCnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAjZGVmaW5lIEhBVkVf TElCT1RGIDEKfCAjZGVmaW5lIEhBVkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTIDEKfCAjZGVm aW5lIEhBVkVfTTE3Tl9GTFQgMQp8ICNkZWZpbmUgVVNFX1hDQiAxCnwgI2RlZmluZSBIQVZFX1hQ TSAxCnwgI2RlZmluZSBIQVZFX0pQRUcgMQp8ICNkZWZpbmUgSEFWRV9aTElCIDEKfCAjZGVmaW5l IEhBVkVfUE5HIDEKfCAjZGVmaW5lIEhBVkVfVElGRiAxCnwgI2RlZmluZSBIQVZFX0dJRiAxCnwg I2RlZmluZSBIQVZFX0dQTSAxCnwgI2RlZmluZSBIQVZFX1hfU00gMQp8ICNkZWZpbmUgSEFWRV9Y UkFORFIgMQp8ICNkZWZpbmUgSEFWRV9YSU5FUkFNQSAxCnwgI2RlZmluZSBIQVZFX1hGSVhFUyAx CnwgI2RlZmluZSBIQVZFX0xJQlhNTDIgMQp8ICNkZWZpbmUgSEFWRV9IX0VSUk5PIDEKfCAjZGVm aW5lIE1BSUxfVVNFX0ZMT0NLIDEKfCAjZGVmaW5lIEhBVkVfQUNDRVBUNCAxCnwgI2RlZmluZSBI QVZFX0ZDSERJUiAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVf R0VUUlVTQUdFIDEKfCAjZGVmaW5lIEhBVkVfR0VUX0NVUlJFTlRfRElSX05BTUUgMQp8ICNkZWZp bmUgSEFWRV9MUkFORDQ4IDEKfCAjZGVmaW5lIEhBVkVfUkFORE9NIDEKfCAjZGVmaW5lIEhBVkVf UklOVCAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpF IDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfTkVXTE9DQUxFIDEK fCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAj ZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9HRVRBRERSSU5GTyAxCnwgI2Rl ZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlNJR05BTCAxCnwg I2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX1NFTkRUTyAxCnwgI2RlZmlu ZSBIQVZFX1JFQ1ZGUk9NIDEKfCAjZGVmaW5lIEhBVkVfR0VUU09DS05BTUUgMQp8ICNkZWZpbmUg SEFWRV9HRVRQRUVSTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVElGQUREUlMgMQp8ICNkZWZpbmUg SEFWRV9GUkVFSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0dBSV9TVFJFUlJPUiAxCnwgI2RlZmlu ZSBIQVZFX1NZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0VO RFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRHUkVO VCAxCnwgI2RlZmluZSBIQVZFX0NGTUFLRVJBVyAxCnwgI2RlZmluZSBIQVZFX0NGU0VUU1BFRUQg MQp8ICNkZWZpbmUgSEFWRV9DT1BZU0lHTiAxCnwgI2RlZmluZSBIQVZFX19fRVhFQ1VUQUJMRV9T VEFSVCAxCnwgI2RlZmluZSBIQVZFX0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9D IDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX1VOV0lORF9JTklUIDEKfCAjZGVmaW5lIEhBVkVf RlNFRUtPIDEKfCAjZGVmaW5lIEhBVkVfR1JBTlRQVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBUIDEK fCAjZGVmaW5lIEhBVkVfUE9TSVhfT1BFTlBUIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwg CnwgICBleHRlcm4gdm9pZCB0cHV0cyAoY29uc3QgY2hhciAqLCBpbnQsIGludCAoKikoaW50KSk7 CnwgICAgICAgIGludCBtYWluIChpbnQgYXJnYywgY2hhciAqKmFyZ3YpCnwgICAgICAgIHsKfCAJ ICBpZiAoYXJnYyA9PSAxMDAwMCkKfCAJICAgIHRwdXRzIChhcmd2WzBdLCAwLCAwKTsKfCAJICBy ZXR1cm4gMDsKfCAgICAgICAgfQp8IApjb25maWd1cmU6MTY5Njg6IGdjYyAtbyBjb25mdGVzdCAg LWczIC1PMiAtcHRocmVhZCAtSS91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtSS91c3IvaW5jbHVk ZS9nZGstcGl4YnVmLTIuMCAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9j YWlybyAtSS91c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkv dXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1 ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2Zy ZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAt SS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvbGliZHJtIC1JL3Vzci9p bmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWx0aW5mbyAtbFgxMSAgID4mNSAKY29u ZmlndXJlOjE2OTY4OiAkPyA9IDAKY29uZmlndXJlOjE2OTY4OiAuL2NvbmZ0ZXN0CmNvbmZpZ3Vy ZToxNjk2ODogJD8gPSAwCmNvbmZpZ3VyZToxNjk4MzogcmVzdWx0OiAtbHRpbmZvCmNvbmZpZ3Vy ZToxNzA5MDogY2hlY2tpbmcgZm9yIHRpbWVyZmQgaW50ZXJmYWNlCmNvbmZpZ3VyZToxNzEwOTog Z2NjIC1jICAtZzMgLU8yIC1wdGhyZWFkIC1JL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1JL3Vz ci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9p bmNsdWRlL2NhaXJvIC1JL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1JL3Vzci9pbmNsdWRlL2ZyZWV0 eXBlMiAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91 c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2lu Y2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2ds aWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9saWJkcm0g LUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxNzEw OTogJD8gPSAwCmNvbmZpZ3VyZToxNzExNjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE3MTI1OiBj aGVja2luZyB3aGV0aGVyIHNpZ25hbHMgY2FuIGJlIGhhbmRsZWQgb24gYWx0ZXJuYXRlIHN0YWNr CmNvbmZpZ3VyZToxNzE0ODogZ2NjIC1jICAtZzMgLU8yIC1wdGhyZWFkIC1JL3Vzci9pbmNsdWRl L2xpYnJzdmctMi4wIC1JL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1JL3Vzci9pbmNsdWRl L2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2NhaXJvIC1JL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1J L3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5j bHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4w L2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6 IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91 c3IvaW5jbHVkZS9saWJkcm0gLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgIGNvbmZ0ZXN0LmMg PiY1CmNvbmZ0ZXN0LmM6IEluIGZ1bmN0aW9uICdtYWluJzoKY29uZnRlc3QuYzoyMDQ6MTU6IHdh cm5pbmc6IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9uICdtYWxsb2MnIFstV2ltcGxp Y2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQogICAgc3Muc3Nfc3AgPSBtYWxsb2MgKFNJR1NUS1Na KTsKICAgICAgICAgICAgICAgXn5+fn5+CmNvbmZ0ZXN0LmM6MjA0OjE1OiB3YXJuaW5nOiBpbmNv bXBhdGlibGUgaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgYnVpbHQtaW4gZnVuY3Rpb24gJ21hbGxv YycKY29uZnRlc3QuYzoyMDQ6MTU6IG5vdGU6IGluY2x1ZGUgJzxzdGRsaWIuaD4nIG9yIHByb3Zp ZGUgYSBkZWNsYXJhdGlvbiBvZiAnbWFsbG9jJwpjb25maWd1cmU6MTcxNDg6ICQ/ID0gMApjb25m aWd1cmU6MTcxNTU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNzE3ODogZ2NjIC1vIGNvbmZ0ZXN0 ICAtZzMgLU8yIC1wdGhyZWFkIC1JL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1JL3Vzci9pbmNs dWRlL2dkay1waXhidWYtMi4wIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRl L2NhaXJvIC1JL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAt SS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5j bHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUv ZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4w IC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9saWJkcm0gLUkvdXNy L2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAtbFgxMSAgID4mNSAKY29uZmlndXJl OjE3MTc4OiAkPyA9IDAKY29uZmlndXJlOjE3ODY3OiBjaGVja2luZyB2YWxncmluZC92YWxncmlu ZC5oIHVzYWJpbGl0eQpjb25maWd1cmU6MTc4Njc6IGdjYyAtYyAgLWczIC1PMiAtcHRocmVhZCAt SS91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtSS91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAt SS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9jYWlybyAtSS91c3IvaW5jbHVk ZS9waXhtYW4tMSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvbGlicG5n MTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNy L2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5j bHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4w L2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvbGliZHJtIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAg ICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOjIzMTozMTogZmF0YWwgZXJyb3I6IHZhbGdyaW5k L3ZhbGdyaW5kLmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKICNpbmNsdWRlIDx2YWxncmlu ZC92YWxncmluZC5oPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgpjb21waWxhdGlv biB0ZXJtaW5hdGVkLgpjb25maWd1cmU6MTc4Njc6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBw cm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdO VSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNL QUdFX1ZFUlNJT04gIjI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDI1 LjEiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8 ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHA6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9lbWFjcy8i CnwgI2RlZmluZSBQQUNLQUdFICJlbWFjcyIKfCAjZGVmaW5lIFZFUlNJT04gIjI1LjEiCnwgI2Rl ZmluZSBNQUlMX1VTRV9QT1AgMQp8ICNkZWZpbmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZpbmUgSEFW RV9UWlNFVCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5L QVQgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwg I2RlZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZp bmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBI QVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfTUtPU1RFTVAgMQp8ICNkZWZpbmUgSEFWRV9QSVBF MiAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwg I2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX1NUUlRPVU1BWCAxCnwgI2Rl ZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmlu ZSBIQVZFX1RJTUVHTSAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9G VVRJTUVTQVQgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVOUyAxCnwgI2RlZmluZSBIQVZFX1VUSU1F TlNBVCAxCnwgI2RlZmluZSBIQVZFX0xVVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVT SVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VDVVJFX0dFVEVOViAxCnwgI2RlZmluZSBTVERDX0hFQURF UlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFU X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEK fCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNk ZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZp bmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBf QUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVf U09VUkNFIDEKfCAjZGVmaW5lIF9fVVNFX01JTkdXX0FOU0lfU1RESU8gMQp8ICNkZWZpbmUgX1BP U0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVm aW5lIF9EQVJXSU5fVVNFXzY0X0JJVF9JTk9ERSAxCnwgI2RlZmluZSBTWVNURU1fVFlQRSAiZ251 L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJEX0ggMQp8ICNkZWZpbmUgSEFWRV9B TFNBIDEKfCAjZGVmaW5lIEhBVkVfU09VTkQgMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19I IDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAx CnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwg I2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2Rl ZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9F WEVDSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9H RVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hB Ul9IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRf SCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QRVJTT05BTElUWV9M SU5VWDMyIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5GTyAxCnwgI2RlZmluZSBMSU5VWF9T WVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUgSEFWRV9URVJNX0ggMQp8ICNkZWZpbmUgVElNRV9XSVRI X1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TWVNfU0lHTElTVCAxCnwgI2RlZmluZSBI QVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZF X0lGQUREUlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8ICNk ZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVD VF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJP QURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERSIDEKfCAjZGVmaW5l IEhBVkVfTE9OR19GSUxFX05BTUVTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1ZMSU1JVF9IIDEKfCAj ZGVmaW5lIEhBVkVfREFUQV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAj ZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQUQgMQp8ICNkZWZpbmUgSEFW RV9YS0IgMQp8ICNkZWZpbmUgSEFWRV9YUk1TRVREQVRBQkFTRSAxCnwgI2RlZmluZSBIQVZFX1hT Q1JFRU5SRVNPVVJDRVNUUklORyAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJPRlNDUkVF TiAxCnwgI2RlZmluZSBIQVZFX1gxMVI2IDEKfCAjZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVm aW5lIEhBVkVfWDExUjZfWElNIDEKfCAjZGVmaW5lIEhBVkVfUlNWRyAxCnwgI2RlZmluZSBIQVZF X0lNQUdFTUFHSUNLIDEKfCAjZGVmaW5lIEhBVkVfTUFHSUNLRVhQT1JUSU1BR0VQSVhFTFMgMQp8 ICNkZWZpbmUgSEFWRV9NQUdJQ0tNRVJHRUlNQUdFTEFZRVJTIDEKfCAjZGVmaW5lIEhBVkVfREJV UyAxCnwgI2RlZmluZSBIQVZFX0RCVVNfV0FUQ0hfR0VUX1VOSVhfRkQgMQp8ICNkZWZpbmUgSEFW RV9EQlVTX1RZUEVfSVNfVkFMSUQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0JVU19O QU1FIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9QQVRIIDEKfCAjZGVmaW5lIEhBVkVf REJVU19WQUxJREFURV9JTlRFUkZBQ0UgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX01F TUJFUiAxCnwgI2RlZmluZSBIQVZFX0dTRVRUSU5HUyAxCnwgI2RlZmluZSBIQVZFX0dDT05GIDEK fCAjZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTMyAxCnwgI2RlZmlu ZSBIQVZFX0lOT1RJRlkgMQp8ICNkZWZpbmUgVVNFX0ZJTEVfTk9USUZZIDEKfCAjZGVmaW5lIEhB VkVfWDExWFRSNiAxCnwgI2RlZmluZSBVU0VfVE9PTEtJVF9TQ1JPTExfQkFSUyAxCnwgI2RlZmlu ZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBVU0VfWElNIDEKfCAjZGVmaW5lIFhSZWdpc3RlcklNSW5z dGFudGlhdGVDYWxsYmFja19hcmc2IFhQb2ludGVyCnwgI2RlZmluZSBIQVZFX1hGVCAxCnwgI2Rl ZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAjZGVmaW5lIEhBVkVfTElCT1RGIDEKfCAjZGVmaW5lIEhB VkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTIDEKfCAjZGVmaW5lIEhBVkVfTTE3Tl9GTFQgMQp8 ICNkZWZpbmUgVVNFX1hDQiAxCnwgI2RlZmluZSBIQVZFX1hQTSAxCnwgI2RlZmluZSBIQVZFX0pQ RUcgMQp8ICNkZWZpbmUgSEFWRV9aTElCIDEKfCAjZGVmaW5lIEhBVkVfUE5HIDEKfCAjZGVmaW5l IEhBVkVfVElGRiAxCnwgI2RlZmluZSBIQVZFX0dJRiAxCnwgI2RlZmluZSBIQVZFX0dQTSAxCnwg I2RlZmluZSBIQVZFX1hfU00gMQp8ICNkZWZpbmUgSEFWRV9YUkFORFIgMQp8ICNkZWZpbmUgSEFW RV9YSU5FUkFNQSAxCnwgI2RlZmluZSBIQVZFX1hGSVhFUyAxCnwgI2RlZmluZSBIQVZFX0xJQlhN TDIgMQp8ICNkZWZpbmUgSEFWRV9IX0VSUk5PIDEKfCAjZGVmaW5lIE1BSUxfVVNFX0ZMT0NLIDEK fCAjZGVmaW5lIEhBVkVfQUNDRVBUNCAxCnwgI2RlZmluZSBIQVZFX0ZDSERJUiAxCnwgI2RlZmlu ZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUUlVTQUdFIDEKfCAjZGVmaW5l IEhBVkVfR0VUX0NVUlJFTlRfRElSX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9MUkFORDQ4IDEKfCAj ZGVmaW5lIEhBVkVfUkFORE9NIDEKfCAjZGVmaW5lIEhBVkVfUklOVCAxCnwgI2RlZmluZSBIQVZF X1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VU TE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfTkVXTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJ TUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04g MQp8ICNkZWZpbmUgSEFWRV9HRVRBRERSSU5GTyAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lH TUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlNJR05BTCAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1F UiAxCnwgI2RlZmluZSBIQVZFX1NFTkRUTyAxCnwgI2RlZmluZSBIQVZFX1JFQ1ZGUk9NIDEKfCAj ZGVmaW5lIEhBVkVfR0VUU09DS05BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRQRUVSTkFNRSAxCnwg I2RlZmluZSBIQVZFX0dFVElGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9GUkVFSUZBRERSUyAxCnwg I2RlZmluZSBIQVZFX0dBSV9TVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZFX1NZTkMgMQp8ICNkZWZp bmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0VORFBXRU5UIDEKfCAjZGVmaW5lIEhB VkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0NG TUFLRVJBVyAxCnwgI2RlZmluZSBIQVZFX0NGU0VUU1BFRUQgMQp8ICNkZWZpbmUgSEFWRV9DT1BZ U0lHTiAxCnwgI2RlZmluZSBIQVZFX19fRVhFQ1VUQUJMRV9TVEFSVCAxCnwgI2RlZmluZSBIQVZF X0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfX19C VUlMVElOX1VOV0lORF9JTklUIDEKfCAjZGVmaW5lIEhBVkVfRlNFRUtPIDEKfCAjZGVmaW5lIEhB VkVfR1JBTlRQVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBUIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhf T1BFTlBUIDEKfCAjZGVmaW5lIFRFUk1JTkZPIDEKfCAjZGVmaW5lIEhBVkVfVElNRVJGRCAxCnwg I2RlZmluZSBIQVZFX1JFU19JTklUIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1 ZGUgPHN0ZGlvLmg+CnwgI2lmZGVmIEhBVkVfU1lTX1RZUEVTX0gKfCAjIGluY2x1ZGUgPHN5cy90 eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NZU19TVEFUX0gKfCAjIGluY2x1ZGUgPHN5 cy9zdGF0Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIFNURENfSEVBREVSUwp8ICMgaW5jbHVkZSA8c3Rk bGliLmg+CnwgIyBpbmNsdWRlIDxzdGRkZWYuaD4KfCAjZWxzZQp8ICMgaWZkZWYgSEFWRV9TVERM SUJfSAp8ICMgIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgZW5kaWYKfCAjZW5kaWYKfCAjaWZkZWYg SEFWRV9TVFJJTkdfSAp8ICMgaWYgIWRlZmluZWQgU1REQ19IRUFERVJTICYmIGRlZmluZWQgSEFW RV9NRU1PUllfSAp8ICMgIGluY2x1ZGUgPG1lbW9yeS5oPgp8ICMgZW5kaWYKfCAjIGluY2x1ZGUg PHN0cmluZy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR1NfSAp8ICMgaW5jbHVkZSA8 c3RyaW5ncy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX0lOVFRZUEVTX0gKfCAjIGluY2x1ZGUg PGludHR5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RESU5UX0gKfCAjIGluY2x1ZGUg PHN0ZGludC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1VOSVNURF9ICnwgIyBpbmNsdWRlIDx1 bmlzdGQuaD4KfCAjZW5kaWYKfCAjaW5jbHVkZSA8dmFsZ3JpbmQvdmFsZ3JpbmQuaD4KY29uZmln dXJlOjE3ODY3OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToxNzg2NzogY2hlY2tpbmcgdmFsZ3JpbmQv dmFsZ3JpbmQuaCBwcmVzZW5jZQpjb25maWd1cmU6MTc4Njc6IGdjYyAtRSAgICAgY29uZnRlc3Qu Ywpjb25mdGVzdC5jOjE5ODozMTogZmF0YWwgZXJyb3I6IHZhbGdyaW5kL3ZhbGdyaW5kLmg6IE5v IHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKICNpbmNsdWRlIDx2YWxncmluZC92YWxncmluZC5oPgog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgpjb21waWxhdGlvbiB0ZXJtaW5hdGVkLgpj b25maWd1cmU6MTc4Njc6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAv KiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVm aW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjI1 LjEiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDI1LjEiCnwgI2RlZmluZSBQ QUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FH RV9VUkwgImh0dHA6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmluZSBQQUNL QUdFICJlbWFjcyIKfCAjZGVmaW5lIFZFUlNJT04gIjI1LjEiCnwgI2RlZmluZSBNQUlMX1VTRV9Q T1AgMQp8ICNkZWZpbmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9UWlNFVCAxCnwgI2Rl ZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LQVQgMQp8ICNkZWZpbmUg SEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX0ZE T1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAx CnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAj ZGVmaW5lIEhBVkVfTUtPU1RFTVAgMQp8ICNkZWZpbmUgSEFWRV9QSVBFMiAxCnwgI2RlZmluZSBI QVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX1NU UlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX1NUUlRPVU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJ TksgMQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX1RJTUVHTSAx CnwgI2RlZmluZSBIQVZFX0ZVVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVTQVQgMQp8ICNk ZWZpbmUgSEFWRV9GVVRJTUVOUyAxCnwgI2RlZmluZSBIQVZFX1VUSU1FTlNBVCAxCnwgI2RlZmlu ZSBIQVZFX0xVVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5l IEhBVkVfU0VDVVJFX0dFVEVOViAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUg SEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUg SEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVf TUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRU WVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERf SCAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwg I2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVm aW5lIF9fVVNFX01JTkdXX0FOU0lfU1RESU8gMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VN QU5USUNTIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fVVNF XzY0X0JJVF9JTk9ERSAxCnwgI2RlZmluZSBTWVNURU1fVFlQRSAiZ251L2xpbnV4Igp8ICNkZWZp bmUgSEFWRV9TWVNfU09VTkRDQVJEX0ggMQp8ICNkZWZpbmUgSEFWRV9BTFNBIDEKfCAjZGVmaW5l IEhBVkVfU09VTkQgMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhB VkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VU TVBfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJ Ql9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1f SCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEK fCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAj ZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5l IEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBI QVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QRVJTT05BTElUWV9MSU5VWDMyIDEKfCAjZGVm aW5lIEhBVkVfTElOVVhfU1lTSU5GTyAxCnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8 ICNkZWZpbmUgSEFWRV9URVJNX0ggMQp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9TWVNfU0lHTElTVCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0gg MQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZFX0lGQUREUlNfSCAxCnwg I2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9TVFJV Q1RfSUZSRVFfSUZSX0hXQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfTkVU TUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJPQURBRERSIDEKfCAjZGVm aW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERSIDEKfCAjZGVmaW5lIEhBVkVfTE9OR19GSUxF X05BTUVTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1ZMSU1JVF9IIDEKfCAjZGVmaW5lIEhBVkVfREFU QV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfTU1B UCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQUQgMQp8ICNkZWZpbmUgSEFWRV9YS0IgMQp8ICNkZWZp bmUgSEFWRV9YUk1TRVREQVRBQkFTRSAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNPVVJDRVNU UklORyAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJPRlNDUkVFTiAxCnwgI2RlZmluZSBI QVZFX1gxMVI2IDEKfCAjZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVmaW5lIEhBVkVfWDExUjZf WElNIDEKfCAjZGVmaW5lIEhBVkVfUlNWRyAxCnwgI2RlZmluZSBIQVZFX0lNQUdFTUFHSUNLIDEK fCAjZGVmaW5lIEhBVkVfTUFHSUNLRVhQT1JUSU1BR0VQSVhFTFMgMQp8ICNkZWZpbmUgSEFWRV9N QUdJQ0tNRVJHRUlNQUdFTEFZRVJTIDEKfCAjZGVmaW5lIEhBVkVfREJVUyAxCnwgI2RlZmluZSBI QVZFX0RCVVNfV0FUQ0hfR0VUX1VOSVhfRkQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1RZUEVfSVNf VkFMSUQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0JVU19OQU1FIDEKfCAjZGVmaW5l IEhBVkVfREJVU19WQUxJREFURV9QQVRIIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9J TlRFUkZBQ0UgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX01FTUJFUiAxCnwgI2RlZmlu ZSBIQVZFX0dTRVRUSU5HUyAxCnwgI2RlZmluZSBIQVZFX0dDT05GIDEKfCAjZGVmaW5lIEhBVkVf R05VVExTIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTMyAxCnwgI2RlZmluZSBIQVZFX0lOT1RJRlkg MQp8ICNkZWZpbmUgVVNFX0ZJTEVfTk9USUZZIDEKfCAjZGVmaW5lIEhBVkVfWDExWFRSNiAxCnwg I2RlZmluZSBVU0VfVE9PTEtJVF9TQ1JPTExfQkFSUyAxCnwgI2RlZmluZSBIQVZFX1hJTSAxCnwg I2RlZmluZSBVU0VfWElNIDEKfCAjZGVmaW5lIFhSZWdpc3RlcklNSW5zdGFudGlhdGVDYWxsYmFj a19hcmc2IFhQb2ludGVyCnwgI2RlZmluZSBIQVZFX1hGVCAxCnwgI2RlZmluZSBIQVZFX0ZSRUVU WVBFIDEKfCAjZGVmaW5lIEhBVkVfTElCT1RGIDEKfCAjZGVmaW5lIEhBVkVfT1RGX0dFVF9WQVJJ QVRJT05fR0xZUEhTIDEKfCAjZGVmaW5lIEhBVkVfTTE3Tl9GTFQgMQp8ICNkZWZpbmUgVVNFX1hD QiAxCnwgI2RlZmluZSBIQVZFX1hQTSAxCnwgI2RlZmluZSBIQVZFX0pQRUcgMQp8ICNkZWZpbmUg SEFWRV9aTElCIDEKfCAjZGVmaW5lIEhBVkVfUE5HIDEKfCAjZGVmaW5lIEhBVkVfVElGRiAxCnwg I2RlZmluZSBIQVZFX0dJRiAxCnwgI2RlZmluZSBIQVZFX0dQTSAxCnwgI2RlZmluZSBIQVZFX1hf U00gMQp8ICNkZWZpbmUgSEFWRV9YUkFORFIgMQp8ICNkZWZpbmUgSEFWRV9YSU5FUkFNQSAxCnwg I2RlZmluZSBIQVZFX1hGSVhFUyAxCnwgI2RlZmluZSBIQVZFX0xJQlhNTDIgMQp8ICNkZWZpbmUg SEFWRV9IX0VSUk5PIDEKfCAjZGVmaW5lIE1BSUxfVVNFX0ZMT0NLIDEKfCAjZGVmaW5lIEhBVkVf QUNDRVBUNCAxCnwgI2RlZmluZSBIQVZFX0ZDSERJUiAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1RO QU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUUlVTQUdFIDEKfCAjZGVmaW5lIEhBVkVfR0VUX0NVUlJF TlRfRElSX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9MUkFORDQ4IDEKfCAjZGVmaW5lIEhBVkVfUkFO RE9NIDEKfCAjZGVmaW5lIEhBVkVfUklOVCAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2Rl ZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVm aW5lIEhBVkVfTkVXTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5l IEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFW RV9HRVRBRERSSU5GTyAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmlu ZSBIQVZFX1NUUlNJR05BTCAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBI QVZFX1NFTkRUTyAxCnwgI2RlZmluZSBIQVZFX1JFQ1ZGUk9NIDEKfCAjZGVmaW5lIEhBVkVfR0VU U09DS05BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRQRUVSTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dF VElGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9GUkVFSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0dB SV9TVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZFX1NZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VO VCAxCnwgI2RlZmluZSBIQVZFX0VORFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8 ICNkZWZpbmUgSEFWRV9FTkRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0NGTUFLRVJBVyAxCnwgI2Rl ZmluZSBIQVZFX0NGU0VUU1BFRUQgMQp8ICNkZWZpbmUgSEFWRV9DT1BZU0lHTiAxCnwgI2RlZmlu ZSBIQVZFX19fRVhFQ1VUQUJMRV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0xPRzIgMQp8ICNkZWZp bmUgSEFWRV9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX1VOV0lORF9J TklUIDEKfCAjZGVmaW5lIEhBVkVfRlNFRUtPIDEKfCAjZGVmaW5lIEhBVkVfR1JBTlRQVCAxCnwg I2RlZmluZSBIQVZFX0dFVFBUIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfT1BFTlBUIDEKfCAjZGVm aW5lIFRFUk1JTkZPIDEKfCAjZGVmaW5lIEhBVkVfVElNRVJGRCAxCnwgI2RlZmluZSBIQVZFX1JF U19JTklUIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHZhbGdyaW5kL3Zh bGdyaW5kLmg+CmNvbmZpZ3VyZToxNzg2NzogcmVzdWx0OiBubwpjb25maWd1cmU6MTc4Njc6IGNo ZWNraW5nIGZvciB2YWxncmluZC92YWxncmluZC5oCmNvbmZpZ3VyZToxNzg2NzogcmVzdWx0OiBu bwpjb25maWd1cmU6MTc4Nzg6IGNoZWNraW5nIGZvciBzdHJ1Y3QgdW5pcGFpci51bmljb2RlCmNv bmZpZ3VyZToxNzg3ODogZ2NjIC1jICAtZzMgLU8yIC1wdGhyZWFkIC1JL3Vzci9pbmNsdWRlL2xp YnJzdmctMi4wIC1JL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1JL3Vzci9pbmNsdWRlL2xp YnBuZzE2IC1JL3Vzci9pbmNsdWRlL2NhaXJvIC1JL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1JL3Vz ci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVk ZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2lu Y2x1ZGUgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1J L3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3Iv aW5jbHVkZS9saWJkcm0gLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgIGNvbmZ0ZXN0LmMgPiY1 CmNvbmZpZ3VyZToxNzg3ODogJD8gPSAwCmNvbmZpZ3VyZToxNzg3ODogcmVzdWx0OiB5ZXMKY29u ZmlndXJlOjE3ODk1OiBjaGVja2luZyBmb3Igc29ja2V0CmNvbmZpZ3VyZToxNzg5NTogZ2NjIC1v IGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1JL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1J L3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vz ci9pbmNsdWRlL2NhaXJvIC1JL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1JL3Vzci9pbmNsdWRlL2Zy ZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAt SS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNy L2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRl L2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9saWJk cm0gLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAtbFgxMSAgID4mNSAK Y29uZmlndXJlOjE3ODk1OiAkPyA9IDAKY29uZmlndXJlOjE3ODk1OiByZXN1bHQ6IHllcwpjb25m aWd1cmU6MTc5MDM6IGNoZWNraW5nIG5ldGluZXQvaW4uaCB1c2FiaWxpdHkKY29uZmlndXJlOjE3 OTAzOiBnY2MgLWMgIC1nMyAtTzIgLXB0aHJlYWQgLUkvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAg LUkvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkv dXNyL2luY2x1ZGUvY2Fpcm8gLUkvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLUkvdXNyL2luY2x1ZGUv ZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6 IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91 c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1 ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2xp YmRybSAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJl OjE3OTAzOiAkPyA9IDAKY29uZmlndXJlOjE3OTAzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTc5 MDM6IGNoZWNraW5nIG5ldGluZXQvaW4uaCBwcmVzZW5jZQpjb25maWd1cmU6MTc5MDM6IGdjYyAt RSAgICAgY29uZnRlc3QuYwpjb25maWd1cmU6MTc5MDM6ICQ/ID0gMApjb25maWd1cmU6MTc5MDM6 IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNzkwMzogY2hlY2tpbmcgZm9yIG5ldGluZXQvaW4uaApj b25maWd1cmU6MTc5MDM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNzkxMzogY2hlY2tpbmcgYXJw YS9pbmV0LmggdXNhYmlsaXR5CmNvbmZpZ3VyZToxNzkxMzogZ2NjIC1jICAtZzMgLU8yIC1wdGhy ZWFkIC1JL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1JL3Vzci9pbmNsdWRlL2dkay1waXhidWYt Mi4wIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2NhaXJvIC1JL3Vzci9p bmNsdWRlL3BpeG1hbi0xIC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9s aWJwbmcxNiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAt SS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vz ci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xp Yi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9saWJkcm0gLUkvdXNyL2luY2x1ZGUvbGlicG5n MTYgICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxNzkxMzogJD8gPSAwCmNvbmZpZ3VyZTox NzkxMzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE3OTEzOiBjaGVja2luZyBhcnBhL2luZXQuaCBw cmVzZW5jZQpjb25maWd1cmU6MTc5MTM6IGdjYyAtRSAgICAgY29uZnRlc3QuYwpjb25maWd1cmU6 MTc5MTM6ICQ/ID0gMApjb25maWd1cmU6MTc5MTM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNzkx MzogY2hlY2tpbmcgZm9yIGFycGEvaW5ldC5oCmNvbmZpZ3VyZToxNzkxMzogcmVzdWx0OiB5ZXMK Y29uZmlndXJlOjE3OTI4OiBjaGVja2luZyBmb3IgcGlkX3QKY29uZmlndXJlOjE3OTI4OiBnY2Mg LWMgIC1nMyAtTzIgLXB0aHJlYWQgLUkvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLUkvdXNyL2lu Y2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1 ZGUvY2Fpcm8gLUkvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUy IC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9p bmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVk ZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0y LjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2xpYmRybSAtSS91 c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjE3OTI4OiAk PyA9IDAKY29uZmlndXJlOjE3OTI4OiBnY2MgLWMgIC1nMyAtTzIgLXB0aHJlYWQgLUkvdXNyL2lu Y2x1ZGUvbGlicnN2Zy0yLjAgLUkvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLUkvdXNyL2lu Y2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvY2Fpcm8gLUkvdXNyL2luY2x1ZGUvcGl4bWFu LTEgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vz ci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xp Yi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvaGFy ZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRl IC1JL3Vzci9pbmNsdWRlL2xpYmRybSAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgY29uZnRl c3QuYyA+JjUKY29uZnRlc3QuYzogSW4gZnVuY3Rpb24gJ21haW4nOgpjb25mdGVzdC5jOjIzNjoy MDogZXJyb3I6IGV4cGVjdGVkIGV4cHJlc3Npb24gYmVmb3JlICcpJyB0b2tlbgogaWYgKHNpemVv ZiAoKHBpZF90KSkpCiAgICAgICAgICAgICAgICAgICAgXgpjb25maWd1cmU6MTc5Mjg6ICQ/ID0g MQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2Rl ZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAi ZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjI1LjEiCnwgI2RlZmluZSBQQUNLQUdF X1NUUklORyAiR05VIEVtYWNzIDI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVn LWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHA6Ly93d3cuZ251 Lm9yZy9zb2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmluZSBQQUNLQUdFICJlbWFjcyIKfCAjZGVmaW5l IFZFUlNJT04gIjI1LjEiCnwgI2RlZmluZSBNQUlMX1VTRV9QT1AgMQp8ICNkZWZpbmUgSEFWRV9Q VVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9UWlNFVCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwg I2RlZmluZSBIQVZFX1JFQURMSU5LQVQgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNk ZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBI QVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJ TUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfTUtPU1RFTVAg MQp8ICNkZWZpbmUgSEFWRV9QSVBFMiAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZp bmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBI QVZFX1NUUlRPVU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9M T0NBTFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX1RJTUVHTSAxCnwgI2RlZmluZSBIQVZFX0ZVVElN RVMgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVTQVQgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVOUyAx CnwgI2RlZmluZSBIQVZFX1VUSU1FTlNBVCAxCnwgI2RlZmluZSBIQVZFX0xVVElNRVMgMQp8ICNk ZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VDVVJFX0dFVEVOViAx CnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2Rl ZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUg SEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhB VkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVO U0lPTlNfXyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09V UkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9fVVNFX01JTkdXX0FOU0lf U1RESU8gMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9U QU5ERU1fU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fVVNFXzY0X0JJVF9JTk9ERSAxCnwgI2Rl ZmluZSBTWVNURU1fVFlQRSAiZ251L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJE X0ggMQp8ICNkZWZpbmUgSEFWRV9BTFNBIDEKfCAjZGVmaW5lIEhBVkVfU09VTkQgMQp8ICNkZWZp bmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNk ZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVf VU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BU SFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5U X0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fRVhU X0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0gg MQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNk ZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZp bmUgSEFWRV9QRVJTT05BTElUWV9MSU5VWDMyIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5G TyAxCnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUgSEFWRV9URVJNX0gg MQp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TWVNf U0lHTElTVCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRf SUZfSCAxCnwgI2RlZmluZSBIQVZFX0lGQUREUlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9J RlJFUV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAx CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZF X1NUUlVDVF9JRlJFUV9JRlJfQlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVR X0lGUl9BRERSIDEKfCAjZGVmaW5lIEhBVkVfTE9OR19GSUxFX05BTUVTIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1ZMSU1JVF9IIDEKfCAjZGVmaW5lIEhBVkVfREFUQV9TVEFSVCAxCnwgI2RlZmluZSBI QVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2RlZmluZSBIQVZFX1BU SFJFQUQgMQp8ICNkZWZpbmUgSEFWRV9YS0IgMQp8ICNkZWZpbmUgSEFWRV9YUk1TRVREQVRBQkFT RSAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNPVVJDRVNUUklORyAxCnwgI2RlZmluZSBIQVZF X1hTQ1JFRU5OVU1CRVJPRlNDUkVFTiAxCnwgI2RlZmluZSBIQVZFX1gxMVI2IDEKfCAjZGVmaW5l IEhBVkVfWF9JMThOIDEKfCAjZGVmaW5lIEhBVkVfWDExUjZfWElNIDEKfCAjZGVmaW5lIEhBVkVf UlNWRyAxCnwgI2RlZmluZSBIQVZFX0lNQUdFTUFHSUNLIDEKfCAjZGVmaW5lIEhBVkVfTUFHSUNL RVhQT1JUSU1BR0VQSVhFTFMgMQp8ICNkZWZpbmUgSEFWRV9NQUdJQ0tNRVJHRUlNQUdFTEFZRVJT IDEKfCAjZGVmaW5lIEhBVkVfREJVUyAxCnwgI2RlZmluZSBIQVZFX0RCVVNfV0FUQ0hfR0VUX1VO SVhfRkQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1RZUEVfSVNfVkFMSUQgMQp8ICNkZWZpbmUgSEFW RV9EQlVTX1ZBTElEQVRFX0JVU19OQU1FIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9Q QVRIIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9JTlRFUkZBQ0UgMQp8ICNkZWZpbmUg SEFWRV9EQlVTX1ZBTElEQVRFX01FTUJFUiAxCnwgI2RlZmluZSBIQVZFX0dTRVRUSU5HUyAxCnwg I2RlZmluZSBIQVZFX0dDT05GIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhB VkVfR05VVExTMyAxCnwgI2RlZmluZSBIQVZFX0lOT1RJRlkgMQp8ICNkZWZpbmUgVVNFX0ZJTEVf Tk9USUZZIDEKfCAjZGVmaW5lIEhBVkVfWDExWFRSNiAxCnwgI2RlZmluZSBVU0VfVE9PTEtJVF9T Q1JPTExfQkFSUyAxCnwgI2RlZmluZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBVU0VfWElNIDEKfCAj ZGVmaW5lIFhSZWdpc3RlcklNSW5zdGFudGlhdGVDYWxsYmFja19hcmc2IFhQb2ludGVyCnwgI2Rl ZmluZSBIQVZFX1hGVCAxCnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAjZGVmaW5lIEhBVkVf TElCT1RGIDEKfCAjZGVmaW5lIEhBVkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTIDEKfCAjZGVm aW5lIEhBVkVfTTE3Tl9GTFQgMQp8ICNkZWZpbmUgVVNFX1hDQiAxCnwgI2RlZmluZSBIQVZFX1hQ TSAxCnwgI2RlZmluZSBIQVZFX0pQRUcgMQp8ICNkZWZpbmUgSEFWRV9aTElCIDEKfCAjZGVmaW5l IEhBVkVfUE5HIDEKfCAjZGVmaW5lIEhBVkVfVElGRiAxCnwgI2RlZmluZSBIQVZFX0dJRiAxCnwg I2RlZmluZSBIQVZFX0dQTSAxCnwgI2RlZmluZSBIQVZFX1hfU00gMQp8ICNkZWZpbmUgSEFWRV9Y UkFORFIgMQp8ICNkZWZpbmUgSEFWRV9YSU5FUkFNQSAxCnwgI2RlZmluZSBIQVZFX1hGSVhFUyAx CnwgI2RlZmluZSBIQVZFX0xJQlhNTDIgMQp8ICNkZWZpbmUgSEFWRV9IX0VSUk5PIDEKfCAjZGVm aW5lIE1BSUxfVVNFX0ZMT0NLIDEKfCAjZGVmaW5lIEhBVkVfQUNDRVBUNCAxCnwgI2RlZmluZSBI QVZFX0ZDSERJUiAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVf R0VUUlVTQUdFIDEKfCAjZGVmaW5lIEhBVkVfR0VUX0NVUlJFTlRfRElSX05BTUUgMQp8ICNkZWZp bmUgSEFWRV9MUkFORDQ4IDEKfCAjZGVmaW5lIEhBVkVfUkFORE9NIDEKfCAjZGVmaW5lIEhBVkVf UklOVCAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpF IDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfTkVXTE9DQUxFIDEK fCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAj ZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9HRVRBRERSSU5GTyAxCnwgI2Rl ZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlNJR05BTCAxCnwg I2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX1NFTkRUTyAxCnwgI2RlZmlu ZSBIQVZFX1JFQ1ZGUk9NIDEKfCAjZGVmaW5lIEhBVkVfR0VUU09DS05BTUUgMQp8ICNkZWZpbmUg SEFWRV9HRVRQRUVSTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVElGQUREUlMgMQp8ICNkZWZpbmUg SEFWRV9GUkVFSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0dBSV9TVFJFUlJPUiAxCnwgI2RlZmlu ZSBIQVZFX1NZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0VO RFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRHUkVO VCAxCnwgI2RlZmluZSBIQVZFX0NGTUFLRVJBVyAxCnwgI2RlZmluZSBIQVZFX0NGU0VUU1BFRUQg MQp8ICNkZWZpbmUgSEFWRV9DT1BZU0lHTiAxCnwgI2RlZmluZSBIQVZFX19fRVhFQ1VUQUJMRV9T VEFSVCAxCnwgI2RlZmluZSBIQVZFX0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9D IDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX1VOV0lORF9JTklUIDEKfCAjZGVmaW5lIEhBVkVf RlNFRUtPIDEKfCAjZGVmaW5lIEhBVkVfR1JBTlRQVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBUIDEK fCAjZGVmaW5lIEhBVkVfUE9TSVhfT1BFTlBUIDEKfCAjZGVmaW5lIFRFUk1JTkZPIDEKfCAjZGVm aW5lIEhBVkVfVElNRVJGRCAxCnwgI2RlZmluZSBIQVZFX1JFU19JTklUIDEKfCAjZGVmaW5lIEhB VkVfU1RSVUNUX1VOSVBBSVJfVU5JQ09ERSAxCnwgI2RlZmluZSBIQVZFX0lORVRfU09DS0VUUyAx CnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxzdGRpby5oPgp8ICNpZmRlZiBI QVZFX1NZU19UWVBFU19ICnwgIyBpbmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAjZW5kaWYKfCAjaWZk ZWYgSEFWRV9TWVNfU1RBVF9ICnwgIyBpbmNsdWRlIDxzeXMvc3RhdC5oPgp8ICNlbmRpZgp8ICNp ZmRlZiBTVERDX0hFQURFUlMKfCAjIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgaW5jbHVkZSA8c3Rk ZGVmLmg+CnwgI2Vsc2UKfCAjIGlmZGVmIEhBVkVfU1RETElCX0gKfCAjICBpbmNsdWRlIDxzdGRs aWIuaD4KfCAjIGVuZGlmCnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RSSU5HX0gKfCAjIGlmICFk ZWZpbmVkIFNURENfSEVBREVSUyAmJiBkZWZpbmVkIEhBVkVfTUVNT1JZX0gKfCAjICBpbmNsdWRl IDxtZW1vcnkuaD4KfCAjIGVuZGlmCnwgIyBpbmNsdWRlIDxzdHJpbmcuaD4KfCAjZW5kaWYKfCAj aWZkZWYgSEFWRV9TVFJJTkdTX0gKfCAjIGluY2x1ZGUgPHN0cmluZ3MuaD4KfCAjZW5kaWYKfCAj aWZkZWYgSEFWRV9JTlRUWVBFU19ICnwgIyBpbmNsdWRlIDxpbnR0eXBlcy5oPgp8ICNlbmRpZgp8 ICNpZmRlZiBIQVZFX1NURElOVF9ICnwgIyBpbmNsdWRlIDxzdGRpbnQuaD4KfCAjZW5kaWYKfCAj aWZkZWYgSEFWRV9VTklTVERfSAp8ICMgaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgaW50 CnwgbWFpbiAoKQp8IHsKfCBpZiAoc2l6ZW9mICgocGlkX3QpKSkKfCAJICAgIHJldHVybiAwOwp8 ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MTc5Mjg6IHJlc3VsdDogeWVzCmNvbmZp Z3VyZToxNzk0MTogY2hlY2tpbmcgdmZvcmsuaCB1c2FiaWxpdHkKY29uZmlndXJlOjE3OTQxOiBn Y2MgLWMgIC1nMyAtTzIgLXB0aHJlYWQgLUkvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLUkvdXNy L2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2lu Y2x1ZGUvY2Fpcm8gLUkvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLUkvdXNyL2luY2x1ZGUvZnJlZXR5 cGUyIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vz ci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5j bHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xp Yi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2xpYmRybSAt SS91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzoyMzM6 MTk6IGZhdGFsIGVycm9yOiB2Zm9yay5oOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CiAjaW5j bHVkZSA8dmZvcmsuaD4KICAgICAgICAgICAgICAgICAgIF4KY29tcGlsYXRpb24gdGVybWluYXRl ZC4KY29uZmlndXJlOjE3OTQxOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6 CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwg I2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9O ICIyNS4xIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAyNS4xIgp8ICNkZWZp bmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBB Q0tBR0VfVVJMICJodHRwOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUg UEFDS0FHRSAiZW1hY3MiCnwgI2RlZmluZSBWRVJTSU9OICIyNS4xIgp8ICNkZWZpbmUgTUFJTF9V U0VfUE9QIDEKfCAjZGVmaW5lIEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfVFpTRVQgMQp8 ICNkZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKfCAjZGVm aW5lIEhBVkVfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFW RV9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgSEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5lIEhBVkVfRlNZ TkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAx CnwgI2RlZmluZSBIQVZFX01LT1NURU1QIDEKfCAjZGVmaW5lIEhBVkVfUElQRTIgMQp8ICNkZWZp bmUgSEFWRV9QU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFW RV9TVFJUT0lNQVggMQp8ICNkZWZpbmUgSEFWRV9TVFJUT1VNQVggMQp8ICNkZWZpbmUgSEFWRV9T WU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9USU1F R00gMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FU0FUIDEK fCAjZGVmaW5lIEhBVkVfRlVUSU1FTlMgMQp8ICNkZWZpbmUgSEFWRV9VVElNRU5TQVQgMQp8ICNk ZWZpbmUgSEFWRV9MVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2Rl ZmluZSBIQVZFX1NFQ1VSRV9HRVRFTlYgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVm aW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBI QVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVf SU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5J U1REX0ggMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0Ug MQp8ICNkZWZpbmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwg I2RlZmluZSBfX1VTRV9NSU5HV19BTlNJX1NURElPIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFE X1NFTUFOVElDUyAxCnwgI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lO X1VTRV82NF9CSVRfSU5PREUgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAj ZGVmaW5lIEhBVkVfU1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2Rl ZmluZSBIQVZFX1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmlu ZSBIQVZFX1BUWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFW RV9VVE1QX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9T VERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BB UkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5f SCAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAx CnwgI2RlZmluZSBIQVZFX1NURElPX0VYVF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfSCAxCnwgI2Rl ZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZp bmUgSEFWRV9VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfTElOVVgzMiAxCnwg I2RlZmluZSBIQVZFX0xJTlVYX1NZU0lORk8gMQp8ICNkZWZpbmUgTElOVVhfU1lTSU5GT19VTklU IDEKfCAjZGVmaW5lIEhBVkVfVEVSTV9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfU1lTX1NJR0xJU1QgMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJ VF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUX0lGX0ggMQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0gg MQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVf U1RSVUNUX0lGUkVRX0lGUl9IV0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZS X05FVE1BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAxCnwg I2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQUREUiAxCnwgI2RlZmluZSBIQVZFX0xPTkdf RklMRV9OQU1FUyAxCnwgI2RlZmluZSBIQVZFX1NZU19WTElNSVRfSCAxCnwgI2RlZmluZSBIQVZF X0RBVEFfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZF X01NQVAgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEIDEKfCAjZGVmaW5lIEhBVkVfWEtCIDEKfCAj ZGVmaW5lIEhBVkVfWFJNU0VUREFUQUJBU0UgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOUkVTT1VS Q0VTVFJJTkcgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOTlVNQkVST0ZTQ1JFRU4gMQp8ICNkZWZp bmUgSEFWRV9YMTFSNiAxCnwgI2RlZmluZSBIQVZFX1hfSTE4TiAxCnwgI2RlZmluZSBIQVZFX1gx MVI2X1hJTSAxCnwgI2RlZmluZSBIQVZFX1JTVkcgMQp8ICNkZWZpbmUgSEFWRV9JTUFHRU1BR0lD SyAxCnwgI2RlZmluZSBIQVZFX01BR0lDS0VYUE9SVElNQUdFUElYRUxTIDEKfCAjZGVmaW5lIEhB VkVfTUFHSUNLTUVSR0VJTUFHRUxBWUVSUyAxCnwgI2RlZmluZSBIQVZFX0RCVVMgMQp8ICNkZWZp bmUgSEFWRV9EQlVTX1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19UWVBF X0lTX1ZBTElEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAxCnwgI2Rl ZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURB VEVfSU5URVJGQUNFIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIgMQp8ICNk ZWZpbmUgSEFWRV9HU0VUVElOR1MgMQp8ICNkZWZpbmUgSEFWRV9HQ09ORiAxCnwgI2RlZmluZSBI QVZFX0dOVVRMUyAxCnwgI2RlZmluZSBIQVZFX0dOVVRMUzMgMQp8ICNkZWZpbmUgSEFWRV9JTk9U SUZZIDEKfCAjZGVmaW5lIFVTRV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBIQVZFX1gxMVhUUjYg MQp8ICNkZWZpbmUgVVNFX1RPT0xLSVRfU0NST0xMX0JBUlMgMQp8ICNkZWZpbmUgSEFWRV9YSU0g MQp8ICNkZWZpbmUgVVNFX1hJTSAxCnwgI2RlZmluZSBYUmVnaXN0ZXJJTUluc3RhbnRpYXRlQ2Fs bGJhY2tfYXJnNiBYUG9pbnRlcgp8ICNkZWZpbmUgSEFWRV9YRlQgMQp8ICNkZWZpbmUgSEFWRV9G UkVFVFlQRSAxCnwgI2RlZmluZSBIQVZFX0xJQk9URiAxCnwgI2RlZmluZSBIQVZFX09URl9HRVRf VkFSSUFUSU9OX0dMWVBIUyAxCnwgI2RlZmluZSBIQVZFX00xN05fRkxUIDEKfCAjZGVmaW5lIFVT RV9YQ0IgMQp8ICNkZWZpbmUgSEFWRV9YUE0gMQp8ICNkZWZpbmUgSEFWRV9KUEVHIDEKfCAjZGVm aW5lIEhBVkVfWkxJQiAxCnwgI2RlZmluZSBIQVZFX1BORyAxCnwgI2RlZmluZSBIQVZFX1RJRkYg MQp8ICNkZWZpbmUgSEFWRV9HSUYgMQp8ICNkZWZpbmUgSEFWRV9HUE0gMQp8ICNkZWZpbmUgSEFW RV9YX1NNIDEKfCAjZGVmaW5lIEhBVkVfWFJBTkRSIDEKfCAjZGVmaW5lIEhBVkVfWElORVJBTUEg MQp8ICNkZWZpbmUgSEFWRV9YRklYRVMgMQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwyIDEKfCAjZGVm aW5lIEhBVkVfSF9FUlJOTyAxCnwgI2RlZmluZSBNQUlMX1VTRV9GTE9DSyAxCnwgI2RlZmluZSBI QVZFX0FDQ0VQVDQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hESVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRI T1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJVU0FHRSAxCnwgI2RlZmluZSBIQVZFX0dFVF9D VVJSRU5UX0RJUl9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfTFJBTkQ0OCAxCnwgI2RlZmluZSBIQVZF X1JBTkRPTSAxCnwgI2RlZmluZSBIQVZFX1JJTlQgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8 ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FMRSAxCnwg I2RlZmluZSBIQVZFX05FV0xPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJMSU1JVCAxCnwgI2Rl ZmluZSBIQVZFX1NFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5l IEhBVkVfR0VUQUREUklORk8gMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNk ZWZpbmUgSEFWRV9TVFJTSUdOQUwgMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZp bmUgSEFWRV9TRU5EVE8gMQp8ICNkZWZpbmUgSEFWRV9SRUNWRlJPTSAxCnwgI2RlZmluZSBIQVZF X0dFVFNPQ0tOQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEVFUk5BTUUgMQp8ICNkZWZpbmUgSEFW RV9HRVRJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfRlJFRUlGQUREUlMgMQp8ICNkZWZpbmUgSEFW RV9HQUlfU1RSRVJST1IgMQp8ICNkZWZpbmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VU UFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0dFVEdSRU5U IDEKfCAjZGVmaW5lIEhBVkVfRU5ER1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9DRk1BS0VSQVcgMQp8 ICNkZWZpbmUgSEFWRV9DRlNFVFNQRUVEIDEKfCAjZGVmaW5lIEhBVkVfQ09QWVNJR04gMQp8ICNk ZWZpbmUgSEFWRV9fX0VYRUNVVEFCTEVfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9MT0cyIDEKfCAj ZGVmaW5lIEhBVkVfQUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9VTldJ TkRfSU5JVCAxCnwgI2RlZmluZSBIQVZFX0ZTRUVLTyAxCnwgI2RlZmluZSBIQVZFX0dSQU5UUFQg MQp8ICNkZWZpbmUgSEFWRV9HRVRQVCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX09QRU5QVCAxCnwg I2RlZmluZSBURVJNSU5GTyAxCnwgI2RlZmluZSBIQVZFX1RJTUVSRkQgMQp8ICNkZWZpbmUgSEFW RV9SRVNfSU5JVCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9VTklQQUlSX1VOSUNPREUgMQp8ICNk ZWZpbmUgSEFWRV9JTkVUX1NPQ0tFVFMgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5j bHVkZSA8c3RkaW8uaD4KfCAjaWZkZWYgSEFWRV9TWVNfVFlQRVNfSAp8ICMgaW5jbHVkZSA8c3lz L3R5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1lTX1NUQVRfSAp8ICMgaW5jbHVkZSA8 c3lzL3N0YXQuaD4KfCAjZW5kaWYKfCAjaWZkZWYgU1REQ19IRUFERVJTCnwgIyBpbmNsdWRlIDxz dGRsaWIuaD4KfCAjIGluY2x1ZGUgPHN0ZGRlZi5oPgp8ICNlbHNlCnwgIyBpZmRlZiBIQVZFX1NU RExJQl9ICnwgIyAgaW5jbHVkZSA8c3RkbGliLmg+CnwgIyBlbmRpZgp8ICNlbmRpZgp8ICNpZmRl ZiBIQVZFX1NUUklOR19ICnwgIyBpZiAhZGVmaW5lZCBTVERDX0hFQURFUlMgJiYgZGVmaW5lZCBI QVZFX01FTU9SWV9ICnwgIyAgaW5jbHVkZSA8bWVtb3J5Lmg+CnwgIyBlbmRpZgp8ICMgaW5jbHVk ZSA8c3RyaW5nLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RSSU5HU19ICnwgIyBpbmNsdWRl IDxzdHJpbmdzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfSU5UVFlQRVNfSAp8ICMgaW5jbHVk ZSA8aW50dHlwZXMuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVERJTlRfSAp8ICMgaW5jbHVk ZSA8c3RkaW50Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfVU5JU1REX0gKfCAjIGluY2x1ZGUg PHVuaXN0ZC5oPgp8ICNlbmRpZgp8ICNpbmNsdWRlIDx2Zm9yay5oPgpjb25maWd1cmU6MTc5NDE6 IHJlc3VsdDogbm8KY29uZmlndXJlOjE3OTQxOiBjaGVja2luZyB2Zm9yay5oIHByZXNlbmNlCmNv bmZpZ3VyZToxNzk0MTogZ2NjIC1FICAgICBjb25mdGVzdC5jCmNvbmZ0ZXN0LmM6MjAwOjE5OiBm YXRhbCBlcnJvcjogdmZvcmsuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQogI2luY2x1ZGUg PHZmb3JrLmg+CiAgICAgICAgICAgICAgICAgICBeCmNvbXBpbGF0aW9uIHRlcm1pbmF0ZWQuCmNv bmZpZ3VyZToxNzk0MTogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8q IGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8ICNkZWZp bmUgUEFDS0FHRV9UQVJOQU1FICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMjUu MSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1hY3MgMjUuMSIKfCAjZGVmaW5lIFBB Q0tBR0VfQlVHUkVQT1JUICJidWctZ251LWVtYWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdF X1VSTCAiaHR0cDovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIFBBQ0tB R0UgImVtYWNzIgp8ICNkZWZpbmUgVkVSU0lPTiAiMjUuMSIKfCAjZGVmaW5lIE1BSUxfVVNFX1BP UCAxCnwgI2RlZmluZSBIQVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1RaU0VUIDEKfCAjZGVm aW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBI QVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRP UEVORElSIDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEK fCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNk ZWZpbmUgSEFWRV9NS09TVEVNUCAxCnwgI2RlZmluZSBIQVZFX1BJUEUyIDEKfCAjZGVmaW5lIEhB VkVfUFNFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfU1RS VE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9VTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElO SyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfVElNRUdNIDEK fCAjZGVmaW5lIEhBVkVfRlVUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVNBVCAxCnwgI2Rl ZmluZSBIQVZFX0ZVVElNRU5TIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVOU0FUIDEKfCAjZGVmaW5l IEhBVkVfTFVUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUg SEFWRV9TRUNVUkVfR0VURU5WIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBI QVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBI QVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9N RU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZ UEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9I IDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAj ZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZp bmUgX19VU0VfTUlOR1dfQU5TSV9TVERJTyAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1B TlRJQ1MgMQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9VU0Vf NjRfQklUX0lOT0RFIDEKfCAjZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmlu ZSBIQVZFX1NZU19TT1VORENBUkRfSCAxCnwgI2RlZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUg SEFWRV9TT1VORCAxCnwgI2RlZmluZSBIQVZFX1NZU19TWVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFW RV9QVFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRN UF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElC X0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9I IDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8 ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX0VYRUNJTkZPX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVERJT19FWFRfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUg SEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhB VkVfVVRJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BFUlNPTkFMSVRZX0xJTlVYMzIgMQp8ICNkZWZp bmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwg I2RlZmluZSBIQVZFX1RFUk1fSCAxCnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX1NZU19TSUdMSVNUIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAx CnwgI2RlZmluZSBIQVZFX05FVF9JRl9IIDEKfCAjZGVmaW5lIEhBVkVfSUZBRERSU19IIDEKfCAj ZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9GTEFHUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVD VF9JRlJFUV9JRlJfSFdBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9ORVRN QVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9CUk9BREFERFIgMQp8ICNkZWZp bmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0FERFIgMQp8ICNkZWZpbmUgSEFWRV9MT05HX0ZJTEVf TkFNRVMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVkxJTUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9EQVRB X1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9NTUFQ IDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRCAxCnwgI2RlZmluZSBIQVZFX1hLQiAxCnwgI2RlZmlu ZSBIQVZFX1hSTVNFVERBVEFCQVNFIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RS SU5HIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhB VkVfWDExUjYgMQp8ICNkZWZpbmUgSEFWRV9YX0kxOE4gMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9Y SU0gMQp8ICNkZWZpbmUgSEFWRV9SU1ZHIDEKfCAjZGVmaW5lIEhBVkVfSU1BR0VNQUdJQ0sgMQp8 ICNkZWZpbmUgSEFWRV9NQUdJQ0tFWFBPUlRJTUFHRVBJWEVMUyAxCnwgI2RlZmluZSBIQVZFX01B R0lDS01FUkdFSU1BR0VMQVlFUlMgMQp8ICNkZWZpbmUgSEFWRV9EQlVTIDEKfCAjZGVmaW5lIEhB VkVfREJVU19XQVRDSF9HRVRfVU5JWF9GRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVFlQRV9JU19W QUxJRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfQlVTX05BTUUgMQp8ICNkZWZpbmUg SEFWRV9EQlVTX1ZBTElEQVRFX1BBVEggMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0lO VEVSRkFDRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfTUVNQkVSIDEKfCAjZGVmaW5l IEhBVkVfR1NFVFRJTkdTIDEKfCAjZGVmaW5lIEhBVkVfR0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9H TlVUTFMgMQp8ICNkZWZpbmUgSEFWRV9HTlVUTFMzIDEKfCAjZGVmaW5lIEhBVkVfSU5PVElGWSAx CnwgI2RlZmluZSBVU0VfRklMRV9OT1RJRlkgMQp8ICNkZWZpbmUgSEFWRV9YMTFYVFI2IDEKfCAj ZGVmaW5lIFVTRV9UT09MS0lUX1NDUk9MTF9CQVJTIDEKfCAjZGVmaW5lIEhBVkVfWElNIDEKfCAj ZGVmaW5lIFVTRV9YSU0gMQp8ICNkZWZpbmUgWFJlZ2lzdGVySU1JbnN0YW50aWF0ZUNhbGxiYWNr X2FyZzYgWFBvaW50ZXIKfCAjZGVmaW5lIEhBVkVfWEZUIDEKfCAjZGVmaW5lIEhBVkVfRlJFRVRZ UEUgMQp8ICNkZWZpbmUgSEFWRV9MSUJPVEYgMQp8ICNkZWZpbmUgSEFWRV9PVEZfR0VUX1ZBUklB VElPTl9HTFlQSFMgMQp8ICNkZWZpbmUgSEFWRV9NMTdOX0ZMVCAxCnwgI2RlZmluZSBVU0VfWENC IDEKfCAjZGVmaW5lIEhBVkVfWFBNIDEKfCAjZGVmaW5lIEhBVkVfSlBFRyAxCnwgI2RlZmluZSBI QVZFX1pMSUIgMQp8ICNkZWZpbmUgSEFWRV9QTkcgMQp8ICNkZWZpbmUgSEFWRV9USUZGIDEKfCAj ZGVmaW5lIEhBVkVfR0lGIDEKfCAjZGVmaW5lIEhBVkVfR1BNIDEKfCAjZGVmaW5lIEhBVkVfWF9T TSAxCnwgI2RlZmluZSBIQVZFX1hSQU5EUiAxCnwgI2RlZmluZSBIQVZFX1hJTkVSQU1BIDEKfCAj ZGVmaW5lIEhBVkVfWEZJWEVTIDEKfCAjZGVmaW5lIEhBVkVfTElCWE1MMiAxCnwgI2RlZmluZSBI QVZFX0hfRVJSTk8gMQp8ICNkZWZpbmUgTUFJTF9VU0VfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9B Q0NFUFQ0IDEKfCAjZGVmaW5lIEhBVkVfRkNIRElSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5B TUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNBR0UgMQp8ICNkZWZpbmUgSEFWRV9HRVRfQ1VSUkVO VF9ESVJfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0xSQU5ENDggMQp8ICNkZWZpbmUgSEFWRV9SQU5E T00gMQp8ICNkZWZpbmUgSEFWRV9SSU5UIDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVm aW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZp bmUgSEFWRV9ORVdMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSTElNSVQgMQp8ICNkZWZpbmUg SEFWRV9TRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TSFVURE9XTiAxCnwgI2RlZmluZSBIQVZF X0dFVEFERFJJTkZPIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5l IEhBVkVfU1RSU0lHTkFMIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhB VkVfU0VORFRPIDEKfCAjZGVmaW5lIEhBVkVfUkVDVkZST00gMQp8ICNkZWZpbmUgSEFWRV9HRVRT T0NLTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFBFRVJOQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VU SUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfR0FJ X1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5U IDEKfCAjZGVmaW5lIEhBVkVfRU5EUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUkVOVCAxCnwg I2RlZmluZSBIQVZFX0VOREdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfQ0ZNQUtFUkFXIDEKfCAjZGVm aW5lIEhBVkVfQ0ZTRVRTUEVFRCAxCnwgI2RlZmluZSBIQVZFX0NPUFlTSUdOIDEKfCAjZGVmaW5l IEhBVkVfX19FWEVDVVRBQkxFX1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVfTE9HMiAxCnwgI2RlZmlu ZSBIQVZFX0FMSUdORURfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fVU5XSU5EX0lO SVQgMQp8ICNkZWZpbmUgSEFWRV9GU0VFS08gMQp8ICNkZWZpbmUgSEFWRV9HUkFOVFBUIDEKfCAj ZGVmaW5lIEhBVkVfR0VUUFQgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9PUEVOUFQgMQp8ICNkZWZp bmUgVEVSTUlORk8gMQp8ICNkZWZpbmUgSEFWRV9USU1FUkZEIDEKfCAjZGVmaW5lIEhBVkVfUkVT X0lOSVQgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVU5JUEFJUl9VTklDT0RFIDEKfCAjZGVmaW5l IEhBVkVfSU5FVF9TT0NLRVRTIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUg PHZmb3JrLmg+CmNvbmZpZ3VyZToxNzk0MTogcmVzdWx0OiBubwpjb25maWd1cmU6MTc5NDE6IGNo ZWNraW5nIGZvciB2Zm9yay5oCmNvbmZpZ3VyZToxNzk0MTogcmVzdWx0OiBubwpjb25maWd1cmU6 MTc5NTQ6IGNoZWNraW5nIGZvciBmb3JrCmNvbmZpZ3VyZToxNzk1NDogZ2NjIC1vIGNvbmZ0ZXN0 ICAtZzMgLU8yIC1wdGhyZWFkIC1JL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1JL3Vzci9pbmNs dWRlL2dkay1waXhidWYtMi4wIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRl L2NhaXJvIC1JL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAt SS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5j bHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUv ZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4w IC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9saWJkcm0gLUkvdXNy L2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAtbFgxMSAgID4mNSAKY29uZnRlc3Qu YzoyMjM6Njogd2FybmluZzogY29uZmxpY3RpbmcgdHlwZXMgZm9yIGJ1aWx0LWluIGZ1bmN0aW9u ICdmb3JrJwogY2hhciBmb3JrICgpOwogICAgICBefn5+CmNvbmZpZ3VyZToxNzk1NDogJD8gPSAw CmNvbmZpZ3VyZToxNzk1NDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE3OTU0OiBjaGVja2luZyBm b3IgdmZvcmsKY29uZmlndXJlOjE3OTU0OiBnY2MgLW8gY29uZnRlc3QgIC1nMyAtTzIgLXB0aHJl YWQgLUkvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLUkvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0y LjAgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvY2Fpcm8gLUkvdXNyL2lu Y2x1ZGUvcGl4bWFuLTEgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2xp YnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1J L3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNy L2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGli LTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2xpYmRybSAtSS91c3IvaW5jbHVkZS9saWJwbmcx NiAgICAgICBjb25mdGVzdC5jIC1sWDExICAgPiY1IApjb25maWd1cmU6MTc5NTQ6ICQ/ID0gMApj b25maWd1cmU6MTc5NTQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNzk2NDogY2hlY2tpbmcgZm9y IHdvcmtpbmcgZm9yawpjb25maWd1cmU6MTc5ODY6IGdjYyAtbyBjb25mdGVzdCAgLWczIC1PMiAt cHRocmVhZCAtSS91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtSS91c3IvaW5jbHVkZS9nZGstcGl4 YnVmLTIuMCAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9jYWlybyAtSS91 c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1 ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0y LjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAt SS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGli L2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvbGliZHJtIC1JL3Vzci9pbmNsdWRlL2xp YnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxYMTEgICA+JjUgCmNvbmZpZ3VyZToxNzk4NjogJD8g PSAwCmNvbmZpZ3VyZToxNzk4NjogLi9jb25mdGVzdApjb25maWd1cmU6MTc5ODY6ICQ/ID0gMApj b25maWd1cmU6MTc5OTY6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxODAxNzogY2hlY2tpbmcgZm9y IHdvcmtpbmcgdmZvcmsKY29uZmlndXJlOjE4MTI3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTgx NTU6IGNoZWNraW5nIGZvciBzbnByaW50Zgpjb25maWd1cmU6MTgxNTU6IGdjYyAtbyBjb25mdGVz dCAgLWczIC1PMiAtcHRocmVhZCAtSS91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtSS91c3IvaW5j bHVkZS9nZGstcGl4YnVmLTIuMCAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVk ZS9jYWlybyAtSS91c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIg LUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2lu Y2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRl L2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIu MCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvbGliZHJtIC1JL3Vz ci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxYMTEgICA+JjUgCmNvbmZ0ZXN0 LmM6MjI3OjY6IHdhcm5pbmc6IGNvbmZsaWN0aW5nIHR5cGVzIGZvciBidWlsdC1pbiBmdW5jdGlv biAnc25wcmludGYnCiBjaGFyIHNucHJpbnRmICgpOwogICAgICBefn5+fn5+fgpjb25maWd1cmU6 MTgxNTU6ICQ/ID0gMApjb25maWd1cmU6MTgxNTU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxODE3 MjogY2hlY2tpbmcgd2hldGhlciBHTGliIGlzIGxpbmtlZCBpbgpjb25maWd1cmU6MTgxODY6IGdj YyAtbyBjb25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtSS91c3IvaW5jbHVkZS9saWJyc3ZnLTIu MCAtSS91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAt SS91c3IvaW5jbHVkZS9jYWlybyAtSS91c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91c3IvaW5jbHVk ZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1 enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1J L3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5j bHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUv bGliZHJtIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAtcHRocmVhZCAtSS91c3IvaW5jbHVkZS9s aWJyc3ZnLTIuMCAtSS91c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtSS91c3IvaW5jbHVkZS9s aWJwbmcxNiAtSS91c3IvaW5jbHVkZS9jYWlybyAtSS91c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91 c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1 ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9p bmNsdWRlIC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAt SS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNy L2luY2x1ZGUvbGliZHJtIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2Ri dXMtMS4wIC1JL3Vzci9saWIvZGJ1cy0xLjAvaW5jbHVkZSAtcHRocmVhZCAtSS91c3IvaW5jbHVk ZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLXB0aHJlYWQgLUkvdXNyL2lu Y2x1ZGUvZ2NvbmYvMiAtSS91c3IvaW5jbHVkZS9kYnVzLTEuMCAtSS91c3IvbGliL2RidXMtMS4w L2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNs dWRlIC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAg ICAgICAgIGNvbmZ0ZXN0LmMgLWxYMTEgICAgLWxyc3ZnLTIgLWxtIC1sZ2lvLTIuMCAtbGdka19w aXhidWYtMi4wIC1sZ29iamVjdC0yLjAgLWxnbGliLTIuMCAtbGNhaXJvIC1sZGJ1cy0xIC1sZ2lv LTIuMCAtbGdvYmplY3QtMi4wIC1sZ2xpYi0yLjAgLWxnY29uZi0yIC1sZ2xpYi0yLjAgLWxnb2Jq ZWN0LTIuMCAtbGdsaWItMi4wICAgPiY1IApjb25maWd1cmU6MTgxODY6ICQ/ID0gMApjb25maWd1 cmU6MTgxOTM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxODIwNzogY2hlY2tpbmcgZm9yIG5sX2xh bmdpbmZvIGFuZCBDT0RFU0VUCmNvbmZpZ3VyZToxODIyMzogZ2NjIC1vIGNvbmZ0ZXN0ICAtZzMg LU8yIC1wdGhyZWFkIC1JL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1JL3Vzci9pbmNsdWRlL2dk ay1waXhidWYtMi4wIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2NhaXJv IC1JL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3Iv aW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9n bGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvZnJlZXR5 cGUyIC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vz ci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9saWJkcm0gLUkvdXNyL2luY2x1 ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAtbFgxMSAgID4mNSAKY29uZmlndXJlOjE4MjIz OiAkPyA9IDAKY29uZmlndXJlOjE4MjMyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTgyNDA6IGNo ZWNraW5nIGZvciBtYnN0YXRlX3QKY29uZmlndXJlOjE4MjU3OiBnY2MgLWMgIC1nMyAtTzIgLXB0 aHJlYWQgLUkvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLUkvdXNyL2luY2x1ZGUvZ2RrLXBpeGJ1 Zi0yLjAgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvY2Fpcm8gLUkvdXNy L2luY2x1ZGUvcGl4bWFuLTEgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRl L2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4w IC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkv dXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9n bGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2xpYmRybSAtSS91c3IvaW5jbHVkZS9saWJw bmcxNiAgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjE4MjU3OiAkPyA9IDAKY29uZmlndXJl OjE4MjY0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTg1Njk6IGNoZWNraW5nIGZvciBzaWduYWxz IHZpYSBjaGFyYWN0ZXJzCmNvbmZpZ3VyZToxODU4NzogZ2NjIC1FICAgICBjb25mdGVzdC5jCmNv bmZpZ3VyZToxODU4NzogJD8gPSAwCmNvbmZpZ3VyZToxODU5NDogcmVzdWx0OiB5ZXMKY29uZmln dXJlOjE4NjMyOiBnY2MgLUUgICAgIGNvbmZ0ZXN0LmMKY29uZnRlc3QuYzoyMzE6MzogZXJyb3I6 ICNlcnJvciAibm90IGlhNjQiCiAjIGVycm9yICJub3QgaWE2NCIKICAgXn5+fn4KY29uZmlndXJl OjE4NjMyOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRl ZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2RlZmluZSBQQUNL QUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyNS4xIgp8ICNk ZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAyNS4xIgp8ICNkZWZpbmUgUEFDS0FHRV9C VUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJo dHRwOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgUEFDS0FHRSAiZW1h Y3MiCnwgI2RlZmluZSBWRVJTSU9OICIyNS4xIgp8ICNkZWZpbmUgTUFJTF9VU0VfUE9QIDEKfCAj ZGVmaW5lIEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfVFpTRVQgMQp8ICNkZWZpbmUgSEFW RV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKfCAjZGVmaW5lIEhBVkVfRkFD Q0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9GRE9QRU5ESVIg MQp8ICNkZWZpbmUgSEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMgMQp8ICNkZWZp bmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwgI2RlZmluZSBI QVZFX01LT1NURU1QIDEKfCAjZGVmaW5lIEhBVkVfUElQRTIgMQp8ICNkZWZpbmUgSEFWRV9QU0VM RUNUIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFWRV9TVFJUT0lNQVgg MQp8ICNkZWZpbmUgSEFWRV9TVFJUT1VNQVggMQp8ICNkZWZpbmUgSEFWRV9TWU1MSU5LIDEKfCAj ZGVmaW5lIEhBVkVfTE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9USU1FR00gMQp8ICNkZWZp bmUgSEFWRV9GVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FU0FUIDEKfCAjZGVmaW5lIEhB VkVfRlVUSU1FTlMgMQp8ICNkZWZpbmUgSEFWRV9VVElNRU5TQVQgMQp8ICNkZWZpbmUgSEFWRV9M VVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NF Q1VSRV9HRVRFTlYgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RE TElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9I IDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAx CnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNk ZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8ICNkZWZpbmUg X0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBfX1VT RV9NSU5HV19BTlNJX1NURElPIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAx CnwgI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX1VTRV82NF9CSVRf SU5PREUgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAjZGVmaW5lIEhBVkVf U1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2RlZmluZSBIQVZFX1NP VU5EIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1BUWV9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRT TkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1QX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwg I2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNk ZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwgI2RlZmlu ZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAxCnwgI2RlZmluZSBI QVZFX1NURElPX0VYVF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfSCAxCnwgI2RlZmluZSBIQVZFX1NU RElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19T RUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9VVElN RV9IIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfTElOVVgzMiAxCnwgI2RlZmluZSBIQVZF X0xJTlVYX1NZU0lORk8gMQp8ICNkZWZpbmUgTElOVVhfU1lTSU5GT19VTklUIDEKfCAjZGVmaW5l IEhBVkVfVEVSTV9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfU1lTX1NJR0xJU1QgMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVm aW5lIEhBVkVfTkVUX0lGX0ggMQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0ggMQp8ICNkZWZpbmUg SEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVR X0lGUl9IV0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX05FVE1BU0sgMQp8 ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAxCnwgI2RlZmluZSBIQVZF X1NUUlVDVF9JRlJFUV9JRlJfQUREUiAxCnwgI2RlZmluZSBIQVZFX0xPTkdfRklMRV9OQU1FUyAx CnwgI2RlZmluZSBIQVZFX1NZU19WTElNSVRfSCAxCnwgI2RlZmluZSBIQVZFX0RBVEFfU1RBUlQg MQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX01NQVAgMQp8ICNk ZWZpbmUgSEFWRV9QVEhSRUFEIDEKfCAjZGVmaW5lIEhBVkVfWEtCIDEKfCAjZGVmaW5lIEhBVkVf WFJNU0VUREFUQUJBU0UgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOUkVTT1VSQ0VTVFJJTkcgMQp8 ICNkZWZpbmUgSEFWRV9YU0NSRUVOTlVNQkVST0ZTQ1JFRU4gMQp8ICNkZWZpbmUgSEFWRV9YMTFS NiAxCnwgI2RlZmluZSBIQVZFX1hfSTE4TiAxCnwgI2RlZmluZSBIQVZFX1gxMVI2X1hJTSAxCnwg I2RlZmluZSBIQVZFX1JTVkcgMQp8ICNkZWZpbmUgSEFWRV9JTUFHRU1BR0lDSyAxCnwgI2RlZmlu ZSBIQVZFX01BR0lDS0VYUE9SVElNQUdFUElYRUxTIDEKfCAjZGVmaW5lIEhBVkVfTUFHSUNLTUVS R0VJTUFHRUxBWUVSUyAxCnwgI2RlZmluZSBIQVZFX0RCVVMgMQp8ICNkZWZpbmUgSEFWRV9EQlVT X1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19UWVBFX0lTX1ZBTElEIDEK fCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0RC VVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfSU5URVJGQUNF IDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIgMQp8ICNkZWZpbmUgSEFWRV9H U0VUVElOR1MgMQp8ICNkZWZpbmUgSEFWRV9HQ09ORiAxCnwgI2RlZmluZSBIQVZFX0dOVVRMUyAx CnwgI2RlZmluZSBIQVZFX0dOVVRMUzMgMQp8ICNkZWZpbmUgSEFWRV9JTk9USUZZIDEKfCAjZGVm aW5lIFVTRV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBIQVZFX1gxMVhUUjYgMQp8ICNkZWZpbmUg VVNFX1RPT0xLSVRfU0NST0xMX0JBUlMgMQp8ICNkZWZpbmUgSEFWRV9YSU0gMQp8ICNkZWZpbmUg VVNFX1hJTSAxCnwgI2RlZmluZSBYUmVnaXN0ZXJJTUluc3RhbnRpYXRlQ2FsbGJhY2tfYXJnNiBY UG9pbnRlcgp8ICNkZWZpbmUgSEFWRV9YRlQgMQp8ICNkZWZpbmUgSEFWRV9GUkVFVFlQRSAxCnwg I2RlZmluZSBIQVZFX0xJQk9URiAxCnwgI2RlZmluZSBIQVZFX09URl9HRVRfVkFSSUFUSU9OX0dM WVBIUyAxCnwgI2RlZmluZSBIQVZFX00xN05fRkxUIDEKfCAjZGVmaW5lIFVTRV9YQ0IgMQp8ICNk ZWZpbmUgSEFWRV9YUE0gMQp8ICNkZWZpbmUgSEFWRV9KUEVHIDEKfCAjZGVmaW5lIEhBVkVfWkxJ QiAxCnwgI2RlZmluZSBIQVZFX1BORyAxCnwgI2RlZmluZSBIQVZFX1RJRkYgMQp8ICNkZWZpbmUg SEFWRV9HSUYgMQp8ICNkZWZpbmUgSEFWRV9HUE0gMQp8ICNkZWZpbmUgSEFWRV9YX1NNIDEKfCAj ZGVmaW5lIEhBVkVfWFJBTkRSIDEKfCAjZGVmaW5lIEhBVkVfWElORVJBTUEgMQp8ICNkZWZpbmUg SEFWRV9YRklYRVMgMQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwyIDEKfCAjZGVmaW5lIEhBVkVfSF9F UlJOTyAxCnwgI2RlZmluZSBNQUlMX1VTRV9GTE9DSyAxCnwgI2RlZmluZSBIQVZFX0FDQ0VQVDQg MQp8ICNkZWZpbmUgSEFWRV9GQ0hESVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAxCnwg I2RlZmluZSBIQVZFX0dFVFJVU0FHRSAxCnwgI2RlZmluZSBIQVZFX0dFVF9DVVJSRU5UX0RJUl9O QU1FIDEKfCAjZGVmaW5lIEhBVkVfTFJBTkQ0OCAxCnwgI2RlZmluZSBIQVZFX1JBTkRPTSAxCnwg I2RlZmluZSBIQVZFX1JJTlQgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZpbmUgSEFW RV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FMRSAxCnwgI2RlZmluZSBIQVZF X05FV0xPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NF VFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5lIEhBVkVfR0VUQURE UklORk8gMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9T VFJTSUdOQUwgMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9TRU5E VE8gMQp8ICNkZWZpbmUgSEFWRV9SRUNWRlJPTSAxCnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tOQU1F IDEKfCAjZGVmaW5lIEhBVkVfR0VUUEVFUk5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRJRkFERFJT IDEKfCAjZGVmaW5lIEhBVkVfRlJFRUlGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9HQUlfU1RSRVJS T1IgMQp8ICNkZWZpbmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFdFTlQgMQp8ICNk ZWZpbmUgSEFWRV9FTkRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0dFVEdSRU5UIDEKfCAjZGVmaW5l IEhBVkVfRU5ER1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9DRk1BS0VSQVcgMQp8ICNkZWZpbmUgSEFW RV9DRlNFVFNQRUVEIDEKfCAjZGVmaW5lIEhBVkVfQ09QWVNJR04gMQp8ICNkZWZpbmUgSEFWRV9f X0VYRUNVVEFCTEVfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9MT0cyIDEKfCAjZGVmaW5lIEhBVkVf QUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9VTldJTkRfSU5JVCAxCnwg I2RlZmluZSBIQVZFX0ZTRUVLTyAxCnwgI2RlZmluZSBIQVZFX0dSQU5UUFQgMQp8ICNkZWZpbmUg SEFWRV9HRVRQVCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX09QRU5QVCAxCnwgI2RlZmluZSBURVJN SU5GTyAxCnwgI2RlZmluZSBIQVZFX1RJTUVSRkQgMQp8ICNkZWZpbmUgSEFWRV9SRVNfSU5JVCAx CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9VTklQQUlSX1VOSUNPREUgMQp8ICNkZWZpbmUgSEFWRV9J TkVUX1NPQ0tFVFMgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfVkZPUksg MQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19G T1JLIDEKfCAjZGVmaW5lIEhBVkVfU05QUklOVEYgMQp8ICNkZWZpbmUgSEFWRV9HTElCIDEKfCAj ZGVmaW5lIEhBVkVfTEFOR0lORk9fQ09ERVNFVCAxCnwgI2RlZmluZSBIQVZFX01CU1RBVEVfVCAx CnwgI2RlZmluZSBBTVBFUlNBTkRfRlVMTF9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUFRZUyAxCnwg I2RlZmluZSBIQVZFX1NPQ0tFVFMgMQp8ICNkZWZpbmUgTlVMTF9ERVZJQ0UgIi9kZXYvbnVsbCIK fCAjZGVmaW5lIFNFUENIQVIgJzonCnwgI2RlZmluZSBzdWJwcm9jZXNzZXMgMQp8ICNkZWZpbmUg VVNFUl9GVUxMX05BTUUgcHctPnB3X2dlY29zCnwgI2RlZmluZSBESVJFQ1RPUllfU0VQICcvJwp8 ICNkZWZpbmUgSVNfREVWSUNFX1NFUChfY18pIDAKfCAjZGVmaW5lIElTX0RJUkVDVE9SWV9TRVAo X2NfKSAoKF9jXykgPT0gRElSRUNUT1JZX1NFUCkKfCAjZGVmaW5lIElTX0FOWV9TRVAoX2NfKSAo SVNfRElSRUNUT1JZX1NFUCAoX2NfKSkKfCAjZGVmaW5lIEhBVkVfUFJPQ0ZTIDEKfCAjZGVmaW5l IERFRkFVTFRfU09VTkRfREVWSUNFICIvZGV2L2RzcCIKfCAjZGVmaW5lIElOVEVSUlVQVF9JTlBV VCAxCnwgI2RlZmluZSBOQVJST1dQUk9UTyAxCnwgI2RlZmluZSBVTklYOThfUFRZUyAxCnwgI2Rl ZmluZSBQVFlfSVRFUkFUSU9OIGludCBpOyBmb3IgKGkgPSAwOyBpIDwgMTsgaSsrKQp8ICNkZWZp bmUgUFRZX1RUWV9OQU1FX1NQUklOVEYgeyBjaGFyICpwdHluYW1lID0gMDsgc2lnc2V0X3QgYmxv Y2tlZDsgc2lnZW1wdHlzZXQgKCZibG9ja2VkKTsgc2lnYWRkc2V0ICgmYmxvY2tlZCwgU0lHQ0hM RCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX0JMT0NLLCAmYmxvY2tlZCwgMCk7IGlmIChncmFudHB0 IChmZCkgIT0gLTEgJiYgdW5sb2NrcHQgKGZkKSAhPSAtMSkgcHR5bmFtZSA9IHB0c25hbWUoZmQp OyBwdGhyZWFkX3NpZ21hc2sgKFNJR19VTkJMT0NLLCAmYmxvY2tlZCwgMCk7IGlmICghcHR5bmFt ZSkgeyBlbWFjc19jbG9zZSAoZmQpOyByZXR1cm4gLTE7IH0gc25wcmludGYgKHB0eV9uYW1lLCBQ VFlfTkFNRV9TSVpFLCAiJXMiLCBwdHluYW1lKTsgfQp8ICNkZWZpbmUgUFRZX09QRU4gZG8geyBm ZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19DTE9FWEVDIHwgT19OT0NUVFkpOyBpZiAoZmQg PCAwICYmIGVycm5vID09IEVJTlZBTCkgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fTk9D VFRZKTsgfSB3aGlsZSAoZmFsc2UpCnwgI2RlZmluZSBQVFlfTkFNRV9TUFJJTlRGIC8qKi8KfCAj ZGVmaW5lIFNJR05BTFNfVklBX0NIQVJBQ1RFUlMgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8K fCAKfCAjaWZuZGVmIF9faWE2NF9fCnwgIyBlcnJvciAibm90IGlhNjQiCnwgI2VuZGlmCnwgCnwg aW50CnwgbWFpbiAoKQp8IHsKfCAKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjE4 NjczOiBnY2MgLUUgICAgIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjE4NjczOiAkPyA9IDAKY29uZmln dXJlOjE4NjkzOiBjaGVja2luZyBmb3IgX3NldGptcApjb25maWd1cmU6MTg3MTU6IGdjYyAtbyBj b25mdGVzdCAgLWczIC1PMiAtcHRocmVhZCAtSS91c3IvaW5jbHVkZS9saWJyc3ZnLTIuMCAtSS91 c3IvaW5jbHVkZS9nZGstcGl4YnVmLTIuMCAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3Iv aW5jbHVkZS9jYWlybyAtSS91c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91c3IvaW5jbHVkZS9mcmVl dHlwZTIgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkv dXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9p bmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9n bGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvbGliZHJt IC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2ICAgICAgIGNvbmZ0ZXN0LmMgLWxYMTEgICA+JjUgCmNv bmZpZ3VyZToxODcxNTogJD8gPSAwCmNvbmZpZ3VyZToxODcyMzogcmVzdWx0OiB5ZXMKY29uZmln dXJlOjE4NzMyOiBjaGVja2luZyBmb3Igc2lnc2V0am1wCmNvbmZpZ3VyZToxODc1MTogZ2NjIC1v IGNvbmZ0ZXN0ICAtZzMgLU8yIC1wdGhyZWFkIC1JL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1J L3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vz ci9pbmNsdWRlL2NhaXJvIC1JL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1JL3Vzci9pbmNsdWRlL2Zy ZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAt SS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNy L2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRl L2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9saWJk cm0gLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgICAgICAgY29uZnRlc3QuYyAtbFgxMSAgID4mNSAK Y29uZmlndXJlOjE4NzUxOiAkPyA9IDAKY29uZmlndXJlOjE4NzU5OiByZXN1bHQ6IHllcwpjb25m aWd1cmU6MTg4OTU6IGNoZWNraW5nIGZvciB1c2FibGUgRklPTlJFQUQKY29uZmlndXJlOjE4OTI2 OiBnY2MgLWMgIC1nMyAtTzIgLXB0aHJlYWQgLUkvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLUkv dXNyL2luY2x1ZGUvZ2RrLXBpeGJ1Zi0yLjAgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNy L2luY2x1ZGUvY2Fpcm8gLUkvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLUkvdXNyL2luY2x1ZGUvZnJl ZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1J L3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3Iv aW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUv Z2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2xpYmRy bSAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjE4 OTI2OiAkPyA9IDAKY29uZmlndXJlOjE4OTM1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTg5NDM6 IGNoZWNraW5nIGZvciB1c2FibGUgU0lHSU8KY29uZmlndXJlOjE4OTYxOiBnY2MgLWMgIC1nMyAt TzIgLXB0aHJlYWQgLUkvdXNyL2luY2x1ZGUvbGlicnN2Zy0yLjAgLUkvdXNyL2luY2x1ZGUvZ2Rr LXBpeGJ1Zi0yLjAgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvY2Fpcm8g LUkvdXNyL2luY2x1ZGUvcGl4bWFuLTEgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9p bmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2ds aWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9mcmVldHlw ZTIgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNy L2xpYi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2xpYmRybSAtSS91c3IvaW5jbHVk ZS9saWJwbmcxNiAgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjE4OTYxOiAkPyA9IDAKY29u ZmlndXJlOjE4OTY4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTkxOTM6IGNoZWNraW5nIGZvciBz dHJ1Y3QgYWxpZ25tZW50CmNvbmZpZ3VyZToxOTIxMzogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRl c3QuYyA+JjUKY29uZmlndXJlOjE5MjEzOiAkPyA9IDAKY29uZmlndXJlOjE5MjIwOiByZXN1bHQ6 IHllcwpjb25maWd1cmU6MTkzMTE6IGNoZWNraW5nIGZvciB3b3JraW5nIGFsbG9jYS5oCmNvbmZp Z3VyZToxOTMyODogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jIC1scHRo cmVhZCAgPiY1IApjb25maWd1cmU6MTkzMjg6ICQ/ID0gMApjb25maWd1cmU6MTkzMzY6IHJlc3Vs dDogeWVzCmNvbmZpZ3VyZToxOTM0NDogY2hlY2tpbmcgZm9yIGFsbG9jYQpjb25maWd1cmU6MTkz ODE6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAtbHB0aHJlYWQgID4m NSAKY29uZmlndXJlOjE5MzgxOiAkPyA9IDAKY29uZmlndXJlOjE5Mzg5OiByZXN1bHQ6IHllcwpj b25maWd1cmU6MTk1MDI6IGNoZWNraW5nIGZvciB1bnNpZ25lZCBsb25nIGxvbmcgaW50CmNvbmZp Z3VyZToxOTU1MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE5NTU5OiBjaGVja2luZyB3aGV0aGVy IGJ5dGUgb3JkZXJpbmcgaXMgYmlnZW5kaWFuCmNvbmZpZ3VyZToxOTU3NDogZ2NjIC1jIC1nMyAt TzIgICAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzoyNTM6OTogZXJyb3I6IHVua25vd24gdHlw ZSBuYW1lICdub3QnCiAgICAgICAgIG5vdCBhIHVuaXZlcnNhbCBjYXBhYmxlIGNvbXBpbGVyCiAg ICAgICAgIF5+fgpjb25mdGVzdC5jOjI1MzoxNTogZXJyb3I6IGV4cGVjdGVkICc9JywgJywnLCAn OycsICdhc20nIG9yICdfX2F0dHJpYnV0ZV9fJyBiZWZvcmUgJ3VuaXZlcnNhbCcKICAgICAgICAg bm90IGEgdW5pdmVyc2FsIGNhcGFibGUgY29tcGlsZXIKICAgICAgICAgICAgICAgXn5+fn5+fn5+ CmNvbmZ0ZXN0LmM6MjUzOjE1OiBlcnJvcjogdW5rbm93biB0eXBlIG5hbWUgJ3VuaXZlcnNhbCcK Y29uZmlndXJlOjE5NTc0OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6Cnwg LyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2Rl ZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIy NS4xIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAyNS4xIgp8ICNkZWZpbmUg UEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tB R0VfVVJMICJodHRwOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgUEFD S0FHRSAiZW1hY3MiCnwgI2RlZmluZSBWRVJTSU9OICIyNS4xIgp8ICNkZWZpbmUgTUFJTF9VU0Vf UE9QIDEKfCAjZGVmaW5lIEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfVFpTRVQgMQp8ICNk ZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKfCAjZGVmaW5l IEhBVkVfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9G RE9QRU5ESVIgMQp8ICNkZWZpbmUgSEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMg MQp8ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwg I2RlZmluZSBIQVZFX01LT1NURU1QIDEKfCAjZGVmaW5lIEhBVkVfUElQRTIgMQp8ICNkZWZpbmUg SEFWRV9QU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFWRV9T VFJUT0lNQVggMQp8ICNkZWZpbmUgSEFWRV9TVFJUT1VNQVggMQp8ICNkZWZpbmUgSEFWRV9TWU1M SU5LIDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9USU1FR00g MQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FU0FUIDEKfCAj ZGVmaW5lIEhBVkVfRlVUSU1FTlMgMQp8ICNkZWZpbmUgSEFWRV9VVElNRU5TQVQgMQp8ICNkZWZp bmUgSEFWRV9MVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmlu ZSBIQVZFX1NFQ1VSRV9HRVRFTlYgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5l IEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZF X01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5U VFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1RE X0ggMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8 ICNkZWZpbmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2Rl ZmluZSBfX1VTRV9NSU5HV19BTlNJX1NURElPIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NF TUFOVElDUyAxCnwgI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX1VT RV82NF9CSVRfSU5PREUgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAjZGVm aW5lIEhBVkVfU1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2RlZmlu ZSBIQVZFX1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmluZSBI QVZFX1BUWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9V VE1QX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERM SUJfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFN X0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAx CnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAxCnwg I2RlZmluZSBIQVZFX1NURElPX0VYVF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfSCAxCnwgI2RlZmlu ZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUg SEFWRV9VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfTElOVVgzMiAxCnwgI2Rl ZmluZSBIQVZFX0xJTlVYX1NZU0lORk8gMQp8ICNkZWZpbmUgTElOVVhfU1lTSU5GT19VTklUIDEK fCAjZGVmaW5lIEhBVkVfVEVSTV9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfU1lTX1NJR0xJU1QgMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9I IDEKfCAjZGVmaW5lIEhBVkVfTkVUX0lGX0ggMQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0ggMQp8 ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfU1RS VUNUX0lGUkVRX0lGUl9IV0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX05F VE1BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAxCnwgI2Rl ZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQUREUiAxCnwgI2RlZmluZSBIQVZFX0xPTkdfRklM RV9OQU1FUyAxCnwgI2RlZmluZSBIQVZFX1NZU19WTElNSVRfSCAxCnwgI2RlZmluZSBIQVZFX0RB VEFfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX01N QVAgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEIDEKfCAjZGVmaW5lIEhBVkVfWEtCIDEKfCAjZGVm aW5lIEhBVkVfWFJNU0VUREFUQUJBU0UgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOUkVTT1VSQ0VT VFJJTkcgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOTlVNQkVST0ZTQ1JFRU4gMQp8ICNkZWZpbmUg SEFWRV9YMTFSNiAxCnwgI2RlZmluZSBIQVZFX1hfSTE4TiAxCnwgI2RlZmluZSBIQVZFX1gxMVI2 X1hJTSAxCnwgI2RlZmluZSBIQVZFX1JTVkcgMQp8ICNkZWZpbmUgSEFWRV9JTUFHRU1BR0lDSyAx CnwgI2RlZmluZSBIQVZFX01BR0lDS0VYUE9SVElNQUdFUElYRUxTIDEKfCAjZGVmaW5lIEhBVkVf TUFHSUNLTUVSR0VJTUFHRUxBWUVSUyAxCnwgI2RlZmluZSBIQVZFX0RCVVMgMQp8ICNkZWZpbmUg SEFWRV9EQlVTX1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19UWVBFX0lT X1ZBTElEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAxCnwgI2RlZmlu ZSBIQVZFX0RCVVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVf SU5URVJGQUNFIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIgMQp8ICNkZWZp bmUgSEFWRV9HU0VUVElOR1MgMQp8ICNkZWZpbmUgSEFWRV9HQ09ORiAxCnwgI2RlZmluZSBIQVZF X0dOVVRMUyAxCnwgI2RlZmluZSBIQVZFX0dOVVRMUzMgMQp8ICNkZWZpbmUgSEFWRV9JTk9USUZZ IDEKfCAjZGVmaW5lIFVTRV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBIQVZFX1gxMVhUUjYgMQp8 ICNkZWZpbmUgVVNFX1RPT0xLSVRfU0NST0xMX0JBUlMgMQp8ICNkZWZpbmUgSEFWRV9YSU0gMQp8 ICNkZWZpbmUgVVNFX1hJTSAxCnwgI2RlZmluZSBYUmVnaXN0ZXJJTUluc3RhbnRpYXRlQ2FsbGJh Y2tfYXJnNiBYUG9pbnRlcgp8ICNkZWZpbmUgSEFWRV9YRlQgMQp8ICNkZWZpbmUgSEFWRV9GUkVF VFlQRSAxCnwgI2RlZmluZSBIQVZFX0xJQk9URiAxCnwgI2RlZmluZSBIQVZFX09URl9HRVRfVkFS SUFUSU9OX0dMWVBIUyAxCnwgI2RlZmluZSBIQVZFX00xN05fRkxUIDEKfCAjZGVmaW5lIFVTRV9Y Q0IgMQp8ICNkZWZpbmUgSEFWRV9YUE0gMQp8ICNkZWZpbmUgSEFWRV9KUEVHIDEKfCAjZGVmaW5l IEhBVkVfWkxJQiAxCnwgI2RlZmluZSBIQVZFX1BORyAxCnwgI2RlZmluZSBIQVZFX1RJRkYgMQp8 ICNkZWZpbmUgSEFWRV9HSUYgMQp8ICNkZWZpbmUgSEFWRV9HUE0gMQp8ICNkZWZpbmUgSEFWRV9Y X1NNIDEKfCAjZGVmaW5lIEhBVkVfWFJBTkRSIDEKfCAjZGVmaW5lIEhBVkVfWElORVJBTUEgMQp8 ICNkZWZpbmUgSEFWRV9YRklYRVMgMQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwyIDEKfCAjZGVmaW5l IEhBVkVfSF9FUlJOTyAxCnwgI2RlZmluZSBNQUlMX1VTRV9GTE9DSyAxCnwgI2RlZmluZSBIQVZF X0FDQ0VQVDQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hESVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NU TkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJVU0FHRSAxCnwgI2RlZmluZSBIQVZFX0dFVF9DVVJS RU5UX0RJUl9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfTFJBTkQ0OCAxCnwgI2RlZmluZSBIQVZFX1JB TkRPTSAxCnwgI2RlZmluZSBIQVZFX1JJTlQgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNk ZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FMRSAxCnwgI2Rl ZmluZSBIQVZFX05FV0xPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJMSU1JVCAxCnwgI2RlZmlu ZSBIQVZFX1NFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5lIEhB VkVfR0VUQUREUklORk8gMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZp bmUgSEFWRV9TVFJTSUdOQUwgMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUg SEFWRV9TRU5EVE8gMQp8ICNkZWZpbmUgSEFWRV9SRUNWRlJPTSAxCnwgI2RlZmluZSBIQVZFX0dF VFNPQ0tOQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEVFUk5BTUUgMQp8ICNkZWZpbmUgSEFWRV9H RVRJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfRlJFRUlGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9H QUlfU1RSRVJST1IgMQp8ICNkZWZpbmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFdF TlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0dFVEdSRU5UIDEK fCAjZGVmaW5lIEhBVkVfRU5ER1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9DRk1BS0VSQVcgMQp8ICNk ZWZpbmUgSEFWRV9DRlNFVFNQRUVEIDEKfCAjZGVmaW5lIEhBVkVfQ09QWVNJR04gMQp8ICNkZWZp bmUgSEFWRV9fX0VYRUNVVEFCTEVfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9MT0cyIDEKfCAjZGVm aW5lIEhBVkVfQUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9VTldJTkRf SU5JVCAxCnwgI2RlZmluZSBIQVZFX0ZTRUVLTyAxCnwgI2RlZmluZSBIQVZFX0dSQU5UUFQgMQp8 ICNkZWZpbmUgSEFWRV9HRVRQVCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX09QRU5QVCAxCnwgI2Rl ZmluZSBURVJNSU5GTyAxCnwgI2RlZmluZSBIQVZFX1RJTUVSRkQgMQp8ICNkZWZpbmUgSEFWRV9S RVNfSU5JVCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9VTklQQUlSX1VOSUNPREUgMQp8ICNkZWZp bmUgSEFWRV9JTkVUX1NPQ0tFVFMgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhB VkVfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVf V09SS0lOR19GT1JLIDEKfCAjZGVmaW5lIEhBVkVfU05QUklOVEYgMQp8ICNkZWZpbmUgSEFWRV9H TElCIDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fQ09ERVNFVCAxCnwgI2RlZmluZSBIQVZFX01C U1RBVEVfVCAxCnwgI2RlZmluZSBBTVBFUlNBTkRfRlVMTF9OQU1FIDEKfCAjZGVmaW5lIEhBVkVf UFRZUyAxCnwgI2RlZmluZSBIQVZFX1NPQ0tFVFMgMQp8ICNkZWZpbmUgTlVMTF9ERVZJQ0UgIi9k ZXYvbnVsbCIKfCAjZGVmaW5lIFNFUENIQVIgJzonCnwgI2RlZmluZSBzdWJwcm9jZXNzZXMgMQp8 ICNkZWZpbmUgVVNFUl9GVUxMX05BTUUgcHctPnB3X2dlY29zCnwgI2RlZmluZSBESVJFQ1RPUllf U0VQICcvJwp8ICNkZWZpbmUgSVNfREVWSUNFX1NFUChfY18pIDAKfCAjZGVmaW5lIElTX0RJUkVD VE9SWV9TRVAoX2NfKSAoKF9jXykgPT0gRElSRUNUT1JZX1NFUCkKfCAjZGVmaW5lIElTX0FOWV9T RVAoX2NfKSAoSVNfRElSRUNUT1JZX1NFUCAoX2NfKSkKfCAjZGVmaW5lIEhBVkVfUFJPQ0ZTIDEK fCAjZGVmaW5lIERFRkFVTFRfU09VTkRfREVWSUNFICIvZGV2L2RzcCIKfCAjZGVmaW5lIElOVEVS UlVQVF9JTlBVVCAxCnwgI2RlZmluZSBOQVJST1dQUk9UTyAxCnwgI2RlZmluZSBVTklYOThfUFRZ UyAxCnwgI2RlZmluZSBQVFlfSVRFUkFUSU9OIGludCBpOyBmb3IgKGkgPSAwOyBpIDwgMTsgaSsr KQp8ICNkZWZpbmUgUFRZX1RUWV9OQU1FX1NQUklOVEYgeyBjaGFyICpwdHluYW1lID0gMDsgc2ln c2V0X3QgYmxvY2tlZDsgc2lnZW1wdHlzZXQgKCZibG9ja2VkKTsgc2lnYWRkc2V0ICgmYmxvY2tl ZCwgU0lHQ0hMRCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX0JMT0NLLCAmYmxvY2tlZCwgMCk7IGlm IChncmFudHB0IChmZCkgIT0gLTEgJiYgdW5sb2NrcHQgKGZkKSAhPSAtMSkgcHR5bmFtZSA9IHB0 c25hbWUoZmQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19VTkJMT0NLLCAmYmxvY2tlZCwgMCk7IGlm ICghcHR5bmFtZSkgeyBlbWFjc19jbG9zZSAoZmQpOyByZXR1cm4gLTE7IH0gc25wcmludGYgKHB0 eV9uYW1lLCBQVFlfTkFNRV9TSVpFLCAiJXMiLCBwdHluYW1lKTsgfQp8ICNkZWZpbmUgUFRZX09Q RU4gZG8geyBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19DTE9FWEVDIHwgT19OT0NUVFkp OyBpZiAoZmQgPCAwICYmIGVycm5vID09IEVJTlZBTCkgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRX UiB8IE9fTk9DVFRZKTsgfSB3aGlsZSAoZmFsc2UpCnwgI2RlZmluZSBQVFlfTkFNRV9TUFJJTlRG IC8qKi8KfCAjZGVmaW5lIFNJR05BTFNfVklBX0NIQVJBQ1RFUlMgMQp8ICNkZWZpbmUgR0NfU0VU Sk1QX1dPUktTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBIQVZFX19T RVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TVEFDS19P VkVSRkxPV19IQU5ETElORyAxCnwgI2RlZmluZSBVU0cgLyoqLwp8ICNkZWZpbmUgR05VX0xJTlVY IC8qKi8KfCAjZGVmaW5lIFVTQUJMRV9GSU9OUkVBRCAxCnwgI2RlZmluZSBVU0FCTEVfU0lHSU8g MQp8ICNkZWZpbmUgQ09QWVJJR0hUICJDb3B5cmlnaHQgKEMpIDIwMTYgRnJlZSBTb2Z0d2FyZSBG b3VuZGF0aW9uLCBJbmMuIgp8ICNkZWZpbmUgVEVSTV9IRUFERVIgInh0ZXJtLmgiCnwgI2RlZmlu ZSBFTUFDU19DT05GSUdVUkFUSU9OICJ4ODZfNjQtdW5rbm93bi1saW51eC1nbnUiCnwgI2RlZmlu ZSBFTUFDU19DT05GSUdfT1BUSU9OUyAiLS13aXRoLXgtdG9vbGtpdD1sdWNpZCIKfCAjZGVmaW5l IEhBVkVfWF9XSU5ET1dTIDEKfCAjZGVmaW5lIFVTRV9YX1RPT0xLSVQgMQp8ICNkZWZpbmUgVVNF X0xVQ0lEIDEKfCAjZGVmaW5lIEhBVkVfWDExIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0FUVFJJ QlVURV9BTElHTkVEIDEKfCAjZGVmaW5lIEdOVV9NQUxMT0MgMQp8ICNkZWZpbmUgUkVMX0FMTE9D IDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNk ZWZpbmUgSEFWRV9VTlNJR05FRF9MT05HX0xPTkdfSU5UIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4g ICovCnwgI2lmbmRlZiBfX0FQUExFX0NDX18KfCAJICAgICAgIG5vdCBhIHVuaXZlcnNhbCBjYXBh YmxlIGNvbXBpbGVyCnwgCSAgICAgI2VuZGlmCnwgCSAgICAgdHlwZWRlZiBpbnQgZHVtbXk7Cnwg CmNvbmZpZ3VyZToxOTYxOTogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmln dXJlOjE5NjE5OiAkPyA9IDAKY29uZmlndXJlOjE5NjM3OiBnY2MgLWMgLWczIC1PMiAgICBjb25m dGVzdC5jID4mNQpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiAnbWFpbic6CmNvbmZ0ZXN0LmM6MjU5 OjQ6IGVycm9yOiB1bmtub3duIHR5cGUgbmFtZSAnbm90JwogICAgbm90IGJpZyBlbmRpYW4KICAg IF5+fgpjb25mdGVzdC5jOjI1OToxMjogZXJyb3I6IGV4cGVjdGVkICc9JywgJywnLCAnOycsICdh c20nIG9yICdfX2F0dHJpYnV0ZV9fJyBiZWZvcmUgJ2VuZGlhbicKICAgIG5vdCBiaWcgZW5kaWFu CiAgICAgICAgICAgIF5+fn5+fgpjb25maWd1cmU6MTk2Mzc6ICQ/ID0gMQpjb25maWd1cmU6IGZh aWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05B TUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmlu ZSBQQUNLQUdFX1ZFUlNJT04gIjI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVt YWNzIDI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUu b3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHA6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9l bWFjcy8iCnwgI2RlZmluZSBQQUNLQUdFICJlbWFjcyIKfCAjZGVmaW5lIFZFUlNJT04gIjI1LjEi CnwgI2RlZmluZSBNQUlMX1VTRV9QT1AgMQp8ICNkZWZpbmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZp bmUgSEFWRV9UWlNFVCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX1JF QURMSU5LQVQgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9GQ05U TCAxCnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8 ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2Rl ZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfTUtPU1RFTVAgMQp8ICNkZWZpbmUgSEFW RV9QSVBFMiAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElO SyAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX1NUUlRPVU1BWCAx CnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwg I2RlZmluZSBIQVZFX1RJTUVHTSAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVMgMQp8ICNkZWZpbmUg SEFWRV9GVVRJTUVTQVQgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVOUyAxCnwgI2RlZmluZSBIQVZF X1VUSU1FTlNBVCAxCnwgI2RlZmluZSBIQVZFX0xVVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9HRVRE VEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VDVVJFX0dFVEVOViAxCnwgI2RlZmluZSBTVERD X0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklO R19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0gg MQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8 ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2Rl ZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5l IF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9fVVNFX01JTkdXX0FOU0lfU1RESU8gMQp8ICNkZWZp bmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEK fCAjZGVmaW5lIF9EQVJXSU5fVVNFXzY0X0JJVF9JTk9ERSAxCnwgI2RlZmluZSBTWVNURU1fVFlQ RSAiZ251L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJEX0ggMQp8ICNkZWZpbmUg SEFWRV9BTFNBIDEKfCAjZGVmaW5lIEhBVkVfU09VTkQgMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lT SU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VS Q0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0Rf SCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAx CnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUg SEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUg SEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFW RV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRU WVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QRVJTT05B TElUWV9MSU5VWDMyIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5GTyAxCnwgI2RlZmluZSBM SU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUgSEFWRV9URVJNX0ggMQp8ICNkZWZpbmUgVElN RV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TWVNfU0lHTElTVCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwgI2RlZmlu ZSBIQVZFX0lGQUREUlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxBR1Mg MQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwgI2RlZmluZSBIQVZF X1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9J RlJfQlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERSIDEKfCAj ZGVmaW5lIEhBVkVfTE9OR19GSUxFX05BTUVTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1ZMSU1JVF9I IDEKfCAjZGVmaW5lIEhBVkVfREFUQV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpF IDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQUQgMQp8ICNkZWZp bmUgSEFWRV9YS0IgMQp8ICNkZWZpbmUgSEFWRV9YUk1TRVREQVRBQkFTRSAxCnwgI2RlZmluZSBI QVZFX1hTQ1JFRU5SRVNPVVJDRVNUUklORyAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJP RlNDUkVFTiAxCnwgI2RlZmluZSBIQVZFX1gxMVI2IDEKfCAjZGVmaW5lIEhBVkVfWF9JMThOIDEK fCAjZGVmaW5lIEhBVkVfWDExUjZfWElNIDEKfCAjZGVmaW5lIEhBVkVfUlNWRyAxCnwgI2RlZmlu ZSBIQVZFX0lNQUdFTUFHSUNLIDEKfCAjZGVmaW5lIEhBVkVfTUFHSUNLRVhQT1JUSU1BR0VQSVhF TFMgMQp8ICNkZWZpbmUgSEFWRV9NQUdJQ0tNRVJHRUlNQUdFTEFZRVJTIDEKfCAjZGVmaW5lIEhB VkVfREJVUyAxCnwgI2RlZmluZSBIQVZFX0RCVVNfV0FUQ0hfR0VUX1VOSVhfRkQgMQp8ICNkZWZp bmUgSEFWRV9EQlVTX1RZUEVfSVNfVkFMSUQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRF X0JVU19OQU1FIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9QQVRIIDEKfCAjZGVmaW5l IEhBVkVfREJVU19WQUxJREFURV9JTlRFUkZBQ0UgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElE QVRFX01FTUJFUiAxCnwgI2RlZmluZSBIQVZFX0dTRVRUSU5HUyAxCnwgI2RlZmluZSBIQVZFX0dD T05GIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTMyAxCnwg I2RlZmluZSBIQVZFX0lOT1RJRlkgMQp8ICNkZWZpbmUgVVNFX0ZJTEVfTk9USUZZIDEKfCAjZGVm aW5lIEhBVkVfWDExWFRSNiAxCnwgI2RlZmluZSBVU0VfVE9PTEtJVF9TQ1JPTExfQkFSUyAxCnwg I2RlZmluZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBVU0VfWElNIDEKfCAjZGVmaW5lIFhSZWdpc3Rl cklNSW5zdGFudGlhdGVDYWxsYmFja19hcmc2IFhQb2ludGVyCnwgI2RlZmluZSBIQVZFX1hGVCAx CnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAjZGVmaW5lIEhBVkVfTElCT1RGIDEKfCAjZGVm aW5lIEhBVkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTIDEKfCAjZGVmaW5lIEhBVkVfTTE3Tl9G TFQgMQp8ICNkZWZpbmUgVVNFX1hDQiAxCnwgI2RlZmluZSBIQVZFX1hQTSAxCnwgI2RlZmluZSBI QVZFX0pQRUcgMQp8ICNkZWZpbmUgSEFWRV9aTElCIDEKfCAjZGVmaW5lIEhBVkVfUE5HIDEKfCAj ZGVmaW5lIEhBVkVfVElGRiAxCnwgI2RlZmluZSBIQVZFX0dJRiAxCnwgI2RlZmluZSBIQVZFX0dQ TSAxCnwgI2RlZmluZSBIQVZFX1hfU00gMQp8ICNkZWZpbmUgSEFWRV9YUkFORFIgMQp8ICNkZWZp bmUgSEFWRV9YSU5FUkFNQSAxCnwgI2RlZmluZSBIQVZFX1hGSVhFUyAxCnwgI2RlZmluZSBIQVZF X0xJQlhNTDIgMQp8ICNkZWZpbmUgSEFWRV9IX0VSUk5PIDEKfCAjZGVmaW5lIE1BSUxfVVNFX0ZM T0NLIDEKfCAjZGVmaW5lIEhBVkVfQUNDRVBUNCAxCnwgI2RlZmluZSBIQVZFX0ZDSERJUiAxCnwg I2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUUlVTQUdFIDEKfCAj ZGVmaW5lIEhBVkVfR0VUX0NVUlJFTlRfRElSX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9MUkFORDQ4 IDEKfCAjZGVmaW5lIEhBVkVfUkFORE9NIDEKfCAjZGVmaW5lIEhBVkVfUklOVCAxCnwgI2RlZmlu ZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhB VkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfTkVXTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVf R0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0hV VERPV04gMQp8ICNkZWZpbmUgSEFWRV9HRVRBRERSSU5GTyAxCnwgI2RlZmluZSBIQVZFX1BUSFJF QURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlNJR05BTCAxCnwgI2RlZmluZSBIQVZFX1NF VElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX1NFTkRUTyAxCnwgI2RlZmluZSBIQVZFX1JFQ1ZGUk9N IDEKfCAjZGVmaW5lIEhBVkVfR0VUU09DS05BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRQRUVSTkFN RSAxCnwgI2RlZmluZSBIQVZFX0dFVElGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9GUkVFSUZBRERS UyAxCnwgI2RlZmluZSBIQVZFX0dBSV9TVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZFX1NZTkMgMQp8 ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0VORFBXRU5UIDEKfCAjZGVm aW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRHUkVOVCAxCnwgI2RlZmluZSBI QVZFX0NGTUFLRVJBVyAxCnwgI2RlZmluZSBIQVZFX0NGU0VUU1BFRUQgMQp8ICNkZWZpbmUgSEFW RV9DT1BZU0lHTiAxCnwgI2RlZmluZSBIQVZFX19fRVhFQ1VUQUJMRV9TVEFSVCAxCnwgI2RlZmlu ZSBIQVZFX0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhB VkVfX19CVUlMVElOX1VOV0lORF9JTklUIDEKfCAjZGVmaW5lIEhBVkVfRlNFRUtPIDEKfCAjZGVm aW5lIEhBVkVfR1JBTlRQVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBUIDEKfCAjZGVmaW5lIEhBVkVf UE9TSVhfT1BFTlBUIDEKfCAjZGVmaW5lIFRFUk1JTkZPIDEKfCAjZGVmaW5lIEhBVkVfVElNRVJG RCAxCnwgI2RlZmluZSBIQVZFX1JFU19JTklUIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1VOSVBB SVJfVU5JQ09ERSAxCnwgI2RlZmluZSBIQVZFX0lORVRfU09DS0VUUyAxCnwgI2RlZmluZSBIQVZF X0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVkZP UksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9TTlBSSU5U RiAxCnwgI2RlZmluZSBIQVZFX0dMSUIgMQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5GT19DT0RFU0VU IDEKfCAjZGVmaW5lIEhBVkVfTUJTVEFURV9UIDEKfCAjZGVmaW5lIEFNUEVSU0FORF9GVUxMX05B TUUgMQp8ICNkZWZpbmUgSEFWRV9QVFlTIDEKfCAjZGVmaW5lIEhBVkVfU09DS0VUUyAxCnwgI2Rl ZmluZSBOVUxMX0RFVklDRSAiL2Rldi9udWxsIgp8ICNkZWZpbmUgU0VQQ0hBUiAnOicKfCAjZGVm aW5lIHN1YnByb2Nlc3NlcyAxCnwgI2RlZmluZSBVU0VSX0ZVTExfTkFNRSBwdy0+cHdfZ2Vjb3MK fCAjZGVmaW5lIERJUkVDVE9SWV9TRVAgJy8nCnwgI2RlZmluZSBJU19ERVZJQ0VfU0VQKF9jXykg MAp8ICNkZWZpbmUgSVNfRElSRUNUT1JZX1NFUChfY18pICgoX2NfKSA9PSBESVJFQ1RPUllfU0VQ KQp8ICNkZWZpbmUgSVNfQU5ZX1NFUChfY18pIChJU19ESVJFQ1RPUllfU0VQIChfY18pKQp8ICNk ZWZpbmUgSEFWRV9QUk9DRlMgMQp8ICNkZWZpbmUgREVGQVVMVF9TT1VORF9ERVZJQ0UgIi9kZXYv ZHNwIgp8ICNkZWZpbmUgSU5URVJSVVBUX0lOUFVUIDEKfCAjZGVmaW5lIE5BUlJPV1BST1RPIDEK fCAjZGVmaW5lIFVOSVg5OF9QVFlTIDEKfCAjZGVmaW5lIFBUWV9JVEVSQVRJT04gaW50IGk7IGZv ciAoaSA9IDA7IGkgPCAxOyBpKyspCnwgI2RlZmluZSBQVFlfVFRZX05BTUVfU1BSSU5URiB7IGNo YXIgKnB0eW5hbWUgPSAwOyBzaWdzZXRfdCBibG9ja2VkOyBzaWdlbXB0eXNldCAoJmJsb2NrZWQp OyBzaWdhZGRzZXQgKCZibG9ja2VkLCBTSUdDSExEKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfQkxP Q0ssICZibG9ja2VkLCAwKTsgaWYgKGdyYW50cHQgKGZkKSAhPSAtMSAmJiB1bmxvY2twdCAoZmQp ICE9IC0xKSBwdHluYW1lID0gcHRzbmFtZShmZCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX1VOQkxP Q0ssICZibG9ja2VkLCAwKTsgaWYgKCFwdHluYW1lKSB7IGVtYWNzX2Nsb3NlIChmZCk7IHJldHVy biAtMTsgfSBzbnByaW50ZiAocHR5X25hbWUsIFBUWV9OQU1FX1NJWkUsICIlcyIsIHB0eW5hbWUp OyB9CnwgI2RlZmluZSBQVFlfT1BFTiBkbyB7IGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBP X0NMT0VYRUMgfCBPX05PQ1RUWSk7IGlmIChmZCA8IDAgJiYgZXJybm8gPT0gRUlOVkFMKSBmZCA9 IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19OT0NUVFkpOyB9IHdoaWxlIChmYWxzZSkKfCAjZGVm aW5lIFBUWV9OQU1FX1NQUklOVEYgLyoqLwp8ICNkZWZpbmUgU0lHTkFMU19WSUFfQ0hBUkFDVEVS UyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktT IDEKfCAjZGVmaW5lIEhBVkVfX1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVEpNUCAxCnwg I2RlZmluZSBIQVZFX1NUQUNLX09WRVJGTE9XX0hBTkRMSU5HIDEKfCAjZGVmaW5lIFVTRyAvKiov CnwgI2RlZmluZSBHTlVfTElOVVggLyoqLwp8ICNkZWZpbmUgVVNBQkxFX0ZJT05SRUFEIDEKfCAj ZGVmaW5lIFVTQUJMRV9TSUdJTyAxCnwgI2RlZmluZSBDT1BZUklHSFQgIkNvcHlyaWdodCAoQykg MjAxNiBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4iCnwgI2RlZmluZSBURVJNX0hFQURF UiAieHRlcm0uaCIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR1VSQVRJT04gIng4Nl82NC11bmtub3du LWxpbnV4LWdudSIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR19PUFRJT05TICItLXdpdGgteC10b29s a2l0PWx1Y2lkIgp8ICNkZWZpbmUgSEFWRV9YX1dJTkRPV1MgMQp8ICNkZWZpbmUgVVNFX1hfVE9P TEtJVCAxCnwgI2RlZmluZSBVU0VfTFVDSUQgMQp8ICNkZWZpbmUgSEFWRV9YMTEgMQp8ICNkZWZp bmUgSEFWRV9TVFJVQ1RfQVRUUklCVVRFX0FMSUdORUQgMQp8ICNkZWZpbmUgR05VX01BTExPQyAx CnwgI2RlZmluZSBSRUxfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAxCnwgI2RlZmlu ZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBIQVZFX1VOU0lHTkVEX0xPTkdfTE9OR19JTlQgMQp8 IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgCQkjaW5j bHVkZSA8c3lzL3BhcmFtLmg+CnwgCnwgaW50CnwgbWFpbiAoKQp8IHsKfCAjaWYgQllURV9PUkRF UiAhPSBCSUdfRU5ESUFOCnwgCQkgbm90IGJpZyBlbmRpYW4KfCAJCSNlbmRpZgp8IAp8ICAgOwp8 ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MTk3NjU6IHJlc3VsdDogbm8KY29uZmlndXJlOjE5 OTM1OiBjaGVja2luZyB3aGV0aGVyIHRoZSBwcmVwcm9jZXNzb3Igc3VwcG9ydHMgaW5jbHVkZV9u ZXh0CmNvbmZpZ3VyZToxOTk3MzogZ2NjIC1jIC1nMyAtTzIgICAgLUljb25mdGVzdGQxYiAtSWNv bmZ0ZXN0ZDIgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjE5OTczOiAkPyA9IDAKY29uZmlndXJl OjE5OTk0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjAwMTU6IGNoZWNraW5nIHdoZXRoZXIgc3lz dGVtIGhlYWRlciBmaWxlcyBsaW1pdCB0aGUgbGluZSBsZW5ndGgKY29uZmlndXJlOjIwMDM4OiBy ZXN1bHQ6IG5vCmNvbmZpZ3VyZToyMDA1MDogY2hlY2tpbmcgd2hldGhlciBzdHJ0b2xkIGNvbmZv cm1zIHRvIEM5OQpjb25maWd1cmU6MjAwNzc6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAg Y29uZnRlc3QuYyAtbHB0aHJlYWQgID4mNSAKY29uZmlndXJlOjIwMDc3OiAkPyA9IDAKY29uZmln dXJlOjIwMDg1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjAxMDA6IGNoZWNraW5nIGlmIGVudmly b24gaXMgcHJvcGVybHkgZGVjbGFyZWQKY29uZmlndXJlOjIwMTIzOiBnY2MgLWMgLWczIC1PMiAg ICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOjI1OTozOTogZXJyb3I6IGNvbmZsaWN0aW5nIHR5 cGVzIGZvciAnZW52aXJvbicKICAgICAgICAgICAgZXh0ZXJuIHN0cnVjdCB7IGludCBmb287IH0g ZW52aXJvbjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fgpJ biBmaWxlIGluY2x1ZGVkIGZyb20gY29uZnRlc3QuYzoyNTQ6MDoKL3Vzci9pbmNsdWRlL3VuaXN0 ZC5oOjU0ODoxNTogbm90ZTogcHJldmlvdXMgZGVjbGFyYXRpb24gb2YgJ2Vudmlyb24nIHdhcyBo ZXJlCiBleHRlcm4gY2hhciAqKmVudmlyb247CiAgICAgICAgICAgICAgIF5+fn5+fn4KY29uZmln dXJlOjIwMTIzOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29u ZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2RlZmluZSBQ QUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyNS4xIgp8 ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAyNS4xIgp8ICNkZWZpbmUgUEFDS0FH RV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJM ICJodHRwOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgUEFDS0FHRSAi ZW1hY3MiCnwgI2RlZmluZSBWRVJTSU9OICIyNS4xIgp8ICNkZWZpbmUgTUFJTF9VU0VfUE9QIDEK fCAjZGVmaW5lIEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfVFpTRVQgMQp8ICNkZWZpbmUg SEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKfCAjZGVmaW5lIEhBVkVf RkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9GRE9QRU5E SVIgMQp8ICNkZWZpbmUgSEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMgMQp8ICNk ZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwgI2RlZmlu ZSBIQVZFX01LT1NURU1QIDEKfCAjZGVmaW5lIEhBVkVfUElQRTIgMQp8ICNkZWZpbmUgSEFWRV9Q U0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFWRV9TVFJUT0lN QVggMQp8ICNkZWZpbmUgSEFWRV9TVFJUT1VNQVggMQp8ICNkZWZpbmUgSEFWRV9TWU1MSU5LIDEK fCAjZGVmaW5lIEhBVkVfTE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9USU1FR00gMQp8ICNk ZWZpbmUgSEFWRV9GVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FU0FUIDEKfCAjZGVmaW5l IEhBVkVfRlVUSU1FTlMgMQp8ICNkZWZpbmUgSEFWRV9VVElNRU5TQVQgMQp8ICNkZWZpbmUgSEFW RV9MVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZF X1NFQ1VSRV9HRVRFTlYgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVf U1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9S WV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNf SCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8 ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8ICNkZWZp bmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBf X1VTRV9NSU5HV19BTlNJX1NURElPIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElD UyAxCnwgI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX1VTRV82NF9C SVRfSU5PREUgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAjZGVmaW5lIEhB VkVfU1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2RlZmluZSBIQVZF X1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1BU WV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf VVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1QX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAx CnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8 ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwgI2Rl ZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAxCnwgI2RlZmlu ZSBIQVZFX1NURElPX0VYVF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfSCAxCnwgI2RlZmluZSBIQVZF X1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9V VElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfTElOVVgzMiAxCnwgI2RlZmluZSBI QVZFX0xJTlVYX1NZU0lORk8gMQp8ICNkZWZpbmUgTElOVVhfU1lTSU5GT19VTklUIDEKfCAjZGVm aW5lIEhBVkVfVEVSTV9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfU1lTX1NJR0xJU1QgMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAj ZGVmaW5lIEhBVkVfTkVUX0lGX0ggMQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0ggMQp8ICNkZWZp bmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lG UkVRX0lGUl9IV0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX05FVE1BU0sg MQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAxCnwgI2RlZmluZSBI QVZFX1NUUlVDVF9JRlJFUV9JRlJfQUREUiAxCnwgI2RlZmluZSBIQVZFX0xPTkdfRklMRV9OQU1F UyAxCnwgI2RlZmluZSBIQVZFX1NZU19WTElNSVRfSCAxCnwgI2RlZmluZSBIQVZFX0RBVEFfU1RB UlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX01NQVAgMQp8 ICNkZWZpbmUgSEFWRV9QVEhSRUFEIDEKfCAjZGVmaW5lIEhBVkVfWEtCIDEKfCAjZGVmaW5lIEhB VkVfWFJNU0VUREFUQUJBU0UgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOUkVTT1VSQ0VTVFJJTkcg MQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOTlVNQkVST0ZTQ1JFRU4gMQp8ICNkZWZpbmUgSEFWRV9Y MTFSNiAxCnwgI2RlZmluZSBIQVZFX1hfSTE4TiAxCnwgI2RlZmluZSBIQVZFX1gxMVI2X1hJTSAx CnwgI2RlZmluZSBIQVZFX1JTVkcgMQp8ICNkZWZpbmUgSEFWRV9JTUFHRU1BR0lDSyAxCnwgI2Rl ZmluZSBIQVZFX01BR0lDS0VYUE9SVElNQUdFUElYRUxTIDEKfCAjZGVmaW5lIEhBVkVfTUFHSUNL TUVSR0VJTUFHRUxBWUVSUyAxCnwgI2RlZmluZSBIQVZFX0RCVVMgMQp8ICNkZWZpbmUgSEFWRV9E QlVTX1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19UWVBFX0lTX1ZBTElE IDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAxCnwgI2RlZmluZSBIQVZF X0RCVVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfSU5URVJG QUNFIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIgMQp8ICNkZWZpbmUgSEFW RV9HU0VUVElOR1MgMQp8ICNkZWZpbmUgSEFWRV9HQ09ORiAxCnwgI2RlZmluZSBIQVZFX0dOVVRM UyAxCnwgI2RlZmluZSBIQVZFX0dOVVRMUzMgMQp8ICNkZWZpbmUgSEFWRV9JTk9USUZZIDEKfCAj ZGVmaW5lIFVTRV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBIQVZFX1gxMVhUUjYgMQp8ICNkZWZp bmUgVVNFX1RPT0xLSVRfU0NST0xMX0JBUlMgMQp8ICNkZWZpbmUgSEFWRV9YSU0gMQp8ICNkZWZp bmUgVVNFX1hJTSAxCnwgI2RlZmluZSBYUmVnaXN0ZXJJTUluc3RhbnRpYXRlQ2FsbGJhY2tfYXJn NiBYUG9pbnRlcgp8ICNkZWZpbmUgSEFWRV9YRlQgMQp8ICNkZWZpbmUgSEFWRV9GUkVFVFlQRSAx CnwgI2RlZmluZSBIQVZFX0xJQk9URiAxCnwgI2RlZmluZSBIQVZFX09URl9HRVRfVkFSSUFUSU9O X0dMWVBIUyAxCnwgI2RlZmluZSBIQVZFX00xN05fRkxUIDEKfCAjZGVmaW5lIFVTRV9YQ0IgMQp8 ICNkZWZpbmUgSEFWRV9YUE0gMQp8ICNkZWZpbmUgSEFWRV9KUEVHIDEKfCAjZGVmaW5lIEhBVkVf WkxJQiAxCnwgI2RlZmluZSBIQVZFX1BORyAxCnwgI2RlZmluZSBIQVZFX1RJRkYgMQp8ICNkZWZp bmUgSEFWRV9HSUYgMQp8ICNkZWZpbmUgSEFWRV9HUE0gMQp8ICNkZWZpbmUgSEFWRV9YX1NNIDEK fCAjZGVmaW5lIEhBVkVfWFJBTkRSIDEKfCAjZGVmaW5lIEhBVkVfWElORVJBTUEgMQp8ICNkZWZp bmUgSEFWRV9YRklYRVMgMQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwyIDEKfCAjZGVmaW5lIEhBVkVf SF9FUlJOTyAxCnwgI2RlZmluZSBNQUlMX1VTRV9GTE9DSyAxCnwgI2RlZmluZSBIQVZFX0FDQ0VQ VDQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hESVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAx CnwgI2RlZmluZSBIQVZFX0dFVFJVU0FHRSAxCnwgI2RlZmluZSBIQVZFX0dFVF9DVVJSRU5UX0RJ Ul9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfTFJBTkQ0OCAxCnwgI2RlZmluZSBIQVZFX1JBTkRPTSAx CnwgI2RlZmluZSBIQVZFX1JJTlQgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZpbmUg SEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FMRSAxCnwgI2RlZmluZSBI QVZFX05FV0xPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZF X1NFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5lIEhBVkVfR0VU QUREUklORk8gMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFW RV9TVFJTSUdOQUwgMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9T RU5EVE8gMQp8ICNkZWZpbmUgSEFWRV9SRUNWRlJPTSAxCnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tO QU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEVFUk5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRJRkFE RFJTIDEKfCAjZGVmaW5lIEhBVkVfRlJFRUlGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9HQUlfU1RS RVJST1IgMQp8ICNkZWZpbmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFdFTlQgMQp8 ICNkZWZpbmUgSEFWRV9FTkRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0dFVEdSRU5UIDEKfCAjZGVm aW5lIEhBVkVfRU5ER1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9DRk1BS0VSQVcgMQp8ICNkZWZpbmUg SEFWRV9DRlNFVFNQRUVEIDEKfCAjZGVmaW5lIEhBVkVfQ09QWVNJR04gMQp8ICNkZWZpbmUgSEFW RV9fX0VYRUNVVEFCTEVfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9MT0cyIDEKfCAjZGVmaW5lIEhB VkVfQUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9VTldJTkRfSU5JVCAx CnwgI2RlZmluZSBIQVZFX0ZTRUVLTyAxCnwgI2RlZmluZSBIQVZFX0dSQU5UUFQgMQp8ICNkZWZp bmUgSEFWRV9HRVRQVCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX09QRU5QVCAxCnwgI2RlZmluZSBU RVJNSU5GTyAxCnwgI2RlZmluZSBIQVZFX1RJTUVSRkQgMQp8ICNkZWZpbmUgSEFWRV9SRVNfSU5J VCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9VTklQQUlSX1VOSUNPREUgMQp8ICNkZWZpbmUgSEFW RV9JTkVUX1NPQ0tFVFMgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfVkZP UksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lO R19GT1JLIDEKfCAjZGVmaW5lIEhBVkVfU05QUklOVEYgMQp8ICNkZWZpbmUgSEFWRV9HTElCIDEK fCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fQ09ERVNFVCAxCnwgI2RlZmluZSBIQVZFX01CU1RBVEVf VCAxCnwgI2RlZmluZSBBTVBFUlNBTkRfRlVMTF9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUFRZUyAx CnwgI2RlZmluZSBIQVZFX1NPQ0tFVFMgMQp8ICNkZWZpbmUgTlVMTF9ERVZJQ0UgIi9kZXYvbnVs bCIKfCAjZGVmaW5lIFNFUENIQVIgJzonCnwgI2RlZmluZSBzdWJwcm9jZXNzZXMgMQp8ICNkZWZp bmUgVVNFUl9GVUxMX05BTUUgcHctPnB3X2dlY29zCnwgI2RlZmluZSBESVJFQ1RPUllfU0VQICcv Jwp8ICNkZWZpbmUgSVNfREVWSUNFX1NFUChfY18pIDAKfCAjZGVmaW5lIElTX0RJUkVDVE9SWV9T RVAoX2NfKSAoKF9jXykgPT0gRElSRUNUT1JZX1NFUCkKfCAjZGVmaW5lIElTX0FOWV9TRVAoX2Nf KSAoSVNfRElSRUNUT1JZX1NFUCAoX2NfKSkKfCAjZGVmaW5lIEhBVkVfUFJPQ0ZTIDEKfCAjZGVm aW5lIERFRkFVTFRfU09VTkRfREVWSUNFICIvZGV2L2RzcCIKfCAjZGVmaW5lIElOVEVSUlVQVF9J TlBVVCAxCnwgI2RlZmluZSBOQVJST1dQUk9UTyAxCnwgI2RlZmluZSBVTklYOThfUFRZUyAxCnwg I2RlZmluZSBQVFlfSVRFUkFUSU9OIGludCBpOyBmb3IgKGkgPSAwOyBpIDwgMTsgaSsrKQp8ICNk ZWZpbmUgUFRZX1RUWV9OQU1FX1NQUklOVEYgeyBjaGFyICpwdHluYW1lID0gMDsgc2lnc2V0X3Qg YmxvY2tlZDsgc2lnZW1wdHlzZXQgKCZibG9ja2VkKTsgc2lnYWRkc2V0ICgmYmxvY2tlZCwgU0lH Q0hMRCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX0JMT0NLLCAmYmxvY2tlZCwgMCk7IGlmIChncmFu dHB0IChmZCkgIT0gLTEgJiYgdW5sb2NrcHQgKGZkKSAhPSAtMSkgcHR5bmFtZSA9IHB0c25hbWUo ZmQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19VTkJMT0NLLCAmYmxvY2tlZCwgMCk7IGlmICghcHR5 bmFtZSkgeyBlbWFjc19jbG9zZSAoZmQpOyByZXR1cm4gLTE7IH0gc25wcmludGYgKHB0eV9uYW1l LCBQVFlfTkFNRV9TSVpFLCAiJXMiLCBwdHluYW1lKTsgfQp8ICNkZWZpbmUgUFRZX09QRU4gZG8g eyBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19DTE9FWEVDIHwgT19OT0NUVFkpOyBpZiAo ZmQgPCAwICYmIGVycm5vID09IEVJTlZBTCkgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9f Tk9DVFRZKTsgfSB3aGlsZSAoZmFsc2UpCnwgI2RlZmluZSBQVFlfTkFNRV9TUFJJTlRGIC8qKi8K fCAjZGVmaW5lIFNJR05BTFNfVklBX0NIQVJBQ1RFUlMgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dP UktTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBIQVZFX19TRVRKTVAg MQp8ICNkZWZpbmUgSEFWRV9TSUdTRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TVEFDS19PVkVSRkxP V19IQU5ETElORyAxCnwgI2RlZmluZSBVU0cgLyoqLwp8ICNkZWZpbmUgR05VX0xJTlVYIC8qKi8K fCAjZGVmaW5lIFVTQUJMRV9GSU9OUkVBRCAxCnwgI2RlZmluZSBVU0FCTEVfU0lHSU8gMQp8ICNk ZWZpbmUgQ09QWVJJR0hUICJDb3B5cmlnaHQgKEMpIDIwMTYgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0 aW9uLCBJbmMuIgp8ICNkZWZpbmUgVEVSTV9IRUFERVIgInh0ZXJtLmgiCnwgI2RlZmluZSBFTUFD U19DT05GSUdVUkFUSU9OICJ4ODZfNjQtdW5rbm93bi1saW51eC1nbnUiCnwgI2RlZmluZSBFTUFD U19DT05GSUdfT1BUSU9OUyAiLS13aXRoLXgtdG9vbGtpdD1sdWNpZCIKfCAjZGVmaW5lIEhBVkVf WF9XSU5ET1dTIDEKfCAjZGVmaW5lIFVTRV9YX1RPT0xLSVQgMQp8ICNkZWZpbmUgVVNFX0xVQ0lE IDEKfCAjZGVmaW5lIEhBVkVfWDExIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0FUVFJJQlVURV9B TElHTkVEIDEKfCAjZGVmaW5lIEdOVV9NQUxMT0MgMQp8ICNkZWZpbmUgUkVMX0FMTE9DIDEKfCAj ZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUg SEFWRV9VTlNJR05FRF9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfQzk5X1NUUlRPTEQg MQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaWYgSEFWRV9VTklTVERfSAp8ICAgICAgI2lu Y2x1ZGUgPHVuaXN0ZC5oPgp8ICAgICAgI2VuZGlmCnwgICAgICAvKiBtaW5ndywgQmVPUywgSGFp a3UgZGVjbGFyZSBlbnZpcm9uIGluIDxzdGRsaWIuaD4sIG5vdCBpbiA8dW5pc3RkLmg+LiAgKi8K fCAgICAgICNpbmNsdWRlIDxzdGRsaWIuaD4KfCAKfCAgICAgICAgICAgIGV4dGVybiBzdHJ1Y3Qg eyBpbnQgZm9vOyB9IGVudmlyb247CnwgaW50CnwgbWFpbiAoKQp8IHsKfCBlbnZpcm9uLmZvbyA9 IDE7CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToyMDEzMTogcmVzdWx0OiB5ZXMK Y29uZmlndXJlOjIwMTQ2OiBjaGVja2luZyBmb3IgY29tcGxldGUgZXJybm8uaApjb25maWd1cmU6 MjAyMTk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMDU0MTogY2hlY2tpbmcgZm9yIG1vZGVfdApj b25maWd1cmU6MjA1NDE6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3Vy ZToyMDU0MTogJD8gPSAwCmNvbmZpZ3VyZToyMDU0MTogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRl c3QuYyA+JjUKY29uZnRlc3QuYzogSW4gZnVuY3Rpb24gJ21haW4nOgpjb25mdGVzdC5jOjI5MDoy MTogZXJyb3I6IGV4cGVjdGVkIGV4cHJlc3Npb24gYmVmb3JlICcpJyB0b2tlbgogaWYgKHNpemVv ZiAoKG1vZGVfdCkpKQogICAgICAgICAgICAgICAgICAgICBeCmNvbmZpZ3VyZToyMDU0MTogJD8g PSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAj ZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1F ICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMjUuMSIKfCAjZGVmaW5lIFBBQ0tB R0VfU1RSSU5HICJHTlUgRW1hY3MgMjUuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJi dWctZ251LWVtYWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0cDovL3d3dy5n bnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIFBBQ0tBR0UgImVtYWNzIgp8ICNkZWZp bmUgVkVSU0lPTiAiMjUuMSIKfCAjZGVmaW5lIE1BSUxfVVNFX1BPUCAxCnwgI2RlZmluZSBIQVZF X1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1RaU0VUIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEK fCAjZGVmaW5lIEhBVkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwg I2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEKfCAjZGVmaW5l IEhBVkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VU VElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9NS09TVEVN UCAxCnwgI2RlZmluZSBIQVZFX1BJUEUyIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2Rl ZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVmaW5l IEhBVkVfU1RSVE9VTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZF X0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfVElNRUdNIDEKfCAjZGVmaW5lIEhBVkVfRlVU SU1FUyAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVNBVCAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRU5T IDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVOU0FUIDEKfCAjZGVmaW5lIEhBVkVfTFVUSU1FUyAxCnwg I2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRUNVUkVfR0VURU5W IDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAj ZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmlu ZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUg SEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIF9fRVhU RU5TSU9OU19fIDEKfCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fQ19T T1VSQ0UgMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19VU0VfTUlOR1dfQU5T SV9TVERJTyAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUg X1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9VU0VfNjRfQklUX0lOT0RFIDEKfCAj ZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENB UkRfSCAxCnwgI2RlZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19TWVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9QVFlfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwg I2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFW RV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVf UFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9ESVJF TlRfSCAxCnwgI2RlZmluZSBIQVZFX0VYRUNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJT19F WFRfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVf SCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwg I2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVfSCAxCnwgI2Rl ZmluZSBIQVZFX1BFUlNPTkFMSVRZX0xJTlVYMzIgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJ TkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1f SCAxCnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NZ U19TSUdMSVNUIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX05F VF9JRl9IIDEKfCAjZGVmaW5lIEhBVkVfSUZBRERSU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNU X0lGUkVRX0lGUl9GTEFHUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfSFdBRERS IDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9ORVRNQVNLIDEKfCAjZGVmaW5lIEhB VkVfU1RSVUNUX0lGUkVRX0lGUl9CUk9BREFERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZS RVFfSUZSX0FERFIgMQp8ICNkZWZpbmUgSEFWRV9MT05HX0ZJTEVfTkFNRVMgMQp8ICNkZWZpbmUg SEFWRV9TWVNfVkxJTUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9EQVRBX1NUQVJUIDEKfCAjZGVmaW5l IEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9NTUFQIDEKfCAjZGVmaW5lIEhBVkVf UFRIUkVBRCAxCnwgI2RlZmluZSBIQVZFX1hLQiAxCnwgI2RlZmluZSBIQVZFX1hSTVNFVERBVEFC QVNFIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RSSU5HIDEKfCAjZGVmaW5lIEhB VkVfWFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhBVkVfWDExUjYgMQp8ICNkZWZp bmUgSEFWRV9YX0kxOE4gMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9YSU0gMQp8ICNkZWZpbmUgSEFW RV9SU1ZHIDEKfCAjZGVmaW5lIEhBVkVfSU1BR0VNQUdJQ0sgMQp8ICNkZWZpbmUgSEFWRV9NQUdJ Q0tFWFBPUlRJTUFHRVBJWEVMUyAxCnwgI2RlZmluZSBIQVZFX01BR0lDS01FUkdFSU1BR0VMQVlF UlMgMQp8ICNkZWZpbmUgSEFWRV9EQlVTIDEKfCAjZGVmaW5lIEhBVkVfREJVU19XQVRDSF9HRVRf VU5JWF9GRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVFlQRV9JU19WQUxJRCAxCnwgI2RlZmluZSBI QVZFX0RCVVNfVkFMSURBVEVfQlVTX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRF X1BBVEggMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0lOVEVSRkFDRSAxCnwgI2RlZmlu ZSBIQVZFX0RCVVNfVkFMSURBVEVfTUVNQkVSIDEKfCAjZGVmaW5lIEhBVkVfR1NFVFRJTkdTIDEK fCAjZGVmaW5lIEhBVkVfR0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9HTlVUTFMgMQp8ICNkZWZpbmUg SEFWRV9HTlVUTFMzIDEKfCAjZGVmaW5lIEhBVkVfSU5PVElGWSAxCnwgI2RlZmluZSBVU0VfRklM RV9OT1RJRlkgMQp8ICNkZWZpbmUgSEFWRV9YMTFYVFI2IDEKfCAjZGVmaW5lIFVTRV9UT09MS0lU X1NDUk9MTF9CQVJTIDEKfCAjZGVmaW5lIEhBVkVfWElNIDEKfCAjZGVmaW5lIFVTRV9YSU0gMQp8 ICNkZWZpbmUgWFJlZ2lzdGVySU1JbnN0YW50aWF0ZUNhbGxiYWNrX2FyZzYgWFBvaW50ZXIKfCAj ZGVmaW5lIEhBVkVfWEZUIDEKfCAjZGVmaW5lIEhBVkVfRlJFRVRZUEUgMQp8ICNkZWZpbmUgSEFW RV9MSUJPVEYgMQp8ICNkZWZpbmUgSEFWRV9PVEZfR0VUX1ZBUklBVElPTl9HTFlQSFMgMQp8ICNk ZWZpbmUgSEFWRV9NMTdOX0ZMVCAxCnwgI2RlZmluZSBVU0VfWENCIDEKfCAjZGVmaW5lIEhBVkVf WFBNIDEKfCAjZGVmaW5lIEhBVkVfSlBFRyAxCnwgI2RlZmluZSBIQVZFX1pMSUIgMQp8ICNkZWZp bmUgSEFWRV9QTkcgMQp8ICNkZWZpbmUgSEFWRV9USUZGIDEKfCAjZGVmaW5lIEhBVkVfR0lGIDEK fCAjZGVmaW5lIEhBVkVfR1BNIDEKfCAjZGVmaW5lIEhBVkVfWF9TTSAxCnwgI2RlZmluZSBIQVZF X1hSQU5EUiAxCnwgI2RlZmluZSBIQVZFX1hJTkVSQU1BIDEKfCAjZGVmaW5lIEhBVkVfWEZJWEVT IDEKfCAjZGVmaW5lIEhBVkVfTElCWE1MMiAxCnwgI2RlZmluZSBIQVZFX0hfRVJSTk8gMQp8ICNk ZWZpbmUgTUFJTF9VU0VfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9BQ0NFUFQ0IDEKfCAjZGVmaW5l IEhBVkVfRkNIRElSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFW RV9HRVRSVVNBR0UgMQp8ICNkZWZpbmUgSEFWRV9HRVRfQ1VSUkVOVF9ESVJfTkFNRSAxCnwgI2Rl ZmluZSBIQVZFX0xSQU5ENDggMQp8ICNkZWZpbmUgSEFWRV9SQU5ET00gMQp8ICNkZWZpbmUgSEFW RV9SSU5UIDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJ WkUgMQp8ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9ORVdMT0NBTEUg MQp8ICNkZWZpbmUgSEFWRV9HRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8 ICNkZWZpbmUgSEFWRV9TSFVURE9XTiAxCnwgI2RlZmluZSBIQVZFX0dFVEFERFJJTkZPIDEKfCAj ZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSU0lHTkFMIDEK fCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfU0VORFRPIDEKfCAjZGVm aW5lIEhBVkVfUkVDVkZST00gMQp8ICNkZWZpbmUgSEFWRV9HRVRTT0NLTkFNRSAxCnwgI2RlZmlu ZSBIQVZFX0dFVFBFRVJOQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUSUZBRERSUyAxCnwgI2RlZmlu ZSBIQVZFX0ZSRUVJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfR0FJX1NUUkVSUk9SIDEKfCAjZGVm aW5lIEhBVkVfU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVf RU5EUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0VOREdS RU5UIDEKfCAjZGVmaW5lIEhBVkVfQ0ZNQUtFUkFXIDEKfCAjZGVmaW5lIEhBVkVfQ0ZTRVRTUEVF RCAxCnwgI2RlZmluZSBIQVZFX0NPUFlTSUdOIDEKfCAjZGVmaW5lIEhBVkVfX19FWEVDVVRBQkxF X1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVfTE9HMiAxCnwgI2RlZmluZSBIQVZFX0FMSUdORURfQUxM T0MgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fVU5XSU5EX0lOSVQgMQp8ICNkZWZpbmUgSEFW RV9GU0VFS08gMQp8ICNkZWZpbmUgSEFWRV9HUkFOVFBUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFQg MQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9PUEVOUFQgMQp8ICNkZWZpbmUgVEVSTUlORk8gMQp8ICNk ZWZpbmUgSEFWRV9USU1FUkZEIDEKfCAjZGVmaW5lIEhBVkVfUkVTX0lOSVQgMQp8ICNkZWZpbmUg SEFWRV9TVFJVQ1RfVU5JUEFJUl9VTklDT0RFIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9TT0NLRVRT IDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5l IEhBVkVfV09SS0lOR19WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfRk9SSyAxCnwgI2Rl ZmluZSBIQVZFX1NOUFJJTlRGIDEKfCAjZGVmaW5lIEhBVkVfR0xJQiAxCnwgI2RlZmluZSBIQVZF X0xBTkdJTkZPX0NPREVTRVQgMQp8ICNkZWZpbmUgSEFWRV9NQlNUQVRFX1QgMQp8ICNkZWZpbmUg QU1QRVJTQU5EX0ZVTExfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1BUWVMgMQp8ICNkZWZpbmUgSEFW RV9TT0NLRVRTIDEKfCAjZGVmaW5lIE5VTExfREVWSUNFICIvZGV2L251bGwiCnwgI2RlZmluZSBT RVBDSEFSICc6Jwp8ICNkZWZpbmUgc3VicHJvY2Vzc2VzIDEKfCAjZGVmaW5lIFVTRVJfRlVMTF9O QU1FIHB3LT5wd19nZWNvcwp8ICNkZWZpbmUgRElSRUNUT1JZX1NFUCAnLycKfCAjZGVmaW5lIElT X0RFVklDRV9TRVAoX2NfKSAwCnwgI2RlZmluZSBJU19ESVJFQ1RPUllfU0VQKF9jXykgKChfY18p ID09IERJUkVDVE9SWV9TRVApCnwgI2RlZmluZSBJU19BTllfU0VQKF9jXykgKElTX0RJUkVDVE9S WV9TRVAgKF9jXykpCnwgI2RlZmluZSBIQVZFX1BST0NGUyAxCnwgI2RlZmluZSBERUZBVUxUX1NP VU5EX0RFVklDRSAiL2Rldi9kc3AiCnwgI2RlZmluZSBJTlRFUlJVUFRfSU5QVVQgMQp8ICNkZWZp bmUgTkFSUk9XUFJPVE8gMQp8ICNkZWZpbmUgVU5JWDk4X1BUWVMgMQp8ICNkZWZpbmUgUFRZX0lU RVJBVElPTiBpbnQgaTsgZm9yIChpID0gMDsgaSA8IDE7IGkrKykKfCAjZGVmaW5lIFBUWV9UVFlf TkFNRV9TUFJJTlRGIHsgY2hhciAqcHR5bmFtZSA9IDA7IHNpZ3NldF90IGJsb2NrZWQ7IHNpZ2Vt cHR5c2V0ICgmYmxvY2tlZCk7IHNpZ2FkZHNldCAoJmJsb2NrZWQsIFNJR0NITEQpOyBwdGhyZWFk X3NpZ21hc2sgKFNJR19CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoZ3JhbnRwdCAoZmQpICE9IC0x ICYmIHVubG9ja3B0IChmZCkgIT0gLTEpIHB0eW5hbWUgPSBwdHNuYW1lKGZkKTsgcHRocmVhZF9z aWdtYXNrIChTSUdfVU5CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoIXB0eW5hbWUpIHsgZW1hY3Nf Y2xvc2UgKGZkKTsgcmV0dXJuIC0xOyB9IHNucHJpbnRmIChwdHlfbmFtZSwgUFRZX05BTUVfU0la RSwgIiVzIiwgcHR5bmFtZSk7IH0KfCAjZGVmaW5lIFBUWV9PUEVOIGRvIHsgZmQgPSBwb3NpeF9v cGVucHQgKE9fUkRXUiB8IE9fQ0xPRVhFQyB8IE9fTk9DVFRZKTsgaWYgKGZkIDwgMCAmJiBlcnJu byA9PSBFSU5WQUwpIGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX05PQ1RUWSk7IH0gd2hp bGUgKGZhbHNlKQp8ICNkZWZpbmUgUFRZX05BTUVfU1BSSU5URiAvKiovCnwgI2RlZmluZSBTSUdO QUxTX1ZJQV9DSEFSQUNURVJTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmlu ZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgSEFWRV9fU0VUSk1QIDEKfCAjZGVmaW5lIEhB VkVfU0lHU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU1RBQ0tfT1ZFUkZMT1dfSEFORExJTkcgMQp8 ICNkZWZpbmUgVVNHIC8qKi8KfCAjZGVmaW5lIEdOVV9MSU5VWCAvKiovCnwgI2RlZmluZSBVU0FC TEVfRklPTlJFQUQgMQp8ICNkZWZpbmUgVVNBQkxFX1NJR0lPIDEKfCAjZGVmaW5lIENPUFlSSUdI VCAiQ29weXJpZ2h0IChDKSAyMDE2IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiIKfCAj ZGVmaW5lIFRFUk1fSEVBREVSICJ4dGVybS5oIgp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHVVJBVElP TiAieDg2XzY0LXVua25vd24tbGludXgtZ251Igp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHX09QVElP TlMgIi0td2l0aC14LXRvb2xraXQ9bHVjaWQiCnwgI2RlZmluZSBIQVZFX1hfV0lORE9XUyAxCnwg I2RlZmluZSBVU0VfWF9UT09MS0lUIDEKfCAjZGVmaW5lIFVTRV9MVUNJRCAxCnwgI2RlZmluZSBI QVZFX1gxMSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9BVFRSSUJVVEVfQUxJR05FRCAxCnwgI2Rl ZmluZSBHTlVfTUFMTE9DIDEKfCAjZGVmaW5lIFJFTF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX0FM TE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfVU5TSUdORURf TE9OR19MT05HX0lOVCAxCnwgI2RlZmluZSBIQVZFX0M5OV9TVFJUT0xEIDEKfCAjZGVmaW5lIEhB VkVfRU5WSVJPTl9ERUNMIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN0 ZGlvLmg+CnwgI2lmZGVmIEhBVkVfU1lTX1RZUEVTX0gKfCAjIGluY2x1ZGUgPHN5cy90eXBlcy5o Pgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NZU19TVEFUX0gKfCAjIGluY2x1ZGUgPHN5cy9zdGF0 Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIFNURENfSEVBREVSUwp8ICMgaW5jbHVkZSA8c3RkbGliLmg+ CnwgIyBpbmNsdWRlIDxzdGRkZWYuaD4KfCAjZWxzZQp8ICMgaWZkZWYgSEFWRV9TVERMSUJfSAp8 ICMgIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgZW5kaWYKfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9T VFJJTkdfSAp8ICMgaWYgIWRlZmluZWQgU1REQ19IRUFERVJTICYmIGRlZmluZWQgSEFWRV9NRU1P UllfSAp8ICMgIGluY2x1ZGUgPG1lbW9yeS5oPgp8ICMgZW5kaWYKfCAjIGluY2x1ZGUgPHN0cmlu Zy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR1NfSAp8ICMgaW5jbHVkZSA8c3RyaW5n cy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX0lOVFRZUEVTX0gKfCAjIGluY2x1ZGUgPGludHR5 cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RESU5UX0gKfCAjIGluY2x1ZGUgPHN0ZGlu dC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1VOSVNURF9ICnwgIyBpbmNsdWRlIDx1bmlzdGQu aD4KfCAjZW5kaWYKfCBpbnQKfCBtYWluICgpCnwgewp8IGlmIChzaXplb2YgKChtb2RlX3QpKSkK fCAJICAgIHJldHVybiAwOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MjA1NDE6 IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMDU1MjogY2hlY2tpbmcgd2hldGhlciBmZGF0YXN5bmMg aXMgZGVjbGFyZWQKY29uZmlndXJlOjIwNTUyOiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5j ID4mNQpjb25maWd1cmU6MjA1NTI6ICQ/ID0gMApjb25maWd1cmU6MjA1NTI6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZToyMDU2NTogY2hlY2tpbmcgZm9yIHN0X2RtX21vZGUgaW4gc3RydWN0IHN0YXQK Y29uZmlndXJlOjIwNTgzOiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25mdGVz dC5jOiBJbiBmdW5jdGlvbiAnbWFpbic6CmNvbmZ0ZXN0LmM6MjYxOjE3OiBlcnJvcjogJ3N0cnVj dCBzdGF0JyBoYXMgbm8gbWVtYmVyIG5hbWVkICdzdF9kbV9tb2RlJzsgZGlkIHlvdSBtZWFuICdz dF9tb2RlJz8KIHN0cnVjdCBzdGF0IHM7IHMuc3RfZG1fbW9kZTsKICAgICAgICAgICAgICAgICBe CmNvbmZpZ3VyZToyMDU4MzogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8 IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8ICNk ZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAi MjUuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1hY3MgMjUuMSIKfCAjZGVmaW5l IFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ251LWVtYWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNL QUdFX1VSTCAiaHR0cDovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIFBB Q0tBR0UgImVtYWNzIgp8ICNkZWZpbmUgVkVSU0lPTiAiMjUuMSIKfCAjZGVmaW5lIE1BSUxfVVNF X1BPUCAxCnwgI2RlZmluZSBIQVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1RaU0VUIDEKfCAj ZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTktBVCAxCnwgI2RlZmlu ZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVf RkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5D IDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8 ICNkZWZpbmUgSEFWRV9NS09TVEVNUCAxCnwgI2RlZmluZSBIQVZFX1BJUEUyIDEKfCAjZGVmaW5l IEhBVkVfUFNFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVf U1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9VTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lN TElOSyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfVElNRUdN IDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVNBVCAxCnwg I2RlZmluZSBIQVZFX0ZVVElNRU5TIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVOU0FUIDEKfCAjZGVm aW5lIEhBVkVfTFVUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZp bmUgSEFWRV9TRUNVUkVfR0VURU5WIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmlu ZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmlu ZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFW RV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lO VFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNU RF9IIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIF9BTExfU09VUkNFIDEK fCAjZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNk ZWZpbmUgX19VU0VfTUlOR1dfQU5TSV9TVERJTyAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9T RU1BTlRJQ1MgMQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9V U0VfNjRfQklUX0lOT0RFIDEKfCAjZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUvbGludXgiCnwgI2Rl ZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAxCnwgI2RlZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZp bmUgSEFWRV9TT1VORCAxCnwgI2RlZmluZSBIQVZFX1NZU19TWVNJTkZPX0ggMQp8ICNkZWZpbmUg SEFWRV9QVFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVf VVRNUF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RE TElCX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJB TV9IIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VOX0gg MQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX0VYRUNJTkZPX0ggMQp8 ICNkZWZpbmUgSEFWRV9TVERJT19FWFRfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZp bmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5l IEhBVkVfVVRJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BFUlNPTkFMSVRZX0xJTlVYMzIgMQp8ICNk ZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZU0lORk9fVU5JVCAx CnwgI2RlZmluZSBIQVZFX1RFUk1fSCAxCnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX1NZU19TSUdMSVNUIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRf SCAxCnwgI2RlZmluZSBIQVZFX05FVF9JRl9IIDEKfCAjZGVmaW5lIEhBVkVfSUZBRERSU19IIDEK fCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9GTEFHUyAxCnwgI2RlZmluZSBIQVZFX1NU UlVDVF9JRlJFUV9JRlJfSFdBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9O RVRNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9CUk9BREFERFIgMQp8ICNk ZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0FERFIgMQp8ICNkZWZpbmUgSEFWRV9MT05HX0ZJ TEVfTkFNRVMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVkxJTUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9E QVRBX1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9N TUFQIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRCAxCnwgI2RlZmluZSBIQVZFX1hLQiAxCnwgI2Rl ZmluZSBIQVZFX1hSTVNFVERBVEFCQVNFIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09VUkNF U1RSSU5HIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5l IEhBVkVfWDExUjYgMQp8ICNkZWZpbmUgSEFWRV9YX0kxOE4gMQp8ICNkZWZpbmUgSEFWRV9YMTFS Nl9YSU0gMQp8ICNkZWZpbmUgSEFWRV9SU1ZHIDEKfCAjZGVmaW5lIEhBVkVfSU1BR0VNQUdJQ0sg MQp8ICNkZWZpbmUgSEFWRV9NQUdJQ0tFWFBPUlRJTUFHRVBJWEVMUyAxCnwgI2RlZmluZSBIQVZF X01BR0lDS01FUkdFSU1BR0VMQVlFUlMgMQp8ICNkZWZpbmUgSEFWRV9EQlVTIDEKfCAjZGVmaW5l IEhBVkVfREJVU19XQVRDSF9HRVRfVU5JWF9GRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVFlQRV9J U19WQUxJRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfQlVTX05BTUUgMQp8ICNkZWZp bmUgSEFWRV9EQlVTX1ZBTElEQVRFX1BBVEggMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRF X0lOVEVSRkFDRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfTUVNQkVSIDEKfCAjZGVm aW5lIEhBVkVfR1NFVFRJTkdTIDEKfCAjZGVmaW5lIEhBVkVfR0NPTkYgMQp8ICNkZWZpbmUgSEFW RV9HTlVUTFMgMQp8ICNkZWZpbmUgSEFWRV9HTlVUTFMzIDEKfCAjZGVmaW5lIEhBVkVfSU5PVElG WSAxCnwgI2RlZmluZSBVU0VfRklMRV9OT1RJRlkgMQp8ICNkZWZpbmUgSEFWRV9YMTFYVFI2IDEK fCAjZGVmaW5lIFVTRV9UT09MS0lUX1NDUk9MTF9CQVJTIDEKfCAjZGVmaW5lIEhBVkVfWElNIDEK fCAjZGVmaW5lIFVTRV9YSU0gMQp8ICNkZWZpbmUgWFJlZ2lzdGVySU1JbnN0YW50aWF0ZUNhbGxi YWNrX2FyZzYgWFBvaW50ZXIKfCAjZGVmaW5lIEhBVkVfWEZUIDEKfCAjZGVmaW5lIEhBVkVfRlJF RVRZUEUgMQp8ICNkZWZpbmUgSEFWRV9MSUJPVEYgMQp8ICNkZWZpbmUgSEFWRV9PVEZfR0VUX1ZB UklBVElPTl9HTFlQSFMgMQp8ICNkZWZpbmUgSEFWRV9NMTdOX0ZMVCAxCnwgI2RlZmluZSBVU0Vf WENCIDEKfCAjZGVmaW5lIEhBVkVfWFBNIDEKfCAjZGVmaW5lIEhBVkVfSlBFRyAxCnwgI2RlZmlu ZSBIQVZFX1pMSUIgMQp8ICNkZWZpbmUgSEFWRV9QTkcgMQp8ICNkZWZpbmUgSEFWRV9USUZGIDEK fCAjZGVmaW5lIEhBVkVfR0lGIDEKfCAjZGVmaW5lIEhBVkVfR1BNIDEKfCAjZGVmaW5lIEhBVkVf WF9TTSAxCnwgI2RlZmluZSBIQVZFX1hSQU5EUiAxCnwgI2RlZmluZSBIQVZFX1hJTkVSQU1BIDEK fCAjZGVmaW5lIEhBVkVfWEZJWEVTIDEKfCAjZGVmaW5lIEhBVkVfTElCWE1MMiAxCnwgI2RlZmlu ZSBIQVZFX0hfRVJSTk8gMQp8ICNkZWZpbmUgTUFJTF9VU0VfRkxPQ0sgMQp8ICNkZWZpbmUgSEFW RV9BQ0NFUFQ0IDEKfCAjZGVmaW5lIEhBVkVfRkNIRElSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9T VE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNBR0UgMQp8ICNkZWZpbmUgSEFWRV9HRVRfQ1VS UkVOVF9ESVJfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0xSQU5ENDggMQp8ICNkZWZpbmUgSEFWRV9S QU5ET00gMQp8ICNkZWZpbmUgSEFWRV9SSU5UIDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAj ZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNk ZWZpbmUgSEFWRV9ORVdMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSTElNSVQgMQp8ICNkZWZp bmUgSEFWRV9TRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TSFVURE9XTiAxCnwgI2RlZmluZSBI QVZFX0dFVEFERFJJTkZPIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVm aW5lIEhBVkVfU1RSU0lHTkFMIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5l IEhBVkVfU0VORFRPIDEKfCAjZGVmaW5lIEhBVkVfUkVDVkZST00gMQp8ICNkZWZpbmUgSEFWRV9H RVRTT0NLTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFBFRVJOQU1FIDEKfCAjZGVmaW5lIEhBVkVf R0VUSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVf R0FJX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFBX RU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUkVOVCAx CnwgI2RlZmluZSBIQVZFX0VOREdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfQ0ZNQUtFUkFXIDEKfCAj ZGVmaW5lIEhBVkVfQ0ZTRVRTUEVFRCAxCnwgI2RlZmluZSBIQVZFX0NPUFlTSUdOIDEKfCAjZGVm aW5lIEhBVkVfX19FWEVDVVRBQkxFX1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVfTE9HMiAxCnwgI2Rl ZmluZSBIQVZFX0FMSUdORURfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fVU5XSU5E X0lOSVQgMQp8ICNkZWZpbmUgSEFWRV9GU0VFS08gMQp8ICNkZWZpbmUgSEFWRV9HUkFOVFBUIDEK fCAjZGVmaW5lIEhBVkVfR0VUUFQgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9PUEVOUFQgMQp8ICNk ZWZpbmUgVEVSTUlORk8gMQp8ICNkZWZpbmUgSEFWRV9USU1FUkZEIDEKfCAjZGVmaW5lIEhBVkVf UkVTX0lOSVQgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVU5JUEFJUl9VTklDT0RFIDEKfCAjZGVm aW5lIEhBVkVfSU5FVF9TT0NLRVRTIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBI QVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwgI2RlZmluZSBIQVZF X1dPUktJTkdfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1NOUFJJTlRGIDEKfCAjZGVmaW5lIEhBVkVf R0xJQiAxCnwgI2RlZmluZSBIQVZFX0xBTkdJTkZPX0NPREVTRVQgMQp8ICNkZWZpbmUgSEFWRV9N QlNUQVRFX1QgMQp8ICNkZWZpbmUgQU1QRVJTQU5EX0ZVTExfTkFNRSAxCnwgI2RlZmluZSBIQVZF X1BUWVMgMQp8ICNkZWZpbmUgSEFWRV9TT0NLRVRTIDEKfCAjZGVmaW5lIE5VTExfREVWSUNFICIv ZGV2L251bGwiCnwgI2RlZmluZSBTRVBDSEFSICc6Jwp8ICNkZWZpbmUgc3VicHJvY2Vzc2VzIDEK fCAjZGVmaW5lIFVTRVJfRlVMTF9OQU1FIHB3LT5wd19nZWNvcwp8ICNkZWZpbmUgRElSRUNUT1JZ X1NFUCAnLycKfCAjZGVmaW5lIElTX0RFVklDRV9TRVAoX2NfKSAwCnwgI2RlZmluZSBJU19ESVJF Q1RPUllfU0VQKF9jXykgKChfY18pID09IERJUkVDVE9SWV9TRVApCnwgI2RlZmluZSBJU19BTllf U0VQKF9jXykgKElTX0RJUkVDVE9SWV9TRVAgKF9jXykpCnwgI2RlZmluZSBIQVZFX1BST0NGUyAx CnwgI2RlZmluZSBERUZBVUxUX1NPVU5EX0RFVklDRSAiL2Rldi9kc3AiCnwgI2RlZmluZSBJTlRF UlJVUFRfSU5QVVQgMQp8ICNkZWZpbmUgTkFSUk9XUFJPVE8gMQp8ICNkZWZpbmUgVU5JWDk4X1BU WVMgMQp8ICNkZWZpbmUgUFRZX0lURVJBVElPTiBpbnQgaTsgZm9yIChpID0gMDsgaSA8IDE7IGkr KykKfCAjZGVmaW5lIFBUWV9UVFlfTkFNRV9TUFJJTlRGIHsgY2hhciAqcHR5bmFtZSA9IDA7IHNp Z3NldF90IGJsb2NrZWQ7IHNpZ2VtcHR5c2V0ICgmYmxvY2tlZCk7IHNpZ2FkZHNldCAoJmJsb2Nr ZWQsIFNJR0NITEQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19CTE9DSywgJmJsb2NrZWQsIDApOyBp ZiAoZ3JhbnRwdCAoZmQpICE9IC0xICYmIHVubG9ja3B0IChmZCkgIT0gLTEpIHB0eW5hbWUgPSBw dHNuYW1lKGZkKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfVU5CTE9DSywgJmJsb2NrZWQsIDApOyBp ZiAoIXB0eW5hbWUpIHsgZW1hY3NfY2xvc2UgKGZkKTsgcmV0dXJuIC0xOyB9IHNucHJpbnRmIChw dHlfbmFtZSwgUFRZX05BTUVfU0laRSwgIiVzIiwgcHR5bmFtZSk7IH0KfCAjZGVmaW5lIFBUWV9P UEVOIGRvIHsgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fQ0xPRVhFQyB8IE9fTk9DVFRZ KTsgaWYgKGZkIDwgMCAmJiBlcnJubyA9PSBFSU5WQUwpIGZkID0gcG9zaXhfb3BlbnB0IChPX1JE V1IgfCBPX05PQ1RUWSk7IH0gd2hpbGUgKGZhbHNlKQp8ICNkZWZpbmUgUFRZX05BTUVfU1BSSU5U RiAvKiovCnwgI2RlZmluZSBTSUdOQUxTX1ZJQV9DSEFSQUNURVJTIDEKfCAjZGVmaW5lIEdDX1NF VEpNUF9XT1JLUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgSEFWRV9f U0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU1RBQ0tf T1ZFUkZMT1dfSEFORExJTkcgMQp8ICNkZWZpbmUgVVNHIC8qKi8KfCAjZGVmaW5lIEdOVV9MSU5V WCAvKiovCnwgI2RlZmluZSBVU0FCTEVfRklPTlJFQUQgMQp8ICNkZWZpbmUgVVNBQkxFX1NJR0lP IDEKfCAjZGVmaW5lIENPUFlSSUdIVCAiQ29weXJpZ2h0IChDKSAyMDE2IEZyZWUgU29mdHdhcmUg Rm91bmRhdGlvbiwgSW5jLiIKfCAjZGVmaW5lIFRFUk1fSEVBREVSICJ4dGVybS5oIgp8ICNkZWZp bmUgRU1BQ1NfQ09ORklHVVJBVElPTiAieDg2XzY0LXVua25vd24tbGludXgtZ251Igp8ICNkZWZp bmUgRU1BQ1NfQ09ORklHX09QVElPTlMgIi0td2l0aC14LXRvb2xraXQ9bHVjaWQiCnwgI2RlZmlu ZSBIQVZFX1hfV0lORE9XUyAxCnwgI2RlZmluZSBVU0VfWF9UT09MS0lUIDEKfCAjZGVmaW5lIFVT RV9MVUNJRCAxCnwgI2RlZmluZSBIQVZFX1gxMSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9BVFRS SUJVVEVfQUxJR05FRCAxCnwgI2RlZmluZSBHTlVfTUFMTE9DIDEKfCAjZGVmaW5lIFJFTF9BTExP QyAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAj ZGVmaW5lIEhBVkVfVU5TSUdORURfTE9OR19MT05HX0lOVCAxCnwgI2RlZmluZSBIQVZFX0M5OV9T VFJUT0xEIDEKfCAjZGVmaW5lIEhBVkVfRU5WSVJPTl9ERUNMIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9GREFUQVNZTkMgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAjaW5jbHVkZSA8c3lz L3R5cGVzLmg+CnwgI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CnwgaW50CnwgbWFpbiAoKQp8IHsKfCBz dHJ1Y3Qgc3RhdCBzOyBzLnN0X2RtX21vZGU7CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZp Z3VyZToyMDU5MDogcmVzdWx0OiBubwpjb25maWd1cmU6MjA2MDA6IGNoZWNraW5nIHdoZXRoZXIg c3RybW9kZSBpcyBkZWNsYXJlZApjb25maWd1cmU6MjA2MDA6IGdjYyAtYyAtZzMgLU8yICAgIGNv bmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6IEluIGZ1bmN0aW9uICdtYWluJzoKY29uZnRlc3QuYzoy OTU6MTA6IGVycm9yOiAnc3RybW9kZScgdW5kZWNsYXJlZCAoZmlyc3QgdXNlIGluIHRoaXMgZnVu Y3Rpb24pCiAgICh2b2lkKSBzdHJtb2RlOwogICAgICAgICAgXn5+fn5+fgpjb25mdGVzdC5jOjI5 NToxMDogbm90ZTogZWFjaCB1bmRlY2xhcmVkIGlkZW50aWZpZXIgaXMgcmVwb3J0ZWQgb25seSBv bmNlIGZvciBlYWNoIGZ1bmN0aW9uIGl0IGFwcGVhcnMgaW4KY29uZmlndXJlOjIwNjAwOiAkPyA9 IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNk ZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUg ImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyNS4xIgp8ICNkZWZpbmUgUEFDS0FH RV9TVFJJTkcgIkdOVSBFbWFjcyAyNS4xIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1 Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJodHRwOi8vd3d3Lmdu dS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgUEFDS0FHRSAiZW1hY3MiCnwgI2RlZmlu ZSBWRVJTSU9OICIyNS4xIgp8ICNkZWZpbmUgTUFJTF9VU0VfUE9QIDEKfCAjZGVmaW5lIEhBVkVf UFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfVFpTRVQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0QgMQp8 ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKfCAjZGVmaW5lIEhBVkVfRkFDQ0VTU0FUIDEKfCAj ZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9GRE9QRU5ESVIgMQp8ICNkZWZpbmUg SEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRU SU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwgI2RlZmluZSBIQVZFX01LT1NURU1Q IDEKfCAjZGVmaW5lIEhBVkVfUElQRTIgMQp8ICNkZWZpbmUgSEFWRV9QU0VMRUNUIDEKfCAjZGVm aW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFWRV9TVFJUT0lNQVggMQp8ICNkZWZpbmUg SEFWRV9TVFJUT1VNQVggMQp8ICNkZWZpbmUgSEFWRV9TWU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVf TE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9USU1FR00gMQp8ICNkZWZpbmUgSEFWRV9GVVRJ TUVTIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FU0FUIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FTlMg MQp8ICNkZWZpbmUgSEFWRV9VVElNRU5TQVQgMQp8ICNkZWZpbmUgSEFWRV9MVVRJTUVTIDEKfCAj ZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NFQ1VSRV9HRVRFTlYg MQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5l IEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBI QVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgX19FWFRF TlNJT05TX18gMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9DX1NP VVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBfX1VTRV9NSU5HV19BTlNJ X1NURElPIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBf VEFOREVNX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX1VTRV82NF9CSVRfSU5PREUgMQp8ICNk ZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAjZGVmaW5lIEhBVkVfU1lTX1NPVU5EQ0FS RF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2RlZmluZSBIQVZFX1NPVU5EIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1BUWV9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAj ZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1QX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZF X1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9Q VEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwgI2RlZmluZSBIQVZFX0RJUkVO VF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1NURElPX0VY VF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9I IDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAj ZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9VVElNRV9IIDEKfCAjZGVm aW5lIEhBVkVfUEVSU09OQUxJVFlfTElOVVgzMiAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX1NZU0lO Rk8gMQp8ICNkZWZpbmUgTElOVVhfU1lTSU5GT19VTklUIDEKfCAjZGVmaW5lIEhBVkVfVEVSTV9I IDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1lT X1NJR0xJU1QgMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVU X0lGX0ggMQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1Rf SUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9IV0FERFIg MQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX05FVE1BU0sgMQp8ICNkZWZpbmUgSEFW RV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJF UV9JRlJfQUREUiAxCnwgI2RlZmluZSBIQVZFX0xPTkdfRklMRV9OQU1FUyAxCnwgI2RlZmluZSBI QVZFX1NZU19WTElNSVRfSCAxCnwgI2RlZmluZSBIQVZFX0RBVEFfU1RBUlQgMQp8ICNkZWZpbmUg SEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX01NQVAgMQp8ICNkZWZpbmUgSEFWRV9Q VEhSRUFEIDEKfCAjZGVmaW5lIEhBVkVfWEtCIDEKfCAjZGVmaW5lIEhBVkVfWFJNU0VUREFUQUJB U0UgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOUkVTT1VSQ0VTVFJJTkcgMQp8ICNkZWZpbmUgSEFW RV9YU0NSRUVOTlVNQkVST0ZTQ1JFRU4gMQp8ICNkZWZpbmUgSEFWRV9YMTFSNiAxCnwgI2RlZmlu ZSBIQVZFX1hfSTE4TiAxCnwgI2RlZmluZSBIQVZFX1gxMVI2X1hJTSAxCnwgI2RlZmluZSBIQVZF X1JTVkcgMQp8ICNkZWZpbmUgSEFWRV9JTUFHRU1BR0lDSyAxCnwgI2RlZmluZSBIQVZFX01BR0lD S0VYUE9SVElNQUdFUElYRUxTIDEKfCAjZGVmaW5lIEhBVkVfTUFHSUNLTUVSR0VJTUFHRUxBWUVS UyAxCnwgI2RlZmluZSBIQVZFX0RCVVMgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1dBVENIX0dFVF9V TklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19UWVBFX0lTX1ZBTElEIDEKfCAjZGVmaW5lIEhB VkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVf UEFUSCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfSU5URVJGQUNFIDEKfCAjZGVmaW5l IEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIgMQp8ICNkZWZpbmUgSEFWRV9HU0VUVElOR1MgMQp8 ICNkZWZpbmUgSEFWRV9HQ09ORiAxCnwgI2RlZmluZSBIQVZFX0dOVVRMUyAxCnwgI2RlZmluZSBI QVZFX0dOVVRMUzMgMQp8ICNkZWZpbmUgSEFWRV9JTk9USUZZIDEKfCAjZGVmaW5lIFVTRV9GSUxF X05PVElGWSAxCnwgI2RlZmluZSBIQVZFX1gxMVhUUjYgMQp8ICNkZWZpbmUgVVNFX1RPT0xLSVRf U0NST0xMX0JBUlMgMQp8ICNkZWZpbmUgSEFWRV9YSU0gMQp8ICNkZWZpbmUgVVNFX1hJTSAxCnwg I2RlZmluZSBYUmVnaXN0ZXJJTUluc3RhbnRpYXRlQ2FsbGJhY2tfYXJnNiBYUG9pbnRlcgp8ICNk ZWZpbmUgSEFWRV9YRlQgMQp8ICNkZWZpbmUgSEFWRV9GUkVFVFlQRSAxCnwgI2RlZmluZSBIQVZF X0xJQk9URiAxCnwgI2RlZmluZSBIQVZFX09URl9HRVRfVkFSSUFUSU9OX0dMWVBIUyAxCnwgI2Rl ZmluZSBIQVZFX00xN05fRkxUIDEKfCAjZGVmaW5lIFVTRV9YQ0IgMQp8ICNkZWZpbmUgSEFWRV9Y UE0gMQp8ICNkZWZpbmUgSEFWRV9KUEVHIDEKfCAjZGVmaW5lIEhBVkVfWkxJQiAxCnwgI2RlZmlu ZSBIQVZFX1BORyAxCnwgI2RlZmluZSBIQVZFX1RJRkYgMQp8ICNkZWZpbmUgSEFWRV9HSUYgMQp8 ICNkZWZpbmUgSEFWRV9HUE0gMQp8ICNkZWZpbmUgSEFWRV9YX1NNIDEKfCAjZGVmaW5lIEhBVkVf WFJBTkRSIDEKfCAjZGVmaW5lIEhBVkVfWElORVJBTUEgMQp8ICNkZWZpbmUgSEFWRV9YRklYRVMg MQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwyIDEKfCAjZGVmaW5lIEhBVkVfSF9FUlJOTyAxCnwgI2Rl ZmluZSBNQUlMX1VTRV9GTE9DSyAxCnwgI2RlZmluZSBIQVZFX0FDQ0VQVDQgMQp8ICNkZWZpbmUg SEFWRV9GQ0hESVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZF X0dFVFJVU0FHRSAxCnwgI2RlZmluZSBIQVZFX0dFVF9DVVJSRU5UX0RJUl9OQU1FIDEKfCAjZGVm aW5lIEhBVkVfTFJBTkQ0OCAxCnwgI2RlZmluZSBIQVZFX1JBTkRPTSAxCnwgI2RlZmluZSBIQVZF X1JJTlQgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0la RSAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX05FV0xPQ0FMRSAx CnwgI2RlZmluZSBIQVZFX0dFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NFVFJMSU1JVCAxCnwg I2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5lIEhBVkVfR0VUQUREUklORk8gMQp8ICNk ZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJTSUdOQUwgMQp8 ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9TRU5EVE8gMQp8ICNkZWZp bmUgSEFWRV9SRUNWRlJPTSAxCnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tOQU1FIDEKfCAjZGVmaW5l IEhBVkVfR0VUUEVFUk5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRJRkFERFJTIDEKfCAjZGVmaW5l IEhBVkVfRlJFRUlGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9HQUlfU1RSRVJST1IgMQp8ICNkZWZp bmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9F TkRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0dFVEdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5ER1JF TlQgMQp8ICNkZWZpbmUgSEFWRV9DRk1BS0VSQVcgMQp8ICNkZWZpbmUgSEFWRV9DRlNFVFNQRUVE IDEKfCAjZGVmaW5lIEhBVkVfQ09QWVNJR04gMQp8ICNkZWZpbmUgSEFWRV9fX0VYRUNVVEFCTEVf U1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9MT0cyIDEKfCAjZGVmaW5lIEhBVkVfQUxJR05FRF9BTExP QyAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9VTldJTkRfSU5JVCAxCnwgI2RlZmluZSBIQVZF X0ZTRUVLTyAxCnwgI2RlZmluZSBIQVZFX0dSQU5UUFQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQVCAx CnwgI2RlZmluZSBIQVZFX1BPU0lYX09QRU5QVCAxCnwgI2RlZmluZSBURVJNSU5GTyAxCnwgI2Rl ZmluZSBIQVZFX1RJTUVSRkQgMQp8ICNkZWZpbmUgSEFWRV9SRVNfSU5JVCAxCnwgI2RlZmluZSBI QVZFX1NUUlVDVF9VTklQQUlSX1VOSUNPREUgMQp8ICNkZWZpbmUgSEFWRV9JTkVUX1NPQ0tFVFMg MQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfVkZPUksgMQp8ICNkZWZpbmUg SEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19GT1JLIDEKfCAjZGVm aW5lIEhBVkVfU05QUklOVEYgMQp8ICNkZWZpbmUgSEFWRV9HTElCIDEKfCAjZGVmaW5lIEhBVkVf TEFOR0lORk9fQ09ERVNFVCAxCnwgI2RlZmluZSBIQVZFX01CU1RBVEVfVCAxCnwgI2RlZmluZSBB TVBFUlNBTkRfRlVMTF9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUFRZUyAxCnwgI2RlZmluZSBIQVZF X1NPQ0tFVFMgMQp8ICNkZWZpbmUgTlVMTF9ERVZJQ0UgIi9kZXYvbnVsbCIKfCAjZGVmaW5lIFNF UENIQVIgJzonCnwgI2RlZmluZSBzdWJwcm9jZXNzZXMgMQp8ICNkZWZpbmUgVVNFUl9GVUxMX05B TUUgcHctPnB3X2dlY29zCnwgI2RlZmluZSBESVJFQ1RPUllfU0VQICcvJwp8ICNkZWZpbmUgSVNf REVWSUNFX1NFUChfY18pIDAKfCAjZGVmaW5lIElTX0RJUkVDVE9SWV9TRVAoX2NfKSAoKF9jXykg PT0gRElSRUNUT1JZX1NFUCkKfCAjZGVmaW5lIElTX0FOWV9TRVAoX2NfKSAoSVNfRElSRUNUT1JZ X1NFUCAoX2NfKSkKfCAjZGVmaW5lIEhBVkVfUFJPQ0ZTIDEKfCAjZGVmaW5lIERFRkFVTFRfU09V TkRfREVWSUNFICIvZGV2L2RzcCIKfCAjZGVmaW5lIElOVEVSUlVQVF9JTlBVVCAxCnwgI2RlZmlu ZSBOQVJST1dQUk9UTyAxCnwgI2RlZmluZSBVTklYOThfUFRZUyAxCnwgI2RlZmluZSBQVFlfSVRF UkFUSU9OIGludCBpOyBmb3IgKGkgPSAwOyBpIDwgMTsgaSsrKQp8ICNkZWZpbmUgUFRZX1RUWV9O QU1FX1NQUklOVEYgeyBjaGFyICpwdHluYW1lID0gMDsgc2lnc2V0X3QgYmxvY2tlZDsgc2lnZW1w dHlzZXQgKCZibG9ja2VkKTsgc2lnYWRkc2V0ICgmYmxvY2tlZCwgU0lHQ0hMRCk7IHB0aHJlYWRf c2lnbWFzayAoU0lHX0JMT0NLLCAmYmxvY2tlZCwgMCk7IGlmIChncmFudHB0IChmZCkgIT0gLTEg JiYgdW5sb2NrcHQgKGZkKSAhPSAtMSkgcHR5bmFtZSA9IHB0c25hbWUoZmQpOyBwdGhyZWFkX3Np Z21hc2sgKFNJR19VTkJMT0NLLCAmYmxvY2tlZCwgMCk7IGlmICghcHR5bmFtZSkgeyBlbWFjc19j bG9zZSAoZmQpOyByZXR1cm4gLTE7IH0gc25wcmludGYgKHB0eV9uYW1lLCBQVFlfTkFNRV9TSVpF LCAiJXMiLCBwdHluYW1lKTsgfQp8ICNkZWZpbmUgUFRZX09QRU4gZG8geyBmZCA9IHBvc2l4X29w ZW5wdCAoT19SRFdSIHwgT19DTE9FWEVDIHwgT19OT0NUVFkpOyBpZiAoZmQgPCAwICYmIGVycm5v ID09IEVJTlZBTCkgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fTk9DVFRZKTsgfSB3aGls ZSAoZmFsc2UpCnwgI2RlZmluZSBQVFlfTkFNRV9TUFJJTlRGIC8qKi8KfCAjZGVmaW5lIFNJR05B TFNfVklBX0NIQVJBQ1RFUlMgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAjZGVmaW5l IEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBIQVZFX19TRVRKTVAgMQp8ICNkZWZpbmUgSEFW RV9TSUdTRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TVEFDS19PVkVSRkxPV19IQU5ETElORyAxCnwg I2RlZmluZSBVU0cgLyoqLwp8ICNkZWZpbmUgR05VX0xJTlVYIC8qKi8KfCAjZGVmaW5lIFVTQUJM RV9GSU9OUkVBRCAxCnwgI2RlZmluZSBVU0FCTEVfU0lHSU8gMQp8ICNkZWZpbmUgQ09QWVJJR0hU ICJDb3B5cmlnaHQgKEMpIDIwMTYgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuIgp8ICNk ZWZpbmUgVEVSTV9IRUFERVIgInh0ZXJtLmgiCnwgI2RlZmluZSBFTUFDU19DT05GSUdVUkFUSU9O ICJ4ODZfNjQtdW5rbm93bi1saW51eC1nbnUiCnwgI2RlZmluZSBFTUFDU19DT05GSUdfT1BUSU9O UyAiLS13aXRoLXgtdG9vbGtpdD1sdWNpZCIKfCAjZGVmaW5lIEhBVkVfWF9XSU5ET1dTIDEKfCAj ZGVmaW5lIFVTRV9YX1RPT0xLSVQgMQp8ICNkZWZpbmUgVVNFX0xVQ0lEIDEKfCAjZGVmaW5lIEhB VkVfWDExIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0FUVFJJQlVURV9BTElHTkVEIDEKfCAjZGVm aW5lIEdOVV9NQUxMT0MgMQp8ICNkZWZpbmUgUkVMX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfQUxM T0NBX0ggMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgSEFWRV9VTlNJR05FRF9M T05HX0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfQzk5X1NUUlRPTEQgMQp8ICNkZWZpbmUgSEFW RV9FTlZJUk9OX0RFQ0wgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZEQVRBU1lOQyAxCnwgLyogZW5k IGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxzdGRpby5oPgp8ICNpZmRlZiBIQVZFX1NZU19U WVBFU19ICnwgIyBpbmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9T WVNfU1RBVF9ICnwgIyBpbmNsdWRlIDxzeXMvc3RhdC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBTVERD X0hFQURFUlMKfCAjIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgaW5jbHVkZSA8c3RkZGVmLmg+Cnwg I2Vsc2UKfCAjIGlmZGVmIEhBVkVfU1RETElCX0gKfCAjICBpbmNsdWRlIDxzdGRsaWIuaD4KfCAj IGVuZGlmCnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RSSU5HX0gKfCAjIGlmICFkZWZpbmVkIFNU RENfSEVBREVSUyAmJiBkZWZpbmVkIEhBVkVfTUVNT1JZX0gKfCAjICBpbmNsdWRlIDxtZW1vcnku aD4KfCAjIGVuZGlmCnwgIyBpbmNsdWRlIDxzdHJpbmcuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFW RV9TVFJJTkdTX0gKfCAjIGluY2x1ZGUgPHN0cmluZ3MuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFW RV9JTlRUWVBFU19ICnwgIyBpbmNsdWRlIDxpbnR0eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBI QVZFX1NURElOVF9ICnwgIyBpbmNsdWRlIDxzdGRpbnQuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFW RV9VTklTVERfSAp8ICMgaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgaW50CnwgbWFpbiAo KQp8IHsKfCAjaWZuZGVmIHN0cm1vZGUKfCAjaWZkZWYgX19jcGx1c3BsdXMKfCAgICh2b2lkKSBz dHJtb2RlOwp8ICNlbHNlCnwgICAodm9pZCkgc3RybW9kZTsKfCAjZW5kaWYKfCAjZW5kaWYKfCAK fCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjIwNjAwOiByZXN1bHQ6IG5vCmNvbmZp Z3VyZToyMDY0OTogY2hlY2tpbmcgd2hldGhlciBsc3RhdCBjb3JyZWN0bHkgaGFuZGxlcyB0cmFp bGluZyBzbGFzaApjb25maWd1cmU6MjA2ODU6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAg Y29uZnRlc3QuYyAtbHB0aHJlYWQgID4mNSAKY29uZmlndXJlOjIwNjg1OiAkPyA9IDAKY29uZmln dXJlOjIwNjg1OiAuL2NvbmZ0ZXN0CmNvbmZpZ3VyZToyMDY4NTogJD8gPSAwCmNvbmZpZ3VyZToy MDY5NzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIwODg5OiBjaGVja2luZyBmb3IgZ2V0b3B0LmgK Y29uZmlndXJlOjIwODg5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjA5MDY6IGNoZWNraW5nIGZv ciBnZXRvcHRfbG9uZ19vbmx5CmNvbmZpZ3VyZToyMDkwNjogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAt TzIgICAgICBjb25mdGVzdC5jIC1scHRocmVhZCAgPiY1IApjb25maWd1cmU6MjA5MDY6ICQ/ID0g MApjb25maWd1cmU6MjA5MDY6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMDkyMDogY2hlY2tpbmcg d2hldGhlciBnZXRvcHQgaXMgUE9TSVggY29tcGF0aWJsZQpjb25maWd1cmU6MjA5NjI6IGdjYyAt byBjb25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAtbHB0aHJlYWQgID4mNSAKY29uZmln dXJlOjIwOTYyOiAkPyA9IDAKY29uZmlndXJlOjIwOTYyOiAuL2NvbmZ0ZXN0CmNvbmZpZ3VyZToy MDk2MjogJD8gPSAwCmNvbmZpZ3VyZToyMTAyMTogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAg ICBjb25mdGVzdC5jIC1scHRocmVhZCAgPiY1IApjb25maWd1cmU6MjEwMjE6ICQ/ID0gMApjb25m aWd1cmU6MjEwMjE6IC4vY29uZnRlc3QKY29uZmlndXJlOjIxMDIxOiAkPyA9IDAKY29uZmlndXJl OjIxMDYzOiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgLWxwdGhyZWFk ICA+JjUgCmNvbmZpZ3VyZToyMTA2MzogJD8gPSAwCmNvbmZpZ3VyZToyMTA2MzogLi9jb25mdGVz dApwcm9ncmFtOiBvcHRpb24gcmVxdWlyZXMgYW4gYXJndW1lbnQgLS0gJ2InCmNvbmZpZ3VyZToy MTA2MzogJD8gPSAwCmNvbmZpZ3VyZToyMTA4MTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIxMDg5 OiBjaGVja2luZyBmb3Igd29ya2luZyBHTlUgZ2V0b3B0IGZ1bmN0aW9uCmNvbmZpZ3VyZToyMTMx MDogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jIC1scHRocmVhZCAgPiY1 IApjb25maWd1cmU6MjEzMTA6ICQ/ID0gMApjb25maWd1cmU6MjEzMTA6IC4vY29uZnRlc3QKY29u ZmlndXJlOjIxMzEwOiAkPyA9IDAKY29uZmlndXJlOjIxMzI2OiByZXN1bHQ6IHllcwpjb25maWd1 cmU6MjEzMzE6IGNoZWNraW5nIGZvciB3b3JraW5nIEdOVSBnZXRvcHRfbG9uZyBmdW5jdGlvbgpj b25maWd1cmU6MjEzNzY6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAt bHB0aHJlYWQgID4mNSAKY29uZmlndXJlOjIxMzc2OiAkPyA9IDAKY29uZmlndXJlOjIxMzc2OiAu L2NvbmZ0ZXN0CmNvbmZpZ3VyZToyMTM3NjogJD8gPSAwCmNvbmZpZ3VyZToyMTM4NzogcmVzdWx0 OiB5ZXMKY29uZmlndXJlOjIxNDE2OiBjaGVja2luZyB3aGV0aGVyIGdldGVudiBpcyBkZWNsYXJl ZApjb25maWd1cmU6MjE0MTY6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZp Z3VyZToyMTQxNjogJD8gPSAwCmNvbmZpZ3VyZToyMTQxNjogcmVzdWx0OiB5ZXMKY29uZmlndXJl OjIxNDMyOiBjaGVja2luZyBmb3IgQy9DKysgcmVzdHJpY3Qga2V5d29yZApjb25maWd1cmU6MjE0 NTk6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyMTQ1OTogJD8g PSAwCmNvbmZpZ3VyZToyMTQ2NzogcmVzdWx0OiBfX3Jlc3RyaWN0CmNvbmZpZ3VyZToyMTYwNTog Y2hlY2tpbmcgZm9yIHN0cnVjdCB0aW1ldmFsCmNvbmZpZ3VyZToyMTYyODogZ2NjIC1jIC1nMyAt TzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjIxNjI4OiAkPyA9IDAKY29uZmlndXJlOjIx NjM2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjE2NDE6IGNoZWNraW5nIGZvciB3aWRlLWVub3Vn aCBzdHJ1Y3QgdGltZXZhbC50dl9zZWMgbWVtYmVyCmNvbmZpZ3VyZToyMTY2ODogZ2NjIC1jIC1n MyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjIxNjY4OiAkPyA9IDAKY29uZmlndXJl OjIxNjc2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjE2OTA6IGNoZWNraW5nIGZvciBsb25nIGxv bmcgaW50CmNvbmZpZ3VyZToyMTc0MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIxNzYyOiBnY2Mg LWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOjI2MzoxMDogZXJyb3I6IHVu a25vd24gdHlwZSBuYW1lICdub3QnCiAgICAgICAgICBub3QgYSB1bml2ZXJzYWwgY2FwYWJsZSBj b21waWxlcgogICAgICAgICAgXn5+CmNvbmZ0ZXN0LmM6MjYzOjE2OiBlcnJvcjogZXhwZWN0ZWQg Jz0nLCAnLCcsICc7JywgJ2FzbScgb3IgJ19fYXR0cmlidXRlX18nIGJlZm9yZSAndW5pdmVyc2Fs JwogICAgICAgICAgbm90IGEgdW5pdmVyc2FsIGNhcGFibGUgY29tcGlsZXIKICAgICAgICAgICAg ICAgIF5+fn5+fn5+fgpjb25mdGVzdC5jOjI2MzoxNjogZXJyb3I6IHVua25vd24gdHlwZSBuYW1l ICd1bml2ZXJzYWwnCmNvbmZpZ3VyZToyMTc2MjogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHBy b2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05V IEVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tB R0VfVkVSU0lPTiAiMjUuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1hY3MgMjUu MSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ251LWVtYWNzQGdudS5vcmciCnwg I2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0cDovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIK fCAjZGVmaW5lIFBBQ0tBR0UgImVtYWNzIgp8ICNkZWZpbmUgVkVSU0lPTiAiMjUuMSIKfCAjZGVm aW5lIE1BSUxfVVNFX1BPUCAxCnwgI2RlZmluZSBIQVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZF X1RaU0VUIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTktB VCAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAj ZGVmaW5lIEhBVkVfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRBVCAxCnwgI2RlZmlu ZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhB VkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9NS09TVEVNUCAxCnwgI2RlZmluZSBIQVZFX1BJUEUy IDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAj ZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9VTUFYIDEKfCAjZGVm aW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5l IEhBVkVfVElNRUdNIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0ZV VElNRVNBVCAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRU5TIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVO U0FUIDEKfCAjZGVmaW5lIEhBVkVfTFVUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJ WkUgMQp8ICNkZWZpbmUgSEFWRV9TRUNVUkVfR0VURU5WIDEKfCAjZGVmaW5lIFNURENfSEVBREVS UyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRf SCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8 ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2Rl ZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmlu ZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIF9B TExfU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8ICNkZWZpbmUgX0dOVV9T T1VSQ0UgMQp8ICNkZWZpbmUgX19VU0VfTUlOR1dfQU5TSV9TVERJTyAxCnwgI2RlZmluZSBfUE9T SVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZp bmUgX0RBUldJTl9VU0VfNjRfQklUX0lOT0RFIDEKfCAjZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUv bGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAxCnwgI2RlZmluZSBIQVZFX0FM U0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwgI2RlZmluZSBIQVZFX1NZU19TWVNJTkZPX0gg MQp8ICNkZWZpbmUgSEFWRV9QVFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAj ZGVmaW5lIEhBVkVfVVRNUF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVm aW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX0VY RUNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJT19FWFRfSCAxCnwgI2RlZmluZSBIQVZFX0dF VE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFS X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9I IDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BFUlNPTkFMSVRZX0xJ TlVYMzIgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZ U0lORk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAxCnwgI2RlZmluZSBUSU1FX1dJVEhf U1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NZU19TSUdMSVNUIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX05FVF9JRl9IIDEKfCAjZGVmaW5lIEhBVkVf SUZBRERSU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9GTEFHUyAxCnwgI2Rl ZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfSFdBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNU X0lGUkVRX0lGUl9ORVRNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9CUk9B REFERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0FERFIgMQp8ICNkZWZpbmUg SEFWRV9MT05HX0ZJTEVfTkFNRVMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVkxJTUlUX0ggMQp8ICNk ZWZpbmUgSEFWRV9EQVRBX1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNk ZWZpbmUgSEFWRV9NTUFQIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRCAxCnwgI2RlZmluZSBIQVZF X1hLQiAxCnwgI2RlZmluZSBIQVZFX1hSTVNFVERBVEFCQVNFIDEKfCAjZGVmaW5lIEhBVkVfWFND UkVFTlJFU09VUkNFU1RSSU5HIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NSRUVO IDEKfCAjZGVmaW5lIEhBVkVfWDExUjYgMQp8ICNkZWZpbmUgSEFWRV9YX0kxOE4gMQp8ICNkZWZp bmUgSEFWRV9YMTFSNl9YSU0gMQp8ICNkZWZpbmUgSEFWRV9SU1ZHIDEKfCAjZGVmaW5lIEhBVkVf SU1BR0VNQUdJQ0sgMQp8ICNkZWZpbmUgSEFWRV9NQUdJQ0tFWFBPUlRJTUFHRVBJWEVMUyAxCnwg I2RlZmluZSBIQVZFX01BR0lDS01FUkdFSU1BR0VMQVlFUlMgMQp8ICNkZWZpbmUgSEFWRV9EQlVT IDEKfCAjZGVmaW5lIEhBVkVfREJVU19XQVRDSF9HRVRfVU5JWF9GRCAxCnwgI2RlZmluZSBIQVZF X0RCVVNfVFlQRV9JU19WQUxJRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfQlVTX05B TUUgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX1BBVEggMQp8ICNkZWZpbmUgSEFWRV9E QlVTX1ZBTElEQVRFX0lOVEVSRkFDRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfTUVN QkVSIDEKfCAjZGVmaW5lIEhBVkVfR1NFVFRJTkdTIDEKfCAjZGVmaW5lIEhBVkVfR0NPTkYgMQp8 ICNkZWZpbmUgSEFWRV9HTlVUTFMgMQp8ICNkZWZpbmUgSEFWRV9HTlVUTFMzIDEKfCAjZGVmaW5l IEhBVkVfSU5PVElGWSAxCnwgI2RlZmluZSBVU0VfRklMRV9OT1RJRlkgMQp8ICNkZWZpbmUgSEFW RV9YMTFYVFI2IDEKfCAjZGVmaW5lIFVTRV9UT09MS0lUX1NDUk9MTF9CQVJTIDEKfCAjZGVmaW5l IEhBVkVfWElNIDEKfCAjZGVmaW5lIFVTRV9YSU0gMQp8ICNkZWZpbmUgWFJlZ2lzdGVySU1JbnN0 YW50aWF0ZUNhbGxiYWNrX2FyZzYgWFBvaW50ZXIKfCAjZGVmaW5lIEhBVkVfWEZUIDEKfCAjZGVm aW5lIEhBVkVfRlJFRVRZUEUgMQp8ICNkZWZpbmUgSEFWRV9MSUJPVEYgMQp8ICNkZWZpbmUgSEFW RV9PVEZfR0VUX1ZBUklBVElPTl9HTFlQSFMgMQp8ICNkZWZpbmUgSEFWRV9NMTdOX0ZMVCAxCnwg I2RlZmluZSBVU0VfWENCIDEKfCAjZGVmaW5lIEhBVkVfWFBNIDEKfCAjZGVmaW5lIEhBVkVfSlBF RyAxCnwgI2RlZmluZSBIQVZFX1pMSUIgMQp8ICNkZWZpbmUgSEFWRV9QTkcgMQp8ICNkZWZpbmUg SEFWRV9USUZGIDEKfCAjZGVmaW5lIEhBVkVfR0lGIDEKfCAjZGVmaW5lIEhBVkVfR1BNIDEKfCAj ZGVmaW5lIEhBVkVfWF9TTSAxCnwgI2RlZmluZSBIQVZFX1hSQU5EUiAxCnwgI2RlZmluZSBIQVZF X1hJTkVSQU1BIDEKfCAjZGVmaW5lIEhBVkVfWEZJWEVTIDEKfCAjZGVmaW5lIEhBVkVfTElCWE1M MiAxCnwgI2RlZmluZSBIQVZFX0hfRVJSTk8gMQp8ICNkZWZpbmUgTUFJTF9VU0VfRkxPQ0sgMQp8 ICNkZWZpbmUgSEFWRV9BQ0NFUFQ0IDEKfCAjZGVmaW5lIEhBVkVfRkNIRElSIDEKfCAjZGVmaW5l IEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNBR0UgMQp8ICNkZWZpbmUg SEFWRV9HRVRfQ1VSUkVOVF9ESVJfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0xSQU5ENDggMQp8ICNk ZWZpbmUgSEFWRV9SQU5ET00gMQp8ICNkZWZpbmUgSEFWRV9SSU5UIDEKfCAjZGVmaW5lIEhBVkVf U0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRVRM T0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9ORVdMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSTElN SVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TSFVURE9XTiAx CnwgI2RlZmluZSBIQVZFX0dFVEFERFJJTkZPIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdN QVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSU0lHTkFMIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVS IDEKfCAjZGVmaW5lIEhBVkVfU0VORFRPIDEKfCAjZGVmaW5lIEhBVkVfUkVDVkZST00gMQp8ICNk ZWZpbmUgSEFWRV9HRVRTT0NLTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFBFRVJOQU1FIDEKfCAj ZGVmaW5lIEhBVkVfR0VUSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVJRkFERFJTIDEKfCAj ZGVmaW5lIEhBVkVfR0FJX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAxCnwgI2RlZmlu ZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EUFdFTlQgMQp8ICNkZWZpbmUgSEFW RV9HRVRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0VOREdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfQ0ZN QUtFUkFXIDEKfCAjZGVmaW5lIEhBVkVfQ0ZTRVRTUEVFRCAxCnwgI2RlZmluZSBIQVZFX0NPUFlT SUdOIDEKfCAjZGVmaW5lIEhBVkVfX19FWEVDVVRBQkxFX1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVf TE9HMiAxCnwgI2RlZmluZSBIQVZFX0FMSUdORURfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9fX0JV SUxUSU5fVU5XSU5EX0lOSVQgMQp8ICNkZWZpbmUgSEFWRV9GU0VFS08gMQp8ICNkZWZpbmUgSEFW RV9HUkFOVFBUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFQgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9P UEVOUFQgMQp8ICNkZWZpbmUgVEVSTUlORk8gMQp8ICNkZWZpbmUgSEFWRV9USU1FUkZEIDEKfCAj ZGVmaW5lIEhBVkVfUkVTX0lOSVQgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVU5JUEFJUl9VTklD T0RFIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9TT0NLRVRTIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAx CnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwg I2RlZmluZSBIQVZFX1dPUktJTkdfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1NOUFJJTlRGIDEKfCAj ZGVmaW5lIEhBVkVfR0xJQiAxCnwgI2RlZmluZSBIQVZFX0xBTkdJTkZPX0NPREVTRVQgMQp8ICNk ZWZpbmUgSEFWRV9NQlNUQVRFX1QgMQp8ICNkZWZpbmUgQU1QRVJTQU5EX0ZVTExfTkFNRSAxCnwg I2RlZmluZSBIQVZFX1BUWVMgMQp8ICNkZWZpbmUgSEFWRV9TT0NLRVRTIDEKfCAjZGVmaW5lIE5V TExfREVWSUNFICIvZGV2L251bGwiCnwgI2RlZmluZSBTRVBDSEFSICc6Jwp8ICNkZWZpbmUgc3Vi cHJvY2Vzc2VzIDEKfCAjZGVmaW5lIFVTRVJfRlVMTF9OQU1FIHB3LT5wd19nZWNvcwp8ICNkZWZp bmUgRElSRUNUT1JZX1NFUCAnLycKfCAjZGVmaW5lIElTX0RFVklDRV9TRVAoX2NfKSAwCnwgI2Rl ZmluZSBJU19ESVJFQ1RPUllfU0VQKF9jXykgKChfY18pID09IERJUkVDVE9SWV9TRVApCnwgI2Rl ZmluZSBJU19BTllfU0VQKF9jXykgKElTX0RJUkVDVE9SWV9TRVAgKF9jXykpCnwgI2RlZmluZSBI QVZFX1BST0NGUyAxCnwgI2RlZmluZSBERUZBVUxUX1NPVU5EX0RFVklDRSAiL2Rldi9kc3AiCnwg I2RlZmluZSBJTlRFUlJVUFRfSU5QVVQgMQp8ICNkZWZpbmUgTkFSUk9XUFJPVE8gMQp8ICNkZWZp bmUgVU5JWDk4X1BUWVMgMQp8ICNkZWZpbmUgUFRZX0lURVJBVElPTiBpbnQgaTsgZm9yIChpID0g MDsgaSA8IDE7IGkrKykKfCAjZGVmaW5lIFBUWV9UVFlfTkFNRV9TUFJJTlRGIHsgY2hhciAqcHR5 bmFtZSA9IDA7IHNpZ3NldF90IGJsb2NrZWQ7IHNpZ2VtcHR5c2V0ICgmYmxvY2tlZCk7IHNpZ2Fk ZHNldCAoJmJsb2NrZWQsIFNJR0NITEQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19CTE9DSywgJmJs b2NrZWQsIDApOyBpZiAoZ3JhbnRwdCAoZmQpICE9IC0xICYmIHVubG9ja3B0IChmZCkgIT0gLTEp IHB0eW5hbWUgPSBwdHNuYW1lKGZkKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfVU5CTE9DSywgJmJs b2NrZWQsIDApOyBpZiAoIXB0eW5hbWUpIHsgZW1hY3NfY2xvc2UgKGZkKTsgcmV0dXJuIC0xOyB9 IHNucHJpbnRmIChwdHlfbmFtZSwgUFRZX05BTUVfU0laRSwgIiVzIiwgcHR5bmFtZSk7IH0KfCAj ZGVmaW5lIFBUWV9PUEVOIGRvIHsgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fQ0xPRVhF QyB8IE9fTk9DVFRZKTsgaWYgKGZkIDwgMCAmJiBlcnJubyA9PSBFSU5WQUwpIGZkID0gcG9zaXhf b3BlbnB0IChPX1JEV1IgfCBPX05PQ1RUWSk7IH0gd2hpbGUgKGZhbHNlKQp8ICNkZWZpbmUgUFRZ X05BTUVfU1BSSU5URiAvKiovCnwgI2RlZmluZSBTSUdOQUxTX1ZJQV9DSEFSQUNURVJTIDEKfCAj ZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNk ZWZpbmUgSEFWRV9fU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUSk1QIDEKfCAjZGVmaW5l IEhBVkVfU1RBQ0tfT1ZFUkZMT1dfSEFORExJTkcgMQp8ICNkZWZpbmUgVVNHIC8qKi8KfCAjZGVm aW5lIEdOVV9MSU5VWCAvKiovCnwgI2RlZmluZSBVU0FCTEVfRklPTlJFQUQgMQp8ICNkZWZpbmUg VVNBQkxFX1NJR0lPIDEKfCAjZGVmaW5lIENPUFlSSUdIVCAiQ29weXJpZ2h0IChDKSAyMDE2IEZy ZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiIKfCAjZGVmaW5lIFRFUk1fSEVBREVSICJ4dGVy bS5oIgp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHVVJBVElPTiAieDg2XzY0LXVua25vd24tbGludXgt Z251Igp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHX09QVElPTlMgIi0td2l0aC14LXRvb2xraXQ9bHVj aWQiCnwgI2RlZmluZSBIQVZFX1hfV0lORE9XUyAxCnwgI2RlZmluZSBVU0VfWF9UT09MS0lUIDEK fCAjZGVmaW5lIFVTRV9MVUNJRCAxCnwgI2RlZmluZSBIQVZFX1gxMSAxCnwgI2RlZmluZSBIQVZF X1NUUlVDVF9BVFRSSUJVVEVfQUxJR05FRCAxCnwgI2RlZmluZSBHTlVfTUFMTE9DIDEKfCAjZGVm aW5lIFJFTF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVf QUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfVU5TSUdORURfTE9OR19MT05HX0lOVCAxCnwgI2RlZmlu ZSBIQVZFX0M5OV9TVFJUT0xEIDEKfCAjZGVmaW5lIEhBVkVfRU5WSVJPTl9ERUNMIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9GREFUQVNZTkMgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUk1PREUgMAp8 ICNkZWZpbmUgTFNUQVRfRk9MTE9XU19TTEFTSEVEX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9H RVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9MT05HX09OTFkgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX0dFVEVOViAxCnwgI2RlZmluZSByZXN0cmljdCBfX3Jlc3RyaWN0CnwgI2RlZmluZSBI QVZFX0xPTkdfTE9OR19JTlQgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaWZuZGVmIF9f QVBQTEVfQ0NfXwp8ICAgICAgICAgIG5vdCBhIHVuaXZlcnNhbCBjYXBhYmxlIGNvbXBpbGVyCnwg ICAgICAgICAjZW5kaWYKfCAgICAgICAgIHR5cGVkZWYgaW50IGR1bW15Owp8IApjb25maWd1cmU6 MjE5MTk6IGNoZWNraW5nIHdoZXRoZXIgc3RkaW50LmggY29uZm9ybXMgdG8gQzk5CmNvbmZpZ3Vy ZToyMjA5MDogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjIyMDkw OiAkPyA9IDAKY29uZmlndXJlOjIyMTcyOiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNv bmZ0ZXN0LmMgLWxwdGhyZWFkICA+JjUgCmNvbmZpZ3VyZToyMjE3MjogJD8gPSAwCmNvbmZpZ3Vy ZToyMjE3MjogLi9jb25mdGVzdApjb25maWd1cmU6MjIxNzI6ICQ/ID0gMApjb25maWd1cmU6MjIx ODQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjE4ODogY2hlY2tpbmcgd2hldGhlciBzdGRpbnQu aCBwcmVkYXRlcyBDKysxMQpjb25maWd1cmU6MjIyMjQ6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0 ZXN0LmMgPiY1CmNvbmZpZ3VyZToyMjIyNDogJD8gPSAwCmNvbmZpZ3VyZToyMjIyOTogcmVzdWx0 OiBubwpjb25maWd1cmU6MjI4MDk6IGNoZWNraW5nIHdoZXRoZXIgbWVtcmNociBpcyBkZWNsYXJl ZApjb25maWd1cmU6MjI4MDk6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZp Z3VyZToyMjgwOTogJD8gPSAwCmNvbmZpZ3VyZToyMjgwOTogcmVzdWx0OiB5ZXMKY29uZmlndXJl OjIyODQyOiBjaGVja2luZyB3aGV0aGVyIGFsYXJtIGlzIGRlY2xhcmVkCmNvbmZpZ3VyZToyMjg0 MjogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjIyODQyOiAkPyA9 IDAKY29uZmlndXJlOjIyODQyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjI4Njc6IGNoZWNraW5n IHdoZXRoZXIgPHN5cy9zZWxlY3QuaD4gaXMgc2VsZi1jb250YWluZWQKY29uZmlndXJlOjIyODg0 OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjI4ODQ6ICQ/ID0g MApjb25maWd1cmU6MjI5MDM6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZp Z3VyZToyMjkwMzogJD8gPSAwCmNvbmZpZ3VyZToyMjkzMzogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAt TzIgICAgICBjb25mdGVzdC5jIC1scHRocmVhZCAgPiY1IApjb25maWd1cmU6MjI5MzM6ICQ/ID0g MApjb25maWd1cmU6MjI5NDY6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMzA4OTogY2hlY2tpbmcg Zm9yIHNpZ3NldF90CmNvbmZpZ3VyZToyMzA4OTogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3Qu YyA+JjUKY29uZmlndXJlOjIzMDg5OiAkPyA9IDAKY29uZmlndXJlOjIzMDg5OiBnY2MgLWMgLWcz IC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiAnbWFpbic6CmNv bmZ0ZXN0LmM6MjczOjIzOiBlcnJvcjogZXhwZWN0ZWQgZXhwcmVzc2lvbiBiZWZvcmUgJyknIHRv a2VuCiBpZiAoc2l6ZW9mICgoc2lnc2V0X3QpKSkKICAgICAgICAgICAgICAgICAgICAgICBeCmNv bmZpZ3VyZToyMzA4OTogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8q IGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8ICNkZWZp bmUgUEFDS0FHRV9UQVJOQU1FICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMjUu MSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1hY3MgMjUuMSIKfCAjZGVmaW5lIFBB Q0tBR0VfQlVHUkVQT1JUICJidWctZ251LWVtYWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdF X1VSTCAiaHR0cDovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIFBBQ0tB R0UgImVtYWNzIgp8ICNkZWZpbmUgVkVSU0lPTiAiMjUuMSIKfCAjZGVmaW5lIE1BSUxfVVNFX1BP UCAxCnwgI2RlZmluZSBIQVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1RaU0VUIDEKfCAjZGVm aW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBI QVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRP UEVORElSIDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEK fCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNk ZWZpbmUgSEFWRV9NS09TVEVNUCAxCnwgI2RlZmluZSBIQVZFX1BJUEUyIDEKfCAjZGVmaW5lIEhB VkVfUFNFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfU1RS VE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9VTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElO SyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfVElNRUdNIDEK fCAjZGVmaW5lIEhBVkVfRlVUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVNBVCAxCnwgI2Rl ZmluZSBIQVZFX0ZVVElNRU5TIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVOU0FUIDEKfCAjZGVmaW5l IEhBVkVfTFVUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUg SEFWRV9TRUNVUkVfR0VURU5WIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBI QVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBI QVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9N RU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZ UEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9I IDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAj ZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZp bmUgX19VU0VfTUlOR1dfQU5TSV9TVERJTyAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1B TlRJQ1MgMQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9VU0Vf NjRfQklUX0lOT0RFIDEKfCAjZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmlu ZSBIQVZFX1NZU19TT1VORENBUkRfSCAxCnwgI2RlZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUg SEFWRV9TT1VORCAxCnwgI2RlZmluZSBIQVZFX1NZU19TWVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFW RV9QVFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRN UF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElC X0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9I IDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8 ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX0VYRUNJTkZPX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVERJT19FWFRfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUg SEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhB VkVfVVRJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BFUlNPTkFMSVRZX0xJTlVYMzIgMQp8ICNkZWZp bmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwg I2RlZmluZSBIQVZFX1RFUk1fSCAxCnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX1NZU19TSUdMSVNUIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAx CnwgI2RlZmluZSBIQVZFX05FVF9JRl9IIDEKfCAjZGVmaW5lIEhBVkVfSUZBRERSU19IIDEKfCAj ZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9GTEFHUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVD VF9JRlJFUV9JRlJfSFdBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9ORVRN QVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9CUk9BREFERFIgMQp8ICNkZWZp bmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0FERFIgMQp8ICNkZWZpbmUgSEFWRV9MT05HX0ZJTEVf TkFNRVMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVkxJTUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9EQVRB X1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9NTUFQ IDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRCAxCnwgI2RlZmluZSBIQVZFX1hLQiAxCnwgI2RlZmlu ZSBIQVZFX1hSTVNFVERBVEFCQVNFIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RS SU5HIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhB VkVfWDExUjYgMQp8ICNkZWZpbmUgSEFWRV9YX0kxOE4gMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9Y SU0gMQp8ICNkZWZpbmUgSEFWRV9SU1ZHIDEKfCAjZGVmaW5lIEhBVkVfSU1BR0VNQUdJQ0sgMQp8 ICNkZWZpbmUgSEFWRV9NQUdJQ0tFWFBPUlRJTUFHRVBJWEVMUyAxCnwgI2RlZmluZSBIQVZFX01B R0lDS01FUkdFSU1BR0VMQVlFUlMgMQp8ICNkZWZpbmUgSEFWRV9EQlVTIDEKfCAjZGVmaW5lIEhB VkVfREJVU19XQVRDSF9HRVRfVU5JWF9GRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVFlQRV9JU19W QUxJRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfQlVTX05BTUUgMQp8ICNkZWZpbmUg SEFWRV9EQlVTX1ZBTElEQVRFX1BBVEggMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0lO VEVSRkFDRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfTUVNQkVSIDEKfCAjZGVmaW5l IEhBVkVfR1NFVFRJTkdTIDEKfCAjZGVmaW5lIEhBVkVfR0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9H TlVUTFMgMQp8ICNkZWZpbmUgSEFWRV9HTlVUTFMzIDEKfCAjZGVmaW5lIEhBVkVfSU5PVElGWSAx CnwgI2RlZmluZSBVU0VfRklMRV9OT1RJRlkgMQp8ICNkZWZpbmUgSEFWRV9YMTFYVFI2IDEKfCAj ZGVmaW5lIFVTRV9UT09MS0lUX1NDUk9MTF9CQVJTIDEKfCAjZGVmaW5lIEhBVkVfWElNIDEKfCAj ZGVmaW5lIFVTRV9YSU0gMQp8ICNkZWZpbmUgWFJlZ2lzdGVySU1JbnN0YW50aWF0ZUNhbGxiYWNr X2FyZzYgWFBvaW50ZXIKfCAjZGVmaW5lIEhBVkVfWEZUIDEKfCAjZGVmaW5lIEhBVkVfRlJFRVRZ UEUgMQp8ICNkZWZpbmUgSEFWRV9MSUJPVEYgMQp8ICNkZWZpbmUgSEFWRV9PVEZfR0VUX1ZBUklB VElPTl9HTFlQSFMgMQp8ICNkZWZpbmUgSEFWRV9NMTdOX0ZMVCAxCnwgI2RlZmluZSBVU0VfWENC IDEKfCAjZGVmaW5lIEhBVkVfWFBNIDEKfCAjZGVmaW5lIEhBVkVfSlBFRyAxCnwgI2RlZmluZSBI QVZFX1pMSUIgMQp8ICNkZWZpbmUgSEFWRV9QTkcgMQp8ICNkZWZpbmUgSEFWRV9USUZGIDEKfCAj ZGVmaW5lIEhBVkVfR0lGIDEKfCAjZGVmaW5lIEhBVkVfR1BNIDEKfCAjZGVmaW5lIEhBVkVfWF9T TSAxCnwgI2RlZmluZSBIQVZFX1hSQU5EUiAxCnwgI2RlZmluZSBIQVZFX1hJTkVSQU1BIDEKfCAj ZGVmaW5lIEhBVkVfWEZJWEVTIDEKfCAjZGVmaW5lIEhBVkVfTElCWE1MMiAxCnwgI2RlZmluZSBI QVZFX0hfRVJSTk8gMQp8ICNkZWZpbmUgTUFJTF9VU0VfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9B Q0NFUFQ0IDEKfCAjZGVmaW5lIEhBVkVfRkNIRElSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5B TUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNBR0UgMQp8ICNkZWZpbmUgSEFWRV9HRVRfQ1VSUkVO VF9ESVJfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0xSQU5ENDggMQp8ICNkZWZpbmUgSEFWRV9SQU5E T00gMQp8ICNkZWZpbmUgSEFWRV9SSU5UIDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVm aW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZp bmUgSEFWRV9ORVdMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSTElNSVQgMQp8ICNkZWZpbmUg SEFWRV9TRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TSFVURE9XTiAxCnwgI2RlZmluZSBIQVZF X0dFVEFERFJJTkZPIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5l IEhBVkVfU1RSU0lHTkFMIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhB VkVfU0VORFRPIDEKfCAjZGVmaW5lIEhBVkVfUkVDVkZST00gMQp8ICNkZWZpbmUgSEFWRV9HRVRT T0NLTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFBFRVJOQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VU SUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfR0FJ X1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5U IDEKfCAjZGVmaW5lIEhBVkVfRU5EUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUkVOVCAxCnwg I2RlZmluZSBIQVZFX0VOREdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfQ0ZNQUtFUkFXIDEKfCAjZGVm aW5lIEhBVkVfQ0ZTRVRTUEVFRCAxCnwgI2RlZmluZSBIQVZFX0NPUFlTSUdOIDEKfCAjZGVmaW5l IEhBVkVfX19FWEVDVVRBQkxFX1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVfTE9HMiAxCnwgI2RlZmlu ZSBIQVZFX0FMSUdORURfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fVU5XSU5EX0lO SVQgMQp8ICNkZWZpbmUgSEFWRV9GU0VFS08gMQp8ICNkZWZpbmUgSEFWRV9HUkFOVFBUIDEKfCAj ZGVmaW5lIEhBVkVfR0VUUFQgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9PUEVOUFQgMQp8ICNkZWZp bmUgVEVSTUlORk8gMQp8ICNkZWZpbmUgSEFWRV9USU1FUkZEIDEKfCAjZGVmaW5lIEhBVkVfUkVT X0lOSVQgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVU5JUEFJUl9VTklDT0RFIDEKfCAjZGVmaW5l IEhBVkVfSU5FVF9TT0NLRVRTIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZF X1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dP UktJTkdfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1NOUFJJTlRGIDEKfCAjZGVmaW5lIEhBVkVfR0xJ QiAxCnwgI2RlZmluZSBIQVZFX0xBTkdJTkZPX0NPREVTRVQgMQp8ICNkZWZpbmUgSEFWRV9NQlNU QVRFX1QgMQp8ICNkZWZpbmUgQU1QRVJTQU5EX0ZVTExfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1BU WVMgMQp8ICNkZWZpbmUgSEFWRV9TT0NLRVRTIDEKfCAjZGVmaW5lIE5VTExfREVWSUNFICIvZGV2 L251bGwiCnwgI2RlZmluZSBTRVBDSEFSICc6Jwp8ICNkZWZpbmUgc3VicHJvY2Vzc2VzIDEKfCAj ZGVmaW5lIFVTRVJfRlVMTF9OQU1FIHB3LT5wd19nZWNvcwp8ICNkZWZpbmUgRElSRUNUT1JZX1NF UCAnLycKfCAjZGVmaW5lIElTX0RFVklDRV9TRVAoX2NfKSAwCnwgI2RlZmluZSBJU19ESVJFQ1RP UllfU0VQKF9jXykgKChfY18pID09IERJUkVDVE9SWV9TRVApCnwgI2RlZmluZSBJU19BTllfU0VQ KF9jXykgKElTX0RJUkVDVE9SWV9TRVAgKF9jXykpCnwgI2RlZmluZSBIQVZFX1BST0NGUyAxCnwg I2RlZmluZSBERUZBVUxUX1NPVU5EX0RFVklDRSAiL2Rldi9kc3AiCnwgI2RlZmluZSBJTlRFUlJV UFRfSU5QVVQgMQp8ICNkZWZpbmUgTkFSUk9XUFJPVE8gMQp8ICNkZWZpbmUgVU5JWDk4X1BUWVMg MQp8ICNkZWZpbmUgUFRZX0lURVJBVElPTiBpbnQgaTsgZm9yIChpID0gMDsgaSA8IDE7IGkrKykK fCAjZGVmaW5lIFBUWV9UVFlfTkFNRV9TUFJJTlRGIHsgY2hhciAqcHR5bmFtZSA9IDA7IHNpZ3Nl dF90IGJsb2NrZWQ7IHNpZ2VtcHR5c2V0ICgmYmxvY2tlZCk7IHNpZ2FkZHNldCAoJmJsb2NrZWQs IFNJR0NITEQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAo Z3JhbnRwdCAoZmQpICE9IC0xICYmIHVubG9ja3B0IChmZCkgIT0gLTEpIHB0eW5hbWUgPSBwdHNu YW1lKGZkKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfVU5CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAo IXB0eW5hbWUpIHsgZW1hY3NfY2xvc2UgKGZkKTsgcmV0dXJuIC0xOyB9IHNucHJpbnRmIChwdHlf bmFtZSwgUFRZX05BTUVfU0laRSwgIiVzIiwgcHR5bmFtZSk7IH0KfCAjZGVmaW5lIFBUWV9PUEVO IGRvIHsgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fQ0xPRVhFQyB8IE9fTk9DVFRZKTsg aWYgKGZkIDwgMCAmJiBlcnJubyA9PSBFSU5WQUwpIGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1Ig fCBPX05PQ1RUWSk7IH0gd2hpbGUgKGZhbHNlKQp8ICNkZWZpbmUgUFRZX05BTUVfU1BSSU5URiAv KiovCnwgI2RlZmluZSBTSUdOQUxTX1ZJQV9DSEFSQUNURVJTIDEKfCAjZGVmaW5lIEdDX1NFVEpN UF9XT1JLUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgSEFWRV9fU0VU Sk1QIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU1RBQ0tfT1ZF UkZMT1dfSEFORExJTkcgMQp8ICNkZWZpbmUgVVNHIC8qKi8KfCAjZGVmaW5lIEdOVV9MSU5VWCAv KiovCnwgI2RlZmluZSBVU0FCTEVfRklPTlJFQUQgMQp8ICNkZWZpbmUgVVNBQkxFX1NJR0lPIDEK fCAjZGVmaW5lIENPUFlSSUdIVCAiQ29weXJpZ2h0IChDKSAyMDE2IEZyZWUgU29mdHdhcmUgRm91 bmRhdGlvbiwgSW5jLiIKfCAjZGVmaW5lIFRFUk1fSEVBREVSICJ4dGVybS5oIgp8ICNkZWZpbmUg RU1BQ1NfQ09ORklHVVJBVElPTiAieDg2XzY0LXVua25vd24tbGludXgtZ251Igp8ICNkZWZpbmUg RU1BQ1NfQ09ORklHX09QVElPTlMgIi0td2l0aC14LXRvb2xraXQ9bHVjaWQiCnwgI2RlZmluZSBI QVZFX1hfV0lORE9XUyAxCnwgI2RlZmluZSBVU0VfWF9UT09MS0lUIDEKfCAjZGVmaW5lIFVTRV9M VUNJRCAxCnwgI2RlZmluZSBIQVZFX1gxMSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9BVFRSSUJV VEVfQUxJR05FRCAxCnwgI2RlZmluZSBHTlVfTUFMTE9DIDEKfCAjZGVmaW5lIFJFTF9BTExPQyAx CnwgI2RlZmluZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVm aW5lIEhBVkVfVU5TSUdORURfTE9OR19MT05HX0lOVCAxCnwgI2RlZmluZSBIQVZFX0M5OV9TVFJU T0xEIDEKfCAjZGVmaW5lIEhBVkVfRU5WSVJPTl9ERUNMIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9G REFUQVNZTkMgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUk1PREUgMAp8ICNkZWZpbmUgTFNUQVRf Rk9MTE9XU19TTEFTSEVEX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2Rl ZmluZSBIQVZFX0dFVE9QVF9MT05HX09OTFkgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVEVOViAx CnwgI2RlZmluZSByZXN0cmljdCBfX3Jlc3RyaWN0CnwgI2RlZmluZSBIQVZFX0xPTkdfTE9OR19J TlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX01FTVJDSFIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0FM QVJNIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgCnwgICAgICAgI2luY2x1ZGUgPHNpZ25h bC5oPgp8ICAgICAgIC8qIE1pbmd3IGRlZmluZXMgc2lnc2V0X3Qgbm90IGluIDxzaWduYWwuaD4s IGJ1dCBpbiA8c3lzL3R5cGVzLmg+LiAgKi8KfCAgICAgICAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+ CnwgCnwgCnwgaW50CnwgbWFpbiAoKQp8IHsKfCBpZiAoc2l6ZW9mICgoc2lnc2V0X3QpKSkKfCAJ ICAgIHJldHVybiAwOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MjMwODk6IHJl c3VsdDogeWVzCmNvbmZpZ3VyZToyMzEzMzogY2hlY2tpbmcgZm9yIHdjaGFyX3QKY29uZmlndXJl OjIzMTUwOiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjMxNTA6 ICQ/ID0gMApjb25maWd1cmU6MjMxNTc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMzI2ODogY2hl Y2tpbmcgd2hldGhlciBzdHJ1Y3QgdG0gaXMgaW4gc3lzL3RpbWUuaCBvciB0aW1lLmgKY29uZmln dXJlOjIzMjg4OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjMy ODg6ICQ/ID0gMApjb25maWd1cmU6MjMyOTU6IHJlc3VsdDogdGltZS5oCmNvbmZpZ3VyZToyMzMw MzogY2hlY2tpbmcgZm9yIHN0cnVjdCB0bS50bV96b25lCmNvbmZpZ3VyZToyMzMwMzogZ2NjIC1j IC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjIzMzAzOiAkPyA9IDAKY29uZmln dXJlOjIzMzAzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjMzNzE6IGNoZWNraW5nIGZvciBzdHJ1 Y3QgdG0udG1fZ210b2ZmCmNvbmZpZ3VyZToyMzM3MTogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRl c3QuYyA+JjUKY29uZmlndXJlOjIzMzcxOiAkPyA9IDAKY29uZmlndXJlOjIzMzcxOiByZXN1bHQ6 IHllcwpjb25maWd1cmU6MjM0NTk6IGNoZWNraW5nIHdoZXRoZXIgc3RydG9pbWF4IGlzIGRlY2xh cmVkCmNvbmZpZ3VyZToyMzQ1OTogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29u ZmlndXJlOjIzNDU5OiAkPyA9IDAKY29uZmlndXJlOjIzNDU5OiByZXN1bHQ6IHllcwpjb25maWd1 cmU6MjM0NzI6IGNoZWNraW5nIHdoZXRoZXIgc3RydG91bWF4IGlzIGRlY2xhcmVkCmNvbmZpZ3Vy ZToyMzQ3MjogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjIzNDcy OiAkPyA9IDAKY29uZmlndXJlOjIzNDcyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjM0ODU6IGNo ZWNraW5nIHdoZXRoZXIgc3RhdCBmaWxlLW1vZGUgbWFjcm9zIGFyZSBicm9rZW4KY29uZmlndXJl OjIzNTEyOiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjM1MTI6 ICQ/ID0gMApjb25maWd1cmU6MjM1MTk6IHJlc3VsdDogbm8KY29uZmlndXJlOjIzNjE5OiBjaGVj a2luZyBmb3Igc3RydWN0IHRpbWVzcGVjIGluIDx0aW1lLmg+CmNvbmZpZ3VyZToyMzYzNjogZ2Nj IC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjIzNjM2OiAkPyA9IDAKY29u ZmlndXJlOjIzNjQzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjM4Mjk6IGNoZWNraW5nIHdoZXRo ZXIgdGhlIHV0aW1lcyBmdW5jdGlvbiB3b3Jrcwpjb25maWd1cmU6MjM5NTg6IGdjYyAtbyBjb25m dGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAtbHB0aHJlYWQgID4mNSAKY29uZmlndXJlOjIz OTU4OiAkPyA9IDAKY29uZmlndXJlOjIzOTU4OiAuL2NvbmZ0ZXN0CmNvbmZpZ3VyZToyMzk1ODog JD8gPSAwCmNvbmZpZ3VyZToyMzk2ODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIzOTgxOiBjaGVj a2luZyBmb3Igc3RydWN0IHV0aW1idWYKY29uZmlndXJlOjI0MDA0OiBnY2MgLWMgLWczIC1PMiAg ICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjQwMDQ6ICQ/ID0gMApjb25maWd1cmU6MjQwMTE6 IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNDAzMDogY2hlY2tpbmcgdHlwZSBvZiBhcnJheSBhcmd1 bWVudCB0byBnZXRncm91cHMKY29uZmlndXJlOjI0MDY0OiBnY2MgLW8gY29uZnRlc3QgLWczIC1P MiAgICAgIGNvbmZ0ZXN0LmMgLWxwdGhyZWFkICA+JjUgCmNvbmZpZ3VyZToyNDA2NDogJD8gPSAw CmNvbmZpZ3VyZToyNDA2NDogLi9jb25mdGVzdApjb25maWd1cmU6MjQwNjQ6ICQ/ID0gMApjb25m aWd1cmU6MjQwODk6IHJlc3VsdDogZ2lkX3QKY29uZmlndXJlOjI0MDk5OiBjaGVja2luZyB3aGV0 aGVyIGdldGR0YWJsZXNpemUgaXMgZGVjbGFyZWQKY29uZmlndXJlOjI0MDk5OiBnY2MgLWMgLWcz IC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjQwOTk6ICQ/ID0gMApjb25maWd1cmU6 MjQwOTk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNDE0MzogY2hlY2tpbmcgc3lzL2FjbC5oIHVz YWJpbGl0eQpjb25maWd1cmU6MjQxNDM6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1 CmNvbmZpZ3VyZToyNDE0MzogJD8gPSAwCmNvbmZpZ3VyZToyNDE0MzogcmVzdWx0OiB5ZXMKY29u ZmlndXJlOjI0MTQzOiBjaGVja2luZyBzeXMvYWNsLmggcHJlc2VuY2UKY29uZmlndXJlOjI0MTQz OiBnY2MgLUUgICAgY29uZnRlc3QuYwpjb25maWd1cmU6MjQxNDM6ICQ/ID0gMApjb25maWd1cmU6 MjQxNDM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNDE0MzogY2hlY2tpbmcgZm9yIHN5cy9hY2wu aApjb25maWd1cmU6MjQxNDM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNDE1NzogY2hlY2tpbmcg Zm9yIGxpYnJhcnkgY29udGFpbmluZyBhY2xfZ2V0X2ZpbGUKY29uZmlndXJlOjI0MTg4OiBnY2Mg LW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgLWxwdGhyZWFkICA+JjUgCi90bXAv Y2M0bHVJVTcubzogSW4gZnVuY3Rpb24gYG1haW4nOgovaG9tZS9kZWVjaC9Eb3dubG9hZHMvZW1h Y3MtMjUuMS9jb25mdGVzdC5jOjI4NzogdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgYWNsX2dldF9m aWxlJwpjb2xsZWN0MjogZXJyb3I6IGxkIHJldHVybmVkIDEgZXhpdCBzdGF0dXMKY29uZmlndXJl OjI0MTg4OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRl ZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2RlZmluZSBQQUNL QUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyNS4xIgp8ICNk ZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAyNS4xIgp8ICNkZWZpbmUgUEFDS0FHRV9C VUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJo dHRwOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgUEFDS0FHRSAiZW1h Y3MiCnwgI2RlZmluZSBWRVJTSU9OICIyNS4xIgp8ICNkZWZpbmUgTUFJTF9VU0VfUE9QIDEKfCAj ZGVmaW5lIEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfVFpTRVQgMQp8ICNkZWZpbmUgSEFW RV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKfCAjZGVmaW5lIEhBVkVfRkFD Q0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9GRE9QRU5ESVIg MQp8ICNkZWZpbmUgSEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMgMQp8ICNkZWZp bmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwgI2RlZmluZSBI QVZFX01LT1NURU1QIDEKfCAjZGVmaW5lIEhBVkVfUElQRTIgMQp8ICNkZWZpbmUgSEFWRV9QU0VM RUNUIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFWRV9TVFJUT0lNQVgg MQp8ICNkZWZpbmUgSEFWRV9TVFJUT1VNQVggMQp8ICNkZWZpbmUgSEFWRV9TWU1MSU5LIDEKfCAj ZGVmaW5lIEhBVkVfTE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9USU1FR00gMQp8ICNkZWZp bmUgSEFWRV9GVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FU0FUIDEKfCAjZGVmaW5lIEhB VkVfRlVUSU1FTlMgMQp8ICNkZWZpbmUgSEFWRV9VVElNRU5TQVQgMQp8ICNkZWZpbmUgSEFWRV9M VVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NF Q1VSRV9HRVRFTlYgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RE TElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9I IDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAx CnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNk ZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8ICNkZWZpbmUg X0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBfX1VT RV9NSU5HV19BTlNJX1NURElPIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAx CnwgI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX1VTRV82NF9CSVRf SU5PREUgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAjZGVmaW5lIEhBVkVf U1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2RlZmluZSBIQVZFX1NP VU5EIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1BUWV9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRT TkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1QX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwg I2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNk ZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwgI2RlZmlu ZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAxCnwgI2RlZmluZSBI QVZFX1NURElPX0VYVF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfSCAxCnwgI2RlZmluZSBIQVZFX1NU RElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19T RUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9VVElN RV9IIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfTElOVVgzMiAxCnwgI2RlZmluZSBIQVZF X0xJTlVYX1NZU0lORk8gMQp8ICNkZWZpbmUgTElOVVhfU1lTSU5GT19VTklUIDEKfCAjZGVmaW5l IEhBVkVfVEVSTV9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfU1lTX1NJR0xJU1QgMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVm aW5lIEhBVkVfTkVUX0lGX0ggMQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0ggMQp8ICNkZWZpbmUg SEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVR X0lGUl9IV0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX05FVE1BU0sgMQp8 ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAxCnwgI2RlZmluZSBIQVZF X1NUUlVDVF9JRlJFUV9JRlJfQUREUiAxCnwgI2RlZmluZSBIQVZFX0xPTkdfRklMRV9OQU1FUyAx CnwgI2RlZmluZSBIQVZFX1NZU19WTElNSVRfSCAxCnwgI2RlZmluZSBIQVZFX0RBVEFfU1RBUlQg MQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX01NQVAgMQp8ICNk ZWZpbmUgSEFWRV9QVEhSRUFEIDEKfCAjZGVmaW5lIEhBVkVfWEtCIDEKfCAjZGVmaW5lIEhBVkVf WFJNU0VUREFUQUJBU0UgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOUkVTT1VSQ0VTVFJJTkcgMQp8 ICNkZWZpbmUgSEFWRV9YU0NSRUVOTlVNQkVST0ZTQ1JFRU4gMQp8ICNkZWZpbmUgSEFWRV9YMTFS NiAxCnwgI2RlZmluZSBIQVZFX1hfSTE4TiAxCnwgI2RlZmluZSBIQVZFX1gxMVI2X1hJTSAxCnwg I2RlZmluZSBIQVZFX1JTVkcgMQp8ICNkZWZpbmUgSEFWRV9JTUFHRU1BR0lDSyAxCnwgI2RlZmlu ZSBIQVZFX01BR0lDS0VYUE9SVElNQUdFUElYRUxTIDEKfCAjZGVmaW5lIEhBVkVfTUFHSUNLTUVS R0VJTUFHRUxBWUVSUyAxCnwgI2RlZmluZSBIQVZFX0RCVVMgMQp8ICNkZWZpbmUgSEFWRV9EQlVT X1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19UWVBFX0lTX1ZBTElEIDEK fCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0RC VVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfSU5URVJGQUNF IDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIgMQp8ICNkZWZpbmUgSEFWRV9H U0VUVElOR1MgMQp8ICNkZWZpbmUgSEFWRV9HQ09ORiAxCnwgI2RlZmluZSBIQVZFX0dOVVRMUyAx CnwgI2RlZmluZSBIQVZFX0dOVVRMUzMgMQp8ICNkZWZpbmUgSEFWRV9JTk9USUZZIDEKfCAjZGVm aW5lIFVTRV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBIQVZFX1gxMVhUUjYgMQp8ICNkZWZpbmUg VVNFX1RPT0xLSVRfU0NST0xMX0JBUlMgMQp8ICNkZWZpbmUgSEFWRV9YSU0gMQp8ICNkZWZpbmUg VVNFX1hJTSAxCnwgI2RlZmluZSBYUmVnaXN0ZXJJTUluc3RhbnRpYXRlQ2FsbGJhY2tfYXJnNiBY UG9pbnRlcgp8ICNkZWZpbmUgSEFWRV9YRlQgMQp8ICNkZWZpbmUgSEFWRV9GUkVFVFlQRSAxCnwg I2RlZmluZSBIQVZFX0xJQk9URiAxCnwgI2RlZmluZSBIQVZFX09URl9HRVRfVkFSSUFUSU9OX0dM WVBIUyAxCnwgI2RlZmluZSBIQVZFX00xN05fRkxUIDEKfCAjZGVmaW5lIFVTRV9YQ0IgMQp8ICNk ZWZpbmUgSEFWRV9YUE0gMQp8ICNkZWZpbmUgSEFWRV9KUEVHIDEKfCAjZGVmaW5lIEhBVkVfWkxJ QiAxCnwgI2RlZmluZSBIQVZFX1BORyAxCnwgI2RlZmluZSBIQVZFX1RJRkYgMQp8ICNkZWZpbmUg SEFWRV9HSUYgMQp8ICNkZWZpbmUgSEFWRV9HUE0gMQp8ICNkZWZpbmUgSEFWRV9YX1NNIDEKfCAj ZGVmaW5lIEhBVkVfWFJBTkRSIDEKfCAjZGVmaW5lIEhBVkVfWElORVJBTUEgMQp8ICNkZWZpbmUg SEFWRV9YRklYRVMgMQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwyIDEKfCAjZGVmaW5lIEhBVkVfSF9F UlJOTyAxCnwgI2RlZmluZSBNQUlMX1VTRV9GTE9DSyAxCnwgI2RlZmluZSBIQVZFX0FDQ0VQVDQg MQp8ICNkZWZpbmUgSEFWRV9GQ0hESVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAxCnwg I2RlZmluZSBIQVZFX0dFVFJVU0FHRSAxCnwgI2RlZmluZSBIQVZFX0dFVF9DVVJSRU5UX0RJUl9O QU1FIDEKfCAjZGVmaW5lIEhBVkVfTFJBTkQ0OCAxCnwgI2RlZmluZSBIQVZFX1JBTkRPTSAxCnwg I2RlZmluZSBIQVZFX1JJTlQgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZpbmUgSEFW RV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FMRSAxCnwgI2RlZmluZSBIQVZF X05FV0xPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NF VFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5lIEhBVkVfR0VUQURE UklORk8gMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9T VFJTSUdOQUwgMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9TRU5E VE8gMQp8ICNkZWZpbmUgSEFWRV9SRUNWRlJPTSAxCnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tOQU1F IDEKfCAjZGVmaW5lIEhBVkVfR0VUUEVFUk5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRJRkFERFJT IDEKfCAjZGVmaW5lIEhBVkVfRlJFRUlGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9HQUlfU1RSRVJS T1IgMQp8ICNkZWZpbmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFdFTlQgMQp8ICNk ZWZpbmUgSEFWRV9FTkRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0dFVEdSRU5UIDEKfCAjZGVmaW5l IEhBVkVfRU5ER1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9DRk1BS0VSQVcgMQp8ICNkZWZpbmUgSEFW RV9DRlNFVFNQRUVEIDEKfCAjZGVmaW5lIEhBVkVfQ09QWVNJR04gMQp8ICNkZWZpbmUgSEFWRV9f X0VYRUNVVEFCTEVfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9MT0cyIDEKfCAjZGVmaW5lIEhBVkVf QUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9VTldJTkRfSU5JVCAxCnwg I2RlZmluZSBIQVZFX0ZTRUVLTyAxCnwgI2RlZmluZSBIQVZFX0dSQU5UUFQgMQp8ICNkZWZpbmUg SEFWRV9HRVRQVCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX09QRU5QVCAxCnwgI2RlZmluZSBURVJN SU5GTyAxCnwgI2RlZmluZSBIQVZFX1RJTUVSRkQgMQp8ICNkZWZpbmUgSEFWRV9SRVNfSU5JVCAx CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9VTklQQUlSX1VOSUNPREUgMQp8ICNkZWZpbmUgSEFWRV9J TkVUX1NPQ0tFVFMgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfVkZPUksg MQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19G T1JLIDEKfCAjZGVmaW5lIEhBVkVfU05QUklOVEYgMQp8ICNkZWZpbmUgSEFWRV9HTElCIDEKfCAj ZGVmaW5lIEhBVkVfTEFOR0lORk9fQ09ERVNFVCAxCnwgI2RlZmluZSBIQVZFX01CU1RBVEVfVCAx CnwgI2RlZmluZSBBTVBFUlNBTkRfRlVMTF9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUFRZUyAxCnwg I2RlZmluZSBIQVZFX1NPQ0tFVFMgMQp8ICNkZWZpbmUgTlVMTF9ERVZJQ0UgIi9kZXYvbnVsbCIK fCAjZGVmaW5lIFNFUENIQVIgJzonCnwgI2RlZmluZSBzdWJwcm9jZXNzZXMgMQp8ICNkZWZpbmUg VVNFUl9GVUxMX05BTUUgcHctPnB3X2dlY29zCnwgI2RlZmluZSBESVJFQ1RPUllfU0VQICcvJwp8 ICNkZWZpbmUgSVNfREVWSUNFX1NFUChfY18pIDAKfCAjZGVmaW5lIElTX0RJUkVDVE9SWV9TRVAo X2NfKSAoKF9jXykgPT0gRElSRUNUT1JZX1NFUCkKfCAjZGVmaW5lIElTX0FOWV9TRVAoX2NfKSAo SVNfRElSRUNUT1JZX1NFUCAoX2NfKSkKfCAjZGVmaW5lIEhBVkVfUFJPQ0ZTIDEKfCAjZGVmaW5l IERFRkFVTFRfU09VTkRfREVWSUNFICIvZGV2L2RzcCIKfCAjZGVmaW5lIElOVEVSUlVQVF9JTlBV VCAxCnwgI2RlZmluZSBOQVJST1dQUk9UTyAxCnwgI2RlZmluZSBVTklYOThfUFRZUyAxCnwgI2Rl ZmluZSBQVFlfSVRFUkFUSU9OIGludCBpOyBmb3IgKGkgPSAwOyBpIDwgMTsgaSsrKQp8ICNkZWZp bmUgUFRZX1RUWV9OQU1FX1NQUklOVEYgeyBjaGFyICpwdHluYW1lID0gMDsgc2lnc2V0X3QgYmxv Y2tlZDsgc2lnZW1wdHlzZXQgKCZibG9ja2VkKTsgc2lnYWRkc2V0ICgmYmxvY2tlZCwgU0lHQ0hM RCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX0JMT0NLLCAmYmxvY2tlZCwgMCk7IGlmIChncmFudHB0 IChmZCkgIT0gLTEgJiYgdW5sb2NrcHQgKGZkKSAhPSAtMSkgcHR5bmFtZSA9IHB0c25hbWUoZmQp OyBwdGhyZWFkX3NpZ21hc2sgKFNJR19VTkJMT0NLLCAmYmxvY2tlZCwgMCk7IGlmICghcHR5bmFt ZSkgeyBlbWFjc19jbG9zZSAoZmQpOyByZXR1cm4gLTE7IH0gc25wcmludGYgKHB0eV9uYW1lLCBQ VFlfTkFNRV9TSVpFLCAiJXMiLCBwdHluYW1lKTsgfQp8ICNkZWZpbmUgUFRZX09QRU4gZG8geyBm ZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19DTE9FWEVDIHwgT19OT0NUVFkpOyBpZiAoZmQg PCAwICYmIGVycm5vID09IEVJTlZBTCkgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fTk9D VFRZKTsgfSB3aGlsZSAoZmFsc2UpCnwgI2RlZmluZSBQVFlfTkFNRV9TUFJJTlRGIC8qKi8KfCAj ZGVmaW5lIFNJR05BTFNfVklBX0NIQVJBQ1RFUlMgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktT IDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBIQVZFX19TRVRKTVAgMQp8 ICNkZWZpbmUgSEFWRV9TSUdTRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TVEFDS19PVkVSRkxPV19I QU5ETElORyAxCnwgI2RlZmluZSBVU0cgLyoqLwp8ICNkZWZpbmUgR05VX0xJTlVYIC8qKi8KfCAj ZGVmaW5lIFVTQUJMRV9GSU9OUkVBRCAxCnwgI2RlZmluZSBVU0FCTEVfU0lHSU8gMQp8ICNkZWZp bmUgQ09QWVJJR0hUICJDb3B5cmlnaHQgKEMpIDIwMTYgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9u LCBJbmMuIgp8ICNkZWZpbmUgVEVSTV9IRUFERVIgInh0ZXJtLmgiCnwgI2RlZmluZSBFTUFDU19D T05GSUdVUkFUSU9OICJ4ODZfNjQtdW5rbm93bi1saW51eC1nbnUiCnwgI2RlZmluZSBFTUFDU19D T05GSUdfT1BUSU9OUyAiLS13aXRoLXgtdG9vbGtpdD1sdWNpZCIKfCAjZGVmaW5lIEhBVkVfWF9X SU5ET1dTIDEKfCAjZGVmaW5lIFVTRV9YX1RPT0xLSVQgMQp8ICNkZWZpbmUgVVNFX0xVQ0lEIDEK fCAjZGVmaW5lIEhBVkVfWDExIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0FUVFJJQlVURV9BTElH TkVEIDEKfCAjZGVmaW5lIEdOVV9NQUxMT0MgMQp8ICNkZWZpbmUgUkVMX0FMTE9DIDEKfCAjZGVm aW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgSEFW RV9VTlNJR05FRF9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfQzk5X1NUUlRPTEQgMQp8 ICNkZWZpbmUgSEFWRV9FTlZJUk9OX0RFQ0wgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZEQVRBU1lO QyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSTU9ERSAwCnwgI2RlZmluZSBMU1RBVF9GT0xMT1dT X1NMQVNIRURfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhB VkVfR0VUT1BUX0xPTkdfT05MWSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VURU5WIDEKfCAjZGVm aW5lIHJlc3RyaWN0IF9fcmVzdHJpY3QKfCAjZGVmaW5lIEhBVkVfTE9OR19MT05HX0lOVCAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfTUVNUkNIUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfQUxBUk0gMQp8 ICNkZWZpbmUgSEFWRV9TSUdTRVRfVCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX1QgMQp8ICNkZWZp bmUgSEFWRV9TVFJVQ1RfVE1fVE1fWk9ORSAxCnwgI2RlZmluZSBIQVZFX1RNX1pPTkUgMQp8ICNk ZWZpbmUgSEFWRV9UTV9HTVRPRkYgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUlRPSU1BWCAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfU1RSVE9VTUFYIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19VVElN RVMgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVVRJTUJVRiAxCnwgI2RlZmluZSBHRVRHUk9VUFNf VCBnaWRfdAp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFW RV9TWVNfQUNMX0ggMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAvKiBPdmVycmlkZSBh bnkgR0NDIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4KfCAgICBVc2UgY2hh ciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBHQ0MKfCAgICBi dWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHku ICAqLwp8ICNpZmRlZiBfX2NwbHVzcGx1cwp8IGV4dGVybiAiQyIKfCAjZW5kaWYKfCBjaGFyIGFj bF9nZXRfZmlsZSAoKTsKfCBpbnQKfCBtYWluICgpCnwgewp8IHJldHVybiBhY2xfZ2V0X2ZpbGUg KCk7CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToyNDE4ODogZ2NjIC1vIGNvbmZ0 ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jIC1sYWNsICAtbHB0aHJlYWQgID4mNSAKY29uZmln dXJlOjI0MTg4OiAkPyA9IDAKY29uZmlndXJlOjI0MjA1OiByZXN1bHQ6IC1sYWNsCmNvbmZpZ3Vy ZToyNDIyMTogY2hlY2tpbmcgZm9yIGFjbF9nZXRfZmlsZQpjb25maWd1cmU6MjQyMjE6IGdjYyAt byBjb25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAtbGFjbCAtbHB0aHJlYWQgID4mNSAK Y29uZmlndXJlOjI0MjIxOiAkPyA9IDAKY29uZmlndXJlOjI0MjIxOiByZXN1bHQ6IHllcwpjb25m aWd1cmU6MjQyMjE6IGNoZWNraW5nIGZvciBhY2xfZ2V0X2ZkCmNvbmZpZ3VyZToyNDIyMTogZ2Nj IC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jIC1sYWNsIC1scHRocmVhZCAgPiY1 IApjb25maWd1cmU6MjQyMjE6ICQ/ID0gMApjb25maWd1cmU6MjQyMjE6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZToyNDIyMTogY2hlY2tpbmcgZm9yIGFjbF9zZXRfZmlsZQpjb25maWd1cmU6MjQyMjE6 IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAtbGFjbCAtbHB0aHJlYWQg ID4mNSAKY29uZmlndXJlOjI0MjIxOiAkPyA9IDAKY29uZmlndXJlOjI0MjIxOiByZXN1bHQ6IHll cwpjb25maWd1cmU6MjQyMjE6IGNoZWNraW5nIGZvciBhY2xfc2V0X2ZkCmNvbmZpZ3VyZToyNDIy MTogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jIC1sYWNsIC1scHRocmVh ZCAgPiY1IApjb25maWd1cmU6MjQyMjE6ICQ/ID0gMApjb25maWd1cmU6MjQyMjE6IHJlc3VsdDog eWVzCmNvbmZpZ3VyZToyNDIyMTogY2hlY2tpbmcgZm9yIGFjbF9mcmVlCmNvbmZpZ3VyZToyNDIy MTogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jIC1sYWNsIC1scHRocmVh ZCAgPiY1IApjb25maWd1cmU6MjQyMjE6ICQ/ID0gMApjb25maWd1cmU6MjQyMjE6IHJlc3VsdDog eWVzCmNvbmZpZ3VyZToyNDIyMTogY2hlY2tpbmcgZm9yIGFjbF9mcm9tX21vZGUKY29uZmlndXJl OjI0MjIxOiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgLWxhY2wgLWxw dGhyZWFkICA+JjUgCmNvbmZpZ3VyZToyNDIyMTogJD8gPSAwCmNvbmZpZ3VyZToyNDIyMTogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjI0MjIxOiBjaGVja2luZyBmb3IgYWNsX2Zyb21fdGV4dApjb25m aWd1cmU6MjQyMjE6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAtbGFj bCAtbHB0aHJlYWQgID4mNSAKY29uZmlndXJlOjI0MjIxOiAkPyA9IDAKY29uZmlndXJlOjI0MjIx OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjQyMjE6IGNoZWNraW5nIGZvciBhY2xfZGVsZXRlX2Rl Zl9maWxlCmNvbmZpZ3VyZToyNDIyMTogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25m dGVzdC5jIC1sYWNsIC1scHRocmVhZCAgPiY1IApjb25maWd1cmU6MjQyMjE6ICQ/ID0gMApjb25m aWd1cmU6MjQyMjE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNDIyMTogY2hlY2tpbmcgZm9yIGFj bF9leHRlbmRlZF9maWxlCmNvbmZpZ3VyZToyNDIyMTogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIg ICAgICBjb25mdGVzdC5jIC1sYWNsIC1scHRocmVhZCAgPiY1IApjb25maWd1cmU6MjQyMjE6ICQ/ ID0gMApjb25maWd1cmU6MjQyMjE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNDIyMTogY2hlY2tp bmcgZm9yIGFjbF9kZWxldGVfZmRfbnAKY29uZmlndXJlOjI0MjIxOiBnY2MgLW8gY29uZnRlc3Qg LWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgLWxhY2wgLWxwdGhyZWFkICA+JjUgCi90bXAvY2NHNXpv Q3oubzogSW4gZnVuY3Rpb24gYG1haW4nOgovaG9tZS9kZWVjaC9Eb3dubG9hZHMvZW1hY3MtMjUu MS9jb25mdGVzdC5jOjMxOTogdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgYWNsX2RlbGV0ZV9mZF9u cCcKY29sbGVjdDI6IGVycm9yOiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVzCmNvbmZpZ3VyZToy NDIyMTogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZz LmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8ICNkZWZpbmUgUEFDS0FH RV9UQVJOQU1FICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMjUuMSIKfCAjZGVm aW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1hY3MgMjUuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVH UkVQT1JUICJidWctZ251LWVtYWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0 cDovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIFBBQ0tBR0UgImVtYWNz Igp8ICNkZWZpbmUgVkVSU0lPTiAiMjUuMSIKfCAjZGVmaW5lIE1BSUxfVVNFX1BPUCAxCnwgI2Rl ZmluZSBIQVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1RaU0VUIDEKfCAjZGVmaW5lIEhBVkVf RkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NF U1NBVCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEK fCAjZGVmaW5lIEhBVkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5l IEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFW RV9NS09TVEVNUCAxCnwgI2RlZmluZSBIQVZFX1BJUEUyIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVD VCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEK fCAjZGVmaW5lIEhBVkVfU1RSVE9VTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2Rl ZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfVElNRUdNIDEKfCAjZGVmaW5l IEhBVkVfRlVUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVNBVCAxCnwgI2RlZmluZSBIQVZF X0ZVVElNRU5TIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVOU0FUIDEKfCAjZGVmaW5lIEhBVkVfTFVU SU1FUyAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRUNV UkVfR0VURU5WIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19U WVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJ Ql9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAx CnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8 ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVm aW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAjZGVmaW5lIF9E QVJXSU5fQ19TT1VSQ0UgMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19VU0Vf TUlOR1dfQU5TSV9TVERJTyAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8 ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9VU0VfNjRfQklUX0lO T0RFIDEKfCAjZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBIQVZFX1NZ U19TT1VORENBUkRfSCAxCnwgI2RlZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VO RCAxCnwgI2RlZmluZSBIQVZFX1NZU19TWVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9QVFlfSCAx CnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05B TUVfSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUF9IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNk ZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVm aW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUg SEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX0VYRUNJTkZPX0ggMQp8ICNkZWZpbmUgSEFW RV9TVERJT19FWFRfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJ TlRfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VM RUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVf SCAxCnwgI2RlZmluZSBIQVZFX1BFUlNPTkFMSVRZX0xJTlVYMzIgMQp8ICNkZWZpbmUgSEFWRV9M SU5VWF9TWVNJTkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwgI2RlZmluZSBI QVZFX1RFUk1fSCAxCnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX1NZU19TSUdMSVNUIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmlu ZSBIQVZFX05FVF9JRl9IIDEKfCAjZGVmaW5lIEhBVkVfSUZBRERSU19IIDEKfCAjZGVmaW5lIEhB VkVfU1RSVUNUX0lGUkVRX0lGUl9GTEFHUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9J RlJfSFdBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9ORVRNQVNLIDEKfCAj ZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9CUk9BREFERFIgMQp8ICNkZWZpbmUgSEFWRV9T VFJVQ1RfSUZSRVFfSUZSX0FERFIgMQp8ICNkZWZpbmUgSEFWRV9MT05HX0ZJTEVfTkFNRVMgMQp8 ICNkZWZpbmUgSEFWRV9TWVNfVkxJTUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9EQVRBX1NUQVJUIDEK fCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9NTUFQIDEKfCAjZGVm aW5lIEhBVkVfUFRIUkVBRCAxCnwgI2RlZmluZSBIQVZFX1hLQiAxCnwgI2RlZmluZSBIQVZFX1hS TVNFVERBVEFCQVNFIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RSSU5HIDEKfCAj ZGVmaW5lIEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhBVkVfWDExUjYg MQp8ICNkZWZpbmUgSEFWRV9YX0kxOE4gMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9YSU0gMQp8ICNk ZWZpbmUgSEFWRV9SU1ZHIDEKfCAjZGVmaW5lIEhBVkVfSU1BR0VNQUdJQ0sgMQp8ICNkZWZpbmUg SEFWRV9NQUdJQ0tFWFBPUlRJTUFHRVBJWEVMUyAxCnwgI2RlZmluZSBIQVZFX01BR0lDS01FUkdF SU1BR0VMQVlFUlMgMQp8ICNkZWZpbmUgSEFWRV9EQlVTIDEKfCAjZGVmaW5lIEhBVkVfREJVU19X QVRDSF9HRVRfVU5JWF9GRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVFlQRV9JU19WQUxJRCAxCnwg I2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfQlVTX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9EQlVT X1ZBTElEQVRFX1BBVEggMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0lOVEVSRkFDRSAx CnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfTUVNQkVSIDEKfCAjZGVmaW5lIEhBVkVfR1NF VFRJTkdTIDEKfCAjZGVmaW5lIEhBVkVfR0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9HTlVUTFMgMQp8 ICNkZWZpbmUgSEFWRV9HTlVUTFMzIDEKfCAjZGVmaW5lIEhBVkVfSU5PVElGWSAxCnwgI2RlZmlu ZSBVU0VfRklMRV9OT1RJRlkgMQp8ICNkZWZpbmUgSEFWRV9YMTFYVFI2IDEKfCAjZGVmaW5lIFVT RV9UT09MS0lUX1NDUk9MTF9CQVJTIDEKfCAjZGVmaW5lIEhBVkVfWElNIDEKfCAjZGVmaW5lIFVT RV9YSU0gMQp8ICNkZWZpbmUgWFJlZ2lzdGVySU1JbnN0YW50aWF0ZUNhbGxiYWNrX2FyZzYgWFBv aW50ZXIKfCAjZGVmaW5lIEhBVkVfWEZUIDEKfCAjZGVmaW5lIEhBVkVfRlJFRVRZUEUgMQp8ICNk ZWZpbmUgSEFWRV9MSUJPVEYgMQp8ICNkZWZpbmUgSEFWRV9PVEZfR0VUX1ZBUklBVElPTl9HTFlQ SFMgMQp8ICNkZWZpbmUgSEFWRV9NMTdOX0ZMVCAxCnwgI2RlZmluZSBVU0VfWENCIDEKfCAjZGVm aW5lIEhBVkVfWFBNIDEKfCAjZGVmaW5lIEhBVkVfSlBFRyAxCnwgI2RlZmluZSBIQVZFX1pMSUIg MQp8ICNkZWZpbmUgSEFWRV9QTkcgMQp8ICNkZWZpbmUgSEFWRV9USUZGIDEKfCAjZGVmaW5lIEhB VkVfR0lGIDEKfCAjZGVmaW5lIEhBVkVfR1BNIDEKfCAjZGVmaW5lIEhBVkVfWF9TTSAxCnwgI2Rl ZmluZSBIQVZFX1hSQU5EUiAxCnwgI2RlZmluZSBIQVZFX1hJTkVSQU1BIDEKfCAjZGVmaW5lIEhB VkVfWEZJWEVTIDEKfCAjZGVmaW5lIEhBVkVfTElCWE1MMiAxCnwgI2RlZmluZSBIQVZFX0hfRVJS Tk8gMQp8ICNkZWZpbmUgTUFJTF9VU0VfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9BQ0NFUFQ0IDEK fCAjZGVmaW5lIEhBVkVfRkNIRElSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNk ZWZpbmUgSEFWRV9HRVRSVVNBR0UgMQp8ICNkZWZpbmUgSEFWRV9HRVRfQ1VSUkVOVF9ESVJfTkFN RSAxCnwgI2RlZmluZSBIQVZFX0xSQU5ENDggMQp8ICNkZWZpbmUgSEFWRV9SQU5ET00gMQp8ICNk ZWZpbmUgSEFWRV9SSU5UIDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVf R0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9O RVdMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRS TElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TSFVURE9XTiAxCnwgI2RlZmluZSBIQVZFX0dFVEFERFJJ TkZPIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RS U0lHTkFMIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfU0VORFRP IDEKfCAjZGVmaW5lIEhBVkVfUkVDVkZST00gMQp8ICNkZWZpbmUgSEFWRV9HRVRTT0NLTkFNRSAx CnwgI2RlZmluZSBIQVZFX0dFVFBFRVJOQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUSUZBRERSUyAx CnwgI2RlZmluZSBIQVZFX0ZSRUVJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfR0FJX1NUUkVSUk9S IDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVm aW5lIEhBVkVfRU5EUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUkVOVCAxCnwgI2RlZmluZSBI QVZFX0VOREdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfQ0ZNQUtFUkFXIDEKfCAjZGVmaW5lIEhBVkVf Q0ZTRVRTUEVFRCAxCnwgI2RlZmluZSBIQVZFX0NPUFlTSUdOIDEKfCAjZGVmaW5lIEhBVkVfX19F WEVDVVRBQkxFX1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVfTE9HMiAxCnwgI2RlZmluZSBIQVZFX0FM SUdORURfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fVU5XSU5EX0lOSVQgMQp8ICNk ZWZpbmUgSEFWRV9GU0VFS08gMQp8ICNkZWZpbmUgSEFWRV9HUkFOVFBUIDEKfCAjZGVmaW5lIEhB VkVfR0VUUFQgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9PUEVOUFQgMQp8ICNkZWZpbmUgVEVSTUlO Rk8gMQp8ICNkZWZpbmUgSEFWRV9USU1FUkZEIDEKfCAjZGVmaW5lIEhBVkVfUkVTX0lOSVQgMQp8 ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVU5JUEFJUl9VTklDT0RFIDEKfCAjZGVmaW5lIEhBVkVfSU5F VF9TT0NLRVRTIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEK fCAjZGVmaW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfRk9S SyAxCnwgI2RlZmluZSBIQVZFX1NOUFJJTlRGIDEKfCAjZGVmaW5lIEhBVkVfR0xJQiAxCnwgI2Rl ZmluZSBIQVZFX0xBTkdJTkZPX0NPREVTRVQgMQp8ICNkZWZpbmUgSEFWRV9NQlNUQVRFX1QgMQp8 ICNkZWZpbmUgQU1QRVJTQU5EX0ZVTExfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1BUWVMgMQp8ICNk ZWZpbmUgSEFWRV9TT0NLRVRTIDEKfCAjZGVmaW5lIE5VTExfREVWSUNFICIvZGV2L251bGwiCnwg I2RlZmluZSBTRVBDSEFSICc6Jwp8ICNkZWZpbmUgc3VicHJvY2Vzc2VzIDEKfCAjZGVmaW5lIFVT RVJfRlVMTF9OQU1FIHB3LT5wd19nZWNvcwp8ICNkZWZpbmUgRElSRUNUT1JZX1NFUCAnLycKfCAj ZGVmaW5lIElTX0RFVklDRV9TRVAoX2NfKSAwCnwgI2RlZmluZSBJU19ESVJFQ1RPUllfU0VQKF9j XykgKChfY18pID09IERJUkVDVE9SWV9TRVApCnwgI2RlZmluZSBJU19BTllfU0VQKF9jXykgKElT X0RJUkVDVE9SWV9TRVAgKF9jXykpCnwgI2RlZmluZSBIQVZFX1BST0NGUyAxCnwgI2RlZmluZSBE RUZBVUxUX1NPVU5EX0RFVklDRSAiL2Rldi9kc3AiCnwgI2RlZmluZSBJTlRFUlJVUFRfSU5QVVQg MQp8ICNkZWZpbmUgTkFSUk9XUFJPVE8gMQp8ICNkZWZpbmUgVU5JWDk4X1BUWVMgMQp8ICNkZWZp bmUgUFRZX0lURVJBVElPTiBpbnQgaTsgZm9yIChpID0gMDsgaSA8IDE7IGkrKykKfCAjZGVmaW5l IFBUWV9UVFlfTkFNRV9TUFJJTlRGIHsgY2hhciAqcHR5bmFtZSA9IDA7IHNpZ3NldF90IGJsb2Nr ZWQ7IHNpZ2VtcHR5c2V0ICgmYmxvY2tlZCk7IHNpZ2FkZHNldCAoJmJsb2NrZWQsIFNJR0NITEQp OyBwdGhyZWFkX3NpZ21hc2sgKFNJR19CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoZ3JhbnRwdCAo ZmQpICE9IC0xICYmIHVubG9ja3B0IChmZCkgIT0gLTEpIHB0eW5hbWUgPSBwdHNuYW1lKGZkKTsg cHRocmVhZF9zaWdtYXNrIChTSUdfVU5CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoIXB0eW5hbWUp IHsgZW1hY3NfY2xvc2UgKGZkKTsgcmV0dXJuIC0xOyB9IHNucHJpbnRmIChwdHlfbmFtZSwgUFRZ X05BTUVfU0laRSwgIiVzIiwgcHR5bmFtZSk7IH0KfCAjZGVmaW5lIFBUWV9PUEVOIGRvIHsgZmQg PSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fQ0xPRVhFQyB8IE9fTk9DVFRZKTsgaWYgKGZkIDwg MCAmJiBlcnJubyA9PSBFSU5WQUwpIGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX05PQ1RU WSk7IH0gd2hpbGUgKGZhbHNlKQp8ICNkZWZpbmUgUFRZX05BTUVfU1BSSU5URiAvKiovCnwgI2Rl ZmluZSBTSUdOQUxTX1ZJQV9DSEFSQUNURVJTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAx CnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgSEFWRV9fU0VUSk1QIDEKfCAj ZGVmaW5lIEhBVkVfU0lHU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU1RBQ0tfT1ZFUkZMT1dfSEFO RExJTkcgMQp8ICNkZWZpbmUgVVNHIC8qKi8KfCAjZGVmaW5lIEdOVV9MSU5VWCAvKiovCnwgI2Rl ZmluZSBVU0FCTEVfRklPTlJFQUQgMQp8ICNkZWZpbmUgVVNBQkxFX1NJR0lPIDEKfCAjZGVmaW5l IENPUFlSSUdIVCAiQ29weXJpZ2h0IChDKSAyMDE2IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwg SW5jLiIKfCAjZGVmaW5lIFRFUk1fSEVBREVSICJ4dGVybS5oIgp8ICNkZWZpbmUgRU1BQ1NfQ09O RklHVVJBVElPTiAieDg2XzY0LXVua25vd24tbGludXgtZ251Igp8ICNkZWZpbmUgRU1BQ1NfQ09O RklHX09QVElPTlMgIi0td2l0aC14LXRvb2xraXQ9bHVjaWQiCnwgI2RlZmluZSBIQVZFX1hfV0lO RE9XUyAxCnwgI2RlZmluZSBVU0VfWF9UT09MS0lUIDEKfCAjZGVmaW5lIFVTRV9MVUNJRCAxCnwg I2RlZmluZSBIQVZFX1gxMSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9BVFRSSUJVVEVfQUxJR05F RCAxCnwgI2RlZmluZSBHTlVfTUFMTE9DIDEKfCAjZGVmaW5lIFJFTF9BTExPQyAxCnwgI2RlZmlu ZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVf VU5TSUdORURfTE9OR19MT05HX0lOVCAxCnwgI2RlZmluZSBIQVZFX0M5OV9TVFJUT0xEIDEKfCAj ZGVmaW5lIEhBVkVfRU5WSVJPTl9ERUNMIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GREFUQVNZTkMg MQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUk1PREUgMAp8ICNkZWZpbmUgTFNUQVRfRk9MTE9XU19T TEFTSEVEX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZF X0dFVE9QVF9MT05HX09OTFkgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVEVOViAxCnwgI2RlZmlu ZSByZXN0cmljdCBfX3Jlc3RyaWN0CnwgI2RlZmluZSBIQVZFX0xPTkdfTE9OR19JTlQgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX01FTVJDSFIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0FMQVJNIDEKfCAj ZGVmaW5lIEhBVkVfU0lHU0VUX1QgMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9UIDEKfCAjZGVmaW5l IEhBVkVfU1RSVUNUX1RNX1RNX1pPTkUgMQp8ICNkZWZpbmUgSEFWRV9UTV9aT05FIDEKfCAjZGVm aW5lIEhBVkVfVE1fR01UT0ZGIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJUT0lNQVggMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX1NUUlRPVU1BWCAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVVRJTUVT IDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1VUSU1CVUYgMQp8ICNkZWZpbmUgR0VUR1JPVVBTX1Qg Z2lkX3QKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVf U1lTX0FDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVf QUNMX0dFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRklMRSAxCnwgI2RlZmluZSBIQVZF X0FDTF9TRVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJFRSAxCnwgI2RlZmluZSBIQVZFX0FD TF9GUk9NX01PREUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9URVhUIDEKfCAjZGVmaW5lIEhB VkVfQUNMX0RFTEVURV9ERUZfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9FWFRFTkRFRF9GSUxF IDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgLyogRGVmaW5lIGFjbF9kZWxldGVfZmRfbnAg dG8gYW4gaW5ub2N1b3VzIHZhcmlhbnQsIGluIGNhc2UgPGxpbWl0cy5oPiBkZWNsYXJlcyBhY2xf ZGVsZXRlX2ZkX25wLgp8ICAgIEZvciBleGFtcGxlLCBIUC1VWCAxMWkgPGxpbWl0cy5oPiBkZWNs YXJlcyBnZXR0aW1lb2ZkYXkuICAqLwp8ICNkZWZpbmUgYWNsX2RlbGV0ZV9mZF9ucCBpbm5vY3Vv dXNfYWNsX2RlbGV0ZV9mZF9ucAp8IAp8IC8qIFN5c3RlbSBoZWFkZXIgdG8gZGVmaW5lIF9fc3R1 YiBtYWNyb3MgYW5kIGhvcGVmdWxseSBmZXcgcHJvdG90eXBlcywKfCAgICAgd2hpY2ggY2FuIGNv bmZsaWN0IHdpdGggY2hhciBhY2xfZGVsZXRlX2ZkX25wICgpOyBiZWxvdy4KfCAgICAgUHJlZmVy IDxsaW1pdHMuaD4gdG8gPGFzc2VydC5oPiBpZiBfX1NURENfXyBpcyBkZWZpbmVkLCBzaW5jZQp8 ICAgICA8bGltaXRzLmg+IGV4aXN0cyBldmVuIG9uIGZyZWVzdGFuZGluZyBjb21waWxlcnMuICAq Lwp8IAp8ICNpZmRlZiBfX1NURENfXwp8ICMgaW5jbHVkZSA8bGltaXRzLmg+CnwgI2Vsc2UKfCAj IGluY2x1ZGUgPGFzc2VydC5oPgp8ICNlbmRpZgp8IAp8ICN1bmRlZiBhY2xfZGVsZXRlX2ZkX25w CnwgCnwgLyogT3ZlcnJpZGUgYW55IEdDQyBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4g ZXJyb3IuCnwgICAgVXNlIGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2ggdGhlIHJldHVybiB0 eXBlIG9mIGEgR0NDCnwgICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMgYXJndW1lbnQgcHJvdG90eXBl IHdvdWxkIHN0aWxsIGFwcGx5LiAgKi8KfCAjaWZkZWYgX19jcGx1c3BsdXMKfCBleHRlcm4gIkMi CnwgI2VuZGlmCnwgY2hhciBhY2xfZGVsZXRlX2ZkX25wICgpOwp8IC8qIFRoZSBHTlUgQyBsaWJy YXJ5IGRlZmluZXMgdGhpcyBmb3IgZnVuY3Rpb25zIHdoaWNoIGl0IGltcGxlbWVudHMKfCAgICAg dG8gYWx3YXlzIGZhaWwgd2l0aCBFTk9TWVMuICBTb21lIGZ1bmN0aW9ucyBhcmUgYWN0dWFsbHkg bmFtZWQKfCAgICAgc29tZXRoaW5nIHN0YXJ0aW5nIHdpdGggX18gYW5kIHRoZSBub3JtYWwgbmFt ZSBpcyBhbiBhbGlhcy4gICovCnwgI2lmIGRlZmluZWQgX19zdHViX2FjbF9kZWxldGVfZmRfbnAg fHwgZGVmaW5lZCBfX3N0dWJfX19hY2xfZGVsZXRlX2ZkX25wCnwgY2hva2UgbWUKfCAjZW5kaWYK fCAKfCBpbnQKfCBtYWluICgpCnwgewp8IHJldHVybiBhY2xfZGVsZXRlX2ZkX25wICgpOwp8ICAg Owp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MjQyMjE6IHJlc3VsdDogbm8KY29uZmlndXJl OjI0MjIxOiBjaGVja2luZyBmb3IgYWNsX2RlbGV0ZV9maWxlX25wCmNvbmZpZ3VyZToyNDIyMTog Z2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jIC1sYWNsIC1scHRocmVhZCAg PiY1IAovdG1wL2NjYjdwQlFDLm86IEluIGZ1bmN0aW9uIGBtYWluJzoKL2hvbWUvZGVlY2gvRG93 bmxvYWRzL2VtYWNzLTI1LjEvY29uZnRlc3QuYzozMTk6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8g YGFjbF9kZWxldGVfZmlsZV9ucCcKY29sbGVjdDI6IGVycm9yOiBsZCByZXR1cm5lZCAxIGV4aXQg c3RhdHVzCmNvbmZpZ3VyZToyNDIyMTogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0g d2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNz Igp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVS U0lPTiAiMjUuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1hY3MgMjUuMSIKfCAj ZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ251LWVtYWNzQGdudS5vcmciCnwgI2RlZmlu ZSBQQUNLQUdFX1VSTCAiaHR0cDovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVm aW5lIFBBQ0tBR0UgImVtYWNzIgp8ICNkZWZpbmUgVkVSU0lPTiAiMjUuMSIKfCAjZGVmaW5lIE1B SUxfVVNFX1BPUCAxCnwgI2RlZmluZSBIQVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1RaU0VU IDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTktBVCAxCnwg I2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5l IEhBVkVfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZF X0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfTFNU QVQgMQp8ICNkZWZpbmUgSEFWRV9NS09TVEVNUCAxCnwgI2RlZmluZSBIQVZFX1BJUEUyIDEKfCAj ZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5l IEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9VTUFYIDEKfCAjZGVmaW5lIEhB VkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVf VElNRUdNIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVNB VCAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRU5TIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVOU0FUIDEK fCAjZGVmaW5lIEhBVkVfTFVUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8 ICNkZWZpbmUgSEFWRV9TRUNVUkVfR0VURU5WIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwg I2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwg I2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZp bmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBI QVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZF X1VOSVNURF9IIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIF9BTExfU09V UkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0Ug MQp8ICNkZWZpbmUgX19VU0VfTUlOR1dfQU5TSV9TVERJTyAxCnwgI2RlZmluZSBfUE9TSVhfUFRI UkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RB UldJTl9VU0VfNjRfQklUX0lOT0RFIDEKfCAjZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUvbGludXgi CnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAxCnwgI2RlZmluZSBIQVZFX0FMU0EgMQp8 ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwgI2RlZmluZSBIQVZFX1NZU19TWVNJTkZPX0ggMQp8ICNk ZWZpbmUgSEFWRV9QVFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5l IEhBVkVfVVRNUF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhB VkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX0VYRUNJTkZP X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJT19FWFRfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8 ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAj ZGVmaW5lIEhBVkVfVVRJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BFUlNPTkFMSVRZX0xJTlVYMzIg MQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZU0lORk9f VU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAxCnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJ TUUgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NZU19TSUdMSVNUIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX05FVF9JRl9IIDEKfCAjZGVmaW5lIEhBVkVfSUZBRERS U19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9GTEFHUyAxCnwgI2RlZmluZSBI QVZFX1NUUlVDVF9JRlJFUV9JRlJfSFdBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVR X0lGUl9ORVRNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9CUk9BREFERFIg MQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0FERFIgMQp8ICNkZWZpbmUgSEFWRV9M T05HX0ZJTEVfTkFNRVMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVkxJTUlUX0ggMQp8ICNkZWZpbmUg SEFWRV9EQVRBX1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUg SEFWRV9NTUFQIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRCAxCnwgI2RlZmluZSBIQVZFX1hLQiAx CnwgI2RlZmluZSBIQVZFX1hSTVNFVERBVEFCQVNFIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTlJF U09VUkNFU1RSSU5HIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAj ZGVmaW5lIEhBVkVfWDExUjYgMQp8ICNkZWZpbmUgSEFWRV9YX0kxOE4gMQp8ICNkZWZpbmUgSEFW RV9YMTFSNl9YSU0gMQp8ICNkZWZpbmUgSEFWRV9SU1ZHIDEKfCAjZGVmaW5lIEhBVkVfSU1BR0VN QUdJQ0sgMQp8ICNkZWZpbmUgSEFWRV9NQUdJQ0tFWFBPUlRJTUFHRVBJWEVMUyAxCnwgI2RlZmlu ZSBIQVZFX01BR0lDS01FUkdFSU1BR0VMQVlFUlMgMQp8ICNkZWZpbmUgSEFWRV9EQlVTIDEKfCAj ZGVmaW5lIEhBVkVfREJVU19XQVRDSF9HRVRfVU5JWF9GRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNf VFlQRV9JU19WQUxJRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfQlVTX05BTUUgMQp8 ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX1BBVEggMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZB TElEQVRFX0lOVEVSRkFDRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfTUVNQkVSIDEK fCAjZGVmaW5lIEhBVkVfR1NFVFRJTkdTIDEKfCAjZGVmaW5lIEhBVkVfR0NPTkYgMQp8ICNkZWZp bmUgSEFWRV9HTlVUTFMgMQp8ICNkZWZpbmUgSEFWRV9HTlVUTFMzIDEKfCAjZGVmaW5lIEhBVkVf SU5PVElGWSAxCnwgI2RlZmluZSBVU0VfRklMRV9OT1RJRlkgMQp8ICNkZWZpbmUgSEFWRV9YMTFY VFI2IDEKfCAjZGVmaW5lIFVTRV9UT09MS0lUX1NDUk9MTF9CQVJTIDEKfCAjZGVmaW5lIEhBVkVf WElNIDEKfCAjZGVmaW5lIFVTRV9YSU0gMQp8ICNkZWZpbmUgWFJlZ2lzdGVySU1JbnN0YW50aWF0 ZUNhbGxiYWNrX2FyZzYgWFBvaW50ZXIKfCAjZGVmaW5lIEhBVkVfWEZUIDEKfCAjZGVmaW5lIEhB VkVfRlJFRVRZUEUgMQp8ICNkZWZpbmUgSEFWRV9MSUJPVEYgMQp8ICNkZWZpbmUgSEFWRV9PVEZf R0VUX1ZBUklBVElPTl9HTFlQSFMgMQp8ICNkZWZpbmUgSEFWRV9NMTdOX0ZMVCAxCnwgI2RlZmlu ZSBVU0VfWENCIDEKfCAjZGVmaW5lIEhBVkVfWFBNIDEKfCAjZGVmaW5lIEhBVkVfSlBFRyAxCnwg I2RlZmluZSBIQVZFX1pMSUIgMQp8ICNkZWZpbmUgSEFWRV9QTkcgMQp8ICNkZWZpbmUgSEFWRV9U SUZGIDEKfCAjZGVmaW5lIEhBVkVfR0lGIDEKfCAjZGVmaW5lIEhBVkVfR1BNIDEKfCAjZGVmaW5l IEhBVkVfWF9TTSAxCnwgI2RlZmluZSBIQVZFX1hSQU5EUiAxCnwgI2RlZmluZSBIQVZFX1hJTkVS QU1BIDEKfCAjZGVmaW5lIEhBVkVfWEZJWEVTIDEKfCAjZGVmaW5lIEhBVkVfTElCWE1MMiAxCnwg I2RlZmluZSBIQVZFX0hfRVJSTk8gMQp8ICNkZWZpbmUgTUFJTF9VU0VfRkxPQ0sgMQp8ICNkZWZp bmUgSEFWRV9BQ0NFUFQ0IDEKfCAjZGVmaW5lIEhBVkVfRkNIRElSIDEKfCAjZGVmaW5lIEhBVkVf R0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNBR0UgMQp8ICNkZWZpbmUgSEFWRV9H RVRfQ1VSUkVOVF9ESVJfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0xSQU5ENDggMQp8ICNkZWZpbmUg SEFWRV9SQU5ET00gMQp8ICNkZWZpbmUgSEFWRV9SSU5UIDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNU IDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUg MQp8ICNkZWZpbmUgSEFWRV9ORVdMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSTElNSVQgMQp8 ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TSFVURE9XTiAxCnwgI2Rl ZmluZSBIQVZFX0dFVEFERFJJTkZPIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEK fCAjZGVmaW5lIEhBVkVfU1RSU0lHTkFMIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAj ZGVmaW5lIEhBVkVfU0VORFRPIDEKfCAjZGVmaW5lIEhBVkVfUkVDVkZST00gMQp8ICNkZWZpbmUg SEFWRV9HRVRTT0NLTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFBFRVJOQU1FIDEKfCAjZGVmaW5l IEhBVkVfR0VUSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVJRkFERFJTIDEKfCAjZGVmaW5l IEhBVkVfR0FJX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAxCnwgI2RlZmluZSBIQVZF X0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRH UkVOVCAxCnwgI2RlZmluZSBIQVZFX0VOREdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfQ0ZNQUtFUkFX IDEKfCAjZGVmaW5lIEhBVkVfQ0ZTRVRTUEVFRCAxCnwgI2RlZmluZSBIQVZFX0NPUFlTSUdOIDEK fCAjZGVmaW5lIEhBVkVfX19FWEVDVVRBQkxFX1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVfTE9HMiAx CnwgI2RlZmluZSBIQVZFX0FMSUdORURfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5f VU5XSU5EX0lOSVQgMQp8ICNkZWZpbmUgSEFWRV9GU0VFS08gMQp8ICNkZWZpbmUgSEFWRV9HUkFO VFBUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFQgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9PUEVOUFQg MQp8ICNkZWZpbmUgVEVSTUlORk8gMQp8ICNkZWZpbmUgSEFWRV9USU1FUkZEIDEKfCAjZGVmaW5l IEhBVkVfUkVTX0lOSVQgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVU5JUEFJUl9VTklDT0RFIDEK fCAjZGVmaW5lIEhBVkVfSU5FVF9TT0NLRVRTIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2Rl ZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwgI2RlZmlu ZSBIQVZFX1dPUktJTkdfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1NOUFJJTlRGIDEKfCAjZGVmaW5l IEhBVkVfR0xJQiAxCnwgI2RlZmluZSBIQVZFX0xBTkdJTkZPX0NPREVTRVQgMQp8ICNkZWZpbmUg SEFWRV9NQlNUQVRFX1QgMQp8ICNkZWZpbmUgQU1QRVJTQU5EX0ZVTExfTkFNRSAxCnwgI2RlZmlu ZSBIQVZFX1BUWVMgMQp8ICNkZWZpbmUgSEFWRV9TT0NLRVRTIDEKfCAjZGVmaW5lIE5VTExfREVW SUNFICIvZGV2L251bGwiCnwgI2RlZmluZSBTRVBDSEFSICc6Jwp8ICNkZWZpbmUgc3VicHJvY2Vz c2VzIDEKfCAjZGVmaW5lIFVTRVJfRlVMTF9OQU1FIHB3LT5wd19nZWNvcwp8ICNkZWZpbmUgRElS RUNUT1JZX1NFUCAnLycKfCAjZGVmaW5lIElTX0RFVklDRV9TRVAoX2NfKSAwCnwgI2RlZmluZSBJ U19ESVJFQ1RPUllfU0VQKF9jXykgKChfY18pID09IERJUkVDVE9SWV9TRVApCnwgI2RlZmluZSBJ U19BTllfU0VQKF9jXykgKElTX0RJUkVDVE9SWV9TRVAgKF9jXykpCnwgI2RlZmluZSBIQVZFX1BS T0NGUyAxCnwgI2RlZmluZSBERUZBVUxUX1NPVU5EX0RFVklDRSAiL2Rldi9kc3AiCnwgI2RlZmlu ZSBJTlRFUlJVUFRfSU5QVVQgMQp8ICNkZWZpbmUgTkFSUk9XUFJPVE8gMQp8ICNkZWZpbmUgVU5J WDk4X1BUWVMgMQp8ICNkZWZpbmUgUFRZX0lURVJBVElPTiBpbnQgaTsgZm9yIChpID0gMDsgaSA8 IDE7IGkrKykKfCAjZGVmaW5lIFBUWV9UVFlfTkFNRV9TUFJJTlRGIHsgY2hhciAqcHR5bmFtZSA9 IDA7IHNpZ3NldF90IGJsb2NrZWQ7IHNpZ2VtcHR5c2V0ICgmYmxvY2tlZCk7IHNpZ2FkZHNldCAo JmJsb2NrZWQsIFNJR0NITEQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19CTE9DSywgJmJsb2NrZWQs IDApOyBpZiAoZ3JhbnRwdCAoZmQpICE9IC0xICYmIHVubG9ja3B0IChmZCkgIT0gLTEpIHB0eW5h bWUgPSBwdHNuYW1lKGZkKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfVU5CTE9DSywgJmJsb2NrZWQs IDApOyBpZiAoIXB0eW5hbWUpIHsgZW1hY3NfY2xvc2UgKGZkKTsgcmV0dXJuIC0xOyB9IHNucHJp bnRmIChwdHlfbmFtZSwgUFRZX05BTUVfU0laRSwgIiVzIiwgcHR5bmFtZSk7IH0KfCAjZGVmaW5l IFBUWV9PUEVOIGRvIHsgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fQ0xPRVhFQyB8IE9f Tk9DVFRZKTsgaWYgKGZkIDwgMCAmJiBlcnJubyA9PSBFSU5WQUwpIGZkID0gcG9zaXhfb3BlbnB0 IChPX1JEV1IgfCBPX05PQ1RUWSk7IH0gd2hpbGUgKGZhbHNlKQp8ICNkZWZpbmUgUFRZX05BTUVf U1BSSU5URiAvKiovCnwgI2RlZmluZSBTSUdOQUxTX1ZJQV9DSEFSQUNURVJTIDEKfCAjZGVmaW5l IEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUg SEFWRV9fU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVf U1RBQ0tfT1ZFUkZMT1dfSEFORExJTkcgMQp8ICNkZWZpbmUgVVNHIC8qKi8KfCAjZGVmaW5lIEdO VV9MSU5VWCAvKiovCnwgI2RlZmluZSBVU0FCTEVfRklPTlJFQUQgMQp8ICNkZWZpbmUgVVNBQkxF X1NJR0lPIDEKfCAjZGVmaW5lIENPUFlSSUdIVCAiQ29weXJpZ2h0IChDKSAyMDE2IEZyZWUgU29m dHdhcmUgRm91bmRhdGlvbiwgSW5jLiIKfCAjZGVmaW5lIFRFUk1fSEVBREVSICJ4dGVybS5oIgp8 ICNkZWZpbmUgRU1BQ1NfQ09ORklHVVJBVElPTiAieDg2XzY0LXVua25vd24tbGludXgtZ251Igp8 ICNkZWZpbmUgRU1BQ1NfQ09ORklHX09QVElPTlMgIi0td2l0aC14LXRvb2xraXQ9bHVjaWQiCnwg I2RlZmluZSBIQVZFX1hfV0lORE9XUyAxCnwgI2RlZmluZSBVU0VfWF9UT09MS0lUIDEKfCAjZGVm aW5lIFVTRV9MVUNJRCAxCnwgI2RlZmluZSBIQVZFX1gxMSAxCnwgI2RlZmluZSBIQVZFX1NUUlVD VF9BVFRSSUJVVEVfQUxJR05FRCAxCnwgI2RlZmluZSBHTlVfTUFMTE9DIDEKfCAjZGVmaW5lIFJF TF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NB IDEKfCAjZGVmaW5lIEhBVkVfVU5TSUdORURfTE9OR19MT05HX0lOVCAxCnwgI2RlZmluZSBIQVZF X0M5OV9TVFJUT0xEIDEKfCAjZGVmaW5lIEhBVkVfRU5WSVJPTl9ERUNMIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9GREFUQVNZTkMgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUk1PREUgMAp8ICNkZWZp bmUgTFNUQVRfRk9MTE9XU19TTEFTSEVEX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRf SCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9MT05HX09OTFkgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X0dFVEVOViAxCnwgI2RlZmluZSByZXN0cmljdCBfX3Jlc3RyaWN0CnwgI2RlZmluZSBIQVZFX0xP TkdfTE9OR19JTlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX01FTVJDSFIgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX0FMQVJNIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUX1QgMQp8ICNkZWZpbmUgSEFWRV9X Q0hBUl9UIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1RNX1RNX1pPTkUgMQp8ICNkZWZpbmUgSEFW RV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fR01UT0ZGIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9TVFJUT0lNQVggMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUlRPVU1BWCAxCnwgI2RlZmluZSBI QVZFX1dPUktJTkdfVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1VUSU1CVUYgMQp8ICNk ZWZpbmUgR0VUR1JPVVBTX1QgZ2lkX3QKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVREVEFCTEVTSVpF IDEKfCAjZGVmaW5lIEhBVkVfU1lTX0FDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GSUxF IDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRklM RSAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJFRSAx CnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX01PREUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9U RVhUIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0RFTEVURV9ERUZfRklMRSAxCnwgI2RlZmluZSBIQVZF X0FDTF9FWFRFTkRFRF9GSUxFIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgLyogRGVmaW5l IGFjbF9kZWxldGVfZmlsZV9ucCB0byBhbiBpbm5vY3VvdXMgdmFyaWFudCwgaW4gY2FzZSA8bGlt aXRzLmg+IGRlY2xhcmVzIGFjbF9kZWxldGVfZmlsZV9ucC4KfCAgICBGb3IgZXhhbXBsZSwgSFAt VVggMTFpIDxsaW1pdHMuaD4gZGVjbGFyZXMgZ2V0dGltZW9mZGF5LiAgKi8KfCAjZGVmaW5lIGFj bF9kZWxldGVfZmlsZV9ucCBpbm5vY3VvdXNfYWNsX2RlbGV0ZV9maWxlX25wCnwgCnwgLyogU3lz dGVtIGhlYWRlciB0byBkZWZpbmUgX19zdHViIG1hY3JvcyBhbmQgaG9wZWZ1bGx5IGZldyBwcm90 b3R5cGVzLAp8ICAgICB3aGljaCBjYW4gY29uZmxpY3Qgd2l0aCBjaGFyIGFjbF9kZWxldGVfZmls ZV9ucCAoKTsgYmVsb3cuCnwgICAgIFByZWZlciA8bGltaXRzLmg+IHRvIDxhc3NlcnQuaD4gaWYg X19TVERDX18gaXMgZGVmaW5lZCwgc2luY2UKfCAgICAgPGxpbWl0cy5oPiBleGlzdHMgZXZlbiBv biBmcmVlc3RhbmRpbmcgY29tcGlsZXJzLiAgKi8KfCAKfCAjaWZkZWYgX19TVERDX18KfCAjIGlu Y2x1ZGUgPGxpbWl0cy5oPgp8ICNlbHNlCnwgIyBpbmNsdWRlIDxhc3NlcnQuaD4KfCAjZW5kaWYK fCAKfCAjdW5kZWYgYWNsX2RlbGV0ZV9maWxlX25wCnwgCnwgLyogT3ZlcnJpZGUgYW55IEdDQyBp bnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuCnwgICAgVXNlIGNoYXIgYmVjYXVz ZSBpbnQgbWlnaHQgbWF0Y2ggdGhlIHJldHVybiB0eXBlIG9mIGEgR0NDCnwgICAgYnVpbHRpbiBh bmQgdGhlbiBpdHMgYXJndW1lbnQgcHJvdG90eXBlIHdvdWxkIHN0aWxsIGFwcGx5LiAgKi8KfCAj aWZkZWYgX19jcGx1c3BsdXMKfCBleHRlcm4gIkMiCnwgI2VuZGlmCnwgY2hhciBhY2xfZGVsZXRl X2ZpbGVfbnAgKCk7CnwgLyogVGhlIEdOVSBDIGxpYnJhcnkgZGVmaW5lcyB0aGlzIGZvciBmdW5j dGlvbnMgd2hpY2ggaXQgaW1wbGVtZW50cwp8ICAgICB0byBhbHdheXMgZmFpbCB3aXRoIEVOT1NZ Uy4gIFNvbWUgZnVuY3Rpb25zIGFyZSBhY3R1YWxseSBuYW1lZAp8ICAgICBzb21ldGhpbmcgc3Rh cnRpbmcgd2l0aCBfXyBhbmQgdGhlIG5vcm1hbCBuYW1lIGlzIGFuIGFsaWFzLiAgKi8KfCAjaWYg ZGVmaW5lZCBfX3N0dWJfYWNsX2RlbGV0ZV9maWxlX25wIHx8IGRlZmluZWQgX19zdHViX19fYWNs X2RlbGV0ZV9maWxlX25wCnwgY2hva2UgbWUKfCAjZW5kaWYKfCAKfCBpbnQKfCBtYWluICgpCnwg ewp8IHJldHVybiBhY2xfZGVsZXRlX2ZpbGVfbnAgKCk7CnwgICA7CnwgICByZXR1cm4gMDsKfCB9 CmNvbmZpZ3VyZToyNDIyMTogcmVzdWx0OiBubwpjb25maWd1cmU6MjQyMjE6IGNoZWNraW5nIGZv ciBhY2xfY29weV9leHRfbmF0aXZlCmNvbmZpZ3VyZToyNDIyMTogZ2NjIC1vIGNvbmZ0ZXN0IC1n MyAtTzIgICAgICBjb25mdGVzdC5jIC1sYWNsIC1scHRocmVhZCAgPiY1IAovdG1wL2NjRU02dGpK Lm86IEluIGZ1bmN0aW9uIGBtYWluJzoKL2hvbWUvZGVlY2gvRG93bmxvYWRzL2VtYWNzLTI1LjEv Y29uZnRlc3QuYzozMTk6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYGFjbF9jb3B5X2V4dF9uYXRp dmUnCmNvbGxlY3QyOiBlcnJvcjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpjb25maWd1cmU6 MjQyMjE6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVm cy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tB R0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjI1LjEiCnwgI2Rl ZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX0JV R1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0 dHA6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmluZSBQQUNLQUdFICJlbWFj cyIKfCAjZGVmaW5lIFZFUlNJT04gIjI1LjEiCnwgI2RlZmluZSBNQUlMX1VTRV9QT1AgMQp8ICNk ZWZpbmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9UWlNFVCAxCnwgI2RlZmluZSBIQVZF X0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LQVQgMQp8ICNkZWZpbmUgSEFWRV9GQUND RVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJUiAx CnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmlu ZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhB VkVfTUtPU1RFTVAgMQp8ICNkZWZpbmUgSEFWRV9QSVBFMiAxCnwgI2RlZmluZSBIQVZFX1BTRUxF Q1QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAx CnwgI2RlZmluZSBIQVZFX1NUUlRPVU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNk ZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX1RJTUVHTSAxCnwgI2RlZmlu ZSBIQVZFX0ZVVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVTQVQgMQp8ICNkZWZpbmUgSEFW RV9GVVRJTUVOUyAxCnwgI2RlZmluZSBIQVZFX1VUSU1FTlNBVCAxCnwgI2RlZmluZSBIQVZFX0xV VElNRVMgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VD VVJFX0dFVEVOViAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNf VFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERM SUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0gg MQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEK fCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2Rl ZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBf REFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9fVVNF X01JTkdXX0FOU0lfU1RESU8gMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEK fCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fVVNFXzY0X0JJVF9J Tk9ERSAxCnwgI2RlZmluZSBTWVNURU1fVFlQRSAiZ251L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9T WVNfU09VTkRDQVJEX0ggMQp8ICNkZWZpbmUgSEFWRV9BTFNBIDEKfCAjZGVmaW5lIEhBVkVfU09V TkQgMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNO QU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAj ZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2Rl ZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5l IEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5lIEhB VkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RE SU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NF TEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1VUSU1F X0ggMQp8ICNkZWZpbmUgSEFWRV9QRVJTT05BTElUWV9MSU5VWDMyIDEKfCAjZGVmaW5lIEhBVkVf TElOVVhfU1lTSU5GTyAxCnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUg SEFWRV9URVJNX0ggMQp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9TWVNfU0lHTElTVCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZp bmUgSEFWRV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZFX0lGQUREUlNfSCAxCnwgI2RlZmluZSBI QVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFf SUZSX0hXQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwg I2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVf U1RSVUNUX0lGUkVRX0lGUl9BRERSIDEKfCAjZGVmaW5lIEhBVkVfTE9OR19GSUxFX05BTUVTIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1ZMSU1JVF9IIDEKfCAjZGVmaW5lIEhBVkVfREFUQV9TVEFSVCAx CnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2Rl ZmluZSBIQVZFX1BUSFJFQUQgMQp8ICNkZWZpbmUgSEFWRV9YS0IgMQp8ICNkZWZpbmUgSEFWRV9Y Uk1TRVREQVRBQkFTRSAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNPVVJDRVNUUklORyAxCnwg I2RlZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJPRlNDUkVFTiAxCnwgI2RlZmluZSBIQVZFX1gxMVI2 IDEKfCAjZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVmaW5lIEhBVkVfWDExUjZfWElNIDEKfCAj ZGVmaW5lIEhBVkVfUlNWRyAxCnwgI2RlZmluZSBIQVZFX0lNQUdFTUFHSUNLIDEKfCAjZGVmaW5l IEhBVkVfTUFHSUNLRVhQT1JUSU1BR0VQSVhFTFMgMQp8ICNkZWZpbmUgSEFWRV9NQUdJQ0tNRVJH RUlNQUdFTEFZRVJTIDEKfCAjZGVmaW5lIEhBVkVfREJVUyAxCnwgI2RlZmluZSBIQVZFX0RCVVNf V0FUQ0hfR0VUX1VOSVhfRkQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1RZUEVfSVNfVkFMSUQgMQp8 ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0JVU19OQU1FIDEKfCAjZGVmaW5lIEhBVkVfREJV U19WQUxJREFURV9QQVRIIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9JTlRFUkZBQ0Ug MQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX01FTUJFUiAxCnwgI2RlZmluZSBIQVZFX0dT RVRUSU5HUyAxCnwgI2RlZmluZSBIQVZFX0dDT05GIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTIDEK fCAjZGVmaW5lIEhBVkVfR05VVExTMyAxCnwgI2RlZmluZSBIQVZFX0lOT1RJRlkgMQp8ICNkZWZp bmUgVVNFX0ZJTEVfTk9USUZZIDEKfCAjZGVmaW5lIEhBVkVfWDExWFRSNiAxCnwgI2RlZmluZSBV U0VfVE9PTEtJVF9TQ1JPTExfQkFSUyAxCnwgI2RlZmluZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBV U0VfWElNIDEKfCAjZGVmaW5lIFhSZWdpc3RlcklNSW5zdGFudGlhdGVDYWxsYmFja19hcmc2IFhQ b2ludGVyCnwgI2RlZmluZSBIQVZFX1hGVCAxCnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAj ZGVmaW5lIEhBVkVfTElCT1RGIDEKfCAjZGVmaW5lIEhBVkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZ UEhTIDEKfCAjZGVmaW5lIEhBVkVfTTE3Tl9GTFQgMQp8ICNkZWZpbmUgVVNFX1hDQiAxCnwgI2Rl ZmluZSBIQVZFX1hQTSAxCnwgI2RlZmluZSBIQVZFX0pQRUcgMQp8ICNkZWZpbmUgSEFWRV9aTElC IDEKfCAjZGVmaW5lIEhBVkVfUE5HIDEKfCAjZGVmaW5lIEhBVkVfVElGRiAxCnwgI2RlZmluZSBI QVZFX0dJRiAxCnwgI2RlZmluZSBIQVZFX0dQTSAxCnwgI2RlZmluZSBIQVZFX1hfU00gMQp8ICNk ZWZpbmUgSEFWRV9YUkFORFIgMQp8ICNkZWZpbmUgSEFWRV9YSU5FUkFNQSAxCnwgI2RlZmluZSBI QVZFX1hGSVhFUyAxCnwgI2RlZmluZSBIQVZFX0xJQlhNTDIgMQp8ICNkZWZpbmUgSEFWRV9IX0VS Uk5PIDEKfCAjZGVmaW5lIE1BSUxfVVNFX0ZMT0NLIDEKfCAjZGVmaW5lIEhBVkVfQUNDRVBUNCAx CnwgI2RlZmluZSBIQVZFX0ZDSERJUiAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAj ZGVmaW5lIEhBVkVfR0VUUlVTQUdFIDEKfCAjZGVmaW5lIEhBVkVfR0VUX0NVUlJFTlRfRElSX05B TUUgMQp8ICNkZWZpbmUgSEFWRV9MUkFORDQ4IDEKfCAjZGVmaW5lIEhBVkVfUkFORE9NIDEKfCAj ZGVmaW5lIEhBVkVfUklOVCAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZF X0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVf TkVXTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VU UkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9HRVRBRERS SU5GTyAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NU UlNJR05BTCAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX1NFTkRU TyAxCnwgI2RlZmluZSBIQVZFX1JFQ1ZGUk9NIDEKfCAjZGVmaW5lIEhBVkVfR0VUU09DS05BTUUg MQp8ICNkZWZpbmUgSEFWRV9HRVRQRUVSTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVElGQUREUlMg MQp8ICNkZWZpbmUgSEFWRV9GUkVFSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0dBSV9TVFJFUlJP UiAxCnwgI2RlZmluZSBIQVZFX1NZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2Rl ZmluZSBIQVZFX0VORFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUg SEFWRV9FTkRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0NGTUFLRVJBVyAxCnwgI2RlZmluZSBIQVZF X0NGU0VUU1BFRUQgMQp8ICNkZWZpbmUgSEFWRV9DT1BZU0lHTiAxCnwgI2RlZmluZSBIQVZFX19f RVhFQ1VUQUJMRV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9B TElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX1VOV0lORF9JTklUIDEKfCAj ZGVmaW5lIEhBVkVfRlNFRUtPIDEKfCAjZGVmaW5lIEhBVkVfR1JBTlRQVCAxCnwgI2RlZmluZSBI QVZFX0dFVFBUIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfT1BFTlBUIDEKfCAjZGVmaW5lIFRFUk1J TkZPIDEKfCAjZGVmaW5lIEhBVkVfVElNRVJGRCAxCnwgI2RlZmluZSBIQVZFX1JFU19JTklUIDEK fCAjZGVmaW5lIEhBVkVfU1RSVUNUX1VOSVBBSVJfVU5JQ09ERSAxCnwgI2RlZmluZSBIQVZFX0lO RVRfU09DS0VUUyAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9WRk9SSyAx CnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX0ZP UksgMQp8ICNkZWZpbmUgSEFWRV9TTlBSSU5URiAxCnwgI2RlZmluZSBIQVZFX0dMSUIgMQp8ICNk ZWZpbmUgSEFWRV9MQU5HSU5GT19DT0RFU0VUIDEKfCAjZGVmaW5lIEhBVkVfTUJTVEFURV9UIDEK fCAjZGVmaW5lIEFNUEVSU0FORF9GVUxMX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9QVFlTIDEKfCAj ZGVmaW5lIEhBVkVfU09DS0VUUyAxCnwgI2RlZmluZSBOVUxMX0RFVklDRSAiL2Rldi9udWxsIgp8 ICNkZWZpbmUgU0VQQ0hBUiAnOicKfCAjZGVmaW5lIHN1YnByb2Nlc3NlcyAxCnwgI2RlZmluZSBV U0VSX0ZVTExfTkFNRSBwdy0+cHdfZ2Vjb3MKfCAjZGVmaW5lIERJUkVDVE9SWV9TRVAgJy8nCnwg I2RlZmluZSBJU19ERVZJQ0VfU0VQKF9jXykgMAp8ICNkZWZpbmUgSVNfRElSRUNUT1JZX1NFUChf Y18pICgoX2NfKSA9PSBESVJFQ1RPUllfU0VQKQp8ICNkZWZpbmUgSVNfQU5ZX1NFUChfY18pIChJ U19ESVJFQ1RPUllfU0VQIChfY18pKQp8ICNkZWZpbmUgSEFWRV9QUk9DRlMgMQp8ICNkZWZpbmUg REVGQVVMVF9TT1VORF9ERVZJQ0UgIi9kZXYvZHNwIgp8ICNkZWZpbmUgSU5URVJSVVBUX0lOUFVU IDEKfCAjZGVmaW5lIE5BUlJPV1BST1RPIDEKfCAjZGVmaW5lIFVOSVg5OF9QVFlTIDEKfCAjZGVm aW5lIFBUWV9JVEVSQVRJT04gaW50IGk7IGZvciAoaSA9IDA7IGkgPCAxOyBpKyspCnwgI2RlZmlu ZSBQVFlfVFRZX05BTUVfU1BSSU5URiB7IGNoYXIgKnB0eW5hbWUgPSAwOyBzaWdzZXRfdCBibG9j a2VkOyBzaWdlbXB0eXNldCAoJmJsb2NrZWQpOyBzaWdhZGRzZXQgKCZibG9ja2VkLCBTSUdDSExE KTsgcHRocmVhZF9zaWdtYXNrIChTSUdfQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKGdyYW50cHQg KGZkKSAhPSAtMSAmJiB1bmxvY2twdCAoZmQpICE9IC0xKSBwdHluYW1lID0gcHRzbmFtZShmZCk7 IHB0aHJlYWRfc2lnbWFzayAoU0lHX1VOQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKCFwdHluYW1l KSB7IGVtYWNzX2Nsb3NlIChmZCk7IHJldHVybiAtMTsgfSBzbnByaW50ZiAocHR5X25hbWUsIFBU WV9OQU1FX1NJWkUsICIlcyIsIHB0eW5hbWUpOyB9CnwgI2RlZmluZSBQVFlfT1BFTiBkbyB7IGZk ID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX0NMT0VYRUMgfCBPX05PQ1RUWSk7IGlmIChmZCA8 IDAgJiYgZXJybm8gPT0gRUlOVkFMKSBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19OT0NU VFkpOyB9IHdoaWxlIChmYWxzZSkKfCAjZGVmaW5lIFBUWV9OQU1FX1NQUklOVEYgLyoqLwp8ICNk ZWZpbmUgU0lHTkFMU19WSUFfQ0hBUkFDVEVSUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1Mg MQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfX1NFVEpNUCAxCnwg I2RlZmluZSBIQVZFX1NJR1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NUQUNLX09WRVJGTE9XX0hB TkRMSU5HIDEKfCAjZGVmaW5lIFVTRyAvKiovCnwgI2RlZmluZSBHTlVfTElOVVggLyoqLwp8ICNk ZWZpbmUgVVNBQkxFX0ZJT05SRUFEIDEKfCAjZGVmaW5lIFVTQUJMRV9TSUdJTyAxCnwgI2RlZmlu ZSBDT1BZUklHSFQgIkNvcHlyaWdodCAoQykgMjAxNiBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24s IEluYy4iCnwgI2RlZmluZSBURVJNX0hFQURFUiAieHRlcm0uaCIKfCAjZGVmaW5lIEVNQUNTX0NP TkZJR1VSQVRJT04gIng4Nl82NC11bmtub3duLWxpbnV4LWdudSIKfCAjZGVmaW5lIEVNQUNTX0NP TkZJR19PUFRJT05TICItLXdpdGgteC10b29sa2l0PWx1Y2lkIgp8ICNkZWZpbmUgSEFWRV9YX1dJ TkRPV1MgMQp8ICNkZWZpbmUgVVNFX1hfVE9PTEtJVCAxCnwgI2RlZmluZSBVU0VfTFVDSUQgMQp8 ICNkZWZpbmUgSEFWRV9YMTEgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfQVRUUklCVVRFX0FMSUdO RUQgMQp8ICNkZWZpbmUgR05VX01BTExPQyAxCnwgI2RlZmluZSBSRUxfQUxMT0MgMQp8ICNkZWZp bmUgSEFWRV9BTExPQ0FfSCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBIQVZF X1VOU0lHTkVEX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUgSEFWRV9DOTlfU1RSVE9MRCAxCnwg I2RlZmluZSBIQVZFX0VOVklST05fREVDTCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkRBVEFTWU5D IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJNT0RFIDAKfCAjZGVmaW5lIExTVEFUX0ZPTExPV1Nf U0xBU0hFRF9TWU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFW RV9HRVRPUFRfTE9OR19PTkxZIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRFTlYgMQp8ICNkZWZp bmUgcmVzdHJpY3QgX19yZXN0cmljdAp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkdfSU5UIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9NRU1SQ0hSIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTEFSTSAxCnwg I2RlZmluZSBIQVZFX1NJR1NFVF9UIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfVCAxCnwgI2RlZmlu ZSBIQVZFX1NUUlVDVF9UTV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fWk9ORSAxCnwgI2Rl ZmluZSBIQVZFX1RNX0dNVE9GRiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSVE9JTUFYIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9TVFJUT1VNQVggMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1VUSU1F UyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9VVElNQlVGIDEKfCAjZGVmaW5lIEdFVEdST1VQU19U IGdpZF90CnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZF X1NZU19BQ0xfSCAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRklMRSAxCnwgI2RlZmluZSBIQVZF X0FDTF9HRVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFW RV9BQ0xfU0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZSRUUgMQp8ICNkZWZpbmUgSEFWRV9B Q0xfRlJPTV9NT0RFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZST01fVEVYVCAxCnwgI2RlZmluZSBI QVZFX0FDTF9ERUxFVEVfREVGX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRVhURU5ERURfRklM RSAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8IC8qIERlZmluZSBhY2xfY29weV9leHRfbmF0 aXZlIHRvIGFuIGlubm9jdW91cyB2YXJpYW50LCBpbiBjYXNlIDxsaW1pdHMuaD4gZGVjbGFyZXMg YWNsX2NvcHlfZXh0X25hdGl2ZS4KfCAgICBGb3IgZXhhbXBsZSwgSFAtVVggMTFpIDxsaW1pdHMu aD4gZGVjbGFyZXMgZ2V0dGltZW9mZGF5LiAgKi8KfCAjZGVmaW5lIGFjbF9jb3B5X2V4dF9uYXRp dmUgaW5ub2N1b3VzX2FjbF9jb3B5X2V4dF9uYXRpdmUKfCAKfCAvKiBTeXN0ZW0gaGVhZGVyIHRv IGRlZmluZSBfX3N0dWIgbWFjcm9zIGFuZCBob3BlZnVsbHkgZmV3IHByb3RvdHlwZXMsCnwgICAg IHdoaWNoIGNhbiBjb25mbGljdCB3aXRoIGNoYXIgYWNsX2NvcHlfZXh0X25hdGl2ZSAoKTsgYmVs b3cuCnwgICAgIFByZWZlciA8bGltaXRzLmg+IHRvIDxhc3NlcnQuaD4gaWYgX19TVERDX18gaXMg ZGVmaW5lZCwgc2luY2UKfCAgICAgPGxpbWl0cy5oPiBleGlzdHMgZXZlbiBvbiBmcmVlc3RhbmRp bmcgY29tcGlsZXJzLiAgKi8KfCAKfCAjaWZkZWYgX19TVERDX18KfCAjIGluY2x1ZGUgPGxpbWl0 cy5oPgp8ICNlbHNlCnwgIyBpbmNsdWRlIDxhc3NlcnQuaD4KfCAjZW5kaWYKfCAKfCAjdW5kZWYg YWNsX2NvcHlfZXh0X25hdGl2ZQp8IAp8IC8qIE92ZXJyaWRlIGFueSBHQ0MgaW50ZXJuYWwgcHJv dG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLgp8ICAgIFVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0 IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIEdDQwp8ICAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRz IGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCnwgI2lmZGVmIF9fY3Bs dXNwbHVzCnwgZXh0ZXJuICJDIgp8ICNlbmRpZgp8IGNoYXIgYWNsX2NvcHlfZXh0X25hdGl2ZSAo KTsKfCAvKiBUaGUgR05VIEMgbGlicmFyeSBkZWZpbmVzIHRoaXMgZm9yIGZ1bmN0aW9ucyB3aGlj aCBpdCBpbXBsZW1lbnRzCnwgICAgIHRvIGFsd2F5cyBmYWlsIHdpdGggRU5PU1lTLiAgU29tZSBm dW5jdGlvbnMgYXJlIGFjdHVhbGx5IG5hbWVkCnwgICAgIHNvbWV0aGluZyBzdGFydGluZyB3aXRo IF9fIGFuZCB0aGUgbm9ybWFsIG5hbWUgaXMgYW4gYWxpYXMuICAqLwp8ICNpZiBkZWZpbmVkIF9f c3R1Yl9hY2xfY29weV9leHRfbmF0aXZlIHx8IGRlZmluZWQgX19zdHViX19fYWNsX2NvcHlfZXh0 X25hdGl2ZQp8IGNob2tlIG1lCnwgI2VuZGlmCnwgCnwgaW50CnwgbWFpbiAoKQp8IHsKfCByZXR1 cm4gYWNsX2NvcHlfZXh0X25hdGl2ZSAoKTsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmln dXJlOjI0MjIxOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToyNDIyMTogY2hlY2tpbmcgZm9yIGFjbF9j cmVhdGVfZW50cnlfbnAKY29uZmlndXJlOjI0MjIxOiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAg ICAgIGNvbmZ0ZXN0LmMgLWxhY2wgLWxwdGhyZWFkICA+JjUgCi90bXAvY2N4aWtFREoubzogSW4g ZnVuY3Rpb24gYG1haW4nOgovaG9tZS9kZWVjaC9Eb3dubG9hZHMvZW1hY3MtMjUuMS9jb25mdGVz dC5jOjMxOTogdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgYWNsX2NyZWF0ZV9lbnRyeV9ucCcKY29s bGVjdDI6IGVycm9yOiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVzCmNvbmZpZ3VyZToyNDIyMTog JD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8K fCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJO QU1FICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMjUuMSIKfCAjZGVmaW5lIFBB Q0tBR0VfU1RSSU5HICJHTlUgRW1hY3MgMjUuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JU ICJidWctZ251LWVtYWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0cDovL3d3 dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIFBBQ0tBR0UgImVtYWNzIgp8ICNk ZWZpbmUgVkVSU0lPTiAiMjUuMSIKfCAjZGVmaW5lIE1BSUxfVVNFX1BPUCAxCnwgI2RlZmluZSBI QVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1RaU0VUIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9E IDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAx CnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEKfCAjZGVm aW5lIEhBVkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVf R0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9NS09T VEVNUCAxCnwgI2RlZmluZSBIQVZFX1BJUEUyIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwg I2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVm aW5lIEhBVkVfU1RSVE9VTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBI QVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfVElNRUdNIDEKfCAjZGVmaW5lIEhBVkVf RlVUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVNBVCAxCnwgI2RlZmluZSBIQVZFX0ZVVElN RU5TIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVOU0FUIDEKfCAjZGVmaW5lIEhBVkVfTFVUSU1FUyAx CnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRUNVUkVfR0VU RU5WIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEK fCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2Rl ZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZp bmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIF9f RVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5f Q19TT1VSQ0UgMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19VU0VfTUlOR1df QU5TSV9TVERJTyAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZp bmUgX1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9VU0VfNjRfQklUX0lOT0RFIDEK fCAjZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VO RENBUkRfSCAxCnwgI2RlZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwg I2RlZmluZSBIQVZFX1NZU19TWVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9QVFlfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAx CnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUF9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUg SEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhB VkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9E SVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX0VYRUNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJ T19FWFRfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJ TUVfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAx CnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVfSCAxCnwg I2RlZmluZSBIQVZFX1BFUlNPTkFMSVRZX0xJTlVYMzIgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9T WVNJTkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RF Uk1fSCAxCnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X1NZU19TSUdMSVNUIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZF X05FVF9JRl9IIDEKfCAjZGVmaW5lIEhBVkVfSUZBRERSU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RS VUNUX0lGUkVRX0lGUl9GTEFHUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfSFdB RERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9ORVRNQVNLIDEKfCAjZGVmaW5l IEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9CUk9BREFERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1Rf SUZSRVFfSUZSX0FERFIgMQp8ICNkZWZpbmUgSEFWRV9MT05HX0ZJTEVfTkFNRVMgMQp8ICNkZWZp bmUgSEFWRV9TWVNfVkxJTUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9EQVRBX1NUQVJUIDEKfCAjZGVm aW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9NTUFQIDEKfCAjZGVmaW5lIEhB VkVfUFRIUkVBRCAxCnwgI2RlZmluZSBIQVZFX1hLQiAxCnwgI2RlZmluZSBIQVZFX1hSTVNFVERB VEFCQVNFIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RSSU5HIDEKfCAjZGVmaW5l IEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhBVkVfWDExUjYgMQp8ICNk ZWZpbmUgSEFWRV9YX0kxOE4gMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9YSU0gMQp8ICNkZWZpbmUg SEFWRV9SU1ZHIDEKfCAjZGVmaW5lIEhBVkVfSU1BR0VNQUdJQ0sgMQp8ICNkZWZpbmUgSEFWRV9N QUdJQ0tFWFBPUlRJTUFHRVBJWEVMUyAxCnwgI2RlZmluZSBIQVZFX01BR0lDS01FUkdFSU1BR0VM QVlFUlMgMQp8ICNkZWZpbmUgSEFWRV9EQlVTIDEKfCAjZGVmaW5lIEhBVkVfREJVU19XQVRDSF9H RVRfVU5JWF9GRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVFlQRV9JU19WQUxJRCAxCnwgI2RlZmlu ZSBIQVZFX0RCVVNfVkFMSURBVEVfQlVTX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElE QVRFX1BBVEggMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0lOVEVSRkFDRSAxCnwgI2Rl ZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfTUVNQkVSIDEKfCAjZGVmaW5lIEhBVkVfR1NFVFRJTkdT IDEKfCAjZGVmaW5lIEhBVkVfR0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9HTlVUTFMgMQp8ICNkZWZp bmUgSEFWRV9HTlVUTFMzIDEKfCAjZGVmaW5lIEhBVkVfSU5PVElGWSAxCnwgI2RlZmluZSBVU0Vf RklMRV9OT1RJRlkgMQp8ICNkZWZpbmUgSEFWRV9YMTFYVFI2IDEKfCAjZGVmaW5lIFVTRV9UT09M S0lUX1NDUk9MTF9CQVJTIDEKfCAjZGVmaW5lIEhBVkVfWElNIDEKfCAjZGVmaW5lIFVTRV9YSU0g MQp8ICNkZWZpbmUgWFJlZ2lzdGVySU1JbnN0YW50aWF0ZUNhbGxiYWNrX2FyZzYgWFBvaW50ZXIK fCAjZGVmaW5lIEhBVkVfWEZUIDEKfCAjZGVmaW5lIEhBVkVfRlJFRVRZUEUgMQp8ICNkZWZpbmUg SEFWRV9MSUJPVEYgMQp8ICNkZWZpbmUgSEFWRV9PVEZfR0VUX1ZBUklBVElPTl9HTFlQSFMgMQp8 ICNkZWZpbmUgSEFWRV9NMTdOX0ZMVCAxCnwgI2RlZmluZSBVU0VfWENCIDEKfCAjZGVmaW5lIEhB VkVfWFBNIDEKfCAjZGVmaW5lIEhBVkVfSlBFRyAxCnwgI2RlZmluZSBIQVZFX1pMSUIgMQp8ICNk ZWZpbmUgSEFWRV9QTkcgMQp8ICNkZWZpbmUgSEFWRV9USUZGIDEKfCAjZGVmaW5lIEhBVkVfR0lG IDEKfCAjZGVmaW5lIEhBVkVfR1BNIDEKfCAjZGVmaW5lIEhBVkVfWF9TTSAxCnwgI2RlZmluZSBI QVZFX1hSQU5EUiAxCnwgI2RlZmluZSBIQVZFX1hJTkVSQU1BIDEKfCAjZGVmaW5lIEhBVkVfWEZJ WEVTIDEKfCAjZGVmaW5lIEhBVkVfTElCWE1MMiAxCnwgI2RlZmluZSBIQVZFX0hfRVJSTk8gMQp8 ICNkZWZpbmUgTUFJTF9VU0VfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9BQ0NFUFQ0IDEKfCAjZGVm aW5lIEhBVkVfRkNIRElSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUg SEFWRV9HRVRSVVNBR0UgMQp8ICNkZWZpbmUgSEFWRV9HRVRfQ1VSUkVOVF9ESVJfTkFNRSAxCnwg I2RlZmluZSBIQVZFX0xSQU5ENDggMQp8ICNkZWZpbmUgSEFWRV9SQU5ET00gMQp8ICNkZWZpbmUg SEFWRV9SSU5UIDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFH RVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9ORVdMT0NB TEUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQg MQp8ICNkZWZpbmUgSEFWRV9TSFVURE9XTiAxCnwgI2RlZmluZSBIQVZFX0dFVEFERFJJTkZPIDEK fCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSU0lHTkFM IDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfU0VORFRPIDEKfCAj ZGVmaW5lIEhBVkVfUkVDVkZST00gMQp8ICNkZWZpbmUgSEFWRV9HRVRTT0NLTkFNRSAxCnwgI2Rl ZmluZSBIQVZFX0dFVFBFRVJOQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUSUZBRERSUyAxCnwgI2Rl ZmluZSBIQVZFX0ZSRUVJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfR0FJX1NUUkVSUk9SIDEKfCAj ZGVmaW5lIEhBVkVfU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhB VkVfRU5EUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0VO REdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfQ0ZNQUtFUkFXIDEKfCAjZGVmaW5lIEhBVkVfQ0ZTRVRT UEVFRCAxCnwgI2RlZmluZSBIQVZFX0NPUFlTSUdOIDEKfCAjZGVmaW5lIEhBVkVfX19FWEVDVVRB QkxFX1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVfTE9HMiAxCnwgI2RlZmluZSBIQVZFX0FMSUdORURf QUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fVU5XSU5EX0lOSVQgMQp8ICNkZWZpbmUg SEFWRV9GU0VFS08gMQp8ICNkZWZpbmUgSEFWRV9HUkFOVFBUIDEKfCAjZGVmaW5lIEhBVkVfR0VU UFQgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9PUEVOUFQgMQp8ICNkZWZpbmUgVEVSTUlORk8gMQp8 ICNkZWZpbmUgSEFWRV9USU1FUkZEIDEKfCAjZGVmaW5lIEhBVkVfUkVTX0lOSVQgMQp8ICNkZWZp bmUgSEFWRV9TVFJVQ1RfVU5JUEFJUl9VTklDT0RFIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9TT0NL RVRTIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVm aW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfRk9SSyAxCnwg I2RlZmluZSBIQVZFX1NOUFJJTlRGIDEKfCAjZGVmaW5lIEhBVkVfR0xJQiAxCnwgI2RlZmluZSBI QVZFX0xBTkdJTkZPX0NPREVTRVQgMQp8ICNkZWZpbmUgSEFWRV9NQlNUQVRFX1QgMQp8ICNkZWZp bmUgQU1QRVJTQU5EX0ZVTExfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1BUWVMgMQp8ICNkZWZpbmUg SEFWRV9TT0NLRVRTIDEKfCAjZGVmaW5lIE5VTExfREVWSUNFICIvZGV2L251bGwiCnwgI2RlZmlu ZSBTRVBDSEFSICc6Jwp8ICNkZWZpbmUgc3VicHJvY2Vzc2VzIDEKfCAjZGVmaW5lIFVTRVJfRlVM TF9OQU1FIHB3LT5wd19nZWNvcwp8ICNkZWZpbmUgRElSRUNUT1JZX1NFUCAnLycKfCAjZGVmaW5l IElTX0RFVklDRV9TRVAoX2NfKSAwCnwgI2RlZmluZSBJU19ESVJFQ1RPUllfU0VQKF9jXykgKChf Y18pID09IERJUkVDVE9SWV9TRVApCnwgI2RlZmluZSBJU19BTllfU0VQKF9jXykgKElTX0RJUkVD VE9SWV9TRVAgKF9jXykpCnwgI2RlZmluZSBIQVZFX1BST0NGUyAxCnwgI2RlZmluZSBERUZBVUxU X1NPVU5EX0RFVklDRSAiL2Rldi9kc3AiCnwgI2RlZmluZSBJTlRFUlJVUFRfSU5QVVQgMQp8ICNk ZWZpbmUgTkFSUk9XUFJPVE8gMQp8ICNkZWZpbmUgVU5JWDk4X1BUWVMgMQp8ICNkZWZpbmUgUFRZ X0lURVJBVElPTiBpbnQgaTsgZm9yIChpID0gMDsgaSA8IDE7IGkrKykKfCAjZGVmaW5lIFBUWV9U VFlfTkFNRV9TUFJJTlRGIHsgY2hhciAqcHR5bmFtZSA9IDA7IHNpZ3NldF90IGJsb2NrZWQ7IHNp Z2VtcHR5c2V0ICgmYmxvY2tlZCk7IHNpZ2FkZHNldCAoJmJsb2NrZWQsIFNJR0NITEQpOyBwdGhy ZWFkX3NpZ21hc2sgKFNJR19CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoZ3JhbnRwdCAoZmQpICE9 IC0xICYmIHVubG9ja3B0IChmZCkgIT0gLTEpIHB0eW5hbWUgPSBwdHNuYW1lKGZkKTsgcHRocmVh ZF9zaWdtYXNrIChTSUdfVU5CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoIXB0eW5hbWUpIHsgZW1h Y3NfY2xvc2UgKGZkKTsgcmV0dXJuIC0xOyB9IHNucHJpbnRmIChwdHlfbmFtZSwgUFRZX05BTUVf U0laRSwgIiVzIiwgcHR5bmFtZSk7IH0KfCAjZGVmaW5lIFBUWV9PUEVOIGRvIHsgZmQgPSBwb3Np eF9vcGVucHQgKE9fUkRXUiB8IE9fQ0xPRVhFQyB8IE9fTk9DVFRZKTsgaWYgKGZkIDwgMCAmJiBl cnJubyA9PSBFSU5WQUwpIGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX05PQ1RUWSk7IH0g d2hpbGUgKGZhbHNlKQp8ICNkZWZpbmUgUFRZX05BTUVfU1BSSU5URiAvKiovCnwgI2RlZmluZSBT SUdOQUxTX1ZJQV9DSEFSQUNURVJTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2Rl ZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgSEFWRV9fU0VUSk1QIDEKfCAjZGVmaW5l IEhBVkVfU0lHU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU1RBQ0tfT1ZFUkZMT1dfSEFORExJTkcg MQp8ICNkZWZpbmUgVVNHIC8qKi8KfCAjZGVmaW5lIEdOVV9MSU5VWCAvKiovCnwgI2RlZmluZSBV U0FCTEVfRklPTlJFQUQgMQp8ICNkZWZpbmUgVVNBQkxFX1NJR0lPIDEKfCAjZGVmaW5lIENPUFlS SUdIVCAiQ29weXJpZ2h0IChDKSAyMDE2IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiIK fCAjZGVmaW5lIFRFUk1fSEVBREVSICJ4dGVybS5oIgp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHVVJB VElPTiAieDg2XzY0LXVua25vd24tbGludXgtZ251Igp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHX09Q VElPTlMgIi0td2l0aC14LXRvb2xraXQ9bHVjaWQiCnwgI2RlZmluZSBIQVZFX1hfV0lORE9XUyAx CnwgI2RlZmluZSBVU0VfWF9UT09MS0lUIDEKfCAjZGVmaW5lIFVTRV9MVUNJRCAxCnwgI2RlZmlu ZSBIQVZFX1gxMSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9BVFRSSUJVVEVfQUxJR05FRCAxCnwg I2RlZmluZSBHTlVfTUFMTE9DIDEKfCAjZGVmaW5lIFJFTF9BTExPQyAxCnwgI2RlZmluZSBIQVZF X0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfVU5TSUdO RURfTE9OR19MT05HX0lOVCAxCnwgI2RlZmluZSBIQVZFX0M5OV9TVFJUT0xEIDEKfCAjZGVmaW5l IEhBVkVfRU5WSVJPTl9ERUNMIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GREFUQVNZTkMgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX1NUUk1PREUgMAp8ICNkZWZpbmUgTFNUQVRfRk9MTE9XU19TTEFTSEVE X1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9Q VF9MT05HX09OTFkgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVEVOViAxCnwgI2RlZmluZSByZXN0 cmljdCBfX3Jlc3RyaWN0CnwgI2RlZmluZSBIQVZFX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX01FTVJDSFIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0FMQVJNIDEKfCAjZGVmaW5l IEhBVkVfU0lHU0VUX1QgMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9UIDEKfCAjZGVmaW5lIEhBVkVf U1RSVUNUX1RNX1RNX1pPTkUgMQp8ICNkZWZpbmUgSEFWRV9UTV9aT05FIDEKfCAjZGVmaW5lIEhB VkVfVE1fR01UT0ZGIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJUT0lNQVggMQp8ICNkZWZpbmUg SEFWRV9ERUNMX1NUUlRPVU1BWCAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVVRJTUVTIDEKfCAj ZGVmaW5lIEhBVkVfU1RSVUNUX1VUSU1CVUYgMQp8ICNkZWZpbmUgR0VUR1JPVVBTX1QgZ2lkX3QK fCAjZGVmaW5lIEhBVkVfREVDTF9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0FD TF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dF VF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9T RVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJFRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9N X01PREUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9URVhUIDEKfCAjZGVmaW5lIEhBVkVfQUNM X0RFTEVURV9ERUZfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9FWFRFTkRFRF9GSUxFIDEKfCAv KiBlbmQgY29uZmRlZnMuaC4gICovCnwgLyogRGVmaW5lIGFjbF9jcmVhdGVfZW50cnlfbnAgdG8g YW4gaW5ub2N1b3VzIHZhcmlhbnQsIGluIGNhc2UgPGxpbWl0cy5oPiBkZWNsYXJlcyBhY2xfY3Jl YXRlX2VudHJ5X25wLgp8ICAgIEZvciBleGFtcGxlLCBIUC1VWCAxMWkgPGxpbWl0cy5oPiBkZWNs YXJlcyBnZXR0aW1lb2ZkYXkuICAqLwp8ICNkZWZpbmUgYWNsX2NyZWF0ZV9lbnRyeV9ucCBpbm5v Y3VvdXNfYWNsX2NyZWF0ZV9lbnRyeV9ucAp8IAp8IC8qIFN5c3RlbSBoZWFkZXIgdG8gZGVmaW5l IF9fc3R1YiBtYWNyb3MgYW5kIGhvcGVmdWxseSBmZXcgcHJvdG90eXBlcywKfCAgICAgd2hpY2gg Y2FuIGNvbmZsaWN0IHdpdGggY2hhciBhY2xfY3JlYXRlX2VudHJ5X25wICgpOyBiZWxvdy4KfCAg ICAgUHJlZmVyIDxsaW1pdHMuaD4gdG8gPGFzc2VydC5oPiBpZiBfX1NURENfXyBpcyBkZWZpbmVk LCBzaW5jZQp8ICAgICA8bGltaXRzLmg+IGV4aXN0cyBldmVuIG9uIGZyZWVzdGFuZGluZyBjb21w aWxlcnMuICAqLwp8IAp8ICNpZmRlZiBfX1NURENfXwp8ICMgaW5jbHVkZSA8bGltaXRzLmg+Cnwg I2Vsc2UKfCAjIGluY2x1ZGUgPGFzc2VydC5oPgp8ICNlbmRpZgp8IAp8ICN1bmRlZiBhY2xfY3Jl YXRlX2VudHJ5X25wCnwgCnwgLyogT3ZlcnJpZGUgYW55IEdDQyBpbnRlcm5hbCBwcm90b3R5cGUg dG8gYXZvaWQgYW4gZXJyb3IuCnwgICAgVXNlIGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2gg dGhlIHJldHVybiB0eXBlIG9mIGEgR0NDCnwgICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMgYXJndW1l bnQgcHJvdG90eXBlIHdvdWxkIHN0aWxsIGFwcGx5LiAgKi8KfCAjaWZkZWYgX19jcGx1c3BsdXMK fCBleHRlcm4gIkMiCnwgI2VuZGlmCnwgY2hhciBhY2xfY3JlYXRlX2VudHJ5X25wICgpOwp8IC8q IFRoZSBHTlUgQyBsaWJyYXJ5IGRlZmluZXMgdGhpcyBmb3IgZnVuY3Rpb25zIHdoaWNoIGl0IGlt cGxlbWVudHMKfCAgICAgdG8gYWx3YXlzIGZhaWwgd2l0aCBFTk9TWVMuICBTb21lIGZ1bmN0aW9u cyBhcmUgYWN0dWFsbHkgbmFtZWQKfCAgICAgc29tZXRoaW5nIHN0YXJ0aW5nIHdpdGggX18gYW5k IHRoZSBub3JtYWwgbmFtZSBpcyBhbiBhbGlhcy4gICovCnwgI2lmIGRlZmluZWQgX19zdHViX2Fj bF9jcmVhdGVfZW50cnlfbnAgfHwgZGVmaW5lZCBfX3N0dWJfX19hY2xfY3JlYXRlX2VudHJ5X25w CnwgY2hva2UgbWUKfCAjZW5kaWYKfCAKfCBpbnQKfCBtYWluICgpCnwgewp8IHJldHVybiBhY2xf Y3JlYXRlX2VudHJ5X25wICgpOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MjQy MjE6IHJlc3VsdDogbm8KY29uZmlndXJlOjI0MjIxOiBjaGVja2luZyBmb3IgYWNsX3RvX3Nob3J0 X3RleHQKY29uZmlndXJlOjI0MjIxOiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0 ZXN0LmMgLWxhY2wgLWxwdGhyZWFkICA+JjUgCi90bXAvY2NTeFpBalEubzogSW4gZnVuY3Rpb24g YG1haW4nOgovaG9tZS9kZWVjaC9Eb3dubG9hZHMvZW1hY3MtMjUuMS9jb25mdGVzdC5jOjMxOTog dW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgYWNsX3RvX3Nob3J0X3RleHQnCmNvbGxlY3QyOiBlcnJv cjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpjb25maWd1cmU6MjQyMjE6ICQ/ID0gMQpjb25m aWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQ QUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3Mi CnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklO RyAiR05VIEVtYWNzIDI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1l bWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHA6Ly93d3cuZ251Lm9yZy9z b2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmluZSBQQUNLQUdFICJlbWFjcyIKfCAjZGVmaW5lIFZFUlNJ T04gIjI1LjEiCnwgI2RlZmluZSBNQUlMX1VTRV9QT1AgMQp8ICNkZWZpbmUgSEFWRV9QVVRFTlYg MQp8ICNkZWZpbmUgSEFWRV9UWlNFVCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmlu ZSBIQVZFX1JFQURMSU5LQVQgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUg SEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZT VEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRB WSAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfTUtPU1RFTVAgMQp8ICNk ZWZpbmUgSEFWRV9QSVBFMiAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUgSEFW RV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX1NU UlRPVU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJ TUVfUiAxCnwgI2RlZmluZSBIQVZFX1RJTUVHTSAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVMgMQp8 ICNkZWZpbmUgSEFWRV9GVVRJTUVTQVQgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVOUyAxCnwgI2Rl ZmluZSBIQVZFX1VUSU1FTlNBVCAxCnwgI2RlZmluZSBIQVZFX0xVVElNRVMgMQp8ICNkZWZpbmUg SEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VDVVJFX0dFVEVOViAxCnwgI2Rl ZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBI QVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9T VFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RE SU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNf XyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEK fCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9fVVNFX01JTkdXX0FOU0lfU1RESU8g MQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9UQU5ERU1f U09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fVVNFXzY0X0JJVF9JTk9ERSAxCnwgI2RlZmluZSBT WVNURU1fVFlQRSAiZ251L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJEX0ggMQp8 ICNkZWZpbmUgSEFWRV9BTFNBIDEKfCAjZGVmaW5lIEhBVkVfU09VTkQgMQp8ICNkZWZpbmUgSEFW RV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUg SEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19T T0NLRVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1RE X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8 ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8 ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNk ZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUg SEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFW RV9QRVJTT05BTElUWV9MSU5VWDMyIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5GTyAxCnwg I2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUgSEFWRV9URVJNX0ggMQp8ICNk ZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TWVNfU0lHTElT VCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAx CnwgI2RlZmluZSBIQVZFX0lGQUREUlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9J RlJfRkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwgI2Rl ZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlVD VF9JRlJFUV9JRlJfQlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9B RERSIDEKfCAjZGVmaW5lIEhBVkVfTE9OR19GSUxFX05BTUVTIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1ZMSU1JVF9IIDEKfCAjZGVmaW5lIEhBVkVfREFUQV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0dF VFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQUQg MQp8ICNkZWZpbmUgSEFWRV9YS0IgMQp8ICNkZWZpbmUgSEFWRV9YUk1TRVREQVRBQkFTRSAxCnwg I2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNPVVJDRVNUUklORyAxCnwgI2RlZmluZSBIQVZFX1hTQ1JF RU5OVU1CRVJPRlNDUkVFTiAxCnwgI2RlZmluZSBIQVZFX1gxMVI2IDEKfCAjZGVmaW5lIEhBVkVf WF9JMThOIDEKfCAjZGVmaW5lIEhBVkVfWDExUjZfWElNIDEKfCAjZGVmaW5lIEhBVkVfUlNWRyAx CnwgI2RlZmluZSBIQVZFX0lNQUdFTUFHSUNLIDEKfCAjZGVmaW5lIEhBVkVfTUFHSUNLRVhQT1JU SU1BR0VQSVhFTFMgMQp8ICNkZWZpbmUgSEFWRV9NQUdJQ0tNRVJHRUlNQUdFTEFZRVJTIDEKfCAj ZGVmaW5lIEhBVkVfREJVUyAxCnwgI2RlZmluZSBIQVZFX0RCVVNfV0FUQ0hfR0VUX1VOSVhfRkQg MQp8ICNkZWZpbmUgSEFWRV9EQlVTX1RZUEVfSVNfVkFMSUQgMQp8ICNkZWZpbmUgSEFWRV9EQlVT X1ZBTElEQVRFX0JVU19OQU1FIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9QQVRIIDEK fCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9JTlRFUkZBQ0UgMQp8ICNkZWZpbmUgSEFWRV9E QlVTX1ZBTElEQVRFX01FTUJFUiAxCnwgI2RlZmluZSBIQVZFX0dTRVRUSU5HUyAxCnwgI2RlZmlu ZSBIQVZFX0dDT05GIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhBVkVfR05V VExTMyAxCnwgI2RlZmluZSBIQVZFX0lOT1RJRlkgMQp8ICNkZWZpbmUgVVNFX0ZJTEVfTk9USUZZ IDEKfCAjZGVmaW5lIEhBVkVfWDExWFRSNiAxCnwgI2RlZmluZSBVU0VfVE9PTEtJVF9TQ1JPTExf QkFSUyAxCnwgI2RlZmluZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBVU0VfWElNIDEKfCAjZGVmaW5l IFhSZWdpc3RlcklNSW5zdGFudGlhdGVDYWxsYmFja19hcmc2IFhQb2ludGVyCnwgI2RlZmluZSBI QVZFX1hGVCAxCnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAjZGVmaW5lIEhBVkVfTElCT1RG IDEKfCAjZGVmaW5lIEhBVkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTIDEKfCAjZGVmaW5lIEhB VkVfTTE3Tl9GTFQgMQp8ICNkZWZpbmUgVVNFX1hDQiAxCnwgI2RlZmluZSBIQVZFX1hQTSAxCnwg I2RlZmluZSBIQVZFX0pQRUcgMQp8ICNkZWZpbmUgSEFWRV9aTElCIDEKfCAjZGVmaW5lIEhBVkVf UE5HIDEKfCAjZGVmaW5lIEhBVkVfVElGRiAxCnwgI2RlZmluZSBIQVZFX0dJRiAxCnwgI2RlZmlu ZSBIQVZFX0dQTSAxCnwgI2RlZmluZSBIQVZFX1hfU00gMQp8ICNkZWZpbmUgSEFWRV9YUkFORFIg MQp8ICNkZWZpbmUgSEFWRV9YSU5FUkFNQSAxCnwgI2RlZmluZSBIQVZFX1hGSVhFUyAxCnwgI2Rl ZmluZSBIQVZFX0xJQlhNTDIgMQp8ICNkZWZpbmUgSEFWRV9IX0VSUk5PIDEKfCAjZGVmaW5lIE1B SUxfVVNFX0ZMT0NLIDEKfCAjZGVmaW5lIEhBVkVfQUNDRVBUNCAxCnwgI2RlZmluZSBIQVZFX0ZD SERJUiAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUUlVT QUdFIDEKfCAjZGVmaW5lIEhBVkVfR0VUX0NVUlJFTlRfRElSX05BTUUgMQp8ICNkZWZpbmUgSEFW RV9MUkFORDQ4IDEKfCAjZGVmaW5lIEhBVkVfUkFORE9NIDEKfCAjZGVmaW5lIEhBVkVfUklOVCAx CnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAj ZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfTkVXTE9DQUxFIDEKfCAjZGVm aW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVmaW5l IEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9HRVRBRERSSU5GTyAxCnwgI2RlZmluZSBI QVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlNJR05BTCAxCnwgI2RlZmlu ZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX1NFTkRUTyAxCnwgI2RlZmluZSBIQVZF X1JFQ1ZGUk9NIDEKfCAjZGVmaW5lIEhBVkVfR0VUU09DS05BTUUgMQp8ICNkZWZpbmUgSEFWRV9H RVRQRUVSTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVElGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9G UkVFSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0dBSV9TVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZF X1NZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0VORFBXRU5U IDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRHUkVOVCAxCnwg I2RlZmluZSBIQVZFX0NGTUFLRVJBVyAxCnwgI2RlZmluZSBIQVZFX0NGU0VUU1BFRUQgMQp8ICNk ZWZpbmUgSEFWRV9DT1BZU0lHTiAxCnwgI2RlZmluZSBIQVZFX19fRVhFQ1VUQUJMRV9TVEFSVCAx CnwgI2RlZmluZSBIQVZFX0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9DIDEKfCAj ZGVmaW5lIEhBVkVfX19CVUlMVElOX1VOV0lORF9JTklUIDEKfCAjZGVmaW5lIEhBVkVfRlNFRUtP IDEKfCAjZGVmaW5lIEhBVkVfR1JBTlRQVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBUIDEKfCAjZGVm aW5lIEhBVkVfUE9TSVhfT1BFTlBUIDEKfCAjZGVmaW5lIFRFUk1JTkZPIDEKfCAjZGVmaW5lIEhB VkVfVElNRVJGRCAxCnwgI2RlZmluZSBIQVZFX1JFU19JTklUIDEKfCAjZGVmaW5lIEhBVkVfU1RS VUNUX1VOSVBBSVJfVU5JQ09ERSAxCnwgI2RlZmluZSBIQVZFX0lORVRfU09DS0VUUyAxCnwgI2Rl ZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dP UktJTkdfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX0ZPUksgMQp8ICNkZWZpbmUgSEFW RV9TTlBSSU5URiAxCnwgI2RlZmluZSBIQVZFX0dMSUIgMQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5G T19DT0RFU0VUIDEKfCAjZGVmaW5lIEhBVkVfTUJTVEFURV9UIDEKfCAjZGVmaW5lIEFNUEVSU0FO RF9GVUxMX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9QVFlTIDEKfCAjZGVmaW5lIEhBVkVfU09DS0VU UyAxCnwgI2RlZmluZSBOVUxMX0RFVklDRSAiL2Rldi9udWxsIgp8ICNkZWZpbmUgU0VQQ0hBUiAn OicKfCAjZGVmaW5lIHN1YnByb2Nlc3NlcyAxCnwgI2RlZmluZSBVU0VSX0ZVTExfTkFNRSBwdy0+ cHdfZ2Vjb3MKfCAjZGVmaW5lIERJUkVDVE9SWV9TRVAgJy8nCnwgI2RlZmluZSBJU19ERVZJQ0Vf U0VQKF9jXykgMAp8ICNkZWZpbmUgSVNfRElSRUNUT1JZX1NFUChfY18pICgoX2NfKSA9PSBESVJF Q1RPUllfU0VQKQp8ICNkZWZpbmUgSVNfQU5ZX1NFUChfY18pIChJU19ESVJFQ1RPUllfU0VQIChf Y18pKQp8ICNkZWZpbmUgSEFWRV9QUk9DRlMgMQp8ICNkZWZpbmUgREVGQVVMVF9TT1VORF9ERVZJ Q0UgIi9kZXYvZHNwIgp8ICNkZWZpbmUgSU5URVJSVVBUX0lOUFVUIDEKfCAjZGVmaW5lIE5BUlJP V1BST1RPIDEKfCAjZGVmaW5lIFVOSVg5OF9QVFlTIDEKfCAjZGVmaW5lIFBUWV9JVEVSQVRJT04g aW50IGk7IGZvciAoaSA9IDA7IGkgPCAxOyBpKyspCnwgI2RlZmluZSBQVFlfVFRZX05BTUVfU1BS SU5URiB7IGNoYXIgKnB0eW5hbWUgPSAwOyBzaWdzZXRfdCBibG9ja2VkOyBzaWdlbXB0eXNldCAo JmJsb2NrZWQpOyBzaWdhZGRzZXQgKCZibG9ja2VkLCBTSUdDSExEKTsgcHRocmVhZF9zaWdtYXNr IChTSUdfQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKGdyYW50cHQgKGZkKSAhPSAtMSAmJiB1bmxv Y2twdCAoZmQpICE9IC0xKSBwdHluYW1lID0gcHRzbmFtZShmZCk7IHB0aHJlYWRfc2lnbWFzayAo U0lHX1VOQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKCFwdHluYW1lKSB7IGVtYWNzX2Nsb3NlIChm ZCk7IHJldHVybiAtMTsgfSBzbnByaW50ZiAocHR5X25hbWUsIFBUWV9OQU1FX1NJWkUsICIlcyIs IHB0eW5hbWUpOyB9CnwgI2RlZmluZSBQVFlfT1BFTiBkbyB7IGZkID0gcG9zaXhfb3BlbnB0IChP X1JEV1IgfCBPX0NMT0VYRUMgfCBPX05PQ1RUWSk7IGlmIChmZCA8IDAgJiYgZXJybm8gPT0gRUlO VkFMKSBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19OT0NUVFkpOyB9IHdoaWxlIChmYWxz ZSkKfCAjZGVmaW5lIFBUWV9OQU1FX1NQUklOVEYgLyoqLwp8ICNkZWZpbmUgU0lHTkFMU19WSUFf Q0hBUkFDVEVSUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgR0NfU0VU Sk1QX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfX1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NJR1NF VEpNUCAxCnwgI2RlZmluZSBIQVZFX1NUQUNLX09WRVJGTE9XX0hBTkRMSU5HIDEKfCAjZGVmaW5l IFVTRyAvKiovCnwgI2RlZmluZSBHTlVfTElOVVggLyoqLwp8ICNkZWZpbmUgVVNBQkxFX0ZJT05S RUFEIDEKfCAjZGVmaW5lIFVTQUJMRV9TSUdJTyAxCnwgI2RlZmluZSBDT1BZUklHSFQgIkNvcHly aWdodCAoQykgMjAxNiBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4iCnwgI2RlZmluZSBU RVJNX0hFQURFUiAieHRlcm0uaCIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR1VSQVRJT04gIng4Nl82 NC11bmtub3duLWxpbnV4LWdudSIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR19PUFRJT05TICItLXdp dGgteC10b29sa2l0PWx1Y2lkIgp8ICNkZWZpbmUgSEFWRV9YX1dJTkRPV1MgMQp8ICNkZWZpbmUg VVNFX1hfVE9PTEtJVCAxCnwgI2RlZmluZSBVU0VfTFVDSUQgMQp8ICNkZWZpbmUgSEFWRV9YMTEg MQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfQVRUUklCVVRFX0FMSUdORUQgMQp8ICNkZWZpbmUgR05V X01BTExPQyAxCnwgI2RlZmluZSBSRUxfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAx CnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBIQVZFX1VOU0lHTkVEX0xPTkdfTE9O R19JTlQgMQp8ICNkZWZpbmUgSEFWRV9DOTlfU1RSVE9MRCAxCnwgI2RlZmluZSBIQVZFX0VOVklS T05fREVDTCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkRBVEFTWU5DIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9TVFJNT0RFIDAKfCAjZGVmaW5lIExTVEFUX0ZPTExPV1NfU0xBU0hFRF9TWU1MSU5LIDEK fCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfTE9OR19PTkxZ IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRFTlYgMQp8ICNkZWZpbmUgcmVzdHJpY3QgX19yZXN0 cmljdAp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9N RU1SQ0hSIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTEFSTSAxCnwgI2RlZmluZSBIQVZFX1NJR1NF VF9UIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfVCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9UTV9U TV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fWk9ORSAxCnwgI2RlZmluZSBIQVZFX1RNX0dNVE9G RiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9T VFJUT1VNQVggMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1VUSU1FUyAxCnwgI2RlZmluZSBIQVZF X1NUUlVDVF9VVElNQlVGIDEKfCAjZGVmaW5lIEdFVEdST1VQU19UIGdpZF90CnwgI2RlZmluZSBI QVZFX0RFQ0xfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NZU19BQ0xfSCAxCnwgI2Rl ZmluZSBIQVZFX0FDTF9HRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRkQgMQp8ICNk ZWZpbmUgSEFWRV9BQ0xfU0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZEIDEKfCAj ZGVmaW5lIEhBVkVfQUNMX0ZSRUUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9NT0RFIDEKfCAj ZGVmaW5lIEhBVkVfQUNMX0ZST01fVEVYVCAxCnwgI2RlZmluZSBIQVZFX0FDTF9ERUxFVEVfREVG X0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRVhURU5ERURfRklMRSAxCnwgLyogZW5kIGNvbmZk ZWZzLmguICAqLwp8IC8qIERlZmluZSBhY2xfdG9fc2hvcnRfdGV4dCB0byBhbiBpbm5vY3VvdXMg dmFyaWFudCwgaW4gY2FzZSA8bGltaXRzLmg+IGRlY2xhcmVzIGFjbF90b19zaG9ydF90ZXh0Lgp8 ICAgIEZvciBleGFtcGxlLCBIUC1VWCAxMWkgPGxpbWl0cy5oPiBkZWNsYXJlcyBnZXR0aW1lb2Zk YXkuICAqLwp8ICNkZWZpbmUgYWNsX3RvX3Nob3J0X3RleHQgaW5ub2N1b3VzX2FjbF90b19zaG9y dF90ZXh0CnwgCnwgLyogU3lzdGVtIGhlYWRlciB0byBkZWZpbmUgX19zdHViIG1hY3JvcyBhbmQg aG9wZWZ1bGx5IGZldyBwcm90b3R5cGVzLAp8ICAgICB3aGljaCBjYW4gY29uZmxpY3Qgd2l0aCBj aGFyIGFjbF90b19zaG9ydF90ZXh0ICgpOyBiZWxvdy4KfCAgICAgUHJlZmVyIDxsaW1pdHMuaD4g dG8gPGFzc2VydC5oPiBpZiBfX1NURENfXyBpcyBkZWZpbmVkLCBzaW5jZQp8ICAgICA8bGltaXRz Lmg+IGV4aXN0cyBldmVuIG9uIGZyZWVzdGFuZGluZyBjb21waWxlcnMuICAqLwp8IAp8ICNpZmRl ZiBfX1NURENfXwp8ICMgaW5jbHVkZSA8bGltaXRzLmg+CnwgI2Vsc2UKfCAjIGluY2x1ZGUgPGFz c2VydC5oPgp8ICNlbmRpZgp8IAp8ICN1bmRlZiBhY2xfdG9fc2hvcnRfdGV4dAp8IAp8IC8qIE92 ZXJyaWRlIGFueSBHQ0MgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLgp8ICAg IFVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIEdD Qwp8ICAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGls bCBhcHBseS4gICovCnwgI2lmZGVmIF9fY3BsdXNwbHVzCnwgZXh0ZXJuICJDIgp8ICNlbmRpZgp8 IGNoYXIgYWNsX3RvX3Nob3J0X3RleHQgKCk7CnwgLyogVGhlIEdOVSBDIGxpYnJhcnkgZGVmaW5l cyB0aGlzIGZvciBmdW5jdGlvbnMgd2hpY2ggaXQgaW1wbGVtZW50cwp8ICAgICB0byBhbHdheXMg ZmFpbCB3aXRoIEVOT1NZUy4gIFNvbWUgZnVuY3Rpb25zIGFyZSBhY3R1YWxseSBuYW1lZAp8ICAg ICBzb21ldGhpbmcgc3RhcnRpbmcgd2l0aCBfXyBhbmQgdGhlIG5vcm1hbCBuYW1lIGlzIGFuIGFs aWFzLiAgKi8KfCAjaWYgZGVmaW5lZCBfX3N0dWJfYWNsX3RvX3Nob3J0X3RleHQgfHwgZGVmaW5l ZCBfX3N0dWJfX19hY2xfdG9fc2hvcnRfdGV4dAp8IGNob2tlIG1lCnwgI2VuZGlmCnwgCnwgaW50 CnwgbWFpbiAoKQp8IHsKfCByZXR1cm4gYWNsX3RvX3Nob3J0X3RleHQgKCk7CnwgICA7CnwgICBy ZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToyNDIyMTogcmVzdWx0OiBubwpjb25maWd1cmU6MjQyMjE6 IGNoZWNraW5nIGZvciBhY2xfZnJlZV90ZXh0CmNvbmZpZ3VyZToyNDIyMTogZ2NjIC1vIGNvbmZ0 ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jIC1sYWNsIC1scHRocmVhZCAgPiY1IAovdG1wL2Nj M21MUWZTLm86IEluIGZ1bmN0aW9uIGBtYWluJzoKL2hvbWUvZGVlY2gvRG93bmxvYWRzL2VtYWNz LTI1LjEvY29uZnRlc3QuYzozMTk6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYGFjbF9mcmVlX3Rl eHQnCmNvbGxlY3QyOiBlcnJvcjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpjb25maWd1cmU6 MjQyMjE6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVm cy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tB R0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjI1LjEiCnwgI2Rl ZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX0JV R1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0 dHA6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmluZSBQQUNLQUdFICJlbWFj cyIKfCAjZGVmaW5lIFZFUlNJT04gIjI1LjEiCnwgI2RlZmluZSBNQUlMX1VTRV9QT1AgMQp8ICNk ZWZpbmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9UWlNFVCAxCnwgI2RlZmluZSBIQVZF X0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LQVQgMQp8ICNkZWZpbmUgSEFWRV9GQUND RVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJUiAx CnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmlu ZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhB VkVfTUtPU1RFTVAgMQp8ICNkZWZpbmUgSEFWRV9QSVBFMiAxCnwgI2RlZmluZSBIQVZFX1BTRUxF Q1QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAx CnwgI2RlZmluZSBIQVZFX1NUUlRPVU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNk ZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX1RJTUVHTSAxCnwgI2RlZmlu ZSBIQVZFX0ZVVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVTQVQgMQp8ICNkZWZpbmUgSEFW RV9GVVRJTUVOUyAxCnwgI2RlZmluZSBIQVZFX1VUSU1FTlNBVCAxCnwgI2RlZmluZSBIQVZFX0xV VElNRVMgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VD VVJFX0dFVEVOViAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNf VFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERM SUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0gg MQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEK fCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2Rl ZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBf REFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9fVVNF X01JTkdXX0FOU0lfU1RESU8gMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEK fCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fVVNFXzY0X0JJVF9J Tk9ERSAxCnwgI2RlZmluZSBTWVNURU1fVFlQRSAiZ251L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9T WVNfU09VTkRDQVJEX0ggMQp8ICNkZWZpbmUgSEFWRV9BTFNBIDEKfCAjZGVmaW5lIEhBVkVfU09V TkQgMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNO QU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAj ZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2Rl ZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5l IEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5lIEhB VkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RE SU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NF TEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1VUSU1F X0ggMQp8ICNkZWZpbmUgSEFWRV9QRVJTT05BTElUWV9MSU5VWDMyIDEKfCAjZGVmaW5lIEhBVkVf TElOVVhfU1lTSU5GTyAxCnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUg SEFWRV9URVJNX0ggMQp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9TWVNfU0lHTElTVCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZp bmUgSEFWRV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZFX0lGQUREUlNfSCAxCnwgI2RlZmluZSBI QVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFf SUZSX0hXQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwg I2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVf U1RSVUNUX0lGUkVRX0lGUl9BRERSIDEKfCAjZGVmaW5lIEhBVkVfTE9OR19GSUxFX05BTUVTIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1ZMSU1JVF9IIDEKfCAjZGVmaW5lIEhBVkVfREFUQV9TVEFSVCAx CnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2Rl ZmluZSBIQVZFX1BUSFJFQUQgMQp8ICNkZWZpbmUgSEFWRV9YS0IgMQp8ICNkZWZpbmUgSEFWRV9Y Uk1TRVREQVRBQkFTRSAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNPVVJDRVNUUklORyAxCnwg I2RlZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJPRlNDUkVFTiAxCnwgI2RlZmluZSBIQVZFX1gxMVI2 IDEKfCAjZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVmaW5lIEhBVkVfWDExUjZfWElNIDEKfCAj ZGVmaW5lIEhBVkVfUlNWRyAxCnwgI2RlZmluZSBIQVZFX0lNQUdFTUFHSUNLIDEKfCAjZGVmaW5l IEhBVkVfTUFHSUNLRVhQT1JUSU1BR0VQSVhFTFMgMQp8ICNkZWZpbmUgSEFWRV9NQUdJQ0tNRVJH RUlNQUdFTEFZRVJTIDEKfCAjZGVmaW5lIEhBVkVfREJVUyAxCnwgI2RlZmluZSBIQVZFX0RCVVNf V0FUQ0hfR0VUX1VOSVhfRkQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1RZUEVfSVNfVkFMSUQgMQp8 ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0JVU19OQU1FIDEKfCAjZGVmaW5lIEhBVkVfREJV U19WQUxJREFURV9QQVRIIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9JTlRFUkZBQ0Ug MQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX01FTUJFUiAxCnwgI2RlZmluZSBIQVZFX0dT RVRUSU5HUyAxCnwgI2RlZmluZSBIQVZFX0dDT05GIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTIDEK fCAjZGVmaW5lIEhBVkVfR05VVExTMyAxCnwgI2RlZmluZSBIQVZFX0lOT1RJRlkgMQp8ICNkZWZp bmUgVVNFX0ZJTEVfTk9USUZZIDEKfCAjZGVmaW5lIEhBVkVfWDExWFRSNiAxCnwgI2RlZmluZSBV U0VfVE9PTEtJVF9TQ1JPTExfQkFSUyAxCnwgI2RlZmluZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBV U0VfWElNIDEKfCAjZGVmaW5lIFhSZWdpc3RlcklNSW5zdGFudGlhdGVDYWxsYmFja19hcmc2IFhQ b2ludGVyCnwgI2RlZmluZSBIQVZFX1hGVCAxCnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAj ZGVmaW5lIEhBVkVfTElCT1RGIDEKfCAjZGVmaW5lIEhBVkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZ UEhTIDEKfCAjZGVmaW5lIEhBVkVfTTE3Tl9GTFQgMQp8ICNkZWZpbmUgVVNFX1hDQiAxCnwgI2Rl ZmluZSBIQVZFX1hQTSAxCnwgI2RlZmluZSBIQVZFX0pQRUcgMQp8ICNkZWZpbmUgSEFWRV9aTElC IDEKfCAjZGVmaW5lIEhBVkVfUE5HIDEKfCAjZGVmaW5lIEhBVkVfVElGRiAxCnwgI2RlZmluZSBI QVZFX0dJRiAxCnwgI2RlZmluZSBIQVZFX0dQTSAxCnwgI2RlZmluZSBIQVZFX1hfU00gMQp8ICNk ZWZpbmUgSEFWRV9YUkFORFIgMQp8ICNkZWZpbmUgSEFWRV9YSU5FUkFNQSAxCnwgI2RlZmluZSBI QVZFX1hGSVhFUyAxCnwgI2RlZmluZSBIQVZFX0xJQlhNTDIgMQp8ICNkZWZpbmUgSEFWRV9IX0VS Uk5PIDEKfCAjZGVmaW5lIE1BSUxfVVNFX0ZMT0NLIDEKfCAjZGVmaW5lIEhBVkVfQUNDRVBUNCAx CnwgI2RlZmluZSBIQVZFX0ZDSERJUiAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAj ZGVmaW5lIEhBVkVfR0VUUlVTQUdFIDEKfCAjZGVmaW5lIEhBVkVfR0VUX0NVUlJFTlRfRElSX05B TUUgMQp8ICNkZWZpbmUgSEFWRV9MUkFORDQ4IDEKfCAjZGVmaW5lIEhBVkVfUkFORE9NIDEKfCAj ZGVmaW5lIEhBVkVfUklOVCAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZF X0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVf TkVXTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VU UkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9HRVRBRERS SU5GTyAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NU UlNJR05BTCAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX1NFTkRU TyAxCnwgI2RlZmluZSBIQVZFX1JFQ1ZGUk9NIDEKfCAjZGVmaW5lIEhBVkVfR0VUU09DS05BTUUg MQp8ICNkZWZpbmUgSEFWRV9HRVRQRUVSTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVElGQUREUlMg MQp8ICNkZWZpbmUgSEFWRV9GUkVFSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0dBSV9TVFJFUlJP UiAxCnwgI2RlZmluZSBIQVZFX1NZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2Rl ZmluZSBIQVZFX0VORFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUg SEFWRV9FTkRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0NGTUFLRVJBVyAxCnwgI2RlZmluZSBIQVZF X0NGU0VUU1BFRUQgMQp8ICNkZWZpbmUgSEFWRV9DT1BZU0lHTiAxCnwgI2RlZmluZSBIQVZFX19f RVhFQ1VUQUJMRV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9B TElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX1VOV0lORF9JTklUIDEKfCAj ZGVmaW5lIEhBVkVfRlNFRUtPIDEKfCAjZGVmaW5lIEhBVkVfR1JBTlRQVCAxCnwgI2RlZmluZSBI QVZFX0dFVFBUIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfT1BFTlBUIDEKfCAjZGVmaW5lIFRFUk1J TkZPIDEKfCAjZGVmaW5lIEhBVkVfVElNRVJGRCAxCnwgI2RlZmluZSBIQVZFX1JFU19JTklUIDEK fCAjZGVmaW5lIEhBVkVfU1RSVUNUX1VOSVBBSVJfVU5JQ09ERSAxCnwgI2RlZmluZSBIQVZFX0lO RVRfU09DS0VUUyAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9WRk9SSyAx CnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX0ZP UksgMQp8ICNkZWZpbmUgSEFWRV9TTlBSSU5URiAxCnwgI2RlZmluZSBIQVZFX0dMSUIgMQp8ICNk ZWZpbmUgSEFWRV9MQU5HSU5GT19DT0RFU0VUIDEKfCAjZGVmaW5lIEhBVkVfTUJTVEFURV9UIDEK fCAjZGVmaW5lIEFNUEVSU0FORF9GVUxMX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9QVFlTIDEKfCAj ZGVmaW5lIEhBVkVfU09DS0VUUyAxCnwgI2RlZmluZSBOVUxMX0RFVklDRSAiL2Rldi9udWxsIgp8 ICNkZWZpbmUgU0VQQ0hBUiAnOicKfCAjZGVmaW5lIHN1YnByb2Nlc3NlcyAxCnwgI2RlZmluZSBV U0VSX0ZVTExfTkFNRSBwdy0+cHdfZ2Vjb3MKfCAjZGVmaW5lIERJUkVDVE9SWV9TRVAgJy8nCnwg I2RlZmluZSBJU19ERVZJQ0VfU0VQKF9jXykgMAp8ICNkZWZpbmUgSVNfRElSRUNUT1JZX1NFUChf Y18pICgoX2NfKSA9PSBESVJFQ1RPUllfU0VQKQp8ICNkZWZpbmUgSVNfQU5ZX1NFUChfY18pIChJ U19ESVJFQ1RPUllfU0VQIChfY18pKQp8ICNkZWZpbmUgSEFWRV9QUk9DRlMgMQp8ICNkZWZpbmUg REVGQVVMVF9TT1VORF9ERVZJQ0UgIi9kZXYvZHNwIgp8ICNkZWZpbmUgSU5URVJSVVBUX0lOUFVU IDEKfCAjZGVmaW5lIE5BUlJPV1BST1RPIDEKfCAjZGVmaW5lIFVOSVg5OF9QVFlTIDEKfCAjZGVm aW5lIFBUWV9JVEVSQVRJT04gaW50IGk7IGZvciAoaSA9IDA7IGkgPCAxOyBpKyspCnwgI2RlZmlu ZSBQVFlfVFRZX05BTUVfU1BSSU5URiB7IGNoYXIgKnB0eW5hbWUgPSAwOyBzaWdzZXRfdCBibG9j a2VkOyBzaWdlbXB0eXNldCAoJmJsb2NrZWQpOyBzaWdhZGRzZXQgKCZibG9ja2VkLCBTSUdDSExE KTsgcHRocmVhZF9zaWdtYXNrIChTSUdfQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKGdyYW50cHQg KGZkKSAhPSAtMSAmJiB1bmxvY2twdCAoZmQpICE9IC0xKSBwdHluYW1lID0gcHRzbmFtZShmZCk7 IHB0aHJlYWRfc2lnbWFzayAoU0lHX1VOQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKCFwdHluYW1l KSB7IGVtYWNzX2Nsb3NlIChmZCk7IHJldHVybiAtMTsgfSBzbnByaW50ZiAocHR5X25hbWUsIFBU WV9OQU1FX1NJWkUsICIlcyIsIHB0eW5hbWUpOyB9CnwgI2RlZmluZSBQVFlfT1BFTiBkbyB7IGZk ID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX0NMT0VYRUMgfCBPX05PQ1RUWSk7IGlmIChmZCA8 IDAgJiYgZXJybm8gPT0gRUlOVkFMKSBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19OT0NU VFkpOyB9IHdoaWxlIChmYWxzZSkKfCAjZGVmaW5lIFBUWV9OQU1FX1NQUklOVEYgLyoqLwp8ICNk ZWZpbmUgU0lHTkFMU19WSUFfQ0hBUkFDVEVSUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1Mg MQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfX1NFVEpNUCAxCnwg I2RlZmluZSBIQVZFX1NJR1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NUQUNLX09WRVJGTE9XX0hB TkRMSU5HIDEKfCAjZGVmaW5lIFVTRyAvKiovCnwgI2RlZmluZSBHTlVfTElOVVggLyoqLwp8ICNk ZWZpbmUgVVNBQkxFX0ZJT05SRUFEIDEKfCAjZGVmaW5lIFVTQUJMRV9TSUdJTyAxCnwgI2RlZmlu ZSBDT1BZUklHSFQgIkNvcHlyaWdodCAoQykgMjAxNiBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24s IEluYy4iCnwgI2RlZmluZSBURVJNX0hFQURFUiAieHRlcm0uaCIKfCAjZGVmaW5lIEVNQUNTX0NP TkZJR1VSQVRJT04gIng4Nl82NC11bmtub3duLWxpbnV4LWdudSIKfCAjZGVmaW5lIEVNQUNTX0NP TkZJR19PUFRJT05TICItLXdpdGgteC10b29sa2l0PWx1Y2lkIgp8ICNkZWZpbmUgSEFWRV9YX1dJ TkRPV1MgMQp8ICNkZWZpbmUgVVNFX1hfVE9PTEtJVCAxCnwgI2RlZmluZSBVU0VfTFVDSUQgMQp8 ICNkZWZpbmUgSEFWRV9YMTEgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfQVRUUklCVVRFX0FMSUdO RUQgMQp8ICNkZWZpbmUgR05VX01BTExPQyAxCnwgI2RlZmluZSBSRUxfQUxMT0MgMQp8ICNkZWZp bmUgSEFWRV9BTExPQ0FfSCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBIQVZF X1VOU0lHTkVEX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUgSEFWRV9DOTlfU1RSVE9MRCAxCnwg I2RlZmluZSBIQVZFX0VOVklST05fREVDTCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkRBVEFTWU5D IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJNT0RFIDAKfCAjZGVmaW5lIExTVEFUX0ZPTExPV1Nf U0xBU0hFRF9TWU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFW RV9HRVRPUFRfTE9OR19PTkxZIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRFTlYgMQp8ICNkZWZp bmUgcmVzdHJpY3QgX19yZXN0cmljdAp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkdfSU5UIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9NRU1SQ0hSIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTEFSTSAxCnwg I2RlZmluZSBIQVZFX1NJR1NFVF9UIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfVCAxCnwgI2RlZmlu ZSBIQVZFX1NUUlVDVF9UTV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fWk9ORSAxCnwgI2Rl ZmluZSBIQVZFX1RNX0dNVE9GRiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSVE9JTUFYIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9TVFJUT1VNQVggMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1VUSU1F UyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9VVElNQlVGIDEKfCAjZGVmaW5lIEdFVEdST1VQU19U IGdpZF90CnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZF X1NZU19BQ0xfSCAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRklMRSAxCnwgI2RlZmluZSBIQVZF X0FDTF9HRVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFW RV9BQ0xfU0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZSRUUgMQp8ICNkZWZpbmUgSEFWRV9B Q0xfRlJPTV9NT0RFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZST01fVEVYVCAxCnwgI2RlZmluZSBI QVZFX0FDTF9ERUxFVEVfREVGX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRVhURU5ERURfRklM RSAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8IC8qIERlZmluZSBhY2xfZnJlZV90ZXh0IHRv IGFuIGlubm9jdW91cyB2YXJpYW50LCBpbiBjYXNlIDxsaW1pdHMuaD4gZGVjbGFyZXMgYWNsX2Zy ZWVfdGV4dC4KfCAgICBGb3IgZXhhbXBsZSwgSFAtVVggMTFpIDxsaW1pdHMuaD4gZGVjbGFyZXMg Z2V0dGltZW9mZGF5LiAgKi8KfCAjZGVmaW5lIGFjbF9mcmVlX3RleHQgaW5ub2N1b3VzX2FjbF9m cmVlX3RleHQKfCAKfCAvKiBTeXN0ZW0gaGVhZGVyIHRvIGRlZmluZSBfX3N0dWIgbWFjcm9zIGFu ZCBob3BlZnVsbHkgZmV3IHByb3RvdHlwZXMsCnwgICAgIHdoaWNoIGNhbiBjb25mbGljdCB3aXRo IGNoYXIgYWNsX2ZyZWVfdGV4dCAoKTsgYmVsb3cuCnwgICAgIFByZWZlciA8bGltaXRzLmg+IHRv IDxhc3NlcnQuaD4gaWYgX19TVERDX18gaXMgZGVmaW5lZCwgc2luY2UKfCAgICAgPGxpbWl0cy5o PiBleGlzdHMgZXZlbiBvbiBmcmVlc3RhbmRpbmcgY29tcGlsZXJzLiAgKi8KfCAKfCAjaWZkZWYg X19TVERDX18KfCAjIGluY2x1ZGUgPGxpbWl0cy5oPgp8ICNlbHNlCnwgIyBpbmNsdWRlIDxhc3Nl cnQuaD4KfCAjZW5kaWYKfCAKfCAjdW5kZWYgYWNsX2ZyZWVfdGV4dAp8IAp8IC8qIE92ZXJyaWRl IGFueSBHQ0MgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLgp8ICAgIFVzZSBj aGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIEdDQwp8ICAg IGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBs eS4gICovCnwgI2lmZGVmIF9fY3BsdXNwbHVzCnwgZXh0ZXJuICJDIgp8ICNlbmRpZgp8IGNoYXIg YWNsX2ZyZWVfdGV4dCAoKTsKfCAvKiBUaGUgR05VIEMgbGlicmFyeSBkZWZpbmVzIHRoaXMgZm9y IGZ1bmN0aW9ucyB3aGljaCBpdCBpbXBsZW1lbnRzCnwgICAgIHRvIGFsd2F5cyBmYWlsIHdpdGgg RU5PU1lTLiAgU29tZSBmdW5jdGlvbnMgYXJlIGFjdHVhbGx5IG5hbWVkCnwgICAgIHNvbWV0aGlu ZyBzdGFydGluZyB3aXRoIF9fIGFuZCB0aGUgbm9ybWFsIG5hbWUgaXMgYW4gYWxpYXMuICAqLwp8 ICNpZiBkZWZpbmVkIF9fc3R1Yl9hY2xfZnJlZV90ZXh0IHx8IGRlZmluZWQgX19zdHViX19fYWNs X2ZyZWVfdGV4dAp8IGNob2tlIG1lCnwgI2VuZGlmCnwgCnwgaW50CnwgbWFpbiAoKQp8IHsKfCBy ZXR1cm4gYWNsX2ZyZWVfdGV4dCAoKTsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJl OjI0MjIxOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToyNDIzMjogY2hlY2tpbmcgZm9yIHdvcmtpbmcg YWNsX2dldF9maWxlCmNvbmZpZ3VyZToyNDI1NDogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAg ICBjb25mdGVzdC5jIC1sYWNsIC1scHRocmVhZCAgPiY1IApjb25maWd1cmU6MjQyNTQ6ICQ/ID0g MApjb25maWd1cmU6MjQyNjQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNDI3MzogY2hlY2tpbmcg YWNsL2xpYmFjbC5oIHVzYWJpbGl0eQpjb25maWd1cmU6MjQyNzM6IGdjYyAtYyAtZzMgLU8yICAg IGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyNDI3MzogJD8gPSAwCmNvbmZpZ3VyZToyNDI3Mzog cmVzdWx0OiB5ZXMKY29uZmlndXJlOjI0MjczOiBjaGVja2luZyBhY2wvbGliYWNsLmggcHJlc2Vu Y2UKY29uZmlndXJlOjI0MjczOiBnY2MgLUUgICAgY29uZnRlc3QuYwpjb25maWd1cmU6MjQyNzM6 ICQ/ID0gMApjb25maWd1cmU6MjQyNzM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNDI3MzogY2hl Y2tpbmcgZm9yIGFjbC9saWJhY2wuaApjb25maWd1cmU6MjQyNzM6IHJlc3VsdDogeWVzCmNvbmZp Z3VyZToyNDI5MzogY2hlY2tpbmcgZm9yIGFjbF9lbnRyaWVzCmNvbmZpZ3VyZToyNDI5MzogZ2Nj IC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jIC1sYWNsIC1scHRocmVhZCAgPiY1 IApjb25maWd1cmU6MjQyOTM6ICQ/ID0gMApjb25maWd1cmU6MjQyOTM6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZToyNDMwNzogY2hlY2tpbmcgZm9yIEFDTF9GSVJTVF9FTlRSWQpjb25maWd1cmU6MjQz MjU6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyNDMyNTogJD8g PSAwCmNvbmZpZ3VyZToyNDMzMjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI0MzM5OiBjaGVja2lu ZyBmb3IgQUNMX1RZUEVfRVhURU5ERUQKY29uZmlndXJlOjI0MzU3OiBnY2MgLWMgLWczIC1PMiAg ICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOjI5MDoxMjogZXJyb3I6ICdBQ0xfVFlQRV9FWFRF TkRFRCcgdW5kZWNsYXJlZCBoZXJlIChub3QgaW4gYSBmdW5jdGlvbikKIGludCB0eXBlID0gQUNM X1RZUEVfRVhURU5ERUQ7CiAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+CmNvbmZpZ3VyZToy NDM1NzogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZz LmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8ICNkZWZpbmUgUEFDS0FH RV9UQVJOQU1FICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMjUuMSIKfCAjZGVm aW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1hY3MgMjUuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVH UkVQT1JUICJidWctZ251LWVtYWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0 cDovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIFBBQ0tBR0UgImVtYWNz Igp8ICNkZWZpbmUgVkVSU0lPTiAiMjUuMSIKfCAjZGVmaW5lIE1BSUxfVVNFX1BPUCAxCnwgI2Rl ZmluZSBIQVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1RaU0VUIDEKfCAjZGVmaW5lIEhBVkVf RkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NF U1NBVCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEK fCAjZGVmaW5lIEhBVkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5l IEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFW RV9NS09TVEVNUCAxCnwgI2RlZmluZSBIQVZFX1BJUEUyIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVD VCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEK fCAjZGVmaW5lIEhBVkVfU1RSVE9VTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2Rl ZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfVElNRUdNIDEKfCAjZGVmaW5l IEhBVkVfRlVUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVNBVCAxCnwgI2RlZmluZSBIQVZF X0ZVVElNRU5TIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVOU0FUIDEKfCAjZGVmaW5lIEhBVkVfTFVU SU1FUyAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRUNV UkVfR0VURU5WIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19U WVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJ Ql9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAx CnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8 ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVm aW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAjZGVmaW5lIF9E QVJXSU5fQ19TT1VSQ0UgMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19VU0Vf TUlOR1dfQU5TSV9TVERJTyAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8 ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9VU0VfNjRfQklUX0lO T0RFIDEKfCAjZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBIQVZFX1NZ U19TT1VORENBUkRfSCAxCnwgI2RlZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VO RCAxCnwgI2RlZmluZSBIQVZFX1NZU19TWVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9QVFlfSCAx CnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05B TUVfSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUF9IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNk ZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVm aW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUg SEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX0VYRUNJTkZPX0ggMQp8ICNkZWZpbmUgSEFW RV9TVERJT19FWFRfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJ TlRfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VM RUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVf SCAxCnwgI2RlZmluZSBIQVZFX1BFUlNPTkFMSVRZX0xJTlVYMzIgMQp8ICNkZWZpbmUgSEFWRV9M SU5VWF9TWVNJTkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwgI2RlZmluZSBI QVZFX1RFUk1fSCAxCnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX1NZU19TSUdMSVNUIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmlu ZSBIQVZFX05FVF9JRl9IIDEKfCAjZGVmaW5lIEhBVkVfSUZBRERSU19IIDEKfCAjZGVmaW5lIEhB VkVfU1RSVUNUX0lGUkVRX0lGUl9GTEFHUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9J RlJfSFdBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9ORVRNQVNLIDEKfCAj ZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9CUk9BREFERFIgMQp8ICNkZWZpbmUgSEFWRV9T VFJVQ1RfSUZSRVFfSUZSX0FERFIgMQp8ICNkZWZpbmUgSEFWRV9MT05HX0ZJTEVfTkFNRVMgMQp8 ICNkZWZpbmUgSEFWRV9TWVNfVkxJTUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9EQVRBX1NUQVJUIDEK fCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9NTUFQIDEKfCAjZGVm aW5lIEhBVkVfUFRIUkVBRCAxCnwgI2RlZmluZSBIQVZFX1hLQiAxCnwgI2RlZmluZSBIQVZFX1hS TVNFVERBVEFCQVNFIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RSSU5HIDEKfCAj ZGVmaW5lIEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhBVkVfWDExUjYg MQp8ICNkZWZpbmUgSEFWRV9YX0kxOE4gMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9YSU0gMQp8ICNk ZWZpbmUgSEFWRV9SU1ZHIDEKfCAjZGVmaW5lIEhBVkVfSU1BR0VNQUdJQ0sgMQp8ICNkZWZpbmUg SEFWRV9NQUdJQ0tFWFBPUlRJTUFHRVBJWEVMUyAxCnwgI2RlZmluZSBIQVZFX01BR0lDS01FUkdF SU1BR0VMQVlFUlMgMQp8ICNkZWZpbmUgSEFWRV9EQlVTIDEKfCAjZGVmaW5lIEhBVkVfREJVU19X QVRDSF9HRVRfVU5JWF9GRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVFlQRV9JU19WQUxJRCAxCnwg I2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfQlVTX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9EQlVT X1ZBTElEQVRFX1BBVEggMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0lOVEVSRkFDRSAx CnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfTUVNQkVSIDEKfCAjZGVmaW5lIEhBVkVfR1NF VFRJTkdTIDEKfCAjZGVmaW5lIEhBVkVfR0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9HTlVUTFMgMQp8 ICNkZWZpbmUgSEFWRV9HTlVUTFMzIDEKfCAjZGVmaW5lIEhBVkVfSU5PVElGWSAxCnwgI2RlZmlu ZSBVU0VfRklMRV9OT1RJRlkgMQp8ICNkZWZpbmUgSEFWRV9YMTFYVFI2IDEKfCAjZGVmaW5lIFVT RV9UT09MS0lUX1NDUk9MTF9CQVJTIDEKfCAjZGVmaW5lIEhBVkVfWElNIDEKfCAjZGVmaW5lIFVT RV9YSU0gMQp8ICNkZWZpbmUgWFJlZ2lzdGVySU1JbnN0YW50aWF0ZUNhbGxiYWNrX2FyZzYgWFBv aW50ZXIKfCAjZGVmaW5lIEhBVkVfWEZUIDEKfCAjZGVmaW5lIEhBVkVfRlJFRVRZUEUgMQp8ICNk ZWZpbmUgSEFWRV9MSUJPVEYgMQp8ICNkZWZpbmUgSEFWRV9PVEZfR0VUX1ZBUklBVElPTl9HTFlQ SFMgMQp8ICNkZWZpbmUgSEFWRV9NMTdOX0ZMVCAxCnwgI2RlZmluZSBVU0VfWENCIDEKfCAjZGVm aW5lIEhBVkVfWFBNIDEKfCAjZGVmaW5lIEhBVkVfSlBFRyAxCnwgI2RlZmluZSBIQVZFX1pMSUIg MQp8ICNkZWZpbmUgSEFWRV9QTkcgMQp8ICNkZWZpbmUgSEFWRV9USUZGIDEKfCAjZGVmaW5lIEhB VkVfR0lGIDEKfCAjZGVmaW5lIEhBVkVfR1BNIDEKfCAjZGVmaW5lIEhBVkVfWF9TTSAxCnwgI2Rl ZmluZSBIQVZFX1hSQU5EUiAxCnwgI2RlZmluZSBIQVZFX1hJTkVSQU1BIDEKfCAjZGVmaW5lIEhB VkVfWEZJWEVTIDEKfCAjZGVmaW5lIEhBVkVfTElCWE1MMiAxCnwgI2RlZmluZSBIQVZFX0hfRVJS Tk8gMQp8ICNkZWZpbmUgTUFJTF9VU0VfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9BQ0NFUFQ0IDEK fCAjZGVmaW5lIEhBVkVfRkNIRElSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNk ZWZpbmUgSEFWRV9HRVRSVVNBR0UgMQp8ICNkZWZpbmUgSEFWRV9HRVRfQ1VSUkVOVF9ESVJfTkFN RSAxCnwgI2RlZmluZSBIQVZFX0xSQU5ENDggMQp8ICNkZWZpbmUgSEFWRV9SQU5ET00gMQp8ICNk ZWZpbmUgSEFWRV9SSU5UIDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVf R0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9O RVdMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRS TElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TSFVURE9XTiAxCnwgI2RlZmluZSBIQVZFX0dFVEFERFJJ TkZPIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RS U0lHTkFMIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfU0VORFRP IDEKfCAjZGVmaW5lIEhBVkVfUkVDVkZST00gMQp8ICNkZWZpbmUgSEFWRV9HRVRTT0NLTkFNRSAx CnwgI2RlZmluZSBIQVZFX0dFVFBFRVJOQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUSUZBRERSUyAx CnwgI2RlZmluZSBIQVZFX0ZSRUVJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfR0FJX1NUUkVSUk9S IDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVm aW5lIEhBVkVfRU5EUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUkVOVCAxCnwgI2RlZmluZSBI QVZFX0VOREdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfQ0ZNQUtFUkFXIDEKfCAjZGVmaW5lIEhBVkVf Q0ZTRVRTUEVFRCAxCnwgI2RlZmluZSBIQVZFX0NPUFlTSUdOIDEKfCAjZGVmaW5lIEhBVkVfX19F WEVDVVRBQkxFX1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVfTE9HMiAxCnwgI2RlZmluZSBIQVZFX0FM SUdORURfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fVU5XSU5EX0lOSVQgMQp8ICNk ZWZpbmUgSEFWRV9GU0VFS08gMQp8ICNkZWZpbmUgSEFWRV9HUkFOVFBUIDEKfCAjZGVmaW5lIEhB VkVfR0VUUFQgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9PUEVOUFQgMQp8ICNkZWZpbmUgVEVSTUlO Rk8gMQp8ICNkZWZpbmUgSEFWRV9USU1FUkZEIDEKfCAjZGVmaW5lIEhBVkVfUkVTX0lOSVQgMQp8 ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVU5JUEFJUl9VTklDT0RFIDEKfCAjZGVmaW5lIEhBVkVfSU5F VF9TT0NLRVRTIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEK fCAjZGVmaW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfRk9S SyAxCnwgI2RlZmluZSBIQVZFX1NOUFJJTlRGIDEKfCAjZGVmaW5lIEhBVkVfR0xJQiAxCnwgI2Rl ZmluZSBIQVZFX0xBTkdJTkZPX0NPREVTRVQgMQp8ICNkZWZpbmUgSEFWRV9NQlNUQVRFX1QgMQp8 ICNkZWZpbmUgQU1QRVJTQU5EX0ZVTExfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1BUWVMgMQp8ICNk ZWZpbmUgSEFWRV9TT0NLRVRTIDEKfCAjZGVmaW5lIE5VTExfREVWSUNFICIvZGV2L251bGwiCnwg I2RlZmluZSBTRVBDSEFSICc6Jwp8ICNkZWZpbmUgc3VicHJvY2Vzc2VzIDEKfCAjZGVmaW5lIFVT RVJfRlVMTF9OQU1FIHB3LT5wd19nZWNvcwp8ICNkZWZpbmUgRElSRUNUT1JZX1NFUCAnLycKfCAj ZGVmaW5lIElTX0RFVklDRV9TRVAoX2NfKSAwCnwgI2RlZmluZSBJU19ESVJFQ1RPUllfU0VQKF9j XykgKChfY18pID09IERJUkVDVE9SWV9TRVApCnwgI2RlZmluZSBJU19BTllfU0VQKF9jXykgKElT X0RJUkVDVE9SWV9TRVAgKF9jXykpCnwgI2RlZmluZSBIQVZFX1BST0NGUyAxCnwgI2RlZmluZSBE RUZBVUxUX1NPVU5EX0RFVklDRSAiL2Rldi9kc3AiCnwgI2RlZmluZSBJTlRFUlJVUFRfSU5QVVQg MQp8ICNkZWZpbmUgTkFSUk9XUFJPVE8gMQp8ICNkZWZpbmUgVU5JWDk4X1BUWVMgMQp8ICNkZWZp bmUgUFRZX0lURVJBVElPTiBpbnQgaTsgZm9yIChpID0gMDsgaSA8IDE7IGkrKykKfCAjZGVmaW5l IFBUWV9UVFlfTkFNRV9TUFJJTlRGIHsgY2hhciAqcHR5bmFtZSA9IDA7IHNpZ3NldF90IGJsb2Nr ZWQ7IHNpZ2VtcHR5c2V0ICgmYmxvY2tlZCk7IHNpZ2FkZHNldCAoJmJsb2NrZWQsIFNJR0NITEQp OyBwdGhyZWFkX3NpZ21hc2sgKFNJR19CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoZ3JhbnRwdCAo ZmQpICE9IC0xICYmIHVubG9ja3B0IChmZCkgIT0gLTEpIHB0eW5hbWUgPSBwdHNuYW1lKGZkKTsg cHRocmVhZF9zaWdtYXNrIChTSUdfVU5CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoIXB0eW5hbWUp IHsgZW1hY3NfY2xvc2UgKGZkKTsgcmV0dXJuIC0xOyB9IHNucHJpbnRmIChwdHlfbmFtZSwgUFRZ X05BTUVfU0laRSwgIiVzIiwgcHR5bmFtZSk7IH0KfCAjZGVmaW5lIFBUWV9PUEVOIGRvIHsgZmQg PSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fQ0xPRVhFQyB8IE9fTk9DVFRZKTsgaWYgKGZkIDwg MCAmJiBlcnJubyA9PSBFSU5WQUwpIGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX05PQ1RU WSk7IH0gd2hpbGUgKGZhbHNlKQp8ICNkZWZpbmUgUFRZX05BTUVfU1BSSU5URiAvKiovCnwgI2Rl ZmluZSBTSUdOQUxTX1ZJQV9DSEFSQUNURVJTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAx CnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgSEFWRV9fU0VUSk1QIDEKfCAj ZGVmaW5lIEhBVkVfU0lHU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU1RBQ0tfT1ZFUkZMT1dfSEFO RExJTkcgMQp8ICNkZWZpbmUgVVNHIC8qKi8KfCAjZGVmaW5lIEdOVV9MSU5VWCAvKiovCnwgI2Rl ZmluZSBVU0FCTEVfRklPTlJFQUQgMQp8ICNkZWZpbmUgVVNBQkxFX1NJR0lPIDEKfCAjZGVmaW5l IENPUFlSSUdIVCAiQ29weXJpZ2h0IChDKSAyMDE2IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwg SW5jLiIKfCAjZGVmaW5lIFRFUk1fSEVBREVSICJ4dGVybS5oIgp8ICNkZWZpbmUgRU1BQ1NfQ09O RklHVVJBVElPTiAieDg2XzY0LXVua25vd24tbGludXgtZ251Igp8ICNkZWZpbmUgRU1BQ1NfQ09O RklHX09QVElPTlMgIi0td2l0aC14LXRvb2xraXQ9bHVjaWQiCnwgI2RlZmluZSBIQVZFX1hfV0lO RE9XUyAxCnwgI2RlZmluZSBVU0VfWF9UT09MS0lUIDEKfCAjZGVmaW5lIFVTRV9MVUNJRCAxCnwg I2RlZmluZSBIQVZFX1gxMSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9BVFRSSUJVVEVfQUxJR05F RCAxCnwgI2RlZmluZSBHTlVfTUFMTE9DIDEKfCAjZGVmaW5lIFJFTF9BTExPQyAxCnwgI2RlZmlu ZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVf VU5TSUdORURfTE9OR19MT05HX0lOVCAxCnwgI2RlZmluZSBIQVZFX0M5OV9TVFJUT0xEIDEKfCAj ZGVmaW5lIEhBVkVfRU5WSVJPTl9ERUNMIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GREFUQVNZTkMg MQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUk1PREUgMAp8ICNkZWZpbmUgTFNUQVRfRk9MTE9XU19T TEFTSEVEX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZF X0dFVE9QVF9MT05HX09OTFkgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVEVOViAxCnwgI2RlZmlu ZSByZXN0cmljdCBfX3Jlc3RyaWN0CnwgI2RlZmluZSBIQVZFX0xPTkdfTE9OR19JTlQgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX01FTVJDSFIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0FMQVJNIDEKfCAj ZGVmaW5lIEhBVkVfU0lHU0VUX1QgMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9UIDEKfCAjZGVmaW5l IEhBVkVfU1RSVUNUX1RNX1RNX1pPTkUgMQp8ICNkZWZpbmUgSEFWRV9UTV9aT05FIDEKfCAjZGVm aW5lIEhBVkVfVE1fR01UT0ZGIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJUT0lNQVggMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX1NUUlRPVU1BWCAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVVRJTUVT IDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1VUSU1CVUYgMQp8ICNkZWZpbmUgR0VUR1JPVVBTX1Qg Z2lkX3QKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVf U1lTX0FDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVf QUNMX0dFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRklMRSAxCnwgI2RlZmluZSBIQVZF X0FDTF9TRVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJFRSAxCnwgI2RlZmluZSBIQVZFX0FD TF9GUk9NX01PREUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9URVhUIDEKfCAjZGVmaW5lIEhB VkVfQUNMX0RFTEVURV9ERUZfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9FWFRFTkRFRF9GSUxF IDEKfCAjZGVmaW5lIEhBVkVfQUNMX0xJQkFDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VOVFJJ RVMgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRklSU1RfRU5UUlkgMQp8IC8qIGVuZCBjb25mZGVmcy5o LiAgKi8KfCAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgI2luY2x1ZGUgPHN5cy9hY2wuaD4KfCBp bnQgdHlwZSA9IEFDTF9UWVBFX0VYVEVOREVEOwp8IGludAp8IG1haW4gKCkKfCB7CnwgCnwgICA7 CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToyNDM2NDogcmVzdWx0OiBubwpjb25maWd1cmU6 MjQ1Nzc6IGNoZWNraW5nIGZvciBhbGxvY2EgYXMgYSBjb21waWxlciBidWlsdC1pbgpjb25maWd1 cmU6MjQ2MDE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNDYyNzogY2hlY2tpbmcgYnl0ZXN3YXAu aCB1c2FiaWxpdHkKY29uZmlndXJlOjI0NjI3OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5j ID4mNQpjb25maWd1cmU6MjQ2Mjc6ICQ/ID0gMApjb25maWd1cmU6MjQ2Mjc6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZToyNDYyNzogY2hlY2tpbmcgYnl0ZXN3YXAuaCBwcmVzZW5jZQpjb25maWd1cmU6 MjQ2Mjc6IGdjYyAtRSAgICBjb25mdGVzdC5jCmNvbmZpZ3VyZToyNDYyNzogJD8gPSAwCmNvbmZp Z3VyZToyNDYyNzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI0NjI3OiBjaGVja2luZyBmb3IgYnl0 ZXN3YXAuaApjb25maWd1cmU6MjQ2Mjc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNDY2NjogY2hl Y2tpbmcgZm9yIGxpYnJhcnkgY29udGFpbmluZyBjbG9ja19nZXR0aW1lCmNvbmZpZ3VyZToyNDY5 NzogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jIC1scHRocmVhZCAgPiY1 IApjb25maWd1cmU6MjQ2OTc6ICQ/ID0gMApjb25maWd1cmU6MjQ3MTQ6IHJlc3VsdDogbm9uZSBy ZXF1aXJlZApjb25maWd1cmU6MjQ3MjY6IGNoZWNraW5nIGZvciBjbG9ja19nZXR0aW1lCmNvbmZp Z3VyZToyNDcyNjogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jIC1scHRo cmVhZCAgPiY1IApjb25maWd1cmU6MjQ3MjY6ICQ/ID0gMApjb25maWd1cmU6MjQ3MjY6IHJlc3Vs dDogeWVzCmNvbmZpZ3VyZToyNDcyNjogY2hlY2tpbmcgZm9yIGNsb2NrX3NldHRpbWUKY29uZmln dXJlOjI0NzI2OiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgLWxwdGhy ZWFkICA+JjUgCmNvbmZpZ3VyZToyNDcyNjogJD8gPSAwCmNvbmZpZ3VyZToyNDcyNjogcmVzdWx0 OiB5ZXMKY29uZmlndXJlOjI0ODczOiBjaGVja2luZyB3aGV0aGVyIGR1cDIgd29ya3MKY29uZmln dXJlOjI0OTYxOiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgLWxwdGhy ZWFkICA+JjUgCmNvbmZpZ3VyZToyNDk2MTogJD8gPSAwCmNvbmZpZ3VyZToyNDk2MTogLi9jb25m dGVzdApjb25maWd1cmU6MjQ5NjE6ICQ/ID0gMApjb25maWd1cmU6MjQ5NzI6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZToyNTAzOTogY2hlY2tpbmcgZm9yIGxpYnJhcnkgY29udGFpbmluZyBiYWNrdHJh Y2Vfc3ltYm9sc19mZApjb25maWd1cmU6MjUwNzA6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAg ICAgY29uZnRlc3QuYyAtbHB0aHJlYWQgID4mNSAKY29uZmlndXJlOjI1MDcwOiAkPyA9IDAKY29u ZmlndXJlOjI1MDg3OiByZXN1bHQ6IG5vbmUgcmVxdWlyZWQKY29uZmlndXJlOjI1MTk0OiBjaGVj a2luZyB3aGV0aGVyIGZjbnRsIGhhbmRsZXMgRl9EVVBGRCBjb3JyZWN0bHkKY29uZmlndXJlOjI1 MjUyOiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgLWxwdGhyZWFkICA+ JjUgCmNvbmZpZ3VyZToyNTI1MjogJD8gPSAwCmNvbmZpZ3VyZToyNTI1MjogLi9jb25mdGVzdApj b25maWd1cmU6MjUyNTI6ICQ/ID0gMApjb25maWd1cmU6MjUyNjI6IHJlc3VsdDogeWVzCmNvbmZp Z3VyZToyNTI4MDogY2hlY2tpbmcgd2hldGhlciBmY250bCB1bmRlcnN0YW5kcyBGX0RVUEZEX0NM T0VYRUMKY29uZmlndXJlOjI1MzAxOiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpj b25maWd1cmU6MjUzMDE6ICQ/ID0gMApjb25maWd1cmU6MjUzMTk6IGdjYyAtYyAtZzMgLU8yICAg IGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6MzAwOjE6IGVycm9yOiB1bmtub3duIHR5cGUgbmFt ZSAnY2hva2UnCiBjaG9rZSBtZQogXn5+fn4KY29uZnRlc3QuYzozMDM6MTogZXJyb3I6IGV4cGVj dGVkICc9JywgJywnLCAnOycsICdhc20nIG9yICdfX2F0dHJpYnV0ZV9fJyBiZWZvcmUgJ2ludCcK IGludAogXn5+CmNvbmZpZ3VyZToyNTMxOTogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dy YW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVt YWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0Vf VkVSU0lPTiAiMjUuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1hY3MgMjUuMSIK fCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ251LWVtYWNzQGdudS5vcmciCnwgI2Rl ZmluZSBQQUNLQUdFX1VSTCAiaHR0cDovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAj ZGVmaW5lIFBBQ0tBR0UgImVtYWNzIgp8ICNkZWZpbmUgVkVSU0lPTiAiMjUuMSIKfCAjZGVmaW5l IE1BSUxfVVNFX1BPUCAxCnwgI2RlZmluZSBIQVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1Ra U0VUIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTktBVCAx CnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVm aW5lIEhBVkVfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRBVCAxCnwgI2RlZmluZSBI QVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVf TFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9NS09TVEVNUCAxCnwgI2RlZmluZSBIQVZFX1BJUEUyIDEK fCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVm aW5lIEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9VTUFYIDEKfCAjZGVmaW5l IEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5lIEhB VkVfVElNRUdNIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0ZVVElN RVNBVCAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRU5TIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVOU0FU IDEKfCAjZGVmaW5lIEhBVkVfTFVUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUg MQp8ICNkZWZpbmUgSEFWRV9TRUNVUkVfR0VURU5WIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAx CnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAx CnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNk ZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmlu ZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBI QVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIF9BTExf U09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8ICNkZWZpbmUgX0dOVV9TT1VS Q0UgMQp8ICNkZWZpbmUgX19VU0VfTUlOR1dfQU5TSV9TVERJTyAxCnwgI2RlZmluZSBfUE9TSVhf UFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUg X0RBUldJTl9VU0VfNjRfQklUX0lOT0RFIDEKfCAjZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUvbGlu dXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAxCnwgI2RlZmluZSBIQVZFX0FMU0Eg MQp8ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwgI2RlZmluZSBIQVZFX1NZU19TWVNJTkZPX0ggMQp8 ICNkZWZpbmUgSEFWRV9QVFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVm aW5lIEhBVkVfVVRNUF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5l IEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX0VYRUNJ TkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJT19FWFRfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9Q VF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0gg MQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEK fCAjZGVmaW5lIEhBVkVfVVRJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BFUlNPTkFMSVRZX0xJTlVY MzIgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZU0lO Rk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAxCnwgI2RlZmluZSBUSU1FX1dJVEhfU1lT X1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NZU19TSUdMSVNUIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX05FVF9JRl9IIDEKfCAjZGVmaW5lIEhBVkVfSUZB RERSU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9GTEFHUyAxCnwgI2RlZmlu ZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfSFdBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lG UkVRX0lGUl9ORVRNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9CUk9BREFE RFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0FERFIgMQp8ICNkZWZpbmUgSEFW RV9MT05HX0ZJTEVfTkFNRVMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVkxJTUlUX0ggMQp8ICNkZWZp bmUgSEFWRV9EQVRBX1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZp bmUgSEFWRV9NTUFQIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRCAxCnwgI2RlZmluZSBIQVZFX1hL QiAxCnwgI2RlZmluZSBIQVZFX1hSTVNFVERBVEFCQVNFIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVF TlJFU09VUkNFU1RSSU5HIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEK fCAjZGVmaW5lIEhBVkVfWDExUjYgMQp8ICNkZWZpbmUgSEFWRV9YX0kxOE4gMQp8ICNkZWZpbmUg SEFWRV9YMTFSNl9YSU0gMQp8ICNkZWZpbmUgSEFWRV9SU1ZHIDEKfCAjZGVmaW5lIEhBVkVfSU1B R0VNQUdJQ0sgMQp8ICNkZWZpbmUgSEFWRV9NQUdJQ0tFWFBPUlRJTUFHRVBJWEVMUyAxCnwgI2Rl ZmluZSBIQVZFX01BR0lDS01FUkdFSU1BR0VMQVlFUlMgMQp8ICNkZWZpbmUgSEFWRV9EQlVTIDEK fCAjZGVmaW5lIEhBVkVfREJVU19XQVRDSF9HRVRfVU5JWF9GRCAxCnwgI2RlZmluZSBIQVZFX0RC VVNfVFlQRV9JU19WQUxJRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfQlVTX05BTUUg MQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX1BBVEggMQp8ICNkZWZpbmUgSEFWRV9EQlVT X1ZBTElEQVRFX0lOVEVSRkFDRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfTUVNQkVS IDEKfCAjZGVmaW5lIEhBVkVfR1NFVFRJTkdTIDEKfCAjZGVmaW5lIEhBVkVfR0NPTkYgMQp8ICNk ZWZpbmUgSEFWRV9HTlVUTFMgMQp8ICNkZWZpbmUgSEFWRV9HTlVUTFMzIDEKfCAjZGVmaW5lIEhB VkVfSU5PVElGWSAxCnwgI2RlZmluZSBVU0VfRklMRV9OT1RJRlkgMQp8ICNkZWZpbmUgSEFWRV9Y MTFYVFI2IDEKfCAjZGVmaW5lIFVTRV9UT09MS0lUX1NDUk9MTF9CQVJTIDEKfCAjZGVmaW5lIEhB VkVfWElNIDEKfCAjZGVmaW5lIFVTRV9YSU0gMQp8ICNkZWZpbmUgWFJlZ2lzdGVySU1JbnN0YW50 aWF0ZUNhbGxiYWNrX2FyZzYgWFBvaW50ZXIKfCAjZGVmaW5lIEhBVkVfWEZUIDEKfCAjZGVmaW5l IEhBVkVfRlJFRVRZUEUgMQp8ICNkZWZpbmUgSEFWRV9MSUJPVEYgMQp8ICNkZWZpbmUgSEFWRV9P VEZfR0VUX1ZBUklBVElPTl9HTFlQSFMgMQp8ICNkZWZpbmUgSEFWRV9NMTdOX0ZMVCAxCnwgI2Rl ZmluZSBVU0VfWENCIDEKfCAjZGVmaW5lIEhBVkVfWFBNIDEKfCAjZGVmaW5lIEhBVkVfSlBFRyAx CnwgI2RlZmluZSBIQVZFX1pMSUIgMQp8ICNkZWZpbmUgSEFWRV9QTkcgMQp8ICNkZWZpbmUgSEFW RV9USUZGIDEKfCAjZGVmaW5lIEhBVkVfR0lGIDEKfCAjZGVmaW5lIEhBVkVfR1BNIDEKfCAjZGVm aW5lIEhBVkVfWF9TTSAxCnwgI2RlZmluZSBIQVZFX1hSQU5EUiAxCnwgI2RlZmluZSBIQVZFX1hJ TkVSQU1BIDEKfCAjZGVmaW5lIEhBVkVfWEZJWEVTIDEKfCAjZGVmaW5lIEhBVkVfTElCWE1MMiAx CnwgI2RlZmluZSBIQVZFX0hfRVJSTk8gMQp8ICNkZWZpbmUgTUFJTF9VU0VfRkxPQ0sgMQp8ICNk ZWZpbmUgSEFWRV9BQ0NFUFQ0IDEKfCAjZGVmaW5lIEhBVkVfRkNIRElSIDEKfCAjZGVmaW5lIEhB VkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNBR0UgMQp8ICNkZWZpbmUgSEFW RV9HRVRfQ1VSUkVOVF9ESVJfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0xSQU5ENDggMQp8ICNkZWZp bmUgSEFWRV9SQU5ET00gMQp8ICNkZWZpbmUgSEFWRV9SSU5UIDEKfCAjZGVmaW5lIEhBVkVfU0VM RUNUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRVRMT0NB TEUgMQp8ICNkZWZpbmUgSEFWRV9ORVdMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSTElNSVQg MQp8ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TSFVURE9XTiAxCnwg I2RlZmluZSBIQVZFX0dFVEFERFJJTkZPIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNL IDEKfCAjZGVmaW5lIEhBVkVfU1RSU0lHTkFMIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEK fCAjZGVmaW5lIEhBVkVfU0VORFRPIDEKfCAjZGVmaW5lIEhBVkVfUkVDVkZST00gMQp8ICNkZWZp bmUgSEFWRV9HRVRTT0NLTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFBFRVJOQU1FIDEKfCAjZGVm aW5lIEhBVkVfR0VUSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVJRkFERFJTIDEKfCAjZGVm aW5lIEhBVkVfR0FJX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAxCnwgI2RlZmluZSBI QVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9H RVRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0VOREdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfQ0ZNQUtF UkFXIDEKfCAjZGVmaW5lIEhBVkVfQ0ZTRVRTUEVFRCAxCnwgI2RlZmluZSBIQVZFX0NPUFlTSUdO IDEKfCAjZGVmaW5lIEhBVkVfX19FWEVDVVRBQkxFX1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVfTE9H MiAxCnwgI2RlZmluZSBIQVZFX0FMSUdORURfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxU SU5fVU5XSU5EX0lOSVQgMQp8ICNkZWZpbmUgSEFWRV9GU0VFS08gMQp8ICNkZWZpbmUgSEFWRV9H UkFOVFBUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFQgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9PUEVO UFQgMQp8ICNkZWZpbmUgVEVSTUlORk8gMQp8ICNkZWZpbmUgSEFWRV9USU1FUkZEIDEKfCAjZGVm aW5lIEhBVkVfUkVTX0lOSVQgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVU5JUEFJUl9VTklDT0RF IDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9TT0NLRVRTIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwg I2RlZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwgI2Rl ZmluZSBIQVZFX1dPUktJTkdfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1NOUFJJTlRGIDEKfCAjZGVm aW5lIEhBVkVfR0xJQiAxCnwgI2RlZmluZSBIQVZFX0xBTkdJTkZPX0NPREVTRVQgMQp8ICNkZWZp bmUgSEFWRV9NQlNUQVRFX1QgMQp8ICNkZWZpbmUgQU1QRVJTQU5EX0ZVTExfTkFNRSAxCnwgI2Rl ZmluZSBIQVZFX1BUWVMgMQp8ICNkZWZpbmUgSEFWRV9TT0NLRVRTIDEKfCAjZGVmaW5lIE5VTExf REVWSUNFICIvZGV2L251bGwiCnwgI2RlZmluZSBTRVBDSEFSICc6Jwp8ICNkZWZpbmUgc3VicHJv Y2Vzc2VzIDEKfCAjZGVmaW5lIFVTRVJfRlVMTF9OQU1FIHB3LT5wd19nZWNvcwp8ICNkZWZpbmUg RElSRUNUT1JZX1NFUCAnLycKfCAjZGVmaW5lIElTX0RFVklDRV9TRVAoX2NfKSAwCnwgI2RlZmlu ZSBJU19ESVJFQ1RPUllfU0VQKF9jXykgKChfY18pID09IERJUkVDVE9SWV9TRVApCnwgI2RlZmlu ZSBJU19BTllfU0VQKF9jXykgKElTX0RJUkVDVE9SWV9TRVAgKF9jXykpCnwgI2RlZmluZSBIQVZF X1BST0NGUyAxCnwgI2RlZmluZSBERUZBVUxUX1NPVU5EX0RFVklDRSAiL2Rldi9kc3AiCnwgI2Rl ZmluZSBJTlRFUlJVUFRfSU5QVVQgMQp8ICNkZWZpbmUgTkFSUk9XUFJPVE8gMQp8ICNkZWZpbmUg VU5JWDk4X1BUWVMgMQp8ICNkZWZpbmUgUFRZX0lURVJBVElPTiBpbnQgaTsgZm9yIChpID0gMDsg aSA8IDE7IGkrKykKfCAjZGVmaW5lIFBUWV9UVFlfTkFNRV9TUFJJTlRGIHsgY2hhciAqcHR5bmFt ZSA9IDA7IHNpZ3NldF90IGJsb2NrZWQ7IHNpZ2VtcHR5c2V0ICgmYmxvY2tlZCk7IHNpZ2FkZHNl dCAoJmJsb2NrZWQsIFNJR0NITEQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19CTE9DSywgJmJsb2Nr ZWQsIDApOyBpZiAoZ3JhbnRwdCAoZmQpICE9IC0xICYmIHVubG9ja3B0IChmZCkgIT0gLTEpIHB0 eW5hbWUgPSBwdHNuYW1lKGZkKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfVU5CTE9DSywgJmJsb2Nr ZWQsIDApOyBpZiAoIXB0eW5hbWUpIHsgZW1hY3NfY2xvc2UgKGZkKTsgcmV0dXJuIC0xOyB9IHNu cHJpbnRmIChwdHlfbmFtZSwgUFRZX05BTUVfU0laRSwgIiVzIiwgcHR5bmFtZSk7IH0KfCAjZGVm aW5lIFBUWV9PUEVOIGRvIHsgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fQ0xPRVhFQyB8 IE9fTk9DVFRZKTsgaWYgKGZkIDwgMCAmJiBlcnJubyA9PSBFSU5WQUwpIGZkID0gcG9zaXhfb3Bl bnB0IChPX1JEV1IgfCBPX05PQ1RUWSk7IH0gd2hpbGUgKGZhbHNlKQp8ICNkZWZpbmUgUFRZX05B TUVfU1BSSU5URiAvKiovCnwgI2RlZmluZSBTSUdOQUxTX1ZJQV9DSEFSQUNURVJTIDEKfCAjZGVm aW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZp bmUgSEFWRV9fU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUSk1QIDEKfCAjZGVmaW5lIEhB VkVfU1RBQ0tfT1ZFUkZMT1dfSEFORExJTkcgMQp8ICNkZWZpbmUgVVNHIC8qKi8KfCAjZGVmaW5l IEdOVV9MSU5VWCAvKiovCnwgI2RlZmluZSBVU0FCTEVfRklPTlJFQUQgMQp8ICNkZWZpbmUgVVNB QkxFX1NJR0lPIDEKfCAjZGVmaW5lIENPUFlSSUdIVCAiQ29weXJpZ2h0IChDKSAyMDE2IEZyZWUg U29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiIKfCAjZGVmaW5lIFRFUk1fSEVBREVSICJ4dGVybS5o Igp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHVVJBVElPTiAieDg2XzY0LXVua25vd24tbGludXgtZ251 Igp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHX09QVElPTlMgIi0td2l0aC14LXRvb2xraXQ9bHVjaWQi CnwgI2RlZmluZSBIQVZFX1hfV0lORE9XUyAxCnwgI2RlZmluZSBVU0VfWF9UT09MS0lUIDEKfCAj ZGVmaW5lIFVTRV9MVUNJRCAxCnwgI2RlZmluZSBIQVZFX1gxMSAxCnwgI2RlZmluZSBIQVZFX1NU UlVDVF9BVFRSSUJVVEVfQUxJR05FRCAxCnwgI2RlZmluZSBHTlVfTUFMTE9DIDEKfCAjZGVmaW5l IFJFTF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxM T0NBIDEKfCAjZGVmaW5lIEhBVkVfVU5TSUdORURfTE9OR19MT05HX0lOVCAxCnwgI2RlZmluZSBI QVZFX0M5OV9TVFJUT0xEIDEKfCAjZGVmaW5lIEhBVkVfRU5WSVJPTl9ERUNMIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9GREFUQVNZTkMgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUk1PREUgMAp8ICNk ZWZpbmUgTFNUQVRfRk9MTE9XU19TTEFTSEVEX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9HRVRP UFRfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9MT05HX09OTFkgMQp8ICNkZWZpbmUgSEFWRV9E RUNMX0dFVEVOViAxCnwgI2RlZmluZSByZXN0cmljdCBfX3Jlc3RyaWN0CnwgI2RlZmluZSBIQVZF X0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX01FTVJDSFIgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX0FMQVJNIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUX1QgMQp8ICNkZWZpbmUgSEFW RV9XQ0hBUl9UIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1RNX1RNX1pPTkUgMQp8ICNkZWZpbmUg SEFWRV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fR01UT0ZGIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9TVFJUT0lNQVggMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUlRPVU1BWCAxCnwgI2RlZmlu ZSBIQVZFX1dPUktJTkdfVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1VUSU1CVUYgMQp8 ICNkZWZpbmUgR0VUR1JPVVBTX1QgZ2lkX3QKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVREVEFCTEVT SVpFIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0FDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9G SUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRf RklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJF RSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX01PREUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJP TV9URVhUIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0RFTEVURV9ERUZfRklMRSAxCnwgI2RlZmluZSBI QVZFX0FDTF9FWFRFTkRFRF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0xJQkFDTF9IIDEKfCAj ZGVmaW5lIEhBVkVfQUNMX0VOVFJJRVMgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRklSU1RfRU5UUlkg MQp8ICNkZWZpbmUgVVNFX0FDTCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBI QVZFX0JZVEVTV0FQX0ggMQp8ICNkZWZpbmUgSEFWRV9DTE9DS19HRVRUSU1FIDEKfCAjZGVmaW5l IEhBVkVfQ0xPQ0tfU0VUVElNRSAxCnwgI2RlZmluZSBHTlVMSUJfQ0xPU0VfU1RSRUFNIDEKfCAj ZGVmaW5lIEhBVkVfRFVQMiAxCnwgI2RlZmluZSBHTlVMSUJfRkFDQ0VTU0FUIDEKfCAvKiBlbmQg Y29uZmRlZnMuaC4gICovCnwgCnwgI2lmZGVmIF9fbGludXhfXwp8IC8qIFRoZSBMaW51eCBrZXJu ZWwgb25seSBhZGRlZCBGX0RVUEZEX0NMT0VYRUMgaW4gMi42LjI0LCBzbyB3ZSBhbHdheXMgcmVw bGFjZQp8ICAgIGl0IHRvIHN1cHBvcnQgdGhlIHNlbWFudGljcyBvbiBvbGRlciBrZXJuZWxzIHRo YXQgZmFpbGVkIHdpdGggRUlOVkFMLiAgKi8KfCBjaG9rZSBtZQp8ICNlbmRpZgp8IAp8IGludAp8 IG1haW4gKCkKfCB7CnwgCnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToyNTMzMDog cmVzdWx0OiBuZWVkcyBydW50aW1lIGNoZWNrCmNvbmZpZ3VyZToyNTQ3NTogY2hlY2tpbmcgZm9y IGxpYnJhcnkgY29udGFpbmluZyBmZGF0YXN5bmMKY29uZmlndXJlOjI1NTA2OiBnY2MgLW8gY29u ZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgLWxwdGhyZWFkICA+JjUgCmNvbmZpZ3VyZToy NTUwNjogJD8gPSAwCmNvbmZpZ3VyZToyNTUyMzogcmVzdWx0OiBub25lIHJlcXVpcmVkCmNvbmZp Z3VyZToyNTU2MzogY2hlY2tpbmcgd2hldGhlciBmZG9wZW5kaXIgaXMgZGVjbGFyZWQKY29uZmln dXJlOjI1NTYzOiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjU1 NjM6ICQ/ID0gMApjb25maWd1cmU6MjU1NjM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNTU4Njog Y2hlY2tpbmcgd2hldGhlciBmZG9wZW5kaXIgd29ya3MKY29uZmlndXJlOjI1NjI3OiBnY2MgLW8g Y29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgLWxwdGhyZWFkICA+JjUgCmNvbmZpZ3Vy ZToyNTYyNzogJD8gPSAwCmNvbmZpZ3VyZToyNTYyNzogLi9jb25mdGVzdApjb25maWd1cmU6MjU2 Mjc6ICQ/ID0gMApjb25maWd1cmU6MjU2Mzc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNTY4OTog Y2hlY2tpbmcgZm9yIF9fZnBlbmRpbmcKY29uZmlndXJlOjI1NzA2OiBnY2MgLW8gY29uZnRlc3Qg LWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgLWxwdGhyZWFkICA+JjUgCmNvbmZpZ3VyZToyNTcwNjog JD8gPSAwCmNvbmZpZ3VyZToyNTcxNTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI1NzE4OiBjaGVj a2luZyB3aGV0aGVyIF9fZnBlbmRpbmcgaXMgZGVjbGFyZWQKY29uZmlndXJlOjI1NzE4OiBnY2Mg LWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjU3MTg6ICQ/ID0gMApjb25m aWd1cmU6MjU3MTg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNTgzMzogY2hlY2tpbmcgd2hldGhl ciBmc3RhdGF0ICguLi4sIDApIHdvcmtzCmNvbmZpZ3VyZToyNTg1ODogZ2NjIC1vIGNvbmZ0ZXN0 IC1nMyAtTzIgICAgICBjb25mdGVzdC5jIC1scHRocmVhZCAgPiY1IApjb25maWd1cmU6MjU4NTg6 ICQ/ID0gMApjb25maWd1cmU6MjU4NTg6IC4vY29uZnRlc3QKY29uZmlndXJlOjI1ODU4OiAkPyA9 IDAKY29uZmlndXJlOjI1ODY5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjU5NTA6IGNoZWNraW5n IGZvciBnZXRsb2FkYXZnCmNvbmZpZ3VyZToyNTk1MDogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIg ICAgICBjb25mdGVzdC5jIC1scHRocmVhZCAgPiY1IApjb25maWd1cmU6MjU5NTA6ICQ/ID0gMApj b25maWd1cmU6MjU5NTA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNjMwODogY2hlY2tpbmcgc3lz L2xvYWRhdmcuaCB1c2FiaWxpdHkKY29uZmlndXJlOjI2MzA4OiBnY2MgLWMgLWczIC1PMiAgICBj b25mdGVzdC5jID4mNQpjb25mdGVzdC5jOjMzMjoyNTogZmF0YWwgZXJyb3I6IHN5cy9sb2FkYXZn Lmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKICNpbmNsdWRlIDxzeXMvbG9hZGF2Zy5oPgog ICAgICAgICAgICAgICAgICAgICAgICAgXgpjb21waWxhdGlvbiB0ZXJtaW5hdGVkLgpjb25maWd1 cmU6MjYzMDg6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25m ZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBB Q0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjI1LjEiCnwg I2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDI1LjEiCnwgI2RlZmluZSBQQUNLQUdF X0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwg Imh0dHA6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmluZSBQQUNLQUdFICJl bWFjcyIKfCAjZGVmaW5lIFZFUlNJT04gIjI1LjEiCnwgI2RlZmluZSBNQUlMX1VTRV9QT1AgMQp8 ICNkZWZpbmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9UWlNFVCAxCnwgI2RlZmluZSBI QVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LQVQgMQp8ICNkZWZpbmUgSEFWRV9G QUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJ UiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2Rl ZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5l IEhBVkVfTUtPU1RFTVAgMQp8ICNkZWZpbmUgSEFWRV9QSVBFMiAxCnwgI2RlZmluZSBIQVZFX1BT RUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1B WCAxCnwgI2RlZmluZSBIQVZFX1NUUlRPVU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8 ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX1RJTUVHTSAxCnwgI2Rl ZmluZSBIQVZFX0ZVVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVTQVQgMQp8ICNkZWZpbmUg SEFWRV9GVVRJTUVOUyAxCnwgI2RlZmluZSBIQVZFX1VUSU1FTlNBVCAxCnwgI2RlZmluZSBIQVZF X0xVVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVf U0VDVVJFX0dFVEVOViAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9T WVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9T VERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZ X0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19I IDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwg I2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmlu ZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9f VVNFX01JTkdXX0FOU0lfU1RESU8gMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNT IDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fVVNFXzY0X0JJ VF9JTk9ERSAxCnwgI2RlZmluZSBTWVNURU1fVFlQRSAiZ251L2xpbnV4Igp8ICNkZWZpbmUgSEFW RV9TWVNfU09VTkRDQVJEX0ggMQp8ICNkZWZpbmUgSEFWRV9BTFNBIDEKfCAjZGVmaW5lIEhBVkVf U09VTkQgMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZ X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19V VFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAx CnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEK fCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwg I2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVm aW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5l IEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVf U1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1VU SU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QRVJTT05BTElUWV9MSU5VWDMyIDEKfCAjZGVmaW5lIEhB VkVfTElOVVhfU1lTSU5GTyAxCnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZp bmUgSEFWRV9URVJNX0ggMQp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9TWVNfU0lHTElTVCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNk ZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZFX0lGQUREUlNfSCAxCnwgI2RlZmlu ZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZS RVFfSUZSX0hXQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAx CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJPQURBRERSIDEKfCAjZGVmaW5lIEhB VkVfU1RSVUNUX0lGUkVRX0lGUl9BRERSIDEKfCAjZGVmaW5lIEhBVkVfTE9OR19GSUxFX05BTUVT IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1ZMSU1JVF9IIDEKfCAjZGVmaW5lIEhBVkVfREFUQV9TVEFS VCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwg I2RlZmluZSBIQVZFX1BUSFJFQUQgMQp8ICNkZWZpbmUgSEFWRV9YS0IgMQp8ICNkZWZpbmUgSEFW RV9YUk1TRVREQVRBQkFTRSAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNPVVJDRVNUUklORyAx CnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJPRlNDUkVFTiAxCnwgI2RlZmluZSBIQVZFX1gx MVI2IDEKfCAjZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVmaW5lIEhBVkVfWDExUjZfWElNIDEK fCAjZGVmaW5lIEhBVkVfUlNWRyAxCnwgI2RlZmluZSBIQVZFX0lNQUdFTUFHSUNLIDEKfCAjZGVm aW5lIEhBVkVfTUFHSUNLRVhQT1JUSU1BR0VQSVhFTFMgMQp8ICNkZWZpbmUgSEFWRV9NQUdJQ0tN RVJHRUlNQUdFTEFZRVJTIDEKfCAjZGVmaW5lIEhBVkVfREJVUyAxCnwgI2RlZmluZSBIQVZFX0RC VVNfV0FUQ0hfR0VUX1VOSVhfRkQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1RZUEVfSVNfVkFMSUQg MQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0JVU19OQU1FIDEKfCAjZGVmaW5lIEhBVkVf REJVU19WQUxJREFURV9QQVRIIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9JTlRFUkZB Q0UgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX01FTUJFUiAxCnwgI2RlZmluZSBIQVZF X0dTRVRUSU5HUyAxCnwgI2RlZmluZSBIQVZFX0dDT05GIDEKfCAjZGVmaW5lIEhBVkVfR05VVExT IDEKfCAjZGVmaW5lIEhBVkVfR05VVExTMyAxCnwgI2RlZmluZSBIQVZFX0lOT1RJRlkgMQp8ICNk ZWZpbmUgVVNFX0ZJTEVfTk9USUZZIDEKfCAjZGVmaW5lIEhBVkVfWDExWFRSNiAxCnwgI2RlZmlu ZSBVU0VfVE9PTEtJVF9TQ1JPTExfQkFSUyAxCnwgI2RlZmluZSBIQVZFX1hJTSAxCnwgI2RlZmlu ZSBVU0VfWElNIDEKfCAjZGVmaW5lIFhSZWdpc3RlcklNSW5zdGFudGlhdGVDYWxsYmFja19hcmc2 IFhQb2ludGVyCnwgI2RlZmluZSBIQVZFX1hGVCAxCnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEK fCAjZGVmaW5lIEhBVkVfTElCT1RGIDEKfCAjZGVmaW5lIEhBVkVfT1RGX0dFVF9WQVJJQVRJT05f R0xZUEhTIDEKfCAjZGVmaW5lIEhBVkVfTTE3Tl9GTFQgMQp8ICNkZWZpbmUgVVNFX1hDQiAxCnwg I2RlZmluZSBIQVZFX1hQTSAxCnwgI2RlZmluZSBIQVZFX0pQRUcgMQp8ICNkZWZpbmUgSEFWRV9a TElCIDEKfCAjZGVmaW5lIEhBVkVfUE5HIDEKfCAjZGVmaW5lIEhBVkVfVElGRiAxCnwgI2RlZmlu ZSBIQVZFX0dJRiAxCnwgI2RlZmluZSBIQVZFX0dQTSAxCnwgI2RlZmluZSBIQVZFX1hfU00gMQp8 ICNkZWZpbmUgSEFWRV9YUkFORFIgMQp8ICNkZWZpbmUgSEFWRV9YSU5FUkFNQSAxCnwgI2RlZmlu ZSBIQVZFX1hGSVhFUyAxCnwgI2RlZmluZSBIQVZFX0xJQlhNTDIgMQp8ICNkZWZpbmUgSEFWRV9I X0VSUk5PIDEKfCAjZGVmaW5lIE1BSUxfVVNFX0ZMT0NLIDEKfCAjZGVmaW5lIEhBVkVfQUNDRVBU NCAxCnwgI2RlZmluZSBIQVZFX0ZDSERJUiAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEK fCAjZGVmaW5lIEhBVkVfR0VUUlVTQUdFIDEKfCAjZGVmaW5lIEhBVkVfR0VUX0NVUlJFTlRfRElS X05BTUUgMQp8ICNkZWZpbmUgSEFWRV9MUkFORDQ4IDEKfCAjZGVmaW5lIEhBVkVfUkFORE9NIDEK fCAjZGVmaW5lIEhBVkVfUklOVCAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBI QVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhB VkVfTkVXTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVf U0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9HRVRB RERSSU5GTyAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZF X1NUUlNJR05BTCAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX1NF TkRUTyAxCnwgI2RlZmluZSBIQVZFX1JFQ1ZGUk9NIDEKfCAjZGVmaW5lIEhBVkVfR0VUU09DS05B TUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRQRUVSTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVElGQURE UlMgMQp8ICNkZWZpbmUgSEFWRV9GUkVFSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0dBSV9TVFJF UlJPUiAxCnwgI2RlZmluZSBIQVZFX1NZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwg I2RlZmluZSBIQVZFX0VORFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZp bmUgSEFWRV9FTkRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0NGTUFLRVJBVyAxCnwgI2RlZmluZSBI QVZFX0NGU0VUU1BFRUQgMQp8ICNkZWZpbmUgSEFWRV9DT1BZU0lHTiAxCnwgI2RlZmluZSBIQVZF X19fRVhFQ1VUQUJMRV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0xPRzIgMQp8ICNkZWZpbmUgSEFW RV9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX1VOV0lORF9JTklUIDEK fCAjZGVmaW5lIEhBVkVfRlNFRUtPIDEKfCAjZGVmaW5lIEhBVkVfR1JBTlRQVCAxCnwgI2RlZmlu ZSBIQVZFX0dFVFBUIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfT1BFTlBUIDEKfCAjZGVmaW5lIFRF Uk1JTkZPIDEKfCAjZGVmaW5lIEhBVkVfVElNRVJGRCAxCnwgI2RlZmluZSBIQVZFX1JFU19JTklU IDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1VOSVBBSVJfVU5JQ09ERSAxCnwgI2RlZmluZSBIQVZF X0lORVRfU09DS0VUUyAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9WRk9S SyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5H X0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9TTlBSSU5URiAxCnwgI2RlZmluZSBIQVZFX0dMSUIgMQp8 ICNkZWZpbmUgSEFWRV9MQU5HSU5GT19DT0RFU0VUIDEKfCAjZGVmaW5lIEhBVkVfTUJTVEFURV9U IDEKfCAjZGVmaW5lIEFNUEVSU0FORF9GVUxMX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9QVFlTIDEK fCAjZGVmaW5lIEhBVkVfU09DS0VUUyAxCnwgI2RlZmluZSBOVUxMX0RFVklDRSAiL2Rldi9udWxs Igp8ICNkZWZpbmUgU0VQQ0hBUiAnOicKfCAjZGVmaW5lIHN1YnByb2Nlc3NlcyAxCnwgI2RlZmlu ZSBVU0VSX0ZVTExfTkFNRSBwdy0+cHdfZ2Vjb3MKfCAjZGVmaW5lIERJUkVDVE9SWV9TRVAgJy8n CnwgI2RlZmluZSBJU19ERVZJQ0VfU0VQKF9jXykgMAp8ICNkZWZpbmUgSVNfRElSRUNUT1JZX1NF UChfY18pICgoX2NfKSA9PSBESVJFQ1RPUllfU0VQKQp8ICNkZWZpbmUgSVNfQU5ZX1NFUChfY18p IChJU19ESVJFQ1RPUllfU0VQIChfY18pKQp8ICNkZWZpbmUgSEFWRV9QUk9DRlMgMQp8ICNkZWZp bmUgREVGQVVMVF9TT1VORF9ERVZJQ0UgIi9kZXYvZHNwIgp8ICNkZWZpbmUgSU5URVJSVVBUX0lO UFVUIDEKfCAjZGVmaW5lIE5BUlJPV1BST1RPIDEKfCAjZGVmaW5lIFVOSVg5OF9QVFlTIDEKfCAj ZGVmaW5lIFBUWV9JVEVSQVRJT04gaW50IGk7IGZvciAoaSA9IDA7IGkgPCAxOyBpKyspCnwgI2Rl ZmluZSBQVFlfVFRZX05BTUVfU1BSSU5URiB7IGNoYXIgKnB0eW5hbWUgPSAwOyBzaWdzZXRfdCBi bG9ja2VkOyBzaWdlbXB0eXNldCAoJmJsb2NrZWQpOyBzaWdhZGRzZXQgKCZibG9ja2VkLCBTSUdD SExEKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKGdyYW50 cHQgKGZkKSAhPSAtMSAmJiB1bmxvY2twdCAoZmQpICE9IC0xKSBwdHluYW1lID0gcHRzbmFtZShm ZCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX1VOQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKCFwdHlu YW1lKSB7IGVtYWNzX2Nsb3NlIChmZCk7IHJldHVybiAtMTsgfSBzbnByaW50ZiAocHR5X25hbWUs IFBUWV9OQU1FX1NJWkUsICIlcyIsIHB0eW5hbWUpOyB9CnwgI2RlZmluZSBQVFlfT1BFTiBkbyB7 IGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX0NMT0VYRUMgfCBPX05PQ1RUWSk7IGlmIChm ZCA8IDAgJiYgZXJybm8gPT0gRUlOVkFMKSBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19O T0NUVFkpOyB9IHdoaWxlIChmYWxzZSkKfCAjZGVmaW5lIFBUWV9OQU1FX1NQUklOVEYgLyoqLwp8 ICNkZWZpbmUgU0lHTkFMU19WSUFfQ0hBUkFDVEVSUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09S S1MgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfX1NFVEpNUCAx CnwgI2RlZmluZSBIQVZFX1NJR1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NUQUNLX09WRVJGTE9X X0hBTkRMSU5HIDEKfCAjZGVmaW5lIFVTRyAvKiovCnwgI2RlZmluZSBHTlVfTElOVVggLyoqLwp8 ICNkZWZpbmUgVVNBQkxFX0ZJT05SRUFEIDEKfCAjZGVmaW5lIFVTQUJMRV9TSUdJTyAxCnwgI2Rl ZmluZSBDT1BZUklHSFQgIkNvcHlyaWdodCAoQykgMjAxNiBGcmVlIFNvZnR3YXJlIEZvdW5kYXRp b24sIEluYy4iCnwgI2RlZmluZSBURVJNX0hFQURFUiAieHRlcm0uaCIKfCAjZGVmaW5lIEVNQUNT X0NPTkZJR1VSQVRJT04gIng4Nl82NC11bmtub3duLWxpbnV4LWdudSIKfCAjZGVmaW5lIEVNQUNT X0NPTkZJR19PUFRJT05TICItLXdpdGgteC10b29sa2l0PWx1Y2lkIgp8ICNkZWZpbmUgSEFWRV9Y X1dJTkRPV1MgMQp8ICNkZWZpbmUgVVNFX1hfVE9PTEtJVCAxCnwgI2RlZmluZSBVU0VfTFVDSUQg MQp8ICNkZWZpbmUgSEFWRV9YMTEgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfQVRUUklCVVRFX0FM SUdORUQgMQp8ICNkZWZpbmUgR05VX01BTExPQyAxCnwgI2RlZmluZSBSRUxfQUxMT0MgMQp8ICNk ZWZpbmUgSEFWRV9BTExPQ0FfSCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBI QVZFX1VOU0lHTkVEX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUgSEFWRV9DOTlfU1RSVE9MRCAx CnwgI2RlZmluZSBIQVZFX0VOVklST05fREVDTCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkRBVEFT WU5DIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJNT0RFIDAKfCAjZGVmaW5lIExTVEFUX0ZPTExP V1NfU0xBU0hFRF9TWU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUg SEFWRV9HRVRPUFRfTE9OR19PTkxZIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRFTlYgMQp8ICNk ZWZpbmUgcmVzdHJpY3QgX19yZXN0cmljdAp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkdfSU5UIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9NRU1SQ0hSIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTEFSTSAx CnwgI2RlZmluZSBIQVZFX1NJR1NFVF9UIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfVCAxCnwgI2Rl ZmluZSBIQVZFX1NUUlVDVF9UTV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fWk9ORSAxCnwg I2RlZmluZSBIQVZFX1RNX0dNVE9GRiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSVE9JTUFYIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9TVFJUT1VNQVggMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1VU SU1FUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9VVElNQlVGIDEKfCAjZGVmaW5lIEdFVEdST1VQ U19UIGdpZF90CnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBI QVZFX1NZU19BQ0xfSCAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRklMRSAxCnwgI2RlZmluZSBI QVZFX0FDTF9HRVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZJTEUgMQp8ICNkZWZpbmUg SEFWRV9BQ0xfU0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZSRUUgMQp8ICNkZWZpbmUgSEFW RV9BQ0xfRlJPTV9NT0RFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZST01fVEVYVCAxCnwgI2RlZmlu ZSBIQVZFX0FDTF9ERUxFVEVfREVGX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRVhURU5ERURf RklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9MSUJBQ0xfSCAxCnwgI2RlZmluZSBIQVZFX0FDTF9F TlRSSUVTIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZJUlNUX0VOVFJZIDEKfCAjZGVmaW5lIFVTRV9B Q0wgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgSEFWRV9CWVRFU1dBUF9IIDEK fCAjZGVmaW5lIEhBVkVfQ0xPQ0tfR0VUVElNRSAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX1NFVFRJ TUUgMQp8ICNkZWZpbmUgR05VTElCX0NMT1NFX1NUUkVBTSAxCnwgI2RlZmluZSBIQVZFX0RVUDIg MQp8ICNkZWZpbmUgR05VTElCX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkRPUEVO RElSIDEKfCAjZGVmaW5lIEdOVUxJQl9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX19f RlBFTkRJTkcgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8c3RkaW8uaD4K fCAjaWZkZWYgSEFWRV9TWVNfVFlQRVNfSAp8ICMgaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgI2Vu ZGlmCnwgI2lmZGVmIEhBVkVfU1lTX1NUQVRfSAp8ICMgaW5jbHVkZSA8c3lzL3N0YXQuaD4KfCAj ZW5kaWYKfCAjaWZkZWYgU1REQ19IRUFERVJTCnwgIyBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjIGlu Y2x1ZGUgPHN0ZGRlZi5oPgp8ICNlbHNlCnwgIyBpZmRlZiBIQVZFX1NURExJQl9ICnwgIyAgaW5j bHVkZSA8c3RkbGliLmg+CnwgIyBlbmRpZgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR19I CnwgIyBpZiAhZGVmaW5lZCBTVERDX0hFQURFUlMgJiYgZGVmaW5lZCBIQVZFX01FTU9SWV9ICnwg IyAgaW5jbHVkZSA8bWVtb3J5Lmg+CnwgIyBlbmRpZgp8ICMgaW5jbHVkZSA8c3RyaW5nLmg+Cnwg I2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RSSU5HU19ICnwgIyBpbmNsdWRlIDxzdHJpbmdzLmg+Cnwg I2VuZGlmCnwgI2lmZGVmIEhBVkVfSU5UVFlQRVNfSAp8ICMgaW5jbHVkZSA8aW50dHlwZXMuaD4K fCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVERJTlRfSAp8ICMgaW5jbHVkZSA8c3RkaW50Lmg+Cnwg I2VuZGlmCnwgI2lmZGVmIEhBVkVfVU5JU1REX0gKfCAjIGluY2x1ZGUgPHVuaXN0ZC5oPgp8ICNl bmRpZgp8ICNpbmNsdWRlIDxzeXMvbG9hZGF2Zy5oPgpjb25maWd1cmU6MjYzMDg6IHJlc3VsdDog bm8KY29uZmlndXJlOjI2MzA4OiBjaGVja2luZyBzeXMvbG9hZGF2Zy5oIHByZXNlbmNlCmNvbmZp Z3VyZToyNjMwODogZ2NjIC1FICAgIGNvbmZ0ZXN0LmMKY29uZnRlc3QuYzoyOTk6MjU6IGZhdGFs IGVycm9yOiBzeXMvbG9hZGF2Zy5oOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CiAjaW5jbHVk ZSA8c3lzL2xvYWRhdmcuaD4KICAgICAgICAgICAgICAgICAgICAgICAgIF4KY29tcGlsYXRpb24g dGVybWluYXRlZC4KY29uZmlndXJlOjI2MzA4OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJv Z3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUg RW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FH RV9WRVJTSU9OICIyNS4xIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAyNS4x Igp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAj ZGVmaW5lIFBBQ0tBR0VfVVJMICJodHRwOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8 ICNkZWZpbmUgUEFDS0FHRSAiZW1hY3MiCnwgI2RlZmluZSBWRVJTSU9OICIyNS4xIgp8ICNkZWZp bmUgTUFJTF9VU0VfUE9QIDEKfCAjZGVmaW5lIEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVf VFpTRVQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FU IDEKfCAjZGVmaW5lIEhBVkVfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNk ZWZpbmUgSEFWRV9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgSEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5l IEhBVkVfRlNZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFW RV9MU1RBVCAxCnwgI2RlZmluZSBIQVZFX01LT1NURU1QIDEKfCAjZGVmaW5lIEhBVkVfUElQRTIg MQp8ICNkZWZpbmUgSEFWRV9QU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNk ZWZpbmUgSEFWRV9TVFJUT0lNQVggMQp8ICNkZWZpbmUgSEFWRV9TVFJUT1VNQVggMQp8ICNkZWZp bmUgSEFWRV9TWU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUg SEFWRV9USU1FR00gMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfRlVU SU1FU0FUIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FTlMgMQp8ICNkZWZpbmUgSEFWRV9VVElNRU5T QVQgMQp8ICNkZWZpbmUgSEFWRV9MVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0la RSAxCnwgI2RlZmluZSBIQVZFX1NFQ1VSRV9HRVRFTlYgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJT IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9I IDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwg I2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVm aW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5l IEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgX0FM TF9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmluZSBfR05VX1NP VVJDRSAxCnwgI2RlZmluZSBfX1VTRV9NSU5HV19BTlNJX1NURElPIDEKfCAjZGVmaW5lIF9QT1NJ WF9QVEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCnwgI2RlZmlu ZSBfREFSV0lOX1VTRV82NF9CSVRfSU5PREUgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9s aW51eCIKfCAjZGVmaW5lIEhBVkVfU1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxT QSAxCnwgI2RlZmluZSBIQVZFX1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAx CnwgI2RlZmluZSBIQVZFX1BUWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNk ZWZpbmUgSEFWRV9VVE1QX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZp bmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfVU5fSCAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhF Q0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1NURElPX0VYVF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VU T1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJf SCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAx CnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0gg MQp8ICNkZWZpbmUgSEFWRV9VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfTElO VVgzMiAxCnwgI2RlZmluZSBIQVZFX0xJTlVYX1NZU0lORk8gMQp8ICNkZWZpbmUgTElOVVhfU1lT SU5GT19VTklUIDEKfCAjZGVmaW5lIEhBVkVfVEVSTV9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9T WVNfVElNRSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1lTX1NJR0xJU1QgMQp8ICNkZWZpbmUgSEFW RV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUX0lGX0ggMQp8ICNkZWZpbmUgSEFWRV9J RkFERFJTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVm aW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9IV0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1Rf SUZSRVFfSUZSX05FVE1BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FE QUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQUREUiAxCnwgI2RlZmluZSBI QVZFX0xPTkdfRklMRV9OQU1FUyAxCnwgI2RlZmluZSBIQVZFX1NZU19WTElNSVRfSCAxCnwgI2Rl ZmluZSBIQVZFX0RBVEFfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2Rl ZmluZSBIQVZFX01NQVAgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEIDEKfCAjZGVmaW5lIEhBVkVf WEtCIDEKfCAjZGVmaW5lIEhBVkVfWFJNU0VUREFUQUJBU0UgMQp8ICNkZWZpbmUgSEFWRV9YU0NS RUVOUkVTT1VSQ0VTVFJJTkcgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOTlVNQkVST0ZTQ1JFRU4g MQp8ICNkZWZpbmUgSEFWRV9YMTFSNiAxCnwgI2RlZmluZSBIQVZFX1hfSTE4TiAxCnwgI2RlZmlu ZSBIQVZFX1gxMVI2X1hJTSAxCnwgI2RlZmluZSBIQVZFX1JTVkcgMQp8ICNkZWZpbmUgSEFWRV9J TUFHRU1BR0lDSyAxCnwgI2RlZmluZSBIQVZFX01BR0lDS0VYUE9SVElNQUdFUElYRUxTIDEKfCAj ZGVmaW5lIEhBVkVfTUFHSUNLTUVSR0VJTUFHRUxBWUVSUyAxCnwgI2RlZmluZSBIQVZFX0RCVVMg MQp8ICNkZWZpbmUgSEFWRV9EQlVTX1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVf REJVU19UWVBFX0lTX1ZBTElEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFN RSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmluZSBIQVZFX0RC VVNfVkFMSURBVEVfSU5URVJGQUNFIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9NRU1C RVIgMQp8ICNkZWZpbmUgSEFWRV9HU0VUVElOR1MgMQp8ICNkZWZpbmUgSEFWRV9HQ09ORiAxCnwg I2RlZmluZSBIQVZFX0dOVVRMUyAxCnwgI2RlZmluZSBIQVZFX0dOVVRMUzMgMQp8ICNkZWZpbmUg SEFWRV9JTk9USUZZIDEKfCAjZGVmaW5lIFVTRV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBIQVZF X1gxMVhUUjYgMQp8ICNkZWZpbmUgVVNFX1RPT0xLSVRfU0NST0xMX0JBUlMgMQp8ICNkZWZpbmUg SEFWRV9YSU0gMQp8ICNkZWZpbmUgVVNFX1hJTSAxCnwgI2RlZmluZSBYUmVnaXN0ZXJJTUluc3Rh bnRpYXRlQ2FsbGJhY2tfYXJnNiBYUG9pbnRlcgp8ICNkZWZpbmUgSEFWRV9YRlQgMQp8ICNkZWZp bmUgSEFWRV9GUkVFVFlQRSAxCnwgI2RlZmluZSBIQVZFX0xJQk9URiAxCnwgI2RlZmluZSBIQVZF X09URl9HRVRfVkFSSUFUSU9OX0dMWVBIUyAxCnwgI2RlZmluZSBIQVZFX00xN05fRkxUIDEKfCAj ZGVmaW5lIFVTRV9YQ0IgMQp8ICNkZWZpbmUgSEFWRV9YUE0gMQp8ICNkZWZpbmUgSEFWRV9KUEVH IDEKfCAjZGVmaW5lIEhBVkVfWkxJQiAxCnwgI2RlZmluZSBIQVZFX1BORyAxCnwgI2RlZmluZSBI QVZFX1RJRkYgMQp8ICNkZWZpbmUgSEFWRV9HSUYgMQp8ICNkZWZpbmUgSEFWRV9HUE0gMQp8ICNk ZWZpbmUgSEFWRV9YX1NNIDEKfCAjZGVmaW5lIEhBVkVfWFJBTkRSIDEKfCAjZGVmaW5lIEhBVkVf WElORVJBTUEgMQp8ICNkZWZpbmUgSEFWRV9YRklYRVMgMQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwy IDEKfCAjZGVmaW5lIEhBVkVfSF9FUlJOTyAxCnwgI2RlZmluZSBNQUlMX1VTRV9GTE9DSyAxCnwg I2RlZmluZSBIQVZFX0FDQ0VQVDQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hESVIgMQp8ICNkZWZpbmUg SEFWRV9HRVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJVU0FHRSAxCnwgI2RlZmluZSBI QVZFX0dFVF9DVVJSRU5UX0RJUl9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfTFJBTkQ0OCAxCnwgI2Rl ZmluZSBIQVZFX1JBTkRPTSAxCnwgI2RlZmluZSBIQVZFX1JJTlQgMQp8ICNkZWZpbmUgSEFWRV9T RUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NFVExP Q0FMRSAxCnwgI2RlZmluZSBIQVZFX05FV0xPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJMSU1J VCAxCnwgI2RlZmluZSBIQVZFX1NFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEK fCAjZGVmaW5lIEhBVkVfR0VUQUREUklORk8gMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01B U0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJTSUdOQUwgMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIg MQp8ICNkZWZpbmUgSEFWRV9TRU5EVE8gMQp8ICNkZWZpbmUgSEFWRV9SRUNWRlJPTSAxCnwgI2Rl ZmluZSBIQVZFX0dFVFNPQ0tOQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEVFUk5BTUUgMQp8ICNk ZWZpbmUgSEFWRV9HRVRJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfRlJFRUlGQUREUlMgMQp8ICNk ZWZpbmUgSEFWRV9HQUlfU1RSRVJST1IgMQp8ICNkZWZpbmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5l IEhBVkVfR0VUUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRQV0VOVCAxCnwgI2RlZmluZSBIQVZF X0dFVEdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5ER1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9DRk1B S0VSQVcgMQp8ICNkZWZpbmUgSEFWRV9DRlNFVFNQRUVEIDEKfCAjZGVmaW5lIEhBVkVfQ09QWVNJ R04gMQp8ICNkZWZpbmUgSEFWRV9fX0VYRUNVVEFCTEVfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9M T0cyIDEKfCAjZGVmaW5lIEhBVkVfQUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX19fQlVJ TFRJTl9VTldJTkRfSU5JVCAxCnwgI2RlZmluZSBIQVZFX0ZTRUVLTyAxCnwgI2RlZmluZSBIQVZF X0dSQU5UUFQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQVCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX09Q RU5QVCAxCnwgI2RlZmluZSBURVJNSU5GTyAxCnwgI2RlZmluZSBIQVZFX1RJTUVSRkQgMQp8ICNk ZWZpbmUgSEFWRV9SRVNfSU5JVCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9VTklQQUlSX1VOSUNP REUgMQp8ICNkZWZpbmUgSEFWRV9JTkVUX1NPQ0tFVFMgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEK fCAjZGVmaW5lIEhBVkVfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAj ZGVmaW5lIEhBVkVfV09SS0lOR19GT1JLIDEKfCAjZGVmaW5lIEhBVkVfU05QUklOVEYgMQp8ICNk ZWZpbmUgSEFWRV9HTElCIDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fQ09ERVNFVCAxCnwgI2Rl ZmluZSBIQVZFX01CU1RBVEVfVCAxCnwgI2RlZmluZSBBTVBFUlNBTkRfRlVMTF9OQU1FIDEKfCAj ZGVmaW5lIEhBVkVfUFRZUyAxCnwgI2RlZmluZSBIQVZFX1NPQ0tFVFMgMQp8ICNkZWZpbmUgTlVM TF9ERVZJQ0UgIi9kZXYvbnVsbCIKfCAjZGVmaW5lIFNFUENIQVIgJzonCnwgI2RlZmluZSBzdWJw cm9jZXNzZXMgMQp8ICNkZWZpbmUgVVNFUl9GVUxMX05BTUUgcHctPnB3X2dlY29zCnwgI2RlZmlu ZSBESVJFQ1RPUllfU0VQICcvJwp8ICNkZWZpbmUgSVNfREVWSUNFX1NFUChfY18pIDAKfCAjZGVm aW5lIElTX0RJUkVDVE9SWV9TRVAoX2NfKSAoKF9jXykgPT0gRElSRUNUT1JZX1NFUCkKfCAjZGVm aW5lIElTX0FOWV9TRVAoX2NfKSAoSVNfRElSRUNUT1JZX1NFUCAoX2NfKSkKfCAjZGVmaW5lIEhB VkVfUFJPQ0ZTIDEKfCAjZGVmaW5lIERFRkFVTFRfU09VTkRfREVWSUNFICIvZGV2L2RzcCIKfCAj ZGVmaW5lIElOVEVSUlVQVF9JTlBVVCAxCnwgI2RlZmluZSBOQVJST1dQUk9UTyAxCnwgI2RlZmlu ZSBVTklYOThfUFRZUyAxCnwgI2RlZmluZSBQVFlfSVRFUkFUSU9OIGludCBpOyBmb3IgKGkgPSAw OyBpIDwgMTsgaSsrKQp8ICNkZWZpbmUgUFRZX1RUWV9OQU1FX1NQUklOVEYgeyBjaGFyICpwdHlu YW1lID0gMDsgc2lnc2V0X3QgYmxvY2tlZDsgc2lnZW1wdHlzZXQgKCZibG9ja2VkKTsgc2lnYWRk c2V0ICgmYmxvY2tlZCwgU0lHQ0hMRCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX0JMT0NLLCAmYmxv Y2tlZCwgMCk7IGlmIChncmFudHB0IChmZCkgIT0gLTEgJiYgdW5sb2NrcHQgKGZkKSAhPSAtMSkg cHR5bmFtZSA9IHB0c25hbWUoZmQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19VTkJMT0NLLCAmYmxv Y2tlZCwgMCk7IGlmICghcHR5bmFtZSkgeyBlbWFjc19jbG9zZSAoZmQpOyByZXR1cm4gLTE7IH0g c25wcmludGYgKHB0eV9uYW1lLCBQVFlfTkFNRV9TSVpFLCAiJXMiLCBwdHluYW1lKTsgfQp8ICNk ZWZpbmUgUFRZX09QRU4gZG8geyBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19DTE9FWEVD IHwgT19OT0NUVFkpOyBpZiAoZmQgPCAwICYmIGVycm5vID09IEVJTlZBTCkgZmQgPSBwb3NpeF9v cGVucHQgKE9fUkRXUiB8IE9fTk9DVFRZKTsgfSB3aGlsZSAoZmFsc2UpCnwgI2RlZmluZSBQVFlf TkFNRV9TUFJJTlRGIC8qKi8KfCAjZGVmaW5lIFNJR05BTFNfVklBX0NIQVJBQ1RFUlMgMQp8ICNk ZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2Rl ZmluZSBIQVZFX19TRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRVRKTVAgMQp8ICNkZWZpbmUg SEFWRV9TVEFDS19PVkVSRkxPV19IQU5ETElORyAxCnwgI2RlZmluZSBVU0cgLyoqLwp8ICNkZWZp bmUgR05VX0xJTlVYIC8qKi8KfCAjZGVmaW5lIFVTQUJMRV9GSU9OUkVBRCAxCnwgI2RlZmluZSBV U0FCTEVfU0lHSU8gMQp8ICNkZWZpbmUgQ09QWVJJR0hUICJDb3B5cmlnaHQgKEMpIDIwMTYgRnJl ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuIgp8ICNkZWZpbmUgVEVSTV9IRUFERVIgInh0ZXJt LmgiCnwgI2RlZmluZSBFTUFDU19DT05GSUdVUkFUSU9OICJ4ODZfNjQtdW5rbm93bi1saW51eC1n bnUiCnwgI2RlZmluZSBFTUFDU19DT05GSUdfT1BUSU9OUyAiLS13aXRoLXgtdG9vbGtpdD1sdWNp ZCIKfCAjZGVmaW5lIEhBVkVfWF9XSU5ET1dTIDEKfCAjZGVmaW5lIFVTRV9YX1RPT0xLSVQgMQp8 ICNkZWZpbmUgVVNFX0xVQ0lEIDEKfCAjZGVmaW5lIEhBVkVfWDExIDEKfCAjZGVmaW5lIEhBVkVf U1RSVUNUX0FUVFJJQlVURV9BTElHTkVEIDEKfCAjZGVmaW5lIEdOVV9NQUxMT0MgMQp8ICNkZWZp bmUgUkVMX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFWRV9B TExPQ0EgMQp8ICNkZWZpbmUgSEFWRV9VTlNJR05FRF9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5l IEhBVkVfQzk5X1NUUlRPTEQgMQp8ICNkZWZpbmUgSEFWRV9FTlZJUk9OX0RFQ0wgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX0ZEQVRBU1lOQyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSTU9ERSAwCnwg I2RlZmluZSBMU1RBVF9GT0xMT1dTX1NMQVNIRURfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0dF VE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0xPTkdfT05MWSAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfR0VURU5WIDEKfCAjZGVmaW5lIHJlc3RyaWN0IF9fcmVzdHJpY3QKfCAjZGVmaW5lIEhB VkVfTE9OR19MT05HX0lOVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfTUVNUkNIUiAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfQUxBUk0gMQp8ICNkZWZpbmUgSEFWRV9TSUdTRVRfVCAxCnwgI2RlZmluZSBI QVZFX1dDSEFSX1QgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVE1fVE1fWk9ORSAxCnwgI2RlZmlu ZSBIQVZFX1RNX1pPTkUgMQp8ICNkZWZpbmUgSEFWRV9UTV9HTVRPRkYgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSVE9VTUFYIDEKfCAjZGVm aW5lIEhBVkVfV09SS0lOR19VVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVVRJTUJVRiAx CnwgI2RlZmluZSBHRVRHUk9VUFNfVCBnaWRfdAp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVERUQUJM RVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TWVNfQUNMX0ggMQp8ICNkZWZpbmUgSEFWRV9BQ0xfR0VU X0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX1NF VF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX1NFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9G UkVFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZST01fTU9ERSAxCnwgI2RlZmluZSBIQVZFX0FDTF9G Uk9NX1RFWFQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfREVMRVRFX0RFRl9GSUxFIDEKfCAjZGVmaW5l IEhBVkVfQUNMX0VYVEVOREVEX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfTElCQUNMX0ggMQp8 ICNkZWZpbmUgSEFWRV9BQ0xfRU5UUklFUyAxCnwgI2RlZmluZSBIQVZFX0FDTF9GSVJTVF9FTlRS WSAxCnwgI2RlZmluZSBVU0VfQUNMIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5l IEhBVkVfQllURVNXQVBfSCAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX0dFVFRJTUUgMQp8ICNkZWZp bmUgSEFWRV9DTE9DS19TRVRUSU1FIDEKfCAjZGVmaW5lIEdOVUxJQl9DTE9TRV9TVFJFQU0gMQp8 ICNkZWZpbmUgSEFWRV9EVVAyIDEKfCAjZGVmaW5lIEdOVUxJQl9GQUNDRVNTQVQgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBHTlVMSUJfRkRPUEVORElSIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9fX0ZQRU5ESU5HIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwg I2luY2x1ZGUgPHN5cy9sb2FkYXZnLmg+CmNvbmZpZ3VyZToyNjMwODogcmVzdWx0OiBubwpjb25m aWd1cmU6MjYzMDg6IGNoZWNraW5nIGZvciBzeXMvbG9hZGF2Zy5oCmNvbmZpZ3VyZToyNjMwODog cmVzdWx0OiBubwpjb25maWd1cmU6MjYzMjM6IGNoZWNraW5nIHdoZXRoZXIgZ2V0bG9hZGF2ZyBp cyBkZWNsYXJlZApjb25maWd1cmU6MjYzMjM6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMg PiY1CmNvbmZpZ3VyZToyNjMyMzogJD8gPSAwCmNvbmZpZ3VyZToyNjMyMzogcmVzdWx0OiB5ZXMK Y29uZmlndXJlOjI2NTczOiBjaGVja2luZyB3aGV0aGVyIGdldHRpbWVvZmRheSBjbG9iYmVycyBs b2NhbHRpbWUgYnVmZmVyCmNvbmZpZ3VyZToyNjYxMjogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIg ICAgICBjb25mdGVzdC5jIC1scHRocmVhZCAgPiY1IApjb25maWd1cmU6MjY2MTI6ICQ/ID0gMApj b25maWd1cmU6MjY2MTI6IC4vY29uZnRlc3QKY29uZmlndXJlOjI2NjEyOiAkPyA9IDAKY29uZmln dXJlOjI2NjIyOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToyNjYzODogY2hlY2tpbmcgZm9yIGdldHRp bWVvZmRheSB3aXRoIFBPU0lYIHNpZ25hdHVyZQpjb25maWd1cmU6MjY2NjY6IGdjYyAtYyAtZzMg LU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6MzAxOjE5OiBlcnJvcjogY29uZmxpY3Rp bmcgdHlwZXMgZm9yICdnZXR0aW1lb2ZkYXknCiAgICAgICAgICAgICAgIGludCBnZXR0aW1lb2Zk YXkgKHN0cnVjdCB0aW1ldmFsICpyZXN0cmljdCwgdm9pZCAqcmVzdHJpY3QpOwogICAgICAgICAg ICAgICAgICAgXn5+fn5+fn5+fn5+CkluIGZpbGUgaW5jbHVkZWQgZnJvbSBjb25mdGVzdC5jOjI5 OTowOgovdXNyL2luY2x1ZGUvc3lzL3RpbWUuaDo3MToxMjogbm90ZTogcHJldmlvdXMgZGVjbGFy YXRpb24gb2YgJ2dldHRpbWVvZmRheScgd2FzIGhlcmUKIGV4dGVybiBpbnQgZ2V0dGltZW9mZGF5 IChzdHJ1Y3QgdGltZXZhbCAqX19yZXN0cmljdCBfX3R2LAogICAgICAgICAgICBefn5+fn5+fn5+ fn4KY29uZmlndXJlOjI2NjY2OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6 CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwg I2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9O ICIyNS4xIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAyNS4xIgp8ICNkZWZp bmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBB Q0tBR0VfVVJMICJodHRwOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUg UEFDS0FHRSAiZW1hY3MiCnwgI2RlZmluZSBWRVJTSU9OICIyNS4xIgp8ICNkZWZpbmUgTUFJTF9V U0VfUE9QIDEKfCAjZGVmaW5lIEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfVFpTRVQgMQp8 ICNkZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKfCAjZGVm aW5lIEhBVkVfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFW RV9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgSEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5lIEhBVkVfRlNZ TkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAx CnwgI2RlZmluZSBIQVZFX01LT1NURU1QIDEKfCAjZGVmaW5lIEhBVkVfUElQRTIgMQp8ICNkZWZp bmUgSEFWRV9QU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFW RV9TVFJUT0lNQVggMQp8ICNkZWZpbmUgSEFWRV9TVFJUT1VNQVggMQp8ICNkZWZpbmUgSEFWRV9T WU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9USU1F R00gMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FU0FUIDEK fCAjZGVmaW5lIEhBVkVfRlVUSU1FTlMgMQp8ICNkZWZpbmUgSEFWRV9VVElNRU5TQVQgMQp8ICNk ZWZpbmUgSEFWRV9MVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2Rl ZmluZSBIQVZFX1NFQ1VSRV9HRVRFTlYgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVm aW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBI QVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVf SU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5J U1REX0ggMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0Ug MQp8ICNkZWZpbmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwg I2RlZmluZSBfX1VTRV9NSU5HV19BTlNJX1NURElPIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFE X1NFTUFOVElDUyAxCnwgI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lO X1VTRV82NF9CSVRfSU5PREUgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAj ZGVmaW5lIEhBVkVfU1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2Rl ZmluZSBIQVZFX1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmlu ZSBIQVZFX1BUWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFW RV9VVE1QX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9T VERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BB UkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5f SCAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAx CnwgI2RlZmluZSBIQVZFX1NURElPX0VYVF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfSCAxCnwgI2Rl ZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZp bmUgSEFWRV9VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfTElOVVgzMiAxCnwg I2RlZmluZSBIQVZFX0xJTlVYX1NZU0lORk8gMQp8ICNkZWZpbmUgTElOVVhfU1lTSU5GT19VTklU IDEKfCAjZGVmaW5lIEhBVkVfVEVSTV9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfU1lTX1NJR0xJU1QgMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJ VF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUX0lGX0ggMQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0gg MQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVf U1RSVUNUX0lGUkVRX0lGUl9IV0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZS X05FVE1BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAxCnwg I2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQUREUiAxCnwgI2RlZmluZSBIQVZFX0xPTkdf RklMRV9OQU1FUyAxCnwgI2RlZmluZSBIQVZFX1NZU19WTElNSVRfSCAxCnwgI2RlZmluZSBIQVZF X0RBVEFfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZF X01NQVAgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEIDEKfCAjZGVmaW5lIEhBVkVfWEtCIDEKfCAj ZGVmaW5lIEhBVkVfWFJNU0VUREFUQUJBU0UgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOUkVTT1VS Q0VTVFJJTkcgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOTlVNQkVST0ZTQ1JFRU4gMQp8ICNkZWZp bmUgSEFWRV9YMTFSNiAxCnwgI2RlZmluZSBIQVZFX1hfSTE4TiAxCnwgI2RlZmluZSBIQVZFX1gx MVI2X1hJTSAxCnwgI2RlZmluZSBIQVZFX1JTVkcgMQp8ICNkZWZpbmUgSEFWRV9JTUFHRU1BR0lD SyAxCnwgI2RlZmluZSBIQVZFX01BR0lDS0VYUE9SVElNQUdFUElYRUxTIDEKfCAjZGVmaW5lIEhB VkVfTUFHSUNLTUVSR0VJTUFHRUxBWUVSUyAxCnwgI2RlZmluZSBIQVZFX0RCVVMgMQp8ICNkZWZp bmUgSEFWRV9EQlVTX1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19UWVBF X0lTX1ZBTElEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAxCnwgI2Rl ZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURB VEVfSU5URVJGQUNFIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIgMQp8ICNk ZWZpbmUgSEFWRV9HU0VUVElOR1MgMQp8ICNkZWZpbmUgSEFWRV9HQ09ORiAxCnwgI2RlZmluZSBI QVZFX0dOVVRMUyAxCnwgI2RlZmluZSBIQVZFX0dOVVRMUzMgMQp8ICNkZWZpbmUgSEFWRV9JTk9U SUZZIDEKfCAjZGVmaW5lIFVTRV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBIQVZFX1gxMVhUUjYg MQp8ICNkZWZpbmUgVVNFX1RPT0xLSVRfU0NST0xMX0JBUlMgMQp8ICNkZWZpbmUgSEFWRV9YSU0g MQp8ICNkZWZpbmUgVVNFX1hJTSAxCnwgI2RlZmluZSBYUmVnaXN0ZXJJTUluc3RhbnRpYXRlQ2Fs bGJhY2tfYXJnNiBYUG9pbnRlcgp8ICNkZWZpbmUgSEFWRV9YRlQgMQp8ICNkZWZpbmUgSEFWRV9G UkVFVFlQRSAxCnwgI2RlZmluZSBIQVZFX0xJQk9URiAxCnwgI2RlZmluZSBIQVZFX09URl9HRVRf VkFSSUFUSU9OX0dMWVBIUyAxCnwgI2RlZmluZSBIQVZFX00xN05fRkxUIDEKfCAjZGVmaW5lIFVT RV9YQ0IgMQp8ICNkZWZpbmUgSEFWRV9YUE0gMQp8ICNkZWZpbmUgSEFWRV9KUEVHIDEKfCAjZGVm aW5lIEhBVkVfWkxJQiAxCnwgI2RlZmluZSBIQVZFX1BORyAxCnwgI2RlZmluZSBIQVZFX1RJRkYg MQp8ICNkZWZpbmUgSEFWRV9HSUYgMQp8ICNkZWZpbmUgSEFWRV9HUE0gMQp8ICNkZWZpbmUgSEFW RV9YX1NNIDEKfCAjZGVmaW5lIEhBVkVfWFJBTkRSIDEKfCAjZGVmaW5lIEhBVkVfWElORVJBTUEg MQp8ICNkZWZpbmUgSEFWRV9YRklYRVMgMQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwyIDEKfCAjZGVm aW5lIEhBVkVfSF9FUlJOTyAxCnwgI2RlZmluZSBNQUlMX1VTRV9GTE9DSyAxCnwgI2RlZmluZSBI QVZFX0FDQ0VQVDQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hESVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRI T1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJVU0FHRSAxCnwgI2RlZmluZSBIQVZFX0dFVF9D VVJSRU5UX0RJUl9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfTFJBTkQ0OCAxCnwgI2RlZmluZSBIQVZF X1JBTkRPTSAxCnwgI2RlZmluZSBIQVZFX1JJTlQgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8 ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FMRSAxCnwg I2RlZmluZSBIQVZFX05FV0xPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJMSU1JVCAxCnwgI2Rl ZmluZSBIQVZFX1NFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5l IEhBVkVfR0VUQUREUklORk8gMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNk ZWZpbmUgSEFWRV9TVFJTSUdOQUwgMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZp bmUgSEFWRV9TRU5EVE8gMQp8ICNkZWZpbmUgSEFWRV9SRUNWRlJPTSAxCnwgI2RlZmluZSBIQVZF X0dFVFNPQ0tOQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEVFUk5BTUUgMQp8ICNkZWZpbmUgSEFW RV9HRVRJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfRlJFRUlGQUREUlMgMQp8ICNkZWZpbmUgSEFW RV9HQUlfU1RSRVJST1IgMQp8ICNkZWZpbmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VU UFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0dFVEdSRU5U IDEKfCAjZGVmaW5lIEhBVkVfRU5ER1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9DRk1BS0VSQVcgMQp8 ICNkZWZpbmUgSEFWRV9DRlNFVFNQRUVEIDEKfCAjZGVmaW5lIEhBVkVfQ09QWVNJR04gMQp8ICNk ZWZpbmUgSEFWRV9fX0VYRUNVVEFCTEVfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9MT0cyIDEKfCAj ZGVmaW5lIEhBVkVfQUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9VTldJ TkRfSU5JVCAxCnwgI2RlZmluZSBIQVZFX0ZTRUVLTyAxCnwgI2RlZmluZSBIQVZFX0dSQU5UUFQg MQp8ICNkZWZpbmUgSEFWRV9HRVRQVCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX09QRU5QVCAxCnwg I2RlZmluZSBURVJNSU5GTyAxCnwgI2RlZmluZSBIQVZFX1RJTUVSRkQgMQp8ICNkZWZpbmUgSEFW RV9SRVNfSU5JVCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9VTklQQUlSX1VOSUNPREUgMQp8ICNk ZWZpbmUgSEFWRV9JTkVUX1NPQ0tFVFMgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5l IEhBVkVfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhB VkVfV09SS0lOR19GT1JLIDEKfCAjZGVmaW5lIEhBVkVfU05QUklOVEYgMQp8ICNkZWZpbmUgSEFW RV9HTElCIDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fQ09ERVNFVCAxCnwgI2RlZmluZSBIQVZF X01CU1RBVEVfVCAxCnwgI2RlZmluZSBBTVBFUlNBTkRfRlVMTF9OQU1FIDEKfCAjZGVmaW5lIEhB VkVfUFRZUyAxCnwgI2RlZmluZSBIQVZFX1NPQ0tFVFMgMQp8ICNkZWZpbmUgTlVMTF9ERVZJQ0Ug Ii9kZXYvbnVsbCIKfCAjZGVmaW5lIFNFUENIQVIgJzonCnwgI2RlZmluZSBzdWJwcm9jZXNzZXMg MQp8ICNkZWZpbmUgVVNFUl9GVUxMX05BTUUgcHctPnB3X2dlY29zCnwgI2RlZmluZSBESVJFQ1RP UllfU0VQICcvJwp8ICNkZWZpbmUgSVNfREVWSUNFX1NFUChfY18pIDAKfCAjZGVmaW5lIElTX0RJ UkVDVE9SWV9TRVAoX2NfKSAoKF9jXykgPT0gRElSRUNUT1JZX1NFUCkKfCAjZGVmaW5lIElTX0FO WV9TRVAoX2NfKSAoSVNfRElSRUNUT1JZX1NFUCAoX2NfKSkKfCAjZGVmaW5lIEhBVkVfUFJPQ0ZT IDEKfCAjZGVmaW5lIERFRkFVTFRfU09VTkRfREVWSUNFICIvZGV2L2RzcCIKfCAjZGVmaW5lIElO VEVSUlVQVF9JTlBVVCAxCnwgI2RlZmluZSBOQVJST1dQUk9UTyAxCnwgI2RlZmluZSBVTklYOThf UFRZUyAxCnwgI2RlZmluZSBQVFlfSVRFUkFUSU9OIGludCBpOyBmb3IgKGkgPSAwOyBpIDwgMTsg aSsrKQp8ICNkZWZpbmUgUFRZX1RUWV9OQU1FX1NQUklOVEYgeyBjaGFyICpwdHluYW1lID0gMDsg c2lnc2V0X3QgYmxvY2tlZDsgc2lnZW1wdHlzZXQgKCZibG9ja2VkKTsgc2lnYWRkc2V0ICgmYmxv Y2tlZCwgU0lHQ0hMRCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX0JMT0NLLCAmYmxvY2tlZCwgMCk7 IGlmIChncmFudHB0IChmZCkgIT0gLTEgJiYgdW5sb2NrcHQgKGZkKSAhPSAtMSkgcHR5bmFtZSA9 IHB0c25hbWUoZmQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19VTkJMT0NLLCAmYmxvY2tlZCwgMCk7 IGlmICghcHR5bmFtZSkgeyBlbWFjc19jbG9zZSAoZmQpOyByZXR1cm4gLTE7IH0gc25wcmludGYg KHB0eV9uYW1lLCBQVFlfTkFNRV9TSVpFLCAiJXMiLCBwdHluYW1lKTsgfQp8ICNkZWZpbmUgUFRZ X09QRU4gZG8geyBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19DTE9FWEVDIHwgT19OT0NU VFkpOyBpZiAoZmQgPCAwICYmIGVycm5vID09IEVJTlZBTCkgZmQgPSBwb3NpeF9vcGVucHQgKE9f UkRXUiB8IE9fTk9DVFRZKTsgfSB3aGlsZSAoZmFsc2UpCnwgI2RlZmluZSBQVFlfTkFNRV9TUFJJ TlRGIC8qKi8KfCAjZGVmaW5lIFNJR05BTFNfVklBX0NIQVJBQ1RFUlMgMQp8ICNkZWZpbmUgR0Nf U0VUSk1QX1dPUktTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBIQVZF X19TRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TVEFD S19PVkVSRkxPV19IQU5ETElORyAxCnwgI2RlZmluZSBVU0cgLyoqLwp8ICNkZWZpbmUgR05VX0xJ TlVYIC8qKi8KfCAjZGVmaW5lIFVTQUJMRV9GSU9OUkVBRCAxCnwgI2RlZmluZSBVU0FCTEVfU0lH SU8gMQp8ICNkZWZpbmUgQ09QWVJJR0hUICJDb3B5cmlnaHQgKEMpIDIwMTYgRnJlZSBTb2Z0d2Fy ZSBGb3VuZGF0aW9uLCBJbmMuIgp8ICNkZWZpbmUgVEVSTV9IRUFERVIgInh0ZXJtLmgiCnwgI2Rl ZmluZSBFTUFDU19DT05GSUdVUkFUSU9OICJ4ODZfNjQtdW5rbm93bi1saW51eC1nbnUiCnwgI2Rl ZmluZSBFTUFDU19DT05GSUdfT1BUSU9OUyAiLS13aXRoLXgtdG9vbGtpdD1sdWNpZCIKfCAjZGVm aW5lIEhBVkVfWF9XSU5ET1dTIDEKfCAjZGVmaW5lIFVTRV9YX1RPT0xLSVQgMQp8ICNkZWZpbmUg VVNFX0xVQ0lEIDEKfCAjZGVmaW5lIEhBVkVfWDExIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0FU VFJJQlVURV9BTElHTkVEIDEKfCAjZGVmaW5lIEdOVV9NQUxMT0MgMQp8ICNkZWZpbmUgUkVMX0FM TE9DIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8 ICNkZWZpbmUgSEFWRV9VTlNJR05FRF9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfQzk5 X1NUUlRPTEQgMQp8ICNkZWZpbmUgSEFWRV9FTlZJUk9OX0RFQ0wgMQp8ICNkZWZpbmUgSEFWRV9E RUNMX0ZEQVRBU1lOQyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSTU9ERSAwCnwgI2RlZmluZSBM U1RBVF9GT0xMT1dTX1NMQVNIRURfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEK fCAjZGVmaW5lIEhBVkVfR0VUT1BUX0xPTkdfT05MWSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VU RU5WIDEKfCAjZGVmaW5lIHJlc3RyaWN0IF9fcmVzdHJpY3QKfCAjZGVmaW5lIEhBVkVfTE9OR19M T05HX0lOVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfTUVNUkNIUiAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfQUxBUk0gMQp8ICNkZWZpbmUgSEFWRV9TSUdTRVRfVCAxCnwgI2RlZmluZSBIQVZFX1dDSEFS X1QgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVE1fVE1fWk9ORSAxCnwgI2RlZmluZSBIQVZFX1RN X1pPTkUgMQp8ICNkZWZpbmUgSEFWRV9UTV9HTVRPRkYgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NU UlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSVE9VTUFYIDEKfCAjZGVmaW5lIEhBVkVf V09SS0lOR19VVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVVRJTUJVRiAxCnwgI2RlZmlu ZSBHRVRHUk9VUFNfVCBnaWRfdAp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVERUQUJMRVNJWkUgMQp8 ICNkZWZpbmUgSEFWRV9TWVNfQUNMX0ggMQp8ICNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZJTEUgMQp8 ICNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX1NFVF9GSUxFIDEK fCAjZGVmaW5lIEhBVkVfQUNMX1NFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUkVFIDEKfCAj ZGVmaW5lIEhBVkVfQUNMX0ZST01fTU9ERSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX1RFWFQg MQp8ICNkZWZpbmUgSEFWRV9BQ0xfREVMRVRFX0RFRl9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNM X0VYVEVOREVEX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfTElCQUNMX0ggMQp8ICNkZWZpbmUg SEFWRV9BQ0xfRU5UUklFUyAxCnwgI2RlZmluZSBIQVZFX0FDTF9GSVJTVF9FTlRSWSAxCnwgI2Rl ZmluZSBVU0VfQUNMIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfQllU RVNXQVBfSCAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX0dFVFRJTUUgMQp8ICNkZWZpbmUgSEFWRV9D TE9DS19TRVRUSU1FIDEKfCAjZGVmaW5lIEdOVUxJQl9DTE9TRV9TVFJFQU0gMQp8ICNkZWZpbmUg SEFWRV9EVVAyIDEKfCAjZGVmaW5lIEdOVUxJQl9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9E RUNMX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBHTlVMSUJfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9fX0ZQRU5ESU5HIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUg PHN5cy90aW1lLmg+CnwgICAgICAgICAgICAgICBzdHJ1Y3QgdGltZXZhbCBjOwp8ICAgICAgICAg ICAgICAgaW50IGdldHRpbWVvZmRheSAoc3RydWN0IHRpbWV2YWwgKnJlc3RyaWN0LCB2b2lkICpy ZXN0cmljdCk7CnwgCnwgaW50CnwgbWFpbiAoKQp8IHsKfCAvKiBnbGliYyB1c2VzIHN0cnVjdCB0 aW1lem9uZSAqIHJhdGhlciB0aGFuIHRoZSBQT1NJWCB2b2lkICoKfCAgICAgICAgICAgICAgICAg IGlmIF9HTlVfU09VUkNFIGlzIGRlZmluZWQuICBIb3dldmVyLCBzaW5jZSB0aGUgb25seSBwb3J0 YWJsZQp8ICAgICAgICAgICAgICAgICAgdXNlIG9mIGdldHRpbWVvZmRheSB1c2VzIE5VTEwgYXMg dGhlIHNlY29uZCBwYXJhbWV0ZXIsIGFuZAp8ICAgICAgICAgICAgICAgICAgc2luY2UgdGhlIGds aWJjIGRlZmluaXRpb24gaXMgYWN0dWFsbHkgbW9yZSB0eXBlc2FmZSwgaXQgaXMKfCAgICAgICAg ICAgICAgICAgIG5vdCB3b3J0aCB3cmFwcGluZyB0aGlzIHRvIGdldCBhIGNvbXBsaWFudCBzaWdu YXR1cmUuICAqLwp8ICAgICAgICAgICAgICAgaW50ICgqZikgKHN0cnVjdCB0aW1ldmFsICpyZXN0 cmljdCwgdm9pZCAqcmVzdHJpY3QpCnwgICAgICAgICAgICAgICAgID0gZ2V0dGltZW9mZGF5Owp8 ICAgICAgICAgICAgICAgaW50IHggPSBmICgmYywgMCk7CnwgICAgICAgICAgICAgICByZXR1cm4g ISh4IHwgYy50dl9zZWMgfCBjLnR2X3VzZWMpOwp8IAp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpj b25maWd1cmU6MjY2ODI6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3Vy ZToyNjY4MjogJD8gPSAwCmNvbmZpZ3VyZToyNjY5MTogcmVzdWx0OiBhbG1vc3QKY29uZmlndXJl OjI2ODA4OiBjaGVja2luZyBmb3IgbWVtcmNocgpjb25maWd1cmU6MjY4MDg6IGdjYyAtbyBjb25m dGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAtbHB0aHJlYWQgID4mNSAKY29uZmlndXJlOjI2 ODA4OiAkPyA9IDAKY29uZmlndXJlOjI2ODA4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjY4OTY6 IGNoZWNraW5nIGZvciB3b3JraW5nIG1rdGltZQpjb25maWd1cmU6MjcxMDQ6IGdjYyAtbyBjb25m dGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAtbHB0aHJlYWQgID4mNSAKY29uZmlndXJlOjI3 MTA0OiAkPyA9IDAKY29uZmlndXJlOjI3MTA0OiAuL2NvbmZ0ZXN0CmNvbmZpZ3VyZToyNzEwNDog JD8gPSAwCmNvbmZpZ3VyZToyNzExNTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI3MTc2OiBjaGVj a2luZyB3aGV0aGVyIHNpZ25hdHVyZSBvZiBwc2VsZWN0IGNvbmZvcm1zIHRvIFBPU0lYCmNvbmZp Z3VyZToyNzE5NjogZ2NjIC1vIGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jIC1scHRo cmVhZCAgPiY1IApjb25maWd1cmU6MjcxOTY6ICQ/ID0gMApjb25maWd1cmU6MjcyMDQ6IHJlc3Vs dDogeWVzCmNvbmZpZ3VyZToyNzIwNzogY2hlY2tpbmcgd2hldGhlciBwc2VsZWN0IGRldGVjdHMg aW52YWxpZCBmZHMKY29uZmlndXJlOjI3MjUyOiBnY2MgLW8gY29uZnRlc3QgLWczIC1PMiAgICAg IGNvbmZ0ZXN0LmMgLWxwdGhyZWFkICA+JjUgCmNvbmZpZ3VyZToyNzI1MjogJD8gPSAwCmNvbmZp Z3VyZToyNzI1MjogLi9jb25mdGVzdApjb25maWd1cmU6MjcyNTI6ICQ/ID0gMApjb25maWd1cmU6 MjcyNjM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNzM3NjogY2hlY2tpbmcgd2hldGhlciBwdGhy ZWFkX3NpZ21hc2sgcmV0dXJucyBlcnJvciBudW1iZXJzCmNvbmZpZ3VyZToyNzQwODogZ2NjIC1v IGNvbmZ0ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jIC1scHRocmVhZCAgID4mNSAKY29uZmln dXJlOjI3NDA4OiAkPyA9IDAKY29uZmlndXJlOjI3NDA4OiAuL2NvbmZ0ZXN0CmNvbmZpZ3VyZToy NzQwODogJD8gPSAwCmNvbmZpZ3VyZToyNzQyMDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI3NDMx OiBjaGVja2luZyB3aGV0aGVyIHB0aHJlYWRfc2lnbWFzayB1bmJsb2NrcyBzaWduYWxzIGNvcnJl Y3RseQpjb25maWd1cmU6Mjc0ODQ6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRl c3QuYyAtbHB0aHJlYWQgID4mNSAKY29uZmlndXJlOjI3NDg0OiAkPyA9IDAKY29uZmlndXJlOjI3 NDg0OiAuL2NvbmZ0ZXN0CmNvbmZpZ3VyZToyNzQ4NDogJD8gPSAwCmNvbmZpZ3VyZToyNzQ5Njog cmVzdWx0OiBndWVzc2luZyB5ZXMKY29uZmlndXJlOjI3NTgxOiBjaGVja2luZyB3aGV0aGVyIHJl YWRsaW5rIHNpZ25hdHVyZSBpcyBjb3JyZWN0CmNvbmZpZ3VyZToyNzU5OTogZ2NjIC1jIC1nMyAt TzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjI3NTk5OiAkPyA9IDAKY29uZmlndXJlOjI3 NjA2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6Mjc2MDg6IGNoZWNraW5nIHdoZXRoZXIgcmVhZGxp bmsgaGFuZGxlcyB0cmFpbGluZyBzbGFzaCBjb3JyZWN0bHkKY29uZmlndXJlOjI3NjM4OiBnY2Mg LW8gY29uZnRlc3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgLWxwdGhyZWFkICA+JjUgCmNvbmZp Z3VyZToyNzYzODogJD8gPSAwCmNvbmZpZ3VyZToyNzYzODogLi9jb25mdGVzdApjb25maWd1cmU6 Mjc2Mzg6ICQ/ID0gMApjb25maWd1cmU6Mjc2NDk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNzcw MDogY2hlY2tpbmcgd2hldGhlciByZWFkbGlua2F0IHNpZ25hdHVyZSBpcyBjb3JyZWN0CmNvbmZp Z3VyZToyNzcxODogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjI3 NzE4OiAkPyA9IDAKY29uZmlndXJlOjI3NzI1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6Mjc3Njc6 IGNoZWNraW5nIGZvciBzaWcyc3RyCmNvbmZpZ3VyZToyNzc2NzogZ2NjIC1vIGNvbmZ0ZXN0IC1n MyAtTzIgICAgICBjb25mdGVzdC5jIC1scHRocmVhZCAgPiY1IAovdG1wL2NjbnFEUURPLm86IElu IGZ1bmN0aW9uIGBtYWluJzoKL2hvbWUvZGVlY2gvRG93bmxvYWRzL2VtYWNzLTI1LjEvY29uZnRl c3QuYzozMzY6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYHNpZzJzdHInCmNvbGxlY3QyOiBlcnJv cjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpjb25maWd1cmU6Mjc3Njc6ICQ/ID0gMQpjb25m aWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQ QUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3Mi CnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklO RyAiR05VIEVtYWNzIDI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1l bWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHA6Ly93d3cuZ251Lm9yZy9z b2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmluZSBQQUNLQUdFICJlbWFjcyIKfCAjZGVmaW5lIFZFUlNJ T04gIjI1LjEiCnwgI2RlZmluZSBNQUlMX1VTRV9QT1AgMQp8ICNkZWZpbmUgSEFWRV9QVVRFTlYg MQp8ICNkZWZpbmUgSEFWRV9UWlNFVCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmlu ZSBIQVZFX1JFQURMSU5LQVQgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUg SEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZT VEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRB WSAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfTUtPU1RFTVAgMQp8ICNk ZWZpbmUgSEFWRV9QSVBFMiAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUgSEFW RV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX1NU UlRPVU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJ TUVfUiAxCnwgI2RlZmluZSBIQVZFX1RJTUVHTSAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVMgMQp8 ICNkZWZpbmUgSEFWRV9GVVRJTUVTQVQgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVOUyAxCnwgI2Rl ZmluZSBIQVZFX1VUSU1FTlNBVCAxCnwgI2RlZmluZSBIQVZFX0xVVElNRVMgMQp8ICNkZWZpbmUg SEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VDVVJFX0dFVEVOViAxCnwgI2Rl ZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBI QVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9T VFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RE SU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNf XyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEK fCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9fVVNFX01JTkdXX0FOU0lfU1RESU8g MQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9UQU5ERU1f U09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fVVNFXzY0X0JJVF9JTk9ERSAxCnwgI2RlZmluZSBT WVNURU1fVFlQRSAiZ251L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJEX0ggMQp8 ICNkZWZpbmUgSEFWRV9BTFNBIDEKfCAjZGVmaW5lIEhBVkVfU09VTkQgMQp8ICNkZWZpbmUgSEFW RV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUg SEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19T T0NLRVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1RE X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8 ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8 ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNk ZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUg SEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFW RV9QRVJTT05BTElUWV9MSU5VWDMyIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5GTyAxCnwg I2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUgSEFWRV9URVJNX0ggMQp8ICNk ZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TWVNfU0lHTElT VCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAx CnwgI2RlZmluZSBIQVZFX0lGQUREUlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9J RlJfRkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwgI2Rl ZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlVD VF9JRlJFUV9JRlJfQlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9B RERSIDEKfCAjZGVmaW5lIEhBVkVfTE9OR19GSUxFX05BTUVTIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1ZMSU1JVF9IIDEKfCAjZGVmaW5lIEhBVkVfREFUQV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0dF VFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQUQg MQp8ICNkZWZpbmUgSEFWRV9YS0IgMQp8ICNkZWZpbmUgSEFWRV9YUk1TRVREQVRBQkFTRSAxCnwg I2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNPVVJDRVNUUklORyAxCnwgI2RlZmluZSBIQVZFX1hTQ1JF RU5OVU1CRVJPRlNDUkVFTiAxCnwgI2RlZmluZSBIQVZFX1gxMVI2IDEKfCAjZGVmaW5lIEhBVkVf WF9JMThOIDEKfCAjZGVmaW5lIEhBVkVfWDExUjZfWElNIDEKfCAjZGVmaW5lIEhBVkVfUlNWRyAx CnwgI2RlZmluZSBIQVZFX0lNQUdFTUFHSUNLIDEKfCAjZGVmaW5lIEhBVkVfTUFHSUNLRVhQT1JU SU1BR0VQSVhFTFMgMQp8ICNkZWZpbmUgSEFWRV9NQUdJQ0tNRVJHRUlNQUdFTEFZRVJTIDEKfCAj ZGVmaW5lIEhBVkVfREJVUyAxCnwgI2RlZmluZSBIQVZFX0RCVVNfV0FUQ0hfR0VUX1VOSVhfRkQg MQp8ICNkZWZpbmUgSEFWRV9EQlVTX1RZUEVfSVNfVkFMSUQgMQp8ICNkZWZpbmUgSEFWRV9EQlVT X1ZBTElEQVRFX0JVU19OQU1FIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9QQVRIIDEK fCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9JTlRFUkZBQ0UgMQp8ICNkZWZpbmUgSEFWRV9E QlVTX1ZBTElEQVRFX01FTUJFUiAxCnwgI2RlZmluZSBIQVZFX0dTRVRUSU5HUyAxCnwgI2RlZmlu ZSBIQVZFX0dDT05GIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhBVkVfR05V VExTMyAxCnwgI2RlZmluZSBIQVZFX0lOT1RJRlkgMQp8ICNkZWZpbmUgVVNFX0ZJTEVfTk9USUZZ IDEKfCAjZGVmaW5lIEhBVkVfWDExWFRSNiAxCnwgI2RlZmluZSBVU0VfVE9PTEtJVF9TQ1JPTExf QkFSUyAxCnwgI2RlZmluZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBVU0VfWElNIDEKfCAjZGVmaW5l IFhSZWdpc3RlcklNSW5zdGFudGlhdGVDYWxsYmFja19hcmc2IFhQb2ludGVyCnwgI2RlZmluZSBI QVZFX1hGVCAxCnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAjZGVmaW5lIEhBVkVfTElCT1RG IDEKfCAjZGVmaW5lIEhBVkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTIDEKfCAjZGVmaW5lIEhB VkVfTTE3Tl9GTFQgMQp8ICNkZWZpbmUgVVNFX1hDQiAxCnwgI2RlZmluZSBIQVZFX1hQTSAxCnwg I2RlZmluZSBIQVZFX0pQRUcgMQp8ICNkZWZpbmUgSEFWRV9aTElCIDEKfCAjZGVmaW5lIEhBVkVf UE5HIDEKfCAjZGVmaW5lIEhBVkVfVElGRiAxCnwgI2RlZmluZSBIQVZFX0dJRiAxCnwgI2RlZmlu ZSBIQVZFX0dQTSAxCnwgI2RlZmluZSBIQVZFX1hfU00gMQp8ICNkZWZpbmUgSEFWRV9YUkFORFIg MQp8ICNkZWZpbmUgSEFWRV9YSU5FUkFNQSAxCnwgI2RlZmluZSBIQVZFX1hGSVhFUyAxCnwgI2Rl ZmluZSBIQVZFX0xJQlhNTDIgMQp8ICNkZWZpbmUgSEFWRV9IX0VSUk5PIDEKfCAjZGVmaW5lIE1B SUxfVVNFX0ZMT0NLIDEKfCAjZGVmaW5lIEhBVkVfQUNDRVBUNCAxCnwgI2RlZmluZSBIQVZFX0ZD SERJUiAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUUlVT QUdFIDEKfCAjZGVmaW5lIEhBVkVfR0VUX0NVUlJFTlRfRElSX05BTUUgMQp8ICNkZWZpbmUgSEFW RV9MUkFORDQ4IDEKfCAjZGVmaW5lIEhBVkVfUkFORE9NIDEKfCAjZGVmaW5lIEhBVkVfUklOVCAx CnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAj ZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfTkVXTE9DQUxFIDEKfCAjZGVm aW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVmaW5l IEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9HRVRBRERSSU5GTyAxCnwgI2RlZmluZSBI QVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlNJR05BTCAxCnwgI2RlZmlu ZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX1NFTkRUTyAxCnwgI2RlZmluZSBIQVZF X1JFQ1ZGUk9NIDEKfCAjZGVmaW5lIEhBVkVfR0VUU09DS05BTUUgMQp8ICNkZWZpbmUgSEFWRV9H RVRQRUVSTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVElGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9G UkVFSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0dBSV9TVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZF X1NZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0VORFBXRU5U IDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRHUkVOVCAxCnwg I2RlZmluZSBIQVZFX0NGTUFLRVJBVyAxCnwgI2RlZmluZSBIQVZFX0NGU0VUU1BFRUQgMQp8ICNk ZWZpbmUgSEFWRV9DT1BZU0lHTiAxCnwgI2RlZmluZSBIQVZFX19fRVhFQ1VUQUJMRV9TVEFSVCAx CnwgI2RlZmluZSBIQVZFX0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9DIDEKfCAj ZGVmaW5lIEhBVkVfX19CVUlMVElOX1VOV0lORF9JTklUIDEKfCAjZGVmaW5lIEhBVkVfRlNFRUtP IDEKfCAjZGVmaW5lIEhBVkVfR1JBTlRQVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBUIDEKfCAjZGVm aW5lIEhBVkVfUE9TSVhfT1BFTlBUIDEKfCAjZGVmaW5lIFRFUk1JTkZPIDEKfCAjZGVmaW5lIEhB VkVfVElNRVJGRCAxCnwgI2RlZmluZSBIQVZFX1JFU19JTklUIDEKfCAjZGVmaW5lIEhBVkVfU1RS VUNUX1VOSVBBSVJfVU5JQ09ERSAxCnwgI2RlZmluZSBIQVZFX0lORVRfU09DS0VUUyAxCnwgI2Rl ZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dP UktJTkdfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX0ZPUksgMQp8ICNkZWZpbmUgSEFW RV9TTlBSSU5URiAxCnwgI2RlZmluZSBIQVZFX0dMSUIgMQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5G T19DT0RFU0VUIDEKfCAjZGVmaW5lIEhBVkVfTUJTVEFURV9UIDEKfCAjZGVmaW5lIEFNUEVSU0FO RF9GVUxMX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9QVFlTIDEKfCAjZGVmaW5lIEhBVkVfU09DS0VU UyAxCnwgI2RlZmluZSBOVUxMX0RFVklDRSAiL2Rldi9udWxsIgp8ICNkZWZpbmUgU0VQQ0hBUiAn OicKfCAjZGVmaW5lIHN1YnByb2Nlc3NlcyAxCnwgI2RlZmluZSBVU0VSX0ZVTExfTkFNRSBwdy0+ cHdfZ2Vjb3MKfCAjZGVmaW5lIERJUkVDVE9SWV9TRVAgJy8nCnwgI2RlZmluZSBJU19ERVZJQ0Vf U0VQKF9jXykgMAp8ICNkZWZpbmUgSVNfRElSRUNUT1JZX1NFUChfY18pICgoX2NfKSA9PSBESVJF Q1RPUllfU0VQKQp8ICNkZWZpbmUgSVNfQU5ZX1NFUChfY18pIChJU19ESVJFQ1RPUllfU0VQIChf Y18pKQp8ICNkZWZpbmUgSEFWRV9QUk9DRlMgMQp8ICNkZWZpbmUgREVGQVVMVF9TT1VORF9ERVZJ Q0UgIi9kZXYvZHNwIgp8ICNkZWZpbmUgSU5URVJSVVBUX0lOUFVUIDEKfCAjZGVmaW5lIE5BUlJP V1BST1RPIDEKfCAjZGVmaW5lIFVOSVg5OF9QVFlTIDEKfCAjZGVmaW5lIFBUWV9JVEVSQVRJT04g aW50IGk7IGZvciAoaSA9IDA7IGkgPCAxOyBpKyspCnwgI2RlZmluZSBQVFlfVFRZX05BTUVfU1BS SU5URiB7IGNoYXIgKnB0eW5hbWUgPSAwOyBzaWdzZXRfdCBibG9ja2VkOyBzaWdlbXB0eXNldCAo JmJsb2NrZWQpOyBzaWdhZGRzZXQgKCZibG9ja2VkLCBTSUdDSExEKTsgcHRocmVhZF9zaWdtYXNr IChTSUdfQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKGdyYW50cHQgKGZkKSAhPSAtMSAmJiB1bmxv Y2twdCAoZmQpICE9IC0xKSBwdHluYW1lID0gcHRzbmFtZShmZCk7IHB0aHJlYWRfc2lnbWFzayAo U0lHX1VOQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKCFwdHluYW1lKSB7IGVtYWNzX2Nsb3NlIChm ZCk7IHJldHVybiAtMTsgfSBzbnByaW50ZiAocHR5X25hbWUsIFBUWV9OQU1FX1NJWkUsICIlcyIs IHB0eW5hbWUpOyB9CnwgI2RlZmluZSBQVFlfT1BFTiBkbyB7IGZkID0gcG9zaXhfb3BlbnB0IChP X1JEV1IgfCBPX0NMT0VYRUMgfCBPX05PQ1RUWSk7IGlmIChmZCA8IDAgJiYgZXJybm8gPT0gRUlO VkFMKSBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19OT0NUVFkpOyB9IHdoaWxlIChmYWxz ZSkKfCAjZGVmaW5lIFBUWV9OQU1FX1NQUklOVEYgLyoqLwp8ICNkZWZpbmUgU0lHTkFMU19WSUFf Q0hBUkFDVEVSUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgR0NfU0VU Sk1QX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfX1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NJR1NF VEpNUCAxCnwgI2RlZmluZSBIQVZFX1NUQUNLX09WRVJGTE9XX0hBTkRMSU5HIDEKfCAjZGVmaW5l IFVTRyAvKiovCnwgI2RlZmluZSBHTlVfTElOVVggLyoqLwp8ICNkZWZpbmUgVVNBQkxFX0ZJT05S RUFEIDEKfCAjZGVmaW5lIFVTQUJMRV9TSUdJTyAxCnwgI2RlZmluZSBDT1BZUklHSFQgIkNvcHly aWdodCAoQykgMjAxNiBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4iCnwgI2RlZmluZSBU RVJNX0hFQURFUiAieHRlcm0uaCIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR1VSQVRJT04gIng4Nl82 NC11bmtub3duLWxpbnV4LWdudSIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR19PUFRJT05TICItLXdp dGgteC10b29sa2l0PWx1Y2lkIgp8ICNkZWZpbmUgSEFWRV9YX1dJTkRPV1MgMQp8ICNkZWZpbmUg VVNFX1hfVE9PTEtJVCAxCnwgI2RlZmluZSBVU0VfTFVDSUQgMQp8ICNkZWZpbmUgSEFWRV9YMTEg MQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfQVRUUklCVVRFX0FMSUdORUQgMQp8ICNkZWZpbmUgR05V X01BTExPQyAxCnwgI2RlZmluZSBSRUxfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAx CnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBIQVZFX1VOU0lHTkVEX0xPTkdfTE9O R19JTlQgMQp8ICNkZWZpbmUgSEFWRV9DOTlfU1RSVE9MRCAxCnwgI2RlZmluZSBIQVZFX0VOVklS T05fREVDTCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkRBVEFTWU5DIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9TVFJNT0RFIDAKfCAjZGVmaW5lIExTVEFUX0ZPTExPV1NfU0xBU0hFRF9TWU1MSU5LIDEK fCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfTE9OR19PTkxZ IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRFTlYgMQp8ICNkZWZpbmUgcmVzdHJpY3QgX19yZXN0 cmljdAp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9N RU1SQ0hSIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTEFSTSAxCnwgI2RlZmluZSBIQVZFX1NJR1NF VF9UIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfVCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9UTV9U TV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fWk9ORSAxCnwgI2RlZmluZSBIQVZFX1RNX0dNVE9G RiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9T VFJUT1VNQVggMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1VUSU1FUyAxCnwgI2RlZmluZSBIQVZF X1NUUlVDVF9VVElNQlVGIDEKfCAjZGVmaW5lIEdFVEdST1VQU19UIGdpZF90CnwgI2RlZmluZSBI QVZFX0RFQ0xfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NZU19BQ0xfSCAxCnwgI2Rl ZmluZSBIQVZFX0FDTF9HRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRkQgMQp8ICNk ZWZpbmUgSEFWRV9BQ0xfU0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZEIDEKfCAj ZGVmaW5lIEhBVkVfQUNMX0ZSRUUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9NT0RFIDEKfCAj ZGVmaW5lIEhBVkVfQUNMX0ZST01fVEVYVCAxCnwgI2RlZmluZSBIQVZFX0FDTF9ERUxFVEVfREVG X0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRVhURU5ERURfRklMRSAxCnwgI2RlZmluZSBIQVZF X0FDTF9MSUJBQ0xfSCAxCnwgI2RlZmluZSBIQVZFX0FDTF9FTlRSSUVTIDEKfCAjZGVmaW5lIEhB VkVfQUNMX0ZJUlNUX0VOVFJZIDEKfCAjZGVmaW5lIFVTRV9BQ0wgMQp8ICNkZWZpbmUgSEFWRV9B TExPQ0EgMQp8ICNkZWZpbmUgSEFWRV9CWVRFU1dBUF9IIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tf R0VUVElNRSAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX1NFVFRJTUUgMQp8ICNkZWZpbmUgR05VTElC X0NMT1NFX1NUUkVBTSAxCnwgI2RlZmluZSBIQVZFX0RVUDIgMQp8ICNkZWZpbmUgR05VTElCX0ZB Q0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkRPUEVORElSIDEKfCAjZGVmaW5lIEdOVUxJ Ql9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX19fRlBFTkRJTkcgMQp8ICNkZWZpbmUg R0VUVElNRU9GREFZX1RJTUVaT05FIHN0cnVjdCB0aW1lem9uZQp8ICNkZWZpbmUgSEFWRV9NRU1S Q0hSIDEKfCAjZGVmaW5lIEdOVUxJQl9NS09TVEVNUCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAq Lwp8IC8qIERlZmluZSBzaWcyc3RyIHRvIGFuIGlubm9jdW91cyB2YXJpYW50LCBpbiBjYXNlIDxs aW1pdHMuaD4gZGVjbGFyZXMgc2lnMnN0ci4KfCAgICBGb3IgZXhhbXBsZSwgSFAtVVggMTFpIDxs aW1pdHMuaD4gZGVjbGFyZXMgZ2V0dGltZW9mZGF5LiAgKi8KfCAjZGVmaW5lIHNpZzJzdHIgaW5u b2N1b3VzX3NpZzJzdHIKfCAKfCAvKiBTeXN0ZW0gaGVhZGVyIHRvIGRlZmluZSBfX3N0dWIgbWFj cm9zIGFuZCBob3BlZnVsbHkgZmV3IHByb3RvdHlwZXMsCnwgICAgIHdoaWNoIGNhbiBjb25mbGlj dCB3aXRoIGNoYXIgc2lnMnN0ciAoKTsgYmVsb3cuCnwgICAgIFByZWZlciA8bGltaXRzLmg+IHRv IDxhc3NlcnQuaD4gaWYgX19TVERDX18gaXMgZGVmaW5lZCwgc2luY2UKfCAgICAgPGxpbWl0cy5o PiBleGlzdHMgZXZlbiBvbiBmcmVlc3RhbmRpbmcgY29tcGlsZXJzLiAgKi8KfCAKfCAjaWZkZWYg X19TVERDX18KfCAjIGluY2x1ZGUgPGxpbWl0cy5oPgp8ICNlbHNlCnwgIyBpbmNsdWRlIDxhc3Nl cnQuaD4KfCAjZW5kaWYKfCAKfCAjdW5kZWYgc2lnMnN0cgp8IAp8IC8qIE92ZXJyaWRlIGFueSBH Q0MgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLgp8ICAgIFVzZSBjaGFyIGJl Y2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIEdDQwp8ICAgIGJ1aWx0 aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICov CnwgI2lmZGVmIF9fY3BsdXNwbHVzCnwgZXh0ZXJuICJDIgp8ICNlbmRpZgp8IGNoYXIgc2lnMnN0 ciAoKTsKfCAvKiBUaGUgR05VIEMgbGlicmFyeSBkZWZpbmVzIHRoaXMgZm9yIGZ1bmN0aW9ucyB3 aGljaCBpdCBpbXBsZW1lbnRzCnwgICAgIHRvIGFsd2F5cyBmYWlsIHdpdGggRU5PU1lTLiAgU29t ZSBmdW5jdGlvbnMgYXJlIGFjdHVhbGx5IG5hbWVkCnwgICAgIHNvbWV0aGluZyBzdGFydGluZyB3 aXRoIF9fIGFuZCB0aGUgbm9ybWFsIG5hbWUgaXMgYW4gYWxpYXMuICAqLwp8ICNpZiBkZWZpbmVk IF9fc3R1Yl9zaWcyc3RyIHx8IGRlZmluZWQgX19zdHViX19fc2lnMnN0cgp8IGNob2tlIG1lCnwg I2VuZGlmCnwgCnwgaW50CnwgbWFpbiAoKQp8IHsKfCByZXR1cm4gc2lnMnN0ciAoKTsKfCAgIDsK fCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjI3NzY3OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToy Nzg2OTogY2hlY2tpbmcgZm9yIHZvbGF0aWxlIHNpZ19hdG9taWNfdApjb25maWd1cmU6Mjc4Njk6 IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyNzg2OTogJD8gPSAw CmNvbmZpZ3VyZToyNzg2OTogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZnRl c3QuYzogSW4gZnVuY3Rpb24gJ21haW4nOgpjb25mdGVzdC5jOjMwOTozNjogZXJyb3I6IGV4cGVj dGVkIGV4cHJlc3Npb24gYmVmb3JlICcpJyB0b2tlbgogaWYgKHNpemVvZiAoKHZvbGF0aWxlIHNp Z19hdG9taWNfdCkpKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCmNvbmZp Z3VyZToyNzg2OTogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNv bmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8ICNkZWZpbmUg UEFDS0FHRV9UQVJOQU1FICJlbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMjUuMSIK fCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgRW1hY3MgMjUuMSIKfCAjZGVmaW5lIFBBQ0tB R0VfQlVHUkVQT1JUICJidWctZ251LWVtYWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdFX1VS TCAiaHR0cDovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIFBBQ0tBR0Ug ImVtYWNzIgp8ICNkZWZpbmUgVkVSU0lPTiAiMjUuMSIKfCAjZGVmaW5lIE1BSUxfVVNFX1BPUCAx CnwgI2RlZmluZSBIQVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1RaU0VUIDEKfCAjZGVmaW5l IEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZF X0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVO RElSIDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAj ZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZp bmUgSEFWRV9NS09TVEVNUCAxCnwgI2RlZmluZSBIQVZFX1BJUEUyIDEKfCAjZGVmaW5lIEhBVkVf UFNFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9J TUFYIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9VTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAx CnwgI2RlZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfVElNRUdNIDEKfCAj ZGVmaW5lIEhBVkVfRlVUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVNBVCAxCnwgI2RlZmlu ZSBIQVZFX0ZVVElNRU5TIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVOU0FUIDEKfCAjZGVmaW5lIEhB VkVfTFVUSU1FUyAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFW RV9TRUNVUkVfR0VURU5WIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZF X1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZF X1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1P UllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVT X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEK fCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAjZGVm aW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUg X19VU0VfTUlOR1dfQU5TSV9TVERJTyAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJ Q1MgMQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9VU0VfNjRf QklUX0lOT0RFIDEKfCAjZGVmaW5lIFNZU1RFTV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBI QVZFX1NZU19TT1VORENBUkRfSCAxCnwgI2RlZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFW RV9TT1VORCAxCnwgI2RlZmluZSBIQVZFX1NZU19TWVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9Q VFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUF9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0gg MQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEK fCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNk ZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX0VYRUNJTkZPX0ggMQp8ICNkZWZp bmUgSEFWRV9TVERJT19FWFRfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFW RV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVf VVRJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BFUlNPTkFMSVRZX0xJTlVYMzIgMQp8ICNkZWZpbmUg SEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVmaW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwgI2Rl ZmluZSBIQVZFX1RFUk1fSCAxCnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX1NZU19TSUdMSVNUIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwg I2RlZmluZSBIQVZFX05FVF9JRl9IIDEKfCAjZGVmaW5lIEhBVkVfSUZBRERSU19IIDEKfCAjZGVm aW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9GTEFHUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9J RlJFUV9JRlJfSFdBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9ORVRNQVNL IDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9CUk9BREFERFIgMQp8ICNkZWZpbmUg SEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0FERFIgMQp8ICNkZWZpbmUgSEFWRV9MT05HX0ZJTEVfTkFN RVMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVkxJTUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9EQVRBX1NU QVJUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9NTUFQIDEK fCAjZGVmaW5lIEhBVkVfUFRIUkVBRCAxCnwgI2RlZmluZSBIQVZFX1hLQiAxCnwgI2RlZmluZSBI QVZFX1hSTVNFVERBVEFCQVNFIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RSSU5H IDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhBVkVf WDExUjYgMQp8ICNkZWZpbmUgSEFWRV9YX0kxOE4gMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9YSU0g MQp8ICNkZWZpbmUgSEFWRV9SU1ZHIDEKfCAjZGVmaW5lIEhBVkVfSU1BR0VNQUdJQ0sgMQp8ICNk ZWZpbmUgSEFWRV9NQUdJQ0tFWFBPUlRJTUFHRVBJWEVMUyAxCnwgI2RlZmluZSBIQVZFX01BR0lD S01FUkdFSU1BR0VMQVlFUlMgMQp8ICNkZWZpbmUgSEFWRV9EQlVTIDEKfCAjZGVmaW5lIEhBVkVf REJVU19XQVRDSF9HRVRfVU5JWF9GRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVFlQRV9JU19WQUxJ RCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfQlVTX05BTUUgMQp8ICNkZWZpbmUgSEFW RV9EQlVTX1ZBTElEQVRFX1BBVEggMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0lOVEVS RkFDRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfTUVNQkVSIDEKfCAjZGVmaW5lIEhB VkVfR1NFVFRJTkdTIDEKfCAjZGVmaW5lIEhBVkVfR0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9HTlVU TFMgMQp8ICNkZWZpbmUgSEFWRV9HTlVUTFMzIDEKfCAjZGVmaW5lIEhBVkVfSU5PVElGWSAxCnwg I2RlZmluZSBVU0VfRklMRV9OT1RJRlkgMQp8ICNkZWZpbmUgSEFWRV9YMTFYVFI2IDEKfCAjZGVm aW5lIFVTRV9UT09MS0lUX1NDUk9MTF9CQVJTIDEKfCAjZGVmaW5lIEhBVkVfWElNIDEKfCAjZGVm aW5lIFVTRV9YSU0gMQp8ICNkZWZpbmUgWFJlZ2lzdGVySU1JbnN0YW50aWF0ZUNhbGxiYWNrX2Fy ZzYgWFBvaW50ZXIKfCAjZGVmaW5lIEhBVkVfWEZUIDEKfCAjZGVmaW5lIEhBVkVfRlJFRVRZUEUg MQp8ICNkZWZpbmUgSEFWRV9MSUJPVEYgMQp8ICNkZWZpbmUgSEFWRV9PVEZfR0VUX1ZBUklBVElP Tl9HTFlQSFMgMQp8ICNkZWZpbmUgSEFWRV9NMTdOX0ZMVCAxCnwgI2RlZmluZSBVU0VfWENCIDEK fCAjZGVmaW5lIEhBVkVfWFBNIDEKfCAjZGVmaW5lIEhBVkVfSlBFRyAxCnwgI2RlZmluZSBIQVZF X1pMSUIgMQp8ICNkZWZpbmUgSEFWRV9QTkcgMQp8ICNkZWZpbmUgSEFWRV9USUZGIDEKfCAjZGVm aW5lIEhBVkVfR0lGIDEKfCAjZGVmaW5lIEhBVkVfR1BNIDEKfCAjZGVmaW5lIEhBVkVfWF9TTSAx CnwgI2RlZmluZSBIQVZFX1hSQU5EUiAxCnwgI2RlZmluZSBIQVZFX1hJTkVSQU1BIDEKfCAjZGVm aW5lIEhBVkVfWEZJWEVTIDEKfCAjZGVmaW5lIEhBVkVfTElCWE1MMiAxCnwgI2RlZmluZSBIQVZF X0hfRVJSTk8gMQp8ICNkZWZpbmUgTUFJTF9VU0VfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9BQ0NF UFQ0IDEKfCAjZGVmaW5lIEhBVkVfRkNIRElSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUg MQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNBR0UgMQp8ICNkZWZpbmUgSEFWRV9HRVRfQ1VSUkVOVF9E SVJfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0xSQU5ENDggMQp8ICNkZWZpbmUgSEFWRV9SQU5ET00g MQp8ICNkZWZpbmUgSEFWRV9SSU5UIDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5l IEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZpbmUg SEFWRV9ORVdMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFW RV9TRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TSFVURE9XTiAxCnwgI2RlZmluZSBIQVZFX0dF VEFERFJJTkZPIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhB VkVfU1RSU0lHTkFMIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVf U0VORFRPIDEKfCAjZGVmaW5lIEhBVkVfUkVDVkZST00gMQp8ICNkZWZpbmUgSEFWRV9HRVRTT0NL TkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFBFRVJOQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUSUZB RERSUyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfR0FJX1NU UkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEK fCAjZGVmaW5lIEhBVkVfRU5EUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUkVOVCAxCnwgI2Rl ZmluZSBIQVZFX0VOREdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfQ0ZNQUtFUkFXIDEKfCAjZGVmaW5l IEhBVkVfQ0ZTRVRTUEVFRCAxCnwgI2RlZmluZSBIQVZFX0NPUFlTSUdOIDEKfCAjZGVmaW5lIEhB VkVfX19FWEVDVVRBQkxFX1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVfTE9HMiAxCnwgI2RlZmluZSBI QVZFX0FMSUdORURfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fVU5XSU5EX0lOSVQg MQp8ICNkZWZpbmUgSEFWRV9GU0VFS08gMQp8ICNkZWZpbmUgSEFWRV9HUkFOVFBUIDEKfCAjZGVm aW5lIEhBVkVfR0VUUFQgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9PUEVOUFQgMQp8ICNkZWZpbmUg VEVSTUlORk8gMQp8ICNkZWZpbmUgSEFWRV9USU1FUkZEIDEKfCAjZGVmaW5lIEhBVkVfUkVTX0lO SVQgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVU5JUEFJUl9VTklDT0RFIDEKfCAjZGVmaW5lIEhB VkVfSU5FVF9TT0NLRVRTIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZG T1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJ TkdfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1NOUFJJTlRGIDEKfCAjZGVmaW5lIEhBVkVfR0xJQiAx CnwgI2RlZmluZSBIQVZFX0xBTkdJTkZPX0NPREVTRVQgMQp8ICNkZWZpbmUgSEFWRV9NQlNUQVRF X1QgMQp8ICNkZWZpbmUgQU1QRVJTQU5EX0ZVTExfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1BUWVMg MQp8ICNkZWZpbmUgSEFWRV9TT0NLRVRTIDEKfCAjZGVmaW5lIE5VTExfREVWSUNFICIvZGV2L251 bGwiCnwgI2RlZmluZSBTRVBDSEFSICc6Jwp8ICNkZWZpbmUgc3VicHJvY2Vzc2VzIDEKfCAjZGVm aW5lIFVTRVJfRlVMTF9OQU1FIHB3LT5wd19nZWNvcwp8ICNkZWZpbmUgRElSRUNUT1JZX1NFUCAn LycKfCAjZGVmaW5lIElTX0RFVklDRV9TRVAoX2NfKSAwCnwgI2RlZmluZSBJU19ESVJFQ1RPUllf U0VQKF9jXykgKChfY18pID09IERJUkVDVE9SWV9TRVApCnwgI2RlZmluZSBJU19BTllfU0VQKF9j XykgKElTX0RJUkVDVE9SWV9TRVAgKF9jXykpCnwgI2RlZmluZSBIQVZFX1BST0NGUyAxCnwgI2Rl ZmluZSBERUZBVUxUX1NPVU5EX0RFVklDRSAiL2Rldi9kc3AiCnwgI2RlZmluZSBJTlRFUlJVUFRf SU5QVVQgMQp8ICNkZWZpbmUgTkFSUk9XUFJPVE8gMQp8ICNkZWZpbmUgVU5JWDk4X1BUWVMgMQp8 ICNkZWZpbmUgUFRZX0lURVJBVElPTiBpbnQgaTsgZm9yIChpID0gMDsgaSA8IDE7IGkrKykKfCAj ZGVmaW5lIFBUWV9UVFlfTkFNRV9TUFJJTlRGIHsgY2hhciAqcHR5bmFtZSA9IDA7IHNpZ3NldF90 IGJsb2NrZWQ7IHNpZ2VtcHR5c2V0ICgmYmxvY2tlZCk7IHNpZ2FkZHNldCAoJmJsb2NrZWQsIFNJ R0NITEQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoZ3Jh bnRwdCAoZmQpICE9IC0xICYmIHVubG9ja3B0IChmZCkgIT0gLTEpIHB0eW5hbWUgPSBwdHNuYW1l KGZkKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfVU5CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoIXB0 eW5hbWUpIHsgZW1hY3NfY2xvc2UgKGZkKTsgcmV0dXJuIC0xOyB9IHNucHJpbnRmIChwdHlfbmFt ZSwgUFRZX05BTUVfU0laRSwgIiVzIiwgcHR5bmFtZSk7IH0KfCAjZGVmaW5lIFBUWV9PUEVOIGRv IHsgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fQ0xPRVhFQyB8IE9fTk9DVFRZKTsgaWYg KGZkIDwgMCAmJiBlcnJubyA9PSBFSU5WQUwpIGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBP X05PQ1RUWSk7IH0gd2hpbGUgKGZhbHNlKQp8ICNkZWZpbmUgUFRZX05BTUVfU1BSSU5URiAvKiov CnwgI2RlZmluZSBTSUdOQUxTX1ZJQV9DSEFSQUNURVJTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9X T1JLUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgSEFWRV9fU0VUSk1Q IDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU1RBQ0tfT1ZFUkZM T1dfSEFORExJTkcgMQp8ICNkZWZpbmUgVVNHIC8qKi8KfCAjZGVmaW5lIEdOVV9MSU5VWCAvKiov CnwgI2RlZmluZSBVU0FCTEVfRklPTlJFQUQgMQp8ICNkZWZpbmUgVVNBQkxFX1NJR0lPIDEKfCAj ZGVmaW5lIENPUFlSSUdIVCAiQ29weXJpZ2h0IChDKSAyMDE2IEZyZWUgU29mdHdhcmUgRm91bmRh dGlvbiwgSW5jLiIKfCAjZGVmaW5lIFRFUk1fSEVBREVSICJ4dGVybS5oIgp8ICNkZWZpbmUgRU1B Q1NfQ09ORklHVVJBVElPTiAieDg2XzY0LXVua25vd24tbGludXgtZ251Igp8ICNkZWZpbmUgRU1B Q1NfQ09ORklHX09QVElPTlMgIi0td2l0aC14LXRvb2xraXQ9bHVjaWQiCnwgI2RlZmluZSBIQVZF X1hfV0lORE9XUyAxCnwgI2RlZmluZSBVU0VfWF9UT09MS0lUIDEKfCAjZGVmaW5lIFVTRV9MVUNJ RCAxCnwgI2RlZmluZSBIQVZFX1gxMSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9BVFRSSUJVVEVf QUxJR05FRCAxCnwgI2RlZmluZSBHTlVfTUFMTE9DIDEKfCAjZGVmaW5lIFJFTF9BTExPQyAxCnwg I2RlZmluZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5l IEhBVkVfVU5TSUdORURfTE9OR19MT05HX0lOVCAxCnwgI2RlZmluZSBIQVZFX0M5OV9TVFJUT0xE IDEKfCAjZGVmaW5lIEhBVkVfRU5WSVJPTl9ERUNMIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GREFU QVNZTkMgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUk1PREUgMAp8ICNkZWZpbmUgTFNUQVRfRk9M TE9XU19TTEFTSEVEX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmlu ZSBIQVZFX0dFVE9QVF9MT05HX09OTFkgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVEVOViAxCnwg I2RlZmluZSByZXN0cmljdCBfX3Jlc3RyaWN0CnwgI2RlZmluZSBIQVZFX0xPTkdfTE9OR19JTlQg MQp8ICNkZWZpbmUgSEFWRV9ERUNMX01FTVJDSFIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0FMQVJN IDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUX1QgMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9UIDEKfCAj ZGVmaW5lIEhBVkVfU1RSVUNUX1RNX1RNX1pPTkUgMQp8ICNkZWZpbmUgSEFWRV9UTV9aT05FIDEK fCAjZGVmaW5lIEhBVkVfVE1fR01UT0ZGIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJUT0lNQVgg MQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUlRPVU1BWCAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdf VVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1VUSU1CVUYgMQp8ICNkZWZpbmUgR0VUR1JP VVBTX1QgZ2lkX3QKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5l IEhBVkVfU1lTX0FDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GSUxFIDEKfCAjZGVmaW5l IEhBVkVfQUNMX0dFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRklMRSAxCnwgI2RlZmlu ZSBIQVZFX0FDTF9TRVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJFRSAxCnwgI2RlZmluZSBI QVZFX0FDTF9GUk9NX01PREUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9URVhUIDEKfCAjZGVm aW5lIEhBVkVfQUNMX0RFTEVURV9ERUZfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9FWFRFTkRF RF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0xJQkFDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNM X0VOVFJJRVMgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRklSU1RfRU5UUlkgMQp8ICNkZWZpbmUgVVNF X0FDTCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBIQVZFX0JZVEVTV0FQX0gg MQp8ICNkZWZpbmUgSEFWRV9DTE9DS19HRVRUSU1FIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tfU0VU VElNRSAxCnwgI2RlZmluZSBHTlVMSUJfQ0xPU0VfU1RSRUFNIDEKfCAjZGVmaW5lIEhBVkVfRFVQ MiAxCnwgI2RlZmluZSBHTlVMSUJfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRE9Q RU5ESVIgMQp8ICNkZWZpbmUgR05VTElCX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xf X19GUEVORElORyAxCnwgI2RlZmluZSBHRVRUSU1FT0ZEQVlfVElNRVpPTkUgc3RydWN0IHRpbWV6 b25lCnwgI2RlZmluZSBIQVZFX01FTVJDSFIgMQp8ICNkZWZpbmUgR05VTElCX01LT1NURU1QIDEK fCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgCnwgI2luY2x1ZGUgPHNpZ25hbC5oPgp8IAp8IAp8 IGludAp8IG1haW4gKCkKfCB7CnwgaWYgKHNpemVvZiAoKHZvbGF0aWxlIHNpZ19hdG9taWNfdCkp KQp8IAkgICAgcmV0dXJuIDA7CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToyNzg2 OTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI3ODg1OiBjaGVja2luZyBmb3Igc2lnaGFuZGxlcl90 CmNvbmZpZ3VyZToyNzg4NTogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmln dXJlOjI3ODg1OiAkPyA9IDAKY29uZmlndXJlOjI3ODg1OiBnY2MgLWMgLWczIC1PMiAgICBjb25m dGVzdC5jID4mNQpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiAnbWFpbic6CmNvbmZ0ZXN0LmM6MzA5 OjI3OiBlcnJvcjogZXhwZWN0ZWQgZXhwcmVzc2lvbiBiZWZvcmUgJyknIHRva2VuCiBpZiAoc2l6 ZW9mICgoc2lnaGFuZGxlcl90KSkpCiAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KY29uZmln dXJlOjI3ODg1OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29u ZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2RlZmluZSBQ QUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyNS4xIgp8 ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAyNS4xIgp8ICNkZWZpbmUgUEFDS0FH RV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJM ICJodHRwOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgUEFDS0FHRSAi ZW1hY3MiCnwgI2RlZmluZSBWRVJTSU9OICIyNS4xIgp8ICNkZWZpbmUgTUFJTF9VU0VfUE9QIDEK fCAjZGVmaW5lIEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfVFpTRVQgMQp8ICNkZWZpbmUg SEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKfCAjZGVmaW5lIEhBVkVf RkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9GRE9QRU5E SVIgMQp8ICNkZWZpbmUgSEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMgMQp8ICNk ZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwgI2RlZmlu ZSBIQVZFX01LT1NURU1QIDEKfCAjZGVmaW5lIEhBVkVfUElQRTIgMQp8ICNkZWZpbmUgSEFWRV9Q U0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFWRV9TVFJUT0lN QVggMQp8ICNkZWZpbmUgSEFWRV9TVFJUT1VNQVggMQp8ICNkZWZpbmUgSEFWRV9TWU1MSU5LIDEK fCAjZGVmaW5lIEhBVkVfTE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9USU1FR00gMQp8ICNk ZWZpbmUgSEFWRV9GVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FU0FUIDEKfCAjZGVmaW5l IEhBVkVfRlVUSU1FTlMgMQp8ICNkZWZpbmUgSEFWRV9VVElNRU5TQVQgMQp8ICNkZWZpbmUgSEFW RV9MVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZF X1NFQ1VSRV9HRVRFTlYgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVf U1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9S WV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNf SCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8 ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8ICNkZWZp bmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBf X1VTRV9NSU5HV19BTlNJX1NURElPIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElD UyAxCnwgI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX1VTRV82NF9C SVRfSU5PREUgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAjZGVmaW5lIEhB VkVfU1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2RlZmluZSBIQVZF X1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1BU WV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf VVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1QX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAx CnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8 ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwgI2Rl ZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAxCnwgI2RlZmlu ZSBIQVZFX1NURElPX0VYVF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfSCAxCnwgI2RlZmluZSBIQVZF X1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9V VElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfTElOVVgzMiAxCnwgI2RlZmluZSBI QVZFX0xJTlVYX1NZU0lORk8gMQp8ICNkZWZpbmUgTElOVVhfU1lTSU5GT19VTklUIDEKfCAjZGVm aW5lIEhBVkVfVEVSTV9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfU1lTX1NJR0xJU1QgMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAj ZGVmaW5lIEhBVkVfTkVUX0lGX0ggMQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0ggMQp8ICNkZWZp bmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lG UkVRX0lGUl9IV0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX05FVE1BU0sg MQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAxCnwgI2RlZmluZSBI QVZFX1NUUlVDVF9JRlJFUV9JRlJfQUREUiAxCnwgI2RlZmluZSBIQVZFX0xPTkdfRklMRV9OQU1F UyAxCnwgI2RlZmluZSBIQVZFX1NZU19WTElNSVRfSCAxCnwgI2RlZmluZSBIQVZFX0RBVEFfU1RB UlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX01NQVAgMQp8 ICNkZWZpbmUgSEFWRV9QVEhSRUFEIDEKfCAjZGVmaW5lIEhBVkVfWEtCIDEKfCAjZGVmaW5lIEhB VkVfWFJNU0VUREFUQUJBU0UgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOUkVTT1VSQ0VTVFJJTkcg MQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOTlVNQkVST0ZTQ1JFRU4gMQp8ICNkZWZpbmUgSEFWRV9Y MTFSNiAxCnwgI2RlZmluZSBIQVZFX1hfSTE4TiAxCnwgI2RlZmluZSBIQVZFX1gxMVI2X1hJTSAx CnwgI2RlZmluZSBIQVZFX1JTVkcgMQp8ICNkZWZpbmUgSEFWRV9JTUFHRU1BR0lDSyAxCnwgI2Rl ZmluZSBIQVZFX01BR0lDS0VYUE9SVElNQUdFUElYRUxTIDEKfCAjZGVmaW5lIEhBVkVfTUFHSUNL TUVSR0VJTUFHRUxBWUVSUyAxCnwgI2RlZmluZSBIQVZFX0RCVVMgMQp8ICNkZWZpbmUgSEFWRV9E QlVTX1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19UWVBFX0lTX1ZBTElE IDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAxCnwgI2RlZmluZSBIQVZF X0RCVVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfSU5URVJG QUNFIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIgMQp8ICNkZWZpbmUgSEFW RV9HU0VUVElOR1MgMQp8ICNkZWZpbmUgSEFWRV9HQ09ORiAxCnwgI2RlZmluZSBIQVZFX0dOVVRM UyAxCnwgI2RlZmluZSBIQVZFX0dOVVRMUzMgMQp8ICNkZWZpbmUgSEFWRV9JTk9USUZZIDEKfCAj ZGVmaW5lIFVTRV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBIQVZFX1gxMVhUUjYgMQp8ICNkZWZp bmUgVVNFX1RPT0xLSVRfU0NST0xMX0JBUlMgMQp8ICNkZWZpbmUgSEFWRV9YSU0gMQp8ICNkZWZp bmUgVVNFX1hJTSAxCnwgI2RlZmluZSBYUmVnaXN0ZXJJTUluc3RhbnRpYXRlQ2FsbGJhY2tfYXJn NiBYUG9pbnRlcgp8ICNkZWZpbmUgSEFWRV9YRlQgMQp8ICNkZWZpbmUgSEFWRV9GUkVFVFlQRSAx CnwgI2RlZmluZSBIQVZFX0xJQk9URiAxCnwgI2RlZmluZSBIQVZFX09URl9HRVRfVkFSSUFUSU9O X0dMWVBIUyAxCnwgI2RlZmluZSBIQVZFX00xN05fRkxUIDEKfCAjZGVmaW5lIFVTRV9YQ0IgMQp8 ICNkZWZpbmUgSEFWRV9YUE0gMQp8ICNkZWZpbmUgSEFWRV9KUEVHIDEKfCAjZGVmaW5lIEhBVkVf WkxJQiAxCnwgI2RlZmluZSBIQVZFX1BORyAxCnwgI2RlZmluZSBIQVZFX1RJRkYgMQp8ICNkZWZp bmUgSEFWRV9HSUYgMQp8ICNkZWZpbmUgSEFWRV9HUE0gMQp8ICNkZWZpbmUgSEFWRV9YX1NNIDEK fCAjZGVmaW5lIEhBVkVfWFJBTkRSIDEKfCAjZGVmaW5lIEhBVkVfWElORVJBTUEgMQp8ICNkZWZp bmUgSEFWRV9YRklYRVMgMQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwyIDEKfCAjZGVmaW5lIEhBVkVf SF9FUlJOTyAxCnwgI2RlZmluZSBNQUlMX1VTRV9GTE9DSyAxCnwgI2RlZmluZSBIQVZFX0FDQ0VQ VDQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hESVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAx CnwgI2RlZmluZSBIQVZFX0dFVFJVU0FHRSAxCnwgI2RlZmluZSBIQVZFX0dFVF9DVVJSRU5UX0RJ Ul9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfTFJBTkQ0OCAxCnwgI2RlZmluZSBIQVZFX1JBTkRPTSAx CnwgI2RlZmluZSBIQVZFX1JJTlQgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZpbmUg SEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FMRSAxCnwgI2RlZmluZSBI QVZFX05FV0xPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZF X1NFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5lIEhBVkVfR0VU QUREUklORk8gMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFW RV9TVFJTSUdOQUwgMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9T RU5EVE8gMQp8ICNkZWZpbmUgSEFWRV9SRUNWRlJPTSAxCnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tO QU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEVFUk5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRJRkFE RFJTIDEKfCAjZGVmaW5lIEhBVkVfRlJFRUlGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9HQUlfU1RS RVJST1IgMQp8ICNkZWZpbmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFdFTlQgMQp8 ICNkZWZpbmUgSEFWRV9FTkRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0dFVEdSRU5UIDEKfCAjZGVm aW5lIEhBVkVfRU5ER1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9DRk1BS0VSQVcgMQp8ICNkZWZpbmUg SEFWRV9DRlNFVFNQRUVEIDEKfCAjZGVmaW5lIEhBVkVfQ09QWVNJR04gMQp8ICNkZWZpbmUgSEFW RV9fX0VYRUNVVEFCTEVfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9MT0cyIDEKfCAjZGVmaW5lIEhB VkVfQUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9VTldJTkRfSU5JVCAx CnwgI2RlZmluZSBIQVZFX0ZTRUVLTyAxCnwgI2RlZmluZSBIQVZFX0dSQU5UUFQgMQp8ICNkZWZp bmUgSEFWRV9HRVRQVCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX09QRU5QVCAxCnwgI2RlZmluZSBU RVJNSU5GTyAxCnwgI2RlZmluZSBIQVZFX1RJTUVSRkQgMQp8ICNkZWZpbmUgSEFWRV9SRVNfSU5J VCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9VTklQQUlSX1VOSUNPREUgMQp8ICNkZWZpbmUgSEFW RV9JTkVUX1NPQ0tFVFMgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfVkZP UksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lO R19GT1JLIDEKfCAjZGVmaW5lIEhBVkVfU05QUklOVEYgMQp8ICNkZWZpbmUgSEFWRV9HTElCIDEK fCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fQ09ERVNFVCAxCnwgI2RlZmluZSBIQVZFX01CU1RBVEVf VCAxCnwgI2RlZmluZSBBTVBFUlNBTkRfRlVMTF9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUFRZUyAx CnwgI2RlZmluZSBIQVZFX1NPQ0tFVFMgMQp8ICNkZWZpbmUgTlVMTF9ERVZJQ0UgIi9kZXYvbnVs bCIKfCAjZGVmaW5lIFNFUENIQVIgJzonCnwgI2RlZmluZSBzdWJwcm9jZXNzZXMgMQp8ICNkZWZp bmUgVVNFUl9GVUxMX05BTUUgcHctPnB3X2dlY29zCnwgI2RlZmluZSBESVJFQ1RPUllfU0VQICcv Jwp8ICNkZWZpbmUgSVNfREVWSUNFX1NFUChfY18pIDAKfCAjZGVmaW5lIElTX0RJUkVDVE9SWV9T RVAoX2NfKSAoKF9jXykgPT0gRElSRUNUT1JZX1NFUCkKfCAjZGVmaW5lIElTX0FOWV9TRVAoX2Nf KSAoSVNfRElSRUNUT1JZX1NFUCAoX2NfKSkKfCAjZGVmaW5lIEhBVkVfUFJPQ0ZTIDEKfCAjZGVm aW5lIERFRkFVTFRfU09VTkRfREVWSUNFICIvZGV2L2RzcCIKfCAjZGVmaW5lIElOVEVSUlVQVF9J TlBVVCAxCnwgI2RlZmluZSBOQVJST1dQUk9UTyAxCnwgI2RlZmluZSBVTklYOThfUFRZUyAxCnwg I2RlZmluZSBQVFlfSVRFUkFUSU9OIGludCBpOyBmb3IgKGkgPSAwOyBpIDwgMTsgaSsrKQp8ICNk ZWZpbmUgUFRZX1RUWV9OQU1FX1NQUklOVEYgeyBjaGFyICpwdHluYW1lID0gMDsgc2lnc2V0X3Qg YmxvY2tlZDsgc2lnZW1wdHlzZXQgKCZibG9ja2VkKTsgc2lnYWRkc2V0ICgmYmxvY2tlZCwgU0lH Q0hMRCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX0JMT0NLLCAmYmxvY2tlZCwgMCk7IGlmIChncmFu dHB0IChmZCkgIT0gLTEgJiYgdW5sb2NrcHQgKGZkKSAhPSAtMSkgcHR5bmFtZSA9IHB0c25hbWUo ZmQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19VTkJMT0NLLCAmYmxvY2tlZCwgMCk7IGlmICghcHR5 bmFtZSkgeyBlbWFjc19jbG9zZSAoZmQpOyByZXR1cm4gLTE7IH0gc25wcmludGYgKHB0eV9uYW1l LCBQVFlfTkFNRV9TSVpFLCAiJXMiLCBwdHluYW1lKTsgfQp8ICNkZWZpbmUgUFRZX09QRU4gZG8g eyBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19DTE9FWEVDIHwgT19OT0NUVFkpOyBpZiAo ZmQgPCAwICYmIGVycm5vID09IEVJTlZBTCkgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9f Tk9DVFRZKTsgfSB3aGlsZSAoZmFsc2UpCnwgI2RlZmluZSBQVFlfTkFNRV9TUFJJTlRGIC8qKi8K fCAjZGVmaW5lIFNJR05BTFNfVklBX0NIQVJBQ1RFUlMgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dP UktTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBIQVZFX19TRVRKTVAg MQp8ICNkZWZpbmUgSEFWRV9TSUdTRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TVEFDS19PVkVSRkxP V19IQU5ETElORyAxCnwgI2RlZmluZSBVU0cgLyoqLwp8ICNkZWZpbmUgR05VX0xJTlVYIC8qKi8K fCAjZGVmaW5lIFVTQUJMRV9GSU9OUkVBRCAxCnwgI2RlZmluZSBVU0FCTEVfU0lHSU8gMQp8ICNk ZWZpbmUgQ09QWVJJR0hUICJDb3B5cmlnaHQgKEMpIDIwMTYgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0 aW9uLCBJbmMuIgp8ICNkZWZpbmUgVEVSTV9IRUFERVIgInh0ZXJtLmgiCnwgI2RlZmluZSBFTUFD U19DT05GSUdVUkFUSU9OICJ4ODZfNjQtdW5rbm93bi1saW51eC1nbnUiCnwgI2RlZmluZSBFTUFD U19DT05GSUdfT1BUSU9OUyAiLS13aXRoLXgtdG9vbGtpdD1sdWNpZCIKfCAjZGVmaW5lIEhBVkVf WF9XSU5ET1dTIDEKfCAjZGVmaW5lIFVTRV9YX1RPT0xLSVQgMQp8ICNkZWZpbmUgVVNFX0xVQ0lE IDEKfCAjZGVmaW5lIEhBVkVfWDExIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0FUVFJJQlVURV9B TElHTkVEIDEKfCAjZGVmaW5lIEdOVV9NQUxMT0MgMQp8ICNkZWZpbmUgUkVMX0FMTE9DIDEKfCAj ZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUg SEFWRV9VTlNJR05FRF9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfQzk5X1NUUlRPTEQg MQp8ICNkZWZpbmUgSEFWRV9FTlZJUk9OX0RFQ0wgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZEQVRB U1lOQyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSTU9ERSAwCnwgI2RlZmluZSBMU1RBVF9GT0xM T1dTX1NMQVNIRURfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5l IEhBVkVfR0VUT1BUX0xPTkdfT05MWSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VURU5WIDEKfCAj ZGVmaW5lIHJlc3RyaWN0IF9fcmVzdHJpY3QKfCAjZGVmaW5lIEhBVkVfTE9OR19MT05HX0lOVCAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfTUVNUkNIUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfQUxBUk0g MQp8ICNkZWZpbmUgSEFWRV9TSUdTRVRfVCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX1QgMQp8ICNk ZWZpbmUgSEFWRV9TVFJVQ1RfVE1fVE1fWk9ORSAxCnwgI2RlZmluZSBIQVZFX1RNX1pPTkUgMQp8 ICNkZWZpbmUgSEFWRV9UTV9HTVRPRkYgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUlRPSU1BWCAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSVE9VTUFYIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19V VElNRVMgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVVRJTUJVRiAxCnwgI2RlZmluZSBHRVRHUk9V UFNfVCBnaWRfdAp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUg SEFWRV9TWVNfQUNMX0ggMQp8ICNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZJTEUgMQp8ICNkZWZpbmUg SEFWRV9BQ0xfR0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX1NFVF9GSUxFIDEKfCAjZGVmaW5l IEhBVkVfQUNMX1NFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUkVFIDEKfCAjZGVmaW5lIEhB VkVfQUNMX0ZST01fTU9ERSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX1RFWFQgMQp8ICNkZWZp bmUgSEFWRV9BQ0xfREVMRVRFX0RFRl9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VYVEVOREVE X0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfTElCQUNMX0ggMQp8ICNkZWZpbmUgSEFWRV9BQ0xf RU5UUklFUyAxCnwgI2RlZmluZSBIQVZFX0FDTF9GSVJTVF9FTlRSWSAxCnwgI2RlZmluZSBVU0Vf QUNMIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfQllURVNXQVBfSCAx CnwgI2RlZmluZSBIQVZFX0NMT0NLX0dFVFRJTUUgMQp8ICNkZWZpbmUgSEFWRV9DTE9DS19TRVRU SU1FIDEKfCAjZGVmaW5lIEdOVUxJQl9DTE9TRV9TVFJFQU0gMQp8ICNkZWZpbmUgSEFWRV9EVVAy IDEKfCAjZGVmaW5lIEdOVUxJQl9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZET1BF TkRJUiAxCnwgI2RlZmluZSBHTlVMSUJfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9f X0ZQRU5ESU5HIDEKfCAjZGVmaW5lIEdFVFRJTUVPRkRBWV9USU1FWk9ORSBzdHJ1Y3QgdGltZXpv bmUKfCAjZGVmaW5lIEhBVkVfTUVNUkNIUiAxCnwgI2RlZmluZSBHTlVMSUJfTUtPU1RFTVAgMQp8 IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAjaW5jbHVkZSA8c2lnbmFsLmg+CnwgCnwgCnwg aW50CnwgbWFpbiAoKQp8IHsKfCBpZiAoc2l6ZW9mICgoc2lnaGFuZGxlcl90KSkpCnwgCSAgICBy ZXR1cm4gMDsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjI3ODg1OiByZXN1bHQ6 IHllcwpjb25maWd1cmU6Mjc4OTg6IGNoZWNraW5nIGZvciBzb2NrbGVuX3QKY29uZmlndXJlOjI3 ODk4OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6Mjc4OTg6ICQ/ ID0gMApjb25maWd1cmU6Mjc4OTg6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNv bmZ0ZXN0LmM6IEluIGZ1bmN0aW9uICdtYWluJzoKY29uZnRlc3QuYzozMTc6MjQ6IGVycm9yOiBl eHBlY3RlZCBleHByZXNzaW9uIGJlZm9yZSAnKScgdG9rZW4KIGlmIChzaXplb2YgKChzb2NrbGVu X3QpKSkKICAgICAgICAgICAgICAgICAgICAgICAgXgpjb25maWd1cmU6Mjc4OTg6ICQ/ID0gMQpj b25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmlu ZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1h Y3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX1NU UklORyAiR05VIEVtYWNzIDI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdu dS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHA6Ly93d3cuZ251Lm9y Zy9zb2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmluZSBQQUNLQUdFICJlbWFjcyIKfCAjZGVmaW5lIFZF UlNJT04gIjI1LjEiCnwgI2RlZmluZSBNQUlMX1VTRV9QT1AgMQp8ICNkZWZpbmUgSEFWRV9QVVRF TlYgMQp8ICNkZWZpbmUgSEFWRV9UWlNFVCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2Rl ZmluZSBIQVZFX1JFQURMSU5LQVQgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZp bmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZF X0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVP RkRBWSAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfTUtPU1RFTVAgMQp8 ICNkZWZpbmUgSEFWRV9QSVBFMiAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUg SEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZF X1NUUlRPVU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9MT0NB TFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX1RJTUVHTSAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVMg MQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVTQVQgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVOUyAxCnwg I2RlZmluZSBIQVZFX1VUSU1FTlNBVCAxCnwgI2RlZmluZSBIQVZFX0xVVElNRVMgMQp8ICNkZWZp bmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VDVVJFX0dFVEVOViAxCnwg I2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmlu ZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFW RV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVf U1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lP TlNfXyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNF IDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9fVVNFX01JTkdXX0FOU0lfU1RE SU8gMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9UQU5E RU1fU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fVVNFXzY0X0JJVF9JTk9ERSAxCnwgI2RlZmlu ZSBTWVNURU1fVFlQRSAiZ251L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJEX0gg MQp8ICNkZWZpbmUgSEFWRV9BTFNBIDEKfCAjZGVmaW5lIEhBVkVfU09VTkQgMQp8ICNkZWZpbmUg SEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZp bmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19TT0NLRVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfVU5J U1REX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJF QURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0gg MQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fRVhUX0gg MQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8 ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZp bmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUg SEFWRV9QRVJTT05BTElUWV9MSU5VWDMyIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5GTyAx CnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUgSEFWRV9URVJNX0ggMQp8 ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TWVNfU0lH TElTVCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZf SCAxCnwgI2RlZmluZSBIQVZFX0lGQUREUlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJF UV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwg I2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NU UlVDVF9JRlJFUV9JRlJfQlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lG Ul9BRERSIDEKfCAjZGVmaW5lIEhBVkVfTE9OR19GSUxFX05BTUVTIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1ZMSU1JVF9IIDEKfCAjZGVmaW5lIEhBVkVfREFUQV9TVEFSVCAxCnwgI2RlZmluZSBIQVZF X0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2RlZmluZSBIQVZFX1BUSFJF QUQgMQp8ICNkZWZpbmUgSEFWRV9YS0IgMQp8ICNkZWZpbmUgSEFWRV9YUk1TRVREQVRBQkFTRSAx CnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNPVVJDRVNUUklORyAxCnwgI2RlZmluZSBIQVZFX1hT Q1JFRU5OVU1CRVJPRlNDUkVFTiAxCnwgI2RlZmluZSBIQVZFX1gxMVI2IDEKfCAjZGVmaW5lIEhB VkVfWF9JMThOIDEKfCAjZGVmaW5lIEhBVkVfWDExUjZfWElNIDEKfCAjZGVmaW5lIEhBVkVfUlNW RyAxCnwgI2RlZmluZSBIQVZFX0lNQUdFTUFHSUNLIDEKfCAjZGVmaW5lIEhBVkVfTUFHSUNLRVhQ T1JUSU1BR0VQSVhFTFMgMQp8ICNkZWZpbmUgSEFWRV9NQUdJQ0tNRVJHRUlNQUdFTEFZRVJTIDEK fCAjZGVmaW5lIEhBVkVfREJVUyAxCnwgI2RlZmluZSBIQVZFX0RCVVNfV0FUQ0hfR0VUX1VOSVhf RkQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1RZUEVfSVNfVkFMSUQgMQp8ICNkZWZpbmUgSEFWRV9E QlVTX1ZBTElEQVRFX0JVU19OQU1FIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9QQVRI IDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9JTlRFUkZBQ0UgMQp8ICNkZWZpbmUgSEFW RV9EQlVTX1ZBTElEQVRFX01FTUJFUiAxCnwgI2RlZmluZSBIQVZFX0dTRVRUSU5HUyAxCnwgI2Rl ZmluZSBIQVZFX0dDT05GIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhBVkVf R05VVExTMyAxCnwgI2RlZmluZSBIQVZFX0lOT1RJRlkgMQp8ICNkZWZpbmUgVVNFX0ZJTEVfTk9U SUZZIDEKfCAjZGVmaW5lIEhBVkVfWDExWFRSNiAxCnwgI2RlZmluZSBVU0VfVE9PTEtJVF9TQ1JP TExfQkFSUyAxCnwgI2RlZmluZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBVU0VfWElNIDEKfCAjZGVm aW5lIFhSZWdpc3RlcklNSW5zdGFudGlhdGVDYWxsYmFja19hcmc2IFhQb2ludGVyCnwgI2RlZmlu ZSBIQVZFX1hGVCAxCnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAjZGVmaW5lIEhBVkVfTElC T1RGIDEKfCAjZGVmaW5lIEhBVkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTIDEKfCAjZGVmaW5l IEhBVkVfTTE3Tl9GTFQgMQp8ICNkZWZpbmUgVVNFX1hDQiAxCnwgI2RlZmluZSBIQVZFX1hQTSAx CnwgI2RlZmluZSBIQVZFX0pQRUcgMQp8ICNkZWZpbmUgSEFWRV9aTElCIDEKfCAjZGVmaW5lIEhB VkVfUE5HIDEKfCAjZGVmaW5lIEhBVkVfVElGRiAxCnwgI2RlZmluZSBIQVZFX0dJRiAxCnwgI2Rl ZmluZSBIQVZFX0dQTSAxCnwgI2RlZmluZSBIQVZFX1hfU00gMQp8ICNkZWZpbmUgSEFWRV9YUkFO RFIgMQp8ICNkZWZpbmUgSEFWRV9YSU5FUkFNQSAxCnwgI2RlZmluZSBIQVZFX1hGSVhFUyAxCnwg I2RlZmluZSBIQVZFX0xJQlhNTDIgMQp8ICNkZWZpbmUgSEFWRV9IX0VSUk5PIDEKfCAjZGVmaW5l IE1BSUxfVVNFX0ZMT0NLIDEKfCAjZGVmaW5lIEhBVkVfQUNDRVBUNCAxCnwgI2RlZmluZSBIQVZF X0ZDSERJUiAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VU UlVTQUdFIDEKfCAjZGVmaW5lIEhBVkVfR0VUX0NVUlJFTlRfRElSX05BTUUgMQp8ICNkZWZpbmUg SEFWRV9MUkFORDQ4IDEKfCAjZGVmaW5lIEhBVkVfUkFORE9NIDEKfCAjZGVmaW5lIEhBVkVfUklO VCAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEK fCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfTkVXTE9DQUxFIDEKfCAj ZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVm aW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9HRVRBRERSSU5GTyAxCnwgI2RlZmlu ZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlNJR05BTCAxCnwgI2Rl ZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX1NFTkRUTyAxCnwgI2RlZmluZSBI QVZFX1JFQ1ZGUk9NIDEKfCAjZGVmaW5lIEhBVkVfR0VUU09DS05BTUUgMQp8ICNkZWZpbmUgSEFW RV9HRVRQRUVSTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVElGQUREUlMgMQp8ICNkZWZpbmUgSEFW RV9GUkVFSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0dBSV9TVFJFUlJPUiAxCnwgI2RlZmluZSBI QVZFX1NZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0VORFBX RU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRHUkVOVCAx CnwgI2RlZmluZSBIQVZFX0NGTUFLRVJBVyAxCnwgI2RlZmluZSBIQVZFX0NGU0VUU1BFRUQgMQp8 ICNkZWZpbmUgSEFWRV9DT1BZU0lHTiAxCnwgI2RlZmluZSBIQVZFX19fRVhFQ1VUQUJMRV9TVEFS VCAxCnwgI2RlZmluZSBIQVZFX0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9DIDEK fCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX1VOV0lORF9JTklUIDEKfCAjZGVmaW5lIEhBVkVfRlNF RUtPIDEKfCAjZGVmaW5lIEhBVkVfR1JBTlRQVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBUIDEKfCAj ZGVmaW5lIEhBVkVfUE9TSVhfT1BFTlBUIDEKfCAjZGVmaW5lIFRFUk1JTkZPIDEKfCAjZGVmaW5l IEhBVkVfVElNRVJGRCAxCnwgI2RlZmluZSBIQVZFX1JFU19JTklUIDEKfCAjZGVmaW5lIEhBVkVf U1RSVUNUX1VOSVBBSVJfVU5JQ09ERSAxCnwgI2RlZmluZSBIQVZFX0lORVRfU09DS0VUUyAxCnwg I2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9WRk9SSyAxCnwgI2RlZmluZSBIQVZF X1dPUktJTkdfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX0ZPUksgMQp8ICNkZWZpbmUg SEFWRV9TTlBSSU5URiAxCnwgI2RlZmluZSBIQVZFX0dMSUIgMQp8ICNkZWZpbmUgSEFWRV9MQU5H SU5GT19DT0RFU0VUIDEKfCAjZGVmaW5lIEhBVkVfTUJTVEFURV9UIDEKfCAjZGVmaW5lIEFNUEVS U0FORF9GVUxMX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9QVFlTIDEKfCAjZGVmaW5lIEhBVkVfU09D S0VUUyAxCnwgI2RlZmluZSBOVUxMX0RFVklDRSAiL2Rldi9udWxsIgp8ICNkZWZpbmUgU0VQQ0hB UiAnOicKfCAjZGVmaW5lIHN1YnByb2Nlc3NlcyAxCnwgI2RlZmluZSBVU0VSX0ZVTExfTkFNRSBw dy0+cHdfZ2Vjb3MKfCAjZGVmaW5lIERJUkVDVE9SWV9TRVAgJy8nCnwgI2RlZmluZSBJU19ERVZJ Q0VfU0VQKF9jXykgMAp8ICNkZWZpbmUgSVNfRElSRUNUT1JZX1NFUChfY18pICgoX2NfKSA9PSBE SVJFQ1RPUllfU0VQKQp8ICNkZWZpbmUgSVNfQU5ZX1NFUChfY18pIChJU19ESVJFQ1RPUllfU0VQ IChfY18pKQp8ICNkZWZpbmUgSEFWRV9QUk9DRlMgMQp8ICNkZWZpbmUgREVGQVVMVF9TT1VORF9E RVZJQ0UgIi9kZXYvZHNwIgp8ICNkZWZpbmUgSU5URVJSVVBUX0lOUFVUIDEKfCAjZGVmaW5lIE5B UlJPV1BST1RPIDEKfCAjZGVmaW5lIFVOSVg5OF9QVFlTIDEKfCAjZGVmaW5lIFBUWV9JVEVSQVRJ T04gaW50IGk7IGZvciAoaSA9IDA7IGkgPCAxOyBpKyspCnwgI2RlZmluZSBQVFlfVFRZX05BTUVf U1BSSU5URiB7IGNoYXIgKnB0eW5hbWUgPSAwOyBzaWdzZXRfdCBibG9ja2VkOyBzaWdlbXB0eXNl dCAoJmJsb2NrZWQpOyBzaWdhZGRzZXQgKCZibG9ja2VkLCBTSUdDSExEKTsgcHRocmVhZF9zaWdt YXNrIChTSUdfQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKGdyYW50cHQgKGZkKSAhPSAtMSAmJiB1 bmxvY2twdCAoZmQpICE9IC0xKSBwdHluYW1lID0gcHRzbmFtZShmZCk7IHB0aHJlYWRfc2lnbWFz ayAoU0lHX1VOQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKCFwdHluYW1lKSB7IGVtYWNzX2Nsb3Nl IChmZCk7IHJldHVybiAtMTsgfSBzbnByaW50ZiAocHR5X25hbWUsIFBUWV9OQU1FX1NJWkUsICIl cyIsIHB0eW5hbWUpOyB9CnwgI2RlZmluZSBQVFlfT1BFTiBkbyB7IGZkID0gcG9zaXhfb3BlbnB0 IChPX1JEV1IgfCBPX0NMT0VYRUMgfCBPX05PQ1RUWSk7IGlmIChmZCA8IDAgJiYgZXJybm8gPT0g RUlOVkFMKSBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19OT0NUVFkpOyB9IHdoaWxlIChm YWxzZSkKfCAjZGVmaW5lIFBUWV9OQU1FX1NQUklOVEYgLyoqLwp8ICNkZWZpbmUgU0lHTkFMU19W SUFfQ0hBUkFDVEVSUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgR0Nf U0VUSk1QX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfX1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NJ R1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NUQUNLX09WRVJGTE9XX0hBTkRMSU5HIDEKfCAjZGVm aW5lIFVTRyAvKiovCnwgI2RlZmluZSBHTlVfTElOVVggLyoqLwp8ICNkZWZpbmUgVVNBQkxFX0ZJ T05SRUFEIDEKfCAjZGVmaW5lIFVTQUJMRV9TSUdJTyAxCnwgI2RlZmluZSBDT1BZUklHSFQgIkNv cHlyaWdodCAoQykgMjAxNiBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4iCnwgI2RlZmlu ZSBURVJNX0hFQURFUiAieHRlcm0uaCIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR1VSQVRJT04gIng4 Nl82NC11bmtub3duLWxpbnV4LWdudSIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR19PUFRJT05TICIt LXdpdGgteC10b29sa2l0PWx1Y2lkIgp8ICNkZWZpbmUgSEFWRV9YX1dJTkRPV1MgMQp8ICNkZWZp bmUgVVNFX1hfVE9PTEtJVCAxCnwgI2RlZmluZSBVU0VfTFVDSUQgMQp8ICNkZWZpbmUgSEFWRV9Y MTEgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfQVRUUklCVVRFX0FMSUdORUQgMQp8ICNkZWZpbmUg R05VX01BTExPQyAxCnwgI2RlZmluZSBSRUxfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0Ff SCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBIQVZFX1VOU0lHTkVEX0xPTkdf TE9OR19JTlQgMQp8ICNkZWZpbmUgSEFWRV9DOTlfU1RSVE9MRCAxCnwgI2RlZmluZSBIQVZFX0VO VklST05fREVDTCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkRBVEFTWU5DIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9TVFJNT0RFIDAKfCAjZGVmaW5lIExTVEFUX0ZPTExPV1NfU0xBU0hFRF9TWU1MSU5L IDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfTE9OR19P TkxZIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRFTlYgMQp8ICNkZWZpbmUgcmVzdHJpY3QgX19y ZXN0cmljdAp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9NRU1SQ0hSIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTEFSTSAxCnwgI2RlZmluZSBIQVZFX1NJ R1NFVF9UIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfVCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9U TV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fWk9ORSAxCnwgI2RlZmluZSBIQVZFX1RNX0dN VE9GRiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9TVFJUT1VNQVggMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1VUSU1FUyAxCnwgI2RlZmluZSBI QVZFX1NUUlVDVF9VVElNQlVGIDEKfCAjZGVmaW5lIEdFVEdST1VQU19UIGdpZF90CnwgI2RlZmlu ZSBIQVZFX0RFQ0xfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NZU19BQ0xfSCAxCnwg I2RlZmluZSBIQVZFX0FDTF9HRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRkQgMQp8 ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZEIDEK fCAjZGVmaW5lIEhBVkVfQUNMX0ZSRUUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9NT0RFIDEK fCAjZGVmaW5lIEhBVkVfQUNMX0ZST01fVEVYVCAxCnwgI2RlZmluZSBIQVZFX0FDTF9ERUxFVEVf REVGX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRVhURU5ERURfRklMRSAxCnwgI2RlZmluZSBI QVZFX0FDTF9MSUJBQ0xfSCAxCnwgI2RlZmluZSBIQVZFX0FDTF9FTlRSSUVTIDEKfCAjZGVmaW5l IEhBVkVfQUNMX0ZJUlNUX0VOVFJZIDEKfCAjZGVmaW5lIFVTRV9BQ0wgMQp8ICNkZWZpbmUgSEFW RV9BTExPQ0EgMQp8ICNkZWZpbmUgSEFWRV9CWVRFU1dBUF9IIDEKfCAjZGVmaW5lIEhBVkVfQ0xP Q0tfR0VUVElNRSAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX1NFVFRJTUUgMQp8ICNkZWZpbmUgR05V TElCX0NMT1NFX1NUUkVBTSAxCnwgI2RlZmluZSBIQVZFX0RVUDIgMQp8ICNkZWZpbmUgR05VTElC X0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkRPUEVORElSIDEKfCAjZGVmaW5lIEdO VUxJQl9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX19fRlBFTkRJTkcgMQp8ICNkZWZp bmUgR0VUVElNRU9GREFZX1RJTUVaT05FIHN0cnVjdCB0aW1lem9uZQp8ICNkZWZpbmUgSEFWRV9N RU1SQ0hSIDEKfCAjZGVmaW5lIEdOVUxJQl9NS09TVEVNUCAxCnwgLyogZW5kIGNvbmZkZWZzLmgu ICAqLwp8IAp8IC8qIDxzeXMvdHlwZXMuaD4gaXMgbm90IG5lZWRlZCBhY2NvcmRpbmcgdG8gUE9T SVgsIGJ1dCB0aGUKfCAgICA8c3lzL3NvY2tldC5oPiBpbiBpMzg2LXVua25vd24tZnJlZWJzZDQu MTAgYW5kCnwgICAgcG93ZXJwYy1hcHBsZS1kYXJ3aW41LjUgcmVxdWlyZWQgaXQuICovCnwgI2lu Y2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNpZiBIQVZFX1NZU19TT0NLRVRfSAp8ICMgaW5jbHVkZSA8 c3lzL3NvY2tldC5oPgp8ICNlbGlmIEhBVkVfV1MyVENQSVBfSAp8ICMgaW5jbHVkZSA8d3MydGNw aXAuaD4KfCAjZW5kaWYKfCAKfCAKfCBpbnQKfCBtYWluICgpCnwgewp8IGlmIChzaXplb2YgKChz b2NrbGVuX3QpKSkKfCAJICAgIHJldHVybiAwOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25m aWd1cmU6Mjc4OTg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNzk2MjogY2hlY2tpbmcgZm9yIHNz aXplX3QKY29uZmlndXJlOjI3OTc5OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpj b25maWd1cmU6Mjc5Nzk6ICQ/ID0gMApjb25maWd1cmU6Mjc5ODY6IHJlc3VsdDogeWVzCmNvbmZp Z3VyZToyNzk5ODogY2hlY2tpbmcgZm9yIHN0cnVjdCBzdGF0LnN0X2F0aW0udHZfbnNlYwpjb25m aWd1cmU6Mjc5OTg6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToy Nzk5ODogJD8gPSAwCmNvbmZpZ3VyZToyNzk5ODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI4MDA3 OiBjaGVja2luZyB3aGV0aGVyIHN0cnVjdCBzdGF0LnN0X2F0aW0gaXMgb2YgdHlwZSBzdHJ1Y3Qg dGltZXNwZWMKY29uZmlndXJlOjI4MDM0OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4m NQpjb25maWd1cmU6MjgwMzQ6ICQ/ID0gMApjb25maWd1cmU6MjgwNDE6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZToyODA5MzogY2hlY2tpbmcgZm9yIHN0cnVjdCBzdGF0LnN0X2JpcnRodGltZXNwZWMu dHZfbnNlYwpjb25maWd1cmU6MjgwOTM6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1 CmNvbmZ0ZXN0LmM6IEluIGZ1bmN0aW9uICdtYWluJzoKY29uZnRlc3QuYzozMTE6MTI6IGVycm9y OiAnc3RydWN0IHN0YXQnIGhhcyBubyBtZW1iZXIgbmFtZWQgJ3N0X2JpcnRodGltZXNwZWMnCiBp ZiAoYWNfYWdnci5zdF9iaXJ0aHRpbWVzcGVjLnR2X25zZWMpCiAgICAgICAgICAgIF4KY29uZmln dXJlOjI4MDkzOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29u ZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2RlZmluZSBQ QUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyNS4xIgp8 ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAyNS4xIgp8ICNkZWZpbmUgUEFDS0FH RV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJM ICJodHRwOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgUEFDS0FHRSAi ZW1hY3MiCnwgI2RlZmluZSBWRVJTSU9OICIyNS4xIgp8ICNkZWZpbmUgTUFJTF9VU0VfUE9QIDEK fCAjZGVmaW5lIEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfVFpTRVQgMQp8ICNkZWZpbmUg SEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKfCAjZGVmaW5lIEhBVkVf RkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9GRE9QRU5E SVIgMQp8ICNkZWZpbmUgSEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMgMQp8ICNk ZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwgI2RlZmlu ZSBIQVZFX01LT1NURU1QIDEKfCAjZGVmaW5lIEhBVkVfUElQRTIgMQp8ICNkZWZpbmUgSEFWRV9Q U0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFWRV9TVFJUT0lN QVggMQp8ICNkZWZpbmUgSEFWRV9TVFJUT1VNQVggMQp8ICNkZWZpbmUgSEFWRV9TWU1MSU5LIDEK fCAjZGVmaW5lIEhBVkVfTE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9USU1FR00gMQp8ICNk ZWZpbmUgSEFWRV9GVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FU0FUIDEKfCAjZGVmaW5l IEhBVkVfRlVUSU1FTlMgMQp8ICNkZWZpbmUgSEFWRV9VVElNRU5TQVQgMQp8ICNkZWZpbmUgSEFW RV9MVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZF X1NFQ1VSRV9HRVRFTlYgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVf U1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9S WV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNf SCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8 ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8ICNkZWZp bmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBf X1VTRV9NSU5HV19BTlNJX1NURElPIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElD UyAxCnwgI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX1VTRV82NF9C SVRfSU5PREUgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAjZGVmaW5lIEhB VkVfU1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2RlZmluZSBIQVZF X1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1BU WV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf VVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1QX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAx CnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8 ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwgI2Rl ZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAxCnwgI2RlZmlu ZSBIQVZFX1NURElPX0VYVF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfSCAxCnwgI2RlZmluZSBIQVZF X1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9V VElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfTElOVVgzMiAxCnwgI2RlZmluZSBI QVZFX0xJTlVYX1NZU0lORk8gMQp8ICNkZWZpbmUgTElOVVhfU1lTSU5GT19VTklUIDEKfCAjZGVm aW5lIEhBVkVfVEVSTV9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfU1lTX1NJR0xJU1QgMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAj ZGVmaW5lIEhBVkVfTkVUX0lGX0ggMQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0ggMQp8ICNkZWZp bmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lG UkVRX0lGUl9IV0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX05FVE1BU0sg MQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAxCnwgI2RlZmluZSBI QVZFX1NUUlVDVF9JRlJFUV9JRlJfQUREUiAxCnwgI2RlZmluZSBIQVZFX0xPTkdfRklMRV9OQU1F UyAxCnwgI2RlZmluZSBIQVZFX1NZU19WTElNSVRfSCAxCnwgI2RlZmluZSBIQVZFX0RBVEFfU1RB UlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX01NQVAgMQp8 ICNkZWZpbmUgSEFWRV9QVEhSRUFEIDEKfCAjZGVmaW5lIEhBVkVfWEtCIDEKfCAjZGVmaW5lIEhB VkVfWFJNU0VUREFUQUJBU0UgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOUkVTT1VSQ0VTVFJJTkcg MQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOTlVNQkVST0ZTQ1JFRU4gMQp8ICNkZWZpbmUgSEFWRV9Y MTFSNiAxCnwgI2RlZmluZSBIQVZFX1hfSTE4TiAxCnwgI2RlZmluZSBIQVZFX1gxMVI2X1hJTSAx CnwgI2RlZmluZSBIQVZFX1JTVkcgMQp8ICNkZWZpbmUgSEFWRV9JTUFHRU1BR0lDSyAxCnwgI2Rl ZmluZSBIQVZFX01BR0lDS0VYUE9SVElNQUdFUElYRUxTIDEKfCAjZGVmaW5lIEhBVkVfTUFHSUNL TUVSR0VJTUFHRUxBWUVSUyAxCnwgI2RlZmluZSBIQVZFX0RCVVMgMQp8ICNkZWZpbmUgSEFWRV9E QlVTX1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19UWVBFX0lTX1ZBTElE IDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAxCnwgI2RlZmluZSBIQVZF X0RCVVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfSU5URVJG QUNFIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIgMQp8ICNkZWZpbmUgSEFW RV9HU0VUVElOR1MgMQp8ICNkZWZpbmUgSEFWRV9HQ09ORiAxCnwgI2RlZmluZSBIQVZFX0dOVVRM UyAxCnwgI2RlZmluZSBIQVZFX0dOVVRMUzMgMQp8ICNkZWZpbmUgSEFWRV9JTk9USUZZIDEKfCAj ZGVmaW5lIFVTRV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBIQVZFX1gxMVhUUjYgMQp8ICNkZWZp bmUgVVNFX1RPT0xLSVRfU0NST0xMX0JBUlMgMQp8ICNkZWZpbmUgSEFWRV9YSU0gMQp8ICNkZWZp bmUgVVNFX1hJTSAxCnwgI2RlZmluZSBYUmVnaXN0ZXJJTUluc3RhbnRpYXRlQ2FsbGJhY2tfYXJn NiBYUG9pbnRlcgp8ICNkZWZpbmUgSEFWRV9YRlQgMQp8ICNkZWZpbmUgSEFWRV9GUkVFVFlQRSAx CnwgI2RlZmluZSBIQVZFX0xJQk9URiAxCnwgI2RlZmluZSBIQVZFX09URl9HRVRfVkFSSUFUSU9O X0dMWVBIUyAxCnwgI2RlZmluZSBIQVZFX00xN05fRkxUIDEKfCAjZGVmaW5lIFVTRV9YQ0IgMQp8 ICNkZWZpbmUgSEFWRV9YUE0gMQp8ICNkZWZpbmUgSEFWRV9KUEVHIDEKfCAjZGVmaW5lIEhBVkVf WkxJQiAxCnwgI2RlZmluZSBIQVZFX1BORyAxCnwgI2RlZmluZSBIQVZFX1RJRkYgMQp8ICNkZWZp bmUgSEFWRV9HSUYgMQp8ICNkZWZpbmUgSEFWRV9HUE0gMQp8ICNkZWZpbmUgSEFWRV9YX1NNIDEK fCAjZGVmaW5lIEhBVkVfWFJBTkRSIDEKfCAjZGVmaW5lIEhBVkVfWElORVJBTUEgMQp8ICNkZWZp bmUgSEFWRV9YRklYRVMgMQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwyIDEKfCAjZGVmaW5lIEhBVkVf SF9FUlJOTyAxCnwgI2RlZmluZSBNQUlMX1VTRV9GTE9DSyAxCnwgI2RlZmluZSBIQVZFX0FDQ0VQ VDQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hESVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAx CnwgI2RlZmluZSBIQVZFX0dFVFJVU0FHRSAxCnwgI2RlZmluZSBIQVZFX0dFVF9DVVJSRU5UX0RJ Ul9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfTFJBTkQ0OCAxCnwgI2RlZmluZSBIQVZFX1JBTkRPTSAx CnwgI2RlZmluZSBIQVZFX1JJTlQgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZpbmUg SEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FMRSAxCnwgI2RlZmluZSBI QVZFX05FV0xPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZF X1NFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5lIEhBVkVfR0VU QUREUklORk8gMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFW RV9TVFJTSUdOQUwgMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9T RU5EVE8gMQp8ICNkZWZpbmUgSEFWRV9SRUNWRlJPTSAxCnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tO QU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEVFUk5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRJRkFE RFJTIDEKfCAjZGVmaW5lIEhBVkVfRlJFRUlGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9HQUlfU1RS RVJST1IgMQp8ICNkZWZpbmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFdFTlQgMQp8 ICNkZWZpbmUgSEFWRV9FTkRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0dFVEdSRU5UIDEKfCAjZGVm aW5lIEhBVkVfRU5ER1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9DRk1BS0VSQVcgMQp8ICNkZWZpbmUg SEFWRV9DRlNFVFNQRUVEIDEKfCAjZGVmaW5lIEhBVkVfQ09QWVNJR04gMQp8ICNkZWZpbmUgSEFW RV9fX0VYRUNVVEFCTEVfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9MT0cyIDEKfCAjZGVmaW5lIEhB VkVfQUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9VTldJTkRfSU5JVCAx CnwgI2RlZmluZSBIQVZFX0ZTRUVLTyAxCnwgI2RlZmluZSBIQVZFX0dSQU5UUFQgMQp8ICNkZWZp bmUgSEFWRV9HRVRQVCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX09QRU5QVCAxCnwgI2RlZmluZSBU RVJNSU5GTyAxCnwgI2RlZmluZSBIQVZFX1RJTUVSRkQgMQp8ICNkZWZpbmUgSEFWRV9SRVNfSU5J VCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9VTklQQUlSX1VOSUNPREUgMQp8ICNkZWZpbmUgSEFW RV9JTkVUX1NPQ0tFVFMgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfVkZP UksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lO R19GT1JLIDEKfCAjZGVmaW5lIEhBVkVfU05QUklOVEYgMQp8ICNkZWZpbmUgSEFWRV9HTElCIDEK fCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fQ09ERVNFVCAxCnwgI2RlZmluZSBIQVZFX01CU1RBVEVf VCAxCnwgI2RlZmluZSBBTVBFUlNBTkRfRlVMTF9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUFRZUyAx CnwgI2RlZmluZSBIQVZFX1NPQ0tFVFMgMQp8ICNkZWZpbmUgTlVMTF9ERVZJQ0UgIi9kZXYvbnVs bCIKfCAjZGVmaW5lIFNFUENIQVIgJzonCnwgI2RlZmluZSBzdWJwcm9jZXNzZXMgMQp8ICNkZWZp bmUgVVNFUl9GVUxMX05BTUUgcHctPnB3X2dlY29zCnwgI2RlZmluZSBESVJFQ1RPUllfU0VQICcv Jwp8ICNkZWZpbmUgSVNfREVWSUNFX1NFUChfY18pIDAKfCAjZGVmaW5lIElTX0RJUkVDVE9SWV9T RVAoX2NfKSAoKF9jXykgPT0gRElSRUNUT1JZX1NFUCkKfCAjZGVmaW5lIElTX0FOWV9TRVAoX2Nf KSAoSVNfRElSRUNUT1JZX1NFUCAoX2NfKSkKfCAjZGVmaW5lIEhBVkVfUFJPQ0ZTIDEKfCAjZGVm aW5lIERFRkFVTFRfU09VTkRfREVWSUNFICIvZGV2L2RzcCIKfCAjZGVmaW5lIElOVEVSUlVQVF9J TlBVVCAxCnwgI2RlZmluZSBOQVJST1dQUk9UTyAxCnwgI2RlZmluZSBVTklYOThfUFRZUyAxCnwg I2RlZmluZSBQVFlfSVRFUkFUSU9OIGludCBpOyBmb3IgKGkgPSAwOyBpIDwgMTsgaSsrKQp8ICNk ZWZpbmUgUFRZX1RUWV9OQU1FX1NQUklOVEYgeyBjaGFyICpwdHluYW1lID0gMDsgc2lnc2V0X3Qg YmxvY2tlZDsgc2lnZW1wdHlzZXQgKCZibG9ja2VkKTsgc2lnYWRkc2V0ICgmYmxvY2tlZCwgU0lH Q0hMRCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX0JMT0NLLCAmYmxvY2tlZCwgMCk7IGlmIChncmFu dHB0IChmZCkgIT0gLTEgJiYgdW5sb2NrcHQgKGZkKSAhPSAtMSkgcHR5bmFtZSA9IHB0c25hbWUo ZmQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19VTkJMT0NLLCAmYmxvY2tlZCwgMCk7IGlmICghcHR5 bmFtZSkgeyBlbWFjc19jbG9zZSAoZmQpOyByZXR1cm4gLTE7IH0gc25wcmludGYgKHB0eV9uYW1l LCBQVFlfTkFNRV9TSVpFLCAiJXMiLCBwdHluYW1lKTsgfQp8ICNkZWZpbmUgUFRZX09QRU4gZG8g eyBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19DTE9FWEVDIHwgT19OT0NUVFkpOyBpZiAo ZmQgPCAwICYmIGVycm5vID09IEVJTlZBTCkgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9f Tk9DVFRZKTsgfSB3aGlsZSAoZmFsc2UpCnwgI2RlZmluZSBQVFlfTkFNRV9TUFJJTlRGIC8qKi8K fCAjZGVmaW5lIFNJR05BTFNfVklBX0NIQVJBQ1RFUlMgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dP UktTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBIQVZFX19TRVRKTVAg MQp8ICNkZWZpbmUgSEFWRV9TSUdTRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TVEFDS19PVkVSRkxP V19IQU5ETElORyAxCnwgI2RlZmluZSBVU0cgLyoqLwp8ICNkZWZpbmUgR05VX0xJTlVYIC8qKi8K fCAjZGVmaW5lIFVTQUJMRV9GSU9OUkVBRCAxCnwgI2RlZmluZSBVU0FCTEVfU0lHSU8gMQp8ICNk ZWZpbmUgQ09QWVJJR0hUICJDb3B5cmlnaHQgKEMpIDIwMTYgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0 aW9uLCBJbmMuIgp8ICNkZWZpbmUgVEVSTV9IRUFERVIgInh0ZXJtLmgiCnwgI2RlZmluZSBFTUFD U19DT05GSUdVUkFUSU9OICJ4ODZfNjQtdW5rbm93bi1saW51eC1nbnUiCnwgI2RlZmluZSBFTUFD U19DT05GSUdfT1BUSU9OUyAiLS13aXRoLXgtdG9vbGtpdD1sdWNpZCIKfCAjZGVmaW5lIEhBVkVf WF9XSU5ET1dTIDEKfCAjZGVmaW5lIFVTRV9YX1RPT0xLSVQgMQp8ICNkZWZpbmUgVVNFX0xVQ0lE IDEKfCAjZGVmaW5lIEhBVkVfWDExIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0FUVFJJQlVURV9B TElHTkVEIDEKfCAjZGVmaW5lIEdOVV9NQUxMT0MgMQp8ICNkZWZpbmUgUkVMX0FMTE9DIDEKfCAj ZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUg SEFWRV9VTlNJR05FRF9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfQzk5X1NUUlRPTEQg MQp8ICNkZWZpbmUgSEFWRV9FTlZJUk9OX0RFQ0wgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZEQVRB U1lOQyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSTU9ERSAwCnwgI2RlZmluZSBMU1RBVF9GT0xM T1dTX1NMQVNIRURfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5l IEhBVkVfR0VUT1BUX0xPTkdfT05MWSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VURU5WIDEKfCAj ZGVmaW5lIHJlc3RyaWN0IF9fcmVzdHJpY3QKfCAjZGVmaW5lIEhBVkVfTE9OR19MT05HX0lOVCAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfTUVNUkNIUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfQUxBUk0g MQp8ICNkZWZpbmUgSEFWRV9TSUdTRVRfVCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX1QgMQp8ICNk ZWZpbmUgSEFWRV9TVFJVQ1RfVE1fVE1fWk9ORSAxCnwgI2RlZmluZSBIQVZFX1RNX1pPTkUgMQp8 ICNkZWZpbmUgSEFWRV9UTV9HTVRPRkYgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUlRPSU1BWCAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSVE9VTUFYIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19V VElNRVMgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVVRJTUJVRiAxCnwgI2RlZmluZSBHRVRHUk9V UFNfVCBnaWRfdAp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUg SEFWRV9TWVNfQUNMX0ggMQp8ICNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZJTEUgMQp8ICNkZWZpbmUg SEFWRV9BQ0xfR0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX1NFVF9GSUxFIDEKfCAjZGVmaW5l IEhBVkVfQUNMX1NFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUkVFIDEKfCAjZGVmaW5lIEhB VkVfQUNMX0ZST01fTU9ERSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX1RFWFQgMQp8ICNkZWZp bmUgSEFWRV9BQ0xfREVMRVRFX0RFRl9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VYVEVOREVE X0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfTElCQUNMX0ggMQp8ICNkZWZpbmUgSEFWRV9BQ0xf RU5UUklFUyAxCnwgI2RlZmluZSBIQVZFX0FDTF9GSVJTVF9FTlRSWSAxCnwgI2RlZmluZSBVU0Vf QUNMIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfQllURVNXQVBfSCAx CnwgI2RlZmluZSBIQVZFX0NMT0NLX0dFVFRJTUUgMQp8ICNkZWZpbmUgSEFWRV9DTE9DS19TRVRU SU1FIDEKfCAjZGVmaW5lIEdOVUxJQl9DTE9TRV9TVFJFQU0gMQp8ICNkZWZpbmUgSEFWRV9EVVAy IDEKfCAjZGVmaW5lIEdOVUxJQl9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZET1BF TkRJUiAxCnwgI2RlZmluZSBHTlVMSUJfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9f X0ZQRU5ESU5HIDEKfCAjZGVmaW5lIEdFVFRJTUVPRkRBWV9USU1FWk9ORSBzdHJ1Y3QgdGltZXpv bmUKfCAjZGVmaW5lIEhBVkVfTUVNUkNIUiAxCnwgI2RlZmluZSBHTlVMSUJfTUtPU1RFTVAgMQp8 ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9BVElNX1RWX05TRUMgMQp8ICNkZWZpbmUgVFlQ RU9GX1NUUlVDVF9TVEFUX1NUX0FUSU1fSVNfU1RSVUNUX1RJTUVTUEVDIDEKfCAvKiBlbmQgY29u ZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICAgICAgI2luY2x1ZGUgPHN5 cy9zdGF0Lmg+CnwgCnwgaW50CnwgbWFpbiAoKQp8IHsKfCBzdGF0aWMgc3RydWN0IHN0YXQgYWNf YWdncjsKfCBpZiAoYWNfYWdnci5zdF9iaXJ0aHRpbWVzcGVjLnR2X25zZWMpCnwgcmV0dXJuIDA7 CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToyODA5MzogZ2NjIC1jIC1nMyAtTzIg ICAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzogSW4gZnVuY3Rpb24gJ21haW4nOgpjb25mdGVz dC5jOjMxMToxOTogZXJyb3I6ICdzdHJ1Y3Qgc3RhdCcgaGFzIG5vIG1lbWJlciBuYW1lZCAnc3Rf YmlydGh0aW1lc3BlYycKIGlmIChzaXplb2YgYWNfYWdnci5zdF9iaXJ0aHRpbWVzcGVjLnR2X25z ZWMpCiAgICAgICAgICAgICAgICAgICBeCmNvbmZpZ3VyZToyODA5MzogJD8gPSAxCmNvbmZpZ3Vy ZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tB R0VfTkFNRSAiR05VIEVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJlbWFjcyIKfCAj ZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMjUuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJH TlUgRW1hY3MgMjUuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ251LWVtYWNz QGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0cDovL3d3dy5nbnUub3JnL3NvZnR3 YXJlL2VtYWNzLyIKfCAjZGVmaW5lIFBBQ0tBR0UgImVtYWNzIgp8ICNkZWZpbmUgVkVSU0lPTiAi MjUuMSIKfCAjZGVmaW5lIE1BSUxfVVNFX1BPUCAxCnwgI2RlZmluZSBIQVZFX1BVVEVOViAxCnwg I2RlZmluZSBIQVZFX1RaU0VUIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhB VkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZF X0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVfRlNUQVRB VCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEK fCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9NS09TVEVNUCAxCnwgI2RlZmlu ZSBIQVZFX1BJUEUyIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1JF QURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9V TUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FMVElNRV9S IDEKfCAjZGVmaW5lIEhBVkVfVElNRUdNIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FUyAxCnwgI2Rl ZmluZSBIQVZFX0ZVVElNRVNBVCAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRU5TIDEKfCAjZGVmaW5l IEhBVkVfVVRJTUVOU0FUIDEKfCAjZGVmaW5lIEhBVkVfTFVUSU1FUyAxCnwgI2RlZmluZSBIQVZF X0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRUNVUkVfR0VURU5WIDEKfCAjZGVmaW5l IFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVf U1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklO R1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRf SCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEK fCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQp8ICNk ZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19VU0VfTUlOR1dfQU5TSV9TVERJTyAxCnwg I2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX1RBTkRFTV9TT1VS Q0UgMQp8ICNkZWZpbmUgX0RBUldJTl9VU0VfNjRfQklUX0lOT0RFIDEKfCAjZGVmaW5lIFNZU1RF TV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAxCnwgI2Rl ZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwgI2RlZmluZSBIQVZFX1NZ U19TWVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9QVFlfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19S RVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZF X1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tF VF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAx CnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2Rl ZmluZSBIQVZFX0VYRUNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJT19FWFRfSCAxCnwgI2Rl ZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmlu ZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZF X0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BF UlNPTkFMSVRZX0xJTlVYMzIgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEKfCAjZGVm aW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAxCnwgI2RlZmlu ZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NZU19TSUdMSVNUIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX05FVF9JRl9IIDEKfCAj ZGVmaW5lIEhBVkVfSUZBRERSU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9G TEFHUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfSFdBRERSIDEKfCAjZGVmaW5l IEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9ORVRNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lG UkVRX0lGUl9CUk9BREFERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0FERFIg MQp8ICNkZWZpbmUgSEFWRV9MT05HX0ZJTEVfTkFNRVMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVkxJ TUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9EQVRBX1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFH RVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9NTUFQIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRCAxCnwg I2RlZmluZSBIQVZFX1hLQiAxCnwgI2RlZmluZSBIQVZFX1hSTVNFVERBVEFCQVNFIDEKfCAjZGVm aW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RSSU5HIDEKfCAjZGVmaW5lIEhBVkVfWFNDUkVFTk5V TUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhBVkVfWDExUjYgMQp8ICNkZWZpbmUgSEFWRV9YX0kx OE4gMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9YSU0gMQp8ICNkZWZpbmUgSEFWRV9SU1ZHIDEKfCAj ZGVmaW5lIEhBVkVfSU1BR0VNQUdJQ0sgMQp8ICNkZWZpbmUgSEFWRV9NQUdJQ0tFWFBPUlRJTUFH RVBJWEVMUyAxCnwgI2RlZmluZSBIQVZFX01BR0lDS01FUkdFSU1BR0VMQVlFUlMgMQp8ICNkZWZp bmUgSEFWRV9EQlVTIDEKfCAjZGVmaW5lIEhBVkVfREJVU19XQVRDSF9HRVRfVU5JWF9GRCAxCnwg I2RlZmluZSBIQVZFX0RCVVNfVFlQRV9JU19WQUxJRCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFM SURBVEVfQlVTX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX1BBVEggMQp8ICNk ZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0lOVEVSRkFDRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNf VkFMSURBVEVfTUVNQkVSIDEKfCAjZGVmaW5lIEhBVkVfR1NFVFRJTkdTIDEKfCAjZGVmaW5lIEhB VkVfR0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9HTlVUTFMgMQp8ICNkZWZpbmUgSEFWRV9HTlVUTFMz IDEKfCAjZGVmaW5lIEhBVkVfSU5PVElGWSAxCnwgI2RlZmluZSBVU0VfRklMRV9OT1RJRlkgMQp8 ICNkZWZpbmUgSEFWRV9YMTFYVFI2IDEKfCAjZGVmaW5lIFVTRV9UT09MS0lUX1NDUk9MTF9CQVJT IDEKfCAjZGVmaW5lIEhBVkVfWElNIDEKfCAjZGVmaW5lIFVTRV9YSU0gMQp8ICNkZWZpbmUgWFJl Z2lzdGVySU1JbnN0YW50aWF0ZUNhbGxiYWNrX2FyZzYgWFBvaW50ZXIKfCAjZGVmaW5lIEhBVkVf WEZUIDEKfCAjZGVmaW5lIEhBVkVfRlJFRVRZUEUgMQp8ICNkZWZpbmUgSEFWRV9MSUJPVEYgMQp8 ICNkZWZpbmUgSEFWRV9PVEZfR0VUX1ZBUklBVElPTl9HTFlQSFMgMQp8ICNkZWZpbmUgSEFWRV9N MTdOX0ZMVCAxCnwgI2RlZmluZSBVU0VfWENCIDEKfCAjZGVmaW5lIEhBVkVfWFBNIDEKfCAjZGVm aW5lIEhBVkVfSlBFRyAxCnwgI2RlZmluZSBIQVZFX1pMSUIgMQp8ICNkZWZpbmUgSEFWRV9QTkcg MQp8ICNkZWZpbmUgSEFWRV9USUZGIDEKfCAjZGVmaW5lIEhBVkVfR0lGIDEKfCAjZGVmaW5lIEhB VkVfR1BNIDEKfCAjZGVmaW5lIEhBVkVfWF9TTSAxCnwgI2RlZmluZSBIQVZFX1hSQU5EUiAxCnwg I2RlZmluZSBIQVZFX1hJTkVSQU1BIDEKfCAjZGVmaW5lIEhBVkVfWEZJWEVTIDEKfCAjZGVmaW5l IEhBVkVfTElCWE1MMiAxCnwgI2RlZmluZSBIQVZFX0hfRVJSTk8gMQp8ICNkZWZpbmUgTUFJTF9V U0VfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9BQ0NFUFQ0IDEKfCAjZGVmaW5lIEhBVkVfRkNIRElS IDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNBR0Ug MQp8ICNkZWZpbmUgSEFWRV9HRVRfQ1VSUkVOVF9ESVJfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0xS QU5ENDggMQp8ICNkZWZpbmUgSEFWRV9SQU5ET00gMQp8ICNkZWZpbmUgSEFWRV9SSU5UIDEKfCAj ZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZp bmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9ORVdMT0NBTEUgMQp8ICNkZWZpbmUg SEFWRV9HRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFW RV9TSFVURE9XTiAxCnwgI2RlZmluZSBIQVZFX0dFVEFERFJJTkZPIDEKfCAjZGVmaW5lIEhBVkVf UFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSU0lHTkFMIDEKfCAjZGVmaW5lIEhB VkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfU0VORFRPIDEKfCAjZGVmaW5lIEhBVkVfUkVD VkZST00gMQp8ICNkZWZpbmUgSEFWRV9HRVRTT0NLTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFBF RVJOQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0ZSRUVJ RkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfR0FJX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lO QyAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EUFdFTlQgMQp8 ICNkZWZpbmUgSEFWRV9HRVRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0VOREdSRU5UIDEKfCAjZGVm aW5lIEhBVkVfQ0ZNQUtFUkFXIDEKfCAjZGVmaW5lIEhBVkVfQ0ZTRVRTUEVFRCAxCnwgI2RlZmlu ZSBIQVZFX0NPUFlTSUdOIDEKfCAjZGVmaW5lIEhBVkVfX19FWEVDVVRBQkxFX1NUQVJUIDEKfCAj ZGVmaW5lIEhBVkVfTE9HMiAxCnwgI2RlZmluZSBIQVZFX0FMSUdORURfQUxMT0MgMQp8ICNkZWZp bmUgSEFWRV9fX0JVSUxUSU5fVU5XSU5EX0lOSVQgMQp8ICNkZWZpbmUgSEFWRV9GU0VFS08gMQp8 ICNkZWZpbmUgSEFWRV9HUkFOVFBUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFQgMQp8ICNkZWZpbmUg SEFWRV9QT1NJWF9PUEVOUFQgMQp8ICNkZWZpbmUgVEVSTUlORk8gMQp8ICNkZWZpbmUgSEFWRV9U SU1FUkZEIDEKfCAjZGVmaW5lIEhBVkVfUkVTX0lOSVQgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1Rf VU5JUEFJUl9VTklDT0RFIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9TT0NLRVRTIDEKfCAjZGVmaW5l IEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lO R19WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1NO UFJJTlRGIDEKfCAjZGVmaW5lIEhBVkVfR0xJQiAxCnwgI2RlZmluZSBIQVZFX0xBTkdJTkZPX0NP REVTRVQgMQp8ICNkZWZpbmUgSEFWRV9NQlNUQVRFX1QgMQp8ICNkZWZpbmUgQU1QRVJTQU5EX0ZV TExfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1BUWVMgMQp8ICNkZWZpbmUgSEFWRV9TT0NLRVRTIDEK fCAjZGVmaW5lIE5VTExfREVWSUNFICIvZGV2L251bGwiCnwgI2RlZmluZSBTRVBDSEFSICc6Jwp8 ICNkZWZpbmUgc3VicHJvY2Vzc2VzIDEKfCAjZGVmaW5lIFVTRVJfRlVMTF9OQU1FIHB3LT5wd19n ZWNvcwp8ICNkZWZpbmUgRElSRUNUT1JZX1NFUCAnLycKfCAjZGVmaW5lIElTX0RFVklDRV9TRVAo X2NfKSAwCnwgI2RlZmluZSBJU19ESVJFQ1RPUllfU0VQKF9jXykgKChfY18pID09IERJUkVDVE9S WV9TRVApCnwgI2RlZmluZSBJU19BTllfU0VQKF9jXykgKElTX0RJUkVDVE9SWV9TRVAgKF9jXykp CnwgI2RlZmluZSBIQVZFX1BST0NGUyAxCnwgI2RlZmluZSBERUZBVUxUX1NPVU5EX0RFVklDRSAi L2Rldi9kc3AiCnwgI2RlZmluZSBJTlRFUlJVUFRfSU5QVVQgMQp8ICNkZWZpbmUgTkFSUk9XUFJP VE8gMQp8ICNkZWZpbmUgVU5JWDk4X1BUWVMgMQp8ICNkZWZpbmUgUFRZX0lURVJBVElPTiBpbnQg aTsgZm9yIChpID0gMDsgaSA8IDE7IGkrKykKfCAjZGVmaW5lIFBUWV9UVFlfTkFNRV9TUFJJTlRG IHsgY2hhciAqcHR5bmFtZSA9IDA7IHNpZ3NldF90IGJsb2NrZWQ7IHNpZ2VtcHR5c2V0ICgmYmxv Y2tlZCk7IHNpZ2FkZHNldCAoJmJsb2NrZWQsIFNJR0NITEQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJ R19CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoZ3JhbnRwdCAoZmQpICE9IC0xICYmIHVubG9ja3B0 IChmZCkgIT0gLTEpIHB0eW5hbWUgPSBwdHNuYW1lKGZkKTsgcHRocmVhZF9zaWdtYXNrIChTSUdf VU5CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoIXB0eW5hbWUpIHsgZW1hY3NfY2xvc2UgKGZkKTsg cmV0dXJuIC0xOyB9IHNucHJpbnRmIChwdHlfbmFtZSwgUFRZX05BTUVfU0laRSwgIiVzIiwgcHR5 bmFtZSk7IH0KfCAjZGVmaW5lIFBUWV9PUEVOIGRvIHsgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRX UiB8IE9fQ0xPRVhFQyB8IE9fTk9DVFRZKTsgaWYgKGZkIDwgMCAmJiBlcnJubyA9PSBFSU5WQUwp IGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX05PQ1RUWSk7IH0gd2hpbGUgKGZhbHNlKQp8 ICNkZWZpbmUgUFRZX05BTUVfU1BSSU5URiAvKiovCnwgI2RlZmluZSBTSUdOQUxTX1ZJQV9DSEFS QUNURVJTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBf V09SS1MgMQp8ICNkZWZpbmUgSEFWRV9fU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUSk1Q IDEKfCAjZGVmaW5lIEhBVkVfU1RBQ0tfT1ZFUkZMT1dfSEFORExJTkcgMQp8ICNkZWZpbmUgVVNH IC8qKi8KfCAjZGVmaW5lIEdOVV9MSU5VWCAvKiovCnwgI2RlZmluZSBVU0FCTEVfRklPTlJFQUQg MQp8ICNkZWZpbmUgVVNBQkxFX1NJR0lPIDEKfCAjZGVmaW5lIENPUFlSSUdIVCAiQ29weXJpZ2h0 IChDKSAyMDE2IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiIKfCAjZGVmaW5lIFRFUk1f SEVBREVSICJ4dGVybS5oIgp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHVVJBVElPTiAieDg2XzY0LXVu a25vd24tbGludXgtZ251Igp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHX09QVElPTlMgIi0td2l0aC14 LXRvb2xraXQ9bHVjaWQiCnwgI2RlZmluZSBIQVZFX1hfV0lORE9XUyAxCnwgI2RlZmluZSBVU0Vf WF9UT09MS0lUIDEKfCAjZGVmaW5lIFVTRV9MVUNJRCAxCnwgI2RlZmluZSBIQVZFX1gxMSAxCnwg I2RlZmluZSBIQVZFX1NUUlVDVF9BVFRSSUJVVEVfQUxJR05FRCAxCnwgI2RlZmluZSBHTlVfTUFM TE9DIDEKfCAjZGVmaW5lIFJFTF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQV9IIDEKfCAj ZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfVU5TSUdORURfTE9OR19MT05HX0lO VCAxCnwgI2RlZmluZSBIQVZFX0M5OV9TVFJUT0xEIDEKfCAjZGVmaW5lIEhBVkVfRU5WSVJPTl9E RUNMIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GREFUQVNZTkMgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X1NUUk1PREUgMAp8ICNkZWZpbmUgTFNUQVRfRk9MTE9XU19TTEFTSEVEX1NZTUxJTksgMQp8ICNk ZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9MT05HX09OTFkgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX0dFVEVOViAxCnwgI2RlZmluZSByZXN0cmljdCBfX3Jlc3RyaWN0 CnwgI2RlZmluZSBIQVZFX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX01FTVJD SFIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0FMQVJNIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUX1Qg MQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9UIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1RNX1RNX1pP TkUgMQp8ICNkZWZpbmUgSEFWRV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fR01UT0ZGIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9TVFJUT0lNQVggMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUlRP VU1BWCAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfU1RS VUNUX1VUSU1CVUYgMQp8ICNkZWZpbmUgR0VUR1JPVVBTX1QgZ2lkX3QKfCAjZGVmaW5lIEhBVkVf REVDTF9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0FDTF9IIDEKfCAjZGVmaW5l IEhBVkVfQUNMX0dFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GRCAxCnwgI2RlZmlu ZSBIQVZFX0FDTF9TRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRkQgMQp8ICNkZWZp bmUgSEFWRV9BQ0xfRlJFRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX01PREUgMQp8ICNkZWZp bmUgSEFWRV9BQ0xfRlJPTV9URVhUIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0RFTEVURV9ERUZfRklM RSAxCnwgI2RlZmluZSBIQVZFX0FDTF9FWFRFTkRFRF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNM X0xJQkFDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VOVFJJRVMgMQp8ICNkZWZpbmUgSEFWRV9B Q0xfRklSU1RfRU5UUlkgMQp8ICNkZWZpbmUgVVNFX0FDTCAxCnwgI2RlZmluZSBIQVZFX0FMTE9D QSAxCnwgI2RlZmluZSBIQVZFX0JZVEVTV0FQX0ggMQp8ICNkZWZpbmUgSEFWRV9DTE9DS19HRVRU SU1FIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tfU0VUVElNRSAxCnwgI2RlZmluZSBHTlVMSUJfQ0xP U0VfU1RSRUFNIDEKfCAjZGVmaW5lIEhBVkVfRFVQMiAxCnwgI2RlZmluZSBHTlVMSUJfRkFDQ0VT U0FUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgR05VTElCX0ZE T1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfX19GUEVORElORyAxCnwgI2RlZmluZSBHRVRU SU1FT0ZEQVlfVElNRVpPTkUgc3RydWN0IHRpbWV6b25lCnwgI2RlZmluZSBIQVZFX01FTVJDSFIg MQp8ICNkZWZpbmUgR05VTElCX01LT1NURU1QIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRf U1RfQVRJTV9UVl9OU0VDIDEKfCAjZGVmaW5lIFRZUEVPRl9TVFJVQ1RfU1RBVF9TVF9BVElNX0lT X1NUUlVDVF9USU1FU1BFQyAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxz eXMvdHlwZXMuaD4KfCAgICAgICNpbmNsdWRlIDxzeXMvc3RhdC5oPgp8IAp8IGludAp8IG1haW4g KCkKfCB7Cnwgc3RhdGljIHN0cnVjdCBzdGF0IGFjX2FnZ3I7CnwgaWYgKHNpemVvZiBhY19hZ2dy LnN0X2JpcnRodGltZXNwZWMudHZfbnNlYykKfCByZXR1cm4gMDsKfCAgIDsKfCAgIHJldHVybiAw Owp8IH0KY29uZmlndXJlOjI4MDkzOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToyODEwNDogY2hlY2tp bmcgZm9yIHN0cnVjdCBzdGF0LnN0X2JpcnRodGltZW5zZWMKY29uZmlndXJlOjI4MTA0OiBnY2Mg LWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiAnbWFp bic6CmNvbmZ0ZXN0LmM6MzExOjEyOiBlcnJvcjogJ3N0cnVjdCBzdGF0JyBoYXMgbm8gbWVtYmVy IG5hbWVkICdzdF9iaXJ0aHRpbWVuc2VjJwogaWYgKGFjX2FnZ3Iuc3RfYmlydGh0aW1lbnNlYykK ICAgICAgICAgICAgXgpjb25maWd1cmU6MjgxMDQ6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBw cm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdO VSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNL QUdFX1ZFUlNJT04gIjI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDI1 LjEiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8 ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHA6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9lbWFjcy8i CnwgI2RlZmluZSBQQUNLQUdFICJlbWFjcyIKfCAjZGVmaW5lIFZFUlNJT04gIjI1LjEiCnwgI2Rl ZmluZSBNQUlMX1VTRV9QT1AgMQp8ICNkZWZpbmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZpbmUgSEFW RV9UWlNFVCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5L QVQgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwg I2RlZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZp bmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBI QVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfTUtPU1RFTVAgMQp8ICNkZWZpbmUgSEFWRV9QSVBF MiAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwg I2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX1NUUlRPVU1BWCAxCnwgI2Rl ZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmlu ZSBIQVZFX1RJTUVHTSAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9G VVRJTUVTQVQgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVOUyAxCnwgI2RlZmluZSBIQVZFX1VUSU1F TlNBVCAxCnwgI2RlZmluZSBIQVZFX0xVVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVT SVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VDVVJFX0dFVEVOViAxCnwgI2RlZmluZSBTVERDX0hFQURF UlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFU X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEK fCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNk ZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZp bmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBf QUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVf U09VUkNFIDEKfCAjZGVmaW5lIF9fVVNFX01JTkdXX0FOU0lfU1RESU8gMQp8ICNkZWZpbmUgX1BP U0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVm aW5lIF9EQVJXSU5fVVNFXzY0X0JJVF9JTk9ERSAxCnwgI2RlZmluZSBTWVNURU1fVFlQRSAiZ251 L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJEX0ggMQp8ICNkZWZpbmUgSEFWRV9B TFNBIDEKfCAjZGVmaW5lIEhBVkVfU09VTkQgMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19I IDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAx CnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwg I2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2Rl ZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9F WEVDSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9H RVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hB Ul9IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRf SCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QRVJTT05BTElUWV9M SU5VWDMyIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5GTyAxCnwgI2RlZmluZSBMSU5VWF9T WVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUgSEFWRV9URVJNX0ggMQp8ICNkZWZpbmUgVElNRV9XSVRI X1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TWVNfU0lHTElTVCAxCnwgI2RlZmluZSBI QVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZF X0lGQUREUlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8ICNk ZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVD VF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJP QURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERSIDEKfCAjZGVmaW5l IEhBVkVfTE9OR19GSUxFX05BTUVTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1ZMSU1JVF9IIDEKfCAj ZGVmaW5lIEhBVkVfREFUQV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAj ZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQUQgMQp8ICNkZWZpbmUgSEFW RV9YS0IgMQp8ICNkZWZpbmUgSEFWRV9YUk1TRVREQVRBQkFTRSAxCnwgI2RlZmluZSBIQVZFX1hT Q1JFRU5SRVNPVVJDRVNUUklORyAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJPRlNDUkVF TiAxCnwgI2RlZmluZSBIQVZFX1gxMVI2IDEKfCAjZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVm aW5lIEhBVkVfWDExUjZfWElNIDEKfCAjZGVmaW5lIEhBVkVfUlNWRyAxCnwgI2RlZmluZSBIQVZF X0lNQUdFTUFHSUNLIDEKfCAjZGVmaW5lIEhBVkVfTUFHSUNLRVhQT1JUSU1BR0VQSVhFTFMgMQp8 ICNkZWZpbmUgSEFWRV9NQUdJQ0tNRVJHRUlNQUdFTEFZRVJTIDEKfCAjZGVmaW5lIEhBVkVfREJV UyAxCnwgI2RlZmluZSBIQVZFX0RCVVNfV0FUQ0hfR0VUX1VOSVhfRkQgMQp8ICNkZWZpbmUgSEFW RV9EQlVTX1RZUEVfSVNfVkFMSUQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0JVU19O QU1FIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9QQVRIIDEKfCAjZGVmaW5lIEhBVkVf REJVU19WQUxJREFURV9JTlRFUkZBQ0UgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX01F TUJFUiAxCnwgI2RlZmluZSBIQVZFX0dTRVRUSU5HUyAxCnwgI2RlZmluZSBIQVZFX0dDT05GIDEK fCAjZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTMyAxCnwgI2RlZmlu ZSBIQVZFX0lOT1RJRlkgMQp8ICNkZWZpbmUgVVNFX0ZJTEVfTk9USUZZIDEKfCAjZGVmaW5lIEhB VkVfWDExWFRSNiAxCnwgI2RlZmluZSBVU0VfVE9PTEtJVF9TQ1JPTExfQkFSUyAxCnwgI2RlZmlu ZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBVU0VfWElNIDEKfCAjZGVmaW5lIFhSZWdpc3RlcklNSW5z dGFudGlhdGVDYWxsYmFja19hcmc2IFhQb2ludGVyCnwgI2RlZmluZSBIQVZFX1hGVCAxCnwgI2Rl ZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAjZGVmaW5lIEhBVkVfTElCT1RGIDEKfCAjZGVmaW5lIEhB VkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTIDEKfCAjZGVmaW5lIEhBVkVfTTE3Tl9GTFQgMQp8 ICNkZWZpbmUgVVNFX1hDQiAxCnwgI2RlZmluZSBIQVZFX1hQTSAxCnwgI2RlZmluZSBIQVZFX0pQ RUcgMQp8ICNkZWZpbmUgSEFWRV9aTElCIDEKfCAjZGVmaW5lIEhBVkVfUE5HIDEKfCAjZGVmaW5l IEhBVkVfVElGRiAxCnwgI2RlZmluZSBIQVZFX0dJRiAxCnwgI2RlZmluZSBIQVZFX0dQTSAxCnwg I2RlZmluZSBIQVZFX1hfU00gMQp8ICNkZWZpbmUgSEFWRV9YUkFORFIgMQp8ICNkZWZpbmUgSEFW RV9YSU5FUkFNQSAxCnwgI2RlZmluZSBIQVZFX1hGSVhFUyAxCnwgI2RlZmluZSBIQVZFX0xJQlhN TDIgMQp8ICNkZWZpbmUgSEFWRV9IX0VSUk5PIDEKfCAjZGVmaW5lIE1BSUxfVVNFX0ZMT0NLIDEK fCAjZGVmaW5lIEhBVkVfQUNDRVBUNCAxCnwgI2RlZmluZSBIQVZFX0ZDSERJUiAxCnwgI2RlZmlu ZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUUlVTQUdFIDEKfCAjZGVmaW5l IEhBVkVfR0VUX0NVUlJFTlRfRElSX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9MUkFORDQ4IDEKfCAj ZGVmaW5lIEhBVkVfUkFORE9NIDEKfCAjZGVmaW5lIEhBVkVfUklOVCAxCnwgI2RlZmluZSBIQVZF X1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VU TE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfTkVXTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJ TUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04g MQp8ICNkZWZpbmUgSEFWRV9HRVRBRERSSU5GTyAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lH TUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlNJR05BTCAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1F UiAxCnwgI2RlZmluZSBIQVZFX1NFTkRUTyAxCnwgI2RlZmluZSBIQVZFX1JFQ1ZGUk9NIDEKfCAj ZGVmaW5lIEhBVkVfR0VUU09DS05BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRQRUVSTkFNRSAxCnwg I2RlZmluZSBIQVZFX0dFVElGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9GUkVFSUZBRERSUyAxCnwg I2RlZmluZSBIQVZFX0dBSV9TVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZFX1NZTkMgMQp8ICNkZWZp bmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0VORFBXRU5UIDEKfCAjZGVmaW5lIEhB VkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0NG TUFLRVJBVyAxCnwgI2RlZmluZSBIQVZFX0NGU0VUU1BFRUQgMQp8ICNkZWZpbmUgSEFWRV9DT1BZ U0lHTiAxCnwgI2RlZmluZSBIQVZFX19fRVhFQ1VUQUJMRV9TVEFSVCAxCnwgI2RlZmluZSBIQVZF X0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfX19C VUlMVElOX1VOV0lORF9JTklUIDEKfCAjZGVmaW5lIEhBVkVfRlNFRUtPIDEKfCAjZGVmaW5lIEhB VkVfR1JBTlRQVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBUIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhf T1BFTlBUIDEKfCAjZGVmaW5lIFRFUk1JTkZPIDEKfCAjZGVmaW5lIEhBVkVfVElNRVJGRCAxCnwg I2RlZmluZSBIQVZFX1JFU19JTklUIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1VOSVBBSVJfVU5J Q09ERSAxCnwgI2RlZmluZSBIQVZFX0lORVRfU09DS0VUUyAxCnwgI2RlZmluZSBIQVZFX0ZPUksg MQp8ICNkZWZpbmUgSEFWRV9WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVkZPUksgMQp8 ICNkZWZpbmUgSEFWRV9XT1JLSU5HX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9TTlBSSU5URiAxCnwg I2RlZmluZSBIQVZFX0dMSUIgMQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5GT19DT0RFU0VUIDEKfCAj ZGVmaW5lIEhBVkVfTUJTVEFURV9UIDEKfCAjZGVmaW5lIEFNUEVSU0FORF9GVUxMX05BTUUgMQp8 ICNkZWZpbmUgSEFWRV9QVFlTIDEKfCAjZGVmaW5lIEhBVkVfU09DS0VUUyAxCnwgI2RlZmluZSBO VUxMX0RFVklDRSAiL2Rldi9udWxsIgp8ICNkZWZpbmUgU0VQQ0hBUiAnOicKfCAjZGVmaW5lIHN1 YnByb2Nlc3NlcyAxCnwgI2RlZmluZSBVU0VSX0ZVTExfTkFNRSBwdy0+cHdfZ2Vjb3MKfCAjZGVm aW5lIERJUkVDVE9SWV9TRVAgJy8nCnwgI2RlZmluZSBJU19ERVZJQ0VfU0VQKF9jXykgMAp8ICNk ZWZpbmUgSVNfRElSRUNUT1JZX1NFUChfY18pICgoX2NfKSA9PSBESVJFQ1RPUllfU0VQKQp8ICNk ZWZpbmUgSVNfQU5ZX1NFUChfY18pIChJU19ESVJFQ1RPUllfU0VQIChfY18pKQp8ICNkZWZpbmUg SEFWRV9QUk9DRlMgMQp8ICNkZWZpbmUgREVGQVVMVF9TT1VORF9ERVZJQ0UgIi9kZXYvZHNwIgp8 ICNkZWZpbmUgSU5URVJSVVBUX0lOUFVUIDEKfCAjZGVmaW5lIE5BUlJPV1BST1RPIDEKfCAjZGVm aW5lIFVOSVg5OF9QVFlTIDEKfCAjZGVmaW5lIFBUWV9JVEVSQVRJT04gaW50IGk7IGZvciAoaSA9 IDA7IGkgPCAxOyBpKyspCnwgI2RlZmluZSBQVFlfVFRZX05BTUVfU1BSSU5URiB7IGNoYXIgKnB0 eW5hbWUgPSAwOyBzaWdzZXRfdCBibG9ja2VkOyBzaWdlbXB0eXNldCAoJmJsb2NrZWQpOyBzaWdh ZGRzZXQgKCZibG9ja2VkLCBTSUdDSExEKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfQkxPQ0ssICZi bG9ja2VkLCAwKTsgaWYgKGdyYW50cHQgKGZkKSAhPSAtMSAmJiB1bmxvY2twdCAoZmQpICE9IC0x KSBwdHluYW1lID0gcHRzbmFtZShmZCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX1VOQkxPQ0ssICZi bG9ja2VkLCAwKTsgaWYgKCFwdHluYW1lKSB7IGVtYWNzX2Nsb3NlIChmZCk7IHJldHVybiAtMTsg fSBzbnByaW50ZiAocHR5X25hbWUsIFBUWV9OQU1FX1NJWkUsICIlcyIsIHB0eW5hbWUpOyB9Cnwg I2RlZmluZSBQVFlfT1BFTiBkbyB7IGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX0NMT0VY RUMgfCBPX05PQ1RUWSk7IGlmIChmZCA8IDAgJiYgZXJybm8gPT0gRUlOVkFMKSBmZCA9IHBvc2l4 X29wZW5wdCAoT19SRFdSIHwgT19OT0NUVFkpOyB9IHdoaWxlIChmYWxzZSkKfCAjZGVmaW5lIFBU WV9OQU1FX1NQUklOVEYgLyoqLwp8ICNkZWZpbmUgU0lHTkFMU19WSUFfQ0hBUkFDVEVSUyAxCnwg I2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAj ZGVmaW5lIEhBVkVfX1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVEpNUCAxCnwgI2RlZmlu ZSBIQVZFX1NUQUNLX09WRVJGTE9XX0hBTkRMSU5HIDEKfCAjZGVmaW5lIFVTRyAvKiovCnwgI2Rl ZmluZSBHTlVfTElOVVggLyoqLwp8ICNkZWZpbmUgVVNBQkxFX0ZJT05SRUFEIDEKfCAjZGVmaW5l IFVTQUJMRV9TSUdJTyAxCnwgI2RlZmluZSBDT1BZUklHSFQgIkNvcHlyaWdodCAoQykgMjAxNiBG cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4iCnwgI2RlZmluZSBURVJNX0hFQURFUiAieHRl cm0uaCIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR1VSQVRJT04gIng4Nl82NC11bmtub3duLWxpbnV4 LWdudSIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR19PUFRJT05TICItLXdpdGgteC10b29sa2l0PWx1 Y2lkIgp8ICNkZWZpbmUgSEFWRV9YX1dJTkRPV1MgMQp8ICNkZWZpbmUgVVNFX1hfVE9PTEtJVCAx CnwgI2RlZmluZSBVU0VfTFVDSUQgMQp8ICNkZWZpbmUgSEFWRV9YMTEgMQp8ICNkZWZpbmUgSEFW RV9TVFJVQ1RfQVRUUklCVVRFX0FMSUdORUQgMQp8ICNkZWZpbmUgR05VX01BTExPQyAxCnwgI2Rl ZmluZSBSRUxfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAxCnwgI2RlZmluZSBIQVZF X0FMTE9DQSAxCnwgI2RlZmluZSBIQVZFX1VOU0lHTkVEX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZp bmUgSEFWRV9DOTlfU1RSVE9MRCAxCnwgI2RlZmluZSBIQVZFX0VOVklST05fREVDTCAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfRkRBVEFTWU5DIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJNT0RFIDAK fCAjZGVmaW5lIExTVEFUX0ZPTExPV1NfU0xBU0hFRF9TWU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVf R0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfTE9OR19PTkxZIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9HRVRFTlYgMQp8ICNkZWZpbmUgcmVzdHJpY3QgX19yZXN0cmljdAp8ICNkZWZpbmUg SEFWRV9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9NRU1SQ0hSIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9BTEFSTSAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVF9UIDEKfCAjZGVmaW5l IEhBVkVfV0NIQVJfVCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9UTV9UTV9aT05FIDEKfCAjZGVm aW5lIEhBVkVfVE1fWk9ORSAxCnwgI2RlZmluZSBIQVZFX1RNX0dNVE9GRiAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJUT1VNQVggMQp8ICNk ZWZpbmUgSEFWRV9XT1JLSU5HX1VUSU1FUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9VVElNQlVG IDEKfCAjZGVmaW5lIEdFVEdST1VQU19UIGdpZF90CnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VURFRB QkxFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NZU19BQ0xfSCAxCnwgI2RlZmluZSBIQVZFX0FDTF9H RVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xf U0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNM X0ZSRUUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9NT0RFIDEKfCAjZGVmaW5lIEhBVkVfQUNM X0ZST01fVEVYVCAxCnwgI2RlZmluZSBIQVZFX0FDTF9ERUxFVEVfREVGX0ZJTEUgMQp8ICNkZWZp bmUgSEFWRV9BQ0xfRVhURU5ERURfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9MSUJBQ0xfSCAx CnwgI2RlZmluZSBIQVZFX0FDTF9FTlRSSUVTIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZJUlNUX0VO VFJZIDEKfCAjZGVmaW5lIFVTRV9BQ0wgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZp bmUgSEFWRV9CWVRFU1dBUF9IIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tfR0VUVElNRSAxCnwgI2Rl ZmluZSBIQVZFX0NMT0NLX1NFVFRJTUUgMQp8ICNkZWZpbmUgR05VTElCX0NMT1NFX1NUUkVBTSAx CnwgI2RlZmluZSBIQVZFX0RVUDIgMQp8ICNkZWZpbmUgR05VTElCX0ZBQ0NFU1NBVCAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfRkRPUEVORElSIDEKfCAjZGVmaW5lIEdOVUxJQl9GRE9QRU5ESVIgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX19fRlBFTkRJTkcgMQp8ICNkZWZpbmUgR0VUVElNRU9GREFZX1RJ TUVaT05FIHN0cnVjdCB0aW1lem9uZQp8ICNkZWZpbmUgSEFWRV9NRU1SQ0hSIDEKfCAjZGVmaW5l IEdOVUxJQl9NS09TVEVNUCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX0FUSU1fVFZf TlNFQyAxCnwgI2RlZmluZSBUWVBFT0ZfU1RSVUNUX1NUQVRfU1RfQVRJTV9JU19TVFJVQ1RfVElN RVNQRUMgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+ CnwgICAgICAgICAjaW5jbHVkZSA8c3lzL3N0YXQuaD4KfCAKfCBpbnQKfCBtYWluICgpCnwgewp8 IHN0YXRpYyBzdHJ1Y3Qgc3RhdCBhY19hZ2dyOwp8IGlmIChhY19hZ2dyLnN0X2JpcnRodGltZW5z ZWMpCnwgcmV0dXJuIDA7CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToyODEwNDog Z2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzogSW4gZnVuY3Rpb24g J21haW4nOgpjb25mdGVzdC5jOjMxMToxOTogZXJyb3I6ICdzdHJ1Y3Qgc3RhdCcgaGFzIG5vIG1l bWJlciBuYW1lZCAnc3RfYmlydGh0aW1lbnNlYycKIGlmIChzaXplb2YgYWNfYWdnci5zdF9iaXJ0 aHRpbWVuc2VjKQogICAgICAgICAgICAgICAgICAgXgpjb25maWd1cmU6MjgxMDQ6ICQ/ID0gMQpj b25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmlu ZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1h Y3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX1NU UklORyAiR05VIEVtYWNzIDI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdu dS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHA6Ly93d3cuZ251Lm9y Zy9zb2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmluZSBQQUNLQUdFICJlbWFjcyIKfCAjZGVmaW5lIFZF UlNJT04gIjI1LjEiCnwgI2RlZmluZSBNQUlMX1VTRV9QT1AgMQp8ICNkZWZpbmUgSEFWRV9QVVRF TlYgMQp8ICNkZWZpbmUgSEFWRV9UWlNFVCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2Rl ZmluZSBIQVZFX1JFQURMSU5LQVQgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZp bmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZF X0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVP RkRBWSAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfTUtPU1RFTVAgMQp8 ICNkZWZpbmUgSEFWRV9QSVBFMiAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUg SEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZF X1NUUlRPVU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9MT0NB TFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX1RJTUVHTSAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVMg MQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVTQVQgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVOUyAxCnwg I2RlZmluZSBIQVZFX1VUSU1FTlNBVCAxCnwgI2RlZmluZSBIQVZFX0xVVElNRVMgMQp8ICNkZWZp bmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VDVVJFX0dFVEVOViAxCnwg I2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmlu ZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFW RV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVf U1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lP TlNfXyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNF IDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9fVVNFX01JTkdXX0FOU0lfU1RE SU8gMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9UQU5E RU1fU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fVVNFXzY0X0JJVF9JTk9ERSAxCnwgI2RlZmlu ZSBTWVNURU1fVFlQRSAiZ251L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJEX0gg MQp8ICNkZWZpbmUgSEFWRV9BTFNBIDEKfCAjZGVmaW5lIEhBVkVfU09VTkQgMQp8ICNkZWZpbmUg SEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZp bmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19TT0NLRVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfVU5J U1REX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJF QURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0gg MQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fRVhUX0gg MQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8 ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZp bmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUg SEFWRV9QRVJTT05BTElUWV9MSU5VWDMyIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5GTyAx CnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUgSEFWRV9URVJNX0ggMQp8 ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TWVNfU0lH TElTVCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZf SCAxCnwgI2RlZmluZSBIQVZFX0lGQUREUlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJF UV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwg I2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NU UlVDVF9JRlJFUV9JRlJfQlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lG Ul9BRERSIDEKfCAjZGVmaW5lIEhBVkVfTE9OR19GSUxFX05BTUVTIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1ZMSU1JVF9IIDEKfCAjZGVmaW5lIEhBVkVfREFUQV9TVEFSVCAxCnwgI2RlZmluZSBIQVZF X0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2RlZmluZSBIQVZFX1BUSFJF QUQgMQp8ICNkZWZpbmUgSEFWRV9YS0IgMQp8ICNkZWZpbmUgSEFWRV9YUk1TRVREQVRBQkFTRSAx CnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNPVVJDRVNUUklORyAxCnwgI2RlZmluZSBIQVZFX1hT Q1JFRU5OVU1CRVJPRlNDUkVFTiAxCnwgI2RlZmluZSBIQVZFX1gxMVI2IDEKfCAjZGVmaW5lIEhB VkVfWF9JMThOIDEKfCAjZGVmaW5lIEhBVkVfWDExUjZfWElNIDEKfCAjZGVmaW5lIEhBVkVfUlNW RyAxCnwgI2RlZmluZSBIQVZFX0lNQUdFTUFHSUNLIDEKfCAjZGVmaW5lIEhBVkVfTUFHSUNLRVhQ T1JUSU1BR0VQSVhFTFMgMQp8ICNkZWZpbmUgSEFWRV9NQUdJQ0tNRVJHRUlNQUdFTEFZRVJTIDEK fCAjZGVmaW5lIEhBVkVfREJVUyAxCnwgI2RlZmluZSBIQVZFX0RCVVNfV0FUQ0hfR0VUX1VOSVhf RkQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1RZUEVfSVNfVkFMSUQgMQp8ICNkZWZpbmUgSEFWRV9E QlVTX1ZBTElEQVRFX0JVU19OQU1FIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9QQVRI IDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9JTlRFUkZBQ0UgMQp8ICNkZWZpbmUgSEFW RV9EQlVTX1ZBTElEQVRFX01FTUJFUiAxCnwgI2RlZmluZSBIQVZFX0dTRVRUSU5HUyAxCnwgI2Rl ZmluZSBIQVZFX0dDT05GIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhBVkVf R05VVExTMyAxCnwgI2RlZmluZSBIQVZFX0lOT1RJRlkgMQp8ICNkZWZpbmUgVVNFX0ZJTEVfTk9U SUZZIDEKfCAjZGVmaW5lIEhBVkVfWDExWFRSNiAxCnwgI2RlZmluZSBVU0VfVE9PTEtJVF9TQ1JP TExfQkFSUyAxCnwgI2RlZmluZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBVU0VfWElNIDEKfCAjZGVm aW5lIFhSZWdpc3RlcklNSW5zdGFudGlhdGVDYWxsYmFja19hcmc2IFhQb2ludGVyCnwgI2RlZmlu ZSBIQVZFX1hGVCAxCnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAjZGVmaW5lIEhBVkVfTElC T1RGIDEKfCAjZGVmaW5lIEhBVkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTIDEKfCAjZGVmaW5l IEhBVkVfTTE3Tl9GTFQgMQp8ICNkZWZpbmUgVVNFX1hDQiAxCnwgI2RlZmluZSBIQVZFX1hQTSAx CnwgI2RlZmluZSBIQVZFX0pQRUcgMQp8ICNkZWZpbmUgSEFWRV9aTElCIDEKfCAjZGVmaW5lIEhB VkVfUE5HIDEKfCAjZGVmaW5lIEhBVkVfVElGRiAxCnwgI2RlZmluZSBIQVZFX0dJRiAxCnwgI2Rl ZmluZSBIQVZFX0dQTSAxCnwgI2RlZmluZSBIQVZFX1hfU00gMQp8ICNkZWZpbmUgSEFWRV9YUkFO RFIgMQp8ICNkZWZpbmUgSEFWRV9YSU5FUkFNQSAxCnwgI2RlZmluZSBIQVZFX1hGSVhFUyAxCnwg I2RlZmluZSBIQVZFX0xJQlhNTDIgMQp8ICNkZWZpbmUgSEFWRV9IX0VSUk5PIDEKfCAjZGVmaW5l IE1BSUxfVVNFX0ZMT0NLIDEKfCAjZGVmaW5lIEhBVkVfQUNDRVBUNCAxCnwgI2RlZmluZSBIQVZF X0ZDSERJUiAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VU UlVTQUdFIDEKfCAjZGVmaW5lIEhBVkVfR0VUX0NVUlJFTlRfRElSX05BTUUgMQp8ICNkZWZpbmUg SEFWRV9MUkFORDQ4IDEKfCAjZGVmaW5lIEhBVkVfUkFORE9NIDEKfCAjZGVmaW5lIEhBVkVfUklO VCAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEK fCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfTkVXTE9DQUxFIDEKfCAj ZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVm aW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9HRVRBRERSSU5GTyAxCnwgI2RlZmlu ZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlNJR05BTCAxCnwgI2Rl ZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX1NFTkRUTyAxCnwgI2RlZmluZSBI QVZFX1JFQ1ZGUk9NIDEKfCAjZGVmaW5lIEhBVkVfR0VUU09DS05BTUUgMQp8ICNkZWZpbmUgSEFW RV9HRVRQRUVSTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVElGQUREUlMgMQp8ICNkZWZpbmUgSEFW RV9GUkVFSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0dBSV9TVFJFUlJPUiAxCnwgI2RlZmluZSBI QVZFX1NZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0VORFBX RU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRHUkVOVCAx CnwgI2RlZmluZSBIQVZFX0NGTUFLRVJBVyAxCnwgI2RlZmluZSBIQVZFX0NGU0VUU1BFRUQgMQp8 ICNkZWZpbmUgSEFWRV9DT1BZU0lHTiAxCnwgI2RlZmluZSBIQVZFX19fRVhFQ1VUQUJMRV9TVEFS VCAxCnwgI2RlZmluZSBIQVZFX0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9DIDEK fCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX1VOV0lORF9JTklUIDEKfCAjZGVmaW5lIEhBVkVfRlNF RUtPIDEKfCAjZGVmaW5lIEhBVkVfR1JBTlRQVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBUIDEKfCAj ZGVmaW5lIEhBVkVfUE9TSVhfT1BFTlBUIDEKfCAjZGVmaW5lIFRFUk1JTkZPIDEKfCAjZGVmaW5l IEhBVkVfVElNRVJGRCAxCnwgI2RlZmluZSBIQVZFX1JFU19JTklUIDEKfCAjZGVmaW5lIEhBVkVf U1RSVUNUX1VOSVBBSVJfVU5JQ09ERSAxCnwgI2RlZmluZSBIQVZFX0lORVRfU09DS0VUUyAxCnwg I2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9WRk9SSyAxCnwgI2RlZmluZSBIQVZF X1dPUktJTkdfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX0ZPUksgMQp8ICNkZWZpbmUg SEFWRV9TTlBSSU5URiAxCnwgI2RlZmluZSBIQVZFX0dMSUIgMQp8ICNkZWZpbmUgSEFWRV9MQU5H SU5GT19DT0RFU0VUIDEKfCAjZGVmaW5lIEhBVkVfTUJTVEFURV9UIDEKfCAjZGVmaW5lIEFNUEVS U0FORF9GVUxMX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9QVFlTIDEKfCAjZGVmaW5lIEhBVkVfU09D S0VUUyAxCnwgI2RlZmluZSBOVUxMX0RFVklDRSAiL2Rldi9udWxsIgp8ICNkZWZpbmUgU0VQQ0hB UiAnOicKfCAjZGVmaW5lIHN1YnByb2Nlc3NlcyAxCnwgI2RlZmluZSBVU0VSX0ZVTExfTkFNRSBw dy0+cHdfZ2Vjb3MKfCAjZGVmaW5lIERJUkVDVE9SWV9TRVAgJy8nCnwgI2RlZmluZSBJU19ERVZJ Q0VfU0VQKF9jXykgMAp8ICNkZWZpbmUgSVNfRElSRUNUT1JZX1NFUChfY18pICgoX2NfKSA9PSBE SVJFQ1RPUllfU0VQKQp8ICNkZWZpbmUgSVNfQU5ZX1NFUChfY18pIChJU19ESVJFQ1RPUllfU0VQ IChfY18pKQp8ICNkZWZpbmUgSEFWRV9QUk9DRlMgMQp8ICNkZWZpbmUgREVGQVVMVF9TT1VORF9E RVZJQ0UgIi9kZXYvZHNwIgp8ICNkZWZpbmUgSU5URVJSVVBUX0lOUFVUIDEKfCAjZGVmaW5lIE5B UlJPV1BST1RPIDEKfCAjZGVmaW5lIFVOSVg5OF9QVFlTIDEKfCAjZGVmaW5lIFBUWV9JVEVSQVRJ T04gaW50IGk7IGZvciAoaSA9IDA7IGkgPCAxOyBpKyspCnwgI2RlZmluZSBQVFlfVFRZX05BTUVf U1BSSU5URiB7IGNoYXIgKnB0eW5hbWUgPSAwOyBzaWdzZXRfdCBibG9ja2VkOyBzaWdlbXB0eXNl dCAoJmJsb2NrZWQpOyBzaWdhZGRzZXQgKCZibG9ja2VkLCBTSUdDSExEKTsgcHRocmVhZF9zaWdt YXNrIChTSUdfQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKGdyYW50cHQgKGZkKSAhPSAtMSAmJiB1 bmxvY2twdCAoZmQpICE9IC0xKSBwdHluYW1lID0gcHRzbmFtZShmZCk7IHB0aHJlYWRfc2lnbWFz ayAoU0lHX1VOQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKCFwdHluYW1lKSB7IGVtYWNzX2Nsb3Nl IChmZCk7IHJldHVybiAtMTsgfSBzbnByaW50ZiAocHR5X25hbWUsIFBUWV9OQU1FX1NJWkUsICIl cyIsIHB0eW5hbWUpOyB9CnwgI2RlZmluZSBQVFlfT1BFTiBkbyB7IGZkID0gcG9zaXhfb3BlbnB0 IChPX1JEV1IgfCBPX0NMT0VYRUMgfCBPX05PQ1RUWSk7IGlmIChmZCA8IDAgJiYgZXJybm8gPT0g RUlOVkFMKSBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19OT0NUVFkpOyB9IHdoaWxlIChm YWxzZSkKfCAjZGVmaW5lIFBUWV9OQU1FX1NQUklOVEYgLyoqLwp8ICNkZWZpbmUgU0lHTkFMU19W SUFfQ0hBUkFDVEVSUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgR0Nf U0VUSk1QX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfX1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NJ R1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NUQUNLX09WRVJGTE9XX0hBTkRMSU5HIDEKfCAjZGVm aW5lIFVTRyAvKiovCnwgI2RlZmluZSBHTlVfTElOVVggLyoqLwp8ICNkZWZpbmUgVVNBQkxFX0ZJ T05SRUFEIDEKfCAjZGVmaW5lIFVTQUJMRV9TSUdJTyAxCnwgI2RlZmluZSBDT1BZUklHSFQgIkNv cHlyaWdodCAoQykgMjAxNiBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4iCnwgI2RlZmlu ZSBURVJNX0hFQURFUiAieHRlcm0uaCIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR1VSQVRJT04gIng4 Nl82NC11bmtub3duLWxpbnV4LWdudSIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR19PUFRJT05TICIt LXdpdGgteC10b29sa2l0PWx1Y2lkIgp8ICNkZWZpbmUgSEFWRV9YX1dJTkRPV1MgMQp8ICNkZWZp bmUgVVNFX1hfVE9PTEtJVCAxCnwgI2RlZmluZSBVU0VfTFVDSUQgMQp8ICNkZWZpbmUgSEFWRV9Y MTEgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfQVRUUklCVVRFX0FMSUdORUQgMQp8ICNkZWZpbmUg R05VX01BTExPQyAxCnwgI2RlZmluZSBSRUxfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0Ff SCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBIQVZFX1VOU0lHTkVEX0xPTkdf TE9OR19JTlQgMQp8ICNkZWZpbmUgSEFWRV9DOTlfU1RSVE9MRCAxCnwgI2RlZmluZSBIQVZFX0VO VklST05fREVDTCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkRBVEFTWU5DIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9TVFJNT0RFIDAKfCAjZGVmaW5lIExTVEFUX0ZPTExPV1NfU0xBU0hFRF9TWU1MSU5L IDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfTE9OR19P TkxZIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRFTlYgMQp8ICNkZWZpbmUgcmVzdHJpY3QgX19y ZXN0cmljdAp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9NRU1SQ0hSIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTEFSTSAxCnwgI2RlZmluZSBIQVZFX1NJ R1NFVF9UIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfVCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9U TV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fWk9ORSAxCnwgI2RlZmluZSBIQVZFX1RNX0dN VE9GRiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9TVFJUT1VNQVggMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1VUSU1FUyAxCnwgI2RlZmluZSBI QVZFX1NUUlVDVF9VVElNQlVGIDEKfCAjZGVmaW5lIEdFVEdST1VQU19UIGdpZF90CnwgI2RlZmlu ZSBIQVZFX0RFQ0xfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NZU19BQ0xfSCAxCnwg I2RlZmluZSBIQVZFX0FDTF9HRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRkQgMQp8 ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZEIDEK fCAjZGVmaW5lIEhBVkVfQUNMX0ZSRUUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9NT0RFIDEK fCAjZGVmaW5lIEhBVkVfQUNMX0ZST01fVEVYVCAxCnwgI2RlZmluZSBIQVZFX0FDTF9ERUxFVEVf REVGX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRVhURU5ERURfRklMRSAxCnwgI2RlZmluZSBI QVZFX0FDTF9MSUJBQ0xfSCAxCnwgI2RlZmluZSBIQVZFX0FDTF9FTlRSSUVTIDEKfCAjZGVmaW5l IEhBVkVfQUNMX0ZJUlNUX0VOVFJZIDEKfCAjZGVmaW5lIFVTRV9BQ0wgMQp8ICNkZWZpbmUgSEFW RV9BTExPQ0EgMQp8ICNkZWZpbmUgSEFWRV9CWVRFU1dBUF9IIDEKfCAjZGVmaW5lIEhBVkVfQ0xP Q0tfR0VUVElNRSAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX1NFVFRJTUUgMQp8ICNkZWZpbmUgR05V TElCX0NMT1NFX1NUUkVBTSAxCnwgI2RlZmluZSBIQVZFX0RVUDIgMQp8ICNkZWZpbmUgR05VTElC X0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkRPUEVORElSIDEKfCAjZGVmaW5lIEdO VUxJQl9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX19fRlBFTkRJTkcgMQp8ICNkZWZp bmUgR0VUVElNRU9GREFZX1RJTUVaT05FIHN0cnVjdCB0aW1lem9uZQp8ICNkZWZpbmUgSEFWRV9N RU1SQ0hSIDEKfCAjZGVmaW5lIEdOVUxJQl9NS09TVEVNUCAxCnwgI2RlZmluZSBIQVZFX1NUUlVD VF9TVEFUX1NUX0FUSU1fVFZfTlNFQyAxCnwgI2RlZmluZSBUWVBFT0ZfU1RSVUNUX1NUQVRfU1Rf QVRJTV9JU19TVFJVQ1RfVElNRVNQRUMgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5j bHVkZSA8c3lzL3R5cGVzLmg+CnwgICAgICAgICAjaW5jbHVkZSA8c3lzL3N0YXQuaD4KfCAKfCBp bnQKfCBtYWluICgpCnwgewp8IHN0YXRpYyBzdHJ1Y3Qgc3RhdCBhY19hZ2dyOwp8IGlmIChzaXpl b2YgYWNfYWdnci5zdF9iaXJ0aHRpbWVuc2VjKQp8IHJldHVybiAwOwp8ICAgOwp8ICAgcmV0dXJu IDA7CnwgfQpjb25maWd1cmU6MjgxMDQ6IHJlc3VsdDogbm8KY29uZmlndXJlOjI4MTE1OiBjaGVj a2luZyBmb3Igc3RydWN0IHN0YXQuc3RfYmlydGh0aW0udHZfbnNlYwpjb25maWd1cmU6MjgxMTU6 IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6IEluIGZ1bmN0aW9u ICdtYWluJzoKY29uZnRlc3QuYzozMTE6MTI6IGVycm9yOiAnc3RydWN0IHN0YXQnIGhhcyBubyBt ZW1iZXIgbmFtZWQgJ3N0X2JpcnRodGltJzsgZGlkIHlvdSBtZWFuICdzdF9hdGltJz8KIGlmIChh Y19hZ2dyLnN0X2JpcnRodGltLnR2X25zZWMpCiAgICAgICAgICAgIF4KY29uZmlndXJlOjI4MTE1 OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAq Lwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1RB Uk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyNS4xIgp8ICNkZWZpbmUg UEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAyNS4xIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBP UlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICJodHRwOi8v d3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgUEFDS0FHRSAiZW1hY3MiCnwg I2RlZmluZSBWRVJTSU9OICIyNS4xIgp8ICNkZWZpbmUgTUFJTF9VU0VfUE9QIDEKfCAjZGVmaW5l IEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfVFpTRVQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hN T0QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKfCAjZGVmaW5lIEhBVkVfRkFDQ0VTU0FU IDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9GRE9QRU5ESVIgMQp8ICNk ZWZpbmUgSEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMgMQp8ICNkZWZpbmUgSEFW RV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwgI2RlZmluZSBIQVZFX01L T1NURU1QIDEKfCAjZGVmaW5lIEhBVkVfUElQRTIgMQp8ICNkZWZpbmUgSEFWRV9QU0VMRUNUIDEK fCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFWRV9TVFJUT0lNQVggMQp8ICNk ZWZpbmUgSEFWRV9TVFJUT1VNQVggMQp8ICNkZWZpbmUgSEFWRV9TWU1MSU5LIDEKfCAjZGVmaW5l IEhBVkVfTE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9USU1FR00gMQp8ICNkZWZpbmUgSEFW RV9GVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FU0FUIDEKfCAjZGVmaW5lIEhBVkVfRlVU SU1FTlMgMQp8ICNkZWZpbmUgSEFWRV9VVElNRU5TQVQgMQp8ICNkZWZpbmUgSEFWRV9MVVRJTUVT IDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NFQ1VSRV9H RVRFTlYgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVT X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0gg MQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAj ZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2Rl ZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUg X19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJ Tl9DX1NPVVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBfX1VTRV9NSU5H V19BTlNJX1NURElPIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAxCnwgI2Rl ZmluZSBfVEFOREVNX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX1VTRV82NF9CSVRfSU5PREUg MQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAjZGVmaW5lIEhBVkVfU1lTX1NP VU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2RlZmluZSBIQVZFX1NPVU5EIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1BUWV9IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9I IDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1QX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmlu ZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUg SEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwgI2RlZmluZSBIQVZF X0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAxCnwgI2RlZmluZSBIQVZFX1NU RElPX0VYVF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf VElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9I IDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1Rf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9VVElNRV9IIDEK fCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfTElOVVgzMiAxCnwgI2RlZmluZSBIQVZFX0xJTlVY X1NZU0lORk8gMQp8ICNkZWZpbmUgTElOVVhfU1lTSU5GT19VTklUIDEKfCAjZGVmaW5lIEhBVkVf VEVSTV9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfU1lTX1NJR0xJU1QgMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhB VkVfTkVUX0lGX0ggMQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0ggMQp8ICNkZWZpbmUgSEFWRV9T VFJVQ1RfSUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9I V0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX05FVE1BU0sgMQp8ICNkZWZp bmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVD VF9JRlJFUV9JRlJfQUREUiAxCnwgI2RlZmluZSBIQVZFX0xPTkdfRklMRV9OQU1FUyAxCnwgI2Rl ZmluZSBIQVZFX1NZU19WTElNSVRfSCAxCnwgI2RlZmluZSBIQVZFX0RBVEFfU1RBUlQgMQp8ICNk ZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX01NQVAgMQp8ICNkZWZpbmUg SEFWRV9QVEhSRUFEIDEKfCAjZGVmaW5lIEhBVkVfWEtCIDEKfCAjZGVmaW5lIEhBVkVfWFJNU0VU REFUQUJBU0UgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOUkVTT1VSQ0VTVFJJTkcgMQp8ICNkZWZp bmUgSEFWRV9YU0NSRUVOTlVNQkVST0ZTQ1JFRU4gMQp8ICNkZWZpbmUgSEFWRV9YMTFSNiAxCnwg I2RlZmluZSBIQVZFX1hfSTE4TiAxCnwgI2RlZmluZSBIQVZFX1gxMVI2X1hJTSAxCnwgI2RlZmlu ZSBIQVZFX1JTVkcgMQp8ICNkZWZpbmUgSEFWRV9JTUFHRU1BR0lDSyAxCnwgI2RlZmluZSBIQVZF X01BR0lDS0VYUE9SVElNQUdFUElYRUxTIDEKfCAjZGVmaW5lIEhBVkVfTUFHSUNLTUVSR0VJTUFH RUxBWUVSUyAxCnwgI2RlZmluZSBIQVZFX0RCVVMgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1dBVENI X0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19UWVBFX0lTX1ZBTElEIDEKfCAjZGVm aW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFM SURBVEVfUEFUSCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfSU5URVJGQUNFIDEKfCAj ZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIgMQp8ICNkZWZpbmUgSEFWRV9HU0VUVElO R1MgMQp8ICNkZWZpbmUgSEFWRV9HQ09ORiAxCnwgI2RlZmluZSBIQVZFX0dOVVRMUyAxCnwgI2Rl ZmluZSBIQVZFX0dOVVRMUzMgMQp8ICNkZWZpbmUgSEFWRV9JTk9USUZZIDEKfCAjZGVmaW5lIFVT RV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBIQVZFX1gxMVhUUjYgMQp8ICNkZWZpbmUgVVNFX1RP T0xLSVRfU0NST0xMX0JBUlMgMQp8ICNkZWZpbmUgSEFWRV9YSU0gMQp8ICNkZWZpbmUgVVNFX1hJ TSAxCnwgI2RlZmluZSBYUmVnaXN0ZXJJTUluc3RhbnRpYXRlQ2FsbGJhY2tfYXJnNiBYUG9pbnRl cgp8ICNkZWZpbmUgSEFWRV9YRlQgMQp8ICNkZWZpbmUgSEFWRV9GUkVFVFlQRSAxCnwgI2RlZmlu ZSBIQVZFX0xJQk9URiAxCnwgI2RlZmluZSBIQVZFX09URl9HRVRfVkFSSUFUSU9OX0dMWVBIUyAx CnwgI2RlZmluZSBIQVZFX00xN05fRkxUIDEKfCAjZGVmaW5lIFVTRV9YQ0IgMQp8ICNkZWZpbmUg SEFWRV9YUE0gMQp8ICNkZWZpbmUgSEFWRV9KUEVHIDEKfCAjZGVmaW5lIEhBVkVfWkxJQiAxCnwg I2RlZmluZSBIQVZFX1BORyAxCnwgI2RlZmluZSBIQVZFX1RJRkYgMQp8ICNkZWZpbmUgSEFWRV9H SUYgMQp8ICNkZWZpbmUgSEFWRV9HUE0gMQp8ICNkZWZpbmUgSEFWRV9YX1NNIDEKfCAjZGVmaW5l IEhBVkVfWFJBTkRSIDEKfCAjZGVmaW5lIEhBVkVfWElORVJBTUEgMQp8ICNkZWZpbmUgSEFWRV9Y RklYRVMgMQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwyIDEKfCAjZGVmaW5lIEhBVkVfSF9FUlJOTyAx CnwgI2RlZmluZSBNQUlMX1VTRV9GTE9DSyAxCnwgI2RlZmluZSBIQVZFX0FDQ0VQVDQgMQp8ICNk ZWZpbmUgSEFWRV9GQ0hESVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAxCnwgI2RlZmlu ZSBIQVZFX0dFVFJVU0FHRSAxCnwgI2RlZmluZSBIQVZFX0dFVF9DVVJSRU5UX0RJUl9OQU1FIDEK fCAjZGVmaW5lIEhBVkVfTFJBTkQ0OCAxCnwgI2RlZmluZSBIQVZFX1JBTkRPTSAxCnwgI2RlZmlu ZSBIQVZFX1JJTlQgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9HRVRQ QUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX05FV0xP Q0FMRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NFVFJMSU1J VCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5lIEhBVkVfR0VUQUREUklORk8g MQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJTSUdO QUwgMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9TRU5EVE8gMQp8 ICNkZWZpbmUgSEFWRV9SRUNWRlJPTSAxCnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tOQU1FIDEKfCAj ZGVmaW5lIEhBVkVfR0VUUEVFUk5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRJRkFERFJTIDEKfCAj ZGVmaW5lIEhBVkVfRlJFRUlGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9HQUlfU1RSRVJST1IgMQp8 ICNkZWZpbmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFdFTlQgMQp8ICNkZWZpbmUg SEFWRV9FTkRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0dFVEdSRU5UIDEKfCAjZGVmaW5lIEhBVkVf RU5ER1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9DRk1BS0VSQVcgMQp8ICNkZWZpbmUgSEFWRV9DRlNF VFNQRUVEIDEKfCAjZGVmaW5lIEhBVkVfQ09QWVNJR04gMQp8ICNkZWZpbmUgSEFWRV9fX0VYRUNV VEFCTEVfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9MT0cyIDEKfCAjZGVmaW5lIEhBVkVfQUxJR05F RF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9VTldJTkRfSU5JVCAxCnwgI2RlZmlu ZSBIQVZFX0ZTRUVLTyAxCnwgI2RlZmluZSBIQVZFX0dSQU5UUFQgMQp8ICNkZWZpbmUgSEFWRV9H RVRQVCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX09QRU5QVCAxCnwgI2RlZmluZSBURVJNSU5GTyAx CnwgI2RlZmluZSBIQVZFX1RJTUVSRkQgMQp8ICNkZWZpbmUgSEFWRV9SRVNfSU5JVCAxCnwgI2Rl ZmluZSBIQVZFX1NUUlVDVF9VTklQQUlSX1VOSUNPREUgMQp8ICNkZWZpbmUgSEFWRV9JTkVUX1NP Q0tFVFMgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfVkZPUksgMQp8ICNk ZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19GT1JLIDEK fCAjZGVmaW5lIEhBVkVfU05QUklOVEYgMQp8ICNkZWZpbmUgSEFWRV9HTElCIDEKfCAjZGVmaW5l IEhBVkVfTEFOR0lORk9fQ09ERVNFVCAxCnwgI2RlZmluZSBIQVZFX01CU1RBVEVfVCAxCnwgI2Rl ZmluZSBBTVBFUlNBTkRfRlVMTF9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUFRZUyAxCnwgI2RlZmlu ZSBIQVZFX1NPQ0tFVFMgMQp8ICNkZWZpbmUgTlVMTF9ERVZJQ0UgIi9kZXYvbnVsbCIKfCAjZGVm aW5lIFNFUENIQVIgJzonCnwgI2RlZmluZSBzdWJwcm9jZXNzZXMgMQp8ICNkZWZpbmUgVVNFUl9G VUxMX05BTUUgcHctPnB3X2dlY29zCnwgI2RlZmluZSBESVJFQ1RPUllfU0VQICcvJwp8ICNkZWZp bmUgSVNfREVWSUNFX1NFUChfY18pIDAKfCAjZGVmaW5lIElTX0RJUkVDVE9SWV9TRVAoX2NfKSAo KF9jXykgPT0gRElSRUNUT1JZX1NFUCkKfCAjZGVmaW5lIElTX0FOWV9TRVAoX2NfKSAoSVNfRElS RUNUT1JZX1NFUCAoX2NfKSkKfCAjZGVmaW5lIEhBVkVfUFJPQ0ZTIDEKfCAjZGVmaW5lIERFRkFV TFRfU09VTkRfREVWSUNFICIvZGV2L2RzcCIKfCAjZGVmaW5lIElOVEVSUlVQVF9JTlBVVCAxCnwg I2RlZmluZSBOQVJST1dQUk9UTyAxCnwgI2RlZmluZSBVTklYOThfUFRZUyAxCnwgI2RlZmluZSBQ VFlfSVRFUkFUSU9OIGludCBpOyBmb3IgKGkgPSAwOyBpIDwgMTsgaSsrKQp8ICNkZWZpbmUgUFRZ X1RUWV9OQU1FX1NQUklOVEYgeyBjaGFyICpwdHluYW1lID0gMDsgc2lnc2V0X3QgYmxvY2tlZDsg c2lnZW1wdHlzZXQgKCZibG9ja2VkKTsgc2lnYWRkc2V0ICgmYmxvY2tlZCwgU0lHQ0hMRCk7IHB0 aHJlYWRfc2lnbWFzayAoU0lHX0JMT0NLLCAmYmxvY2tlZCwgMCk7IGlmIChncmFudHB0IChmZCkg IT0gLTEgJiYgdW5sb2NrcHQgKGZkKSAhPSAtMSkgcHR5bmFtZSA9IHB0c25hbWUoZmQpOyBwdGhy ZWFkX3NpZ21hc2sgKFNJR19VTkJMT0NLLCAmYmxvY2tlZCwgMCk7IGlmICghcHR5bmFtZSkgeyBl bWFjc19jbG9zZSAoZmQpOyByZXR1cm4gLTE7IH0gc25wcmludGYgKHB0eV9uYW1lLCBQVFlfTkFN RV9TSVpFLCAiJXMiLCBwdHluYW1lKTsgfQp8ICNkZWZpbmUgUFRZX09QRU4gZG8geyBmZCA9IHBv c2l4X29wZW5wdCAoT19SRFdSIHwgT19DTE9FWEVDIHwgT19OT0NUVFkpOyBpZiAoZmQgPCAwICYm IGVycm5vID09IEVJTlZBTCkgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9fTk9DVFRZKTsg fSB3aGlsZSAoZmFsc2UpCnwgI2RlZmluZSBQVFlfTkFNRV9TUFJJTlRGIC8qKi8KfCAjZGVmaW5l IFNJR05BTFNfVklBX0NIQVJBQ1RFUlMgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAj ZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBIQVZFX19TRVRKTVAgMQp8ICNkZWZp bmUgSEFWRV9TSUdTRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TVEFDS19PVkVSRkxPV19IQU5ETElO RyAxCnwgI2RlZmluZSBVU0cgLyoqLwp8ICNkZWZpbmUgR05VX0xJTlVYIC8qKi8KfCAjZGVmaW5l IFVTQUJMRV9GSU9OUkVBRCAxCnwgI2RlZmluZSBVU0FCTEVfU0lHSU8gMQp8ICNkZWZpbmUgQ09Q WVJJR0hUICJDb3B5cmlnaHQgKEMpIDIwMTYgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMu Igp8ICNkZWZpbmUgVEVSTV9IRUFERVIgInh0ZXJtLmgiCnwgI2RlZmluZSBFTUFDU19DT05GSUdV UkFUSU9OICJ4ODZfNjQtdW5rbm93bi1saW51eC1nbnUiCnwgI2RlZmluZSBFTUFDU19DT05GSUdf T1BUSU9OUyAiLS13aXRoLXgtdG9vbGtpdD1sdWNpZCIKfCAjZGVmaW5lIEhBVkVfWF9XSU5ET1dT IDEKfCAjZGVmaW5lIFVTRV9YX1RPT0xLSVQgMQp8ICNkZWZpbmUgVVNFX0xVQ0lEIDEKfCAjZGVm aW5lIEhBVkVfWDExIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0FUVFJJQlVURV9BTElHTkVEIDEK fCAjZGVmaW5lIEdOVV9NQUxMT0MgMQp8ICNkZWZpbmUgUkVMX0FMTE9DIDEKfCAjZGVmaW5lIEhB VkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgSEFWRV9VTlNJ R05FRF9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfQzk5X1NUUlRPTEQgMQp8ICNkZWZp bmUgSEFWRV9FTlZJUk9OX0RFQ0wgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZEQVRBU1lOQyAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfU1RSTU9ERSAwCnwgI2RlZmluZSBMU1RBVF9GT0xMT1dTX1NMQVNI RURfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VU T1BUX0xPTkdfT05MWSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VURU5WIDEKfCAjZGVmaW5lIHJl c3RyaWN0IF9fcmVzdHJpY3QKfCAjZGVmaW5lIEhBVkVfTE9OR19MT05HX0lOVCAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfTUVNUkNIUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfQUxBUk0gMQp8ICNkZWZp bmUgSEFWRV9TSUdTRVRfVCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX1QgMQp8ICNkZWZpbmUgSEFW RV9TVFJVQ1RfVE1fVE1fWk9ORSAxCnwgI2RlZmluZSBIQVZFX1RNX1pPTkUgMQp8ICNkZWZpbmUg SEFWRV9UTV9HTVRPRkYgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUlRPSU1BWCAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfU1RSVE9VTUFYIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19VVElNRVMgMQp8 ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVVRJTUJVRiAxCnwgI2RlZmluZSBHRVRHUk9VUFNfVCBnaWRf dAp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TWVNf QUNMX0ggMQp8ICNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xf R0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX1NFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNM X1NFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUkVFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZS T01fTU9ERSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX1RFWFQgMQp8ICNkZWZpbmUgSEFWRV9B Q0xfREVMRVRFX0RFRl9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VYVEVOREVEX0ZJTEUgMQp8 ICNkZWZpbmUgSEFWRV9BQ0xfTElCQUNMX0ggMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRU5UUklFUyAx CnwgI2RlZmluZSBIQVZFX0FDTF9GSVJTVF9FTlRSWSAxCnwgI2RlZmluZSBVU0VfQUNMIDEKfCAj ZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfQllURVNXQVBfSCAxCnwgI2RlZmlu ZSBIQVZFX0NMT0NLX0dFVFRJTUUgMQp8ICNkZWZpbmUgSEFWRV9DTE9DS19TRVRUSU1FIDEKfCAj ZGVmaW5lIEdOVUxJQl9DTE9TRV9TVFJFQU0gMQp8ICNkZWZpbmUgSEFWRV9EVVAyIDEKfCAjZGVm aW5lIEdOVUxJQl9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZET1BFTkRJUiAxCnwg I2RlZmluZSBHTlVMSUJfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9fX0ZQRU5ESU5H IDEKfCAjZGVmaW5lIEdFVFRJTUVPRkRBWV9USU1FWk9ORSBzdHJ1Y3QgdGltZXpvbmUKfCAjZGVm aW5lIEhBVkVfTUVNUkNIUiAxCnwgI2RlZmluZSBHTlVMSUJfTUtPU1RFTVAgMQp8ICNkZWZpbmUg SEFWRV9TVFJVQ1RfU1RBVF9TVF9BVElNX1RWX05TRUMgMQp8ICNkZWZpbmUgVFlQRU9GX1NUUlVD VF9TVEFUX1NUX0FUSU1fSVNfU1RSVUNUX1RJTUVTUEVDIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4g ICovCnwgI2luY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICAgICAgICAgICAjaW5jbHVkZSA8c3lzL3N0 YXQuaD4KfCAKfCBpbnQKfCBtYWluICgpCnwgewp8IHN0YXRpYyBzdHJ1Y3Qgc3RhdCBhY19hZ2dy Owp8IGlmIChhY19hZ2dyLnN0X2JpcnRodGltLnR2X25zZWMpCnwgcmV0dXJuIDA7CnwgICA7Cnwg ICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToyODExNTogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRl c3QuYyA+JjUKY29uZnRlc3QuYzogSW4gZnVuY3Rpb24gJ21haW4nOgpjb25mdGVzdC5jOjMxMTox OTogZXJyb3I6ICdzdHJ1Y3Qgc3RhdCcgaGFzIG5vIG1lbWJlciBuYW1lZCAnc3RfYmlydGh0aW0n OyBkaWQgeW91IG1lYW4gJ3N0X2F0aW0nPwogaWYgKHNpemVvZiBhY19hZ2dyLnN0X2JpcnRodGlt LnR2X25zZWMpCiAgICAgICAgICAgICAgICAgICBeCmNvbmZpZ3VyZToyODExNTogJD8gPSAxCmNv bmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5l IFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJlbWFj cyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMjUuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RS SU5HICJHTlUgRW1hY3MgMjUuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ251 LWVtYWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0cDovL3d3dy5nbnUub3Jn L3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIFBBQ0tBR0UgImVtYWNzIgp8ICNkZWZpbmUgVkVS U0lPTiAiMjUuMSIKfCAjZGVmaW5lIE1BSUxfVVNFX1BPUCAxCnwgI2RlZmluZSBIQVZFX1BVVEVO ViAxCnwgI2RlZmluZSBIQVZFX1RaU0VUIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVm aW5lIEhBVkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmlu ZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVf RlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9G REFZIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9NS09TVEVNUCAxCnwg I2RlZmluZSBIQVZFX1BJUEUyIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2RlZmluZSBI QVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVf U1RSVE9VTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FM VElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfVElNRUdNIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FUyAx CnwgI2RlZmluZSBIQVZFX0ZVVElNRVNBVCAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRU5TIDEKfCAj ZGVmaW5lIEhBVkVfVVRJTUVOU0FUIDEKfCAjZGVmaW5lIEhBVkVfTFVUSU1FUyAxCnwgI2RlZmlu ZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRUNVUkVfR0VURU5WIDEKfCAj ZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5l IEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZF X1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9T VERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9O U19fIDEKfCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0Ug MQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19VU0VfTUlOR1dfQU5TSV9TVERJ TyAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX1RBTkRF TV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9VU0VfNjRfQklUX0lOT0RFIDEKfCAjZGVmaW5l IFNZU1RFTV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAx CnwgI2RlZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwgI2RlZmluZSBI QVZFX1NZU19TWVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9QVFlfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmlu ZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklT VERfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVB RF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAx CnwgI2RlZmluZSBIQVZFX0VYRUNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJT19FWFRfSCAx CnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwg I2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmlu ZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVfSCAxCnwgI2RlZmluZSBI QVZFX1BFUlNPTkFMSVRZX0xJTlVYMzIgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEK fCAjZGVmaW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAxCnwg I2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NZU19TSUdM SVNUIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX05FVF9JRl9I IDEKfCAjZGVmaW5lIEhBVkVfSUZBRERSU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVR X0lGUl9GTEFHUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfSFdBRERSIDEKfCAj ZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9ORVRNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RS VUNUX0lGUkVRX0lGUl9CUk9BREFERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZS X0FERFIgMQp8ICNkZWZpbmUgSEFWRV9MT05HX0ZJTEVfTkFNRVMgMQp8ICNkZWZpbmUgSEFWRV9T WVNfVkxJTUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9EQVRBX1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVf R0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9NTUFQIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVB RCAxCnwgI2RlZmluZSBIQVZFX1hLQiAxCnwgI2RlZmluZSBIQVZFX1hSTVNFVERBVEFCQVNFIDEK fCAjZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RSSU5HIDEKfCAjZGVmaW5lIEhBVkVfWFND UkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhBVkVfWDExUjYgMQp8ICNkZWZpbmUgSEFW RV9YX0kxOE4gMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9YSU0gMQp8ICNkZWZpbmUgSEFWRV9SU1ZH IDEKfCAjZGVmaW5lIEhBVkVfSU1BR0VNQUdJQ0sgMQp8ICNkZWZpbmUgSEFWRV9NQUdJQ0tFWFBP UlRJTUFHRVBJWEVMUyAxCnwgI2RlZmluZSBIQVZFX01BR0lDS01FUkdFSU1BR0VMQVlFUlMgMQp8 ICNkZWZpbmUgSEFWRV9EQlVTIDEKfCAjZGVmaW5lIEhBVkVfREJVU19XQVRDSF9HRVRfVU5JWF9G RCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVFlQRV9JU19WQUxJRCAxCnwgI2RlZmluZSBIQVZFX0RC VVNfVkFMSURBVEVfQlVTX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX1BBVEgg MQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0lOVEVSRkFDRSAxCnwgI2RlZmluZSBIQVZF X0RCVVNfVkFMSURBVEVfTUVNQkVSIDEKfCAjZGVmaW5lIEhBVkVfR1NFVFRJTkdTIDEKfCAjZGVm aW5lIEhBVkVfR0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9HTlVUTFMgMQp8ICNkZWZpbmUgSEFWRV9H TlVUTFMzIDEKfCAjZGVmaW5lIEhBVkVfSU5PVElGWSAxCnwgI2RlZmluZSBVU0VfRklMRV9OT1RJ RlkgMQp8ICNkZWZpbmUgSEFWRV9YMTFYVFI2IDEKfCAjZGVmaW5lIFVTRV9UT09MS0lUX1NDUk9M TF9CQVJTIDEKfCAjZGVmaW5lIEhBVkVfWElNIDEKfCAjZGVmaW5lIFVTRV9YSU0gMQp8ICNkZWZp bmUgWFJlZ2lzdGVySU1JbnN0YW50aWF0ZUNhbGxiYWNrX2FyZzYgWFBvaW50ZXIKfCAjZGVmaW5l IEhBVkVfWEZUIDEKfCAjZGVmaW5lIEhBVkVfRlJFRVRZUEUgMQp8ICNkZWZpbmUgSEFWRV9MSUJP VEYgMQp8ICNkZWZpbmUgSEFWRV9PVEZfR0VUX1ZBUklBVElPTl9HTFlQSFMgMQp8ICNkZWZpbmUg SEFWRV9NMTdOX0ZMVCAxCnwgI2RlZmluZSBVU0VfWENCIDEKfCAjZGVmaW5lIEhBVkVfWFBNIDEK fCAjZGVmaW5lIEhBVkVfSlBFRyAxCnwgI2RlZmluZSBIQVZFX1pMSUIgMQp8ICNkZWZpbmUgSEFW RV9QTkcgMQp8ICNkZWZpbmUgSEFWRV9USUZGIDEKfCAjZGVmaW5lIEhBVkVfR0lGIDEKfCAjZGVm aW5lIEhBVkVfR1BNIDEKfCAjZGVmaW5lIEhBVkVfWF9TTSAxCnwgI2RlZmluZSBIQVZFX1hSQU5E UiAxCnwgI2RlZmluZSBIQVZFX1hJTkVSQU1BIDEKfCAjZGVmaW5lIEhBVkVfWEZJWEVTIDEKfCAj ZGVmaW5lIEhBVkVfTElCWE1MMiAxCnwgI2RlZmluZSBIQVZFX0hfRVJSTk8gMQp8ICNkZWZpbmUg TUFJTF9VU0VfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9BQ0NFUFQ0IDEKfCAjZGVmaW5lIEhBVkVf RkNIRElSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRS VVNBR0UgMQp8ICNkZWZpbmUgSEFWRV9HRVRfQ1VSUkVOVF9ESVJfTkFNRSAxCnwgI2RlZmluZSBI QVZFX0xSQU5ENDggMQp8ICNkZWZpbmUgSEFWRV9SQU5ET00gMQp8ICNkZWZpbmUgSEFWRV9SSU5U IDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8 ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9ORVdMT0NBTEUgMQp8ICNk ZWZpbmUgSEFWRV9HRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8ICNkZWZp bmUgSEFWRV9TSFVURE9XTiAxCnwgI2RlZmluZSBIQVZFX0dFVEFERFJJTkZPIDEKfCAjZGVmaW5l IEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSU0lHTkFMIDEKfCAjZGVm aW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfU0VORFRPIDEKfCAjZGVmaW5lIEhB VkVfUkVDVkZST00gMQp8ICNkZWZpbmUgSEFWRV9HRVRTT0NLTkFNRSAxCnwgI2RlZmluZSBIQVZF X0dFVFBFRVJOQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUSUZBRERSUyAxCnwgI2RlZmluZSBIQVZF X0ZSRUVJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfR0FJX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhB VkVfU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EUFdF TlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0VOREdSRU5UIDEK fCAjZGVmaW5lIEhBVkVfQ0ZNQUtFUkFXIDEKfCAjZGVmaW5lIEhBVkVfQ0ZTRVRTUEVFRCAxCnwg I2RlZmluZSBIQVZFX0NPUFlTSUdOIDEKfCAjZGVmaW5lIEhBVkVfX19FWEVDVVRBQkxFX1NUQVJU IDEKfCAjZGVmaW5lIEhBVkVfTE9HMiAxCnwgI2RlZmluZSBIQVZFX0FMSUdORURfQUxMT0MgMQp8 ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fVU5XSU5EX0lOSVQgMQp8ICNkZWZpbmUgSEFWRV9GU0VF S08gMQp8ICNkZWZpbmUgSEFWRV9HUkFOVFBUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFQgMQp8ICNk ZWZpbmUgSEFWRV9QT1NJWF9PUEVOUFQgMQp8ICNkZWZpbmUgVEVSTUlORk8gMQp8ICNkZWZpbmUg SEFWRV9USU1FUkZEIDEKfCAjZGVmaW5lIEhBVkVfUkVTX0lOSVQgMQp8ICNkZWZpbmUgSEFWRV9T VFJVQ1RfVU5JUEFJUl9VTklDT0RFIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9TT0NLRVRTIDEKfCAj ZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVf V09SS0lOR19WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfRk9SSyAxCnwgI2RlZmluZSBI QVZFX1NOUFJJTlRGIDEKfCAjZGVmaW5lIEhBVkVfR0xJQiAxCnwgI2RlZmluZSBIQVZFX0xBTkdJ TkZPX0NPREVTRVQgMQp8ICNkZWZpbmUgSEFWRV9NQlNUQVRFX1QgMQp8ICNkZWZpbmUgQU1QRVJT QU5EX0ZVTExfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1BUWVMgMQp8ICNkZWZpbmUgSEFWRV9TT0NL RVRTIDEKfCAjZGVmaW5lIE5VTExfREVWSUNFICIvZGV2L251bGwiCnwgI2RlZmluZSBTRVBDSEFS ICc6Jwp8ICNkZWZpbmUgc3VicHJvY2Vzc2VzIDEKfCAjZGVmaW5lIFVTRVJfRlVMTF9OQU1FIHB3 LT5wd19nZWNvcwp8ICNkZWZpbmUgRElSRUNUT1JZX1NFUCAnLycKfCAjZGVmaW5lIElTX0RFVklD RV9TRVAoX2NfKSAwCnwgI2RlZmluZSBJU19ESVJFQ1RPUllfU0VQKF9jXykgKChfY18pID09IERJ UkVDVE9SWV9TRVApCnwgI2RlZmluZSBJU19BTllfU0VQKF9jXykgKElTX0RJUkVDVE9SWV9TRVAg KF9jXykpCnwgI2RlZmluZSBIQVZFX1BST0NGUyAxCnwgI2RlZmluZSBERUZBVUxUX1NPVU5EX0RF VklDRSAiL2Rldi9kc3AiCnwgI2RlZmluZSBJTlRFUlJVUFRfSU5QVVQgMQp8ICNkZWZpbmUgTkFS Uk9XUFJPVE8gMQp8ICNkZWZpbmUgVU5JWDk4X1BUWVMgMQp8ICNkZWZpbmUgUFRZX0lURVJBVElP TiBpbnQgaTsgZm9yIChpID0gMDsgaSA8IDE7IGkrKykKfCAjZGVmaW5lIFBUWV9UVFlfTkFNRV9T UFJJTlRGIHsgY2hhciAqcHR5bmFtZSA9IDA7IHNpZ3NldF90IGJsb2NrZWQ7IHNpZ2VtcHR5c2V0 ICgmYmxvY2tlZCk7IHNpZ2FkZHNldCAoJmJsb2NrZWQsIFNJR0NITEQpOyBwdGhyZWFkX3NpZ21h c2sgKFNJR19CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoZ3JhbnRwdCAoZmQpICE9IC0xICYmIHVu bG9ja3B0IChmZCkgIT0gLTEpIHB0eW5hbWUgPSBwdHNuYW1lKGZkKTsgcHRocmVhZF9zaWdtYXNr IChTSUdfVU5CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoIXB0eW5hbWUpIHsgZW1hY3NfY2xvc2Ug KGZkKTsgcmV0dXJuIC0xOyB9IHNucHJpbnRmIChwdHlfbmFtZSwgUFRZX05BTUVfU0laRSwgIiVz IiwgcHR5bmFtZSk7IH0KfCAjZGVmaW5lIFBUWV9PUEVOIGRvIHsgZmQgPSBwb3NpeF9vcGVucHQg KE9fUkRXUiB8IE9fQ0xPRVhFQyB8IE9fTk9DVFRZKTsgaWYgKGZkIDwgMCAmJiBlcnJubyA9PSBF SU5WQUwpIGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX05PQ1RUWSk7IH0gd2hpbGUgKGZh bHNlKQp8ICNkZWZpbmUgUFRZX05BTUVfU1BSSU5URiAvKiovCnwgI2RlZmluZSBTSUdOQUxTX1ZJ QV9DSEFSQUNURVJTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBHQ19T RVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgSEFWRV9fU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU0lH U0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU1RBQ0tfT1ZFUkZMT1dfSEFORExJTkcgMQp8ICNkZWZp bmUgVVNHIC8qKi8KfCAjZGVmaW5lIEdOVV9MSU5VWCAvKiovCnwgI2RlZmluZSBVU0FCTEVfRklP TlJFQUQgMQp8ICNkZWZpbmUgVVNBQkxFX1NJR0lPIDEKfCAjZGVmaW5lIENPUFlSSUdIVCAiQ29w eXJpZ2h0IChDKSAyMDE2IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiIKfCAjZGVmaW5l IFRFUk1fSEVBREVSICJ4dGVybS5oIgp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHVVJBVElPTiAieDg2 XzY0LXVua25vd24tbGludXgtZ251Igp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHX09QVElPTlMgIi0t d2l0aC14LXRvb2xraXQ9bHVjaWQiCnwgI2RlZmluZSBIQVZFX1hfV0lORE9XUyAxCnwgI2RlZmlu ZSBVU0VfWF9UT09MS0lUIDEKfCAjZGVmaW5lIFVTRV9MVUNJRCAxCnwgI2RlZmluZSBIQVZFX1gx MSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9BVFRSSUJVVEVfQUxJR05FRCAxCnwgI2RlZmluZSBH TlVfTUFMTE9DIDEKfCAjZGVmaW5lIFJFTF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQV9I IDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfVU5TSUdORURfTE9OR19M T05HX0lOVCAxCnwgI2RlZmluZSBIQVZFX0M5OV9TVFJUT0xEIDEKfCAjZGVmaW5lIEhBVkVfRU5W SVJPTl9ERUNMIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GREFUQVNZTkMgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX1NUUk1PREUgMAp8ICNkZWZpbmUgTFNUQVRfRk9MTE9XU19TTEFTSEVEX1NZTUxJTksg MQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9MT05HX09O TFkgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVEVOViAxCnwgI2RlZmluZSByZXN0cmljdCBfX3Jl c3RyaWN0CnwgI2RlZmluZSBIQVZFX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X01FTVJDSFIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0FMQVJNIDEKfCAjZGVmaW5lIEhBVkVfU0lH U0VUX1QgMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9UIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1RN X1RNX1pPTkUgMQp8ICNkZWZpbmUgSEFWRV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fR01U T0ZGIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJUT0lNQVggMQp8ICNkZWZpbmUgSEFWRV9ERUNM X1NUUlRPVU1BWCAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVVRJTUVTIDEKfCAjZGVmaW5lIEhB VkVfU1RSVUNUX1VUSU1CVUYgMQp8ICNkZWZpbmUgR0VUR1JPVVBTX1QgZ2lkX3QKfCAjZGVmaW5l IEhBVkVfREVDTF9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0FDTF9IIDEKfCAj ZGVmaW5lIEhBVkVfQUNMX0dFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GRCAxCnwg I2RlZmluZSBIQVZFX0FDTF9TRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRkQgMQp8 ICNkZWZpbmUgSEFWRV9BQ0xfRlJFRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX01PREUgMQp8 ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9URVhUIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0RFTEVURV9E RUZfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9FWFRFTkRFRF9GSUxFIDEKfCAjZGVmaW5lIEhB VkVfQUNMX0xJQkFDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VOVFJJRVMgMQp8ICNkZWZpbmUg SEFWRV9BQ0xfRklSU1RfRU5UUlkgMQp8ICNkZWZpbmUgVVNFX0FDTCAxCnwgI2RlZmluZSBIQVZF X0FMTE9DQSAxCnwgI2RlZmluZSBIQVZFX0JZVEVTV0FQX0ggMQp8ICNkZWZpbmUgSEFWRV9DTE9D S19HRVRUSU1FIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tfU0VUVElNRSAxCnwgI2RlZmluZSBHTlVM SUJfQ0xPU0VfU1RSRUFNIDEKfCAjZGVmaW5lIEhBVkVfRFVQMiAxCnwgI2RlZmluZSBHTlVMSUJf RkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgR05V TElCX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfX19GUEVORElORyAxCnwgI2RlZmlu ZSBHRVRUSU1FT0ZEQVlfVElNRVpPTkUgc3RydWN0IHRpbWV6b25lCnwgI2RlZmluZSBIQVZFX01F TVJDSFIgMQp8ICNkZWZpbmUgR05VTElCX01LT1NURU1QIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNU X1NUQVRfU1RfQVRJTV9UVl9OU0VDIDEKfCAjZGVmaW5lIFRZUEVPRl9TVFJVQ1RfU1RBVF9TVF9B VElNX0lTX1NUUlVDVF9USU1FU1BFQyAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNs dWRlIDxzeXMvdHlwZXMuaD4KfCAgICAgICAgICAgI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CnwgCnwg aW50CnwgbWFpbiAoKQp8IHsKfCBzdGF0aWMgc3RydWN0IHN0YXQgYWNfYWdncjsKfCBpZiAoc2l6 ZW9mIGFjX2FnZ3Iuc3RfYmlydGh0aW0udHZfbnNlYykKfCByZXR1cm4gMDsKfCAgIDsKfCAgIHJl dHVybiAwOwp8IH0KY29uZmlndXJlOjI4MTE1OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToyODEzMzog Y2hlY2tpbmcgZm9yIHdvcmtpbmcgc3RkYWxpZ24uaApjb25maWd1cmU6MjgxNzg6IGdjYyAtYyAt ZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyODE3ODogJD8gPSAwCmNvbmZpZ3Vy ZToyODE4NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI4MjA4OiBjaGVja2luZyBmb3IgbWF4X2Fs aWduX3QKY29uZmlndXJlOjI4MjA4OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpj b25maWd1cmU6MjgyMDg6ICQ/ID0gMApjb25maWd1cmU6MjgyMDg6IGdjYyAtYyAtZzMgLU8yICAg IGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6IEluIGZ1bmN0aW9uICdtYWluJzoKY29uZnRlc3Qu YzozMTA6MjY6IGVycm9yOiBleHBlY3RlZCBleHByZXNzaW9uIGJlZm9yZSAnKScgdG9rZW4KIGlm IChzaXplb2YgKChtYXhfYWxpZ25fdCkpKQogICAgICAgICAgICAgICAgICAgICAgICAgIF4KY29u ZmlndXJlOjI4MjA4OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyog Y29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgRW1hY3MiCnwgI2RlZmlu ZSBQQUNLQUdFX1RBUk5BTUUgImVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyNS4x Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFjcyAyNS4xIgp8ICNkZWZpbmUgUEFD S0FHRV9CVUdSRVBPUlQgImJ1Zy1nbnUtZW1hY3NAZ251Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0Vf VVJMICJodHRwOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgp8ICNkZWZpbmUgUEFDS0FH RSAiZW1hY3MiCnwgI2RlZmluZSBWRVJTSU9OICIyNS4xIgp8ICNkZWZpbmUgTUFJTF9VU0VfUE9Q IDEKfCAjZGVmaW5lIEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfVFpTRVQgMQp8ICNkZWZp bmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOS0FUIDEKfCAjZGVmaW5lIEhB VkVfRkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9GRE9Q RU5ESVIgMQp8ICNkZWZpbmUgSEFWRV9GU1RBVEFUIDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMgMQp8 ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwgI2Rl ZmluZSBIQVZFX01LT1NURU1QIDEKfCAjZGVmaW5lIEhBVkVfUElQRTIgMQp8ICNkZWZpbmUgSEFW RV9QU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFWRV9TVFJU T0lNQVggMQp8ICNkZWZpbmUgSEFWRV9TVFJUT1VNQVggMQp8ICNkZWZpbmUgSEFWRV9TWU1MSU5L IDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9USU1FR00gMQp8 ICNkZWZpbmUgSEFWRV9GVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FU0FUIDEKfCAjZGVm aW5lIEhBVkVfRlVUSU1FTlMgMQp8ICNkZWZpbmUgSEFWRV9VVElNRU5TQVQgMQp8ICNkZWZpbmUg SEFWRV9MVVRJTUVTIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBI QVZFX1NFQ1VSRV9HRVRFTlYgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhB VkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01F TU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQ RVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0gg MQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgX0FMTF9TT1VSQ0UgMQp8ICNk ZWZpbmUgX0RBUldJTl9DX1NPVVJDRSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmlu ZSBfX1VTRV9NSU5HV19BTlNJX1NURElPIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFO VElDUyAxCnwgI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX1VTRV82 NF9CSVRfSU5PREUgMQp8ICNkZWZpbmUgU1lTVEVNX1RZUEUgImdudS9saW51eCIKfCAjZGVmaW5l IEhBVkVfU1lTX1NPVU5EQ0FSRF9IIDEKfCAjZGVmaW5lIEhBVkVfQUxTQSAxCnwgI2RlZmluZSBI QVZFX1NPVU5EIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCnwgI2RlZmluZSBIQVZF X1BUWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9VVE1Q X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJf SCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0gg MQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwg I2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVhFQ0lORk9fSCAxCnwgI2Rl ZmluZSBIQVZFX1NURElPX0VYVF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfSCAxCnwgI2RlZmluZSBI QVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFW RV9VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUEVSU09OQUxJVFlfTElOVVgzMiAxCnwgI2RlZmlu ZSBIQVZFX0xJTlVYX1NZU0lORk8gMQp8ICNkZWZpbmUgTElOVVhfU1lTSU5GT19VTklUIDEKfCAj ZGVmaW5lIEhBVkVfVEVSTV9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfU1lTX1NJR0xJU1QgMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEK fCAjZGVmaW5lIEhBVkVfTkVUX0lGX0ggMQp8ICNkZWZpbmUgSEFWRV9JRkFERFJTX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0ZMQUdTIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNU X0lGUkVRX0lGUl9IV0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX05FVE1B U0sgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0JST0FEQUREUiAxCnwgI2RlZmlu ZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQUREUiAxCnwgI2RlZmluZSBIQVZFX0xPTkdfRklMRV9O QU1FUyAxCnwgI2RlZmluZSBIQVZFX1NZU19WTElNSVRfSCAxCnwgI2RlZmluZSBIQVZFX0RBVEFf U1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX01NQVAg MQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEIDEKfCAjZGVmaW5lIEhBVkVfWEtCIDEKfCAjZGVmaW5l IEhBVkVfWFJNU0VUREFUQUJBU0UgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOUkVTT1VSQ0VTVFJJ TkcgMQp8ICNkZWZpbmUgSEFWRV9YU0NSRUVOTlVNQkVST0ZTQ1JFRU4gMQp8ICNkZWZpbmUgSEFW RV9YMTFSNiAxCnwgI2RlZmluZSBIQVZFX1hfSTE4TiAxCnwgI2RlZmluZSBIQVZFX1gxMVI2X1hJ TSAxCnwgI2RlZmluZSBIQVZFX1JTVkcgMQp8ICNkZWZpbmUgSEFWRV9JTUFHRU1BR0lDSyAxCnwg I2RlZmluZSBIQVZFX01BR0lDS0VYUE9SVElNQUdFUElYRUxTIDEKfCAjZGVmaW5lIEhBVkVfTUFH SUNLTUVSR0VJTUFHRUxBWUVSUyAxCnwgI2RlZmluZSBIQVZFX0RCVVMgMQp8ICNkZWZpbmUgSEFW RV9EQlVTX1dBVENIX0dFVF9VTklYX0ZEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19UWVBFX0lTX1ZB TElEIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAxCnwgI2RlZmluZSBI QVZFX0RCVVNfVkFMSURBVEVfUEFUSCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfSU5U RVJGQUNFIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIgMQp8ICNkZWZpbmUg SEFWRV9HU0VUVElOR1MgMQp8ICNkZWZpbmUgSEFWRV9HQ09ORiAxCnwgI2RlZmluZSBIQVZFX0dO VVRMUyAxCnwgI2RlZmluZSBIQVZFX0dOVVRMUzMgMQp8ICNkZWZpbmUgSEFWRV9JTk9USUZZIDEK fCAjZGVmaW5lIFVTRV9GSUxFX05PVElGWSAxCnwgI2RlZmluZSBIQVZFX1gxMVhUUjYgMQp8ICNk ZWZpbmUgVVNFX1RPT0xLSVRfU0NST0xMX0JBUlMgMQp8ICNkZWZpbmUgSEFWRV9YSU0gMQp8ICNk ZWZpbmUgVVNFX1hJTSAxCnwgI2RlZmluZSBYUmVnaXN0ZXJJTUluc3RhbnRpYXRlQ2FsbGJhY2tf YXJnNiBYUG9pbnRlcgp8ICNkZWZpbmUgSEFWRV9YRlQgMQp8ICNkZWZpbmUgSEFWRV9GUkVFVFlQ RSAxCnwgI2RlZmluZSBIQVZFX0xJQk9URiAxCnwgI2RlZmluZSBIQVZFX09URl9HRVRfVkFSSUFU SU9OX0dMWVBIUyAxCnwgI2RlZmluZSBIQVZFX00xN05fRkxUIDEKfCAjZGVmaW5lIFVTRV9YQ0Ig MQp8ICNkZWZpbmUgSEFWRV9YUE0gMQp8ICNkZWZpbmUgSEFWRV9KUEVHIDEKfCAjZGVmaW5lIEhB VkVfWkxJQiAxCnwgI2RlZmluZSBIQVZFX1BORyAxCnwgI2RlZmluZSBIQVZFX1RJRkYgMQp8ICNk ZWZpbmUgSEFWRV9HSUYgMQp8ICNkZWZpbmUgSEFWRV9HUE0gMQp8ICNkZWZpbmUgSEFWRV9YX1NN IDEKfCAjZGVmaW5lIEhBVkVfWFJBTkRSIDEKfCAjZGVmaW5lIEhBVkVfWElORVJBTUEgMQp8ICNk ZWZpbmUgSEFWRV9YRklYRVMgMQp8ICNkZWZpbmUgSEFWRV9MSUJYTUwyIDEKfCAjZGVmaW5lIEhB VkVfSF9FUlJOTyAxCnwgI2RlZmluZSBNQUlMX1VTRV9GTE9DSyAxCnwgI2RlZmluZSBIQVZFX0FD Q0VQVDQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hESVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFN RSAxCnwgI2RlZmluZSBIQVZFX0dFVFJVU0FHRSAxCnwgI2RlZmluZSBIQVZFX0dFVF9DVVJSRU5U X0RJUl9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfTFJBTkQ0OCAxCnwgI2RlZmluZSBIQVZFX1JBTkRP TSAxCnwgI2RlZmluZSBIQVZFX1JJTlQgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZp bmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FMRSAxCnwgI2RlZmlu ZSBIQVZFX05FV0xPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX0dFVFJMSU1JVCAxCnwgI2RlZmluZSBI QVZFX1NFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5lIEhBVkVf R0VUQUREUklORk8gMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQp8ICNkZWZpbmUg SEFWRV9TVFJTSUdOQUwgMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFW RV9TRU5EVE8gMQp8ICNkZWZpbmUgSEFWRV9SRUNWRlJPTSAxCnwgI2RlZmluZSBIQVZFX0dFVFNP Q0tOQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEVFUk5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRJ RkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfRlJFRUlGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9HQUlf U1RSRVJST1IgMQp8ICNkZWZpbmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFdFTlQg MQp8ICNkZWZpbmUgSEFWRV9FTkRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0dFVEdSRU5UIDEKfCAj ZGVmaW5lIEhBVkVfRU5ER1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9DRk1BS0VSQVcgMQp8ICNkZWZp bmUgSEFWRV9DRlNFVFNQRUVEIDEKfCAjZGVmaW5lIEhBVkVfQ09QWVNJR04gMQp8ICNkZWZpbmUg SEFWRV9fX0VYRUNVVEFCTEVfU1RBUlQgMQp8ICNkZWZpbmUgSEFWRV9MT0cyIDEKfCAjZGVmaW5l IEhBVkVfQUxJR05FRF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX19fQlVJTFRJTl9VTldJTkRfSU5J VCAxCnwgI2RlZmluZSBIQVZFX0ZTRUVLTyAxCnwgI2RlZmluZSBIQVZFX0dSQU5UUFQgMQp8ICNk ZWZpbmUgSEFWRV9HRVRQVCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX09QRU5QVCAxCnwgI2RlZmlu ZSBURVJNSU5GTyAxCnwgI2RlZmluZSBIQVZFX1RJTUVSRkQgMQp8ICNkZWZpbmUgSEFWRV9SRVNf SU5JVCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9VTklQQUlSX1VOSUNPREUgMQp8ICNkZWZpbmUg SEFWRV9JTkVUX1NPQ0tFVFMgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVf VkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09S S0lOR19GT1JLIDEKfCAjZGVmaW5lIEhBVkVfU05QUklOVEYgMQp8ICNkZWZpbmUgSEFWRV9HTElC IDEKfCAjZGVmaW5lIEhBVkVfTEFOR0lORk9fQ09ERVNFVCAxCnwgI2RlZmluZSBIQVZFX01CU1RB VEVfVCAxCnwgI2RlZmluZSBBTVBFUlNBTkRfRlVMTF9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfUFRZ UyAxCnwgI2RlZmluZSBIQVZFX1NPQ0tFVFMgMQp8ICNkZWZpbmUgTlVMTF9ERVZJQ0UgIi9kZXYv bnVsbCIKfCAjZGVmaW5lIFNFUENIQVIgJzonCnwgI2RlZmluZSBzdWJwcm9jZXNzZXMgMQp8ICNk ZWZpbmUgVVNFUl9GVUxMX05BTUUgcHctPnB3X2dlY29zCnwgI2RlZmluZSBESVJFQ1RPUllfU0VQ ICcvJwp8ICNkZWZpbmUgSVNfREVWSUNFX1NFUChfY18pIDAKfCAjZGVmaW5lIElTX0RJUkVDVE9S WV9TRVAoX2NfKSAoKF9jXykgPT0gRElSRUNUT1JZX1NFUCkKfCAjZGVmaW5lIElTX0FOWV9TRVAo X2NfKSAoSVNfRElSRUNUT1JZX1NFUCAoX2NfKSkKfCAjZGVmaW5lIEhBVkVfUFJPQ0ZTIDEKfCAj ZGVmaW5lIERFRkFVTFRfU09VTkRfREVWSUNFICIvZGV2L2RzcCIKfCAjZGVmaW5lIElOVEVSUlVQ VF9JTlBVVCAxCnwgI2RlZmluZSBOQVJST1dQUk9UTyAxCnwgI2RlZmluZSBVTklYOThfUFRZUyAx CnwgI2RlZmluZSBQVFlfSVRFUkFUSU9OIGludCBpOyBmb3IgKGkgPSAwOyBpIDwgMTsgaSsrKQp8 ICNkZWZpbmUgUFRZX1RUWV9OQU1FX1NQUklOVEYgeyBjaGFyICpwdHluYW1lID0gMDsgc2lnc2V0 X3QgYmxvY2tlZDsgc2lnZW1wdHlzZXQgKCZibG9ja2VkKTsgc2lnYWRkc2V0ICgmYmxvY2tlZCwg U0lHQ0hMRCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX0JMT0NLLCAmYmxvY2tlZCwgMCk7IGlmIChn cmFudHB0IChmZCkgIT0gLTEgJiYgdW5sb2NrcHQgKGZkKSAhPSAtMSkgcHR5bmFtZSA9IHB0c25h bWUoZmQpOyBwdGhyZWFkX3NpZ21hc2sgKFNJR19VTkJMT0NLLCAmYmxvY2tlZCwgMCk7IGlmICgh cHR5bmFtZSkgeyBlbWFjc19jbG9zZSAoZmQpOyByZXR1cm4gLTE7IH0gc25wcmludGYgKHB0eV9u YW1lLCBQVFlfTkFNRV9TSVpFLCAiJXMiLCBwdHluYW1lKTsgfQp8ICNkZWZpbmUgUFRZX09QRU4g ZG8geyBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19DTE9FWEVDIHwgT19OT0NUVFkpOyBp ZiAoZmQgPCAwICYmIGVycm5vID09IEVJTlZBTCkgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8 IE9fTk9DVFRZKTsgfSB3aGlsZSAoZmFsc2UpCnwgI2RlZmluZSBQVFlfTkFNRV9TUFJJTlRGIC8q Ki8KfCAjZGVmaW5lIFNJR05BTFNfVklBX0NIQVJBQ1RFUlMgMQp8ICNkZWZpbmUgR0NfU0VUSk1Q X1dPUktTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBIQVZFX19TRVRK TVAgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9TVEFDS19PVkVS RkxPV19IQU5ETElORyAxCnwgI2RlZmluZSBVU0cgLyoqLwp8ICNkZWZpbmUgR05VX0xJTlVYIC8q Ki8KfCAjZGVmaW5lIFVTQUJMRV9GSU9OUkVBRCAxCnwgI2RlZmluZSBVU0FCTEVfU0lHSU8gMQp8 ICNkZWZpbmUgQ09QWVJJR0hUICJDb3B5cmlnaHQgKEMpIDIwMTYgRnJlZSBTb2Z0d2FyZSBGb3Vu ZGF0aW9uLCBJbmMuIgp8ICNkZWZpbmUgVEVSTV9IRUFERVIgInh0ZXJtLmgiCnwgI2RlZmluZSBF TUFDU19DT05GSUdVUkFUSU9OICJ4ODZfNjQtdW5rbm93bi1saW51eC1nbnUiCnwgI2RlZmluZSBF TUFDU19DT05GSUdfT1BUSU9OUyAiLS13aXRoLXgtdG9vbGtpdD1sdWNpZCIKfCAjZGVmaW5lIEhB VkVfWF9XSU5ET1dTIDEKfCAjZGVmaW5lIFVTRV9YX1RPT0xLSVQgMQp8ICNkZWZpbmUgVVNFX0xV Q0lEIDEKfCAjZGVmaW5lIEhBVkVfWDExIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0FUVFJJQlVU RV9BTElHTkVEIDEKfCAjZGVmaW5lIEdOVV9NQUxMT0MgMQp8ICNkZWZpbmUgUkVMX0FMTE9DIDEK fCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZp bmUgSEFWRV9VTlNJR05FRF9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfQzk5X1NUUlRP TEQgMQp8ICNkZWZpbmUgSEFWRV9FTlZJUk9OX0RFQ0wgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZE QVRBU1lOQyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSTU9ERSAwCnwgI2RlZmluZSBMU1RBVF9G T0xMT1dTX1NMQVNIRURfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVm aW5lIEhBVkVfR0VUT1BUX0xPTkdfT05MWSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VURU5WIDEK fCAjZGVmaW5lIHJlc3RyaWN0IF9fcmVzdHJpY3QKfCAjZGVmaW5lIEhBVkVfTE9OR19MT05HX0lO VCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfTUVNUkNIUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfQUxB Uk0gMQp8ICNkZWZpbmUgSEFWRV9TSUdTRVRfVCAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX1QgMQp8 ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVE1fVE1fWk9ORSAxCnwgI2RlZmluZSBIQVZFX1RNX1pPTkUg MQp8ICNkZWZpbmUgSEFWRV9UTV9HTVRPRkYgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUlRPSU1B WCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSVE9VTUFYIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lO R19VVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfVVRJTUJVRiAxCnwgI2RlZmluZSBHRVRH Uk9VUFNfVCBnaWRfdAp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZp bmUgSEFWRV9TWVNfQUNMX0ggMQp8ICNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZJTEUgMQp8ICNkZWZp bmUgSEFWRV9BQ0xfR0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX1NFVF9GSUxFIDEKfCAjZGVm aW5lIEhBVkVfQUNMX1NFVF9GRCAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUkVFIDEKfCAjZGVmaW5l IEhBVkVfQUNMX0ZST01fTU9ERSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX1RFWFQgMQp8ICNk ZWZpbmUgSEFWRV9BQ0xfREVMRVRFX0RFRl9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VYVEVO REVEX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfTElCQUNMX0ggMQp8ICNkZWZpbmUgSEFWRV9B Q0xfRU5UUklFUyAxCnwgI2RlZmluZSBIQVZFX0FDTF9GSVJTVF9FTlRSWSAxCnwgI2RlZmluZSBV U0VfQUNMIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfQllURVNXQVBf SCAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX0dFVFRJTUUgMQp8ICNkZWZpbmUgSEFWRV9DTE9DS19T RVRUSU1FIDEKfCAjZGVmaW5lIEdOVUxJQl9DTE9TRV9TVFJFQU0gMQp8ICNkZWZpbmUgSEFWRV9E VVAyIDEKfCAjZGVmaW5lIEdOVUxJQl9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZE T1BFTkRJUiAxCnwgI2RlZmluZSBHTlVMSUJfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9fX0ZQRU5ESU5HIDEKfCAjZGVmaW5lIEdFVFRJTUVPRkRBWV9USU1FWk9ORSBzdHJ1Y3QgdGlt ZXpvbmUKfCAjZGVmaW5lIEhBVkVfTUVNUkNIUiAxCnwgI2RlZmluZSBHTlVMSUJfTUtPU1RFTVAg MQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9BVElNX1RWX05TRUMgMQp8ICNkZWZpbmUg VFlQRU9GX1NUUlVDVF9TVEFUX1NUX0FUSU1fSVNfU1RSVUNUX1RJTUVTUEVDIDEKfCAvKiBlbmQg Y29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN0ZGRlZi5oPgp8IAp8IAp8IGludAp8IG1haW4g KCkKfCB7CnwgaWYgKHNpemVvZiAoKG1heF9hbGlnbl90KSkpCnwgCSAgICByZXR1cm4gMDsKfCAg IDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjI4MjA4OiByZXN1bHQ6IHllcwpjb25maWd1 cmU6MjgyMjE6IGNoZWNraW5nIHdoZXRoZXIgTlVMTCBjYW4gYmUgdXNlZCBpbiBhcmJpdHJhcnkg ZXhwcmVzc2lvbnMKY29uZmlndXJlOjI4MjM5OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5j ID4mNQpjb25maWd1cmU6MjgyMzk6ICQ/ID0gMApjb25maWd1cmU6MjgyNDY6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZToyODQxMjogY2hlY2tpbmcgd2hpY2ggZmxhdm9yIG9mIHByaW50ZiBhdHRyaWJ1 dGUgbWF0Y2hlcyBpbnR0eXBlcyBtYWNyb3MKY29uZmlndXJlOjI4NDM5OiBnY2MgLWMgLWczIC1P MiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6Mjg0Mzk6ICQ/ID0gMApjb25maWd1cmU6Mjg0 NDY6IHJlc3VsdDogc3lzdGVtCmNvbmZpZ3VyZToyODU3NjogY2hlY2tpbmcgZm9yIHN0cGNweQpj b25maWd1cmU6Mjg1NzY6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAt bHB0aHJlYWQgID4mNSAKY29uZnRlc3QuYzozMjk6Njogd2FybmluZzogY29uZmxpY3RpbmcgdHlw ZXMgZm9yIGJ1aWx0LWluIGZ1bmN0aW9uICdzdHBjcHknCiBjaGFyIHN0cGNweSAoKTsKICAgICAg Xn5+fn5+CmNvbmZpZ3VyZToyODU3NjogJD8gPSAwCmNvbmZpZ3VyZToyODU3NjogcmVzdWx0OiB5 ZXMKY29uZmlndXJlOjI4NjQzOiBjaGVja2luZyB3aGV0aGVyIHN0cnRvaW1heCB3b3Jrcwpjb25m aWd1cmU6Mjg2OTc6IGdjYyAtbyBjb25mdGVzdCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAtbHB0 aHJlYWQgID4mNSAKY29uZmlndXJlOjI4Njk3OiAkPyA9IDAKY29uZmlndXJlOjI4Njk3OiAuL2Nv bmZ0ZXN0CmNvbmZpZ3VyZToyODY5NzogJD8gPSAwCmNvbmZpZ3VyZToyODcwODogcmVzdWx0OiB5 ZXMKY29uZmlndXJlOjI4ODEzOiBjaGVja2luZyB3aGV0aGVyIHN5bWxpbmsgaGFuZGxlcyB0cmFp bGluZyBzbGFzaCBjb3JyZWN0bHkKY29uZmlndXJlOjI4ODQ3OiBnY2MgLW8gY29uZnRlc3QgLWcz IC1PMiAgICAgIGNvbmZ0ZXN0LmMgLWxwdGhyZWFkICA+JjUgCmNvbmZpZ3VyZToyODg0NzogJD8g PSAwCmNvbmZpZ3VyZToyODg0NzogLi9jb25mdGVzdApjb25maWd1cmU6Mjg4NDc6ICQ/ID0gMApj b25maWd1cmU6Mjg4NTg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyODg5NDogY2hlY2tpbmcgd2hl dGhlciA8c3lzL3NlbGVjdC5oPiBpcyBzZWxmLWNvbnRhaW5lZApjb25maWd1cmU6Mjg5NzM6IHJl c3VsdDogeWVzCmNvbmZpZ3VyZToyOTE4NjogY2hlY2tpbmcgZm9yIG5saW5rX3QKY29uZmlndXJl OjI5MTg2OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjkxODY6 ICQ/ID0gMApjb25maWd1cmU6MjkxODY6IGdjYyAtYyAtZzMgLU8yICAgIGNvbmZ0ZXN0LmMgPiY1 CmNvbmZ0ZXN0LmM6IEluIGZ1bmN0aW9uICdtYWluJzoKY29uZnRlc3QuYzozMTQ6MjI6IGVycm9y OiBleHBlY3RlZCBleHByZXNzaW9uIGJlZm9yZSAnKScgdG9rZW4KIGlmIChzaXplb2YgKChubGlu a190KSkpCiAgICAgICAgICAgICAgICAgICAgICBeCmNvbmZpZ3VyZToyOTE4NjogJD8gPSAxCmNv bmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5l IFBBQ0tBR0VfTkFNRSAiR05VIEVtYWNzIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJlbWFj cyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMjUuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RS SU5HICJHTlUgRW1hY3MgMjUuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ251 LWVtYWNzQGdudS5vcmciCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0cDovL3d3dy5nbnUub3Jn L3NvZnR3YXJlL2VtYWNzLyIKfCAjZGVmaW5lIFBBQ0tBR0UgImVtYWNzIgp8ICNkZWZpbmUgVkVS U0lPTiAiMjUuMSIKfCAjZGVmaW5lIE1BSUxfVVNFX1BPUCAxCnwgI2RlZmluZSBIQVZFX1BVVEVO ViAxCnwgI2RlZmluZSBIQVZFX1RaU0VUIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVm aW5lIEhBVkVfUkVBRExJTktBVCAxCnwgI2RlZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCnwgI2RlZmlu ZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfRkRPUEVORElSIDEKfCAjZGVmaW5lIEhBVkVf RlNUQVRBVCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9G REFZIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9NS09TVEVNUCAxCnwg I2RlZmluZSBIQVZFX1BJUEUyIDEKfCAjZGVmaW5lIEhBVkVfUFNFTEVDVCAxCnwgI2RlZmluZSBI QVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVf U1RSVE9VTUFYIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX0xPQ0FM VElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfVElNRUdNIDEKfCAjZGVmaW5lIEhBVkVfRlVUSU1FUyAx CnwgI2RlZmluZSBIQVZFX0ZVVElNRVNBVCAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRU5TIDEKfCAj ZGVmaW5lIEhBVkVfVVRJTUVOU0FUIDEKfCAjZGVmaW5lIEhBVkVfTFVUSU1FUyAxCnwgI2RlZmlu ZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9TRUNVUkVfR0VURU5WIDEKfCAj ZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5l IEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZF X1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9T VERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9O U19fIDEKfCAjZGVmaW5lIF9BTExfU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0Ug MQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgX19VU0VfTUlOR1dfQU5TSV9TVERJ TyAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX1RBTkRF TV9TT1VSQ0UgMQp8ICNkZWZpbmUgX0RBUldJTl9VU0VfNjRfQklUX0lOT0RFIDEKfCAjZGVmaW5l IFNZU1RFTV9UWVBFICJnbnUvbGludXgiCnwgI2RlZmluZSBIQVZFX1NZU19TT1VORENBUkRfSCAx CnwgI2RlZmluZSBIQVZFX0FMU0EgMQp8ICNkZWZpbmUgSEFWRV9TT1VORCAxCnwgI2RlZmluZSBI QVZFX1NZU19TWVNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9QVFlfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmlu ZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklT VERfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVB RF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAx CnwgI2RlZmluZSBIQVZFX0VYRUNJTkZPX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJT19FWFRfSCAx CnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwg I2RlZmluZSBIQVZFX1dDSEFSX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmlu ZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVfSCAxCnwgI2RlZmluZSBI QVZFX1BFUlNPTkFMSVRZX0xJTlVYMzIgMQp8ICNkZWZpbmUgSEFWRV9MSU5VWF9TWVNJTkZPIDEK fCAjZGVmaW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCnwgI2RlZmluZSBIQVZFX1RFUk1fSCAxCnwg I2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NZU19TSUdM SVNUIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX05FVF9JRl9I IDEKfCAjZGVmaW5lIEhBVkVfSUZBRERSU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVR X0lGUl9GTEFHUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfSFdBRERSIDEKfCAj ZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9ORVRNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RS VUNUX0lGUkVRX0lGUl9CUk9BREFERFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZS X0FERFIgMQp8ICNkZWZpbmUgSEFWRV9MT05HX0ZJTEVfTkFNRVMgMQp8ICNkZWZpbmUgSEFWRV9T WVNfVkxJTUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9EQVRBX1NUQVJUIDEKfCAjZGVmaW5lIEhBVkVf R0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9NTUFQIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVB RCAxCnwgI2RlZmluZSBIQVZFX1hLQiAxCnwgI2RlZmluZSBIQVZFX1hSTVNFVERBVEFCQVNFIDEK fCAjZGVmaW5lIEhBVkVfWFNDUkVFTlJFU09VUkNFU1RSSU5HIDEKfCAjZGVmaW5lIEhBVkVfWFND UkVFTk5VTUJFUk9GU0NSRUVOIDEKfCAjZGVmaW5lIEhBVkVfWDExUjYgMQp8ICNkZWZpbmUgSEFW RV9YX0kxOE4gMQp8ICNkZWZpbmUgSEFWRV9YMTFSNl9YSU0gMQp8ICNkZWZpbmUgSEFWRV9SU1ZH IDEKfCAjZGVmaW5lIEhBVkVfSU1BR0VNQUdJQ0sgMQp8ICNkZWZpbmUgSEFWRV9NQUdJQ0tFWFBP UlRJTUFHRVBJWEVMUyAxCnwgI2RlZmluZSBIQVZFX01BR0lDS01FUkdFSU1BR0VMQVlFUlMgMQp8 ICNkZWZpbmUgSEFWRV9EQlVTIDEKfCAjZGVmaW5lIEhBVkVfREJVU19XQVRDSF9HRVRfVU5JWF9G RCAxCnwgI2RlZmluZSBIQVZFX0RCVVNfVFlQRV9JU19WQUxJRCAxCnwgI2RlZmluZSBIQVZFX0RC VVNfVkFMSURBVEVfQlVTX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX1BBVEgg MQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0lOVEVSRkFDRSAxCnwgI2RlZmluZSBIQVZF X0RCVVNfVkFMSURBVEVfTUVNQkVSIDEKfCAjZGVmaW5lIEhBVkVfR1NFVFRJTkdTIDEKfCAjZGVm aW5lIEhBVkVfR0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9HTlVUTFMgMQp8ICNkZWZpbmUgSEFWRV9H TlVUTFMzIDEKfCAjZGVmaW5lIEhBVkVfSU5PVElGWSAxCnwgI2RlZmluZSBVU0VfRklMRV9OT1RJ RlkgMQp8ICNkZWZpbmUgSEFWRV9YMTFYVFI2IDEKfCAjZGVmaW5lIFVTRV9UT09MS0lUX1NDUk9M TF9CQVJTIDEKfCAjZGVmaW5lIEhBVkVfWElNIDEKfCAjZGVmaW5lIFVTRV9YSU0gMQp8ICNkZWZp bmUgWFJlZ2lzdGVySU1JbnN0YW50aWF0ZUNhbGxiYWNrX2FyZzYgWFBvaW50ZXIKfCAjZGVmaW5l IEhBVkVfWEZUIDEKfCAjZGVmaW5lIEhBVkVfRlJFRVRZUEUgMQp8ICNkZWZpbmUgSEFWRV9MSUJP VEYgMQp8ICNkZWZpbmUgSEFWRV9PVEZfR0VUX1ZBUklBVElPTl9HTFlQSFMgMQp8ICNkZWZpbmUg SEFWRV9NMTdOX0ZMVCAxCnwgI2RlZmluZSBVU0VfWENCIDEKfCAjZGVmaW5lIEhBVkVfWFBNIDEK fCAjZGVmaW5lIEhBVkVfSlBFRyAxCnwgI2RlZmluZSBIQVZFX1pMSUIgMQp8ICNkZWZpbmUgSEFW RV9QTkcgMQp8ICNkZWZpbmUgSEFWRV9USUZGIDEKfCAjZGVmaW5lIEhBVkVfR0lGIDEKfCAjZGVm aW5lIEhBVkVfR1BNIDEKfCAjZGVmaW5lIEhBVkVfWF9TTSAxCnwgI2RlZmluZSBIQVZFX1hSQU5E UiAxCnwgI2RlZmluZSBIQVZFX1hJTkVSQU1BIDEKfCAjZGVmaW5lIEhBVkVfWEZJWEVTIDEKfCAj ZGVmaW5lIEhBVkVfTElCWE1MMiAxCnwgI2RlZmluZSBIQVZFX0hfRVJSTk8gMQp8ICNkZWZpbmUg TUFJTF9VU0VfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9BQ0NFUFQ0IDEKfCAjZGVmaW5lIEhBVkVf RkNIRElSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRS VVNBR0UgMQp8ICNkZWZpbmUgSEFWRV9HRVRfQ1VSUkVOVF9ESVJfTkFNRSAxCnwgI2RlZmluZSBI QVZFX0xSQU5ENDggMQp8ICNkZWZpbmUgSEFWRV9SQU5ET00gMQp8ICNkZWZpbmUgSEFWRV9SSU5U IDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8 ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9ORVdMT0NBTEUgMQp8ICNk ZWZpbmUgSEFWRV9HRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8ICNkZWZp bmUgSEFWRV9TSFVURE9XTiAxCnwgI2RlZmluZSBIQVZFX0dFVEFERFJJTkZPIDEKfCAjZGVmaW5l IEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAjZGVmaW5lIEhBVkVfU1RSU0lHTkFMIDEKfCAjZGVm aW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfU0VORFRPIDEKfCAjZGVmaW5lIEhB VkVfUkVDVkZST00gMQp8ICNkZWZpbmUgSEFWRV9HRVRTT0NLTkFNRSAxCnwgI2RlZmluZSBIQVZF X0dFVFBFRVJOQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUSUZBRERSUyAxCnwgI2RlZmluZSBIQVZF X0ZSRUVJRkFERFJTIDEKfCAjZGVmaW5lIEhBVkVfR0FJX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhB VkVfU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EUFdF TlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0VOREdSRU5UIDEK fCAjZGVmaW5lIEhBVkVfQ0ZNQUtFUkFXIDEKfCAjZGVmaW5lIEhBVkVfQ0ZTRVRTUEVFRCAxCnwg I2RlZmluZSBIQVZFX0NPUFlTSUdOIDEKfCAjZGVmaW5lIEhBVkVfX19FWEVDVVRBQkxFX1NUQVJU IDEKfCAjZGVmaW5lIEhBVkVfTE9HMiAxCnwgI2RlZmluZSBIQVZFX0FMSUdORURfQUxMT0MgMQp8 ICNkZWZpbmUgSEFWRV9fX0JVSUxUSU5fVU5XSU5EX0lOSVQgMQp8ICNkZWZpbmUgSEFWRV9GU0VF S08gMQp8ICNkZWZpbmUgSEFWRV9HUkFOVFBUIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFQgMQp8ICNk ZWZpbmUgSEFWRV9QT1NJWF9PUEVOUFQgMQp8ICNkZWZpbmUgVEVSTUlORk8gMQp8ICNkZWZpbmUg SEFWRV9USU1FUkZEIDEKfCAjZGVmaW5lIEhBVkVfUkVTX0lOSVQgMQp8ICNkZWZpbmUgSEFWRV9T VFJVQ1RfVU5JUEFJUl9VTklDT0RFIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9TT0NLRVRTIDEKfCAj ZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVf V09SS0lOR19WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfRk9SSyAxCnwgI2RlZmluZSBI QVZFX1NOUFJJTlRGIDEKfCAjZGVmaW5lIEhBVkVfR0xJQiAxCnwgI2RlZmluZSBIQVZFX0xBTkdJ TkZPX0NPREVTRVQgMQp8ICNkZWZpbmUgSEFWRV9NQlNUQVRFX1QgMQp8ICNkZWZpbmUgQU1QRVJT QU5EX0ZVTExfTkFNRSAxCnwgI2RlZmluZSBIQVZFX1BUWVMgMQp8ICNkZWZpbmUgSEFWRV9TT0NL RVRTIDEKfCAjZGVmaW5lIE5VTExfREVWSUNFICIvZGV2L251bGwiCnwgI2RlZmluZSBTRVBDSEFS ICc6Jwp8ICNkZWZpbmUgc3VicHJvY2Vzc2VzIDEKfCAjZGVmaW5lIFVTRVJfRlVMTF9OQU1FIHB3 LT5wd19nZWNvcwp8ICNkZWZpbmUgRElSRUNUT1JZX1NFUCAnLycKfCAjZGVmaW5lIElTX0RFVklD RV9TRVAoX2NfKSAwCnwgI2RlZmluZSBJU19ESVJFQ1RPUllfU0VQKF9jXykgKChfY18pID09IERJ UkVDVE9SWV9TRVApCnwgI2RlZmluZSBJU19BTllfU0VQKF9jXykgKElTX0RJUkVDVE9SWV9TRVAg KF9jXykpCnwgI2RlZmluZSBIQVZFX1BST0NGUyAxCnwgI2RlZmluZSBERUZBVUxUX1NPVU5EX0RF VklDRSAiL2Rldi9kc3AiCnwgI2RlZmluZSBJTlRFUlJVUFRfSU5QVVQgMQp8ICNkZWZpbmUgTkFS Uk9XUFJPVE8gMQp8ICNkZWZpbmUgVU5JWDk4X1BUWVMgMQp8ICNkZWZpbmUgUFRZX0lURVJBVElP TiBpbnQgaTsgZm9yIChpID0gMDsgaSA8IDE7IGkrKykKfCAjZGVmaW5lIFBUWV9UVFlfTkFNRV9T UFJJTlRGIHsgY2hhciAqcHR5bmFtZSA9IDA7IHNpZ3NldF90IGJsb2NrZWQ7IHNpZ2VtcHR5c2V0 ICgmYmxvY2tlZCk7IHNpZ2FkZHNldCAoJmJsb2NrZWQsIFNJR0NITEQpOyBwdGhyZWFkX3NpZ21h c2sgKFNJR19CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoZ3JhbnRwdCAoZmQpICE9IC0xICYmIHVu bG9ja3B0IChmZCkgIT0gLTEpIHB0eW5hbWUgPSBwdHNuYW1lKGZkKTsgcHRocmVhZF9zaWdtYXNr IChTSUdfVU5CTE9DSywgJmJsb2NrZWQsIDApOyBpZiAoIXB0eW5hbWUpIHsgZW1hY3NfY2xvc2Ug KGZkKTsgcmV0dXJuIC0xOyB9IHNucHJpbnRmIChwdHlfbmFtZSwgUFRZX05BTUVfU0laRSwgIiVz IiwgcHR5bmFtZSk7IH0KfCAjZGVmaW5lIFBUWV9PUEVOIGRvIHsgZmQgPSBwb3NpeF9vcGVucHQg KE9fUkRXUiB8IE9fQ0xPRVhFQyB8IE9fTk9DVFRZKTsgaWYgKGZkIDwgMCAmJiBlcnJubyA9PSBF SU5WQUwpIGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX05PQ1RUWSk7IH0gd2hpbGUgKGZh bHNlKQp8ICNkZWZpbmUgUFRZX05BTUVfU1BSSU5URiAvKiovCnwgI2RlZmluZSBTSUdOQUxTX1ZJ QV9DSEFSQUNURVJTIDEKfCAjZGVmaW5lIEdDX1NFVEpNUF9XT1JLUyAxCnwgI2RlZmluZSBHQ19T RVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgSEFWRV9fU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU0lH U0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfU1RBQ0tfT1ZFUkZMT1dfSEFORExJTkcgMQp8ICNkZWZp bmUgVVNHIC8qKi8KfCAjZGVmaW5lIEdOVV9MSU5VWCAvKiovCnwgI2RlZmluZSBVU0FCTEVfRklP TlJFQUQgMQp8ICNkZWZpbmUgVVNBQkxFX1NJR0lPIDEKfCAjZGVmaW5lIENPUFlSSUdIVCAiQ29w eXJpZ2h0IChDKSAyMDE2IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiIKfCAjZGVmaW5l IFRFUk1fSEVBREVSICJ4dGVybS5oIgp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHVVJBVElPTiAieDg2 XzY0LXVua25vd24tbGludXgtZ251Igp8ICNkZWZpbmUgRU1BQ1NfQ09ORklHX09QVElPTlMgIi0t d2l0aC14LXRvb2xraXQ9bHVjaWQiCnwgI2RlZmluZSBIQVZFX1hfV0lORE9XUyAxCnwgI2RlZmlu ZSBVU0VfWF9UT09MS0lUIDEKfCAjZGVmaW5lIFVTRV9MVUNJRCAxCnwgI2RlZmluZSBIQVZFX1gx MSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9BVFRSSUJVVEVfQUxJR05FRCAxCnwgI2RlZmluZSBH TlVfTUFMTE9DIDEKfCAjZGVmaW5lIFJFTF9BTExPQyAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQV9I IDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfVU5TSUdORURfTE9OR19M T05HX0lOVCAxCnwgI2RlZmluZSBIQVZFX0M5OV9TVFJUT0xEIDEKfCAjZGVmaW5lIEhBVkVfRU5W SVJPTl9ERUNMIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GREFUQVNZTkMgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX1NUUk1PREUgMAp8ICNkZWZpbmUgTFNUQVRfRk9MTE9XU19TTEFTSEVEX1NZTUxJTksg MQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9MT05HX09O TFkgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0dFVEVOViAxCnwgI2RlZmluZSByZXN0cmljdCBfX3Jl c3RyaWN0CnwgI2RlZmluZSBIQVZFX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X01FTVJDSFIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0FMQVJNIDEKfCAjZGVmaW5lIEhBVkVfU0lH U0VUX1QgMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9UIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1RN X1RNX1pPTkUgMQp8ICNkZWZpbmUgSEFWRV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fR01U T0ZGIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJUT0lNQVggMQp8ICNkZWZpbmUgSEFWRV9ERUNM X1NUUlRPVU1BWCAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVVRJTUVTIDEKfCAjZGVmaW5lIEhB VkVfU1RSVUNUX1VUSU1CVUYgMQp8ICNkZWZpbmUgR0VUR1JPVVBTX1QgZ2lkX3QKfCAjZGVmaW5l IEhBVkVfREVDTF9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0FDTF9IIDEKfCAj ZGVmaW5lIEhBVkVfQUNMX0dFVF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0dFVF9GRCAxCnwg I2RlZmluZSBIQVZFX0FDTF9TRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9TRVRfRkQgMQp8 ICNkZWZpbmUgSEFWRV9BQ0xfRlJFRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9GUk9NX01PREUgMQp8 ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9URVhUIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0RFTEVURV9E RUZfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9FWFRFTkRFRF9GSUxFIDEKfCAjZGVmaW5lIEhB VkVfQUNMX0xJQkFDTF9IIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0VOVFJJRVMgMQp8ICNkZWZpbmUg SEFWRV9BQ0xfRklSU1RfRU5UUlkgMQp8ICNkZWZpbmUgVVNFX0FDTCAxCnwgI2RlZmluZSBIQVZF X0FMTE9DQSAxCnwgI2RlZmluZSBIQVZFX0JZVEVTV0FQX0ggMQp8ICNkZWZpbmUgSEFWRV9DTE9D S19HRVRUSU1FIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tfU0VUVElNRSAxCnwgI2RlZmluZSBHTlVM SUJfQ0xPU0VfU1RSRUFNIDEKfCAjZGVmaW5lIEhBVkVfRFVQMiAxCnwgI2RlZmluZSBHTlVMSUJf RkFDQ0VTU0FUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgR05V TElCX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfX19GUEVORElORyAxCnwgI2RlZmlu ZSBHRVRUSU1FT0ZEQVlfVElNRVpPTkUgc3RydWN0IHRpbWV6b25lCnwgI2RlZmluZSBIQVZFX01F TVJDSFIgMQp8ICNkZWZpbmUgR05VTElCX01LT1NURU1QIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNU X1NUQVRfU1RfQVRJTV9UVl9OU0VDIDEKfCAjZGVmaW5lIFRZUEVPRl9TVFJVQ1RfU1RBVF9TVF9B VElNX0lTX1NUUlVDVF9USU1FU1BFQyAxCnwgI2RlZmluZSBHTlVMSUJfRlNDQU5GIDEKfCAjZGVm aW5lIEdOVUxJQl9TQ0FORiAxCnwgI2RlZmluZSBIQVZFX1NUUENQWSAxCnwgI2RlZmluZSBteV9z dHJmdGltZSBuc3RyZnRpbWUKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN5 cy90eXBlcy5oPgp8ICAgICAgI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CnwgCnwgaW50CnwgbWFpbiAo KQp8IHsKfCBpZiAoc2l6ZW9mICgobmxpbmtfdCkpKQp8IAkgICAgcmV0dXJuIDA7CnwgICA7Cnwg ICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToyOTE4NjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI5 MjE2OiBjaGVja2luZyB3aGV0aGVyIGxvY2FsdGltZV9yIGlzIGRlY2xhcmVkCmNvbmZpZ3VyZToy OTIxNjogZ2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjI5MjE2OiAk PyA9IDAKY29uZmlndXJlOjI5MjE2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjkyMzU6IGNoZWNr aW5nIHdoZXRoZXIgbG9jYWx0aW1lX3IgaXMgY29tcGF0aWJsZSB3aXRoIGl0cyBQT1NJWCBzaWdu YXR1cmUKY29uZmlndXJlOjI5MjU5OiBnY2MgLWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpj b25maWd1cmU6MjkyNTk6ICQ/ID0gMApjb25maWd1cmU6MjkyNjc6IHJlc3VsdDogeWVzCmNvbmZp Z3VyZToyOTMxMDogY2hlY2tpbmcgZm9yIHRpbWV6b25lX3QKY29uZmlndXJlOjI5MzEwOiBnY2Mg LWMgLWczIC1PMiAgICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiAnbWFp bic6CmNvbmZ0ZXN0LmM6MzE0OjEzOiBlcnJvcjogJ3RpbWV6b25lX3QnIHVuZGVjbGFyZWQgKGZp cnN0IHVzZSBpbiB0aGlzIGZ1bmN0aW9uKQogaWYgKHNpemVvZiAodGltZXpvbmVfdCkpCiAgICAg ICAgICAgICBefn5+fn5+fn5+CmNvbmZ0ZXN0LmM6MzE0OjEzOiBub3RlOiBlYWNoIHVuZGVjbGFy ZWQgaWRlbnRpZmllciBpcyByZXBvcnRlZCBvbmx5IG9uY2UgZm9yIGVhY2ggZnVuY3Rpb24gaXQg YXBwZWFycyBpbgpjb25maWd1cmU6MjkzMTA6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9n cmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBF bWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdF X1ZFUlNJT04gIjI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDI1LjEi CnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNk ZWZpbmUgUEFDS0FHRV9VUkwgImh0dHA6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9lbWFjcy8iCnwg I2RlZmluZSBQQUNLQUdFICJlbWFjcyIKfCAjZGVmaW5lIFZFUlNJT04gIjI1LjEiCnwgI2RlZmlu ZSBNQUlMX1VTRV9QT1AgMQp8ICNkZWZpbmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9U WlNFVCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LQVQg MQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2Rl ZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUg SEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZF X0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfTUtPU1RFTVAgMQp8ICNkZWZpbmUgSEFWRV9QSVBFMiAx CnwgI2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2Rl ZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX1NUUlRPVU1BWCAxCnwgI2RlZmlu ZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmluZSBI QVZFX1RJTUVHTSAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9GVVRJ TUVTQVQgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVOUyAxCnwgI2RlZmluZSBIQVZFX1VUSU1FTlNB VCAxCnwgI2RlZmluZSBIQVZFX0xVVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpF IDEKfCAjZGVmaW5lIEhBVkVfU0VDVVJFX0dFVEVOViAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMg MQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0gg MQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAj ZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZp bmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUg SEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBfQUxM X1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09V UkNFIDEKfCAjZGVmaW5lIF9fVVNFX01JTkdXX0FOU0lfU1RESU8gMQp8ICNkZWZpbmUgX1BPU0lY X1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVmaW5l IF9EQVJXSU5fVVNFXzY0X0JJVF9JTk9ERSAxCnwgI2RlZmluZSBTWVNURU1fVFlQRSAiZ251L2xp bnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJEX0ggMQp8ICNkZWZpbmUgSEFWRV9BTFNB IDEKfCAjZGVmaW5lIEhBVkVfU09VTkQgMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEK fCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2Rl ZmluZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmlu ZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVD SU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRP UFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9I IDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAx CnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QRVJTT05BTElUWV9MSU5V WDMyIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5GTyAxCnwgI2RlZmluZSBMSU5VWF9TWVNJ TkZPX1VOSVQgMQp8ICNkZWZpbmUgSEFWRV9URVJNX0ggMQp8ICNkZWZpbmUgVElNRV9XSVRIX1NZ U19USU1FIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TWVNfU0lHTElTVCAxCnwgI2RlZmluZSBIQVZF X1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZFX0lG QUREUlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8ICNkZWZp bmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9J RlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJPQURB RERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERSIDEKfCAjZGVmaW5lIEhB VkVfTE9OR19GSUxFX05BTUVTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1ZMSU1JVF9IIDEKfCAjZGVm aW5lIEhBVkVfREFUQV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVm aW5lIEhBVkVfTU1BUCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQUQgMQp8ICNkZWZpbmUgSEFWRV9Y S0IgMQp8ICNkZWZpbmUgSEFWRV9YUk1TRVREQVRBQkFTRSAxCnwgI2RlZmluZSBIQVZFX1hTQ1JF RU5SRVNPVVJDRVNUUklORyAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJPRlNDUkVFTiAx CnwgI2RlZmluZSBIQVZFX1gxMVI2IDEKfCAjZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVmaW5l IEhBVkVfWDExUjZfWElNIDEKfCAjZGVmaW5lIEhBVkVfUlNWRyAxCnwgI2RlZmluZSBIQVZFX0lN QUdFTUFHSUNLIDEKfCAjZGVmaW5lIEhBVkVfTUFHSUNLRVhQT1JUSU1BR0VQSVhFTFMgMQp8ICNk ZWZpbmUgSEFWRV9NQUdJQ0tNRVJHRUlNQUdFTEFZRVJTIDEKfCAjZGVmaW5lIEhBVkVfREJVUyAx CnwgI2RlZmluZSBIQVZFX0RCVVNfV0FUQ0hfR0VUX1VOSVhfRkQgMQp8ICNkZWZpbmUgSEFWRV9E QlVTX1RZUEVfSVNfVkFMSUQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0JVU19OQU1F IDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9QQVRIIDEKfCAjZGVmaW5lIEhBVkVfREJV U19WQUxJREFURV9JTlRFUkZBQ0UgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX01FTUJF UiAxCnwgI2RlZmluZSBIQVZFX0dTRVRUSU5HUyAxCnwgI2RlZmluZSBIQVZFX0dDT05GIDEKfCAj ZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTMyAxCnwgI2RlZmluZSBI QVZFX0lOT1RJRlkgMQp8ICNkZWZpbmUgVVNFX0ZJTEVfTk9USUZZIDEKfCAjZGVmaW5lIEhBVkVf WDExWFRSNiAxCnwgI2RlZmluZSBVU0VfVE9PTEtJVF9TQ1JPTExfQkFSUyAxCnwgI2RlZmluZSBI QVZFX1hJTSAxCnwgI2RlZmluZSBVU0VfWElNIDEKfCAjZGVmaW5lIFhSZWdpc3RlcklNSW5zdGFu dGlhdGVDYWxsYmFja19hcmc2IFhQb2ludGVyCnwgI2RlZmluZSBIQVZFX1hGVCAxCnwgI2RlZmlu ZSBIQVZFX0ZSRUVUWVBFIDEKfCAjZGVmaW5lIEhBVkVfTElCT1RGIDEKfCAjZGVmaW5lIEhBVkVf T1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTIDEKfCAjZGVmaW5lIEhBVkVfTTE3Tl9GTFQgMQp8ICNk ZWZpbmUgVVNFX1hDQiAxCnwgI2RlZmluZSBIQVZFX1hQTSAxCnwgI2RlZmluZSBIQVZFX0pQRUcg MQp8ICNkZWZpbmUgSEFWRV9aTElCIDEKfCAjZGVmaW5lIEhBVkVfUE5HIDEKfCAjZGVmaW5lIEhB VkVfVElGRiAxCnwgI2RlZmluZSBIQVZFX0dJRiAxCnwgI2RlZmluZSBIQVZFX0dQTSAxCnwgI2Rl ZmluZSBIQVZFX1hfU00gMQp8ICNkZWZpbmUgSEFWRV9YUkFORFIgMQp8ICNkZWZpbmUgSEFWRV9Y SU5FUkFNQSAxCnwgI2RlZmluZSBIQVZFX1hGSVhFUyAxCnwgI2RlZmluZSBIQVZFX0xJQlhNTDIg MQp8ICNkZWZpbmUgSEFWRV9IX0VSUk5PIDEKfCAjZGVmaW5lIE1BSUxfVVNFX0ZMT0NLIDEKfCAj ZGVmaW5lIEhBVkVfQUNDRVBUNCAxCnwgI2RlZmluZSBIQVZFX0ZDSERJUiAxCnwgI2RlZmluZSBI QVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUUlVTQUdFIDEKfCAjZGVmaW5lIEhB VkVfR0VUX0NVUlJFTlRfRElSX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9MUkFORDQ4IDEKfCAjZGVm aW5lIEhBVkVfUkFORE9NIDEKfCAjZGVmaW5lIEhBVkVfUklOVCAxCnwgI2RlZmluZSBIQVZFX1NF TEVDVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9D QUxFIDEKfCAjZGVmaW5lIEhBVkVfTkVXTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlU IDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8 ICNkZWZpbmUgSEFWRV9HRVRBRERSSU5GTyAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFT SyAxCnwgI2RlZmluZSBIQVZFX1NUUlNJR05BTCAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAx CnwgI2RlZmluZSBIQVZFX1NFTkRUTyAxCnwgI2RlZmluZSBIQVZFX1JFQ1ZGUk9NIDEKfCAjZGVm aW5lIEhBVkVfR0VUU09DS05BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRQRUVSTkFNRSAxCnwgI2Rl ZmluZSBIQVZFX0dFVElGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9GUkVFSUZBRERSUyAxCnwgI2Rl ZmluZSBIQVZFX0dBSV9TVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZFX1NZTkMgMQp8ICNkZWZpbmUg SEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0VORFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVf R0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0NGTUFL RVJBVyAxCnwgI2RlZmluZSBIQVZFX0NGU0VUU1BFRUQgMQp8ICNkZWZpbmUgSEFWRV9DT1BZU0lH TiAxCnwgI2RlZmluZSBIQVZFX19fRVhFQ1VUQUJMRV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0xP RzIgMQp8ICNkZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlM VElOX1VOV0lORF9JTklUIDEKfCAjZGVmaW5lIEhBVkVfRlNFRUtPIDEKfCAjZGVmaW5lIEhBVkVf R1JBTlRQVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBUIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfT1BF TlBUIDEKfCAjZGVmaW5lIFRFUk1JTkZPIDEKfCAjZGVmaW5lIEhBVkVfVElNRVJGRCAxCnwgI2Rl ZmluZSBIQVZFX1JFU19JTklUIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1VOSVBBSVJfVU5JQ09E RSAxCnwgI2RlZmluZSBIQVZFX0lORVRfU09DS0VUUyAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8 ICNkZWZpbmUgSEFWRV9WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVkZPUksgMQp8ICNk ZWZpbmUgSEFWRV9XT1JLSU5HX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9TTlBSSU5URiAxCnwgI2Rl ZmluZSBIQVZFX0dMSUIgMQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5GT19DT0RFU0VUIDEKfCAjZGVm aW5lIEhBVkVfTUJTVEFURV9UIDEKfCAjZGVmaW5lIEFNUEVSU0FORF9GVUxMX05BTUUgMQp8ICNk ZWZpbmUgSEFWRV9QVFlTIDEKfCAjZGVmaW5lIEhBVkVfU09DS0VUUyAxCnwgI2RlZmluZSBOVUxM X0RFVklDRSAiL2Rldi9udWxsIgp8ICNkZWZpbmUgU0VQQ0hBUiAnOicKfCAjZGVmaW5lIHN1YnBy b2Nlc3NlcyAxCnwgI2RlZmluZSBVU0VSX0ZVTExfTkFNRSBwdy0+cHdfZ2Vjb3MKfCAjZGVmaW5l IERJUkVDVE9SWV9TRVAgJy8nCnwgI2RlZmluZSBJU19ERVZJQ0VfU0VQKF9jXykgMAp8ICNkZWZp bmUgSVNfRElSRUNUT1JZX1NFUChfY18pICgoX2NfKSA9PSBESVJFQ1RPUllfU0VQKQp8ICNkZWZp bmUgSVNfQU5ZX1NFUChfY18pIChJU19ESVJFQ1RPUllfU0VQIChfY18pKQp8ICNkZWZpbmUgSEFW RV9QUk9DRlMgMQp8ICNkZWZpbmUgREVGQVVMVF9TT1VORF9ERVZJQ0UgIi9kZXYvZHNwIgp8ICNk ZWZpbmUgSU5URVJSVVBUX0lOUFVUIDEKfCAjZGVmaW5lIE5BUlJPV1BST1RPIDEKfCAjZGVmaW5l IFVOSVg5OF9QVFlTIDEKfCAjZGVmaW5lIFBUWV9JVEVSQVRJT04gaW50IGk7IGZvciAoaSA9IDA7 IGkgPCAxOyBpKyspCnwgI2RlZmluZSBQVFlfVFRZX05BTUVfU1BSSU5URiB7IGNoYXIgKnB0eW5h bWUgPSAwOyBzaWdzZXRfdCBibG9ja2VkOyBzaWdlbXB0eXNldCAoJmJsb2NrZWQpOyBzaWdhZGRz ZXQgKCZibG9ja2VkLCBTSUdDSExEKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfQkxPQ0ssICZibG9j a2VkLCAwKTsgaWYgKGdyYW50cHQgKGZkKSAhPSAtMSAmJiB1bmxvY2twdCAoZmQpICE9IC0xKSBw dHluYW1lID0gcHRzbmFtZShmZCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX1VOQkxPQ0ssICZibG9j a2VkLCAwKTsgaWYgKCFwdHluYW1lKSB7IGVtYWNzX2Nsb3NlIChmZCk7IHJldHVybiAtMTsgfSBz bnByaW50ZiAocHR5X25hbWUsIFBUWV9OQU1FX1NJWkUsICIlcyIsIHB0eW5hbWUpOyB9CnwgI2Rl ZmluZSBQVFlfT1BFTiBkbyB7IGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX0NMT0VYRUMg fCBPX05PQ1RUWSk7IGlmIChmZCA8IDAgJiYgZXJybm8gPT0gRUlOVkFMKSBmZCA9IHBvc2l4X29w ZW5wdCAoT19SRFdSIHwgT19OT0NUVFkpOyB9IHdoaWxlIChmYWxzZSkKfCAjZGVmaW5lIFBUWV9O QU1FX1NQUklOVEYgLyoqLwp8ICNkZWZpbmUgU0lHTkFMU19WSUFfQ0hBUkFDVEVSUyAxCnwgI2Rl ZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAjZGVm aW5lIEhBVkVfX1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVEpNUCAxCnwgI2RlZmluZSBI QVZFX1NUQUNLX09WRVJGTE9XX0hBTkRMSU5HIDEKfCAjZGVmaW5lIFVTRyAvKiovCnwgI2RlZmlu ZSBHTlVfTElOVVggLyoqLwp8ICNkZWZpbmUgVVNBQkxFX0ZJT05SRUFEIDEKfCAjZGVmaW5lIFVT QUJMRV9TSUdJTyAxCnwgI2RlZmluZSBDT1BZUklHSFQgIkNvcHlyaWdodCAoQykgMjAxNiBGcmVl IFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4iCnwgI2RlZmluZSBURVJNX0hFQURFUiAieHRlcm0u aCIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR1VSQVRJT04gIng4Nl82NC11bmtub3duLWxpbnV4LWdu dSIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR19PUFRJT05TICItLXdpdGgteC10b29sa2l0PWx1Y2lk Igp8ICNkZWZpbmUgSEFWRV9YX1dJTkRPV1MgMQp8ICNkZWZpbmUgVVNFX1hfVE9PTEtJVCAxCnwg I2RlZmluZSBVU0VfTFVDSUQgMQp8ICNkZWZpbmUgSEFWRV9YMTEgMQp8ICNkZWZpbmUgSEFWRV9T VFJVQ1RfQVRUUklCVVRFX0FMSUdORUQgMQp8ICNkZWZpbmUgR05VX01BTExPQyAxCnwgI2RlZmlu ZSBSRUxfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAxCnwgI2RlZmluZSBIQVZFX0FM TE9DQSAxCnwgI2RlZmluZSBIQVZFX1VOU0lHTkVEX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUg SEFWRV9DOTlfU1RSVE9MRCAxCnwgI2RlZmluZSBIQVZFX0VOVklST05fREVDTCAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfRkRBVEFTWU5DIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJNT0RFIDAKfCAj ZGVmaW5lIExTVEFUX0ZPTExPV1NfU0xBU0hFRF9TWU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVfR0VU T1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfTE9OR19PTkxZIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9HRVRFTlYgMQp8ICNkZWZpbmUgcmVzdHJpY3QgX19yZXN0cmljdAp8ICNkZWZpbmUgSEFW RV9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9NRU1SQ0hSIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9BTEFSTSAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVF9UIDEKfCAjZGVmaW5lIEhB VkVfV0NIQVJfVCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9UTV9UTV9aT05FIDEKfCAjZGVmaW5l IEhBVkVfVE1fWk9ORSAxCnwgI2RlZmluZSBIQVZFX1RNX0dNVE9GRiAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJUT1VNQVggMQp8ICNkZWZp bmUgSEFWRV9XT1JLSU5HX1VUSU1FUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9VVElNQlVGIDEK fCAjZGVmaW5lIEdFVEdST1VQU19UIGdpZF90CnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VURFRBQkxF U0laRSAxCnwgI2RlZmluZSBIQVZFX1NZU19BQ0xfSCAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRf RklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VU X0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZS RUUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9NT0RFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZS T01fVEVYVCAxCnwgI2RlZmluZSBIQVZFX0FDTF9ERUxFVEVfREVGX0ZJTEUgMQp8ICNkZWZpbmUg SEFWRV9BQ0xfRVhURU5ERURfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9MSUJBQ0xfSCAxCnwg I2RlZmluZSBIQVZFX0FDTF9FTlRSSUVTIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZJUlNUX0VOVFJZ IDEKfCAjZGVmaW5lIFVTRV9BQ0wgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUg SEFWRV9CWVRFU1dBUF9IIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tfR0VUVElNRSAxCnwgI2RlZmlu ZSBIQVZFX0NMT0NLX1NFVFRJTUUgMQp8ICNkZWZpbmUgR05VTElCX0NMT1NFX1NUUkVBTSAxCnwg I2RlZmluZSBIQVZFX0RVUDIgMQp8ICNkZWZpbmUgR05VTElCX0ZBQ0NFU1NBVCAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfRkRPUEVORElSIDEKfCAjZGVmaW5lIEdOVUxJQl9GRE9QRU5ESVIgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX19fRlBFTkRJTkcgMQp8ICNkZWZpbmUgR0VUVElNRU9GREFZX1RJTUVa T05FIHN0cnVjdCB0aW1lem9uZQp8ICNkZWZpbmUgSEFWRV9NRU1SQ0hSIDEKfCAjZGVmaW5lIEdO VUxJQl9NS09TVEVNUCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX0FUSU1fVFZfTlNF QyAxCnwgI2RlZmluZSBUWVBFT0ZfU1RSVUNUX1NUQVRfU1RfQVRJTV9JU19TVFJVQ1RfVElNRVNQ RUMgMQp8ICNkZWZpbmUgR05VTElCX0ZTQ0FORiAxCnwgI2RlZmluZSBHTlVMSUJfU0NBTkYgMQp8 ICNkZWZpbmUgSEFWRV9TVFBDUFkgMQp8ICNkZWZpbmUgbXlfc3RyZnRpbWUgbnN0cmZ0aW1lCnwg I2RlZmluZSBIQVZFX0RFQ0xfTE9DQUxUSU1FX1IgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8K fCAjaW5jbHVkZSA8dGltZS5oPgp8IAp8IGludAp8IG1haW4gKCkKfCB7CnwgaWYgKHNpemVvZiAo dGltZXpvbmVfdCkpCnwgCSByZXR1cm4gMDsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmln dXJlOjI5MzEwOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToyOTM5NzogY2hlY2tpbmcgZm9yIGxpYnJh cnkgY29udGFpbmluZyB0aW1lcl9zZXR0aW1lCmNvbmZpZ3VyZToyOTQyODogZ2NjIC1vIGNvbmZ0 ZXN0IC1nMyAtTzIgICAgICBjb25mdGVzdC5jIC1scHRocmVhZCAgPiY1IAovdG1wL2NjemZIV3h5 Lm86IEluIGZ1bmN0aW9uIGBtYWluJzoKL2hvbWUvZGVlY2gvRG93bmxvYWRzL2VtYWNzLTI1LjEv Y29uZnRlc3QuYzozMjA6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYHRpbWVyX3NldHRpbWUnCmNv bGxlY3QyOiBlcnJvcjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpjb25maWd1cmU6Mjk0Mjg6 ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICov CnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFS TkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjI1LjEiCnwgI2RlZmluZSBQ QUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9S VCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgImh0dHA6Ly93 d3cuZ251Lm9yZy9zb2Z0d2FyZS9lbWFjcy8iCnwgI2RlZmluZSBQQUNLQUdFICJlbWFjcyIKfCAj ZGVmaW5lIFZFUlNJT04gIjI1LjEiCnwgI2RlZmluZSBNQUlMX1VTRV9QT1AgMQp8ICNkZWZpbmUg SEFWRV9QVVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9UWlNFVCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1P RCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LQVQgMQp8ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQg MQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2Rl ZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZF X0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfTUtP U1RFTVAgMQp8ICNkZWZpbmUgSEFWRV9QSVBFMiAxCnwgI2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8 ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2Rl ZmluZSBIQVZFX1NUUlRPVU1BWCAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUg SEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX1RJTUVHTSAxCnwgI2RlZmluZSBIQVZF X0ZVVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVTQVQgMQp8ICNkZWZpbmUgSEFWRV9GVVRJ TUVOUyAxCnwgI2RlZmluZSBIQVZFX1VUSU1FTlNBVCAxCnwgI2RlZmluZSBIQVZFX0xVVElNRVMg MQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VDVVJFX0dF VEVOViAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAx CnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVm aW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBf X0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBfQUxMX1NPVVJDRSAxCnwgI2RlZmluZSBfREFSV0lO X0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIF9fVVNFX01JTkdX X0FOU0lfU1RESU8gMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVm aW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVmaW5lIF9EQVJXSU5fVVNFXzY0X0JJVF9JTk9ERSAx CnwgI2RlZmluZSBTWVNURU1fVFlQRSAiZ251L2xpbnV4Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09V TkRDQVJEX0ggMQp8ICNkZWZpbmUgSEFWRV9BTFNBIDEKfCAjZGVmaW5lIEhBVkVfU09VTkQgMQp8 ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0gg MQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5l IEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBI QVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVf RElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKfCAjZGVmaW5lIEhBVkVfU1RE SU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19U SU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0gg MQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8 ICNkZWZpbmUgSEFWRV9QRVJTT05BTElUWV9MSU5VWDMyIDEKfCAjZGVmaW5lIEhBVkVfTElOVVhf U1lTSU5GTyAxCnwgI2RlZmluZSBMSU5VWF9TWVNJTkZPX1VOSVQgMQp8ICNkZWZpbmUgSEFWRV9U RVJNX0ggMQp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9TWVNfU0lHTElTVCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFW RV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZFX0lGQUREUlNfSCAxCnwgI2RlZmluZSBIQVZFX1NU UlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hX QUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfTkVUTUFTSyAxCnwgI2RlZmlu ZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJPQURBRERSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNU X0lGUkVRX0lGUl9BRERSIDEKfCAjZGVmaW5lIEhBVkVfTE9OR19GSUxFX05BTUVTIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1ZMSU1JVF9IIDEKfCAjZGVmaW5lIEhBVkVfREFUQV9TVEFSVCAxCnwgI2Rl ZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2RlZmluZSBI QVZFX1BUSFJFQUQgMQp8ICNkZWZpbmUgSEFWRV9YS0IgMQp8ICNkZWZpbmUgSEFWRV9YUk1TRVRE QVRBQkFTRSAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNPVVJDRVNUUklORyAxCnwgI2RlZmlu ZSBIQVZFX1hTQ1JFRU5OVU1CRVJPRlNDUkVFTiAxCnwgI2RlZmluZSBIQVZFX1gxMVI2IDEKfCAj ZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVmaW5lIEhBVkVfWDExUjZfWElNIDEKfCAjZGVmaW5l IEhBVkVfUlNWRyAxCnwgI2RlZmluZSBIQVZFX0lNQUdFTUFHSUNLIDEKfCAjZGVmaW5lIEhBVkVf TUFHSUNLRVhQT1JUSU1BR0VQSVhFTFMgMQp8ICNkZWZpbmUgSEFWRV9NQUdJQ0tNRVJHRUlNQUdF TEFZRVJTIDEKfCAjZGVmaW5lIEhBVkVfREJVUyAxCnwgI2RlZmluZSBIQVZFX0RCVVNfV0FUQ0hf R0VUX1VOSVhfRkQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1RZUEVfSVNfVkFMSUQgMQp8ICNkZWZp bmUgSEFWRV9EQlVTX1ZBTElEQVRFX0JVU19OQU1FIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJ REFURV9QQVRIIDEKfCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9JTlRFUkZBQ0UgMQp8ICNk ZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX01FTUJFUiAxCnwgI2RlZmluZSBIQVZFX0dTRVRUSU5H UyAxCnwgI2RlZmluZSBIQVZFX0dDT05GIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTIDEKfCAjZGVm aW5lIEhBVkVfR05VVExTMyAxCnwgI2RlZmluZSBIQVZFX0lOT1RJRlkgMQp8ICNkZWZpbmUgVVNF X0ZJTEVfTk9USUZZIDEKfCAjZGVmaW5lIEhBVkVfWDExWFRSNiAxCnwgI2RlZmluZSBVU0VfVE9P TEtJVF9TQ1JPTExfQkFSUyAxCnwgI2RlZmluZSBIQVZFX1hJTSAxCnwgI2RlZmluZSBVU0VfWElN IDEKfCAjZGVmaW5lIFhSZWdpc3RlcklNSW5zdGFudGlhdGVDYWxsYmFja19hcmc2IFhQb2ludGVy CnwgI2RlZmluZSBIQVZFX1hGVCAxCnwgI2RlZmluZSBIQVZFX0ZSRUVUWVBFIDEKfCAjZGVmaW5l IEhBVkVfTElCT1RGIDEKfCAjZGVmaW5lIEhBVkVfT1RGX0dFVF9WQVJJQVRJT05fR0xZUEhTIDEK fCAjZGVmaW5lIEhBVkVfTTE3Tl9GTFQgMQp8ICNkZWZpbmUgVVNFX1hDQiAxCnwgI2RlZmluZSBI QVZFX1hQTSAxCnwgI2RlZmluZSBIQVZFX0pQRUcgMQp8ICNkZWZpbmUgSEFWRV9aTElCIDEKfCAj ZGVmaW5lIEhBVkVfUE5HIDEKfCAjZGVmaW5lIEhBVkVfVElGRiAxCnwgI2RlZmluZSBIQVZFX0dJ RiAxCnwgI2RlZmluZSBIQVZFX0dQTSAxCnwgI2RlZmluZSBIQVZFX1hfU00gMQp8ICNkZWZpbmUg SEFWRV9YUkFORFIgMQp8ICNkZWZpbmUgSEFWRV9YSU5FUkFNQSAxCnwgI2RlZmluZSBIQVZFX1hG SVhFUyAxCnwgI2RlZmluZSBIQVZFX0xJQlhNTDIgMQp8ICNkZWZpbmUgSEFWRV9IX0VSUk5PIDEK fCAjZGVmaW5lIE1BSUxfVVNFX0ZMT0NLIDEKfCAjZGVmaW5lIEhBVkVfQUNDRVBUNCAxCnwgI2Rl ZmluZSBIQVZFX0ZDSERJUiAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5l IEhBVkVfR0VUUlVTQUdFIDEKfCAjZGVmaW5lIEhBVkVfR0VUX0NVUlJFTlRfRElSX05BTUUgMQp8 ICNkZWZpbmUgSEFWRV9MUkFORDQ4IDEKfCAjZGVmaW5lIEhBVkVfUkFORE9NIDEKfCAjZGVmaW5l IEhBVkVfUklOVCAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBB R0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfTkVXTE9D QUxFIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlU IDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9HRVRBRERSSU5GTyAx CnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlNJR05B TCAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX1NFTkRUTyAxCnwg I2RlZmluZSBIQVZFX1JFQ1ZGUk9NIDEKfCAjZGVmaW5lIEhBVkVfR0VUU09DS05BTUUgMQp8ICNk ZWZpbmUgSEFWRV9HRVRQRUVSTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVElGQUREUlMgMQp8ICNk ZWZpbmUgSEFWRV9GUkVFSUZBRERSUyAxCnwgI2RlZmluZSBIQVZFX0dBSV9TVFJFUlJPUiAxCnwg I2RlZmluZSBIQVZFX1NZTkMgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBI QVZFX0VORFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9F TkRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0NGTUFLRVJBVyAxCnwgI2RlZmluZSBIQVZFX0NGU0VU U1BFRUQgMQp8ICNkZWZpbmUgSEFWRV9DT1BZU0lHTiAxCnwgI2RlZmluZSBIQVZFX19fRVhFQ1VU QUJMRV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0xPRzIgMQp8ICNkZWZpbmUgSEFWRV9BTElHTkVE X0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElOX1VOV0lORF9JTklUIDEKfCAjZGVmaW5l IEhBVkVfRlNFRUtPIDEKfCAjZGVmaW5lIEhBVkVfR1JBTlRQVCAxCnwgI2RlZmluZSBIQVZFX0dF VFBUIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfT1BFTlBUIDEKfCAjZGVmaW5lIFRFUk1JTkZPIDEK fCAjZGVmaW5lIEhBVkVfVElNRVJGRCAxCnwgI2RlZmluZSBIQVZFX1JFU19JTklUIDEKfCAjZGVm aW5lIEhBVkVfU1RSVUNUX1VOSVBBSVJfVU5JQ09ERSAxCnwgI2RlZmluZSBIQVZFX0lORVRfU09D S0VUUyAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9WRk9SSyAxCnwgI2Rl ZmluZSBIQVZFX1dPUktJTkdfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX0ZPUksgMQp8 ICNkZWZpbmUgSEFWRV9TTlBSSU5URiAxCnwgI2RlZmluZSBIQVZFX0dMSUIgMQp8ICNkZWZpbmUg SEFWRV9MQU5HSU5GT19DT0RFU0VUIDEKfCAjZGVmaW5lIEhBVkVfTUJTVEFURV9UIDEKfCAjZGVm aW5lIEFNUEVSU0FORF9GVUxMX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9QVFlTIDEKfCAjZGVmaW5l IEhBVkVfU09DS0VUUyAxCnwgI2RlZmluZSBOVUxMX0RFVklDRSAiL2Rldi9udWxsIgp8ICNkZWZp bmUgU0VQQ0hBUiAnOicKfCAjZGVmaW5lIHN1YnByb2Nlc3NlcyAxCnwgI2RlZmluZSBVU0VSX0ZV TExfTkFNRSBwdy0+cHdfZ2Vjb3MKfCAjZGVmaW5lIERJUkVDVE9SWV9TRVAgJy8nCnwgI2RlZmlu ZSBJU19ERVZJQ0VfU0VQKF9jXykgMAp8ICNkZWZpbmUgSVNfRElSRUNUT1JZX1NFUChfY18pICgo X2NfKSA9PSBESVJFQ1RPUllfU0VQKQp8ICNkZWZpbmUgSVNfQU5ZX1NFUChfY18pIChJU19ESVJF Q1RPUllfU0VQIChfY18pKQp8ICNkZWZpbmUgSEFWRV9QUk9DRlMgMQp8ICNkZWZpbmUgREVGQVVM VF9TT1VORF9ERVZJQ0UgIi9kZXYvZHNwIgp8ICNkZWZpbmUgSU5URVJSVVBUX0lOUFVUIDEKfCAj ZGVmaW5lIE5BUlJPV1BST1RPIDEKfCAjZGVmaW5lIFVOSVg5OF9QVFlTIDEKfCAjZGVmaW5lIFBU WV9JVEVSQVRJT04gaW50IGk7IGZvciAoaSA9IDA7IGkgPCAxOyBpKyspCnwgI2RlZmluZSBQVFlf VFRZX05BTUVfU1BSSU5URiB7IGNoYXIgKnB0eW5hbWUgPSAwOyBzaWdzZXRfdCBibG9ja2VkOyBz aWdlbXB0eXNldCAoJmJsb2NrZWQpOyBzaWdhZGRzZXQgKCZibG9ja2VkLCBTSUdDSExEKTsgcHRo cmVhZF9zaWdtYXNrIChTSUdfQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKGdyYW50cHQgKGZkKSAh PSAtMSAmJiB1bmxvY2twdCAoZmQpICE9IC0xKSBwdHluYW1lID0gcHRzbmFtZShmZCk7IHB0aHJl YWRfc2lnbWFzayAoU0lHX1VOQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKCFwdHluYW1lKSB7IGVt YWNzX2Nsb3NlIChmZCk7IHJldHVybiAtMTsgfSBzbnByaW50ZiAocHR5X25hbWUsIFBUWV9OQU1F X1NJWkUsICIlcyIsIHB0eW5hbWUpOyB9CnwgI2RlZmluZSBQVFlfT1BFTiBkbyB7IGZkID0gcG9z aXhfb3BlbnB0IChPX1JEV1IgfCBPX0NMT0VYRUMgfCBPX05PQ1RUWSk7IGlmIChmZCA8IDAgJiYg ZXJybm8gPT0gRUlOVkFMKSBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19OT0NUVFkpOyB9 IHdoaWxlIChmYWxzZSkKfCAjZGVmaW5lIFBUWV9OQU1FX1NQUklOVEYgLyoqLwp8ICNkZWZpbmUg U0lHTkFMU19WSUFfQ0hBUkFDVEVSUyAxCnwgI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNk ZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAjZGVmaW5lIEhBVkVfX1NFVEpNUCAxCnwgI2RlZmlu ZSBIQVZFX1NJR1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NUQUNLX09WRVJGTE9XX0hBTkRMSU5H IDEKfCAjZGVmaW5lIFVTRyAvKiovCnwgI2RlZmluZSBHTlVfTElOVVggLyoqLwp8ICNkZWZpbmUg VVNBQkxFX0ZJT05SRUFEIDEKfCAjZGVmaW5lIFVTQUJMRV9TSUdJTyAxCnwgI2RlZmluZSBDT1BZ UklHSFQgIkNvcHlyaWdodCAoQykgMjAxNiBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4i CnwgI2RlZmluZSBURVJNX0hFQURFUiAieHRlcm0uaCIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR1VS QVRJT04gIng4Nl82NC11bmtub3duLWxpbnV4LWdudSIKfCAjZGVmaW5lIEVNQUNTX0NPTkZJR19P UFRJT05TICItLXdpdGgteC10b29sa2l0PWx1Y2lkIgp8ICNkZWZpbmUgSEFWRV9YX1dJTkRPV1Mg MQp8ICNkZWZpbmUgVVNFX1hfVE9PTEtJVCAxCnwgI2RlZmluZSBVU0VfTFVDSUQgMQp8ICNkZWZp bmUgSEFWRV9YMTEgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfQVRUUklCVVRFX0FMSUdORUQgMQp8 ICNkZWZpbmUgR05VX01BTExPQyAxCnwgI2RlZmluZSBSRUxfQUxMT0MgMQp8ICNkZWZpbmUgSEFW RV9BTExPQ0FfSCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBIQVZFX1VOU0lH TkVEX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUgSEFWRV9DOTlfU1RSVE9MRCAxCnwgI2RlZmlu ZSBIQVZFX0VOVklST05fREVDTCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkRBVEFTWU5DIDEKfCAj ZGVmaW5lIEhBVkVfREVDTF9TVFJNT0RFIDAKfCAjZGVmaW5lIExTVEFUX0ZPTExPV1NfU0xBU0hF RF9TWU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRP UFRfTE9OR19PTkxZIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9HRVRFTlYgMQp8ICNkZWZpbmUgcmVz dHJpY3QgX19yZXN0cmljdAp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkdfSU5UIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9NRU1SQ0hSIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9BTEFSTSAxCnwgI2RlZmlu ZSBIQVZFX1NJR1NFVF9UIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfVCAxCnwgI2RlZmluZSBIQVZF X1NUUlVDVF9UTV9UTV9aT05FIDEKfCAjZGVmaW5lIEhBVkVfVE1fWk9ORSAxCnwgI2RlZmluZSBI QVZFX1RNX0dNVE9GRiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSVE9JTUFYIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9TVFJUT1VNQVggMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1VUSU1FUyAxCnwg I2RlZmluZSBIQVZFX1NUUlVDVF9VVElNQlVGIDEKfCAjZGVmaW5lIEdFVEdST1VQU19UIGdpZF90 CnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZFX1NZU19B Q0xfSCAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9H RVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xf U0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZSRUUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJP TV9NT0RFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZST01fVEVYVCAxCnwgI2RlZmluZSBIQVZFX0FD TF9ERUxFVEVfREVGX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfRVhURU5ERURfRklMRSAxCnwg I2RlZmluZSBIQVZFX0FDTF9MSUJBQ0xfSCAxCnwgI2RlZmluZSBIQVZFX0FDTF9FTlRSSUVTIDEK fCAjZGVmaW5lIEhBVkVfQUNMX0ZJUlNUX0VOVFJZIDEKfCAjZGVmaW5lIFVTRV9BQ0wgMQp8ICNk ZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgSEFWRV9CWVRFU1dBUF9IIDEKfCAjZGVmaW5l IEhBVkVfQ0xPQ0tfR0VUVElNRSAxCnwgI2RlZmluZSBIQVZFX0NMT0NLX1NFVFRJTUUgMQp8ICNk ZWZpbmUgR05VTElCX0NMT1NFX1NUUkVBTSAxCnwgI2RlZmluZSBIQVZFX0RVUDIgMQp8ICNkZWZp bmUgR05VTElCX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkRPUEVORElSIDEKfCAj ZGVmaW5lIEdOVUxJQl9GRE9QRU5ESVIgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX19fRlBFTkRJTkcg MQp8ICNkZWZpbmUgR0VUVElNRU9GREFZX1RJTUVaT05FIHN0cnVjdCB0aW1lem9uZQp8ICNkZWZp bmUgSEFWRV9NRU1SQ0hSIDEKfCAjZGVmaW5lIEdOVUxJQl9NS09TVEVNUCAxCnwgI2RlZmluZSBI QVZFX1NUUlVDVF9TVEFUX1NUX0FUSU1fVFZfTlNFQyAxCnwgI2RlZmluZSBUWVBFT0ZfU1RSVUNU X1NUQVRfU1RfQVRJTV9JU19TVFJVQ1RfVElNRVNQRUMgMQp8ICNkZWZpbmUgR05VTElCX0ZTQ0FO RiAxCnwgI2RlZmluZSBHTlVMSUJfU0NBTkYgMQp8ICNkZWZpbmUgSEFWRV9TVFBDUFkgMQp8ICNk ZWZpbmUgbXlfc3RyZnRpbWUgbnN0cmZ0aW1lCnwgI2RlZmluZSBIQVZFX0RFQ0xfTE9DQUxUSU1F X1IgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAvKiBPdmVycmlkZSBhbnkgR0NDIGlu dGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4KfCAgICBVc2UgY2hhciBiZWNhdXNl IGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBHQ0MKfCAgICBidWlsdGluIGFu ZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLwp8ICNp ZmRlZiBfX2NwbHVzcGx1cwp8IGV4dGVybiAiQyIKfCAjZW5kaWYKfCBjaGFyIHRpbWVyX3NldHRp bWUgKCk7CnwgaW50CnwgbWFpbiAoKQp8IHsKfCByZXR1cm4gdGltZXJfc2V0dGltZSAoKTsKfCAg IDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjI5NDI4OiBnY2MgLW8gY29uZnRlc3QgLWcz IC1PMiAgICAgIGNvbmZ0ZXN0LmMgLWxydCAgLWxwdGhyZWFkICA+JjUgCmNvbmZpZ3VyZToyOTQy ODogJD8gPSAwCmNvbmZpZ3VyZToyOTQ0NTogcmVzdWx0OiAtbHJ0CmNvbmZpZ3VyZToyOTQ1Nzog Y2hlY2tpbmcgZm9yIHRpbWVyX3NldHRpbWUKY29uZmlndXJlOjI5NDU3OiBnY2MgLW8gY29uZnRl c3QgLWczIC1PMiAgICAgIGNvbmZ0ZXN0LmMgLWxydCAtbHB0aHJlYWQgID4mNSAKY29uZmlndXJl OjI5NDU3OiAkPyA9IDAKY29uZmlndXJlOjI5NDU3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6Mjk2 Mjc6IGNoZWNraW5nIGZvciB2YXJpYWJsZS1sZW5ndGggYXJyYXlzCmNvbmZpZ3VyZToyOTY4Mzog Z2NjIC1jIC1nMyAtTzIgICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjI5NjgzOiAkPyA9IDAK Y29uZmlndXJlOjI5NjkzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzAxNjM6IGNoZWNraW5nIHdo ZXRoZXIgZ2V0ZHRhYmxlc2l6ZSB3b3Jrcwpjb25maWd1cmU6MzAxOTI6IGdjYyAtbyBjb25mdGVz dCAtZzMgLU8yICAgICAgY29uZnRlc3QuYyAtbHB0aHJlYWQgID4mNSAKY29uZmlndXJlOjMwMTky OiAkPyA9IDAKY29uZmlndXJlOjMwMTkyOiAuL2NvbmZ0ZXN0CmNvbmZpZ3VyZTozMDE5MjogJD8g PSAwCmNvbmZpZ3VyZTozMDIwMzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjMxMjAxOiBjaGVja2lu ZyB3aGV0aGVyIGdjYyBhY2NlcHRzIC1ub3BpZQpjb25maWd1cmU6MzEyMjE6IGdjYyAtbyBjb25m dGVzdCAtZzMgLU8yICAgICAgLW5vcGllIGNvbmZ0ZXN0LmMgICA+JjUgCmdjYzogZXJyb3I6IHVu cmVjb2duaXplZCBjb21tYW5kIGxpbmUgb3B0aW9uICctbm9waWUnOyBkaWQgeW91IG1lYW4gJy1u by1waWUnPwpjb25maWd1cmU6MzEyMjE6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFt IHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFj cyIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCnwgI2RlZmluZSBQQUNLQUdFX1ZF UlNJT04gIjI1LjEiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIEVtYWNzIDI1LjEiCnwg I2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWdudS1lbWFjc0BnbnUub3JnIgp8ICNkZWZp bmUgUEFDS0FHRV9VUkwgImh0dHA6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9lbWFjcy8iCnwgI2Rl ZmluZSBQQUNLQUdFICJlbWFjcyIKfCAjZGVmaW5lIFZFUlNJT04gIjI1LjEiCnwgI2RlZmluZSBN QUlMX1VTRV9QT1AgMQp8ICNkZWZpbmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9UWlNF VCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LQVQgMQp8 ICNkZWZpbmUgSEFWRV9GQUNDRVNTQVQgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmlu ZSBIQVZFX0ZET1BFTkRJUiAxCnwgI2RlZmluZSBIQVZFX0ZTVEFUQVQgMQp8ICNkZWZpbmUgSEFW RV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX0xT VEFUIDEKfCAjZGVmaW5lIEhBVkVfTUtPU1RFTVAgMQp8ICNkZWZpbmUgSEFWRV9QSVBFMiAxCnwg I2RlZmluZSBIQVZFX1BTRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmlu ZSBIQVZFX1NUUlRPSU1BWCAxCnwgI2RlZmluZSBIQVZFX1NUUlRPVU1BWCAxCnwgI2RlZmluZSBI QVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9MT0NBTFRJTUVfUiAxCnwgI2RlZmluZSBIQVZF X1RJTUVHTSAxCnwgI2RlZmluZSBIQVZFX0ZVVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVT QVQgMQp8ICNkZWZpbmUgSEFWRV9GVVRJTUVOUyAxCnwgI2RlZmluZSBIQVZFX1VUSU1FTlNBVCAx CnwgI2RlZmluZSBIQVZFX0xVVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEK fCAjZGVmaW5lIEhBVkVfU0VDVVJFX0dFVEVOViAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8 ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8 ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVm aW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUg SEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFW RV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBfQUxMX1NP VVJDRSAxCnwgI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNF IDEKfCAjZGVmaW5lIF9fVVNFX01JTkdXX0FOU0lfU1RESU8gMQp8ICNkZWZpbmUgX1BPU0lYX1BU SFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKfCAjZGVmaW5lIF9E QVJXSU5fVVNFXzY0X0JJVF9JTk9ERSAxCnwgI2RlZmluZSBTWVNURU1fVFlQRSAiZ251L2xpbnV4 Igp8ICNkZWZpbmUgSEFWRV9TWVNfU09VTkRDQVJEX0ggMQp8ICNkZWZpbmUgSEFWRV9BTFNBIDEK fCAjZGVmaW5lIEhBVkVfU09VTkQgMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTSU5GT19IIDEKfCAj ZGVmaW5lIEhBVkVfUFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmlu ZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBI QVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9FWEVDSU5G T19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEK fCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwg I2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QRVJTT05BTElUWV9MSU5VWDMy IDEKfCAjZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5GTyAxCnwgI2RlZmluZSBMSU5VWF9TWVNJTkZP X1VOSVQgMQp8ICNkZWZpbmUgSEFWRV9URVJNX0ggMQp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19U SU1FIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TWVNfU0lHTElTVCAxCnwgI2RlZmluZSBIQVZFX1NZ U19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRfSUZfSCAxCnwgI2RlZmluZSBIQVZFX0lGQURE UlNfSCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfRkxBR1MgMQp8ICNkZWZpbmUg SEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0hXQUREUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJF UV9JRlJfTkVUTUFTSyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQlJPQURBRERS IDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERSIDEKfCAjZGVmaW5lIEhBVkVf TE9OR19GSUxFX05BTUVTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1ZMSU1JVF9IIDEKfCAjZGVmaW5l IEhBVkVfREFUQV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5l IEhBVkVfTU1BUCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQUQgMQp8ICNkZWZpbmUgSEFWRV9YS0Ig MQp8ICNkZWZpbmUgSEFWRV9YUk1TRVREQVRBQkFTRSAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5S RVNPVVJDRVNUUklORyAxCnwgI2RlZmluZSBIQVZFX1hTQ1JFRU5OVU1CRVJPRlNDUkVFTiAxCnwg I2RlZmluZSBIQVZFX1gxMVI2IDEKfCAjZGVmaW5lIEhBVkVfWF9JMThOIDEKfCAjZGVmaW5lIEhB VkVfWDExUjZfWElNIDEKfCAjZGVmaW5lIEhBVkVfUlNWRyAxCnwgI2RlZmluZSBIQVZFX0lNQUdF TUFHSUNLIDEKfCAjZGVmaW5lIEhBVkVfTUFHSUNLRVhQT1JUSU1BR0VQSVhFTFMgMQp8ICNkZWZp bmUgSEFWRV9NQUdJQ0tNRVJHRUlNQUdFTEFZRVJTIDEKfCAjZGVmaW5lIEhBVkVfREJVUyAxCnwg I2RlZmluZSBIQVZFX0RCVVNfV0FUQ0hfR0VUX1VOSVhfRkQgMQp8ICNkZWZpbmUgSEFWRV9EQlVT X1RZUEVfSVNfVkFMSUQgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX0JVU19OQU1FIDEK fCAjZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9QQVRIIDEKfCAjZGVmaW5lIEhBVkVfREJVU19W QUxJREFURV9JTlRFUkZBQ0UgMQp8ICNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRFX01FTUJFUiAx CnwgI2RlZmluZSBIQVZFX0dTRVRUSU5HUyAxCnwgI2RlZmluZSBIQVZFX0dDT05GIDEKfCAjZGVm aW5lIEhBVkVfR05VVExTIDEKfCAjZGVmaW5lIEhBVkVfR05VVExTMyAxCnwgI2RlZmluZSBIQVZF X0lOT1RJRlkgMQp8ICNkZWZpbmUgVVNFX0ZJTEVfTk9USUZZIDEKfCAjZGVmaW5lIEhBVkVfWDEx WFRSNiAxCnwgI2RlZmluZSBVU0VfVE9PTEtJVF9TQ1JPTExfQkFSUyAxCnwgI2RlZmluZSBIQVZF X1hJTSAxCnwgI2RlZmluZSBVU0VfWElNIDEKfCAjZGVmaW5lIFhSZWdpc3RlcklNSW5zdGFudGlh dGVDYWxsYmFja19hcmc2IFhQb2ludGVyCnwgI2RlZmluZSBIQVZFX1hGVCAxCnwgI2RlZmluZSBI QVZFX0ZSRUVUWVBFIDEKfCAjZGVmaW5lIEhBVkVfTElCT1RGIDEKfCAjZGVmaW5lIEhBVkVfT1RG X0dFVF9WQVJJQVRJT05fR0xZUEhTIDEKfCAjZGVmaW5lIEhBVkVfTTE3Tl9GTFQgMQp8ICNkZWZp bmUgVVNFX1hDQiAxCnwgI2RlZmluZSBIQVZFX1hQTSAxCnwgI2RlZmluZSBIQVZFX0pQRUcgMQp8 ICNkZWZpbmUgSEFWRV9aTElCIDEKfCAjZGVmaW5lIEhBVkVfUE5HIDEKfCAjZGVmaW5lIEhBVkVf VElGRiAxCnwgI2RlZmluZSBIQVZFX0dJRiAxCnwgI2RlZmluZSBIQVZFX0dQTSAxCnwgI2RlZmlu ZSBIQVZFX1hfU00gMQp8ICNkZWZpbmUgSEFWRV9YUkFORFIgMQp8ICNkZWZpbmUgSEFWRV9YSU5F UkFNQSAxCnwgI2RlZmluZSBIQVZFX1hGSVhFUyAxCnwgI2RlZmluZSBIQVZFX0xJQlhNTDIgMQp8 ICNkZWZpbmUgSEFWRV9IX0VSUk5PIDEKfCAjZGVmaW5lIE1BSUxfVVNFX0ZMT0NLIDEKfCAjZGVm aW5lIEhBVkVfQUNDRVBUNCAxCnwgI2RlZmluZSBIQVZFX0ZDSERJUiAxCnwgI2RlZmluZSBIQVZF X0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUUlVTQUdFIDEKfCAjZGVmaW5lIEhBVkVf R0VUX0NVUlJFTlRfRElSX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9MUkFORDQ4IDEKfCAjZGVmaW5l IEhBVkVfUkFORE9NIDEKfCAjZGVmaW5lIEhBVkVfUklOVCAxCnwgI2RlZmluZSBIQVZFX1NFTEVD VCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxF IDEKfCAjZGVmaW5lIEhBVkVfTkVXTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEK fCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNk ZWZpbmUgSEFWRV9HRVRBRERSSU5GTyAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfU0lHTUFTSyAx CnwgI2RlZmluZSBIQVZFX1NUUlNJR05BTCAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwg I2RlZmluZSBIQVZFX1NFTkRUTyAxCnwgI2RlZmluZSBIQVZFX1JFQ1ZGUk9NIDEKfCAjZGVmaW5l IEhBVkVfR0VUU09DS05BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRQRUVSTkFNRSAxCnwgI2RlZmlu ZSBIQVZFX0dFVElGQUREUlMgMQp8ICNkZWZpbmUgSEFWRV9GUkVFSUZBRERSUyAxCnwgI2RlZmlu ZSBIQVZFX0dBSV9TVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZFX1NZTkMgMQp8ICNkZWZpbmUgSEFW RV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0VORFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VU R1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0NGTUFLRVJB VyAxCnwgI2RlZmluZSBIQVZFX0NGU0VUU1BFRUQgMQp8ICNkZWZpbmUgSEFWRV9DT1BZU0lHTiAx CnwgI2RlZmluZSBIQVZFX19fRVhFQ1VUQUJMRV9TVEFSVCAxCnwgI2RlZmluZSBIQVZFX0xPRzIg MQp8ICNkZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9DIDEKfCAjZGVmaW5lIEhBVkVfX19CVUlMVElO X1VOV0lORF9JTklUIDEKfCAjZGVmaW5lIEhBVkVfRlNFRUtPIDEKfCAjZGVmaW5lIEhBVkVfR1JB TlRQVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBUIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfT1BFTlBU IDEKfCAjZGVmaW5lIFRFUk1JTkZPIDEKfCAjZGVmaW5lIEhBVkVfVElNRVJGRCAxCnwgI2RlZmlu ZSBIQVZFX1JFU19JTklUIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1VOSVBBSVJfVU5JQ09ERSAx CnwgI2RlZmluZSBIQVZFX0lORVRfU09DS0VUUyAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNk ZWZpbmUgSEFWRV9WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVkZPUksgMQp8ICNkZWZp bmUgSEFWRV9XT1JLSU5HX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9TTlBSSU5URiAxCnwgI2RlZmlu ZSBIQVZFX0dMSUIgMQp8ICNkZWZpbmUgSEFWRV9MQU5HSU5GT19DT0RFU0VUIDEKfCAjZGVmaW5l IEhBVkVfTUJTVEFURV9UIDEKfCAjZGVmaW5lIEFNUEVSU0FORF9GVUxMX05BTUUgMQp8ICNkZWZp bmUgSEFWRV9QVFlTIDEKfCAjZGVmaW5lIEhBVkVfU09DS0VUUyAxCnwgI2RlZmluZSBOVUxMX0RF VklDRSAiL2Rldi9udWxsIgp8ICNkZWZpbmUgU0VQQ0hBUiAnOicKfCAjZGVmaW5lIHN1YnByb2Nl c3NlcyAxCnwgI2RlZmluZSBVU0VSX0ZVTExfTkFNRSBwdy0+cHdfZ2Vjb3MKfCAjZGVmaW5lIERJ UkVDVE9SWV9TRVAgJy8nCnwgI2RlZmluZSBJU19ERVZJQ0VfU0VQKF9jXykgMAp8ICNkZWZpbmUg SVNfRElSRUNUT1JZX1NFUChfY18pICgoX2NfKSA9PSBESVJFQ1RPUllfU0VQKQp8ICNkZWZpbmUg SVNfQU5ZX1NFUChfY18pIChJU19ESVJFQ1RPUllfU0VQIChfY18pKQp8ICNkZWZpbmUgSEFWRV9Q Uk9DRlMgMQp8ICNkZWZpbmUgREVGQVVMVF9TT1VORF9ERVZJQ0UgIi9kZXYvZHNwIgp8ICNkZWZp bmUgSU5URVJSVVBUX0lOUFVUIDEKfCAjZGVmaW5lIE5BUlJPV1BST1RPIDEKfCAjZGVmaW5lIFVO SVg5OF9QVFlTIDEKfCAjZGVmaW5lIFBUWV9JVEVSQVRJT04gaW50IGk7IGZvciAoaSA9IDA7IGkg PCAxOyBpKyspCnwgI2RlZmluZSBQVFlfVFRZX05BTUVfU1BSSU5URiB7IGNoYXIgKnB0eW5hbWUg PSAwOyBzaWdzZXRfdCBibG9ja2VkOyBzaWdlbXB0eXNldCAoJmJsb2NrZWQpOyBzaWdhZGRzZXQg KCZibG9ja2VkLCBTSUdDSExEKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfQkxPQ0ssICZibG9ja2Vk LCAwKTsgaWYgKGdyYW50cHQgKGZkKSAhPSAtMSAmJiB1bmxvY2twdCAoZmQpICE9IC0xKSBwdHlu YW1lID0gcHRzbmFtZShmZCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX1VOQkxPQ0ssICZibG9ja2Vk LCAwKTsgaWYgKCFwdHluYW1lKSB7IGVtYWNzX2Nsb3NlIChmZCk7IHJldHVybiAtMTsgfSBzbnBy aW50ZiAocHR5X25hbWUsIFBUWV9OQU1FX1NJWkUsICIlcyIsIHB0eW5hbWUpOyB9CnwgI2RlZmlu ZSBQVFlfT1BFTiBkbyB7IGZkID0gcG9zaXhfb3BlbnB0IChPX1JEV1IgfCBPX0NMT0VYRUMgfCBP X05PQ1RUWSk7IGlmIChmZCA8IDAgJiYgZXJybm8gPT0gRUlOVkFMKSBmZCA9IHBvc2l4X29wZW5w dCAoT19SRFdSIHwgT19OT0NUVFkpOyB9IHdoaWxlIChmYWxzZSkKfCAjZGVmaW5lIFBUWV9OQU1F X1NQUklOVEYgLyoqLwp8ICNkZWZpbmUgU0lHTkFMU19WSUFfQ0hBUkFDVEVSUyAxCnwgI2RlZmlu ZSBHQ19TRVRKTVBfV09SS1MgMQp8ICNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEKfCAjZGVmaW5l IEhBVkVfX1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVEpNUCAxCnwgI2RlZmluZSBIQVZF X1NUQUNLX09WRVJGTE9XX0hBTkRMSU5HIDEKfCAjZGVmaW5lIFVTRyAvKiovCnwgI2RlZmluZSBH TlVfTElOVVggLyoqLwp8ICNkZWZpbmUgVVNBQkxFX0ZJT05SRUFEIDEKfCAjZGVmaW5lIFVTQUJM RV9TSUdJTyAxCnwgI2RlZmluZSBDT1BZUklHSFQgIkNvcHlyaWdodCAoQykgMjAxNiBGcmVlIFNv ZnR3YXJlIEZvdW5kYXRpb24sIEluYy4iCnwgI2RlZmluZSBURVJNX0hFQURFUiAieHRlcm0uaCIK fCAjZGVmaW5lIEVNQUNTX0NPTkZJR1VSQVRJT04gIng4Nl82NC11bmtub3duLWxpbnV4LWdudSIK fCAjZGVmaW5lIEVNQUNTX0NPTkZJR19PUFRJT05TICItLXdpdGgteC10b29sa2l0PWx1Y2lkIgp8 ICNkZWZpbmUgSEFWRV9YX1dJTkRPV1MgMQp8ICNkZWZpbmUgVVNFX1hfVE9PTEtJVCAxCnwgI2Rl ZmluZSBVU0VfTFVDSUQgMQp8ICNkZWZpbmUgSEFWRV9YMTEgMQp8ICNkZWZpbmUgSEFWRV9TVFJV Q1RfQVRUUklCVVRFX0FMSUdORUQgMQp8ICNkZWZpbmUgR05VX01BTExPQyAxCnwgI2RlZmluZSBS RUxfQUxMT0MgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAxCnwgI2RlZmluZSBIQVZFX0FMTE9D QSAxCnwgI2RlZmluZSBIQVZFX1VOU0lHTkVEX0xPTkdfTE9OR19JTlQgMQp8ICNkZWZpbmUgSEFW RV9DOTlfU1RSVE9MRCAxCnwgI2RlZmluZSBIQVZFX0VOVklST05fREVDTCAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfRkRBVEFTWU5DIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJNT0RFIDAKfCAjZGVm aW5lIExTVEFUX0ZPTExPV1NfU0xBU0hFRF9TWU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BU X0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfTE9OR19PTkxZIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9HRVRFTlYgMQp8ICNkZWZpbmUgcmVzdHJpY3QgX19yZXN0cmljdAp8ICNkZWZpbmUgSEFWRV9M T05HX0xPTkdfSU5UIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9NRU1SQ0hSIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9BTEFSTSAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVF9UIDEKfCAjZGVmaW5lIEhBVkVf V0NIQVJfVCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9UTV9UTV9aT05FIDEKfCAjZGVmaW5lIEhB VkVfVE1fWk9ORSAxCnwgI2RlZmluZSBIQVZFX1RNX0dNVE9GRiAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfU1RSVE9JTUFYIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJUT1VNQVggMQp8ICNkZWZpbmUg SEFWRV9XT1JLSU5HX1VUSU1FUyAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9VVElNQlVGIDEKfCAj ZGVmaW5lIEdFVEdST1VQU19UIGdpZF90CnwgI2RlZmluZSBIQVZFX0RFQ0xfR0VURFRBQkxFU0la RSAxCnwgI2RlZmluZSBIQVZFX1NZU19BQ0xfSCAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRklM RSAxCnwgI2RlZmluZSBIQVZFX0FDTF9HRVRfRkQgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZJ TEUgMQp8ICNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZEIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZSRUUg MQp8ICNkZWZpbmUgSEFWRV9BQ0xfRlJPTV9NT0RFIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZST01f VEVYVCAxCnwgI2RlZmluZSBIQVZFX0FDTF9ERUxFVEVfREVGX0ZJTEUgMQp8ICNkZWZpbmUgSEFW RV9BQ0xfRVhURU5ERURfRklMRSAxCnwgI2RlZmluZSBIQVZFX0FDTF9MSUJBQ0xfSCAxCnwgI2Rl ZmluZSBIQVZFX0FDTF9FTlRSSUVTIDEKfCAjZGVmaW5lIEhBVkVfQUNMX0ZJUlNUX0VOVFJZIDEK fCAjZGVmaW5lIFVTRV9BQ0wgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgSEFW RV9CWVRFU1dBUF9IIDEKfCAjZGVmaW5lIEhBVkVfQ0xPQ0tfR0VUVElNRSAxCnwgI2RlZmluZSBI QVZFX0NMT0NLX1NFVFRJTUUgMQp8ICNkZWZpbmUgR05VTElCX0NMT1NFX1NUUkVBTSAxCnwgI2Rl ZmluZSBIQVZFX0RVUDIgMQp8ICNkZWZpbmUgR05VTElCX0ZBQ0NFU1NBVCAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfRkRPUEVORElSIDEKfCAjZGVmaW5lIEdOVUxJQl9GRE9QRU5ESVIgMQp8ICNkZWZp bmUgSEFWRV9ERUNMX19fRlBFTkRJTkcgMQp8ICNkZWZpbmUgR0VUVElNRU9GREFZX1RJTUVaT05F IHN0cnVjdCB0aW1lem9uZQp8ICNkZWZpbmUgSEFWRV9NRU1SQ0hSIDEKfCAjZGVmaW5lIEdOVUxJ Ql9NS09TVEVNUCAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX0FUSU1fVFZfTlNFQyAx CnwgI2RlZmluZSBUWVBFT0ZfU1RSVUNUX1NUQVRfU1RfQVRJTV9JU19TVFJVQ1RfVElNRVNQRUMg MQp8ICNkZWZpbmUgR05VTElCX0ZTQ0FORiAxCnwgI2RlZmluZSBHTlVMSUJfU0NBTkYgMQp8ICNk ZWZpbmUgSEFWRV9TVFBDUFkgMQp8ICNkZWZpbmUgbXlfc3RyZnRpbWUgbnN0cmZ0aW1lCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfTE9DQUxUSU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9USU1FUl9TRVRUSU1F IDEKfCAjZGVmaW5lIEhBVkVfQ19WQVJBUlJBWVMgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8K fCAKfCBpbnQKfCBtYWluICgpCnwgewp8IAp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1 cmU6MzEyMzE6IHJlc3VsdDogbm8KY29uZmlndXJlOjMxNjAyOiBjaGVja2luZyB0aGF0IGdlbmVy YXRlZCBmaWxlcyBhcmUgbmV3ZXIgdGhhbiBjb25maWd1cmUKY29uZmlndXJlOjMxNjA4OiByZXN1 bHQ6IGRvbmUKY29uZmlndXJlOjMxNzcyOiBjcmVhdGluZyAuL2NvbmZpZy5zdGF0dXMKCiMjIC0t LS0tLS0tLS0tLS0tLS0tLS0tLS0gIyMKIyMgUnVubmluZyBjb25maWcuc3RhdHVzLiAjIwojIyAt LS0tLS0tLS0tLS0tLS0tLS0tLS0tICMjCgpUaGlzIGZpbGUgd2FzIGV4dGVuZGVkIGJ5IEdOVSBF bWFjcyBjb25maWcuc3RhdHVzIDI1LjEsIHdoaWNoIHdhcwpnZW5lcmF0ZWQgYnkgR05VIEF1dG9j b25mIDIuNjkuICBJbnZvY2F0aW9uIGNvbW1hbmQgbGluZSB3YXMKCiAgQ09ORklHX0ZJTEVTICAg ID0gCiAgQ09ORklHX0hFQURFUlMgID0gCiAgQ09ORklHX0xJTktTICAgID0gCiAgQ09ORklHX0NP TU1BTkRTID0gCiAgJCAuL2NvbmZpZy5zdGF0dXMgCgpvbiBkZWVjaC10aGlua3BhZAoKY29uZmln LnN0YXR1czoyMDUyOiBjcmVhdGluZyAuL2RvYy9tYW4vZW1hY3MuMQpjb25maWcuc3RhdHVzOjIw NTI6IGNyZWF0aW5nIE1ha2VmaWxlCmNvbmZpZy5zdGF0dXM6MjA1MjogY3JlYXRpbmcgbGliL01h a2VmaWxlCmNvbmZpZy5zdGF0dXM6MjA1MjogY3JlYXRpbmcgbGliLXNyYy9NYWtlZmlsZQpjb25m aWcuc3RhdHVzOjIwNTI6IGNyZWF0aW5nIG9sZFhNZW51L01ha2VmaWxlCmNvbmZpZy5zdGF0dXM6 MjA1MjogY3JlYXRpbmcgZG9jL2VtYWNzL01ha2VmaWxlCmNvbmZpZy5zdGF0dXM6MjA1MjogY3Jl YXRpbmcgZG9jL21pc2MvTWFrZWZpbGUKY29uZmlnLnN0YXR1czoyMDUyOiBjcmVhdGluZyBkb2Mv bGlzcGludHJvL01ha2VmaWxlCmNvbmZpZy5zdGF0dXM6MjA1MjogY3JlYXRpbmcgZG9jL2xpc3By ZWYvTWFrZWZpbGUKY29uZmlnLnN0YXR1czoyMDUyOiBjcmVhdGluZyBzcmMvTWFrZWZpbGUKY29u ZmlnLnN0YXR1czoyMDUyOiBjcmVhdGluZyBsd2xpYi9NYWtlZmlsZQpjb25maWcuc3RhdHVzOjIw NTI6IGNyZWF0aW5nIGxpc3AvTWFrZWZpbGUKY29uZmlnLnN0YXR1czoyMDUyOiBjcmVhdGluZyBs ZWltL01ha2VmaWxlCmNvbmZpZy5zdGF0dXM6MjA1MjogY3JlYXRpbmcgbmV4dHN0ZXAvTWFrZWZp bGUKY29uZmlnLnN0YXR1czoyMDUyOiBjcmVhdGluZyBudC9NYWtlZmlsZQpjb25maWcuc3RhdHVz OjIwNTI6IGNyZWF0aW5nIGFkbWluL2NoYXJzZXRzL01ha2VmaWxlCmNvbmZpZy5zdGF0dXM6MjA1 MjogY3JlYXRpbmcgYWRtaW4vdW5pZGF0YS9NYWtlZmlsZQpjb25maWcuc3RhdHVzOjIwNTI6IGNy ZWF0aW5nIGFkbWluL2dyYW1tYXJzL01ha2VmaWxlCmNvbmZpZy5zdGF0dXM6MjA1MjogY3JlYXRp bmcgc3JjL2NvbmZpZy5oCmNvbmZpZy5zdGF0dXM6MjI4MTogZXhlY3V0aW5nIGRlcGZpbGVzIGNv bW1hbmRzCmNvbmZpZy5zdGF0dXM6MjI4MTogZXhlY3V0aW5nIHNyYy9lcGF0aHMuaCBjb21tYW5k cwpjb25maWcuc3RhdHVzOjIyODE6IGV4ZWN1dGluZyBzcmMvLmdkYmluaXQgY29tbWFuZHMKY29u ZmlnLnN0YXR1czoyMjgxOiBleGVjdXRpbmcgZG9jL2VtYWNzL2VtYWNzdmVyLnRleGkgY29tbWFu ZHMKY29uZmlnLnN0YXR1czoyMjgxOiBleGVjdXRpbmcgZXRjLXJlZmNhcmRzLWVtYWNzdmVyLnRl eCBjb21tYW5kcwoKIyMgLS0tLS0tLS0tLS0tLS0tLSAjIwojIyBDYWNoZSB2YXJpYWJsZXMuICMj CiMjIC0tLS0tLS0tLS0tLS0tLS0gIyMKCmFjX2N2X2J1aWxkPXg4Nl82NC11bmtub3duLWxpbnV4 LWdudQphY19jdl9jX2JpZ2VuZGlhbj1ubwphY19jdl9jX2NvbXBpbGVyX2dudT15ZXMKYWNfY3Zf Y19yZXN0cmljdD1fX3Jlc3RyaWN0CmFjX2N2X2NfdmFyYXJyYXlzPXllcwphY19jdl9lbnZfQUxT QV9DRkxBR1Nfc2V0PQphY19jdl9lbnZfQUxTQV9DRkxBR1NfdmFsdWU9CmFjX2N2X2Vudl9BTFNB X0xJQlNfc2V0PQphY19jdl9lbnZfQUxTQV9MSUJTX3ZhbHVlPQphY19jdl9lbnZfQ0FJUk9fQ0ZM QUdTX3NldD0KYWNfY3ZfZW52X0NBSVJPX0NGTEFHU192YWx1ZT0KYWNfY3ZfZW52X0NBSVJPX0xJ QlNfc2V0PQphY19jdl9lbnZfQ0FJUk9fTElCU192YWx1ZT0KYWNfY3ZfZW52X0NDX3NldD0KYWNf Y3ZfZW52X0NDX3ZhbHVlPQphY19jdl9lbnZfQ0ZMQUdTX3NldD0KYWNfY3ZfZW52X0NGTEFHU192 YWx1ZT0KYWNfY3ZfZW52X0NQUEZMQUdTX3NldD0KYWNfY3ZfZW52X0NQUEZMQUdTX3ZhbHVlPQph Y19jdl9lbnZfQ1BQX3NldD0KYWNfY3ZfZW52X0NQUF92YWx1ZT0KYWNfY3ZfZW52X0RCVVNfQ0ZM QUdTX3NldD0KYWNfY3ZfZW52X0RCVVNfQ0ZMQUdTX3ZhbHVlPQphY19jdl9lbnZfREJVU19MSUJT X3NldD0KYWNfY3ZfZW52X0RCVVNfTElCU192YWx1ZT0KYWNfY3ZfZW52X0ZPTlRDT05GSUdfQ0ZM QUdTX3NldD0KYWNfY3ZfZW52X0ZPTlRDT05GSUdfQ0ZMQUdTX3ZhbHVlPQphY19jdl9lbnZfRk9O VENPTkZJR19MSUJTX3NldD0KYWNfY3ZfZW52X0ZPTlRDT05GSUdfTElCU192YWx1ZT0KYWNfY3Zf ZW52X0ZSRUVUWVBFX0NGTEFHU19zZXQ9CmFjX2N2X2Vudl9GUkVFVFlQRV9DRkxBR1NfdmFsdWU9 CmFjX2N2X2Vudl9GUkVFVFlQRV9MSUJTX3NldD0KYWNfY3ZfZW52X0ZSRUVUWVBFX0xJQlNfdmFs dWU9CmFjX2N2X2Vudl9HQ09ORl9DRkxBR1Nfc2V0PQphY19jdl9lbnZfR0NPTkZfQ0ZMQUdTX3Zh bHVlPQphY19jdl9lbnZfR0NPTkZfTElCU19zZXQ9CmFjX2N2X2Vudl9HQ09ORl9MSUJTX3ZhbHVl PQphY19jdl9lbnZfR0ZJTEVOT1RJRllfQ0ZMQUdTX3NldD0KYWNfY3ZfZW52X0dGSUxFTk9USUZZ X0NGTEFHU192YWx1ZT0KYWNfY3ZfZW52X0dGSUxFTk9USUZZX0xJQlNfc2V0PQphY19jdl9lbnZf R0ZJTEVOT1RJRllfTElCU192YWx1ZT0KYWNfY3ZfZW52X0dPQkpFQ1RfQ0ZMQUdTX3NldD0KYWNf Y3ZfZW52X0dPQkpFQ1RfQ0ZMQUdTX3ZhbHVlPQphY19jdl9lbnZfR09CSkVDVF9MSUJTX3NldD0K YWNfY3ZfZW52X0dPQkpFQ1RfTElCU192YWx1ZT0KYWNfY3ZfZW52X0dTRVRUSU5HU19DRkxBR1Nf c2V0PQphY19jdl9lbnZfR1NFVFRJTkdTX0NGTEFHU192YWx1ZT0KYWNfY3ZfZW52X0dTRVRUSU5H U19MSUJTX3NldD0KYWNfY3ZfZW52X0dTRVRUSU5HU19MSUJTX3ZhbHVlPQphY19jdl9lbnZfR1RL X0NGTEFHU19zZXQ9CmFjX2N2X2Vudl9HVEtfQ0ZMQUdTX3ZhbHVlPQphY19jdl9lbnZfR1RLX0xJ QlNfc2V0PQphY19jdl9lbnZfR1RLX0xJQlNfdmFsdWU9CmFjX2N2X2Vudl9JTUFHRU1BR0lDS19D RkxBR1Nfc2V0PQphY19jdl9lbnZfSU1BR0VNQUdJQ0tfQ0ZMQUdTX3ZhbHVlPQphY19jdl9lbnZf SU1BR0VNQUdJQ0tfTElCU19zZXQ9CmFjX2N2X2Vudl9JTUFHRU1BR0lDS19MSUJTX3ZhbHVlPQph Y19jdl9lbnZfS1FVRVVFX0NGTEFHU19zZXQ9CmFjX2N2X2Vudl9LUVVFVUVfQ0ZMQUdTX3ZhbHVl PQphY19jdl9lbnZfS1FVRVVFX0xJQlNfc2V0PQphY19jdl9lbnZfS1FVRVVFX0xJQlNfdmFsdWU9 CmFjX2N2X2Vudl9MREZMQUdTX3NldD0KYWNfY3ZfZW52X0xERkxBR1NfdmFsdWU9CmFjX2N2X2Vu dl9MSUJHTlVUTFMzX0NGTEFHU19zZXQ9CmFjX2N2X2Vudl9MSUJHTlVUTFMzX0NGTEFHU192YWx1 ZT0KYWNfY3ZfZW52X0xJQkdOVVRMUzNfTElCU19zZXQ9CmFjX2N2X2Vudl9MSUJHTlVUTFMzX0xJ QlNfdmFsdWU9CmFjX2N2X2Vudl9MSUJHTlVUTFNfQ0ZMQUdTX3NldD0KYWNfY3ZfZW52X0xJQkdO VVRMU19DRkxBR1NfdmFsdWU9CmFjX2N2X2Vudl9MSUJHTlVUTFNfTElCU19zZXQ9CmFjX2N2X2Vu dl9MSUJHTlVUTFNfTElCU192YWx1ZT0KYWNfY3ZfZW52X0xJQk9URl9DRkxBR1Nfc2V0PQphY19j dl9lbnZfTElCT1RGX0NGTEFHU192YWx1ZT0KYWNfY3ZfZW52X0xJQk9URl9MSUJTX3NldD0KYWNf Y3ZfZW52X0xJQk9URl9MSUJTX3ZhbHVlPQphY19jdl9lbnZfTElCU19zZXQ9CmFjX2N2X2Vudl9M SUJTX3ZhbHVlPQphY19jdl9lbnZfTElCWE1MMl9DRkxBR1Nfc2V0PQphY19jdl9lbnZfTElCWE1M Ml9DRkxBR1NfdmFsdWU9CmFjX2N2X2Vudl9MSUJYTUwyX0xJQlNfc2V0PQphY19jdl9lbnZfTElC WE1MMl9MSUJTX3ZhbHVlPQphY19jdl9lbnZfTTE3Tl9GTFRfQ0ZMQUdTX3NldD0KYWNfY3ZfZW52 X00xN05fRkxUX0NGTEFHU192YWx1ZT0KYWNfY3ZfZW52X00xN05fRkxUX0xJQlNfc2V0PQphY19j dl9lbnZfTTE3Tl9GTFRfTElCU192YWx1ZT0KYWNfY3ZfZW52X1BLR19DT05GSUdfTElCRElSX3Nl dD0KYWNfY3ZfZW52X1BLR19DT05GSUdfTElCRElSX3ZhbHVlPQphY19jdl9lbnZfUEtHX0NPTkZJ R19QQVRIX3NldD0KYWNfY3ZfZW52X1BLR19DT05GSUdfUEFUSF92YWx1ZT0KYWNfY3ZfZW52X1BL R19DT05GSUdfc2V0PQphY19jdl9lbnZfUEtHX0NPTkZJR192YWx1ZT0KYWNfY3ZfZW52X1JTVkdf Q0ZMQUdTX3NldD0KYWNfY3ZfZW52X1JTVkdfQ0ZMQUdTX3ZhbHVlPQphY19jdl9lbnZfUlNWR19M SUJTX3NldD0KYWNfY3ZfZW52X1JTVkdfTElCU192YWx1ZT0KYWNfY3ZfZW52X1dFQktJVF9DRkxB R1Nfc2V0PQphY19jdl9lbnZfV0VCS0lUX0NGTEFHU192YWx1ZT0KYWNfY3ZfZW52X1dFQktJVF9M SUJTX3NldD0KYWNfY3ZfZW52X1dFQktJVF9MSUJTX3ZhbHVlPQphY19jdl9lbnZfWEZJWEVTX0NG TEFHU19zZXQ9CmFjX2N2X2Vudl9YRklYRVNfQ0ZMQUdTX3ZhbHVlPQphY19jdl9lbnZfWEZJWEVT X0xJQlNfc2V0PQphY19jdl9lbnZfWEZJWEVTX0xJQlNfdmFsdWU9CmFjX2N2X2Vudl9YRlRfQ0ZM QUdTX3NldD0KYWNfY3ZfZW52X1hGVF9DRkxBR1NfdmFsdWU9CmFjX2N2X2Vudl9YRlRfTElCU19z ZXQ9CmFjX2N2X2Vudl9YRlRfTElCU192YWx1ZT0KYWNfY3ZfZW52X1hJTkVSQU1BX0NGTEFHU19z ZXQ9CmFjX2N2X2Vudl9YSU5FUkFNQV9DRkxBR1NfdmFsdWU9CmFjX2N2X2Vudl9YSU5FUkFNQV9M SUJTX3NldD0KYWNfY3ZfZW52X1hJTkVSQU1BX0xJQlNfdmFsdWU9CmFjX2N2X2Vudl9YTUtNRl9z ZXQ9CmFjX2N2X2Vudl9YTUtNRl92YWx1ZT0KYWNfY3ZfZW52X1hSQU5EUl9DRkxBR1Nfc2V0PQph Y19jdl9lbnZfWFJBTkRSX0NGTEFHU192YWx1ZT0KYWNfY3ZfZW52X1hSQU5EUl9MSUJTX3NldD0K YWNfY3ZfZW52X1hSQU5EUl9MSUJTX3ZhbHVlPQphY19jdl9lbnZfYnVpbGRfYWxpYXNfc2V0PQph Y19jdl9lbnZfYnVpbGRfYWxpYXNfdmFsdWU9CmFjX2N2X2Vudl9ob3N0X2FsaWFzX3NldD0KYWNf Y3ZfZW52X2hvc3RfYWxpYXNfdmFsdWU9CmFjX2N2X2Vudl90YXJnZXRfYWxpYXNfc2V0PQphY19j dl9lbnZfdGFyZ2V0X2FsaWFzX3ZhbHVlPQphY19jdl9mdW5jX01hZ2lja0V4cG9ydEltYWdlUGl4 ZWxzPXllcwphY19jdl9mdW5jX01hZ2lja01lcmdlSW1hZ2VMYXllcnM9eWVzCmFjX2N2X2Z1bmNf WFNjcmVlbk51bWJlck9mU2NyZWVuPXllcwphY19jdl9mdW5jX1hTY3JlZW5SZXNvdXJjZVN0cmlu Zz15ZXMKYWNfY3ZfZnVuY19Ycm1TZXREYXRhYmFzZT15ZXMKYWNfY3ZfZnVuY19fX2V4ZWN1dGFi bGVfc3RhcnQ9eWVzCmFjX2N2X2Z1bmNfYWNjZXB0ND15ZXMKYWNfY3ZfZnVuY19hY2xfY29weV9l eHRfbmF0aXZlPW5vCmFjX2N2X2Z1bmNfYWNsX2NyZWF0ZV9lbnRyeV9ucD1ubwphY19jdl9mdW5j X2FjbF9kZWxldGVfZGVmX2ZpbGU9eWVzCmFjX2N2X2Z1bmNfYWNsX2RlbGV0ZV9mZF9ucD1ubwph Y19jdl9mdW5jX2FjbF9kZWxldGVfZmlsZV9ucD1ubwphY19jdl9mdW5jX2FjbF9lbnRyaWVzPXll cwphY19jdl9mdW5jX2FjbF9leHRlbmRlZF9maWxlPXllcwphY19jdl9mdW5jX2FjbF9mcmVlPXll cwphY19jdl9mdW5jX2FjbF9mcmVlX3RleHQ9bm8KYWNfY3ZfZnVuY19hY2xfZnJvbV9tb2RlPXll cwphY19jdl9mdW5jX2FjbF9mcm9tX3RleHQ9eWVzCmFjX2N2X2Z1bmNfYWNsX2dldF9mZD15ZXMK YWNfY3ZfZnVuY19hY2xfZ2V0X2ZpbGU9eWVzCmFjX2N2X2Z1bmNfYWNsX3NldF9mZD15ZXMKYWNf Y3ZfZnVuY19hY2xfc2V0X2ZpbGU9eWVzCmFjX2N2X2Z1bmNfYWNsX3RvX3Nob3J0X3RleHQ9bm8K YWNfY3ZfZnVuY19hbGlnbmVkX2FsbG9jPXllcwphY19jdl9mdW5jX2FsbG9jYV93b3Jrcz15ZXMK YWNfY3ZfZnVuY19jZm1ha2VyYXc9eWVzCmFjX2N2X2Z1bmNfY2ZzZXRzcGVlZD15ZXMKYWNfY3Zf ZnVuY19jbG9ja19nZXR0aW1lPXllcwphY19jdl9mdW5jX2Nsb2NrX3NldHRpbWU9eWVzCmFjX2N2 X2Z1bmNfY29weXNpZ249eWVzCmFjX2N2X2Z1bmNfZGJ1c190eXBlX2lzX3ZhbGlkPXllcwphY19j dl9mdW5jX2RidXNfdmFsaWRhdGVfYnVzX25hbWU9eWVzCmFjX2N2X2Z1bmNfZGJ1c192YWxpZGF0 ZV9pbnRlcmZhY2U9eWVzCmFjX2N2X2Z1bmNfZGJ1c192YWxpZGF0ZV9tZW1iZXI9eWVzCmFjX2N2 X2Z1bmNfZGJ1c192YWxpZGF0ZV9wYXRoPXllcwphY19jdl9mdW5jX2RidXNfd2F0Y2hfZ2V0X3Vu aXhfZmQ9eWVzCmFjX2N2X2Z1bmNfZW5kZ3JlbnQ9eWVzCmFjX2N2X2Z1bmNfZW5kcHdlbnQ9eWVz CmFjX2N2X2Z1bmNfZmFjY2Vzc2F0PXllcwphY19jdl9mdW5jX2ZjaGRpcj15ZXMKYWNfY3ZfZnVu Y19mY2htb2Q9eWVzCmFjX2N2X2Z1bmNfZmNudGw9eWVzCmFjX2N2X2Z1bmNfZmRvcGVuZGlyPXll cwphY19jdl9mdW5jX2Zvcms9eWVzCmFjX2N2X2Z1bmNfZm9ya193b3Jrcz15ZXMKYWNfY3ZfZnVu Y19mcmVlaWZhZGRycz15ZXMKYWNfY3ZfZnVuY19mc3RhdGF0PXllcwphY19jdl9mdW5jX2ZzeW5j PXllcwphY19jdl9mdW5jX2Z1dGltZW5zPXllcwphY19jdl9mdW5jX2Z1dGltZXM9eWVzCmFjX2N2 X2Z1bmNfZnV0aW1lc2F0PXllcwphY19jdl9mdW5jX2dhaV9zdHJlcnJvcj15ZXMKYWNfY3ZfZnVu Y19nZXRfY3VycmVudF9kaXJfbmFtZT15ZXMKYWNfY3ZfZnVuY19nZXRhZGRyaW5mbz15ZXMKYWNf Y3ZfZnVuY19nZXRkdGFibGVzaXplPXllcwphY19jdl9mdW5jX2dldGdyZW50PXllcwphY19jdl9m dW5jX2dldGhvc3RuYW1lPXllcwphY19jdl9mdW5jX2dldGlmYWRkcnM9eWVzCmFjX2N2X2Z1bmNf Z2V0bG9hZGF2Zz15ZXMKYWNfY3ZfZnVuY19nZXRvcHRfbG9uZ19vbmx5PXllcwphY19jdl9mdW5j X2dldHBhZ2VzaXplPXllcwphY19jdl9mdW5jX2dldHBlZXJuYW1lPXllcwphY19jdl9mdW5jX2dl dHB0PXllcwphY19jdl9mdW5jX2dldHB3ZW50PXllcwphY19jdl9mdW5jX2dldHJsaW1pdD15ZXMK YWNfY3ZfZnVuY19nZXRydXNhZ2U9eWVzCmFjX2N2X2Z1bmNfZ2V0c29ja25hbWU9eWVzCmFjX2N2 X2Z1bmNfZ2V0dGltZW9mZGF5PXllcwphY19jdl9mdW5jX2dyYW50cHQ9eWVzCmFjX2N2X2Z1bmNf aW5vdGlmeV9pbml0MT15ZXMKYWNfY3ZfZnVuY19sb2NhbHRpbWVfcj15ZXMKYWNfY3ZfZnVuY19s b2cyPXllcwphY19jdl9mdW5jX2xyYW5kNDg9eWVzCmFjX2N2X2Z1bmNfbHN0YXQ9eWVzCmFjX2N2 X2Z1bmNfbHV0aW1lcz15ZXMKYWNfY3ZfZnVuY19tZW1yY2hyPXllcwphY19jdl9mdW5jX21rb3N0 ZW1wPXllcwphY19jdl9mdW5jX21tYXBfZml4ZWRfbWFwcGVkPXllcwphY19jdl9mdW5jX25hbm90 aW1lPW5vCmFjX2N2X2Z1bmNfbmV3bG9jYWxlPXllcwphY19jdl9mdW5jX3BpcGUyPXllcwphY19j dl9mdW5jX3Bvc2l4X29wZW5wdD15ZXMKYWNfY3ZfZnVuY19wc2VsZWN0PXllcwphY19jdl9mdW5j X3B0aHJlYWRfc2lnbWFzaz15ZXMKYWNfY3ZfZnVuY19wdXRlbnY9eWVzCmFjX2N2X2Z1bmNfcmFu ZG9tPXllcwphY19jdl9mdW5jX3JlYWRsaW5rPXllcwphY19jdl9mdW5jX3JlYWRsaW5rYXQ9eWVz CmFjX2N2X2Z1bmNfcmVjdmZyb209eWVzCmFjX2N2X2Z1bmNfcmludD15ZXMKYWNfY3ZfZnVuY19z ZWN1cmVfZ2V0ZW52PXllcwphY19jdl9mdW5jX3NlbGVjdD15ZXMKYWNfY3ZfZnVuY19zZW5kdG89 eWVzCmFjX2N2X2Z1bmNfc2V0aXRpbWVyPXllcwphY19jdl9mdW5jX3NldGxvY2FsZT15ZXMKYWNf Y3ZfZnVuY19zZXRybGltaXQ9eWVzCmFjX2N2X2Z1bmNfc2h1dGRvd249eWVzCmFjX2N2X2Z1bmNf c2lnMnN0cj1ubwphY19jdl9mdW5jX3NucHJpbnRmPXllcwphY19jdl9mdW5jX3NvY2tldD15ZXMK YWNfY3ZfZnVuY19zdHBjcHk9eWVzCmFjX2N2X2Z1bmNfc3Ryc2lnbmFsPXllcwphY19jdl9mdW5j X3N0cnRvaW1heD15ZXMKYWNfY3ZfZnVuY19zdHJ0b3VtYXg9eWVzCmFjX2N2X2Z1bmNfc3ltbGlu az15ZXMKYWNfY3ZfZnVuY19zeW5jPXllcwphY19jdl9mdW5jX3RpbWVnbT15ZXMKYWNfY3ZfZnVu Y190aW1lcl9zZXR0aW1lPXllcwphY19jdl9mdW5jX3R6c2V0PXllcwphY19jdl9mdW5jX3V0aW1l bnNhdD15ZXMKYWNfY3ZfZnVuY192Zm9yaz15ZXMKYWNfY3ZfZnVuY192Zm9ya193b3Jrcz15ZXMK YWNfY3ZfaGF2ZV9kZWNsX19fZnBlbmRpbmc9eWVzCmFjX2N2X2hhdmVfZGVjbF9hbGFybT15ZXMK YWNfY3ZfaGF2ZV9kZWNsX2ZkYXRhc3luYz15ZXMKYWNfY3ZfaGF2ZV9kZWNsX2Zkb3BlbmRpcj15 ZXMKYWNfY3ZfaGF2ZV9kZWNsX2dldGR0YWJsZXNpemU9eWVzCmFjX2N2X2hhdmVfZGVjbF9nZXRl bnY9eWVzCmFjX2N2X2hhdmVfZGVjbF9nZXRsb2FkYXZnPXllcwphY19jdl9oYXZlX2RlY2xfbG9j YWx0aW1lX3I9eWVzCmFjX2N2X2hhdmVfZGVjbF9tZW1yY2hyPXllcwphY19jdl9oYXZlX2RlY2xf cG5nX2xvbmdqbXA9eWVzCmFjX2N2X2hhdmVfZGVjbF9zdHJtb2RlPW5vCmFjX2N2X2hhdmVfZGVj bF9zdHJ0b2ltYXg9eWVzCmFjX2N2X2hhdmVfZGVjbF9zdHJ0b3VtYXg9eWVzCmFjX2N2X2hhdmVf ZGVjbF9zeXNfc2lnbGlzdD15ZXMKYWNfY3ZfaGF2ZV94PSdoYXZlX3g9eWVzCWFjX3hfaW5jbHVk ZXM9J1wnJydcJycJYWNfeF9saWJyYXJpZXM9J1wnJydcJycnCmFjX2N2X2hlYWRlcl9YMTFfU01f U01saWJfaD15ZXMKYWNfY3ZfaGVhZGVyX1gxMV9YZnRfWGZ0X2g9eWVzCmFjX2N2X2hlYWRlcl9Y MTFfWGxpYl94Y2JfaD15ZXMKYWNfY3ZfaGVhZGVyX1gxMV94cG1faD15ZXMKYWNfY3ZfaGVhZGVy X2FjbF9saWJhY2xfaD15ZXMKYWNfY3ZfaGVhZGVyX2FycGFfaW5ldF9oPXllcwphY19jdl9oZWFk ZXJfYnl0ZXN3YXBfaD15ZXMKYWNfY3ZfaGVhZGVyX2NvZmZfaD1ubwphY19jdl9oZWFkZXJfZGly ZW50X2g9eWVzCmFjX2N2X2hlYWRlcl9leGVjaW5mb19oPXllcwphY19jdl9oZWFkZXJfZ2V0b3B0 X2g9eWVzCmFjX2N2X2hlYWRlcl9naWZfbGliX2g9eWVzCmFjX2N2X2hlYWRlcl9ncG1faD15ZXMK YWNfY3ZfaGVhZGVyX2lmYWRkcnNfaD15ZXMKYWNfY3ZfaGVhZGVyX2ludHR5cGVzX2g9eWVzCmFj X2N2X2hlYWRlcl9tYWNoaW5lX3NvdW5kY2FyZF9oPW5vCmFjX2N2X2hlYWRlcl9tYWlsbG9ja19o PW5vCmFjX2N2X2hlYWRlcl9tYWxsb2NfbWFsbG9jX2g9bm8KYWNfY3ZfaGVhZGVyX21lbW9yeV9o PXllcwphY19jdl9oZWFkZXJfbWluaXhfY29uZmlnX2g9bm8KYWNfY3ZfaGVhZGVyX21tc3lzdGVt X2g9bm8KYWNfY3ZfaGVhZGVyX25ldF9pZl9kbF9oPW5vCmFjX2N2X2hlYWRlcl9uZXRfaWZfaD15 ZXMKYWNfY3ZfaGVhZGVyX25ldGluZXRfaW5faD15ZXMKYWNfY3ZfaGVhZGVyX3B0aHJlYWRfaD15 ZXMKYWNfY3ZfaGVhZGVyX3B0eV9oPXllcwphY19jdl9oZWFkZXJfcHdkX2g9eWVzCmFjX2N2X2hl YWRlcl9zb3VuZGNhcmRfaD1ubwphY19jdl9oZWFkZXJfc3RhdF9icm9rZW49bm8KYWNfY3ZfaGVh ZGVyX3N0ZGM9eWVzCmFjX2N2X2hlYWRlcl9zdGRpbnRfaD15ZXMKYWNfY3ZfaGVhZGVyX3N0ZGlv X2V4dF9oPXllcwphY19jdl9oZWFkZXJfc3RkbGliX2g9eWVzCmFjX2N2X2hlYWRlcl9zdHJpbmdf aD15ZXMKYWNfY3ZfaGVhZGVyX3N0cmluZ3NfaD15ZXMKYWNfY3ZfaGVhZGVyX3N5c19hY2xfaD15 ZXMKYWNfY3ZfaGVhZGVyX3N5c19pbm90aWZ5X2g9eWVzCmFjX2N2X2hlYWRlcl9zeXNfbG9hZGF2 Z19oPW5vCmFjX2N2X2hlYWRlcl9zeXNfcGFyYW1faD15ZXMKYWNfY3ZfaGVhZGVyX3N5c19yZXNv dXJjZV9oPXllcwphY19jdl9oZWFkZXJfc3lzX3NlbGVjdF9oPXllcwphY19jdl9oZWFkZXJfc3lz X3NvY2tldF9oPXllcwphY19jdl9oZWFkZXJfc3lzX3NvdW5kY2FyZF9oPXllcwphY19jdl9oZWFk ZXJfc3lzX3N0YXRfaD15ZXMKYWNfY3ZfaGVhZGVyX3N5c19zeXNpbmZvX2g9eWVzCmFjX2N2X2hl YWRlcl9zeXNfc3lzdGVtaW5mb19oPW5vCmFjX2N2X2hlYWRlcl9zeXNfdGltZV9oPXllcwphY19j dl9oZWFkZXJfc3lzX3R5cGVzX2g9eWVzCmFjX2N2X2hlYWRlcl9zeXNfdW5faD15ZXMKYWNfY3Zf aGVhZGVyX3N5c191dHNuYW1lX2g9eWVzCmFjX2N2X2hlYWRlcl9zeXNfdmxpbWl0X2g9eWVzCmFj X2N2X2hlYWRlcl9zeXNfd2FpdF9oPXllcwphY19jdl9oZWFkZXJfdGVybV9oPXllcwphY19jdl9o ZWFkZXJfdGlmZmlvX2g9eWVzCmFjX2N2X2hlYWRlcl90aW1lPXllcwphY19jdl9oZWFkZXJfdW5p c3RkX2g9eWVzCmFjX2N2X2hlYWRlcl91dGlsX2g9bm8KYWNfY3ZfaGVhZGVyX3V0aW1lX2g9eWVz CmFjX2N2X2hlYWRlcl91dG1wX2g9eWVzCmFjX2N2X2hlYWRlcl92YWxncmluZF92YWxncmluZF9o PW5vCmFjX2N2X2hlYWRlcl92Zm9ya19oPW5vCmFjX2N2X2hlYWRlcl93Y2hhcl9oPXllcwphY19j dl9ob3N0PXg4Nl82NC11bmtub3duLWxpbnV4LWdudQphY19jdl9saWJfU01fU21jT3BlbkNvbm5l Y3Rpb249eWVzCmFjX2N2X2xpYl9YMTFfeGNiX1hHZXRYQ0JDb25uZWN0aW9uPXllcwphY19jdl9s aWJfWGJzZF9tYWluPW5vCmFjX2N2X2xpYl9YZnRfWGZ0Rm9udE9wZW49eWVzCmFjX2N2X2xpYl9Y cG1fWHBtUmVhZEZpbGVUb1BpeG1hcD15ZXMKYWNfY3ZfbGliX1hyZW5kZXJfWFJlbmRlclF1ZXJ5 RXh0ZW5zaW9uPXllcwphY19jdl9saWJfZ2lmX0dpZk1ha2VNYXBPYmplY3Q9eWVzCmFjX2N2X2xp Yl9ncG1fR3BtX09wZW49eWVzCmFjX2N2X2xpYl9sb2NrZmlsZV9tYWlsbG9jaz1ubwphY19jdl9s aWJfbWFpbF9tYWlsbG9jaz1ubwphY19jdl9saWJfb3NzYXVkaW9fX29zc19pb2N0bD1ubwphY19j dl9saWJfb3RmX09URl9nZXRfdmFyaWF0aW9uX2dseXBocz15ZXMKYWNfY3ZfbGliX3NlbGludXhf bGdldGZpbGVjb249bm8KYWNfY3ZfbGliX3RpZmZfVElGRkdldFZlcnNpb249eWVzCmFjX2N2X2xp Yl94Y2JfeGNiX3RyYW5zbGF0ZV9jb29yZGluYXRlcz15ZXMKYWNfY3ZfbGliX3htbDJfaHRtbFJl YWRNZW1vcnk9eWVzCmFjX2N2X21lbWJlcl9zdHJ1Y3RfaWZyZXFfaWZyX2FkZHI9eWVzCmFjX2N2 X21lbWJlcl9zdHJ1Y3RfaWZyZXFfaWZyX2FkZHJfc2FfbGVuPW5vCmFjX2N2X21lbWJlcl9zdHJ1 Y3RfaWZyZXFfaWZyX2Jyb2FkYWRkcj15ZXMKYWNfY3ZfbWVtYmVyX3N0cnVjdF9pZnJlcV9pZnJf ZmxhZ3M9eWVzCmFjX2N2X21lbWJlcl9zdHJ1Y3RfaWZyZXFfaWZyX2h3YWRkcj15ZXMKYWNfY3Zf bWVtYmVyX3N0cnVjdF9pZnJlcV9pZnJfbmV0bWFzaz15ZXMKYWNfY3ZfbWVtYmVyX3N0cnVjdF9z dGF0X3N0X2F0aW1fdHZfbnNlYz15ZXMKYWNfY3ZfbWVtYmVyX3N0cnVjdF9zdGF0X3N0X2JpcnRo dGltX3R2X25zZWM9bm8KYWNfY3ZfbWVtYmVyX3N0cnVjdF9zdGF0X3N0X2JpcnRodGltZW5zZWM9 bm8KYWNfY3ZfbWVtYmVyX3N0cnVjdF9zdGF0X3N0X2JpcnRodGltZXNwZWNfdHZfbnNlYz1ubwph Y19jdl9tZW1iZXJfc3RydWN0X3RtX3RtX2dtdG9mZj15ZXMKYWNfY3ZfbWVtYmVyX3N0cnVjdF90 bV90bV96b25lPXllcwphY19jdl9tZW1iZXJfc3RydWN0X3VuaXBhaXJfdW5pY29kZT15ZXMKYWNf Y3Zfb2JqZXh0PW8KYWNfY3ZfcGF0aF9FR1JFUD0nL3Vzci9iaW4vZ3JlcCAtRScKYWNfY3ZfcGF0 aF9HUkVQPS91c3IvYmluL2dyZXAKYWNfY3ZfcGF0aF9HWklQX1BST0c9L3Vzci9iaW4vZ3ppcAph Y19jdl9wYXRoX0lOU1RBTExfSU5GTz0vdXNyL2Jpbi9pbnN0YWxsLWluZm8KYWNfY3ZfcGF0aF9N QUtFPW1ha2UKYWNfY3ZfcGF0aF9hY19wdF9QS0dfQ09ORklHPS91c3IvYmluL3BrZy1jb25maWcK YWNfY3ZfcGF0aF9pbnN0YWxsPScvdXNyL2Jpbi9pbnN0YWxsIC1jJwphY19jdl9wYXRoX21rZGly PS91c3IvYmluL21rZGlyCmFjX2N2X3Byb2dfQVdLPWdhd2sKYWNfY3ZfcHJvZ19DUFA9J2djYyAt RScKYWNfY3ZfcHJvZ19hY19jdF9BUj1hcgphY19jdl9wcm9nX2FjX2N0X0NDPWdjYwphY19jdl9w cm9nX2FjX2N0X1JBTkxJQj1yYW5saWIKYWNfY3ZfcHJvZ19jY19jOTk9CmFjX2N2X3Byb2dfY2Nf Zz15ZXMKYWNfY3ZfcHJvZ19jY19zdGRjPQphY19jdl9wcm9nX2xpYmxvY2tmaWxlPW5vCmFjX2N2 X3NhZmVfdG9fZGVmaW5lX19fZXh0ZW5zaW9uc19fPXllcwphY19jdl9zZWFyY2hfWG11Q29udmVy dFN0YW5kYXJkU2VsZWN0aW9uPS1sWG11CmFjX2N2X3NlYXJjaF9hY2xfZ2V0X2ZpbGU9LWxhY2wK YWNfY3Zfc2VhcmNoX2JhY2t0cmFjZV9zeW1ib2xzX2ZkPSdub25lIHJlcXVpcmVkJwphY19jdl9z ZWFyY2hfY2xvY2tfZ2V0dGltZT0nbm9uZSByZXF1aXJlZCcKYWNfY3Zfc2VhcmNoX2ZkYXRhc3lu Yz0nbm9uZSByZXF1aXJlZCcKYWNfY3Zfc2VhcmNoX2luZmxhdGVFbmQ9LWx6CmFjX2N2X3NlYXJj aF9zcXJ0PS1sbQphY19jdl9zZWFyY2hfdGltZXJfc2V0dGltZT0tbHJ0CmFjX2N2X3Nob3VsZF9k ZWZpbmVfX3hvcGVuX3NvdXJjZT1ubwphY19jdl9zdHJ1Y3Rfc3RfZG1fbW9kZT1ubwphY19jdl9z dHJ1Y3RfdG09dGltZS5oCmFjX2N2X3N5c19maWxlX29mZnNldF9iaXRzPW5vCmFjX2N2X3N5c19s YXJnZWZpbGVfQ0M9bm8KYWNfY3Zfc3lzX2xhcmdlZmlsZV9zb3VyY2U9bm8KYWNfY3Zfc3lzX2xv bmdfZmlsZV9uYW1lcz15ZXMKYWNfY3ZfdHlwZV9nZXRncm91cHM9Z2lkX3QKYWNfY3ZfdHlwZV9s b25nX2xvbmdfaW50PXllcwphY19jdl90eXBlX21heF9hbGlnbl90PXllcwphY19jdl90eXBlX21i c3RhdGVfdD15ZXMKYWNfY3ZfdHlwZV9tb2RlX3Q9eWVzCmFjX2N2X3R5cGVfbmxpbmtfdD15ZXMK YWNfY3ZfdHlwZV9waWRfdD15ZXMKYWNfY3ZfdHlwZV9zaWdoYW5kbGVyX3Q9eWVzCmFjX2N2X3R5 cGVfc2lnc2V0X3Q9eWVzCmFjX2N2X3R5cGVfc29ja2xlbl90PXllcwphY19jdl90eXBlX3RpbWV6 b25lX3Q9bm8KYWNfY3ZfdHlwZV91bnNpZ25lZF9sb25nX2xvbmdfaW50PXllcwphY19jdl90eXBl X3ZvbGF0aWxlX3NpZ19hdG9taWNfdD15ZXMKYWNfY3ZfdHlwZW9mX3N0cnVjdF9zdGF0X3N0X2F0 aW1faXNfc3RydWN0X3RpbWVzcGVjPXllcwphY19jdl93b3JraW5nX2FsbG9jYV9oPXllcwphbV9j dl9DQ19kZXBlbmRlbmNpZXNfY29tcGlsZXJfdHlwZT1nY2MzCmFtX2N2X2FyX2ludGVyZmFjZT1h cgphbV9jdl9tYWtlX3N1cHBvcnRfbmVzdGVkX3ZhcmlhYmxlcz15ZXMKYW1fY3ZfcHJvZ19jY19j X289eWVzCmVtYWNzX2N2X2FsdGVybmF0ZV9zdGFjaz15ZXMKZW1hY3NfY3ZfY2xhbmc9bm8KZW1h Y3NfY3ZfZGF0YV9zdGFydD15ZXMKZW1hY3NfY3ZfZnVuY19fX2J1aWx0aW5fdW53aW5kX2luaXQ9 eWVzCmVtYWNzX2N2X2Z1bmNfX3NldGptcD15ZXMKZW1hY3NfY3ZfZnVuY19zaWdzZXRqbXA9eWVz CmVtYWNzX2N2X2hhdmVfdGltZXJmZD15ZXMKZW1hY3NfY3ZfanBlZ2xpYj0tbGpwZWcKZW1hY3Nf Y3ZfbGFuZ2luZm9fY29kZXNldD15ZXMKZW1hY3NfY3ZfbGludXhfc3lzaW5mbz15ZXMKZW1hY3Nf Y3ZfbmV0ZGJfZGVjbGFyZXNfaF9lcnJubz15ZXMKZW1hY3NfY3ZfcGVyc29uYWxpdHlfbGludXgz Mj15ZXMKZW1hY3NfY3ZfcHJvZ19jY19nMz15ZXMKZW1hY3NfY3ZfcHJvZ19jY19ub3BpZT1ubwpl bWFjc19jdl9wcm9nX3NldGZhdHRyPXllcwplbWFjc19jdl9wdGhyZWFkX2xpYj0tbHB0aHJlYWQK ZW1hY3NfY3Zfc2FuaXRpemVfYWRkcmVzcz1ubwplbWFjc19jdl9zdHJ1Y3RfYWxpZ25tZW50PXll cwplbWFjc19jdl91c2FibGVfRklPTlJFQUQ9eWVzCmVtYWNzX2N2X3VzYWJsZV9TSUdJTz15ZXMK ZW1hY3NfY3ZfdmFyX2RvdWdfbGVhX21hbGxvYz1ubwplbWFjc19jdl94MTFfdG9vbGtpdF92ZXJz aW9uXzY9eWVzCmVtYWNzX2N2X3gxMV92ZXJzaW9uXzY9eWVzCmVtYWNzX2N2X3hhdzNkPW5vCmVt YWNzX2N2X3hhdz15ZXMKZ2xfY3ZfYWNsX0FDTF9GSVJTVF9FTlRSWT15ZXMKZ2xfY3ZfYWNsX0FD TF9UWVBFX0VYVEVOREVEPW5vCmdsX2N2X2NfYW1zdGVyZGFtX2NvbXBpbGVyPW5vCmdsX2N2X2Nf bXVsdGlhcmNoPW5vCmdsX2N2X2RlY2xfbnVsbF93b3Jrcz15ZXMKZ2xfY3ZfZGVjbF9yZWFkbGlu a193b3Jrcz15ZXMKZ2xfY3ZfZGVjbF9yZWFkbGlua2F0X3dvcmtzPXllcwpnbF9jdl9mdW5jX19f ZnBlbmRpbmc9eWVzCmdsX2N2X2Z1bmNfYzk5X3N0cnRvbGQ9eWVzCmdsX2N2X2Z1bmNfZHVwMl93 b3Jrcz15ZXMKZ2xfY3ZfZnVuY19mY250bF9mX2R1cGZkX2Nsb2V4ZWM9J25lZWRzIHJ1bnRpbWUg Y2hlY2snCmdsX2N2X2Z1bmNfZmNudGxfZl9kdXBmZF93b3Jrcz15ZXMKZ2xfY3ZfZnVuY19mZG9w ZW5kaXJfd29ya3M9eWVzCmdsX2N2X2Z1bmNfZnN0YXRhdF96ZXJvX2ZsYWc9eWVzCmdsX2N2X2Z1 bmNfZ2V0ZHRhYmxlc2l6ZV93b3Jrcz15ZXMKZ2xfY3ZfZnVuY19nZXRvcHRfZ251PXllcwpnbF9j dl9mdW5jX2dldG9wdF9sb25nX2dudT15ZXMKZ2xfY3ZfZnVuY19nZXRvcHRfcG9zaXg9eWVzCmds X2N2X2Z1bmNfZ2V0dGltZW9mZGF5X2Nsb2JiZXI9bm8KZ2xfY3ZfZnVuY19nZXR0aW1lb2ZkYXlf cG9zaXhfc2lnbmF0dXJlPWFsbW9zdApnbF9jdl9mdW5jX2xzdGF0X2RlcmVmZXJlbmNlc19zbGFz aGVkX3N5bWxpbms9eWVzCmdsX2N2X2Z1bmNfcHJpbnRmX2F0dHJpYnV0ZV9mbGF2b3I9c3lzdGVt CmdsX2N2X2Z1bmNfcHNlbGVjdF9kZXRlY3RzX2ViYWRmPXllcwpnbF9jdl9mdW5jX3B0aHJlYWRf c2lnbWFza19yZXR1cm5fd29ya3M9eWVzCmdsX2N2X2Z1bmNfcHRocmVhZF9zaWdtYXNrX3VuYmxv Y2tfd29ya3M9J2d1ZXNzaW5nIHllcycKZ2xfY3ZfZnVuY19yZWFkbGlua193b3Jrcz15ZXMKZ2xf Y3ZfZnVuY19zdHJ0b2ltYXg9eWVzCmdsX2N2X2Z1bmNfc3ltbGlua193b3Jrcz15ZXMKZ2xfY3Zf ZnVuY193b3JraW5nX2FjbF9nZXRfZmlsZT15ZXMKZ2xfY3ZfZnVuY193b3JraW5nX21rdGltZT15 ZXMKZ2xfY3ZfZnVuY193b3JraW5nX3V0aW1lcz15ZXMKZ2xfY3ZfaGF2ZV9pbmNsdWRlX25leHQ9 eWVzCmdsX2N2X2hlYWRlcl9lcnJub19oX2NvbXBsZXRlPXllcwpnbF9jdl9oZWFkZXJfc3RkaW50 X3ByZWRhdGVzX2N4eDExX2g9bm8KZ2xfY3ZfaGVhZGVyX3N5c19zZWxlY3RfaF9zZWxmY29udGFp bmVkPXllcwpnbF9jdl9oZWFkZXJfd29ya2luZ19zdGRhbGlnbl9oPXllcwpnbF9jdl9oZWFkZXJf d29ya2luZ19zdGRpbnRfaD15ZXMKZ2xfY3ZfbmV4dF9kaXJlbnRfaD0nPGRpcmVudC5oPicKZ2xf Y3ZfbmV4dF9mY250bF9oPSc8ZmNudGwuaD4nCmdsX2N2X25leHRfZ2V0b3B0X2g9JzxnZXRvcHQu aD4nCmdsX2N2X25leHRfaW50dHlwZXNfaD0nPGludHR5cGVzLmg+JwpnbF9jdl9uZXh0X3NpZ25h bF9oPSc8c2lnbmFsLmg+JwpnbF9jdl9uZXh0X3N0ZGludF9oPSc8c3RkaW50Lmg+JwpnbF9jdl9u ZXh0X3N0ZGlvX2g9JzxzdGRpby5oPicKZ2xfY3ZfbmV4dF9zdGRsaWJfaD0nPHN0ZGxpYi5oPicK Z2xfY3ZfbmV4dF9zdHJpbmdfaD0nPHN0cmluZy5oPicKZ2xfY3ZfbmV4dF9zeXNfc2VsZWN0X2g9 JzxzeXMvc2VsZWN0Lmg+JwpnbF9jdl9uZXh0X3N5c19zdGF0X2g9JzxzeXMvc3RhdC5oPicKZ2xf Y3ZfbmV4dF9zeXNfdGltZV9oPSc8c3lzL3RpbWUuaD4nCmdsX2N2X25leHRfc3lzX3R5cGVzX2g9 JzxzeXMvdHlwZXMuaD4nCmdsX2N2X25leHRfdGltZV9oPSc8dGltZS5oPicKZ2xfY3ZfbmV4dF91 bmlzdGRfaD0nPHVuaXN0ZC5oPicKZ2xfY3ZfcHJhZ21hX2NvbHVtbnM9bm8KZ2xfY3ZfcnBsX2Fs bG9jYT15ZXMKZ2xfY3Zfc2lnX3BzZWxlY3Q9eWVzCmdsX2N2X3N5c19zdHJ1Y3RfdGltZXNwZWNf aW5fdGltZV9oPXllcwpnbF9jdl9zeXNfc3RydWN0X3RpbWV2YWw9eWVzCmdsX2N2X3N5c19zdHJ1 Y3RfdGltZXZhbF90dl9zZWM9eWVzCmdsX2N2X3N5c19zdHJ1Y3RfdXRpbWJ1Zj15ZXMKZ2xfY3Zf dGltZV9yX3Bvc2l4PXllcwpnbF9jdl90eXBlX3NpZ3NldF90PXllcwpnbF9jdl93YXJuX2NfX1dl cnJvcl9fV3Vua25vd25fd2FybmluZ19vcHRpb249bm8KZ3RfY3ZfY193Y2hhcl90PXllcwpndF9j dl9zc2l6ZV90PXllcwpndF9jdl92YXJfZW52aXJvbl9kZWNsYXJhdGlvbj15ZXMKcGtnX2N2X0FM U0FfQ0ZMQUdTPS1JL3Vzci9pbmNsdWRlL2Fsc2EKcGtnX2N2X0FMU0FfTElCUz0tbGFzb3VuZApw a2dfY3ZfREJVU19DRkxBR1M9Jy1JL3Vzci9pbmNsdWRlL2RidXMtMS4wIC1JL3Vzci9saWIvZGJ1 cy0xLjAvaW5jbHVkZScKcGtnX2N2X0RCVVNfTElCUz0tbGRidXMtMQpwa2dfY3ZfRk9OVENPTkZJ R19DRkxBR1M9Jy1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9saWJwbmcx NiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3Iv bGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNs dWRlL2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWIt Mi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZScKcGtnX2N2X0ZPTlRDT05GSUdfTElCUz0n LWxmb250Y29uZmlnIC1sZnJlZXR5cGUnCnBrZ19jdl9GUkVFVFlQRV9DRkxBR1M9Jy1JL3Vzci9p bmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9o YXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1 ZGUnCnBrZ19jdl9GUkVFVFlQRV9MSUJTPS1sZnJlZXR5cGUKcGtnX2N2X0dDT05GX0NGTEFHUz0n LXB0aHJlYWQgLUkvdXNyL2luY2x1ZGUvZ2NvbmYvMiAtSS91c3IvaW5jbHVkZS9kYnVzLTEuMCAt SS91c3IvbGliL2RidXMtMS4wL2luY2x1ZGUgLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNy L2xpYi9nbGliLTIuMC9pbmNsdWRlJwpwa2dfY3ZfR0NPTkZfTElCUz0nLWxnY29uZi0yIC1sZ2xp Yi0yLjAnCnBrZ19jdl9HT0JKRUNUX0NGTEFHUz0nLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkv dXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlJwpwa2dfY3ZfR09CSkVDVF9MSUJTPSctbGdvYmplY3Qt Mi4wIC1sZ2xpYi0yLjAnCnBrZ19jdl9HU0VUVElOR1NfQ0ZMQUdTPSctcHRocmVhZCAtSS91c3Iv aW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUnCnBrZ19jdl9HU0VU VElOR1NfTElCUz0nLWxnaW8tMi4wIC1sZ29iamVjdC0yLjAgLWxnbGliLTIuMCcKcGtnX2N2X0lN QUdFTUFHSUNLX0NGTEFHUz0nLWZvcGVubXAgLURNQUdJQ0tDT1JFX0hEUklfRU5BQkxFPTEgLURN QUdJQ0tDT1JFX1FVQU5UVU1fREVQVEg9MTYgLWZvcGVubXAgLURNQUdJQ0tDT1JFX0hEUklfRU5B QkxFPTEgLURNQUdJQ0tDT1JFX1FVQU5UVU1fREVQVEg9MTYgLUkvdXNyL2luY2x1ZGUvSW1hZ2VN YWdpY2stNicKcGtnX2N2X0lNQUdFTUFHSUNLX0xJQlM9Jy1sTWFnaWNrV2FuZC02LlExNkhEUkkg LWxNYWdpY2tDb3JlLTYuUTE2SERSSScKcGtnX2N2X0xJQkdOVVRMUzNfQ0ZMQUdTPS1JL3Vzci9p bmNsdWRlL3AxMS1raXQtMQpwa2dfY3ZfTElCR05VVExTM19MSUJTPS1sZ251dGxzCnBrZ19jdl9M SUJHTlVUTFNfQ0ZMQUdTPS1JL3Vzci9pbmNsdWRlL3AxMS1raXQtMQpwa2dfY3ZfTElCR05VVExT X0xJQlM9LWxnbnV0bHMKcGtnX2N2X0xJQk9URl9DRkxBR1M9Jy1JL3Vzci9pbmNsdWRlL2ZyZWV0 eXBlMiAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91 c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUnCnBrZ19jdl9M SUJPVEZfTElCUz0nLWxmcmVldHlwZSAtbHogLWxiejIgLWxwbmcxNiAtbGhhcmZidXp6IC1sb3Rm IC1sZnJlZXR5cGUnCnBrZ19jdl9MSUJYTUwyX0NGTEFHUz0tSS91c3IvaW5jbHVkZS9saWJ4bWwy CnBrZ19jdl9MSUJYTUwyX0xJQlM9LWx4bWwyCnBrZ19jdl9NMTdOX0ZMVF9DRkxBR1M9CnBrZ19j dl9NMTdOX0ZMVF9MSUJTPSctbG0xN24tY29yZSAtbG0xN24tZmx0IC1sbTE3bi1jb3JlJwpwa2df Y3ZfUlNWR19DRkxBR1M9Jy1wdGhyZWFkIC1JL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1JL3Vz ci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2IC1JL3Vzci9p bmNsdWRlL2NhaXJvIC1JL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1JL3Vzci9pbmNsdWRlL2ZyZWV0 eXBlMiAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91 c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUgLUkvdXNyL2lu Y2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2ds aWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9saWJkcm0g LUkvdXNyL2luY2x1ZGUvbGlicG5nMTYnCnBrZ19jdl9SU1ZHX0xJQlM9Jy1scnN2Zy0yIC1sbSAt bGdpby0yLjAgLWxnZGtfcGl4YnVmLTIuMCAtbGdvYmplY3QtMi4wIC1sZ2xpYi0yLjAgLWxjYWly bycKcGtnX2N2X1hGSVhFU19DRkxBR1M9CnBrZ19jdl9YRklYRVNfTElCUz0tbFhmaXhlcwpwa2df Y3ZfWEZUX0NGTEFHUz0nLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2xp YnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1J L3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNy L2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUv Z2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlJwpwa2dfY3ZfWEZUX0xJQlM9LWxY ZnQKcGtnX2N2X1hJTkVSQU1BX0NGTEFHUz0KcGtnX2N2X1hJTkVSQU1BX0xJQlM9LWxYaW5lcmFt YQpwa2dfY3ZfWFJBTkRSX0NGTEFHUz0KcGtnX2N2X1hSQU5EUl9MSUJTPS1sWHJhbmRyCgojIyAt LS0tLS0tLS0tLS0tLS0tLSAjIwojIyBPdXRwdXQgdmFyaWFibGVzLiAjIwojIyAtLS0tLS0tLS0t LS0tLS0tLSAjIwoKQUNMT0NBTD0nJHtTSEVMTH0gL2hvbWUvZGVlY2gvRG93bmxvYWRzL2VtYWNz LTI1LjEvYnVpbGQtYXV4L21pc3NpbmcgYWNsb2NhbC0xLjE1JwpBQ0xPQ0FMX1BBVEg9JycKQUxM T0NBPScnCkFMTE9DQV9IPSdhbGxvY2EuaCcKQUxTQV9DRkxBR1M9Jy1JL3Vzci9pbmNsdWRlL2Fs c2EnCkFMU0FfTElCUz0nLWxhc291bmQnCkFNREVQQkFDS1NMQVNIPSdcJwpBTURFUF9GQUxTRT0n IycKQU1ERVBfVFJVRT0nJwpBTVRBUj0nJCR7VEFSLXRhcn0nCkFNX0JBQ0tTTEFTSD0nXCcKQU1f REVGQVVMVF9WPSckKEFNX0RFRkFVTFRfVkVSQk9TSVRZKScKQU1fREVGQVVMVF9WRVJCT1NJVFk9 JzAnCkFNX1Y9JyQoViknCkFQUExFX1VOSVZFUlNBTF9CVUlMRD0nMCcKQVI9J2FyJwpBUkZMQUdT PSdjcicKQVVUT0NPTkY9JyR7U0hFTEx9IC9ob21lL2RlZWNoL0Rvd25sb2Fkcy9lbWFjcy0yNS4x L2J1aWxkLWF1eC9taXNzaW5nIGF1dG9jb25mJwpBVVRPSEVBREVSPScke1NIRUxMfSAvaG9tZS9k ZWVjaC9Eb3dubG9hZHMvZW1hY3MtMjUuMS9idWlsZC1hdXgvbWlzc2luZyBhdXRvaGVhZGVyJwpB VVRPTUFLRT0nJHtTSEVMTH0gL2hvbWUvZGVlY2gvRG93bmxvYWRzL2VtYWNzLTI1LjEvYnVpbGQt YXV4L21pc3NpbmcgYXV0b21ha2UtMS4xNScKQVVUT19ERVBFTkQ9J3llcycKQVdLPSdnYXdrJwpC SVRTSVpFT0ZfUFRSRElGRl9UPScnCkJJVFNJWkVPRl9TSUdfQVRPTUlDX1Q9JycKQklUU0laRU9G X1NJWkVfVD0nJwpCSVRTSVpFT0ZfV0NIQVJfVD0nJwpCSVRTSVpFT0ZfV0lOVF9UPScnCkJMRVNT TUFJTF9UQVJHRVQ9JycKQlVJTERJTkdfRk9SX1dJTkRPV1NOVF9GQUxTRT0nJwpCVUlMRElOR19G T1JfV0lORE9XU05UX1RSVUU9JyMnCkJZVEVTV0FQX0g9JycKQ0FJUk9fQ0ZMQUdTPScnCkNBSVJP X0xJQlM9JycKQ0FOTk9UX0RVTVA9J25vJwpDQz0nZ2NjJwpDQ0RFUE1PREU9J2RlcG1vZGU9Z2Nj MycKQ0ZMQUdTPSctZzMgLU8yJwpDRkxBR1NfU09VTkQ9JyAtSS91c3IvaW5jbHVkZS9hbHNhJwpD TElFTlRSRVM9JycKQ0xJRU5UVz0nJwpDTV9PQko9J2NtLm8nCkNPTV9FUlJMSUI9JycKQ1BQPSdn Y2MgLUUnCkNQUEZMQUdTPScgICcKQ1JZUFRPTElCPScnCkNZR1BBVEhfVz0nZWNobycKQ1lHV0lO X09CSj0nJwpDX1NXSVRDSF9NQUNISU5FPScnCkNfU1dJVENIX1NZU1RFTT0nJwpDX1NXSVRDSF9Y X1NJVEU9JyAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYg LUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xp Yi9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVk ZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIu MCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUnCkRCVVNfQ0ZMQUdTPSctSS91c3IvaW5jbHVk ZS9kYnVzLTEuMCAtSS91c3IvbGliL2RidXMtMS4wL2luY2x1ZGUnCkRCVVNfTElCUz0nLWxkYnVz LTEnCkRCVVNfT0JKPSdkYnVzYmluZC5vJwpERUZTPSctREhBVkVfQ09ORklHX0gnCkRFUERJUj0n LmRlcHMnCkRFU0xJQj0nJwpET0NNSVNDX1czMj0nJwpFQ0hPX0M9JycKRUNIT19OPSctbicKRUNI T19UPScnCkVHUkVQPScvdXNyL2Jpbi9ncmVwIC1FJwpFTUFDU1JFUz0nJwpFTUFDU19NQU5JRkVT VD0nJwpFTVVMVElIT1BfSElEREVOPScnCkVNVUxUSUhPUF9WQUxVRT0nJwpFTk9MSU5LX0hJRERF Tj0nJwpFTk9MSU5LX1ZBTFVFPScnCkVPVkVSRkxPV19ISURERU49JycKRU9WRVJGTE9XX1ZBTFVF PScnCkVSUk5PX0g9JycKRVhFQ0lORk9fSD0nJwpFWEVFWFQ9JycKRklSU1RGSUxFX09CSj0nJwpG T05UQ09ORklHX0NGTEFHUz0nLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRl L2xpYnBuZzE2IC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1JL3Vzci9pbmNsdWRlL2dsaWItMi4w IC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkv dXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1 ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlJwpGT05UQ09ORklHX0xJQlM9 Jy1sZm9udGNvbmZpZyAtbGZyZWV0eXBlJwpGT05UX09CSj0neGZvbnQubyBmdGZvbnQubyB4ZnRm b250Lm8gZnR4Zm9udC5vJwpGUkVFVFlQRV9DRkxBR1M9Jy1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBl MiAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3Iv aW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUnCkZSRUVUWVBFX0xJ QlM9Jy1sZnJlZXR5cGUnCkdDT05GX0NGTEFHUz0nLXB0aHJlYWQgLUkvdXNyL2luY2x1ZGUvZ2Nv bmYvMiAtSS91c3IvaW5jbHVkZS9kYnVzLTEuMCAtSS91c3IvbGliL2RidXMtMS4wL2luY2x1ZGUg LUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlJwpHQ09O Rl9MSUJTPSctbGdjb25mLTIgLWxnbGliLTIuMCcKR0VUTE9BREFWR19MSUJTPScnCkdFVE9QVF9I PScnCkdGSUxFTk9USUZZX0NGTEFHUz0nJwpHRklMRU5PVElGWV9MSUJTPScnCkdMX0NPTkRfTElC VE9PTF9GQUxTRT0nJwpHTF9DT05EX0xJQlRPT0xfVFJVRT0nIycKR0xfR0VORVJBVEVfQUxMT0NB X0hfRkFMU0U9JyMnCkdMX0dFTkVSQVRFX0FMTE9DQV9IX1RSVUU9JycKR0xfR0VORVJBVEVfQllU RVNXQVBfSF9GQUxTRT0nJwpHTF9HRU5FUkFURV9CWVRFU1dBUF9IX1RSVUU9JyMnCkdMX0dFTkVS QVRFX0VSUk5PX0hfRkFMU0U9JycKR0xfR0VORVJBVEVfRVJSTk9fSF9UUlVFPScjJwpHTF9HRU5F UkFURV9FWEVDSU5GT19IX0ZBTFNFPScnCkdMX0dFTkVSQVRFX0VYRUNJTkZPX0hfVFJVRT0nIycK R0xfR0VORVJBVEVfU1REQUxJR05fSF9GQUxTRT0nJwpHTF9HRU5FUkFURV9TVERBTElHTl9IX1RS VUU9JyMnCkdMX0dFTkVSQVRFX1NURERFRl9IX0ZBTFNFPScnCkdMX0dFTkVSQVRFX1NURERFRl9I X1RSVUU9JyMnCkdMX0dFTkVSQVRFX1NURElOVF9IX0ZBTFNFPScnCkdMX0dFTkVSQVRFX1NURElO VF9IX1RSVUU9JyMnCkdNQUxMT0NfT0JKPSdnbWFsbG9jLm8nCkdOVUxJQl9BTFBIQVNPUlQ9JzAn CkdOVUxJQl9BVE9MTD0nMCcKR05VTElCX0NBTExPQ19QT1NJWD0nMCcKR05VTElCX0NBTk9OSUNB TElaRV9GSUxFX05BTUU9JzAnCkdOVUxJQl9DSERJUj0nMCcKR05VTElCX0NIT1dOPScwJwpHTlVM SUJfQ0xPU0U9JzAnCkdOVUxJQl9DTE9TRURJUj0nMCcKR05VTElCX0RJUkZEPScwJwpHTlVMSUJf RFBSSU5URj0nMCcKR05VTElCX0RVUDI9JzEnCkdOVUxJQl9EVVAzPScwJwpHTlVMSUJfRFVQPScw JwpHTlVMSUJfRU5WSVJPTj0nMScKR05VTElCX0VVSURBQ0NFU1M9JzAnCkdOVUxJQl9GQUNDRVNT QVQ9JzEnCkdOVUxJQl9GQ0hESVI9JzAnCkdOVUxJQl9GQ0hNT0RBVD0nMCcKR05VTElCX0ZDSE9X TkFUPScwJwpHTlVMSUJfRkNMT1NFPScwJwpHTlVMSUJfRkNOVEw9JzEnCkdOVUxJQl9GREFUQVNZ TkM9JzEnCkdOVUxJQl9GRE9QRU49JzAnCkdOVUxJQl9GRE9QRU5ESVI9JzEnCkdOVUxJQl9GRkxV U0g9JzAnCkdOVUxJQl9GRlNMPScwJwpHTlVMSUJfRkZTTEw9JzAnCkdOVUxJQl9GR0VUQz0nMScK R05VTElCX0ZHRVRTPScxJwpHTlVMSUJfRk9QRU49JzAnCkdOVUxJQl9GUFJJTlRGPScxJwpHTlVM SUJfRlBSSU5URl9QT1NJWD0nMCcKR05VTElCX0ZQVVJHRT0nMCcKR05VTElCX0ZQVVRDPScxJwpH TlVMSUJfRlBVVFM9JzEnCkdOVUxJQl9GUkVBRD0nMScKR05VTElCX0ZSRU9QRU49JzAnCkdOVUxJ Ql9GU0NBTkY9JzEnCkdOVUxJQl9GU0VFSz0nMCcKR05VTElCX0ZTRUVLTz0nMCcKR05VTElCX0ZT VEFUPScwJwpHTlVMSUJfRlNUQVRBVD0nMScKR05VTElCX0ZTWU5DPScxJwpHTlVMSUJfRlRFTEw9 JzAnCkdOVUxJQl9GVEVMTE89JzAnCkdOVUxJQl9GVFJVTkNBVEU9JzAnCkdOVUxJQl9GVVRJTUVO Uz0nMCcKR05VTElCX0ZXUklURT0nMScKR05VTElCX0dFVEM9JzEnCkdOVUxJQl9HRVRDSEFSPScx JwpHTlVMSUJfR0VUQ1dEPScwJwpHTlVMSUJfR0VUREVMSU09JzAnCkdOVUxJQl9HRVRET01BSU5O QU1FPScwJwpHTlVMSUJfR0VURFRBQkxFU0laRT0nMScKR05VTElCX0dFVEdST1VQUz0nMCcKR05V TElCX0dFVEhPU1ROQU1FPScwJwpHTlVMSUJfR0VUTElORT0nMCcKR05VTElCX0dFVExPQURBVkc9 JzEnCkdOVUxJQl9HRVRMT0dJTj0nMCcKR05VTElCX0dFVExPR0lOX1I9JzAnCkdOVUxJQl9HRVRQ QUdFU0laRT0nMCcKR05VTElCX0dFVFNVQk9QVD0nMCcKR05VTElCX0dFVFRJTUVPRkRBWT0nMScK R05VTElCX0dFVFVTRVJTSEVMTD0nMCcKR05VTElCX0dMX1VOSVNURF9IX0dFVE9QVD0nJwpHTlVM SUJfR1JBTlRQVD0nMCcKR05VTElCX0dST1VQX01FTUJFUj0nMCcKR05VTElCX0lNQVhBQlM9JzAn CkdOVUxJQl9JTUFYRElWPScwJwpHTlVMSUJfSVNBVFRZPScwJwpHTlVMSUJfTENITU9EPScwJwpH TlVMSUJfTENIT1dOPScwJwpHTlVMSUJfTElOSz0nMCcKR05VTElCX0xJTktBVD0nMCcKR05VTElC X0xTRUVLPScwJwpHTlVMSUJfTFNUQVQ9JzEnCkdOVUxJQl9NQUxMT0NfUE9TSVg9JzAnCkdOVUxJ Ql9NQlNDQVNFQ01QPScwJwpHTlVMSUJfTUJTQ0FTRVNUUj0nMCcKR05VTElCX01CU0NIUj0nMCcK R05VTElCX01CU0NTUE49JzAnCkdOVUxJQl9NQlNMRU49JzAnCkdOVUxJQl9NQlNOQ0FTRUNNUD0n MCcKR05VTElCX01CU05MRU49JzAnCkdOVUxJQl9NQlNQQlJLPScwJwpHTlVMSUJfTUJTUENBU0VD TVA9JzAnCkdOVUxJQl9NQlNSQ0hSPScwJwpHTlVMSUJfTUJTU0VQPScwJwpHTlVMSUJfTUJTU1BO PScwJwpHTlVMSUJfTUJTU1RSPScwJwpHTlVMSUJfTUJTVE9LX1I9JzAnCkdOVUxJQl9NQlRPV0M9 JzAnCkdOVUxJQl9NRU1DSFI9JzAnCkdOVUxJQl9NRU1NRU09JzAnCkdOVUxJQl9NRU1QQ1BZPScw JwpHTlVMSUJfTUVNUkNIUj0nMScKR05VTElCX01LRElSQVQ9JzAnCkdOVUxJQl9NS0RURU1QPScw JwpHTlVMSUJfTUtGSUZPPScwJwpHTlVMSUJfTUtGSUZPQVQ9JzAnCkdOVUxJQl9NS05PRD0nMCcK R05VTElCX01LTk9EQVQ9JzAnCkdOVUxJQl9NS09TVEVNUD0nMScKR05VTElCX01LT1NURU1QUz0n MCcKR05VTElCX01LU1RFTVA9JzAnCkdOVUxJQl9NS1NURU1QUz0nMCcKR05VTElCX01LVElNRT0n MScKR05VTElCX05BTk9TTEVFUD0nMCcKR05VTElCX05PTkJMT0NLSU5HPScwJwpHTlVMSUJfT0JT VEFDS19QUklOVEY9JzAnCkdOVUxJQl9PQlNUQUNLX1BSSU5URl9QT1NJWD0nMCcKR05VTElCX09Q RU49JzAnCkdOVUxJQl9PUEVOQVQ9JzAnCkdOVUxJQl9PUEVORElSPScwJwpHTlVMSUJfUENMT1NF PScwJwpHTlVMSUJfUEVSUk9SPScwJwpHTlVMSUJfUElQRTI9JzEnCkdOVUxJQl9QSVBFPScwJwpH TlVMSUJfUE9QRU49JzAnCkdOVUxJQl9QT1NJWF9PUEVOUFQ9JzAnCkdOVUxJQl9QUkVBRD0nMCcK R05VTElCX1BSSU5URj0nMScKR05VTElCX1BSSU5URl9QT1NJWD0nMCcKR05VTElCX1BTRUxFQ1Q9 JzEnCkdOVUxJQl9QVEhSRUFEX1NJR01BU0s9JzEnCkdOVUxJQl9QVFNOQU1FPScwJwpHTlVMSUJf UFRTTkFNRV9SPScwJwpHTlVMSUJfUFVUQz0nMScKR05VTElCX1BVVENIQVI9JzEnCkdOVUxJQl9Q VVRFTlY9JzEnCkdOVUxJQl9QVVRTPScxJwpHTlVMSUJfUFdSSVRFPScwJwpHTlVMSUJfUVNPUlRf Uj0nMCcKR05VTElCX1JBSVNFPScwJwpHTlVMSUJfUkFORE9NPScwJwpHTlVMSUJfUkFORE9NX1I9 JzAnCkdOVUxJQl9SQVdNRU1DSFI9JzAnCkdOVUxJQl9SRUFEPScwJwpHTlVMSUJfUkVBRERJUj0n MCcKR05VTElCX1JFQURMSU5LPScxJwpHTlVMSUJfUkVBRExJTktBVD0nMScKR05VTElCX1JFQUxM T0NfUE9TSVg9JzAnCkdOVUxJQl9SRUFMUEFUSD0nMCcKR05VTElCX1JFTU9WRT0nMCcKR05VTElC X1JFTkFNRT0nMCcKR05VTElCX1JFTkFNRUFUPScwJwpHTlVMSUJfUkVXSU5ERElSPScwJwpHTlVM SUJfUk1ESVI9JzAnCkdOVUxJQl9SUE1BVENIPScwJwpHTlVMSUJfU0NBTkRJUj0nMCcKR05VTElC X1NDQU5GPScxJwpHTlVMSUJfU0VDVVJFX0dFVEVOVj0nMCcKR05VTElCX1NFTEVDVD0nMCcKR05V TElCX1NFVEVOVj0nMCcKR05VTElCX1NFVEhPU1ROQU1FPScwJwpHTlVMSUJfU0lHQUNUSU9OPScw JwpHTlVMSUJfU0lHTkFMX0hfU0lHUElQRT0nMCcKR05VTElCX1NJR1BST0NNQVNLPScwJwpHTlVM SUJfU0xFRVA9JzAnCkdOVUxJQl9TTlBSSU5URj0nMCcKR05VTElCX1NQUklOVEZfUE9TSVg9JzAn CkdOVUxJQl9TVEFUPScwJwpHTlVMSUJfU1RESU9fSF9OT05CTE9DS0lORz0nMCcKR05VTElCX1NU RElPX0hfU0lHUElQRT0nMCcKR05VTElCX1NUUENQWT0nMScKR05VTElCX1NUUE5DUFk9JzAnCkdO VUxJQl9TVFJDQVNFU1RSPScwJwpHTlVMSUJfU1RSQ0hSTlVMPScwJwpHTlVMSUJfU1RSRFVQPScw JwpHTlVMSUJfU1RSRVJST1I9JzAnCkdOVUxJQl9TVFJFUlJPUl9SPScwJwpHTlVMSUJfU1RSTkNB VD0nMCcKR05VTElCX1NUUk5EVVA9JzAnCkdOVUxJQl9TVFJOTEVOPScwJwpHTlVMSUJfU1RSUEJS Sz0nMCcKR05VTElCX1NUUlBUSU1FPScwJwpHTlVMSUJfU1RSU0VQPScwJwpHTlVMSUJfU1RSU0lH TkFMPScwJwpHTlVMSUJfU1RSU1RSPScwJwpHTlVMSUJfU1RSVE9EPScwJwpHTlVMSUJfU1RSVE9J TUFYPScxJwpHTlVMSUJfU1RSVE9LX1I9JzAnCkdOVUxJQl9TVFJUT0xMPScwJwpHTlVMSUJfU1RS VE9VTEw9JzAnCkdOVUxJQl9TVFJUT1VNQVg9JzEnCkdOVUxJQl9TVFJWRVJTQ01QPScwJwpHTlVM SUJfU1lNTElOSz0nMScKR05VTElCX1NZTUxJTktBVD0nMCcKR05VTElCX1NZU1RFTV9QT1NJWD0n MCcKR05VTElCX1RJTUVHTT0nMScKR05VTElCX1RJTUVfUj0nMScKR05VTElCX1RJTUVfUlo9JzEn CkdOVUxJQl9UTVBGSUxFPScwJwpHTlVMSUJfVFRZTkFNRV9SPScwJwpHTlVMSUJfVU5JU1REX0hf Tk9OQkxPQ0tJTkc9JzAnCkdOVUxJQl9VTklTVERfSF9TSUdQSVBFPScwJwpHTlVMSUJfVU5MSU5L PScwJwpHTlVMSUJfVU5MSU5LQVQ9JzAnCkdOVUxJQl9VTkxPQ0tQVD0nMCcKR05VTElCX1VOU0VU RU5WPScwJwpHTlVMSUJfVVNMRUVQPScwJwpHTlVMSUJfVVRJTUVOU0FUPScwJwpHTlVMSUJfVkFT UFJJTlRGPScwJwpHTlVMSUJfVkRQUklOVEY9JzAnCkdOVUxJQl9WRlBSSU5URj0nMScKR05VTElC X1ZGUFJJTlRGX1BPU0lYPScwJwpHTlVMSUJfVkZTQ0FORj0nMCcKR05VTElCX1ZQUklOVEY9JzEn CkdOVUxJQl9WUFJJTlRGX1BPU0lYPScwJwpHTlVMSUJfVlNDQU5GPScwJwpHTlVMSUJfVlNOUFJJ TlRGPScwJwpHTlVMSUJfVlNQUklOVEZfUE9TSVg9JzAnCkdOVUxJQl9XQVJOX0NGTEFHUz0nJwpH TlVMSUJfV0NUT01CPScwJwpHTlVMSUJfV1JJVEU9JzAnCkdOVUxJQl9fRVhJVD0nMCcKR05VU1RF UF9DRkxBR1M9JycKR05VX09CSkNfQ0ZMQUdTPScnCkdPQkpFQ1RfQ0ZMQUdTPSctSS91c3IvaW5j bHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUnCkdPQkpFQ1RfTElCUz0n LWxnb2JqZWN0LTIuMCAtbGdsaWItMi4wJwpHUkVQPScvdXNyL2Jpbi9ncmVwJwpHU0VUVElOR1Nf Q0ZMQUdTPSctcHRocmVhZCAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWIt Mi4wL2luY2x1ZGUnCkdTRVRUSU5HU19MSUJTPSctbGdpby0yLjAgLWxnb2JqZWN0LTIuMCAtbGds aWItMi4wJwpHVEtfQ0ZMQUdTPScnCkdUS19MSUJTPScnCkdUS19PQko9JycKR1pJUF9QUk9HPScv dXNyL2Jpbi9nemlwJwpIQVZFX0FMUEhBU09SVD0nMScKSEFWRV9BVE9MTD0nMScKSEFWRV9DQU5P TklDQUxJWkVfRklMRV9OQU1FPScxJwpIQVZFX0NIT1dOPScxJwpIQVZFX0NMT1NFRElSPScxJwpI QVZFX0RFQ0xfRElSRkQ9JzEnCkhBVkVfREVDTF9FTlZJUk9OPScxJwpIQVZFX0RFQ0xfRkNIRElS PScxJwpIQVZFX0RFQ0xfRkRBVEFTWU5DPScxJwpIQVZFX0RFQ0xfRkRPUEVORElSPScxJwpIQVZF X0RFQ0xfRlBVUkdFPScxJwpIQVZFX0RFQ0xfRlNFRUtPPScxJwpIQVZFX0RFQ0xfRlRFTExPPScx JwpIQVZFX0RFQ0xfR0VUREVMSU09JzEnCkhBVkVfREVDTF9HRVRET01BSU5OQU1FPScxJwpIQVZF X0RFQ0xfR0VUTElORT0nMScKSEFWRV9ERUNMX0dFVExPQURBVkc9JzEnCkhBVkVfREVDTF9HRVRM T0dJTl9SPScxJwpIQVZFX0RFQ0xfR0VUUEFHRVNJWkU9JzEnCkhBVkVfREVDTF9HRVRVU0VSU0hF TEw9JzEnCkhBVkVfREVDTF9JTUFYQUJTPScxJwpIQVZFX0RFQ0xfSU1BWERJVj0nMScKSEFWRV9E RUNMX0xPQ0FMVElNRV9SPScxJwpIQVZFX0RFQ0xfTUVNTUVNPScxJwpIQVZFX0RFQ0xfTUVNUkNI Uj0nMScKSEFWRV9ERUNMX09CU1RBQ0tfUFJJTlRGPScxJwpIQVZFX0RFQ0xfU0VURU5WPScxJwpI QVZFX0RFQ0xfU0VUSE9TVE5BTUU9JzEnCkhBVkVfREVDTF9TTlBSSU5URj0nMScKSEFWRV9ERUNM X1NUUkRVUD0nMScKSEFWRV9ERUNMX1NUUkVSUk9SX1I9JzEnCkhBVkVfREVDTF9TVFJORFVQPScx JwpIQVZFX0RFQ0xfU1RSTkxFTj0nMScKSEFWRV9ERUNMX1NUUlNJR05BTD0nMScKSEFWRV9ERUNM X1NUUlRPSU1BWD0nMScKSEFWRV9ERUNMX1NUUlRPS19SPScxJwpIQVZFX0RFQ0xfU1RSVE9VTUFY PScxJwpIQVZFX0RFQ0xfVFRZTkFNRV9SPScxJwpIQVZFX0RFQ0xfVU5TRVRFTlY9JzEnCkhBVkVf REVDTF9WU05QUklOVEY9JzEnCkhBVkVfRElSRU5UX0g9JzEnCkhBVkVfRFBSSU5URj0nMScKSEFW RV9EVVAyPScxJwpIQVZFX0RVUDM9JzEnCkhBVkVfRVVJREFDQ0VTUz0nMScKSEFWRV9GQUNDRVNT QVQ9JzEnCkhBVkVfRkNIRElSPScxJwpIQVZFX0ZDSE1PREFUPScxJwpIQVZFX0ZDSE9XTkFUPScx JwpIQVZFX0ZDTlRMPScxJwpIQVZFX0ZEQVRBU1lOQz0nMScKSEFWRV9GRE9QRU5ESVI9JzEnCkhB VkVfRkZTTD0nMScKSEFWRV9GRlNMTD0nMScKSEFWRV9GU0VFS089JzEnCkhBVkVfRlNUQVRBVD0n MScKSEFWRV9GU1lOQz0nMScKSEFWRV9GVEVMTE89JzEnCkhBVkVfRlRSVU5DQVRFPScxJwpIQVZF X0ZVVElNRU5TPScxJwpIQVZFX0dFVERUQUJMRVNJWkU9JzEnCkhBVkVfR0VUR1JPVVBTPScxJwpI QVZFX0dFVEhPU1ROQU1FPScxJwpIQVZFX0dFVExPR0lOPScxJwpIQVZFX0dFVE9QVF9IPScxJwpI QVZFX0dFVFBBR0VTSVpFPScxJwpIQVZFX0dFVFNVQk9QVD0nMScKSEFWRV9HRVRUSU1FT0ZEQVk9 JzEnCkhBVkVfR1JBTlRQVD0nMScKSEFWRV9HUk9VUF9NRU1CRVI9JzEnCkhBVkVfSU5UVFlQRVNf SD0nMScKSEFWRV9MQ0hNT0Q9JzEnCkhBVkVfTENIT1dOPScxJwpIQVZFX0xJTks9JzEnCkhBVkVf TElOS0FUPScxJwpIQVZFX0xPTkdfTE9OR19JTlQ9JzEnCkhBVkVfTFNUQVQ9JzEnCkhBVkVfTUFL RUlORk89J3llcycKSEFWRV9NQVhfQUxJR05fVD0nMScKSEFWRV9NQlNMRU49JzAnCkhBVkVfTUVN Q0hSPScxJwpIQVZFX01FTVBDUFk9JzEnCkhBVkVfTUtESVJBVD0nMScKSEFWRV9NS0RURU1QPScx JwpIQVZFX01LRklGTz0nMScKSEFWRV9NS0ZJRk9BVD0nMScKSEFWRV9NS05PRD0nMScKSEFWRV9N S05PREFUPScxJwpIQVZFX01LT1NURU1QPScxJwpIQVZFX01LT1NURU1QUz0nMScKSEFWRV9NS1NU RU1QPScxJwpIQVZFX01LU1RFTVBTPScxJwpIQVZFX05BTk9TTEVFUD0nMScKSEFWRV9PUEVOQVQ9 JzEnCkhBVkVfT1BFTkRJUj0nMScKSEFWRV9PU19IPScwJwpIQVZFX1BDTE9TRT0nMScKSEFWRV9Q SVBFMj0nMScKSEFWRV9QSVBFPScxJwpIQVZFX1BPUEVOPScxJwpIQVZFX1BPU0lYX09QRU5QVD0n MScKSEFWRV9QT1NJWF9TSUdOQUxCTE9DS0lORz0nMScKSEFWRV9QUkVBRD0nMScKSEFWRV9QU0VM RUNUPScxJwpIQVZFX1BUSFJFQURfU0lHTUFTSz0nMScKSEFWRV9QVFNOQU1FPScxJwpIQVZFX1BU U05BTUVfUj0nMScKSEFWRV9QV1JJVEU9JzEnCkhBVkVfUkFJU0U9JzEnCkhBVkVfUkFORE9NPScx JwpIQVZFX1JBTkRPTV9IPScxJwpIQVZFX1JBTkRPTV9SPScxJwpIQVZFX1JBV01FTUNIUj0nMScK SEFWRV9SRUFERElSPScxJwpIQVZFX1JFQURMSU5LPScxJwpIQVZFX1JFQURMSU5LQVQ9JzEnCkhB VkVfUkVBTFBBVEg9JzEnCkhBVkVfUkVOQU1FQVQ9JzEnCkhBVkVfUkVXSU5ERElSPScxJwpIQVZF X1JQTUFUQ0g9JzEnCkhBVkVfU0NBTkRJUj0nMScKSEFWRV9TRUNVUkVfR0VURU5WPScxJwpIQVZF X1NFVEVOVj0nMScKSEFWRV9TRVRIT1NUTkFNRT0nMScKSEFWRV9TSUdBQ1RJT049JzEnCkhBVkVf U0lHSEFORExFUl9UPScxJwpIQVZFX1NJR0lORk9fVD0nMScKSEFWRV9TSUdORURfU0lHX0FUT01J Q19UPScnCkhBVkVfU0lHTkVEX1dDSEFSX1Q9JycKSEFWRV9TSUdORURfV0lOVF9UPScnCkhBVkVf U0lHU0VUX1Q9JzEnCkhBVkVfU0xFRVA9JzEnCkhBVkVfU1RESU5UX0g9JzEnCkhBVkVfU1RQQ1BZ PScxJwpIQVZFX1NUUE5DUFk9JzEnCkhBVkVfU1RSQ0FTRVNUUj0nMScKSEFWRV9TVFJDSFJOVUw9 JzEnCkhBVkVfU1RSUEJSSz0nMScKSEFWRV9TVFJQVElNRT0nMScKSEFWRV9TVFJTRVA9JzEnCkhB VkVfU1RSVE9EPScxJwpIQVZFX1NUUlRPTEw9JzEnCkhBVkVfU1RSVE9VTEw9JzEnCkhBVkVfU1RS VUNUX1JBTkRPTV9EQVRBPScxJwpIQVZFX1NUUlVDVF9TSUdBQ1RJT05fU0FfU0lHQUNUSU9OPScx JwpIQVZFX1NUUlVDVF9USU1FVkFMPScxJwpIQVZFX1NUUlZFUlNDTVA9JzEnCkhBVkVfU1lNTElO Sz0nMScKSEFWRV9TWU1MSU5LQVQ9JzEnCkhBVkVfU1lTX0JJVFlQRVNfSD0nJwpIQVZFX1NZU19J TlRUWVBFU19IPScnCkhBVkVfU1lTX0xPQURBVkdfSD0nMCcKSEFWRV9TWVNfUEFSQU1fSD0nMCcK SEFWRV9TWVNfU0VMRUNUX0g9JzEnCkhBVkVfU1lTX1RJTUVfSD0nMScKSEFWRV9TWVNfVFlQRVNf SD0nMScKSEFWRV9USU1FR009JzEnCkhBVkVfVElNRVpPTkVfVD0nMCcKSEFWRV9UWVBFX1ZPTEFU SUxFX1NJR19BVE9NSUNfVD0nMScKSEFWRV9VTklTVERfSD0nMScKSEFWRV9VTkxJTktBVD0nMScK SEFWRV9VTkxPQ0tQVD0nMScKSEFWRV9VTlNJR05FRF9MT05HX0xPTkdfSU5UPScxJwpIQVZFX1VT TEVFUD0nMScKSEFWRV9VVElNRU5TQVQ9JzEnCkhBVkVfVkFTUFJJTlRGPScxJwpIQVZFX1ZEUFJJ TlRGPScxJwpIQVZFX1dDSEFSX0g9JzEnCkhBVkVfV0NIQVJfVD0nMScKSEFWRV9XSU5TT0NLMl9I PScwJwpIQVZFX1hTRVJWRVI9JycKSEFWRV9fRVhJVD0nMScKSU1BR0VNQUdJQ0tfQ0ZMQUdTPSct Zm9wZW5tcCAtRE1BR0lDS0NPUkVfSERSSV9FTkFCTEU9MSAtRE1BR0lDS0NPUkVfUVVBTlRVTV9E RVBUSD0xNiAtZm9wZW5tcCAtRE1BR0lDS0NPUkVfSERSSV9FTkFCTEU9MSAtRE1BR0lDS0NPUkVf UVVBTlRVTV9ERVBUSD0xNiAtSS91c3IvaW5jbHVkZS9JbWFnZU1hZ2ljay02JwpJTUFHRU1BR0lD S19MSUJTPSctbE1hZ2lja1dhbmQtNi5RMTZIRFJJIC1sTWFnaWNrQ29yZS02LlExNkhEUkknCklO Q0xVREVfTkVYVD0naW5jbHVkZV9uZXh0JwpJTkNMVURFX05FWFRfQVNfRklSU1RfRElSRUNUSVZF PSdpbmNsdWRlX25leHQnCklOU1RBTExfQVJDSF9JTkRFUF9FWFRSQT0naW5zdGFsbC1ldGMnCklO U1RBTExfREFUQT0nJHtJTlNUQUxMfSAtbSA2NDQnCklOU1RBTExfSU5GTz0nL3Vzci9iaW4vaW5z dGFsbC1pbmZvJwpJTlNUQUxMX1BST0dSQU09JyR7SU5TVEFMTH0nCklOU1RBTExfU0NSSVBUPSck e0lOU1RBTEx9JwpJTlNUQUxMX1NUUklQX1BST0dSQU09JyQoaW5zdGFsbF9zaCkgLWMgLXMnCklO VDMyX01BWF9MVF9JTlRNQVhfTUFYPScxJwpJTlQ2NF9NQVhfRVFfTE9OR19NQVg9J2RlZmluZWQg X0xQNjQnCktRVUVVRV9DRkxBR1M9JycKS1FVRVVFX0xJQlM9JycKS1JCNExJQj0nJwpLUkI1TElC PScnCkxERkxBR1M9JyAnCkxEX1NXSVRDSF9TWVNURU09JycKTERfU1dJVENIX1NZU1RFTV9URU1B Q1M9Jy1XbCwtem5vY29tYnJlbG9jICQoTERfU1dJVENIX1hfU0lURV9SUEFUSCknCkxEX1NXSVRD SF9YX1NJVEU9JycKTERfU1dJVENIX1hfU0lURV9SUEFUSD0nJwpMSUJHSUY9Jy1sZ2lmJwpMSUJH TlVUTFMzX0NGTEFHUz0nLUkvdXNyL2luY2x1ZGUvcDExLWtpdC0xJwpMSUJHTlVUTFMzX0xJQlM9 Jy1sZ251dGxzJwpMSUJHTlVUTFNfQ0ZMQUdTPSctSS91c3IvaW5jbHVkZS9wMTEta2l0LTEnCkxJ QkdOVVRMU19MSUJTPSctbGdudXRscycKTElCR05VX0xJQkRFUFM9JycKTElCR05VX0xUTElCREVQ Uz0nJwpMSUJHUE09Jy1sZ3BtJwpMSUJIRVNJT0Q9JycKTElCSU5UTD0nJwpMSUJKUEVHPSctbGpw ZWcnCkxJQk1PRFVMRVM9JycKTElCT0JKUz0nJwpMSUJPVEZfQ0ZMQUdTPSctSS91c3IvaW5jbHVk ZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvaGFyZmJ1 enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9pbmNsdWRlJwpM SUJPVEZfTElCUz0nLWxmcmVldHlwZSAtbHogLWxiejIgLWxwbmcxNiAtbGhhcmZidXp6IC1sb3Rm IC1sZnJlZXR5cGUnCkxJQlBORz0nLWxwbmcxNicKTElCUkVTT0xWPScnCkxJQlM9JyAnCkxJQlNF TElOVVhfTElCUz0nJwpMSUJTT1VORD0nIC1sYXNvdW5kJwpMSUJTX0VDTElFTlQ9JycKTElCU19H TlVTVEVQPScnCkxJQlNfTUFJTD0nJwpMSUJTX1NZU1RFTT0nJwpMSUJTX1RFUk1DQVA9Jy1sdGlu Zm8nCkxJQlRJRkY9Jy1sdGlmZicKTElCWE1FTlU9JyQobHdsaWJkaXIpL2xpYmx3LmEnCkxJQlhN TDJfQ0ZMQUdTPSctSS91c3IvaW5jbHVkZS9saWJ4bWwyJwpMSUJYTUwyX0xJQlM9Jy1seG1sMicK TElCWE1VPSctbFhtdScKTElCWFBNPSctbFhwbScKTElCWFNNPSctbFNNIC1sSUNFJwpMSUJYVFI2 PSctbFNNIC1sSUNFJwpMSUJYVF9PVEhFUj0nJChMSUJYTVUpIC1sWHQgJChMSUJYVFI2KSAtbFhl eHQnCkxJQlhfT1RIRVI9JyQoTElCWFQpICQoTElCWF9FWFRSQSknCkxJQlo9Jy1seicKTElCX0FD TD0nLWxhY2wnCkxJQl9DTE9DS19HRVRUSU1FPScnCkxJQl9FQUNDRVNTPScnCkxJQl9FWEVDSU5G Tz0nJwpMSUJfRkRBVEFTWU5DPScnCkxJQl9NQVRIPSctbG0nCkxJQl9QVEhSRUFEPSctbHB0aHJl YWQnCkxJQl9QVEhSRUFEX1NJR01BU0s9JycKTElCX1RJTUVSX1RJTUU9Jy1scnQnCkxJQl9XU09D SzMyPScnCkxOX1NfRklMRU9OTFk9J2xuIC1zJwpMVExJQklOVEw9JycKTFRMSUJPQkpTPScnCk0x N05fRkxUX0NGTEFHUz0nJwpNMTdOX0ZMVF9MSUJTPSctbG0xN24tY29yZSAtbG0xN24tZmx0IC1s bTE3bi1jb3JlJwpNQUtFSU5GTz0nbWFrZWluZm8nCk1BS0VfUFJPRz0nJwpNS0RJUl9QPScvdXNy L2Jpbi9ta2RpciAtcCcKTU9EVUxFU19PQko9JycKTkVYVF9BU19GSVJTVF9ESVJFQ1RJVkVfRElS RU5UX0g9JzxkaXJlbnQuaD4nCk5FWFRfQVNfRklSU1RfRElSRUNUSVZFX0VSUk5PX0g9JycKTkVY VF9BU19GSVJTVF9ESVJFQ1RJVkVfRkNOVExfSD0nPGZjbnRsLmg+JwpORVhUX0FTX0ZJUlNUX0RJ UkVDVElWRV9HRVRPUFRfSD0nPGdldG9wdC5oPicKTkVYVF9BU19GSVJTVF9ESVJFQ1RJVkVfSU5U VFlQRVNfSD0nPGludHR5cGVzLmg+JwpORVhUX0FTX0ZJUlNUX0RJUkVDVElWRV9TSUdOQUxfSD0n PHNpZ25hbC5oPicKTkVYVF9BU19GSVJTVF9ESVJFQ1RJVkVfU1REREVGX0g9JycKTkVYVF9BU19G SVJTVF9ESVJFQ1RJVkVfU1RESU5UX0g9JzxzdGRpbnQuaD4nCk5FWFRfQVNfRklSU1RfRElSRUNU SVZFX1NURElPX0g9JzxzdGRpby5oPicKTkVYVF9BU19GSVJTVF9ESVJFQ1RJVkVfU1RETElCX0g9 JzxzdGRsaWIuaD4nCk5FWFRfQVNfRklSU1RfRElSRUNUSVZFX1NUUklOR19IPSc8c3RyaW5nLmg+ JwpORVhUX0FTX0ZJUlNUX0RJUkVDVElWRV9TWVNfU0VMRUNUX0g9JzxzeXMvc2VsZWN0Lmg+JwpO RVhUX0FTX0ZJUlNUX0RJUkVDVElWRV9TWVNfU1RBVF9IPSc8c3lzL3N0YXQuaD4nCk5FWFRfQVNf RklSU1RfRElSRUNUSVZFX1NZU19USU1FX0g9JzxzeXMvdGltZS5oPicKTkVYVF9BU19GSVJTVF9E SVJFQ1RJVkVfU1lTX1RZUEVTX0g9JzxzeXMvdHlwZXMuaD4nCk5FWFRfQVNfRklSU1RfRElSRUNU SVZFX1RJTUVfSD0nPHRpbWUuaD4nCk5FWFRfQVNfRklSU1RfRElSRUNUSVZFX1VOSVNURF9IPSc8 dW5pc3RkLmg+JwpORVhUX0RJUkVOVF9IPSc8ZGlyZW50Lmg+JwpORVhUX0VSUk5PX0g9JycKTkVY VF9GQ05UTF9IPSc8ZmNudGwuaD4nCk5FWFRfR0VUT1BUX0g9JzxnZXRvcHQuaD4nCk5FWFRfSU5U VFlQRVNfSD0nPGludHR5cGVzLmg+JwpORVhUX1NJR05BTF9IPSc8c2lnbmFsLmg+JwpORVhUX1NU RERFRl9IPScnCk5FWFRfU1RESU5UX0g9JzxzdGRpbnQuaD4nCk5FWFRfU1RESU9fSD0nPHN0ZGlv Lmg+JwpORVhUX1NURExJQl9IPSc8c3RkbGliLmg+JwpORVhUX1NUUklOR19IPSc8c3RyaW5nLmg+ JwpORVhUX1NZU19TRUxFQ1RfSD0nPHN5cy9zZWxlY3QuaD4nCk5FWFRfU1lTX1NUQVRfSD0nPHN5 cy9zdGF0Lmg+JwpORVhUX1NZU19USU1FX0g9JzxzeXMvdGltZS5oPicKTkVYVF9TWVNfVFlQRVNf SD0nPHN5cy90eXBlcy5oPicKTkVYVF9USU1FX0g9Jzx0aW1lLmg+JwpORVhUX1VOSVNURF9IPSc8 dW5pc3RkLmg+JwpOT1RJRllfQ0ZMQUdTPScnCk5PVElGWV9MSUJTPScnCk5PVElGWV9PQko9J2lu b3RpZnkubycKTlNfT0JKPScnCk5TX09CSkNfT0JKPScnCk5URElSPScnCk5UTElCPScnCk9CSkVY VD0nbycKT1RIRVJfRklMRVM9JycKUEFDS0FHRT0nZW1hY3MnClBBQ0tBR0VfQlVHUkVQT1JUPSdi dWctZ251LWVtYWNzQGdudS5vcmcnClBBQ0tBR0VfTkFNRT0nR05VIEVtYWNzJwpQQUNLQUdFX1NU UklORz0nR05VIEVtYWNzIDI1LjEnClBBQ0tBR0VfVEFSTkFNRT0nZW1hY3MnClBBQ0tBR0VfVVJM PSdodHRwOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvJwpQQUNLQUdFX1ZFUlNJT049JzI1 LjEnClBBVEhfU0VQQVJBVE9SPSc6JwpQQVhDVEw9JycKUEFYQ1RMX2R1bXBlZD0nJwpQQVhDVExf bm90ZHVtcGVkPSckKFNFVEZBVFRSKSAtbiB1c2VyLnBheC5mbGFncyAtdiBlcicKUEtHX0NPTkZJ Rz0nL3Vzci9iaW4vcGtnLWNvbmZpZycKUEtHX0NPTkZJR19MSUJESVI9JycKUEtHX0NPTkZJR19Q QVRIPScnClBOR19DRkxBR1M9Jy1JL3Vzci9pbmNsdWRlL2xpYnBuZzE2JwpQT1NUX0FMTE9DX09C Sj0nJwpQUkFHTUFfQ09MVU1OUz0nJwpQUkFHTUFfU1lTVEVNX0hFQURFUj0nI3ByYWdtYSBHQ0Mg c3lzdGVtX2hlYWRlcicKUFJFX0FMTE9DX09CSj0nbGFzdGZpbGUubycKUFJJUFRSX1BSRUZJWD0n X19QUklQVFJfUFJFRklYJwpQUklfTUFDUk9TX0JST0tFTj0nMCcKUFJPRklMSU5HX0NGTEFHUz0n JwpQVEhSRUFEX0hfREVGSU5FU19TVFJVQ1RfVElNRVNQRUM9JzAnClBUUkRJRkZfVF9TVUZGSVg9 JycKUkFMTE9DX09CSj0ncmFsbG9jLm8nClJBTkxJQj0ncmFubGliJwpSRVBMQUNFX0NBTExPQz0n MCcKUkVQTEFDRV9DQU5PTklDQUxJWkVfRklMRV9OQU1FPScwJwpSRVBMQUNFX0NIT1dOPScwJwpS RVBMQUNFX0NMT1NFPScwJwpSRVBMQUNFX0NMT1NFRElSPScwJwpSRVBMQUNFX0RJUkZEPScwJwpS RVBMQUNFX0RQUklOVEY9JzAnClJFUExBQ0VfRFVQMj0nMCcKUkVQTEFDRV9EVVA9JzAnClJFUExB Q0VfRkNIT1dOQVQ9JzAnClJFUExBQ0VfRkNMT1NFPScwJwpSRVBMQUNFX0ZDTlRMPScxJwpSRVBM QUNFX0ZET1BFTj0nMCcKUkVQTEFDRV9GRE9QRU5ESVI9JzAnClJFUExBQ0VfRkZMVVNIPScwJwpS RVBMQUNFX0ZPUEVOPScwJwpSRVBMQUNFX0ZQUklOVEY9JzAnClJFUExBQ0VfRlBVUkdFPScwJwpS RVBMQUNFX0ZSRU9QRU49JzAnClJFUExBQ0VfRlNFRUs9JzAnClJFUExBQ0VfRlNFRUtPPScwJwpS RVBMQUNFX0ZTVEFUPScwJwpSRVBMQUNFX0ZTVEFUQVQ9JzAnClJFUExBQ0VfRlRFTEw9JzAnClJF UExBQ0VfRlRFTExPPScwJwpSRVBMQUNFX0ZUUlVOQ0FURT0nMCcKUkVQTEFDRV9GVVRJTUVOUz0n MCcKUkVQTEFDRV9HRVRDV0Q9JzAnClJFUExBQ0VfR0VUREVMSU09JzAnClJFUExBQ0VfR0VURE9N QUlOTkFNRT0nMCcKUkVQTEFDRV9HRVREVEFCTEVTSVpFPScwJwpSRVBMQUNFX0dFVEdST1VQUz0n MCcKUkVQTEFDRV9HRVRMSU5FPScwJwpSRVBMQUNFX0dFVExPR0lOX1I9JzAnClJFUExBQ0VfR0VU UEFHRVNJWkU9JzAnClJFUExBQ0VfR0VUVElNRU9GREFZPScwJwpSRVBMQUNFX0dNVElNRT0nMCcK UkVQTEFDRV9JU0FUVFk9JzAnClJFUExBQ0VfTENIT1dOPScwJwpSRVBMQUNFX0xJTks9JzAnClJF UExBQ0VfTElOS0FUPScwJwpSRVBMQUNFX0xPQ0FMVElNRT0nMCcKUkVQTEFDRV9MT0NBTFRJTUVf Uj0nMCcKUkVQTEFDRV9MU0VFSz0nMCcKUkVQTEFDRV9MU1RBVD0nMCcKUkVQTEFDRV9NQUxMT0M9 JzAnClJFUExBQ0VfTUJUT1dDPScwJwpSRVBMQUNFX01FTUNIUj0nMCcKUkVQTEFDRV9NRU1NRU09 JzAnClJFUExBQ0VfTUtESVI9JzAnClJFUExBQ0VfTUtGSUZPPScwJwpSRVBMQUNFX01LTk9EPScw JwpSRVBMQUNFX01LU1RFTVA9JzAnClJFUExBQ0VfTUtUSU1FPScwJwpSRVBMQUNFX05BTk9TTEVF UD0nR05VTElCX1BPUlRDSEVDSycKUkVQTEFDRV9OVUxMPScwJwpSRVBMQUNFX09CU1RBQ0tfUFJJ TlRGPScwJwpSRVBMQUNFX09QRU49JzAnClJFUExBQ0VfT1BFTkFUPScwJwpSRVBMQUNFX09QRU5E SVI9JzAnClJFUExBQ0VfUEVSUk9SPScwJwpSRVBMQUNFX1BPUEVOPScwJwpSRVBMQUNFX1BSRUFE PScwJwpSRVBMQUNFX1BSSU5URj0nMCcKUkVQTEFDRV9QU0VMRUNUPScwJwpSRVBMQUNFX1BUSFJF QURfU0lHTUFTSz0nMCcKUkVQTEFDRV9QVFNOQU1FPScwJwpSRVBMQUNFX1BUU05BTUVfUj0nMCcK UkVQTEFDRV9QVVRFTlY9JzAnClJFUExBQ0VfUFdSSVRFPScwJwpSRVBMQUNFX1FTT1JUX1I9JzAn ClJFUExBQ0VfUkFJU0U9JzAnClJFUExBQ0VfUkFORE9NX1I9JzAnClJFUExBQ0VfUkVBRD0nMCcK UkVQTEFDRV9SRUFETElOSz0nMCcKUkVQTEFDRV9SRUFETElOS0FUPScwJwpSRVBMQUNFX1JFQUxM T0M9JzAnClJFUExBQ0VfUkVBTFBBVEg9JzAnClJFUExBQ0VfUkVNT1ZFPScwJwpSRVBMQUNFX1JF TkFNRT0nMCcKUkVQTEFDRV9SRU5BTUVBVD0nMCcKUkVQTEFDRV9STURJUj0nMCcKUkVQTEFDRV9T RUxFQ1Q9JzAnClJFUExBQ0VfU0VURU5WPScwJwpSRVBMQUNFX1NMRUVQPScwJwpSRVBMQUNFX1NO UFJJTlRGPScwJwpSRVBMQUNFX1NQUklOVEY9JzAnClJFUExBQ0VfU1RBVD0nMCcKUkVQTEFDRV9T VERJT19SRUFEX0ZVTkNTPScwJwpSRVBMQUNFX1NURElPX1dSSVRFX0ZVTkNTPScwJwpSRVBMQUNF X1NUUE5DUFk9JzAnClJFUExBQ0VfU1RSQ0FTRVNUUj0nMCcKUkVQTEFDRV9TVFJDSFJOVUw9JzAn ClJFUExBQ0VfU1RSRFVQPScwJwpSRVBMQUNFX1NUUkVSUk9SPScwJwpSRVBMQUNFX1NUUkVSUk9S X1I9JzAnClJFUExBQ0VfU1RSTkNBVD0nMCcKUkVQTEFDRV9TVFJORFVQPScwJwpSRVBMQUNFX1NU Uk5MRU49JzAnClJFUExBQ0VfU1RSU0lHTkFMPScwJwpSRVBMQUNFX1NUUlNUUj0nMCcKUkVQTEFD RV9TVFJUT0Q9JzAnClJFUExBQ0VfU1RSVE9JTUFYPScwJwpSRVBMQUNFX1NUUlRPS19SPScwJwpS RVBMQUNFX1NUUlRPVU1BWD0nMCcKUkVQTEFDRV9TVFJVQ1RfVElNRVZBTD0nMCcKUkVQTEFDRV9T WU1MSU5LPScwJwpSRVBMQUNFX1NZTUxJTktBVD0nMCcKUkVQTEFDRV9USU1FR009JzAnClJFUExB Q0VfVE1QRklMRT0nMCcKUkVQTEFDRV9UVFlOQU1FX1I9JzAnClJFUExBQ0VfVU5MSU5LPScwJwpS RVBMQUNFX1VOTElOS0FUPScwJwpSRVBMQUNFX1VOU0VURU5WPScwJwpSRVBMQUNFX1VTTEVFUD0n MCcKUkVQTEFDRV9VVElNRU5TQVQ9JzAnClJFUExBQ0VfVkFTUFJJTlRGPScwJwpSRVBMQUNFX1ZE UFJJTlRGPScwJwpSRVBMQUNFX1ZGUFJJTlRGPScwJwpSRVBMQUNFX1ZQUklOVEY9JzAnClJFUExB Q0VfVlNOUFJJTlRGPScwJwpSRVBMQUNFX1ZTUFJJTlRGPScwJwpSRVBMQUNFX1dDVE9NQj0nMCcK UkVQTEFDRV9XUklURT0nMCcKUlNWR19DRkxBR1M9Jy1wdGhyZWFkIC1JL3Vzci9pbmNsdWRlL2xp YnJzdmctMi4wIC1JL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1JL3Vzci9pbmNsdWRlL2xp YnBuZzE2IC1JL3Vzci9pbmNsdWRlL2NhaXJvIC1JL3Vzci9pbmNsdWRlL3BpeG1hbi0xIC1JL3Vz ci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9saWJwbmcxNiAtSS91c3IvaW5jbHVk ZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91c3IvbGliL2dsaWItMi4wL2lu Y2x1ZGUgLUkvdXNyL2luY2x1ZGUvZnJlZXR5cGUyIC1JL3Vzci9pbmNsdWRlL2hhcmZidXp6IC1J L3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3Iv aW5jbHVkZS9saWJkcm0gLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYnClJTVkdfTElCUz0nLWxyc3Zn LTIgLWxtIC1sZ2lvLTIuMCAtbGdka19waXhidWYtMi4wIC1sZ29iamVjdC0yLjAgLWxnbGliLTIu MCAtbGNhaXJvJwpTRVBDSEFSPSc6JwpTRVRGQVRUUj0nc2V0ZmF0dHInClNFVFRJTkdTX0NGTEFH Uz0nLXB0aHJlYWQgLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9nbGliLTIuMC9p bmNsdWRlIC1wdGhyZWFkIC1JL3Vzci9pbmNsdWRlL2djb25mLzIgLUkvdXNyL2luY2x1ZGUvZGJ1 cy0xLjAgLUkvdXNyL2xpYi9kYnVzLTEuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2dsaWItMi4w IC1JL3Vzci9saWIvZ2xpYi0yLjAvaW5jbHVkZSAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAtSS91 c3IvbGliL2dsaWItMi4wL2luY2x1ZGUnClNFVFRJTkdTX0xJQlM9Jy1sZ2lvLTIuMCAtbGdvYmpl Y3QtMi4wIC1sZ2xpYi0yLjAgLWxnY29uZi0yIC1sZ2xpYi0yLjAgLWxnb2JqZWN0LTIuMCAtbGds aWItMi4wJwpTRVRfTUFLRT0nJwpTSEVMTD0nL2Jpbi9zaCcKU0lHX0FUT01JQ19UX1NVRkZJWD0n JwpTSVpFX1RfU1VGRklYPScnClNUREFMSUdOX0g9JycKU1REREVGX0g9JycKU1RESU5UX0g9JycK U1RSSVA9JycKU1VCRElSX01BS0VGSUxFU19JTj0nICQoc3JjZGlyKS9saWIvTWFrZWZpbGUuaW4g JChzcmNkaXIpL2xpYi1zcmMvTWFrZWZpbGUuaW4gJChzcmNkaXIpL29sZFhNZW51L01ha2VmaWxl LmluICQoc3JjZGlyKS9kb2MvZW1hY3MvTWFrZWZpbGUuaW4gJChzcmNkaXIpL2RvYy9taXNjL01h a2VmaWxlLmluICQoc3JjZGlyKS9kb2MvbGlzcGludHJvL01ha2VmaWxlLmluICQoc3JjZGlyKS9k b2MvbGlzcHJlZi9NYWtlZmlsZS5pbiAkKHNyY2Rpcikvc3JjL01ha2VmaWxlLmluICQoc3JjZGly KS9sd2xpYi9NYWtlZmlsZS5pbiAkKHNyY2RpcikvbGlzcC9NYWtlZmlsZS5pbiAkKHNyY2Rpcikv bGVpbS9NYWtlZmlsZS5pbiAkKHNyY2RpcikvbmV4dHN0ZXAvTWFrZWZpbGUuaW4gJChzcmNkaXIp L250L01ha2VmaWxlLmluICQoc3JjZGlyKS9hZG1pbi9jaGFyc2V0cy9NYWtlZmlsZS5pbiAkKHNy Y2RpcikvYWRtaW4vdW5pZGF0YS9NYWtlZmlsZS5pbiAkKHNyY2RpcikvYWRtaW4vZ3JhbW1hcnMv TWFrZWZpbGUuaW4nClNZU19USU1FX0hfREVGSU5FU19TVFJVQ1RfVElNRVNQRUM9JzAnClRFUk1D QVBfT0JKPSd0ZXJtaW5mby5vJwpUSU1FX0hfREVGSU5FU19TVFJVQ1RfVElNRVNQRUM9JzEnClRP T0xLSVRfTElCVz0nLWxYYXcnClVJTlQzMl9NQVhfTFRfVUlOVE1BWF9NQVg9JzEnClVJTlQ2NF9N QVhfRVFfVUxPTkdfTUFYPSdkZWZpbmVkIF9MUDY0JwpVTkRFRklORV9TVFJUT0tfUj0nMCcKVU5F WEVDX09CSj0ndW5leGVsZi5vJwpVTklTVERfSF9ERUZJTkVTX1NUUlVDVF9USU1FU1BFQz0nMCcK VU5JU1REX0hfSEFWRV9XSU5TT0NLMl9IPScwJwpVTklTVERfSF9IQVZFX1dJTlNPQ0syX0hfQU5E X1VTRV9TT0NLRVRTPScwJwpVUERBVEVfTUFOSUZFU1Q9JycKVVNFX0FDTD0nMScKVkVSU0lPTj0n MjUuMScKVk1MSU1JVF9PQko9J3ZtLWxpbWl0Lm8nClczMl9MSUJTPScnClczMl9PQko9JycKVzMy X1JFU19MSU5LPScnCldBUk5fQ0ZMQUdTPScnCldDSEFSX1RfU1VGRklYPScnCldFQktJVF9DRkxB R1M9JycKV0VCS0lUX0xJQlM9JycKV0VSUk9SX0NGTEFHUz0nJwpXSURHRVRfT0JKPSd3aWRnZXQu bycKV0lORE9XU182NF9CSVRfT0ZGX1Q9JzAnCldJTkRPV1NfNjRfQklUX1NUX1NJWkU9JzAnCldJ TkRPV19TWVNURU1fT0JKPSdmb250c2V0Lm8gZnJpbmdlLm8gaW1hZ2UubycKV0lORFJFUz0nJwpX SU5UX1RfU1VGRklYPScnClhBUkdTX0xJTUlUPScnClhDQl9MSUJTPSctbFgxMS14Y2IgLWx4Y2In ClhDUlVOPScnClhGSVhFU19DRkxBR1M9JycKWEZJWEVTX0xJQlM9Jy1sWGZpeGVzJwpYRlRfQ0ZM QUdTPSctSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkv dXNyL2luY2x1ZGUvaGFyZmJ1enogLUkvdXNyL2luY2x1ZGUvZ2xpYi0yLjAgLUkvdXNyL2xpYi9n bGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2ZyZWV0eXBlMiAtSS91c3IvaW5jbHVkZS9s aWJwbmcxNiAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9nbGliLTIuMCAt SS91c3IvbGliL2dsaWItMi4wL2luY2x1ZGUnClhGVF9MSUJTPSctbFhyZW5kZXIgLWxYZnQnClhH U0VMT0JKPSd4Z3NlbGVjdC5vJwpYSU5FUkFNQV9DRkxBR1M9JycKWElORVJBTUFfTElCUz0nLWxY aW5lcmFtYScKWE1FTlVfT0JKPSd4bWVudS5vJwpYTUtNRj0nJwpYT0JKPSd4dGVybS5vIHhmbnMu byB4c2VsZWN0Lm8geHJkYi5vIHhzbWZucy5vIHhzZXR0aW5ncy5vJwpYUkFORFJfQ0ZMQUdTPScn ClhSQU5EUl9MSUJTPSctbFhyYW5kcicKWFdJREdFVFNfT0JKPScnClhfVE9PTEtJVF9UWVBFPSdM VUNJRCcKYWNfY3RfQVI9J2FyJwphY19jdF9DQz0nZ2NjJwphbV9fRVhFRVhUX0ZBTFNFPScnCmFt X19FWEVFWFRfVFJVRT0nIycKYW1fX2Zhc3RkZXBDQ19GQUxTRT0nIycKYW1fX2Zhc3RkZXBDQ19U UlVFPScnCmFtX19pbmNsdWRlPSdpbmNsdWRlJwphbV9faXNyYz0nJwphbV9fbGVhZGluZ19kb3Q9 Jy4nCmFtX19ub2RlcD0nX25vJwphbV9fcXVvdGU9JycKYW1fX3Rhcj0nJCR7VEFSLXRhcn0gY2hv ZiAtICIkJHRhcmRpciInCmFtX191bnRhcj0nJCR7VEFSLXRhcn0geGYgLScKYXJjaGxpYmRpcj0n JHtsaWJleGVjZGlyfS9lbWFjcy8ke3ZlcnNpb259LyR7Y29uZmlndXJhdGlvbn0nCmJpbmRpcj0n JHtleGVjX3ByZWZpeH0vYmluJwpiaXRtYXBkaXI9Jy91c3IvaW5jbHVkZS9YMTEvYml0bWFwcycK YnVpbGQ9J3g4Nl82NC11bmtub3duLWxpbnV4LWdudScKYnVpbGRfYWxpYXM9JycKYnVpbGRfY3B1 PSd4ODZfNjQnCmJ1aWxkX29zPSdsaW51eC1nbnUnCmJ1aWxkX3ZlbmRvcj0ndW5rbm93bicKY2Fj aGVfZmlsZT0nL2Rldi9udWxsJwpjYW5vbmljYWw9J3g4Nl82NC11bmtub3duLWxpbnV4LWdudScK Y29tbWFfc3BhY2VfdmVyc2lvbj0nJwpjb21tYV92ZXJzaW9uPScnCmNvbmZpZ3VyYXRpb249J3g4 Nl82NC11bmtub3duLWxpbnV4LWdudScKY29weXJpZ2h0PSdDb3B5cmlnaHQgKEMpIDIwMTYgRnJl ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuJwpkYXRhZGlyPScke2RhdGFyb290ZGlyfScKZGF0 YXJvb3RkaXI9JyR7cHJlZml4fS9zaGFyZScKZG9jZGlyPScke2RhdGFyb290ZGlyfS9kb2MvJHtQ QUNLQUdFX1RBUk5BTUV9JwpkdmlkaXI9JyR7ZG9jZGlyfScKZXRjZGlyPScke2RhdGFkaXJ9L2Vt YWNzLyR7dmVyc2lvbn0vZXRjJwpldGNkb2NkaXI9JyR7ZGF0YWRpcn0vZW1hY3MvJHt2ZXJzaW9u fS9ldGMnCmV4ZWNfcHJlZml4PScke3ByZWZpeH0nCmdhbWVkaXI9JyR7bG9jYWxzdGF0ZWRpcn0v Z2FtZXMvZW1hY3MnCmdhbWVncm91cD0nZ2FtZXMnCmdhbWV1c2VyPScnCmdsX0dOVUxJQl9FTkFC TEVEXzAzZTBhYWFkNGNiODljYTc1NzY1M2JkMzY3YTZjY2I3X0ZBTFNFPScnCmdsX0dOVUxJQl9F TkFCTEVEXzAzZTBhYWFkNGNiODljYTc1NzY1M2JkMzY3YTZjY2I3X1RSVUU9JyMnCmdsX0dOVUxJ Ql9FTkFCTEVEXzI2MDk0MWMwZTVkYzY3ZWM5ZTg3ZDFmYjMyMWMzMDBiX0ZBTFNFPScnCmdsX0dO VUxJQl9FTkFCTEVEXzI2MDk0MWMwZTVkYzY3ZWM5ZTg3ZDFmYjMyMWMzMDBiX1RSVUU9JyMnCmds X0dOVUxJQl9FTkFCTEVEXzUyNjQyOTRhYTBhNTU1NzU0MWI1M2M4Yzc0MWY3ZjMxX0ZBTFNFPScn CmdsX0dOVUxJQl9FTkFCTEVEXzUyNjQyOTRhYTBhNTU1NzU0MWI1M2M4Yzc0MWY3ZjMxX1RSVUU9 JyMnCmdsX0dOVUxJQl9FTkFCTEVEXzYwOTllOTczN2Y3NTdkYjM2YzQ3ZmE5ZDlmMDJlODhjX0ZB TFNFPScnCmdsX0dOVUxJQl9FTkFCTEVEXzYwOTllOTczN2Y3NTdkYjM2YzQ3ZmE5ZDlmMDJlODhj X1RSVUU9JyMnCmdsX0dOVUxJQl9FTkFCTEVEXzY4MmU2MDk2MDRjY2FhYzZiZTM4MmU0ZWUzYTRl YWVjX0ZBTFNFPScnCmdsX0dOVUxJQl9FTkFCTEVEXzY4MmU2MDk2MDRjY2FhYzZiZTM4MmU0ZWUz YTRlYWVjX1RSVUU9JyMnCmdsX0dOVUxJQl9FTkFCTEVEX2E5Nzg2ODUwZTk5OWFlNjVhODM2YTYw NDFlOGU1ZWQxX0ZBTFNFPScnCmdsX0dOVUxJQl9FTkFCTEVEX2E5Nzg2ODUwZTk5OWFlNjVhODM2 YTYwNDFlOGU1ZWQxX1RSVUU9JyMnCmdsX0dOVUxJQl9FTkFCTEVEX2JlNDUzY2VjNWVlY2Y1NzMx YTI3NGYyZGU3ZjJkYjM2X0ZBTFNFPScnCmdsX0dOVUxJQl9FTkFCTEVEX2JlNDUzY2VjNWVlY2Y1 NzMxYTI3NGYyZGU3ZjJkYjM2X1RSVUU9JyMnCmdsX0dOVUxJQl9FTkFCTEVEX2RpcmZkX0ZBTFNF PScnCmdsX0dOVUxJQl9FTkFCTEVEX2RpcmZkX1RSVUU9JyMnCmdsX0dOVUxJQl9FTkFCTEVEX2Rv c25hbWVfRkFMU0U9JycKZ2xfR05VTElCX0VOQUJMRURfZG9zbmFtZV9UUlVFPScjJwpnbF9HTlVM SUJfRU5BQkxFRF9ldWlkYWNjZXNzX0ZBTFNFPScnCmdsX0dOVUxJQl9FTkFCTEVEX2V1aWRhY2Nl c3NfVFJVRT0nIycKZ2xfR05VTElCX0VOQUJMRURfZ2V0ZHRhYmxlc2l6ZV9GQUxTRT0nIycKZ2xf R05VTElCX0VOQUJMRURfZ2V0ZHRhYmxlc2l6ZV9UUlVFPScnCmdsX0dOVUxJQl9FTkFCTEVEX2dl dGdyb3Vwc19GQUxTRT0nJwpnbF9HTlVMSUJfRU5BQkxFRF9nZXRncm91cHNfVFJVRT0nIycKZ2xf R05VTElCX0VOQUJMRURfcGF0aG1heF9GQUxTRT0nJwpnbF9HTlVMSUJfRU5BQkxFRF9wYXRobWF4 X1RSVUU9JyMnCmdsX0dOVUxJQl9FTkFCTEVEX3NlY3VyZV9nZXRlbnZfRkFMU0U9JycKZ2xfR05V TElCX0VOQUJMRURfc2VjdXJlX2dldGVudl9UUlVFPScjJwpnbF9HTlVMSUJfRU5BQkxFRF9zdGF0 X0ZBTFNFPScnCmdsX0dOVUxJQl9FTkFCTEVEX3N0YXRfVFJVRT0nIycKZ2xfR05VTElCX0VOQUJM RURfc3RydG9sbF9GQUxTRT0nJwpnbF9HTlVMSUJfRU5BQkxFRF9zdHJ0b2xsX1RSVUU9JyMnCmds X0dOVUxJQl9FTkFCTEVEX3N0cnRvdWxsX0ZBTFNFPScnCmdsX0dOVUxJQl9FTkFCTEVEX3N0cnRv dWxsX1RSVUU9JyMnCmdsX0dOVUxJQl9FTkFCTEVEX3RlbXBuYW1lX0ZBTFNFPScnCmdsX0dOVUxJ Ql9FTkFCTEVEX3RlbXBuYW1lX1RSVUU9JyMnCmdsX0xJQk9CSlM9JyBmY250bC5vIHNpZzJzdHIu byB0aW1lX3J6Lm8nCmdsX0xUTElCT0JKUz0nIGZjbnRsLmxvIHNpZzJzdHIubG8gdGltZV9yei5s bycKZ2x0ZXN0c19MSUJPQkpTPScnCmdsdGVzdHNfTFRMSUJPQkpTPScnCmdsdGVzdHNfV0lUTkVT Uz0nSU5fRU1BQ1NfR05VTElCX1RFU1RTJwpob3N0PSd4ODZfNjQtdW5rbm93bi1saW51eC1nbnUn Cmhvc3RfYWxpYXM9JycKaG9zdF9jcHU9J3g4Nl82NCcKaG9zdF9vcz0nbGludXgtZ251Jwpob3N0 X3ZlbmRvcj0ndW5rbm93bicKaHRtbGRpcj0nJHtkb2NkaXJ9JwppbmNsdWRlZGlyPScke3ByZWZp eH0vaW5jbHVkZScKaW5mb2Rpcj0nJHtkYXRhcm9vdGRpcn0vaW5mbycKaW5zdGFsbF9zaD0nJHtT SEVMTH0gL2hvbWUvZGVlY2gvRG93bmxvYWRzL2VtYWNzLTI1LjEvYnVpbGQtYXV4L2luc3RhbGwt c2gnCmxpYmRpcj0nJHtleGVjX3ByZWZpeH0vbGliJwpsaWJleGVjZGlyPScke2V4ZWNfcHJlZml4 fS9saWJleGVjJwpsaWJsb2NrZmlsZT0nbm8nCmxpc3BkaXI9JyR7ZGF0YWRpcn0vZW1hY3MvJHt2 ZXJzaW9ufS9saXNwJwpsaXNwcGF0aD0nJHtsb2NhbGxpc3BwYXRofToke3N0YW5kYXJkbGlzcHBh dGh9Jwpsb2NhbGVkaXI9JyR7ZGF0YXJvb3RkaXJ9L2xvY2FsZScKbG9jYWxsaXNwcGF0aD0nJHtk YXRhZGlyfS9lbWFjcy8ke3ZlcnNpb259L3NpdGUtbGlzcDoke2RhdGFkaXJ9L2VtYWNzL3NpdGUt bGlzcCcKbG9jYWxzdGF0ZWRpcj0nJHtwcmVmaXh9L3ZhcicKbWFuZGlyPScke2RhdGFyb290ZGly fS9tYW4nCm1rZGlyX3A9JyQoTUtESVJfUCknCm5zX2FwcGJpbmRpcj0nJwpuc19hcHBkaXI9JycK bnNfYXBwcmVzZGlyPScnCm5zX2FwcHNyYz0nJwpuc19jaGVja19maWxlPScnCm5zX3NlbGZfY29u dGFpbmVkPSdubycKb2xkaW5jbHVkZWRpcj0nL3Vzci9pbmNsdWRlJwpwZGZkaXI9JyR7ZG9jZGly fScKcHJlZml4PScvdXNyL2xvY2FsJwpwcm9ncmFtX3RyYW5zZm9ybV9uYW1lPSdzLHgseCwnCnBz ZGlyPScke2RvY2Rpcn0nCnNiaW5kaXI9JyR7ZXhlY19wcmVmaXh9L3NiaW4nCnNoYXJlZHN0YXRl ZGlyPScke3ByZWZpeH0vY29tJwpzcmNkaXI9Jy4nCnN0YW5kYXJkbGlzcHBhdGg9JyR7bGlzcGRp cn0nCnN5c2NvbmZkaXI9JyR7cHJlZml4fS9ldGMnCnRhcmdldF9hbGlhcz0nJwp2ZXJzaW9uPScy NS4xJwp4X2RlZmF1bHRfc2VhcmNoX3BhdGg9Jy91c3Ivc2hhcmUvWDExLyVMLyVULyVOJUMlUzov dXNyL3NoYXJlL1gxMS8lbC8lVC8lTiVDJVM6L3Vzci9zaGFyZS9YMTEvJVQvJU4lQyVTOi91c3Iv c2hhcmUvWDExLyVMLyVULyVOJVM6L3Vzci9zaGFyZS9YMTEvJWwvJVQvJU4lUzovdXNyL3NoYXJl L1gxMS8lVC8lTiVTOi91c3IvbGliL1gxMS8lTC8lVC8lTiVDJVM6L3Vzci9saWIvWDExLyVsLyVU LyVOJUMlUzovdXNyL2xpYi9YMTEvJVQvJU4lQyVTOi91c3IvbGliL1gxMS8lTC8lVC8lTiVTOi91 c3IvbGliL1gxMS8lbC8lVC8lTiVTOi91c3IvbGliL1gxMS8lVC8lTiVTJwoKIyMgLS0tLS0tLS0t LS0gIyMKIyMgY29uZmRlZnMuaC4gIyMKIyMgLS0tLS0tLS0tLS0gIyMKCi8qIGNvbmZkZWZzLmgg Ki8KI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBFbWFjcyIKI2RlZmluZSBQQUNLQUdFX1RBUk5B TUUgImVtYWNzIgojZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMjUuMSIKI2RlZmluZSBQQUNLQUdF X1NUUklORyAiR05VIEVtYWNzIDI1LjEiCiNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1n bnUtZW1hY3NAZ251Lm9yZyIKI2RlZmluZSBQQUNLQUdFX1VSTCAiaHR0cDovL3d3dy5nbnUub3Jn L3NvZnR3YXJlL2VtYWNzLyIKI2RlZmluZSBQQUNLQUdFICJlbWFjcyIKI2RlZmluZSBWRVJTSU9O ICIyNS4xIgojZGVmaW5lIE1BSUxfVVNFX1BPUCAxCiNkZWZpbmUgSEFWRV9QVVRFTlYgMQojZGVm aW5lIEhBVkVfVFpTRVQgMQojZGVmaW5lIEhBVkVfRkNITU9EIDEKI2RlZmluZSBIQVZFX1JFQURM SU5LQVQgMQojZGVmaW5lIEhBVkVfRkFDQ0VTU0FUIDEKI2RlZmluZSBIQVZFX0ZDTlRMIDEKI2Rl ZmluZSBIQVZFX0ZET1BFTkRJUiAxCiNkZWZpbmUgSEFWRV9GU1RBVEFUIDEKI2RlZmluZSBIQVZF X0ZTWU5DIDEKI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCiNkZWZpbmUgSEFWRV9MU1RBVCAx CiNkZWZpbmUgSEFWRV9NS09TVEVNUCAxCiNkZWZpbmUgSEFWRV9QSVBFMiAxCiNkZWZpbmUgSEFW RV9QU0VMRUNUIDEKI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKI2RlZmluZSBIQVZFX1NUUlRPSU1B WCAxCiNkZWZpbmUgSEFWRV9TVFJUT1VNQVggMQojZGVmaW5lIEhBVkVfU1lNTElOSyAxCiNkZWZp bmUgSEFWRV9MT0NBTFRJTUVfUiAxCiNkZWZpbmUgSEFWRV9USU1FR00gMQojZGVmaW5lIEhBVkVf RlVUSU1FUyAxCiNkZWZpbmUgSEFWRV9GVVRJTUVTQVQgMQojZGVmaW5lIEhBVkVfRlVUSU1FTlMg MQojZGVmaW5lIEhBVkVfVVRJTUVOU0FUIDEKI2RlZmluZSBIQVZFX0xVVElNRVMgMQojZGVmaW5l IEhBVkVfR0VURFRBQkxFU0laRSAxCiNkZWZpbmUgSEFWRV9TRUNVUkVfR0VURU5WIDEKI2RlZmlu ZSBTVERDX0hFQURFUlMgMQojZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQojZGVmaW5lIEhBVkVf U1lTX1NUQVRfSCAxCiNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCiNkZWZpbmUgSEFWRV9TVFJJTkdf SCAxCiNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCiNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQojZGVm aW5lIEhBVkVfSU5UVFlQRVNfSCAxCiNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCiNkZWZpbmUgSEFW RV9VTklTVERfSCAxCiNkZWZpbmUgX19FWFRFTlNJT05TX18gMQojZGVmaW5lIF9BTExfU09VUkNF IDEKI2RlZmluZSBfREFSV0lOX0NfU09VUkNFIDEKI2RlZmluZSBfR05VX1NPVVJDRSAxCiNkZWZp bmUgX19VU0VfTUlOR1dfQU5TSV9TVERJTyAxCiNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5U SUNTIDEKI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxCiNkZWZpbmUgX0RBUldJTl9VU0VfNjRfQklU X0lOT0RFIDEKI2RlZmluZSBTWVNURU1fVFlQRSAiZ251L2xpbnV4IgojZGVmaW5lIEhBVkVfU1lT X1NPVU5EQ0FSRF9IIDEKI2RlZmluZSBIQVZFX0FMU0EgMQojZGVmaW5lIEhBVkVfU09VTkQgMQoj ZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCiNkZWZpbmUgSEFWRV9QVFlfSCAxCiNkZWZpbmUg SEFWRV9TWVNfUkVTT1VSQ0VfSCAxCiNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEKI2RlZmlu ZSBIQVZFX1BXRF9IIDEKI2RlZmluZSBIQVZFX1VUTVBfSCAxCiNkZWZpbmUgSEFWRV9TWVNfU09D S0VUX0ggMQojZGVmaW5lIEhBVkVfU1RETElCX0ggMQojZGVmaW5lIEhBVkVfVU5JU1REX0ggMQoj ZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQojZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEKI2RlZmlu ZSBIQVZFX1NZU19VTl9IIDEKI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKI2RlZmluZSBIQVZFX0VY RUNJTkZPX0ggMQojZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQojZGVmaW5lIEhBVkVfR0VUT1BU X0ggMQojZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCiNkZWZpbmUgSEFWRV9XQ0hBUl9IIDEKI2Rl ZmluZSBIQVZFX1NURElOVF9IIDEKI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQojZGVmaW5lIEhB VkVfU1lTX1NFTEVDVF9IIDEKI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQojZGVmaW5lIEhBVkVf VVRJTUVfSCAxCiNkZWZpbmUgSEFWRV9QRVJTT05BTElUWV9MSU5VWDMyIDEKI2RlZmluZSBIQVZF X0xJTlVYX1NZU0lORk8gMQojZGVmaW5lIExJTlVYX1NZU0lORk9fVU5JVCAxCiNkZWZpbmUgSEFW RV9URVJNX0ggMQojZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCiNkZWZpbmUgSEFWRV9ERUNM X1NZU19TSUdMSVNUIDEKI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQojZGVmaW5lIEhBVkVfTkVU X0lGX0ggMQojZGVmaW5lIEhBVkVfSUZBRERSU19IIDEKI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJF UV9JRlJfRkxBR1MgMQojZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9IV0FERFIgMQojZGVm aW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9ORVRNQVNLIDEKI2RlZmluZSBIQVZFX1NUUlVDVF9J RlJFUV9JRlJfQlJPQURBRERSIDEKI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQUREUiAx CiNkZWZpbmUgSEFWRV9MT05HX0ZJTEVfTkFNRVMgMQojZGVmaW5lIEhBVkVfU1lTX1ZMSU1JVF9I IDEKI2RlZmluZSBIQVZFX0RBVEFfU1RBUlQgMQojZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQoj ZGVmaW5lIEhBVkVfTU1BUCAxCiNkZWZpbmUgSEFWRV9QVEhSRUFEIDEKI2RlZmluZSBIQVZFX1hL QiAxCiNkZWZpbmUgSEFWRV9YUk1TRVREQVRBQkFTRSAxCiNkZWZpbmUgSEFWRV9YU0NSRUVOUkVT T1VSQ0VTVFJJTkcgMQojZGVmaW5lIEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEKI2RlZmlu ZSBIQVZFX1gxMVI2IDEKI2RlZmluZSBIQVZFX1hfSTE4TiAxCiNkZWZpbmUgSEFWRV9YMTFSNl9Y SU0gMQojZGVmaW5lIEhBVkVfUlNWRyAxCiNkZWZpbmUgSEFWRV9JTUFHRU1BR0lDSyAxCiNkZWZp bmUgSEFWRV9NQUdJQ0tFWFBPUlRJTUFHRVBJWEVMUyAxCiNkZWZpbmUgSEFWRV9NQUdJQ0tNRVJH RUlNQUdFTEFZRVJTIDEKI2RlZmluZSBIQVZFX0RCVVMgMQojZGVmaW5lIEhBVkVfREJVU19XQVRD SF9HRVRfVU5JWF9GRCAxCiNkZWZpbmUgSEFWRV9EQlVTX1RZUEVfSVNfVkFMSUQgMQojZGVmaW5l IEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAxCiNkZWZpbmUgSEFWRV9EQlVTX1ZBTElEQVRF X1BBVEggMQojZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9JTlRFUkZBQ0UgMQojZGVmaW5lIEhB VkVfREJVU19WQUxJREFURV9NRU1CRVIgMQojZGVmaW5lIEhBVkVfR1NFVFRJTkdTIDEKI2RlZmlu ZSBIQVZFX0dDT05GIDEKI2RlZmluZSBIQVZFX0dOVVRMUyAxCiNkZWZpbmUgSEFWRV9HTlVUTFMz IDEKI2RlZmluZSBIQVZFX0lOT1RJRlkgMQojZGVmaW5lIFVTRV9GSUxFX05PVElGWSAxCiNkZWZp bmUgSEFWRV9YMTFYVFI2IDEKI2RlZmluZSBVU0VfVE9PTEtJVF9TQ1JPTExfQkFSUyAxCiNkZWZp bmUgSEFWRV9YSU0gMQojZGVmaW5lIFVTRV9YSU0gMQojZGVmaW5lIFhSZWdpc3RlcklNSW5zdGFu dGlhdGVDYWxsYmFja19hcmc2IFhQb2ludGVyCiNkZWZpbmUgSEFWRV9YRlQgMQojZGVmaW5lIEhB VkVfRlJFRVRZUEUgMQojZGVmaW5lIEhBVkVfTElCT1RGIDEKI2RlZmluZSBIQVZFX09URl9HRVRf VkFSSUFUSU9OX0dMWVBIUyAxCiNkZWZpbmUgSEFWRV9NMTdOX0ZMVCAxCiNkZWZpbmUgVVNFX1hD QiAxCiNkZWZpbmUgSEFWRV9YUE0gMQojZGVmaW5lIEhBVkVfSlBFRyAxCiNkZWZpbmUgSEFWRV9a TElCIDEKI2RlZmluZSBIQVZFX1BORyAxCiNkZWZpbmUgSEFWRV9USUZGIDEKI2RlZmluZSBIQVZF X0dJRiAxCiNkZWZpbmUgSEFWRV9HUE0gMQojZGVmaW5lIEhBVkVfWF9TTSAxCiNkZWZpbmUgSEFW RV9YUkFORFIgMQojZGVmaW5lIEhBVkVfWElORVJBTUEgMQojZGVmaW5lIEhBVkVfWEZJWEVTIDEK I2RlZmluZSBIQVZFX0xJQlhNTDIgMQojZGVmaW5lIEhBVkVfSF9FUlJOTyAxCiNkZWZpbmUgTUFJ TF9VU0VfRkxPQ0sgMQojZGVmaW5lIEhBVkVfQUNDRVBUNCAxCiNkZWZpbmUgSEFWRV9GQ0hESVIg MQojZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQojZGVmaW5lIEhBVkVfR0VUUlVTQUdFIDEKI2Rl ZmluZSBIQVZFX0dFVF9DVVJSRU5UX0RJUl9OQU1FIDEKI2RlZmluZSBIQVZFX0xSQU5ENDggMQoj ZGVmaW5lIEhBVkVfUkFORE9NIDEKI2RlZmluZSBIQVZFX1JJTlQgMQojZGVmaW5lIEhBVkVfU0VM RUNUIDEKI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKI2RlZmluZSBIQVZFX1NFVExPQ0FMRSAx CiNkZWZpbmUgSEFWRV9ORVdMT0NBTEUgMQojZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKI2RlZmlu ZSBIQVZFX1NFVFJMSU1JVCAxCiNkZWZpbmUgSEFWRV9TSFVURE9XTiAxCiNkZWZpbmUgSEFWRV9H RVRBRERSSU5GTyAxCiNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQojZGVmaW5lIEhBVkVf U1RSU0lHTkFMIDEKI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCiNkZWZpbmUgSEFWRV9TRU5EVE8g MQojZGVmaW5lIEhBVkVfUkVDVkZST00gMQojZGVmaW5lIEhBVkVfR0VUU09DS05BTUUgMQojZGVm aW5lIEhBVkVfR0VUUEVFUk5BTUUgMQojZGVmaW5lIEhBVkVfR0VUSUZBRERSUyAxCiNkZWZpbmUg SEFWRV9GUkVFSUZBRERSUyAxCiNkZWZpbmUgSEFWRV9HQUlfU1RSRVJST1IgMQojZGVmaW5lIEhB VkVfU1lOQyAxCiNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCiNkZWZpbmUgSEFWRV9FTkRQV0VOVCAx CiNkZWZpbmUgSEFWRV9HRVRHUkVOVCAxCiNkZWZpbmUgSEFWRV9FTkRHUkVOVCAxCiNkZWZpbmUg SEFWRV9DRk1BS0VSQVcgMQojZGVmaW5lIEhBVkVfQ0ZTRVRTUEVFRCAxCiNkZWZpbmUgSEFWRV9D T1BZU0lHTiAxCiNkZWZpbmUgSEFWRV9fX0VYRUNVVEFCTEVfU1RBUlQgMQojZGVmaW5lIEhBVkVf TE9HMiAxCiNkZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9DIDEKI2RlZmluZSBIQVZFX19fQlVJTFRJ Tl9VTldJTkRfSU5JVCAxCiNkZWZpbmUgSEFWRV9GU0VFS08gMQojZGVmaW5lIEhBVkVfR1JBTlRQ VCAxCiNkZWZpbmUgSEFWRV9HRVRQVCAxCiNkZWZpbmUgSEFWRV9QT1NJWF9PUEVOUFQgMQojZGVm aW5lIFRFUk1JTkZPIDEKI2RlZmluZSBIQVZFX1RJTUVSRkQgMQojZGVmaW5lIEhBVkVfUkVTX0lO SVQgMQojZGVmaW5lIEhBVkVfU1RSVUNUX1VOSVBBSVJfVU5JQ09ERSAxCiNkZWZpbmUgSEFWRV9J TkVUX1NPQ0tFVFMgMQojZGVmaW5lIEhBVkVfRk9SSyAxCiNkZWZpbmUgSEFWRV9WRk9SSyAxCiNk ZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKI2RlZmluZSBIQVZFX1dPUktJTkdfRk9SSyAxCiNk ZWZpbmUgSEFWRV9TTlBSSU5URiAxCiNkZWZpbmUgSEFWRV9HTElCIDEKI2RlZmluZSBIQVZFX0xB TkdJTkZPX0NPREVTRVQgMQojZGVmaW5lIEhBVkVfTUJTVEFURV9UIDEKI2RlZmluZSBBTVBFUlNB TkRfRlVMTF9OQU1FIDEKI2RlZmluZSBIQVZFX1BUWVMgMQojZGVmaW5lIEhBVkVfU09DS0VUUyAx CiNkZWZpbmUgTlVMTF9ERVZJQ0UgIi9kZXYvbnVsbCIKI2RlZmluZSBTRVBDSEFSICc6JwojZGVm aW5lIHN1YnByb2Nlc3NlcyAxCiNkZWZpbmUgVVNFUl9GVUxMX05BTUUgcHctPnB3X2dlY29zCiNk ZWZpbmUgRElSRUNUT1JZX1NFUCAnLycKI2RlZmluZSBJU19ERVZJQ0VfU0VQKF9jXykgMAojZGVm aW5lIElTX0RJUkVDVE9SWV9TRVAoX2NfKSAoKF9jXykgPT0gRElSRUNUT1JZX1NFUCkKI2RlZmlu ZSBJU19BTllfU0VQKF9jXykgKElTX0RJUkVDVE9SWV9TRVAgKF9jXykpCiNkZWZpbmUgSEFWRV9Q Uk9DRlMgMQojZGVmaW5lIERFRkFVTFRfU09VTkRfREVWSUNFICIvZGV2L2RzcCIKI2RlZmluZSBJ TlRFUlJVUFRfSU5QVVQgMQojZGVmaW5lIE5BUlJPV1BST1RPIDEKI2RlZmluZSBVTklYOThfUFRZ UyAxCiNkZWZpbmUgUFRZX0lURVJBVElPTiBpbnQgaTsgZm9yIChpID0gMDsgaSA8IDE7IGkrKykK I2RlZmluZSBQVFlfVFRZX05BTUVfU1BSSU5URiB7IGNoYXIgKnB0eW5hbWUgPSAwOyBzaWdzZXRf dCBibG9ja2VkOyBzaWdlbXB0eXNldCAoJmJsb2NrZWQpOyBzaWdhZGRzZXQgKCZibG9ja2VkLCBT SUdDSExEKTsgcHRocmVhZF9zaWdtYXNrIChTSUdfQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKGdy YW50cHQgKGZkKSAhPSAtMSAmJiB1bmxvY2twdCAoZmQpICE9IC0xKSBwdHluYW1lID0gcHRzbmFt ZShmZCk7IHB0aHJlYWRfc2lnbWFzayAoU0lHX1VOQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKCFw dHluYW1lKSB7IGVtYWNzX2Nsb3NlIChmZCk7IHJldHVybiAtMTsgfSBzbnByaW50ZiAocHR5X25h bWUsIFBUWV9OQU1FX1NJWkUsICIlcyIsIHB0eW5hbWUpOyB9CiNkZWZpbmUgUFRZX09QRU4gZG8g eyBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19DTE9FWEVDIHwgT19OT0NUVFkpOyBpZiAo ZmQgPCAwICYmIGVycm5vID09IEVJTlZBTCkgZmQgPSBwb3NpeF9vcGVucHQgKE9fUkRXUiB8IE9f Tk9DVFRZKTsgfSB3aGlsZSAoZmFsc2UpCiNkZWZpbmUgUFRZX05BTUVfU1BSSU5URiAvKiovCiNk ZWZpbmUgU0lHTkFMU19WSUFfQ0hBUkFDVEVSUyAxCiNkZWZpbmUgR0NfU0VUSk1QX1dPUktTIDEK I2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQojZGVmaW5lIEhBVkVfX1NFVEpNUCAxCiNkZWZpbmUg SEFWRV9TSUdTRVRKTVAgMQojZGVmaW5lIEhBVkVfU1RBQ0tfT1ZFUkZMT1dfSEFORExJTkcgMQoj ZGVmaW5lIFVTRyAvKiovCiNkZWZpbmUgR05VX0xJTlVYIC8qKi8KI2RlZmluZSBVU0FCTEVfRklP TlJFQUQgMQojZGVmaW5lIFVTQUJMRV9TSUdJTyAxCiNkZWZpbmUgQ09QWVJJR0hUICJDb3B5cmln aHQgKEMpIDIwMTYgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuIgojZGVmaW5lIFRFUk1f SEVBREVSICJ4dGVybS5oIgojZGVmaW5lIEVNQUNTX0NPTkZJR1VSQVRJT04gIng4Nl82NC11bmtu b3duLWxpbnV4LWdudSIKI2RlZmluZSBFTUFDU19DT05GSUdfT1BUSU9OUyAiLS13aXRoLXgtdG9v bGtpdD1sdWNpZCIKI2RlZmluZSBIQVZFX1hfV0lORE9XUyAxCiNkZWZpbmUgVVNFX1hfVE9PTEtJ VCAxCiNkZWZpbmUgVVNFX0xVQ0lEIDEKI2RlZmluZSBIQVZFX1gxMSAxCiNkZWZpbmUgSEFWRV9T VFJVQ1RfQVRUUklCVVRFX0FMSUdORUQgMQojZGVmaW5lIEdOVV9NQUxMT0MgMQojZGVmaW5lIFJF TF9BTExPQyAxCiNkZWZpbmUgSEFWRV9BTExPQ0FfSCAxCiNkZWZpbmUgSEFWRV9BTExPQ0EgMQoj ZGVmaW5lIEhBVkVfVU5TSUdORURfTE9OR19MT05HX0lOVCAxCiNkZWZpbmUgSEFWRV9DOTlfU1RS VE9MRCAxCiNkZWZpbmUgSEFWRV9FTlZJUk9OX0RFQ0wgMQojZGVmaW5lIEhBVkVfREVDTF9GREFU QVNZTkMgMQojZGVmaW5lIEhBVkVfREVDTF9TVFJNT0RFIDAKI2RlZmluZSBMU1RBVF9GT0xMT1dT X1NMQVNIRURfU1lNTElOSyAxCiNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCiNkZWZpbmUgSEFWRV9H RVRPUFRfTE9OR19PTkxZIDEKI2RlZmluZSBIQVZFX0RFQ0xfR0VURU5WIDEKI2RlZmluZSByZXN0 cmljdCBfX3Jlc3RyaWN0CiNkZWZpbmUgSEFWRV9MT05HX0xPTkdfSU5UIDEKI2RlZmluZSBIQVZF X0RFQ0xfTUVNUkNIUiAxCiNkZWZpbmUgSEFWRV9ERUNMX0FMQVJNIDEKI2RlZmluZSBIQVZFX1NJ R1NFVF9UIDEKI2RlZmluZSBIQVZFX1dDSEFSX1QgMQojZGVmaW5lIEhBVkVfU1RSVUNUX1RNX1RN X1pPTkUgMQojZGVmaW5lIEhBVkVfVE1fWk9ORSAxCiNkZWZpbmUgSEFWRV9UTV9HTVRPRkYgMQoj ZGVmaW5lIEhBVkVfREVDTF9TVFJUT0lNQVggMQojZGVmaW5lIEhBVkVfREVDTF9TVFJUT1VNQVgg MQojZGVmaW5lIEhBVkVfV09SS0lOR19VVElNRVMgMQojZGVmaW5lIEhBVkVfU1RSVUNUX1VUSU1C VUYgMQojZGVmaW5lIEdFVEdST1VQU19UIGdpZF90CiNkZWZpbmUgSEFWRV9ERUNMX0dFVERUQUJM RVNJWkUgMQojZGVmaW5lIEhBVkVfU1lTX0FDTF9IIDEKI2RlZmluZSBIQVZFX0FDTF9HRVRfRklM RSAxCiNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZEIDEKI2RlZmluZSBIQVZFX0FDTF9TRVRfRklMRSAx CiNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZEIDEKI2RlZmluZSBIQVZFX0FDTF9GUkVFIDEKI2RlZmlu ZSBIQVZFX0FDTF9GUk9NX01PREUgMQojZGVmaW5lIEhBVkVfQUNMX0ZST01fVEVYVCAxCiNkZWZp bmUgSEFWRV9BQ0xfREVMRVRFX0RFRl9GSUxFIDEKI2RlZmluZSBIQVZFX0FDTF9FWFRFTkRFRF9G SUxFIDEKI2RlZmluZSBIQVZFX0FDTF9MSUJBQ0xfSCAxCiNkZWZpbmUgSEFWRV9BQ0xfRU5UUklF UyAxCiNkZWZpbmUgSEFWRV9BQ0xfRklSU1RfRU5UUlkgMQojZGVmaW5lIFVTRV9BQ0wgMQojZGVm aW5lIEhBVkVfQUxMT0NBIDEKI2RlZmluZSBIQVZFX0JZVEVTV0FQX0ggMQojZGVmaW5lIEhBVkVf Q0xPQ0tfR0VUVElNRSAxCiNkZWZpbmUgSEFWRV9DTE9DS19TRVRUSU1FIDEKI2RlZmluZSBHTlVM SUJfQ0xPU0VfU1RSRUFNIDEKI2RlZmluZSBIQVZFX0RVUDIgMQojZGVmaW5lIEdOVUxJQl9GQUND RVNTQVQgMQojZGVmaW5lIEhBVkVfREVDTF9GRE9QRU5ESVIgMQojZGVmaW5lIEdOVUxJQl9GRE9Q RU5ESVIgMQojZGVmaW5lIEhBVkVfREVDTF9fX0ZQRU5ESU5HIDEKI2RlZmluZSBHRVRUSU1FT0ZE QVlfVElNRVpPTkUgc3RydWN0IHRpbWV6b25lCiNkZWZpbmUgSEFWRV9NRU1SQ0hSIDEKI2RlZmlu ZSBHTlVMSUJfTUtPU1RFTVAgMQojZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfQVRJTV9UVl9O U0VDIDEKI2RlZmluZSBUWVBFT0ZfU1RSVUNUX1NUQVRfU1RfQVRJTV9JU19TVFJVQ1RfVElNRVNQ RUMgMQojZGVmaW5lIEdOVUxJQl9GU0NBTkYgMQojZGVmaW5lIEdOVUxJQl9TQ0FORiAxCiNkZWZp bmUgSEFWRV9TVFBDUFkgMQojZGVmaW5lIG15X3N0cmZ0aW1lIG5zdHJmdGltZQojZGVmaW5lIEhB VkVfREVDTF9MT0NBTFRJTUVfUiAxCiNkZWZpbmUgSEFWRV9USU1FUl9TRVRUSU1FIDEKI2RlZmlu ZSBIQVZFX0NfVkFSQVJSQVlTIDEKI2RlZmluZSBIQVZFX1dJTkRPV19TWVNURU0gMQojZGVmaW5l IFBPTExfRk9SX0lOUFVUIDEKI2RlZmluZSBFTUFDU19DT05GSUdfRkVBVFVSRVMgIlhQTSBKUEVH IFRJRkYgR0lGIFBORyBSU1ZHIElNQUdFTUFHSUNLIFNPVU5EIEdQTSBEQlVTIEdDT05GIEdTRVRU SU5HUyBOT1RJRlkgQUNMIEdOVVRMUyBMSUJYTUwyIEZSRUVUWVBFIE0xN05fRkxUIExJQk9URiBY RlQgWkxJQiBUT09MS0lUX1NDUk9MTF9CQVJTIExVQ0lEIFgxMSIKCmNvbmZpZ3VyZTogZXhpdCAw Cg== --94eb2c192e7439d169053b1176b2--