From owner-freebsd-current@freebsd.org Mon Jun 4 12:25:12 2018 Return-Path: Delivered-To: freebsd-current@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 44E68FDB498 for ; Mon, 4 Jun 2018 12:25:12 +0000 (UTC) (envelope-from junchoon@dec.sakura.ne.jp) Received: from dec.sakura.ne.jp (dec.sakura.ne.jp [210.188.226.8]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 7E235845B9; Mon, 4 Jun 2018 12:25:11 +0000 (UTC) (envelope-from junchoon@dec.sakura.ne.jp) Received: from fortune.joker.local (124-18-70-98.dz.commufa.jp [124.18.70.98]) (authenticated bits=0) by dec.sakura.ne.jp (8.15.2/8.15.2/[SAKURA-WEB]/20080708) with ESMTPA id w54CP6Bq087595; Mon, 4 Jun 2018 21:25:06 +0900 (JST) (envelope-from junchoon@dec.sakura.ne.jp) Date: Mon, 4 Jun 2018 21:25:06 +0900 From: Tomoaki AOKI To: Mateusz Guzik Cc: FreeBSD Current , alexvpetrov@gmail.com, Mateusz Guzik , Alexey Dokuchaev , ler@freebsd.org Subject: Re: Error build nvidia-driver with r334555 Message-Id: <20180604212506.819f91b9f7954a6063c66a32@dec.sakura.ne.jp> In-Reply-To: References: <83fec8d8-699f-e86c-9884-9d8698a86a91@gmail.com> <20180603214222.953748e1eb7a0b39e11214ae@dec.sakura.ne.jp> Reply-To: junchoon@dec.sakura.ne.jp Organization: Junchoon corps X-Mailer: Sylpheed 3.7.0 (GTK+ 2.24.32; amd64-portbld-freebsd11.1) Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="Multipart=_Mon__4_Jun_2018_21_25_06_+0900_gPC_eyWaOYs1M.i7" X-Content-Filtered-By: Mailman/MimeDel 2.1.26 X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 04 Jun 2018 12:25:12 -0000 This is a multi-part message in MIME format. --Multipart=_Mon__4_Jun_2018_21_25_06_+0900_gPC_eyWaOYs1M.i7 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit On Sun, 3 Jun 2018 15:20:24 +0200 Mateusz Guzik wrote: > On Sun, Jun 3, 2018 at 2:42 PM, Tomoaki AOKI > wrote: > > > This is caused by r334533 and/or r334534 (memset-related changes). > > sysutils/lsof is also affected. > > > > You should revert r334533 and r334534 temporarily until nvidia-driver > > support this change. > > > > CC'ing the revision author and maintainers of both ports. > > > > > Support in what sense? The error message clearly indicates a bug in the > driver I meant "need some work to be built with r334533 (and r334534), including fix for newly-became-prominent bug(s), because both x11/nvidia-driver and sysutils/lsof were built OK before r334533. Now understood that 3rd param SHALL be the size of destination "value", NOT the size of destination "pointer". > (also trivially fixable). Is there a problem adding a patch to files/? Built and worked fine. Thanks! Fix for sysutils/lsof is already committed by Larry as r471495. Thanks, Larry! As x11/nvidia-driver is the master port for legacy drivers, and legacy drivers (nvidia-driver-304 and nvidia-driver-340 ATM) has different src directory layout, it needs some cludge in Makefile. See attached (edited) Makefile. (Not a diff.) And at the same time, your patch needs some fix (filename part only, though). Attached extra-patch-* must be copied into files/ dir. *extra-patch-src_nvidia__subr.c is the fixed one for legacy driver. extra-patch-src_nvidia_nvidia__subr.c contains your original patch. Note that legacy drivers are only build-tested. Sorry for delay! Regards. > > diff -ru src.orig/nvidia/nvidia_subr.c src/nvidia/nvidia_subr.c > --- src.orig/nvidia/nvidia_subr.c 2018-06-03 13:19:56.490480000 +0000 > +++ src/nvidia/nvidia_subr.c 2018-06-03 13:21:15.289344000 +0000 > @@ -364,7 +364,7 @@ > } > > ci = args; > - memset(ci, 0, sizeof(ci)); > + memset(ci, 0, sizeof(*ci)); > > for (i = 0; i < NV_MAX_DEVICES; i++) { > sc = devclass_get_softc(nvidia_devclass, i); > > > As for lsof: > --- dlsof.h.orig 2018-06-03 13:16:14.712701000 +0000 > +++ dlsof.h 2018-06-03 13:17:15.042655000 +0000 > @@ -489,6 +489,12 @@ > # endif /* FREEBSDV>=2020 */ > > #undef bzero /* avoid _KERNEL conflict */ > +#undef bcmp > +#undef bcopy > +#undef memcmp > +#undef memmove > +#undef memcpy > +#undef memset > #include > > -- > Mateusz Guzik > _______________________________________________ > freebsd-current@freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/freebsd-current > To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org" > -- Tomoaki AOKI --Multipart=_Mon__4_Jun_2018_21_25_06_+0900_gPC_eyWaOYs1M.i7 Content-Type: application/octet-stream; name="Makefile" Content-Disposition: attachment; filename="Makefile" Content-Transfer-Encoding: base64 IyBDcmVhdGVkIGJ5OiBTdGlqbiBIb29wIDxzdGlqbkB3aW4udHVlLm5sPgojICRGcmVlQlNEOiBo ZWFkL3gxMS9udmlkaWEtZHJpdmVyL01ha2VmaWxlIDQ3MDk3MiAyMDE4LTA1LTI3IDA5OjE5OjUx WiBkYW5mZSAkCiMKIyBGb3IgdGhvc2Ugd29uZGVyaW5nIHdoeSB0aGlzIHBvcnQgaXMgbm90IHVu ZGVyIGB4MTEtZHJpdmVycycgY2F0ZWdvcnksCiMgaGF2ZSBhIGxvb2sgYXQgaHR0cHM6Ly9idWdz LmZyZWVic2Qub3JnL2J1Z3ppbGxhL3Nob3dfYnVnLmNnaT9pZD0xMjE5MzAuCiMKIyBTdGFydGlu ZyB3aXRoIHZlcnNpb24gMS4wLTc2NjcsIE5WaWRpYSBoYXMgZHJvcHBlZCBzdXBwb3J0IGZvciBu dW1lcm91cwojICJsZWdhY3kiIEdQVXMuICBDb25zdWx0IE5WaWRpYSBSRUFETUUgKHRoZSBBcHBl bmRpeCkgdG8gZmluZCBvdXQgd2hldGhlcgojIHlvdSBuZWVkIHRvIHVzZSBsZWdhY3kgZHJpdmVy IHZlcnNpb24gYW5kIGluc3RhbGwgb25lIG9mIGNvcnJlc3BvbmRpbmcKIyBzbGF2ZSBwb3J0cyBp bnN0ZWFkIChgeDExL252aWRpYS1kcml2ZXItMzQwJyBvciBgeDExL252aWRpYS1kcml2ZXItMzA0 JykuCgpQT1JUTkFNRT0JbnZpZGlhLWRyaXZlcgpESVNUVkVSU0lPTj89CTM5MC41OQojIEFsd2F5 cyB0cnkgdG8gc2V0IFBPUlRSRVZJU0lPTiBhcyBpdCBjYW4gYmUgb3ZlcnJpZGRlbiBieSB0aGUg c2xhdmUgcG9ydHMKUE9SVFJFVklTSU9OPz0JMApDQVRFR09SSUVTPQl4MTEKTUFTVEVSX1NJVEVT PQlOVklESUEvWEZyZWU4Ni9GcmVlQlNELSR7QVJDSF9TVUZYfS8ke0RJU1RWRVJTSU9OfQpESVNU TkFNRT0JTlZJRElBLUZyZWVCU0QtJHtBUkNIX1NVRlh9LSR7RElTVFZFUlNJT059CgpNQUlOVEFJ TkVSPQlkYW5mZUBGcmVlQlNELm9yZwpDT01NRU5UPQlOVmlkaWEgZ3JhcGhpY3MgY2FyZCBiaW5h cnkgZHJpdmVycyBmb3IgaGFyZHdhcmUgT3BlbkdMIHJlbmRlcmluZwoKTElDRU5TRT0JTlZJRElB CkxJQ0VOU0VfTkFNRT0JTGljZW5zZSBGb3IgQ3VzdG9tZXIgVXNlIG9mIE5WSURJQSBTb2Z0d2Fy ZQpMSUNFTlNFX0ZJTEU9CSR7V1JLU1JDfS9kb2MvbGljZW5zZS50eHQKTElDRU5TRV9QRVJNUz0J ZGlzdC1taXJyb3Igbm8tZGlzdC1zZWxsIHBrZy1taXJyb3Igbm8tcGtnLXNlbGwgYXV0by1hY2Nl cHQKCk9OTFlfRk9SX0FSQ0hTPQlpMzg2IGFtZDY0CgpBUkNIX1NVRlg9CXg4NiR7QVJDSDpTL2kz ODYvLzpTL2FtZC9fL30KVVNFUz0JCWttb2QgdWlkZml4ClVTRV9YT1JHPQl4MTEgeG9yZy1zZXJ2 ZXIgeGV4dApVU0VfR0w9CQlnbApVU0VfTERDT05GSUc9CXllcwoKIyBOVklESUFfUk9PVCBpcyBu b3Qgc2V0IGluIHNyYy9NYWtlZmlsZSwgd2hpY2ggcmVzdWx0cyBpbiBib2d1cyAtSS9zcmMKIyBw YXNzZWQgdG8gY29tcGlsZXIgYW5kIGJyb2tlbiBidWlsZCBvbiBIRUFEIHNpbmNlIHIyMjEzMjAg d2hlbiBvcHRpb24KIyAtV21pc3NpbmctaW5jbHVkZS1kaXJzIHdhcyBhZGRlZCBmb3Iga2VybmVs IHNvdXJjZXMuICBVbnRpbCBwcm9wZXJseQojIGZpeGVkIHVwc3RyZWFtIChhY3Jvc3MgYWxsIHZl cnNpb25zLCBpbmNsdWRpbmcgbGVnYWN5IG9uZXMpLCB1c2UgdGhpcwojIGhhY2sgYmVsb3cgdG8g dW5pdmVyc2FsbHkgc2V0IE5WSURJQV9ST09ULiAgQWxzbyBwcm92aWRlIFgxMUJBU0UgdmFsdWUK IyBzaW5jZSBpdCBpcyBzdGlsbCB1c2VkIGJ5IGxlZ2FjeSBkcml2ZXJzLgpNQUtFX0VOVj0JTlZJ RElBX1JPT1Q9JHtXUktTUkN9IFgxMUJBU0U9JHtMT0NBTEJBU0V9ClNVQl9GSUxFUz0JcGtnLWRl aW5zdGFsbCBwa2ctaW5zdGFsbCBwa2ctbWVzc2FnZSBudmlkaWEuY29uZgpET0NTRElSPQkke1BS RUZJWH0vc2hhcmUvZG9jL05WSURJQV9HTFgtMS4wCk1PRFVMRVNESVI9CWxpYi94b3JnL21vZHVs ZXMKUE9SVERPQ1M9CSoKCiMgTlZWRVJTSU9OIGlzIGZsb2F0IHNpbmNlIHIzNzIwNjUgKGludGVn ZXIgdmFsdWVzIGJlY29tZSBsZXNzIHJlYWRhYmxlCiMgYWZ0ZXIgbWlub3IgdmVyc2lvbiBjb3Vs ZCBvY2N1cHkgdGhyZWUgZGlnaXRzKQouaWYgJHtESVNUVkVSU0lPTjpDL1swLTldKy8vZ30gPT0g Ii4uIgkJIyBtYWpvci5taW5vci51cGRhdGUKTlZWRVJTSU9OPQkke0RJU1RWRVJTSU9OOlMvLi8u MC86Un0ke0RJU1RWRVJTSU9OOkV9Ci5lbHNlCQkJCQkJIyBtYWpvci5taW5vcgouICBpZiAke0RJ U1RWRVJTSU9OOkV9IDwgMTAwCk5WVkVSU0lPTj0JJHtESVNUVkVSU0lPTjpTLy4vLjAvfQkJIyBh bGxvdyBtaW5vciA+IDk5Ci4gIGVsc2UKTlZWRVJTSU9OPQkke0RJU1RWRVJTSU9OfQouICBlbmRp ZgouZW5kaWYKCi5pZiAke05WVkVSU0lPTn0gPj0gMzMxLjAxMwpTVUJfTElTVCs9CU5WR0w9IiIK LmVsc2UKU1VCX0xJU1QrPQlOVkdMPSJcIyAiCi5lbmRpZgoKLmlmICR7TlZWRVJTSU9OfSA8IDM1 NS4wMDYKRVhUUkFfUEFUQ0hFUz0JJHtGSUxFU0RJUn0vZXh0cmEtcGF0Y2gtc3JjLU1ha2VmaWxl IFwKCQkke0ZJTEVTRElSfS9leHRyYS1wYXRjaC1zcmMtbnYtZnJlZWJzZC5oIFwKCQkke0ZJTEVT RElSfS9leHRyYS1wYXRjaC1zcmMtbnYtbWlzYy5oIFwKCQkke0ZJTEVTRElSfS9leHRyYS1wYXRj aC1zcmNfbnZpZGlhX19zdWJyLmMKTlZTUkM9CQkuCi5lbHNlCkVYVFJBX1BBVENIRVM9CSR7RklM RVNESVJ9L2V4dHJhLXBhdGNoLXNyY19udmlkaWFfTWFrZWZpbGUgXAoJCSR7RklMRVNESVJ9L2V4 dHJhLXBhdGNoLXNyY19udmlkaWFfbnYtZnJlZWJzZC5oIFwKCQkke0ZJTEVTRElSfS9leHRyYS1w YXRjaC1zcmNfbnZpZGlhX252LW1pc2MuaCBcCgkJJHtGSUxFU0RJUn0vZXh0cmEtcGF0Y2gtc3Jj X252aWRpYV9udmlkaWFfX3N1YnIuYwpOVlNSQz0JCW52aWRpYQouZW5kaWYKLmlmICR7TlZWRVJT SU9OfSA+PSAzNTguMDA5CiMgSW5pdGlhbGl6ZSBtZW1vcnkgYWxsb2NhdGlvbnMgdG8gYXZvaWQg c3B1cmlvdXMgImxvY2sgcmUtaW5pdGlhbGl6YXRpb24iCiMgZXJyb3JzLiAgQSBsaXR0bGUgbW9y ZSBkZXRhaWwgY2FuIGJlIGZvdW5kIGluIGJ1ZyAyMDEzNDAgc3RhcnRpbmcgYXJvdW5kCiMgY29t bWVudCAjNTAuCkVYVFJBX1BBVENIRVMrPQkke0ZJTEVTRElSfS9leHRyYS1wYXRjaC1zcmNfbnZp ZGlhLW1vZGVzZXRfbnZpZGlhLW1vZGVzZXQtZnJlZWJzZC5jCi5lbmRpZgoKT1BUSU9OU19ERUZJ TkU9CUFDUElfUE0gTElOVVggV0JJTlZEIERPQ1MKT1BUSU9OU19ERUZJTkVfaTM4Nj0JUEFFCk9Q VElPTlNfREVGQVVMVD0JTElOVVgKCkFDUElfUE1fREVTQz0JCUFDUEkgUG93ZXIgTWFuYWdlbWVu dCBzdXBwb3J0CkxJTlVYX0RFU0M9CQlMaW51eCBjb21wYXRpYmlsaXR5IHN1cHBvcnQKUEFFX0RF U0M9CQlQaHlzaWNhbCBBZGRyZXNzIEV4dGVuc2lvbnMgc3VwcG9ydApXQklOVkRfREVTQz0JCUZs dXNoIENQVSBjYWNoZXMgZGlyZWN0bHkgd2l0aCBXQklOVkQKCi5pZiAke05WVkVSU0lPTn0gPCAz MTAuMDE0Ck9QVElPTlNfREVGSU5FKz0JRlJFRUJTRF9BR1AKRlJFRUJTRF9BR1BfREVTQz0JVXNl IEZyZWVCU0QgQUdQIEdBUlQgZHJpdmVyCi5lbmRpZgoKUExJU1RfU1VCKz0JTElOVVhCQVNFPSR7 TElOVVhCQVNFfSBTSExJQl9WRVJTSU9OPSR7UE9SVFZFUlNJT059IFwKCQlNT0RVTEVTRElSPSR7 TU9EVUxFU0RJUn0KCi5pbmNsdWRlIDxic2QucG9ydC5vcHRpb25zLm1rPgoKLmlmICR7UE9SVF9P UFRJT05TOk1MSU5VWH0KQ09ORkxJQ1RTX0lOU1RBTEw9CWxpbnV4Wy1fXWRyaS1bMC05XSogbGlu dXgtZjEwLWRyaS1bMC05XSoKVVNFUys9CQlsaW51eApVU0VfTElOVVg9CWJhc2U6YnVpbGQscnVu IHhvcmdsaWJzClBMSVNUX1NVQis9CUxJTlVYPSIiCi5lbHNlClBMSVNUX1NVQis9CUxJTlVYPSJA Y29tbWVudCAiCiMgUHJvcGFnYXRlIFdJVEhPVVRfTElOVVggdmFyaWFibGUgZG93biB0byBpbm5l ciBNYWtlZmlsZXMKTUFLRV9FTlYrPQlXSVRIT1VUX0xJTlVYPXllcwouZW5kaWYKCnBvc3QtcGF0 Y2g6IC5TSUxFTlQKIyBXZSBzaG91bGQgc3VwcG9ydCAtQ1VSUkVOVDoga2lsbCB0aGUgY2hlY2sK CSR7UkVJTlBMQUNFX0NNRH0gLWUgJzI0LDI2ZCcgJHtXUktTUkN9L3NyYy8ke05WU1JDfS9udi1m cmVlYnNkLmgKIyBBZGp1c3QgTGludXggaGVhZGVycyAjaW5jbHVkZSdzIGFmdGVyIEZyZWVCU0Qg c3JjIHIyNDYwODUKCSR7UkVJTlBMQUNFX0NNRH0gLUUgJy8jaW5jbHVkZSAibWFjaGluZVwvXC5c LlwvbGludXgoMzIpP1wvbGludXguaCIvIFwKCQl7IHggOyBzLy4qLyNpbmNsdWRlICJtYWNoaW5l XC8uLlwvLi5cL2NvbXBhdFwvbGludXhcL2xpbnV4X2lvY3RsLmgiLyA7IEggOyB4IDsgfScgXAoJ CQkke1dSS1NSQ30vc3JjLyR7TlZTUkN9L252aWRpYV9saW51eC5jCiMgQWRqdXN0IGB2bV9vYmpl Y3QnIGxvY2tpbmcgYWZ0ZXIgRnJlZUJTRCBzcmMgcjI0ODA4NAoJJHtSRUlOUExBQ0VfQ01EfSAt ZSAnLyNpbmNsdWRlIDx2bVwvdm1fb2JqZWN0Lmg+LyBcCgkJeyB4IDsgcy8uKi8jaW5jbHVkZSA8 c3lzXC9yd2xvY2suaD4vIDsgRyA7IH0nIFwKCQkJJHtXUktTUkN9L3NyYy8ke05WU1JDfS9udi1m cmVlYnNkLmgKCSR7UkVJTlBMQUNFX0NNRH0gLUUgJ3MvKFZNX09CSkVDVF8pKFVOKT8oTE9DSykv XDFXXDJcMy8nIFwKCQkke1dSS1NSQ30vc3JjLyR7TlZTUkN9L252aWRpYV9zdWJyLmMKIyBBZGp1 c3Qga21lbSg5KSBjYWxscyBhZnRlciBGcmVlQlNEIHNyYyByMjU0MDI1Ci5pZiAke05WVkVSU0lP Tn0gPCAzMzEuMDY3Cgkke1JFSU5QTEFDRV9DTUR9IC1lICcva21lbV8vcy9rZXJuZWxfbWFwL2tl cm5lbF9hcmVuYS8nIFwKCQkke1dSS1NSQ30vc3JjLyR7TlZTUkN9L252aWRpYV9zdWJyLmMKLmVu ZGlmCiMgQ2hhc2UgYHN5cy9jYXBhYmlsaXR5LmgnIHJlbmFtZSB0byBgc3lzL2NhcHNpY3VtLmgn IGluIEZyZWVCU0Qgc3JjIHIyNjMyMzIKCSR7UkVJTlBMQUNFX0NNRH0gLWUgJ3M6c3lzL2NhcGFi aWxpdHlcLmg6c3lzL2NhcHNpY3VtLmg6JyBcCgkJJHtXUktTUkN9L3NyYy8ke05WU1JDfS9udi1m cmVlYnNkLmgKLmlmICR7TlZWRVJTSU9OfSA+PSAzNTguMDA5Cgkke1JFSU5QTEFDRV9DTUR9IC1l ICdzOnN5cy9jYXBhYmlsaXR5XC5oOnN5cy9jYXBzaWN1bS5oOicgXAoJCSR7V1JLU1JDfS9zcmMv bnZpZGlhLW1vZGVzZXQvbnZpZGlhLW1vZGVzZXQtZnJlZWJzZC5jCi5lbmRpZgojIEZpeCBDVExG TEFHXyogdmFsdWVzIGZvciBTWVNDVExfQUREX1BST0MoKSBhZnRlciBGcmVlQlNEIHNyYyByMjcz Mzc3Cgkke1JFSU5QTEFDRV9DTUR9IC1lICcvU1lTQ1RMX0FERF9QUk9DLywvOy8gXAoJCXMvXltb OmJsYW5rOl1dKkNUTEZMQUdfUkQvQ1RMVFlQRV9TVFJJTkcgfCYvJyBcCgkJCSR7V1JLU1JDfS9z cmMvJHtOVlNSQ30vbnZpZGlhX3N5c2N0bC5jCiMgUmVwbGFjZSBgZF90aHJlYWRfdCcgKEZyZWVC U0QgNCBzdXBwb3J0IGNvbXBhdCBzaGltKSB3aXRoIGBzdHJ1Y3QgdGhyZWFkJwoJJHtSRUlOUExB Q0VfQ01EfSAtZSAncy9kX3RocmVhZF90L3N0cnVjdCB0aHJlYWQvJyBcCgkJJHtXUktTUkN9L3Ny Yy8ke05WU1JDfS9udmlkaWFfY3RsLmMgXAoJCSR7V1JLU1JDfS9zcmMvJHtOVlNSQ30vbnZpZGlh X2Rldi5jIFwKCQkke1dSS1NSQ30vc3JjLyR7TlZTUkN9L252aWRpYV9saW51eC5jCi5pZiAke05W VkVSU0lPTn0gPj0gMzU4LjAwOQoJJHtSRUlOUExBQ0VfQ01EfSAtZSAncy9kX3RocmVhZF90L3N0 cnVjdCB0aHJlYWQvJyBcCgkJJHtXUktTUkN9L3NyYy9udmlkaWEtbW9kZXNldC9udmlkaWEtbW9k ZXNldC1mcmVlYnNkLmMKLmVuZGlmCiMgUmVzcGVjdCBXSVRIT1VUX0xJTlVYIHNldHRpbmcKCSR7 UkVJTlBMQUNFX0NNRH0gLWUgJ3MvZXhpc3RzKFwvLiovJiBcJlwmICFkZWZpbmVkKFdJVEhPVVRf TElOVVgpLycgXAoJCSR7V1JLU1JDfS9saWIvTWFrZWZpbGUKIyBEbyBub3QgaW5zdGFsbCBWRFBB VSBsaWJyYXJpZXMgd2hpY2ggYXJlIHByb3ZpZGVkIGJ5IGBtdWx0aW1lZGlhL2xpYnZkcGF1Jwoj IHBvcnQgZm9yIGEgd2hpbGUgbm93Cgkke1JFSU5QTEFDRV9DTUR9IC1lICcvbGlidmRwYXVbWzpi bGFuazpdX11bXm5dL2QgOyBcCgkJcy9uYW1lIGxpYnZkcGF1LyZfbnZpZGlhLycgJHtXUktTUkN9 L2xpYi9NYWtlZmlsZQojIERvIG5vdCBidWlsZCBhbnkgYmluYXJpZXMgKG5hdGl2ZSBudmlkaWEt c2V0dGluZ3MgYW5kIG52aWRpYS14Y29uZmlnIGFyZQojIHByb3ZpZGVkIGJ5IGNvcnJlc3BvbmRp bmcgcG9ydHMpIGFuZCBtYW51YWwgcGFnZXMKCSR7UkVJTlBMQUNFX0NNRH0gLUUgJ3MvKGV4dGVu c2lvbikuKi9cMS8nICR7V1JLU1JDfS94MTEvTWFrZWZpbGUKCSR7UkVJTlBMQUNFX0NNRH0gLWUg Jy9iaW4vZCA7IC9tYW4vZCcgJHtXUktTUkN9L3gxMS9NYWtlZmlsZQojIEFsc28gZG8gbm90IGlu c3RhbGwgbGlibnZpZGlhLWd0ayogbGlicmFyaWVzIHdoaWNoIGFyZSBmb3IgbnZpZGlhLXNldHRp bmdzCi5pZiAke05WVkVSU0lPTn0gPj0gMzQ2LjAxNgoJJHtSRUlOUExBQ0VfQ01EfSAtZSAnL2xp Ym52aWRpYS1ndGsvZCcgJHtXUktTUkN9L2xpYi9NYWtlZmlsZQouZW5kaWYKIyBBZGp1c3QgaW5z dGFsbGF0aW9uIHBhdGggb2YgYSBjb25mbGljdGluZyBmaWxlIChzaGFyZWQgYmV0d2VlbgojIG52 aWRpYS1kcml2ZXIgYW5kIHhvcmctc2VydmVyKSB0byBlYXNlIHBhY2thZ2UgbWFuYWdlciB3b3Jr Cgkke1JFSU5QTEFDRV9DTUR9IC1lICcvTElCRElSL3M6eG9yZy9tb2R1bGVzL2V4dGVuc2lvbnM6 Ji8ubnZpZGlhOicgXAoJCSR7V1JLU1JDfS94MTEvZXh0ZW5zaW9uL01ha2VmaWxlCiMgRG8gbm90 IGV4ZWN1dGUgYWZ0ZXJpbnN0YWxsIHRhcmdldCAocHJldmVudCBhdXRvbWF0aWMgbW9kdWxlIHJl Z2lzdHJhdGlvbgojIGFuZCAic21hcnQiIGluc3RhbGxhdGlvbiBvZiBjb25mbGljdGluZyBmaWxl cyBoZXVyaXN0aWNzKQoJJHtSRUlOUExBQ0VfQ01EfSAtZSAncy9hZnRlcmluc3RhbGwvJl9kb250 ZXhlY3V0ZS8nICR7V1JLU1JDfS9NYWtlZmlsZQoJJHtSRUlOUExBQ0VfQ01EfSAtZSAncy9iZWZv cmVpbnN0YWxsLyZfZG9udGV4ZWN1dGUvJyBcCgkJJHtXUktTUkN9L2xpYi9NYWtlZmlsZSAke1dS S1NSQ30vc3JjLyR7TlZTUkN9L01ha2VmaWxlCiMgL3Vzci9zaGFyZS9udmlkaWEgcGF0aCBpcyBo YXJkY29kZWQgaW4gbGliR0wgYW5kIG52aWRpYS1zZXR0aW5ncywgYnV0IHdlCiMgd29uJ3QgYWRo ZXJlIHRvIHRoaXMgc3R1cGlkaXR5IGFuZCBpbnN0YWxsIG52aWRpYS1hcHBsaWNhdGlvbi1wcm9m aWxlcy0qCiMgZmlsZXMgYXMgcGFydCBvZiBkb2N1bWVudGF0aW9uCi5pZiAke05WVkVSU0lPTn0g Pj0gMzM0LjAxNgoJJHtSRUlOUExBQ0VfQ01EfSAtZSAncywvdXNyL3NoYXJlL252aWRpYSwke1NU QUdFRElSfSR7RE9DU0RJUn0sJyBcCgkJJHtXUktTUkN9L2xpYi9saWJHTC9NYWtlZmlsZSAke1dS S1NSQ30vZG9jL01ha2VmaWxlCi5lbmRpZgojIEZpbmFsbHksIHByb2Nlc3MgT1BUSU9OUwouaWYg JHtQT1JUX09QVElPTlM6TUZSRUVCU0RfQUdQfQoJJHtSRUlOUExBQ0VfQ01EfSAtRSAncy91bmRl ZiAoTlZfU1VQUE9SVF9PU19BR1ApL2RlZmluZSBcMS8nIFwKCQkke1dSS1NSQ30vc3JjLyR7TlZT UkN9L252LWZyZWVic2QuaAouZW5kaWYKLmlmICR7UE9SVF9PUFRJT05TOk1BQ1BJX1BNfQoJJHtS RUlOUExBQ0VfQ01EfSAtRSAncy91bmRlZiAoTlZfU1VQUE9SVF9BQ1BJX1BNKS9kZWZpbmUgXDEv JyBcCgkJJHtXUktTUkN9L3NyYy8ke05WU1JDfS9udi1mcmVlYnNkLmgKLmVuZGlmCi5pZiAhICR7 UE9SVF9PUFRJT05TOk1MSU5VWH0KCSR7UkVJTlBMQUNFX0NNRH0gLUUgJ3MvZGVmaW5lIChOVl9T VVBQT1JUX0xJTlVYX0NPTVBBVCkvdW5kZWYgXDEvJyBcCgkJJHtXUktTUkN9L3NyYy8ke05WU1JD fS9udi1mcmVlYnNkLmgKLiAgaWYgJHtOVlZFUlNJT059ID49IDM1OC4wMDkKCSR7UkVJTlBMQUNF X0NNRH0gLUUgJ3MvZGVmaW5lIChOVktNU19TVVBQT1JUX0xJTlVYX0NPTVBBVCkvdW5kZWYgXDEv JyBcCgkJJHtXUktTUkN9L3NyYy9udmlkaWEtbW9kZXNldC9udmlkaWEtbW9kZXNldC1mcmVlYnNk LmMKLiAgZW5kaWYKLmVuZGlmCi5pZiAke1BPUlRfT1BUSU9OUzpNUEFFfQoJJHtSRUlOUExBQ0Vf Q01EfSAtRSAncy91bmRlZiAoTlZfU1VQUE9SVF9QQUUpL2RlZmluZSBcMS8nIFwKCQkke1dSS1NS Q30vc3JjLyR7TlZTUkN9L252LWZyZWVic2QuaAouZW5kaWYKLmlmICR7UE9SVF9PUFRJT05TOk1X QklOVkR9Cgkke1JFSU5QTEFDRV9DTUR9IC1FICdzL3VuZGVmIChOVl9VU0VfV0JJTlZEKS9kZWZp bmUgXDEvJyBcCgkJJHtXUktTUkN9L3NyYy8ke05WU1JDfS9udi1mcmVlYnNkLmgKLmVuZGlmCiMg Q29uZGl0aW9uYWxseSBpbnN0YWxsIGRvY3VtZW50YXRpb24gKGJ1dCB5b3UgZ2VuZXJhbGx5IHdh bnQgaXQpCi5pZiAhICR7UE9SVF9PUFRJT05TOk1ET0NTfQoJJHtSRUlOUExBQ0VfQ01EfSAtRSAn cy8oeDExKS4qL1wxLyA7IC9kb2MvZCcgJHtXUktTUkN9L01ha2VmaWxlCi5lbmRpZgoKcHJlLWlu c3RhbGw6CglAJHtNS0RJUn0gJHtTVEFHRURJUn0ke1BSRUZJWH0vJHtNT0RVTEVTRElSfS9kcml2 ZXJzIFwKCQkke1NUQUdFRElSfSR7UFJFRklYfS8ke01PRFVMRVNESVJ9L2V4dGVuc2lvbnMKCnBv c3QtaW5zdGFsbDogLlNJTEVOVAoJJHtJTlNUQUxMX1NDUklQVH0gJHtXUktTUkN9L29iai9udmlk aWEtYnVnLXJlcG9ydC5zaCBcCgkJJHtTVEFHRURJUn0ke1BSRUZJWH0vYmluCiMgcGtnLXBsaXN0 IGlzIGFscmVhZHkgb3ZlcmJsb2F0ZWQsIHNvIHVzZSB0aGVzZSBoYWNrcyBpbnN0ZWFkIG9mIFBM SVNUX1NVQidzCi5pZiAke05WVkVSU0lPTn0gPj0gMzA0LjEyOCAmJiAke05WVkVSU0lPTn0gPCAz MTAuMDE5IHx8ICR7TlZWRVJTSU9OfSA+PSAzNjEuMDE2Cgkke1JFSU5QTEFDRV9DTUR9IC1FICcv bGlidmRwYXUoX3RyYWNlKT9cLnNvL2QnICR7VE1QUExJU1R9Ci5lbmRpZgouaWYgJHtOVlZFUlNJ T059ID49IDMxMC4wMTkKCSR7UkVJTlBMQUNFX0NNRH0gLWUgJy9saWJYdk1DTlZJRElBL2QnICR7 VE1QUExJU1R9Ci5lbHNlCSMgc29tZSBhcHBsaWNhdGlvbnMgbmVlZCB0aGlzIHN5bWxpbmsgKHNl ZSBQUiBwb3J0cy83Mjg3NykKCSR7TE59IC1zZiBsaWJYdk1DTlZJRElBLnNvLjEgXAoJCSR7U1RB R0VESVJ9JHtQUkVGSVh9L2xpYi9saWJYdk1DTlZJRElBX2R5bmFtaWMuc28uMQouZW5kaWYKLmlm ICR7TlZWRVJTSU9OfSA8IDMzMS4wMTMgfHwgJHtBUkNIfSA9PSBhbWQ2NCAmJiAke05WVkVSU0lP Tn0gPCAzMzQuMDE2Cgkke1JFSU5QTEFDRV9DTUR9IC1FICcvbGliKG52aWRpYS0pPyhFR0x8ZWds Y29yZXxHTEVTdnxnbHNpKS9kJyBcCgkJJHtUTVBQTElTVH0KLmVuZGlmCi5pZiAke05WVkVSU0lP Tn0gPCAzNTIuMDA5Cgkke1JFSU5QTEFDRV9DTUR9IC1FICcvKGxpYik/bnZpZGlhLShkZWJ1Z2R1 bXB8c21pfG1sKS9kJyAke1RNUFBMSVNUfQouZW5kaWYKLmlmICR7TlZWRVJTSU9OfSA8IDM1NS4w MDYKCSR7UkVJTlBMQUNFX0NNRH0gLUUgJy8obGliRUdMX252aWRpYXxHTGRpc3BhdGNofE9wZW5H TCkvZCcgJHtUTVBQTElTVH0KLmVsc2UKCSR7UkVJTlBMQUNFX0NNRH0gJ3MvbGliRUdMXC5zb1wu JHtQT1JUVkVSU0lPTn0vbGliRUdMLnNvLycgXAoJCSR7VE1QUExJU1R9Ci5lbmRpZgouaWYgJHtO VlZFUlNJT059IDwgMzU4LjAwOQoJJHtSRUlOUExBQ0VfQ01EfSAnL252aWRpYS1tb2Rlc2V0Lmtv L2QnICR7VE1QUExJU1R9Ci5lbmRpZgouaWYgJHtOVlZFUlNJT059ID49IDM2MS4wMjgKCSR7UkVJ TlBMQUNFX0NNRH0gLUUgJy8oRUdMX252aWRpYVwuc298R0xFU3ZbMTJdKF9DTSk/KFwuc29cLlsw LTldK1wuWzAtOV0rKSkkJC9kJyBcCgkJJHtUTVBQTElTVH0KLmVsc2UKCSR7UkVJTlBMQUNFX0NN RH0gLUUgJy9cL2xpYlwvbGliR0xFU3ZbMTJdKF9DTSk/KFwuc28pPyhfbnZpZGlhLnNvKFwuWzAt OV18XC5bMC05XStcLlswLTldKyk/KT8kJC9kIDsgXAoJCS9saWJFR0xfbnZpZGlhXC5zb1wuJHtQ T1JUVkVSU0lPTn0vZCcgJHtUTVBQTElTVH0KLmVuZGlmCiMgcmVuYW1lIGxpYkdMLnNvLCBsaWJF R0wuc28gYW5kIGxpYkdMRVN2Mi5zbwoJJHtNVn0gLWYgJHtTVEFHRURJUn0ke1BSRUZJWH0vbGli L2xpYkdMLnNvIFwKCQkke1NUQUdFRElSfSR7UFJFRklYfS9saWIvbGliR0wtTlZJRElBLnNvCgkk e01WfSAtZiAke1NUQUdFRElSfSR7UFJFRklYfS9saWIvbGliR0wuc28uMSBcCgkJJHtTVEFHRURJ Un0ke1BSRUZJWH0vbGliL2xpYkdMLU5WSURJQS5zby4xCi5pZiAke05WVkVSU0lPTn0gPj0gMzMx LjAxMwoJJHtNVn0gLWYgJHtTVEFHRURJUn0ke1BSRUZJWH0vbGliL2xpYkVHTC5zbyBcCgkJJHtT VEFHRURJUn0ke1BSRUZJWH0vbGliL2xpYkVHTC1OVklESUEuc28KCSR7TVZ9IC1mICR7U1RBR0VE SVJ9JHtQUkVGSVh9L2xpYi9saWJFR0wuc28uMSBcCgkJJHtTVEFHRURJUn0ke1BSRUZJWH0vbGli L2xpYkVHTC1OVklESUEuc28uMQoJJHtNVn0gLWYgJHtTVEFHRURJUn0ke1BSRUZJWH0vbGliL2xp YkdMRVN2Mi5zbyBcCgkJJHtTVEFHRURJUn0ke1BSRUZJWH0vbGliL2xpYkdMRVN2Mi1OVklESUEu c28KCSR7TVZ9IC1mICR7U1RBR0VESVJ9JHtQUkVGSVh9L2xpYi9saWJHTEVTdjIuc28uMiBcCgkJ JHtTVEFHRURJUn0ke1BSRUZJWH0vbGliL2xpYkdMRVN2Mi1OVklESUEuc28uMgouZW5kaWYKCUAk e01LRElSfSAke1NUQUdFRElSfSR7UFJFRklYfS9ldGMvbGlibWFwLmQvCgkke0lOU1RBTExfREFU QX0gJHtXUktESVJ9L252aWRpYS5jb25mIFwKCQkke1NUQUdFRElSfSR7UFJFRklYfS9ldGMvbGli bWFwLmQvCgojIFRhcmdldCBiZWxvdyBjYW4gYmUgdXNlZCBpbnN0ZWFkIG9mIHN0YW5kYXJkIGBt YWtlc3VtJyB0byBjb3JyZWN0bHkKIyB1cGRhdGUgZGlzdGluZm8gKGkuZS4sIGtlZXBpbmcgb3Ro ZXIgZHJpdmVyIHZlcnNpb24gZW50cmllcyBpbnRhY3QpCi5pZiAkey5UQVJHRVRTOk11cGRhdGUt ZGlzdGluZm99CkRJU1RJTkZPX0ZJTEU9CSR7TUFTVEVSRElSfS9kaXN0aW5mby5uZXcKLmVuZGlm Cgp1cGRhdGUtZGlzdGluZm86IG1ha2VzdW0gLlNJTEVOVAoJJHtSRUlOUExBQ0VfQ01EfSAtZSAn LyR7QVJDSF9TVUZYfS0ke05WVkVSU0lPTjpSfS9zL14vfi8nIFwKCQkke01BU1RFUkRJUn0vZGlz dGluZm8KCSR7UkVJTlBMQUNFX0NNRH0gLWUgJy9eflNIQTI1Ni9yICR7RElTVElORk9fRklMRX0n IC1lICcvXn4vZCcgXAoJCSR7TUFTVEVSRElSfS9kaXN0aW5mbwoJJHtSTX0gJHtESVNUSU5GT19G SUxFfSAke01BU1RFUkRJUn0vZGlzdGluZm8uYmFrCgouaW5jbHVkZSA8YnNkLnBvcnQubWs+Cg== --Multipart=_Mon__4_Jun_2018_21_25_06_+0900_gPC_eyWaOYs1M.i7--