From owner-freebsd-ports-bugs@FreeBSD.ORG Thu Sep 26 07:00:01 2013 Return-Path: Delivered-To: freebsd-ports-bugs@smarthost.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id CB14DC90 for ; Thu, 26 Sep 2013 07:00:01 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id B6D2A2162 for ; Thu, 26 Sep 2013 07:00:01 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.7/8.14.7) with ESMTP id r8Q701ge020507 for ; Thu, 26 Sep 2013 07:00:01 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.7/8.14.7/Submit) id r8Q701q4020506; Thu, 26 Sep 2013 07:00:01 GMT (envelope-from gnats) Date: Thu, 26 Sep 2013 07:00:01 GMT Message-Id: <201309260700.r8Q701q4020506@freefall.freebsd.org> To: freebsd-ports-bugs@FreeBSD.org Cc: From: Scot Hetzel Subject: Re: ports/182283: audio/akode*: Fix build with Clang and newer versions of GCC X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: Scot Hetzel List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 26 Sep 2013 07:00:01 -0000 The following reply was made to PR ports/182283; it has been noted by GNATS. From: Scot Hetzel To: bug-followup@freebsd.org Cc: Subject: Re: ports/182283: audio/akode*: Fix build with Clang and newer versions of GCC Date: Thu, 26 Sep 2013 01:53:12 -0500 --047d7bdc9a48daa03204e743d276 Content-Type: text/plain; charset=ISO-8859-1 Here is the final patch: - Fix build with clang by avoiding shadowing in template definitions (Obtained from NetBSD's pkgsrc) - Add missing includes for , to allow akode to build with newer versions of GCC. - Fix OPTIONS_DEFAULT as it had the XIPH option misspelled - Use a central patch directory for all akode* ports (PATCHDIR=${MASTERSITE}/../akode/files) - Simplify the akode-plugins-* ports by removing the do-{build,install} targets from the ports Makefile -- The do-{build,install} targets did the same thing as the ones in the bsd.port.mk -- This should allow the ports to use the new staging area (NO_STAGE could be removed from the Makefiles) - fix several portlint errors in the ports I have tested the new staging area for these ports using: make -DFORCE_STAGE stage make -DFORCE_STAGE check-orphans make -DFORCE_STAGE package I didn't notice any issue. NOTE: - If FORCE_STAGE is used, the dependencies will need to be installed first (without FORCE_STAGE) as most of them are not ready for the new staging area. List of changed, added, removed files: M akode/Makefile A akode/files/patch-akode-akodeplay-akodeplay.cpp A akode/files/patch-akode-lib-auto_sink.cpp A akode/files/patch-akode-lib-converter.cpp A akode/files/patch-akode-lib-crossfader.cpp A akode/files/patch-akode-lib-fast_resampler.cpp A akode/files/patch-akode-lib-magic.cpp A akode/files/patch-akode-lib-player.cpp A akode/files/patch-akode-lib-volumefilter.cpp A akode/files/patch-akode__plugins__Makefile.in A akode/files/patch-akode__plugins__ffmpeg_decoder__ffmpeg_decoder.cpp A akode/files/patch-akode__plugins__polyp_sink__polyp_sink.cpp A akode/files/patch-akode__plugins__xiph_decoder__flac113_decoder.cpp A akode/files/patch-akode__plugins__xiph_decoder__speex_decoder.cpp A akode/files/patch-configure M akode-plugins-ffmpeg/Makefile D akode-plugins-ffmpeg/files D akode-plugins-ffmpeg/files/patch-akode_Makefile.in D akode-plugins-ffmpeg/files/patch-akode__plugins__ffmpeg_decoder__ffmpeg_decoder.cpp D akode-plugins-ffmpeg/files/patch-akode_plugins-Makefile.in D akode-plugins-ffmpeg/pkg-plist M akode-plugins-jack/Makefile D akode-plugins-jack/files D akode-plugins-jack/files/patch-akode_Makefile.in D akode-plugins-jack/files/patch-akode_plugins-Makefile.in D akode-plugins-jack/pkg-plist M akode-plugins-mpc/Makefile D akode-plugins-mpc/files D akode-plugins-mpc/files/patch-akode_Makefile.in D akode-plugins-mpc/files/patch-akode_plugins-Makefile.in M akode-plugins-mpeg/Makefile D akode-plugins-mpeg/files D akode-plugins-mpeg/files/patch-akode_Makefile.in D akode-plugins-mpeg/files/patch-akode_plugins-Makefile.in M akode-plugins-oss/Makefile D akode-plugins-oss/files D akode-plugins-oss/files/patch-akode_Makefile.in D akode-plugins-oss/files/patch-akode_plugins-Makefile.in M akode-plugins-pulseaudio/Makefile D akode-plugins-pulseaudio/files D akode-plugins-pulseaudio/files/patch-akode_Makefile.in D akode-plugins-pulseaudio/files/patch-akode__polyp_sink__polyp_sink.cpp D akode-plugins-pulseaudio/files/patch-akode_plugins-Makefile.in D akode-plugins-pulseaudio/files/patch-configure M akode-plugins-resampler/Makefile D akode-plugins-resampler/files D akode-plugins-resampler/files/patch-akode_Makefile.in D akode-plugins-resampler/files/patch-akode_plugins-Makefile.in M akode-plugins-xiph/Makefile D akode-plugins-xiph/files D akode-plugins-xiph/files/patch-akode_Makefile.in D akode-plugins-xiph/files/patch-akode_plugins-Makefile.in D akode-plugins-xiph/files/patch-akode_plugins_xiph__decoder_flac113__decoder.cpp D akode-plugins-xiph/files/patch-akode_plugins_xiph__decoder_speex__decoder.cpp D akode-plugins-xiph/files/patch-configure --047d7bdc9a48daa03204e743d276 Content-Type: application/octet-stream; name="akode.diff3" Content-Disposition: attachment; filename="akode.diff3" Content-Transfer-Encoding: base64 X-Attachment-Id: f_hm1l2row1 SW5kZXg6IGFrb2RlL01ha2VmaWxlDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQotLS0gYWtvZGUvTWFrZWZpbGUJKHJl dmlzaW9uIDMyODMwOSkNCisrKyBha29kZS9NYWtlZmlsZQkod29ya2luZyBjb3B5KQ0KQEAgLTE5 LDEwICsxOSwxMSBAQA0KIA0KIENPTkZMSUNUUz0Ja2RlbXVsdGltZWRpYS0zLlsxLTNdKg0KIA0K LU9QVElPTlNfREVGSU5FPQlGRk1QRUcgSkFDSyBNUEMgTVBFRyBPU1MgUkVTQU1QTEVSIFhJUEgN Ci1PUFRJT05TX0RFRkFVTFQ9CU1QQyBNUEVHIE9TUyBSRVNBTVBMRVIgWElQDQorT1BUSU9OU19E RUZJTkU9CUZGTVBFRyBKQUNLIE1QQyBNUEVHIE9TUyBQVUxTRUFVRElPIFJFU0FNUExFUiBYSVBI DQorT1BUSU9OU19ERUZBVUxUPQlNUEMgTVBFRyBPU1MgUkVTQU1QTEVSIFhJUEgNCiANCiBNUENf REVTQz0JTW9ua2V5J3MgQXVkaW8gZGVjb2RlciBwbHVnaW4NCitNUEVHX0RFU0M9CU1QRUcgQXVk aW8gZGVjb2RlciBwbHVnaW4NCiBSRVNBTVBMRVJfREVTQz0JUmVzYW1wbGVyIHByb2Nlc3Npbmcg cGx1Z2luDQogWElQSF9ERVNDPQlGTEFDL1NwZWV4L1ZvcmJpcyBkZWNvZGVyIHBsdWdpbg0KIA0K QEAgLTMwLDcgKzMxLDYgQEANCiBVU0VTPQkJZ21ha2UNCiBVU0VfQVVUT1RPT0xTPQlsaWJsdGRs IGxpYnRvb2wNCiBVU0VfQlpJUDI9CXllcw0KLVVTRV9HQ0M9CWFueQ0KIFdSS1NSQz0JCSR7V1JL RElSfS8ke1BPUlROQU1FfS0ke1BPUlRWRVJTSU9OfQ0KIFVTRV9MRENPTkZJRz0JeWVzDQogDQpA QCAtNjAsNiArNjAsMTAgQEANCiBSVU5fREVQRU5EUys9CSR7TE9DQUxCQVNFfS9saWIvbGliYWtv ZGVfb3NzX3Npbmsuc286JHtQT1JUU0RJUn0vYXVkaW8vYWtvZGUtcGx1Z2lucy1vc3MNCiAuZW5k aWYNCiANCisuaWYgJHtQT1JUX09QVElPTlM6TVBVTFNFQVVESU99DQorUlVOX0RFUEVORFMrPQkk e0xPQ0FMQkFTRX0vbGliL2xpYmFrb2RlX3BvbHlwX3Npbmsuc286JHtQT1JUU0RJUn0vYXVkaW8v YWtvZGUtcGx1Z2lucy1wdWxzZWF1ZGlvDQorLmVuZGlmDQorDQogLmlmICR7UE9SVF9PUFRJT05T Ok1SRVNBTVBMRVJ9DQogUlVOX0RFUEVORFMrPQkke0xPQ0FMQkFTRX0vbGliL2xpYmFrb2RlX3Ny Y19yZXNhbXBsZXIuc286JHtQT1JUU0RJUn0vYXVkaW8vYWtvZGUtcGx1Z2lucy1yZXNhbXBsZXIN CiAuZW5kaWYNCkluZGV4OiBha29kZS9maWxlcy9wYXRjaC1ha29kZS1ha29kZXBsYXktYWtvZGVw bGF5LmNwcA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PQ0KLS0tIGFrb2RlL2ZpbGVzL3BhdGNoLWFrb2RlLWFrb2RlcGxh eS1ha29kZXBsYXkuY3BwCShyZXZpc2lvbiAwKQ0KKysrIGFrb2RlL2ZpbGVzL3BhdGNoLWFrb2Rl LWFrb2RlcGxheS1ha29kZXBsYXkuY3BwCSh3b3JraW5nIGNvcHkpDQpAQCAtMCwwICsxLDEwIEBA DQorLS0tIGFrb2RlL2Frb2RlcGxheS9ha29kZXBsYXkuY3BwLW9yaWcJMjAwNi0xMS0wNiAwNzoy MDo1Mi4wMDAwMDAwMDAgLTA2MDANCisrKysgYWtvZGUvYWtvZGVwbGF5L2Frb2RlcGxheS5jcHAJ MjAxMy0wOS0xOSAwODoxNDoyOC4wMDAwMDAwMDAgLTA1MDANCitAQCAtMTksNiArMTksNyBAQA0K KyAqLw0KKyANCisgI2luY2x1ZGUgPGlvc3RyZWFtPg0KKysjaW5jbHVkZSA8Y3N0ZGxpYj4NCisg DQorICNpbmNsdWRlICIuLi9saWIvYWtvZGVsaWIuaCINCisgI2luY2x1ZGUgIi4uL2xpYi9wbGF5 ZXIuaCINCkluZGV4OiBha29kZS9maWxlcy9wYXRjaC1ha29kZS1saWItYXV0b19zaW5rLmNwcA0K PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PQ0KLS0tIGFrb2RlL2ZpbGVzL3BhdGNoLWFrb2RlLWxpYi1hdXRvX3NpbmsuY3Bw CShyZXZpc2lvbiAwKQ0KKysrIGFrb2RlL2ZpbGVzL3BhdGNoLWFrb2RlLWxpYi1hdXRvX3Npbmsu Y3BwCSh3b3JraW5nIGNvcHkpDQpAQCAtMCwwICsxLDEwIEBADQorLS0tIGFrb2RlL2xpYi9hdXRv X3NpbmsuY3BwLW9yaWcJMjAwNS0xMC0yNiAwODo1MDoyOS4wMDAwMDAwMDAgLTA1MDANCisrKysg YWtvZGUvbGliL2F1dG9fc2luay5jcHAJMjAxMy0wOS0xOSAwMzoyNTo0Ny4wMDAwMDAwMDAgLTA1 MDANCitAQCAtMjIsNiArMjIsNyBAQA0KKyAjaW5jbHVkZSAiYXV0b19zaW5rLmgiDQorIA0KKyAj aW5jbHVkZSA8aW9zdHJlYW0+DQorKyNpbmNsdWRlIDxjc3RkbGliPg0KKyANCisgbmFtZXNwYWNl IGFLb2RlIHsNCisgDQpJbmRleDogYWtvZGUvZmlsZXMvcGF0Y2gtYWtvZGUtbGliLWNvbnZlcnRl ci5jcHANCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT0NCi0tLSBha29kZS9maWxlcy9wYXRjaC1ha29kZS1saWItY29udmVy dGVyLmNwcAkocmV2aXNpb24gMCkNCisrKyBha29kZS9maWxlcy9wYXRjaC1ha29kZS1saWItY29u dmVydGVyLmNwcAkod29ya2luZyBjb3B5KQ0KQEAgLTAsMCArMSwxMSBAQA0KKy0tLSBha29kZS9s aWIvY29udmVydGVyLmNwcC1vcmlnCTIwMDYtMDctMjIgMTE6MzU6MzEuMDAwMDAwMDAwIC0wNTAw DQorKysrIGFrb2RlL2xpYi9jb252ZXJ0ZXIuY3BwCTIwMTMtMDktMTkgMDg6NDk6MzAuMDAwMDAw MDAwIC0wNTAwDQorQEAgLTI2LDcgKzI2LDcgQEANCisgDQorIENvbnZlcnRlcjo6Q29udmVydGVy KGludCBzYW1wbGVfd2lkdGgpIDogbV9zYW1wbGVfd2lkdGgoc2FtcGxlX3dpZHRoKSB7fQ0KKyAN CistdGVtcGxhdGU8dHlwZW5hbWUgVCwgdHlwZW5hbWUgUywgdGVtcGxhdGU8dHlwZW5hbWUgVD4g Y2xhc3MgQXJpdGhtVCwgdGVtcGxhdGU8dHlwZW5hbWUgUz4gY2xhc3MgQXJpdGhtUz4NCisrdGVt cGxhdGU8dHlwZW5hbWUgVCwgdHlwZW5hbWUgUywgdGVtcGxhdGU8dHlwZW5hbWUgVT4gY2xhc3Mg QXJpdGhtVCwgdGVtcGxhdGU8dHlwZW5hbWUgVT4gY2xhc3MgQXJpdGhtUz4NCisgc3RhdGljIGJv b2wgX19kb0ZyYW1lRlAoQXVkaW9GcmFtZSogaW4sIEF1ZGlvRnJhbWUqIG91dCwgaW50IHNhbXBs ZV93aWR0aCkNCisgew0KKyAgICAgQXVkaW9Db25maWd1cmF0aW9uIGNvbmZpZyA9ICppbjsNCklu ZGV4OiBha29kZS9maWxlcy9wYXRjaC1ha29kZS1saWItY3Jvc3NmYWRlci5jcHANCj09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT0NCi0tLSBha29kZS9maWxlcy9wYXRjaC1ha29kZS1saWItY3Jvc3NmYWRlci5jcHAJKHJldmlz aW9uIDApDQorKysgYWtvZGUvZmlsZXMvcGF0Y2gtYWtvZGUtbGliLWNyb3NzZmFkZXIuY3BwCSh3 b3JraW5nIGNvcHkpDQpAQCAtMCwwICsxLDIwIEBADQorLS0tIGFrb2RlL2xpYi9jcm9zc2ZhZGVy LmNwcC1vcmlnCTIwMDUtMTAtMjAgMTU6NDc6MTcuMDAwMDAwMDAwIC0wNTAwDQorKysrIGFrb2Rl L2xpYi9jcm9zc2ZhZGVyLmNwcAkyMDEzLTA5LTE5IDA4OjUyOjQ2LjAwMDAwMDAwMCAtMDUwMA0K K0BAIC0yNyw3ICsyNyw3IEBADQorIENyb3NzRmFkZXI6OkNyb3NzRmFkZXIodW5zaWduZWQgaW50 IHRpbWUpIDogdGltZSh0aW1lKSxwb3MoMCkge30NCisgDQorIC8vIFQgaXMgdGhlIGlucHV0L291 dHB1dCB0eXBlLCBTIGlzIHRoZSBmYXN0IGFyaXRobWV0aWNzIHR5cGUsIERpdiBpcyBhIGRpdmlz aW9uIG1ldGhvZA0KKy10ZW1wbGF0ZTx0eXBlbmFtZSBULCB0eXBlbmFtZSBTLCB0ZW1wbGF0ZTx0 eXBlbmFtZSBTPiBjbGFzcyBBcml0aG0+DQorK3RlbXBsYXRlPHR5cGVuYW1lIFQsIHR5cGVuYW1l IFMsIHRlbXBsYXRlPHR5cGVuYW1lIFU+IGNsYXNzIEFyaXRobT4NCisgc3RhdGljIGJvb2wgX2Rv RnJhbWUoQXVkaW9GcmFtZSogaW4sIGludCYgcG9zLCBBdWRpb0ZyYW1lKiBmcmFtZSkNCisgew0K KyAgICAgVCoqIGluZGF0YTEgPSAoVCoqKWluLT5kYXRhOw0KK0BAIC02Niw3ICs2Niw3IEBADQor IH0NCisgDQorIC8vIFQgaXMgdGhlIGlucHV0L291dHB1dCB0eXBlLCBTIGlzIHRoZSBmYXN0IGFy aXRobWV0aWNzIHR5cGUsIEFyaXRobSBkZWZpbmVzIGRldmlzaW9ucw0KKy10ZW1wbGF0ZTx0eXBl bmFtZSBULCB0eXBlbmFtZSBTLCB0ZW1wbGF0ZTx0eXBlbmFtZSBTPiBjbGFzcyBBcml0aG0+DQor K3RlbXBsYXRlPHR5cGVuYW1lIFQsIHR5cGVuYW1lIFMsIHRlbXBsYXRlPHR5cGVuYW1lIFU+IGNs YXNzIEFyaXRobT4NCisgc3RhdGljIGJvb2wgX3JlYWRGcmFtZShBdWRpb0ZyYW1lKiBpbiwgaW50 JiBwb3MsIEF1ZGlvRnJhbWUqIGZyYW1lKQ0KKyB7DQorICAgICBUKiogaW5kYXRhID0gKFQqKilm cmFtZS0+ZGF0YTsNCkluZGV4OiBha29kZS9maWxlcy9wYXRjaC1ha29kZS1saWItZmFzdF9yZXNh bXBsZXIuY3BwDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09DQotLS0gYWtvZGUvZmlsZXMvcGF0Y2gtYWtvZGUtbGliLWZh c3RfcmVzYW1wbGVyLmNwcAkocmV2aXNpb24gMCkNCisrKyBha29kZS9maWxlcy9wYXRjaC1ha29k ZS1saWItZmFzdF9yZXNhbXBsZXIuY3BwCSh3b3JraW5nIGNvcHkpDQpAQCAtMCwwICsxLDExIEBA DQorLS0tIGFrb2RlL2xpYi9mYXN0X3Jlc2FtcGxlci5jcHAtb3JpZwkyMDA2LTA1LTI2IDEzOjM3 OjE3LjAwMDAwMDAwMCAtMDUwMA0KKysrKyBha29kZS9saWIvZmFzdF9yZXNhbXBsZXIuY3BwCTIw MTMtMDktMTkgMDg6NTQ6NTEuMDAwMDAwMDAwIC0wNTAwDQorQEAgLTM3LDcgKzM3LDcgQEANCisg Ly8gQSBmYXN0IHJlc2FtcGxpbmcgYnkgbGluZWFyIGludGVycG9sYXRpb24NCisgLy8gSSBhc3N1 bWUgeW91IGtub3cgYmluYXJ5IGFyaXRobWV0aWNzIGFuZCBjb252ZXJ0aW9ucyBpZiB5b3UncmUg cmVhZGluZyB0aGlzDQorIC8vIFQgaXMgdGhlIGlucHV0L291dHB1dCB0eXBlLCBBcml0aG0gZGVm aW5lcyB0aGUgdXNlZCBhcml0aG1ldGljDQorLXRlbXBsYXRlPHR5cGVuYW1lIFQsIHR5cGVuYW1l IFMsIHRlbXBsYXRlPHR5cGVuYW1lIFM+IGNsYXNzIEFyaXRobT4NCisrdGVtcGxhdGU8dHlwZW5h bWUgVCwgdHlwZW5hbWUgUywgdGVtcGxhdGU8dHlwZW5hbWUgVT4gY2xhc3MgQXJpdGhtPg0KKyBz dGF0aWMgYm9vbCBfZG9CdWZmZXIoQXVkaW9GcmFtZSogaW4sIEF1ZGlvRnJhbWUqIG91dCwgZmxv YXQgc3BlZWQsIHVuc2lnbmVkIHNhbXBsZV9yYXRlKQ0KKyB7DQorICAgICB1bnNpZ25lZCBsb25n IHZ0X3Bvc19zdGFydCA9IDA7ICAvLyB2aXJ0dWFsIHBvc2l0aW9ucyBvZiBuZXcgc2FtcGxlDQpJ bmRleDogYWtvZGUvZmlsZXMvcGF0Y2gtYWtvZGUtbGliLW1hZ2ljLmNwcA0KPT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0K LS0tIGFrb2RlL2ZpbGVzL3BhdGNoLWFrb2RlLWxpYi1tYWdpYy5jcHAJKHJldmlzaW9uIDApDQor KysgYWtvZGUvZmlsZXMvcGF0Y2gtYWtvZGUtbGliLW1hZ2ljLmNwcAkod29ya2luZyBjb3B5KQ0K QEAgLTAsMCArMSwxMCBAQA0KKy0tLSBha29kZS9saWIvbWFnaWMuY3BwLW9yaWcJMjAwNS0xMC0y MCAxNTo0NzoxNy4wMDAwMDAwMDAgLTA1MDANCisrKysgYWtvZGUvbGliL21hZ2ljLmNwcAkyMDEz LTA5LTE5IDA4OjA4OjU4LjAwMDAwMDAwMCAtMDUwMA0KK0BAIC0yMiw2ICsyMiw3IEBADQorICNp bmNsdWRlICJtYWdpYy5oIg0KKyAjaW5jbHVkZSAiZmlsZS5oIg0KKyAjaW5jbHVkZSA8aW9zdHJl YW0+DQorKyNpbmNsdWRlIDxjc3RyaW5nPg0KKyB1c2luZyBzdGQ6OmNlcnI7DQorIA0KKyBuYW1l c3BhY2UgYUtvZGUgew0KSW5kZXg6IGFrb2RlL2ZpbGVzL3BhdGNoLWFrb2RlLWxpYi1wbGF5ZXIu Y3BwDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09DQotLS0gYWtvZGUvZmlsZXMvcGF0Y2gtYWtvZGUtbGliLXBsYXllci5j cHAJKHJldmlzaW9uIDApDQorKysgYWtvZGUvZmlsZXMvcGF0Y2gtYWtvZGUtbGliLXBsYXllci5j cHAJKHdvcmtpbmcgY29weSkNCkBAIC0wLDAgKzEsMTAgQEANCistLS0gYWtvZGUvbGliL3BsYXll ci5jcHAtb3JpZwkyMDA2LTExLTA1IDA4OjM3OjQ4LjAwMDAwMDAwMCAtMDYwMA0KKysrKyBha29k ZS9saWIvcGxheWVyLmNwcAkyMDEzLTA5LTE5IDA4OjA2OjM3LjAwMDAwMDAwMCAtMDUwMA0KK0BA IC0yMSw2ICsyMSw3IEBADQorICNpbmNsdWRlIDxwdGhyZWFkLmg+DQorICNpbmNsdWRlIDxzZW1h cGhvcmUuaD4NCisgI2luY2x1ZGUgPGFzc2VydC5oPg0KKysjaW5jbHVkZSA8Y3N0cmluZz4NCisg DQorICNpbmNsdWRlICJhdWRpb2ZyYW1lLmgiDQorICNpbmNsdWRlICJhdWRpb2J1ZmZlci5oIg0K SW5kZXg6IGFrb2RlL2ZpbGVzL3BhdGNoLWFrb2RlLWxpYi12b2x1bWVmaWx0ZXIuY3BwDQo9PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09DQotLS0gYWtvZGUvZmlsZXMvcGF0Y2gtYWtvZGUtbGliLXZvbHVtZWZpbHRlci5jcHAJ KHJldmlzaW9uIDApDQorKysgYWtvZGUvZmlsZXMvcGF0Y2gtYWtvZGUtbGliLXZvbHVtZWZpbHRl ci5jcHAJKHdvcmtpbmcgY29weSkNCkBAIC0wLDAgKzEsMTEgQEANCistLS0gYWtvZGUvbGliL3Zv bHVtZWZpbHRlci5jcHAtb3JpZwkyMDA1LTEwLTIwIDE1OjQ3OjE3LjAwMDAwMDAwMCAtMDUwMA0K KysrKyBha29kZS9saWIvdm9sdW1lZmlsdGVyLmNwcAkyMDEzLTA5LTE5IDA4OjU2OjM3LjAwMDAw MDAwMCAtMDUwMA0KK0BAIC0yOSw3ICsyOSw3IEBADQorIFZvbHVtZUZpbHRlcjo6Vm9sdW1lRmls dGVyKCkgOiBtX3ZvbHVtZSgwKSB7fQ0KKyANCisgLy8gVCBpcyB0aGUgaW5wdXQvb3V0cHV0IHR5 cGUsIFMgaXMgdGhlIGZhc3QgYXJpdGhtZXRpY3MgdHlwZSwgQXJpdGhtIGlzIGEgZGl2aXNpb24g ZGVmaW5pdGlvbg0KKy10ZW1wbGF0ZTx0eXBlbmFtZSBULCB0eXBlbmFtZSBTLCB0ZW1wbGF0ZTx0 eXBlbmFtZSBTPiBjbGFzcyBBcml0aG0+DQorK3RlbXBsYXRlPHR5cGVuYW1lIFQsIHR5cGVuYW1l IFMsIHRlbXBsYXRlPHR5cGVuYW1lIFU+IGNsYXNzIEFyaXRobT4NCisgc3RhdGljIGJvb2wgX2Rv RnJhbWUoQXVkaW9GcmFtZSogaW4sIEF1ZGlvRnJhbWUqIG91dCwgaW50IHZvbHVtZSkNCisgew0K KyAgICAgVCoqIGluZGF0YSA9IChUKiopaW4tPmRhdGE7DQpJbmRleDogYWtvZGUvZmlsZXMvcGF0 Y2gtYWtvZGVfX3BsdWdpbnNfX01ha2VmaWxlLmluDQo9PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQotLS0gYWtvZGUvZmls ZXMvcGF0Y2gtYWtvZGVfX3BsdWdpbnNfX01ha2VmaWxlLmluCShyZXZpc2lvbiAwKQ0KKysrIGFr b2RlL2ZpbGVzL3BhdGNoLWFrb2RlX19wbHVnaW5zX19NYWtlZmlsZS5pbgkod29ya2luZyBjb3B5 KQ0KQEAgLTAsMCArMSwxNSBAQA0KKy0tLSBha29kZS9wbHVnaW5zL01ha2VmaWxlLmluLm9yaWcJ VHVlIE5vdiAyOSAxODoxMDoyMCAyMDA1DQorKysrIGFrb2RlL3BsdWdpbnMvTWFrZWZpbGUuaW4J VHVlIE5vdiAyOSAxODoxMDo0NSAyMDA1DQorQEAgLTI1MiwxMSArMjUyLDcgQEANCisgQGluY2x1 ZGVfc3VuX3NpbmtfVFJVRUBBS09ERV9TVU5fU0lOSyA9IHN1bl9zaW5rDQorIEBpbmNsdWRlX2ph Y2tfc2lua19UUlVFQEFLT0RFX0pBQ0tfU0lOSyA9IGphY2tfc2luaw0KKyBAaW5jbHVkZV9wb2x5 cF9zaW5rX1RSVUVAQUtPREVfUE9MWVBfU0lOSyA9IHBvbHlwX3NpbmsNCistU1VCRElSUyA9ICQo QUtPREVfTVBDX0RFQ09ERVIpICQoQUtPREVfWElQSF9ERUNPREVSKSBcDQorLSAgICAgICAgICQo QUtPREVfTVBFR19ERUNPREVSKSAkKEFLT0RFX0ZGTVBFR19ERUNPREVSKSBcDQorLSAgICAgICAg ICQoQUtPREVfQUxTQV9TSU5LKSAkKEFLT0RFX09TU19TSU5LKSAkKEFLT0RFX1NVTl9TSU5LKSBc DQorLSAgICAgICAgICQoQUtPREVfSkFDS19TSU5LKSAkKEFLT0RFX1BPTFlQX1NJTkspIFwNCist ICAgICAgICAgJChBS09ERV9TUkNfUkVTQU1QTEVSKQ0KKytTVUJESVJTID0gJSVTVUJESVJTJSUN CisgDQorICM+LSBhbGw6IGFsbC1yZWN1cnNpdmUNCisgIz4rIDENCkluZGV4OiBha29kZS9maWxl cy9wYXRjaC1ha29kZV9fcGx1Z2luc19fZmZtcGVnX2RlY29kZXJfX2ZmbXBlZ19kZWNvZGVyLmNw cA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PQ0KLS0tIGFrb2RlL2ZpbGVzL3BhdGNoLWFrb2RlX19wbHVnaW5zX19mZm1w ZWdfZGVjb2Rlcl9fZmZtcGVnX2RlY29kZXIuY3BwCShyZXZpc2lvbiAwKQ0KKysrIGFrb2RlL2Zp bGVzL3BhdGNoLWFrb2RlX19wbHVnaW5zX19mZm1wZWdfZGVjb2Rlcl9fZmZtcGVnX2RlY29kZXIu Y3BwCSh3b3JraW5nIGNvcHkpDQpAQCAtMCwwICsxLDIwIEBADQorLS0tIGFrb2RlL3BsdWdpbnMv ZmZtcGVnX2RlY29kZXIvZmZtcGVnX2RlY29kZXIuY3BwLm9yaWcJMjAwNi0wOC0xMCAxNTozNzoy MC4wMDAwMDAwMDAgLTAzMDANCisrKysgYWtvZGUvcGx1Z2lucy9mZm1wZWdfZGVjb2Rlci9mZm1w ZWdfZGVjb2Rlci5jcHAJMjAwOS0xMS0xMyAyMjo0OToxMi4wMDAwMDAwMDAgLTAyMDANCitAQCAt NDUsNyArNDUsNyBAQA0KKyAgICAgICAgIGFLb2RlOjpGaWxlICpmaWxlID0gKGFLb2RlOjpGaWxl KilvcGFxdWU7DQorICAgICAgICAgcmV0dXJuIGZpbGUtPndyaXRlKChjaGFyKilidWYsIHNpemUp Ow0KKyAgICAgfQ0KKy0gICAgc3RhdGljIG9mZnNldF90IGFrb2RlX3NlZWsodm9pZCogb3BhcXVl LCBvZmZzZXRfdCBwb3MsIGludCB3aGVuY2UpDQorKyAgICBzdGF0aWMgaW50NjRfdCBha29kZV9z ZWVrKHZvaWQqIG9wYXF1ZSwgaW50NjRfdCBwb3MsIGludCB3aGVuY2UpDQorICAgICB7DQorICAg ICAgICAgYUtvZGU6OkZpbGUgKmZpbGUgPSAoYUtvZGU6OkZpbGUqKW9wYXF1ZTsNCisgICAgICAg ICByZXR1cm4gZmlsZS0+c2Vlayhwb3MsIHdoZW5jZSk7DQorQEAgLTMxNCw3ICszMTQsNyBAQA0K KyAgICAgYXNzZXJ0KGQtPnBhY2tldC5zdHJlYW1faW5kZXggPT0gZC0+YXVkaW9TdHJlYW0pOw0K KyANCisgcmV0cnk6DQorLSAgICBpbnQgbGVuID0gYXZjb2RlY19kZWNvZGVfYXVkaW8oIGQtPmlj LT5zdHJlYW1zW2QtPmF1ZGlvU3RyZWFtXS0+Y29kZWMsDQorKyAgICBpbnQgbGVuID0gYXZjb2Rl Y19kZWNvZGVfYXVkaW8yKCBkLT5pYy0+c3RyZWFtc1tkLT5hdWRpb1N0cmVhbV0tPmNvZGVjLA0K KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc2hvcnQqKWQtPmJ1ZmZlciwg JmQtPmJ1ZmZlcl9zaXplLA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBk LT5wYWNrZXREYXRhLCBkLT5wYWNrZXRTaXplICk7DQorIA0KSW5kZXg6IGFrb2RlL2ZpbGVzL3Bh dGNoLWFrb2RlX19wbHVnaW5zX19wb2x5cF9zaW5rX19wb2x5cF9zaW5rLmNwcA0KPT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PQ0KLS0tIGFrb2RlL2ZpbGVzL3BhdGNoLWFrb2RlX19wbHVnaW5zX19wb2x5cF9zaW5rX19wb2x5 cF9zaW5rLmNwcAkocmV2aXNpb24gMCkNCisrKyBha29kZS9maWxlcy9wYXRjaC1ha29kZV9fcGx1 Z2luc19fcG9seXBfc2lua19fcG9seXBfc2luay5jcHAJKHdvcmtpbmcgY29weSkNCkBAIC0wLDAg KzEsMjAgQEANCistLS0gYWtvZGUvcGx1Z2lucy9wb2x5cF9zaW5rL3BvbHlwX3NpbmsuY3BwLm9y aWcJU3VuIEp1biAxMCAxMzoyMzowMyAyMDA3DQorKysrIGFrb2RlL3BsdWdpbnMvcG9seXBfc2lu ay9wb2x5cF9zaW5rLmNwcAlTdW4gSnVuIDEwIDEzOjI0OjEzIDIwMDcNCitAQCAtMjUsNyArMjUs NyBAQA0KKyAjZWxpZiBkZWZpbmVkKEhBVkVfSU5UVFlQRVNfSCkNCisgI2luY2x1ZGUgPGludHR5 cGVzLmg+DQorICNlbmRpZg0KKy0jaW5jbHVkZSA8cG9seXAvcG9seXBsaWItc2ltcGxlLmg+DQor KyNpbmNsdWRlIDxwdWxzZS9zaW1wbGUuaD4NCisgDQorICNpbmNsdWRlICJhdWRpb2ZyYW1lLmgi DQorICNpbmNsdWRlICJhdWRpb2J1ZmZlci5oIg0KK0BAIC01OSw3ICs1OSw3IEBADQorIA0KKyBi b29sIFBvbHlwU2luazo6b3BlbigpIHsNCisgICAgIGludCBlcnJvciA9IDA7DQorLSAgICBtX2Rh dGEtPnNlcnZlciA9IHBhX3NpbXBsZV9uZXcoMCwgImFrb2RlLWNsaWVudCIsIFBBX1NUUkVBTV9Q TEFZQkFDSywgMCwgIiIsICZtX2RhdGEtPnNhbXBsZV9zcGVjLCAwLCAyNTUsICZlcnJvciApOw0K KysgICAgbV9kYXRhLT5zZXJ2ZXIgPSBwYV9zaW1wbGVfbmV3KDAsICJha29kZS1jbGllbnQiLCBQ QV9TVFJFQU1fUExBWUJBQ0ssIDAsICIiLCAmbV9kYXRhLT5zYW1wbGVfc3BlYywgMCwgMCwgJmVy cm9yICk7DQorICAgICBpZiAoIW1fZGF0YS0+c2VydmVyIHx8IGVycm9yICE9IDApIHsNCisgICAg ICAgICBtX2RhdGEtPmVycm9yID0gdHJ1ZTsNCisgICAgICAgICBjbG9zZSgpOw0KSW5kZXg6IGFr b2RlL2ZpbGVzL3BhdGNoLWFrb2RlX19wbHVnaW5zX194aXBoX2RlY29kZXJfX2ZsYWMxMTNfZGVj b2Rlci5jcHANCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT0NCi0tLSBha29kZS9maWxlcy9wYXRjaC1ha29kZV9fcGx1Z2lu c19feGlwaF9kZWNvZGVyX19mbGFjMTEzX2RlY29kZXIuY3BwCShyZXZpc2lvbiAwKQ0KKysrIGFr b2RlL2ZpbGVzL3BhdGNoLWFrb2RlX19wbHVnaW5zX194aXBoX2RlY29kZXJfX2ZsYWMxMTNfZGVj b2Rlci5jcHAJKHdvcmtpbmcgY29weSkNCkBAIC0wLDAgKzEsMTEgQEANCistLS0gYWtvZGUvcGx1 Z2lucy94aXBoX2RlY29kZXIvZmxhYzExM19kZWNvZGVyLmNwcC5vcmlnCTIwMDgtMDMtMjcgMTY6 MTE6MjYuMDAwMDAwMDAwICswMTAwDQorKysrIGFrb2RlL3BsdWdpbnMveGlwaF9kZWNvZGVyL2Zs YWMxMTNfZGVjb2Rlci5jcHAJMjAwOC0wMy0yNyAxNjoxMTo0Ni4wMDAwMDAwMDAgKzAxMDANCitA QCAtMTA4LDcgKzEwOCw3IEBAIHN0cnVjdCBGTEFDRGVjb2Rlcjo6cHJpdmF0ZV9kYXRhIHsNCisg c3RhdGljIEZMQUNfX1N0cmVhbURlY29kZXJSZWFkU3RhdHVzIGZsYWNfcmVhZF9jYWxsYmFjaygN CisgICAgICAgICBjb25zdCBGTEFDX19TdHJlYW1EZWNvZGVyICosDQorICAgICAgICAgRkxBQ19f Ynl0ZSBidWZmZXJbXSwNCistICAgICAgICB1bnNpZ25lZCAqYnl0ZXMsDQorKyAgICAgICAgc2l6 ZV90ICpieXRlcywNCisgICAgICAgICB2b2lkICpjbGllbnRfZGF0YSkNCisgew0KKyAgICAgRkxB Q0RlY29kZXI6OnByaXZhdGVfZGF0YSAqZGF0YSA9IChGTEFDRGVjb2Rlcjo6cHJpdmF0ZV9kYXRh KiljbGllbnRfZGF0YTsNCkluZGV4OiBha29kZS9maWxlcy9wYXRjaC1ha29kZV9fcGx1Z2luc19f eGlwaF9kZWNvZGVyX19zcGVleF9kZWNvZGVyLmNwcA0KPT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KLS0tIGFrb2RlL2Zp bGVzL3BhdGNoLWFrb2RlX19wbHVnaW5zX194aXBoX2RlY29kZXJfX3NwZWV4X2RlY29kZXIuY3Bw CShyZXZpc2lvbiAwKQ0KKysrIGFrb2RlL2ZpbGVzL3BhdGNoLWFrb2RlX19wbHVnaW5zX194aXBo X2RlY29kZXJfX3NwZWV4X2RlY29kZXIuY3BwCSh3b3JraW5nIGNvcHkpDQpAQCAtMCwwICsxLDE3 IEBADQorLS0tIGFrb2RlL3BsdWdpbnMveGlwaF9kZWNvZGVyL3NwZWV4X2RlY29kZXIuY3BwLm9y aWcNCisrKysgYWtvZGUvcGx1Z2lucy94aXBoX2RlY29kZXIvc3BlZXhfZGVjb2Rlci5jcHANCitA QCAtMjUsMTAgKzI1LDEwIEBADQorIGV4dGVybiAiQyIgew0KKyAjaW5jbHVkZSA8c3RyaW5nLmg+ DQorICNpbmNsdWRlIDxzdGRsaWIuaD4NCistI2luY2x1ZGUgPHNwZWV4Lmg+DQorLSNpbmNsdWRl IDxzcGVleF9oZWFkZXIuaD4NCistI2luY2x1ZGUgPHNwZWV4X2NhbGxiYWNrcy5oPg0KKy0jaW5j bHVkZSA8c3BlZXhfc3RlcmVvLmg+DQorKyNpbmNsdWRlIDxzcGVleC9zcGVleC5oPg0KKysjaW5j bHVkZSA8c3BlZXgvc3BlZXhfaGVhZGVyLmg+DQorKyNpbmNsdWRlIDxzcGVleC9zcGVleF9jYWxs YmFja3MuaD4NCisrI2luY2x1ZGUgPHNwZWV4L3NwZWV4X3N0ZXJlby5oPg0KKyAjaW5jbHVkZSA8 b2dnL29nZy5oPg0KKyB9DQorIA0KSW5kZXg6IGFrb2RlL2ZpbGVzL3BhdGNoLWNvbmZpZ3VyZQ0K PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PQ0KLS0tIGFrb2RlL2ZpbGVzL3BhdGNoLWNvbmZpZ3VyZQkocmV2aXNpb24gMCkN CisrKyBha29kZS9maWxlcy9wYXRjaC1jb25maWd1cmUJKHdvcmtpbmcgY29weSkNCkBAIC0wLDAg KzEsNDcgQEANCistLS0gY29uZmlndXJlLm9yaWcNCisrKysgY29uZmlndXJlDQorQEAgLTIyMjAw LDggKzIyMjAwLDggQEANCisgY2F0ID4+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRg0KKyAvKiBl bmQgY29uZmRlZnMuaC4gICovDQorIA0KKy0gICAgICAgICAgICAgICAgI2luY2x1ZGUgPHNwZWV4 Lmg+DQorLSAgICAgICAgICAgICAgICAjaW5jbHVkZSA8c3BlZXhfY2FsbGJhY2tzLmg+DQorKyAg ICAgICAgICAgICAgICAjaW5jbHVkZSA8c3BlZXgvc3BlZXguaD4NCisrICAgICAgICAgICAgICAg ICNpbmNsdWRlIDxzcGVleC9zcGVleF9jYWxsYmFja3MuaD4NCisgICAgICAgICAgICAgICAgICNp bmNsdWRlIDxvZ2cvb2dnLmg+DQorIA0KKyBpbnQNCitAQCAtMjIzNTAsMTAgKzIyMzUwLDEwIEBA DQorIGNhdCA+PmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YNCisgLyogZW5kIGNvbmZkZWZzLmgu ICAqLw0KKyANCistICAgICAgICAgICAgICAgICNpbmNsdWRlIDxzcGVleC5oPg0KKy0gICAgICAg ICAgICAgICAgI2luY2x1ZGUgPHNwZWV4X2NhbGxiYWNrcy5oPg0KKy0gICAgICAgICAgICAgICAg I2luY2x1ZGUgPHNwZWV4X2VjaG8uaD4NCistICAgICAgICAgICAgICAgICNpbmNsdWRlIDxzcGVl eF9wcmVwcm9jZXNzLmg+DQorKyAgICAgICAgICAgICAgICAjaW5jbHVkZSA8c3BlZXgvc3BlZXgu aD4NCisrICAgICAgICAgICAgICAgICNpbmNsdWRlIDxzcGVleC9zcGVleF9jYWxsYmFja3MuaD4N CisrICAgICAgICAgICAgICAgICNpbmNsdWRlIDxzcGVleC9zcGVleF9lY2hvLmg+DQorKyAgICAg ICAgICAgICAgICAjaW5jbHVkZSA8c3BlZXgvc3BlZXhfcHJlcHJvY2Vzcy5oPg0KKyAgICAgICAg ICAgICAgICAgI2luY2x1ZGUgPG9nZy9vZ2cuaD4NCisgDQorIGludA0KK0BAIC0yNTUwNiwxMiAr MjU1MDYsMTIgQEANCisgDQorIA0KKyBpZiB0ZXN0ICJ4JHBvbHlwYXVkaW9fdGVzdCIgPSAieHll cyIgOyB0aGVuDQorLXsgZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGZvciBQb2x5cGF1 ZGlvIDAuNyBvciBsYXRlciIgPiY1DQorLWVjaG8gJEVDSE9fTiAiY2hlY2tpbmcgZm9yIFBvbHlw YXVkaW8gMC43IG9yIGxhdGVyLi4uICRFQ0hPX0MiID4mNjsgfQ0KKy1pZiAkUEtHX0NPTkZJRyAt LWF0bGVhc3QtdmVyc2lvbiAwLjcgcG9seXBsaWItc2ltcGxlID4vZGV2L251bGwgMj4mMSA7IHRo ZW4NCistICBQT0xZUF9DRkxBR1M9ImAkUEtHX0NPTkZJRyAtLWNmbGFncyBwb2x5cGxpYi1zaW1w bGVgIg0KKy0gIFBPTFlQX0xJQkFERD0iYCRQS0dfQ09ORklHIC0tbGlicy1vbmx5LWwgcG9seXBs aWItc2ltcGxlYCINCistICBQT0xZUF9MREZMQUdTPSJgJFBLR19DT05GSUcgLS1saWJzLW9ubHkt TCBwb2x5cGxpYi1zaW1wbGVgIg0KKyt7IGVjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBm b3IgUHVsc2VhdWRpbyAwLjkuMiBvciBsYXRlciIgPiY1DQorK2VjaG8gJEVDSE9fTiAiY2hlY2tp bmcgZm9yIFB1bHNlYXVkaW8gMC45LjIgb3IgbGF0ZXIuLi4gJEVDSE9fQyIgPiY2OyB9DQorK2lm ICRQS0dfQ09ORklHIC0tYXRsZWFzdC12ZXJzaW9uIDAuOS4yIGxpYnB1bHNlLXNpbXBsZSA+L2Rl di9udWxsIDI+JjEgOyB0aGVuDQorKyAgUE9MWVBfQ0ZMQUdTPSJgJFBLR19DT05GSUcgLS1jZmxh Z3MgbGlicHVsc2Utc2ltcGxlYCINCisrICBQT0xZUF9MSUJBREQ9ImAkUEtHX0NPTkZJRyAtLWxp YnMtb25seS1sIGxpYnB1bHNlLXNpbXBsZWAiDQorKyAgUE9MWVBfTERGTEFHUz0iYCRQS0dfQ09O RklHIC0tbGlicy1vbmx5LUwgbGlicHVsc2Utc2ltcGxlYCINCisgICBoYXZlX3BvbHlwPXllcw0K KyAgIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogeWVzIiA+JjUNCisgZWNobyAiJHtF Q0hPX1R9eWVzIiA+JjY7IH0NCkluZGV4OiBha29kZS1wbHVnaW5zLWZmbXBlZy9NYWtlZmlsZQ0K PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PQ0KLS0tIGFrb2RlLXBsdWdpbnMtZmZtcGVnL01ha2VmaWxlCShyZXZpc2lvbiAz MjgzMDkpDQorKysgYWtvZGUtcGx1Z2lucy1mZm1wZWcvTWFrZWZpbGUJKHdvcmtpbmcgY29weSkN CkBAIC0xMCwxMCArMTAsMTEgQEANCiAJCSR7TUFTVEVSX1NJVEVfTE9DQUx9DQogTUFTVEVSX1NJ VEVfU1VCRElSPQlsYXN6bG9mDQogUEtHTkFNRVNVRkZJWD0JLXBsdWdpbnMtJHtQT1JUTkFNRVNV Rlh9DQotRElTVE5BTUU9ICAgICAgIDMwMzc1LWFrb2RlLSR7UE9SVFZFUlNJT059DQorRElTVE5B TUU9CTMwMzc1LWFrb2RlLSR7UE9SVFZFUlNJT059DQogDQogTUFJTlRBSU5FUj0Jc3doZXR6ZWxA Z21haWwuY29tDQogQ09NTUVOVD0JRkZNUEVHIGRlY29kZXIgcGx1Z2luIGZvciBha29kZQ0KKw0K IExJQ0VOU0U9CUxHUEwyMA0KIExJQ0VOU0VfRklMRT0JJHtXUktTUkN9L0NPUFlJTkcNCiANCkBA IC0yMSwxNyArMjIsMjQgQEANCiANCiBDT05GTElDVFM9CWtkZW11bHRpbWVkaWEtMy5bMS0zXSoN CiANCi1OT19TVEFHRT0JeWVzDQorUEFUQ0hESVI9CSR7TUFTVEVSRElSfS8uLi9ha29kZS9maWxl cw0KK1dSS1NSQz0JCSR7V1JLRElSfS9ha29kZS0ke1BPUlRWRVJTSU9OfQ0KK0JVSUxEX1dSS1NS Qz0JJHtXUktTUkN9L2Frb2RlDQorSU5TVEFMTF9XUktTUkM9CSR7V1JLU1JDfS9ha29kZS9wbHVn aW5zLyR7UExVR0lOfQ0KKw0KIFBMVUdJTj0JCWZmbXBlZ19kZWNvZGVyDQogUE9SVE5BTUVTVUZY PQkke1BMVUdJTjpTL19zaW5rLy86Uy9fZGVjb2Rlci8vOlMvc3JjXy8vfQ0KIA0KK05PX1NUQUdF PQl5ZXMNCiBVU0VTPQkJZ21ha2UNCi1VU0VfQVVUT1RPT0xTPQlsaWJsdGRsDQotVVNFX0FVVE9U T09MUz0JbGlidG9vbA0KK1VTRV9BVVRPVE9PTFM9CWxpYmx0ZGwgbGlidG9vbA0KIFVTRV9CWklQ Mj0JeWVzDQotV1JLU1JDPQkJJHtXUktESVJ9L2Frb2RlLSR7UE9SVFZFUlNJT059DQogVVNFX0xE Q09ORklHPQl5ZXMNCiANCitQTElTVF9GSUxFUz0JbGliL2xpYmFrb2RlXyR7UExVR0lOfS5hIFwN CisJCWxpYi9saWJha29kZV8ke1BMVUdJTn0ubGEgXA0KKwkJbGliL2xpYmFrb2RlXyR7UExVR0lO fS5zbw0KKw0KIExERkxBR1MrPQktTCR7V1JLU1JDfS9ha29kZS9saWIvLmxpYnMNCiBDT05GSUdV UkVfQVJHUys9LS13aXRoLWV4dHJhLWxpYnM9JHtMT0NBTEJBU0V9L2xpYiBcDQogCQktLXdpdGgt ZXh0cmEtaW5jbHVkZXM9JHtMT0NBTEJBU0V9L2luY2x1ZGUNCkBAIC0zOSwxNCArNDcsMTAgQEAN CiBwb3N0LXBhdGNoOg0KIAlAJHtTRVRFTlZ9IFRaPVVUQyBcDQogCSR7VE9VQ0h9IC10IDIwMDYw NzIyMjIxNy4wMSAke1dSS1NSQ30vYWtvZGUvbGliL2Frb2RlX2V4cG9ydC5oLmluDQorCSR7UkVJ TlBMQUNFX0NNRH0gLWUgJ3N8XlNVQkRJUlMgPS4qfFNVQkRJUlMgPSBsaWIgcGx1Z2luc3xnJyBc DQorCQkke1dSS1NSQ30vYWtvZGUvTWFrZWZpbGUuaW4NCiANCiBwcmUtY29uZmlndXJlOg0KIAlA JHtSRUlOUExBQ0VfQ01EfSAtZSAnc0AlJVNVQkRJUlMlJUAke1BMVUdJTn1AZycgJHtXUktTUkN9 L2Frb2RlL3BsdWdpbnMvTWFrZWZpbGUuaW4NCiANCi1kby1idWlsZDoNCi0JY2QgJHtXUktTUkN9 L2Frb2RlICYmICR7R01BS0V9DQotDQotZG8taW5zdGFsbDoNCi0JY2QgJHtXUktTUkN9L2Frb2Rl L3BsdWdpbnMvJHtQTFVHSU59ICYmICR7R01BS0V9IGluc3RhbGwNCi0NCiAuaW5jbHVkZSA8YnNk LnBvcnQubWs+DQpJbmRleDogYWtvZGUtcGx1Z2lucy1mZm1wZWcvZmlsZXMvcGF0Y2gtYWtvZGVf TWFrZWZpbGUuaW4NCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT0NCi0tLSBha29kZS1wbHVnaW5zLWZmbXBlZy9maWxlcy9w YXRjaC1ha29kZV9NYWtlZmlsZS5pbgkocmV2aXNpb24gMzI4MzA5KQ0KKysrIGFrb2RlLXBsdWdp bnMtZmZtcGVnL2ZpbGVzL3BhdGNoLWFrb2RlX01ha2VmaWxlLmluCSh3b3JraW5nIGNvcHkpDQpA QCAtMSwxMSArMCwwIEBADQotLS0tIGFrb2RlL01ha2VmaWxlLmluLm9yaWcJVHVlIE5vdiAyOSAx Nzo1MToxOSAyMDA1DQotKysrIGFrb2RlL01ha2VmaWxlLmluCVR1ZSBOb3YgMjkgMTc6NTE6MDUg MjAwNQ0KLUBAIC0yNDcsNyArMjQ3LDcgQEANCi0gdW5zZXJtYWtlX2VuYWJsZV9wY2hfRkFMU0Ug PSBAdW5zZXJtYWtlX2VuYWJsZV9wY2hfRkFMU0VADQotIHVuc2VybWFrZV9lbmFibGVfcGNoX1RS VUUgPSBAdW5zZXJtYWtlX2VuYWJsZV9wY2hfVFJVRUANCi0gYmluX1NDUklQVFMgPSBha29kZS1j b25maWcNCi0tU1VCRElSUyA9IGxpYiBwbHVnaW5zIGFrb2RlcGxheQ0KLStTVUJESVJTID0gbGli IHBsdWdpbnMNCi0gIz4tIGFsbDogYWxsLXJlY3Vyc2l2ZQ0KLSAjPisgMQ0KLSBhbGw6IGRvY3Mt YW0gIGFsbC1yZWN1cnNpdmUNCkluZGV4OiBha29kZS1wbHVnaW5zLWZmbXBlZy9maWxlcy9wYXRj aC1ha29kZV9fcGx1Z2luc19fZmZtcGVnX2RlY29kZXJfX2ZmbXBlZ19kZWNvZGVyLmNwcA0KPT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PQ0KLS0tIGFrb2RlLXBsdWdpbnMtZmZtcGVnL2ZpbGVzL3BhdGNoLWFrb2RlX19wbHVn aW5zX19mZm1wZWdfZGVjb2Rlcl9fZmZtcGVnX2RlY29kZXIuY3BwCShyZXZpc2lvbiAzMjgzMDkp DQorKysgYWtvZGUtcGx1Z2lucy1mZm1wZWcvZmlsZXMvcGF0Y2gtYWtvZGVfX3BsdWdpbnNfX2Zm bXBlZ19kZWNvZGVyX19mZm1wZWdfZGVjb2Rlci5jcHAJKHdvcmtpbmcgY29weSkNCkBAIC0xLDIw ICswLDAgQEANCi0tLS0gLi9ha29kZS9wbHVnaW5zL2ZmbXBlZ19kZWNvZGVyL2ZmbXBlZ19kZWNv ZGVyLmNwcC5vcmlnCTIwMDYtMDgtMTAgMTU6Mzc6MjAuMDAwMDAwMDAwIC0wMzAwDQotKysrIC4v YWtvZGUvcGx1Z2lucy9mZm1wZWdfZGVjb2Rlci9mZm1wZWdfZGVjb2Rlci5jcHAJMjAwOS0xMS0x MyAyMjo0OToxMi4wMDAwMDAwMDAgLTAyMDANCi1AQCAtNDUsNyArNDUsNyBAQA0KLSAgICAgICAg IGFLb2RlOjpGaWxlICpmaWxlID0gKGFLb2RlOjpGaWxlKilvcGFxdWU7DQotICAgICAgICAgcmV0 dXJuIGZpbGUtPndyaXRlKChjaGFyKilidWYsIHNpemUpOw0KLSAgICAgfQ0KLS0gICAgc3RhdGlj IG9mZnNldF90IGFrb2RlX3NlZWsodm9pZCogb3BhcXVlLCBvZmZzZXRfdCBwb3MsIGludCB3aGVu Y2UpDQotKyAgICBzdGF0aWMgaW50NjRfdCBha29kZV9zZWVrKHZvaWQqIG9wYXF1ZSwgaW50NjRf dCBwb3MsIGludCB3aGVuY2UpDQotICAgICB7DQotICAgICAgICAgYUtvZGU6OkZpbGUgKmZpbGUg PSAoYUtvZGU6OkZpbGUqKW9wYXF1ZTsNCi0gICAgICAgICByZXR1cm4gZmlsZS0+c2Vlayhwb3Ms IHdoZW5jZSk7DQotQEAgLTMxNCw3ICszMTQsNyBAQA0KLSAgICAgYXNzZXJ0KGQtPnBhY2tldC5z dHJlYW1faW5kZXggPT0gZC0+YXVkaW9TdHJlYW0pOw0KLSANCi0gcmV0cnk6DQotLSAgICBpbnQg bGVuID0gYXZjb2RlY19kZWNvZGVfYXVkaW8oIGQtPmljLT5zdHJlYW1zW2QtPmF1ZGlvU3RyZWFt XS0+Y29kZWMsDQotKyAgICBpbnQgbGVuID0gYXZjb2RlY19kZWNvZGVfYXVkaW8yKCBkLT5pYy0+ c3RyZWFtc1tkLT5hdWRpb1N0cmVhbV0tPmNvZGVjLA0KLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAoc2hvcnQqKWQtPmJ1ZmZlciwgJmQtPmJ1ZmZlcl9zaXplLA0KLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkLT5wYWNrZXREYXRhLCBkLT5wYWNrZXRT aXplICk7DQotIA0KSW5kZXg6IGFrb2RlLXBsdWdpbnMtZmZtcGVnL2ZpbGVzL3BhdGNoLWFrb2Rl X3BsdWdpbnMtTWFrZWZpbGUuaW4NCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCi0tLSBha29kZS1wbHVnaW5zLWZmbXBl Zy9maWxlcy9wYXRjaC1ha29kZV9wbHVnaW5zLU1ha2VmaWxlLmluCShyZXZpc2lvbiAzMjgzMDkp DQorKysgYWtvZGUtcGx1Z2lucy1mZm1wZWcvZmlsZXMvcGF0Y2gtYWtvZGVfcGx1Z2lucy1NYWtl ZmlsZS5pbgkod29ya2luZyBjb3B5KQ0KQEAgLTEsMTUgKzAsMCBAQA0KLS0tLSBha29kZS9wbHVn aW5zL01ha2VmaWxlLmluLm9yaWcJVHVlIE5vdiAyOSAxODoxMDoyMCAyMDA1DQotKysrIGFrb2Rl L3BsdWdpbnMvTWFrZWZpbGUuaW4JVHVlIE5vdiAyOSAxODoxMDo0NSAyMDA1DQotQEAgLTI1Miwx MSArMjUyLDcgQEANCi0gQGluY2x1ZGVfc3VuX3NpbmtfVFJVRUBBS09ERV9TVU5fU0lOSyA9IHN1 bl9zaW5rDQotIEBpbmNsdWRlX2phY2tfc2lua19UUlVFQEFLT0RFX0pBQ0tfU0lOSyA9IGphY2tf c2luaw0KLSBAaW5jbHVkZV9wb2x5cF9zaW5rX1RSVUVAQUtPREVfUE9MWVBfU0lOSyA9IHBvbHlw X3NpbmsNCi0tU1VCRElSUyA9ICQoQUtPREVfTVBDX0RFQ09ERVIpICQoQUtPREVfWElQSF9ERUNP REVSKSBcDQotLSAgICAgICAgICQoQUtPREVfTVBFR19ERUNPREVSKSAkKEFLT0RFX0ZGTVBFR19E RUNPREVSKSBcDQotLSAgICAgICAgICQoQUtPREVfQUxTQV9TSU5LKSAkKEFLT0RFX09TU19TSU5L KSAkKEFLT0RFX1NVTl9TSU5LKSBcDQotLSAgICAgICAgICQoQUtPREVfSkFDS19TSU5LKSAkKEFL T0RFX1BPTFlQX1NJTkspIFwNCi0tICAgICAgICAgJChBS09ERV9TUkNfUkVTQU1QTEVSKQ0KLStT VUJESVJTID0gJSVTVUJESVJTJSUNCi0gDQotICM+LSBhbGw6IGFsbC1yZWN1cnNpdmUNCi0gIz4r IDENCkluZGV4OiBha29kZS1wbHVnaW5zLWZmbXBlZy9wa2ctcGxpc3QNCj09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCi0t LSBha29kZS1wbHVnaW5zLWZmbXBlZy9wa2ctcGxpc3QJKHJldmlzaW9uIDMyODMwOSkNCisrKyBh a29kZS1wbHVnaW5zLWZmbXBlZy9wa2ctcGxpc3QJKHdvcmtpbmcgY29weSkNCkBAIC0xLDMgKzAs MCBAQA0KLWxpYi9saWJha29kZV9mZm1wZWdfZGVjb2Rlci5hDQotbGliL2xpYmFrb2RlX2ZmbXBl Z19kZWNvZGVyLmxhDQotbGliL2xpYmFrb2RlX2ZmbXBlZ19kZWNvZGVyLnNvDQpJbmRleDogYWtv ZGUtcGx1Z2lucy1qYWNrL01ha2VmaWxlDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQotLS0gYWtvZGUtcGx1Z2lucy1q YWNrL01ha2VmaWxlCShyZXZpc2lvbiAzMjgzMDkpDQorKysgYWtvZGUtcGx1Z2lucy1qYWNrL01h a2VmaWxlCSh3b3JraW5nIGNvcHkpDQpAQCAtMSwxNyArMSwxOSBAQA0KICMgQ3JlYXRlZCBieTog TWljaGFlbCBOb3R0ZWJyb2NrIDxsb2ZpQEZyZWVCU0Qub3JnPg0KICMgJEZyZWVCU0QkDQogDQot UE9SVE5BTUU9CWFrb2RlLXBsdWdpbnMtJHtQT1JUTkFNRVNVRlh9DQorUE9SVE5BTUU9CWFrb2Rl DQogUE9SVFZFUlNJT049CTIuMC4yDQogUE9SVEVQT0NIPQkxDQogQ0FURUdPUklFUz0JYXVkaW8g a2RlDQogTUFTVEVSX1NJVEVTPQlodHRwOi8vd3d3LmtkZS1hcHBzLm9yZy9DT05URU5UL2NvbnRl bnQtZmlsZXMvIFwNCiAJCSR7TUFTVEVSX1NJVEVfTE9DQUx9DQotTUFTVEVSX1NJVEVfU1VCRElS PWxhc3psb2YNCitNQVNURVJfU0lURV9TVUJESVI9CWxhc3psb2YNCitQS0dOQU1FU1VGRklYPQkt cGx1Z2lucy0ke1BPUlROQU1FU1VGWH0NCiBESVNUTkFNRT0JMzAzNzUtYWtvZGUtJHtQT1JUVkVS U0lPTn0NCiANCiBNQUlOVEFJTkVSPQlzd2hldHplbEBnbWFpbC5jb20NCiBDT01NRU5UPQlKYWNr IG91dHB1dCBwbHVnaW4gZm9yIGFrb2RlDQorDQogTElDRU5TRT0JTEdQTDIwDQogTElDRU5TRV9G SUxFPQkke1dSS1NSQ30vQ09QWUlORw0KIA0KQEAgLTE5LDE3ICsyMSwyNCBAQA0KIA0KIENPTkZM SUNUUz0Ja2RlbXVsdGltZWRpYS0zLlsxLTNdKg0KIA0KLU5PX1NUQUdFPQl5ZXMNCitQQVRDSERJ Uj0JJHtNQVNURVJESVJ9Ly4uL2Frb2RlL2ZpbGVzDQorV1JLU1JDPQkJJHtXUktESVJ9L2Frb2Rl LSR7UE9SVFZFUlNJT059DQorQlVJTERfV1JLU1JDPQkke1dSS1NSQ30vYWtvZGUNCitJTlNUQUxM X1dSS1NSQz0JJHtXUktTUkN9L2Frb2RlL3BsdWdpbnMvJHtQTFVHSU59DQorDQogUExVR0lOPQkJ amFja19zaW5rDQogUE9SVE5BTUVTVUZYPQkke1BMVUdJTjpTL19zaW5rLy86Uy9fZGVjb2Rlci8v OlMvc3JjXy8vfQ0KIA0KK05PX1NUQUdFPQl5ZXMNCiBVU0VTPQkJZ21ha2UNCi1VU0VfQVVUT1RP T0xTPQlsaWJsdGRsDQotVVNFX0FVVE9UT09MUz0JbGlidG9vbA0KK1VTRV9BVVRPVE9PTFM9CWxp Ymx0ZGwgbGlidG9vbA0KIFVTRV9CWklQMj0JeWVzDQotV1JLU1JDPQkJJHtXUktESVJ9L2Frb2Rl LSR7UE9SVFZFUlNJT059DQogVVNFX0xEQ09ORklHPQl5ZXMNCiANCitQTElTVF9GSUxFUz0JbGli L2xpYmFrb2RlXyR7UExVR0lOfS5hIFwNCisJCWxpYi9saWJha29kZV8ke1BMVUdJTn0ubGEgXA0K KwkJbGliL2xpYmFrb2RlXyR7UExVR0lOfS5zbw0KKw0KIExERkxBR1MrPQktTCR7V1JLU1JDfS9h a29kZS9saWIvLmxpYnMNCiBDT05GSUdVUkVfQVJHUys9LS13aXRoLWV4dHJhLWxpYnM9JHtMT0NB TEJBU0V9L2xpYiBcDQogCQktLXdpdGgtZXh0cmEtaW5jbHVkZXM9JHtMT0NBTEJBU0V9L2luY2x1 ZGUNCkBAIC0zNywxNCArNDYsMTAgQEANCiBwb3N0LXBhdGNoOg0KIAlAJHtTRVRFTlZ9IFRaPVVU QyBcDQogCSR7VE9VQ0h9IC10IDIwMDYwNzIyMjIxNy4wMSAke1dSS1NSQ30vYWtvZGUvbGliL2Fr b2RlX2V4cG9ydC5oLmluDQorCSR7UkVJTlBMQUNFX0NNRH0gLWUgJ3N8XlNVQkRJUlMgPS4qfFNV QkRJUlMgPSBsaWIgcGx1Z2luc3xnJyBcDQorCQkke1dSS1NSQ30vYWtvZGUvTWFrZWZpbGUuaW4N CiANCiBwcmUtY29uZmlndXJlOg0KIAlAJHtSRUlOUExBQ0VfQ01EfSAtZSAnc0AlJVNVQkRJUlMl JUAke1BMVUdJTn1AZycgJHtXUktTUkN9L2Frb2RlL3BsdWdpbnMvTWFrZWZpbGUuaW4NCiANCi1k by1idWlsZDoNCi0JY2QgJHtXUktTUkN9L2Frb2RlICYmICR7R01BS0V9DQotDQotZG8taW5zdGFs bDoNCi0JY2QgJHtXUktTUkN9L2Frb2RlL3BsdWdpbnMvJHtQTFVHSU59ICYmICR7R01BS0V9IGlu c3RhbGwNCi0NCiAuaW5jbHVkZSA8YnNkLnBvcnQubWs+DQpJbmRleDogYWtvZGUtcGx1Z2lucy1q YWNrL2ZpbGVzL3BhdGNoLWFrb2RlX01ha2VmaWxlLmluDQo9PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQotLS0gYWtvZGUt cGx1Z2lucy1qYWNrL2ZpbGVzL3BhdGNoLWFrb2RlX01ha2VmaWxlLmluCShyZXZpc2lvbiAzMjgz MDkpDQorKysgYWtvZGUtcGx1Z2lucy1qYWNrL2ZpbGVzL3BhdGNoLWFrb2RlX01ha2VmaWxlLmlu CSh3b3JraW5nIGNvcHkpDQpAQCAtMSwxMSArMCwwIEBADQotLS0tIGFrb2RlL01ha2VmaWxlLmlu Lm9yaWcJVHVlIE5vdiAyOSAxNzo1MToxOSAyMDA1DQotKysrIGFrb2RlL01ha2VmaWxlLmluCVR1 ZSBOb3YgMjkgMTc6NTE6MDUgMjAwNQ0KLUBAIC0yNDcsNyArMjQ3LDcgQEANCi0gdW5zZXJtYWtl X2VuYWJsZV9wY2hfRkFMU0UgPSBAdW5zZXJtYWtlX2VuYWJsZV9wY2hfRkFMU0VADQotIHVuc2Vy bWFrZV9lbmFibGVfcGNoX1RSVUUgPSBAdW5zZXJtYWtlX2VuYWJsZV9wY2hfVFJVRUANCi0gYmlu X1NDUklQVFMgPSBha29kZS1jb25maWcNCi0tU1VCRElSUyA9IGxpYiBwbHVnaW5zIGFrb2RlcGxh eQ0KLStTVUJESVJTID0gbGliIHBsdWdpbnMNCi0gIz4tIGFsbDogYWxsLXJlY3Vyc2l2ZQ0KLSAj PisgMQ0KLSBhbGw6IGRvY3MtYW0gIGFsbC1yZWN1cnNpdmUNCkluZGV4OiBha29kZS1wbHVnaW5z LWphY2svZmlsZXMvcGF0Y2gtYWtvZGVfcGx1Z2lucy1NYWtlZmlsZS5pbg0KPT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0K LS0tIGFrb2RlLXBsdWdpbnMtamFjay9maWxlcy9wYXRjaC1ha29kZV9wbHVnaW5zLU1ha2VmaWxl LmluCShyZXZpc2lvbiAzMjgzMDkpDQorKysgYWtvZGUtcGx1Z2lucy1qYWNrL2ZpbGVzL3BhdGNo LWFrb2RlX3BsdWdpbnMtTWFrZWZpbGUuaW4JKHdvcmtpbmcgY29weSkNCkBAIC0xLDE1ICswLDAg QEANCi0tLS0gYWtvZGUvcGx1Z2lucy9NYWtlZmlsZS5pbi5vcmlnCVR1ZSBOb3YgMjkgMTg6MTA6 MjAgMjAwNQ0KLSsrKyBha29kZS9wbHVnaW5zL01ha2VmaWxlLmluCVR1ZSBOb3YgMjkgMTg6MTA6 NDUgMjAwNQ0KLUBAIC0yNTIsMTEgKzI1Miw3IEBADQotIEBpbmNsdWRlX3N1bl9zaW5rX1RSVUVA QUtPREVfU1VOX1NJTksgPSBzdW5fc2luaw0KLSBAaW5jbHVkZV9qYWNrX3NpbmtfVFJVRUBBS09E RV9KQUNLX1NJTksgPSBqYWNrX3NpbmsNCi0gQGluY2x1ZGVfcG9seXBfc2lua19UUlVFQEFLT0RF X1BPTFlQX1NJTksgPSBwb2x5cF9zaW5rDQotLVNVQkRJUlMgPSAkKEFLT0RFX01QQ19ERUNPREVS KSAkKEFLT0RFX1hJUEhfREVDT0RFUikgXA0KLS0gICAgICAgICAkKEFLT0RFX01QRUdfREVDT0RF UikgJChBS09ERV9GRk1QRUdfREVDT0RFUikgXA0KLS0gICAgICAgICAkKEFLT0RFX0FMU0FfU0lO SykgJChBS09ERV9PU1NfU0lOSykgJChBS09ERV9TVU5fU0lOSykgXA0KLS0gICAgICAgICAkKEFL T0RFX0pBQ0tfU0lOSykgJChBS09ERV9QT0xZUF9TSU5LKSBcDQotLSAgICAgICAgICQoQUtPREVf U1JDX1JFU0FNUExFUikNCi0rU1VCRElSUyA9ICUlU1VCRElSUyUlDQotIA0KLSAjPi0gYWxsOiBh bGwtcmVjdXJzaXZlDQotICM+KyAxDQpJbmRleDogYWtvZGUtcGx1Z2lucy1qYWNrL3BrZy1wbGlz dA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PQ0KLS0tIGFrb2RlLXBsdWdpbnMtamFjay9wa2ctcGxpc3QJKHJldmlzaW9u IDMyODMwOSkNCisrKyBha29kZS1wbHVnaW5zLWphY2svcGtnLXBsaXN0CSh3b3JraW5nIGNvcHkp DQpAQCAtMSwzICswLDAgQEANCi1saWIvbGliYWtvZGVfamFja19zaW5rLmENCi1saWIvbGliYWtv ZGVfamFja19zaW5rLmxhDQotbGliL2xpYmFrb2RlX2phY2tfc2luay5zbw0KSW5kZXg6IGFrb2Rl LXBsdWdpbnMtbXBjL01ha2VmaWxlDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQotLS0gYWtvZGUtcGx1Z2lucy1tcGMv TWFrZWZpbGUJKHJldmlzaW9uIDMyODMwOSkNCisrKyBha29kZS1wbHVnaW5zLW1wYy9NYWtlZmls ZQkod29ya2luZyBjb3B5KQ0KQEAgLTEsNyArMSw3IEBADQogIyBDcmVhdGVkIGJ5OiBNaWNoYWVs IE5vdHRlYnJvY2sgPGxvZmlARnJlZUJTRC5vcmc+DQogIyAkRnJlZUJTRCQNCiANCi1QT1JUTkFN RT0JYWtvZGUtcGx1Z2lucy0ke1BPUlROQU1FU1VGWH0NCitQT1JUTkFNRT0JYWtvZGUNCiBQT1JU VkVSU0lPTj0JMi4wLjINCiBQT1JURVBPQ0g9CTENCiBDQVRFR09SSUVTPQlhdWRpbyBrZGUNCkBA IC04LDMwICs4LDM0IEBADQogTUFTVEVSX1NJVEVTPSAgIGh0dHA6Ly93d3cua2RlLWFwcHMub3Jn L0NPTlRFTlQvY29udGVudC1maWxlcy8gXA0KIAkJJHtNQVNURVJfU0lURV9MT0NBTH0NCiBNQVNU RVJfU0lURV9TVUJESVI9CWxhc3psb2YNCitQS0dOQU1FU1VGRklYPQktcGx1Z2lucy0ke1BPUlRO QU1FU1VGWH0NCiBESVNUTkFNRT0JMzAzNzUtYWtvZGUtJHtQT1JUVkVSU0lPTn0NCiANCiBNQUlO VEFJTkVSPQlzd2hldHplbEBnbWFpbC5jb20NCiBDT01NRU5UPQlNdXNlcGFjayBkZWNvZGVyIHBs dWdpbiBmb3IgYWtvZGUNCisNCiBMSUNFTlNFPQlMR1BMMjANCiBMSUNFTlNFX0ZJTEU9CSR7V1JL U1JDfS9DT1BZSU5HDQogDQogQ09ORkxJQ1RTPQlrZGVtdWx0aW1lZGlhLTMuWzEtM10qDQogDQot Tk9fU1RBR0U9CXllcw0KK1BBVENIRElSPQkke01BU1RFUkRJUn0vLi4vYWtvZGUvZmlsZXMNCitX UktTUkM9CQkke1dSS0RJUn0vYWtvZGUtJHtQT1JUVkVSU0lPTn0NCitCVUlMRF9XUktTUkM9CSR7 V1JLU1JDfS9ha29kZQ0KK0lOU1RBTExfV1JLU1JDPQkke1dSS1NSQ30vYWtvZGUvcGx1Z2lucy8k e1BMVUdJTn0NCisNCiBQTFVHSU49CQltcGNfZGVjb2Rlcg0KIFBPUlROQU1FU1VGWD0JJHtQTFVH SU46Uy9fc2luay8vOlMvX2RlY29kZXIvLzpTL3NyY18vL30NCiANCitOT19TVEFHRT0JeWVzDQog VVNFUz0JCWdtYWtlDQotVVNFX0FVVE9UT09MUz0JbGlibHRkbA0KLVVTRV9BVVRPVE9PTFM9CWxp YnRvb2wNCitVU0VfQVVUT1RPT0xTPQlsaWJsdGRsIGxpYnRvb2wNCiBVU0VfQlpJUDI9CXllcw0K LVVTRV9HQ0M9CWFueQ0KLVdSS1NSQz0JCSR7V1JLRElSfS9ha29kZS0ke1BPUlRWRVJTSU9OfQ0K IFVTRV9MRENPTkZJRz0JeWVzDQogDQotUExJU1RfRklMRVM9CWxpYi9saWJha29kZV9tcGNfZGVj b2Rlci5hIFwNCi0JCWxpYi9saWJha29kZV9tcGNfZGVjb2Rlci5sYSBcDQotCQlsaWIvbGliYWtv ZGVfbXBjX2RlY29kZXIuc28NCitQTElTVF9GSUxFUz0JbGliL2xpYmFrb2RlXyR7UExVR0lOfS5h IFwNCisJCWxpYi9saWJha29kZV8ke1BMVUdJTn0ubGEgXA0KKwkJbGliL2xpYmFrb2RlXyR7UExV R0lOfS5zbw0KIA0KIExERkxBR1MrPQktTCR7V1JLU1JDfS9ha29kZS9saWIvLmxpYnMNCiBDT05G SUdVUkVfQVJHUys9LS13aXRoLWV4dHJhLWxpYnM9JHtMT0NBTEJBU0V9L2xpYiBcDQpAQCAtNDAs MTQgKzQ0LDEwIEBADQogcG9zdC1wYXRjaDoNCiAJQCR7U0VURU5WfSBUWj1VVEMgXA0KIAkke1RP VUNIfSAtdCAyMDA2MDcyMjIyMTcuMDEgJHtXUktTUkN9L2Frb2RlL2xpYi9ha29kZV9leHBvcnQu aC5pbg0KKwkke1JFSU5QTEFDRV9DTUR9IC1lICdzfF5TVUJESVJTID0uKnxTVUJESVJTID0gbGli IHBsdWdpbnN8ZycgXA0KKwkJJHtXUktTUkN9L2Frb2RlL01ha2VmaWxlLmluDQogDQogcHJlLWNv bmZpZ3VyZToNCiAJQCR7UkVJTlBMQUNFX0NNRH0gLWUgJ3NAJSVTVUJESVJTJSVAJHtQTFVHSU59 QGcnICR7V1JLU1JDfS9ha29kZS9wbHVnaW5zL01ha2VmaWxlLmluDQogDQotZG8tYnVpbGQ6DQot CWNkICR7V1JLU1JDfS9ha29kZSAmJiAke0dNQUtFfQ0KLQ0KLWRvLWluc3RhbGw6DQotCWNkICR7 V1JLU1JDfS9ha29kZS9wbHVnaW5zLyR7UExVR0lOfSAmJiAke0dNQUtFfSBpbnN0YWxsDQotDQog LmluY2x1ZGUgPGJzZC5wb3J0Lm1rPg0KSW5kZXg6IGFrb2RlLXBsdWdpbnMtbXBjL2ZpbGVzL3Bh dGNoLWFrb2RlX01ha2VmaWxlLmluDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQotLS0gYWtvZGUtcGx1Z2lucy1tcGMv ZmlsZXMvcGF0Y2gtYWtvZGVfTWFrZWZpbGUuaW4JKHJldmlzaW9uIDMyODMwOSkNCisrKyBha29k ZS1wbHVnaW5zLW1wYy9maWxlcy9wYXRjaC1ha29kZV9NYWtlZmlsZS5pbgkod29ya2luZyBjb3B5 KQ0KQEAgLTEsMTEgKzAsMCBAQA0KLS0tLSBha29kZS9NYWtlZmlsZS5pbi5vcmlnCVR1ZSBOb3Yg MjkgMTc6NTE6MTkgMjAwNQ0KLSsrKyBha29kZS9NYWtlZmlsZS5pbglUdWUgTm92IDI5IDE3OjUx OjA1IDIwMDUNCi1AQCAtMjQ3LDcgKzI0Nyw3IEBADQotIHVuc2VybWFrZV9lbmFibGVfcGNoX0ZB TFNFID0gQHVuc2VybWFrZV9lbmFibGVfcGNoX0ZBTFNFQA0KLSB1bnNlcm1ha2VfZW5hYmxlX3Bj aF9UUlVFID0gQHVuc2VybWFrZV9lbmFibGVfcGNoX1RSVUVADQotIGJpbl9TQ1JJUFRTID0gYWtv ZGUtY29uZmlnDQotLVNVQkRJUlMgPSBsaWIgcGx1Z2lucyBha29kZXBsYXkNCi0rU1VCRElSUyA9 IGxpYiBwbHVnaW5zDQotICM+LSBhbGw6IGFsbC1yZWN1cnNpdmUNCi0gIz4rIDENCi0gYWxsOiBk b2NzLWFtICBhbGwtcmVjdXJzaXZlDQpJbmRleDogYWtvZGUtcGx1Z2lucy1tcGMvZmlsZXMvcGF0 Y2gtYWtvZGVfcGx1Z2lucy1NYWtlZmlsZS5pbg0KPT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KLS0tIGFrb2RlLXBsdWdp bnMtbXBjL2ZpbGVzL3BhdGNoLWFrb2RlX3BsdWdpbnMtTWFrZWZpbGUuaW4JKHJldmlzaW9uIDMy ODMwOSkNCisrKyBha29kZS1wbHVnaW5zLW1wYy9maWxlcy9wYXRjaC1ha29kZV9wbHVnaW5zLU1h a2VmaWxlLmluCSh3b3JraW5nIGNvcHkpDQpAQCAtMSwxNSArMCwwIEBADQotLS0tIGFrb2RlL3Bs dWdpbnMvTWFrZWZpbGUuaW4ub3JpZwlUdWUgTm92IDI5IDE4OjEwOjIwIDIwMDUNCi0rKysgYWtv ZGUvcGx1Z2lucy9NYWtlZmlsZS5pbglUdWUgTm92IDI5IDE4OjEwOjQ1IDIwMDUNCi1AQCAtMjUy LDExICsyNTIsNyBAQA0KLSBAaW5jbHVkZV9zdW5fc2lua19UUlVFQEFLT0RFX1NVTl9TSU5LID0g c3VuX3NpbmsNCi0gQGluY2x1ZGVfamFja19zaW5rX1RSVUVAQUtPREVfSkFDS19TSU5LID0gamFj a19zaW5rDQotIEBpbmNsdWRlX3BvbHlwX3NpbmtfVFJVRUBBS09ERV9QT0xZUF9TSU5LID0gcG9s eXBfc2luaw0KLS1TVUJESVJTID0gJChBS09ERV9NUENfREVDT0RFUikgJChBS09ERV9YSVBIX0RF Q09ERVIpIFwNCi0tICAgICAgICAgJChBS09ERV9NUEVHX0RFQ09ERVIpICQoQUtPREVfRkZNUEVH X0RFQ09ERVIpIFwNCi0tICAgICAgICAgJChBS09ERV9BTFNBX1NJTkspICQoQUtPREVfT1NTX1NJ TkspICQoQUtPREVfU1VOX1NJTkspIFwNCi0tICAgICAgICAgJChBS09ERV9KQUNLX1NJTkspICQo QUtPREVfUE9MWVBfU0lOSykgXA0KLS0gICAgICAgICAkKEFLT0RFX1NSQ19SRVNBTVBMRVIpDQot K1NVQkRJUlMgPSAlJVNVQkRJUlMlJQ0KLSANCi0gIz4tIGFsbDogYWxsLXJlY3Vyc2l2ZQ0KLSAj PisgMQ0KSW5kZXg6IGFrb2RlLXBsdWdpbnMtbXBlZy9NYWtlZmlsZQ0KPT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KLS0t IGFrb2RlLXBsdWdpbnMtbXBlZy9NYWtlZmlsZQkocmV2aXNpb24gMzI4MzA5KQ0KKysrIGFrb2Rl LXBsdWdpbnMtbXBlZy9NYWtlZmlsZQkod29ya2luZyBjb3B5KQ0KQEAgLTEsNyArMSw3IEBADQog IyBDcmVhdGVkIGJ5OiBNaWNoYWVsIE5vdHRlYnJvY2sgPGxvZmlARnJlZUJTRC5vcmc+DQogIyAk RnJlZUJTRCQNCiANCi1QT1JUTkFNRT0JYWtvZGUtcGx1Z2lucy0ke1BPUlROQU1FU1VGWH0NCitQ T1JUTkFNRT0JYWtvZGUNCiBQT1JUVkVSU0lPTj0JMi4wLjINCiBQT1JURVBPQ0g9CTENCiBDQVRF R09SSUVTPQlhdWRpbyBrZGUNCkBAIC04LDEwICs4LDEyIEBADQogTUFTVEVSX1NJVEVTPQlodHRw Oi8vd3d3LmtkZS1hcHBzLm9yZy9DT05URU5UL2NvbnRlbnQtZmlsZXMvIFwNCiAJCSR7TUFTVEVS X1NJVEVfTE9DQUx9DQogTUFTVEVSX1NJVEVfU1VCRElSPQlsYXN6bG9mDQorUEtHTkFNRVNVRkZJ WD0JLXBsdWdpbnMtJHtQT1JUTkFNRVNVRlh9DQogRElTVE5BTUU9CTMwMzc1LWFrb2RlLSR7UE9S VFZFUlNJT059DQogDQogTUFJTlRBSU5FUj0Jc3doZXR6ZWxAZ21haWwuY29tDQogQ09NTUVOVD0J TVBFRyBhdWRpbyBkZWNvZGVyIHBsdWdpbiBmb3IgYWtvZGUNCisNCiBMSUNFTlNFPQlMR1BMMjAN CiBMSUNFTlNFX0ZJTEU9CSR7V1JLU1JDfS9DT1BZSU5HDQogDQpAQCAtMTksMjEgKzIxLDIzIEBA DQogDQogQ09ORkxJQ1RTPQlrZGVtdWx0aW1lZGlhLTMuWzEtM10qDQogDQotTk9fU1RBR0U9CXll cw0KK1BBVENIRElSPQkke01BU1RFUkRJUn0vLi4vYWtvZGUvZmlsZXMNCitXUktTUkM9CQkke1dS S0RJUn0vYWtvZGUtJHtQT1JUVkVSU0lPTn0NCitCVUlMRF9XUktTUkM9CSR7V1JLU1JDfS9ha29k ZQ0KK0lOU1RBTExfV1JLU1JDPQkke1dSS1NSQ30vYWtvZGUvcGx1Z2lucy8ke1BMVUdJTn0NCisN CiBQTFVHSU49CQltcGVnX2RlY29kZXINCiBQT1JUTkFNRVNVRlg9CSR7UExVR0lOOlMvX3Npbmsv LzpTL19kZWNvZGVyLy86Uy9zcmNfLy99DQogDQorTk9fU1RBR0U9CXllcw0KIFVTRVM9CQlnbWFr ZQ0KLVVTRV9BVVRPVE9PTFM9CWxpYmx0ZGwNCi1VU0VfQVVUT1RPT0xTPQlsaWJ0b29sDQorVVNF X0FVVE9UT09MUz0JbGlibHRkbCBsaWJ0b29sDQogVVNFX0JaSVAyPQl5ZXMNCi1VU0VfR0NDPQlh bnkNCi1XUktTUkM9CQkke1dSS0RJUn0vYWtvZGUtJHtQT1JUVkVSU0lPTn0NCiBVU0VfTERDT05G SUc9CXllcw0KIA0KLVBMSVNUX0ZJTEVTPQlsaWIvbGliYWtvZGVfbXBlZ19kZWNvZGVyLmEgXA0K LQkJbGliL2xpYmFrb2RlX21wZWdfZGVjb2Rlci5sYSBcDQotCQlsaWIvbGliYWtvZGVfbXBlZ19k ZWNvZGVyLnNvDQorUExJU1RfRklMRVM9CWxpYi9saWJha29kZV8ke1BMVUdJTn0uYSBcDQorCQls aWIvbGliYWtvZGVfJHtQTFVHSU59LmxhIFwNCisJCWxpYi9saWJha29kZV8ke1BMVUdJTn0uc28N CiANCiBMREZMQUdTKz0JLUwke1dSS1NSQ30vYWtvZGUvbGliLy5saWJzDQogQ09ORklHVVJFX0FS R1MrPS0td2l0aC1leHRyYS1saWJzPSR7TE9DQUxCQVNFfS9saWIgXA0KQEAgLTQyLDE0ICs0Niwx MCBAQA0KIHBvc3QtcGF0Y2g6DQogCUAke1NFVEVOVn0gVFo9VVRDIFwNCiAJJHtUT1VDSH0gLXQg MjAwNjA3MjIyMjE3LjAxICR7V1JLU1JDfS9ha29kZS9saWIvYWtvZGVfZXhwb3J0LmguaW4NCisJ JHtSRUlOUExBQ0VfQ01EfSAtZSAnc3xeU1VCRElSUyA9Lip8U1VCRElSUyA9IGxpYiBwbHVnaW5z fGcnIFwNCisJCSR7V1JLU1JDfS9ha29kZS9NYWtlZmlsZS5pbg0KIA0KIHByZS1jb25maWd1cmU6 DQogCUAke1JFSU5QTEFDRV9DTUR9IC1lICdzQCUlU1VCRElSUyUlQCR7UExVR0lOfUBnJyAke1dS S1NSQ30vYWtvZGUvcGx1Z2lucy9NYWtlZmlsZS5pbg0KIA0KLWRvLWJ1aWxkOg0KLQljZCAke1dS S1NSQ30vYWtvZGUgJiYgJHtHTUFLRX0NCi0NCi1kby1pbnN0YWxsOg0KLQljZCAke1dSS1NSQ30v YWtvZGUvcGx1Z2lucy8ke1BMVUdJTn0gJiYgJHtHTUFLRX0gaW5zdGFsbA0KLQ0KIC5pbmNsdWRl IDxic2QucG9ydC5taz4NCkluZGV4OiBha29kZS1wbHVnaW5zLW1wZWcvZmlsZXMvcGF0Y2gtYWtv ZGVfTWFrZWZpbGUuaW4NCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT0NCi0tLSBha29kZS1wbHVnaW5zLW1wZWcvZmlsZXMv cGF0Y2gtYWtvZGVfTWFrZWZpbGUuaW4JKHJldmlzaW9uIDMyODMwOSkNCisrKyBha29kZS1wbHVn aW5zLW1wZWcvZmlsZXMvcGF0Y2gtYWtvZGVfTWFrZWZpbGUuaW4JKHdvcmtpbmcgY29weSkNCkBA IC0xLDExICswLDAgQEANCi0tLS0gYWtvZGUvTWFrZWZpbGUuaW4ub3JpZwlUdWUgTm92IDI5IDE3 OjUxOjE5IDIwMDUNCi0rKysgYWtvZGUvTWFrZWZpbGUuaW4JVHVlIE5vdiAyOSAxNzo1MTowNSAy MDA1DQotQEAgLTI0Nyw3ICsyNDcsNyBAQA0KLSB1bnNlcm1ha2VfZW5hYmxlX3BjaF9GQUxTRSA9 IEB1bnNlcm1ha2VfZW5hYmxlX3BjaF9GQUxTRUANCi0gdW5zZXJtYWtlX2VuYWJsZV9wY2hfVFJV RSA9IEB1bnNlcm1ha2VfZW5hYmxlX3BjaF9UUlVFQA0KLSBiaW5fU0NSSVBUUyA9IGFrb2RlLWNv bmZpZw0KLS1TVUJESVJTID0gbGliIHBsdWdpbnMgYWtvZGVwbGF5DQotK1NVQkRJUlMgPSBsaWIg cGx1Z2lucw0KLSAjPi0gYWxsOiBhbGwtcmVjdXJzaXZlDQotICM+KyAxDQotIGFsbDogZG9jcy1h bSAgYWxsLXJlY3Vyc2l2ZQ0KSW5kZXg6IGFrb2RlLXBsdWdpbnMtbXBlZy9maWxlcy9wYXRjaC1h a29kZV9wbHVnaW5zLU1ha2VmaWxlLmluDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQotLS0gYWtvZGUtcGx1Z2lucy1t cGVnL2ZpbGVzL3BhdGNoLWFrb2RlX3BsdWdpbnMtTWFrZWZpbGUuaW4JKHJldmlzaW9uIDMyODMw OSkNCisrKyBha29kZS1wbHVnaW5zLW1wZWcvZmlsZXMvcGF0Y2gtYWtvZGVfcGx1Z2lucy1NYWtl ZmlsZS5pbgkod29ya2luZyBjb3B5KQ0KQEAgLTEsMTUgKzAsMCBAQA0KLS0tLSBha29kZS9wbHVn aW5zL01ha2VmaWxlLmluLm9yaWcJVHVlIE5vdiAyOSAxODoxMDoyMCAyMDA1DQotKysrIGFrb2Rl L3BsdWdpbnMvTWFrZWZpbGUuaW4JVHVlIE5vdiAyOSAxODoxMDo0NSAyMDA1DQotQEAgLTI1Miwx MSArMjUyLDcgQEANCi0gQGluY2x1ZGVfc3VuX3NpbmtfVFJVRUBBS09ERV9TVU5fU0lOSyA9IHN1 bl9zaW5rDQotIEBpbmNsdWRlX2phY2tfc2lua19UUlVFQEFLT0RFX0pBQ0tfU0lOSyA9IGphY2tf c2luaw0KLSBAaW5jbHVkZV9wb2x5cF9zaW5rX1RSVUVAQUtPREVfUE9MWVBfU0lOSyA9IHBvbHlw X3NpbmsNCi0tU1VCRElSUyA9ICQoQUtPREVfTVBDX0RFQ09ERVIpICQoQUtPREVfWElQSF9ERUNP REVSKSBcDQotLSAgICAgICAgICQoQUtPREVfTVBFR19ERUNPREVSKSAkKEFLT0RFX0ZGTVBFR19E RUNPREVSKSBcDQotLSAgICAgICAgICQoQUtPREVfQUxTQV9TSU5LKSAkKEFLT0RFX09TU19TSU5L KSAkKEFLT0RFX1NVTl9TSU5LKSBcDQotLSAgICAgICAgICQoQUtPREVfSkFDS19TSU5LKSAkKEFL T0RFX1BPTFlQX1NJTkspIFwNCi0tICAgICAgICAgJChBS09ERV9TUkNfUkVTQU1QTEVSKQ0KLStT VUJESVJTID0gJSVTVUJESVJTJSUNCi0gDQotICM+LSBhbGw6IGFsbC1yZWN1cnNpdmUNCi0gIz4r IDENCkluZGV4OiBha29kZS1wbHVnaW5zLW9zcy9NYWtlZmlsZQ0KPT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KLS0tIGFr b2RlLXBsdWdpbnMtb3NzL01ha2VmaWxlCShyZXZpc2lvbiAzMjgzMDkpDQorKysgYWtvZGUtcGx1 Z2lucy1vc3MvTWFrZWZpbGUJKHdvcmtpbmcgY29weSkNCkBAIC0xLDcgKzEsNyBAQA0KICMgQ3Jl YXRlZCBieTogTWljaGFlbCBOb3R0ZWJyb2NrIDxsb2ZpQEZyZWVCU0Qub3JnPg0KICMgJEZyZWVC U0QkDQogDQotUE9SVE5BTUU9CWFrb2RlLXBsdWdpbnMtJHtQT1JUTkFNRVNVRlh9DQorUE9SVE5B TUU9CWFrb2RlDQogUE9SVFZFUlNJT049CTIuMC4yDQogUE9SVEVQT0NIPQkxDQogQ0FURUdPUklF Uz0JYXVkaW8ga2RlDQpAQCAtOCwzMCArOCwzNCBAQA0KIE1BU1RFUl9TSVRFUz0JaHR0cDovL3d3 dy5rZGUtYXBwcy5vcmcvQ09OVEVOVC9jb250ZW50LWZpbGVzLyBcDQogCQkke01BU1RFUl9TSVRF X0xPQ0FMfQ0KIE1BU1RFUl9TSVRFX1NVQkRJUj0JbGFzemxvZg0KK1BLR05BTUVTVUZGSVg9CS1w bHVnaW5zLSR7UE9SVE5BTUVTVUZYfQ0KIERJU1ROQU1FPQkzMDM3NS1ha29kZS0ke1BPUlRWRVJT SU9OfQ0KIA0KIE1BSU5UQUlORVI9CXN3aGV0emVsQGdtYWlsLmNvbQ0KIENPTU1FTlQ9CU9TUyBv dXRwdXQgcGx1Z2luIGZvciBha29kZQ0KKw0KIExJQ0VOU0U9CUxHUEwyMA0KIExJQ0VOU0VfRklM RT0JJHtXUktTUkN9L0NPUFlJTkcNCiANCiBDT05GTElDVFM9CWtkZW11bHRpbWVkaWEtMy5bMS0z XSoNCiANCitQQVRDSERJUj0JJHtNQVNURVJESVJ9Ly4uL2Frb2RlL2ZpbGVzDQorV1JLU1JDPQkJ JHtXUktESVJ9L2Frb2RlLSR7UE9SVFZFUlNJT059DQorQlVJTERfV1JLU1JDPQkke1dSS1NSQ30v YWtvZGUNCitJTlNUQUxMX1dSS1NSQz0JJHtXUktTUkN9L2Frb2RlL3BsdWdpbnMvJHtQTFVHSU59 DQorDQogUExVR0lOPQkJb3NzX3NpbmsNCiBQT1JUTkFNRVNVRlg9CSR7UExVR0lOOlMvX3Npbmsv LzpTL19kZWNvZGVyLy86Uy9zcmNfLy99DQogDQogTk9fU1RBR0U9CXllcw0KIFVTRVM9CQlnbWFr ZQ0KLVVTRV9BVVRPVE9PTFM9CWxpYmx0ZGwNCi1VU0VfQVVUT1RPT0xTPQlsaWJ0b29sDQorVVNF X0FVVE9UT09MUz0JbGlibHRkbCBsaWJ0b29sDQogVVNFX0JaSVAyPQl5ZXMNCi1VU0VfR0NDPQlh bnkNCi1XUktTUkM9CQkke1dSS0RJUn0vYWtvZGUtJHtQT1JUVkVSU0lPTn0NCiBVU0VfTERDT05G SUc9CXllcw0KIA0KLVBMSVNUX0ZJTEVTPQlsaWIvbGliYWtvZGVfb3NzX3NpbmsuYSBcDQotCQls aWIvbGliYWtvZGVfb3NzX3NpbmsubGEgXA0KLQkJbGliL2xpYmFrb2RlX29zc19zaW5rLnNvDQor UExJU1RfRklMRVM9CWxpYi9saWJha29kZV8ke1BMVUdJTn0uYSBcDQorCQlsaWIvbGliYWtvZGVf JHtQTFVHSU59LmxhIFwNCisJCWxpYi9saWJha29kZV8ke1BMVUdJTn0uc28NCiANCiBMREZMQUdT Kz0JLUwke1dSS1NSQ30vYWtvZGUvbGliLy5saWJzDQogQ09ORklHVVJFX0FSR1MrPS0td2l0aC1l eHRyYS1saWJzPSR7TE9DQUxCQVNFfS9saWIgXA0KQEAgLTQwLDE0ICs0NCwxMCBAQA0KIHBvc3Qt cGF0Y2g6DQogCUAke1NFVEVOVn0gVFo9VVRDIFwNCiAJJHtUT1VDSH0gLXQgMjAwNjA3MjIyMjE3 LjAxICR7V1JLU1JDfS9ha29kZS9saWIvYWtvZGVfZXhwb3J0LmguaW4NCisJJHtSRUlOUExBQ0Vf Q01EfSAtZSAnc3xeU1VCRElSUyA9Lip8U1VCRElSUyA9IGxpYiBwbHVnaW5zfGcnIFwNCisJCSR7 V1JLU1JDfS9ha29kZS9NYWtlZmlsZS5pbg0KIA0KIHByZS1jb25maWd1cmU6DQogCUAke1JFSU5Q TEFDRV9DTUR9IC1lICdzQCUlU1VCRElSUyUlQCR7UExVR0lOfUBnJyAke1dSS1NSQ30vYWtvZGUv cGx1Z2lucy9NYWtlZmlsZS5pbg0KIA0KLWRvLWJ1aWxkOg0KLQljZCAke1dSS1NSQ30vYWtvZGUg JiYgJHtHTUFLRX0NCi0NCi1kby1pbnN0YWxsOg0KLQljZCAke1dSS1NSQ30vYWtvZGUvcGx1Z2lu cy8ke1BMVUdJTn0gJiYgJHtHTUFLRX0gaW5zdGFsbA0KLQ0KIC5pbmNsdWRlIDxic2QucG9ydC5t az4NCkluZGV4OiBha29kZS1wbHVnaW5zLW9zcy9maWxlcy9wYXRjaC1ha29kZV9NYWtlZmlsZS5p bg0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PQ0KLS0tIGFrb2RlLXBsdWdpbnMtb3NzL2ZpbGVzL3BhdGNoLWFrb2RlX01h a2VmaWxlLmluCShyZXZpc2lvbiAzMjgzMDkpDQorKysgYWtvZGUtcGx1Z2lucy1vc3MvZmlsZXMv cGF0Y2gtYWtvZGVfTWFrZWZpbGUuaW4JKHdvcmtpbmcgY29weSkNCkBAIC0xLDExICswLDAgQEAN Ci0tLS0gYWtvZGUvTWFrZWZpbGUuaW4ub3JpZwlUdWUgTm92IDI5IDE3OjUxOjE5IDIwMDUNCi0r KysgYWtvZGUvTWFrZWZpbGUuaW4JVHVlIE5vdiAyOSAxNzo1MTowNSAyMDA1DQotQEAgLTI0Nyw3 ICsyNDcsNyBAQA0KLSB1bnNlcm1ha2VfZW5hYmxlX3BjaF9GQUxTRSA9IEB1bnNlcm1ha2VfZW5h YmxlX3BjaF9GQUxTRUANCi0gdW5zZXJtYWtlX2VuYWJsZV9wY2hfVFJVRSA9IEB1bnNlcm1ha2Vf ZW5hYmxlX3BjaF9UUlVFQA0KLSBiaW5fU0NSSVBUUyA9IGFrb2RlLWNvbmZpZw0KLS1TVUJESVJT ID0gbGliIHBsdWdpbnMgYWtvZGVwbGF5DQotK1NVQkRJUlMgPSBsaWIgcGx1Z2lucw0KLSAjPi0g YWxsOiBhbGwtcmVjdXJzaXZlDQotICM+KyAxDQotIGFsbDogZG9jcy1hbSAgYWxsLXJlY3Vyc2l2 ZQ0KSW5kZXg6IGFrb2RlLXBsdWdpbnMtb3NzL2ZpbGVzL3BhdGNoLWFrb2RlX3BsdWdpbnMtTWFr ZWZpbGUuaW4NCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT0NCi0tLSBha29kZS1wbHVnaW5zLW9zcy9maWxlcy9wYXRjaC1h a29kZV9wbHVnaW5zLU1ha2VmaWxlLmluCShyZXZpc2lvbiAzMjgzMDkpDQorKysgYWtvZGUtcGx1 Z2lucy1vc3MvZmlsZXMvcGF0Y2gtYWtvZGVfcGx1Z2lucy1NYWtlZmlsZS5pbgkod29ya2luZyBj b3B5KQ0KQEAgLTEsMTUgKzAsMCBAQA0KLS0tLSBha29kZS9wbHVnaW5zL01ha2VmaWxlLmluLm9y aWcJVHVlIE5vdiAyOSAxODoxMDoyMCAyMDA1DQotKysrIGFrb2RlL3BsdWdpbnMvTWFrZWZpbGUu aW4JVHVlIE5vdiAyOSAxODoxMDo0NSAyMDA1DQotQEAgLTI1MiwxMSArMjUyLDcgQEANCi0gQGlu Y2x1ZGVfc3VuX3NpbmtfVFJVRUBBS09ERV9TVU5fU0lOSyA9IHN1bl9zaW5rDQotIEBpbmNsdWRl X2phY2tfc2lua19UUlVFQEFLT0RFX0pBQ0tfU0lOSyA9IGphY2tfc2luaw0KLSBAaW5jbHVkZV9w b2x5cF9zaW5rX1RSVUVAQUtPREVfUE9MWVBfU0lOSyA9IHBvbHlwX3NpbmsNCi0tU1VCRElSUyA9 ICQoQUtPREVfTVBDX0RFQ09ERVIpICQoQUtPREVfWElQSF9ERUNPREVSKSBcDQotLSAgICAgICAg ICQoQUtPREVfTVBFR19ERUNPREVSKSAkKEFLT0RFX0ZGTVBFR19ERUNPREVSKSBcDQotLSAgICAg ICAgICQoQUtPREVfQUxTQV9TSU5LKSAkKEFLT0RFX09TU19TSU5LKSAkKEFLT0RFX1NVTl9TSU5L KSBcDQotLSAgICAgICAgICQoQUtPREVfSkFDS19TSU5LKSAkKEFLT0RFX1BPTFlQX1NJTkspIFwN Ci0tICAgICAgICAgJChBS09ERV9TUkNfUkVTQU1QTEVSKQ0KLStTVUJESVJTID0gJSVTVUJESVJT JSUNCi0gDQotICM+LSBhbGw6IGFsbC1yZWN1cnNpdmUNCi0gIz4rIDENCkluZGV4OiBha29kZS1w bHVnaW5zLXB1bHNlYXVkaW8vTWFrZWZpbGUNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCi0tLSBha29kZS1wbHVnaW5z LXB1bHNlYXVkaW8vTWFrZWZpbGUJKHJldmlzaW9uIDMyODMwOSkNCisrKyBha29kZS1wbHVnaW5z LXB1bHNlYXVkaW8vTWFrZWZpbGUJKHdvcmtpbmcgY29weSkNCkBAIC0xLDcgKzEsNyBAQA0KICMg Q3JlYXRlZCBieTogU2NvdCBXLiBIZXR6ZWwgPHN3aGV0emVsQGdtYWlsLmNvbT4NCiAjICRGcmVl QlNEJA0KIA0KLVBPUlROQU1FPQlha29kZS1wbHVnaW5zLSR7UE9SVE5BTUVTVUZYfQ0KK1BPUlRO QU1FPQlha29kZQ0KIFBPUlRWRVJTSU9OPQkyLjAuMg0KIFBPUlRSRVZJU0lPTj0JNQ0KIENBVEVH T1JJRVM9CWF1ZGlvIGtkZQ0KQEAgLTgsMTAgKzgsMTIgQEANCiBNQVNURVJfU0lURVM9CWh0dHA6 Ly93d3cua2RlLWFwcHMub3JnL0NPTlRFTlQvY29udGVudC1maWxlcy8gXA0KIAkJJHtNQVNURVJf U0lURV9MT0NBTH0NCiBNQVNURVJfU0lURV9TVUJESVI9CWxhc3psb2YNCitQS0dOQU1FU1VGRklY PQktcGx1Z2lucy0ke1BPUlROQU1FU1VGWH0NCiBESVNUTkFNRT0JMzAzNzUtYWtvZGUtJHtQT1JU VkVSU0lPTn0NCiANCiBNQUlOVEFJTkVSPQlzd2hldHplbEBnbWFpbC5jb20NCiBDT01NRU5UPQlQ dWxzZWF1ZGlvIG91dHB1dCBwbHVnaW4gZm9yIGFrb2RlDQorDQogTElDRU5TRT0JTEdQTDIwDQog TElDRU5TRV9GSUxFPQkke1dSS1NSQ30vQ09QWUlORw0KIA0KQEAgLTE5LDE5ICsyMSwyNCBAQA0K IA0KIENPTkZMSUNUUz0Ja2RlbXVsdGltZWRpYS0zLlsxLTNdKiBha29kZS1wbHVnaW5zLXBvbHlw YXVkaW8tWzAtOV0qDQogDQorUEFUQ0hESVI9CSR7TUFTVEVSRElSfS8uLi9ha29kZS9maWxlcw0K K1dSS1NSQz0JCSR7V1JLRElSfS9ha29kZS0ke1BPUlRWRVJTSU9OfQ0KK0JVSUxEX1dSS1NSQz0J JHtXUktTUkN9L2Frb2RlDQorSU5TVEFMTF9XUktTUkM9CSR7V1JLU1JDfS9ha29kZS9wbHVnaW5z LyR7UExVR0lOfQ0KKw0KIFBMVUdJTj0JCXBvbHlwX3NpbmsNCiBQT1JUTkFNRVNVRlg9CXB1bHNl YXVkaW8NCiANCiBOT19TVEFHRT0JeWVzDQogVVNFUz0JCWdtYWtlDQotVVNFX0FVVE9UT09MUz0J bGlibHRkbA0KLVVTRV9BVVRPVE9PTFM9CWxpYnRvb2wNCitVU0VfQVVUT1RPT0xTPQlsaWJsdGRs IGxpYnRvb2wNCisjVVNFX0FVVE9UT09MUz0JbGlidG9vbA0KIFVTRV9CWklQMj0JeWVzDQotV1JL U1JDPQkJJHtXUktESVJ9L2Frb2RlLSR7UE9SVFZFUlNJT059DQogVVNFX0xEQ09ORklHPQl5ZXMN CiANCi1QTElTVF9GSUxFUz0JbGliL2xpYmFrb2RlX3BvbHlwX3NpbmsuYSBsaWIvbGliYWtvZGVf cG9seXBfc2luay5sYSBcDQotCQlsaWIvbGliYWtvZGVfcG9seXBfc2luay5zbw0KK1BMSVNUX0ZJ TEVTPQlsaWIvbGliYWtvZGVfJHtQTFVHSU59LmEgXA0KKwkJbGliL2xpYmFrb2RlXyR7UExVR0lO fS5sYSBcDQorCQlsaWIvbGliYWtvZGVfJHtQTFVHSU59LnNvDQogDQogTERGTEFHUys9CS1MJHtX UktTUkN9L2Frb2RlL2xpYi8ubGlicw0KIENPTkZJR1VSRV9BUkdTKz0tLXdpdGgtZXh0cmEtbGli cz0ke0xPQ0FMQkFTRX0vbGliIFwNCkBAIC00MCwxNCArNDcsMTAgQEANCiBwb3N0LXBhdGNoOg0K IAlAJHtTRVRFTlZ9IFRaPVVUQyBcDQogCSR7VE9VQ0h9IC10IDIwMDYwNzIyMjIxNy4wMSAke1dS S1NSQ30vYWtvZGUvbGliL2Frb2RlX2V4cG9ydC5oLmluDQorCSR7UkVJTlBMQUNFX0NNRH0gLWUg J3N8XlNVQkRJUlMgPS4qfFNVQkRJUlMgPSBsaWIgcGx1Z2luc3xnJyBcDQorCQkke1dSS1NSQ30v YWtvZGUvTWFrZWZpbGUuaW4NCiANCiBwcmUtY29uZmlndXJlOg0KIAlAJHtSRUlOUExBQ0VfQ01E fSAtZSAnc0AlJVNVQkRJUlMlJUAke1BMVUdJTn1AZycgJHtXUktTUkN9L2Frb2RlL3BsdWdpbnMv TWFrZWZpbGUuaW4NCiANCi1kby1idWlsZDoNCi0JY2QgJHtXUktTUkN9L2Frb2RlICYmICR7R01B S0V9DQotDQotZG8taW5zdGFsbDoNCi0JY2QgJHtXUktTUkN9L2Frb2RlL3BsdWdpbnMvJHtQTFVH SU59ICYmICR7R01BS0V9IGluc3RhbGwNCi0NCiAuaW5jbHVkZSA8YnNkLnBvcnQubWs+DQpJbmRl eDogYWtvZGUtcGx1Z2lucy1wdWxzZWF1ZGlvL2ZpbGVzL3BhdGNoLWFrb2RlX01ha2VmaWxlLmlu DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09DQotLS0gYWtvZGUtcGx1Z2lucy1wdWxzZWF1ZGlvL2ZpbGVzL3BhdGNoLWFr b2RlX01ha2VmaWxlLmluCShyZXZpc2lvbiAzMjgzMDkpDQorKysgYWtvZGUtcGx1Z2lucy1wdWxz ZWF1ZGlvL2ZpbGVzL3BhdGNoLWFrb2RlX01ha2VmaWxlLmluCSh3b3JraW5nIGNvcHkpDQpAQCAt MSwxMSArMCwwIEBADQotLS0tIGFrb2RlL01ha2VmaWxlLmluLm9yaWcJVHVlIE5vdiAyOSAxNzo1 MToxOSAyMDA1DQotKysrIGFrb2RlL01ha2VmaWxlLmluCVR1ZSBOb3YgMjkgMTc6NTE6MDUgMjAw NQ0KLUBAIC0yNDcsNyArMjQ3LDcgQEANCi0gdW5zZXJtYWtlX2VuYWJsZV9wY2hfRkFMU0UgPSBA dW5zZXJtYWtlX2VuYWJsZV9wY2hfRkFMU0VADQotIHVuc2VybWFrZV9lbmFibGVfcGNoX1RSVUUg PSBAdW5zZXJtYWtlX2VuYWJsZV9wY2hfVFJVRUANCi0gYmluX1NDUklQVFMgPSBha29kZS1jb25m aWcNCi0tU1VCRElSUyA9IGxpYiBwbHVnaW5zIGFrb2RlcGxheQ0KLStTVUJESVJTID0gbGliIHBs dWdpbnMNCi0gIz4tIGFsbDogYWxsLXJlY3Vyc2l2ZQ0KLSAjPisgMQ0KLSBhbGw6IGRvY3MtYW0g IGFsbC1yZWN1cnNpdmUNCkluZGV4OiBha29kZS1wbHVnaW5zLXB1bHNlYXVkaW8vZmlsZXMvcGF0 Y2gtYWtvZGVfX3BvbHlwX3NpbmtfX3BvbHlwX3NpbmsuY3BwDQo9PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQotLS0gYWtv ZGUtcGx1Z2lucy1wdWxzZWF1ZGlvL2ZpbGVzL3BhdGNoLWFrb2RlX19wb2x5cF9zaW5rX19wb2x5 cF9zaW5rLmNwcAkocmV2aXNpb24gMzI4MzA5KQ0KKysrIGFrb2RlLXBsdWdpbnMtcHVsc2VhdWRp by9maWxlcy9wYXRjaC1ha29kZV9fcG9seXBfc2lua19fcG9seXBfc2luay5jcHAJKHdvcmtpbmcg Y29weSkNCkBAIC0xLDIwICswLDAgQEANCi0tLS0gYWtvZGUvcGx1Z2lucy9wb2x5cF9zaW5rL3Bv bHlwX3NpbmsuY3BwLm9yaWcJU3VuIEp1biAxMCAxMzoyMzowMyAyMDA3DQotKysrIGFrb2RlL3Bs dWdpbnMvcG9seXBfc2luay9wb2x5cF9zaW5rLmNwcAlTdW4gSnVuIDEwIDEzOjI0OjEzIDIwMDcN Ci1AQCAtMjUsNyArMjUsNyBAQA0KLSAjZWxpZiBkZWZpbmVkKEhBVkVfSU5UVFlQRVNfSCkNCi0g I2luY2x1ZGUgPGludHR5cGVzLmg+DQotICNlbmRpZg0KLS0jaW5jbHVkZSA8cG9seXAvcG9seXBs aWItc2ltcGxlLmg+DQotKyNpbmNsdWRlIDxwdWxzZS9zaW1wbGUuaD4NCi0gDQotICNpbmNsdWRl ICJhdWRpb2ZyYW1lLmgiDQotICNpbmNsdWRlICJhdWRpb2J1ZmZlci5oIg0KLUBAIC01OSw3ICs1 OSw3IEBADQotIA0KLSBib29sIFBvbHlwU2luazo6b3BlbigpIHsNCi0gICAgIGludCBlcnJvciA9 IDA7DQotLSAgICBtX2RhdGEtPnNlcnZlciA9IHBhX3NpbXBsZV9uZXcoMCwgImFrb2RlLWNsaWVu dCIsIFBBX1NUUkVBTV9QTEFZQkFDSywgMCwgIiIsICZtX2RhdGEtPnNhbXBsZV9zcGVjLCAwLCAy NTUsICZlcnJvciApOw0KLSsgICAgbV9kYXRhLT5zZXJ2ZXIgPSBwYV9zaW1wbGVfbmV3KDAsICJh a29kZS1jbGllbnQiLCBQQV9TVFJFQU1fUExBWUJBQ0ssIDAsICIiLCAmbV9kYXRhLT5zYW1wbGVf c3BlYywgMCwgMCwgJmVycm9yICk7DQotICAgICBpZiAoIW1fZGF0YS0+c2VydmVyIHx8IGVycm9y ICE9IDApIHsNCi0gICAgICAgICBtX2RhdGEtPmVycm9yID0gdHJ1ZTsNCi0gICAgICAgICBjbG9z ZSgpOw0KSW5kZXg6IGFrb2RlLXBsdWdpbnMtcHVsc2VhdWRpby9maWxlcy9wYXRjaC1ha29kZV9w bHVnaW5zLU1ha2VmaWxlLmluDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQotLS0gYWtvZGUtcGx1Z2lucy1wdWxzZWF1 ZGlvL2ZpbGVzL3BhdGNoLWFrb2RlX3BsdWdpbnMtTWFrZWZpbGUuaW4JKHJldmlzaW9uIDMyODMw OSkNCisrKyBha29kZS1wbHVnaW5zLXB1bHNlYXVkaW8vZmlsZXMvcGF0Y2gtYWtvZGVfcGx1Z2lu cy1NYWtlZmlsZS5pbgkod29ya2luZyBjb3B5KQ0KQEAgLTEsMTUgKzAsMCBAQA0KLS0tLSBha29k ZS9wbHVnaW5zL01ha2VmaWxlLmluLm9yaWcJVHVlIE5vdiAyOSAxODoxMDoyMCAyMDA1DQotKysr IGFrb2RlL3BsdWdpbnMvTWFrZWZpbGUuaW4JVHVlIE5vdiAyOSAxODoxMDo0NSAyMDA1DQotQEAg LTI1MiwxMSArMjUyLDcgQEANCi0gQGluY2x1ZGVfc3VuX3NpbmtfVFJVRUBBS09ERV9TVU5fU0lO SyA9IHN1bl9zaW5rDQotIEBpbmNsdWRlX2phY2tfc2lua19UUlVFQEFLT0RFX0pBQ0tfU0lOSyA9 IGphY2tfc2luaw0KLSBAaW5jbHVkZV9wb2x5cF9zaW5rX1RSVUVAQUtPREVfUE9MWVBfU0lOSyA9 IHBvbHlwX3NpbmsNCi0tU1VCRElSUyA9ICQoQUtPREVfTVBDX0RFQ09ERVIpICQoQUtPREVfWElQ SF9ERUNPREVSKSBcDQotLSAgICAgICAgICQoQUtPREVfTVBFR19ERUNPREVSKSAkKEFLT0RFX0ZG TVBFR19ERUNPREVSKSBcDQotLSAgICAgICAgICQoQUtPREVfQUxTQV9TSU5LKSAkKEFLT0RFX09T U19TSU5LKSAkKEFLT0RFX1NVTl9TSU5LKSBcDQotLSAgICAgICAgICQoQUtPREVfSkFDS19TSU5L KSAkKEFLT0RFX1BPTFlQX1NJTkspIFwNCi0tICAgICAgICAgJChBS09ERV9TUkNfUkVTQU1QTEVS KQ0KLStTVUJESVJTID0gJSVTVUJESVJTJSUNCi0gDQotICM+LSBhbGw6IGFsbC1yZWN1cnNpdmUN Ci0gIz4rIDENCkluZGV4OiBha29kZS1wbHVnaW5zLXB1bHNlYXVkaW8vZmlsZXMvcGF0Y2gtY29u ZmlndXJlDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09DQotLS0gYWtvZGUtcGx1Z2lucy1wdWxzZWF1ZGlvL2ZpbGVzL3Bh dGNoLWNvbmZpZ3VyZQkocmV2aXNpb24gMzI4MzA5KQ0KKysrIGFrb2RlLXBsdWdpbnMtcHVsc2Vh dWRpby9maWxlcy9wYXRjaC1jb25maWd1cmUJKHdvcmtpbmcgY29weSkNCkBAIC0xLDIxICswLDAg QEANCi0tLS0gY29uZmlndXJlLm9yaWcJRnJpIEFwciAgNiAwODoyMzoyMiAyMDA3DQotKysrIGNv bmZpZ3VyZQlUdWUgTWF5IDI3IDAyOjEyOjQ5IDIwMDgNCi1AQCAtMjU1MDYsMTIgKzI1NTA2LDEy IEBADQotIA0KLSANCi0gaWYgdGVzdCAieCRwb2x5cGF1ZGlvX3Rlc3QiID0gInh5ZXMiIDsgdGhl bg0KLS17IGVjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBmb3IgUG9seXBhdWRpbyAwLjcg b3IgbGF0ZXIiID4mNQ0KLS1lY2hvICRFQ0hPX04gImNoZWNraW5nIGZvciBQb2x5cGF1ZGlvIDAu NyBvciBsYXRlci4uLiAkRUNIT19DIiA+JjY7IH0NCi0taWYgJFBLR19DT05GSUcgLS1hdGxlYXN0 LXZlcnNpb24gMC43IHBvbHlwbGliLXNpbXBsZSA+L2Rldi9udWxsIDI+JjEgOyB0aGVuDQotLSAg UE9MWVBfQ0ZMQUdTPSJgJFBLR19DT05GSUcgLS1jZmxhZ3MgcG9seXBsaWItc2ltcGxlYCINCi0t ICBQT0xZUF9MSUJBREQ9ImAkUEtHX0NPTkZJRyAtLWxpYnMtb25seS1sIHBvbHlwbGliLXNpbXBs ZWAiDQotLSAgUE9MWVBfTERGTEFHUz0iYCRQS0dfQ09ORklHIC0tbGlicy1vbmx5LUwgcG9seXBs aWItc2ltcGxlYCINCi0reyBlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgZm9yIFB1bHNl YXVkaW8gMC45LjIgb3IgbGF0ZXIiID4mNQ0KLStlY2hvICRFQ0hPX04gImNoZWNraW5nIGZvciBQ dWxzZWF1ZGlvIDAuOS4yIG9yIGxhdGVyLi4uICRFQ0hPX0MiID4mNjsgfQ0KLStpZiAkUEtHX0NP TkZJRyAtLWF0bGVhc3QtdmVyc2lvbiAwLjkuMiBsaWJwdWxzZS1zaW1wbGUgPi9kZXYvbnVsbCAy PiYxIDsgdGhlbg0KLSsgIFBPTFlQX0NGTEFHUz0iYCRQS0dfQ09ORklHIC0tY2ZsYWdzIGxpYnB1 bHNlLXNpbXBsZWAiDQotKyAgUE9MWVBfTElCQUREPSJgJFBLR19DT05GSUcgLS1saWJzLW9ubHkt bCBsaWJwdWxzZS1zaW1wbGVgIg0KLSsgIFBPTFlQX0xERkxBR1M9ImAkUEtHX0NPTkZJRyAtLWxp YnMtb25seS1MIGxpYnB1bHNlLXNpbXBsZWAiDQotICAgaGF2ZV9wb2x5cD15ZXMNCi0gICB7IGVj aG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6IHllcyIgPiY1DQotIGVjaG8gIiR7RUNIT19UfXll cyIgPiY2OyB9DQpJbmRleDogYWtvZGUtcGx1Z2lucy1yZXNhbXBsZXIvTWFrZWZpbGUNCj09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT0NCi0tLSBha29kZS1wbHVnaW5zLXJlc2FtcGxlci9NYWtlZmlsZQkocmV2aXNpb24gMzI4 MzA5KQ0KKysrIGFrb2RlLXBsdWdpbnMtcmVzYW1wbGVyL01ha2VmaWxlCSh3b3JraW5nIGNvcHkp DQpAQCAtMSw3ICsxLDcgQEANCiAjIENyZWF0ZWQgYnk6IE1pY2hhZWwgTm90dGVicm9jayA8bG9m aUBGcmVlQlNELm9yZz4NCiAjICRGcmVlQlNEJA0KIA0KLVBPUlROQU1FPQlha29kZS1wbHVnaW5z LSR7UE9SVE5BTUVTVUZYfQ0KK1BPUlROQU1FPQlha29kZQ0KIFBPUlRWRVJTSU9OPQkyLjAuMg0K IFBPUlRFUE9DSD0JMQ0KIENBVEVHT1JJRVM9CWF1ZGlvIGtkZQ0KQEAgLTgsMTAgKzgsMTIgQEAN CiBNQVNURVJfU0lURVM9CWh0dHA6Ly93d3cua2RlLWFwcHMub3JnL0NPTlRFTlQvY29udGVudC1m aWxlcy8gXA0KIAkJJHtNQVNURVJfU0lURV9MT0NBTH0NCiBNQVNURVJfU0lURV9TVUJESVI9CWxh c3psb2YNCitQS0dOQU1FU1VGRklYPQktcGx1Z2lucy0ke1BPUlROQU1FU1VGWH0NCiBESVNUTkFN RT0JMzAzNzUtYWtvZGUtJHtQT1JUVkVSU0lPTn0NCiANCiBNQUlOVEFJTkVSPQlzd2hldHplbEBn bWFpbC5jb20NCiBDT01NRU5UPQlSZXNhbXBsZXIgcGx1Z2luIGZvciBha29kZQ0KKw0KIExJQ0VO U0U9CUxHUEwyMA0KIExJQ0VOU0VfRklMRT0JJHtXUktTUkN9L0NPUFlJTkcNCiANCkBAIC0xOSwy MSArMjEsMjMgQEANCiANCiBDT05GTElDVFM9CWtkZW11bHRpbWVkaWEtMy5bMS0zXSoNCiANCitQ QVRDSERJUj0JJHtNQVNURVJESVJ9Ly4uL2Frb2RlL2ZpbGVzDQorV1JLU1JDPQkJJHtXUktESVJ9 L2Frb2RlLSR7UE9SVFZFUlNJT059DQorQlVJTERfV1JLU1JDPQkke1dSS1NSQ30vYWtvZGUNCitJ TlNUQUxMX1dSS1NSQz0JJHtXUktTUkN9L2Frb2RlL3BsdWdpbnMvJHtQTFVHSU59DQorDQogUExV R0lOPQkJc3JjX3Jlc2FtcGxlcg0KIFBPUlROQU1FU1VGWD0JJHtQTFVHSU46Uy9fc2luay8vOlMv X2RlY29kZXIvLzpTL3NyY18vL30NCiANCiBOT19TVEFHRT0JeWVzDQogVVNFUz0JCWdtYWtlDQot VVNFX0FVVE9UT09MUz0JbGlibHRkbA0KLVVTRV9BVVRPVE9PTFM9CWxpYnRvb2wNCitVU0VfQVVU T1RPT0xTPQlsaWJsdGRsIGxpYnRvb2wNCiBVU0VfQlpJUDI9CXllcw0KLVVTRV9HQ0M9CWFueQ0K LVdSS1NSQz0JCSR7V1JLRElSfS9ha29kZS0ke1BPUlRWRVJTSU9OfQ0KIFVTRV9MRENPTkZJRz0J eWVzDQogDQotUExJU1RfRklMRVM9CWxpYi9saWJha29kZV9zcmNfcmVzYW1wbGVyLmEgXA0KLQkJ bGliL2xpYmFrb2RlX3NyY19yZXNhbXBsZXIubGEgXA0KLQkJbGliL2xpYmFrb2RlX3NyY19yZXNh bXBsZXIuc28NCitQTElTVF9GSUxFUz0JbGliL2xpYmFrb2RlXyR7UExVR0lOfS5hIFwNCisJCWxp Yi9saWJha29kZV8ke1BMVUdJTn0ubGEgXA0KKwkJbGliL2xpYmFrb2RlXyR7UExVR0lOfS5zbw0K IA0KIExERkxBR1MrPQktTCR7V1JLU1JDfS9ha29kZS9saWIvLmxpYnMNCiBDT05GSUdVUkVfQVJH Uys9LS13aXRoLWV4dHJhLWxpYnM9JHtMT0NBTEJBU0V9L2xpYiBcDQpAQCAtNDIsMTQgKzQ2LDEw IEBADQogcG9zdC1wYXRjaDoNCiAJQCR7U0VURU5WfSBUWj1VVEMgXA0KIAkke1RPVUNIfSAtdCAy MDA2MDcyMjIyMTcuMDEgJHtXUktTUkN9L2Frb2RlL2xpYi9ha29kZV9leHBvcnQuaC5pbg0KKwkk e1JFSU5QTEFDRV9DTUR9IC1lICdzfF5TVUJESVJTID0uKnxTVUJESVJTID0gbGliIHBsdWdpbnN8 ZycgXA0KKwkJJHtXUktTUkN9L2Frb2RlL01ha2VmaWxlLmluDQogDQogcHJlLWNvbmZpZ3VyZToN CiAJQCR7UkVJTlBMQUNFX0NNRH0gLWUgJ3NAJSVTVUJESVJTJSVAJHtQTFVHSU59QGcnICR7V1JL U1JDfS9ha29kZS9wbHVnaW5zL01ha2VmaWxlLmluDQogDQotZG8tYnVpbGQ6DQotCWNkICR7V1JL U1JDfS9ha29kZSAmJiAke0dNQUtFfQ0KLQ0KLWRvLWluc3RhbGw6DQotCWNkICR7V1JLU1JDfS9h a29kZS9wbHVnaW5zLyR7UExVR0lOfSAmJiAke0dNQUtFfSBpbnN0YWxsDQotDQogLmluY2x1ZGUg PGJzZC5wb3J0Lm1rPg0KSW5kZXg6IGFrb2RlLXBsdWdpbnMtcmVzYW1wbGVyL2ZpbGVzL3BhdGNo LWFrb2RlX01ha2VmaWxlLmluDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQotLS0gYWtvZGUtcGx1Z2lucy1yZXNhbXBs ZXIvZmlsZXMvcGF0Y2gtYWtvZGVfTWFrZWZpbGUuaW4JKHJldmlzaW9uIDMyODMwOSkNCisrKyBh a29kZS1wbHVnaW5zLXJlc2FtcGxlci9maWxlcy9wYXRjaC1ha29kZV9NYWtlZmlsZS5pbgkod29y a2luZyBjb3B5KQ0KQEAgLTEsMTEgKzAsMCBAQA0KLS0tLSBha29kZS9NYWtlZmlsZS5pbi5vcmln CVR1ZSBOb3YgMjkgMTc6NTE6MTkgMjAwNQ0KLSsrKyBha29kZS9NYWtlZmlsZS5pbglUdWUgTm92 IDI5IDE3OjUxOjA1IDIwMDUNCi1AQCAtMjQ3LDcgKzI0Nyw3IEBADQotIHVuc2VybWFrZV9lbmFi bGVfcGNoX0ZBTFNFID0gQHVuc2VybWFrZV9lbmFibGVfcGNoX0ZBTFNFQA0KLSB1bnNlcm1ha2Vf ZW5hYmxlX3BjaF9UUlVFID0gQHVuc2VybWFrZV9lbmFibGVfcGNoX1RSVUVADQotIGJpbl9TQ1JJ UFRTID0gYWtvZGUtY29uZmlnDQotLVNVQkRJUlMgPSBsaWIgcGx1Z2lucyBha29kZXBsYXkNCi0r U1VCRElSUyA9IGxpYiBwbHVnaW5zDQotICM+LSBhbGw6IGFsbC1yZWN1cnNpdmUNCi0gIz4rIDEN Ci0gYWxsOiBkb2NzLWFtICBhbGwtcmVjdXJzaXZlDQpJbmRleDogYWtvZGUtcGx1Z2lucy1yZXNh bXBsZXIvZmlsZXMvcGF0Y2gtYWtvZGVfcGx1Z2lucy1NYWtlZmlsZS5pbg0KPT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0K LS0tIGFrb2RlLXBsdWdpbnMtcmVzYW1wbGVyL2ZpbGVzL3BhdGNoLWFrb2RlX3BsdWdpbnMtTWFr ZWZpbGUuaW4JKHJldmlzaW9uIDMyODMwOSkNCisrKyBha29kZS1wbHVnaW5zLXJlc2FtcGxlci9m aWxlcy9wYXRjaC1ha29kZV9wbHVnaW5zLU1ha2VmaWxlLmluCSh3b3JraW5nIGNvcHkpDQpAQCAt MSwxNSArMCwwIEBADQotLS0tIGFrb2RlL3BsdWdpbnMvTWFrZWZpbGUuaW4ub3JpZwlUdWUgTm92 IDI5IDE4OjEwOjIwIDIwMDUNCi0rKysgYWtvZGUvcGx1Z2lucy9NYWtlZmlsZS5pbglUdWUgTm92 IDI5IDE4OjEwOjQ1IDIwMDUNCi1AQCAtMjUyLDExICsyNTIsNyBAQA0KLSBAaW5jbHVkZV9zdW5f c2lua19UUlVFQEFLT0RFX1NVTl9TSU5LID0gc3VuX3NpbmsNCi0gQGluY2x1ZGVfamFja19zaW5r X1RSVUVAQUtPREVfSkFDS19TSU5LID0gamFja19zaW5rDQotIEBpbmNsdWRlX3BvbHlwX3Npbmtf VFJVRUBBS09ERV9QT0xZUF9TSU5LID0gcG9seXBfc2luaw0KLS1TVUJESVJTID0gJChBS09ERV9N UENfREVDT0RFUikgJChBS09ERV9YSVBIX0RFQ09ERVIpIFwNCi0tICAgICAgICAgJChBS09ERV9N UEVHX0RFQ09ERVIpICQoQUtPREVfRkZNUEVHX0RFQ09ERVIpIFwNCi0tICAgICAgICAgJChBS09E RV9BTFNBX1NJTkspICQoQUtPREVfT1NTX1NJTkspICQoQUtPREVfU1VOX1NJTkspIFwNCi0tICAg ICAgICAgJChBS09ERV9KQUNLX1NJTkspICQoQUtPREVfUE9MWVBfU0lOSykgXA0KLS0gICAgICAg ICAkKEFLT0RFX1NSQ19SRVNBTVBMRVIpDQotK1NVQkRJUlMgPSAlJVNVQkRJUlMlJQ0KLSANCi0g Iz4tIGFsbDogYWxsLXJlY3Vyc2l2ZQ0KLSAjPisgMQ0KSW5kZXg6IGFrb2RlLXBsdWdpbnMteGlw aC9NYWtlZmlsZQ0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PQ0KLS0tIGFrb2RlLXBsdWdpbnMteGlwaC9NYWtlZmlsZQko cmV2aXNpb24gMzI4MzA5KQ0KKysrIGFrb2RlLXBsdWdpbnMteGlwaC9NYWtlZmlsZQkod29ya2lu ZyBjb3B5KQ0KQEAgLTEsNyArMSw3IEBADQogIyBDcmVhdGVkIGJ5OiBNaWNoYWVsIE5vdHRlYnJv Y2sgPGxvZmlARnJlZUJTRC5vcmc+DQogIyAkRnJlZUJTRCQNCiANCi1QT1JUTkFNRT0JYWtvZGUt cGx1Z2lucy0ke1BPUlROQU1FU1VGWH0NCitQT1JUTkFNRT0JYWtvZGUNCiBQT1JUVkVSU0lPTj0J Mi4wLjINCiBQT1JUUkVWSVNJT049CTUNCiBQT1JURVBPQ0g9CTENCkBAIC05LDEwICs5LDEyIEBA DQogTUFTVEVSX1NJVEVTPQlodHRwOi8vd3d3LmtkZS1hcHBzLm9yZy9DT05URU5UL2NvbnRlbnQt ZmlsZXMvIFwNCiAJCSR7TUFTVEVSX1NJVEVfTE9DQUx9DQogTUFTVEVSX1NJVEVfU1VCRElSPQls YXN6bG9mDQorUEtHTkFNRVNVRkZJWD0JLXBsdWdpbnMtJHtQT1JUTkFNRVNVRlh9DQogRElTVE5B TUU9CTMwMzc1LWFrb2RlLSR7UE9SVFZFUlNJT059DQogDQogTUFJTlRBSU5FUj0Jc3doZXR6ZWxA Z21haWwuY29tDQogQ09NTUVOVD0JRkxBQy9TcGVleC9Wb3JiaXMgZGVjb2RlciBwbHVnaW4gZm9y IGFrb2RlDQorDQogTElDRU5TRT0JTEdQTDIwDQogTElDRU5TRV9GSUxFPQkke1dSS1NSQ30vQ09Q WUlORw0KIA0KQEAgLTIzLDIxICsyNSwyMyBAQA0KIA0KIENPTkZMSUNUUz0Ja2RlbXVsdGltZWRp YS0zLlsxLTNdKg0KIA0KK1BBVENIRElSPQkke01BU1RFUkRJUn0vLi4vYWtvZGUvZmlsZXMNCitX UktTUkM9CQkke1dSS0RJUn0vYWtvZGUtJHtQT1JUVkVSU0lPTn0NCitCVUlMRF9XUktTUkM9CSR7 V1JLU1JDfS9ha29kZQ0KK0lOU1RBTExfV1JLU1JDPQkke1dSS1NSQ30vYWtvZGUvcGx1Z2lucy8k e1BMVUdJTn0NCisNCiBQTFVHSU49CQl4aXBoX2RlY29kZXINCiBQT1JUTkFNRVNVRlg9CSR7UExV R0lOOlMvX3NpbmsvLzpTL19kZWNvZGVyLy86Uy9zcmNfLy99DQogDQogTk9fU1RBR0U9CXllcw0K IFVTRVM9CQlnbWFrZQ0KLVVTRV9BVVRPVE9PTFM9CWxpYmx0ZGwNCi1VU0VfQVVUT1RPT0xTPQls aWJ0b29sDQorVVNFX0FVVE9UT09MUz0JbGlibHRkbCBsaWJ0b29sDQogVVNFX0JaSVAyPQl5ZXMN Ci1VU0VfR0NDPQlhbnkNCi1XUktTUkM9CQkke1dSS0RJUn0vYWtvZGUtJHtQT1JUVkVSU0lPTn0N CiBVU0VfTERDT05GSUc9CXllcw0KIA0KLVBMSVNUX0ZJTEVTPQlsaWIvbGliYWtvZGVfeGlwaF9k ZWNvZGVyLmEgXA0KLQkJbGliL2xpYmFrb2RlX3hpcGhfZGVjb2Rlci5sYSBcDQotCQlsaWIvbGli YWtvZGVfeGlwaF9kZWNvZGVyLnNvDQorUExJU1RfRklMRVM9CWxpYi9saWJha29kZV8ke1BMVUdJ Tn0uYSBcDQorCQlsaWIvbGliYWtvZGVfJHtQTFVHSU59LmxhIFwNCisJCWxpYi9saWJha29kZV8k e1BMVUdJTn0uc28NCiANCiBMREZMQUdTKz0JLUwke1dSS1NSQ30vYWtvZGUvbGliLy5saWJzDQog Q09ORklHVVJFX0FSR1MrPS0td2l0aC1leHRyYS1saWJzPSR7TE9DQUxCQVNFfS9saWIgXA0KQEAg LTQ2LDE0ICs1MCwxMCBAQA0KIHBvc3QtcGF0Y2g6DQogCUAke1NFVEVOVn0gVFo9VVRDIFwNCiAJ JHtUT1VDSH0gLXQgMjAwNjA3MjIyMjE3LjAxICR7V1JLU1JDfS9ha29kZS9saWIvYWtvZGVfZXhw b3J0LmguaW4NCisJJHtSRUlOUExBQ0VfQ01EfSAtZSAnc3xeU1VCRElSUyA9Lip8U1VCRElSUyA9 IGxpYiBwbHVnaW5zfGcnIFwNCisJCSR7V1JLU1JDfS9ha29kZS9NYWtlZmlsZS5pbg0KIA0KIHBy ZS1jb25maWd1cmU6DQogCUAke1JFSU5QTEFDRV9DTUR9IC1lICdzQCUlU1VCRElSUyUlQCR7UExV R0lOfUBnJyAke1dSS1NSQ30vYWtvZGUvcGx1Z2lucy9NYWtlZmlsZS5pbg0KIA0KLWRvLWJ1aWxk Og0KLQljZCAke1dSS1NSQ30vYWtvZGUgJiYgJHtHTUFLRX0NCi0NCi1kby1pbnN0YWxsOg0KLQlj ZCAke1dSS1NSQ30vYWtvZGUvcGx1Z2lucy8ke1BMVUdJTn0gJiYgJHtHTUFLRX0gaW5zdGFsbA0K LQ0KIC5pbmNsdWRlIDxic2QucG9ydC5taz4NCkluZGV4OiBha29kZS1wbHVnaW5zLXhpcGgvZmls ZXMvcGF0Y2gtYWtvZGVfTWFrZWZpbGUuaW4NCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCi0tLSBha29kZS1wbHVnaW5z LXhpcGgvZmlsZXMvcGF0Y2gtYWtvZGVfTWFrZWZpbGUuaW4JKHJldmlzaW9uIDMyODMwOSkNCisr KyBha29kZS1wbHVnaW5zLXhpcGgvZmlsZXMvcGF0Y2gtYWtvZGVfTWFrZWZpbGUuaW4JKHdvcmtp bmcgY29weSkNCkBAIC0xLDExICswLDAgQEANCi0tLS0gYWtvZGUvTWFrZWZpbGUuaW4ub3JpZwlU dWUgTm92IDI5IDE3OjUxOjE5IDIwMDUNCi0rKysgYWtvZGUvTWFrZWZpbGUuaW4JVHVlIE5vdiAy OSAxNzo1MTowNSAyMDA1DQotQEAgLTI0Nyw3ICsyNDcsNyBAQA0KLSB1bnNlcm1ha2VfZW5hYmxl X3BjaF9GQUxTRSA9IEB1bnNlcm1ha2VfZW5hYmxlX3BjaF9GQUxTRUANCi0gdW5zZXJtYWtlX2Vu YWJsZV9wY2hfVFJVRSA9IEB1bnNlcm1ha2VfZW5hYmxlX3BjaF9UUlVFQA0KLSBiaW5fU0NSSVBU UyA9IGFrb2RlLWNvbmZpZw0KLS1TVUJESVJTID0gbGliIHBsdWdpbnMgYWtvZGVwbGF5DQotK1NV QkRJUlMgPSBsaWIgcGx1Z2lucw0KLSAjPi0gYWxsOiBhbGwtcmVjdXJzaXZlDQotICM+KyAxDQot IGFsbDogZG9jcy1hbSAgYWxsLXJlY3Vyc2l2ZQ0KSW5kZXg6IGFrb2RlLXBsdWdpbnMteGlwaC9m aWxlcy9wYXRjaC1ha29kZV9wbHVnaW5zLU1ha2VmaWxlLmluDQo9PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQotLS0gYWtv ZGUtcGx1Z2lucy14aXBoL2ZpbGVzL3BhdGNoLWFrb2RlX3BsdWdpbnMtTWFrZWZpbGUuaW4JKHJl dmlzaW9uIDMyODMwOSkNCisrKyBha29kZS1wbHVnaW5zLXhpcGgvZmlsZXMvcGF0Y2gtYWtvZGVf cGx1Z2lucy1NYWtlZmlsZS5pbgkod29ya2luZyBjb3B5KQ0KQEAgLTEsMTUgKzAsMCBAQA0KLS0t LSBha29kZS9wbHVnaW5zL01ha2VmaWxlLmluLm9yaWcJVHVlIE5vdiAyOSAxODoxMDoyMCAyMDA1 DQotKysrIGFrb2RlL3BsdWdpbnMvTWFrZWZpbGUuaW4JVHVlIE5vdiAyOSAxODoxMDo0NSAyMDA1 DQotQEAgLTI1MiwxMSArMjUyLDcgQEANCi0gQGluY2x1ZGVfc3VuX3NpbmtfVFJVRUBBS09ERV9T VU5fU0lOSyA9IHN1bl9zaW5rDQotIEBpbmNsdWRlX2phY2tfc2lua19UUlVFQEFLT0RFX0pBQ0tf U0lOSyA9IGphY2tfc2luaw0KLSBAaW5jbHVkZV9wb2x5cF9zaW5rX1RSVUVAQUtPREVfUE9MWVBf U0lOSyA9IHBvbHlwX3NpbmsNCi0tU1VCRElSUyA9ICQoQUtPREVfTVBDX0RFQ09ERVIpICQoQUtP REVfWElQSF9ERUNPREVSKSBcDQotLSAgICAgICAgICQoQUtPREVfTVBFR19ERUNPREVSKSAkKEFL T0RFX0ZGTVBFR19ERUNPREVSKSBcDQotLSAgICAgICAgICQoQUtPREVfQUxTQV9TSU5LKSAkKEFL T0RFX09TU19TSU5LKSAkKEFLT0RFX1NVTl9TSU5LKSBcDQotLSAgICAgICAgICQoQUtPREVfSkFD S19TSU5LKSAkKEFLT0RFX1BPTFlQX1NJTkspIFwNCi0tICAgICAgICAgJChBS09ERV9TUkNfUkVT QU1QTEVSKQ0KLStTVUJESVJTID0gJSVTVUJESVJTJSUNCi0gDQotICM+LSBhbGw6IGFsbC1yZWN1 cnNpdmUNCi0gIz4rIDENCkluZGV4OiBha29kZS1wbHVnaW5zLXhpcGgvZmlsZXMvcGF0Y2gtYWtv ZGVfcGx1Z2luc194aXBoX19kZWNvZGVyX2ZsYWMxMTNfX2RlY29kZXIuY3BwDQo9PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 DQotLS0gYWtvZGUtcGx1Z2lucy14aXBoL2ZpbGVzL3BhdGNoLWFrb2RlX3BsdWdpbnNfeGlwaF9f ZGVjb2Rlcl9mbGFjMTEzX19kZWNvZGVyLmNwcAkocmV2aXNpb24gMzI4MzA5KQ0KKysrIGFrb2Rl LXBsdWdpbnMteGlwaC9maWxlcy9wYXRjaC1ha29kZV9wbHVnaW5zX3hpcGhfX2RlY29kZXJfZmxh YzExM19fZGVjb2Rlci5jcHAJKHdvcmtpbmcgY29weSkNCkBAIC0xLDExICswLDAgQEANCi0tLS0g YWtvZGUvcGx1Z2lucy94aXBoX2RlY29kZXIvZmxhYzExM19kZWNvZGVyLmNwcC5vcmlnCTIwMDgt MDMtMjcgMTY6MTE6MjYuMDAwMDAwMDAwICswMTAwDQotKysrIGFrb2RlL3BsdWdpbnMveGlwaF9k ZWNvZGVyL2ZsYWMxMTNfZGVjb2Rlci5jcHAJMjAwOC0wMy0yNyAxNjoxMTo0Ni4wMDAwMDAwMDAg KzAxMDANCi1AQCAtMTA4LDcgKzEwOCw3IEBAIHN0cnVjdCBGTEFDRGVjb2Rlcjo6cHJpdmF0ZV9k YXRhIHsNCi0gc3RhdGljIEZMQUNfX1N0cmVhbURlY29kZXJSZWFkU3RhdHVzIGZsYWNfcmVhZF9j YWxsYmFjaygNCi0gICAgICAgICBjb25zdCBGTEFDX19TdHJlYW1EZWNvZGVyICosDQotICAgICAg ICAgRkxBQ19fYnl0ZSBidWZmZXJbXSwNCi0tICAgICAgICB1bnNpZ25lZCAqYnl0ZXMsDQotKyAg ICAgICAgc2l6ZV90ICpieXRlcywNCi0gICAgICAgICB2b2lkICpjbGllbnRfZGF0YSkNCi0gew0K LSAgICAgRkxBQ0RlY29kZXI6OnByaXZhdGVfZGF0YSAqZGF0YSA9IChGTEFDRGVjb2Rlcjo6cHJp dmF0ZV9kYXRhKiljbGllbnRfZGF0YTsNCkluZGV4OiBha29kZS1wbHVnaW5zLXhpcGgvZmlsZXMv cGF0Y2gtYWtvZGVfcGx1Z2luc194aXBoX19kZWNvZGVyX3NwZWV4X19kZWNvZGVyLmNwcA0KPT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PQ0KLS0tIGFrb2RlLXBsdWdpbnMteGlwaC9maWxlcy9wYXRjaC1ha29kZV9wbHVnaW5z X3hpcGhfX2RlY29kZXJfc3BlZXhfX2RlY29kZXIuY3BwCShyZXZpc2lvbiAzMjgzMDkpDQorKysg YWtvZGUtcGx1Z2lucy14aXBoL2ZpbGVzL3BhdGNoLWFrb2RlX3BsdWdpbnNfeGlwaF9fZGVjb2Rl cl9zcGVleF9fZGVjb2Rlci5jcHAJKHdvcmtpbmcgY29weSkNCkBAIC0xLDIwICswLDAgQEANCi0N Ci0kRnJlZUJTRCQNCi0NCi0tLS0gYWtvZGUvcGx1Z2lucy94aXBoX2RlY29kZXIvc3BlZXhfZGVj b2Rlci5jcHAub3JpZw0KLSsrKyBha29kZS9wbHVnaW5zL3hpcGhfZGVjb2Rlci9zcGVleF9kZWNv ZGVyLmNwcA0KLUBAIC0yNSwxMCArMjUsMTAgQEANCi0gZXh0ZXJuICJDIiB7DQotICNpbmNsdWRl IDxzdHJpbmcuaD4NCi0gI2luY2x1ZGUgPHN0ZGxpYi5oPg0KLS0jaW5jbHVkZSA8c3BlZXguaD4N Ci0tI2luY2x1ZGUgPHNwZWV4X2hlYWRlci5oPg0KLS0jaW5jbHVkZSA8c3BlZXhfY2FsbGJhY2tz Lmg+DQotLSNpbmNsdWRlIDxzcGVleF9zdGVyZW8uaD4NCi0rI2luY2x1ZGUgPHNwZWV4L3NwZWV4 Lmg+DQotKyNpbmNsdWRlIDxzcGVleC9zcGVleF9oZWFkZXIuaD4NCi0rI2luY2x1ZGUgPHNwZWV4 L3NwZWV4X2NhbGxiYWNrcy5oPg0KLSsjaW5jbHVkZSA8c3BlZXgvc3BlZXhfc3RlcmVvLmg+DQot ICNpbmNsdWRlIDxvZ2cvb2dnLmg+DQotIH0NCi0gDQpJbmRleDogYWtvZGUtcGx1Z2lucy14aXBo L2ZpbGVzL3BhdGNoLWNvbmZpZ3VyZQ0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KLS0tIGFrb2RlLXBsdWdpbnMteGlw aC9maWxlcy9wYXRjaC1jb25maWd1cmUJKHJldmlzaW9uIDMyODMwOSkNCisrKyBha29kZS1wbHVn aW5zLXhpcGgvZmlsZXMvcGF0Y2gtY29uZmlndXJlCSh3b3JraW5nIGNvcHkpDQpAQCAtMSwzMSAr MCwwIEBADQotDQotJEZyZWVCU0QkDQotDQotLS0tIGNvbmZpZ3VyZS5vcmlnDQotKysrIGNvbmZp Z3VyZQ0KLUBAIC0yMjIwMCw4ICsyMjIwMCw4IEBADQotIGNhdCA+PmNvbmZ0ZXN0LiRhY19leHQg PDxfQUNFT0YNCi0gLyogZW5kIGNvbmZkZWZzLmguICAqLw0KLSANCi0tICAgICAgICAgICAgICAg ICNpbmNsdWRlIDxzcGVleC5oPg0KLS0gICAgICAgICAgICAgICAgI2luY2x1ZGUgPHNwZWV4X2Nh bGxiYWNrcy5oPg0KLSsgICAgICAgICAgICAgICAgI2luY2x1ZGUgPHNwZWV4L3NwZWV4Lmg+DQot KyAgICAgICAgICAgICAgICAjaW5jbHVkZSA8c3BlZXgvc3BlZXhfY2FsbGJhY2tzLmg+DQotICAg ICAgICAgICAgICAgICAjaW5jbHVkZSA8b2dnL29nZy5oPg0KLSANCi0gaW50DQotQEAgLTIyMzUw LDEwICsyMjM1MCwxMCBAQA0KLSBjYXQgPj5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GDQotIC8q IGVuZCBjb25mZGVmcy5oLiAgKi8NCi0gDQotLSAgICAgICAgICAgICAgICAjaW5jbHVkZSA8c3Bl ZXguaD4NCi0tICAgICAgICAgICAgICAgICNpbmNsdWRlIDxzcGVleF9jYWxsYmFja3MuaD4NCi0t ICAgICAgICAgICAgICAgICNpbmNsdWRlIDxzcGVleF9lY2hvLmg+DQotLSAgICAgICAgICAgICAg ICAjaW5jbHVkZSA8c3BlZXhfcHJlcHJvY2Vzcy5oPg0KLSsgICAgICAgICAgICAgICAgI2luY2x1 ZGUgPHNwZWV4L3NwZWV4Lmg+DQotKyAgICAgICAgICAgICAgICAjaW5jbHVkZSA8c3BlZXgvc3Bl ZXhfY2FsbGJhY2tzLmg+DQotKyAgICAgICAgICAgICAgICAjaW5jbHVkZSA8c3BlZXgvc3BlZXhf ZWNoby5oPg0KLSsgICAgICAgICAgICAgICAgI2luY2x1ZGUgPHNwZWV4L3NwZWV4X3ByZXByb2Nl c3MuaD4NCi0gICAgICAgICAgICAgICAgICNpbmNsdWRlIDxvZ2cvb2dnLmg+DQotIA0KLSBpbnQN Cg== --047d7bdc9a48daa03204e743d276--