Date: Wed, 22 Sep 2010 18:26:21 +0200 From: David DEMELIER <demelier.david@gmail.com> To: Anonymous <swell.k@gmail.com> Cc: freebsd-ports <freebsd-ports@freebsd.org> Subject: Re: x11/sessreg fails to build Message-ID: <AANLkTinV31pktFbobs1KULHTFo__0MGskGQKN%2BOFh_pu@mail.gmail.com> In-Reply-To: <861v8l6ckx.fsf@gmail.com> References: <AANLkTinYd0seY8t8hXDdAdtyvcNXDEPFZYk03R7fs-Ny@mail.gmail.com> <861v8l6ckx.fsf@gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
--0016e6dab73f19fc380490db9b1d Content-Type: text/plain; charset=UTF-8 2010/9/22 Anonymous <swell.k@gmail.com>: > David DEMELIER <demelier.david@gmail.com> writes: > >> sessreg.o(.text+0xfa): In function `UtmpxIdOpen': >> : undefined reference to `setutxent' >> sessreg.o(.text+0x101): In function `UtmpxIdOpen': >> : undefined reference to `getutxent' >> sessreg.o(.text+0x12b): In function `UtmpxIdOpen': >> : undefined reference to `endutxent' >> sessreg.o(.text+0x13b): In function `UtmpxIdOpen': >> : undefined reference to `endutxent' >> sessreg.o(.text+0x992): In function `main': >> : undefined reference to `setutxent' >> sessreg.o(.text+0x99f): In function `main': >> : undefined reference to `getutxid' >> sessreg.o(.text+0x9ac): In function `main': >> : undefined reference to `pututxline' >> sessreg.o(.text+0x9b1): In function `main': >> : undefined reference to `endutxent' >> sessreg.o(.text+0xa91): In function `main': >> : undefined reference to `getutxent' >> sessreg.o(.text+0xace): In function `main': >> : undefined reference to `endutxent' >> *** Error code 1 > > Do you have utmpx.h in /usr/include while not having getutxent(3) in libc? > I guess this may happen if you downgrade from /head to /stable/8. > > If it's smth else providing config.log is essential. > 74 __BEGIN_DECLS 75 void endutxent(void); 76 struct utmpx *getutxent(void); 77 struct utmpx *getutxid(const struct utmpx *); 78 struct utmpx *getutxline(const struct utmpx *); 79 struct utmpx *pututxline(const struct utmpx *); 80 void setutxent(void); 81 I have them in /usr/include/utmpx.h At configure stage : checking utmpx.h usability... yes checking utmpx.h presence... yes checking for utmpx.h... yes In config.log there is not something strange but if you want to check it I attached it. By the way I'm running 8.1-RELEASE on amd64. With kind regards, -- Demelier David --0016e6dab73f19fc380490db9b1d Content-Type: application/octet-stream; name="config.log" Content-Disposition: attachment; filename="config.log" Content-Transfer-Encoding: base64 X-Attachment-Id: f_geeenlpd0 VGhpcyBmaWxlIGNvbnRhaW5zIGFueSBtZXNzYWdlcyBwcm9kdWNlZCBieSBjb21waWxlcnMgd2hp bGUKcnVubmluZyBjb25maWd1cmUsIHRvIGFpZCBkZWJ1Z2dpbmcgaWYgY29uZmlndXJlIG1ha2Vz IGEgbWlzdGFrZS4KCkl0IHdhcyBjcmVhdGVkIGJ5IHNlc3NyZWcgY29uZmlndXJlIDEuMC41LCB3 aGljaCB3YXMKZ2VuZXJhdGVkIGJ5IEdOVSBBdXRvY29uZiAyLjY3LiAgSW52b2NhdGlvbiBjb21t YW5kIGxpbmUgd2FzCgogICQgLi9jb25maWd1cmUgLS14LWxpYnJhcmllcz0vdXNyL2xvY2FsL2xp YiAtLXgtaW5jbHVkZXM9L3Vzci9sb2NhbC9pbmNsdWRlIC0tcHJlZml4PS91c3IvbG9jYWwgLS1t YW5kaXI9L3Vzci9sb2NhbC9tYW4gLS1pbmZvZGlyPS91c3IvbG9jYWwvaW5mby8gLS1idWlsZD1h bWQ2NC1wb3J0YmxkLWZyZWVic2Q4LjEKCiMjIC0tLS0tLS0tLSAjIwojIyBQbGF0Zm9ybS4gIyMK IyMgLS0tLS0tLS0tICMjCgpob3N0bmFtZSA9IE1lbG9uLm1hbGlrYW5pYS5mcgp1bmFtZSAtbSA9 IGFtZDY0CnVuYW1lIC1yID0gOC4xLVJFTEVBU0UKdW5hbWUgLXMgPSBGcmVlQlNECnVuYW1lIC12 ID0gRnJlZUJTRCA4LjEtUkVMRUFTRSAjMjogU3VuIFNlcCAxOSAyMTo0NzozNiBDRVNUIDIwMTAg ICAgIHJvb3RATWVsb24ubWFsaWthbmlhLmZyOi91c3Ivb2JqL3Vzci9zcmMvc3lzL01lbG9uIAoK L3Vzci9iaW4vdW5hbWUgLXAgPSBhbWQ2NAovYmluL3VuYW1lIC1YICAgICA9IHVua25vd24KCi9i aW4vYXJjaCAgICAgICAgICAgICAgPSB1bmtub3duCi91c3IvYmluL2FyY2ggLWsgICAgICAgPSB1 bmtub3duCi91c3IvY29udmV4L2dldHN5c2luZm8gPSB1bmtub3duCi91c3IvYmluL2hvc3RpbmZv ICAgICAgPSB1bmtub3duCi9iaW4vbWFjaGluZSAgICAgICAgICAgPSB1bmtub3duCi91c3IvYmlu L29zbGV2ZWwgICAgICAgPSB1bmtub3duCi9iaW4vdW5pdmVyc2UgICAgICAgICAgPSB1bmtub3du CgpQQVRIOiAvYmluClBBVEg6IC91c3IvYmluClBBVEg6IC9zYmluClBBVEg6IC91c3Ivc2JpbgpQ QVRIOiAvdXNyL2xvY2FsL2JpbgpQQVRIOiAvdXNyL2xvY2FsL3NiaW4KCgojIyAtLS0tLS0tLS0t LSAjIwojIyBDb3JlIHRlc3RzLiAjIwojIyAtLS0tLS0tLS0tLSAjIwoKY29uZmlndXJlOjIzMjY6 IGNoZWNraW5nIGZvciBhIEJTRC1jb21wYXRpYmxlIGluc3RhbGwKY29uZmlndXJlOjIzOTQ6IHJl c3VsdDogL3Vzci9iaW4vaW5zdGFsbCAtYyAtbyByb290IC1nIHdoZWVsCmNvbmZpZ3VyZToyNDA1 OiBjaGVja2luZyB3aGV0aGVyIGJ1aWxkIGVudmlyb25tZW50IGlzIHNhbmUKY29uZmlndXJlOjI0 NDI6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNTY5OiBjaGVja2luZyBmb3IgYSB0aHJlYWQtc2Fm ZSBta2RpciAtcApjb25maWd1cmU6MjYwODogcmVzdWx0OiAuL2luc3RhbGwtc2ggLWMgLWQKY29u ZmlndXJlOjI2MjE6IGNoZWNraW5nIGZvciBnYXdrCmNvbmZpZ3VyZToyNjUxOiByZXN1bHQ6IG5v CmNvbmZpZ3VyZToyNjIxOiBjaGVja2luZyBmb3IgbWF3awpjb25maWd1cmU6MjY1MTogcmVzdWx0 OiBubwpjb25maWd1cmU6MjYyMTogY2hlY2tpbmcgZm9yIG5hd2sKY29uZmlndXJlOjI2Mzc6IGZv dW5kIC91c3IvYmluL25hd2sKY29uZmlndXJlOjI2NDg6IHJlc3VsdDogbmF3awpjb25maWd1cmU6 MjY1OTogY2hlY2tpbmcgd2hldGhlciBtYWtlIHNldHMgJChNQUtFKQpjb25maWd1cmU6MjY4MTog cmVzdWx0OiB5ZXMKY29uZmlndXJlOjI3NjE6IGNoZWNraW5nIHdoZXRoZXIgdG8gZW5hYmxlIG1h aW50YWluZXItc3BlY2lmaWMgcG9ydGlvbnMgb2YgTWFrZWZpbGVzCmNvbmZpZ3VyZToyNzcwOiBy ZXN1bHQ6IG5vCmNvbmZpZ3VyZToyODQ4OiBjaGVja2luZyBmb3IgZ2NjCmNvbmZpZ3VyZToyODc1 OiByZXN1bHQ6IGNjCmNvbmZpZ3VyZTozMTA0OiBjaGVja2luZyBmb3IgQyBjb21waWxlciB2ZXJz aW9uCmNvbmZpZ3VyZTozMTEzOiBjYyAtLXZlcnNpb24gPiY1CmNjIChHQ0MpIDQuMi4xIDIwMDcw NzE5ICBbRnJlZUJTRF0KQ29weXJpZ2h0IChDKSAyMDA3IEZyZWUgU29mdHdhcmUgRm91bmRhdGlv biwgSW5jLgpUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgc291cmNlIGZvciBjb3B5aW5n IGNvbmRpdGlvbnMuICBUaGVyZSBpcyBOTwp3YXJyYW50eTsgbm90IGV2ZW4gZm9yIE1FUkNIQU5U QUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4KCmNvbmZpZ3VyZToz MTI0OiAkPyA9IDAKY29uZmlndXJlOjMxMTM6IGNjIC12ID4mNQpVc2luZyBidWlsdC1pbiBzcGVj cy4KVGFyZ2V0OiBhbWQ2NC11bmRlcm15ZGVzay1mcmVlYnNkCkNvbmZpZ3VyZWQgd2l0aDogRnJl ZUJTRC9hbWQ2NCBzeXN0ZW0gY29tcGlsZXIKVGhyZWFkIG1vZGVsOiBwb3NpeApnY2MgdmVyc2lv biA0LjIuMSAyMDA3MDcxOSAgW0ZyZWVCU0RdCmNvbmZpZ3VyZTozMTI0OiAkPyA9IDAKY29uZmln dXJlOjMxMTM6IGNjIC1WID4mNQpjYzogJy1WJyBvcHRpb24gbXVzdCBoYXZlIGFyZ3VtZW50CmNv bmZpZ3VyZTozMTI0OiAkPyA9IDEKY29uZmlndXJlOjMxMTM6IGNjIC1xdmVyc2lvbiA+JjUKY2M6 IHVucmVjb2duaXplZCBvcHRpb24gJy1xdmVyc2lvbicKY2M6IE5vIGlucHV0IGZpbGVzIHNwZWNp ZmllZApjb25maWd1cmU6MzEyNDogJD8gPSAxCmNvbmZpZ3VyZTozMTQ0OiBjaGVja2luZyB3aGV0 aGVyIHRoZSBDIGNvbXBpbGVyIHdvcmtzCmNvbmZpZ3VyZTozMTY2OiBjYyAtTzIgLXBpcGUgLWZu by1zdHJpY3QtYWxpYXNpbmcgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjMxNzA6ICQ/ID0g MApjb25maWd1cmU6MzIxODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjMyMjE6IGNoZWNraW5nIGZv ciBDIGNvbXBpbGVyIGRlZmF1bHQgb3V0cHV0IGZpbGUgbmFtZQpjb25maWd1cmU6MzIyMzogcmVz dWx0OiBhLm91dApjb25maWd1cmU6MzIyOTogY2hlY2tpbmcgZm9yIHN1ZmZpeCBvZiBleGVjdXRh Ymxlcwpjb25maWd1cmU6MzIzNjogY2MgLW8gY29uZnRlc3QgLU8yIC1waXBlIC1mbm8tc3RyaWN0 LWFsaWFzaW5nICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZTozMjQwOiAkPyA9IDAKY29uZmln dXJlOjMyNjI6IHJlc3VsdDogCmNvbmZpZ3VyZTozMjg0OiBjaGVja2luZyB3aGV0aGVyIHdlIGFy ZSBjcm9zcyBjb21waWxpbmcKY29uZmlndXJlOjMyOTI6IGNjIC1vIGNvbmZ0ZXN0IC1PMiAtcGlw ZSAtZm5vLXN0cmljdC1hbGlhc2luZyAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6MzI5Njog JD8gPSAwCmNvbmZpZ3VyZTozMzAzOiAuL2NvbmZ0ZXN0CmNvbmZpZ3VyZTozMzA3OiAkPyA9IDAK Y29uZmlndXJlOjMzMjI6IHJlc3VsdDogbm8KY29uZmlndXJlOjMzMjc6IGNoZWNraW5nIGZvciBz dWZmaXggb2Ygb2JqZWN0IGZpbGVzCmNvbmZpZ3VyZTozMzQ5OiBjYyAtYyAtTzIgLXBpcGUgLWZu by1zdHJpY3QtYWxpYXNpbmcgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozMzUzOiAkPyA9IDAK Y29uZmlndXJlOjMzNzQ6IHJlc3VsdDogbwpjb25maWd1cmU6MzM3ODogY2hlY2tpbmcgd2hldGhl ciB3ZSBhcmUgdXNpbmcgdGhlIEdOVSBDIGNvbXBpbGVyCmNvbmZpZ3VyZTozMzk3OiBjYyAtYyAt TzIgLXBpcGUgLWZuby1zdHJpY3QtYWxpYXNpbmcgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToz Mzk3OiAkPyA9IDAKY29uZmlndXJlOjM0MDY6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozNDE1OiBj aGVja2luZyB3aGV0aGVyIGNjIGFjY2VwdHMgLWcKY29uZmlndXJlOjM0MzU6IGNjIC1jIC1nICBj b25mdGVzdC5jID4mNQpjb25maWd1cmU6MzQzNTogJD8gPSAwCmNvbmZpZ3VyZTozNDc2OiByZXN1 bHQ6IHllcwpjb25maWd1cmU6MzQ5MzogY2hlY2tpbmcgZm9yIGNjIG9wdGlvbiB0byBhY2NlcHQg SVNPIEM4OQpjb25maWd1cmU6MzU1NzogY2MgIC1jIC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlh c2luZyAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjM1NTc6ICQ/ID0gMApjb25maWd1cmU6MzU3 MDogcmVzdWx0OiBub25lIG5lZWRlZApjb25maWd1cmU6MzYwMTogY2hlY2tpbmcgZm9yIHN0eWxl IG9mIGluY2x1ZGUgdXNlZCBieSBtYWtlCmNvbmZpZ3VyZTozNjI5OiByZXN1bHQ6IEdOVQpjb25m aWd1cmU6MzY1NDogY2hlY2tpbmcgZGVwZW5kZW5jeSBzdHlsZSBvZiBjYwpjb25maWd1cmU6Mzc2 NDogcmVzdWx0OiBnY2MzCmNvbmZpZ3VyZTozNzg3OiBjaGVja2luZyBob3cgdG8gcnVuIHRoZSBD IHByZXByb2Nlc3Nvcgpjb25maWd1cmU6MzgxODogY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZmlndXJl OjM4MTg6ICQ/ID0gMApjb25maWd1cmU6MzgzMjogY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZnRlc3Qu YzoxMToyODogZXJyb3I6IGFjX25vbmV4aXN0ZW50Lmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3Rv cnkKY29uZmlndXJlOjM4MzI6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoK fCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgInNlc3NyZWciCnwgI2Rl ZmluZSBQQUNLQUdFX1RBUk5BTUUgInNlc3NyZWciCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04g IjEuMC41Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgInNlc3NyZWcgMS4wLjUiCnwgI2RlZmlu ZSBQQUNLQUdFX0JVR1JFUE9SVCAiaHR0cHM6Ly9idWdzLmZyZWVkZXNrdG9wLm9yZy9lbnRlcl9i dWcuY2dpP3Byb2R1Y3Q9eG9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICIiCnwgI2RlZmluZSBQ QUNLQUdFICJzZXNzcmVnIgp8ICNkZWZpbmUgVkVSU0lPTiAiMS4wLjUiCnwgLyogZW5kIGNvbmZk ZWZzLmguICAqLwp8ICNpbmNsdWRlIDxhY19ub25leGlzdGVudC5oPgpjb25maWd1cmU6Mzg1Nzog cmVzdWx0OiBjYyAtRQpjb25maWd1cmU6Mzg3NzogY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZmlndXJl OjM4Nzc6ICQ/ID0gMApjb25maWd1cmU6Mzg5MTogY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZnRlc3Qu YzoxMToyODogZXJyb3I6IGFjX25vbmV4aXN0ZW50Lmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3Rv cnkKY29uZmlndXJlOjM4OTE6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoK fCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgInNlc3NyZWciCnwgI2Rl ZmluZSBQQUNLQUdFX1RBUk5BTUUgInNlc3NyZWciCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04g IjEuMC41Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgInNlc3NyZWcgMS4wLjUiCnwgI2RlZmlu ZSBQQUNLQUdFX0JVR1JFUE9SVCAiaHR0cHM6Ly9idWdzLmZyZWVkZXNrdG9wLm9yZy9lbnRlcl9i dWcuY2dpP3Byb2R1Y3Q9eG9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICIiCnwgI2RlZmluZSBQ QUNLQUdFICJzZXNzcmVnIgp8ICNkZWZpbmUgVkVSU0lPTiAiMS4wLjUiCnwgLyogZW5kIGNvbmZk ZWZzLmguICAqLwp8ICNpbmNsdWRlIDxhY19ub25leGlzdGVudC5oPgpjb25maWd1cmU6MzkyMDog Y2hlY2tpbmcgZm9yIGdyZXAgdGhhdCBoYW5kbGVzIGxvbmcgbGluZXMgYW5kIC1lCmNvbmZpZ3Vy ZTozOTc4OiByZXN1bHQ6IC91c3IvYmluL2dyZXAKY29uZmlndXJlOjM5ODM6IGNoZWNraW5nIGZv ciBlZ3JlcApjb25maWd1cmU6NDA0NTogcmVzdWx0OiAvdXNyL2Jpbi9ncmVwIC1FCmNvbmZpZ3Vy ZTo0MDUwOiBjaGVja2luZyBmb3IgQU5TSSBDIGhlYWRlciBmaWxlcwpjb25maWd1cmU6NDA3MDog Y2MgLWMgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nICBjb25mdGVzdC5jID4mNQpjb25m aWd1cmU6NDA3MDogJD8gPSAwCmNvbmZpZ3VyZTo0MTQzOiBjYyAtbyBjb25mdGVzdCAtTzIgLXBp cGUgLWZuby1zdHJpY3QtYWxpYXNpbmcgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjQxNDM6 ICQ/ID0gMApjb25maWd1cmU6NDE0MzogLi9jb25mdGVzdApjb25maWd1cmU6NDE0MzogJD8gPSAw CmNvbmZpZ3VyZTo0MTU0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NDE2NzogY2hlY2tpbmcgZm9y IHN5cy90eXBlcy5oCmNvbmZpZ3VyZTo0MTY3OiBjYyAtYyAtTzIgLXBpcGUgLWZuby1zdHJpY3Qt YWxpYXNpbmcgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo0MTY3OiAkPyA9IDAKY29uZmlndXJl OjQxNjc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo0MTY3OiBjaGVja2luZyBmb3Igc3lzL3N0YXQu aApjb25maWd1cmU6NDE2NzogY2MgLWMgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nICBj b25mdGVzdC5jID4mNQpjb25maWd1cmU6NDE2NzogJD8gPSAwCmNvbmZpZ3VyZTo0MTY3OiByZXN1 bHQ6IHllcwpjb25maWd1cmU6NDE2NzogY2hlY2tpbmcgZm9yIHN0ZGxpYi5oCmNvbmZpZ3VyZTo0 MTY3OiBjYyAtYyAtTzIgLXBpcGUgLWZuby1zdHJpY3QtYWxpYXNpbmcgIGNvbmZ0ZXN0LmMgPiY1 CmNvbmZpZ3VyZTo0MTY3OiAkPyA9IDAKY29uZmlndXJlOjQxNjc6IHJlc3VsdDogeWVzCmNvbmZp Z3VyZTo0MTY3OiBjaGVja2luZyBmb3Igc3RyaW5nLmgKY29uZmlndXJlOjQxNjc6IGNjIC1jIC1P MiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjQx Njc6ICQ/ID0gMApjb25maWd1cmU6NDE2NzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjQxNjc6IGNo ZWNraW5nIGZvciBtZW1vcnkuaApjb25maWd1cmU6NDE2NzogY2MgLWMgLU8yIC1waXBlIC1mbm8t c3RyaWN0LWFsaWFzaW5nICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6NDE2NzogJD8gPSAwCmNv bmZpZ3VyZTo0MTY3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NDE2NzogY2hlY2tpbmcgZm9yIHN0 cmluZ3MuaApjb25maWd1cmU6NDE2NzogY2MgLWMgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFz aW5nICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6NDE2NzogJD8gPSAwCmNvbmZpZ3VyZTo0MTY3 OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NDE2NzogY2hlY2tpbmcgZm9yIGludHR5cGVzLmgKY29u ZmlndXJlOjQxNjc6IGNjIC1jIC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZyAgY29uZnRl c3QuYyA+JjUKY29uZmlndXJlOjQxNjc6ICQ/ID0gMApjb25maWd1cmU6NDE2NzogcmVzdWx0OiB5 ZXMKY29uZmlndXJlOjQxNjc6IGNoZWNraW5nIGZvciBzdGRpbnQuaApjb25maWd1cmU6NDE2Nzog Y2MgLWMgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nICBjb25mdGVzdC5jID4mNQpjb25m aWd1cmU6NDE2NzogJD8gPSAwCmNvbmZpZ3VyZTo0MTY3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6 NDE2NzogY2hlY2tpbmcgZm9yIHVuaXN0ZC5oCmNvbmZpZ3VyZTo0MTY3OiBjYyAtYyAtTzIgLXBp cGUgLWZuby1zdHJpY3QtYWxpYXNpbmcgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo0MTY3OiAk PyA9IDAKY29uZmlndXJlOjQxNjc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo0MTc5OiBjaGVja2lu ZyBmb3IgY2Mgb3B0aW9uIHRvIGFjY2VwdCBJU08gQzk5CmNvbmZpZ3VyZTo0MzI4OiBjYyAgLWMg LU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5j OjcxOiBlcnJvcjogZXhwZWN0ZWQgJzsnLCAnLCcgb3IgJyknIGJlZm9yZSAndGV4dCcKY29uZnRl c3QuYzogSW4gZnVuY3Rpb24gJ21haW4nOgpjb25mdGVzdC5jOjEyNTogZXJyb3I6IGV4cGVjdGVk ICc9JywgJywnLCAnOycsICdhc20nIG9yICdfX2F0dHJpYnV0ZV9fJyBiZWZvcmUgJ25ld3ZhcicK Y29uZnRlc3QuYzoxMjU6IGVycm9yOiAnbmV3dmFyJyB1bmRlY2xhcmVkIChmaXJzdCB1c2UgaW4g dGhpcyBmdW5jdGlvbikKY29uZnRlc3QuYzoxMjU6IGVycm9yOiAoRWFjaCB1bmRlY2xhcmVkIGlk ZW50aWZpZXIgaXMgcmVwb3J0ZWQgb25seSBvbmNlCmNvbmZ0ZXN0LmM6MTI1OiBlcnJvcjogZm9y IGVhY2ggZnVuY3Rpb24gaXQgYXBwZWFycyBpbi4pCmNvbmZ0ZXN0LmM6MTM1OiBlcnJvcjogJ2Zv cicgbG9vcCBpbml0aWFsIGRlY2xhcmF0aW9uIHVzZWQgb3V0c2lkZSBDOTkgbW9kZQpjb25maWd1 cmU6NDMyODogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZk ZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAic2Vzc3JlZyIKfCAjZGVmaW5lIFBBQ0tB R0VfVEFSTkFNRSAic2Vzc3JlZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMS4wLjUiCnwg I2RlZmluZSBQQUNLQUdFX1NUUklORyAic2Vzc3JlZyAxLjAuNSIKfCAjZGVmaW5lIFBBQ0tBR0Vf QlVHUkVQT1JUICJodHRwczovL2J1Z3MuZnJlZWRlc2t0b3Aub3JnL2VudGVyX2J1Zy5jZ2k/cHJv ZHVjdD14b3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgIiIKfCAjZGVmaW5lIFBBQ0tBR0UgInNl c3NyZWciCnwgI2RlZmluZSBWRVJTSU9OICIxLjAuNSIKfCAjZGVmaW5lIFNURENfSEVBREVSUyAx CnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAx CnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNk ZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmlu ZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBI QVZFX1VOSVNURF9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN0ZGFy Zy5oPgp8ICNpbmNsdWRlIDxzdGRib29sLmg+CnwgI2luY2x1ZGUgPHN0ZGxpYi5oPgp8ICNpbmNs dWRlIDx3Y2hhci5oPgp8ICNpbmNsdWRlIDxzdGRpby5oPgp8IAp8IC8vIENoZWNrIHZhcmFyZ3Mg bWFjcm9zLiAgVGhlc2UgZXhhbXBsZXMgYXJlIHRha2VuIGZyb20gQzk5IDYuMTAuMy41Lgp8ICNk ZWZpbmUgZGVidWcoLi4uKSBmcHJpbnRmIChzdGRlcnIsIF9fVkFfQVJHU19fKQp8ICNkZWZpbmUg c2hvd2xpc3QoLi4uKSBwdXRzICgjX19WQV9BUkdTX18pCnwgI2RlZmluZSByZXBvcnQodGVzdCwu Li4pICgodGVzdCkgPyBwdXRzICgjdGVzdCkgOiBwcmludGYgKF9fVkFfQVJHU19fKSkKfCBzdGF0 aWMgdm9pZAp8IHRlc3RfdmFyYXJnc19tYWNyb3MgKHZvaWQpCnwgewp8ICAgaW50IHggPSAxMjM0 Owp8ICAgaW50IHkgPSA1Njc4Owp8ICAgZGVidWcgKCJGbGFnIik7CnwgICBkZWJ1ZyAoIlggPSAl ZFxuIiwgeCk7CnwgICBzaG93bGlzdCAoVGhlIGZpcnN0LCBzZWNvbmQsIGFuZCB0aGlyZCBpdGVt cy4pOwp8ICAgcmVwb3J0ICh4PnksICJ4IGlzICVkIGJ1dCB5IGlzICVkIiwgeCwgeSk7CnwgfQp8 IAp8IC8vIENoZWNrIGxvbmcgbG9uZyB0eXBlcy4KfCAjZGVmaW5lIEJJRzY0IDE4NDQ2NzQ0MDcz NzA5NTUxNjE1dWxsCnwgI2RlZmluZSBCSUczMiA0Mjk0OTY3Mjk1dWwKfCAjZGVmaW5lIEJJR19P SyAoQklHNjQgLyBCSUczMiA9PSA0Mjk0OTY3Mjk3dWxsICYmIEJJRzY0ICUgQklHMzIgPT0gMCkK fCAjaWYgIUJJR19PSwp8ICAgeW91ciBwcmVwcm9jZXNzb3IgaXMgYnJva2VuOwp8ICNlbmRpZgp8 ICNpZiBCSUdfT0sKfCAjZWxzZQp8ICAgeW91ciBwcmVwcm9jZXNzb3IgaXMgYnJva2VuOwp8ICNl bmRpZgp8IHN0YXRpYyBsb25nIGxvbmcgaW50IGJpZ251bSA9IC05MjIzMzcyMDM2ODU0Nzc1ODA3 TEw7Cnwgc3RhdGljIHVuc2lnbmVkIGxvbmcgbG9uZyBpbnQgdWJpZ251bSA9IEJJRzY0Owp8IAp8 IHN0cnVjdCBpbmNvbXBsZXRlX2FycmF5Cnwgewp8ICAgaW50IGRhdGFzaXplOwp8ICAgZG91Ymxl IGRhdGFbXTsKfCB9Owp8IAp8IHN0cnVjdCBuYW1lZF9pbml0IHsKfCAgIGludCBudW1iZXI7Cnwg ICBjb25zdCB3Y2hhcl90ICpuYW1lOwp8ICAgZG91YmxlIGF2ZXJhZ2U7CnwgfTsKfCAKfCB0eXBl ZGVmIGNvbnN0IGNoYXIgKmNjcDsKfCAKfCBzdGF0aWMgaW5saW5lIGludAp8IHRlc3RfcmVzdHJp Y3QgKGNjcCByZXN0cmljdCB0ZXh0KQp8IHsKfCAgIC8vIFNlZSBpZiBDKystc3R5bGUgY29tbWVu dHMgd29yay4KfCAgIC8vIEl0ZXJhdGUgdGhyb3VnaCBpdGVtcyB2aWEgdGhlIHJlc3RyaWN0ZWQg cG9pbnRlci4KfCAgIC8vIEFsc28gY2hlY2sgZm9yIGRlY2xhcmF0aW9ucyBpbiBmb3IgbG9vcHMu CnwgICBmb3IgKHVuc2lnbmVkIGludCBpID0gMDsgKih0ZXh0K2kpICE9ICdcMCc7ICsraSkKfCAg ICAgY29udGludWU7CnwgICByZXR1cm4gMDsKfCB9CnwgCnwgLy8gQ2hlY2sgdmFyYXJncyBhbmQg dmFfY29weS4KfCBzdGF0aWMgdm9pZAp8IHRlc3RfdmFyYXJncyAoY29uc3QgY2hhciAqZm9ybWF0 LCAuLi4pCnwgewp8ICAgdmFfbGlzdCBhcmdzOwp8ICAgdmFfc3RhcnQgKGFyZ3MsIGZvcm1hdCk7 CnwgICB2YV9saXN0IGFyZ3NfY29weTsKfCAgIHZhX2NvcHkgKGFyZ3NfY29weSwgYXJncyk7Cnwg CnwgICBjb25zdCBjaGFyICpzdHI7CnwgICBpbnQgbnVtYmVyOwp8ICAgZmxvYXQgZm51bWJlcjsK fCAKfCAgIHdoaWxlICgqZm9ybWF0KQp8ICAgICB7CnwgICAgICAgc3dpdGNoICgqZm9ybWF0Kysp CnwgCXsKfCAJY2FzZSAncyc6IC8vIHN0cmluZwp8IAkgIHN0ciA9IHZhX2FyZyAoYXJnc19jb3B5 LCBjb25zdCBjaGFyICopOwp8IAkgIGJyZWFrOwp8IAljYXNlICdkJzogLy8gaW50CnwgCSAgbnVt YmVyID0gdmFfYXJnIChhcmdzX2NvcHksIGludCk7CnwgCSAgYnJlYWs7CnwgCWNhc2UgJ2YnOiAv LyBmbG9hdAp8IAkgIGZudW1iZXIgPSB2YV9hcmcgKGFyZ3NfY29weSwgZG91YmxlKTsKfCAJICBi cmVhazsKfCAJZGVmYXVsdDoKfCAJICBicmVhazsKfCAJfQp8ICAgICB9CnwgICB2YV9lbmQgKGFy Z3NfY29weSk7CnwgICB2YV9lbmQgKGFyZ3MpOwp8IH0KfCAKfCBpbnQKfCBtYWluICgpCnwgewp8 IAp8ICAgLy8gQ2hlY2sgYm9vbC4KfCAgIF9Cb29sIHN1Y2Nlc3MgPSBmYWxzZTsKfCAKfCAgIC8v IENoZWNrIHJlc3RyaWN0Lgp8ICAgaWYgKHRlc3RfcmVzdHJpY3QgKCJTdHJpbmcgbGl0ZXJhbCIp ID09IDApCnwgICAgIHN1Y2Nlc3MgPSB0cnVlOwp8ICAgY2hhciAqcmVzdHJpY3QgbmV3dmFyID0g IkFub3RoZXIgc3RyaW5nIjsKfCAKfCAgIC8vIENoZWNrIHZhcmFyZ3MuCnwgICB0ZXN0X3ZhcmFy Z3MgKCJzLCBkJyBmIC4iLCAic3RyaW5nIiwgNjUsIDM0LjIzNCk7CnwgICB0ZXN0X3ZhcmFyZ3Nf bWFjcm9zICgpOwp8IAp8ICAgLy8gQ2hlY2sgZmxleGlibGUgYXJyYXkgbWVtYmVycy4KfCAgIHN0 cnVjdCBpbmNvbXBsZXRlX2FycmF5ICppYSA9CnwgICAgIG1hbGxvYyAoc2l6ZW9mIChzdHJ1Y3Qg aW5jb21wbGV0ZV9hcnJheSkgKyAoc2l6ZW9mIChkb3VibGUpICogMTApKTsKfCAgIGlhLT5kYXRh c2l6ZSA9IDEwOwp8ICAgZm9yIChpbnQgaSA9IDA7IGkgPCBpYS0+ZGF0YXNpemU7ICsraSkKfCAg ICAgaWEtPmRhdGFbaV0gPSBpICogMS4yMzQ7CnwgCnwgICAvLyBDaGVjayBuYW1lZCBpbml0aWFs aXplcnMuCnwgICBzdHJ1Y3QgbmFtZWRfaW5pdCBuaSA9IHsKfCAgICAgLm51bWJlciA9IDM0LAp8 ICAgICAubmFtZSA9IEwiVGVzdCB3aWRlIHN0cmluZyIsCnwgICAgIC5hdmVyYWdlID0gNTQzLjM0 MzQzLAp8ICAgfTsKfCAKfCAgIG5pLm51bWJlciA9IDU4Owp8IAp8ICAgaW50IGR5bmFtaWNfYXJy YXlbbmkubnVtYmVyXTsKfCAgIGR5bmFtaWNfYXJyYXlbbmkubnVtYmVyIC0gMV0gPSA1NDM7Cnwg CnwgICAvLyB3b3JrIGFyb3VuZCB1bnVzZWQgdmFyaWFibGUgd2FybmluZ3MKfCAgIHJldHVybiAo IXN1Y2Nlc3MgfHwgYmlnbnVtID09IDBMTCB8fCB1YmlnbnVtID09IDB1TEwgfHwgbmV3dmFyWzBd ID09ICd4Jwp8IAkgIHx8IGR5bmFtaWNfYXJyYXlbbmkubnVtYmVyIC0gMV0gIT0gNTQzKTsKfCAK fCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjQzMjg6IGNjIC1zdGQ9Z251OTkgLWMg LU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6 NDMyODogJD8gPSAwCmNvbmZpZ3VyZTo0MzQ4OiByZXN1bHQ6IC1zdGQ9Z251OTkKY29uZmlndXJl OjQ0MDk6IGNoZWNraW5nIGZvciBwa2ctY29uZmlnCmNvbmZpZ3VyZTo0NDI3OiBmb3VuZCAvdXNy L2xvY2FsL2Jpbi9wa2ctY29uZmlnCmNvbmZpZ3VyZTo0NDM5OiByZXN1bHQ6IC91c3IvbG9jYWwv YmluL3BrZy1jb25maWcKY29uZmlndXJlOjQ0NjQ6IGNoZWNraW5nIHBrZy1jb25maWcgaXMgYXQg bGVhc3QgdmVyc2lvbiAwLjkuMApjb25maWd1cmU6NDQ2NzogcmVzdWx0OiB5ZXMKY29uZmlndXJl OjQ0Nzk6IGNoZWNraW5nIGJ1aWxkIHN5c3RlbSB0eXBlCmNvbmZpZ3VyZTo0NDkzOiByZXN1bHQ6 IGFtZDY0LXBvcnRibGQtZnJlZWJzZDguMQpjb25maWd1cmU6NDUxMzogY2hlY2tpbmcgaG9zdCBz eXN0ZW0gdHlwZQpjb25maWd1cmU6NDUyNjogcmVzdWx0OiBhbWQ2NC1wb3J0YmxkLWZyZWVic2Q4 LjEKY29uZmlndXJlOjQ3NDI6IGNoZWNraW5nIGxhc3Rsb2cuaCB1c2FiaWxpdHkKY29uZmlndXJl OjQ3NDI6IGNjIC1zdGQ9Z251OTkgLWMgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nICBj b25mdGVzdC5jID4mNQpjb25mdGVzdC5jOjU3OjIxOiBlcnJvcjogbGFzdGxvZy5oOiBObyBzdWNo IGZpbGUgb3IgZGlyZWN0b3J5CmNvbmZpZ3VyZTo0NzQyOiAkPyA9IDEKY29uZmlndXJlOiBmYWls ZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1F ICJzZXNzcmVnIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJzZXNzcmVnIgp8ICNkZWZpbmUg UEFDS0FHRV9WRVJTSU9OICIxLjAuNSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJzZXNzcmVn IDEuMC41Igp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImh0dHBzOi8vYnVncy5mcmVlZGVz a3RvcC5vcmcvZW50ZXJfYnVnLmNnaT9wcm9kdWN0PXhvcmciCnwgI2RlZmluZSBQQUNLQUdFX1VS TCAiIgp8ICNkZWZpbmUgUEFDS0FHRSAic2Vzc3JlZyIKfCAjZGVmaW5lIFZFUlNJT04gIjEuMC41 Igp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8 ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNk ZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5l IEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBI QVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgUEFDS0FH RV9WRVJTSU9OX01BSk9SIDEKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTl9NSU5PUiAwCnwgI2Rl ZmluZSBQQUNLQUdFX1ZFUlNJT05fUEFUQ0hMRVZFTCA1CnwgLyogZW5kIGNvbmZkZWZzLmguICAq Lwp8ICNpbmNsdWRlIDxzdGRpby5oPgp8ICNpZmRlZiBIQVZFX1NZU19UWVBFU19ICnwgIyBpbmNs dWRlIDxzeXMvdHlwZXMuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TWVNfU1RBVF9ICnwgIyBp bmNsdWRlIDxzeXMvc3RhdC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBTVERDX0hFQURFUlMKfCAjIGlu Y2x1ZGUgPHN0ZGxpYi5oPgp8ICMgaW5jbHVkZSA8c3RkZGVmLmg+CnwgI2Vsc2UKfCAjIGlmZGVm IEhBVkVfU1RETElCX0gKfCAjICBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjIGVuZGlmCnwgI2VuZGlm CnwgI2lmZGVmIEhBVkVfU1RSSU5HX0gKfCAjIGlmICFkZWZpbmVkIFNURENfSEVBREVSUyAmJiBk ZWZpbmVkIEhBVkVfTUVNT1JZX0gKfCAjICBpbmNsdWRlIDxtZW1vcnkuaD4KfCAjIGVuZGlmCnwg IyBpbmNsdWRlIDxzdHJpbmcuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9TVFJJTkdTX0gKfCAj IGluY2x1ZGUgPHN0cmluZ3MuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9JTlRUWVBFU19ICnwg IyBpbmNsdWRlIDxpbnR0eXBlcy5oPgp8ICNlbmRpZgp8ICNpZmRlZiBIQVZFX1NURElOVF9ICnwg IyBpbmNsdWRlIDxzdGRpbnQuaD4KfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9VTklTVERfSAp8ICMg aW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgI2luY2x1ZGUgPGxhc3Rsb2cuaD4KY29uZmln dXJlOjQ3NDI6IHJlc3VsdDogbm8KY29uZmlndXJlOjQ3NDI6IGNoZWNraW5nIGxhc3Rsb2cuaCBw cmVzZW5jZQpjb25maWd1cmU6NDc0MjogY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZnRlc3QuYzoyNDoy MTogZXJyb3I6IGxhc3Rsb2cuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpjb25maWd1cmU6 NDc0MjogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZz LmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAic2Vzc3JlZyIKfCAjZGVmaW5lIFBBQ0tBR0Vf VEFSTkFNRSAic2Vzc3JlZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMS4wLjUiCnwgI2Rl ZmluZSBQQUNLQUdFX1NUUklORyAic2Vzc3JlZyAxLjAuNSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVH UkVQT1JUICJodHRwczovL2J1Z3MuZnJlZWRlc2t0b3Aub3JnL2VudGVyX2J1Zy5jZ2k/cHJvZHVj dD14b3JnIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgIiIKfCAjZGVmaW5lIFBBQ0tBR0UgInNlc3Ny ZWciCnwgI2RlZmluZSBWRVJTSU9OICIxLjAuNSIKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwg I2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwg I2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZp bmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBI QVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZF X1VOSVNURF9IIDEKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTl9NQUpPUiAxCnwgI2RlZmluZSBQ QUNLQUdFX1ZFUlNJT05fTUlOT1IgMAp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OX1BBVENITEVW RUwgNQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8bGFzdGxvZy5oPgpjb25m aWd1cmU6NDc0MjogcmVzdWx0OiBubwpjb25maWd1cmU6NDc0MjogY2hlY2tpbmcgZm9yIGxhc3Rs b2cuaApjb25maWd1cmU6NDc0MjogcmVzdWx0OiBubwpjb25maWd1cmU6NDc0MjogY2hlY2tpbmcg dXRtcC5oIHVzYWJpbGl0eQpjb25maWd1cmU6NDc0MjogY2MgLXN0ZD1nbnU5OSAtYyAtTzIgLXBp cGUgLWZuby1zdHJpY3QtYWxpYXNpbmcgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo0NzQyOiAk PyA9IDAKY29uZmlndXJlOjQ3NDI6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo0NzQyOiBjaGVja2lu ZyB1dG1wLmggcHJlc2VuY2UKY29uZmlndXJlOjQ3NDI6IGNjIC1FICBjb25mdGVzdC5jCmNvbmZp Z3VyZTo0NzQyOiAkPyA9IDAKY29uZmlndXJlOjQ3NDI6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo0 NzQyOiBjaGVja2luZyBmb3IgdXRtcC5oCmNvbmZpZ3VyZTo0NzQyOiByZXN1bHQ6IHllcwpjb25m aWd1cmU6NDc0MjogY2hlY2tpbmcgdXRtcHguaCB1c2FiaWxpdHkKY29uZmlndXJlOjQ3NDI6IGNj IC1zdGQ9Z251OTkgLWMgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nICBjb25mdGVzdC5j ID4mNQpjb25maWd1cmU6NDc0MjogJD8gPSAwCmNvbmZpZ3VyZTo0NzQyOiByZXN1bHQ6IHllcwpj b25maWd1cmU6NDc0MjogY2hlY2tpbmcgdXRtcHguaCBwcmVzZW5jZQpjb25maWd1cmU6NDc0Mjog Y2MgLUUgIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjQ3NDI6ICQ/ID0gMApjb25maWd1cmU6NDc0Mjog cmVzdWx0OiB5ZXMKY29uZmlndXJlOjQ3NDI6IGNoZWNraW5nIGZvciB1dG1weC5oCmNvbmZpZ3Vy ZTo0NzQyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6NDc0MjogY2hlY2tpbmcgc3lzL3BhcmFtLmgg dXNhYmlsaXR5CmNvbmZpZ3VyZTo0NzQyOiBjYyAtc3RkPWdudTk5IC1jIC1PMiAtcGlwZSAtZm5v LXN0cmljdC1hbGlhc2luZyAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjQ3NDI6ICQ/ID0gMApj b25maWd1cmU6NDc0MjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjQ3NDI6IGNoZWNraW5nIHN5cy9w YXJhbS5oIHByZXNlbmNlCmNvbmZpZ3VyZTo0NzQyOiBjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1 cmU6NDc0MjogJD8gPSAwCmNvbmZpZ3VyZTo0NzQyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6NDc0 MjogY2hlY2tpbmcgZm9yIHN5cy9wYXJhbS5oCmNvbmZpZ3VyZTo0NzQyOiByZXN1bHQ6IHllcwpj b25maWd1cmU6NDc1MjogY2hlY2tpbmcgZm9yIHN0cnVjdCB1dG1weC51dF9zeXNsZW4KY29uZmln dXJlOjQ3NTI6IGNjIC1zdGQ9Z251OTkgLWMgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5n ICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiAnbWFpbic6CmNvbmZ0ZXN0 LmM6MzM6IGVycm9yOiAnc3RydWN0IHV0bXB4JyBoYXMgbm8gbWVtYmVyIG5hbWVkICd1dF9zeXNs ZW4nCmNvbmZpZ3VyZTo0NzUyOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6 CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJzZXNzcmVnIgp8ICNk ZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJzZXNzcmVnIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9O ICIxLjAuNSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJzZXNzcmVnIDEuMC41Igp8ICNkZWZp bmUgUEFDS0FHRV9CVUdSRVBPUlQgImh0dHBzOi8vYnVncy5mcmVlZGVza3RvcC5vcmcvZW50ZXJf YnVnLmNnaT9wcm9kdWN0PXhvcmciCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiIgp8ICNkZWZpbmUg UEFDS0FHRSAic2Vzc3JlZyIKfCAjZGVmaW5lIFZFUlNJT04gIjEuMC41Igp8ICNkZWZpbmUgU1RE Q19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9T WVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJ TkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19I IDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEK fCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OX01BSk9S IDEKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTl9NSU5PUiAwCnwgI2RlZmluZSBQQUNLQUdFX1ZF UlNJT05fUEFUQ0hMRVZFTCA1CnwgI2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZF X1VUTVBYX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgLyogZW5kIGNvbmZkZWZz LmguICAqLwp8ICNpbmNsdWRlIDx1dG1weC5oPgp8IAp8IGludAp8IG1haW4gKCkKfCB7Cnwgc3Rh dGljIHN0cnVjdCB1dG1weCBhY19hZ2dyOwp8IGlmIChhY19hZ2dyLnV0X3N5c2xlbikKfCByZXR1 cm4gMDsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjQ3NTI6IGNjIC1zdGQ9Z251 OTkgLWMgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nICBjb25mdGVzdC5jID4mNQpjb25m dGVzdC5jOiBJbiBmdW5jdGlvbiAnbWFpbic6CmNvbmZ0ZXN0LmM6MzM6IGVycm9yOiAnc3RydWN0 IHV0bXB4JyBoYXMgbm8gbWVtYmVyIG5hbWVkICd1dF9zeXNsZW4nCmNvbmZpZ3VyZTo0NzUyOiAk PyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8 ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJzZXNzcmVnIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1F ICJzZXNzcmVnIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIxLjAuNSIKfCAjZGVmaW5lIFBB Q0tBR0VfU1RSSU5HICJzZXNzcmVnIDEuMC41Igp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQg Imh0dHBzOi8vYnVncy5mcmVlZGVza3RvcC5vcmcvZW50ZXJfYnVnLmNnaT9wcm9kdWN0PXhvcmci CnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiIgp8ICNkZWZpbmUgUEFDS0FHRSAic2Vzc3JlZyIKfCAj ZGVmaW5lIFZFUlNJT04gIjEuMC41Igp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5l IEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5l IEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZF X01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5U VFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1RE X0ggMQp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OX01BSk9SIDEKfCAjZGVmaW5lIFBBQ0tBR0Vf VkVSU0lPTl9NSU5PUiAwCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT05fUEFUQ0hMRVZFTCA1Cnwg I2RlZmluZSBIQVZFX1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBYX0ggMQp8ICNkZWZpbmUg SEFWRV9TWVNfUEFSQU1fSCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDx1 dG1weC5oPgp8IAp8IGludAp8IG1haW4gKCkKfCB7Cnwgc3RhdGljIHN0cnVjdCB1dG1weCBhY19h Z2dyOwp8IGlmIChzaXplb2YgYWNfYWdnci51dF9zeXNsZW4pCnwgcmV0dXJuIDA7CnwgICA7Cnwg ICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZTo0NzUyOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo0NzY4 OiBjaGVja2luZyBmb3IgdXBkd3RtcHgKY29uZmlndXJlOjQ3Njg6IGNjIC1zdGQ9Z251OTkgLW8g Y29uZnRlc3QgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nICAgY29uZnRlc3QuYyAgPiY1 Ci90bXAvY2M4b1lIdUUubygudGV4dCsweDcpOiBJbiBmdW5jdGlvbiBgbWFpbic6CjogdW5kZWZp bmVkIHJlZmVyZW5jZSB0byBgdXBkd3RtcHgnCmNvbmZpZ3VyZTo0NzY4OiAkPyA9IDEKY29uZmln dXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFD S0FHRV9OQU1FICJzZXNzcmVnIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJzZXNzcmVnIgp8 ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIxLjAuNSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5H ICJzZXNzcmVnIDEuMC41Igp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImh0dHBzOi8vYnVn cy5mcmVlZGVza3RvcC5vcmcvZW50ZXJfYnVnLmNnaT9wcm9kdWN0PXhvcmciCnwgI2RlZmluZSBQ QUNLQUdFX1VSTCAiIgp8ICNkZWZpbmUgUEFDS0FHRSAic2Vzc3JlZyIKfCAjZGVmaW5lIFZFUlNJ T04gIjEuMC41Igp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZ UEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElC X0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEK fCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwg I2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZp bmUgUEFDS0FHRV9WRVJTSU9OX01BSk9SIDEKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTl9NSU5P UiAwCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT05fUEFUQ0hMRVZFTCA1CnwgI2RlZmluZSBIQVZF X1VUTVBfSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBYX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFS QU1fSCAxCnwgI2RlZmluZSBIQVZFX1VUTVBYX1VUX1NZU0xFTiAwCnwgLyogZW5kIGNvbmZkZWZz LmguICAqLwp8IC8qIERlZmluZSB1cGR3dG1weCB0byBhbiBpbm5vY3VvdXMgdmFyaWFudCwgaW4g Y2FzZSA8bGltaXRzLmg+IGRlY2xhcmVzIHVwZHd0bXB4Lgp8ICAgIEZvciBleGFtcGxlLCBIUC1V WCAxMWkgPGxpbWl0cy5oPiBkZWNsYXJlcyBnZXR0aW1lb2ZkYXkuICAqLwp8ICNkZWZpbmUgdXBk d3RtcHggaW5ub2N1b3VzX3VwZHd0bXB4CnwgCnwgLyogU3lzdGVtIGhlYWRlciB0byBkZWZpbmUg X19zdHViIG1hY3JvcyBhbmQgaG9wZWZ1bGx5IGZldyBwcm90b3R5cGVzLAp8ICAgICB3aGljaCBj YW4gY29uZmxpY3Qgd2l0aCBjaGFyIHVwZHd0bXB4ICgpOyBiZWxvdy4KfCAgICAgUHJlZmVyIDxs aW1pdHMuaD4gdG8gPGFzc2VydC5oPiBpZiBfX1NURENfXyBpcyBkZWZpbmVkLCBzaW5jZQp8ICAg ICA8bGltaXRzLmg+IGV4aXN0cyBldmVuIG9uIGZyZWVzdGFuZGluZyBjb21waWxlcnMuICAqLwp8 IAp8ICNpZmRlZiBfX1NURENfXwp8ICMgaW5jbHVkZSA8bGltaXRzLmg+CnwgI2Vsc2UKfCAjIGlu Y2x1ZGUgPGFzc2VydC5oPgp8ICNlbmRpZgp8IAp8ICN1bmRlZiB1cGR3dG1weAp8IAp8IC8qIE92 ZXJyaWRlIGFueSBHQ0MgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLgp8ICAg IFVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIEdD Qwp8ICAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGls bCBhcHBseS4gICovCnwgI2lmZGVmIF9fY3BsdXNwbHVzCnwgZXh0ZXJuICJDIgp8ICNlbmRpZgp8 IGNoYXIgdXBkd3RtcHggKCk7CnwgLyogVGhlIEdOVSBDIGxpYnJhcnkgZGVmaW5lcyB0aGlzIGZv ciBmdW5jdGlvbnMgd2hpY2ggaXQgaW1wbGVtZW50cwp8ICAgICB0byBhbHdheXMgZmFpbCB3aXRo IEVOT1NZUy4gIFNvbWUgZnVuY3Rpb25zIGFyZSBhY3R1YWxseSBuYW1lZAp8ICAgICBzb21ldGhp bmcgc3RhcnRpbmcgd2l0aCBfXyBhbmQgdGhlIG5vcm1hbCBuYW1lIGlzIGFuIGFsaWFzLiAgKi8K fCAjaWYgZGVmaW5lZCBfX3N0dWJfdXBkd3RtcHggfHwgZGVmaW5lZCBfX3N0dWJfX191cGR3dG1w eAp8IGNob2tlIG1lCnwgI2VuZGlmCnwgCnwgaW50CnwgbWFpbiAoKQp8IHsKfCByZXR1cm4gdXBk d3RtcHggKCk7CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZTo0NzY4OiByZXN1bHQ6 IG5vCmNvbmZpZ3VyZTo0NzY4OiBjaGVja2luZyBmb3IgdXRtcHhuYW1lCmNvbmZpZ3VyZTo0NzY4 OiBjYyAtc3RkPWdudTk5IC1vIGNvbmZ0ZXN0IC1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2lu ZyAgIGNvbmZ0ZXN0LmMgID4mNQovdG1wL2NjWWc3eG9hLm8oLnRleHQrMHg3KTogSW4gZnVuY3Rp b24gYG1haW4nOgo6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYHV0bXB4bmFtZScKY29uZmlndXJl OjQ3Njg6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVm cy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgInNlc3NyZWciCnwgI2RlZmluZSBQQUNLQUdF X1RBUk5BTUUgInNlc3NyZWciCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjEuMC41Igp8ICNk ZWZpbmUgUEFDS0FHRV9TVFJJTkcgInNlc3NyZWcgMS4wLjUiCnwgI2RlZmluZSBQQUNLQUdFX0JV R1JFUE9SVCAiaHR0cHM6Ly9idWdzLmZyZWVkZXNrdG9wLm9yZy9lbnRlcl9idWcuY2dpP3Byb2R1 Y3Q9eG9yZyIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICIiCnwgI2RlZmluZSBQQUNLQUdFICJzZXNz cmVnIgp8ICNkZWZpbmUgVkVSU0lPTiAiMS4wLjUiCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8 ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8 ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVm aW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUg SEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFW RV9VTklTVERfSCAxCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT05fTUFKT1IgMQp8ICNkZWZpbmUg UEFDS0FHRV9WRVJTSU9OX01JTk9SIDAKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTl9QQVRDSExF VkVMIDUKfCAjZGVmaW5lIEhBVkVfVVRNUF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUFhfSCAxCnwg I2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfVVRNUFhfVVRfU1lTTEVO IDAKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgLyogRGVmaW5lIHV0bXB4bmFtZSB0byBhbiBp bm5vY3VvdXMgdmFyaWFudCwgaW4gY2FzZSA8bGltaXRzLmg+IGRlY2xhcmVzIHV0bXB4bmFtZS4K fCAgICBGb3IgZXhhbXBsZSwgSFAtVVggMTFpIDxsaW1pdHMuaD4gZGVjbGFyZXMgZ2V0dGltZW9m ZGF5LiAgKi8KfCAjZGVmaW5lIHV0bXB4bmFtZSBpbm5vY3VvdXNfdXRtcHhuYW1lCnwgCnwgLyog U3lzdGVtIGhlYWRlciB0byBkZWZpbmUgX19zdHViIG1hY3JvcyBhbmQgaG9wZWZ1bGx5IGZldyBw cm90b3R5cGVzLAp8ICAgICB3aGljaCBjYW4gY29uZmxpY3Qgd2l0aCBjaGFyIHV0bXB4bmFtZSAo KTsgYmVsb3cuCnwgICAgIFByZWZlciA8bGltaXRzLmg+IHRvIDxhc3NlcnQuaD4gaWYgX19TVERD X18gaXMgZGVmaW5lZCwgc2luY2UKfCAgICAgPGxpbWl0cy5oPiBleGlzdHMgZXZlbiBvbiBmcmVl c3RhbmRpbmcgY29tcGlsZXJzLiAgKi8KfCAKfCAjaWZkZWYgX19TVERDX18KfCAjIGluY2x1ZGUg PGxpbWl0cy5oPgp8ICNlbHNlCnwgIyBpbmNsdWRlIDxhc3NlcnQuaD4KfCAjZW5kaWYKfCAKfCAj dW5kZWYgdXRtcHhuYW1lCnwgCnwgLyogT3ZlcnJpZGUgYW55IEdDQyBpbnRlcm5hbCBwcm90b3R5 cGUgdG8gYXZvaWQgYW4gZXJyb3IuCnwgICAgVXNlIGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0 Y2ggdGhlIHJldHVybiB0eXBlIG9mIGEgR0NDCnwgICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMgYXJn dW1lbnQgcHJvdG90eXBlIHdvdWxkIHN0aWxsIGFwcGx5LiAgKi8KfCAjaWZkZWYgX19jcGx1c3Bs dXMKfCBleHRlcm4gIkMiCnwgI2VuZGlmCnwgY2hhciB1dG1weG5hbWUgKCk7CnwgLyogVGhlIEdO VSBDIGxpYnJhcnkgZGVmaW5lcyB0aGlzIGZvciBmdW5jdGlvbnMgd2hpY2ggaXQgaW1wbGVtZW50 cwp8ICAgICB0byBhbHdheXMgZmFpbCB3aXRoIEVOT1NZUy4gIFNvbWUgZnVuY3Rpb25zIGFyZSBh Y3R1YWxseSBuYW1lZAp8ICAgICBzb21ldGhpbmcgc3RhcnRpbmcgd2l0aCBfXyBhbmQgdGhlIG5v cm1hbCBuYW1lIGlzIGFuIGFsaWFzLiAgKi8KfCAjaWYgZGVmaW5lZCBfX3N0dWJfdXRtcHhuYW1l IHx8IGRlZmluZWQgX19zdHViX19fdXRtcHhuYW1lCnwgY2hva2UgbWUKfCAjZW5kaWYKfCAKfCBp bnQKfCBtYWluICgpCnwgewp8IHJldHVybiB1dG1weG5hbWUgKCk7CnwgICA7CnwgICByZXR1cm4g MDsKfCB9CmNvbmZpZ3VyZTo0NzY4OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo0Nzg1OiBjaGVja2lu ZyBmb3Igc3BlY2lhbCBDIGNvbXBpbGVyIG9wdGlvbnMgbmVlZGVkIGZvciBsYXJnZSBmaWxlcwpj b25maWd1cmU6NDgzMDogcmVzdWx0OiBubwpjb25maWd1cmU6NDgzNjogY2hlY2tpbmcgZm9yIF9G SUxFX09GRlNFVF9CSVRTIHZhbHVlIG5lZWRlZCBmb3IgbGFyZ2UgZmlsZXMKY29uZmlndXJlOjQ4 NjE6IGNjIC1zdGQ9Z251OTkgLWMgLU8yIC1waXBlIC1mbm8tc3RyaWN0LWFsaWFzaW5nICBjb25m dGVzdC5jID4mNQpjb25maWd1cmU6NDg2MTogJD8gPSAwCmNvbmZpZ3VyZTo0ODkzOiByZXN1bHQ6 IG5vCmNvbmZpZ3VyZTo0OTgwOiBjaGVja2luZyBmb3IgU0VTU1JFRwpjb25maWd1cmU6NDk4Nzog JFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgInhwcm90byIKY29uZmlndXJlOjQ5 OTA6ICQ/ID0gMApjb25maWd1cmU6NTAwMzogJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1l cnJvcnMgInhwcm90byIKY29uZmlndXJlOjUwMDY6ICQ/ID0gMApjb25maWd1cmU6NTA2MzogcmVz dWx0OiB5ZXMKY29uZmlndXJlOjUyMzI6IGNyZWF0aW5nIC4vY29uZmlnLnN0YXR1cwoKIyMgLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSAjIwojIyBSdW5uaW5nIGNvbmZpZy5zdGF0dXMuICMjCiMjIC0t LS0tLS0tLS0tLS0tLS0tLS0tLS0gIyMKClRoaXMgZmlsZSB3YXMgZXh0ZW5kZWQgYnkgc2Vzc3Jl ZyBjb25maWcuc3RhdHVzIDEuMC41LCB3aGljaCB3YXMKZ2VuZXJhdGVkIGJ5IEdOVSBBdXRvY29u ZiAyLjY3LiAgSW52b2NhdGlvbiBjb21tYW5kIGxpbmUgd2FzCgogIENPTkZJR19GSUxFUyAgICA9 IAogIENPTkZJR19IRUFERVJTICA9IAogIENPTkZJR19MSU5LUyAgICA9IAogIENPTkZJR19DT01N QU5EUyA9IAogICQgLi9jb25maWcuc3RhdHVzIAoKb24gTWVsb24ubWFsaWthbmlhLmZyCgpjb25m aWcuc3RhdHVzOjg5OTogY3JlYXRpbmcgTWFrZWZpbGUKY29uZmlnLnN0YXR1czo4OTk6IGNyZWF0 aW5nIGNvbmZpZy5oCmNvbmZpZy5zdGF0dXM6MTEyNzogZXhlY3V0aW5nIGRlcGZpbGVzIGNvbW1h bmRzCgojIyAtLS0tLS0tLS0tLS0tLS0tICMjCiMjIENhY2hlIHZhcmlhYmxlcy4gIyMKIyMgLS0t LS0tLS0tLS0tLS0tLSAjIwoKYWNfY3ZfYnVpbGQ9YW1kNjQtcG9ydGJsZC1mcmVlYnNkOC4xCmFj X2N2X2NfY29tcGlsZXJfZ251PXllcwphY19jdl9lbnZfQ0Nfc2V0PXNldAphY19jdl9lbnZfQ0Nf dmFsdWU9Y2MKYWNfY3ZfZW52X0NGTEFHU19zZXQ9c2V0CmFjX2N2X2Vudl9DRkxBR1NfdmFsdWU9 Jy1PMiAtcGlwZSAtZm5vLXN0cmljdC1hbGlhc2luZycKYWNfY3ZfZW52X0NQUEZMQUdTX3NldD0n JwphY19jdl9lbnZfQ1BQRkxBR1NfdmFsdWU9JycKYWNfY3ZfZW52X0NQUF9zZXQ9JycKYWNfY3Zf ZW52X0NQUF92YWx1ZT0nJwphY19jdl9lbnZfTERGTEFHU19zZXQ9JycKYWNfY3ZfZW52X0xERkxB R1NfdmFsdWU9JycKYWNfY3ZfZW52X0xJQlNfc2V0PScnCmFjX2N2X2Vudl9MSUJTX3ZhbHVlPScn CmFjX2N2X2Vudl9QS0dfQ09ORklHX0xJQkRJUl9zZXQ9JycKYWNfY3ZfZW52X1BLR19DT05GSUdf TElCRElSX3ZhbHVlPScnCmFjX2N2X2Vudl9QS0dfQ09ORklHX1BBVEhfc2V0PScnCmFjX2N2X2Vu dl9QS0dfQ09ORklHX1BBVEhfdmFsdWU9JycKYWNfY3ZfZW52X1BLR19DT05GSUdfc2V0PScnCmFj X2N2X2Vudl9QS0dfQ09ORklHX3ZhbHVlPScnCmFjX2N2X2Vudl9TRVNTUkVHX0NGTEFHU19zZXQ9 JycKYWNfY3ZfZW52X1NFU1NSRUdfQ0ZMQUdTX3ZhbHVlPScnCmFjX2N2X2Vudl9TRVNTUkVHX0xJ QlNfc2V0PScnCmFjX2N2X2Vudl9TRVNTUkVHX0xJQlNfdmFsdWU9JycKYWNfY3ZfZW52X2J1aWxk X2FsaWFzX3NldD1zZXQKYWNfY3ZfZW52X2J1aWxkX2FsaWFzX3ZhbHVlPWFtZDY0LXBvcnRibGQt ZnJlZWJzZDguMQphY19jdl9lbnZfaG9zdF9hbGlhc19zZXQ9JycKYWNfY3ZfZW52X2hvc3RfYWxp YXNfdmFsdWU9JycKYWNfY3ZfZW52X3RhcmdldF9hbGlhc19zZXQ9JycKYWNfY3ZfZW52X3Rhcmdl dF9hbGlhc192YWx1ZT0nJwphY19jdl9mdW5jX3VwZHd0bXB4PW5vCmFjX2N2X2Z1bmNfdXRtcHhu YW1lPW5vCmFjX2N2X2hlYWRlcl9pbnR0eXBlc19oPXllcwphY19jdl9oZWFkZXJfbGFzdGxvZ19o PW5vCmFjX2N2X2hlYWRlcl9tZW1vcnlfaD15ZXMKYWNfY3ZfaGVhZGVyX3N0ZGM9eWVzCmFjX2N2 X2hlYWRlcl9zdGRpbnRfaD15ZXMKYWNfY3ZfaGVhZGVyX3N0ZGxpYl9oPXllcwphY19jdl9oZWFk ZXJfc3RyaW5nX2g9eWVzCmFjX2N2X2hlYWRlcl9zdHJpbmdzX2g9eWVzCmFjX2N2X2hlYWRlcl9z eXNfcGFyYW1faD15ZXMKYWNfY3ZfaGVhZGVyX3N5c19zdGF0X2g9eWVzCmFjX2N2X2hlYWRlcl9z eXNfdHlwZXNfaD15ZXMKYWNfY3ZfaGVhZGVyX3VuaXN0ZF9oPXllcwphY19jdl9oZWFkZXJfdXRt cF9oPXllcwphY19jdl9oZWFkZXJfdXRtcHhfaD15ZXMKYWNfY3ZfaG9zdD1hbWQ2NC1wb3J0Ymxk LWZyZWVic2Q4LjEKYWNfY3ZfbWVtYmVyX3N0cnVjdF91dG1weF91dF9zeXNsZW49bm8KYWNfY3Zf b2JqZXh0PW8KYWNfY3ZfcGF0aF9FR1JFUD0nL3Vzci9iaW4vZ3JlcCAtRScKYWNfY3ZfcGF0aF9H UkVQPS91c3IvYmluL2dyZXAKYWNfY3ZfcGF0aF9hY19wdF9QS0dfQ09ORklHPS91c3IvbG9jYWwv YmluL3BrZy1jb25maWcKYWNfY3ZfcHJvZ19BV0s9bmF3awphY19jdl9wcm9nX0NQUD0nY2MgLUUn CmFjX2N2X3Byb2dfYWNfY3RfQ0M9Y2MKYWNfY3ZfcHJvZ19jY19jODk9JycKYWNfY3ZfcHJvZ19j Y19jOTk9LXN0ZD1nbnU5OQphY19jdl9wcm9nX2NjX2c9eWVzCmFjX2N2X3Byb2dfbWFrZV9tYWtl X3NldD15ZXMKYWNfY3Zfc3lzX2ZpbGVfb2Zmc2V0X2JpdHM9bm8KYWNfY3Zfc3lzX2xhcmdlZmls ZV9DQz1ubwphbV9jdl9DQ19kZXBlbmRlbmNpZXNfY29tcGlsZXJfdHlwZT1nY2MzCmx0X2N2X3N5 c19tYXhfY21kX2xlbj0yNjIxNDQKcGtnX2N2X1NFU1NSRUdfQ0ZMQUdTPSctSS91c3IvbG9jYWwv aW5jbHVkZSAgJwpwa2dfY3ZfU0VTU1JFR19MSUJTPScgJwoKIyMgLS0tLS0tLS0tLS0tLS0tLS0g IyMKIyMgT3V0cHV0IHZhcmlhYmxlcy4gIyMKIyMgLS0tLS0tLS0tLS0tLS0tLS0gIyMKCkFDTE9D QUw9Jy91c3IvbG9jYWwvYmluL2FjbG9jYWwtMS4xMCcKQURNSU5fTUFOX0RJUj0nJChtYW5kaXIp L21hbiQoQURNSU5fTUFOX1NVRkZJWCknCkFETUlOX01BTl9TVUZGSVg9JzgnCkFNREVQQkFDS1NM QVNIPSdcJwpBTURFUF9GQUxTRT0nIycKQU1ERVBfVFJVRT0nJwpBTVRBUj0nJHtTSEVMTH0gL3Vz ci9vYmovdXNyL3BvcnRzL3gxMS9zZXNzcmVnL3dvcmsvc2Vzc3JlZy0xLjAuNS9taXNzaW5nIC0t cnVuIHRhcicKQVBQX01BTl9ESVI9JyQobWFuZGlyKS9tYW4kKEFQUF9NQU5fU1VGRklYKScKQVBQ X01BTl9TVUZGSVg9JzEnCkFVVE9DT05GPScvdXNyL2xvY2FsL2Jpbi9hdXRvY29uZi0yLjY3JwpB VVRPSEVBREVSPScvdXNyL2xvY2FsL2Jpbi9hdXRvaGVhZGVyLTIuNjcnCkFVVE9NQUtFPScvdXNy L2xvY2FsL2Jpbi9hdXRvbWFrZS0xLjEwJwpBV0s9J25hd2snCkNDPSdjYyAtc3RkPWdudTk5JwpD Q0RFUE1PREU9J2RlcG1vZGU9Z2NjMycKQ0ZMQUdTPSctTzIgLXBpcGUgLWZuby1zdHJpY3QtYWxp YXNpbmcnCkNIQU5HRUxPR19DTUQ9JyhHSVRfRElSPSQodG9wX3NyY2RpcikvLmdpdCBnaXQgbG9n ID4gJCh0b3Bfc3JjZGlyKS8uY2hhbmdlbG9nLnRtcCAmJiBtdiAkKHRvcF9zcmNkaXIpLy5jaGFu Z2Vsb2cudG1wICQodG9wX3NyY2RpcikvQ2hhbmdlTG9nKSB8fCAocm0gLWYgJCh0b3Bfc3JjZGly KS8uY2hhbmdlbG9nLnRtcDsgdG91Y2ggJCh0b3Bfc3JjZGlyKS9DaGFuZ2VMb2c7IGVjaG8gJ1wn J2dpdCBkaXJlY3Rvcnkgbm90IGZvdW5kOiBpbnN0YWxsaW5nIHBvc3NpYmx5IGVtcHR5IGNoYW5n ZWxvZy4nXCcnID4mMiknCkNQUD0nY2MgLUUnCkNQUEZMQUdTPScnCkNXQVJORkxBR1M9Jy1XYWxs IC1XcG9pbnRlci1hcml0aCAtV3N0cmljdC1wcm90b3R5cGVzIC1XbWlzc2luZy1wcm90b3R5cGVz IC1XbWlzc2luZy1kZWNsYXJhdGlvbnMgLVduZXN0ZWQtZXh0ZXJucyAtZm5vLXN0cmljdC1hbGlh c2luZyAtV2JhZC1mdW5jdGlvbi1jYXN0IC1XZm9ybWF0PTIgLVdvbGQtc3R5bGUtZGVmaW5pdGlv biAtV2RlY2xhcmF0aW9uLWFmdGVyLXN0YXRlbWVudCAnCkNZR1BBVEhfVz0nZWNobycKREVGUz0n LURIQVZFX0NPTkZJR19IJwpERVBESVI9Jy5kZXBzJwpEUklWRVJfTUFOX0RJUj0nJChtYW5kaXIp L21hbiQoRFJJVkVSX01BTl9TVUZGSVgpJwpEUklWRVJfTUFOX1NVRkZJWD0nNCcKRUNIT19DPScn CkVDSE9fTj0nLW4nCkVDSE9fVD0nJwpFR1JFUD0nL3Vzci9iaW4vZ3JlcCAtRScKRVhFRVhUPScn CkZJTEVfTUFOX0RJUj0nJChtYW5kaXIpL21hbiQoRklMRV9NQU5fU1VGRklYKScKRklMRV9NQU5f U1VGRklYPSc1JwpHUkVQPScvdXNyL2Jpbi9ncmVwJwpJTlNUQUxMX0NNRD0nKGNwIC1mIC91c3Iv bG9jYWwvc2hhcmUvdXRpbC1tYWNyb3MvSU5TVEFMTCAkKHRvcF9zcmNkaXIpLy5JTlNUQUxMLnRt cCAmJiBtdiAkKHRvcF9zcmNkaXIpLy5JTlNUQUxMLnRtcCAkKHRvcF9zcmNkaXIpL0lOU1RBTEwp IHx8IChybSAtZiAkKHRvcF9zcmNkaXIpLy5JTlNUQUxMLnRtcDsgdG91Y2ggJCh0b3Bfc3JjZGly KS9JTlNUQUxMOyBlY2hvICdcJyd1dGlsLW1hY3JvcyAicGtnZGF0YWRpciIgZnJvbSB4b3JnLW1h Y3Jvcy5wYyBub3QgZm91bmQ6IGluc3RhbGxpbmcgcG9zc2libHkgZW1wdHkgSU5TVEFMTC4nXCcn ID4mMiknCklOU1RBTExfREFUQT0naW5zdGFsbCAgLW8gcm9vdCAtZyB3aGVlbCAtbSA0NDQnCklO U1RBTExfUFJPR1JBTT0naW5zdGFsbCAgLXMgLW8gcm9vdCAtZyB3aGVlbCAtbSA1NTUnCklOU1RB TExfU0NSSVBUPSdpbnN0YWxsICAtbyByb290IC1nIHdoZWVsIC1tIDU1NScKSU5TVEFMTF9TVFJJ UF9QUk9HUkFNPSckKGluc3RhbGxfc2gpIC1jIC1zJwpMREZMQUdTPScnCkxJQk9CSlM9JycKTElC Uz0nJwpMSUJfTUFOX0RJUj0nJChtYW5kaXIpL21hbiQoTElCX01BTl9TVUZGSVgpJwpMSUJfTUFO X1NVRkZJWD0nMycKTElOVD0nbm8nCkxJTlRfRkFMU0U9JycKTElOVF9GTEFHUz0nJwpMSU5UX1RS VUU9JyMnCkxUTElCT0JKUz0nJwpNQUlOVD0nIycKTUFJTlRBSU5FUl9NT0RFX0ZBTFNFPScnCk1B SU5UQUlORVJfTU9ERV9UUlVFPScjJwpNQUtFSU5GTz0nJHtTSEVMTH0gL3Vzci9vYmovdXNyL3Bv cnRzL3gxMS9zZXNzcmVnL3dvcmsvc2Vzc3JlZy0xLjAuNS9taXNzaW5nIC0tcnVuIG1ha2VpbmZv JwpNSVNDX01BTl9ESVI9JyQobWFuZGlyKS9tYW4kKE1JU0NfTUFOX1NVRkZJWCknCk1JU0NfTUFO X1NVRkZJWD0nNycKTUtESVJfUD0nLi9pbnN0YWxsLXNoIC1jIC1kJwpPQkpFWFQ9J28nClBBQ0tB R0U9J3Nlc3NyZWcnClBBQ0tBR0VfQlVHUkVQT1JUPSdodHRwczovL2J1Z3MuZnJlZWRlc2t0b3Au b3JnL2VudGVyX2J1Zy5jZ2k/cHJvZHVjdD14b3JnJwpQQUNLQUdFX05BTUU9J3Nlc3NyZWcnClBB Q0tBR0VfU1RSSU5HPSdzZXNzcmVnIDEuMC41JwpQQUNLQUdFX1RBUk5BTUU9J3Nlc3NyZWcnClBB Q0tBR0VfVVJMPScnClBBQ0tBR0VfVkVSU0lPTj0nMS4wLjUnClBBVEhfU0VQQVJBVE9SPSc6JwpQ S0dfQ09ORklHPScvdXNyL2xvY2FsL2Jpbi9wa2ctY29uZmlnJwpQS0dfQ09ORklHX0xJQkRJUj0n JwpQS0dfQ09ORklHX1BBVEg9JycKU0VTU1JFR19DRkxBR1M9Jy1JL3Vzci9sb2NhbC9pbmNsdWRl ICAnClNFU1NSRUdfTElCUz0nICcKU0VUX01BS0U9JycKU0hFTEw9Jy9iaW4vc2gnClNUUklQPScn ClZFUlNJT049JzEuMC41JwphY19jdF9DQz0nY2MnCmFtX19mYXN0ZGVwQ0NfRkFMU0U9JyMnCmFt X19mYXN0ZGVwQ0NfVFJVRT0nJwphbV9faW5jbHVkZT0naW5jbHVkZScKYW1fX2lzcmM9JycKYW1f X2xlYWRpbmdfZG90PScuJwphbV9fcXVvdGU9JycKYW1fX3Rhcj0nJHtBTVRBUn0gY2hvZiAtICIk JHRhcmRpciInCmFtX191bnRhcj0nJHtBTVRBUn0geGYgLScKYmluZGlyPScke2V4ZWNfcHJlZml4 fS9iaW4nCmJ1aWxkPSdhbWQ2NC1wb3J0YmxkLWZyZWVic2Q4LjEnCmJ1aWxkX2FsaWFzPSdhbWQ2 NC1wb3J0YmxkLWZyZWVic2Q4LjEnCmJ1aWxkX2NwdT0nYW1kNjQnCmJ1aWxkX29zPSdmcmVlYnNk OC4xJwpidWlsZF92ZW5kb3I9J3BvcnRibGQnCmRhdGFkaXI9JyR7ZGF0YXJvb3RkaXJ9JwpkYXRh cm9vdGRpcj0nJHtwcmVmaXh9L3NoYXJlJwpkb2NkaXI9JyR7ZGF0YXJvb3RkaXJ9L2RvYy8ke1BB Q0tBR0VfVEFSTkFNRX0nCmR2aWRpcj0nJHtkb2NkaXJ9JwpleGVjX3ByZWZpeD0nJHtwcmVmaXh9 Jwpob3N0PSdhbWQ2NC1wb3J0YmxkLWZyZWVic2Q4LjEnCmhvc3RfYWxpYXM9JycKaG9zdF9jcHU9 J2FtZDY0Jwpob3N0X29zPSdmcmVlYnNkOC4xJwpob3N0X3ZlbmRvcj0ncG9ydGJsZCcKaHRtbGRp cj0nJHtkb2NkaXJ9JwppbmNsdWRlZGlyPScke3ByZWZpeH0vaW5jbHVkZScKaW5mb2Rpcj0nL3Vz ci9sb2NhbC9pbmZvJwppbnN0YWxsX3NoPSckKFNIRUxMKSAvdXNyL29iai91c3IvcG9ydHMveDEx L3Nlc3NyZWcvd29yay9zZXNzcmVnLTEuMC41L2luc3RhbGwtc2gnCmxpYmRpcj0nJHtleGVjX3By ZWZpeH0vbGliJwpsaWJleGVjZGlyPScke2V4ZWNfcHJlZml4fS9saWJleGVjJwpsb2NhbGVkaXI9 JyR7ZGF0YXJvb3RkaXJ9L2xvY2FsZScKbG9jYWxzdGF0ZWRpcj0nJHtwcmVmaXh9L3ZhcicKbWFu ZGlyPScvdXNyL2xvY2FsL21hbicKbWtkaXJfcD0nJCh0b3BfYnVpbGRkaXIpLy4vaW5zdGFsbC1z aCAtYyAtZCcKb2xkaW5jbHVkZWRpcj0nL3Vzci9pbmNsdWRlJwpwZGZkaXI9JyR7ZG9jZGlyfScK cHJlZml4PScvdXNyL2xvY2FsJwpwcm9ncmFtX3RyYW5zZm9ybV9uYW1lPSdzLHgseCwnCnBzZGly PScke2RvY2Rpcn0nCnNiaW5kaXI9JyR7ZXhlY19wcmVmaXh9L3NiaW4nCnNoYXJlZHN0YXRlZGly PScke3ByZWZpeH0vY29tJwpzeXNjb25mZGlyPScke3ByZWZpeH0vZXRjJwp0YXJnZXRfYWxpYXM9 JycKCiMjIC0tLS0tLS0tLS0tICMjCiMjIGNvbmZkZWZzLmguICMjCiMjIC0tLS0tLS0tLS0tICMj CgovKiBjb25mZGVmcy5oICovCiNkZWZpbmUgUEFDS0FHRV9OQU1FICJzZXNzcmVnIgojZGVmaW5l IFBBQ0tBR0VfVEFSTkFNRSAic2Vzc3JlZyIKI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjEuMC41 IgojZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJzZXNzcmVnIDEuMC41IgojZGVmaW5lIFBBQ0tBR0Vf QlVHUkVQT1JUICJodHRwczovL2J1Z3MuZnJlZWRlc2t0b3Aub3JnL2VudGVyX2J1Zy5jZ2k/cHJv ZHVjdD14b3JnIgojZGVmaW5lIFBBQ0tBR0VfVVJMICIiCiNkZWZpbmUgUEFDS0FHRSAic2Vzc3Jl ZyIKI2RlZmluZSBWRVJTSU9OICIxLjAuNSIKI2RlZmluZSBTVERDX0hFQURFUlMgMQojZGVmaW5l IEhBVkVfU1lTX1RZUEVTX0ggMQojZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCiNkZWZpbmUgSEFW RV9TVERMSUJfSCAxCiNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCiNkZWZpbmUgSEFWRV9NRU1PUllf SCAxCiNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQojZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCiNk ZWZpbmUgSEFWRV9TVERJTlRfSCAxCiNkZWZpbmUgSEFWRV9VTklTVERfSCAxCiNkZWZpbmUgUEFD S0FHRV9WRVJTSU9OX01BSk9SIDEKI2RlZmluZSBQQUNLQUdFX1ZFUlNJT05fTUlOT1IgMAojZGVm aW5lIFBBQ0tBR0VfVkVSU0lPTl9QQVRDSExFVkVMIDUKI2RlZmluZSBIQVZFX1VUTVBfSCAxCiNk ZWZpbmUgSEFWRV9VVE1QWF9IIDEKI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKI2RlZmluZSBI QVZFX1VUTVBYX1VUX1NZU0xFTiAwCgpjb25maWd1cmU6IGV4aXQgMAo= --0016e6dab73f19fc380490db9b1d--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?AANLkTinV31pktFbobs1KULHTFo__0MGskGQKN%2BOFh_pu>