From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 24680 invoked by alias); 13 Sep 2012 20:30:29 -0000 Received: (qmail 24666 invoked by uid 22791); 13 Sep 2012 20:30:27 -0000 X-SWARE-Spam-Status: No, hits=-1.9 required=5.0 tests=AWL,BAYES_00,RP_MATCHES_RCVD,TW_BF X-Spam-Check-By: sourceware.org Received: from ntmamx2.progress.com (HELO ntmamx2.progress.com) (131.239.30.132) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Thu, 13 Sep 2012 20:30:14 +0000 Received: from ntmamx2.progress.com (127.0.0.1) id ha91500171sd for ; Thu, 13 Sep 2012 16:30:07 -0400 (envelope-from ) Received: from progress.com ([172.16.3.168]) by ntmamx2.progress.com (SonicWALL 7.3.5.6369) with ESMTP (AIO); Thu, 13 Sep 2012 16:30:07 -0400 Received: from NTMAEXCAS02.bedford.progress.com (ntmaexcas02 [10.128.13.36]) by progress.com (8.13.8/8.13.8) with ESMTP id q8DKUCHV018651 for ; Thu, 13 Sep 2012 16:30:12 -0400 (EDT) Received: from pscmail01.bedford.progress.com ([fe80::38f4:9555:9f1e:4c56]) by NTMAEXCAS02.bedford.progress.com ([::1]) with mapi; Thu, 13 Sep 2012 16:30:12 -0400 From: Bill Smith To: "libffi-discuss@sourceware.org" Date: Thu, 13 Sep 2012 20:30:00 -0000 Subject: make install issue on hpux ia64 platform with libffi 3.0.11 Message-ID: x-ems-proccessed: +CmIlJ+kdV7Z341JADFd9w== x-ems-stamp: TjGvi4EASCq+gtZ2WUSy5w== Content-Type: multipart/mixed; boundary="_002_B9A06DC29C36B546B5A1911C2AAE93107842CDE5PSCMAIL01bedfor_" MIME-Version: 1.0 X-Mlf-Version: 7.3.5.6369 X-Mlf-UniqueId: o201209132030070260893 X-IsSubscribed: yes Mailing-List: contact libffi-discuss-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libffi-discuss-owner@sourceware.org X-SW-Source: 2012/txt/msg00241.txt.bz2 --_002_B9A06DC29C36B546B5A1911C2AAE93107842CDE5PSCMAIL01bedfor_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Content-length: 1495 I'm trying to build libffi on HPUX 11.31 IA64 platform. The build goes fin= e but I get some errors when I try to do "make install". Attached is my co= nfig.log. The errors are: test -z "/tools/hpuxia64/libffi-3.0.11/lib/libffi-3.0.11/include" || ../../= install-sh -c -d "/tools/hpuxia64/libffi-3.0.11/lib/libffi-3.0.11/include" ../install-sh -c -m 644 ffi.h ffitarget.h '/tools/hpuxia64/libffi-3.0.11/l= ib/libffi-3.0.11/include' /bin/sh: ../install-sh: not found. gmake[2]: *** [install-nodist_includesHEADERS] Error 127 test -z "/tools/hpuxia64/libffi-3.0.11/share/man/man3" || ../../install-sh = -c -d "/tools/hpuxia64/libffi-3.0.11/share/man/man3" ../install-sh -c -m 644 ../../man/ffi.3 ../../man/ffi_call.3 ../../man/ffi= _prep_cif.3 ../../man/ffi_prep_cif_var.3 '/tools/hpuxia64/libffi-3.0.11/sha= re/man/man3' /bin/sh: ../install-sh: not found. I was able to get past the errors by running install-sh by hand as follow: # add ./include/ in front of ffi.h & ffitarget.h ../install-sh -c -m 644 ./= include/ffi.h ./include/ffitarget.h '/tools/hpuxia64/libffi-3.0.11/lib/libf= fi-3.0.11/include' # remove extra ../ in front of ffi.3, ffi_call.3, ffi_prep_cif.3, ffi_prep_= cif_var.3 ../install-sh -c -m 644 ../man/ffi.3 ../man/ffi_call.3 ../man/ffi= _prep_cif.3 ../man/ffi_prep_cif_var.3 '/tools/hpuxia64/libffi-3.0.11/share/= man/man3' I was able to build and install on Linux x86 without any issues. It seems = that Linux uses /usr/bin/install instead of ../install-sh --_002_B9A06DC29C36B546B5A1911C2AAE93107842CDE5PSCMAIL01bedfor_ Content-Type: application/octet-stream; name="config.log" Content-Description: config.log Content-Disposition: attachment; filename="config.log"; size=44743; creation-date="Thu, 13 Sep 2012 16:20:50 GMT"; modification-date="Thu, 13 Sep 2012 16:20:36 GMT" Content-Transfer-Encoding: base64 Content-length: 60655 VGhpcyBmaWxlIGNvbnRhaW5zIGFueSBtZXNzYWdlcyBwcm9kdWNlZCBieSBj b21waWxlcnMgd2hpbGUKcnVubmluZyBjb25maWd1cmUsIHRvIGFpZCBkZWJ1 Z2dpbmcgaWYgY29uZmlndXJlIG1ha2VzIGEgbWlzdGFrZS4KCkl0IHdhcyBj cmVhdGVkIGJ5IGxpYmZmaSBjb25maWd1cmUgMy4wLjExLCB3aGljaCB3YXMK Z2VuZXJhdGVkIGJ5IEdOVSBBdXRvY29uZiAyLjY4LiAgSW52b2NhdGlvbiBj b21tYW5kIGxpbmUgd2FzCgogICQgLi4vY29uZmlndXJlIC0tcHJlZml4PS90 b29scy9ocHV4aWE2NC9saWJmZmktMy4wLjExCgojIyAtLS0tLS0tLS0gIyMK IyMgUGxhdGZvcm0uICMjCiMjIC0tLS0tLS0tLSAjIwoKaG9zdG5hbWUgPSB1 eGhwaXBmNgp1bmFtZSAtbSA9IGlhNjQKdW5hbWUgLXIgPSBCLjExLjMxCnVu YW1lIC1zID0gSFAtVVgKdW5hbWUgLXYgPSBVCgovdXNyL2Jpbi91bmFtZSAt cCA9IHVua25vd24KL2Jpbi91bmFtZSAtWCAgICAgPSB1bmtub3duCgovYmlu L2FyY2ggICAgICAgICAgICAgID0gdW5rbm93bgovdXNyL2Jpbi9hcmNoIC1r ICAgICAgID0gdW5rbm93bgovdXNyL2NvbnZleC9nZXRzeXNpbmZvID0gdW5r bm93bgovdXNyL2Jpbi9ob3N0aW5mbyAgICAgID0gdW5rbm93bgovYmluL21h Y2hpbmUgICAgICAgICAgID0gdW5rbm93bgovdXNyL2Jpbi9vc2xldmVsICAg ICAgID0gdW5rbm93bgovYmluL3VuaXZlcnNlICAgICAgICAgID0gdW5rbm93 bgoKUEFUSDogL3Vzci9sb2NhbC9iaW4KUEFUSDogL3Vzci9kdC9iaW4KUEFU SDogL2JpbgpQQVRIOiAvdXNyL2JpbgpQQVRIOiAvZXRjClBBVEg6IC91c3Iv Y29udHJpYi9iaW4KUEFUSDogL3Vzci9saWIKUEFUSDogL3Vzci9yZGwvc2MK UEFUSDogL3Vzci9yZGwvaHB1eC9iaW4KUEFUSDogL3Rvb2xzL2JpbgpQQVRI OiAvdG9vbHMvaHB1eC9iaW4KUEFUSDogL3Vzci9sb2NhbC9iaW4KUEFUSDog L3VzZXJzL2RldnAvdG9vbHNhZG0vYmluClBBVEg6IC4KUEFUSDogL3Vzci9h dHJpYS9iaW4KCgojIyAtLS0tLS0tLS0tLSAjIwojIyBDb3JlIHRlc3RzLiAj IwojIyAtLS0tLS0tLS0tLSAjIwoKY29uZmlndXJlOjI1NTA6IGNoZWNraW5n IGJ1aWxkIHN5c3RlbSB0eXBlCmNvbmZpZ3VyZToyNTY0OiByZXN1bHQ6IGlh NjQtaHAtaHB1eDExLjMxCmNvbmZpZ3VyZToyNTg0OiBjaGVja2luZyBob3N0 IHN5c3RlbSB0eXBlCmNvbmZpZ3VyZToyNTk3OiByZXN1bHQ6IGlhNjQtaHAt aHB1eDExLjMxCmNvbmZpZ3VyZToyNjE3OiBjaGVja2luZyB0YXJnZXQgc3lz dGVtIHR5cGUKY29uZmlndXJlOjI2MzA6IHJlc3VsdDogaWE2NC1ocC1ocHV4 MTEuMzEKY29uZmlndXJlOjI3MjI6IGNoZWNraW5nIGZvciBnc2VkCmNvbmZp Z3VyZToyNzUzOiByZXN1bHQ6IHNlZApjb25maWd1cmU6Mjc4MTogY2hlY2tp bmcgZm9yIGEgQlNELWNvbXBhdGlibGUgaW5zdGFsbApjb25maWd1cmU6Mjg0 OTogcmVzdWx0OiAuLi9pbnN0YWxsLXNoIC1jCmNvbmZpZ3VyZToyODYwOiBj aGVja2luZyB3aGV0aGVyIGJ1aWxkIGVudmlyb25tZW50IGlzIHNhbmUKY29u ZmlndXJlOjI5MTA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMDQ4OiBjaGVj a2luZyBmb3IgYSB0aHJlYWQtc2FmZSBta2RpciAtcApjb25maWd1cmU6MzA4 NzogcmVzdWx0OiAuLi9pbnN0YWxsLXNoIC1jIC1kCmNvbmZpZ3VyZTozMTAw OiBjaGVja2luZyBmb3IgZ2F3awpjb25maWd1cmU6MzExNjogZm91bmQgL3Rv b2xzL2hwdXgvYmluL2dhd2sKY29uZmlndXJlOjMxMjc6IHJlc3VsdDogZ2F3 awpjb25maWd1cmU6MzEzODogY2hlY2tpbmcgd2hldGhlciBtYWtlIHNldHMg JChNQUtFKQpjb25maWd1cmU6MzE2MDogcmVzdWx0OiB5ZXMKY29uZmlndXJl OjMyOTk6IGNoZWNraW5nIGZvciBnY2MKY29uZmlndXJlOjMzMTU6IGZvdW5k IC91c3IvbG9jYWwvYmluL2djYwpjb25maWd1cmU6MzMyNjogcmVzdWx0OiBn Y2MKY29uZmlndXJlOjM1NTU6IGNoZWNraW5nIGZvciBDIGNvbXBpbGVyIHZl cnNpb24KY29uZmlndXJlOjM1NjQ6IGdjYyAtLXZlcnNpb24gPiY1CmdjYyAo R0NDKSA0LjIuMwpDb3B5cmlnaHQgKEMpIDIwMDcgRnJlZSBTb2Z0d2FyZSBG b3VuZGF0aW9uLCBJbmMuClRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRo ZSBzb3VyY2UgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gIFRoZXJlIGlzIE5P CndhcnJhbnR5OyBub3QgZXZlbiBmb3IgTUVSQ0hBTlRBQklMSVRZIG9yIEZJ VE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLgoKY29uZmlndXJlOjM1 NzU6ICQ/ID0gMApjb25maWd1cmU6MzU2NDogZ2NjIC12ID4mNQpVc2luZyBi dWlsdC1pbiBzcGVjcy4KVGFyZ2V0OiBpYTY0LWhwLWhwdXgxMS4zMQpDb25m aWd1cmVkIHdpdGg6IC4uL2djYy9jb25maWd1cmUgClRocmVhZCBtb2RlbDog cG9zaXgKZ2NjIHZlcnNpb24gNC4yLjMKY29uZmlndXJlOjM1NzU6ICQ/ID0g MApjb25maWd1cmU6MzU2NDogZ2NjIC1WID4mNQpnY2M6ICctVicgb3B0aW9u IG11c3QgaGF2ZSBhcmd1bWVudApjb25maWd1cmU6MzU3NTogJD8gPSAxCmNv bmZpZ3VyZTozNTY0OiBnY2MgLXF2ZXJzaW9uID4mNQpnY2M6IHVucmVjb2du aXplZCBvcHRpb24gJy1xdmVyc2lvbicKZ2NjOiBubyBpbnB1dCBmaWxlcwpj b25maWd1cmU6MzU3NTogJD8gPSAxCmNvbmZpZ3VyZTozNTk1OiBjaGVja2lu ZyB3aGV0aGVyIHRoZSBDIGNvbXBpbGVyIHdvcmtzCmNvbmZpZ3VyZTozNjE3 OiBnY2MgICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZTozNjIxOiAkPyA9 IDAKY29uZmlndXJlOjM2Njk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozNjcy OiBjaGVja2luZyBmb3IgQyBjb21waWxlciBkZWZhdWx0IG91dHB1dCBmaWxl IG5hbWUKY29uZmlndXJlOjM2NzQ6IHJlc3VsdDogYS5vdXQKY29uZmlndXJl OjM2ODA6IGNoZWNraW5nIGZvciBzdWZmaXggb2YgZXhlY3V0YWJsZXMKY29u ZmlndXJlOjM2ODc6IGdjYyAtbyBjb25mdGVzdCAgICBjb25mdGVzdC5jICA+ JjUKY29uZmlndXJlOjM2OTE6ICQ/ID0gMApjb25maWd1cmU6MzcxMzogcmVz dWx0OiAKY29uZmlndXJlOjM3MzU6IGNoZWNraW5nIHdoZXRoZXIgd2UgYXJl IGNyb3NzIGNvbXBpbGluZwpjb25maWd1cmU6Mzc0MzogZ2NjIC1vIGNvbmZ0 ZXN0ICAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6Mzc0NzogJD8gPSAw CmNvbmZpZ3VyZTozNzU0OiAuL2NvbmZ0ZXN0CmNvbmZpZ3VyZTozNzU4OiAk PyA9IDAKY29uZmlndXJlOjM3NzM6IHJlc3VsdDogbm8KY29uZmlndXJlOjM3 Nzg6IGNoZWNraW5nIGZvciBzdWZmaXggb2Ygb2JqZWN0IGZpbGVzCmNvbmZp Z3VyZTozODAwOiBnY2MgLWMgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6 MzgwNDogJD8gPSAwCmNvbmZpZ3VyZTozODI1OiByZXN1bHQ6IG8KY29uZmln dXJlOjM4Mjk6IGNoZWNraW5nIHdoZXRoZXIgd2UgYXJlIHVzaW5nIHRoZSBH TlUgQyBjb21waWxlcgpjb25maWd1cmU6Mzg0ODogZ2NjIC1jICAgY29uZnRl c3QuYyA+JjUKY29uZmlndXJlOjM4NDg6ICQ/ID0gMApjb25maWd1cmU6Mzg1 NzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM4NjY6IGNoZWNraW5nIHdoZXRo ZXIgZ2NjIGFjY2VwdHMgLWcKY29uZmlndXJlOjM4ODY6IGdjYyAtYyAtZyAg Y29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjM4ODY6ICQ/ID0gMApjb25maWd1 cmU6MzkyNzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjM5NDQ6IGNoZWNraW5n IGZvciBnY2Mgb3B0aW9uIHRvIGFjY2VwdCBJU08gQzg5CmNvbmZpZ3VyZTo0 MDA4OiBnY2MgIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJl OjQwMDg6ICQ/ID0gMApjb25maWd1cmU6NDAyMTogcmVzdWx0OiBub25lIG5l ZWRlZApjb25maWd1cmU6NDA1MjogY2hlY2tpbmcgZm9yIHN0eWxlIG9mIGlu Y2x1ZGUgdXNlZCBieSBtYWtlCmNvbmZpZ3VyZTo0MDgwOiByZXN1bHQ6IEdO VQpjb25maWd1cmU6NDEwNTogY2hlY2tpbmcgZGVwZW5kZW5jeSBzdHlsZSBv ZiBnY2MKY29uZmlndXJlOjQyMTU6IHJlc3VsdDogZ2NjMwpjb25maWd1cmU6 NDI0NTogY2hlY2tpbmcgZGVwZW5kZW5jeSBzdHlsZSBvZiBnY2MKY29uZmln dXJlOjQzNTM6IHJlc3VsdDogZ2NjMwpjb25maWd1cmU6NDM2OTogY2hlY2tp bmcgd2hldGhlciBnY2MgYW5kIGNjIHVuZGVyc3RhbmQgLWMgYW5kIC1vIHRv Z2V0aGVyCmNvbmZpZ3VyZTo0NDAwOiBnY2MgLWMgY29uZnRlc3QuYyAtbyBj b25mdGVzdDIubyA+JjUKY29uZmlndXJlOjQ0MDQ6ICQ/ID0gMApjb25maWd1 cmU6NDQxMDogZ2NjIC1jIGNvbmZ0ZXN0LmMgLW8gY29uZnRlc3QyLm8gPiY1 CmNvbmZpZ3VyZTo0NDE0OiAkPyA9IDAKY29uZmlndXJlOjQ0MjU6IGNjIC1j IGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo0NDI5OiAkPyA9IDAKY29uZmln dXJlOjQ0Mzc6IGNjIC1jIGNvbmZ0ZXN0LmMgLW8gY29uZnRlc3QyLm8gPiY1 CmNvbmZpZ3VyZTo0NDQxOiAkPyA9IDAKY29uZmlndXJlOjQ0NDc6IGNjIC1j IGNvbmZ0ZXN0LmMgLW8gY29uZnRlc3QyLm8gPiY1CmNvbmZpZ3VyZTo0NDUx OiAkPyA9IDAKY29uZmlndXJlOjQ0Njk6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy ZTo0NTQwOiBjaGVja2luZyBob3cgdG8gcHJpbnQgc3RyaW5ncwpjb25maWd1 cmU6NDU2OTogcmVzdWx0OiBwcmludCAtcgpjb25maWd1cmU6NDU4ODogY2hl Y2tpbmcgZm9yIGEgc2VkIHRoYXQgZG9lcyBub3QgdHJ1bmNhdGUgb3V0cHV0 CmNvbmZpZ3VyZTo0NjUyOiByZXN1bHQ6IC9iaW4vc2VkCmNvbmZpZ3VyZTo0 NjcwOiBjaGVja2luZyBmb3IgZ3JlcCB0aGF0IGhhbmRsZXMgbG9uZyBsaW5l cyBhbmQgLWUKY29uZmlndXJlOjQ3Mjg6IHJlc3VsdDogL3Rvb2xzL2hwdXgv YmluL2dncmVwCmNvbmZpZ3VyZTo0NzMzOiBjaGVja2luZyBmb3IgZWdyZXAK Y29uZmlndXJlOjQ3OTU6IHJlc3VsdDogL3Rvb2xzL2hwdXgvYmluL2dncmVw IC1FCmNvbmZpZ3VyZTo0ODAwOiBjaGVja2luZyBmb3IgZmdyZXAKY29uZmln dXJlOjQ4NjI6IHJlc3VsdDogL3Rvb2xzL2hwdXgvYmluL2dncmVwIC1GCmNv bmZpZ3VyZTo0ODk3OiBjaGVja2luZyBmb3IgbGQgdXNlZCBieSBnY2MKY29u ZmlndXJlOjQ5NjQ6IHJlc3VsdDogL3Vzci9jY3MvYmluL2xkCmNvbmZpZ3Vy ZTo0OTcxOiBjaGVja2luZyBpZiB0aGUgbGlua2VyICgvdXNyL2Njcy9iaW4v bGQpIGlzIEdOVSBsZApjb25maWd1cmU6NDk4NjogcmVzdWx0OiBubwpjb25m aWd1cmU6NDk5ODogY2hlY2tpbmcgZm9yIEJTRC0gb3IgTVMtY29tcGF0aWJs ZSBuYW1lIGxpc3RlciAobm0pCmNvbmZpZ3VyZTo1MDQ3OiByZXN1bHQ6IC91 c3IvbG9jYWwvYmluL25tIC1CCmNvbmZpZ3VyZTo1MTc3OiBjaGVja2luZyB0 aGUgbmFtZSBsaXN0ZXIgKC91c3IvbG9jYWwvYmluL25tIC1CKSBpbnRlcmZh Y2UKY29uZmlndXJlOjUxODQ6IGdjYyAtYyAgIGNvbmZ0ZXN0LmMgPiY1CmNv bmZpZ3VyZTo1MTg3OiAvdXNyL2xvY2FsL2Jpbi9ubSAtQiAiY29uZnRlc3Qu byIKY29uZmlndXJlOjUxOTA6IG91dHB1dAowMDAwMDAwMCBTIHNvbWVfdmFy aWFibGUKY29uZmlndXJlOjUxOTc6IHJlc3VsdDogQlNEIG5tCmNvbmZpZ3Vy ZTo1MjAwOiBjaGVja2luZyB3aGV0aGVyIGxuIC1zIHdvcmtzCmNvbmZpZ3Vy ZTo1MjA0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NTIxMjogY2hlY2tpbmcg dGhlIG1heGltdW0gbGVuZ3RoIG9mIGNvbW1hbmQgbGluZSBhcmd1bWVudHMK Y29uZmlndXJlOjUzMzc6IHJlc3VsdDogMTUzNjAwMApjb25maWd1cmU6NTM1 NDogY2hlY2tpbmcgd2hldGhlciB0aGUgc2hlbGwgdW5kZXJzdGFuZHMgc29t ZSBYU0kgY29uc3RydWN0cwpjb25maWd1cmU6NTM2NDogcmVzdWx0OiB5ZXMK Y29uZmlndXJlOjUzNjg6IGNoZWNraW5nIHdoZXRoZXIgdGhlIHNoZWxsIHVu ZGVyc3RhbmRzICIrPSIKY29uZmlndXJlOjUzNzQ6IHJlc3VsdDogbm8KY29u ZmlndXJlOjU0MDk6IGNoZWNraW5nIGhvdyB0byBjb252ZXJ0IGlhNjQtaHAt aHB1eDExLjMxIGZpbGUgbmFtZXMgdG8gaWE2NC1ocC1ocHV4MTEuMzEgZm9y bWF0CmNvbmZpZ3VyZTo1NDQ5OiByZXN1bHQ6IGZ1bmNfY29udmVydF9maWxl X25vb3AKY29uZmlndXJlOjU0NTY6IGNoZWNraW5nIGhvdyB0byBjb252ZXJ0 IGlhNjQtaHAtaHB1eDExLjMxIGZpbGUgbmFtZXMgdG8gdG9vbGNoYWluIGZv cm1hdApjb25maWd1cmU6NTQ3NjogcmVzdWx0OiBmdW5jX2NvbnZlcnRfZmls ZV9ub29wCmNvbmZpZ3VyZTo1NDgzOiBjaGVja2luZyBmb3IgL3Vzci9jY3Mv YmluL2xkIG9wdGlvbiB0byByZWxvYWQgb2JqZWN0IGZpbGVzCmNvbmZpZ3Vy ZTo1NDkwOiByZXN1bHQ6IC1yCmNvbmZpZ3VyZTo1NTY0OiBjaGVja2luZyBm b3Igb2JqZHVtcApjb25maWd1cmU6NTU4MDogZm91bmQgL3Vzci9sb2NhbC9i aW4vb2JqZHVtcApjb25maWd1cmU6NTU5MTogcmVzdWx0OiBvYmpkdW1wCmNv bmZpZ3VyZTo1NjIzOiBjaGVja2luZyBob3cgdG8gcmVjb2duaXplIGRlcGVu ZGVudCBsaWJyYXJpZXMKY29uZmlndXJlOjU4MjU6IHJlc3VsdDogZmlsZV9t YWdpYyAoc1swLTldWzAtOV1bMC05XXxFTEYtWzAtOV1bMC05XSkgc2hhcmVk IG9iamVjdCBmaWxlIC0gSUE2NApjb25maWd1cmU6NTkxMDogY2hlY2tpbmcg Zm9yIGRsbHRvb2wKY29uZmlndXJlOjU5NDA6IHJlc3VsdDogbm8KY29uZmln dXJlOjU5NzA6IGNoZWNraW5nIGhvdyB0byBhc3NvY2lhdGUgcnVudGltZSBh bmQgbGluayBsaWJyYXJpZXMKY29uZmlndXJlOjU5OTc6IHJlc3VsdDogcHJp bnQgLXIgLS0KY29uZmlndXJlOjYwNTg6IGNoZWNraW5nIGZvciBhcgpjb25m aWd1cmU6NjA3NDogZm91bmQgL3Vzci9sb2NhbC9iaW4vYXIKY29uZmlndXJl OjYwODU6IHJlc3VsdDogYXIKY29uZmlndXJlOjYxMjI6IGNoZWNraW5nIGZv ciBhcmNoaXZlciBARklMRSBzdXBwb3J0CmNvbmZpZ3VyZTo2MTM5OiBnY2Mg LWMgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6NjEzOTogJD8gPSAwCmNv bmZpZ3VyZTo2MTQyOiBhciBjcnUgbGliY29uZnRlc3QuYSBAY29uZnRlc3Qu bHN0ID4mNQpjb25maWd1cmU6NjE0NTogJD8gPSAwCmNvbmZpZ3VyZTo2MTUw OiBhciBjcnUgbGliY29uZnRlc3QuYSBAY29uZnRlc3QubHN0ID4mNQphcjog Y29uZnRlc3QubzogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpjb25maWd1 cmU6NjE1MzogJD8gPSAxCmNvbmZpZ3VyZTo2MTY1OiByZXN1bHQ6IEAKY29u ZmlndXJlOjYyMjM6IGNoZWNraW5nIGZvciBzdHJpcApjb25maWd1cmU6NjIz OTogZm91bmQgL2Jpbi9zdHJpcApjb25maWd1cmU6NjI1MDogcmVzdWx0OiBz dHJpcApjb25maWd1cmU6NjMyMjogY2hlY2tpbmcgZm9yIHJhbmxpYgpjb25m aWd1cmU6NjMzODogZm91bmQgL3Vzci9sb2NhbC9iaW4vcmFubGliCmNvbmZp Z3VyZTo2MzQ5OiByZXN1bHQ6IHJhbmxpYgpjb25maWd1cmU6NjQ1MTogY2hl Y2tpbmcgY29tbWFuZCB0byBwYXJzZSAvdXNyL2xvY2FsL2Jpbi9ubSAtQiBv dXRwdXQgZnJvbSBnY2Mgb2JqZWN0CmNvbmZpZ3VyZTo2NTcwOiBnY2MgLWMg ICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6NjU3MzogJD8gPSAwCmNvbmZp Z3VyZTo2NTc3OiAvdXNyL2xvY2FsL2Jpbi9ubSAtQiBjb25mdGVzdC5vIFx8 IHNlZCAtbiAtZSAncy9eLipbIF1cKFtBQkNER0lSU1RXXVtBQkNER0lSU1RX XSpcKVsgXVsgXSpcKFtfQS1aYS16XVtfQS1aYS16MC05XSpcKSQvXDEgXDIg XDIvcCcgfCBzZWQgJy8gX19nbnVfbHRvL2QnIFw+IGNvbmZ0ZXN0Lm5tCmNv bmZpZ3VyZTo2NTgwOiAkPyA9IDAKY29uZmlndXJlOjY2NDY6IGdjYyAtbyBj b25mdGVzdCAgICBjb25mdGVzdC5jIGNvbmZ0c3RtLm8gPiY1CmNvbmZpZ3Vy ZTo2NjQ5OiAkPyA9IDAKY29uZmlndXJlOjY2ODc6IHJlc3VsdDogb2sKY29u ZmlndXJlOjY3MjQ6IGNoZWNraW5nIGZvciBzeXNyb290CmNvbmZpZ3VyZTo2 NzU0OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo2Nzc0OiBnY2MgLWMgICBjb25m dGVzdC5jID4mNQpjb25maWd1cmU6Njc3NzogJD8gPSAwCmNvbmZpZ3VyZTo3 MDA0OiBjaGVja2luZyBmb3IgbXQKY29uZmlndXJlOjcwMjA6IGZvdW5kIC9i aW4vbXQKY29uZmlndXJlOjcwMzE6IHJlc3VsdDogbXQKY29uZmlndXJlOjcw NTQ6IGNoZWNraW5nIGlmIG10IGlzIGEgbWFuaWZlc3QgdG9vbApjb25maWd1 cmU6NzA2MDogbXQgJy0/JwptdDogdW5rbm93biBjb21tYW5kICItPyIKY29u ZmlndXJlOjcwNjg6IHJlc3VsdDogbm8KY29uZmlndXJlOjc3MDA6IGNoZWNr aW5nIGhvdyB0byBydW4gdGhlIEMgcHJlcHJvY2Vzc29yCmNvbmZpZ3VyZTo3 NzMxOiBnY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjc3MzE6ICQ/ID0g MApjb25maWd1cmU6Nzc0NTogZ2NjIC1FICBjb25mdGVzdC5jCmNvbmZ0ZXN0 LmM6MTE6Mjg6IGVycm9yOiBhY19ub25leGlzdGVudC5oOiBObyBzdWNoIGZp bGUgb3IgZGlyZWN0b3J5CmNvbmZpZ3VyZTo3NzQ1OiAkPyA9IDEKY29uZmln dXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8 ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJsaWJmZmkiCnwgI2RlZmluZSBQQUNL QUdFX1RBUk5BTUUgImxpYmZmaSIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lP TiAiMy4wLjExIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgImxpYmZmaSAz LjAuMTEiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiaHR0cDovL2dp dGh1Yi5jb20vYXRncmVlbi9saWJmZmkvaXNzdWVzIgp8ICNkZWZpbmUgUEFD S0FHRV9VUkwgIiIKfCAjZGVmaW5lIFBBQ0tBR0UgImxpYmZmaSIKfCAjZGVm aW5lIFZFUlNJT04gIjMuMC4xMSIKfCAvKiBlbmQgY29uZmRlZnMuaC4gICov CnwgI2luY2x1ZGUgPGFjX25vbmV4aXN0ZW50Lmg+CmNvbmZpZ3VyZTo3Nzcw OiByZXN1bHQ6IGdjYyAtRQpjb25maWd1cmU6Nzc5MDogZ2NjIC1FICBjb25m dGVzdC5jCmNvbmZpZ3VyZTo3NzkwOiAkPyA9IDAKY29uZmlndXJlOjc4MDQ6 IGdjYyAtRSAgY29uZnRlc3QuYwpjb25mdGVzdC5jOjExOjI4OiBlcnJvcjog YWNfbm9uZXhpc3RlbnQuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpj b25maWd1cmU6NzgwNDogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dy YW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0Vf TkFNRSAibGliZmZpIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJsaWJm ZmkiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMuMC4xMSIKfCAjZGVm aW5lIFBBQ0tBR0VfU1RSSU5HICJsaWJmZmkgMy4wLjExIgp8ICNkZWZpbmUg UEFDS0FHRV9CVUdSRVBPUlQgImh0dHA6Ly9naXRodWIuY29tL2F0Z3JlZW4v bGliZmZpL2lzc3VlcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICIiCnwgI2Rl ZmluZSBQQUNLQUdFICJsaWJmZmkiCnwgI2RlZmluZSBWRVJTSU9OICIzLjAu MTEiCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxhY19u b25leGlzdGVudC5oPgpjb25maWd1cmU6NzgzMzogY2hlY2tpbmcgZm9yIEFO U0kgQyBoZWFkZXIgZmlsZXMKY29uZmlndXJlOjc4NTM6IGdjYyAtYyAgIGNv bmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo3ODUzOiAkPyA9IDAKY29uZmlndXJl Ojc5MjY6IGdjYyAtbyBjb25mdGVzdCAgICBjb25mdGVzdC5jICA+JjUKY29u ZmlndXJlOjc5MjY6ICQ/ID0gMApjb25maWd1cmU6NzkyNjogLi9jb25mdGVz dApjb25maWd1cmU6NzkyNjogJD8gPSAwCmNvbmZpZ3VyZTo3OTM3OiByZXN1 bHQ6IHllcwpjb25maWd1cmU6Nzk1MDogY2hlY2tpbmcgZm9yIHN5cy90eXBl cy5oCmNvbmZpZ3VyZTo3OTUwOiBnY2MgLWMgICBjb25mdGVzdC5jID4mNQpj b25maWd1cmU6Nzk1MDogJD8gPSAwCmNvbmZpZ3VyZTo3OTUwOiByZXN1bHQ6 IHllcwpjb25maWd1cmU6Nzk1MDogY2hlY2tpbmcgZm9yIHN5cy9zdGF0LmgK Y29uZmlndXJlOjc5NTA6IGdjYyAtYyAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZp Z3VyZTo3OTUwOiAkPyA9IDAKY29uZmlndXJlOjc5NTA6IHJlc3VsdDogeWVz CmNvbmZpZ3VyZTo3OTUwOiBjaGVja2luZyBmb3Igc3RkbGliLmgKY29uZmln dXJlOjc5NTA6IGdjYyAtYyAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo3 OTUwOiAkPyA9IDAKY29uZmlndXJlOjc5NTA6IHJlc3VsdDogeWVzCmNvbmZp Z3VyZTo3OTUwOiBjaGVja2luZyBmb3Igc3RyaW5nLmgKY29uZmlndXJlOjc5 NTA6IGdjYyAtYyAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo3OTUwOiAk PyA9IDAKY29uZmlndXJlOjc5NTA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo3 OTUwOiBjaGVja2luZyBmb3IgbWVtb3J5LmgKY29uZmlndXJlOjc5NTA6IGdj YyAtYyAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo3OTUwOiAkPyA9IDAK Y29uZmlndXJlOjc5NTA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo3OTUwOiBj aGVja2luZyBmb3Igc3RyaW5ncy5oCmNvbmZpZ3VyZTo3OTUwOiBnY2MgLWMg ICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6Nzk1MDogJD8gPSAwCmNvbmZp Z3VyZTo3OTUwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6Nzk1MDogY2hlY2tp bmcgZm9yIGludHR5cGVzLmgKY29uZmlndXJlOjc5NTA6IGdjYyAtYyAgIGNv bmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo3OTUwOiAkPyA9IDAKY29uZmlndXJl Ojc5NTA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo3OTUwOiBjaGVja2luZyBm b3Igc3RkaW50LmgKY29uZmlndXJlOjc5NTA6IGdjYyAtYyAgIGNvbmZ0ZXN0 LmMgPiY1CmNvbmZpZ3VyZTo3OTUwOiAkPyA9IDAKY29uZmlndXJlOjc5NTA6 IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo3OTUwOiBjaGVja2luZyBmb3IgdW5p c3RkLmgKY29uZmlndXJlOjc5NTA6IGdjYyAtYyAgIGNvbmZ0ZXN0LmMgPiY1 CmNvbmZpZ3VyZTo3OTUwOiAkPyA9IDAKY29uZmlndXJlOjc5NTA6IHJlc3Vs dDogeWVzCmNvbmZpZ3VyZTo3OTY0OiBjaGVja2luZyBmb3IgZGxmY24uaApj b25maWd1cmU6Nzk2NDogZ2NjIC1jICAgY29uZnRlc3QuYyA+JjUKY29uZmln dXJlOjc5NjQ6ICQ/ID0gMApjb25maWd1cmU6Nzk2NDogcmVzdWx0OiB5ZXMK Y29uZmlndXJlOjgxNTE6IGNoZWNraW5nIGZvciBvYmpkaXIKY29uZmlndXJl OjgxNjY6IHJlc3VsdDogLmxpYnMKY29uZmlndXJlOjg0Mzc6IGNoZWNraW5n IGlmIGdjYyBzdXBwb3J0cyAtZm5vLXJ0dGkgLWZuby1leGNlcHRpb25zCmNv bmZpZ3VyZTo4NDU1OiBnY2MgLWMgICAtZm5vLXJ0dGkgLWZuby1leGNlcHRp b25zIGNvbmZ0ZXN0LmMgPiY1CmNjMTogd2FybmluZzogY29tbWFuZCBsaW5l IG9wdGlvbiAiLWZuby1ydHRpIiBpcyB2YWxpZCBmb3IgQysrL09iakMrKyBi dXQgbm90IGZvciBDCmNvbmZpZ3VyZTo4NDU5OiAkPyA9IDAKY29uZmlndXJl Ojg0NzI6IHJlc3VsdDogbm8KY29uZmlndXJlOjg3ODI6IGNoZWNraW5nIGZv ciBnY2Mgb3B0aW9uIHRvIHByb2R1Y2UgUElDCmNvbmZpZ3VyZTo4Nzg5OiBy ZXN1bHQ6IC1mUElDIC1EUElDCmNvbmZpZ3VyZTo4Nzk3OiBjaGVja2luZyBp ZiBnY2MgUElDIGZsYWcgLWZQSUMgLURQSUMgd29ya3MKY29uZmlndXJlOjg4 MTU6IGdjYyAtYyAgIC1mUElDIC1EUElDIC1EUElDIGNvbmZ0ZXN0LmMgPiY1 CmNvbmZpZ3VyZTo4ODE5OiAkPyA9IDAKY29uZmlndXJlOjg4MzI6IHJlc3Vs dDogeWVzCmNvbmZpZ3VyZTo4ODYxOiBjaGVja2luZyBpZiBnY2Mgc3RhdGlj IGZsYWcgLXN0YXRpYyB3b3Jrcwpjb25maWd1cmU6ODg4OTogcmVzdWx0OiBu bwpjb25maWd1cmU6ODkwNDogY2hlY2tpbmcgaWYgZ2NjIHN1cHBvcnRzIC1j IC1vIGZpbGUubwpjb25maWd1cmU6ODkyNTogZ2NjIC1jICAgLW8gb3V0L2Nv bmZ0ZXN0Mi5vIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo4OTI5OiAkPyA9 IDAKY29uZmlndXJlOjg5NTE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo4OTU5 OiBjaGVja2luZyBpZiBnY2Mgc3VwcG9ydHMgLWMgLW8gZmlsZS5vCmNvbmZp Z3VyZTo5MDA2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6OTAzOTogY2hlY2tp bmcgd2hldGhlciB0aGUgZ2NjIGxpbmtlciAoL3Vzci9jY3MvYmluL2xkKSBz dXBwb3J0cyBzaGFyZWQgbGlicmFyaWVzCmNvbmZpZ3VyZToxMDE5NzogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjEwMjM0OiBjaGVja2luZyB3aGV0aGVyIC1s YyBzaG91bGQgYmUgZXhwbGljaXRseSBsaW5rZWQgaW4KY29uZmlndXJlOjEw MjQyOiBnY2MgLWMgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MTAyNDU6 ICQ/ID0gMApjb25maWd1cmU6MTAyNjA6IGdjYyAtc2hhcmVkICAtZlBJQyAt RFBJQyAtV2wsK2ggLVdsLGNvbmZ0ZXN0IC1XbCwrbm9kZWZhdWx0cnBhdGgg LW8gY29uZnRlc3QgY29uZnRlc3QubyAgLXYgMlw+XCYxIFx8IC90b29scy9o cHV4L2Jpbi9nZ3JlcCAgLWxjICBcPi9kZXYvbnVsbCAyXD5cJjEKY29uZmln dXJlOjEwMjYzOiAkPyA9IDEKY29uZmlndXJlOjEwMjc3OiByZXN1bHQ6IHll cwpjb25maWd1cmU6MTA0NDI6IGNoZWNraW5nIGR5bmFtaWMgbGlua2VyIGNo YXJhY3RlcmlzdGljcwpjb25maWd1cmU6MTExNzg6IHJlc3VsdDogaHB1eDEx LjMxIGRsZC5zbwpjb25maWd1cmU6MTEyODU6IGNoZWNraW5nIGhvdyB0byBo YXJkY29kZSBsaWJyYXJ5IHBhdGhzIGludG8gcHJvZ3JhbXMKY29uZmlndXJl OjExMzEwOiByZXN1bHQ6IGltbWVkaWF0ZQpjb25maWd1cmU6MTE4NTA6IGNo ZWNraW5nIHdoZXRoZXIgc3RyaXBwaW5nIGxpYnJhcmllcyBpcyBwb3NzaWJs ZQpjb25maWd1cmU6MTE4NzI6IHJlc3VsdDogbm8KY29uZmlndXJlOjExODkw OiBjaGVja2luZyBpZiBsaWJ0b29sIHN1cHBvcnRzIHNoYXJlZCBsaWJyYXJp ZXMKY29uZmlndXJlOjExODkyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTE4 OTU6IGNoZWNraW5nIHdoZXRoZXIgdG8gYnVpbGQgc2hhcmVkIGxpYnJhcmll cwpjb25maWd1cmU6MTE5MTY6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMTkx OTogY2hlY2tpbmcgd2hldGhlciB0byBidWlsZCBzdGF0aWMgbGlicmFyaWVz CmNvbmZpZ3VyZToxMTkyMzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjExOTYw OiBjaGVja2luZyBmb3IgQyBjb21waWxlciB2ZW5kb3IKY29uZmlndXJlOjEy MDA1OiBnY2MgLWMgICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOiBJbiBm dW5jdGlvbiAnbWFpbic6CmNvbmZ0ZXN0LmM6Mjk6IGVycm9yOiAndGhpc2lz YW5lcnJvcicgdW5kZWNsYXJlZCAoZmlyc3QgdXNlIGluIHRoaXMgZnVuY3Rp b24pCmNvbmZ0ZXN0LmM6Mjk6IGVycm9yOiAoRWFjaCB1bmRlY2xhcmVkIGlk ZW50aWZpZXIgaXMgcmVwb3J0ZWQgb25seSBvbmNlCmNvbmZ0ZXN0LmM6Mjk6 IGVycm9yOiBmb3IgZWFjaCBmdW5jdGlvbiBpdCBhcHBlYXJzIGluLikKY29u ZmlndXJlOjEyMDA1OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3Jh bSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9O QU1FICJsaWJmZmkiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImxpYmZm aSIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMy4wLjExIgp8ICNkZWZp bmUgUEFDS0FHRV9TVFJJTkcgImxpYmZmaSAzLjAuMTEiCnwgI2RlZmluZSBQ QUNLQUdFX0JVR1JFUE9SVCAiaHR0cDovL2dpdGh1Yi5jb20vYXRncmVlbi9s aWJmZmkvaXNzdWVzIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgIiIKfCAjZGVm aW5lIFBBQ0tBR0UgImxpYmZmaSIKfCAjZGVmaW5lIFZFUlNJT04gIjMuMC4x MSIKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZ U19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2Rl ZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0gg MQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NU UklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZp bmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEK fCAjZGVmaW5lIEhBVkVfRExGQ05fSCAxCnwgI2RlZmluZSBMVF9PQkpESVIg Ii5saWJzLyIKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgCnwgaW50Cnwg bWFpbiAoKQp8IHsKfCAKfCAgICAgICAjaWYgIShkZWZpbmVkKF9fSUNDKSB8 fCBkZWZpbmVkKF9fRUNDKSB8fCBkZWZpbmVkKF9fSU5URUxfQ09NUElMRVIp KQp8ICAgICAgICAgdGhpc2lzYW5lcnJvcjsKfCAgICAgICAjZW5kaWYKfCAK fCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjEyMDA1OiBnY2Mg LWMgICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiAn bWFpbic6CmNvbmZ0ZXN0LmM6Mjk6IGVycm9yOiAndGhpc2lzYW5lcnJvcicg dW5kZWNsYXJlZCAoZmlyc3QgdXNlIGluIHRoaXMgZnVuY3Rpb24pCmNvbmZ0 ZXN0LmM6Mjk6IGVycm9yOiAoRWFjaCB1bmRlY2xhcmVkIGlkZW50aWZpZXIg aXMgcmVwb3J0ZWQgb25seSBvbmNlCmNvbmZ0ZXN0LmM6Mjk6IGVycm9yOiBm b3IgZWFjaCBmdW5jdGlvbiBpdCBhcHBlYXJzIGluLikKY29uZmlndXJlOjEy MDA1OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6Cnwg LyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJsaWJm ZmkiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImxpYmZmaSIKfCAjZGVm aW5lIFBBQ0tBR0VfVkVSU0lPTiAiMy4wLjExIgp8ICNkZWZpbmUgUEFDS0FH RV9TVFJJTkcgImxpYmZmaSAzLjAuMTEiCnwgI2RlZmluZSBQQUNLQUdFX0JV R1JFUE9SVCAiaHR0cDovL2dpdGh1Yi5jb20vYXRncmVlbi9saWJmZmkvaXNz dWVzIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgIiIKfCAjZGVmaW5lIFBBQ0tB R0UgImxpYmZmaSIKfCAjZGVmaW5lIFZFUlNJT04gIjMuMC4xMSIKfCAjZGVm aW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19I IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZF X1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZp bmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAx CnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9T VERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5l IEhBVkVfRExGQ05fSCAxCnwgI2RlZmluZSBMVF9PQkpESVIgIi5saWJzLyIK fCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgCnwgaW50CnwgbWFpbiAoKQp8 IHsKfCAKfCAgICAgICAjaWYgIShkZWZpbmVkKF9feGxjX18pIHx8IGRlZmlu ZWQoX194bENfXykgfHwgZGVmaW5lZChfX0lCTUNfXykgfHwgZGVmaW5lZChf X0lCTUNQUF9fKSkKfCAgICAgICAgIHRoaXNpc2FuZXJyb3I7CnwgICAgICAg I2VuZGlmCnwgCnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZTox MjAwNTogZ2NjIC1jICAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzogSW4g ZnVuY3Rpb24gJ21haW4nOgpjb25mdGVzdC5jOjI5OiBlcnJvcjogJ3RoaXNp c2FuZXJyb3InIHVuZGVjbGFyZWQgKGZpcnN0IHVzZSBpbiB0aGlzIGZ1bmN0 aW9uKQpjb25mdGVzdC5jOjI5OiBlcnJvcjogKEVhY2ggdW5kZWNsYXJlZCBp ZGVudGlmaWVyIGlzIHJlcG9ydGVkIG9ubHkgb25jZQpjb25mdGVzdC5jOjI5 OiBlcnJvcjogZm9yIGVhY2ggZnVuY3Rpb24gaXQgYXBwZWFycyBpbi4pCmNv bmZpZ3VyZToxMjAwNTogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dy YW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0Vf TkFNRSAibGliZmZpIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJsaWJm ZmkiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMuMC4xMSIKfCAjZGVm aW5lIFBBQ0tBR0VfU1RSSU5HICJsaWJmZmkgMy4wLjExIgp8ICNkZWZpbmUg UEFDS0FHRV9CVUdSRVBPUlQgImh0dHA6Ly9naXRodWIuY29tL2F0Z3JlZW4v bGliZmZpL2lzc3VlcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICIiCnwgI2Rl ZmluZSBQQUNLQUdFICJsaWJmZmkiCnwgI2RlZmluZSBWRVJTSU9OICIzLjAu MTEiCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9T WVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19I IDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9T VFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVm aW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAx CnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgTFRfT0JKRElS ICIubGlicy8iCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8IAp8IGludAp8 IG1haW4gKCkKfCB7CnwgCnwgICAgICAgI2lmICEoZGVmaW5lZChfX1BBVEhD Q19fKSB8fCBkZWZpbmVkKF9fUEFUSFNDQUxFX18pKQp8ICAgICAgICAgdGhp c2lzYW5lcnJvcjsKfCAgICAgICAjZW5kaWYKfCAKfCAgIDsKfCAgIHJldHVy biAwOwp8IH0KY29uZmlndXJlOjEyMDA1OiBnY2MgLWMgICBjb25mdGVzdC5j ID4mNQpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiAnbWFpbic6CmNvbmZ0ZXN0 LmM6Mjk6IGVycm9yOiAndGhpc2lzYW5lcnJvcicgdW5kZWNsYXJlZCAoZmly c3QgdXNlIGluIHRoaXMgZnVuY3Rpb24pCmNvbmZ0ZXN0LmM6Mjk6IGVycm9y OiAoRWFjaCB1bmRlY2xhcmVkIGlkZW50aWZpZXIgaXMgcmVwb3J0ZWQgb25s eSBvbmNlCmNvbmZ0ZXN0LmM6Mjk6IGVycm9yOiBmb3IgZWFjaCBmdW5jdGlv biBpdCBhcHBlYXJzIGluLikKY29uZmlndXJlOjEyMDA1OiAkPyA9IDEKY29u ZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAq Lwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJsaWJmZmkiCnwgI2RlZmluZSBQ QUNLQUdFX1RBUk5BTUUgImxpYmZmaSIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVS U0lPTiAiMy4wLjExIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgImxpYmZm aSAzLjAuMTEiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiaHR0cDov L2dpdGh1Yi5jb20vYXRncmVlbi9saWJmZmkvaXNzdWVzIgp8ICNkZWZpbmUg UEFDS0FHRV9VUkwgIiIKfCAjZGVmaW5lIFBBQ0tBR0UgImxpYmZmaSIKfCAj ZGVmaW5lIFZFUlNJT04gIjMuMC4xMSIKfCAjZGVmaW5lIFNURENfSEVBREVS UyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhB VkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAj ZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllf SCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZF X0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2Rl ZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRExGQ05fSCAx CnwgI2RlZmluZSBMVF9PQkpESVIgIi5saWJzLyIKfCAvKiBlbmQgY29uZmRl ZnMuaC4gICovCnwgCnwgaW50CnwgbWFpbiAoKQp8IHsKfCAKfCAgICAgICAj aWYgIShkZWZpbmVkKF9fY2xhbmdfXykpCnwgICAgICAgICB0aGlzaXNhbmVy cm9yOwp8ICAgICAgICNlbmRpZgp8IAp8ICAgOwp8ICAgcmV0dXJuIDA7Cnwg fQpjb25maWd1cmU6MTIwMDU6IGdjYyAtYyAgIGNvbmZ0ZXN0LmMgPiY1CmNv bmZpZ3VyZToxMjAwNTogJD8gPSAwCmNvbmZpZ3VyZToxMjAxMzogcmVzdWx0 OiBnbnUKY29uZmlndXJlOjEyMjg0OiBjaGVja2luZyB3aGV0aGVyIEMgY29t cGlsZXIgYWNjZXB0cyAtbWFsaWduLWRvdWJsZQpjb25maWd1cmU6MTIzMDM6 IGdjYyAtYyAtTzMgLWZvbWl0LWZyYW1lLXBvaW50ZXIgIC1tYWxpZ24tZG91 YmxlICBjb25mdGVzdC5jID4mNQpjYzE6IGVycm9yOiB1bnJlY29nbml6ZWQg Y29tbWFuZCBsaW5lIG9wdGlvbiAiLW1hbGlnbi1kb3VibGUiCmNvbmZpZ3Vy ZToxMjMwMzogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2Fz Ogp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAi bGliZmZpIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJsaWJmZmkiCnwg I2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMuMC4xMSIKfCAjZGVmaW5lIFBB Q0tBR0VfU1RSSU5HICJsaWJmZmkgMy4wLjExIgp8ICNkZWZpbmUgUEFDS0FH RV9CVUdSRVBPUlQgImh0dHA6Ly9naXRodWIuY29tL2F0Z3JlZW4vbGliZmZp L2lzc3VlcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICIiCnwgI2RlZmluZSBQ QUNLQUdFICJsaWJmZmkiCnwgI2RlZmluZSBWRVJTSU9OICIzLjAuMTEiCnwg I2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQ RVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUg SEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAj ZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdT X0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhB VkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2Rl ZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgTFRfT0JKRElSICIubGli cy8iCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8IAp8IGludAp8IG1haW4g KCkKfCB7CnwgCnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZTox MjMxMTogcmVzdWx0OiBubwpjb25maWd1cmU6MTIzMjE6IGNoZWNraW5nIHdo ZXRoZXIgQyBjb21waWxlciBhY2NlcHRzIC1mc3RyaWN0LWFsaWFzaW5nCmNv bmZpZ3VyZToxMjM0MDogZ2NjIC1jIC1PMyAtZm9taXQtZnJhbWUtcG9pbnRl ciAgLWZzdHJpY3QtYWxpYXNpbmcgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3Vy ZToxMjM0MDogJD8gPSAwCmNvbmZpZ3VyZToxMjM0ODogcmVzdWx0OiB5ZXMK Y29uZmlndXJlOjEyMzU4OiBjaGVja2luZyB3aGV0aGVyIEMgY29tcGlsZXIg YWNjZXB0cyAtZmZhc3QtbWF0aApjb25maWd1cmU6MTIzNzc6IGdjYyAtYyAt TzMgLWZvbWl0LWZyYW1lLXBvaW50ZXIgLWZzdHJpY3QtYWxpYXNpbmcgIC1m ZmFzdC1tYXRoICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MTIzNzc6ICQ/ ID0gMApjb25maWd1cmU6MTIzODU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTox MjQwNjogY2hlY2tpbmcgZm9yIGdjYyBhcmNoaXRlY3R1cmUgZmxhZwpjb25m aWd1cmU6MTI0MDg6IHJlc3VsdDogCmNvbmZpZ3VyZToxMjc4NDogY2hlY2tp bmcgZm9yIGdjYyBhcmNoaXRlY3R1cmUgZmxhZwpjb25maWd1cmU6MTI3ODY6 IHJlc3VsdDogdW5rbm93bgpjb25maWd1cmU6MTI4MDk6IGNoZWNraW5nIHdo ZXRoZXIgQyBjb21waWxlciBhY2NlcHRzIC1PMyAtZm9taXQtZnJhbWUtcG9p bnRlciAtZnN0cmljdC1hbGlhc2luZyAtZmZhc3QtbWF0aApjb25maWd1cmU6 MTI4Mjg6IGdjYyAtYyAtTzMgLWZvbWl0LWZyYW1lLXBvaW50ZXIgLWZzdHJp Y3QtYWxpYXNpbmcgLWZmYXN0LW1hdGggIC1PMyAtZm9taXQtZnJhbWUtcG9p bnRlciAtZnN0cmljdC1hbGlhc2luZyAtZmZhc3QtbWF0aCAgY29uZnRlc3Qu YyA+JjUKY29uZmlndXJlOjEyODI4OiAkPyA9IDAKY29uZmlndXJlOjEyODM3 OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTI4NjM6IGNoZWNraW5nIENGTEFH UyBmb3IgbWF4aW11bSB3YXJuaW5ncwpjb25maWd1cmU6MTI4ODM6IGdjYyAt YyAtTzMgLWZvbWl0LWZyYW1lLXBvaW50ZXIgLWZzdHJpY3QtYWxpYXNpbmcg LWZmYXN0LW1hdGggLXdhcm4gYWxsICAtd2FybiBhbGwgIGNvbmZ0ZXN0LmMg PiY1CmdjYzogYWxsOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CmdjYzog YWxsOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CmdjYzogdW5yZWNvZ25p emVkIG9wdGlvbiAnLXdhcm4nCmdjYzogdW5yZWNvZ25pemVkIG9wdGlvbiAn LXdhcm4nCmNvbmZpZ3VyZToxMjg4MzogJD8gPSAxCmNvbmZpZ3VyZTogZmFp bGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5l IFBBQ0tBR0VfTkFNRSAibGliZmZpIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJO QU1FICJsaWJmZmkiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMuMC4x MSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJsaWJmZmkgMy4wLjExIgp8 ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImh0dHA6Ly9naXRodWIuY29t L2F0Z3JlZW4vbGliZmZpL2lzc3VlcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJM ICIiCnwgI2RlZmluZSBQQUNLQUdFICJsaWJmZmkiCnwgI2RlZmluZSBWRVJT SU9OICIzLjAuMTEiCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZp bmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFU X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZF X1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZp bmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19I IDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9V TklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUg TFRfT0JKRElSICIubGlicy8iCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8 IAp8IGludAp8IG1haW4gKCkKfCB7CnwgCnwgICA7CnwgICByZXR1cm4gMDsK fCB9CmNvbmZpZ3VyZToxMjg4MzogZ2NjIC1jIC1PMyAtZm9taXQtZnJhbWUt cG9pbnRlciAtZnN0cmljdC1hbGlhc2luZyAtZmZhc3QtbWF0aCAtcGVkYW50 aWMgIC1XYWxsICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MTI4ODM6ICQ/ ID0gMApjb25maWd1cmU6MTI4OTE6IHJlc3VsdDogLVdhbGwKY29uZmlndXJl OjEyOTA2OiA6IENGTEFHUz0iJENGTEFHUyAkYWNfY3ZfY2ZsYWdzX3dhcm5f YWxsIgpjb25maWd1cmU6MTI5MDk6ICQ/ID0gMApjb25maWd1cmU6MTI5MzI6 IGNoZWNraW5nIHdoZXRoZXIgdG8gZW5hYmxlIG1haW50YWluZXItc3BlY2lm aWMgcG9ydGlvbnMgb2YgTWFrZWZpbGVzCmNvbmZpZ3VyZToxMjk0MTogcmVz dWx0OiBubwpjb25maWd1cmU6MTI5NTc6IGNoZWNraW5nIHN5cy9tbWFuLmgg dXNhYmlsaXR5CmNvbmZpZ3VyZToxMjk1NzogZ2NjIC1jIC1PMyAtZm9taXQt ZnJhbWUtcG9pbnRlciAtZnN0cmljdC1hbGlhc2luZyAtZmZhc3QtbWF0aCAt V2FsbCAtZmV4Y2VwdGlvbnMgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTox Mjk1NzogJD8gPSAwCmNvbmZpZ3VyZToxMjk1NzogcmVzdWx0OiB5ZXMKY29u ZmlndXJlOjEyOTU3OiBjaGVja2luZyBzeXMvbW1hbi5oIHByZXNlbmNlCmNv bmZpZ3VyZToxMjk1NzogZ2NjIC1FICBjb25mdGVzdC5jCmNvbmZpZ3VyZTox Mjk1NzogJD8gPSAwCmNvbmZpZ3VyZToxMjk1NzogcmVzdWx0OiB5ZXMKY29u ZmlndXJlOjEyOTU3OiBjaGVja2luZyBmb3Igc3lzL21tYW4uaApjb25maWd1 cmU6MTI5NTc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMjk2OTogY2hlY2tp bmcgZm9yIG1tYXAKY29uZmlndXJlOjEyOTY5OiBnY2MgLW8gY29uZnRlc3Qg LU8zIC1mb21pdC1mcmFtZS1wb2ludGVyIC1mc3RyaWN0LWFsaWFzaW5nIC1m ZmFzdC1tYXRoIC1XYWxsIC1mZXhjZXB0aW9ucyAgIGNvbmZ0ZXN0LmMgID4m NQpjb25maWd1cmU6MTI5Njk6ICQ/ID0gMApjb25maWd1cmU6MTI5Njk6IHJl c3VsdDogeWVzCmNvbmZpZ3VyZToxMjk3OTogY2hlY2tpbmcgZm9yIHN5cy9t bWFuLmgKY29uZmlndXJlOjEyOTc5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6 MTI5ODc6IGNoZWNraW5nIGZvciBtbWFwCmNvbmZpZ3VyZToxMjk4NzogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjEzMDAwOiBjaGVja2luZyB3aGV0aGVyIHJl YWQtb25seSBtbWFwIG9mIGEgcGxhaW4gZmlsZSB3b3Jrcwpjb25maWd1cmU6 MTMwMTc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMzAxOTogY2hlY2tpbmcg d2hldGhlciBtbWFwIGZyb20gL2Rldi96ZXJvIHdvcmtzCmNvbmZpZ3VyZTox MzA0MTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEzMDQ1OiBjaGVja2luZyBm b3IgTUFQX0FOT04oWU1PVVMpCmNvbmZpZ3VyZToxMzA2ODogZ2NjIC1jIC1P MyAtZm9taXQtZnJhbWUtcG9pbnRlciAtZnN0cmljdC1hbGlhc2luZyAtZmZh c3QtbWF0aCAtV2FsbCAtZmV4Y2VwdGlvbnMgIGNvbmZ0ZXN0LmMgPiY1CmNv bmZ0ZXN0LmM6IEluIGZ1bmN0aW9uICdtYWluJzoKY29uZnRlc3QuYzozNjog d2FybmluZzogdW51c2VkIHZhcmlhYmxlICduJwpjb25maWd1cmU6MTMwNjg6 ICQ/ID0gMApjb25maWd1cmU6MTMwNzU6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy ZToxMzA4MTogY2hlY2tpbmcgd2hldGhlciBtbWFwIHdpdGggTUFQX0FOT04o WU1PVVMpIHdvcmtzCmNvbmZpZ3VyZToxMzA5ODogcmVzdWx0OiB5ZXMKY29u ZmlndXJlOjEzNTA3OiBjaGVja2luZyBmb3IgQU5TSSBDIGhlYWRlciBmaWxl cwpjb25maWd1cmU6MTM2MTE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMzYy MTogY2hlY2tpbmcgZm9yIG1lbWNweQpjb25maWd1cmU6MTM2MjE6IGdjYyAt byBjb25mdGVzdCAtTzMgLWZvbWl0LWZyYW1lLXBvaW50ZXIgLWZzdHJpY3Qt YWxpYXNpbmcgLWZmYXN0LW1hdGggLVdhbGwgLWZleGNlcHRpb25zICAgY29u ZnRlc3QuYyAgPiY1CmNvbmZ0ZXN0LmM6NTI6IHdhcm5pbmc6IGNvbmZsaWN0 aW5nIHR5cGVzIGZvciBidWlsdC1pbiBmdW5jdGlvbiAnbWVtY3B5Jwpjb25m aWd1cmU6MTM2MjE6ICQ/ID0gMApjb25maWd1cmU6MTM2MjE6IHJlc3VsdDog eWVzCmNvbmZpZ3VyZToxMzYzMDogY2hlY2tpbmcgZm9yIHNpemVfdApjb25m aWd1cmU6MTM2MzA6IGdjYyAtYyAtTzMgLWZvbWl0LWZyYW1lLXBvaW50ZXIg LWZzdHJpY3QtYWxpYXNpbmcgLWZmYXN0LW1hdGggLVdhbGwgLWZleGNlcHRp b25zICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MTM2MzA6ICQ/ID0gMApj b25maWd1cmU6MTM2MzA6IGdjYyAtYyAtTzMgLWZvbWl0LWZyYW1lLXBvaW50 ZXIgLWZzdHJpY3QtYWxpYXNpbmcgLWZmYXN0LW1hdGggLVdhbGwgLWZleGNl cHRpb25zICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOiBJbiBmdW5jdGlv biAnbWFpbic6CmNvbmZ0ZXN0LmM6NjY6IGVycm9yOiBleHBlY3RlZCBleHBy ZXNzaW9uIGJlZm9yZSAnKScgdG9rZW4KY29uZmlndXJlOjEzNjMwOiAkPyA9 IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRl ZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJsaWJmZmkiCnwgI2Rl ZmluZSBQQUNLQUdFX1RBUk5BTUUgImxpYmZmaSIKfCAjZGVmaW5lIFBBQ0tB R0VfVkVSU0lPTiAiMy4wLjExIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcg ImxpYmZmaSAzLjAuMTEiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAi aHR0cDovL2dpdGh1Yi5jb20vYXRncmVlbi9saWJmZmkvaXNzdWVzIgp8ICNk ZWZpbmUgUEFDS0FHRV9VUkwgIiIKfCAjZGVmaW5lIFBBQ0tBR0UgImxpYmZm aSIKfCAjZGVmaW5lIFZFUlNJT04gIjMuMC4xMSIKfCAjZGVmaW5lIFNURENf SEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVm aW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9I IDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9N RU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmlu ZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAx CnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRExG Q05fSCAxCnwgI2RlZmluZSBMVF9PQkpESVIgIi5saWJzLyIKfCAjZGVmaW5l IEhBVkVfU1lTX01NQU5fSCAxCnwgI2RlZmluZSBIQVZFX01NQVAgMQp8ICNk ZWZpbmUgSEFWRV9NTUFQX0ZJTEUgMQp8ICNkZWZpbmUgSEFWRV9NTUFQX0RF Vl9aRVJPIDEKfCAjZGVmaW5lIEhBVkVfTU1BUF9BTk9OIDEKfCAjZGVmaW5l IFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX01FTUNQWSAxCnwgLyog ZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxzdGRpby5oPgp8ICNp ZmRlZiBIQVZFX1NZU19UWVBFU19ICnwgIyBpbmNsdWRlIDxzeXMvdHlwZXMu aD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TWVNfU1RBVF9ICnwgIyBpbmNs dWRlIDxzeXMvc3RhdC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBTVERDX0hFQURF UlMKfCAjIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgaW5jbHVkZSA8c3RkZGVm Lmg+CnwgI2Vsc2UKfCAjIGlmZGVmIEhBVkVfU1RETElCX0gKfCAjICBpbmNs dWRlIDxzdGRsaWIuaD4KfCAjIGVuZGlmCnwgI2VuZGlmCnwgI2lmZGVmIEhB VkVfU1RSSU5HX0gKfCAjIGlmICFkZWZpbmVkIFNURENfSEVBREVSUyAmJiBk ZWZpbmVkIEhBVkVfTUVNT1JZX0gKfCAjICBpbmNsdWRlIDxtZW1vcnkuaD4K fCAjIGVuZGlmCnwgIyBpbmNsdWRlIDxzdHJpbmcuaD4KfCAjZW5kaWYKfCAj aWZkZWYgSEFWRV9TVFJJTkdTX0gKfCAjIGluY2x1ZGUgPHN0cmluZ3MuaD4K fCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9JTlRUWVBFU19ICnwgIyBpbmNsdWRl IDxpbnR0eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NURElOVF9I CnwgIyBpbmNsdWRlIDxzdGRpbnQuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFW RV9VTklTVERfSAp8ICMgaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwg aW50CnwgbWFpbiAoKQp8IHsKfCBpZiAoc2l6ZW9mICgoc2l6ZV90KSkpCnwg CSAgICByZXR1cm4gMDsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmln dXJlOjEzNjMwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTM2NDM6IGNoZWNr aW5nIGZvciB3b3JraW5nIGFsbG9jYS5oCmNvbmZpZ3VyZToxMzY2MDogZ2Nj IC1vIGNvbmZ0ZXN0IC1PMyAtZm9taXQtZnJhbWUtcG9pbnRlciAtZnN0cmlj dC1hbGlhc2luZyAtZmZhc3QtbWF0aCAtV2FsbCAtZmV4Y2VwdGlvbnMgICBj b25mdGVzdC5jICA+JjUKY29uZmlndXJlOjEzNjYwOiAkPyA9IDAKY29uZmln dXJlOjEzNjY4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTM2NzY6IGNoZWNr aW5nIGZvciBhbGxvY2EKY29uZmlndXJlOjEzNzEzOiBnY2MgLW8gY29uZnRl c3QgLU8zIC1mb21pdC1mcmFtZS1wb2ludGVyIC1mc3RyaWN0LWFsaWFzaW5n IC1mZmFzdC1tYXRoIC1XYWxsIC1mZXhjZXB0aW9ucyAgIGNvbmZ0ZXN0LmMg ID4mNQpjb25maWd1cmU6MTM3MTM6ICQ/ID0gMApjb25maWd1cmU6MTM3MjE6 IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMzgzNTogY2hlY2tpbmcgc2l6ZSBv ZiBkb3VibGUKY29uZmlndXJlOjEzODQwOiBnY2MgLW8gY29uZnRlc3QgLU8z IC1mb21pdC1mcmFtZS1wb2ludGVyIC1mc3RyaWN0LWFsaWFzaW5nIC1mZmFz dC1tYXRoIC1XYWxsIC1mZXhjZXB0aW9ucyAgIGNvbmZ0ZXN0LmMgID4mNQpj b25maWd1cmU6MTM4NDA6ICQ/ID0gMApjb25maWd1cmU6MTM4NDA6IC4vY29u ZnRlc3QKY29uZmlndXJlOjEzODQwOiAkPyA9IDAKY29uZmlndXJlOjEzODU0 OiByZXN1bHQ6IDgKY29uZmlndXJlOjEzODY4OiBjaGVja2luZyBzaXplIG9m IGxvbmcgZG91YmxlCmNvbmZpZ3VyZToxMzg3MzogZ2NjIC1vIGNvbmZ0ZXN0 IC1PMyAtZm9taXQtZnJhbWUtcG9pbnRlciAtZnN0cmljdC1hbGlhc2luZyAt ZmZhc3QtbWF0aCAtV2FsbCAtZmV4Y2VwdGlvbnMgICBjb25mdGVzdC5jICA+ JjUKY29uZmlndXJlOjEzODczOiAkPyA9IDAKY29uZmlndXJlOjEzODczOiAu L2NvbmZ0ZXN0CmNvbmZpZ3VyZToxMzg3MzogJD8gPSAwCmNvbmZpZ3VyZTox Mzg4NzogcmVzdWx0OiAxNgpjb25maWd1cmU6MTM5MTI6IGNoZWNraW5nIHdo ZXRoZXIgYnl0ZSBvcmRlcmluZyBpcyBiaWdlbmRpYW4KY29uZmlndXJlOjEz OTI3OiBnY2MgLWMgLU8zIC1mb21pdC1mcmFtZS1wb2ludGVyIC1mc3RyaWN0 LWFsaWFzaW5nIC1mZmFzdC1tYXRoIC1XYWxsIC1mZXhjZXB0aW9ucyAgY29u ZnRlc3QuYyA+JjUKY29uZnRlc3QuYzozNjogZXJyb3I6IGV4cGVjdGVkICc9 JywgJywnLCAnOycsICdhc20nIG9yICdfX2F0dHJpYnV0ZV9fJyBiZWZvcmUg J2EnCmNvbmZpZ3VyZToxMzkyNzogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVk IHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBB Q0tBR0VfTkFNRSAibGliZmZpIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1F ICJsaWJmZmkiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMuMC4xMSIK fCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJsaWJmZmkgMy4wLjExIgp8ICNk ZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImh0dHA6Ly9naXRodWIuY29tL2F0 Z3JlZW4vbGliZmZpL2lzc3VlcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICIi CnwgI2RlZmluZSBQQUNLQUdFICJsaWJmZmkiCnwgI2RlZmluZSBWRVJTSU9O ICIzLjAuMTEiCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUg SEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0gg MQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NU UklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUg SEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEK fCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklT VERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgTFRf T0JKRElSICIubGlicy8iCnwgI2RlZmluZSBIQVZFX1NZU19NTUFOX0ggMQp8 ICNkZWZpbmUgSEFWRV9NTUFQIDEKfCAjZGVmaW5lIEhBVkVfTU1BUF9GSUxF IDEKfCAjZGVmaW5lIEhBVkVfTU1BUF9ERVZfWkVSTyAxCnwgI2RlZmluZSBI QVZFX01NQVBfQU5PTiAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNk ZWZpbmUgSEFWRV9NRU1DUFkgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAx CnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBTSVpFT0ZfRE9V QkxFIDgKfCAjZGVmaW5lIFNJWkVPRl9MT05HX0RPVUJMRSAxNgp8ICNkZWZp bmUgSEFWRV9MT05HX0RPVUJMRSAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAq Lwp8ICNpZm5kZWYgX19BUFBMRV9DQ19fCnwgCSAgICAgICBub3QgYSB1bml2 ZXJzYWwgY2FwYWJsZSBjb21waWxlcgp8IAkgICAgICNlbmRpZgp8IAkgICAg IHR5cGVkZWYgaW50IGR1bW15Owp8IApjb25maWd1cmU6MTM5NzI6IGdjYyAt YyAtTzMgLWZvbWl0LWZyYW1lLXBvaW50ZXIgLWZzdHJpY3QtYWxpYXNpbmcg LWZmYXN0LW1hdGggLVdhbGwgLWZleGNlcHRpb25zICBjb25mdGVzdC5jID4m NQpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiAnbWFpbic6CmNvbmZ0ZXN0LmM6 NDI6IGVycm9yOiAnYm9ndXMnIHVuZGVjbGFyZWQgKGZpcnN0IHVzZSBpbiB0 aGlzIGZ1bmN0aW9uKQpjb25mdGVzdC5jOjQyOiBlcnJvcjogKEVhY2ggdW5k ZWNsYXJlZCBpZGVudGlmaWVyIGlzIHJlcG9ydGVkIG9ubHkgb25jZQpjb25m dGVzdC5jOjQyOiBlcnJvcjogZm9yIGVhY2ggZnVuY3Rpb24gaXQgYXBwZWFy cyBpbi4pCmNvbmZ0ZXN0LmM6NDI6IGVycm9yOiBleHBlY3RlZCAnOycgYmVm b3JlICdlbmRpYW4nCmNvbmZpZ3VyZToxMzk3MjogJD8gPSAxCmNvbmZpZ3Vy ZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAj ZGVmaW5lIFBBQ0tBR0VfTkFNRSAibGliZmZpIgp8ICNkZWZpbmUgUEFDS0FH RV9UQVJOQU1FICJsaWJmZmkiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04g IjMuMC4xMSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJsaWJmZmkgMy4w LjExIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImh0dHA6Ly9naXRo dWIuY29tL2F0Z3JlZW4vbGliZmZpL2lzc3VlcyIKfCAjZGVmaW5lIFBBQ0tB R0VfVVJMICIiCnwgI2RlZmluZSBQQUNLQUdFICJsaWJmZmkiCnwgI2RlZmlu ZSBWRVJTSU9OICIzLjAuMTEiCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8 ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZ U19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmlu ZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8 ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRU WVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUg SEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNk ZWZpbmUgTFRfT0JKRElSICIubGlicy8iCnwgI2RlZmluZSBIQVZFX1NZU19N TUFOX0ggMQp8ICNkZWZpbmUgSEFWRV9NTUFQIDEKfCAjZGVmaW5lIEhBVkVf TU1BUF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfTU1BUF9ERVZfWkVSTyAxCnwg I2RlZmluZSBIQVZFX01NQVBfQU5PTiAxCnwgI2RlZmluZSBTVERDX0hFQURF UlMgMQp8ICNkZWZpbmUgSEFWRV9NRU1DUFkgMQp8ICNkZWZpbmUgSEFWRV9B TExPQ0FfSCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBT SVpFT0ZfRE9VQkxFIDgKfCAjZGVmaW5lIFNJWkVPRl9MT05HX0RPVUJMRSAx Ngp8ICNkZWZpbmUgSEFWRV9MT05HX0RPVUJMRSAxCnwgLyogZW5kIGNvbmZk ZWZzLmguICAqLwp8ICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAJICAgICAj aW5jbHVkZSA8c3lzL3BhcmFtLmg+CnwgCnwgaW50CnwgbWFpbiAoKQp8IHsK fCAjaWYgISAoZGVmaW5lZCBCWVRFX09SREVSICYmIGRlZmluZWQgQklHX0VO RElBTiAJCSAgICAgJiYgZGVmaW5lZCBMSVRUTEVfRU5ESUFOICYmIEJZVEVf T1JERVIgJiYgQklHX0VORElBTiAJCSAgICAgJiYgTElUVExFX0VORElBTikK fCAJICAgICAgYm9ndXMgZW5kaWFuIG1hY3Jvcwp8IAkgICAgICNlbmRpZgp8 IAp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MTQwMTY6IGdj YyAtYyAtTzMgLWZvbWl0LWZyYW1lLXBvaW50ZXIgLWZzdHJpY3QtYWxpYXNp bmcgLWZmYXN0LW1hdGggLVdhbGwgLWZleGNlcHRpb25zICBjb25mdGVzdC5j ID4mNQpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiAnbWFpbic6CmNvbmZ0ZXN0 LmM6NDE6IGVycm9yOiAnYm9ndXMnIHVuZGVjbGFyZWQgKGZpcnN0IHVzZSBp biB0aGlzIGZ1bmN0aW9uKQpjb25mdGVzdC5jOjQxOiBlcnJvcjogKEVhY2gg dW5kZWNsYXJlZCBpZGVudGlmaWVyIGlzIHJlcG9ydGVkIG9ubHkgb25jZQpj b25mdGVzdC5jOjQxOiBlcnJvcjogZm9yIGVhY2ggZnVuY3Rpb24gaXQgYXBw ZWFycyBpbi4pCmNvbmZ0ZXN0LmM6NDE6IGVycm9yOiBleHBlY3RlZCAnOycg YmVmb3JlICdlbmRpYW4nCmNvbmZpZ3VyZToxNDAxNjogJD8gPSAxCmNvbmZp Z3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8K fCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAibGliZmZpIgp8ICNkZWZpbmUgUEFD S0FHRV9UQVJOQU1FICJsaWJmZmkiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJ T04gIjMuMC4xMSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJsaWJmZmkg My4wLjExIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImh0dHA6Ly9n aXRodWIuY29tL2F0Z3JlZW4vbGliZmZpL2lzc3VlcyIKfCAjZGVmaW5lIFBB Q0tBR0VfVVJMICIiCnwgI2RlZmluZSBQQUNLQUdFICJsaWJmZmkiCnwgI2Rl ZmluZSBWRVJTSU9OICIzLjAuMTEiCnwgI2RlZmluZSBTVERDX0hFQURFUlMg MQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZF X1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2Rl ZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0gg MQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9J TlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZp bmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8 ICNkZWZpbmUgTFRfT0JKRElSICIubGlicy8iCnwgI2RlZmluZSBIQVZFX1NZ U19NTUFOX0ggMQp8ICNkZWZpbmUgSEFWRV9NTUFQIDEKfCAjZGVmaW5lIEhB VkVfTU1BUF9GSUxFIDEKfCAjZGVmaW5lIEhBVkVfTU1BUF9ERVZfWkVSTyAx CnwgI2RlZmluZSBIQVZFX01NQVBfQU5PTiAxCnwgI2RlZmluZSBTVERDX0hF QURFUlMgMQp8ICNkZWZpbmUgSEFWRV9NRU1DUFkgMQp8ICNkZWZpbmUgSEFW RV9BTExPQ0FfSCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmlu ZSBTSVpFT0ZfRE9VQkxFIDgKfCAjZGVmaW5lIFNJWkVPRl9MT05HX0RPVUJM RSAxNgp8ICNkZWZpbmUgSEFWRV9MT05HX0RPVUJMRSAxCnwgLyogZW5kIGNv bmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxsaW1pdHMuaD4KfCAKfCBpbnQK fCBtYWluICgpCnwgewp8ICNpZiAhIChkZWZpbmVkIF9MSVRUTEVfRU5ESUFO IHx8IGRlZmluZWQgX0JJR19FTkRJQU4pCnwgCSAgICAgIGJvZ3VzIGVuZGlh biBtYWNyb3MKfCAJICAgICAjZW5kaWYKfCAKfCAgIDsKfCAgIHJldHVybiAw Owp8IH0KY29uZmlndXJlOjE0MTA3OiBnY2MgLW8gY29uZnRlc3QgLU8zIC1m b21pdC1mcmFtZS1wb2ludGVyIC1mc3RyaWN0LWFsaWFzaW5nIC1mZmFzdC1t YXRoIC1XYWxsIC1mZXhjZXB0aW9ucyAgIGNvbmZ0ZXN0LmMgID4mNQpjb25m aWd1cmU6MTQxMDc6ICQ/ID0gMApjb25maWd1cmU6MTQxMDc6IC4vY29uZnRl c3QKY29uZmlndXJlOjE0MTA3OiAkPyA9IDEKY29uZmlndXJlOiBwcm9ncmFt IGV4aXRlZCB3aXRoIHN0YXR1cyAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dy YW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0Vf TkFNRSAibGliZmZpIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJsaWJm ZmkiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMuMC4xMSIKfCAjZGVm aW5lIFBBQ0tBR0VfU1RSSU5HICJsaWJmZmkgMy4wLjExIgp8ICNkZWZpbmUg UEFDS0FHRV9CVUdSRVBPUlQgImh0dHA6Ly9naXRodWIuY29tL2F0Z3JlZW4v bGliZmZpL2lzc3VlcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICIiCnwgI2Rl ZmluZSBQQUNLQUdFICJsaWJmZmkiCnwgI2RlZmluZSBWRVJTSU9OICIzLjAu MTEiCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9T WVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19I IDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9T VFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVm aW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAx CnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgTFRfT0JKRElS ICIubGlicy8iCnwgI2RlZmluZSBIQVZFX1NZU19NTUFOX0ggMQp8ICNkZWZp bmUgSEFWRV9NTUFQIDEKfCAjZGVmaW5lIEhBVkVfTU1BUF9GSUxFIDEKfCAj ZGVmaW5lIEhBVkVfTU1BUF9ERVZfWkVSTyAxCnwgI2RlZmluZSBIQVZFX01N QVBfQU5PTiAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUg SEFWRV9NRU1DUFkgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAxCnwgI2Rl ZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBTSVpFT0ZfRE9VQkxFIDgK fCAjZGVmaW5lIFNJWkVPRl9MT05HX0RPVUJMRSAxNgp8ICNkZWZpbmUgSEFW RV9MT05HX0RPVUJMRSAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNp bmNsdWRlIDxzdGRpby5oPgp8ICNpZmRlZiBIQVZFX1NZU19UWVBFU19ICnwg IyBpbmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFW RV9TWVNfU1RBVF9ICnwgIyBpbmNsdWRlIDxzeXMvc3RhdC5oPgp8ICNlbmRp Zgp8ICNpZmRlZiBTVERDX0hFQURFUlMKfCAjIGluY2x1ZGUgPHN0ZGxpYi5o Pgp8ICMgaW5jbHVkZSA8c3RkZGVmLmg+CnwgI2Vsc2UKfCAjIGlmZGVmIEhB VkVfU1RETElCX0gKfCAjICBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjIGVuZGlm CnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RSSU5HX0gKfCAjIGlmICFkZWZp bmVkIFNURENfSEVBREVSUyAmJiBkZWZpbmVkIEhBVkVfTUVNT1JZX0gKfCAj ICBpbmNsdWRlIDxtZW1vcnkuaD4KfCAjIGVuZGlmCnwgIyBpbmNsdWRlIDxz dHJpbmcuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdTX0gKfCAj IGluY2x1ZGUgPHN0cmluZ3MuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9J TlRUWVBFU19ICnwgIyBpbmNsdWRlIDxpbnR0eXBlcy5oPgp8ICNlbmRpZgp8 ICNpZmRlZiBIQVZFX1NURElOVF9ICnwgIyBpbmNsdWRlIDxzdGRpbnQuaD4K fCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9VTklTVERfSAp8ICMgaW5jbHVkZSA8 dW5pc3RkLmg+CnwgI2VuZGlmCnwgaW50CnwgbWFpbiAoKQp8IHsKfCAKfCAJ ICAgICAvKiBBcmUgd2UgbGl0dGxlIG9yIGJpZyBlbmRpYW4/ICBGcm9tIEhh cmJpc29uJlN0ZWVsZS4gICovCnwgCSAgICAgdW5pb24KfCAJICAgICB7Cnwg CSAgICAgICBsb25nIGludCBsOwp8IAkgICAgICAgY2hhciBjW3NpemVvZiAo bG9uZyBpbnQpXTsKfCAJICAgICB9IHU7CnwgCSAgICAgdS5sID0gMTsKfCAJ ICAgICByZXR1cm4gdS5jW3NpemVvZiAobG9uZyBpbnQpIC0gMV0gPT0gMTsK fCAKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjE0MTE4OiBy ZXN1bHQ6IHllcwpjb25maWd1cmU6MTQxMzc6IGNoZWNraW5nIGFzc2VtYmxl ciAuY2ZpIHBzZXVkby1vcCBzdXBwb3J0CmNvbmZpZ3VyZToxNDE1NTogZ2Nj IC1jIC1PMyAtZm9taXQtZnJhbWUtcG9pbnRlciAtZnN0cmljdC1hbGlhc2lu ZyAtZmZhc3QtbWF0aCAtV2FsbCAtZmV4Y2VwdGlvbnMgIGNvbmZ0ZXN0LmMg PiY1Ci92YXIvdG1wLy9jY3h1dUE5MS5zOiBBc3NlbWJsZXIgbWVzc2FnZXM6 Ci92YXIvdG1wLy9jY3h1dUE5MS5zOjQ6IEVycm9yOiB1bmtub3duIHBzZXVk by1vcDogYC5jZmlfc3RhcnRwcm9jJwovdmFyL3RtcC8vY2N4dXVBOTEuczo1 OiBFcnJvcjogdW5rbm93biBwc2V1ZG8tb3A6IGAuY2ZpX2VuZHByb2MnCmNv bmZpZ3VyZToxNDE1NTogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dy YW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0Vf TkFNRSAibGliZmZpIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJsaWJm ZmkiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjMuMC4xMSIKfCAjZGVm aW5lIFBBQ0tBR0VfU1RSSU5HICJsaWJmZmkgMy4wLjExIgp8ICNkZWZpbmUg UEFDS0FHRV9CVUdSRVBPUlQgImh0dHA6Ly9naXRodWIuY29tL2F0Z3JlZW4v bGliZmZpL2lzc3VlcyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICIiCnwgI2Rl ZmluZSBQQUNLQUdFICJsaWJmZmkiCnwgI2RlZmluZSBWRVJTSU9OICIzLjAu MTEiCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9T WVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19I IDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9T VFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVm aW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAx CnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgTFRfT0JKRElS ICIubGlicy8iCnwgI2RlZmluZSBIQVZFX1NZU19NTUFOX0ggMQp8ICNkZWZp bmUgSEFWRV9NTUFQIDEKfCAjZGVmaW5lIEhBVkVfTU1BUF9GSUxFIDEKfCAj ZGVmaW5lIEhBVkVfTU1BUF9ERVZfWkVSTyAxCnwgI2RlZmluZSBIQVZFX01N QVBfQU5PTiAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUg SEFWRV9NRU1DUFkgMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAxCnwgI2Rl ZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBTSVpFT0ZfRE9VQkxFIDgK fCAjZGVmaW5lIFNJWkVPRl9MT05HX0RPVUJMRSAxNgp8ICNkZWZpbmUgSEFW RV9MT05HX0RPVUJMRSAxCnwgI2RlZmluZSBXT1JEU19CSUdFTkRJQU4gMQp8 IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCBhc20gKCIuY2ZpX3N0YXJ0cHJv Y1xuXHQuY2ZpX2VuZHByb2MiKTsKfCBpbnQKfCBtYWluICgpCnwgewp8IAp8 ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MTQxNjM6IHJlc3Vs dDogbm8KY29uZmlndXJlOjE0NDQ1OiBjaGVja2luZyB3aGV0aGVyIC5laF9m cmFtZSBzZWN0aW9uIHNob3VsZCBiZSByZWFkLW9ubHkKY29uZmlndXJlOjE0 NDY0OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToxNDQ3OTogY2hlY2tpbmcgZm9y IF9fYXR0cmlidXRlX18oKHZpc2liaWxpdHkoImhpZGRlbiIpKSkKY29uZmln dXJlOjE0NDg4OiBnY2MgLVdlcnJvciAtUyBjb25mdGVzdC5jIC1vIGNvbmZ0 ZXN0LnMgMT4mNQpjb25maWd1cmU6MTQ0OTE6ICQ/ID0gMApjb25maWd1cmU6 MTQ1MDA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDg2MDogY3JlYXRpbmcg Li9jb25maWcuc3RhdHVzCgojIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMj CiMjIFJ1bm5pbmcgY29uZmlnLnN0YXR1cy4gIyMKIyMgLS0tLS0tLS0tLS0t LS0tLS0tLS0tLSAjIwoKVGhpcyBmaWxlIHdhcyBleHRlbmRlZCBieSBsaWJm ZmkgY29uZmlnLnN0YXR1cyAzLjAuMTEsIHdoaWNoIHdhcwpnZW5lcmF0ZWQg YnkgR05VIEF1dG9jb25mIDIuNjguICBJbnZvY2F0aW9uIGNvbW1hbmQgbGlu ZSB3YXMKCiAgQ09ORklHX0ZJTEVTICAgID0gCiAgQ09ORklHX0hFQURFUlMg ID0gCiAgQ09ORklHX0xJTktTICAgID0gCiAgQ09ORklHX0NPTU1BTkRTID0g CiAgJCAuL2NvbmZpZy5zdGF0dXMgCgpvbiB1eGhwaXBmNgoKY29uZmlnLnN0 YXR1czoxMjA2OiBjcmVhdGluZyBpbmNsdWRlL01ha2VmaWxlCmNvbmZpZy5z dGF0dXM6MTIwNjogY3JlYXRpbmcgaW5jbHVkZS9mZmkuaApjb25maWcuc3Rh dHVzOjEyMDY6IGNyZWF0aW5nIE1ha2VmaWxlCmNvbmZpZy5zdGF0dXM6MTIw NjogY3JlYXRpbmcgdGVzdHN1aXRlL01ha2VmaWxlCmNvbmZpZy5zdGF0dXM6 MTIwNjogY3JlYXRpbmcgbWFuL01ha2VmaWxlCmNvbmZpZy5zdGF0dXM6MTIw NjogY3JlYXRpbmcgbGliZmZpLnBjCmNvbmZpZy5zdGF0dXM6MTIwNjogY3Jl YXRpbmcgZmZpY29uZmlnLmgKY29uZmlnLnN0YXR1czoxNDMyOiBsaW5raW5n IC4uL3NyYy9pYTY0L2ZmaXRhcmdldC5oIHRvIGluY2x1ZGUvZmZpdGFyZ2V0 LmgKY29uZmlnLnN0YXR1czoxNDUxOiBleGVjdXRpbmcgYnVpbGRpciBjb21t YW5kcwpjb25maWcuc3RhdHVzOjE0NjQ6IHNraXBwaW5nIHRvcF9zcmNkaXIv TWFrZWZpbGUgLSBub3QgY3JlYXRlZApjb25maWcuc3RhdHVzOjE0NTE6IGV4 ZWN1dGluZyBkZXBmaWxlcyBjb21tYW5kcwpjb25maWcuc3RhdHVzOjE0NTE6 IGV4ZWN1dGluZyBsaWJ0b29sIGNvbW1hbmRzCmNvbmZpZy5zdGF0dXM6MTQ1 MTogZXhlY3V0aW5nIGluY2x1ZGUgY29tbWFuZHMKY29uZmlnLnN0YXR1czox NDUxOiBleGVjdXRpbmcgc3JjIGNvbW1hbmRzCgojIyAtLS0tLS0tLS0tLS0t LS0tICMjCiMjIENhY2hlIHZhcmlhYmxlcy4gIyMKIyMgLS0tLS0tLS0tLS0t LS0tLSAjIwoKYWNfY3ZfYnVpbGQ9aWE2NC1ocC1ocHV4MTEuMzEKYWNfY3Zf Y19iaWdlbmRpYW49eWVzCmFjX2N2X2NfY29tcGlsZXJfZ251PXllcwphY19j dl9jZmxhZ3Nfd2Fybl9hbGw9LVdhbGwKYWNfY3ZfZGVjbF9tYXBfYW5vbj15 ZXMKYWNfY3ZfZW52X0NDQVNGTEFHU19zZXQ9JycKYWNfY3ZfZW52X0NDQVNG TEFHU192YWx1ZT0nJwphY19jdl9lbnZfQ0NBU19zZXQ9JycKYWNfY3ZfZW52 X0NDQVNfdmFsdWU9JycKYWNfY3ZfZW52X0NQUEZMQUdTX3NldD0nJwphY19j dl9lbnZfQ1BQRkxBR1NfdmFsdWU9JycKYWNfY3ZfZW52X0NQUF9zZXQ9JycK YWNfY3ZfZW52X0NQUF92YWx1ZT0nJwphY19jdl9lbnZfYnVpbGRfYWxpYXNf c2V0PScnCmFjX2N2X2Vudl9idWlsZF9hbGlhc192YWx1ZT0nJwphY19jdl9l bnZfaG9zdF9hbGlhc19zZXQ9JycKYWNfY3ZfZW52X2hvc3RfYWxpYXNfdmFs dWU9JycKYWNfY3ZfZW52X3RhcmdldF9hbGlhc19zZXQ9JycKYWNfY3ZfZW52 X3RhcmdldF9hbGlhc192YWx1ZT0nJwphY19jdl9mdW5jX2FsbG9jYV93b3Jr cz15ZXMKYWNfY3ZfZnVuY19tZW1jcHk9eWVzCmFjX2N2X2Z1bmNfbW1hcD15 ZXMKYWNfY3ZfZnVuY19tbWFwX2Fub249eWVzCmFjX2N2X2Z1bmNfbW1hcF9k ZXZfemVybz15ZXMKYWNfY3ZfZnVuY19tbWFwX2ZpbGU9eWVzCmFjX2N2X2hl YWRlcl9kbGZjbl9oPXllcwphY19jdl9oZWFkZXJfaW50dHlwZXNfaD15ZXMK YWNfY3ZfaGVhZGVyX21lbW9yeV9oPXllcwphY19jdl9oZWFkZXJfc3RkYz15 ZXMKYWNfY3ZfaGVhZGVyX3N0ZGludF9oPXllcwphY19jdl9oZWFkZXJfc3Rk bGliX2g9eWVzCmFjX2N2X2hlYWRlcl9zdHJpbmdfaD15ZXMKYWNfY3ZfaGVh ZGVyX3N0cmluZ3NfaD15ZXMKYWNfY3ZfaGVhZGVyX3N5c19tbWFuX2g9eWVz CmFjX2N2X2hlYWRlcl9zeXNfc3RhdF9oPXllcwphY19jdl9oZWFkZXJfc3lz X3R5cGVzX2g9eWVzCmFjX2N2X2hlYWRlcl91bmlzdGRfaD15ZXMKYWNfY3Zf aG9zdD1pYTY0LWhwLWhwdXgxMS4zMQphY19jdl9vYmpleHQ9bwphY19jdl9w YXRoX0VHUkVQPScvdG9vbHMvaHB1eC9iaW4vZ2dyZXAgLUUnCmFjX2N2X3Bh dGhfRkdSRVA9Jy90b29scy9ocHV4L2Jpbi9nZ3JlcCAtRicKYWNfY3ZfcGF0 aF9HUkVQPS90b29scy9ocHV4L2Jpbi9nZ3JlcAphY19jdl9wYXRoX1NFRD0v YmluL3NlZAphY19jdl9wYXRoX2F4X2VuYWJsZV9idWlsZGRpcl9zZWQ9c2Vk CmFjX2N2X3Byb2dfQVdLPWdhd2sKYWNfY3ZfcHJvZ19DUFA9J2djYyAtRScK YWNfY3ZfcHJvZ19hY19jdF9BUj1hcgphY19jdl9wcm9nX2FjX2N0X0NDPWdj YwphY19jdl9wcm9nX2FjX2N0X01BTklGRVNUX1RPT0w9bXQKYWNfY3ZfcHJv Z19hY19jdF9PQkpEVU1QPW9iamR1bXAKYWNfY3ZfcHJvZ19hY19jdF9SQU5M SUI9cmFubGliCmFjX2N2X3Byb2dfYWNfY3RfU1RSSVA9c3RyaXAKYWNfY3Zf cHJvZ19jY19jODk9JycKYWNfY3ZfcHJvZ19jY19nPXllcwphY19jdl9wcm9n X2NjX2djY19jX289eWVzCmFjX2N2X3Byb2dfbWFrZV9tYWtlX3NldD15ZXMK YWNfY3Zfc2l6ZW9mX2RvdWJsZT04CmFjX2N2X3NpemVvZl9sb25nX2RvdWJs ZT0xNgphY19jdl90YXJnZXQ9aWE2NC1ocC1ocHV4MTEuMzEKYWNfY3ZfdHlw ZV9zaXplX3Q9eWVzCmFjX2N2X3dvcmtpbmdfYWxsb2NhX2g9eWVzCmFtX2N2 X0NDQVNfZGVwZW5kZW5jaWVzX2NvbXBpbGVyX3R5cGU9Z2NjMwphbV9jdl9D Q19kZXBlbmRlbmNpZXNfY29tcGlsZXJfdHlwZT1nY2MzCmF4X2N2X2NfY29t cGlsZXJfdmVuZG9yPWdudQpheF9jdl9jaGVja19jZmxhZ3NfX19PM19fZm9t aXRfZnJhbWVfcG9pbnRlcl9fZnN0cmljdF9hbGlhc2luZ19fZmZhc3RfbWF0 aD15ZXMKYXhfY3ZfY2hlY2tfY2ZsYWdzX19fZmZhc3RfbWF0aD15ZXMKYXhf Y3ZfY2hlY2tfY2ZsYWdzX19fZnN0cmljdF9hbGlhc2luZz15ZXMKYXhfY3Zf Y2hlY2tfY2ZsYWdzX19fbWFsaWduX2RvdWJsZT1ubwpheF9jdl9nY2NfYXJj aGZsYWc9dW5rbm93bgpnY2NfY3ZfYXNfY2ZpX3BzZXVkb19vcD1ubwpsaWJm ZmlfY3ZfaGlkZGVuX3Zpc2liaWxpdHlfYXR0cmlidXRlPXllcwpsaWJmZmlf Y3Zfcm9fZWhfZnJhbWU9bm8KbHRfY3ZfYXJfYXRfZmlsZT1ACmx0X2N2X2Fy Y2hpdmVfY21kc19uZWVkX2xjPXllcwpsdF9jdl9kZXBsaWJzX2NoZWNrX21l dGhvZD0nZmlsZV9tYWdpYyAoc1swLTldWzAtOV1bMC05XXxFTEYtWzAtOV1b MC05XSkgc2hhcmVkIG9iamVjdCBmaWxlIC0gSUE2NCcKbHRfY3ZfZmlsZV9t YWdpY19jbWQ9L3Vzci9iaW4vZmlsZQpsdF9jdl9maWxlX21hZ2ljX3Rlc3Rf ZmlsZT0vdXNyL2xpYi9ocHV4MzIvbGliYy5zbwpsdF9jdl9sZF9yZWxvYWRf ZmxhZz0tcgpsdF9jdl9ubV9pbnRlcmZhY2U9J0JTRCBubScKbHRfY3Zfb2Jq ZGlyPS5saWJzCmx0X2N2X3BhdGhfTEQ9L3Vzci9jY3MvYmluL2xkCmx0X2N2 X3BhdGhfTk09Jy91c3IvbG9jYWwvYmluL25tIC1CJwpsdF9jdl9wYXRoX21h aW5mZXN0X3Rvb2w9bm8KbHRfY3ZfcHJvZ19jb21waWxlcl9jX289eWVzCmx0 X2N2X3Byb2dfY29tcGlsZXJfcGljPSctZlBJQyAtRFBJQycKbHRfY3ZfcHJv Z19jb21waWxlcl9waWNfd29ya3M9eWVzCmx0X2N2X3Byb2dfY29tcGlsZXJf cnR0aV9leGNlcHRpb25zPW5vCmx0X2N2X3Byb2dfY29tcGlsZXJfc3RhdGlj X3dvcmtzPW5vCmx0X2N2X3Byb2dfZ251X2xkPW5vCmx0X2N2X3NoYXJlZGxp Yl9mcm9tX2xpbmtsaWJfY21kPSdwcmludCAtciAtLScKbHRfY3Zfc3lzX2ds b2JhbF9zeW1ib2xfcGlwZT0nc2VkIC1uIC1lICdcJydzL14uKlsJIF1cKFtB QkNER0lSU1RXXVtBQkNER0lSU1RXXSpcKVsJIF1bCSBdKlwoW19BLVphLXpd W19BLVphLXowLTldKlwpJC9cMSBcMiBcMi9wJ1wnJyB8IHNlZCAnXCcnLyBf X2dudV9sdG8vZCdcJwpsdF9jdl9zeXNfZ2xvYmFsX3N5bWJvbF90b19jX25h bWVfYWRkcmVzcz0nc2VkIC1uIC1lICdcJydzL146IFwoW14gXSpcKVsgXSok LyAge1wiXDFcIiwgKHZvaWQgKikgMH0sL3AnXCcnIC1lICdcJydzL15bQUJD REdJUlNUV10qIFwoW14gXSpcKSBcKFteIF0qXCkkLyAgeyJcMiIsICh2b2lk ICopIFwmXDJ9LC9wJ1wnCmx0X2N2X3N5c19nbG9iYWxfc3ltYm9sX3RvX2Nf bmFtZV9hZGRyZXNzX2xpYl9wcmVmaXg9J3NlZCAtbiAtZSAnXCcncy9eOiBc KFteIF0qXClbIF0qJC8gIHtcIlwxXCIsICh2b2lkICopIDB9LC9wJ1wnJyAt ZSAnXCcncy9eW0FCQ0RHSVJTVFddKiBcKFteIF0qXCkgXChsaWJbXiBdKlwp JC8gIHsiXDIiLCAodm9pZCAqKSBcJlwyfSwvcCdcJycgLWUgJ1wnJ3MvXltB QkNER0lSU1RXXSogXChbXiBdKlwpIFwoW14gXSpcKSQvICB7ImxpYlwyIiwg KHZvaWQgKikgXCZcMn0sL3AnXCcKbHRfY3Zfc3lzX2dsb2JhbF9zeW1ib2xf dG9fY2RlY2w9J3NlZCAtbiAtZSAnXCcncy9eVCAuKiBcKC4qXCkkL2V4dGVy biBpbnQgXDEoKTsvcCdcJycgLWUgJ1wnJ3MvXltBQkNER0lSU1RXXSogLiog XCguKlwpJC9leHRlcm4gY2hhciBcMTsvcCdcJwpsdF9jdl9zeXNfbWF4X2Nt ZF9sZW49MTUzNjAwMApsdF9jdl90b19ob3N0X2ZpbGVfY21kPWZ1bmNfY29u dmVydF9maWxlX25vb3AKbHRfY3ZfdG9fdG9vbF9maWxlX2NtZD1mdW5jX2Nv bnZlcnRfZmlsZV9ub29wCgojIyAtLS0tLS0tLS0tLS0tLS0tLSAjIwojIyBP dXRwdXQgdmFyaWFibGVzLiAjIwojIyAtLS0tLS0tLS0tLS0tLS0tLSAjIwoK QUNMT0NBTD0nJHtTSEVMTH0gL3NjcmF0Y2gvYnNtaXRoL2djYy9saWJmZmkt My4wLjExL21pc3NpbmcgLS1ydW4gYWNsb2NhbC0xLjExJwpBTExPQ0E9JycK QUxQSEFfRkFMU0U9JycKQUxQSEFfVFJVRT0nIycKQU1ERVBCQUNLU0xBU0g9 J1wnCkFNREVQX0ZBTFNFPScjJwpBTURFUF9UUlVFPScnCkFNVEFSPScke1NI RUxMfSAvc2NyYXRjaC9ic21pdGgvZ2NjL2xpYmZmaS0zLjAuMTEvbWlzc2lu ZyAtLXJ1biB0YXInCkFNX0xUTERGTEFHUz0nJwpBTV9SVU5URVNURkxBR1M9 JycKQVI9J2FyJwpBUk1fRkFMU0U9JycKQVJNX1RSVUU9JyMnCkFVVE9DT05G PScke1NIRUxMfSAvc2NyYXRjaC9ic21pdGgvZ2NjL2xpYmZmaS0zLjAuMTEv bWlzc2luZyAtLXJ1biBhdXRvY29uZicKQVVUT0hFQURFUj0nJHtTSEVMTH0g L3NjcmF0Y2gvYnNtaXRoL2djYy9saWJmZmktMy4wLjExL21pc3NpbmcgLS1y dW4gYXV0b2hlYWRlcicKQVVUT01BS0U9JyR7U0hFTEx9IC9zY3JhdGNoL2Jz bWl0aC9nY2MvbGliZmZpLTMuMC4xMS9taXNzaW5nIC0tcnVuIGF1dG9tYWtl LTEuMTEnCkFWUjMyX0ZBTFNFPScnCkFWUjMyX1RSVUU9JyMnCkFXSz0nZ2F3 aycKQ0M9J2djYycKQ0NBUz0nZ2NjJwpDQ0FTREVQTU9ERT0nZGVwbW9kZT1n Y2MzJwpDQ0FTRkxBR1M9JycKQ0NERVBNT0RFPSdkZXBtb2RlPWdjYzMnCkNG TEFHUz0nLU8zIC1mb21pdC1mcmFtZS1wb2ludGVyIC1mc3RyaWN0LWFsaWFz aW5nIC1mZmFzdC1tYXRoIC1XYWxsIC1mZXhjZXB0aW9ucycKQ1BQPSdnY2Mg LUUnCkNQUEZMQUdTPScnCkNZR1BBVEhfVz0nZWNobycKREVGUz0nLURIQVZF X0NPTkZJR19IJwpERVBESVI9Jy5kZXBzJwpETExUT09MPSdmYWxzZScKRFNZ TVVUSUw9JycKRFVNUEJJTj0nJwpFQ0hPX0M9J1xjJwpFQ0hPX049JycKRUNI T19UPScnCkVHUkVQPScvdG9vbHMvaHB1eC9iaW4vZ2dyZXAgLUUnCkVYRUVY VD0nJwpGRklfREVCVUdfRkFMU0U9JycKRkZJX0RFQlVHX1RSVUU9JyMnCkZG SV9FWEVDX1RSQU1QT0xJTkVfVEFCTEU9JzAnCkZGSV9FWEVDX1RSQU1QT0xJ TkVfVEFCTEVfRkFMU0U9JycKRkZJX0VYRUNfVFJBTVBPTElORV9UQUJMRV9U UlVFPScjJwpGR1JFUD0nL3Rvb2xzL2hwdXgvYmluL2dncmVwIC1GJwpGUlZf RkFMU0U9JycKRlJWX1RSVUU9JyMnCkdSRVA9Jy90b29scy9ocHV4L2Jpbi9n Z3JlcCcKSEFWRV9MT05HX0RPVUJMRT0nMScKSUE2NF9GQUxTRT0nIycKSUE2 NF9UUlVFPScnCklOU1RBTExfREFUQT0nJHtJTlNUQUxMfSAtbSA2NDQnCklO U1RBTExfUFJPR1JBTT0nJHtJTlNUQUxMfScKSU5TVEFMTF9TQ1JJUFQ9JyR7 SU5TVEFMTH0nCklOU1RBTExfU1RSSVBfUFJPR1JBTT0nJChpbnN0YWxsX3No KSAtYyAtcycKTEQ9Jy91c3IvY2NzL2Jpbi9sZCcKTERGTEFHUz0nJwpMSUJG RklfQ1JJU19GQUxTRT0nJwpMSUJGRklfQ1JJU19UUlVFPScjJwpMSUJPQkpT PScnCkxJQlM9JycKTElCVE9PTD0nJChTSEVMTCkgJCh0b3BfYnVpbGRkaXIp L2xpYnRvb2wnCkxJUE89JycKTE5fUz0nbG4gLXMnCkxUTElCT0JKUz0nJwpN MzJSX0ZBTFNFPScnCk0zMlJfVFJVRT0nIycKTTY4S19GQUxTRT0nJwpNNjhL X1RSVUU9JyMnCk1BSU5UPScjJwpNQUlOVEFJTkVSX01PREVfRkFMU0U9JycK TUFJTlRBSU5FUl9NT0RFX1RSVUU9JyMnCk1BS0VJTkZPPScke1NIRUxMfSAv c2NyYXRjaC9ic21pdGgvZ2NjL2xpYmZmaS0zLjAuMTEvbWlzc2luZyAtLXJ1 biBtYWtlaW5mbycKTUFOSUZFU1RfVE9PTD0nOicKTUlQU19GQUxTRT0nJwpN SVBTX1RSVUU9JyMnCk1LRElSX1A9Jy4uL2luc3RhbGwtc2ggLWMgLWQnCk1P WElFX0ZBTFNFPScnCk1PWElFX1RSVUU9JyMnCk5NPScvdXNyL2xvY2FsL2Jp bi9ubSAtQicKTk1FRElUPScnCk9CSkRVTVA9J29iamR1bXAnCk9CSkVYVD0n bycKT1RPT0w2ND0nJwpPVE9PTD0nJwpQQTY0X0hQVVhfRkFMU0U9JycKUEE2 NF9IUFVYX1RSVUU9JyMnClBBQ0tBR0U9J2xpYmZmaScKUEFDS0FHRV9CVUdS RVBPUlQ9J2h0dHA6Ly9naXRodWIuY29tL2F0Z3JlZW4vbGliZmZpL2lzc3Vl cycKUEFDS0FHRV9OQU1FPSdsaWJmZmknClBBQ0tBR0VfU1RSSU5HPSdsaWJm ZmkgMy4wLjExJwpQQUNLQUdFX1RBUk5BTUU9J2xpYmZmaScKUEFDS0FHRV9V Ukw9JycKUEFDS0FHRV9WRVJTSU9OPSczLjAuMTEnClBBVEhfU0VQQVJBVE9S PSc6JwpQQV9IUFVYX0ZBTFNFPScnClBBX0hQVVhfVFJVRT0nIycKUEFfTElO VVhfRkFMU0U9JycKUEFfTElOVVhfVFJVRT0nIycKUE9XRVJQQ19BSVhfRkFM U0U9JycKUE9XRVJQQ19BSVhfVFJVRT0nIycKUE9XRVJQQ19EQVJXSU5fRkFM U0U9JycKUE9XRVJQQ19EQVJXSU5fVFJVRT0nIycKUE9XRVJQQ19GQUxTRT0n JwpQT1dFUlBDX0ZSRUVCU0RfRkFMU0U9JycKUE9XRVJQQ19GUkVFQlNEX1RS VUU9JyMnClBPV0VSUENfVFJVRT0nIycKUFJURElBRz0nJwpSQU5MSUI9J3Jh bmxpYicKUzM5MF9GQUxTRT0nJwpTMzkwX1RSVUU9JyMnClNFRD0nL2Jpbi9z ZWQnClNFVF9NQUtFPScnClNINjRfRkFMU0U9JycKU0g2NF9UUlVFPScjJwpT SEVMTD0nL2Jpbi9zaCcKU0hfRkFMU0U9JycKU0hfVFJVRT0nIycKU1BBUkNf RkFMU0U9JycKU1BBUkNfVFJVRT0nIycKU1RSSVA9J3N0cmlwJwpUQVJHRVQ9 J0lBNjQnClRBUkdFVERJUj0naWE2NCcKVEVTVFNVQkRJUl9GQUxTRT0nIycK VEVTVFNVQkRJUl9UUlVFPScnClZFUlNJT049JzMuMC4xMScKWDg2XzY0X0ZB TFNFPScnClg4Nl82NF9UUlVFPScjJwpYODZfREFSV0lOX0ZBTFNFPScnClg4 Nl9EQVJXSU5fVFJVRT0nIycKWDg2X0ZBTFNFPScnClg4Nl9GUkVFQlNEX0ZB TFNFPScnClg4Nl9GUkVFQlNEX1RSVUU9JyMnClg4Nl9UUlVFPScjJwpYODZf V0lOMzJfRkFMU0U9JycKWDg2X1dJTjMyX1RSVUU9JyMnClg4Nl9XSU42NF9G QUxTRT0nJwpYODZfV0lONjRfVFJVRT0nIycKYWNfY3RfQVI9J2FyJwphY19j dF9DQz0nZ2NjJwphY19jdF9EVU1QQklOPScnCmFtX19FWEVFWFRfRkFMU0U9 JycKYW1fX0VYRUVYVF9UUlVFPScjJwphbV9fZmFzdGRlcENDQVNfRkFMU0U9 JyMnCmFtX19mYXN0ZGVwQ0NBU19UUlVFPScnCmFtX19mYXN0ZGVwQ0NfRkFM U0U9JyMnCmFtX19mYXN0ZGVwQ0NfVFJVRT0nJwphbV9faW5jbHVkZT0naW5j bHVkZScKYW1fX2lzcmM9JyAtSSQoc3JjZGlyKScKYW1fX2xlYWRpbmdfZG90 PScuJwphbV9fcXVvdGU9JycKYW1fX3Rhcj0nJHtBTVRBUn0gY2hvZiAtICIk JHRhcmRpciInCmFtX191bnRhcj0nJHtBTVRBUn0geGYgLScKYXhfZW5hYmxl X2J1aWxkZGlyX3NlZD0nc2VkJwpiaW5kaXI9JyR7ZXhlY19wcmVmaXh9L2Jp bicKYnVpbGQ9J2lhNjQtaHAtaHB1eDExLjMxJwpidWlsZF9hbGlhcz0nJwpi dWlsZF9jcHU9J2lhNjQnCmJ1aWxkX29zPSdocHV4MTEuMzEnCmJ1aWxkX3Zl bmRvcj0naHAnCmRhdGFkaXI9JyR7ZGF0YXJvb3RkaXJ9JwpkYXRhcm9vdGRp cj0nJHtwcmVmaXh9L3NoYXJlJwpkb2NkaXI9JyR7ZGF0YXJvb3RkaXJ9L2Rv Yy8ke1BBQ0tBR0VfVEFSTkFNRX0nCmR2aWRpcj0nJHtkb2NkaXJ9JwpleGVj X3ByZWZpeD0nJHtwcmVmaXh9Jwpob3N0PSdpYTY0LWhwLWhwdXgxMS4zMScK aG9zdF9hbGlhcz0nJwpob3N0X2NwdT0naWE2NCcKaG9zdF9vcz0naHB1eDEx LjMxJwpob3N0X3ZlbmRvcj0naHAnCmh0bWxkaXI9JyR7ZG9jZGlyfScKaW5j bHVkZWRpcj0nJHtwcmVmaXh9L2luY2x1ZGUnCmluZm9kaXI9JyR7ZGF0YXJv b3RkaXJ9L2luZm8nCmluc3RhbGxfc2g9JyR7U0hFTEx9IC9zY3JhdGNoL2Jz bWl0aC9nY2MvbGliZmZpLTMuMC4xMS9pbnN0YWxsLXNoJwpsaWJkaXI9JyR7 ZXhlY19wcmVmaXh9L2xpYicKbGliZXhlY2Rpcj0nJHtleGVjX3ByZWZpeH0v bGliZXhlYycKbG9jYWxlZGlyPScke2RhdGFyb290ZGlyfS9sb2NhbGUnCmxv Y2Fsc3RhdGVkaXI9JyR7cHJlZml4fS92YXInCm1hbmRpcj0nJHtkYXRhcm9v dGRpcn0vbWFuJwpta2Rpcl9wPSckKHRvcF9idWlsZGRpcikvLi4vaW5zdGFs bC1zaCAtYyAtZCcKb2xkaW5jbHVkZWRpcj0nL3Vzci9pbmNsdWRlJwpwZGZk aXI9JyR7ZG9jZGlyfScKcHJlZml4PScvdG9vbHMvaHB1eGlhNjQvbGliZmZp LTMuMC4xMScKcHJvZ3JhbV90cmFuc2Zvcm1fbmFtZT0ncyx4LHgsJwpwc2Rp cj0nJHtkb2NkaXJ9JwpzYmluZGlyPScke2V4ZWNfcHJlZml4fS9zYmluJwpz aGFyZWRzdGF0ZWRpcj0nJHtwcmVmaXh9L2NvbScKc3lzX3N5bWJvbF91bmRl cnNjb3JlPScnCnN5c2NvbmZkaXI9JyR7cHJlZml4fS9ldGMnCnRhcmdldD0n aWE2NC1ocC1ocHV4MTEuMzEnCnRhcmdldF9hbGlhcz0nJwp0YXJnZXRfY3B1 PSdpYTY0Jwp0YXJnZXRfb3M9J2hwdXgxMS4zMScKdGFyZ2V0X3ZlbmRvcj0n aHAnCnRvb2xleGVjZGlyPSckKGxpYmRpcikvZ2NjLWxpYi8kKHRhcmdldF9h bGlhcyknCnRvb2xleGVjbGliZGlyPSckKGxpYmRpciknCgojIyAtLS0tLS0t LS0tLSAjIwojIyBjb25mZGVmcy5oLiAjIwojIyAtLS0tLS0tLS0tLSAjIwoK LyogY29uZmRlZnMuaCAqLwojZGVmaW5lIFBBQ0tBR0VfTkFNRSAibGliZmZp IgojZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAibGliZmZpIgojZGVmaW5lIFBB Q0tBR0VfVkVSU0lPTiAiMy4wLjExIgojZGVmaW5lIFBBQ0tBR0VfU1RSSU5H ICJsaWJmZmkgMy4wLjExIgojZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJo dHRwOi8vZ2l0aHViLmNvbS9hdGdyZWVuL2xpYmZmaS9pc3N1ZXMiCiNkZWZp bmUgUEFDS0FHRV9VUkwgIiIKI2RlZmluZSBQQUNLQUdFICJsaWJmZmkiCiNk ZWZpbmUgVkVSU0lPTiAiMy4wLjExIgojZGVmaW5lIFNURENfSEVBREVSUyAx CiNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCiNkZWZpbmUgSEFWRV9TWVNf U1RBVF9IIDEKI2RlZmluZSBIQVZFX1NURExJQl9IIDEKI2RlZmluZSBIQVZF X1NUUklOR19IIDEKI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKI2RlZmluZSBI QVZFX1NUUklOR1NfSCAxCiNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKI2Rl ZmluZSBIQVZFX1NURElOVF9IIDEKI2RlZmluZSBIQVZFX1VOSVNURF9IIDEK I2RlZmluZSBIQVZFX0RMRkNOX0ggMQojZGVmaW5lIExUX09CSkRJUiAiLmxp YnMvIgojZGVmaW5lIEhBVkVfU1lTX01NQU5fSCAxCiNkZWZpbmUgSEFWRV9N TUFQIDEKI2RlZmluZSBIQVZFX01NQVBfRklMRSAxCiNkZWZpbmUgSEFWRV9N TUFQX0RFVl9aRVJPIDEKI2RlZmluZSBIQVZFX01NQVBfQU5PTiAxCiNkZWZp bmUgU1REQ19IRUFERVJTIDEKI2RlZmluZSBIQVZFX01FTUNQWSAxCiNkZWZp bmUgSEFWRV9BTExPQ0FfSCAxCiNkZWZpbmUgSEFWRV9BTExPQ0EgMQojZGVm aW5lIFNJWkVPRl9ET1VCTEUgOAojZGVmaW5lIFNJWkVPRl9MT05HX0RPVUJM RSAxNgojZGVmaW5lIEhBVkVfTE9OR19ET1VCTEUgMQojZGVmaW5lIFdPUkRT X0JJR0VORElBTiAxCiNkZWZpbmUgRUhfRlJBTUVfRkxBR1MgImF3IgojZGVm aW5lIEhBVkVfSElEREVOX1ZJU0lCSUxJVFlfQVRUUklCVVRFIDEKCmNvbmZp Z3VyZTogZXhpdCAwCg== --_002_B9A06DC29C36B546B5A1911C2AAE93107842CDE5PSCMAIL01bedfor_--