[Rd] config.log told me to report these (PR#12035)

From: <RichardsTJ2_at_UPMC.EDU>
Date: Thu, 07 Aug 2008 11:35:19 +0200 (CEST)


This is a multi-part message in MIME format.

------_=_NextPart_001_01C8EAD7.27542985
Content-Type: text/plain;

        charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

Hello r-bugs,

I am running openSuse 11.0, with my new Intel 8500 (Penryn) C2D, and I = want to use icc and ifort.
I was able to get a working Goto BLAS, following Dr. Goto's = instructions.
That seems to work OK with gcc and gfortran. I get about 10% faster computations by using -O3 rather than -O2. I get faster results with Goto BLAS rather than the R BLAS. Now I want to make icc and ifort work...

So I tried this:

./configure CC=3Dicc CFLAGS=3D'-O3 -mp' = CPPFLAGS=3D-I/opt/intel/cce/10.1.015/include/ F77=3Difort CXX=3Dicc = CXXFLAGS=3D'-O3 -mp' FFLAGS=3D'-C90 -w90 -w95 -mp' CPICFLAGS=3D-shared = CXXPICFLAGS=3D-shared FPICFLAGS=3D-shared SHLIB_LDFLAGS=3D-shared = SHLIB_CXXLDFLAGS=3D-shared --with-blas=3D"-L/usr/lib64/GotoBLAS = -lgoto_penrynp-r1.26 -lpthread"

I get six purported "bugs" in the config.log file (attached), but I hope = there is something I've overlooked in the past week of agony. I have had similar log files with about 100 different combinations of = options.
I hope that you can help.

Thank you so much.

Tom Richards

------_=_NextPart_001_01C8EAD7.27542985
Content-Type: text/x-log;

        name="config.log"

Content-Transfer-Encoding: base64
Content-Description: config.log
Content-Disposition: attachment;
	filename="config.log"

VGhpcyBmaWxlIGNvbnRhaW5zIGFueSBtZXNzYWdlcyBwcm9kdWNlZCBieSBjb21waWxlcnMgd2hp bGUKcnVubmluZyBjb25maWd1cmUsIHRvIGFpZCBkZWJ1Z2dpbmcgaWYgY29uZmlndXJlIG1ha2Vz IGEgbWlzdGFrZS4KCkl0IHdhcyBjcmVhdGVkIGJ5IFIgY29uZmlndXJlIDIuNy4xLCB3aGljaCB3 YXMKZ2VuZXJhdGVkIGJ5IEdOVSBBdXRvY29uZiAyLjYxLiAgSW52b2NhdGlvbiBjb21tYW5kIGxp bmUgd2FzCgogICQgLi9jb25maWd1cmUgQ0M9aWNjIENGTEFHUz0tTzMgLW1wIENQUEZMQUdTPS1J L29wdC9pbnRlbC9jY2UvMTAuMS4wMTUvaW5jbHVkZS8gRjc3PWlmb3J0IENYWD1pY2MgQ1hYRkxB R1M9LU8zIC1tcCBGRkxBR1M9LUM5MCAtdzkwIC13OTUgLW1wIENQSUNGTEFHUz0tc2hhcmVkIENY WFBJQ0ZMQUdTPS1zaGFyZWQgRlBJQ0ZMQUdTPS1zaGFyZWQgU0hMSUJfTERGTEFHUz0tc2hhcmVk IFNITElCX0NYWExERkxBR1M9LXNoYXJlZCAtLXdpdGgtYmxhcz0tTC91c3IvbGliNjQvR290b0JM QVMgLWxnb3RvX3BlbnJ5bnAtcjEuMjYgLWxwdGhyZWFkCgojIyAtLS0tLS0tLS0gIyMKIyMgUGxh dGZvcm0uICMjCiMjIC0tLS0tLS0tLSAjIwoKaG9zdG5hbWUgPSBSaWNoYXJkcwp1bmFtZSAtbSA9 IHg4Nl82NAp1bmFtZSAtciA9IDIuNi4yNS45LTAuMi1kZWZhdWx0CnVuYW1lIC1zID0gTGludXgK dW5hbWUgLXYgPSAjMSBTTVAgMjAwOC0wNi0yOCAwMDowMDowNyArMDIwMAoKL3Vzci9iaW4vdW5h bWUgLXAgPSB1bmtub3duCi9iaW4vdW5hbWUgLVggICAgID0gdW5rbm93bgoKL2Jpbi9hcmNoICAg ICAgICAgICAgICA9IHg4Nl82NAovdXNyL2Jpbi9hcmNoIC1rICAgICAgID0gdW5rbm93bgovdXNy L2NvbnZleC9nZXRzeXNpbmZvID0gdW5rbm93bgovdXNyL2Jpbi9ob3N0aW5mbyAgICAgID0gdW5r bm93bgovYmluL21hY2hpbmUgICAgICAgICAgID0gdW5rbm93bgovdXNyL2Jpbi9vc2xldmVsICAg ICAgID0gdW5rbm93bgovYmluL3VuaXZlcnNlICAgICAgICAgID0gdW5rbm93bgoKUEFUSDogL29w dC9pbnRlbC9mY2UvMTAuMS4wMTUvYmluClBBVEg6IC9vcHQvaW50ZWwvaWRiZS8xMC4xLjAxNS9i aW4KUEFUSDogL29wdC9pbnRlbC9jY2UvMTAuMS4wMTUvYmluClBBVEg6IC91c3IvYmluClBBVEg6 IC9zYmluClBBVEg6IC9vcHQvaW50ZWwvZmNlLzEwLjEuMDE1L2JpbgpQQVRIOiAvb3B0L2ludGVs L2lkYmUvMTAuMS4wMTUvYmluClBBVEg6IC9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1L2JpbgpQQVRI OiAvaG9tZS9yaWNoYXJkcy9iaW4KUEFUSDogL3Vzci9sb2NhbC9iaW4KUEFUSDogL3Vzci9zYmlu ClBBVEg6IC9iaW4KUEFUSDogL3Vzci9iaW4vWDExClBBVEg6IC91c3IvWDExUjYvYmluClBBVEg6 IC91c3IvZ2FtZXMKUEFUSDogL29wdC9rZGUzL2JpbgpQQVRIOiAvb3B0L2Nyb3NzL2JpbgpQQVRI OiAvdXNyL2xpYi9taXQvYmluClBBVEg6IC91c3IvbGliL21pdC9zYmluClBBVEg6IC91c3IvbGli L3F0My9iaW4KCgojIyAtLS0tLS0tLS0tLSAjIwojIyBDb3JlIHRlc3RzLiAjIwojIyAtLS0tLS0t LS0tLSAjIwoKY29uZmlndXJlOjIzNzY6IGNoZWNraW5nIGJ1aWxkIHN5c3RlbSB0eXBlCmNvbmZp Z3VyZToyMzk0OiByZXN1bHQ6IHg4Nl82NC11bmtub3duLWxpbnV4LWdudQpjb25maWd1cmU6MjQx NjogY2hlY2tpbmcgaG9zdCBzeXN0ZW0gdHlwZQpjb25maWd1cmU6MjQzMTogcmVzdWx0OiB4ODZf NjQtdW5rbm93bi1saW51eC1nbnUKY29uZmlndXJlOjMwNDY6IGNoZWNraW5nIGZvciBwd2QKY29u ZmlndXJlOjMwNjQ6IGZvdW5kIC9iaW4vcHdkCmNvbmZpZ3VyZTozMDc3OiByZXN1bHQ6IC9iaW4v cHdkCmNvbmZpZ3VyZTozMDg1OiBjaGVja2luZyB3aGV0aGVyIGJ1aWxkZGlyIGlzIHNyY2Rpcgpj b25maWd1cmU6MzA5MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjMwOTg6IGNoZWNraW5nIGZvciB3 b3JraW5nIGFjbG9jYWwKY29uZmlndXJlOjMxMDI6IHJlc3VsdDogZm91bmQKY29uZmlndXJlOjMx MTE6IGNoZWNraW5nIGZvciB3b3JraW5nIGF1dG9jb25mCmNvbmZpZ3VyZTozMTE1OiByZXN1bHQ6 IGZvdW5kCmNvbmZpZ3VyZTozMTI0OiBjaGVja2luZyBmb3Igd29ya2luZyBhdXRvbWFrZQpjb25m aWd1cmU6MzEyODogcmVzdWx0OiBmb3VuZApjb25maWd1cmU6MzEzNzogY2hlY2tpbmcgZm9yIHdv cmtpbmcgYXV0b2hlYWRlcgpjb25maWd1cmU6MzE0MTogcmVzdWx0OiBmb3VuZApjb25maWd1cmU6 MzE1NDogY2hlY2tpbmcgZm9yIGdhd2sKY29uZmlndXJlOjMxNzA6IGZvdW5kIC91c3IvYmluL2dh d2sKY29uZmlndXJlOjMxODE6IHJlc3VsdDogZ2F3awpjb25maWd1cmU6MzE5MjogY2hlY2tpbmcg Zm9yIGdyZXAgdGhhdCBoYW5kbGVzIGxvbmcgbGluZXMgYW5kIC1lCmNvbmZpZ3VyZTozMjY2OiBy ZXN1bHQ6IC91c3IvYmluL2dyZXAKY29uZmlndXJlOjMyNzE6IGNoZWNraW5nIGZvciBlZ3JlcApj b25maWd1cmU6MzM0OTogcmVzdWx0OiAvdXNyL2Jpbi9ncmVwIC1FCmNvbmZpZ3VyZTozMzU0OiBj aGVja2luZyB3aGV0aGVyIGxuIC1zIHdvcmtzCmNvbmZpZ3VyZTozMzU4OiByZXN1bHQ6IHllcwpj b25maWd1cmU6MzM3MDogY2hlY2tpbmcgZm9yIGJpc29uCmNvbmZpZ3VyZTozMzg2OiBmb3VuZCAv dXNyL2Jpbi9iaXNvbgpjb25maWd1cmU6MzM5NzogcmVzdWx0OiBiaXNvbiAteQpjb25maWd1cmU6 MzQxMzogY2hlY2tpbmcgZm9yIGFyCmNvbmZpZ3VyZTozNDI5OiBmb3VuZCAvdXNyL2Jpbi9hcgpj b25maWd1cmU6MzQ0MDogcmVzdWx0OiBhcgpjb25maWd1cmU6MzQ2NzogY2hlY2tpbmcgZm9yIGEg QlNELWNvbXBhdGlibGUgaW5zdGFsbApjb25maWd1cmU6MzUyMzogcmVzdWx0OiAvdXNyL2Jpbi9p bnN0YWxsIC1jCmNvbmZpZ3VyZTozNTU4OiBjaGVja2luZyBmb3Igc2VkCmNvbmZpZ3VyZTozNTc3 OiBmb3VuZCAvdXNyL2Jpbi9zZWQKY29uZmlndXJlOjM1ODk6IHJlc3VsdDogL3Vzci9iaW4vc2Vk CmNvbmZpZ3VyZTozNjA5OiBjaGVja2luZyBmb3IgbGVzcwpjb25maWd1cmU6MzYyNzogZm91bmQg L3Vzci9iaW4vbGVzcwpjb25maWd1cmU6MzYzOTogcmVzdWx0OiAvdXNyL2Jpbi9sZXNzCmNvbmZp Z3VyZTozNjYyOiBjaGVja2luZyBmb3IgcGVybApjb25maWd1cmU6MzY4MDogZm91bmQgL3Vzci9i aW4vcGVybApjb25maWd1cmU6MzY5MjogcmVzdWx0OiAvdXNyL2Jpbi9wZXJsCmNvbmZpZ3VyZToz NzA0OiBjaGVja2luZyB3aGV0aGVyIHBlcmwgdmVyc2lvbiBpcyBhdCBsZWFzdCA1LjguMApjb25m aWd1cmU6MzcxNTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM3MzQ6IGNoZWNraW5nIGZvciBkdmlw cwpjb25maWd1cmU6Mzc1MjogZm91bmQgL3Vzci9iaW4vZHZpcHMKY29uZmlndXJlOjM3NjQ6IHJl c3VsdDogL3Vzci9iaW4vZHZpcHMKY29uZmlndXJlOjM3ODA6IGNoZWNraW5nIGZvciB0ZXgKY29u ZmlndXJlOjM3OTg6IGZvdW5kIC91c3IvYmluL3RleApjb25maWd1cmU6MzgxMDogcmVzdWx0OiAv dXNyL2Jpbi90ZXgKY29uZmlndXJlOjM4MjY6IGNoZWNraW5nIGZvciBsYXRleApjb25maWd1cmU6 Mzg0NDogZm91bmQgL3Vzci9iaW4vbGF0ZXgKY29uZmlndXJlOjM4NTY6IHJlc3VsdDogL3Vzci9i aW4vbGF0ZXgKY29uZmlndXJlOjM4ODE6IGNoZWNraW5nIGZvciBtYWtlaW5kZXgKY29uZmlndXJl OjM4OTk6IGZvdW5kIC91c3IvYmluL21ha2VpbmRleApjb25maWd1cmU6MzkxMTogcmVzdWx0OiAv dXNyL2Jpbi9tYWtlaW5kZXgKY29uZmlndXJlOjM5Mjc6IGNoZWNraW5nIGZvciBwZGZ0ZXgKY29u ZmlndXJlOjM5NDU6IGZvdW5kIC91c3IvYmluL3BkZnRleApjb25maWd1cmU6Mzk1NzogcmVzdWx0 OiAvdXNyL2Jpbi9wZGZ0ZXgKY29uZmlndXJlOjM5NzM6IGNoZWNraW5nIGZvciBwZGZsYXRleApj b25maWd1cmU6Mzk5MTogZm91bmQgL3Vzci9iaW4vcGRmbGF0ZXgKY29uZmlndXJlOjQwMDM6IHJl c3VsdDogL3Vzci9iaW4vcGRmbGF0ZXgKY29uZmlndXJlOjQwMjg6IGNoZWNraW5nIGZvciBtYWtl aW5mbwpjb25maWd1cmU6NDA0NjogZm91bmQgL3Vzci9iaW4vbWFrZWluZm8KY29uZmlndXJlOjQw NTg6IHJlc3VsdDogL3Vzci9iaW4vbWFrZWluZm8KY29uZmlndXJlOjQwNzA6IGNoZWNraW5nIHdo ZXRoZXIgbWFrZWluZm8gdmVyc2lvbiBpcyBhdCBsZWFzdCA0LjcKY29uZmlndXJlOjQwOTA6IHJl c3VsdDogeWVzCmNvbmZpZ3VyZTo0MTA3OiBjaGVja2luZyBmb3IgdGV4aTJkdmkKY29uZmlndXJl OjQxMjU6IGZvdW5kIC91c3IvYmluL3RleGkyZHZpCmNvbmZpZ3VyZTo0MTM3OiByZXN1bHQ6IC91 c3IvYmluL3RleGkyZHZpCmNvbmZpZ3VyZTo0MjEwOiBjaGVja2luZyBmb3IgdW56aXAKY29uZmln dXJlOjQyMjg6IGZvdW5kIC91c3IvYmluL3VuemlwCmNvbmZpZ3VyZTo0MjQwOiByZXN1bHQ6IC91 c3IvYmluL3VuemlwCmNvbmZpZ3VyZTo0MjU2OiBjaGVja2luZyBmb3IgemlwCmNvbmZpZ3VyZTo0 Mjc0OiBmb3VuZCAvdXNyL2Jpbi96aXAKY29uZmlndXJlOjQyODY6IHJlc3VsdDogL3Vzci9iaW4v emlwCmNvbmZpZ3VyZTo0MzAyOiBjaGVja2luZyBmb3IgZ3ppcApjb25maWd1cmU6NDMyMDogZm91 bmQgL3Vzci9iaW4vZ3ppcApjb25maWd1cmU6NDMzMjogcmVzdWx0OiAvdXNyL2Jpbi9nemlwCmNv bmZpZ3VyZTo0MzUwOiBjaGVja2luZyBmb3IgZmlyZWZveApjb25maWd1cmU6NDM2ODogZm91bmQg L3Vzci9iaW4vZmlyZWZveApjb25maWd1cmU6NDM4MDogcmVzdWx0OiAvdXNyL2Jpbi9maXJlZm94 CmNvbmZpZ3VyZTo0Mzk3OiByZXN1bHQ6IHVzaW5nIGRlZmF1bHQgYnJvd3NlciAuLi4gL3Vzci9i aW4vZmlyZWZveApjb25maWd1cmU6NDQwNzogY2hlY2tpbmcgZm9yIGFjcm9yZWFkCmNvbmZpZ3Vy ZTo0NDI1OiBmb3VuZCAvdXNyL2Jpbi9hY3JvcmVhZApjb25maWd1cmU6NDQzNzogcmVzdWx0OiAv dXNyL2Jpbi9hY3JvcmVhZApjb25maWd1cmU6NDQ1OTogY2hlY2tpbmcgZm9yIHBrZy1jb25maWcK Y29uZmlndXJlOjQ0Nzg6IGZvdW5kIC91c3IvYmluL3BrZy1jb25maWcKY29uZmlndXJlOjQ0OTA6 IHJlc3VsdDogL3Vzci9iaW4vcGtnLWNvbmZpZwpjb25maWd1cmU6NDU0NzogY2hlY2tpbmcgZm9y IGdjYwpjb25maWd1cmU6NDU3NDogcmVzdWx0OiBpY2MKY29uZmlndXJlOjQ4MTI6IGNoZWNraW5n IGZvciBDIGNvbXBpbGVyIHZlcnNpb24KY29uZmlndXJlOjQ4MTk6IGljYyAtLXZlcnNpb24gPiY1 CmljYyAoSUNDKSAxMC4xIDIwMDgwMzEyCkNvcHlyaWdodCAoQykgMTk4NS0yMDA4IEludGVsIENv cnBvcmF0aW9uLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCmNvbmZpZ3VyZTo0ODIyOiAkPyA9IDAK Y29uZmlndXJlOjQ4Mjk6IGljYyAtdiA+JjUKVmVyc2lvbiAxMC4xIApjb25maWd1cmU6NDgzMjog JD8gPSAwCmNvbmZpZ3VyZTo0ODM5OiBpY2MgLVYgPiY1CkludGVsKFIpIEMgQ29tcGlsZXIgZm9y IGFwcGxpY2F0aW9ucyBydW5uaW5nIG9uIEludGVsKFIpIDY0LCBWZXJzaW9uIDEwLjEgICAgQnVp bGQgMjAwODAzMTIgUGFja2FnZSBJRDogbF9jY19wXzEwLjEuMDE1CkNvcHlyaWdodCAoQykgMTk4 NS0yMDA4IEludGVsIENvcnBvcmF0aW9uLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KRk9SIE5PTi1D T01NRVJDSUFMIFVTRSBPTkxZCgpjb25maWd1cmU6NDg0MjogJD8gPSAwCmNvbmZpZ3VyZTo0ODY1 OiBjaGVja2luZyBmb3IgQyBjb21waWxlciBkZWZhdWx0IG91dHB1dCBmaWxlIG5hbWUKY29uZmln dXJlOjQ4OTI6IGljYyAtTzMgLW1wIC1JL29wdC9pbnRlbC9jY2UvMTAuMS4wMTUvaW5jbHVkZS8g LUwvdXNyL2xvY2FsL2xpYjY0IGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6NDg5NTogJD8gPSAw CmNvbmZpZ3VyZTo0OTMzOiByZXN1bHQ6IGEub3V0CmNvbmZpZ3VyZTo0OTUwOiBjaGVja2luZyB3 aGV0aGVyIHRoZSBDIGNvbXBpbGVyIHdvcmtzCmNvbmZpZ3VyZTo0OTYwOiAuL2Eub3V0CmNvbmZp Z3VyZTo0OTYzOiAkPyA9IDAKY29uZmlndXJlOjQ5ODA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo0 OTg3OiBjaGVja2luZyB3aGV0aGVyIHdlIGFyZSBjcm9zcyBjb21waWxpbmcKY29uZmlndXJlOjQ5 ODk6IHJlc3VsdDogbm8KY29uZmlndXJlOjQ5OTI6IGNoZWNraW5nIGZvciBzdWZmaXggb2YgZXhl Y3V0YWJsZXMKY29uZmlndXJlOjQ5OTk6IGljYyAtbyBjb25mdGVzdCAtTzMgLW1wIC1JL29wdC9p bnRlbC9jY2UvMTAuMS4wMTUvaW5jbHVkZS8gLUwvdXNyL2xvY2FsL2xpYjY0IGNvbmZ0ZXN0LmMg ID4mNQpjb25maWd1cmU6NTAwMjogJD8gPSAwCmNvbmZpZ3VyZTo1MDI2OiByZXN1bHQ6IApjb25m aWd1cmU6NTAzMjogY2hlY2tpbmcgZm9yIHN1ZmZpeCBvZiBvYmplY3QgZmlsZXMKY29uZmlndXJl OjUwNTg6IGljYyAtYyAtTzMgLW1wIC1JL29wdC9pbnRlbC9jY2UvMTAuMS4wMTUvaW5jbHVkZS8g Y29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjUwNjE6ICQ/ID0gMApjb25maWd1cmU6NTA4NDogcmVz dWx0OiBvCmNvbmZpZ3VyZTo1MDg4OiBjaGVja2luZyB3aGV0aGVyIHdlIGFyZSB1c2luZyB0aGUg R05VIEMgY29tcGlsZXIKY29uZmlndXJlOjUxMTc6IGljYyAtYyAtTzMgLW1wIC1JL29wdC9pbnRl bC9jY2UvMTAuMS4wMTUvaW5jbHVkZS8gY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjUxMjM6ICQ/ ID0gMApjb25maWd1cmU6NTE0MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjUxNDU6IGNoZWNraW5n IHdoZXRoZXIgaWNjIGFjY2VwdHMgLWcKY29uZmlndXJlOjUxNzU6IGljYyAtYyAtZyAtSS9vcHQv aW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUvIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo1MTgx OiAkPyA9IDAKY29uZmlndXJlOjUyODA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo1Mjk3OiBjaGVj a2luZyBmb3IgaWNjIG9wdGlvbiB0byBhY2NlcHQgSVNPIEM4OQpjb25maWd1cmU6NTM3MTogaWNj ICAtYyAtTzMgLW1wIC1JL29wdC9pbnRlbC9jY2UvMTAuMS4wMTUvaW5jbHVkZS8gY29uZnRlc3Qu YyA+JjUKY29uZmlndXJlOjUzNzc6ICQ/ID0gMApjb25maWd1cmU6NTQwMDogcmVzdWx0OiBub25l IG5lZWRlZApjb25maWd1cmU6NTQyNTogY2hlY2tpbmcgaG93IHRvIHJ1biB0aGUgQyBwcmVwcm9j ZXNzb3IKY29uZmlndXJlOjU0NjU6IGljYyAtRSAtSS9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1L2lu Y2x1ZGUvIGNvbmZ0ZXN0LmMKL3Vzci9pbmNsdWRlL2xpbWl0cy5oKDEyNSk6IGVycm9yICM1OiBj b3VsZCBub3Qgb3BlbiBzb3VyY2UgZmlsZSAibGltaXRzLmgiCiAgIyBpbmNsdWRlX25leHQgPGxp bWl0cy5oPgogICAgICAgICAgICAgICAgICAgICAgICAgICBeCgpjb25maWd1cmU6NTQ3MTogJD8g PSAyCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8 ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJSIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJSIgp8 ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyLjcuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5H ICJSIDIuNy4xIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgInItYnVnc0BSLXByb2plY3Qu b3JnIgp8ICNkZWZpbmUgUEFDS0FHRSAiUiIKfCAjZGVmaW5lIFZFUlNJT04gIjIuNy4xIgp8ICNk ZWZpbmUgUl9QTEFURk9STSAieDg2XzY0LXVua25vd24tbGludXgtZ251Igp8ICNkZWZpbmUgUl9D UFUgIng4Nl82NCIKfCAjZGVmaW5lIFJfVkVORE9SICJ1bmtub3duIgp8ICNkZWZpbmUgUl9PUyAi bGludXgtZ251Igp8ICNkZWZpbmUgVW5peCAxCnwgI2RlZmluZSBSX0FSQ0ggIiIKfCAvKiBlbmQg Y29uZmRlZnMuaC4gICovCnwgI2lmZGVmIF9fU1REQ19fCnwgIyBpbmNsdWRlIDxsaW1pdHMuaD4K fCAjZWxzZQp8ICMgaW5jbHVkZSA8YXNzZXJ0Lmg+CnwgI2VuZGlmCnwgCQkgICAgIFN5bnRheCBl cnJvcgpjb25maWd1cmU6NTQ2NTogaWNjIC1FIC1JL29wdC9pbnRlbC9jY2UvMTAuMS4wMTUvaW5j bHVkZS8gY29uZnRlc3QuYwovdXNyL2luY2x1ZGUvbGltaXRzLmgoMTI1KTogZXJyb3IgIzU6IGNv dWxkIG5vdCBvcGVuIHNvdXJjZSBmaWxlICJsaW1pdHMuaCIKICAjIGluY2x1ZGVfbmV4dCA8bGlt aXRzLmg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KCmNvbmZpZ3VyZTo1NDcxOiAkPyA9 IDIKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwg I2RlZmluZSBQQUNLQUdFX05BTUUgIlIiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgIlIiCnwg I2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjIuNy4xIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcg IlIgMi43LjEiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAici1idWdzQFItcHJvamVjdC5v cmciCnwgI2RlZmluZSBQQUNLQUdFICJSIgp8ICNkZWZpbmUgVkVSU0lPTiAiMi43LjEiCnwgI2Rl ZmluZSBSX1BMQVRGT1JNICJ4ODZfNjQtdW5rbm93bi1saW51eC1nbnUiCnwgI2RlZmluZSBSX0NQ VSAieDg2XzY0Igp8ICNkZWZpbmUgUl9WRU5ET1IgInVua25vd24iCnwgI2RlZmluZSBSX09TICJs aW51eC1nbnUiCnwgI2RlZmluZSBVbml4IDEKfCAjZGVmaW5lIFJfQVJDSCAiIgp8IC8qIGVuZCBj b25mZGVmcy5oLiAgKi8KfCAjaWZkZWYgX19TVERDX18KfCAjIGluY2x1ZGUgPGxpbWl0cy5oPgp8 ICNlbHNlCnwgIyBpbmNsdWRlIDxhc3NlcnQuaD4KfCAjZW5kaWYKfCAJCSAgICAgU3ludGF4IGVy cm9yCmNvbmZpZ3VyZTo1NDY1OiBpY2MgLUUgLXRyYWRpdGlvbmFsLWNwcCAtSS9vcHQvaW50ZWwv Y2NlLzEwLjEuMDE1L2luY2x1ZGUvIGNvbmZ0ZXN0LmMKPGNvbW1hbmQtbGluZT46MTE6IHdhcm5p bmc6ICJfX0dOVUNfUEFUQ0hMRVZFTF9fIiByZWRlZmluZWQKPGJ1aWx0LWluPjozOiB3YXJuaW5n OiB0aGlzIGlzIHRoZSBsb2NhdGlvbiBvZiB0aGUgcHJldmlvdXMgZGVmaW5pdGlvbgpJbiBmaWxl IGluY2x1ZGVkIGZyb20gL3Vzci9pbmNsdWRlL2ZlYXR1cmVzLmg6MzMxLAogICAgICAgICAgICAg ICAgIGZyb20gL3Vzci9pbmNsdWRlL2Fzc2VydC5oOjM4LAogICAgICAgICAgICAgICAgIGZyb20g Y29uZnRlc3QuYzoyMDoKL3Vzci9pbmNsdWRlL3N5cy9jZGVmcy5oOjMyOiBlcnJvcjogI2Vycm9y ICJZb3UgbmVlZCBhIElTTyBDIGNvbmZvcm1pbmcgY29tcGlsZXIgdG8gdXNlIHRoZSBnbGliYyBo ZWFkZXJzIgpjb25maWd1cmU6NTQ3MTogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0g d2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJSIgp8ICNk ZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJSIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyLjcu MSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJSIDIuNy4xIgp8ICNkZWZpbmUgUEFDS0FHRV9C VUdSRVBPUlQgInItYnVnc0BSLXByb2plY3Qub3JnIgp8ICNkZWZpbmUgUEFDS0FHRSAiUiIKfCAj ZGVmaW5lIFZFUlNJT04gIjIuNy4xIgp8ICNkZWZpbmUgUl9QTEFURk9STSAieDg2XzY0LXVua25v d24tbGludXgtZ251Igp8ICNkZWZpbmUgUl9DUFUgIng4Nl82NCIKfCAjZGVmaW5lIFJfVkVORE9S ICJ1bmtub3duIgp8ICNkZWZpbmUgUl9PUyAibGludXgtZ251Igp8ICNkZWZpbmUgVW5peCAxCnwg I2RlZmluZSBSX0FSQ0ggIiIKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2lmZGVmIF9fU1RE Q19fCnwgIyBpbmNsdWRlIDxsaW1pdHMuaD4KfCAjZWxzZQp8ICMgaW5jbHVkZSA8YXNzZXJ0Lmg+ CnwgI2VuZGlmCnwgCQkgICAgIFN5bnRheCBlcnJvcgpjb25maWd1cmU6NTQ2NTogaWNjIC1FIC10 cmFkaXRpb25hbC1jcHAgLUkvb3B0L2ludGVsL2NjZS8xMC4xLjAxNS9pbmNsdWRlLyBjb25mdGVz dC5jCjxjb21tYW5kLWxpbmU+OjExOiB3YXJuaW5nOiAiX19HTlVDX1BBVENITEVWRUxfXyIgcmVk ZWZpbmVkCjxidWlsdC1pbj46Mzogd2FybmluZzogdGhpcyBpcyB0aGUgbG9jYXRpb24gb2YgdGhl IHByZXZpb3VzIGRlZmluaXRpb24KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC91c3IvaW5jbHVkZS9m ZWF0dXJlcy5oOjMzMSwKICAgICAgICAgICAgICAgICBmcm9tIC91c3IvaW5jbHVkZS9hc3NlcnQu aDozOCwKICAgICAgICAgICAgICAgICBmcm9tIGNvbmZ0ZXN0LmM6MjA6Ci91c3IvaW5jbHVkZS9z eXMvY2RlZnMuaDozMjogZXJyb3I6ICNlcnJvciAiWW91IG5lZWQgYSBJU08gQyBjb25mb3JtaW5n IGNvbXBpbGVyIHRvIHVzZSB0aGUgZ2xpYmMgaGVhZGVycyIKY29uZmlndXJlOjU0NzE6ICQ/ID0g MQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAj ZGVmaW5lIFBBQ0tBR0VfTkFNRSAiUiIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiUiIKfCAj ZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMi43LjEiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAi UiAyLjcuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJyLWJ1Z3NAUi1wcm9qZWN0Lm9y ZyIKfCAjZGVmaW5lIFBBQ0tBR0UgIlIiCnwgI2RlZmluZSBWRVJTSU9OICIyLjcuMSIKfCAjZGVm aW5lIFJfUExBVEZPUk0gIng4Nl82NC11bmtub3duLWxpbnV4LWdudSIKfCAjZGVmaW5lIFJfQ1BV ICJ4ODZfNjQiCnwgI2RlZmluZSBSX1ZFTkRPUiAidW5rbm93biIKfCAjZGVmaW5lIFJfT1MgImxp bnV4LWdudSIKfCAjZGVmaW5lIFVuaXggMQp8ICNkZWZpbmUgUl9BUkNIICIiCnwgLyogZW5kIGNv bmZkZWZzLmguICAqLwp8ICNpZmRlZiBfX1NURENfXwp8ICMgaW5jbHVkZSA8bGltaXRzLmg+Cnwg I2Vsc2UKfCAjIGluY2x1ZGUgPGFzc2VydC5oPgp8ICNlbmRpZgp8IAkJICAgICBTeW50YXggZXJy b3IKY29uZmlndXJlOjU0NjU6IC9saWIvY3BwIC1JL29wdC9pbnRlbC9jY2UvMTAuMS4wMTUvaW5j bHVkZS8gY29uZnRlc3QuYwpjb25maWd1cmU6NTQ3MTogJD8gPSAwCmNvbmZpZ3VyZTo1NTAyOiAv bGliL2NwcCAtSS9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUvIGNvbmZ0ZXN0LmMKY29u ZnRlc3QuYzoxNjoyODogZXJyb3I6IGFjX25vbmV4aXN0ZW50Lmg6IE5vIHN1Y2ggZmlsZSBvciBk aXJlY3RvcnkKY29uZmlndXJlOjU1MDg6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFt IHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiUiIKfCAj ZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiUiIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMi43 LjEiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiUiAyLjcuMSIKfCAjZGVmaW5lIFBBQ0tBR0Vf QlVHUkVQT1JUICJyLWJ1Z3NAUi1wcm9qZWN0Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0UgIlIiCnwg I2RlZmluZSBWRVJTSU9OICIyLjcuMSIKfCAjZGVmaW5lIFJfUExBVEZPUk0gIng4Nl82NC11bmtu b3duLWxpbnV4LWdudSIKfCAjZGVmaW5lIFJfQ1BVICJ4ODZfNjQiCnwgI2RlZmluZSBSX1ZFTkRP UiAidW5rbm93biIKfCAjZGVmaW5lIFJfT1MgImxpbnV4LWdudSIKfCAjZGVmaW5lIFVuaXggMQp8 ICNkZWZpbmUgUl9BUkNIICIiCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxh Y19ub25leGlzdGVudC5oPgpjb25maWd1cmU6NTU0MTogcmVzdWx0OiAvbGliL2NwcApjb25maWd1 cmU6NTU3MDogL2xpYi9jcHAgLUkvb3B0L2ludGVsL2NjZS8xMC4xLjAxNS9pbmNsdWRlLyBjb25m dGVzdC5jCmNvbmZpZ3VyZTo1NTc2OiAkPyA9IDAKY29uZmlndXJlOjU2MDc6IC9saWIvY3BwIC1J L29wdC9pbnRlbC9jY2UvMTAuMS4wMTUvaW5jbHVkZS8gY29uZnRlc3QuYwpjb25mdGVzdC5jOjE2 OjI4OiBlcnJvcjogYWNfbm9uZXhpc3RlbnQuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpj b25maWd1cmU6NTYxMzogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8q IGNvbmZkZWZzLmguICAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJSIgp8ICNkZWZpbmUgUEFD S0FHRV9UQVJOQU1FICJSIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyLjcuMSIKfCAjZGVm aW5lIFBBQ0tBR0VfU1RSSU5HICJSIDIuNy4xIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQg InItYnVnc0BSLXByb2plY3Qub3JnIgp8ICNkZWZpbmUgUEFDS0FHRSAiUiIKfCAjZGVmaW5lIFZF UlNJT04gIjIuNy4xIgp8ICNkZWZpbmUgUl9QTEFURk9STSAieDg2XzY0LXVua25vd24tbGludXgt Z251Igp8ICNkZWZpbmUgUl9DUFUgIng4Nl82NCIKfCAjZGVmaW5lIFJfVkVORE9SICJ1bmtub3du Igp8ICNkZWZpbmUgUl9PUyAibGludXgtZ251Igp8ICNkZWZpbmUgVW5peCAxCnwgI2RlZmluZSBS X0FSQ0ggIiIKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPGFjX25vbmV4aXN0 ZW50Lmg+CmNvbmZpZ3VyZTo1NjUyOiBjaGVja2luZyB3aGV0aGVyIGljYyBuZWVkcyAtdHJhZGl0 aW9uYWwKY29uZmlndXJlOjU2OTQ6IHJlc3VsdDogbm8KY29uZmlndXJlOjU3MDY6IGNoZWNraW5n IGhvdyB0byBydW4gdGhlIEMgcHJlcHJvY2Vzc29yCmNvbmZpZ3VyZTo1ODIyOiByZXN1bHQ6IC9s aWIvY3BwCmNvbmZpZ3VyZTo1ODUxOiAvbGliL2NwcCAtSS9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1 L2luY2x1ZGUvIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjU4NTc6ICQ/ID0gMApjb25maWd1cmU6NTg4 ODogL2xpYi9jcHAgLUkvb3B0L2ludGVsL2NjZS8xMC4xLjAxNS9pbmNsdWRlLyBjb25mdGVzdC5j CmNvbmZ0ZXN0LmM6MTY6Mjg6IGVycm9yOiBhY19ub25leGlzdGVudC5oOiBObyBzdWNoIGZpbGUg b3IgZGlyZWN0b3J5CmNvbmZpZ3VyZTo1ODk0OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJv Z3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIlIi CnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgIlIiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04g IjIuNy4xIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIlIgMi43LjEiCnwgI2RlZmluZSBQQUNL QUdFX0JVR1JFUE9SVCAici1idWdzQFItcHJvamVjdC5vcmciCnwgI2RlZmluZSBQQUNLQUdFICJS Igp8ICNkZWZpbmUgVkVSU0lPTiAiMi43LjEiCnwgI2RlZmluZSBSX1BMQVRGT1JNICJ4ODZfNjQt dW5rbm93bi1saW51eC1nbnUiCnwgI2RlZmluZSBSX0NQVSAieDg2XzY0Igp8ICNkZWZpbmUgUl9W RU5ET1IgInVua25vd24iCnwgI2RlZmluZSBSX09TICJsaW51eC1nbnUiCnwgI2RlZmluZSBVbml4 IDEKfCAjZGVmaW5lIFJfQVJDSCAiIgp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVk ZSA8YWNfbm9uZXhpc3RlbnQuaD4KY29uZmlndXJlOjU5Nzc6IHJlc3VsdDogZGVmaW5pbmcgRjc3 IHRvIGJlIGlmb3J0CmNvbmZpZ3VyZTo2MTUzOiBjaGVja2luZyBmb3IgRm9ydHJhbiA3NyBjb21w aWxlciB2ZXJzaW9uCmNvbmZpZ3VyZTo2MTYwOiBpZm9ydCAtLXZlcnNpb24gPiY1Cmlmb3J0IChJ Rk9SVCkgMTAuMSAyMDA4MDMxMgpDb3B5cmlnaHQgKEMpIDE5ODUtMjAwOCBJbnRlbCBDb3Jwb3Jh dGlvbi4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgpjb25maWd1cmU6NjE2MzogJD8gPSAwCmNvbmZp Z3VyZTo2MTcwOiBpZm9ydCAtdiA+JjUKVmVyc2lvbiAxMC4xIApjb25maWd1cmU6NjE3MzogJD8g PSAwCmNvbmZpZ3VyZTo2MTgwOiBpZm9ydCAtViA+JjUKSW50ZWwoUikgRm9ydHJhbiBDb21waWxl ciBmb3IgYXBwbGljYXRpb25zIHJ1bm5pbmcgb24gSW50ZWwoUikgNjQsIFZlcnNpb24gMTAuMSAg ICBCdWlsZCAyMDA4MDMxMiBQYWNrYWdlIElEOiBsX2ZjX3BfMTAuMS4wMTUKQ29weXJpZ2h0IChD KSAxOTg1LTIwMDggSW50ZWwgQ29ycG9yYXRpb24uICBBbGwgcmlnaHRzIHJlc2VydmVkLgpGT1Ig Tk9OLUNPTU1FUkNJQUwgVVNFIE9OTFkKCmNvbmZpZ3VyZTo2MTgzOiAkPyA9IDAKY29uZmlndXJl OjYxOTE6IGNoZWNraW5nIHdoZXRoZXIgd2UgYXJlIHVzaW5nIHRoZSBHTlUgRm9ydHJhbiA3NyBj b21waWxlcgpjb25maWd1cmU6NjIxMDogaWZvcnQgLWMgLUM5MCAtdzkwIC13OTUgLW1wIGNvbmZ0 ZXN0LkYgPiY1Cmlmb3J0OiBjb21tYW5kIGxpbmUgd2FybmluZyAjMTAxNTY6IGlnbm9yaW5nIG9w dGlvbiAnLUMnOyBubyBhcmd1bWVudCByZXF1aXJlZApmb3J0Y29tOiBFcnJvcjogY29uZnRlc3Qu RiwgbGluZSAzOiBTeW50YXggZXJyb3IsIGZvdW5kIEVORC1PRi1TVEFURU1FTlQgd2hlbiBleHBl Y3Rpbmcgb25lIG9mOiA9PiA9IC4gKCA6ICUKICAgICAgIGNob2tlIG1lCi0tLS0tLS0tLS0tLS0t LV4KZm9ydGNvbTogRXJyb3I6IGNvbmZ0ZXN0LkYsIGxpbmUgMzogVGhpcyBzdGF0ZW1lbnQgaXMg cG9zaXRpb25lZCBpbmNvcnJlY3RseSBhbmQvb3IgaGFzIHN5bnRheCBlcnJvcnMuCiAgICAgICBj aG9rZSBtZQotLS0tLS0tLS0tLS0tLS1eCmNvbXBpbGF0aW9uIGFib3J0ZWQgZm9yIGNvbmZ0ZXN0 LkYgKGNvZGUgMSkKY29uZmlndXJlOjYyMTY6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9n cmFtIHdhczoKfCAgICAgICBwcm9ncmFtIG1haW4KfCAjaWZuZGVmIF9fR05VQ19fCnwgICAgICAg IGNob2tlIG1lCnwgI2VuZGlmCnwgCnwgICAgICAgZW5kCmNvbmZpZ3VyZTo2MjMzOiByZXN1bHQ6 IG5vCmNvbmZpZ3VyZTo2MjM5OiBjaGVja2luZyB3aGV0aGVyIGlmb3J0IGFjY2VwdHMgLWcKY29u ZmlndXJlOjYyNTY6IGlmb3J0IC1jIC1nIGNvbmZ0ZXN0LmYgPiY1CmNvbmZpZ3VyZTo2MjYyOiAk PyA9IDAKY29uZmlndXJlOjYyNzg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo2NDI1OiBjaGVja2lu ZyBmb3IgQysrIGNvbXBpbGVyIHZlcnNpb24KY29uZmlndXJlOjY0MzI6IGljYyAtLXZlcnNpb24g PiY1CmljYyAoSUNDKSAxMC4xIDIwMDgwMzEyCkNvcHlyaWdodCAoQykgMTk4NS0yMDA4IEludGVs IENvcnBvcmF0aW9uLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCmNvbmZpZ3VyZTo2NDM1OiAkPyA9 IDAKY29uZmlndXJlOjY0NDI6IGljYyAtdiA+JjUKVmVyc2lvbiAxMC4xIApjb25maWd1cmU6NjQ0 NTogJD8gPSAwCmNvbmZpZ3VyZTo2NDUyOiBpY2MgLVYgPiY1CkludGVsKFIpIEMgQ29tcGlsZXIg Zm9yIGFwcGxpY2F0aW9ucyBydW5uaW5nIG9uIEludGVsKFIpIDY0LCBWZXJzaW9uIDEwLjEgICAg QnVpbGQgMjAwODAzMTIgUGFja2FnZSBJRDogbF9jY19wXzEwLjEuMDE1CkNvcHlyaWdodCAoQykg MTk4NS0yMDA4IEludGVsIENvcnBvcmF0aW9uLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KRk9SIE5P Ti1DT01NRVJDSUFMIFVTRSBPTkxZCgpjb25maWd1cmU6NjQ1NTogJD8gPSAwCmNvbmZpZ3VyZTo2 NDU4OiBjaGVja2luZyB3aGV0aGVyIHdlIGFyZSB1c2luZyB0aGUgR05VIEMrKyBjb21waWxlcgpj b25maWd1cmU6NjQ4NzogaWNjIC1jIC1PMyAtbXAgLUkvb3B0L2ludGVsL2NjZS8xMC4xLjAxNS9p bmNsdWRlLyBjb25mdGVzdC5jcHAgPiY1CmNvbmZpZ3VyZTo2NDkzOiAkPyA9IDAKY29uZmlndXJl OjY1MTA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo2NTE1OiBjaGVja2luZyB3aGV0aGVyIGljYyBh Y2NlcHRzIC1nCmNvbmZpZ3VyZTo2NTQ1OiBpY2MgLWMgLWcgLUkvb3B0L2ludGVsL2NjZS8xMC4x LjAxNS9pbmNsdWRlLyBjb25mdGVzdC5jcHAgPiY1CmNvbmZpZ3VyZTo2NTUxOiAkPyA9IDAKY29u ZmlndXJlOjY2NTA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo2Njc4OiBjaGVja2luZyBob3cgdG8g cnVuIHRoZSBDKysgcHJlcHJvY2Vzc29yCmNvbmZpZ3VyZTo2NzE0OiBpY2MgLUUgLUkvb3B0L2lu dGVsL2NjZS8xMC4xLjAxNS9pbmNsdWRlLyBjb25mdGVzdC5jcHAKL3Vzci9pbmNsdWRlL2xpbWl0 cy5oKDEyNSk6IGVycm9yICM1OiBjb3VsZCBub3Qgb3BlbiBzb3VyY2UgZmlsZSAibGltaXRzLmgi CiAgIyBpbmNsdWRlX25leHQgPGxpbWl0cy5oPgogICAgICAgICAgICAgICAgICAgICAgICAgICBe Cgpjb25maWd1cmU6NjcyMDogJD8gPSAyCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8 IC8qIGNvbmZkZWZzLmguICAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJSIgp8ICNkZWZpbmUg UEFDS0FHRV9UQVJOQU1FICJSIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyLjcuMSIKfCAj ZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJSIDIuNy4xIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBP UlQgInItYnVnc0BSLXByb2plY3Qub3JnIgp8ICNkZWZpbmUgUEFDS0FHRSAiUiIKfCAjZGVmaW5l IFZFUlNJT04gIjIuNy4xIgp8ICNkZWZpbmUgUl9QTEFURk9STSAieDg2XzY0LXVua25vd24tbGlu dXgtZ251Igp8ICNkZWZpbmUgUl9DUFUgIng4Nl82NCIKfCAjZGVmaW5lIFJfVkVORE9SICJ1bmtu b3duIgp8ICNkZWZpbmUgUl9PUyAibGludXgtZ251Igp8ICNkZWZpbmUgVW5peCAxCnwgI2RlZmlu ZSBSX0FSQ0ggIiIKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2lmZGVmIF9fU1REQ19fCnwg IyBpbmNsdWRlIDxsaW1pdHMuaD4KfCAjZWxzZQp8ICMgaW5jbHVkZSA8YXNzZXJ0Lmg+CnwgI2Vu ZGlmCnwgCQkgICAgIFN5bnRheCBlcnJvcgpjb25maWd1cmU6NjcxNDogaWNjIC1FIC1JL29wdC9p bnRlbC9jY2UvMTAuMS4wMTUvaW5jbHVkZS8gY29uZnRlc3QuY3BwCi91c3IvaW5jbHVkZS9saW1p dHMuaCgxMjUpOiBlcnJvciAjNTogY291bGQgbm90IG9wZW4gc291cmNlIGZpbGUgImxpbWl0cy5o IgogICMgaW5jbHVkZV9uZXh0IDxsaW1pdHMuaD4KICAgICAgICAgICAgICAgICAgICAgICAgICAg XgoKY29uZmlndXJlOjY3MjA6ICQ/ID0gMgpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoK fCAvKiBjb25mZGVmcy5oLiAgKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiUiIKfCAjZGVmaW5l IFBBQ0tBR0VfVEFSTkFNRSAiUiIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMi43LjEiCnwg I2RlZmluZSBQQUNLQUdFX1NUUklORyAiUiAyLjcuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQ T1JUICJyLWJ1Z3NAUi1wcm9qZWN0Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0UgIlIiCnwgI2RlZmlu ZSBWRVJTSU9OICIyLjcuMSIKfCAjZGVmaW5lIFJfUExBVEZPUk0gIng4Nl82NC11bmtub3duLWxp bnV4LWdudSIKfCAjZGVmaW5lIFJfQ1BVICJ4ODZfNjQiCnwgI2RlZmluZSBSX1ZFTkRPUiAidW5r bm93biIKfCAjZGVmaW5lIFJfT1MgImxpbnV4LWdudSIKfCAjZGVmaW5lIFVuaXggMQp8ICNkZWZp bmUgUl9BUkNIICIiCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpZmRlZiBfX1NURENfXwp8 ICMgaW5jbHVkZSA8bGltaXRzLmg+CnwgI2Vsc2UKfCAjIGluY2x1ZGUgPGFzc2VydC5oPgp8ICNl bmRpZgp8IAkJICAgICBTeW50YXggZXJyb3IKY29uZmlndXJlOjY3MTQ6IC9saWIvY3BwIC1JL29w dC9pbnRlbC9jY2UvMTAuMS4wMTUvaW5jbHVkZS8gY29uZnRlc3QuY3BwCmNvbmZpZ3VyZTo2NzIw OiAkPyA9IDAKY29uZmlndXJlOjY3NTE6IC9saWIvY3BwIC1JL29wdC9pbnRlbC9jY2UvMTAuMS4w MTUvaW5jbHVkZS8gY29uZnRlc3QuY3BwCmNvbmZ0ZXN0LmNwcDoxNjoyODogZXJyb3I6IGFjX25v bmV4aXN0ZW50Lmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKY29uZmlndXJlOjY3NTc6ICQ/ ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8K fCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiUiIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiUiIK fCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMi43LjEiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklO RyAiUiAyLjcuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJyLWJ1Z3NAUi1wcm9qZWN0 Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0UgIlIiCnwgI2RlZmluZSBWRVJTSU9OICIyLjcuMSIKfCAj ZGVmaW5lIFJfUExBVEZPUk0gIng4Nl82NC11bmtub3duLWxpbnV4LWdudSIKfCAjZGVmaW5lIFJf Q1BVICJ4ODZfNjQiCnwgI2RlZmluZSBSX1ZFTkRPUiAidW5rbm93biIKfCAjZGVmaW5lIFJfT1Mg ImxpbnV4LWdudSIKfCAjZGVmaW5lIFVuaXggMQp8ICNkZWZpbmUgUl9BUkNIICIiCnwgLyogZW5k IGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxhY19ub25leGlzdGVudC5oPgpjb25maWd1cmU6 Njc5MDogcmVzdWx0OiAvbGliL2NwcApjb25maWd1cmU6NjgxOTogL2xpYi9jcHAgLUkvb3B0L2lu dGVsL2NjZS8xMC4xLjAxNS9pbmNsdWRlLyBjb25mdGVzdC5jcHAKY29uZmlndXJlOjY4MjU6ICQ/ ID0gMApjb25maWd1cmU6Njg1NjogL2xpYi9jcHAgLUkvb3B0L2ludGVsL2NjZS8xMC4xLjAxNS9p bmNsdWRlLyBjb25mdGVzdC5jcHAKY29uZnRlc3QuY3BwOjE2OjI4OiBlcnJvcjogYWNfbm9uZXhp c3RlbnQuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpjb25maWd1cmU6Njg2MjogJD8gPSAx CmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8ICNk ZWZpbmUgUEFDS0FHRV9OQU1FICJSIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJSIgp8ICNk ZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyLjcuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJS IDIuNy4xIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgInItYnVnc0BSLXByb2plY3Qub3Jn Igp8ICNkZWZpbmUgUEFDS0FHRSAiUiIKfCAjZGVmaW5lIFZFUlNJT04gIjIuNy4xIgp8ICNkZWZp bmUgUl9QTEFURk9STSAieDg2XzY0LXVua25vd24tbGludXgtZ251Igp8ICNkZWZpbmUgUl9DUFUg Ing4Nl82NCIKfCAjZGVmaW5lIFJfVkVORE9SICJ1bmtub3duIgp8ICNkZWZpbmUgUl9PUyAibGlu dXgtZ251Igp8ICNkZWZpbmUgVW5peCAxCnwgI2RlZmluZSBSX0FSQ0ggIiIKfCAvKiBlbmQgY29u ZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPGFjX25vbmV4aXN0ZW50Lmg+CmNvbmZpZ3VyZTo2ODk5 OiBjaGVja2luZyB3aGV0aGVyIF9fYXR0cmlidXRlX18oKHZpc2liaWxpdHkoKSkpIGlzIHN1cHBv cnRlZApjb25maWd1cmU6NjkxMDogaWNjIC1XZXJyb3IgLVMgY29uZnRlc3QuYyAtbyBjb25mdGVz dC5zIDE+JjUKY29uZmlndXJlOjY5MTM6ICQ/ID0gMApjb25maWd1cmU6NjkyMjogcmVzdWx0OiB5 ZXMKY29uZmlndXJlOjY5MzM6IGNoZWNraW5nIHdoZXRoZXIgaWNjIGFjY2VwdHMgLWZ2aXNpYmls aXR5CmNvbmZpZ3VyZTo2OTU5OiBpY2MgLWMgLU8zIC1tcCAtZnZpc2liaWxpdHk9aGlkZGVuIC1J L29wdC9pbnRlbC9jY2UvMTAuMS4wMTUvaW5jbHVkZS8gY29uZnRlc3QuYyA+JjUKY29uZmlndXJl OjY5NjU6ICQ/ID0gMApjb25maWd1cmU6Njk4MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjcwMDI6 IGNoZWNraW5nIHdoZXRoZXIgaWZvcnQgYWNjZXB0cyAtZnZpc2liaWxpdHkKY29uZmlndXJlOjcw MTg6IGlmb3J0IC1jIC1DOTAgLXc5MCAtdzk1IC1tcCAtZnZpc2liaWxpdHk9aGlkZGVuIGNvbmZ0 ZXN0LmYgPiY1Cmlmb3J0OiBjb21tYW5kIGxpbmUgd2FybmluZyAjMTAxNTY6IGlnbm9yaW5nIG9w dGlvbiAnLUMnOyBubyBhcmd1bWVudCByZXF1aXJlZApjb25maWd1cmU6NzAyNDogJD8gPSAwCmNv bmZpZ3VyZTo3MDM5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NzEyMjogY2hlY2tpbmcgZm9yIGdj Ywpjb25maWd1cmU6NzEzODogZm91bmQgL3Vzci9iaW4vZ2NjCmNvbmZpZ3VyZTo3MTQ5OiByZXN1 bHQ6IGdjYwpjb25maWd1cmU6NzE3ODogY2hlY2tpbmcgZm9yIE9iamVjdGl2ZSBDIGNvbXBpbGVy IHZlcnNpb24KY29uZmlndXJlOjcxODU6IGdjYyAtLXZlcnNpb24gPiY1CmdjYyAoU1VTRSBMaW51 eCkgNC4zLjEgMjAwODA1MDcgKHByZXJlbGVhc2UpIFtnY2MtNF8zLWJyYW5jaCByZXZpc2lvbiAx MzUwMzZdCkNvcHlyaWdodCAoQykgMjAwOCBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4K VGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIHNvdXJjZSBmb3IgY29weWluZyBjb25kaXRp b25zLiAgVGhlcmUgaXMgTk8Kd2FycmFudHk7IG5vdCBldmVuIGZvciBNRVJDSEFOVEFCSUxJVFkg b3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuCgpjb25maWd1cmU6NzE4ODogJD8g PSAwCmNvbmZpZ3VyZTo3MTk1OiBnY2MgLXYgPiY1ClVzaW5nIGJ1aWx0LWluIHNwZWNzLgpUYXJn ZXQ6IHg4Nl82NC1zdXNlLWxpbnV4CkNvbmZpZ3VyZWQgd2l0aDogLi4vY29uZmlndXJlIC0tcHJl Zml4PS91c3IgLS13aXRoLWxvY2FsLXByZWZpeD0vdXNyL2xvY2FsIC0taW5mb2Rpcj0vdXNyL3No YXJlL2luZm8gLS1tYW5kaXI9L3Vzci9zaGFyZS9tYW4gLS1saWJkaXI9L3Vzci9saWI2NCAtLWxp YmV4ZWNkaXI9L3Vzci9saWI2NCAtLWVuYWJsZS1sYW5ndWFnZXM9YyxjKyssb2JqYyxmb3J0cmFu LG9iai1jKyssamF2YSxhZGEgLS1lbmFibGUtY2hlY2tpbmc9cmVsZWFzZSAtLXdpdGgtZ3h4LWlu Y2x1ZGUtZGlyPS91c3IvaW5jbHVkZS9jKysvNC4zIC0tZW5hYmxlLXNzcCAtLWRpc2FibGUtbGli c3NwIC0td2l0aC1idWd1cmw9aHR0cDovL2J1Z3Mub3BlbnN1c2Uub3JnLyAtLXdpdGgtcGtndmVy c2lvbj0nU1VTRSBMaW51eCcgLS1kaXNhYmxlLWxpYmdjaiAtLXdpdGgtc2xpYmRpcj0vbGliNjQg LS13aXRoLXN5c3RlbS16bGliIC0tZW5hYmxlLV9fY3hhX2F0ZXhpdCAtLWVuYWJsZS1saWJzdGRj eHgtYWxsb2NhdG9yPW5ldyAtLWRpc2FibGUtbGlic3RkY3h4LXBjaCAtLXByb2dyYW0tc3VmZml4 PS00LjMgLS1lbmFibGUtdmVyc2lvbi1zcGVjaWZpYy1ydW50aW1lLWxpYnMgLS1lbmFibGUtbGlu dXgtZnV0ZXggLS13aXRob3V0LXN5c3RlbS1saWJ1bndpbmQgLS13aXRoLWNwdT1nZW5lcmljIC0t YnVpbGQ9eDg2XzY0LXN1c2UtbGludXgKVGhyZWFkIG1vZGVsOiBwb3NpeApnY2MgdmVyc2lvbiA0 LjMuMSAyMDA4MDUwNyAocHJlcmVsZWFzZSkgW2djYy00XzMtYnJhbmNoIHJldmlzaW9uIDEzNTAz Nl0gKFNVU0UgTGludXgpIApjb25maWd1cmU6NzE5ODogJD8gPSAwCmNvbmZpZ3VyZTo3MjA1OiBn Y2MgLVYgPiY1CmdjYzogJy1WJyBvcHRpb24gbXVzdCBoYXZlIGFyZ3VtZW50CmNvbmZpZ3VyZTo3 MjA4OiAkPyA9IDEKY29uZmlndXJlOjcyMTE6IGNoZWNraW5nIHdoZXRoZXIgd2UgYXJlIHVzaW5n IHRoZSBHTlUgT2JqZWN0aXZlIEMgY29tcGlsZXIKY29uZmlndXJlOjcyNDA6IGdjYyAtYyAgLUkv b3B0L2ludGVsL2NjZS8xMC4xLjAxNS9pbmNsdWRlLyBjb25mdGVzdC5tID4mNQpjb25maWd1cmU6 NzI0NjogJD8gPSAwCmNvbmZpZ3VyZTo3MjYzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6NzI2ODog Y2hlY2tpbmcgd2hldGhlciBnY2MgYWNjZXB0cyAtZwpjb25maWd1cmU6NzI5ODogZ2NjIC1jIC1n IC1JL29wdC9pbnRlbC9jY2UvMTAuMS4wMTUvaW5jbHVkZS8gY29uZnRlc3QubSA+JjUKY29uZmln dXJlOjczMDQ6ICQ/ID0gMApjb25maWd1cmU6NzQwMzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjc0 NTY6IGdjYyAtYyAtZyAtTzIgLUkvb3B0L2ludGVsL2NjZS8xMC4xLjAxNS9pbmNsdWRlLyBjb25m dGVzdC5tID4mNQpjb25maWd1cmU6NzQ2MjogJD8gPSAwCmNvbmZpZ3VyZTo3NDg3OiBjaGVja2lu ZyBmb3IgY2FjaGVkIE9iakMrKyBjb21waWxlcgpjb25maWd1cmU6NzQ5MzogcmVzdWx0OiBub25l CmNvbmZpZ3VyZTo3NTM3OiBjaGVja2luZyB3aGV0aGVyIGljYyBjYW4gY29tcGlsZSBPYmpDKysK cnVubmluZzogaWNjIC1jIGNvbmZ0ZXN0Lm1tIC1JL29wdC9pbnRlbC9jY2UvMTAuMS4wMTUvaW5j bHVkZS8gCmljYzogd2FybmluZyAjMTAxNDc6IG5vIGFjdGlvbiBwZXJmb3JtZWQgZm9yIHNwZWNp ZmllZCBmaWxlKHMpCmNvbmZpZ3VyZTo3NTYxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6NzYxMDog Y2hlY2tpbmcgZm9yIE9iamVjdGl2ZSBDKysgY29tcGlsZXIKY29uZmlndXJlOjc2MTY6IHJlc3Vs dDogaWNjCmNvbmZpZ3VyZTo3Njk0OiBjaGVja2luZyBmb3IgYSBzZWQgdGhhdCBkb2VzIG5vdCB0 cnVuY2F0ZSBvdXRwdXQKY29uZmlndXJlOjc3NzM6IHJlc3VsdDogL3Vzci9iaW4vc2VkCmNvbmZp Z3VyZTo3NzkxOiBjaGVja2luZyBmb3IgZmdyZXAKY29uZmlndXJlOjc4Njk6IHJlc3VsdDogL3Vz ci9iaW4vZ3JlcCAtRgpjb25maWd1cmU6NzkwNDogY2hlY2tpbmcgZm9yIGxkIHVzZWQgYnkgaWNj CmNvbmZpZ3VyZTo3OTcxOiByZXN1bHQ6IC91c3IvYmluL2xkCmNvbmZpZ3VyZTo3OTgwOiBjaGVj a2luZyBpZiB0aGUgbGlua2VyICgvdXNyL2Jpbi9sZCkgaXMgR05VIGxkCmNvbmZpZ3VyZTo3OTk1 OiByZXN1bHQ6IHllcwpjb25maWd1cmU6ODAwODogY2hlY2tpbmcgZm9yIEJTRC0gb3IgTVMtY29t cGF0aWJsZSBuYW1lIGxpc3RlciAobm0pCmNvbmZpZ3VyZTo4MDU3OiByZXN1bHQ6IC91c3IvYmlu L25tIC1CCmNvbmZpZ3VyZTo4MTc5OiBjaGVja2luZyB0aGUgbmFtZSBsaXN0ZXIgKC91c3IvYmlu L25tIC1CKSBpbnRlcmZhY2UKY29uZmlndXJlOjgxODY6IGljYyAtYyAtTzMgLW1wIC1JL29wdC9p bnRlbC9jY2UvMTAuMS4wMTUvaW5jbHVkZS8gY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjgxODk6 IC91c3IvYmluL25tIC1CICJjb25mdGVzdC5vIgpjb25maWd1cmU6ODE5Mjogb3V0cHV0CjAwMDAw MDAwMDAwMDAwMDAgQiBzb21lX3ZhcmlhYmxlCmNvbmZpZ3VyZTo4MTk5OiByZXN1bHQ6IEJTRCBu bQpjb25maWd1cmU6ODIwMzogY2hlY2tpbmcgdGhlIG1heGltdW0gbGVuZ3RoIG9mIGNvbW1hbmQg bGluZSBhcmd1bWVudHMKY29uZmlndXJlOjgzMjM6IHJlc3VsdDogMTU3Mjg2NApjb25maWd1cmU6 ODM0MTogY2hlY2tpbmcgd2hldGhlciB0aGUgc2hlbGwgdW5kZXJzdGFuZHMgc29tZSBYU0kgY29u c3RydWN0cwpjb25maWd1cmU6ODM0OTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjgzNTM6IGNoZWNr aW5nIHdoZXRoZXIgdGhlIHNoZWxsIHVuZGVyc3RhbmRzICIrPSIKY29uZmlndXJlOjgzNTk6IHJl c3VsdDogeWVzCmNvbmZpZ3VyZTo4Mzk0OiBjaGVja2luZyBmb3IgL3Vzci9iaW4vbGQgb3B0aW9u IHRvIHJlbG9hZCBvYmplY3QgZmlsZXMKY29uZmlndXJlOjg0MDE6IHJlc3VsdDogLXIKY29uZmln dXJlOjg0Mjg6IGNoZWNraW5nIGhvdyB0byByZWNvZ25pemUgZGVwZW5kZW50IGxpYnJhcmllcwpj b25maWd1cmU6ODYxODogcmVzdWx0OiBwYXNzX2FsbApjb25maWd1cmU6ODc4NzogY2hlY2tpbmcg Zm9yIHN0cmlwCmNvbmZpZ3VyZTo4ODAzOiBmb3VuZCAvdXNyL2Jpbi9zdHJpcApjb25maWd1cmU6 ODgxNDogcmVzdWx0OiBzdHJpcApjb25maWd1cmU6ODg5MDogY2hlY2tpbmcgZm9yIHJhbmxpYgpj b25maWd1cmU6ODkwNjogZm91bmQgL3Vzci9iaW4vcmFubGliCmNvbmZpZ3VyZTo4OTE3OiByZXN1 bHQ6IHJhbmxpYgpjb25maWd1cmU6OTAxMTogY2hlY2tpbmcgY29tbWFuZCB0byBwYXJzZSAvdXNy L2Jpbi9ubSAtQiBvdXRwdXQgZnJvbSBpY2Mgb2JqZWN0CmNvbmZpZ3VyZTo5MTI5OiBpY2MgLWMg LU8zIC1tcCAtSS9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUvIGNvbmZ0ZXN0LmMgPiY1 CmNvbmZpZ3VyZTo5MTMyOiAkPyA9IDAKY29uZmlndXJlOjkxMzY6IC91c3IvYmluL25tIC1CIGNv bmZ0ZXN0Lm8gXHwgc2VkIC1uIC1lICdzL14uKlsJIF1cKFtBQkNER0lSU1RXXVtBQkNER0lSU1RX XSpcKVsJIF1bCSBdKlwoW19BLVphLXpdW19BLVphLXowLTldKlwpJC9cMSBcMiBcMi9wJyBcPiBj b25mdGVzdC5ubQpjb25maWd1cmU6OTEzOTogJD8gPSAwCmNvbmZpZ3VyZTo5MTkzOiBpY2MgLW8g Y29uZnRlc3QgLU8zIC1tcCAtSS9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUvIC1ML3Vz ci9sb2NhbC9saWI2NCBjb25mdGVzdC5jIGNvbmZ0c3RtLm8gPiY1CmNvbmZpZ3VyZTo5MTk2OiAk PyA9IDAKY29uZmlndXJlOjkyMzQ6IHJlc3VsdDogb2sKY29uZmlndXJlOjkzMjk6IGljYyAtYyAt TzMgLW1wIC1JL29wdC9pbnRlbC9jY2UvMTAuMS4wMTUvaW5jbHVkZS8gY29uZnRlc3QuYyA+JjUK Y29uZmlndXJlOjkzMzI6ICQ/ID0gMApjb25maWd1cmU6OTc5ODogY2hlY2tpbmcgZm9yIEFOU0kg QyBoZWFkZXIgZmlsZXMKY29uZmlndXJlOjk4Mjg6IGljYyAtYyAtTzMgLW1wIC1JL29wdC9pbnRl bC9jY2UvMTAuMS4wMTUvaW5jbHVkZS8gY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjk4MzQ6ICQ/ ID0gMApjb25maWd1cmU6OTkzMzogaWNjIC1vIGNvbmZ0ZXN0IC1PMyAtbXAgLUkvb3B0L2ludGVs L2NjZS8xMC4xLjAxNS9pbmNsdWRlLyAtTC91c3IvbG9jYWwvbGliNjQgY29uZnRlc3QuYyAgPiY1 CmNvbmZpZ3VyZTo5OTM2OiAkPyA9IDAKY29uZmlndXJlOjk5NDI6IC4vY29uZnRlc3QKY29uZmln dXJlOjk5NDU6ICQ/ID0gMApjb25maWd1cmU6OTk2MjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjk5 ODY6IGNoZWNraW5nIGZvciBzeXMvdHlwZXMuaApjb25maWd1cmU6MTAwMDc6IGljYyAtYyAtTzMg LW1wIC1JL29wdC9pbnRlbC9jY2UvMTAuMS4wMTUvaW5jbHVkZS8gY29uZnRlc3QuYyA+JjUKY29u ZmlndXJlOjEwMDEzOiAkPyA9IDAKY29uZmlndXJlOjEwMDI5OiByZXN1bHQ6IHllcwpjb25maWd1 cmU6OTk4NjogY2hlY2tpbmcgZm9yIHN5cy9zdGF0LmgKY29uZmlndXJlOjEwMDA3OiBpY2MgLWMg LU8zIC1tcCAtSS9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUvIGNvbmZ0ZXN0LmMgPiY1 CmNvbmZpZ3VyZToxMDAxMzogJD8gPSAwCmNvbmZpZ3VyZToxMDAyOTogcmVzdWx0OiB5ZXMKY29u ZmlndXJlOjk5ODY6IGNoZWNraW5nIGZvciBzdGRsaWIuaApjb25maWd1cmU6MTAwMDc6IGljYyAt YyAtTzMgLW1wIC1JL29wdC9pbnRlbC9jY2UvMTAuMS4wMTUvaW5jbHVkZS8gY29uZnRlc3QuYyA+ JjUKY29uZmlndXJlOjEwMDEzOiAkPyA9IDAKY29uZmlndXJlOjEwMDI5OiByZXN1bHQ6IHllcwpj b25maWd1cmU6OTk4NjogY2hlY2tpbmcgZm9yIHN0cmluZy5oCmNvbmZpZ3VyZToxMDAwNzogaWNj IC1jIC1PMyAtbXAgLUkvb3B0L2ludGVsL2NjZS8xMC4xLjAxNS9pbmNsdWRlLyBjb25mdGVzdC5j ID4mNQpjb25maWd1cmU6MTAwMTM6ICQ/ID0gMApjb25maWd1cmU6MTAwMjk6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZTo5OTg2OiBjaGVja2luZyBmb3IgbWVtb3J5LmgKY29uZmlndXJlOjEwMDA3OiBp Y2MgLWMgLU8zIC1tcCAtSS9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUvIGNvbmZ0ZXN0 LmMgPiY1CmNvbmZpZ3VyZToxMDAxMzogJD8gPSAwCmNvbmZpZ3VyZToxMDAyOTogcmVzdWx0OiB5 ZXMKY29uZmlndXJlOjk5ODY6IGNoZWNraW5nIGZvciBzdHJpbmdzLmgKY29uZmlndXJlOjEwMDA3 OiBpY2MgLWMgLU8zIC1tcCAtSS9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUvIGNvbmZ0 ZXN0LmMgPiY1CmNvbmZpZ3VyZToxMDAxMzogJD8gPSAwCmNvbmZpZ3VyZToxMDAyOTogcmVzdWx0 OiB5ZXMKY29uZmlndXJlOjk5ODY6IGNoZWNraW5nIGZvciBpbnR0eXBlcy5oCmNvbmZpZ3VyZTox MDAwNzogaWNjIC1jIC1PMyAtbXAgLUkvb3B0L2ludGVsL2NjZS8xMC4xLjAxNS9pbmNsdWRlLyBj b25mdGVzdC5jID4mNQpjb25maWd1cmU6MTAwMTM6ICQ/ID0gMApjb25maWd1cmU6MTAwMjk6IHJl c3VsdDogeWVzCmNvbmZpZ3VyZTo5OTg2OiBjaGVja2luZyBmb3Igc3RkaW50LmgKY29uZmlndXJl OjEwMDA3OiBpY2MgLWMgLU8zIC1tcCAtSS9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUv IGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxMDAxMzogJD8gPSAwCmNvbmZpZ3VyZToxMDAyOTog cmVzdWx0OiB5ZXMKY29uZmlndXJlOjk5ODY6IGNoZWNraW5nIGZvciB1bmlzdGQuaApjb25maWd1 cmU6MTAwMDc6IGljYyAtYyAtTzMgLW1wIC1JL29wdC9pbnRlbC9jY2UvMTAuMS4wMTUvaW5jbHVk ZS8gY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjEwMDEzOiAkPyA9IDAKY29uZmlndXJlOjEwMDI5 OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTAwNDU6IGNoZWNraW5nIGZvciBkbGZjbi5oCmNvbmZp Z3VyZToxMDA2NjogaWNjIC1jIC1PMyAtbXAgLUkvb3B0L2ludGVsL2NjZS8xMC4xLjAxNS9pbmNs dWRlLyBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MTAwNzI6ICQ/ID0gMApjb25maWd1cmU6MTAw ODg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMDIxNzogY2hlY2tpbmcgZm9yIEMrKyBjb21waWxl ciB2ZXJzaW9uCmNvbmZpZ3VyZToxMDIyNDogaWNjIC0tdmVyc2lvbiA+JjUKaWNjIChJQ0MpIDEw LjEgMjAwODAzMTIKQ29weXJpZ2h0IChDKSAxOTg1LTIwMDggSW50ZWwgQ29ycG9yYXRpb24uICBB bGwgcmlnaHRzIHJlc2VydmVkLgoKY29uZmlndXJlOjEwMjI3OiAkPyA9IDAKY29uZmlndXJlOjEw MjM0OiBpY2MgLXYgPiY1ClZlcnNpb24gMTAuMSAKY29uZmlndXJlOjEwMjM3OiAkPyA9IDAKY29u ZmlndXJlOjEwMjQ0OiBpY2MgLVYgPiY1CkludGVsKFIpIEMgQ29tcGlsZXIgZm9yIGFwcGxpY2F0 aW9ucyBydW5uaW5nIG9uIEludGVsKFIpIDY0LCBWZXJzaW9uIDEwLjEgICAgQnVpbGQgMjAwODAz MTIgUGFja2FnZSBJRDogbF9jY19wXzEwLjEuMDE1CkNvcHlyaWdodCAoQykgMTk4NS0yMDA4IElu dGVsIENvcnBvcmF0aW9uLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KRk9SIE5PTi1DT01NRVJDSUFM IFVTRSBPTkxZCgpjb25maWd1cmU6MTAyNDc6ICQ/ID0gMApjb25maWd1cmU6MTAyNTA6IGNoZWNr aW5nIHdoZXRoZXIgd2UgYXJlIHVzaW5nIHRoZSBHTlUgQysrIGNvbXBpbGVyCmNvbmZpZ3VyZTox MDMwMjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEwMzA3OiBjaGVja2luZyB3aGV0aGVyIGljYyBh Y2NlcHRzIC1nCmNvbmZpZ3VyZToxMDQ0MjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEwNDczOiBj aGVja2luZyBob3cgdG8gcnVuIHRoZSBDKysgcHJlcHJvY2Vzc29yCmNvbmZpZ3VyZToxMDU4NTog cmVzdWx0OiAvbGliL2NwcApjb25maWd1cmU6MTA2MTQ6IC9saWIvY3BwIC1JL29wdC9pbnRlbC9j Y2UvMTAuMS4wMTUvaW5jbHVkZS8gY29uZnRlc3QuY3BwCmNvbmZpZ3VyZToxMDYyMDogJD8gPSAw CmNvbmZpZ3VyZToxMDY1MTogL2xpYi9jcHAgLUkvb3B0L2ludGVsL2NjZS8xMC4xLjAxNS9pbmNs dWRlLyBjb25mdGVzdC5jcHAKY29uZnRlc3QuY3BwOjI5OjI4OiBlcnJvcjogYWNfbm9uZXhpc3Rl bnQuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpjb25maWd1cmU6MTA2NTc6ICQ/ID0gMQpj b25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAjZGVm aW5lIFBBQ0tBR0VfTkFNRSAiUiIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiUiIKfCAjZGVm aW5lIFBBQ0tBR0VfVkVSU0lPTiAiMi43LjEiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiUiAy LjcuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJyLWJ1Z3NAUi1wcm9qZWN0Lm9yZyIK fCAjZGVmaW5lIFBBQ0tBR0UgIlIiCnwgI2RlZmluZSBWRVJTSU9OICIyLjcuMSIKfCAjZGVmaW5l IFJfUExBVEZPUk0gIng4Nl82NC11bmtub3duLWxpbnV4LWdudSIKfCAjZGVmaW5lIFJfQ1BVICJ4 ODZfNjQiCnwgI2RlZmluZSBSX1ZFTkRPUiAidW5rbm93biIKfCAjZGVmaW5lIFJfT1MgImxpbnV4 LWdudSIKfCAjZGVmaW5lIFVuaXggMQp8ICNkZWZpbmUgUl9BUkNIICIiCnwgI2RlZmluZSBIQVZF X1ZJU0lCSUxJVFlfQVRUUklCVVRFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5l IFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVf U1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklO R1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRf SCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRExGQ05fSCAxCnwg LyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxhY19ub25leGlzdGVudC5oPgpjb25m aWd1cmU6MTA4MDg6IGNoZWNraW5nIGZvciBGb3J0cmFuIDc3IGNvbXBpbGVyIHZlcnNpb24KY29u ZmlndXJlOjEwODE1OiBpZm9ydCAtLXZlcnNpb24gPiY1Cmlmb3J0IChJRk9SVCkgMTAuMSAyMDA4 MDMxMgpDb3B5cmlnaHQgKEMpIDE5ODUtMjAwOCBJbnRlbCBDb3Jwb3JhdGlvbi4gIEFsbCByaWdo dHMgcmVzZXJ2ZWQuCgpjb25maWd1cmU6MTA4MTg6ICQ/ID0gMApjb25maWd1cmU6MTA4MjU6IGlm b3J0IC12ID4mNQpWZXJzaW9uIDEwLjEgCmNvbmZpZ3VyZToxMDgyODogJD8gPSAwCmNvbmZpZ3Vy ZToxMDgzNTogaWZvcnQgLVYgPiY1CkludGVsKFIpIEZvcnRyYW4gQ29tcGlsZXIgZm9yIGFwcGxp Y2F0aW9ucyBydW5uaW5nIG9uIEludGVsKFIpIDY0LCBWZXJzaW9uIDEwLjEgICAgQnVpbGQgMjAw ODAzMTIgUGFja2FnZSBJRDogbF9mY19wXzEwLjEuMDE1CkNvcHlyaWdodCAoQykgMTk4NS0yMDA4 IEludGVsIENvcnBvcmF0aW9uLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KRk9SIE5PTi1DT01NRVJD SUFMIFVTRSBPTkxZCgpjb25maWd1cmU6MTA4Mzg6ICQ/ID0gMApjb25maWd1cmU6MTA4NDY6IGNo ZWNraW5nIHdoZXRoZXIgd2UgYXJlIHVzaW5nIHRoZSBHTlUgRm9ydHJhbiA3NyBjb21waWxlcgpj b25maWd1cmU6MTA4ODg6IHJlc3VsdDogbm8KY29uZmlndXJlOjEwODk0OiBjaGVja2luZyB3aGV0 aGVyIGlmb3J0IGFjY2VwdHMgLWcKY29uZmlndXJlOjEwOTMzOiByZXN1bHQ6IHllcwpjb25maWd1 cmU6MTExMDc6IGNoZWNraW5nIGZvciBvYmpkaXIKY29uZmlndXJlOjExMTIyOiByZXN1bHQ6IC5s aWJzCmNvbmZpZ3VyZToxMTQxNDogY2hlY2tpbmcgaWYgaWNjIHN1cHBvcnRzIC1mbm8tcnR0aSAt Zm5vLWV4Y2VwdGlvbnMKY29uZmlndXJlOjExNDMyOiBpY2MgLWMgLU8zIC1tcCAtSS9vcHQvaW50 ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUvIC1mbm8tcnR0aSAtZm5vLWV4Y2VwdGlvbnMgY29uZnRl c3QuYyA+JjUKY29uZmlndXJlOjExNDM2OiAkPyA9IDAKY29uZmlndXJlOjExNDQ5OiByZXN1bHQ6 IHllcwpjb25maWd1cmU6MTE0Njk6IGNoZWNraW5nIGZvciBpY2Mgb3B0aW9uIHRvIHByb2R1Y2Ug UElDCmNvbmZpZ3VyZToxMTcyMDogcmVzdWx0OiAtZlBJQyAtRFBJQwpjb25maWd1cmU6MTE3MzI6 IGNoZWNraW5nIGlmIGljYyBQSUMgZmxhZyAtZlBJQyAtRFBJQyB3b3Jrcwpjb25maWd1cmU6MTE3 NTA6IGljYyAtYyAtTzMgLW1wIC1JL29wdC9pbnRlbC9jY2UvMTAuMS4wMTUvaW5jbHVkZS8gLWZQ SUMgLURQSUMgLURQSUMgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjExNzU0OiAkPyA9IDAKY29u ZmlndXJlOjExNzY3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTE3OTE6IGNoZWNraW5nIGlmIGlj YyBzdGF0aWMgZmxhZyAtc3RhdGljIHdvcmtzCmNvbmZpZ3VyZToxMTgxOTogcmVzdWx0OiB5ZXMK Y29uZmlndXJlOjExODM0OiBjaGVja2luZyBpZiBpY2Mgc3VwcG9ydHMgLWMgLW8gZmlsZS5vCmNv bmZpZ3VyZToxMTg1NTogaWNjIC1jIC1PMyAtbXAgLUkvb3B0L2ludGVsL2NjZS8xMC4xLjAxNS9p bmNsdWRlLyAtbyBvdXQvY29uZnRlc3QyLm8gY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjExODU5 OiAkPyA9IDAKY29uZmlndXJlOjExODgxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTE4ODk6IGNo ZWNraW5nIGlmIGljYyBzdXBwb3J0cyAtYyAtbyBmaWxlLm8KY29uZmlndXJlOjExOTM2OiByZXN1 bHQ6IHllcwpjb25maWd1cmU6MTE5Njk6IGNoZWNraW5nIHdoZXRoZXIgdGhlIGljYyBsaW5rZXIg KC91c3IvYmluL2xkIC1tIGVsZl94ODZfNjQpIHN1cHBvcnRzIHNoYXJlZCBsaWJyYXJpZXMKY29u ZmlndXJlOjEzMDE5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTMwNTY6IGNoZWNraW5nIHdoZXRo ZXIgLWxjIHNob3VsZCBiZSBleHBsaWNpdGx5IGxpbmtlZCBpbgpjb25maWd1cmU6MTMwNjE6IGlj YyAtYyAtTzMgLW1wIC1JL29wdC9pbnRlbC9jY2UvMTAuMS4wMTUvaW5jbHVkZS8gY29uZnRlc3Qu YyA+JjUKY29uZmlndXJlOjEzMDY0OiAkPyA9IDAKY29uZmlndXJlOjEzMDc5OiBpY2MgLXNoYXJl ZCBjb25mdGVzdC5vICAtdiAtV2wsLXNvbmFtZSAtV2wsY29uZnRlc3QgLW8gY29uZnRlc3QgMlw+ XCYxIFx8IC91c3IvYmluL2dyZXAgIC1sYyAgXD4vZGV2L251bGwgMlw+XCYxCmNvbmZpZ3VyZTox MzA4MjogJD8gPSAwCmNvbmZpZ3VyZToxMzA5NDogcmVzdWx0OiBubwpjb25maWd1cmU6MTMyNTg6 IGNoZWNraW5nIGR5bmFtaWMgbGlua2VyIGNoYXJhY3RlcmlzdGljcwpjb25maWd1cmU6MTM2OTY6 IGljYyAtbyBjb25mdGVzdCAtTzMgLW1wIC1JL29wdC9pbnRlbC9jY2UvMTAuMS4wMTUvaW5jbHVk ZS8gLUwvdXNyL2xvY2FsL2xpYjY0IC1XbCwtcnBhdGggLVdsLC9mb28gY29uZnRlc3QuYyAgPiY1 CmNvbmZpZ3VyZToxMzcwMjogJD8gPSAwCmNvbmZpZ3VyZToxMzkzMjogcmVzdWx0OiBHTlUvTGlu dXggbGQuc28KY29uZmlndXJlOjE0MDM0OiBjaGVja2luZyBob3cgdG8gaGFyZGNvZGUgbGlicmFy eSBwYXRocyBpbnRvIHByb2dyYW1zCmNvbmZpZ3VyZToxNDA1OTogcmVzdWx0OiBpbW1lZGlhdGUK Y29uZmlndXJlOjE0ODcyOiBjaGVja2luZyB3aGV0aGVyIHN0cmlwcGluZyBsaWJyYXJpZXMgaXMg cG9zc2libGUKY29uZmlndXJlOjE0ODc3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQ5MTI6IGNo ZWNraW5nIGlmIGxpYnRvb2wgc3VwcG9ydHMgc2hhcmVkIGxpYnJhcmllcwpjb25maWd1cmU6MTQ5 MTQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDkxNzogY2hlY2tpbmcgd2hldGhlciB0byBidWls ZCBzaGFyZWQgbGlicmFyaWVzCmNvbmZpZ3VyZToxNDkzODogcmVzdWx0OiB5ZXMKY29uZmlndXJl OjE0OTQxOiBjaGVja2luZyB3aGV0aGVyIHRvIGJ1aWxkIHN0YXRpYyBsaWJyYXJpZXMKY29uZmln dXJlOjE0OTQ1OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToxNTA5NTogY2hlY2tpbmcgZm9yIGxkIHVz ZWQgYnkgaWNjCmNvbmZpZ3VyZToxNTE2MjogcmVzdWx0OiAvdXNyL2Jpbi9sZCAtbSBlbGZfeDg2 XzY0CmNvbmZpZ3VyZToxNTE3MTogY2hlY2tpbmcgaWYgdGhlIGxpbmtlciAoL3Vzci9iaW4vbGQg LW0gZWxmX3g4Nl82NCkgaXMgR05VIGxkCmNvbmZpZ3VyZToxNTE4NjogcmVzdWx0OiB5ZXMKY29u ZmlndXJlOjE1MjQxOiBjaGVja2luZyB3aGV0aGVyIHRoZSBpY2MgbGlua2VyICgvdXNyL2Jpbi9s ZCAtbSBlbGZfeDg2XzY0KSBzdXBwb3J0cyBzaGFyZWQgbGlicmFyaWVzCmNvbmZpZ3VyZToxNjIw MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE2MjMxOiBpY2MgLWMgLU8zIC1tcCAtSS9vcHQvaW50 ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUvIGNvbmZ0ZXN0LmNwcCA+JjUKY29uZmlndXJlOjE2MjM0 OiAkPyA9IDAKY29uZmlndXJlOjE2NDE2OiBjaGVja2luZyBmb3IgaWNjIG9wdGlvbiB0byBwcm9k dWNlIFBJQwpjb25maWd1cmU6MTY3MTc6IHJlc3VsdDogLWZQSUMgLURQSUMKY29uZmlndXJlOjE2 NzI2OiBjaGVja2luZyBpZiBpY2MgUElDIGZsYWcgLWZQSUMgLURQSUMgd29ya3MKY29uZmlndXJl OjE2NzQ0OiBpY2MgLWMgLU8zIC1tcCAtSS9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUv IC1mUElDIC1EUElDIC1EUElDIGNvbmZ0ZXN0LmNwcCA+JjUKY29uZmlndXJlOjE2NzQ4OiAkPyA9 IDAKY29uZmlndXJlOjE2NzYxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTY3ODI6IGNoZWNraW5n IGlmIGljYyBzdGF0aWMgZmxhZyAtc3RhdGljIHdvcmtzCmNvbmZpZ3VyZToxNjgxMDogcmVzdWx0 OiB5ZXMKY29uZmlndXJlOjE2ODIyOiBjaGVja2luZyBpZiBpY2Mgc3VwcG9ydHMgLWMgLW8gZmls ZS5vCmNvbmZpZ3VyZToxNjg0MzogaWNjIC1jIC1PMyAtbXAgLUkvb3B0L2ludGVsL2NjZS8xMC4x LjAxNS9pbmNsdWRlLyAtbyBvdXQvY29uZnRlc3QyLm8gY29uZnRlc3QuY3BwID4mNQpjb25maWd1 cmU6MTY4NDc6ICQ/ID0gMApjb25maWd1cmU6MTY4Njk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTox Njg3NDogY2hlY2tpbmcgaWYgaWNjIHN1cHBvcnRzIC1jIC1vIGZpbGUubwpjb25maWd1cmU6MTY5 MjE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNjk1MTogY2hlY2tpbmcgd2hldGhlciB0aGUgaWNj IGxpbmtlciAoL3Vzci9iaW4vbGQgLW0gZWxmX3g4Nl82NCkgc3VwcG9ydHMgc2hhcmVkIGxpYnJh cmllcwpjb25maWd1cmU6MTY5Nzc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNzExNDogY2hlY2tp bmcgZHluYW1pYyBsaW5rZXIgY2hhcmFjdGVyaXN0aWNzCmNvbmZpZ3VyZToxNzUwMDogaWNjIC1v IGNvbmZ0ZXN0IC1PMyAtbXAgLUkvb3B0L2ludGVsL2NjZS8xMC4xLjAxNS9pbmNsdWRlLyAtTC91 c3IvbG9jYWwvbGliNjQgLVdsLC1ycGF0aCAtV2wsL2ZvbyBjb25mdGVzdC5jcHAgID4mNQpjb25m aWd1cmU6MTc1MDY6ICQ/ID0gMApjb25maWd1cmU6MTc3MzY6IHJlc3VsdDogR05VL0xpbnV4IGxk LnNvCmNvbmZpZ3VyZToxNzc4NzogY2hlY2tpbmcgaG93IHRvIGhhcmRjb2RlIGxpYnJhcnkgcGF0 aHMgaW50byBwcm9ncmFtcwpjb25maWd1cmU6MTc4MTI6IHJlc3VsdDogaW1tZWRpYXRlCmNvbmZp Z3VyZToxNzk1MzogY2hlY2tpbmcgaWYgbGlidG9vbCBzdXBwb3J0cyBzaGFyZWQgbGlicmFyaWVz CmNvbmZpZ3VyZToxNzk1NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE3OTU4OiBjaGVja2luZyB3 aGV0aGVyIHRvIGJ1aWxkIHNoYXJlZCBsaWJyYXJpZXMKY29uZmlndXJlOjE3OTc4OiByZXN1bHQ6 IHllcwpjb25maWd1cmU6MTc5ODE6IGNoZWNraW5nIHdoZXRoZXIgdG8gYnVpbGQgc3RhdGljIGxp YnJhcmllcwpjb25maWd1cmU6MTc5ODU6IHJlc3VsdDogbm8KY29uZmlndXJlOjE3OTk5OiBjaGVj a2luZyBmb3IgaWZvcnQgb3B0aW9uIHRvIHByb2R1Y2UgUElDCmNvbmZpZ3VyZToxODI1MDogcmVz dWx0OiAtS1BJQwpjb25maWd1cmU6MTgyNTk6IGNoZWNraW5nIGlmIGlmb3J0IFBJQyBmbGFnIC1L UElDIHdvcmtzCmNvbmZpZ3VyZToxODI3NzogaWZvcnQgLWMgLUM5MCAtdzkwIC13OTUgLW1wIC1L UElDIGNvbmZ0ZXN0LmYgPiY1Cmlmb3J0OiBjb21tYW5kIGxpbmUgd2FybmluZyAjMTAxNTY6IGln bm9yaW5nIG9wdGlvbiAnLUMnOyBubyBhcmd1bWVudCByZXF1aXJlZAppZm9ydDogY29tbWFuZCBs aW5lIHJlbWFyayAjMTAxNDg6IG9wdGlvbiAnLUsnIG5vdCBzdXBwb3J0ZWQKY29uZmlndXJlOjE4 MjgxOiAkPyA9IDAKY29uZmlndXJlOjE4Mjk0OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToxODMxNTog Y2hlY2tpbmcgaWYgaWZvcnQgc3RhdGljIGZsYWcgLXN0YXRpYyB3b3JrcwppZm9ydDogY29tbWFu ZCBsaW5lIHdhcm5pbmcgIzEwMTU2OiBpZ25vcmluZyBvcHRpb24gJy1DJzsgbm8gYXJndW1lbnQg cmVxdWlyZWQKY29uZmlndXJlOjE4MzQzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTgzNTU6IGNo ZWNraW5nIGlmIGlmb3J0IHN1cHBvcnRzIC1jIC1vIGZpbGUubwpjb25maWd1cmU6MTgzNzY6IGlm b3J0IC1jIC1DOTAgLXc5MCAtdzk1IC1tcCAtbyBvdXQvY29uZnRlc3QyLm8gY29uZnRlc3QuZiA+ JjUKaWZvcnQ6IGNvbW1hbmQgbGluZSB3YXJuaW5nICMxMDE1NjogaWdub3Jpbmcgb3B0aW9uICct Qyc7IG5vIGFyZ3VtZW50IHJlcXVpcmVkCmNvbmZpZ3VyZToxODM4MDogJD8gPSAwCmNvbmZpZ3Vy ZToxODQwMjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE4NDA3OiBjaGVja2luZyBpZiBpZm9ydCBz dXBwb3J0cyAtYyAtbyBmaWxlLm8KY29uZmlndXJlOjE4NDU0OiByZXN1bHQ6IHllcwpjb25maWd1 cmU6MTg0ODQ6IGNoZWNraW5nIHdoZXRoZXIgdGhlIGlmb3J0IGxpbmtlciAoL3Vzci9iaW4vbGQg LW0gZWxmX3g4Nl82NCkgc3VwcG9ydHMgc2hhcmVkIGxpYnJhcmllcwpjb25maWd1cmU6MTk1MTQ6 IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxOTY1MTogY2hlY2tpbmcgZHluYW1pYyBsaW5rZXIgY2hh cmFjdGVyaXN0aWNzCmNvbmZpZ3VyZToyMDAyNzogaWZvcnQgLW8gY29uZnRlc3QgLUM5MCAtdzkw IC13OTUgLW1wIC1ML3Vzci9sb2NhbC9saWI2NCAtV2wsLXJwYXRoIC1XbCwvZm9vIGNvbmZ0ZXN0 LmYgID4mNQppZm9ydDogY29tbWFuZCBsaW5lIHdhcm5pbmcgIzEwMTU2OiBpZ25vcmluZyBvcHRp b24gJy1DJzsgbm8gYXJndW1lbnQgcmVxdWlyZWQKY29uZmlndXJlOjIwMDMzOiAkPyA9IDAKY29u ZmlndXJlOjIwMjYzOiByZXN1bHQ6IEdOVS9MaW51eCBsZC5zbwpjb25maWd1cmU6MjAzMTQ6IGNo ZWNraW5nIGhvdyB0byBoYXJkY29kZSBsaWJyYXJ5IHBhdGhzIGludG8gcHJvZ3JhbXMKY29uZmln dXJlOjIwMzM5OiByZXN1bHQ6IGltbWVkaWF0ZQpjb25maWd1cmU6MjA2NDA6IGNoZWNraW5nIGZv ciBjb3MgaW4gLWxtCmNvbmZpZ3VyZToyMDY3NTogaWNjIC1vIGNvbmZ0ZXN0IC1PMyAtbXAgLUkv b3B0L2ludGVsL2NjZS8xMC4xLjAxNS9pbmNsdWRlLyAtTC91c3IvbG9jYWwvbGliNjQgY29uZnRl c3QuYyAtbG0gICA+JjUKY29uZnRlc3QuYyg0MSkgKGNvbC4gOCk6IHdhcm5pbmcgIzk4MDogd3Jv bmcgbnVtYmVyIG9mIGFjdHVhbCBhcmd1bWVudHMgdG8gaW50cmluc2ljIGZ1bmN0aW9uICI8aWwx X0lOVFJJTl9DT1Nfbm9pbmxpbmU+IgoKY29uZmlndXJlOjIwNjgxOiAkPyA9IDAKY29uZmlndXJl OjIwNjk5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjA3MTQ6IGNoZWNraW5nIGZvciBzaW4gaW4g LWxtCmNvbmZpZ3VyZToyMDc0OTogaWNjIC1vIGNvbmZ0ZXN0IC1PMyAtbXAgLUkvb3B0L2ludGVs L2NjZS8xMC4xLjAxNS9pbmNsdWRlLyAtTC91c3IvbG9jYWwvbGliNjQgY29uZnRlc3QuYyAtbG0g ICA+JjUKY29uZnRlc3QuYyg0MSkgKGNvbC4gOCk6IHdhcm5pbmcgIzk4MDogd3JvbmcgbnVtYmVy IG9mIGFjdHVhbCBhcmd1bWVudHMgdG8gaW50cmluc2ljIGZ1bmN0aW9uICI8aWwxX0lOVFJJTl9T SU5fbm9pbmxpbmU+IgoKY29uZmlndXJlOjIwNzU1OiAkPyA9IDAKY29uZmlndXJlOjIwNzczOiBy ZXN1bHQ6IHllcwpjb25maWd1cmU6MjA5NTI6IGNoZWNraW5nIGZvciBkbG9wZW4gaW4gLWxkbApj b25maWd1cmU6MjA5ODc6IGljYyAtbyBjb25mdGVzdCAtTzMgLW1wIC1JL29wdC9pbnRlbC9jY2Uv MTAuMS4wMTUvaW5jbHVkZS8gLUwvdXNyL2xvY2FsL2xpYjY0IGNvbmZ0ZXN0LmMgLWxkbCAgLWxt ICA+JjUKY29uZmlndXJlOjIwOTkzOiAkPyA9IDAKY29uZmlndXJlOjIxMDExOiByZXN1bHQ6IHll cwpjb25maWd1cmU6MjEwNDM6IGNoZWNraW5nIHJlYWRsaW5lL2hpc3RvcnkuaCB1c2FiaWxpdHkK Y29uZmlndXJlOjIxMDYwOiBpY2MgLWMgLU8zIC1tcCAtSS9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1 L2luY2x1ZGUvIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyMTA2NjogJD8gPSAwCmNvbmZpZ3Vy ZToyMTA4MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIxMDg0OiBjaGVja2luZyByZWFkbGluZS9o aXN0b3J5LmggcHJlc2VuY2UKY29uZmlndXJlOjIxMDk5OiAvbGliL2NwcCAtSS9vcHQvaW50ZWwv Y2NlLzEwLjEuMDE1L2luY2x1ZGUvIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjIxMTA1OiAkPyA9IDAK Y29uZmlndXJlOjIxMTE5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjExNTI6IGNoZWNraW5nIGZv ciByZWFkbGluZS9oaXN0b3J5LmgKY29uZmlndXJlOjIxMTYwOiByZXN1bHQ6IHllcwpjb25maWd1 cmU6MjEwNDM6IGNoZWNraW5nIHJlYWRsaW5lL3JlYWRsaW5lLmggdXNhYmlsaXR5CmNvbmZpZ3Vy ZToyMTA2MDogaWNjIC1jIC1PMyAtbXAgLUkvb3B0L2ludGVsL2NjZS8xMC4xLjAxNS9pbmNsdWRl LyBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjEwNjY6ICQ/ID0gMApjb25maWd1cmU6MjEwODA6 IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMTA4NDogY2hlY2tpbmcgcmVhZGxpbmUvcmVhZGxpbmUu aCBwcmVzZW5jZQpjb25maWd1cmU6MjEwOTk6IC9saWIvY3BwIC1JL29wdC9pbnRlbC9jY2UvMTAu MS4wMTUvaW5jbHVkZS8gY29uZnRlc3QuYwpjb25maWd1cmU6MjExMDU6ICQ/ID0gMApjb25maWd1 cmU6MjExMTk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMTE1MjogY2hlY2tpbmcgZm9yIHJlYWRs aW5lL3JlYWRsaW5lLmgKY29uZmlndXJlOjIxMTYwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjEx Nzg6IGNoZWNraW5nIGZvciBybF9jYWxsYmFja19yZWFkX2NoYXIgaW4gLWxyZWFkbGluZQpjb25m aWd1cmU6MjEyMTM6IGljYyAtbyBjb25mdGVzdCAtTzMgLW1wIC1JL29wdC9pbnRlbC9jY2UvMTAu MS4wMTUvaW5jbHVkZS8gLUwvdXNyL2xvY2FsL2xpYjY0IGNvbmZ0ZXN0LmMgLWxyZWFkbGluZSAg ID4mNQpjb25maWd1cmU6MjEyMTk6ICQ/ID0gMApjb25maWd1cmU6MjEyMzc6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZToyMTUyNzogY2hlY2tpbmcgZm9yIGhpc3RvcnlfdHJ1bmNhdGVfZmlsZQpjb25m aWd1cmU6MjE1ODM6IGljYyAtbyBjb25mdGVzdCAtTzMgLW1wIC1JL29wdC9pbnRlbC9jY2UvMTAu MS4wMTUvaW5jbHVkZS8gLUwvdXNyL2xvY2FsL2xpYjY0IGNvbmZ0ZXN0LmMgLWxyZWFkbGluZSAg PiY1Ci91c3IvaW5jbHVkZS9saW1pdHMuaCgxMjUpOiBjYXRhc3Ryb3BoaWMgZXJyb3I6IGNvdWxk IG5vdCBvcGVuIHNvdXJjZSBmaWxlICJsaW1pdHMuaCIKICAjIGluY2x1ZGVfbmV4dCA8bGltaXRz Lmg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KCmNvbXBpbGF0aW9uIGFib3J0ZWQgZm9y IGNvbmZ0ZXN0LmMgKGNvZGUgNCkKY29uZmlndXJlOjIxNTg5OiAkPyA9IDQKY29uZmlndXJlOiBm YWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdF X05BTUUgIlIiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgIlIiCnwgI2RlZmluZSBQQUNLQUdF X1ZFUlNJT04gIjIuNy4xIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIlIgMi43LjEiCnwgI2Rl ZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAici1idWdzQFItcHJvamVjdC5vcmciCnwgI2RlZmluZSBQ QUNLQUdFICJSIgp8ICNkZWZpbmUgVkVSU0lPTiAiMi43LjEiCnwgI2RlZmluZSBSX1BMQVRGT1JN ICJ4ODZfNjQtdW5rbm93bi1saW51eC1nbnUiCnwgI2RlZmluZSBSX0NQVSAieDg2XzY0Igp8ICNk ZWZpbmUgUl9WRU5ET1IgInVua25vd24iCnwgI2RlZmluZSBSX09TICJsaW51eC1nbnUiCnwgI2Rl ZmluZSBVbml4IDEKfCAjZGVmaW5lIFJfQVJDSCAiIgp8ICNkZWZpbmUgSEFWRV9WSVNJQklMSVRZ X0FUVFJJQlVURSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBTVERDX0hFQURF UlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFU X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEK fCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNk ZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZp bmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgTFRf T0JKRElSICIubGlicy8iCnwgI2RlZmluZSBIQVZFX0xJQk0gMQp8ICNkZWZpbmUgSEFWRV9MSUJE TCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5FX0hJU1RPUllfSCAxCnwgI2RlZmluZSBIQVZFX1JF QURMSU5FX1JFQURMSU5FX0ggMQp8ICNkZWZpbmUgSEFWRV9MSUJSRUFETElORSAxCnwgLyogZW5k IGNvbmZkZWZzLmguICAqLwp8IC8qIERlZmluZSBoaXN0b3J5X3RydW5jYXRlX2ZpbGUgdG8gYW4g aW5ub2N1b3VzIHZhcmlhbnQsIGluIGNhc2UgPGxpbWl0cy5oPiBkZWNsYXJlcyBoaXN0b3J5X3Ry dW5jYXRlX2ZpbGUuCnwgICAgRm9yIGV4YW1wbGUsIEhQLVVYIDExaSA8bGltaXRzLmg+IGRlY2xh cmVzIGdldHRpbWVvZmRheS4gICovCnwgI2RlZmluZSBoaXN0b3J5X3RydW5jYXRlX2ZpbGUgaW5u b2N1b3VzX2hpc3RvcnlfdHJ1bmNhdGVfZmlsZQp8IAp8IC8qIFN5c3RlbSBoZWFkZXIgdG8gZGVm aW5lIF9fc3R1YiBtYWNyb3MgYW5kIGhvcGVmdWxseSBmZXcgcHJvdG90eXBlcywKfCAgICAgd2hp Y2ggY2FuIGNvbmZsaWN0IHdpdGggY2hhciBoaXN0b3J5X3RydW5jYXRlX2ZpbGUgKCk7IGJlbG93 Lgp8ICAgICBQcmVmZXIgPGxpbWl0cy5oPiB0byA8YXNzZXJ0Lmg+IGlmIF9fU1REQ19fIGlzIGRl ZmluZWQsIHNpbmNlCnwgICAgIDxsaW1pdHMuaD4gZXhpc3RzIGV2ZW4gb24gZnJlZXN0YW5kaW5n IGNvbXBpbGVycy4gICovCnwgCnwgI2lmZGVmIF9fU1REQ19fCnwgIyBpbmNsdWRlIDxsaW1pdHMu aD4KfCAjZWxzZQp8ICMgaW5jbHVkZSA8YXNzZXJ0Lmg+CnwgI2VuZGlmCnwgCnwgI3VuZGVmIGhp c3RvcnlfdHJ1bmNhdGVfZmlsZQp8IAp8IC8qIE92ZXJyaWRlIGFueSBHQ0MgaW50ZXJuYWwgcHJv dG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLgp8ICAgIFVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0 IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIEdDQwp8ICAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRz IGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCnwgI2lmZGVmIF9fY3Bs dXNwbHVzCnwgZXh0ZXJuICJDIgp8ICNlbmRpZgp8IGNoYXIgaGlzdG9yeV90cnVuY2F0ZV9maWxl ICgpOwp8IC8qIFRoZSBHTlUgQyBsaWJyYXJ5IGRlZmluZXMgdGhpcyBmb3IgZnVuY3Rpb25zIHdo aWNoIGl0IGltcGxlbWVudHMKfCAgICAgdG8gYWx3YXlzIGZhaWwgd2l0aCBFTk9TWVMuICBTb21l IGZ1bmN0aW9ucyBhcmUgYWN0dWFsbHkgbmFtZWQKfCAgICAgc29tZXRoaW5nIHN0YXJ0aW5nIHdp dGggX18gYW5kIHRoZSBub3JtYWwgbmFtZSBpcyBhbiBhbGlhcy4gICovCnwgI2lmIGRlZmluZWQg X19zdHViX2hpc3RvcnlfdHJ1bmNhdGVfZmlsZSB8fCBkZWZpbmVkIF9fc3R1Yl9fX2hpc3Rvcnlf dHJ1bmNhdGVfZmlsZQp8IGNob2tlIG1lCnwgI2VuZGlmCnwgCnwgaW50CnwgbWFpbiAoKQp8IHsK fCByZXR1cm4gaGlzdG9yeV90cnVuY2F0ZV9maWxlICgpOwp8ICAgOwp8ICAgcmV0dXJuIDA7Cnwg fQpjb25maWd1cmU6MjE2MDc6IHJlc3VsdDogbm8KY29uZmlndXJlOjIxNjI4OiBjaGVja2luZyB3 aGV0aGVyIHJsX2NvbXBsZXRpb25fbWF0Y2hlcyBleGlzdHMgYW5kIGlzIGRlY2xhcmVkCmNvbmZp Z3VyZToyMTY2MDogaWNjIC1vIGNvbmZ0ZXN0IC1PMyAtbXAgLUkvb3B0L2ludGVsL2NjZS8xMC4x LjAxNS9pbmNsdWRlLyAtTC91c3IvbG9jYWwvbGliNjQgY29uZnRlc3QuYyAtbGRsIC1sbSAgPiY1 CmNvbmZpZ3VyZToyMTY2NjogJD8gPSAwCmNvbmZpZ3VyZToyMTY4NDogcmVzdWx0OiB5ZXMKY29u ZmlndXJlOjIxNzAwOiBjaGVja2luZyBmb3IgQU5TSSBDIGhlYWRlciBmaWxlcwpjb25maWd1cmU6 MjE4NjQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMTg3NDogY2hlY2tpbmcgd2hldGhlciB0aW1l LmggYW5kIHN5cy90aW1lLmggbWF5IGJvdGggYmUgaW5jbHVkZWQKY29uZmlndXJlOjIxOTA0OiBp Y2MgLWMgLU8zIC1tcCAtSS9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUvIGNvbmZ0ZXN0 LmMgPiY1CmNvbmZ0ZXN0LmMoNDQpOiB3YXJuaW5nICMyNzk6IGNvbnRyb2xsaW5nIGV4cHJlc3Np b24gaXMgY29uc3RhbnQKICBpZiAoKHN0cnVjdCB0bSAqKSAwKQogICAgICBeCgpjb25maWd1cmU6 MjE5MTA6ICQ/ID0gMApjb25maWd1cmU6MjE5MjU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMTk0 MzogY2hlY2tpbmcgZm9yIGRpcmVudC5oIHRoYXQgZGVmaW5lcyBESVIKY29uZmlndXJlOjIxOTcy OiBpY2MgLWMgLU8zIC1tcCAtSS9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUvIGNvbmZ0 ZXN0LmMgPiY1CmNvbmZ0ZXN0LmMoNDQpOiB3YXJuaW5nICMyNzk6IGNvbnRyb2xsaW5nIGV4cHJl c3Npb24gaXMgY29uc3RhbnQKICBpZiAoKERJUiAqKSAwKQogICAgICBeCgpjb25maWd1cmU6MjE5 Nzg6ICQ/ID0gMApjb25maWd1cmU6MjE5OTQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjAwNzog Y2hlY2tpbmcgZm9yIGxpYnJhcnkgY29udGFpbmluZyBvcGVuZGlyCmNvbmZpZ3VyZToyMjA0ODog aWNjIC1vIGNvbmZ0ZXN0IC1PMyAtbXAgLUkvb3B0L2ludGVsL2NjZS8xMC4xLjAxNS9pbmNsdWRl LyAtTC91c3IvbG9jYWwvbGliNjQgY29uZnRlc3QuYyAtbGRsIC1sbSAgPiY1CmNvbmZ0ZXN0LmMo NTApIChjb2wuIDgpOiB3YXJuaW5nICM5ODA6IHdyb25nIG51bWJlciBvZiBhY3R1YWwgYXJndW1l bnRzIHRvIGludHJpbnNpYyBmdW5jdGlvbiAib3BlbmRpciIKCmNvbmZpZ3VyZToyMjA1NDogJD8g PSAwCmNvbmZpZ3VyZToyMjA4MjogcmVzdWx0OiBub25lIHJlcXVpcmVkCmNvbmZpZ3VyZToyMjE3 NjogY2hlY2tpbmcgZm9yIHN5cy93YWl0LmggdGhhdCBpcyBQT1NJWC4xIGNvbXBhdGlibGUKY29u ZmlndXJlOjIyMjEyOiBpY2MgLWMgLU8zIC1tcCAtSS9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1L2lu Y2x1ZGUvIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyMjIxODogJD8gPSAwCmNvbmZpZ3VyZToy MjIzMzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIyMjkwOiBjaGVja2luZyBhcnBhL2luZXQuaCB1 c2FiaWxpdHkKY29uZmlndXJlOjIyMzA3OiBpY2MgLWMgLU8zIC1tcCAtSS9vcHQvaW50ZWwvY2Nl LzEwLjEuMDE1L2luY2x1ZGUvIGNvbmZ0ZXN0LmMgPiY1Ci91c3IvaW5jbHVkZS9saW1pdHMuaCgx MjUpOiBjYXRhc3Ryb3BoaWMgZXJyb3I6IGNvdWxkIG5vdCBvcGVuIHNvdXJjZSBmaWxlICJsaW1p dHMuaCIKICAjIGluY2x1ZGVfbmV4dCA8bGltaXRzLmg+CiAgICAgICAgICAgICAgICAgICAgICAg ICAgIF4KCmNvbXBpbGF0aW9uIGFib3J0ZWQgZm9yIGNvbmZ0ZXN0LmMgKGNvZGUgNCkKY29uZmln dXJlOjIyMzEzOiAkPyA9IDQKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29u ZmRlZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIlIiCnwgI2RlZmluZSBQQUNLQUdF X1RBUk5BTUUgIlIiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjIuNy4xIgp8ICNkZWZpbmUg UEFDS0FHRV9TVFJJTkcgIlIgMi43LjEiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAici1i dWdzQFItcHJvamVjdC5vcmciCnwgI2RlZmluZSBQQUNLQUdFICJSIgp8ICNkZWZpbmUgVkVSU0lP TiAiMi43LjEiCnwgI2RlZmluZSBSX1BMQVRGT1JNICJ4ODZfNjQtdW5rbm93bi1saW51eC1nbnUi CnwgI2RlZmluZSBSX0NQVSAieDg2XzY0Igp8ICNkZWZpbmUgUl9WRU5ET1IgInVua25vd24iCnwg I2RlZmluZSBSX09TICJsaW51eC1nbnUiCnwgI2RlZmluZSBVbml4IDEKfCAjZGVmaW5lIFJfQVJD SCAiIgp8ICNkZWZpbmUgSEFWRV9WSVNJQklMSVRZX0FUVFJJQlVURSAxCnwgI2RlZmluZSBfR05V X1NPVVJDRSAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQ RVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJf SCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8 ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAj ZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmlu ZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgTFRfT0JKRElSICIubGlicy8iCnwgI2RlZmluZSBI QVZFX0xJQk0gMQp8ICNkZWZpbmUgSEFWRV9MSUJETCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5F X0hJU1RPUllfSCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5FX1JFQURMSU5FX0ggMQp8ICNkZWZp bmUgSEFWRV9MSUJSRUFETElORSAxCnwgI2RlZmluZSBIQVZFX1JMX0NPTVBMRVRJT05fTUFUQ0hF UyAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1F IDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEK fCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN0ZGlvLmg+CnwgI2lmZGVmIEhB VkVfU1lTX1RZUEVTX0gKfCAjIGluY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRl ZiBIQVZFX1NZU19TVEFUX0gKfCAjIGluY2x1ZGUgPHN5cy9zdGF0Lmg+CnwgI2VuZGlmCnwgI2lm ZGVmIFNURENfSEVBREVSUwp8ICMgaW5jbHVkZSA8c3RkbGliLmg+CnwgIyBpbmNsdWRlIDxzdGRk ZWYuaD4KfCAjZWxzZQp8ICMgaWZkZWYgSEFWRV9TVERMSUJfSAp8ICMgIGluY2x1ZGUgPHN0ZGxp Yi5oPgp8ICMgZW5kaWYKfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdfSAp8ICMgaWYgIWRl ZmluZWQgU1REQ19IRUFERVJTICYmIGRlZmluZWQgSEFWRV9NRU1PUllfSAp8ICMgIGluY2x1ZGUg PG1lbW9yeS5oPgp8ICMgZW5kaWYKfCAjIGluY2x1ZGUgPHN0cmluZy5oPgp8ICNlbmRpZgp8ICNp ZmRlZiBIQVZFX1NUUklOR1NfSAp8ICMgaW5jbHVkZSA8c3RyaW5ncy5oPgp8ICNlbmRpZgp8ICNp ZmRlZiBIQVZFX0lOVFRZUEVTX0gKfCAjIGluY2x1ZGUgPGludHR5cGVzLmg+CnwgI2VuZGlmCnwg I2lmZGVmIEhBVkVfU1RESU5UX0gKfCAjIGluY2x1ZGUgPHN0ZGludC5oPgp8ICNlbmRpZgp8ICNp ZmRlZiBIQVZFX1VOSVNURF9ICnwgIyBpbmNsdWRlIDx1bmlzdGQuaD4KfCAjZW5kaWYKfCAjaW5j bHVkZSA8YXJwYS9pbmV0Lmg+CmNvbmZpZ3VyZToyMjMyNzogcmVzdWx0OiBubwpjb25maWd1cmU6 MjIzMzE6IGNoZWNraW5nIGFycGEvaW5ldC5oIHByZXNlbmNlCmNvbmZpZ3VyZToyMjM0NjogL2xp Yi9jcHAgLUkvb3B0L2ludGVsL2NjZS8xMC4xLjAxNS9pbmNsdWRlLyBjb25mdGVzdC5jCmNvbmZp Z3VyZToyMjM1MjogJD8gPSAwCmNvbmZpZ3VyZToyMjM2NjogcmVzdWx0OiB5ZXMKY29uZmlndXJl OjIyMzc5OiBXQVJOSU5HOiBhcnBhL2luZXQuaDogcHJlc2VudCBidXQgY2Fubm90IGJlIGNvbXBp bGVkCmNvbmZpZ3VyZToyMjM4MTogV0FSTklORzogYXJwYS9pbmV0Lmg6ICAgICBjaGVjayBmb3Ig bWlzc2luZyBwcmVyZXF1aXNpdGUgaGVhZGVycz8KY29uZmlndXJlOjIyMzgzOiBXQVJOSU5HOiBh cnBhL2luZXQuaDogc2VlIHRoZSBBdXRvY29uZiBkb2N1bWVudGF0aW9uCmNvbmZpZ3VyZToyMjM4 NTogV0FSTklORzogYXJwYS9pbmV0Lmg6ICAgICBzZWN0aW9uICJQcmVzZW50IEJ1dCBDYW5ub3Qg QmUgQ29tcGlsZWQiCmNvbmZpZ3VyZToyMjM4NzogV0FSTklORzogYXJwYS9pbmV0Lmg6IHByb2Nl ZWRpbmcgd2l0aCB0aGUgcHJlcHJvY2Vzc29yJ3MgcmVzdWx0CmNvbmZpZ3VyZToyMjM4OTogV0FS TklORzogYXJwYS9pbmV0Lmg6IGluIHRoZSBmdXR1cmUsIHRoZSBjb21waWxlciB3aWxsIHRha2Ug cHJlY2VkZW5jZQpjb25maWd1cmU6MjIzOTk6IGNoZWNraW5nIGZvciBhcnBhL2luZXQuaApjb25m aWd1cmU6MjI0MDc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjI5MDogY2hlY2tpbmcgZGwuaCB1 c2FiaWxpdHkKY29uZmlndXJlOjIyMzA3OiBpY2MgLWMgLU8zIC1tcCAtSS9vcHQvaW50ZWwvY2Nl LzEwLjEuMDE1L2luY2x1ZGUvIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmMoNzQpOiBjYXRhc3Ry b3BoaWMgZXJyb3I6IGNvdWxkIG5vdCBvcGVuIHNvdXJjZSBmaWxlICJkbC5oIgogICNpbmNsdWRl IDxkbC5oPgogICAgICAgICAgICAgICAgIF4KCmNvbXBpbGF0aW9uIGFib3J0ZWQgZm9yIGNvbmZ0 ZXN0LmMgKGNvZGUgNCkKY29uZmlndXJlOjIyMzEzOiAkPyA9IDQKY29uZmlndXJlOiBmYWlsZWQg cHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUg IlIiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgIlIiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJ T04gIjIuNy4xIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIlIgMi43LjEiCnwgI2RlZmluZSBQ QUNLQUdFX0JVR1JFUE9SVCAici1idWdzQFItcHJvamVjdC5vcmciCnwgI2RlZmluZSBQQUNLQUdF ICJSIgp8ICNkZWZpbmUgVkVSU0lPTiAiMi43LjEiCnwgI2RlZmluZSBSX1BMQVRGT1JNICJ4ODZf NjQtdW5rbm93bi1saW51eC1nbnUiCnwgI2RlZmluZSBSX0NQVSAieDg2XzY0Igp8ICNkZWZpbmUg Ul9WRU5ET1IgInVua25vd24iCnwgI2RlZmluZSBSX09TICJsaW51eC1nbnUiCnwgI2RlZmluZSBV bml4IDEKfCAjZGVmaW5lIFJfQVJDSCAiIgp8ICNkZWZpbmUgSEFWRV9WSVNJQklMSVRZX0FUVFJJ QlVURSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8 ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8 ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVm aW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUg SEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFW RV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgTFRfT0JKRElS ICIubGlicy8iCnwgI2RlZmluZSBIQVZFX0xJQk0gMQp8ICNkZWZpbmUgSEFWRV9MSUJETCAxCnwg I2RlZmluZSBIQVZFX1JFQURMSU5FX0hJU1RPUllfSCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5F X1JFQURMSU5FX0ggMQp8ICNkZWZpbmUgSEFWRV9MSUJSRUFETElORSAxCnwgI2RlZmluZSBIQVZF X1JMX0NPTVBMRVRJT05fTUFUQ0hFUyAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZp bmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9JTkVUX0ggMQp8IC8qIGVu ZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8c3RkaW8uaD4KfCAjaWZkZWYgSEFWRV9TWVNf VFlQRVNfSAp8ICMgaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVf U1lTX1NUQVRfSAp8ICMgaW5jbHVkZSA8c3lzL3N0YXQuaD4KfCAjZW5kaWYKfCAjaWZkZWYgU1RE Q19IRUFERVJTCnwgIyBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjIGluY2x1ZGUgPHN0ZGRlZi5oPgp8 ICNlbHNlCnwgIyBpZmRlZiBIQVZFX1NURExJQl9ICnwgIyAgaW5jbHVkZSA8c3RkbGliLmg+Cnwg IyBlbmRpZgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR19ICnwgIyBpZiAhZGVmaW5lZCBT VERDX0hFQURFUlMgJiYgZGVmaW5lZCBIQVZFX01FTU9SWV9ICnwgIyAgaW5jbHVkZSA8bWVtb3J5 Lmg+CnwgIyBlbmRpZgp8ICMgaW5jbHVkZSA8c3RyaW5nLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhB VkVfU1RSSU5HU19ICnwgIyBpbmNsdWRlIDxzdHJpbmdzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhB VkVfSU5UVFlQRVNfSAp8ICMgaW5jbHVkZSA8aW50dHlwZXMuaD4KfCAjZW5kaWYKfCAjaWZkZWYg SEFWRV9TVERJTlRfSAp8ICMgaW5jbHVkZSA8c3RkaW50Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhB VkVfVU5JU1REX0gKfCAjIGluY2x1ZGUgPHVuaXN0ZC5oPgp8ICNlbmRpZgp8ICNpbmNsdWRlIDxk bC5oPgpjb25maWd1cmU6MjIzMjc6IHJlc3VsdDogbm8KY29uZmlndXJlOjIyMzMxOiBjaGVja2lu ZyBkbC5oIHByZXNlbmNlCmNvbmZpZ3VyZToyMjM0NjogL2xpYi9jcHAgLUkvb3B0L2ludGVsL2Nj ZS8xMC4xLjAxNS9pbmNsdWRlLyBjb25mdGVzdC5jCmNvbmZ0ZXN0LmM6NDE6MTY6IGVycm9yOiBk bC5oOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CmNvbmZpZ3VyZToyMjM1MjogJD8gPSAxCmNv bmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8ICNkZWZp bmUgUEFDS0FHRV9OQU1FICJSIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJSIgp8ICNkZWZp bmUgUEFDS0FHRV9WRVJTSU9OICIyLjcuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJSIDIu Ny4xIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgInItYnVnc0BSLXByb2plY3Qub3JnIgp8 ICNkZWZpbmUgUEFDS0FHRSAiUiIKfCAjZGVmaW5lIFZFUlNJT04gIjIuNy4xIgp8ICNkZWZpbmUg Ul9QTEFURk9STSAieDg2XzY0LXVua25vd24tbGludXgtZ251Igp8ICNkZWZpbmUgUl9DUFUgIng4 Nl82NCIKfCAjZGVmaW5lIFJfVkVORE9SICJ1bmtub3duIgp8ICNkZWZpbmUgUl9PUyAibGludXgt Z251Igp8ICNkZWZpbmUgVW5peCAxCnwgI2RlZmluZSBSX0FSQ0ggIiIKfCAjZGVmaW5lIEhBVkVf VklTSUJJTElUWV9BVFRSSUJVVEUgMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUg U1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9T VFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5H U19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9I IDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAj ZGVmaW5lIExUX09CSkRJUiAiLmxpYnMvIgp8ICNkZWZpbmUgSEFWRV9MSUJNIDEKfCAjZGVmaW5l IEhBVkVfTElCREwgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElORV9ISVNUT1JZX0ggMQp8ICNkZWZp bmUgSEFWRV9SRUFETElORV9SRUFETElORV9IIDEKfCAjZGVmaW5lIEhBVkVfTElCUkVBRExJTkUg MQp8ICNkZWZpbmUgSEFWRV9STF9DT01QTEVUSU9OX01BVENIRVMgMQp8ICNkZWZpbmUgU1REQ19I RUFERVJTIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwgI2RlZmluZSBIQVZFX0RJ UkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX0FSUEFf SU5FVF9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPGRsLmg+CmNvbmZp Z3VyZToyMjM2NjogcmVzdWx0OiBubwpjb25maWd1cmU6MjIzOTk6IGNoZWNraW5nIGZvciBkbC5o CmNvbmZpZ3VyZToyMjQwNzogcmVzdWx0OiBubwpjb25maWd1cmU6MjIyODA6IGNoZWNraW5nIGZv ciBkbGZjbi5oCmNvbmZpZ3VyZToyMjI4NjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIyMjkwOiBj aGVja2luZyBlbGYuaCB1c2FiaWxpdHkKY29uZmlndXJlOjIyMzA3OiBpY2MgLWMgLU8zIC1tcCAt SS9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUvIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3Vy ZToyMjMxMzogJD8gPSAwCmNvbmZpZ3VyZToyMjMyNzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIy MzMxOiBjaGVja2luZyBlbGYuaCBwcmVzZW5jZQpjb25maWd1cmU6MjIzNDY6IC9saWIvY3BwIC1J L29wdC9pbnRlbC9jY2UvMTAuMS4wMTUvaW5jbHVkZS8gY29uZnRlc3QuYwpjb25maWd1cmU6MjIz NTI6ICQ/ID0gMApjb25maWd1cmU6MjIzNjY6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjM5OTog Y2hlY2tpbmcgZm9yIGVsZi5oCmNvbmZpZ3VyZToyMjQwNzogcmVzdWx0OiB5ZXMKY29uZmlndXJl OjIyMjkwOiBjaGVja2luZyBmY250bC5oIHVzYWJpbGl0eQpjb25maWd1cmU6MjIzMDc6IGljYyAt YyAtTzMgLW1wIC1JL29wdC9pbnRlbC9jY2UvMTAuMS4wMTUvaW5jbHVkZS8gY29uZnRlc3QuYyA+ JjUKY29uZmlndXJlOjIyMzEzOiAkPyA9IDAKY29uZmlndXJlOjIyMzI3OiByZXN1bHQ6IHllcwpj b25maWd1cmU6MjIzMzE6IGNoZWNraW5nIGZjbnRsLmggcHJlc2VuY2UKY29uZmlndXJlOjIyMzQ2 OiAvbGliL2NwcCAtSS9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUvIGNvbmZ0ZXN0LmMK Y29uZmlndXJlOjIyMzUyOiAkPyA9IDAKY29uZmlndXJlOjIyMzY2OiByZXN1bHQ6IHllcwpjb25m aWd1cmU6MjIzOTk6IGNoZWNraW5nIGZvciBmY250bC5oCmNvbmZpZ3VyZToyMjQwNzogcmVzdWx0 OiB5ZXMKY29uZmlndXJlOjIyMjkwOiBjaGVja2luZyBmbG9hdGluZ3BvaW50LmggdXNhYmlsaXR5 CmNvbmZpZ3VyZToyMjMwNzogaWNjIC1jIC1PMyAtbXAgLUkvb3B0L2ludGVsL2NjZS8xMC4xLjAx NS9pbmNsdWRlLyBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jKDc3KTogY2F0YXN0cm9waGljIGVy cm9yOiBjb3VsZCBub3Qgb3BlbiBzb3VyY2UgZmlsZSAiZmxvYXRpbmdwb2ludC5oIgogICNpbmNs dWRlIDxmbG9hdGluZ3BvaW50Lmg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCgpjb21w aWxhdGlvbiBhYm9ydGVkIGZvciBjb25mdGVzdC5jIChjb2RlIDQpCmNvbmZpZ3VyZToyMjMxMzog JD8gPSA0CmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAq Lwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJSIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJS Igp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyLjcuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RS SU5HICJSIDIuNy4xIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgInItYnVnc0BSLXByb2pl Y3Qub3JnIgp8ICNkZWZpbmUgUEFDS0FHRSAiUiIKfCAjZGVmaW5lIFZFUlNJT04gIjIuNy4xIgp8 ICNkZWZpbmUgUl9QTEFURk9STSAieDg2XzY0LXVua25vd24tbGludXgtZ251Igp8ICNkZWZpbmUg Ul9DUFUgIng4Nl82NCIKfCAjZGVmaW5lIFJfVkVORE9SICJ1bmtub3duIgp8ICNkZWZpbmUgUl9P UyAibGludXgtZ251Igp8ICNkZWZpbmUgVW5peCAxCnwgI2RlZmluZSBSX0FSQ0ggIiIKfCAjZGVm aW5lIEhBVkVfVklTSUJJTElUWV9BVFRSSUJVVEUgMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8 ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZp bmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhB VkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZF X1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZD Tl9IIDEKfCAjZGVmaW5lIExUX09CSkRJUiAiLmxpYnMvIgp8ICNkZWZpbmUgSEFWRV9MSUJNIDEK fCAjZGVmaW5lIEhBVkVfTElCREwgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElORV9ISVNUT1JZX0gg MQp8ICNkZWZpbmUgSEFWRV9SRUFETElORV9SRUFETElORV9IIDEKfCAjZGVmaW5lIEhBVkVfTElC UkVBRExJTkUgMQp8ICNkZWZpbmUgSEFWRV9STF9DT01QTEVUSU9OX01BVENIRVMgMQp8ICNkZWZp bmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwgI2RlZmlu ZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBI QVZFX0FSUEFfSU5FVF9IIDEKfCAjZGVmaW5lIEhBVkVfRExGQ05fSCAxCnwgI2RlZmluZSBIQVZF X0VMRl9IIDEKfCAjZGVmaW5lIEhBVkVfRkNOVExfSCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAq Lwp8ICNpbmNsdWRlIDxzdGRpby5oPgp8ICNpZmRlZiBIQVZFX1NZU19UWVBFU19ICnwgIyBpbmNs dWRlIDxzeXMvdHlwZXMuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TWVNfU1RBVF9ICnwgIyBp bmNsdWRlIDxzeXMvc3RhdC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBTVERDX0hFQURFUlMKfCAjIGlu Y2x1ZGUgPHN0ZGxpYi5oPgp8ICMgaW5jbHVkZSA8c3RkZGVmLmg+CnwgI2Vsc2UKfCAjIGlmZGVm IEhBVkVfU1RETElCX0gKfCAjICBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjIGVuZGlmCnwgI2VuZGlm CnwgI2lmZGVmIEhBVkVfU1RSSU5HX0gKfCAjIGlmICFkZWZpbmVkIFNURENfSEVBREVSUyAmJiBk ZWZpbmVkIEhBVkVfTUVNT1JZX0gKfCAjICBpbmNsdWRlIDxtZW1vcnkuaD4KfCAjIGVuZGlmCnwg IyBpbmNsdWRlIDxzdHJpbmcuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdTX0gKfCAj IGluY2x1ZGUgPHN0cmluZ3MuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9JTlRUWVBFU19ICnwg IyBpbmNsdWRlIDxpbnR0eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NURElOVF9ICnwg IyBpbmNsdWRlIDxzdGRpbnQuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9VTklTVERfSAp8ICMg aW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgI2luY2x1ZGUgPGZsb2F0aW5ncG9pbnQuaD4K Y29uZmlndXJlOjIyMzI3OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToyMjMzMTogY2hlY2tpbmcgZmxv YXRpbmdwb2ludC5oIHByZXNlbmNlCmNvbmZpZ3VyZToyMjM0NjogL2xpYi9jcHAgLUkvb3B0L2lu dGVsL2NjZS8xMC4xLjAxNS9pbmNsdWRlLyBjb25mdGVzdC5jCmNvbmZ0ZXN0LmM6NDQ6Mjc6IGVy cm9yOiBmbG9hdGluZ3BvaW50Lmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKY29uZmlndXJl OjIyMzUyOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRl ZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIlIiCnwgI2RlZmluZSBQQUNLQUdFX1RB Uk5BTUUgIlIiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjIuNy4xIgp8ICNkZWZpbmUgUEFD S0FHRV9TVFJJTkcgIlIgMi43LjEiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAici1idWdz QFItcHJvamVjdC5vcmciCnwgI2RlZmluZSBQQUNLQUdFICJSIgp8ICNkZWZpbmUgVkVSU0lPTiAi Mi43LjEiCnwgI2RlZmluZSBSX1BMQVRGT1JNICJ4ODZfNjQtdW5rbm93bi1saW51eC1nbnUiCnwg I2RlZmluZSBSX0NQVSAieDg2XzY0Igp8ICNkZWZpbmUgUl9WRU5ET1IgInVua25vd24iCnwgI2Rl ZmluZSBSX09TICJsaW51eC1nbnUiCnwgI2RlZmluZSBVbml4IDEKfCAjZGVmaW5lIFJfQVJDSCAi Igp8ICNkZWZpbmUgSEFWRV9WSVNJQklMSVRZX0FUVFJJQlVURSAxCnwgI2RlZmluZSBfR05VX1NP VVJDRSAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNf SCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAx CnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVm aW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBI QVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgTFRfT0JKRElSICIubGlicy8iCnwgI2RlZmluZSBIQVZF X0xJQk0gMQp8ICNkZWZpbmUgSEFWRV9MSUJETCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5FX0hJ U1RPUllfSCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5FX1JFQURMSU5FX0ggMQp8ICNkZWZpbmUg SEFWRV9MSUJSRUFETElORSAxCnwgI2RlZmluZSBIQVZFX1JMX0NPTVBMRVRJT05fTUFUQ0hFUyAx CnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEK fCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAj ZGVmaW5lIEhBVkVfQVJQQV9JTkVUX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVm aW5lIEhBVkVfRUxGX0ggMQp8ICNkZWZpbmUgSEFWRV9GQ05UTF9IIDEKfCAvKiBlbmQgY29uZmRl ZnMuaC4gICovCnwgI2luY2x1ZGUgPGZsb2F0aW5ncG9pbnQuaD4KY29uZmlndXJlOjIyMzY2OiBy ZXN1bHQ6IG5vCmNvbmZpZ3VyZToyMjM5OTogY2hlY2tpbmcgZm9yIGZsb2F0aW5ncG9pbnQuaApj b25maWd1cmU6MjI0MDc6IHJlc3VsdDogbm8KY29uZmlndXJlOjIyMjkwOiBjaGVja2luZyBmcHVf Y29udHJvbC5oIHVzYWJpbGl0eQpjb25maWd1cmU6MjIzMDc6IGljYyAtYyAtTzMgLW1wIC1JL29w dC9pbnRlbC9jY2UvMTAuMS4wMTUvaW5jbHVkZS8gY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjIy MzEzOiAkPyA9IDAKY29uZmlndXJlOjIyMzI3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjIzMzE6 IGNoZWNraW5nIGZwdV9jb250cm9sLmggcHJlc2VuY2UKY29uZmlndXJlOjIyMzQ2OiAvbGliL2Nw cCAtSS9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUvIGNvbmZ0ZXN0LmMKY29uZmlndXJl OjIyMzUyOiAkPyA9IDAKY29uZmlndXJlOjIyMzY2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjIz OTk6IGNoZWNraW5nIGZvciBmcHVfY29udHJvbC5oCmNvbmZpZ3VyZToyMjQwNzogcmVzdWx0OiB5 ZXMKY29uZmlndXJlOjIyMjkwOiBjaGVja2luZyBnbG9iLmggdXNhYmlsaXR5CmNvbmZpZ3VyZToy MjMwNzogaWNjIC1jIC1PMyAtbXAgLUkvb3B0L2ludGVsL2NjZS8xMC4xLjAxNS9pbmNsdWRlLyBj b25mdGVzdC5jID4mNQpjb25maWd1cmU6MjIzMTM6ICQ/ID0gMApjb25maWd1cmU6MjIzMjc6IHJl c3VsdDogeWVzCmNvbmZpZ3VyZToyMjMzMTogY2hlY2tpbmcgZ2xvYi5oIHByZXNlbmNlCmNvbmZp Z3VyZToyMjM0NjogL2xpYi9jcHAgLUkvb3B0L2ludGVsL2NjZS8xMC4xLjAxNS9pbmNsdWRlLyBj b25mdGVzdC5jCmNvbmZpZ3VyZToyMjM1MjogJD8gPSAwCmNvbmZpZ3VyZToyMjM2NjogcmVzdWx0 OiB5ZXMKY29uZmlndXJlOjIyMzk5OiBjaGVja2luZyBmb3IgZ2xvYi5oCmNvbmZpZ3VyZToyMjQw NzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIyMjkwOiBjaGVja2luZyBncnAuaCB1c2FiaWxpdHkK Y29uZmlndXJlOjIyMzA3OiBpY2MgLWMgLU8zIC1tcCAtSS9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1 L2luY2x1ZGUvIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyMjMxMzogJD8gPSAwCmNvbmZpZ3Vy ZToyMjMyNzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIyMzMxOiBjaGVja2luZyBncnAuaCBwcmVz ZW5jZQpjb25maWd1cmU6MjIzNDY6IC9saWIvY3BwIC1JL29wdC9pbnRlbC9jY2UvMTAuMS4wMTUv aW5jbHVkZS8gY29uZnRlc3QuYwpjb25maWd1cmU6MjIzNTI6ICQ/ID0gMApjb25maWd1cmU6MjIz NjY6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjM5OTogY2hlY2tpbmcgZm9yIGdycC5oCmNvbmZp Z3VyZToyMjQwNzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIyMjkwOiBjaGVja2luZyBsaW1pdHMu aCB1c2FiaWxpdHkKY29uZmlndXJlOjIyMzA3OiBpY2MgLWMgLU8zIC1tcCAtSS9vcHQvaW50ZWwv Y2NlLzEwLjEuMDE1L2luY2x1ZGUvIGNvbmZ0ZXN0LmMgPiY1Ci91c3IvaW5jbHVkZS9saW1pdHMu aCgxMjUpOiBjYXRhc3Ryb3BoaWMgZXJyb3I6IGNvdWxkIG5vdCBvcGVuIHNvdXJjZSBmaWxlICJs aW1pdHMuaCIKICAjIGluY2x1ZGVfbmV4dCA8bGltaXRzLmg+CiAgICAgICAgICAgICAgICAgICAg ICAgICAgIF4KCmNvbXBpbGF0aW9uIGFib3J0ZWQgZm9yIGNvbmZ0ZXN0LmMgKGNvZGUgNCkKY29u ZmlndXJlOjIyMzEzOiAkPyA9IDQKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyog Y29uZmRlZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIlIiCnwgI2RlZmluZSBQQUNL QUdFX1RBUk5BTUUgIlIiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjIuNy4xIgp8ICNkZWZp bmUgUEFDS0FHRV9TVFJJTkcgIlIgMi43LjEiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAi ci1idWdzQFItcHJvamVjdC5vcmciCnwgI2RlZmluZSBQQUNLQUdFICJSIgp8ICNkZWZpbmUgVkVS U0lPTiAiMi43LjEiCnwgI2RlZmluZSBSX1BMQVRGT1JNICJ4ODZfNjQtdW5rbm93bi1saW51eC1n bnUiCnwgI2RlZmluZSBSX0NQVSAieDg2XzY0Igp8ICNkZWZpbmUgUl9WRU5ET1IgInVua25vd24i CnwgI2RlZmluZSBSX09TICJsaW51eC1nbnUiCnwgI2RlZmluZSBVbml4IDEKfCAjZGVmaW5lIFJf QVJDSCAiIgp8ICNkZWZpbmUgSEFWRV9WSVNJQklMSVRZX0FUVFJJQlVURSAxCnwgI2RlZmluZSBf R05VX1NPVVJDRSAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNf VFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERM SUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0gg MQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEK fCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2Rl ZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgTFRfT0JKRElSICIubGlicy8iCnwgI2RlZmlu ZSBIQVZFX0xJQk0gMQp8ICNkZWZpbmUgSEFWRV9MSUJETCAxCnwgI2RlZmluZSBIQVZFX1JFQURM SU5FX0hJU1RPUllfSCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5FX1JFQURMSU5FX0ggMQp8ICNk ZWZpbmUgSEFWRV9MSUJSRUFETElORSAxCnwgI2RlZmluZSBIQVZFX1JMX0NPTVBMRVRJT05fTUFU Q0hFUyAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19U SU1FIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9I IDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9JTkVUX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEK fCAjZGVmaW5lIEhBVkVfRUxGX0ggMQp8ICNkZWZpbmUgSEFWRV9GQ05UTF9IIDEKfCAjZGVmaW5l IEhBVkVfRlBVX0NPTlRST0xfSCAxCnwgI2RlZmluZSBIQVZFX0dMT0JfSCAxCnwgI2RlZmluZSBI QVZFX0dSUF9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN0ZGlvLmg+ CnwgI2lmZGVmIEhBVkVfU1lTX1RZUEVTX0gKfCAjIGluY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNl bmRpZgp8ICNpZmRlZiBIQVZFX1NZU19TVEFUX0gKfCAjIGluY2x1ZGUgPHN5cy9zdGF0Lmg+Cnwg I2VuZGlmCnwgI2lmZGVmIFNURENfSEVBREVSUwp8ICMgaW5jbHVkZSA8c3RkbGliLmg+CnwgIyBp bmNsdWRlIDxzdGRkZWYuaD4KfCAjZWxzZQp8ICMgaWZkZWYgSEFWRV9TVERMSUJfSAp8ICMgIGlu Y2x1ZGUgPHN0ZGxpYi5oPgp8ICMgZW5kaWYKfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdf SAp8ICMgaWYgIWRlZmluZWQgU1REQ19IRUFERVJTICYmIGRlZmluZWQgSEFWRV9NRU1PUllfSAp8 ICMgIGluY2x1ZGUgPG1lbW9yeS5oPgp8ICMgZW5kaWYKfCAjIGluY2x1ZGUgPHN0cmluZy5oPgp8 ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR1NfSAp8ICMgaW5jbHVkZSA8c3RyaW5ncy5oPgp8 ICNlbmRpZgp8ICNpZmRlZiBIQVZFX0lOVFRZUEVTX0gKfCAjIGluY2x1ZGUgPGludHR5cGVzLmg+ CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RESU5UX0gKfCAjIGluY2x1ZGUgPHN0ZGludC5oPgp8 ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1VOSVNURF9ICnwgIyBpbmNsdWRlIDx1bmlzdGQuaD4KfCAj ZW5kaWYKfCAjaW5jbHVkZSA8bGltaXRzLmg+CmNvbmZpZ3VyZToyMjMyNzogcmVzdWx0OiBubwpj b25maWd1cmU6MjIzMzE6IGNoZWNraW5nIGxpbWl0cy5oIHByZXNlbmNlCmNvbmZpZ3VyZToyMjM0 NjogL2xpYi9jcHAgLUkvb3B0L2ludGVsL2NjZS8xMC4xLjAxNS9pbmNsdWRlLyBjb25mdGVzdC5j CmNvbmZpZ3VyZToyMjM1MjogJD8gPSAwCmNvbmZpZ3VyZToyMjM2NjogcmVzdWx0OiB5ZXMKY29u ZmlndXJlOjIyMzc5OiBXQVJOSU5HOiBsaW1pdHMuaDogcHJlc2VudCBidXQgY2Fubm90IGJlIGNv bXBpbGVkCmNvbmZpZ3VyZToyMjM4MTogV0FSTklORzogbGltaXRzLmg6ICAgICBjaGVjayBmb3Ig bWlzc2luZyBwcmVyZXF1aXNpdGUgaGVhZGVycz8KY29uZmlndXJlOjIyMzgzOiBXQVJOSU5HOiBs aW1pdHMuaDogc2VlIHRoZSBBdXRvY29uZiBkb2N1bWVudGF0aW9uCmNvbmZpZ3VyZToyMjM4NTog V0FSTklORzogbGltaXRzLmg6ICAgICBzZWN0aW9uICJQcmVzZW50IEJ1dCBDYW5ub3QgQmUgQ29t cGlsZWQiCmNvbmZpZ3VyZToyMjM4NzogV0FSTklORzogbGltaXRzLmg6IHByb2NlZWRpbmcgd2l0 aCB0aGUgcHJlcHJvY2Vzc29yJ3MgcmVzdWx0CmNvbmZpZ3VyZToyMjM4OTogV0FSTklORzogbGlt aXRzLmg6IGluIHRoZSBmdXR1cmUsIHRoZSBjb21waWxlciB3aWxsIHRha2UgcHJlY2VkZW5jZQpj b25maWd1cmU6MjIzOTk6IGNoZWNraW5nIGZvciBsaW1pdHMuaApjb25maWd1cmU6MjI0MDc6IHJl c3VsdDogeWVzCmNvbmZpZ3VyZToyMjI5MDogY2hlY2tpbmcgbG9jYWxlLmggdXNhYmlsaXR5CmNv bmZpZ3VyZToyMjMwNzogaWNjIC1jIC1PMyAtbXAgLUkvb3B0L2ludGVsL2NjZS8xMC4xLjAxNS9p bmNsdWRlLyBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjIzMTM6ICQ/ID0gMApjb25maWd1cmU6 MjIzMjc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjMzMTogY2hlY2tpbmcgbG9jYWxlLmggcHJl c2VuY2UKY29uZmlndXJlOjIyMzQ2OiAvbGliL2NwcCAtSS9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1 L2luY2x1ZGUvIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjIyMzUyOiAkPyA9IDAKY29uZmlndXJlOjIy MzY2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjIzOTk6IGNoZWNraW5nIGZvciBsb2NhbGUuaApj b25maWd1cmU6MjI0MDc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjI5MDogY2hlY2tpbmcgbmV0 ZGIuaCB1c2FiaWxpdHkKY29uZmlndXJlOjIyMzA3OiBpY2MgLWMgLU8zIC1tcCAtSS9vcHQvaW50 ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUvIGNvbmZ0ZXN0LmMgPiY1Ci91c3IvaW5jbHVkZS9saW1p dHMuaCgxMjUpOiBjYXRhc3Ryb3BoaWMgZXJyb3I6IGNvdWxkIG5vdCBvcGVuIHNvdXJjZSBmaWxl ICJsaW1pdHMuaCIKICAjIGluY2x1ZGVfbmV4dCA8bGltaXRzLmg+CiAgICAgICAgICAgICAgICAg ICAgICAgICAgIF4KCmNvbXBpbGF0aW9uIGFib3J0ZWQgZm9yIGNvbmZ0ZXN0LmMgKGNvZGUgNCkK Y29uZmlndXJlOjIyMzEzOiAkPyA9IDQKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6Cnwg LyogY29uZmRlZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIlIiCnwgI2RlZmluZSBQ QUNLQUdFX1RBUk5BTUUgIlIiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjIuNy4xIgp8ICNk ZWZpbmUgUEFDS0FHRV9TVFJJTkcgIlIgMi43LjEiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9S VCAici1idWdzQFItcHJvamVjdC5vcmciCnwgI2RlZmluZSBQQUNLQUdFICJSIgp8ICNkZWZpbmUg VkVSU0lPTiAiMi43LjEiCnwgI2RlZmluZSBSX1BMQVRGT1JNICJ4ODZfNjQtdW5rbm93bi1saW51 eC1nbnUiCnwgI2RlZmluZSBSX0NQVSAieDg2XzY0Igp8ICNkZWZpbmUgUl9WRU5ET1IgInVua25v d24iCnwgI2RlZmluZSBSX09TICJsaW51eC1nbnUiCnwgI2RlZmluZSBVbml4IDEKfCAjZGVmaW5l IFJfQVJDSCAiIgp8ICNkZWZpbmUgSEFWRV9WSVNJQklMSVRZX0FUVFJJQlVURSAxCnwgI2RlZmlu ZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9T WVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9T VERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZ X0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19I IDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwg I2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgTFRfT0JKRElSICIubGlicy8iCnwgI2Rl ZmluZSBIQVZFX0xJQk0gMQp8ICNkZWZpbmUgSEFWRV9MSUJETCAxCnwgI2RlZmluZSBIQVZFX1JF QURMSU5FX0hJU1RPUllfSCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5FX1JFQURMSU5FX0ggMQp8 ICNkZWZpbmUgSEFWRV9MSUJSRUFETElORSAxCnwgI2RlZmluZSBIQVZFX1JMX0NPTVBMRVRJT05f TUFUQ0hFUyAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgVElNRV9XSVRIX1NZ U19USU1FIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJ VF9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9JTkVUX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9I IDEKfCAjZGVmaW5lIEhBVkVfRUxGX0ggMQp8ICNkZWZpbmUgSEFWRV9GQ05UTF9IIDEKfCAjZGVm aW5lIEhBVkVfRlBVX0NPTlRST0xfSCAxCnwgI2RlZmluZSBIQVZFX0dMT0JfSCAxCnwgI2RlZmlu ZSBIQVZFX0dSUF9IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9M T0NBTEVfSCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxzdGRpby5oPgp8 ICNpZmRlZiBIQVZFX1NZU19UWVBFU19ICnwgIyBpbmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAjZW5k aWYKfCAjaWZkZWYgSEFWRV9TWVNfU1RBVF9ICnwgIyBpbmNsdWRlIDxzeXMvc3RhdC5oPgp8ICNl bmRpZgp8ICNpZmRlZiBTVERDX0hFQURFUlMKfCAjIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgaW5j bHVkZSA8c3RkZGVmLmg+CnwgI2Vsc2UKfCAjIGlmZGVmIEhBVkVfU1RETElCX0gKfCAjICBpbmNs dWRlIDxzdGRsaWIuaD4KfCAjIGVuZGlmCnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RSSU5HX0gK fCAjIGlmICFkZWZpbmVkIFNURENfSEVBREVSUyAmJiBkZWZpbmVkIEhBVkVfTUVNT1JZX0gKfCAj ICBpbmNsdWRlIDxtZW1vcnkuaD4KfCAjIGVuZGlmCnwgIyBpbmNsdWRlIDxzdHJpbmcuaD4KfCAj ZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdTX0gKfCAjIGluY2x1ZGUgPHN0cmluZ3MuaD4KfCAj ZW5kaWYKfCAjaWZkZWYgSEFWRV9JTlRUWVBFU19ICnwgIyBpbmNsdWRlIDxpbnR0eXBlcy5oPgp8 ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NURElOVF9ICnwgIyBpbmNsdWRlIDxzdGRpbnQuaD4KfCAj ZW5kaWYKfCAjaWZkZWYgSEFWRV9VTklTVERfSAp8ICMgaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2Vu ZGlmCnwgI2luY2x1ZGUgPG5ldGRiLmg+CmNvbmZpZ3VyZToyMjMyNzogcmVzdWx0OiBubwpjb25m aWd1cmU6MjIzMzE6IGNoZWNraW5nIG5ldGRiLmggcHJlc2VuY2UKY29uZmlndXJlOjIyMzQ2OiAv bGliL2NwcCAtSS9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUvIGNvbmZ0ZXN0LmMKY29u ZmlndXJlOjIyMzUyOiAkPyA9IDAKY29uZmlndXJlOjIyMzY2OiByZXN1bHQ6IHllcwpjb25maWd1 cmU6MjIzNzk6IFdBUk5JTkc6IG5ldGRiLmg6IHByZXNlbnQgYnV0IGNhbm5vdCBiZSBjb21waWxl ZApjb25maWd1cmU6MjIzODE6IFdBUk5JTkc6IG5ldGRiLmg6ICAgICBjaGVjayBmb3IgbWlzc2lu ZyBwcmVyZXF1aXNpdGUgaGVhZGVycz8KY29uZmlndXJlOjIyMzgzOiBXQVJOSU5HOiBuZXRkYi5o OiBzZWUgdGhlIEF1dG9jb25mIGRvY3VtZW50YXRpb24KY29uZmlndXJlOjIyMzg1OiBXQVJOSU5H OiBuZXRkYi5oOiAgICAgc2VjdGlvbiAiUHJlc2VudCBCdXQgQ2Fubm90IEJlIENvbXBpbGVkIgpj b25maWd1cmU6MjIzODc6IFdBUk5JTkc6IG5ldGRiLmg6IHByb2NlZWRpbmcgd2l0aCB0aGUgcHJl cHJvY2Vzc29yJ3MgcmVzdWx0CmNvbmZpZ3VyZToyMjM4OTogV0FSTklORzogbmV0ZGIuaDogaW4g dGhlIGZ1dHVyZSwgdGhlIGNvbXBpbGVyIHdpbGwgdGFrZSBwcmVjZWRlbmNlCmNvbmZpZ3VyZToy MjM5OTogY2hlY2tpbmcgZm9yIG5ldGRiLmgKY29uZmlndXJlOjIyNDA3OiByZXN1bHQ6IHllcwpj b25maWd1cmU6MjIyOTA6IGNoZWNraW5nIG5ldGluZXQvaW4uaCB1c2FiaWxpdHkKY29uZmlndXJl OjIyMzA3OiBpY2MgLWMgLU8zIC1tcCAtSS9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUv IGNvbmZ0ZXN0LmMgPiY1Ci91c3IvaW5jbHVkZS9saW1pdHMuaCgxMjUpOiBjYXRhc3Ryb3BoaWMg ZXJyb3I6IGNvdWxkIG5vdCBvcGVuIHNvdXJjZSBmaWxlICJsaW1pdHMuaCIKICAjIGluY2x1ZGVf bmV4dCA8bGltaXRzLmg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KCmNvbXBpbGF0aW9u IGFib3J0ZWQgZm9yIGNvbmZ0ZXN0LmMgKGNvZGUgNCkKY29uZmlndXJlOjIyMzEzOiAkPyA9IDQK Y29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgI2Rl ZmluZSBQQUNLQUdFX05BTUUgIlIiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgIlIiCnwgI2Rl ZmluZSBQQUNLQUdFX1ZFUlNJT04gIjIuNy4xIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIlIg Mi43LjEiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAici1idWdzQFItcHJvamVjdC5vcmci CnwgI2RlZmluZSBQQUNLQUdFICJSIgp8ICNkZWZpbmUgVkVSU0lPTiAiMi43LjEiCnwgI2RlZmlu ZSBSX1BMQVRGT1JNICJ4ODZfNjQtdW5rbm93bi1saW51eC1nbnUiCnwgI2RlZmluZSBSX0NQVSAi eDg2XzY0Igp8ICNkZWZpbmUgUl9WRU5ET1IgInVua25vd24iCnwgI2RlZmluZSBSX09TICJsaW51 eC1nbnUiCnwgI2RlZmluZSBVbml4IDEKfCAjZGVmaW5lIFJfQVJDSCAiIgp8ICNkZWZpbmUgSEFW RV9WSVNJQklMSVRZX0FUVFJJQlVURSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmlu ZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZF X1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJ TkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5U X0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8 ICNkZWZpbmUgTFRfT0JKRElSICIubGlicy8iCnwgI2RlZmluZSBIQVZFX0xJQk0gMQp8ICNkZWZp bmUgSEFWRV9MSUJETCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5FX0hJU1RPUllfSCAxCnwgI2Rl ZmluZSBIQVZFX1JFQURMSU5FX1JFQURMSU5FX0ggMQp8ICNkZWZpbmUgSEFWRV9MSUJSRUFETElO RSAxCnwgI2RlZmluZSBIQVZFX1JMX0NPTVBMRVRJT05fTUFUQ0hFUyAxCnwgI2RlZmluZSBTVERD X0hFQURFUlMgMQp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVf RElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQ QV9JTkVUX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEhBVkVfRUxGX0gg MQp8ICNkZWZpbmUgSEFWRV9GQ05UTF9IIDEKfCAjZGVmaW5lIEhBVkVfRlBVX0NPTlRST0xfSCAx CnwgI2RlZmluZSBIQVZFX0dMT0JfSCAxCnwgI2RlZmluZSBIQVZFX0dSUF9IIDEKfCAjZGVmaW5l IEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9MT0NBTEVfSCAxCnwgI2RlZmluZSBIQVZF X05FVERCX0ggMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8c3RkaW8uaD4K fCAjaWZkZWYgSEFWRV9TWVNfVFlQRVNfSAp8ICMgaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgI2Vu ZGlmCnwgI2lmZGVmIEhBVkVfU1lTX1NUQVRfSAp8ICMgaW5jbHVkZSA8c3lzL3N0YXQuaD4KfCAj ZW5kaWYKfCAjaWZkZWYgU1REQ19IRUFERVJTCnwgIyBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjIGlu Y2x1ZGUgPHN0ZGRlZi5oPgp8ICNlbHNlCnwgIyBpZmRlZiBIQVZFX1NURExJQl9ICnwgIyAgaW5j bHVkZSA8c3RkbGliLmg+CnwgIyBlbmRpZgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR19I CnwgIyBpZiAhZGVmaW5lZCBTVERDX0hFQURFUlMgJiYgZGVmaW5lZCBIQVZFX01FTU9SWV9ICnwg IyAgaW5jbHVkZSA8bWVtb3J5Lmg+CnwgIyBlbmRpZgp8ICMgaW5jbHVkZSA8c3RyaW5nLmg+Cnwg I2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RSSU5HU19ICnwgIyBpbmNsdWRlIDxzdHJpbmdzLmg+Cnwg I2VuZGlmCnwgI2lmZGVmIEhBVkVfSU5UVFlQRVNfSAp8ICMgaW5jbHVkZSA8aW50dHlwZXMuaD4K fCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVERJTlRfSAp8ICMgaW5jbHVkZSA8c3RkaW50Lmg+Cnwg I2VuZGlmCnwgI2lmZGVmIEhBVkVfVU5JU1REX0gKfCAjIGluY2x1ZGUgPHVuaXN0ZC5oPgp8ICNl bmRpZgp8ICNpbmNsdWRlIDxuZXRpbmV0L2luLmg+CmNvbmZpZ3VyZToyMjMyNzogcmVzdWx0OiBu bwpjb25maWd1cmU6MjIzMzE6IGNoZWNraW5nIG5ldGluZXQvaW4uaCBwcmVzZW5jZQpjb25maWd1 cmU6MjIzNDY6IC9saWIvY3BwIC1JL29wdC9pbnRlbC9jY2UvMTAuMS4wMTUvaW5jbHVkZS8gY29u ZnRlc3QuYwpjb25maWd1cmU6MjIzNTI6ICQ/ID0gMApjb25maWd1cmU6MjIzNjY6IHJlc3VsdDog eWVzCmNvbmZpZ3VyZToyMjM3OTogV0FSTklORzogbmV0aW5ldC9pbi5oOiBwcmVzZW50IGJ1dCBj YW5ub3QgYmUgY29tcGlsZWQKY29uZmlndXJlOjIyMzgxOiBXQVJOSU5HOiBuZXRpbmV0L2luLmg6 ICAgICBjaGVjayBmb3IgbWlzc2luZyBwcmVyZXF1aXNpdGUgaGVhZGVycz8KY29uZmlndXJlOjIy MzgzOiBXQVJOSU5HOiBuZXRpbmV0L2luLmg6IHNlZSB0aGUgQXV0b2NvbmYgZG9jdW1lbnRhdGlv bgpjb25maWd1cmU6MjIzODU6IFdBUk5JTkc6IG5ldGluZXQvaW4uaDogICAgIHNlY3Rpb24gIlBy ZXNlbnQgQnV0IENhbm5vdCBCZSBDb21waWxlZCIKY29uZmlndXJlOjIyMzg3OiBXQVJOSU5HOiBu ZXRpbmV0L2luLmg6IHByb2NlZWRpbmcgd2l0aCB0aGUgcHJlcHJvY2Vzc29yJ3MgcmVzdWx0CmNv bmZpZ3VyZToyMjM4OTogV0FSTklORzogbmV0aW5ldC9pbi5oOiBpbiB0aGUgZnV0dXJlLCB0aGUg Y29tcGlsZXIgd2lsbCB0YWtlIHByZWNlZGVuY2UKY29uZmlndXJlOjIyMzk5OiBjaGVja2luZyBm b3IgbmV0aW5ldC9pbi5oCmNvbmZpZ3VyZToyMjQwNzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIy MjkwOiBjaGVja2luZyBwd2QuaCB1c2FiaWxpdHkKY29uZmlndXJlOjIyMzA3OiBpY2MgLWMgLU8z IC1tcCAtSS9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUvIGNvbmZ0ZXN0LmMgPiY1CmNv bmZpZ3VyZToyMjMxMzogJD8gPSAwCmNvbmZpZ3VyZToyMjMyNzogcmVzdWx0OiB5ZXMKY29uZmln dXJlOjIyMzMxOiBjaGVja2luZyBwd2QuaCBwcmVzZW5jZQpjb25maWd1cmU6MjIzNDY6IC9saWIv Y3BwIC1JL29wdC9pbnRlbC9jY2UvMTAuMS4wMTUvaW5jbHVkZS8gY29uZnRlc3QuYwpjb25maWd1 cmU6MjIzNTI6ICQ/ID0gMApjb25maWd1cmU6MjIzNjY6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToy MjM5OTogY2hlY2tpbmcgZm9yIHB3ZC5oCmNvbmZpZ3VyZToyMjQwNzogcmVzdWx0OiB5ZXMKY29u ZmlndXJlOjIyMjkwOiBjaGVja2luZyBzdGRib29sLmggdXNhYmlsaXR5CmNvbmZpZ3VyZToyMjMw NzogaWNjIC1jIC1PMyAtbXAgLUkvb3B0L2ludGVsL2NjZS8xMC4xLjAxNS9pbmNsdWRlLyBjb25m dGVzdC5jID4mNQpjb25maWd1cmU6MjIzMTM6ICQ/ID0gMApjb25maWd1cmU6MjIzMjc6IHJlc3Vs dDogeWVzCmNvbmZpZ3VyZToyMjMzMTogY2hlY2tpbmcgc3RkYm9vbC5oIHByZXNlbmNlCmNvbmZp Z3VyZToyMjM0NjogL2xpYi9jcHAgLUkvb3B0L2ludGVsL2NjZS8xMC4xLjAxNS9pbmNsdWRlLyBj b25mdGVzdC5jCmNvbmZpZ3VyZToyMjM1MjogJD8gPSAwCmNvbmZpZ3VyZToyMjM2NjogcmVzdWx0 OiB5ZXMKY29uZmlndXJlOjIyMzk5OiBjaGVja2luZyBmb3Igc3RkYm9vbC5oCmNvbmZpZ3VyZToy MjQwNzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIyMjgwOiBjaGVja2luZyBmb3Igc3RyaW5ncy5o CmNvbmZpZ3VyZToyMjI4NjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIyMjkwOiBjaGVja2luZyBz eXMvcGFyYW0uaCB1c2FiaWxpdHkKY29uZmlndXJlOjIyMzA3OiBpY2MgLWMgLU8zIC1tcCAtSS9v cHQvaW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUvIGNvbmZ0ZXN0LmMgPiY1Ci91c3IvaW5jbHVk ZS9saW1pdHMuaCgxMjUpOiBjYXRhc3Ryb3BoaWMgZXJyb3I6IGNvdWxkIG5vdCBvcGVuIHNvdXJj ZSBmaWxlICJsaW1pdHMuaCIKICAjIGluY2x1ZGVfbmV4dCA8bGltaXRzLmg+CiAgICAgICAgICAg ICAgICAgICAgICAgICAgIF4KCmNvbXBpbGF0aW9uIGFib3J0ZWQgZm9yIGNvbmZ0ZXN0LmMgKGNv ZGUgNCkKY29uZmlndXJlOjIyMzEzOiAkPyA9IDQKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3 YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIlIiCnwgI2Rl ZmluZSBQQUNLQUdFX1RBUk5BTUUgIlIiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjIuNy4x Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIlIgMi43LjEiCnwgI2RlZmluZSBQQUNLQUdFX0JV R1JFUE9SVCAici1idWdzQFItcHJvamVjdC5vcmciCnwgI2RlZmluZSBQQUNLQUdFICJSIgp8ICNk ZWZpbmUgVkVSU0lPTiAiMi43LjEiCnwgI2RlZmluZSBSX1BMQVRGT1JNICJ4ODZfNjQtdW5rbm93 bi1saW51eC1nbnUiCnwgI2RlZmluZSBSX0NQVSAieDg2XzY0Igp8ICNkZWZpbmUgUl9WRU5ET1Ig InVua25vd24iCnwgI2RlZmluZSBSX09TICJsaW51eC1nbnUiCnwgI2RlZmluZSBVbml4IDEKfCAj ZGVmaW5lIFJfQVJDSCAiIgp8ICNkZWZpbmUgSEFWRV9WSVNJQklMSVRZX0FUVFJJQlVURSAxCnwg I2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUg SEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUg SEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVf TUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRU WVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERf SCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgTFRfT0JKRElSICIubGlicy8i CnwgI2RlZmluZSBIQVZFX0xJQk0gMQp8ICNkZWZpbmUgSEFWRV9MSUJETCAxCnwgI2RlZmluZSBI QVZFX1JFQURMSU5FX0hJU1RPUllfSCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5FX1JFQURMSU5F X0ggMQp8ICNkZWZpbmUgSEFWRV9MSUJSRUFETElORSAxCnwgI2RlZmluZSBIQVZFX1JMX0NPTVBM RVRJT05fTUFUQ0hFUyAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgVElNRV9X SVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9JTkVUX0ggMQp8ICNkZWZpbmUgSEFWRV9E TEZDTl9IIDEKfCAjZGVmaW5lIEhBVkVfRUxGX0ggMQp8ICNkZWZpbmUgSEFWRV9GQ05UTF9IIDEK fCAjZGVmaW5lIEhBVkVfRlBVX0NPTlRST0xfSCAxCnwgI2RlZmluZSBIQVZFX0dMT0JfSCAxCnwg I2RlZmluZSBIQVZFX0dSUF9IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUg SEFWRV9MT0NBTEVfSCAxCnwgI2RlZmluZSBIQVZFX05FVERCX0ggMQp8ICNkZWZpbmUgSEFWRV9O RVRJTkVUX0lOX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1NUREJP T0xfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAq Lwp8ICNpbmNsdWRlIDxzdGRpby5oPgp8ICNpZmRlZiBIQVZFX1NZU19UWVBFU19ICnwgIyBpbmNs dWRlIDxzeXMvdHlwZXMuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TWVNfU1RBVF9ICnwgIyBp bmNsdWRlIDxzeXMvc3RhdC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBTVERDX0hFQURFUlMKfCAjIGlu Y2x1ZGUgPHN0ZGxpYi5oPgp8ICMgaW5jbHVkZSA8c3RkZGVmLmg+CnwgI2Vsc2UKfCAjIGlmZGVm IEhBVkVfU1RETElCX0gKfCAjICBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjIGVuZGlmCnwgI2VuZGlm CnwgI2lmZGVmIEhBVkVfU1RSSU5HX0gKfCAjIGlmICFkZWZpbmVkIFNURENfSEVBREVSUyAmJiBk ZWZpbmVkIEhBVkVfTUVNT1JZX0gKfCAjICBpbmNsdWRlIDxtZW1vcnkuaD4KfCAjIGVuZGlmCnwg IyBpbmNsdWRlIDxzdHJpbmcuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdTX0gKfCAj IGluY2x1ZGUgPHN0cmluZ3MuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9JTlRUWVBFU19ICnwg IyBpbmNsdWRlIDxpbnR0eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NURElOVF9ICnwg IyBpbmNsdWRlIDxzdGRpbnQuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9VTklTVERfSAp8ICMg aW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgI2luY2x1ZGUgPHN5cy9wYXJhbS5oPgpjb25m aWd1cmU6MjIzMjc6IHJlc3VsdDogbm8KY29uZmlndXJlOjIyMzMxOiBjaGVja2luZyBzeXMvcGFy YW0uaCBwcmVzZW5jZQpjb25maWd1cmU6MjIzNDY6IC9saWIvY3BwIC1JL29wdC9pbnRlbC9jY2Uv MTAuMS4wMTUvaW5jbHVkZS8gY29uZnRlc3QuYwpjb25maWd1cmU6MjIzNTI6ICQ/ID0gMApjb25m aWd1cmU6MjIzNjY6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjM3OTogV0FSTklORzogc3lzL3Bh cmFtLmg6IHByZXNlbnQgYnV0IGNhbm5vdCBiZSBjb21waWxlZApjb25maWd1cmU6MjIzODE6IFdB Uk5JTkc6IHN5cy9wYXJhbS5oOiAgICAgY2hlY2sgZm9yIG1pc3NpbmcgcHJlcmVxdWlzaXRlIGhl YWRlcnM/CmNvbmZpZ3VyZToyMjM4MzogV0FSTklORzogc3lzL3BhcmFtLmg6IHNlZSB0aGUgQXV0 b2NvbmYgZG9jdW1lbnRhdGlvbgpjb25maWd1cmU6MjIzODU6IFdBUk5JTkc6IHN5cy9wYXJhbS5o OiAgICAgc2VjdGlvbiAiUHJlc2VudCBCdXQgQ2Fubm90IEJlIENvbXBpbGVkIgpjb25maWd1cmU6 MjIzODc6IFdBUk5JTkc6IHN5cy9wYXJhbS5oOiBwcm9jZWVkaW5nIHdpdGggdGhlIHByZXByb2Nl c3NvcidzIHJlc3VsdApjb25maWd1cmU6MjIzODk6IFdBUk5JTkc6IHN5cy9wYXJhbS5oOiBpbiB0 aGUgZnV0dXJlLCB0aGUgY29tcGlsZXIgd2lsbCB0YWtlIHByZWNlZGVuY2UKY29uZmlndXJlOjIy Mzk5OiBjaGVja2luZyBmb3Igc3lzL3BhcmFtLmgKY29uZmlndXJlOjIyNDA3OiByZXN1bHQ6IHll cwpjb25maWd1cmU6MjIyOTA6IGNoZWNraW5nIHN5cy9zZWxlY3QuaCB1c2FiaWxpdHkKY29uZmln dXJlOjIyMzA3OiBpY2MgLWMgLU8zIC1tcCAtSS9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1 ZGUvIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyMjMxMzogJD8gPSAwCmNvbmZpZ3VyZToyMjMy NzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIyMzMxOiBjaGVja2luZyBzeXMvc2VsZWN0LmggcHJl c2VuY2UKY29uZmlndXJlOjIyMzQ2OiAvbGliL2NwcCAtSS9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1 L2luY2x1ZGUvIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjIyMzUyOiAkPyA9IDAKY29uZmlndXJlOjIy MzY2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjIzOTk6IGNoZWNraW5nIGZvciBzeXMvc2VsZWN0 LmgKY29uZmlndXJlOjIyNDA3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjIyOTA6IGNoZWNraW5n IHN5cy9zb2NrZXQuaCB1c2FiaWxpdHkKY29uZmlndXJlOjIyMzA3OiBpY2MgLWMgLU8zIC1tcCAt SS9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUvIGNvbmZ0ZXN0LmMgPiY1Ci91c3IvaW5j bHVkZS9saW1pdHMuaCgxMjUpOiBjYXRhc3Ryb3BoaWMgZXJyb3I6IGNvdWxkIG5vdCBvcGVuIHNv dXJjZSBmaWxlICJsaW1pdHMuaCIKICAjIGluY2x1ZGVfbmV4dCA8bGltaXRzLmg+CiAgICAgICAg ICAgICAgICAgICAgICAgICAgIF4KCmNvbXBpbGF0aW9uIGFib3J0ZWQgZm9yIGNvbmZ0ZXN0LmMg KGNvZGUgNCkKY29uZmlndXJlOjIyMzEzOiAkPyA9IDQKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3Jh bSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIlIiCnwg I2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgIlIiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjIu Ny4xIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIlIgMi43LjEiCnwgI2RlZmluZSBQQUNLQUdF X0JVR1JFUE9SVCAici1idWdzQFItcHJvamVjdC5vcmciCnwgI2RlZmluZSBQQUNLQUdFICJSIgp8 ICNkZWZpbmUgVkVSU0lPTiAiMi43LjEiCnwgI2RlZmluZSBSX1BMQVRGT1JNICJ4ODZfNjQtdW5r bm93bi1saW51eC1nbnUiCnwgI2RlZmluZSBSX0NQVSAieDg2XzY0Igp8ICNkZWZpbmUgUl9WRU5E T1IgInVua25vd24iCnwgI2RlZmluZSBSX09TICJsaW51eC1nbnUiCnwgI2RlZmluZSBVbml4IDEK fCAjZGVmaW5lIFJfQVJDSCAiIgp8ICNkZWZpbmUgSEFWRV9WSVNJQklMSVRZX0FUVFJJQlVURSAx CnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZp bmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZp bmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhB VkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9J TlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklT VERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgTFRfT0JKRElSICIubGli cy8iCnwgI2RlZmluZSBIQVZFX0xJQk0gMQp8ICNkZWZpbmUgSEFWRV9MSUJETCAxCnwgI2RlZmlu ZSBIQVZFX1JFQURMSU5FX0hJU1RPUllfSCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5FX1JFQURM SU5FX0ggMQp8ICNkZWZpbmUgSEFWRV9MSUJSRUFETElORSAxCnwgI2RlZmluZSBIQVZFX1JMX0NP TVBMRVRJT05fTUFUQ0hFUyAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgVElN RV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9JTkVUX0ggMQp8ICNkZWZpbmUgSEFW RV9ETEZDTl9IIDEKfCAjZGVmaW5lIEhBVkVfRUxGX0ggMQp8ICNkZWZpbmUgSEFWRV9GQ05UTF9I IDEKfCAjZGVmaW5lIEhBVkVfRlBVX0NPTlRST0xfSCAxCnwgI2RlZmluZSBIQVZFX0dMT0JfSCAx CnwgI2RlZmluZSBIQVZFX0dSUF9IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZp bmUgSEFWRV9MT0NBTEVfSCAxCnwgI2RlZmluZSBIQVZFX05FVERCX0ggMQp8ICNkZWZpbmUgSEFW RV9ORVRJTkVUX0lOX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1NU REJPT0xfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19Q QVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAvKiBlbmQgY29uZmRlZnMu aC4gICovCnwgI2luY2x1ZGUgPHN0ZGlvLmg+CnwgI2lmZGVmIEhBVkVfU1lTX1RZUEVTX0gKfCAj IGluY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NZU19TVEFUX0gK fCAjIGluY2x1ZGUgPHN5cy9zdGF0Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIFNURENfSEVBREVSUwp8 ICMgaW5jbHVkZSA8c3RkbGliLmg+CnwgIyBpbmNsdWRlIDxzdGRkZWYuaD4KfCAjZWxzZQp8ICMg aWZkZWYgSEFWRV9TVERMSUJfSAp8ICMgIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgZW5kaWYKfCAj ZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdfSAp8ICMgaWYgIWRlZmluZWQgU1REQ19IRUFERVJT ICYmIGRlZmluZWQgSEFWRV9NRU1PUllfSAp8ICMgIGluY2x1ZGUgPG1lbW9yeS5oPgp8ICMgZW5k aWYKfCAjIGluY2x1ZGUgPHN0cmluZy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NUUklOR1Nf SAp8ICMgaW5jbHVkZSA8c3RyaW5ncy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX0lOVFRZUEVT X0gKfCAjIGluY2x1ZGUgPGludHR5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RESU5U X0gKfCAjIGluY2x1ZGUgPHN0ZGludC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1VOSVNURF9I CnwgIyBpbmNsdWRlIDx1bmlzdGQuaD4KfCAjZW5kaWYKfCAjaW5jbHVkZSA8c3lzL3NvY2tldC5o Pgpjb25maWd1cmU6MjIzMjc6IHJlc3VsdDogbm8KY29uZmlndXJlOjIyMzMxOiBjaGVja2luZyBz eXMvc29ja2V0LmggcHJlc2VuY2UKY29uZmlndXJlOjIyMzQ2OiAvbGliL2NwcCAtSS9vcHQvaW50 ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUvIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjIyMzUyOiAkPyA9 IDAKY29uZmlndXJlOjIyMzY2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjIzNzk6IFdBUk5JTkc6 IHN5cy9zb2NrZXQuaDogcHJlc2VudCBidXQgY2Fubm90IGJlIGNvbXBpbGVkCmNvbmZpZ3VyZToy MjM4MTogV0FSTklORzogc3lzL3NvY2tldC5oOiAgICAgY2hlY2sgZm9yIG1pc3NpbmcgcHJlcmVx dWlzaXRlIGhlYWRlcnM/CmNvbmZpZ3VyZToyMjM4MzogV0FSTklORzogc3lzL3NvY2tldC5oOiBz ZWUgdGhlIEF1dG9jb25mIGRvY3VtZW50YXRpb24KY29uZmlndXJlOjIyMzg1OiBXQVJOSU5HOiBz eXMvc29ja2V0Lmg6ICAgICBzZWN0aW9uICJQcmVzZW50IEJ1dCBDYW5ub3QgQmUgQ29tcGlsZWQi CmNvbmZpZ3VyZToyMjM4NzogV0FSTklORzogc3lzL3NvY2tldC5oOiBwcm9jZWVkaW5nIHdpdGgg dGhlIHByZXByb2Nlc3NvcidzIHJlc3VsdApjb25maWd1cmU6MjIzODk6IFdBUk5JTkc6IHN5cy9z b2NrZXQuaDogaW4gdGhlIGZ1dHVyZSwgdGhlIGNvbXBpbGVyIHdpbGwgdGFrZSBwcmVjZWRlbmNl CmNvbmZpZ3VyZToyMjM5OTogY2hlY2tpbmcgZm9yIHN5cy9zb2NrZXQuaApjb25maWd1cmU6MjI0 MDc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjI4MDogY2hlY2tpbmcgZm9yIHN5cy9zdGF0LmgK Y29uZmlndXJlOjIyMjg2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjIyOTA6IGNoZWNraW5nIHN5 cy9yZXNvdXJjZS5oIHVzYWJpbGl0eQpjb25maWd1cmU6MjIzMDc6IGljYyAtYyAtTzMgLW1wIC1J L29wdC9pbnRlbC9jY2UvMTAuMS4wMTUvaW5jbHVkZS8gY29uZnRlc3QuYyA+JjUKY29uZmlndXJl OjIyMzEzOiAkPyA9IDAKY29uZmlndXJlOjIyMzI3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjIz MzE6IGNoZWNraW5nIHN5cy9yZXNvdXJjZS5oIHByZXNlbmNlCmNvbmZpZ3VyZToyMjM0NjogL2xp Yi9jcHAgLUkvb3B0L2ludGVsL2NjZS8xMC4xLjAxNS9pbmNsdWRlLyBjb25mdGVzdC5jCmNvbmZp Z3VyZToyMjM1MjogJD8gPSAwCmNvbmZpZ3VyZToyMjM2NjogcmVzdWx0OiB5ZXMKY29uZmlndXJl OjIyMzk5OiBjaGVja2luZyBmb3Igc3lzL3Jlc291cmNlLmgKY29uZmlndXJlOjIyNDA3OiByZXN1 bHQ6IHllcwpjb25maWd1cmU6MjIyOTA6IGNoZWNraW5nIHN5cy90aW1lLmggdXNhYmlsaXR5CmNv bmZpZ3VyZToyMjMwNzogaWNjIC1jIC1PMyAtbXAgLUkvb3B0L2ludGVsL2NjZS8xMC4xLjAxNS9p bmNsdWRlLyBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjIzMTM6ICQ/ID0gMApjb25maWd1cmU6 MjIzMjc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjMzMTogY2hlY2tpbmcgc3lzL3RpbWUuaCBw cmVzZW5jZQpjb25maWd1cmU6MjIzNDY6IC9saWIvY3BwIC1JL29wdC9pbnRlbC9jY2UvMTAuMS4w MTUvaW5jbHVkZS8gY29uZnRlc3QuYwpjb25maWd1cmU6MjIzNTI6ICQ/ID0gMApjb25maWd1cmU6 MjIzNjY6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjM5OTogY2hlY2tpbmcgZm9yIHN5cy90aW1l LmgKY29uZmlndXJlOjIyNDA3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjIyOTA6IGNoZWNraW5n IHN5cy90aW1lcy5oIHVzYWJpbGl0eQpjb25maWd1cmU6MjIzMDc6IGljYyAtYyAtTzMgLW1wIC1J L29wdC9pbnRlbC9jY2UvMTAuMS4wMTUvaW5jbHVkZS8gY29uZnRlc3QuYyA+JjUKY29uZmlndXJl OjIyMzEzOiAkPyA9IDAKY29uZmlndXJlOjIyMzI3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjIz MzE6IGNoZWNraW5nIHN5cy90aW1lcy5oIHByZXNlbmNlCmNvbmZpZ3VyZToyMjM0NjogL2xpYi9j cHAgLUkvb3B0L2ludGVsL2NjZS8xMC4xLjAxNS9pbmNsdWRlLyBjb25mdGVzdC5jCmNvbmZpZ3Vy ZToyMjM1MjogJD8gPSAwCmNvbmZpZ3VyZToyMjM2NjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIy Mzk5OiBjaGVja2luZyBmb3Igc3lzL3RpbWVzLmgKY29uZmlndXJlOjIyNDA3OiByZXN1bHQ6IHll cwpjb25maWd1cmU6MjIyOTA6IGNoZWNraW5nIHN5cy91dHNuYW1lLmggdXNhYmlsaXR5CmNvbmZp Z3VyZToyMjMwNzogaWNjIC1jIC1PMyAtbXAgLUkvb3B0L2ludGVsL2NjZS8xMC4xLjAxNS9pbmNs dWRlLyBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjIzMTM6ICQ/ID0gMApjb25maWd1cmU6MjIz Mjc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjMzMTogY2hlY2tpbmcgc3lzL3V0c25hbWUuaCBw cmVzZW5jZQpjb25maWd1cmU6MjIzNDY6IC9saWIvY3BwIC1JL29wdC9pbnRlbC9jY2UvMTAuMS4w MTUvaW5jbHVkZS8gY29uZnRlc3QuYwpjb25maWd1cmU6MjIzNTI6ICQ/ID0gMApjb25maWd1cmU6 MjIzNjY6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjM5OTogY2hlY2tpbmcgZm9yIHN5cy91dHNu YW1lLmgKY29uZmlndXJlOjIyNDA3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjIyOTA6IGNoZWNr aW5nIHRpbWUuaCB1c2FiaWxpdHkKY29uZmlndXJlOjIyMzA3OiBpY2MgLWMgLU8zIC1tcCAtSS9v cHQvaW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUvIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToy MjMxMzogJD8gPSAwCmNvbmZpZ3VyZToyMjMyNzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIyMzMx OiBjaGVja2luZyB0aW1lLmggcHJlc2VuY2UKY29uZmlndXJlOjIyMzQ2OiAvbGliL2NwcCAtSS9v cHQvaW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUvIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjIyMzUy OiAkPyA9IDAKY29uZmlndXJlOjIyMzY2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjIzOTk6IGNo ZWNraW5nIGZvciB0aW1lLmgKY29uZmlndXJlOjIyNDA3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6 MjIyODA6IGNoZWNraW5nIGZvciB1bmlzdGQuaApjb25maWd1cmU6MjIyODY6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZToyMjQ0MzogY2hlY2tpbmcgZXJybm8uaCB1c2FiaWxpdHkKY29uZmlndXJlOjIy NDYwOiBpY2MgLWMgLU8zIC1tcCAtSS9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUvIGNv bmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyMjQ2NjogJD8gPSAwCmNvbmZpZ3VyZToyMjQ4MDogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjIyNDg0OiBjaGVja2luZyBlcnJuby5oIHByZXNlbmNlCmNvbmZp Z3VyZToyMjQ5OTogL2xpYi9jcHAgLUkvb3B0L2ludGVsL2NjZS8xMC4xLjAxNS9pbmNsdWRlLyBj b25mdGVzdC5jCmNvbmZpZ3VyZToyMjUwNTogJD8gPSAwCmNvbmZpZ3VyZToyMjUxOTogcmVzdWx0 OiB5ZXMKY29uZmlndXJlOjIyNTUyOiBjaGVja2luZyBmb3IgZXJybm8uaApjb25maWd1cmU6MjI1 NjA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjQzMzogY2hlY2tpbmcgZm9yIGludHR5cGVzLmgK Y29uZmlndXJlOjIyNDM5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjI0NDM6IGNoZWNraW5nIHN0 ZGFyZy5oIHVzYWJpbGl0eQpjb25maWd1cmU6MjI0NjA6IGljYyAtYyAtTzMgLW1wIC1JL29wdC9p bnRlbC9jY2UvMTAuMS4wMTUvaW5jbHVkZS8gY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjIyNDY2 OiAkPyA9IDAKY29uZmlndXJlOjIyNDgwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjI0ODQ6IGNo ZWNraW5nIHN0ZGFyZy5oIHByZXNlbmNlCmNvbmZpZ3VyZToyMjQ5OTogL2xpYi9jcHAgLUkvb3B0 L2ludGVsL2NjZS8xMC4xLjAxNS9pbmNsdWRlLyBjb25mdGVzdC5jCmNvbmZpZ3VyZToyMjUwNTog JD8gPSAwCmNvbmZpZ3VyZToyMjUxOTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIyNTUyOiBjaGVj a2luZyBmb3Igc3RkYXJnLmgKY29uZmlndXJlOjIyNTYwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6 MjI0MzM6IGNoZWNraW5nIGZvciBzdGRpbnQuaApjb25maWd1cmU6MjI0Mzk6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZToyMjQzMzogY2hlY2tpbmcgZm9yIHN0cmluZy5oCmNvbmZpZ3VyZToyMjQzOTog cmVzdWx0OiB5ZXMKY29uZmlndXJlOjIyNTgwOiBjaGVja2luZyB3aGV0aGVyIHNldGptcC5oIGlz IFBPU0lYLjEgY29tcGF0aWJsZQpjb25maWd1cmU6MjI2MDg6IGljYyAtYyAtTzMgLW1wIC1JL29w dC9pbnRlbC9jY2UvMTAuMS4wMTUvaW5jbHVkZS8gY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjIy NjE0OiAkPyA9IDAKY29uZmlndXJlOjIyNjI5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjI2MzE6 IGNoZWNraW5nIHdoZXRoZXIgc2lnc2V0am1wIGlzIGRlY2xhcmVkCmNvbmZpZ3VyZToyMjY2MTog aWNjIC1jIC1PMyAtbXAgLUkvb3B0L2ludGVsL2NjZS8xMC4xLjAxNS9pbmNsdWRlLyBjb25mdGVz dC5jID4mNQpjb25maWd1cmU6MjI2Njc6ICQ/ID0gMApjb25maWd1cmU6MjI2ODI6IHJlc3VsdDog eWVzCmNvbmZpZ3VyZToyMjY5ODogY2hlY2tpbmcgd2hldGhlciBzaWdsb25nam1wIGlzIGRlY2xh cmVkCmNvbmZpZ3VyZToyMjcyODogaWNjIC1jIC1PMyAtbXAgLUkvb3B0L2ludGVsL2NjZS8xMC4x LjAxNS9pbmNsdWRlLyBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjI3MzQ6ICQ/ID0gMApjb25m aWd1cmU6MjI3NDk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMjc4MTogY2hlY2tpbmcgZm9yIEdO VSBDIGxpYnJhcnkgd2l0aCB2ZXJzaW9uID49IDIKY29uZmlndXJlOjIyODA4OiByZXN1bHQ6IHll cwpjb25maWd1cmU6MjI4MjE6IGNoZWNraW5nIHJldHVybiB0eXBlIG9mIHNpZ25hbCBoYW5kbGVy cwpjb25maWd1cmU6MjI4NDk6IGljYyAtYyAtTzMgLW1wIC1JL29wdC9pbnRlbC9jY2UvMTAuMS4w MTUvaW5jbHVkZS8gY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYyg3OSk6IGVycm9yOiBvcGVyYW5k IG9mICIqIiBtdXN0IGJlIGEgcG9pbnRlcgogIHJldHVybiAqKHNpZ25hbCAoMCwgMCkpICgwKSA9 PSAxOwogICAgICAgICAgXgoKY29tcGlsYXRpb24gYWJvcnRlZCBmb3IgY29uZnRlc3QuYyAoY29k ZSAyKQpjb25maWd1cmU6MjI4NTU6ICQ/ID0gMgpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdh czoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiUiIKfCAjZGVm aW5lIFBBQ0tBR0VfVEFSTkFNRSAiUiIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMi43LjEi CnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiUiAyLjcuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVH UkVQT1JUICJyLWJ1Z3NAUi1wcm9qZWN0Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0UgIlIiCnwgI2Rl ZmluZSBWRVJTSU9OICIyLjcuMSIKfCAjZGVmaW5lIFJfUExBVEZPUk0gIng4Nl82NC11bmtub3du LWxpbnV4LWdudSIKfCAjZGVmaW5lIFJfQ1BVICJ4ODZfNjQiCnwgI2RlZmluZSBSX1ZFTkRPUiAi dW5rbm93biIKfCAjZGVmaW5lIFJfT1MgImxpbnV4LWdudSIKfCAjZGVmaW5lIFVuaXggMQp8ICNk ZWZpbmUgUl9BUkNIICIiCnwgI2RlZmluZSBIQVZFX1ZJU0lCSUxJVFlfQVRUUklCVVRFIDEKfCAj ZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBI QVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBI QVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9N RU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZ UEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9I IDEKfCAjZGVmaW5lIEhBVkVfRExGQ05fSCAxCnwgI2RlZmluZSBMVF9PQkpESVIgIi5saWJzLyIK fCAjZGVmaW5lIEhBVkVfTElCTSAxCnwgI2RlZmluZSBIQVZFX0xJQkRMIDEKfCAjZGVmaW5lIEhB VkVfUkVBRExJTkVfSElTVE9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTkVfUkVBRExJTkVf SCAxCnwgI2RlZmluZSBIQVZFX0xJQlJFQURMSU5FIDEKfCAjZGVmaW5lIEhBVkVfUkxfQ09NUExF VElPTl9NQVRDSEVTIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBUSU1FX1dJ VEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX0lORVRfSCAxCnwgI2RlZmluZSBIQVZFX0RM RkNOX0ggMQp8ICNkZWZpbmUgSEFWRV9FTEZfSCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMX0ggMQp8 ICNkZWZpbmUgSEFWRV9GUFVfQ09OVFJPTF9IIDEKfCAjZGVmaW5lIEhBVkVfR0xPQl9IIDEKfCAj ZGVmaW5lIEhBVkVfR1JQX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2RlZmluZSBI QVZFX0xPQ0FMRV9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUREJfSCAxCnwgI2RlZmluZSBIQVZFX05F VElORVRfSU5fSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfU1REQk9P TF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFN X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09D S0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JF U09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT X1RJTUVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVf VElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9FUlJOT19I IDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NUREFSR19IIDEK fCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2Rl ZmluZSBIQVZFX0RFQ0xfU0lHU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TSUdMT05HSk1Q IDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfR0xJQkMyIDEK fCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNpbmNs dWRlIDxzaWduYWwuaD4KfCAKfCBpbnQKfCBtYWluICgpCnwgewp8IHJldHVybiAqKHNpZ25hbCAo MCwgMCkpICgwKSA9PSAxOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MjI4NzA6 IHJlc3VsdDogdm9pZApjb25maWd1cmU6MjI4Nzg6IGNoZWNraW5nIGZvciBwaWRfdApjb25maWd1 cmU6MjI5MDg6IGljYyAtYyAtTzMgLW1wIC1JL29wdC9pbnRlbC9jY2UvMTAuMS4wMTUvaW5jbHVk ZS8gY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYygxMTEpOiB3YXJuaW5nICMyNzk6IGNvbnRyb2xs aW5nIGV4cHJlc3Npb24gaXMgY29uc3RhbnQKICBpZiAoKGFjX190eXBlX25ld18gKikgMCkKICAg ICAgXgoKY29uZmlndXJlOjIyOTE0OiAkPyA9IDAKY29uZmlndXJlOjIyOTI5OiByZXN1bHQ6IHll cwpjb25maWd1cmU6MjI5NDE6IGNoZWNraW5nIGZvciBzaXplX3QKY29uZmlndXJlOjIyOTcxOiBp Y2MgLWMgLU8zIC1tcCAtSS9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUvIGNvbmZ0ZXN0 LmMgPiY1CmNvbmZ0ZXN0LmMoMTExKTogd2FybmluZyAjMjc5OiBjb250cm9sbGluZyBleHByZXNz aW9uIGlzIGNvbnN0YW50CiAgaWYgKChhY19fdHlwZV9uZXdfICopIDApCiAgICAgIF4KCmNvbmZp Z3VyZToyMjk3NzogJD8gPSAwCmNvbmZpZ3VyZToyMjk5MjogcmVzdWx0OiB5ZXMKY29uZmlndXJl OjIzMDA0OiBjaGVja2luZyB3aGV0aGVyIFNJWkVfTUFYIGlzIGRlY2xhcmVkCmNvbmZpZ3VyZToy MzA0NzogaWNjIC1vIGNvbmZ0ZXN0IC1PMyAtbXAgLUkvb3B0L2ludGVsL2NjZS8xMC4xLjAxNS9p bmNsdWRlLyAtTC91c3IvbG9jYWwvbGliNjQgY29uZnRlc3QuYyAtbGRsIC1sbSAgPiY1Ci91c3Iv aW5jbHVkZS9saW1pdHMuaCgxMjUpOiBjYXRhc3Ryb3BoaWMgZXJyb3I6IGNvdWxkIG5vdCBvcGVu IHNvdXJjZSBmaWxlICJsaW1pdHMuaCIKICAjIGluY2x1ZGVfbmV4dCA8bGltaXRzLmg+CiAgICAg ICAgICAgICAgICAgICAgICAgICAgIF4KCmNvbXBpbGF0aW9uIGFib3J0ZWQgZm9yIGNvbmZ0ZXN0 LmMgKGNvZGUgNCkKY29uZmlndXJlOjIzMDUwOiAkPyA9IDQKY29uZmlndXJlOiBwcm9ncmFtIGV4 aXRlZCB3aXRoIHN0YXR1cyA0CmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNv bmZkZWZzLmguICAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJSIgp8ICNkZWZpbmUgUEFDS0FH RV9UQVJOQU1FICJSIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyLjcuMSIKfCAjZGVmaW5l IFBBQ0tBR0VfU1RSSU5HICJSIDIuNy4xIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgInIt YnVnc0BSLXByb2plY3Qub3JnIgp8ICNkZWZpbmUgUEFDS0FHRSAiUiIKfCAjZGVmaW5lIFZFUlNJ T04gIjIuNy4xIgp8ICNkZWZpbmUgUl9QTEFURk9STSAieDg2XzY0LXVua25vd24tbGludXgtZ251 Igp8ICNkZWZpbmUgUl9DUFUgIng4Nl82NCIKfCAjZGVmaW5lIFJfVkVORE9SICJ1bmtub3duIgp8 ICNkZWZpbmUgUl9PUyAibGludXgtZ251Igp8ICNkZWZpbmUgVW5peCAxCnwgI2RlZmluZSBSX0FS Q0ggIiIKfCAjZGVmaW5lIEhBVkVfVklTSUJJTElUWV9BVFRSSUJVVEUgMQp8ICNkZWZpbmUgX0dO VV9TT1VSQ0UgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZ UEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElC X0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEK fCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwg I2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZp bmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIExUX09CSkRJUiAiLmxpYnMvIgp8ICNkZWZpbmUg SEFWRV9MSUJNIDEKfCAjZGVmaW5lIEhBVkVfTElCREwgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElO RV9ISVNUT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9SRUFETElORV9SRUFETElORV9IIDEKfCAjZGVm aW5lIEhBVkVfTElCUkVBRExJTkUgMQp8ICNkZWZpbmUgSEFWRV9STF9DT01QTEVUSU9OX01BVENI RVMgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElN RSAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAx CnwgI2RlZmluZSBIQVZFX0FSUEFfSU5FVF9IIDEKfCAjZGVmaW5lIEhBVkVfRExGQ05fSCAxCnwg I2RlZmluZSBIQVZFX0VMRl9IIDEKfCAjZGVmaW5lIEhBVkVfRkNOVExfSCAxCnwgI2RlZmluZSBI QVZFX0ZQVV9DT05UUk9MX0ggMQp8ICNkZWZpbmUgSEFWRV9HTE9CX0ggMQp8ICNkZWZpbmUgSEFW RV9HUlBfSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxF X0ggMQp8ICNkZWZpbmUgSEFWRV9ORVREQl9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUSU5FVF9JTl9I IDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERCT09MX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAx CnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRVNfSCAx CnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9USU1FX0ggMQp8 ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0VSUk5PX0ggMQp8ICNkZWZp bmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1REQVJHX0ggMQp8ICNkZWZpbmUg SEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVf REVDTF9TSUdTRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NJR0xPTkdKTVAgMQp8ICNkZWZp bmUgSEFWRV9QT1NJWF9TRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9HTElCQzIgMQp8ICNkZWZpbmUg UkVUU0lHVFlQRSB2b2lkCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8IAp8ICNpbmNsdWRlIDxz dGRsaWIuaD4KfCAjaWZkZWYgSEFWRV9JTlRUWVBFU19ICnwgIyAgaW5jbHVkZSA8aW50dHlwZXMu aD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVERJTlRfSAp8ICMgIGluY2x1ZGUgPHN0ZGludC5o Pgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX0xJTUlUU19ICnwgIyAgaW5jbHVkZSA8bGltaXRzLmg+ CnwgI2VuZGlmCnwgCnwgaW50CnwgbWFpbigpIHsKfCAjaWZuZGVmIFNJWkVfTUFYCnwgICBjaGFy ICpwID0gKGNoYXIgKikgU0laRV9NQVg7CnwgI2VuZGlmCnwgCnwgICA7CnwgICByZXR1cm4gMDsK fCB9CnwgCmNvbmZpZ3VyZToyMzA3NTogcmVzdWx0OiBubwpjb25maWd1cmU6MjMwODU6IGNoZWNr aW5nIGZvciBibGtjbnRfdApjb25maWd1cmU6MjMxMTU6IGljYyAtYyAtTzMgLW1wIC1JL29wdC9p bnRlbC9jY2UvMTAuMS4wMTUvaW5jbHVkZS8gY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYygxMTEp OiB3YXJuaW5nICMyNzk6IGNvbnRyb2xsaW5nIGV4cHJlc3Npb24gaXMgY29uc3RhbnQKICBpZiAo KGFjX190eXBlX25ld18gKikgMCkKICAgICAgXgoKY29uZmlndXJlOjIzMTIxOiAkPyA9IDAKY29u ZmlndXJlOjIzMTM2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjMxNTA6IGNoZWNraW5nIGZvciB0 eXBlIG9mIHNvY2tldCBsZW5ndGgKY29uZmlndXJlOjIzMTg2OiBpY2MgLWMgLU8zIC1tcCAtSS9v cHQvaW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUvIGNvbmZ0ZXN0LmMgPiY1Ci91c3IvaW5jbHVk ZS9saW1pdHMuaCgxMjUpOiBjYXRhc3Ryb3BoaWMgZXJyb3I6IGNvdWxkIG5vdCBvcGVuIHNvdXJj ZSBmaWxlICJsaW1pdHMuaCIKICAjIGluY2x1ZGVfbmV4dCA8bGltaXRzLmg+CiAgICAgICAgICAg ICAgICAgICAgICAgICAgIF4KCmNvbXBpbGF0aW9uIGFib3J0ZWQgZm9yIGNvbmZ0ZXN0LmMgKGNv ZGUgNCkKY29uZmlndXJlOjIzMTkyOiAkPyA9IDQKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3 YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIlIiCnwgI2Rl ZmluZSBQQUNLQUdFX1RBUk5BTUUgIlIiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjIuNy4x Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIlIgMi43LjEiCnwgI2RlZmluZSBQQUNLQUdFX0JV R1JFUE9SVCAici1idWdzQFItcHJvamVjdC5vcmciCnwgI2RlZmluZSBQQUNLQUdFICJSIgp8ICNk ZWZpbmUgVkVSU0lPTiAiMi43LjEiCnwgI2RlZmluZSBSX1BMQVRGT1JNICJ4ODZfNjQtdW5rbm93 bi1saW51eC1nbnUiCnwgI2RlZmluZSBSX0NQVSAieDg2XzY0Igp8ICNkZWZpbmUgUl9WRU5ET1Ig InVua25vd24iCnwgI2RlZmluZSBSX09TICJsaW51eC1nbnUiCnwgI2RlZmluZSBVbml4IDEKfCAj ZGVmaW5lIFJfQVJDSCAiIgp8ICNkZWZpbmUgSEFWRV9WSVNJQklMSVRZX0FUVFJJQlVURSAxCnwg I2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUg SEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUg SEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVf TUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRU WVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERf SCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgTFRfT0JKRElSICIubGlicy8i CnwgI2RlZmluZSBIQVZFX0xJQk0gMQp8ICNkZWZpbmUgSEFWRV9MSUJETCAxCnwgI2RlZmluZSBI QVZFX1JFQURMSU5FX0hJU1RPUllfSCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5FX1JFQURMSU5F X0ggMQp8ICNkZWZpbmUgSEFWRV9MSUJSRUFETElORSAxCnwgI2RlZmluZSBIQVZFX1JMX0NPTVBM RVRJT05fTUFUQ0hFUyAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgVElNRV9X SVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9JTkVUX0ggMQp8ICNkZWZpbmUgSEFWRV9E TEZDTl9IIDEKfCAjZGVmaW5lIEhBVkVfRUxGX0ggMQp8ICNkZWZpbmUgSEFWRV9GQ05UTF9IIDEK fCAjZGVmaW5lIEhBVkVfRlBVX0NPTlRST0xfSCAxCnwgI2RlZmluZSBIQVZFX0dMT0JfSCAxCnwg I2RlZmluZSBIQVZFX0dSUF9IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUg SEFWRV9MT0NBTEVfSCAxCnwgI2RlZmluZSBIQVZFX05FVERCX0ggMQp8ICNkZWZpbmUgSEFWRV9O RVRJTkVUX0lOX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1NUREJP T0xfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJB TV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NP Q0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19S RVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19USU1FU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZF X1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRVJSTk9f SCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERBUkdfSCAx CnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX1NJR1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0lHTE9OR0pN UCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX0dMSUJDMiAx CnwgI2RlZmluZSBSRVRTSUdUWVBFIHZvaWQKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgCnwg I2luY2x1ZGUgPHN0ZGRlZi5oPgp8ICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAjaWZkZWYgSEFW RV9TWVNfU09DS0VUX0gKfCAjIGluY2x1ZGUgPHN5cy9zb2NrZXQuaD4KfCAjZW5kaWYKfCAjaWZk ZWYgV2luMzIKfCAjIGluY2x1ZGUgPHdpbnNvY2suaD4KfCAjZW5kaWYKfCAKfCBpbnQKfCBtYWlu ICgpCnwgewp8ICh2b2lkKWdldHNvY2tvcHQgKDEsIDEsIDEsIE5VTEwsIChzb2NrbGVuX3QgKilO VUxMKQp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MjMxODY6IGljYyAtYyAtTzMg LW1wIC1JL29wdC9pbnRlbC9jY2UvMTAuMS4wMTUvaW5jbHVkZS8gY29uZnRlc3QuYyA+JjUKL3Vz ci9pbmNsdWRlL2xpbWl0cy5oKDEyNSk6IGNhdGFzdHJvcGhpYyBlcnJvcjogY291bGQgbm90IG9w ZW4gc291cmNlIGZpbGUgImxpbWl0cy5oIgogICMgaW5jbHVkZV9uZXh0IDxsaW1pdHMuaD4KICAg ICAgICAgICAgICAgICAgICAgICAgICAgXgoKY29tcGlsYXRpb24gYWJvcnRlZCBmb3IgY29uZnRl c3QuYyAoY29kZSA0KQpjb25maWd1cmU6MjMxOTI6ICQ/ID0gNApjb25maWd1cmU6IGZhaWxlZCBw cm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAi UiIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiUiIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lP TiAiMi43LjEiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiUiAyLjcuMSIKfCAjZGVmaW5lIFBB Q0tBR0VfQlVHUkVQT1JUICJyLWJ1Z3NAUi1wcm9qZWN0Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0Ug IlIiCnwgI2RlZmluZSBWRVJTSU9OICIyLjcuMSIKfCAjZGVmaW5lIFJfUExBVEZPUk0gIng4Nl82 NC11bmtub3duLWxpbnV4LWdudSIKfCAjZGVmaW5lIFJfQ1BVICJ4ODZfNjQiCnwgI2RlZmluZSBS X1ZFTkRPUiAidW5rbm93biIKfCAjZGVmaW5lIFJfT1MgImxpbnV4LWdudSIKfCAjZGVmaW5lIFVu aXggMQp8ICNkZWZpbmUgUl9BUkNIICIiCnwgI2RlZmluZSBIQVZFX1ZJU0lCSUxJVFlfQVRUUklC VVRFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwg I2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwg I2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZp bmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBI QVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZF X1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRExGQ05fSCAxCnwgI2RlZmluZSBMVF9PQkpESVIg Ii5saWJzLyIKfCAjZGVmaW5lIEhBVkVfTElCTSAxCnwgI2RlZmluZSBIQVZFX0xJQkRMIDEKfCAj ZGVmaW5lIEhBVkVfUkVBRExJTkVfSElTVE9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTkVf UkVBRExJTkVfSCAxCnwgI2RlZmluZSBIQVZFX0xJQlJFQURMSU5FIDEKfCAjZGVmaW5lIEhBVkVf UkxfQ09NUExFVElPTl9NQVRDSEVTIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmlu ZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX0lORVRfSCAxCnwgI2RlZmlu ZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgSEFWRV9FTEZfSCAxCnwgI2RlZmluZSBIQVZFX0ZD TlRMX0ggMQp8ICNkZWZpbmUgSEFWRV9GUFVfQ09OVFJPTF9IIDEKfCAjZGVmaW5lIEhBVkVfR0xP Ql9IIDEKfCAjZGVmaW5lIEhBVkVfR1JQX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwg I2RlZmluZSBIQVZFX0xPQ0FMRV9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUREJfSCAxCnwgI2RlZmlu ZSBIQVZFX05FVElORVRfSU5fSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhB VkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVf U1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFW RV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1RJTUVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVm aW5lIEhBVkVfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFW RV9FUlJOT19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NU REFSR19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdf SCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0lHU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9T SUdMT05HSk1QIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVf R0xJQkMyIDEKfCAjZGVmaW5lIFJFVFNJR1RZUEUgdm9pZAp8IC8qIGVuZCBjb25mZGVmcy5oLiAg Ki8KfCAKfCAjaW5jbHVkZSA8c3RkZGVmLmg+CnwgI2luY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNp ZmRlZiBIQVZFX1NZU19TT0NLRVRfSAp8ICMgaW5jbHVkZSA8c3lzL3NvY2tldC5oPgp8ICNlbmRp Zgp8ICNpZmRlZiBXaW4zMgp8ICMgaW5jbHVkZSA8d2luc29jay5oPgp8ICNlbmRpZgp8IAp8IGlu dAp8IG1haW4gKCkKfCB7CnwgKHZvaWQpZ2V0c29ja29wdCAoMSwgMSwgMSwgTlVMTCwgKHNpemVf dCAqKU5VTEwpCnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToyMzE4NjogaWNjIC1j IC1PMyAtbXAgLUkvb3B0L2ludGVsL2NjZS8xMC4xLjAxNS9pbmNsdWRlLyBjb25mdGVzdC5jID4m NQovdXNyL2luY2x1ZGUvbGltaXRzLmgoMTI1KTogY2F0YXN0cm9waGljIGVycm9yOiBjb3VsZCBu b3Qgb3BlbiBzb3VyY2UgZmlsZSAibGltaXRzLmgiCiAgIyBpbmNsdWRlX25leHQgPGxpbWl0cy5o PgogICAgICAgICAgICAgICAgICAgICAgICAgICBeCgpjb21waWxhdGlvbiBhYm9ydGVkIGZvciBj b25mdGVzdC5jIChjb2RlIDQpCmNvbmZpZ3VyZToyMzE5MjogJD8gPSA0CmNvbmZpZ3VyZTogZmFp bGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8ICNkZWZpbmUgUEFDS0FHRV9O QU1FICJSIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJSIgp8ICNkZWZpbmUgUEFDS0FHRV9W RVJTSU9OICIyLjcuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJSIDIuNy4xIgp8ICNkZWZp bmUgUEFDS0FHRV9CVUdSRVBPUlQgInItYnVnc0BSLXByb2plY3Qub3JnIgp8ICNkZWZpbmUgUEFD S0FHRSAiUiIKfCAjZGVmaW5lIFZFUlNJT04gIjIuNy4xIgp8ICNkZWZpbmUgUl9QTEFURk9STSAi eDg2XzY0LXVua25vd24tbGludXgtZ251Igp8ICNkZWZpbmUgUl9DUFUgIng4Nl82NCIKfCAjZGVm aW5lIFJfVkVORE9SICJ1bmtub3duIgp8ICNkZWZpbmUgUl9PUyAibGludXgtZ251Igp8ICNkZWZp bmUgVW5peCAxCnwgI2RlZmluZSBSX0FSQ0ggIiIKfCAjZGVmaW5lIEhBVkVfVklTSUJJTElUWV9B VFRSSUJVVEUgMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJT IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9I IDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwg I2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVm aW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5l IEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIExUX09C SkRJUiAiLmxpYnMvIgp8ICNkZWZpbmUgSEFWRV9MSUJNIDEKfCAjZGVmaW5lIEhBVkVfTElCREwg MQp8ICNkZWZpbmUgSEFWRV9SRUFETElORV9ISVNUT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9SRUFE TElORV9SRUFETElORV9IIDEKfCAjZGVmaW5lIEhBVkVfTElCUkVBRExJTkUgMQp8ICNkZWZpbmUg SEFWRV9STF9DT01QTEVUSU9OX01BVENIRVMgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAj ZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX0FSUEFfSU5FVF9IIDEKfCAj ZGVmaW5lIEhBVkVfRExGQ05fSCAxCnwgI2RlZmluZSBIQVZFX0VMRl9IIDEKfCAjZGVmaW5lIEhB VkVfRkNOVExfSCAxCnwgI2RlZmluZSBIQVZFX0ZQVV9DT05UUk9MX0ggMQp8ICNkZWZpbmUgSEFW RV9HTE9CX0ggMQp8ICNkZWZpbmUgSEFWRV9HUlBfSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19I IDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVREQl9IIDEKfCAj ZGVmaW5lIEhBVkVfTkVUSU5FVF9JTl9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZp bmUgSEFWRV9TVERCT09MX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZp bmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfVElNRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8 ICNkZWZpbmUgSEFWRV9USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmlu ZSBIQVZFX0VSUk5PX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhB VkVfU1REQVJHX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1NU UklOR19IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TSUdTRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9E RUNMX1NJR0xPTkdKTVAgMQp8ICNkZWZpbmUgSEFWRV9QT1NJWF9TRVRKTVAgMQp8ICNkZWZpbmUg SEFWRV9HTElCQzIgMQp8ICNkZWZpbmUgUkVUU0lHVFlQRSB2b2lkCnwgLyogZW5kIGNvbmZkZWZz LmguICAqLwp8IAp8ICNpbmNsdWRlIDxzdGRkZWYuaD4KfCAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+ CnwgI2lmZGVmIEhBVkVfU1lTX1NPQ0tFVF9ICnwgIyBpbmNsdWRlIDxzeXMvc29ja2V0Lmg+Cnwg I2VuZGlmCnwgI2lmZGVmIFdpbjMyCnwgIyBpbmNsdWRlIDx3aW5zb2NrLmg+CnwgI2VuZGlmCnwg CnwgaW50CnwgbWFpbiAoKQp8IHsKfCAodm9pZClnZXRzb2Nrb3B0ICgxLCAxLCAxLCBOVUxMLCAo aW50ICopTlVMTCkKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjIzMjE2OiBXQVJO SU5HOiBjb3VsZCBub3QgZGV0ZXJtaW5lIHR5cGUgb2Ygc29ja2V0IGxlbmd0aApjb25maWd1cmU6 MjMyMjg6IGNoZWNraW5nIGZvciBzdGFja190CmNvbmZpZ3VyZToyMzI1OTogaWNjIC1jIC1PMyAt bXAgLUkvb3B0L2ludGVsL2NjZS8xMC4xLjAxNS9pbmNsdWRlLyBjb25mdGVzdC5jID4mNQpjb25m dGVzdC5jKDgxKTogd2FybmluZyAjMjc5OiBjb250cm9sbGluZyBleHByZXNzaW9uIGlzIGNvbnN0 YW50CiAgaWYgKChhY19fdHlwZV9uZXdfICopIDApCiAgICAgIF4KCmNvbmZpZ3VyZToyMzI2NTog JD8gPSAwCmNvbmZpZ3VyZToyMzI4MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIzMjk2OiBjaGVj a2luZyBmb3IgaW50cHRyX3QKY29uZmlndXJlOjIzMzMyOiBpY2MgLWMgLU8zIC1tcCAtSS9vcHQv aW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUvIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmMoODcp OiB3YXJuaW5nICMyNzk6IGNvbnRyb2xsaW5nIGV4cHJlc3Npb24gaXMgY29uc3RhbnQKICBpZiAo KGFjX190eXBlX25ld18gKikgMCkKICAgICAgXgoKY29uZmlndXJlOjIzMzM4OiAkPyA9IDAKY29u ZmlndXJlOjIzMzUzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjMzNjM6IGNoZWNraW5nIGZvciB1 aW50cHRyX3QKY29uZmlndXJlOjIzMzk5OiBpY2MgLWMgLU8zIC1tcCAtSS9vcHQvaW50ZWwvY2Nl LzEwLjEuMDE1L2luY2x1ZGUvIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmMoODgpOiB3YXJuaW5n ICMyNzk6IGNvbnRyb2xsaW5nIGV4cHJlc3Npb24gaXMgY29uc3RhbnQKICBpZiAoKGFjX190eXBl X25ld18gKikgMCkKICAgICAgXgoKY29uZmlndXJlOjIzNDA1OiAkPyA9IDAKY29uZmlndXJlOjIz NDIwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjM0Mzg6IGNoZWNraW5nIHdoZXRoZXIgYnl0ZSBv cmRlcmluZyBpcyBiaWdlbmRpYW4KY29uZmlndXJlOjIzNDcxOiBpY2MgLWMgLU8zIC1tcCAtSS9v cHQvaW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUvIGNvbmZ0ZXN0LmMgPiY1Ci91c3IvaW5jbHVk ZS9saW1pdHMuaCgxMjUpOiBjYXRhc3Ryb3BoaWMgZXJyb3I6IGNvdWxkIG5vdCBvcGVuIHNvdXJj ZSBmaWxlICJsaW1pdHMuaCIKICAjIGluY2x1ZGVfbmV4dCA8bGltaXRzLmg+CiAgICAgICAgICAg ICAgICAgICAgICAgICAgIF4KCmNvbXBpbGF0aW9uIGFib3J0ZWQgZm9yIGNvbmZ0ZXN0LmMgKGNv ZGUgNCkKY29uZmlndXJlOjIzNDc3OiAkPyA9IDQKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3 YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIlIiCnwgI2Rl ZmluZSBQQUNLQUdFX1RBUk5BTUUgIlIiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjIuNy4x Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIlIgMi43LjEiCnwgI2RlZmluZSBQQUNLQUdFX0JV R1JFUE9SVCAici1idWdzQFItcHJvamVjdC5vcmciCnwgI2RlZmluZSBQQUNLQUdFICJSIgp8ICNk ZWZpbmUgVkVSU0lPTiAiMi43LjEiCnwgI2RlZmluZSBSX1BMQVRGT1JNICJ4ODZfNjQtdW5rbm93 bi1saW51eC1nbnUiCnwgI2RlZmluZSBSX0NQVSAieDg2XzY0Igp8ICNkZWZpbmUgUl9WRU5ET1Ig InVua25vd24iCnwgI2RlZmluZSBSX09TICJsaW51eC1nbnUiCnwgI2RlZmluZSBVbml4IDEKfCAj ZGVmaW5lIFJfQVJDSCAiIgp8ICNkZWZpbmUgSEFWRV9WSVNJQklMSVRZX0FUVFJJQlVURSAxCnwg I2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUg SEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUg SEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVf TUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRU WVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERf SCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgTFRfT0JKRElSICIubGlicy8i CnwgI2RlZmluZSBIQVZFX0xJQk0gMQp8ICNkZWZpbmUgSEFWRV9MSUJETCAxCnwgI2RlZmluZSBI QVZFX1JFQURMSU5FX0hJU1RPUllfSCAxCnwgI2RlZmluZSBIQVZFX1JFQURMSU5FX1JFQURMSU5F X0ggMQp8ICNkZWZpbmUgSEFWRV9MSUJSRUFETElORSAxCnwgI2RlZmluZSBIQVZFX1JMX0NPTVBM RVRJT05fTUFUQ0hFUyAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgVElNRV9X SVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9JTkVUX0ggMQp8ICNkZWZpbmUgSEFWRV9E TEZDTl9IIDEKfCAjZGVmaW5lIEhBVkVfRUxGX0ggMQp8ICNkZWZpbmUgSEFWRV9GQ05UTF9IIDEK fCAjZGVmaW5lIEhBVkVfRlBVX0NPTlRST0xfSCAxCnwgI2RlZmluZSBIQVZFX0dMT0JfSCAxCnwg I2RlZmluZSBIQVZFX0dSUF9IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUg SEFWRV9MT0NBTEVfSCAxCnwgI2RlZmluZSBIQVZFX05FVERCX0ggMQp8ICNkZWZpbmUgSEFWRV9O RVRJTkVUX0lOX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1NUREJP T0xfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJB TV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NP Q0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19S RVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19USU1FU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwgI2RlZmluZSBIQVZF X1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRVJSTk9f SCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERBUkdfSCAx CnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNk ZWZpbmUgSEFWRV9ERUNMX1NJR1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0lHTE9OR0pN UCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX0dMSUJDMiAx CnwgI2RlZmluZSBSRVRTSUdUWVBFIHZvaWQKfCAjZGVmaW5lIFJfU09DS0xFTl9UIAp8ICNkZWZp bmUgSEFWRV9TVEFDS19UIDEKfCAjZGVmaW5lIEhBVkVfSU5UUFRSX1QgMQp8ICNkZWZpbmUgSEFW RV9VSU5UUFRSX1QgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8c3lzL3R5 cGVzLmg+CnwgI2luY2x1ZGUgPHN5cy9wYXJhbS5oPgp8IAp8IGludAp8IG1haW4gKCkKfCB7Cnwg I2lmICAhIChkZWZpbmVkIEJZVEVfT1JERVIgJiYgZGVmaW5lZCBCSUdfRU5ESUFOICYmIGRlZmlu ZWQgTElUVExFX0VORElBTiAJJiYgQllURV9PUkRFUiAmJiBCSUdfRU5ESUFOICYmIExJVFRMRV9F TkRJQU4pCnwgIGJvZ3VzIGVuZGlhbiBtYWNyb3MKfCAjZW5kaWYKfCAKfCAgIDsKfCAgIHJldHVy biAwOwp8IH0KY29uZmlndXJlOjIzNjI0OiBpY2MgLW8gY29uZnRlc3QgLU8zIC1tcCAtSS9vcHQv aW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUvIC1ML3Vzci9sb2NhbC9saWI2NCBjb25mdGVzdC5j IC1sZGwgLWxtICA+JjUKY29uZmlndXJlOjIzNjI3OiAkPyA9IDAKY29uZmlndXJlOjIzNjMzOiAu L2NvbmZ0ZXN0Ci4vY29uZnRlc3Q6IGVycm9yIHdoaWxlIGxvYWRpbmcgc2hhcmVkIGxpYnJhcmll czogbGliaW1mLnNvOiBjYW5ub3Qgb3BlbiBzaGFyZWQgb2JqZWN0IGZpbGU6IE5vIHN1Y2ggZmls ZSBvciBkaXJlY3RvcnkKY29uZmlndXJlOjIzNjM2OiAkPyA9IDEyNwpjb25maWd1cmU6IHByb2dy YW0gZXhpdGVkIHdpdGggc3RhdHVzIDEyNwpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoK fCAvKiBjb25mZGVmcy5oLiAgKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiUiIKfCAjZGVmaW5l IFBBQ0tBR0VfVEFSTkFNRSAiUiIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMi43LjEiCnwg I2RlZmluZSBQQUNLQUdFX1NUUklORyAiUiAyLjcuMSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQ T1JUICJyLWJ1Z3NAUi1wcm9qZWN0Lm9yZyIKfCAjZGVmaW5lIFBBQ0tBR0UgIlIiCnwgI2RlZmlu ZSBWRVJTSU9OICIyLjcuMSIKfCAjZGVmaW5lIFJfUExBVEZPUk0gIng4Nl82NC11bmtub3duLWxp bnV4LWdudSIKfCAjZGVmaW5lIFJfQ1BVICJ4ODZfNjQiCnwgI2RlZmluZSBSX1ZFTkRPUiAidW5r bm93biIKfCAjZGVmaW5lIFJfT1MgImxpbnV4LWdudSIKfCAjZGVmaW5lIFVuaXggMQp8ICNkZWZp bmUgUl9BUkNIICIiCnwgI2RlZmluZSBIQVZFX1ZJU0lCSUxJVFlfQVRUUklCVVRFIDEKfCAjZGVm aW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZF X1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZF X1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1P UllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVT X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEK fCAjZGVmaW5lIEhBVkVfRExGQ05fSCAxCnwgI2RlZmluZSBMVF9PQkpESVIgIi5saWJzLyIKfCAj ZGVmaW5lIEhBVkVfTElCTSAxCnwgI2RlZmluZSBIQVZFX0xJQkRMIDEKfCAjZGVmaW5lIEhBVkVf UkVBRExJTkVfSElTVE9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTkVfUkVBRExJTkVfSCAx CnwgI2RlZmluZSBIQVZFX0xJQlJFQURMSU5FIDEKfCAjZGVmaW5lIEhBVkVfUkxfQ09NUExFVElP Tl9NQVRDSEVTIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBUSU1FX1dJVEhf U1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19X QUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX0lORVRfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNO X0ggMQp8ICNkZWZpbmUgSEFWRV9FTEZfSCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMX0ggMQp8ICNk ZWZpbmUgSEFWRV9GUFVfQ09OVFJPTF9IIDEKfCAjZGVmaW5lIEhBVkVfR0xPQl9IIDEKfCAjZGVm aW5lIEhBVkVfR1JQX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2RlZmluZSBIQVZF X0xPQ0FMRV9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUREJfSCAxCnwgI2RlZmluZSBIQVZFX05FVElO RVRfSU5fSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfU1REQk9PTF9I IDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0gg MQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VU X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09V UkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJ TUVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9IIDEKfCAjZGVmaW5lIEhBVkVfVElN RV9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9FUlJOT19IIDEK fCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NUREFSR19IIDEKfCAj ZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfU0lHU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TSUdMT05HSk1QIDEK fCAjZGVmaW5lIEhBVkVfUE9TSVhfU0VUSk1QIDEKfCAjZGVmaW5lIEhBVkVfR0xJQkMyIDEKfCAj ZGVmaW5lIFJFVFNJR1RZUEUgdm9pZAp8ICNkZWZpbmUgUl9TT0NLTEVOX1QgCnwgI2RlZmluZSBI QVZFX1NUQUNLX1QgMQp8ICNkZWZpbmUgSEFWRV9JTlRQVFJfVCAxCnwgI2RlZmluZSBIQVZFX1VJ TlRQVFJfVCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxzdGRpby5oPgp8 ICNpZmRlZiBIQVZFX1NZU19UWVBFU19ICnwgIyBpbmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAjZW5k aWYKfCAjaWZkZWYgSEFWRV9TWVNfU1RBVF9ICnwgIyBpbmNsdWRlIDxzeXMvc3RhdC5oPgp8ICNl bmRpZgp8ICNpZmRlZiBTVERDX0hFQURFUlMKfCAjIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgaW5j bHVkZSA8c3RkZGVmLmg+CnwgI2Vsc2UKfCAjIGlmZGVmIEhBVkVfU1RETElCX0gKfCAjICBpbmNs dWRlIDxzdGRsaWIuaD4KfCAjIGVuZGlmCnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RSSU5HX0gK fCAjIGlmICFkZWZpbmVkIFNURENfSEVBREVSUyAmJiBkZWZpbmVkIEhBVkVfTUVNT1JZX0gKfCAj ICBpbmNsdWRlIDxtZW1vcnkuaD4KfCAjIGVuZGlmCnwgIyBpbmNsdWRlIDxzdHJpbmcuaD4KfCAj ZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdTX0gKfCAjIGluY2x1ZGUgPHN0cmluZ3MuaD4KfCAj ZW5kaWYKfCAjaWZkZWYgSEFWRV9JTlRUWVBFU19ICnwgIyBpbmNsdWRlIDxpbnR0eXBlcy5oPgp8 ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NURElOVF9ICnwgIyBpbmNsdWRlIDxzdGRpbnQuaD4KfCAj ZW5kaWYKfCAjaWZkZWYgSEFWRV9VTklTVERfSAp8ICMgaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2Vu ZGlmCnwgaW50CnwgbWFpbiAoKQp8IHsKfCAKfCAgIC8qIEFyZSB3ZSBsaXR0bGUgb3IgYmlnIGVu ZGlhbj8gIEZyb20gSGFyYmlzb24mU3RlZWxlLiAgKi8KfCAgIHVuaW9uCnwgICB7CnwgICAgIGxv bmcgaW50IGw7CnwgICAgIGNoYXIgY1tzaXplb2YgKGxvbmcgaW50KV07CnwgICB9IHU7CnwgICB1 LmwgPSAxOwp8ICAgcmV0dXJuIHUuY1tzaXplb2YgKGxvbmcgaW50KSAtIDFdID09IDE7CnwgCnwg ICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToyMzY1NTogcmVzdWx0OiB5ZXMKY29uZmln dXJlOjIzNjc0OiBjaGVja2luZyBmb3IgYW4gQU5TSSBDLWNvbmZvcm1pbmcgY29uc3QKY29uZmln dXJlOjIzNzQ5OiBpY2MgLWMgLU8zIC1tcCAtSS9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1 ZGUvIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmMoMTA4KTogd2FybmluZyAjNTkyOiB2YXJpYWJs ZSAidCIgaXMgdXNlZCBiZWZvcmUgaXRzIHZhbHVlIGlzIHNldAogICAgICAqdCsrID0gMDsKICAg ICAgIF4KCmNvbmZ0ZXN0LmMoMTI0KTogd2FybmluZyAjNTkyOiB2YXJpYWJsZSAiYiIgaXMgdXNl ZCBiZWZvcmUgaXRzIHZhbHVlIGlzIHNldAogICAgICBzdHJ1Y3QgcyAqYjsgYi0+aiA9IDU7CiAg ICAgICAgICAgICAgICAgICBeCgpjb25mdGVzdC5jKDEzMCk6IHdhcm5pbmcgIzU5MjogdmFyaWFi bGUgImNzIiBpcyB1c2VkIGJlZm9yZSBpdHMgdmFsdWUgaXMgc2V0CiAgICByZXR1cm4gIWNzWzBd ICYmICF6ZXJvLng7CiAgICAgICAgICAgIF4KCmNvbmZpZ3VyZToyMzc1NTogJD8gPSAwCmNvbmZp Z3VyZToyMzc3MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIzNzgyOiBjaGVja2luZyBmb3IgaWNj IG9wdGlvbiB0byBhY2NlcHQgSVNPIEM5OQpjb25maWd1cmU6MjM5NDE6IGljYyAgLWMgLU8zIC1t cCAtSS9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUvIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0 ZXN0LmMoMTI5KTogZXJyb3I6IGV4cGVjdGVkIGEgIikiCiAgdGVzdF9yZXN0cmljdCAoY2NwIHJl c3RyaWN0IHRleHQpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KCmNvbmZ0ZXN0LmMo MTM0KTogZXJyb3I6IGlkZW50aWZpZXIgInRleHQiIGlzIHVuZGVmaW5lZAogICAgZm9yICh1bnNp Z25lZCBpbnQgaSA9IDA7ICoodGV4dCtpKSAhPSAnXDAnOyArK2kpCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBeCgpjb25mdGVzdC5jKDE4Myk6IGVycm9yOiBleHBlY3RlZCBhICI7Igog ICAgY2hhciAqcmVzdHJpY3QgbmV3dmFyID0gIkFub3RoZXIgc3RyaW5nIjsKICAgICAgICAgICAg ICAgICAgIF4KCmNvbmZ0ZXN0LmMoMjA5KTogZXJyb3I6IGlkZW50aWZpZXIgIm5ld3ZhciIgaXMg dW5kZWZpbmVkCiAgICByZXR1cm4gKCFzdWNjZXNzIHx8IGJpZ251bSA9PSAwTEwgfHwgdWJpZ251 bSA9PSAwdUxMIHx8IG5ld3ZhclswXSA9PSAneCcKICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgoKY29tcGlsYXRpb24gYWJvcnRlZCBm b3IgY29uZnRlc3QuYyAoY29kZSAyKQpjb25maWd1cmU6MjM5NDc6ICQ/ID0gMgpjb25maWd1cmU6 IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAjZGVmaW5lIFBBQ0tB R0VfTkFNRSAiUiIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiUiIKfCAjZGVmaW5lIFBBQ0tB R0VfVkVSU0lPTiAiMi43LjEiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiUiAyLjcuMSIKfCAj ZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJyLWJ1Z3NAUi1wcm9qZWN0Lm9yZyIKfCAjZGVmaW5l IFBBQ0tBR0UgIlIiCnwgI2RlZmluZSBWRVJTSU9OICIyLjcuMSIKfCAjZGVmaW5lIFJfUExBVEZP Uk0gIng4Nl82NC11bmtub3duLWxpbnV4LWdudSIKfCAjZGVmaW5lIFJfQ1BVICJ4ODZfNjQiCnwg I2RlZmluZSBSX1ZFTkRPUiAidW5rbm93biIKfCAjZGVmaW5lIFJfT1MgImxpbnV4LWdudSIKfCAj ZGVmaW5lIFVuaXggMQp8ICNkZWZpbmUgUl9BUkNIICIiCnwgI2RlZmluZSBIQVZFX1ZJU0lCSUxJ VFlfQVRUUklCVVRFIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIFNURENfSEVB REVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NU QVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0gg MQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwg I2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2Rl ZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRExGQ05fSCAxCnwgI2RlZmluZSBM VF9PQkpESVIgIi5saWJzLyIKfCAjZGVmaW5lIEhBVkVfTElCTSAxCnwgI2RlZmluZSBIQVZFX0xJ QkRMIDEKfCAjZGVmaW5lIEhBVkVfUkVBRExJTkVfSElTVE9SWV9IIDEKfCAjZGVmaW5lIEhBVkVf UkVBRExJTkVfUkVBRExJTkVfSCAxCnwgI2RlZmluZSBIQVZFX0xJQlJFQURMSU5FIDEKfCAjZGVm aW5lIEhBVkVfUkxfQ09NUExFVElPTl9NQVRDSEVTIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAx CnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAx CnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX0lORVRfSCAx CnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgSEFWRV9FTEZfSCAxCnwgI2RlZmlu ZSBIQVZFX0ZDTlRMX0ggMQp8ICNkZWZpbmUgSEFWRV9GUFVfQ09OVFJPTF9IIDEKfCAjZGVmaW5l IEhBVkVfR0xPQl9IIDEKfCAjZGVmaW5lIEhBVkVfR1JQX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1J VFNfSCAxCnwgI2RlZmluZSBIQVZFX0xPQ0FMRV9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUREJfSCAx CnwgI2RlZmluZSBIQVZFX05FVElORVRfSU5fSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAj ZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAj ZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEK fCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9I IDEKfCAjZGVmaW5lIEhBVkVfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNk ZWZpbmUgSEFWRV9FUlJOT19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmlu ZSBIQVZFX1NUREFSR19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFW RV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfU0lHU0VUSk1QIDEKfCAjZGVmaW5lIEhB VkVfREVDTF9TSUdMT05HSk1QIDEKfCAjZGVmaW5lIEhBVkVfUE9TSVhfU0VUSk1QIDEKfCAjZGVm aW5lIEhBVkVfR0xJQkMyIDEKfCAjZGVmaW5lIFJFVFNJR1RZUEUgdm9pZAp8ICNkZWZpbmUgUl9T T0NLTEVOX1QgCnwgI2RlZmluZSBIQVZFX1NUQUNLX1QgMQp8ICNkZWZpbmUgSEFWRV9JTlRQVFJf VCAxCnwgI2RlZmluZSBIQVZFX1VJTlRQVFJfVCAxCnwgI2RlZmluZSBXT1JEU19CSUdFTkRJQU4g MQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8c3RkYXJnLmg+CnwgI2luY2x1 ZGUgPHN0ZGJvb2wuaD4KfCAjaW5jbHVkZSA8c3RkbGliLmg+CnwgI2luY2x1ZGUgPHdjaGFyLmg+ CnwgI2luY2x1ZGUgPHN0ZGlvLmg+CnwgCnwgLy8gQ2hlY2sgdmFyYXJncyBtYWNyb3MuICBUaGVz ZSBleGFtcGxlcyBhcmUgdGFrZW4gZnJvbSBDOTkgNi4xMC4zLjUuCnwgI2RlZmluZSBkZWJ1Zygu Li4pIGZwcmludGYgKHN0ZGVyciwgX19WQV9BUkdTX18pCnwgI2RlZmluZSBzaG93bGlzdCguLi4p IHB1dHMgKCNfX1ZBX0FSR1NfXykKfCAjZGVmaW5lIHJlcG9ydCh0ZXN0LC4uLikgKCh0ZXN0KSA/ IHB1dHMgKCN0ZXN0KSA6IHByaW50ZiAoX19WQV9BUkdTX18pKQp8IHN0YXRpYyB2b2lkCnwgdGVz dF92YXJhcmdzX21hY3JvcyAodm9pZCkKfCB7CnwgICBpbnQgeCA9IDEyMzQ7CnwgICBpbnQgeSA9 IDU2Nzg7CnwgICBkZWJ1ZyAoIkZsYWciKTsKfCAgIGRlYnVnICgiWCA9ICVkXG4iLCB4KTsKfCAg IHNob3dsaXN0IChUaGUgZmlyc3QsIHNlY29uZCwgYW5kIHRoaXJkIGl0ZW1zLik7CnwgICByZXBv cnQgKHg+eSwgInggaXMgJWQgYnV0IHkgaXMgJWQiLCB4LCB5KTsKfCB9CnwgCnwgLy8gQ2hlY2sg bG9uZyBsb25nIHR5cGVzLgp8ICNkZWZpbmUgQklHNjQgMTg0NDY3NDQwNzM3MDk1NTE2MTV1bGwK fCAjZGVmaW5lIEJJRzMyIDQyOTQ5NjcyOTV1bAp8ICNkZWZpbmUgQklHX09LIChCSUc2NCAvIEJJ RzMyID09IDQyOTQ5NjcyOTd1bGwgJiYgQklHNjQgJSBCSUczMiA9PSAwKQp8ICNpZiAhQklHX09L CnwgICB5b3VyIHByZXByb2Nlc3NvciBpcyBicm9rZW47CnwgI2VuZGlmCnwgI2lmIEJJR19PSwp8 ICNlbHNlCnwgICB5b3VyIHByZXByb2Nlc3NvciBpcyBicm9rZW47CnwgI2VuZGlmCnwgc3RhdGlj IGxvbmcgbG9uZyBpbnQgYmlnbnVtID0gLTkyMjMzNzIwMzY4NTQ3NzU4MDdMTDsKfCBzdGF0aWMg dW5zaWduZWQgbG9uZyBsb25nIGludCB1YmlnbnVtID0gQklHNjQ7CnwgCnwgc3RydWN0IGluY29t cGxldGVfYXJyYXkKfCB7CnwgICBpbnQgZGF0YXNpemU7CnwgICBkb3VibGUgZGF0YVtdOwp8IH07 CnwgCnwgc3RydWN0IG5hbWVkX2luaXQgewp8ICAgaW50IG51bWJlcjsKfCAgIGNvbnN0IHdjaGFy X3QgKm5hbWU7CnwgICBkb3VibGUgYXZlcmFnZTsKfCB9Owp8IAp8IHR5cGVkZWYgY29uc3QgY2hh ciAqY2NwOwp8IAp8IHN0YXRpYyBpbmxpbmUgaW50CnwgdGVzdF9yZXN0cmljdCAoY2NwIHJlc3Ry aWN0IHRleHQpCnwgewp8ICAgLy8gU2VlIGlmIEMrKy1zdHlsZSBjb21tZW50cyB3b3JrLgp8ICAg Ly8gSXRlcmF0ZSB0aHJvdWdoIGl0ZW1zIHZpYSB0aGUgcmVzdHJpY3RlZCBwb2ludGVyLgp8ICAg Ly8gQWxzbyBjaGVjayBmb3IgZGVjbGFyYXRpb25zIGluIGZvciBsb29wcy4KfCAgIGZvciAodW5z aWduZWQgaW50IGkgPSAwOyAqKHRleHQraSkgIT0gJ1wwJzsgKytpKQp8ICAgICBjb250aW51ZTsK fCAgIHJldHVybiAwOwp8IH0KfCAKfCAvLyBDaGVjayB2YXJhcmdzIGFuZCB2YV9jb3B5Lgp8IHN0 YXRpYyB2b2lkCnwgdGVzdF92YXJhcmdzIChjb25zdCBjaGFyICpmb3JtYXQsIC4uLikKfCB7Cnwg ICB2YV9saXN0IGFyZ3M7CnwgICB2YV9zdGFydCAoYXJncywgZm9ybWF0KTsKfCAgIHZhX2xpc3Qg YXJnc19jb3B5Owp8ICAgdmFfY29weSAoYXJnc19jb3B5LCBhcmdzKTsKfCAKfCAgIGNvbnN0IGNo YXIgKnN0cjsKfCAgIGludCBudW1iZXI7CnwgICBmbG9hdCBmbnVtYmVyOwp8IAp8ICAgd2hpbGUg KCpmb3JtYXQpCnwgICAgIHsKfCAgICAgICBzd2l0Y2ggKCpmb3JtYXQrKykKfCAJewp8IAljYXNl ICdzJzogLy8gc3RyaW5nCnwgCSAgc3RyID0gdmFfYXJnIChhcmdzX2NvcHksIGNvbnN0IGNoYXIg Kik7CnwgCSAgYnJlYWs7CnwgCWNhc2UgJ2QnOiAvLyBpbnQKfCAJICBudW1iZXIgPSB2YV9hcmcg KGFyZ3NfY29weSwgaW50KTsKfCAJICBicmVhazsKfCAJY2FzZSAnZic6IC8vIGZsb2F0CnwgCSAg Zm51bWJlciA9IHZhX2FyZyAoYXJnc19jb3B5LCBkb3VibGUpOwp8IAkgIGJyZWFrOwp8IAlkZWZh dWx0Ogp8IAkgIGJyZWFrOwp8IAl9CnwgICAgIH0KfCAgIHZhX2VuZCAoYXJnc19jb3B5KTsKfCAg IHZhX2VuZCAoYXJncyk7CnwgfQp8IAp8IGludAp8IG1haW4gKCkKfCB7CnwgCnwgICAvLyBDaGVj ayBib29sLgp8ICAgX0Jvb2wgc3VjY2VzcyA9IGZhbHNlOwp8IAp8ICAgLy8gQ2hlY2sgcmVzdHJp Y3QuCnwgICBpZiAodGVzdF9yZXN0cmljdCAoIlN0cmluZyBsaXRlcmFsIikgPT0gMCkKfCAgICAg c3VjY2VzcyA9IHRydWU7CnwgICBjaGFyICpyZXN0cmljdCBuZXd2YXIgPSAiQW5vdGhlciBzdHJp bmciOwp8IAp8ICAgLy8gQ2hlY2sgdmFyYXJncy4KfCAgIHRlc3RfdmFyYXJncyAoInMsIGQnIGYg LiIsICJzdHJpbmciLCA2NSwgMzQuMjM0KTsKfCAgIHRlc3RfdmFyYXJnc19tYWNyb3MgKCk7Cnwg CnwgICAvLyBDaGVjayBmbGV4aWJsZSBhcnJheSBtZW1iZXJzLgp8ICAgc3RydWN0IGluY29tcGxl dGVfYXJyYXkgKmlhID0KfCAgICAgbWFsbG9jIChzaXplb2YgKHN0cnVjdCBpbmNvbXBsZXRlX2Fy cmF5KSArIChzaXplb2YgKGRvdWJsZSkgKiAxMCkpOwp8ICAgaWEtPmRhdGFzaXplID0gMTA7Cnwg ICBmb3IgKGludCBpID0gMDsgaSA8IGlhLT5kYXRhc2l6ZTsgKytpKQp8ICAgICBpYS0+ZGF0YVtp XSA9IGkgKiAxLjIzNDsKfCAKfCAgIC8vIENoZWNrIG5hbWVkIGluaXRpYWxpemVycy4KfCAgIHN0 cnVjdCBuYW1lZF9pbml0IG5pID0gewp8ICAgICAubnVtYmVyID0gMzQsCnwgICAgIC5uYW1lID0g TCJUZXN0IHdpZGUgc3RyaW5nIiwKfCAgICAgLmF2ZXJhZ2UgPSA1NDMuMzQzNDMsCnwgICB9Owp8 IAp8ICAgbmkubnVtYmVyID0gNTg7CnwgCnwgICBpbnQgZHluYW1pY19hcnJheVtuaS5udW1iZXJd Owp8ICAgZHluYW1pY19hcnJheVtuaS5udW1iZXIgLSAxXSA9IDU0MzsKfCAKfCAgIC8vIHdvcmsg YXJvdW5kIHVudXNlZCB2YXJpYWJsZSB3YXJuaW5ncwp8ICAgcmV0dXJuICghc3VjY2VzcyB8fCBi aWdudW0gPT0gMExMIHx8IHViaWdudW0gPT0gMHVMTCB8fCBuZXd2YXJbMF0gPT0gJ3gnCnwgCSAg fHwgZHluYW1pY19hcnJheVtuaS5udW1iZXIgLSAxXSAhPSA1NDMpOwp8IAp8ICAgOwp8ICAgcmV0 dXJuIDA7CnwgfQpjb25maWd1cmU6MjM5NDE6IGljYyAtc3RkPWdudTk5IC1jIC1PMyAtbXAgLUkv b3B0L2ludGVsL2NjZS8xMC4xLjAxNS9pbmNsdWRlLyBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5j KDEyOSk6IGVycm9yOiBleHBlY3RlZCBhICIpIgogIHRlc3RfcmVzdHJpY3QgKGNjcCByZXN0cmlj dCB0ZXh0KQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCgpjb25mdGVzdC5jKDEzNCk6 IGVycm9yOiBpZGVudGlmaWVyICJ0ZXh0IiBpcyB1bmRlZmluZWQKICAgIGZvciAodW5zaWduZWQg aW50IGkgPSAwOyAqKHRleHQraSkgIT0gJ1wwJzsgKytpKQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgXgoKY29uZnRlc3QuYygxODMpOiBlcnJvcjogZXhwZWN0ZWQgYSAiOyIKICAgIGNo YXIgKnJlc3RyaWN0IG5ld3ZhciA9ICJBbm90aGVyIHN0cmluZyI7CiAgICAgICAgICAgICAgICAg ICBeCgpjb25mdGVzdC5jKDIwOSk6IGVycm9yOiBpZGVudGlmaWVyICJuZXd2YXIiIGlzIHVuZGVm aW5lZAogICAgcmV0dXJuICghc3VjY2VzcyB8fCBiaWdudW0gPT0gMExMIHx8IHViaWdudW0gPT0g MHVMTCB8fCBuZXd2YXJbMF0gPT0gJ3gnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KCmNvbXBpbGF0aW9uIGFib3J0ZWQgZm9yIGNv bmZ0ZXN0LmMgKGNvZGUgMikKY29uZmlndXJlOjIzOTQ3OiAkPyA9IDIKY29uZmlndXJlOiBmYWls ZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05B TUUgIlIiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgIlIiCnwgI2RlZmluZSBQQUNLQUdFX1ZF UlNJT04gIjIuNy4xIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIlIgMi43LjEiCnwgI2RlZmlu ZSBQQUNLQUdFX0JVR1JFUE9SVCAici1idWdzQFItcHJvamVjdC5vcmciCnwgI2RlZmluZSBQQUNL QUdFICJSIgp8ICNkZWZpbmUgVkVSU0lPTiAiMi43LjEiCnwgI2RlZmluZSBSX1BMQVRGT1JNICJ4 ODZfNjQtdW5rbm93bi1saW51eC1nbnUiCnwgI2RlZmluZSBSX0NQVSAieDg2XzY0Igp8ICNkZWZp bmUgUl9WRU5ET1IgInVua25vd24iCnwgI2RlZmluZSBSX09TICJsaW51eC1nbnUiCnwgI2RlZmlu ZSBVbml4IDEKfCAjZGVmaW5lIFJfQVJDSCAiIgp8ICNkZWZpbmUgSEFWRV9WSVNJQklMSVRZX0FU VFJJQlVURSAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMg MQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0gg MQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAj ZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZp bmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUg SEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgTFRfT0JK RElSICIubGlicy8iCnwgI2RlZmluZSBIQVZFX0xJQk0gMQp8ICNkZWZpbmUgSEFWRV9MSUJETCAx CnwgI2RlZmluZSBIQVZFX1JFQURMSU5FX0hJU1RPUllfSCAxCnwgI2RlZmluZSBIQVZFX1JFQURM SU5FX1JFQURMSU5FX0ggMQp8ICNkZWZpbmUgSEFWRV9MSUJSRUFETElORSAxCnwgI2RlZmluZSBI QVZFX1JMX0NPTVBMRVRJT05fTUFUQ0hFUyAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNk ZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNk ZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9JTkVUX0ggMQp8ICNk ZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEhBVkVfRUxGX0ggMQp8ICNkZWZpbmUgSEFW RV9GQ05UTF9IIDEKfCAjZGVmaW5lIEhBVkVfRlBVX0NPTlRST0xfSCAxCnwgI2RlZmluZSBIQVZF X0dMT0JfSCAxCnwgI2RlZmluZSBIQVZFX0dSUF9IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0gg MQp8ICNkZWZpbmUgSEFWRV9MT0NBTEVfSCAxCnwgI2RlZmluZSBIQVZFX05FVERCX0ggMQp8ICNk ZWZpbmUgSEFWRV9ORVRJTkVUX0lOX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmlu ZSBIQVZFX1NUREJPT0xfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2Rl ZmluZSBIQVZFX1NZU19USU1FU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCnwg I2RlZmluZSBIQVZFX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5l IEhBVkVfRVJSTk9fSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFW RV9TVERBUkdfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RS SU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NJR1NFVEpNUCAxCnwgI2RlZmluZSBIQVZFX0RF Q0xfU0lHTE9OR0pNUCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1NFVEpNUCAxCnwgI2RlZmluZSBI QVZFX0dMSUJDMiAxCnwgI2RlZmluZSBSRVRTSUdUWVBFIHZvaWQKfCAjZGVmaW5lIFJfU09DS0xF Tl9UIAp8ICNkZWZpbmUgSEFWRV9TVEFDS19UIDEKfCAjZGVmaW5lIEhBVkVfSU5UUFRSX1QgMQp8 ICNkZWZpbmUgSEFWRV9VSU5UUFRSX1QgMQp8ICNkZWZpbmUgV09SRFNfQklHRU5ESUFOIDEKfCAv KiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN0ZGFyZy5oPgp8ICNpbmNsdWRlIDxz dGRib29sLmg+CnwgI2luY2x1ZGUgPHN0ZGxpYi5oPgp8ICNpbmNsdWRlIDx3Y2hhci5oPgp8ICNp bmNsdWRlIDxzdGRpby5oPgp8IAp8IC8vIENoZWNrIHZhcmFyZ3MgbWFjcm9zLiAgVGhlc2UgZXhh bXBsZXMgYXJlIHRha2VuIGZyb20gQzk5IDYuMTAuMy41Lgp8ICNkZWZpbmUgZGVidWcoLi4uKSBm cHJpbnRmIChzdGRlcnIsIF9fVkFfQVJHU19fKQp8ICNkZWZpbmUgc2hvd2xpc3QoLi4uKSBwdXRz ICgjX19WQV9BUkdTX18pCnwgI2RlZmluZSByZXBvcnQodGVzdCwuLi4pICgodGVzdCkgPyBwdXRz ICgjdGVzdCkgOiBwcmludGYgKF9fVkFfQVJHU19fKSkKfCBzdGF0aWMgdm9pZAp8IHRlc3RfdmFy YXJnc19tYWNyb3MgKHZvaWQpCnwgewp8ICAgaW50IHggPSAxMjM0Owp8ICAgaW50IHkgPSA1Njc4 Owp8ICAgZGVidWcgKCJGbGFnIik7CnwgICBkZWJ1ZyAoIlggPSAlZFxuIiwgeCk7CnwgICBzaG93 bGlzdCAoVGhlIGZpcnN0LCBzZWNvbmQsIGFuZCB0aGlyZCBpdGVtcy4pOwp8ICAgcmVwb3J0ICh4 PnksICJ4IGlzICVkIGJ1dCB5IGlzICVkIiwgeCwgeSk7CnwgfQp8IAp8IC8vIENoZWNrIGxvbmcg bG9uZyB0eXBlcy4KfCAjZGVmaW5lIEJJRzY0IDE4NDQ2NzQ0MDczNzA5NTUxNjE1dWxsCnwgI2Rl ZmluZSBCSUczMiA0Mjk0OTY3Mjk1dWwKfCAjZGVmaW5lIEJJR19PSyAoQklHNjQgLyBCSUczMiA9 PSA0Mjk0OTY3Mjk3dWxsICYmIEJJRzY0ICUgQklHMzIgPT0gMCkKfCAjaWYgIUJJR19PSwp8ICAg eW91ciBwcmVwcm9jZXNzb3IgaXMgYnJva2VuOwp8ICNlbmRpZgp8ICNpZiBCSUdfT0sKfCAjZWxz ZQp8ICAgeW91ciBwcmVwcm9jZXNzb3IgaXMgYnJva2VuOwp8ICNlbmRpZgp8IHN0YXRpYyBsb25n IGxvbmcgaW50IGJpZ251bSA9IC05MjIzMzcyMDM2ODU0Nzc1ODA3TEw7Cnwgc3RhdGljIHVuc2ln bmVkIGxvbmcgbG9uZyBpbnQgdWJpZ251bSA9IEJJRzY0Owp8IAp8IHN0cnVjdCBpbmNvbXBsZXRl X2FycmF5Cnwgewp8ICAgaW50IGRhdGFzaXplOwp8ICAgZG91YmxlIGRhdGFbXTsKfCB9Owp8IAp8 IHN0cnVjdCBuYW1lZF9pbml0IHsKfCAgIGludCBudW1iZXI7CnwgICBjb25zdCB3Y2hhcl90ICpu YW1lOwp8ICAgZG91YmxlIGF2ZXJhZ2U7CnwgfTsKfCAKfCB0eXBlZGVmIGNvbnN0IGNoYXIgKmNj cDsKfCAKfCBzdGF0aWMgaW5saW5lIGludAp8IHRlc3RfcmVzdHJpY3QgKGNjcCByZXN0cmljdCB0 ZXh0KQp8IHsKfCAgIC8vIFNlZSBpZiBDKystc3R5bGUgY29tbWVudHMgd29yay4KfCAgIC8vIEl0 ZXJhdGUgdGhyb3VnaCBpdGVtcyB2aWEgdGhlIHJlc3RyaWN0ZWQgcG9pbnRlci4KfCAgIC8vIEFs c28gY2hlY2sgZm9yIGRlY2xhcmF0aW9ucyBpbiBmb3IgbG9vcHMuCnwgICBmb3IgKHVuc2lnbmVk IGludCBpID0gMDsgKih0ZXh0K2kpICE9ICdcMCc7ICsraSkKfCAgICAgY29udGludWU7CnwgICBy ZXR1cm4gMDsKfCB9CnwgCnwgLy8gQ2hlY2sgdmFyYXJncyBhbmQgdmFfY29weS4KfCBzdGF0aWMg dm9pZAp8IHRlc3RfdmFyYXJncyAoY29uc3QgY2hhciAqZm9ybWF0LCAuLi4pCnwgewp8ICAgdmFf bGlzdCBhcmdzOwp8ICAgdmFfc3RhcnQgKGFyZ3MsIGZvcm1hdCk7CnwgICB2YV9saXN0IGFyZ3Nf Y29weTsKfCAgIHZhX2NvcHkgKGFyZ3NfY29weSwgYXJncyk7CnwgCnwgICBjb25zdCBjaGFyICpz dHI7CnwgICBpbnQgbnVtYmVyOwp8ICAgZmxvYXQgZm51bWJlcjsKfCAKfCAgIHdoaWxlICgqZm9y bWF0KQp8ICAgICB7CnwgICAgICAgc3dpdGNoICgqZm9ybWF0KyspCnwgCXsKfCAJY2FzZSAncyc6 IC8vIHN0cmluZwp8IAkgIHN0ciA9IHZhX2FyZyAoYXJnc19jb3B5LCBjb25zdCBjaGFyICopOwp8 IAkgIGJyZWFrOwp8IAljYXNlICdkJzogLy8gaW50CnwgCSAgbnVtYmVyID0gdmFfYXJnIChhcmdz X2NvcHksIGludCk7CnwgCSAgYnJlYWs7CnwgCWNhc2UgJ2YnOiAvLyBmbG9hdAp8IAkgIGZudW1i ZXIgPSB2YV9hcmcgKGFyZ3NfY29weSwgZG91YmxlKTsKfCAJICBicmVhazsKfCAJZGVmYXVsdDoK fCAJICBicmVhazsKfCAJfQp8ICAgICB9CnwgICB2YV9lbmQgKGFyZ3NfY29weSk7CnwgICB2YV9l bmQgKGFyZ3MpOwp8IH0KfCAKfCBpbnQKfCBtYWluICgpCnwgewp8IAp8ICAgLy8gQ2hlY2sgYm9v bC4KfCAgIF9Cb29sIHN1Y2Nlc3MgPSBmYWxzZTsKfCAKfCAgIC8vIENoZWNrIHJlc3RyaWN0Lgp8 ICAgaWYgKHRlc3RfcmVzdHJpY3QgKCJTdHJpbmcgbGl0ZXJhbCIpID09IDApCnwgICAgIHN1Y2Nl c3MgPSB0cnVlOwp8ICAgY2hhciAqcmVzdHJpY3QgbmV3dmFyID0gIkFub3RoZXIgc3RyaW5nIjsK fCAKfCAgIC8vIENoZWNrIHZhcmFyZ3MuCnwgICB0ZXN0X3ZhcmFyZ3MgKCJzLCBkJyBmIC4iLCAi c3RyaW5nIiwgNjUsIDM0LjIzNCk7CnwgICB0ZXN0X3ZhcmFyZ3NfbWFjcm9zICgpOwp8IAp8ICAg Ly8gQ2hlY2sgZmxleGlibGUgYXJyYXkgbWVtYmVycy4KfCAgIHN0cnVjdCBpbmNvbXBsZXRlX2Fy cmF5ICppYSA9CnwgICAgIG1hbGxvYyAoc2l6ZW9mIChzdHJ1Y3QgaW5jb21wbGV0ZV9hcnJheSkg KyAoc2l6ZW9mIChkb3VibGUpICogMTApKTsKfCAgIGlhLT5kYXRhc2l6ZSA9IDEwOwp8ICAgZm9y IChpbnQgaSA9IDA7IGkgPCBpYS0+ZGF0YXNpemU7ICsraSkKfCAgICAgaWEtPmRhdGFbaV0gPSBp ICogMS4yMzQ7CnwgCnwgICAvLyBDaGVjayBuYW1lZCBpbml0aWFsaXplcnMuCnwgICBzdHJ1Y3Qg bmFtZWRfaW5pdCBuaSA9IHsKfCAgICAgLm51bWJlciA9IDM0LAp8ICAgICAubmFtZSA9IEwiVGVz dCB3aWRlIHN0cmluZyIsCnwgICAgIC5hdmVyYWdlID0gNTQzLjM0MzQzLAp8ICAgfTsKfCAKfCAg IG5pLm51bWJlciA9IDU4Owp8IAp8ICAgaW50IGR5bmFtaWNfYXJyYXlbbmkubnVtYmVyXTsKfCAg IGR5bmFtaWNfYXJyYXlbbmkubnVtYmVyIC0gMV0gPSA1NDM7CnwgCnwgICAvLyB3b3JrIGFyb3Vu ZCB1bnVzZWQgdmFyaWFibGUgd2FybmluZ3MKfCAgIHJldHVybiAoIXN1Y2Nlc3MgfHwgYmlnbnVt ID09IDBMTCB8fCB1YmlnbnVtID09IDB1TEwgfHwgbmV3dmFyWzBdID09ICd4Jwp8IAkgIHx8IGR5 bmFtaWNfYXJyYXlbbmkubnVtYmVyIC0gMV0gIT0gNTQzKTsKfCAKfCAgIDsKfCAgIHJldHVybiAw Owp8IH0KY29uZmlndXJlOjIzOTQxOiBpY2MgLWM5OSAtYyAtTzMgLW1wIC1JL29wdC9pbnRlbC9j Y2UvMTAuMS4wMTUvaW5jbHVkZS8gY29uZnRlc3QuYyA+JjUKaWNjOiBjb21tYW5kIGxpbmUgcmVt YXJrICMxMDAxMDogb3B0aW9uICctYzk5JyBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92 ZWQgaW4gYSBmdXR1cmUgcmVsZWFzZS4gU2VlICctaGVscCBkZXByZWNhdGVkJwpjb25maWd1cmU6 MjM5NDc6ICQ/ID0gMApjb25maWd1cmU6MjM5Nzc6IHJlc3VsdDogLWM5OQpjb25maWd1cmU6MjQx MDc6IGNoZWNraW5nIGZvciBpY2MgLWM5OSBvcHRpb24gdG8gYWNjZXB0IElTTyBTdGFuZGFyZCBD CmNvbmZpZ3VyZToyNDExODogcmVzdWx0OiAtYzk5CmNvbmZpZ3VyZToyNDEyMzogY2hlY2tpbmcg Zm9yIGlubGluZQpjb25maWd1cmU6MjQxNDg6IGljYyAtYzk5IC1jIC1PMyAtbXAgLUkvb3B0L2lu dGVsL2NjZS8xMC4xLjAxNS9pbmNsdWRlLyBjb25mdGVzdC5jID4mNQppY2M6IGNvbW1hbmQgbGlu ZSByZW1hcmsgIzEwMDEwOiBvcHRpb24gJy1jOTknIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUg cmVtb3ZlZCBpbiBhIGZ1dHVyZSByZWxlYXNlLiBTZWUgJy1oZWxwIGRlcHJlY2F0ZWQnCmNvbmZp Z3VyZToyNDE1NDogJD8gPSAwCmNvbmZpZ3VyZToyNDE3MTogcmVzdWx0OiBpbmxpbmUKY29uZmln dXJlOjI0MTg1OiBjaGVja2luZyBmb3IgaW50CmNvbmZpZ3VyZToyNDIxNTogaWNjIC1jOTkgLWMg LU8zIC1tcCAtSS9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUvIGNvbmZ0ZXN0LmMgPiY1 CmljYzogY29tbWFuZCBsaW5lIHJlbWFyayAjMTAwMTA6IG9wdGlvbiAnLWM5OScgaXMgZGVwcmVj YXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIGEgZnV0dXJlIHJlbGVhc2UuIFNlZSAnLWhlbHAg ZGVwcmVjYXRlZCcKY29uZnRlc3QuYygxMTcpOiB3YXJuaW5nICMyNzk6IGNvbnRyb2xsaW5nIGV4 cHJlc3Npb24gaXMgY29uc3RhbnQKICBpZiAoKGFjX190eXBlX25ld18gKikgMCkKICAgICAgXgoK Y29uZmlndXJlOjI0MjIxOiAkPyA9IDAKY29uZmlndXJlOjI0MjM2OiByZXN1bHQ6IHllcwpjb25m aWd1cmU6MjQyNDM6IGNoZWNraW5nIHNpemUgb2YgaW50CmNvbmZpZ3VyZToyNDU0NTogaWNjIC1j OTkgLW8gY29uZnRlc3QgLU8zIC1tcCAtSS9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUv IC1ML3Vzci9sb2NhbC9saWI2NCBjb25mdGVzdC5jIC1sZGwgLWxtICA+JjUKaWNjOiBjb21tYW5k IGxpbmUgcmVtYXJrICMxMDAxMDogb3B0aW9uICctYzk5JyBpcyBkZXByZWNhdGVkIGFuZCB3aWxs IGJlIHJlbW92ZWQgaW4gYSBmdXR1cmUgcmVsZWFzZS4gU2VlICctaGVscCBkZXByZWNhdGVkJwpj b25maWd1cmU6MjQ1NDg6ICQ/ID0gMApjb25maWd1cmU6MjQ1NTQ6IC4vY29uZnRlc3QKLi9jb25m dGVzdDogZXJyb3Igd2hpbGUgbG9hZGluZyBzaGFyZWQgbGlicmFyaWVzOiBsaWJpbWYuc286IGNh bm5vdCBvcGVuIHNoYXJlZCBvYmplY3QgZmlsZTogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpj b25maWd1cmU6MjQ1NTc6ICQ/ID0gMTI3CmNvbmZpZ3VyZTogcHJvZ3JhbSBleGl0ZWQgd2l0aCBz dGF0dXMgMTI3CmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmgu ICAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJSIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1F ICJSIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyLjcuMSIKfCAjZGVmaW5lIFBBQ0tBR0Vf U1RSSU5HICJSIDIuNy4xIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgInItYnVnc0BSLXBy b2plY3Qub3JnIgp8ICNkZWZpbmUgUEFDS0FHRSAiUiIKfCAjZGVmaW5lIFZFUlNJT04gIjIuNy4x Igp8ICNkZWZpbmUgUl9QTEFURk9STSAieDg2XzY0LXVua25vd24tbGludXgtZ251Igp8ICNkZWZp bmUgUl9DUFUgIng4Nl82NCIKfCAjZGVmaW5lIFJfVkVORE9SICJ1bmtub3duIgp8ICNkZWZpbmUg Ul9PUyAibGludXgtZ251Igp8ICNkZWZpbmUgVW5peCAxCnwgI2RlZmluZSBSX0FSQ0ggIiIKfCAj ZGVmaW5lIEhBVkVfVklTSUJJTElUWV9BVFRSSUJVVEUgMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0Ug MQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5l IEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBI QVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9E TEZDTl9IIDEKfCAjZGVmaW5lIExUX09CSkRJUiAiLmxpYnMvIgp8ICNkZWZpbmUgSEFWRV9MSUJN IDEKfCAjZGVmaW5lIEhBVkVfTElCREwgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElORV9ISVNUT1JZ X0ggMQp8ICNkZWZpbmUgSEFWRV9SRUFETElORV9SRUFETElORV9IIDEKfCAjZGVmaW5lIEhBVkVf TElCUkVBRExJTkUgMQp8ICNkZWZpbmUgSEFWRV9STF9DT01QTEVUSU9OX01BVENIRVMgMQp8ICNk ZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwgI2Rl ZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmlu ZSBIQVZFX0FSUEFfSU5FVF9IIDEKfCAjZGVmaW5lIEhBVkVfRExGQ05fSCAxCnwgI2RlZmluZSBI QVZFX0VMRl9IIDEKfCAjZGVmaW5lIEhBVkVfRkNOVExfSCAxCnwgI2RlZmluZSBIQVZFX0ZQVV9D T05UUk9MX0ggMQp8ICNkZWZpbmUgSEFWRV9HTE9CX0ggMQp8ICNkZWZpbmUgSEFWRV9HUlBfSCAx CnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxFX0ggMQp8ICNk ZWZpbmUgSEFWRV9ORVREQl9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUSU5FVF9JTl9IIDEKfCAjZGVm aW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERCT09MX0ggMQp8ICNkZWZpbmUgSEFW RV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZF X1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBI QVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRVNfSCAxCnwgI2RlZmlu ZSBIQVZFX1NZU19VVFNOQU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9USU1FX0ggMQp8ICNkZWZpbmUg SEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0VSUk5PX0ggMQp8ICNkZWZpbmUgSEFWRV9J TlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1REQVJHX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJ TlRfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9TSUdT RVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1NJR0xPTkdKTVAgMQp8ICNkZWZpbmUgSEFWRV9Q T1NJWF9TRVRKTVAgMQp8ICNkZWZpbmUgSEFWRV9HTElCQzIgMQp8ICNkZWZpbmUgUkVUU0lHVFlQ RSB2b2lkCnwgI2RlZmluZSBSX1NPQ0tMRU5fVCAKfCAjZGVmaW5lIEhBVkVfU1RBQ0tfVCAxCnwg I2RlZmluZSBIQVZFX0lOVFBUUl9UIDEKfCAjZGVmaW5lIEhBVkVfVUlOVFBUUl9UIDEKfCAjZGVm aW5lIFdPUkRTX0JJR0VORElBTiAxCnwgI2RlZmluZSBSX0lOTElORSBpbmxpbmUKfCAvKiBlbmQg Y29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN0ZGlvLmg+CnwgI2lmZGVmIEhBVkVfU1lTX1RZ UEVTX0gKfCAjIGluY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NZ U19TVEFUX0gKfCAjIGluY2x1ZGUgPHN5cy9zdGF0Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIFNURENf SEVBREVSUwp8ICMgaW5jbHVkZSA8c3RkbGliLmg+CnwgIyBpbmNsdWRlIDxzdGRkZWYuaD4KfCAj ZWxzZQp8ICMgaWZkZWYgSEFWRV9TVERMSUJfSAp8ICMgIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMg ZW5kaWYKfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdfSAp8ICMgaWYgIWRlZmluZWQgU1RE Q19IRUFERVJTICYmIGRlZmluZWQgSEFWRV9NRU1PUllfSAp8ICMgIGluY2x1ZGUgPG1lbW9yeS5o Pgp8ICMgZW5kaWYKfCAjIGluY2x1ZGUgPHN0cmluZy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZF X1NUUklOR1NfSAp8ICMgaW5jbHVkZSA8c3RyaW5ncy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZF X0lOVFRZUEVTX0gKfCAjIGluY2x1ZGUgPGludHR5cGVzLmg+CnwgI2VuZGlmCnwgI2lmZGVmIEhB VkVfU1RESU5UX0gKfCAjIGluY2x1ZGUgPHN0ZGludC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZF X1VOSVNURF9ICnwgIyBpbmNsdWRlIDx1bmlzdGQuaD4KfCAjZW5kaWYKfCAgICB0eXBlZGVmIGlu dCBhY19fdHlwZV9zaXplb2ZfOwp8IHN0YXRpYyBsb25nIGludCBsb25ndmFsICgpIHsgcmV0dXJu IChsb25nIGludCkgKHNpemVvZiAoYWNfX3R5cGVfc2l6ZW9mXykpOyB9Cnwgc3RhdGljIHVuc2ln bmVkIGxvbmcgaW50IHVsb25ndmFsICgpIHsgcmV0dXJuIChsb25nIGludCkgKHNpemVvZiAoYWNf X3R5cGVfc2l6ZW9mXykpOyB9CnwgI2luY2x1ZGUgPHN0ZGlvLmg+CnwgI2luY2x1ZGUgPHN0ZGxp Yi5oPgp8IGludAp8IG1haW4gKCkKfCB7CnwgCnwgICBGSUxFICpmID0gZm9wZW4gKCJjb25mdGVz dC52YWwiLCAidyIpOwp8ICAgaWYgKCEgZikKfCAgICAgcmV0dXJuIDE7CnwgICBpZiAoKChsb25n IGludCkgKHNpemVvZiAoYWNfX3R5cGVfc2l6ZW9mXykpKSA8IDApCnwgICAgIHsKfCAgICAgICBs b25nIGludCBpID0gbG9uZ3ZhbCAoKTsKfCAgICAgICBpZiAoaSAhPSAoKGxvbmcgaW50KSAoc2l6 ZW9mIChhY19fdHlwZV9zaXplb2ZfKSkpKQp8IAlyZXR1cm4gMTsKfCAgICAgICBmcHJpbnRmIChm LCAiJWxkXG4iLCBpKTsKfCAgICAgfQp8ICAgZWxzZQp8ICAgICB7CnwgICAgICAgdW5zaWduZWQg bG9uZyBpbnQgaSA9IHVsb25ndmFsICgpOwp8ICAgICAgIGlmIChpICE9ICgobG9uZyBpbnQpIChz aXplb2YgKGFjX190eXBlX3NpemVvZl8pKSkpCnwgCXJldHVybiAxOwp8ICAgICAgIGZwcmludGYg KGYsICIlbHVcbiIsIGkpOwp8ICAgICB9CnwgICByZXR1cm4gZmVycm9yIChmKSB8fCBmY2xvc2Ug KGYpICE9IDA7CnwgCnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToyNDU2ODogZXJy b3I6IGNhbm5vdCBjb21wdXRlIHNpemVvZiAoaW50KQpTZWUgYGNvbmZpZy5sb2cnIGZvciBtb3Jl IGRldGFpbHMuCgojIyAtLS0tLS0tLS0tLS0tLS0tICMjCiMjIENhY2hlIHZhcmlhYmxlcy4gIyMK IyMgLS0tLS0tLS0tLS0tLS0tLSAjIwoKYWNfY3ZfYnVpbGQ9eDg2XzY0LXVua25vd24tbGludXgt Z251CmFjX2N2X2NfYmlnZW5kaWFuPXllcwphY19jdl9jX2NvbXBpbGVyX2dudT15ZXMKYWNfY3Zf Y19jb25zdD15ZXMKYWNfY3ZfY3h4X2NvbXBpbGVyX2dudT15ZXMKYWNfY3ZfZW52X0JMQVNfTElC U19zZXQ9CmFjX2N2X2Vudl9CTEFTX0xJQlNfdmFsdWU9CmFjX2N2X2Vudl9DQ0Nfc2V0PQphY19j dl9lbnZfQ0NDX3ZhbHVlPQphY19jdl9lbnZfQ0Nfc2V0PXNldAphY19jdl9lbnZfQ0NfdmFsdWU9 aWNjCmFjX2N2X2Vudl9DRkxBR1Nfc2V0PXNldAphY19jdl9lbnZfQ0ZMQUdTX3ZhbHVlPSctTzMg LW1wJwphY19jdl9lbnZfQ1BJQ0ZMQUdTX3NldD1zZXQKYWNfY3ZfZW52X0NQSUNGTEFHU192YWx1 ZT0tc2hhcmVkCmFjX2N2X2Vudl9DUFBGTEFHU19zZXQ9c2V0CmFjX2N2X2Vudl9DUFBGTEFHU192 YWx1ZT0tSS9vcHQvaW50ZWwvY2NlLzEwLjEuMDE1L2luY2x1ZGUvCmFjX2N2X2Vudl9DUFBfc2V0 PQphY19jdl9lbnZfQ1BQX3ZhbHVlPQphY19jdl9lbnZfQ1hYQ1BQX3NldD0KYWNfY3ZfZW52X0NY WENQUF92YWx1ZT0KYWNfY3ZfZW52X0NYWEZMQUdTX3NldD1zZXQKYWNfY3ZfZW52X0NYWEZMQUdT X3ZhbHVlPSctTzMgLW1wJwphY19jdl9lbnZfQ1hYUElDRkxBR1Nfc2V0PXNldAphY19jdl9lbnZf Q1hYUElDRkxBR1NfdmFsdWU9LXNoYXJlZAphY19jdl9lbnZfQ1hYX3NldD1zZXQKYWNfY3ZfZW52 X0NYWF92YWx1ZT1pY2MKYWNfY3ZfZW52X0RFRlNfc2V0PQphY19jdl9lbnZfREVGU192YWx1ZT0K YWNfY3ZfZW52X0RZTElCX0xERkxBR1Nfc2V0PQphY19jdl9lbnZfRFlMSUJfTERGTEFHU192YWx1 ZT0KYWNfY3ZfZW52X0RZTElCX0xEX3NldD0KYWNfY3ZfZW52X0RZTElCX0xEX3ZhbHVlPQphY19j dl9lbnZfRjc3X3NldD1zZXQKYWNfY3ZfZW52X0Y3N192YWx1ZT1pZm9ydAphY19jdl9lbnZfRkNG TEFHU19zZXQ9CmFjX2N2X2Vudl9GQ0ZMQUdTX3ZhbHVlPQphY19jdl9lbnZfRkNQSUNGTEFHU19z ZXQ9CmFjX2N2X2Vudl9GQ1BJQ0ZMQUdTX3ZhbHVlPQphY19jdl9lbnZfRkNfc2V0PQphY19jdl9l bnZfRkNfdmFsdWU9CmFjX2N2X2Vudl9GRkxBR1Nfc2V0PXNldAphY19jdl9lbnZfRkZMQUdTX3Zh bHVlPSctQzkwIC13OTAgLXc5NSAtbXAnCmFjX2N2X2Vudl9GUElDRkxBR1Nfc2V0PXNldAphY19j dl9lbnZfRlBJQ0ZMQUdTX3ZhbHVlPS1zaGFyZWQKYWNfY3ZfZW52X0pBVkFfSE9NRV9zZXQ9c2V0 CmFjX2N2X2Vudl9KQVZBX0hPTUVfdmFsdWU9L3Vzci9saWI2NC9qdm0vamF2YQphY19jdl9lbnZf TEFQQUNLX0xJQlNfc2V0PQphY19jdl9lbnZfTEFQQUNLX0xJQlNfdmFsdWU9CmFjX2N2X2Vudl9M REZMQUdTX3NldD0KYWNfY3ZfZW52X0xERkxBR1NfdmFsdWU9CmFjX2N2X2Vudl9MSUJTX3NldD0K YWNfY3ZfZW52X0xJQlNfdmFsdWU9CmFjX2N2X2Vudl9MSUJubl9zZXQ9CmFjX2N2X2Vudl9MSUJu bl92YWx1ZT0KYWNfY3ZfZW52X01BSU5fQ0ZMQUdTX3NldD0KYWNfY3ZfZW52X01BSU5fQ0ZMQUdT X3ZhbHVlPQphY19jdl9lbnZfTUFJTl9GRkxBR1Nfc2V0PQphY19jdl9lbnZfTUFJTl9GRkxBR1Nf dmFsdWU9CmFjX2N2X2Vudl9NQUlOX0xERkxBR1Nfc2V0PQphY19jdl9lbnZfTUFJTl9MREZMQUdT X3ZhbHVlPQphY19jdl9lbnZfTUFJTl9MRF9zZXQ9CmFjX2N2X2Vudl9NQUlOX0xEX3ZhbHVlPQph Y19jdl9lbnZfTUFLRV9zZXQ9CmFjX2N2X2Vudl9NQUtFX3ZhbHVlPQphY19jdl9lbnZfT0JKQ0ZM QUdTX3NldD0KYWNfY3ZfZW52X09CSkNGTEFHU192YWx1ZT0KYWNfY3ZfZW52X09CSkNfc2V0PQph Y19jdl9lbnZfT0JKQ192YWx1ZT0KYWNfY3ZfZW52X1JfQkFUQ0hTQVZFX3NldD0KYWNfY3ZfZW52 X1JfQkFUQ0hTQVZFX3ZhbHVlPQphY19jdl9lbnZfUl9CUk9XU0VSX3NldD0KYWNfY3ZfZW52X1Jf QlJPV1NFUl92YWx1ZT0KYWNfY3ZfZW52X1JfUEFQRVJTSVpFX3NldD0KYWNfY3ZfZW52X1JfUEFQ RVJTSVpFX3ZhbHVlPQphY19jdl9lbnZfUl9QUklOVENNRF9zZXQ9CmFjX2N2X2Vudl9SX1BSSU5U Q01EX3ZhbHVlPQphY19jdl9lbnZfU0FGRV9GRkxBR1Nfc2V0PQphY19jdl9lbnZfU0FGRV9GRkxB R1NfdmFsdWU9CmFjX2N2X2Vudl9TSExJQl9DRkxBR1Nfc2V0PQphY19jdl9lbnZfU0hMSUJfQ0ZM QUdTX3ZhbHVlPQphY19jdl9lbnZfU0hMSUJfQ1hYTERGTEFHU19zZXQ9c2V0CmFjX2N2X2Vudl9T SExJQl9DWFhMREZMQUdTX3ZhbHVlPS1zaGFyZWQKYWNfY3ZfZW52X1NITElCX0NYWExEX3NldD0K YWNfY3ZfZW52X1NITElCX0NYWExEX3ZhbHVlPQphY19jdl9lbnZfU0hMSUJfRkNEX3NldD0KYWNf Y3ZfZW52X1NITElCX0ZDRF92YWx1ZT0KYWNfY3ZfZW52X1NITElCX0ZDTERGTEFHU19zZXQ9CmFj X2N2X2Vudl9TSExJQl9GQ0xERkxBR1NfdmFsdWU9CmFjX2N2X2Vudl9TSExJQl9GRkxBR1Nfc2V0 PQphY19jdl9lbnZfU0hMSUJfRkZMQUdTX3ZhbHVlPQphY19jdl9lbnZfU0hMSUJfTERGTEFHU19z ZXQ9c2V0CmFjX2N2X2Vudl9TSExJQl9MREZMQUdTX3ZhbHVlPS1zaGFyZWQKYWNfY3ZfZW52X1NI TElCX0xEX3NldD0KYWNfY3ZfZW52X1NITElCX0xEX3ZhbHVlPQphY19jdl9lbnZfVENMVEtfQ1BQ RkxBR1Nfc2V0PQphY19jdl9lbnZfVENMVEtfQ1BQRkxBR1NfdmFsdWU9CmFjX2N2X2Vudl9UQ0xU S19MSUJTX3NldD0KYWNfY3ZfZW52X1RDTFRLX0xJQlNfdmFsdWU9CmFjX2N2X2Vudl9YTUtNRl9z ZXQ9CmFjX2N2X2Vudl9YTUtNRl92YWx1ZT0KYWNfY3ZfZW52X1lBQ0Nfc2V0PQphY19jdl9lbnZf WUFDQ192YWx1ZT0KYWNfY3ZfZW52X1lGTEFHU19zZXQ9CmFjX2N2X2Vudl9ZRkxBR1NfdmFsdWU9 CmFjX2N2X2Vudl9idWlsZF9hbGlhc19zZXQ9CmFjX2N2X2Vudl9idWlsZF9hbGlhc192YWx1ZT0K YWNfY3ZfZW52X2hvc3RfYWxpYXNfc2V0PQphY19jdl9lbnZfaG9zdF9hbGlhc192YWx1ZT0KYWNf Y3ZfZW52X3JfYXJjaF9zZXQ9CmFjX2N2X2Vudl9yX2FyY2hfdmFsdWU9CmFjX2N2X2Vudl90YXJn ZXRfYWxpYXNfc2V0PQphY19jdl9lbnZfdGFyZ2V0X2FsaWFzX3ZhbHVlPQphY19jdl9mNzdfY29t cGlsZXJfZ251PW5vCmFjX2N2X2Z1bmNfaGlzdG9yeV90cnVuY2F0ZV9maWxlPW5vCmFjX2N2X2hh dmVfZGVjbF9ybF9jb21wbGV0aW9uX21hdGNoZXM9eWVzCmFjX2N2X2hhdmVfZGVjbF9zaWdsb25n am1wPXllcwphY19jdl9oYXZlX2RlY2xfc2lnc2V0am1wPXllcwphY19jdl9oZWFkZXJfYXJwYV9p bmV0X2g9eWVzCmFjX2N2X2hlYWRlcl9kaXJlbnRfZGlyZW50X2g9eWVzCmFjX2N2X2hlYWRlcl9k bF9oPW5vCmFjX2N2X2hlYWRlcl9kbGZjbl9oPXllcwphY19jdl9oZWFkZXJfZWxmX2g9eWVzCmFj X2N2X2hlYWRlcl9lcnJub19oPXllcwphY19jdl9oZWFkZXJfZmNudGxfaD15ZXMKYWNfY3ZfaGVh ZGVyX2Zsb2F0aW5ncG9pbnRfaD1ubwphY19jdl9oZWFkZXJfZnB1X2NvbnRyb2xfaD15ZXMKYWNf Y3ZfaGVhZGVyX2dsb2JfaD15ZXMKYWNfY3ZfaGVhZGVyX2dycF9oPXllcwphY19jdl9oZWFkZXJf aW50dHlwZXNfaD15ZXMKYWNfY3ZfaGVhZGVyX2xpbWl0c19oPXllcwphY19jdl9oZWFkZXJfbG9j YWxlX2g9eWVzCmFjX2N2X2hlYWRlcl9tZW1vcnlfaD15ZXMKYWNfY3ZfaGVhZGVyX25ldGRiX2g9 eWVzCmFjX2N2X2hlYWRlcl9uZXRpbmV0X2luX2g9eWVzCmFjX2N2X2hlYWRlcl9wd2RfaD15ZXMK YWNfY3ZfaGVhZGVyX3JlYWRsaW5lX2hpc3RvcnlfaD15ZXMKYWNfY3ZfaGVhZGVyX3JlYWRsaW5l X3JlYWRsaW5lX2g9eWVzCmFjX2N2X2hlYWRlcl9zdGRhcmdfaD15ZXMKYWNfY3ZfaGVhZGVyX3N0 ZGJvb2xfaD15ZXMKYWNfY3ZfaGVhZGVyX3N0ZGM9eWVzCmFjX2N2X2hlYWRlcl9zdGRpbnRfaD15 ZXMKYWNfY3ZfaGVhZGVyX3N0ZGxpYl9oPXllcwphY19jdl9oZWFkZXJfc3RyaW5nX2g9eWVzCmFj X2N2X2hlYWRlcl9zdHJpbmdzX2g9eWVzCmFjX2N2X2hlYWRlcl9zeXNfcGFyYW1faD15ZXMKYWNf Y3ZfaGVhZGVyX3N5c19yZXNvdXJjZV9oPXllcwphY19jdl9oZWFkZXJfc3lzX3NlbGVjdF9oPXll cwphY19jdl9oZWFkZXJfc3lzX3NvY2tldF9oPXllcwphY19jdl9oZWFkZXJfc3lzX3N0YXRfaD15 ZXMKYWNfY3ZfaGVhZGVyX3N5c190aW1lX2g9eWVzCmFjX2N2X2hlYWRlcl9zeXNfdGltZXNfaD15 ZXMKYWNfY3ZfaGVhZGVyX3N5c190eXBlc19oPXllcwphY19jdl9oZWFkZXJfc3lzX3V0c25hbWVf aD15ZXMKYWNfY3ZfaGVhZGVyX3N5c193YWl0X2g9eWVzCmFjX2N2X2hlYWRlcl90aW1lPXllcwph Y19jdl9oZWFkZXJfdGltZV9oPXllcwphY19jdl9oZWFkZXJfdW5pc3RkX2g9eWVzCmFjX2N2X2hv c3Q9eDg2XzY0LXVua25vd24tbGludXgtZ251CmFjX2N2X2xpYl9kbF9kbG9wZW49eWVzCmFjX2N2 X2xpYl9tX2Nvcz15ZXMKYWNfY3ZfbGliX21fc2luPXllcwphY19jdl9saWJfcmVhZGxpbmVfcmxf Y2FsbGJhY2tfcmVhZF9jaGFyPXllcwphY19jdl9vYmpjX2NvbXBpbGVyX2dudT15ZXMKYWNfY3Zf b2JqZXh0PW8KYWNfY3ZfcGF0aF9EVklQUz0vdXNyL2Jpbi9kdmlwcwphY19jdl9wYXRoX0VHUkVQ PScvdXNyL2Jpbi9ncmVwIC1FJwphY19jdl9wYXRoX0ZHUkVQPScvdXNyL2Jpbi9ncmVwIC1GJwph Y19jdl9wYXRoX0dFVFdEPS9iaW4vcHdkCmFjX2N2X3BhdGhfR1JFUD0vdXNyL2Jpbi9ncmVwCmFj X2N2X3BhdGhfTEFURVg9L3Vzci9iaW4vbGF0ZXgKYWNfY3ZfcGF0aF9NQUtFSU5ERVg9L3Vzci9i aW4vbWFrZWluZGV4CmFjX2N2X3BhdGhfTUFLRUlORk89L3Vzci9iaW4vbWFrZWluZm8KYWNfY3Zf cGF0aF9QQUdFUj0vdXNyL2Jpbi9sZXNzCmFjX2N2X3BhdGhfUERGTEFURVg9L3Vzci9iaW4vcGRm bGF0ZXgKYWNfY3ZfcGF0aF9QREZURVg9L3Vzci9iaW4vcGRmdGV4CmFjX2N2X3BhdGhfUEVSTD0v dXNyL2Jpbi9wZXJsCmFjX2N2X3BhdGhfUEtHQ09ORj0vdXNyL2Jpbi9wa2ctY29uZmlnCmFjX2N2 X3BhdGhfUl9CUk9XU0VSPS91c3IvYmluL2ZpcmVmb3gKYWNfY3ZfcGF0aF9SX0daSVBDTUQ9L3Vz ci9iaW4vZ3ppcAphY19jdl9wYXRoX1JfUERGVklFV0VSPS91c3IvYmluL2Fjcm9yZWFkCmFjX2N2 X3BhdGhfUl9VTlpJUENNRD0vdXNyL2Jpbi91bnppcAphY19jdl9wYXRoX1JfWklQQ01EPS91c3Iv YmluL3ppcAphY19jdl9wYXRoX1NFRD0vdXNyL2Jpbi9zZWQKYWNfY3ZfcGF0aF9URVg9L3Vzci9i aW4vdGV4CmFjX2N2X3BhdGhfVEVYSTJEVkk9L3Vzci9iaW4vdGV4aTJkdmkKYWNfY3ZfcGF0aF9p bnN0YWxsPScvdXNyL2Jpbi9pbnN0YWxsIC1jJwphY19jdl9wcm9nX0FSPWFyCmFjX2N2X3Byb2df QVdLPWdhd2sKYWNfY3ZfcHJvZ19DUFA9L2xpYi9jcHAKYWNfY3ZfcHJvZ19DWFhDUFA9L2xpYi9j cHAKYWNfY3ZfcHJvZ19ZQUNDPSdiaXNvbiAteScKYWNfY3ZfcHJvZ19hY19jdF9DQz1pY2MKYWNf Y3ZfcHJvZ19hY19jdF9PQkpDPWdjYwphY19jdl9wcm9nX2FjX2N0X1JBTkxJQj1yYW5saWIKYWNf Y3ZfcHJvZ19hY19jdF9TVFJJUD1zdHJpcAphY19jdl9wcm9nX2NjX2M4OT0KYWNfY3ZfcHJvZ19j Y19jOTk9LWM5OQphY19jdl9wcm9nX2NjX2c9eWVzCmFjX2N2X3Byb2dfY2Nfc3RkYz0tYzk5CmFj X2N2X3Byb2dfY3h4X2c9eWVzCmFjX2N2X3Byb2dfZjc3X2c9eWVzCmFjX2N2X3Byb2dfZ2NjX3Ry YWRpdGlvbmFsPW5vCmFjX2N2X3Byb2dfb2JqY19nPXllcwphY19jdl9zZWFyY2hfb3BlbmRpcj0n bm9uZSByZXF1aXJlZCcKYWNfY3ZfdHlwZV9ibGtjbnRfdD15ZXMKYWNfY3ZfdHlwZV9pbnQ9eWVz CmFjX2N2X3R5cGVfaW50cHRyX3Q9eWVzCmFjX2N2X3R5cGVfcGlkX3Q9eWVzCmFjX2N2X3R5cGVf c2lnbmFsPXZvaWQKYWNfY3ZfdHlwZV9zaXplX3Q9eWVzCmFjX2N2X3R5cGVfc3RhY2tfdD15ZXMK YWNfY3ZfdHlwZV91aW50cHRyX3Q9eWVzCmx0X2N2X2RlcGxpYnNfY2hlY2tfbWV0aG9kPXBhc3Nf YWxsCmx0X2N2X2ZpbGVfbWFnaWNfY21kPSckTUFHSUNfQ01EJwpsdF9jdl9maWxlX21hZ2ljX3Rl c3RfZmlsZT0KbHRfY3ZfbGRfcmVsb2FkX2ZsYWc9LXIKbHRfY3Zfbm1faW50ZXJmYWNlPSdCU0Qg bm0nCmx0X2N2X29iamRpcj0ubGlicwpsdF9jdl9wYXRoX0xEPS91c3IvYmluL2xkCmx0X2N2X3Bh dGhfTERDWFg9Jy91c3IvYmluL2xkIC1tIGVsZl94ODZfNjQnCmx0X2N2X3BhdGhfTk09Jy91c3Iv YmluL25tIC1CJwpsdF9jdl9wcm9nX2NvbXBpbGVyX2Nfbz15ZXMKbHRfY3ZfcHJvZ19jb21waWxl cl9jX29fQ1hYPXllcwpsdF9jdl9wcm9nX2NvbXBpbGVyX2Nfb19GNzc9eWVzCmx0X2N2X3Byb2df Y29tcGlsZXJfcGljX3dvcmtzPXllcwpsdF9jdl9wcm9nX2NvbXBpbGVyX3BpY193b3Jrc19DWFg9 eWVzCmx0X2N2X3Byb2dfY29tcGlsZXJfcGljX3dvcmtzX0Y3Nz1ubwpsdF9jdl9wcm9nX2NvbXBp bGVyX3J0dGlfZXhjZXB0aW9ucz15ZXMKbHRfY3ZfcHJvZ19jb21waWxlcl9zdGF0aWNfd29ya3M9 eWVzCmx0X2N2X3Byb2dfY29tcGlsZXJfc3RhdGljX3dvcmtzX0NYWD15ZXMKbHRfY3ZfcHJvZ19j b21waWxlcl9zdGF0aWNfd29ya3NfRjc3PXllcwpsdF9jdl9wcm9nX2dudV9sZD15ZXMKbHRfY3Zf cHJvZ19nbnVfbGRjeHg9eWVzCmx0X2N2X3N5c19nbG9iYWxfc3ltYm9sX3BpcGU9J3NlZCAtbiAt ZSAnXCcncy9eLipbCSBdXChbQUJDREdJUlNUV11bQUJDREdJUlNUV10qXClbCSBdWwkgXSpcKFtf QS1aYS16XVtfQS1aYS16MC05XSpcKSQvXDEgXDIgXDIvcCdcJycnCmx0X2N2X3N5c19nbG9iYWxf c3ltYm9sX3RvX2NfbmFtZV9hZGRyZXNzPSdzZWQgLW4gLWUgJ1wnJ3MvXjogXChbXiBdKlwpICQv ICB7XCJcMVwiLCAodm9pZCAqKSAwfSwvcCdcJycgLWUgJ1wnJ3MvXltBQkNER0lSU1RXXSogXChb XiBdKlwpIFwoW14gXSpcKSQvICB7IlwyIiwgKHZvaWQgKikgXCZcMn0sL3AnXCcnJwpsdF9jdl9z eXNfZ2xvYmFsX3N5bWJvbF90b19jX25hbWVfYWRkcmVzc19saWJfcHJlZml4PSdzZWQgLW4gLWUg J1wnJ3MvXjogXChbXiBdKlwpICQvICB7XCJcMVwiLCAodm9pZCAqKSAwfSwvcCdcJycgLWUgJ1wn J3MvXltBQkNER0lSU1RXXSogXChbXiBdKlwpIFwobGliW14gXSpcKSQvICB7IlwyIiwgKHZvaWQg KikgXCZcMn0sL3AnXCcnIC1lICdcJydzL15bQUJDREdJUlNUV10qIFwoW14gXSpcKSBcKFteIF0q XCkkLyAgeyJsaWJcMiIsICh2b2lkICopIFwmXDJ9LC9wJ1wnJycKbHRfY3Zfc3lzX2dsb2JhbF9z eW1ib2xfdG9fY2RlY2w9J3NlZCAtbiAtZSAnXCcncy9eVCAuKiBcKC4qXCkkL2V4dGVybiBpbnQg XDEoKTsvcCdcJycgLWUgJ1wnJ3MvXltBQkNER0lSU1RXXSogLiogXCguKlwpJC9leHRlcm4gY2hh ciBcMTsvcCdcJycnCmx0X2N2X3N5c19tYXhfY21kX2xlbj0xNTcyODY0CnJfY3ZfT0JKQ1hYPWlj YwpyX2N2X2NfaW5saW5lPWlubGluZQpyX2N2X2hlYWRlcl9nbGliYzI9eWVzCnJfY3ZfaGVhZGVy X3NldGptcF9wb3NpeD15ZXMKcl9jdl9wcm9nX2NjX3Zpcz15ZXMKcl9jdl9wcm9nX2Y3N192aXM9 eWVzCnJfY3ZfcHJvZ19tYWtlaW5mb192ND15ZXMKcl9jdl9wcm9nX3BlcmxfdjU9eWVzCnJfY3Zf c2l6ZV9tYXg9bm8Kcl9jdl90eXBlX3NvY2tsZW49CnJfY3ZfdmlzaWJpbGl0eV9hdHRyaWJ1dGU9 eWVzCgojIyAtLS0tLS0tLS0tLS0tLS0tLSAjIwojIyBPdXRwdXQgdmFyaWFibGVzLiAjIwojIyAt LS0tLS0tLS0tLS0tLS0tLSAjIwoKQUNMT0NBTD0nYWNsb2NhbCcKQUxMT0NBPScnCkFSPSdhcicK QVJGTEFHUz0ncmMnCkFVVE9DT05GPSdhdXRvY29uZicKQVVUT0hFQURFUj0nYXV0b2hlYWRlcicK QVVUT01BS0U9J2F1dG9tYWtlJwpBV0s9J2dhd2snCkJJVE1BUF9MSUJTPScnCkJMQVNfTElCUzA9 JycKQkxBU19MSUJTPScnCkJMQVNfU0hMSUJfRkFMU0U9JycKQkxBU19TSExJQl9UUlVFPScnCkJV SUxERElSX0lTX1NSQ0RJUj0neWVzJwpCVUlMRF9BUVVBX0ZBTFNFPScnCkJVSUxEX0FRVUFfVFJV RT0nJwpCVUlMRF9CWkxJQl9GQUxTRT0nJwpCVUlMRF9CWkxJQl9UUlVFPScnCkJVSUxEX0NDPScn CkJVSUxEX0NZR1dJTl9GQUxTRT0nJwpCVUlMRF9DWUdXSU5fVFJVRT0nJwpCVUlMRF9JTkNMVURF RF9MSUJJTlRMPScnCkJVSUxEX0pBVkExNF9GQUxTRT0nJwpCVUlMRF9KQVZBMTRfVFJVRT0nJwpC VUlMRF9MSUJJTlRMX0ZBTFNFPScnCkJVSUxEX0xJQklOVExfVFJVRT0nJwpCVUlMRF9QQ1JFX0ZB TFNFPScnCkJVSUxEX1BDUkVfVFJVRT0nJwpCVUlMRF9SPScnCkJVSUxEX1hEUl9GQUxTRT0nJwpC VUlMRF9YRFJfVFJVRT0nJwpCVUlMRF9aTElCX0ZBTFNFPScnCkJVSUxEX1pMSUJfVFJVRT0nJwpD QUlST19DUFBGTEFHUz0nJwpDQUlST19MSUJTPScnCkNBVE9CSkVYVD0nJwpDQz0naWNjIC1jOTkn CkNGTEFHUz0nLU8zIC1tcCcKQ0ZMQUdfVklTSUJJTElUWT0nJwpDT01QSUxFX0ZPUlRSQU5fRE9V QkxFX0NPTVBMRVhfRkFMU0U9JycKQ09NUElMRV9GT1JUUkFOX0RPVUJMRV9DT01QTEVYX1RSVUU9 JycKQ1BJQ0ZMQUdTPSctc2hhcmVkJwpDUFA9Jy9saWIvY3BwJwpDUFBGTEFHUz0nLUkvb3B0L2lu dGVsL2NjZS8xMC4xLjAxNS9pbmNsdWRlLycKQ1JPU1NfQ09NUElMSU5HX0ZBTFNFPScnCkNST1NT X0NPTVBJTElOR19UUlVFPScjJwpDWFg9J2ljYycKQ1hYQ1BQPScvbGliL2NwcCcKQ1hYRkxBR1M9 Jy1PMyAtbXAnCkNYWFBJQ0ZMQUdTPSctc2hhcmVkJwpDX1ZJU0lCSUxJVFk9JycKREFUQURJUk5B TUU9JycKREVGUz0nJwpEU1lNVVRJTD0nJwpEVU1QQklOPScnCkRWSVBTPScvdXNyL2Jpbi9kdmlw cycKRFlMSUJfRVhUPScnCkRZTElCX0xEPScnCkRZTElCX0xERkxBR1M9JycKRFlMSUJfVU5ERUZJ TkVEX0FMTE9XRURfRkFMU0U9JycKRFlMSUJfVU5ERUZJTkVEX0FMTE9XRURfVFJVRT0nJwpFQ0hP X0M9JycKRUNIT19OPSctbicKRUNIT19UPScnCkVHUkVQPScvdXNyL2Jpbi9ncmVwIC1FJwpFWEVF WFQ9JycKRjc3PSdpZm9ydCcKRjc3X1ZJU0lCSUxJVFk9JycKRkM9JycKRkNGTEFHUz0nJwpGQ0ZM QUdTX2Y5MD0nJwpGQ0ZMQUdTX2Y5NT0nJwpGQ1BJQ0ZMQUdTPScnCkZGTEFHUz0nLUM5MCAtdzkw IC13OTUgLW1wJwpGR1JFUD0nL3Vzci9iaW4vZ3JlcCAtRicKRkxJQlM9JycKRk9VTkRBVElPTl9D UFBGTEFHUz0nJwpGT1VOREFUSU9OX0xJQlM9JycKRlBJQ0ZMQUdTPSctc2hhcmVkJwpGV19WRVJT SU9OPScnCkdFTkNBVD0nJwpHRVRXRD0nL2Jpbi9wd2QnCkdMSUJDMjE9JycKR0xJQkMyPScnCkdN U0dGTVQ9JycKR01TR0ZNVF8wMTU9JycKR1JFUD0nL3Vzci9iaW4vZ3JlcCcKSEFWRV9BU1BSSU5U Rj0nJwpIQVZFX0M5OV9DT01QTEVYPScnCkhBVkVfRk9SVFJBTl9ET1VCTEVfQ09NUExFWD0nJwpI QVZFX1BPU0lYX1BSSU5URj0nJwpIQVZFX1NOUFJJTlRGPScnCkhBVkVfVklTSUJJTElUWT0nJwpI QVZFX1dQUklOVEY9JycKSU5TVEFMTF9EQVRBPScke0lOU1RBTEx9IC1tIDY0NCcKSU5TVEFMTF9J TkZPPSckKFBFUkwpICQodG9wX3NyY2RpcikvdG9vbHMvaW5zdGFsbC1pbmZvLnBsJwpJTlNUQUxM X1BST0dSQU09JyR7SU5TVEFMTH0nCklOU1RBTExfU0NSSVBUPScke0lOU1RBTEx9JwpJTlNUT0JK RVhUPScnCklOVExCSVNPTj0nJwpJTlRMTElCUz0nJwpJTlRMT0JKUz0nJwpJTlRMX0xJQlRPT0xf U1VGRklYX1BSRUZJWD0nJwpJTlRMX01BQ09TWF9MSUJTPScnCkpBUj0nJwpKQVZBPScnCkpBVkFD MTQ9JycKSkFWQUM9JycKSkFWQUg9JycKSkFWQV9DUFBGTEFHUzA9JycKSkFWQV9IT01FPScvdXNy L2xpYjY0L2p2bS9qYXZhJwpKQVZBX0xEX0xJQlJBUllfUEFUSD0nJwpKQVZBX0xJQlMwPScnCkxB UEFDS19MREZMQUdTPScnCkxBUEFDS19MSUJTPScnCkxBVEVYPScvdXNyL2Jpbi9sYXRleCcKTEQ9 Jy91c3IvYmluL2xkIC1tIGVsZl94ODZfNjQnCkxERkxBR1M9Jy1ML3Vzci9sb2NhbC9saWI2NCcK TElCSUNPTlY9JycKTElCSU5UTD0nJwpMSUJNPSctbG0nCkxJQk1VTFRJVEhSRUFEPScnCkxJQk9C SlM9JycKTElCUFRIPScnCkxJQlI9JycKTElCUl9MREZMQUdTPScnCkxJQlM9Jy1sZGwgLWxtICcK TElCVEhSRUFEPScnCkxJQlRPT0w9JyQoU0hFTEwpICQodG9wX2J1aWxkZGlyKS9saWJ0b29sJwpM SUJUT09MX0RFUFM9J3Rvb2xzL2x0bWFpbi5zaCcKTElCbm49J2xpYjY0JwpMTl9TPSdsbiAtcycK TFRMSUJJQ09OVj0nJwpMVExJQklOVEw9JycKTFRMSUJNVUxUSVRIUkVBRD0nJwpMVExJQk9CSlM9 JycKTFRMSUJQVEg9JycKTFRMSUJUSFJFQUQ9JycKTUFJTlRBSU5FUl9NT0RFX0ZBTFNFPScnCk1B SU5UQUlORVJfTU9ERV9UUlVFPScjJwpNQUlOX0NGTEFHUz0nJwpNQUlOX0ZGTEFHUz0nJwpNQUlO X0xEPScnCk1BSU5fTERGTEFHUz0nJwpNQUpfTUlOX1ZFUlNJT049JzIuNycKTUFLRT0nbWFrZScK TUFLRUlOREVYPScvdXNyL2Jpbi9tYWtlaW5kZXgnCk1BS0VJTkZPPScvdXNyL2Jpbi9tYWtlaW5m bycKTVNHRk1UPScnCk1TR0ZNVF8wMTU9JycKTVNHTUVSR0U9JycKTk09Jy91c3IvYmluL25tIC1C JwpOTUVESVQ9JycKT0JKQz0nZ2NjJwpPQkpDRkxBR1M9Jy1nIC1PMicKT0JKQ1hYPSdpY2MnCk9C SkNYWEZMQUdTPScnCk9CSkNfTElCUz0nJwpPQkpFWFQ9J28nCk9TRl9TSF9CVUc9JycKUEFDS0FH RT0nUicKUEFDS0FHRV9CVUdSRVBPUlQ9J3ItYnVnc0BSLXByb2plY3Qub3JnJwpQQUNLQUdFX05B TUU9J1InClBBQ0tBR0VfU1RSSU5HPSdSIDIuNy4xJwpQQUNLQUdFX1RBUk5BTUU9J1InClBBQ0tB R0VfVkVSU0lPTj0nMi43LjEnClBBR0VSPScvdXNyL2Jpbi9sZXNzJwpQQVBFUkNPTkY9JycKUEFU SF9TRVBBUkFUT1I9JzonClBERkxBVEVYPScvdXNyL2Jpbi9wZGZsYXRleCcKUERGVEVYPScvdXNy L2Jpbi9wZGZ0ZXgnClBFUkw9Jy91c3IvYmluL3BlcmwnClBLR0NPTkY9Jy91c3IvYmluL3BrZy1j b25maWcnClBPU1VCPScnClBSSV9NQUNST1NfQlJPS0VOPScnClJBTkxJQj0ncmFubGliJwpSQkxB U19MREZMQUdTPScnClJFQURMSU5FX0xJQlM9Jy1scmVhZGxpbmUgJwpSTEFQQUNLX0xERkxBR1M9 JycKUk1BVEhfSEFWRV9FWFBNMT0nJwpSTUFUSF9IQVZFX0xPRzFQPScnClJNQVRIX0hBVkVfV09S S0lOR19MT0cxUD0nJwpSX0FSQ0g9JycKUl9CQVRDSFNBVkU9JycKUl9CUk9XU0VSPScvdXNyL2Jp bi9maXJlZm94JwpSX0RFRlM9JycKUl9HWklQQ01EPScvdXNyL2Jpbi9nemlwJwpSX0pBVkFfTERf TElCUkFSWV9QQVRIPScnClJfTERfTElCUkFSWV9QQVRIPScvdXNyL2xvY2FsL2xpYjY0JwpSX01P RFVMRVM9JycKUl9PUz0nbGludXgtZ251JwpSX09TVFlQRT0ndW5peCcKUl9QQVBFUlNJWkU9JycK Ul9QREZWSUVXRVI9Jy91c3IvYmluL2Fjcm9yZWFkJwpSX1BMQVRGT1JNPSd4ODZfNjQtdW5rbm93 bi1saW51eC1nbnUnClJfUFJJTlRDTUQ9JycKUl9QUk9GSUxJTkc9JycKUl9SRDREVkk9J2FlJwpS X1JENFBERj0ndGltZXMsaHlwZXInClJfVU5aSVBDTUQ9Jy91c3IvYmluL3VuemlwJwpSX1hUUkFf Q0ZMQUdTPScnClJfWFRSQV9DUFBGTEFHUzI9Jy1JJChSX0lOQ0xVREVfRElSKScKUl9YVFJBX0NQ UEZMQUdTPScnClJfWFRSQV9DWFhGTEFHUz0nJwpSX1hUUkFfRkZMQUdTPScnClJfWFRSQV9MSUJT PScnClJfWklQQ01EPScvdXNyL2Jpbi96aXAnClNBRkVfRkZMQUdTPScnClNFRD0nL3Vzci9iaW4v c2VkJwpTRVRfTUFLRT0nJwpTSEVMTD0nL2Jpbi9zaCcKU0hMSUJfQ0ZMQUdTPScnClNITElCX0NY WEZMQUdTPScnClNITElCX0NYWExEPScnClNITElCX0NYWExERkxBR1M9Jy1zaGFyZWQnClNITElC X0VYVD0nJwpTSExJQl9GQ0Q9JycKU0hMSUJfRkNMRD0nJwpTSExJQl9GQ0xERkxBR1M9JycKU0hM SUJfRkZMQUdTPScnClNITElCX0xEPScnClNITElCX0xERkxBR1M9Jy1zaGFyZWQnClNITElCX0xJ QkFERD0nJwpTVFJJUD0nc3RyaXAnClNVUFBPUlRfTUJDUz0nJwpTVVBQT1JUX1VURjg9JycKVEFS PSd0YXInClRDTFRLX0NQUEZMQUdTPScnClRDTFRLX0xJQlM9JycKVENMX0NPTkZJRz0nJwpURVg9 Jy91c3IvYmluL3RleCcKVEVYSTJEVkk9Jy91c3IvYmluL3RleGkyZHZpJwpUSUZGX0xJQlM9JycK VEtfQ09ORklHPScnClVTRV9FWFBPUlRGSUxFU19GQUxTRT0nJwpVU0VfRVhQT1JURklMRVNfVFJV RT0nJwpVU0VfRVhURVJOQUxfQkxBU19GQUxTRT0nJwpVU0VfRVhURVJOQUxfQkxBU19UUlVFPScn ClVTRV9FWFRFUk5BTF9MQVBBQ0tfRkFMU0U9JycKVVNFX0VYVEVSTkFMX0xBUEFDS19UUlVFPScn ClVTRV9JTkNMVURFRF9MSUJJTlRMPScnClVTRV9NTUFQX1pMSUJfRkFMU0U9JycKVVNFX01NQVBf WkxJQl9UUlVFPScnClVTRV9OTFM9JycKVVNFX05MU19GQUxTRT0nJwpVU0VfTkxTX1RSVUU9JycK VVNFX1JFQ09NTUVOREVEX1BBQ0tBR0VTX0ZBTFNFPScnClVTRV9SRUNPTU1FTkRFRF9QQUNLQUdF U19UUlVFPScnClVTRV9WRUNMSUJfRzk1RklYX0ZBTFNFPScnClVTRV9WRUNMSUJfRzk1RklYX1RS VUU9JycKVkVSU0lPTj0nMi43LjEnCldBTlRfUl9GUkFNRVdPUktfRkFMU0U9JycKV0FOVF9SX0ZS QU1FV09SS19UUlVFPScjJwpXQU5UX1JfU0hMSUJfRkFMU0U9JycKV0FOVF9SX1NITElCX1RSVUU9 JyMnCldBTlRfUl9TVEFUSUNfRkFMU0U9JycKV0FOVF9SX1NUQVRJQ19UUlVFPScjJwpXT0UzMkRM TD0nJwpYR0VUVEVYVD0nJwpYR0VUVEVYVF8wMTU9JycKWE1LTUY9JycKWFRSQV9JTlRMX0NQUEZM QUdTPScnClhfQ0ZMQUdTPScnClhfRVhUUkFfTElCUz0nJwpYX0xJQlM9JycKWF9QUkVfTElCUz0n JwpZQUNDPSdiaXNvbiAteScKWUZMQUdTPScnCmFjX2N0X0NDPSdpY2MnCmFjX2N0X0NYWD0nJwph Y19jdF9EVU1QQklOPScnCmFjX2N0X0Y3Nz0nJwphY19jdF9GQz0nJwphY19jdF9PQkpDPSdnY2Mn CmJpbmRpcj0nJHtleGVjX3ByZWZpeH0vYmluJwpidWlsZD0neDg2XzY0LXVua25vd24tbGludXgt Z251JwpidWlsZF9hbGlhcz0nJwpidWlsZF9jcHU9J3g4Nl82NCcKYnVpbGRfb3M9J2xpbnV4LWdu dScKYnVpbGRfdmVuZG9yPSd1bmtub3duJwpjb25maWdfb3B0cz0nICdcJydDQz1pY2MnXCcnICdc JydDRkxBR1M9LU8zIC1tcCdcJycgJ1wnJ0NQUEZMQUdTPS1JL29wdC9pbnRlbC9jY2UvMTAuMS4w MTUvaW5jbHVkZS8nXCcnICdcJydGNzc9aWZvcnQnXCcnICdcJydDWFg9aWNjJ1wnJyAnXCcnQ1hY RkxBR1M9LU8zIC1tcCdcJycgJ1wnJ0ZGTEFHUz0tQzkwIC13OTAgLXc5NSAtbXAnXCcnICdcJydD UElDRkxBR1M9LXNoYXJlZCdcJycgJ1wnJ0NYWFBJQ0ZMQUdTPS1zaGFyZWQnXCcnICdcJydGUElD RkxBR1M9LXNoYXJlZCdcJycgJ1wnJ1NITElCX0xERkxBR1M9LXNoYXJlZCdcJycgJ1wnJ1NITElC X0NYWExERkxBR1M9LXNoYXJlZCdcJycgJ1wnJy0td2l0aC1ibGFzPS1ML3Vzci9saWI2NC9Hb3Rv QkxBUyAtbGdvdG9fcGVucnlucC1yMS4yNiAtbHB0aHJlYWQnXCcnICdcJydKQVZBX0hPTUU9L3Vz ci9saWI2NC9qdm0vamF2YSdcJycnCmRhdGFkaXI9JyR7ZGF0YXJvb3RkaXJ9JwpkYXRhcm9vdGRp cj0nJHtwcmVmaXh9L3NoYXJlJwpkb2NkaXI9JyR7ZGF0YXJvb3RkaXJ9L2RvYy8ke1BBQ0tBR0Vf VEFSTkFNRX0nCmR2aWRpcj0nJHtkb2NkaXJ9JwpleGVjX3ByZWZpeD0nTk9ORScKaG9zdD0neDg2 XzY0LXVua25vd24tbGludXgtZ251Jwpob3N0X2FsaWFzPScnCmhvc3RfY3B1PSd4ODZfNjQnCmhv c3Rfb3M9J2xpbnV4LWdudScKaG9zdF92ZW5kb3I9J3Vua25vd24nCmh0bWxkaXI9JyR7ZG9jZGly fScKaW5jbHVkZWRpcj0nJHtwcmVmaXh9L2luY2x1ZGUnCmluZm9kaXI9JyR7ZGF0YXJvb3RkaXJ9 L2luZm8nCmxpYmRpcj0nJHtleGVjX3ByZWZpeH0vJHtMSUJubn0nCmxpYmV4ZWNkaXI9JyR7ZXhl Y19wcmVmaXh9L2xpYmV4ZWMnCmxvY2FsZWRpcj0nJHtkYXRhcm9vdGRpcn0vbG9jYWxlJwpsb2Nh bHN0YXRlZGlyPScke3ByZWZpeH0vdmFyJwpsdF9FQ0hPPSdlY2hvJwptYW5kaXI9JyR7ZGF0YXJv b3RkaXJ9L21hbicKbWtkaXJfcD0nJwpvbGRpbmNsdWRlZGlyPScvdXNyL2luY2x1ZGUnCnBkZmRp cj0nJHtkb2NkaXJ9JwpwcmVmaXg9J05PTkUnCnByb2dyYW1fdHJhbnNmb3JtX25hbWU9J3MseCx4 LCcKcHNkaXI9JyR7ZG9jZGlyfScKcl9hcmNoPScnCnJkb2NkaXI9JyR7cmhvbWV9L2RvYycKcmlu Y2x1ZGVkaXI9JyR7cmhvbWV9L2luY2x1ZGUnCnJzaGFyZWRpcj0nJHtyaG9tZX0vc2hhcmUnCnNi aW5kaXI9JyR7ZXhlY19wcmVmaXh9L3NiaW4nCnNoYXJlZHN0YXRlZGlyPScke3ByZWZpeH0vY29t JwpzaGxpYnBhdGhfdmFyPSdMRF9MSUJSQVJZX1BBVEgnCnN0cmlwbGliPSdzdHJpcCAtLXN0cmlw LXVubmVlZGVkJwpzdHJpcHN0YXRpY2xpYj0nc3RyaXAgLS1zdHJpcC1kZWJ1ZycKc3lzY29uZmRp cj0nJHtwcmVmaXh9L2V0YycKdGFyZ2V0X2FsaWFzPScnCnVzZV9hcXVhPScnCnVzZV90Y2x0az0n JwoKIyMgLS0tLS0tLS0tLS0tLS0tLS0tLSAjIwojIyBGaWxlIHN1YnN0aXR1dGlvbnMuICMjCiMj IC0tLS0tLS0tLS0tLS0tLS0tLS0gIyMKCnJfY2NfbG9fcnVsZXNfZnJhZz0nJwpyX2NjX3J1bGVz X2ZyYWc9JycKcl9jeHhfcnVsZXNfZnJhZz0nJwpyX29iamNfcnVsZXNfZnJhZz0nJwoKIyMgLS0t LS0tLS0tLS0gIyMKIyMgY29uZmRlZnMuaC4gIyMKIyMgLS0tLS0tLS0tLS0gIyMKCiNkZWZpbmUg UEFDS0FHRV9OQU1FICJSIgojZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiUiIKI2RlZmluZSBQQUNL QUdFX1ZFUlNJT04gIjIuNy4xIgojZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJSIDIuNy4xIgojZGVm aW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJyLWJ1Z3NAUi1wcm9qZWN0Lm9yZyIKI2RlZmluZSBQQUNL QUdFICJSIgojZGVmaW5lIFZFUlNJT04gIjIuNy4xIgojZGVmaW5lIFJfUExBVEZPUk0gIng4Nl82 NC11bmtub3duLWxpbnV4LWdudSIKI2RlZmluZSBSX0NQVSAieDg2XzY0IgojZGVmaW5lIFJfVkVO RE9SICJ1bmtub3duIgojZGVmaW5lIFJfT1MgImxpbnV4LWdudSIKI2RlZmluZSBVbml4IDEKI2Rl ZmluZSBSX0FSQ0ggIiIKI2RlZmluZSBIQVZFX1ZJU0lCSUxJVFlfQVRUUklCVVRFIDEKI2RlZmlu ZSBfR05VX1NPVVJDRSAxCiNkZWZpbmUgU1REQ19IRUFERVJTIDEKI2RlZmluZSBIQVZFX1NZU19U WVBFU19IIDEKI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQojZGVmaW5lIEhBVkVfU1RETElCX0gg MQojZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQojZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQojZGVmaW5l IEhBVkVfU1RSSU5HU19IIDEKI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQojZGVmaW5lIEhBVkVf U1RESU5UX0ggMQojZGVmaW5lIEhBVkVfVU5JU1REX0ggMQojZGVmaW5lIEhBVkVfRExGQ05fSCAx CiNkZWZpbmUgTFRfT0JKRElSICIubGlicy8iCiNkZWZpbmUgSEFWRV9MSUJNIDEKI2RlZmluZSBI QVZFX0xJQkRMIDEKI2RlZmluZSBIQVZFX1JFQURMSU5FX0hJU1RPUllfSCAxCiNkZWZpbmUgSEFW RV9SRUFETElORV9SRUFETElORV9IIDEKI2RlZmluZSBIQVZFX0xJQlJFQURMSU5FIDEKI2RlZmlu ZSBIQVZFX1JMX0NPTVBMRVRJT05fTUFUQ0hFUyAxCiNkZWZpbmUgU1REQ19IRUFERVJTIDEKI2Rl ZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQojZGVmaW5lIEhBVkVfRElSRU5UX0ggMQojZGVmaW5l IEhBVkVfU1lTX1dBSVRfSCAxCiNkZWZpbmUgSEFWRV9BUlBBX0lORVRfSCAxCiNkZWZpbmUgSEFW RV9ETEZDTl9IIDEKI2RlZmluZSBIQVZFX0VMRl9IIDEKI2RlZmluZSBIQVZFX0ZDTlRMX0ggMQoj ZGVmaW5lIEhBVkVfRlBVX0NPTlRST0xfSCAxCiNkZWZpbmUgSEFWRV9HTE9CX0ggMQojZGVmaW5l IEhBVkVfR1JQX0ggMQojZGVmaW5lIEhBVkVfTElNSVRTX0ggMQojZGVmaW5lIEhBVkVfTE9DQUxF X0ggMQojZGVmaW5lIEhBVkVfTkVUREJfSCAxCiNkZWZpbmUgSEFWRV9ORVRJTkVUX0lOX0ggMQoj ZGVmaW5lIEhBVkVfUFdEX0ggMQojZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKI2RlZmluZSBIQVZF X1NUUklOR1NfSCAxCiNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCiNkZWZpbmUgSEFWRV9TWVNf U0VMRUNUX0ggMQojZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKI2RlZmluZSBIQVZFX1NZU19T VEFUX0ggMQojZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQojZGVmaW5lIEhBVkVfU1lTX1RJ TUVfSCAxCiNkZWZpbmUgSEFWRV9TWVNfVElNRVNfSCAxCiNkZWZpbmUgSEFWRV9TWVNfVVRTTkFN RV9IIDEKI2RlZmluZSBIQVZFX1RJTUVfSCAxCiNkZWZpbmUgSEFWRV9VTklTVERfSCAxCiNkZWZp bmUgSEFWRV9FUlJOT19IIDEKI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQojZGVmaW5lIEhBVkVf U1REQVJHX0ggMQojZGVmaW5lIEhBVkVfU1RESU5UX0ggMQojZGVmaW5lIEhBVkVfU1RSSU5HX0gg MQojZGVmaW5lIEhBVkVfREVDTF9TSUdTRVRKTVAgMQojZGVmaW5lIEhBVkVfREVDTF9TSUdMT05H Sk1QIDEKI2RlZmluZSBIQVZFX1BPU0lYX1NFVEpNUCAxCiNkZWZpbmUgSEFWRV9HTElCQzIgMQoj ZGVmaW5lIFJFVFNJR1RZUEUgdm9pZAojZGVmaW5lIFJfU09DS0xFTl9UIAojZGVmaW5lIEhBVkVf U1RBQ0tfVCAxCiNkZWZpbmUgSEFWRV9JTlRQVFJfVCAxCiNkZWZpbmUgSEFWRV9VSU5UUFRSX1Qg MQojZGVmaW5lIFdPUkRTX0JJR0VORElBTiAxCiNkZWZpbmUgUl9JTkxJTkUgaW5saW5lCgpjb25m aWd1cmU6IGV4aXQgNzcK

------_=_NextPart_001_01C8EAD7.27542985--



R-devel_at_r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel Received on Thu 07 Aug 2008 - 12:50:09 GMT

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Sat 09 Aug 2008 - 06:36:15 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-devel. Please read the posting guide before posting to the list.

list of date sections of archive