Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1jbLP4-0005P8-Ed for pgsql-hackers@arkaria.postgresql.org; Wed, 20 May 2020 09:52:47 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1jbLP3-0001u1-7T for pgsql-hackers@arkaria.postgresql.org; Wed, 20 May 2020 09:52:45 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1jbLP1-0001tu-K3 for pgsql-hackers@lists.postgresql.org; Wed, 20 May 2020 09:52:44 +0000 Received: from [64.147.123.30] (helo=wforward1-smtp.messagingengine.com) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1jbLOx-0001b8-88 for pgsql-hackers@postgresql.org; Wed, 20 May 2020 09:52:42 +0000 Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailforward.west.internal (Postfix) with ESMTP id 0E2D5DFD for ; Wed, 20 May 2020 05:52:27 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute1.internal (MEProxy); Wed, 20 May 2020 05:52:28 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=content-type:date:from:message-id :mime-version:subject:to:x-me-proxy:x-me-proxy:x-me-sender :x-me-sender:x-sasl-enc; s=fm2; bh=l4/GeoTuHqCIjkHDW6InCDAX49aHi VGSNrxkfUHr/VE=; b=gLRVF4Yn7YlW3+WsH8oDmMoK0v/kUxDeeYJc41L5GEZIk fAczIH+irTs9qHu9kcMO20+kxwZVOtTcJwfAps6L9g6isjAlIQLVdcJ2zmTfYLz8 yqgheiM+E5hhBRcmQan72DmBHTUhWNBcDgXd7wA6wAXTJN12D619G0sitZIutirs mA+J7gJ1sZXSjwCxVYEAl3Ll0DPgiFoq/RIo997W6mwImiU9RzgA7/yiAzwKBkxx AUJPdrNXbsg4rAkTDF+JpiWDpsEFe7yo0p3WzwC6F5B3wsGN28mdtvK+fIw2nyNl MpXewHhQPsLZlMEdOPcF6iJ0ANoRu0iigEWLPf+8w== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduhedruddtledgudelucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucenucfjughrpefvhffuohfkffgfgggtsehmtderre dtfeejnecuhfhrohhmpefrvghtvghrucfgihhsvghnthhrrghuthcuoehpvghtvghrrdgv ihhsvghnthhrrghuthesvdhnughquhgrughrrghnthdrtghomheqnecuggftrfgrthhtvg hrnhepkeeileelfedttdelteekvefghefhvdeigfduteejtdeuuefgffdvleethfefuedv necuffhomhgrihhnpedvnhguqhhurggurhgrnhhtrdgtohhmnecukfhppeelfedrvdegfe drkedvrddvgeeinecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhf rhhomhepphgvthgvrhdrvghishgvnhhtrhgruhhtsedvnhguqhhurggurhgrnhhtrdgtoh hm X-ME-Proxy: Received: from april.pezone.net (p5df352f6.dip0.t-ipconnect.de [93.243.82.246]) by mail.messagingengine.com (Postfix) with ESMTPA id 1DD9A328005E for ; Wed, 20 May 2020 05:52:25 -0400 (EDT) To: pgsql-hackers From: Peter Eisentraut Subject: pgindent vs dtrace on macos Organization: 2ndQuadrant Message-ID: <79ed5348-be7a-b647-dd40-742207186a22@2ndquadrant.com> Date: Wed, 20 May 2020 11:52:25 +0200 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="------------54733DEF76B8F98E984546AC" Content-Language: en-US X-Host-Lookup-Failed: Reverse DNS lookup failed for 64.147.123.30 (deferred) List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk This is a multi-part message in MIME format. --------------54733DEF76B8F98E984546AC Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit If I run pgindent on a built tree on macos, I get this error Failure in ./src/backend/utils/probes.h: Error@375: Stuff missing from end of file The file in question is built by the dtrace command. I have attached it here. Is this something to fix in pgindent? Or should this file be excluded, since it's generated? -- Peter Eisentraut http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services --------------54733DEF76B8F98E984546AC Content-Type: text/plain; charset=UTF-8; x-mac-type="0"; x-mac-creator="0"; name="probes.h" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="probes.h" LyoKICogR2VuZXJhdGVkIGJ5IGR0cmFjZSgxTSkuCiAqLwoKI2lmbmRlZglfUFJPQkVTX0hf VE1QCiNkZWZpbmUJX1BST0JFU19IX1RNUAoKI2luY2x1ZGUgPHVuaXN0ZC5oPgoKI2lmZGVm CV9fY3BsdXNwbHVzCmV4dGVybiAiQyIgewojZW5kaWYKCiNkZWZpbmUgVFJBQ0VfUE9TVEdS RVNRTF9TVEFCSUxJVFkgIl9fX2R0cmFjZV9zdGFiaWxpdHkkcG9zdGdyZXNxbCR2MSQxXzFf MF8xXzFfMF8xXzFfMF8xXzFfMF8xXzFfMCIKCiNkZWZpbmUgVFJBQ0VfUE9TVEdSRVNRTF9U WVBFREVGUyAiX19fZHRyYWNlX3R5cGVkZWZzJHBvc3RncmVzcWwkdjIiCgojaWYgIWRlZmlu ZWQoRFRSQUNFX1BST0JFU19ESVNBQkxFRCkgfHwgIURUUkFDRV9QUk9CRVNfRElTQUJMRUQK CiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9CVUZGRVJfQ0hFQ0tQT0lOVF9ET05FKCkgXApk byB7IFwKCV9fYXNtX18gdm9sYXRpbGUoIi5yZWZlcmVuY2UgIiBUUkFDRV9QT1NUR1JFU1FM X1RZUEVERUZTKTsgXAoJX19kdHJhY2VfcHJvYmUkcG9zdGdyZXNxbCRidWZmZXJfX2NoZWNr cG9pbnRfX2RvbmUkdjEoKTsgXAoJX19hc21fXyB2b2xhdGlsZSgiLnJlZmVyZW5jZSAiIFRS QUNFX1BPU1RHUkVTUUxfU1RBQklMSVRZKTsgXAp9IHdoaWxlICgwKQojZGVmaW5lCVRSQUNF X1BPU1RHUkVTUUxfQlVGRkVSX0NIRUNLUE9JTlRfRE9ORV9FTkFCTEVEKCkgXAoJKHsgaW50 IF9yID0gX19kdHJhY2VfaXNlbmFibGVkJHBvc3RncmVzcWwkYnVmZmVyX19jaGVja3BvaW50 X19kb25lJHYxKCk7IFwKCQlfX2FzbV9fIHZvbGF0aWxlKCIiKTsgXAoJCV9yOyB9KQojZGVm aW5lCVRSQUNFX1BPU1RHUkVTUUxfQlVGRkVSX0NIRUNLUE9JTlRfU1RBUlQoYXJnMCkgXApk byB7IFwKCV9fYXNtX18gdm9sYXRpbGUoIi5yZWZlcmVuY2UgIiBUUkFDRV9QT1NUR1JFU1FM X1RZUEVERUZTKTsgXAoJX19kdHJhY2VfcHJvYmUkcG9zdGdyZXNxbCRidWZmZXJfX2NoZWNr cG9pbnRfX3N0YXJ0JHYxJDY5NmU3NChhcmcwKTsgXAoJX19hc21fXyB2b2xhdGlsZSgiLnJl ZmVyZW5jZSAiIFRSQUNFX1BPU1RHUkVTUUxfU1RBQklMSVRZKTsgXAp9IHdoaWxlICgwKQoj ZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfQlVGRkVSX0NIRUNLUE9JTlRfU1RBUlRfRU5BQkxF RCgpIFwKCSh7IGludCBfciA9IF9fZHRyYWNlX2lzZW5hYmxlZCRwb3N0Z3Jlc3FsJGJ1ZmZl cl9fY2hlY2twb2ludF9fc3RhcnQkdjEoKTsgXAoJCV9fYXNtX18gdm9sYXRpbGUoIiIpOyBc CgkJX3I7IH0pCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9CVUZGRVJfQ0hFQ0tQT0lOVF9T WU5DX1NUQVJUKCkgXApkbyB7IFwKCV9fYXNtX18gdm9sYXRpbGUoIi5yZWZlcmVuY2UgIiBU UkFDRV9QT1NUR1JFU1FMX1RZUEVERUZTKTsgXAoJX19kdHJhY2VfcHJvYmUkcG9zdGdyZXNx bCRidWZmZXJfX2NoZWNrcG9pbnRfX3N5bmNfX3N0YXJ0JHYxKCk7IFwKCV9fYXNtX18gdm9s YXRpbGUoIi5yZWZlcmVuY2UgIiBUUkFDRV9QT1NUR1JFU1FMX1NUQUJJTElUWSk7IFwKfSB3 aGlsZSAoMCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX0JVRkZFUl9DSEVDS1BPSU5UX1NZ TkNfU1RBUlRfRU5BQkxFRCgpIFwKCSh7IGludCBfciA9IF9fZHRyYWNlX2lzZW5hYmxlZCRw b3N0Z3Jlc3FsJGJ1ZmZlcl9fY2hlY2twb2ludF9fc3luY19fc3RhcnQkdjEoKTsgXAoJCV9f YXNtX18gdm9sYXRpbGUoIiIpOyBcCgkJX3I7IH0pCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNR TF9CVUZGRVJfRkxVU0hfRE9ORShhcmcwLCBhcmcxLCBhcmcyLCBhcmczLCBhcmc0KSBcCmRv IHsgXAoJX19hc21fXyB2b2xhdGlsZSgiLnJlZmVyZW5jZSAiIFRSQUNFX1BPU1RHUkVTUUxf VFlQRURFRlMpOyBcCglfX2R0cmFjZV9wcm9iZSRwb3N0Z3Jlc3FsJGJ1ZmZlcl9fZmx1c2hf X2RvbmUkdjEkNjk2ZTc0JDc1NmU3MzY5Njc2ZTY1NjQyMDY5NmU3NCQ3NTZlNzM2OTY3NmU2 NTY0MjA2OTZlNzQkNzU2ZTczNjk2NzZlNjU2NDIwNjk2ZTc0JDc1NmU3MzY5Njc2ZTY1NjQy MDY5NmU3NChhcmcwLCBhcmcxLCBhcmcyLCBhcmczLCBhcmc0KTsgXAoJX19hc21fXyB2b2xh dGlsZSgiLnJlZmVyZW5jZSAiIFRSQUNFX1BPU1RHUkVTUUxfU1RBQklMSVRZKTsgXAp9IHdo aWxlICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfQlVGRkVSX0ZMVVNIX0RPTkVfRU5B QkxFRCgpIFwKCSh7IGludCBfciA9IF9fZHRyYWNlX2lzZW5hYmxlZCRwb3N0Z3Jlc3FsJGJ1 ZmZlcl9fZmx1c2hfX2RvbmUkdjEoKTsgXAoJCV9fYXNtX18gdm9sYXRpbGUoIiIpOyBcCgkJ X3I7IH0pCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9CVUZGRVJfRkxVU0hfU1RBUlQoYXJn MCwgYXJnMSwgYXJnMiwgYXJnMywgYXJnNCkgXApkbyB7IFwKCV9fYXNtX18gdm9sYXRpbGUo Ii5yZWZlcmVuY2UgIiBUUkFDRV9QT1NUR1JFU1FMX1RZUEVERUZTKTsgXAoJX19kdHJhY2Vf cHJvYmUkcG9zdGdyZXNxbCRidWZmZXJfX2ZsdXNoX19zdGFydCR2MSQ2OTZlNzQkNzU2ZTcz Njk2NzZlNjU2NDIwNjk2ZTc0JDc1NmU3MzY5Njc2ZTY1NjQyMDY5NmU3NCQ3NTZlNzM2OTY3 NmU2NTY0MjA2OTZlNzQkNzU2ZTczNjk2NzZlNjU2NDIwNjk2ZTc0KGFyZzAsIGFyZzEsIGFy ZzIsIGFyZzMsIGFyZzQpOyBcCglfX2FzbV9fIHZvbGF0aWxlKCIucmVmZXJlbmNlICIgVFJB Q0VfUE9TVEdSRVNRTF9TVEFCSUxJVFkpOyBcCn0gd2hpbGUgKDApCiNkZWZpbmUJVFJBQ0Vf UE9TVEdSRVNRTF9CVUZGRVJfRkxVU0hfU1RBUlRfRU5BQkxFRCgpIFwKCSh7IGludCBfciA9 IF9fZHRyYWNlX2lzZW5hYmxlZCRwb3N0Z3Jlc3FsJGJ1ZmZlcl9fZmx1c2hfX3N0YXJ0JHYx KCk7IFwKCQlfX2FzbV9fIHZvbGF0aWxlKCIiKTsgXAoJCV9yOyB9KQojZGVmaW5lCVRSQUNF X1BPU1RHUkVTUUxfQlVGRkVSX1JFQURfRE9ORShhcmcwLCBhcmcxLCBhcmcyLCBhcmczLCBh cmc0LCBhcmc1LCBhcmc2LCBhcmc3KSBcCmRvIHsgXAoJX19hc21fXyB2b2xhdGlsZSgiLnJl ZmVyZW5jZSAiIFRSQUNFX1BPU1RHUkVTUUxfVFlQRURFRlMpOyBcCglfX2R0cmFjZV9wcm9i ZSRwb3N0Z3Jlc3FsJGJ1ZmZlcl9fcmVhZF9fZG9uZSR2MSQ2OTZlNzQkNzU2ZTczNjk2NzZl NjU2NDIwNjk2ZTc0JDc1NmU3MzY5Njc2ZTY1NjQyMDY5NmU3NCQ3NTZlNzM2OTY3NmU2NTY0 MjA2OTZlNzQkNzU2ZTczNjk2NzZlNjU2NDIwNjk2ZTc0JDY5NmU3NCQ3NTZlNzM2OTY3NmU2 NTY0MjA2MzY4NjE3MiQ3NTZlNzM2OTY3NmU2NTY0MjA2MzY4NjE3MihhcmcwLCBhcmcxLCBh cmcyLCBhcmczLCBhcmc0LCBhcmc1LCBhcmc2LCBhcmc3KTsgXAoJX19hc21fXyB2b2xhdGls ZSgiLnJlZmVyZW5jZSAiIFRSQUNFX1BPU1RHUkVTUUxfU1RBQklMSVRZKTsgXAp9IHdoaWxl ICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfQlVGRkVSX1JFQURfRE9ORV9FTkFCTEVE KCkgXAoJKHsgaW50IF9yID0gX19kdHJhY2VfaXNlbmFibGVkJHBvc3RncmVzcWwkYnVmZmVy X19yZWFkX19kb25lJHYxKCk7IFwKCQlfX2FzbV9fIHZvbGF0aWxlKCIiKTsgXAoJCV9yOyB9 KQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfQlVGRkVSX1JFQURfU1RBUlQoYXJnMCwgYXJn MSwgYXJnMiwgYXJnMywgYXJnNCwgYXJnNSwgYXJnNikgXApkbyB7IFwKCV9fYXNtX18gdm9s YXRpbGUoIi5yZWZlcmVuY2UgIiBUUkFDRV9QT1NUR1JFU1FMX1RZUEVERUZTKTsgXAoJX19k dHJhY2VfcHJvYmUkcG9zdGdyZXNxbCRidWZmZXJfX3JlYWRfX3N0YXJ0JHYxJDY5NmU3NCQ3 NTZlNzM2OTY3NmU2NTY0MjA2OTZlNzQkNzU2ZTczNjk2NzZlNjU2NDIwNjk2ZTc0JDc1NmU3 MzY5Njc2ZTY1NjQyMDY5NmU3NCQ3NTZlNzM2OTY3NmU2NTY0MjA2OTZlNzQkNjk2ZTc0JDc1 NmU3MzY5Njc2ZTY1NjQyMDYzNjg2MTcyKGFyZzAsIGFyZzEsIGFyZzIsIGFyZzMsIGFyZzQs IGFyZzUsIGFyZzYpOyBcCglfX2FzbV9fIHZvbGF0aWxlKCIucmVmZXJlbmNlICIgVFJBQ0Vf UE9TVEdSRVNRTF9TVEFCSUxJVFkpOyBcCn0gd2hpbGUgKDApCiNkZWZpbmUJVFJBQ0VfUE9T VEdSRVNRTF9CVUZGRVJfUkVBRF9TVEFSVF9FTkFCTEVEKCkgXAoJKHsgaW50IF9yID0gX19k dHJhY2VfaXNlbmFibGVkJHBvc3RncmVzcWwkYnVmZmVyX19yZWFkX19zdGFydCR2MSgpOyBc CgkJX19hc21fXyB2b2xhdGlsZSgiIik7IFwKCQlfcjsgfSkKI2RlZmluZQlUUkFDRV9QT1NU R1JFU1FMX0JVRkZFUl9TWU5DX0RPTkUoYXJnMCwgYXJnMSwgYXJnMikgXApkbyB7IFwKCV9f YXNtX18gdm9sYXRpbGUoIi5yZWZlcmVuY2UgIiBUUkFDRV9QT1NUR1JFU1FMX1RZUEVERUZT KTsgXAoJX19kdHJhY2VfcHJvYmUkcG9zdGdyZXNxbCRidWZmZXJfX3N5bmNfX2RvbmUkdjEk Njk2ZTc0JDY5NmU3NCQ2OTZlNzQoYXJnMCwgYXJnMSwgYXJnMik7IFwKCV9fYXNtX18gdm9s YXRpbGUoIi5yZWZlcmVuY2UgIiBUUkFDRV9QT1NUR1JFU1FMX1NUQUJJTElUWSk7IFwKfSB3 aGlsZSAoMCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX0JVRkZFUl9TWU5DX0RPTkVfRU5B QkxFRCgpIFwKCSh7IGludCBfciA9IF9fZHRyYWNlX2lzZW5hYmxlZCRwb3N0Z3Jlc3FsJGJ1 ZmZlcl9fc3luY19fZG9uZSR2MSgpOyBcCgkJX19hc21fXyB2b2xhdGlsZSgiIik7IFwKCQlf cjsgfSkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX0JVRkZFUl9TWU5DX1NUQVJUKGFyZzAs IGFyZzEpIFwKZG8geyBcCglfX2FzbV9fIHZvbGF0aWxlKCIucmVmZXJlbmNlICIgVFJBQ0Vf UE9TVEdSRVNRTF9UWVBFREVGUyk7IFwKCV9fZHRyYWNlX3Byb2JlJHBvc3RncmVzcWwkYnVm ZmVyX19zeW5jX19zdGFydCR2MSQ2OTZlNzQkNjk2ZTc0KGFyZzAsIGFyZzEpOyBcCglfX2Fz bV9fIHZvbGF0aWxlKCIucmVmZXJlbmNlICIgVFJBQ0VfUE9TVEdSRVNRTF9TVEFCSUxJVFkp OyBcCn0gd2hpbGUgKDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9CVUZGRVJfU1lOQ19T VEFSVF9FTkFCTEVEKCkgXAoJKHsgaW50IF9yID0gX19kdHJhY2VfaXNlbmFibGVkJHBvc3Rn cmVzcWwkYnVmZmVyX19zeW5jX19zdGFydCR2MSgpOyBcCgkJX19hc21fXyB2b2xhdGlsZSgi Iik7IFwKCQlfcjsgfSkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX0JVRkZFUl9TWU5DX1dS SVRURU4oYXJnMCkgXApkbyB7IFwKCV9fYXNtX18gdm9sYXRpbGUoIi5yZWZlcmVuY2UgIiBU UkFDRV9QT1NUR1JFU1FMX1RZUEVERUZTKTsgXAoJX19kdHJhY2VfcHJvYmUkcG9zdGdyZXNx bCRidWZmZXJfX3N5bmNfX3dyaXR0ZW4kdjEkNjk2ZTc0KGFyZzApOyBcCglfX2FzbV9fIHZv bGF0aWxlKCIucmVmZXJlbmNlICIgVFJBQ0VfUE9TVEdSRVNRTF9TVEFCSUxJVFkpOyBcCn0g d2hpbGUgKDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9CVUZGRVJfU1lOQ19XUklUVEVO X0VOQUJMRUQoKSBcCgkoeyBpbnQgX3IgPSBfX2R0cmFjZV9pc2VuYWJsZWQkcG9zdGdyZXNx bCRidWZmZXJfX3N5bmNfX3dyaXR0ZW4kdjEoKTsgXAoJCV9fYXNtX18gdm9sYXRpbGUoIiIp OyBcCgkJX3I7IH0pCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9CVUZGRVJfV1JJVEVfRElS VFlfRE9ORShhcmcwLCBhcmcxLCBhcmcyLCBhcmczLCBhcmc0KSBcCmRvIHsgXAoJX19hc21f XyB2b2xhdGlsZSgiLnJlZmVyZW5jZSAiIFRSQUNFX1BPU1RHUkVTUUxfVFlQRURFRlMpOyBc CglfX2R0cmFjZV9wcm9iZSRwb3N0Z3Jlc3FsJGJ1ZmZlcl9fd3JpdGVfX2RpcnR5X19kb25l JHYxJDY5NmU3NCQ3NTZlNzM2OTY3NmU2NTY0MjA2OTZlNzQkNzU2ZTczNjk2NzZlNjU2NDIw Njk2ZTc0JDc1NmU3MzY5Njc2ZTY1NjQyMDY5NmU3NCQ3NTZlNzM2OTY3NmU2NTY0MjA2OTZl NzQoYXJnMCwgYXJnMSwgYXJnMiwgYXJnMywgYXJnNCk7IFwKCV9fYXNtX18gdm9sYXRpbGUo Ii5yZWZlcmVuY2UgIiBUUkFDRV9QT1NUR1JFU1FMX1NUQUJJTElUWSk7IFwKfSB3aGlsZSAo MCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX0JVRkZFUl9XUklURV9ESVJUWV9ET05FX0VO QUJMRUQoKSBcCgkoeyBpbnQgX3IgPSBfX2R0cmFjZV9pc2VuYWJsZWQkcG9zdGdyZXNxbCRi dWZmZXJfX3dyaXRlX19kaXJ0eV9fZG9uZSR2MSgpOyBcCgkJX19hc21fXyB2b2xhdGlsZSgi Iik7IFwKCQlfcjsgfSkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX0JVRkZFUl9XUklURV9E SVJUWV9TVEFSVChhcmcwLCBhcmcxLCBhcmcyLCBhcmczLCBhcmc0KSBcCmRvIHsgXAoJX19h c21fXyB2b2xhdGlsZSgiLnJlZmVyZW5jZSAiIFRSQUNFX1BPU1RHUkVTUUxfVFlQRURFRlMp OyBcCglfX2R0cmFjZV9wcm9iZSRwb3N0Z3Jlc3FsJGJ1ZmZlcl9fd3JpdGVfX2RpcnR5X19z dGFydCR2MSQ2OTZlNzQkNzU2ZTczNjk2NzZlNjU2NDIwNjk2ZTc0JDc1NmU3MzY5Njc2ZTY1 NjQyMDY5NmU3NCQ3NTZlNzM2OTY3NmU2NTY0MjA2OTZlNzQkNzU2ZTczNjk2NzZlNjU2NDIw Njk2ZTc0KGFyZzAsIGFyZzEsIGFyZzIsIGFyZzMsIGFyZzQpOyBcCglfX2FzbV9fIHZvbGF0 aWxlKCIucmVmZXJlbmNlICIgVFJBQ0VfUE9TVEdSRVNRTF9TVEFCSUxJVFkpOyBcCn0gd2hp bGUgKDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9CVUZGRVJfV1JJVEVfRElSVFlfU1RB UlRfRU5BQkxFRCgpIFwKCSh7IGludCBfciA9IF9fZHRyYWNlX2lzZW5hYmxlZCRwb3N0Z3Jl c3FsJGJ1ZmZlcl9fd3JpdGVfX2RpcnR5X19zdGFydCR2MSgpOyBcCgkJX19hc21fXyB2b2xh dGlsZSgiIik7IFwKCQlfcjsgfSkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX0NIRUNLUE9J TlRfRE9ORShhcmcwLCBhcmcxLCBhcmcyLCBhcmczLCBhcmc0KSBcCmRvIHsgXAoJX19hc21f XyB2b2xhdGlsZSgiLnJlZmVyZW5jZSAiIFRSQUNFX1BPU1RHUkVTUUxfVFlQRURFRlMpOyBc CglfX2R0cmFjZV9wcm9iZSRwb3N0Z3Jlc3FsJGNoZWNrcG9pbnRfX2RvbmUkdjEkNjk2ZTc0 JDY5NmU3NCQ2OTZlNzQkNjk2ZTc0JDY5NmU3NChhcmcwLCBhcmcxLCBhcmcyLCBhcmczLCBh cmc0KTsgXAoJX19hc21fXyB2b2xhdGlsZSgiLnJlZmVyZW5jZSAiIFRSQUNFX1BPU1RHUkVT UUxfU1RBQklMSVRZKTsgXAp9IHdoaWxlICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxf Q0hFQ0tQT0lOVF9ET05FX0VOQUJMRUQoKSBcCgkoeyBpbnQgX3IgPSBfX2R0cmFjZV9pc2Vu YWJsZWQkcG9zdGdyZXNxbCRjaGVja3BvaW50X19kb25lJHYxKCk7IFwKCQlfX2FzbV9fIHZv bGF0aWxlKCIiKTsgXAoJCV9yOyB9KQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfQ0hFQ0tQ T0lOVF9TVEFSVChhcmcwKSBcCmRvIHsgXAoJX19hc21fXyB2b2xhdGlsZSgiLnJlZmVyZW5j ZSAiIFRSQUNFX1BPU1RHUkVTUUxfVFlQRURFRlMpOyBcCglfX2R0cmFjZV9wcm9iZSRwb3N0 Z3Jlc3FsJGNoZWNrcG9pbnRfX3N0YXJ0JHYxJDY5NmU3NChhcmcwKTsgXAoJX19hc21fXyB2 b2xhdGlsZSgiLnJlZmVyZW5jZSAiIFRSQUNFX1BPU1RHUkVTUUxfU1RBQklMSVRZKTsgXAp9 IHdoaWxlICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfQ0hFQ0tQT0lOVF9TVEFSVF9F TkFCTEVEKCkgXAoJKHsgaW50IF9yID0gX19kdHJhY2VfaXNlbmFibGVkJHBvc3RncmVzcWwk Y2hlY2twb2ludF9fc3RhcnQkdjEoKTsgXAoJCV9fYXNtX18gdm9sYXRpbGUoIiIpOyBcCgkJ X3I7IH0pCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9DTE9HX0NIRUNLUE9JTlRfRE9ORShh cmcwKSBcCmRvIHsgXAoJX19hc21fXyB2b2xhdGlsZSgiLnJlZmVyZW5jZSAiIFRSQUNFX1BP U1RHUkVTUUxfVFlQRURFRlMpOyBcCglfX2R0cmFjZV9wcm9iZSRwb3N0Z3Jlc3FsJGNsb2df X2NoZWNrcG9pbnRfX2RvbmUkdjEkNzU2ZTczNjk2NzZlNjU2NDIwNjM2ODYxNzIoYXJnMCk7 IFwKCV9fYXNtX18gdm9sYXRpbGUoIi5yZWZlcmVuY2UgIiBUUkFDRV9QT1NUR1JFU1FMX1NU QUJJTElUWSk7IFwKfSB3aGlsZSAoMCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX0NMT0df Q0hFQ0tQT0lOVF9ET05FX0VOQUJMRUQoKSBcCgkoeyBpbnQgX3IgPSBfX2R0cmFjZV9pc2Vu YWJsZWQkcG9zdGdyZXNxbCRjbG9nX19jaGVja3BvaW50X19kb25lJHYxKCk7IFwKCQlfX2Fz bV9fIHZvbGF0aWxlKCIiKTsgXAoJCV9yOyB9KQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxf Q0xPR19DSEVDS1BPSU5UX1NUQVJUKGFyZzApIFwKZG8geyBcCglfX2FzbV9fIHZvbGF0aWxl KCIucmVmZXJlbmNlICIgVFJBQ0VfUE9TVEdSRVNRTF9UWVBFREVGUyk7IFwKCV9fZHRyYWNl X3Byb2JlJHBvc3RncmVzcWwkY2xvZ19fY2hlY2twb2ludF9fc3RhcnQkdjEkNzU2ZTczNjk2 NzZlNjU2NDIwNjM2ODYxNzIoYXJnMCk7IFwKCV9fYXNtX18gdm9sYXRpbGUoIi5yZWZlcmVu Y2UgIiBUUkFDRV9QT1NUR1JFU1FMX1NUQUJJTElUWSk7IFwKfSB3aGlsZSAoMCkKI2RlZmlu ZQlUUkFDRV9QT1NUR1JFU1FMX0NMT0dfQ0hFQ0tQT0lOVF9TVEFSVF9FTkFCTEVEKCkgXAoJ KHsgaW50IF9yID0gX19kdHJhY2VfaXNlbmFibGVkJHBvc3RncmVzcWwkY2xvZ19fY2hlY2tw b2ludF9fc3RhcnQkdjEoKTsgXAoJCV9fYXNtX18gdm9sYXRpbGUoIiIpOyBcCgkJX3I7IH0p CiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9ERUFETE9DS19GT1VORCgpIFwKZG8geyBcCglf X2FzbV9fIHZvbGF0aWxlKCIucmVmZXJlbmNlICIgVFJBQ0VfUE9TVEdSRVNRTF9UWVBFREVG Uyk7IFwKCV9fZHRyYWNlX3Byb2JlJHBvc3RncmVzcWwkZGVhZGxvY2tfX2ZvdW5kJHYxKCk7 IFwKCV9fYXNtX18gdm9sYXRpbGUoIi5yZWZlcmVuY2UgIiBUUkFDRV9QT1NUR1JFU1FMX1NU QUJJTElUWSk7IFwKfSB3aGlsZSAoMCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX0RFQURM T0NLX0ZPVU5EX0VOQUJMRUQoKSBcCgkoeyBpbnQgX3IgPSBfX2R0cmFjZV9pc2VuYWJsZWQk cG9zdGdyZXNxbCRkZWFkbG9ja19fZm91bmQkdjEoKTsgXAoJCV9fYXNtX18gdm9sYXRpbGUo IiIpOyBcCgkJX3I7IH0pCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9MT0NLX1dBSVRfRE9O RShhcmcwLCBhcmcxLCBhcmcyLCBhcmczLCBhcmc0LCBhcmc1KSBcCmRvIHsgXAoJX19hc21f XyB2b2xhdGlsZSgiLnJlZmVyZW5jZSAiIFRSQUNFX1BPU1RHUkVTUUxfVFlQRURFRlMpOyBc CglfX2R0cmFjZV9wcm9iZSRwb3N0Z3Jlc3FsJGxvY2tfX3dhaXRfX2RvbmUkdjEkNzU2ZTcz Njk2NzZlNjU2NDIwNjk2ZTc0JDc1NmU3MzY5Njc2ZTY1NjQyMDY5NmU3NCQ3NTZlNzM2OTY3 NmU2NTY0MjA2OTZlNzQkNzU2ZTczNjk2NzZlNjU2NDIwNjk2ZTc0JDc1NmU3MzY5Njc2ZTY1 NjQyMDY5NmU3NCQ2OTZlNzQoYXJnMCwgYXJnMSwgYXJnMiwgYXJnMywgYXJnNCwgYXJnNSk7 IFwKCV9fYXNtX18gdm9sYXRpbGUoIi5yZWZlcmVuY2UgIiBUUkFDRV9QT1NUR1JFU1FMX1NU QUJJTElUWSk7IFwKfSB3aGlsZSAoMCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX0xPQ0tf V0FJVF9ET05FX0VOQUJMRUQoKSBcCgkoeyBpbnQgX3IgPSBfX2R0cmFjZV9pc2VuYWJsZWQk cG9zdGdyZXNxbCRsb2NrX193YWl0X19kb25lJHYxKCk7IFwKCQlfX2FzbV9fIHZvbGF0aWxl KCIiKTsgXAoJCV9yOyB9KQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfTE9DS19XQUlUX1NU QVJUKGFyZzAsIGFyZzEsIGFyZzIsIGFyZzMsIGFyZzQsIGFyZzUpIFwKZG8geyBcCglfX2Fz bV9fIHZvbGF0aWxlKCIucmVmZXJlbmNlICIgVFJBQ0VfUE9TVEdSRVNRTF9UWVBFREVGUyk7 IFwKCV9fZHRyYWNlX3Byb2JlJHBvc3RncmVzcWwkbG9ja19fd2FpdF9fc3RhcnQkdjEkNzU2 ZTczNjk2NzZlNjU2NDIwNjk2ZTc0JDc1NmU3MzY5Njc2ZTY1NjQyMDY5NmU3NCQ3NTZlNzM2 OTY3NmU2NTY0MjA2OTZlNzQkNzU2ZTczNjk2NzZlNjU2NDIwNjk2ZTc0JDc1NmU3MzY5Njc2 ZTY1NjQyMDY5NmU3NCQ2OTZlNzQoYXJnMCwgYXJnMSwgYXJnMiwgYXJnMywgYXJnNCwgYXJn NSk7IFwKCV9fYXNtX18gdm9sYXRpbGUoIi5yZWZlcmVuY2UgIiBUUkFDRV9QT1NUR1JFU1FM X1NUQUJJTElUWSk7IFwKfSB3aGlsZSAoMCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX0xP Q0tfV0FJVF9TVEFSVF9FTkFCTEVEKCkgXAoJKHsgaW50IF9yID0gX19kdHJhY2VfaXNlbmFi bGVkJHBvc3RncmVzcWwkbG9ja19fd2FpdF9fc3RhcnQkdjEoKTsgXAoJCV9fYXNtX18gdm9s YXRpbGUoIiIpOyBcCgkJX3I7IH0pCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9MV0xPQ0tf QUNRVUlSRShhcmcwLCBhcmcxKSBcCmRvIHsgXAoJX19hc21fXyB2b2xhdGlsZSgiLnJlZmVy ZW5jZSAiIFRSQUNFX1BPU1RHUkVTUUxfVFlQRURFRlMpOyBcCglfX2R0cmFjZV9wcm9iZSRw b3N0Z3Jlc3FsJGx3bG9ja19fYWNxdWlyZSR2MSQ2MzY4NjE3MjIwMmEkNjk2ZTc0KGFyZzAs IGFyZzEpOyBcCglfX2FzbV9fIHZvbGF0aWxlKCIucmVmZXJlbmNlICIgVFJBQ0VfUE9TVEdS RVNRTF9TVEFCSUxJVFkpOyBcCn0gd2hpbGUgKDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNR TF9MV0xPQ0tfQUNRVUlSRV9FTkFCTEVEKCkgXAoJKHsgaW50IF9yID0gX19kdHJhY2VfaXNl bmFibGVkJHBvc3RncmVzcWwkbHdsb2NrX19hY3F1aXJlJHYxKCk7IFwKCQlfX2FzbV9fIHZv bGF0aWxlKCIiKTsgXAoJCV9yOyB9KQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfTFdMT0NL X0FDUVVJUkVfT1JfV0FJVChhcmcwLCBhcmcxKSBcCmRvIHsgXAoJX19hc21fXyB2b2xhdGls ZSgiLnJlZmVyZW5jZSAiIFRSQUNFX1BPU1RHUkVTUUxfVFlQRURFRlMpOyBcCglfX2R0cmFj ZV9wcm9iZSRwb3N0Z3Jlc3FsJGx3bG9ja19fYWNxdWlyZV9fb3JfX3dhaXQkdjEkNjM2ODYx NzIyMDJhJDY5NmU3NChhcmcwLCBhcmcxKTsgXAoJX19hc21fXyB2b2xhdGlsZSgiLnJlZmVy ZW5jZSAiIFRSQUNFX1BPU1RHUkVTUUxfU1RBQklMSVRZKTsgXAp9IHdoaWxlICgwKQojZGVm aW5lCVRSQUNFX1BPU1RHUkVTUUxfTFdMT0NLX0FDUVVJUkVfT1JfV0FJVF9FTkFCTEVEKCkg XAoJKHsgaW50IF9yID0gX19kdHJhY2VfaXNlbmFibGVkJHBvc3RncmVzcWwkbHdsb2NrX19h Y3F1aXJlX19vcl9fd2FpdCR2MSgpOyBcCgkJX19hc21fXyB2b2xhdGlsZSgiIik7IFwKCQlf cjsgfSkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX0xXTE9DS19BQ1FVSVJFX09SX1dBSVRf RkFJTChhcmcwLCBhcmcxKSBcCmRvIHsgXAoJX19hc21fXyB2b2xhdGlsZSgiLnJlZmVyZW5j ZSAiIFRSQUNFX1BPU1RHUkVTUUxfVFlQRURFRlMpOyBcCglfX2R0cmFjZV9wcm9iZSRwb3N0 Z3Jlc3FsJGx3bG9ja19fYWNxdWlyZV9fb3JfX3dhaXRfX2ZhaWwkdjEkNjM2ODYxNzIyMDJh JDY5NmU3NChhcmcwLCBhcmcxKTsgXAoJX19hc21fXyB2b2xhdGlsZSgiLnJlZmVyZW5jZSAi IFRSQUNFX1BPU1RHUkVTUUxfU1RBQklMSVRZKTsgXAp9IHdoaWxlICgwKQojZGVmaW5lCVRS QUNFX1BPU1RHUkVTUUxfTFdMT0NLX0FDUVVJUkVfT1JfV0FJVF9GQUlMX0VOQUJMRUQoKSBc CgkoeyBpbnQgX3IgPSBfX2R0cmFjZV9pc2VuYWJsZWQkcG9zdGdyZXNxbCRsd2xvY2tfX2Fj cXVpcmVfX29yX193YWl0X19mYWlsJHYxKCk7IFwKCQlfX2FzbV9fIHZvbGF0aWxlKCIiKTsg XAoJCV9yOyB9KQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfTFdMT0NLX0NPTkRBQ1FVSVJF KGFyZzAsIGFyZzEpIFwKZG8geyBcCglfX2FzbV9fIHZvbGF0aWxlKCIucmVmZXJlbmNlICIg VFJBQ0VfUE9TVEdSRVNRTF9UWVBFREVGUyk7IFwKCV9fZHRyYWNlX3Byb2JlJHBvc3RncmVz cWwkbHdsb2NrX19jb25kYWNxdWlyZSR2MSQ2MzY4NjE3MjIwMmEkNjk2ZTc0KGFyZzAsIGFy ZzEpOyBcCglfX2FzbV9fIHZvbGF0aWxlKCIucmVmZXJlbmNlICIgVFJBQ0VfUE9TVEdSRVNR TF9TVEFCSUxJVFkpOyBcCn0gd2hpbGUgKDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9M V0xPQ0tfQ09OREFDUVVJUkVfRU5BQkxFRCgpIFwKCSh7IGludCBfciA9IF9fZHRyYWNlX2lz ZW5hYmxlZCRwb3N0Z3Jlc3FsJGx3bG9ja19fY29uZGFjcXVpcmUkdjEoKTsgXAoJCV9fYXNt X18gdm9sYXRpbGUoIiIpOyBcCgkJX3I7IH0pCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9M V0xPQ0tfQ09OREFDUVVJUkVfRkFJTChhcmcwLCBhcmcxKSBcCmRvIHsgXAoJX19hc21fXyB2 b2xhdGlsZSgiLnJlZmVyZW5jZSAiIFRSQUNFX1BPU1RHUkVTUUxfVFlQRURFRlMpOyBcCglf X2R0cmFjZV9wcm9iZSRwb3N0Z3Jlc3FsJGx3bG9ja19fY29uZGFjcXVpcmVfX2ZhaWwkdjEk NjM2ODYxNzIyMDJhJDY5NmU3NChhcmcwLCBhcmcxKTsgXAoJX19hc21fXyB2b2xhdGlsZSgi LnJlZmVyZW5jZSAiIFRSQUNFX1BPU1RHUkVTUUxfU1RBQklMSVRZKTsgXAp9IHdoaWxlICgw KQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfTFdMT0NLX0NPTkRBQ1FVSVJFX0ZBSUxfRU5B QkxFRCgpIFwKCSh7IGludCBfciA9IF9fZHRyYWNlX2lzZW5hYmxlZCRwb3N0Z3Jlc3FsJGx3 bG9ja19fY29uZGFjcXVpcmVfX2ZhaWwkdjEoKTsgXAoJCV9fYXNtX18gdm9sYXRpbGUoIiIp OyBcCgkJX3I7IH0pCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9MV0xPQ0tfUkVMRUFTRShh cmcwKSBcCmRvIHsgXAoJX19hc21fXyB2b2xhdGlsZSgiLnJlZmVyZW5jZSAiIFRSQUNFX1BP U1RHUkVTUUxfVFlQRURFRlMpOyBcCglfX2R0cmFjZV9wcm9iZSRwb3N0Z3Jlc3FsJGx3bG9j a19fcmVsZWFzZSR2MSQ2MzY4NjE3MjIwMmEoYXJnMCk7IFwKCV9fYXNtX18gdm9sYXRpbGUo Ii5yZWZlcmVuY2UgIiBUUkFDRV9QT1NUR1JFU1FMX1NUQUJJTElUWSk7IFwKfSB3aGlsZSAo MCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX0xXTE9DS19SRUxFQVNFX0VOQUJMRUQoKSBc CgkoeyBpbnQgX3IgPSBfX2R0cmFjZV9pc2VuYWJsZWQkcG9zdGdyZXNxbCRsd2xvY2tfX3Jl bGVhc2UkdjEoKTsgXAoJCV9fYXNtX18gdm9sYXRpbGUoIiIpOyBcCgkJX3I7IH0pCiNkZWZp bmUJVFJBQ0VfUE9TVEdSRVNRTF9MV0xPQ0tfV0FJVF9ET05FKGFyZzAsIGFyZzEpIFwKZG8g eyBcCglfX2FzbV9fIHZvbGF0aWxlKCIucmVmZXJlbmNlICIgVFJBQ0VfUE9TVEdSRVNRTF9U WVBFREVGUyk7IFwKCV9fZHRyYWNlX3Byb2JlJHBvc3RncmVzcWwkbHdsb2NrX193YWl0X19k b25lJHYxJDYzNjg2MTcyMjAyYSQ2OTZlNzQoYXJnMCwgYXJnMSk7IFwKCV9fYXNtX18gdm9s YXRpbGUoIi5yZWZlcmVuY2UgIiBUUkFDRV9QT1NUR1JFU1FMX1NUQUJJTElUWSk7IFwKfSB3 aGlsZSAoMCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX0xXTE9DS19XQUlUX0RPTkVfRU5B QkxFRCgpIFwKCSh7IGludCBfciA9IF9fZHRyYWNlX2lzZW5hYmxlZCRwb3N0Z3Jlc3FsJGx3 bG9ja19fd2FpdF9fZG9uZSR2MSgpOyBcCgkJX19hc21fXyB2b2xhdGlsZSgiIik7IFwKCQlf cjsgfSkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX0xXTE9DS19XQUlUX1NUQVJUKGFyZzAs IGFyZzEpIFwKZG8geyBcCglfX2FzbV9fIHZvbGF0aWxlKCIucmVmZXJlbmNlICIgVFJBQ0Vf UE9TVEdSRVNRTF9UWVBFREVGUyk7IFwKCV9fZHRyYWNlX3Byb2JlJHBvc3RncmVzcWwkbHds b2NrX193YWl0X19zdGFydCR2MSQ2MzY4NjE3MjIwMmEkNjk2ZTc0KGFyZzAsIGFyZzEpOyBc CglfX2FzbV9fIHZvbGF0aWxlKCIucmVmZXJlbmNlICIgVFJBQ0VfUE9TVEdSRVNRTF9TVEFC SUxJVFkpOyBcCn0gd2hpbGUgKDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9MV0xPQ0tf V0FJVF9TVEFSVF9FTkFCTEVEKCkgXAoJKHsgaW50IF9yID0gX19kdHJhY2VfaXNlbmFibGVk JHBvc3RncmVzcWwkbHdsb2NrX193YWl0X19zdGFydCR2MSgpOyBcCgkJX19hc21fXyB2b2xh dGlsZSgiIik7IFwKCQlfcjsgfSkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX01VTFRJWEFD VF9DSEVDS1BPSU5UX0RPTkUoYXJnMCkgXApkbyB7IFwKCV9fYXNtX18gdm9sYXRpbGUoIi5y ZWZlcmVuY2UgIiBUUkFDRV9QT1NUR1JFU1FMX1RZUEVERUZTKTsgXAoJX19kdHJhY2VfcHJv YmUkcG9zdGdyZXNxbCRtdWx0aXhhY3RfX2NoZWNrcG9pbnRfX2RvbmUkdjEkNzU2ZTczNjk2 NzZlNjU2NDIwNjM2ODYxNzIoYXJnMCk7IFwKCV9fYXNtX18gdm9sYXRpbGUoIi5yZWZlcmVu Y2UgIiBUUkFDRV9QT1NUR1JFU1FMX1NUQUJJTElUWSk7IFwKfSB3aGlsZSAoMCkKI2RlZmlu ZQlUUkFDRV9QT1NUR1JFU1FMX01VTFRJWEFDVF9DSEVDS1BPSU5UX0RPTkVfRU5BQkxFRCgp IFwKCSh7IGludCBfciA9IF9fZHRyYWNlX2lzZW5hYmxlZCRwb3N0Z3Jlc3FsJG11bHRpeGFj dF9fY2hlY2twb2ludF9fZG9uZSR2MSgpOyBcCgkJX19hc21fXyB2b2xhdGlsZSgiIik7IFwK CQlfcjsgfSkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX01VTFRJWEFDVF9DSEVDS1BPSU5U X1NUQVJUKGFyZzApIFwKZG8geyBcCglfX2FzbV9fIHZvbGF0aWxlKCIucmVmZXJlbmNlICIg VFJBQ0VfUE9TVEdSRVNRTF9UWVBFREVGUyk7IFwKCV9fZHRyYWNlX3Byb2JlJHBvc3RncmVz cWwkbXVsdGl4YWN0X19jaGVja3BvaW50X19zdGFydCR2MSQ3NTZlNzM2OTY3NmU2NTY0MjA2 MzY4NjE3MihhcmcwKTsgXAoJX19hc21fXyB2b2xhdGlsZSgiLnJlZmVyZW5jZSAiIFRSQUNF X1BPU1RHUkVTUUxfU1RBQklMSVRZKTsgXAp9IHdoaWxlICgwKQojZGVmaW5lCVRSQUNFX1BP U1RHUkVTUUxfTVVMVElYQUNUX0NIRUNLUE9JTlRfU1RBUlRfRU5BQkxFRCgpIFwKCSh7IGlu dCBfciA9IF9fZHRyYWNlX2lzZW5hYmxlZCRwb3N0Z3Jlc3FsJG11bHRpeGFjdF9fY2hlY2tw b2ludF9fc3RhcnQkdjEoKTsgXAoJCV9fYXNtX18gdm9sYXRpbGUoIiIpOyBcCgkJX3I7IH0p CiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9RVUVSWV9ET05FKGFyZzApIFwKZG8geyBcCglf X2FzbV9fIHZvbGF0aWxlKCIucmVmZXJlbmNlICIgVFJBQ0VfUE9TVEdSRVNRTF9UWVBFREVG Uyk7IFwKCV9fZHRyYWNlX3Byb2JlJHBvc3RncmVzcWwkcXVlcnlfX2RvbmUkdjEkNjM2ODYx NzIyMDJhKGFyZzApOyBcCglfX2FzbV9fIHZvbGF0aWxlKCIucmVmZXJlbmNlICIgVFJBQ0Vf UE9TVEdSRVNRTF9TVEFCSUxJVFkpOyBcCn0gd2hpbGUgKDApCiNkZWZpbmUJVFJBQ0VfUE9T VEdSRVNRTF9RVUVSWV9ET05FX0VOQUJMRUQoKSBcCgkoeyBpbnQgX3IgPSBfX2R0cmFjZV9p c2VuYWJsZWQkcG9zdGdyZXNxbCRxdWVyeV9fZG9uZSR2MSgpOyBcCgkJX19hc21fXyB2b2xh dGlsZSgiIik7IFwKCQlfcjsgfSkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX1FVRVJZX0VY RUNVVEVfRE9ORSgpIFwKZG8geyBcCglfX2FzbV9fIHZvbGF0aWxlKCIucmVmZXJlbmNlICIg VFJBQ0VfUE9TVEdSRVNRTF9UWVBFREVGUyk7IFwKCV9fZHRyYWNlX3Byb2JlJHBvc3RncmVz cWwkcXVlcnlfX2V4ZWN1dGVfX2RvbmUkdjEoKTsgXAoJX19hc21fXyB2b2xhdGlsZSgiLnJl ZmVyZW5jZSAiIFRSQUNFX1BPU1RHUkVTUUxfU1RBQklMSVRZKTsgXAp9IHdoaWxlICgwKQoj ZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfUVVFUllfRVhFQ1VURV9ET05FX0VOQUJMRUQoKSBc CgkoeyBpbnQgX3IgPSBfX2R0cmFjZV9pc2VuYWJsZWQkcG9zdGdyZXNxbCRxdWVyeV9fZXhl Y3V0ZV9fZG9uZSR2MSgpOyBcCgkJX19hc21fXyB2b2xhdGlsZSgiIik7IFwKCQlfcjsgfSkK I2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX1FVRVJZX0VYRUNVVEVfU1RBUlQoKSBcCmRvIHsg XAoJX19hc21fXyB2b2xhdGlsZSgiLnJlZmVyZW5jZSAiIFRSQUNFX1BPU1RHUkVTUUxfVFlQ RURFRlMpOyBcCglfX2R0cmFjZV9wcm9iZSRwb3N0Z3Jlc3FsJHF1ZXJ5X19leGVjdXRlX19z dGFydCR2MSgpOyBcCglfX2FzbV9fIHZvbGF0aWxlKCIucmVmZXJlbmNlICIgVFJBQ0VfUE9T VEdSRVNRTF9TVEFCSUxJVFkpOyBcCn0gd2hpbGUgKDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdS RVNRTF9RVUVSWV9FWEVDVVRFX1NUQVJUX0VOQUJMRUQoKSBcCgkoeyBpbnQgX3IgPSBfX2R0 cmFjZV9pc2VuYWJsZWQkcG9zdGdyZXNxbCRxdWVyeV9fZXhlY3V0ZV9fc3RhcnQkdjEoKTsg XAoJCV9fYXNtX18gdm9sYXRpbGUoIiIpOyBcCgkJX3I7IH0pCiNkZWZpbmUJVFJBQ0VfUE9T VEdSRVNRTF9RVUVSWV9QQVJTRV9ET05FKGFyZzApIFwKZG8geyBcCglfX2FzbV9fIHZvbGF0 aWxlKCIucmVmZXJlbmNlICIgVFJBQ0VfUE9TVEdSRVNRTF9UWVBFREVGUyk7IFwKCV9fZHRy YWNlX3Byb2JlJHBvc3RncmVzcWwkcXVlcnlfX3BhcnNlX19kb25lJHYxJDYzNjg2MTcyMjAy YShhcmcwKTsgXAoJX19hc21fXyB2b2xhdGlsZSgiLnJlZmVyZW5jZSAiIFRSQUNFX1BPU1RH UkVTUUxfU1RBQklMSVRZKTsgXAp9IHdoaWxlICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVT UUxfUVVFUllfUEFSU0VfRE9ORV9FTkFCTEVEKCkgXAoJKHsgaW50IF9yID0gX19kdHJhY2Vf aXNlbmFibGVkJHBvc3RncmVzcWwkcXVlcnlfX3BhcnNlX19kb25lJHYxKCk7IFwKCQlfX2Fz bV9fIHZvbGF0aWxlKCIiKTsgXAoJCV9yOyB9KQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxf UVVFUllfUEFSU0VfU1RBUlQoYXJnMCkgXApkbyB7IFwKCV9fYXNtX18gdm9sYXRpbGUoIi5y ZWZlcmVuY2UgIiBUUkFDRV9QT1NUR1JFU1FMX1RZUEVERUZTKTsgXAoJX19kdHJhY2VfcHJv YmUkcG9zdGdyZXNxbCRxdWVyeV9fcGFyc2VfX3N0YXJ0JHYxJDYzNjg2MTcyMjAyYShhcmcw KTsgXAoJX19hc21fXyB2b2xhdGlsZSgiLnJlZmVyZW5jZSAiIFRSQUNFX1BPU1RHUkVTUUxf U1RBQklMSVRZKTsgXAp9IHdoaWxlICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfUVVF UllfUEFSU0VfU1RBUlRfRU5BQkxFRCgpIFwKCSh7IGludCBfciA9IF9fZHRyYWNlX2lzZW5h YmxlZCRwb3N0Z3Jlc3FsJHF1ZXJ5X19wYXJzZV9fc3RhcnQkdjEoKTsgXAoJCV9fYXNtX18g dm9sYXRpbGUoIiIpOyBcCgkJX3I7IH0pCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9RVUVS WV9QTEFOX0RPTkUoKSBcCmRvIHsgXAoJX19hc21fXyB2b2xhdGlsZSgiLnJlZmVyZW5jZSAi IFRSQUNFX1BPU1RHUkVTUUxfVFlQRURFRlMpOyBcCglfX2R0cmFjZV9wcm9iZSRwb3N0Z3Jl c3FsJHF1ZXJ5X19wbGFuX19kb25lJHYxKCk7IFwKCV9fYXNtX18gdm9sYXRpbGUoIi5yZWZl cmVuY2UgIiBUUkFDRV9QT1NUR1JFU1FMX1NUQUJJTElUWSk7IFwKfSB3aGlsZSAoMCkKI2Rl ZmluZQlUUkFDRV9QT1NUR1JFU1FMX1FVRVJZX1BMQU5fRE9ORV9FTkFCTEVEKCkgXAoJKHsg aW50IF9yID0gX19kdHJhY2VfaXNlbmFibGVkJHBvc3RncmVzcWwkcXVlcnlfX3BsYW5fX2Rv bmUkdjEoKTsgXAoJCV9fYXNtX18gdm9sYXRpbGUoIiIpOyBcCgkJX3I7IH0pCiNkZWZpbmUJ VFJBQ0VfUE9TVEdSRVNRTF9RVUVSWV9QTEFOX1NUQVJUKCkgXApkbyB7IFwKCV9fYXNtX18g dm9sYXRpbGUoIi5yZWZlcmVuY2UgIiBUUkFDRV9QT1NUR1JFU1FMX1RZUEVERUZTKTsgXAoJ X19kdHJhY2VfcHJvYmUkcG9zdGdyZXNxbCRxdWVyeV9fcGxhbl9fc3RhcnQkdjEoKTsgXAoJ X19hc21fXyB2b2xhdGlsZSgiLnJlZmVyZW5jZSAiIFRSQUNFX1BPU1RHUkVTUUxfU1RBQklM SVRZKTsgXAp9IHdoaWxlICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfUVVFUllfUExB Tl9TVEFSVF9FTkFCTEVEKCkgXAoJKHsgaW50IF9yID0gX19kdHJhY2VfaXNlbmFibGVkJHBv c3RncmVzcWwkcXVlcnlfX3BsYW5fX3N0YXJ0JHYxKCk7IFwKCQlfX2FzbV9fIHZvbGF0aWxl KCIiKTsgXAoJCV9yOyB9KQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfUVVFUllfUkVXUklU RV9ET05FKGFyZzApIFwKZG8geyBcCglfX2FzbV9fIHZvbGF0aWxlKCIucmVmZXJlbmNlICIg VFJBQ0VfUE9TVEdSRVNRTF9UWVBFREVGUyk7IFwKCV9fZHRyYWNlX3Byb2JlJHBvc3RncmVz cWwkcXVlcnlfX3Jld3JpdGVfX2RvbmUkdjEkNjM2ODYxNzIyMDJhKGFyZzApOyBcCglfX2Fz bV9fIHZvbGF0aWxlKCIucmVmZXJlbmNlICIgVFJBQ0VfUE9TVEdSRVNRTF9TVEFCSUxJVFkp OyBcCn0gd2hpbGUgKDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9RVUVSWV9SRVdSSVRF X0RPTkVfRU5BQkxFRCgpIFwKCSh7IGludCBfciA9IF9fZHRyYWNlX2lzZW5hYmxlZCRwb3N0 Z3Jlc3FsJHF1ZXJ5X19yZXdyaXRlX19kb25lJHYxKCk7IFwKCQlfX2FzbV9fIHZvbGF0aWxl KCIiKTsgXAoJCV9yOyB9KQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfUVVFUllfUkVXUklU RV9TVEFSVChhcmcwKSBcCmRvIHsgXAoJX19hc21fXyB2b2xhdGlsZSgiLnJlZmVyZW5jZSAi IFRSQUNFX1BPU1RHUkVTUUxfVFlQRURFRlMpOyBcCglfX2R0cmFjZV9wcm9iZSRwb3N0Z3Jl c3FsJHF1ZXJ5X19yZXdyaXRlX19zdGFydCR2MSQ2MzY4NjE3MjIwMmEoYXJnMCk7IFwKCV9f YXNtX18gdm9sYXRpbGUoIi5yZWZlcmVuY2UgIiBUUkFDRV9QT1NUR1JFU1FMX1NUQUJJTElU WSk7IFwKfSB3aGlsZSAoMCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX1FVRVJZX1JFV1JJ VEVfU1RBUlRfRU5BQkxFRCgpIFwKCSh7IGludCBfciA9IF9fZHRyYWNlX2lzZW5hYmxlZCRw b3N0Z3Jlc3FsJHF1ZXJ5X19yZXdyaXRlX19zdGFydCR2MSgpOyBcCgkJX19hc21fXyB2b2xh dGlsZSgiIik7IFwKCQlfcjsgfSkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX1FVRVJZX1NU QVJUKGFyZzApIFwKZG8geyBcCglfX2FzbV9fIHZvbGF0aWxlKCIucmVmZXJlbmNlICIgVFJB Q0VfUE9TVEdSRVNRTF9UWVBFREVGUyk7IFwKCV9fZHRyYWNlX3Byb2JlJHBvc3RncmVzcWwk cXVlcnlfX3N0YXJ0JHYxJDYzNjg2MTcyMjAyYShhcmcwKTsgXAoJX19hc21fXyB2b2xhdGls ZSgiLnJlZmVyZW5jZSAiIFRSQUNFX1BPU1RHUkVTUUxfU1RBQklMSVRZKTsgXAp9IHdoaWxl ICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfUVVFUllfU1RBUlRfRU5BQkxFRCgpIFwK CSh7IGludCBfciA9IF9fZHRyYWNlX2lzZW5hYmxlZCRwb3N0Z3Jlc3FsJHF1ZXJ5X19zdGFy dCR2MSgpOyBcCgkJX19hc21fXyB2b2xhdGlsZSgiIik7IFwKCQlfcjsgfSkKI2RlZmluZQlU UkFDRV9QT1NUR1JFU1FMX1NNR1JfTURfUkVBRF9ET05FKGFyZzAsIGFyZzEsIGFyZzIsIGFy ZzMsIGFyZzQsIGFyZzUsIGFyZzYsIGFyZzcpIFwKZG8geyBcCglfX2FzbV9fIHZvbGF0aWxl KCIucmVmZXJlbmNlICIgVFJBQ0VfUE9TVEdSRVNRTF9UWVBFREVGUyk7IFwKCV9fZHRyYWNl X3Byb2JlJHBvc3RncmVzcWwkc21ncl9fbWRfX3JlYWRfX2RvbmUkdjEkNjk2ZTc0JDc1NmU3 MzY5Njc2ZTY1NjQyMDY5NmU3NCQ3NTZlNzM2OTY3NmU2NTY0MjA2OTZlNzQkNzU2ZTczNjk2 NzZlNjU2NDIwNjk2ZTc0JDc1NmU3MzY5Njc2ZTY1NjQyMDY5NmU3NCQ2OTZlNzQkNjk2ZTc0 JDY5NmU3NChhcmcwLCBhcmcxLCBhcmcyLCBhcmczLCBhcmc0LCBhcmc1LCBhcmc2LCBhcmc3 KTsgXAoJX19hc21fXyB2b2xhdGlsZSgiLnJlZmVyZW5jZSAiIFRSQUNFX1BPU1RHUkVTUUxf U1RBQklMSVRZKTsgXAp9IHdoaWxlICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfU01H Ul9NRF9SRUFEX0RPTkVfRU5BQkxFRCgpIFwKCSh7IGludCBfciA9IF9fZHRyYWNlX2lzZW5h YmxlZCRwb3N0Z3Jlc3FsJHNtZ3JfX21kX19yZWFkX19kb25lJHYxKCk7IFwKCQlfX2FzbV9f IHZvbGF0aWxlKCIiKTsgXAoJCV9yOyB9KQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfU01H Ul9NRF9SRUFEX1NUQVJUKGFyZzAsIGFyZzEsIGFyZzIsIGFyZzMsIGFyZzQsIGFyZzUpIFwK ZG8geyBcCglfX2FzbV9fIHZvbGF0aWxlKCIucmVmZXJlbmNlICIgVFJBQ0VfUE9TVEdSRVNR TF9UWVBFREVGUyk7IFwKCV9fZHRyYWNlX3Byb2JlJHBvc3RncmVzcWwkc21ncl9fbWRfX3Jl YWRfX3N0YXJ0JHYxJDY5NmU3NCQ3NTZlNzM2OTY3NmU2NTY0MjA2OTZlNzQkNzU2ZTczNjk2 NzZlNjU2NDIwNjk2ZTc0JDc1NmU3MzY5Njc2ZTY1NjQyMDY5NmU3NCQ3NTZlNzM2OTY3NmU2 NTY0MjA2OTZlNzQkNjk2ZTc0KGFyZzAsIGFyZzEsIGFyZzIsIGFyZzMsIGFyZzQsIGFyZzUp OyBcCglfX2FzbV9fIHZvbGF0aWxlKCIucmVmZXJlbmNlICIgVFJBQ0VfUE9TVEdSRVNRTF9T VEFCSUxJVFkpOyBcCn0gd2hpbGUgKDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9TTUdS X01EX1JFQURfU1RBUlRfRU5BQkxFRCgpIFwKCSh7IGludCBfciA9IF9fZHRyYWNlX2lzZW5h YmxlZCRwb3N0Z3Jlc3FsJHNtZ3JfX21kX19yZWFkX19zdGFydCR2MSgpOyBcCgkJX19hc21f XyB2b2xhdGlsZSgiIik7IFwKCQlfcjsgfSkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX1NN R1JfTURfV1JJVEVfRE9ORShhcmcwLCBhcmcxLCBhcmcyLCBhcmczLCBhcmc0LCBhcmc1LCBh cmc2LCBhcmc3KSBcCmRvIHsgXAoJX19hc21fXyB2b2xhdGlsZSgiLnJlZmVyZW5jZSAiIFRS QUNFX1BPU1RHUkVTUUxfVFlQRURFRlMpOyBcCglfX2R0cmFjZV9wcm9iZSRwb3N0Z3Jlc3Fs JHNtZ3JfX21kX193cml0ZV9fZG9uZSR2MSQ2OTZlNzQkNzU2ZTczNjk2NzZlNjU2NDIwNjk2 ZTc0JDc1NmU3MzY5Njc2ZTY1NjQyMDY5NmU3NCQ3NTZlNzM2OTY3NmU2NTY0MjA2OTZlNzQk NzU2ZTczNjk2NzZlNjU2NDIwNjk2ZTc0JDY5NmU3NCQ2OTZlNzQkNjk2ZTc0KGFyZzAsIGFy ZzEsIGFyZzIsIGFyZzMsIGFyZzQsIGFyZzUsIGFyZzYsIGFyZzcpOyBcCglfX2FzbV9fIHZv bGF0aWxlKCIucmVmZXJlbmNlICIgVFJBQ0VfUE9TVEdSRVNRTF9TVEFCSUxJVFkpOyBcCn0g d2hpbGUgKDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9TTUdSX01EX1dSSVRFX0RPTkVf RU5BQkxFRCgpIFwKCSh7IGludCBfciA9IF9fZHRyYWNlX2lzZW5hYmxlZCRwb3N0Z3Jlc3Fs JHNtZ3JfX21kX193cml0ZV9fZG9uZSR2MSgpOyBcCgkJX19hc21fXyB2b2xhdGlsZSgiIik7 IFwKCQlfcjsgfSkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX1NNR1JfTURfV1JJVEVfU1RB UlQoYXJnMCwgYXJnMSwgYXJnMiwgYXJnMywgYXJnNCwgYXJnNSkgXApkbyB7IFwKCV9fYXNt X18gdm9sYXRpbGUoIi5yZWZlcmVuY2UgIiBUUkFDRV9QT1NUR1JFU1FMX1RZUEVERUZTKTsg XAoJX19kdHJhY2VfcHJvYmUkcG9zdGdyZXNxbCRzbWdyX19tZF9fd3JpdGVfX3N0YXJ0JHYx JDY5NmU3NCQ3NTZlNzM2OTY3NmU2NTY0MjA2OTZlNzQkNzU2ZTczNjk2NzZlNjU2NDIwNjk2 ZTc0JDc1NmU3MzY5Njc2ZTY1NjQyMDY5NmU3NCQ3NTZlNzM2OTY3NmU2NTY0MjA2OTZlNzQk Njk2ZTc0KGFyZzAsIGFyZzEsIGFyZzIsIGFyZzMsIGFyZzQsIGFyZzUpOyBcCglfX2FzbV9f IHZvbGF0aWxlKCIucmVmZXJlbmNlICIgVFJBQ0VfUE9TVEdSRVNRTF9TVEFCSUxJVFkpOyBc Cn0gd2hpbGUgKDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9TTUdSX01EX1dSSVRFX1NU QVJUX0VOQUJMRUQoKSBcCgkoeyBpbnQgX3IgPSBfX2R0cmFjZV9pc2VuYWJsZWQkcG9zdGdy ZXNxbCRzbWdyX19tZF9fd3JpdGVfX3N0YXJ0JHYxKCk7IFwKCQlfX2FzbV9fIHZvbGF0aWxl KCIiKTsgXAoJCV9yOyB9KQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfU09SVF9ET05FKGFy ZzAsIGFyZzEpIFwKZG8geyBcCglfX2FzbV9fIHZvbGF0aWxlKCIucmVmZXJlbmNlICIgVFJB Q0VfUE9TVEdSRVNRTF9UWVBFREVGUyk7IFwKCV9fZHRyYWNlX3Byb2JlJHBvc3RncmVzcWwk c29ydF9fZG9uZSR2MSQ3NTZlNzM2OTY3NmU2NTY0MjA2MzY4NjE3MiQ2YzZmNmU2Nyhhcmcw LCBhcmcxKTsgXAoJX19hc21fXyB2b2xhdGlsZSgiLnJlZmVyZW5jZSAiIFRSQUNFX1BPU1RH UkVTUUxfU1RBQklMSVRZKTsgXAp9IHdoaWxlICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVT UUxfU09SVF9ET05FX0VOQUJMRUQoKSBcCgkoeyBpbnQgX3IgPSBfX2R0cmFjZV9pc2VuYWJs ZWQkcG9zdGdyZXNxbCRzb3J0X19kb25lJHYxKCk7IFwKCQlfX2FzbV9fIHZvbGF0aWxlKCIi KTsgXAoJCV9yOyB9KQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfU09SVF9TVEFSVChhcmcw LCBhcmcxLCBhcmcyLCBhcmczLCBhcmc0LCBhcmc1KSBcCmRvIHsgXAoJX19hc21fXyB2b2xh dGlsZSgiLnJlZmVyZW5jZSAiIFRSQUNFX1BPU1RHUkVTUUxfVFlQRURFRlMpOyBcCglfX2R0 cmFjZV9wcm9iZSRwb3N0Z3Jlc3FsJHNvcnRfX3N0YXJ0JHYxJDY5NmU3NCQ3NTZlNzM2OTY3 NmU2NTY0MjA2MzY4NjE3MiQ2OTZlNzQkNjk2ZTc0JDc1NmU3MzY5Njc2ZTY1NjQyMDYzNjg2 MTcyJDY5NmU3NChhcmcwLCBhcmcxLCBhcmcyLCBhcmczLCBhcmc0LCBhcmc1KTsgXAoJX19h c21fXyB2b2xhdGlsZSgiLnJlZmVyZW5jZSAiIFRSQUNFX1BPU1RHUkVTUUxfU1RBQklMSVRZ KTsgXAp9IHdoaWxlICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfU09SVF9TVEFSVF9F TkFCTEVEKCkgXAoJKHsgaW50IF9yID0gX19kdHJhY2VfaXNlbmFibGVkJHBvc3RncmVzcWwk c29ydF9fc3RhcnQkdjEoKTsgXAoJCV9fYXNtX18gdm9sYXRpbGUoIiIpOyBcCgkJX3I7IH0p CiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9TVEFURU1FTlRfU1RBVFVTKGFyZzApIFwKZG8g eyBcCglfX2FzbV9fIHZvbGF0aWxlKCIucmVmZXJlbmNlICIgVFJBQ0VfUE9TVEdSRVNRTF9U WVBFREVGUyk7IFwKCV9fZHRyYWNlX3Byb2JlJHBvc3RncmVzcWwkc3RhdGVtZW50X19zdGF0 dXMkdjEkNjM2ODYxNzIyMDJhKGFyZzApOyBcCglfX2FzbV9fIHZvbGF0aWxlKCIucmVmZXJl bmNlICIgVFJBQ0VfUE9TVEdSRVNRTF9TVEFCSUxJVFkpOyBcCn0gd2hpbGUgKDApCiNkZWZp bmUJVFJBQ0VfUE9TVEdSRVNRTF9TVEFURU1FTlRfU1RBVFVTX0VOQUJMRUQoKSBcCgkoeyBp bnQgX3IgPSBfX2R0cmFjZV9pc2VuYWJsZWQkcG9zdGdyZXNxbCRzdGF0ZW1lbnRfX3N0YXR1 cyR2MSgpOyBcCgkJX19hc21fXyB2b2xhdGlsZSgiIik7IFwKCQlfcjsgfSkKI2RlZmluZQlU UkFDRV9QT1NUR1JFU1FMX1NVQlRSQU5TX0NIRUNLUE9JTlRfRE9ORShhcmcwKSBcCmRvIHsg XAoJX19hc21fXyB2b2xhdGlsZSgiLnJlZmVyZW5jZSAiIFRSQUNFX1BPU1RHUkVTUUxfVFlQ RURFRlMpOyBcCglfX2R0cmFjZV9wcm9iZSRwb3N0Z3Jlc3FsJHN1YnRyYW5zX19jaGVja3Bv aW50X19kb25lJHYxJDc1NmU3MzY5Njc2ZTY1NjQyMDYzNjg2MTcyKGFyZzApOyBcCglfX2Fz bV9fIHZvbGF0aWxlKCIucmVmZXJlbmNlICIgVFJBQ0VfUE9TVEdSRVNRTF9TVEFCSUxJVFkp OyBcCn0gd2hpbGUgKDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9TVUJUUkFOU19DSEVD S1BPSU5UX0RPTkVfRU5BQkxFRCgpIFwKCSh7IGludCBfciA9IF9fZHRyYWNlX2lzZW5hYmxl ZCRwb3N0Z3Jlc3FsJHN1YnRyYW5zX19jaGVja3BvaW50X19kb25lJHYxKCk7IFwKCQlfX2Fz bV9fIHZvbGF0aWxlKCIiKTsgXAoJCV9yOyB9KQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxf U1VCVFJBTlNfQ0hFQ0tQT0lOVF9TVEFSVChhcmcwKSBcCmRvIHsgXAoJX19hc21fXyB2b2xh dGlsZSgiLnJlZmVyZW5jZSAiIFRSQUNFX1BPU1RHUkVTUUxfVFlQRURFRlMpOyBcCglfX2R0 cmFjZV9wcm9iZSRwb3N0Z3Jlc3FsJHN1YnRyYW5zX19jaGVja3BvaW50X19zdGFydCR2MSQ3 NTZlNzM2OTY3NmU2NTY0MjA2MzY4NjE3MihhcmcwKTsgXAoJX19hc21fXyB2b2xhdGlsZSgi LnJlZmVyZW5jZSAiIFRSQUNFX1BPU1RHUkVTUUxfU1RBQklMSVRZKTsgXAp9IHdoaWxlICgw KQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfU1VCVFJBTlNfQ0hFQ0tQT0lOVF9TVEFSVF9F TkFCTEVEKCkgXAoJKHsgaW50IF9yID0gX19kdHJhY2VfaXNlbmFibGVkJHBvc3RncmVzcWwk c3VidHJhbnNfX2NoZWNrcG9pbnRfX3N0YXJ0JHYxKCk7IFwKCQlfX2FzbV9fIHZvbGF0aWxl KCIiKTsgXAoJCV9yOyB9KQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfVFJBTlNBQ1RJT05f QUJPUlQoYXJnMCkgXApkbyB7IFwKCV9fYXNtX18gdm9sYXRpbGUoIi5yZWZlcmVuY2UgIiBU UkFDRV9QT1NUR1JFU1FMX1RZUEVERUZTKTsgXAoJX19kdHJhY2VfcHJvYmUkcG9zdGdyZXNx bCR0cmFuc2FjdGlvbl9fYWJvcnQkdjEkNzU2ZTczNjk2NzZlNjU2NDIwNjk2ZTc0KGFyZzAp OyBcCglfX2FzbV9fIHZvbGF0aWxlKCIucmVmZXJlbmNlICIgVFJBQ0VfUE9TVEdSRVNRTF9T VEFCSUxJVFkpOyBcCn0gd2hpbGUgKDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9UUkFO U0FDVElPTl9BQk9SVF9FTkFCTEVEKCkgXAoJKHsgaW50IF9yID0gX19kdHJhY2VfaXNlbmFi bGVkJHBvc3RncmVzcWwkdHJhbnNhY3Rpb25fX2Fib3J0JHYxKCk7IFwKCQlfX2FzbV9fIHZv bGF0aWxlKCIiKTsgXAoJCV9yOyB9KQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfVFJBTlNB Q1RJT05fQ09NTUlUKGFyZzApIFwKZG8geyBcCglfX2FzbV9fIHZvbGF0aWxlKCIucmVmZXJl bmNlICIgVFJBQ0VfUE9TVEdSRVNRTF9UWVBFREVGUyk7IFwKCV9fZHRyYWNlX3Byb2JlJHBv c3RncmVzcWwkdHJhbnNhY3Rpb25fX2NvbW1pdCR2MSQ3NTZlNzM2OTY3NmU2NTY0MjA2OTZl NzQoYXJnMCk7IFwKCV9fYXNtX18gdm9sYXRpbGUoIi5yZWZlcmVuY2UgIiBUUkFDRV9QT1NU R1JFU1FMX1NUQUJJTElUWSk7IFwKfSB3aGlsZSAoMCkKI2RlZmluZQlUUkFDRV9QT1NUR1JF U1FMX1RSQU5TQUNUSU9OX0NPTU1JVF9FTkFCTEVEKCkgXAoJKHsgaW50IF9yID0gX19kdHJh Y2VfaXNlbmFibGVkJHBvc3RncmVzcWwkdHJhbnNhY3Rpb25fX2NvbW1pdCR2MSgpOyBcCgkJ X19hc21fXyB2b2xhdGlsZSgiIik7IFwKCQlfcjsgfSkKI2RlZmluZQlUUkFDRV9QT1NUR1JF U1FMX1RSQU5TQUNUSU9OX1NUQVJUKGFyZzApIFwKZG8geyBcCglfX2FzbV9fIHZvbGF0aWxl KCIucmVmZXJlbmNlICIgVFJBQ0VfUE9TVEdSRVNRTF9UWVBFREVGUyk7IFwKCV9fZHRyYWNl X3Byb2JlJHBvc3RncmVzcWwkdHJhbnNhY3Rpb25fX3N0YXJ0JHYxJDc1NmU3MzY5Njc2ZTY1 NjQyMDY5NmU3NChhcmcwKTsgXAoJX19hc21fXyB2b2xhdGlsZSgiLnJlZmVyZW5jZSAiIFRS QUNFX1BPU1RHUkVTUUxfU1RBQklMSVRZKTsgXAp9IHdoaWxlICgwKQojZGVmaW5lCVRSQUNF X1BPU1RHUkVTUUxfVFJBTlNBQ1RJT05fU1RBUlRfRU5BQkxFRCgpIFwKCSh7IGludCBfciA9 IF9fZHRyYWNlX2lzZW5hYmxlZCRwb3N0Z3Jlc3FsJHRyYW5zYWN0aW9uX19zdGFydCR2MSgp OyBcCgkJX19hc21fXyB2b2xhdGlsZSgiIik7IFwKCQlfcjsgfSkKI2RlZmluZQlUUkFDRV9Q T1NUR1JFU1FMX1RXT1BIQVNFX0NIRUNLUE9JTlRfRE9ORSgpIFwKZG8geyBcCglfX2FzbV9f IHZvbGF0aWxlKCIucmVmZXJlbmNlICIgVFJBQ0VfUE9TVEdSRVNRTF9UWVBFREVGUyk7IFwK CV9fZHRyYWNlX3Byb2JlJHBvc3RncmVzcWwkdHdvcGhhc2VfX2NoZWNrcG9pbnRfX2RvbmUk djEoKTsgXAoJX19hc21fXyB2b2xhdGlsZSgiLnJlZmVyZW5jZSAiIFRSQUNFX1BPU1RHUkVT UUxfU1RBQklMSVRZKTsgXAp9IHdoaWxlICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxf VFdPUEhBU0VfQ0hFQ0tQT0lOVF9ET05FX0VOQUJMRUQoKSBcCgkoeyBpbnQgX3IgPSBfX2R0 cmFjZV9pc2VuYWJsZWQkcG9zdGdyZXNxbCR0d29waGFzZV9fY2hlY2twb2ludF9fZG9uZSR2 MSgpOyBcCgkJX19hc21fXyB2b2xhdGlsZSgiIik7IFwKCQlfcjsgfSkKI2RlZmluZQlUUkFD RV9QT1NUR1JFU1FMX1RXT1BIQVNFX0NIRUNLUE9JTlRfU1RBUlQoKSBcCmRvIHsgXAoJX19h c21fXyB2b2xhdGlsZSgiLnJlZmVyZW5jZSAiIFRSQUNFX1BPU1RHUkVTUUxfVFlQRURFRlMp OyBcCglfX2R0cmFjZV9wcm9iZSRwb3N0Z3Jlc3FsJHR3b3BoYXNlX19jaGVja3BvaW50X19z dGFydCR2MSgpOyBcCglfX2FzbV9fIHZvbGF0aWxlKCIucmVmZXJlbmNlICIgVFJBQ0VfUE9T VEdSRVNRTF9TVEFCSUxJVFkpOyBcCn0gd2hpbGUgKDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdS RVNRTF9UV09QSEFTRV9DSEVDS1BPSU5UX1NUQVJUX0VOQUJMRUQoKSBcCgkoeyBpbnQgX3Ig PSBfX2R0cmFjZV9pc2VuYWJsZWQkcG9zdGdyZXNxbCR0d29waGFzZV9fY2hlY2twb2ludF9f c3RhcnQkdjEoKTsgXAoJCV9fYXNtX18gdm9sYXRpbGUoIiIpOyBcCgkJX3I7IH0pCiNkZWZp bmUJVFJBQ0VfUE9TVEdSRVNRTF9XQUxfQlVGRkVSX1dSSVRFX0RJUlRZX0RPTkUoKSBcCmRv IHsgXAoJX19hc21fXyB2b2xhdGlsZSgiLnJlZmVyZW5jZSAiIFRSQUNFX1BPU1RHUkVTUUxf VFlQRURFRlMpOyBcCglfX2R0cmFjZV9wcm9iZSRwb3N0Z3Jlc3FsJHdhbF9fYnVmZmVyX193 cml0ZV9fZGlydHlfX2RvbmUkdjEoKTsgXAoJX19hc21fXyB2b2xhdGlsZSgiLnJlZmVyZW5j ZSAiIFRSQUNFX1BPU1RHUkVTUUxfU1RBQklMSVRZKTsgXAp9IHdoaWxlICgwKQojZGVmaW5l CVRSQUNFX1BPU1RHUkVTUUxfV0FMX0JVRkZFUl9XUklURV9ESVJUWV9ET05FX0VOQUJMRUQo KSBcCgkoeyBpbnQgX3IgPSBfX2R0cmFjZV9pc2VuYWJsZWQkcG9zdGdyZXNxbCR3YWxfX2J1 ZmZlcl9fd3JpdGVfX2RpcnR5X19kb25lJHYxKCk7IFwKCQlfX2FzbV9fIHZvbGF0aWxlKCIi KTsgXAoJCV9yOyB9KQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfV0FMX0JVRkZFUl9XUklU RV9ESVJUWV9TVEFSVCgpIFwKZG8geyBcCglfX2FzbV9fIHZvbGF0aWxlKCIucmVmZXJlbmNl ICIgVFJBQ0VfUE9TVEdSRVNRTF9UWVBFREVGUyk7IFwKCV9fZHRyYWNlX3Byb2JlJHBvc3Rn cmVzcWwkd2FsX19idWZmZXJfX3dyaXRlX19kaXJ0eV9fc3RhcnQkdjEoKTsgXAoJX19hc21f XyB2b2xhdGlsZSgiLnJlZmVyZW5jZSAiIFRSQUNFX1BPU1RHUkVTUUxfU1RBQklMSVRZKTsg XAp9IHdoaWxlICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfV0FMX0JVRkZFUl9XUklU RV9ESVJUWV9TVEFSVF9FTkFCTEVEKCkgXAoJKHsgaW50IF9yID0gX19kdHJhY2VfaXNlbmFi bGVkJHBvc3RncmVzcWwkd2FsX19idWZmZXJfX3dyaXRlX19kaXJ0eV9fc3RhcnQkdjEoKTsg XAoJCV9fYXNtX18gdm9sYXRpbGUoIiIpOyBcCgkJX3I7IH0pCiNkZWZpbmUJVFJBQ0VfUE9T VEdSRVNRTF9XQUxfSU5TRVJUKGFyZzAsIGFyZzEpIFwKZG8geyBcCglfX2FzbV9fIHZvbGF0 aWxlKCIucmVmZXJlbmNlICIgVFJBQ0VfUE9TVEdSRVNRTF9UWVBFREVGUyk7IFwKCV9fZHRy YWNlX3Byb2JlJHBvc3RncmVzcWwkd2FsX19pbnNlcnQkdjEkNzU2ZTczNjk2NzZlNjU2NDIw NjM2ODYxNzIkNzU2ZTczNjk2NzZlNjU2NDIwNjM2ODYxNzIoYXJnMCwgYXJnMSk7IFwKCV9f YXNtX18gdm9sYXRpbGUoIi5yZWZlcmVuY2UgIiBUUkFDRV9QT1NUR1JFU1FMX1NUQUJJTElU WSk7IFwKfSB3aGlsZSAoMCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX1dBTF9JTlNFUlRf RU5BQkxFRCgpIFwKCSh7IGludCBfciA9IF9fZHRyYWNlX2lzZW5hYmxlZCRwb3N0Z3Jlc3Fs JHdhbF9faW5zZXJ0JHYxKCk7IFwKCQlfX2FzbV9fIHZvbGF0aWxlKCIiKTsgXAoJCV9yOyB9 KQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfV0FMX1NXSVRDSCgpIFwKZG8geyBcCglfX2Fz bV9fIHZvbGF0aWxlKCIucmVmZXJlbmNlICIgVFJBQ0VfUE9TVEdSRVNRTF9UWVBFREVGUyk7 IFwKCV9fZHRyYWNlX3Byb2JlJHBvc3RncmVzcWwkd2FsX19zd2l0Y2gkdjEoKTsgXAoJX19h c21fXyB2b2xhdGlsZSgiLnJlZmVyZW5jZSAiIFRSQUNFX1BPU1RHUkVTUUxfU1RBQklMSVRZ KTsgXAp9IHdoaWxlICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfV0FMX1NXSVRDSF9F TkFCTEVEKCkgXAoJKHsgaW50IF9yID0gX19kdHJhY2VfaXNlbmFibGVkJHBvc3RncmVzcWwk d2FsX19zd2l0Y2gkdjEoKTsgXAoJCV9fYXNtX18gdm9sYXRpbGUoIiIpOyBcCgkJX3I7IH0p CgoKZXh0ZXJuIHZvaWQgX19kdHJhY2VfcHJvYmUkcG9zdGdyZXNxbCRidWZmZXJfX2NoZWNr cG9pbnRfX2RvbmUkdjEodm9pZCk7CmV4dGVybiBpbnQgX19kdHJhY2VfaXNlbmFibGVkJHBv c3RncmVzcWwkYnVmZmVyX19jaGVja3BvaW50X19kb25lJHYxKHZvaWQpOwpleHRlcm4gdm9p ZCBfX2R0cmFjZV9wcm9iZSRwb3N0Z3Jlc3FsJGJ1ZmZlcl9fY2hlY2twb2ludF9fc3RhcnQk djEkNjk2ZTc0KGludCk7CmV4dGVybiBpbnQgX19kdHJhY2VfaXNlbmFibGVkJHBvc3RncmVz cWwkYnVmZmVyX19jaGVja3BvaW50X19zdGFydCR2MSh2b2lkKTsKZXh0ZXJuIHZvaWQgX19k dHJhY2VfcHJvYmUkcG9zdGdyZXNxbCRidWZmZXJfX2NoZWNrcG9pbnRfX3N5bmNfX3N0YXJ0 JHYxKHZvaWQpOwpleHRlcm4gaW50IF9fZHRyYWNlX2lzZW5hYmxlZCRwb3N0Z3Jlc3FsJGJ1 ZmZlcl9fY2hlY2twb2ludF9fc3luY19fc3RhcnQkdjEodm9pZCk7CmV4dGVybiB2b2lkIF9f ZHRyYWNlX3Byb2JlJHBvc3RncmVzcWwkYnVmZmVyX19mbHVzaF9fZG9uZSR2MSQ2OTZlNzQk NzU2ZTczNjk2NzZlNjU2NDIwNjk2ZTc0JDc1NmU3MzY5Njc2ZTY1NjQyMDY5NmU3NCQ3NTZl NzM2OTY3NmU2NTY0MjA2OTZlNzQkNzU2ZTczNjk2NzZlNjU2NDIwNjk2ZTc0KGludCwgdW5z aWduZWQgaW50LCB1bnNpZ25lZCBpbnQsIHVuc2lnbmVkIGludCwgdW5zaWduZWQgaW50KTsK ZXh0ZXJuIGludCBfX2R0cmFjZV9pc2VuYWJsZWQkcG9zdGdyZXNxbCRidWZmZXJfX2ZsdXNo X19kb25lJHYxKHZvaWQpOwpleHRlcm4gdm9pZCBfX2R0cmFjZV9wcm9iZSRwb3N0Z3Jlc3Fs JGJ1ZmZlcl9fZmx1c2hfX3N0YXJ0JHYxJDY5NmU3NCQ3NTZlNzM2OTY3NmU2NTY0MjA2OTZl NzQkNzU2ZTczNjk2NzZlNjU2NDIwNjk2ZTc0JDc1NmU3MzY5Njc2ZTY1NjQyMDY5NmU3NCQ3 NTZlNzM2OTY3NmU2NTY0MjA2OTZlNzQoaW50LCB1bnNpZ25lZCBpbnQsIHVuc2lnbmVkIGlu dCwgdW5zaWduZWQgaW50LCB1bnNpZ25lZCBpbnQpOwpleHRlcm4gaW50IF9fZHRyYWNlX2lz ZW5hYmxlZCRwb3N0Z3Jlc3FsJGJ1ZmZlcl9fZmx1c2hfX3N0YXJ0JHYxKHZvaWQpOwpleHRl cm4gdm9pZCBfX2R0cmFjZV9wcm9iZSRwb3N0Z3Jlc3FsJGJ1ZmZlcl9fcmVhZF9fZG9uZSR2 MSQ2OTZlNzQkNzU2ZTczNjk2NzZlNjU2NDIwNjk2ZTc0JDc1NmU3MzY5Njc2ZTY1NjQyMDY5 NmU3NCQ3NTZlNzM2OTY3NmU2NTY0MjA2OTZlNzQkNzU2ZTczNjk2NzZlNjU2NDIwNjk2ZTc0 JDY5NmU3NCQ3NTZlNzM2OTY3NmU2NTY0MjA2MzY4NjE3MiQ3NTZlNzM2OTY3NmU2NTY0MjA2 MzY4NjE3MihpbnQsIHVuc2lnbmVkIGludCwgdW5zaWduZWQgaW50LCB1bnNpZ25lZCBpbnQs IHVuc2lnbmVkIGludCwgaW50LCB1bnNpZ25lZCBjaGFyLCB1bnNpZ25lZCBjaGFyKTsKZXh0 ZXJuIGludCBfX2R0cmFjZV9pc2VuYWJsZWQkcG9zdGdyZXNxbCRidWZmZXJfX3JlYWRfX2Rv bmUkdjEodm9pZCk7CmV4dGVybiB2b2lkIF9fZHRyYWNlX3Byb2JlJHBvc3RncmVzcWwkYnVm ZmVyX19yZWFkX19zdGFydCR2MSQ2OTZlNzQkNzU2ZTczNjk2NzZlNjU2NDIwNjk2ZTc0JDc1 NmU3MzY5Njc2ZTY1NjQyMDY5NmU3NCQ3NTZlNzM2OTY3NmU2NTY0MjA2OTZlNzQkNzU2ZTcz Njk2NzZlNjU2NDIwNjk2ZTc0JDY5NmU3NCQ3NTZlNzM2OTY3NmU2NTY0MjA2MzY4NjE3Mihp bnQsIHVuc2lnbmVkIGludCwgdW5zaWduZWQgaW50LCB1bnNpZ25lZCBpbnQsIHVuc2lnbmVk IGludCwgaW50LCB1bnNpZ25lZCBjaGFyKTsKZXh0ZXJuIGludCBfX2R0cmFjZV9pc2VuYWJs ZWQkcG9zdGdyZXNxbCRidWZmZXJfX3JlYWRfX3N0YXJ0JHYxKHZvaWQpOwpleHRlcm4gdm9p ZCBfX2R0cmFjZV9wcm9iZSRwb3N0Z3Jlc3FsJGJ1ZmZlcl9fc3luY19fZG9uZSR2MSQ2OTZl NzQkNjk2ZTc0JDY5NmU3NChpbnQsIGludCwgaW50KTsKZXh0ZXJuIGludCBfX2R0cmFjZV9p c2VuYWJsZWQkcG9zdGdyZXNxbCRidWZmZXJfX3N5bmNfX2RvbmUkdjEodm9pZCk7CmV4dGVy biB2b2lkIF9fZHRyYWNlX3Byb2JlJHBvc3RncmVzcWwkYnVmZmVyX19zeW5jX19zdGFydCR2 MSQ2OTZlNzQkNjk2ZTc0KGludCwgaW50KTsKZXh0ZXJuIGludCBfX2R0cmFjZV9pc2VuYWJs ZWQkcG9zdGdyZXNxbCRidWZmZXJfX3N5bmNfX3N0YXJ0JHYxKHZvaWQpOwpleHRlcm4gdm9p ZCBfX2R0cmFjZV9wcm9iZSRwb3N0Z3Jlc3FsJGJ1ZmZlcl9fc3luY19fd3JpdHRlbiR2MSQ2 OTZlNzQoaW50KTsKZXh0ZXJuIGludCBfX2R0cmFjZV9pc2VuYWJsZWQkcG9zdGdyZXNxbCRi dWZmZXJfX3N5bmNfX3dyaXR0ZW4kdjEodm9pZCk7CmV4dGVybiB2b2lkIF9fZHRyYWNlX3By b2JlJHBvc3RncmVzcWwkYnVmZmVyX193cml0ZV9fZGlydHlfX2RvbmUkdjEkNjk2ZTc0JDc1 NmU3MzY5Njc2ZTY1NjQyMDY5NmU3NCQ3NTZlNzM2OTY3NmU2NTY0MjA2OTZlNzQkNzU2ZTcz Njk2NzZlNjU2NDIwNjk2ZTc0JDc1NmU3MzY5Njc2ZTY1NjQyMDY5NmU3NChpbnQsIHVuc2ln bmVkIGludCwgdW5zaWduZWQgaW50LCB1bnNpZ25lZCBpbnQsIHVuc2lnbmVkIGludCk7CmV4 dGVybiBpbnQgX19kdHJhY2VfaXNlbmFibGVkJHBvc3RncmVzcWwkYnVmZmVyX193cml0ZV9f ZGlydHlfX2RvbmUkdjEodm9pZCk7CmV4dGVybiB2b2lkIF9fZHRyYWNlX3Byb2JlJHBvc3Rn cmVzcWwkYnVmZmVyX193cml0ZV9fZGlydHlfX3N0YXJ0JHYxJDY5NmU3NCQ3NTZlNzM2OTY3 NmU2NTY0MjA2OTZlNzQkNzU2ZTczNjk2NzZlNjU2NDIwNjk2ZTc0JDc1NmU3MzY5Njc2ZTY1 NjQyMDY5NmU3NCQ3NTZlNzM2OTY3NmU2NTY0MjA2OTZlNzQoaW50LCB1bnNpZ25lZCBpbnQs IHVuc2lnbmVkIGludCwgdW5zaWduZWQgaW50LCB1bnNpZ25lZCBpbnQpOwpleHRlcm4gaW50 IF9fZHRyYWNlX2lzZW5hYmxlZCRwb3N0Z3Jlc3FsJGJ1ZmZlcl9fd3JpdGVfX2RpcnR5X19z dGFydCR2MSh2b2lkKTsKZXh0ZXJuIHZvaWQgX19kdHJhY2VfcHJvYmUkcG9zdGdyZXNxbCRj aGVja3BvaW50X19kb25lJHYxJDY5NmU3NCQ2OTZlNzQkNjk2ZTc0JDY5NmU3NCQ2OTZlNzQo aW50LCBpbnQsIGludCwgaW50LCBpbnQpOwpleHRlcm4gaW50IF9fZHRyYWNlX2lzZW5hYmxl ZCRwb3N0Z3Jlc3FsJGNoZWNrcG9pbnRfX2RvbmUkdjEodm9pZCk7CmV4dGVybiB2b2lkIF9f ZHRyYWNlX3Byb2JlJHBvc3RncmVzcWwkY2hlY2twb2ludF9fc3RhcnQkdjEkNjk2ZTc0KGlu dCk7CmV4dGVybiBpbnQgX19kdHJhY2VfaXNlbmFibGVkJHBvc3RncmVzcWwkY2hlY2twb2lu dF9fc3RhcnQkdjEodm9pZCk7CmV4dGVybiB2b2lkIF9fZHRyYWNlX3Byb2JlJHBvc3RncmVz cWwkY2xvZ19fY2hlY2twb2ludF9fZG9uZSR2MSQ3NTZlNzM2OTY3NmU2NTY0MjA2MzY4NjE3 Mih1bnNpZ25lZCBjaGFyKTsKZXh0ZXJuIGludCBfX2R0cmFjZV9pc2VuYWJsZWQkcG9zdGdy ZXNxbCRjbG9nX19jaGVja3BvaW50X19kb25lJHYxKHZvaWQpOwpleHRlcm4gdm9pZCBfX2R0 cmFjZV9wcm9iZSRwb3N0Z3Jlc3FsJGNsb2dfX2NoZWNrcG9pbnRfX3N0YXJ0JHYxJDc1NmU3 MzY5Njc2ZTY1NjQyMDYzNjg2MTcyKHVuc2lnbmVkIGNoYXIpOwpleHRlcm4gaW50IF9fZHRy YWNlX2lzZW5hYmxlZCRwb3N0Z3Jlc3FsJGNsb2dfX2NoZWNrcG9pbnRfX3N0YXJ0JHYxKHZv aWQpOwpleHRlcm4gdm9pZCBfX2R0cmFjZV9wcm9iZSRwb3N0Z3Jlc3FsJGRlYWRsb2NrX19m b3VuZCR2MSh2b2lkKTsKZXh0ZXJuIGludCBfX2R0cmFjZV9pc2VuYWJsZWQkcG9zdGdyZXNx bCRkZWFkbG9ja19fZm91bmQkdjEodm9pZCk7CmV4dGVybiB2b2lkIF9fZHRyYWNlX3Byb2Jl JHBvc3RncmVzcWwkbG9ja19fd2FpdF9fZG9uZSR2MSQ3NTZlNzM2OTY3NmU2NTY0MjA2OTZl NzQkNzU2ZTczNjk2NzZlNjU2NDIwNjk2ZTc0JDc1NmU3MzY5Njc2ZTY1NjQyMDY5NmU3NCQ3 NTZlNzM2OTY3NmU2NTY0MjA2OTZlNzQkNzU2ZTczNjk2NzZlNjU2NDIwNjk2ZTc0JDY5NmU3 NCh1bnNpZ25lZCBpbnQsIHVuc2lnbmVkIGludCwgdW5zaWduZWQgaW50LCB1bnNpZ25lZCBp bnQsIHVuc2lnbmVkIGludCwgaW50KTsKZXh0ZXJuIGludCBfX2R0cmFjZV9pc2VuYWJsZWQk cG9zdGdyZXNxbCRsb2NrX193YWl0X19kb25lJHYxKHZvaWQpOwpleHRlcm4gdm9pZCBfX2R0 cmFjZV9wcm9iZSRwb3N0Z3Jlc3FsJGxvY2tfX3dhaXRfX3N0YXJ0JHYxJDc1NmU3MzY5Njc2 ZTY1NjQyMDY5NmU3NCQ3NTZlNzM2OTY3NmU2NTY0MjA2OTZlNzQkNzU2ZTczNjk2NzZlNjU2 NDIwNjk2ZTc0JDc1NmU3MzY5Njc2ZTY1NjQyMDY5NmU3NCQ3NTZlNzM2OTY3NmU2NTY0MjA2 OTZlNzQkNjk2ZTc0KHVuc2lnbmVkIGludCwgdW5zaWduZWQgaW50LCB1bnNpZ25lZCBpbnQs IHVuc2lnbmVkIGludCwgdW5zaWduZWQgaW50LCBpbnQpOwpleHRlcm4gaW50IF9fZHRyYWNl X2lzZW5hYmxlZCRwb3N0Z3Jlc3FsJGxvY2tfX3dhaXRfX3N0YXJ0JHYxKHZvaWQpOwpleHRl cm4gdm9pZCBfX2R0cmFjZV9wcm9iZSRwb3N0Z3Jlc3FsJGx3bG9ja19fYWNxdWlyZSR2MSQ2 MzY4NjE3MjIwMmEkNjk2ZTc0KGNvbnN0IGNoYXIgKiwgaW50KTsKZXh0ZXJuIGludCBfX2R0 cmFjZV9pc2VuYWJsZWQkcG9zdGdyZXNxbCRsd2xvY2tfX2FjcXVpcmUkdjEodm9pZCk7CmV4 dGVybiB2b2lkIF9fZHRyYWNlX3Byb2JlJHBvc3RncmVzcWwkbHdsb2NrX19hY3F1aXJlX19v cl9fd2FpdCR2MSQ2MzY4NjE3MjIwMmEkNjk2ZTc0KGNvbnN0IGNoYXIgKiwgaW50KTsKZXh0 ZXJuIGludCBfX2R0cmFjZV9pc2VuYWJsZWQkcG9zdGdyZXNxbCRsd2xvY2tfX2FjcXVpcmVf X29yX193YWl0JHYxKHZvaWQpOwpleHRlcm4gdm9pZCBfX2R0cmFjZV9wcm9iZSRwb3N0Z3Jl c3FsJGx3bG9ja19fYWNxdWlyZV9fb3JfX3dhaXRfX2ZhaWwkdjEkNjM2ODYxNzIyMDJhJDY5 NmU3NChjb25zdCBjaGFyICosIGludCk7CmV4dGVybiBpbnQgX19kdHJhY2VfaXNlbmFibGVk JHBvc3RncmVzcWwkbHdsb2NrX19hY3F1aXJlX19vcl9fd2FpdF9fZmFpbCR2MSh2b2lkKTsK ZXh0ZXJuIHZvaWQgX19kdHJhY2VfcHJvYmUkcG9zdGdyZXNxbCRsd2xvY2tfX2NvbmRhY3F1 aXJlJHYxJDYzNjg2MTcyMjAyYSQ2OTZlNzQoY29uc3QgY2hhciAqLCBpbnQpOwpleHRlcm4g aW50IF9fZHRyYWNlX2lzZW5hYmxlZCRwb3N0Z3Jlc3FsJGx3bG9ja19fY29uZGFjcXVpcmUk djEodm9pZCk7CmV4dGVybiB2b2lkIF9fZHRyYWNlX3Byb2JlJHBvc3RncmVzcWwkbHdsb2Nr X19jb25kYWNxdWlyZV9fZmFpbCR2MSQ2MzY4NjE3MjIwMmEkNjk2ZTc0KGNvbnN0IGNoYXIg KiwgaW50KTsKZXh0ZXJuIGludCBfX2R0cmFjZV9pc2VuYWJsZWQkcG9zdGdyZXNxbCRsd2xv Y2tfX2NvbmRhY3F1aXJlX19mYWlsJHYxKHZvaWQpOwpleHRlcm4gdm9pZCBfX2R0cmFjZV9w cm9iZSRwb3N0Z3Jlc3FsJGx3bG9ja19fcmVsZWFzZSR2MSQ2MzY4NjE3MjIwMmEoY29uc3Qg Y2hhciAqKTsKZXh0ZXJuIGludCBfX2R0cmFjZV9pc2VuYWJsZWQkcG9zdGdyZXNxbCRsd2xv Y2tfX3JlbGVhc2UkdjEodm9pZCk7CmV4dGVybiB2b2lkIF9fZHRyYWNlX3Byb2JlJHBvc3Rn cmVzcWwkbHdsb2NrX193YWl0X19kb25lJHYxJDYzNjg2MTcyMjAyYSQ2OTZlNzQoY29uc3Qg Y2hhciAqLCBpbnQpOwpleHRlcm4gaW50IF9fZHRyYWNlX2lzZW5hYmxlZCRwb3N0Z3Jlc3Fs JGx3bG9ja19fd2FpdF9fZG9uZSR2MSh2b2lkKTsKZXh0ZXJuIHZvaWQgX19kdHJhY2VfcHJv YmUkcG9zdGdyZXNxbCRsd2xvY2tfX3dhaXRfX3N0YXJ0JHYxJDYzNjg2MTcyMjAyYSQ2OTZl NzQoY29uc3QgY2hhciAqLCBpbnQpOwpleHRlcm4gaW50IF9fZHRyYWNlX2lzZW5hYmxlZCRw b3N0Z3Jlc3FsJGx3bG9ja19fd2FpdF9fc3RhcnQkdjEodm9pZCk7CmV4dGVybiB2b2lkIF9f ZHRyYWNlX3Byb2JlJHBvc3RncmVzcWwkbXVsdGl4YWN0X19jaGVja3BvaW50X19kb25lJHYx JDc1NmU3MzY5Njc2ZTY1NjQyMDYzNjg2MTcyKHVuc2lnbmVkIGNoYXIpOwpleHRlcm4gaW50 IF9fZHRyYWNlX2lzZW5hYmxlZCRwb3N0Z3Jlc3FsJG11bHRpeGFjdF9fY2hlY2twb2ludF9f ZG9uZSR2MSh2b2lkKTsKZXh0ZXJuIHZvaWQgX19kdHJhY2VfcHJvYmUkcG9zdGdyZXNxbCRt dWx0aXhhY3RfX2NoZWNrcG9pbnRfX3N0YXJ0JHYxJDc1NmU3MzY5Njc2ZTY1NjQyMDYzNjg2 MTcyKHVuc2lnbmVkIGNoYXIpOwpleHRlcm4gaW50IF9fZHRyYWNlX2lzZW5hYmxlZCRwb3N0 Z3Jlc3FsJG11bHRpeGFjdF9fY2hlY2twb2ludF9fc3RhcnQkdjEodm9pZCk7CmV4dGVybiB2 b2lkIF9fZHRyYWNlX3Byb2JlJHBvc3RncmVzcWwkcXVlcnlfX2RvbmUkdjEkNjM2ODYxNzIy MDJhKGNvbnN0IGNoYXIgKik7CmV4dGVybiBpbnQgX19kdHJhY2VfaXNlbmFibGVkJHBvc3Rn cmVzcWwkcXVlcnlfX2RvbmUkdjEodm9pZCk7CmV4dGVybiB2b2lkIF9fZHRyYWNlX3Byb2Jl JHBvc3RncmVzcWwkcXVlcnlfX2V4ZWN1dGVfX2RvbmUkdjEodm9pZCk7CmV4dGVybiBpbnQg X19kdHJhY2VfaXNlbmFibGVkJHBvc3RncmVzcWwkcXVlcnlfX2V4ZWN1dGVfX2RvbmUkdjEo dm9pZCk7CmV4dGVybiB2b2lkIF9fZHRyYWNlX3Byb2JlJHBvc3RncmVzcWwkcXVlcnlfX2V4 ZWN1dGVfX3N0YXJ0JHYxKHZvaWQpOwpleHRlcm4gaW50IF9fZHRyYWNlX2lzZW5hYmxlZCRw b3N0Z3Jlc3FsJHF1ZXJ5X19leGVjdXRlX19zdGFydCR2MSh2b2lkKTsKZXh0ZXJuIHZvaWQg X19kdHJhY2VfcHJvYmUkcG9zdGdyZXNxbCRxdWVyeV9fcGFyc2VfX2RvbmUkdjEkNjM2ODYx NzIyMDJhKGNvbnN0IGNoYXIgKik7CmV4dGVybiBpbnQgX19kdHJhY2VfaXNlbmFibGVkJHBv c3RncmVzcWwkcXVlcnlfX3BhcnNlX19kb25lJHYxKHZvaWQpOwpleHRlcm4gdm9pZCBfX2R0 cmFjZV9wcm9iZSRwb3N0Z3Jlc3FsJHF1ZXJ5X19wYXJzZV9fc3RhcnQkdjEkNjM2ODYxNzIy MDJhKGNvbnN0IGNoYXIgKik7CmV4dGVybiBpbnQgX19kdHJhY2VfaXNlbmFibGVkJHBvc3Rn cmVzcWwkcXVlcnlfX3BhcnNlX19zdGFydCR2MSh2b2lkKTsKZXh0ZXJuIHZvaWQgX19kdHJh Y2VfcHJvYmUkcG9zdGdyZXNxbCRxdWVyeV9fcGxhbl9fZG9uZSR2MSh2b2lkKTsKZXh0ZXJu IGludCBfX2R0cmFjZV9pc2VuYWJsZWQkcG9zdGdyZXNxbCRxdWVyeV9fcGxhbl9fZG9uZSR2 MSh2b2lkKTsKZXh0ZXJuIHZvaWQgX19kdHJhY2VfcHJvYmUkcG9zdGdyZXNxbCRxdWVyeV9f cGxhbl9fc3RhcnQkdjEodm9pZCk7CmV4dGVybiBpbnQgX19kdHJhY2VfaXNlbmFibGVkJHBv c3RncmVzcWwkcXVlcnlfX3BsYW5fX3N0YXJ0JHYxKHZvaWQpOwpleHRlcm4gdm9pZCBfX2R0 cmFjZV9wcm9iZSRwb3N0Z3Jlc3FsJHF1ZXJ5X19yZXdyaXRlX19kb25lJHYxJDYzNjg2MTcy MjAyYShjb25zdCBjaGFyICopOwpleHRlcm4gaW50IF9fZHRyYWNlX2lzZW5hYmxlZCRwb3N0 Z3Jlc3FsJHF1ZXJ5X19yZXdyaXRlX19kb25lJHYxKHZvaWQpOwpleHRlcm4gdm9pZCBfX2R0 cmFjZV9wcm9iZSRwb3N0Z3Jlc3FsJHF1ZXJ5X19yZXdyaXRlX19zdGFydCR2MSQ2MzY4NjE3 MjIwMmEoY29uc3QgY2hhciAqKTsKZXh0ZXJuIGludCBfX2R0cmFjZV9pc2VuYWJsZWQkcG9z dGdyZXNxbCRxdWVyeV9fcmV3cml0ZV9fc3RhcnQkdjEodm9pZCk7CmV4dGVybiB2b2lkIF9f ZHRyYWNlX3Byb2JlJHBvc3RncmVzcWwkcXVlcnlfX3N0YXJ0JHYxJDYzNjg2MTcyMjAyYShj b25zdCBjaGFyICopOwpleHRlcm4gaW50IF9fZHRyYWNlX2lzZW5hYmxlZCRwb3N0Z3Jlc3Fs JHF1ZXJ5X19zdGFydCR2MSh2b2lkKTsKZXh0ZXJuIHZvaWQgX19kdHJhY2VfcHJvYmUkcG9z dGdyZXNxbCRzbWdyX19tZF9fcmVhZF9fZG9uZSR2MSQ2OTZlNzQkNzU2ZTczNjk2NzZlNjU2 NDIwNjk2ZTc0JDc1NmU3MzY5Njc2ZTY1NjQyMDY5NmU3NCQ3NTZlNzM2OTY3NmU2NTY0MjA2 OTZlNzQkNzU2ZTczNjk2NzZlNjU2NDIwNjk2ZTc0JDY5NmU3NCQ2OTZlNzQkNjk2ZTc0KGlu dCwgdW5zaWduZWQgaW50LCB1bnNpZ25lZCBpbnQsIHVuc2lnbmVkIGludCwgdW5zaWduZWQg aW50LCBpbnQsIGludCwgaW50KTsKZXh0ZXJuIGludCBfX2R0cmFjZV9pc2VuYWJsZWQkcG9z dGdyZXNxbCRzbWdyX19tZF9fcmVhZF9fZG9uZSR2MSh2b2lkKTsKZXh0ZXJuIHZvaWQgX19k dHJhY2VfcHJvYmUkcG9zdGdyZXNxbCRzbWdyX19tZF9fcmVhZF9fc3RhcnQkdjEkNjk2ZTc0 JDc1NmU3MzY5Njc2ZTY1NjQyMDY5NmU3NCQ3NTZlNzM2OTY3NmU2NTY0MjA2OTZlNzQkNzU2 ZTczNjk2NzZlNjU2NDIwNjk2ZTc0JDc1NmU3MzY5Njc2ZTY1NjQyMDY5NmU3NCQ2OTZlNzQo aW50LCB1bnNpZ25lZCBpbnQsIHVuc2lnbmVkIGludCwgdW5zaWduZWQgaW50LCB1bnNpZ25l ZCBpbnQsIGludCk7CmV4dGVybiBpbnQgX19kdHJhY2VfaXNlbmFibGVkJHBvc3RncmVzcWwk c21ncl9fbWRfX3JlYWRfX3N0YXJ0JHYxKHZvaWQpOwpleHRlcm4gdm9pZCBfX2R0cmFjZV9w cm9iZSRwb3N0Z3Jlc3FsJHNtZ3JfX21kX193cml0ZV9fZG9uZSR2MSQ2OTZlNzQkNzU2ZTcz Njk2NzZlNjU2NDIwNjk2ZTc0JDc1NmU3MzY5Njc2ZTY1NjQyMDY5NmU3NCQ3NTZlNzM2OTY3 NmU2NTY0MjA2OTZlNzQkNzU2ZTczNjk2NzZlNjU2NDIwNjk2ZTc0JDY5NmU3NCQ2OTZlNzQk Njk2ZTc0KGludCwgdW5zaWduZWQgaW50LCB1bnNpZ25lZCBpbnQsIHVuc2lnbmVkIGludCwg dW5zaWduZWQgaW50LCBpbnQsIGludCwgaW50KTsKZXh0ZXJuIGludCBfX2R0cmFjZV9pc2Vu YWJsZWQkcG9zdGdyZXNxbCRzbWdyX19tZF9fd3JpdGVfX2RvbmUkdjEodm9pZCk7CmV4dGVy biB2b2lkIF9fZHRyYWNlX3Byb2JlJHBvc3RncmVzcWwkc21ncl9fbWRfX3dyaXRlX19zdGFy dCR2MSQ2OTZlNzQkNzU2ZTczNjk2NzZlNjU2NDIwNjk2ZTc0JDc1NmU3MzY5Njc2ZTY1NjQy MDY5NmU3NCQ3NTZlNzM2OTY3NmU2NTY0MjA2OTZlNzQkNzU2ZTczNjk2NzZlNjU2NDIwNjk2 ZTc0JDY5NmU3NChpbnQsIHVuc2lnbmVkIGludCwgdW5zaWduZWQgaW50LCB1bnNpZ25lZCBp bnQsIHVuc2lnbmVkIGludCwgaW50KTsKZXh0ZXJuIGludCBfX2R0cmFjZV9pc2VuYWJsZWQk cG9zdGdyZXNxbCRzbWdyX19tZF9fd3JpdGVfX3N0YXJ0JHYxKHZvaWQpOwpleHRlcm4gdm9p ZCBfX2R0cmFjZV9wcm9iZSRwb3N0Z3Jlc3FsJHNvcnRfX2RvbmUkdjEkNzU2ZTczNjk2NzZl NjU2NDIwNjM2ODYxNzIkNmM2ZjZlNjcodW5zaWduZWQgY2hhciwgbG9uZyk7CmV4dGVybiBp bnQgX19kdHJhY2VfaXNlbmFibGVkJHBvc3RncmVzcWwkc29ydF9fZG9uZSR2MSh2b2lkKTsK ZXh0ZXJuIHZvaWQgX19kdHJhY2VfcHJvYmUkcG9zdGdyZXNxbCRzb3J0X19zdGFydCR2MSQ2 OTZlNzQkNzU2ZTczNjk2NzZlNjU2NDIwNjM2ODYxNzIkNjk2ZTc0JDY5NmU3NCQ3NTZlNzM2 OTY3NmU2NTY0MjA2MzY4NjE3MiQ2OTZlNzQoaW50LCB1bnNpZ25lZCBjaGFyLCBpbnQsIGlu dCwgdW5zaWduZWQgY2hhciwgaW50KTsKZXh0ZXJuIGludCBfX2R0cmFjZV9pc2VuYWJsZWQk cG9zdGdyZXNxbCRzb3J0X19zdGFydCR2MSh2b2lkKTsKZXh0ZXJuIHZvaWQgX19kdHJhY2Vf cHJvYmUkcG9zdGdyZXNxbCRzdGF0ZW1lbnRfX3N0YXR1cyR2MSQ2MzY4NjE3MjIwMmEoY29u c3QgY2hhciAqKTsKZXh0ZXJuIGludCBfX2R0cmFjZV9pc2VuYWJsZWQkcG9zdGdyZXNxbCRz dGF0ZW1lbnRfX3N0YXR1cyR2MSh2b2lkKTsKZXh0ZXJuIHZvaWQgX19kdHJhY2VfcHJvYmUk cG9zdGdyZXNxbCRzdWJ0cmFuc19fY2hlY2twb2ludF9fZG9uZSR2MSQ3NTZlNzM2OTY3NmU2 NTY0MjA2MzY4NjE3Mih1bnNpZ25lZCBjaGFyKTsKZXh0ZXJuIGludCBfX2R0cmFjZV9pc2Vu YWJsZWQkcG9zdGdyZXNxbCRzdWJ0cmFuc19fY2hlY2twb2ludF9fZG9uZSR2MSh2b2lkKTsK ZXh0ZXJuIHZvaWQgX19kdHJhY2VfcHJvYmUkcG9zdGdyZXNxbCRzdWJ0cmFuc19fY2hlY2tw b2ludF9fc3RhcnQkdjEkNzU2ZTczNjk2NzZlNjU2NDIwNjM2ODYxNzIodW5zaWduZWQgY2hh cik7CmV4dGVybiBpbnQgX19kdHJhY2VfaXNlbmFibGVkJHBvc3RncmVzcWwkc3VidHJhbnNf X2NoZWNrcG9pbnRfX3N0YXJ0JHYxKHZvaWQpOwpleHRlcm4gdm9pZCBfX2R0cmFjZV9wcm9i ZSRwb3N0Z3Jlc3FsJHRyYW5zYWN0aW9uX19hYm9ydCR2MSQ3NTZlNzM2OTY3NmU2NTY0MjA2 OTZlNzQodW5zaWduZWQgaW50KTsKZXh0ZXJuIGludCBfX2R0cmFjZV9pc2VuYWJsZWQkcG9z dGdyZXNxbCR0cmFuc2FjdGlvbl9fYWJvcnQkdjEodm9pZCk7CmV4dGVybiB2b2lkIF9fZHRy YWNlX3Byb2JlJHBvc3RncmVzcWwkdHJhbnNhY3Rpb25fX2NvbW1pdCR2MSQ3NTZlNzM2OTY3 NmU2NTY0MjA2OTZlNzQodW5zaWduZWQgaW50KTsKZXh0ZXJuIGludCBfX2R0cmFjZV9pc2Vu YWJsZWQkcG9zdGdyZXNxbCR0cmFuc2FjdGlvbl9fY29tbWl0JHYxKHZvaWQpOwpleHRlcm4g dm9pZCBfX2R0cmFjZV9wcm9iZSRwb3N0Z3Jlc3FsJHRyYW5zYWN0aW9uX19zdGFydCR2MSQ3 NTZlNzM2OTY3NmU2NTY0MjA2OTZlNzQodW5zaWduZWQgaW50KTsKZXh0ZXJuIGludCBfX2R0 cmFjZV9pc2VuYWJsZWQkcG9zdGdyZXNxbCR0cmFuc2FjdGlvbl9fc3RhcnQkdjEodm9pZCk7 CmV4dGVybiB2b2lkIF9fZHRyYWNlX3Byb2JlJHBvc3RncmVzcWwkdHdvcGhhc2VfX2NoZWNr cG9pbnRfX2RvbmUkdjEodm9pZCk7CmV4dGVybiBpbnQgX19kdHJhY2VfaXNlbmFibGVkJHBv c3RncmVzcWwkdHdvcGhhc2VfX2NoZWNrcG9pbnRfX2RvbmUkdjEodm9pZCk7CmV4dGVybiB2 b2lkIF9fZHRyYWNlX3Byb2JlJHBvc3RncmVzcWwkdHdvcGhhc2VfX2NoZWNrcG9pbnRfX3N0 YXJ0JHYxKHZvaWQpOwpleHRlcm4gaW50IF9fZHRyYWNlX2lzZW5hYmxlZCRwb3N0Z3Jlc3Fs JHR3b3BoYXNlX19jaGVja3BvaW50X19zdGFydCR2MSh2b2lkKTsKZXh0ZXJuIHZvaWQgX19k dHJhY2VfcHJvYmUkcG9zdGdyZXNxbCR3YWxfX2J1ZmZlcl9fd3JpdGVfX2RpcnR5X19kb25l JHYxKHZvaWQpOwpleHRlcm4gaW50IF9fZHRyYWNlX2lzZW5hYmxlZCRwb3N0Z3Jlc3FsJHdh bF9fYnVmZmVyX193cml0ZV9fZGlydHlfX2RvbmUkdjEodm9pZCk7CmV4dGVybiB2b2lkIF9f ZHRyYWNlX3Byb2JlJHBvc3RncmVzcWwkd2FsX19idWZmZXJfX3dyaXRlX19kaXJ0eV9fc3Rh cnQkdjEodm9pZCk7CmV4dGVybiBpbnQgX19kdHJhY2VfaXNlbmFibGVkJHBvc3RncmVzcWwk d2FsX19idWZmZXJfX3dyaXRlX19kaXJ0eV9fc3RhcnQkdjEodm9pZCk7CmV4dGVybiB2b2lk IF9fZHRyYWNlX3Byb2JlJHBvc3RncmVzcWwkd2FsX19pbnNlcnQkdjEkNzU2ZTczNjk2NzZl NjU2NDIwNjM2ODYxNzIkNzU2ZTczNjk2NzZlNjU2NDIwNjM2ODYxNzIodW5zaWduZWQgY2hh ciwgdW5zaWduZWQgY2hhcik7CmV4dGVybiBpbnQgX19kdHJhY2VfaXNlbmFibGVkJHBvc3Rn cmVzcWwkd2FsX19pbnNlcnQkdjEodm9pZCk7CmV4dGVybiB2b2lkIF9fZHRyYWNlX3Byb2Jl JHBvc3RncmVzcWwkd2FsX19zd2l0Y2gkdjEodm9pZCk7CmV4dGVybiBpbnQgX19kdHJhY2Vf aXNlbmFibGVkJHBvc3RncmVzcWwkd2FsX19zd2l0Y2gkdjEodm9pZCk7CgojZWxzZQoKI2Rl ZmluZQlUUkFDRV9QT1NUR1JFU1FMX0JVRkZFUl9DSEVDS1BPSU5UX0RPTkUoKSBcCmRvIHsg XAoJfSB3aGlsZSAoMCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX0JVRkZFUl9DSEVDS1BP SU5UX0RPTkVfRU5BQkxFRCgpICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfQlVGRkVS X0NIRUNLUE9JTlRfU1RBUlQoYXJnMCkgXApkbyB7IFwKCX0gd2hpbGUgKDApCiNkZWZpbmUJ VFJBQ0VfUE9TVEdSRVNRTF9CVUZGRVJfQ0hFQ0tQT0lOVF9TVEFSVF9FTkFCTEVEKCkgKDAp CiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9CVUZGRVJfQ0hFQ0tQT0lOVF9TWU5DX1NUQVJU KCkgXApkbyB7IFwKCX0gd2hpbGUgKDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9CVUZG RVJfQ0hFQ0tQT0lOVF9TWU5DX1NUQVJUX0VOQUJMRUQoKSAoMCkKI2RlZmluZQlUUkFDRV9Q T1NUR1JFU1FMX0JVRkZFUl9GTFVTSF9ET05FKGFyZzAsIGFyZzEsIGFyZzIsIGFyZzMsIGFy ZzQpIFwKZG8geyBcCgl9IHdoaWxlICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfQlVG RkVSX0ZMVVNIX0RPTkVfRU5BQkxFRCgpICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxf QlVGRkVSX0ZMVVNIX1NUQVJUKGFyZzAsIGFyZzEsIGFyZzIsIGFyZzMsIGFyZzQpIFwKZG8g eyBcCgl9IHdoaWxlICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfQlVGRkVSX0ZMVVNI X1NUQVJUX0VOQUJMRUQoKSAoMCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX0JVRkZFUl9S RUFEX0RPTkUoYXJnMCwgYXJnMSwgYXJnMiwgYXJnMywgYXJnNCwgYXJnNSwgYXJnNiwgYXJn NykgXApkbyB7IFwKCX0gd2hpbGUgKDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9CVUZG RVJfUkVBRF9ET05FX0VOQUJMRUQoKSAoMCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX0JV RkZFUl9SRUFEX1NUQVJUKGFyZzAsIGFyZzEsIGFyZzIsIGFyZzMsIGFyZzQsIGFyZzUsIGFy ZzYpIFwKZG8geyBcCgl9IHdoaWxlICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfQlVG RkVSX1JFQURfU1RBUlRfRU5BQkxFRCgpICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxf QlVGRkVSX1NZTkNfRE9ORShhcmcwLCBhcmcxLCBhcmcyKSBcCmRvIHsgXAoJfSB3aGlsZSAo MCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX0JVRkZFUl9TWU5DX0RPTkVfRU5BQkxFRCgp ICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfQlVGRkVSX1NZTkNfU1RBUlQoYXJnMCwg YXJnMSkgXApkbyB7IFwKCX0gd2hpbGUgKDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9C VUZGRVJfU1lOQ19TVEFSVF9FTkFCTEVEKCkgKDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNR TF9CVUZGRVJfU1lOQ19XUklUVEVOKGFyZzApIFwKZG8geyBcCgl9IHdoaWxlICgwKQojZGVm aW5lCVRSQUNFX1BPU1RHUkVTUUxfQlVGRkVSX1NZTkNfV1JJVFRFTl9FTkFCTEVEKCkgKDAp CiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9CVUZGRVJfV1JJVEVfRElSVFlfRE9ORShhcmcw LCBhcmcxLCBhcmcyLCBhcmczLCBhcmc0KSBcCmRvIHsgXAoJfSB3aGlsZSAoMCkKI2RlZmlu ZQlUUkFDRV9QT1NUR1JFU1FMX0JVRkZFUl9XUklURV9ESVJUWV9ET05FX0VOQUJMRUQoKSAo MCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX0JVRkZFUl9XUklURV9ESVJUWV9TVEFSVChh cmcwLCBhcmcxLCBhcmcyLCBhcmczLCBhcmc0KSBcCmRvIHsgXAoJfSB3aGlsZSAoMCkKI2Rl ZmluZQlUUkFDRV9QT1NUR1JFU1FMX0JVRkZFUl9XUklURV9ESVJUWV9TVEFSVF9FTkFCTEVE KCkgKDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9DSEVDS1BPSU5UX0RPTkUoYXJnMCwg YXJnMSwgYXJnMiwgYXJnMywgYXJnNCkgXApkbyB7IFwKCX0gd2hpbGUgKDApCiNkZWZpbmUJ VFJBQ0VfUE9TVEdSRVNRTF9DSEVDS1BPSU5UX0RPTkVfRU5BQkxFRCgpICgwKQojZGVmaW5l CVRSQUNFX1BPU1RHUkVTUUxfQ0hFQ0tQT0lOVF9TVEFSVChhcmcwKSBcCmRvIHsgXAoJfSB3 aGlsZSAoMCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX0NIRUNLUE9JTlRfU1RBUlRfRU5B QkxFRCgpICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfQ0xPR19DSEVDS1BPSU5UX0RP TkUoYXJnMCkgXApkbyB7IFwKCX0gd2hpbGUgKDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNR TF9DTE9HX0NIRUNLUE9JTlRfRE9ORV9FTkFCTEVEKCkgKDApCiNkZWZpbmUJVFJBQ0VfUE9T VEdSRVNRTF9DTE9HX0NIRUNLUE9JTlRfU1RBUlQoYXJnMCkgXApkbyB7IFwKCX0gd2hpbGUg KDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9DTE9HX0NIRUNLUE9JTlRfU1RBUlRfRU5B QkxFRCgpICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfREVBRExPQ0tfRk9VTkQoKSBc CmRvIHsgXAoJfSB3aGlsZSAoMCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX0RFQURMT0NL X0ZPVU5EX0VOQUJMRUQoKSAoMCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX0xPQ0tfV0FJ VF9ET05FKGFyZzAsIGFyZzEsIGFyZzIsIGFyZzMsIGFyZzQsIGFyZzUpIFwKZG8geyBcCgl9 IHdoaWxlICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfTE9DS19XQUlUX0RPTkVfRU5B QkxFRCgpICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfTE9DS19XQUlUX1NUQVJUKGFy ZzAsIGFyZzEsIGFyZzIsIGFyZzMsIGFyZzQsIGFyZzUpIFwKZG8geyBcCgl9IHdoaWxlICgw KQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfTE9DS19XQUlUX1NUQVJUX0VOQUJMRUQoKSAo MCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX0xXTE9DS19BQ1FVSVJFKGFyZzAsIGFyZzEp IFwKZG8geyBcCgl9IHdoaWxlICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfTFdMT0NL X0FDUVVJUkVfRU5BQkxFRCgpICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfTFdMT0NL X0FDUVVJUkVfT1JfV0FJVChhcmcwLCBhcmcxKSBcCmRvIHsgXAoJfSB3aGlsZSAoMCkKI2Rl ZmluZQlUUkFDRV9QT1NUR1JFU1FMX0xXTE9DS19BQ1FVSVJFX09SX1dBSVRfRU5BQkxFRCgp ICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfTFdMT0NLX0FDUVVJUkVfT1JfV0FJVF9G QUlMKGFyZzAsIGFyZzEpIFwKZG8geyBcCgl9IHdoaWxlICgwKQojZGVmaW5lCVRSQUNFX1BP U1RHUkVTUUxfTFdMT0NLX0FDUVVJUkVfT1JfV0FJVF9GQUlMX0VOQUJMRUQoKSAoMCkKI2Rl ZmluZQlUUkFDRV9QT1NUR1JFU1FMX0xXTE9DS19DT05EQUNRVUlSRShhcmcwLCBhcmcxKSBc CmRvIHsgXAoJfSB3aGlsZSAoMCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX0xXTE9DS19D T05EQUNRVUlSRV9FTkFCTEVEKCkgKDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9MV0xP Q0tfQ09OREFDUVVJUkVfRkFJTChhcmcwLCBhcmcxKSBcCmRvIHsgXAoJfSB3aGlsZSAoMCkK I2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX0xXTE9DS19DT05EQUNRVUlSRV9GQUlMX0VOQUJM RUQoKSAoMCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX0xXTE9DS19SRUxFQVNFKGFyZzAp IFwKZG8geyBcCgl9IHdoaWxlICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfTFdMT0NL X1JFTEVBU0VfRU5BQkxFRCgpICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfTFdMT0NL X1dBSVRfRE9ORShhcmcwLCBhcmcxKSBcCmRvIHsgXAoJfSB3aGlsZSAoMCkKI2RlZmluZQlU UkFDRV9QT1NUR1JFU1FMX0xXTE9DS19XQUlUX0RPTkVfRU5BQkxFRCgpICgwKQojZGVmaW5l CVRSQUNFX1BPU1RHUkVTUUxfTFdMT0NLX1dBSVRfU1RBUlQoYXJnMCwgYXJnMSkgXApkbyB7 IFwKCX0gd2hpbGUgKDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9MV0xPQ0tfV0FJVF9T VEFSVF9FTkFCTEVEKCkgKDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9NVUxUSVhBQ1Rf Q0hFQ0tQT0lOVF9ET05FKGFyZzApIFwKZG8geyBcCgl9IHdoaWxlICgwKQojZGVmaW5lCVRS QUNFX1BPU1RHUkVTUUxfTVVMVElYQUNUX0NIRUNLUE9JTlRfRE9ORV9FTkFCTEVEKCkgKDAp CiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9NVUxUSVhBQ1RfQ0hFQ0tQT0lOVF9TVEFSVChh cmcwKSBcCmRvIHsgXAoJfSB3aGlsZSAoMCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX01V TFRJWEFDVF9DSEVDS1BPSU5UX1NUQVJUX0VOQUJMRUQoKSAoMCkKI2RlZmluZQlUUkFDRV9Q T1NUR1JFU1FMX1FVRVJZX0RPTkUoYXJnMCkgXApkbyB7IFwKCX0gd2hpbGUgKDApCiNkZWZp bmUJVFJBQ0VfUE9TVEdSRVNRTF9RVUVSWV9ET05FX0VOQUJMRUQoKSAoMCkKI2RlZmluZQlU UkFDRV9QT1NUR1JFU1FMX1FVRVJZX0VYRUNVVEVfRE9ORSgpIFwKZG8geyBcCgl9IHdoaWxl ICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfUVVFUllfRVhFQ1VURV9ET05FX0VOQUJM RUQoKSAoMCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX1FVRVJZX0VYRUNVVEVfU1RBUlQo KSBcCmRvIHsgXAoJfSB3aGlsZSAoMCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX1FVRVJZ X0VYRUNVVEVfU1RBUlRfRU5BQkxFRCgpICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxf UVVFUllfUEFSU0VfRE9ORShhcmcwKSBcCmRvIHsgXAoJfSB3aGlsZSAoMCkKI2RlZmluZQlU UkFDRV9QT1NUR1JFU1FMX1FVRVJZX1BBUlNFX0RPTkVfRU5BQkxFRCgpICgwKQojZGVmaW5l CVRSQUNFX1BPU1RHUkVTUUxfUVVFUllfUEFSU0VfU1RBUlQoYXJnMCkgXApkbyB7IFwKCX0g d2hpbGUgKDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9RVUVSWV9QQVJTRV9TVEFSVF9F TkFCTEVEKCkgKDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9RVUVSWV9QTEFOX0RPTkUo KSBcCmRvIHsgXAoJfSB3aGlsZSAoMCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX1FVRVJZ X1BMQU5fRE9ORV9FTkFCTEVEKCkgKDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9RVUVS WV9QTEFOX1NUQVJUKCkgXApkbyB7IFwKCX0gd2hpbGUgKDApCiNkZWZpbmUJVFJBQ0VfUE9T VEdSRVNRTF9RVUVSWV9QTEFOX1NUQVJUX0VOQUJMRUQoKSAoMCkKI2RlZmluZQlUUkFDRV9Q T1NUR1JFU1FMX1FVRVJZX1JFV1JJVEVfRE9ORShhcmcwKSBcCmRvIHsgXAoJfSB3aGlsZSAo MCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX1FVRVJZX1JFV1JJVEVfRE9ORV9FTkFCTEVE KCkgKDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9RVUVSWV9SRVdSSVRFX1NUQVJUKGFy ZzApIFwKZG8geyBcCgl9IHdoaWxlICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfUVVF UllfUkVXUklURV9TVEFSVF9FTkFCTEVEKCkgKDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNR TF9RVUVSWV9TVEFSVChhcmcwKSBcCmRvIHsgXAoJfSB3aGlsZSAoMCkKI2RlZmluZQlUUkFD RV9QT1NUR1JFU1FMX1FVRVJZX1NUQVJUX0VOQUJMRUQoKSAoMCkKI2RlZmluZQlUUkFDRV9Q T1NUR1JFU1FMX1NNR1JfTURfUkVBRF9ET05FKGFyZzAsIGFyZzEsIGFyZzIsIGFyZzMsIGFy ZzQsIGFyZzUsIGFyZzYsIGFyZzcpIFwKZG8geyBcCgl9IHdoaWxlICgwKQojZGVmaW5lCVRS QUNFX1BPU1RHUkVTUUxfU01HUl9NRF9SRUFEX0RPTkVfRU5BQkxFRCgpICgwKQojZGVmaW5l CVRSQUNFX1BPU1RHUkVTUUxfU01HUl9NRF9SRUFEX1NUQVJUKGFyZzAsIGFyZzEsIGFyZzIs IGFyZzMsIGFyZzQsIGFyZzUpIFwKZG8geyBcCgl9IHdoaWxlICgwKQojZGVmaW5lCVRSQUNF X1BPU1RHUkVTUUxfU01HUl9NRF9SRUFEX1NUQVJUX0VOQUJMRUQoKSAoMCkKI2RlZmluZQlU UkFDRV9QT1NUR1JFU1FMX1NNR1JfTURfV1JJVEVfRE9ORShhcmcwLCBhcmcxLCBhcmcyLCBh cmczLCBhcmc0LCBhcmc1LCBhcmc2LCBhcmc3KSBcCmRvIHsgXAoJfSB3aGlsZSAoMCkKI2Rl ZmluZQlUUkFDRV9QT1NUR1JFU1FMX1NNR1JfTURfV1JJVEVfRE9ORV9FTkFCTEVEKCkgKDAp CiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9TTUdSX01EX1dSSVRFX1NUQVJUKGFyZzAsIGFy ZzEsIGFyZzIsIGFyZzMsIGFyZzQsIGFyZzUpIFwKZG8geyBcCgl9IHdoaWxlICgwKQojZGVm aW5lCVRSQUNFX1BPU1RHUkVTUUxfU01HUl9NRF9XUklURV9TVEFSVF9FTkFCTEVEKCkgKDAp CiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9TT1JUX0RPTkUoYXJnMCwgYXJnMSkgXApkbyB7 IFwKCX0gd2hpbGUgKDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9TT1JUX0RPTkVfRU5B QkxFRCgpICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfU09SVF9TVEFSVChhcmcwLCBh cmcxLCBhcmcyLCBhcmczLCBhcmc0LCBhcmc1KSBcCmRvIHsgXAoJfSB3aGlsZSAoMCkKI2Rl ZmluZQlUUkFDRV9QT1NUR1JFU1FMX1NPUlRfU1RBUlRfRU5BQkxFRCgpICgwKQojZGVmaW5l CVRSQUNFX1BPU1RHUkVTUUxfU1RBVEVNRU5UX1NUQVRVUyhhcmcwKSBcCmRvIHsgXAoJfSB3 aGlsZSAoMCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX1NUQVRFTUVOVF9TVEFUVVNfRU5B QkxFRCgpICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfU1VCVFJBTlNfQ0hFQ0tQT0lO VF9ET05FKGFyZzApIFwKZG8geyBcCgl9IHdoaWxlICgwKQojZGVmaW5lCVRSQUNFX1BPU1RH UkVTUUxfU1VCVFJBTlNfQ0hFQ0tQT0lOVF9ET05FX0VOQUJMRUQoKSAoMCkKI2RlZmluZQlU UkFDRV9QT1NUR1JFU1FMX1NVQlRSQU5TX0NIRUNLUE9JTlRfU1RBUlQoYXJnMCkgXApkbyB7 IFwKCX0gd2hpbGUgKDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9TVUJUUkFOU19DSEVD S1BPSU5UX1NUQVJUX0VOQUJMRUQoKSAoMCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX1RS QU5TQUNUSU9OX0FCT1JUKGFyZzApIFwKZG8geyBcCgl9IHdoaWxlICgwKQojZGVmaW5lCVRS QUNFX1BPU1RHUkVTUUxfVFJBTlNBQ1RJT05fQUJPUlRfRU5BQkxFRCgpICgwKQojZGVmaW5l CVRSQUNFX1BPU1RHUkVTUUxfVFJBTlNBQ1RJT05fQ09NTUlUKGFyZzApIFwKZG8geyBcCgl9 IHdoaWxlICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfVFJBTlNBQ1RJT05fQ09NTUlU X0VOQUJMRUQoKSAoMCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX1RSQU5TQUNUSU9OX1NU QVJUKGFyZzApIFwKZG8geyBcCgl9IHdoaWxlICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVT UUxfVFJBTlNBQ1RJT05fU1RBUlRfRU5BQkxFRCgpICgwKQojZGVmaW5lCVRSQUNFX1BPU1RH UkVTUUxfVFdPUEhBU0VfQ0hFQ0tQT0lOVF9ET05FKCkgXApkbyB7IFwKCX0gd2hpbGUgKDAp CiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9UV09QSEFTRV9DSEVDS1BPSU5UX0RPTkVfRU5B QkxFRCgpICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVTUUxfVFdPUEhBU0VfQ0hFQ0tQT0lO VF9TVEFSVCgpIFwKZG8geyBcCgl9IHdoaWxlICgwKQojZGVmaW5lCVRSQUNFX1BPU1RHUkVT UUxfVFdPUEhBU0VfQ0hFQ0tQT0lOVF9TVEFSVF9FTkFCTEVEKCkgKDApCiNkZWZpbmUJVFJB Q0VfUE9TVEdSRVNRTF9XQUxfQlVGRkVSX1dSSVRFX0RJUlRZX0RPTkUoKSBcCmRvIHsgXAoJ fSB3aGlsZSAoMCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX1dBTF9CVUZGRVJfV1JJVEVf RElSVFlfRE9ORV9FTkFCTEVEKCkgKDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9XQUxf QlVGRkVSX1dSSVRFX0RJUlRZX1NUQVJUKCkgXApkbyB7IFwKCX0gd2hpbGUgKDApCiNkZWZp bmUJVFJBQ0VfUE9TVEdSRVNRTF9XQUxfQlVGRkVSX1dSSVRFX0RJUlRZX1NUQVJUX0VOQUJM RUQoKSAoMCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX1dBTF9JTlNFUlQoYXJnMCwgYXJn MSkgXApkbyB7IFwKCX0gd2hpbGUgKDApCiNkZWZpbmUJVFJBQ0VfUE9TVEdSRVNRTF9XQUxf SU5TRVJUX0VOQUJMRUQoKSAoMCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX1dBTF9TV0lU Q0goKSBcCmRvIHsgXAoJfSB3aGlsZSAoMCkKI2RlZmluZQlUUkFDRV9QT1NUR1JFU1FMX1dB TF9TV0lUQ0hfRU5BQkxFRCgpICgwKQoKI2VuZGlmIC8qICFkZWZpbmVkKERUUkFDRV9QUk9C RVNfRElTQUJMRUQpIHx8ICFEVFJBQ0VfUFJPQkVTX0RJU0FCTEVEICovCgoKI2lmZGVmCV9f Y3BsdXNwbHVzCn0KI2VuZGlmCgojZW5kaWYJLyogX1BST0JFU19IX1RNUCAqLwo= --------------54733DEF76B8F98E984546AC--