From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from cortex1.nebelhauch.de ([213.133.111.172]) by linuxtogo.org with esmtp (Exim 4.72) (envelope-from ) id 1Q4gta-0007ur-R3 for openembedded-devel@lists.openembedded.org; Tue, 29 Mar 2011 23:56:14 +0200 Received: by cortex1.nebelhauch.de (Postfix, from userid 65534) id AEA48E6B84; Tue, 29 Mar 2011 23:55:07 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on cortex1.nebelhauch.de X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED autolearn=unavailable version=3.3.1 Received: from localhost (localhost [127.0.0.1]) by cortex1.nebelhauch.de (Postfix) with ESMTP id CF396E6B83 for ; Tue, 29 Mar 2011 23:55:04 +0200 (CEST) X-Virus-Scanned: amavisd-new at nebelhauch.de Received: from cortex1.nebelhauch.de ([127.0.0.1]) by localhost (cortex1.nebelhauch.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id PR1wRshgzFuf for ; Tue, 29 Mar 2011 23:55:04 +0200 (CEST) Received: from [192.168.178.27] (koln-5d813d89.pool.mediaWays.net [93.129.61.137]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) by cortex1.nebelhauch.de (Postfix) with ESMTPSA id A406DE6B28 for ; Tue, 29 Mar 2011 23:55:03 +0200 (CEST) Message-ID: <4D925506.5090304@whisper-net.de> Date: Tue, 29 Mar 2011 23:54:14 +0200 From: Julian Pietron User-Agent: Mozilla/5.0 (X11; U; Linux i686 (x86_64); en-US; rv:1.9.2.7) Gecko/20100713 Lightning/1.0b2 Thunderbird/3.1.1 MIME-Version: 1.0 To: openembedded-devel@lists.openembedded.org References: <99989183e4a44b810bb727c31af09ddd@nebelhauch.de> In-Reply-To: <99989183e4a44b810bb727c31af09ddd@nebelhauch.de> X-Enigmail-Version: 1.1.1 OpenPGP: id=D8407950 Subject: Re: do_compile of gcc-cross-sdk-4.5 fails with -mfloat-abi=hard X-BeenThere: openembedded-devel@lists.openembedded.org X-Mailman-Version: 2.1.11 Precedence: list Reply-To: openembedded-devel@lists.openembedded.org List-Id: Using the OpenEmbedded metadata to build Distributions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 29 Mar 2011 21:56:14 -0000 X-Groupsio-MsgNum: 30710 Content-Type: multipart/mixed; boundary="------------050900020900090304020300" --------------050900020900090304020300 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hey, some more information for you in the hope that it will help you to find the cause for these problems. I attached the Makefile from the gcc-cross-4.5 build, libgcc-subdirectory, and the Makefile from the gcc-cross-sdk-4.5, libgcc subdirectory. As you can see in line 67 where CC is set, the former Makefile includes the correct TARGET_CC_ARCH (-mtune=armv7-a etc.), while the latter doesn't contain this and especially doesn't contain the -mfloat-abi=hard which would be required to perform the correct hard float compilation. I guess there is something missing in the call to ./configure for the gcc-cross-sdk-build, perhaps you could point me to the directive that has to be added to have the correct CFLAGS for building libgcc. Thanks, Julian -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.16 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iQIcBAEBAgAGBQJNklUFAAoJENidYKvYQHlQSswP/0+um3OoYQOSd7OXS+o4TMI3 zsOKoqmbVCN+k9YiaQ5KT6scf2lxI38dOq1M4Bi5An8sibo1yR9OuM2YilWqqu5U zp0U3HRpggeUw4jkm1ZRLlw6NyY9aW9eTzYAUBiuy/HRqekdtkRhJQFoHJ075th7 qL7bKFzwQaCnEWX0jFRJ8zRviiLj7cXHdBb/Lx0eweBL344v3XNStLprHUXGt+je I+BQzJt7eFf8VKtJzDVV9JFNYXauBZPCMZgfdQY0GSIdsArROmjEYbAl5qsOFaDZ 75lcHOVEt4zHpqBQ9f4lU6MeGHc9LYGb84k4YUch4z/zxxxA7FxNh4cVKUyENm09 PCE0UPEStRUrBAJye/ZWVyeoNSSCKDBHE7mf1OCSBffrXIrHrkvWqzJAvcm7Svd+ JC79h1UNxM3BERJyk1EQVLm8haeEW1Xx/NQEf9VmAclk85mwhLil1bS7aP+ll3Ty qWifJEGXvFz1hDc8nXg4FXIeaJywfF7/n1rEyKXYM4LcklTQ8quWovhN7XUU0o92 MOhCmHkkJrzH3vIqZQ04vatKHsmDv/6uxYPIfeXbjsGMERsA0V2FL0gdFM1xPR/o xEhgT4FPgLSi7xIPwHUB19aDAFyKS1yPi92C3MO7mn1zyL6IN0xj4XQ6xxdAEDIQ wO1fPo7nQxSc9I9ghoN6 =+wXY -----END PGP SIGNATURE----- --------------050900020900090304020300 Content-Type: application/pgp-keys; name="0xD8407950.asc" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="0xD8407950.asc" -----BEGIN PGP PUBLIC KEY BLOCK----- Version: GnuPG v2.0.16 (GNU/Linux) mQINBEv6fJMBEADR7uTn6mwdxzVPV1B4N8q+jlkptWDSqzp/lDoyANmzguYZz782 rj0zdm/LTBaVLJCGnZnybiEXe1hu02IRpTBSz/YL9sinhgSs93IKScBAKcAU6Sw8 QhRG1+gHX1MRXNJ/rH2TJ1QOrB9WgLA0ILWBwtl+xWwCqxAbNcKM7a2SLEU3R1aw e0gtQi+qqAkrGqCUIYwhm+cbhneWh+Ywd8twNzMJUcREkNc7GwEmVxu1k5n+kP2F pk2tYubmNopMC1IBEnAfbbuk5GVZ+rJjhpsxsdXLiPvVneGCGw5MSMPItMYVxqeb O+67WdbF17JjmW2yDnWIyzjKpepmrSlicPTLp2o3b/h4PQhI/OT7Ylu7lqcICtrr APoXJRHrjSzRsapQCAltmScJueschrouoPiwpgkVKsTlRbxXr94/80B+Dzo1oY79 V/eADQxPcUoErc9elaRjMSKwCE7if9uRo4Mqno7ltDP3PVVI+COgd/cDmHl7TyvT nECUjtSup3ro0VWIqS7MM7FbF583x5FOAZo2zi4RAvLtIJ7x5W7hIJxNAXiXG2m6 OHHm+oivYp4gCjjSQyja+3F9DuwxqB1e95oXbRIgw/33ui21OsGT+ycKh6+4b30+ 7CS+KHm+nsWSaH0O2Xnrdk96FB+fgzVTh0dEtQHywS+efEt15z1SpCM8uwARAQAB tCRKdWxpYW4gUGlldHJvbiA8anVsaWFuQHBpZXRyb24ubmFtZT6JAj4EEwECACgF Akv6fJMCGy8FCQPCZwAGCwkIBwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJENidYKvY QHlQytQP/jb2Oqtu/ZmCelFEraJ06XEPr6haevInsK2UvbpRdfKJxQOw/eC9BjJl jYVbwFFOAoNotIhMtCbLBHT7Yba13xwAZTzhMEzGOBiWOn/+1pT5KHfuW0CgPB5W oIBvYkaSL/aoOorkPPy1/7oBoRu8Ms286xQ4xzTQlzojpytLNzMxvhWN7IjwDUCi J6SubP/3u0Ha/Wcr4ClfKj9XjbRNvN4cdfBgNAQdKXpwDAZBR0I88LH0MpnlTk2C A0aUQGC05n8JtFfWJngi51dqfx19is5L6B3ZVni3pb85krXjqKoMINBSLodXAo5J PVr20qOqhaOEQT/5UM5ba61aeyDhyBe550K5l3TsSEHpo/3NNVqxONlrqHHtqQnP CXzh+9+9jjgaLBPFUzxDuJkSAQIMO7QPEhJxB/TUCccyKgMlHucXqUhJUX23V84B 2EWFySOXWybx3RwHkyRHzjvQL1rvggIsEL9K7ZyQbQVfxNoj90fkWj5/JMIomR9A C+Y5AvPr2iUmmM8wH1B+A17YGoI9fE9zbbGGPpvJxZ7HzW6kcH8E7buth6Oz+wHe YQnG0LOYzaJTYLliHp0B2dYf838MbE5Xe3KZAtSW0CHkVRe6YTWos23buXoY/7/f SRdc/hhs0W7SAbKxODFBdIsaDUhCqsYK/Tr3flZvRjj0facyGnVHiQJBBBMBAgAr AhsvBQkDwmcABgsJCAcDAgYVCAIJCgsEFgIDAQIeAQIXgAUCS/p9AwIZAQAKCRDY nWCr2EB5UKZjEADPrA61qxFA+Yf/IFXvygCTkIKv/cPUEe5aa2KuU2yCG0lx8beO 4mEvV5V+z0KJkx8hcikqxYfZhjvl4tvZukn3Rpg2y6B1ZqphpRNpZ+dP9kLtw7os Dd/qYqD5PWFAseZahR9VT0jfxhp8RirhPTl+nIApus/7EkTbvw1CnweSZS9SPfK+ ws+NvYw7r/NjuIdGRRUk3bmw7FDMk+PvKhRglqEFdggSNyPWHsO1Larl+1mdKUui 2/EbqSD7RtQdnGE+4ItgVYa+MzCQjU5L8SRE2RA8taQYYF0/5ZZfSEBh9pO17/p0 aQK4E/tsgbXKccDWfGF9yJLU45VFzL0ofMYcz5Iv2YhAj7fbx/oAD62eihywC3p4 KexujfVcrJ/VSsaUERrMaW+yuTwi/FdPzVufwVa/OWOLOL3Ek91VTjkbdStOlS+D u4a6ZbtpXxN8lqWcmcE/fTARyC8CSohL8gHQoshXZttsrPXlwSb3J6lGwKACaDda UUhO1r0IdoK70oAvetJbx7KjU81UluyfK0Zg2SO/UVoBbOrOClJOn5TeUujlFqNV /ZBEFhBvWFQsfSMKX8NXgH3NSMJmIuLjYTWYd7Kkr1DZAlkGWVcn7HHNoqhjc6vv 4y5k5Qs0Pbkj7vlM2YyaU6POtvPqnc5e0YGlfGcZ2i3mIgUanqMWmqS7QLQmSnVs aWFuIFBpZXRyb24gPGp1bGlhbkB3aGlzcGVyLW5ldC5kZT6JAj4EEwECACgFAkv6 fPECGy8FCQPCZwAGCwkIBwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJENidYKvYQHlQ dwoP/3Aa/cKzYSRv7Q+BobKy9gNEUjnDt8IvU1pTP1HK3OD2Gq502GOHtPHVsq6G 9gYCYsgqSg+HLfI0A1HhrQUXSV3osMPCjhgeHHnoWDCcwjsDHbTSwWB9mI2jIoMo o86+gdN/9EIB60h9p3pWhzjPgMM9wtP0un1jP8jZ5vm/ZkCJjbNl+ZV60Qtcxgvt E1U0AD4ljGR2guaxoNasMdIV2jPyojWLTivluwn0vRaUp0GJqwPPxdHa8bSFsg0N tDzuKCkUIEReGSZs4Pblh5A+PiZSxb0s/DeYlouP/cjh9tA62XLrzZikuzt0kox9 A/c4RYhYYUKwBAk4RRMwI648RaD8uMWqSQ+Gn7vyJ+EgIHn/+XJxL3hRcj+SqcQY GXB7/wevlRIb3PqBLIKj9skMgWBt18+PCD2nxTT9YbVzHGEfUl7dm0ghd1NxAsQn IZ9PYjF2uQdSQCMbDuinf2D+EvFAc2diOwJmnvp4F8PkLvCF+UkFgCk/5G6zZrLW F2+fOHhH7OvZVSGE9kkqNfU9KtewOl6s+Eyp1nzcUE07bNmHuxyaeiPzNWNY9lar gjtDYveZLrA0TGSQSVaHnNa9Tlu/5EoyCATXc4ehM49WoZmFSL7MZvba3k6k/WZC M6ZGddE9ReSuu+OMntaRi14gPAY9zUqL5d6yi3n5H8kfzpSltClKdWxpYW4gUGll dHJvbiA8d2VibWFzdGVyQHdoaXNwZXItbmV0LmRlPokCPQQTAQIAKAUCS/p9HgIb LwUJA8JnAAYLCQgHAwIGFQgCCQoLBBYCAwECHgECF4AACgkQ2J1gq9hAeVCUNQ/4 xsjhtq2U82qW2XAWvaYehGNnvlkOFC4Dqxx9b8ciqPJxNEn4OxqNUtRKxxwphrZI BIWj2et9t0Fx7KaBqvb5kytzTGr4aVk7/VYd1sFJv4nLXmMMpdnN/wpdQWd7uix4 wqOEjdv9ol449rD6gdzGZUzHs+oIVXaNa2ftIvBl7kRG7RcL0HuJUI7qS5tOKMMV MJIDigUmhYpVdGCvMFTOyWgJzqEOoOUKwp5ZAWaIfMOsN/XHOoVtVSF9kduU8Li0 gi/5xAhWj6zXsW7D208Yc8+/pWO6By7Alh39mHfsOxrzZkm4VXs/AfwTREc60xFF ZPH0aMvALfuF6hn5WNI8yr+DSv9H/o3u2IzLv9hpdv7wv2uCEnm5jaMHKO+d53F1 4ubwdCGH3juU4cDGmmH0aU19rJeZH5V6LWIModb6VRnKE17mVknuq3OEyp+KByPo ih8b3klFbjxrHC+6wGo6K6uTzmjDmMMrbodOiVwppvi3tWt1gdya2VAdK0csl6rq mFbiFHIKxCeRMAxw9CNDWg8hVYtbLdL8cyIQS1YxAH+k/fg+jSd3w/Y/eQyBXlau y7ZQ3RNIPdYFd82nQpXwbD+t+Fifiifz93qNra/st7SSJQd76z0QvsMV4rfIb21c UvlK+aGjeXgAv3d/7I6qkN0zFpQvTsHJH5FySQVhsLQwSnVsaWFuIFBpZXRyb24g PGoucGlldHJvbkBjb3J0ZXgtZGV2ZWxvcG1lbnQuZGU+iQI+BBMBAgAoBQJL+n0z AhsvBQkDwmcABgsJCAcDAgYVCAIJCgsEFgIDAQIeAQIXgAAKCRDYnWCr2EB5UDOG D/0fp6DeDzsSfI9qBY212uOT9p+mB6dAVzyXpUC1DH2ZVLdkYK7h14v47cwD2AUA oxsNh7j/OeFmnnKrXpmpN9GMBpqSoIN5Mz1kCKerY4V7urWH9iwuj3yZLIXsc1ke FdOk+QlP2lry4IJu2KdBg2uKhMQflx0VPYRWexqpP8AZBK8Tv+oyCpEJkWqjUog5 oD1JJFE4veaJAKtlD2xPi6MIwCxrE48KcGp43SZ9rk3pjHu4bHMR2F25mdodfY23 6QYGdTtWjouSKOsezOa01YkaOgqviImttpV0irknLUQdjEFa3A3tFFu8Rcs1dSEM 8hEXxFWd5vRPqR9vx2OSt9afPYOLFUNAxDvaGD4cgZnCbfhkPDFhOZvs4Yva65SA nF2tVZPiQuEfYflliLCwHd5ycyNJ9RLIrTmAOrlHM2TucqJN4rRVLvhAr4Hba8KH 4uxyugNXNhRnzW2lXuQ9WoAuLtpBF3Nmo/rnEy8ON74fs5EmnGY+oJrpmDbS4S/c 5HLxkPYDIdQm6MjIcOrtUVlAev7ZVa5FPiLyT+kWi7bdq6GQdJ/pIJkWRAR8Y3sH uSp91cdWmlOUXxp+XeisyGIq1tK4L9uEOEl6nAb84pYLz7jb1Ow1pP1EiC8/q9df S0ZL1hwDHhY5SPAOuSHgTrmfkctsrvokOJ8FTqi84/xMprQuSnVsaWFuIFBpZXRy b24gPGp1bGlhbi5waWV0cm9uQHJ3dGgtYWFjaGVuLmRlPokCPgQTAQIAKAUCS/p9 WwIbLwUJA8JnAAYLCQgHAwIGFQgCCQoLBBYCAwECHgECF4AACgkQ2J1gq9hAeVCz nA//c/NMeBWkQzWK0EnauI5aHWUzWXWaQADPr20KP9YriYA366OEow0qL5z/ZXc7 f0IgsxmrF49G+RFBR8AmWn3k4hF0Hxp6+FQjGIniECcfBRaq6AfTYU5V+0HwwYl/ jbMi/4qepzwZ/lVeNk+kMuzX93oEcZRC795oUI3Eu5GwvD5acmnT4BlnbX9cL2yO wM/FshE02VhZ8R5zHHtL88st/bogGmNiu6CMSiQwAV7tqILPsE28auxMwfMtNU1w Xdne7+HXhrIM0GMmTwc8qn/l1ric/XP+d9BYSKzHieQbUZDmLRgx8Z64Bu+lQeHM 54QChp0X4K8O7847CjK5xnmMdxF4mGA20ziyAKnz6/4dVguZW40qxbX8MwZ3z+5C hjARVNSFqqkCjMLo98rEEAR+B3uslaZ6cPMHYttjST3Eotc3EC2NARUjp9v53uJF N9cErVOKCCjslJ14nG5yuArcRW8ONcug4+yNNFGXAhgP+iAQ066GexoisTsnF27Y 1rOmO+W3bnHDfAaeTm5cSO3jgKvheeFSiusokkmjQSxFjhJY/C8eoqwPjKQQTVpA 31KESL5hKMYXsYUVD4G4DjadpXYFIwbWeLtbTnV9rVGnQPoQNsiJnnVxkqFXXcYT OJL4I6atZdeeZQ+RTNjC88UIVSWCrod5UrZg2ZZ7xdbP2Ei0JUp1bGlhbiBQaWV0 cm9uIDxqdWxpYW5AbmViZWxoYXVjaC5kZT6JAj4EEwECACgFAk0AOdgCGy8FCQPC ZwAGCwkIBwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJENidYKvYQHlQfFEP/2B6wsnX KBOWSd/J3BQy+FaBhyEABKfzKFvRxqYBFdBrSw2OqPPVG1vCEbz4aVsM9QxCsKrX 91stkcYSz/WPtE3e7LM/al+ATn4L0LE2umopjAAgSlGFeJUvr7SYEKPNi+Shzyvu L3Z3h5UTcZthvrx/e8ukXhTsLGYVwy0MsHMXwdUkDXrQjYxUQhiuPy1zU9nHWXhH cQAYiMNFO7+OUIwX/MisPi4YIyzIObD8Pi3xLVtuD7CtedSmIMv27cF6mr2Vak+9 O0T5p7a1KYlQLsmIaZPVy3G/YepDiwEQQ5n8Qm4gOG/2XkCL8x/x+26gKHaHJIF3 sgRoNOV23ChzZmM+GDWEgPPZYQ88u5gUUrBQQJ8vz/rzlgLc5qVmZ3CuiPlZbslc 64HBen8xGFOtuDE2/YI96uXumfI4CnoNNguupAsxxWmFD9P/OJS4oqJhJz9cllkw R4P92pjK7ycTJku4I3VQwYUIdsjeD4EZSmezcjFhot85gFdNJftRwcup63a1bTgO iiue6foB2/vsFuATooBS7YkCNdNeowtQiWR3b1K8zHdDsmM/IJxhmtzwFmbfpddC N911ArkdPXJztjMi/+F8LRiXBhP4bitZOCxUMBB9RKEtOo8wmPPqhI7/KHB94HFx ZiJb08Zs2BewJRNRNH0JTzsMzEZTUBlqasCrtFRKdWxpYW4gUGlldHJvbiAoY29y dGV4IGRldmVsb3BtZW50IEp1bGlhbiBQaWV0cm9uKSA8ai5waWV0cm9uQGNvcnRl eC1kZXZlbG9wbWVudC5kZT6JAj4EEwECACgFAk0rXQECGy8FCQPCZwAGCwkIBwMC BhUIAgkKCwQWAgMBAh4BAheAAAoJENidYKvYQHlQNusQAIUtuAMfxmT4WFzQR4Iu PGo0Z7HwO+mHiXK0mN1t5MYbtb1UMm75n4WRvSqiVe3RJ2qFwgOzh4X2noDTogtN TX4idwd3IuKT9Z9UqhQZpzr/XrwtxrYONFLcslHINQuA75FjWyXc5kGuCcBAQkzI CIz+5Y+Da3qRuT6YIX53FgMF2eQuKcHtcX+hu2nsxXK3fE8cq32YbBwbSh85pTnS YFFp4gVs4SyFV23E17qkFOTintR8M7u68kEIE/l2v4yEBHKCpHhggbohzxuVaK+C VOeZHEC1mRfqrVIoiAP9ozXeTsXj7CPTFip9vaRKGdRcsPcdS2HRE++5zcLwFmz2 WZbYQ0zQdDVbycOfKU16R3oMpld63jVkTlf9yQyOT2DnebMN8x32NcA6vjibCTsb HGE13DHhcAfpdMIEVWsJ2EfqLUeOLjdbsv7JRSM76P66bxm9frP8gDD5OUWjWhZe 5t9BZeMPZRY//PMzhfFxzGDmmaxJK8bWJFANcWOipm7NuWNBoedp4YSI2a/9LrLJ y4cPARV9w86TKEX7e6MB7iwvVhnNd6w/VPu5q5J43WN+IFvnQt4B0CgePunR1DBN Nf0p76z13u1PR0pC/99YyCxydzxDNATlrloa1DwuBzr6dR14NmNNePEKSzbDGZ8m QLL0NBzZVah+HXwTMCwwlFyHuQQNBEv6k08QEADqdIKH2HhHZer/k63JD2dpxplK 55dawQzJi+s/thiOJyYOgiOae9KT8lX9GjWKZ+qjBR8mKxnnCKJtMZxOwedIkgLk bZGEn/Eghf6JeSScNetQRAtnFhR5k506l2EJmZKQyEkrEygydBgY/l5WNOPT52W4 kgAqgv3cRBTwEe8A1xawCHB7sy87G/WGVbfEsNVWltmSm3hR9rq3Y3hmBaVI1r9r VXa7sM4yhoLhkU1CugBoKEuWmJcGqnejx3lBmq8uJOcN2Yd6SbZSYxVQFSiltrbx /v+l8h+Yjv6quaRHZ8MgR0FJXh4Q5zJVLvPEIGcIYf0ruTpD5mqSfaPYki4q0MfZ Dzojf7uIQRDrgyUSMkXk+h8ZRyg0LMWWgqMkYUohzNEnYzfsZNdu8g2MIjR1C4Bj JzTEpxfsqyED//Ae2E5x7dXG4ooMBKHiyww9aKZGt3d2CZ3H9ScbSfga7NrrfOGo jjss0br1KjOvoorkngG0l41OezlYjXmvATqYZVUYWlpeM6HRdQG3E4cYIyKkxETc ai4Xrc7PUGJdMshApe5sonZjwNiOTXjyD0Fv6qVcSi/R8B5416TAkPuloaoWSHl8 sBTBG+vxGvSp9Fn4RicHJ1yPAhojFaapneRs6Q21lCRMAfuYQGtg25gIF8OPMYHe OW7/cHzesa0kdnrSHwADBRAAg125Ga618wiY3ckdpq58ApsUCeoowpgbQCl/SnsT i7BMekk+X5Jx/AaQVo4GB0fOiEelJprZXRIqxxqXPB0YQGsNyspn/dHCPHJ7oL8g 9tzgrEdnwWFsuu5eoIVQRJuuAqbw5ECB96vw3shZSXHU+CTCJm3uIunzvMmKePBe XjIcL23uxUwwYD8TULxqlhEUHW7vhD/SYjoZ1ORaSEaQAhR9rYG/SkR/0Gdq+/GD E/EigR4jfPVeiHxe9lMtSR+waAZDJo8rAb9kJjIC7Pp7ng0gj/l1GyoSE6syXjUQ IxJXA6Zw+5idrLXpM+DrkkSW5WdGZrn34D1a1ZosZIYOZE6sKzGQatIncqaTQpUT RStt2hyfjUc3xIQqNT8nIC2jH4bvlR8YyfSd50ip7XMqR+oCV/m7FFAf/XA1nS0L JGKwdY0TBKj+GpCPje3dIZJDHNJPvlebzrCqokALm0R0g8pu7e8151Hs/WdKtVIA aOXHm9N58axsqKPqJtiZWIO0XzyxaPm37gJ4H88MHBMOXrrZN3mfEkR12p/wdrGr 5l2Efe6zTmf+1D5WTUKJ9RIZUWURDBgrpOvgRd/zGNxXt1Aavb2vpVwLq7OH2IsX dB0wyiVo2YfmUxkrfJZ3Tp1VebbPw7/ycu/MZpd+WYXH19fHUW1nQZ3KpgMkIdWc AlyJAiUEGAECAA8FAkv6k08CGwwFCQPCZwAACgkQ2J1gq9hAeVDbpw//Rgs/5dns 12U9SEfwH1jz7VhGaHtENIAvEdRwL8VvT3SU7x4abJJ8E3u7rAGpLQgBY69OMJ1n EK4476F9nxcAJBuZ+CHwShXPcjc/30RLxXsnT+JGqrAksgSwgkBDgXtiYiMnpsno trhggu4z5pMCqmsiQbCXwxzdgUOxQCCdlMlEWIn7Ge5qHgBSLXDvgp3XromO1njI 09R2+cw/9UVDIKW2b4YHMtqihFkaZrPf8fbc8wFlDK3WHjwtvp9g0kq41pCQXivt SMX67c5KEqlpISKnCXpW13hDZ/qXcj5+XCL7C1RN3LuZ2yp1AoM5KfhleoJ6/gxw rV/YVhMhNg1YwAgZeGHQlKfkdpyPG+iqgVJL1OuXHeuCruEHlgTtA4HXKIEGKg0r L+rISOcI3hbWDO6E0NWnON4UVNG8OLrMIhY5/QRRf46TDy35XdUIPJjOzH6wJ7Rb 2CzCjAH1QKrTumRl9mYE989YqVpAAvfdYZozvRtws4fIW6hkSNHklWOSaYHLjOOR 6M1ImZqBLLQw2Z5k4F2RDwxa2LBTTYdevCuGxKUsm0+KCZaQlCgwkf0mCkAQMf8O j+rrVM0i9n7gECapirJUOZrZQ7KBLxGawTilx7dJRC0AtVjDoSnsIDGBJt5L5cC6 /XXpJKZja1TVQc43e7NLRyTSmWBMjTUE0nA= =H030 -----END PGP PUBLIC KEY BLOCK----- --------------050900020900090304020300 Content-Type: text/plain; name="Makefile-gcc-cross-sdk" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="Makefile-gcc-cross-sdk" IyBNYWtlZmlsZS5pbgoKIyBDb3B5cmlnaHQgKEMpIDIwMDUsIDIwMDYsIDIwMDkgRnJlZSBTb2Z0 d2FyZSBGb3VuZGF0aW9uCiMKIyBUaGlzIGZpbGUgaXMgcGFydCBvZiBHQ0MuCiMKIyBHQ0MgaXMg ZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeSBpdCB1 bmRlciB0aGUKIyB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5z ZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUKIyBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIg dmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pCiMgYW55IGxhdGVy IHZlcnNpb24uCiMKIyBHQ0MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxs IGJlIHVzZWZ1bCwgYnV0IFdJVEhPVVQgQU5ZCiMgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUg aW1wbGllZCB3YXJyYW50eSBvZiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUwojIEZPUiBBIFBB UlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9y CiMgbW9yZSBkZXRhaWxzLgojCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0 aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYWxvbmcKIyB3aXRoIEdDQzsgc2VlIHRoZSBm aWxlIENPUFlJTkczLiAgSWYgbm90IHNlZQojIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMv Pi4KIwoKbGliZ2NjX3RvcGRpciA9IC9ob21lL2p1cGkvb3BlbmVtYmVkZGVkL3RtcC93b3JrL3g4 Nl82NC1hcm12N2EtaGFyZGZwLXNkay1vZS1saW51eC1nbnVlYWJpL2djYy1jcm9zcy1zZGstNC41 LXIzMy4yK3N2bnIxNzA0NDMvZ2NjLTRfNS1icmFuY2gvbGliZ2NjLy4uCmhvc3Rfc3ViZGlyID0g LgoKZ2NjX3NyY2RpciA9ICQobGliZ2NjX3RvcGRpcikvZ2NjCmdjY19vYmpkaXIgPSAkKE1VTFRJ QlVJTERUT1ApLi4vLi4vJChob3N0X3N1YmRpcikvZ2NjCgpzcmNkaXIgPSAvaG9tZS9qdXBpL29w ZW5lbWJlZGRlZC90bXAvd29yay94ODZfNjQtYXJtdjdhLWhhcmRmcC1zZGstb2UtbGludXgtZ251 ZWFiaS9nY2MtY3Jvc3Mtc2RrLTQuNS1yMzMuMitzdm5yMTcwNDQzL2djYy00XzUtYnJhbmNoL2xp YmdjYwoKcHJlZml4ID0gL3Vzci9sb2NhbC9pYmVydC9hcm0KCmV4ZWNfcHJlZml4ID0gL3Vzci9s b2NhbC9pYmVydC9hcm0KbGliZGlyID0gL3Vzci9sb2NhbC9pYmVydC9hcm0vbGliCnNobGliX3Ns aWJkaXIgPSAkKGV4ZWNfcHJlZml4KS8kKGhvc3Rfbm9uY2Fub25pY2FsKS9saWIKClNIRUxMID0g L2Jpbi9zaAoKZW5hYmxlX3NoYXJlZCA9IHllcwpkZWNpbWFsX2Zsb2F0ID0gbm8KZW5hYmxlX2Rl Y2ltYWxfZmxvYXQgPSBubwpmaXhlZF9wb2ludCA9IG5vCgpob3N0X25vbmNhbm9uaWNhbCA9IGFy bS1vZS1saW51eC1nbnVlYWJpCgojIExpc3Qgb2YgZXh0cmEgb2JqZWN0IGZpbGVzIHRoYXQgc2hv dWxkIGJlIGNvbXBpbGVkIGZvciB0aGlzIHRhcmdldCBtYWNoaW5lLgojIFRoZSBydWxlcyBmb3Ig Y29tcGlsaW5nIHRoZW0gc2hvdWxkIGJlIGluIHRoZSB0LSogZmlsZSBmb3IgdGhlIG1hY2hpbmUu CkVYVFJBX1BBUlRTID0gY3J0YmVnaW4ubyBjcnRiZWdpblMubyBjcnRiZWdpblQubyBjcnRlbmQu byBjcnRlbmRTLm8KCiMgTXVsdGlsaWIgc3VwcG9ydCB2YXJpYWJsZXMuCk1VTFRJU1JDVE9QID0K TVVMVElCVUlMRFRPUCA9Ck1VTFRJRElSUyA9Ck1VTFRJU1VCRElSID0KTVVMVElETyA9IHRydWUK TVVMVElDTEVBTiA9IHRydWUKCklOU1RBTEwgPSAvaG9tZS9qdXBpL29wZW5lbWJlZGRlZC9vcGVu ZW1iZWRkZWQvL2Jpbi9pbnN0YWxsIC1jCklOU1RBTExfUFJPR1JBTSA9IC9ob21lL2p1cGkvb3Bl bmVtYmVkZGVkL29wZW5lbWJlZGRlZC8vYmluL2luc3RhbGwgLWMKSU5TVEFMTF9EQVRBID0gL2hv bWUvanVwaS9vcGVuZW1iZWRkZWQvb3BlbmVtYmVkZGVkLy9iaW4vaW5zdGFsbCAtYyAtbSA2NDQK bWtpbnN0YWxsZGlycyA9ICQoU0hFTEwpICQobGliZ2NjX3RvcGRpcikvbWtpbnN0YWxsZGlycwoK b2JqZXh0ID0gLm8KCkFSID0gL2hvbWUvanVwaS9vcGVuZW1iZWRkZWQvdG1wL3N5c3Jvb3RzL3g4 Nl82NC1saW51eC91c3IvYXJtdjdhLWhhcmRmcC9hcm0tb2UtbGludXgtZ251ZWFiaS9iaW4vYXIK QVJfRkxBR1MgPSByYwoKQ0MgPSAvaG9tZS9qdXBpL29wZW5lbWJlZGRlZC90bXAvd29yay94ODZf NjQtYXJtdjdhLWhhcmRmcC1zZGstb2UtbGludXgtZ251ZWFiaS9nY2MtY3Jvc3Mtc2RrLTQuNS1y MzMuMitzdm5yMTcwNDQzL2djYy00XzUtYnJhbmNoL2J1aWxkLng4Nl82NC1saW51eC5hcm0tb2Ut bGludXgtZ251ZWFiaS8uL2djYy94Z2NjIC1CL2hvbWUvanVwaS9vcGVuZW1iZWRkZWQvdG1wL3dv cmsveDg2XzY0LWFybXY3YS1oYXJkZnAtc2RrLW9lLWxpbnV4LWdudWVhYmkvZ2NjLWNyb3NzLXNk ay00LjUtcjMzLjIrc3ZucjE3MDQ0My9nY2MtNF81LWJyYW5jaC9idWlsZC54ODZfNjQtbGludXgu YXJtLW9lLWxpbnV4LWdudWVhYmkvLi9nY2MvIC0tc3lzcm9vdD0vaG9tZS9qdXBpL29wZW5lbWJl ZGRlZC90bXAvc3lzcm9vdHMvYXJtdjdhLWhhcmRmcC1vZS1saW51eC1nbnVlYWJpIC1CL3Vzci9s b2NhbC9pYmVydC9hcm0vYXJtLW9lLWxpbnV4LWdudWVhYmkvYmluLyAtQi91c3IvbG9jYWwvaWJl cnQvYXJtL2FybS1vZS1saW51eC1nbnVlYWJpL2xpYi8gLWlzeXN0ZW0gL3Vzci9sb2NhbC9pYmVy dC9hcm0vYXJtLW9lLWxpbnV4LWdudWVhYmkvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL2li ZXJ0L2FybS9hcm0tb2UtbGludXgtZ251ZWFiaS9zeXMtaW5jbHVkZSAtLXN5c3Jvb3Q9L2hvbWUv anVwaS9vcGVuZW1iZWRkZWQvdG1wL3N5c3Jvb3RzL2FybXY3YS1oYXJkZnAtb2UtbGludXgtZ251 ZWFiaSAgCkNGTEFHUyA9IC1nIC1PcwpSQU5MSUIgPSAvaG9tZS9qdXBpL29wZW5lbWJlZGRlZC90 bXAvc3lzcm9vdHMveDg2XzY0LWxpbnV4L3Vzci9hcm12N2EtaGFyZGZwL2FybS1vZS1saW51eC1n bnVlYWJpL2Jpbi9yYW5saWIKTE5fUyA9IGxuIC1zCgpQV0RfQ09NTUFORCA9ICQke1BXRENNRC1w d2R9CgojIEZsYWdzIHRvIHBhc3MgdG8gYSByZWN1cnNpdmUgbWFrZS4KRkxBR1NfVE9fUEFTUyA9 IFwKCSJBUj0kKEFSKSIgXAoJIkFSX0ZMQUdTPSQoQVJfRkxBR1MpIiBcCgkiQ0M9JChDQykiIFwK CSJDRkxBR1M9JChDRkxBR1MpIiBcCgkiREVTVERJUj0kKERFU1RESVIpIiBcCgkiRVhUUkFfT0ZJ TEVTPSQoRVhUUkFfT0ZJTEVTKSIgXAoJIkhERUZJTkVTPSQoSERFRklORVMpIiBcCgkiSU5TVEFM TD0kKElOU1RBTEwpIiBcCgkiSU5TVEFMTF9EQVRBPSQoSU5TVEFMTF9EQVRBKSIgXAoJIklOU1RB TExfUFJPR1JBTT0kKElOU1RBTExfUFJPR1JBTSkiIFwKCSJMREZMQUdTPSQoTERGTEFHUykiIFwK CSJMT0FETElCRVM9JChMT0FETElCRVMpIiBcCgkiUkFOTElCPSQoUkFOTElCKSIgXAoJIlNIRUxM PSQoU0hFTEwpIiBcCgkicHJlZml4PSQocHJlZml4KSIgXAoJImV4ZWNfcHJlZml4PSQoZXhlY19w cmVmaXgpIiBcCgkibGliZGlyPSQobGliZGlyKSIgXAoJImxpYnN1YmRpcj0kKGxpYnN1YmRpciki IFwKCSJ0b29sZGlyPSQodG9vbGRpcikiCgojIERlcGVuZGVuY2llcyBmb3IgImFsbCIgYXJlIHNl dCBsYXRlciBpbiB0aGUgZmlsZS4KYWxsOiBhbGwtbXVsdGkKCSMgTm93IHRoYXQgd2UgaGF2ZSBi dWlsdCBhbGwgdGhlIG9iamVjdHMsIHdlIG5lZWQgdG8gY29weQoJIyB0aGVtIGJhY2sgdG8gdGhl IEdDQyBkaXJlY3RvcnkuICBUb28gbWFueSB0aGluZ3MgKG90aGVyCgkjIGluLXRyZWUgbGlicmFy aWVzLCBhbmQgRGVqYUdOVSkga25vdyBhYm91dCB0aGUgbGF5b3V0CgkjIG9mIHRoZSBidWlsZCB0 cmVlLCBmb3Igbm93LgoJJChNQUtFKSBpbnN0YWxsLWxlYWYgREVTVERJUj0kKGdjY19vYmpkaXIp IFwKCSAgc2xpYmRpcj0gbGlic3ViZGlyPSBNVUxUSU9TRElSPSQoTVVMVElESVIpCgouUEhPTlk6 IGFsbC1tdWx0aQphbGwtbXVsdGk6CgkjIElmIHRoaXMgaXMgdGhlIHRvcC1sZXZlbCBtdWx0aWxp YiwgYnVpbGQgYWxsIHRoZSBvdGhlcgoJIyBtdWx0aWxpYnMuCglAOiAkKE1BS0UpIDsgZXhlYyAk KE1VTFRJRE8pICQoRkxBR1NfVE9fUEFTUykgbXVsdGktZG8gRE89YWxsCgouUEhPTlk6IGNoZWNr IGluc3RhbGxjaGVjawpjaGVjazoKaW5zdGFsbGNoZWNrOgoKLlBIT05ZOiBhbGwgY2xlYW4KCmNs ZWFuOgoJLXJtIC1mIGNvbmZpZy5oIHN0YW1wLWggc3RtcC1sZGlycyBsaWJnY2MubWFwCgktcm0g LWYgKiQob2JqZXh0KQoJLXJtIC1mICouZGVwCgktcm0gLWYgKi5hCgktcm0gLWYgbGlidW53aW5k JChTSExJQl9FWFQpCgktcm0gLWYgbGliZ2NjX3MqCglAJChNVUxUSUNMRUFOKSBtdWx0aS1jbGVh biBETz1jbGVhbgpkaXN0Y2xlYW46IGNsZWFuCglAJChNVUxUSUNMRUFOKSBtdWx0aS1jbGVhbiBE Tz1kaXN0Y2xlYW4KCS1ybSAtZiAqfiBNYWtlZmlsZSBjb25maWcuY2FjaGUgY29uZmlnLnN0YXR1 cyBtdWx0aWxpYi5vdXQKCS1ybSAtZiBjb25maWcubG9nCm1haW50YWluZXItY2xlYW4gcmVhbGNs ZWFuOiBkaXN0Y2xlYW4KCk1ha2VmaWxlOiAkKHNyY2RpcikvTWFrZWZpbGUuaW4gY29uZmlnLnN0 YXR1cwoJQ09ORklHX0ZJTEVTPU1ha2VmaWxlIENPTkZJR19IRUFERVJTPSAkKFNIRUxMKSAuL2Nv bmZpZy5zdGF0dXMKCiMgRGVwZW5kaW5nIG9uIE1ha2VmaWxlIG1ha2VzIHN1cmUgdGhhdCBjb25m aWcuc3RhdHVzIGhhcyBiZWVuIHJlLXJ1bgojIGlmIG5lZWRlZC4gIFRoaXMgcHJldmVudHMgcHJv YmxlbXMgd2l0aCBwYXJhbGxlbCBidWlsZHMuCmNvbmZpZy5oOiBzdGFtcC1oIDsgQHRydWUKc3Rh bXAtaDogJChzcmNkaXIpL2NvbmZpZy5pbiBjb25maWcuc3RhdHVzIE1ha2VmaWxlCglDT05GSUdf RklMRVM9IENPTkZJR19IRUFERVJTPWNvbmZpZy5oOiQoc3JjZGlyKS9jb25maWcuaW4gJChTSEVM TCkgLi9jb25maWcuc3RhdHVzCgpjb25maWcuc3RhdHVzOiAkKHNyY2RpcikvY29uZmlndXJlICQo c3JjZGlyKS9jb25maWcuaG9zdAoJJChTSEVMTCkgLi9jb25maWcuc3RhdHVzIC0tcmVjaGVjawoK QVVUT0NPTkYgPSBhdXRvY29uZgpjb25maWd1cmVfZGVwcyA9IFwKCSQoc3JjZGlyKS8uLi9jb25m aWcvZW5hYmxlLm00IFwKCSQoc3JjZGlyKS8uLi9jb25maWcvdGxzLm00IFwKCSQoc3JjZGlyKS8u Li9jb25maWcvYWN4Lm00IFwKCSQoc3JjZGlyKS8uLi9jb25maWcvbm8tZXhlY3V0YWJsZXMubTQg XAoJJChzcmNkaXIpLy4uL2NvbmZpZy9vdmVycmlkZS5tNCBcCgokKHNyY2RpcikvY29uZmlndXJl OiAjICQoc3JjZGlyKS9jb25maWd1cmUuYWMgJChjb25maWd1cmVfZGVwcykKCWNkICQoc3JjZGly KSAmJiAkKEFVVE9DT05GKQoKaW5jbHVkZSAkKGdjY19vYmpkaXIpL2xpYmdjYy5tdmFycwoKIyBG bGFncyB0byBwYXNzIHRvIHJlY3Vyc2l2ZSBtYWtlcy4KCkFSX0ZPUl9UQVJHRVQgPSAkKEFSKQpB Ul9GTEFHU19GT1JfVEFSR0VUID0KQVJfQ1JFQVRFX0ZPUl9UQVJHRVQgPSAkKEFSX0ZPUl9UQVJH RVQpICQoQVJfRkxBR1NfRk9SX1RBUkdFVCkgcmMKQVJfRVhUUkFDVF9GT1JfVEFSR0VUID0gJChB Ul9GT1JfVEFSR0VUKSAkKEFSX0ZMQUdTX0ZPUl9UQVJHRVQpIHgKQVdLID0gZ2F3awpHQ0NfRk9S X1RBUkdFVCA9ICQoQ0MpCkxJUE8gPSAvaG9tZS9qdXBpL29wZW5lbWJlZGRlZC90bXAvc3lzcm9v dHMveDg2XzY0LWxpbnV4L3Vzci9hcm12N2EtaGFyZGZwL2FybS1vZS1saW51eC1nbnVlYWJpL2Jp bi9saXBvCkxJUE9fRk9SX1RBUkdFVCA9ICQoTElQTykKTUFDSE1PREVfSCA9IG1hY2htb2RlLmgg bW9kZS1jbGFzc2VzLmRlZiBpbnNuLW1vZGVzLmgKTk0gPSAvaG9tZS9qdXBpL29wZW5lbWJlZGRl ZC90bXAvd29yay94ODZfNjQtYXJtdjdhLWhhcmRmcC1zZGstb2UtbGludXgtZ251ZWFiaS9nY2Mt Y3Jvc3Mtc2RrLTQuNS1yMzMuMitzdm5yMTcwNDQzL2djYy00XzUtYnJhbmNoL2J1aWxkLng4Nl82 NC1saW51eC5hcm0tb2UtbGludXgtZ251ZWFiaS8uL2djYy9ubQpOTV9GT1JfVEFSR0VUID0gJChO TSkKUkFOTElCX0ZPUl9UQVJHRVQgPSAkKFJBTkxJQikKU1RSSVAgPSAvaG9tZS9qdXBpL29wZW5l bWJlZGRlZC90bXAvc3lzcm9vdHMveDg2XzY0LWxpbnV4L3Vzci9hcm12N2EtaGFyZGZwL2FybS1v ZS1saW51eC1nbnVlYWJpL2Jpbi9zdHJpcApTVFJJUF9GT1JfVEFSR0VUID0gJChTVFJJUCkKCiMg RGlyZWN0b3J5IGluIHdoaWNoIHRoZSBjb21waWxlciBmaW5kcyBsaWJyYXJpZXMgZXRjLgpsaWJz dWJkaXIgPSAkKGxpYmRpcikvZ2NjLyQoaG9zdF9ub25jYW5vbmljYWwpLyQodmVyc2lvbikKIyBV c2VkIHRvIGluc3RhbGwgdGhlIHNoYXJlZCBsaWJnY2MuCnNsaWJkaXIgPSAkKGV4ZWNfcHJlZml4 KS8kKGhvc3Rfbm9uY2Fub25pY2FsKS9saWIKCmV4cG9ydCBBUl9GT1JfVEFSR0VUCmV4cG9ydCBB Ul9DUkVBVEVfRk9SX1RBUkdFVApleHBvcnQgQVJfRkxBR1NfRk9SX1RBUkdFVApleHBvcnQgQVJf RVhUUkFDVF9GT1JfVEFSR0VUCmV4cG9ydCBBV0sKZXhwb3J0IERFU1RESVIKZXhwb3J0IEdDQ19G T1JfVEFSR0VUCmV4cG9ydCBJTkNMVURFUwpleHBvcnQgSU5TVEFMTF9EQVRBCmV4cG9ydCBMSUIx QVNNU1JDCmV4cG9ydCBMSUJHQ0MyX0NGTEFHUwpleHBvcnQgTElQT19GT1JfVEFSR0VUCmV4cG9y dCBNQUNITU9ERV9ICmV4cG9ydCBOTV9GT1JfVEFSR0VUCmV4cG9ydCBTVFJJUF9GT1JfVEFSR0VU CmV4cG9ydCBSQU5MSUJfRk9SX1RBUkdFVApleHBvcnQgbGlic3ViZGlyCmV4cG9ydCBzbGliZGly Cgp2ZXJzaW9uIDo9ICQoc2hlbGwgJChDQykgLWR1bXB2ZXJzaW9uKQoKaWZlcSAoJChkZWNpbWFs X2Zsb2F0KSx5ZXMpCmlmZXEgKCQoZW5hYmxlX2RlY2ltYWxfZmxvYXQpLGJpZCkKREVDTlVNSU5D ID0gLUkkKHNyY2RpcikvY29uZmlnL2xpYmJpZCAtREVOQUJMRV9ERUNJTUFMX0JJRF9GT1JNQVQK ZWxzZQpERUNOVU1JTkMgPSAtSSQoc3JjZGlyKS8uLi9saWJkZWNudW1iZXIvJChlbmFibGVfZGVj aW1hbF9mbG9hdCkgXAoJICAgIC1JJChzcmNkaXIpLy4uL2xpYmRlY251bWJlcgplbmRpZgplbHNl CkRFQ05VTUlOQyA9CmVuZGlmCgojIFNwZWNpZnkgdGhlIGRpcmVjdG9yaWVzIHRvIGJlIHNlYXJj aGVkIGZvciBoZWFkZXIgZmlsZXMuCiMgQm90aCAuIGFuZCBzcmNkaXIgYXJlIHVzZWQsIGluIHRo YXQgb3JkZXIsCiMgc28gdGhhdCAqY29uZmlnLmggd2lsbCBiZSBmb3VuZCBpbiB0aGUgY29tcGls YXRpb24KIyBzdWJkaXJlY3RvcnkgcmF0aGVyIHRoYW4gaW4gdGhlIHNvdXJjZSBkaXJlY3Rvcnku CiMgLUkkKEBEKSBhbmQgLUkkKHNyY2RpcikvJChARCkgY2F1c2UgdGhlIHN1YmRpcmVjdG9yeSBv ZiB0aGUgZmlsZQojIGN1cnJlbnRseSBiZWluZyBjb21waWxlZCwgaW4gYm90aCBzb3VyY2UgdHJl ZXMsIHRvIGJlIGV4YW1pbmVkIGFzIHdlbGwuCklOQ0xVREVTID0gLUkuIC1JJChARCkgLUkkKGdj Y19vYmpkaXIpIFwKCSAgIC1JJChzcmNkaXIpIC1JJChzcmNkaXIpLyQoQEQpIC1JJChzcmNkaXIp Ly4uL2djYyBcCgkgICAtSSQoc3JjZGlyKS8uLi9pbmNsdWRlICQoREVDTlVNSU5DKQoKIyBGb3Jj aWJseSByZW1vdmUgYW55IHByb2ZpbGluZy1yZWxhdGVkIGZsYWdzLiAgVGhlcmUgaXMgbm8gcG9p bnQKIyBpbiBzdXBwb3J0aW5nIHByb2ZpbGVkIGJvb3RzdHJhcCBpbiB0aGlzIGxpYnJhcnkuCm92 ZXJyaWRlIENGTEFHUyA6PSAkKGZpbHRlci1vdXQgLWZwcm9maWxlLWdlbmVyYXRlIC1mcHJvZmls ZS11c2UsJChDRkxBR1MpKQoKIyBDRkxBR1MgZmlyc3QgaXMgbm90IHBlcmZlY3Q7IG5vcm1hbGx5 IHNldHRpbmcgQ0ZMQUdTIHNob3VsZCBvdmVycmlkZSBhbnkKIyBvcHRpb25zIGluIExJQkdDQzJf Q0ZMQUdTLiAgQnV0IExJQkdDQzJfQ0ZMQUdTIG1heSBjb250YWluIC1nMCwgYW5kIENGTEFHUwoj IHdpbGwgdXN1YWxseSBjb250YWluIC1nLCBzbyBmb3IgdGhlIG1vbWVudCBDRkxBR1MgZ29lcyBm aXJzdC4gIFdlIG11c3QKIyBpbmNsdWRlIENGTEFHUyAtIHRoYXQncyB3aGVyZSBtdWx0aWxpYiBv cHRpb25zIGxpdmUuCklOVEVSTkFMX0NGTEFHUyA9ICQoQ0ZMQUdTKSAkKExJQkdDQzJfQ0ZMQUdT KSAkKEhPU1RfTElCR0NDMl9DRkxBR1MpIFwKCQkgICQoSU5DTFVERVMpIC1ESEFWRV9DQ19UTFMg CgpNVUxUSURJUiA6PSAkKHNoZWxsICQoQ0MpICQoQ0ZMQUdTKSAtcHJpbnQtbXVsdGktZGlyZWN0 b3J5KQpNVUxUSU9TRElSIDo9ICQoc2hlbGwgJChDQykgJChDRkxBR1MpIC1wcmludC1tdWx0aS1v cy1kaXJlY3RvcnkpCgpNVUxUSU9TU1VCRElSIDo9ICQoc2hlbGwgaWYgdGVzdCAkKE1VTFRJT1NE SVIpICE9IC47IHRoZW4gZWNobyAvJChNVUxUSU9TRElSKTsgZmkpCmluc3RfbGliZGlyID0gJChs aWJzdWJkaXIpJChNVUxUSVNVQkRJUikKaW5zdF9zbGliZGlyID0gJChzbGliZGlyKSQoTVVMVElP U1NVQkRJUikKCmdjY19jb21waWxlX2JhcmUgPSAkKENDKSAkKElOVEVSTkFMX0NGTEFHUykKY29t cGlsZV9kZXBzID0gLU1UICRAIC1NRCAtTVAgLU1GICQoYmFzZW5hbWUgJEApLmRlcApnY2NfY29t cGlsZSA9ICQoZ2NjX2NvbXBpbGVfYmFyZSkgLW8gJEAgJChjb21waWxlX2RlcHMpCmdjY19zX2Nv bXBpbGUgPSAkKGdjY19jb21waWxlKSAtRFNIQVJFRAoKb2JqZWN0cyA9ICQoZmlsdGVyICUkKG9i amV4dCksJF4pCgojIENvbGxlY3QgYW55IGhvc3Qtc3BlY2lmaWMgaW5mb3JtYXRpb24gZnJvbSBN YWtlZmlsZSBmcmFnbWVudHMuCnRtYWtlX2ZpbGUgPSAgJChzcmNkaXIpL2NvbmZpZy9hcm0vdC1k aXZtb2QtZWYKaW5jbHVkZSAkKHNyY2RpcikvZW1wdHkubWsgJCh0bWFrZV9maWxlKQoKIyBPbmx5 IGhhbmRsZSBzaGFyZWQgbGlicmFyaWVzIGlmIGJvdGg6CiMgICAtIHRoZSB1c2VyIHJlcXVlc3Rl ZCB0aGVtCiMgICAtIHdlIGtub3cgaG93IHRvIGJ1aWxkIHRoZW0KaWZlcSAoJChTSExJQl9MSU5L KSwpCiAgZW5hYmxlX3NoYXJlZCA6PSBubwplbmRpZgoKaWZlcSAoJChlbmFibGVfc2hhcmVkKSx5 ZXMpCiAgaXRlcmF0b3IgPSAkKHNyY2RpcikvZW1wdHkubWsgJChwYXRzdWJzdCAlLCQoc3JjZGly KS9zaGFyZWQtb2JqZWN0Lm1rLCQoaXRlci1pdGVtcykpCgogIGluc3RhbGwtc2hhcmVkID0gaW5z dGFsbC1zaGFyZWQKCiAgaWZuZXEgKCQoTElCVU5XSU5EKSwpCiAgICBpbnN0YWxsLWxpYnVud2lu ZCA9IGluc3RhbGwtbGlidW53aW5kCiAgZW5kaWYKCiMgRm9yIC1mdmlzaWJpbGl0eT1oaWRkZW4u ICBXZSBuZWVkIGJvdGggYSAtZnZpc2liaWxpdHk9aGlkZGVuIG9uCiMgdGhlIGNvbW1hbmQgbGlu ZSwgYW5kIGEgI2RlZmluZSB0byBwcmV2ZW50IGxpYmdjYzIuaCBldGMgZnJvbQojIG92ZXJyaWRp bmcgdGhhdCB3aXRoICNwcmFnbWFzLgp2aXNfaGlkZSA9IC1mdmlzaWJpbGl0eT1oaWRkZW4gLURI SURFX0VYUE9SVFMKCmlmbmVxICgsJCh2aXNfaGlkZSkpCgojIElmIHdlIGhhdmUgLWZ2aXNpYmls aXR5PWhpZGRlbiwgdGhlbiB3ZSBuZWVkIHRvIGdlbmVyYXRlIGhpZGUKIyBsaXN0cyBmb3Igb2Jq ZWN0IGZpbGVzIGltcGxlbWVudGVkIGluIGFzc2VtYmx5LgpBU01fSElEREVOX09QID0gLmhpZGRl bgoKZGVmaW5lIGdlbi1oaWRlLWxpc3QKJChOTSkgLXBnICQ8IHwgXAogICQoQVdLKSAnTkYgPT0g MyAmJiAkJDIgIX4gL15bVU5dJCQvICYmICQkMyAhfiAvLipfY29tcGF0LyBcCiAgICAgICAgICYm ICQkMyAhfiAvLipALiovIFwKCSB7IHByaW50ICJcdCQoQVNNX0hJRERFTl9PUCkiLCAkJDMgfScg PiAkQFQKbXYgLWYgJEBUICRACmVuZGVmCmVsc2UKZ2VuLWhpZGUtbGlzdCA9IGVjaG8gPiAkQApl bmRpZgoKZWxzZQojIE5vdCBlbmFibGVfc2hhcmVkLgppdGVyYXRvciA9ICQoc3JjZGlyKS9lbXB0 eS5tayAkKHBhdHN1YnN0ICUsJChzcmNkaXIpL3N0YXRpYy1vYmplY3QubWssJChpdGVyLWl0ZW1z KSkKdmlzX2hpZGUgPQpnZW4taGlkZS1saXN0ID0gZWNobyA+IFwkQAplbmRpZgoKaWZuZXEgKCQo RVhUUkFfUEFSVFMpLCkKICBleHRyYS1wYXJ0cyA9IGxpYmdjYy1leHRyYS1wYXJ0cwogIElOU1RB TExfUEFSVFMgPSAkKEVYVFJBX1BBUlRTKQplbHNlCmlmbmVxICgkKEdDQ19FWFRSQV9QQVJUUyks KQogIGV4dHJhLXBhcnRzID0gZ2NjLWV4dHJhLXBhcnRzCiAgSU5TVEFMTF9QQVJUUyA9ICQoR0ND X0VYVFJBX1BBUlRTKQplbmRpZgplbmRpZgoKIyBMaWJyYXJ5IG1lbWJlcnMgZGVmaW5lZCBpbiBs aWJnY2MyLmMuCmxpYjJmdW5jcyA9IF9tdWxkaTMgX25lZ2RpMiBfbHNocmRpMyBfYXNobGRpMyBf YXNocmRpMyBfY21wZGkyIF91Y21wZGkyCSAgIFwKCSAgICBfY2xlYXJfY2FjaGUgX2VuYWJsZV9l eGVjdXRlX3N0YWNrIF90cmFtcG9saW5lIF9fbWFpbiBfYWJzdnNpMiBcCgkgICAgX2Fic3ZkaTIg X2FkZHZzaTMgX2FkZHZkaTMgX3N1YnZzaTMgX3N1YnZkaTMgX211bHZzaTMgX211bHZkaTMgXAoJ ICAgIF9uZWd2c2kyIF9uZWd2ZGkyIF9jdG9ycyBfZmZzc2kyIF9mZnNkaTIgX2NseiBfY2x6c2ky IF9jbHpkaTIgIFwKCSAgICBfY3R6c2kyIF9jdHpkaTIgX3BvcGNvdW50X3RhYiBfcG9wY291bnRz aTIgX3BvcGNvdW50ZGkyCSAgIFwKCSAgICBfcGFyaXR5c2kyIF9wYXJpdHlkaTIgX3Bvd2lzZjIg X3Bvd2lkZjIgX3Bvd2l4ZjIgX3Bvd2l0ZjIJICAgXAoJICAgIF9tdWxzYzMgX211bGRjMyBfbXVs eGMzIF9tdWx0YzMgX2RpdnNjMyBfZGl2ZGMzIF9kaXZ4YzMJICAgXAoJICAgIF9kaXZ0YzMgX2Jz d2Fwc2kyIF9ic3dhcGRpMgoKIyBUaGUgZmxvYXRpbmctcG9pbnQgY29udmVyc2lvbiByb3V0aW5l cyB0aGF0IGludm9sdmUgYSBzaW5nbGUtd29yZCBpbnRlZ2VyLgojIFhYIHN0YW5kcyBmb3IgdGhl IGludGVnZXIgbW9kZS4Kc3dmbG9hdGZ1bmNzID0gJChwYXRzdWJzdCAlLF9maXh1bnMlWFgsc2Yg ZGYgeGYpCgojIExpa2V3aXNlIGRvdWJsZS13b3JkIHJvdXRpbmVzLgpkd2Zsb2F0ZnVuY3MgPSAk KHBhdHN1YnN0ICUsX2ZpeCVYWCxzZiBkZiB4ZiB0ZikgXAoJICAgICAgICQocGF0c3Vic3QgJSxf Zml4dW5zJVhYLHNmIGRmIHhmIHRmKSBcCgkgICAgICAgJChwYXRzdWJzdCAlLF9mbG9hdFhYJSxz ZiBkZiB4ZiB0ZikgXAoJICAgICAgICQocGF0c3Vic3QgJSxfZmxvYXR1blhYJSxzZiBkZiB4ZiB0 ZikKCmlmZXEgKCQoTElCMl9TSURJVElfQ09OVl9GVU5DUyksKQogIGxpYjJmdW5jcyArPSAkKHN1 YnN0IFhYLHNpLCQoc3dmbG9hdGZ1bmNzKSkKICBsaWIyZnVuY3MgKz0gJChzdWJzdCBYWCxkaSwk KGR3ZmxvYXRmdW5jcykpCmVuZGlmCgojIFRoZXNlIG1pZ2h0IGNhdXNlIGEgZGl2aWRlIG92ZXJm bG93IHRyYXAgYW5kIHNvIGFyZSBjb21waWxlZCB3aXRoCiMgdW53aW5kZXIgaW5mby4KTElCMl9E SVZNT0RfRlVOQ1MgPSBfZGl2ZGkzIF9tb2RkaTMgX3VkaXZkaTMgX3Vtb2RkaTMgX3VkaXZfd19z ZGl2IF91ZGl2bW9kZGk0CgojIFJlbW92ZSBhbnkgb2JqZWN0cyBmcm9tIGxpYjJmdW5jcyBhbmQg TElCMl9ESVZNT0RfRlVOQ1MgdGhhdCBhcmUKIyBkZWZpbmVkIGFzIG9wdGltaXplZCBhc3NlbWJs eSBjb2RlIGluIExJQjFBU01GVU5DUyBvciBhcyBDIGNvZGUKIyBpbiBMSUIyRlVOQ1NfRVhDTFVE RS4KbGliMmZ1bmNzIDo9ICQoZmlsdGVyLW91dCAkKExJQjJGVU5DU19FWENMVURFKSAkKExJQjFB U01GVU5DUyksJChsaWIyZnVuY3MpKQpMSUIyX0RJVk1PRF9GVU5DUyA6PSAkKGZpbHRlci1vdXQg JChMSUIyRlVOQ1NfRVhDTFVERSkgJChMSUIxQVNNRlVOQ1MpLCBcCgkJICAgICAgICQoTElCMl9E SVZNT0RfRlVOQ1MpKQoKIyBCdWlsZCAibGliZ2NjMSIgKGFzc2VtYmx5KSBjb21wb25lbnRzLgpp ZmVxICgkKGVuYWJsZV9zaGFyZWQpLHllcykKCmxpYjFhc21mdW5jcy1vID0gJChwYXRzdWJzdCAl LCUkKG9iamV4dCksJChMSUIxQVNNRlVOQ1MpKQokKGxpYjFhc21mdW5jcy1vKTogJSQob2JqZXh0 KTogJChnY2Nfc3JjZGlyKS9jb25maWcvJChMSUIxQVNNU1JDKSAlLnZpcwoJJChnY2NfY29tcGls ZSkgLURMJCogLXhhc3NlbWJsZXItd2l0aC1jcHAgXAoJICAtYyAkKGdjY19zcmNkaXIpL2NvbmZp Zy8kKExJQjFBU01TUkMpIC1pbmNsdWRlICQqLnZpcwokKHBhdHN1YnN0ICUsJS52aXMsJChMSUIx QVNNRlVOQ1MpKTogJS52aXM6ICVfcyQob2JqZXh0KQoJJChnZW4taGlkZS1saXN0KQpsaWJnY2Mt b2JqZWN0cyArPSAkKGxpYjFhc21mdW5jcy1vKQoKbGliMWFzbWZ1bmNzLXMtbyA9ICQocGF0c3Vi c3QgJSwlX3MkKG9iamV4dCksJChMSUIxQVNNRlVOQ1MpKQokKGxpYjFhc21mdW5jcy1zLW8pOiAl X3MkKG9iamV4dCk6ICQoZ2NjX3NyY2RpcikvY29uZmlnLyQoTElCMUFTTVNSQykKCSQoZ2NjX3Nf Y29tcGlsZSkgLURMJCogLXhhc3NlbWJsZXItd2l0aC1jcHAgXAoJICAtYyAkKGdjY19zcmNkaXIp L2NvbmZpZy8kKExJQjFBU01TUkMpCmxpYmdjYy1zLW9iamVjdHMgKz0gJChsaWIxYXNtZnVuY3Mt cy1vKQoKZWxzZQoKbGliMWFzbWZ1bmNzLW8gPSAkKHBhdHN1YnN0ICUsJSQob2JqZXh0KSwkKExJ QjFBU01GVU5DUykpCiQobGliMWFzbWZ1bmNzLW8pOiAlJChvYmpleHQpOiAkKGdjY19zcmNkaXIp L2NvbmZpZy8kKExJQjFBU01TUkMpCgkkKGdjY19jb21waWxlKSAtREwkKiAteGFzc2VtYmxlci13 aXRoLWNwcCBcCgkgIC1jICQoZ2NjX3NyY2RpcikvY29uZmlnLyQoTElCMUFTTVNSQykKbGliZ2Nj LW9iamVjdHMgKz0gJChsaWIxYXNtZnVuY3MtbykKCmVuZGlmCgojIEJ1aWxkIGxpYjJmdW5jcy4g IEZvciB0aGUgc3RhdGljIGxpYnJhcnkgYWxzbyBpbmNsdWRlIExJQjJGVU5DU19TVC4KbGliMmZ1 bmNzLW8gPSAkKHBhdHN1YnN0ICUsJSQob2JqZXh0KSwkKGxpYjJmdW5jcykgJChMSUIyRlVOQ1Nf U1QpKQokKGxpYjJmdW5jcy1vKTogJSQob2JqZXh0KTogJChnY2Nfc3JjZGlyKS9saWJnY2MyLmMK CSQoZ2NjX2NvbXBpbGUpIC1ETCQqIC1jICQoZ2NjX3NyY2RpcikvbGliZ2NjMi5jIFwKCSAgJCh2 aXNfaGlkZSkKbGliZ2NjLW9iamVjdHMgKz0gJChsaWIyZnVuY3MtbykKCmlmZXEgKCQoZW5hYmxl X3NoYXJlZCkseWVzKQpsaWIyZnVuY3Mtcy1vID0gJChwYXRzdWJzdCAlLCVfcyQob2JqZXh0KSwk KGxpYjJmdW5jcykpCiQobGliMmZ1bmNzLXMtbyk6ICVfcyQob2JqZXh0KTogJChnY2Nfc3JjZGly KS9saWJnY2MyLmMKCSQoZ2NjX3NfY29tcGlsZSkgLURMJCogLWMgJChnY2Nfc3JjZGlyKS9saWJn Y2MyLmMKbGliZ2NjLXMtb2JqZWN0cyArPSAkKGxpYjJmdW5jcy1zLW8pCmVuZGlmCgppZm5lcSAo JChMSUIyX1NJRElUSV9DT05WX0ZVTkNTKSwpCiMgQnVpbGQgbGliZ2NjMi5jIGZvciBlYWNoIGNv bnZlcnNpb24gZnVuY3Rpb24sIHdpdGggYSBzcGVjaWZpYwojIEw8ZnVuYz4gZGVmaW5pdGlvbiBh bmQgTElCR0NDMl9VTklUU19QRVJfV09SRCBzZXR0aW5nLiAgVGhlIERJbW9kZQojIGZ1bmN0aW9u cyBhcmUgYnVpbHQgd2l0aCBhIHdvcmRzaXplIG9mIDQ7IHRoZSBUSW1vZGUgZnVuY3Rpb25zIGFy ZQojIGJ1aWx0IHdpdGggdGhlIHNhbWUgbGFiZWxzLCBidXQgYSB3b3Jkc2l6ZSBvZiA4LgoKc2lm dW5jcyA9ICQoc3Vic3QgWFgsc2ksJChzd2Zsb2F0ZnVuY3MpKQpkaWZ1bmNzID0gJChzdWJzdCBY WCxkaSwkKGR3ZmxvYXRmdW5jcykpCnRpZnVuY3MgPSAkKHN1YnN0IFhYLHRpLCQoZHdmbG9hdGZ1 bmNzKSkKCml0ZXItaXRlbXMgOj0gJChzaWZ1bmNzKSAkKGRpZnVuY3MpICQodGlmdW5jcykKaXRl ci1sYWJlbHMgOj0gJChzaWZ1bmNzKSAkKGRpZnVuY3MpICQoZGlmdW5jcykKaXRlci1zaXplcyA6 PSAkKHBhdHN1YnN0ICUsNCwkKHNpZnVuY3MpICQoZGlmdW5jcykpICQocGF0c3Vic3QgJSw4LCQo dGlmdW5jcykpCgppbmNsdWRlICQoc3JjZGlyKS9lbXB0eS5tayAkKHBhdHN1YnN0ICUsJChzcmNk aXIpL3NpZGl0aS1vYmplY3QubWssJChpdGVyLWl0ZW1zKSkKCmxpYmdjYy1vYmplY3RzICs9ICQo cGF0c3Vic3QgJSwlJChvYmpleHQpLCQoc2lmdW5jcykgJChkaWZ1bmNzKSAkKHRpZnVuY3MpKQpp ZmVxICgkKGVuYWJsZV9zaGFyZWQpLHllcykKbGliZ2NjLXMtb2JqZWN0cyArPSAkKHBhdHN1YnN0 ICUsJV9zJChvYmpleHQpLCQoc2lmdW5jcykgJChkaWZ1bmNzKSAkKHRpZnVuY3MpKQplbmRpZgpl bmRpZgoKaWZlcSAoJChMSUIyX0RJVk1PRF9FWENFUFRJT05fRkxBR1MpLCkKIyBQcm92aWRlIGRl ZmF1bHQgZmxhZ3MgZm9yIGNvbXBpbGluZyBkaXZtb2QgZnVuY3Rpb25zLCBpZiB0aGV5IGhhdmVu J3QgYmVlbgojIHNldCBhbHJlYWR5IGJ5IGEgdGFyZ2V0LXNwZWNpZmljIE1ha2VmaWxlIGZyYWdt ZW50LgpMSUIyX0RJVk1PRF9FWENFUFRJT05fRkxBR1MgOj0gLWZleGNlcHRpb25zIC1mbm9uLWNh bGwtZXhjZXB0aW9ucwplbmRpZgoKIyBCdWlsZCBMSUIyX0RJVk1PRF9GVU5DUy4KbGliMi1kaXZt b2QtbyA9ICQocGF0c3Vic3QgJSwlJChvYmpleHQpLCQoTElCMl9ESVZNT0RfRlVOQ1MpKQokKGxp YjItZGl2bW9kLW8pOiAlJChvYmpleHQpOiAkKGdjY19zcmNkaXIpL2xpYmdjYzIuYwoJJChnY2Nf Y29tcGlsZSkgLURMJCogLWMgJChnY2Nfc3JjZGlyKS9saWJnY2MyLmMgXAoJICAkKExJQjJfRElW TU9EX0VYQ0VQVElPTl9GTEFHUykgJCh2aXNfaGlkZSkKbGliZ2NjLW9iamVjdHMgKz0gJChsaWIy LWRpdm1vZC1vKQoKaWZlcSAoJChlbmFibGVfc2hhcmVkKSx5ZXMpCmxpYjItZGl2bW9kLXMtbyA9 ICQocGF0c3Vic3QgJSwlX3MkKG9iamV4dCksJChMSUIyX0RJVk1PRF9GVU5DUykpCiQobGliMi1k aXZtb2Qtcy1vKTogJV9zJChvYmpleHQpOiAkKGdjY19zcmNkaXIpL2xpYmdjYzIuYwoJJChnY2Nf c19jb21waWxlKSAtREwkKiAtYyAkKGdjY19zcmNkaXIpL2xpYmdjYzIuYyBcCgkgICQoTElCMl9E SVZNT0RfRVhDRVBUSU9OX0ZMQUdTKQpsaWJnY2Mtcy1vYmplY3RzICs9ICQobGliMi1kaXZtb2Qt cy1vKQplbmRpZgoKIyAkKEZQQklUKSBldCBhbC4gYXJlIHBhdGhuYW1lcyByZWxhdGl2ZSB0byB0 aGUgR0NDIGJ1aWxkCiMgZGlyZWN0b3J5OyB0aGUgc3VwcG9ydGluZyBmaWxlcyBhcmUgbWFkZSBi eSB0aGUgR0NDCiMgTWFrZWZpbGUuCiMgRklYTUU6IFNvb24gd2Ugd2lsbCBiZSBhYmxlIHRvIG1v dmUgdGhpcyBsb2dpYyBpbnRvIHRoaXMgZGlyZWN0b3J5LgoKaWZuZXEgKCQoZnBiaXQtaW4tbGli Z2NjKSx5ZXMpCkZQQklUOj0kKGlmICQoRlBCSVQpLCQoZ2NjX29iamRpcikvJChGUEJJVCksKQpE UEJJVDo9JChpZiAkKERQQklUKSwkKGdjY19vYmpkaXIpLyQoRFBCSVQpLCkKVFBCSVQ6PSQoaWYg JChUUEJJVCksJChnY2Nfb2JqZGlyKS8kKFRQQklUKSwpCmVuZGlmCgppZmVxICgkKFRQQklUKSwp CiMgX3NmX3RvX3RmIGFuZCBfZGZfdG9fdGYgcmVxdWlyZSB0cC1iaXQuYyBiZWluZyBjb21waWxl ZCBpbi4KRlBCSVRfRlVOQ1MgOj0gJChmaWx0ZXItb3V0IF9zZl90b190ZiwkKEZQQklUX0ZVTkNT KSkKRFBCSVRfRlVOQ1MgOj0gJChmaWx0ZXItb3V0IF9kZl90b190ZiwkKERQQklUX0ZVTkNTKSkK ZW5kaWYKCiMgQnVpbGQgRlBCSVQuCmlmbmVxICgkKEZQQklUKSwpCmZwYml0LW8gPSAkKHBhdHN1 YnN0ICUsJSQob2JqZXh0KSwkKEZQQklUX0ZVTkNTKSkKJChmcGJpdC1vKTogJSQob2JqZXh0KTog JChGUEJJVCkKCSQoZ2NjX2NvbXBpbGUpIC1ERklORV9HUkFJTkVEX0xJQlJBUklFUyAtREwkKiAt YyAkKEZQQklUKSAkKHZpc19oaWRlKQpsaWJnY2Mtb2JqZWN0cyArPSAkKGZwYml0LW8pCgppZmVx ICgkKGVuYWJsZV9zaGFyZWQpLHllcykKZnBiaXQtcy1vID0gJChwYXRzdWJzdCAlLCVfcyQob2Jq ZXh0KSwkKEZQQklUX0ZVTkNTKSkKJChmcGJpdC1zLW8pOiAlX3MkKG9iamV4dCk6ICQoRlBCSVQp CgkkKGdjY19zX2NvbXBpbGUpIC1ERklORV9HUkFJTkVEX0xJQlJBUklFUyAtREwkKiAtYyAkKEZQ QklUKQpsaWJnY2Mtcy1vYmplY3RzICs9ICQoZnBiaXQtcy1vKQplbmRpZgplbmRpZgoKIyBCdWls ZCBEUEJJVC4KaWZuZXEgKCQoRFBCSVQpLCkKZHBiaXQtbyA9ICQocGF0c3Vic3QgJSwlJChvYmpl eHQpLCQoRFBCSVRfRlVOQ1MpKQokKGRwYml0LW8pOiAlJChvYmpleHQpOiAkKERQQklUKQoJJChn Y2NfY29tcGlsZSkgLURGSU5FX0dSQUlORURfTElCUkFSSUVTIC1ETCQqIC1jICQoRFBCSVQpICQo dmlzX2hpZGUpCmxpYmdjYy1vYmplY3RzICs9ICQoZHBiaXQtbykKCmlmZXEgKCQoZW5hYmxlX3No YXJlZCkseWVzKQpkcGJpdC1zLW8gPSAkKHBhdHN1YnN0ICUsJV9zJChvYmpleHQpLCQoRFBCSVRf RlVOQ1MpKQokKGRwYml0LXMtbyk6ICVfcyQob2JqZXh0KTogJChEUEJJVCkKCSQoZ2NjX3NfY29t cGlsZSkgLURGSU5FX0dSQUlORURfTElCUkFSSUVTIC1ETCQqIC1jICQoRFBCSVQpCmxpYmdjYy1z LW9iamVjdHMgKz0gJChkcGJpdC1zLW8pCmVuZGlmCmVuZGlmCgojIEJ1aWxkIFRQQklULgppZm5l cSAoJChUUEJJVCksKQp0cGJpdC1vID0gJChwYXRzdWJzdCAlLCUkKG9iamV4dCksJChUUEJJVF9G VU5DUykpCiQodHBiaXQtbyk6ICUkKG9iamV4dCk6ICQoVFBCSVQpCgkkKGdjY19jb21waWxlKSAt REZJTkVfR1JBSU5FRF9MSUJSQVJJRVMgLURMJCogLWMgJChUUEJJVCkgJCh2aXNfaGlkZSkKbGli Z2NjLW9iamVjdHMgKz0gJCh0cGJpdC1vKQoKaWZlcSAoJChlbmFibGVfc2hhcmVkKSx5ZXMpCnRw Yml0LXMtbyA9ICQocGF0c3Vic3QgJSwlX3MkKG9iamV4dCksJChUUEJJVF9GVU5DUykpCiQodHBi aXQtcy1vKTogJV9zJChvYmpleHQpOiAkKFRQQklUKQoJJChnY2Nfc19jb21waWxlKSAtREZJTkVf R1JBSU5FRF9MSUJSQVJJRVMgLURMJCogLWMgJChUUEJJVCkKbGliZ2NjLXMtb2JqZWN0cyArPSAk KHRwYml0LXMtbykKZW5kaWYKZW5kaWYKCiMgQnVpbGQgZGVjaW1hbCBmbG9hdGluZyBwb2ludCBz dXBwb3J0LgppZmVxICgkKGRlY2ltYWxfZmxvYXQpLHllcykKCiMgSWYgJERGUF9FTkFCTEUgaXMg c2V0LCB0aGVuIHdlIHdhbnQgYWxsIGRhdGEgdHlwZSBzaXplcy4KaWZuZXEgKCQoREZQX0VOQUJM RSksKQpEMzJQQklUID0gMQpENjRQQklUID0gMQpEMTI4UEJJVCA9IDEKZW5kaWYKCmRmcC1maWxl bmFtZXMgPQppZm5lcSAoJChEMzJQQklUKSQoRDY0UEJJVCkkKEQxMjhQQklUKSwpCmlmZXEgKCQo ZW5hYmxlX2RlY2ltYWxfZmxvYXQpLGJpZCkKZGZwLWZpbGVuYW1lcyArPSBiaWRfZGVjaW1hbF9n bG9iYWxzIGJpZF9kZWNpbWFsX2RhdGEgXAoJCSBiaWRfYmluYXJ5ZGVjaW1hbCBiaWRfY29udmVy dF9kYXRhIFwKCQkgX2lzaW5mZDMyIF9pc2luZmQ2NCBfaXNpbmZkMTI4IGJpZDY0X25vbmNvbXAg XAoJCSBiaWQxMjhfbm9uY29tcCBiaWQxMjhfZm1hIGJpZF9yb3VuZCBiaWRfZnJvbV9pbnQgXAoJ CSBiaWQ2NF9hZGQgYmlkMTI4X2FkZCBiaWQ2NF9kaXYgYmlkMTI4X2RpdiBcCgkJIGJpZDY0X211 bCBiaWQxMjhfbXVsIGJpZDY0X2NvbXBhcmUgYmlkMTI4X2NvbXBhcmUgXAoJCSBiaWQxMjggYmlk MzJfdG9fYmlkNjQgYmlkMzJfdG9fYmlkMTI4IGJpZDY0X3RvX2JpZDEyOCBcCgkJIGJpZDY0X3Rv X2ludDMyIGJpZDY0X3RvX2ludDY0IFwKCQkgYmlkNjRfdG9fdWludDMyIGJpZDY0X3RvX3VpbnQ2 NCBcCgkJIGJpZDEyOF90b19pbnQzMiBiaWQxMjhfdG9faW50NjQgXAoJCSBiaWQxMjhfdG9fdWlu dDMyIGJpZDEyOF90b191aW50NjQKZWxzZQpkZnAtZmlsZW5hbWVzICs9IGRlY0NvbnRleHQgZGVj TnVtYmVyIGRlY0V4Y2VwdCBkZWNSb3VuZCBkZWNMaWJyYXJ5IGRlY0RvdWJsZSBkZWNQYWNrZWQg ZGVjUXVhZCBkZWNTaW5nbGUKZW5kaWYKZW5kaWYKCmRmcC1vYmplY3RzID0gJChwYXRzdWJzdCAl LCUkKG9iamV4dCksJChkZnAtZmlsZW5hbWVzKSkKaWZlcSAoJChlbmFibGVfZGVjaW1hbF9mbG9h dCksYmlkKQokKGRmcC1vYmplY3RzKTogJSQob2JqZXh0KTogJChzcmNkaXIpL2NvbmZpZy9saWJi aWQvJS5jCmVsc2UKJChkZnAtb2JqZWN0cyk6ICUkKG9iamV4dCk6ICQoc3JjZGlyKS8uLi9saWJk ZWNudW1iZXIvJS5jCmVuZGlmCgkkKGdjY19jb21waWxlKSAtYyAkPApsaWJnY2Mtb2JqZWN0cyAr PSAkKGRmcC1vYmplY3RzKQoKZGVjYml0cy1maWxlbmFtZXMgPQppZm5lcSAoJChlbmFibGVfZGVj aW1hbF9mbG9hdCksYmlkKQppZm5lcSAoJChEMzJQQklUKSwpCmRlY2JpdHMtZmlsZW5hbWVzICs9 IGRlY2ltYWwzMgplbmRpZgoKaWZuZXEgKCQoRDY0UEJJVCksKQpkZWNiaXRzLWZpbGVuYW1lcyAr PSBkZWNpbWFsNjQKZW5kaWYKCmlmbmVxICgkKEQxMjhQQklUKSwpCmRlY2JpdHMtZmlsZW5hbWVz ICs9IGRlY2ltYWwxMjgKZW5kaWYKZW5kaWYKCmRlY2JpdHMtb2JqZWN0cyA9ICQocGF0c3Vic3Qg JSwlJChvYmpleHQpLCQoZGVjYml0cy1maWxlbmFtZXMpKQppZmVxICgkKGVuYWJsZV9kZWNpbWFs X2Zsb2F0KSxiaWQpCiQoZGVjYml0cy1vYmplY3RzKTogJSQob2JqZXh0KTogJChzcmNkaXIpL2Nv bmZpZy9saWJiaWQvJS5jCmVsc2UKJChkZWNiaXRzLW9iamVjdHMpOiAlJChvYmpleHQpOiAkKHNy Y2RpcikvLi4vbGliZGVjbnVtYmVyLyQoZW5hYmxlX2RlY2ltYWxfZmxvYXQpLyUuYwplbmRpZgoJ JChnY2NfY29tcGlsZSkgLWMgJDwKbGliZ2NjLW9iamVjdHMgKz0gJChkZWNiaXRzLW9iamVjdHMp CgojIE5leHQgYnVpbGQgaW5kaXZpZHVhbCBzdXBwb3J0IGZ1bmN0aW9ucy4KaWZlcSAoJChlbmFi bGVfZGVjaW1hbF9mbG9hdCksYmlkKQppZm5lcSAoJChEMzJQQklUKSwpCkQzMlBCSVRfRlVOQ1M6 PSQoZmlsdGVyLW91dCBfcGx1c19zZCBfbWludXNfc2QgX2NvbnZfc2QsICQoRDMyUEJJVF9GVU5D UykpCmVuZGlmCgppZm5lcSAoJChENjRQQklUKSwpCkQ2NFBCSVRfRlVOQ1M6PSQoZmlsdGVyLW91 dCBfcGx1c19kZCBfbWludXNfZGQgX2NvbnZfZGQsICQoRDY0UEJJVF9GVU5DUykpCmVuZGlmCgpp Zm5lcSAoJChEMTI4UEJJVCksKQpEMTI4UEJJVF9GVU5DUzo9JChmaWx0ZXItb3V0IF9wbHVzX3Rk IF9taW51c190ZCBfY29udl90ZCwgJChEMTI4UEJJVF9GVU5DUykpCmVuZGlmCmVuZGlmCgppZm5l cSAoJChEMzJQQklUKSwpCmQzMnBiaXQtbyA9ICQocGF0c3Vic3QgJSwlJChvYmpleHQpLCQoRDMy UEJJVF9GVU5DUykpCmlmZXEgKCQoZW5hYmxlX2RlY2ltYWxfZmxvYXQpLGJpZCkKJChkMzJwYml0 LW8pOiAlJChvYmpleHQpOiAkKHNyY2RpcikvY29uZmlnL2xpYmJpZC8lLmMKZWxzZQokKGQzMnBi aXQtbyk6ICUkKG9iamV4dCk6ICQoZ2NjX3NyY2RpcikvY29uZmlnL2RmcC1iaXQuYwplbmRpZgoJ JChnY2NfY29tcGlsZSkgLURGSU5FX0dSQUlORURfTElCUkFSSUVTIC1ETCQqIC1EV0lEVEg9MzIg LWMgJDwKbGliZ2NjLW9iamVjdHMgKz0gJChkMzJwYml0LW8pCmVuZGlmCgppZm5lcSAoJChENjRQ QklUKSwpCmQ2NHBiaXQtbyA9ICQocGF0c3Vic3QgJSwlJChvYmpleHQpLCQoRDY0UEJJVF9GVU5D UykpCmlmZXEgKCQoZW5hYmxlX2RlY2ltYWxfZmxvYXQpLGJpZCkKJChkNjRwYml0LW8pOiAlJChv YmpleHQpOiAkKHNyY2RpcikvY29uZmlnL2xpYmJpZC8lLmMKZWxzZQokKGQ2NHBiaXQtbyk6ICUk KG9iamV4dCk6ICQoZ2NjX3NyY2RpcikvY29uZmlnL2RmcC1iaXQuYwplbmRpZgoJJChnY2NfY29t cGlsZSkgLURGSU5FX0dSQUlORURfTElCUkFSSUVTIC1ETCQqIC1EV0lEVEg9NjQgLWMgJDwKbGli Z2NjLW9iamVjdHMgKz0gJChkNjRwYml0LW8pCmVuZGlmCgppZm5lcSAoJChEMTI4UEJJVCksKQpk MTI4cGJpdC1vID0gJChwYXRzdWJzdCAlLCUkKG9iamV4dCksJChEMTI4UEJJVF9GVU5DUykpCmlm ZXEgKCQoZW5hYmxlX2RlY2ltYWxfZmxvYXQpLGJpZCkKJChkMTI4cGJpdC1vKTogJSQob2JqZXh0 KTogJChzcmNkaXIpL2NvbmZpZy9saWJiaWQvJS5jCmVsc2UKJChkMTI4cGJpdC1vKTogJSQob2Jq ZXh0KTogJChnY2Nfc3JjZGlyKS9jb25maWcvZGZwLWJpdC5jCmVuZGlmCgkkKGdjY19jb21waWxl KSAtREZJTkVfR1JBSU5FRF9MSUJSQVJJRVMgLURMJCogLURXSURUSD0xMjggLWMgJDwKbGliZ2Nj LW9iamVjdHMgKz0gJChkMTI4cGJpdC1vKQplbmRpZgoKZW5kaWYKCmlmZXEgKCQoTElCR0NDX1NZ TkMpLHllcykKbGliZ2NjLXN5bmMtc2l6ZS1mdW5jcyA6PSAkKGZvcmVhY2ggb3AsIGFkZCBzdWIg b3IgYW5kIHhvciBuYW5kLCBcCgkJCSAgICBzeW5jX2ZldGNoX2FuZF8kKG9wKSBcCgkJCSAgICBz eW5jXyQob3ApX2FuZF9mZXRjaCkgXAoJCQkgIHN5bmNfYm9vbF9jb21wYXJlX2FuZF9zd2FwIFwK CQkJICBzeW5jX3ZhbF9jb21wYXJlX2FuZF9zd2FwIFwKCQkJICBzeW5jX2xvY2tfdGVzdF9hbmRf c2V0CgpsaWJnY2Mtc3luYy1zaXplLWZ1bmNzIDo9ICQoZm9yZWFjaCBwcmVmaXgsICQobGliZ2Nj LXN5bmMtc2l6ZS1mdW5jcyksIFwKCQkJICAgICQoZm9yZWFjaCBzdWZmaXgsIDEgMiA0IDggMTYs IFwKCQkJICAgICAgJChwcmVmaXgpXyQoc3VmZml4KSkpCgpsaWJnY2Mtc3luYy1zaXplLWZ1bmNz LW8gPSAkKHBhdHN1YnN0ICUsJSQob2JqZXh0KSwkKGxpYmdjYy1zeW5jLXNpemUtZnVuY3MpKQok KGxpYmdjYy1zeW5jLXNpemUtZnVuY3Mtbyk6ICUkKG9iamV4dCk6ICQoZ2NjX3NyY2RpcikvY29u ZmlnL3N5bmMuYwoJJChnY2NfY29tcGlsZSkgJChMSUJHQ0NfU1lOQ19DRkxBR1MpIFwKCSAgLURG Tj1gZWNobyAiJCoiIHwgc2VkICdzL19bXl9dKiQkLy8nYCBcCgkgIC1EU0laRT1gZWNobyAiJCoi IHwgc2VkICdzLy4qXy8vJ2AgXAoJICAtYyAkKGdjY19zcmNkaXIpL2NvbmZpZy9zeW5jLmMgJCh2 aXNfaGlkZSkKbGliZ2NjLW9iamVjdHMgKz0gJChsaWJnY2Mtc3luYy1zaXplLWZ1bmNzLW8pCgps aWJnY2Mtc3luYy1mdW5jcyA6PSBzeW5jX3N5bmNocm9uaXplCgpsaWJnY2Mtc3luYy1mdW5jcy1v ID0gJChwYXRzdWJzdCAlLCUkKG9iamV4dCksJChsaWJnY2Mtc3luYy1mdW5jcykpCiQobGliZ2Nj LXN5bmMtZnVuY3Mtbyk6ICUkKG9iamV4dCk6ICQoZ2NjX3NyY2RpcikvY29uZmlnL3N5bmMuYwoJ JChnY2NfY29tcGlsZSkgJChMSUJHQ0NfU1lOQ19DRkxBR1MpIFwKCSAgLURMJCogXAoJICAtYyAk KGdjY19zcmNkaXIpL2NvbmZpZy9zeW5jLmMgJCh2aXNfaGlkZSkKbGliZ2NjLW9iamVjdHMgKz0g JChsaWJnY2Mtc3luYy1mdW5jcy1vKQoKaWZlcSAoJChlbmFibGVfc2hhcmVkKSx5ZXMpCmxpYmdj Yy1zeW5jLXNpemUtZnVuY3Mtcy1vID0gJChwYXRzdWJzdCAlLCVfcyQob2JqZXh0KSwgXAoJCQkg ICAgICAgJChsaWJnY2Mtc3luYy1zaXplLWZ1bmNzKSkKJChsaWJnY2Mtc3luYy1zaXplLWZ1bmNz LXMtbyk6ICVfcyQob2JqZXh0KTogJChnY2Nfc3JjZGlyKS9jb25maWcvc3luYy5jCgkkKGdjY19z X2NvbXBpbGUpICQoTElCR0NDX1NZTkNfQ0ZMQUdTKSBcCgkgIC1ERk49YGVjaG8gIiQqIiB8IHNl ZCAncy9fW15fXSokJC8vJ2AgXAoJICAtRFNJWkU9YGVjaG8gIiQqIiB8IHNlZCAncy8uKl8vLydg IFwKCSAgLWMgJChnY2Nfc3JjZGlyKS9jb25maWcvc3luYy5jCmxpYmdjYy1zLW9iamVjdHMgKz0g JChsaWJnY2Mtc3luYy1zaXplLWZ1bmNzLXMtbykKCmxpYmdjYy1zeW5jLWZ1bmNzLXMtbyA9ICQo cGF0c3Vic3QgJSwlX3MkKG9iamV4dCksJChsaWJnY2Mtc3luYy1mdW5jcykpCiQobGliZ2NjLXN5 bmMtZnVuY3Mtcy1vKTogJV9zJChvYmpleHQpOiAkKGdjY19zcmNkaXIpL2NvbmZpZy9zeW5jLmMK CSQoZ2NjX3NfY29tcGlsZSkgJChMSUJHQ0NfU1lOQ19DRkxBR1MpIFwKCSAgLURMJCoJXAoJICAt YyAkKGdjY19zcmNkaXIpL2NvbmZpZy9zeW5jLmMKbGliZ2NjLXMtb2JqZWN0cyArPSAkKGxpYmdj Yy1zeW5jLWZ1bmNzLXMtbykKZW5kaWYKZW5kaWYKCiMgQnVpbGQgZml4ZWQtcG9pbnQgc3VwcG9y dC4KaWZlcSAoJChmaXhlZF9wb2ludCkseWVzKQoKIyBHZW5lcmF0ZSBwZXJtdXRhdGlvbnMgb2Yg ZnVuY3Rpb24gbmFtZSBhbmQgbW9kZQpmaXhlZC1sYWJlbHMgOj0gJChzaGVsbCAkKFNIRUxMKSAk KHNyY2RpcikvZ2VuLWZpeGVkLnNoIGFyaXRoIGxhYmVscykKZml4ZWQtZnVuY3MgOj0gJChzaGVs bCAkKFNIRUxMKSAkKHNyY2RpcikvZ2VuLWZpeGVkLnNoIGFyaXRoIGZ1bmNzKQpmaXhlZC1tb2Rl cyA6PSAkKHNoZWxsICQoU0hFTEwpICQoc3JjZGlyKS9nZW4tZml4ZWQuc2ggYXJpdGggbW9kZXMp CgojIEdlbmVyYXRlIHRoZSBydWxlcyBmb3IgZWFjaCBhcml0aG1ldGljIGZ1bmN0aW9uCml0ZXIt aXRlbXMgOj0gJChmaXhlZC1mdW5jcykKaXRlci1sYWJlbHMgOj0gJChmaXhlZC1sYWJlbHMpCml0 ZXItZnJvbSA6PSAkKGZpeGVkLW1vZGVzKQppdGVyLXRvIDo9ICQoZml4ZWQtbW9kZXMpCmluY2x1 ZGUgJChzcmNkaXIpL2VtcHR5Lm1rICQocGF0c3Vic3QgJSwkKHNyY2RpcikvZml4ZWQtb2JqLm1r LCQoaXRlci1pdGVtcykpCgojIEFkZCBhcml0aG1ldGljIGZ1bmN0aW9ucyB0byBsaXN0IG9mIG9i amVjdHMgdG8gYmUgYnVpbHQKbGliZ2NjLW9iamVjdHMgKz0gJChwYXRzdWJzdCAlLCUkKG9iamV4 dCksJChmaXhlZC1mdW5jcykpCmlmZXEgKCQoZW5hYmxlX3NoYXJlZCkseWVzKQpsaWJnY2Mtcy1v YmplY3RzICs9ICQocGF0c3Vic3QgJSwlX3MkKG9iamV4dCksJChmaXhlZC1mdW5jcykpCmVuZGlm CgojIENvbnZlcnQgZnJvbSBvciB0byBmcmFjdGlvbmFsCmZpeGVkLWNvbnYtZnVuY3MgOj0gJChz aGVsbCAkKFNIRUxMKSAkKHNyY2RpcikvZ2VuLWZpeGVkLnNoIGNvbnYgZnVuY3MpCmZpeGVkLWNv bnYtbGFiZWxzIDo9ICQoc2hlbGwgJChTSEVMTCkgJChzcmNkaXIpL2dlbi1maXhlZC5zaCBjb252 IGxhYmVscykKZml4ZWQtY29udi1mcm9tIDo9ICQoc2hlbGwgJChTSEVMTCkgJChzcmNkaXIpL2dl bi1maXhlZC5zaCBjb252IGZyb20pCmZpeGVkLWNvbnYtdG8gOj0gICQoc2hlbGwgJChTSEVMTCkg JChzcmNkaXIpL2dlbi1maXhlZC5zaCBjb252IHRvKQoKIyBHZW5lcmF0ZSB0aGUgbWFrZSBydWxl cyBmb3IgZWFjaCBjb252ZXJzaW9uIGZ1bmN0aW9uCml0ZXItaXRlbXMgOj0gJChmaXhlZC1jb252 LWZ1bmNzKQppdGVyLWxhYmVscyA6PSAkKGZpeGVkLWNvbnYtbGFiZWxzKQppdGVyLWZyb20gOj0g JChmaXhlZC1jb252LWZyb20pCml0ZXItdG8gOj0gJChmaXhlZC1jb252LXRvKQppbmNsdWRlICQo c3JjZGlyKS9lbXB0eS5tayAkKHBhdHN1YnN0ICUsJChzcmNkaXIpL2ZpeGVkLW9iai5taywkKGl0 ZXItaXRlbXMpKQoKIyBBZGQgY29udmVyc2lvbiBmdW5jdGlvbnMgdG8gbGlzdCBvZiBvYmplY3Rz IHRvIGJlIGJ1aWx0CmxpYmdjYy1vYmplY3RzICs9ICQocGF0c3Vic3QgJSwlJChvYmpleHQpLCQo Zml4ZWQtY29udi1mdW5jcykpCmlmZXEgKCQoZW5hYmxlX3NoYXJlZCkseWVzKQpsaWJnY2Mtcy1v YmplY3RzICs9ICQocGF0c3Vic3QgJSwlX3MkKG9iamV4dCksJChmaXhlZC1jb252LWZ1bmNzKSkK ZW5kaWYKCmVuZGlmCgojIEJ1aWxkIExJQjJBREQgYW5kIExJQjJBRERfU1QuCmlmbmVxICgkKGZp bHRlci1vdXQgJS5jICUuUyAlLmFzbSwkKExJQjJBREQpICQoTElCMkFERF9TVCkpLCkKJChlcnJv ciBVbnN1cHBvcnRlZCBmaWxlcyBpbiBMSUIyQUREIG9yIExJQjJBRERfU1QuKQplbmRpZgoKbGli Z2NjLW9iamVjdHMgKz0gJChhZGRzdWZmaXggJChvYmpleHQpLCQoYmFzZW5hbWUgJChub3RkaXIg JChMSUIyQUREKSkpKQpsaWJnY2Mtb2JqZWN0cyArPSAkKGFkZHN1ZmZpeCAkKG9iamV4dCksJChi YXNlbmFtZSAkKG5vdGRpciAkKExJQjJBRERfU1QpKSkpCgpjX2ZsYWdzIDo9Cml0ZXItaXRlbXMg Oj0gJChMSUIyQUREKSAkKExJQjJBRERfU1QpCmluY2x1ZGUgJChpdGVyYXRvcikKCmlmZXEgKCQo ZW5hYmxlX3NoYXJlZCkseWVzKQpsaWJnY2Mtcy1vYmplY3RzICs9ICQoYWRkc3VmZml4IF9zJChv YmpleHQpLCQoYmFzZW5hbWUgJChub3RkaXIgJChMSUIyQUREKSkpKQplbmRpZgoKIyBCdWlsZCBM SUIyQURERUgsIExJQjJBRERFSFNUQVRJQywgYW5kIExJQjJBRERFSFNIQVJFRC4gIElmIHdlIGRv bid0IGhhdmUKIyBsaWJnY2NfZWguYSwgb25seSBMSUIyQURERUggbWF0dGVycy4gIElmIHdlIGRv LCBvbmx5IExJQjJBRERFSFNUQVRJQyBhbmQKIyBMSUIyQURERUhTSEFSRUQgbWF0dGVyLiAgKFVz dWFsbHkgYWxsIHRocmVlIGFyZSBpZGVudGljYWwuKQoKY19mbGFncyA6PSAtZmV4Y2VwdGlvbnMK CmlmZXEgKCQoZW5hYmxlX3NoYXJlZCkseWVzKQoKbGliZ2NjLWVoLW9iamVjdHMgKz0gJChhZGRz dWZmaXggJChvYmpleHQpLCQoYmFzZW5hbWUgJChub3RkaXIgJChMSUIyQURERUhTVEFUSUMpKSkp CmxpYmdjYy1zLW9iamVjdHMgKz0gJChhZGRzdWZmaXggX3MkKG9iamV4dCksJChiYXNlbmFtZSAk KG5vdGRpciAkKExJQjJBRERFSFNIQVJFRCkpKSkKCml0ZXItaXRlbXMgOj0gJChzb3J0ICQoTElC MkFEREVIU1RBVElDKSAkKExJQjJBRERFSFNIQVJFRCkpCmluY2x1ZGUgJChpdGVyYXRvcikKCmVs c2UKIyBOb3Qgc2hhcmVkLiAgTElCMkFEREVIIGFyZSBhZGRlZCB0byBsaWJnY2MuYS4KCmxpYmdj Yy1vYmplY3RzICs9ICQoYWRkc3VmZml4ICQob2JqZXh0KSwkKGJhc2VuYW1lICQobm90ZGlyICQo TElCMkFEREVIKSkpKQoKaXRlci1pdGVtcyA6PSAkKExJQjJBRERFSCkKaW5jbHVkZSAkKGl0ZXJh dG9yKQoKZW5kaWYKCiMgQnVpbGQgTElCVU5XSU5ELgoKY19mbGFncyA6PSAtZmV4Y2VwdGlvbnMK CmxpYnVud2luZC1vYmplY3RzICs9ICQoYWRkc3VmZml4ICQob2JqZXh0KSwkKGJhc2VuYW1lICQo bm90ZGlyICQoTElCVU5XSU5EKSkpKQoKaWZlcSAoJChlbmFibGVfc2hhcmVkKSx5ZXMpCmxpYnVu d2luZC1zLW9iamVjdHMgKz0gJChhZGRzdWZmaXggX3MkKG9iamV4dCksJChiYXNlbmFtZSAkKG5v dGRpciAkKExJQlVOV0lORCkpKSkKZW5kaWYKCml0ZXItaXRlbXMgOj0gJChMSUJVTldJTkQpCmlu Y2x1ZGUgJChpdGVyYXRvcikKCiMgQnVpbGQgbGliZ2NvdiBjb21wb25lbnRzLgpsaWJnY292LW9i amVjdHMgPSAkKHBhdHN1YnN0ICUsJSQob2JqZXh0KSwkKExJQkdDT1YpKQokKGxpYmdjb3Ytb2Jq ZWN0cyk6ICUkKG9iamV4dCk6ICQoZ2NjX3NyY2RpcikvbGliZ2Nvdi5jCgkkKGdjY19jb21waWxl KSAtREwkKiAtYyAkKGdjY19zcmNkaXIpL2xpYmdjb3YuYwoKCiMgU3RhdGljIGxpYnJhcmllcy4K bGliZ2NjLmE6ICQobGliZ2NjLW9iamVjdHMpCmxpYmdjb3YuYTogJChsaWJnY292LW9iamVjdHMp CmxpYnVud2luZC5hOiAkKGxpYnVud2luZC1vYmplY3RzKQpsaWJnY2NfZWguYTogJChsaWJnY2Mt ZWgtb2JqZWN0cykKCmxpYmdjYy5hIGxpYmdjb3YuYSBsaWJ1bndpbmQuYSBsaWJnY2NfZWguYToK CS1ybSAtZiAkQAoKCW9iamVjdHM9IiQob2JqZWN0cykiOwkJCQkJXAoJaWYgdGVzdCAteiAiJCRv YmplY3RzIjsgdGhlbgkJCQlcCgkgIGVjaG8gJ2ludCBfX2xpYmdjY19laF9kdW1teTsnID4gZWhf ZHVtbXkuYzsJCVwKCSAgJChnY2NfY29tcGlsZV9iYXJlKSAkKHZpc19oaWRlKSAtYyBlaF9kdW1t eS5jCQlcCgkgICAgIC1vIGVoX2R1bW15JChvYmpleHQpOwkJCQlcCgkgIG9iamVjdHM9ZWhfZHVt bXkkKG9iamV4dCk7CQkJCVwKCWZpOwkJCQkJCQlcCgkkKEFSX0NSRUFURV9GT1JfVEFSR0VUKSAk QCAkJG9iamVjdHMKCgkkKFJBTkxJQikgJEAKCmFsbDogbGliZ2NjLmEgbGliZ2Nvdi5hCgppZm5l cSAoJChMSUJVTldJTkQpLCkKYWxsOiBsaWJ1bndpbmQuYQpsaWJnY2NfcyQoU0hMSUJfRVhUKTog bGlidW53aW5kJChTSExJQl9FWFQpCmVuZGlmCgppZmVxICgkKGVuYWJsZV9zaGFyZWQpLHllcykK YWxsOiBsaWJnY2NfZWguYSBsaWJnY2NfcyQoU0hMSUJfRVhUKQppZm5lcSAoJChMSUJVTldJTkQp LCkKYWxsOiBsaWJ1bndpbmQkKFNITElCX0VYVCkKZW5kaWYKZW5kaWYKCmlmZXEgKCQoZW5hYmxl X3NoYXJlZCkseWVzKQoKIyBNYXAtZmlsZSBnZW5lcmF0aW9uLgppZm5lcSAoJChTSExJQl9NS01B UCksKQpsaWJnY2MubWFwOiAkKFNITElCX01LTUFQKSAkKFNITElCX01BUEZJTEVTKSAkKGxpYmdj Yy1zLW9iamVjdHMpCgl7ICQoTk0pICQoU0hMSUJfTk1fRkxBR1MpICQobGliZ2NjLXMtb2JqZWN0 cyk7IGVjaG8gJSU7IFwKCSAgY2F0ICQoU0hMSUJfTUFQRklMRVMpIFwKCSAgICB8IHNlZCAtZSAn L15bIAldKiMvZCcgXAoJCSAgLWUgJ3MvXiVcKGlmXHxlbHNlXHxlbGlmXHxlbmRpZlx8ZGVmaW5l XCkvI1wxLycgXAoJICAgIHwgJChnY2NfY29tcGlsZV9iYXJlKSAtRSAteGFzc2VtYmxlci13aXRo LWNwcCAtOyBcCgl9IHwgJChBV0spIC1mICQoU0hMSUJfTUtNQVApICQoU0hMSUJfTUtNQVBfT1BU UykgPiB0bXAtJEAKCW12IHRtcC0kQCAkQApsaWJnY2NfcyQoU0hMSUJfRVhUKTogbGliZ2NjLm1h cAptYXBmaWxlID0gbGliZ2NjLm1hcAplbmRpZgoKbGliZ2NjX3MkKFNITElCX0VYVCk6ICQobGli Z2NjLXMtb2JqZWN0cykgJChleHRyYS1wYXJ0cykKCSMgQG11bHRpbGliX2ZsYWdzQCBpcyBzdGls bCBuZWVkZWQgYmVjYXVzZSB0aGlzIG1heSB1c2UKCSMgJChHQ0NfRk9SX1RBUkdFVCkgYW5kICQo TElCR0NDMl9DRkxBR1MpIGRpcmVjdGx5LgoJIyBAbXVsdGlsaWJfZGlyQCBpcyBub3QgcmVhbGx5 IG5lY2Vzc2FyeSwgYnV0IHNvbWV0aW1lcyBpdCBoYXMKCSMgbW9yZSB1c2VzIHRoYW4ganVzdCBh IGRpcmVjdG9yeSBuYW1lLgoJJChta2luc3RhbGxkaXJzKSAkKE1VTFRJRElSKQoJJChzdWJzdCBA bXVsdGlsaWJfZmxhZ3NALCQoQ0ZMQUdTKSAtQi4vLCQoc3Vic3QgXAoJCUBtdWx0aWxpYl9kaXJA LCQoTVVMVElESVIpLCQoc3Vic3QgXAoJCUBzaGxpYl9vYmpzQCwkKG9iamVjdHMpLCQoc3Vic3Qg XAoJCUBzaGxpYl9iYXNlX25hbWVALGxpYmdjY19zLCQoc3Vic3QgXAoJCUBzaGxpYl9tYXBfZmls ZUAsJChtYXBmaWxlKSwkKHN1YnN0IFwKCQlAc2hsaWJfc2xpYmRpcl9xdWFsQCwkKE1VTFRJT1NT VUJESVIpLCQoc3Vic3QgXAoJCUBzaGxpYl9zbGliZGlyQCwkKHNobGliX3NsaWJkaXIpLCQoU0hM SUJfTElOSykpKSkpKSkpCgpsaWJ1bndpbmQkKFNITElCX0VYVCk6ICQobGlidW53aW5kLXMtb2Jq ZWN0cykgJChleHRyYS1wYXJ0cykKCSMgQG11bHRpbGliX2ZsYWdzQCBpcyBzdGlsbCBuZWVkZWQg YmVjYXVzZSB0aGlzIG1heSB1c2UKCSMgJChHQ0NfRk9SX1RBUkdFVCkgYW5kICQoTElCR0NDMl9D RkxBR1MpIGRpcmVjdGx5LgoJIyBAbXVsdGlsaWJfZGlyQCBpcyBub3QgcmVhbGx5IG5lY2Vzc2Fy eSwgYnV0IHNvbWV0aW1lcyBpdCBoYXMKCSMgbW9yZSB1c2VzIHRoYW4ganVzdCBhIGRpcmVjdG9y eSBuYW1lLgoJJChta2luc3RhbGxkaXJzKSAkKE1VTFRJRElSKQoJJChzdWJzdCBAbXVsdGlsaWJf ZmxhZ3NALCQoQ0ZMQUdTKSAtQi4vLCQoc3Vic3QgXAoJCUBtdWx0aWxpYl9kaXJALCQoTVVMVElE SVIpLCQoc3Vic3QgXAoJCUBzaGxpYl9vYmpzQCwkKG9iamVjdHMpLCQoc3Vic3QgXAoJCUBzaGxp Yl9iYXNlX25hbWVALGxpYnVud2luZCwkKHN1YnN0IFwKCQlAc2hsaWJfc2xpYmRpcl9xdWFsQCwk KE1VTFRJT1NTVUJESVIpLCQoU0hMSUJVTldJTkRfTElOSykpKSkpKQoKZW5kaWYKCiMgQnVpbGQg dGhlIHN0YW5kYXJkIEdDQyBzdGFydGZpbGVzIGFuZCBlbmRmaWxlcy4KQUxMX0NSVF9DRkxBR1Mg PSAkKENGTEFHUykgJChDUlRTVFVGRl9DRkxBR1MpICQoSU5DTFVERVMpCmNydF9jb21waWxlID0g JChDQykgJChBTExfQ1JUX0NGTEFHUykgLW8gJEAgJChjb21waWxlX2RlcHMpCgppZmVxICgkKENV U1RPTV9DUlRTVFVGRiksKQpjcnRiZWdpbiQob2JqZXh0KTogJChnY2Nfc3JjZGlyKS9jcnRzdHVm Zi5jCgkkKGNydF9jb21waWxlKSAkKENSVFNUVUZGX1RfQ0ZMQUdTKSBcCgkgIC1jICQoZ2NjX3Ny Y2RpcikvY3J0c3R1ZmYuYyAtRENSVF9CRUdJTgoKY3J0ZW5kJChvYmpleHQpOiAkKGdjY19zcmNk aXIpL2NydHN0dWZmLmMKCSQoY3J0X2NvbXBpbGUpICQoQ1JUU1RVRkZfVF9DRkxBR1MpIFwKCSAg LWMgJChnY2Nfc3JjZGlyKS9jcnRzdHVmZi5jIC1EQ1JUX0VORAoKIyBUaGVzZSBhcmUgdmVyc2lv bnMgb2YgY3J0YmVnaW4gYW5kIGNydGVuZCBmb3Igc2hhcmVkIGxpYnJhcmllcy4KY3J0YmVnaW5T JChvYmpleHQpOiAkKGdjY19zcmNkaXIpL2NydHN0dWZmLmMKCSQoY3J0X2NvbXBpbGUpICQoQ1JU U1RVRkZfVF9DRkxBR1NfUykgXAoJICAtYyAkKGdjY19zcmNkaXIpL2NydHN0dWZmLmMgLURDUlRf QkVHSU4gLURDUlRTVFVGRlNfTwoKY3J0ZW5kUyQob2JqZXh0KTogJChnY2Nfc3JjZGlyKS9jcnRz dHVmZi5jCgkkKGNydF9jb21waWxlKSAkKENSVFNUVUZGX1RfQ0ZMQUdTX1MpIFwKCSAgLWMgJChn Y2Nfc3JjZGlyKS9jcnRzdHVmZi5jIC1EQ1JUX0VORCAtRENSVFNUVUZGU19PCgojIFRoaXMgaXMg YSB2ZXJzaW9uIG9mIGNydGJlZ2luIGZvciAtc3RhdGljIGxpbmtzLgpjcnRiZWdpblQubzogJChn Y2Nfc3JjZGlyKS9jcnRzdHVmZi5jCgkkKGNydF9jb21waWxlKSAkKENSVFNUVUZGX1RfQ0ZMQUdT KSBcCgkgIC1jICQoZ2NjX3NyY2RpcikvY3J0c3R1ZmYuYyAtRENSVF9CRUdJTiAtRENSVFNUVUZG VF9PCmVuZGlmCgojIEJ1aWxkIGV4dHJhIHN0YXJ0ZmlsZXMgaW4gdGhlIGxpYmdjYyBkaXJlY3Rv cnkuCi5QSE9OWTogbGliZ2NjLWV4dHJhLXBhcnRzCmxpYmdjYy1leHRyYS1wYXJ0czogJChFWFRS QV9QQVJUUykKaWZuZXEgKCQoR0NDX0VYVFJBX1BBUlRTKSwpCmlmbmVxICgkKHNvcnQgJChFWFRS QV9QQVJUUykpLCQoR0NDX0VYVFJBX1BBUlRTKSkKCSMgSWYgdGhlIGdjYyBkaXJlY3Rvcnkgc3Bl Y2lmaWVzIHdoaWNoIGV4dHJhIHBhcnRzIHRvCgkjIGJ1aWxkIGZvciB0aGlzIHRhcmdldCwgYW5k IHRoZSBsaWJnY2MgY29uZmlndXJhdGlvbiBhbHNvCgkjIHNwZWNpZmllcywgbWFrZSBzdXJlIHRo ZXkgbWF0Y2guICBUaGlzIGNhbiBiZSByZW1vdmVkCgkjIHdoZW4gdGhlIGdjYyBkaXJlY3Rvcnkg bm8gbG9uZ2VyIGhvbGRzIGxpYmdjYyBjb25maWd1cmF0aW9uOwoJIyBpdCBpcyB1c2VmdWwgd2hl biBtaWdyYXRpbmcgYSB0YXJnZXQuCglAZWNobyAiQ29uZmlndXJhdGlvbiBtaXNtYXRjaCEiCglA ZWNobyAiRXh0cmEgcGFydHMgZnJvbSBnY2MgZGlyZWN0b3J5OiAkKEdDQ19FWFRSQV9QQVJUUyki CglAZWNobyAiRXh0cmEgcGFydHMgZnJvbSBsaWJnY2M6ICQoRVhUUkFfUEFSVFMpIgoJZXhpdCAx CmVuZGlmCmVuZGlmCgoJIyBFYXJseSBjb3B5YmFjazsgc2VlICJhbGwiIGFib3ZlIGZvciB0aGUg cmF0aW9uYWxlLiAgVGhlCgkjIGVhcmx5IGNvcHkgaXMgbmVjZXNzYXJ5IHNvIHRoYXQgdGhlIGdj YyAtQiBvcHRpb25zIGZpbmQKCSMgdGhlIHJpZ2h0IHN0YXJ0dXAgZmlsZXMgd2hlbiBsaW5raW5n IHNoYXJlZCBsaWJnY2MuCgkkKG1raW5zdGFsbGRpcnMpICQoZ2NjX29iamRpcikkKE1VTFRJU1VC RElSKQoJcGFydHM9IiQoRVhUUkFfUEFSVFMpIjsJCQkJCVwKCWZvciBmaWxlIGluICQkcGFydHM7 IGRvCQkJCQlcCgkgIHJtIC1mICQoZ2NjX29iamRpcikkKE1VTFRJU1VCRElSKS8kJGZpbGU7CQlc CgkgICQoSU5TVEFMTF9EQVRBKSAkJGZpbGUgJChnY2Nfb2JqZGlyKSQoTVVMVElTVUJESVIpLzsJ XAoJZG9uZQoKIyBCdWlsZCBleHRyYSBzdGFydGZpbGVzIGluIHRoZSBnY2MgZGlyZWN0b3J5LCBm b3IgdW5jb252ZXJ0ZWQKIyB0YXJnZXRzLgouUEhPTlk6IGdjYy1leHRyYS1wYXJ0cwpnY2MtZXh0 cmEtcGFydHM6CgkjIFJlY3Vyc2l2ZWx5IGludm9rZSBtYWtlIGluIHRoZSBHQ0MgZGlyZWN0b3J5 IHRvIGJ1aWxkIGFueQoJIyBzdGFydGZpbGVzIChmb3Igbm93KS4gIFdlIG11c3QgZG8gdGhpcyBq dXN0IG9uY2UsIHBhc3NpbmcKCSMgaXQgYWxsIHRoZSBHQ0NfRVhUUkFfUEFSVFMgYXMgc2ltdWx0 YW5lb3VzIGdvYWwgdGFyZ2V0cywKCSMgc28gdGhhdCBydWxlcyB3aGljaCBjYW5ub3QgZXhlY3V0 ZSBzaW11bHRhbmVvdXNseSBhcmUgcHJvcGVybHkKCSMgc2VyaWFsaXplZC4gIFdlIGluZGlyZWN0 IHRocm91Z2ggVF9UQVJHRVQgaW4gY2FzZSBhbnkgbXVsdGlsaWIKCSMgZGlyZWN0b3JpZXMgY29u dGFpbiBhbiBlcXVhbHMgc2lnbiwgdG8gcHJldmVudCBtYWtlIGZyb20KCSMgaW50ZXJwcmV0aW5n IGFueSBvZiB0aGUgZ29hbHMgYXMgdmFyaWFibGUgYXNzaWdubWVudHMuCgoJIyBXZSBtdXN0IHVz ZSBjZCAmJiBtYWtlIHJhdGhlciB0aGFuIG1ha2UgLUMsIG9yIGVsc2UgdGhlIHN0YWdlCgkjIG51 bWJlciB3aWxsIGJlIGVtYmVkZGVkIGluIGRlYnVnIGluZm9ybWF0aW9uLgoKCVQ9YCQoUFdEX0NP TU1BTkQpYC8gXAoJJiYgY2QgJChnY2Nfb2JqZGlyKSBcCgkmJiAkKE1BS0UpIEdDQ19GT1JfVEFS R0VUPSIkKENDKSIgXAoJICBNVUxUSUxJQl9DRkxBR1M9IiQoQ0ZMQUdTKSIgXAoJICBUPSQkVCBc CgkgIFRfVEFSR0VUPSIkKHBhdHN1YnN0ICUsJCR7VH0lLCQoR0NDX0VYVFJBX1BBUlRTKSkiIFwK CSAgVF9UQVJHRVQKCgkjIEVhcmx5IGNvcHliYWNrOyBzZWUgImFsbCIgYWJvdmUgZm9yIHRoZSBy YXRpb25hbGUuICBUaGUKCSMgZWFybHkgY29weSBpcyBuZWNlc3Nhcnkgc28gdGhhdCB0aGUgZ2Nj IC1CIG9wdGlvbnMgZmluZAoJIyB0aGUgcmlnaHQgc3RhcnR1cCBmaWxlcyB3aGVuIGxpbmtpbmcg c2hhcmVkIGxpYmdjYy4KCSQobWtpbnN0YWxsZGlycykgJChnY2Nfb2JqZGlyKSQoTVVMVElTVUJE SVIpCglwYXJ0cz0iJChHQ0NfRVhUUkFfUEFSVFMpIjsJCQkJXAoJZm9yIGZpbGUgaW4gJCRwYXJ0 czsgZG8JCQkJCVwKCSAgcm0gLWYgJChnY2Nfb2JqZGlyKSQoTVVMVElTVUJESVIpLyQkZmlsZTsJ CVwKCSAgJChJTlNUQUxMX0RBVEEpICQkZmlsZSAkKGdjY19vYmpkaXIpJChNVUxUSVNVQkRJUikv OwlcCglkb25lCgphbGw6ICQoZXh0cmEtcGFydHMpCgojIERvY3VtZW50YXRpb24gdGFyZ2V0cyAo ZW1wdHkpLgouUEhPTlk6IGluZm8gaHRtbCBkdmkgcGRmIGluc3RhbGwtaW5mbyBpbnN0YWxsLWh0 bWwgaW5zdGFsbC1wZGYKCmluZm86Cmluc3RhbGwtaW5mbzoKaHRtbDoKaW5zdGFsbC1odG1sOgpk dmk6CnBkZjoKaW5zdGFsbC1wZGY6CgojIEluc3RhbGwgcnVsZXMuICBUaGVzZSBkbyBub3QgZGVw ZW5kIG9uICJhbGwiLCBzbyB0aGF0IHRoZXkgY2FuIGJlIGludm9rZWQKIyByZWN1cnNpdmVseSBm cm9tIGl0LgppbnN0YWxsLWxpYnVud2luZDoKCSQobWtpbnN0YWxsZGlycykgJChERVNURElSKSQo aW5zdF9zbGliZGlyKQoKCSMgTk9URTogTWF5YmUgdGhpcyBzaG91bGQgZ28gaW50byAkKGluc3Rf bGliZGlyKSwgYnV0IHRoaXMKCSMgaXMgd2hlcmUgdGhlIG9sZCBta2xpYmdjYy5pbiBwdXQgaXQu CgkkKElOU1RBTExfREFUQSkgbGlidW53aW5kLmEgJChERVNURElSKSQoaW5zdF9zbGliZGlyKS8K CWNobW9kIDY0NCAkKERFU1RESVIpJChpbnN0X3NsaWJkaXIpL2xpYnVud2luZC5hCgkkKFJBTkxJ QikgJChERVNURElSKSQoaW5zdF9zbGliZGlyKS9saWJ1bndpbmQuYQoKCSQoc3Vic3QgQG11bHRp bGliX2RpckAsJChNVUxUSURJUiksJChzdWJzdCBcCgkJQHNobGliX2Jhc2VfbmFtZUAsbGlidW53 aW5kLCQoc3Vic3QgXAoJCUBzaGxpYl9zbGliZGlyX3F1YWxALCQoTVVMVElPU1NVQkRJUiksJChT SExJQlVOV0lORF9JTlNUQUxMKSkpKQoKaW5zdGFsbC1zaGFyZWQ6CgkkKG1raW5zdGFsbGRpcnMp ICQoREVTVERJUikkKGluc3RfbGliZGlyKQoKCSQoSU5TVEFMTF9EQVRBKSBsaWJnY2NfZWguYSAk KERFU1RESVIpJChpbnN0X2xpYmRpcikvCgljaG1vZCA2NDQgJChERVNURElSKSQoaW5zdF9saWJk aXIpL2xpYmdjY19laC5hCgkkKFJBTkxJQikgJChERVNURElSKSQoaW5zdF9saWJkaXIpL2xpYmdj Y19laC5hCgoJJChzdWJzdCBAbXVsdGlsaWJfZGlyQCwkKE1VTFRJRElSKSwkKHN1YnN0IFwKCQlA c2hsaWJfYmFzZV9uYW1lQCxsaWJnY2NfcywkKHN1YnN0IFwKCQlAc2hsaWJfc2xpYmRpcl9xdWFs QCwkKE1VTFRJT1NTVUJESVIpLCQoU0hMSUJfSU5TVEFMTCkpKSkKCmluc3RhbGwtbGVhZjogJChp bnN0YWxsLXNoYXJlZCkgJChpbnN0YWxsLWxpYnVud2luZCkKCSQobWtpbnN0YWxsZGlycykgJChE RVNURElSKSQoaW5zdF9saWJkaXIpCgoJJChJTlNUQUxMX0RBVEEpIGxpYmdjYy5hICQoREVTVERJ UikkKGluc3RfbGliZGlyKS8KCWNobW9kIDY0NCAkKERFU1RESVIpJChpbnN0X2xpYmRpcikvbGli Z2NjLmEKCSQoUkFOTElCKSAkKERFU1RESVIpJChpbnN0X2xpYmRpcikvbGliZ2NjLmEKCSQoSU5T VEFMTF9EQVRBKSBsaWJnY292LmEgJChERVNURElSKSQoaW5zdF9saWJkaXIpLwoJY2htb2QgNjQ0 ICQoREVTVERJUikkKGluc3RfbGliZGlyKS9saWJnY292LmEKCSQoUkFOTElCKSAkKERFU1RESVIp JChpbnN0X2xpYmRpcikvbGliZ2Nvdi5hCgoJcGFydHM9IiQoSU5TVEFMTF9QQVJUUykiOwkJCQlc Cglmb3IgZmlsZSBpbiAkJHBhcnRzOyBkbwkJCQkJXAoJICBybSAtZiAkKERFU1RESVIpJChpbnN0 X2xpYmRpcikvJCRmaWxlOwkJXAoJICAkKElOU1RBTExfREFUQSkgJCRmaWxlICQoREVTVERJUikk KGluc3RfbGliZGlyKS87CVwKCWRvbmUKCmluc3RhbGw6IGluc3RhbGwtbGVhZgoJQDogJChNQUtF KSA7ICQoTVVMVElETykgJChGTEFHU19UT19QQVNTKSBtdWx0aS1kbyBETz1pbnN0YWxsCgouUEhP Tlk6IGluc3RhbGwgaW5zdGFsbC1zaGFyZWQgaW5zdGFsbC1saWJ1bndpbmQKCiMgRG9uJ3QgZXhw b3J0IHZhcmlhYmxlcyB0byB0aGUgZW52aXJvbm1lbnQsIGluIG9yZGVyIHRvIG5vdCBjb25mdXNl CiMgY29uZmlndXJlLgouTk9FWFBPUlQ6CgppbmNsdWRlICQoc3JjZGlyKS9lbXB0eS5tayAkKHdp bGRjYXJkICouZGVwKQoKIyBUT0RPIFFVRVVFOgojICAgR2FyYmFnZSBjb2xsZWN0IGluIGdjYy86 CiMgICAgICQoTElCR0NDKSBzZXR0aW5ncyBpbiB0LSogYXJlIG5vdyB1bnVzZWQKIwojICAgUmVt b3ZlIHVzZSBvZiAkKGdjY19zcmNkaXIpLiAgU291cmNlIGZpbGVzIHJlZmVyZW5jZWQgdXNpbmcg JChnY2Nfc3JjZGlyKQojICAgc2hvdWxkIG1vdmUgaW50byB0aGUgbGliZ2NjIGRpcmVjdG9yeS4K Cg== --------------050900020900090304020300 Content-Type: text/plain; name="Makefile-gcc-cross" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="Makefile-gcc-cross" IyBNYWtlZmlsZS5pbgoKIyBDb3B5cmlnaHQgKEMpIDIwMDUsIDIwMDYsIDIwMDkgRnJlZSBTb2Z0 d2FyZSBGb3VuZGF0aW9uCiMKIyBUaGlzIGZpbGUgaXMgcGFydCBvZiBHQ0MuCiMKIyBHQ0MgaXMg ZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeSBpdCB1 bmRlciB0aGUKIyB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5z ZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUKIyBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIg dmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pCiMgYW55IGxhdGVy IHZlcnNpb24uCiMKIyBHQ0MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxs IGJlIHVzZWZ1bCwgYnV0IFdJVEhPVVQgQU5ZCiMgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUg aW1wbGllZCB3YXJyYW50eSBvZiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUwojIEZPUiBBIFBB UlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9y CiMgbW9yZSBkZXRhaWxzLgojCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0 aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYWxvbmcKIyB3aXRoIEdDQzsgc2VlIHRoZSBm aWxlIENPUFlJTkczLiAgSWYgbm90IHNlZQojIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMv Pi4KIwoKbGliZ2NjX3RvcGRpciA9IC9ob21lL2p1cGkvb3BlbmVtYmVkZGVkL3RtcC93b3JrL2Fy bXY3YS1oYXJkZnAtb2UtbGludXgtZ251ZWFiaS9nY2MtY3Jvc3MtNC41LXIzMy4xK3N2bnIxNzA0 NDMvZ2NjLTRfNS1icmFuY2gvbGliZ2NjLy4uCmhvc3Rfc3ViZGlyID0gLgoKZ2NjX3NyY2RpciA9 ICQobGliZ2NjX3RvcGRpcikvZ2NjCmdjY19vYmpkaXIgPSAkKE1VTFRJQlVJTERUT1ApLi4vLi4v JChob3N0X3N1YmRpcikvZ2NjCgpzcmNkaXIgPSAvaG9tZS9qdXBpL29wZW5lbWJlZGRlZC90bXAv d29yay9hcm12N2EtaGFyZGZwLW9lLWxpbnV4LWdudWVhYmkvZ2NjLWNyb3NzLTQuNS1yMzMuMStz dm5yMTcwNDQzL2djYy00XzUtYnJhbmNoL2xpYmdjYwoKcHJlZml4ID0gL2hvbWUvanVwaS9vcGVu ZW1iZWRkZWQvdG1wL3N5c3Jvb3RzL3g4Nl82NC1saW51eC91c3IvYXJtdjdhLWhhcmRmcAoKZXhl Y19wcmVmaXggPSAvaG9tZS9qdXBpL29wZW5lbWJlZGRlZC90bXAvc3lzcm9vdHMveDg2XzY0LWxp bnV4L3Vzci9hcm12N2EtaGFyZGZwCmxpYmRpciA9IC9ob21lL2p1cGkvb3BlbmVtYmVkZGVkL3Rt cC9zeXNyb290cy94ODZfNjQtbGludXgvdXNyL2FybXY3YS1oYXJkZnAvbGliCnNobGliX3NsaWJk aXIgPSAkKGV4ZWNfcHJlZml4KS8kKGhvc3Rfbm9uY2Fub25pY2FsKS9saWIKClNIRUxMID0gL2Jp bi9zaAoKZW5hYmxlX3NoYXJlZCA9IHllcwpkZWNpbWFsX2Zsb2F0ID0gbm8KZW5hYmxlX2RlY2lt YWxfZmxvYXQgPSBubwpmaXhlZF9wb2ludCA9IG5vCgpob3N0X25vbmNhbm9uaWNhbCA9IGFybS1v ZS1saW51eC1nbnVlYWJpCgojIExpc3Qgb2YgZXh0cmEgb2JqZWN0IGZpbGVzIHRoYXQgc2hvdWxk IGJlIGNvbXBpbGVkIGZvciB0aGlzIHRhcmdldCBtYWNoaW5lLgojIFRoZSBydWxlcyBmb3IgY29t cGlsaW5nIHRoZW0gc2hvdWxkIGJlIGluIHRoZSB0LSogZmlsZSBmb3IgdGhlIG1hY2hpbmUuCkVY VFJBX1BBUlRTID0gY3J0YmVnaW4ubyBjcnRiZWdpblMubyBjcnRiZWdpblQubyBjcnRlbmQubyBj cnRlbmRTLm8KCiMgTXVsdGlsaWIgc3VwcG9ydCB2YXJpYWJsZXMuCk1VTFRJU1JDVE9QID0KTVVM VElCVUlMRFRPUCA9Ck1VTFRJRElSUyA9Ck1VTFRJU1VCRElSID0KTVVMVElETyA9IHRydWUKTVVM VElDTEVBTiA9IHRydWUKCklOU1RBTEwgPSAvaG9tZS9qdXBpL29wZW5lbWJlZGRlZC9vcGVuZW1i ZWRkZWQvL2Jpbi9pbnN0YWxsIC1jCklOU1RBTExfUFJPR1JBTSA9IC9ob21lL2p1cGkvb3BlbmVt YmVkZGVkL29wZW5lbWJlZGRlZC8vYmluL2luc3RhbGwgLWMKSU5TVEFMTF9EQVRBID0gL2hvbWUv anVwaS9vcGVuZW1iZWRkZWQvb3BlbmVtYmVkZGVkLy9iaW4vaW5zdGFsbCAtYyAtbSA2NDQKbWtp bnN0YWxsZGlycyA9ICQoU0hFTEwpICQobGliZ2NjX3RvcGRpcikvbWtpbnN0YWxsZGlycwoKb2Jq ZXh0ID0gLm8KCkFSID0gL2hvbWUvanVwaS9vcGVuZW1iZWRkZWQvdG1wL3N5c3Jvb3RzL3g4Nl82 NC1saW51eC91c3IvYXJtdjdhLWhhcmRmcC9hcm0tb2UtbGludXgtZ251ZWFiaS9iaW4vYXIKQVJf RkxBR1MgPSByYwoKQ0MgPSAvaG9tZS9qdXBpL29wZW5lbWJlZGRlZC90bXAvd29yay9hcm12N2Et aGFyZGZwLW9lLWxpbnV4LWdudWVhYmkvZ2NjLWNyb3NzLTQuNS1yMzMuMStzdm5yMTcwNDQzL2dj Yy00XzUtYnJhbmNoL2J1aWxkLng4Nl82NC1saW51eC5hcm0tb2UtbGludXgtZ251ZWFiaS8uL2dj Yy94Z2NjIC1CL2hvbWUvanVwaS9vcGVuZW1iZWRkZWQvdG1wL3dvcmsvYXJtdjdhLWhhcmRmcC1v ZS1saW51eC1nbnVlYWJpL2djYy1jcm9zcy00LjUtcjMzLjErc3ZucjE3MDQ0My9nY2MtNF81LWJy YW5jaC9idWlsZC54ODZfNjQtbGludXguYXJtLW9lLWxpbnV4LWdudWVhYmkvLi9nY2MvIC1tYXJj aD1hcm12Ny1hIC1tdHVuZT1jb3J0ZXgtYTggLW1mbG9hdC1hYmk9aGFyZCAtbWZwdT12ZnB2MyAt bXRodW1iLWludGVyd29yayAtbW5vLXRodW1iIC1pc3lzdGVtL2hvbWUvanVwaS9vcGVuZW1iZWRk ZWQvdG1wL3N5c3Jvb3RzL2FybXY3YS1oYXJkZnAtb2UtbGludXgtZ251ZWFiaS91c3IvaW5jbHVk ZSAtQi9ob21lL2p1cGkvb3BlbmVtYmVkZGVkL3RtcC9zeXNyb290cy94ODZfNjQtbGludXgvdXNy L2FybXY3YS1oYXJkZnAvYXJtLW9lLWxpbnV4LWdudWVhYmkvYmluLyAtQi9ob21lL2p1cGkvb3Bl bmVtYmVkZGVkL3RtcC9zeXNyb290cy94ODZfNjQtbGludXgvdXNyL2FybXY3YS1oYXJkZnAvYXJt LW9lLWxpbnV4LWdudWVhYmkvbGliLyAtaXN5c3RlbSAvaG9tZS9qdXBpL29wZW5lbWJlZGRlZC90 bXAvc3lzcm9vdHMveDg2XzY0LWxpbnV4L3Vzci9hcm12N2EtaGFyZGZwL2FybS1vZS1saW51eC1n bnVlYWJpL2luY2x1ZGUgLWlzeXN0ZW0gL2hvbWUvanVwaS9vcGVuZW1iZWRkZWQvdG1wL3N5c3Jv b3RzL3g4Nl82NC1saW51eC91c3IvYXJtdjdhLWhhcmRmcC9hcm0tb2UtbGludXgtZ251ZWFiaS9z eXMtaW5jbHVkZSAtLXN5c3Jvb3Q9L2hvbWUvanVwaS9vcGVuZW1iZWRkZWQvdG1wL3N5c3Jvb3Rz L2FybXY3YS1oYXJkZnAtb2UtbGludXgtZ251ZWFiaSAgCkNGTEFHUyA9IC1nIC1PcwpSQU5MSUIg PSAvaG9tZS9qdXBpL29wZW5lbWJlZGRlZC90bXAvc3lzcm9vdHMveDg2XzY0LWxpbnV4L3Vzci9h cm12N2EtaGFyZGZwL2FybS1vZS1saW51eC1nbnVlYWJpL2Jpbi9yYW5saWIKTE5fUyA9IGxuIC1z CgpQV0RfQ09NTUFORCA9ICQke1BXRENNRC1wd2R9CgojIEZsYWdzIHRvIHBhc3MgdG8gYSByZWN1 cnNpdmUgbWFrZS4KRkxBR1NfVE9fUEFTUyA9IFwKCSJBUj0kKEFSKSIgXAoJIkFSX0ZMQUdTPSQo QVJfRkxBR1MpIiBcCgkiQ0M9JChDQykiIFwKCSJDRkxBR1M9JChDRkxBR1MpIiBcCgkiREVTVERJ Uj0kKERFU1RESVIpIiBcCgkiRVhUUkFfT0ZJTEVTPSQoRVhUUkFfT0ZJTEVTKSIgXAoJIkhERUZJ TkVTPSQoSERFRklORVMpIiBcCgkiSU5TVEFMTD0kKElOU1RBTEwpIiBcCgkiSU5TVEFMTF9EQVRB PSQoSU5TVEFMTF9EQVRBKSIgXAoJIklOU1RBTExfUFJPR1JBTT0kKElOU1RBTExfUFJPR1JBTSki IFwKCSJMREZMQUdTPSQoTERGTEFHUykiIFwKCSJMT0FETElCRVM9JChMT0FETElCRVMpIiBcCgki UkFOTElCPSQoUkFOTElCKSIgXAoJIlNIRUxMPSQoU0hFTEwpIiBcCgkicHJlZml4PSQocHJlZml4 KSIgXAoJImV4ZWNfcHJlZml4PSQoZXhlY19wcmVmaXgpIiBcCgkibGliZGlyPSQobGliZGlyKSIg XAoJImxpYnN1YmRpcj0kKGxpYnN1YmRpcikiIFwKCSJ0b29sZGlyPSQodG9vbGRpcikiCgojIERl cGVuZGVuY2llcyBmb3IgImFsbCIgYXJlIHNldCBsYXRlciBpbiB0aGUgZmlsZS4KYWxsOiBhbGwt bXVsdGkKCSMgTm93IHRoYXQgd2UgaGF2ZSBidWlsdCBhbGwgdGhlIG9iamVjdHMsIHdlIG5lZWQg dG8gY29weQoJIyB0aGVtIGJhY2sgdG8gdGhlIEdDQyBkaXJlY3RvcnkuICBUb28gbWFueSB0aGlu Z3MgKG90aGVyCgkjIGluLXRyZWUgbGlicmFyaWVzLCBhbmQgRGVqYUdOVSkga25vdyBhYm91dCB0 aGUgbGF5b3V0CgkjIG9mIHRoZSBidWlsZCB0cmVlLCBmb3Igbm93LgoJJChNQUtFKSBpbnN0YWxs LWxlYWYgREVTVERJUj0kKGdjY19vYmpkaXIpIFwKCSAgc2xpYmRpcj0gbGlic3ViZGlyPSBNVUxU SU9TRElSPSQoTVVMVElESVIpCgouUEhPTlk6IGFsbC1tdWx0aQphbGwtbXVsdGk6CgkjIElmIHRo aXMgaXMgdGhlIHRvcC1sZXZlbCBtdWx0aWxpYiwgYnVpbGQgYWxsIHRoZSBvdGhlcgoJIyBtdWx0 aWxpYnMuCglAOiAkKE1BS0UpIDsgZXhlYyAkKE1VTFRJRE8pICQoRkxBR1NfVE9fUEFTUykgbXVs dGktZG8gRE89YWxsCgouUEhPTlk6IGNoZWNrIGluc3RhbGxjaGVjawpjaGVjazoKaW5zdGFsbGNo ZWNrOgoKLlBIT05ZOiBhbGwgY2xlYW4KCmNsZWFuOgoJLXJtIC1mIGNvbmZpZy5oIHN0YW1wLWgg c3RtcC1sZGlycyBsaWJnY2MubWFwCgktcm0gLWYgKiQob2JqZXh0KQoJLXJtIC1mICouZGVwCgkt cm0gLWYgKi5hCgktcm0gLWYgbGlidW53aW5kJChTSExJQl9FWFQpCgktcm0gLWYgbGliZ2NjX3Mq CglAJChNVUxUSUNMRUFOKSBtdWx0aS1jbGVhbiBETz1jbGVhbgpkaXN0Y2xlYW46IGNsZWFuCglA JChNVUxUSUNMRUFOKSBtdWx0aS1jbGVhbiBETz1kaXN0Y2xlYW4KCS1ybSAtZiAqfiBNYWtlZmls ZSBjb25maWcuY2FjaGUgY29uZmlnLnN0YXR1cyBtdWx0aWxpYi5vdXQKCS1ybSAtZiBjb25maWcu bG9nCm1haW50YWluZXItY2xlYW4gcmVhbGNsZWFuOiBkaXN0Y2xlYW4KCk1ha2VmaWxlOiAkKHNy Y2RpcikvTWFrZWZpbGUuaW4gY29uZmlnLnN0YXR1cwoJQ09ORklHX0ZJTEVTPU1ha2VmaWxlIENP TkZJR19IRUFERVJTPSAkKFNIRUxMKSAuL2NvbmZpZy5zdGF0dXMKCiMgRGVwZW5kaW5nIG9uIE1h a2VmaWxlIG1ha2VzIHN1cmUgdGhhdCBjb25maWcuc3RhdHVzIGhhcyBiZWVuIHJlLXJ1bgojIGlm IG5lZWRlZC4gIFRoaXMgcHJldmVudHMgcHJvYmxlbXMgd2l0aCBwYXJhbGxlbCBidWlsZHMuCmNv bmZpZy5oOiBzdGFtcC1oIDsgQHRydWUKc3RhbXAtaDogJChzcmNkaXIpL2NvbmZpZy5pbiBjb25m aWcuc3RhdHVzIE1ha2VmaWxlCglDT05GSUdfRklMRVM9IENPTkZJR19IRUFERVJTPWNvbmZpZy5o OiQoc3JjZGlyKS9jb25maWcuaW4gJChTSEVMTCkgLi9jb25maWcuc3RhdHVzCgpjb25maWcuc3Rh dHVzOiAkKHNyY2RpcikvY29uZmlndXJlICQoc3JjZGlyKS9jb25maWcuaG9zdAoJJChTSEVMTCkg Li9jb25maWcuc3RhdHVzIC0tcmVjaGVjawoKQVVUT0NPTkYgPSBhdXRvY29uZgpjb25maWd1cmVf ZGVwcyA9IFwKCSQoc3JjZGlyKS8uLi9jb25maWcvZW5hYmxlLm00IFwKCSQoc3JjZGlyKS8uLi9j b25maWcvdGxzLm00IFwKCSQoc3JjZGlyKS8uLi9jb25maWcvYWN4Lm00IFwKCSQoc3JjZGlyKS8u Li9jb25maWcvbm8tZXhlY3V0YWJsZXMubTQgXAoJJChzcmNkaXIpLy4uL2NvbmZpZy9vdmVycmlk ZS5tNCBcCgokKHNyY2RpcikvY29uZmlndXJlOiAjICQoc3JjZGlyKS9jb25maWd1cmUuYWMgJChj b25maWd1cmVfZGVwcykKCWNkICQoc3JjZGlyKSAmJiAkKEFVVE9DT05GKQoKaW5jbHVkZSAkKGdj Y19vYmpkaXIpL2xpYmdjYy5tdmFycwoKIyBGbGFncyB0byBwYXNzIHRvIHJlY3Vyc2l2ZSBtYWtl cy4KCkFSX0ZPUl9UQVJHRVQgPSAkKEFSKQpBUl9GTEFHU19GT1JfVEFSR0VUID0KQVJfQ1JFQVRF X0ZPUl9UQVJHRVQgPSAkKEFSX0ZPUl9UQVJHRVQpICQoQVJfRkxBR1NfRk9SX1RBUkdFVCkgcmMK QVJfRVhUUkFDVF9GT1JfVEFSR0VUID0gJChBUl9GT1JfVEFSR0VUKSAkKEFSX0ZMQUdTX0ZPUl9U QVJHRVQpIHgKQVdLID0gZ2F3awpHQ0NfRk9SX1RBUkdFVCA9ICQoQ0MpCkxJUE8gPSBhcm0tb2Ut bGludXgtZ251ZWFiaS1saXBvCkxJUE9fRk9SX1RBUkdFVCA9ICQoTElQTykKTUFDSE1PREVfSCA9 IG1hY2htb2RlLmggbW9kZS1jbGFzc2VzLmRlZiBpbnNuLW1vZGVzLmgKTk0gPSAvaG9tZS9qdXBp L29wZW5lbWJlZGRlZC90bXAvd29yay9hcm12N2EtaGFyZGZwLW9lLWxpbnV4LWdudWVhYmkvZ2Nj LWNyb3NzLTQuNS1yMzMuMStzdm5yMTcwNDQzL2djYy00XzUtYnJhbmNoL2J1aWxkLng4Nl82NC1s aW51eC5hcm0tb2UtbGludXgtZ251ZWFiaS8uL2djYy9ubQpOTV9GT1JfVEFSR0VUID0gJChOTSkK UkFOTElCX0ZPUl9UQVJHRVQgPSAkKFJBTkxJQikKU1RSSVAgPSAvaG9tZS9qdXBpL29wZW5lbWJl ZGRlZC90bXAvc3lzcm9vdHMveDg2XzY0LWxpbnV4L3Vzci9hcm12N2EtaGFyZGZwL2FybS1vZS1s aW51eC1nbnVlYWJpL2Jpbi9zdHJpcApTVFJJUF9GT1JfVEFSR0VUID0gJChTVFJJUCkKCiMgRGly ZWN0b3J5IGluIHdoaWNoIHRoZSBjb21waWxlciBmaW5kcyBsaWJyYXJpZXMgZXRjLgpsaWJzdWJk aXIgPSAkKGxpYmRpcikvZ2NjLyQoaG9zdF9ub25jYW5vbmljYWwpLyQodmVyc2lvbikKIyBVc2Vk IHRvIGluc3RhbGwgdGhlIHNoYXJlZCBsaWJnY2MuCnNsaWJkaXIgPSAkKGV4ZWNfcHJlZml4KS8k KGhvc3Rfbm9uY2Fub25pY2FsKS9saWIKCmV4cG9ydCBBUl9GT1JfVEFSR0VUCmV4cG9ydCBBUl9D UkVBVEVfRk9SX1RBUkdFVApleHBvcnQgQVJfRkxBR1NfRk9SX1RBUkdFVApleHBvcnQgQVJfRVhU UkFDVF9GT1JfVEFSR0VUCmV4cG9ydCBBV0sKZXhwb3J0IERFU1RESVIKZXhwb3J0IEdDQ19GT1Jf VEFSR0VUCmV4cG9ydCBJTkNMVURFUwpleHBvcnQgSU5TVEFMTF9EQVRBCmV4cG9ydCBMSUIxQVNN U1JDCmV4cG9ydCBMSUJHQ0MyX0NGTEFHUwpleHBvcnQgTElQT19GT1JfVEFSR0VUCmV4cG9ydCBN QUNITU9ERV9ICmV4cG9ydCBOTV9GT1JfVEFSR0VUCmV4cG9ydCBTVFJJUF9GT1JfVEFSR0VUCmV4 cG9ydCBSQU5MSUJfRk9SX1RBUkdFVApleHBvcnQgbGlic3ViZGlyCmV4cG9ydCBzbGliZGlyCgp2 ZXJzaW9uIDo9ICQoc2hlbGwgJChDQykgLWR1bXB2ZXJzaW9uKQoKaWZlcSAoJChkZWNpbWFsX2Zs b2F0KSx5ZXMpCmlmZXEgKCQoZW5hYmxlX2RlY2ltYWxfZmxvYXQpLGJpZCkKREVDTlVNSU5DID0g LUkkKHNyY2RpcikvY29uZmlnL2xpYmJpZCAtREVOQUJMRV9ERUNJTUFMX0JJRF9GT1JNQVQKZWxz ZQpERUNOVU1JTkMgPSAtSSQoc3JjZGlyKS8uLi9saWJkZWNudW1iZXIvJChlbmFibGVfZGVjaW1h bF9mbG9hdCkgXAoJICAgIC1JJChzcmNkaXIpLy4uL2xpYmRlY251bWJlcgplbmRpZgplbHNlCkRF Q05VTUlOQyA9CmVuZGlmCgojIFNwZWNpZnkgdGhlIGRpcmVjdG9yaWVzIHRvIGJlIHNlYXJjaGVk IGZvciBoZWFkZXIgZmlsZXMuCiMgQm90aCAuIGFuZCBzcmNkaXIgYXJlIHVzZWQsIGluIHRoYXQg b3JkZXIsCiMgc28gdGhhdCAqY29uZmlnLmggd2lsbCBiZSBmb3VuZCBpbiB0aGUgY29tcGlsYXRp b24KIyBzdWJkaXJlY3RvcnkgcmF0aGVyIHRoYW4gaW4gdGhlIHNvdXJjZSBkaXJlY3RvcnkuCiMg LUkkKEBEKSBhbmQgLUkkKHNyY2RpcikvJChARCkgY2F1c2UgdGhlIHN1YmRpcmVjdG9yeSBvZiB0 aGUgZmlsZQojIGN1cnJlbnRseSBiZWluZyBjb21waWxlZCwgaW4gYm90aCBzb3VyY2UgdHJlZXMs IHRvIGJlIGV4YW1pbmVkIGFzIHdlbGwuCklOQ0xVREVTID0gLUkuIC1JJChARCkgLUkkKGdjY19v YmpkaXIpIFwKCSAgIC1JJChzcmNkaXIpIC1JJChzcmNkaXIpLyQoQEQpIC1JJChzcmNkaXIpLy4u L2djYyBcCgkgICAtSSQoc3JjZGlyKS8uLi9pbmNsdWRlICQoREVDTlVNSU5DKQoKIyBGb3JjaWJs eSByZW1vdmUgYW55IHByb2ZpbGluZy1yZWxhdGVkIGZsYWdzLiAgVGhlcmUgaXMgbm8gcG9pbnQK IyBpbiBzdXBwb3J0aW5nIHByb2ZpbGVkIGJvb3RzdHJhcCBpbiB0aGlzIGxpYnJhcnkuCm92ZXJy aWRlIENGTEFHUyA6PSAkKGZpbHRlci1vdXQgLWZwcm9maWxlLWdlbmVyYXRlIC1mcHJvZmlsZS11 c2UsJChDRkxBR1MpKQoKIyBDRkxBR1MgZmlyc3QgaXMgbm90IHBlcmZlY3Q7IG5vcm1hbGx5IHNl dHRpbmcgQ0ZMQUdTIHNob3VsZCBvdmVycmlkZSBhbnkKIyBvcHRpb25zIGluIExJQkdDQzJfQ0ZM QUdTLiAgQnV0IExJQkdDQzJfQ0ZMQUdTIG1heSBjb250YWluIC1nMCwgYW5kIENGTEFHUwojIHdp bGwgdXN1YWxseSBjb250YWluIC1nLCBzbyBmb3IgdGhlIG1vbWVudCBDRkxBR1MgZ29lcyBmaXJz dC4gIFdlIG11c3QKIyBpbmNsdWRlIENGTEFHUyAtIHRoYXQncyB3aGVyZSBtdWx0aWxpYiBvcHRp b25zIGxpdmUuCklOVEVSTkFMX0NGTEFHUyA9ICQoQ0ZMQUdTKSAkKExJQkdDQzJfQ0ZMQUdTKSAk KEhPU1RfTElCR0NDMl9DRkxBR1MpIFwKCQkgICQoSU5DTFVERVMpIC1ESEFWRV9DQ19UTFMgCgpN VUxUSURJUiA6PSAkKHNoZWxsICQoQ0MpICQoQ0ZMQUdTKSAtcHJpbnQtbXVsdGktZGlyZWN0b3J5 KQpNVUxUSU9TRElSIDo9ICQoc2hlbGwgJChDQykgJChDRkxBR1MpIC1wcmludC1tdWx0aS1vcy1k aXJlY3RvcnkpCgpNVUxUSU9TU1VCRElSIDo9ICQoc2hlbGwgaWYgdGVzdCAkKE1VTFRJT1NESVIp ICE9IC47IHRoZW4gZWNobyAvJChNVUxUSU9TRElSKTsgZmkpCmluc3RfbGliZGlyID0gJChsaWJz dWJkaXIpJChNVUxUSVNVQkRJUikKaW5zdF9zbGliZGlyID0gJChzbGliZGlyKSQoTVVMVElPU1NV QkRJUikKCmdjY19jb21waWxlX2JhcmUgPSAkKENDKSAkKElOVEVSTkFMX0NGTEFHUykKY29tcGls ZV9kZXBzID0gLU1UICRAIC1NRCAtTVAgLU1GICQoYmFzZW5hbWUgJEApLmRlcApnY2NfY29tcGls ZSA9ICQoZ2NjX2NvbXBpbGVfYmFyZSkgLW8gJEAgJChjb21waWxlX2RlcHMpCmdjY19zX2NvbXBp bGUgPSAkKGdjY19jb21waWxlKSAtRFNIQVJFRAoKb2JqZWN0cyA9ICQoZmlsdGVyICUkKG9iamV4 dCksJF4pCgojIENvbGxlY3QgYW55IGhvc3Qtc3BlY2lmaWMgaW5mb3JtYXRpb24gZnJvbSBNYWtl ZmlsZSBmcmFnbWVudHMuCnRtYWtlX2ZpbGUgPSAgJChzcmNkaXIpL2NvbmZpZy9hcm0vdC1kaXZt b2QtZWYKaW5jbHVkZSAkKHNyY2RpcikvZW1wdHkubWsgJCh0bWFrZV9maWxlKQoKIyBPbmx5IGhh bmRsZSBzaGFyZWQgbGlicmFyaWVzIGlmIGJvdGg6CiMgICAtIHRoZSB1c2VyIHJlcXVlc3RlZCB0 aGVtCiMgICAtIHdlIGtub3cgaG93IHRvIGJ1aWxkIHRoZW0KaWZlcSAoJChTSExJQl9MSU5LKSwp CiAgZW5hYmxlX3NoYXJlZCA6PSBubwplbmRpZgoKaWZlcSAoJChlbmFibGVfc2hhcmVkKSx5ZXMp CiAgaXRlcmF0b3IgPSAkKHNyY2RpcikvZW1wdHkubWsgJChwYXRzdWJzdCAlLCQoc3JjZGlyKS9z aGFyZWQtb2JqZWN0Lm1rLCQoaXRlci1pdGVtcykpCgogIGluc3RhbGwtc2hhcmVkID0gaW5zdGFs bC1zaGFyZWQKCiAgaWZuZXEgKCQoTElCVU5XSU5EKSwpCiAgICBpbnN0YWxsLWxpYnVud2luZCA9 IGluc3RhbGwtbGlidW53aW5kCiAgZW5kaWYKCiMgRm9yIC1mdmlzaWJpbGl0eT1oaWRkZW4uICBX ZSBuZWVkIGJvdGggYSAtZnZpc2liaWxpdHk9aGlkZGVuIG9uCiMgdGhlIGNvbW1hbmQgbGluZSwg YW5kIGEgI2RlZmluZSB0byBwcmV2ZW50IGxpYmdjYzIuaCBldGMgZnJvbQojIG92ZXJyaWRpbmcg dGhhdCB3aXRoICNwcmFnbWFzLgp2aXNfaGlkZSA9IC1mdmlzaWJpbGl0eT1oaWRkZW4gLURISURF X0VYUE9SVFMKCmlmbmVxICgsJCh2aXNfaGlkZSkpCgojIElmIHdlIGhhdmUgLWZ2aXNpYmlsaXR5 PWhpZGRlbiwgdGhlbiB3ZSBuZWVkIHRvIGdlbmVyYXRlIGhpZGUKIyBsaXN0cyBmb3Igb2JqZWN0 IGZpbGVzIGltcGxlbWVudGVkIGluIGFzc2VtYmx5LgpBU01fSElEREVOX09QID0gLmhpZGRlbgoK ZGVmaW5lIGdlbi1oaWRlLWxpc3QKJChOTSkgLXBnICQ8IHwgXAogICQoQVdLKSAnTkYgPT0gMyAm JiAkJDIgIX4gL15bVU5dJCQvICYmICQkMyAhfiAvLipfY29tcGF0LyBcCiAgICAgICAgICYmICQk MyAhfiAvLipALiovIFwKCSB7IHByaW50ICJcdCQoQVNNX0hJRERFTl9PUCkiLCAkJDMgfScgPiAk QFQKbXYgLWYgJEBUICRACmVuZGVmCmVsc2UKZ2VuLWhpZGUtbGlzdCA9IGVjaG8gPiAkQAplbmRp ZgoKZWxzZQojIE5vdCBlbmFibGVfc2hhcmVkLgppdGVyYXRvciA9ICQoc3JjZGlyKS9lbXB0eS5t ayAkKHBhdHN1YnN0ICUsJChzcmNkaXIpL3N0YXRpYy1vYmplY3QubWssJChpdGVyLWl0ZW1zKSkK dmlzX2hpZGUgPQpnZW4taGlkZS1saXN0ID0gZWNobyA+IFwkQAplbmRpZgoKaWZuZXEgKCQoRVhU UkFfUEFSVFMpLCkKICBleHRyYS1wYXJ0cyA9IGxpYmdjYy1leHRyYS1wYXJ0cwogIElOU1RBTExf UEFSVFMgPSAkKEVYVFJBX1BBUlRTKQplbHNlCmlmbmVxICgkKEdDQ19FWFRSQV9QQVJUUyksKQog IGV4dHJhLXBhcnRzID0gZ2NjLWV4dHJhLXBhcnRzCiAgSU5TVEFMTF9QQVJUUyA9ICQoR0NDX0VY VFJBX1BBUlRTKQplbmRpZgplbmRpZgoKIyBMaWJyYXJ5IG1lbWJlcnMgZGVmaW5lZCBpbiBsaWJn Y2MyLmMuCmxpYjJmdW5jcyA9IF9tdWxkaTMgX25lZ2RpMiBfbHNocmRpMyBfYXNobGRpMyBfYXNo cmRpMyBfY21wZGkyIF91Y21wZGkyCSAgIFwKCSAgICBfY2xlYXJfY2FjaGUgX2VuYWJsZV9leGVj dXRlX3N0YWNrIF90cmFtcG9saW5lIF9fbWFpbiBfYWJzdnNpMiBcCgkgICAgX2Fic3ZkaTIgX2Fk ZHZzaTMgX2FkZHZkaTMgX3N1YnZzaTMgX3N1YnZkaTMgX211bHZzaTMgX211bHZkaTMgXAoJICAg IF9uZWd2c2kyIF9uZWd2ZGkyIF9jdG9ycyBfZmZzc2kyIF9mZnNkaTIgX2NseiBfY2x6c2kyIF9j bHpkaTIgIFwKCSAgICBfY3R6c2kyIF9jdHpkaTIgX3BvcGNvdW50X3RhYiBfcG9wY291bnRzaTIg X3BvcGNvdW50ZGkyCSAgIFwKCSAgICBfcGFyaXR5c2kyIF9wYXJpdHlkaTIgX3Bvd2lzZjIgX3Bv d2lkZjIgX3Bvd2l4ZjIgX3Bvd2l0ZjIJICAgXAoJICAgIF9tdWxzYzMgX211bGRjMyBfbXVseGMz IF9tdWx0YzMgX2RpdnNjMyBfZGl2ZGMzIF9kaXZ4YzMJICAgXAoJICAgIF9kaXZ0YzMgX2Jzd2Fw c2kyIF9ic3dhcGRpMgoKIyBUaGUgZmxvYXRpbmctcG9pbnQgY29udmVyc2lvbiByb3V0aW5lcyB0 aGF0IGludm9sdmUgYSBzaW5nbGUtd29yZCBpbnRlZ2VyLgojIFhYIHN0YW5kcyBmb3IgdGhlIGlu dGVnZXIgbW9kZS4Kc3dmbG9hdGZ1bmNzID0gJChwYXRzdWJzdCAlLF9maXh1bnMlWFgsc2YgZGYg eGYpCgojIExpa2V3aXNlIGRvdWJsZS13b3JkIHJvdXRpbmVzLgpkd2Zsb2F0ZnVuY3MgPSAkKHBh dHN1YnN0ICUsX2ZpeCVYWCxzZiBkZiB4ZiB0ZikgXAoJICAgICAgICQocGF0c3Vic3QgJSxfZml4 dW5zJVhYLHNmIGRmIHhmIHRmKSBcCgkgICAgICAgJChwYXRzdWJzdCAlLF9mbG9hdFhYJSxzZiBk ZiB4ZiB0ZikgXAoJICAgICAgICQocGF0c3Vic3QgJSxfZmxvYXR1blhYJSxzZiBkZiB4ZiB0ZikK CmlmZXEgKCQoTElCMl9TSURJVElfQ09OVl9GVU5DUyksKQogIGxpYjJmdW5jcyArPSAkKHN1YnN0 IFhYLHNpLCQoc3dmbG9hdGZ1bmNzKSkKICBsaWIyZnVuY3MgKz0gJChzdWJzdCBYWCxkaSwkKGR3 ZmxvYXRmdW5jcykpCmVuZGlmCgojIFRoZXNlIG1pZ2h0IGNhdXNlIGEgZGl2aWRlIG92ZXJmbG93 IHRyYXAgYW5kIHNvIGFyZSBjb21waWxlZCB3aXRoCiMgdW53aW5kZXIgaW5mby4KTElCMl9ESVZN T0RfRlVOQ1MgPSBfZGl2ZGkzIF9tb2RkaTMgX3VkaXZkaTMgX3Vtb2RkaTMgX3VkaXZfd19zZGl2 IF91ZGl2bW9kZGk0CgojIFJlbW92ZSBhbnkgb2JqZWN0cyBmcm9tIGxpYjJmdW5jcyBhbmQgTElC Ml9ESVZNT0RfRlVOQ1MgdGhhdCBhcmUKIyBkZWZpbmVkIGFzIG9wdGltaXplZCBhc3NlbWJseSBj b2RlIGluIExJQjFBU01GVU5DUyBvciBhcyBDIGNvZGUKIyBpbiBMSUIyRlVOQ1NfRVhDTFVERS4K bGliMmZ1bmNzIDo9ICQoZmlsdGVyLW91dCAkKExJQjJGVU5DU19FWENMVURFKSAkKExJQjFBU01G VU5DUyksJChsaWIyZnVuY3MpKQpMSUIyX0RJVk1PRF9GVU5DUyA6PSAkKGZpbHRlci1vdXQgJChM SUIyRlVOQ1NfRVhDTFVERSkgJChMSUIxQVNNRlVOQ1MpLCBcCgkJICAgICAgICQoTElCMl9ESVZN T0RfRlVOQ1MpKQoKIyBCdWlsZCAibGliZ2NjMSIgKGFzc2VtYmx5KSBjb21wb25lbnRzLgppZmVx ICgkKGVuYWJsZV9zaGFyZWQpLHllcykKCmxpYjFhc21mdW5jcy1vID0gJChwYXRzdWJzdCAlLCUk KG9iamV4dCksJChMSUIxQVNNRlVOQ1MpKQokKGxpYjFhc21mdW5jcy1vKTogJSQob2JqZXh0KTog JChnY2Nfc3JjZGlyKS9jb25maWcvJChMSUIxQVNNU1JDKSAlLnZpcwoJJChnY2NfY29tcGlsZSkg LURMJCogLXhhc3NlbWJsZXItd2l0aC1jcHAgXAoJICAtYyAkKGdjY19zcmNkaXIpL2NvbmZpZy8k KExJQjFBU01TUkMpIC1pbmNsdWRlICQqLnZpcwokKHBhdHN1YnN0ICUsJS52aXMsJChMSUIxQVNN RlVOQ1MpKTogJS52aXM6ICVfcyQob2JqZXh0KQoJJChnZW4taGlkZS1saXN0KQpsaWJnY2Mtb2Jq ZWN0cyArPSAkKGxpYjFhc21mdW5jcy1vKQoKbGliMWFzbWZ1bmNzLXMtbyA9ICQocGF0c3Vic3Qg JSwlX3MkKG9iamV4dCksJChMSUIxQVNNRlVOQ1MpKQokKGxpYjFhc21mdW5jcy1zLW8pOiAlX3Mk KG9iamV4dCk6ICQoZ2NjX3NyY2RpcikvY29uZmlnLyQoTElCMUFTTVNSQykKCSQoZ2NjX3NfY29t cGlsZSkgLURMJCogLXhhc3NlbWJsZXItd2l0aC1jcHAgXAoJICAtYyAkKGdjY19zcmNkaXIpL2Nv bmZpZy8kKExJQjFBU01TUkMpCmxpYmdjYy1zLW9iamVjdHMgKz0gJChsaWIxYXNtZnVuY3Mtcy1v KQoKZWxzZQoKbGliMWFzbWZ1bmNzLW8gPSAkKHBhdHN1YnN0ICUsJSQob2JqZXh0KSwkKExJQjFB U01GVU5DUykpCiQobGliMWFzbWZ1bmNzLW8pOiAlJChvYmpleHQpOiAkKGdjY19zcmNkaXIpL2Nv bmZpZy8kKExJQjFBU01TUkMpCgkkKGdjY19jb21waWxlKSAtREwkKiAteGFzc2VtYmxlci13aXRo LWNwcCBcCgkgIC1jICQoZ2NjX3NyY2RpcikvY29uZmlnLyQoTElCMUFTTVNSQykKbGliZ2NjLW9i amVjdHMgKz0gJChsaWIxYXNtZnVuY3MtbykKCmVuZGlmCgojIEJ1aWxkIGxpYjJmdW5jcy4gIEZv ciB0aGUgc3RhdGljIGxpYnJhcnkgYWxzbyBpbmNsdWRlIExJQjJGVU5DU19TVC4KbGliMmZ1bmNz LW8gPSAkKHBhdHN1YnN0ICUsJSQob2JqZXh0KSwkKGxpYjJmdW5jcykgJChMSUIyRlVOQ1NfU1Qp KQokKGxpYjJmdW5jcy1vKTogJSQob2JqZXh0KTogJChnY2Nfc3JjZGlyKS9saWJnY2MyLmMKCSQo Z2NjX2NvbXBpbGUpIC1ETCQqIC1jICQoZ2NjX3NyY2RpcikvbGliZ2NjMi5jIFwKCSAgJCh2aXNf aGlkZSkKbGliZ2NjLW9iamVjdHMgKz0gJChsaWIyZnVuY3MtbykKCmlmZXEgKCQoZW5hYmxlX3No YXJlZCkseWVzKQpsaWIyZnVuY3Mtcy1vID0gJChwYXRzdWJzdCAlLCVfcyQob2JqZXh0KSwkKGxp YjJmdW5jcykpCiQobGliMmZ1bmNzLXMtbyk6ICVfcyQob2JqZXh0KTogJChnY2Nfc3JjZGlyKS9s aWJnY2MyLmMKCSQoZ2NjX3NfY29tcGlsZSkgLURMJCogLWMgJChnY2Nfc3JjZGlyKS9saWJnY2My LmMKbGliZ2NjLXMtb2JqZWN0cyArPSAkKGxpYjJmdW5jcy1zLW8pCmVuZGlmCgppZm5lcSAoJChM SUIyX1NJRElUSV9DT05WX0ZVTkNTKSwpCiMgQnVpbGQgbGliZ2NjMi5jIGZvciBlYWNoIGNvbnZl cnNpb24gZnVuY3Rpb24sIHdpdGggYSBzcGVjaWZpYwojIEw8ZnVuYz4gZGVmaW5pdGlvbiBhbmQg TElCR0NDMl9VTklUU19QRVJfV09SRCBzZXR0aW5nLiAgVGhlIERJbW9kZQojIGZ1bmN0aW9ucyBh cmUgYnVpbHQgd2l0aCBhIHdvcmRzaXplIG9mIDQ7IHRoZSBUSW1vZGUgZnVuY3Rpb25zIGFyZQoj IGJ1aWx0IHdpdGggdGhlIHNhbWUgbGFiZWxzLCBidXQgYSB3b3Jkc2l6ZSBvZiA4LgoKc2lmdW5j cyA9ICQoc3Vic3QgWFgsc2ksJChzd2Zsb2F0ZnVuY3MpKQpkaWZ1bmNzID0gJChzdWJzdCBYWCxk aSwkKGR3ZmxvYXRmdW5jcykpCnRpZnVuY3MgPSAkKHN1YnN0IFhYLHRpLCQoZHdmbG9hdGZ1bmNz KSkKCml0ZXItaXRlbXMgOj0gJChzaWZ1bmNzKSAkKGRpZnVuY3MpICQodGlmdW5jcykKaXRlci1s YWJlbHMgOj0gJChzaWZ1bmNzKSAkKGRpZnVuY3MpICQoZGlmdW5jcykKaXRlci1zaXplcyA6PSAk KHBhdHN1YnN0ICUsNCwkKHNpZnVuY3MpICQoZGlmdW5jcykpICQocGF0c3Vic3QgJSw4LCQodGlm dW5jcykpCgppbmNsdWRlICQoc3JjZGlyKS9lbXB0eS5tayAkKHBhdHN1YnN0ICUsJChzcmNkaXIp L3NpZGl0aS1vYmplY3QubWssJChpdGVyLWl0ZW1zKSkKCmxpYmdjYy1vYmplY3RzICs9ICQocGF0 c3Vic3QgJSwlJChvYmpleHQpLCQoc2lmdW5jcykgJChkaWZ1bmNzKSAkKHRpZnVuY3MpKQppZmVx ICgkKGVuYWJsZV9zaGFyZWQpLHllcykKbGliZ2NjLXMtb2JqZWN0cyArPSAkKHBhdHN1YnN0ICUs JV9zJChvYmpleHQpLCQoc2lmdW5jcykgJChkaWZ1bmNzKSAkKHRpZnVuY3MpKQplbmRpZgplbmRp ZgoKaWZlcSAoJChMSUIyX0RJVk1PRF9FWENFUFRJT05fRkxBR1MpLCkKIyBQcm92aWRlIGRlZmF1 bHQgZmxhZ3MgZm9yIGNvbXBpbGluZyBkaXZtb2QgZnVuY3Rpb25zLCBpZiB0aGV5IGhhdmVuJ3Qg YmVlbgojIHNldCBhbHJlYWR5IGJ5IGEgdGFyZ2V0LXNwZWNpZmljIE1ha2VmaWxlIGZyYWdtZW50 LgpMSUIyX0RJVk1PRF9FWENFUFRJT05fRkxBR1MgOj0gLWZleGNlcHRpb25zIC1mbm9uLWNhbGwt ZXhjZXB0aW9ucwplbmRpZgoKIyBCdWlsZCBMSUIyX0RJVk1PRF9GVU5DUy4KbGliMi1kaXZtb2Qt byA9ICQocGF0c3Vic3QgJSwlJChvYmpleHQpLCQoTElCMl9ESVZNT0RfRlVOQ1MpKQokKGxpYjIt ZGl2bW9kLW8pOiAlJChvYmpleHQpOiAkKGdjY19zcmNkaXIpL2xpYmdjYzIuYwoJJChnY2NfY29t cGlsZSkgLURMJCogLWMgJChnY2Nfc3JjZGlyKS9saWJnY2MyLmMgXAoJICAkKExJQjJfRElWTU9E X0VYQ0VQVElPTl9GTEFHUykgJCh2aXNfaGlkZSkKbGliZ2NjLW9iamVjdHMgKz0gJChsaWIyLWRp dm1vZC1vKQoKaWZlcSAoJChlbmFibGVfc2hhcmVkKSx5ZXMpCmxpYjItZGl2bW9kLXMtbyA9ICQo cGF0c3Vic3QgJSwlX3MkKG9iamV4dCksJChMSUIyX0RJVk1PRF9GVU5DUykpCiQobGliMi1kaXZt b2Qtcy1vKTogJV9zJChvYmpleHQpOiAkKGdjY19zcmNkaXIpL2xpYmdjYzIuYwoJJChnY2Nfc19j b21waWxlKSAtREwkKiAtYyAkKGdjY19zcmNkaXIpL2xpYmdjYzIuYyBcCgkgICQoTElCMl9ESVZN T0RfRVhDRVBUSU9OX0ZMQUdTKQpsaWJnY2Mtcy1vYmplY3RzICs9ICQobGliMi1kaXZtb2Qtcy1v KQplbmRpZgoKIyAkKEZQQklUKSBldCBhbC4gYXJlIHBhdGhuYW1lcyByZWxhdGl2ZSB0byB0aGUg R0NDIGJ1aWxkCiMgZGlyZWN0b3J5OyB0aGUgc3VwcG9ydGluZyBmaWxlcyBhcmUgbWFkZSBieSB0 aGUgR0NDCiMgTWFrZWZpbGUuCiMgRklYTUU6IFNvb24gd2Ugd2lsbCBiZSBhYmxlIHRvIG1vdmUg dGhpcyBsb2dpYyBpbnRvIHRoaXMgZGlyZWN0b3J5LgoKaWZuZXEgKCQoZnBiaXQtaW4tbGliZ2Nj KSx5ZXMpCkZQQklUOj0kKGlmICQoRlBCSVQpLCQoZ2NjX29iamRpcikvJChGUEJJVCksKQpEUEJJ VDo9JChpZiAkKERQQklUKSwkKGdjY19vYmpkaXIpLyQoRFBCSVQpLCkKVFBCSVQ6PSQoaWYgJChU UEJJVCksJChnY2Nfb2JqZGlyKS8kKFRQQklUKSwpCmVuZGlmCgppZmVxICgkKFRQQklUKSwpCiMg X3NmX3RvX3RmIGFuZCBfZGZfdG9fdGYgcmVxdWlyZSB0cC1iaXQuYyBiZWluZyBjb21waWxlZCBp bi4KRlBCSVRfRlVOQ1MgOj0gJChmaWx0ZXItb3V0IF9zZl90b190ZiwkKEZQQklUX0ZVTkNTKSkK RFBCSVRfRlVOQ1MgOj0gJChmaWx0ZXItb3V0IF9kZl90b190ZiwkKERQQklUX0ZVTkNTKSkKZW5k aWYKCiMgQnVpbGQgRlBCSVQuCmlmbmVxICgkKEZQQklUKSwpCmZwYml0LW8gPSAkKHBhdHN1YnN0 ICUsJSQob2JqZXh0KSwkKEZQQklUX0ZVTkNTKSkKJChmcGJpdC1vKTogJSQob2JqZXh0KTogJChG UEJJVCkKCSQoZ2NjX2NvbXBpbGUpIC1ERklORV9HUkFJTkVEX0xJQlJBUklFUyAtREwkKiAtYyAk KEZQQklUKSAkKHZpc19oaWRlKQpsaWJnY2Mtb2JqZWN0cyArPSAkKGZwYml0LW8pCgppZmVxICgk KGVuYWJsZV9zaGFyZWQpLHllcykKZnBiaXQtcy1vID0gJChwYXRzdWJzdCAlLCVfcyQob2JqZXh0 KSwkKEZQQklUX0ZVTkNTKSkKJChmcGJpdC1zLW8pOiAlX3MkKG9iamV4dCk6ICQoRlBCSVQpCgkk KGdjY19zX2NvbXBpbGUpIC1ERklORV9HUkFJTkVEX0xJQlJBUklFUyAtREwkKiAtYyAkKEZQQklU KQpsaWJnY2Mtcy1vYmplY3RzICs9ICQoZnBiaXQtcy1vKQplbmRpZgplbmRpZgoKIyBCdWlsZCBE UEJJVC4KaWZuZXEgKCQoRFBCSVQpLCkKZHBiaXQtbyA9ICQocGF0c3Vic3QgJSwlJChvYmpleHQp LCQoRFBCSVRfRlVOQ1MpKQokKGRwYml0LW8pOiAlJChvYmpleHQpOiAkKERQQklUKQoJJChnY2Nf Y29tcGlsZSkgLURGSU5FX0dSQUlORURfTElCUkFSSUVTIC1ETCQqIC1jICQoRFBCSVQpICQodmlz X2hpZGUpCmxpYmdjYy1vYmplY3RzICs9ICQoZHBiaXQtbykKCmlmZXEgKCQoZW5hYmxlX3NoYXJl ZCkseWVzKQpkcGJpdC1zLW8gPSAkKHBhdHN1YnN0ICUsJV9zJChvYmpleHQpLCQoRFBCSVRfRlVO Q1MpKQokKGRwYml0LXMtbyk6ICVfcyQob2JqZXh0KTogJChEUEJJVCkKCSQoZ2NjX3NfY29tcGls ZSkgLURGSU5FX0dSQUlORURfTElCUkFSSUVTIC1ETCQqIC1jICQoRFBCSVQpCmxpYmdjYy1zLW9i amVjdHMgKz0gJChkcGJpdC1zLW8pCmVuZGlmCmVuZGlmCgojIEJ1aWxkIFRQQklULgppZm5lcSAo JChUUEJJVCksKQp0cGJpdC1vID0gJChwYXRzdWJzdCAlLCUkKG9iamV4dCksJChUUEJJVF9GVU5D UykpCiQodHBiaXQtbyk6ICUkKG9iamV4dCk6ICQoVFBCSVQpCgkkKGdjY19jb21waWxlKSAtREZJ TkVfR1JBSU5FRF9MSUJSQVJJRVMgLURMJCogLWMgJChUUEJJVCkgJCh2aXNfaGlkZSkKbGliZ2Nj LW9iamVjdHMgKz0gJCh0cGJpdC1vKQoKaWZlcSAoJChlbmFibGVfc2hhcmVkKSx5ZXMpCnRwYml0 LXMtbyA9ICQocGF0c3Vic3QgJSwlX3MkKG9iamV4dCksJChUUEJJVF9GVU5DUykpCiQodHBiaXQt cy1vKTogJV9zJChvYmpleHQpOiAkKFRQQklUKQoJJChnY2Nfc19jb21waWxlKSAtREZJTkVfR1JB SU5FRF9MSUJSQVJJRVMgLURMJCogLWMgJChUUEJJVCkKbGliZ2NjLXMtb2JqZWN0cyArPSAkKHRw Yml0LXMtbykKZW5kaWYKZW5kaWYKCiMgQnVpbGQgZGVjaW1hbCBmbG9hdGluZyBwb2ludCBzdXBw b3J0LgppZmVxICgkKGRlY2ltYWxfZmxvYXQpLHllcykKCiMgSWYgJERGUF9FTkFCTEUgaXMgc2V0 LCB0aGVuIHdlIHdhbnQgYWxsIGRhdGEgdHlwZSBzaXplcy4KaWZuZXEgKCQoREZQX0VOQUJMRSks KQpEMzJQQklUID0gMQpENjRQQklUID0gMQpEMTI4UEJJVCA9IDEKZW5kaWYKCmRmcC1maWxlbmFt ZXMgPQppZm5lcSAoJChEMzJQQklUKSQoRDY0UEJJVCkkKEQxMjhQQklUKSwpCmlmZXEgKCQoZW5h YmxlX2RlY2ltYWxfZmxvYXQpLGJpZCkKZGZwLWZpbGVuYW1lcyArPSBiaWRfZGVjaW1hbF9nbG9i YWxzIGJpZF9kZWNpbWFsX2RhdGEgXAoJCSBiaWRfYmluYXJ5ZGVjaW1hbCBiaWRfY29udmVydF9k YXRhIFwKCQkgX2lzaW5mZDMyIF9pc2luZmQ2NCBfaXNpbmZkMTI4IGJpZDY0X25vbmNvbXAgXAoJ CSBiaWQxMjhfbm9uY29tcCBiaWQxMjhfZm1hIGJpZF9yb3VuZCBiaWRfZnJvbV9pbnQgXAoJCSBi aWQ2NF9hZGQgYmlkMTI4X2FkZCBiaWQ2NF9kaXYgYmlkMTI4X2RpdiBcCgkJIGJpZDY0X211bCBi aWQxMjhfbXVsIGJpZDY0X2NvbXBhcmUgYmlkMTI4X2NvbXBhcmUgXAoJCSBiaWQxMjggYmlkMzJf dG9fYmlkNjQgYmlkMzJfdG9fYmlkMTI4IGJpZDY0X3RvX2JpZDEyOCBcCgkJIGJpZDY0X3RvX2lu dDMyIGJpZDY0X3RvX2ludDY0IFwKCQkgYmlkNjRfdG9fdWludDMyIGJpZDY0X3RvX3VpbnQ2NCBc CgkJIGJpZDEyOF90b19pbnQzMiBiaWQxMjhfdG9faW50NjQgXAoJCSBiaWQxMjhfdG9fdWludDMy IGJpZDEyOF90b191aW50NjQKZWxzZQpkZnAtZmlsZW5hbWVzICs9IGRlY0NvbnRleHQgZGVjTnVt YmVyIGRlY0V4Y2VwdCBkZWNSb3VuZCBkZWNMaWJyYXJ5IGRlY0RvdWJsZSBkZWNQYWNrZWQgZGVj UXVhZCBkZWNTaW5nbGUKZW5kaWYKZW5kaWYKCmRmcC1vYmplY3RzID0gJChwYXRzdWJzdCAlLCUk KG9iamV4dCksJChkZnAtZmlsZW5hbWVzKSkKaWZlcSAoJChlbmFibGVfZGVjaW1hbF9mbG9hdCks YmlkKQokKGRmcC1vYmplY3RzKTogJSQob2JqZXh0KTogJChzcmNkaXIpL2NvbmZpZy9saWJiaWQv JS5jCmVsc2UKJChkZnAtb2JqZWN0cyk6ICUkKG9iamV4dCk6ICQoc3JjZGlyKS8uLi9saWJkZWNu dW1iZXIvJS5jCmVuZGlmCgkkKGdjY19jb21waWxlKSAtYyAkPApsaWJnY2Mtb2JqZWN0cyArPSAk KGRmcC1vYmplY3RzKQoKZGVjYml0cy1maWxlbmFtZXMgPQppZm5lcSAoJChlbmFibGVfZGVjaW1h bF9mbG9hdCksYmlkKQppZm5lcSAoJChEMzJQQklUKSwpCmRlY2JpdHMtZmlsZW5hbWVzICs9IGRl Y2ltYWwzMgplbmRpZgoKaWZuZXEgKCQoRDY0UEJJVCksKQpkZWNiaXRzLWZpbGVuYW1lcyArPSBk ZWNpbWFsNjQKZW5kaWYKCmlmbmVxICgkKEQxMjhQQklUKSwpCmRlY2JpdHMtZmlsZW5hbWVzICs9 IGRlY2ltYWwxMjgKZW5kaWYKZW5kaWYKCmRlY2JpdHMtb2JqZWN0cyA9ICQocGF0c3Vic3QgJSwl JChvYmpleHQpLCQoZGVjYml0cy1maWxlbmFtZXMpKQppZmVxICgkKGVuYWJsZV9kZWNpbWFsX2Zs b2F0KSxiaWQpCiQoZGVjYml0cy1vYmplY3RzKTogJSQob2JqZXh0KTogJChzcmNkaXIpL2NvbmZp Zy9saWJiaWQvJS5jCmVsc2UKJChkZWNiaXRzLW9iamVjdHMpOiAlJChvYmpleHQpOiAkKHNyY2Rp cikvLi4vbGliZGVjbnVtYmVyLyQoZW5hYmxlX2RlY2ltYWxfZmxvYXQpLyUuYwplbmRpZgoJJChn Y2NfY29tcGlsZSkgLWMgJDwKbGliZ2NjLW9iamVjdHMgKz0gJChkZWNiaXRzLW9iamVjdHMpCgoj IE5leHQgYnVpbGQgaW5kaXZpZHVhbCBzdXBwb3J0IGZ1bmN0aW9ucy4KaWZlcSAoJChlbmFibGVf ZGVjaW1hbF9mbG9hdCksYmlkKQppZm5lcSAoJChEMzJQQklUKSwpCkQzMlBCSVRfRlVOQ1M6PSQo ZmlsdGVyLW91dCBfcGx1c19zZCBfbWludXNfc2QgX2NvbnZfc2QsICQoRDMyUEJJVF9GVU5DUykp CmVuZGlmCgppZm5lcSAoJChENjRQQklUKSwpCkQ2NFBCSVRfRlVOQ1M6PSQoZmlsdGVyLW91dCBf cGx1c19kZCBfbWludXNfZGQgX2NvbnZfZGQsICQoRDY0UEJJVF9GVU5DUykpCmVuZGlmCgppZm5l cSAoJChEMTI4UEJJVCksKQpEMTI4UEJJVF9GVU5DUzo9JChmaWx0ZXItb3V0IF9wbHVzX3RkIF9t aW51c190ZCBfY29udl90ZCwgJChEMTI4UEJJVF9GVU5DUykpCmVuZGlmCmVuZGlmCgppZm5lcSAo JChEMzJQQklUKSwpCmQzMnBiaXQtbyA9ICQocGF0c3Vic3QgJSwlJChvYmpleHQpLCQoRDMyUEJJ VF9GVU5DUykpCmlmZXEgKCQoZW5hYmxlX2RlY2ltYWxfZmxvYXQpLGJpZCkKJChkMzJwYml0LW8p OiAlJChvYmpleHQpOiAkKHNyY2RpcikvY29uZmlnL2xpYmJpZC8lLmMKZWxzZQokKGQzMnBiaXQt byk6ICUkKG9iamV4dCk6ICQoZ2NjX3NyY2RpcikvY29uZmlnL2RmcC1iaXQuYwplbmRpZgoJJChn Y2NfY29tcGlsZSkgLURGSU5FX0dSQUlORURfTElCUkFSSUVTIC1ETCQqIC1EV0lEVEg9MzIgLWMg JDwKbGliZ2NjLW9iamVjdHMgKz0gJChkMzJwYml0LW8pCmVuZGlmCgppZm5lcSAoJChENjRQQklU KSwpCmQ2NHBiaXQtbyA9ICQocGF0c3Vic3QgJSwlJChvYmpleHQpLCQoRDY0UEJJVF9GVU5DUykp CmlmZXEgKCQoZW5hYmxlX2RlY2ltYWxfZmxvYXQpLGJpZCkKJChkNjRwYml0LW8pOiAlJChvYmpl eHQpOiAkKHNyY2RpcikvY29uZmlnL2xpYmJpZC8lLmMKZWxzZQokKGQ2NHBiaXQtbyk6ICUkKG9i amV4dCk6ICQoZ2NjX3NyY2RpcikvY29uZmlnL2RmcC1iaXQuYwplbmRpZgoJJChnY2NfY29tcGls ZSkgLURGSU5FX0dSQUlORURfTElCUkFSSUVTIC1ETCQqIC1EV0lEVEg9NjQgLWMgJDwKbGliZ2Nj LW9iamVjdHMgKz0gJChkNjRwYml0LW8pCmVuZGlmCgppZm5lcSAoJChEMTI4UEJJVCksKQpkMTI4 cGJpdC1vID0gJChwYXRzdWJzdCAlLCUkKG9iamV4dCksJChEMTI4UEJJVF9GVU5DUykpCmlmZXEg KCQoZW5hYmxlX2RlY2ltYWxfZmxvYXQpLGJpZCkKJChkMTI4cGJpdC1vKTogJSQob2JqZXh0KTog JChzcmNkaXIpL2NvbmZpZy9saWJiaWQvJS5jCmVsc2UKJChkMTI4cGJpdC1vKTogJSQob2JqZXh0 KTogJChnY2Nfc3JjZGlyKS9jb25maWcvZGZwLWJpdC5jCmVuZGlmCgkkKGdjY19jb21waWxlKSAt REZJTkVfR1JBSU5FRF9MSUJSQVJJRVMgLURMJCogLURXSURUSD0xMjggLWMgJDwKbGliZ2NjLW9i amVjdHMgKz0gJChkMTI4cGJpdC1vKQplbmRpZgoKZW5kaWYKCmlmZXEgKCQoTElCR0NDX1NZTkMp LHllcykKbGliZ2NjLXN5bmMtc2l6ZS1mdW5jcyA6PSAkKGZvcmVhY2ggb3AsIGFkZCBzdWIgb3Ig YW5kIHhvciBuYW5kLCBcCgkJCSAgICBzeW5jX2ZldGNoX2FuZF8kKG9wKSBcCgkJCSAgICBzeW5j XyQob3ApX2FuZF9mZXRjaCkgXAoJCQkgIHN5bmNfYm9vbF9jb21wYXJlX2FuZF9zd2FwIFwKCQkJ ICBzeW5jX3ZhbF9jb21wYXJlX2FuZF9zd2FwIFwKCQkJICBzeW5jX2xvY2tfdGVzdF9hbmRfc2V0 CgpsaWJnY2Mtc3luYy1zaXplLWZ1bmNzIDo9ICQoZm9yZWFjaCBwcmVmaXgsICQobGliZ2NjLXN5 bmMtc2l6ZS1mdW5jcyksIFwKCQkJICAgICQoZm9yZWFjaCBzdWZmaXgsIDEgMiA0IDggMTYsIFwK CQkJICAgICAgJChwcmVmaXgpXyQoc3VmZml4KSkpCgpsaWJnY2Mtc3luYy1zaXplLWZ1bmNzLW8g PSAkKHBhdHN1YnN0ICUsJSQob2JqZXh0KSwkKGxpYmdjYy1zeW5jLXNpemUtZnVuY3MpKQokKGxp YmdjYy1zeW5jLXNpemUtZnVuY3Mtbyk6ICUkKG9iamV4dCk6ICQoZ2NjX3NyY2RpcikvY29uZmln L3N5bmMuYwoJJChnY2NfY29tcGlsZSkgJChMSUJHQ0NfU1lOQ19DRkxBR1MpIFwKCSAgLURGTj1g ZWNobyAiJCoiIHwgc2VkICdzL19bXl9dKiQkLy8nYCBcCgkgIC1EU0laRT1gZWNobyAiJCoiIHwg c2VkICdzLy4qXy8vJ2AgXAoJICAtYyAkKGdjY19zcmNkaXIpL2NvbmZpZy9zeW5jLmMgJCh2aXNf aGlkZSkKbGliZ2NjLW9iamVjdHMgKz0gJChsaWJnY2Mtc3luYy1zaXplLWZ1bmNzLW8pCgpsaWJn Y2Mtc3luYy1mdW5jcyA6PSBzeW5jX3N5bmNocm9uaXplCgpsaWJnY2Mtc3luYy1mdW5jcy1vID0g JChwYXRzdWJzdCAlLCUkKG9iamV4dCksJChsaWJnY2Mtc3luYy1mdW5jcykpCiQobGliZ2NjLXN5 bmMtZnVuY3Mtbyk6ICUkKG9iamV4dCk6ICQoZ2NjX3NyY2RpcikvY29uZmlnL3N5bmMuYwoJJChn Y2NfY29tcGlsZSkgJChMSUJHQ0NfU1lOQ19DRkxBR1MpIFwKCSAgLURMJCogXAoJICAtYyAkKGdj Y19zcmNkaXIpL2NvbmZpZy9zeW5jLmMgJCh2aXNfaGlkZSkKbGliZ2NjLW9iamVjdHMgKz0gJChs aWJnY2Mtc3luYy1mdW5jcy1vKQoKaWZlcSAoJChlbmFibGVfc2hhcmVkKSx5ZXMpCmxpYmdjYy1z eW5jLXNpemUtZnVuY3Mtcy1vID0gJChwYXRzdWJzdCAlLCVfcyQob2JqZXh0KSwgXAoJCQkgICAg ICAgJChsaWJnY2Mtc3luYy1zaXplLWZ1bmNzKSkKJChsaWJnY2Mtc3luYy1zaXplLWZ1bmNzLXMt byk6ICVfcyQob2JqZXh0KTogJChnY2Nfc3JjZGlyKS9jb25maWcvc3luYy5jCgkkKGdjY19zX2Nv bXBpbGUpICQoTElCR0NDX1NZTkNfQ0ZMQUdTKSBcCgkgIC1ERk49YGVjaG8gIiQqIiB8IHNlZCAn cy9fW15fXSokJC8vJ2AgXAoJICAtRFNJWkU9YGVjaG8gIiQqIiB8IHNlZCAncy8uKl8vLydgIFwK CSAgLWMgJChnY2Nfc3JjZGlyKS9jb25maWcvc3luYy5jCmxpYmdjYy1zLW9iamVjdHMgKz0gJChs aWJnY2Mtc3luYy1zaXplLWZ1bmNzLXMtbykKCmxpYmdjYy1zeW5jLWZ1bmNzLXMtbyA9ICQocGF0 c3Vic3QgJSwlX3MkKG9iamV4dCksJChsaWJnY2Mtc3luYy1mdW5jcykpCiQobGliZ2NjLXN5bmMt ZnVuY3Mtcy1vKTogJV9zJChvYmpleHQpOiAkKGdjY19zcmNkaXIpL2NvbmZpZy9zeW5jLmMKCSQo Z2NjX3NfY29tcGlsZSkgJChMSUJHQ0NfU1lOQ19DRkxBR1MpIFwKCSAgLURMJCoJXAoJICAtYyAk KGdjY19zcmNkaXIpL2NvbmZpZy9zeW5jLmMKbGliZ2NjLXMtb2JqZWN0cyArPSAkKGxpYmdjYy1z eW5jLWZ1bmNzLXMtbykKZW5kaWYKZW5kaWYKCiMgQnVpbGQgZml4ZWQtcG9pbnQgc3VwcG9ydC4K aWZlcSAoJChmaXhlZF9wb2ludCkseWVzKQoKIyBHZW5lcmF0ZSBwZXJtdXRhdGlvbnMgb2YgZnVu Y3Rpb24gbmFtZSBhbmQgbW9kZQpmaXhlZC1sYWJlbHMgOj0gJChzaGVsbCAkKFNIRUxMKSAkKHNy Y2RpcikvZ2VuLWZpeGVkLnNoIGFyaXRoIGxhYmVscykKZml4ZWQtZnVuY3MgOj0gJChzaGVsbCAk KFNIRUxMKSAkKHNyY2RpcikvZ2VuLWZpeGVkLnNoIGFyaXRoIGZ1bmNzKQpmaXhlZC1tb2RlcyA6 PSAkKHNoZWxsICQoU0hFTEwpICQoc3JjZGlyKS9nZW4tZml4ZWQuc2ggYXJpdGggbW9kZXMpCgoj IEdlbmVyYXRlIHRoZSBydWxlcyBmb3IgZWFjaCBhcml0aG1ldGljIGZ1bmN0aW9uCml0ZXItaXRl bXMgOj0gJChmaXhlZC1mdW5jcykKaXRlci1sYWJlbHMgOj0gJChmaXhlZC1sYWJlbHMpCml0ZXIt ZnJvbSA6PSAkKGZpeGVkLW1vZGVzKQppdGVyLXRvIDo9ICQoZml4ZWQtbW9kZXMpCmluY2x1ZGUg JChzcmNkaXIpL2VtcHR5Lm1rICQocGF0c3Vic3QgJSwkKHNyY2RpcikvZml4ZWQtb2JqLm1rLCQo aXRlci1pdGVtcykpCgojIEFkZCBhcml0aG1ldGljIGZ1bmN0aW9ucyB0byBsaXN0IG9mIG9iamVj dHMgdG8gYmUgYnVpbHQKbGliZ2NjLW9iamVjdHMgKz0gJChwYXRzdWJzdCAlLCUkKG9iamV4dCks JChmaXhlZC1mdW5jcykpCmlmZXEgKCQoZW5hYmxlX3NoYXJlZCkseWVzKQpsaWJnY2Mtcy1vYmpl Y3RzICs9ICQocGF0c3Vic3QgJSwlX3MkKG9iamV4dCksJChmaXhlZC1mdW5jcykpCmVuZGlmCgoj IENvbnZlcnQgZnJvbSBvciB0byBmcmFjdGlvbmFsCmZpeGVkLWNvbnYtZnVuY3MgOj0gJChzaGVs bCAkKFNIRUxMKSAkKHNyY2RpcikvZ2VuLWZpeGVkLnNoIGNvbnYgZnVuY3MpCmZpeGVkLWNvbnYt bGFiZWxzIDo9ICQoc2hlbGwgJChTSEVMTCkgJChzcmNkaXIpL2dlbi1maXhlZC5zaCBjb252IGxh YmVscykKZml4ZWQtY29udi1mcm9tIDo9ICQoc2hlbGwgJChTSEVMTCkgJChzcmNkaXIpL2dlbi1m aXhlZC5zaCBjb252IGZyb20pCmZpeGVkLWNvbnYtdG8gOj0gICQoc2hlbGwgJChTSEVMTCkgJChz cmNkaXIpL2dlbi1maXhlZC5zaCBjb252IHRvKQoKIyBHZW5lcmF0ZSB0aGUgbWFrZSBydWxlcyBm b3IgZWFjaCBjb252ZXJzaW9uIGZ1bmN0aW9uCml0ZXItaXRlbXMgOj0gJChmaXhlZC1jb252LWZ1 bmNzKQppdGVyLWxhYmVscyA6PSAkKGZpeGVkLWNvbnYtbGFiZWxzKQppdGVyLWZyb20gOj0gJChm aXhlZC1jb252LWZyb20pCml0ZXItdG8gOj0gJChmaXhlZC1jb252LXRvKQppbmNsdWRlICQoc3Jj ZGlyKS9lbXB0eS5tayAkKHBhdHN1YnN0ICUsJChzcmNkaXIpL2ZpeGVkLW9iai5taywkKGl0ZXIt aXRlbXMpKQoKIyBBZGQgY29udmVyc2lvbiBmdW5jdGlvbnMgdG8gbGlzdCBvZiBvYmplY3RzIHRv IGJlIGJ1aWx0CmxpYmdjYy1vYmplY3RzICs9ICQocGF0c3Vic3QgJSwlJChvYmpleHQpLCQoZml4 ZWQtY29udi1mdW5jcykpCmlmZXEgKCQoZW5hYmxlX3NoYXJlZCkseWVzKQpsaWJnY2Mtcy1vYmpl Y3RzICs9ICQocGF0c3Vic3QgJSwlX3MkKG9iamV4dCksJChmaXhlZC1jb252LWZ1bmNzKSkKZW5k aWYKCmVuZGlmCgojIEJ1aWxkIExJQjJBREQgYW5kIExJQjJBRERfU1QuCmlmbmVxICgkKGZpbHRl ci1vdXQgJS5jICUuUyAlLmFzbSwkKExJQjJBREQpICQoTElCMkFERF9TVCkpLCkKJChlcnJvciBV bnN1cHBvcnRlZCBmaWxlcyBpbiBMSUIyQUREIG9yIExJQjJBRERfU1QuKQplbmRpZgoKbGliZ2Nj LW9iamVjdHMgKz0gJChhZGRzdWZmaXggJChvYmpleHQpLCQoYmFzZW5hbWUgJChub3RkaXIgJChM SUIyQUREKSkpKQpsaWJnY2Mtb2JqZWN0cyArPSAkKGFkZHN1ZmZpeCAkKG9iamV4dCksJChiYXNl bmFtZSAkKG5vdGRpciAkKExJQjJBRERfU1QpKSkpCgpjX2ZsYWdzIDo9Cml0ZXItaXRlbXMgOj0g JChMSUIyQUREKSAkKExJQjJBRERfU1QpCmluY2x1ZGUgJChpdGVyYXRvcikKCmlmZXEgKCQoZW5h YmxlX3NoYXJlZCkseWVzKQpsaWJnY2Mtcy1vYmplY3RzICs9ICQoYWRkc3VmZml4IF9zJChvYmpl eHQpLCQoYmFzZW5hbWUgJChub3RkaXIgJChMSUIyQUREKSkpKQplbmRpZgoKIyBCdWlsZCBMSUIy QURERUgsIExJQjJBRERFSFNUQVRJQywgYW5kIExJQjJBRERFSFNIQVJFRC4gIElmIHdlIGRvbid0 IGhhdmUKIyBsaWJnY2NfZWguYSwgb25seSBMSUIyQURERUggbWF0dGVycy4gIElmIHdlIGRvLCBv bmx5IExJQjJBRERFSFNUQVRJQyBhbmQKIyBMSUIyQURERUhTSEFSRUQgbWF0dGVyLiAgKFVzdWFs bHkgYWxsIHRocmVlIGFyZSBpZGVudGljYWwuKQoKY19mbGFncyA6PSAtZmV4Y2VwdGlvbnMKCmlm ZXEgKCQoZW5hYmxlX3NoYXJlZCkseWVzKQoKbGliZ2NjLWVoLW9iamVjdHMgKz0gJChhZGRzdWZm aXggJChvYmpleHQpLCQoYmFzZW5hbWUgJChub3RkaXIgJChMSUIyQURERUhTVEFUSUMpKSkpCmxp YmdjYy1zLW9iamVjdHMgKz0gJChhZGRzdWZmaXggX3MkKG9iamV4dCksJChiYXNlbmFtZSAkKG5v dGRpciAkKExJQjJBRERFSFNIQVJFRCkpKSkKCml0ZXItaXRlbXMgOj0gJChzb3J0ICQoTElCMkFE REVIU1RBVElDKSAkKExJQjJBRERFSFNIQVJFRCkpCmluY2x1ZGUgJChpdGVyYXRvcikKCmVsc2UK IyBOb3Qgc2hhcmVkLiAgTElCMkFEREVIIGFyZSBhZGRlZCB0byBsaWJnY2MuYS4KCmxpYmdjYy1v YmplY3RzICs9ICQoYWRkc3VmZml4ICQob2JqZXh0KSwkKGJhc2VuYW1lICQobm90ZGlyICQoTElC MkFEREVIKSkpKQoKaXRlci1pdGVtcyA6PSAkKExJQjJBRERFSCkKaW5jbHVkZSAkKGl0ZXJhdG9y KQoKZW5kaWYKCiMgQnVpbGQgTElCVU5XSU5ELgoKY19mbGFncyA6PSAtZmV4Y2VwdGlvbnMKCmxp YnVud2luZC1vYmplY3RzICs9ICQoYWRkc3VmZml4ICQob2JqZXh0KSwkKGJhc2VuYW1lICQobm90 ZGlyICQoTElCVU5XSU5EKSkpKQoKaWZlcSAoJChlbmFibGVfc2hhcmVkKSx5ZXMpCmxpYnVud2lu ZC1zLW9iamVjdHMgKz0gJChhZGRzdWZmaXggX3MkKG9iamV4dCksJChiYXNlbmFtZSAkKG5vdGRp ciAkKExJQlVOV0lORCkpKSkKZW5kaWYKCml0ZXItaXRlbXMgOj0gJChMSUJVTldJTkQpCmluY2x1 ZGUgJChpdGVyYXRvcikKCiMgQnVpbGQgbGliZ2NvdiBjb21wb25lbnRzLgpsaWJnY292LW9iamVj dHMgPSAkKHBhdHN1YnN0ICUsJSQob2JqZXh0KSwkKExJQkdDT1YpKQokKGxpYmdjb3Ytb2JqZWN0 cyk6ICUkKG9iamV4dCk6ICQoZ2NjX3NyY2RpcikvbGliZ2Nvdi5jCgkkKGdjY19jb21waWxlKSAt REwkKiAtYyAkKGdjY19zcmNkaXIpL2xpYmdjb3YuYwoKCiMgU3RhdGljIGxpYnJhcmllcy4KbGli Z2NjLmE6ICQobGliZ2NjLW9iamVjdHMpCmxpYmdjb3YuYTogJChsaWJnY292LW9iamVjdHMpCmxp YnVud2luZC5hOiAkKGxpYnVud2luZC1vYmplY3RzKQpsaWJnY2NfZWguYTogJChsaWJnY2MtZWgt b2JqZWN0cykKCmxpYmdjYy5hIGxpYmdjb3YuYSBsaWJ1bndpbmQuYSBsaWJnY2NfZWguYToKCS1y bSAtZiAkQAoKCW9iamVjdHM9IiQob2JqZWN0cykiOwkJCQkJXAoJaWYgdGVzdCAteiAiJCRvYmpl Y3RzIjsgdGhlbgkJCQlcCgkgIGVjaG8gJ2ludCBfX2xpYmdjY19laF9kdW1teTsnID4gZWhfZHVt bXkuYzsJCVwKCSAgJChnY2NfY29tcGlsZV9iYXJlKSAkKHZpc19oaWRlKSAtYyBlaF9kdW1teS5j CQlcCgkgICAgIC1vIGVoX2R1bW15JChvYmpleHQpOwkJCQlcCgkgIG9iamVjdHM9ZWhfZHVtbXkk KG9iamV4dCk7CQkJCVwKCWZpOwkJCQkJCQlcCgkkKEFSX0NSRUFURV9GT1JfVEFSR0VUKSAkQCAk JG9iamVjdHMKCgkkKFJBTkxJQikgJEAKCmFsbDogbGliZ2NjLmEgbGliZ2Nvdi5hCgppZm5lcSAo JChMSUJVTldJTkQpLCkKYWxsOiBsaWJ1bndpbmQuYQpsaWJnY2NfcyQoU0hMSUJfRVhUKTogbGli dW53aW5kJChTSExJQl9FWFQpCmVuZGlmCgppZmVxICgkKGVuYWJsZV9zaGFyZWQpLHllcykKYWxs OiBsaWJnY2NfZWguYSBsaWJnY2NfcyQoU0hMSUJfRVhUKQppZm5lcSAoJChMSUJVTldJTkQpLCkK YWxsOiBsaWJ1bndpbmQkKFNITElCX0VYVCkKZW5kaWYKZW5kaWYKCmlmZXEgKCQoZW5hYmxlX3No YXJlZCkseWVzKQoKIyBNYXAtZmlsZSBnZW5lcmF0aW9uLgppZm5lcSAoJChTSExJQl9NS01BUCks KQpsaWJnY2MubWFwOiAkKFNITElCX01LTUFQKSAkKFNITElCX01BUEZJTEVTKSAkKGxpYmdjYy1z LW9iamVjdHMpCgl7ICQoTk0pICQoU0hMSUJfTk1fRkxBR1MpICQobGliZ2NjLXMtb2JqZWN0cyk7 IGVjaG8gJSU7IFwKCSAgY2F0ICQoU0hMSUJfTUFQRklMRVMpIFwKCSAgICB8IHNlZCAtZSAnL15b IAldKiMvZCcgXAoJCSAgLWUgJ3MvXiVcKGlmXHxlbHNlXHxlbGlmXHxlbmRpZlx8ZGVmaW5lXCkv I1wxLycgXAoJICAgIHwgJChnY2NfY29tcGlsZV9iYXJlKSAtRSAteGFzc2VtYmxlci13aXRoLWNw cCAtOyBcCgl9IHwgJChBV0spIC1mICQoU0hMSUJfTUtNQVApICQoU0hMSUJfTUtNQVBfT1BUUykg PiB0bXAtJEAKCW12IHRtcC0kQCAkQApsaWJnY2NfcyQoU0hMSUJfRVhUKTogbGliZ2NjLm1hcApt YXBmaWxlID0gbGliZ2NjLm1hcAplbmRpZgoKbGliZ2NjX3MkKFNITElCX0VYVCk6ICQobGliZ2Nj LXMtb2JqZWN0cykgJChleHRyYS1wYXJ0cykKCSMgQG11bHRpbGliX2ZsYWdzQCBpcyBzdGlsbCBu ZWVkZWQgYmVjYXVzZSB0aGlzIG1heSB1c2UKCSMgJChHQ0NfRk9SX1RBUkdFVCkgYW5kICQoTElC R0NDMl9DRkxBR1MpIGRpcmVjdGx5LgoJIyBAbXVsdGlsaWJfZGlyQCBpcyBub3QgcmVhbGx5IG5l Y2Vzc2FyeSwgYnV0IHNvbWV0aW1lcyBpdCBoYXMKCSMgbW9yZSB1c2VzIHRoYW4ganVzdCBhIGRp cmVjdG9yeSBuYW1lLgoJJChta2luc3RhbGxkaXJzKSAkKE1VTFRJRElSKQoJJChzdWJzdCBAbXVs dGlsaWJfZmxhZ3NALCQoQ0ZMQUdTKSAtQi4vLCQoc3Vic3QgXAoJCUBtdWx0aWxpYl9kaXJALCQo TVVMVElESVIpLCQoc3Vic3QgXAoJCUBzaGxpYl9vYmpzQCwkKG9iamVjdHMpLCQoc3Vic3QgXAoJ CUBzaGxpYl9iYXNlX25hbWVALGxpYmdjY19zLCQoc3Vic3QgXAoJCUBzaGxpYl9tYXBfZmlsZUAs JChtYXBmaWxlKSwkKHN1YnN0IFwKCQlAc2hsaWJfc2xpYmRpcl9xdWFsQCwkKE1VTFRJT1NTVUJE SVIpLCQoc3Vic3QgXAoJCUBzaGxpYl9zbGliZGlyQCwkKHNobGliX3NsaWJkaXIpLCQoU0hMSUJf TElOSykpKSkpKSkpCgpsaWJ1bndpbmQkKFNITElCX0VYVCk6ICQobGlidW53aW5kLXMtb2JqZWN0 cykgJChleHRyYS1wYXJ0cykKCSMgQG11bHRpbGliX2ZsYWdzQCBpcyBzdGlsbCBuZWVkZWQgYmVj YXVzZSB0aGlzIG1heSB1c2UKCSMgJChHQ0NfRk9SX1RBUkdFVCkgYW5kICQoTElCR0NDMl9DRkxB R1MpIGRpcmVjdGx5LgoJIyBAbXVsdGlsaWJfZGlyQCBpcyBub3QgcmVhbGx5IG5lY2Vzc2FyeSwg YnV0IHNvbWV0aW1lcyBpdCBoYXMKCSMgbW9yZSB1c2VzIHRoYW4ganVzdCBhIGRpcmVjdG9yeSBu YW1lLgoJJChta2luc3RhbGxkaXJzKSAkKE1VTFRJRElSKQoJJChzdWJzdCBAbXVsdGlsaWJfZmxh Z3NALCQoQ0ZMQUdTKSAtQi4vLCQoc3Vic3QgXAoJCUBtdWx0aWxpYl9kaXJALCQoTVVMVElESVIp LCQoc3Vic3QgXAoJCUBzaGxpYl9vYmpzQCwkKG9iamVjdHMpLCQoc3Vic3QgXAoJCUBzaGxpYl9i YXNlX25hbWVALGxpYnVud2luZCwkKHN1YnN0IFwKCQlAc2hsaWJfc2xpYmRpcl9xdWFsQCwkKE1V TFRJT1NTVUJESVIpLCQoU0hMSUJVTldJTkRfTElOSykpKSkpKQoKZW5kaWYKCiMgQnVpbGQgdGhl IHN0YW5kYXJkIEdDQyBzdGFydGZpbGVzIGFuZCBlbmRmaWxlcy4KQUxMX0NSVF9DRkxBR1MgPSAk KENGTEFHUykgJChDUlRTVFVGRl9DRkxBR1MpICQoSU5DTFVERVMpCmNydF9jb21waWxlID0gJChD QykgJChBTExfQ1JUX0NGTEFHUykgLW8gJEAgJChjb21waWxlX2RlcHMpCgppZmVxICgkKENVU1RP TV9DUlRTVFVGRiksKQpjcnRiZWdpbiQob2JqZXh0KTogJChnY2Nfc3JjZGlyKS9jcnRzdHVmZi5j CgkkKGNydF9jb21waWxlKSAkKENSVFNUVUZGX1RfQ0ZMQUdTKSBcCgkgIC1jICQoZ2NjX3NyY2Rp cikvY3J0c3R1ZmYuYyAtRENSVF9CRUdJTgoKY3J0ZW5kJChvYmpleHQpOiAkKGdjY19zcmNkaXIp L2NydHN0dWZmLmMKCSQoY3J0X2NvbXBpbGUpICQoQ1JUU1RVRkZfVF9DRkxBR1MpIFwKCSAgLWMg JChnY2Nfc3JjZGlyKS9jcnRzdHVmZi5jIC1EQ1JUX0VORAoKIyBUaGVzZSBhcmUgdmVyc2lvbnMg b2YgY3J0YmVnaW4gYW5kIGNydGVuZCBmb3Igc2hhcmVkIGxpYnJhcmllcy4KY3J0YmVnaW5TJChv YmpleHQpOiAkKGdjY19zcmNkaXIpL2NydHN0dWZmLmMKCSQoY3J0X2NvbXBpbGUpICQoQ1JUU1RV RkZfVF9DRkxBR1NfUykgXAoJICAtYyAkKGdjY19zcmNkaXIpL2NydHN0dWZmLmMgLURDUlRfQkVH SU4gLURDUlRTVFVGRlNfTwoKY3J0ZW5kUyQob2JqZXh0KTogJChnY2Nfc3JjZGlyKS9jcnRzdHVm Zi5jCgkkKGNydF9jb21waWxlKSAkKENSVFNUVUZGX1RfQ0ZMQUdTX1MpIFwKCSAgLWMgJChnY2Nf c3JjZGlyKS9jcnRzdHVmZi5jIC1EQ1JUX0VORCAtRENSVFNUVUZGU19PCgojIFRoaXMgaXMgYSB2 ZXJzaW9uIG9mIGNydGJlZ2luIGZvciAtc3RhdGljIGxpbmtzLgpjcnRiZWdpblQubzogJChnY2Nf c3JjZGlyKS9jcnRzdHVmZi5jCgkkKGNydF9jb21waWxlKSAkKENSVFNUVUZGX1RfQ0ZMQUdTKSBc CgkgIC1jICQoZ2NjX3NyY2RpcikvY3J0c3R1ZmYuYyAtRENSVF9CRUdJTiAtRENSVFNUVUZGVF9P CmVuZGlmCgojIEJ1aWxkIGV4dHJhIHN0YXJ0ZmlsZXMgaW4gdGhlIGxpYmdjYyBkaXJlY3Rvcnku Ci5QSE9OWTogbGliZ2NjLWV4dHJhLXBhcnRzCmxpYmdjYy1leHRyYS1wYXJ0czogJChFWFRSQV9Q QVJUUykKaWZuZXEgKCQoR0NDX0VYVFJBX1BBUlRTKSwpCmlmbmVxICgkKHNvcnQgJChFWFRSQV9Q QVJUUykpLCQoR0NDX0VYVFJBX1BBUlRTKSkKCSMgSWYgdGhlIGdjYyBkaXJlY3Rvcnkgc3BlY2lm aWVzIHdoaWNoIGV4dHJhIHBhcnRzIHRvCgkjIGJ1aWxkIGZvciB0aGlzIHRhcmdldCwgYW5kIHRo ZSBsaWJnY2MgY29uZmlndXJhdGlvbiBhbHNvCgkjIHNwZWNpZmllcywgbWFrZSBzdXJlIHRoZXkg bWF0Y2guICBUaGlzIGNhbiBiZSByZW1vdmVkCgkjIHdoZW4gdGhlIGdjYyBkaXJlY3Rvcnkgbm8g bG9uZ2VyIGhvbGRzIGxpYmdjYyBjb25maWd1cmF0aW9uOwoJIyBpdCBpcyB1c2VmdWwgd2hlbiBt aWdyYXRpbmcgYSB0YXJnZXQuCglAZWNobyAiQ29uZmlndXJhdGlvbiBtaXNtYXRjaCEiCglAZWNo byAiRXh0cmEgcGFydHMgZnJvbSBnY2MgZGlyZWN0b3J5OiAkKEdDQ19FWFRSQV9QQVJUUykiCglA ZWNobyAiRXh0cmEgcGFydHMgZnJvbSBsaWJnY2M6ICQoRVhUUkFfUEFSVFMpIgoJZXhpdCAxCmVu ZGlmCmVuZGlmCgoJIyBFYXJseSBjb3B5YmFjazsgc2VlICJhbGwiIGFib3ZlIGZvciB0aGUgcmF0 aW9uYWxlLiAgVGhlCgkjIGVhcmx5IGNvcHkgaXMgbmVjZXNzYXJ5IHNvIHRoYXQgdGhlIGdjYyAt QiBvcHRpb25zIGZpbmQKCSMgdGhlIHJpZ2h0IHN0YXJ0dXAgZmlsZXMgd2hlbiBsaW5raW5nIHNo YXJlZCBsaWJnY2MuCgkkKG1raW5zdGFsbGRpcnMpICQoZ2NjX29iamRpcikkKE1VTFRJU1VCRElS KQoJcGFydHM9IiQoRVhUUkFfUEFSVFMpIjsJCQkJCVwKCWZvciBmaWxlIGluICQkcGFydHM7IGRv CQkJCQlcCgkgIHJtIC1mICQoZ2NjX29iamRpcikkKE1VTFRJU1VCRElSKS8kJGZpbGU7CQlcCgkg ICQoSU5TVEFMTF9EQVRBKSAkJGZpbGUgJChnY2Nfb2JqZGlyKSQoTVVMVElTVUJESVIpLzsJXAoJ ZG9uZQoKIyBCdWlsZCBleHRyYSBzdGFydGZpbGVzIGluIHRoZSBnY2MgZGlyZWN0b3J5LCBmb3Ig dW5jb252ZXJ0ZWQKIyB0YXJnZXRzLgouUEhPTlk6IGdjYy1leHRyYS1wYXJ0cwpnY2MtZXh0cmEt cGFydHM6CgkjIFJlY3Vyc2l2ZWx5IGludm9rZSBtYWtlIGluIHRoZSBHQ0MgZGlyZWN0b3J5IHRv IGJ1aWxkIGFueQoJIyBzdGFydGZpbGVzIChmb3Igbm93KS4gIFdlIG11c3QgZG8gdGhpcyBqdXN0 IG9uY2UsIHBhc3NpbmcKCSMgaXQgYWxsIHRoZSBHQ0NfRVhUUkFfUEFSVFMgYXMgc2ltdWx0YW5l b3VzIGdvYWwgdGFyZ2V0cywKCSMgc28gdGhhdCBydWxlcyB3aGljaCBjYW5ub3QgZXhlY3V0ZSBz aW11bHRhbmVvdXNseSBhcmUgcHJvcGVybHkKCSMgc2VyaWFsaXplZC4gIFdlIGluZGlyZWN0IHRo cm91Z2ggVF9UQVJHRVQgaW4gY2FzZSBhbnkgbXVsdGlsaWIKCSMgZGlyZWN0b3JpZXMgY29udGFp biBhbiBlcXVhbHMgc2lnbiwgdG8gcHJldmVudCBtYWtlIGZyb20KCSMgaW50ZXJwcmV0aW5nIGFu eSBvZiB0aGUgZ29hbHMgYXMgdmFyaWFibGUgYXNzaWdubWVudHMuCgoJIyBXZSBtdXN0IHVzZSBj ZCAmJiBtYWtlIHJhdGhlciB0aGFuIG1ha2UgLUMsIG9yIGVsc2UgdGhlIHN0YWdlCgkjIG51bWJl ciB3aWxsIGJlIGVtYmVkZGVkIGluIGRlYnVnIGluZm9ybWF0aW9uLgoKCVQ9YCQoUFdEX0NPTU1B TkQpYC8gXAoJJiYgY2QgJChnY2Nfb2JqZGlyKSBcCgkmJiAkKE1BS0UpIEdDQ19GT1JfVEFSR0VU PSIkKENDKSIgXAoJICBNVUxUSUxJQl9DRkxBR1M9IiQoQ0ZMQUdTKSIgXAoJICBUPSQkVCBcCgkg IFRfVEFSR0VUPSIkKHBhdHN1YnN0ICUsJCR7VH0lLCQoR0NDX0VYVFJBX1BBUlRTKSkiIFwKCSAg VF9UQVJHRVQKCgkjIEVhcmx5IGNvcHliYWNrOyBzZWUgImFsbCIgYWJvdmUgZm9yIHRoZSByYXRp b25hbGUuICBUaGUKCSMgZWFybHkgY29weSBpcyBuZWNlc3Nhcnkgc28gdGhhdCB0aGUgZ2NjIC1C IG9wdGlvbnMgZmluZAoJIyB0aGUgcmlnaHQgc3RhcnR1cCBmaWxlcyB3aGVuIGxpbmtpbmcgc2hh cmVkIGxpYmdjYy4KCSQobWtpbnN0YWxsZGlycykgJChnY2Nfb2JqZGlyKSQoTVVMVElTVUJESVIp CglwYXJ0cz0iJChHQ0NfRVhUUkFfUEFSVFMpIjsJCQkJXAoJZm9yIGZpbGUgaW4gJCRwYXJ0czsg ZG8JCQkJCVwKCSAgcm0gLWYgJChnY2Nfb2JqZGlyKSQoTVVMVElTVUJESVIpLyQkZmlsZTsJCVwK CSAgJChJTlNUQUxMX0RBVEEpICQkZmlsZSAkKGdjY19vYmpkaXIpJChNVUxUSVNVQkRJUikvOwlc Cglkb25lCgphbGw6ICQoZXh0cmEtcGFydHMpCgojIERvY3VtZW50YXRpb24gdGFyZ2V0cyAoZW1w dHkpLgouUEhPTlk6IGluZm8gaHRtbCBkdmkgcGRmIGluc3RhbGwtaW5mbyBpbnN0YWxsLWh0bWwg aW5zdGFsbC1wZGYKCmluZm86Cmluc3RhbGwtaW5mbzoKaHRtbDoKaW5zdGFsbC1odG1sOgpkdmk6 CnBkZjoKaW5zdGFsbC1wZGY6CgojIEluc3RhbGwgcnVsZXMuICBUaGVzZSBkbyBub3QgZGVwZW5k IG9uICJhbGwiLCBzbyB0aGF0IHRoZXkgY2FuIGJlIGludm9rZWQKIyByZWN1cnNpdmVseSBmcm9t IGl0LgppbnN0YWxsLWxpYnVud2luZDoKCSQobWtpbnN0YWxsZGlycykgJChERVNURElSKSQoaW5z dF9zbGliZGlyKQoKCSMgTk9URTogTWF5YmUgdGhpcyBzaG91bGQgZ28gaW50byAkKGluc3RfbGli ZGlyKSwgYnV0IHRoaXMKCSMgaXMgd2hlcmUgdGhlIG9sZCBta2xpYmdjYy5pbiBwdXQgaXQuCgkk KElOU1RBTExfREFUQSkgbGlidW53aW5kLmEgJChERVNURElSKSQoaW5zdF9zbGliZGlyKS8KCWNo bW9kIDY0NCAkKERFU1RESVIpJChpbnN0X3NsaWJkaXIpL2xpYnVud2luZC5hCgkkKFJBTkxJQikg JChERVNURElSKSQoaW5zdF9zbGliZGlyKS9saWJ1bndpbmQuYQoKCSQoc3Vic3QgQG11bHRpbGli X2RpckAsJChNVUxUSURJUiksJChzdWJzdCBcCgkJQHNobGliX2Jhc2VfbmFtZUAsbGlidW53aW5k LCQoc3Vic3QgXAoJCUBzaGxpYl9zbGliZGlyX3F1YWxALCQoTVVMVElPU1NVQkRJUiksJChTSExJ QlVOV0lORF9JTlNUQUxMKSkpKQoKaW5zdGFsbC1zaGFyZWQ6CgkkKG1raW5zdGFsbGRpcnMpICQo REVTVERJUikkKGluc3RfbGliZGlyKQoKCSQoSU5TVEFMTF9EQVRBKSBsaWJnY2NfZWguYSAkKERF U1RESVIpJChpbnN0X2xpYmRpcikvCgljaG1vZCA2NDQgJChERVNURElSKSQoaW5zdF9saWJkaXIp L2xpYmdjY19laC5hCgkkKFJBTkxJQikgJChERVNURElSKSQoaW5zdF9saWJkaXIpL2xpYmdjY19l aC5hCgoJJChzdWJzdCBAbXVsdGlsaWJfZGlyQCwkKE1VTFRJRElSKSwkKHN1YnN0IFwKCQlAc2hs aWJfYmFzZV9uYW1lQCxsaWJnY2NfcywkKHN1YnN0IFwKCQlAc2hsaWJfc2xpYmRpcl9xdWFsQCwk KE1VTFRJT1NTVUJESVIpLCQoU0hMSUJfSU5TVEFMTCkpKSkKCmluc3RhbGwtbGVhZjogJChpbnN0 YWxsLXNoYXJlZCkgJChpbnN0YWxsLWxpYnVud2luZCkKCSQobWtpbnN0YWxsZGlycykgJChERVNU RElSKSQoaW5zdF9saWJkaXIpCgoJJChJTlNUQUxMX0RBVEEpIGxpYmdjYy5hICQoREVTVERJUikk KGluc3RfbGliZGlyKS8KCWNobW9kIDY0NCAkKERFU1RESVIpJChpbnN0X2xpYmRpcikvbGliZ2Nj LmEKCSQoUkFOTElCKSAkKERFU1RESVIpJChpbnN0X2xpYmRpcikvbGliZ2NjLmEKCSQoSU5TVEFM TF9EQVRBKSBsaWJnY292LmEgJChERVNURElSKSQoaW5zdF9saWJkaXIpLwoJY2htb2QgNjQ0ICQo REVTVERJUikkKGluc3RfbGliZGlyKS9saWJnY292LmEKCSQoUkFOTElCKSAkKERFU1RESVIpJChp bnN0X2xpYmRpcikvbGliZ2Nvdi5hCgoJcGFydHM9IiQoSU5TVEFMTF9QQVJUUykiOwkJCQlcCglm b3IgZmlsZSBpbiAkJHBhcnRzOyBkbwkJCQkJXAoJICBybSAtZiAkKERFU1RESVIpJChpbnN0X2xp YmRpcikvJCRmaWxlOwkJXAoJICAkKElOU1RBTExfREFUQSkgJCRmaWxlICQoREVTVERJUikkKGlu c3RfbGliZGlyKS87CVwKCWRvbmUKCmluc3RhbGw6IGluc3RhbGwtbGVhZgoJQDogJChNQUtFKSA7 ICQoTVVMVElETykgJChGTEFHU19UT19QQVNTKSBtdWx0aS1kbyBETz1pbnN0YWxsCgouUEhPTlk6 IGluc3RhbGwgaW5zdGFsbC1zaGFyZWQgaW5zdGFsbC1saWJ1bndpbmQKCiMgRG9uJ3QgZXhwb3J0 IHZhcmlhYmxlcyB0byB0aGUgZW52aXJvbm1lbnQsIGluIG9yZGVyIHRvIG5vdCBjb25mdXNlCiMg Y29uZmlndXJlLgouTk9FWFBPUlQ6CgppbmNsdWRlICQoc3JjZGlyKS9lbXB0eS5tayAkKHdpbGRj YXJkICouZGVwKQoKIyBUT0RPIFFVRVVFOgojICAgR2FyYmFnZSBjb2xsZWN0IGluIGdjYy86CiMg ICAgICQoTElCR0NDKSBzZXR0aW5ncyBpbiB0LSogYXJlIG5vdyB1bnVzZWQKIwojICAgUmVtb3Zl IHVzZSBvZiAkKGdjY19zcmNkaXIpLiAgU291cmNlIGZpbGVzIHJlZmVyZW5jZWQgdXNpbmcgJChn Y2Nfc3JjZGlyKQojICAgc2hvdWxkIG1vdmUgaW50byB0aGUgbGliZ2NjIGRpcmVjdG9yeS4KCg== --------------050900020900090304020300 Content-Type: application/pgp-signature; name="0xD8407950.asc.sig" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="0xD8407950.asc.sig" iQIcBAABAgAGBQJNklUFAAoJENidYKvYQHlQeckP/14byVjlkZudJ0thQPE90G1vCJ0BsLcMnHVH 9GG4g1Xc2A3OY5kgCUtKd6oVLsv6I+mW1SR0HhQbtb04Of4GSGRuCZUe/28RSmQ1tCPKAoFBzFJK QO54x6QWjzeOhZqcSXaAUSIOG2iFeF4Zu/XiyZeOiy+9Cp7nV5oJ8K0O9dMXwz2M3iAILzS8m3/R 6xfw8jqNdApF1sEycd0CGnrCWwTISCYyzTFrK1P3XZPRMQjRLk3wDeqMd+dYuHB2Zu2Jai+iEU/7 poVHomCyPYw9PLSF/8/KIEuNwV+U110IZB1mr2No+zkZAT8fVXddkpQzIgUlSGn18Y5CWDLLqpfG QSnEhJpfafuVQirjH2JKpqx9i9PfLC+mr0rzHJqEf9cghU+12MTl+TOjVsxcNNPdlsezGNiSLYfy nlUnZpTxpgfoQBPCY1pvwmHf0cv2+YkeILUzghn0b+ztp721sdYK0jnRQCjxIWMTngewx4IAP3GW T/kD/pUwJCAxx+HhE5yOObtOzYwtktBo0hBd4pVCeE+rqyQp2ZWTaB8SjRVqM2dawTraZI49Tn+X MIt6xck4eEZA4Hm7BEqiN1ng3NNGxDzACtQeCGIZSKfMrH53BgVNyO60r9svcQzRsdt6x9n6kNFr NciiYO0iENDsGH+QlbO+HG/2HLiRyFiNZuC+g/pH --------------050900020900090304020300 Content-Type: application/pgp-signature; name="Makefile-gcc-cross-sdk.sig" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="Makefile-gcc-cross-sdk.sig" iQIcBAABAgAGBQJNklUFAAoJENidYKvYQHlQ9OEQAKUzdJxnrSGMZvEekg+uRRn0n8EH/EjkMcQ/ b97JLast6X2qw4aWevI/nUe9WgWE90H8/lk3Eo31h/UzRy/ceTuyXTrWx6Ld+wx964KPoNwOBj+V VbebKRk4ywPRBHFaZPILbXmLfSIeEHeU3amtx1uVfCUi2kjDePKi9b5AbnSpGb0fl4ojhD7lIgM6 /hHtqnqJZyzCMHtQ1ehnHAzpLzoNtfID3WEZyT0QuhKALndbHyxLRvsGz+Gmmskrk5dPHZIgk6r4 bttnIZzLylM8jbHB5n/XjB5Y3fGrysl+BHsGd1enmwLA3uD7qDi7eIZplOxoMxaDvGTkM/l0tiza 69buleFik3Xbw5paEgsGy6VCeWaPx1/r5QKQr+2chKM/w8JlxPAP7s7XQeNCgKrEKrSgyBMzNqnf JlnMHh28KN7Gp3whx4nibOr1jWEX2DTM2fShos7+vYz2G9DBMAhXjCe8bzghSrdr/LSCe0D4Uils hZQ1GRfAq/AuaE+WOFqksgcNo0xczd227tcZqDo7fMV26wNN21bHilOjK06F0Vi/Za05PuhOuxi+ VlQuRZ858IkxRqxabs+SQCyXsl6jssRHNBzVQGWZU7fq2g1I3WU9xhTFLBEnW9PEFalkg7WYCs2O D6hgrP3sXdSAlcEQC+QZirw6P/yHcadzMpkRAYOO --------------050900020900090304020300 Content-Type: application/pgp-signature; name="Makefile-gcc-cross.sig" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="Makefile-gcc-cross.sig" iQIcBAABAgAGBQJNklUFAAoJENidYKvYQHlQvIgP/31/Sq/j52ykRoSkxCnA6WwKC9v4YsQVBNrP 0LMYj/VS2B+DjlS7Ooxq5VxHxftXi35Ywp5AdcJlE5xQzXD/4MYzvo6DszBzlE4F2UXEGCtLbUS4 0g9BpzES22k/Qxds9tipGQMXgZO25JUenVeu2nne72YBTjW1AtP/R7lLmiJNnn2P1Zn99xHpPGeR vsdTg8KZxSdJ3mZjKKVXDboVP3RLJkFxsW3deZ45GMdYATlCmhK7QEcokuZqc3PvzY6xeDY1GIym OrmMlITEv00Kjoa6xspamRgkasnyvRUZi+RKKuo8rhGPHh2jxfD3lPDFu6Bt1oSTiPG1QsiqKqgn IaXXqsdsGZoWVe1U6OM/PvFOYs0k4/OXAw/d232SqEsGnhN9E3uq++TZKQ00x2fPdS1ebVxU5yhe wpZLEgirSYIxLm0WklaynfVkj9DySwOMym8qMCme6SyzRJifh3atTQ6p4A0LYd96eKtmdjdPRR1u TmXcMHwnb3LA6+Tl9jfiDkWV2ubtsGcpEIxhSf5CANm6WjgYDpKM/EmumrMsxb2Ruek8K++ij+M7 ADS9k/tCrpT+3bH6Tgf+Bten2amK7AwwjJ2wowhvqceGnrussPyJjlJiQ9kj1l0knD/maONRa0mY h24iMpxGuU4zLBiYxIjevQzNKf/2+jdQwHSyQtZE --------------050900020900090304020300--