From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "Aaron Turner" Newsgroups: gmane.lisp.guile.user Subject: Building shared libs (DLL) under Cygwin (1.8.4) Date: Wed, 30 Apr 2008 13:57:19 -0700 Message-ID: <1ca1c1410804301357y5d9023c5ha5ddedcd17e69666@mail.gmail.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_Part_3463_30806084.1209589039755" X-Trace: ger.gmane.org 1209589515 2940 80.91.229.12 (30 Apr 2008 21:05:15 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 30 Apr 2008 21:05:15 +0000 (UTC) To: guile-user@gnu.org Original-X-From: guile-user-bounces+guile-user=m.gmane.org@gnu.org Wed Apr 30 23:02:57 2008 connect(): Connection refused Return-path: Envelope-to: guile-user@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1JrJNh-0002wW-7a for guile-user@m.gmane.org; Wed, 30 Apr 2008 23:02:31 +0200 Original-Received: from localhost ([127.0.0.1]:46943 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JrJMx-0005Yy-Q3 for guile-user@m.gmane.org; Wed, 30 Apr 2008 16:57:40 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1JrJMk-0005Ya-Gn for guile-user@gnu.org; Wed, 30 Apr 2008 16:57:26 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1JrJMj-0005YP-Vw for guile-user@gnu.org; Wed, 30 Apr 2008 16:57:26 -0400 Original-Received: from [199.232.76.173] (port=54348 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JrJMj-0005YI-Lq for guile-user@gnu.org; Wed, 30 Apr 2008 16:57:25 -0400 Original-Received: from yw-out-1718.google.com ([74.125.46.156]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1JrJMe-0002Jj-Un for guile-user@gnu.org; Wed, 30 Apr 2008 16:57:25 -0400 Original-Received: by yw-out-1718.google.com with SMTP id 5so461155ywm.66 for ; Wed, 30 Apr 2008 13:57:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:to:subject:mime-version:content-type; bh=QrQnPpbPLgXLSLOoYeyAlJWLWoBogyMrOfpyMi8Trsc=; b=jLXopdtfw6Zy2UfEnAnBVd158BY/QtOjAxmXJ+rp7Q1NGoB6PSUIu/41OsLooCpR3dpVm+/WpHHLvtTGrgo24vJAZ1AmWTE78KHFp7CFrav326C3axnIuRgo++XKCq0ShSrMw+WPqBEEyO/f99YmDEPE/jUOS6Jxq4zIX7rYxLA= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:to:subject:mime-version:content-type; b=ptiNAPZS08we9Tf2D2ECYml6ziY7FMtxHjFDZ8Q8KrWb147vP2jYubFjCG+9RIMbp1+qpTVSwKgryjZJWtowdiTvBywncbIgbRGreDL/29Z4ADknec2sN1GLKbJd6bBiCFEQIBM6EO6NTz4KPkgNocjGmwRXPtQc7SNmQIBn1Zo= Original-Received: by 10.150.69.5 with SMTP id r5mr1693370yba.96.1209589039861; Wed, 30 Apr 2008 13:57:19 -0700 (PDT) Original-Received: by 10.150.143.20 with HTTP; Wed, 30 Apr 2008 13:57:19 -0700 (PDT) X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 2) X-BeenThere: guile-user@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: General Guile related discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: guile-user-bounces+guile-user=m.gmane.org@gnu.org Errors-To: guile-user-bounces+guile-user=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.user:6550 Archived-At: ------=_Part_3463_30806084.1209589039755 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline I'm trying to rebuild Guile 1.8.4 under Cygwin (latest stable) because the Cygwin packages seem to have some serious problems (I've been told it was built with the wrong version of gcc). Everything seems ok (configure && make report no errors), but when it's all said and done, all I get is a static library. This causes problems because 'guile-config link' returns the appropriate flags to link dynamically and so I can't build other packages dependent on Guile (like GNU Autogen). I've attached the config.log, but as far as I can tell, there's no indication why this is happening... it even says that shared library will be built. The libguile.la file also confirms that only a static library was built. Any suggestions or hints would be much appreciated! Thanks! -- Aaron Turner http://synfin.net/ http://tcpreplay.synfin.net/ - Pcap editing & replay tools for Unix They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety. -- Benjamin Franklin ------=_Part_3463_30806084.1209589039755 Content-Type: text/x-log; name=guile-config.log Content-Transfer-Encoding: base64 X-Attachment-Id: f_ffoe1fjn0 Content-Disposition: attachment; filename=guile-config.log VGhpcyBmaWxlIGNvbnRhaW5zIGFueSBtZXNzYWdlcyBwcm9kdWNlZCBieSBjb21waWxlcnMgd2hp bGUKcnVubmluZyBjb25maWd1cmUsIHRvIGFpZCBkZWJ1Z2dpbmcgaWYgY29uZmlndXJlIG1ha2Vz IGEgbWlzdGFrZS4KCkl0IHdhcyBjcmVhdGVkIGJ5IGd1aWxlIGNvbmZpZ3VyZSAxLjguNCwgd2hp Y2ggd2FzCmdlbmVyYXRlZCBieSBHTlUgQXV0b2NvbmYgMi42MS4gIEludm9jYXRpb24gY29tbWFu ZCBsaW5lIHdhcwoKICAkIC4vY29uZmlndXJlIC0tZW5hYmxlLXNoYXJlZAoKIyMgLS0tLS0tLS0t ICMjCiMjIFBsYXRmb3JtLiAjIwojIyAtLS0tLS0tLS0gIyMKCmhvc3RuYW1lID0gT0JBTi1YUAp1 bmFtZSAtbSA9IGk2ODYKdW5hbWUgLXIgPSAxLjUuMjUoMC4xNTYvNC8yKQp1bmFtZSAtcyA9IENZ R1dJTl9OVC01LjEKdW5hbWUgLXYgPSAyMDA4LTA0LTE3IDEyOjExCgovdXNyL2Jpbi91bmFtZSAt cCA9IHVua25vd24KL2Jpbi91bmFtZSAtWCAgICAgPSB1bmtub3duCgovYmluL2FyY2ggICAgICAg ICAgICAgID0gaTY4NgovdXNyL2Jpbi9hcmNoIC1rICAgICAgID0gdW5rbm93bgovdXNyL2NvbnZl eC9nZXRzeXNpbmZvID0gdW5rbm93bgovdXNyL2Jpbi9ob3N0aW5mbyAgICAgID0gdW5rbm93bgov YmluL21hY2hpbmUgICAgICAgICAgID0gdW5rbm93bgovdXNyL2Jpbi9vc2xldmVsICAgICAgID0g dW5rbm93bgovYmluL3VuaXZlcnNlICAgICAgICAgID0gdW5rbm93bgoKUEFUSDogL3Vzci9sb2Nh bC9iaW4KUEFUSDogL3Vzci9iaW4KUEFUSDogL2JpbgpQQVRIOiAvdXNyL1gxMVI2L2JpbgpQQVRI OiAvY3lnZHJpdmUvYy9XSU5ET1dTL3N5c3RlbTMyClBBVEg6IC9jeWdkcml2ZS9jL1dJTkRPV1MK UEFUSDogL2N5Z2RyaXZlL2MvV0lORE9XUy9TeXN0ZW0zMi9XYmVtClBBVEg6IC9jeWdkcml2ZS9j L1Byb2dyYW0gRmlsZXMvU3VidmVyc2lvbi9iaW4KCgojIyAtLS0tLS0tLS0tLSAjIwojIyBDb3Jl IHRlc3RzLiAjIwojIyAtLS0tLS0tLS0tLSAjIwoKY29uZmlndXJlOjIxNjg6IGNoZWNraW5nIGZv ciBhIEJTRC1jb21wYXRpYmxlIGluc3RhbGwKY29uZmlndXJlOjIyMjQ6IHJlc3VsdDogL3Vzci9i aW4vaW5zdGFsbCAtYwpjb25maWd1cmU6MjIzNTogY2hlY2tpbmcgd2hldGhlciBidWlsZCBlbnZp cm9ubWVudCBpcyBzYW5lCmNvbmZpZ3VyZToyMjc4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjMw NjogY2hlY2tpbmcgZm9yIGEgdGhyZWFkLXNhZmUgbWtkaXIgLXAKY29uZmlndXJlOjIzNDU6IHJl c3VsdDogL3Vzci9iaW4vbWtkaXIgLXAKY29uZmlndXJlOjIzNTg6IGNoZWNraW5nIGZvciBnYXdr CmNvbmZpZ3VyZToyMzc0OiBmb3VuZCAvdXNyL2Jpbi9nYXdrCmNvbmZpZ3VyZToyMzg1OiByZXN1 bHQ6IGdhd2sKY29uZmlndXJlOjIzOTY6IGNoZWNraW5nIHdoZXRoZXIgbWFrZSBzZXRzICQoTUFL RSkKY29uZmlndXJlOjI0MTc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNjAyOiBjaGVja2luZyB3 aGV0aGVyIHRvIGVuYWJsZSBtYWludGFpbmVyLXNwZWNpZmljIHBvcnRpb25zIG9mIE1ha2VmaWxl cwpjb25maWd1cmU6MjYxMTogcmVzdWx0OiBubwpjb25maWd1cmU6MjY0NjogY2hlY2tpbmcgYnVp bGQgc3lzdGVtIHR5cGUKY29uZmlndXJlOjI2NjQ6IHJlc3VsdDogaTY4Ni1wYy1jeWd3aW4KY29u ZmlndXJlOjI2ODY6IGNoZWNraW5nIGhvc3Qgc3lzdGVtIHR5cGUKY29uZmlndXJlOjI3MDE6IHJl c3VsdDogaTY4Ni1wYy1jeWd3aW4KY29uZmlndXJlOjI3NDQ6IGNoZWNraW5nIGZvciBhIEJTRC1j b21wYXRpYmxlIGluc3RhbGwKY29uZmlndXJlOjI4MDA6IHJlc3VsdDogL3Vzci9iaW4vaW5zdGFs bCAtYwpjb25maWd1cmU6Mjg1OTogY2hlY2tpbmcgZm9yIGdjYwpjb25maWd1cmU6Mjg3NTogZm91 bmQgL3Vzci9iaW4vZ2NjCmNvbmZpZ3VyZToyODg2OiByZXN1bHQ6IGdjYwpjb25maWd1cmU6MzEy NDogY2hlY2tpbmcgZm9yIEMgY29tcGlsZXIgdmVyc2lvbgpjb25maWd1cmU6MzEzMTogZ2NjIC0t dmVyc2lvbiA+JjUKZ2NjIChHQ0MpIDMuNC40IChjeWdtaW5nIHNwZWNpYWwsIGdkYyAwLjEyLCB1 c2luZyBkbWQgMC4xMjUpCkNvcHlyaWdodCAoQykgMjAwNCBGcmVlIFNvZnR3YXJlIEZvdW5kYXRp b24sIEluYy4KVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIHNvdXJjZSBmb3IgY29weWlu ZyBjb25kaXRpb25zLiAgVGhlcmUgaXMgTk8Kd2FycmFudHk7IG5vdCBldmVuIGZvciBNRVJDSEFO VEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuCgpjb25maWd1cmU6 MzEzNDogJD8gPSAwCmNvbmZpZ3VyZTozMTQxOiBnY2MgLXYgPiY1ClJlYWRpbmcgc3BlY3MgZnJv bSAvdXNyL2xpYi9nY2MvaTY4Ni1wYy1jeWd3aW4vMy40LjQvc3BlY3MKQ29uZmlndXJlZCB3aXRo OiAvdXNyL2J1aWxkL3BhY2thZ2Uvb3JpZy90ZXN0LnJlc3Bpbi9nY2MtMy40LjQtMy9jb25maWd1 cmUgLS12ZXJib3NlIC0tcHJlZml4PS91c3IgLS1leGVjLXByZWZpeD0vdXNyIC0tc3lzY29uZmRp cj0vZXRjIC0tbGliZGlyPS91c3IvbGliIC0tbGliZXhlY2Rpcj0vdXNyL2xpYiAtLW1hbmRpcj0v dXNyL3NoYXJlL21hbiAtLWluZm9kaXI9L3Vzci9zaGFyZS9pbmZvIC0tZW5hYmxlLWxhbmd1YWdl cz1jLGFkYSxjKyssZCxmNzcscGFzY2FsLGphdmEsb2JqYyAtLWVuYWJsZS1ubHMgLS13aXRob3V0 LWluY2x1ZGVkLWdldHRleHQgLS1lbmFibGUtdmVyc2lvbi1zcGVjaWZpYy1ydW50aW1lLWxpYnMg LS13aXRob3V0LXggLS1lbmFibGUtbGliZ2NqIC0tZGlzYWJsZS1qYXZhLWF3dCAtLXdpdGgtc3lz dGVtLXpsaWIgLS1lbmFibGUtaW50ZXJwcmV0ZXIgLS1kaXNhYmxlLWxpYmdjai1kZWJ1ZyAtLWVu YWJsZS10aHJlYWRzPXBvc2l4IC0tZW5hYmxlLWphdmEtZ2M9Ym9laG0gLS1kaXNhYmxlLXdpbjMy LXJlZ2lzdHJ5IC0tZW5hYmxlLXNqbGotZXhjZXB0aW9ucyAtLWVuYWJsZS1oYXNoLXN5bmNocm9u aXphdGlvbiAtLWVuYWJsZS1saWJzdGRjeHgtZGVidWcKVGhyZWFkIG1vZGVsOiBwb3NpeApnY2Mg dmVyc2lvbiAzLjQuNCAoY3lnbWluZyBzcGVjaWFsLCBnZGMgMC4xMiwgdXNpbmcgZG1kIDAuMTI1 KQpjb25maWd1cmU6MzE0NDogJD8gPSAwCmNvbmZpZ3VyZTozMTUxOiBnY2MgLVYgPiY1CmdjYzog YC1WJyBvcHRpb24gbXVzdCBoYXZlIGFyZ3VtZW50CmNvbmZpZ3VyZTozMTU0OiAkPyA9IDEKY29u ZmlndXJlOjMxNzc6IGNoZWNraW5nIGZvciBDIGNvbXBpbGVyIGRlZmF1bHQgb3V0cHV0IGZpbGUg bmFtZQpjb25maWd1cmU6MzIwNDogZ2NjICAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6MzIw NzogJD8gPSAwCmNvbmZpZ3VyZTozMjQ1OiByZXN1bHQ6IGEuZXhlCmNvbmZpZ3VyZTozMjYyOiBj aGVja2luZyB3aGV0aGVyIHRoZSBDIGNvbXBpbGVyIHdvcmtzCmNvbmZpZ3VyZTozMjcyOiAuL2Eu ZXhlCmNvbmZpZ3VyZTozMjc1OiAkPyA9IDAKY29uZmlndXJlOjMyOTI6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZTozMjk5OiBjaGVja2luZyB3aGV0aGVyIHdlIGFyZSBjcm9zcyBjb21waWxpbmcKY29u ZmlndXJlOjMzMDE6IHJlc3VsdDogbm8KY29uZmlndXJlOjMzMDQ6IGNoZWNraW5nIGZvciBzdWZm aXggb2YgZXhlY3V0YWJsZXMKY29uZmlndXJlOjMzMTE6IGdjYyAtbyBjb25mdGVzdC5leGUgICAg Y29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZTozMzE0OiAkPyA9IDAKY29uZmlndXJlOjMzMzg6IHJl c3VsdDogLmV4ZQpjb25maWd1cmU6MzM0NDogY2hlY2tpbmcgZm9yIHN1ZmZpeCBvZiBvYmplY3Qg ZmlsZXMKY29uZmlndXJlOjMzNzA6IGdjYyAtYyAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToz MzczOiAkPyA9IDAKY29uZmlndXJlOjMzOTY6IHJlc3VsdDogbwpjb25maWd1cmU6MzQwMDogY2hl Y2tpbmcgd2hldGhlciB3ZSBhcmUgdXNpbmcgdGhlIEdOVSBDIGNvbXBpbGVyCmNvbmZpZ3VyZToz NDI5OiBnY2MgLWMgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzQzNTogJD8gPSAwCmNvbmZp Z3VyZTozNDUyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzQ1NzogY2hlY2tpbmcgd2hldGhlciBn Y2MgYWNjZXB0cyAtZwpjb25maWd1cmU6MzQ4NzogZ2NjIC1jIC1nICBjb25mdGVzdC5jID4mNQpj b25maWd1cmU6MzQ5MzogJD8gPSAwCmNvbmZpZ3VyZTozNTkyOiByZXN1bHQ6IHllcwpjb25maWd1 cmU6MzYwOTogY2hlY2tpbmcgZm9yIGdjYyBvcHRpb24gdG8gYWNjZXB0IElTTyBDODkKY29uZmln dXJlOjM2ODM6IGdjYyAgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzY4OTog JD8gPSAwCmNvbmZpZ3VyZTozNzEyOiByZXN1bHQ6IG5vbmUgbmVlZGVkCmNvbmZpZ3VyZTozNzQx OiBjaGVja2luZyBmb3Igc3R5bGUgb2YgaW5jbHVkZSB1c2VkIGJ5IG1ha2UKY29uZmlndXJlOjM3 Njk6IHJlc3VsdDogR05VCmNvbmZpZ3VyZTozNzk0OiBjaGVja2luZyBkZXBlbmRlbmN5IHN0eWxl IG9mIGdjYwpjb25maWd1cmU6Mzg4NTogcmVzdWx0OiBnY2MzCmNvbmZpZ3VyZTozOTA1OiBjaGVj a2luZyBob3cgdG8gcnVuIHRoZSBDIHByZXByb2Nlc3Nvcgpjb25maWd1cmU6Mzk0NTogZ2NjIC1F ICBjb25mdGVzdC5jCmNvbmZpZ3VyZTozOTUxOiAkPyA9IDAKY29uZmlndXJlOjM5ODI6IGdjYyAt RSAgY29uZnRlc3QuYwpjb25mdGVzdC5jOjg6Mjg6IGFjX25vbmV4aXN0ZW50Lmg6IE5vIHN1Y2gg ZmlsZSBvciBkaXJlY3RvcnkKY29uZmlndXJlOjM5ODg6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxl ZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFN RSAiZ3VpbGUiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImd1aWxlIgp8ICNkZWZpbmUgUEFD S0FHRV9WRVJTSU9OICIxLjguNCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJndWlsZSAxLjgu NCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ3VpbGVAZ251Lm9yZyIKfCAvKiBl bmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPGFjX25vbmV4aXN0ZW50Lmg+CmNvbmZpZ3Vy ZTo0MDIxOiByZXN1bHQ6IGdjYyAtRQpjb25maWd1cmU6NDA1MDogZ2NjIC1FICBjb25mdGVzdC5j CmNvbmZpZ3VyZTo0MDU2OiAkPyA9IDAKY29uZmlndXJlOjQwODc6IGdjYyAtRSAgY29uZnRlc3Qu Ywpjb25mdGVzdC5jOjg6Mjg6IGFjX25vbmV4aXN0ZW50Lmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJl Y3RvcnkKY29uZmlndXJlOjQwOTM6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdh czoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiZ3VpbGUiCnwg I2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImd1aWxlIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9O ICIxLjguNCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJndWlsZSAxLjguNCIKfCAjZGVmaW5l IFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ3VpbGVAZ251Lm9yZyIKfCAvKiBlbmQgY29uZmRlZnMu aC4gICovCnwgI2luY2x1ZGUgPGFjX25vbmV4aXN0ZW50Lmg+CmNvbmZpZ3VyZTo0MTM0OiBjaGVj a2luZyBmb3IgZ2F3awpjb25maWd1cmU6NDE2MTogcmVzdWx0OiBnYXdrCmNvbmZpZ3VyZTo0MTc1 OiBjaGVja2luZyBmb3IgZ3JlcCB0aGF0IGhhbmRsZXMgbG9uZyBsaW5lcyBhbmQgLWUKY29uZmln dXJlOjQyNDk6IHJlc3VsdDogL3Vzci9iaW4vZ3JlcApjb25maWd1cmU6NDI1NDogY2hlY2tpbmcg Zm9yIGVncmVwCmNvbmZpZ3VyZTo0MzMyOiByZXN1bHQ6IC91c3IvYmluL2dyZXAgLUUKY29uZmln dXJlOjQzMzg6IGNoZWNraW5nIGZvciBBSVgKY29uZmlndXJlOjQzNjA6IHJlc3VsdDogbm8KY29u ZmlndXJlOjQzNjY6IGNoZWNraW5nIGZvciBsaWJyYXJ5IGNvbnRhaW5pbmcgc3RyZXJyb3IKY29u ZmlndXJlOjQ0MDc6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1 CmNvbmZpZ3VyZTo0NDEzOiAkPyA9IDAKY29uZmlndXJlOjQ0NDE6IHJlc3VsdDogbm9uZSByZXF1 aXJlZApjb25maWd1cmU6NDQ0OTogY2hlY2tpbmcgZm9yIEFOU0kgQyBoZWFkZXIgZmlsZXMKY29u ZmlndXJlOjQ0Nzk6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo0NDg1 OiAkPyA9IDAKY29uZmlndXJlOjQ1ODQ6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgY29u ZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZTo0NTg3OiAkPyA9IDAKY29uZmlndXJlOjQ1OTM6IC4vY29u ZnRlc3QuZXhlCmNvbmZpZ3VyZTo0NTk2OiAkPyA9IDAKY29uZmlndXJlOjQ2MTM6IHJlc3VsdDog eWVzCmNvbmZpZ3VyZTo0NjM3OiBjaGVja2luZyBmb3Igc3lzL3R5cGVzLmgKY29uZmlndXJlOjQ2 NTg6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo0NjY0OiAkPyA9IDAK Y29uZmlndXJlOjQ2ODA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo0NjM3OiBjaGVja2luZyBmb3Ig c3lzL3N0YXQuaApjb25maWd1cmU6NDY1ODogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUK Y29uZmlndXJlOjQ2NjQ6ICQ/ID0gMApjb25maWd1cmU6NDY4MDogcmVzdWx0OiB5ZXMKY29uZmln dXJlOjQ2Mzc6IGNoZWNraW5nIGZvciBzdGRsaWIuaApjb25maWd1cmU6NDY1ODogZ2NjIC1jIC1n IC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjQ2NjQ6ICQ/ID0gMApjb25maWd1cmU6NDY4 MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjQ2Mzc6IGNoZWNraW5nIGZvciBzdHJpbmcuaApjb25m aWd1cmU6NDY1ODogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjQ2NjQ6 ICQ/ID0gMApjb25maWd1cmU6NDY4MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjQ2Mzc6IGNoZWNr aW5nIGZvciBtZW1vcnkuaApjb25maWd1cmU6NDY1ODogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3Qu YyA+JjUKY29uZmlndXJlOjQ2NjQ6ICQ/ID0gMApjb25maWd1cmU6NDY4MDogcmVzdWx0OiB5ZXMK Y29uZmlndXJlOjQ2Mzc6IGNoZWNraW5nIGZvciBzdHJpbmdzLmgKY29uZmlndXJlOjQ2NTg6IGdj YyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo0NjY0OiAkPyA9IDAKY29uZmln dXJlOjQ2ODA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo0NjM3OiBjaGVja2luZyBmb3IgaW50dHlw ZXMuaApjb25maWd1cmU6NDY1ODogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmln dXJlOjQ2NjQ6ICQ/ID0gMApjb25maWd1cmU6NDY4MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjQ2 Mzc6IGNoZWNraW5nIGZvciBzdGRpbnQuaApjb25maWd1cmU6NDY1ODogZ2NjIC1jIC1nIC1PMiAg Y29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjQ2NjQ6ICQ/ID0gMApjb25maWd1cmU6NDY4MDogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjQ2Mzc6IGNoZWNraW5nIGZvciB1bmlzdGQuaApjb25maWd1cmU6 NDY1ODogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjQ2NjQ6ICQ/ID0g MApjb25maWd1cmU6NDY4MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjQ3MDI6IGNoZWNraW5nIG1p bml4L2NvbmZpZy5oIHVzYWJpbGl0eQpjb25maWd1cmU6NDcxOTogZ2NjIC1jIC1nIC1PMiAgY29u ZnRlc3QuYyA+JjUKY29uZnRlc3QuYzo1MToyNjogbWluaXgvY29uZmlnLmg6IE5vIHN1Y2ggZmls ZSBvciBkaXJlY3RvcnkKY29uZmlndXJlOjQ3MjU6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBw cm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAi Z3VpbGUiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImd1aWxlIgp8ICNkZWZpbmUgUEFDS0FH RV9WRVJTSU9OICIxLjguNCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJndWlsZSAxLjguNCIK fCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ3VpbGVAZ251Lm9yZyIKfCAjZGVmaW5l IFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVf U1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklO R1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRf SCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwg I2luY2x1ZGUgPHN0ZGlvLmg+CnwgI2lmZGVmIEhBVkVfU1lTX1RZUEVTX0gKfCAjIGluY2x1ZGUg PHN5cy90eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NZU19TVEFUX0gKfCAjIGluY2x1 ZGUgPHN5cy9zdGF0Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIFNURENfSEVBREVSUwp8ICMgaW5jbHVk ZSA8c3RkbGliLmg+CnwgIyBpbmNsdWRlIDxzdGRkZWYuaD4KfCAjZWxzZQp8ICMgaWZkZWYgSEFW RV9TVERMSUJfSAp8ICMgIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgZW5kaWYKfCAjZW5kaWYKfCAj aWZkZWYgSEFWRV9TVFJJTkdfSAp8ICMgaWYgIWRlZmluZWQgU1REQ19IRUFERVJTICYmIGRlZmlu ZWQgSEFWRV9NRU1PUllfSAp8ICMgIGluY2x1ZGUgPG1lbW9yeS5oPgp8ICMgZW5kaWYKfCAjIGlu Y2x1ZGUgPHN0cmluZy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR1NfSAp8ICMgaW5j bHVkZSA8c3RyaW5ncy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX0lOVFRZUEVTX0gKfCAjIGlu Y2x1ZGUgPGludHR5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RESU5UX0gKfCAjIGlu Y2x1ZGUgPHN0ZGludC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1VOSVNURF9ICnwgIyBpbmNs dWRlIDx1bmlzdGQuaD4KfCAjZW5kaWYKfCAjaW5jbHVkZSA8bWluaXgvY29uZmlnLmg+CmNvbmZp Z3VyZTo0NzM5OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo0NzQzOiBjaGVja2luZyBtaW5peC9jb25m aWcuaCBwcmVzZW5jZQpjb25maWd1cmU6NDc1ODogZ2NjIC1FICBjb25mdGVzdC5jCmNvbmZ0ZXN0 LmM6MTg6MjY6IG1pbml4L2NvbmZpZy5oOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CmNvbmZp Z3VyZTo0NzY0OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29u ZmRlZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgImd1aWxlIgp8ICNkZWZpbmUgUEFD S0FHRV9UQVJOQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMS44LjQiCnwg I2RlZmluZSBQQUNLQUdFX1NUUklORyAiZ3VpbGUgMS44LjQiCnwgI2RlZmluZSBQQUNLQUdFX0JV R1JFUE9SVCAiYnVnLWd1aWxlQGdudS5vcmciCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNk ZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5l IEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFW RV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9V TklTVERfSCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxtaW5peC9jb25m aWcuaD4KY29uZmlndXJlOjQ3Nzg6IHJlc3VsdDogbm8KY29uZmlndXJlOjQ4MTE6IGNoZWNraW5n IGZvciBtaW5peC9jb25maWcuaApjb25maWd1cmU6NDgxODogcmVzdWx0OiBubwpjb25maWd1cmU6 NDg5NjogY2hlY2tpbmcgZm9yIGdjYwpjb25maWd1cmU6NDkyMzogcmVzdWx0OiBnY2MKY29uZmln dXJlOjUxNjE6IGNoZWNraW5nIGZvciBDIGNvbXBpbGVyIHZlcnNpb24KY29uZmlndXJlOjUxNjg6 IGdjYyAtLXZlcnNpb24gPiY1CmdjYyAoR0NDKSAzLjQuNCAoY3lnbWluZyBzcGVjaWFsLCBnZGMg MC4xMiwgdXNpbmcgZG1kIDAuMTI1KQpDb3B5cmlnaHQgKEMpIDIwMDQgRnJlZSBTb2Z0d2FyZSBG b3VuZGF0aW9uLCBJbmMuClRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBzb3VyY2UgZm9y IGNvcHlpbmcgY29uZGl0aW9ucy4gIFRoZXJlIGlzIE5PCndhcnJhbnR5OyBub3QgZXZlbiBmb3Ig TUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLgoKY29u ZmlndXJlOjUxNzE6ICQ/ID0gMApjb25maWd1cmU6NTE3ODogZ2NjIC12ID4mNQpSZWFkaW5nIHNw ZWNzIGZyb20gL3Vzci9saWIvZ2NjL2k2ODYtcGMtY3lnd2luLzMuNC40L3NwZWNzCkNvbmZpZ3Vy ZWQgd2l0aDogL3Vzci9idWlsZC9wYWNrYWdlL29yaWcvdGVzdC5yZXNwaW4vZ2NjLTMuNC40LTMv Y29uZmlndXJlIC0tdmVyYm9zZSAtLXByZWZpeD0vdXNyIC0tZXhlYy1wcmVmaXg9L3VzciAtLXN5 c2NvbmZkaXI9L2V0YyAtLWxpYmRpcj0vdXNyL2xpYiAtLWxpYmV4ZWNkaXI9L3Vzci9saWIgLS1t YW5kaXI9L3Vzci9zaGFyZS9tYW4gLS1pbmZvZGlyPS91c3Ivc2hhcmUvaW5mbyAtLWVuYWJsZS1s YW5ndWFnZXM9YyxhZGEsYysrLGQsZjc3LHBhc2NhbCxqYXZhLG9iamMgLS1lbmFibGUtbmxzIC0t d2l0aG91dC1pbmNsdWRlZC1nZXR0ZXh0IC0tZW5hYmxlLXZlcnNpb24tc3BlY2lmaWMtcnVudGlt ZS1saWJzIC0td2l0aG91dC14IC0tZW5hYmxlLWxpYmdjaiAtLWRpc2FibGUtamF2YS1hd3QgLS13 aXRoLXN5c3RlbS16bGliIC0tZW5hYmxlLWludGVycHJldGVyIC0tZGlzYWJsZS1saWJnY2otZGVi dWcgLS1lbmFibGUtdGhyZWFkcz1wb3NpeCAtLWVuYWJsZS1qYXZhLWdjPWJvZWhtIC0tZGlzYWJs ZS13aW4zMi1yZWdpc3RyeSAtLWVuYWJsZS1zamxqLWV4Y2VwdGlvbnMgLS1lbmFibGUtaGFzaC1z eW5jaHJvbml6YXRpb24gLS1lbmFibGUtbGlic3RkY3h4LWRlYnVnClRocmVhZCBtb2RlbDogcG9z aXgKZ2NjIHZlcnNpb24gMy40LjQgKGN5Z21pbmcgc3BlY2lhbCwgZ2RjIDAuMTIsIHVzaW5nIGRt ZCAwLjEyNSkKY29uZmlndXJlOjUxODE6ICQ/ID0gMApjb25maWd1cmU6NTE4ODogZ2NjIC1WID4m NQpnY2M6IGAtVicgb3B0aW9uIG11c3QgaGF2ZSBhcmd1bWVudApjb25maWd1cmU6NTE5MTogJD8g PSAxCmNvbmZpZ3VyZTo1MTk0OiBjaGVja2luZyB3aGV0aGVyIHdlIGFyZSB1c2luZyB0aGUgR05V IEMgY29tcGlsZXIKY29uZmlndXJlOjUyNDY6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo1MjUxOiBj aGVja2luZyB3aGV0aGVyIGdjYyBhY2NlcHRzIC1nCmNvbmZpZ3VyZTo1Mzg2OiByZXN1bHQ6IHll cwpjb25maWd1cmU6NTQwMzogY2hlY2tpbmcgZm9yIGdjYyBvcHRpb24gdG8gYWNjZXB0IElTTyBD ODkKY29uZmlndXJlOjU1MDY6IHJlc3VsdDogbm9uZSBuZWVkZWQKY29uZmlndXJlOjU1MjY6IGNo ZWNraW5nIGRlcGVuZGVuY3kgc3R5bGUgb2YgZ2NjCmNvbmZpZ3VyZTo1NjE3OiByZXN1bHQ6IGdj YzMKY29uZmlndXJlOjU2Mzc6IGNoZWNraW5nIHdoZXRoZXIgZ2NjIGFuZCBjYyB1bmRlcnN0YW5k IC1jIGFuZCAtbyB0b2dldGhlcgpjb25maWd1cmU6NTY3MjogZ2NjIC1jIGNvbmZ0ZXN0LmMgLW8g Y29uZnRlc3QyLm8gPiY1CmNvbmZpZ3VyZTo1Njc1OiAkPyA9IDAKY29uZmlndXJlOjU2ODE6IGdj YyAtYyBjb25mdGVzdC5jIC1vIGNvbmZ0ZXN0Mi5vID4mNQpjb25maWd1cmU6NTY4NDogJD8gPSAw CmNvbmZpZ3VyZTo1Njk1OiBjYyAtYyBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6NTY5ODogJD8g PSAwCmNvbmZpZ3VyZTo1NzA2OiBjYyAtYyBjb25mdGVzdC5jIC1vIGNvbmZ0ZXN0Mi5vID4mNQpj b25maWd1cmU6NTcwOTogJD8gPSAwCmNvbmZpZ3VyZTo1NzE1OiBjYyAtYyBjb25mdGVzdC5jIC1v IGNvbmZ0ZXN0Mi5vID4mNQpjb25maWd1cmU6NTcxODogJD8gPSAwCmNvbmZpZ3VyZTo1NzM2OiBy ZXN1bHQ6IHllcwpjb25maWd1cmU6NTgzNzogY2hlY2tpbmcgZm9yIGEgc2VkIHRoYXQgZG9lcyBu b3QgdHJ1bmNhdGUgb3V0cHV0CmNvbmZpZ3VyZTo1ODkzOiByZXN1bHQ6IC91c3IvYmluL3NlZApj b25maWd1cmU6NTkwNzogY2hlY2tpbmcgZm9yIGxkIHVzZWQgYnkgZ2NjCmNvbmZpZ3VyZTo1OTc0 OiByZXN1bHQ6IC91c3IvaTY4Ni1wYy1jeWd3aW4vYmluL2xkLmV4ZQpjb25maWd1cmU6NTk4Mzog Y2hlY2tpbmcgaWYgdGhlIGxpbmtlciAoL3Vzci9pNjg2LXBjLWN5Z3dpbi9iaW4vbGQuZXhlKSBp cyBHTlUgbGQKY29uZmlndXJlOjU5OTg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo2MDAzOiBjaGVj a2luZyBmb3IgL3Vzci9pNjg2LXBjLWN5Z3dpbi9iaW4vbGQuZXhlIG9wdGlvbiB0byByZWxvYWQg b2JqZWN0IGZpbGVzCmNvbmZpZ3VyZTo2MDEwOiByZXN1bHQ6IC1yCmNvbmZpZ3VyZTo2MDI4OiBj aGVja2luZyBmb3IgQlNELWNvbXBhdGlibGUgbm0KY29uZmlndXJlOjYwNzc6IHJlc3VsdDogL3Vz ci9iaW4vbm0gLUIKY29uZmlndXJlOjYwODE6IGNoZWNraW5nIHdoZXRoZXIgbG4gLXMgd29ya3MK Y29uZmlndXJlOjYwODU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo2MDkyOiBjaGVja2luZyBob3cg dG8gcmVjb2duaXplIGRlcGVuZGVudCBsaWJyYXJpZXMKY29uZmlndXJlOjYyNzg6IHJlc3VsdDog ZmlsZV9tYWdpYyBeeDg2IGFyY2hpdmUgaW1wb3J0fF54ODYgRExMCmNvbmZpZ3VyZTo2NTU1OiBj aGVja2luZyBmb3IgZGxsdG9vbApjb25maWd1cmU6NjU3MTogZm91bmQgL3Vzci9iaW4vZGxsdG9v bApjb25maWd1cmU6NjU4MjogcmVzdWx0OiBkbGx0b29sCmNvbmZpZ3VyZTo2NjUxOiBjaGVja2lu ZyBmb3IgYXMKY29uZmlndXJlOjY2Njc6IGZvdW5kIC91c3IvYmluL2FzCmNvbmZpZ3VyZTo2Njc4 OiByZXN1bHQ6IGFzCmNvbmZpZ3VyZTo2NzQ3OiBjaGVja2luZyBmb3Igb2JqZHVtcApjb25maWd1 cmU6Njc2MzogZm91bmQgL3Vzci9iaW4vb2JqZHVtcApjb25maWd1cmU6Njc3NDogcmVzdWx0OiBv YmpkdW1wCmNvbmZpZ3VyZTo2ODIyOiBjaGVja2luZyBkbGZjbi5oIHVzYWJpbGl0eQpjb25maWd1 cmU6NjgzOTogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjY4NDU6ICQ/ ID0gMApjb25maWd1cmU6Njg1OTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjY4NjM6IGNoZWNraW5n IGRsZmNuLmggcHJlc2VuY2UKY29uZmlndXJlOjY4Nzg6IGdjYyAtRSAgY29uZnRlc3QuYwpjb25m aWd1cmU6Njg4NDogJD8gPSAwCmNvbmZpZ3VyZTo2ODk4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6 NjkzMTogY2hlY2tpbmcgZm9yIGRsZmNuLmgKY29uZmlndXJlOjY5Mzk6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZTo3MDEwOiBjaGVja2luZyBmb3IgZysrCmNvbmZpZ3VyZTo3MDI2OiBmb3VuZCAvdXNy L2Jpbi9nKysKY29uZmlndXJlOjcwMzc6IHJlc3VsdDogZysrCmNvbmZpZ3VyZTo3MDY4OiBjaGVj a2luZyBmb3IgQysrIGNvbXBpbGVyIHZlcnNpb24KY29uZmlndXJlOjcwNzU6IGcrKyAtLXZlcnNp b24gPiY1CmcrKyAoR0NDKSAzLjQuNCAoY3lnbWluZyBzcGVjaWFsLCBnZGMgMC4xMiwgdXNpbmcg ZG1kIDAuMTI1KQpDb3B5cmlnaHQgKEMpIDIwMDQgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJ bmMuClRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBzb3VyY2UgZm9yIGNvcHlpbmcgY29u ZGl0aW9ucy4gIFRoZXJlIGlzIE5PCndhcnJhbnR5OyBub3QgZXZlbiBmb3IgTUVSQ0hBTlRBQklM SVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLgoKY29uZmlndXJlOjcwNzg6 ICQ/ID0gMApjb25maWd1cmU6NzA4NTogZysrIC12ID4mNQpSZWFkaW5nIHNwZWNzIGZyb20gL3Vz ci9saWIvZ2NjL2k2ODYtcGMtY3lnd2luLzMuNC40L3NwZWNzCkNvbmZpZ3VyZWQgd2l0aDogL3Vz ci9idWlsZC9wYWNrYWdlL29yaWcvdGVzdC5yZXNwaW4vZ2NjLTMuNC40LTMvY29uZmlndXJlIC0t dmVyYm9zZSAtLXByZWZpeD0vdXNyIC0tZXhlYy1wcmVmaXg9L3VzciAtLXN5c2NvbmZkaXI9L2V0 YyAtLWxpYmRpcj0vdXNyL2xpYiAtLWxpYmV4ZWNkaXI9L3Vzci9saWIgLS1tYW5kaXI9L3Vzci9z aGFyZS9tYW4gLS1pbmZvZGlyPS91c3Ivc2hhcmUvaW5mbyAtLWVuYWJsZS1sYW5ndWFnZXM9Yyxh ZGEsYysrLGQsZjc3LHBhc2NhbCxqYXZhLG9iamMgLS1lbmFibGUtbmxzIC0td2l0aG91dC1pbmNs dWRlZC1nZXR0ZXh0IC0tZW5hYmxlLXZlcnNpb24tc3BlY2lmaWMtcnVudGltZS1saWJzIC0td2l0 aG91dC14IC0tZW5hYmxlLWxpYmdjaiAtLWRpc2FibGUtamF2YS1hd3QgLS13aXRoLXN5c3RlbS16 bGliIC0tZW5hYmxlLWludGVycHJldGVyIC0tZGlzYWJsZS1saWJnY2otZGVidWcgLS1lbmFibGUt dGhyZWFkcz1wb3NpeCAtLWVuYWJsZS1qYXZhLWdjPWJvZWhtIC0tZGlzYWJsZS13aW4zMi1yZWdp c3RyeSAtLWVuYWJsZS1zamxqLWV4Y2VwdGlvbnMgLS1lbmFibGUtaGFzaC1zeW5jaHJvbml6YXRp b24gLS1lbmFibGUtbGlic3RkY3h4LWRlYnVnClRocmVhZCBtb2RlbDogcG9zaXgKZ2NjIHZlcnNp b24gMy40LjQgKGN5Z21pbmcgc3BlY2lhbCwgZ2RjIDAuMTIsIHVzaW5nIGRtZCAwLjEyNSkKY29u ZmlndXJlOjcwODg6ICQ/ID0gMApjb25maWd1cmU6NzA5NTogZysrIC1WID4mNQpnKys6IGAtVicg b3B0aW9uIG11c3QgaGF2ZSBhcmd1bWVudApjb25maWd1cmU6NzA5ODogJD8gPSAxCmNvbmZpZ3Vy ZTo3MTAxOiBjaGVja2luZyB3aGV0aGVyIHdlIGFyZSB1c2luZyB0aGUgR05VIEMrKyBjb21waWxl cgpjb25maWd1cmU6NzEzMDogZysrIC1jICAgY29uZnRlc3QuY3BwID4mNQpjb25maWd1cmU6NzEz NjogJD8gPSAwCmNvbmZpZ3VyZTo3MTUzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6NzE1ODogY2hl Y2tpbmcgd2hldGhlciBnKysgYWNjZXB0cyAtZwpjb25maWd1cmU6NzE4ODogZysrIC1jIC1nICBj b25mdGVzdC5jcHAgPiY1CmNvbmZpZ3VyZTo3MTk0OiAkPyA9IDAKY29uZmlndXJlOjcyOTM6IHJl c3VsdDogeWVzCmNvbmZpZ3VyZTo3MzE4OiBjaGVja2luZyBkZXBlbmRlbmN5IHN0eWxlIG9mIGcr Kwpjb25maWd1cmU6NzQwOTogcmVzdWx0OiBnY2MzCmNvbmZpZ3VyZTo3NDM0OiBjaGVja2luZyBo b3cgdG8gcnVuIHRoZSBDKysgcHJlcHJvY2Vzc29yCmNvbmZpZ3VyZTo3NDcwOiBnKysgLUUgIGNv bmZ0ZXN0LmNwcApjb25maWd1cmU6NzQ3NjogJD8gPSAwCmNvbmZpZ3VyZTo3NTA3OiBnKysgLUUg IGNvbmZ0ZXN0LmNwcApjb25mdGVzdC5jcHA6MTk6Mjg6IGFjX25vbmV4aXN0ZW50Lmg6IE5vIHN1 Y2ggZmlsZSBvciBkaXJlY3RvcnkKY29uZmlndXJlOjc1MTM6ICQ/ID0gMQpjb25maWd1cmU6IGZh aWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAjZGVmaW5lIFBBQ0tBR0Vf TkFNRSAiZ3VpbGUiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImd1aWxlIgp8ICNkZWZpbmUg UEFDS0FHRV9WRVJTSU9OICIxLjguNCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJndWlsZSAx LjguNCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ3VpbGVAZ251Lm9yZyIKfCAj ZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5l IEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZF X1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9T VERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRExGQ05f SCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxhY19ub25leGlzdGVudC5o Pgpjb25maWd1cmU6NzU0NjogcmVzdWx0OiBnKysgLUUKY29uZmlndXJlOjc1NzU6IGcrKyAtRSAg Y29uZnRlc3QuY3BwCmNvbmZpZ3VyZTo3NTgxOiAkPyA9IDAKY29uZmlndXJlOjc2MTI6IGcrKyAt RSAgY29uZnRlc3QuY3BwCmNvbmZ0ZXN0LmNwcDoxOToyODogYWNfbm9uZXhpc3RlbnQuaDogTm8g c3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpjb25maWd1cmU6NzYxODogJD8gPSAxCmNvbmZpZ3VyZTog ZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8ICNkZWZpbmUgUEFDS0FH RV9OQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZ3VpbGUiCnwgI2RlZmlu ZSBQQUNLQUdFX1ZFUlNJT04gIjEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgImd1aWxl IDEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1ndWlsZUBnbnUub3JnIgp8 ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZp bmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhB VkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZF X1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZD Tl9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPGFjX25vbmV4aXN0ZW50 Lmg+CmNvbmZpZ3VyZTo3NzExOiBjaGVja2luZyBmb3IgZzc3CmNvbmZpZ3VyZTo3NzQxOiByZXN1 bHQ6IG5vCmNvbmZpZ3VyZTo3NzExOiBjaGVja2luZyBmb3IgeGxmCmNvbmZpZ3VyZTo3NzQxOiBy ZXN1bHQ6IG5vCmNvbmZpZ3VyZTo3NzExOiBjaGVja2luZyBmb3IgZjc3CmNvbmZpZ3VyZTo3NzQx OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo3NzExOiBjaGVja2luZyBmb3IgZnJ0CmNvbmZpZ3VyZTo3 NzQxOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo3NzExOiBjaGVja2luZyBmb3IgcGdmNzcKY29uZmln dXJlOjc3NDE6IHJlc3VsdDogbm8KY29uZmlndXJlOjc3MTE6IGNoZWNraW5nIGZvciBjZjc3CmNv bmZpZ3VyZTo3NzQxOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo3NzExOiBjaGVja2luZyBmb3IgZm9y dDc3CmNvbmZpZ3VyZTo3NzQxOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo3NzExOiBjaGVja2luZyBm b3IgZmwzMgpjb25maWd1cmU6Nzc0MTogcmVzdWx0OiBubwpjb25maWd1cmU6NzcxMTogY2hlY2tp bmcgZm9yIGFmNzcKY29uZmlndXJlOjc3NDE6IHJlc3VsdDogbm8KY29uZmlndXJlOjc3MTE6IGNo ZWNraW5nIGZvciB4bGY5MApjb25maWd1cmU6Nzc0MTogcmVzdWx0OiBubwpjb25maWd1cmU6Nzcx MTogY2hlY2tpbmcgZm9yIGY5MApjb25maWd1cmU6Nzc0MTogcmVzdWx0OiBubwpjb25maWd1cmU6 NzcxMTogY2hlY2tpbmcgZm9yIHBnZjkwCmNvbmZpZ3VyZTo3NzQxOiByZXN1bHQ6IG5vCmNvbmZp Z3VyZTo3NzExOiBjaGVja2luZyBmb3IgcGdocGYKY29uZmlndXJlOjc3NDE6IHJlc3VsdDogbm8K Y29uZmlndXJlOjc3MTE6IGNoZWNraW5nIGZvciBlcGNmOTAKY29uZmlndXJlOjc3NDE6IHJlc3Vs dDogbm8KY29uZmlndXJlOjc3MTE6IGNoZWNraW5nIGZvciBnZm9ydHJhbgpjb25maWd1cmU6Nzc0 MTogcmVzdWx0OiBubwpjb25maWd1cmU6NzcxMTogY2hlY2tpbmcgZm9yIGc5NQpjb25maWd1cmU6 Nzc0MTogcmVzdWx0OiBubwpjb25maWd1cmU6NzcxMTogY2hlY2tpbmcgZm9yIHhsZjk1CmNvbmZp Z3VyZTo3NzQxOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo3NzExOiBjaGVja2luZyBmb3IgZjk1CmNv bmZpZ3VyZTo3NzQxOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo3NzExOiBjaGVja2luZyBmb3IgZm9y dApjb25maWd1cmU6Nzc0MTogcmVzdWx0OiBubwpjb25maWd1cmU6NzcxMTogY2hlY2tpbmcgZm9y IGlmb3J0CmNvbmZpZ3VyZTo3NzQxOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo3NzExOiBjaGVja2lu ZyBmb3IgaWZjCmNvbmZpZ3VyZTo3NzQxOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo3NzExOiBjaGVj a2luZyBmb3IgZWZjCmNvbmZpZ3VyZTo3NzQxOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo3NzExOiBj aGVja2luZyBmb3IgcGdmOTUKY29uZmlndXJlOjc3NDE6IHJlc3VsdDogbm8KY29uZmlndXJlOjc3 MTE6IGNoZWNraW5nIGZvciBsZjk1CmNvbmZpZ3VyZTo3NzQxOiByZXN1bHQ6IG5vCmNvbmZpZ3Vy ZTo3NzExOiBjaGVja2luZyBmb3IgZnRuCmNvbmZpZ3VyZTo3NzQxOiByZXN1bHQ6IG5vCmNvbmZp Z3VyZTo3NzY4OiBjaGVja2luZyBmb3IgRm9ydHJhbiA3NyBjb21waWxlciB2ZXJzaW9uCmNvbmZp Z3VyZTo3Nzc1OiAgLS12ZXJzaW9uID4mNQouL2NvbmZpZ3VyZTogbGluZSA3Nzc2OiAtLXZlcnNp b246IGNvbW1hbmQgbm90IGZvdW5kCmNvbmZpZ3VyZTo3Nzc4OiAkPyA9IDEyNwpjb25maWd1cmU6 Nzc4NTogIC12ID4mNQouL2NvbmZpZ3VyZTogbGluZSA3Nzg2OiAtdjogY29tbWFuZCBub3QgZm91 bmQKY29uZmlndXJlOjc3ODg6ICQ/ID0gMTI3CmNvbmZpZ3VyZTo3Nzk1OiAgLVYgPiY1Ci4vY29u ZmlndXJlOiBsaW5lIDc3OTY6IC1WOiBjb21tYW5kIG5vdCBmb3VuZApjb25maWd1cmU6Nzc5ODog JD8gPSAxMjcKY29uZmlndXJlOjc4MDY6IGNoZWNraW5nIHdoZXRoZXIgd2UgYXJlIHVzaW5nIHRo ZSBHTlUgRm9ydHJhbiA3NyBjb21waWxlcgpjb25maWd1cmU6NzgyNTogIC1jICBjb25mdGVzdC5G ID4mNQouL2NvbmZpZ3VyZTogbGluZSA3ODI2OiAtYzogY29tbWFuZCBub3QgZm91bmQKY29uZmln dXJlOjc4MzE6ICQ/ID0gMTI3CmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8ICAgICAg IHByb2dyYW0gbWFpbgp8ICNpZm5kZWYgX19HTlVDX18KfCAgICAgICAgY2hva2UgbWUKfCAjZW5k aWYKfCAKfCAgICAgICBlbmQKY29uZmlndXJlOjc4NDg6IHJlc3VsdDogbm8KY29uZmlndXJlOjc4 NTQ6IGNoZWNraW5nIHdoZXRoZXIgIGFjY2VwdHMgLWcKY29uZmlndXJlOjc4NzE6ICAtYyAtZyBj b25mdGVzdC5mID4mNQouL2NvbmZpZ3VyZTogbGluZSA3ODcyOiAtYzogY29tbWFuZCBub3QgZm91 bmQKY29uZmlndXJlOjc4Nzc6ICQ/ID0gMTI3CmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2Fz Ogp8ICAgICAgIHByb2dyYW0gbWFpbgp8IAp8ICAgICAgIGVuZApjb25maWd1cmU6Nzg5MzogcmVz dWx0OiBubwpjb25maWd1cmU6NzkyMjogY2hlY2tpbmcgdGhlIG1heGltdW0gbGVuZ3RoIG9mIGNv bW1hbmQgbGluZSBhcmd1bWVudHMKY29uZmlndXJlOjgwMzQ6IHJlc3VsdDogODE5Mgpjb25maWd1 cmU6ODA0NjogY2hlY2tpbmcgY29tbWFuZCB0byBwYXJzZSAvdXNyL2Jpbi9ubSAtQiBvdXRwdXQg ZnJvbSBnY2Mgb2JqZWN0CmNvbmZpZ3VyZTo4MTUxOiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5j ID4mNQpjb25maWd1cmU6ODE1NDogJD8gPSAwCmNvbmZpZ3VyZTo4MTU4OiAvdXNyL2Jpbi9ubSAt QiBjb25mdGVzdC5vIFx8IHNlZCAtbiAtZSAncy9eLipbIAldXChbQUJDREdJUlNUV11bQUJDREdJ UlNUV10qXClbIAldWyAJXSpcKFtfQS1aYS16XVtfQS1aYS16MC05XSpcKSQvXDEgXDIgXDIvcCcg XD4gY29uZnRlc3Qubm0KY29uZmlndXJlOjgxNjE6ICQ/ID0gMApjYW5ub3QgZmluZCBubV90ZXN0 X3ZhciBpbiBjb25mdGVzdC5ubQpjb25maWd1cmU6ODE1MTogZ2NjIC1jIC1nIC1PMiAgY29uZnRl c3QuYyA+JjUKY29uZmlndXJlOjgxNTQ6ICQ/ID0gMApjb25maWd1cmU6ODE1ODogL3Vzci9iaW4v bm0gLUIgY29uZnRlc3QubyBcfCBzZWQgLW4gLWUgJ3MvXi4qWyAJXVwoW0FCQ0RHSVJTVFddW0FC Q0RHSVJTVFddKlwpWyAJXVsgCV0qX1woW19BLVphLXpdW19BLVphLXowLTldKlwpJC9cMSBfXDIg XDIvcCcgXD4gY29uZnRlc3Qubm0KY29uZmlndXJlOjgxNjE6ICQ/ID0gMApjb25maWd1cmU6ODIx MzogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5jIGNvbmZ0c3RtLm8gPiY1 CmNvbmZpZ3VyZTo4MjE2OiAkPyA9IDAKY29uZmlndXJlOjgyNTQ6IHJlc3VsdDogb2sKY29uZmln dXJlOjgyNTg6IGNoZWNraW5nIGZvciBvYmpkaXIKY29uZmlndXJlOjgyNzM6IHJlc3VsdDogLmxp YnMKY29uZmlndXJlOjgzNjU6IGNoZWNraW5nIGZvciBhcgpjb25maWd1cmU6ODM4MTogZm91bmQg L3Vzci9iaW4vYXIKY29uZmlndXJlOjgzOTI6IHJlc3VsdDogYXIKY29uZmlndXJlOjg0NjE6IGNo ZWNraW5nIGZvciByYW5saWIKY29uZmlndXJlOjg0Nzc6IGZvdW5kIC91c3IvYmluL3JhbmxpYgpj b25maWd1cmU6ODQ4ODogcmVzdWx0OiByYW5saWIKY29uZmlndXJlOjg1NTc6IGNoZWNraW5nIGZv ciBzdHJpcApjb25maWd1cmU6ODU3MzogZm91bmQgL3Vzci9iaW4vc3RyaXAKY29uZmlndXJlOjg1 ODQ6IHJlc3VsdDogc3RyaXAKY29uZmlndXJlOjkxODI6IGNoZWNraW5nIGlmIGdjYyBzdXBwb3J0 cyAtZm5vLXJ0dGkgLWZuby1leGNlcHRpb25zCmNvbmZpZ3VyZTo5MjAwOiBnY2MgLWMgLWcgLU8y ICAtZm5vLXJ0dGkgLWZuby1leGNlcHRpb25zIGNvbmZ0ZXN0LmMgPiY1CmNjMTogd2FybmluZzog Y29tbWFuZCBsaW5lIG9wdGlvbiAiLWZuby1ydHRpIiBpcyB2YWxpZCBmb3IgQysrL09iakMrKyBi dXQgbm90IGZvciBDCmNvbmZpZ3VyZTo5MjA0OiAkPyA9IDAKY29uZmlndXJlOjkyMTc6IHJlc3Vs dDogbm8KY29uZmlndXJlOjkyMzI6IGNoZWNraW5nIGZvciBnY2Mgb3B0aW9uIHRvIHByb2R1Y2Ug UElDCmNvbmZpZ3VyZTo5NDY0OiByZXN1bHQ6IC1ERExMX0VYUE9SVApjb25maWd1cmU6OTQ3Mjog Y2hlY2tpbmcgaWYgZ2NjIFBJQyBmbGFnIC1ERExMX0VYUE9SVCB3b3Jrcwpjb25maWd1cmU6OTQ5 MDogZ2NjIC1jIC1nIC1PMiAgLURETExfRVhQT1JUIC1EUElDIGNvbmZ0ZXN0LmMgPiY1CmNvbmZp Z3VyZTo5NDk0OiAkPyA9IDAKY29uZmlndXJlOjk1MDc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo5 NTM1OiBjaGVja2luZyBpZiBnY2Mgc3RhdGljIGZsYWcgLXN0YXRpYyB3b3Jrcwpjb25maWd1cmU6 OTU2MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjk1NzM6IGNoZWNraW5nIGlmIGdjYyBzdXBwb3J0 cyAtYyAtbyBmaWxlLm8KY29uZmlndXJlOjk1OTQ6IGdjYyAtYyAtZyAtTzIgIC1vIG91dC9jb25m dGVzdDIubyBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6OTU5ODogJD8gPSAwCmNvbmZpZ3VyZTo5 NjIwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6OTY0NjogY2hlY2tpbmcgd2hldGhlciB0aGUgZ2Nj IGxpbmtlciAoL3Vzci9pNjg2LXBjLWN5Z3dpbi9iaW4vbGQuZXhlKSBzdXBwb3J0cyBzaGFyZWQg bGlicmFyaWVzCmNvbmZpZ3VyZToxMDYyNjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEwNjQ3OiBj aGVja2luZyB3aGV0aGVyIC1sYyBzaG91bGQgYmUgZXhwbGljaXRseSBsaW5rZWQgaW4KY29uZmln dXJlOjEwNjUyOiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MTA2NTU6 ICQ/ID0gMApjb25maWd1cmU6MTA2NzA6IGdjYyAtc2hhcmVkIGNvbmZ0ZXN0Lm8gIC12IC1vIC4v Y29uZnRlc3QgLVdsLC0tZW5hYmxlLWF1dG8taW1hZ2UtYmFzZSAtWGxpbmtlciAtLW91dC1pbXBs aWIgLVhsaW5rZXIgY29uZnRlc3QgMlw+XCYxIFx8IGdyZXAgIC1sYyAgXD4vZGV2L251bGwgMlw+ XCYxCmNvbmZpZ3VyZToxMDY3MzogJD8gPSAxCmNvbmZpZ3VyZToxMDY4NTogcmVzdWx0OiB5ZXMK Y29uZmlndXJlOjEwNjkzOiBjaGVja2luZyBkeW5hbWljIGxpbmtlciBjaGFyYWN0ZXJpc3RpY3MK Y29uZmlndXJlOjExMjk1OiByZXN1bHQ6IFdpbjMyIGxkLmV4ZQpjb25maWd1cmU6MTEzMTk6IGNo ZWNraW5nIGhvdyB0byBoYXJkY29kZSBsaWJyYXJ5IHBhdGhzIGludG8gcHJvZ3JhbXMKY29uZmln dXJlOjExMzQ0OiByZXN1bHQ6IGltbWVkaWF0ZQpjb25maWd1cmU6MTEzNTg6IGNoZWNraW5nIHdo ZXRoZXIgc3RyaXBwaW5nIGxpYnJhcmllcyBpcyBwb3NzaWJsZQpjb25maWd1cmU6MTEzNjM6IHJl c3VsdDogeWVzCmNvbmZpZ3VyZToxMTk0NzogY2hlY2tpbmcgd2hldGhlciBhIHByb2dyYW0gY2Fu IGRsb3BlbiBpdHNlbGYKY29uZmlndXJlOjEyMDIxOiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1P MiAgLURIQVZFX0RMRkNOX0ggIC1XbCwtLWV4cG9ydC1keW5hbWljIGNvbmZ0ZXN0LmMgICA+JjUK Y29uZmlndXJlOjEyMDI0OiAkPyA9IDAKY29uZmlndXJlOjEyMDQyOiByZXN1bHQ6IG5vCmNvbmZp Z3VyZToxMjE2NTogY2hlY2tpbmcgaWYgbGlidG9vbCBzdXBwb3J0cyBzaGFyZWQgbGlicmFyaWVz CmNvbmZpZ3VyZToxMjE2NzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEyMTcwOiBjaGVja2luZyB3 aGV0aGVyIHRvIGJ1aWxkIHNoYXJlZCBsaWJyYXJpZXMKY29uZmlndXJlOjEyMTkxOiByZXN1bHQ6 IHllcwpjb25maWd1cmU6MTIxOTQ6IGNoZWNraW5nIHdoZXRoZXIgdG8gYnVpbGQgc3RhdGljIGxp YnJhcmllcwpjb25maWd1cmU6MTIxOTg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMjI5MjogY3Jl YXRpbmcgbGlidG9vbApjb25maWd1cmU6MTI4ODU6IGNoZWNraW5nIGZvciBsZCB1c2VkIGJ5IGcr Kwpjb25maWd1cmU6MTI5NTI6IHJlc3VsdDogL3Vzci9pNjg2LXBjLWN5Z3dpbi9iaW4vbGQuZXhl CmNvbmZpZ3VyZToxMjk2MTogY2hlY2tpbmcgaWYgdGhlIGxpbmtlciAoL3Vzci9pNjg2LXBjLWN5 Z3dpbi9iaW4vbGQuZXhlKSBpcyBHTlUgbGQKY29uZmlndXJlOjEyOTc2OiByZXN1bHQ6IHllcwpj b25maWd1cmU6MTMwMjc6IGNoZWNraW5nIHdoZXRoZXIgdGhlIGcrKyBsaW5rZXIgKC91c3IvaTY4 Ni1wYy1jeWd3aW4vYmluL2xkLmV4ZSkgc3VwcG9ydHMgc2hhcmVkIGxpYnJhcmllcwpjb25maWd1 cmU6MTM5NzM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMzk5MDogZysrIC1jIC1nIC1PMiAgY29u ZnRlc3QuY3BwID4mNQpjb25maWd1cmU6MTM5OTM6ICQ/ID0gMApjb25maWd1cmU6MTQxNDk6IGNo ZWNraW5nIGZvciBnKysgb3B0aW9uIHRvIHByb2R1Y2UgUElDCmNvbmZpZ3VyZToxNDQzMzogcmVz dWx0OiAtRERMTF9FWFBPUlQKY29uZmlndXJlOjE0NDQxOiBjaGVja2luZyBpZiBnKysgUElDIGZs YWcgLURETExfRVhQT1JUIHdvcmtzCmNvbmZpZ3VyZToxNDQ1OTogZysrIC1jIC1nIC1PMiAgLURE TExfRVhQT1JUIC1EUElDIGNvbmZ0ZXN0LmNwcCA+JjUKY29uZmlndXJlOjE0NDYzOiAkPyA9IDAK Y29uZmlndXJlOjE0NDc2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQ1MDQ6IGNoZWNraW5nIGlm IGcrKyBzdGF0aWMgZmxhZyAtc3RhdGljIHdvcmtzCmNvbmZpZ3VyZToxNDUzMjogcmVzdWx0OiB5 ZXMKY29uZmlndXJlOjE0NTQyOiBjaGVja2luZyBpZiBnKysgc3VwcG9ydHMgLWMgLW8gZmlsZS5v CmNvbmZpZ3VyZToxNDU2MzogZysrIC1jIC1nIC1PMiAgLW8gb3V0L2NvbmZ0ZXN0Mi5vIGNvbmZ0 ZXN0LmNwcCA+JjUKY29uZmlndXJlOjE0NTY3OiAkPyA9IDAKY29uZmlndXJlOjE0NTg5OiByZXN1 bHQ6IHllcwpjb25maWd1cmU6MTQ2MTU6IGNoZWNraW5nIHdoZXRoZXIgdGhlIGcrKyBsaW5rZXIg KC91c3IvaTY4Ni1wYy1jeWd3aW4vYmluL2xkLmV4ZSkgc3VwcG9ydHMgc2hhcmVkIGxpYnJhcmll cwpjb25maWd1cmU6MTQ2NDE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDcwODogY2hlY2tpbmcg ZHluYW1pYyBsaW5rZXIgY2hhcmFjdGVyaXN0aWNzCmNvbmZpZ3VyZToxNTI1ODogcmVzdWx0OiBX aW4zMiBsZC5leGUKY29uZmlndXJlOjE1MjgyOiBjaGVja2luZyBob3cgdG8gaGFyZGNvZGUgbGli cmFyeSBwYXRocyBpbnRvIHByb2dyYW1zCmNvbmZpZ3VyZToxNTMwNzogcmVzdWx0OiBpbW1lZGlh dGUKY29uZmlndXJlOjIxNTI5OiBjaGVja2luZyBmb3IgbHRfZGxpbml0IGluIC1sbHRkbApjb25m aWd1cmU6MjE1NjQ6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3QuYyAtbGx0 ZGwgICA+JjUKY29uZmlndXJlOjIxNTcwOiAkPyA9IDAKY29uZmlndXJlOjIxNTg4OiByZXN1bHQ6 IHllcwpjb25maWd1cmU6MjE2MDg6IGNoZWNraW5nIGZvciBtYWtlaW5mbwpjb25maWd1cmU6MjE2 MjQ6IGZvdW5kIC91c3IvYmluL21ha2VpbmZvCmNvbmZpZ3VyZToyMTYzNjogcmVzdWx0OiB5ZXMK Y29uZmlndXJlOjIxNjYwOiBjaGVja2luZyBmb3IgZW1hY3MKY29uZmlndXJlOjIxNjkwOiByZXN1 bHQ6IG5vCmNvbmZpZ3VyZToyMTY2MDogY2hlY2tpbmcgZm9yIHhlbWFjcwpjb25maWd1cmU6MjE2 OTA6IHJlc3VsdDogbm8KY29uZmlndXJlOjIxNzExOiBjaGVja2luZyB3aGVyZSAuZWxjIGZpbGVz IHNob3VsZCBnbwpjb25maWd1cmU6MjE3NDA6IHJlc3VsdDogJHtkYXRhZGlyfS9lbWFjcy9zaXRl LWxpc3AKY29uZmlndXJlOjIxODY4OiBjaGVja2luZyB3aGV0aGVyIHRvIHVzZSBzeXN0ZW0gYW5k IGxpYnJhcnkgIjY0IiBjYWxscwpjb25maWd1cmU6MjE4ODY6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy ZToyMTk4NjogY2hlY2tpbmcgZm9yIF9fdWNfZ2V0X2FyX2JzcCBpbiAtbHVjYQpjb25maWd1cmU6 MjIwMjE6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3QuYyAtbHVjYSAgLWxs dGRsICA+JjUKL3Vzci9saWIvZ2NjL2k2ODYtcGMtY3lnd2luLzMuNC40Ly4uLy4uLy4uLy4uL2k2 ODYtcGMtY3lnd2luL2Jpbi9sZDogY2Fubm90IGZpbmQgLWx1Y2EKY29sbGVjdDI6IGxkIHJldHVy bmVkIDEgZXhpdCBzdGF0dXMKY29uZmlndXJlOjIyMDI3OiAkPyA9IDEKY29uZmlndXJlOiBmYWls ZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05B TUUgImd1aWxlIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJndWlsZSIKfCAjZGVmaW5lIFBB Q0tBR0VfVkVSU0lPTiAiMS44LjQiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiZ3VpbGUgMS44 LjQiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWd1aWxlQGdudS5vcmciCnwgI2Rl ZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBI QVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9T VFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RE SU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0gg MQp8ICNkZWZpbmUgSEFWRV9MSUJMVERMIDEKfCAjZGVmaW5lIFNDTV9XQVJOX0RFUFJFQ0FURURf REVGQVVMVCAic3VtbWFyeSIKfCAjZGVmaW5lIEdVSUxFX1VTRV82NF9DQUxMUyAxCnwgI2RlZmlu ZSBIQVZFX1BPU0lYIDEKfCAjZGVmaW5lIEhBVkVfTkVUV09SS0lORyAxCnwgLyogZW5kIGNvbmZk ZWZzLmguICAqLwp8IAp8IC8qIE92ZXJyaWRlIGFueSBHQ0MgaW50ZXJuYWwgcHJvdG90eXBlIHRv IGF2b2lkIGFuIGVycm9yLgp8ICAgIFVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRo ZSByZXR1cm4gdHlwZSBvZiBhIEdDQwp8ICAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50 IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCnwgI2lmZGVmIF9fY3BsdXNwbHVzCnwg ZXh0ZXJuICJDIgp8ICNlbmRpZgp8IGNoYXIgX191Y19nZXRfYXJfYnNwICgpOwp8IGludAp8IG1h aW4gKCkKfCB7CnwgcmV0dXJuIF9fdWNfZ2V0X2FyX2JzcCAoKTsKfCAgIDsKfCAgIHJldHVybiAw Owp8IH0KY29uZmlndXJlOjIyMDQ1OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToyMjA1NzogY2hlY2tp bmcgZm9yIGFuIEFOU0kgQy1jb25mb3JtaW5nIGNvbnN0CmNvbmZpZ3VyZToyMjEzMjogZ2NjIC1j IC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjIyMTM4OiAkPyA9IDAKY29uZmlndXJl OjIyMTUzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjIxNjU6IGNoZWNraW5nIGZvciB3b3JraW5n IHZvbGF0aWxlCmNvbmZpZ3VyZToyMjE5NDogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUK Y29uZmlndXJlOjIyMjAwOiAkPyA9IDAKY29uZmlndXJlOjIyMjE1OiByZXN1bHQ6IHllcwpjb25m aWd1cmU6MjIyMjY6IGNoZWNraW5nIGZvciBpbmxpbmUKY29uZmlndXJlOjIyMjUyOiBnY2MgLWMg LWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjIyNTg6ICQ/ID0gMApjb25maWd1cmU6 MjIyNzY6IHJlc3VsdDogaW5saW5lCmNvbmZpZ3VyZToyMjMwMTogY2hlY2tpbmcgZm9yIF9fdWNf Z2V0X2FyX2JzcCBpbiAtbHVjYQpjb25maWd1cmU6MjIzNjA6IHJlc3VsdDogbm8KY29uZmlndXJl OjIyMzcyOiBjaGVja2luZyB3aGV0aGVyIGJ5dGUgb3JkZXJpbmcgaXMgYmlnZW5kaWFuCmNvbmZp Z3VyZToyMjQwNTogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjIyNDEx OiAkPyA9IDAKY29uZmlndXJlOjIyNDQzOiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpj b25mdGVzdC5jOiBJbiBmdW5jdGlvbiBgbWFpbic6CmNvbmZ0ZXN0LmM6MzE6IGVycm9yOiBgbm90 JyB1bmRlY2xhcmVkIChmaXJzdCB1c2UgaW4gdGhpcyBmdW5jdGlvbikKY29uZnRlc3QuYzozMTog ZXJyb3I6IChFYWNoIHVuZGVjbGFyZWQgaWRlbnRpZmllciBpcyByZXBvcnRlZCBvbmx5IG9uY2UK Y29uZnRlc3QuYzozMTogZXJyb3I6IGZvciBlYWNoIGZ1bmN0aW9uIGl0IGFwcGVhcnMgaW4uKQpj b25mdGVzdC5jOjMxOiBlcnJvcjogcGFyc2UgZXJyb3IgYmVmb3JlICJiaWciCmNvbmZpZ3VyZToy MjQ0OTogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZz LmguICAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0Vf VEFSTkFNRSAiZ3VpbGUiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjEuOC40Igp8ICNkZWZp bmUgUEFDS0FHRV9TVFJJTkcgImd1aWxlIDEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBP UlQgImJ1Zy1ndWlsZUBnbnUub3JnIgp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5l IEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZF X01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5U VFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1RE X0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEhBVkVfTElCTFRETCAxCnwg I2RlZmluZSBTQ01fV0FSTl9ERVBSRUNBVEVEX0RFRkFVTFQgInN1bW1hcnkiCnwgI2RlZmluZSBH VUlMRV9VU0VfNjRfQ0FMTFMgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWCAxCnwgI2RlZmluZSBIQVZF X05FVFdPUktJTkcgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8c3lzL3R5 cGVzLmg+CnwgI2luY2x1ZGUgPHN5cy9wYXJhbS5oPgp8IAp8IGludAp8IG1haW4gKCkKfCB7Cnwg I2lmIEJZVEVfT1JERVIgIT0gQklHX0VORElBTgp8ICBub3QgYmlnIGVuZGlhbgp8ICNlbmRpZgp8 IAp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MjI1ODk6IHJlc3VsdDogbm8KY29u ZmlndXJlOjIyNjA5OiBjaGVja2luZyBmb3IgY2hhcgpjb25maWd1cmU6MjI2Mzk6IGdjYyAtYyAt ZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyMjY0NTogJD8gPSAwCmNvbmZpZ3VyZToy MjY2MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIyNjY3OiBjaGVja2luZyBzaXplIG9mIGNoYXIK Y29uZmlndXJlOjIyOTY5OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMg LWxsdGRsICA+JjUKY29uZmlndXJlOjIyOTcyOiAkPyA9IDAKY29uZmlndXJlOjIyOTc4OiAuL2Nv bmZ0ZXN0LmV4ZQpjb25maWd1cmU6MjI5ODE6ICQ/ID0gMApjb25maWd1cmU6MjMwMDQ6IHJlc3Vs dDogMQpjb25maWd1cmU6MjMwMTQ6IGNoZWNraW5nIGZvciB1bnNpZ25lZCBjaGFyCmNvbmZpZ3Vy ZToyMzA0NDogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjIzMDUwOiAk PyA9IDAKY29uZmlndXJlOjIzMDY1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjMwNzI6IGNoZWNr aW5nIHNpemUgb2YgdW5zaWduZWQgY2hhcgpjb25maWd1cmU6MjMzNzQ6IGdjYyAtbyBjb25mdGVz dC5leGUgLWcgLU8yICAgY29uZnRlc3QuYyAtbGx0ZGwgID4mNQpjb25maWd1cmU6MjMzNzc6ICQ/ ID0gMApjb25maWd1cmU6MjMzODM6IC4vY29uZnRlc3QuZXhlCmNvbmZpZ3VyZToyMzM4NjogJD8g PSAwCmNvbmZpZ3VyZToyMzQwOTogcmVzdWx0OiAxCmNvbmZpZ3VyZToyMzQxOTogY2hlY2tpbmcg Zm9yIHNob3J0CmNvbmZpZ3VyZToyMzQ0OTogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUK Y29uZmlndXJlOjIzNDU1OiAkPyA9IDAKY29uZmlndXJlOjIzNDcwOiByZXN1bHQ6IHllcwpjb25m aWd1cmU6MjM0Nzc6IGNoZWNraW5nIHNpemUgb2Ygc2hvcnQKY29uZmlndXJlOjIzNzc5OiBnY2Mg LW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxsdGRsICA+JjUKY29uZmlndXJl OjIzNzgyOiAkPyA9IDAKY29uZmlndXJlOjIzNzg4OiAuL2NvbmZ0ZXN0LmV4ZQpjb25maWd1cmU6 MjM3OTE6ICQ/ID0gMApjb25maWd1cmU6MjM4MTQ6IHJlc3VsdDogMgpjb25maWd1cmU6MjM4MjQ6 IGNoZWNraW5nIGZvciB1bnNpZ25lZCBzaG9ydApjb25maWd1cmU6MjM4NTQ6IGdjYyAtYyAtZyAt TzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyMzg2MDogJD8gPSAwCmNvbmZpZ3VyZToyMzg3 NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIzODgyOiBjaGVja2luZyBzaXplIG9mIHVuc2lnbmVk IHNob3J0CmNvbmZpZ3VyZToyNDE4NDogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25m dGVzdC5jIC1sbHRkbCAgPiY1CmNvbmZpZ3VyZToyNDE4NzogJD8gPSAwCmNvbmZpZ3VyZToyNDE5 MzogLi9jb25mdGVzdC5leGUKY29uZmlndXJlOjI0MTk2OiAkPyA9IDAKY29uZmlndXJlOjI0MjE5 OiByZXN1bHQ6IDIKY29uZmlndXJlOjI0MjI5OiBjaGVja2luZyBmb3IgaW50CmNvbmZpZ3VyZToy NDI1OTogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjI0MjY1OiAkPyA9 IDAKY29uZmlndXJlOjI0MjgwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjQyODc6IGNoZWNraW5n IHNpemUgb2YgaW50CmNvbmZpZ3VyZToyNDU4OTogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIg ICBjb25mdGVzdC5jIC1sbHRkbCAgPiY1CmNvbmZpZ3VyZToyNDU5MjogJD8gPSAwCmNvbmZpZ3Vy ZToyNDU5ODogLi9jb25mdGVzdC5leGUKY29uZmlndXJlOjI0NjAxOiAkPyA9IDAKY29uZmlndXJl OjI0NjI0OiByZXN1bHQ6IDQKY29uZmlndXJlOjI0NjM0OiBjaGVja2luZyBmb3IgdW5zaWduZWQg aW50CmNvbmZpZ3VyZToyNDY2NDogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmln dXJlOjI0NjcwOiAkPyA9IDAKY29uZmlndXJlOjI0Njg1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6 MjQ2OTI6IGNoZWNraW5nIHNpemUgb2YgdW5zaWduZWQgaW50CmNvbmZpZ3VyZToyNDk5NDogZ2Nj IC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1sbHRkbCAgPiY1CmNvbmZpZ3Vy ZToyNDk5NzogJD8gPSAwCmNvbmZpZ3VyZToyNTAwMzogLi9jb25mdGVzdC5leGUKY29uZmlndXJl OjI1MDA2OiAkPyA9IDAKY29uZmlndXJlOjI1MDI5OiByZXN1bHQ6IDQKY29uZmlndXJlOjI1MDM5 OiBjaGVja2luZyBmb3IgbG9uZwpjb25maWd1cmU6MjUwNjk6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0 ZXN0LmMgPiY1CmNvbmZpZ3VyZToyNTA3NTogJD8gPSAwCmNvbmZpZ3VyZToyNTA5MDogcmVzdWx0 OiB5ZXMKY29uZmlndXJlOjI1MDk3OiBjaGVja2luZyBzaXplIG9mIGxvbmcKY29uZmlndXJlOjI1 Mzk5OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxsdGRsICA+JjUK Y29uZmlndXJlOjI1NDAyOiAkPyA9IDAKY29uZmlndXJlOjI1NDA4OiAuL2NvbmZ0ZXN0LmV4ZQpj b25maWd1cmU6MjU0MTE6ICQ/ID0gMApjb25maWd1cmU6MjU0MzQ6IHJlc3VsdDogNApjb25maWd1 cmU6MjU0NDQ6IGNoZWNraW5nIGZvciB1bnNpZ25lZCBsb25nCmNvbmZpZ3VyZToyNTQ3NDogZ2Nj IC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjI1NDgwOiAkPyA9IDAKY29uZmln dXJlOjI1NDk1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjU1MDI6IGNoZWNraW5nIHNpemUgb2Yg dW5zaWduZWQgbG9uZwpjb25maWd1cmU6MjU4MDQ6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8y ICAgY29uZnRlc3QuYyAtbGx0ZGwgID4mNQpjb25maWd1cmU6MjU4MDc6ICQ/ID0gMApjb25maWd1 cmU6MjU4MTM6IC4vY29uZnRlc3QuZXhlCmNvbmZpZ3VyZToyNTgxNjogJD8gPSAwCmNvbmZpZ3Vy ZToyNTgzOTogcmVzdWx0OiA0CmNvbmZpZ3VyZToyNTg0OTogY2hlY2tpbmcgZm9yIHNpemVfdApj b25maWd1cmU6MjU4Nzk6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToy NTg4NTogJD8gPSAwCmNvbmZpZ3VyZToyNTkwMDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI1OTA3 OiBjaGVja2luZyBzaXplIG9mIHNpemVfdApjb25maWd1cmU6MjYyMDk6IGdjYyAtbyBjb25mdGVz dC5leGUgLWcgLU8yICAgY29uZnRlc3QuYyAtbGx0ZGwgID4mNQpjb25maWd1cmU6MjYyMTI6ICQ/ ID0gMApjb25maWd1cmU6MjYyMTg6IC4vY29uZnRlc3QuZXhlCmNvbmZpZ3VyZToyNjIyMTogJD8g PSAwCmNvbmZpZ3VyZToyNjI0NDogcmVzdWx0OiA0CmNvbmZpZ3VyZToyNjI1NDogY2hlY2tpbmcg Zm9yIGxvbmcgbG9uZwpjb25maWd1cmU6MjYyODQ6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMg PiY1CmNvbmZpZ3VyZToyNjI5MDogJD8gPSAwCmNvbmZpZ3VyZToyNjMwNTogcmVzdWx0OiB5ZXMK Y29uZmlndXJlOjI2MzEyOiBjaGVja2luZyBzaXplIG9mIGxvbmcgbG9uZwpjb25maWd1cmU6MjY2 MTQ6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3QuYyAtbGx0ZGwgID4mNQpj b25maWd1cmU6MjY2MTc6ICQ/ID0gMApjb25maWd1cmU6MjY2MjM6IC4vY29uZnRlc3QuZXhlCmNv bmZpZ3VyZToyNjYyNjogJD8gPSAwCmNvbmZpZ3VyZToyNjY0OTogcmVzdWx0OiA4CmNvbmZpZ3Vy ZToyNjY1OTogY2hlY2tpbmcgZm9yIHVuc2lnbmVkIGxvbmcgbG9uZwpjb25maWd1cmU6MjY2ODk6 IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyNjY5NTogJD8gPSAwCmNv bmZpZ3VyZToyNjcxMDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI2NzE3OiBjaGVja2luZyBzaXpl IG9mIHVuc2lnbmVkIGxvbmcgbG9uZwpjb25maWd1cmU6MjcwMTk6IGdjYyAtbyBjb25mdGVzdC5l eGUgLWcgLU8yICAgY29uZnRlc3QuYyAtbGx0ZGwgID4mNQpjb25maWd1cmU6MjcwMjI6ICQ/ID0g MApjb25maWd1cmU6MjcwMjg6IC4vY29uZnRlc3QuZXhlCmNvbmZpZ3VyZToyNzAzMTogJD8gPSAw CmNvbmZpZ3VyZToyNzA1NDogcmVzdWx0OiA4CmNvbmZpZ3VyZToyNzA2NDogY2hlY2tpbmcgZm9y IF9faW50NjQKY29uZmlndXJlOjI3MDk0OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpj b25mdGVzdC5jOjY4OiBlcnJvcjogcGFyc2UgZXJyb3IgYmVmb3JlICJhY19fdHlwZV9uZXdfIgpj b25mdGVzdC5jOjY4OiB3YXJuaW5nOiBkYXRhIGRlZmluaXRpb24gaGFzIG5vIHR5cGUgb3Igc3Rv cmFnZSBjbGFzcwpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiBgbWFpbic6CmNvbmZ0ZXN0LmM6NzI6 IGVycm9yOiBwYXJzZSBlcnJvciBiZWZvcmUgJyknIHRva2VuCmNvbmZpZ3VyZToyNzEwMDogJD8g PSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8 ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAi Z3VpbGUiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjEuOC40Igp8ICNkZWZpbmUgUEFDS0FH RV9TVFJJTkcgImd1aWxlIDEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1n dWlsZUBnbnUub3JnIgp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RE TElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9I IDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAx CnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNk ZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEhBVkVfTElCTFRETCAxCnwgI2RlZmluZSBT Q01fV0FSTl9ERVBSRUNBVEVEX0RFRkFVTFQgInN1bW1hcnkiCnwgI2RlZmluZSBHVUlMRV9VU0Vf NjRfQ0FMTFMgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWCAxCnwgI2RlZmluZSBIQVZFX05FVFdPUktJ TkcgMQp8ICNkZWZpbmUgU0laRU9GX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0NI QVIgMQp8ICNkZWZpbmUgU0laRU9GX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9T SE9SVCAyCnwgI2RlZmluZSBTSVpFT0ZfSU5UIDQKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9J TlQgNAp8ICNkZWZpbmUgU0laRU9GX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xP TkcgNAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9OR19MT05H IDgKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9MT05HX0xPTkcgOAp8IC8qIGVuZCBjb25mZGVm cy5oLiAgKi8KfCAjaW5jbHVkZSA8c3RkaW8uaD4KfCAjaWZkZWYgSEFWRV9TWVNfVFlQRVNfSAp8 ICMgaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1lTX1NUQVRf SAp8ICMgaW5jbHVkZSA8c3lzL3N0YXQuaD4KfCAjZW5kaWYKfCAjaWZkZWYgU1REQ19IRUFERVJT CnwgIyBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjIGluY2x1ZGUgPHN0ZGRlZi5oPgp8ICNlbHNlCnwg IyBpZmRlZiBIQVZFX1NURExJQl9ICnwgIyAgaW5jbHVkZSA8c3RkbGliLmg+CnwgIyBlbmRpZgp8 ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR19ICnwgIyBpZiAhZGVmaW5lZCBTVERDX0hFQURF UlMgJiYgZGVmaW5lZCBIQVZFX01FTU9SWV9ICnwgIyAgaW5jbHVkZSA8bWVtb3J5Lmg+CnwgIyBl bmRpZgp8ICMgaW5jbHVkZSA8c3RyaW5nLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RSSU5H U19ICnwgIyBpbmNsdWRlIDxzdHJpbmdzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfSU5UVFlQ RVNfSAp8ICMgaW5jbHVkZSA8aW50dHlwZXMuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVERJ TlRfSAp8ICMgaW5jbHVkZSA8c3RkaW50Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfVU5JU1RE X0gKfCAjIGluY2x1ZGUgPHVuaXN0ZC5oPgp8ICNlbmRpZgp8IHR5cGVkZWYgX19pbnQ2NCBhY19f dHlwZV9uZXdfOwp8IGludAp8IG1haW4gKCkKfCB7CnwgaWYgKChhY19fdHlwZV9uZXdfICopIDAp CnwgICByZXR1cm4gMDsKfCBpZiAoc2l6ZW9mIChhY19fdHlwZV9uZXdfKSkKfCAgIHJldHVybiAw Owp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MjcxMTU6IHJlc3VsdDogbm8KY29u ZmlndXJlOjI3MTIyOiBjaGVja2luZyBzaXplIG9mIF9faW50NjQKY29uZmlndXJlOjI3NDI0OiBn Y2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxsdGRsICA+JjUKY29uZnRl c3QuYzo2ODogZXJyb3I6IHBhcnNlIGVycm9yIGJlZm9yZSAiYWNfX3R5cGVfc2l6ZW9mXyIKY29u ZnRlc3QuYzo2ODogd2FybmluZzogZGF0YSBkZWZpbml0aW9uIGhhcyBubyB0eXBlIG9yIHN0b3Jh Z2UgY2xhc3MKY29uZmlndXJlOjI3NDI3OiAkPyA9IDEKY29uZmlndXJlOiBwcm9ncmFtIGV4aXRl ZCB3aXRoIHN0YXR1cyAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZk ZWZzLmguICAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tB R0VfVEFSTkFNRSAiZ3VpbGUiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjEuOC40Igp8ICNk ZWZpbmUgUEFDS0FHRV9TVFJJTkcgImd1aWxlIDEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9CVUdS RVBPUlQgImJ1Zy1ndWlsZUBnbnUub3JnIgp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVm aW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBI QVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVf SU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5J U1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEhBVkVfTElCTFRETCAx CnwgI2RlZmluZSBTQ01fV0FSTl9ERVBSRUNBVEVEX0RFRkFVTFQgInN1bW1hcnkiCnwgI2RlZmlu ZSBHVUlMRV9VU0VfNjRfQ0FMTFMgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWCAxCnwgI2RlZmluZSBI QVZFX05FVFdPUktJTkcgMQp8ICNkZWZpbmUgU0laRU9GX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9G X1VOU0lHTkVEX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVP Rl9VTlNJR05FRF9TSE9SVCAyCnwgI2RlZmluZSBTSVpFT0ZfSU5UIDQKfCAjZGVmaW5lIFNJWkVP Rl9VTlNJR05FRF9JTlQgNAp8ICNkZWZpbmUgU0laRU9GX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9G X1VOU0lHTkVEX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpF T0ZfTE9OR19MT05HIDgKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9MT05HX0xPTkcgOAp8IC8q IGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8c3RkaW8uaD4KfCAjaWZkZWYgSEFWRV9T WVNfVFlQRVNfSAp8ICMgaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhB VkVfU1lTX1NUQVRfSAp8ICMgaW5jbHVkZSA8c3lzL3N0YXQuaD4KfCAjZW5kaWYKfCAjaWZkZWYg U1REQ19IRUFERVJTCnwgIyBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjIGluY2x1ZGUgPHN0ZGRlZi5o Pgp8ICNlbHNlCnwgIyBpZmRlZiBIQVZFX1NURExJQl9ICnwgIyAgaW5jbHVkZSA8c3RkbGliLmg+ CnwgIyBlbmRpZgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR19ICnwgIyBpZiAhZGVmaW5l ZCBTVERDX0hFQURFUlMgJiYgZGVmaW5lZCBIQVZFX01FTU9SWV9ICnwgIyAgaW5jbHVkZSA8bWVt b3J5Lmg+CnwgIyBlbmRpZgp8ICMgaW5jbHVkZSA8c3RyaW5nLmg+CnwgI2VuZGlmCnwgI2lmZGVm IEhBVkVfU1RSSU5HU19ICnwgIyBpbmNsdWRlIDxzdHJpbmdzLmg+CnwgI2VuZGlmCnwgI2lmZGVm IEhBVkVfSU5UVFlQRVNfSAp8ICMgaW5jbHVkZSA8aW50dHlwZXMuaD4KfCAjZW5kaWYKfCAjaWZk ZWYgSEFWRV9TVERJTlRfSAp8ICMgaW5jbHVkZSA8c3RkaW50Lmg+CnwgI2VuZGlmCnwgI2lmZGVm IEhBVkVfVU5JU1REX0gKfCAjIGluY2x1ZGUgPHVuaXN0ZC5oPgp8ICNlbmRpZgp8ICAgIHR5cGVk ZWYgX19pbnQ2NCBhY19fdHlwZV9zaXplb2ZfOwp8IHN0YXRpYyBsb25nIGludCBsb25ndmFsICgp IHsgcmV0dXJuIChsb25nIGludCkgKHNpemVvZiAoYWNfX3R5cGVfc2l6ZW9mXykpOyB9Cnwgc3Rh dGljIHVuc2lnbmVkIGxvbmcgaW50IHVsb25ndmFsICgpIHsgcmV0dXJuIChsb25nIGludCkgKHNp emVvZiAoYWNfX3R5cGVfc2l6ZW9mXykpOyB9CnwgI2luY2x1ZGUgPHN0ZGlvLmg+CnwgI2luY2x1 ZGUgPHN0ZGxpYi5oPgp8IGludAp8IG1haW4gKCkKfCB7CnwgCnwgICBGSUxFICpmID0gZm9wZW4g KCJjb25mdGVzdC52YWwiLCAidyIpOwp8ICAgaWYgKCEgZikKfCAgICAgcmV0dXJuIDE7CnwgICBp ZiAoKChsb25nIGludCkgKHNpemVvZiAoYWNfX3R5cGVfc2l6ZW9mXykpKSA8IDApCnwgICAgIHsK fCAgICAgICBsb25nIGludCBpID0gbG9uZ3ZhbCAoKTsKfCAgICAgICBpZiAoaSAhPSAoKGxvbmcg aW50KSAoc2l6ZW9mIChhY19fdHlwZV9zaXplb2ZfKSkpKQp8IAlyZXR1cm4gMTsKfCAgICAgICBm cHJpbnRmIChmLCAiJWxkXG4iLCBpKTsKfCAgICAgfQp8ICAgZWxzZQp8ICAgICB7CnwgICAgICAg dW5zaWduZWQgbG9uZyBpbnQgaSA9IHVsb25ndmFsICgpOwp8ICAgICAgIGlmIChpICE9ICgobG9u ZyBpbnQpIChzaXplb2YgKGFjX190eXBlX3NpemVvZl8pKSkpCnwgCXJldHVybiAxOwp8ICAgICAg IGZwcmludGYgKGYsICIlbHVcbiIsIGkpOwp8ICAgICB9CnwgICByZXR1cm4gZmVycm9yIChmKSB8 fCBmY2xvc2UgKGYpICE9IDA7CnwgCnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToy NzQ1OTogcmVzdWx0OiAwCmNvbmZpZ3VyZToyNzQ2OTogY2hlY2tpbmcgZm9yIHVuc2lnbmVkIF9f aW50NjQKY29uZmlndXJlOjI3NDk5OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25m dGVzdC5jOjY5OiBlcnJvcjogcGFyc2UgZXJyb3IgYmVmb3JlICJhY19fdHlwZV9uZXdfIgpjb25m dGVzdC5jOjY5OiB3YXJuaW5nOiBkYXRhIGRlZmluaXRpb24gaGFzIG5vIHR5cGUgb3Igc3RvcmFn ZSBjbGFzcwpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiBgbWFpbic6CmNvbmZ0ZXN0LmM6NzM6IGVy cm9yOiBwYXJzZSBlcnJvciBiZWZvcmUgJyknIHRva2VuCmNvbmZpZ3VyZToyNzUwNTogJD8gPSAx CmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8ICNk ZWZpbmUgUEFDS0FHRV9OQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZ3Vp bGUiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9T VFJJTkcgImd1aWxlIDEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1ndWls ZUBnbnUub3JnIgp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZ UEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElC X0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEK fCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwg I2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZp bmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEhBVkVfTElCTFRETCAxCnwgI2RlZmluZSBTQ01f V0FSTl9ERVBSRUNBVEVEX0RFRkFVTFQgInN1bW1hcnkiCnwgI2RlZmluZSBHVUlMRV9VU0VfNjRf Q0FMTFMgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWCAxCnwgI2RlZmluZSBIQVZFX05FVFdPUktJTkcg MQp8ICNkZWZpbmUgU0laRU9GX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0NIQVIg MQp8ICNkZWZpbmUgU0laRU9GX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9TSE9S VCAyCnwgI2RlZmluZSBTSVpFT0ZfSU5UIDQKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9JTlQg NAp8ICNkZWZpbmUgU0laRU9GX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xPTkcg NAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9OR19MT05HIDgK fCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9MT05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX19f SU5UNjQgMAp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8c3RkaW8uaD4KfCAj aWZkZWYgSEFWRV9TWVNfVFlQRVNfSAp8ICMgaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgI2VuZGlm CnwgI2lmZGVmIEhBVkVfU1lTX1NUQVRfSAp8ICMgaW5jbHVkZSA8c3lzL3N0YXQuaD4KfCAjZW5k aWYKfCAjaWZkZWYgU1REQ19IRUFERVJTCnwgIyBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjIGluY2x1 ZGUgPHN0ZGRlZi5oPgp8ICNlbHNlCnwgIyBpZmRlZiBIQVZFX1NURExJQl9ICnwgIyAgaW5jbHVk ZSA8c3RkbGliLmg+CnwgIyBlbmRpZgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR19ICnwg IyBpZiAhZGVmaW5lZCBTVERDX0hFQURFUlMgJiYgZGVmaW5lZCBIQVZFX01FTU9SWV9ICnwgIyAg aW5jbHVkZSA8bWVtb3J5Lmg+CnwgIyBlbmRpZgp8ICMgaW5jbHVkZSA8c3RyaW5nLmg+CnwgI2Vu ZGlmCnwgI2lmZGVmIEhBVkVfU1RSSU5HU19ICnwgIyBpbmNsdWRlIDxzdHJpbmdzLmg+CnwgI2Vu ZGlmCnwgI2lmZGVmIEhBVkVfSU5UVFlQRVNfSAp8ICMgaW5jbHVkZSA8aW50dHlwZXMuaD4KfCAj ZW5kaWYKfCAjaWZkZWYgSEFWRV9TVERJTlRfSAp8ICMgaW5jbHVkZSA8c3RkaW50Lmg+CnwgI2Vu ZGlmCnwgI2lmZGVmIEhBVkVfVU5JU1REX0gKfCAjIGluY2x1ZGUgPHVuaXN0ZC5oPgp8ICNlbmRp Zgp8IHR5cGVkZWYgdW5zaWduZWQgX19pbnQ2NCBhY19fdHlwZV9uZXdfOwp8IGludAp8IG1haW4g KCkKfCB7CnwgaWYgKChhY19fdHlwZV9uZXdfICopIDApCnwgICByZXR1cm4gMDsKfCBpZiAoc2l6 ZW9mIChhY19fdHlwZV9uZXdfKSkKfCAgIHJldHVybiAwOwp8ICAgOwp8ICAgcmV0dXJuIDA7Cnwg fQpjb25maWd1cmU6Mjc1MjA6IHJlc3VsdDogbm8KY29uZmlndXJlOjI3NTI3OiBjaGVja2luZyBz aXplIG9mIHVuc2lnbmVkIF9faW50NjQKY29uZmlndXJlOjI3ODI5OiBnY2MgLW8gY29uZnRlc3Qu ZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxsdGRsICA+JjUKY29uZnRlc3QuYzo2OTogZXJyb3I6 IHBhcnNlIGVycm9yIGJlZm9yZSAiYWNfX3R5cGVfc2l6ZW9mXyIKY29uZnRlc3QuYzo2OTogd2Fy bmluZzogZGF0YSBkZWZpbml0aW9uIGhhcyBubyB0eXBlIG9yIHN0b3JhZ2UgY2xhc3MKY29uZmln dXJlOjI3ODMyOiAkPyA9IDEKY29uZmlndXJlOiBwcm9ncmFtIGV4aXRlZCB3aXRoIHN0YXR1cyAx CmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8ICNk ZWZpbmUgUEFDS0FHRV9OQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZ3Vp bGUiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9T VFJJTkcgImd1aWxlIDEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1ndWls ZUBnbnUub3JnIgp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZ UEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElC X0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEK fCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwg I2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZp bmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEhBVkVfTElCTFRETCAxCnwgI2RlZmluZSBTQ01f V0FSTl9ERVBSRUNBVEVEX0RFRkFVTFQgInN1bW1hcnkiCnwgI2RlZmluZSBHVUlMRV9VU0VfNjRf Q0FMTFMgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWCAxCnwgI2RlZmluZSBIQVZFX05FVFdPUktJTkcg MQp8ICNkZWZpbmUgU0laRU9GX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0NIQVIg MQp8ICNkZWZpbmUgU0laRU9GX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9TSE9S VCAyCnwgI2RlZmluZSBTSVpFT0ZfSU5UIDQKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9JTlQg NAp8ICNkZWZpbmUgU0laRU9GX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xPTkcg NAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9OR19MT05HIDgK fCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9MT05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX19f SU5UNjQgMAp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8c3RkaW8uaD4KfCAj aWZkZWYgSEFWRV9TWVNfVFlQRVNfSAp8ICMgaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgI2VuZGlm CnwgI2lmZGVmIEhBVkVfU1lTX1NUQVRfSAp8ICMgaW5jbHVkZSA8c3lzL3N0YXQuaD4KfCAjZW5k aWYKfCAjaWZkZWYgU1REQ19IRUFERVJTCnwgIyBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjIGluY2x1 ZGUgPHN0ZGRlZi5oPgp8ICNlbHNlCnwgIyBpZmRlZiBIQVZFX1NURExJQl9ICnwgIyAgaW5jbHVk ZSA8c3RkbGliLmg+CnwgIyBlbmRpZgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR19ICnwg IyBpZiAhZGVmaW5lZCBTVERDX0hFQURFUlMgJiYgZGVmaW5lZCBIQVZFX01FTU9SWV9ICnwgIyAg aW5jbHVkZSA8bWVtb3J5Lmg+CnwgIyBlbmRpZgp8ICMgaW5jbHVkZSA8c3RyaW5nLmg+CnwgI2Vu ZGlmCnwgI2lmZGVmIEhBVkVfU1RSSU5HU19ICnwgIyBpbmNsdWRlIDxzdHJpbmdzLmg+CnwgI2Vu ZGlmCnwgI2lmZGVmIEhBVkVfSU5UVFlQRVNfSAp8ICMgaW5jbHVkZSA8aW50dHlwZXMuaD4KfCAj ZW5kaWYKfCAjaWZkZWYgSEFWRV9TVERJTlRfSAp8ICMgaW5jbHVkZSA8c3RkaW50Lmg+CnwgI2Vu ZGlmCnwgI2lmZGVmIEhBVkVfVU5JU1REX0gKfCAjIGluY2x1ZGUgPHVuaXN0ZC5oPgp8ICNlbmRp Zgp8ICAgIHR5cGVkZWYgdW5zaWduZWQgX19pbnQ2NCBhY19fdHlwZV9zaXplb2ZfOwp8IHN0YXRp YyBsb25nIGludCBsb25ndmFsICgpIHsgcmV0dXJuIChsb25nIGludCkgKHNpemVvZiAoYWNfX3R5 cGVfc2l6ZW9mXykpOyB9Cnwgc3RhdGljIHVuc2lnbmVkIGxvbmcgaW50IHVsb25ndmFsICgpIHsg cmV0dXJuIChsb25nIGludCkgKHNpemVvZiAoYWNfX3R5cGVfc2l6ZW9mXykpOyB9CnwgI2luY2x1 ZGUgPHN0ZGlvLmg+CnwgI2luY2x1ZGUgPHN0ZGxpYi5oPgp8IGludAp8IG1haW4gKCkKfCB7Cnwg CnwgICBGSUxFICpmID0gZm9wZW4gKCJjb25mdGVzdC52YWwiLCAidyIpOwp8ICAgaWYgKCEgZikK fCAgICAgcmV0dXJuIDE7CnwgICBpZiAoKChsb25nIGludCkgKHNpemVvZiAoYWNfX3R5cGVfc2l6 ZW9mXykpKSA8IDApCnwgICAgIHsKfCAgICAgICBsb25nIGludCBpID0gbG9uZ3ZhbCAoKTsKfCAg ICAgICBpZiAoaSAhPSAoKGxvbmcgaW50KSAoc2l6ZW9mIChhY19fdHlwZV9zaXplb2ZfKSkpKQp8 IAlyZXR1cm4gMTsKfCAgICAgICBmcHJpbnRmIChmLCAiJWxkXG4iLCBpKTsKfCAgICAgfQp8ICAg ZWxzZQp8ICAgICB7CnwgICAgICAgdW5zaWduZWQgbG9uZyBpbnQgaSA9IHVsb25ndmFsICgpOwp8 ICAgICAgIGlmIChpICE9ICgobG9uZyBpbnQpIChzaXplb2YgKGFjX190eXBlX3NpemVvZl8pKSkp CnwgCXJldHVybiAxOwp8ICAgICAgIGZwcmludGYgKGYsICIlbHVcbiIsIGkpOwp8ICAgICB9Cnwg ICByZXR1cm4gZmVycm9yIChmKSB8fCBmY2xvc2UgKGYpICE9IDA7CnwgCnwgICA7CnwgICByZXR1 cm4gMDsKfCB9CmNvbmZpZ3VyZToyNzg2NDogcmVzdWx0OiAwCmNvbmZpZ3VyZToyNzg3NDogY2hl Y2tpbmcgZm9yIHZvaWQgKgpjb25maWd1cmU6Mjc5MDQ6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0 LmMgPiY1CmNvbmZpZ3VyZToyNzkxMDogJD8gPSAwCmNvbmZpZ3VyZToyNzkyNTogcmVzdWx0OiB5 ZXMKY29uZmlndXJlOjI3OTMyOiBjaGVja2luZyBzaXplIG9mIHZvaWQgKgpjb25maWd1cmU6Mjgy MzQ6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3QuYyAtbGx0ZGwgID4mNQpj b25maWd1cmU6MjgyMzc6ICQ/ID0gMApjb25maWd1cmU6MjgyNDM6IC4vY29uZnRlc3QuZXhlCmNv bmZpZ3VyZToyODI0NjogJD8gPSAwCmNvbmZpZ3VyZToyODI2OTogcmVzdWx0OiA0CmNvbmZpZ3Vy ZToyODI3OTogY2hlY2tpbmcgZm9yIGludHB0cl90CmNvbmZpZ3VyZToyODMwOTogZ2NjIC1jIC1n IC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjI4MzE1OiAkPyA9IDAKY29uZmlndXJlOjI4 MzMwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjgzMzc6IGNoZWNraW5nIHNpemUgb2YgaW50cHRy X3QKY29uZmlndXJlOjI4NjM5OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0 LmMgLWxsdGRsICA+JjUKY29uZmlndXJlOjI4NjQyOiAkPyA9IDAKY29uZmlndXJlOjI4NjQ4OiAu L2NvbmZ0ZXN0LmV4ZQpjb25maWd1cmU6Mjg2NTE6ICQ/ID0gMApjb25maWd1cmU6Mjg2NzQ6IHJl c3VsdDogNApjb25maWd1cmU6Mjg2ODQ6IGNoZWNraW5nIGZvciB1aW50cHRyX3QKY29uZmlndXJl OjI4NzE0OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6Mjg3MjA6ICQ/ ID0gMApjb25maWd1cmU6Mjg3MzU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyODc0MjogY2hlY2tp bmcgc2l6ZSBvZiB1aW50cHRyX3QKY29uZmlndXJlOjI5MDQ0OiBnY2MgLW8gY29uZnRlc3QuZXhl IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxsdGRsICA+JjUKY29uZmlndXJlOjI5MDQ3OiAkPyA9IDAK Y29uZmlndXJlOjI5MDUzOiAuL2NvbmZ0ZXN0LmV4ZQpjb25maWd1cmU6MjkwNTY6ICQ/ID0gMApj b25maWd1cmU6MjkwNzk6IHJlc3VsdDogNApjb25maWd1cmU6MjkwODk6IGNoZWNraW5nIGZvciBw dHJkaWZmX3QKY29uZmlndXJlOjI5MTE5OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpj b25maWd1cmU6MjkxMjU6ICQ/ID0gMApjb25maWd1cmU6MjkxNDA6IHJlc3VsdDogeWVzCmNvbmZp Z3VyZToyOTE0NzogY2hlY2tpbmcgc2l6ZSBvZiBwdHJkaWZmX3QKY29uZmlndXJlOjI5NDQ5OiBn Y2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxsdGRsICA+JjUKY29uZmln dXJlOjI5NDUyOiAkPyA9IDAKY29uZmlndXJlOjI5NDU4OiAuL2NvbmZ0ZXN0LmV4ZQpjb25maWd1 cmU6Mjk0NjE6ICQ/ID0gMApjb25maWd1cmU6Mjk0ODQ6IHJlc3VsdDogNApjb25maWd1cmU6Mjk0 OTQ6IGNoZWNraW5nIGZvciBzaXplX3QKY29uZmlndXJlOjI5NTQ1OiByZXN1bHQ6IHllcwpjb25m aWd1cmU6Mjk1NTI6IGNoZWNraW5nIHNpemUgb2Ygc2l6ZV90CmNvbmZpZ3VyZToyOTg4OTogcmVz dWx0OiA0CmNvbmZpZ3VyZToyOTg5OTogY2hlY2tpbmcgZm9yIG9mZl90CmNvbmZpZ3VyZToyOTky OTogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjI5OTM1OiAkPyA9IDAK Y29uZmlndXJlOjI5OTUwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6Mjk5NTc6IGNoZWNraW5nIHNp emUgb2Ygb2ZmX3QKY29uZmlndXJlOjMwMjU5OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAg IGNvbmZ0ZXN0LmMgLWxsdGRsICA+JjUKY29uZmlndXJlOjMwMjYyOiAkPyA9IDAKY29uZmlndXJl OjMwMjY4OiAuL2NvbmZ0ZXN0LmV4ZQpjb25maWd1cmU6MzAyNzE6ICQ/ID0gMApjb25maWd1cmU6 MzAyOTQ6IHJlc3VsdDogOApjb25maWd1cmU6MzAzMjM6IGNoZWNraW5nIGZvciBzdGRpbnQuaApj b25maWd1cmU6MzAzMjk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMDQ2ODogY2hlY2tpbmcgZm9y IGludHR5cGVzLmgKY29uZmlndXJlOjMwNDc0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzA2MDk6 IGNoZWNraW5nIGZvciBpbnRtYXhfdApjb25maWd1cmU6MzA2Mzk6IGdjYyAtYyAtZyAtTzIgIGNv bmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozMDY0NTogJD8gPSAwCmNvbmZpZ3VyZTozMDY2MDogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjMwNjY3OiBjaGVja2luZyBzaXplIG9mIGludG1heF90CmNvbmZp Z3VyZTozMDk2OTogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1sbHRk bCAgPiY1CmNvbmZpZ3VyZTozMDk3MjogJD8gPSAwCmNvbmZpZ3VyZTozMDk3ODogLi9jb25mdGVz dC5leGUKY29uZmlndXJlOjMwOTgxOiAkPyA9IDAKY29uZmlndXJlOjMxMDA0OiByZXN1bHQ6IDgK Y29uZmlndXJlOjMxODcyOiBjaGVja2luZyBmb3IgaW50OF90CmNvbmZpZ3VyZTozMTkwMzogZ2Nj IC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjMxOTA5OiAkPyA9IDAKY29uZmln dXJlOjMxOTI0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzE5MzA6IGNoZWNraW5nIGZvciB1aW50 OF90CmNvbmZpZ3VyZTozMTk2MTogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmln dXJlOjMxOTY3OiAkPyA9IDAKY29uZmlndXJlOjMxOTgyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6 MzE5ODg6IGNoZWNraW5nIGZvciBpbnQxNl90CmNvbmZpZ3VyZTozMjAxOTogZ2NjIC1jIC1nIC1P MiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjMyMDI1OiAkPyA9IDAKY29uZmlndXJlOjMyMDQw OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzIwNDY6IGNoZWNraW5nIGZvciB1aW50MTZfdApjb25m aWd1cmU6MzIwNzc6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozMjA4 MzogJD8gPSAwCmNvbmZpZ3VyZTozMjA5ODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjMyMTA0OiBj aGVja2luZyBmb3IgaW50MzJfdApjb25maWd1cmU6MzIxMzU6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0 ZXN0LmMgPiY1CmNvbmZpZ3VyZTozMjE0MTogJD8gPSAwCmNvbmZpZ3VyZTozMjE1NjogcmVzdWx0 OiB5ZXMKY29uZmlndXJlOjMyMTYyOiBjaGVja2luZyBmb3IgdWludDMyX3QKY29uZmlndXJlOjMy MTkzOiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzIxOTk6ICQ/ID0g MApjb25maWd1cmU6MzIyMTQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMjIyMDogY2hlY2tpbmcg Zm9yIGludDY0X3QKY29uZmlndXJlOjMyMjUxOiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4m NQpjb25maWd1cmU6MzIyNTc6ICQ/ID0gMApjb25maWd1cmU6MzIyNzI6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZTozMjI3ODogY2hlY2tpbmcgZm9yIHVpbnQ2NF90CmNvbmZpZ3VyZTozMjMwOTogZ2Nj IC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjMyMzE1OiAkPyA9IDAKY29uZmln dXJlOjMyMzMwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzIzMzY6IGNoZWNraW5nIGZvciBpbnRt YXhfdApjb25maWd1cmU6MzIzODg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMjM5NDogY2hlY2tp bmcgZm9yIHVpbnRtYXhfdApjb25maWd1cmU6MzI0MjU6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0 LmMgPiY1CmNvbmZpZ3VyZTozMjQzMTogJD8gPSAwCmNvbmZpZ3VyZTozMjQ0NjogcmVzdWx0OiB5 ZXMKY29uZmlndXJlOjMyNDcwOiBjaGVja2luZyBmb3IgaW50OF90CmNvbmZpZ3VyZTozMjUwMTog Z2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjMyNTA3OiAkPyA9IDAKY29u ZmlndXJlOjMyNTIyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzI1Mjg6IGNoZWNraW5nIGZvciB1 aW50OF90CmNvbmZpZ3VyZTozMjU1OTogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29u ZmlndXJlOjMyNTY1OiAkPyA9IDAKY29uZmlndXJlOjMyNTgwOiByZXN1bHQ6IHllcwpjb25maWd1 cmU6MzI1ODY6IGNoZWNraW5nIGZvciBpbnQxNl90CmNvbmZpZ3VyZTozMjYxNzogZ2NjIC1jIC1n IC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjMyNjIzOiAkPyA9IDAKY29uZmlndXJlOjMy NjM4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzI2NDQ6IGNoZWNraW5nIGZvciB1aW50MTZfdApj b25maWd1cmU6MzI2NzU6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToz MjY4MTogJD8gPSAwCmNvbmZpZ3VyZTozMjY5NjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjMyNzAy OiBjaGVja2luZyBmb3IgaW50MzJfdApjb25maWd1cmU6MzI3MzM6IGdjYyAtYyAtZyAtTzIgIGNv bmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozMjczOTogJD8gPSAwCmNvbmZpZ3VyZTozMjc1NDogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjMyNzYwOiBjaGVja2luZyBmb3IgdWludDMyX3QKY29uZmlndXJl OjMyNzkxOiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzI3OTc6ICQ/ ID0gMApjb25maWd1cmU6MzI4MTI6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMjgxODogY2hlY2tp bmcgZm9yIGludDY0X3QKY29uZmlndXJlOjMyODQ5OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5j ID4mNQpjb25maWd1cmU6MzI4NTU6ICQ/ID0gMApjb25maWd1cmU6MzI4NzA6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZTozMjg3NjogY2hlY2tpbmcgZm9yIHVpbnQ2NF90CmNvbmZpZ3VyZTozMjkwNzog Z2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjMyOTEzOiAkPyA9IDAKY29u ZmlndXJlOjMyOTI4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzI5MzQ6IGNoZWNraW5nIGZvciBp bnRtYXhfdApjb25maWd1cmU6MzI5NjU6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNv bmZpZ3VyZTozMjk3MTogJD8gPSAwCmNvbmZpZ3VyZTozMjk4NjogcmVzdWx0OiB5ZXMKY29uZmln dXJlOjMyOTkyOiBjaGVja2luZyBmb3IgdWludG1heF90CmNvbmZpZ3VyZTozMzAyMzogZ2NjIC1j IC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjMzMDI5OiAkPyA9IDAKY29uZmlndXJl OjMzMDQ0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzMyNjI6IGNoZWNraW5nIGZvciBBTlNJIEMg aGVhZGVyIGZpbGVzCmNvbmZpZ3VyZTozMzQyNjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjMzNDQ0 OiBjaGVja2luZyBmb3IgZGlyZW50LmggdGhhdCBkZWZpbmVzIERJUgpjb25maWd1cmU6MzM0NzM6 IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozMzQ3OTogJD8gPSAwCmNv bmZpZ3VyZTozMzQ5NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjMzNTA4OiBjaGVja2luZyBmb3Ig bGlicmFyeSBjb250YWluaW5nIG9wZW5kaXIKY29uZmlndXJlOjMzNTQ5OiBnY2MgLW8gY29uZnRl c3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxsdGRsICA+JjUKY29uZmlndXJlOjMzNTU1OiAk PyA9IDAKY29uZmlndXJlOjMzNTgzOiByZXN1bHQ6IG5vbmUgcmVxdWlyZWQKY29uZmlndXJlOjMz Njc3OiBjaGVja2luZyB3aGV0aGVyIHRpbWUuaCBhbmQgc3lzL3RpbWUuaCBtYXkgYm90aCBiZSBp bmNsdWRlZApjb25maWd1cmU6MzM3MDc6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNv bmZpZ3VyZTozMzcxMzogJD8gPSAwCmNvbmZpZ3VyZTozMzcyODogcmVzdWx0OiB5ZXMKY29uZmln dXJlOjMzNzM4OiBjaGVja2luZyBmb3Igc3lzL3dhaXQuaCB0aGF0IGlzIFBPU0lYLjEgY29tcGF0 aWJsZQpjb25maWd1cmU6MzM3NzQ6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZp Z3VyZTozMzc4MDogJD8gPSAwCmNvbmZpZ3VyZTozMzc5NTogcmVzdWx0OiB5ZXMKY29uZmlndXJl OjMzODU4OiBjaGVja2luZyBjb21wbGV4LmggdXNhYmlsaXR5CmNvbmZpZ3VyZTozMzg3NTogZ2Nj IC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzo4MzoyMTogY29tcGxleC5oOiBO byBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CmNvbmZpZ3VyZTozMzg4MTogJD8gPSAxCmNvbmZpZ3Vy ZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8ICNkZWZpbmUgUEFD S0FHRV9OQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZ3VpbGUiCnwgI2Rl ZmluZSBQQUNLQUdFX1ZFUlNJT04gIjEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgImd1 aWxlIDEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1ndWlsZUBnbnUub3Jn Igp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5l IEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBI QVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9E TEZDTl9IIDEKfCAjZGVmaW5lIEhBVkVfTElCTFRETCAxCnwgI2RlZmluZSBTQ01fV0FSTl9ERVBS RUNBVEVEX0RFRkFVTFQgInN1bW1hcnkiCnwgI2RlZmluZSBHVUlMRV9VU0VfNjRfQ0FMTFMgMQp8 ICNkZWZpbmUgSEFWRV9QT1NJWCAxCnwgI2RlZmluZSBIQVZFX05FVFdPUktJTkcgMQp8ICNkZWZp bmUgU0laRU9GX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0NIQVIgMQp8ICNkZWZp bmUgU0laRU9GX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9TSE9SVCAyCnwgI2Rl ZmluZSBTSVpFT0ZfSU5UIDQKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9JTlQgNAp8ICNkZWZp bmUgU0laRU9GX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xPTkcgNAp8ICNkZWZp bmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9OR19MT05HIDgKfCAjZGVmaW5l IFNJWkVPRl9VTlNJR05FRF9MT05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX19fSU5UNjQgMAp8 ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX19fSU5UNjQgMAp8ICNkZWZpbmUgU0laRU9GX1ZPSURf UCA0CnwgI2RlZmluZSBTSVpFT0ZfSU5UUFRSX1QgNAp8ICNkZWZpbmUgU0laRU9GX1VJTlRQVFJf VCA0CnwgI2RlZmluZSBTSVpFT0ZfUFRSRElGRl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9TSVpFX1Qg NAp8ICNkZWZpbmUgU0laRU9GX09GRl9UIDgKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNk ZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIFNJWkVPRl9JTlRNQVhfVCA4CnwgI2Rl ZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBU SU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAvKiBlbmQg Y29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN0ZGlvLmg+CnwgI2lmZGVmIEhBVkVfU1lTX1RZ UEVTX0gKfCAjIGluY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NZ U19TVEFUX0gKfCAjIGluY2x1ZGUgPHN5cy9zdGF0Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIFNURENf SEVBREVSUwp8ICMgaW5jbHVkZSA8c3RkbGliLmg+CnwgIyBpbmNsdWRlIDxzdGRkZWYuaD4KfCAj ZWxzZQp8ICMgaWZkZWYgSEFWRV9TVERMSUJfSAp8ICMgIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMg ZW5kaWYKfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdfSAp8ICMgaWYgIWRlZmluZWQgU1RE Q19IRUFERVJTICYmIGRlZmluZWQgSEFWRV9NRU1PUllfSAp8ICMgIGluY2x1ZGUgPG1lbW9yeS5o Pgp8ICMgZW5kaWYKfCAjIGluY2x1ZGUgPHN0cmluZy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZF X1NUUklOR1NfSAp8ICMgaW5jbHVkZSA8c3RyaW5ncy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZF X0lOVFRZUEVTX0gKfCAjIGluY2x1ZGUgPGludHR5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhB VkVfU1RESU5UX0gKfCAjIGluY2x1ZGUgPHN0ZGludC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZF X1VOSVNURF9ICnwgIyBpbmNsdWRlIDx1bmlzdGQuaD4KfCAjZW5kaWYKfCAjaW5jbHVkZSA8Y29t cGxleC5oPgpjb25maWd1cmU6MzM4OTU6IHJlc3VsdDogbm8KY29uZmlndXJlOjMzODk5OiBjaGVj a2luZyBjb21wbGV4LmggcHJlc2VuY2UKY29uZmlndXJlOjMzOTE0OiBnY2MgLUUgIGNvbmZ0ZXN0 LmMKY29uZnRlc3QuYzo1MDoyMTogY29tcGxleC5oOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5 CmNvbmZpZ3VyZTozMzkyMDogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8 IC8qIGNvbmZkZWZzLmguICAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJndWlsZSIKfCAjZGVm aW5lIFBBQ0tBR0VfVEFSTkFNRSAiZ3VpbGUiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjEu OC40Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgImd1aWxlIDEuOC40Igp8ICNkZWZpbmUgUEFD S0FHRV9CVUdSRVBPUlQgImJ1Zy1ndWlsZUBnbnUub3JnIgp8ICNkZWZpbmUgU1REQ19IRUFERVJT IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9I IDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwg I2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVm aW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5l IEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEhBVkVf TElCTFRETCAxCnwgI2RlZmluZSBTQ01fV0FSTl9ERVBSRUNBVEVEX0RFRkFVTFQgInN1bW1hcnki CnwgI2RlZmluZSBHVUlMRV9VU0VfNjRfQ0FMTFMgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWCAxCnwg I2RlZmluZSBIQVZFX05FVFdPUktJTkcgMQp8ICNkZWZpbmUgU0laRU9GX0NIQVIgMQp8ICNkZWZp bmUgU0laRU9GX1VOU0lHTkVEX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1NIT1JUIDIKfCAjZGVm aW5lIFNJWkVPRl9VTlNJR05FRF9TSE9SVCAyCnwgI2RlZmluZSBTSVpFT0ZfSU5UIDQKfCAjZGVm aW5lIFNJWkVPRl9VTlNJR05FRF9JTlQgNAp8ICNkZWZpbmUgU0laRU9GX0xPTkcgNAp8ICNkZWZp bmUgU0laRU9GX1VOU0lHTkVEX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2Rl ZmluZSBTSVpFT0ZfTE9OR19MT05HIDgKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9MT05HX0xP TkcgOAp8ICNkZWZpbmUgU0laRU9GX19fSU5UNjQgMAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVE X19fSU5UNjQgMAp8ICNkZWZpbmUgU0laRU9GX1ZPSURfUCA0CnwgI2RlZmluZSBTSVpFT0ZfSU5U UFRSX1QgNAp8ICNkZWZpbmUgU0laRU9GX1VJTlRQVFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfUFRS RElGRl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9TSVpFX1QgNAp8ICNkZWZpbmUgU0laRU9GX09GRl9U IDgKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEK fCAjZGVmaW5lIFNJWkVPRl9JTlRNQVhfVCA4CnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNk ZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNk ZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1 ZGUgPGNvbXBsZXguaD4KY29uZmlndXJlOjMzOTM0OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTozMzk2 NzogY2hlY2tpbmcgZm9yIGNvbXBsZXguaApjb25maWd1cmU6MzM5NzU6IHJlc3VsdDogbm8KY29u ZmlndXJlOjMzODU4OiBjaGVja2luZyBmZW52LmggdXNhYmlsaXR5CmNvbmZpZ3VyZTozMzg3NTog Z2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzo4MzoxODogZmVudi5oOiBO byBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CmNvbmZpZ3VyZTozMzg4MTogJD8gPSAxCmNvbmZpZ3Vy ZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8ICNkZWZpbmUgUEFD S0FHRV9OQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZ3VpbGUiCnwgI2Rl ZmluZSBQQUNLQUdFX1ZFUlNJT04gIjEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgImd1 aWxlIDEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1ndWlsZUBnbnUub3Jn Igp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5l IEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBI QVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9E TEZDTl9IIDEKfCAjZGVmaW5lIEhBVkVfTElCTFRETCAxCnwgI2RlZmluZSBTQ01fV0FSTl9ERVBS RUNBVEVEX0RFRkFVTFQgInN1bW1hcnkiCnwgI2RlZmluZSBHVUlMRV9VU0VfNjRfQ0FMTFMgMQp8 ICNkZWZpbmUgSEFWRV9QT1NJWCAxCnwgI2RlZmluZSBIQVZFX05FVFdPUktJTkcgMQp8ICNkZWZp bmUgU0laRU9GX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0NIQVIgMQp8ICNkZWZp bmUgU0laRU9GX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9TSE9SVCAyCnwgI2Rl ZmluZSBTSVpFT0ZfSU5UIDQKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9JTlQgNAp8ICNkZWZp bmUgU0laRU9GX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xPTkcgNAp8ICNkZWZp bmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9OR19MT05HIDgKfCAjZGVmaW5l IFNJWkVPRl9VTlNJR05FRF9MT05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX19fSU5UNjQgMAp8 ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX19fSU5UNjQgMAp8ICNkZWZpbmUgU0laRU9GX1ZPSURf UCA0CnwgI2RlZmluZSBTSVpFT0ZfSU5UUFRSX1QgNAp8ICNkZWZpbmUgU0laRU9GX1VJTlRQVFJf VCA0CnwgI2RlZmluZSBTSVpFT0ZfUFRSRElGRl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9TSVpFX1Qg NAp8ICNkZWZpbmUgU0laRU9GX09GRl9UIDgKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNk ZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIFNJWkVPRl9JTlRNQVhfVCA4CnwgI2Rl ZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBU SU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAvKiBlbmQg Y29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN0ZGlvLmg+CnwgI2lmZGVmIEhBVkVfU1lTX1RZ UEVTX0gKfCAjIGluY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NZ U19TVEFUX0gKfCAjIGluY2x1ZGUgPHN5cy9zdGF0Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIFNURENf SEVBREVSUwp8ICMgaW5jbHVkZSA8c3RkbGliLmg+CnwgIyBpbmNsdWRlIDxzdGRkZWYuaD4KfCAj ZWxzZQp8ICMgaWZkZWYgSEFWRV9TVERMSUJfSAp8ICMgIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMg ZW5kaWYKfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdfSAp8ICMgaWYgIWRlZmluZWQgU1RE Q19IRUFERVJTICYmIGRlZmluZWQgSEFWRV9NRU1PUllfSAp8ICMgIGluY2x1ZGUgPG1lbW9yeS5o Pgp8ICMgZW5kaWYKfCAjIGluY2x1ZGUgPHN0cmluZy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZF X1NUUklOR1NfSAp8ICMgaW5jbHVkZSA8c3RyaW5ncy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZF X0lOVFRZUEVTX0gKfCAjIGluY2x1ZGUgPGludHR5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhB VkVfU1RESU5UX0gKfCAjIGluY2x1ZGUgPHN0ZGludC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZF X1VOSVNURF9ICnwgIyBpbmNsdWRlIDx1bmlzdGQuaD4KfCAjZW5kaWYKfCAjaW5jbHVkZSA8ZmVu di5oPgpjb25maWd1cmU6MzM4OTU6IHJlc3VsdDogbm8KY29uZmlndXJlOjMzODk5OiBjaGVja2lu ZyBmZW52LmggcHJlc2VuY2UKY29uZmlndXJlOjMzOTE0OiBnY2MgLUUgIGNvbmZ0ZXN0LmMKY29u ZnRlc3QuYzo1MDoxODogZmVudi5oOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CmNvbmZpZ3Vy ZTozMzkyMDogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZk ZWZzLmguICAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tB R0VfVEFSTkFNRSAiZ3VpbGUiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjEuOC40Igp8ICNk ZWZpbmUgUEFDS0FHRV9TVFJJTkcgImd1aWxlIDEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9CVUdS RVBPUlQgImJ1Zy1ndWlsZUBnbnUub3JnIgp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVm aW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBI QVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVf SU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5J U1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEhBVkVfTElCTFRETCAx CnwgI2RlZmluZSBTQ01fV0FSTl9ERVBSRUNBVEVEX0RFRkFVTFQgInN1bW1hcnkiCnwgI2RlZmlu ZSBHVUlMRV9VU0VfNjRfQ0FMTFMgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWCAxCnwgI2RlZmluZSBI QVZFX05FVFdPUktJTkcgMQp8ICNkZWZpbmUgU0laRU9GX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9G X1VOU0lHTkVEX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVP Rl9VTlNJR05FRF9TSE9SVCAyCnwgI2RlZmluZSBTSVpFT0ZfSU5UIDQKfCAjZGVmaW5lIFNJWkVP Rl9VTlNJR05FRF9JTlQgNAp8ICNkZWZpbmUgU0laRU9GX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9G X1VOU0lHTkVEX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpF T0ZfTE9OR19MT05HIDgKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9MT05HX0xPTkcgOAp8ICNk ZWZpbmUgU0laRU9GX19fSU5UNjQgMAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX19fSU5UNjQg MAp8ICNkZWZpbmUgU0laRU9GX1ZPSURfUCA0CnwgI2RlZmluZSBTSVpFT0ZfSU5UUFRSX1QgNAp8 ICNkZWZpbmUgU0laRU9GX1VJTlRQVFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfUFRSRElGRl9UIDQK fCAjZGVmaW5lIFNJWkVPRl9TSVpFX1QgNAp8ICNkZWZpbmUgU0laRU9GX09GRl9UIDgKfCAjZGVm aW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5l IFNJWkVPRl9JTlRNQVhfVCA4CnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFW RV9ESVJFTlRfSCAxCnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFW RV9TWVNfV0FJVF9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPGZlbnYu aD4KY29uZmlndXJlOjMzOTM0OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTozMzk2NzogY2hlY2tpbmcg Zm9yIGZlbnYuaApjb25maWd1cmU6MzM5NzU6IHJlc3VsdDogbm8KY29uZmlndXJlOjMzODU4OiBj aGVja2luZyBpby5oIHVzYWJpbGl0eQpjb25maWd1cmU6MzM4NzU6IGdjYyAtYyAtZyAtTzIgIGNv bmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozMzg4MTogJD8gPSAwCmNvbmZpZ3VyZTozMzg5NTogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjMzODk5OiBjaGVja2luZyBpby5oIHByZXNlbmNlCmNvbmZpZ3Vy ZTozMzkxNDogZ2NjIC1FICBjb25mdGVzdC5jCmNvbmZpZ3VyZTozMzkyMDogJD8gPSAwCmNvbmZp Z3VyZTozMzkzNDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjMzOTY3OiBjaGVja2luZyBmb3IgaW8u aApjb25maWd1cmU6MzM5NzU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMzg1ODogY2hlY2tpbmcg bGliYy5oIHVzYWJpbGl0eQpjb25maWd1cmU6MzM4NzU6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0 LmMgPiY1CmNvbmZ0ZXN0LmM6ODQ6MTg6IGxpYmMuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9y eQpjb25maWd1cmU6MzM4ODE6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoK fCAvKiBjb25mZGVmcy5oLiAgKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiZ3VpbGUiCnwgI2Rl ZmluZSBQQUNLQUdFX1RBUk5BTUUgImd1aWxlIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIx LjguNCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJndWlsZSAxLjguNCIKfCAjZGVmaW5lIFBB Q0tBR0VfQlVHUkVQT1JUICJidWctZ3VpbGVAZ251Lm9yZyIKfCAjZGVmaW5lIFNURENfSEVBREVS UyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRf SCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8 ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2Rl ZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmlu ZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRExGQ05fSCAxCnwgI2RlZmluZSBIQVZF X0xJQkxUREwgMQp8ICNkZWZpbmUgU0NNX1dBUk5fREVQUkVDQVRFRF9ERUZBVUxUICJzdW1tYXJ5 Igp8ICNkZWZpbmUgR1VJTEVfVVNFXzY0X0NBTExTIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVggMQp8 ICNkZWZpbmUgSEFWRV9ORVRXT1JLSU5HIDEKfCAjZGVmaW5lIFNJWkVPRl9DSEFSIDEKfCAjZGVm aW5lIFNJWkVPRl9VTlNJR05FRF9DSEFSIDEKfCAjZGVmaW5lIFNJWkVPRl9TSE9SVCAyCnwgI2Rl ZmluZSBTSVpFT0ZfVU5TSUdORURfU0hPUlQgMgp8ICNkZWZpbmUgU0laRU9GX0lOVCA0CnwgI2Rl ZmluZSBTSVpFT0ZfVU5TSUdORURfSU5UIDQKfCAjZGVmaW5lIFNJWkVPRl9MT05HIDQKfCAjZGVm aW5lIFNJWkVPRl9VTlNJR05FRF9MT05HIDQKfCAjZGVmaW5lIFNJWkVPRl9TSVpFX1QgNAp8ICNk ZWZpbmUgU0laRU9GX0xPTkdfTE9ORyA4CnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfTE9OR19M T05HIDgKfCAjZGVmaW5lIFNJWkVPRl9fX0lOVDY0IDAKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05F RF9fX0lOVDY0IDAKfCAjZGVmaW5lIFNJWkVPRl9WT0lEX1AgNAp8ICNkZWZpbmUgU0laRU9GX0lO VFBUUl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9VSU5UUFRSX1QgNAp8ICNkZWZpbmUgU0laRU9GX1BU UkRJRkZfVCA0CnwgI2RlZmluZSBTSVpFT0ZfU0laRV9UIDQKfCAjZGVmaW5lIFNJWkVPRl9PRkZf VCA4CnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAx CnwgI2RlZmluZSBTSVpFT0ZfSU5UTUFYX1QgOAp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAj ZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX0lPX0ggMQp8IC8qIGVuZCBj b25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8c3RkaW8uaD4KfCAjaWZkZWYgSEFWRV9TWVNfVFlQ RVNfSAp8ICMgaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1lT X1NUQVRfSAp8ICMgaW5jbHVkZSA8c3lzL3N0YXQuaD4KfCAjZW5kaWYKfCAjaWZkZWYgU1REQ19I RUFERVJTCnwgIyBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjIGluY2x1ZGUgPHN0ZGRlZi5oPgp8ICNl bHNlCnwgIyBpZmRlZiBIQVZFX1NURExJQl9ICnwgIyAgaW5jbHVkZSA8c3RkbGliLmg+CnwgIyBl bmRpZgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR19ICnwgIyBpZiAhZGVmaW5lZCBTVERD X0hFQURFUlMgJiYgZGVmaW5lZCBIQVZFX01FTU9SWV9ICnwgIyAgaW5jbHVkZSA8bWVtb3J5Lmg+ CnwgIyBlbmRpZgp8ICMgaW5jbHVkZSA8c3RyaW5nLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVf U1RSSU5HU19ICnwgIyBpbmNsdWRlIDxzdHJpbmdzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVf SU5UVFlQRVNfSAp8ICMgaW5jbHVkZSA8aW50dHlwZXMuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFW RV9TVERJTlRfSAp8ICMgaW5jbHVkZSA8c3RkaW50Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVf VU5JU1REX0gKfCAjIGluY2x1ZGUgPHVuaXN0ZC5oPgp8ICNlbmRpZgp8ICNpbmNsdWRlIDxsaWJj Lmg+CmNvbmZpZ3VyZTozMzg5NTogcmVzdWx0OiBubwpjb25maWd1cmU6MzM4OTk6IGNoZWNraW5n IGxpYmMuaCBwcmVzZW5jZQpjb25maWd1cmU6MzM5MTQ6IGdjYyAtRSAgY29uZnRlc3QuYwpjb25m dGVzdC5jOjUxOjE4OiBsaWJjLmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKY29uZmlndXJl OjMzOTIwOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRl ZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgImd1aWxlIgp8ICNkZWZpbmUgUEFDS0FH RV9UQVJOQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMS44LjQiCnwgI2Rl ZmluZSBQQUNLQUdFX1NUUklORyAiZ3VpbGUgMS44LjQiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JF UE9SVCAiYnVnLWd1aWxlQGdudS5vcmciCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZp bmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZp bmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhB VkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9J TlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklT VERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgSEFWRV9MSUJMVERMIDEK fCAjZGVmaW5lIFNDTV9XQVJOX0RFUFJFQ0FURURfREVGQVVMVCAic3VtbWFyeSIKfCAjZGVmaW5l IEdVSUxFX1VTRV82NF9DQUxMUyAxCnwgI2RlZmluZSBIQVZFX1BPU0lYIDEKfCAjZGVmaW5lIEhB VkVfTkVUV09SS0lORyAxCnwgI2RlZmluZSBTSVpFT0ZfQ0hBUiAxCnwgI2RlZmluZSBTSVpFT0Zf VU5TSUdORURfQ0hBUiAxCnwgI2RlZmluZSBTSVpFT0ZfU0hPUlQgMgp8ICNkZWZpbmUgU0laRU9G X1VOU0lHTkVEX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9JTlQgNAp8ICNkZWZpbmUgU0laRU9G X1VOU0lHTkVEX0lOVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA0CnwgI2RlZmluZSBTSVpFT0Zf VU5TSUdORURfTE9ORyA0CnwgI2RlZmluZSBTSVpFT0ZfU0laRV9UIDQKfCAjZGVmaW5lIFNJWkVP Rl9MT05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xPTkdfTE9ORyA4CnwgI2Rl ZmluZSBTSVpFT0ZfX19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfX19JTlQ2NCAw CnwgI2RlZmluZSBTSVpFT0ZfVk9JRF9QIDQKfCAjZGVmaW5lIFNJWkVPRl9JTlRQVFJfVCA0Cnwg I2RlZmluZSBTSVpFT0ZfVUlOVFBUUl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9QVFJESUZGX1QgNAp8 ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfT0ZGX1QgOAp8ICNkZWZp bmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUg U0laRU9GX0lOVE1BWF9UIDgKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZF X0RJUkVOVF9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwgI2RlZmluZSBIQVZF X1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9JT19IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4g ICovCnwgI2luY2x1ZGUgPGxpYmMuaD4KY29uZmlndXJlOjMzOTM0OiByZXN1bHQ6IG5vCmNvbmZp Z3VyZTozMzk2NzogY2hlY2tpbmcgZm9yIGxpYmMuaApjb25maWd1cmU6MzM5NzU6IHJlc3VsdDog bm8KY29uZmlndXJlOjMzODU4OiBjaGVja2luZyBsaW1pdHMuaCB1c2FiaWxpdHkKY29uZmlndXJl OjMzODc1OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzM4ODE6ICQ/ ID0gMApjb25maWd1cmU6MzM4OTU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMzg5OTogY2hlY2tp bmcgbGltaXRzLmggcHJlc2VuY2UKY29uZmlndXJlOjMzOTE0OiBnY2MgLUUgIGNvbmZ0ZXN0LmMK Y29uZmlndXJlOjMzOTIwOiAkPyA9IDAKY29uZmlndXJlOjMzOTM0OiByZXN1bHQ6IHllcwpjb25m aWd1cmU6MzM5Njc6IGNoZWNraW5nIGZvciBsaW1pdHMuaApjb25maWd1cmU6MzM5NzU6IHJlc3Vs dDogeWVzCmNvbmZpZ3VyZTozMzg1ODogY2hlY2tpbmcgbWFsbG9jLmggdXNhYmlsaXR5CmNvbmZp Z3VyZTozMzg3NTogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjMzODgx OiAkPyA9IDAKY29uZmlndXJlOjMzODk1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzM4OTk6IGNo ZWNraW5nIG1hbGxvYy5oIHByZXNlbmNlCmNvbmZpZ3VyZTozMzkxNDogZ2NjIC1FICBjb25mdGVz dC5jCmNvbmZpZ3VyZTozMzkyMDogJD8gPSAwCmNvbmZpZ3VyZTozMzkzNDogcmVzdWx0OiB5ZXMK Y29uZmlndXJlOjMzOTY3OiBjaGVja2luZyBmb3IgbWFsbG9jLmgKY29uZmlndXJlOjMzOTc1OiBy ZXN1bHQ6IHllcwpjb25maWd1cmU6MzM4NDg6IGNoZWNraW5nIGZvciBtZW1vcnkuaApjb25maWd1 cmU6MzM4NTQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMzg1ODogY2hlY2tpbmcgcHJvY2Vzcy5o IHVzYWJpbGl0eQpjb25maWd1cmU6MzM4NzU6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1 CmNvbmZpZ3VyZTozMzg4MTogJD8gPSAwCmNvbmZpZ3VyZTozMzg5NTogcmVzdWx0OiB5ZXMKY29u ZmlndXJlOjMzODk5OiBjaGVja2luZyBwcm9jZXNzLmggcHJlc2VuY2UKY29uZmlndXJlOjMzOTE0 OiBnY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjMzOTIwOiAkPyA9IDAKY29uZmlndXJlOjMz OTM0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzM5Njc6IGNoZWNraW5nIGZvciBwcm9jZXNzLmgK Y29uZmlndXJlOjMzOTc1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzM4NDg6IGNoZWNraW5nIGZv ciBzdHJpbmcuaApjb25maWd1cmU6MzM4NTQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMzg1ODog Y2hlY2tpbmcgcmVnZXguaCB1c2FiaWxpdHkKY29uZmlndXJlOjMzODc1OiBnY2MgLWMgLWcgLU8y ICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzM4ODE6ICQ/ID0gMApjb25maWd1cmU6MzM4OTU6 IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMzg5OTogY2hlY2tpbmcgcmVnZXguaCBwcmVzZW5jZQpj b25maWd1cmU6MzM5MTQ6IGdjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6MzM5MjA6ICQ/ID0g MApjb25maWd1cmU6MzM5MzQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMzk2NzogY2hlY2tpbmcg Zm9yIHJlZ2V4LmgKY29uZmlndXJlOjMzOTc1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzM4NTg6 IGNoZWNraW5nIHJ4cG9zaXguaCB1c2FiaWxpdHkKY29uZmlndXJlOjMzODc1OiBnY2MgLWMgLWcg LU8yICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOjkwOjIxOiByeHBvc2l4Lmg6IE5vIHN1Y2gg ZmlsZSBvciBkaXJlY3RvcnkKY29uZmlndXJlOjMzODgxOiAkPyA9IDEKY29uZmlndXJlOiBmYWls ZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05B TUUgImd1aWxlIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJndWlsZSIKfCAjZGVmaW5lIFBB Q0tBR0VfVkVSU0lPTiAiMS44LjQiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiZ3VpbGUgMS44 LjQiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWd1aWxlQGdudS5vcmciCnwgI2Rl ZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBI QVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9T VFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RE SU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0gg MQp8ICNkZWZpbmUgSEFWRV9MSUJMVERMIDEKfCAjZGVmaW5lIFNDTV9XQVJOX0RFUFJFQ0FURURf REVGQVVMVCAic3VtbWFyeSIKfCAjZGVmaW5lIEdVSUxFX1VTRV82NF9DQUxMUyAxCnwgI2RlZmlu ZSBIQVZFX1BPU0lYIDEKfCAjZGVmaW5lIEhBVkVfTkVUV09SS0lORyAxCnwgI2RlZmluZSBTSVpF T0ZfQ0hBUiAxCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfQ0hBUiAxCnwgI2RlZmluZSBTSVpF T0ZfU0hPUlQgMgp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX1NIT1JUIDIKfCAjZGVmaW5lIFNJ WkVPRl9JTlQgNAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0lOVCA0CnwgI2RlZmluZSBTSVpF T0ZfTE9ORyA0CnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfTE9ORyA0CnwgI2RlZmluZSBTSVpF T0ZfU0laRV9UIDQKfCAjZGVmaW5lIFNJWkVPRl9MT05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9G X1VOU0lHTkVEX0xPTkdfTE9ORyA4CnwgI2RlZmluZSBTSVpFT0ZfX19JTlQ2NCAwCnwgI2RlZmlu ZSBTSVpFT0ZfVU5TSUdORURfX19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0ZfVk9JRF9QIDQKfCAj ZGVmaW5lIFNJWkVPRl9JTlRQVFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfVUlOVFBUUl9UIDQKfCAj ZGVmaW5lIFNJWkVPRl9QVFJESUZGX1QgNAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2Rl ZmluZSBTSVpFT0ZfT0ZGX1QgOAp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBI QVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgU0laRU9GX0lOVE1BWF9UIDgKfCAjZGVmaW5lIFNU RENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIFRJTUVfV0lU SF9TWVNfVElNRSAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9J T19IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAx CnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfUFJPQ0VTU19IIDEKfCAj ZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9SRUdFWF9IIDEKfCAvKiBlbmQg Y29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN0ZGlvLmg+CnwgI2lmZGVmIEhBVkVfU1lTX1RZ UEVTX0gKfCAjIGluY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NZ U19TVEFUX0gKfCAjIGluY2x1ZGUgPHN5cy9zdGF0Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIFNURENf SEVBREVSUwp8ICMgaW5jbHVkZSA8c3RkbGliLmg+CnwgIyBpbmNsdWRlIDxzdGRkZWYuaD4KfCAj ZWxzZQp8ICMgaWZkZWYgSEFWRV9TVERMSUJfSAp8ICMgIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMg ZW5kaWYKfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdfSAp8ICMgaWYgIWRlZmluZWQgU1RE Q19IRUFERVJTICYmIGRlZmluZWQgSEFWRV9NRU1PUllfSAp8ICMgIGluY2x1ZGUgPG1lbW9yeS5o Pgp8ICMgZW5kaWYKfCAjIGluY2x1ZGUgPHN0cmluZy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZF X1NUUklOR1NfSAp8ICMgaW5jbHVkZSA8c3RyaW5ncy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZF X0lOVFRZUEVTX0gKfCAjIGluY2x1ZGUgPGludHR5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhB VkVfU1RESU5UX0gKfCAjIGluY2x1ZGUgPHN0ZGludC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZF X1VOSVNURF9ICnwgIyBpbmNsdWRlIDx1bmlzdGQuaD4KfCAjZW5kaWYKfCAjaW5jbHVkZSA8cnhw b3NpeC5oPgpjb25maWd1cmU6MzM4OTU6IHJlc3VsdDogbm8KY29uZmlndXJlOjMzODk5OiBjaGVj a2luZyByeHBvc2l4LmggcHJlc2VuY2UKY29uZmlndXJlOjMzOTE0OiBnY2MgLUUgIGNvbmZ0ZXN0 LmMKY29uZnRlc3QuYzo1NzoyMTogcnhwb3NpeC5oOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5 CmNvbmZpZ3VyZTozMzkyMDogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8 IC8qIGNvbmZkZWZzLmguICAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJndWlsZSIKfCAjZGVm aW5lIFBBQ0tBR0VfVEFSTkFNRSAiZ3VpbGUiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjEu OC40Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgImd1aWxlIDEuOC40Igp8ICNkZWZpbmUgUEFD S0FHRV9CVUdSRVBPUlQgImJ1Zy1ndWlsZUBnbnUub3JnIgp8ICNkZWZpbmUgU1REQ19IRUFERVJT IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9I IDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwg I2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVm aW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5l IEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEhBVkVf TElCTFRETCAxCnwgI2RlZmluZSBTQ01fV0FSTl9ERVBSRUNBVEVEX0RFRkFVTFQgInN1bW1hcnki CnwgI2RlZmluZSBHVUlMRV9VU0VfNjRfQ0FMTFMgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWCAxCnwg I2RlZmluZSBIQVZFX05FVFdPUktJTkcgMQp8ICNkZWZpbmUgU0laRU9GX0NIQVIgMQp8ICNkZWZp bmUgU0laRU9GX1VOU0lHTkVEX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1NIT1JUIDIKfCAjZGVm aW5lIFNJWkVPRl9VTlNJR05FRF9TSE9SVCAyCnwgI2RlZmluZSBTSVpFT0ZfSU5UIDQKfCAjZGVm aW5lIFNJWkVPRl9VTlNJR05FRF9JTlQgNAp8ICNkZWZpbmUgU0laRU9GX0xPTkcgNAp8ICNkZWZp bmUgU0laRU9GX1VOU0lHTkVEX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2Rl ZmluZSBTSVpFT0ZfTE9OR19MT05HIDgKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9MT05HX0xP TkcgOAp8ICNkZWZpbmUgU0laRU9GX19fSU5UNjQgMAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVE X19fSU5UNjQgMAp8ICNkZWZpbmUgU0laRU9GX1ZPSURfUCA0CnwgI2RlZmluZSBTSVpFT0ZfSU5U UFRSX1QgNAp8ICNkZWZpbmUgU0laRU9GX1VJTlRQVFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfUFRS RElGRl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9TSVpFX1QgNAp8ICNkZWZpbmUgU0laRU9GX09GRl9U IDgKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEK fCAjZGVmaW5lIFNJWkVPRl9JTlRNQVhfVCA4CnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNk ZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNk ZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU9fSCAxCnwgI2RlZmluZSBI QVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9N RU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1BST0NFU1NfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklO R19IIDEKfCAjZGVmaW5lIEhBVkVfUkVHRVhfSCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8 ICNpbmNsdWRlIDxyeHBvc2l4Lmg+CmNvbmZpZ3VyZTozMzkzNDogcmVzdWx0OiBubwpjb25maWd1 cmU6MzM5Njc6IGNoZWNraW5nIGZvciByeHBvc2l4LmgKY29uZmlndXJlOjMzOTc1OiByZXN1bHQ6 IG5vCmNvbmZpZ3VyZTozMzg1ODogY2hlY2tpbmcgcngvcnhwb3NpeC5oIHVzYWJpbGl0eQpjb25m aWd1cmU6MzM4NzU6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6OTA6 MjQ6IHJ4L3J4cG9zaXguaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpjb25maWd1cmU6MzM4 ODE6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5o LiAgKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiZ3VpbGUiCnwgI2RlZmluZSBQQUNLQUdFX1RB Uk5BTUUgImd1aWxlIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIxLjguNCIKfCAjZGVmaW5l IFBBQ0tBR0VfU1RSSU5HICJndWlsZSAxLjguNCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JU ICJidWctZ3VpbGVAZ251Lm9yZyIKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBI QVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBI QVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9N RU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZ UEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9I IDEKfCAjZGVmaW5lIEhBVkVfRExGQ05fSCAxCnwgI2RlZmluZSBIQVZFX0xJQkxUREwgMQp8ICNk ZWZpbmUgU0NNX1dBUk5fREVQUkVDQVRFRF9ERUZBVUxUICJzdW1tYXJ5Igp8ICNkZWZpbmUgR1VJ TEVfVVNFXzY0X0NBTExTIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVggMQp8ICNkZWZpbmUgSEFWRV9O RVRXT1JLSU5HIDEKfCAjZGVmaW5lIFNJWkVPRl9DSEFSIDEKfCAjZGVmaW5lIFNJWkVPRl9VTlNJ R05FRF9DSEFSIDEKfCAjZGVmaW5lIFNJWkVPRl9TSE9SVCAyCnwgI2RlZmluZSBTSVpFT0ZfVU5T SUdORURfU0hPUlQgMgp8ICNkZWZpbmUgU0laRU9GX0lOVCA0CnwgI2RlZmluZSBTSVpFT0ZfVU5T SUdORURfSU5UIDQKfCAjZGVmaW5lIFNJWkVPRl9MT05HIDQKfCAjZGVmaW5lIFNJWkVPRl9VTlNJ R05FRF9MT05HIDQKfCAjZGVmaW5lIFNJWkVPRl9TSVpFX1QgNAp8ICNkZWZpbmUgU0laRU9GX0xP TkdfTE9ORyA4CnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfTE9OR19MT05HIDgKfCAjZGVmaW5l IFNJWkVPRl9fX0lOVDY0IDAKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9fX0lOVDY0IDAKfCAj ZGVmaW5lIFNJWkVPRl9WT0lEX1AgNAp8ICNkZWZpbmUgU0laRU9GX0lOVFBUUl9UIDQKfCAjZGVm aW5lIFNJWkVPRl9VSU5UUFRSX1QgNAp8ICNkZWZpbmUgU0laRU9GX1BUUkRJRkZfVCA0CnwgI2Rl ZmluZSBTSVpFT0ZfU0laRV9UIDQKfCAjZGVmaW5lIFNJWkVPRl9PRkZfVCA4CnwgI2RlZmluZSBI QVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBTSVpF T0ZfSU5UTUFYX1QgOAp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfRElS RU5UX0ggMQp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX0lPX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAx CnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNk ZWZpbmUgSEFWRV9QUk9DRVNTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmlu ZSBIQVZFX1JFR0VYX0ggMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8c3Rk aW8uaD4KfCAjaWZkZWYgSEFWRV9TWVNfVFlQRVNfSAp8ICMgaW5jbHVkZSA8c3lzL3R5cGVzLmg+ CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1lTX1NUQVRfSAp8ICMgaW5jbHVkZSA8c3lzL3N0YXQu aD4KfCAjZW5kaWYKfCAjaWZkZWYgU1REQ19IRUFERVJTCnwgIyBpbmNsdWRlIDxzdGRsaWIuaD4K fCAjIGluY2x1ZGUgPHN0ZGRlZi5oPgp8ICNlbHNlCnwgIyBpZmRlZiBIQVZFX1NURExJQl9ICnwg IyAgaW5jbHVkZSA8c3RkbGliLmg+CnwgIyBlbmRpZgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NU UklOR19ICnwgIyBpZiAhZGVmaW5lZCBTVERDX0hFQURFUlMgJiYgZGVmaW5lZCBIQVZFX01FTU9S WV9ICnwgIyAgaW5jbHVkZSA8bWVtb3J5Lmg+CnwgIyBlbmRpZgp8ICMgaW5jbHVkZSA8c3RyaW5n Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RSSU5HU19ICnwgIyBpbmNsdWRlIDxzdHJpbmdz Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfSU5UVFlQRVNfSAp8ICMgaW5jbHVkZSA8aW50dHlw ZXMuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVERJTlRfSAp8ICMgaW5jbHVkZSA8c3RkaW50 Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfVU5JU1REX0gKfCAjIGluY2x1ZGUgPHVuaXN0ZC5o Pgp8ICNlbmRpZgp8ICNpbmNsdWRlIDxyeC9yeHBvc2l4Lmg+CmNvbmZpZ3VyZTozMzg5NTogcmVz dWx0OiBubwpjb25maWd1cmU6MzM4OTk6IGNoZWNraW5nIHJ4L3J4cG9zaXguaCBwcmVzZW5jZQpj b25maWd1cmU6MzM5MTQ6IGdjYyAtRSAgY29uZnRlc3QuYwpjb25mdGVzdC5jOjU3OjI0OiByeC9y eHBvc2l4Lmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKY29uZmlndXJlOjMzOTIwOiAkPyA9 IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwg I2RlZmluZSBQQUNLQUdFX05BTUUgImd1aWxlIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJn dWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMS44LjQiCnwgI2RlZmluZSBQQUNLQUdF X1NUUklORyAiZ3VpbGUgMS44LjQiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWd1 aWxlQGdudS5vcmciCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNf VFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERM SUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0gg MQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEK fCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2Rl ZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgSEFWRV9MSUJMVERMIDEKfCAjZGVmaW5lIFND TV9XQVJOX0RFUFJFQ0FURURfREVGQVVMVCAic3VtbWFyeSIKfCAjZGVmaW5lIEdVSUxFX1VTRV82 NF9DQUxMUyAxCnwgI2RlZmluZSBIQVZFX1BPU0lYIDEKfCAjZGVmaW5lIEhBVkVfTkVUV09SS0lO RyAxCnwgI2RlZmluZSBTSVpFT0ZfQ0hBUiAxCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfQ0hB UiAxCnwgI2RlZmluZSBTSVpFT0ZfU0hPUlQgMgp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX1NI T1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9JTlQgNAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0lO VCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA0CnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfTE9O RyA0CnwgI2RlZmluZSBTSVpFT0ZfU0laRV9UIDQKfCAjZGVmaW5lIFNJWkVPRl9MT05HX0xPTkcg OAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xPTkdfTE9ORyA4CnwgI2RlZmluZSBTSVpFT0Zf X19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfX19JTlQ2NCAwCnwgI2RlZmluZSBT SVpFT0ZfVk9JRF9QIDQKfCAjZGVmaW5lIFNJWkVPRl9JTlRQVFJfVCA0CnwgI2RlZmluZSBTSVpF T0ZfVUlOVFBUUl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9QVFJESUZGX1QgNAp8ICNkZWZpbmUgU0la RU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfT0ZGX1QgOAp8ICNkZWZpbmUgSEFWRV9TVERJ TlRfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgU0laRU9GX0lOVE1B WF9UIDgKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEK fCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0gg MQp8ICNkZWZpbmUgSEFWRV9JT19IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZp bmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhB VkVfUFJPQ0VTU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9S RUdFWF9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHJ4L3J4cG9zaXgu aD4KY29uZmlndXJlOjMzOTM0OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTozMzk2NzogY2hlY2tpbmcg Zm9yIHJ4L3J4cG9zaXguaApjb25maWd1cmU6MzM5NzU6IHJlc3VsdDogbm8KY29uZmlndXJlOjMz ODU4OiBjaGVja2luZyBzeXMvZGlyLmggdXNhYmlsaXR5CmNvbmZpZ3VyZTozMzg3NTogZ2NjIC1j IC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzo5MDoyMTogc3lzL2Rpci5oOiBObyBz dWNoIGZpbGUgb3IgZGlyZWN0b3J5CmNvbmZpZ3VyZTozMzg4MTogJD8gPSAxCmNvbmZpZ3VyZTog ZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8ICNkZWZpbmUgUEFDS0FH RV9OQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZ3VpbGUiCnwgI2RlZmlu ZSBQQUNLQUdFX1ZFUlNJT04gIjEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgImd1aWxl IDEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1ndWlsZUBnbnUub3JnIgp8 ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZp bmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhB VkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZF X1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZD Tl9IIDEKfCAjZGVmaW5lIEhBVkVfTElCTFRETCAxCnwgI2RlZmluZSBTQ01fV0FSTl9ERVBSRUNB VEVEX0RFRkFVTFQgInN1bW1hcnkiCnwgI2RlZmluZSBHVUlMRV9VU0VfNjRfQ0FMTFMgMQp8ICNk ZWZpbmUgSEFWRV9QT1NJWCAxCnwgI2RlZmluZSBIQVZFX05FVFdPUktJTkcgMQp8ICNkZWZpbmUg U0laRU9GX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0NIQVIgMQp8ICNkZWZpbmUg U0laRU9GX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9TSE9SVCAyCnwgI2RlZmlu ZSBTSVpFT0ZfSU5UIDQKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9JTlQgNAp8ICNkZWZpbmUg U0laRU9GX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xPTkcgNAp8ICNkZWZpbmUg U0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9OR19MT05HIDgKfCAjZGVmaW5lIFNJ WkVPRl9VTlNJR05FRF9MT05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX19fSU5UNjQgMAp8ICNk ZWZpbmUgU0laRU9GX1VOU0lHTkVEX19fSU5UNjQgMAp8ICNkZWZpbmUgU0laRU9GX1ZPSURfUCA0 CnwgI2RlZmluZSBTSVpFT0ZfSU5UUFRSX1QgNAp8ICNkZWZpbmUgU0laRU9GX1VJTlRQVFJfVCA0 CnwgI2RlZmluZSBTSVpFT0ZfUFRSRElGRl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9TSVpFX1QgNAp8 ICNkZWZpbmUgU0laRU9GX09GRl9UIDgKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZp bmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIFNJWkVPRl9JTlRNQVhfVCA4CnwgI2RlZmlu ZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBUSU1F X1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhB VkVfSU9fSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9D X0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1BST0NFU1NfSCAx CnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfUkVHRVhfSCAxCnwgLyog ZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxzdGRpby5oPgp8ICNpZmRlZiBIQVZFX1NZ U19UWVBFU19ICnwgIyBpbmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFW RV9TWVNfU1RBVF9ICnwgIyBpbmNsdWRlIDxzeXMvc3RhdC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBT VERDX0hFQURFUlMKfCAjIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgaW5jbHVkZSA8c3RkZGVmLmg+ CnwgI2Vsc2UKfCAjIGlmZGVmIEhBVkVfU1RETElCX0gKfCAjICBpbmNsdWRlIDxzdGRsaWIuaD4K fCAjIGVuZGlmCnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RSSU5HX0gKfCAjIGlmICFkZWZpbmVk IFNURENfSEVBREVSUyAmJiBkZWZpbmVkIEhBVkVfTUVNT1JZX0gKfCAjICBpbmNsdWRlIDxtZW1v cnkuaD4KfCAjIGVuZGlmCnwgIyBpbmNsdWRlIDxzdHJpbmcuaD4KfCAjZW5kaWYKfCAjaWZkZWYg SEFWRV9TVFJJTkdTX0gKfCAjIGluY2x1ZGUgPHN0cmluZ3MuaD4KfCAjZW5kaWYKfCAjaWZkZWYg SEFWRV9JTlRUWVBFU19ICnwgIyBpbmNsdWRlIDxpbnR0eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRl ZiBIQVZFX1NURElOVF9ICnwgIyBpbmNsdWRlIDxzdGRpbnQuaD4KfCAjZW5kaWYKfCAjaWZkZWYg SEFWRV9VTklTVERfSAp8ICMgaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgI2luY2x1ZGUg PHN5cy9kaXIuaD4KY29uZmlndXJlOjMzODk1OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTozMzg5OTog Y2hlY2tpbmcgc3lzL2Rpci5oIHByZXNlbmNlCmNvbmZpZ3VyZTozMzkxNDogZ2NjIC1FICBjb25m dGVzdC5jCmNvbmZ0ZXN0LmM6NTc6MjE6IHN5cy9kaXIuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVj dG9yeQpjb25maWd1cmU6MzM5MjA6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdh czoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiZ3VpbGUiCnwg I2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImd1aWxlIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9O ICIxLjguNCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJndWlsZSAxLjguNCIKfCAjZGVmaW5l IFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ3VpbGVAZ251Lm9yZyIKfCAjZGVmaW5lIFNURENfSEVB REVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NU QVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0gg MQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwg I2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2Rl ZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRExGQ05fSCAxCnwgI2RlZmluZSBI QVZFX0xJQkxUREwgMQp8ICNkZWZpbmUgU0NNX1dBUk5fREVQUkVDQVRFRF9ERUZBVUxUICJzdW1t YXJ5Igp8ICNkZWZpbmUgR1VJTEVfVVNFXzY0X0NBTExTIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVgg MQp8ICNkZWZpbmUgSEFWRV9ORVRXT1JLSU5HIDEKfCAjZGVmaW5lIFNJWkVPRl9DSEFSIDEKfCAj ZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9DSEFSIDEKfCAjZGVmaW5lIFNJWkVPRl9TSE9SVCAyCnwg I2RlZmluZSBTSVpFT0ZfVU5TSUdORURfU0hPUlQgMgp8ICNkZWZpbmUgU0laRU9GX0lOVCA0Cnwg I2RlZmluZSBTSVpFT0ZfVU5TSUdORURfSU5UIDQKfCAjZGVmaW5lIFNJWkVPRl9MT05HIDQKfCAj ZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9MT05HIDQKfCAjZGVmaW5lIFNJWkVPRl9TSVpFX1QgNAp8 ICNkZWZpbmUgU0laRU9GX0xPTkdfTE9ORyA4CnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfTE9O R19MT05HIDgKfCAjZGVmaW5lIFNJWkVPRl9fX0lOVDY0IDAKfCAjZGVmaW5lIFNJWkVPRl9VTlNJ R05FRF9fX0lOVDY0IDAKfCAjZGVmaW5lIFNJWkVPRl9WT0lEX1AgNAp8ICNkZWZpbmUgU0laRU9G X0lOVFBUUl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9VSU5UUFRSX1QgNAp8ICNkZWZpbmUgU0laRU9G X1BUUkRJRkZfVCA0CnwgI2RlZmluZSBTSVpFT0ZfU0laRV9UIDQKfCAjZGVmaW5lIFNJWkVPRl9P RkZfVCA4CnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNf SCAxCnwgI2RlZmluZSBTSVpFT0ZfSU5UTUFYX1QgOAp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEK fCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX0lPX0ggMQp8ICNkZWZp bmUgSEFWRV9MSU1JVFNfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhB VkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9QUk9DRVNTX0ggMQp8ICNkZWZpbmUgSEFWRV9T VFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX1JFR0VYX0ggMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAg Ki8KfCAjaW5jbHVkZSA8c3lzL2Rpci5oPgpjb25maWd1cmU6MzM5MzQ6IHJlc3VsdDogbm8KY29u ZmlndXJlOjMzOTY3OiBjaGVja2luZyBmb3Igc3lzL2Rpci5oCmNvbmZpZ3VyZTozMzk3NTogcmVz dWx0OiBubwpjb25maWd1cmU6MzM4NTg6IGNoZWNraW5nIHN5cy9pb2N0bC5oIHVzYWJpbGl0eQpj b25maWd1cmU6MzM4NzU6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToz Mzg4MTogJD8gPSAwCmNvbmZpZ3VyZTozMzg5NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjMzODk5 OiBjaGVja2luZyBzeXMvaW9jdGwuaCBwcmVzZW5jZQpjb25maWd1cmU6MzM5MTQ6IGdjYyAtRSAg Y29uZnRlc3QuYwpjb25maWd1cmU6MzM5MjA6ICQ/ID0gMApjb25maWd1cmU6MzM5MzQ6IHJlc3Vs dDogeWVzCmNvbmZpZ3VyZTozMzk2NzogY2hlY2tpbmcgZm9yIHN5cy9pb2N0bC5oCmNvbmZpZ3Vy ZTozMzk3NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjMzODU4OiBjaGVja2luZyBzeXMvc2VsZWN0 LmggdXNhYmlsaXR5CmNvbmZpZ3VyZTozMzg3NTogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+ JjUKY29uZmlndXJlOjMzODgxOiAkPyA9IDAKY29uZmlndXJlOjMzODk1OiByZXN1bHQ6IHllcwpj b25maWd1cmU6MzM4OTk6IGNoZWNraW5nIHN5cy9zZWxlY3QuaCBwcmVzZW5jZQpjb25maWd1cmU6 MzM5MTQ6IGdjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6MzM5MjA6ICQ/ID0gMApjb25maWd1 cmU6MzM5MzQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMzk2NzogY2hlY2tpbmcgZm9yIHN5cy9z ZWxlY3QuaApjb25maWd1cmU6MzM5NzU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMzg1ODogY2hl Y2tpbmcgc3lzL3RpbWUuaCB1c2FiaWxpdHkKY29uZmlndXJlOjMzODc1OiBnY2MgLWMgLWcgLU8y ICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzM4ODE6ICQ/ID0gMApjb25maWd1cmU6MzM4OTU6 IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMzg5OTogY2hlY2tpbmcgc3lzL3RpbWUuaCBwcmVzZW5j ZQpjb25maWd1cmU6MzM5MTQ6IGdjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6MzM5MjA6ICQ/ ID0gMApjb25maWd1cmU6MzM5MzQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMzk2NzogY2hlY2tp bmcgZm9yIHN5cy90aW1lLmgKY29uZmlndXJlOjMzOTc1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6 MzM4NTg6IGNoZWNraW5nIHN5cy90aW1lYi5oIHVzYWJpbGl0eQpjb25maWd1cmU6MzM4NzU6IGdj YyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozMzg4MTogJD8gPSAwCmNvbmZp Z3VyZTozMzg5NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjMzODk5OiBjaGVja2luZyBzeXMvdGlt ZWIuaCBwcmVzZW5jZQpjb25maWd1cmU6MzM5MTQ6IGdjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1 cmU6MzM5MjA6ICQ/ID0gMApjb25maWd1cmU6MzM5MzQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToz Mzk2NzogY2hlY2tpbmcgZm9yIHN5cy90aW1lYi5oCmNvbmZpZ3VyZTozMzk3NTogcmVzdWx0OiB5 ZXMKY29uZmlndXJlOjMzODU4OiBjaGVja2luZyBzeXMvdGltZXMuaCB1c2FiaWxpdHkKY29uZmln dXJlOjMzODc1OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzM4ODE6 ICQ/ID0gMApjb25maWd1cmU6MzM4OTU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMzg5OTogY2hl Y2tpbmcgc3lzL3RpbWVzLmggcHJlc2VuY2UKY29uZmlndXJlOjMzOTE0OiBnY2MgLUUgIGNvbmZ0 ZXN0LmMKY29uZmlndXJlOjMzOTIwOiAkPyA9IDAKY29uZmlndXJlOjMzOTM0OiByZXN1bHQ6IHll cwpjb25maWd1cmU6MzM5Njc6IGNoZWNraW5nIGZvciBzeXMvdGltZXMuaApjb25maWd1cmU6MzM5 NzU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMzg1ODogY2hlY2tpbmcgc3lzL3N0ZHR5cGVzLmgg dXNhYmlsaXR5CmNvbmZpZ3VyZTozMzg3NTogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUK Y29uZnRlc3QuYzo5NToyNjogc3lzL3N0ZHR5cGVzLmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3Rv cnkKY29uZmlndXJlOjMzODgxOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6 CnwgLyogY29uZmRlZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgImd1aWxlIgp8ICNk ZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAi MS44LjQiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiZ3VpbGUgMS44LjQiCnwgI2RlZmluZSBQ QUNLQUdFX0JVR1JFUE9SVCAiYnVnLWd1aWxlQGdudS5vcmciCnwgI2RlZmluZSBTVERDX0hFQURF UlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFU X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEK fCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNk ZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZp bmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgSEFW RV9MSUJMVERMIDEKfCAjZGVmaW5lIFNDTV9XQVJOX0RFUFJFQ0FURURfREVGQVVMVCAic3VtbWFy eSIKfCAjZGVmaW5lIEdVSUxFX1VTRV82NF9DQUxMUyAxCnwgI2RlZmluZSBIQVZFX1BPU0lYIDEK fCAjZGVmaW5lIEhBVkVfTkVUV09SS0lORyAxCnwgI2RlZmluZSBTSVpFT0ZfQ0hBUiAxCnwgI2Rl ZmluZSBTSVpFT0ZfVU5TSUdORURfQ0hBUiAxCnwgI2RlZmluZSBTSVpFT0ZfU0hPUlQgMgp8ICNk ZWZpbmUgU0laRU9GX1VOU0lHTkVEX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9JTlQgNAp8ICNk ZWZpbmUgU0laRU9GX1VOU0lHTkVEX0lOVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA0CnwgI2Rl ZmluZSBTSVpFT0ZfVU5TSUdORURfTE9ORyA0CnwgI2RlZmluZSBTSVpFT0ZfU0laRV9UIDQKfCAj ZGVmaW5lIFNJWkVPRl9MT05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xPTkdf TE9ORyA4CnwgI2RlZmluZSBTSVpFT0ZfX19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdO RURfX19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0ZfVk9JRF9QIDQKfCAjZGVmaW5lIFNJWkVPRl9J TlRQVFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfVUlOVFBUUl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9Q VFJESUZGX1QgNAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfT0ZG X1QgOAp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0gg MQp8ICNkZWZpbmUgU0laRU9GX0lOVE1BWF9UIDgKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwg I2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwg I2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9JT19IIDEKfCAjZGVmaW5l IEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZF X01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfUFJPQ0VTU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RS SU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9SRUdFWF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lPQ1RM X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElN RV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVCX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElN RVNfSCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxzdGRpby5oPgp8ICNp ZmRlZiBIQVZFX1NZU19UWVBFU19ICnwgIyBpbmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAjZW5kaWYK fCAjaWZkZWYgSEFWRV9TWVNfU1RBVF9ICnwgIyBpbmNsdWRlIDxzeXMvc3RhdC5oPgp8ICNlbmRp Zgp8ICNpZmRlZiBTVERDX0hFQURFUlMKfCAjIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgaW5jbHVk ZSA8c3RkZGVmLmg+CnwgI2Vsc2UKfCAjIGlmZGVmIEhBVkVfU1RETElCX0gKfCAjICBpbmNsdWRl IDxzdGRsaWIuaD4KfCAjIGVuZGlmCnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RSSU5HX0gKfCAj IGlmICFkZWZpbmVkIFNURENfSEVBREVSUyAmJiBkZWZpbmVkIEhBVkVfTUVNT1JZX0gKfCAjICBp bmNsdWRlIDxtZW1vcnkuaD4KfCAjIGVuZGlmCnwgIyBpbmNsdWRlIDxzdHJpbmcuaD4KfCAjZW5k aWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdTX0gKfCAjIGluY2x1ZGUgPHN0cmluZ3MuaD4KfCAjZW5k aWYKfCAjaWZkZWYgSEFWRV9JTlRUWVBFU19ICnwgIyBpbmNsdWRlIDxpbnR0eXBlcy5oPgp8ICNl bmRpZgp8ICNpZmRlZiBIQVZFX1NURElOVF9ICnwgIyBpbmNsdWRlIDxzdGRpbnQuaD4KfCAjZW5k aWYKfCAjaWZkZWYgSEFWRV9VTklTVERfSAp8ICMgaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlm CnwgI2luY2x1ZGUgPHN5cy9zdGR0eXBlcy5oPgpjb25maWd1cmU6MzM4OTU6IHJlc3VsdDogbm8K Y29uZmlndXJlOjMzODk5OiBjaGVja2luZyBzeXMvc3RkdHlwZXMuaCBwcmVzZW5jZQpjb25maWd1 cmU6MzM5MTQ6IGdjYyAtRSAgY29uZnRlc3QuYwpjb25mdGVzdC5jOjYyOjI2OiBzeXMvc3RkdHlw ZXMuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpjb25maWd1cmU6MzM5MjA6ICQ/ID0gMQpj b25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAjZGVm aW5lIFBBQ0tBR0VfTkFNRSAiZ3VpbGUiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImd1aWxl Igp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIxLjguNCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RS SU5HICJndWlsZSAxLjguNCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ3VpbGVA Z251Lm9yZyIKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBF U19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9I IDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwg I2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5l IEhBVkVfRExGQ05fSCAxCnwgI2RlZmluZSBIQVZFX0xJQkxUREwgMQp8ICNkZWZpbmUgU0NNX1dB Uk5fREVQUkVDQVRFRF9ERUZBVUxUICJzdW1tYXJ5Igp8ICNkZWZpbmUgR1VJTEVfVVNFXzY0X0NB TExTIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVggMQp8ICNkZWZpbmUgSEFWRV9ORVRXT1JLSU5HIDEK fCAjZGVmaW5lIFNJWkVPRl9DSEFSIDEKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9DSEFSIDEK fCAjZGVmaW5lIFNJWkVPRl9TSE9SVCAyCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfU0hPUlQg Mgp8ICNkZWZpbmUgU0laRU9GX0lOVCA0CnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfSU5UIDQK fCAjZGVmaW5lIFNJWkVPRl9MT05HIDQKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9MT05HIDQK fCAjZGVmaW5lIFNJWkVPRl9TSVpFX1QgNAp8ICNkZWZpbmUgU0laRU9GX0xPTkdfTE9ORyA4Cnwg I2RlZmluZSBTSVpFT0ZfVU5TSUdORURfTE9OR19MT05HIDgKfCAjZGVmaW5lIFNJWkVPRl9fX0lO VDY0IDAKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9fX0lOVDY0IDAKfCAjZGVmaW5lIFNJWkVP Rl9WT0lEX1AgNAp8ICNkZWZpbmUgU0laRU9GX0lOVFBUUl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9V SU5UUFRSX1QgNAp8ICNkZWZpbmUgU0laRU9GX1BUUkRJRkZfVCA0CnwgI2RlZmluZSBTSVpFT0Zf U0laRV9UIDQKfCAjZGVmaW5lIFNJWkVPRl9PRkZfVCA4CnwgI2RlZmluZSBIQVZFX1NURElOVF9I IDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBTSVpFT0ZfSU5UTUFYX1Qg OAp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNk ZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwg I2RlZmluZSBIQVZFX0lPX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2RlZmluZSBI QVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9Q Uk9DRVNTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX1JFR0VY X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfSU9DVExfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxF Q1RfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElN RUJfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FU19IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4g ICovCnwgI2luY2x1ZGUgPHN5cy9zdGR0eXBlcy5oPgpjb25maWd1cmU6MzM5MzQ6IHJlc3VsdDog bm8KY29uZmlndXJlOjMzOTY3OiBjaGVja2luZyBmb3Igc3lzL3N0ZHR5cGVzLmgKY29uZmlndXJl OjMzOTc1OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTozMzg0ODogY2hlY2tpbmcgZm9yIHN5cy90eXBl cy5oCmNvbmZpZ3VyZTozMzg1NDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjMzODU4OiBjaGVja2lu ZyBzeXMvdXRpbWUuaCB1c2FiaWxpdHkKY29uZmlndXJlOjMzODc1OiBnY2MgLWMgLWcgLU8yICBj b25mdGVzdC5jID4mNQpjb25maWd1cmU6MzM4ODE6ICQ/ID0gMApjb25maWd1cmU6MzM4OTU6IHJl c3VsdDogeWVzCmNvbmZpZ3VyZTozMzg5OTogY2hlY2tpbmcgc3lzL3V0aW1lLmggcHJlc2VuY2UK Y29uZmlndXJlOjMzOTE0OiBnY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjMzOTIwOiAkPyA9 IDAKY29uZmlndXJlOjMzOTM0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzM5Njc6IGNoZWNraW5n IGZvciBzeXMvdXRpbWUuaApjb25maWd1cmU6MzM5NzU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToz Mzg1ODogY2hlY2tpbmcgdGltZS5oIHVzYWJpbGl0eQpjb25maWd1cmU6MzM4NzU6IGdjYyAtYyAt ZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozMzg4MTogJD8gPSAwCmNvbmZpZ3VyZToz Mzg5NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjMzODk5OiBjaGVja2luZyB0aW1lLmggcHJlc2Vu Y2UKY29uZmlndXJlOjMzOTE0OiBnY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjMzOTIwOiAk PyA9IDAKY29uZmlndXJlOjMzOTM0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzM5Njc6IGNoZWNr aW5nIGZvciB0aW1lLmgKY29uZmlndXJlOjMzOTc1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzM4 NDg6IGNoZWNraW5nIGZvciB1bmlzdGQuaApjb25maWd1cmU6MzM4NTQ6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZTozMzg1ODogY2hlY2tpbmcgdXRpbWUuaCB1c2FiaWxpdHkKY29uZmlndXJlOjMzODc1 OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzM4ODE6ICQ/ID0gMApj b25maWd1cmU6MzM4OTU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMzg5OTogY2hlY2tpbmcgdXRp bWUuaCBwcmVzZW5jZQpjb25maWd1cmU6MzM5MTQ6IGdjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1 cmU6MzM5MjA6ICQ/ID0gMApjb25maWd1cmU6MzM5MzQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToz Mzk2NzogY2hlY2tpbmcgZm9yIHV0aW1lLmgKY29uZmlndXJlOjMzOTc1OiByZXN1bHQ6IHllcwpj b25maWd1cmU6MzM4NTg6IGNoZWNraW5nIHB3ZC5oIHVzYWJpbGl0eQpjb25maWd1cmU6MzM4NzU6 IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozMzg4MTogJD8gPSAwCmNv bmZpZ3VyZTozMzg5NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjMzODk5OiBjaGVja2luZyBwd2Qu aCBwcmVzZW5jZQpjb25maWd1cmU6MzM5MTQ6IGdjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6 MzM5MjA6ICQ/ID0gMApjb25maWd1cmU6MzM5MzQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMzk2 NzogY2hlY2tpbmcgZm9yIHB3ZC5oCmNvbmZpZ3VyZTozMzk3NTogcmVzdWx0OiB5ZXMKY29uZmln dXJlOjMzODU4OiBjaGVja2luZyBncnAuaCB1c2FiaWxpdHkKY29uZmlndXJlOjMzODc1OiBnY2Mg LWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzM4ODE6ICQ/ID0gMApjb25maWd1 cmU6MzM4OTU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMzg5OTogY2hlY2tpbmcgZ3JwLmggcHJl c2VuY2UKY29uZmlndXJlOjMzOTE0OiBnY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjMzOTIw OiAkPyA9IDAKY29uZmlndXJlOjMzOTM0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzM5Njc6IGNo ZWNraW5nIGZvciBncnAuaApjb25maWd1cmU6MzM5NzU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToz Mzg1ODogY2hlY2tpbmcgc3lzL3V0c25hbWUuaCB1c2FiaWxpdHkKY29uZmlndXJlOjMzODc1OiBn Y2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzM4ODE6ICQ/ID0gMApjb25m aWd1cmU6MzM4OTU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMzg5OTogY2hlY2tpbmcgc3lzL3V0 c25hbWUuaCBwcmVzZW5jZQpjb25maWd1cmU6MzM5MTQ6IGdjYyAtRSAgY29uZnRlc3QuYwpjb25m aWd1cmU6MzM5MjA6ICQ/ID0gMApjb25maWd1cmU6MzM5MzQ6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy ZTozMzk2NzogY2hlY2tpbmcgZm9yIHN5cy91dHNuYW1lLmgKY29uZmlndXJlOjMzOTc1OiByZXN1 bHQ6IHllcwpjb25maWd1cmU6MzM4NTg6IGNoZWNraW5nIGRpcmVjdC5oIHVzYWJpbGl0eQpjb25m aWd1cmU6MzM4NzU6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6MTAz OjIwOiBkaXJlY3QuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpjb25maWd1cmU6MzM4ODE6 ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAg Ki8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiZ3VpbGUiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5B TUUgImd1aWxlIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIxLjguNCIKfCAjZGVmaW5lIFBB Q0tBR0VfU1RSSU5HICJndWlsZSAxLjguNCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJi dWctZ3VpbGVAZ251Lm9yZyIKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZF X1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZF X1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1P UllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVT X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEK fCAjZGVmaW5lIEhBVkVfRExGQ05fSCAxCnwgI2RlZmluZSBIQVZFX0xJQkxUREwgMQp8ICNkZWZp bmUgU0NNX1dBUk5fREVQUkVDQVRFRF9ERUZBVUxUICJzdW1tYXJ5Igp8ICNkZWZpbmUgR1VJTEVf VVNFXzY0X0NBTExTIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVggMQp8ICNkZWZpbmUgSEFWRV9ORVRX T1JLSU5HIDEKfCAjZGVmaW5lIFNJWkVPRl9DSEFSIDEKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05F RF9DSEFSIDEKfCAjZGVmaW5lIFNJWkVPRl9TSE9SVCAyCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdO RURfU0hPUlQgMgp8ICNkZWZpbmUgU0laRU9GX0lOVCA0CnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdO RURfSU5UIDQKfCAjZGVmaW5lIFNJWkVPRl9MT05HIDQKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05F RF9MT05HIDQKfCAjZGVmaW5lIFNJWkVPRl9TSVpFX1QgNAp8ICNkZWZpbmUgU0laRU9GX0xPTkdf TE9ORyA4CnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfTE9OR19MT05HIDgKfCAjZGVmaW5lIFNJ WkVPRl9fX0lOVDY0IDAKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9fX0lOVDY0IDAKfCAjZGVm aW5lIFNJWkVPRl9WT0lEX1AgNAp8ICNkZWZpbmUgU0laRU9GX0lOVFBUUl9UIDQKfCAjZGVmaW5l IFNJWkVPRl9VSU5UUFRSX1QgNAp8ICNkZWZpbmUgU0laRU9GX1BUUkRJRkZfVCA0CnwgI2RlZmlu ZSBTSVpFT0ZfU0laRV9UIDQKfCAjZGVmaW5lIFNJWkVPRl9PRkZfVCA4CnwgI2RlZmluZSBIQVZF X1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBTSVpFT0Zf SU5UTUFYX1QgOAp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5U X0ggMQp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dB SVRfSCAxCnwgI2RlZmluZSBIQVZFX0lPX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwg I2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZp bmUgSEFWRV9QUk9DRVNTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBI QVZFX1JFR0VYX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfSU9DVExfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfVElNRUJfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FU19IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRJTUVfSCAxCnwgI2RlZmluZSBI QVZFX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRJ TUVfSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfR1JQX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2lu Y2x1ZGUgPHN0ZGlvLmg+CnwgI2lmZGVmIEhBVkVfU1lTX1RZUEVTX0gKfCAjIGluY2x1ZGUgPHN5 cy90eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NZU19TVEFUX0gKfCAjIGluY2x1ZGUg PHN5cy9zdGF0Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIFNURENfSEVBREVSUwp8ICMgaW5jbHVkZSA8 c3RkbGliLmg+CnwgIyBpbmNsdWRlIDxzdGRkZWYuaD4KfCAjZWxzZQp8ICMgaWZkZWYgSEFWRV9T VERMSUJfSAp8ICMgIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgZW5kaWYKfCAjZW5kaWYKfCAjaWZk ZWYgSEFWRV9TVFJJTkdfSAp8ICMgaWYgIWRlZmluZWQgU1REQ19IRUFERVJTICYmIGRlZmluZWQg SEFWRV9NRU1PUllfSAp8ICMgIGluY2x1ZGUgPG1lbW9yeS5oPgp8ICMgZW5kaWYKfCAjIGluY2x1 ZGUgPHN0cmluZy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR1NfSAp8ICMgaW5jbHVk ZSA8c3RyaW5ncy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX0lOVFRZUEVTX0gKfCAjIGluY2x1 ZGUgPGludHR5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RESU5UX0gKfCAjIGluY2x1 ZGUgPHN0ZGludC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1VOSVNURF9ICnwgIyBpbmNsdWRl IDx1bmlzdGQuaD4KfCAjZW5kaWYKfCAjaW5jbHVkZSA8ZGlyZWN0Lmg+CmNvbmZpZ3VyZTozMzg5 NTogcmVzdWx0OiBubwpjb25maWd1cmU6MzM4OTk6IGNoZWNraW5nIGRpcmVjdC5oIHByZXNlbmNl CmNvbmZpZ3VyZTozMzkxNDogZ2NjIC1FICBjb25mdGVzdC5jCmNvbmZ0ZXN0LmM6NzA6MjA6IGRp cmVjdC5oOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CmNvbmZpZ3VyZTozMzkyMDogJD8gPSAx CmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8ICNk ZWZpbmUgUEFDS0FHRV9OQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZ3Vp bGUiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9T VFJJTkcgImd1aWxlIDEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1ndWls ZUBnbnUub3JnIgp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZ UEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElC X0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEK fCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwg I2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZp bmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEhBVkVfTElCTFRETCAxCnwgI2RlZmluZSBTQ01f V0FSTl9ERVBSRUNBVEVEX0RFRkFVTFQgInN1bW1hcnkiCnwgI2RlZmluZSBHVUlMRV9VU0VfNjRf Q0FMTFMgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWCAxCnwgI2RlZmluZSBIQVZFX05FVFdPUktJTkcg MQp8ICNkZWZpbmUgU0laRU9GX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0NIQVIg MQp8ICNkZWZpbmUgU0laRU9GX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9TSE9S VCAyCnwgI2RlZmluZSBTSVpFT0ZfSU5UIDQKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9JTlQg NAp8ICNkZWZpbmUgU0laRU9GX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xPTkcg NAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9OR19MT05HIDgK fCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9MT05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX19f SU5UNjQgMAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX19fSU5UNjQgMAp8ICNkZWZpbmUgU0la RU9GX1ZPSURfUCA0CnwgI2RlZmluZSBTSVpFT0ZfSU5UUFRSX1QgNAp8ICNkZWZpbmUgU0laRU9G X1VJTlRQVFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfUFRSRElGRl9UIDQKfCAjZGVmaW5lIFNJWkVP Rl9TSVpFX1QgNAp8ICNkZWZpbmUgU0laRU9GX09GRl9UIDgKfCAjZGVmaW5lIEhBVkVfU1RESU5U X0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIFNJWkVPRl9JTlRNQVhf VCA4CnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwg I2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEK fCAjZGVmaW5lIEhBVkVfSU9fSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5l IEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZF X1BST0NFU1NfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfUkVH RVhfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19JT0NUTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NF TEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19U SU1FQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf VFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfVElN RV9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9VVElNRV9IIDEK fCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9HUlBfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19VVFNOQU1FX0ggMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8 ZGlyZWN0Lmg+CmNvbmZpZ3VyZTozMzkzNDogcmVzdWx0OiBubwpjb25maWd1cmU6MzM5Njc6IGNo ZWNraW5nIGZvciBkaXJlY3QuaApjb25maWd1cmU6MzM5NzU6IHJlc3VsdDogbm8KY29uZmlndXJl OjMzODQ4OiBjaGVja2luZyBmb3Igc3RyaW5ncy5oCmNvbmZpZ3VyZTozMzg1NDogcmVzdWx0OiB5 ZXMKY29uZmlndXJlOjMzOTkxOiBjaGVja2luZyBmb3IgY29tcGxleCBkb3VibGUKY29uZmlndXJl OjM0MDI0OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOjc1OiBlcnJv cjogc3ludGF4IGVycm9yIGJlZm9yZSAiZG91YmxlIgpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiBg bWFpbic6CmNvbmZ0ZXN0LmM6Nzk6IGVycm9yOiBwYXJzZSBlcnJvciBiZWZvcmUgJyknIHRva2Vu CmNvbmZpZ3VyZTozNDAzMDogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8 IC8qIGNvbmZkZWZzLmguICAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJndWlsZSIKfCAjZGVm aW5lIFBBQ0tBR0VfVEFSTkFNRSAiZ3VpbGUiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjEu OC40Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgImd1aWxlIDEuOC40Igp8ICNkZWZpbmUgUEFD S0FHRV9CVUdSRVBPUlQgImJ1Zy1ndWlsZUBnbnUub3JnIgp8ICNkZWZpbmUgU1REQ19IRUFERVJT IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9I IDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwg I2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVm aW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5l IEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEhBVkVf TElCTFRETCAxCnwgI2RlZmluZSBTQ01fV0FSTl9ERVBSRUNBVEVEX0RFRkFVTFQgInN1bW1hcnki CnwgI2RlZmluZSBHVUlMRV9VU0VfNjRfQ0FMTFMgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWCAxCnwg I2RlZmluZSBIQVZFX05FVFdPUktJTkcgMQp8ICNkZWZpbmUgU0laRU9GX0NIQVIgMQp8ICNkZWZp bmUgU0laRU9GX1VOU0lHTkVEX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1NIT1JUIDIKfCAjZGVm aW5lIFNJWkVPRl9VTlNJR05FRF9TSE9SVCAyCnwgI2RlZmluZSBTSVpFT0ZfSU5UIDQKfCAjZGVm aW5lIFNJWkVPRl9VTlNJR05FRF9JTlQgNAp8ICNkZWZpbmUgU0laRU9GX0xPTkcgNAp8ICNkZWZp bmUgU0laRU9GX1VOU0lHTkVEX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2Rl ZmluZSBTSVpFT0ZfTE9OR19MT05HIDgKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9MT05HX0xP TkcgOAp8ICNkZWZpbmUgU0laRU9GX19fSU5UNjQgMAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVE X19fSU5UNjQgMAp8ICNkZWZpbmUgU0laRU9GX1ZPSURfUCA0CnwgI2RlZmluZSBTSVpFT0ZfSU5U UFRSX1QgNAp8ICNkZWZpbmUgU0laRU9GX1VJTlRQVFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfUFRS RElGRl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9TSVpFX1QgNAp8ICNkZWZpbmUgU0laRU9GX09GRl9U IDgKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEK fCAjZGVmaW5lIFNJWkVPRl9JTlRNQVhfVCA4CnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNk ZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNk ZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU9fSCAxCnwgI2RlZmluZSBI QVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9N RU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1BST0NFU1NfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklO R19IIDEKfCAjZGVmaW5lIEhBVkVfUkVHRVhfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19JT0NUTF9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVT X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVElN RV9IIDEKfCAjZGVmaW5lIEhBVkVfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8 ICNkZWZpbmUgSEFWRV9VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUg SEFWRV9HUlBfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFW RV9TVFJJTkdTX0ggMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaWYgSEFWRV9DT01QTEVY X0gKfCAjaW5jbHVkZSA8Y29tcGxleC5oPgp8ICNlbmRpZgp8IAp8IHR5cGVkZWYgY29tcGxleCBk b3VibGUgYWNfX3R5cGVfbmV3XzsKfCBpbnQKfCBtYWluICgpCnwgewp8IGlmICgoYWNfX3R5cGVf bmV3XyAqKSAwKQp8ICAgcmV0dXJuIDA7CnwgaWYgKHNpemVvZiAoYWNfX3R5cGVfbmV3XykpCnwg ICByZXR1cm4gMDsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjM0MDQ1OiByZXN1 bHQ6IG5vCmNvbmZpZ3VyZTozNDA1OTogY2hlY2tpbmcgZm9yIHNvY2tsZW5fdApjb25maWd1cmU6 MzQwOTQ6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozNDEwMDogJD8g PSAwCmNvbmZpZ3VyZTozNDExNTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM0MTI3OiBjaGVja2lu ZyBmb3Igc3RydWN0IGlwX21yZXEKY29uZmlndXJlOjM0MTU3OiBnY2MgLWMgLWcgLU8yICBjb25m dGVzdC5jID4mNQpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiBgbWFpbic6CmNvbmZ0ZXN0LmM6MTEw OiBlcnJvcjogaW52YWxpZCBhcHBsaWNhdGlvbiBvZiBgc2l6ZW9mJyB0byBpbmNvbXBsZXRlIHR5 cGUgYGNvbmZ0ZXN0LmMnIApjb25maWd1cmU6MzQxNjM6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxl ZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFN RSAiZ3VpbGUiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImd1aWxlIgp8ICNkZWZpbmUgUEFD S0FHRV9WRVJTSU9OICIxLjguNCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJndWlsZSAxLjgu NCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ3VpbGVAZ251Lm9yZyIKfCAjZGVm aW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhB VkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NU UklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJ TlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRExGQ05fSCAx CnwgI2RlZmluZSBIQVZFX0xJQkxUREwgMQp8ICNkZWZpbmUgU0NNX1dBUk5fREVQUkVDQVRFRF9E RUZBVUxUICJzdW1tYXJ5Igp8ICNkZWZpbmUgR1VJTEVfVVNFXzY0X0NBTExTIDEKfCAjZGVmaW5l IEhBVkVfUE9TSVggMQp8ICNkZWZpbmUgSEFWRV9ORVRXT1JLSU5HIDEKfCAjZGVmaW5lIFNJWkVP Rl9DSEFSIDEKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9DSEFSIDEKfCAjZGVmaW5lIFNJWkVP Rl9TSE9SVCAyCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfU0hPUlQgMgp8ICNkZWZpbmUgU0la RU9GX0lOVCA0CnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfSU5UIDQKfCAjZGVmaW5lIFNJWkVP Rl9MT05HIDQKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9MT05HIDQKfCAjZGVmaW5lIFNJWkVP Rl9TSVpFX1QgNAp8ICNkZWZpbmUgU0laRU9GX0xPTkdfTE9ORyA4CnwgI2RlZmluZSBTSVpFT0Zf VU5TSUdORURfTE9OR19MT05HIDgKfCAjZGVmaW5lIFNJWkVPRl9fX0lOVDY0IDAKfCAjZGVmaW5l IFNJWkVPRl9VTlNJR05FRF9fX0lOVDY0IDAKfCAjZGVmaW5lIFNJWkVPRl9WT0lEX1AgNAp8ICNk ZWZpbmUgU0laRU9GX0lOVFBUUl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9VSU5UUFRSX1QgNAp8ICNk ZWZpbmUgU0laRU9GX1BUUkRJRkZfVCA0CnwgI2RlZmluZSBTSVpFT0ZfU0laRV9UIDQKfCAjZGVm aW5lIFNJWkVPRl9PRkZfVCA4CnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhB VkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBTSVpFT0ZfSU5UTUFYX1QgOAp8ICNkZWZpbmUgU1RE Q19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgVElNRV9XSVRI X1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX0lP X0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEK fCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9QUk9DRVNTX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX1JFR0VYX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfSU9DVExfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRUJfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19USU1FU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfVVRJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1RJTUVfSCAxCnwgI2RlZmluZSBI QVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BX RF9IIDEKfCAjZGVmaW5lIEhBVkVfR1JQX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9I IDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwg I2luY2x1ZGUgPHN0ZGlvLmg+CnwgI2lmZGVmIEhBVkVfU1lTX1RZUEVTX0gKfCAjIGluY2x1ZGUg PHN5cy90eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NZU19TVEFUX0gKfCAjIGluY2x1 ZGUgPHN5cy9zdGF0Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIFNURENfSEVBREVSUwp8ICMgaW5jbHVk ZSA8c3RkbGliLmg+CnwgIyBpbmNsdWRlIDxzdGRkZWYuaD4KfCAjZWxzZQp8ICMgaWZkZWYgSEFW RV9TVERMSUJfSAp8ICMgIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgZW5kaWYKfCAjZW5kaWYKfCAj aWZkZWYgSEFWRV9TVFJJTkdfSAp8ICMgaWYgIWRlZmluZWQgU1REQ19IRUFERVJTICYmIGRlZmlu ZWQgSEFWRV9NRU1PUllfSAp8ICMgIGluY2x1ZGUgPG1lbW9yeS5oPgp8ICMgZW5kaWYKfCAjIGlu Y2x1ZGUgPHN0cmluZy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR1NfSAp8ICMgaW5j bHVkZSA8c3RyaW5ncy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX0lOVFRZUEVTX0gKfCAjIGlu Y2x1ZGUgPGludHR5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RESU5UX0gKfCAjIGlu Y2x1ZGUgPHN0ZGludC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1VOSVNURF9ICnwgIyBpbmNs dWRlIDx1bmlzdGQuaD4KfCAjZW5kaWYKfCB0eXBlZGVmIHN0cnVjdCBpcF9tcmVxIGFjX190eXBl X25ld187CnwgaW50CnwgbWFpbiAoKQp8IHsKfCBpZiAoKGFjX190eXBlX25ld18gKikgMCkKfCAg IHJldHVybiAwOwp8IGlmIChzaXplb2YgKGFjX190eXBlX25ld18pKQp8ICAgcmV0dXJuIDA7Cnwg ICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZTozNDE3ODogcmVzdWx0OiBubwpjb25maWd1 cmU6MzQxODk6IGNoZWNraW5nIGZvciBsaWJjLmgKY29uZmlndXJlOjM0MTk1OiByZXN1bHQ6IG5v CmNvbmZpZ3VyZTozNDE4OTogY2hlY2tpbmcgZm9yIHVuaXN0ZC5oCmNvbmZpZ3VyZTozNDE5NTog cmVzdWx0OiB5ZXMKY29uZmlndXJlOjM0MzI5OiBjaGVja2luZyB3aGV0aGVyIGxpYmMuaCBhbmQg dW5pc3RkLmggY2FuIGJlIGluY2x1ZGVkIHRvZ2V0aGVyCmNvbmZpZ3VyZTozNDM4OTogcmVzdWx0 OiBubwpjb25maWd1cmU6MzQ0MDE6IGNoZWNraW5nIGZvciB1aWRfdCBpbiBzeXMvdHlwZXMuaApj b25maWd1cmU6MzQ0MjQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozNDQzOTogY2hlY2tpbmcgdHlw ZSBvZiBhcnJheSBhcmd1bWVudCB0byBnZXRncm91cHMKY29uZmlndXJlOjM0NDgzOiBnY2MgLW8g Y29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxsdGRsICA+JjUKY29uZmlndXJlOjM0 NDg2OiAkPyA9IDAKY29uZmlndXJlOjM0NDkyOiAuL2NvbmZ0ZXN0LmV4ZQpjb25maWd1cmU6MzQ0 OTU6ICQ/ID0gMApjb25maWd1cmU6MzQ1MzA6IHJlc3VsdDogZ2lkX3QKY29uZmlndXJlOjM0NTM4 OiBjaGVja2luZyByZXR1cm4gdHlwZSBvZiBzaWduYWwgaGFuZGxlcnMKY29uZmlndXJlOjM0NTY2 OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiBg bWFpbic6CmNvbmZ0ZXN0LmM6Nzk6IGVycm9yOiB2b2lkIHZhbHVlIG5vdCBpZ25vcmVkIGFzIGl0 IG91Z2h0IHRvIGJlCmNvbmZpZ3VyZTozNDU3MjogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHBy b2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJn dWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZ3VpbGUiCnwgI2RlZmluZSBQQUNLQUdF X1ZFUlNJT04gIjEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgImd1aWxlIDEuOC40Igp8 ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1ndWlsZUBnbnUub3JnIgp8ICNkZWZpbmUg U1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9T VFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5H U19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9I IDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAj ZGVmaW5lIEhBVkVfTElCTFRETCAxCnwgI2RlZmluZSBTQ01fV0FSTl9ERVBSRUNBVEVEX0RFRkFV TFQgInN1bW1hcnkiCnwgI2RlZmluZSBHVUlMRV9VU0VfNjRfQ0FMTFMgMQp8ICNkZWZpbmUgSEFW RV9QT1NJWCAxCnwgI2RlZmluZSBIQVZFX05FVFdPUktJTkcgMQp8ICNkZWZpbmUgU0laRU9GX0NI QVIgMQp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1NI T1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9TSE9SVCAyCnwgI2RlZmluZSBTSVpFT0Zf SU5UIDQKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9JTlQgNAp8ICNkZWZpbmUgU0laRU9GX0xP TkcgNAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1NJ WkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9OR19MT05HIDgKfCAjZGVmaW5lIFNJWkVPRl9VTlNJ R05FRF9MT05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX19fSU5UNjQgMAp8ICNkZWZpbmUgU0la RU9GX1VOU0lHTkVEX19fSU5UNjQgMAp8ICNkZWZpbmUgU0laRU9GX1ZPSURfUCA0CnwgI2RlZmlu ZSBTSVpFT0ZfSU5UUFRSX1QgNAp8ICNkZWZpbmUgU0laRU9GX1VJTlRQVFJfVCA0CnwgI2RlZmlu ZSBTSVpFT0ZfUFRSRElGRl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9TSVpFX1QgNAp8ICNkZWZpbmUg U0laRU9GX09GRl9UIDgKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9J TlRUWVBFU19IIDEKfCAjZGVmaW5lIFNJWkVPRl9JTlRNQVhfVCA4CnwgI2RlZmluZSBTVERDX0hF QURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBUSU1FX1dJVEhfU1lT X1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU9fSCAx CnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNk ZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1BST0NFU1NfSCAxCnwgI2RlZmlu ZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfUkVHRVhfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19JT0NUTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FQl9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1RJTUVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVf VU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0gg MQp8ICNkZWZpbmUgSEFWRV9HUlBfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8 ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2Rl ZmluZSBHRVRHUk9VUFNfVCBnaWRfdAp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVk ZSA8c3lzL3R5cGVzLmg+CnwgI2luY2x1ZGUgPHNpZ25hbC5oPgp8IAp8IGludAp8IG1haW4gKCkK fCB7CnwgcmV0dXJuICooc2lnbmFsICgwLCAwKSkgKDApID09IDE7CnwgICA7CnwgICByZXR1cm4g MDsKfCB9CmNvbmZpZ3VyZTozNDU4NzogcmVzdWx0OiB2b2lkCmNvbmZpZ3VyZTozNDU5NTogY2hl Y2tpbmcgZm9yIG1vZGVfdApjb25maWd1cmU6MzQ2MjU6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0 LmMgPiY1CmNvbmZpZ3VyZTozNDYzMTogJD8gPSAwCmNvbmZpZ3VyZTozNDY0NjogcmVzdWx0OiB5 ZXMKY29uZmlndXJlOjM0NjYzOiBjaGVja2luZyBmb3IgY29zIGluIC1sbQpjb25maWd1cmU6MzQ2 OTg6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3QuYyAtbG0gIC1sbHRkbCAg PiY1CmNvbmZ0ZXN0LmM6ODE6IHdhcm5pbmc6IGNvbmZsaWN0aW5nIHR5cGVzIGZvciBidWlsdC1p biBmdW5jdGlvbiAnY29zJwpjb25maWd1cmU6MzQ3MDQ6ICQ/ID0gMApjb25maWd1cmU6MzQ3MjI6 IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozNDczODogY2hlY2tpbmcgZm9yIGdldGhvc3RieW5hbWUK Y29uZmlndXJlOjM0Nzk0OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMg LWxtIC1sbHRkbCAgPiY1CmNvbmZpZ3VyZTozNDgwMDogJD8gPSAwCmNvbmZpZ3VyZTozNDgxODog cmVzdWx0OiB5ZXMKY29uZmlndXJlOjM0OTA2OiBjaGVja2luZyBmb3IgY29ubmVjdApjb25maWd1 cmU6MzQ5NjI6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3QuYyAtbG0gLWxs dGRsICA+JjUKY29uZmlndXJlOjM0OTY4OiAkPyA9IDAKY29uZmlndXJlOjM0OTg2OiByZXN1bHQ6 IHllcwpjb25maWd1cmU6MzUzMjg6IGNoZWNraW5nIGFzc2VydC5oIHVzYWJpbGl0eQpjb25maWd1 cmU6MzUzNDU6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozNTM1MTog JD8gPSAwCmNvbmZpZ3VyZTozNTM2NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM1MzY5OiBjaGVj a2luZyBhc3NlcnQuaCBwcmVzZW5jZQpjb25maWd1cmU6MzUzODQ6IGdjYyAtRSAgY29uZnRlc3Qu Ywpjb25maWd1cmU6MzUzOTA6ICQ/ID0gMApjb25maWd1cmU6MzU0MDQ6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZTozNTQzNzogY2hlY2tpbmcgZm9yIGFzc2VydC5oCmNvbmZpZ3VyZTozNTQ0NTogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjM1MzI4OiBjaGVja2luZyBjcnRfZXh0ZXJucy5oIHVzYWJpbGl0 eQpjb25maWd1cmU6MzUzNDU6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0 LmM6MTExOjI1OiBjcnRfZXh0ZXJucy5oOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CmNvbmZp Z3VyZTozNTM1MTogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNv bmZkZWZzLmguICAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJndWlsZSIKfCAjZGVmaW5lIFBB Q0tBR0VfVEFSTkFNRSAiZ3VpbGUiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjEuOC40Igp8 ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgImd1aWxlIDEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9C VUdSRVBPUlQgImJ1Zy1ndWlsZUBnbnUub3JnIgp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAj ZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmlu ZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhB VkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVf VU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEhBVkVfTElCTFRE TCAxCnwgI2RlZmluZSBTQ01fV0FSTl9ERVBSRUNBVEVEX0RFRkFVTFQgInN1bW1hcnkiCnwgI2Rl ZmluZSBHVUlMRV9VU0VfNjRfQ0FMTFMgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWCAxCnwgI2RlZmlu ZSBIQVZFX05FVFdPUktJTkcgMQp8ICNkZWZpbmUgU0laRU9GX0NIQVIgMQp8ICNkZWZpbmUgU0la RU9GX1VOU0lHTkVEX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1NIT1JUIDIKfCAjZGVmaW5lIFNJ WkVPRl9VTlNJR05FRF9TSE9SVCAyCnwgI2RlZmluZSBTSVpFT0ZfSU5UIDQKfCAjZGVmaW5lIFNJ WkVPRl9VTlNJR05FRF9JTlQgNAp8ICNkZWZpbmUgU0laRU9GX0xPTkcgNAp8ICNkZWZpbmUgU0la RU9GX1VOU0lHTkVEX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBT SVpFT0ZfTE9OR19MT05HIDgKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9MT05HX0xPTkcgOAp8 ICNkZWZpbmUgU0laRU9GX19fSU5UNjQgMAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX19fSU5U NjQgMAp8ICNkZWZpbmUgU0laRU9GX1ZPSURfUCA0CnwgI2RlZmluZSBTSVpFT0ZfSU5UUFRSX1Qg NAp8ICNkZWZpbmUgU0laRU9GX1VJTlRQVFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfUFRSRElGRl9U IDQKfCAjZGVmaW5lIFNJWkVPRl9TSVpFX1QgNAp8ICNkZWZpbmUgU0laRU9GX09GRl9UIDgKfCAj ZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVm aW5lIFNJWkVPRl9JTlRNQVhfVCA4CnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUg SEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUg SEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU9fSCAxCnwgI2RlZmluZSBIQVZFX0xJ TUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllf SCAxCnwgI2RlZmluZSBIQVZFX1BST0NFU1NfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEK fCAjZGVmaW5lIEhBVkVfUkVHRVhfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19JT0NUTF9IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19USU1FQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVTX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVElNRV9IIDEK fCAjZGVmaW5lIEhBVkVfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZp bmUgSEFWRV9VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9H UlBfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJ TkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBHRVRHUk9VUFNfVCBn aWRfdAp8ICNkZWZpbmUgUkVUU0lHVFlQRSB2b2lkCnwgI2RlZmluZSBIQVZFX0xJQk0gMQp8ICNk ZWZpbmUgSEFWRV9HRVRIT1NUQllOQU1FIDEKfCAjZGVmaW5lIEhBVkVfQ09OTkVDVCAxCnwgI2Rl ZmluZSBIQVZFX0FTU0VSVF9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUg PHN0ZGlvLmg+CnwgI2lmZGVmIEhBVkVfU1lTX1RZUEVTX0gKfCAjIGluY2x1ZGUgPHN5cy90eXBl cy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NZU19TVEFUX0gKfCAjIGluY2x1ZGUgPHN5cy9z dGF0Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIFNURENfSEVBREVSUwp8ICMgaW5jbHVkZSA8c3RkbGli Lmg+CnwgIyBpbmNsdWRlIDxzdGRkZWYuaD4KfCAjZWxzZQp8ICMgaWZkZWYgSEFWRV9TVERMSUJf SAp8ICMgIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgZW5kaWYKfCAjZW5kaWYKfCAjaWZkZWYgSEFW RV9TVFJJTkdfSAp8ICMgaWYgIWRlZmluZWQgU1REQ19IRUFERVJTICYmIGRlZmluZWQgSEFWRV9N RU1PUllfSAp8ICMgIGluY2x1ZGUgPG1lbW9yeS5oPgp8ICMgZW5kaWYKfCAjIGluY2x1ZGUgPHN0 cmluZy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR1NfSAp8ICMgaW5jbHVkZSA8c3Ry aW5ncy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX0lOVFRZUEVTX0gKfCAjIGluY2x1ZGUgPGlu dHR5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RESU5UX0gKfCAjIGluY2x1ZGUgPHN0 ZGludC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1VOSVNURF9ICnwgIyBpbmNsdWRlIDx1bmlz dGQuaD4KfCAjZW5kaWYKfCAjaW5jbHVkZSA8Y3J0X2V4dGVybnMuaD4KY29uZmlndXJlOjM1MzY1 OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTozNTM2OTogY2hlY2tpbmcgY3J0X2V4dGVybnMuaCBwcmVz ZW5jZQpjb25maWd1cmU6MzUzODQ6IGdjYyAtRSAgY29uZnRlc3QuYwpjb25mdGVzdC5jOjc4OjI1 OiBjcnRfZXh0ZXJucy5oOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CmNvbmZpZ3VyZTozNTM5 MDogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmgu ICAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFS TkFNRSAiZ3VpbGUiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjEuOC40Igp8ICNkZWZpbmUg UEFDS0FHRV9TVFJJTkcgImd1aWxlIDEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQg ImJ1Zy1ndWlsZUBnbnUub3JnIgp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhB VkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01F TU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQ RVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0gg MQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEhBVkVfTElCTFRETCAxCnwgI2Rl ZmluZSBTQ01fV0FSTl9ERVBSRUNBVEVEX0RFRkFVTFQgInN1bW1hcnkiCnwgI2RlZmluZSBHVUlM RV9VU0VfNjRfQ0FMTFMgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWCAxCnwgI2RlZmluZSBIQVZFX05F VFdPUktJTkcgMQp8ICNkZWZpbmUgU0laRU9GX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1VOU0lH TkVEX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9VTlNJ R05FRF9TSE9SVCAyCnwgI2RlZmluZSBTSVpFT0ZfSU5UIDQKfCAjZGVmaW5lIFNJWkVPRl9VTlNJ R05FRF9JTlQgNAp8ICNkZWZpbmUgU0laRU9GX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1VOU0lH TkVEX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9O R19MT05HIDgKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9MT05HX0xPTkcgOAp8ICNkZWZpbmUg U0laRU9GX19fSU5UNjQgMAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX19fSU5UNjQgMAp8ICNk ZWZpbmUgU0laRU9GX1ZPSURfUCA0CnwgI2RlZmluZSBTSVpFT0ZfSU5UUFRSX1QgNAp8ICNkZWZp bmUgU0laRU9GX1VJTlRQVFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfUFRSRElGRl9UIDQKfCAjZGVm aW5lIFNJWkVPRl9TSVpFX1QgNAp8ICNkZWZpbmUgU0laRU9GX09GRl9UIDgKfCAjZGVmaW5lIEhB VkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIFNJWkVP Rl9JTlRNQVhfVCA4CnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJF TlRfSCAxCnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9TWVNf V0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU9fSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEK fCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2Rl ZmluZSBIQVZFX1BST0NFU1NfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5l IEhBVkVfUkVHRVhfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19JT0NUTF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19USU1FQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVTX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVElNRV9IIDEKfCAjZGVmaW5l IEhBVkVfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9V VElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9HUlBfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8 ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBHRVRHUk9VUFNfVCBnaWRfdAp8ICNk ZWZpbmUgUkVUU0lHVFlQRSB2b2lkCnwgI2RlZmluZSBIQVZFX0xJQk0gMQp8ICNkZWZpbmUgSEFW RV9HRVRIT1NUQllOQU1FIDEKfCAjZGVmaW5lIEhBVkVfQ09OTkVDVCAxCnwgI2RlZmluZSBIQVZF X0FTU0VSVF9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPGNydF9leHRl cm5zLmg+CmNvbmZpZ3VyZTozNTQwNDogcmVzdWx0OiBubwpjb25maWd1cmU6MzU0Mzc6IGNoZWNr aW5nIGZvciBjcnRfZXh0ZXJucy5oCmNvbmZpZ3VyZTozNTQ0NTogcmVzdWx0OiBubwpjb25maWd1 cmU6MzU1NTg6IGNoZWNraW5nIGZvciBESU5GSU5JVFkKY29uZmlndXJlOjM1NjE0OiBnY2MgLW8g Y29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxtIC1sbHRkbCAgPiY1Ci9jeWdkcml2 ZS9jL0RPQ1VNRX4xL0Fhcm9uL0xPQ0FMU34xL1RlbXAvY2M1aEo1bm4ubzogSW4gZnVuY3Rpb24g YG1haW4nOgovaG9tZS9BYXJvbi9ndWlsZS0xLjguNC9jb25mdGVzdC5jOjExMjogdW5kZWZpbmVk IHJlZmVyZW5jZSB0byBgX0RJTkZJTklUWScKY29sbGVjdDI6IGxkIHJldHVybmVkIDEgZXhpdCBz dGF0dXMKY29uZmlndXJlOjM1NjIwOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3 YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgImd1aWxlIgp8 ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lP TiAiMS44LjQiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiZ3VpbGUgMS44LjQiCnwgI2RlZmlu ZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWd1aWxlQGdudS5vcmciCnwgI2RlZmluZSBTVERDX0hF QURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19T VEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19I IDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8 ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNk ZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUg SEFWRV9MSUJMVERMIDEKfCAjZGVmaW5lIFNDTV9XQVJOX0RFUFJFQ0FURURfREVGQVVMVCAic3Vt bWFyeSIKfCAjZGVmaW5lIEdVSUxFX1VTRV82NF9DQUxMUyAxCnwgI2RlZmluZSBIQVZFX1BPU0lY IDEKfCAjZGVmaW5lIEhBVkVfTkVUV09SS0lORyAxCnwgI2RlZmluZSBTSVpFT0ZfQ0hBUiAxCnwg I2RlZmluZSBTSVpFT0ZfVU5TSUdORURfQ0hBUiAxCnwgI2RlZmluZSBTSVpFT0ZfU0hPUlQgMgp8 ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9JTlQgNAp8 ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0lOVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA0Cnwg I2RlZmluZSBTSVpFT0ZfVU5TSUdORURfTE9ORyA0CnwgI2RlZmluZSBTSVpFT0ZfU0laRV9UIDQK fCAjZGVmaW5lIFNJWkVPRl9MT05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xP TkdfTE9ORyA4CnwgI2RlZmluZSBTSVpFT0ZfX19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0ZfVU5T SUdORURfX19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0ZfVk9JRF9QIDQKfCAjZGVmaW5lIFNJWkVP Rl9JTlRQVFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfVUlOVFBUUl9UIDQKfCAjZGVmaW5lIFNJWkVP Rl9QVFJESUZGX1QgNAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0Zf T0ZGX1QgOAp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVT X0ggMQp8ICNkZWZpbmUgU0laRU9GX0lOVE1BWF9UIDgKfCAjZGVmaW5lIFNURENfSEVBREVSUyAx CnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAx CnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9JT19IIDEKfCAjZGVm aW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBI QVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfUFJPQ0VTU19IIDEKfCAjZGVmaW5lIEhBVkVf U1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9SRUdFWF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lP Q1RMX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf VElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVCX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf VElNRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERf SCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2Rl ZmluZSBIQVZFX0dSUF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmlu ZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEdF VEdST1VQU19UIGdpZF90CnwgI2RlZmluZSBSRVRTSUdUWVBFIHZvaWQKfCAjZGVmaW5lIEhBVkVf TElCTSAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1RCWU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9DT05O RUNUIDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJUX0ggMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8K fCAvKiBEZWZpbmUgRElORklOSVRZIHRvIGFuIGlubm9jdW91cyB2YXJpYW50LCBpbiBjYXNlIDxs aW1pdHMuaD4gZGVjbGFyZXMgRElORklOSVRZLgp8ICAgIEZvciBleGFtcGxlLCBIUC1VWCAxMWkg PGxpbWl0cy5oPiBkZWNsYXJlcyBnZXR0aW1lb2ZkYXkuICAqLwp8ICNkZWZpbmUgRElORklOSVRZ IGlubm9jdW91c19ESU5GSU5JVFkKfCAKfCAvKiBTeXN0ZW0gaGVhZGVyIHRvIGRlZmluZSBfX3N0 dWIgbWFjcm9zIGFuZCBob3BlZnVsbHkgZmV3IHByb3RvdHlwZXMsCnwgICAgIHdoaWNoIGNhbiBj b25mbGljdCB3aXRoIGNoYXIgRElORklOSVRZICgpOyBiZWxvdy4KfCAgICAgUHJlZmVyIDxsaW1p dHMuaD4gdG8gPGFzc2VydC5oPiBpZiBfX1NURENfXyBpcyBkZWZpbmVkLCBzaW5jZQp8ICAgICA8 bGltaXRzLmg+IGV4aXN0cyBldmVuIG9uIGZyZWVzdGFuZGluZyBjb21waWxlcnMuICAqLwp8IAp8 ICNpZmRlZiBfX1NURENfXwp8ICMgaW5jbHVkZSA8bGltaXRzLmg+CnwgI2Vsc2UKfCAjIGluY2x1 ZGUgPGFzc2VydC5oPgp8ICNlbmRpZgp8IAp8ICN1bmRlZiBESU5GSU5JVFkKfCAKfCAvKiBPdmVy cmlkZSBhbnkgR0NDIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4KfCAgICBV c2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBHQ0MK fCAgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwg YXBwbHkuICAqLwp8ICNpZmRlZiBfX2NwbHVzcGx1cwp8IGV4dGVybiAiQyIKfCAjZW5kaWYKfCBj aGFyIERJTkZJTklUWSAoKTsKfCAvKiBUaGUgR05VIEMgbGlicmFyeSBkZWZpbmVzIHRoaXMgZm9y IGZ1bmN0aW9ucyB3aGljaCBpdCBpbXBsZW1lbnRzCnwgICAgIHRvIGFsd2F5cyBmYWlsIHdpdGgg RU5PU1lTLiAgU29tZSBmdW5jdGlvbnMgYXJlIGFjdHVhbGx5IG5hbWVkCnwgICAgIHNvbWV0aGlu ZyBzdGFydGluZyB3aXRoIF9fIGFuZCB0aGUgbm9ybWFsIG5hbWUgaXMgYW4gYWxpYXMuICAqLwp8 ICNpZiBkZWZpbmVkIF9fc3R1Yl9ESU5GSU5JVFkgfHwgZGVmaW5lZCBfX3N0dWJfX19ESU5GSU5J VFkKfCBjaG9rZSBtZQp8ICNlbmRpZgp8IAp8IGludAp8IG1haW4gKCkKfCB7CnwgcmV0dXJuIERJ TkZJTklUWSAoKTsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjM1NjM4OiByZXN1 bHQ6IG5vCmNvbmZpZ3VyZTozNTU1ODogY2hlY2tpbmcgZm9yIERRTkFOCmNvbmZpZ3VyZTozNTYx NDogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1sbSAtbGx0ZGwgID4m NQovY3lnZHJpdmUvYy9ET0NVTUV+MS9BYXJvbi9MT0NBTFN+MS9UZW1wL2NjSUNxdFRCLm86IElu IGZ1bmN0aW9uIGBtYWluJzoKL2hvbWUvQWFyb24vZ3VpbGUtMS44LjQvY29uZnRlc3QuYzoxMTI6 IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYF9EUU5BTicKY29sbGVjdDI6IGxkIHJldHVybmVkIDEg ZXhpdCBzdGF0dXMKY29uZmlndXJlOjM1NjIwOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJv Z3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgImd1 aWxlIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0Vf VkVSU0lPTiAiMS44LjQiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiZ3VpbGUgMS44LjQiCnwg I2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWd1aWxlQGdudS5vcmciCnwgI2RlZmluZSBT VERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NU UklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdT X0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0gg MQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNk ZWZpbmUgSEFWRV9MSUJMVERMIDEKfCAjZGVmaW5lIFNDTV9XQVJOX0RFUFJFQ0FURURfREVGQVVM VCAic3VtbWFyeSIKfCAjZGVmaW5lIEdVSUxFX1VTRV82NF9DQUxMUyAxCnwgI2RlZmluZSBIQVZF X1BPU0lYIDEKfCAjZGVmaW5lIEhBVkVfTkVUV09SS0lORyAxCnwgI2RlZmluZSBTSVpFT0ZfQ0hB UiAxCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfQ0hBUiAxCnwgI2RlZmluZSBTSVpFT0ZfU0hP UlQgMgp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9J TlQgNAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0lOVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9O RyA0CnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfTE9ORyA0CnwgI2RlZmluZSBTSVpFT0ZfU0la RV9UIDQKfCAjZGVmaW5lIFNJWkVPRl9MT05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX1VOU0lH TkVEX0xPTkdfTE9ORyA4CnwgI2RlZmluZSBTSVpFT0ZfX19JTlQ2NCAwCnwgI2RlZmluZSBTSVpF T0ZfVU5TSUdORURfX19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0ZfVk9JRF9QIDQKfCAjZGVmaW5l IFNJWkVPRl9JTlRQVFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfVUlOVFBUUl9UIDQKfCAjZGVmaW5l IFNJWkVPRl9QVFJESUZGX1QgNAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBT SVpFT0ZfT0ZGX1QgOAp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX0lO VFRZUEVTX0ggMQp8ICNkZWZpbmUgU0laRU9GX0lOVE1BWF9UIDgKfCAjZGVmaW5lIFNURENfSEVB REVSUyAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNf VElNRSAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9JT19IIDEK fCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2Rl ZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfUFJPQ0VTU19IIDEKfCAjZGVmaW5l IEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9SRUdFWF9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX0lPQ1RMX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVCX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfVElNRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9V TklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAx CnwgI2RlZmluZSBIQVZFX0dSUF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwg I2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVm aW5lIEdFVEdST1VQU19UIGdpZF90CnwgI2RlZmluZSBSRVRTSUdUWVBFIHZvaWQKfCAjZGVmaW5l IEhBVkVfTElCTSAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1RCWU5BTUUgMQp8ICNkZWZpbmUgSEFW RV9DT05ORUNUIDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJUX0ggMQp8IC8qIGVuZCBjb25mZGVmcy5o LiAgKi8KfCAvKiBEZWZpbmUgRFFOQU4gdG8gYW4gaW5ub2N1b3VzIHZhcmlhbnQsIGluIGNhc2Ug PGxpbWl0cy5oPiBkZWNsYXJlcyBEUU5BTi4KfCAgICBGb3IgZXhhbXBsZSwgSFAtVVggMTFpIDxs aW1pdHMuaD4gZGVjbGFyZXMgZ2V0dGltZW9mZGF5LiAgKi8KfCAjZGVmaW5lIERRTkFOIGlubm9j dW91c19EUU5BTgp8IAp8IC8qIFN5c3RlbSBoZWFkZXIgdG8gZGVmaW5lIF9fc3R1YiBtYWNyb3Mg YW5kIGhvcGVmdWxseSBmZXcgcHJvdG90eXBlcywKfCAgICAgd2hpY2ggY2FuIGNvbmZsaWN0IHdp dGggY2hhciBEUU5BTiAoKTsgYmVsb3cuCnwgICAgIFByZWZlciA8bGltaXRzLmg+IHRvIDxhc3Nl cnQuaD4gaWYgX19TVERDX18gaXMgZGVmaW5lZCwgc2luY2UKfCAgICAgPGxpbWl0cy5oPiBleGlz dHMgZXZlbiBvbiBmcmVlc3RhbmRpbmcgY29tcGlsZXJzLiAgKi8KfCAKfCAjaWZkZWYgX19TVERD X18KfCAjIGluY2x1ZGUgPGxpbWl0cy5oPgp8ICNlbHNlCnwgIyBpbmNsdWRlIDxhc3NlcnQuaD4K fCAjZW5kaWYKfCAKfCAjdW5kZWYgRFFOQU4KfCAKfCAvKiBPdmVycmlkZSBhbnkgR0NDIGludGVy bmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4KfCAgICBVc2UgY2hhciBiZWNhdXNlIGlu dCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBHQ0MKfCAgICBidWlsdGluIGFuZCB0 aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLwp8ICNpZmRl ZiBfX2NwbHVzcGx1cwp8IGV4dGVybiAiQyIKfCAjZW5kaWYKfCBjaGFyIERRTkFOICgpOwp8IC8q IFRoZSBHTlUgQyBsaWJyYXJ5IGRlZmluZXMgdGhpcyBmb3IgZnVuY3Rpb25zIHdoaWNoIGl0IGlt cGxlbWVudHMKfCAgICAgdG8gYWx3YXlzIGZhaWwgd2l0aCBFTk9TWVMuICBTb21lIGZ1bmN0aW9u cyBhcmUgYWN0dWFsbHkgbmFtZWQKfCAgICAgc29tZXRoaW5nIHN0YXJ0aW5nIHdpdGggX18gYW5k IHRoZSBub3JtYWwgbmFtZSBpcyBhbiBhbGlhcy4gICovCnwgI2lmIGRlZmluZWQgX19zdHViX0RR TkFOIHx8IGRlZmluZWQgX19zdHViX19fRFFOQU4KfCBjaG9rZSBtZQp8ICNlbmRpZgp8IAp8IGlu dAp8IG1haW4gKCkKfCB7CnwgcmV0dXJuIERRTkFOICgpOwp8ICAgOwp8ICAgcmV0dXJuIDA7Cnwg fQpjb25maWd1cmU6MzU2Mzg6IHJlc3VsdDogbm8KY29uZmlndXJlOjM1NTU4OiBjaGVja2luZyBm b3IgY2V4cApjb25maWd1cmU6MzU2MTQ6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgY29u ZnRlc3QuYyAtbG0gLWxsdGRsICA+JjUKY29uZnRlc3QuYzoxMDE6IHdhcm5pbmc6IGNvbmZsaWN0 aW5nIHR5cGVzIGZvciBidWlsdC1pbiBmdW5jdGlvbiAnY2V4cCcKL2N5Z2RyaXZlL2MvRE9DVU1F fjEvQWFyb24vTE9DQUxTfjEvVGVtcC9jY1dVWTlqMy5vOiBJbiBmdW5jdGlvbiBgbWFpbic6Ci9o b21lL0Fhcm9uL2d1aWxlLTEuOC40L2NvbmZ0ZXN0LmM6MTEyOiB1bmRlZmluZWQgcmVmZXJlbmNl IHRvIGBfY2V4cCcKY29sbGVjdDI6IGxkIHJldHVybmVkIDEgZXhpdCBzdGF0dXMKY29uZmlndXJl OjM1NjIwOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRl ZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgImd1aWxlIgp8ICNkZWZpbmUgUEFDS0FH RV9UQVJOQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMS44LjQiCnwgI2Rl ZmluZSBQQUNLQUdFX1NUUklORyAiZ3VpbGUgMS44LjQiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JF UE9SVCAiYnVnLWd1aWxlQGdudS5vcmciCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZp bmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZp bmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhB VkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9J TlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklT VERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgSEFWRV9MSUJMVERMIDEK fCAjZGVmaW5lIFNDTV9XQVJOX0RFUFJFQ0FURURfREVGQVVMVCAic3VtbWFyeSIKfCAjZGVmaW5l IEdVSUxFX1VTRV82NF9DQUxMUyAxCnwgI2RlZmluZSBIQVZFX1BPU0lYIDEKfCAjZGVmaW5lIEhB VkVfTkVUV09SS0lORyAxCnwgI2RlZmluZSBTSVpFT0ZfQ0hBUiAxCnwgI2RlZmluZSBTSVpFT0Zf VU5TSUdORURfQ0hBUiAxCnwgI2RlZmluZSBTSVpFT0ZfU0hPUlQgMgp8ICNkZWZpbmUgU0laRU9G X1VOU0lHTkVEX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9JTlQgNAp8ICNkZWZpbmUgU0laRU9G X1VOU0lHTkVEX0lOVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA0CnwgI2RlZmluZSBTSVpFT0Zf VU5TSUdORURfTE9ORyA0CnwgI2RlZmluZSBTSVpFT0ZfU0laRV9UIDQKfCAjZGVmaW5lIFNJWkVP Rl9MT05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xPTkdfTE9ORyA4CnwgI2Rl ZmluZSBTSVpFT0ZfX19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfX19JTlQ2NCAw CnwgI2RlZmluZSBTSVpFT0ZfVk9JRF9QIDQKfCAjZGVmaW5lIFNJWkVPRl9JTlRQVFJfVCA0Cnwg I2RlZmluZSBTSVpFT0ZfVUlOVFBUUl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9QVFJESUZGX1QgNAp8 ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfT0ZGX1QgOAp8ICNkZWZp bmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUg U0laRU9GX0lOVE1BWF9UIDgKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZF X0RJUkVOVF9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwgI2RlZmluZSBIQVZF X1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9JT19IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRT X0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEK fCAjZGVmaW5lIEhBVkVfUFJPQ0VTU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNk ZWZpbmUgSEFWRV9SRUdFWF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lPQ1RMX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1RJTUVCX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRVNfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUSU1FX0ggMQp8ICNk ZWZpbmUgSEFWRV9USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBI QVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX0dSUF9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1Nf SCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEdFVEdST1VQU19UIGdpZF90 CnwgI2RlZmluZSBSRVRTSUdUWVBFIHZvaWQKfCAjZGVmaW5lIEhBVkVfTElCTSAxCnwgI2RlZmlu ZSBIQVZFX0dFVEhPU1RCWU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9DT05ORUNUIDEKfCAjZGVmaW5l IEhBVkVfQVNTRVJUX0ggMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAvKiBEZWZpbmUgY2V4 cCB0byBhbiBpbm5vY3VvdXMgdmFyaWFudCwgaW4gY2FzZSA8bGltaXRzLmg+IGRlY2xhcmVzIGNl eHAuCnwgICAgRm9yIGV4YW1wbGUsIEhQLVVYIDExaSA8bGltaXRzLmg+IGRlY2xhcmVzIGdldHRp bWVvZmRheS4gICovCnwgI2RlZmluZSBjZXhwIGlubm9jdW91c19jZXhwCnwgCnwgLyogU3lzdGVt IGhlYWRlciB0byBkZWZpbmUgX19zdHViIG1hY3JvcyBhbmQgaG9wZWZ1bGx5IGZldyBwcm90b3R5 cGVzLAp8ICAgICB3aGljaCBjYW4gY29uZmxpY3Qgd2l0aCBjaGFyIGNleHAgKCk7IGJlbG93Lgp8 ICAgICBQcmVmZXIgPGxpbWl0cy5oPiB0byA8YXNzZXJ0Lmg+IGlmIF9fU1REQ19fIGlzIGRlZmlu ZWQsIHNpbmNlCnwgICAgIDxsaW1pdHMuaD4gZXhpc3RzIGV2ZW4gb24gZnJlZXN0YW5kaW5nIGNv bXBpbGVycy4gICovCnwgCnwgI2lmZGVmIF9fU1REQ19fCnwgIyBpbmNsdWRlIDxsaW1pdHMuaD4K fCAjZWxzZQp8ICMgaW5jbHVkZSA8YXNzZXJ0Lmg+CnwgI2VuZGlmCnwgCnwgI3VuZGVmIGNleHAK fCAKfCAvKiBPdmVycmlkZSBhbnkgR0NDIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBl cnJvci4KfCAgICBVc2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5 cGUgb2YgYSBHQ0MKfCAgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUg d291bGQgc3RpbGwgYXBwbHkuICAqLwp8ICNpZmRlZiBfX2NwbHVzcGx1cwp8IGV4dGVybiAiQyIK fCAjZW5kaWYKfCBjaGFyIGNleHAgKCk7CnwgLyogVGhlIEdOVSBDIGxpYnJhcnkgZGVmaW5lcyB0 aGlzIGZvciBmdW5jdGlvbnMgd2hpY2ggaXQgaW1wbGVtZW50cwp8ICAgICB0byBhbHdheXMgZmFp bCB3aXRoIEVOT1NZUy4gIFNvbWUgZnVuY3Rpb25zIGFyZSBhY3R1YWxseSBuYW1lZAp8ICAgICBz b21ldGhpbmcgc3RhcnRpbmcgd2l0aCBfXyBhbmQgdGhlIG5vcm1hbCBuYW1lIGlzIGFuIGFsaWFz LiAgKi8KfCAjaWYgZGVmaW5lZCBfX3N0dWJfY2V4cCB8fCBkZWZpbmVkIF9fc3R1Yl9fX2NleHAK fCBjaG9rZSBtZQp8ICNlbmRpZgp8IAp8IGludAp8IG1haW4gKCkKfCB7CnwgcmV0dXJuIGNleHAg KCk7CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZTozNTYzODogcmVzdWx0OiBubwpj b25maWd1cmU6MzU1NTg6IGNoZWNraW5nIGZvciBjaHNpemUKY29uZmlndXJlOjM1NjE0OiBnY2Mg LW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxtIC1sbHRkbCAgPiY1Ci9jeWdk cml2ZS9jL0RPQ1VNRX4xL0Fhcm9uL0xPQ0FMU34xL1RlbXAvY2N1blJjZXgubzogSW4gZnVuY3Rp b24gYG1haW4nOgovaG9tZS9BYXJvbi9ndWlsZS0xLjguNC9jb25mdGVzdC5jOjExMjogdW5kZWZp bmVkIHJlZmVyZW5jZSB0byBgX2Noc2l6ZScKY29sbGVjdDI6IGxkIHJldHVybmVkIDEgZXhpdCBz dGF0dXMKY29uZmlndXJlOjM1NjIwOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3 YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgImd1aWxlIgp8 ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lP TiAiMS44LjQiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiZ3VpbGUgMS44LjQiCnwgI2RlZmlu ZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWd1aWxlQGdudS5vcmciCnwgI2RlZmluZSBTVERDX0hF QURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19T VEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19I IDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8 ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNk ZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUg SEFWRV9MSUJMVERMIDEKfCAjZGVmaW5lIFNDTV9XQVJOX0RFUFJFQ0FURURfREVGQVVMVCAic3Vt bWFyeSIKfCAjZGVmaW5lIEdVSUxFX1VTRV82NF9DQUxMUyAxCnwgI2RlZmluZSBIQVZFX1BPU0lY IDEKfCAjZGVmaW5lIEhBVkVfTkVUV09SS0lORyAxCnwgI2RlZmluZSBTSVpFT0ZfQ0hBUiAxCnwg I2RlZmluZSBTSVpFT0ZfVU5TSUdORURfQ0hBUiAxCnwgI2RlZmluZSBTSVpFT0ZfU0hPUlQgMgp8 ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9JTlQgNAp8 ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0lOVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA0Cnwg I2RlZmluZSBTSVpFT0ZfVU5TSUdORURfTE9ORyA0CnwgI2RlZmluZSBTSVpFT0ZfU0laRV9UIDQK fCAjZGVmaW5lIFNJWkVPRl9MT05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xP TkdfTE9ORyA4CnwgI2RlZmluZSBTSVpFT0ZfX19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0ZfVU5T SUdORURfX19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0ZfVk9JRF9QIDQKfCAjZGVmaW5lIFNJWkVP Rl9JTlRQVFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfVUlOVFBUUl9UIDQKfCAjZGVmaW5lIFNJWkVP Rl9QVFJESUZGX1QgNAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0Zf T0ZGX1QgOAp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVT X0ggMQp8ICNkZWZpbmUgU0laRU9GX0lOVE1BWF9UIDgKfCAjZGVmaW5lIFNURENfSEVBREVSUyAx CnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAx CnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9JT19IIDEKfCAjZGVm aW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBI QVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfUFJPQ0VTU19IIDEKfCAjZGVmaW5lIEhBVkVf U1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9SRUdFWF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lP Q1RMX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf VElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVCX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf VElNRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERf SCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2Rl ZmluZSBIQVZFX0dSUF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmlu ZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEdF VEdST1VQU19UIGdpZF90CnwgI2RlZmluZSBSRVRTSUdUWVBFIHZvaWQKfCAjZGVmaW5lIEhBVkVf TElCTSAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1RCWU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9DT05O RUNUIDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJUX0ggMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8K fCAvKiBEZWZpbmUgY2hzaXplIHRvIGFuIGlubm9jdW91cyB2YXJpYW50LCBpbiBjYXNlIDxsaW1p dHMuaD4gZGVjbGFyZXMgY2hzaXplLgp8ICAgIEZvciBleGFtcGxlLCBIUC1VWCAxMWkgPGxpbWl0 cy5oPiBkZWNsYXJlcyBnZXR0aW1lb2ZkYXkuICAqLwp8ICNkZWZpbmUgY2hzaXplIGlubm9jdW91 c19jaHNpemUKfCAKfCAvKiBTeXN0ZW0gaGVhZGVyIHRvIGRlZmluZSBfX3N0dWIgbWFjcm9zIGFu ZCBob3BlZnVsbHkgZmV3IHByb3RvdHlwZXMsCnwgICAgIHdoaWNoIGNhbiBjb25mbGljdCB3aXRo IGNoYXIgY2hzaXplICgpOyBiZWxvdy4KfCAgICAgUHJlZmVyIDxsaW1pdHMuaD4gdG8gPGFzc2Vy dC5oPiBpZiBfX1NURENfXyBpcyBkZWZpbmVkLCBzaW5jZQp8ICAgICA8bGltaXRzLmg+IGV4aXN0 cyBldmVuIG9uIGZyZWVzdGFuZGluZyBjb21waWxlcnMuICAqLwp8IAp8ICNpZmRlZiBfX1NURENf Xwp8ICMgaW5jbHVkZSA8bGltaXRzLmg+CnwgI2Vsc2UKfCAjIGluY2x1ZGUgPGFzc2VydC5oPgp8 ICNlbmRpZgp8IAp8ICN1bmRlZiBjaHNpemUKfCAKfCAvKiBPdmVycmlkZSBhbnkgR0NDIGludGVy bmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4KfCAgICBVc2UgY2hhciBiZWNhdXNlIGlu dCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBHQ0MKfCAgICBidWlsdGluIGFuZCB0 aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLwp8ICNpZmRl ZiBfX2NwbHVzcGx1cwp8IGV4dGVybiAiQyIKfCAjZW5kaWYKfCBjaGFyIGNoc2l6ZSAoKTsKfCAv KiBUaGUgR05VIEMgbGlicmFyeSBkZWZpbmVzIHRoaXMgZm9yIGZ1bmN0aW9ucyB3aGljaCBpdCBp bXBsZW1lbnRzCnwgICAgIHRvIGFsd2F5cyBmYWlsIHdpdGggRU5PU1lTLiAgU29tZSBmdW5jdGlv bnMgYXJlIGFjdHVhbGx5IG5hbWVkCnwgICAgIHNvbWV0aGluZyBzdGFydGluZyB3aXRoIF9fIGFu ZCB0aGUgbm9ybWFsIG5hbWUgaXMgYW4gYWxpYXMuICAqLwp8ICNpZiBkZWZpbmVkIF9fc3R1Yl9j aHNpemUgfHwgZGVmaW5lZCBfX3N0dWJfX19jaHNpemUKfCBjaG9rZSBtZQp8ICNlbmRpZgp8IAp8 IGludAp8IG1haW4gKCkKfCB7CnwgcmV0dXJuIGNoc2l6ZSAoKTsKfCAgIDsKfCAgIHJldHVybiAw Owp8IH0KY29uZmlndXJlOjM1NjM4OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTozNTU1ODogY2hlY2tp bmcgZm9yIGNsb2cKY29uZmlndXJlOjM1NjE0OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAg IGNvbmZ0ZXN0LmMgLWxtIC1sbHRkbCAgPiY1Ci9jeWdkcml2ZS9jL0RPQ1VNRX4xL0Fhcm9uL0xP Q0FMU34xL1RlbXAvY2NHVzhvbloubzogSW4gZnVuY3Rpb24gYG1haW4nOgovaG9tZS9BYXJvbi9n dWlsZS0xLjguNC9jb25mdGVzdC5jOjExMjogdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgX2Nsb2cn CmNvbGxlY3QyOiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVzCmNvbmZpZ3VyZTozNTYyMDogJD8g PSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8 ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAi Z3VpbGUiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjEuOC40Igp8ICNkZWZpbmUgUEFDS0FH RV9TVFJJTkcgImd1aWxlIDEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1n dWlsZUBnbnUub3JnIgp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RE TElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9I IDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAx CnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNk ZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEhBVkVfTElCTFRETCAxCnwgI2RlZmluZSBT Q01fV0FSTl9ERVBSRUNBVEVEX0RFRkFVTFQgInN1bW1hcnkiCnwgI2RlZmluZSBHVUlMRV9VU0Vf NjRfQ0FMTFMgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWCAxCnwgI2RlZmluZSBIQVZFX05FVFdPUktJ TkcgMQp8ICNkZWZpbmUgU0laRU9GX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0NI QVIgMQp8ICNkZWZpbmUgU0laRU9GX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9T SE9SVCAyCnwgI2RlZmluZSBTSVpFT0ZfSU5UIDQKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9J TlQgNAp8ICNkZWZpbmUgU0laRU9GX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xP TkcgNAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9OR19MT05H IDgKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9MT05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9G X19fSU5UNjQgMAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX19fSU5UNjQgMAp8ICNkZWZpbmUg U0laRU9GX1ZPSURfUCA0CnwgI2RlZmluZSBTSVpFT0ZfSU5UUFRSX1QgNAp8ICNkZWZpbmUgU0la RU9GX1VJTlRQVFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfUFRSRElGRl9UIDQKfCAjZGVmaW5lIFNJ WkVPRl9TSVpFX1QgNAp8ICNkZWZpbmUgU0laRU9GX09GRl9UIDgKfCAjZGVmaW5lIEhBVkVfU1RE SU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIFNJWkVPRl9JTlRN QVhfVCA4CnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAx CnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9I IDEKfCAjZGVmaW5lIEhBVkVfSU9fSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVm aW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBI QVZFX1BST0NFU1NfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVf UkVHRVhfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19JT0NUTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19USU1FQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVTX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVf VElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9VVElNRV9I IDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9HUlBfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZp bmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBHRVRHUk9VUFNfVCBnaWRfdAp8ICNkZWZpbmUg UkVUU0lHVFlQRSB2b2lkCnwgI2RlZmluZSBIQVZFX0xJQk0gMQp8ICNkZWZpbmUgSEFWRV9HRVRI T1NUQllOQU1FIDEKfCAjZGVmaW5lIEhBVkVfQ09OTkVDVCAxCnwgI2RlZmluZSBIQVZFX0FTU0VS VF9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgLyogRGVmaW5lIGNsb2cgdG8gYW4gaW5u b2N1b3VzIHZhcmlhbnQsIGluIGNhc2UgPGxpbWl0cy5oPiBkZWNsYXJlcyBjbG9nLgp8ICAgIEZv ciBleGFtcGxlLCBIUC1VWCAxMWkgPGxpbWl0cy5oPiBkZWNsYXJlcyBnZXR0aW1lb2ZkYXkuICAq Lwp8ICNkZWZpbmUgY2xvZyBpbm5vY3VvdXNfY2xvZwp8IAp8IC8qIFN5c3RlbSBoZWFkZXIgdG8g ZGVmaW5lIF9fc3R1YiBtYWNyb3MgYW5kIGhvcGVmdWxseSBmZXcgcHJvdG90eXBlcywKfCAgICAg d2hpY2ggY2FuIGNvbmZsaWN0IHdpdGggY2hhciBjbG9nICgpOyBiZWxvdy4KfCAgICAgUHJlZmVy IDxsaW1pdHMuaD4gdG8gPGFzc2VydC5oPiBpZiBfX1NURENfXyBpcyBkZWZpbmVkLCBzaW5jZQp8 ICAgICA8bGltaXRzLmg+IGV4aXN0cyBldmVuIG9uIGZyZWVzdGFuZGluZyBjb21waWxlcnMuICAq Lwp8IAp8ICNpZmRlZiBfX1NURENfXwp8ICMgaW5jbHVkZSA8bGltaXRzLmg+CnwgI2Vsc2UKfCAj IGluY2x1ZGUgPGFzc2VydC5oPgp8ICNlbmRpZgp8IAp8ICN1bmRlZiBjbG9nCnwgCnwgLyogT3Zl cnJpZGUgYW55IEdDQyBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuCnwgICAg VXNlIGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2ggdGhlIHJldHVybiB0eXBlIG9mIGEgR0ND CnwgICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMgYXJndW1lbnQgcHJvdG90eXBlIHdvdWxkIHN0aWxs IGFwcGx5LiAgKi8KfCAjaWZkZWYgX19jcGx1c3BsdXMKfCBleHRlcm4gIkMiCnwgI2VuZGlmCnwg Y2hhciBjbG9nICgpOwp8IC8qIFRoZSBHTlUgQyBsaWJyYXJ5IGRlZmluZXMgdGhpcyBmb3IgZnVu Y3Rpb25zIHdoaWNoIGl0IGltcGxlbWVudHMKfCAgICAgdG8gYWx3YXlzIGZhaWwgd2l0aCBFTk9T WVMuICBTb21lIGZ1bmN0aW9ucyBhcmUgYWN0dWFsbHkgbmFtZWQKfCAgICAgc29tZXRoaW5nIHN0 YXJ0aW5nIHdpdGggX18gYW5kIHRoZSBub3JtYWwgbmFtZSBpcyBhbiBhbGlhcy4gICovCnwgI2lm IGRlZmluZWQgX19zdHViX2Nsb2cgfHwgZGVmaW5lZCBfX3N0dWJfX19jbG9nCnwgY2hva2UgbWUK fCAjZW5kaWYKfCAKfCBpbnQKfCBtYWluICgpCnwgewp8IHJldHVybiBjbG9nICgpOwp8ICAgOwp8 ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MzU2Mzg6IHJlc3VsdDogbm8KY29uZmlndXJlOjM1 NTU4OiBjaGVja2luZyBmb3IgY2xvZzEwCmNvbmZpZ3VyZTozNTYxNDogZ2NjIC1vIGNvbmZ0ZXN0 LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1sbSAtbGx0ZGwgID4mNQovY3lnZHJpdmUvYy9ET0NV TUV+MS9BYXJvbi9MT0NBTFN+MS9UZW1wL2Nja21zRWNpLm86IEluIGZ1bmN0aW9uIGBtYWluJzoK L2hvbWUvQWFyb24vZ3VpbGUtMS44LjQvY29uZnRlc3QuYzoxMTI6IHVuZGVmaW5lZCByZWZlcmVu Y2UgdG8gYF9jbG9nMTAnCmNvbGxlY3QyOiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVzCmNvbmZp Z3VyZTozNTYyMDogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNv bmZkZWZzLmguICAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJndWlsZSIKfCAjZGVmaW5lIFBB Q0tBR0VfVEFSTkFNRSAiZ3VpbGUiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjEuOC40Igp8 ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgImd1aWxlIDEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9C VUdSRVBPUlQgImJ1Zy1ndWlsZUBnbnUub3JnIgp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAj ZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmlu ZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhB VkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVf VU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEhBVkVfTElCTFRE TCAxCnwgI2RlZmluZSBTQ01fV0FSTl9ERVBSRUNBVEVEX0RFRkFVTFQgInN1bW1hcnkiCnwgI2Rl ZmluZSBHVUlMRV9VU0VfNjRfQ0FMTFMgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWCAxCnwgI2RlZmlu ZSBIQVZFX05FVFdPUktJTkcgMQp8ICNkZWZpbmUgU0laRU9GX0NIQVIgMQp8ICNkZWZpbmUgU0la RU9GX1VOU0lHTkVEX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1NIT1JUIDIKfCAjZGVmaW5lIFNJ WkVPRl9VTlNJR05FRF9TSE9SVCAyCnwgI2RlZmluZSBTSVpFT0ZfSU5UIDQKfCAjZGVmaW5lIFNJ WkVPRl9VTlNJR05FRF9JTlQgNAp8ICNkZWZpbmUgU0laRU9GX0xPTkcgNAp8ICNkZWZpbmUgU0la RU9GX1VOU0lHTkVEX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBT SVpFT0ZfTE9OR19MT05HIDgKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9MT05HX0xPTkcgOAp8 ICNkZWZpbmUgU0laRU9GX19fSU5UNjQgMAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX19fSU5U NjQgMAp8ICNkZWZpbmUgU0laRU9GX1ZPSURfUCA0CnwgI2RlZmluZSBTSVpFT0ZfSU5UUFRSX1Qg NAp8ICNkZWZpbmUgU0laRU9GX1VJTlRQVFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfUFRSRElGRl9U IDQKfCAjZGVmaW5lIFNJWkVPRl9TSVpFX1QgNAp8ICNkZWZpbmUgU0laRU9GX09GRl9UIDgKfCAj ZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVm aW5lIFNJWkVPRl9JTlRNQVhfVCA4CnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUg SEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUg SEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU9fSCAxCnwgI2RlZmluZSBIQVZFX0xJ TUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllf SCAxCnwgI2RlZmluZSBIQVZFX1BST0NFU1NfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEK fCAjZGVmaW5lIEhBVkVfUkVHRVhfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19JT0NUTF9IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19USU1FQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVTX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVElNRV9IIDEK fCAjZGVmaW5lIEhBVkVfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZp bmUgSEFWRV9VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9H UlBfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJ TkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBHRVRHUk9VUFNfVCBn aWRfdAp8ICNkZWZpbmUgUkVUU0lHVFlQRSB2b2lkCnwgI2RlZmluZSBIQVZFX0xJQk0gMQp8ICNk ZWZpbmUgSEFWRV9HRVRIT1NUQllOQU1FIDEKfCAjZGVmaW5lIEhBVkVfQ09OTkVDVCAxCnwgI2Rl ZmluZSBIQVZFX0FTU0VSVF9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgLyogRGVmaW5l IGNsb2cxMCB0byBhbiBpbm5vY3VvdXMgdmFyaWFudCwgaW4gY2FzZSA8bGltaXRzLmg+IGRlY2xh cmVzIGNsb2cxMC4KfCAgICBGb3IgZXhhbXBsZSwgSFAtVVggMTFpIDxsaW1pdHMuaD4gZGVjbGFy ZXMgZ2V0dGltZW9mZGF5LiAgKi8KfCAjZGVmaW5lIGNsb2cxMCBpbm5vY3VvdXNfY2xvZzEwCnwg CnwgLyogU3lzdGVtIGhlYWRlciB0byBkZWZpbmUgX19zdHViIG1hY3JvcyBhbmQgaG9wZWZ1bGx5 IGZldyBwcm90b3R5cGVzLAp8ICAgICB3aGljaCBjYW4gY29uZmxpY3Qgd2l0aCBjaGFyIGNsb2cx MCAoKTsgYmVsb3cuCnwgICAgIFByZWZlciA8bGltaXRzLmg+IHRvIDxhc3NlcnQuaD4gaWYgX19T VERDX18gaXMgZGVmaW5lZCwgc2luY2UKfCAgICAgPGxpbWl0cy5oPiBleGlzdHMgZXZlbiBvbiBm cmVlc3RhbmRpbmcgY29tcGlsZXJzLiAgKi8KfCAKfCAjaWZkZWYgX19TVERDX18KfCAjIGluY2x1 ZGUgPGxpbWl0cy5oPgp8ICNlbHNlCnwgIyBpbmNsdWRlIDxhc3NlcnQuaD4KfCAjZW5kaWYKfCAK fCAjdW5kZWYgY2xvZzEwCnwgCnwgLyogT3ZlcnJpZGUgYW55IEdDQyBpbnRlcm5hbCBwcm90b3R5 cGUgdG8gYXZvaWQgYW4gZXJyb3IuCnwgICAgVXNlIGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0 Y2ggdGhlIHJldHVybiB0eXBlIG9mIGEgR0NDCnwgICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMgYXJn dW1lbnQgcHJvdG90eXBlIHdvdWxkIHN0aWxsIGFwcGx5LiAgKi8KfCAjaWZkZWYgX19jcGx1c3Bs dXMKfCBleHRlcm4gIkMiCnwgI2VuZGlmCnwgY2hhciBjbG9nMTAgKCk7CnwgLyogVGhlIEdOVSBD IGxpYnJhcnkgZGVmaW5lcyB0aGlzIGZvciBmdW5jdGlvbnMgd2hpY2ggaXQgaW1wbGVtZW50cwp8 ICAgICB0byBhbHdheXMgZmFpbCB3aXRoIEVOT1NZUy4gIFNvbWUgZnVuY3Rpb25zIGFyZSBhY3R1 YWxseSBuYW1lZAp8ICAgICBzb21ldGhpbmcgc3RhcnRpbmcgd2l0aCBfXyBhbmQgdGhlIG5vcm1h bCBuYW1lIGlzIGFuIGFsaWFzLiAgKi8KfCAjaWYgZGVmaW5lZCBfX3N0dWJfY2xvZzEwIHx8IGRl ZmluZWQgX19zdHViX19fY2xvZzEwCnwgY2hva2UgbWUKfCAjZW5kaWYKfCAKfCBpbnQKfCBtYWlu ICgpCnwgewp8IHJldHVybiBjbG9nMTAgKCk7CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZp Z3VyZTozNTYzODogcmVzdWx0OiBubwpjb25maWd1cmU6MzU1NTg6IGNoZWNraW5nIGZvciBjdGVy bWlkCmNvbmZpZ3VyZTozNTYxNDogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVz dC5jIC1sbSAtbGx0ZGwgID4mNQpjb25maWd1cmU6MzU2MjA6ICQ/ID0gMApjb25maWd1cmU6MzU2 Mzg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozNTU1ODogY2hlY2tpbmcgZm9yIGZlc2V0cm91bmQK Y29uZmlndXJlOjM1NjE0OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMg LWxtIC1sbHRkbCAgPiY1Ci9jeWdkcml2ZS9jL0RPQ1VNRX4xL0Fhcm9uL0xPQ0FMU34xL1RlbXAv Y2NncGNlRTYubzogSW4gZnVuY3Rpb24gYG1haW4nOgovaG9tZS9BYXJvbi9ndWlsZS0xLjguNC9j b25mdGVzdC5jOjExMzogdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgX2Zlc2V0cm91bmQnCmNvbGxl Y3QyOiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVzCmNvbmZpZ3VyZTozNTYyMDogJD8gPSAxCmNv bmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8ICNkZWZp bmUgUEFDS0FHRV9OQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZ3VpbGUi CnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJ TkcgImd1aWxlIDEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1ndWlsZUBn bnUub3JnIgp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVT X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0gg MQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAj ZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2Rl ZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUg SEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEhBVkVfTElCTFRETCAxCnwgI2RlZmluZSBTQ01fV0FS Tl9ERVBSRUNBVEVEX0RFRkFVTFQgInN1bW1hcnkiCnwgI2RlZmluZSBHVUlMRV9VU0VfNjRfQ0FM TFMgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWCAxCnwgI2RlZmluZSBIQVZFX05FVFdPUktJTkcgMQp8 ICNkZWZpbmUgU0laRU9GX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0NIQVIgMQp8 ICNkZWZpbmUgU0laRU9GX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9TSE9SVCAy CnwgI2RlZmluZSBTSVpFT0ZfSU5UIDQKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9JTlQgNAp8 ICNkZWZpbmUgU0laRU9GX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xPTkcgNAp8 ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9OR19MT05HIDgKfCAj ZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9MT05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX19fSU5U NjQgMAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX19fSU5UNjQgMAp8ICNkZWZpbmUgU0laRU9G X1ZPSURfUCA0CnwgI2RlZmluZSBTSVpFT0ZfSU5UUFRSX1QgNAp8ICNkZWZpbmUgU0laRU9GX1VJ TlRQVFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfUFRSRElGRl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9T SVpFX1QgNAp8ICNkZWZpbmUgU0laRU9GX09GRl9UIDgKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0gg MQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIFNJWkVPRl9JTlRNQVhfVCA4 CnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2Rl ZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAj ZGVmaW5lIEhBVkVfSU9fSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhB VkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1BS T0NFU1NfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfUkVHRVhf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19JT0NUTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVD VF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1F Ql9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQ RVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfVElNRV9I IDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9VVElNRV9IIDEKfCAj ZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9HUlBfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFW RV9VTklTVERfSCAxCnwgI2RlZmluZSBHRVRHUk9VUFNfVCBnaWRfdAp8ICNkZWZpbmUgUkVUU0lH VFlQRSB2b2lkCnwgI2RlZmluZSBIQVZFX0xJQk0gMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUQllO QU1FIDEKfCAjZGVmaW5lIEhBVkVfQ09OTkVDVCAxCnwgI2RlZmluZSBIQVZFX0FTU0VSVF9IIDEK fCAjZGVmaW5lIEhBVkVfQ1RFUk1JRCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8IC8qIERl ZmluZSBmZXNldHJvdW5kIHRvIGFuIGlubm9jdW91cyB2YXJpYW50LCBpbiBjYXNlIDxsaW1pdHMu aD4gZGVjbGFyZXMgZmVzZXRyb3VuZC4KfCAgICBGb3IgZXhhbXBsZSwgSFAtVVggMTFpIDxsaW1p dHMuaD4gZGVjbGFyZXMgZ2V0dGltZW9mZGF5LiAgKi8KfCAjZGVmaW5lIGZlc2V0cm91bmQgaW5u b2N1b3VzX2Zlc2V0cm91bmQKfCAKfCAvKiBTeXN0ZW0gaGVhZGVyIHRvIGRlZmluZSBfX3N0dWIg bWFjcm9zIGFuZCBob3BlZnVsbHkgZmV3IHByb3RvdHlwZXMsCnwgICAgIHdoaWNoIGNhbiBjb25m bGljdCB3aXRoIGNoYXIgZmVzZXRyb3VuZCAoKTsgYmVsb3cuCnwgICAgIFByZWZlciA8bGltaXRz Lmg+IHRvIDxhc3NlcnQuaD4gaWYgX19TVERDX18gaXMgZGVmaW5lZCwgc2luY2UKfCAgICAgPGxp bWl0cy5oPiBleGlzdHMgZXZlbiBvbiBmcmVlc3RhbmRpbmcgY29tcGlsZXJzLiAgKi8KfCAKfCAj aWZkZWYgX19TVERDX18KfCAjIGluY2x1ZGUgPGxpbWl0cy5oPgp8ICNlbHNlCnwgIyBpbmNsdWRl IDxhc3NlcnQuaD4KfCAjZW5kaWYKfCAKfCAjdW5kZWYgZmVzZXRyb3VuZAp8IAp8IC8qIE92ZXJy aWRlIGFueSBHQ0MgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLgp8ICAgIFVz ZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIEdDQwp8 ICAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBh cHBseS4gICovCnwgI2lmZGVmIF9fY3BsdXNwbHVzCnwgZXh0ZXJuICJDIgp8ICNlbmRpZgp8IGNo YXIgZmVzZXRyb3VuZCAoKTsKfCAvKiBUaGUgR05VIEMgbGlicmFyeSBkZWZpbmVzIHRoaXMgZm9y IGZ1bmN0aW9ucyB3aGljaCBpdCBpbXBsZW1lbnRzCnwgICAgIHRvIGFsd2F5cyBmYWlsIHdpdGgg RU5PU1lTLiAgU29tZSBmdW5jdGlvbnMgYXJlIGFjdHVhbGx5IG5hbWVkCnwgICAgIHNvbWV0aGlu ZyBzdGFydGluZyB3aXRoIF9fIGFuZCB0aGUgbm9ybWFsIG5hbWUgaXMgYW4gYWxpYXMuICAqLwp8 ICNpZiBkZWZpbmVkIF9fc3R1Yl9mZXNldHJvdW5kIHx8IGRlZmluZWQgX19zdHViX19fZmVzZXRy b3VuZAp8IGNob2tlIG1lCnwgI2VuZGlmCnwgCnwgaW50CnwgbWFpbiAoKQp8IHsKfCByZXR1cm4g ZmVzZXRyb3VuZCAoKTsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjM1NjM4OiBy ZXN1bHQ6IG5vCmNvbmZpZ3VyZTozNTU1ODogY2hlY2tpbmcgZm9yIGZ0aW1lCmNvbmZpZ3VyZToz NTYxNDogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1sbSAtbGx0ZGwg ID4mNQpjb25maWd1cmU6MzU2MjA6ICQ/ID0gMApjb25maWd1cmU6MzU2Mzg6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZTozNTU1ODogY2hlY2tpbmcgZm9yIGZ0cnVuY2F0ZQpjb25maWd1cmU6MzU2MTQ6 IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3QuYyAtbG0gLWxsdGRsICA+JjUK Y29uZmlndXJlOjM1NjIwOiAkPyA9IDAKY29uZmlndXJlOjM1NjM4OiByZXN1bHQ6IHllcwpjb25m aWd1cmU6MzU1NTg6IGNoZWNraW5nIGZvciBmY2hvd24KY29uZmlndXJlOjM1NjE0OiBnY2MgLW8g Y29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxtIC1sbHRkbCAgPiY1CmNvbmZpZ3Vy ZTozNTYyMDogJD8gPSAwCmNvbmZpZ3VyZTozNTYzODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM1 NTU4OiBjaGVja2luZyBmb3IgZ2V0Y3dkCmNvbmZpZ3VyZTozNTYxNDogZ2NjIC1vIGNvbmZ0ZXN0 LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1sbSAtbGx0ZGwgID4mNQpjb25maWd1cmU6MzU2MjA6 ICQ/ID0gMApjb25maWd1cmU6MzU2Mzg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozNTU1ODogY2hl Y2tpbmcgZm9yIGdldGV1aWQKY29uZmlndXJlOjM1NjE0OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1n IC1PMiAgIGNvbmZ0ZXN0LmMgLWxtIC1sbHRkbCAgPiY1CmNvbmZpZ3VyZTozNTYyMDogJD8gPSAw CmNvbmZpZ3VyZTozNTYzODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM1NTU4OiBjaGVja2luZyBm b3IgZ2V0dGltZW9mZGF5CmNvbmZpZ3VyZTozNTYxNDogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAt TzIgICBjb25mdGVzdC5jIC1sbSAtbGx0ZGwgID4mNQpjb25maWd1cmU6MzU2MjA6ICQ/ID0gMApj b25maWd1cmU6MzU2Mzg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozNTU1ODogY2hlY2tpbmcgZm9y IGdtdGltZV9yCmNvbmZpZ3VyZTozNTYxNDogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBj b25mdGVzdC5jIC1sbSAtbGx0ZGwgID4mNQpjb25maWd1cmU6MzU2MjA6ICQ/ID0gMApjb25maWd1 cmU6MzU2Mzg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozNTU1ODogY2hlY2tpbmcgZm9yIGlvY3Rs CmNvbmZpZ3VyZTozNTYxNDogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5j IC1sbSAtbGx0ZGwgID4mNQpjb25maWd1cmU6MzU2MjA6ICQ/ID0gMApjb25maWd1cmU6MzU2Mzg6 IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozNTU1ODogY2hlY2tpbmcgZm9yIGxzdGF0CmNvbmZpZ3Vy ZTozNTYxNDogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1sbSAtbGx0 ZGwgID4mNQpjb25maWd1cmU6MzU2MjA6ICQ/ID0gMApjb25maWd1cmU6MzU2Mzg6IHJlc3VsdDog eWVzCmNvbmZpZ3VyZTozNTU1ODogY2hlY2tpbmcgZm9yIG1rZGlyCmNvbmZpZ3VyZTozNTYxNDog Z2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1sbSAtbGx0ZGwgID4mNQpj b25maWd1cmU6MzU2MjA6ICQ/ID0gMApjb25maWd1cmU6MzU2Mzg6IHJlc3VsdDogeWVzCmNvbmZp Z3VyZTozNTU1ODogY2hlY2tpbmcgZm9yIG1rbm9kCmNvbmZpZ3VyZTozNTYxNDogZ2NjIC1vIGNv bmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1sbSAtbGx0ZGwgID4mNQpjb25maWd1cmU6 MzU2MjA6ICQ/ID0gMApjb25maWd1cmU6MzU2Mzg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozNTU1 ODogY2hlY2tpbmcgZm9yIG5pY2UKY29uZmlndXJlOjM1NjE0OiBnY2MgLW8gY29uZnRlc3QuZXhl IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxtIC1sbHRkbCAgPiY1CmNvbmZpZ3VyZTozNTYyMDogJD8g PSAwCmNvbmZpZ3VyZTozNTYzODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM1NTU4OiBjaGVja2lu ZyBmb3IgcGlwZQpjb25maWd1cmU6MzU2MTQ6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAg Y29uZnRlc3QuYyAtbG0gLWxsdGRsICA+JjUKY29uZmlndXJlOjM1NjIwOiAkPyA9IDAKY29uZmln dXJlOjM1NjM4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzU1NTg6IGNoZWNraW5nIGZvciBfcGlw ZQpjb25maWd1cmU6MzU2MTQ6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3Qu YyAtbG0gLWxsdGRsICA+JjUKY29uZmlndXJlOjM1NjIwOiAkPyA9IDAKY29uZmlndXJlOjM1NjM4 OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzU1NTg6IGNoZWNraW5nIGZvciByZWFkZGlyX3IKY29u ZmlndXJlOjM1NjE0OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxt IC1sbHRkbCAgPiY1CmNvbmZpZ3VyZTozNTYyMDogJD8gPSAwCmNvbmZpZ3VyZTozNTYzODogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjM1NTU4OiBjaGVja2luZyBmb3IgcmVhZGxpbmsKY29uZmlndXJl OjM1NjE0OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxtIC1sbHRk bCAgPiY1CmNvbmZpZ3VyZTozNTYyMDogJD8gPSAwCmNvbmZpZ3VyZTozNTYzODogcmVzdWx0OiB5 ZXMKY29uZmlndXJlOjM1NTU4OiBjaGVja2luZyBmb3IgcmVuYW1lCmNvbmZpZ3VyZTozNTYxNDog Z2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1sbSAtbGx0ZGwgID4mNQpj b25maWd1cmU6MzU2MjA6ICQ/ID0gMApjb25maWd1cmU6MzU2Mzg6IHJlc3VsdDogeWVzCmNvbmZp Z3VyZTozNTU1ODogY2hlY2tpbmcgZm9yIHJtZGlyCmNvbmZpZ3VyZTozNTYxNDogZ2NjIC1vIGNv bmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1sbSAtbGx0ZGwgID4mNQpjb25maWd1cmU6 MzU2MjA6ICQ/ID0gMApjb25maWd1cmU6MzU2Mzg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozNTU1 ODogY2hlY2tpbmcgZm9yIHNlbGVjdApjb25maWd1cmU6MzU2MTQ6IGdjYyAtbyBjb25mdGVzdC5l eGUgLWcgLU8yICAgY29uZnRlc3QuYyAtbG0gLWxsdGRsICA+JjUKY29uZmlndXJlOjM1NjIwOiAk PyA9IDAKY29uZmlndXJlOjM1NjM4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzU1NTg6IGNoZWNr aW5nIGZvciBzZXRlZ2lkCmNvbmZpZ3VyZTozNTYxNDogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAt TzIgICBjb25mdGVzdC5jIC1sbSAtbGx0ZGwgID4mNQpjb25maWd1cmU6MzU2MjA6ICQ/ID0gMApj b25maWd1cmU6MzU2Mzg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozNTU1ODogY2hlY2tpbmcgZm9y IHNldGV1aWQKY29uZmlndXJlOjM1NjE0OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNv bmZ0ZXN0LmMgLWxtIC1sbHRkbCAgPiY1CmNvbmZpZ3VyZTozNTYyMDogJD8gPSAwCmNvbmZpZ3Vy ZTozNTYzODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM1NTU4OiBjaGVja2luZyBmb3Igc2V0bG9j YWxlCmNvbmZpZ3VyZTozNTYxNDogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVz dC5jIC1sbSAtbGx0ZGwgID4mNQpjb25maWd1cmU6MzU2MjA6ICQ/ID0gMApjb25maWd1cmU6MzU2 Mzg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozNTU1ODogY2hlY2tpbmcgZm9yIHNldHBnaWQKY29u ZmlndXJlOjM1NjE0OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxt IC1sbHRkbCAgPiY1CmNvbmZpZ3VyZTozNTYyMDogJD8gPSAwCmNvbmZpZ3VyZTozNTYzODogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjM1NTU4OiBjaGVja2luZyBmb3Igc2V0c2lkCmNvbmZpZ3VyZToz NTYxNDogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1sbSAtbGx0ZGwg ID4mNQpjb25maWd1cmU6MzU2MjA6ICQ/ID0gMApjb25maWd1cmU6MzU2Mzg6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZTozNTU1ODogY2hlY2tpbmcgZm9yIHNpZ2FjdGlvbgpjb25maWd1cmU6MzU2MTQ6 IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3QuYyAtbG0gLWxsdGRsICA+JjUK Y29uZmlndXJlOjM1NjIwOiAkPyA9IDAKY29uZmlndXJlOjM1NjM4OiByZXN1bHQ6IHllcwpjb25m aWd1cmU6MzU1NTg6IGNoZWNraW5nIGZvciBzaWdpbnRlcnJ1cHQKY29uZmlndXJlOjM1NjE0OiBn Y2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxtIC1sbHRkbCAgPiY1CmNv bmZpZ3VyZTozNTYyMDogJD8gPSAwCmNvbmZpZ3VyZTozNTYzODogcmVzdWx0OiB5ZXMKY29uZmln dXJlOjM1NTU4OiBjaGVja2luZyBmb3Igc3RhdDY0CmNvbmZpZ3VyZTozNTYxNDogZ2NjIC1vIGNv bmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1sbSAtbGx0ZGwgID4mNQovY3lnZHJpdmUv Yy9ET0NVTUV+MS9BYXJvbi9MT0NBTFN+MS9UZW1wL2NjS0lMWjFtLm86IEluIGZ1bmN0aW9uIGBt YWluJzoKL2hvbWUvQWFyb24vZ3VpbGUtMS44LjQvY29uZnRlc3QuYzoxMzk6IHVuZGVmaW5lZCBy ZWZlcmVuY2UgdG8gYF9zdGF0NjQnCmNvbGxlY3QyOiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVz CmNvbmZpZ3VyZTozNTYyMDogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8 IC8qIGNvbmZkZWZzLmguICAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJndWlsZSIKfCAjZGVm aW5lIFBBQ0tBR0VfVEFSTkFNRSAiZ3VpbGUiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjEu OC40Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgImd1aWxlIDEuOC40Igp8ICNkZWZpbmUgUEFD S0FHRV9CVUdSRVBPUlQgImJ1Zy1ndWlsZUBnbnUub3JnIgp8ICNkZWZpbmUgU1REQ19IRUFERVJT IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9I IDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwg I2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVm aW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5l IEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEhBVkVf TElCTFRETCAxCnwgI2RlZmluZSBTQ01fV0FSTl9ERVBSRUNBVEVEX0RFRkFVTFQgInN1bW1hcnki CnwgI2RlZmluZSBHVUlMRV9VU0VfNjRfQ0FMTFMgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWCAxCnwg I2RlZmluZSBIQVZFX05FVFdPUktJTkcgMQp8ICNkZWZpbmUgU0laRU9GX0NIQVIgMQp8ICNkZWZp bmUgU0laRU9GX1VOU0lHTkVEX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1NIT1JUIDIKfCAjZGVm aW5lIFNJWkVPRl9VTlNJR05FRF9TSE9SVCAyCnwgI2RlZmluZSBTSVpFT0ZfSU5UIDQKfCAjZGVm aW5lIFNJWkVPRl9VTlNJR05FRF9JTlQgNAp8ICNkZWZpbmUgU0laRU9GX0xPTkcgNAp8ICNkZWZp bmUgU0laRU9GX1VOU0lHTkVEX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2Rl ZmluZSBTSVpFT0ZfTE9OR19MT05HIDgKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9MT05HX0xP TkcgOAp8ICNkZWZpbmUgU0laRU9GX19fSU5UNjQgMAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVE X19fSU5UNjQgMAp8ICNkZWZpbmUgU0laRU9GX1ZPSURfUCA0CnwgI2RlZmluZSBTSVpFT0ZfSU5U UFRSX1QgNAp8ICNkZWZpbmUgU0laRU9GX1VJTlRQVFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfUFRS RElGRl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9TSVpFX1QgNAp8ICNkZWZpbmUgU0laRU9GX09GRl9U IDgKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEK fCAjZGVmaW5lIFNJWkVPRl9JTlRNQVhfVCA4CnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNk ZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNk ZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU9fSCAxCnwgI2RlZmluZSBI QVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9N RU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1BST0NFU1NfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklO R19IIDEKfCAjZGVmaW5lIEhBVkVfUkVHRVhfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19JT0NUTF9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVT X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVElN RV9IIDEKfCAjZGVmaW5lIEhBVkVfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8 ICNkZWZpbmUgSEFWRV9VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUg SEFWRV9HUlBfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFW RV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBHRVRHUk9V UFNfVCBnaWRfdAp8ICNkZWZpbmUgUkVUU0lHVFlQRSB2b2lkCnwgI2RlZmluZSBIQVZFX0xJQk0g MQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUQllOQU1FIDEKfCAjZGVmaW5lIEhBVkVfQ09OTkVDVCAx CnwgI2RlZmluZSBIQVZFX0FTU0VSVF9IIDEKfCAjZGVmaW5lIEhBVkVfQ1RFUk1JRCAxCnwgI2Rl ZmluZSBIQVZFX0ZUSU1FIDEKfCAjZGVmaW5lIEhBVkVfRlRSVU5DQVRFIDEKfCAjZGVmaW5lIEhB VkVfRkNIT1dOIDEKfCAjZGVmaW5lIEhBVkVfR0VUQ1dEIDEKfCAjZGVmaW5lIEhBVkVfR0VURVVJ RCAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX0dNVElNRV9S IDEKfCAjZGVmaW5lIEhBVkVfSU9DVEwgMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwgI2RlZmlu ZSBIQVZFX01LRElSIDEKfCAjZGVmaW5lIEhBVkVfTUtOT0QgMQp8ICNkZWZpbmUgSEFWRV9OSUNF IDEKfCAjZGVmaW5lIEhBVkVfUElQRSAxCnwgI2RlZmluZSBIQVZFX19QSVBFIDEKfCAjZGVmaW5l IEhBVkVfUkVBRERJUl9SIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFW RV9SRU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9STURJUiAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAx CnwgI2RlZmluZSBIQVZFX1NFVEVHSUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRFVUlEIDEKfCAjZGVm aW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfU0VUUEdJRCAxCnwgI2RlZmluZSBI QVZFX1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX1NJR0FDVElPTiAxCnwgI2RlZmluZSBIQVZFX1NJ R0lOVEVSUlVQVCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8IC8qIERlZmluZSBzdGF0NjQg dG8gYW4gaW5ub2N1b3VzIHZhcmlhbnQsIGluIGNhc2UgPGxpbWl0cy5oPiBkZWNsYXJlcyBzdGF0 NjQuCnwgICAgRm9yIGV4YW1wbGUsIEhQLVVYIDExaSA8bGltaXRzLmg+IGRlY2xhcmVzIGdldHRp bWVvZmRheS4gICovCnwgI2RlZmluZSBzdGF0NjQgaW5ub2N1b3VzX3N0YXQ2NAp8IAp8IC8qIFN5 c3RlbSBoZWFkZXIgdG8gZGVmaW5lIF9fc3R1YiBtYWNyb3MgYW5kIGhvcGVmdWxseSBmZXcgcHJv dG90eXBlcywKfCAgICAgd2hpY2ggY2FuIGNvbmZsaWN0IHdpdGggY2hhciBzdGF0NjQgKCk7IGJl bG93Lgp8ICAgICBQcmVmZXIgPGxpbWl0cy5oPiB0byA8YXNzZXJ0Lmg+IGlmIF9fU1REQ19fIGlz IGRlZmluZWQsIHNpbmNlCnwgICAgIDxsaW1pdHMuaD4gZXhpc3RzIGV2ZW4gb24gZnJlZXN0YW5k aW5nIGNvbXBpbGVycy4gICovCnwgCnwgI2lmZGVmIF9fU1REQ19fCnwgIyBpbmNsdWRlIDxsaW1p dHMuaD4KfCAjZWxzZQp8ICMgaW5jbHVkZSA8YXNzZXJ0Lmg+CnwgI2VuZGlmCnwgCnwgI3VuZGVm IHN0YXQ2NAp8IAp8IC8qIE92ZXJyaWRlIGFueSBHQ0MgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2 b2lkIGFuIGVycm9yLgp8ICAgIFVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSBy ZXR1cm4gdHlwZSBvZiBhIEdDQwp8ICAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHBy b3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCnwgI2lmZGVmIF9fY3BsdXNwbHVzCnwgZXh0 ZXJuICJDIgp8ICNlbmRpZgp8IGNoYXIgc3RhdDY0ICgpOwp8IC8qIFRoZSBHTlUgQyBsaWJyYXJ5 IGRlZmluZXMgdGhpcyBmb3IgZnVuY3Rpb25zIHdoaWNoIGl0IGltcGxlbWVudHMKfCAgICAgdG8g YWx3YXlzIGZhaWwgd2l0aCBFTk9TWVMuICBTb21lIGZ1bmN0aW9ucyBhcmUgYWN0dWFsbHkgbmFt ZWQKfCAgICAgc29tZXRoaW5nIHN0YXJ0aW5nIHdpdGggX18gYW5kIHRoZSBub3JtYWwgbmFtZSBp cyBhbiBhbGlhcy4gICovCnwgI2lmIGRlZmluZWQgX19zdHViX3N0YXQ2NCB8fCBkZWZpbmVkIF9f c3R1Yl9fX3N0YXQ2NAp8IGNob2tlIG1lCnwgI2VuZGlmCnwgCnwgaW50CnwgbWFpbiAoKQp8IHsK fCByZXR1cm4gc3RhdDY0ICgpOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MzU2 Mzg6IHJlc3VsdDogbm8KY29uZmlndXJlOjM1NTU4OiBjaGVja2luZyBmb3Igc3RyZnRpbWUKY29u ZmlndXJlOjM1NjE0OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxt IC1sbHRkbCAgPiY1CmNvbmZ0ZXN0LmM6MTI4OiB3YXJuaW5nOiBjb25mbGljdGluZyB0eXBlcyBm b3IgYnVpbHQtaW4gZnVuY3Rpb24gJ3N0cmZ0aW1lJwpjb25maWd1cmU6MzU2MjA6ICQ/ID0gMApj b25maWd1cmU6MzU2Mzg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozNTU1ODogY2hlY2tpbmcgZm9y IHN0cnB0aW1lCmNvbmZpZ3VyZTozNTYxNDogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBj b25mdGVzdC5jIC1sbSAtbGx0ZGwgID4mNQpjb25maWd1cmU6MzU2MjA6ICQ/ID0gMApjb25maWd1 cmU6MzU2Mzg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozNTU1ODogY2hlY2tpbmcgZm9yIHN5bWxp bmsKY29uZmlndXJlOjM1NjE0OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0 LmMgLWxtIC1sbHRkbCAgPiY1CmNvbmZpZ3VyZTozNTYyMDogJD8gPSAwCmNvbmZpZ3VyZTozNTYz ODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM1NTU4OiBjaGVja2luZyBmb3Igc3luYwpjb25maWd1 cmU6MzU2MTQ6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3QuYyAtbG0gLWxs dGRsICA+JjUKY29uZmlndXJlOjM1NjIwOiAkPyA9IDAKY29uZmlndXJlOjM1NjM4OiByZXN1bHQ6 IHllcwpjb25maWd1cmU6MzU1NTg6IGNoZWNraW5nIGZvciBzeXNjb25mCmNvbmZpZ3VyZTozNTYx NDogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1sbSAtbGx0ZGwgID4m NQpjb25maWd1cmU6MzU2MjA6ICQ/ID0gMApjb25maWd1cmU6MzU2Mzg6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZTozNTU1ODogY2hlY2tpbmcgZm9yIHRjZ2V0cGdycApjb25maWd1cmU6MzU2MTQ6IGdj YyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3QuYyAtbG0gLWxsdGRsICA+JjUKY29u ZmlndXJlOjM1NjIwOiAkPyA9IDAKY29uZmlndXJlOjM1NjM4OiByZXN1bHQ6IHllcwpjb25maWd1 cmU6MzU1NTg6IGNoZWNraW5nIGZvciB0Y3NldHBncnAKY29uZmlndXJlOjM1NjE0OiBnY2MgLW8g Y29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxtIC1sbHRkbCAgPiY1CmNvbmZpZ3Vy ZTozNTYyMDogJD8gPSAwCmNvbmZpZ3VyZTozNTYzODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM1 NTU4OiBjaGVja2luZyBmb3IgdGltZXMKY29uZmlndXJlOjM1NjE0OiBnY2MgLW8gY29uZnRlc3Qu ZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxtIC1sbHRkbCAgPiY1CmNvbmZpZ3VyZTozNTYyMDog JD8gPSAwCmNvbmZpZ3VyZTozNTYzODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM1NTU4OiBjaGVj a2luZyBmb3IgdW5hbWUKY29uZmlndXJlOjM1NjE0OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1P MiAgIGNvbmZ0ZXN0LmMgLWxtIC1sbHRkbCAgPiY1CmNvbmZpZ3VyZTozNTYyMDogJD8gPSAwCmNv bmZpZ3VyZTozNTYzODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM1NTU4OiBjaGVja2luZyBmb3Ig d2FpdHBpZApjb25maWd1cmU6MzU2MTQ6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgY29u ZnRlc3QuYyAtbG0gLWxsdGRsICA+JjUKY29uZmlndXJlOjM1NjIwOiAkPyA9IDAKY29uZmlndXJl OjM1NjM4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzU1NTg6IGNoZWNraW5nIGZvciBzdHJkdXAK Y29uZmlndXJlOjM1NjE0OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMg LWxtIC1sbHRkbCAgPiY1CmNvbmZ0ZXN0LmM6MTM4OiB3YXJuaW5nOiBjb25mbGljdGluZyB0eXBl cyBmb3IgYnVpbHQtaW4gZnVuY3Rpb24gJ3N0cmR1cCcKY29uZmlndXJlOjM1NjIwOiAkPyA9IDAK Y29uZmlndXJlOjM1NjM4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzU1NTg6IGNoZWNraW5nIGZv ciBzeXN0ZW0KY29uZmlndXJlOjM1NjE0OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNv bmZ0ZXN0LmMgLWxtIC1sbHRkbCAgPiY1CmNvbmZpZ3VyZTozNTYyMDogJD8gPSAwCmNvbmZpZ3Vy ZTozNTYzODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM1NTU4OiBjaGVja2luZyBmb3IgdXNsZWVw CmNvbmZpZ3VyZTozNTYxNDogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5j IC1sbSAtbGx0ZGwgID4mNQpjb25maWd1cmU6MzU2MjA6ICQ/ID0gMApjb25maWd1cmU6MzU2Mzg6 IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozNTU1ODogY2hlY2tpbmcgZm9yIGF0ZXhpdApjb25maWd1 cmU6MzU2MTQ6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3QuYyAtbG0gLWxs dGRsICA+JjUKY29uZmlndXJlOjM1NjIwOiAkPyA9IDAKY29uZmlndXJlOjM1NjM4OiByZXN1bHQ6 IHllcwpjb25maWd1cmU6MzU1NTg6IGNoZWNraW5nIGZvciBvbl9leGl0CmNvbmZpZ3VyZTozNTYx NDogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1sbSAtbGx0ZGwgID4m NQpjb25maWd1cmU6MzU2MjA6ICQ/ID0gMApjb25maWd1cmU6MzU2Mzg6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZTozNTU1ODogY2hlY2tpbmcgZm9yIGNob3duCmNvbmZpZ3VyZTozNTYxNDogZ2NjIC1v IGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1sbSAtbGx0ZGwgID4mNQpjb25maWd1 cmU6MzU2MjA6ICQ/ID0gMApjb25maWd1cmU6MzU2Mzg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToz NTU1ODogY2hlY2tpbmcgZm9yIGxpbmsKY29uZmlndXJlOjM1NjE0OiBnY2MgLW8gY29uZnRlc3Qu ZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxtIC1sbHRkbCAgPiY1CmNvbmZpZ3VyZTozNTYyMDog JD8gPSAwCmNvbmZpZ3VyZTozNTYzODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM1NTU4OiBjaGVj a2luZyBmb3IgZmNudGwKY29uZmlndXJlOjM1NjE0OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1P MiAgIGNvbmZ0ZXN0LmMgLWxtIC1sbHRkbCAgPiY1CmNvbmZpZ3VyZTozNTYyMDogJD8gPSAwCmNv bmZpZ3VyZTozNTYzODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM1NTU4OiBjaGVja2luZyBmb3Ig dHR5bmFtZQpjb25maWd1cmU6MzU2MTQ6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgY29u ZnRlc3QuYyAtbG0gLWxsdGRsICA+JjUKY29uZmlndXJlOjM1NjIwOiAkPyA9IDAKY29uZmlndXJl OjM1NjM4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzU1NTg6IGNoZWNraW5nIGZvciBnZXRwd2Vu dApjb25maWd1cmU6MzU2MTQ6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3Qu YyAtbG0gLWxsdGRsICA+JjUKY29uZmlndXJlOjM1NjIwOiAkPyA9IDAKY29uZmlndXJlOjM1NjM4 OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzU1NTg6IGNoZWNraW5nIGZvciBnZXRncmVudApjb25m aWd1cmU6MzU2MTQ6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3QuYyAtbG0g LWxsdGRsICA+JjUKY29uZmlndXJlOjM1NjIwOiAkPyA9IDAKY29uZmlndXJlOjM1NjM4OiByZXN1 bHQ6IHllcwpjb25maWd1cmU6MzU1NTg6IGNoZWNraW5nIGZvciBraWxsCmNvbmZpZ3VyZTozNTYx NDogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1sbSAtbGx0ZGwgID4m NQpjb25maWd1cmU6MzU2MjA6ICQ/ID0gMApjb25maWd1cmU6MzU2Mzg6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZTozNTU1ODogY2hlY2tpbmcgZm9yIGdldHBwaWQKY29uZmlndXJlOjM1NjE0OiBnY2Mg LW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxtIC1sbHRkbCAgPiY1CmNvbmZp Z3VyZTozNTYyMDogJD8gPSAwCmNvbmZpZ3VyZTozNTYzODogcmVzdWx0OiB5ZXMKY29uZmlndXJl OjM1NTU4OiBjaGVja2luZyBmb3IgZ2V0cGdycApjb25maWd1cmU6MzU2MTQ6IGdjYyAtbyBjb25m dGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3QuYyAtbG0gLWxsdGRsICA+JjUKY29uZmlndXJlOjM1 NjIwOiAkPyA9IDAKY29uZmlndXJlOjM1NjM4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzU1NTg6 IGNoZWNraW5nIGZvciBmb3JrCmNvbmZpZ3VyZTozNTYxNDogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAt ZyAtTzIgICBjb25mdGVzdC5jIC1sbSAtbGx0ZGwgID4mNQpjb25maWd1cmU6MzU2MjA6ICQ/ID0g MApjb25maWd1cmU6MzU2Mzg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozNTU1ODogY2hlY2tpbmcg Zm9yIHNldGl0aW1lcgpjb25maWd1cmU6MzU2MTQ6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8y ICAgY29uZnRlc3QuYyAtbG0gLWxsdGRsICA+JjUKY29uZmlndXJlOjM1NjIwOiAkPyA9IDAKY29u ZmlndXJlOjM1NjM4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzU1NTg6IGNoZWNraW5nIGZvciBn ZXRpdGltZXIKY29uZmlndXJlOjM1NjE0OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNv bmZ0ZXN0LmMgLWxtIC1sbHRkbCAgPiY1CmNvbmZpZ3VyZTozNTYyMDogJD8gPSAwCmNvbmZpZ3Vy ZTozNTYzODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM1NTU4OiBjaGVja2luZyBmb3Igc3RyY2hy CmNvbmZpZ3VyZTozNTYxNDogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5j IC1sbSAtbGx0ZGwgID4mNQpjb25mdGVzdC5jOjE1NTogd2FybmluZzogY29uZmxpY3RpbmcgdHlw ZXMgZm9yIGJ1aWx0LWluIGZ1bmN0aW9uICdzdHJjaHInCmNvbmZpZ3VyZTozNTYyMDogJD8gPSAw CmNvbmZpZ3VyZTozNTYzODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM1NTU4OiBjaGVja2luZyBm b3Igc3RyY21wCmNvbmZpZ3VyZTozNTYxNDogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBj b25mdGVzdC5jIC1sbSAtbGx0ZGwgID4mNQpjb25mdGVzdC5jOjE1Njogd2FybmluZzogY29uZmxp Y3RpbmcgdHlwZXMgZm9yIGJ1aWx0LWluIGZ1bmN0aW9uICdzdHJjbXAnCmNvbmZpZ3VyZTozNTYy MDogJD8gPSAwCmNvbmZpZ3VyZTozNTYzODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM1NTU4OiBj aGVja2luZyBmb3IgaW5kZXgKY29uZmlndXJlOjM1NjE0OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1n IC1PMiAgIGNvbmZ0ZXN0LmMgLWxtIC1sbHRkbCAgPiY1CmNvbmZ0ZXN0LmM6MTU3OiB3YXJuaW5n OiBjb25mbGljdGluZyB0eXBlcyBmb3IgYnVpbHQtaW4gZnVuY3Rpb24gJ2luZGV4Jwpjb25maWd1 cmU6MzU2MjA6ICQ/ID0gMApjb25maWd1cmU6MzU2Mzg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToz NTU1ODogY2hlY2tpbmcgZm9yIGJjb3B5CmNvbmZpZ3VyZTozNTYxNDogZ2NjIC1vIGNvbmZ0ZXN0 LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1sbSAtbGx0ZGwgID4mNQpjb25mdGVzdC5jOjE1ODog d2FybmluZzogY29uZmxpY3RpbmcgdHlwZXMgZm9yIGJ1aWx0LWluIGZ1bmN0aW9uICdiY29weScK Y29uZmlndXJlOjM1NjIwOiAkPyA9IDAKY29uZmlndXJlOjM1NjM4OiByZXN1bHQ6IHllcwpjb25m aWd1cmU6MzU1NTg6IGNoZWNraW5nIGZvciBtZW1jcHkKY29uZmlndXJlOjM1NjE0OiBnY2MgLW8g Y29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxtIC1sbHRkbCAgPiY1CmNvbmZ0ZXN0 LmM6MTU5OiB3YXJuaW5nOiBjb25mbGljdGluZyB0eXBlcyBmb3IgYnVpbHQtaW4gZnVuY3Rpb24g J21lbWNweScKY29uZmlndXJlOjM1NjIwOiAkPyA9IDAKY29uZmlndXJlOjM1NjM4OiByZXN1bHQ6 IHllcwpjb25maWd1cmU6MzU1NTg6IGNoZWNraW5nIGZvciByaW5kZXgKY29uZmlndXJlOjM1NjE0 OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxtIC1sbHRkbCAgPiY1 CmNvbmZ0ZXN0LmM6MTYwOiB3YXJuaW5nOiBjb25mbGljdGluZyB0eXBlcyBmb3IgYnVpbHQtaW4g ZnVuY3Rpb24gJ3JpbmRleCcKY29uZmlndXJlOjM1NjIwOiAkPyA9IDAKY29uZmlndXJlOjM1NjM4 OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzU1NTg6IGNoZWNraW5nIGZvciB0cnVuY2F0ZQpjb25m aWd1cmU6MzU2MTQ6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3QuYyAtbG0g LWxsdGRsICA+JjUKY29uZmlndXJlOjM1NjIwOiAkPyA9IDAKY29uZmlndXJlOjM1NjM4OiByZXN1 bHQ6IHllcwpjb25maWd1cmU6MzU1NTg6IGNoZWNraW5nIGZvciB1bnNldGVudgpjb25maWd1cmU6 MzU2MTQ6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3QuYyAtbG0gLWxsdGRs ICA+JjUKY29uZmlndXJlOjM1NjIwOiAkPyA9IDAKY29uZmlndXJlOjM1NjM4OiByZXN1bHQ6IHll cwpjb25maWd1cmU6MzU1NTg6IGNoZWNraW5nIGZvciBpc2JsYW5rCmNvbmZpZ3VyZTozNTYxNDog Z2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1sbSAtbGx0ZGwgID4mNQpj b25maWd1cmU6MzU2MjA6ICQ/ID0gMApjb25maWd1cmU6MzU2Mzg6IHJlc3VsdDogeWVzCmNvbmZp Z3VyZTozNTU1ODogY2hlY2tpbmcgZm9yIF9OU0dldEVudmlyb24KY29uZmlndXJlOjM1NjE0OiBn Y2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxtIC1sbHRkbCAgPiY1Ci9j eWdkcml2ZS9jL0RPQ1VNRX4xL0Fhcm9uL0xPQ0FMU34xL1RlbXAvY2NrTE90aTAubzogSW4gZnVu Y3Rpb24gYG1haW4nOgovaG9tZS9BYXJvbi9ndWlsZS0xLjguNC9jb25mdGVzdC5jOjE3NTogdW5k ZWZpbmVkIHJlZmVyZW5jZSB0byBgX19OU0dldEVudmlyb24nCmNvbGxlY3QyOiBsZCByZXR1cm5l ZCAxIGV4aXQgc3RhdHVzCmNvbmZpZ3VyZTozNTYyMDogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVk IHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1F ICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZ3VpbGUiCnwgI2RlZmluZSBQQUNL QUdFX1ZFUlNJT04gIjEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgImd1aWxlIDEuOC40 Igp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1ndWlsZUBnbnUub3JnIgp8ICNkZWZp bmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFW RV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RS SU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElO VF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEK fCAjZGVmaW5lIEhBVkVfTElCTFRETCAxCnwgI2RlZmluZSBTQ01fV0FSTl9ERVBSRUNBVEVEX0RF RkFVTFQgInN1bW1hcnkiCnwgI2RlZmluZSBHVUlMRV9VU0VfNjRfQ0FMTFMgMQp8ICNkZWZpbmUg SEFWRV9QT1NJWCAxCnwgI2RlZmluZSBIQVZFX05FVFdPUktJTkcgMQp8ICNkZWZpbmUgU0laRU9G X0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9G X1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9TSE9SVCAyCnwgI2RlZmluZSBTSVpF T0ZfSU5UIDQKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9JTlQgNAp8ICNkZWZpbmUgU0laRU9G X0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9G X1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9OR19MT05HIDgKfCAjZGVmaW5lIFNJWkVPRl9V TlNJR05FRF9MT05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX19fSU5UNjQgMAp8ICNkZWZpbmUg U0laRU9GX1VOU0lHTkVEX19fSU5UNjQgMAp8ICNkZWZpbmUgU0laRU9GX1ZPSURfUCA0CnwgI2Rl ZmluZSBTSVpFT0ZfSU5UUFRSX1QgNAp8ICNkZWZpbmUgU0laRU9GX1VJTlRQVFJfVCA0CnwgI2Rl ZmluZSBTSVpFT0ZfUFRSRElGRl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9TSVpFX1QgNAp8ICNkZWZp bmUgU0laRU9GX09GRl9UIDgKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFW RV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIFNJWkVPRl9JTlRNQVhfVCA4CnwgI2RlZmluZSBTVERD X0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBUSU1FX1dJVEhf U1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU9f SCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8 ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1BST0NFU1NfSCAxCnwgI2Rl ZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfUkVHRVhfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19JT0NUTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FQl9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1RJTUVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfVElNRV9IIDEKfCAjZGVmaW5lIEhB VkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdE X0ggMQp8ICNkZWZpbmUgSEFWRV9HUlBfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0gg MQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwg I2RlZmluZSBHRVRHUk9VUFNfVCBnaWRfdAp8ICNkZWZpbmUgUkVUU0lHVFlQRSB2b2lkCnwgI2Rl ZmluZSBIQVZFX0xJQk0gMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUQllOQU1FIDEKfCAjZGVmaW5l IEhBVkVfQ09OTkVDVCAxCnwgI2RlZmluZSBIQVZFX0FTU0VSVF9IIDEKfCAjZGVmaW5lIEhBVkVf Q1RFUk1JRCAxCnwgI2RlZmluZSBIQVZFX0ZUSU1FIDEKfCAjZGVmaW5lIEhBVkVfRlRSVU5DQVRF IDEKfCAjZGVmaW5lIEhBVkVfRkNIT1dOIDEKfCAjZGVmaW5lIEhBVkVfR0VUQ1dEIDEKfCAjZGVm aW5lIEhBVkVfR0VURVVJRCAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmlu ZSBIQVZFX0dNVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfSU9DVEwgMQp8ICNkZWZpbmUgSEFWRV9M U1RBVCAxCnwgI2RlZmluZSBIQVZFX01LRElSIDEKfCAjZGVmaW5lIEhBVkVfTUtOT0QgMQp8ICNk ZWZpbmUgSEFWRV9OSUNFIDEKfCAjZGVmaW5lIEhBVkVfUElQRSAxCnwgI2RlZmluZSBIQVZFX19Q SVBFIDEKfCAjZGVmaW5lIEhBVkVfUkVBRERJUl9SIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksg MQp8ICNkZWZpbmUgSEFWRV9SRU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9STURJUiAxCnwgI2RlZmlu ZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1NFVEVHSUQgMQp8ICNkZWZpbmUgSEFWRV9T RVRFVUlEIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfU0VUUEdJ RCAxCnwgI2RlZmluZSBIQVZFX1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX1NJR0FDVElPTiAxCnwg I2RlZmluZSBIQVZFX1NJR0lOVEVSUlVQVCAxCnwgI2RlZmluZSBIQVZFX1NUUkZUSU1FIDEKfCAj ZGVmaW5lIEhBVkVfU1RSUFRJTUUgMQp8ICNkZWZpbmUgSEFWRV9TWU1MSU5LIDEKfCAjZGVmaW5l IEhBVkVfU1lOQyAxCnwgI2RlZmluZSBIQVZFX1NZU0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9UQ0dF VFBHUlAgMQp8ICNkZWZpbmUgSEFWRV9UQ1NFVFBHUlAgMQp8ICNkZWZpbmUgSEFWRV9USU1FUyAx CnwgI2RlZmluZSBIQVZFX1VOQU1FIDEKfCAjZGVmaW5lIEhBVkVfV0FJVFBJRCAxCnwgI2RlZmlu ZSBIQVZFX1NUUkRVUCAxCnwgI2RlZmluZSBIQVZFX1NZU1RFTSAxCnwgI2RlZmluZSBIQVZFX1VT TEVFUCAxCnwgI2RlZmluZSBIQVZFX0FURVhJVCAxCnwgI2RlZmluZSBIQVZFX09OX0VYSVQgMQp8 ICNkZWZpbmUgSEFWRV9DSE9XTiAxCnwgI2RlZmluZSBIQVZFX0xJTksgMQp8ICNkZWZpbmUgSEFW RV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX1RUWU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VO VCAxCnwgI2RlZmluZSBIQVZFX0dFVEdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfS0lMTCAxCnwgI2Rl ZmluZSBIQVZFX0dFVFBQSUQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQR1JQIDEKfCAjZGVmaW5lIEhB VkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX0dFVElU SU1FUiAxCnwgI2RlZmluZSBIQVZFX1NUUkNIUiAxCnwgI2RlZmluZSBIQVZFX1NUUkNNUCAxCnwg I2RlZmluZSBIQVZFX0lOREVYIDEKfCAjZGVmaW5lIEhBVkVfQkNPUFkgMQp8ICNkZWZpbmUgSEFW RV9NRU1DUFkgMQp8ICNkZWZpbmUgSEFWRV9SSU5ERVggMQp8ICNkZWZpbmUgSEFWRV9UUlVOQ0FU RSAxCnwgI2RlZmluZSBIQVZFX1VOU0VURU5WIDEKfCAjZGVmaW5lIEhBVkVfSVNCTEFOSyAxCnwg LyogZW5kIGNvbmZkZWZzLmguICAqLwp8IC8qIERlZmluZSBfTlNHZXRFbnZpcm9uIHRvIGFuIGlu bm9jdW91cyB2YXJpYW50LCBpbiBjYXNlIDxsaW1pdHMuaD4gZGVjbGFyZXMgX05TR2V0RW52aXJv bi4KfCAgICBGb3IgZXhhbXBsZSwgSFAtVVggMTFpIDxsaW1pdHMuaD4gZGVjbGFyZXMgZ2V0dGlt ZW9mZGF5LiAgKi8KfCAjZGVmaW5lIF9OU0dldEVudmlyb24gaW5ub2N1b3VzX19OU0dldEVudmly b24KfCAKfCAvKiBTeXN0ZW0gaGVhZGVyIHRvIGRlZmluZSBfX3N0dWIgbWFjcm9zIGFuZCBob3Bl ZnVsbHkgZmV3IHByb3RvdHlwZXMsCnwgICAgIHdoaWNoIGNhbiBjb25mbGljdCB3aXRoIGNoYXIg X05TR2V0RW52aXJvbiAoKTsgYmVsb3cuCnwgICAgIFByZWZlciA8bGltaXRzLmg+IHRvIDxhc3Nl cnQuaD4gaWYgX19TVERDX18gaXMgZGVmaW5lZCwgc2luY2UKfCAgICAgPGxpbWl0cy5oPiBleGlz dHMgZXZlbiBvbiBmcmVlc3RhbmRpbmcgY29tcGlsZXJzLiAgKi8KfCAKfCAjaWZkZWYgX19TVERD X18KfCAjIGluY2x1ZGUgPGxpbWl0cy5oPgp8ICNlbHNlCnwgIyBpbmNsdWRlIDxhc3NlcnQuaD4K fCAjZW5kaWYKfCAKfCAjdW5kZWYgX05TR2V0RW52aXJvbgp8IAp8IC8qIE92ZXJyaWRlIGFueSBH Q0MgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLgp8ICAgIFVzZSBjaGFyIGJl Y2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIEdDQwp8ICAgIGJ1aWx0 aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICov CnwgI2lmZGVmIF9fY3BsdXNwbHVzCnwgZXh0ZXJuICJDIgp8ICNlbmRpZgp8IGNoYXIgX05TR2V0 RW52aXJvbiAoKTsKfCAvKiBUaGUgR05VIEMgbGlicmFyeSBkZWZpbmVzIHRoaXMgZm9yIGZ1bmN0 aW9ucyB3aGljaCBpdCBpbXBsZW1lbnRzCnwgICAgIHRvIGFsd2F5cyBmYWlsIHdpdGggRU5PU1lT LiAgU29tZSBmdW5jdGlvbnMgYXJlIGFjdHVhbGx5IG5hbWVkCnwgICAgIHNvbWV0aGluZyBzdGFy dGluZyB3aXRoIF9fIGFuZCB0aGUgbm9ybWFsIG5hbWUgaXMgYW4gYWxpYXMuICAqLwp8ICNpZiBk ZWZpbmVkIF9fc3R1Yl9fTlNHZXRFbnZpcm9uIHx8IGRlZmluZWQgX19zdHViX19fX05TR2V0RW52 aXJvbgp8IGNob2tlIG1lCnwgI2VuZGlmCnwgCnwgaW50CnwgbWFpbiAoKQp8IHsKfCByZXR1cm4g X05TR2V0RW52aXJvbiAoKTsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjM1NjM4 OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTozNTU1ODogY2hlY2tpbmcgZm9yIHN0cm5jYXNlY21wCmNv bmZpZ3VyZTozNTYxNDogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1s bSAtbGx0ZGwgID4mNQpjb25maWd1cmU6MzU2MjA6ICQ/ID0gMApjb25maWd1cmU6MzU2Mzg6IHJl c3VsdDogeWVzCmNvbmZpZ3VyZTozNTY3NzogY2hlY2tpbmcgY3J5cHQuaCB1c2FiaWxpdHkKY29u ZmlndXJlOjM1Njk0OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzU3 MDA6ICQ/ID0gMApjb25maWd1cmU6MzU3MTQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozNTcxODog Y2hlY2tpbmcgY3J5cHQuaCBwcmVzZW5jZQpjb25maWd1cmU6MzU3MzM6IGdjYyAtRSAgY29uZnRl c3QuYwpjb25maWd1cmU6MzU3Mzk6ICQ/ID0gMApjb25maWd1cmU6MzU3NTM6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZTozNTc4NjogY2hlY2tpbmcgZm9yIGNyeXB0LmgKY29uZmlndXJlOjM1Nzk0OiBy ZXN1bHQ6IHllcwpjb25maWd1cmU6MzU2Nzc6IGNoZWNraW5nIG5ldGRiLmggdXNhYmlsaXR5CmNv bmZpZ3VyZTozNTY5NDogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjM1 NzAwOiAkPyA9IDAKY29uZmlndXJlOjM1NzE0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzU3MTg6 IGNoZWNraW5nIG5ldGRiLmggcHJlc2VuY2UKY29uZmlndXJlOjM1NzMzOiBnY2MgLUUgIGNvbmZ0 ZXN0LmMKY29uZmlndXJlOjM1NzM5OiAkPyA9IDAKY29uZmlndXJlOjM1NzUzOiByZXN1bHQ6IHll cwpjb25maWd1cmU6MzU3ODY6IGNoZWNraW5nIGZvciBuZXRkYi5oCmNvbmZpZ3VyZTozNTc5NDog cmVzdWx0OiB5ZXMKY29uZmlndXJlOjM1Njc3OiBjaGVja2luZyBwdGhyZWFkLmggdXNhYmlsaXR5 CmNvbmZpZ3VyZTozNTY5NDogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJl OjM1NzAwOiAkPyA9IDAKY29uZmlndXJlOjM1NzE0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzU3 MTg6IGNoZWNraW5nIHB0aHJlYWQuaCBwcmVzZW5jZQpjb25maWd1cmU6MzU3MzM6IGdjYyAtRSAg Y29uZnRlc3QuYwpjb25maWd1cmU6MzU3Mzk6ICQ/ID0gMApjb25maWd1cmU6MzU3NTM6IHJlc3Vs dDogeWVzCmNvbmZpZ3VyZTozNTc4NjogY2hlY2tpbmcgZm9yIHB0aHJlYWQuaApjb25maWd1cmU6 MzU3OTQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozNTY3NzogY2hlY2tpbmcgc3lzL3BhcmFtLmgg dXNhYmlsaXR5CmNvbmZpZ3VyZTozNTY5NDogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUK Y29uZmlndXJlOjM1NzAwOiAkPyA9IDAKY29uZmlndXJlOjM1NzE0OiByZXN1bHQ6IHllcwpjb25m aWd1cmU6MzU3MTg6IGNoZWNraW5nIHN5cy9wYXJhbS5oIHByZXNlbmNlCmNvbmZpZ3VyZTozNTcz MzogZ2NjIC1FICBjb25mdGVzdC5jCmNvbmZpZ3VyZTozNTczOTogJD8gPSAwCmNvbmZpZ3VyZToz NTc1MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM1Nzg2OiBjaGVja2luZyBmb3Igc3lzL3BhcmFt LmgKY29uZmlndXJlOjM1Nzk0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzU2Nzc6IGNoZWNraW5n IHN5cy9yZXNvdXJjZS5oIHVzYWJpbGl0eQpjb25maWd1cmU6MzU2OTQ6IGdjYyAtYyAtZyAtTzIg IGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozNTcwMDogJD8gPSAwCmNvbmZpZ3VyZTozNTcxNDog cmVzdWx0OiB5ZXMKY29uZmlndXJlOjM1NzE4OiBjaGVja2luZyBzeXMvcmVzb3VyY2UuaCBwcmVz ZW5jZQpjb25maWd1cmU6MzU3MzM6IGdjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6MzU3Mzk6 ICQ/ID0gMApjb25maWd1cmU6MzU3NTM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozNTc4NjogY2hl Y2tpbmcgZm9yIHN5cy9yZXNvdXJjZS5oCmNvbmZpZ3VyZTozNTc5NDogcmVzdWx0OiB5ZXMKY29u ZmlndXJlOjM1Njc3OiBjaGVja2luZyBzeXMvZmlsZS5oIHVzYWJpbGl0eQpjb25maWd1cmU6MzU2 OTQ6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozNTcwMDogJD8gPSAw CmNvbmZpZ3VyZTozNTcxNDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM1NzE4OiBjaGVja2luZyBz eXMvZmlsZS5oIHByZXNlbmNlCmNvbmZpZ3VyZTozNTczMzogZ2NjIC1FICBjb25mdGVzdC5jCmNv bmZpZ3VyZTozNTczOTogJD8gPSAwCmNvbmZpZ3VyZTozNTc1MzogcmVzdWx0OiB5ZXMKY29uZmln dXJlOjM1Nzg2OiBjaGVja2luZyBmb3Igc3lzL2ZpbGUuaApjb25maWd1cmU6MzU3OTQ6IHJlc3Vs dDogeWVzCmNvbmZpZ3VyZTozNTgxOTogY2hlY2tpbmcgZm9yIGNocm9vdApjb25maWd1cmU6MzU4 NzU6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3QuYyAtbG0gLWxsdGRsICA+ JjUKY29uZmlndXJlOjM1ODgxOiAkPyA9IDAKY29uZmlndXJlOjM1ODk5OiByZXN1bHQ6IHllcwpj b25maWd1cmU6MzU4MTk6IGNoZWNraW5nIGZvciBmbG9jawpjb25maWd1cmU6MzU4NzU6IGdjYyAt byBjb25mdGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3QuYyAtbG0gLWxsdGRsICA+JjUKY29uZmln dXJlOjM1ODgxOiAkPyA9IDAKY29uZmlndXJlOjM1ODk5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6 MzU4MTk6IGNoZWNraW5nIGZvciBnZXRsb2dpbgpjb25maWd1cmU6MzU4NzU6IGdjYyAtbyBjb25m dGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3QuYyAtbG0gLWxsdGRsICA+JjUKY29uZmlndXJlOjM1 ODgxOiAkPyA9IDAKY29uZmlndXJlOjM1ODk5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzU4MTk6 IGNoZWNraW5nIGZvciBjdXNlcmlkCmNvbmZpZ3VyZTozNTg3NTogZ2NjIC1vIGNvbmZ0ZXN0LmV4 ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1sbSAtbGx0ZGwgID4mNQpjb25maWd1cmU6MzU4ODE6ICQ/ ID0gMApjb25maWd1cmU6MzU4OTk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozNTgxOTogY2hlY2tp bmcgZm9yIGdldHByaW9yaXR5CmNvbmZpZ3VyZTozNTg3NTogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAt ZyAtTzIgICBjb25mdGVzdC5jIC1sbSAtbGx0ZGwgID4mNQpjb25maWd1cmU6MzU4ODE6ICQ/ID0g MApjb25maWd1cmU6MzU4OTk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozNTgxOTogY2hlY2tpbmcg Zm9yIHNldHByaW9yaXR5CmNvbmZpZ3VyZTozNTg3NTogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAt TzIgICBjb25mdGVzdC5jIC1sbSAtbGx0ZGwgID4mNQpjb25maWd1cmU6MzU4ODE6ICQ/ID0gMApj b25maWd1cmU6MzU4OTk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozNTgxOTogY2hlY2tpbmcgZm9y IGdldHBhc3MKY29uZmlndXJlOjM1ODc1OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNv bmZ0ZXN0LmMgLWxtIC1sbHRkbCAgPiY1CmNvbmZpZ3VyZTozNTg4MTogJD8gPSAwCmNvbmZpZ3Vy ZTozNTg5OTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM1ODE5OiBjaGVja2luZyBmb3Igc2V0aG9z dG5hbWUKY29uZmlndXJlOjM1ODc1OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0 ZXN0LmMgLWxtIC1sbHRkbCAgPiY1Ci9jeWdkcml2ZS9jL0RPQ1VNRX4xL0Fhcm9uL0xPQ0FMU34x L1RlbXAvY2NPUUQ4QXEubzogSW4gZnVuY3Rpb24gYG1haW4nOgovaG9tZS9BYXJvbi9ndWlsZS0x LjguNC9jb25mdGVzdC5jOjE4OTogdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgX3NldGhvc3RuYW1l Jwpjb2xsZWN0MjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpjb25maWd1cmU6MzU4ODE6ICQ/ ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8K fCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiZ3VpbGUiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUg Imd1aWxlIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIxLjguNCIKfCAjZGVmaW5lIFBBQ0tB R0VfU1RSSU5HICJndWlsZSAxLjguNCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWct Z3VpbGVAZ251Lm9yZyIKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZ U19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NU RExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllf SCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0gg MQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAj ZGVmaW5lIEhBVkVfRExGQ05fSCAxCnwgI2RlZmluZSBIQVZFX0xJQkxUREwgMQp8ICNkZWZpbmUg U0NNX1dBUk5fREVQUkVDQVRFRF9ERUZBVUxUICJzdW1tYXJ5Igp8ICNkZWZpbmUgR1VJTEVfVVNF XzY0X0NBTExTIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVggMQp8ICNkZWZpbmUgSEFWRV9ORVRXT1JL SU5HIDEKfCAjZGVmaW5lIFNJWkVPRl9DSEFSIDEKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9D SEFSIDEKfCAjZGVmaW5lIFNJWkVPRl9TSE9SVCAyCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURf U0hPUlQgMgp8ICNkZWZpbmUgU0laRU9GX0lOVCA0CnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURf SU5UIDQKfCAjZGVmaW5lIFNJWkVPRl9MT05HIDQKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9M T05HIDQKfCAjZGVmaW5lIFNJWkVPRl9TSVpFX1QgNAp8ICNkZWZpbmUgU0laRU9GX0xPTkdfTE9O RyA4CnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfTE9OR19MT05HIDgKfCAjZGVmaW5lIFNJWkVP Rl9fX0lOVDY0IDAKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9fX0lOVDY0IDAKfCAjZGVmaW5l IFNJWkVPRl9WT0lEX1AgNAp8ICNkZWZpbmUgU0laRU9GX0lOVFBUUl9UIDQKfCAjZGVmaW5lIFNJ WkVPRl9VSU5UUFRSX1QgNAp8ICNkZWZpbmUgU0laRU9GX1BUUkRJRkZfVCA0CnwgI2RlZmluZSBT SVpFT0ZfU0laRV9UIDQKfCAjZGVmaW5lIFNJWkVPRl9PRkZfVCA4CnwgI2RlZmluZSBIQVZFX1NU RElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBTSVpFT0ZfSU5U TUFYX1QgOAp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0gg MQp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRf SCAxCnwgI2RlZmluZSBIQVZFX0lPX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2Rl ZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUg SEFWRV9QUk9DRVNTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZF X1JFR0VYX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfSU9DVExfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfVElNRUJfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FU19IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRJTUVfSCAxCnwgI2RlZmluZSBIQVZF X1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVf SCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfR1JQX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVm aW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgR0VUR1JPVVBTX1QgZ2lkX3QKfCAjZGVmaW5l IFJFVFNJR1RZUEUgdm9pZAp8ICNkZWZpbmUgSEFWRV9MSUJNIDEKfCAjZGVmaW5lIEhBVkVfR0VU SE9TVEJZTkFNRSAxCnwgI2RlZmluZSBIQVZFX0NPTk5FQ1QgMQp8ICNkZWZpbmUgSEFWRV9BU1NF UlRfSCAxCnwgI2RlZmluZSBIQVZFX0NURVJNSUQgMQp8ICNkZWZpbmUgSEFWRV9GVElNRSAxCnwg I2RlZmluZSBIQVZFX0ZUUlVOQ0FURSAxCnwgI2RlZmluZSBIQVZFX0ZDSE9XTiAxCnwgI2RlZmlu ZSBIQVZFX0dFVENXRCAxCnwgI2RlZmluZSBIQVZFX0dFVEVVSUQgMQp8ICNkZWZpbmUgSEFWRV9H RVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9HTVRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX0lP Q1RMIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9NS0RJUiAxCnwgI2Rl ZmluZSBIQVZFX01LTk9EIDEKfCAjZGVmaW5lIEhBVkVfTklDRSAxCnwgI2RlZmluZSBIQVZFX1BJ UEUgMQp8ICNkZWZpbmUgSEFWRV9fUElQRSAxCnwgI2RlZmluZSBIQVZFX1JFQURESVJfUiAxCnwg I2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfUkVOQU1FIDEKfCAjZGVmaW5l IEhBVkVfUk1ESVIgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9TRVRF R0lEIDEKfCAjZGVmaW5lIEhBVkVfU0VURVVJRCAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FMRSAx CnwgI2RlZmluZSBIQVZFX1NFVFBHSUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRTSUQgMQp8ICNkZWZp bmUgSEFWRV9TSUdBQ1RJT04gMQp8ICNkZWZpbmUgSEFWRV9TSUdJTlRFUlJVUFQgMQp8ICNkZWZp bmUgSEFWRV9TVFJGVElNRSAxCnwgI2RlZmluZSBIQVZFX1NUUlBUSU1FIDEKfCAjZGVmaW5lIEhB VkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX1NZTkMgMQp8ICNkZWZpbmUgSEFWRV9TWVNDT05G IDEKfCAjZGVmaW5lIEhBVkVfVENHRVRQR1JQIDEKfCAjZGVmaW5lIEhBVkVfVENTRVRQR1JQIDEK fCAjZGVmaW5lIEhBVkVfVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9VTkFNRSAxCnwgI2RlZmluZSBI QVZFX1dBSVRQSUQgMQp8ICNkZWZpbmUgSEFWRV9TVFJEVVAgMQp8ICNkZWZpbmUgSEFWRV9TWVNU RU0gMQp8ICNkZWZpbmUgSEFWRV9VU0xFRVAgMQp8ICNkZWZpbmUgSEFWRV9BVEVYSVQgMQp8ICNk ZWZpbmUgSEFWRV9PTl9FWElUIDEKfCAjZGVmaW5lIEhBVkVfQ0hPV04gMQp8ICNkZWZpbmUgSEFW RV9MSU5LIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9UVFlOQU1FIDEK fCAjZGVmaW5lIEhBVkVfR0VUUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUkVOVCAxCnwgI2Rl ZmluZSBIQVZFX0tJTEwgMQp8ICNkZWZpbmUgSEFWRV9HRVRQUElEIDEKfCAjZGVmaW5lIEhBVkVf R0VUUEdSUCAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIg MQp8ICNkZWZpbmUgSEFWRV9HRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9TVFJDSFIgMQp8ICNk ZWZpbmUgSEFWRV9TVFJDTVAgMQp8ICNkZWZpbmUgSEFWRV9JTkRFWCAxCnwgI2RlZmluZSBIQVZF X0JDT1BZIDEKfCAjZGVmaW5lIEhBVkVfTUVNQ1BZIDEKfCAjZGVmaW5lIEhBVkVfUklOREVYIDEK fCAjZGVmaW5lIEhBVkVfVFJVTkNBVEUgMQp8ICNkZWZpbmUgSEFWRV9VTlNFVEVOViAxCnwgI2Rl ZmluZSBIQVZFX0lTQkxBTksgMQp8ICNkZWZpbmUgSEFWRV9TVFJOQ0FTRUNNUCAxCnwgI2RlZmlu ZSBIQVZFX0NSWVBUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVREQl9IIDEKfCAjZGVmaW5lIEhBVkVf UFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgSEFW RV9DSFJPT1QgMQp8ICNkZWZpbmUgSEFWRV9GTE9DSyAxCnwgI2RlZmluZSBIQVZFX0dFVExPR0lO IDEKfCAjZGVmaW5lIEhBVkVfQ1VTRVJJRCAxCnwgI2RlZmluZSBIQVZFX0dFVFBSSU9SSVRZIDEK fCAjZGVmaW5lIEhBVkVfU0VUUFJJT1JJVFkgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQVNTIDEKfCAv KiBlbmQgY29uZmRlZnMuaC4gICovCnwgLyogRGVmaW5lIHNldGhvc3RuYW1lIHRvIGFuIGlubm9j dW91cyB2YXJpYW50LCBpbiBjYXNlIDxsaW1pdHMuaD4gZGVjbGFyZXMgc2V0aG9zdG5hbWUuCnwg ICAgRm9yIGV4YW1wbGUsIEhQLVVYIDExaSA8bGltaXRzLmg+IGRlY2xhcmVzIGdldHRpbWVvZmRh eS4gICovCnwgI2RlZmluZSBzZXRob3N0bmFtZSBpbm5vY3VvdXNfc2V0aG9zdG5hbWUKfCAKfCAv KiBTeXN0ZW0gaGVhZGVyIHRvIGRlZmluZSBfX3N0dWIgbWFjcm9zIGFuZCBob3BlZnVsbHkgZmV3 IHByb3RvdHlwZXMsCnwgICAgIHdoaWNoIGNhbiBjb25mbGljdCB3aXRoIGNoYXIgc2V0aG9zdG5h bWUgKCk7IGJlbG93Lgp8ICAgICBQcmVmZXIgPGxpbWl0cy5oPiB0byA8YXNzZXJ0Lmg+IGlmIF9f U1REQ19fIGlzIGRlZmluZWQsIHNpbmNlCnwgICAgIDxsaW1pdHMuaD4gZXhpc3RzIGV2ZW4gb24g ZnJlZXN0YW5kaW5nIGNvbXBpbGVycy4gICovCnwgCnwgI2lmZGVmIF9fU1REQ19fCnwgIyBpbmNs dWRlIDxsaW1pdHMuaD4KfCAjZWxzZQp8ICMgaW5jbHVkZSA8YXNzZXJ0Lmg+CnwgI2VuZGlmCnwg CnwgI3VuZGVmIHNldGhvc3RuYW1lCnwgCnwgLyogT3ZlcnJpZGUgYW55IEdDQyBpbnRlcm5hbCBw cm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuCnwgICAgVXNlIGNoYXIgYmVjYXVzZSBpbnQgbWln aHQgbWF0Y2ggdGhlIHJldHVybiB0eXBlIG9mIGEgR0NDCnwgICAgYnVpbHRpbiBhbmQgdGhlbiBp dHMgYXJndW1lbnQgcHJvdG90eXBlIHdvdWxkIHN0aWxsIGFwcGx5LiAgKi8KfCAjaWZkZWYgX19j cGx1c3BsdXMKfCBleHRlcm4gIkMiCnwgI2VuZGlmCnwgY2hhciBzZXRob3N0bmFtZSAoKTsKfCAv KiBUaGUgR05VIEMgbGlicmFyeSBkZWZpbmVzIHRoaXMgZm9yIGZ1bmN0aW9ucyB3aGljaCBpdCBp bXBsZW1lbnRzCnwgICAgIHRvIGFsd2F5cyBmYWlsIHdpdGggRU5PU1lTLiAgU29tZSBmdW5jdGlv bnMgYXJlIGFjdHVhbGx5IG5hbWVkCnwgICAgIHNvbWV0aGluZyBzdGFydGluZyB3aXRoIF9fIGFu ZCB0aGUgbm9ybWFsIG5hbWUgaXMgYW4gYWxpYXMuICAqLwp8ICNpZiBkZWZpbmVkIF9fc3R1Yl9z ZXRob3N0bmFtZSB8fCBkZWZpbmVkIF9fc3R1Yl9fX3NldGhvc3RuYW1lCnwgY2hva2UgbWUKfCAj ZW5kaWYKfCAKfCBpbnQKfCBtYWluICgpCnwgewp8IHJldHVybiBzZXRob3N0bmFtZSAoKTsKfCAg IDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjM1ODk5OiByZXN1bHQ6IG5vCmNvbmZpZ3Vy ZTozNTgxOTogY2hlY2tpbmcgZm9yIGdldGhvc3RuYW1lCmNvbmZpZ3VyZTozNTg3NTogZ2NjIC1v IGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1sbSAtbGx0ZGwgID4mNQpjb25maWd1 cmU6MzU4ODE6ICQ/ID0gMApjb25maWd1cmU6MzU4OTk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToz NTkwOTogY2hlY2tpbmcgd2hldGhlciBzZXRob3N0bmFtZSBpcyBkZWNsYXJlZApjb25maWd1cmU6 MzU5Mzg6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6IEluIGZ1bmN0 aW9uIGBtYWluJzoKY29uZnRlc3QuYzoxOTM6IGVycm9yOiBgc2V0aG9zdG5hbWUnIHVuZGVjbGFy ZWQgKGZpcnN0IHVzZSBpbiB0aGlzIGZ1bmN0aW9uKQpjb25mdGVzdC5jOjE5MzogZXJyb3I6IChF YWNoIHVuZGVjbGFyZWQgaWRlbnRpZmllciBpcyByZXBvcnRlZCBvbmx5IG9uY2UKY29uZnRlc3Qu YzoxOTM6IGVycm9yOiBmb3IgZWFjaCBmdW5jdGlvbiBpdCBhcHBlYXJzIGluLikKY29uZmlndXJl OjM1OTQ0OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRl ZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgImd1aWxlIgp8ICNkZWZpbmUgUEFDS0FH RV9UQVJOQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMS44LjQiCnwgI2Rl ZmluZSBQQUNLQUdFX1NUUklORyAiZ3VpbGUgMS44LjQiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JF UE9SVCAiYnVnLWd1aWxlQGdudS5vcmciCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZp bmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZp bmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhB VkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9J TlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklT VERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgSEFWRV9MSUJMVERMIDEK fCAjZGVmaW5lIFNDTV9XQVJOX0RFUFJFQ0FURURfREVGQVVMVCAic3VtbWFyeSIKfCAjZGVmaW5l IEdVSUxFX1VTRV82NF9DQUxMUyAxCnwgI2RlZmluZSBIQVZFX1BPU0lYIDEKfCAjZGVmaW5lIEhB VkVfTkVUV09SS0lORyAxCnwgI2RlZmluZSBTSVpFT0ZfQ0hBUiAxCnwgI2RlZmluZSBTSVpFT0Zf VU5TSUdORURfQ0hBUiAxCnwgI2RlZmluZSBTSVpFT0ZfU0hPUlQgMgp8ICNkZWZpbmUgU0laRU9G X1VOU0lHTkVEX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9JTlQgNAp8ICNkZWZpbmUgU0laRU9G X1VOU0lHTkVEX0lOVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA0CnwgI2RlZmluZSBTSVpFT0Zf VU5TSUdORURfTE9ORyA0CnwgI2RlZmluZSBTSVpFT0ZfU0laRV9UIDQKfCAjZGVmaW5lIFNJWkVP Rl9MT05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xPTkdfTE9ORyA4CnwgI2Rl ZmluZSBTSVpFT0ZfX19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfX19JTlQ2NCAw CnwgI2RlZmluZSBTSVpFT0ZfVk9JRF9QIDQKfCAjZGVmaW5lIFNJWkVPRl9JTlRQVFJfVCA0Cnwg I2RlZmluZSBTSVpFT0ZfVUlOVFBUUl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9QVFJESUZGX1QgNAp8 ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfT0ZGX1QgOAp8ICNkZWZp bmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUg U0laRU9GX0lOVE1BWF9UIDgKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZF X0RJUkVOVF9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwgI2RlZmluZSBIQVZF X1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9JT19IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRT X0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEK fCAjZGVmaW5lIEhBVkVfUFJPQ0VTU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNk ZWZpbmUgSEFWRV9SRUdFWF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lPQ1RMX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1RJTUVCX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRVNfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUSU1FX0ggMQp8ICNk ZWZpbmUgSEFWRV9USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBI QVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX0dSUF9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1Nf SCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEdFVEdST1VQU19UIGdpZF90 CnwgI2RlZmluZSBSRVRTSUdUWVBFIHZvaWQKfCAjZGVmaW5lIEhBVkVfTElCTSAxCnwgI2RlZmlu ZSBIQVZFX0dFVEhPU1RCWU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9DT05ORUNUIDEKfCAjZGVmaW5l IEhBVkVfQVNTRVJUX0ggMQp8ICNkZWZpbmUgSEFWRV9DVEVSTUlEIDEKfCAjZGVmaW5lIEhBVkVf RlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9GVFJVTkNBVEUgMQp8ICNkZWZpbmUgSEFWRV9GQ0hPV04g MQp8ICNkZWZpbmUgSEFWRV9HRVRDV0QgMQp8ICNkZWZpbmUgSEFWRV9HRVRFVUlEIDEKfCAjZGVm aW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfR01USU1FX1IgMQp8ICNkZWZp bmUgSEFWRV9JT0NUTCAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfTUtE SVIgMQp8ICNkZWZpbmUgSEFWRV9NS05PRCAxCnwgI2RlZmluZSBIQVZFX05JQ0UgMQp8ICNkZWZp bmUgSEFWRV9QSVBFIDEKfCAjZGVmaW5lIEhBVkVfX1BJUEUgMQp8ICNkZWZpbmUgSEFWRV9SRUFE RElSX1IgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX1JFTkFNRSAx CnwgI2RlZmluZSBIQVZFX1JNRElSIDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5l IEhBVkVfU0VURUdJRCAxCnwgI2RlZmluZSBIQVZFX1NFVEVVSUQgMQp8ICNkZWZpbmUgSEFWRV9T RVRMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9TRVRQR0lEIDEKfCAjZGVmaW5lIEhBVkVfU0VUU0lE IDEKfCAjZGVmaW5lIEhBVkVfU0lHQUNUSU9OIDEKfCAjZGVmaW5lIEhBVkVfU0lHSU5URVJSVVBU IDEKfCAjZGVmaW5lIEhBVkVfU1RSRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9TVFJQVElNRSAxCnwg I2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhB VkVfU1lTQ09ORiAxCnwgI2RlZmluZSBIQVZFX1RDR0VUUEdSUCAxCnwgI2RlZmluZSBIQVZFX1RD U0VUUEdSUCAxCnwgI2RlZmluZSBIQVZFX1RJTUVTIDEKfCAjZGVmaW5lIEhBVkVfVU5BTUUgMQp8 ICNkZWZpbmUgSEFWRV9XQUlUUElEIDEKfCAjZGVmaW5lIEhBVkVfU1RSRFVQIDEKfCAjZGVmaW5l IEhBVkVfU1lTVEVNIDEKfCAjZGVmaW5lIEhBVkVfVVNMRUVQIDEKfCAjZGVmaW5lIEhBVkVfQVRF WElUIDEKfCAjZGVmaW5lIEhBVkVfT05fRVhJVCAxCnwgI2RlZmluZSBIQVZFX0NIT1dOIDEKfCAj ZGVmaW5lIEhBVkVfTElOSyAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVf VFRZTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JF TlQgMQp8ICNkZWZpbmUgSEFWRV9LSUxMIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFBJRCAxCnwgI2Rl ZmluZSBIQVZFX0dFVFBHUlAgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVf U0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfU1RS Q0hSIDEKfCAjZGVmaW5lIEhBVkVfU1RSQ01QIDEKfCAjZGVmaW5lIEhBVkVfSU5ERVggMQp8ICNk ZWZpbmUgSEFWRV9CQ09QWSAxCnwgI2RlZmluZSBIQVZFX01FTUNQWSAxCnwgI2RlZmluZSBIQVZF X1JJTkRFWCAxCnwgI2RlZmluZSBIQVZFX1RSVU5DQVRFIDEKfCAjZGVmaW5lIEhBVkVfVU5TRVRF TlYgMQp8ICNkZWZpbmUgSEFWRV9JU0JMQU5LIDEKfCAjZGVmaW5lIEhBVkVfU1RSTkNBU0VDTVAg MQp8ICNkZWZpbmUgSEFWRV9DUllQVF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUREJfSCAxCnwgI2Rl ZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAj ZGVmaW5lIEhBVkVfQ0hST09UIDEKfCAjZGVmaW5lIEhBVkVfRkxPQ0sgMQp8ICNkZWZpbmUgSEFW RV9HRVRMT0dJTiAxCnwgI2RlZmluZSBIQVZFX0NVU0VSSUQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQ UklPUklUWSAxCnwgI2RlZmluZSBIQVZFX1NFVFBSSU9SSVRZIDEKfCAjZGVmaW5lIEhBVkVfR0VU UEFTUyAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4g ICovCnwgI2luY2x1ZGUgPHN0ZGlvLmg+CnwgI2lmZGVmIEhBVkVfU1lTX1RZUEVTX0gKfCAjIGlu Y2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NZU19TVEFUX0gKfCAj IGluY2x1ZGUgPHN5cy9zdGF0Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIFNURENfSEVBREVSUwp8ICMg aW5jbHVkZSA8c3RkbGliLmg+CnwgIyBpbmNsdWRlIDxzdGRkZWYuaD4KfCAjZWxzZQp8ICMgaWZk ZWYgSEFWRV9TVERMSUJfSAp8ICMgIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgZW5kaWYKfCAjZW5k aWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdfSAp8ICMgaWYgIWRlZmluZWQgU1REQ19IRUFERVJTICYm IGRlZmluZWQgSEFWRV9NRU1PUllfSAp8ICMgIGluY2x1ZGUgPG1lbW9yeS5oPgp8ICMgZW5kaWYK fCAjIGluY2x1ZGUgPHN0cmluZy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR1NfSAp8 ICMgaW5jbHVkZSA8c3RyaW5ncy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX0lOVFRZUEVTX0gK fCAjIGluY2x1ZGUgPGludHR5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RESU5UX0gK fCAjIGluY2x1ZGUgPHN0ZGludC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1VOSVNURF9ICnwg IyBpbmNsdWRlIDx1bmlzdGQuaD4KfCAjZW5kaWYKfCBpbnQKfCBtYWluICgpCnwgewp8ICNpZm5k ZWYgc2V0aG9zdG5hbWUKfCAgICh2b2lkKSBzZXRob3N0bmFtZTsKfCAjZW5kaWYKfCAKfCAgIDsK fCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjM1OTU5OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToz NTk5MTogY2hlY2tpbmcgZm9yIGxpYnJhcnkgY29udGFpbmluZyBjcnlwdApjb25maWd1cmU6MzYw MzI6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3QuYyAtbG0gLWxsdGRsICA+ JjUKL2N5Z2RyaXZlL2MvRE9DVU1FfjEvQWFyb24vTE9DQUxTfjEvVGVtcC9jYzIwcTZYRi5vOiBJ biBmdW5jdGlvbiBgbWFpbic6Ci9ob21lL0Fhcm9uL2d1aWxlLTEuOC40L2NvbmZ0ZXN0LmM6MTY4 OiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBfY3J5cHQnCmNvbGxlY3QyOiBsZCByZXR1cm5lZCAx IGV4aXQgc3RhdHVzCmNvbmZpZ3VyZTozNjAzODogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHBy b2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJn dWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZ3VpbGUiCnwgI2RlZmluZSBQQUNLQUdF X1ZFUlNJT04gIjEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgImd1aWxlIDEuOC40Igp8 ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1ndWlsZUBnbnUub3JnIgp8ICNkZWZpbmUg U1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9T VFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5H U19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9I IDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAj ZGVmaW5lIEhBVkVfTElCTFRETCAxCnwgI2RlZmluZSBTQ01fV0FSTl9ERVBSRUNBVEVEX0RFRkFV TFQgInN1bW1hcnkiCnwgI2RlZmluZSBHVUlMRV9VU0VfNjRfQ0FMTFMgMQp8ICNkZWZpbmUgSEFW RV9QT1NJWCAxCnwgI2RlZmluZSBIQVZFX05FVFdPUktJTkcgMQp8ICNkZWZpbmUgU0laRU9GX0NI QVIgMQp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1NI T1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9TSE9SVCAyCnwgI2RlZmluZSBTSVpFT0Zf SU5UIDQKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9JTlQgNAp8ICNkZWZpbmUgU0laRU9GX0xP TkcgNAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1NJ WkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9OR19MT05HIDgKfCAjZGVmaW5lIFNJWkVPRl9VTlNJ R05FRF9MT05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX19fSU5UNjQgMAp8ICNkZWZpbmUgU0la RU9GX1VOU0lHTkVEX19fSU5UNjQgMAp8ICNkZWZpbmUgU0laRU9GX1ZPSURfUCA0CnwgI2RlZmlu ZSBTSVpFT0ZfSU5UUFRSX1QgNAp8ICNkZWZpbmUgU0laRU9GX1VJTlRQVFJfVCA0CnwgI2RlZmlu ZSBTSVpFT0ZfUFRSRElGRl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9TSVpFX1QgNAp8ICNkZWZpbmUg U0laRU9GX09GRl9UIDgKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9J TlRUWVBFU19IIDEKfCAjZGVmaW5lIFNJWkVPRl9JTlRNQVhfVCA4CnwgI2RlZmluZSBTVERDX0hF QURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBUSU1FX1dJVEhfU1lT X1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU9fSCAx CnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNk ZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1BST0NFU1NfSCAxCnwgI2RlZmlu ZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfUkVHRVhfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19JT0NUTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FQl9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1RJTUVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVf VU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0gg MQp8ICNkZWZpbmUgSEFWRV9HUlBfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8 ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2Rl ZmluZSBHRVRHUk9VUFNfVCBnaWRfdAp8ICNkZWZpbmUgUkVUU0lHVFlQRSB2b2lkCnwgI2RlZmlu ZSBIQVZFX0xJQk0gMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUQllOQU1FIDEKfCAjZGVmaW5lIEhB VkVfQ09OTkVDVCAxCnwgI2RlZmluZSBIQVZFX0FTU0VSVF9IIDEKfCAjZGVmaW5lIEhBVkVfQ1RF Uk1JRCAxCnwgI2RlZmluZSBIQVZFX0ZUSU1FIDEKfCAjZGVmaW5lIEhBVkVfRlRSVU5DQVRFIDEK fCAjZGVmaW5lIEhBVkVfRkNIT1dOIDEKfCAjZGVmaW5lIEhBVkVfR0VUQ1dEIDEKfCAjZGVmaW5l IEhBVkVfR0VURVVJRCAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBI QVZFX0dNVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfSU9DVEwgMQp8ICNkZWZpbmUgSEFWRV9MU1RB VCAxCnwgI2RlZmluZSBIQVZFX01LRElSIDEKfCAjZGVmaW5lIEhBVkVfTUtOT0QgMQp8ICNkZWZp bmUgSEFWRV9OSUNFIDEKfCAjZGVmaW5lIEhBVkVfUElQRSAxCnwgI2RlZmluZSBIQVZFX19QSVBF IDEKfCAjZGVmaW5lIEhBVkVfUkVBRERJUl9SIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8 ICNkZWZpbmUgSEFWRV9SRU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9STURJUiAxCnwgI2RlZmluZSBI QVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1NFVEVHSUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRF VUlEIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfU0VUUEdJRCAx CnwgI2RlZmluZSBIQVZFX1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX1NJR0FDVElPTiAxCnwgI2Rl ZmluZSBIQVZFX1NJR0lOVEVSUlVQVCAxCnwgI2RlZmluZSBIQVZFX1NUUkZUSU1FIDEKfCAjZGVm aW5lIEhBVkVfU1RSUFRJTUUgMQp8ICNkZWZpbmUgSEFWRV9TWU1MSU5LIDEKfCAjZGVmaW5lIEhB VkVfU1lOQyAxCnwgI2RlZmluZSBIQVZFX1NZU0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9UQ0dFVFBH UlAgMQp8ICNkZWZpbmUgSEFWRV9UQ1NFVFBHUlAgMQp8ICNkZWZpbmUgSEFWRV9USU1FUyAxCnwg I2RlZmluZSBIQVZFX1VOQU1FIDEKfCAjZGVmaW5lIEhBVkVfV0FJVFBJRCAxCnwgI2RlZmluZSBI QVZFX1NUUkRVUCAxCnwgI2RlZmluZSBIQVZFX1NZU1RFTSAxCnwgI2RlZmluZSBIQVZFX1VTTEVF UCAxCnwgI2RlZmluZSBIQVZFX0FURVhJVCAxCnwgI2RlZmluZSBIQVZFX09OX0VYSVQgMQp8ICNk ZWZpbmUgSEFWRV9DSE9XTiAxCnwgI2RlZmluZSBIQVZFX0xJTksgMQp8ICNkZWZpbmUgSEFWRV9G Q05UTCAxCnwgI2RlZmluZSBIQVZFX1RUWU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAx CnwgI2RlZmluZSBIQVZFX0dFVEdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfS0lMTCAxCnwgI2RlZmlu ZSBIQVZFX0dFVFBQSUQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQR1JQIDEKfCAjZGVmaW5lIEhBVkVf Rk9SSyAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX0dFVElUSU1F UiAxCnwgI2RlZmluZSBIQVZFX1NUUkNIUiAxCnwgI2RlZmluZSBIQVZFX1NUUkNNUCAxCnwgI2Rl ZmluZSBIQVZFX0lOREVYIDEKfCAjZGVmaW5lIEhBVkVfQkNPUFkgMQp8ICNkZWZpbmUgSEFWRV9N RU1DUFkgMQp8ICNkZWZpbmUgSEFWRV9SSU5ERVggMQp8ICNkZWZpbmUgSEFWRV9UUlVOQ0FURSAx CnwgI2RlZmluZSBIQVZFX1VOU0VURU5WIDEKfCAjZGVmaW5lIEhBVkVfSVNCTEFOSyAxCnwgI2Rl ZmluZSBIQVZFX1NUUk5DQVNFQ01QIDEKfCAjZGVmaW5lIEhBVkVfQ1JZUFRfSCAxCnwgI2RlZmlu ZSBIQVZFX05FVERCX0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX0NIUk9PVCAxCnwgI2RlZmluZSBIQVZF X0ZMT0NLIDEKfCAjZGVmaW5lIEhBVkVfR0VUTE9HSU4gMQp8ICNkZWZpbmUgSEFWRV9DVVNFUklE IDEKfCAjZGVmaW5lIEhBVkVfR0VUUFJJT1JJVFkgMQp8ICNkZWZpbmUgSEFWRV9TRVRQUklPUklU WSAxCnwgI2RlZmluZSBIQVZFX0dFVFBBU1MgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAx CnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VUSE9TVE5BTUUgMAp8IC8qIGVuZCBjb25mZGVmcy5oLiAg Ki8KfCAKfCAvKiBPdmVycmlkZSBhbnkgR0NDIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBh biBlcnJvci4KfCAgICBVc2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJu IHR5cGUgb2YgYSBHQ0MKfCAgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5 cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLwp8ICNpZmRlZiBfX2NwbHVzcGx1cwp8IGV4dGVybiAi QyIKfCAjZW5kaWYKfCBjaGFyIGNyeXB0ICgpOwp8IGludAp8IG1haW4gKCkKfCB7CnwgcmV0dXJu IGNyeXB0ICgpOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MzYwMzI6IGdjYyAt byBjb25mdGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3QuYyAtbGNyeXB0ICAtbG0gLWxsdGRsICA+ JjUKY29uZmlndXJlOjM2MDM4OiAkPyA9IDAKY29uZmlndXJlOjM2MDY2OiByZXN1bHQ6IC1sY3J5 cHQKY29uZmlndXJlOjM2MjgwOiBjaGVja2luZyBmb3IgX19nbXB6X2luaXQgaW4gLWxnbXAKY29u ZmlndXJlOjM2MzE1OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxn bXAgIC1sY3J5cHQgLWxtIC1sbHRkbCAgPiY1CmNvbmZpZ3VyZTozNjMyMTogJD8gPSAwCmNvbmZp Z3VyZTozNjMzOTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM2Mzc3OiBnY2MgLW8gY29uZnRlc3Qu ZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxnbXAgLWxjcnlwdCAtbG0gLWxsdGRsICA+JjUKY29u ZmlndXJlOjM2MzgzOiAkPyA9IDAKY29uZmlndXJlOjM2NDA5OiBjaGVja2luZyB3aGV0aGVyIE5M UyBpcyByZXF1ZXN0ZWQKY29uZmlndXJlOjM2NDE4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzY0 NTY6IGNoZWNraW5nIGZvciBtc2dmbXQKY29uZmlndXJlOiB0cnlpbmcgL3Vzci9iaW4vbXNnZm10 Li4uCjAgdHJhbnNsYXRlZCBtZXNzYWdlcy4KY29uZmlndXJlOjM2NDg4OiByZXN1bHQ6IC91c3Iv YmluL21zZ2ZtdApjb25maWd1cmU6MzY0OTc6IGNoZWNraW5nIGZvciBnbXNnZm10CmNvbmZpZ3Vy ZTozNjUyODogcmVzdWx0OiAvdXNyL2Jpbi9tc2dmbXQKY29uZmlndXJlOjM2NTc5OiBjaGVja2lu ZyBmb3IgeGdldHRleHQKY29uZmlndXJlOiB0cnlpbmcgL3Vzci9iaW4veGdldHRleHQuLi4KL3Vz ci9iaW4veGdldHRleHQ6IHdhcm5pbmc6IGZpbGUgYC9kZXYvbnVsbCcgZXh0ZW5zaW9uIGAnIGlz IHVua25vd247IHdpbGwgdHJ5IEMKY29uZmlndXJlOjM2NjExOiByZXN1bHQ6IC91c3IvYmluL3hn ZXR0ZXh0CmNvbmZpZ3VyZTozNjY1NzogY2hlY2tpbmcgZm9yIG1zZ21lcmdlCmNvbmZpZ3VyZTog dHJ5aW5nIC91c3IvYmluL21zZ21lcmdlLi4uCmNvbmZpZ3VyZTozNjY4ODogcmVzdWx0OiAvdXNy L2Jpbi9tc2dtZXJnZQpjb25maWd1cmU6MzY3NDI6IGNoZWNraW5nIGZvciBsZCB1c2VkIGJ5IEdD Qwpjb25maWd1cmU6MzY4MDY6IHJlc3VsdDogL3Vzci9pNjg2LXBjLWN5Z3dpbi9iaW4vbGQuZXhl CmNvbmZpZ3VyZTozNjgxNTogY2hlY2tpbmcgaWYgdGhlIGxpbmtlciAoL3Vzci9pNjg2LXBjLWN5 Z3dpbi9iaW4vbGQuZXhlKSBpcyBHTlUgbGQKY29uZmlndXJlOjM2ODI4OiByZXN1bHQ6IHllcwpj b25maWd1cmU6MzY4MzU6IGNoZWNraW5nIGZvciBzaGFyZWQgbGlicmFyeSBydW4gcGF0aCBvcmln aW4KY29uZmlndXJlOjM2ODQ4OiByZXN1bHQ6IGRvbmUKY29uZmlndXJlOjM3MzA1OiBjaGVja2lu ZyBmb3IgQ0ZQcmVmZXJlbmNlc0NvcHlBcHBWYWx1ZQpjb25maWd1cmU6MzczMzM6IGdjYyAtbyBj b25mdGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3QuYyAtbGdtcCAtbGNyeXB0IC1sbSAtbGx0ZGwg IC1XbCwtZnJhbWV3b3JrIC1XbCxDb3JlRm91bmRhdGlvbiA+JjUKY29uZnRlc3QuYzoxNTk6NDI6 IENvcmVGb3VuZGF0aW9uL0NGUHJlZmVyZW5jZXMuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9y eQpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiBgbWFpbic6CmNvbmZ0ZXN0LmM6MTYzOiBlcnJvcjog YE5VTEwnIHVuZGVjbGFyZWQgKGZpcnN0IHVzZSBpbiB0aGlzIGZ1bmN0aW9uKQpjb25mdGVzdC5j OjE2MzogZXJyb3I6IChFYWNoIHVuZGVjbGFyZWQgaWRlbnRpZmllciBpcyByZXBvcnRlZCBvbmx5 IG9uY2UKY29uZnRlc3QuYzoxNjM6IGVycm9yOiBmb3IgZWFjaCBmdW5jdGlvbiBpdCBhcHBlYXJz IGluLikKY29uZmlndXJlOjM3MzM5OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3 YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgImd1aWxlIgp8 ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lP TiAiMS44LjQiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiZ3VpbGUgMS44LjQiCnwgI2RlZmlu ZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWd1aWxlQGdudS5vcmciCnwgI2RlZmluZSBTVERDX0hF QURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19T VEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19I IDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8 ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNk ZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUg SEFWRV9MSUJMVERMIDEKfCAjZGVmaW5lIFNDTV9XQVJOX0RFUFJFQ0FURURfREVGQVVMVCAic3Vt bWFyeSIKfCAjZGVmaW5lIEdVSUxFX1VTRV82NF9DQUxMUyAxCnwgI2RlZmluZSBIQVZFX1BPU0lY IDEKfCAjZGVmaW5lIEhBVkVfTkVUV09SS0lORyAxCnwgI2RlZmluZSBTSVpFT0ZfQ0hBUiAxCnwg I2RlZmluZSBTSVpFT0ZfVU5TSUdORURfQ0hBUiAxCnwgI2RlZmluZSBTSVpFT0ZfU0hPUlQgMgp8 ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9JTlQgNAp8 ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0lOVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA0Cnwg I2RlZmluZSBTSVpFT0ZfVU5TSUdORURfTE9ORyA0CnwgI2RlZmluZSBTSVpFT0ZfU0laRV9UIDQK fCAjZGVmaW5lIFNJWkVPRl9MT05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xP TkdfTE9ORyA4CnwgI2RlZmluZSBTSVpFT0ZfX19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0ZfVU5T SUdORURfX19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0ZfVk9JRF9QIDQKfCAjZGVmaW5lIFNJWkVP Rl9JTlRQVFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfVUlOVFBUUl9UIDQKfCAjZGVmaW5lIFNJWkVP Rl9QVFJESUZGX1QgNAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0Zf T0ZGX1QgOAp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVT X0ggMQp8ICNkZWZpbmUgU0laRU9GX0lOVE1BWF9UIDgKfCAjZGVmaW5lIFNURENfSEVBREVSUyAx CnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAx CnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9JT19IIDEKfCAjZGVm aW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBI QVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfUFJPQ0VTU19IIDEKfCAjZGVmaW5lIEhBVkVf U1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9SRUdFWF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lP Q1RMX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf VElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVCX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf VElNRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERf SCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2Rl ZmluZSBIQVZFX0dSUF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmlu ZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEdF VEdST1VQU19UIGdpZF90CnwgI2RlZmluZSBSRVRTSUdUWVBFIHZvaWQKfCAjZGVmaW5lIEhBVkVf TElCTSAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1RCWU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9DT05O RUNUIDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJUX0ggMQp8ICNkZWZpbmUgSEFWRV9DVEVSTUlEIDEK fCAjZGVmaW5lIEhBVkVfRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9GVFJVTkNBVEUgMQp8ICNkZWZp bmUgSEFWRV9GQ0hPV04gMQp8ICNkZWZpbmUgSEFWRV9HRVRDV0QgMQp8ICNkZWZpbmUgSEFWRV9H RVRFVUlEIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfR01U SU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9JT0NUTCAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAj ZGVmaW5lIEhBVkVfTUtESVIgMQp8ICNkZWZpbmUgSEFWRV9NS05PRCAxCnwgI2RlZmluZSBIQVZF X05JQ0UgMQp8ICNkZWZpbmUgSEFWRV9QSVBFIDEKfCAjZGVmaW5lIEhBVkVfX1BJUEUgMQp8ICNk ZWZpbmUgSEFWRV9SRUFERElSX1IgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmlu ZSBIQVZFX1JFTkFNRSAxCnwgI2RlZmluZSBIQVZFX1JNRElSIDEKfCAjZGVmaW5lIEhBVkVfU0VM RUNUIDEKfCAjZGVmaW5lIEhBVkVfU0VURUdJRCAxCnwgI2RlZmluZSBIQVZFX1NFVEVVSUQgMQp8 ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9TRVRQR0lEIDEKfCAjZGVm aW5lIEhBVkVfU0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVfU0lHQUNUSU9OIDEKfCAjZGVmaW5lIEhB VkVfU0lHSU5URVJSVVBUIDEKfCAjZGVmaW5lIEhBVkVfU1RSRlRJTUUgMQp8ICNkZWZpbmUgSEFW RV9TVFJQVElNRSAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9TWU5D IDEKfCAjZGVmaW5lIEhBVkVfU1lTQ09ORiAxCnwgI2RlZmluZSBIQVZFX1RDR0VUUEdSUCAxCnwg I2RlZmluZSBIQVZFX1RDU0VUUEdSUCAxCnwgI2RlZmluZSBIQVZFX1RJTUVTIDEKfCAjZGVmaW5l IEhBVkVfVU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9XQUlUUElEIDEKfCAjZGVmaW5lIEhBVkVfU1RS RFVQIDEKfCAjZGVmaW5lIEhBVkVfU1lTVEVNIDEKfCAjZGVmaW5lIEhBVkVfVVNMRUVQIDEKfCAj ZGVmaW5lIEhBVkVfQVRFWElUIDEKfCAjZGVmaW5lIEhBVkVfT05fRVhJVCAxCnwgI2RlZmluZSBI QVZFX0NIT1dOIDEKfCAjZGVmaW5lIEhBVkVfTElOSyAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEK fCAjZGVmaW5lIEhBVkVfVFRZTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVm aW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9LSUxMIDEKfCAjZGVmaW5lIEhBVkVf R0VUUFBJRCAxCnwgI2RlZmluZSBIQVZFX0dFVFBHUlAgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEK fCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSVRJTUVSIDEKfCAj ZGVmaW5lIEhBVkVfU1RSQ0hSIDEKfCAjZGVmaW5lIEhBVkVfU1RSQ01QIDEKfCAjZGVmaW5lIEhB VkVfSU5ERVggMQp8ICNkZWZpbmUgSEFWRV9CQ09QWSAxCnwgI2RlZmluZSBIQVZFX01FTUNQWSAx CnwgI2RlZmluZSBIQVZFX1JJTkRFWCAxCnwgI2RlZmluZSBIQVZFX1RSVU5DQVRFIDEKfCAjZGVm aW5lIEhBVkVfVU5TRVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9JU0JMQU5LIDEKfCAjZGVmaW5lIEhB VkVfU1RSTkNBU0VDTVAgMQp8ICNkZWZpbmUgSEFWRV9DUllQVF9IIDEKfCAjZGVmaW5lIEhBVkVf TkVUREJfSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19Q QVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfQ0hST09UIDEKfCAjZGVmaW5lIEhBVkVfRkxPQ0sg MQp8ICNkZWZpbmUgSEFWRV9HRVRMT0dJTiAxCnwgI2RlZmluZSBIQVZFX0NVU0VSSUQgMQp8ICNk ZWZpbmUgSEFWRV9HRVRQUklPUklUWSAxCnwgI2RlZmluZSBIQVZFX1NFVFBSSU9SSVRZIDEKfCAj ZGVmaW5lIEhBVkVfR0VUUEFTUyAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9TRVRIT1NUTkFNRSAwCnwgI2RlZmluZSBIQVZFX0NSWVBUIDEKfCAjZGVm aW5lIEhBVkVfTElCR01QIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPENv cmVGb3VuZGF0aW9uL0NGUHJlZmVyZW5jZXMuaD4KfCBpbnQKfCBtYWluICgpCnwgewp8IENGUHJl ZmVyZW5jZXNDb3B5QXBwVmFsdWUoTlVMTCwgTlVMTCkKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0K Y29uZmlndXJlOjM3MzU3OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTozNzM2NjogY2hlY2tpbmcgZm9y IENGTG9jYWxlQ29weUN1cnJlbnQKY29uZmlndXJlOjM3Mzk0OiBnY2MgLW8gY29uZnRlc3QuZXhl IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxnbXAgLWxjcnlwdCAtbG0gLWxsdGRsICAtV2wsLWZyYW1l d29yayAtV2wsQ29yZUZvdW5kYXRpb24gPiY1CmNvbmZ0ZXN0LmM6MTU5OjM3OiBDb3JlRm91bmRh dGlvbi9DRkxvY2FsZS5oOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CmNvbmZpZ3VyZTozNzQw MDogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmgu ICAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFS TkFNRSAiZ3VpbGUiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjEuOC40Igp8ICNkZWZpbmUg UEFDS0FHRV9TVFJJTkcgImd1aWxlIDEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQg ImJ1Zy1ndWlsZUBnbnUub3JnIgp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhB VkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01F TU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQ RVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0gg MQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEhBVkVfTElCTFRETCAxCnwgI2Rl ZmluZSBTQ01fV0FSTl9ERVBSRUNBVEVEX0RFRkFVTFQgInN1bW1hcnkiCnwgI2RlZmluZSBHVUlM RV9VU0VfNjRfQ0FMTFMgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWCAxCnwgI2RlZmluZSBIQVZFX05F VFdPUktJTkcgMQp8ICNkZWZpbmUgU0laRU9GX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1VOU0lH TkVEX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9VTlNJ R05FRF9TSE9SVCAyCnwgI2RlZmluZSBTSVpFT0ZfSU5UIDQKfCAjZGVmaW5lIFNJWkVPRl9VTlNJ R05FRF9JTlQgNAp8ICNkZWZpbmUgU0laRU9GX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1VOU0lH TkVEX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9O R19MT05HIDgKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9MT05HX0xPTkcgOAp8ICNkZWZpbmUg U0laRU9GX19fSU5UNjQgMAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX19fSU5UNjQgMAp8ICNk ZWZpbmUgU0laRU9GX1ZPSURfUCA0CnwgI2RlZmluZSBTSVpFT0ZfSU5UUFRSX1QgNAp8ICNkZWZp bmUgU0laRU9GX1VJTlRQVFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfUFRSRElGRl9UIDQKfCAjZGVm aW5lIFNJWkVPRl9TSVpFX1QgNAp8ICNkZWZpbmUgU0laRU9GX09GRl9UIDgKfCAjZGVmaW5lIEhB VkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIFNJWkVP Rl9JTlRNQVhfVCA4CnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJF TlRfSCAxCnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9TWVNf V0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU9fSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEK fCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2Rl ZmluZSBIQVZFX1BST0NFU1NfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5l IEhBVkVfUkVHRVhfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19JT0NUTF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19USU1FQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVTX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVElNRV9IIDEKfCAjZGVmaW5l IEhBVkVfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9V VElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9HUlBfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8 ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBHRVRHUk9VUFNfVCBnaWRfdAp8ICNk ZWZpbmUgUkVUU0lHVFlQRSB2b2lkCnwgI2RlZmluZSBIQVZFX0xJQk0gMQp8ICNkZWZpbmUgSEFW RV9HRVRIT1NUQllOQU1FIDEKfCAjZGVmaW5lIEhBVkVfQ09OTkVDVCAxCnwgI2RlZmluZSBIQVZF X0FTU0VSVF9IIDEKfCAjZGVmaW5lIEhBVkVfQ1RFUk1JRCAxCnwgI2RlZmluZSBIQVZFX0ZUSU1F IDEKfCAjZGVmaW5lIEhBVkVfRlRSVU5DQVRFIDEKfCAjZGVmaW5lIEhBVkVfRkNIT1dOIDEKfCAj ZGVmaW5lIEhBVkVfR0VUQ1dEIDEKfCAjZGVmaW5lIEhBVkVfR0VURVVJRCAxCnwgI2RlZmluZSBI QVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX0dNVElNRV9SIDEKfCAjZGVmaW5lIEhB VkVfSU9DVEwgMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwgI2RlZmluZSBIQVZFX01LRElSIDEK fCAjZGVmaW5lIEhBVkVfTUtOT0QgMQp8ICNkZWZpbmUgSEFWRV9OSUNFIDEKfCAjZGVmaW5lIEhB VkVfUElQRSAxCnwgI2RlZmluZSBIQVZFX19QSVBFIDEKfCAjZGVmaW5lIEhBVkVfUkVBRERJUl9S IDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFWRV9SRU5BTUUgMQp8ICNk ZWZpbmUgSEFWRV9STURJUiAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZF X1NFVEVHSUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRFVUlEIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9D QUxFIDEKfCAjZGVmaW5lIEhBVkVfU0VUUEdJRCAxCnwgI2RlZmluZSBIQVZFX1NFVFNJRCAxCnwg I2RlZmluZSBIQVZFX1NJR0FDVElPTiAxCnwgI2RlZmluZSBIQVZFX1NJR0lOVEVSUlVQVCAxCnwg I2RlZmluZSBIQVZFX1NUUkZUSU1FIDEKfCAjZGVmaW5lIEhBVkVfU1RSUFRJTUUgMQp8ICNkZWZp bmUgSEFWRV9TWU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAxCnwgI2RlZmluZSBIQVZFX1NZ U0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9UQ0dFVFBHUlAgMQp8ICNkZWZpbmUgSEFWRV9UQ1NFVFBH UlAgMQp8ICNkZWZpbmUgSEFWRV9USU1FUyAxCnwgI2RlZmluZSBIQVZFX1VOQU1FIDEKfCAjZGVm aW5lIEhBVkVfV0FJVFBJRCAxCnwgI2RlZmluZSBIQVZFX1NUUkRVUCAxCnwgI2RlZmluZSBIQVZF X1NZU1RFTSAxCnwgI2RlZmluZSBIQVZFX1VTTEVFUCAxCnwgI2RlZmluZSBIQVZFX0FURVhJVCAx CnwgI2RlZmluZSBIQVZFX09OX0VYSVQgMQp8ICNkZWZpbmUgSEFWRV9DSE9XTiAxCnwgI2RlZmlu ZSBIQVZFX0xJTksgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX1RUWU5B TUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0dFVEdSRU5UIDEK fCAjZGVmaW5lIEhBVkVfS0lMTCAxCnwgI2RlZmluZSBIQVZFX0dFVFBQSUQgMQp8ICNkZWZpbmUg SEFWRV9HRVRQR1JQIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1NFVElU SU1FUiAxCnwgI2RlZmluZSBIQVZFX0dFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX1NUUkNIUiAx CnwgI2RlZmluZSBIQVZFX1NUUkNNUCAxCnwgI2RlZmluZSBIQVZFX0lOREVYIDEKfCAjZGVmaW5l IEhBVkVfQkNPUFkgMQp8ICNkZWZpbmUgSEFWRV9NRU1DUFkgMQp8ICNkZWZpbmUgSEFWRV9SSU5E RVggMQp8ICNkZWZpbmUgSEFWRV9UUlVOQ0FURSAxCnwgI2RlZmluZSBIQVZFX1VOU0VURU5WIDEK fCAjZGVmaW5lIEhBVkVfSVNCTEFOSyAxCnwgI2RlZmluZSBIQVZFX1NUUk5DQVNFQ01QIDEKfCAj ZGVmaW5lIEhBVkVfQ1JZUFRfSCAxCnwgI2RlZmluZSBIQVZFX05FVERCX0ggMQp8ICNkZWZpbmUg SEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBI QVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmlu ZSBIQVZFX0NIUk9PVCAxCnwgI2RlZmluZSBIQVZFX0ZMT0NLIDEKfCAjZGVmaW5lIEhBVkVfR0VU TE9HSU4gMQp8ICNkZWZpbmUgSEFWRV9DVVNFUklEIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFJJT1JJ VFkgMQp8ICNkZWZpbmUgSEFWRV9TRVRQUklPUklUWSAxCnwgI2RlZmluZSBIQVZFX0dFVFBBU1Mg MQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VUSE9T VE5BTUUgMAp8ICNkZWZpbmUgSEFWRV9DUllQVCAxCnwgI2RlZmluZSBIQVZFX0xJQkdNUCAxCnwg LyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxDb3JlRm91bmRhdGlvbi9DRkxvY2Fs ZS5oPgp8IGludAp8IG1haW4gKCkKfCB7CnwgQ0ZMb2NhbGVDb3B5Q3VycmVudCgpOwp8ICAgOwp8 ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6Mzc0MTg6IHJlc3VsdDogbm8KY29uZmlndXJlOjM3 NDY5OiBjaGVja2luZyBmb3IgR05VIGdldHRleHQgaW4gbGliYwpjb25maWd1cmU6Mzc0OTk6IGdj YyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3QuYyAtbGdtcCAtbGNyeXB0IC1sbSAt bGx0ZGwgID4mNQovY3lnZHJpdmUvYy9ET0NVTUV+MS9BYXJvbi9MT0NBTFN+MS9UZW1wL2NjdWNF dlZDLm86IEluIGZ1bmN0aW9uIGBtYWluJzoKL2hvbWUvQWFyb24vZ3VpbGUtMS44LjQvY29uZnRl c3QuYzoxNjY6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYF9saWJpbnRsX2JpbmR0ZXh0ZG9tYWlu JwovaG9tZS9BYXJvbi9ndWlsZS0xLjguNC9jb25mdGVzdC5jOjE2NzogdW5kZWZpbmVkIHJlZmVy ZW5jZSB0byBgX2xpYmludGxfZ2V0dGV4dCcKL2hvbWUvQWFyb24vZ3VpbGUtMS44LjQvY29uZnRl c3QuYzoxNjc6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYF9saWJpbnRsX25nZXR0ZXh0JwovaG9t ZS9BYXJvbi9ndWlsZS0xLjguNC9jb25mdGVzdC5jOjE2NzogdW5kZWZpbmVkIHJlZmVyZW5jZSB0 byBgX19ubF9kb21haW5fYmluZGluZ3MnCi9ob21lL0Fhcm9uL2d1aWxlLTEuOC40L2NvbmZ0ZXN0 LmM6MTY3OiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBfX25sX21zZ19jYXRfY250cicKY29sbGVj dDI6IGxkIHJldHVybmVkIDEgZXhpdCBzdGF0dXMKY29uZmlndXJlOjM3NTA1OiAkPyA9IDEKY29u ZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgI2RlZmlu ZSBQQUNLQUdFX05BTUUgImd1aWxlIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJndWlsZSIK fCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMS44LjQiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklO RyAiZ3VpbGUgMS44LjQiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWd1aWxlQGdu dS5vcmciCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAx CnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVm aW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBI QVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgSEFWRV9MSUJMVERMIDEKfCAjZGVmaW5lIFNDTV9XQVJO X0RFUFJFQ0FURURfREVGQVVMVCAic3VtbWFyeSIKfCAjZGVmaW5lIEdVSUxFX1VTRV82NF9DQUxM UyAxCnwgI2RlZmluZSBIQVZFX1BPU0lYIDEKfCAjZGVmaW5lIEhBVkVfTkVUV09SS0lORyAxCnwg I2RlZmluZSBTSVpFT0ZfQ0hBUiAxCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfQ0hBUiAxCnwg I2RlZmluZSBTSVpFT0ZfU0hPUlQgMgp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX1NIT1JUIDIK fCAjZGVmaW5lIFNJWkVPRl9JTlQgNAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0lOVCA0Cnwg I2RlZmluZSBTSVpFT0ZfTE9ORyA0CnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfTE9ORyA0Cnwg I2RlZmluZSBTSVpFT0ZfU0laRV9UIDQKfCAjZGVmaW5lIFNJWkVPRl9MT05HX0xPTkcgOAp8ICNk ZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xPTkdfTE9ORyA4CnwgI2RlZmluZSBTSVpFT0ZfX19JTlQ2 NCAwCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfX19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0Zf Vk9JRF9QIDQKfCAjZGVmaW5lIFNJWkVPRl9JTlRQVFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfVUlO VFBUUl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9QVFJESUZGX1QgNAp8ICNkZWZpbmUgU0laRU9GX1NJ WkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfT0ZGX1QgOAp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAx CnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgU0laRU9GX0lOVE1BWF9UIDgK fCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVm aW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNk ZWZpbmUgSEFWRV9JT19IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFW RV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfUFJP Q0VTU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9SRUdFWF9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lPQ1RMX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNU X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVC X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBF U19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9USU1FX0gg MQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNk ZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX0dSUF9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZF X1VOSVNURF9IIDEKfCAjZGVmaW5lIEdFVEdST1VQU19UIGdpZF90CnwgI2RlZmluZSBSRVRTSUdU WVBFIHZvaWQKfCAjZGVmaW5lIEhBVkVfTElCTSAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1RCWU5B TUUgMQp8ICNkZWZpbmUgSEFWRV9DT05ORUNUIDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJUX0ggMQp8 ICNkZWZpbmUgSEFWRV9DVEVSTUlEIDEKfCAjZGVmaW5lIEhBVkVfRlRJTUUgMQp8ICNkZWZpbmUg SEFWRV9GVFJVTkNBVEUgMQp8ICNkZWZpbmUgSEFWRV9GQ0hPV04gMQp8ICNkZWZpbmUgSEFWRV9H RVRDV0QgMQp8ICNkZWZpbmUgSEFWRV9HRVRFVUlEIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9G REFZIDEKfCAjZGVmaW5lIEhBVkVfR01USU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9JT0NUTCAxCnwg I2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfTUtESVIgMQp8ICNkZWZpbmUgSEFW RV9NS05PRCAxCnwgI2RlZmluZSBIQVZFX05JQ0UgMQp8ICNkZWZpbmUgSEFWRV9QSVBFIDEKfCAj ZGVmaW5lIEhBVkVfX1BJUEUgMQp8ICNkZWZpbmUgSEFWRV9SRUFERElSX1IgMQp8ICNkZWZpbmUg SEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX1JFTkFNRSAxCnwgI2RlZmluZSBIQVZFX1JN RElSIDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfU0VURUdJRCAxCnwg I2RlZmluZSBIQVZFX1NFVEVVSUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZp bmUgSEFWRV9TRVRQR0lEIDEKfCAjZGVmaW5lIEhBVkVfU0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVf U0lHQUNUSU9OIDEKfCAjZGVmaW5lIEhBVkVfU0lHSU5URVJSVVBUIDEKfCAjZGVmaW5lIEhBVkVf U1RSRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9TVFJQVElNRSAxCnwgI2RlZmluZSBIQVZFX1NZTUxJ TksgMQp8ICNkZWZpbmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVfU1lTQ09ORiAxCnwgI2Rl ZmluZSBIQVZFX1RDR0VUUEdSUCAxCnwgI2RlZmluZSBIQVZFX1RDU0VUUEdSUCAxCnwgI2RlZmlu ZSBIQVZFX1RJTUVTIDEKfCAjZGVmaW5lIEhBVkVfVU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9XQUlU UElEIDEKfCAjZGVmaW5lIEhBVkVfU1RSRFVQIDEKfCAjZGVmaW5lIEhBVkVfU1lTVEVNIDEKfCAj ZGVmaW5lIEhBVkVfVVNMRUVQIDEKfCAjZGVmaW5lIEhBVkVfQVRFWElUIDEKfCAjZGVmaW5lIEhB VkVfT05fRVhJVCAxCnwgI2RlZmluZSBIQVZFX0NIT1dOIDEKfCAjZGVmaW5lIEhBVkVfTElOSyAx CnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfVFRZTkFNRSAxCnwgI2RlZmlu ZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFW RV9LSUxMIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFBJRCAxCnwgI2RlZmluZSBIQVZFX0dFVFBHUlAg MQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVm aW5lIEhBVkVfR0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfU1RSQ0hSIDEKfCAjZGVmaW5lIEhB VkVfU1RSQ01QIDEKfCAjZGVmaW5lIEhBVkVfSU5ERVggMQp8ICNkZWZpbmUgSEFWRV9CQ09QWSAx CnwgI2RlZmluZSBIQVZFX01FTUNQWSAxCnwgI2RlZmluZSBIQVZFX1JJTkRFWCAxCnwgI2RlZmlu ZSBIQVZFX1RSVU5DQVRFIDEKfCAjZGVmaW5lIEhBVkVfVU5TRVRFTlYgMQp8ICNkZWZpbmUgSEFW RV9JU0JMQU5LIDEKfCAjZGVmaW5lIEhBVkVfU1RSTkNBU0VDTVAgMQp8ICNkZWZpbmUgSEFWRV9D UllQVF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUREJfSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09V UkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfQ0hST09U IDEKfCAjZGVmaW5lIEhBVkVfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9HRVRMT0dJTiAxCnwgI2Rl ZmluZSBIQVZFX0NVU0VSSUQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQUklPUklUWSAxCnwgI2RlZmlu ZSBIQVZFX1NFVFBSSU9SSVRZIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFTUyAxCnwgI2RlZmluZSBI QVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRVRIT1NUTkFNRSAwCnwgI2Rl ZmluZSBIQVZFX0NSWVBUIDEKfCAjZGVmaW5lIEhBVkVfTElCR01QIDEKfCAvKiBlbmQgY29uZmRl ZnMuaC4gICovCnwgI2luY2x1ZGUgPGxpYmludGwuaD4KfCAKfCBleHRlcm4gaW50IF9ubF9tc2df Y2F0X2NudHI7CnwgZXh0ZXJuIGludCAqX25sX2RvbWFpbl9iaW5kaW5nczsKfCBpbnQKfCBtYWlu ICgpCnwgewp8IGJpbmR0ZXh0ZG9tYWluICgiIiwgIiIpOwp8IHJldHVybiAqIGdldHRleHQgKCIi KSArICogbmdldHRleHQgKCIiLCAiIiwgMCkgKyBfbmxfbXNnX2NhdF9jbnRyICsgKl9ubF9kb21h aW5fYmluZGluZ3MKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjM3NTIzOiByZXN1 bHQ6IG5vCmNvbmZpZ3VyZTozNzU1NzogY2hlY2tpbmcgZm9yIGljb252CmNvbmZpZ3VyZTozNzU4 OTogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1sZ21wIC1sY3J5cHQg LWxtIC1sbHRkbCAgPiY1Ci9jeWdkcml2ZS9jL0RPQ1VNRX4xL0Fhcm9uL0xPQ0FMU34xL1RlbXAv Y2NtRFlHNHcubzogSW4gZnVuY3Rpb24gYG1haW4nOgovaG9tZS9BYXJvbi9ndWlsZS0xLjguNC9j b25mdGVzdC5jOjE2NDogdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgX2xpYmljb252X29wZW4nCi9o b21lL0Fhcm9uL2d1aWxlLTEuOC40L2NvbmZ0ZXN0LmM6MTY1OiB1bmRlZmluZWQgcmVmZXJlbmNl IHRvIGBfbGliaWNvbnYnCi9ob21lL0Fhcm9uL2d1aWxlLTEuOC40L2NvbmZ0ZXN0LmM6MTY2OiB1 bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBfbGliaWNvbnZfY2xvc2UnCmNvbGxlY3QyOiBsZCByZXR1 cm5lZCAxIGV4aXQgc3RhdHVzCmNvbmZpZ3VyZTozNzU5NTogJD8gPSAxCmNvbmZpZ3VyZTogZmFp bGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8ICNkZWZpbmUgUEFDS0FHRV9O QU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZ3VpbGUiCnwgI2RlZmluZSBQ QUNLQUdFX1ZFUlNJT04gIjEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgImd1aWxlIDEu OC40Igp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1ndWlsZUBnbnUub3JnIgp8ICNk ZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUg SEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVf U1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NU RElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9I IDEKfCAjZGVmaW5lIEhBVkVfTElCTFRETCAxCnwgI2RlZmluZSBTQ01fV0FSTl9ERVBSRUNBVEVE X0RFRkFVTFQgInN1bW1hcnkiCnwgI2RlZmluZSBHVUlMRV9VU0VfNjRfQ0FMTFMgMQp8ICNkZWZp bmUgSEFWRV9QT1NJWCAxCnwgI2RlZmluZSBIQVZFX05FVFdPUktJTkcgMQp8ICNkZWZpbmUgU0la RU9GX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0NIQVIgMQp8ICNkZWZpbmUgU0la RU9GX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9TSE9SVCAyCnwgI2RlZmluZSBT SVpFT0ZfSU5UIDQKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9JTlQgNAp8ICNkZWZpbmUgU0la RU9GX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xPTkcgNAp8ICNkZWZpbmUgU0la RU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9OR19MT05HIDgKfCAjZGVmaW5lIFNJWkVP Rl9VTlNJR05FRF9MT05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX19fSU5UNjQgMAp8ICNkZWZp bmUgU0laRU9GX1VOU0lHTkVEX19fSU5UNjQgMAp8ICNkZWZpbmUgU0laRU9GX1ZPSURfUCA0Cnwg I2RlZmluZSBTSVpFT0ZfSU5UUFRSX1QgNAp8ICNkZWZpbmUgU0laRU9GX1VJTlRQVFJfVCA0Cnwg I2RlZmluZSBTSVpFT0ZfUFRSRElGRl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9TSVpFX1QgNAp8ICNk ZWZpbmUgU0laRU9GX09GRl9UIDgKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUg SEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIFNJWkVPRl9JTlRNQVhfVCA4CnwgI2RlZmluZSBT VERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBUSU1FX1dJ VEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVf SU9fSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0gg MQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1BST0NFU1NfSCAxCnwg I2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfUkVHRVhfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19JT0NUTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FQl9IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1RJTUVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfVElNRV9IIDEKfCAjZGVmaW5l IEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVf UFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9HUlBfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1F X0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAx CnwgI2RlZmluZSBHRVRHUk9VUFNfVCBnaWRfdAp8ICNkZWZpbmUgUkVUU0lHVFlQRSB2b2lkCnwg I2RlZmluZSBIQVZFX0xJQk0gMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUQllOQU1FIDEKfCAjZGVm aW5lIEhBVkVfQ09OTkVDVCAxCnwgI2RlZmluZSBIQVZFX0FTU0VSVF9IIDEKfCAjZGVmaW5lIEhB VkVfQ1RFUk1JRCAxCnwgI2RlZmluZSBIQVZFX0ZUSU1FIDEKfCAjZGVmaW5lIEhBVkVfRlRSVU5D QVRFIDEKfCAjZGVmaW5lIEhBVkVfRkNIT1dOIDEKfCAjZGVmaW5lIEhBVkVfR0VUQ1dEIDEKfCAj ZGVmaW5lIEhBVkVfR0VURVVJRCAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2Rl ZmluZSBIQVZFX0dNVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfSU9DVEwgMQp8ICNkZWZpbmUgSEFW RV9MU1RBVCAxCnwgI2RlZmluZSBIQVZFX01LRElSIDEKfCAjZGVmaW5lIEhBVkVfTUtOT0QgMQp8 ICNkZWZpbmUgSEFWRV9OSUNFIDEKfCAjZGVmaW5lIEhBVkVfUElQRSAxCnwgI2RlZmluZSBIQVZF X19QSVBFIDEKfCAjZGVmaW5lIEhBVkVfUkVBRERJUl9SIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJ TksgMQp8ICNkZWZpbmUgSEFWRV9SRU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9STURJUiAxCnwgI2Rl ZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1NFVEVHSUQgMQp8ICNkZWZpbmUgSEFW RV9TRVRFVUlEIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfU0VU UEdJRCAxCnwgI2RlZmluZSBIQVZFX1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX1NJR0FDVElPTiAx CnwgI2RlZmluZSBIQVZFX1NJR0lOVEVSUlVQVCAxCnwgI2RlZmluZSBIQVZFX1NUUkZUSU1FIDEK fCAjZGVmaW5lIEhBVkVfU1RSUFRJTUUgMQp8ICNkZWZpbmUgSEFWRV9TWU1MSU5LIDEKfCAjZGVm aW5lIEhBVkVfU1lOQyAxCnwgI2RlZmluZSBIQVZFX1NZU0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9U Q0dFVFBHUlAgMQp8ICNkZWZpbmUgSEFWRV9UQ1NFVFBHUlAgMQp8ICNkZWZpbmUgSEFWRV9USU1F UyAxCnwgI2RlZmluZSBIQVZFX1VOQU1FIDEKfCAjZGVmaW5lIEhBVkVfV0FJVFBJRCAxCnwgI2Rl ZmluZSBIQVZFX1NUUkRVUCAxCnwgI2RlZmluZSBIQVZFX1NZU1RFTSAxCnwgI2RlZmluZSBIQVZF X1VTTEVFUCAxCnwgI2RlZmluZSBIQVZFX0FURVhJVCAxCnwgI2RlZmluZSBIQVZFX09OX0VYSVQg MQp8ICNkZWZpbmUgSEFWRV9DSE9XTiAxCnwgI2RlZmluZSBIQVZFX0xJTksgMQp8ICNkZWZpbmUg SEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX1RUWU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRQ V0VOVCAxCnwgI2RlZmluZSBIQVZFX0dFVEdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfS0lMTCAxCnwg I2RlZmluZSBIQVZFX0dFVFBQSUQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQR1JQIDEKfCAjZGVmaW5l IEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX0dF VElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX1NUUkNIUiAxCnwgI2RlZmluZSBIQVZFX1NUUkNNUCAx CnwgI2RlZmluZSBIQVZFX0lOREVYIDEKfCAjZGVmaW5lIEhBVkVfQkNPUFkgMQp8ICNkZWZpbmUg SEFWRV9NRU1DUFkgMQp8ICNkZWZpbmUgSEFWRV9SSU5ERVggMQp8ICNkZWZpbmUgSEFWRV9UUlVO Q0FURSAxCnwgI2RlZmluZSBIQVZFX1VOU0VURU5WIDEKfCAjZGVmaW5lIEhBVkVfSVNCTEFOSyAx CnwgI2RlZmluZSBIQVZFX1NUUk5DQVNFQ01QIDEKfCAjZGVmaW5lIEhBVkVfQ1JZUFRfSCAxCnwg I2RlZmluZSBIQVZFX05FVERCX0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX0NIUk9PVCAxCnwgI2RlZmlu ZSBIQVZFX0ZMT0NLIDEKfCAjZGVmaW5lIEhBVkVfR0VUTE9HSU4gMQp8ICNkZWZpbmUgSEFWRV9D VVNFUklEIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFJJT1JJVFkgMQp8ICNkZWZpbmUgSEFWRV9TRVRQ UklPUklUWSAxCnwgI2RlZmluZSBIQVZFX0dFVFBBU1MgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NU TkFNRSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VUSE9TVE5BTUUgMAp8ICNkZWZpbmUgSEFWRV9D UllQVCAxCnwgI2RlZmluZSBIQVZFX0xJQkdNUCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8 ICNpbmNsdWRlIDxzdGRsaWIuaD4KfCAjaW5jbHVkZSA8aWNvbnYuaD4KfCBpbnQKfCBtYWluICgp Cnwgewp8IGljb252X3QgY2QgPSBpY29udl9vcGVuKCIiLCIiKTsKfCAgICAgICAgaWNvbnYoY2Qs TlVMTCxOVUxMLE5VTEwsTlVMTCk7CnwgICAgICAgIGljb252X2Nsb3NlKGNkKTsKfCAgIDsKfCAg IHJldHVybiAwOwp8IH0KY29uZmlndXJlOjM3NjM4OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1P MiAgIGNvbmZ0ZXN0LmMgLWxnbXAgLWxjcnlwdCAtbG0gLWxsdGRsICAtbGljb252ID4mNQpjb25m aWd1cmU6Mzc2NDQ6ICQ/ID0gMApjb25maWd1cmU6Mzc2NjU6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy ZTozNzY3NTogY2hlY2tpbmcgaG93IHRvIGxpbmsgd2l0aCBsaWJpY29udgpjb25maWd1cmU6Mzc2 Nzc6IHJlc3VsdDogLWxpY29udgpjb25maWd1cmU6MzgwODE6IGNoZWNraW5nIGZvciBHTlUgZ2V0 dGV4dCBpbiBsaWJpbnRsCmNvbmZpZ3VyZTozODExOTogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAt TzIgICAgY29uZnRlc3QuYyAtbGdtcCAtbGNyeXB0IC1sbSAtbGx0ZGwgIC1saW50bCA+JjUKSW5m bzogcmVzb2x2aW5nIF9fbmxfbXNnX2NhdF9jbnRyIGJ5IGxpbmtpbmcgdG8gX19pbXBfX19ubF9t c2dfY2F0X2NudHIgKGF1dG8taW1wb3J0KQpjb25maWd1cmU6MzgxMjU6ICQ/ID0gMApjb25maWd1 cmU6MzgyMDI6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozODIzOTogY2hlY2tpbmcgd2hldGhlciB0 byB1c2UgTkxTCmNvbmZpZ3VyZTozODI0MTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM4MjQ0OiBj aGVja2luZyB3aGVyZSB0aGUgZ2V0dGV4dCBmdW5jdGlvbiBjb21lcyBmcm9tCmNvbmZpZ3VyZToz ODI1NTogcmVzdWx0OiBleHRlcm5hbCBsaWJpbnRsCmNvbmZpZ3VyZTozODI2MzogY2hlY2tpbmcg aG93IHRvIGxpbmsgd2l0aCBsaWJpbnRsCmNvbmZpZ3VyZTozODI2NTogcmVzdWx0OiAtbGludGwK Y29uZmlndXJlOjM4MzI3OiBjaGVja2luZyBmb3Igc2xlZXAgZGVjbGFyYXRpb24KY29uZmlndXJl OjM4MzUwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzgzNjE6IGNoZWNraW5nIGZvciB1c2xlZXAg ZGVjbGFyYXRpb24KY29uZmlndXJlOjM4Mzg0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzgzOTU6 IGNoZWNraW5nIHdoZXRoZXIgc3RycHRpbWUgaXMgZGVjbGFyZWQKY29uZmlndXJlOjM4NDI2OiBn Y2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6Mzg0MzI6ICQ/ID0gMApjb25m aWd1cmU6Mzg0NDc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozODQ2ODogY2hlY2tpbmcgcmV0dXJu IHR5cGUgb2YgdXNsZWVwCmNvbmZpZ3VyZTozODQ5MTogcmVzdWx0OiBpbnQKY29uZmlndXJlOjM4 NTEzOiBjaGVja2luZyBzeXMvdW4uaCB1c2FiaWxpdHkKY29uZmlndXJlOjM4NTMwOiBnY2MgLWMg LWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6Mzg1MzY6ICQ/ID0gMApjb25maWd1cmU6 Mzg1NTA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozODU1NDogY2hlY2tpbmcgc3lzL3VuLmggcHJl c2VuY2UKY29uZmlndXJlOjM4NTY5OiBnY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjM4NTc1 OiAkPyA9IDAKY29uZmlndXJlOjM4NTg5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6Mzg2MjI6IGNo ZWNraW5nIGZvciBzeXMvdW4uaApjb25maWd1cmU6Mzg2Mjk6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy ZTozODY1NTogY2hlY2tpbmcgZm9yIHNvY2tldHBhaXIKY29uZmlndXJlOjM4NzExOiBnY2MgLW8g Y29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxnbXAgLWxjcnlwdCAtbG0gLWxsdGRs ICA+JjUKY29uZmlndXJlOjM4NzE3OiAkPyA9IDAKY29uZmlndXJlOjM4NzM1OiByZXN1bHQ6IHll cwpjb25maWd1cmU6Mzg2NTU6IGNoZWNraW5nIGZvciBnZXRncm91cHMKY29uZmlndXJlOjM4NzEx OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxnbXAgLWxjcnlwdCAt bG0gLWxsdGRsICA+JjUKY29uZmlndXJlOjM4NzE3OiAkPyA9IDAKY29uZmlndXJlOjM4NzM1OiBy ZXN1bHQ6IHllcwpjb25maWd1cmU6Mzg2NTU6IGNoZWNraW5nIGZvciBzZXRncm91cHMKY29uZmln dXJlOjM4NzExOiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxnbXAg LWxjcnlwdCAtbG0gLWxsdGRsICA+JjUKY29uZmlndXJlOjM4NzE3OiAkPyA9IDAKY29uZmlndXJl OjM4NzM1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6Mzg2NTU6IGNoZWNraW5nIGZvciBzZXRwd2Vu dApjb25maWd1cmU6Mzg3MTE6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3Qu YyAtbGdtcCAtbGNyeXB0IC1sbSAtbGx0ZGwgID4mNQpjb25maWd1cmU6Mzg3MTc6ICQ/ID0gMApj b25maWd1cmU6Mzg3MzU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozODY1NTogY2hlY2tpbmcgZm9y IHBhdXNlCmNvbmZpZ3VyZTozODcxMTogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25m dGVzdC5jIC1sZ21wIC1sY3J5cHQgLWxtIC1sbHRkbCAgPiY1CmNvbmZpZ3VyZTozODcxNzogJD8g PSAwCmNvbmZpZ3VyZTozODczNTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM4NjU1OiBjaGVja2lu ZyBmb3IgdHpzZXQKY29uZmlndXJlOjM4NzExOiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAg IGNvbmZ0ZXN0LmMgLWxnbXAgLWxjcnlwdCAtbG0gLWxsdGRsICA+JjUKY29uZmlndXJlOjM4NzE3 OiAkPyA9IDAKY29uZmlndXJlOjM4NzM1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6Mzg3Njk6IGNo ZWNraW5nIGZvciBzZXRob3N0ZW50CmNvbmZpZ3VyZTozODgyNTogZ2NjIC1vIGNvbmZ0ZXN0LmV4 ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1sZ21wIC1sY3J5cHQgLWxtIC1sbHRkbCAgPiY1CmNvbmZp Z3VyZTozODgzMTogJD8gPSAwCmNvbmZpZ3VyZTozODg0OTogcmVzdWx0OiB5ZXMKY29uZmlndXJl OjM4NzY5OiBjaGVja2luZyBmb3IgZ2V0aG9zdGVudApjb25maWd1cmU6Mzg4MjU6IGdjYyAtbyBj b25mdGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3QuYyAtbGdtcCAtbGNyeXB0IC1sbSAtbGx0ZGwg ID4mNQovY3lnZHJpdmUvYy9ET0NVTUV+MS9BYXJvbi9MT0NBTFN+MS9UZW1wL2NjMG9DZmVLLm86 IEluIGZ1bmN0aW9uIGBtYWluJzoKL2hvbWUvQWFyb24vZ3VpbGUtMS44LjQvY29uZnRlc3QuYzoy MDY6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYF9nZXRob3N0ZW50Jwpjb2xsZWN0MjogbGQgcmV0 dXJuZWQgMSBleGl0IHN0YXR1cwpjb25maWd1cmU6Mzg4MzE6ICQ/ID0gMQpjb25maWd1cmU6IGZh aWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAjZGVmaW5lIFBBQ0tBR0Vf TkFNRSAiZ3VpbGUiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImd1aWxlIgp8ICNkZWZpbmUg UEFDS0FHRV9WRVJTSU9OICIxLjguNCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJndWlsZSAx LjguNCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ3VpbGVAZ251Lm9yZyIKfCAj ZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5l IEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZF X1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9T VERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRExGQ05f SCAxCnwgI2RlZmluZSBIQVZFX0xJQkxUREwgMQp8ICNkZWZpbmUgU0NNX1dBUk5fREVQUkVDQVRF RF9ERUZBVUxUICJzdW1tYXJ5Igp8ICNkZWZpbmUgR1VJTEVfVVNFXzY0X0NBTExTIDEKfCAjZGVm aW5lIEhBVkVfUE9TSVggMQp8ICNkZWZpbmUgSEFWRV9ORVRXT1JLSU5HIDEKfCAjZGVmaW5lIFNJ WkVPRl9DSEFSIDEKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9DSEFSIDEKfCAjZGVmaW5lIFNJ WkVPRl9TSE9SVCAyCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfU0hPUlQgMgp8ICNkZWZpbmUg U0laRU9GX0lOVCA0CnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfSU5UIDQKfCAjZGVmaW5lIFNJ WkVPRl9MT05HIDQKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9MT05HIDQKfCAjZGVmaW5lIFNJ WkVPRl9TSVpFX1QgNAp8ICNkZWZpbmUgU0laRU9GX0xPTkdfTE9ORyA4CnwgI2RlZmluZSBTSVpF T0ZfVU5TSUdORURfTE9OR19MT05HIDgKfCAjZGVmaW5lIFNJWkVPRl9fX0lOVDY0IDAKfCAjZGVm aW5lIFNJWkVPRl9VTlNJR05FRF9fX0lOVDY0IDAKfCAjZGVmaW5lIFNJWkVPRl9WT0lEX1AgNAp8 ICNkZWZpbmUgU0laRU9GX0lOVFBUUl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9VSU5UUFRSX1QgNAp8 ICNkZWZpbmUgU0laRU9GX1BUUkRJRkZfVCA0CnwgI2RlZmluZSBTSVpFT0ZfU0laRV9UIDQKfCAj ZGVmaW5lIFNJWkVPRl9PRkZfVCA4CnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5l IEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBTSVpFT0ZfSU5UTUFYX1QgOAp8ICNkZWZpbmUg U1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgVElNRV9X SVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZF X0lPX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19I IDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9QUk9DRVNTX0ggMQp8 ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX1JFR0VYX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfSU9DVExfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRUJfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19USU1FU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfVVRJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1RJTUVfSCAxCnwgI2RlZmlu ZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVfSCAxCnwgI2RlZmluZSBIQVZF X1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfR1JQX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFN RV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0gg MQp8ICNkZWZpbmUgR0VUR1JPVVBTX1QgZ2lkX3QKfCAjZGVmaW5lIFJFVFNJR1RZUEUgdm9pZAp8 ICNkZWZpbmUgSEFWRV9MSUJNIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVEJZTkFNRSAxCnwgI2Rl ZmluZSBIQVZFX0NPTk5FQ1QgMQp8ICNkZWZpbmUgSEFWRV9BU1NFUlRfSCAxCnwgI2RlZmluZSBI QVZFX0NURVJNSUQgMQp8ICNkZWZpbmUgSEFWRV9GVElNRSAxCnwgI2RlZmluZSBIQVZFX0ZUUlVO Q0FURSAxCnwgI2RlZmluZSBIQVZFX0ZDSE9XTiAxCnwgI2RlZmluZSBIQVZFX0dFVENXRCAxCnwg I2RlZmluZSBIQVZFX0dFVEVVSUQgMQp8ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNk ZWZpbmUgSEFWRV9HTVRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX0lPQ1RMIDEKfCAjZGVmaW5lIEhB VkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9NS0RJUiAxCnwgI2RlZmluZSBIQVZFX01LTk9EIDEK fCAjZGVmaW5lIEhBVkVfTklDRSAxCnwgI2RlZmluZSBIQVZFX1BJUEUgMQp8ICNkZWZpbmUgSEFW RV9fUElQRSAxCnwgI2RlZmluZSBIQVZFX1JFQURESVJfUiAxCnwgI2RlZmluZSBIQVZFX1JFQURM SU5LIDEKfCAjZGVmaW5lIEhBVkVfUkVOQU1FIDEKfCAjZGVmaW5lIEhBVkVfUk1ESVIgMQp8ICNk ZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9TRVRFR0lEIDEKfCAjZGVmaW5lIEhB VkVfU0VURVVJRCAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX1NF VFBHSUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRTSUQgMQp8ICNkZWZpbmUgSEFWRV9TSUdBQ1RJT04g MQp8ICNkZWZpbmUgSEFWRV9TSUdJTlRFUlJVUFQgMQp8ICNkZWZpbmUgSEFWRV9TVFJGVElNRSAx CnwgI2RlZmluZSBIQVZFX1NUUlBUSU1FIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2Rl ZmluZSBIQVZFX1NZTkMgMQp8ICNkZWZpbmUgSEFWRV9TWVNDT05GIDEKfCAjZGVmaW5lIEhBVkVf VENHRVRQR1JQIDEKfCAjZGVmaW5lIEhBVkVfVENTRVRQR1JQIDEKfCAjZGVmaW5lIEhBVkVfVElN RVMgMQp8ICNkZWZpbmUgSEFWRV9VTkFNRSAxCnwgI2RlZmluZSBIQVZFX1dBSVRQSUQgMQp8ICNk ZWZpbmUgSEFWRV9TVFJEVVAgMQp8ICNkZWZpbmUgSEFWRV9TWVNURU0gMQp8ICNkZWZpbmUgSEFW RV9VU0xFRVAgMQp8ICNkZWZpbmUgSEFWRV9BVEVYSVQgMQp8ICNkZWZpbmUgSEFWRV9PTl9FWElU IDEKfCAjZGVmaW5lIEhBVkVfQ0hPV04gMQp8ICNkZWZpbmUgSEFWRV9MSU5LIDEKfCAjZGVmaW5l IEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9UVFlOQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VU UFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0tJTEwgMQp8 ICNkZWZpbmUgSEFWRV9HRVRQUElEIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEdSUCAxCnwgI2RlZmlu ZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9H RVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9TVFJDSFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJDTVAg MQp8ICNkZWZpbmUgSEFWRV9JTkRFWCAxCnwgI2RlZmluZSBIQVZFX0JDT1BZIDEKfCAjZGVmaW5l IEhBVkVfTUVNQ1BZIDEKfCAjZGVmaW5lIEhBVkVfUklOREVYIDEKfCAjZGVmaW5lIEhBVkVfVFJV TkNBVEUgMQp8ICNkZWZpbmUgSEFWRV9VTlNFVEVOViAxCnwgI2RlZmluZSBIQVZFX0lTQkxBTksg MQp8ICNkZWZpbmUgSEFWRV9TVFJOQ0FTRUNNUCAxCnwgI2RlZmluZSBIQVZFX0NSWVBUX0ggMQp8 ICNkZWZpbmUgSEFWRV9ORVREQl9IIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9DSFJPT1QgMQp8ICNkZWZp bmUgSEFWRV9GTE9DSyAxCnwgI2RlZmluZSBIQVZFX0dFVExPR0lOIDEKfCAjZGVmaW5lIEhBVkVf Q1VTRVJJRCAxCnwgI2RlZmluZSBIQVZFX0dFVFBSSU9SSVRZIDEKfCAjZGVmaW5lIEhBVkVfU0VU UFJJT1JJVFkgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQVNTIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9T VE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFVEhPU1ROQU1FIDAKfCAjZGVmaW5lIEhBVkVf Q1JZUFQgMQp8ICNkZWZpbmUgSEFWRV9MSUJHTVAgMQp8ICNkZWZpbmUgSEFWRV9JQ09OViAxCnwg I2RlZmluZSBFTkFCTEVfTkxTIDEKfCAjZGVmaW5lIEhBVkVfR0VUVEVYVCAxCnwgI2RlZmluZSBI QVZFX0RDR0VUVEVYVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSUFRJTUUgMQp8ICNkZWZpbmUg SEFWRV9VTklYX0RPTUFJTl9TT0NLRVRTIDEKfCAjZGVmaW5lIEhBVkVfU09DS0VUUEFJUiAxCnwg I2RlZmluZSBIQVZFX0dFVEdST1VQUyAxCnwgI2RlZmluZSBIQVZFX1NFVEdST1VQUyAxCnwgI2Rl ZmluZSBIQVZFX1NFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfUEFVU0UgMQp8ICNkZWZpbmUgSEFW RV9UWlNFVCAxCnwgI2RlZmluZSBIQVZFX1NFVEhPU1RFTlQgMQp8IC8qIGVuZCBjb25mZGVmcy5o LiAgKi8KfCAvKiBEZWZpbmUgZ2V0aG9zdGVudCB0byBhbiBpbm5vY3VvdXMgdmFyaWFudCwgaW4g Y2FzZSA8bGltaXRzLmg+IGRlY2xhcmVzIGdldGhvc3RlbnQuCnwgICAgRm9yIGV4YW1wbGUsIEhQ LVVYIDExaSA8bGltaXRzLmg+IGRlY2xhcmVzIGdldHRpbWVvZmRheS4gICovCnwgI2RlZmluZSBn ZXRob3N0ZW50IGlubm9jdW91c19nZXRob3N0ZW50CnwgCnwgLyogU3lzdGVtIGhlYWRlciB0byBk ZWZpbmUgX19zdHViIG1hY3JvcyBhbmQgaG9wZWZ1bGx5IGZldyBwcm90b3R5cGVzLAp8ICAgICB3 aGljaCBjYW4gY29uZmxpY3Qgd2l0aCBjaGFyIGdldGhvc3RlbnQgKCk7IGJlbG93Lgp8ICAgICBQ cmVmZXIgPGxpbWl0cy5oPiB0byA8YXNzZXJ0Lmg+IGlmIF9fU1REQ19fIGlzIGRlZmluZWQsIHNp bmNlCnwgICAgIDxsaW1pdHMuaD4gZXhpc3RzIGV2ZW4gb24gZnJlZXN0YW5kaW5nIGNvbXBpbGVy cy4gICovCnwgCnwgI2lmZGVmIF9fU1REQ19fCnwgIyBpbmNsdWRlIDxsaW1pdHMuaD4KfCAjZWxz ZQp8ICMgaW5jbHVkZSA8YXNzZXJ0Lmg+CnwgI2VuZGlmCnwgCnwgI3VuZGVmIGdldGhvc3RlbnQK fCAKfCAvKiBPdmVycmlkZSBhbnkgR0NDIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBl cnJvci4KfCAgICBVc2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5 cGUgb2YgYSBHQ0MKfCAgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUg d291bGQgc3RpbGwgYXBwbHkuICAqLwp8ICNpZmRlZiBfX2NwbHVzcGx1cwp8IGV4dGVybiAiQyIK fCAjZW5kaWYKfCBjaGFyIGdldGhvc3RlbnQgKCk7CnwgLyogVGhlIEdOVSBDIGxpYnJhcnkgZGVm aW5lcyB0aGlzIGZvciBmdW5jdGlvbnMgd2hpY2ggaXQgaW1wbGVtZW50cwp8ICAgICB0byBhbHdh eXMgZmFpbCB3aXRoIEVOT1NZUy4gIFNvbWUgZnVuY3Rpb25zIGFyZSBhY3R1YWxseSBuYW1lZAp8 ICAgICBzb21ldGhpbmcgc3RhcnRpbmcgd2l0aCBfXyBhbmQgdGhlIG5vcm1hbCBuYW1lIGlzIGFu IGFsaWFzLiAgKi8KfCAjaWYgZGVmaW5lZCBfX3N0dWJfZ2V0aG9zdGVudCB8fCBkZWZpbmVkIF9f c3R1Yl9fX2dldGhvc3RlbnQKfCBjaG9rZSBtZQp8ICNlbmRpZgp8IAp8IGludAp8IG1haW4gKCkK fCB7CnwgcmV0dXJuIGdldGhvc3RlbnQgKCk7CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZp Z3VyZTozODg0OTogcmVzdWx0OiBubwpjb25maWd1cmU6Mzg3Njk6IGNoZWNraW5nIGZvciBlbmRo b3N0ZW50CmNvbmZpZ3VyZTozODgyNTogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25m dGVzdC5jIC1sZ21wIC1sY3J5cHQgLWxtIC1sbHRkbCAgPiY1CmNvbmZpZ3VyZTozODgzMTogJD8g PSAwCmNvbmZpZ3VyZTozODg0OTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM4NzY5OiBjaGVja2lu ZyBmb3Igc2V0bmV0ZW50CmNvbmZpZ3VyZTozODgyNTogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAt TzIgICBjb25mdGVzdC5jIC1sZ21wIC1sY3J5cHQgLWxtIC1sbHRkbCAgPiY1Ci9jeWdkcml2ZS9j L0RPQ1VNRX4xL0Fhcm9uL0xPQ0FMU34xL1RlbXAvY2NqZ1VKSm8ubzogSW4gZnVuY3Rpb24gYG1h aW4nOgovaG9tZS9BYXJvbi9ndWlsZS0xLjguNC9jb25mdGVzdC5jOjIwNzogdW5kZWZpbmVkIHJl ZmVyZW5jZSB0byBgX3NldG5ldGVudCcKY29sbGVjdDI6IGxkIHJldHVybmVkIDEgZXhpdCBzdGF0 dXMKY29uZmlndXJlOjM4ODMxOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6 CnwgLyogY29uZmRlZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgImd1aWxlIgp8ICNk ZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAi MS44LjQiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiZ3VpbGUgMS44LjQiCnwgI2RlZmluZSBQ QUNLQUdFX0JVR1JFUE9SVCAiYnVnLWd1aWxlQGdudS5vcmciCnwgI2RlZmluZSBTVERDX0hFQURF UlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFU X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEK fCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNk ZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZp bmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgSEFW RV9MSUJMVERMIDEKfCAjZGVmaW5lIFNDTV9XQVJOX0RFUFJFQ0FURURfREVGQVVMVCAic3VtbWFy eSIKfCAjZGVmaW5lIEdVSUxFX1VTRV82NF9DQUxMUyAxCnwgI2RlZmluZSBIQVZFX1BPU0lYIDEK fCAjZGVmaW5lIEhBVkVfTkVUV09SS0lORyAxCnwgI2RlZmluZSBTSVpFT0ZfQ0hBUiAxCnwgI2Rl ZmluZSBTSVpFT0ZfVU5TSUdORURfQ0hBUiAxCnwgI2RlZmluZSBTSVpFT0ZfU0hPUlQgMgp8ICNk ZWZpbmUgU0laRU9GX1VOU0lHTkVEX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9JTlQgNAp8ICNk ZWZpbmUgU0laRU9GX1VOU0lHTkVEX0lOVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA0CnwgI2Rl ZmluZSBTSVpFT0ZfVU5TSUdORURfTE9ORyA0CnwgI2RlZmluZSBTSVpFT0ZfU0laRV9UIDQKfCAj ZGVmaW5lIFNJWkVPRl9MT05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xPTkdf TE9ORyA4CnwgI2RlZmluZSBTSVpFT0ZfX19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdO RURfX19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0ZfVk9JRF9QIDQKfCAjZGVmaW5lIFNJWkVPRl9J TlRQVFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfVUlOVFBUUl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9Q VFJESUZGX1QgNAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfT0ZG X1QgOAp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0gg MQp8ICNkZWZpbmUgU0laRU9GX0lOVE1BWF9UIDgKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwg I2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwg I2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9JT19IIDEKfCAjZGVmaW5l IEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZF X01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfUFJPQ0VTU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RS SU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9SRUdFWF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lPQ1RM X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElN RV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVCX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElN RVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VU SU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAx CnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmlu ZSBIQVZFX0dSUF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBI QVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEdFVEdS T1VQU19UIGdpZF90CnwgI2RlZmluZSBSRVRTSUdUWVBFIHZvaWQKfCAjZGVmaW5lIEhBVkVfTElC TSAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1RCWU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9DT05ORUNU IDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJUX0ggMQp8ICNkZWZpbmUgSEFWRV9DVEVSTUlEIDEKfCAj ZGVmaW5lIEhBVkVfRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9GVFJVTkNBVEUgMQp8ICNkZWZpbmUg SEFWRV9GQ0hPV04gMQp8ICNkZWZpbmUgSEFWRV9HRVRDV0QgMQp8ICNkZWZpbmUgSEFWRV9HRVRF VUlEIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfR01USU1F X1IgMQp8ICNkZWZpbmUgSEFWRV9JT0NUTCAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVm aW5lIEhBVkVfTUtESVIgMQp8ICNkZWZpbmUgSEFWRV9NS05PRCAxCnwgI2RlZmluZSBIQVZFX05J Q0UgMQp8ICNkZWZpbmUgSEFWRV9QSVBFIDEKfCAjZGVmaW5lIEhBVkVfX1BJUEUgMQp8ICNkZWZp bmUgSEFWRV9SRUFERElSX1IgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBI QVZFX1JFTkFNRSAxCnwgI2RlZmluZSBIQVZFX1JNRElSIDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNU IDEKfCAjZGVmaW5lIEhBVkVfU0VURUdJRCAxCnwgI2RlZmluZSBIQVZFX1NFVEVVSUQgMQp8ICNk ZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9TRVRQR0lEIDEKfCAjZGVmaW5l IEhBVkVfU0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVfU0lHQUNUSU9OIDEKfCAjZGVmaW5lIEhBVkVf U0lHSU5URVJSVVBUIDEKfCAjZGVmaW5lIEhBVkVfU1RSRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9T VFJQVElNRSAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9TWU5DIDEK fCAjZGVmaW5lIEhBVkVfU1lTQ09ORiAxCnwgI2RlZmluZSBIQVZFX1RDR0VUUEdSUCAxCnwgI2Rl ZmluZSBIQVZFX1RDU0VUUEdSUCAxCnwgI2RlZmluZSBIQVZFX1RJTUVTIDEKfCAjZGVmaW5lIEhB VkVfVU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9XQUlUUElEIDEKfCAjZGVmaW5lIEhBVkVfU1RSRFVQ IDEKfCAjZGVmaW5lIEhBVkVfU1lTVEVNIDEKfCAjZGVmaW5lIEhBVkVfVVNMRUVQIDEKfCAjZGVm aW5lIEhBVkVfQVRFWElUIDEKfCAjZGVmaW5lIEhBVkVfT05fRVhJVCAxCnwgI2RlZmluZSBIQVZF X0NIT1dOIDEKfCAjZGVmaW5lIEhBVkVfTElOSyAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAj ZGVmaW5lIEhBVkVfVFRZTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5l IEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9LSUxMIDEKfCAjZGVmaW5lIEhBVkVfR0VU UFBJRCAxCnwgI2RlZmluZSBIQVZFX0dFVFBHUlAgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAj ZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSVRJTUVSIDEKfCAjZGVm aW5lIEhBVkVfU1RSQ0hSIDEKfCAjZGVmaW5lIEhBVkVfU1RSQ01QIDEKfCAjZGVmaW5lIEhBVkVf SU5ERVggMQp8ICNkZWZpbmUgSEFWRV9CQ09QWSAxCnwgI2RlZmluZSBIQVZFX01FTUNQWSAxCnwg I2RlZmluZSBIQVZFX1JJTkRFWCAxCnwgI2RlZmluZSBIQVZFX1RSVU5DQVRFIDEKfCAjZGVmaW5l IEhBVkVfVU5TRVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9JU0JMQU5LIDEKfCAjZGVmaW5lIEhBVkVf U1RSTkNBU0VDTVAgMQp8ICNkZWZpbmUgSEFWRV9DUllQVF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVU REJfSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJB TV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf RklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfQ0hST09UIDEKfCAjZGVmaW5lIEhBVkVfRkxPQ0sgMQp8 ICNkZWZpbmUgSEFWRV9HRVRMT0dJTiAxCnwgI2RlZmluZSBIQVZFX0NVU0VSSUQgMQp8ICNkZWZp bmUgSEFWRV9HRVRQUklPUklUWSAxCnwgI2RlZmluZSBIQVZFX1NFVFBSSU9SSVRZIDEKfCAjZGVm aW5lIEhBVkVfR0VUUEFTUyAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9TRVRIT1NUTkFNRSAwCnwgI2RlZmluZSBIQVZFX0NSWVBUIDEKfCAjZGVmaW5l IEhBVkVfTElCR01QIDEKfCAjZGVmaW5lIEhBVkVfSUNPTlYgMQp8ICNkZWZpbmUgRU5BQkxFX05M UyAxCnwgI2RlZmluZSBIQVZFX0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9EQ0dFVFRFWFQgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX1NUUlBUSU1FIDEKfCAjZGVmaW5lIEhBVkVfVU5JWF9ET01BSU5f U09DS0VUUyAxCnwgI2RlZmluZSBIQVZFX1NPQ0tFVFBBSVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRH Uk9VUFMgMQp8ICNkZWZpbmUgSEFWRV9TRVRHUk9VUFMgMQp8ICNkZWZpbmUgSEFWRV9TRVRQV0VO VCAxCnwgI2RlZmluZSBIQVZFX1BBVVNFIDEKfCAjZGVmaW5lIEhBVkVfVFpTRVQgMQp8ICNkZWZp bmUgSEFWRV9TRVRIT1NURU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5ESE9TVEVOVCAxCnwgLyogZW5k IGNvbmZkZWZzLmguICAqLwp8IC8qIERlZmluZSBzZXRuZXRlbnQgdG8gYW4gaW5ub2N1b3VzIHZh cmlhbnQsIGluIGNhc2UgPGxpbWl0cy5oPiBkZWNsYXJlcyBzZXRuZXRlbnQuCnwgICAgRm9yIGV4 YW1wbGUsIEhQLVVYIDExaSA8bGltaXRzLmg+IGRlY2xhcmVzIGdldHRpbWVvZmRheS4gICovCnwg I2RlZmluZSBzZXRuZXRlbnQgaW5ub2N1b3VzX3NldG5ldGVudAp8IAp8IC8qIFN5c3RlbSBoZWFk ZXIgdG8gZGVmaW5lIF9fc3R1YiBtYWNyb3MgYW5kIGhvcGVmdWxseSBmZXcgcHJvdG90eXBlcywK fCAgICAgd2hpY2ggY2FuIGNvbmZsaWN0IHdpdGggY2hhciBzZXRuZXRlbnQgKCk7IGJlbG93Lgp8 ICAgICBQcmVmZXIgPGxpbWl0cy5oPiB0byA8YXNzZXJ0Lmg+IGlmIF9fU1REQ19fIGlzIGRlZmlu ZWQsIHNpbmNlCnwgICAgIDxsaW1pdHMuaD4gZXhpc3RzIGV2ZW4gb24gZnJlZXN0YW5kaW5nIGNv bXBpbGVycy4gICovCnwgCnwgI2lmZGVmIF9fU1REQ19fCnwgIyBpbmNsdWRlIDxsaW1pdHMuaD4K fCAjZWxzZQp8ICMgaW5jbHVkZSA8YXNzZXJ0Lmg+CnwgI2VuZGlmCnwgCnwgI3VuZGVmIHNldG5l dGVudAp8IAp8IC8qIE92ZXJyaWRlIGFueSBHQ0MgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lk IGFuIGVycm9yLgp8ICAgIFVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1 cm4gdHlwZSBvZiBhIEdDQwp8ICAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3Rv dHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCnwgI2lmZGVmIF9fY3BsdXNwbHVzCnwgZXh0ZXJu ICJDIgp8ICNlbmRpZgp8IGNoYXIgc2V0bmV0ZW50ICgpOwp8IC8qIFRoZSBHTlUgQyBsaWJyYXJ5 IGRlZmluZXMgdGhpcyBmb3IgZnVuY3Rpb25zIHdoaWNoIGl0IGltcGxlbWVudHMKfCAgICAgdG8g YWx3YXlzIGZhaWwgd2l0aCBFTk9TWVMuICBTb21lIGZ1bmN0aW9ucyBhcmUgYWN0dWFsbHkgbmFt ZWQKfCAgICAgc29tZXRoaW5nIHN0YXJ0aW5nIHdpdGggX18gYW5kIHRoZSBub3JtYWwgbmFtZSBp cyBhbiBhbGlhcy4gICovCnwgI2lmIGRlZmluZWQgX19zdHViX3NldG5ldGVudCB8fCBkZWZpbmVk IF9fc3R1Yl9fX3NldG5ldGVudAp8IGNob2tlIG1lCnwgI2VuZGlmCnwgCnwgaW50CnwgbWFpbiAo KQp8IHsKfCByZXR1cm4gc2V0bmV0ZW50ICgpOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25m aWd1cmU6Mzg4NDk6IHJlc3VsdDogbm8KY29uZmlndXJlOjM4NzY5OiBjaGVja2luZyBmb3IgZ2V0 bmV0ZW50CmNvbmZpZ3VyZTozODgyNTogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25m dGVzdC5jIC1sZ21wIC1sY3J5cHQgLWxtIC1sbHRkbCAgPiY1Ci9jeWdkcml2ZS9jL0RPQ1VNRX4x L0Fhcm9uL0xPQ0FMU34xL1RlbXAvY2M2OUVKT3MubzogSW4gZnVuY3Rpb24gYG1haW4nOgovaG9t ZS9BYXJvbi9ndWlsZS0xLjguNC9jb25mdGVzdC5jOjIwNzogdW5kZWZpbmVkIHJlZmVyZW5jZSB0 byBgX2dldG5ldGVudCcKY29sbGVjdDI6IGxkIHJldHVybmVkIDEgZXhpdCBzdGF0dXMKY29uZmln dXJlOjM4ODMxOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29u ZmRlZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgImd1aWxlIgp8ICNkZWZpbmUgUEFD S0FHRV9UQVJOQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMS44LjQiCnwg I2RlZmluZSBQQUNLQUdFX1NUUklORyAiZ3VpbGUgMS44LjQiCnwgI2RlZmluZSBQQUNLQUdFX0JV R1JFUE9SVCAiYnVnLWd1aWxlQGdudS5vcmciCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNk ZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5l IEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFW RV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9V TklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgSEFWRV9MSUJMVERM IDEKfCAjZGVmaW5lIFNDTV9XQVJOX0RFUFJFQ0FURURfREVGQVVMVCAic3VtbWFyeSIKfCAjZGVm aW5lIEdVSUxFX1VTRV82NF9DQUxMUyAxCnwgI2RlZmluZSBIQVZFX1BPU0lYIDEKfCAjZGVmaW5l IEhBVkVfTkVUV09SS0lORyAxCnwgI2RlZmluZSBTSVpFT0ZfQ0hBUiAxCnwgI2RlZmluZSBTSVpF T0ZfVU5TSUdORURfQ0hBUiAxCnwgI2RlZmluZSBTSVpFT0ZfU0hPUlQgMgp8ICNkZWZpbmUgU0la RU9GX1VOU0lHTkVEX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9JTlQgNAp8ICNkZWZpbmUgU0la RU9GX1VOU0lHTkVEX0lOVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA0CnwgI2RlZmluZSBTSVpF T0ZfVU5TSUdORURfTE9ORyA0CnwgI2RlZmluZSBTSVpFT0ZfU0laRV9UIDQKfCAjZGVmaW5lIFNJ WkVPRl9MT05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xPTkdfTE9ORyA4Cnwg I2RlZmluZSBTSVpFT0ZfX19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfX19JTlQ2 NCAwCnwgI2RlZmluZSBTSVpFT0ZfVk9JRF9QIDQKfCAjZGVmaW5lIFNJWkVPRl9JTlRQVFJfVCA0 CnwgI2RlZmluZSBTSVpFT0ZfVUlOVFBUUl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9QVFJESUZGX1Qg NAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfT0ZGX1QgOAp8ICNk ZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZp bmUgU0laRU9GX0lOVE1BWF9UIDgKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBI QVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwgI2RlZmluZSBI QVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9JT19IIDEKfCAjZGVmaW5lIEhBVkVfTElN SVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9I IDEKfCAjZGVmaW5lIEhBVkVfUFJPQ0VTU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8 ICNkZWZpbmUgSEFWRV9SRUdFWF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lPQ1RMX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1RJTUVCX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRVNfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUSU1FX0ggMQp8 ICNkZWZpbmUgSEFWRV9USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmlu ZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX0dS UF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklO R1NfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEdFVEdST1VQU19UIGdp ZF90CnwgI2RlZmluZSBSRVRTSUdUWVBFIHZvaWQKfCAjZGVmaW5lIEhBVkVfTElCTSAxCnwgI2Rl ZmluZSBIQVZFX0dFVEhPU1RCWU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9DT05ORUNUIDEKfCAjZGVm aW5lIEhBVkVfQVNTRVJUX0ggMQp8ICNkZWZpbmUgSEFWRV9DVEVSTUlEIDEKfCAjZGVmaW5lIEhB VkVfRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9GVFJVTkNBVEUgMQp8ICNkZWZpbmUgSEFWRV9GQ0hP V04gMQp8ICNkZWZpbmUgSEFWRV9HRVRDV0QgMQp8ICNkZWZpbmUgSEFWRV9HRVRFVUlEIDEKfCAj ZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfR01USU1FX1IgMQp8ICNk ZWZpbmUgSEFWRV9JT0NUTCAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVf TUtESVIgMQp8ICNkZWZpbmUgSEFWRV9NS05PRCAxCnwgI2RlZmluZSBIQVZFX05JQ0UgMQp8ICNk ZWZpbmUgSEFWRV9QSVBFIDEKfCAjZGVmaW5lIEhBVkVfX1BJUEUgMQp8ICNkZWZpbmUgSEFWRV9S RUFERElSX1IgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX1JFTkFN RSAxCnwgI2RlZmluZSBIQVZFX1JNRElSIDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVm aW5lIEhBVkVfU0VURUdJRCAxCnwgI2RlZmluZSBIQVZFX1NFVEVVSUQgMQp8ICNkZWZpbmUgSEFW RV9TRVRMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9TRVRQR0lEIDEKfCAjZGVmaW5lIEhBVkVfU0VU U0lEIDEKfCAjZGVmaW5lIEhBVkVfU0lHQUNUSU9OIDEKfCAjZGVmaW5lIEhBVkVfU0lHSU5URVJS VVBUIDEKfCAjZGVmaW5lIEhBVkVfU1RSRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9TVFJQVElNRSAx CnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5l IEhBVkVfU1lTQ09ORiAxCnwgI2RlZmluZSBIQVZFX1RDR0VUUEdSUCAxCnwgI2RlZmluZSBIQVZF X1RDU0VUUEdSUCAxCnwgI2RlZmluZSBIQVZFX1RJTUVTIDEKfCAjZGVmaW5lIEhBVkVfVU5BTUUg MQp8ICNkZWZpbmUgSEFWRV9XQUlUUElEIDEKfCAjZGVmaW5lIEhBVkVfU1RSRFVQIDEKfCAjZGVm aW5lIEhBVkVfU1lTVEVNIDEKfCAjZGVmaW5lIEhBVkVfVVNMRUVQIDEKfCAjZGVmaW5lIEhBVkVf QVRFWElUIDEKfCAjZGVmaW5lIEhBVkVfT05fRVhJVCAxCnwgI2RlZmluZSBIQVZFX0NIT1dOIDEK fCAjZGVmaW5lIEhBVkVfTElOSyAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhB VkVfVFRZTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VU R1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9LSUxMIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFBJRCAxCnwg I2RlZmluZSBIQVZFX0dFVFBHUlAgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhB VkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVf U1RSQ0hSIDEKfCAjZGVmaW5lIEhBVkVfU1RSQ01QIDEKfCAjZGVmaW5lIEhBVkVfSU5ERVggMQp8 ICNkZWZpbmUgSEFWRV9CQ09QWSAxCnwgI2RlZmluZSBIQVZFX01FTUNQWSAxCnwgI2RlZmluZSBI QVZFX1JJTkRFWCAxCnwgI2RlZmluZSBIQVZFX1RSVU5DQVRFIDEKfCAjZGVmaW5lIEhBVkVfVU5T RVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9JU0JMQU5LIDEKfCAjZGVmaW5lIEhBVkVfU1RSTkNBU0VD TVAgMQp8ICNkZWZpbmUgSEFWRV9DUllQVF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUREJfSCAxCnwg I2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEK fCAjZGVmaW5lIEhBVkVfQ0hST09UIDEKfCAjZGVmaW5lIEhBVkVfRkxPQ0sgMQp8ICNkZWZpbmUg SEFWRV9HRVRMT0dJTiAxCnwgI2RlZmluZSBIQVZFX0NVU0VSSUQgMQp8ICNkZWZpbmUgSEFWRV9H RVRQUklPUklUWSAxCnwgI2RlZmluZSBIQVZFX1NFVFBSSU9SSVRZIDEKfCAjZGVmaW5lIEhBVkVf R0VUUEFTUyAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9TRVRIT1NUTkFNRSAwCnwgI2RlZmluZSBIQVZFX0NSWVBUIDEKfCAjZGVmaW5lIEhBVkVfTElC R01QIDEKfCAjZGVmaW5lIEhBVkVfSUNPTlYgMQp8ICNkZWZpbmUgRU5BQkxFX05MUyAxCnwgI2Rl ZmluZSBIQVZFX0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9EQ0dFVFRFWFQgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX1NUUlBUSU1FIDEKfCAjZGVmaW5lIEhBVkVfVU5JWF9ET01BSU5fU09DS0VUUyAx CnwgI2RlZmluZSBIQVZFX1NPQ0tFVFBBSVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUk9VUFMgMQp8 ICNkZWZpbmUgSEFWRV9TRVRHUk9VUFMgMQp8ICNkZWZpbmUgSEFWRV9TRVRQV0VOVCAxCnwgI2Rl ZmluZSBIQVZFX1BBVVNFIDEKfCAjZGVmaW5lIEhBVkVfVFpTRVQgMQp8ICNkZWZpbmUgSEFWRV9T RVRIT1NURU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5ESE9TVEVOVCAxCnwgLyogZW5kIGNvbmZkZWZz LmguICAqLwp8IC8qIERlZmluZSBnZXRuZXRlbnQgdG8gYW4gaW5ub2N1b3VzIHZhcmlhbnQsIGlu IGNhc2UgPGxpbWl0cy5oPiBkZWNsYXJlcyBnZXRuZXRlbnQuCnwgICAgRm9yIGV4YW1wbGUsIEhQ LVVYIDExaSA8bGltaXRzLmg+IGRlY2xhcmVzIGdldHRpbWVvZmRheS4gICovCnwgI2RlZmluZSBn ZXRuZXRlbnQgaW5ub2N1b3VzX2dldG5ldGVudAp8IAp8IC8qIFN5c3RlbSBoZWFkZXIgdG8gZGVm aW5lIF9fc3R1YiBtYWNyb3MgYW5kIGhvcGVmdWxseSBmZXcgcHJvdG90eXBlcywKfCAgICAgd2hp Y2ggY2FuIGNvbmZsaWN0IHdpdGggY2hhciBnZXRuZXRlbnQgKCk7IGJlbG93Lgp8ICAgICBQcmVm ZXIgPGxpbWl0cy5oPiB0byA8YXNzZXJ0Lmg+IGlmIF9fU1REQ19fIGlzIGRlZmluZWQsIHNpbmNl CnwgICAgIDxsaW1pdHMuaD4gZXhpc3RzIGV2ZW4gb24gZnJlZXN0YW5kaW5nIGNvbXBpbGVycy4g ICovCnwgCnwgI2lmZGVmIF9fU1REQ19fCnwgIyBpbmNsdWRlIDxsaW1pdHMuaD4KfCAjZWxzZQp8 ICMgaW5jbHVkZSA8YXNzZXJ0Lmg+CnwgI2VuZGlmCnwgCnwgI3VuZGVmIGdldG5ldGVudAp8IAp8 IC8qIE92ZXJyaWRlIGFueSBHQ0MgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9y Lgp8ICAgIFVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBv ZiBhIEdDQwp8ICAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3Vs ZCBzdGlsbCBhcHBseS4gICovCnwgI2lmZGVmIF9fY3BsdXNwbHVzCnwgZXh0ZXJuICJDIgp8ICNl bmRpZgp8IGNoYXIgZ2V0bmV0ZW50ICgpOwp8IC8qIFRoZSBHTlUgQyBsaWJyYXJ5IGRlZmluZXMg dGhpcyBmb3IgZnVuY3Rpb25zIHdoaWNoIGl0IGltcGxlbWVudHMKfCAgICAgdG8gYWx3YXlzIGZh aWwgd2l0aCBFTk9TWVMuICBTb21lIGZ1bmN0aW9ucyBhcmUgYWN0dWFsbHkgbmFtZWQKfCAgICAg c29tZXRoaW5nIHN0YXJ0aW5nIHdpdGggX18gYW5kIHRoZSBub3JtYWwgbmFtZSBpcyBhbiBhbGlh cy4gICovCnwgI2lmIGRlZmluZWQgX19zdHViX2dldG5ldGVudCB8fCBkZWZpbmVkIF9fc3R1Yl9f X2dldG5ldGVudAp8IGNob2tlIG1lCnwgI2VuZGlmCnwgCnwgaW50CnwgbWFpbiAoKQp8IHsKfCBy ZXR1cm4gZ2V0bmV0ZW50ICgpOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6Mzg4 NDk6IHJlc3VsdDogbm8KY29uZmlndXJlOjM4NzY5OiBjaGVja2luZyBmb3IgZW5kbmV0ZW50CmNv bmZpZ3VyZTozODgyNTogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1s Z21wIC1sY3J5cHQgLWxtIC1sbHRkbCAgPiY1Ci9jeWdkcml2ZS9jL0RPQ1VNRX4xL0Fhcm9uL0xP Q0FMU34xL1RlbXAvY2N3QzNpOEsubzogSW4gZnVuY3Rpb24gYG1haW4nOgovaG9tZS9BYXJvbi9n dWlsZS0xLjguNC9jb25mdGVzdC5jOjIwNzogdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgX2VuZG5l dGVudCcKY29sbGVjdDI6IGxkIHJldHVybmVkIDEgZXhpdCBzdGF0dXMKY29uZmlndXJlOjM4ODMx OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4g ICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgImd1aWxlIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJO QU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMS44LjQiCnwgI2RlZmluZSBQ QUNLQUdFX1NUUklORyAiZ3VpbGUgMS44LjQiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAi YnVnLWd1aWxlQGdudS5vcmciCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFW RV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFW RV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVN T1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBF U19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAx CnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgSEFWRV9MSUJMVERMIDEKfCAjZGVm aW5lIFNDTV9XQVJOX0RFUFJFQ0FURURfREVGQVVMVCAic3VtbWFyeSIKfCAjZGVmaW5lIEdVSUxF X1VTRV82NF9DQUxMUyAxCnwgI2RlZmluZSBIQVZFX1BPU0lYIDEKfCAjZGVmaW5lIEhBVkVfTkVU V09SS0lORyAxCnwgI2RlZmluZSBTSVpFT0ZfQ0hBUiAxCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdO RURfQ0hBUiAxCnwgI2RlZmluZSBTSVpFT0ZfU0hPUlQgMgp8ICNkZWZpbmUgU0laRU9GX1VOU0lH TkVEX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9JTlQgNAp8ICNkZWZpbmUgU0laRU9GX1VOU0lH TkVEX0lOVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA0CnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdO RURfTE9ORyA0CnwgI2RlZmluZSBTSVpFT0ZfU0laRV9UIDQKfCAjZGVmaW5lIFNJWkVPRl9MT05H X0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xPTkdfTE9ORyA4CnwgI2RlZmluZSBT SVpFT0ZfX19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfX19JTlQ2NCAwCnwgI2Rl ZmluZSBTSVpFT0ZfVk9JRF9QIDQKfCAjZGVmaW5lIFNJWkVPRl9JTlRQVFJfVCA0CnwgI2RlZmlu ZSBTSVpFT0ZfVUlOVFBUUl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9QVFJESUZGX1QgNAp8ICNkZWZp bmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfT0ZGX1QgOAp8ICNkZWZpbmUgSEFW RV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgU0laRU9G X0lOVE1BWF9UIDgKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX0RJUkVO VF9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwgI2RlZmluZSBIQVZFX1NZU19X QUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9JT19IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8 ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVm aW5lIEhBVkVfUFJPQ0VTU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUg SEFWRV9SRUdFWF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lPQ1RMX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1RJTUVCX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRVNfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUSU1FX0ggMQp8ICNkZWZpbmUg SEFWRV9USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1VU SU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX0dSUF9IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwg I2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEdFVEdST1VQU19UIGdpZF90CnwgI2Rl ZmluZSBSRVRTSUdUWVBFIHZvaWQKfCAjZGVmaW5lIEhBVkVfTElCTSAxCnwgI2RlZmluZSBIQVZF X0dFVEhPU1RCWU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9DT05ORUNUIDEKfCAjZGVmaW5lIEhBVkVf QVNTRVJUX0ggMQp8ICNkZWZpbmUgSEFWRV9DVEVSTUlEIDEKfCAjZGVmaW5lIEhBVkVfRlRJTUUg MQp8ICNkZWZpbmUgSEFWRV9GVFJVTkNBVEUgMQp8ICNkZWZpbmUgSEFWRV9GQ0hPV04gMQp8ICNk ZWZpbmUgSEFWRV9HRVRDV0QgMQp8ICNkZWZpbmUgSEFWRV9HRVRFVUlEIDEKfCAjZGVmaW5lIEhB VkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfR01USU1FX1IgMQp8ICNkZWZpbmUgSEFW RV9JT0NUTCAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfTUtESVIgMQp8 ICNkZWZpbmUgSEFWRV9NS05PRCAxCnwgI2RlZmluZSBIQVZFX05JQ0UgMQp8ICNkZWZpbmUgSEFW RV9QSVBFIDEKfCAjZGVmaW5lIEhBVkVfX1BJUEUgMQp8ICNkZWZpbmUgSEFWRV9SRUFERElSX1Ig MQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX1JFTkFNRSAxCnwgI2Rl ZmluZSBIQVZFX1JNRElSIDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVf U0VURUdJRCAxCnwgI2RlZmluZSBIQVZFX1NFVEVVSUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRMT0NB TEUgMQp8ICNkZWZpbmUgSEFWRV9TRVRQR0lEIDEKfCAjZGVmaW5lIEhBVkVfU0VUU0lEIDEKfCAj ZGVmaW5lIEhBVkVfU0lHQUNUSU9OIDEKfCAjZGVmaW5lIEhBVkVfU0lHSU5URVJSVVBUIDEKfCAj ZGVmaW5lIEhBVkVfU1RSRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9TVFJQVElNRSAxCnwgI2RlZmlu ZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVfU1lT Q09ORiAxCnwgI2RlZmluZSBIQVZFX1RDR0VUUEdSUCAxCnwgI2RlZmluZSBIQVZFX1RDU0VUUEdS UCAxCnwgI2RlZmluZSBIQVZFX1RJTUVTIDEKfCAjZGVmaW5lIEhBVkVfVU5BTUUgMQp8ICNkZWZp bmUgSEFWRV9XQUlUUElEIDEKfCAjZGVmaW5lIEhBVkVfU1RSRFVQIDEKfCAjZGVmaW5lIEhBVkVf U1lTVEVNIDEKfCAjZGVmaW5lIEhBVkVfVVNMRUVQIDEKfCAjZGVmaW5lIEhBVkVfQVRFWElUIDEK fCAjZGVmaW5lIEhBVkVfT05fRVhJVCAxCnwgI2RlZmluZSBIQVZFX0NIT1dOIDEKfCAjZGVmaW5l IEhBVkVfTElOSyAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfVFRZTkFN RSAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8 ICNkZWZpbmUgSEFWRV9LSUxMIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFBJRCAxCnwgI2RlZmluZSBI QVZFX0dFVFBHUlAgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJ TUVSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfU1RSQ0hSIDEK fCAjZGVmaW5lIEhBVkVfU1RSQ01QIDEKfCAjZGVmaW5lIEhBVkVfSU5ERVggMQp8ICNkZWZpbmUg SEFWRV9CQ09QWSAxCnwgI2RlZmluZSBIQVZFX01FTUNQWSAxCnwgI2RlZmluZSBIQVZFX1JJTkRF WCAxCnwgI2RlZmluZSBIQVZFX1RSVU5DQVRFIDEKfCAjZGVmaW5lIEhBVkVfVU5TRVRFTlYgMQp8 ICNkZWZpbmUgSEFWRV9JU0JMQU5LIDEKfCAjZGVmaW5lIEhBVkVfU1RSTkNBU0VDTVAgMQp8ICNk ZWZpbmUgSEFWRV9DUllQVF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUREJfSCAxCnwgI2RlZmluZSBI QVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5l IEhBVkVfQ0hST09UIDEKfCAjZGVmaW5lIEhBVkVfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9HRVRM T0dJTiAxCnwgI2RlZmluZSBIQVZFX0NVU0VSSUQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQUklPUklU WSAxCnwgI2RlZmluZSBIQVZFX1NFVFBSSU9SSVRZIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFTUyAx CnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRVRIT1NU TkFNRSAwCnwgI2RlZmluZSBIQVZFX0NSWVBUIDEKfCAjZGVmaW5lIEhBVkVfTElCR01QIDEKfCAj ZGVmaW5lIEhBVkVfSUNPTlYgMQp8ICNkZWZpbmUgRU5BQkxFX05MUyAxCnwgI2RlZmluZSBIQVZF X0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9EQ0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X1NUUlBUSU1FIDEKfCAjZGVmaW5lIEhBVkVfVU5JWF9ET01BSU5fU09DS0VUUyAxCnwgI2RlZmlu ZSBIQVZFX1NPQ0tFVFBBSVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUk9VUFMgMQp8ICNkZWZpbmUg SEFWRV9TRVRHUk9VUFMgMQp8ICNkZWZpbmUgSEFWRV9TRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZF X1BBVVNFIDEKfCAjZGVmaW5lIEhBVkVfVFpTRVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRIT1NURU5U IDEKfCAjZGVmaW5lIEhBVkVfRU5ESE9TVEVOVCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8 IC8qIERlZmluZSBlbmRuZXRlbnQgdG8gYW4gaW5ub2N1b3VzIHZhcmlhbnQsIGluIGNhc2UgPGxp bWl0cy5oPiBkZWNsYXJlcyBlbmRuZXRlbnQuCnwgICAgRm9yIGV4YW1wbGUsIEhQLVVYIDExaSA8 bGltaXRzLmg+IGRlY2xhcmVzIGdldHRpbWVvZmRheS4gICovCnwgI2RlZmluZSBlbmRuZXRlbnQg aW5ub2N1b3VzX2VuZG5ldGVudAp8IAp8IC8qIFN5c3RlbSBoZWFkZXIgdG8gZGVmaW5lIF9fc3R1 YiBtYWNyb3MgYW5kIGhvcGVmdWxseSBmZXcgcHJvdG90eXBlcywKfCAgICAgd2hpY2ggY2FuIGNv bmZsaWN0IHdpdGggY2hhciBlbmRuZXRlbnQgKCk7IGJlbG93Lgp8ICAgICBQcmVmZXIgPGxpbWl0 cy5oPiB0byA8YXNzZXJ0Lmg+IGlmIF9fU1REQ19fIGlzIGRlZmluZWQsIHNpbmNlCnwgICAgIDxs aW1pdHMuaD4gZXhpc3RzIGV2ZW4gb24gZnJlZXN0YW5kaW5nIGNvbXBpbGVycy4gICovCnwgCnwg I2lmZGVmIF9fU1REQ19fCnwgIyBpbmNsdWRlIDxsaW1pdHMuaD4KfCAjZWxzZQp8ICMgaW5jbHVk ZSA8YXNzZXJ0Lmg+CnwgI2VuZGlmCnwgCnwgI3VuZGVmIGVuZG5ldGVudAp8IAp8IC8qIE92ZXJy aWRlIGFueSBHQ0MgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLgp8ICAgIFVz ZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIEdDQwp8 ICAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBh cHBseS4gICovCnwgI2lmZGVmIF9fY3BsdXNwbHVzCnwgZXh0ZXJuICJDIgp8ICNlbmRpZgp8IGNo YXIgZW5kbmV0ZW50ICgpOwp8IC8qIFRoZSBHTlUgQyBsaWJyYXJ5IGRlZmluZXMgdGhpcyBmb3Ig ZnVuY3Rpb25zIHdoaWNoIGl0IGltcGxlbWVudHMKfCAgICAgdG8gYWx3YXlzIGZhaWwgd2l0aCBF Tk9TWVMuICBTb21lIGZ1bmN0aW9ucyBhcmUgYWN0dWFsbHkgbmFtZWQKfCAgICAgc29tZXRoaW5n IHN0YXJ0aW5nIHdpdGggX18gYW5kIHRoZSBub3JtYWwgbmFtZSBpcyBhbiBhbGlhcy4gICovCnwg I2lmIGRlZmluZWQgX19zdHViX2VuZG5ldGVudCB8fCBkZWZpbmVkIF9fc3R1Yl9fX2VuZG5ldGVu dAp8IGNob2tlIG1lCnwgI2VuZGlmCnwgCnwgaW50CnwgbWFpbiAoKQp8IHsKfCByZXR1cm4gZW5k bmV0ZW50ICgpOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6Mzg4NDk6IHJlc3Vs dDogbm8KY29uZmlndXJlOjM4NzY5OiBjaGVja2luZyBmb3Igc2V0cHJvdG9lbnQKY29uZmlndXJl OjM4ODI1OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxnbXAgLWxj cnlwdCAtbG0gLWxsdGRsICA+JjUKY29uZmlndXJlOjM4ODMxOiAkPyA9IDAKY29uZmlndXJlOjM4 ODQ5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6Mzg3Njk6IGNoZWNraW5nIGZvciBnZXRwcm90b2Vu dApjb25maWd1cmU6Mzg4MjU6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3Qu YyAtbGdtcCAtbGNyeXB0IC1sbSAtbGx0ZGwgID4mNQpjb25maWd1cmU6Mzg4MzE6ICQ/ID0gMApj b25maWd1cmU6Mzg4NDk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozODc2OTogY2hlY2tpbmcgZm9y IGVuZHByb3RvZW50CmNvbmZpZ3VyZTozODgyNTogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIg ICBjb25mdGVzdC5jIC1sZ21wIC1sY3J5cHQgLWxtIC1sbHRkbCAgPiY1CmNvbmZpZ3VyZTozODgz MTogJD8gPSAwCmNvbmZpZ3VyZTozODg0OTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM4NzY5OiBj aGVja2luZyBmb3Igc2V0c2VydmVudApjb25maWd1cmU6Mzg4MjU6IGdjYyAtbyBjb25mdGVzdC5l eGUgLWcgLU8yICAgY29uZnRlc3QuYyAtbGdtcCAtbGNyeXB0IC1sbSAtbGx0ZGwgID4mNQpjb25m aWd1cmU6Mzg4MzE6ICQ/ID0gMApjb25maWd1cmU6Mzg4NDk6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy ZTozODc2OTogY2hlY2tpbmcgZm9yIGdldHNlcnZlbnQKY29uZmlndXJlOjM4ODI1OiBnY2MgLW8g Y29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxnbXAgLWxjcnlwdCAtbG0gLWxsdGRs ICA+JjUKY29uZmlndXJlOjM4ODMxOiAkPyA9IDAKY29uZmlndXJlOjM4ODQ5OiByZXN1bHQ6IHll cwpjb25maWd1cmU6Mzg3Njk6IGNoZWNraW5nIGZvciBlbmRzZXJ2ZW50CmNvbmZpZ3VyZTozODgy NTogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1sZ21wIC1sY3J5cHQg LWxtIC1sbHRkbCAgPiY1CmNvbmZpZ3VyZTozODgzMTogJD8gPSAwCmNvbmZpZ3VyZTozODg0OTog cmVzdWx0OiB5ZXMKY29uZmlndXJlOjM4NzY5OiBjaGVja2luZyBmb3IgZ2V0bmV0YnlhZGRyCmNv bmZpZ3VyZTozODgyNTogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1s Z21wIC1sY3J5cHQgLWxtIC1sbHRkbCAgPiY1Ci9jeWdkcml2ZS9jL0RPQ1VNRX4xL0Fhcm9uL0xP Q0FMU34xL1RlbXAvY2NxY1ljVjAubzogSW4gZnVuY3Rpb24gYG1haW4nOgovaG9tZS9BYXJvbi9n dWlsZS0xLjguNC9jb25mdGVzdC5jOjIxMzogdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgX2dldG5l dGJ5YWRkcicKY29sbGVjdDI6IGxkIHJldHVybmVkIDEgZXhpdCBzdGF0dXMKY29uZmlndXJlOjM4 ODMxOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMu aC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgImd1aWxlIgp8ICNkZWZpbmUgUEFDS0FHRV9U QVJOQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMS44LjQiCnwgI2RlZmlu ZSBQQUNLQUdFX1NUUklORyAiZ3VpbGUgMS44LjQiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9S VCAiYnVnLWd1aWxlQGdudS5vcmciCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUg SEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUg SEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVf TUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRU WVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERf SCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgSEFWRV9MSUJMVERMIDEKfCAj ZGVmaW5lIFNDTV9XQVJOX0RFUFJFQ0FURURfREVGQVVMVCAic3VtbWFyeSIKfCAjZGVmaW5lIEdV SUxFX1VTRV82NF9DQUxMUyAxCnwgI2RlZmluZSBIQVZFX1BPU0lYIDEKfCAjZGVmaW5lIEhBVkVf TkVUV09SS0lORyAxCnwgI2RlZmluZSBTSVpFT0ZfQ0hBUiAxCnwgI2RlZmluZSBTSVpFT0ZfVU5T SUdORURfQ0hBUiAxCnwgI2RlZmluZSBTSVpFT0ZfU0hPUlQgMgp8ICNkZWZpbmUgU0laRU9GX1VO U0lHTkVEX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9JTlQgNAp8ICNkZWZpbmUgU0laRU9GX1VO U0lHTkVEX0lOVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA0CnwgI2RlZmluZSBTSVpFT0ZfVU5T SUdORURfTE9ORyA0CnwgI2RlZmluZSBTSVpFT0ZfU0laRV9UIDQKfCAjZGVmaW5lIFNJWkVPRl9M T05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xPTkdfTE9ORyA4CnwgI2RlZmlu ZSBTSVpFT0ZfX19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfX19JTlQ2NCAwCnwg I2RlZmluZSBTSVpFT0ZfVk9JRF9QIDQKfCAjZGVmaW5lIFNJWkVPRl9JTlRQVFJfVCA0CnwgI2Rl ZmluZSBTSVpFT0ZfVUlOVFBUUl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9QVFJESUZGX1QgNAp8ICNk ZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfT0ZGX1QgOAp8ICNkZWZpbmUg SEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgU0la RU9GX0lOVE1BWF9UIDgKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX0RJ UkVOVF9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwgI2RlZmluZSBIQVZFX1NZ U19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9JT19IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0gg MQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAj ZGVmaW5lIEhBVkVfUFJPQ0VTU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZp bmUgSEFWRV9SRUdFWF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lPQ1RMX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1RJTUVCX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRVNfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUSU1FX0ggMQp8ICNkZWZp bmUgSEFWRV9USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZF X1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX0dSUF9IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAx CnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEdFVEdST1VQU19UIGdpZF90Cnwg I2RlZmluZSBSRVRTSUdUWVBFIHZvaWQKfCAjZGVmaW5lIEhBVkVfTElCTSAxCnwgI2RlZmluZSBI QVZFX0dFVEhPU1RCWU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9DT05ORUNUIDEKfCAjZGVmaW5lIEhB VkVfQVNTRVJUX0ggMQp8ICNkZWZpbmUgSEFWRV9DVEVSTUlEIDEKfCAjZGVmaW5lIEhBVkVfRlRJ TUUgMQp8ICNkZWZpbmUgSEFWRV9GVFJVTkNBVEUgMQp8ICNkZWZpbmUgSEFWRV9GQ0hPV04gMQp8 ICNkZWZpbmUgSEFWRV9HRVRDV0QgMQp8ICNkZWZpbmUgSEFWRV9HRVRFVUlEIDEKfCAjZGVmaW5l IEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfR01USU1FX1IgMQp8ICNkZWZpbmUg SEFWRV9JT0NUTCAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfTUtESVIg MQp8ICNkZWZpbmUgSEFWRV9NS05PRCAxCnwgI2RlZmluZSBIQVZFX05JQ0UgMQp8ICNkZWZpbmUg SEFWRV9QSVBFIDEKfCAjZGVmaW5lIEhBVkVfX1BJUEUgMQp8ICNkZWZpbmUgSEFWRV9SRUFERElS X1IgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX1JFTkFNRSAxCnwg I2RlZmluZSBIQVZFX1JNRElSIDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhB VkVfU0VURUdJRCAxCnwgI2RlZmluZSBIQVZFX1NFVEVVSUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRM T0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9TRVRQR0lEIDEKfCAjZGVmaW5lIEhBVkVfU0VUU0lEIDEK fCAjZGVmaW5lIEhBVkVfU0lHQUNUSU9OIDEKfCAjZGVmaW5lIEhBVkVfU0lHSU5URVJSVVBUIDEK fCAjZGVmaW5lIEhBVkVfU1RSRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9TVFJQVElNRSAxCnwgI2Rl ZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVf U1lTQ09ORiAxCnwgI2RlZmluZSBIQVZFX1RDR0VUUEdSUCAxCnwgI2RlZmluZSBIQVZFX1RDU0VU UEdSUCAxCnwgI2RlZmluZSBIQVZFX1RJTUVTIDEKfCAjZGVmaW5lIEhBVkVfVU5BTUUgMQp8ICNk ZWZpbmUgSEFWRV9XQUlUUElEIDEKfCAjZGVmaW5lIEhBVkVfU1RSRFVQIDEKfCAjZGVmaW5lIEhB VkVfU1lTVEVNIDEKfCAjZGVmaW5lIEhBVkVfVVNMRUVQIDEKfCAjZGVmaW5lIEhBVkVfQVRFWElU IDEKfCAjZGVmaW5lIEhBVkVfT05fRVhJVCAxCnwgI2RlZmluZSBIQVZFX0NIT1dOIDEKfCAjZGVm aW5lIEhBVkVfTElOSyAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfVFRZ TkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQg MQp8ICNkZWZpbmUgSEFWRV9LSUxMIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFBJRCAxCnwgI2RlZmlu ZSBIQVZFX0dFVFBHUlAgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfU0VU SVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfU1RSQ0hS IDEKfCAjZGVmaW5lIEhBVkVfU1RSQ01QIDEKfCAjZGVmaW5lIEhBVkVfSU5ERVggMQp8ICNkZWZp bmUgSEFWRV9CQ09QWSAxCnwgI2RlZmluZSBIQVZFX01FTUNQWSAxCnwgI2RlZmluZSBIQVZFX1JJ TkRFWCAxCnwgI2RlZmluZSBIQVZFX1RSVU5DQVRFIDEKfCAjZGVmaW5lIEhBVkVfVU5TRVRFTlYg MQp8ICNkZWZpbmUgSEFWRV9JU0JMQU5LIDEKfCAjZGVmaW5lIEhBVkVfU1RSTkNBU0VDTVAgMQp8 ICNkZWZpbmUgSEFWRV9DUllQVF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUREJfSCAxCnwgI2RlZmlu ZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVm aW5lIEhBVkVfQ0hST09UIDEKfCAjZGVmaW5lIEhBVkVfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9H RVRMT0dJTiAxCnwgI2RlZmluZSBIQVZFX0NVU0VSSUQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQUklP UklUWSAxCnwgI2RlZmluZSBIQVZFX1NFVFBSSU9SSVRZIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFT UyAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRVRI T1NUTkFNRSAwCnwgI2RlZmluZSBIQVZFX0NSWVBUIDEKfCAjZGVmaW5lIEhBVkVfTElCR01QIDEK fCAjZGVmaW5lIEhBVkVfSUNPTlYgMQp8ICNkZWZpbmUgRU5BQkxFX05MUyAxCnwgI2RlZmluZSBI QVZFX0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9EQ0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9E RUNMX1NUUlBUSU1FIDEKfCAjZGVmaW5lIEhBVkVfVU5JWF9ET01BSU5fU09DS0VUUyAxCnwgI2Rl ZmluZSBIQVZFX1NPQ0tFVFBBSVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUk9VUFMgMQp8ICNkZWZp bmUgSEFWRV9TRVRHUk9VUFMgMQp8ICNkZWZpbmUgSEFWRV9TRVRQV0VOVCAxCnwgI2RlZmluZSBI QVZFX1BBVVNFIDEKfCAjZGVmaW5lIEhBVkVfVFpTRVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRIT1NU RU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5ESE9TVEVOVCAxCnwgI2RlZmluZSBIQVZFX1NFVFBST1RP RU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFJPVE9FTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRQUk9U T0VOVCAxCnwgI2RlZmluZSBIQVZFX1NFVFNFUlZFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRTRVJW RU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EU0VSVkVOVCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAq Lwp8IC8qIERlZmluZSBnZXRuZXRieWFkZHIgdG8gYW4gaW5ub2N1b3VzIHZhcmlhbnQsIGluIGNh c2UgPGxpbWl0cy5oPiBkZWNsYXJlcyBnZXRuZXRieWFkZHIuCnwgICAgRm9yIGV4YW1wbGUsIEhQ LVVYIDExaSA8bGltaXRzLmg+IGRlY2xhcmVzIGdldHRpbWVvZmRheS4gICovCnwgI2RlZmluZSBn ZXRuZXRieWFkZHIgaW5ub2N1b3VzX2dldG5ldGJ5YWRkcgp8IAp8IC8qIFN5c3RlbSBoZWFkZXIg dG8gZGVmaW5lIF9fc3R1YiBtYWNyb3MgYW5kIGhvcGVmdWxseSBmZXcgcHJvdG90eXBlcywKfCAg ICAgd2hpY2ggY2FuIGNvbmZsaWN0IHdpdGggY2hhciBnZXRuZXRieWFkZHIgKCk7IGJlbG93Lgp8 ICAgICBQcmVmZXIgPGxpbWl0cy5oPiB0byA8YXNzZXJ0Lmg+IGlmIF9fU1REQ19fIGlzIGRlZmlu ZWQsIHNpbmNlCnwgICAgIDxsaW1pdHMuaD4gZXhpc3RzIGV2ZW4gb24gZnJlZXN0YW5kaW5nIGNv bXBpbGVycy4gICovCnwgCnwgI2lmZGVmIF9fU1REQ19fCnwgIyBpbmNsdWRlIDxsaW1pdHMuaD4K fCAjZWxzZQp8ICMgaW5jbHVkZSA8YXNzZXJ0Lmg+CnwgI2VuZGlmCnwgCnwgI3VuZGVmIGdldG5l dGJ5YWRkcgp8IAp8IC8qIE92ZXJyaWRlIGFueSBHQ0MgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2 b2lkIGFuIGVycm9yLgp8ICAgIFVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSBy ZXR1cm4gdHlwZSBvZiBhIEdDQwp8ICAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHBy b3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCnwgI2lmZGVmIF9fY3BsdXNwbHVzCnwgZXh0 ZXJuICJDIgp8ICNlbmRpZgp8IGNoYXIgZ2V0bmV0YnlhZGRyICgpOwp8IC8qIFRoZSBHTlUgQyBs aWJyYXJ5IGRlZmluZXMgdGhpcyBmb3IgZnVuY3Rpb25zIHdoaWNoIGl0IGltcGxlbWVudHMKfCAg ICAgdG8gYWx3YXlzIGZhaWwgd2l0aCBFTk9TWVMuICBTb21lIGZ1bmN0aW9ucyBhcmUgYWN0dWFs bHkgbmFtZWQKfCAgICAgc29tZXRoaW5nIHN0YXJ0aW5nIHdpdGggX18gYW5kIHRoZSBub3JtYWwg bmFtZSBpcyBhbiBhbGlhcy4gICovCnwgI2lmIGRlZmluZWQgX19zdHViX2dldG5ldGJ5YWRkciB8 fCBkZWZpbmVkIF9fc3R1Yl9fX2dldG5ldGJ5YWRkcgp8IGNob2tlIG1lCnwgI2VuZGlmCnwgCnwg aW50CnwgbWFpbiAoKQp8IHsKfCByZXR1cm4gZ2V0bmV0YnlhZGRyICgpOwp8ICAgOwp8ICAgcmV0 dXJuIDA7CnwgfQpjb25maWd1cmU6Mzg4NDk6IHJlc3VsdDogbm8KY29uZmlndXJlOjM4NzY5OiBj aGVja2luZyBmb3IgZ2V0bmV0YnluYW1lCmNvbmZpZ3VyZTozODgyNTogZ2NjIC1vIGNvbmZ0ZXN0 LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1sZ21wIC1sY3J5cHQgLWxtIC1sbHRkbCAgPiY1Ci9j eWdkcml2ZS9jL0RPQ1VNRX4xL0Fhcm9uL0xPQ0FMU34xL1RlbXAvY2NhdDNWd24ubzogSW4gZnVu Y3Rpb24gYG1haW4nOgovaG9tZS9BYXJvbi9ndWlsZS0xLjguNC9jb25mdGVzdC5jOjIxMzogdW5k ZWZpbmVkIHJlZmVyZW5jZSB0byBgX2dldG5ldGJ5bmFtZScKY29sbGVjdDI6IGxkIHJldHVybmVk IDEgZXhpdCBzdGF0dXMKY29uZmlndXJlOjM4ODMxOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQg cHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUg Imd1aWxlIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tB R0VfVkVSU0lPTiAiMS44LjQiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiZ3VpbGUgMS44LjQi CnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWd1aWxlQGdudS5vcmciCnwgI2RlZmlu ZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZF X1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJ TkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5U X0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8 ICNkZWZpbmUgSEFWRV9MSUJMVERMIDEKfCAjZGVmaW5lIFNDTV9XQVJOX0RFUFJFQ0FURURfREVG QVVMVCAic3VtbWFyeSIKfCAjZGVmaW5lIEdVSUxFX1VTRV82NF9DQUxMUyAxCnwgI2RlZmluZSBI QVZFX1BPU0lYIDEKfCAjZGVmaW5lIEhBVkVfTkVUV09SS0lORyAxCnwgI2RlZmluZSBTSVpFT0Zf Q0hBUiAxCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfQ0hBUiAxCnwgI2RlZmluZSBTSVpFT0Zf U0hPUlQgMgp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVP Rl9JTlQgNAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0lOVCA0CnwgI2RlZmluZSBTSVpFT0Zf TE9ORyA0CnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfTE9ORyA0CnwgI2RlZmluZSBTSVpFT0Zf U0laRV9UIDQKfCAjZGVmaW5lIFNJWkVPRl9MT05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX1VO U0lHTkVEX0xPTkdfTE9ORyA4CnwgI2RlZmluZSBTSVpFT0ZfX19JTlQ2NCAwCnwgI2RlZmluZSBT SVpFT0ZfVU5TSUdORURfX19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0ZfVk9JRF9QIDQKfCAjZGVm aW5lIFNJWkVPRl9JTlRQVFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfVUlOVFBUUl9UIDQKfCAjZGVm aW5lIFNJWkVPRl9QVFJESUZGX1QgNAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmlu ZSBTSVpFT0ZfT0ZGX1QgOAp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZF X0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgU0laRU9GX0lOVE1BWF9UIDgKfCAjZGVmaW5lIFNURENf SEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9T WVNfVElNRSAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9JT19I IDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwg I2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfUFJPQ0VTU19IIDEKfCAjZGVm aW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9SRUdFWF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX0lPQ1RMX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVCX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfVElNRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9USU1FX0ggMQp8ICNkZWZpbmUgSEFW RV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0Rf SCAxCnwgI2RlZmluZSBIQVZFX0dSUF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAx CnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAj ZGVmaW5lIEdFVEdST1VQU19UIGdpZF90CnwgI2RlZmluZSBSRVRTSUdUWVBFIHZvaWQKfCAjZGVm aW5lIEhBVkVfTElCTSAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1RCWU5BTUUgMQp8ICNkZWZpbmUg SEFWRV9DT05ORUNUIDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJUX0ggMQp8ICNkZWZpbmUgSEFWRV9D VEVSTUlEIDEKfCAjZGVmaW5lIEhBVkVfRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9GVFJVTkNBVEUg MQp8ICNkZWZpbmUgSEFWRV9GQ0hPV04gMQp8ICNkZWZpbmUgSEFWRV9HRVRDV0QgMQp8ICNkZWZp bmUgSEFWRV9HRVRFVUlEIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5l IEhBVkVfR01USU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9JT0NUTCAxCnwgI2RlZmluZSBIQVZFX0xT VEFUIDEKfCAjZGVmaW5lIEhBVkVfTUtESVIgMQp8ICNkZWZpbmUgSEFWRV9NS05PRCAxCnwgI2Rl ZmluZSBIQVZFX05JQ0UgMQp8ICNkZWZpbmUgSEFWRV9QSVBFIDEKfCAjZGVmaW5lIEhBVkVfX1BJ UEUgMQp8ICNkZWZpbmUgSEFWRV9SRUFERElSX1IgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAx CnwgI2RlZmluZSBIQVZFX1JFTkFNRSAxCnwgI2RlZmluZSBIQVZFX1JNRElSIDEKfCAjZGVmaW5l IEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfU0VURUdJRCAxCnwgI2RlZmluZSBIQVZFX1NF VEVVSUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9TRVRQR0lE IDEKfCAjZGVmaW5lIEhBVkVfU0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVfU0lHQUNUSU9OIDEKfCAj ZGVmaW5lIEhBVkVfU0lHSU5URVJSVVBUIDEKfCAjZGVmaW5lIEhBVkVfU1RSRlRJTUUgMQp8ICNk ZWZpbmUgSEFWRV9TVFJQVElNRSAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUg SEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVfU1lTQ09ORiAxCnwgI2RlZmluZSBIQVZFX1RDR0VU UEdSUCAxCnwgI2RlZmluZSBIQVZFX1RDU0VUUEdSUCAxCnwgI2RlZmluZSBIQVZFX1RJTUVTIDEK fCAjZGVmaW5lIEhBVkVfVU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9XQUlUUElEIDEKfCAjZGVmaW5l IEhBVkVfU1RSRFVQIDEKfCAjZGVmaW5lIEhBVkVfU1lTVEVNIDEKfCAjZGVmaW5lIEhBVkVfVVNM RUVQIDEKfCAjZGVmaW5lIEhBVkVfQVRFWElUIDEKfCAjZGVmaW5lIEhBVkVfT05fRVhJVCAxCnwg I2RlZmluZSBIQVZFX0NIT1dOIDEKfCAjZGVmaW5lIEhBVkVfTElOSyAxCnwgI2RlZmluZSBIQVZF X0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfVFRZTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5U IDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9LSUxMIDEKfCAjZGVm aW5lIEhBVkVfR0VUUFBJRCAxCnwgI2RlZmluZSBIQVZFX0dFVFBHUlAgMQp8ICNkZWZpbmUgSEFW RV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSVRJ TUVSIDEKfCAjZGVmaW5lIEhBVkVfU1RSQ0hSIDEKfCAjZGVmaW5lIEhBVkVfU1RSQ01QIDEKfCAj ZGVmaW5lIEhBVkVfSU5ERVggMQp8ICNkZWZpbmUgSEFWRV9CQ09QWSAxCnwgI2RlZmluZSBIQVZF X01FTUNQWSAxCnwgI2RlZmluZSBIQVZFX1JJTkRFWCAxCnwgI2RlZmluZSBIQVZFX1RSVU5DQVRF IDEKfCAjZGVmaW5lIEhBVkVfVU5TRVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9JU0JMQU5LIDEKfCAj ZGVmaW5lIEhBVkVfU1RSTkNBU0VDTVAgMQp8ICNkZWZpbmUgSEFWRV9DUllQVF9IIDEKfCAjZGVm aW5lIEhBVkVfTkVUREJfSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfQ0hST09UIDEKfCAjZGVmaW5lIEhB VkVfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9HRVRMT0dJTiAxCnwgI2RlZmluZSBIQVZFX0NVU0VS SUQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQUklPUklUWSAxCnwgI2RlZmluZSBIQVZFX1NFVFBSSU9S SVRZIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFTUyAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1F IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRVRIT1NUTkFNRSAwCnwgI2RlZmluZSBIQVZFX0NSWVBU IDEKfCAjZGVmaW5lIEhBVkVfTElCR01QIDEKfCAjZGVmaW5lIEhBVkVfSUNPTlYgMQp8ICNkZWZp bmUgRU5BQkxFX05MUyAxCnwgI2RlZmluZSBIQVZFX0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9E Q0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUlBUSU1FIDEKfCAjZGVmaW5lIEhBVkVf VU5JWF9ET01BSU5fU09DS0VUUyAxCnwgI2RlZmluZSBIQVZFX1NPQ0tFVFBBSVIgMQp8ICNkZWZp bmUgSEFWRV9HRVRHUk9VUFMgMQp8ICNkZWZpbmUgSEFWRV9TRVRHUk9VUFMgMQp8ICNkZWZpbmUg SEFWRV9TRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX1BBVVNFIDEKfCAjZGVmaW5lIEhBVkVfVFpT RVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRIT1NURU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5ESE9TVEVO VCAxCnwgI2RlZmluZSBIQVZFX1NFVFBST1RPRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFJPVE9F TlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRQUk9UT0VOVCAxCnwgI2RlZmluZSBIQVZFX1NFVFNFUlZF TlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRTRVJWRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EU0VSVkVO VCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8IC8qIERlZmluZSBnZXRuZXRieW5hbWUgdG8g YW4gaW5ub2N1b3VzIHZhcmlhbnQsIGluIGNhc2UgPGxpbWl0cy5oPiBkZWNsYXJlcyBnZXRuZXRi eW5hbWUuCnwgICAgRm9yIGV4YW1wbGUsIEhQLVVYIDExaSA8bGltaXRzLmg+IGRlY2xhcmVzIGdl dHRpbWVvZmRheS4gICovCnwgI2RlZmluZSBnZXRuZXRieW5hbWUgaW5ub2N1b3VzX2dldG5ldGJ5 bmFtZQp8IAp8IC8qIFN5c3RlbSBoZWFkZXIgdG8gZGVmaW5lIF9fc3R1YiBtYWNyb3MgYW5kIGhv cGVmdWxseSBmZXcgcHJvdG90eXBlcywKfCAgICAgd2hpY2ggY2FuIGNvbmZsaWN0IHdpdGggY2hh ciBnZXRuZXRieW5hbWUgKCk7IGJlbG93Lgp8ICAgICBQcmVmZXIgPGxpbWl0cy5oPiB0byA8YXNz ZXJ0Lmg+IGlmIF9fU1REQ19fIGlzIGRlZmluZWQsIHNpbmNlCnwgICAgIDxsaW1pdHMuaD4gZXhp c3RzIGV2ZW4gb24gZnJlZXN0YW5kaW5nIGNvbXBpbGVycy4gICovCnwgCnwgI2lmZGVmIF9fU1RE Q19fCnwgIyBpbmNsdWRlIDxsaW1pdHMuaD4KfCAjZWxzZQp8ICMgaW5jbHVkZSA8YXNzZXJ0Lmg+ CnwgI2VuZGlmCnwgCnwgI3VuZGVmIGdldG5ldGJ5bmFtZQp8IAp8IC8qIE92ZXJyaWRlIGFueSBH Q0MgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLgp8ICAgIFVzZSBjaGFyIGJl Y2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIEdDQwp8ICAgIGJ1aWx0 aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICov CnwgI2lmZGVmIF9fY3BsdXNwbHVzCnwgZXh0ZXJuICJDIgp8ICNlbmRpZgp8IGNoYXIgZ2V0bmV0 YnluYW1lICgpOwp8IC8qIFRoZSBHTlUgQyBsaWJyYXJ5IGRlZmluZXMgdGhpcyBmb3IgZnVuY3Rp b25zIHdoaWNoIGl0IGltcGxlbWVudHMKfCAgICAgdG8gYWx3YXlzIGZhaWwgd2l0aCBFTk9TWVMu ICBTb21lIGZ1bmN0aW9ucyBhcmUgYWN0dWFsbHkgbmFtZWQKfCAgICAgc29tZXRoaW5nIHN0YXJ0 aW5nIHdpdGggX18gYW5kIHRoZSBub3JtYWwgbmFtZSBpcyBhbiBhbGlhcy4gICovCnwgI2lmIGRl ZmluZWQgX19zdHViX2dldG5ldGJ5bmFtZSB8fCBkZWZpbmVkIF9fc3R1Yl9fX2dldG5ldGJ5bmFt ZQp8IGNob2tlIG1lCnwgI2VuZGlmCnwgCnwgaW50CnwgbWFpbiAoKQp8IHsKfCByZXR1cm4gZ2V0 bmV0YnluYW1lICgpOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6Mzg4NDk6IHJl c3VsdDogbm8KY29uZmlndXJlOjM4NzY5OiBjaGVja2luZyBmb3IgaW5ldF9sbmFvZgpjb25maWd1 cmU6Mzg4MjU6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3QuYyAtbGdtcCAt bGNyeXB0IC1sbSAtbGx0ZGwgID4mNQovY3lnZHJpdmUvYy9ET0NVTUV+MS9BYXJvbi9MT0NBTFN+ MS9UZW1wL2NjSWwzbmlDLm86IEluIGZ1bmN0aW9uIGBtYWluJzoKL2hvbWUvQWFyb24vZ3VpbGUt MS44LjQvY29uZnRlc3QuYzoyMTM6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYF9pbmV0X2xuYW9m Jwpjb2xsZWN0MjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpjb25maWd1cmU6Mzg4MzE6ICQ/ ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8K fCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiZ3VpbGUiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUg Imd1aWxlIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIxLjguNCIKfCAjZGVmaW5lIFBBQ0tB R0VfU1RSSU5HICJndWlsZSAxLjguNCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWct Z3VpbGVAZ251Lm9yZyIKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZ U19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NU RExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllf SCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0gg MQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAj ZGVmaW5lIEhBVkVfRExGQ05fSCAxCnwgI2RlZmluZSBIQVZFX0xJQkxUREwgMQp8ICNkZWZpbmUg U0NNX1dBUk5fREVQUkVDQVRFRF9ERUZBVUxUICJzdW1tYXJ5Igp8ICNkZWZpbmUgR1VJTEVfVVNF XzY0X0NBTExTIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVggMQp8ICNkZWZpbmUgSEFWRV9ORVRXT1JL SU5HIDEKfCAjZGVmaW5lIFNJWkVPRl9DSEFSIDEKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9D SEFSIDEKfCAjZGVmaW5lIFNJWkVPRl9TSE9SVCAyCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURf U0hPUlQgMgp8ICNkZWZpbmUgU0laRU9GX0lOVCA0CnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURf SU5UIDQKfCAjZGVmaW5lIFNJWkVPRl9MT05HIDQKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9M T05HIDQKfCAjZGVmaW5lIFNJWkVPRl9TSVpFX1QgNAp8ICNkZWZpbmUgU0laRU9GX0xPTkdfTE9O RyA4CnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfTE9OR19MT05HIDgKfCAjZGVmaW5lIFNJWkVP Rl9fX0lOVDY0IDAKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9fX0lOVDY0IDAKfCAjZGVmaW5l IFNJWkVPRl9WT0lEX1AgNAp8ICNkZWZpbmUgU0laRU9GX0lOVFBUUl9UIDQKfCAjZGVmaW5lIFNJ WkVPRl9VSU5UUFRSX1QgNAp8ICNkZWZpbmUgU0laRU9GX1BUUkRJRkZfVCA0CnwgI2RlZmluZSBT SVpFT0ZfU0laRV9UIDQKfCAjZGVmaW5lIFNJWkVPRl9PRkZfVCA4CnwgI2RlZmluZSBIQVZFX1NU RElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBTSVpFT0ZfSU5U TUFYX1QgOAp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0gg MQp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRf SCAxCnwgI2RlZmluZSBIQVZFX0lPX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2Rl ZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUg SEFWRV9QUk9DRVNTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZF X1JFR0VYX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfSU9DVExfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfVElNRUJfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FU19IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRJTUVfSCAxCnwgI2RlZmluZSBIQVZF X1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVf SCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfR1JQX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVm aW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgR0VUR1JPVVBTX1QgZ2lkX3QKfCAjZGVmaW5l IFJFVFNJR1RZUEUgdm9pZAp8ICNkZWZpbmUgSEFWRV9MSUJNIDEKfCAjZGVmaW5lIEhBVkVfR0VU SE9TVEJZTkFNRSAxCnwgI2RlZmluZSBIQVZFX0NPTk5FQ1QgMQp8ICNkZWZpbmUgSEFWRV9BU1NF UlRfSCAxCnwgI2RlZmluZSBIQVZFX0NURVJNSUQgMQp8ICNkZWZpbmUgSEFWRV9GVElNRSAxCnwg I2RlZmluZSBIQVZFX0ZUUlVOQ0FURSAxCnwgI2RlZmluZSBIQVZFX0ZDSE9XTiAxCnwgI2RlZmlu ZSBIQVZFX0dFVENXRCAxCnwgI2RlZmluZSBIQVZFX0dFVEVVSUQgMQp8ICNkZWZpbmUgSEFWRV9H RVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9HTVRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX0lP Q1RMIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9NS0RJUiAxCnwgI2Rl ZmluZSBIQVZFX01LTk9EIDEKfCAjZGVmaW5lIEhBVkVfTklDRSAxCnwgI2RlZmluZSBIQVZFX1BJ UEUgMQp8ICNkZWZpbmUgSEFWRV9fUElQRSAxCnwgI2RlZmluZSBIQVZFX1JFQURESVJfUiAxCnwg I2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfUkVOQU1FIDEKfCAjZGVmaW5l IEhBVkVfUk1ESVIgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9TRVRF R0lEIDEKfCAjZGVmaW5lIEhBVkVfU0VURVVJRCAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FMRSAx CnwgI2RlZmluZSBIQVZFX1NFVFBHSUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRTSUQgMQp8ICNkZWZp bmUgSEFWRV9TSUdBQ1RJT04gMQp8ICNkZWZpbmUgSEFWRV9TSUdJTlRFUlJVUFQgMQp8ICNkZWZp bmUgSEFWRV9TVFJGVElNRSAxCnwgI2RlZmluZSBIQVZFX1NUUlBUSU1FIDEKfCAjZGVmaW5lIEhB VkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX1NZTkMgMQp8ICNkZWZpbmUgSEFWRV9TWVNDT05G IDEKfCAjZGVmaW5lIEhBVkVfVENHRVRQR1JQIDEKfCAjZGVmaW5lIEhBVkVfVENTRVRQR1JQIDEK fCAjZGVmaW5lIEhBVkVfVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9VTkFNRSAxCnwgI2RlZmluZSBI QVZFX1dBSVRQSUQgMQp8ICNkZWZpbmUgSEFWRV9TVFJEVVAgMQp8ICNkZWZpbmUgSEFWRV9TWVNU RU0gMQp8ICNkZWZpbmUgSEFWRV9VU0xFRVAgMQp8ICNkZWZpbmUgSEFWRV9BVEVYSVQgMQp8ICNk ZWZpbmUgSEFWRV9PTl9FWElUIDEKfCAjZGVmaW5lIEhBVkVfQ0hPV04gMQp8ICNkZWZpbmUgSEFW RV9MSU5LIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9UVFlOQU1FIDEK fCAjZGVmaW5lIEhBVkVfR0VUUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUkVOVCAxCnwgI2Rl ZmluZSBIQVZFX0tJTEwgMQp8ICNkZWZpbmUgSEFWRV9HRVRQUElEIDEKfCAjZGVmaW5lIEhBVkVf R0VUUEdSUCAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIg MQp8ICNkZWZpbmUgSEFWRV9HRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9TVFJDSFIgMQp8ICNk ZWZpbmUgSEFWRV9TVFJDTVAgMQp8ICNkZWZpbmUgSEFWRV9JTkRFWCAxCnwgI2RlZmluZSBIQVZF X0JDT1BZIDEKfCAjZGVmaW5lIEhBVkVfTUVNQ1BZIDEKfCAjZGVmaW5lIEhBVkVfUklOREVYIDEK fCAjZGVmaW5lIEhBVkVfVFJVTkNBVEUgMQp8ICNkZWZpbmUgSEFWRV9VTlNFVEVOViAxCnwgI2Rl ZmluZSBIQVZFX0lTQkxBTksgMQp8ICNkZWZpbmUgSEFWRV9TVFJOQ0FTRUNNUCAxCnwgI2RlZmlu ZSBIQVZFX0NSWVBUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVREQl9IIDEKfCAjZGVmaW5lIEhBVkVf UFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgSEFW RV9DSFJPT1QgMQp8ICNkZWZpbmUgSEFWRV9GTE9DSyAxCnwgI2RlZmluZSBIQVZFX0dFVExPR0lO IDEKfCAjZGVmaW5lIEhBVkVfQ1VTRVJJRCAxCnwgI2RlZmluZSBIQVZFX0dFVFBSSU9SSVRZIDEK fCAjZGVmaW5lIEhBVkVfU0VUUFJJT1JJVFkgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQVNTIDEKfCAj ZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFVEhPU1ROQU1F IDAKfCAjZGVmaW5lIEhBVkVfQ1JZUFQgMQp8ICNkZWZpbmUgSEFWRV9MSUJHTVAgMQp8ICNkZWZp bmUgSEFWRV9JQ09OViAxCnwgI2RlZmluZSBFTkFCTEVfTkxTIDEKfCAjZGVmaW5lIEhBVkVfR0VU VEVYVCAxCnwgI2RlZmluZSBIQVZFX0RDR0VUVEVYVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RS UFRJTUUgMQp8ICNkZWZpbmUgSEFWRV9VTklYX0RPTUFJTl9TT0NLRVRTIDEKfCAjZGVmaW5lIEhB VkVfU09DS0VUUEFJUiAxCnwgI2RlZmluZSBIQVZFX0dFVEdST1VQUyAxCnwgI2RlZmluZSBIQVZF X1NFVEdST1VQUyAxCnwgI2RlZmluZSBIQVZFX1NFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfUEFV U0UgMQp8ICNkZWZpbmUgSEFWRV9UWlNFVCAxCnwgI2RlZmluZSBIQVZFX1NFVEhPU1RFTlQgMQp8 ICNkZWZpbmUgSEFWRV9FTkRIT1NURU5UIDEKfCAjZGVmaW5lIEhBVkVfU0VUUFJPVE9FTlQgMQp8 ICNkZWZpbmUgSEFWRV9HRVRQUk9UT0VOVCAxCnwgI2RlZmluZSBIQVZFX0VORFBST1RPRU5UIDEK fCAjZGVmaW5lIEhBVkVfU0VUU0VSVkVOVCAxCnwgI2RlZmluZSBIQVZFX0dFVFNFUlZFTlQgMQp8 ICNkZWZpbmUgSEFWRV9FTkRTRVJWRU5UIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgLyog RGVmaW5lIGluZXRfbG5hb2YgdG8gYW4gaW5ub2N1b3VzIHZhcmlhbnQsIGluIGNhc2UgPGxpbWl0 cy5oPiBkZWNsYXJlcyBpbmV0X2xuYW9mLgp8ICAgIEZvciBleGFtcGxlLCBIUC1VWCAxMWkgPGxp bWl0cy5oPiBkZWNsYXJlcyBnZXR0aW1lb2ZkYXkuICAqLwp8ICNkZWZpbmUgaW5ldF9sbmFvZiBp bm5vY3VvdXNfaW5ldF9sbmFvZgp8IAp8IC8qIFN5c3RlbSBoZWFkZXIgdG8gZGVmaW5lIF9fc3R1 YiBtYWNyb3MgYW5kIGhvcGVmdWxseSBmZXcgcHJvdG90eXBlcywKfCAgICAgd2hpY2ggY2FuIGNv bmZsaWN0IHdpdGggY2hhciBpbmV0X2xuYW9mICgpOyBiZWxvdy4KfCAgICAgUHJlZmVyIDxsaW1p dHMuaD4gdG8gPGFzc2VydC5oPiBpZiBfX1NURENfXyBpcyBkZWZpbmVkLCBzaW5jZQp8ICAgICA8 bGltaXRzLmg+IGV4aXN0cyBldmVuIG9uIGZyZWVzdGFuZGluZyBjb21waWxlcnMuICAqLwp8IAp8 ICNpZmRlZiBfX1NURENfXwp8ICMgaW5jbHVkZSA8bGltaXRzLmg+CnwgI2Vsc2UKfCAjIGluY2x1 ZGUgPGFzc2VydC5oPgp8ICNlbmRpZgp8IAp8ICN1bmRlZiBpbmV0X2xuYW9mCnwgCnwgLyogT3Zl cnJpZGUgYW55IEdDQyBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuCnwgICAg VXNlIGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2ggdGhlIHJldHVybiB0eXBlIG9mIGEgR0ND CnwgICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMgYXJndW1lbnQgcHJvdG90eXBlIHdvdWxkIHN0aWxs IGFwcGx5LiAgKi8KfCAjaWZkZWYgX19jcGx1c3BsdXMKfCBleHRlcm4gIkMiCnwgI2VuZGlmCnwg Y2hhciBpbmV0X2xuYW9mICgpOwp8IC8qIFRoZSBHTlUgQyBsaWJyYXJ5IGRlZmluZXMgdGhpcyBm b3IgZnVuY3Rpb25zIHdoaWNoIGl0IGltcGxlbWVudHMKfCAgICAgdG8gYWx3YXlzIGZhaWwgd2l0 aCBFTk9TWVMuICBTb21lIGZ1bmN0aW9ucyBhcmUgYWN0dWFsbHkgbmFtZWQKfCAgICAgc29tZXRo aW5nIHN0YXJ0aW5nIHdpdGggX18gYW5kIHRoZSBub3JtYWwgbmFtZSBpcyBhbiBhbGlhcy4gICov CnwgI2lmIGRlZmluZWQgX19zdHViX2luZXRfbG5hb2YgfHwgZGVmaW5lZCBfX3N0dWJfX19pbmV0 X2xuYW9mCnwgY2hva2UgbWUKfCAjZW5kaWYKfCAKfCBpbnQKfCBtYWluICgpCnwgewp8IHJldHVy biBpbmV0X2xuYW9mICgpOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6Mzg4NDk6 IHJlc3VsdDogbm8KY29uZmlndXJlOjM4NzY5OiBjaGVja2luZyBmb3IgaW5ldF9tYWtlYWRkcgpj b25maWd1cmU6Mzg4MjU6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3QuYyAt bGdtcCAtbGNyeXB0IC1sbSAtbGx0ZGwgID4mNQpjb25maWd1cmU6Mzg4MzE6ICQ/ID0gMApjb25m aWd1cmU6Mzg4NDk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozODc2OTogY2hlY2tpbmcgZm9yIGlu ZXRfbmV0b2YKY29uZmlndXJlOjM4ODI1OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNv bmZ0ZXN0LmMgLWxnbXAgLWxjcnlwdCAtbG0gLWxsdGRsICA+JjUKY29uZmlndXJlOjM4ODMxOiAk PyA9IDAKY29uZmlndXJlOjM4ODQ5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6Mzg3Njk6IGNoZWNr aW5nIGZvciBoc3RyZXJyb3IKY29uZmlndXJlOjM4ODI1OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1n IC1PMiAgIGNvbmZ0ZXN0LmMgLWxnbXAgLWxjcnlwdCAtbG0gLWxsdGRsICA+JjUKY29uZmlndXJl OjM4ODMxOiAkPyA9IDAKY29uZmlndXJlOjM4ODQ5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6Mzg3 Njk6IGNoZWNraW5nIGZvciBpbmV0X3B0b24KY29uZmlndXJlOjM4ODI1OiBnY2MgLW8gY29uZnRl c3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxnbXAgLWxjcnlwdCAtbG0gLWxsdGRsICA+JjUK Y29uZmlndXJlOjM4ODMxOiAkPyA9IDAKY29uZmlndXJlOjM4ODQ5OiByZXN1bHQ6IHllcwpjb25m aWd1cmU6Mzg3Njk6IGNoZWNraW5nIGZvciBpbmV0X250b3AKY29uZmlndXJlOjM4ODI1OiBnY2Mg LW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxnbXAgLWxjcnlwdCAtbG0gLWxs dGRsICA+JjUKY29uZmlndXJlOjM4ODMxOiAkPyA9IDAKY29uZmlndXJlOjM4ODQ5OiByZXN1bHQ6 IHllcwpjb25maWd1cmU6Mzg4NjM6IGNoZWNraW5nIGZvciBzdHJ1Y3Qgc29ja2FkZHIuc2luX2xl bgpjb25maWd1cmU6Mzg4OTU6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0 LmM6IEluIGZ1bmN0aW9uIGBtYWluJzoKY29uZnRlc3QuYzoxOTM6IGVycm9yOiBzdHJ1Y3R1cmUg aGFzIG5vIG1lbWJlciBuYW1lZCBgc2luX2xlbicKY29uZmlndXJlOjM4OTAxOiAkPyA9IDEKY29u ZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgI2RlZmlu ZSBQQUNLQUdFX05BTUUgImd1aWxlIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJndWlsZSIK fCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMS44LjQiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklO RyAiZ3VpbGUgMS44LjQiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWd1aWxlQGdu dS5vcmciCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAx CnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVm aW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBI QVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgSEFWRV9MSUJMVERMIDEKfCAjZGVmaW5lIFNDTV9XQVJO X0RFUFJFQ0FURURfREVGQVVMVCAic3VtbWFyeSIKfCAjZGVmaW5lIEdVSUxFX1VTRV82NF9DQUxM UyAxCnwgI2RlZmluZSBIQVZFX1BPU0lYIDEKfCAjZGVmaW5lIEhBVkVfTkVUV09SS0lORyAxCnwg I2RlZmluZSBTSVpFT0ZfQ0hBUiAxCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfQ0hBUiAxCnwg I2RlZmluZSBTSVpFT0ZfU0hPUlQgMgp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX1NIT1JUIDIK fCAjZGVmaW5lIFNJWkVPRl9JTlQgNAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0lOVCA0Cnwg I2RlZmluZSBTSVpFT0ZfTE9ORyA0CnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfTE9ORyA0Cnwg I2RlZmluZSBTSVpFT0ZfU0laRV9UIDQKfCAjZGVmaW5lIFNJWkVPRl9MT05HX0xPTkcgOAp8ICNk ZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xPTkdfTE9ORyA4CnwgI2RlZmluZSBTSVpFT0ZfX19JTlQ2 NCAwCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfX19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0Zf Vk9JRF9QIDQKfCAjZGVmaW5lIFNJWkVPRl9JTlRQVFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfVUlO VFBUUl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9QVFJESUZGX1QgNAp8ICNkZWZpbmUgU0laRU9GX1NJ WkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfT0ZGX1QgOAp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAx CnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgU0laRU9GX0lOVE1BWF9UIDgK fCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVm aW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNk ZWZpbmUgSEFWRV9JT19IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFW RV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfUFJP Q0VTU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9SRUdFWF9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lPQ1RMX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNU X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVC X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBF U19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9USU1FX0gg MQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNk ZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX0dSUF9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZF X1VOSVNURF9IIDEKfCAjZGVmaW5lIEdFVEdST1VQU19UIGdpZF90CnwgI2RlZmluZSBSRVRTSUdU WVBFIHZvaWQKfCAjZGVmaW5lIEhBVkVfTElCTSAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1RCWU5B TUUgMQp8ICNkZWZpbmUgSEFWRV9DT05ORUNUIDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJUX0ggMQp8 ICNkZWZpbmUgSEFWRV9DVEVSTUlEIDEKfCAjZGVmaW5lIEhBVkVfRlRJTUUgMQp8ICNkZWZpbmUg SEFWRV9GVFJVTkNBVEUgMQp8ICNkZWZpbmUgSEFWRV9GQ0hPV04gMQp8ICNkZWZpbmUgSEFWRV9H RVRDV0QgMQp8ICNkZWZpbmUgSEFWRV9HRVRFVUlEIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9G REFZIDEKfCAjZGVmaW5lIEhBVkVfR01USU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9JT0NUTCAxCnwg I2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfTUtESVIgMQp8ICNkZWZpbmUgSEFW RV9NS05PRCAxCnwgI2RlZmluZSBIQVZFX05JQ0UgMQp8ICNkZWZpbmUgSEFWRV9QSVBFIDEKfCAj ZGVmaW5lIEhBVkVfX1BJUEUgMQp8ICNkZWZpbmUgSEFWRV9SRUFERElSX1IgMQp8ICNkZWZpbmUg SEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX1JFTkFNRSAxCnwgI2RlZmluZSBIQVZFX1JN RElSIDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfU0VURUdJRCAxCnwg I2RlZmluZSBIQVZFX1NFVEVVSUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZp bmUgSEFWRV9TRVRQR0lEIDEKfCAjZGVmaW5lIEhBVkVfU0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVf U0lHQUNUSU9OIDEKfCAjZGVmaW5lIEhBVkVfU0lHSU5URVJSVVBUIDEKfCAjZGVmaW5lIEhBVkVf U1RSRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9TVFJQVElNRSAxCnwgI2RlZmluZSBIQVZFX1NZTUxJ TksgMQp8ICNkZWZpbmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVfU1lTQ09ORiAxCnwgI2Rl ZmluZSBIQVZFX1RDR0VUUEdSUCAxCnwgI2RlZmluZSBIQVZFX1RDU0VUUEdSUCAxCnwgI2RlZmlu ZSBIQVZFX1RJTUVTIDEKfCAjZGVmaW5lIEhBVkVfVU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9XQUlU UElEIDEKfCAjZGVmaW5lIEhBVkVfU1RSRFVQIDEKfCAjZGVmaW5lIEhBVkVfU1lTVEVNIDEKfCAj ZGVmaW5lIEhBVkVfVVNMRUVQIDEKfCAjZGVmaW5lIEhBVkVfQVRFWElUIDEKfCAjZGVmaW5lIEhB VkVfT05fRVhJVCAxCnwgI2RlZmluZSBIQVZFX0NIT1dOIDEKfCAjZGVmaW5lIEhBVkVfTElOSyAx CnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfVFRZTkFNRSAxCnwgI2RlZmlu ZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFW RV9LSUxMIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFBJRCAxCnwgI2RlZmluZSBIQVZFX0dFVFBHUlAg MQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVm aW5lIEhBVkVfR0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfU1RSQ0hSIDEKfCAjZGVmaW5lIEhB VkVfU1RSQ01QIDEKfCAjZGVmaW5lIEhBVkVfSU5ERVggMQp8ICNkZWZpbmUgSEFWRV9CQ09QWSAx CnwgI2RlZmluZSBIQVZFX01FTUNQWSAxCnwgI2RlZmluZSBIQVZFX1JJTkRFWCAxCnwgI2RlZmlu ZSBIQVZFX1RSVU5DQVRFIDEKfCAjZGVmaW5lIEhBVkVfVU5TRVRFTlYgMQp8ICNkZWZpbmUgSEFW RV9JU0JMQU5LIDEKfCAjZGVmaW5lIEhBVkVfU1RSTkNBU0VDTVAgMQp8ICNkZWZpbmUgSEFWRV9D UllQVF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUREJfSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09V UkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfQ0hST09U IDEKfCAjZGVmaW5lIEhBVkVfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9HRVRMT0dJTiAxCnwgI2Rl ZmluZSBIQVZFX0NVU0VSSUQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQUklPUklUWSAxCnwgI2RlZmlu ZSBIQVZFX1NFVFBSSU9SSVRZIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFTUyAxCnwgI2RlZmluZSBI QVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRVRIT1NUTkFNRSAwCnwgI2Rl ZmluZSBIQVZFX0NSWVBUIDEKfCAjZGVmaW5lIEhBVkVfTElCR01QIDEKfCAjZGVmaW5lIEhBVkVf SUNPTlYgMQp8ICNkZWZpbmUgRU5BQkxFX05MUyAxCnwgI2RlZmluZSBIQVZFX0dFVFRFWFQgMQp8 ICNkZWZpbmUgSEFWRV9EQ0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUlBUSU1FIDEK fCAjZGVmaW5lIEhBVkVfVU5JWF9ET01BSU5fU09DS0VUUyAxCnwgI2RlZmluZSBIQVZFX1NPQ0tF VFBBSVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUk9VUFMgMQp8ICNkZWZpbmUgSEFWRV9TRVRHUk9V UFMgMQp8ICNkZWZpbmUgSEFWRV9TRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX1BBVVNFIDEKfCAj ZGVmaW5lIEhBVkVfVFpTRVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRIT1NURU5UIDEKfCAjZGVmaW5l IEhBVkVfRU5ESE9TVEVOVCAxCnwgI2RlZmluZSBIQVZFX1NFVFBST1RPRU5UIDEKfCAjZGVmaW5l IEhBVkVfR0VUUFJPVE9FTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRQUk9UT0VOVCAxCnwgI2RlZmlu ZSBIQVZFX1NFVFNFUlZFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRTRVJWRU5UIDEKfCAjZGVmaW5l IEhBVkVfRU5EU0VSVkVOVCAxCnwgI2RlZmluZSBIQVZFX0lORVRfTUFLRUFERFIgMQp8ICNkZWZp bmUgSEFWRV9JTkVUX05FVE9GIDEKfCAjZGVmaW5lIEhBVkVfSFNUUkVSUk9SIDEKfCAjZGVmaW5l IEhBVkVfSU5FVF9QVE9OIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9OVE9QIDEKfCAvKiBlbmQgY29u ZmRlZnMuaC4gICovCnwgI2lmZGVmIEhBVkVfU1lTX1RZUEVTX0gKfCAjaW5jbHVkZSA8c3lzL3R5 cGVzLmg+CnwgI2VuZGlmCnwgI2luY2x1ZGUgPG5ldGluZXQvaW4uaD4KfCAKfCBpbnQKfCBtYWlu ICgpCnwgewp8IHN0YXRpYyBzdHJ1Y3Qgc29ja2FkZHIgYWNfYWdncjsKfCBpZiAoYWNfYWdnci5z aW5fbGVuKQp8IHJldHVybiAwOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6Mzg5 Mzg6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6IEluIGZ1bmN0aW9u IGBtYWluJzoKY29uZnRlc3QuYzoxOTM6IGVycm9yOiBzdHJ1Y3R1cmUgaGFzIG5vIG1lbWJlciBu YW1lZCBgc2luX2xlbicKY29uZmlndXJlOjM4OTQ0OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQg cHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUg Imd1aWxlIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tB R0VfVkVSU0lPTiAiMS44LjQiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiZ3VpbGUgMS44LjQi CnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWd1aWxlQGdudS5vcmciCnwgI2RlZmlu ZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZF X1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJ TkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5U X0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8 ICNkZWZpbmUgSEFWRV9MSUJMVERMIDEKfCAjZGVmaW5lIFNDTV9XQVJOX0RFUFJFQ0FURURfREVG QVVMVCAic3VtbWFyeSIKfCAjZGVmaW5lIEdVSUxFX1VTRV82NF9DQUxMUyAxCnwgI2RlZmluZSBI QVZFX1BPU0lYIDEKfCAjZGVmaW5lIEhBVkVfTkVUV09SS0lORyAxCnwgI2RlZmluZSBTSVpFT0Zf Q0hBUiAxCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfQ0hBUiAxCnwgI2RlZmluZSBTSVpFT0Zf U0hPUlQgMgp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVP Rl9JTlQgNAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0lOVCA0CnwgI2RlZmluZSBTSVpFT0Zf TE9ORyA0CnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfTE9ORyA0CnwgI2RlZmluZSBTSVpFT0Zf U0laRV9UIDQKfCAjZGVmaW5lIFNJWkVPRl9MT05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX1VO U0lHTkVEX0xPTkdfTE9ORyA4CnwgI2RlZmluZSBTSVpFT0ZfX19JTlQ2NCAwCnwgI2RlZmluZSBT SVpFT0ZfVU5TSUdORURfX19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0ZfVk9JRF9QIDQKfCAjZGVm aW5lIFNJWkVPRl9JTlRQVFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfVUlOVFBUUl9UIDQKfCAjZGVm aW5lIFNJWkVPRl9QVFJESUZGX1QgNAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmlu ZSBTSVpFT0ZfT0ZGX1QgOAp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZF X0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgU0laRU9GX0lOVE1BWF9UIDgKfCAjZGVmaW5lIFNURENf SEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9T WVNfVElNRSAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9JT19I IDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwg I2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfUFJPQ0VTU19IIDEKfCAjZGVm aW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9SRUdFWF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX0lPQ1RMX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVCX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfVElNRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9USU1FX0ggMQp8ICNkZWZpbmUgSEFW RV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0Rf SCAxCnwgI2RlZmluZSBIQVZFX0dSUF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAx CnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAj ZGVmaW5lIEdFVEdST1VQU19UIGdpZF90CnwgI2RlZmluZSBSRVRTSUdUWVBFIHZvaWQKfCAjZGVm aW5lIEhBVkVfTElCTSAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1RCWU5BTUUgMQp8ICNkZWZpbmUg SEFWRV9DT05ORUNUIDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJUX0ggMQp8ICNkZWZpbmUgSEFWRV9D VEVSTUlEIDEKfCAjZGVmaW5lIEhBVkVfRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9GVFJVTkNBVEUg MQp8ICNkZWZpbmUgSEFWRV9GQ0hPV04gMQp8ICNkZWZpbmUgSEFWRV9HRVRDV0QgMQp8ICNkZWZp bmUgSEFWRV9HRVRFVUlEIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5l IEhBVkVfR01USU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9JT0NUTCAxCnwgI2RlZmluZSBIQVZFX0xT VEFUIDEKfCAjZGVmaW5lIEhBVkVfTUtESVIgMQp8ICNkZWZpbmUgSEFWRV9NS05PRCAxCnwgI2Rl ZmluZSBIQVZFX05JQ0UgMQp8ICNkZWZpbmUgSEFWRV9QSVBFIDEKfCAjZGVmaW5lIEhBVkVfX1BJ UEUgMQp8ICNkZWZpbmUgSEFWRV9SRUFERElSX1IgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAx CnwgI2RlZmluZSBIQVZFX1JFTkFNRSAxCnwgI2RlZmluZSBIQVZFX1JNRElSIDEKfCAjZGVmaW5l IEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfU0VURUdJRCAxCnwgI2RlZmluZSBIQVZFX1NF VEVVSUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9TRVRQR0lE IDEKfCAjZGVmaW5lIEhBVkVfU0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVfU0lHQUNUSU9OIDEKfCAj ZGVmaW5lIEhBVkVfU0lHSU5URVJSVVBUIDEKfCAjZGVmaW5lIEhBVkVfU1RSRlRJTUUgMQp8ICNk ZWZpbmUgSEFWRV9TVFJQVElNRSAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUg SEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVfU1lTQ09ORiAxCnwgI2RlZmluZSBIQVZFX1RDR0VU UEdSUCAxCnwgI2RlZmluZSBIQVZFX1RDU0VUUEdSUCAxCnwgI2RlZmluZSBIQVZFX1RJTUVTIDEK fCAjZGVmaW5lIEhBVkVfVU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9XQUlUUElEIDEKfCAjZGVmaW5l IEhBVkVfU1RSRFVQIDEKfCAjZGVmaW5lIEhBVkVfU1lTVEVNIDEKfCAjZGVmaW5lIEhBVkVfVVNM RUVQIDEKfCAjZGVmaW5lIEhBVkVfQVRFWElUIDEKfCAjZGVmaW5lIEhBVkVfT05fRVhJVCAxCnwg I2RlZmluZSBIQVZFX0NIT1dOIDEKfCAjZGVmaW5lIEhBVkVfTElOSyAxCnwgI2RlZmluZSBIQVZF X0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfVFRZTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5U IDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9LSUxMIDEKfCAjZGVm aW5lIEhBVkVfR0VUUFBJRCAxCnwgI2RlZmluZSBIQVZFX0dFVFBHUlAgMQp8ICNkZWZpbmUgSEFW RV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSVRJ TUVSIDEKfCAjZGVmaW5lIEhBVkVfU1RSQ0hSIDEKfCAjZGVmaW5lIEhBVkVfU1RSQ01QIDEKfCAj ZGVmaW5lIEhBVkVfSU5ERVggMQp8ICNkZWZpbmUgSEFWRV9CQ09QWSAxCnwgI2RlZmluZSBIQVZF X01FTUNQWSAxCnwgI2RlZmluZSBIQVZFX1JJTkRFWCAxCnwgI2RlZmluZSBIQVZFX1RSVU5DQVRF IDEKfCAjZGVmaW5lIEhBVkVfVU5TRVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9JU0JMQU5LIDEKfCAj ZGVmaW5lIEhBVkVfU1RSTkNBU0VDTVAgMQp8ICNkZWZpbmUgSEFWRV9DUllQVF9IIDEKfCAjZGVm aW5lIEhBVkVfTkVUREJfSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfQ0hST09UIDEKfCAjZGVmaW5lIEhB VkVfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9HRVRMT0dJTiAxCnwgI2RlZmluZSBIQVZFX0NVU0VS SUQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQUklPUklUWSAxCnwgI2RlZmluZSBIQVZFX1NFVFBSSU9S SVRZIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFTUyAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1F IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRVRIT1NUTkFNRSAwCnwgI2RlZmluZSBIQVZFX0NSWVBU IDEKfCAjZGVmaW5lIEhBVkVfTElCR01QIDEKfCAjZGVmaW5lIEhBVkVfSUNPTlYgMQp8ICNkZWZp bmUgRU5BQkxFX05MUyAxCnwgI2RlZmluZSBIQVZFX0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9E Q0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUlBUSU1FIDEKfCAjZGVmaW5lIEhBVkVf VU5JWF9ET01BSU5fU09DS0VUUyAxCnwgI2RlZmluZSBIQVZFX1NPQ0tFVFBBSVIgMQp8ICNkZWZp bmUgSEFWRV9HRVRHUk9VUFMgMQp8ICNkZWZpbmUgSEFWRV9TRVRHUk9VUFMgMQp8ICNkZWZpbmUg SEFWRV9TRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX1BBVVNFIDEKfCAjZGVmaW5lIEhBVkVfVFpT RVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRIT1NURU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5ESE9TVEVO VCAxCnwgI2RlZmluZSBIQVZFX1NFVFBST1RPRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFJPVE9F TlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRQUk9UT0VOVCAxCnwgI2RlZmluZSBIQVZFX1NFVFNFUlZF TlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRTRVJWRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EU0VSVkVO VCAxCnwgI2RlZmluZSBIQVZFX0lORVRfTUFLRUFERFIgMQp8ICNkZWZpbmUgSEFWRV9JTkVUX05F VE9GIDEKfCAjZGVmaW5lIEhBVkVfSFNUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9QVE9O IDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9OVE9QIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwg I2lmZGVmIEhBVkVfU1lTX1RZUEVTX0gKfCAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgI2VuZGlm CnwgI2luY2x1ZGUgPG5ldGluZXQvaW4uaD4KfCAKfCBpbnQKfCBtYWluICgpCnwgewp8IHN0YXRp YyBzdHJ1Y3Qgc29ja2FkZHIgYWNfYWdncjsKfCBpZiAoc2l6ZW9mIGFjX2FnZ3Iuc2luX2xlbikK fCByZXR1cm4gMDsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjM4OTYyOiByZXN1 bHQ6IG5vCmNvbmZpZ3VyZTozODk3NDogY2hlY2tpbmcgZm9yIF9fbGliY19zdGFja19lbmQKY29u ZmlndXJlOjM5MDAxOiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxn bXAgLWxjcnlwdCAtbG0gLWxsdGRsICA+JjUKL2N5Z2RyaXZlL2MvRE9DVU1FfjEvQWFyb24vTE9D QUxTfjEvVGVtcC9jY2MxcENDdi5vOiBJbiBmdW5jdGlvbiBgbWFpbic6Ci9ob21lL0Fhcm9uL2d1 aWxlLTEuOC40L2NvbmZ0ZXN0LmM6MTg5OiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBfX19saWJj X3N0YWNrX2VuZCcKY29sbGVjdDI6IGxkIHJldHVybmVkIDEgZXhpdCBzdGF0dXMKY29uZmlndXJl OjM5MDA3OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRl ZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgImd1aWxlIgp8ICNkZWZpbmUgUEFDS0FH RV9UQVJOQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMS44LjQiCnwgI2Rl ZmluZSBQQUNLQUdFX1NUUklORyAiZ3VpbGUgMS44LjQiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JF UE9SVCAiYnVnLWd1aWxlQGdudS5vcmciCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZp bmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZp bmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhB VkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9J TlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklT VERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgSEFWRV9MSUJMVERMIDEK fCAjZGVmaW5lIFNDTV9XQVJOX0RFUFJFQ0FURURfREVGQVVMVCAic3VtbWFyeSIKfCAjZGVmaW5l IEdVSUxFX1VTRV82NF9DQUxMUyAxCnwgI2RlZmluZSBIQVZFX1BPU0lYIDEKfCAjZGVmaW5lIEhB VkVfTkVUV09SS0lORyAxCnwgI2RlZmluZSBTSVpFT0ZfQ0hBUiAxCnwgI2RlZmluZSBTSVpFT0Zf VU5TSUdORURfQ0hBUiAxCnwgI2RlZmluZSBTSVpFT0ZfU0hPUlQgMgp8ICNkZWZpbmUgU0laRU9G X1VOU0lHTkVEX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9JTlQgNAp8ICNkZWZpbmUgU0laRU9G X1VOU0lHTkVEX0lOVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA0CnwgI2RlZmluZSBTSVpFT0Zf VU5TSUdORURfTE9ORyA0CnwgI2RlZmluZSBTSVpFT0ZfU0laRV9UIDQKfCAjZGVmaW5lIFNJWkVP Rl9MT05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xPTkdfTE9ORyA4CnwgI2Rl ZmluZSBTSVpFT0ZfX19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfX19JTlQ2NCAw CnwgI2RlZmluZSBTSVpFT0ZfVk9JRF9QIDQKfCAjZGVmaW5lIFNJWkVPRl9JTlRQVFJfVCA0Cnwg I2RlZmluZSBTSVpFT0ZfVUlOVFBUUl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9QVFJESUZGX1QgNAp8 ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfT0ZGX1QgOAp8ICNkZWZp bmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUg U0laRU9GX0lOVE1BWF9UIDgKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZF X0RJUkVOVF9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwgI2RlZmluZSBIQVZF X1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9JT19IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRT X0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEK fCAjZGVmaW5lIEhBVkVfUFJPQ0VTU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNk ZWZpbmUgSEFWRV9SRUdFWF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lPQ1RMX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1RJTUVCX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRVNfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUSU1FX0ggMQp8ICNk ZWZpbmUgSEFWRV9USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBI QVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX0dSUF9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1Nf SCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEdFVEdST1VQU19UIGdpZF90 CnwgI2RlZmluZSBSRVRTSUdUWVBFIHZvaWQKfCAjZGVmaW5lIEhBVkVfTElCTSAxCnwgI2RlZmlu ZSBIQVZFX0dFVEhPU1RCWU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9DT05ORUNUIDEKfCAjZGVmaW5l IEhBVkVfQVNTRVJUX0ggMQp8ICNkZWZpbmUgSEFWRV9DVEVSTUlEIDEKfCAjZGVmaW5lIEhBVkVf RlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9GVFJVTkNBVEUgMQp8ICNkZWZpbmUgSEFWRV9GQ0hPV04g MQp8ICNkZWZpbmUgSEFWRV9HRVRDV0QgMQp8ICNkZWZpbmUgSEFWRV9HRVRFVUlEIDEKfCAjZGVm aW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfR01USU1FX1IgMQp8ICNkZWZp bmUgSEFWRV9JT0NUTCAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfTUtE SVIgMQp8ICNkZWZpbmUgSEFWRV9NS05PRCAxCnwgI2RlZmluZSBIQVZFX05JQ0UgMQp8ICNkZWZp bmUgSEFWRV9QSVBFIDEKfCAjZGVmaW5lIEhBVkVfX1BJUEUgMQp8ICNkZWZpbmUgSEFWRV9SRUFE RElSX1IgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX1JFTkFNRSAx CnwgI2RlZmluZSBIQVZFX1JNRElSIDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5l IEhBVkVfU0VURUdJRCAxCnwgI2RlZmluZSBIQVZFX1NFVEVVSUQgMQp8ICNkZWZpbmUgSEFWRV9T RVRMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9TRVRQR0lEIDEKfCAjZGVmaW5lIEhBVkVfU0VUU0lE IDEKfCAjZGVmaW5lIEhBVkVfU0lHQUNUSU9OIDEKfCAjZGVmaW5lIEhBVkVfU0lHSU5URVJSVVBU IDEKfCAjZGVmaW5lIEhBVkVfU1RSRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9TVFJQVElNRSAxCnwg I2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhB VkVfU1lTQ09ORiAxCnwgI2RlZmluZSBIQVZFX1RDR0VUUEdSUCAxCnwgI2RlZmluZSBIQVZFX1RD U0VUUEdSUCAxCnwgI2RlZmluZSBIQVZFX1RJTUVTIDEKfCAjZGVmaW5lIEhBVkVfVU5BTUUgMQp8 ICNkZWZpbmUgSEFWRV9XQUlUUElEIDEKfCAjZGVmaW5lIEhBVkVfU1RSRFVQIDEKfCAjZGVmaW5l IEhBVkVfU1lTVEVNIDEKfCAjZGVmaW5lIEhBVkVfVVNMRUVQIDEKfCAjZGVmaW5lIEhBVkVfQVRF WElUIDEKfCAjZGVmaW5lIEhBVkVfT05fRVhJVCAxCnwgI2RlZmluZSBIQVZFX0NIT1dOIDEKfCAj ZGVmaW5lIEhBVkVfTElOSyAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVf VFRZTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JF TlQgMQp8ICNkZWZpbmUgSEFWRV9LSUxMIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFBJRCAxCnwgI2Rl ZmluZSBIQVZFX0dFVFBHUlAgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVf U0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfU1RS Q0hSIDEKfCAjZGVmaW5lIEhBVkVfU1RSQ01QIDEKfCAjZGVmaW5lIEhBVkVfSU5ERVggMQp8ICNk ZWZpbmUgSEFWRV9CQ09QWSAxCnwgI2RlZmluZSBIQVZFX01FTUNQWSAxCnwgI2RlZmluZSBIQVZF X1JJTkRFWCAxCnwgI2RlZmluZSBIQVZFX1RSVU5DQVRFIDEKfCAjZGVmaW5lIEhBVkVfVU5TRVRF TlYgMQp8ICNkZWZpbmUgSEFWRV9JU0JMQU5LIDEKfCAjZGVmaW5lIEhBVkVfU1RSTkNBU0VDTVAg MQp8ICNkZWZpbmUgSEFWRV9DUllQVF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUREJfSCAxCnwgI2Rl ZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAj ZGVmaW5lIEhBVkVfQ0hST09UIDEKfCAjZGVmaW5lIEhBVkVfRkxPQ0sgMQp8ICNkZWZpbmUgSEFW RV9HRVRMT0dJTiAxCnwgI2RlZmluZSBIQVZFX0NVU0VSSUQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQ UklPUklUWSAxCnwgI2RlZmluZSBIQVZFX1NFVFBSSU9SSVRZIDEKfCAjZGVmaW5lIEhBVkVfR0VU UEFTUyAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9T RVRIT1NUTkFNRSAwCnwgI2RlZmluZSBIQVZFX0NSWVBUIDEKfCAjZGVmaW5lIEhBVkVfTElCR01Q IDEKfCAjZGVmaW5lIEhBVkVfSUNPTlYgMQp8ICNkZWZpbmUgRU5BQkxFX05MUyAxCnwgI2RlZmlu ZSBIQVZFX0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9EQ0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX1NUUlBUSU1FIDEKfCAjZGVmaW5lIEhBVkVfVU5JWF9ET01BSU5fU09DS0VUUyAxCnwg I2RlZmluZSBIQVZFX1NPQ0tFVFBBSVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUk9VUFMgMQp8ICNk ZWZpbmUgSEFWRV9TRVRHUk9VUFMgMQp8ICNkZWZpbmUgSEFWRV9TRVRQV0VOVCAxCnwgI2RlZmlu ZSBIQVZFX1BBVVNFIDEKfCAjZGVmaW5lIEhBVkVfVFpTRVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRI T1NURU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5ESE9TVEVOVCAxCnwgI2RlZmluZSBIQVZFX1NFVFBS T1RPRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFJPVE9FTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRQ Uk9UT0VOVCAxCnwgI2RlZmluZSBIQVZFX1NFVFNFUlZFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRT RVJWRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EU0VSVkVOVCAxCnwgI2RlZmluZSBIQVZFX0lORVRf TUFLRUFERFIgMQp8ICNkZWZpbmUgSEFWRV9JTkVUX05FVE9GIDEKfCAjZGVmaW5lIEhBVkVfSFNU UkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9QVE9OIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9O VE9QIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN0ZGlvLmg+CnwgZXh0 ZXJuIGNoYXIgKl9fbGliY19zdGFja19lbmQ7CnwgaW50CnwgbWFpbiAoKQp8IHsKfCBwcmludGYo IiVwIiwgKGNoYXIqKSBfX2xpYmNfc3RhY2tfZW5kKTsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0K Y29uZmlndXJlOjM5MDI1OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTozOTAzNzogY2hlY2tpbmcgd2hl dGhlciBuZXRkYi5oIGRlY2xhcmVzIGhfZXJybm8KY29uZmlndXJlOjM5MDYzOiBnY2MgLWMgLWcg LU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzkwNjk6ICQ/ID0gMApjb25maWd1cmU6Mzkw ODU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozOTA5NTogY2hlY2tpbmcgd2hldGhlciB1aW50MzJf dCBpcyBkZWZpbmVkCmNvbmZpZ3VyZTozOTEyNzogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+ JjUKY29uZmlndXJlOjM5MTMzOiAkPyA9IDAKY29uZmlndXJlOjM5MTQ5OiByZXN1bHQ6IHllcwpj b25maWd1cmU6MzkxNTk6IGNoZWNraW5nIGZvciB3b3JraW5nIElQdjYgc3VwcG9ydApjb25maWd1 cmU6MzkxOTA6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6IEluIGZ1 bmN0aW9uIGBtYWluJzoKY29uZnRlc3QuYzoxOTU6IGVycm9yOiBzdG9yYWdlIHNpemUgb2YgJ2En IGlzbid0IGtub3duCmNvbmZ0ZXN0LmM6MTk1OiBlcnJvcjogYEFGX0lORVQ2JyB1bmRlY2xhcmVk IChmaXJzdCB1c2UgaW4gdGhpcyBmdW5jdGlvbikKY29uZnRlc3QuYzoxOTU6IGVycm9yOiAoRWFj aCB1bmRlY2xhcmVkIGlkZW50aWZpZXIgaXMgcmVwb3J0ZWQgb25seSBvbmNlCmNvbmZ0ZXN0LmM6 MTk1OiBlcnJvcjogZm9yIGVhY2ggZnVuY3Rpb24gaXQgYXBwZWFycyBpbi4pCmNvbmZpZ3VyZToz OTE5NjogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZz LmguICAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0Vf VEFSTkFNRSAiZ3VpbGUiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjEuOC40Igp8ICNkZWZp bmUgUEFDS0FHRV9TVFJJTkcgImd1aWxlIDEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBP UlQgImJ1Zy1ndWlsZUBnbnUub3JnIgp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5l IEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZF X01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5U VFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1RE X0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEhBVkVfTElCTFRETCAxCnwg I2RlZmluZSBTQ01fV0FSTl9ERVBSRUNBVEVEX0RFRkFVTFQgInN1bW1hcnkiCnwgI2RlZmluZSBH VUlMRV9VU0VfNjRfQ0FMTFMgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWCAxCnwgI2RlZmluZSBIQVZF X05FVFdPUktJTkcgMQp8ICNkZWZpbmUgU0laRU9GX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1VO U0lHTkVEX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9V TlNJR05FRF9TSE9SVCAyCnwgI2RlZmluZSBTSVpFT0ZfSU5UIDQKfCAjZGVmaW5lIFNJWkVPRl9V TlNJR05FRF9JTlQgNAp8ICNkZWZpbmUgU0laRU9GX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1VO U0lHTkVEX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0Zf TE9OR19MT05HIDgKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9MT05HX0xPTkcgOAp8ICNkZWZp bmUgU0laRU9GX19fSU5UNjQgMAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX19fSU5UNjQgMAp8 ICNkZWZpbmUgU0laRU9GX1ZPSURfUCA0CnwgI2RlZmluZSBTSVpFT0ZfSU5UUFRSX1QgNAp8ICNk ZWZpbmUgU0laRU9GX1VJTlRQVFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfUFRSRElGRl9UIDQKfCAj ZGVmaW5lIFNJWkVPRl9TSVpFX1QgNAp8ICNkZWZpbmUgU0laRU9GX09GRl9UIDgKfCAjZGVmaW5l IEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIFNJ WkVPRl9JTlRNQVhfVCA4CnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9E SVJFTlRfSCAxCnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9T WVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU9fSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19I IDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwg I2RlZmluZSBIQVZFX1BST0NFU1NfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVm aW5lIEhBVkVfUkVHRVhfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19JT0NUTF9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19USU1FQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVTX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVElNRV9IIDEKfCAjZGVm aW5lIEhBVkVfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFW RV9VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9HUlBfSCAx CnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0gg MQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBHRVRHUk9VUFNfVCBnaWRfdAp8 ICNkZWZpbmUgUkVUU0lHVFlQRSB2b2lkCnwgI2RlZmluZSBIQVZFX0xJQk0gMQp8ICNkZWZpbmUg SEFWRV9HRVRIT1NUQllOQU1FIDEKfCAjZGVmaW5lIEhBVkVfQ09OTkVDVCAxCnwgI2RlZmluZSBI QVZFX0FTU0VSVF9IIDEKfCAjZGVmaW5lIEhBVkVfQ1RFUk1JRCAxCnwgI2RlZmluZSBIQVZFX0ZU SU1FIDEKfCAjZGVmaW5lIEhBVkVfRlRSVU5DQVRFIDEKfCAjZGVmaW5lIEhBVkVfRkNIT1dOIDEK fCAjZGVmaW5lIEhBVkVfR0VUQ1dEIDEKfCAjZGVmaW5lIEhBVkVfR0VURVVJRCAxCnwgI2RlZmlu ZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX0dNVElNRV9SIDEKfCAjZGVmaW5l IEhBVkVfSU9DVEwgMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwgI2RlZmluZSBIQVZFX01LRElS IDEKfCAjZGVmaW5lIEhBVkVfTUtOT0QgMQp8ICNkZWZpbmUgSEFWRV9OSUNFIDEKfCAjZGVmaW5l IEhBVkVfUElQRSAxCnwgI2RlZmluZSBIQVZFX19QSVBFIDEKfCAjZGVmaW5lIEhBVkVfUkVBRERJ Ul9SIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFWRV9SRU5BTUUgMQp8 ICNkZWZpbmUgSEFWRV9STURJUiAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBI QVZFX1NFVEVHSUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRFVUlEIDEKfCAjZGVmaW5lIEhBVkVfU0VU TE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfU0VUUEdJRCAxCnwgI2RlZmluZSBIQVZFX1NFVFNJRCAx CnwgI2RlZmluZSBIQVZFX1NJR0FDVElPTiAxCnwgI2RlZmluZSBIQVZFX1NJR0lOVEVSUlVQVCAx CnwgI2RlZmluZSBIQVZFX1NUUkZUSU1FIDEKfCAjZGVmaW5lIEhBVkVfU1RSUFRJTUUgMQp8ICNk ZWZpbmUgSEFWRV9TWU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAxCnwgI2RlZmluZSBIQVZF X1NZU0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9UQ0dFVFBHUlAgMQp8ICNkZWZpbmUgSEFWRV9UQ1NF VFBHUlAgMQp8ICNkZWZpbmUgSEFWRV9USU1FUyAxCnwgI2RlZmluZSBIQVZFX1VOQU1FIDEKfCAj ZGVmaW5lIEhBVkVfV0FJVFBJRCAxCnwgI2RlZmluZSBIQVZFX1NUUkRVUCAxCnwgI2RlZmluZSBI QVZFX1NZU1RFTSAxCnwgI2RlZmluZSBIQVZFX1VTTEVFUCAxCnwgI2RlZmluZSBIQVZFX0FURVhJ VCAxCnwgI2RlZmluZSBIQVZFX09OX0VYSVQgMQp8ICNkZWZpbmUgSEFWRV9DSE9XTiAxCnwgI2Rl ZmluZSBIQVZFX0xJTksgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX1RU WU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0dFVEdSRU5U IDEKfCAjZGVmaW5lIEhBVkVfS0lMTCAxCnwgI2RlZmluZSBIQVZFX0dFVFBQSUQgMQp8ICNkZWZp bmUgSEFWRV9HRVRQR1JQIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1NF VElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX0dFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX1NUUkNI UiAxCnwgI2RlZmluZSBIQVZFX1NUUkNNUCAxCnwgI2RlZmluZSBIQVZFX0lOREVYIDEKfCAjZGVm aW5lIEhBVkVfQkNPUFkgMQp8ICNkZWZpbmUgSEFWRV9NRU1DUFkgMQp8ICNkZWZpbmUgSEFWRV9S SU5ERVggMQp8ICNkZWZpbmUgSEFWRV9UUlVOQ0FURSAxCnwgI2RlZmluZSBIQVZFX1VOU0VURU5W IDEKfCAjZGVmaW5lIEhBVkVfSVNCTEFOSyAxCnwgI2RlZmluZSBIQVZFX1NUUk5DQVNFQ01QIDEK fCAjZGVmaW5lIEhBVkVfQ1JZUFRfSCAxCnwgI2RlZmluZSBIQVZFX05FVERCX0ggMQp8ICNkZWZp bmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2Rl ZmluZSBIQVZFX0NIUk9PVCAxCnwgI2RlZmluZSBIQVZFX0ZMT0NLIDEKfCAjZGVmaW5lIEhBVkVf R0VUTE9HSU4gMQp8ICNkZWZpbmUgSEFWRV9DVVNFUklEIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFJJ T1JJVFkgMQp8ICNkZWZpbmUgSEFWRV9TRVRQUklPUklUWSAxCnwgI2RlZmluZSBIQVZFX0dFVFBB U1MgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VU SE9TVE5BTUUgMAp8ICNkZWZpbmUgSEFWRV9DUllQVCAxCnwgI2RlZmluZSBIQVZFX0xJQkdNUCAx CnwgI2RlZmluZSBIQVZFX0lDT05WIDEKfCAjZGVmaW5lIEVOQUJMRV9OTFMgMQp8ICNkZWZpbmUg SEFWRV9HRVRURVhUIDEKfCAjZGVmaW5lIEhBVkVfRENHRVRURVhUIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9TVFJQVElNRSAxCnwgI2RlZmluZSBIQVZFX1VOSVhfRE9NQUlOX1NPQ0tFVFMgMQp8ICNk ZWZpbmUgSEFWRV9TT0NLRVRQQUlSIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JPVVBTIDEKfCAjZGVm aW5lIEhBVkVfU0VUR1JPVVBTIDEKfCAjZGVmaW5lIEhBVkVfU0VUUFdFTlQgMQp8ICNkZWZpbmUg SEFWRV9QQVVTRSAxCnwgI2RlZmluZSBIQVZFX1RaU0VUIDEKfCAjZGVmaW5lIEhBVkVfU0VUSE9T VEVOVCAxCnwgI2RlZmluZSBIQVZFX0VOREhPU1RFTlQgMQp8ICNkZWZpbmUgSEFWRV9TRVRQUk9U T0VOVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBST1RPRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EUFJP VE9FTlQgMQp8ICNkZWZpbmUgSEFWRV9TRVRTRVJWRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUU0VS VkVOVCAxCnwgI2RlZmluZSBIQVZFX0VORFNFUlZFTlQgMQp8ICNkZWZpbmUgSEFWRV9JTkVUX01B S0VBRERSIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9ORVRPRiAxCnwgI2RlZmluZSBIQVZFX0hTVFJF UlJPUiAxCnwgI2RlZmluZSBIQVZFX0lORVRfUFRPTiAxCnwgI2RlZmluZSBIQVZFX0lORVRfTlRP UCAxCnwgI2RlZmluZSBIQVZFX0hfRVJSTk8gMQp8ICNkZWZpbmUgSEFWRV9VSU5UMzJfVCAxCnwg LyogZW5kIGNvbmZkZWZzLmguICAqLwp8IAp8ICNpZmRlZiBIQVZFX1NZU19UWVBFU19ICnwgI2lu Y2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNlbmRpZgp8ICNpbmNsdWRlIDxuZXRpbmV0L2luLmg+Cnwg I2luY2x1ZGUgPHN5cy9zb2NrZXQuaD4KfCBpbnQKfCBtYWluICgpCnwgewp8IHN0cnVjdCBzb2Nr YWRkcl9pbjYgYTsgIGEuc2luNl9mYW1pbHkgPSBBRl9JTkVUNjsKfCAgIDsKfCAgIHJldHVybiAw Owp8IH0KY29uZmlndXJlOjM5MjEyOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTozOTIyMzogY2hlY2tp bmcgd2hldGhlciBzb2NrYWRkcl9pbjYgaGFzIHNpbjZfc2NvcGVfaWQKY29uZmlndXJlOjM5MjUz OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiBg bWFpbic6CmNvbmZ0ZXN0LmM6MTk0OiBlcnJvcjogc3RvcmFnZSBzaXplIG9mICdzb2snIGlzbid0 IGtub3duCmNvbmZpZ3VyZTozOTI1OTogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0g d2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJndWlsZSIK fCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZ3VpbGUiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJ T04gIjEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgImd1aWxlIDEuOC40Igp8ICNkZWZp bmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1ndWlsZUBnbnUub3JnIgp8ICNkZWZpbmUgU1REQ19I RUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf U1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdf SCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEK fCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAj ZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5l IEhBVkVfTElCTFRETCAxCnwgI2RlZmluZSBTQ01fV0FSTl9ERVBSRUNBVEVEX0RFRkFVTFQgInN1 bW1hcnkiCnwgI2RlZmluZSBHVUlMRV9VU0VfNjRfQ0FMTFMgMQp8ICNkZWZpbmUgSEFWRV9QT1NJ WCAxCnwgI2RlZmluZSBIQVZFX05FVFdPUktJTkcgMQp8ICNkZWZpbmUgU0laRU9GX0NIQVIgMQp8 ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1NIT1JUIDIK fCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9TSE9SVCAyCnwgI2RlZmluZSBTSVpFT0ZfSU5UIDQK fCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9JTlQgNAp8ICNkZWZpbmUgU0laRU9GX0xPTkcgNAp8 ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0 CnwgI2RlZmluZSBTSVpFT0ZfTE9OR19MT05HIDgKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9M T05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX19fSU5UNjQgMAp8ICNkZWZpbmUgU0laRU9GX1VO U0lHTkVEX19fSU5UNjQgMAp8ICNkZWZpbmUgU0laRU9GX1ZPSURfUCA0CnwgI2RlZmluZSBTSVpF T0ZfSU5UUFRSX1QgNAp8ICNkZWZpbmUgU0laRU9GX1VJTlRQVFJfVCA0CnwgI2RlZmluZSBTSVpF T0ZfUFRSRElGRl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9TSVpFX1QgNAp8ICNkZWZpbmUgU0laRU9G X09GRl9UIDgKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBF U19IIDEKfCAjZGVmaW5lIFNJWkVPRl9JTlRNQVhfVCA4CnwgI2RlZmluZSBTVERDX0hFQURFUlMg MQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUg MQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU9fSCAxCnwgI2Rl ZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUg SEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1BST0NFU1NfSCAxCnwgI2RlZmluZSBIQVZF X1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfUkVHRVhfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19J T0NUTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1RJTUVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1RE X0ggMQp8ICNkZWZpbmUgSEFWRV9VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNk ZWZpbmUgSEFWRV9HUlBfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZp bmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBH RVRHUk9VUFNfVCBnaWRfdAp8ICNkZWZpbmUgUkVUU0lHVFlQRSB2b2lkCnwgI2RlZmluZSBIQVZF X0xJQk0gMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUQllOQU1FIDEKfCAjZGVmaW5lIEhBVkVfQ09O TkVDVCAxCnwgI2RlZmluZSBIQVZFX0FTU0VSVF9IIDEKfCAjZGVmaW5lIEhBVkVfQ1RFUk1JRCAx CnwgI2RlZmluZSBIQVZFX0ZUSU1FIDEKfCAjZGVmaW5lIEhBVkVfRlRSVU5DQVRFIDEKfCAjZGVm aW5lIEhBVkVfRkNIT1dOIDEKfCAjZGVmaW5lIEhBVkVfR0VUQ1dEIDEKfCAjZGVmaW5lIEhBVkVf R0VURVVJRCAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX0dN VElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfSU9DVEwgMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwg I2RlZmluZSBIQVZFX01LRElSIDEKfCAjZGVmaW5lIEhBVkVfTUtOT0QgMQp8ICNkZWZpbmUgSEFW RV9OSUNFIDEKfCAjZGVmaW5lIEhBVkVfUElQRSAxCnwgI2RlZmluZSBIQVZFX19QSVBFIDEKfCAj ZGVmaW5lIEhBVkVfUkVBRERJUl9SIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZp bmUgSEFWRV9SRU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9STURJUiAxCnwgI2RlZmluZSBIQVZFX1NF TEVDVCAxCnwgI2RlZmluZSBIQVZFX1NFVEVHSUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRFVUlEIDEK fCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfU0VUUEdJRCAxCnwgI2Rl ZmluZSBIQVZFX1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX1NJR0FDVElPTiAxCnwgI2RlZmluZSBI QVZFX1NJR0lOVEVSUlVQVCAxCnwgI2RlZmluZSBIQVZFX1NUUkZUSU1FIDEKfCAjZGVmaW5lIEhB VkVfU1RSUFRJTUUgMQp8ICNkZWZpbmUgSEFWRV9TWU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVfU1lO QyAxCnwgI2RlZmluZSBIQVZFX1NZU0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9UQ0dFVFBHUlAgMQp8 ICNkZWZpbmUgSEFWRV9UQ1NFVFBHUlAgMQp8ICNkZWZpbmUgSEFWRV9USU1FUyAxCnwgI2RlZmlu ZSBIQVZFX1VOQU1FIDEKfCAjZGVmaW5lIEhBVkVfV0FJVFBJRCAxCnwgI2RlZmluZSBIQVZFX1NU UkRVUCAxCnwgI2RlZmluZSBIQVZFX1NZU1RFTSAxCnwgI2RlZmluZSBIQVZFX1VTTEVFUCAxCnwg I2RlZmluZSBIQVZFX0FURVhJVCAxCnwgI2RlZmluZSBIQVZFX09OX0VYSVQgMQp8ICNkZWZpbmUg SEFWRV9DSE9XTiAxCnwgI2RlZmluZSBIQVZFX0xJTksgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAx CnwgI2RlZmluZSBIQVZFX1RUWU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2Rl ZmluZSBIQVZFX0dFVEdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfS0lMTCAxCnwgI2RlZmluZSBIQVZF X0dFVFBQSUQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQR1JQIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAx CnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX0dFVElUSU1FUiAxCnwg I2RlZmluZSBIQVZFX1NUUkNIUiAxCnwgI2RlZmluZSBIQVZFX1NUUkNNUCAxCnwgI2RlZmluZSBI QVZFX0lOREVYIDEKfCAjZGVmaW5lIEhBVkVfQkNPUFkgMQp8ICNkZWZpbmUgSEFWRV9NRU1DUFkg MQp8ICNkZWZpbmUgSEFWRV9SSU5ERVggMQp8ICNkZWZpbmUgSEFWRV9UUlVOQ0FURSAxCnwgI2Rl ZmluZSBIQVZFX1VOU0VURU5WIDEKfCAjZGVmaW5lIEhBVkVfSVNCTEFOSyAxCnwgI2RlZmluZSBI QVZFX1NUUk5DQVNFQ01QIDEKfCAjZGVmaW5lIEhBVkVfQ1JZUFRfSCAxCnwgI2RlZmluZSBIQVZF X05FVERCX0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf UEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX0NIUk9PVCAxCnwgI2RlZmluZSBIQVZFX0ZMT0NL IDEKfCAjZGVmaW5lIEhBVkVfR0VUTE9HSU4gMQp8ICNkZWZpbmUgSEFWRV9DVVNFUklEIDEKfCAj ZGVmaW5lIEhBVkVfR0VUUFJJT1JJVFkgMQp8ICNkZWZpbmUgSEFWRV9TRVRQUklPUklUWSAxCnwg I2RlZmluZSBIQVZFX0dFVFBBU1MgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfU0VUSE9TVE5BTUUgMAp8ICNkZWZpbmUgSEFWRV9DUllQVCAxCnwgI2Rl ZmluZSBIQVZFX0xJQkdNUCAxCnwgI2RlZmluZSBIQVZFX0lDT05WIDEKfCAjZGVmaW5lIEVOQUJM RV9OTFMgMQp8ICNkZWZpbmUgSEFWRV9HRVRURVhUIDEKfCAjZGVmaW5lIEhBVkVfRENHRVRURVhU IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJQVElNRSAxCnwgI2RlZmluZSBIQVZFX1VOSVhfRE9N QUlOX1NPQ0tFVFMgMQp8ICNkZWZpbmUgSEFWRV9TT0NLRVRQQUlSIDEKfCAjZGVmaW5lIEhBVkVf R0VUR1JPVVBTIDEKfCAjZGVmaW5lIEhBVkVfU0VUR1JPVVBTIDEKfCAjZGVmaW5lIEhBVkVfU0VU UFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9QQVVTRSAxCnwgI2RlZmluZSBIQVZFX1RaU0VUIDEKfCAj ZGVmaW5lIEhBVkVfU0VUSE9TVEVOVCAxCnwgI2RlZmluZSBIQVZFX0VOREhPU1RFTlQgMQp8ICNk ZWZpbmUgSEFWRV9TRVRQUk9UT0VOVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBST1RPRU5UIDEKfCAj ZGVmaW5lIEhBVkVfRU5EUFJPVE9FTlQgMQp8ICNkZWZpbmUgSEFWRV9TRVRTRVJWRU5UIDEKfCAj ZGVmaW5lIEhBVkVfR0VUU0VSVkVOVCAxCnwgI2RlZmluZSBIQVZFX0VORFNFUlZFTlQgMQp8ICNk ZWZpbmUgSEFWRV9JTkVUX01BS0VBRERSIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9ORVRPRiAxCnwg I2RlZmluZSBIQVZFX0hTVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZFX0lORVRfUFRPTiAxCnwgI2Rl ZmluZSBIQVZFX0lORVRfTlRPUCAxCnwgI2RlZmluZSBIQVZFX0hfRVJSTk8gMQp8ICNkZWZpbmUg SEFWRV9VSU5UMzJfVCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8IAp8ICNpZmRlZiBIQVZF X1NZU19UWVBFU19ICnwgI2luY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNlbmRpZgp8ICNpbmNsdWRl IDxuZXRpbmV0L2luLmg+CnwgaW50CnwgbWFpbiAoKQp8IHsKfCBzdHJ1Y3Qgc29ja2FkZHJfaW42 IHNvazsgIHNvay5zaW42X3Njb3BlX2lkID0gMDsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29u ZmlndXJlOjM5Mjc1OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTozOTI4NjogY2hlY2tpbmcgZm9yIHN0 cnVjdCBzb2NrYWRkcl9pbjYuc2luNl9sZW4KY29uZmlndXJlOjM5MzE4OiBnY2MgLWMgLWcgLU8y ICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiBgbWFpbic6CmNvbmZ0ZXN0 LmM6MTk0OiBlcnJvcjogc3RvcmFnZSBzaXplIG9mICdhY19hZ2dyJyBpc24ndCBrbm93bgpjb25m dGVzdC5jOjE5NDogZXJyb3I6IHN0b3JhZ2Ugc2l6ZSBvZiBgYWNfYWdncicgaXNuJ3Qga25vd24K Y29uZmlndXJlOjM5MzI0OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6Cnwg LyogY29uZmRlZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgImd1aWxlIgp8ICNkZWZp bmUgUEFDS0FHRV9UQVJOQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMS44 LjQiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiZ3VpbGUgMS44LjQiCnwgI2RlZmluZSBQQUNL QUdFX0JVR1JFUE9SVCAiYnVnLWd1aWxlQGdudS5vcmciCnwgI2RlZmluZSBTVERDX0hFQURFUlMg MQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0gg MQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAj ZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZp bmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUg SEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgSEFWRV9M SUJMVERMIDEKfCAjZGVmaW5lIFNDTV9XQVJOX0RFUFJFQ0FURURfREVGQVVMVCAic3VtbWFyeSIK fCAjZGVmaW5lIEdVSUxFX1VTRV82NF9DQUxMUyAxCnwgI2RlZmluZSBIQVZFX1BPU0lYIDEKfCAj ZGVmaW5lIEhBVkVfTkVUV09SS0lORyAxCnwgI2RlZmluZSBTSVpFT0ZfQ0hBUiAxCnwgI2RlZmlu ZSBTSVpFT0ZfVU5TSUdORURfQ0hBUiAxCnwgI2RlZmluZSBTSVpFT0ZfU0hPUlQgMgp8ICNkZWZp bmUgU0laRU9GX1VOU0lHTkVEX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9JTlQgNAp8ICNkZWZp bmUgU0laRU9GX1VOU0lHTkVEX0lOVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA0CnwgI2RlZmlu ZSBTSVpFT0ZfVU5TSUdORURfTE9ORyA0CnwgI2RlZmluZSBTSVpFT0ZfU0laRV9UIDQKfCAjZGVm aW5lIFNJWkVPRl9MT05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xPTkdfTE9O RyA4CnwgI2RlZmluZSBTSVpFT0ZfX19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURf X19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0ZfVk9JRF9QIDQKfCAjZGVmaW5lIFNJWkVPRl9JTlRQ VFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfVUlOVFBUUl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9QVFJE SUZGX1QgNAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfT0ZGX1Qg OAp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8 ICNkZWZpbmUgU0laRU9GX0lOVE1BWF9UIDgKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2Rl ZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwgI2Rl ZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9JT19IIDEKfCAjZGVmaW5lIEhB VkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX01F TU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfUFJPQ0VTU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5H X0ggMQp8ICNkZWZpbmUgSEFWRV9SRUdFWF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lPQ1RMX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVCX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRVNf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUSU1F X0ggMQp8ICNkZWZpbmUgSEFWRV9USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwg I2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBI QVZFX0dSUF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZF X1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEdFVEdST1VQ U19UIGdpZF90CnwgI2RlZmluZSBSRVRTSUdUWVBFIHZvaWQKfCAjZGVmaW5lIEhBVkVfTElCTSAx CnwgI2RlZmluZSBIQVZFX0dFVEhPU1RCWU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9DT05ORUNUIDEK fCAjZGVmaW5lIEhBVkVfQVNTRVJUX0ggMQp8ICNkZWZpbmUgSEFWRV9DVEVSTUlEIDEKfCAjZGVm aW5lIEhBVkVfRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9GVFJVTkNBVEUgMQp8ICNkZWZpbmUgSEFW RV9GQ0hPV04gMQp8ICNkZWZpbmUgSEFWRV9HRVRDV0QgMQp8ICNkZWZpbmUgSEFWRV9HRVRFVUlE IDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfR01USU1FX1Ig MQp8ICNkZWZpbmUgSEFWRV9JT0NUTCAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5l IEhBVkVfTUtESVIgMQp8ICNkZWZpbmUgSEFWRV9NS05PRCAxCnwgI2RlZmluZSBIQVZFX05JQ0Ug MQp8ICNkZWZpbmUgSEFWRV9QSVBFIDEKfCAjZGVmaW5lIEhBVkVfX1BJUEUgMQp8ICNkZWZpbmUg SEFWRV9SRUFERElSX1IgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZF X1JFTkFNRSAxCnwgI2RlZmluZSBIQVZFX1JNRElSIDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEK fCAjZGVmaW5lIEhBVkVfU0VURUdJRCAxCnwgI2RlZmluZSBIQVZFX1NFVEVVSUQgMQp8ICNkZWZp bmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9TRVRQR0lEIDEKfCAjZGVmaW5lIEhB VkVfU0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVfU0lHQUNUSU9OIDEKfCAjZGVmaW5lIEhBVkVfU0lH SU5URVJSVVBUIDEKfCAjZGVmaW5lIEhBVkVfU1RSRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9TVFJQ VElNRSAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9TWU5DIDEKfCAj ZGVmaW5lIEhBVkVfU1lTQ09ORiAxCnwgI2RlZmluZSBIQVZFX1RDR0VUUEdSUCAxCnwgI2RlZmlu ZSBIQVZFX1RDU0VUUEdSUCAxCnwgI2RlZmluZSBIQVZFX1RJTUVTIDEKfCAjZGVmaW5lIEhBVkVf VU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9XQUlUUElEIDEKfCAjZGVmaW5lIEhBVkVfU1RSRFVQIDEK fCAjZGVmaW5lIEhBVkVfU1lTVEVNIDEKfCAjZGVmaW5lIEhBVkVfVVNMRUVQIDEKfCAjZGVmaW5l IEhBVkVfQVRFWElUIDEKfCAjZGVmaW5lIEhBVkVfT05fRVhJVCAxCnwgI2RlZmluZSBIQVZFX0NI T1dOIDEKfCAjZGVmaW5lIEhBVkVfTElOSyAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVm aW5lIEhBVkVfVFRZTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhB VkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9LSUxMIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFBJ RCAxCnwgI2RlZmluZSBIQVZFX0dFVFBHUlAgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVm aW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSVRJTUVSIDEKfCAjZGVmaW5l IEhBVkVfU1RSQ0hSIDEKfCAjZGVmaW5lIEhBVkVfU1RSQ01QIDEKfCAjZGVmaW5lIEhBVkVfSU5E RVggMQp8ICNkZWZpbmUgSEFWRV9CQ09QWSAxCnwgI2RlZmluZSBIQVZFX01FTUNQWSAxCnwgI2Rl ZmluZSBIQVZFX1JJTkRFWCAxCnwgI2RlZmluZSBIQVZFX1RSVU5DQVRFIDEKfCAjZGVmaW5lIEhB VkVfVU5TRVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9JU0JMQU5LIDEKfCAjZGVmaW5lIEhBVkVfU1RS TkNBU0VDTVAgMQp8ICNkZWZpbmUgSEFWRV9DUllQVF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUREJf SCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklM RV9IIDEKfCAjZGVmaW5lIEhBVkVfQ0hST09UIDEKfCAjZGVmaW5lIEhBVkVfRkxPQ0sgMQp8ICNk ZWZpbmUgSEFWRV9HRVRMT0dJTiAxCnwgI2RlZmluZSBIQVZFX0NVU0VSSUQgMQp8ICNkZWZpbmUg SEFWRV9HRVRQUklPUklUWSAxCnwgI2RlZmluZSBIQVZFX1NFVFBSSU9SSVRZIDEKfCAjZGVmaW5l IEhBVkVfR0VUUEFTUyAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9TRVRIT1NUTkFNRSAwCnwgI2RlZmluZSBIQVZFX0NSWVBUIDEKfCAjZGVmaW5lIEhB VkVfTElCR01QIDEKfCAjZGVmaW5lIEhBVkVfSUNPTlYgMQp8ICNkZWZpbmUgRU5BQkxFX05MUyAx CnwgI2RlZmluZSBIQVZFX0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9EQ0dFVFRFWFQgMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX1NUUlBUSU1FIDEKfCAjZGVmaW5lIEhBVkVfVU5JWF9ET01BSU5fU09D S0VUUyAxCnwgI2RlZmluZSBIQVZFX1NPQ0tFVFBBSVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUk9V UFMgMQp8ICNkZWZpbmUgSEFWRV9TRVRHUk9VUFMgMQp8ICNkZWZpbmUgSEFWRV9TRVRQV0VOVCAx CnwgI2RlZmluZSBIQVZFX1BBVVNFIDEKfCAjZGVmaW5lIEhBVkVfVFpTRVQgMQp8ICNkZWZpbmUg SEFWRV9TRVRIT1NURU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5ESE9TVEVOVCAxCnwgI2RlZmluZSBI QVZFX1NFVFBST1RPRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFJPVE9FTlQgMQp8ICNkZWZpbmUg SEFWRV9FTkRQUk9UT0VOVCAxCnwgI2RlZmluZSBIQVZFX1NFVFNFUlZFTlQgMQp8ICNkZWZpbmUg SEFWRV9HRVRTRVJWRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EU0VSVkVOVCAxCnwgI2RlZmluZSBI QVZFX0lORVRfTUFLRUFERFIgMQp8ICNkZWZpbmUgSEFWRV9JTkVUX05FVE9GIDEKfCAjZGVmaW5l IEhBVkVfSFNUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9QVE9OIDEKfCAjZGVmaW5lIEhB VkVfSU5FVF9OVE9QIDEKfCAjZGVmaW5lIEhBVkVfSF9FUlJOTyAxCnwgI2RlZmluZSBIQVZFX1VJ TlQzMl9UIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2lmZGVmIEhBVkVfU1lTX1RZUEVT X0gKfCAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgI2VuZGlmCnwgI2luY2x1ZGUgPG5ldGluZXQv aW4uaD4KfCAKfCBpbnQKfCBtYWluICgpCnwgewp8IHN0YXRpYyBzdHJ1Y3Qgc29ja2FkZHJfaW42 IGFjX2FnZ3I7CnwgaWYgKGFjX2FnZ3Iuc2luNl9sZW4pCnwgcmV0dXJuIDA7CnwgICA7CnwgICBy ZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZTozOTM2MTogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+ JjUKY29uZnRlc3QuYzogSW4gZnVuY3Rpb24gYG1haW4nOgpjb25mdGVzdC5jOjE5NDogZXJyb3I6 IHN0b3JhZ2Ugc2l6ZSBvZiAnYWNfYWdncicgaXNuJ3Qga25vd24KY29uZnRlc3QuYzoxOTQ6IGVy cm9yOiBzdG9yYWdlIHNpemUgb2YgYGFjX2FnZ3InIGlzbid0IGtub3duCmNvbmZpZ3VyZTozOTM2 NzogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmgu ICAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFS TkFNRSAiZ3VpbGUiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjEuOC40Igp8ICNkZWZpbmUg UEFDS0FHRV9TVFJJTkcgImd1aWxlIDEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQg ImJ1Zy1ndWlsZUBnbnUub3JnIgp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhB VkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01F TU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQ RVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0gg MQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEhBVkVfTElCTFRETCAxCnwgI2Rl ZmluZSBTQ01fV0FSTl9ERVBSRUNBVEVEX0RFRkFVTFQgInN1bW1hcnkiCnwgI2RlZmluZSBHVUlM RV9VU0VfNjRfQ0FMTFMgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWCAxCnwgI2RlZmluZSBIQVZFX05F VFdPUktJTkcgMQp8ICNkZWZpbmUgU0laRU9GX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1VOU0lH TkVEX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9VTlNJ R05FRF9TSE9SVCAyCnwgI2RlZmluZSBTSVpFT0ZfSU5UIDQKfCAjZGVmaW5lIFNJWkVPRl9VTlNJ R05FRF9JTlQgNAp8ICNkZWZpbmUgU0laRU9GX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1VOU0lH TkVEX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9O R19MT05HIDgKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9MT05HX0xPTkcgOAp8ICNkZWZpbmUg U0laRU9GX19fSU5UNjQgMAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX19fSU5UNjQgMAp8ICNk ZWZpbmUgU0laRU9GX1ZPSURfUCA0CnwgI2RlZmluZSBTSVpFT0ZfSU5UUFRSX1QgNAp8ICNkZWZp bmUgU0laRU9GX1VJTlRQVFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfUFRSRElGRl9UIDQKfCAjZGVm aW5lIFNJWkVPRl9TSVpFX1QgNAp8ICNkZWZpbmUgU0laRU9GX09GRl9UIDgKfCAjZGVmaW5lIEhB VkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIFNJWkVP Rl9JTlRNQVhfVCA4CnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJF TlRfSCAxCnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9TWVNf V0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU9fSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEK fCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2Rl ZmluZSBIQVZFX1BST0NFU1NfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5l IEhBVkVfUkVHRVhfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19JT0NUTF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19USU1FQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVTX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVElNRV9IIDEKfCAjZGVmaW5l IEhBVkVfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9V VElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9HUlBfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8 ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBHRVRHUk9VUFNfVCBnaWRfdAp8ICNk ZWZpbmUgUkVUU0lHVFlQRSB2b2lkCnwgI2RlZmluZSBIQVZFX0xJQk0gMQp8ICNkZWZpbmUgSEFW RV9HRVRIT1NUQllOQU1FIDEKfCAjZGVmaW5lIEhBVkVfQ09OTkVDVCAxCnwgI2RlZmluZSBIQVZF X0FTU0VSVF9IIDEKfCAjZGVmaW5lIEhBVkVfQ1RFUk1JRCAxCnwgI2RlZmluZSBIQVZFX0ZUSU1F IDEKfCAjZGVmaW5lIEhBVkVfRlRSVU5DQVRFIDEKfCAjZGVmaW5lIEhBVkVfRkNIT1dOIDEKfCAj ZGVmaW5lIEhBVkVfR0VUQ1dEIDEKfCAjZGVmaW5lIEhBVkVfR0VURVVJRCAxCnwgI2RlZmluZSBI QVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX0dNVElNRV9SIDEKfCAjZGVmaW5lIEhB VkVfSU9DVEwgMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwgI2RlZmluZSBIQVZFX01LRElSIDEK fCAjZGVmaW5lIEhBVkVfTUtOT0QgMQp8ICNkZWZpbmUgSEFWRV9OSUNFIDEKfCAjZGVmaW5lIEhB VkVfUElQRSAxCnwgI2RlZmluZSBIQVZFX19QSVBFIDEKfCAjZGVmaW5lIEhBVkVfUkVBRERJUl9S IDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFWRV9SRU5BTUUgMQp8ICNk ZWZpbmUgSEFWRV9STURJUiAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZF X1NFVEVHSUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRFVUlEIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9D QUxFIDEKfCAjZGVmaW5lIEhBVkVfU0VUUEdJRCAxCnwgI2RlZmluZSBIQVZFX1NFVFNJRCAxCnwg I2RlZmluZSBIQVZFX1NJR0FDVElPTiAxCnwgI2RlZmluZSBIQVZFX1NJR0lOVEVSUlVQVCAxCnwg I2RlZmluZSBIQVZFX1NUUkZUSU1FIDEKfCAjZGVmaW5lIEhBVkVfU1RSUFRJTUUgMQp8ICNkZWZp bmUgSEFWRV9TWU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAxCnwgI2RlZmluZSBIQVZFX1NZ U0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9UQ0dFVFBHUlAgMQp8ICNkZWZpbmUgSEFWRV9UQ1NFVFBH UlAgMQp8ICNkZWZpbmUgSEFWRV9USU1FUyAxCnwgI2RlZmluZSBIQVZFX1VOQU1FIDEKfCAjZGVm aW5lIEhBVkVfV0FJVFBJRCAxCnwgI2RlZmluZSBIQVZFX1NUUkRVUCAxCnwgI2RlZmluZSBIQVZF X1NZU1RFTSAxCnwgI2RlZmluZSBIQVZFX1VTTEVFUCAxCnwgI2RlZmluZSBIQVZFX0FURVhJVCAx CnwgI2RlZmluZSBIQVZFX09OX0VYSVQgMQp8ICNkZWZpbmUgSEFWRV9DSE9XTiAxCnwgI2RlZmlu ZSBIQVZFX0xJTksgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX1RUWU5B TUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0dFVEdSRU5UIDEK fCAjZGVmaW5lIEhBVkVfS0lMTCAxCnwgI2RlZmluZSBIQVZFX0dFVFBQSUQgMQp8ICNkZWZpbmUg SEFWRV9HRVRQR1JQIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1NFVElU SU1FUiAxCnwgI2RlZmluZSBIQVZFX0dFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX1NUUkNIUiAx CnwgI2RlZmluZSBIQVZFX1NUUkNNUCAxCnwgI2RlZmluZSBIQVZFX0lOREVYIDEKfCAjZGVmaW5l IEhBVkVfQkNPUFkgMQp8ICNkZWZpbmUgSEFWRV9NRU1DUFkgMQp8ICNkZWZpbmUgSEFWRV9SSU5E RVggMQp8ICNkZWZpbmUgSEFWRV9UUlVOQ0FURSAxCnwgI2RlZmluZSBIQVZFX1VOU0VURU5WIDEK fCAjZGVmaW5lIEhBVkVfSVNCTEFOSyAxCnwgI2RlZmluZSBIQVZFX1NUUk5DQVNFQ01QIDEKfCAj ZGVmaW5lIEhBVkVfQ1JZUFRfSCAxCnwgI2RlZmluZSBIQVZFX05FVERCX0ggMQp8ICNkZWZpbmUg SEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBI QVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmlu ZSBIQVZFX0NIUk9PVCAxCnwgI2RlZmluZSBIQVZFX0ZMT0NLIDEKfCAjZGVmaW5lIEhBVkVfR0VU TE9HSU4gMQp8ICNkZWZpbmUgSEFWRV9DVVNFUklEIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFJJT1JJ VFkgMQp8ICNkZWZpbmUgSEFWRV9TRVRQUklPUklUWSAxCnwgI2RlZmluZSBIQVZFX0dFVFBBU1Mg MQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VUSE9T VE5BTUUgMAp8ICNkZWZpbmUgSEFWRV9DUllQVCAxCnwgI2RlZmluZSBIQVZFX0xJQkdNUCAxCnwg I2RlZmluZSBIQVZFX0lDT05WIDEKfCAjZGVmaW5lIEVOQUJMRV9OTFMgMQp8ICNkZWZpbmUgSEFW RV9HRVRURVhUIDEKfCAjZGVmaW5lIEhBVkVfRENHRVRURVhUIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9TVFJQVElNRSAxCnwgI2RlZmluZSBIQVZFX1VOSVhfRE9NQUlOX1NPQ0tFVFMgMQp8ICNkZWZp bmUgSEFWRV9TT0NLRVRQQUlSIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JPVVBTIDEKfCAjZGVmaW5l IEhBVkVfU0VUR1JPVVBTIDEKfCAjZGVmaW5lIEhBVkVfU0VUUFdFTlQgMQp8ICNkZWZpbmUgSEFW RV9QQVVTRSAxCnwgI2RlZmluZSBIQVZFX1RaU0VUIDEKfCAjZGVmaW5lIEhBVkVfU0VUSE9TVEVO VCAxCnwgI2RlZmluZSBIQVZFX0VOREhPU1RFTlQgMQp8ICNkZWZpbmUgSEFWRV9TRVRQUk9UT0VO VCAxCnwgI2RlZmluZSBIQVZFX0dFVFBST1RPRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EUFJPVE9F TlQgMQp8ICNkZWZpbmUgSEFWRV9TRVRTRVJWRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUU0VSVkVO VCAxCnwgI2RlZmluZSBIQVZFX0VORFNFUlZFTlQgMQp8ICNkZWZpbmUgSEFWRV9JTkVUX01BS0VB RERSIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9ORVRPRiAxCnwgI2RlZmluZSBIQVZFX0hTVFJFUlJP UiAxCnwgI2RlZmluZSBIQVZFX0lORVRfUFRPTiAxCnwgI2RlZmluZSBIQVZFX0lORVRfTlRPUCAx CnwgI2RlZmluZSBIQVZFX0hfRVJSTk8gMQp8ICNkZWZpbmUgSEFWRV9VSU5UMzJfVCAxCnwgLyog ZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpZmRlZiBIQVZFX1NZU19UWVBFU19ICnwgI2luY2x1ZGUg PHN5cy90eXBlcy5oPgp8ICNlbmRpZgp8ICNpbmNsdWRlIDxuZXRpbmV0L2luLmg+CnwgCnwgaW50 CnwgbWFpbiAoKQp8IHsKfCBzdGF0aWMgc3RydWN0IHNvY2thZGRyX2luNiBhY19hZ2dyOwp8IGlm IChzaXplb2YgYWNfYWdnci5zaW42X2xlbikKfCByZXR1cm4gMDsKfCAgIDsKfCAgIHJldHVybiAw Owp8IH0KY29uZmlndXJlOjM5Mzg1OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTozOTM5NzogY2hlY2tp bmcgd2hldGhlciBsb2NhbHRpbWUgY2FjaGVzIFRaCmNvbmZpZ3VyZTozOTQ1MjogZ2NjIC1vIGNv bmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1sZ21wIC1sY3J5cHQgLWxtIC1sbHRkbCAg PiY1CmNvbmZpZ3VyZTozOTQ1NTogJD8gPSAwCmNvbmZpZ3VyZTozOTQ2MTogLi9jb25mdGVzdC5l eGUKY29uZmlndXJlOjM5NDY0OiAkPyA9IDEKY29uZmlndXJlOiBwcm9ncmFtIGV4aXRlZCB3aXRo IHN0YXR1cyAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmgu ICAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFS TkFNRSAiZ3VpbGUiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjEuOC40Igp8ICNkZWZpbmUg UEFDS0FHRV9TVFJJTkcgImd1aWxlIDEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQg ImJ1Zy1ndWlsZUBnbnUub3JnIgp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhB VkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01F TU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQ RVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0gg MQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEhBVkVfTElCTFRETCAxCnwgI2Rl ZmluZSBTQ01fV0FSTl9ERVBSRUNBVEVEX0RFRkFVTFQgInN1bW1hcnkiCnwgI2RlZmluZSBHVUlM RV9VU0VfNjRfQ0FMTFMgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWCAxCnwgI2RlZmluZSBIQVZFX05F VFdPUktJTkcgMQp8ICNkZWZpbmUgU0laRU9GX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1VOU0lH TkVEX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9VTlNJ R05FRF9TSE9SVCAyCnwgI2RlZmluZSBTSVpFT0ZfSU5UIDQKfCAjZGVmaW5lIFNJWkVPRl9VTlNJ R05FRF9JTlQgNAp8ICNkZWZpbmUgU0laRU9GX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1VOU0lH TkVEX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9O R19MT05HIDgKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9MT05HX0xPTkcgOAp8ICNkZWZpbmUg U0laRU9GX19fSU5UNjQgMAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX19fSU5UNjQgMAp8ICNk ZWZpbmUgU0laRU9GX1ZPSURfUCA0CnwgI2RlZmluZSBTSVpFT0ZfSU5UUFRSX1QgNAp8ICNkZWZp bmUgU0laRU9GX1VJTlRQVFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfUFRSRElGRl9UIDQKfCAjZGVm aW5lIFNJWkVPRl9TSVpFX1QgNAp8ICNkZWZpbmUgU0laRU9GX09GRl9UIDgKfCAjZGVmaW5lIEhB VkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIFNJWkVP Rl9JTlRNQVhfVCA4CnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJF TlRfSCAxCnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9TWVNf V0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU9fSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEK fCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2Rl ZmluZSBIQVZFX1BST0NFU1NfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5l IEhBVkVfUkVHRVhfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19JT0NUTF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19USU1FQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVTX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVElNRV9IIDEKfCAjZGVmaW5l IEhBVkVfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9V VElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9HUlBfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8 ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBHRVRHUk9VUFNfVCBnaWRfdAp8ICNk ZWZpbmUgUkVUU0lHVFlQRSB2b2lkCnwgI2RlZmluZSBIQVZFX0xJQk0gMQp8ICNkZWZpbmUgSEFW RV9HRVRIT1NUQllOQU1FIDEKfCAjZGVmaW5lIEhBVkVfQ09OTkVDVCAxCnwgI2RlZmluZSBIQVZF X0FTU0VSVF9IIDEKfCAjZGVmaW5lIEhBVkVfQ1RFUk1JRCAxCnwgI2RlZmluZSBIQVZFX0ZUSU1F IDEKfCAjZGVmaW5lIEhBVkVfRlRSVU5DQVRFIDEKfCAjZGVmaW5lIEhBVkVfRkNIT1dOIDEKfCAj ZGVmaW5lIEhBVkVfR0VUQ1dEIDEKfCAjZGVmaW5lIEhBVkVfR0VURVVJRCAxCnwgI2RlZmluZSBI QVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX0dNVElNRV9SIDEKfCAjZGVmaW5lIEhB VkVfSU9DVEwgMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwgI2RlZmluZSBIQVZFX01LRElSIDEK fCAjZGVmaW5lIEhBVkVfTUtOT0QgMQp8ICNkZWZpbmUgSEFWRV9OSUNFIDEKfCAjZGVmaW5lIEhB VkVfUElQRSAxCnwgI2RlZmluZSBIQVZFX19QSVBFIDEKfCAjZGVmaW5lIEhBVkVfUkVBRERJUl9S IDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFWRV9SRU5BTUUgMQp8ICNk ZWZpbmUgSEFWRV9STURJUiAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZF X1NFVEVHSUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRFVUlEIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9D QUxFIDEKfCAjZGVmaW5lIEhBVkVfU0VUUEdJRCAxCnwgI2RlZmluZSBIQVZFX1NFVFNJRCAxCnwg I2RlZmluZSBIQVZFX1NJR0FDVElPTiAxCnwgI2RlZmluZSBIQVZFX1NJR0lOVEVSUlVQVCAxCnwg I2RlZmluZSBIQVZFX1NUUkZUSU1FIDEKfCAjZGVmaW5lIEhBVkVfU1RSUFRJTUUgMQp8ICNkZWZp bmUgSEFWRV9TWU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAxCnwgI2RlZmluZSBIQVZFX1NZ U0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9UQ0dFVFBHUlAgMQp8ICNkZWZpbmUgSEFWRV9UQ1NFVFBH UlAgMQp8ICNkZWZpbmUgSEFWRV9USU1FUyAxCnwgI2RlZmluZSBIQVZFX1VOQU1FIDEKfCAjZGVm aW5lIEhBVkVfV0FJVFBJRCAxCnwgI2RlZmluZSBIQVZFX1NUUkRVUCAxCnwgI2RlZmluZSBIQVZF X1NZU1RFTSAxCnwgI2RlZmluZSBIQVZFX1VTTEVFUCAxCnwgI2RlZmluZSBIQVZFX0FURVhJVCAx CnwgI2RlZmluZSBIQVZFX09OX0VYSVQgMQp8ICNkZWZpbmUgSEFWRV9DSE9XTiAxCnwgI2RlZmlu ZSBIQVZFX0xJTksgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX1RUWU5B TUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0dFVEdSRU5UIDEK fCAjZGVmaW5lIEhBVkVfS0lMTCAxCnwgI2RlZmluZSBIQVZFX0dFVFBQSUQgMQp8ICNkZWZpbmUg SEFWRV9HRVRQR1JQIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1NFVElU SU1FUiAxCnwgI2RlZmluZSBIQVZFX0dFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX1NUUkNIUiAx CnwgI2RlZmluZSBIQVZFX1NUUkNNUCAxCnwgI2RlZmluZSBIQVZFX0lOREVYIDEKfCAjZGVmaW5l IEhBVkVfQkNPUFkgMQp8ICNkZWZpbmUgSEFWRV9NRU1DUFkgMQp8ICNkZWZpbmUgSEFWRV9SSU5E RVggMQp8ICNkZWZpbmUgSEFWRV9UUlVOQ0FURSAxCnwgI2RlZmluZSBIQVZFX1VOU0VURU5WIDEK fCAjZGVmaW5lIEhBVkVfSVNCTEFOSyAxCnwgI2RlZmluZSBIQVZFX1NUUk5DQVNFQ01QIDEKfCAj ZGVmaW5lIEhBVkVfQ1JZUFRfSCAxCnwgI2RlZmluZSBIQVZFX05FVERCX0ggMQp8ICNkZWZpbmUg SEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBI QVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmlu ZSBIQVZFX0NIUk9PVCAxCnwgI2RlZmluZSBIQVZFX0ZMT0NLIDEKfCAjZGVmaW5lIEhBVkVfR0VU TE9HSU4gMQp8ICNkZWZpbmUgSEFWRV9DVVNFUklEIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFJJT1JJ VFkgMQp8ICNkZWZpbmUgSEFWRV9TRVRQUklPUklUWSAxCnwgI2RlZmluZSBIQVZFX0dFVFBBU1Mg MQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VUSE9T VE5BTUUgMAp8ICNkZWZpbmUgSEFWRV9DUllQVCAxCnwgI2RlZmluZSBIQVZFX0xJQkdNUCAxCnwg I2RlZmluZSBIQVZFX0lDT05WIDEKfCAjZGVmaW5lIEVOQUJMRV9OTFMgMQp8ICNkZWZpbmUgSEFW RV9HRVRURVhUIDEKfCAjZGVmaW5lIEhBVkVfRENHRVRURVhUIDEKfCAjZGVmaW5lIEhBVkVfREVD TF9TVFJQVElNRSAxCnwgI2RlZmluZSBIQVZFX1VOSVhfRE9NQUlOX1NPQ0tFVFMgMQp8ICNkZWZp bmUgSEFWRV9TT0NLRVRQQUlSIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JPVVBTIDEKfCAjZGVmaW5l IEhBVkVfU0VUR1JPVVBTIDEKfCAjZGVmaW5lIEhBVkVfU0VUUFdFTlQgMQp8ICNkZWZpbmUgSEFW RV9QQVVTRSAxCnwgI2RlZmluZSBIQVZFX1RaU0VUIDEKfCAjZGVmaW5lIEhBVkVfU0VUSE9TVEVO VCAxCnwgI2RlZmluZSBIQVZFX0VOREhPU1RFTlQgMQp8ICNkZWZpbmUgSEFWRV9TRVRQUk9UT0VO VCAxCnwgI2RlZmluZSBIQVZFX0dFVFBST1RPRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EUFJPVE9F TlQgMQp8ICNkZWZpbmUgSEFWRV9TRVRTRVJWRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUU0VSVkVO VCAxCnwgI2RlZmluZSBIQVZFX0VORFNFUlZFTlQgMQp8ICNkZWZpbmUgSEFWRV9JTkVUX01BS0VB RERSIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9ORVRPRiAxCnwgI2RlZmluZSBIQVZFX0hTVFJFUlJP UiAxCnwgI2RlZmluZSBIQVZFX0lORVRfUFRPTiAxCnwgI2RlZmluZSBIQVZFX0lORVRfTlRPUCAx CnwgI2RlZmluZSBIQVZFX0hfRVJSTk8gMQp8ICNkZWZpbmUgSEFWRV9VSU5UMzJfVCAxCnwgLyog ZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDx0aW1lLmg+CnwgI2lmIFNURENfSEVBREVS Uwp8ICMgaW5jbHVkZSA8c3RkbGliLmg+CnwgI2VuZGlmCnwgZXh0ZXJuIGNoYXIgKiplbnZpcm9u Owp8IHVuc2V0X1RaICgpCnwgewp8ICAgY2hhciAqKmZyb20sICoqdG87CnwgICBmb3IgKHRvID0g ZnJvbSA9IGVudmlyb247ICgqdG8gPSAqZnJvbSk7IGZyb20rKykKfCAgICAgaWYgKCEgKHRvWzBd WzBdID09ICdUJyAmJiB0b1swXVsxXSA9PSAnWicgJiYgdG9bMF1bMl0gPT0gJz0nKSkKfCAgICAg ICB0bysrOwp8IH0KfCBjaGFyIFRaX0dNVDBbXSA9ICJUWj1HTVQwIjsKfCBjaGFyIFRaX1BTVDhb XSA9ICJUWj1QU1Q4IjsKfCBtYWluKCkKfCB7CnwgICB0aW1lX3Qgbm93ID0gdGltZSAoKHRpbWVf dCAqKSAwKTsKfCAgIGludCBob3VyX0dNVDAsIGhvdXJfdW5zZXQ7CnwgICBpZiAocHV0ZW52IChU Wl9HTVQwKSAhPSAwKQp8ICAgICBleGl0ICgxKTsKfCAgIGhvdXJfR01UMCA9IGxvY2FsdGltZSAo Jm5vdyktPnRtX2hvdXI7CnwgICB1bnNldF9UWiAoKTsKfCAgIGhvdXJfdW5zZXQgPSBsb2NhbHRp bWUgKCZub3cpLT50bV9ob3VyOwp8ICAgaWYgKHB1dGVudiAoVFpfUFNUOCkgIT0gMCkKfCAgICAg ZXhpdCAoMSk7CnwgICBpZiAobG9jYWx0aW1lICgmbm93KS0+dG1faG91ciA9PSBob3VyX0dNVDAp CnwgICAgIGV4aXQgKDEpOwp8ICAgdW5zZXRfVFogKCk7CnwgICBpZiAobG9jYWx0aW1lICgmbm93 KS0+dG1faG91ciAhPSBob3VyX3Vuc2V0KQp8ICAgICBleGl0ICgxKTsKfCAgIGV4aXQgKDApOwp8 IH0KY29uZmlndXJlOjM5NDg1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6Mzk0OTY6IGNoZWNraW5n IGZvciByZXN0YXJ0YWJsZSBzeXN0ZW0gY2FsbHMKY29uZmlndXJlOjM5NTYwOiBnY2MgLW8gY29u ZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxnbXAgLWxjcnlwdCAtbG0gLWxsdGRsICA+ JjUKY29uZmlndXJlOjM5NTYzOiAkPyA9IDAKY29uZmlndXJlOjM5NTY5OiAuL2NvbmZ0ZXN0LmV4 ZQpjb25maWd1cmU6Mzk1NzI6ICQ/ID0gMApjb25maWd1cmU6Mzk1ODg6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZTozOTYwMzogY2hlY2tpbmcgZm9yIHJlZ2NvbXAKY29uZmlndXJlOjM5NjQ4OiBnY2Mg LW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxnbXAgLWxjcnlwdCAtbG0gLWxs dGRsICA+JjUKY29uZmlndXJlOjM5NjU0OiAkPyA9IDAKY29uZmlndXJlOjM5NjczOiByZXN1bHQ6 IHllcwpjb25maWd1cmU6NDAwMDM6IGNoZWNraW5nIGZvciBpbmV0X2F0b24KY29uZmlndXJlOjQw MDU5OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxnbXAgLWxjcnlw dCAtbG0gLWxsdGRsICA+JjUKY29uZmlndXJlOjQwMDY1OiAkPyA9IDAKY29uZmlndXJlOjQwMDgz OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NDAwMDM6IGNoZWNraW5nIGZvciBwdXRlbnYKY29uZmln dXJlOjQwMDU5OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxnbXAg LWxjcnlwdCAtbG0gLWxsdGRsICA+JjUKY29uZmlndXJlOjQwMDY1OiAkPyA9IDAKY29uZmlndXJl OjQwMDgzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6NDAwMDM6IGNoZWNraW5nIGZvciBzdHJlcnJv cgpjb25maWd1cmU6NDAwNTk6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3Qu YyAtbGdtcCAtbGNyeXB0IC1sbSAtbGx0ZGwgID4mNQpjb25maWd1cmU6NDAwNjU6ICQ/ID0gMApj b25maWd1cmU6NDAwODM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo0MDAwMzogY2hlY2tpbmcgZm9y IG1lbW1vdmUKY29uZmlndXJlOjQwMDU5OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNv bmZ0ZXN0LmMgLWxnbXAgLWxjcnlwdCAtbG0gLWxsdGRsICA+JjUKY29uZnRlc3QuYzoyMTU6IHdh cm5pbmc6IGNvbmZsaWN0aW5nIHR5cGVzIGZvciBidWlsdC1pbiBmdW5jdGlvbiAnbWVtbW92ZScK Y29uZmlndXJlOjQwMDY1OiAkPyA9IDAKY29uZmlndXJlOjQwMDgzOiByZXN1bHQ6IHllcwpjb25m aWd1cmU6NDAwMDM6IGNoZWNraW5nIGZvciBta3N0ZW1wCmNvbmZpZ3VyZTo0MDA1OTogZ2NjIC1v IGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1sZ21wIC1sY3J5cHQgLWxtIC1sbHRk bCAgPiY1CmNvbmZpZ3VyZTo0MDA2NTogJD8gPSAwCmNvbmZpZ3VyZTo0MDA4MzogcmVzdWx0OiB5 ZXMKY29uZmlndXJlOjQwMTE5OiBjaGVja2luZyBmbG9hdGluZ3BvaW50LmggdXNhYmlsaXR5CmNv bmZpZ3VyZTo0MDEzNjogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzoy Mjc6Mjc6IGZsb2F0aW5ncG9pbnQuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpjb25maWd1 cmU6NDAxNDI6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25m ZGVmcy5oLiAgKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiZ3VpbGUiCnwgI2RlZmluZSBQQUNL QUdFX1RBUk5BTUUgImd1aWxlIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIxLjguNCIKfCAj ZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJndWlsZSAxLjguNCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVH UkVQT1JUICJidWctZ3VpbGVAZ251Lm9yZyIKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2Rl ZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2Rl ZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUg SEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZF X0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VO SVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRExGQ05fSCAxCnwgI2RlZmluZSBIQVZFX0xJQkxUREwg MQp8ICNkZWZpbmUgU0NNX1dBUk5fREVQUkVDQVRFRF9ERUZBVUxUICJzdW1tYXJ5Igp8ICNkZWZp bmUgR1VJTEVfVVNFXzY0X0NBTExTIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVggMQp8ICNkZWZpbmUg SEFWRV9ORVRXT1JLSU5HIDEKfCAjZGVmaW5lIFNJWkVPRl9DSEFSIDEKfCAjZGVmaW5lIFNJWkVP Rl9VTlNJR05FRF9DSEFSIDEKfCAjZGVmaW5lIFNJWkVPRl9TSE9SVCAyCnwgI2RlZmluZSBTSVpF T0ZfVU5TSUdORURfU0hPUlQgMgp8ICNkZWZpbmUgU0laRU9GX0lOVCA0CnwgI2RlZmluZSBTSVpF T0ZfVU5TSUdORURfSU5UIDQKfCAjZGVmaW5lIFNJWkVPRl9MT05HIDQKfCAjZGVmaW5lIFNJWkVP Rl9VTlNJR05FRF9MT05HIDQKfCAjZGVmaW5lIFNJWkVPRl9TSVpFX1QgNAp8ICNkZWZpbmUgU0la RU9GX0xPTkdfTE9ORyA4CnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfTE9OR19MT05HIDgKfCAj ZGVmaW5lIFNJWkVPRl9fX0lOVDY0IDAKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9fX0lOVDY0 IDAKfCAjZGVmaW5lIFNJWkVPRl9WT0lEX1AgNAp8ICNkZWZpbmUgU0laRU9GX0lOVFBUUl9UIDQK fCAjZGVmaW5lIFNJWkVPRl9VSU5UUFRSX1QgNAp8ICNkZWZpbmUgU0laRU9GX1BUUkRJRkZfVCA0 CnwgI2RlZmluZSBTSVpFT0ZfU0laRV9UIDQKfCAjZGVmaW5lIFNJWkVPRl9PRkZfVCA4CnwgI2Rl ZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmlu ZSBTSVpFT0ZfSU5UTUFYX1QgOAp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhB VkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX0lPX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1J VFNfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0gg MQp8ICNkZWZpbmUgSEFWRV9QUk9DRVNTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwg I2RlZmluZSBIQVZFX1JFR0VYX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfSU9DVExfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfVElNRUJfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FU19IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRJTUVfSCAxCnwg I2RlZmluZSBIQVZFX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5l IEhBVkVfVVRJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfR1JQ X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5H U19IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgR0VUR1JPVVBTX1QgZ2lk X3QKfCAjZGVmaW5lIFJFVFNJR1RZUEUgdm9pZAp8ICNkZWZpbmUgSEFWRV9MSUJNIDEKfCAjZGVm aW5lIEhBVkVfR0VUSE9TVEJZTkFNRSAxCnwgI2RlZmluZSBIQVZFX0NPTk5FQ1QgMQp8ICNkZWZp bmUgSEFWRV9BU1NFUlRfSCAxCnwgI2RlZmluZSBIQVZFX0NURVJNSUQgMQp8ICNkZWZpbmUgSEFW RV9GVElNRSAxCnwgI2RlZmluZSBIQVZFX0ZUUlVOQ0FURSAxCnwgI2RlZmluZSBIQVZFX0ZDSE9X TiAxCnwgI2RlZmluZSBIQVZFX0dFVENXRCAxCnwgI2RlZmluZSBIQVZFX0dFVEVVSUQgMQp8ICNk ZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9HTVRJTUVfUiAxCnwgI2Rl ZmluZSBIQVZFX0lPQ1RMIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9N S0RJUiAxCnwgI2RlZmluZSBIQVZFX01LTk9EIDEKfCAjZGVmaW5lIEhBVkVfTklDRSAxCnwgI2Rl ZmluZSBIQVZFX1BJUEUgMQp8ICNkZWZpbmUgSEFWRV9fUElQRSAxCnwgI2RlZmluZSBIQVZFX1JF QURESVJfUiAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfUkVOQU1F IDEKfCAjZGVmaW5lIEhBVkVfUk1ESVIgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZp bmUgSEFWRV9TRVRFR0lEIDEKfCAjZGVmaW5lIEhBVkVfU0VURVVJRCAxCnwgI2RlZmluZSBIQVZF X1NFVExPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX1NFVFBHSUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRT SUQgMQp8ICNkZWZpbmUgSEFWRV9TSUdBQ1RJT04gMQp8ICNkZWZpbmUgSEFWRV9TSUdJTlRFUlJV UFQgMQp8ICNkZWZpbmUgSEFWRV9TVFJGVElNRSAxCnwgI2RlZmluZSBIQVZFX1NUUlBUSU1FIDEK fCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX1NZTkMgMQp8ICNkZWZpbmUg SEFWRV9TWVNDT05GIDEKfCAjZGVmaW5lIEhBVkVfVENHRVRQR1JQIDEKfCAjZGVmaW5lIEhBVkVf VENTRVRQR1JQIDEKfCAjZGVmaW5lIEhBVkVfVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9VTkFNRSAx CnwgI2RlZmluZSBIQVZFX1dBSVRQSUQgMQp8ICNkZWZpbmUgSEFWRV9TVFJEVVAgMQp8ICNkZWZp bmUgSEFWRV9TWVNURU0gMQp8ICNkZWZpbmUgSEFWRV9VU0xFRVAgMQp8ICNkZWZpbmUgSEFWRV9B VEVYSVQgMQp8ICNkZWZpbmUgSEFWRV9PTl9FWElUIDEKfCAjZGVmaW5lIEhBVkVfQ0hPV04gMQp8 ICNkZWZpbmUgSEFWRV9MSU5LIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFW RV9UVFlOQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRH UkVOVCAxCnwgI2RlZmluZSBIQVZFX0tJTEwgMQp8ICNkZWZpbmUgSEFWRV9HRVRQUElEIDEKfCAj ZGVmaW5lIEhBVkVfR0VUUEdSUCAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFW RV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9T VFJDSFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJDTVAgMQp8ICNkZWZpbmUgSEFWRV9JTkRFWCAxCnwg I2RlZmluZSBIQVZFX0JDT1BZIDEKfCAjZGVmaW5lIEhBVkVfTUVNQ1BZIDEKfCAjZGVmaW5lIEhB VkVfUklOREVYIDEKfCAjZGVmaW5lIEhBVkVfVFJVTkNBVEUgMQp8ICNkZWZpbmUgSEFWRV9VTlNF VEVOViAxCnwgI2RlZmluZSBIQVZFX0lTQkxBTksgMQp8ICNkZWZpbmUgSEFWRV9TVFJOQ0FTRUNN UCAxCnwgI2RlZmluZSBIQVZFX0NSWVBUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVREQl9IIDEKfCAj ZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8 ICNkZWZpbmUgSEFWRV9DSFJPT1QgMQp8ICNkZWZpbmUgSEFWRV9GTE9DSyAxCnwgI2RlZmluZSBI QVZFX0dFVExPR0lOIDEKfCAjZGVmaW5lIEhBVkVfQ1VTRVJJRCAxCnwgI2RlZmluZSBIQVZFX0dF VFBSSU9SSVRZIDEKfCAjZGVmaW5lIEhBVkVfU0VUUFJJT1JJVFkgMQp8ICNkZWZpbmUgSEFWRV9H RVRQQVNTIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9ERUNM X1NFVEhPU1ROQU1FIDAKfCAjZGVmaW5lIEhBVkVfQ1JZUFQgMQp8ICNkZWZpbmUgSEFWRV9MSUJH TVAgMQp8ICNkZWZpbmUgSEFWRV9JQ09OViAxCnwgI2RlZmluZSBFTkFCTEVfTkxTIDEKfCAjZGVm aW5lIEhBVkVfR0VUVEVYVCAxCnwgI2RlZmluZSBIQVZFX0RDR0VUVEVYVCAxCnwgI2RlZmluZSBI QVZFX0RFQ0xfU1RSUFRJTUUgMQp8ICNkZWZpbmUgSEFWRV9VTklYX0RPTUFJTl9TT0NLRVRTIDEK fCAjZGVmaW5lIEhBVkVfU09DS0VUUEFJUiAxCnwgI2RlZmluZSBIQVZFX0dFVEdST1VQUyAxCnwg I2RlZmluZSBIQVZFX1NFVEdST1VQUyAxCnwgI2RlZmluZSBIQVZFX1NFVFBXRU5UIDEKfCAjZGVm aW5lIEhBVkVfUEFVU0UgMQp8ICNkZWZpbmUgSEFWRV9UWlNFVCAxCnwgI2RlZmluZSBIQVZFX1NF VEhPU1RFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRIT1NURU5UIDEKfCAjZGVmaW5lIEhBVkVfU0VU UFJPVE9FTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQUk9UT0VOVCAxCnwgI2RlZmluZSBIQVZFX0VO RFBST1RPRU5UIDEKfCAjZGVmaW5lIEhBVkVfU0VUU0VSVkVOVCAxCnwgI2RlZmluZSBIQVZFX0dF VFNFUlZFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRTRVJWRU5UIDEKfCAjZGVmaW5lIEhBVkVfSU5F VF9NQUtFQUREUiAxCnwgI2RlZmluZSBIQVZFX0lORVRfTkVUT0YgMQp8ICNkZWZpbmUgSEFWRV9I U1RSRVJST1IgMQp8ICNkZWZpbmUgSEFWRV9JTkVUX1BUT04gMQp8ICNkZWZpbmUgSEFWRV9JTkVU X05UT1AgMQp8ICNkZWZpbmUgSEFWRV9IX0VSUk5PIDEKfCAjZGVmaW5lIEhBVkVfVUlOVDMyX1Qg MQp8ICNkZWZpbmUgTE9DQUxUSU1FX0NBQ0hFIDEKfCAjZGVmaW5lIEhBVkVfUkVTVEFSVEFCTEVf U1lTQ0FMTFMgMQp8ICNkZWZpbmUgSEFWRV9SRUdDT01QIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9B VE9OIDEKfCAjZGVmaW5lIEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfU1RSRVJST1IgMQp8 ICNkZWZpbmUgSEFWRV9NRU1NT1ZFIDEKfCAjZGVmaW5lIEhBVkVfTUtTVEVNUCAxCnwgLyogZW5k IGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxzdGRpby5oPgp8ICNpZmRlZiBIQVZFX1NZU19U WVBFU19ICnwgIyBpbmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9T WVNfU1RBVF9ICnwgIyBpbmNsdWRlIDxzeXMvc3RhdC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBTVERD X0hFQURFUlMKfCAjIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgaW5jbHVkZSA8c3RkZGVmLmg+Cnwg I2Vsc2UKfCAjIGlmZGVmIEhBVkVfU1RETElCX0gKfCAjICBpbmNsdWRlIDxzdGRsaWIuaD4KfCAj IGVuZGlmCnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RSSU5HX0gKfCAjIGlmICFkZWZpbmVkIFNU RENfSEVBREVSUyAmJiBkZWZpbmVkIEhBVkVfTUVNT1JZX0gKfCAjICBpbmNsdWRlIDxtZW1vcnku aD4KfCAjIGVuZGlmCnwgIyBpbmNsdWRlIDxzdHJpbmcuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFW RV9TVFJJTkdTX0gKfCAjIGluY2x1ZGUgPHN0cmluZ3MuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFW RV9JTlRUWVBFU19ICnwgIyBpbmNsdWRlIDxpbnR0eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBI QVZFX1NURElOVF9ICnwgIyBpbmNsdWRlIDxzdGRpbnQuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFW RV9VTklTVERfSAp8ICMgaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgI2luY2x1ZGUgPGZs b2F0aW5ncG9pbnQuaD4KY29uZmlndXJlOjQwMTU2OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo0MDE2 MDogY2hlY2tpbmcgZmxvYXRpbmdwb2ludC5oIHByZXNlbmNlCmNvbmZpZ3VyZTo0MDE3NTogZ2Nj IC1FICBjb25mdGVzdC5jCmNvbmZ0ZXN0LmM6MTk0OjI3OiBmbG9hdGluZ3BvaW50Lmg6IE5vIHN1 Y2ggZmlsZSBvciBkaXJlY3RvcnkKY29uZmlndXJlOjQwMTgxOiAkPyA9IDEKY29uZmlndXJlOiBm YWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdF X05BTUUgImd1aWxlIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJndWlsZSIKfCAjZGVmaW5l IFBBQ0tBR0VfVkVSU0lPTiAiMS44LjQiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiZ3VpbGUg MS44LjQiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWd1aWxlQGdudS5vcmciCnwg I2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmlu ZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFW RV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVf U1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNO X0ggMQp8ICNkZWZpbmUgSEFWRV9MSUJMVERMIDEKfCAjZGVmaW5lIFNDTV9XQVJOX0RFUFJFQ0FU RURfREVGQVVMVCAic3VtbWFyeSIKfCAjZGVmaW5lIEdVSUxFX1VTRV82NF9DQUxMUyAxCnwgI2Rl ZmluZSBIQVZFX1BPU0lYIDEKfCAjZGVmaW5lIEhBVkVfTkVUV09SS0lORyAxCnwgI2RlZmluZSBT SVpFT0ZfQ0hBUiAxCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfQ0hBUiAxCnwgI2RlZmluZSBT SVpFT0ZfU0hPUlQgMgp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX1NIT1JUIDIKfCAjZGVmaW5l IFNJWkVPRl9JTlQgNAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0lOVCA0CnwgI2RlZmluZSBT SVpFT0ZfTE9ORyA0CnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfTE9ORyA0CnwgI2RlZmluZSBT SVpFT0ZfU0laRV9UIDQKfCAjZGVmaW5lIFNJWkVPRl9MT05HX0xPTkcgOAp8ICNkZWZpbmUgU0la RU9GX1VOU0lHTkVEX0xPTkdfTE9ORyA4CnwgI2RlZmluZSBTSVpFT0ZfX19JTlQ2NCAwCnwgI2Rl ZmluZSBTSVpFT0ZfVU5TSUdORURfX19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0ZfVk9JRF9QIDQK fCAjZGVmaW5lIFNJWkVPRl9JTlRQVFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfVUlOVFBUUl9UIDQK fCAjZGVmaW5lIFNJWkVPRl9QVFJESUZGX1QgNAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0Cnwg I2RlZmluZSBTSVpFT0ZfT0ZGX1QgOAp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmlu ZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgU0laRU9GX0lOVE1BWF9UIDgKfCAjZGVmaW5l IFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIFRJTUVf V0lUSF9TWVNfVElNRSAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFW RV9JT19IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0Nf SCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfUFJPQ0VTU19IIDEK fCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9SRUdFWF9IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX0lPQ1RMX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVCX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfVElNRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9USU1FX0ggMQp8ICNkZWZp bmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFW RV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX0dSUF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05B TUVfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9I IDEKfCAjZGVmaW5lIEdFVEdST1VQU19UIGdpZF90CnwgI2RlZmluZSBSRVRTSUdUWVBFIHZvaWQK fCAjZGVmaW5lIEhBVkVfTElCTSAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1RCWU5BTUUgMQp8ICNk ZWZpbmUgSEFWRV9DT05ORUNUIDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJUX0ggMQp8ICNkZWZpbmUg SEFWRV9DVEVSTUlEIDEKfCAjZGVmaW5lIEhBVkVfRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9GVFJV TkNBVEUgMQp8ICNkZWZpbmUgSEFWRV9GQ0hPV04gMQp8ICNkZWZpbmUgSEFWRV9HRVRDV0QgMQp8 ICNkZWZpbmUgSEFWRV9HRVRFVUlEIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAj ZGVmaW5lIEhBVkVfR01USU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9JT0NUTCAxCnwgI2RlZmluZSBI QVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfTUtESVIgMQp8ICNkZWZpbmUgSEFWRV9NS05PRCAx CnwgI2RlZmluZSBIQVZFX05JQ0UgMQp8ICNkZWZpbmUgSEFWRV9QSVBFIDEKfCAjZGVmaW5lIEhB VkVfX1BJUEUgMQp8ICNkZWZpbmUgSEFWRV9SRUFERElSX1IgMQp8ICNkZWZpbmUgSEFWRV9SRUFE TElOSyAxCnwgI2RlZmluZSBIQVZFX1JFTkFNRSAxCnwgI2RlZmluZSBIQVZFX1JNRElSIDEKfCAj ZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfU0VURUdJRCAxCnwgI2RlZmluZSBI QVZFX1NFVEVVSUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9T RVRQR0lEIDEKfCAjZGVmaW5lIEhBVkVfU0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVfU0lHQUNUSU9O IDEKfCAjZGVmaW5lIEhBVkVfU0lHSU5URVJSVVBUIDEKfCAjZGVmaW5lIEhBVkVfU1RSRlRJTUUg MQp8ICNkZWZpbmUgSEFWRV9TVFJQVElNRSAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNk ZWZpbmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVfU1lTQ09ORiAxCnwgI2RlZmluZSBIQVZF X1RDR0VUUEdSUCAxCnwgI2RlZmluZSBIQVZFX1RDU0VUUEdSUCAxCnwgI2RlZmluZSBIQVZFX1RJ TUVTIDEKfCAjZGVmaW5lIEhBVkVfVU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9XQUlUUElEIDEKfCAj ZGVmaW5lIEhBVkVfU1RSRFVQIDEKfCAjZGVmaW5lIEhBVkVfU1lTVEVNIDEKfCAjZGVmaW5lIEhB VkVfVVNMRUVQIDEKfCAjZGVmaW5lIEhBVkVfQVRFWElUIDEKfCAjZGVmaW5lIEhBVkVfT05fRVhJ VCAxCnwgI2RlZmluZSBIQVZFX0NIT1dOIDEKfCAjZGVmaW5lIEhBVkVfTElOSyAxCnwgI2RlZmlu ZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfVFRZTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dF VFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9LSUxMIDEK fCAjZGVmaW5lIEhBVkVfR0VUUFBJRCAxCnwgI2RlZmluZSBIQVZFX0dFVFBHUlAgMQp8ICNkZWZp bmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVf R0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfU1RSQ0hSIDEKfCAjZGVmaW5lIEhBVkVfU1RSQ01Q IDEKfCAjZGVmaW5lIEhBVkVfSU5ERVggMQp8ICNkZWZpbmUgSEFWRV9CQ09QWSAxCnwgI2RlZmlu ZSBIQVZFX01FTUNQWSAxCnwgI2RlZmluZSBIQVZFX1JJTkRFWCAxCnwgI2RlZmluZSBIQVZFX1RS VU5DQVRFIDEKfCAjZGVmaW5lIEhBVkVfVU5TRVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9JU0JMQU5L IDEKfCAjZGVmaW5lIEhBVkVfU1RSTkNBU0VDTVAgMQp8ICNkZWZpbmUgSEFWRV9DUllQVF9IIDEK fCAjZGVmaW5lIEhBVkVfTkVUREJfSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfQ0hST09UIDEKfCAjZGVm aW5lIEhBVkVfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9HRVRMT0dJTiAxCnwgI2RlZmluZSBIQVZF X0NVU0VSSUQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQUklPUklUWSAxCnwgI2RlZmluZSBIQVZFX1NF VFBSSU9SSVRZIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFTUyAxCnwgI2RlZmluZSBIQVZFX0dFVEhP U1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRVRIT1NUTkFNRSAwCnwgI2RlZmluZSBIQVZF X0NSWVBUIDEKfCAjZGVmaW5lIEhBVkVfTElCR01QIDEKfCAjZGVmaW5lIEhBVkVfSUNPTlYgMQp8 ICNkZWZpbmUgRU5BQkxFX05MUyAxCnwgI2RlZmluZSBIQVZFX0dFVFRFWFQgMQp8ICNkZWZpbmUg SEFWRV9EQ0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUlBUSU1FIDEKfCAjZGVmaW5l IEhBVkVfVU5JWF9ET01BSU5fU09DS0VUUyAxCnwgI2RlZmluZSBIQVZFX1NPQ0tFVFBBSVIgMQp8 ICNkZWZpbmUgSEFWRV9HRVRHUk9VUFMgMQp8ICNkZWZpbmUgSEFWRV9TRVRHUk9VUFMgMQp8ICNk ZWZpbmUgSEFWRV9TRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX1BBVVNFIDEKfCAjZGVmaW5lIEhB VkVfVFpTRVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRIT1NURU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5E SE9TVEVOVCAxCnwgI2RlZmluZSBIQVZFX1NFVFBST1RPRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VU UFJPVE9FTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRQUk9UT0VOVCAxCnwgI2RlZmluZSBIQVZFX1NF VFNFUlZFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRTRVJWRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5E U0VSVkVOVCAxCnwgI2RlZmluZSBIQVZFX0lORVRfTUFLRUFERFIgMQp8ICNkZWZpbmUgSEFWRV9J TkVUX05FVE9GIDEKfCAjZGVmaW5lIEhBVkVfSFNUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfSU5F VF9QVE9OIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9OVE9QIDEKfCAjZGVmaW5lIEhBVkVfSF9FUlJO TyAxCnwgI2RlZmluZSBIQVZFX1VJTlQzMl9UIDEKfCAjZGVmaW5lIExPQ0FMVElNRV9DQUNIRSAx CnwgI2RlZmluZSBIQVZFX1JFU1RBUlRBQkxFX1NZU0NBTExTIDEKfCAjZGVmaW5lIEhBVkVfUkVH Q09NUCAxCnwgI2RlZmluZSBIQVZFX0lORVRfQVRPTiAxCnwgI2RlZmluZSBIQVZFX1BVVEVOViAx CnwgI2RlZmluZSBIQVZFX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfTUVNTU9WRSAxCnwgI2Rl ZmluZSBIQVZFX01LU1RFTVAgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8 ZmxvYXRpbmdwb2ludC5oPgpjb25maWd1cmU6NDAxOTU6IHJlc3VsdDogbm8KY29uZmlndXJlOjQw MjI4OiBjaGVja2luZyBmb3IgZmxvYXRpbmdwb2ludC5oCmNvbmZpZ3VyZTo0MDIzNjogcmVzdWx0 OiBubwpjb25maWd1cmU6NDAxMTk6IGNoZWNraW5nIGllZWVmcC5oIHVzYWJpbGl0eQpjb25maWd1 cmU6NDAxMzY6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo0MDE0Mjog JD8gPSAwCmNvbmZpZ3VyZTo0MDE1NjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjQwMTYwOiBjaGVj a2luZyBpZWVlZnAuaCBwcmVzZW5jZQpjb25maWd1cmU6NDAxNzU6IGdjYyAtRSAgY29uZnRlc3Qu Ywpjb25maWd1cmU6NDAxODE6ICQ/ID0gMApjb25maWd1cmU6NDAxOTU6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZTo0MDIyODogY2hlY2tpbmcgZm9yIGllZWVmcC5oCmNvbmZpZ3VyZTo0MDIzNjogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjQwMTE5OiBjaGVja2luZyBuYW4uaCB1c2FiaWxpdHkKY29uZmln dXJlOjQwMTM2OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOjIyODox NzogbmFuLmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKY29uZmlndXJlOjQwMTQyOiAkPyA9 IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwg I2RlZmluZSBQQUNLQUdFX05BTUUgImd1aWxlIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJn dWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMS44LjQiCnwgI2RlZmluZSBQQUNLQUdF X1NUUklORyAiZ3VpbGUgMS44LjQiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWd1 aWxlQGdudS5vcmciCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNf VFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERM SUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0gg MQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEK fCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2Rl ZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgSEFWRV9MSUJMVERMIDEKfCAjZGVmaW5lIFND TV9XQVJOX0RFUFJFQ0FURURfREVGQVVMVCAic3VtbWFyeSIKfCAjZGVmaW5lIEdVSUxFX1VTRV82 NF9DQUxMUyAxCnwgI2RlZmluZSBIQVZFX1BPU0lYIDEKfCAjZGVmaW5lIEhBVkVfTkVUV09SS0lO RyAxCnwgI2RlZmluZSBTSVpFT0ZfQ0hBUiAxCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfQ0hB UiAxCnwgI2RlZmluZSBTSVpFT0ZfU0hPUlQgMgp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX1NI T1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9JTlQgNAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0lO VCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA0CnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfTE9O RyA0CnwgI2RlZmluZSBTSVpFT0ZfU0laRV9UIDQKfCAjZGVmaW5lIFNJWkVPRl9MT05HX0xPTkcg OAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xPTkdfTE9ORyA4CnwgI2RlZmluZSBTSVpFT0Zf X19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfX19JTlQ2NCAwCnwgI2RlZmluZSBT SVpFT0ZfVk9JRF9QIDQKfCAjZGVmaW5lIFNJWkVPRl9JTlRQVFJfVCA0CnwgI2RlZmluZSBTSVpF T0ZfVUlOVFBUUl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9QVFJESUZGX1QgNAp8ICNkZWZpbmUgU0la RU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfT0ZGX1QgOAp8ICNkZWZpbmUgSEFWRV9TVERJ TlRfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgU0laRU9GX0lOVE1B WF9UIDgKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEK fCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0gg MQp8ICNkZWZpbmUgSEFWRV9JT19IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZp bmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhB VkVfUFJPQ0VTU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9S RUdFWF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lPQ1RMX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf U0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1RJTUVCX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9U SU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0gg MQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX0dSUF9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmlu ZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEdFVEdST1VQU19UIGdpZF90CnwgI2RlZmluZSBS RVRTSUdUWVBFIHZvaWQKfCAjZGVmaW5lIEhBVkVfTElCTSAxCnwgI2RlZmluZSBIQVZFX0dFVEhP U1RCWU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9DT05ORUNUIDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJU X0ggMQp8ICNkZWZpbmUgSEFWRV9DVEVSTUlEIDEKfCAjZGVmaW5lIEhBVkVfRlRJTUUgMQp8ICNk ZWZpbmUgSEFWRV9GVFJVTkNBVEUgMQp8ICNkZWZpbmUgSEFWRV9GQ0hPV04gMQp8ICNkZWZpbmUg SEFWRV9HRVRDV0QgMQp8ICNkZWZpbmUgSEFWRV9HRVRFVUlEIDEKfCAjZGVmaW5lIEhBVkVfR0VU VElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfR01USU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9JT0NU TCAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfTUtESVIgMQp8ICNkZWZp bmUgSEFWRV9NS05PRCAxCnwgI2RlZmluZSBIQVZFX05JQ0UgMQp8ICNkZWZpbmUgSEFWRV9QSVBF IDEKfCAjZGVmaW5lIEhBVkVfX1BJUEUgMQp8ICNkZWZpbmUgSEFWRV9SRUFERElSX1IgMQp8ICNk ZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX1JFTkFNRSAxCnwgI2RlZmluZSBI QVZFX1JNRElSIDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfU0VURUdJ RCAxCnwgI2RlZmluZSBIQVZFX1NFVEVVSUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8 ICNkZWZpbmUgSEFWRV9TRVRQR0lEIDEKfCAjZGVmaW5lIEhBVkVfU0VUU0lEIDEKfCAjZGVmaW5l IEhBVkVfU0lHQUNUSU9OIDEKfCAjZGVmaW5lIEhBVkVfU0lHSU5URVJSVVBUIDEKfCAjZGVmaW5l IEhBVkVfU1RSRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9TVFJQVElNRSAxCnwgI2RlZmluZSBIQVZF X1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVfU1lTQ09ORiAx CnwgI2RlZmluZSBIQVZFX1RDR0VUUEdSUCAxCnwgI2RlZmluZSBIQVZFX1RDU0VUUEdSUCAxCnwg I2RlZmluZSBIQVZFX1RJTUVTIDEKfCAjZGVmaW5lIEhBVkVfVU5BTUUgMQp8ICNkZWZpbmUgSEFW RV9XQUlUUElEIDEKfCAjZGVmaW5lIEhBVkVfU1RSRFVQIDEKfCAjZGVmaW5lIEhBVkVfU1lTVEVN IDEKfCAjZGVmaW5lIEhBVkVfVVNMRUVQIDEKfCAjZGVmaW5lIEhBVkVfQVRFWElUIDEKfCAjZGVm aW5lIEhBVkVfT05fRVhJVCAxCnwgI2RlZmluZSBIQVZFX0NIT1dOIDEKfCAjZGVmaW5lIEhBVkVf TElOSyAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfVFRZTkFNRSAxCnwg I2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZp bmUgSEFWRV9LSUxMIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFBJRCAxCnwgI2RlZmluZSBIQVZFX0dF VFBHUlAgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEK fCAjZGVmaW5lIEhBVkVfR0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfU1RSQ0hSIDEKfCAjZGVm aW5lIEhBVkVfU1RSQ01QIDEKfCAjZGVmaW5lIEhBVkVfSU5ERVggMQp8ICNkZWZpbmUgSEFWRV9C Q09QWSAxCnwgI2RlZmluZSBIQVZFX01FTUNQWSAxCnwgI2RlZmluZSBIQVZFX1JJTkRFWCAxCnwg I2RlZmluZSBIQVZFX1RSVU5DQVRFIDEKfCAjZGVmaW5lIEhBVkVfVU5TRVRFTlYgMQp8ICNkZWZp bmUgSEFWRV9JU0JMQU5LIDEKfCAjZGVmaW5lIEhBVkVfU1RSTkNBU0VDTVAgMQp8ICNkZWZpbmUg SEFWRV9DUllQVF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUREJfSCAxCnwgI2RlZmluZSBIQVZFX1BU SFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVf Q0hST09UIDEKfCAjZGVmaW5lIEhBVkVfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9HRVRMT0dJTiAx CnwgI2RlZmluZSBIQVZFX0NVU0VSSUQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQUklPUklUWSAxCnwg I2RlZmluZSBIQVZFX1NFVFBSSU9SSVRZIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFTUyAxCnwgI2Rl ZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRVRIT1NUTkFNRSAw CnwgI2RlZmluZSBIQVZFX0NSWVBUIDEKfCAjZGVmaW5lIEhBVkVfTElCR01QIDEKfCAjZGVmaW5l IEhBVkVfSUNPTlYgMQp8ICNkZWZpbmUgRU5BQkxFX05MUyAxCnwgI2RlZmluZSBIQVZFX0dFVFRF WFQgMQp8ICNkZWZpbmUgSEFWRV9EQ0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUlBU SU1FIDEKfCAjZGVmaW5lIEhBVkVfVU5JWF9ET01BSU5fU09DS0VUUyAxCnwgI2RlZmluZSBIQVZF X1NPQ0tFVFBBSVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUk9VUFMgMQp8ICNkZWZpbmUgSEFWRV9T RVRHUk9VUFMgMQp8ICNkZWZpbmUgSEFWRV9TRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX1BBVVNF IDEKfCAjZGVmaW5lIEhBVkVfVFpTRVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRIT1NURU5UIDEKfCAj ZGVmaW5lIEhBVkVfRU5ESE9TVEVOVCAxCnwgI2RlZmluZSBIQVZFX1NFVFBST1RPRU5UIDEKfCAj ZGVmaW5lIEhBVkVfR0VUUFJPVE9FTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRQUk9UT0VOVCAxCnwg I2RlZmluZSBIQVZFX1NFVFNFUlZFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRTRVJWRU5UIDEKfCAj ZGVmaW5lIEhBVkVfRU5EU0VSVkVOVCAxCnwgI2RlZmluZSBIQVZFX0lORVRfTUFLRUFERFIgMQp8 ICNkZWZpbmUgSEFWRV9JTkVUX05FVE9GIDEKfCAjZGVmaW5lIEhBVkVfSFNUUkVSUk9SIDEKfCAj ZGVmaW5lIEhBVkVfSU5FVF9QVE9OIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9OVE9QIDEKfCAjZGVm aW5lIEhBVkVfSF9FUlJOTyAxCnwgI2RlZmluZSBIQVZFX1VJTlQzMl9UIDEKfCAjZGVmaW5lIExP Q0FMVElNRV9DQUNIRSAxCnwgI2RlZmluZSBIQVZFX1JFU1RBUlRBQkxFX1NZU0NBTExTIDEKfCAj ZGVmaW5lIEhBVkVfUkVHQ09NUCAxCnwgI2RlZmluZSBIQVZFX0lORVRfQVRPTiAxCnwgI2RlZmlu ZSBIQVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVf TUVNTU9WRSAxCnwgI2RlZmluZSBIQVZFX01LU1RFTVAgMQp8ICNkZWZpbmUgSEFWRV9JRUVFRlBf SCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxzdGRpby5oPgp8ICNpZmRl ZiBIQVZFX1NZU19UWVBFU19ICnwgIyBpbmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAjZW5kaWYKfCAj aWZkZWYgSEFWRV9TWVNfU1RBVF9ICnwgIyBpbmNsdWRlIDxzeXMvc3RhdC5oPgp8ICNlbmRpZgp8 ICNpZmRlZiBTVERDX0hFQURFUlMKfCAjIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgaW5jbHVkZSA8 c3RkZGVmLmg+CnwgI2Vsc2UKfCAjIGlmZGVmIEhBVkVfU1RETElCX0gKfCAjICBpbmNsdWRlIDxz dGRsaWIuaD4KfCAjIGVuZGlmCnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RSSU5HX0gKfCAjIGlm ICFkZWZpbmVkIFNURENfSEVBREVSUyAmJiBkZWZpbmVkIEhBVkVfTUVNT1JZX0gKfCAjICBpbmNs dWRlIDxtZW1vcnkuaD4KfCAjIGVuZGlmCnwgIyBpbmNsdWRlIDxzdHJpbmcuaD4KfCAjZW5kaWYK fCAjaWZkZWYgSEFWRV9TVFJJTkdTX0gKfCAjIGluY2x1ZGUgPHN0cmluZ3MuaD4KfCAjZW5kaWYK fCAjaWZkZWYgSEFWRV9JTlRUWVBFU19ICnwgIyBpbmNsdWRlIDxpbnR0eXBlcy5oPgp8ICNlbmRp Zgp8ICNpZmRlZiBIQVZFX1NURElOVF9ICnwgIyBpbmNsdWRlIDxzdGRpbnQuaD4KfCAjZW5kaWYK fCAjaWZkZWYgSEFWRV9VTklTVERfSAp8ICMgaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwg I2luY2x1ZGUgPG5hbi5oPgpjb25maWd1cmU6NDAxNTY6IHJlc3VsdDogbm8KY29uZmlndXJlOjQw MTYwOiBjaGVja2luZyBuYW4uaCBwcmVzZW5jZQpjb25maWd1cmU6NDAxNzU6IGdjYyAtRSAgY29u ZnRlc3QuYwpjb25mdGVzdC5jOjE5NToxNzogbmFuLmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3Rv cnkKY29uZmlndXJlOjQwMTgxOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6 CnwgLyogY29uZmRlZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgImd1aWxlIgp8ICNk ZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAi MS44LjQiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiZ3VpbGUgMS44LjQiCnwgI2RlZmluZSBQ QUNLQUdFX0JVR1JFUE9SVCAiYnVnLWd1aWxlQGdudS5vcmciCnwgI2RlZmluZSBTVERDX0hFQURF UlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFU X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEK fCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNk ZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZp bmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgSEFW RV9MSUJMVERMIDEKfCAjZGVmaW5lIFNDTV9XQVJOX0RFUFJFQ0FURURfREVGQVVMVCAic3VtbWFy eSIKfCAjZGVmaW5lIEdVSUxFX1VTRV82NF9DQUxMUyAxCnwgI2RlZmluZSBIQVZFX1BPU0lYIDEK fCAjZGVmaW5lIEhBVkVfTkVUV09SS0lORyAxCnwgI2RlZmluZSBTSVpFT0ZfQ0hBUiAxCnwgI2Rl ZmluZSBTSVpFT0ZfVU5TSUdORURfQ0hBUiAxCnwgI2RlZmluZSBTSVpFT0ZfU0hPUlQgMgp8ICNk ZWZpbmUgU0laRU9GX1VOU0lHTkVEX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9JTlQgNAp8ICNk ZWZpbmUgU0laRU9GX1VOU0lHTkVEX0lOVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA0CnwgI2Rl ZmluZSBTSVpFT0ZfVU5TSUdORURfTE9ORyA0CnwgI2RlZmluZSBTSVpFT0ZfU0laRV9UIDQKfCAj ZGVmaW5lIFNJWkVPRl9MT05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xPTkdf TE9ORyA4CnwgI2RlZmluZSBTSVpFT0ZfX19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdO RURfX19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0ZfVk9JRF9QIDQKfCAjZGVmaW5lIFNJWkVPRl9J TlRQVFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfVUlOVFBUUl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9Q VFJESUZGX1QgNAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfT0ZG X1QgOAp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0gg MQp8ICNkZWZpbmUgU0laRU9GX0lOVE1BWF9UIDgKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwg I2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwg I2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9JT19IIDEKfCAjZGVmaW5l IEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZF X01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfUFJPQ0VTU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RS SU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9SRUdFWF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lPQ1RM X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElN RV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVCX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElN RVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VU SU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAx CnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmlu ZSBIQVZFX0dSUF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBI QVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEdFVEdS T1VQU19UIGdpZF90CnwgI2RlZmluZSBSRVRTSUdUWVBFIHZvaWQKfCAjZGVmaW5lIEhBVkVfTElC TSAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1RCWU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9DT05ORUNU IDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJUX0ggMQp8ICNkZWZpbmUgSEFWRV9DVEVSTUlEIDEKfCAj ZGVmaW5lIEhBVkVfRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9GVFJVTkNBVEUgMQp8ICNkZWZpbmUg SEFWRV9GQ0hPV04gMQp8ICNkZWZpbmUgSEFWRV9HRVRDV0QgMQp8ICNkZWZpbmUgSEFWRV9HRVRF VUlEIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfR01USU1F X1IgMQp8ICNkZWZpbmUgSEFWRV9JT0NUTCAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVm aW5lIEhBVkVfTUtESVIgMQp8ICNkZWZpbmUgSEFWRV9NS05PRCAxCnwgI2RlZmluZSBIQVZFX05J Q0UgMQp8ICNkZWZpbmUgSEFWRV9QSVBFIDEKfCAjZGVmaW5lIEhBVkVfX1BJUEUgMQp8ICNkZWZp bmUgSEFWRV9SRUFERElSX1IgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBI QVZFX1JFTkFNRSAxCnwgI2RlZmluZSBIQVZFX1JNRElSIDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNU IDEKfCAjZGVmaW5lIEhBVkVfU0VURUdJRCAxCnwgI2RlZmluZSBIQVZFX1NFVEVVSUQgMQp8ICNk ZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9TRVRQR0lEIDEKfCAjZGVmaW5l IEhBVkVfU0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVfU0lHQUNUSU9OIDEKfCAjZGVmaW5lIEhBVkVf U0lHSU5URVJSVVBUIDEKfCAjZGVmaW5lIEhBVkVfU1RSRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9T VFJQVElNRSAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9TWU5DIDEK fCAjZGVmaW5lIEhBVkVfU1lTQ09ORiAxCnwgI2RlZmluZSBIQVZFX1RDR0VUUEdSUCAxCnwgI2Rl ZmluZSBIQVZFX1RDU0VUUEdSUCAxCnwgI2RlZmluZSBIQVZFX1RJTUVTIDEKfCAjZGVmaW5lIEhB VkVfVU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9XQUlUUElEIDEKfCAjZGVmaW5lIEhBVkVfU1RSRFVQ IDEKfCAjZGVmaW5lIEhBVkVfU1lTVEVNIDEKfCAjZGVmaW5lIEhBVkVfVVNMRUVQIDEKfCAjZGVm aW5lIEhBVkVfQVRFWElUIDEKfCAjZGVmaW5lIEhBVkVfT05fRVhJVCAxCnwgI2RlZmluZSBIQVZF X0NIT1dOIDEKfCAjZGVmaW5lIEhBVkVfTElOSyAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAj ZGVmaW5lIEhBVkVfVFRZTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5l IEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9LSUxMIDEKfCAjZGVmaW5lIEhBVkVfR0VU UFBJRCAxCnwgI2RlZmluZSBIQVZFX0dFVFBHUlAgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAj ZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSVRJTUVSIDEKfCAjZGVm aW5lIEhBVkVfU1RSQ0hSIDEKfCAjZGVmaW5lIEhBVkVfU1RSQ01QIDEKfCAjZGVmaW5lIEhBVkVf SU5ERVggMQp8ICNkZWZpbmUgSEFWRV9CQ09QWSAxCnwgI2RlZmluZSBIQVZFX01FTUNQWSAxCnwg I2RlZmluZSBIQVZFX1JJTkRFWCAxCnwgI2RlZmluZSBIQVZFX1RSVU5DQVRFIDEKfCAjZGVmaW5l IEhBVkVfVU5TRVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9JU0JMQU5LIDEKfCAjZGVmaW5lIEhBVkVf U1RSTkNBU0VDTVAgMQp8ICNkZWZpbmUgSEFWRV9DUllQVF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVU REJfSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJB TV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf RklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfQ0hST09UIDEKfCAjZGVmaW5lIEhBVkVfRkxPQ0sgMQp8 ICNkZWZpbmUgSEFWRV9HRVRMT0dJTiAxCnwgI2RlZmluZSBIQVZFX0NVU0VSSUQgMQp8ICNkZWZp bmUgSEFWRV9HRVRQUklPUklUWSAxCnwgI2RlZmluZSBIQVZFX1NFVFBSSU9SSVRZIDEKfCAjZGVm aW5lIEhBVkVfR0VUUEFTUyAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9TRVRIT1NUTkFNRSAwCnwgI2RlZmluZSBIQVZFX0NSWVBUIDEKfCAjZGVmaW5l IEhBVkVfTElCR01QIDEKfCAjZGVmaW5lIEhBVkVfSUNPTlYgMQp8ICNkZWZpbmUgRU5BQkxFX05M UyAxCnwgI2RlZmluZSBIQVZFX0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9EQ0dFVFRFWFQgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX1NUUlBUSU1FIDEKfCAjZGVmaW5lIEhBVkVfVU5JWF9ET01BSU5f U09DS0VUUyAxCnwgI2RlZmluZSBIQVZFX1NPQ0tFVFBBSVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRH Uk9VUFMgMQp8ICNkZWZpbmUgSEFWRV9TRVRHUk9VUFMgMQp8ICNkZWZpbmUgSEFWRV9TRVRQV0VO VCAxCnwgI2RlZmluZSBIQVZFX1BBVVNFIDEKfCAjZGVmaW5lIEhBVkVfVFpTRVQgMQp8ICNkZWZp bmUgSEFWRV9TRVRIT1NURU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5ESE9TVEVOVCAxCnwgI2RlZmlu ZSBIQVZFX1NFVFBST1RPRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFJPVE9FTlQgMQp8ICNkZWZp bmUgSEFWRV9FTkRQUk9UT0VOVCAxCnwgI2RlZmluZSBIQVZFX1NFVFNFUlZFTlQgMQp8ICNkZWZp bmUgSEFWRV9HRVRTRVJWRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EU0VSVkVOVCAxCnwgI2RlZmlu ZSBIQVZFX0lORVRfTUFLRUFERFIgMQp8ICNkZWZpbmUgSEFWRV9JTkVUX05FVE9GIDEKfCAjZGVm aW5lIEhBVkVfSFNUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9QVE9OIDEKfCAjZGVmaW5l IEhBVkVfSU5FVF9OVE9QIDEKfCAjZGVmaW5lIEhBVkVfSF9FUlJOTyAxCnwgI2RlZmluZSBIQVZF X1VJTlQzMl9UIDEKfCAjZGVmaW5lIExPQ0FMVElNRV9DQUNIRSAxCnwgI2RlZmluZSBIQVZFX1JF U1RBUlRBQkxFX1NZU0NBTExTIDEKfCAjZGVmaW5lIEhBVkVfUkVHQ09NUCAxCnwgI2RlZmluZSBI QVZFX0lORVRfQVRPTiAxCnwgI2RlZmluZSBIQVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1NU UkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfTUVNTU9WRSAxCnwgI2RlZmluZSBIQVZFX01LU1RFTVAg MQp8ICNkZWZpbmUgSEFWRV9JRUVFRlBfSCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNp bmNsdWRlIDxuYW4uaD4KY29uZmlndXJlOjQwMTk1OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo0MDIy ODogY2hlY2tpbmcgZm9yIG5hbi5oCmNvbmZpZ3VyZTo0MDIzNjogcmVzdWx0OiBubwpjb25maWd1 cmU6NDAyNjU6IGNoZWNraW5nIGZvciBhc2luaApjb25maWd1cmU6NDAzMjE6IGdjYyAtbyBjb25m dGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3QuYyAtbGdtcCAtbGNyeXB0IC1sbSAtbGx0ZGwgID4m NQpjb25mdGVzdC5jOjIxODogd2FybmluZzogY29uZmxpY3RpbmcgdHlwZXMgZm9yIGJ1aWx0LWlu IGZ1bmN0aW9uICdhc2luaCcKY29uZmlndXJlOjQwMzI3OiAkPyA9IDAKY29uZmlndXJlOjQwMzQ1 OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NDAyNjU6IGNoZWNraW5nIGZvciBhY29zaApjb25maWd1 cmU6NDAzMjE6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3QuYyAtbGdtcCAt bGNyeXB0IC1sbSAtbGx0ZGwgID4mNQpjb25mdGVzdC5jOjIxOTogd2FybmluZzogY29uZmxpY3Rp bmcgdHlwZXMgZm9yIGJ1aWx0LWluIGZ1bmN0aW9uICdhY29zaCcKY29uZmlndXJlOjQwMzI3OiAk PyA9IDAKY29uZmlndXJlOjQwMzQ1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NDAyNjU6IGNoZWNr aW5nIGZvciBhdGFuaApjb25maWd1cmU6NDAzMjE6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8y ICAgY29uZnRlc3QuYyAtbGdtcCAtbGNyeXB0IC1sbSAtbGx0ZGwgID4mNQpjb25mdGVzdC5jOjIy MDogd2FybmluZzogY29uZmxpY3RpbmcgdHlwZXMgZm9yIGJ1aWx0LWluIGZ1bmN0aW9uICdhdGFu aCcKY29uZmlndXJlOjQwMzI3OiAkPyA9IDAKY29uZmlndXJlOjQwMzQ1OiByZXN1bHQ6IHllcwpj b25maWd1cmU6NDAyNjU6IGNoZWNraW5nIGZvciBjb3B5c2lnbgpjb25maWd1cmU6NDAzMjE6IGdj YyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3QuYyAtbGdtcCAtbGNyeXB0IC1sbSAt bGx0ZGwgID4mNQpjb25mdGVzdC5jOjIyMTogd2FybmluZzogY29uZmxpY3RpbmcgdHlwZXMgZm9y IGJ1aWx0LWluIGZ1bmN0aW9uICdjb3B5c2lnbicKY29uZmlndXJlOjQwMzI3OiAkPyA9IDAKY29u ZmlndXJlOjQwMzQ1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NDAyNjU6IGNoZWNraW5nIGZvciBm aW5pdGUKY29uZmlndXJlOjQwMzIxOiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0 ZXN0LmMgLWxnbXAgLWxjcnlwdCAtbG0gLWxsdGRsICA+JjUKY29uZmlndXJlOjQwMzI3OiAkPyA9 IDAKY29uZmlndXJlOjQwMzQ1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NDAyNjU6IGNoZWNraW5n IGZvciBzaW5jb3MKY29uZmlndXJlOjQwMzIxOiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAg IGNvbmZ0ZXN0LmMgLWxnbXAgLWxjcnlwdCAtbG0gLWxsdGRsICA+JjUKY29uZnRlc3QuYzoyMjM6 IHdhcm5pbmc6IGNvbmZsaWN0aW5nIHR5cGVzIGZvciBidWlsdC1pbiBmdW5jdGlvbiAnc2luY29z Jwpjb25maWd1cmU6NDAzMjc6ICQ/ID0gMApjb25maWd1cmU6NDAzNDU6IHJlc3VsdDogeWVzCmNv bmZpZ3VyZTo0MDI2NTogY2hlY2tpbmcgZm9yIHRydW5jCmNvbmZpZ3VyZTo0MDMyMTogZ2NjIC1v IGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1sZ21wIC1sY3J5cHQgLWxtIC1sbHRk bCAgPiY1CmNvbmZ0ZXN0LmM6MjI0OiB3YXJuaW5nOiBjb25mbGljdGluZyB0eXBlcyBmb3IgYnVp bHQtaW4gZnVuY3Rpb24gJ3RydW5jJwpjb25maWd1cmU6NDAzMjc6ICQ/ID0gMApjb25maWd1cmU6 NDAzNDU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo0MDM2NTogY2hlY2tpbmcgZm9yIGlzaW5mCmNv bmZpZ3VyZTo0MDM4MzogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1s Z21wIC1sY3J5cHQgLWxtIC1sbHRkbCAgPiY1CmNvbmZpZ3VyZTo0MDM4OTogJD8gPSAwCmNvbmZp Z3VyZTo0MDM5NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjQwNDEyOiBjaGVja2luZyBmb3IgaXNu YW4KY29uZmlndXJlOjQwNDMwOiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0 LmMgLWxnbXAgLWxjcnlwdCAtbG0gLWxsdGRsICA+JjUKY29uZmlndXJlOjQwNDM2OiAkPyA9IDAK Y29uZmlndXJlOjQwNDQyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6NDA0NjY6IGNoZWNraW5nIGZv ciB3b3JraW5nIGFsbG9jYS5oCmNvbmZpZ3VyZTo0MDQ5MzogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAt ZyAtTzIgICBjb25mdGVzdC5jIC1sZ21wIC1sY3J5cHQgLWxtIC1sbHRkbCAgPiY1CmNvbmZpZ3Vy ZTo0MDQ5OTogJD8gPSAwCmNvbmZpZ3VyZTo0MDUxNjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjQw NTI2OiBjaGVja2luZyBmb3IgYWxsb2NhCmNvbmZpZ3VyZTo0MDU3MzogZ2NjIC1vIGNvbmZ0ZXN0 LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5jIC1sZ21wIC1sY3J5cHQgLWxtIC1sbHRkbCAgPiY1CmNv bmZpZ3VyZTo0MDU3OTogJD8gPSAwCmNvbmZpZ3VyZTo0MDU5NjogcmVzdWx0OiB5ZXMKY29uZmln dXJlOjQwODQwOiBjaGVja2luZyBmb3Igc3RydWN0IHN0YXQuc3RfcmRldgpjb25maWd1cmU6NDA4 Njg6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo0MDg3NDogJD8gPSAw CmNvbmZpZ3VyZTo0MDkzMTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjQwOTQxOiBjaGVja2luZyBm b3Igc3RydWN0IHN0YXQuc3RfYmxrc2l6ZQpjb25maWd1cmU6NDA5Njk6IGdjYyAtYyAtZyAtTzIg IGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo0MDk3NTogJD8gPSAwCmNvbmZpZ3VyZTo0MTAzMjog cmVzdWx0OiB5ZXMKY29uZmlndXJlOjQxMDQyOiBjaGVja2luZyBmb3Igc3RydWN0IHN0YXQuc3Rf YmxvY2tzCmNvbmZpZ3VyZTo0MTA3MDogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29u ZmlndXJlOjQxMDc2OiAkPyA9IDAKY29uZmlndXJlOjQxMTMzOiByZXN1bHQ6IHllcwpjb25maWd1 cmU6NDExNDU6IGNoZWNraW5nIHdoZXRoZXIgc3RydWN0IHRtIGlzIGluIHN5cy90aW1lLmggb3Ig dGltZS5oCmNvbmZpZ3VyZTo0MTE3NTogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29u ZmlndXJlOjQxMTgxOiAkPyA9IDAKY29uZmlndXJlOjQxMTk2OiByZXN1bHQ6IHRpbWUuaApjb25m aWd1cmU6NDEyMDY6IGNoZWNraW5nIGZvciBzdHJ1Y3QgdG0udG1fem9uZQpjb25maWd1cmU6NDEy Mzc6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6IEluIGZ1bmN0aW9u IGBtYWluJzoKY29uZnRlc3QuYzoyMTc6IGVycm9yOiBzdHJ1Y3R1cmUgaGFzIG5vIG1lbWJlciBu YW1lZCBgdG1fem9uZScKY29uZmlndXJlOjQxMjQzOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQg cHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUg Imd1aWxlIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tB R0VfVkVSU0lPTiAiMS44LjQiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiZ3VpbGUgMS44LjQi CnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWd1aWxlQGdudS5vcmciCnwgI2RlZmlu ZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZF X1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJ TkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5U X0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8 ICNkZWZpbmUgSEFWRV9MSUJMVERMIDEKfCAjZGVmaW5lIFNDTV9XQVJOX0RFUFJFQ0FURURfREVG QVVMVCAic3VtbWFyeSIKfCAjZGVmaW5lIEdVSUxFX1VTRV82NF9DQUxMUyAxCnwgI2RlZmluZSBI QVZFX1BPU0lYIDEKfCAjZGVmaW5lIEhBVkVfTkVUV09SS0lORyAxCnwgI2RlZmluZSBTSVpFT0Zf Q0hBUiAxCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfQ0hBUiAxCnwgI2RlZmluZSBTSVpFT0Zf U0hPUlQgMgp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVP Rl9JTlQgNAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0lOVCA0CnwgI2RlZmluZSBTSVpFT0Zf TE9ORyA0CnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfTE9ORyA0CnwgI2RlZmluZSBTSVpFT0Zf U0laRV9UIDQKfCAjZGVmaW5lIFNJWkVPRl9MT05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX1VO U0lHTkVEX0xPTkdfTE9ORyA4CnwgI2RlZmluZSBTSVpFT0ZfX19JTlQ2NCAwCnwgI2RlZmluZSBT SVpFT0ZfVU5TSUdORURfX19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0ZfVk9JRF9QIDQKfCAjZGVm aW5lIFNJWkVPRl9JTlRQVFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfVUlOVFBUUl9UIDQKfCAjZGVm aW5lIFNJWkVPRl9QVFJESUZGX1QgNAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmlu ZSBTSVpFT0ZfT0ZGX1QgOAp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZF X0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgU0laRU9GX0lOVE1BWF9UIDgKfCAjZGVmaW5lIFNURENf SEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9T WVNfVElNRSAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9JT19I IDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwg I2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfUFJPQ0VTU19IIDEKfCAjZGVm aW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9SRUdFWF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX0lPQ1RMX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVCX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfVElNRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9USU1FX0ggMQp8ICNkZWZpbmUgSEFW RV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0Rf SCAxCnwgI2RlZmluZSBIQVZFX0dSUF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAx CnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAj ZGVmaW5lIEdFVEdST1VQU19UIGdpZF90CnwgI2RlZmluZSBSRVRTSUdUWVBFIHZvaWQKfCAjZGVm aW5lIEhBVkVfTElCTSAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1RCWU5BTUUgMQp8ICNkZWZpbmUg SEFWRV9DT05ORUNUIDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJUX0ggMQp8ICNkZWZpbmUgSEFWRV9D VEVSTUlEIDEKfCAjZGVmaW5lIEhBVkVfRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9GVFJVTkNBVEUg MQp8ICNkZWZpbmUgSEFWRV9GQ0hPV04gMQp8ICNkZWZpbmUgSEFWRV9HRVRDV0QgMQp8ICNkZWZp bmUgSEFWRV9HRVRFVUlEIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5l IEhBVkVfR01USU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9JT0NUTCAxCnwgI2RlZmluZSBIQVZFX0xT VEFUIDEKfCAjZGVmaW5lIEhBVkVfTUtESVIgMQp8ICNkZWZpbmUgSEFWRV9NS05PRCAxCnwgI2Rl ZmluZSBIQVZFX05JQ0UgMQp8ICNkZWZpbmUgSEFWRV9QSVBFIDEKfCAjZGVmaW5lIEhBVkVfX1BJ UEUgMQp8ICNkZWZpbmUgSEFWRV9SRUFERElSX1IgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAx CnwgI2RlZmluZSBIQVZFX1JFTkFNRSAxCnwgI2RlZmluZSBIQVZFX1JNRElSIDEKfCAjZGVmaW5l IEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfU0VURUdJRCAxCnwgI2RlZmluZSBIQVZFX1NF VEVVSUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9TRVRQR0lE IDEKfCAjZGVmaW5lIEhBVkVfU0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVfU0lHQUNUSU9OIDEKfCAj ZGVmaW5lIEhBVkVfU0lHSU5URVJSVVBUIDEKfCAjZGVmaW5lIEhBVkVfU1RSRlRJTUUgMQp8ICNk ZWZpbmUgSEFWRV9TVFJQVElNRSAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUg SEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVfU1lTQ09ORiAxCnwgI2RlZmluZSBIQVZFX1RDR0VU UEdSUCAxCnwgI2RlZmluZSBIQVZFX1RDU0VUUEdSUCAxCnwgI2RlZmluZSBIQVZFX1RJTUVTIDEK fCAjZGVmaW5lIEhBVkVfVU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9XQUlUUElEIDEKfCAjZGVmaW5l IEhBVkVfU1RSRFVQIDEKfCAjZGVmaW5lIEhBVkVfU1lTVEVNIDEKfCAjZGVmaW5lIEhBVkVfVVNM RUVQIDEKfCAjZGVmaW5lIEhBVkVfQVRFWElUIDEKfCAjZGVmaW5lIEhBVkVfT05fRVhJVCAxCnwg I2RlZmluZSBIQVZFX0NIT1dOIDEKfCAjZGVmaW5lIEhBVkVfTElOSyAxCnwgI2RlZmluZSBIQVZF X0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfVFRZTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5U IDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9LSUxMIDEKfCAjZGVm aW5lIEhBVkVfR0VUUFBJRCAxCnwgI2RlZmluZSBIQVZFX0dFVFBHUlAgMQp8ICNkZWZpbmUgSEFW RV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSVRJ TUVSIDEKfCAjZGVmaW5lIEhBVkVfU1RSQ0hSIDEKfCAjZGVmaW5lIEhBVkVfU1RSQ01QIDEKfCAj ZGVmaW5lIEhBVkVfSU5ERVggMQp8ICNkZWZpbmUgSEFWRV9CQ09QWSAxCnwgI2RlZmluZSBIQVZF X01FTUNQWSAxCnwgI2RlZmluZSBIQVZFX1JJTkRFWCAxCnwgI2RlZmluZSBIQVZFX1RSVU5DQVRF IDEKfCAjZGVmaW5lIEhBVkVfVU5TRVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9JU0JMQU5LIDEKfCAj ZGVmaW5lIEhBVkVfU1RSTkNBU0VDTVAgMQp8ICNkZWZpbmUgSEFWRV9DUllQVF9IIDEKfCAjZGVm aW5lIEhBVkVfTkVUREJfSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfQ0hST09UIDEKfCAjZGVmaW5lIEhB VkVfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9HRVRMT0dJTiAxCnwgI2RlZmluZSBIQVZFX0NVU0VS SUQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQUklPUklUWSAxCnwgI2RlZmluZSBIQVZFX1NFVFBSSU9S SVRZIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFTUyAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1F IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRVRIT1NUTkFNRSAwCnwgI2RlZmluZSBIQVZFX0NSWVBU IDEKfCAjZGVmaW5lIEhBVkVfTElCR01QIDEKfCAjZGVmaW5lIEhBVkVfSUNPTlYgMQp8ICNkZWZp bmUgRU5BQkxFX05MUyAxCnwgI2RlZmluZSBIQVZFX0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9E Q0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUlBUSU1FIDEKfCAjZGVmaW5lIEhBVkVf VU5JWF9ET01BSU5fU09DS0VUUyAxCnwgI2RlZmluZSBIQVZFX1NPQ0tFVFBBSVIgMQp8ICNkZWZp bmUgSEFWRV9HRVRHUk9VUFMgMQp8ICNkZWZpbmUgSEFWRV9TRVRHUk9VUFMgMQp8ICNkZWZpbmUg SEFWRV9TRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX1BBVVNFIDEKfCAjZGVmaW5lIEhBVkVfVFpT RVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRIT1NURU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5ESE9TVEVO VCAxCnwgI2RlZmluZSBIQVZFX1NFVFBST1RPRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFJPVE9F TlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRQUk9UT0VOVCAxCnwgI2RlZmluZSBIQVZFX1NFVFNFUlZF TlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRTRVJWRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EU0VSVkVO VCAxCnwgI2RlZmluZSBIQVZFX0lORVRfTUFLRUFERFIgMQp8ICNkZWZpbmUgSEFWRV9JTkVUX05F VE9GIDEKfCAjZGVmaW5lIEhBVkVfSFNUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9QVE9O IDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9OVE9QIDEKfCAjZGVmaW5lIEhBVkVfSF9FUlJOTyAxCnwg I2RlZmluZSBIQVZFX1VJTlQzMl9UIDEKfCAjZGVmaW5lIExPQ0FMVElNRV9DQUNIRSAxCnwgI2Rl ZmluZSBIQVZFX1JFU1RBUlRBQkxFX1NZU0NBTExTIDEKfCAjZGVmaW5lIEhBVkVfUkVHQ09NUCAx CnwgI2RlZmluZSBIQVZFX0lORVRfQVRPTiAxCnwgI2RlZmluZSBIQVZFX1BVVEVOViAxCnwgI2Rl ZmluZSBIQVZFX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfTUVNTU9WRSAxCnwgI2RlZmluZSBI QVZFX01LU1RFTVAgMQp8ICNkZWZpbmUgSEFWRV9JRUVFRlBfSCAxCnwgI2RlZmluZSBIQVZFX0FT SU5IIDEKfCAjZGVmaW5lIEhBVkVfQUNPU0ggMQp8ICNkZWZpbmUgSEFWRV9BVEFOSCAxCnwgI2Rl ZmluZSBIQVZFX0NPUFlTSUdOIDEKfCAjZGVmaW5lIEhBVkVfRklOSVRFIDEKfCAjZGVmaW5lIEhB VkVfU0lOQ09TIDEKfCAjZGVmaW5lIEhBVkVfVFJVTkMgMQp8ICNkZWZpbmUgSEFWRV9JU0lORiAx CnwgI2RlZmluZSBIQVZFX0lTTkFOIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZp bmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9SREVWIDEKfCAj ZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfQkxLU0laRSAxCnwgI2RlZmluZSBIQVZFX1NUUlVD VF9TVEFUX1NUX0JMT0NLUyAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxz eXMvdHlwZXMuaD4KfCAjaW5jbHVkZSA8dGltZS5oPgp8IAp8IAp8IGludAp8IG1haW4gKCkKfCB7 Cnwgc3RhdGljIHN0cnVjdCB0bSBhY19hZ2dyOwp8IGlmIChhY19hZ2dyLnRtX3pvbmUpCnwgcmV0 dXJuIDA7CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZTo0MTI3OTogZ2NjIC1jIC1n IC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzogSW4gZnVuY3Rpb24gYG1haW4nOgpjb25m dGVzdC5jOjIxNzogZXJyb3I6IHN0cnVjdHVyZSBoYXMgbm8gbWVtYmVyIG5hbWVkIGB0bV96b25l Jwpjb25maWd1cmU6NDEyODU6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoK fCAvKiBjb25mZGVmcy5oLiAgKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiZ3VpbGUiCnwgI2Rl ZmluZSBQQUNLQUdFX1RBUk5BTUUgImd1aWxlIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIx LjguNCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJndWlsZSAxLjguNCIKfCAjZGVmaW5lIFBB Q0tBR0VfQlVHUkVQT1JUICJidWctZ3VpbGVAZ251Lm9yZyIKfCAjZGVmaW5lIFNURENfSEVBREVS UyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRf SCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8 ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2Rl ZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmlu ZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRExGQ05fSCAxCnwgI2RlZmluZSBIQVZF X0xJQkxUREwgMQp8ICNkZWZpbmUgU0NNX1dBUk5fREVQUkVDQVRFRF9ERUZBVUxUICJzdW1tYXJ5 Igp8ICNkZWZpbmUgR1VJTEVfVVNFXzY0X0NBTExTIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVggMQp8 ICNkZWZpbmUgSEFWRV9ORVRXT1JLSU5HIDEKfCAjZGVmaW5lIFNJWkVPRl9DSEFSIDEKfCAjZGVm aW5lIFNJWkVPRl9VTlNJR05FRF9DSEFSIDEKfCAjZGVmaW5lIFNJWkVPRl9TSE9SVCAyCnwgI2Rl ZmluZSBTSVpFT0ZfVU5TSUdORURfU0hPUlQgMgp8ICNkZWZpbmUgU0laRU9GX0lOVCA0CnwgI2Rl ZmluZSBTSVpFT0ZfVU5TSUdORURfSU5UIDQKfCAjZGVmaW5lIFNJWkVPRl9MT05HIDQKfCAjZGVm aW5lIFNJWkVPRl9VTlNJR05FRF9MT05HIDQKfCAjZGVmaW5lIFNJWkVPRl9TSVpFX1QgNAp8ICNk ZWZpbmUgU0laRU9GX0xPTkdfTE9ORyA4CnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfTE9OR19M T05HIDgKfCAjZGVmaW5lIFNJWkVPRl9fX0lOVDY0IDAKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05F RF9fX0lOVDY0IDAKfCAjZGVmaW5lIFNJWkVPRl9WT0lEX1AgNAp8ICNkZWZpbmUgU0laRU9GX0lO VFBUUl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9VSU5UUFRSX1QgNAp8ICNkZWZpbmUgU0laRU9GX1BU UkRJRkZfVCA0CnwgI2RlZmluZSBTSVpFT0ZfU0laRV9UIDQKfCAjZGVmaW5lIFNJWkVPRl9PRkZf VCA4CnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAx CnwgI2RlZmluZSBTSVpFT0ZfSU5UTUFYX1QgOAp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAj ZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX0lPX0ggMQp8ICNkZWZpbmUg SEFWRV9MSU1JVFNfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVf TUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9QUk9DRVNTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJ TkdfSCAxCnwgI2RlZmluZSBIQVZFX1JFR0VYX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfSU9DVExf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1F X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRUJfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1F U19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRJ TUVfSCAxCnwgI2RlZmluZSBIQVZFX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEK fCAjZGVmaW5lIEhBVkVfVVRJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5l IEhBVkVfR1JQX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhB VkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgR0VUR1JP VVBTX1QgZ2lkX3QKfCAjZGVmaW5lIFJFVFNJR1RZUEUgdm9pZAp8ICNkZWZpbmUgSEFWRV9MSUJN IDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVEJZTkFNRSAxCnwgI2RlZmluZSBIQVZFX0NPTk5FQ1Qg MQp8ICNkZWZpbmUgSEFWRV9BU1NFUlRfSCAxCnwgI2RlZmluZSBIQVZFX0NURVJNSUQgMQp8ICNk ZWZpbmUgSEFWRV9GVElNRSAxCnwgI2RlZmluZSBIQVZFX0ZUUlVOQ0FURSAxCnwgI2RlZmluZSBI QVZFX0ZDSE9XTiAxCnwgI2RlZmluZSBIQVZFX0dFVENXRCAxCnwgI2RlZmluZSBIQVZFX0dFVEVV SUQgMQp8ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9HTVRJTUVf UiAxCnwgI2RlZmluZSBIQVZFX0lPQ1RMIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZp bmUgSEFWRV9NS0RJUiAxCnwgI2RlZmluZSBIQVZFX01LTk9EIDEKfCAjZGVmaW5lIEhBVkVfTklD RSAxCnwgI2RlZmluZSBIQVZFX1BJUEUgMQp8ICNkZWZpbmUgSEFWRV9fUElQRSAxCnwgI2RlZmlu ZSBIQVZFX1JFQURESVJfUiAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhB VkVfUkVOQU1FIDEKfCAjZGVmaW5lIEhBVkVfUk1ESVIgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1Qg MQp8ICNkZWZpbmUgSEFWRV9TRVRFR0lEIDEKfCAjZGVmaW5lIEhBVkVfU0VURVVJRCAxCnwgI2Rl ZmluZSBIQVZFX1NFVExPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX1NFVFBHSUQgMQp8ICNkZWZpbmUg SEFWRV9TRVRTSUQgMQp8ICNkZWZpbmUgSEFWRV9TSUdBQ1RJT04gMQp8ICNkZWZpbmUgSEFWRV9T SUdJTlRFUlJVUFQgMQp8ICNkZWZpbmUgSEFWRV9TVFJGVElNRSAxCnwgI2RlZmluZSBIQVZFX1NU UlBUSU1FIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX1NZTkMgMQp8 ICNkZWZpbmUgSEFWRV9TWVNDT05GIDEKfCAjZGVmaW5lIEhBVkVfVENHRVRQR1JQIDEKfCAjZGVm aW5lIEhBVkVfVENTRVRQR1JQIDEKfCAjZGVmaW5lIEhBVkVfVElNRVMgMQp8ICNkZWZpbmUgSEFW RV9VTkFNRSAxCnwgI2RlZmluZSBIQVZFX1dBSVRQSUQgMQp8ICNkZWZpbmUgSEFWRV9TVFJEVVAg MQp8ICNkZWZpbmUgSEFWRV9TWVNURU0gMQp8ICNkZWZpbmUgSEFWRV9VU0xFRVAgMQp8ICNkZWZp bmUgSEFWRV9BVEVYSVQgMQp8ICNkZWZpbmUgSEFWRV9PTl9FWElUIDEKfCAjZGVmaW5lIEhBVkVf Q0hPV04gMQp8ICNkZWZpbmUgSEFWRV9MSU5LIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNk ZWZpbmUgSEFWRV9UVFlOQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFdFTlQgMQp8ICNkZWZpbmUg SEFWRV9HRVRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0tJTEwgMQp8ICNkZWZpbmUgSEFWRV9HRVRQ UElEIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEdSUCAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNk ZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRJVElNRVIgMQp8ICNkZWZp bmUgSEFWRV9TVFJDSFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJDTVAgMQp8ICNkZWZpbmUgSEFWRV9J TkRFWCAxCnwgI2RlZmluZSBIQVZFX0JDT1BZIDEKfCAjZGVmaW5lIEhBVkVfTUVNQ1BZIDEKfCAj ZGVmaW5lIEhBVkVfUklOREVYIDEKfCAjZGVmaW5lIEhBVkVfVFJVTkNBVEUgMQp8ICNkZWZpbmUg SEFWRV9VTlNFVEVOViAxCnwgI2RlZmluZSBIQVZFX0lTQkxBTksgMQp8ICNkZWZpbmUgSEFWRV9T VFJOQ0FTRUNNUCAxCnwgI2RlZmluZSBIQVZFX0NSWVBUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRE Ql9IIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFN X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19G SUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9DSFJPT1QgMQp8ICNkZWZpbmUgSEFWRV9GTE9DSyAxCnwg I2RlZmluZSBIQVZFX0dFVExPR0lOIDEKfCAjZGVmaW5lIEhBVkVfQ1VTRVJJRCAxCnwgI2RlZmlu ZSBIQVZFX0dFVFBSSU9SSVRZIDEKfCAjZGVmaW5lIEhBVkVfU0VUUFJJT1JJVFkgMQp8ICNkZWZp bmUgSEFWRV9HRVRQQVNTIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX1NFVEhPU1ROQU1FIDAKfCAjZGVmaW5lIEhBVkVfQ1JZUFQgMQp8ICNkZWZpbmUg SEFWRV9MSUJHTVAgMQp8ICNkZWZpbmUgSEFWRV9JQ09OViAxCnwgI2RlZmluZSBFTkFCTEVfTkxT IDEKfCAjZGVmaW5lIEhBVkVfR0VUVEVYVCAxCnwgI2RlZmluZSBIQVZFX0RDR0VUVEVYVCAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfU1RSUFRJTUUgMQp8ICNkZWZpbmUgSEFWRV9VTklYX0RPTUFJTl9T T0NLRVRTIDEKfCAjZGVmaW5lIEhBVkVfU09DS0VUUEFJUiAxCnwgI2RlZmluZSBIQVZFX0dFVEdS T1VQUyAxCnwgI2RlZmluZSBIQVZFX1NFVEdST1VQUyAxCnwgI2RlZmluZSBIQVZFX1NFVFBXRU5U IDEKfCAjZGVmaW5lIEhBVkVfUEFVU0UgMQp8ICNkZWZpbmUgSEFWRV9UWlNFVCAxCnwgI2RlZmlu ZSBIQVZFX1NFVEhPU1RFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRIT1NURU5UIDEKfCAjZGVmaW5l IEhBVkVfU0VUUFJPVE9FTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQUk9UT0VOVCAxCnwgI2RlZmlu ZSBIQVZFX0VORFBST1RPRU5UIDEKfCAjZGVmaW5lIEhBVkVfU0VUU0VSVkVOVCAxCnwgI2RlZmlu ZSBIQVZFX0dFVFNFUlZFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRTRVJWRU5UIDEKfCAjZGVmaW5l IEhBVkVfSU5FVF9NQUtFQUREUiAxCnwgI2RlZmluZSBIQVZFX0lORVRfTkVUT0YgMQp8ICNkZWZp bmUgSEFWRV9IU1RSRVJST1IgMQp8ICNkZWZpbmUgSEFWRV9JTkVUX1BUT04gMQp8ICNkZWZpbmUg SEFWRV9JTkVUX05UT1AgMQp8ICNkZWZpbmUgSEFWRV9IX0VSUk5PIDEKfCAjZGVmaW5lIEhBVkVf VUlOVDMyX1QgMQp8ICNkZWZpbmUgTE9DQUxUSU1FX0NBQ0hFIDEKfCAjZGVmaW5lIEhBVkVfUkVT VEFSVEFCTEVfU1lTQ0FMTFMgMQp8ICNkZWZpbmUgSEFWRV9SRUdDT01QIDEKfCAjZGVmaW5lIEhB VkVfSU5FVF9BVE9OIDEKfCAjZGVmaW5lIEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfU1RS RVJST1IgMQp8ICNkZWZpbmUgSEFWRV9NRU1NT1ZFIDEKfCAjZGVmaW5lIEhBVkVfTUtTVEVNUCAx CnwgI2RlZmluZSBIQVZFX0lFRUVGUF9IIDEKfCAjZGVmaW5lIEhBVkVfQVNJTkggMQp8ICNkZWZp bmUgSEFWRV9BQ09TSCAxCnwgI2RlZmluZSBIQVZFX0FUQU5IIDEKfCAjZGVmaW5lIEhBVkVfQ09Q WVNJR04gMQp8ICNkZWZpbmUgSEFWRV9GSU5JVEUgMQp8ICNkZWZpbmUgSEFWRV9TSU5DT1MgMQp8 ICNkZWZpbmUgSEFWRV9UUlVOQyAxCnwgI2RlZmluZSBIQVZFX0lTSU5GIDEKfCAjZGVmaW5lIEhB VkVfSVNOQU4gMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAxCnwgI2RlZmluZSBIQVZFX0FMTE9D QSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX1JERVYgMQp8ICNkZWZpbmUgSEFWRV9T VFJVQ1RfU1RBVF9TVF9CTEtTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfQkxP Q0tTIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN5cy90eXBlcy5oPgp8 ICNpbmNsdWRlIDx0aW1lLmg+CnwgCnwgCnwgaW50CnwgbWFpbiAoKQp8IHsKfCBzdGF0aWMgc3Ry dWN0IHRtIGFjX2FnZ3I7CnwgaWYgKHNpemVvZiBhY19hZ2dyLnRtX3pvbmUpCnwgcmV0dXJuIDA7 CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZTo0MTMwMzogcmVzdWx0OiBubwpjb25m aWd1cmU6NDEzMjE6IGNoZWNraW5nIHdoZXRoZXIgdHpuYW1lIGlzIGRlY2xhcmVkCmNvbmZpZ3Vy ZTo0MTM1MTogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjQxMzU3OiAk PyA9IDAKY29uZmlndXJlOjQxMzcyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6NDEzOTA6IGNoZWNr aW5nIGZvciB0em5hbWUKY29uZmlndXJlOjQxNDIwOiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1P MiAgIGNvbmZ0ZXN0LmMgLWxnbXAgLWxjcnlwdCAtbG0gLWxsdGRsICA+JjUKY29uZmlndXJlOjQx NDI2OiAkPyA9IDAKY29uZmlndXJlOjQxNDQzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6NDE0NTQ6 IGNoZWNraW5nIGZvciBzdHJ1Y3QgdG0udG1fZ210b2ZmCmNvbmZpZ3VyZTo0MTQ5NDogZ2NjIC1j IC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzogSW4gZnVuY3Rpb24gYG1haW4nOgpj b25mdGVzdC5jOjIyODogZXJyb3I6IHN0cnVjdHVyZSBoYXMgbm8gbWVtYmVyIG5hbWVkIGB0bV9n bXRvZmYnCmNvbmZpZ3VyZTo0MTUwMDogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0g d2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJndWlsZSIK fCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZ3VpbGUiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJ T04gIjEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgImd1aWxlIDEuOC40Igp8ICNkZWZp bmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1ndWlsZUBnbnUub3JnIgp8ICNkZWZpbmUgU1REQ19I RUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf U1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdf SCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEK fCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAj ZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5l IEhBVkVfTElCTFRETCAxCnwgI2RlZmluZSBTQ01fV0FSTl9ERVBSRUNBVEVEX0RFRkFVTFQgInN1 bW1hcnkiCnwgI2RlZmluZSBHVUlMRV9VU0VfNjRfQ0FMTFMgMQp8ICNkZWZpbmUgSEFWRV9QT1NJ WCAxCnwgI2RlZmluZSBIQVZFX05FVFdPUktJTkcgMQp8ICNkZWZpbmUgU0laRU9GX0NIQVIgMQp8 ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1NIT1JUIDIK fCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9TSE9SVCAyCnwgI2RlZmluZSBTSVpFT0ZfSU5UIDQK fCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9JTlQgNAp8ICNkZWZpbmUgU0laRU9GX0xPTkcgNAp8 ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0 CnwgI2RlZmluZSBTSVpFT0ZfTE9OR19MT05HIDgKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9M T05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX19fSU5UNjQgMAp8ICNkZWZpbmUgU0laRU9GX1VO U0lHTkVEX19fSU5UNjQgMAp8ICNkZWZpbmUgU0laRU9GX1ZPSURfUCA0CnwgI2RlZmluZSBTSVpF T0ZfSU5UUFRSX1QgNAp8ICNkZWZpbmUgU0laRU9GX1VJTlRQVFJfVCA0CnwgI2RlZmluZSBTSVpF T0ZfUFRSRElGRl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9TSVpFX1QgNAp8ICNkZWZpbmUgU0laRU9G X09GRl9UIDgKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBF U19IIDEKfCAjZGVmaW5lIFNJWkVPRl9JTlRNQVhfVCA4CnwgI2RlZmluZSBTVERDX0hFQURFUlMg MQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUg MQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU9fSCAxCnwgI2Rl ZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUg SEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1BST0NFU1NfSCAxCnwgI2RlZmluZSBIQVZF X1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfUkVHRVhfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19J T0NUTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1RJTUVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1RE X0ggMQp8ICNkZWZpbmUgSEFWRV9VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNk ZWZpbmUgSEFWRV9HUlBfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZp bmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBH RVRHUk9VUFNfVCBnaWRfdAp8ICNkZWZpbmUgUkVUU0lHVFlQRSB2b2lkCnwgI2RlZmluZSBIQVZF X0xJQk0gMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUQllOQU1FIDEKfCAjZGVmaW5lIEhBVkVfQ09O TkVDVCAxCnwgI2RlZmluZSBIQVZFX0FTU0VSVF9IIDEKfCAjZGVmaW5lIEhBVkVfQ1RFUk1JRCAx CnwgI2RlZmluZSBIQVZFX0ZUSU1FIDEKfCAjZGVmaW5lIEhBVkVfRlRSVU5DQVRFIDEKfCAjZGVm aW5lIEhBVkVfRkNIT1dOIDEKfCAjZGVmaW5lIEhBVkVfR0VUQ1dEIDEKfCAjZGVmaW5lIEhBVkVf R0VURVVJRCAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX0dN VElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfSU9DVEwgMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwg I2RlZmluZSBIQVZFX01LRElSIDEKfCAjZGVmaW5lIEhBVkVfTUtOT0QgMQp8ICNkZWZpbmUgSEFW RV9OSUNFIDEKfCAjZGVmaW5lIEhBVkVfUElQRSAxCnwgI2RlZmluZSBIQVZFX19QSVBFIDEKfCAj ZGVmaW5lIEhBVkVfUkVBRERJUl9SIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZp bmUgSEFWRV9SRU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9STURJUiAxCnwgI2RlZmluZSBIQVZFX1NF TEVDVCAxCnwgI2RlZmluZSBIQVZFX1NFVEVHSUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRFVUlEIDEK fCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfU0VUUEdJRCAxCnwgI2Rl ZmluZSBIQVZFX1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX1NJR0FDVElPTiAxCnwgI2RlZmluZSBI QVZFX1NJR0lOVEVSUlVQVCAxCnwgI2RlZmluZSBIQVZFX1NUUkZUSU1FIDEKfCAjZGVmaW5lIEhB VkVfU1RSUFRJTUUgMQp8ICNkZWZpbmUgSEFWRV9TWU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVfU1lO QyAxCnwgI2RlZmluZSBIQVZFX1NZU0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9UQ0dFVFBHUlAgMQp8 ICNkZWZpbmUgSEFWRV9UQ1NFVFBHUlAgMQp8ICNkZWZpbmUgSEFWRV9USU1FUyAxCnwgI2RlZmlu ZSBIQVZFX1VOQU1FIDEKfCAjZGVmaW5lIEhBVkVfV0FJVFBJRCAxCnwgI2RlZmluZSBIQVZFX1NU UkRVUCAxCnwgI2RlZmluZSBIQVZFX1NZU1RFTSAxCnwgI2RlZmluZSBIQVZFX1VTTEVFUCAxCnwg I2RlZmluZSBIQVZFX0FURVhJVCAxCnwgI2RlZmluZSBIQVZFX09OX0VYSVQgMQp8ICNkZWZpbmUg SEFWRV9DSE9XTiAxCnwgI2RlZmluZSBIQVZFX0xJTksgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAx CnwgI2RlZmluZSBIQVZFX1RUWU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2Rl ZmluZSBIQVZFX0dFVEdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfS0lMTCAxCnwgI2RlZmluZSBIQVZF X0dFVFBQSUQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQR1JQIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAx CnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX0dFVElUSU1FUiAxCnwg I2RlZmluZSBIQVZFX1NUUkNIUiAxCnwgI2RlZmluZSBIQVZFX1NUUkNNUCAxCnwgI2RlZmluZSBI QVZFX0lOREVYIDEKfCAjZGVmaW5lIEhBVkVfQkNPUFkgMQp8ICNkZWZpbmUgSEFWRV9NRU1DUFkg MQp8ICNkZWZpbmUgSEFWRV9SSU5ERVggMQp8ICNkZWZpbmUgSEFWRV9UUlVOQ0FURSAxCnwgI2Rl ZmluZSBIQVZFX1VOU0VURU5WIDEKfCAjZGVmaW5lIEhBVkVfSVNCTEFOSyAxCnwgI2RlZmluZSBI QVZFX1NUUk5DQVNFQ01QIDEKfCAjZGVmaW5lIEhBVkVfQ1JZUFRfSCAxCnwgI2RlZmluZSBIQVZF X05FVERCX0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf UEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX0NIUk9PVCAxCnwgI2RlZmluZSBIQVZFX0ZMT0NL IDEKfCAjZGVmaW5lIEhBVkVfR0VUTE9HSU4gMQp8ICNkZWZpbmUgSEFWRV9DVVNFUklEIDEKfCAj ZGVmaW5lIEhBVkVfR0VUUFJJT1JJVFkgMQp8ICNkZWZpbmUgSEFWRV9TRVRQUklPUklUWSAxCnwg I2RlZmluZSBIQVZFX0dFVFBBU1MgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfU0VUSE9TVE5BTUUgMAp8ICNkZWZpbmUgSEFWRV9DUllQVCAxCnwgI2Rl ZmluZSBIQVZFX0xJQkdNUCAxCnwgI2RlZmluZSBIQVZFX0lDT05WIDEKfCAjZGVmaW5lIEVOQUJM RV9OTFMgMQp8ICNkZWZpbmUgSEFWRV9HRVRURVhUIDEKfCAjZGVmaW5lIEhBVkVfRENHRVRURVhU IDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJQVElNRSAxCnwgI2RlZmluZSBIQVZFX1VOSVhfRE9N QUlOX1NPQ0tFVFMgMQp8ICNkZWZpbmUgSEFWRV9TT0NLRVRQQUlSIDEKfCAjZGVmaW5lIEhBVkVf R0VUR1JPVVBTIDEKfCAjZGVmaW5lIEhBVkVfU0VUR1JPVVBTIDEKfCAjZGVmaW5lIEhBVkVfU0VU UFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9QQVVTRSAxCnwgI2RlZmluZSBIQVZFX1RaU0VUIDEKfCAj ZGVmaW5lIEhBVkVfU0VUSE9TVEVOVCAxCnwgI2RlZmluZSBIQVZFX0VOREhPU1RFTlQgMQp8ICNk ZWZpbmUgSEFWRV9TRVRQUk9UT0VOVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBST1RPRU5UIDEKfCAj ZGVmaW5lIEhBVkVfRU5EUFJPVE9FTlQgMQp8ICNkZWZpbmUgSEFWRV9TRVRTRVJWRU5UIDEKfCAj ZGVmaW5lIEhBVkVfR0VUU0VSVkVOVCAxCnwgI2RlZmluZSBIQVZFX0VORFNFUlZFTlQgMQp8ICNk ZWZpbmUgSEFWRV9JTkVUX01BS0VBRERSIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9ORVRPRiAxCnwg I2RlZmluZSBIQVZFX0hTVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZFX0lORVRfUFRPTiAxCnwgI2Rl ZmluZSBIQVZFX0lORVRfTlRPUCAxCnwgI2RlZmluZSBIQVZFX0hfRVJSTk8gMQp8ICNkZWZpbmUg SEFWRV9VSU5UMzJfVCAxCnwgI2RlZmluZSBMT0NBTFRJTUVfQ0FDSEUgMQp8ICNkZWZpbmUgSEFW RV9SRVNUQVJUQUJMRV9TWVNDQUxMUyAxCnwgI2RlZmluZSBIQVZFX1JFR0NPTVAgMQp8ICNkZWZp bmUgSEFWRV9JTkVUX0FUT04gMQp8ICNkZWZpbmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZpbmUgSEFW RV9TVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZFX01FTU1PVkUgMQp8ICNkZWZpbmUgSEFWRV9NS1NU RU1QIDEKfCAjZGVmaW5lIEhBVkVfSUVFRUZQX0ggMQp8ICNkZWZpbmUgSEFWRV9BU0lOSCAxCnwg I2RlZmluZSBIQVZFX0FDT1NIIDEKfCAjZGVmaW5lIEhBVkVfQVRBTkggMQp8ICNkZWZpbmUgSEFW RV9DT1BZU0lHTiAxCnwgI2RlZmluZSBIQVZFX0ZJTklURSAxCnwgI2RlZmluZSBIQVZFX1NJTkNP UyAxCnwgI2RlZmluZSBIQVZFX1RSVU5DIDEKfCAjZGVmaW5lIEhBVkVfSVNJTkYgMQp8ICNkZWZp bmUgSEFWRV9JU05BTiAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVf QUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfUkRFViAxCnwgI2RlZmluZSBI QVZFX1NUUlVDVF9TVEFUX1NUX0JMS1NJWkUgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9T VF9CTE9DS1MgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1RaTkFNRSAxCnwgI2RlZmluZSBIQVZFX1Ra TkFNRSAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDx0aW1lLmg+CnwgI2lm ZGVmIFRJTUVfV0lUSF9TWVNfVElNRQp8ICMgaW5jbHVkZSA8c3lzL3RpbWUuaD4KfCAjIGluY2x1 ZGUgPHRpbWUuaD4KfCAjZWxzZQp8ICMgaWYgSEFWRV9TWVNfVElNRV9ICnwgIyAgaW5jbHVkZSA8 c3lzL3RpbWUuaD4KfCAjIGVsc2UKfCAjICBpbmNsdWRlIDx0aW1lLmg+CnwgIyBlbmRpZgp8ICNl bmRpZgp8IAp8IAp8IGludAp8IG1haW4gKCkKfCB7Cnwgc3RhdGljIHN0cnVjdCB0bSBhY19hZ2dy Owp8IGlmIChhY19hZ2dyLnRtX2dtdG9mZikKfCByZXR1cm4gMDsKfCAgIDsKfCAgIHJldHVybiAw Owp8IH0KY29uZmlndXJlOjQxNTQ1OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25m dGVzdC5jOiBJbiBmdW5jdGlvbiBgbWFpbic6CmNvbmZ0ZXN0LmM6MjI4OiBlcnJvcjogc3RydWN0 dXJlIGhhcyBubyBtZW1iZXIgbmFtZWQgYHRtX2dtdG9mZicKY29uZmlndXJlOjQxNTUxOiAkPyA9 IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwg I2RlZmluZSBQQUNLQUdFX05BTUUgImd1aWxlIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJn dWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMS44LjQiCnwgI2RlZmluZSBQQUNLQUdF X1NUUklORyAiZ3VpbGUgMS44LjQiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWd1 aWxlQGdudS5vcmciCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNf VFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERM SUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0gg MQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEK fCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2Rl ZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgSEFWRV9MSUJMVERMIDEKfCAjZGVmaW5lIFND TV9XQVJOX0RFUFJFQ0FURURfREVGQVVMVCAic3VtbWFyeSIKfCAjZGVmaW5lIEdVSUxFX1VTRV82 NF9DQUxMUyAxCnwgI2RlZmluZSBIQVZFX1BPU0lYIDEKfCAjZGVmaW5lIEhBVkVfTkVUV09SS0lO RyAxCnwgI2RlZmluZSBTSVpFT0ZfQ0hBUiAxCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfQ0hB UiAxCnwgI2RlZmluZSBTSVpFT0ZfU0hPUlQgMgp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX1NI T1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9JTlQgNAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0lO VCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9ORyA0CnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfTE9O RyA0CnwgI2RlZmluZSBTSVpFT0ZfU0laRV9UIDQKfCAjZGVmaW5lIFNJWkVPRl9MT05HX0xPTkcg OAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xPTkdfTE9ORyA4CnwgI2RlZmluZSBTSVpFT0Zf X19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfX19JTlQ2NCAwCnwgI2RlZmluZSBT SVpFT0ZfVk9JRF9QIDQKfCAjZGVmaW5lIFNJWkVPRl9JTlRQVFJfVCA0CnwgI2RlZmluZSBTSVpF T0ZfVUlOVFBUUl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9QVFJESUZGX1QgNAp8ICNkZWZpbmUgU0la RU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfT0ZGX1QgOAp8ICNkZWZpbmUgSEFWRV9TVERJ TlRfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgU0laRU9GX0lOVE1B WF9UIDgKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEK fCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0gg MQp8ICNkZWZpbmUgSEFWRV9JT19IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZp bmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhB VkVfUFJPQ0VTU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9S RUdFWF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lPQ1RMX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf U0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1RJTUVCX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9U SU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0gg MQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX0dSUF9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmlu ZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEdFVEdST1VQU19UIGdpZF90CnwgI2RlZmluZSBS RVRTSUdUWVBFIHZvaWQKfCAjZGVmaW5lIEhBVkVfTElCTSAxCnwgI2RlZmluZSBIQVZFX0dFVEhP U1RCWU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9DT05ORUNUIDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJU X0ggMQp8ICNkZWZpbmUgSEFWRV9DVEVSTUlEIDEKfCAjZGVmaW5lIEhBVkVfRlRJTUUgMQp8ICNk ZWZpbmUgSEFWRV9GVFJVTkNBVEUgMQp8ICNkZWZpbmUgSEFWRV9GQ0hPV04gMQp8ICNkZWZpbmUg SEFWRV9HRVRDV0QgMQp8ICNkZWZpbmUgSEFWRV9HRVRFVUlEIDEKfCAjZGVmaW5lIEhBVkVfR0VU VElNRU9GREFZIDEKfCAjZGVmaW5lIEhBVkVfR01USU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9JT0NU TCAxCnwgI2RlZmluZSBIQVZFX0xTVEFUIDEKfCAjZGVmaW5lIEhBVkVfTUtESVIgMQp8ICNkZWZp bmUgSEFWRV9NS05PRCAxCnwgI2RlZmluZSBIQVZFX05JQ0UgMQp8ICNkZWZpbmUgSEFWRV9QSVBF IDEKfCAjZGVmaW5lIEhBVkVfX1BJUEUgMQp8ICNkZWZpbmUgSEFWRV9SRUFERElSX1IgMQp8ICNk ZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBIQVZFX1JFTkFNRSAxCnwgI2RlZmluZSBI QVZFX1JNRElSIDEKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfU0VURUdJ RCAxCnwgI2RlZmluZSBIQVZFX1NFVEVVSUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8 ICNkZWZpbmUgSEFWRV9TRVRQR0lEIDEKfCAjZGVmaW5lIEhBVkVfU0VUU0lEIDEKfCAjZGVmaW5l IEhBVkVfU0lHQUNUSU9OIDEKfCAjZGVmaW5lIEhBVkVfU0lHSU5URVJSVVBUIDEKfCAjZGVmaW5l IEhBVkVfU1RSRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9TVFJQVElNRSAxCnwgI2RlZmluZSBIQVZF X1NZTUxJTksgMQp8ICNkZWZpbmUgSEFWRV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVfU1lTQ09ORiAx CnwgI2RlZmluZSBIQVZFX1RDR0VUUEdSUCAxCnwgI2RlZmluZSBIQVZFX1RDU0VUUEdSUCAxCnwg I2RlZmluZSBIQVZFX1RJTUVTIDEKfCAjZGVmaW5lIEhBVkVfVU5BTUUgMQp8ICNkZWZpbmUgSEFW RV9XQUlUUElEIDEKfCAjZGVmaW5lIEhBVkVfU1RSRFVQIDEKfCAjZGVmaW5lIEhBVkVfU1lTVEVN IDEKfCAjZGVmaW5lIEhBVkVfVVNMRUVQIDEKfCAjZGVmaW5lIEhBVkVfQVRFWElUIDEKfCAjZGVm aW5lIEhBVkVfT05fRVhJVCAxCnwgI2RlZmluZSBIQVZFX0NIT1dOIDEKfCAjZGVmaW5lIEhBVkVf TElOSyAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMIDEKfCAjZGVmaW5lIEhBVkVfVFRZTkFNRSAxCnwg I2RlZmluZSBIQVZFX0dFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZp bmUgSEFWRV9LSUxMIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFBJRCAxCnwgI2RlZmluZSBIQVZFX0dF VFBHUlAgMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEK fCAjZGVmaW5lIEhBVkVfR0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfU1RSQ0hSIDEKfCAjZGVm aW5lIEhBVkVfU1RSQ01QIDEKfCAjZGVmaW5lIEhBVkVfSU5ERVggMQp8ICNkZWZpbmUgSEFWRV9C Q09QWSAxCnwgI2RlZmluZSBIQVZFX01FTUNQWSAxCnwgI2RlZmluZSBIQVZFX1JJTkRFWCAxCnwg I2RlZmluZSBIQVZFX1RSVU5DQVRFIDEKfCAjZGVmaW5lIEhBVkVfVU5TRVRFTlYgMQp8ICNkZWZp bmUgSEFWRV9JU0JMQU5LIDEKfCAjZGVmaW5lIEhBVkVfU1RSTkNBU0VDTVAgMQp8ICNkZWZpbmUg SEFWRV9DUllQVF9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUREJfSCAxCnwgI2RlZmluZSBIQVZFX1BU SFJFQURfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVf Q0hST09UIDEKfCAjZGVmaW5lIEhBVkVfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9HRVRMT0dJTiAx CnwgI2RlZmluZSBIQVZFX0NVU0VSSUQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQUklPUklUWSAxCnwg I2RlZmluZSBIQVZFX1NFVFBSSU9SSVRZIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFTUyAxCnwgI2Rl ZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TRVRIT1NUTkFNRSAw CnwgI2RlZmluZSBIQVZFX0NSWVBUIDEKfCAjZGVmaW5lIEhBVkVfTElCR01QIDEKfCAjZGVmaW5l IEhBVkVfSUNPTlYgMQp8ICNkZWZpbmUgRU5BQkxFX05MUyAxCnwgI2RlZmluZSBIQVZFX0dFVFRF WFQgMQp8ICNkZWZpbmUgSEFWRV9EQ0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUlBU SU1FIDEKfCAjZGVmaW5lIEhBVkVfVU5JWF9ET01BSU5fU09DS0VUUyAxCnwgI2RlZmluZSBIQVZF X1NPQ0tFVFBBSVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUk9VUFMgMQp8ICNkZWZpbmUgSEFWRV9T RVRHUk9VUFMgMQp8ICNkZWZpbmUgSEFWRV9TRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX1BBVVNF IDEKfCAjZGVmaW5lIEhBVkVfVFpTRVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRIT1NURU5UIDEKfCAj ZGVmaW5lIEhBVkVfRU5ESE9TVEVOVCAxCnwgI2RlZmluZSBIQVZFX1NFVFBST1RPRU5UIDEKfCAj ZGVmaW5lIEhBVkVfR0VUUFJPVE9FTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRQUk9UT0VOVCAxCnwg I2RlZmluZSBIQVZFX1NFVFNFUlZFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRTRVJWRU5UIDEKfCAj ZGVmaW5lIEhBVkVfRU5EU0VSVkVOVCAxCnwgI2RlZmluZSBIQVZFX0lORVRfTUFLRUFERFIgMQp8 ICNkZWZpbmUgSEFWRV9JTkVUX05FVE9GIDEKfCAjZGVmaW5lIEhBVkVfSFNUUkVSUk9SIDEKfCAj ZGVmaW5lIEhBVkVfSU5FVF9QVE9OIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9OVE9QIDEKfCAjZGVm aW5lIEhBVkVfSF9FUlJOTyAxCnwgI2RlZmluZSBIQVZFX1VJTlQzMl9UIDEKfCAjZGVmaW5lIExP Q0FMVElNRV9DQUNIRSAxCnwgI2RlZmluZSBIQVZFX1JFU1RBUlRBQkxFX1NZU0NBTExTIDEKfCAj ZGVmaW5lIEhBVkVfUkVHQ09NUCAxCnwgI2RlZmluZSBIQVZFX0lORVRfQVRPTiAxCnwgI2RlZmlu ZSBIQVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVf TUVNTU9WRSAxCnwgI2RlZmluZSBIQVZFX01LU1RFTVAgMQp8ICNkZWZpbmUgSEFWRV9JRUVFRlBf SCAxCnwgI2RlZmluZSBIQVZFX0FTSU5IIDEKfCAjZGVmaW5lIEhBVkVfQUNPU0ggMQp8ICNkZWZp bmUgSEFWRV9BVEFOSCAxCnwgI2RlZmluZSBIQVZFX0NPUFlTSUdOIDEKfCAjZGVmaW5lIEhBVkVf RklOSVRFIDEKfCAjZGVmaW5lIEhBVkVfU0lOQ09TIDEKfCAjZGVmaW5lIEhBVkVfVFJVTkMgMQp8 ICNkZWZpbmUgSEFWRV9JU0lORiAxCnwgI2RlZmluZSBIQVZFX0lTTkFOIDEKfCAjZGVmaW5lIEhB VkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgSEFWRV9TVFJV Q1RfU1RBVF9TVF9SREVWIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfQkxLU0laRSAx CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX0JMT0NLUyAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfVFpOQU1FIDEKfCAjZGVmaW5lIEhBVkVfVFpOQU1FIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4g ICovCnwgI2luY2x1ZGUgPHRpbWUuaD4KfCAjaWZkZWYgVElNRV9XSVRIX1NZU19USU1FCnwgIyBp bmNsdWRlIDxzeXMvdGltZS5oPgp8ICMgaW5jbHVkZSA8dGltZS5oPgp8ICNlbHNlCnwgIyBpZiBI QVZFX1NZU19USU1FX0gKfCAjICBpbmNsdWRlIDxzeXMvdGltZS5oPgp8ICMgZWxzZQp8ICMgIGlu Y2x1ZGUgPHRpbWUuaD4KfCAjIGVuZGlmCnwgI2VuZGlmCnwgCnwgCnwgaW50CnwgbWFpbiAoKQp8 IHsKfCBzdGF0aWMgc3RydWN0IHRtIGFjX2FnZ3I7CnwgaWYgKHNpemVvZiBhY19hZ2dyLnRtX2dt dG9mZikKfCByZXR1cm4gMDsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjQxNTY5 OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo0MTU4MTogY2hlY2tpbmcgd2hldGhlciB3ZSBuZWVkIFBP U0lYIHRvIGdldCBzdHJ1Y3QgdXRpbWJ1Zgpjb25maWd1cmU6NDE2MDY6IGdjYyAtRSAgY29uZnRl c3QuYwpjb25maWd1cmU6NDE2MTI6ICQ/ID0gMApjb25maWd1cmU6NDE2Mjc6IHJlc3VsdDogbm8K Y29uZmlndXJlOjQxNjY1OiBnY2MgLW8gY29uZnRlc3QuZXhlIC1nIC1PMiAgIGNvbmZ0ZXN0LmMg LWxnbXAgLWxjcnlwdCAtbG0gLWxsdGRsICA+JjUKY29uZmlndXJlOjQxNjY4OiAkPyA9IDAKY29u ZmlndXJlOjQxNjc0OiAuL2NvbmZ0ZXN0LmV4ZQpjb25maWd1cmU6NDE2Nzc6ICQ/ID0gMQpjb25m aWd1cmU6IHByb2dyYW0gZXhpdGVkIHdpdGggc3RhdHVzIDEKY29uZmlndXJlOiBmYWlsZWQgcHJv Z3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgImd1 aWxlIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0Vf VkVSU0lPTiAiMS44LjQiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiZ3VpbGUgMS44LjQiCnwg I2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWd1aWxlQGdudS5vcmciCnwgI2RlZmluZSBT VERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NU UklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdT X0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0gg MQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNk ZWZpbmUgSEFWRV9MSUJMVERMIDEKfCAjZGVmaW5lIFNDTV9XQVJOX0RFUFJFQ0FURURfREVGQVVM VCAic3VtbWFyeSIKfCAjZGVmaW5lIEdVSUxFX1VTRV82NF9DQUxMUyAxCnwgI2RlZmluZSBIQVZF X1BPU0lYIDEKfCAjZGVmaW5lIEhBVkVfTkVUV09SS0lORyAxCnwgI2RlZmluZSBTSVpFT0ZfQ0hB UiAxCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfQ0hBUiAxCnwgI2RlZmluZSBTSVpFT0ZfU0hP UlQgMgp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9J TlQgNAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0lOVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9O RyA0CnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfTE9ORyA0CnwgI2RlZmluZSBTSVpFT0ZfU0la RV9UIDQKfCAjZGVmaW5lIFNJWkVPRl9MT05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX1VOU0lH TkVEX0xPTkdfTE9ORyA4CnwgI2RlZmluZSBTSVpFT0ZfX19JTlQ2NCAwCnwgI2RlZmluZSBTSVpF T0ZfVU5TSUdORURfX19JTlQ2NCAwCnwgI2RlZmluZSBTSVpFT0ZfVk9JRF9QIDQKfCAjZGVmaW5l IFNJWkVPRl9JTlRQVFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfVUlOVFBUUl9UIDQKfCAjZGVmaW5l IFNJWkVPRl9QVFJESUZGX1QgNAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBT SVpFT0ZfT0ZGX1QgOAp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX0lO VFRZUEVTX0ggMQp8ICNkZWZpbmUgU0laRU9GX0lOVE1BWF9UIDgKfCAjZGVmaW5lIFNURENfSEVB REVSUyAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNf VElNRSAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9JT19IIDEK fCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2Rl ZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfUFJPQ0VTU19IIDEKfCAjZGVmaW5l IEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9SRUdFWF9IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX0lPQ1RMX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVCX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfVElNRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9V TklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAx CnwgI2RlZmluZSBIQVZFX0dSUF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwg I2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVm aW5lIEdFVEdST1VQU19UIGdpZF90CnwgI2RlZmluZSBSRVRTSUdUWVBFIHZvaWQKfCAjZGVmaW5l IEhBVkVfTElCTSAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1RCWU5BTUUgMQp8ICNkZWZpbmUgSEFW RV9DT05ORUNUIDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJUX0ggMQp8ICNkZWZpbmUgSEFWRV9DVEVS TUlEIDEKfCAjZGVmaW5lIEhBVkVfRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9GVFJVTkNBVEUgMQp8 ICNkZWZpbmUgSEFWRV9GQ0hPV04gMQp8ICNkZWZpbmUgSEFWRV9HRVRDV0QgMQp8ICNkZWZpbmUg SEFWRV9HRVRFVUlEIDEKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEhB VkVfR01USU1FX1IgMQp8ICNkZWZpbmUgSEFWRV9JT0NUTCAxCnwgI2RlZmluZSBIQVZFX0xTVEFU IDEKfCAjZGVmaW5lIEhBVkVfTUtESVIgMQp8ICNkZWZpbmUgSEFWRV9NS05PRCAxCnwgI2RlZmlu ZSBIQVZFX05JQ0UgMQp8ICNkZWZpbmUgSEFWRV9QSVBFIDEKfCAjZGVmaW5lIEhBVkVfX1BJUEUg MQp8ICNkZWZpbmUgSEFWRV9SRUFERElSX1IgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwg I2RlZmluZSBIQVZFX1JFTkFNRSAxCnwgI2RlZmluZSBIQVZFX1JNRElSIDEKfCAjZGVmaW5lIEhB VkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfU0VURUdJRCAxCnwgI2RlZmluZSBIQVZFX1NFVEVV SUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9TRVRQR0lEIDEK fCAjZGVmaW5lIEhBVkVfU0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVfU0lHQUNUSU9OIDEKfCAjZGVm aW5lIEhBVkVfU0lHSU5URVJSVVBUIDEKfCAjZGVmaW5lIEhBVkVfU1RSRlRJTUUgMQp8ICNkZWZp bmUgSEFWRV9TVFJQVElNRSAxCnwgI2RlZmluZSBIQVZFX1NZTUxJTksgMQp8ICNkZWZpbmUgSEFW RV9TWU5DIDEKfCAjZGVmaW5lIEhBVkVfU1lTQ09ORiAxCnwgI2RlZmluZSBIQVZFX1RDR0VUUEdS UCAxCnwgI2RlZmluZSBIQVZFX1RDU0VUUEdSUCAxCnwgI2RlZmluZSBIQVZFX1RJTUVTIDEKfCAj ZGVmaW5lIEhBVkVfVU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9XQUlUUElEIDEKfCAjZGVmaW5lIEhB VkVfU1RSRFVQIDEKfCAjZGVmaW5lIEhBVkVfU1lTVEVNIDEKfCAjZGVmaW5lIEhBVkVfVVNMRUVQ IDEKfCAjZGVmaW5lIEhBVkVfQVRFWElUIDEKfCAjZGVmaW5lIEhBVkVfT05fRVhJVCAxCnwgI2Rl ZmluZSBIQVZFX0NIT1dOIDEKfCAjZGVmaW5lIEhBVkVfTElOSyAxCnwgI2RlZmluZSBIQVZFX0ZD TlRMIDEKfCAjZGVmaW5lIEhBVkVfVFRZTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVFBXRU5UIDEK fCAjZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQp8ICNkZWZpbmUgSEFWRV9LSUxMIDEKfCAjZGVmaW5l IEhBVkVfR0VUUFBJRCAxCnwgI2RlZmluZSBIQVZFX0dFVFBHUlAgMQp8ICNkZWZpbmUgSEFWRV9G T1JLIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfR0VUSVRJTUVS IDEKfCAjZGVmaW5lIEhBVkVfU1RSQ0hSIDEKfCAjZGVmaW5lIEhBVkVfU1RSQ01QIDEKfCAjZGVm aW5lIEhBVkVfSU5ERVggMQp8ICNkZWZpbmUgSEFWRV9CQ09QWSAxCnwgI2RlZmluZSBIQVZFX01F TUNQWSAxCnwgI2RlZmluZSBIQVZFX1JJTkRFWCAxCnwgI2RlZmluZSBIQVZFX1RSVU5DQVRFIDEK fCAjZGVmaW5lIEhBVkVfVU5TRVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9JU0JMQU5LIDEKfCAjZGVm aW5lIEhBVkVfU1RSTkNBU0VDTVAgMQp8ICNkZWZpbmUgSEFWRV9DUllQVF9IIDEKfCAjZGVmaW5l IEhBVkVfTkVUREJfSCAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfQ0hST09UIDEKfCAjZGVmaW5lIEhBVkVf RkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9HRVRMT0dJTiAxCnwgI2RlZmluZSBIQVZFX0NVU0VSSUQg MQp8ICNkZWZpbmUgSEFWRV9HRVRQUklPUklUWSAxCnwgI2RlZmluZSBIQVZFX1NFVFBSSU9SSVRZ IDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFTUyAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9TRVRIT1NUTkFNRSAwCnwgI2RlZmluZSBIQVZFX0NSWVBUIDEK fCAjZGVmaW5lIEhBVkVfTElCR01QIDEKfCAjZGVmaW5lIEhBVkVfSUNPTlYgMQp8ICNkZWZpbmUg RU5BQkxFX05MUyAxCnwgI2RlZmluZSBIQVZFX0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9EQ0dF VFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NUUlBUSU1FIDEKfCAjZGVmaW5lIEhBVkVfVU5J WF9ET01BSU5fU09DS0VUUyAxCnwgI2RlZmluZSBIQVZFX1NPQ0tFVFBBSVIgMQp8ICNkZWZpbmUg SEFWRV9HRVRHUk9VUFMgMQp8ICNkZWZpbmUgSEFWRV9TRVRHUk9VUFMgMQp8ICNkZWZpbmUgSEFW RV9TRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX1BBVVNFIDEKfCAjZGVmaW5lIEhBVkVfVFpTRVQg MQp8ICNkZWZpbmUgSEFWRV9TRVRIT1NURU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5ESE9TVEVOVCAx CnwgI2RlZmluZSBIQVZFX1NFVFBST1RPRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFJPVE9FTlQg MQp8ICNkZWZpbmUgSEFWRV9FTkRQUk9UT0VOVCAxCnwgI2RlZmluZSBIQVZFX1NFVFNFUlZFTlQg MQp8ICNkZWZpbmUgSEFWRV9HRVRTRVJWRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EU0VSVkVOVCAx CnwgI2RlZmluZSBIQVZFX0lORVRfTUFLRUFERFIgMQp8ICNkZWZpbmUgSEFWRV9JTkVUX05FVE9G IDEKfCAjZGVmaW5lIEhBVkVfSFNUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9QVE9OIDEK fCAjZGVmaW5lIEhBVkVfSU5FVF9OVE9QIDEKfCAjZGVmaW5lIEhBVkVfSF9FUlJOTyAxCnwgI2Rl ZmluZSBIQVZFX1VJTlQzMl9UIDEKfCAjZGVmaW5lIExPQ0FMVElNRV9DQUNIRSAxCnwgI2RlZmlu ZSBIQVZFX1JFU1RBUlRBQkxFX1NZU0NBTExTIDEKfCAjZGVmaW5lIEhBVkVfUkVHQ09NUCAxCnwg I2RlZmluZSBIQVZFX0lORVRfQVRPTiAxCnwgI2RlZmluZSBIQVZFX1BVVEVOViAxCnwgI2RlZmlu ZSBIQVZFX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfTUVNTU9WRSAxCnwgI2RlZmluZSBIQVZF X01LU1RFTVAgMQp8ICNkZWZpbmUgSEFWRV9JRUVFRlBfSCAxCnwgI2RlZmluZSBIQVZFX0FTSU5I IDEKfCAjZGVmaW5lIEhBVkVfQUNPU0ggMQp8ICNkZWZpbmUgSEFWRV9BVEFOSCAxCnwgI2RlZmlu ZSBIQVZFX0NPUFlTSUdOIDEKfCAjZGVmaW5lIEhBVkVfRklOSVRFIDEKfCAjZGVmaW5lIEhBVkVf U0lOQ09TIDEKfCAjZGVmaW5lIEhBVkVfVFJVTkMgMQp8ICNkZWZpbmUgSEFWRV9JU0lORiAxCnwg I2RlZmluZSBIQVZFX0lTTkFOIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUg SEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9SREVWIDEKfCAjZGVm aW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfQkxLU0laRSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9T VEFUX1NUX0JMT0NLUyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfVFpOQU1FIDEKfCAjZGVmaW5lIEhB VkVfVFpOQU1FIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgYXV4IChsKSB1bnNpZ25lZCBs b25nIGw7CnwgCSAgICAgeyBpbnQgeDsgZXhpdCAobCA+PSAoKHVuc2lnbmVkIGxvbmcpJngpKTsg fQp8IAkgICBtYWluICgpIHsgaW50IHE7IGF1eCgodW5zaWduZWQgbG9uZykmcSk7IH0KY29uZmln dXJlOjQxNjkxOiBjaGVja2luZyBmb3IgZmxvYXQKY29uZmlndXJlOjQxNzIxOiBnY2MgLWMgLWcg LU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6NDE3Mjc6ICQ/ID0gMApjb25maWd1cmU6NDE3 NDI6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo0MTc0OTogY2hlY2tpbmcgc2l6ZSBvZiBmbG9hdApj b25maWd1cmU6NDIwNTE6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgY29uZnRlc3QuYyAt bGdtcCAtbGNyeXB0IC1sbSAtbGx0ZGwgID4mNQpjb25maWd1cmU6NDIwNTQ6ICQ/ID0gMApjb25m aWd1cmU6NDIwNjA6IC4vY29uZnRlc3QuZXhlCmNvbmZpZ3VyZTo0MjA2MzogJD8gPSAwCmNvbmZp Z3VyZTo0MjA4NjogcmVzdWx0OiA0CmNvbmZpZ3VyZTo0MjEwNDogY2hlY2tpbmcgZm9yIHN0cnVj dCBsaW5nZXIKY29uZmlndXJlOjQyMTMyOiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpj b25maWd1cmU6NDIxMzg6ICQ/ID0gMApjb25maWd1cmU6NDIxNTQ6IHJlc3VsdDogeWVzCmNvbmZp Z3VyZTo0MjE2NzogY2hlY2tpbmcgZm9yIHN0cnVjdCB0aW1lc3BlYwpjb25maWd1cmU6NDIxOTc6 IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo0MjIwMzogJD8gPSAwCmNv bmZpZ3VyZTo0MjIxOTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjQyNDQ5OiBjaGVja2luZyBmb3Ig dGhlIHB0aHJlYWRzIGxpYnJhcnkgLWxwdGhyZWFkcwpjb25maWd1cmU6NDI0OTI6IGdjYyAtbyBj b25mdGVzdC5leGUgLWcgLU8yICAgIGNvbmZ0ZXN0LmMgLWxwdGhyZWFkcyAtbGdtcCAtbGNyeXB0 IC1sbSAtbGx0ZGwgID4mNQovdXNyL2xpYi9nY2MvaTY4Ni1wYy1jeWd3aW4vMy40LjQvLi4vLi4v Li4vLi4vaTY4Ni1wYy1jeWd3aW4vYmluL2xkOiBjYW5ub3QgZmluZCAtbHB0aHJlYWRzCmNvbGxl Y3QyOiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVzCmNvbmZpZ3VyZTo0MjQ5ODogJD8gPSAxCmNv bmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8ICNkZWZp bmUgUEFDS0FHRV9OQU1FICJndWlsZSIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZ3VpbGUi CnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJ TkcgImd1aWxlIDEuOC40Igp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImJ1Zy1ndWlsZUBn bnUub3JnIgp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVT X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0gg MQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAj ZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2Rl ZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUg SEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEhBVkVfTElCTFRETCAxCnwgI2RlZmluZSBTQ01fV0FS Tl9ERVBSRUNBVEVEX0RFRkFVTFQgInN1bW1hcnkiCnwgI2RlZmluZSBHVUlMRV9VU0VfNjRfQ0FM TFMgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWCAxCnwgI2RlZmluZSBIQVZFX05FVFdPUktJTkcgMQp8 ICNkZWZpbmUgU0laRU9GX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0NIQVIgMQp8 ICNkZWZpbmUgU0laRU9GX1NIT1JUIDIKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9TSE9SVCAy CnwgI2RlZmluZSBTSVpFT0ZfSU5UIDQKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9JTlQgNAp8 ICNkZWZpbmUgU0laRU9GX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xPTkcgNAp8 ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmluZSBTSVpFT0ZfTE9OR19MT05HIDgKfCAj ZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9MT05HX0xPTkcgOAp8ICNkZWZpbmUgU0laRU9GX19fSU5U NjQgMAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX19fSU5UNjQgMAp8ICNkZWZpbmUgU0laRU9G X1ZPSURfUCA0CnwgI2RlZmluZSBTSVpFT0ZfSU5UUFRSX1QgNAp8ICNkZWZpbmUgU0laRU9GX1VJ TlRQVFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfUFRSRElGRl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9T SVpFX1QgNAp8ICNkZWZpbmUgU0laRU9GX09GRl9UIDgKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0gg MQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIFNJWkVPRl9JTlRNQVhfVCA4 CnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2Rl ZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAj ZGVmaW5lIEhBVkVfSU9fSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhB VkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1BS T0NFU1NfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfUkVHRVhf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19JT0NUTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVD VF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1F Ql9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQ RVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfVElNRV9I IDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9VVElNRV9IIDEKfCAj ZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9HUlBfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFW RV9VTklTVERfSCAxCnwgI2RlZmluZSBHRVRHUk9VUFNfVCBnaWRfdAp8ICNkZWZpbmUgUkVUU0lH VFlQRSB2b2lkCnwgI2RlZmluZSBIQVZFX0xJQk0gMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUQllO QU1FIDEKfCAjZGVmaW5lIEhBVkVfQ09OTkVDVCAxCnwgI2RlZmluZSBIQVZFX0FTU0VSVF9IIDEK fCAjZGVmaW5lIEhBVkVfQ1RFUk1JRCAxCnwgI2RlZmluZSBIQVZFX0ZUSU1FIDEKfCAjZGVmaW5l IEhBVkVfRlRSVU5DQVRFIDEKfCAjZGVmaW5lIEhBVkVfRkNIT1dOIDEKfCAjZGVmaW5lIEhBVkVf R0VUQ1dEIDEKfCAjZGVmaW5lIEhBVkVfR0VURVVJRCAxCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVP RkRBWSAxCnwgI2RlZmluZSBIQVZFX0dNVElNRV9SIDEKfCAjZGVmaW5lIEhBVkVfSU9DVEwgMQp8 ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwgI2RlZmluZSBIQVZFX01LRElSIDEKfCAjZGVmaW5lIEhB VkVfTUtOT0QgMQp8ICNkZWZpbmUgSEFWRV9OSUNFIDEKfCAjZGVmaW5lIEhBVkVfUElQRSAxCnwg I2RlZmluZSBIQVZFX19QSVBFIDEKfCAjZGVmaW5lIEhBVkVfUkVBRERJUl9SIDEKfCAjZGVmaW5l IEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFWRV9SRU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9S TURJUiAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1NFVEVHSUQgMQp8 ICNkZWZpbmUgSEFWRV9TRVRFVUlEIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVm aW5lIEhBVkVfU0VUUEdJRCAxCnwgI2RlZmluZSBIQVZFX1NFVFNJRCAxCnwgI2RlZmluZSBIQVZF X1NJR0FDVElPTiAxCnwgI2RlZmluZSBIQVZFX1NJR0lOVEVSUlVQVCAxCnwgI2RlZmluZSBIQVZF X1NUUkZUSU1FIDEKfCAjZGVmaW5lIEhBVkVfU1RSUFRJTUUgMQp8ICNkZWZpbmUgSEFWRV9TWU1M SU5LIDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAxCnwgI2RlZmluZSBIQVZFX1NZU0NPTkYgMQp8ICNk ZWZpbmUgSEFWRV9UQ0dFVFBHUlAgMQp8ICNkZWZpbmUgSEFWRV9UQ1NFVFBHUlAgMQp8ICNkZWZp bmUgSEFWRV9USU1FUyAxCnwgI2RlZmluZSBIQVZFX1VOQU1FIDEKfCAjZGVmaW5lIEhBVkVfV0FJ VFBJRCAxCnwgI2RlZmluZSBIQVZFX1NUUkRVUCAxCnwgI2RlZmluZSBIQVZFX1NZU1RFTSAxCnwg I2RlZmluZSBIQVZFX1VTTEVFUCAxCnwgI2RlZmluZSBIQVZFX0FURVhJVCAxCnwgI2RlZmluZSBI QVZFX09OX0VYSVQgMQp8ICNkZWZpbmUgSEFWRV9DSE9XTiAxCnwgI2RlZmluZSBIQVZFX0xJTksg MQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmluZSBIQVZFX1RUWU5BTUUgMQp8ICNkZWZp bmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZFX0dFVEdSRU5UIDEKfCAjZGVmaW5lIEhB VkVfS0lMTCAxCnwgI2RlZmluZSBIQVZFX0dFVFBQSUQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQR1JQ IDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2Rl ZmluZSBIQVZFX0dFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX1NUUkNIUiAxCnwgI2RlZmluZSBI QVZFX1NUUkNNUCAxCnwgI2RlZmluZSBIQVZFX0lOREVYIDEKfCAjZGVmaW5lIEhBVkVfQkNPUFkg MQp8ICNkZWZpbmUgSEFWRV9NRU1DUFkgMQp8ICNkZWZpbmUgSEFWRV9SSU5ERVggMQp8ICNkZWZp bmUgSEFWRV9UUlVOQ0FURSAxCnwgI2RlZmluZSBIQVZFX1VOU0VURU5WIDEKfCAjZGVmaW5lIEhB VkVfSVNCTEFOSyAxCnwgI2RlZmluZSBIQVZFX1NUUk5DQVNFQ01QIDEKfCAjZGVmaW5lIEhBVkVf Q1JZUFRfSCAxCnwgI2RlZmluZSBIQVZFX05FVERCX0ggMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFE X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNP VVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX0NIUk9P VCAxCnwgI2RlZmluZSBIQVZFX0ZMT0NLIDEKfCAjZGVmaW5lIEhBVkVfR0VUTE9HSU4gMQp8ICNk ZWZpbmUgSEFWRV9DVVNFUklEIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFJJT1JJVFkgMQp8ICNkZWZp bmUgSEFWRV9TRVRQUklPUklUWSAxCnwgI2RlZmluZSBIQVZFX0dFVFBBU1MgMQp8ICNkZWZpbmUg SEFWRV9HRVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0VUSE9TVE5BTUUgMAp8ICNk ZWZpbmUgSEFWRV9DUllQVCAxCnwgI2RlZmluZSBIQVZFX0xJQkdNUCAxCnwgI2RlZmluZSBIQVZF X0lDT05WIDEKfCAjZGVmaW5lIEVOQUJMRV9OTFMgMQp8ICNkZWZpbmUgSEFWRV9HRVRURVhUIDEK fCAjZGVmaW5lIEhBVkVfRENHRVRURVhUIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TVFJQVElNRSAx CnwgI2RlZmluZSBIQVZFX1VOSVhfRE9NQUlOX1NPQ0tFVFMgMQp8ICNkZWZpbmUgSEFWRV9TT0NL RVRQQUlSIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JPVVBTIDEKfCAjZGVmaW5lIEhBVkVfU0VUR1JP VVBTIDEKfCAjZGVmaW5lIEhBVkVfU0VUUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9QQVVTRSAxCnwg I2RlZmluZSBIQVZFX1RaU0VUIDEKfCAjZGVmaW5lIEhBVkVfU0VUSE9TVEVOVCAxCnwgI2RlZmlu ZSBIQVZFX0VOREhPU1RFTlQgMQp8ICNkZWZpbmUgSEFWRV9TRVRQUk9UT0VOVCAxCnwgI2RlZmlu ZSBIQVZFX0dFVFBST1RPRU5UIDEKfCAjZGVmaW5lIEhBVkVfRU5EUFJPVE9FTlQgMQp8ICNkZWZp bmUgSEFWRV9TRVRTRVJWRU5UIDEKfCAjZGVmaW5lIEhBVkVfR0VUU0VSVkVOVCAxCnwgI2RlZmlu ZSBIQVZFX0VORFNFUlZFTlQgMQp8ICNkZWZpbmUgSEFWRV9JTkVUX01BS0VBRERSIDEKfCAjZGVm aW5lIEhBVkVfSU5FVF9ORVRPRiAxCnwgI2RlZmluZSBIQVZFX0hTVFJFUlJPUiAxCnwgI2RlZmlu ZSBIQVZFX0lORVRfUFRPTiAxCnwgI2RlZmluZSBIQVZFX0lORVRfTlRPUCAxCnwgI2RlZmluZSBI QVZFX0hfRVJSTk8gMQp8ICNkZWZpbmUgSEFWRV9VSU5UMzJfVCAxCnwgI2RlZmluZSBMT0NBTFRJ TUVfQ0FDSEUgMQp8ICNkZWZpbmUgSEFWRV9SRVNUQVJUQUJMRV9TWVNDQUxMUyAxCnwgI2RlZmlu ZSBIQVZFX1JFR0NPTVAgMQp8ICNkZWZpbmUgSEFWRV9JTkVUX0FUT04gMQp8ICNkZWZpbmUgSEFW RV9QVVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9TVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZFX01FTU1P VkUgMQp8ICNkZWZpbmUgSEFWRV9NS1NURU1QIDEKfCAjZGVmaW5lIEhBVkVfSUVFRUZQX0ggMQp8 ICNkZWZpbmUgSEFWRV9BU0lOSCAxCnwgI2RlZmluZSBIQVZFX0FDT1NIIDEKfCAjZGVmaW5lIEhB VkVfQVRBTkggMQp8ICNkZWZpbmUgSEFWRV9DT1BZU0lHTiAxCnwgI2RlZmluZSBIQVZFX0ZJTklU RSAxCnwgI2RlZmluZSBIQVZFX1NJTkNPUyAxCnwgI2RlZmluZSBIQVZFX1RSVU5DIDEKfCAjZGVm aW5lIEhBVkVfSVNJTkYgMQp8ICNkZWZpbmUgSEFWRV9JU05BTiAxCnwgI2RlZmluZSBIQVZFX0FM TE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NU QVRfU1RfUkRFViAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX0JMS1NJWkUgMQp8ICNk ZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9CTE9DS1MgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1Ra TkFNRSAxCnwgI2RlZmluZSBIQVZFX1RaTkFNRSAxCnwgI2RlZmluZSBTSVpFT0ZfRkxPQVQgNAp8 ICNkZWZpbmUgU0NNX1NJTkdMRVMgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfTElOR0VSIDEKfCAj ZGVmaW5lIEhBVkVfU1RSVUNUX1RJTUVTUEVDIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwg I2luY2x1ZGUgPHB0aHJlYWQuaD4KfCBpbnQKfCBtYWluICgpCnwgewp8IHB0aHJlYWRfdCB0aDsg cHRocmVhZF9qb2luKHRoLCAwKTsKfCAgICAgICAgICAgICAgICAgICAgICBwdGhyZWFkX2F0dHJf aW5pdCgwKTsgcHRocmVhZF9jbGVhbnVwX3B1c2goMCwgMCk7CnwgICAgICAgICAgICAgICAgICAg ICAgcHRocmVhZF9jcmVhdGUoMCwwLDAsMCk7IHB0aHJlYWRfY2xlYW51cF9wb3AoMCk7CnwgICA7 CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZTo0MjUxODogcmVzdWx0OiBubwpjb25maWd1cmU6 NDIzOTQ6IGNoZWNraW5nIHdoZXRoZXIgcHRocmVhZHMgd29yayB3aXRob3V0IGFueSBmbGFncwpj b25maWd1cmU6NDI0OTI6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAgIGNvbmZ0ZXN0LmMg IC1sZ21wIC1sY3J5cHQgLWxtIC1sbHRkbCAgPiY1CmNvbmZpZ3VyZTo0MjQ5ODogJD8gPSAwCmNv bmZpZ3VyZTo0MjUxODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjQyNTM3OiBjaGVja2luZyBmb3Ig am9pbmFibGUgcHRocmVhZCBhdHRyaWJ1dGUKY29uZmlndXJlOjQyNTYyOiBnY2MgLW8gY29uZnRl c3QuZXhlIC1nIC1PMiAgICBjb25mdGVzdC5jICAtbGdtcCAtbGNyeXB0IC1sbSAtbGx0ZGwgID4m NQpjb25maWd1cmU6NDI1Njg6ICQ/ID0gMApjb25maWd1cmU6NDI1ODU6IHJlc3VsdDogUFRIUkVB RF9DUkVBVEVfSk9JTkFCTEUKY29uZmlndXJlOjQyNTk1OiBjaGVja2luZyBpZiBtb3JlIHNwZWNp YWwgZmxhZ3MgYXJlIHJlcXVpcmVkIGZvciBwdGhyZWFkcwpjb25maWd1cmU6NDI2MDI6IHJlc3Vs dDogbm8KY29uZmlndXJlOjQyNzAzOiBjaGVja2luZyBmb3IgcHRocmVhZF9hdHRyX2dldHN0YWNr CmNvbmZpZ3VyZTo0Mjc1OTogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAgLWcgLU8yICAgY29uZnRlc3Qu YyAgLWxnbXAgLWxjcnlwdCAtbG0gLWxsdGRsICA+JjUKL2N5Z2RyaXZlL2MvRE9DVU1FfjEvQWFy b24vTE9DQUxTfjEvVGVtcC9jY21zcUJnVC5vOiBJbiBmdW5jdGlvbiBgbWFpbic6Ci9ob21lL0Fh cm9uL2d1aWxlLTEuOC40L2NvbmZ0ZXN0LmM6MjQ5OiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBf cHRocmVhZF9hdHRyX2dldHN0YWNrJwpjb2xsZWN0MjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1 cwpjb25maWd1cmU6NDI3NjU6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoK fCAvKiBjb25mZGVmcy5oLiAgKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiZ3VpbGUiCnwgI2Rl ZmluZSBQQUNLQUdFX1RBUk5BTUUgImd1aWxlIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIx LjguNCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJndWlsZSAxLjguNCIKfCAjZGVmaW5lIFBB Q0tBR0VfQlVHUkVQT1JUICJidWctZ3VpbGVAZ251Lm9yZyIKfCAjZGVmaW5lIFNURENfSEVBREVS UyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRf SCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8 ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2Rl ZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmlu ZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRExGQ05fSCAxCnwgI2RlZmluZSBIQVZF X0xJQkxUREwgMQp8ICNkZWZpbmUgU0NNX1dBUk5fREVQUkVDQVRFRF9ERUZBVUxUICJzdW1tYXJ5 Igp8ICNkZWZpbmUgR1VJTEVfVVNFXzY0X0NBTExTIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVggMQp8 ICNkZWZpbmUgSEFWRV9ORVRXT1JLSU5HIDEKfCAjZGVmaW5lIFNJWkVPRl9DSEFSIDEKfCAjZGVm aW5lIFNJWkVPRl9VTlNJR05FRF9DSEFSIDEKfCAjZGVmaW5lIFNJWkVPRl9TSE9SVCAyCnwgI2Rl ZmluZSBTSVpFT0ZfVU5TSUdORURfU0hPUlQgMgp8ICNkZWZpbmUgU0laRU9GX0lOVCA0CnwgI2Rl ZmluZSBTSVpFT0ZfVU5TSUdORURfSU5UIDQKfCAjZGVmaW5lIFNJWkVPRl9MT05HIDQKfCAjZGVm aW5lIFNJWkVPRl9VTlNJR05FRF9MT05HIDQKfCAjZGVmaW5lIFNJWkVPRl9TSVpFX1QgNAp8ICNk ZWZpbmUgU0laRU9GX0xPTkdfTE9ORyA4CnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfTE9OR19M T05HIDgKfCAjZGVmaW5lIFNJWkVPRl9fX0lOVDY0IDAKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05F RF9fX0lOVDY0IDAKfCAjZGVmaW5lIFNJWkVPRl9WT0lEX1AgNAp8ICNkZWZpbmUgU0laRU9GX0lO VFBUUl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9VSU5UUFRSX1QgNAp8ICNkZWZpbmUgU0laRU9GX1BU UkRJRkZfVCA0CnwgI2RlZmluZSBTSVpFT0ZfU0laRV9UIDQKfCAjZGVmaW5lIFNJWkVPRl9PRkZf VCA4CnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAx CnwgI2RlZmluZSBTSVpFT0ZfSU5UTUFYX1QgOAp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAj ZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX0lPX0ggMQp8ICNkZWZpbmUg SEFWRV9MSU1JVFNfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVf TUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9QUk9DRVNTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJ TkdfSCAxCnwgI2RlZmluZSBIQVZFX1JFR0VYX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfSU9DVExf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1F X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRUJfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1F U19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRJ TUVfSCAxCnwgI2RlZmluZSBIQVZFX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEK fCAjZGVmaW5lIEhBVkVfVVRJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5l IEhBVkVfR1JQX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhB VkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgR0VUR1JP VVBTX1QgZ2lkX3QKfCAjZGVmaW5lIFJFVFNJR1RZUEUgdm9pZAp8ICNkZWZpbmUgSEFWRV9MSUJN IDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVEJZTkFNRSAxCnwgI2RlZmluZSBIQVZFX0NPTk5FQ1Qg MQp8ICNkZWZpbmUgSEFWRV9BU1NFUlRfSCAxCnwgI2RlZmluZSBIQVZFX0NURVJNSUQgMQp8ICNk ZWZpbmUgSEFWRV9GVElNRSAxCnwgI2RlZmluZSBIQVZFX0ZUUlVOQ0FURSAxCnwgI2RlZmluZSBI QVZFX0ZDSE9XTiAxCnwgI2RlZmluZSBIQVZFX0dFVENXRCAxCnwgI2RlZmluZSBIQVZFX0dFVEVV SUQgMQp8ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9HTVRJTUVf UiAxCnwgI2RlZmluZSBIQVZFX0lPQ1RMIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZp bmUgSEFWRV9NS0RJUiAxCnwgI2RlZmluZSBIQVZFX01LTk9EIDEKfCAjZGVmaW5lIEhBVkVfTklD RSAxCnwgI2RlZmluZSBIQVZFX1BJUEUgMQp8ICNkZWZpbmUgSEFWRV9fUElQRSAxCnwgI2RlZmlu ZSBIQVZFX1JFQURESVJfUiAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhB VkVfUkVOQU1FIDEKfCAjZGVmaW5lIEhBVkVfUk1ESVIgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1Qg MQp8ICNkZWZpbmUgSEFWRV9TRVRFR0lEIDEKfCAjZGVmaW5lIEhBVkVfU0VURVVJRCAxCnwgI2Rl ZmluZSBIQVZFX1NFVExPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX1NFVFBHSUQgMQp8ICNkZWZpbmUg SEFWRV9TRVRTSUQgMQp8ICNkZWZpbmUgSEFWRV9TSUdBQ1RJT04gMQp8ICNkZWZpbmUgSEFWRV9T SUdJTlRFUlJVUFQgMQp8ICNkZWZpbmUgSEFWRV9TVFJGVElNRSAxCnwgI2RlZmluZSBIQVZFX1NU UlBUSU1FIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX1NZTkMgMQp8 ICNkZWZpbmUgSEFWRV9TWVNDT05GIDEKfCAjZGVmaW5lIEhBVkVfVENHRVRQR1JQIDEKfCAjZGVm aW5lIEhBVkVfVENTRVRQR1JQIDEKfCAjZGVmaW5lIEhBVkVfVElNRVMgMQp8ICNkZWZpbmUgSEFW RV9VTkFNRSAxCnwgI2RlZmluZSBIQVZFX1dBSVRQSUQgMQp8ICNkZWZpbmUgSEFWRV9TVFJEVVAg MQp8ICNkZWZpbmUgSEFWRV9TWVNURU0gMQp8ICNkZWZpbmUgSEFWRV9VU0xFRVAgMQp8ICNkZWZp bmUgSEFWRV9BVEVYSVQgMQp8ICNkZWZpbmUgSEFWRV9PTl9FWElUIDEKfCAjZGVmaW5lIEhBVkVf Q0hPV04gMQp8ICNkZWZpbmUgSEFWRV9MSU5LIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNk ZWZpbmUgSEFWRV9UVFlOQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUUFdFTlQgMQp8ICNkZWZpbmUg SEFWRV9HRVRHUkVOVCAxCnwgI2RlZmluZSBIQVZFX0tJTEwgMQp8ICNkZWZpbmUgSEFWRV9HRVRQ UElEIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEdSUCAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNk ZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9HRVRJVElNRVIgMQp8ICNkZWZp bmUgSEFWRV9TVFJDSFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJDTVAgMQp8ICNkZWZpbmUgSEFWRV9J TkRFWCAxCnwgI2RlZmluZSBIQVZFX0JDT1BZIDEKfCAjZGVmaW5lIEhBVkVfTUVNQ1BZIDEKfCAj ZGVmaW5lIEhBVkVfUklOREVYIDEKfCAjZGVmaW5lIEhBVkVfVFJVTkNBVEUgMQp8ICNkZWZpbmUg SEFWRV9VTlNFVEVOViAxCnwgI2RlZmluZSBIQVZFX0lTQkxBTksgMQp8ICNkZWZpbmUgSEFWRV9T VFJOQ0FTRUNNUCAxCnwgI2RlZmluZSBIQVZFX0NSWVBUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRE Ql9IIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFN X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19G SUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9DSFJPT1QgMQp8ICNkZWZpbmUgSEFWRV9GTE9DSyAxCnwg I2RlZmluZSBIQVZFX0dFVExPR0lOIDEKfCAjZGVmaW5lIEhBVkVfQ1VTRVJJRCAxCnwgI2RlZmlu ZSBIQVZFX0dFVFBSSU9SSVRZIDEKfCAjZGVmaW5lIEhBVkVfU0VUUFJJT1JJVFkgMQp8ICNkZWZp bmUgSEFWRV9HRVRQQVNTIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUg SEFWRV9ERUNMX1NFVEhPU1ROQU1FIDAKfCAjZGVmaW5lIEhBVkVfQ1JZUFQgMQp8ICNkZWZpbmUg SEFWRV9MSUJHTVAgMQp8ICNkZWZpbmUgSEFWRV9JQ09OViAxCnwgI2RlZmluZSBFTkFCTEVfTkxT IDEKfCAjZGVmaW5lIEhBVkVfR0VUVEVYVCAxCnwgI2RlZmluZSBIQVZFX0RDR0VUVEVYVCAxCnwg I2RlZmluZSBIQVZFX0RFQ0xfU1RSUFRJTUUgMQp8ICNkZWZpbmUgSEFWRV9VTklYX0RPTUFJTl9T T0NLRVRTIDEKfCAjZGVmaW5lIEhBVkVfU09DS0VUUEFJUiAxCnwgI2RlZmluZSBIQVZFX0dFVEdS T1VQUyAxCnwgI2RlZmluZSBIQVZFX1NFVEdST1VQUyAxCnwgI2RlZmluZSBIQVZFX1NFVFBXRU5U IDEKfCAjZGVmaW5lIEhBVkVfUEFVU0UgMQp8ICNkZWZpbmUgSEFWRV9UWlNFVCAxCnwgI2RlZmlu ZSBIQVZFX1NFVEhPU1RFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRIT1NURU5UIDEKfCAjZGVmaW5l IEhBVkVfU0VUUFJPVE9FTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRQUk9UT0VOVCAxCnwgI2RlZmlu ZSBIQVZFX0VORFBST1RPRU5UIDEKfCAjZGVmaW5lIEhBVkVfU0VUU0VSVkVOVCAxCnwgI2RlZmlu ZSBIQVZFX0dFVFNFUlZFTlQgMQp8ICNkZWZpbmUgSEFWRV9FTkRTRVJWRU5UIDEKfCAjZGVmaW5l IEhBVkVfSU5FVF9NQUtFQUREUiAxCnwgI2RlZmluZSBIQVZFX0lORVRfTkVUT0YgMQp8ICNkZWZp bmUgSEFWRV9IU1RSRVJST1IgMQp8ICNkZWZpbmUgSEFWRV9JTkVUX1BUT04gMQp8ICNkZWZpbmUg SEFWRV9JTkVUX05UT1AgMQp8ICNkZWZpbmUgSEFWRV9IX0VSUk5PIDEKfCAjZGVmaW5lIEhBVkVf VUlOVDMyX1QgMQp8ICNkZWZpbmUgTE9DQUxUSU1FX0NBQ0hFIDEKfCAjZGVmaW5lIEhBVkVfUkVT VEFSVEFCTEVfU1lTQ0FMTFMgMQp8ICNkZWZpbmUgSEFWRV9SRUdDT01QIDEKfCAjZGVmaW5lIEhB VkVfSU5FVF9BVE9OIDEKfCAjZGVmaW5lIEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfU1RS RVJST1IgMQp8ICNkZWZpbmUgSEFWRV9NRU1NT1ZFIDEKfCAjZGVmaW5lIEhBVkVfTUtTVEVNUCAx CnwgI2RlZmluZSBIQVZFX0lFRUVGUF9IIDEKfCAjZGVmaW5lIEhBVkVfQVNJTkggMQp8ICNkZWZp bmUgSEFWRV9BQ09TSCAxCnwgI2RlZmluZSBIQVZFX0FUQU5IIDEKfCAjZGVmaW5lIEhBVkVfQ09Q WVNJR04gMQp8ICNkZWZpbmUgSEFWRV9GSU5JVEUgMQp8ICNkZWZpbmUgSEFWRV9TSU5DT1MgMQp8 ICNkZWZpbmUgSEFWRV9UUlVOQyAxCnwgI2RlZmluZSBIQVZFX0lTSU5GIDEKfCAjZGVmaW5lIEhB VkVfSVNOQU4gMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAxCnwgI2RlZmluZSBIQVZFX0FMTE9D QSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX1JERVYgMQp8ICNkZWZpbmUgSEFWRV9T VFJVQ1RfU1RBVF9TVF9CTEtTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfQkxP Q0tTIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9UWk5BTUUgMQp8ICNkZWZpbmUgSEFWRV9UWk5BTUUg MQp8ICNkZWZpbmUgU0laRU9GX0ZMT0FUIDQKfCAjZGVmaW5lIFNDTV9TSU5HTEVTIDEKfCAjZGVm aW5lIEhBVkVfU1RSVUNUX0xJTkdFUiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9USU1FU1BFQyAx CnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8IC8qIERlZmluZSBwdGhyZWFkX2F0dHJfZ2V0c3Rh Y2sgdG8gYW4gaW5ub2N1b3VzIHZhcmlhbnQsIGluIGNhc2UgPGxpbWl0cy5oPiBkZWNsYXJlcyBw dGhyZWFkX2F0dHJfZ2V0c3RhY2suCnwgICAgRm9yIGV4YW1wbGUsIEhQLVVYIDExaSA8bGltaXRz Lmg+IGRlY2xhcmVzIGdldHRpbWVvZmRheS4gICovCnwgI2RlZmluZSBwdGhyZWFkX2F0dHJfZ2V0 c3RhY2sgaW5ub2N1b3VzX3B0aHJlYWRfYXR0cl9nZXRzdGFjawp8IAp8IC8qIFN5c3RlbSBoZWFk ZXIgdG8gZGVmaW5lIF9fc3R1YiBtYWNyb3MgYW5kIGhvcGVmdWxseSBmZXcgcHJvdG90eXBlcywK fCAgICAgd2hpY2ggY2FuIGNvbmZsaWN0IHdpdGggY2hhciBwdGhyZWFkX2F0dHJfZ2V0c3RhY2sg KCk7IGJlbG93Lgp8ICAgICBQcmVmZXIgPGxpbWl0cy5oPiB0byA8YXNzZXJ0Lmg+IGlmIF9fU1RE Q19fIGlzIGRlZmluZWQsIHNpbmNlCnwgICAgIDxsaW1pdHMuaD4gZXhpc3RzIGV2ZW4gb24gZnJl ZXN0YW5kaW5nIGNvbXBpbGVycy4gICovCnwgCnwgI2lmZGVmIF9fU1REQ19fCnwgIyBpbmNsdWRl IDxsaW1pdHMuaD4KfCAjZWxzZQp8ICMgaW5jbHVkZSA8YXNzZXJ0Lmg+CnwgI2VuZGlmCnwgCnwg I3VuZGVmIHB0aHJlYWRfYXR0cl9nZXRzdGFjawp8IAp8IC8qIE92ZXJyaWRlIGFueSBHQ0MgaW50 ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLgp8ICAgIFVzZSBjaGFyIGJlY2F1c2Ug aW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIEdDQwp8ICAgIGJ1aWx0aW4gYW5k IHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCnwgI2lm ZGVmIF9fY3BsdXNwbHVzCnwgZXh0ZXJuICJDIgp8ICNlbmRpZgp8IGNoYXIgcHRocmVhZF9hdHRy X2dldHN0YWNrICgpOwp8IC8qIFRoZSBHTlUgQyBsaWJyYXJ5IGRlZmluZXMgdGhpcyBmb3IgZnVu Y3Rpb25zIHdoaWNoIGl0IGltcGxlbWVudHMKfCAgICAgdG8gYWx3YXlzIGZhaWwgd2l0aCBFTk9T WVMuICBTb21lIGZ1bmN0aW9ucyBhcmUgYWN0dWFsbHkgbmFtZWQKfCAgICAgc29tZXRoaW5nIHN0 YXJ0aW5nIHdpdGggX18gYW5kIHRoZSBub3JtYWwgbmFtZSBpcyBhbiBhbGlhcy4gICovCnwgI2lm IGRlZmluZWQgX19zdHViX3B0aHJlYWRfYXR0cl9nZXRzdGFjayB8fCBkZWZpbmVkIF9fc3R1Yl9f X3B0aHJlYWRfYXR0cl9nZXRzdGFjawp8IGNob2tlIG1lCnwgI2VuZGlmCnwgCnwgaW50CnwgbWFp biAoKQp8IHsKfCByZXR1cm4gcHRocmVhZF9hdHRyX2dldHN0YWNrICgpOwp8ICAgOwp8ICAgcmV0 dXJuIDA7CnwgfQpjb25maWd1cmU6NDI3ODM6IHJlc3VsdDogbm8KY29uZmlndXJlOjQyNzAzOiBj aGVja2luZyBmb3IgcHRocmVhZF9nZXRhdHRyX25wCmNvbmZpZ3VyZTo0Mjc1OTogZ2NjIC1vIGNv bmZ0ZXN0LmV4ZSAgLWcgLU8yICAgY29uZnRlc3QuYyAgLWxnbXAgLWxjcnlwdCAtbG0gLWxsdGRs ICA+JjUKL2N5Z2RyaXZlL2MvRE9DVU1FfjEvQWFyb24vTE9DQUxTfjEvVGVtcC9jYzZBRmYzOS5v OiBJbiBmdW5jdGlvbiBgbWFpbic6Ci9ob21lL0Fhcm9uL2d1aWxlLTEuOC40L2NvbmZ0ZXN0LmM6 MjQ5OiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBfcHRocmVhZF9nZXRhdHRyX25wJwpjb2xsZWN0 MjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpjb25maWd1cmU6NDI3NjU6ICQ/ID0gMQpjb25m aWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAjZGVmaW5l IFBBQ0tBR0VfTkFNRSAiZ3VpbGUiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImd1aWxlIgp8 ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIxLjguNCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5H ICJndWlsZSAxLjguNCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ3VpbGVAZ251 Lm9yZyIKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEK fCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2Rl ZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZp bmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhB VkVfRExGQ05fSCAxCnwgI2RlZmluZSBIQVZFX0xJQkxUREwgMQp8ICNkZWZpbmUgU0NNX1dBUk5f REVQUkVDQVRFRF9ERUZBVUxUICJzdW1tYXJ5Igp8ICNkZWZpbmUgR1VJTEVfVVNFXzY0X0NBTExT IDEKfCAjZGVmaW5lIEhBVkVfUE9TSVggMQp8ICNkZWZpbmUgSEFWRV9ORVRXT1JLSU5HIDEKfCAj ZGVmaW5lIFNJWkVPRl9DSEFSIDEKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9DSEFSIDEKfCAj ZGVmaW5lIFNJWkVPRl9TSE9SVCAyCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfU0hPUlQgMgp8 ICNkZWZpbmUgU0laRU9GX0lOVCA0CnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfSU5UIDQKfCAj ZGVmaW5lIFNJWkVPRl9MT05HIDQKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9MT05HIDQKfCAj ZGVmaW5lIFNJWkVPRl9TSVpFX1QgNAp8ICNkZWZpbmUgU0laRU9GX0xPTkdfTE9ORyA4CnwgI2Rl ZmluZSBTSVpFT0ZfVU5TSUdORURfTE9OR19MT05HIDgKfCAjZGVmaW5lIFNJWkVPRl9fX0lOVDY0 IDAKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9fX0lOVDY0IDAKfCAjZGVmaW5lIFNJWkVPRl9W T0lEX1AgNAp8ICNkZWZpbmUgU0laRU9GX0lOVFBUUl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9VSU5U UFRSX1QgNAp8ICNkZWZpbmUgU0laRU9GX1BUUkRJRkZfVCA0CnwgI2RlZmluZSBTSVpFT0ZfU0la RV9UIDQKfCAjZGVmaW5lIFNJWkVPRl9PRkZfVCA4CnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEK fCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBTSVpFT0ZfSU5UTUFYX1QgOAp8 ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZp bmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2Rl ZmluZSBIQVZFX0lPX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2RlZmluZSBIQVZF X01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9QUk9D RVNTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX1JFR0VYX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfSU9DVExfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1Rf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRUJf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVT X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1RJTUVfSCAx CnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVfSCAxCnwgI2Rl ZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfR1JQX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVf VU5JU1REX0ggMQp8ICNkZWZpbmUgR0VUR1JPVVBTX1QgZ2lkX3QKfCAjZGVmaW5lIFJFVFNJR1RZ UEUgdm9pZAp8ICNkZWZpbmUgSEFWRV9MSUJNIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVEJZTkFN RSAxCnwgI2RlZmluZSBIQVZFX0NPTk5FQ1QgMQp8ICNkZWZpbmUgSEFWRV9BU1NFUlRfSCAxCnwg I2RlZmluZSBIQVZFX0NURVJNSUQgMQp8ICNkZWZpbmUgSEFWRV9GVElNRSAxCnwgI2RlZmluZSBI QVZFX0ZUUlVOQ0FURSAxCnwgI2RlZmluZSBIQVZFX0ZDSE9XTiAxCnwgI2RlZmluZSBIQVZFX0dF VENXRCAxCnwgI2RlZmluZSBIQVZFX0dFVEVVSUQgMQp8ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZE QVkgMQp8ICNkZWZpbmUgSEFWRV9HTVRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX0lPQ1RMIDEKfCAj ZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9NS0RJUiAxCnwgI2RlZmluZSBIQVZF X01LTk9EIDEKfCAjZGVmaW5lIEhBVkVfTklDRSAxCnwgI2RlZmluZSBIQVZFX1BJUEUgMQp8ICNk ZWZpbmUgSEFWRV9fUElQRSAxCnwgI2RlZmluZSBIQVZFX1JFQURESVJfUiAxCnwgI2RlZmluZSBI QVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfUkVOQU1FIDEKfCAjZGVmaW5lIEhBVkVfUk1E SVIgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9TRVRFR0lEIDEKfCAj ZGVmaW5lIEhBVkVfU0VURVVJRCAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FMRSAxCnwgI2RlZmlu ZSBIQVZFX1NFVFBHSUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRTSUQgMQp8ICNkZWZpbmUgSEFWRV9T SUdBQ1RJT04gMQp8ICNkZWZpbmUgSEFWRV9TSUdJTlRFUlJVUFQgMQp8ICNkZWZpbmUgSEFWRV9T VFJGVElNRSAxCnwgI2RlZmluZSBIQVZFX1NUUlBUSU1FIDEKfCAjZGVmaW5lIEhBVkVfU1lNTElO SyAxCnwgI2RlZmluZSBIQVZFX1NZTkMgMQp8ICNkZWZpbmUgSEFWRV9TWVNDT05GIDEKfCAjZGVm aW5lIEhBVkVfVENHRVRQR1JQIDEKfCAjZGVmaW5lIEhBVkVfVENTRVRQR1JQIDEKfCAjZGVmaW5l IEhBVkVfVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9VTkFNRSAxCnwgI2RlZmluZSBIQVZFX1dBSVRQ SUQgMQp8ICNkZWZpbmUgSEFWRV9TVFJEVVAgMQp8ICNkZWZpbmUgSEFWRV9TWVNURU0gMQp8ICNk ZWZpbmUgSEFWRV9VU0xFRVAgMQp8ICNkZWZpbmUgSEFWRV9BVEVYSVQgMQp8ICNkZWZpbmUgSEFW RV9PTl9FWElUIDEKfCAjZGVmaW5lIEhBVkVfQ0hPV04gMQp8ICNkZWZpbmUgSEFWRV9MSU5LIDEK fCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9UVFlOQU1FIDEKfCAjZGVmaW5l IEhBVkVfR0VUUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUkVOVCAxCnwgI2RlZmluZSBIQVZF X0tJTEwgMQp8ICNkZWZpbmUgSEFWRV9HRVRQUElEIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEdSUCAx CnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZp bmUgSEFWRV9HRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9TVFJDSFIgMQp8ICNkZWZpbmUgSEFW RV9TVFJDTVAgMQp8ICNkZWZpbmUgSEFWRV9JTkRFWCAxCnwgI2RlZmluZSBIQVZFX0JDT1BZIDEK fCAjZGVmaW5lIEhBVkVfTUVNQ1BZIDEKfCAjZGVmaW5lIEhBVkVfUklOREVYIDEKfCAjZGVmaW5l IEhBVkVfVFJVTkNBVEUgMQp8ICNkZWZpbmUgSEFWRV9VTlNFVEVOViAxCnwgI2RlZmluZSBIQVZF X0lTQkxBTksgMQp8ICNkZWZpbmUgSEFWRV9TVFJOQ0FTRUNNUCAxCnwgI2RlZmluZSBIQVZFX0NS WVBUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVREQl9IIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VS Q0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9DSFJPT1Qg MQp8ICNkZWZpbmUgSEFWRV9GTE9DSyAxCnwgI2RlZmluZSBIQVZFX0dFVExPR0lOIDEKfCAjZGVm aW5lIEhBVkVfQ1VTRVJJRCAxCnwgI2RlZmluZSBIQVZFX0dFVFBSSU9SSVRZIDEKfCAjZGVmaW5l IEhBVkVfU0VUUFJJT1JJVFkgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQVNTIDEKfCAjZGVmaW5lIEhB VkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFVEhPU1ROQU1FIDAKfCAjZGVm aW5lIEhBVkVfQ1JZUFQgMQp8ICNkZWZpbmUgSEFWRV9MSUJHTVAgMQp8ICNkZWZpbmUgSEFWRV9J Q09OViAxCnwgI2RlZmluZSBFTkFCTEVfTkxTIDEKfCAjZGVmaW5lIEhBVkVfR0VUVEVYVCAxCnwg I2RlZmluZSBIQVZFX0RDR0VUVEVYVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RSUFRJTUUgMQp8 ICNkZWZpbmUgSEFWRV9VTklYX0RPTUFJTl9TT0NLRVRTIDEKfCAjZGVmaW5lIEhBVkVfU09DS0VU UEFJUiAxCnwgI2RlZmluZSBIQVZFX0dFVEdST1VQUyAxCnwgI2RlZmluZSBIQVZFX1NFVEdST1VQ UyAxCnwgI2RlZmluZSBIQVZFX1NFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfUEFVU0UgMQp8ICNk ZWZpbmUgSEFWRV9UWlNFVCAxCnwgI2RlZmluZSBIQVZFX1NFVEhPU1RFTlQgMQp8ICNkZWZpbmUg SEFWRV9FTkRIT1NURU5UIDEKfCAjZGVmaW5lIEhBVkVfU0VUUFJPVE9FTlQgMQp8ICNkZWZpbmUg SEFWRV9HRVRQUk9UT0VOVCAxCnwgI2RlZmluZSBIQVZFX0VORFBST1RPRU5UIDEKfCAjZGVmaW5l IEhBVkVfU0VUU0VSVkVOVCAxCnwgI2RlZmluZSBIQVZFX0dFVFNFUlZFTlQgMQp8ICNkZWZpbmUg SEFWRV9FTkRTRVJWRU5UIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9NQUtFQUREUiAxCnwgI2RlZmlu ZSBIQVZFX0lORVRfTkVUT0YgMQp8ICNkZWZpbmUgSEFWRV9IU1RSRVJST1IgMQp8ICNkZWZpbmUg SEFWRV9JTkVUX1BUT04gMQp8ICNkZWZpbmUgSEFWRV9JTkVUX05UT1AgMQp8ICNkZWZpbmUgSEFW RV9IX0VSUk5PIDEKfCAjZGVmaW5lIEhBVkVfVUlOVDMyX1QgMQp8ICNkZWZpbmUgTE9DQUxUSU1F X0NBQ0hFIDEKfCAjZGVmaW5lIEhBVkVfUkVTVEFSVEFCTEVfU1lTQ0FMTFMgMQp8ICNkZWZpbmUg SEFWRV9SRUdDT01QIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9BVE9OIDEKfCAjZGVmaW5lIEhBVkVf UFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfU1RSRVJST1IgMQp8ICNkZWZpbmUgSEFWRV9NRU1NT1ZF IDEKfCAjZGVmaW5lIEhBVkVfTUtTVEVNUCAxCnwgI2RlZmluZSBIQVZFX0lFRUVGUF9IIDEKfCAj ZGVmaW5lIEhBVkVfQVNJTkggMQp8ICNkZWZpbmUgSEFWRV9BQ09TSCAxCnwgI2RlZmluZSBIQVZF X0FUQU5IIDEKfCAjZGVmaW5lIEhBVkVfQ09QWVNJR04gMQp8ICNkZWZpbmUgSEFWRV9GSU5JVEUg MQp8ICNkZWZpbmUgSEFWRV9TSU5DT1MgMQp8ICNkZWZpbmUgSEFWRV9UUlVOQyAxCnwgI2RlZmlu ZSBIQVZFX0lTSU5GIDEKfCAjZGVmaW5lIEhBVkVfSVNOQU4gMQp8ICNkZWZpbmUgSEFWRV9BTExP Q0FfSCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFU X1NUX1JERVYgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9CTEtTSVpFIDEKfCAjZGVm aW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfQkxPQ0tTIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9UWk5B TUUgMQp8ICNkZWZpbmUgSEFWRV9UWk5BTUUgMQp8ICNkZWZpbmUgU0laRU9GX0ZMT0FUIDQKfCAj ZGVmaW5lIFNDTV9TSU5HTEVTIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0xJTkdFUiAxCnwgI2Rl ZmluZSBIQVZFX1NUUlVDVF9USU1FU1BFQyAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8IC8q IERlZmluZSBwdGhyZWFkX2dldGF0dHJfbnAgdG8gYW4gaW5ub2N1b3VzIHZhcmlhbnQsIGluIGNh c2UgPGxpbWl0cy5oPiBkZWNsYXJlcyBwdGhyZWFkX2dldGF0dHJfbnAuCnwgICAgRm9yIGV4YW1w bGUsIEhQLVVYIDExaSA8bGltaXRzLmg+IGRlY2xhcmVzIGdldHRpbWVvZmRheS4gICovCnwgI2Rl ZmluZSBwdGhyZWFkX2dldGF0dHJfbnAgaW5ub2N1b3VzX3B0aHJlYWRfZ2V0YXR0cl9ucAp8IAp8 IC8qIFN5c3RlbSBoZWFkZXIgdG8gZGVmaW5lIF9fc3R1YiBtYWNyb3MgYW5kIGhvcGVmdWxseSBm ZXcgcHJvdG90eXBlcywKfCAgICAgd2hpY2ggY2FuIGNvbmZsaWN0IHdpdGggY2hhciBwdGhyZWFk X2dldGF0dHJfbnAgKCk7IGJlbG93Lgp8ICAgICBQcmVmZXIgPGxpbWl0cy5oPiB0byA8YXNzZXJ0 Lmg+IGlmIF9fU1REQ19fIGlzIGRlZmluZWQsIHNpbmNlCnwgICAgIDxsaW1pdHMuaD4gZXhpc3Rz IGV2ZW4gb24gZnJlZXN0YW5kaW5nIGNvbXBpbGVycy4gICovCnwgCnwgI2lmZGVmIF9fU1REQ19f CnwgIyBpbmNsdWRlIDxsaW1pdHMuaD4KfCAjZWxzZQp8ICMgaW5jbHVkZSA8YXNzZXJ0Lmg+Cnwg I2VuZGlmCnwgCnwgI3VuZGVmIHB0aHJlYWRfZ2V0YXR0cl9ucAp8IAp8IC8qIE92ZXJyaWRlIGFu eSBHQ0MgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLgp8ICAgIFVzZSBjaGFy IGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIEdDQwp8ICAgIGJ1 aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4g ICovCnwgI2lmZGVmIF9fY3BsdXNwbHVzCnwgZXh0ZXJuICJDIgp8ICNlbmRpZgp8IGNoYXIgcHRo cmVhZF9nZXRhdHRyX25wICgpOwp8IC8qIFRoZSBHTlUgQyBsaWJyYXJ5IGRlZmluZXMgdGhpcyBm b3IgZnVuY3Rpb25zIHdoaWNoIGl0IGltcGxlbWVudHMKfCAgICAgdG8gYWx3YXlzIGZhaWwgd2l0 aCBFTk9TWVMuICBTb21lIGZ1bmN0aW9ucyBhcmUgYWN0dWFsbHkgbmFtZWQKfCAgICAgc29tZXRo aW5nIHN0YXJ0aW5nIHdpdGggX18gYW5kIHRoZSBub3JtYWwgbmFtZSBpcyBhbiBhbGlhcy4gICov CnwgI2lmIGRlZmluZWQgX19zdHViX3B0aHJlYWRfZ2V0YXR0cl9ucCB8fCBkZWZpbmVkIF9fc3R1 Yl9fX3B0aHJlYWRfZ2V0YXR0cl9ucAp8IGNob2tlIG1lCnwgI2VuZGlmCnwgCnwgaW50CnwgbWFp biAoKQp8IHsKfCByZXR1cm4gcHRocmVhZF9nZXRhdHRyX25wICgpOwp8ICAgOwp8ICAgcmV0dXJu IDA7CnwgfQpjb25maWd1cmU6NDI3ODM6IHJlc3VsdDogbm8KY29uZmlndXJlOjQyNzAzOiBjaGVj a2luZyBmb3IgcHRocmVhZF9nZXRfc3RhY2thZGRyX25wCmNvbmZpZ3VyZTo0Mjc1OTogZ2NjIC1v IGNvbmZ0ZXN0LmV4ZSAgLWcgLU8yICAgY29uZnRlc3QuYyAgLWxnbXAgLWxjcnlwdCAtbG0gLWxs dGRsICA+JjUKL2N5Z2RyaXZlL2MvRE9DVU1FfjEvQWFyb24vTE9DQUxTfjEvVGVtcC9jYzl3TjVs ay5vOiBJbiBmdW5jdGlvbiBgbWFpbic6Ci9ob21lL0Fhcm9uL2d1aWxlLTEuOC40L2NvbmZ0ZXN0 LmM6MjQ5OiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBfcHRocmVhZF9nZXRfc3RhY2thZGRyX25w Jwpjb2xsZWN0MjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpjb25maWd1cmU6NDI3NjU6ICQ/ ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8K fCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiZ3VpbGUiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUg Imd1aWxlIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIxLjguNCIKfCAjZGVmaW5lIFBBQ0tB R0VfU1RSSU5HICJndWlsZSAxLjguNCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJidWct Z3VpbGVAZ251Lm9yZyIKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZ U19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NU RExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllf SCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0gg MQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAj ZGVmaW5lIEhBVkVfRExGQ05fSCAxCnwgI2RlZmluZSBIQVZFX0xJQkxUREwgMQp8ICNkZWZpbmUg U0NNX1dBUk5fREVQUkVDQVRFRF9ERUZBVUxUICJzdW1tYXJ5Igp8ICNkZWZpbmUgR1VJTEVfVVNF XzY0X0NBTExTIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVggMQp8ICNkZWZpbmUgSEFWRV9ORVRXT1JL SU5HIDEKfCAjZGVmaW5lIFNJWkVPRl9DSEFSIDEKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9D SEFSIDEKfCAjZGVmaW5lIFNJWkVPRl9TSE9SVCAyCnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURf U0hPUlQgMgp8ICNkZWZpbmUgU0laRU9GX0lOVCA0CnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURf SU5UIDQKfCAjZGVmaW5lIFNJWkVPRl9MT05HIDQKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9M T05HIDQKfCAjZGVmaW5lIFNJWkVPRl9TSVpFX1QgNAp8ICNkZWZpbmUgU0laRU9GX0xPTkdfTE9O RyA4CnwgI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfTE9OR19MT05HIDgKfCAjZGVmaW5lIFNJWkVP Rl9fX0lOVDY0IDAKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9fX0lOVDY0IDAKfCAjZGVmaW5l IFNJWkVPRl9WT0lEX1AgNAp8ICNkZWZpbmUgU0laRU9GX0lOVFBUUl9UIDQKfCAjZGVmaW5lIFNJ WkVPRl9VSU5UUFRSX1QgNAp8ICNkZWZpbmUgU0laRU9GX1BUUkRJRkZfVCA0CnwgI2RlZmluZSBT SVpFT0ZfU0laRV9UIDQKfCAjZGVmaW5lIFNJWkVPRl9PRkZfVCA4CnwgI2RlZmluZSBIQVZFX1NU RElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBTSVpFT0ZfSU5U TUFYX1QgOAp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0gg MQp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRf SCAxCnwgI2RlZmluZSBIQVZFX0lPX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2Rl ZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUg SEFWRV9QUk9DRVNTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZF X1JFR0VYX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfSU9DVExfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfVElNRUJfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FU19IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRJTUVfSCAxCnwgI2RlZmluZSBIQVZF X1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVf SCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfR1JQX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVm aW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgR0VUR1JPVVBTX1QgZ2lkX3QKfCAjZGVmaW5l IFJFVFNJR1RZUEUgdm9pZAp8ICNkZWZpbmUgSEFWRV9MSUJNIDEKfCAjZGVmaW5lIEhBVkVfR0VU SE9TVEJZTkFNRSAxCnwgI2RlZmluZSBIQVZFX0NPTk5FQ1QgMQp8ICNkZWZpbmUgSEFWRV9BU1NF UlRfSCAxCnwgI2RlZmluZSBIQVZFX0NURVJNSUQgMQp8ICNkZWZpbmUgSEFWRV9GVElNRSAxCnwg I2RlZmluZSBIQVZFX0ZUUlVOQ0FURSAxCnwgI2RlZmluZSBIQVZFX0ZDSE9XTiAxCnwgI2RlZmlu ZSBIQVZFX0dFVENXRCAxCnwgI2RlZmluZSBIQVZFX0dFVEVVSUQgMQp8ICNkZWZpbmUgSEFWRV9H RVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgSEFWRV9HTVRJTUVfUiAxCnwgI2RlZmluZSBIQVZFX0lP Q1RMIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQgMQp8ICNkZWZpbmUgSEFWRV9NS0RJUiAxCnwgI2Rl ZmluZSBIQVZFX01LTk9EIDEKfCAjZGVmaW5lIEhBVkVfTklDRSAxCnwgI2RlZmluZSBIQVZFX1BJ UEUgMQp8ICNkZWZpbmUgSEFWRV9fUElQRSAxCnwgI2RlZmluZSBIQVZFX1JFQURESVJfUiAxCnwg I2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEhBVkVfUkVOQU1FIDEKfCAjZGVmaW5l IEhBVkVfUk1ESVIgMQp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9TRVRF R0lEIDEKfCAjZGVmaW5lIEhBVkVfU0VURVVJRCAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FMRSAx CnwgI2RlZmluZSBIQVZFX1NFVFBHSUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRTSUQgMQp8ICNkZWZp bmUgSEFWRV9TSUdBQ1RJT04gMQp8ICNkZWZpbmUgSEFWRV9TSUdJTlRFUlJVUFQgMQp8ICNkZWZp bmUgSEFWRV9TVFJGVElNRSAxCnwgI2RlZmluZSBIQVZFX1NUUlBUSU1FIDEKfCAjZGVmaW5lIEhB VkVfU1lNTElOSyAxCnwgI2RlZmluZSBIQVZFX1NZTkMgMQp8ICNkZWZpbmUgSEFWRV9TWVNDT05G IDEKfCAjZGVmaW5lIEhBVkVfVENHRVRQR1JQIDEKfCAjZGVmaW5lIEhBVkVfVENTRVRQR1JQIDEK fCAjZGVmaW5lIEhBVkVfVElNRVMgMQp8ICNkZWZpbmUgSEFWRV9VTkFNRSAxCnwgI2RlZmluZSBI QVZFX1dBSVRQSUQgMQp8ICNkZWZpbmUgSEFWRV9TVFJEVVAgMQp8ICNkZWZpbmUgSEFWRV9TWVNU RU0gMQp8ICNkZWZpbmUgSEFWRV9VU0xFRVAgMQp8ICNkZWZpbmUgSEFWRV9BVEVYSVQgMQp8ICNk ZWZpbmUgSEFWRV9PTl9FWElUIDEKfCAjZGVmaW5lIEhBVkVfQ0hPV04gMQp8ICNkZWZpbmUgSEFW RV9MSU5LIDEKfCAjZGVmaW5lIEhBVkVfRkNOVEwgMQp8ICNkZWZpbmUgSEFWRV9UVFlOQU1FIDEK fCAjZGVmaW5lIEhBVkVfR0VUUFdFTlQgMQp8ICNkZWZpbmUgSEFWRV9HRVRHUkVOVCAxCnwgI2Rl ZmluZSBIQVZFX0tJTEwgMQp8ICNkZWZpbmUgSEFWRV9HRVRQUElEIDEKfCAjZGVmaW5lIEhBVkVf R0VUUEdSUCAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIg MQp8ICNkZWZpbmUgSEFWRV9HRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9TVFJDSFIgMQp8ICNk ZWZpbmUgSEFWRV9TVFJDTVAgMQp8ICNkZWZpbmUgSEFWRV9JTkRFWCAxCnwgI2RlZmluZSBIQVZF X0JDT1BZIDEKfCAjZGVmaW5lIEhBVkVfTUVNQ1BZIDEKfCAjZGVmaW5lIEhBVkVfUklOREVYIDEK fCAjZGVmaW5lIEhBVkVfVFJVTkNBVEUgMQp8ICNkZWZpbmUgSEFWRV9VTlNFVEVOViAxCnwgI2Rl ZmluZSBIQVZFX0lTQkxBTksgMQp8ICNkZWZpbmUgSEFWRV9TVFJOQ0FTRUNNUCAxCnwgI2RlZmlu ZSBIQVZFX0NSWVBUX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVREQl9IIDEKfCAjZGVmaW5lIEhBVkVf UFRIUkVBRF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgSEFW RV9DSFJPT1QgMQp8ICNkZWZpbmUgSEFWRV9GTE9DSyAxCnwgI2RlZmluZSBIQVZFX0dFVExPR0lO IDEKfCAjZGVmaW5lIEhBVkVfQ1VTRVJJRCAxCnwgI2RlZmluZSBIQVZFX0dFVFBSSU9SSVRZIDEK fCAjZGVmaW5lIEhBVkVfU0VUUFJJT1JJVFkgMQp8ICNkZWZpbmUgSEFWRV9HRVRQQVNTIDEKfCAj ZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NFVEhPU1ROQU1F IDAKfCAjZGVmaW5lIEhBVkVfQ1JZUFQgMQp8ICNkZWZpbmUgSEFWRV9MSUJHTVAgMQp8ICNkZWZp bmUgSEFWRV9JQ09OViAxCnwgI2RlZmluZSBFTkFCTEVfTkxTIDEKfCAjZGVmaW5lIEhBVkVfR0VU VEVYVCAxCnwgI2RlZmluZSBIQVZFX0RDR0VUVEVYVCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU1RS UFRJTUUgMQp8ICNkZWZpbmUgSEFWRV9VTklYX0RPTUFJTl9TT0NLRVRTIDEKfCAjZGVmaW5lIEhB VkVfU09DS0VUUEFJUiAxCnwgI2RlZmluZSBIQVZFX0dFVEdST1VQUyAxCnwgI2RlZmluZSBIQVZF X1NFVEdST1VQUyAxCnwgI2RlZmluZSBIQVZFX1NFVFBXRU5UIDEKfCAjZGVmaW5lIEhBVkVfUEFV U0UgMQp8ICNkZWZpbmUgSEFWRV9UWlNFVCAxCnwgI2RlZmluZSBIQVZFX1NFVEhPU1RFTlQgMQp8 ICNkZWZpbmUgSEFWRV9FTkRIT1NURU5UIDEKfCAjZGVmaW5lIEhBVkVfU0VUUFJPVE9FTlQgMQp8 ICNkZWZpbmUgSEFWRV9HRVRQUk9UT0VOVCAxCnwgI2RlZmluZSBIQVZFX0VORFBST1RPRU5UIDEK fCAjZGVmaW5lIEhBVkVfU0VUU0VSVkVOVCAxCnwgI2RlZmluZSBIQVZFX0dFVFNFUlZFTlQgMQp8 ICNkZWZpbmUgSEFWRV9FTkRTRVJWRU5UIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9NQUtFQUREUiAx CnwgI2RlZmluZSBIQVZFX0lORVRfTkVUT0YgMQp8ICNkZWZpbmUgSEFWRV9IU1RSRVJST1IgMQp8 ICNkZWZpbmUgSEFWRV9JTkVUX1BUT04gMQp8ICNkZWZpbmUgSEFWRV9JTkVUX05UT1AgMQp8ICNk ZWZpbmUgSEFWRV9IX0VSUk5PIDEKfCAjZGVmaW5lIEhBVkVfVUlOVDMyX1QgMQp8ICNkZWZpbmUg TE9DQUxUSU1FX0NBQ0hFIDEKfCAjZGVmaW5lIEhBVkVfUkVTVEFSVEFCTEVfU1lTQ0FMTFMgMQp8 ICNkZWZpbmUgSEFWRV9SRUdDT01QIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9BVE9OIDEKfCAjZGVm aW5lIEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfU1RSRVJST1IgMQp8ICNkZWZpbmUgSEFW RV9NRU1NT1ZFIDEKfCAjZGVmaW5lIEhBVkVfTUtTVEVNUCAxCnwgI2RlZmluZSBIQVZFX0lFRUVG UF9IIDEKfCAjZGVmaW5lIEhBVkVfQVNJTkggMQp8ICNkZWZpbmUgSEFWRV9BQ09TSCAxCnwgI2Rl ZmluZSBIQVZFX0FUQU5IIDEKfCAjZGVmaW5lIEhBVkVfQ09QWVNJR04gMQp8ICNkZWZpbmUgSEFW RV9GSU5JVEUgMQp8ICNkZWZpbmUgSEFWRV9TSU5DT1MgMQp8ICNkZWZpbmUgSEFWRV9UUlVOQyAx CnwgI2RlZmluZSBIQVZFX0lTSU5GIDEKfCAjZGVmaW5lIEhBVkVfSVNOQU4gMQp8ICNkZWZpbmUg SEFWRV9BTExPQ0FfSCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBIQVZFX1NU UlVDVF9TVEFUX1NUX1JERVYgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9CTEtTSVpF IDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfQkxPQ0tTIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9UWk5BTUUgMQp8ICNkZWZpbmUgSEFWRV9UWk5BTUUgMQp8ICNkZWZpbmUgU0laRU9GX0ZM T0FUIDQKfCAjZGVmaW5lIFNDTV9TSU5HTEVTIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX0xJTkdF UiAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9USU1FU1BFQyAxCnwgLyogZW5kIGNvbmZkZWZzLmgu ICAqLwp8IC8qIERlZmluZSBwdGhyZWFkX2dldF9zdGFja2FkZHJfbnAgdG8gYW4gaW5ub2N1b3Vz IHZhcmlhbnQsIGluIGNhc2UgPGxpbWl0cy5oPiBkZWNsYXJlcyBwdGhyZWFkX2dldF9zdGFja2Fk ZHJfbnAuCnwgICAgRm9yIGV4YW1wbGUsIEhQLVVYIDExaSA8bGltaXRzLmg+IGRlY2xhcmVzIGdl dHRpbWVvZmRheS4gICovCnwgI2RlZmluZSBwdGhyZWFkX2dldF9zdGFja2FkZHJfbnAgaW5ub2N1 b3VzX3B0aHJlYWRfZ2V0X3N0YWNrYWRkcl9ucAp8IAp8IC8qIFN5c3RlbSBoZWFkZXIgdG8gZGVm aW5lIF9fc3R1YiBtYWNyb3MgYW5kIGhvcGVmdWxseSBmZXcgcHJvdG90eXBlcywKfCAgICAgd2hp Y2ggY2FuIGNvbmZsaWN0IHdpdGggY2hhciBwdGhyZWFkX2dldF9zdGFja2FkZHJfbnAgKCk7IGJl bG93Lgp8ICAgICBQcmVmZXIgPGxpbWl0cy5oPiB0byA8YXNzZXJ0Lmg+IGlmIF9fU1REQ19fIGlz IGRlZmluZWQsIHNpbmNlCnwgICAgIDxsaW1pdHMuaD4gZXhpc3RzIGV2ZW4gb24gZnJlZXN0YW5k aW5nIGNvbXBpbGVycy4gICovCnwgCnwgI2lmZGVmIF9fU1REQ19fCnwgIyBpbmNsdWRlIDxsaW1p dHMuaD4KfCAjZWxzZQp8ICMgaW5jbHVkZSA8YXNzZXJ0Lmg+CnwgI2VuZGlmCnwgCnwgI3VuZGVm IHB0aHJlYWRfZ2V0X3N0YWNrYWRkcl9ucAp8IAp8IC8qIE92ZXJyaWRlIGFueSBHQ0MgaW50ZXJu YWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLgp8ICAgIFVzZSBjaGFyIGJlY2F1c2UgaW50 IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIEdDQwp8ICAgIGJ1aWx0aW4gYW5kIHRo ZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCnwgI2lmZGVm IF9fY3BsdXNwbHVzCnwgZXh0ZXJuICJDIgp8ICNlbmRpZgp8IGNoYXIgcHRocmVhZF9nZXRfc3Rh Y2thZGRyX25wICgpOwp8IC8qIFRoZSBHTlUgQyBsaWJyYXJ5IGRlZmluZXMgdGhpcyBmb3IgZnVu Y3Rpb25zIHdoaWNoIGl0IGltcGxlbWVudHMKfCAgICAgdG8gYWx3YXlzIGZhaWwgd2l0aCBFTk9T WVMuICBTb21lIGZ1bmN0aW9ucyBhcmUgYWN0dWFsbHkgbmFtZWQKfCAgICAgc29tZXRoaW5nIHN0 YXJ0aW5nIHdpdGggX18gYW5kIHRoZSBub3JtYWwgbmFtZSBpcyBhbiBhbGlhcy4gICovCnwgI2lm IGRlZmluZWQgX19zdHViX3B0aHJlYWRfZ2V0X3N0YWNrYWRkcl9ucCB8fCBkZWZpbmVkIF9fc3R1 Yl9fX3B0aHJlYWRfZ2V0X3N0YWNrYWRkcl9ucAp8IGNob2tlIG1lCnwgI2VuZGlmCnwgCnwgaW50 CnwgbWFpbiAoKQp8IHsKfCByZXR1cm4gcHRocmVhZF9nZXRfc3RhY2thZGRyX25wICgpOwp8ICAg Owp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6NDI3ODM6IHJlc3VsdDogbm8KY29uZmlndXJl OjQyNzAzOiBjaGVja2luZyBmb3IgcHRocmVhZF9zaWdtYXNrCmNvbmZpZ3VyZTo0Mjc1OTogZ2Nj IC1vIGNvbmZ0ZXN0LmV4ZSAgLWcgLU8yICAgY29uZnRlc3QuYyAgLWxnbXAgLWxjcnlwdCAtbG0g LWxsdGRsICA+JjUKY29uZmlndXJlOjQyNzY1OiAkPyA9IDAKY29uZmlndXJlOjQyNzgzOiByZXN1 bHQ6IHllcwpjb25maWd1cmU6NDI4MTA6IGNoZWNraW5nIHdoZXRoZXIgUFRIUkVBRF9PTkNFX0lO SVQgbmVlZHMgYnJhY2VzCmNvbmZpZ3VyZTo0MjgyNTogZ2NjIC1jIC1XZXJyb3IgLVdtaXNzaW5n LWJyYWNlcyAgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6NDI4MzE6ICQ/ID0gMApj b25maWd1cmU6NDI4NDY6IHJlc3VsdDogbm8KY29uZmlndXJlOjQyODU0OiBjaGVja2luZyB3aGV0 aGVyIFBUSFJFQURfTVVURVhfSU5JVElBTElaRVIgbmVlZHMgYnJhY2VzCmNvbmZpZ3VyZTo0Mjg2 OTogZ2NjIC1jIC1XZXJyb3IgLVdtaXNzaW5nLWJyYWNlcyAgLWcgLU8yICBjb25mdGVzdC5jID4m NQpjb25maWd1cmU6NDI4NzU6ICQ/ID0gMApjb25maWd1cmU6NDI4OTA6IHJlc3VsdDogbm8KY29u ZmlndXJlOjQyODk5OiBjaGVja2luZyBmb3IgbGlicmFyeSBjb250YWluaW5nIHNjaGVkX3lpZWxk CmNvbmZpZ3VyZTo0Mjk0MDogZ2NjIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICBjb25mdGVzdC5j ICAtbGdtcCAtbGNyeXB0IC1sbSAtbGx0ZGwgID4mNQpjb25maWd1cmU6NDI5NDY6ICQ/ID0gMApj b25maWd1cmU6NDI5NzQ6IHJlc3VsdDogbm9uZSByZXF1aXJlZApjb25maWd1cmU6NDMwMDA6IGNo ZWNraW5nIHdoYXQga2luZCBvZiB0aHJlYWRzIHRvIHN1cHBvcnQKY29uZmlndXJlOjQzMDAyOiBy ZXN1bHQ6IHB0aHJlYWRzCmNvbmZpZ3VyZTo0MzAwOTogY2hlY2tpbmcgd2hldGhlciBwdGhyZWFk X2F0dHJfZ2V0c3RhY2sgd29ya3MgZm9yIHRoZSBtYWluIHRocmVhZApjb25maWd1cmU6NDMwNTk6 IGdjYyAtbyBjb25mdGVzdC5leGUgIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgIC1sZ21wIC1sY3J5cHQg LWxtIC1sbHRkbCAgPiY1CmNvbmZpZ3VyZTo0MzA2MjogJD8gPSAwCmNvbmZpZ3VyZTo0MzA2ODog Li9jb25mdGVzdC5leGUKY29uZmlndXJlOjQzMDcxOiAkPyA9IDEKY29uZmlndXJlOiBwcm9ncmFt IGV4aXRlZCB3aXRoIHN0YXR1cyAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8q IGNvbmZkZWZzLmguICAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJndWlsZSIKfCAjZGVmaW5l IFBBQ0tBR0VfVEFSTkFNRSAiZ3VpbGUiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjEuOC40 Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgImd1aWxlIDEuOC40Igp8ICNkZWZpbmUgUEFDS0FH RV9CVUdSRVBPUlQgImJ1Zy1ndWlsZUBnbnUub3JnIgp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEK fCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2Rl ZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5l IEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhB VkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEhBVkVfTElC TFRETCAxCnwgI2RlZmluZSBTQ01fV0FSTl9ERVBSRUNBVEVEX0RFRkFVTFQgInN1bW1hcnkiCnwg I2RlZmluZSBHVUlMRV9VU0VfNjRfQ0FMTFMgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWCAxCnwgI2Rl ZmluZSBIQVZFX05FVFdPUktJTkcgMQp8ICNkZWZpbmUgU0laRU9GX0NIQVIgMQp8ICNkZWZpbmUg U0laRU9GX1VOU0lHTkVEX0NIQVIgMQp8ICNkZWZpbmUgU0laRU9GX1NIT1JUIDIKfCAjZGVmaW5l IFNJWkVPRl9VTlNJR05FRF9TSE9SVCAyCnwgI2RlZmluZSBTSVpFT0ZfSU5UIDQKfCAjZGVmaW5l IFNJWkVPRl9VTlNJR05FRF9JTlQgNAp8ICNkZWZpbmUgU0laRU9GX0xPTkcgNAp8ICNkZWZpbmUg U0laRU9GX1VOU0lHTkVEX0xPTkcgNAp8ICNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CnwgI2RlZmlu ZSBTSVpFT0ZfTE9OR19MT05HIDgKfCAjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9MT05HX0xPTkcg OAp8ICNkZWZpbmUgU0laRU9GX19fSU5UNjQgMAp8ICNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX19f SU5UNjQgMAp8ICNkZWZpbmUgU0laRU9GX1ZPSURfUCA0CnwgI2RlZmluZSBTSVpFT0ZfSU5UUFRS X1QgNAp8ICNkZWZpbmUgU0laRU9GX1VJTlRQVFJfVCA0CnwgI2RlZmluZSBTSVpFT0ZfUFRSRElG Rl9UIDQKfCAjZGVmaW5lIFNJWkVPRl9TSVpFX1QgNAp8ICNkZWZpbmUgU0laRU9GX09GRl9UIDgK fCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAj ZGVmaW5lIFNJWkVPRl9JTlRNQVhfVCA4CnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZp bmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZp bmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfSU9fSCAxCnwgI2RlZmluZSBIQVZF X0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1P UllfSCAxCnwgI2RlZmluZSBIQVZFX1BST0NFU1NfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19I IDEKfCAjZGVmaW5lIEhBVkVfUkVHRVhfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19JT0NUTF9IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAx CnwgI2RlZmluZSBIQVZFX1NZU19USU1FQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVTX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVElNRV9I IDEKfCAjZGVmaW5lIEhBVkVfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNk ZWZpbmUgSEFWRV9VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFW RV9HUlBfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9T VFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBHRVRHUk9VUFNf VCBnaWRfdAp8ICNkZWZpbmUgUkVUU0lHVFlQRSB2b2lkCnwgI2RlZmluZSBIQVZFX0xJQk0gMQp8 ICNkZWZpbmUgSEFWRV9HRVRIT1NUQllOQU1FIDEKfCAjZGVmaW5lIEhBVkVfQ09OTkVDVCAxCnwg I2RlZmluZSBIQVZFX0FTU0VSVF9IIDEKfCAjZGVmaW5lIEhBVkVfQ1RFUk1JRCAxCnwgI2RlZmlu ZSBIQVZFX0ZUSU1FIDEKfCAjZGVmaW5lIEhBVkVfRlRSVU5DQVRFIDEKfCAjZGVmaW5lIEhBVkVf RkNIT1dOIDEKfCAjZGVmaW5lIEhBVkVfR0VUQ1dEIDEKfCAjZGVmaW5lIEhBVkVfR0VURVVJRCAx CnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBIQVZFX0dNVElNRV9SIDEK fCAjZGVmaW5lIEhBVkVfSU9DVEwgMQp8ICNkZWZpbmUgSEFWRV9MU1RBVCAxCnwgI2RlZmluZSBI QVZFX01LRElSIDEKfCAjZGVmaW5lIEhBVkVfTUtOT0QgMQp8ICNkZWZpbmUgSEFWRV9OSUNFIDEK fCAjZGVmaW5lIEhBVkVfUElQRSAxCnwgI2RlZmluZSBIQVZFX19QSVBFIDEKfCAjZGVmaW5lIEhB VkVfUkVBRERJUl9SIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgSEFWRV9S RU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9STURJUiAxCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwg I2RlZmluZSBIQVZFX1NFVEVHSUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRFVUlEIDEKfCAjZGVmaW5l IEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfU0VUUEdJRCAxCnwgI2RlZmluZSBIQVZF X1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX1NJR0FDVElPTiAxCnwgI2RlZmluZSBIQVZFX1NJR0lO VEVSUlVQVCAxCnwgI2RlZmluZSBIQVZFX1NUUkZUSU1FIDEKfCAjZGVmaW5lIEhBVkVfU1RSUFRJ TUUgMQp8ICNkZWZpbmUgSEFWRV9TWU1MSU5LIDEKfCAjZGVmaW5lIEhBVkVfU1lOQyAxCnwgI2Rl ZmluZSBIQVZFX1NZU0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9UQ0dFVFBHUlAgMQp8ICNkZWZpbmUg SEFWRV9UQ1NFVFBHUlAgMQp8ICNkZWZpbmUgSEFWRV9USU1FUyAxCnwgI2RlZmluZSBIQVZFX1VO QU1FIDEKfCAjZGVmaW5lIEhBVkVfV0FJVFBJRCAxCnwgI2RlZmluZSBIQVZFX1NUUkRVUCAxCnwg I2RlZmluZSBIQVZFX1NZU1RFTSAxCnwgI2RlZmluZSBIQVZFX1VTTEVFUCAxCnwgI2RlZmluZSBI QVZFX0FURVhJVCAxCnwgI2RlZmluZSBIQVZFX09OX0VYSVQgMQp8ICNkZWZpbmUgSEFWRV9DSE9X TiAxCnwgI2RlZmluZSBIQVZFX0xJTksgMQp8ICNkZWZpbmUgSEFWRV9GQ05UTCAxCnwgI2RlZmlu ZSBIQVZFX1RUWU5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCnwgI2RlZmluZSBIQVZF X0dFVEdSRU5UIDEKfCAjZGVmaW5lIEhBVkVfS0lMTCAxCnwgI2RlZmluZSBIQVZFX0dFVFBQSUQg MQp8ICNkZWZpbmUgSEFWRV9HRVRQR1JQIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmlu ZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX0dFVElUSU1FUiAxCnwgI2RlZmluZSBI QVZFX1NUUkNIUiAxCnwgI2RlZmluZSBIQVZFX1NUUkNNUCAxCnwgI2RlZmluZSBIQVZFX0lOREVY IDEKfCAjZGVmaW5lIEhBVkVfQkNPUFkgMQp8ICNkZWZpbmUgSEFWRV9NRU1DUFkgMQp8ICNkZWZp bmUgSEFWRV9SSU5ERVggMQp8ICNkZWZpbmUgSEFWRV9UUlVOQ0FURSAxCnwgI2RlZmluZSBIQVZF X1VOU0VURU5WIDEKfCAjZGVmaW5lIEhBVkVfSVNCTEFOSyAxCnwgI2RlZmluZSBIQVZFX1NUUk5D QVNFQ01QIDEKfCAjZGVmaW5lIEhBVkVfQ1JZUFRfSCAxCnwgI2RlZmluZSBIQVZFX05FVERCX0gg MQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAx CnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVf SCAxCnwgI2RlZmluZSBIQVZFX0NIUk9PVCAxCnwgI2RlZmluZSBIQVZFX0ZMT0NLIDEKfCAjZGVm aW5lIEhBVkVfR0VUTE9HSU4gMQp8ICNkZWZpbmUgSEFWRV9DVVNFUklEIDEKfCAjZGVmaW5lIEhB VkVfR0VUUFJJT1JJVFkgMQp8ICNkZWZpbmUgSEFWRV9TRVRQUklPUklUWSAxCnwgI2RlZmluZSBI QVZFX0dFVFBBU1MgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZF X0RFQ0xfU0VUSE9TVE5BTUUgMAp8ICNkZWZpbmUgSEFWRV9DUllQVCAxCnwgI2RlZmluZSBIQVZF X0xJQkdNUCAxCnwgI2RlZmluZSBIQVZFX0lDT05WIDEKfCAjZGVmaW5lIEVOQUJMRV9OTFMgMQp8 ICNkZWZpbmUgSEFWRV9HRVRURVhUIDEKfCAjZGVmaW5lIEhBVkVfRENHRVRURVhUIDEKfCAjZGVm aW5lIEhBVkVfREVDTF9TVFJQVElNRSAxCnwgI2RlZmluZSBIQVZFX1VOSVhfRE9NQUlOX1NPQ0tF VFMgMQp8ICNkZWZpbmUgSEFWRV9TT0NLRVRQQUlSIDEKfCAjZGVmaW5lIEhBVkVfR0VUR1JPVVBT IDEKfCAjZGVmaW5lIEhBVkVfU0VUR1JPVVBTIDEKfCAjZGVmaW5lIEhBVkVfU0VUUFdFTlQgMQp8 ICNkZWZpbmUgSEFWRV9QQVVTRSAxCnwgI2RlZmluZSBIQVZFX1RaU0VUIDEKfCAjZGVmaW5lIEhB VkVfU0VUSE9TVEVOVCAxCnwgI2RlZmluZSBIQVZFX0VOREhPU1RFTlQgMQp8ICNkZWZpbmUgSEFW RV9TRVRQUk9UT0VOVCAxCnwgI2RlZmluZSBIQVZFX0dFVFBST1RPRU5UIDEKfCAjZGVmaW5lIEhB VkVfRU5EUFJPVE9FTlQgMQp8ICNkZWZpbmUgSEFWRV9TRVRTRVJWRU5UIDEKfCAjZGVmaW5lIEhB VkVfR0VUU0VSVkVOVCAxCnwgI2RlZmluZSBIQVZFX0VORFNFUlZFTlQgMQp8ICNkZWZpbmUgSEFW RV9JTkVUX01BS0VBRERSIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9ORVRPRiAxCnwgI2RlZmluZSBI QVZFX0hTVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZFX0lORVRfUFRPTiAxCnwgI2RlZmluZSBIQVZF X0lORVRfTlRPUCAxCnwgI2RlZmluZSBIQVZFX0hfRVJSTk8gMQp8ICNkZWZpbmUgSEFWRV9VSU5U MzJfVCAxCnwgI2RlZmluZSBMT0NBTFRJTUVfQ0FDSEUgMQp8ICNkZWZpbmUgSEFWRV9SRVNUQVJU QUJMRV9TWVNDQUxMUyAxCnwgI2RlZmluZSBIQVZFX1JFR0NPTVAgMQp8ICNkZWZpbmUgSEFWRV9J TkVUX0FUT04gMQp8ICNkZWZpbmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9TVFJFUlJP UiAxCnwgI2RlZmluZSBIQVZFX01FTU1PVkUgMQp8ICNkZWZpbmUgSEFWRV9NS1NURU1QIDEKfCAj ZGVmaW5lIEhBVkVfSUVFRUZQX0ggMQp8ICNkZWZpbmUgSEFWRV9BU0lOSCAxCnwgI2RlZmluZSBI QVZFX0FDT1NIIDEKfCAjZGVmaW5lIEhBVkVfQVRBTkggMQp8ICNkZWZpbmUgSEFWRV9DT1BZU0lH TiAxCnwgI2RlZmluZSBIQVZFX0ZJTklURSAxCnwgI2RlZmluZSBIQVZFX1NJTkNPUyAxCnwgI2Rl ZmluZSBIQVZFX1RSVU5DIDEKfCAjZGVmaW5lIEhBVkVfSVNJTkYgMQp8ICNkZWZpbmUgSEFWRV9J U05BTiAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEK fCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfUkRFViAxCnwgI2RlZmluZSBIQVZFX1NUUlVD VF9TVEFUX1NUX0JMS1NJWkUgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9CTE9DS1Mg MQp8ICNkZWZpbmUgSEFWRV9ERUNMX1RaTkFNRSAxCnwgI2RlZmluZSBIQVZFX1RaTkFNRSAxCnwg I2RlZmluZSBTSVpFT0ZfRkxPQVQgNAp8ICNkZWZpbmUgU0NNX1NJTkdMRVMgMQp8ICNkZWZpbmUg SEFWRV9TVFJVQ1RfTElOR0VSIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1RJTUVTUEVDIDEKfCAj ZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwg CnwgI2lmIEhBVkVfUFRIUkVBRF9BVFRSX0dFVFNUQUNLCnwgI2luY2x1ZGUgPHB0aHJlYWQuaD4K fCAKfCBpbnQgbWFpbiAoKQp8IHsKfCAgIHB0aHJlYWRfYXR0cl90IGF0dHI7CnwgICB2b2lkICpz dGFydCwgKmVuZDsKfCAgIHNpemVfdCBzaXplOwp8IAp8ICAgcHRocmVhZF9nZXRhdHRyX25wIChw dGhyZWFkX3NlbGYgKCksICZhdHRyKTsKfCAgIHB0aHJlYWRfYXR0cl9nZXRzdGFjayAoJmF0dHIs ICZzdGFydCwgJnNpemUpOwp8ICAgZW5kID0gKGNoYXIgKilzdGFydCArIHNpemU7CnwgCnwgICBp ZiAoKHZvaWQgKikmYXR0ciA8IHN0YXJ0IHx8ICh2b2lkICopJmF0dHIgPj0gZW5kKQp8ICAgICBy ZXR1cm4gMTsKfCAgIGVsc2UKfCAgICAgcmV0dXJuIDA7CnwgfQp8ICNlbHNlCnwgaW50IG1haW4g KCkKfCB7CnwgICByZXR1cm4gMTsKfCB9CnwgI2VuZGlmCnwgCmNvbmZpZ3VyZTo0MzA5MjogcmVz dWx0OiBubwpjb25maWd1cmU6NDM0MDM6IGNyZWF0aW5nIC4vY29uZmlnLnN0YXR1cwoKIyMgLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSAjIwojIyBSdW5uaW5nIGNvbmZpZy5zdGF0dXMuICMjCiMjIC0t LS0tLS0tLS0tLS0tLS0tLS0tLS0gIyMKClRoaXMgZmlsZSB3YXMgZXh0ZW5kZWQgYnkgZ3VpbGUg Y29uZmlnLnN0YXR1cyAxLjguNCwgd2hpY2ggd2FzCmdlbmVyYXRlZCBieSBHTlUgQXV0b2NvbmYg Mi42MS4gIEludm9jYXRpb24gY29tbWFuZCBsaW5lIHdhcwoKICBDT05GSUdfRklMRVMgICAgPSAK ICBDT05GSUdfSEVBREVSUyAgPSAKICBDT05GSUdfTElOS1MgICAgPSAKICBDT05GSUdfQ09NTUFO RFMgPSAKICAkIC4vY29uZmlnLnN0YXR1cyAKCm9uIE9CQU4tWFAKCmNvbmZpZy5zdGF0dXM6ODE0 OiBjcmVhdGluZyBsaWJndWlsZS9nZW4tc2NtY29uZmlnLmgKY29uZmlnLnN0YXR1czo4MTQ6IGNy ZWF0aW5nIE1ha2VmaWxlCmNvbmZpZy5zdGF0dXM6ODE0OiBjcmVhdGluZyBhbS9NYWtlZmlsZQpj b25maWcuc3RhdHVzOjgxNDogY3JlYXRpbmcgYmVuY2htYXJrLXN1aXRlL01ha2VmaWxlCmNvbmZp Zy5zdGF0dXM6ODE0OiBjcmVhdGluZyBkb2MvTWFrZWZpbGUKY29uZmlnLnN0YXR1czo4MTQ6IGNy ZWF0aW5nIGRvYy9nb29wcy9NYWtlZmlsZQpjb25maWcuc3RhdHVzOjgxNDogY3JlYXRpbmcgZG9j L3I1cnMvTWFrZWZpbGUKY29uZmlnLnN0YXR1czo4MTQ6IGNyZWF0aW5nIGRvYy9yZWYvTWFrZWZp bGUKY29uZmlnLnN0YXR1czo4MTQ6IGNyZWF0aW5nIGRvYy90dXRvcmlhbC9NYWtlZmlsZQpjb25m aWcuc3RhdHVzOjgxNDogY3JlYXRpbmcgZXhhbXBsZXMvTWFrZWZpbGUKY29uZmlnLnN0YXR1czo4 MTQ6IGNyZWF0aW5nIGV4YW1wbGVzL2JveC1keW5hbWljLW1vZHVsZS9NYWtlZmlsZQpjb25maWcu c3RhdHVzOjgxNDogY3JlYXRpbmcgZXhhbXBsZXMvYm94LWR5bmFtaWMvTWFrZWZpbGUKY29uZmln LnN0YXR1czo4MTQ6IGNyZWF0aW5nIGV4YW1wbGVzL2JveC1tb2R1bGUvTWFrZWZpbGUKY29uZmln LnN0YXR1czo4MTQ6IGNyZWF0aW5nIGV4YW1wbGVzL2JveC9NYWtlZmlsZQpjb25maWcuc3RhdHVz OjgxNDogY3JlYXRpbmcgZXhhbXBsZXMvbW9kdWxlcy9NYWtlZmlsZQpjb25maWcuc3RhdHVzOjgx NDogY3JlYXRpbmcgZXhhbXBsZXMvc2FmZS9NYWtlZmlsZQpjb25maWcuc3RhdHVzOjgxNDogY3Jl YXRpbmcgZXhhbXBsZXMvc2NyaXB0cy9NYWtlZmlsZQpjb25maWcuc3RhdHVzOjgxNDogY3JlYXRp bmcgZ3VpbGUtY29uZmlnL01ha2VmaWxlCmNvbmZpZy5zdGF0dXM6ODE0OiBjcmVhdGluZyBpY2Ut OS9NYWtlZmlsZQpjb25maWcuc3RhdHVzOjgxNDogY3JlYXRpbmcgaWNlLTkvZGVidWdnZXIvTWFr ZWZpbGUKY29uZmlnLnN0YXR1czo4MTQ6IGNyZWF0aW5nIGxhbmcvTWFrZWZpbGUKY29uZmlnLnN0 YXR1czo4MTQ6IGNyZWF0aW5nIGxhbmcvZWxpc3AvTWFrZWZpbGUKY29uZmlnLnN0YXR1czo4MTQ6 IGNyZWF0aW5nIGxhbmcvZWxpc3AvaW50ZXJuYWxzL01ha2VmaWxlCmNvbmZpZy5zdGF0dXM6ODE0 OiBjcmVhdGluZyBsYW5nL2VsaXNwL3ByaW1pdGl2ZXMvTWFrZWZpbGUKY29uZmlnLnN0YXR1czo4 MTQ6IGNyZWF0aW5nIGxpYmd1aWxlL01ha2VmaWxlCmNvbmZpZy5zdGF0dXM6ODE0OiBjcmVhdGlu ZyBvb3AvTWFrZWZpbGUKY29uZmlnLnN0YXR1czo4MTQ6IGNyZWF0aW5nIG9vcC9nb29wcy9NYWtl ZmlsZQpjb25maWcuc3RhdHVzOjgxNDogY3JlYXRpbmcgc2NyaXB0cy9NYWtlZmlsZQpjb25maWcu c3RhdHVzOjgxNDogY3JlYXRpbmcgc3JmaS9NYWtlZmlsZQpjb25maWcuc3RhdHVzOjgxNDogY3Jl YXRpbmcgdGVzdC1zdWl0ZS9NYWtlZmlsZQpjb25maWcuc3RhdHVzOjgxNDogY3JlYXRpbmcgdGVz dC1zdWl0ZS9zdGFuZGFsb25lL01ha2VmaWxlCmNvbmZpZy5zdGF0dXM6ODE0OiBjcmVhdGluZyBj aGVjay1ndWlsZQpjb25maWcuc3RhdHVzOjgxNDogY3JlYXRpbmcgYmVuY2htYXJrLWd1aWxlCmNv bmZpZy5zdGF0dXM6ODE0OiBjcmVhdGluZyBndWlsZS10b29scwpjb25maWcuc3RhdHVzOjk1NDog V0FSTklORzogIGd1aWxlLXRvb2xzLmluIHNlZW1zIHRvIGlnbm9yZSB0aGUgLS1kYXRhcm9vdGRp ciBzZXR0aW5nCmNvbmZpZy5zdGF0dXM6ODE0OiBjcmVhdGluZyBwcmUtaW5zdC1ndWlsZQpjb25m aWcuc3RhdHVzOjgxNDogY3JlYXRpbmcgcHJlLWluc3QtZ3VpbGUtZW52CmNvbmZpZy5zdGF0dXM6 ODE0OiBjcmVhdGluZyBsaWJndWlsZS9ndWlsZS1zbmFyZgpjb25maWcuc3RhdHVzOjgxNDogY3Jl YXRpbmcgbGliZ3VpbGUvZ3VpbGUtZG9jLXNuYXJmCmNvbmZpZy5zdGF0dXM6ODE0OiBjcmVhdGlu ZyBsaWJndWlsZS9ndWlsZS1mdW5jLW5hbWUtY2hlY2sKY29uZmlnLnN0YXR1czo4MTQ6IGNyZWF0 aW5nIGxpYmd1aWxlL2d1aWxlLXNuYXJmLWRvY3MKY29uZmlnLnN0YXR1czo4MTQ6IGNyZWF0aW5n IGNvbmZpZy5oCmNvbmZpZy5zdGF0dXM6MTMxNDogZXhlY3V0aW5nIGRlcGZpbGVzIGNvbW1hbmRz CmNvbmZpZy5zdGF0dXM6MTMxNDogZXhlY3V0aW5nIHBvLWRpcmVjdG9yaWVzIGNvbW1hbmRzCmNv bmZpZ3VyZTo0NTA1MTogPT09IGNvbmZpZ3VyaW5nIGluIGd1aWxlLXJlYWRsaW5lICgvaG9tZS9B YXJvbi9ndWlsZS0xLjguNC9ndWlsZS1yZWFkbGluZSkKY29uZmlndXJlOjQ1MTU0OiBydW5uaW5n IC9iaW4vc2ggLi9jb25maWd1cmUgJy0tcHJlZml4PS91c3IvbG9jYWwnICAnLS1lbmFibGUtc2hh cmVkJyAtLWNhY2hlLWZpbGU9L2Rldi9udWxsIC0tc3JjZGlyPS4KCiMjIC0tLS0tLS0tLS0tLS0t LS0gIyMKIyMgQ2FjaGUgdmFyaWFibGVzLiAjIwojIyAtLS0tLS0tLS0tLS0tLS0tICMjCgphY19j dl9idWlsZD1pNjg2LXBjLWN5Z3dpbgphY19jdl9jX2JpZ2VuZGlhbj1ubwphY19jdl9jX2NvbXBp bGVyX2dudT15ZXMKYWNfY3ZfY19jb25zdD15ZXMKYWNfY3ZfY19pbmxpbmU9aW5saW5lCmFjX2N2 X2Nfdm9sYXRpbGU9eWVzCmFjX2N2X2N4eF9jb21waWxlcl9nbnU9eWVzCmFjX2N2X2Vudl9DQ0Nf c2V0PQphY19jdl9lbnZfQ0NDX3ZhbHVlPQphY19jdl9lbnZfQ0NfRk9SX0JVSUxEX3NldD0KYWNf Y3ZfZW52X0NDX0ZPUl9CVUlMRF92YWx1ZT0KYWNfY3ZfZW52X0NDX3NldD0KYWNfY3ZfZW52X0ND X3ZhbHVlPQphY19jdl9lbnZfQ0ZMQUdTX3NldD0KYWNfY3ZfZW52X0NGTEFHU192YWx1ZT0KYWNf Y3ZfZW52X0NQUEZMQUdTX3NldD0KYWNfY3ZfZW52X0NQUEZMQUdTX3ZhbHVlPQphY19jdl9lbnZf Q1BQX3NldD0KYWNfY3ZfZW52X0NQUF92YWx1ZT0KYWNfY3ZfZW52X0NYWENQUF9zZXQ9CmFjX2N2 X2Vudl9DWFhDUFBfdmFsdWU9CmFjX2N2X2Vudl9DWFhGTEFHU19zZXQ9CmFjX2N2X2Vudl9DWFhG TEFHU192YWx1ZT0KYWNfY3ZfZW52X0NYWF9zZXQ9CmFjX2N2X2Vudl9DWFhfdmFsdWU9CmFjX2N2 X2Vudl9FTUFDU0xPQURQQVRIX3NldD0KYWNfY3ZfZW52X0VNQUNTTE9BRFBBVEhfdmFsdWU9CmFj X2N2X2Vudl9FTUFDU19zZXQ9CmFjX2N2X2Vudl9FTUFDU192YWx1ZT0KYWNfY3ZfZW52X0Y3N19z ZXQ9CmFjX2N2X2Vudl9GNzdfdmFsdWU9CmFjX2N2X2Vudl9GRkxBR1Nfc2V0PQphY19jdl9lbnZf RkZMQUdTX3ZhbHVlPQphY19jdl9lbnZfR1VJTEVfRk9SX0JVSUxEX3NldD0KYWNfY3ZfZW52X0dV SUxFX0ZPUl9CVUlMRF92YWx1ZT0KYWNfY3ZfZW52X0xERkxBR1Nfc2V0PQphY19jdl9lbnZfTERG TEFHU192YWx1ZT0KYWNfY3ZfZW52X0xJQlNfc2V0PQphY19jdl9lbnZfTElCU192YWx1ZT0KYWNf Y3ZfZW52X2J1aWxkX2FsaWFzX3NldD0KYWNfY3ZfZW52X2J1aWxkX2FsaWFzX3ZhbHVlPQphY19j dl9lbnZfaG9zdF9hbGlhc19zZXQ9CmFjX2N2X2Vudl9ob3N0X2FsaWFzX3ZhbHVlPQphY19jdl9l bnZfdGFyZ2V0X2FsaWFzX3NldD0KYWNfY3ZfZW52X3RhcmdldF9hbGlhc192YWx1ZT0KYWNfY3Zf ZXhlZXh0PS5leGUKYWNfY3ZfZjc3X2NvbXBpbGVyX2dudT1ubwphY19jdl9mdW5jX0RJTkZJTklU WT1ubwphY19jdl9mdW5jX0RRTkFOPW5vCmFjX2N2X2Z1bmNfX05TR2V0RW52aXJvbj1ubwphY19j dl9mdW5jX19waXBlPXllcwphY19jdl9mdW5jX2Fjb3NoPXllcwphY19jdl9mdW5jX2FsbG9jYV93 b3Jrcz15ZXMKYWNfY3ZfZnVuY19hc2luaD15ZXMKYWNfY3ZfZnVuY19hdGFuaD15ZXMKYWNfY3Zf ZnVuY19hdGV4aXQ9eWVzCmFjX2N2X2Z1bmNfYmNvcHk9eWVzCmFjX2N2X2Z1bmNfY2V4cD1ubwph Y19jdl9mdW5jX2Nob3duPXllcwphY19jdl9mdW5jX2Nocm9vdD15ZXMKYWNfY3ZfZnVuY19jaHNp emU9bm8KYWNfY3ZfZnVuY19jbG9nMTA9bm8KYWNfY3ZfZnVuY19jbG9nPW5vCmFjX2N2X2Z1bmNf Y29ubmVjdD15ZXMKYWNfY3ZfZnVuY19jb3B5c2lnbj15ZXMKYWNfY3ZfZnVuY19jdGVybWlkPXll cwphY19jdl9mdW5jX2N1c2VyaWQ9eWVzCmFjX2N2X2Z1bmNfZW5kaG9zdGVudD15ZXMKYWNfY3Zf ZnVuY19lbmRuZXRlbnQ9bm8KYWNfY3ZfZnVuY19lbmRwcm90b2VudD15ZXMKYWNfY3ZfZnVuY19l bmRzZXJ2ZW50PXllcwphY19jdl9mdW5jX2ZjaG93bj15ZXMKYWNfY3ZfZnVuY19mY250bD15ZXMK YWNfY3ZfZnVuY19mZXNldHJvdW5kPW5vCmFjX2N2X2Z1bmNfZmluaXRlPXllcwphY19jdl9mdW5j X2Zsb2NrPXllcwphY19jdl9mdW5jX2Zvcms9eWVzCmFjX2N2X2Z1bmNfZnRpbWU9eWVzCmFjX2N2 X2Z1bmNfZnRydW5jYXRlPXllcwphY19jdl9mdW5jX2dldGN3ZD15ZXMKYWNfY3ZfZnVuY19nZXRl dWlkPXllcwphY19jdl9mdW5jX2dldGdyZW50PXllcwphY19jdl9mdW5jX2dldGdyb3Vwcz15ZXMK YWNfY3ZfZnVuY19nZXRob3N0YnluYW1lPXllcwphY19jdl9mdW5jX2dldGhvc3RlbnQ9bm8KYWNf Y3ZfZnVuY19nZXRob3N0bmFtZT15ZXMKYWNfY3ZfZnVuY19nZXRpdGltZXI9eWVzCmFjX2N2X2Z1 bmNfZ2V0bG9naW49eWVzCmFjX2N2X2Z1bmNfZ2V0bmV0YnlhZGRyPW5vCmFjX2N2X2Z1bmNfZ2V0 bmV0YnluYW1lPW5vCmFjX2N2X2Z1bmNfZ2V0bmV0ZW50PW5vCmFjX2N2X2Z1bmNfZ2V0cGFzcz15 ZXMKYWNfY3ZfZnVuY19nZXRwZ3JwPXllcwphY19jdl9mdW5jX2dldHBwaWQ9eWVzCmFjX2N2X2Z1 bmNfZ2V0cHJpb3JpdHk9eWVzCmFjX2N2X2Z1bmNfZ2V0cHJvdG9lbnQ9eWVzCmFjX2N2X2Z1bmNf Z2V0cHdlbnQ9eWVzCmFjX2N2X2Z1bmNfZ2V0c2VydmVudD15ZXMKYWNfY3ZfZnVuY19nZXR0aW1l b2ZkYXk9eWVzCmFjX2N2X2Z1bmNfZ210aW1lX3I9eWVzCmFjX2N2X2Z1bmNfaHN0cmVycm9yPXll cwphY19jdl9mdW5jX2luZGV4PXllcwphY19jdl9mdW5jX2luZXRfYXRvbj15ZXMKYWNfY3ZfZnVu Y19pbmV0X2xuYW9mPW5vCmFjX2N2X2Z1bmNfaW5ldF9tYWtlYWRkcj15ZXMKYWNfY3ZfZnVuY19p bmV0X25ldG9mPXllcwphY19jdl9mdW5jX2luZXRfbnRvcD15ZXMKYWNfY3ZfZnVuY19pbmV0X3B0 b249eWVzCmFjX2N2X2Z1bmNfaW9jdGw9eWVzCmFjX2N2X2Z1bmNfaXNibGFuaz15ZXMKYWNfY3Zf ZnVuY19raWxsPXllcwphY19jdl9mdW5jX2xpbms9eWVzCmFjX2N2X2Z1bmNfbHN0YXQ9eWVzCmFj X2N2X2Z1bmNfbWVtY3B5PXllcwphY19jdl9mdW5jX21lbW1vdmU9eWVzCmFjX2N2X2Z1bmNfbWtk aXI9eWVzCmFjX2N2X2Z1bmNfbWtub2Q9eWVzCmFjX2N2X2Z1bmNfbWtzdGVtcD15ZXMKYWNfY3Zf ZnVuY19uaWNlPXllcwphY19jdl9mdW5jX29uX2V4aXQ9eWVzCmFjX2N2X2Z1bmNfcGF1c2U9eWVz CmFjX2N2X2Z1bmNfcGlwZT15ZXMKYWNfY3ZfZnVuY19wdGhyZWFkX2F0dHJfZ2V0c3RhY2s9bm8K YWNfY3ZfZnVuY19wdGhyZWFkX2dldF9zdGFja2FkZHJfbnA9bm8KYWNfY3ZfZnVuY19wdGhyZWFk X2dldGF0dHJfbnA9bm8KYWNfY3ZfZnVuY19wdGhyZWFkX3NpZ21hc2s9eWVzCmFjX2N2X2Z1bmNf cHV0ZW52PXllcwphY19jdl9mdW5jX3JlYWRkaXJfcj15ZXMKYWNfY3ZfZnVuY19yZWFkbGluaz15 ZXMKYWNfY3ZfZnVuY19yZWdjb21wX25vcng9eWVzCmFjX2N2X2Z1bmNfcmVuYW1lPXllcwphY19j dl9mdW5jX3JpbmRleD15ZXMKYWNfY3ZfZnVuY19ybWRpcj15ZXMKYWNfY3ZfZnVuY19zZWxlY3Q9 eWVzCmFjX2N2X2Z1bmNfc2V0ZWdpZD15ZXMKYWNfY3ZfZnVuY19zZXRldWlkPXllcwphY19jdl9m dW5jX3NldGdyb3Vwcz15ZXMKYWNfY3ZfZnVuY19zZXRob3N0ZW50PXllcwphY19jdl9mdW5jX3Nl dGhvc3RuYW1lPW5vCmFjX2N2X2Z1bmNfc2V0aXRpbWVyPXllcwphY19jdl9mdW5jX3NldGxvY2Fs ZT15ZXMKYWNfY3ZfZnVuY19zZXRuZXRlbnQ9bm8KYWNfY3ZfZnVuY19zZXRwZ2lkPXllcwphY19j dl9mdW5jX3NldHByaW9yaXR5PXllcwphY19jdl9mdW5jX3NldHByb3RvZW50PXllcwphY19jdl9m dW5jX3NldHB3ZW50PXllcwphY19jdl9mdW5jX3NldHNlcnZlbnQ9eWVzCmFjX2N2X2Z1bmNfc2V0 c2lkPXllcwphY19jdl9mdW5jX3NpZ2FjdGlvbj15ZXMKYWNfY3ZfZnVuY19zaWdpbnRlcnJ1cHQ9 eWVzCmFjX2N2X2Z1bmNfc2luY29zPXllcwphY19jdl9mdW5jX3NvY2tldHBhaXI9eWVzCmFjX2N2 X2Z1bmNfc3RhdDY0PW5vCmFjX2N2X2Z1bmNfc3RyY2hyPXllcwphY19jdl9mdW5jX3N0cmNtcD15 ZXMKYWNfY3ZfZnVuY19zdHJkdXA9eWVzCmFjX2N2X2Z1bmNfc3RyZXJyb3I9eWVzCmFjX2N2X2Z1 bmNfc3RyZnRpbWU9eWVzCmFjX2N2X2Z1bmNfc3RybmNhc2VjbXA9eWVzCmFjX2N2X2Z1bmNfc3Ry cHRpbWU9eWVzCmFjX2N2X2Z1bmNfc3ltbGluaz15ZXMKYWNfY3ZfZnVuY19zeW5jPXllcwphY19j dl9mdW5jX3N5c2NvbmY9eWVzCmFjX2N2X2Z1bmNfc3lzdGVtPXllcwphY19jdl9mdW5jX3RjZ2V0 cGdycD15ZXMKYWNfY3ZfZnVuY190Y3NldHBncnA9eWVzCmFjX2N2X2Z1bmNfdGltZXM9eWVzCmFj X2N2X2Z1bmNfdHJ1bmM9eWVzCmFjX2N2X2Z1bmNfdHJ1bmNhdGU9eWVzCmFjX2N2X2Z1bmNfdHR5 bmFtZT15ZXMKYWNfY3ZfZnVuY190enNldD15ZXMKYWNfY3ZfZnVuY191bmFtZT15ZXMKYWNfY3Zf ZnVuY191bnNldGVudj15ZXMKYWNfY3ZfZnVuY191c2xlZXA9eWVzCmFjX2N2X2Z1bmNfd2FpdHBp ZD15ZXMKYWNfY3ZfaGF2ZV9kZWNsX3NldGhvc3RuYW1lPW5vCmFjX2N2X2hhdmVfZGVjbF9zdHJw dGltZT15ZXMKYWNfY3ZfaGF2ZV9kZWNsX3R6bmFtZT15ZXMKYWNfY3ZfaGVhZGVyX2Fzc2VydF9o PXllcwphY19jdl9oZWFkZXJfY29tcGxleF9oPW5vCmFjX2N2X2hlYWRlcl9jcnRfZXh0ZXJuc19o PW5vCmFjX2N2X2hlYWRlcl9jcnlwdF9oPXllcwphY19jdl9oZWFkZXJfZGlyZWN0X2g9bm8KYWNf Y3ZfaGVhZGVyX2RpcmVudF9kaXJlbnRfaD15ZXMKYWNfY3ZfaGVhZGVyX2RsZmNuX2g9eWVzCmFj X2N2X2hlYWRlcl9mZW52X2g9bm8KYWNfY3ZfaGVhZGVyX2Zsb2F0aW5ncG9pbnRfaD1ubwphY19j dl9oZWFkZXJfZ3JwX2g9eWVzCmFjX2N2X2hlYWRlcl9pZWVlZnBfaD15ZXMKYWNfY3ZfaGVhZGVy X2ludHR5cGVzX2g9eWVzCmFjX2N2X2hlYWRlcl9pb19oPXllcwphY19jdl9oZWFkZXJfbGliY19o PW5vCmFjX2N2X2hlYWRlcl9saW1pdHNfaD15ZXMKYWNfY3ZfaGVhZGVyX21hbGxvY19oPXllcwph Y19jdl9oZWFkZXJfbWVtb3J5X2g9eWVzCmFjX2N2X2hlYWRlcl9taW5peF9jb25maWdfaD1ubwph Y19jdl9oZWFkZXJfbmFuX2g9bm8KYWNfY3ZfaGVhZGVyX25ldGRiX2g9eWVzCmFjX2N2X2hlYWRl cl9wcm9jZXNzX2g9eWVzCmFjX2N2X2hlYWRlcl9wdGhyZWFkX2g9eWVzCmFjX2N2X2hlYWRlcl9w d2RfaD15ZXMKYWNfY3ZfaGVhZGVyX3JlZ2V4X2g9eWVzCmFjX2N2X2hlYWRlcl9yeF9yeHBvc2l4 X2g9bm8KYWNfY3ZfaGVhZGVyX3J4cG9zaXhfaD1ubwphY19jdl9oZWFkZXJfc3RkYz15ZXMKYWNf Y3ZfaGVhZGVyX3N0ZGludF9oPXllcwphY19jdl9oZWFkZXJfc3RkbGliX2g9eWVzCmFjX2N2X2hl YWRlcl9zdHJpbmdfaD15ZXMKYWNfY3ZfaGVhZGVyX3N0cmluZ3NfaD15ZXMKYWNfY3ZfaGVhZGVy X3N5c19kaXJfaD1ubwphY19jdl9oZWFkZXJfc3lzX2ZpbGVfaD15ZXMKYWNfY3ZfaGVhZGVyX3N5 c19pb2N0bF9oPXllcwphY19jdl9oZWFkZXJfc3lzX3BhcmFtX2g9eWVzCmFjX2N2X2hlYWRlcl9z eXNfcmVzb3VyY2VfaD15ZXMKYWNfY3ZfaGVhZGVyX3N5c19zZWxlY3RfaD15ZXMKYWNfY3ZfaGVh ZGVyX3N5c19zdGF0X2g9eWVzCmFjX2N2X2hlYWRlcl9zeXNfc3RkdHlwZXNfaD1ubwphY19jdl9o ZWFkZXJfc3lzX3RpbWVfaD15ZXMKYWNfY3ZfaGVhZGVyX3N5c190aW1lYl9oPXllcwphY19jdl9o ZWFkZXJfc3lzX3RpbWVzX2g9eWVzCmFjX2N2X2hlYWRlcl9zeXNfdHlwZXNfaD15ZXMKYWNfY3Zf aGVhZGVyX3N5c191bl9oPXllcwphY19jdl9oZWFkZXJfc3lzX3V0aW1lX2g9eWVzCmFjX2N2X2hl YWRlcl9zeXNfdXRzbmFtZV9oPXllcwphY19jdl9oZWFkZXJfc3lzX3dhaXRfaD15ZXMKYWNfY3Zf aGVhZGVyX3RpbWU9eWVzCmFjX2N2X2hlYWRlcl90aW1lX2g9eWVzCmFjX2N2X2hlYWRlcl91bmlz dGRfaD15ZXMKYWNfY3ZfaGVhZGVyX3V0aW1lX2g9eWVzCmFjX2N2X2hvc3Q9aTY4Ni1wYy1jeWd3 aW4KYWNfY3ZfbGliX2dtcF9fX2dtcHpfaW5pdD15ZXMKYWNfY3ZfbGliX2x0ZGxfbHRfZGxpbml0 PXllcwphY19jdl9saWJfbV9jb3M9eWVzCmFjX2N2X2xpYl91Y2FfX191Y19nZXRfYXJfYnNwPW5v CmFjX2N2X21lbWJlcl9zdHJ1Y3Rfc29ja2FkZHJfaW42X3NpbjZfbGVuPW5vCmFjX2N2X21lbWJl cl9zdHJ1Y3Rfc29ja2FkZHJfc2luX2xlbj1ubwphY19jdl9tZW1iZXJfc3RydWN0X3N0YXRfc3Rf Ymxrc2l6ZT15ZXMKYWNfY3ZfbWVtYmVyX3N0cnVjdF9zdGF0X3N0X2Jsb2Nrcz15ZXMKYWNfY3Zf bWVtYmVyX3N0cnVjdF9zdGF0X3N0X3JkZXY9eWVzCmFjX2N2X21lbWJlcl9zdHJ1Y3RfdG1fdG1f Z210b2ZmPW5vCmFjX2N2X21lbWJlcl9zdHJ1Y3RfdG1fdG1fem9uZT1ubwphY19jdl9vYmpleHQ9 bwphY19jdl9wYXRoX0VHUkVQPScvdXNyL2Jpbi9ncmVwIC1FJwphY19jdl9wYXRoX0dNU0dGTVQ9 L3Vzci9iaW4vbXNnZm10CmFjX2N2X3BhdGhfR1JFUD0vdXNyL2Jpbi9ncmVwCmFjX2N2X3BhdGhf TVNHRk1UPS91c3IvYmluL21zZ2ZtdAphY19jdl9wYXRoX01TR01FUkdFPS91c3IvYmluL21zZ21l cmdlCmFjX2N2X3BhdGhfWEdFVFRFWFQ9L3Vzci9iaW4veGdldHRleHQKYWNfY3ZfcGF0aF9pbnN0 YWxsPScvdXNyL2Jpbi9pbnN0YWxsIC1jJwphY19jdl9wYXRoX21rZGlyPS91c3IvYmluL21rZGly CmFjX2N2X3Byb2dfQVdLPWdhd2sKYWNfY3ZfcHJvZ19DUFA9J2djYyAtRScKYWNfY3ZfcHJvZ19D WFhDUFA9J2crKyAtRScKYWNfY3ZfcHJvZ19hY19jdF9BUj1hcgphY19jdl9wcm9nX2FjX2N0X0FT PWFzCmFjX2N2X3Byb2dfYWNfY3RfQ0M9Z2NjCmFjX2N2X3Byb2dfYWNfY3RfQ1hYPWcrKwphY19j dl9wcm9nX2FjX2N0X0RMTFRPT0w9ZGxsdG9vbAphY19jdl9wcm9nX2FjX2N0X09CSkRVTVA9b2Jq ZHVtcAphY19jdl9wcm9nX2FjX2N0X1JBTkxJQj1yYW5saWIKYWNfY3ZfcHJvZ19hY19jdF9TVFJJ UD1zdHJpcAphY19jdl9wcm9nX2NjX2M4OT0KYWNfY3ZfcHJvZ19jY19nPXllcwphY19jdl9wcm9n X2NjX2djY19jX289eWVzCmFjX2N2X3Byb2dfY3h4X2c9eWVzCmFjX2N2X3Byb2dfZjc3X2c9bm8K YWNfY3ZfcHJvZ19oYXZlX21ha2VpbmZvPXllcwphY19jdl9wcm9nX21ha2VfbWFrZV9zZXQ9eWVz CmFjX2N2X3NlYXJjaF9jcnlwdD0tbGNyeXB0CmFjX2N2X3NlYXJjaF9vcGVuZGlyPSdub25lIHJl cXVpcmVkJwphY19jdl9zZWFyY2hfc2NoZWRfeWllbGQ9J25vbmUgcmVxdWlyZWQnCmFjX2N2X3Nl YXJjaF9zdHJlcnJvcj0nbm9uZSByZXF1aXJlZCcKYWNfY3Zfc2l6ZW9mX19faW50NjQ9MAphY19j dl9zaXplb2ZfY2hhcj0xCmFjX2N2X3NpemVvZl9mbG9hdD00CmFjX2N2X3NpemVvZl9pbnQ9NAph Y19jdl9zaXplb2ZfaW50bWF4X3Q9OAphY19jdl9zaXplb2ZfaW50cHRyX3Q9NAphY19jdl9zaXpl b2ZfbG9uZz00CmFjX2N2X3NpemVvZl9sb25nX2xvbmc9OAphY19jdl9zaXplb2Zfb2ZmX3Q9OAph Y19jdl9zaXplb2ZfcHRyZGlmZl90PTQKYWNfY3Zfc2l6ZW9mX3Nob3J0PTIKYWNfY3Zfc2l6ZW9m X3NpemVfdD00CmFjX2N2X3NpemVvZl91aW50cHRyX3Q9NAphY19jdl9zaXplb2ZfdW5zaWduZWRf X19pbnQ2ND0wCmFjX2N2X3NpemVvZl91bnNpZ25lZF9jaGFyPTEKYWNfY3Zfc2l6ZW9mX3Vuc2ln bmVkX2ludD00CmFjX2N2X3NpemVvZl91bnNpZ25lZF9sb25nPTQKYWNfY3Zfc2l6ZW9mX3Vuc2ln bmVkX2xvbmdfbG9uZz04CmFjX2N2X3NpemVvZl91bnNpZ25lZF9zaG9ydD0yCmFjX2N2X3NpemVv Zl92b2lkX3A9NAphY19jdl9zdHJ1Y3RfdG09dGltZS5oCmFjX2N2X3N5c19yZXN0YXJ0YWJsZV9z eXNjYWxscz15ZXMKYWNfY3ZfdHlwZV9fX2ludDY0PW5vCmFjX2N2X3R5cGVfY2hhcj15ZXMKYWNf Y3ZfdHlwZV9jb21wbGV4X2RvdWJsZT1ubwphY19jdl90eXBlX2Zsb2F0PXllcwphY19jdl90eXBl X2dldGdyb3Vwcz1naWRfdAphY19jdl90eXBlX2ludDE2X3Q9eWVzCmFjX2N2X3R5cGVfaW50MzJf dD15ZXMKYWNfY3ZfdHlwZV9pbnQ2NF90PXllcwphY19jdl90eXBlX2ludDhfdD15ZXMKYWNfY3Zf dHlwZV9pbnQ9eWVzCmFjX2N2X3R5cGVfaW50bWF4X3Q9eWVzCmFjX2N2X3R5cGVfaW50cHRyX3Q9 eWVzCmFjX2N2X3R5cGVfbG9uZz15ZXMKYWNfY3ZfdHlwZV9sb25nX2xvbmc9eWVzCmFjX2N2X3R5 cGVfbW9kZV90PXllcwphY19jdl90eXBlX29mZl90PXllcwphY19jdl90eXBlX3B0cmRpZmZfdD15 ZXMKYWNfY3ZfdHlwZV9zaG9ydD15ZXMKYWNfY3ZfdHlwZV9zaWduYWw9dm9pZAphY19jdl90eXBl X3NpemVfdD15ZXMKYWNfY3ZfdHlwZV9zb2NrbGVuX3Q9eWVzCmFjX2N2X3R5cGVfc3RydWN0X2lw X21yZXE9bm8KYWNfY3ZfdHlwZV91aWRfdD15ZXMKYWNfY3ZfdHlwZV91aW50MTZfdD15ZXMKYWNf Y3ZfdHlwZV91aW50MzJfdD15ZXMKYWNfY3ZfdHlwZV91aW50NjRfdD15ZXMKYWNfY3ZfdHlwZV91 aW50OF90PXllcwphY19jdl90eXBlX3VpbnRtYXhfdD15ZXMKYWNfY3ZfdHlwZV91aW50cHRyX3Q9 eWVzCmFjX2N2X3R5cGVfdW5zaWduZWRfX19pbnQ2ND1ubwphY19jdl90eXBlX3Vuc2lnbmVkX2No YXI9eWVzCmFjX2N2X3R5cGVfdW5zaWduZWRfaW50PXllcwphY19jdl90eXBlX3Vuc2lnbmVkX2xv bmc9eWVzCmFjX2N2X3R5cGVfdW5zaWduZWRfbG9uZ19sb25nPXllcwphY19jdl90eXBlX3Vuc2ln bmVkX3Nob3J0PXllcwphY19jdl90eXBlX3ZvaWRfcD15ZXMKYWNfY3ZfdmFyX3R6bmFtZT15ZXMK YWNfY3Zfd29ya2luZ19hbGxvY2FfaD15ZXMKYWNsX2N2X2hhcmRjb2RlX2RpcmVjdD1ubwphY2xf Y3ZfaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYz0nLUwkbGliZGlyJwphY2xfY3ZfaGFyZGNvZGVf bGliZGlyX3NlcGFyYXRvcj0KYWNsX2N2X2hhcmRjb2RlX21pbnVzX0w9bm8KYWNsX2N2X2xpYmV4 dD1hCmFjbF9jdl9saWJuYW1lX3NwZWM9J2xpYiRuYW1lJwphY2xfY3ZfbGlicmFyeV9uYW1lc19z cGVjPSckbGlibmFtZS5kbGwuYSAkbGlibmFtZS5saWInCmFjbF9jdl9wYXRoX0xEPS91c3IvaTY4 Ni1wYy1jeWd3aW4vYmluL2xkLmV4ZQphY2xfY3ZfcHJvZ19nbnVfbGQ9eWVzCmFjbF9jdl9ycGF0 aD1kb25lCmFjbF9jdl9zaGxpYmV4dD1kbGwKYWNsX2N2X3dsPS1XbCwKYW1fY3ZfQ0NfZGVwZW5k ZW5jaWVzX2NvbXBpbGVyX3R5cGU9Z2NjMwphbV9jdl9DWFhfZGVwZW5kZW5jaWVzX2NvbXBpbGVy X3R5cGU9Z2NjMwphbV9jdl9mdW5jX2ljb252PXllcwphbV9jdl9saWJfaWNvbnY9eWVzCmFtX2N2 X2xpc3BkaXI9JyR7ZGF0YWRpcn0vZW1hY3Mvc2l0ZS1saXNwJwphbV9jdl9wcm9nX2NjX3N0ZGM9 Cmd0X2N2X2Z1bmNfQ0ZMb2NhbGVDb3B5Q3VycmVudD1ubwpndF9jdl9mdW5jX0NGUHJlZmVyZW5j ZXNDb3B5QXBwVmFsdWU9bm8KZ3RfY3ZfZnVuY19nbnVnZXR0ZXh0Ml9saWJjPW5vCmd0X2N2X2Z1 bmNfZ251Z2V0dGV4dDJfbGliaW50bD15ZXMKZ3VpbGVfY3ZfZnVuY19zbGVlcF9kZWNsYXJlZD15 ZXMKZ3VpbGVfY3ZfZnVuY191c2xlZXBfZGVjbGFyZWQ9eWVzCmd1aWxlX2N2X2Z1bmNfdXNsZWVw X3JldHVybl90eXBlPWludApndWlsZV9jdl9oYXZlX2hfZXJybm89eWVzCmd1aWxlX2N2X2hhdmVf aXB2Nj1ubwpndWlsZV9jdl9oYXZlX2xpYmNfc3RhY2tfZW5kPW5vCmd1aWxlX2N2X2hhdmVfc2lu Nl9zY29wZV9pZD1ubwpndWlsZV9jdl9oYXZlX3VpbnQzMl90PXllcwpndWlsZV9jdl9oZWFkZXJf bGliY193aXRoX3VuaXN0ZD1ubwpndWlsZV9jdl9sb2NhbHRpbWVfY2FjaGU9eWVzCmd1aWxlX2N2 X25lZWRfYnJhY2VzX29uX3B0aHJlYWRfbXV0ZXhfaW5pdGlhbGl6ZXI9bm8KZ3VpbGVfY3ZfbmVl ZF9icmFjZXNfb25fcHRocmVhZF9vbmNlX2luaXQ9bm8KZ3VpbGVfY3Zfc3RydWN0X3V0aW1idWZf bmVlZHNfcG9zaXg9bm8KbHRfY3ZfZGVwbGlic19jaGVja19tZXRob2Q9J2ZpbGVfbWFnaWMgXng4 NiBhcmNoaXZlIGltcG9ydHxeeDg2IERMTCcKbHRfY3ZfZGxvcGVuPWRsb3BlbgpsdF9jdl9kbG9w ZW5fbGlicz0KbHRfY3ZfZGxvcGVuX3NlbGY9bm8KbHRfY3ZfZmlsZV9tYWdpY19jbWQ9ZnVuY193 aW4zMl9saWJpZApsdF9jdl9maWxlX21hZ2ljX3Rlc3RfZmlsZT0KbHRfY3ZfbGRfcmVsb2FkX2Zs YWc9LXIKbHRfY3Zfb2JqZGlyPS5saWJzCmx0X2N2X3BhdGhfTEQ9L3Vzci9pNjg2LXBjLWN5Z3dp bi9iaW4vbGQuZXhlCmx0X2N2X3BhdGhfTERDWFg9L3Vzci9pNjg2LXBjLWN5Z3dpbi9iaW4vbGQu ZXhlCmx0X2N2X3BhdGhfTk09Jy91c3IvYmluL25tIC1CJwpsdF9jdl9wYXRoX1NFRD0vdXNyL2Jp bi9zZWQKbHRfY3ZfcHJvZ19jb21waWxlcl9jX289eWVzCmx0X2N2X3Byb2dfY29tcGlsZXJfY19v X0NYWD15ZXMKbHRfY3ZfcHJvZ19jb21waWxlcl9waWNfd29ya3M9eWVzCmx0X2N2X3Byb2dfY29t cGlsZXJfcGljX3dvcmtzX0NYWD15ZXMKbHRfY3ZfcHJvZ19jb21waWxlcl9ydHRpX2V4Y2VwdGlv bnM9bm8KbHRfY3ZfcHJvZ19jb21waWxlcl9zdGF0aWNfd29ya3M9eWVzCmx0X2N2X3Byb2dfY29t cGlsZXJfc3RhdGljX3dvcmtzX0NYWD15ZXMKbHRfY3ZfcHJvZ19nbnVfbGQ9eWVzCmx0X2N2X3By b2dfZ251X2xkY3h4PXllcwpsdF9jdl9zeXNfZ2xvYmFsX3N5bWJvbF9waXBlPSdzZWQgLW4gLWUg J1wnJ3MvXi4qWyAJXVwoW0FCQ0RHSVJTVFddW0FCQ0RHSVJTVFddKlwpWyAJXVsgCV0qX1woW19B LVphLXpdW19BLVphLXowLTldKlwpJC9cMSBfXDIgXDIvcCdcJycnCmx0X2N2X3N5c19nbG9iYWxf c3ltYm9sX3RvX2NfbmFtZV9hZGRyZXNzPSdzZWQgLW4gLWUgJ1wnJ3MvXjogXChbXiBdKlwpICQv ICB7XCJcMVwiLCAobHRfcHRyKSAwfSwvcCdcJycgLWUgJ1wnJ3MvXltCQ0RFR1JTVF0gXChbXiBd KlwpIFwoW14gXSpcKSQvICB7IlwyIiwgKGx0X3B0cikgXCZcMn0sL3AnXCcnJwpsdF9jdl9zeXNf Z2xvYmFsX3N5bWJvbF90b19jZGVjbD0nc2VkIC1uIC1lICdcJydzL14uIC4qIFwoLipcKSQvZXh0 ZXJuIGludCBcMTsvcCdcJycnCmx0X2N2X3N5c19saWJfZGxzZWFyY2hfcGF0aF9zcGVjPScvbGli IC91c3IvbGliJwpsdF9jdl9zeXNfbGliX3NlYXJjaF9wYXRoX3NwZWM9Jy91c3IvbGliIC9saWIv dzMyYXBpIC9saWIgL3Vzci9sb2NhbC9saWInCmx0X2N2X3N5c19tYXhfY21kX2xlbj04MTkyCmx0 X2x0X2N2X3Byb2dfY29tcGlsZXJfY19vPScieWVzIicKbHRfbHRfY3ZfcHJvZ19jb21waWxlcl9j X29fQ1hYPScieWVzIicKbHRfbHRfY3Zfc3lzX2dsb2JhbF9zeW1ib2xfcGlwZT0nInNlZCAtbiAt ZSAnXCcncy9eLipbIAldXFwoW0FCQ0RHSVJTVFddW0FCQ0RHSVJTVFddKlxcKVsgCV1bIAldKl9c XChbX0EtWmEtel1bX0EtWmEtejAtOV0qXFwpXCQvXFwxIF9cXDIgXFwyL3AnXCcnIicKbHRfbHRf Y3Zfc3lzX2dsb2JhbF9zeW1ib2xfdG9fY19uYW1lX2FkZHJlc3M9JyJzZWQgLW4gLWUgJ1wnJ3Mv XjogXFwoW14gXSpcXCkgXCQvICB7XFxcIlxcMVxcXCIsIChsdF9wdHIpIDB9LC9wJ1wnJyAtZSAn XCcncy9eW0JDREVHUlNUXSBcXChbXiBdKlxcKSBcXChbXiBdKlxcKVwkLyAge1wiXFwyXCIsIChs dF9wdHIpIFxcJlxcMn0sL3AnXCcnIicKbHRfbHRfY3Zfc3lzX2dsb2JhbF9zeW1ib2xfdG9fY2Rl Y2w9JyJzZWQgLW4gLWUgJ1wnJ3MvXi4gLiogXFwoLipcXClcJC9leHRlcm4gaW50IFxcMTsvcCdc JyciJwpzY21fY3Zfc3RydWN0X2xpbmdlcj15ZXMKc2NtX2N2X3N0cnVjdF90aW1lc3BlYz15ZXMK CiMjIC0tLS0tLS0tLS0tLS0tLS0tICMjCiMjIE91dHB1dCB2YXJpYWJsZXMuICMjCiMjIC0tLS0t LS0tLS0tLS0tLS0tICMjCgpBQ0xPQ0FMPScke1NIRUxMfSAvaG9tZS9BYXJvbi9ndWlsZS0xLjgu NC9idWlsZC1hdXgvbWlzc2luZyAtLXJ1biBhY2xvY2FsLTEuMTAnCkFMTE9DQT0nJwpBTURFUEJB Q0tTTEFTSD0nXCcKQU1ERVBfRkFMU0U9JyMnCkFNREVQX1RSVUU9JycKQU1UQVI9JyR7U0hFTEx9 IC9ob21lL0Fhcm9uL2d1aWxlLTEuOC40L2J1aWxkLWF1eC9taXNzaW5nIC0tcnVuIHRhcicKQVI9 J2FyJwpBUz0nYXMnCkFVVE9DT05GPScke1NIRUxMfSAvaG9tZS9BYXJvbi9ndWlsZS0xLjguNC9i dWlsZC1hdXgvbWlzc2luZyAtLXJ1biBhdXRvY29uZicKQVVUT0hFQURFUj0nJHtTSEVMTH0gL2hv bWUvQWFyb24vZ3VpbGUtMS44LjQvYnVpbGQtYXV4L21pc3NpbmcgLS1ydW4gYXV0b2hlYWRlcicK QVVUT01BS0U9JyR7U0hFTEx9IC9ob21lL0Fhcm9uL2d1aWxlLTEuOC40L2J1aWxkLWF1eC9taXNz aW5nIC0tcnVuIGF1dG9tYWtlLTEuMTAnCkFXSz0nZ2F3aycKQ0M9J2djYycKQ0NERVBNT0RFPSdk ZXBtb2RlPWdjYzMnCkNDTERfRk9SX0JVSUxEPSdnY2MnCkNDX0ZPUl9CVUlMRD0nZ2NjJwpDRkxB R1M9Jy1nIC1PMiAtV2FsbCAtV21pc3NpbmctcHJvdG90eXBlcyAtV2Vycm9yJwpDUFA9J2djYyAt RScKQ1BQRkxBR1M9JycKQ1hYPSdnKysnCkNYWENQUD0nZysrIC1FJwpDWFhERVBNT0RFPSdkZXBt b2RlPWdjYzMnCkNYWEZMQUdTPSctZyAtTzInCkNZR1BBVEhfVz0nY3lncGF0aCAtdycKREVGUz0n LURIQVZFX0NPTkZJR19IJwpERVBESVI9Jy5kZXBzJwpETExUT09MPSdkbGx0b29sJwpETFBSRU9Q RU49Jy1kbHByZW9wZW4gZm9yY2UnCkRTWU1VVElMPScnCkVDSE89J2VjaG8nCkVDSE9fQz0nJwpF Q0hPX049Jy1uJwpFQ0hPX1Q9JycKRUdSRVA9Jy91c3IvYmluL2dyZXAgLUUnCkVNQUNTPSdubycK RU1BQ1NMT0FEUEFUSD0nJwpFWEVFWFQ9Jy5leGUnCkVYVFJBX0RFRlM9JycKRVhUUkFfRE9UX0RP Q19GSUxFUz0nZHlubC5kb2MgZmlsZXN5cy5kb2MgcG9zaXguZG9jIG5ldF9kYi5kb2Mgc29ja2V0 LmRvYyByZWdleC1wb3NpeC5kb2MnCkVYVFJBX0RPVF9YX0ZJTEVTPSdkeW5sLnggZmlsZXN5cy54 IHBvc2l4LnggbmV0X2RiLnggc29ja2V0LnggcmVnZXgtcG9zaXgueCcKRjc3PScnCkZGTEFHUz0n JwpHTVNHRk1UPScvdXNyL2Jpbi9tc2dmbXQnCkdNU0dGTVRfMDE1PScvdXNyL2Jpbi9tc2dmbXQn CkdSRVA9Jy91c3IvYmluL2dyZXAnCkdVSUxFX0NGTEFHUz0nICcKR1VJTEVfRUZGRUNUSVZFX1ZF UlNJT049JzEuOCcKR1VJTEVfRk9SX0JVSUxEPSckKHByZWluc3RndWlsZSknCkdVSUxFX0xJQlM9 JyAgLWxnbXAgLWxjcnlwdCAtbG0gLWxsdGRsICcKR1VJTEVfTUFKT1JfVkVSU0lPTj0nMScKR1VJ TEVfTUlDUk9fVkVSU0lPTj0nNCcKR1VJTEVfTUlOT1JfVkVSU0lPTj0nOCcKR1VJTEVfVkVSU0lP Tj0nMS44LjQnCkhBVkVfTUFLRUlORk9fRkFMU0U9JyMnCkhBVkVfTUFLRUlORk9fVFJVRT0nJwpI T1NUX0NDPSdnY2MnCklOU1RBTExfREFUQT0nJHtJTlNUQUxMfSAtbSA2NDQnCklOU1RBTExfUFJP R1JBTT0nJHtJTlNUQUxMfScKSU5TVEFMTF9TQ1JJUFQ9JyR7SU5TVEFMTH0nCklOU1RBTExfU1RS SVBfUFJPR1JBTT0nJChpbnN0YWxsX3NoKSAtYyAtcycKSU5UTExJQlM9Jy1saW50bCcKSU5UTF9N QUNPU1hfTElCUz0nJwpMREZMQUdTPScnCkxJQkdVSUxFX0lOVEVSRkFDRT0nMTg6MjoxJwpMSUJH VUlMRV9JTlRFUkZBQ0VfQUdFPScxJwpMSUJHVUlMRV9JTlRFUkZBQ0VfQ1VSUkVOVD0nMTgnCkxJ QkdVSUxFX0lOVEVSRkFDRV9SRVZJU0lPTj0nMicKTElCR1VJTEVfU1JGSV9TUkZJXzEzXzE0X0lO VEVSRkFDRT0nMzoxOjAnCkxJQkdVSUxFX1NSRklfU1JGSV8xM18xNF9JTlRFUkZBQ0VfQUdFPScw JwpMSUJHVUlMRV9TUkZJX1NSRklfMTNfMTRfSU5URVJGQUNFX0NVUlJFTlQ9JzMnCkxJQkdVSUxF X1NSRklfU1JGSV8xM18xNF9JTlRFUkZBQ0VfUkVWSVNJT049JzEnCkxJQkdVSUxFX1NSRklfU1JG SV8xM18xNF9NQUpPUj0nMycKTElCR1VJTEVfU1JGSV9TUkZJXzFfSU5URVJGQUNFPSczOjE6MCcK TElCR1VJTEVfU1JGSV9TUkZJXzFfSU5URVJGQUNFX0FHRT0nMCcKTElCR1VJTEVfU1JGSV9TUkZJ XzFfSU5URVJGQUNFX0NVUlJFTlQ9JzMnCkxJQkdVSUxFX1NSRklfU1JGSV8xX0lOVEVSRkFDRV9S RVZJU0lPTj0nMScKTElCR1VJTEVfU1JGSV9TUkZJXzFfTUFKT1I9JzMnCkxJQkdVSUxFX1NSRklf U1JGSV80X0lOVEVSRkFDRT0nMzoxOjAnCkxJQkdVSUxFX1NSRklfU1JGSV80X0lOVEVSRkFDRV9B R0U9JzAnCkxJQkdVSUxFX1NSRklfU1JGSV80X0lOVEVSRkFDRV9DVVJSRU5UPSczJwpMSUJHVUlM RV9TUkZJX1NSRklfNF9JTlRFUkZBQ0VfUkVWSVNJT049JzEnCkxJQkdVSUxFX1NSRklfU1JGSV80 X01BSk9SPSczJwpMSUJHVUlMRV9TUkZJX1NSRklfNjBfSU5URVJGQUNFPScyOjI6MCcKTElCR1VJ TEVfU1JGSV9TUkZJXzYwX0lOVEVSRkFDRV9BR0U9JzAnCkxJQkdVSUxFX1NSRklfU1JGSV82MF9J TlRFUkZBQ0VfQ1VSUkVOVD0nMicKTElCR1VJTEVfU1JGSV9TUkZJXzYwX0lOVEVSRkFDRV9SRVZJ U0lPTj0nMicKTElCR1VJTEVfU1JGSV9TUkZJXzYwX01BSk9SPScyJwpMSUJJQ09OVj0nLWxpY29u dicKTElCSU5UTD0nLWxpbnRsJwpMSUJMT0JKUz0nZHlubC5sbyBmaWxlc3lzLmxvIHBvc2l4Lmxv IG5ldF9kYi5sbyBzb2NrZXQubG8gcmVnZXgtcG9zaXgubG8nCkxJQk9CSlM9JyAke0xJQk9CSkRJ Un1keW5sJFUubyAke0xJQk9CSkRJUn1maWxlc3lzJFUubyAke0xJQk9CSkRJUn1wb3NpeCRVLm8g JHtMSUJPQkpESVJ9bmV0X2RiJFUubyAke0xJQk9CSkRJUn1zb2NrZXQkVS5vICR7TElCT0JKRElS fXJlZ2V4LXBvc2l4JFUubycKTElCUz0nIC1sZ21wIC1sY3J5cHQgLWxtIC1sbHRkbCAnCkxJQlRP T0w9JyQoU0hFTEwpICQodG9wX2J1aWxkZGlyKS9saWJ0b29sJwpMTl9TPSdsbiAtcycKTFRMSUJJ Q09OVj0nLWxpY29udicKTFRMSUJJTlRMPSctbGludGwnCkxUTElCT0JKUz0nICR7TElCT0JKRElS fWR5bmwkVS5sbyAke0xJQk9CSkRJUn1maWxlc3lzJFUubG8gJHtMSUJPQkpESVJ9cG9zaXgkVS5s byAke0xJQk9CSkRJUn1uZXRfZGIkVS5sbyAke0xJQk9CSkRJUn1zb2NrZXQkVS5sbyAke0xJQk9C SkRJUn1yZWdleC1wb3NpeCRVLmxvJwpNQUlOVD0nIycKTUFJTlRBSU5FUl9NT0RFX0ZBTFNFPScn Ck1BSU5UQUlORVJfTU9ERV9UUlVFPScjJwpNQUtFSU5GTz0nJHtTSEVMTH0gL2hvbWUvQWFyb24v Z3VpbGUtMS44LjQvYnVpbGQtYXV4L21pc3NpbmcgLS1ydW4gbWFrZWluZm8nCk1TR0ZNVD0nL3Vz ci9iaW4vbXNnZm10JwpNU0dGTVRfMDE1PScvdXNyL2Jpbi9tc2dmbXQnCk1TR01FUkdFPScvdXNy L2Jpbi9tc2dtZXJnZScKTk1FRElUPScnCk9CSkRVTVA9J29iamR1bXAnCk9CSkVYVD0nbycKUEFD S0FHRT0nZ3VpbGUnClBBQ0tBR0VfQlVHUkVQT1JUPSdidWctZ3VpbGVAZ251Lm9yZycKUEFDS0FH RV9OQU1FPSdndWlsZScKUEFDS0FHRV9TVFJJTkc9J2d1aWxlIDEuOC40JwpQQUNLQUdFX1RBUk5B TUU9J2d1aWxlJwpQQUNLQUdFX1ZFUlNJT049JzEuOC40JwpQQVRIX1NFUEFSQVRPUj0nOicKUE9T VUI9J3BvJwpQVEhSRUFEX0NDPSdnY2MnClBUSFJFQURfQ0ZMQUdTPScnClBUSFJFQURfTElCUz0n JwpSQU5MSUI9J3JhbmxpYicKU0NNX0lfR1NDX0NfSU5MSU5FPSciaW5saW5lIicKU0NNX0lfR1ND X0VOQUJMRV9ERVBSRUNBVEVEPScxJwpTQ01fSV9HU0NfRU5BQkxFX0RJU0NPVVJBR0VEPScxJwpT Q01fSV9HU0NfRU5BQkxFX0VMSVNQPScxJwpTQ01fSV9HU0NfR1VJTEVfREVCVUc9JzAnClNDTV9J X0dTQ19HVUlMRV9ERUJVR19GUkVFTElTVD0nMCcKU0NNX0lfR1NDX05FRURTX0lOVFRZUEVTX0g9 JzAnClNDTV9JX0dTQ19ORUVEU19TVERJTlRfSD0nMScKU0NNX0lfR1NDX05FRURfQlJBQ0VTX09O X1BUSFJFQURfTVVURVhfSU5JVElBTElaRVI9JzAnClNDTV9JX0dTQ19ORUVEX0JSQUNFU19PTl9Q VEhSRUFEX09OQ0VfSU5JVD0nMCcKU0NNX0lfR1NDX1NUQUNLX0dST1dTX1VQPScwJwpTQ01fSV9H U0NfVF9JTlQxNj0nImludDE2X3QiJwpTQ01fSV9HU0NfVF9JTlQzMj0nImludDMyX3QiJwpTQ01f SV9HU0NfVF9JTlQ2ND0nImludDY0X3QiJwpTQ01fSV9HU0NfVF9JTlQ4PSciaW50OF90IicKU0NN X0lfR1NDX1RfSU5UTUFYPSciaW50bWF4X3QiJwpTQ01fSV9HU0NfVF9QVFJESUZGPScicHRyZGlm Zl90IicKU0NNX0lfR1NDX1RfVUlOVDE2PScidWludDE2X3QiJwpTQ01fSV9HU0NfVF9VSU5UMzI9 JyJ1aW50MzJfdCInClNDTV9JX0dTQ19UX1VJTlQ2ND0nInVpbnQ2NF90IicKU0NNX0lfR1NDX1Rf VUlOVDg9JyJ1aW50OF90IicKU0NNX0lfR1NDX1RfVUlOVE1BWD0nInVpbnRtYXhfdCInClNDTV9J X0dTQ19VU0VfTlVMTF9USFJFQURTPScwJwpTQ01fSV9HU0NfVVNFX1BUSFJFQURfVEhSRUFEUz0n MScKU0VEPScvdXNyL2Jpbi9zZWQnClNFVF9NQUtFPScnClNIRUxMPScvYmluL3NoJwpTVFJJUD0n c3RyaXAnClVTRV9OTFM9J3llcycKVkVSU0lPTj0nMS44LjQnClhHRVRURVhUPScvdXNyL2Jpbi94 Z2V0dGV4dCcKWEdFVFRFWFRfMDE1PScvdXNyL2Jpbi94Z2V0dGV4dCcKYWNfY3RfQ0M9J2djYycK YWNfY3RfQ1hYPSdnKysnCmFjX2N0X0Y3Nz0nJwphY3hfcHRocmVhZF9jb25maWc9JycKYW1fX2Zh c3RkZXBDQ19GQUxTRT0nIycKYW1fX2Zhc3RkZXBDQ19UUlVFPScnCmFtX19mYXN0ZGVwQ1hYX0ZB TFNFPScjJwphbV9fZmFzdGRlcENYWF9UUlVFPScnCmFtX19pbmNsdWRlPSdpbmNsdWRlJwphbV9f aXNyYz0nJwphbV9fbGVhZGluZ19kb3Q9Jy4nCmFtX19xdW90ZT0nJwphbV9fdGFyPScke0FNVEFS fSBjaG9mIC0gIiQkdGFyZGlyIicKYW1fX3VudGFyPScke0FNVEFSfSB4ZiAtJwpiaW5kaXI9JyR7 ZXhlY19wcmVmaXh9L2JpbicKYnVpbGQ9J2k2ODYtcGMtY3lnd2luJwpidWlsZF9hbGlhcz0nJwpi dWlsZF9jcHU9J2k2ODYnCmJ1aWxkX29zPSdjeWd3aW4nCmJ1aWxkX3ZlbmRvcj0ncGMnCmNyb3Nz X2NvbXBpbGluZz0nbm8nCmRhdGFkaXI9JyR7ZGF0YXJvb3RkaXJ9JwpkYXRhcm9vdGRpcj0nJHtw cmVmaXh9L3NoYXJlJwpkb2NkaXI9JyR7ZGF0YXJvb3RkaXJ9L2RvYy8ke1BBQ0tBR0VfVEFSTkFN RX0nCmR2aWRpcj0nJHtkb2NkaXJ9JwpleGVjX3ByZWZpeD0nJHtwcmVmaXh9JwpoYXZlX21ha2Vp bmZvPSd5ZXMnCmhvc3Q9J2k2ODYtcGMtY3lnd2luJwpob3N0X2FsaWFzPScnCmhvc3RfY3B1PSdp Njg2Jwpob3N0X29zPSdjeWd3aW4nCmhvc3RfdmVuZG9yPSdwYycKaHRtbGRpcj0nJHtkb2NkaXJ9 JwppbmNsdWRlZGlyPScke3ByZWZpeH0vaW5jbHVkZScKaW5mb2Rpcj0nJHtkYXRhcm9vdGRpcn0v aW5mbycKaW5zdGFsbF9zaD0nJChTSEVMTCkgL2hvbWUvQWFyb24vZ3VpbGUtMS44LjQvYnVpbGQt YXV4L2luc3RhbGwtc2gnCmxpYmRpcj0nJHtleGVjX3ByZWZpeH0vbGliJwpsaWJleGVjZGlyPSck e2V4ZWNfcHJlZml4fS9saWJleGVjJwpsaXNwZGlyPScke2RhdGFkaXJ9L2VtYWNzL3NpdGUtbGlz cCcKbG9jYWxlZGlyPScke2RhdGFyb290ZGlyfS9sb2NhbGUnCmxvY2Fsc3RhdGVkaXI9JyR7cHJl Zml4fS92YXInCm1hbmRpcj0nJHtkYXRhcm9vdGRpcn0vbWFuJwpta2Rpcl9wPScvdXNyL2Jpbi9t a2RpciAtcCcKb2xkaW5jbHVkZWRpcj0nL3Vzci9pbmNsdWRlJwpwZGZkaXI9JyR7ZG9jZGlyfScK cHJlZml4PScvdXNyL2xvY2FsJwpwcm9ncmFtX3RyYW5zZm9ybV9uYW1lPSdzLHgseCwnCnBzZGly PScke2RvY2Rpcn0nCnNiaW5kaXI9JyR7ZXhlY19wcmVmaXh9L3NiaW4nCnNoYXJlZHN0YXRlZGly PScke3ByZWZpeH0vY29tJwpzdWJkaXJzPScgZ3VpbGUtcmVhZGxpbmUnCnN5c2NvbmZkaXI9JyR7 cHJlZml4fS9ldGMnCnRhcmdldF9hbGlhcz0nJwp0b3BfYnVpbGRkaXJfYWJzb2x1dGU9Jy9ob21l L0Fhcm9uL2d1aWxlLTEuOC40Jwp0b3Bfc3JjZGlyX2Fic29sdXRlPScvaG9tZS9BYXJvbi9ndWls ZS0xLjguNCcKCiMjIC0tLS0tLS0tLS0tICMjCiMjIGNvbmZkZWZzLmguICMjCiMjIC0tLS0tLS0t LS0tICMjCgojZGVmaW5lIFBBQ0tBR0VfTkFNRSAiZ3VpbGUiCiNkZWZpbmUgUEFDS0FHRV9UQVJO QU1FICJndWlsZSIKI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjEuOC40IgojZGVmaW5lIFBBQ0tB R0VfU1RSSU5HICJndWlsZSAxLjguNCIKI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiYnVnLWd1 aWxlQGdudS5vcmciCiNkZWZpbmUgU1REQ19IRUFERVJTIDEKI2RlZmluZSBIQVZFX1NZU19UWVBF U19IIDEKI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQojZGVmaW5lIEhBVkVfU1RETElCX0ggMQoj ZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQojZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQojZGVmaW5lIEhB VkVfU1RSSU5HU19IIDEKI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQojZGVmaW5lIEhBVkVfU1RE SU5UX0ggMQojZGVmaW5lIEhBVkVfVU5JU1REX0ggMQojZGVmaW5lIEhBVkVfRExGQ05fSCAxCiNk ZWZpbmUgSEFWRV9MSUJMVERMIDEKI2RlZmluZSBTQ01fV0FSTl9ERVBSRUNBVEVEX0RFRkFVTFQg InN1bW1hcnkiCiNkZWZpbmUgR1VJTEVfVVNFXzY0X0NBTExTIDEKI2RlZmluZSBIQVZFX1BPU0lY IDEKI2RlZmluZSBIQVZFX05FVFdPUktJTkcgMQojZGVmaW5lIFNJWkVPRl9DSEFSIDEKI2RlZmlu ZSBTSVpFT0ZfVU5TSUdORURfQ0hBUiAxCiNkZWZpbmUgU0laRU9GX1NIT1JUIDIKI2RlZmluZSBT SVpFT0ZfVU5TSUdORURfU0hPUlQgMgojZGVmaW5lIFNJWkVPRl9JTlQgNAojZGVmaW5lIFNJWkVP Rl9VTlNJR05FRF9JTlQgNAojZGVmaW5lIFNJWkVPRl9MT05HIDQKI2RlZmluZSBTSVpFT0ZfVU5T SUdORURfTE9ORyA0CiNkZWZpbmUgU0laRU9GX1NJWkVfVCA0CiNkZWZpbmUgU0laRU9GX0xPTkdf TE9ORyA4CiNkZWZpbmUgU0laRU9GX1VOU0lHTkVEX0xPTkdfTE9ORyA4CiNkZWZpbmUgU0laRU9G X19fSU5UNjQgMAojZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9fX0lOVDY0IDAKI2RlZmluZSBTSVpF T0ZfVk9JRF9QIDQKI2RlZmluZSBTSVpFT0ZfSU5UUFRSX1QgNAojZGVmaW5lIFNJWkVPRl9VSU5U UFRSX1QgNAojZGVmaW5lIFNJWkVPRl9QVFJESUZGX1QgNAojZGVmaW5lIFNJWkVPRl9TSVpFX1Qg NAojZGVmaW5lIFNJWkVPRl9PRkZfVCA4CiNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCiNkZWZpbmUg SEFWRV9JTlRUWVBFU19IIDEKI2RlZmluZSBTSVpFT0ZfSU5UTUFYX1QgOAojZGVmaW5lIFNURENf SEVBREVSUyAxCiNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCiNkZWZpbmUgVElNRV9XSVRIX1NZU19U SU1FIDEKI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQojZGVmaW5lIEhBVkVfSU9fSCAxCiNkZWZp bmUgSEFWRV9MSU1JVFNfSCAxCiNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCiNkZWZpbmUgSEFWRV9N RU1PUllfSCAxCiNkZWZpbmUgSEFWRV9QUk9DRVNTX0ggMQojZGVmaW5lIEhBVkVfU1RSSU5HX0gg MQojZGVmaW5lIEhBVkVfUkVHRVhfSCAxCiNkZWZpbmUgSEFWRV9TWVNfSU9DVExfSCAxCiNkZWZp bmUgSEFWRV9TWVNfU0VMRUNUX0ggMQojZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCiNkZWZpbmUg SEFWRV9TWVNfVElNRUJfSCAxCiNkZWZpbmUgSEFWRV9TWVNfVElNRVNfSCAxCiNkZWZpbmUgSEFW RV9TWVNfVFlQRVNfSCAxCiNkZWZpbmUgSEFWRV9TWVNfVVRJTUVfSCAxCiNkZWZpbmUgSEFWRV9U SU1FX0ggMQojZGVmaW5lIEhBVkVfVU5JU1REX0ggMQojZGVmaW5lIEhBVkVfVVRJTUVfSCAxCiNk ZWZpbmUgSEFWRV9QV0RfSCAxCiNkZWZpbmUgSEFWRV9HUlBfSCAxCiNkZWZpbmUgSEFWRV9TWVNf VVRTTkFNRV9IIDEKI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCiNkZWZpbmUgSEFWRV9VTklTVERf SCAxCiNkZWZpbmUgR0VUR1JPVVBTX1QgZ2lkX3QKI2RlZmluZSBSRVRTSUdUWVBFIHZvaWQKI2Rl ZmluZSBIQVZFX0xJQk0gMQojZGVmaW5lIEhBVkVfR0VUSE9TVEJZTkFNRSAxCiNkZWZpbmUgSEFW RV9DT05ORUNUIDEKI2RlZmluZSBIQVZFX0FTU0VSVF9IIDEKI2RlZmluZSBIQVZFX0NURVJNSUQg MQojZGVmaW5lIEhBVkVfRlRJTUUgMQojZGVmaW5lIEhBVkVfRlRSVU5DQVRFIDEKI2RlZmluZSBI QVZFX0ZDSE9XTiAxCiNkZWZpbmUgSEFWRV9HRVRDV0QgMQojZGVmaW5lIEhBVkVfR0VURVVJRCAx CiNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQojZGVmaW5lIEhBVkVfR01USU1FX1IgMQojZGVm aW5lIEhBVkVfSU9DVEwgMQojZGVmaW5lIEhBVkVfTFNUQVQgMQojZGVmaW5lIEhBVkVfTUtESVIg MQojZGVmaW5lIEhBVkVfTUtOT0QgMQojZGVmaW5lIEhBVkVfTklDRSAxCiNkZWZpbmUgSEFWRV9Q SVBFIDEKI2RlZmluZSBIQVZFX19QSVBFIDEKI2RlZmluZSBIQVZFX1JFQURESVJfUiAxCiNkZWZp bmUgSEFWRV9SRUFETElOSyAxCiNkZWZpbmUgSEFWRV9SRU5BTUUgMQojZGVmaW5lIEhBVkVfUk1E SVIgMQojZGVmaW5lIEhBVkVfU0VMRUNUIDEKI2RlZmluZSBIQVZFX1NFVEVHSUQgMQojZGVmaW5l IEhBVkVfU0VURVVJRCAxCiNkZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQojZGVmaW5lIEhBVkVfU0VU UEdJRCAxCiNkZWZpbmUgSEFWRV9TRVRTSUQgMQojZGVmaW5lIEhBVkVfU0lHQUNUSU9OIDEKI2Rl ZmluZSBIQVZFX1NJR0lOVEVSUlVQVCAxCiNkZWZpbmUgSEFWRV9TVFJGVElNRSAxCiNkZWZpbmUg SEFWRV9TVFJQVElNRSAxCiNkZWZpbmUgSEFWRV9TWU1MSU5LIDEKI2RlZmluZSBIQVZFX1NZTkMg MQojZGVmaW5lIEhBVkVfU1lTQ09ORiAxCiNkZWZpbmUgSEFWRV9UQ0dFVFBHUlAgMQojZGVmaW5l IEhBVkVfVENTRVRQR1JQIDEKI2RlZmluZSBIQVZFX1RJTUVTIDEKI2RlZmluZSBIQVZFX1VOQU1F IDEKI2RlZmluZSBIQVZFX1dBSVRQSUQgMQojZGVmaW5lIEhBVkVfU1RSRFVQIDEKI2RlZmluZSBI QVZFX1NZU1RFTSAxCiNkZWZpbmUgSEFWRV9VU0xFRVAgMQojZGVmaW5lIEhBVkVfQVRFWElUIDEK I2RlZmluZSBIQVZFX09OX0VYSVQgMQojZGVmaW5lIEhBVkVfQ0hPV04gMQojZGVmaW5lIEhBVkVf TElOSyAxCiNkZWZpbmUgSEFWRV9GQ05UTCAxCiNkZWZpbmUgSEFWRV9UVFlOQU1FIDEKI2RlZmlu ZSBIQVZFX0dFVFBXRU5UIDEKI2RlZmluZSBIQVZFX0dFVEdSRU5UIDEKI2RlZmluZSBIQVZFX0tJ TEwgMQojZGVmaW5lIEhBVkVfR0VUUFBJRCAxCiNkZWZpbmUgSEFWRV9HRVRQR1JQIDEKI2RlZmlu ZSBIQVZFX0ZPUksgMQojZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKI2RlZmluZSBIQVZFX0dFVElU SU1FUiAxCiNkZWZpbmUgSEFWRV9TVFJDSFIgMQojZGVmaW5lIEhBVkVfU1RSQ01QIDEKI2RlZmlu ZSBIQVZFX0lOREVYIDEKI2RlZmluZSBIQVZFX0JDT1BZIDEKI2RlZmluZSBIQVZFX01FTUNQWSAx CiNkZWZpbmUgSEFWRV9SSU5ERVggMQojZGVmaW5lIEhBVkVfVFJVTkNBVEUgMQojZGVmaW5lIEhB VkVfVU5TRVRFTlYgMQojZGVmaW5lIEhBVkVfSVNCTEFOSyAxCiNkZWZpbmUgSEFWRV9TVFJOQ0FT RUNNUCAxCiNkZWZpbmUgSEFWRV9DUllQVF9IIDEKI2RlZmluZSBIQVZFX05FVERCX0ggMQojZGVm aW5lIEhBVkVfUFRIUkVBRF9IIDEKI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKI2RlZmluZSBI QVZFX1NZU19SRVNPVVJDRV9IIDEKI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQojZGVmaW5lIEhB VkVfQ0hST09UIDEKI2RlZmluZSBIQVZFX0ZMT0NLIDEKI2RlZmluZSBIQVZFX0dFVExPR0lOIDEK I2RlZmluZSBIQVZFX0NVU0VSSUQgMQojZGVmaW5lIEhBVkVfR0VUUFJJT1JJVFkgMQojZGVmaW5l IEhBVkVfU0VUUFJJT1JJVFkgMQojZGVmaW5lIEhBVkVfR0VUUEFTUyAxCiNkZWZpbmUgSEFWRV9H RVRIT1NUTkFNRSAxCiNkZWZpbmUgSEFWRV9ERUNMX1NFVEhPU1ROQU1FIDAKI2RlZmluZSBIQVZF X0NSWVBUIDEKI2RlZmluZSBIQVZFX0xJQkdNUCAxCiNkZWZpbmUgSEFWRV9JQ09OViAxCiNkZWZp bmUgRU5BQkxFX05MUyAxCiNkZWZpbmUgSEFWRV9HRVRURVhUIDEKI2RlZmluZSBIQVZFX0RDR0VU VEVYVCAxCiNkZWZpbmUgSEFWRV9ERUNMX1NUUlBUSU1FIDEKI2RlZmluZSBIQVZFX1VOSVhfRE9N QUlOX1NPQ0tFVFMgMQojZGVmaW5lIEhBVkVfU09DS0VUUEFJUiAxCiNkZWZpbmUgSEFWRV9HRVRH Uk9VUFMgMQojZGVmaW5lIEhBVkVfU0VUR1JPVVBTIDEKI2RlZmluZSBIQVZFX1NFVFBXRU5UIDEK I2RlZmluZSBIQVZFX1BBVVNFIDEKI2RlZmluZSBIQVZFX1RaU0VUIDEKI2RlZmluZSBIQVZFX1NF VEhPU1RFTlQgMQojZGVmaW5lIEhBVkVfRU5ESE9TVEVOVCAxCiNkZWZpbmUgSEFWRV9TRVRQUk9U T0VOVCAxCiNkZWZpbmUgSEFWRV9HRVRQUk9UT0VOVCAxCiNkZWZpbmUgSEFWRV9FTkRQUk9UT0VO VCAxCiNkZWZpbmUgSEFWRV9TRVRTRVJWRU5UIDEKI2RlZmluZSBIQVZFX0dFVFNFUlZFTlQgMQoj ZGVmaW5lIEhBVkVfRU5EU0VSVkVOVCAxCiNkZWZpbmUgSEFWRV9JTkVUX01BS0VBRERSIDEKI2Rl ZmluZSBIQVZFX0lORVRfTkVUT0YgMQojZGVmaW5lIEhBVkVfSFNUUkVSUk9SIDEKI2RlZmluZSBI QVZFX0lORVRfUFRPTiAxCiNkZWZpbmUgSEFWRV9JTkVUX05UT1AgMQojZGVmaW5lIEhBVkVfSF9F UlJOTyAxCiNkZWZpbmUgSEFWRV9VSU5UMzJfVCAxCiNkZWZpbmUgTE9DQUxUSU1FX0NBQ0hFIDEK I2RlZmluZSBIQVZFX1JFU1RBUlRBQkxFX1NZU0NBTExTIDEKI2RlZmluZSBIQVZFX1JFR0NPTVAg MQojZGVmaW5lIEhBVkVfSU5FVF9BVE9OIDEKI2RlZmluZSBIQVZFX1BVVEVOViAxCiNkZWZpbmUg SEFWRV9TVFJFUlJPUiAxCiNkZWZpbmUgSEFWRV9NRU1NT1ZFIDEKI2RlZmluZSBIQVZFX01LU1RF TVAgMQojZGVmaW5lIEhBVkVfSUVFRUZQX0ggMQojZGVmaW5lIEhBVkVfQVNJTkggMQojZGVmaW5l IEhBVkVfQUNPU0ggMQojZGVmaW5lIEhBVkVfQVRBTkggMQojZGVmaW5lIEhBVkVfQ09QWVNJR04g MQojZGVmaW5lIEhBVkVfRklOSVRFIDEKI2RlZmluZSBIQVZFX1NJTkNPUyAxCiNkZWZpbmUgSEFW RV9UUlVOQyAxCiNkZWZpbmUgSEFWRV9JU0lORiAxCiNkZWZpbmUgSEFWRV9JU05BTiAxCiNkZWZp bmUgSEFWRV9BTExPQ0FfSCAxCiNkZWZpbmUgSEFWRV9BTExPQ0EgMQojZGVmaW5lIEhBVkVfU1RS VUNUX1NUQVRfU1RfUkRFViAxCiNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9CTEtTSVpFIDEK I2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX0JMT0NLUyAxCiNkZWZpbmUgSEFWRV9ERUNMX1Ra TkFNRSAxCiNkZWZpbmUgSEFWRV9UWk5BTUUgMQojZGVmaW5lIFNJWkVPRl9GTE9BVCA0CiNkZWZp bmUgU0NNX1NJTkdMRVMgMQojZGVmaW5lIEhBVkVfU1RSVUNUX0xJTkdFUiAxCiNkZWZpbmUgSEFW RV9TVFJVQ1RfVElNRVNQRUMgMQojZGVmaW5lIEhBVkVfUFRIUkVBRF9TSUdNQVNLIDEKCmNvbmZp Z3VyZTogZXhpdCAwCg== ------=_Part_3463_30806084.1209589039755--