From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from enterprise03.smtp.diehl.com ([193.201.238.214]) by metis.ext.pengutronix.de with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1dsmbR-00028O-KZ for ptxdist@pengutronix.de; Fri, 15 Sep 2017 11:08:02 +0200 From: Denis OSTERLAND Date: Fri, 15 Sep 2017 09:07:52 +0000 Message-ID: <1505466290-16548-1-git-send-email-Denis.Osterland@diehl.com> MIME-Version: 1.0 Content-Language: en-US Content-ID: <47028F01F267E94B94033A8F7D6F992A@diehl.internal> Subject: [ptxdist] [PATCH] lua: version bump 5.1.4 -> 5.3.4 List-Id: PTXdist Development Mailing List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: ptxdist@pengutronix.de Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: ptxdist-bounces@pengutronix.de Sender: "ptxdist" To: "ptxdist@pengutronix.de" SW5zdGVhZCBvZiB3cml0ZSBvd24gYnVpbGQgcnVsZXMgd2l0aCBhdXRvY29uZiB0b29scywKb25s eSBhZGFwdCBwcm9qZWN0cyBtYWtlIGZpbGVzIHRvIHdvcmsgaW4gcHR4ZGlzdCBlbnZpcm9ubWVu dC4KClNpZ25lZC1vZmYtYnk6IERlbmlzIE9zdGVybGFuZCA8RGVuaXMuT3N0ZXJsYW5kQGRpZWhs LmNvbT4KLS0tCiAuLi5seS1jcmFmdGVkLXByZWNvbXBpbGVkLWNvZGUtY2FuLWNyYXNoLUx1YS5w YXRjaCB8ICAxMyAtCiAuLi5ibGUtdG8tY3JlYXRlLWZ1bmN0aW9ucy10aGF0LXJldHVybi10b28t bS5wYXRjaCB8ICAxNCAtCiAuLi5nZW5lcmF0aW9uLWZvci1zb21lLXBhcnRpY3VsYXItYm9vbGVh bi1leC5wYXRjaCB8ICA3MiAtLQogLi4ubGUtbWF5LWludmFsaWRhdGUtYS1yZWZlcmVuY2UtdG8t YS10YWJsZS0ucGF0Y2ggfCAgNTIgLS0KIC4uLm52LWRvZXMtbm90LWNoZWNrLXdoZXRoZXItaXQt aGFzLWFuLWFyZ3VtLnBhdGNoIHwgIDMyIC0KIC4uLnN0dWNrLWR1cmluZy1wYXJzaW5nLWFuZC1h dm9pZHMtcHJvcGVyLXJlLnBhdGNoIHwgIDM1IC0KIC4uLmF0LW1heS1nZXQtYnVmZmVyLWFzLWFu LWFyZ3VtZW50LXdoZW4tdGhlLnBhdGNoIHwgIDQ0IC0KIC4uLm4tbWF5LXJldHVybi1nYXJiYWdl LWlmLXNlY29uZC1yZWFkLWZhaWxzLnBhdGNoIHwgIDM3IC0KIC4uLmdlbmVyYXRpb24tZm9yLXNv bWUtcGFydGljdWxhci1ib29sZWFuLWV4LnBhdGNoIHwgIDU2IC0tCiAuLi5tZXRhbWV0aG9kLW1h eS1ub3Qtd29yay1pZi1tZXRhdGFibGUtaXMtaS5wYXRjaCB8ICAzNyAtCiAuLi5tYXktY29sbGVj dC1hLXByb3RvdHlwZS13aGlsZS1idWlsZGluZy1pdC5wYXRjaCB8ICAzMSAtCiAuLi5wcG9ydC10 by1wdHhkaXN0LTEuOTktcmVtb3ZlLW9sZC1NYWtlZmlsZS5wYXRjaCB8IDE1MSAtLS0tCiAuLi51 cHBvcnQtdG8tcHR4ZGlzdC0xLjk5LWFkZC1hdXRvY29uZi1maWxlcy5wYXRjaCB8IDkxOCAtLS0t LS0tLS0tLS0tLS0tLS0tLS0KIC4uLnVwcG9ydC10by1wdHhkaXN0LTEuOTktYWRkLWF1dG9tYWtl LWZpbGVzLnBhdGNoIHwgMTI1IC0tLQogcGF0Y2hlcy9sdWEtNS4xLjQvYXV0b2dlbi5zaCAgICAg ICAgICAgICAgICAgICAgICAgfCAgIDEgLQogcGF0Y2hlcy9sdWEtNS4xLjQvc2VyaWVzICAgICAg ICAgICAgICAgICAgICAgICAgICAgfCAgMTkgLQogLi4uMDAxLUNyb3NzLWNvbXBpbGUtaW4tcHR4 ZGlzdC1lbnZpcmlvbm1lbnQucGF0Y2ggfCAxMDUgKysrCiAuLi4vbHVhLTUuMy40LzAwMDItSW5z dGFsbC1wa2djb25maWctZmlsZS5wYXRjaCAgICB8ICA2MSArKwogcGF0Y2hlcy9sdWEtNS4zLjQv c2VyaWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDUgKwogcnVsZXMvbHVhLmluICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDkgKy0KIHJ1bGVzL2x1YS5t YWtlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDIwICstCiAyMSBmaWxl cyBjaGFuZ2VkLCAxODIgaW5zZXJ0aW9ucygrKSwgMTY1NSBkZWxldGlvbnMoLSkKIGRlbGV0ZSBt b2RlIDEwMDY0NCBwYXRjaGVzL2x1YS01LjEuNC8wMDAxLU1hbGljaW91c2x5LWNyYWZ0ZWQtcHJl Y29tcGlsZWQtY29kZS1jYW4tY3Jhc2gtTHVhLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgcGF0 Y2hlcy9sdWEtNS4xLjQvMDAwMi1JdC1pcy1wb3NzaWJsZS10by1jcmVhdGUtZnVuY3Rpb25zLXRo YXQtcmV0dXJuLXRvby1tLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgcGF0Y2hlcy9sdWEtNS4x LjQvMDAwMy1Xcm9uZy1jb2RlLWdlbmVyYXRpb24tZm9yLXNvbWUtcGFydGljdWxhci1ib29sZWFu LWV4LnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgcGF0Y2hlcy9sdWEtNS4xLjQvMDAwNC1sdWFW X3NldHRhYmxlLW1heS1pbnZhbGlkYXRlLWEtcmVmZXJlbmNlLXRvLWEtdGFibGUtLnBhdGNoCiBk ZWxldGUgbW9kZSAxMDA2NDQgcGF0Y2hlcy9sdWEtNS4xLjQvMDAwNS1kZWJ1Zy5nZXRmZW52LWRv ZXMtbm90LWNoZWNrLXdoZXRoZXItaXQtaGFzLWFuLWFyZ3VtLnBhdGNoCiBkZWxldGUgbW9kZSAx MDA2NDQgcGF0Y2hlcy9sdWEtNS4xLjQvMDAwNi1HQy1tYXktZ2V0LXN0dWNrLWR1cmluZy1wYXJz aW5nLWFuZC1hdm9pZHMtcHJvcGVyLXJlLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgcGF0Y2hl cy9sdWEtNS4xLjQvMDAwNy1zdHJpbmcuZm9ybWF0LW1heS1nZXQtYnVmZmVyLWFzLWFuLWFyZ3Vt ZW50LXdoZW4tdGhlLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgcGF0Y2hlcy9sdWEtNS4xLjQv MDAwOC1pby5yZWFkLW4tbi1tYXktcmV0dXJuLWdhcmJhZ2UtaWYtc2Vjb25kLXJlYWQtZmFpbHMu cGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBwYXRjaGVzL2x1YS01LjEuNC8wMDA5LVdyb25nLWNv ZGUtZ2VuZXJhdGlvbi1mb3Itc29tZS1wYXJ0aWN1bGFyLWJvb2xlYW4tZXgucGF0Y2gKIGRlbGV0 ZSBtb2RlIDEwMDY0NCBwYXRjaGVzL2x1YS01LjEuNC8wMDEwLV9fbmV3aW5kZXgtbWV0YW1ldGhv ZC1tYXktbm90LXdvcmstaWYtbWV0YXRhYmxlLWlzLWkucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0 NCBwYXRjaGVzL2x1YS01LjEuNC8wMDExLVBhcnNlci1tYXktY29sbGVjdC1hLXByb3RvdHlwZS13 aGlsZS1idWlsZGluZy1pdC5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHBhdGNoZXMvbHVhLTUu MS40LzAxMDAtQWRkLWx1YS1zdXBwb3J0LXRvLXB0eGRpc3QtMS45OS1yZW1vdmUtb2xkLU1ha2Vm aWxlLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgcGF0Y2hlcy9sdWEtNS4xLjQvMDEwMS1BZGQt bHVhLXN1cHBvcnQtdG8tcHR4ZGlzdC0xLjk5LWFkZC1hdXRvY29uZi1maWxlcy5wYXRjaAogZGVs ZXRlIG1vZGUgMTAwNjQ0IHBhdGNoZXMvbHVhLTUuMS40LzAxMDItQWRkLWx1YS1zdXBwb3J0LXRv LXB0eGRpc3QtMS45OS1hZGQtYXV0b21ha2UtZmlsZXMucGF0Y2gKIGRlbGV0ZSBtb2RlIDEyMDAw MCBwYXRjaGVzL2x1YS01LjEuNC9hdXRvZ2VuLnNoCiBkZWxldGUgbW9kZSAxMDA2NDQgcGF0Y2hl cy9sdWEtNS4xLjQvc2VyaWVzCiBjcmVhdGUgbW9kZSAxMDA2NDQgcGF0Y2hlcy9sdWEtNS4zLjQv MDAwMS1Dcm9zcy1jb21waWxlLWluLXB0eGRpc3QtZW52aXJpb25tZW50LnBhdGNoCiBjcmVhdGUg bW9kZSAxMDA2NDQgcGF0Y2hlcy9sdWEtNS4zLjQvMDAwMi1JbnN0YWxsLXBrZ2NvbmZpZy1maWxl LnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgcGF0Y2hlcy9sdWEtNS4zLjQvc2VyaWVzCgpkaWZm IC0tZ2l0IGEvcGF0Y2hlcy9sdWEtNS4xLjQvMDAwMS1NYWxpY2lvdXNseS1jcmFmdGVkLXByZWNv bXBpbGVkLWNvZGUtY2FuLWNyYXNoLUx1YS5wYXRjaCBiL3BhdGNoZXMvbHVhLTUuMS40LzAwMDEt TWFsaWNpb3VzbHktY3JhZnRlZC1wcmVjb21waWxlZC1jb2RlLWNhbi1jcmFzaC1MdWEucGF0Y2gK ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDg0OGZlMzAuLjAwMDAwMDAKLS0tIGEvcGF0 Y2hlcy9sdWEtNS4xLjQvMDAwMS1NYWxpY2lvdXNseS1jcmFmdGVkLXByZWNvbXBpbGVkLWNvZGUt Y2FuLWNyYXNoLUx1YS5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDEzICswLDAgQEAKLUZyb206 ID0/VVRGLTg/cT9CZW5vPUMzPUFFdD0yMEJ1cm5pY2hvbj89IDxiZW5vaXQuYnVybmljaG9uQGFp cnRhZy5jb20+Ci1EYXRlOiBUdWUsIDYgRGVjIDIwMTEgMTQ6MDU6MzUgKzAxMDAKLVN1YmplY3Q6 IFtQQVRDSF0gTWFsaWNpb3VzbHkgY3JhZnRlZCBwcmVjb21waWxlZCBjb2RlIGNhbiBjcmFzaCBM dWEKLU1JTUUtVmVyc2lvbjogMS4wCi1Db250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9 VVRGLTgKLUNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQKLQotQ29tZXMgZnJvbSBodHRw Oi8vd3d3Lmx1YS5vcmcvYnVncy5odG1sIzUuMS40LTEKLQotU2lnbmVkLW9mZi1ieTogQmVub8Ou dCBCdXJuaWNob24gPGJlbm9pdC5idXJuaWNob25AYWlydGFnLmNvbT4KLQotLS0tCi0KZGlmZiAt LWdpdCBhL3BhdGNoZXMvbHVhLTUuMS40LzAwMDItSXQtaXMtcG9zc2libGUtdG8tY3JlYXRlLWZ1 bmN0aW9ucy10aGF0LXJldHVybi10b28tbS5wYXRjaCBiL3BhdGNoZXMvbHVhLTUuMS40LzAwMDIt SXQtaXMtcG9zc2libGUtdG8tY3JlYXRlLWZ1bmN0aW9ucy10aGF0LXJldHVybi10b28tbS5wYXRj aApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjgwZmVlMy4uMDAwMDAwMAotLS0gYS9w YXRjaGVzL2x1YS01LjEuNC8wMDAyLUl0LWlzLXBvc3NpYmxlLXRvLWNyZWF0ZS1mdW5jdGlvbnMt dGhhdC1yZXR1cm4tdG9vLW0ucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwxNCArMCwwIEBACi1G cm9tOiA9P1VURi04P3E/QmVubz1DMz1BRXQ9MjBCdXJuaWNob24/PSA8YmVub2l0LmJ1cm5pY2hv bkBhaXJ0YWcuY29tPgotRGF0ZTogVHVlLCA2IERlYyAyMDExIDE0OjA3OjE4ICswMTAwCi1TdWJq ZWN0OiBbUEFUQ0hdIEl0IGlzIHBvc3NpYmxlIHRvIGNyZWF0ZSBmdW5jdGlvbnMgdGhhdCByZXR1 cm4gdG9vIG1hbnkKLSBhcmd1bWVudHMgYW5kIG92ZXJmbG93IHRoZSBzdGFjayBvZiBDIGZ1bmN0 aW9ucy4KLU1JTUUtVmVyc2lvbjogMS4wCi1Db250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJz ZXQ9VVRGLTgKLUNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQKLQotQ29tZXMgZnJvbSBo dHRwOi8vd3d3Lmx1YS5vcmcvYnVncy5odG1sIzUuMS40LTIKLQotU2lnbmVkLW9mZi1ieTogQmVu b8OudCBCdXJuaWNob24gPGJlbm9pdC5idXJuaWNob25AYWlydGFnLmNvbT4KLQotLS0tCi0KZGlm ZiAtLWdpdCBhL3BhdGNoZXMvbHVhLTUuMS40LzAwMDMtV3JvbmctY29kZS1nZW5lcmF0aW9uLWZv ci1zb21lLXBhcnRpY3VsYXItYm9vbGVhbi1leC5wYXRjaCBiL3BhdGNoZXMvbHVhLTUuMS40LzAw MDMtV3JvbmctY29kZS1nZW5lcmF0aW9uLWZvci1zb21lLXBhcnRpY3VsYXItYm9vbGVhbi1leC5w YXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYzU5OWNjNi4uMDAwMDAwMAotLS0g YS9wYXRjaGVzL2x1YS01LjEuNC8wMDAzLVdyb25nLWNvZGUtZ2VuZXJhdGlvbi1mb3Itc29tZS1w YXJ0aWN1bGFyLWJvb2xlYW4tZXgucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw3MiArMCwwIEBA Ci1Gcm9tOiA9P1VURi04P3E/QmVubz1DMz1BRXQ9MjBCdXJuaWNob24/PSA8YmVub2l0LmJ1cm5p Y2hvbkBhaXJ0YWcuY29tPgotRGF0ZTogVHVlLCA2IERlYyAyMDExIDE0OjEwOjU2ICswMTAwCi1T dWJqZWN0OiBbUEFUQ0hdIFdyb25nIGNvZGUgZ2VuZXJhdGlvbiBmb3Igc29tZSBwYXJ0aWN1bGFy IGJvb2xlYW4KLSBleHByZXNzaW9ucy4gKHNlZSBhbHNvIDkpCi1NSU1FLVZlcnNpb246IDEuMAot Q29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04Ci1Db250ZW50LVRyYW5zZmVy LUVuY29kaW5nOiA4Yml0Ci0KLUNvbWVzIGZyb20gaHR0cDovL3d3dy5sdWEub3JnL2J1Z3MuaHRt bCM1LjEuNC0zCi0KLSByZXBvcnRlZCBieSBCcmlhbiBLZWxsZXkgb24gMTUgQXByIDIwMDkuCi0g RXhhbXBsZToKLSAtLQotIHByaW50KCgoMSBvciBmYWxzZSkgYW5kIHRydWUpIG9yIGZhbHNlKSAg IC0tPiAxLCBidXQgc2hvdWxkIGJlICd0cnVlJwotIC0tCi0KLVBhdGNoOiAocGFydGlhbCBzb2x1 dGlvbjsgc2VlIGFsc28gOSkKLQotU2lnbmVkLW9mZi1ieTogQmVub8OudCBCdXJuaWNob24gPGJl bm9pdC5idXJuaWNob25AYWlydGFnLmNvbT4KLS0tLQotIHNyYy9sY29kZS5jIHwgICAyMiArKysr KysrKysrKysrKy0tLS0tLS0tCi0gMSBmaWxlcyBjaGFuZ2VkLCAxNCBpbnNlcnRpb25zKCspLCA4 IGRlbGV0aW9ucygtKQotCi1kaWZmIC0tZ2l0IGEvc3JjL2xjb2RlLmMgYi9zcmMvbGNvZGUuYwot aW5kZXggY2ZmNjI2Yi4uODRmMjg2YiAxMDA2NDQKLS0tLSBhL3NyYy9sY29kZS5jCi0rKysgYi9z cmMvbGNvZGUuYwotQEAgLTU0NCwxNSArNTQ0LDE4IEBAIHZvaWQgbHVhS19nb2lmdHJ1ZSAoRnVu Y1N0YXRlICpmcywgZXhwZGVzYyAqZSkgewotICAgICAgIHBjID0gTk9fSlVNUDsgIC8qIGFsd2F5 cyB0cnVlOyBkbyBub3RoaW5nICovCi0gICAgICAgYnJlYWs7Ci0gICAgIH0KLS0gICAgY2FzZSBW RkFMU0U6IHsKLS0gICAgICBwYyA9IGx1YUtfanVtcChmcyk7ICAvKiBhbHdheXMganVtcCAqLwot LSAgICAgIGJyZWFrOwotLSAgICB9Ci0gICAgIGNhc2UgVkpNUDogewotICAgICAgIGludmVydGp1 bXAoZnMsIGUpOwotICAgICAgIHBjID0gZS0+dS5zLmluZm87Ci0gICAgICAgYnJlYWs7Ci0gICAg IH0KLSsgICAgY2FzZSBWRkFMU0U6IHsKLSsgICAgICBpZiAoIWhhc2p1bXBzKGUpKSB7Ci0rICAg ICAgICBwYyA9IGx1YUtfanVtcChmcyk7ICAvKiBhbHdheXMganVtcCAqLwotKyAgICAgICAgYnJl YWs7Ci0rICAgICAgfQotKyAgICAgIC8qIGVsc2UgZ28gdGhyb3VnaCAqLwotKyAgICB9Ci0gICAg IGRlZmF1bHQ6IHsKLSAgICAgICBwYyA9IGp1bXBvbmNvbmQoZnMsIGUsIDApOwotICAgICAgIGJy ZWFrOwotQEAgLTU3MiwxNCArNTc1LDE3IEBAIHN0YXRpYyB2b2lkIGx1YUtfZ29pZmZhbHNlIChG dW5jU3RhdGUgKmZzLCBleHBkZXNjICplKSB7Ci0gICAgICAgcGMgPSBOT19KVU1QOyAgLyogYWx3 YXlzIGZhbHNlOyBkbyBub3RoaW5nICovCi0gICAgICAgYnJlYWs7Ci0gICAgIH0KLS0gICAgY2Fz ZSBWVFJVRTogewotLSAgICAgIHBjID0gbHVhS19qdW1wKGZzKTsgIC8qIGFsd2F5cyBqdW1wICov Ci0tICAgICAgYnJlYWs7Ci0tICAgIH0KLSAgICAgY2FzZSBWSk1QOiB7Ci0gICAgICAgcGMgPSBl LT51LnMuaW5mbzsKLSAgICAgICBicmVhazsKLSAgICAgfQotKyAgICBjYXNlIFZUUlVFOiB7Ci0r ICAgICAgaWYgKCFoYXNqdW1wcyhlKSkgewotKyAgICAgICAgcGMgPSBsdWFLX2p1bXAoZnMpOyAg LyogYWx3YXlzIGp1bXAgKi8KLSsgICAgICAgIGJyZWFrOwotKyAgICAgIH0KLSsgICAgICAvKiBl bHNlIGdvIHRocm91Z2ggKi8KLSsgICAgfQotICAgICBkZWZhdWx0OiB7Ci0gICAgICAgcGMgPSBq dW1wb25jb25kKGZzLCBlLCAxKTsKLSAgICAgICBicmVhazsKZGlmZiAtLWdpdCBhL3BhdGNoZXMv bHVhLTUuMS40LzAwMDQtbHVhVl9zZXR0YWJsZS1tYXktaW52YWxpZGF0ZS1hLXJlZmVyZW5jZS10 by1hLXRhYmxlLS5wYXRjaCBiL3BhdGNoZXMvbHVhLTUuMS40LzAwMDQtbHVhVl9zZXR0YWJsZS1t YXktaW52YWxpZGF0ZS1hLXJlZmVyZW5jZS10by1hLXRhYmxlLS5wYXRjaApkZWxldGVkIGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggZmUxMTg5Mi4uMDAwMDAwMAotLS0gYS9wYXRjaGVzL2x1YS01LjEu NC8wMDA0LWx1YVZfc2V0dGFibGUtbWF5LWludmFsaWRhdGUtYS1yZWZlcmVuY2UtdG8tYS10YWJs ZS0ucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw1MiArMCwwIEBACi1Gcm9tOiA9P1VURi04P3E/ QmVubz1DMz1BRXQ9MjBCdXJuaWNob24/PSA8YmVub2l0LmJ1cm5pY2hvbkBhaXJ0YWcuY29tPgot RGF0ZTogVHVlLCA2IERlYyAyMDExIDE0OjEzOjU5ICswMTAwCi1TdWJqZWN0OiBbUEFUQ0hdIGx1 YVZfc2V0dGFibGUgbWF5IGludmFsaWRhdGUgYSByZWZlcmVuY2UgdG8gYSB0YWJsZSBhbmQgdHJ5 Ci0gdG8gcmV1c2UgaXQKLU1JTUUtVmVyc2lvbjogMS4wCi1Db250ZW50LVR5cGU6IHRleHQvcGxh aW47IGNoYXJzZXQ9VVRGLTgKLUNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQKLQotQ29t ZXMgZnJvbSBodHRwOi8vd3d3Lmx1YS5vcmcvYnVncy5odG1sIzUuMS40LTQKLQotcmVwb3J0ZWQg YnkgTWFyayBGZWxkbWFuIG9uIDI3IEp1biAyMDA5LgotRXhhbXBsZToKLSAtLQotIGdyYW5kcGFy ZW50ID0ge30KLSBncmFuZHBhcmVudC5fX25ld2luZGV4ID0gZnVuY3Rpb24ocyxfLF8pIHByaW50 KHMpIGVuZAotCi0gcGFyZW50ID0ge30KLSBwYXJlbnQuX19uZXdpbmRleCA9IHBhcmVudAotIHNl dG1ldGF0YWJsZShwYXJlbnQsIGdyYW5kcGFyZW50KQotCi0gY2hpbGQgPSBzZXRtZXRhdGFibGUo e30sIHBhcmVudCkKLSBjaGlsZC5mb28gPSAxMCAgICAgIC0tPiAoY3Jhc2ggb24gc29tZSBtYWNo aW5lcykKLSAtLQotCi1TaWduZWQtb2ZmLWJ5OiBCZW5vw650IEJ1cm5pY2hvbiA8YmVub2l0LmJ1 cm5pY2hvbkBhaXJ0YWcuY29tPgotLS0tCi0gc3JjL2x2bS5jIHwgICAgNSArKysrLQotIDEgZmls ZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQotCi1kaWZmIC0tZ2l0 IGEvc3JjL2x2bS5jIGIvc3JjL2x2bS5jCi1pbmRleCBlZTMyNTZhLi40YWMyZTcxIDEwMDY0NAot LS0tIGEvc3JjL2x2bS5jCi0rKysgYi9zcmMvbHZtLmMKLUBAIC0xMzMsNiArMTMzLDcgQEAgdm9p ZCBsdWFWX2dldHRhYmxlIChsdWFfU3RhdGUgKkwsIGNvbnN0IFRWYWx1ZSAqdCwgVFZhbHVlICpr ZXksIFN0a0lkIHZhbCkgewotIAotIHZvaWQgbHVhVl9zZXR0YWJsZSAobHVhX1N0YXRlICpMLCBj b25zdCBUVmFsdWUgKnQsIFRWYWx1ZSAqa2V5LCBTdGtJZCB2YWwpIHsKLSAgIGludCBsb29wOwot KyAgVFZhbHVlIHRlbXA7Ci0gICBmb3IgKGxvb3AgPSAwOyBsb29wIDwgTUFYVEFHTE9PUDsgbG9v cCsrKSB7Ci0gICAgIGNvbnN0IFRWYWx1ZSAqdG07Ci0gICAgIGlmICh0dGlzdGFibGUodCkpIHsg IC8qIGB0JyBpcyBhIHRhYmxlPyAqLwotQEAgLTE1Miw3ICsxNTMsOSBAQCB2b2lkIGx1YVZfc2V0 dGFibGUgKGx1YV9TdGF0ZSAqTCwgY29uc3QgVFZhbHVlICp0LCBUVmFsdWUgKmtleSwgU3RrSWQg dmFsKSB7Ci0gICAgICAgY2FsbFRNKEwsIHRtLCB0LCBrZXksIHZhbCk7Ci0gICAgICAgcmV0dXJu OwotICAgICB9Ci0tICAgIHQgPSB0bTsgIC8qIGVsc2UgcmVwZWF0IHdpdGggYHRtJyAqLyAKLSsg ICAgLyogZWxzZSByZXBlYXQgd2l0aCBgdG0nICovCi0rICAgIHNldG9iaihMLCAmdGVtcCwgdG0p OyAgLyogYXZvaWQgcG9pbnRpbmcgaW5zaWRlIHRhYmxlIChtYXkgcmVoYXNoKSAqLwotKyAgICB0 ID0gJnRlbXA7Ci0gICB9Ci0gICBsdWFHX3J1bmVycm9yKEwsICJsb29wIGluIHNldHRhYmxlIik7 Ci0gfQpkaWZmIC0tZ2l0IGEvcGF0Y2hlcy9sdWEtNS4xLjQvMDAwNS1kZWJ1Zy5nZXRmZW52LWRv ZXMtbm90LWNoZWNrLXdoZXRoZXItaXQtaGFzLWFuLWFyZ3VtLnBhdGNoIGIvcGF0Y2hlcy9sdWEt NS4xLjQvMDAwNS1kZWJ1Zy5nZXRmZW52LWRvZXMtbm90LWNoZWNrLXdoZXRoZXItaXQtaGFzLWFu LWFyZ3VtLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0MGMwZTNmLi4wMDAw MDAwCi0tLSBhL3BhdGNoZXMvbHVhLTUuMS40LzAwMDUtZGVidWcuZ2V0ZmVudi1kb2VzLW5vdC1j aGVjay13aGV0aGVyLWl0LWhhcy1hbi1hcmd1bS5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDMy ICswLDAgQEAKLUZyb206ID0/VVRGLTg/cT9CZW5vPUMzPUFFdD0yMEJ1cm5pY2hvbj89IDxiZW5v aXQuYnVybmljaG9uQGFpcnRhZy5jb20+Ci1EYXRlOiBUdWUsIDYgRGVjIDIwMTEgMTQ6MTg6MjAg KzAxMDAKLVN1YmplY3Q6IFtQQVRDSF0gZGVidWcuZ2V0ZmVudiBkb2VzIG5vdCBjaGVjayB3aGV0 aGVyIGl0IGhhcyBhbiBhcmd1bWVudC4KLU1JTUUtVmVyc2lvbjogMS4wCi1Db250ZW50LVR5cGU6 IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLTgKLUNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhi aXQKLQotQ29tZXMgZnJvbSBodHRwOi8vd3d3Lmx1YS5vcmcvYnVncy5odG1sIzUuMS40LTUKLQot cmVwb3J0ZWQgYnkgUGF0cmljayBEb25uZWxseSBvbiAzMCBKdWwgMjAwOS4KLUV4YW1wbGU6Ci0g LS0KLSBkZWJ1Zy5nZXRmZW52KCkgICAtLSBzaG91bGQgcmFpc2UgYW4gZXJyb3IKLSAtLQotCi1T aWduZWQtb2ZmLWJ5OiBCZW5vw650IEJ1cm5pY2hvbiA8YmVub2l0LmJ1cm5pY2hvbkBhaXJ0YWcu Y29tPgotLS0tCi0gc3JjL2xkYmxpYi5jIHwgICAgMSArCi0gMSBmaWxlcyBjaGFuZ2VkLCAxIGlu c2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCi0KLWRpZmYgLS1naXQgYS9zcmMvbGRibGliLmMg Yi9zcmMvbGRibGliLmMKLWluZGV4IDY3ZGUxMjIuLjIxMTE2YWMgMTAwNjQ0Ci0tLS0gYS9zcmMv bGRibGliLmMKLSsrKyBiL3NyYy9sZGJsaWIuYwotQEAgLTQ1LDYgKzQ1LDcgQEAgc3RhdGljIGlu dCBkYl9zZXRtZXRhdGFibGUgKGx1YV9TdGF0ZSAqTCkgewotIAotIAotIHN0YXRpYyBpbnQgZGJf Z2V0ZmVudiAobHVhX1N0YXRlICpMKSB7Ci0rICBsdWFMX2NoZWNrYW55KEwsIDEpOwotICAgbHVh X2dldGZlbnYoTCwgMSk7Ci0gICByZXR1cm4gMTsKLSB9CmRpZmYgLS1naXQgYS9wYXRjaGVzL2x1 YS01LjEuNC8wMDA2LUdDLW1heS1nZXQtc3R1Y2stZHVyaW5nLXBhcnNpbmctYW5kLWF2b2lkcy1w cm9wZXItcmUucGF0Y2ggYi9wYXRjaGVzL2x1YS01LjEuNC8wMDA2LUdDLW1heS1nZXQtc3R1Y2st ZHVyaW5nLXBhcnNpbmctYW5kLWF2b2lkcy1wcm9wZXItcmUucGF0Y2gKZGVsZXRlZCBmaWxlIG1v ZGUgMTAwNjQ0CmluZGV4IGY3NDgzNzIuLjAwMDAwMDAKLS0tIGEvcGF0Y2hlcy9sdWEtNS4xLjQv MDAwNi1HQy1tYXktZ2V0LXN0dWNrLWR1cmluZy1wYXJzaW5nLWFuZC1hdm9pZHMtcHJvcGVyLXJl LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMzUgKzAsMCBAQAotRnJvbTogPT9VVEYtOD9xP0Jl bm89QzM9QUV0PTIwQnVybmljaG9uPz0gPGJlbm9pdC5idXJuaWNob25AYWlydGFnLmNvbT4KLURh dGU6IFR1ZSwgNiBEZWMgMjAxMSAxNDoyMDoxNSArMDEwMAotU3ViamVjdDogW1BBVENIXSBHQyBt YXkgZ2V0IHN0dWNrIGR1cmluZyBwYXJzaW5nIGFuZCBhdm9pZHMgcHJvcGVyIHJlc2l6aW5nCi0g b2YgdGhlIHN0cmluZyB0YWJsZSwgbWFraW5nIGl0cyBsaXN0cyBncm93IHRvbyBtdWNoIGFuZAot IGRlZ3JhZGluZyBwZXJmb3JtYW5jZS4KLU1JTUUtVmVyc2lvbjogMS4wCi1Db250ZW50LVR5cGU6 IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLTgKLUNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhi aXQKLQotQ29tZXMgZnJvbSBodHRwOi8vd3d3Lmx1YS5vcmcvYnVncy5odG1sIzUuMS40LTYKLQot IHJlcG9ydGVkIGJ5IFNlYW4gQ29ubmVyIG9uIDEwIE5vdiAyMDA5LgotCi0KLVNpZ25lZC1vZmYt Ynk6IEJlbm/DrnQgQnVybmljaG9uIDxiZW5vaXQuYnVybmljaG9uQGFpcnRhZy5jb20+Ci0tLS0K LSBzcmMvbGxleC5jIHwgICAgNCArKystCi0gMSBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMo KyksIDEgZGVsZXRpb25zKC0pCi0KLWRpZmYgLS1naXQgYS9zcmMvbGxleC5jIGIvc3JjL2xsZXgu YwotaW5kZXggNmRjMzE5My4uOTJkNjU3NSAxMDA2NDQKLS0tLSBhL3NyYy9sbGV4LmMKLSsrKyBi L3NyYy9sbGV4LmMKLUBAIC0xMTgsOCArMTE4LDEwIEBAIFRTdHJpbmcgKmx1YVhfbmV3c3RyaW5n IChMZXhTdGF0ZSAqbHMsIGNvbnN0IGNoYXIgKnN0ciwgc2l6ZV90IGwpIHsKLSAgIGx1YV9TdGF0 ZSAqTCA9IGxzLT5MOwotICAgVFN0cmluZyAqdHMgPSBsdWFTX25ld2xzdHIoTCwgc3RyLCBsKTsK LSAgIFRWYWx1ZSAqbyA9IGx1YUhfc2V0c3RyKEwsIGxzLT5mcy0+aCwgdHMpOyAgLyogZW50cnkg Zm9yIGBzdHInICovCi0tICBpZiAodHRpc25pbChvKSkKLSsgIGlmICh0dGlzbmlsKG8pKSB7Ci0g ICAgIHNldGJ2YWx1ZShvLCAxKTsgIC8qIG1ha2Ugc3VyZSBgc3RyJyB3aWxsIG5vdCBiZSBjb2xs ZWN0ZWQgKi8KLSsgICAgbHVhQ19jaGVja0dDKEwpOwotKyAgfQotICAgcmV0dXJuIHRzOwotIH0K LSAKZGlmZiAtLWdpdCBhL3BhdGNoZXMvbHVhLTUuMS40LzAwMDctc3RyaW5nLmZvcm1hdC1tYXkt Z2V0LWJ1ZmZlci1hcy1hbi1hcmd1bWVudC13aGVuLXRoZS5wYXRjaCBiL3BhdGNoZXMvbHVhLTUu MS40LzAwMDctc3RyaW5nLmZvcm1hdC1tYXktZ2V0LWJ1ZmZlci1hcy1hbi1hcmd1bWVudC13aGVu LXRoZS5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggY2MwYzMxMC4uMDAwMDAw MAotLS0gYS9wYXRjaGVzL2x1YS01LjEuNC8wMDA3LXN0cmluZy5mb3JtYXQtbWF5LWdldC1idWZm ZXItYXMtYW4tYXJndW1lbnQtd2hlbi10aGUucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw0NCAr MCwwIEBACi1Gcm9tOiA9P1VURi04P3E/QmVubz1DMz1BRXQ9MjBCdXJuaWNob24/PSA8YmVub2l0 LmJ1cm5pY2hvbkBhaXJ0YWcuY29tPgotRGF0ZTogVHVlLCA2IERlYyAyMDExIDE0OjIxOjQ2ICsw MTAwCi1TdWJqZWN0OiBbUEFUQ0hdIHN0cmluZy5mb3JtYXQgbWF5IGdldCBidWZmZXIgYXMgYW4g YXJndW1lbnQgd2hlbiB0aGVyZSBhcmUKLSBtaXNzaW5nIGFyZ3VtZW50cyBhbmQgZm9ybWF0IHN0 cmluZyBpcyB0b28gbG9uZy4KLU1JTUUtVmVyc2lvbjogMS4wCi1Db250ZW50LVR5cGU6IHRleHQv cGxhaW47IGNoYXJzZXQ9VVRGLTgKLUNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQKLQot Q29tZXMgZnJvbSBodHRwOi8vd3d3Lmx1YS5vcmcvYnVncy5odG1sIzUuMS40LTcKLQotcmVwb3J0 ZWQgYnkgUm9iZXJ0byBvbiAxMiBBcHIgMjAxMC4KLUV4YW1wbGU6Ci0gLS0KLSB4ID0gc3RyaW5n LnJlcCgieCIsIDEwMDAwKSAuLiAiJWQiCi0gcHJpbnQoc3RyaW5nLmZvcm1hdCh4KSkgICAgLS0g Z2l2ZXMgd3JvbmcgZXJyb3IgbWVzc2FnZQotIC0tCi0KLVNpZ25lZC1vZmYtYnk6IEJlbm/DrnQg QnVybmljaG9uIDxiZW5vaXQuYnVybmljaG9uQGFpcnRhZy5jb20+Ci0tLS0KLSBzcmMvbHN0cmxp Yi5jIHwgICAgNCArKystCi0gMSBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDEgZGVs ZXRpb25zKC0pCi0KLWRpZmYgLS1naXQgYS9zcmMvbHN0cmxpYi5jIGIvc3JjL2xzdHJsaWIuYwot aW5kZXggMWI0NzYzZC4uZmU0NTJjZSAxMDA2NDQKLS0tLSBhL3NyYy9sc3RybGliLmMKLSsrKyBi L3NyYy9sc3RybGliLmMKLUBAIC03NTQsNiArNzU0LDcgQEAgc3RhdGljIHZvaWQgYWRkaW50bGVu IChjaGFyICpmb3JtKSB7Ci0gCi0gCi0gc3RhdGljIGludCBzdHJfZm9ybWF0IChsdWFfU3RhdGUg KkwpIHsKLSsgIGludCB0b3AgPSBsdWFfZ2V0dG9wKEwpOwotICAgaW50IGFyZyA9IDE7Ci0gICBz aXplX3Qgc2ZsOwotICAgY29uc3QgY2hhciAqc3RyZnJtdCA9IGx1YUxfY2hlY2tsc3RyaW5nKEws IGFyZywgJnNmbCk7Ci1AQCAtNzY4LDcgKzc2OSw4IEBAIHN0YXRpYyBpbnQgc3RyX2Zvcm1hdCAo bHVhX1N0YXRlICpMKSB7Ci0gICAgIGVsc2UgeyAvKiBmb3JtYXQgaXRlbSAqLwotICAgICAgIGNo YXIgZm9ybVtNQVhfRk9STUFUXTsgIC8qIHRvIHN0b3JlIHRoZSBmb3JtYXQgKGAlLi4uJykgKi8K LSAgICAgICBjaGFyIGJ1ZmZbTUFYX0lURU1dOyAgLyogdG8gc3RvcmUgdGhlIGZvcm1hdHRlZCBp dGVtICovCi0tICAgICAgYXJnKys7Ci0rICAgICAgaWYgKCsrYXJnID4gdG9wKQotKyAgICAgICAg bHVhTF9hcmdlcnJvcihMLCBhcmcsICJubyB2YWx1ZSIpOwotICAgICAgIHN0cmZybXQgPSBzY2Fu Zm9ybWF0KEwsIHN0cmZybXQsIGZvcm0pOwotICAgICAgIHN3aXRjaCAoKnN0cmZybXQrKykgewot ICAgICAgICAgY2FzZSAnYyc6IHsKZGlmZiAtLWdpdCBhL3BhdGNoZXMvbHVhLTUuMS40LzAwMDgt aW8ucmVhZC1uLW4tbWF5LXJldHVybi1nYXJiYWdlLWlmLXNlY29uZC1yZWFkLWZhaWxzLnBhdGNo IGIvcGF0Y2hlcy9sdWEtNS4xLjQvMDAwOC1pby5yZWFkLW4tbi1tYXktcmV0dXJuLWdhcmJhZ2Ut aWYtc2Vjb25kLXJlYWQtZmFpbHMucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4 IDVhNWQwZjIuLjAwMDAwMDAKLS0tIGEvcGF0Y2hlcy9sdWEtNS4xLjQvMDAwOC1pby5yZWFkLW4t bi1tYXktcmV0dXJuLWdhcmJhZ2UtaWYtc2Vjb25kLXJlYWQtZmFpbHMucGF0Y2gKKysrIC9kZXYv bnVsbApAQCAtMSwzNyArMCwwIEBACi1Gcm9tOiA9P1VURi04P3E/QmVubz1DMz1BRXQ9MjBCdXJu aWNob24/PSA8YmVub2l0LmJ1cm5pY2hvbkBhaXJ0YWcuY29tPgotRGF0ZTogVHVlLCA2IERlYyAy MDExIDE0OjIzOjUzICswMTAwCi1TdWJqZWN0OiBbUEFUQ0hdIGlvLnJlYWQoIipuIiwgIipuIikg bWF5IHJldHVybiBnYXJiYWdlIGlmIHNlY29uZCByZWFkIGZhaWxzLgotTUlNRS1WZXJzaW9uOiAx LjAKLUNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOAotQ29udGVudC1UcmFu c2Zlci1FbmNvZGluZzogOGJpdAotCi1Db21lcyBmcm9tIGh0dHA6Ly93d3cubHVhLm9yZy9idWdz Lmh0bWwjNS4xLjQtOAotCi1yZXBvcnRlZCBieSBSb2JlcnRvIG9uIDEyIEFwciAyMDEwLgotRXhh bXBsZToKLSAtLQotIHByaW50KGlvLnJlYWQoIipuIiwgIipuIikpICAgLS08PCBlbnRlciAiMTAg ICBoaSIKLSAtLT4gZmlsZSAoMHg4ODQ0MjApCW5pbAotIC0tCi0KLVNpZ25lZC1vZmYtYnk6IEJl bm/DrnQgQnVybmljaG9uIDxiZW5vaXQuYnVybmljaG9uQGFpcnRhZy5jb20+Ci0tLS0KLSBzcmMv bGlvbGliLmMgfCAgICA1ICsrKystCi0gMSBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyks IDEgZGVsZXRpb25zKC0pCi0KLWRpZmYgLS1naXQgYS9zcmMvbGlvbGliLmMgYi9zcmMvbGlvbGli LmMKLWluZGV4IGU3OWVkMWMuLjhkZTI1NDcgMTAwNjQ0Ci0tLS0gYS9zcmMvbGlvbGliLmMKLSsr KyBiL3NyYy9saW9saWIuYwotQEAgLTI3Niw3ICsyNzYsMTAgQEAgc3RhdGljIGludCByZWFkX251 bWJlciAobHVhX1N0YXRlICpMLCBGSUxFICpmKSB7Ci0gICAgIGx1YV9wdXNobnVtYmVyKEwsIGQp OwotICAgICByZXR1cm4gMTsKLSAgIH0KLS0gIGVsc2UgcmV0dXJuIDA7ICAvKiByZWFkIGZhaWxz ICovCi0rICBlbHNlIHsKLSsgICAgbHVhX3B1c2huaWwoTCk7ICAvKiAicmVzdWx0IiB0byBiZSBy ZW1vdmVkICovCi0rICAgIHJldHVybiAwOyAgLyogcmVhZCBmYWlscyAqLwotKyAgfQotIH0KLSAK LSAKZGlmZiAtLWdpdCBhL3BhdGNoZXMvbHVhLTUuMS40LzAwMDktV3JvbmctY29kZS1nZW5lcmF0 aW9uLWZvci1zb21lLXBhcnRpY3VsYXItYm9vbGVhbi1leC5wYXRjaCBiL3BhdGNoZXMvbHVhLTUu MS40LzAwMDktV3JvbmctY29kZS1nZW5lcmF0aW9uLWZvci1zb21lLXBhcnRpY3VsYXItYm9vbGVh bi1leC5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjBjMGIxMS4uMDAwMDAw MAotLS0gYS9wYXRjaGVzL2x1YS01LjEuNC8wMDA5LVdyb25nLWNvZGUtZ2VuZXJhdGlvbi1mb3It c29tZS1wYXJ0aWN1bGFyLWJvb2xlYW4tZXgucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw1NiAr MCwwIEBACi1Gcm9tOiA9P1VURi04P3E/QmVubz1DMz1BRXQ9MjBCdXJuaWNob24/PSA8YmVub2l0 LmJ1cm5pY2hvbkBhaXJ0YWcuY29tPgotRGF0ZTogVHVlLCA2IERlYyAyMDExIDE0OjI1OjE4ICsw MTAwCi1TdWJqZWN0OiBbUEFUQ0hdIFdyb25nIGNvZGUgZ2VuZXJhdGlvbiBmb3Igc29tZSBwYXJ0 aWN1bGFyIGJvb2xlYW4KLSBleHByZXNzaW9ucy4KLU1JTUUtVmVyc2lvbjogMS4wCi1Db250ZW50 LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLTgKLUNvbnRlbnQtVHJhbnNmZXItRW5jb2Rp bmc6IDhiaXQKLQotQ29tZXMgZnJvbSBodHRwOi8vd3d3Lmx1YS5vcmcvYnVncy5odG1sIzUuMS40 LTkKLQotcmVwb3J0ZWQgYnkgVGhpZXJyeSBWYW4gRWxzdXdlIG9uIDIwIEphbiAyMDExLgotRXhh bXBsZToKLSAtLQotIHByaW50KCgoJ2hpJyBvciB0cnVlKSBhbmQgdHJ1ZSkgb3IgdHJ1ZSkKLSAt LT4gaGkgICAgIChzaG91bGQgYmUgdHJ1ZSkKLSBwcmludCgoKG5pbCBhbmQgbmlsKSBvciBmYWxz ZSkgYW5kIHRydWUpCi0gLS0+IG5pbCAgICAoc2hvdWxkIGJlIGZhbHNlKQotIC0tCi0KLVNpZ25l ZC1vZmYtYnk6IEJlbm/DrnQgQnVybmljaG9uIDxiZW5vaXQuYnVybmljaG9uQGFpcnRhZy5jb20+ Ci0tLS0KLSBzcmMvbGNvZGUuYyB8ICAgMTQgLS0tLS0tLS0tLS0tLS0KLSAxIGZpbGVzIGNoYW5n ZWQsIDAgaW5zZXJ0aW9ucygrKSwgMTQgZGVsZXRpb25zKC0pCi0KLWRpZmYgLS1naXQgYS9zcmMv bGNvZGUuYyBiL3NyYy9sY29kZS5jCi1pbmRleCA4NGYyODZiLi5jMTMwNjZlIDEwMDY0NAotLS0t IGEvc3JjL2xjb2RlLmMKLSsrKyBiL3NyYy9sY29kZS5jCi1AQCAtNTQ5LDEzICs1NDksNiBAQCB2 b2lkIGx1YUtfZ29pZnRydWUgKEZ1bmNTdGF0ZSAqZnMsIGV4cGRlc2MgKmUpIHsKLSAgICAgICBw YyA9IGUtPnUucy5pbmZvOwotICAgICAgIGJyZWFrOwotICAgICB9Ci0tICAgIGNhc2UgVkZBTFNF OiB7Ci0tICAgICAgaWYgKCFoYXNqdW1wcyhlKSkgewotLSAgICAgICAgcGMgPSBsdWFLX2p1bXAo ZnMpOyAgLyogYWx3YXlzIGp1bXAgKi8KLS0gICAgICAgIGJyZWFrOwotLSAgICAgIH0KLS0gICAg ICAvKiBlbHNlIGdvIHRocm91Z2ggKi8KLS0gICAgfQotICAgICBkZWZhdWx0OiB7Ci0gICAgICAg cGMgPSBqdW1wb25jb25kKGZzLCBlLCAwKTsKLSAgICAgICBicmVhazsKLUBAIC01NzksMTMgKzU3 Miw2IEBAIHN0YXRpYyB2b2lkIGx1YUtfZ29pZmZhbHNlIChGdW5jU3RhdGUgKmZzLCBleHBkZXNj ICplKSB7Ci0gICAgICAgcGMgPSBlLT51LnMuaW5mbzsKLSAgICAgICBicmVhazsKLSAgICAgfQot LSAgICBjYXNlIFZUUlVFOiB7Ci0tICAgICAgaWYgKCFoYXNqdW1wcyhlKSkgewotLSAgICAgICAg cGMgPSBsdWFLX2p1bXAoZnMpOyAgLyogYWx3YXlzIGp1bXAgKi8KLS0gICAgICAgIGJyZWFrOwot LSAgICAgIH0KLS0gICAgICAvKiBlbHNlIGdvIHRocm91Z2ggKi8KLS0gICAgfQotICAgICBkZWZh dWx0OiB7Ci0gICAgICAgcGMgPSBqdW1wb25jb25kKGZzLCBlLCAxKTsKLSAgICAgICBicmVhazsK ZGlmZiAtLWdpdCBhL3BhdGNoZXMvbHVhLTUuMS40LzAwMTAtX19uZXdpbmRleC1tZXRhbWV0aG9k LW1heS1ub3Qtd29yay1pZi1tZXRhdGFibGUtaXMtaS5wYXRjaCBiL3BhdGNoZXMvbHVhLTUuMS40 LzAwMTAtX19uZXdpbmRleC1tZXRhbWV0aG9kLW1heS1ub3Qtd29yay1pZi1tZXRhdGFibGUtaXMt aS5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNmM5ZjdlMS4uMDAwMDAwMAot LS0gYS9wYXRjaGVzL2x1YS01LjEuNC8wMDEwLV9fbmV3aW5kZXgtbWV0YW1ldGhvZC1tYXktbm90 LXdvcmstaWYtbWV0YXRhYmxlLWlzLWkucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwzNyArMCww IEBACi1Gcm9tOiA9P1VURi04P3E/QmVubz1DMz1BRXQ9MjBCdXJuaWNob24/PSA8YmVub2l0LmJ1 cm5pY2hvbkBhaXJ0YWcuY29tPgotRGF0ZTogVHVlLCA2IERlYyAyMDExIDE0OjI3OjA0ICswMTAw Ci1TdWJqZWN0OiBbUEFUQ0hdIF9fbmV3aW5kZXggbWV0YW1ldGhvZCBtYXkgbm90IHdvcmsgaWYg bWV0YXRhYmxlIGlzIGl0cyBvd24KLSBtZXRhdGFibGUuCi1NSU1FLVZlcnNpb246IDEuMAotQ29u dGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04Ci1Db250ZW50LVRyYW5zZmVyLUVu Y29kaW5nOiA4Yml0Ci0KLUNvbWVzIGZyb20gaHR0cDovL3d3dy5sdWEub3JnL2J1Z3MuaHRtbCM1 LjEuNC0xMAotCi1yZXBvcnRlZCBieSBDdWVybyBCdWdvdCBvbiAwOSBBdWcgMjAxMS4KLUV4YW1w bGU6Ci0gLS0KLSBtZXRhPXt9Ci0gc2V0bWV0YXRhYmxlKG1ldGEsIG1ldGEpCi0gbWV0YS5fX25l d2luZGV4ID0gZnVuY3Rpb24odCwga2V5LCB2YWx1ZSkgcHJpbnQoInNldCIpIGVuZAotIG8gPSBz ZXRtZXRhdGFibGUoe30sIG1ldGEpCi0gby54ID0gMTAgICAgLS0gc2hvdWxkIHByaW50ICdzZXQn Ci0gLS0KLQotU2lnbmVkLW9mZi1ieTogQmVub8OudCBCdXJuaWNob24gPGJlbm9pdC5idXJuaWNo b25AYWlydGFnLmNvbT4KLS0tLQotIHNyYy9sdm0uYyB8ICAgIDEgKwotIDEgZmlsZXMgY2hhbmdl ZCwgMSBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQotCi1kaWZmIC0tZ2l0IGEvc3JjL2x2 bS5jIGIvc3JjL2x2bS5jCi1pbmRleCA0YWMyZTcxLi5jYTdiZWEwIDEwMDY0NAotLS0tIGEvc3Jj L2x2bS5jCi0rKysgYi9zcmMvbHZtLmMKLUBAIC0xNDIsNiArMTQyLDcgQEAgdm9pZCBsdWFWX3Nl dHRhYmxlIChsdWFfU3RhdGUgKkwsIGNvbnN0IFRWYWx1ZSAqdCwgVFZhbHVlICprZXksIFN0a0lk IHZhbCkgewotICAgICAgIGlmICghdHRpc25pbChvbGR2YWwpIHx8ICAvKiByZXN1bHQgaXMgbm8g bmlsPyAqLwotICAgICAgICAgICAodG0gPSBmYXN0dG0oTCwgaC0+bWV0YXRhYmxlLCBUTV9ORVdJ TkRFWCkpID09IE5VTEwpIHsgLyogb3Igbm8gVE0/ICovCi0gICAgICAgICBzZXRvYmoydChMLCBv bGR2YWwsIHZhbCk7Ci0rICAgICAgICBoLT5mbGFncyA9IDA7Ci0gICAgICAgICBsdWFDX2JhcnJp ZXJ0KEwsIGgsIHZhbCk7Ci0gICAgICAgICByZXR1cm47Ci0gICAgICAgfQpkaWZmIC0tZ2l0IGEv cGF0Y2hlcy9sdWEtNS4xLjQvMDAxMS1QYXJzZXItbWF5LWNvbGxlY3QtYS1wcm90b3R5cGUtd2hp bGUtYnVpbGRpbmctaXQucGF0Y2ggYi9wYXRjaGVzL2x1YS01LjEuNC8wMDExLVBhcnNlci1tYXkt Y29sbGVjdC1hLXByb3RvdHlwZS13aGlsZS1idWlsZGluZy1pdC5wYXRjaApkZWxldGVkIGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggOTRlZTJlNC4uMDAwMDAwMAotLS0gYS9wYXRjaGVzL2x1YS01LjEu NC8wMDExLVBhcnNlci1tYXktY29sbGVjdC1hLXByb3RvdHlwZS13aGlsZS1idWlsZGluZy1pdC5w YXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDMxICswLDAgQEAKLUZyb206ID0/VVRGLTg/cT9CZW5v PUMzPUFFdD0yMEJ1cm5pY2hvbj89IDxiZW5vaXQuYnVybmljaG9uQGFpcnRhZy5jb20+Ci1EYXRl OiBUdWUsIDYgRGVjIDIwMTEgMTQ6Mjg6MTkgKzAxMDAKLVN1YmplY3Q6IFtQQVRDSF0gUGFyc2Vy IG1heSBjb2xsZWN0IGEgcHJvdG90eXBlIHdoaWxlIGJ1aWxkaW5nIGl0LgotTUlNRS1WZXJzaW9u OiAxLjAKLUNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOAotQ29udGVudC1U cmFuc2Zlci1FbmNvZGluZzogOGJpdAotCi1Db21lcyBmcm9tIGh0dHA6Ly93d3cubHVhLm9yZy9i dWdzLmh0bWwjNS4xLjQtMTEKLQotcmVwb3J0ZWQgYnkgSW5nbyB2YW4gTGlsIG9uIDEzIE9jdCAy MDExLgotCi1TaWduZWQtb2ZmLWJ5OiBCZW5vw650IEJ1cm5pY2hvbiA8YmVub2l0LmJ1cm5pY2hv bkBhaXJ0YWcuY29tPgotLS0tCi0gc3JjL2xwYXJzZXIuYyB8ICAgIDIgKy0KLSAxIGZpbGVzIGNo YW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKLQotZGlmZiAtLWdpdCBhL3Ny Yy9scGFyc2VyLmMgYi9zcmMvbHBhcnNlci5jCi1pbmRleCAxZTJhOWE4Li5hMjcyMWQyIDEwMDY0 NAotLS0tIGEvc3JjL2xwYXJzZXIuYwotKysrIGIvc3JjL2xwYXJzZXIuYwotQEAgLTM3NCw5ICsz NzQsOSBAQCBzdGF0aWMgdm9pZCBjbG9zZV9mdW5jIChMZXhTdGF0ZSAqbHMpIHsKLSAgIGx1YV9h c3NlcnQobHVhR19jaGVja2NvZGUoZikpOwotICAgbHVhX2Fzc2VydChmcy0+YmwgPT0gTlVMTCk7 Ci0gICBscy0+ZnMgPSBmcy0+cHJldjsKLS0gIEwtPnRvcCAtPSAyOyAgLyogcmVtb3ZlIHRhYmxl IGFuZCBwcm90b3R5cGUgZnJvbSB0aGUgc3RhY2sgKi8KLSAgIC8qIGxhc3QgdG9rZW4gcmVhZCB3 YXMgYW5jaG9yZWQgaW4gZGVmdW5jdCBmdW5jdGlvbjsgbXVzdCByZWFuY2hvciBpdCAqLwotICAg aWYgKGZzKSBhbmNob3JfdG9rZW4obHMpOwotKyAgTC0+dG9wIC09IDI7ICAvKiByZW1vdmUgdGFi bGUgYW5kIHByb3RvdHlwZSBmcm9tIHRoZSBzdGFjayAqLwotIH0KLSAKLSAKZGlmZiAtLWdpdCBh L3BhdGNoZXMvbHVhLTUuMS40LzAxMDAtQWRkLWx1YS1zdXBwb3J0LXRvLXB0eGRpc3QtMS45OS1y ZW1vdmUtb2xkLU1ha2VmaWxlLnBhdGNoIGIvcGF0Y2hlcy9sdWEtNS4xLjQvMDEwMC1BZGQtbHVh LXN1cHBvcnQtdG8tcHR4ZGlzdC0xLjk5LXJlbW92ZS1vbGQtTWFrZWZpbGUucGF0Y2gKZGVsZXRl ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDA5MTE4YzEuLjAwMDAwMDAKLS0tIGEvcGF0Y2hlcy9s dWEtNS4xLjQvMDEwMC1BZGQtbHVhLXN1cHBvcnQtdG8tcHR4ZGlzdC0xLjk5LXJlbW92ZS1vbGQt TWFrZWZpbGUucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwxNTEgKzAsMCBAQAotRnJvbTogRXJ3 aW4gUm9sIDxlcndpbkBlcndpbnJvbC5jb20+Ci1EYXRlOiBGcmksIDkgRGVjIDIwMTEgMTE6MzI6 MTEgKzAxMDAKLVN1YmplY3Q6IFtQQVRDSF0gQWRkIGx1YSBzdXBwb3J0IHRvIHB0eGRpc3QgMS45 OTogcmVtb3ZlIG9sZCBNYWtlZmlsZQotCi1UaGlzIHBhdGNoIGFkZCBsdWEgc3VwcG9ydCB0byBw dHhkaXN0IDEuOTkuIEl0IGhhcyBhIG1lbnUgZW50cnkgdW5kZXIKLXNjcmlwdGluZyBsYW5ndWFn ZXMuIEFuZCBhIHBhdGNoIHRoYXQgbWFrZXMgaXQgcG9zc2libGUgdG8gdXNlIGF1dG9jb25mCi10 byBidWlsZC4KLQotVGhpcyBwYXJ0IG9mIHRoZSBwYXRjaCByZW1vdmVzIHRoZSBvbGQgTWFrZWZp bGUuCi0KLVNpZ25lZC1vZmYtYnk6IEVyd2luIFJvbCA8ZXJ3aW5AZXJ3aW5yb2wuY29tPgotU2ln bmVkLW9mZi1ieTogUm9iZXJ0IFNjaHdlYmVsIDxyLnNjaHdlYmVsQHBlbmd1dHJvbml4LmRlPgot LS0tCi0gTWFrZWZpbGUgfCAxMjggLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0gMSBmaWxlIGNoYW5nZWQsIDEyOCBkZWxldGlv bnMoLSkKLSBkZWxldGUgbW9kZSAxMDA2NDQgTWFrZWZpbGUKLQotZGlmZiAtLWdpdCBhL01ha2Vm aWxlIGIvTWFrZWZpbGUKLWRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAotaW5kZXggNmU3OGY2Ni4u MDAwMDAwMAotLS0tIGEvTWFrZWZpbGUKLSsrKyAvZGV2L251bGwKLUBAIC0xLDEyOCArMCwwIEBA Ci0tIyBtYWtlZmlsZSBmb3IgaW5zdGFsbGluZyBMdWEKLS0jIHNlZSBJTlNUQUxMIGZvciBpbnN0 YWxsYXRpb24gaW5zdHJ1Y3Rpb25zCi0tIyBzZWUgc3JjL01ha2VmaWxlIGFuZCBzcmMvbHVhY29u Zi5oIGZvciBmdXJ0aGVyIGN1c3RvbWl6YXRpb24KLS0KLS0jID09IENIQU5HRSBUSEUgU0VUVElO R1MgQkVMT1cgVE8gU1VJVCBZT1VSIEVOVklST05NRU5UID09PT09PT09PT09PT09PT09PT09PT09 Ci0tCi0tIyBZb3VyIHBsYXRmb3JtLiBTZWUgUExBVFMgZm9yIHBvc3NpYmxlIHZhbHVlcy4KLS1Q TEFUPSBub25lCi0tCi0tIyBXaGVyZSB0byBpbnN0YWxsLiBUaGUgaW5zdGFsbGF0aW9uIHN0YXJ0 cyBpbiB0aGUgc3JjIGFuZCBkb2MgZGlyZWN0b3JpZXMsCi0tIyBzbyB0YWtlIGNhcmUgaWYgSU5T VEFMTF9UT1AgaXMgbm90IGFuIGFic29sdXRlIHBhdGguCi0tSU5TVEFMTF9UT1A9IC91c3IvbG9j YWwKLS1JTlNUQUxMX0JJTj0gJChJTlNUQUxMX1RPUCkvYmluCi0tSU5TVEFMTF9JTkM9ICQoSU5T VEFMTF9UT1ApL2luY2x1ZGUKLS1JTlNUQUxMX0xJQj0gJChJTlNUQUxMX1RPUCkvbGliCi0tSU5T VEFMTF9NQU49ICQoSU5TVEFMTF9UT1ApL21hbi9tYW4xCi0tIwotLSMgWW91IHByb2JhYmx5IHdh bnQgdG8gbWFrZSBJTlNUQUxMX0xNT0QgYW5kIElOU1RBTExfQ01PRCBjb25zaXN0ZW50IHdpdGgK LS0jIExVQV9ST09ULCBMVUFfTERJUiwgYW5kIExVQV9DRElSIGluIGx1YWNvbmYuaCAoYW5kIGFs c28gd2l0aCBldGMvbHVhLnBjKS4KLS1JTlNUQUxMX0xNT0Q9ICQoSU5TVEFMTF9UT1ApL3NoYXJl L2x1YS8kVgotLUlOU1RBTExfQ01PRD0gJChJTlNUQUxMX1RPUCkvbGliL2x1YS8kVgotLQotLSMg SG93IHRvIGluc3RhbGwuIElmIHlvdXIgaW5zdGFsbCBwcm9ncmFtIGRvZXMgbm90IHN1cHBvcnQg Ii1wIiwgdGhlbiB5b3UKLS0jIG1heSBoYXZlIHRvIHJ1biByYW5saWIgb24gdGhlIGluc3RhbGxl ZCBsaWJsdWEuYSAoZG8gIm1ha2UgcmFubGliIikuCi0tSU5TVEFMTD0gaW5zdGFsbCAtcAotLUlO U1RBTExfRVhFQz0gJChJTlNUQUxMKSAtbSAwNzU1Ci0tSU5TVEFMTF9EQVRBPSAkKElOU1RBTEwp IC1tIDA2NDQKLS0jCi0tIyBJZiB5b3UgZG9uJ3QgaGF2ZSBpbnN0YWxsIHlvdSBjYW4gdXNlIGNw IGluc3RlYWQuCi0tIyBJTlNUQUxMPSBjcCAtcAotLSMgSU5TVEFMTF9FWEVDPSAkKElOU1RBTEwp Ci0tIyBJTlNUQUxMX0RBVEE9ICQoSU5TVEFMTCkKLS0KLS0jIFV0aWxpdGllcy4KLS1NS0RJUj0g bWtkaXIgLXAKLS1SQU5MSUI9IHJhbmxpYgotLQotLSMgPT0gRU5EIE9GIFVTRVIgU0VUVElOR1Mu IE5PIE5FRUQgVE8gQ0hBTkdFIEFOWVRISU5HIEJFTE9XIFRISVMgTElORSA9PT09PT09PT0KLS0K LS0jIENvbnZlbmllbmNlIHBsYXRmb3JtcyB0YXJnZXRzLgotLVBMQVRTPSBhaXggYW5zaSBic2Qg ZnJlZWJzZCBnZW5lcmljIGxpbnV4IG1hY29zeCBtaW5ndyBwb3NpeCBzb2xhcmlzCi0tCi0tIyBX aGF0IHRvIGluc3RhbGwuCi0tVE9fQklOPSBsdWEgbHVhYwotLVRPX0lOQz0gbHVhLmggbHVhY29u Zi5oIGx1YWxpYi5oIGxhdXhsaWIuaCAuLi9ldGMvbHVhLmhwcAotLVRPX0xJQj0gbGlibHVhLmEK LS1UT19NQU49IGx1YS4xIGx1YWMuMQotLQotLSMgTHVhIHZlcnNpb24gYW5kIHJlbGVhc2UuCi0t Vj0gNS4xCi0tUj0gNS4xLjQKLS0KLS1hbGw6CSQoUExBVCkKLS0KLS0kKFBMQVRTKSBjbGVhbjoK LS0JY2Qgc3JjICYmICQoTUFLRSkgJEAKLS0KLS10ZXN0OglkdW1teQotLQlzcmMvbHVhIHRlc3Qv aGVsbG8ubHVhCi0tCi0taW5zdGFsbDogZHVtbXkKLS0JY2Qgc3JjICYmICQoTUtESVIpICQoSU5T VEFMTF9CSU4pICQoSU5TVEFMTF9JTkMpICQoSU5TVEFMTF9MSUIpICQoSU5TVEFMTF9NQU4pICQo SU5TVEFMTF9MTU9EKSAkKElOU1RBTExfQ01PRCkKLS0JY2Qgc3JjICYmICQoSU5TVEFMTF9FWEVD KSAkKFRPX0JJTikgJChJTlNUQUxMX0JJTikKLS0JY2Qgc3JjICYmICQoSU5TVEFMTF9EQVRBKSAk KFRPX0lOQykgJChJTlNUQUxMX0lOQykKLS0JY2Qgc3JjICYmICQoSU5TVEFMTF9EQVRBKSAkKFRP X0xJQikgJChJTlNUQUxMX0xJQikKLS0JY2QgZG9jICYmICQoSU5TVEFMTF9EQVRBKSAkKFRPX01B TikgJChJTlNUQUxMX01BTikKLS0KLS1yYW5saWI6Ci0tCWNkIHNyYyAmJiBjZCAkKElOU1RBTExf TElCKSAmJiAkKFJBTkxJQikgJChUT19MSUIpCi0tCi0tbG9jYWw6Ci0tCSQoTUFLRSkgaW5zdGFs bCBJTlNUQUxMX1RPUD0uLgotLQotLW5vbmU6Ci0tCUBlY2hvICJQbGVhc2UgZG8iCi0tCUBlY2hv ICIgICBtYWtlIFBMQVRGT1JNIgotLQlAZWNobyAid2hlcmUgUExBVEZPUk0gaXMgb25lIG9mIHRo ZXNlOiIKLS0JQGVjaG8gIiAgICQoUExBVFMpIgotLQlAZWNobyAiU2VlIElOU1RBTEwgZm9yIGNv bXBsZXRlIGluc3RydWN0aW9ucy4iCi0tCi0tIyBtYWtlIG1heSBnZXQgY29uZnVzZWQgd2l0aCB0 ZXN0LyBhbmQgSU5TVEFMTCBpbiBhIGNhc2UtaW5zZW5zaXRpdmUgT1MKLS1kdW1teToKLS0KLS0j IGVjaG8gY29uZmlnIHBhcmFtZXRlcnMKLS1lY2hvOgotLQlAZWNobyAiIgotLQlAZWNobyAiVGhl c2UgYXJlIHRoZSBwYXJhbWV0ZXJzIGN1cnJlbnRseSBzZXQgaW4gc3JjL01ha2VmaWxlIHRvIGJ1 aWxkIEx1YSAkUjoiCi0tCUBlY2hvICIiCi0tCUBjZCBzcmMgJiYgJChNQUtFKSAtcyBlY2hvCi0t CUBlY2hvICIiCi0tCUBlY2hvICJUaGVzZSBhcmUgdGhlIHBhcmFtZXRlcnMgY3VycmVudGx5IHNl dCBpbiBNYWtlZmlsZSB0byBpbnN0YWxsIEx1YSAkUjoiCi0tCUBlY2hvICIiCi0tCUBlY2hvICJQ TEFUID0gJChQTEFUKSIKLS0JQGVjaG8gIklOU1RBTExfVE9QID0gJChJTlNUQUxMX1RPUCkiCi0t CUBlY2hvICJJTlNUQUxMX0JJTiA9ICQoSU5TVEFMTF9CSU4pIgotLQlAZWNobyAiSU5TVEFMTF9J TkMgPSAkKElOU1RBTExfSU5DKSIKLS0JQGVjaG8gIklOU1RBTExfTElCID0gJChJTlNUQUxMX0xJ QikiCi0tCUBlY2hvICJJTlNUQUxMX01BTiA9ICQoSU5TVEFMTF9NQU4pIgotLQlAZWNobyAiSU5T VEFMTF9MTU9EID0gJChJTlNUQUxMX0xNT0QpIgotLQlAZWNobyAiSU5TVEFMTF9DTU9EID0gJChJ TlNUQUxMX0NNT0QpIgotLQlAZWNobyAiSU5TVEFMTF9FWEVDID0gJChJTlNUQUxMX0VYRUMpIgot LQlAZWNobyAiSU5TVEFMTF9EQVRBID0gJChJTlNUQUxMX0RBVEEpIgotLQlAZWNobyAiIgotLQlA ZWNobyAiU2VlIGFsc28gc3JjL2x1YWNvbmYuaCAuIgotLQlAZWNobyAiIgotLQotLSMgZWNobyBw cml2YXRlIGNvbmZpZyBwYXJhbWV0ZXJzCi0tcGVjaG86Ci0tCUBlY2hvICJWID0gJChWKSIKLS0J QGVjaG8gIlIgPSAkKFIpIgotLQlAZWNobyAiVE9fQklOID0gJChUT19CSU4pIgotLQlAZWNobyAi VE9fSU5DID0gJChUT19JTkMpIgotLQlAZWNobyAiVE9fTElCID0gJChUT19MSUIpIgotLQlAZWNo byAiVE9fTUFOID0gJChUT19NQU4pIgotLQotLSMgZWNobyBjb25maWcgcGFyYW1ldGVycyBhcyBM dWEgY29kZQotLSMgdW5jb21tZW50IHRoZSBsYXN0IHNlZCBleHByZXNzaW9uIGlmIHlvdSB3YW50 IG5pbCBpbnN0ZWFkIG9mIGVtcHR5IHN0cmluZ3MKLS1sZWNobzoKLS0JQGVjaG8gIi0tIGluc3Rh bGxhdGlvbiBwYXJhbWV0ZXJzIGZvciBMdWEgJFIiCi0tCUBlY2hvICJWRVJTSU9OID0gJyRWJyIK LS0JQGVjaG8gIlJFTEVBU0UgPSAnJFInIgotLQlAJChNQUtFKSBlY2hvIHwgZ3JlcCA9IHwgc2Vk IC1lICdzLz0gLz0gIi8nIC1lICdzLyQkLyIvJyAjLWUgJ3MvIiIvbmlsLycKLS0JQGVjaG8gIi0t IEVPRiIKLS0KLS0jIGxpc3QgdGFyZ2V0cyB0aGF0IGRvIG5vdCBjcmVhdGUgZmlsZXMgKGJ1dCBu b3QgYWxsIG1ha2VzIHVuZGVyc3RhbmQgLlBIT05ZKQotLS5QSE9OWTogYWxsICQoUExBVFMpIGNs ZWFuIHRlc3QgaW5zdGFsbCBsb2NhbCBub25lIGR1bW15IGVjaG8gcGVjaG8gbGVjaG8KLS0KLS0j IChlbmQgb2YgTWFrZWZpbGUpCmRpZmYgLS1naXQgYS9wYXRjaGVzL2x1YS01LjEuNC8wMTAxLUFk ZC1sdWEtc3VwcG9ydC10by1wdHhkaXN0LTEuOTktYWRkLWF1dG9jb25mLWZpbGVzLnBhdGNoIGIv cGF0Y2hlcy9sdWEtNS4xLjQvMDEwMS1BZGQtbHVhLXN1cHBvcnQtdG8tcHR4ZGlzdC0xLjk5LWFk ZC1hdXRvY29uZi1maWxlcy5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZjI3 YTYyZS4uMDAwMDAwMAotLS0gYS9wYXRjaGVzL2x1YS01LjEuNC8wMTAxLUFkZC1sdWEtc3VwcG9y dC10by1wdHhkaXN0LTEuOTktYWRkLWF1dG9jb25mLWZpbGVzLnBhdGNoCisrKyAvZGV2L251bGwK QEAgLTEsOTE4ICswLDAgQEAKLUZyb206IEVyd2luIFJvbCA8ZXJ3aW5AZXJ3aW5yb2wuY29tPgot RGF0ZTogRnJpLCA5IERlYyAyMDExIDExOjMyOjEyICswMTAwCi1TdWJqZWN0OiBbUEFUQ0hdIEFk ZCBsdWEgc3VwcG9ydCB0byBwdHhkaXN0IDEuOTk6IGFkZCBhdXRvY29uZiBmaWxlcwotCi1UaGlz IHBhdGNoIGFkZCBsdWEgc3VwcG9ydCB0byBwdHhkaXN0IDEuOTkuIEl0IGhhcyBhIG1lbnUgZW50 cnkgdW5kZXIKLXNjcmlwdGluZyBsYW5ndWFnZXMuIEFuZCBhIHBhdGNoIHRoYXQgbWFrZXMgaXQg cG9zc2libGUgdG8gdXNlIGF1dG9jb25mCi10byBidWlsZC4KLQotVGhpcyBwYXJ0IG9mIHRoZSBw YXRjaCBhZGRzIHRoZSBhdXRvY29uZiBmaWxlcy4KLQotU2lnbmVkLW9mZi1ieTogRXJ3aW4gUm9s IDxlcndpbkBlcndpbnJvbC5jb20+Ci1TaWduZWQtb2ZmLWJ5OiBSb2JlcnQgU2Nod2ViZWwgPHIu c2Nod2ViZWxAcGVuZ3V0cm9uaXguZGU+Ci0tLS0KLSBjb25maWd1cmUuYWMgICAgICAgICAgICAg IHwgIDcwICsrKysrCi0gZXRjL2x1YS5wYy5pbiAgICAgICAgICAgICB8ICAzMiArKwotIHNyYy9s dWFjb25mLmgudGVtcGxhdGUuaW4gfCA3NzcgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKwotIDMgZmlsZXMgY2hhbmdlZCwgODc5IGluc2VydGlvbnMoKykKLSBj cmVhdGUgbW9kZSAxMDA2NDQgY29uZmlndXJlLmFjCi0gY3JlYXRlIG1vZGUgMTAwNjQ0IGV0Yy9s dWEucGMuaW4KLSBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjL2x1YWNvbmYuaC50ZW1wbGF0ZS5pbgot Ci1kaWZmIC0tZ2l0IGEvY29uZmlndXJlLmFjIGIvY29uZmlndXJlLmFjCi1uZXcgZmlsZSBtb2Rl IDEwMDY0NAotaW5kZXggMDAwMDAwMC4uZDg3OWE4NgotLS0tIC9kZXYvbnVsbAotKysrIGIvY29u ZmlndXJlLmFjCi1AQCAtMCwwICsxLDcwIEBACi0rQUNfUFJFUkVRKFsyLjY3XSkKLStBQ19JTklU KFtBdXRvdG9vbGl6ZWQgTHVhXSxbNS4xLjRdLFtdLFtsdWEtYXRdKQotKwotK0FDX0NPTkZJR19N QUNST19ESVIoW200XSkKLSsKLStBQ19DT05GSUdfSEVBREVSUyhbY29uZmlnLmhdKQotK0FDX0NP TkZJR19TUkNESVIoW3NyYy9sYXBpLmNdKQotKwotK0FNX0lOSVRfQVVUT01BS0UoWzEuOSBmb3Jl aWduXSkKLSsKLStBQ19QUk9HX0NDCi0rTFRfSU5JVAotKwotK0FDX0FSR19XSVRIKAotKyAgW3Jl YWRsaW5lXSwKLSsgIFtBU19IRUxQX1NUUklORyhbLS13aXRoLXJlYWRsaW5lXSxbVXNlIHJlYWRs aW5lIGZvciBpbnRlcnByZXRlciBpbnB1dCBbZGVmYXVsdD15ZXNdXSldLAotKyAgW3VzZV9yZWFk bGluZT0kd2l0aHZhbF0sCi0rICBbdXNlX3JlYWRsaW5lPXllc10KLSspCi0rCi0rTFVBX0xJQlM9 Ii1sbSIKLSsKLSsjIENoZWNrIGZvciByZWFkbGluZQotK1JFQURMSU5FX0RFRlM9IiN1bmRlZiBM VUFfVVNFX1JFQURMSU5FIgotK2lmIHRlc3QgIngkdXNlX3JlYWRsaW5lIiA9PSAieHllcyI7IHRo ZW4KLSsgIEFDX0NIRUNLX0xJQihbcmVhZGxpbmVdLCBbcmVhZGxpbmVdLCBbXSwgW3VzZV9yZWFk bGluZT1ub10pCi0rICBBQ19DSEVDS19IRUFERVJTKFtyZWFkbGluZS9yZWFkbGluZS5oIHJlYWRs aW5lL2hpc3RvcnkuaF0sIFtdLCBbdXNlX3JlYWRsaW5lPW5vXSkKLSsgIGlmIHRlc3QgIngkdXNl X3JlYWRsaW5lIiA9PSAieG5vIjsgdGhlbgotKyAgICBBQ19NU0dfV0FSTihbcmVhZGxpbmUgaGVh ZGVycyBjb3VsZCBub3QgYmUgZm91bmQsIGRpc2FibGluZyByZWFkbGluZSBzdXBwb3J0XSkKLSsg IGVsc2UKLSsgICAgUkVBRExJTkVfREVGUz0iI2RlZmluZSBMVUFfVVNFX1JFQURMSU5FIgotKyAg ICBMVUFfTElCUz0iJExVQV9MSUJTIC1scmVhZGxpbmUiCi0rICBmaQotK2ZpCi0rQUNfU1VCU1Qo UkVBRExJTkVfREVGUykKLSsKLStjYXNlICIkaG9zdCIgaW4KLSsgICotbWluZ3cqKSAgdXNlX29z PXdpbjMyICA7OwotKyAgKi1kYXJ3aW4qKSB1c2Vfb3M9bWFjb3N4IDs7Ci0rICAqKSAgICAgICAg IHVzZV9vcz1wb3NpeCAgOzsKLStlc2FjCi0rCi0rUE9TSVhfREVGUz0iI3VuZGVmIExVQV9VU0Vf UE9TSVgiCi0rTFVBX0RMX0RFRlM9IiN1bmRlZiBMVUFfVVNFX0RMT1BFTiIKLStMVUFfQlVJTERf QVNfRExMX0RFRlM9IiN1bmRlZiBMVUFfQlVJTERfQVNfRExMIgotKwotK2lmIHRlc3QgIngkdXNl X29zIiA9PSAieHdpbjMyIjsgdGhlbgotKyAgTFVBX0JVSUxEX0FTX0RMTF9ERUZTPSIjZGVmaW5l IExVQV9CVUlMRF9BU19ETEwiCi0rZWxpZiB0ZXN0ICJ4JHVzZV9vcyIgPT0gInhtYWNvc3giOyB0 aGVuCi0rICBQT1NJWF9ERUZTPSIjZGVmaW5lIExVQV9VU0VfUE9TSVgiCi0rICBMVUFfRExfREVG Uz0iI2RlZmluZSBMVUFfRExfRFlMRCIKLStlbGlmIHRlc3QgIngkdXNlX29zIiA9PSAieHBvc2l4 IjsgdGhlbgotKyAgUE9TSVhfREVGUz0iI2RlZmluZSBMVUFfVVNFX1BPU0lYIgotKyAgTFVBX0RM X0RFRlM9IiNkZWZpbmUgTFVBX0RMX0RMT1BFTiIKLSsgIExVQV9MSUJTPSIkTFVBX0xJQlMgLWxk bCIKLStmaQotK0FDX1NVQlNUKFBPU0lYX0RFRlMpCi0rQUNfU1VCU1QoTFVBX0RMX0RFRlMpCi0r QUNfU1VCU1QoTFVBX0JVSUxEX0FTX0RMTF9ERUZTKQotKwotK0FDX1NVQlNUKExVQV9MSUJTKQot KwotK0FDX0NPTkZJR19GSUxFUyhbTWFrZWZpbGUKLSsgICAgICAgICAgICAgICAgIHNyYy9NYWtl ZmlsZQotKyAgICAgICAgICAgICAgICAgc3JjL2x1YWNvbmYuaC50ZW1wbGF0ZQotKyAgICAgICAg ICAgICAgICAgZXRjL01ha2VmaWxlCi0rICAgICAgICAgICAgICAgICBldGMvbHVhLnBjCi0rICAg ICAgICAgICAgICAgICBkb2MvTWFrZWZpbGUKLSsJCSB0ZXN0L01ha2VmaWxlXSkKLStBQ19PVVRQ VVQKLWRpZmYgLS1naXQgYS9ldGMvbHVhLnBjLmluIGIvZXRjL2x1YS5wYy5pbgotbmV3IGZpbGUg bW9kZSAxMDA2NDQKLWluZGV4IDAwMDAwMDAuLjdmMzNjZmYKLS0tLSAvZGV2L251bGwKLSsrKyBi L2V0Yy9sdWEucGMuaW4KLUBAIC0wLDAgKzEsMzIgQEAKLSsjIGx1YS5wYyAtLSBwa2ctY29uZmln IGRhdGEgZm9yIEx1YQotKwotKyMgdmFycyBmcm9tIGluc3RhbGwgTWFrZWZpbGUKLSsKLSsjIGdy ZXAgJ15WPScgLi4vTWFrZWZpbGUKLStWPSA1LjEKLSsjIGdyZXAgJ15SPScgLi4vTWFrZWZpbGUK LStSPSBAVkVSU0lPTkAKLSsKLSsjIGdyZXAgJ15JTlNUQUxMXy4qPScgLi4vTWFrZWZpbGUgfCBz ZWQgJ3MvSU5TVEFMTF9UT1AvcHJlZml4LycKLSsjIHBsdXMgYXV0b3Rvb2xpZmljYXRpb24KLStw cmVmaXg9IEBwcmVmaXhACi0rSU5TVEFMTF9CSU49ICR7cHJlZml4fS9iaW4KLStJTlNUQUxMX0lO Qz0gJHtwcmVmaXh9L2luY2x1ZGUKLStJTlNUQUxMX0xJQj0gJHtwcmVmaXh9L2xpYgotK0lOU1RB TExfTUFOPSAke3ByZWZpeH0vbWFuL21hbjEKLStJTlNUQUxMX0xNT0Q9ICR7cHJlZml4fS9zaGFy ZS9sdWEvJHtWfQotK0lOU1RBTExfQ01PRD0gJHtwcmVmaXh9L2xpYi9sdWEvJHtWfQotKwotKyMg Y2Fub25pY2FsIHZhcnMKLStleGVjX3ByZWZpeD0ke3ByZWZpeH0KLStsaWJkaXI9JHtleGVjX3By ZWZpeH0vbGliCi0raW5jbHVkZWRpcj0ke3ByZWZpeH0vaW5jbHVkZQotKwotK05hbWU6IEx1YQot K0Rlc2NyaXB0aW9uOiBBbiBFeHRlbnNpYmxlIEV4dGVuc2lvbiBMYW5ndWFnZQotK1ZlcnNpb246 ICR7Un0KLStSZXF1aXJlczogCi0rTGliczogLUwke2xpYmRpcn0gLWxsdWEgLWxtCi0rQ2ZsYWdz OiAtSSR7aW5jbHVkZWRpcn0KLSsKLSsjIChlbmQgb2YgbHVhLnBjKQotZGlmZiAtLWdpdCBhL3Ny Yy9sdWFjb25mLmgudGVtcGxhdGUuaW4gYi9zcmMvbHVhY29uZi5oLnRlbXBsYXRlLmluCi1uZXcg ZmlsZSBtb2RlIDEwMDY0NAotaW5kZXggMDAwMDAwMC4uNDFiMjM0ZAotLS0tIC9kZXYvbnVsbAot KysrIGIvc3JjL2x1YWNvbmYuaC50ZW1wbGF0ZS5pbgotQEAgLTAsMCArMSw3NzcgQEAKLSsvKgot KyoqICRJZDogbHVhY29uZi5oLHYgMS44MmEgMjAwNi8wNC8xMCAxODoyNzoyMyByb2JlcnRvIEV4 cCAkCi0rKiogQ29uZmlndXJhdGlvbiBmaWxlIGZvciBMdWEKLSsqKiBTZWUgQ29weXJpZ2h0IE5v dGljZSBpbiBsdWEuaAotKyovCi0rCi0rCi0rI2lmbmRlZiBsY29uZmlnX2gKLSsjZGVmaW5lIGxj b25maWdfaAotKwotKyNpbmNsdWRlIDxsaW1pdHMuaD4KLSsjaW5jbHVkZSA8c3RkZGVmLmg+Ci0r Ci0rLyoKLSsqKiA9PT09PT09PT09PT09PT09PQotKyoqIEF1dG90b29saWZpY2F0aW9uCi0rKiog PT09PT09PT09PT09PT09PT0KLSsqLwotKwotKy8qKiBhdXRvdG9vbGl6ZSBwYXRjaCAqKi8KLStA UE9TSVhfREVGU0AKLStATFVBX0RMX0RFRlNACi0rQExVQV9CVUlMRF9BU19ETExfREVGU0AKLStA UkVBRExJTkVfREVGU0AKLSsvKiogYXV0b3Rvb2xpemUgcGF0Y2ggKiovCi0rCi0rLyoKLSsqKiA9 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT0KLSsqKiBTZWFyY2ggZm9yICJAQCIgdG8gZmluZCBhbGwgY29uZmlndXJhYmxlIGRl ZmluaXRpb25zLgotKyoqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT0KLSsqLwotKwotKwotKy8qCi0rQEAgTFVBX0FOU0kg Y29udHJvbHMgdGhlIHVzZSBvZiBub24tYW5zaSBmZWF0dXJlcy4KLSsqKiBDSEFOR0UgaXQgKGRl ZmluZSBpdCkgaWYgeW91IHdhbnQgTHVhIHRvIGF2b2lkIHRoZSB1c2Ugb2YgYW55Ci0rKiogbm9u LWFuc2kgZmVhdHVyZSBvciBsaWJyYXJ5LgotKyovCi0rI2lmIGRlZmluZWQoX19TVFJJQ1RfQU5T SV9fKQotKyNkZWZpbmUgTFVBX0FOU0kKLSsjZW5kaWYKLSsKLSsKLSsjaWYgIWRlZmluZWQoTFVB X0FOU0kpICYmIGRlZmluZWQoX1dJTjMyKQotKyNkZWZpbmUgTFVBX1dJTgotKyNlbmRpZgotKwot KyNpZiBkZWZpbmVkKExVQV9VU0VfTElOVVgpCi0rI2RlZmluZSBMVUFfVVNFX1BPU0lYCi0rI2Rl ZmluZSBMVUFfVVNFX0RMT1BFTgkJLyogbmVlZHMgYW4gZXh0cmEgbGlicmFyeTogLWxkbCAqLwot KyNkZWZpbmUgTFVBX1VTRV9SRUFETElORQkvKiBuZWVkcyBzb21lIGV4dHJhIGxpYnJhcmllcyAq LwotKyNlbmRpZgotKwotKyNpZiBkZWZpbmVkKExVQV9VU0VfTUFDT1NYKQotKyNkZWZpbmUgTFVB X1VTRV9QT1NJWAotKyNkZWZpbmUgTFVBX0RMX0RZTEQJCS8qIGRvZXMgbm90IG5lZWQgZXh0cmEg bGlicmFyeSAqLwotKyNlbmRpZgotKwotKwotKwotKy8qCi0rQEAgTFVBX1VTRV9QT1NJWCBpbmNs dWRlcyBhbGwgZnVuY3Rpb25hbGxpdHkgbGlzdGVkIGFzIFgvT3BlbiBTeXN0ZW0KLStAKiBJbnRl cmZhY2VzIEV4dGVuc2lvbiAoWFNJKS4KLSsqKiBDSEFOR0UgaXQgKGRlZmluZSBpdCkgaWYgeW91 ciBzeXN0ZW0gaXMgWFNJIGNvbXBhdGlibGUuCi0rKi8KLSsjaWYgZGVmaW5lZChMVUFfVVNFX1BP U0lYKQotKyNkZWZpbmUgTFVBX1VTRV9NS1NURU1QCi0rI2RlZmluZSBMVUFfVVNFX0lTQVRUWQot KyNkZWZpbmUgTFVBX1VTRV9QT1BFTgotKyNkZWZpbmUgTFVBX1VTRV9VTE9OR0pNUAotKyNlbmRp ZgotKwotKwotKy8qCi0rQEAgTFVBX1BBVEggYW5kIExVQV9DUEFUSCBhcmUgdGhlIG5hbWVzIG9m IHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMgdGhhdAotK0AqIEx1YSBjaGVjayB0byBzZXQgaXRz IHBhdGhzLgotK0BAIExVQV9JTklUIGlzIHRoZSBuYW1lIG9mIHRoZSBlbnZpcm9ubWVudCB2YXJp YWJsZSB0aGF0IEx1YQotK0AqIGNoZWNrcyBmb3IgaW5pdGlhbGl6YXRpb24gY29kZS4KLSsqKiBD SEFOR0UgdGhlbSBpZiB5b3Ugd2FudCBkaWZmZXJlbnQgbmFtZXMuCi0rKi8KLSsjZGVmaW5lIExV QV9QQVRIICAgICAgICAiTFVBX1BBVEgiCi0rI2RlZmluZSBMVUFfQ1BBVEggICAgICAgIkxVQV9D UEFUSCIKLSsjZGVmaW5lIExVQV9JTklUCSJMVUFfSU5JVCIKLSsKLSsKLSsvKgotK0BAIExVQV9Q QVRIX0RFRkFVTFQgaXMgdGhlIGRlZmF1bHQgcGF0aCB0aGF0IEx1YSB1c2VzIHRvIGxvb2sgZm9y Ci0rQCogTHVhIGxpYnJhcmllcy4KLStAQCBMVUFfQ1BBVEhfREVGQVVMVCBpcyB0aGUgZGVmYXVs dCBwYXRoIHRoYXQgTHVhIHVzZXMgdG8gbG9vayBmb3IKLStAKiBDIGxpYnJhcmllcy4KLSsqKiBD SEFOR0UgdGhlbSBpZiB5b3VyIG1hY2hpbmUgaGFzIGEgbm9uLWNvbnZlbnRpb25hbCBkaXJlY3Rv cnkKLSsqKiBoaWVyYXJjaHkgb3IgaWYgeW91IHdhbnQgdG8gaW5zdGFsbCB5b3VyIGxpYnJhcmll cyBpbgotKyoqIG5vbi1jb252ZW50aW9uYWwgZGlyZWN0b3JpZXMuCi0rKi8KLSsjaWYgZGVmaW5l ZChfV0lOMzIpCi0rLyoKLSsqKiBJbiBXaW5kb3dzLCBhbnkgZXhjbGFtYXRpb24gbWFyayAoJyEn KSBpbiB0aGUgcGF0aCBpcyByZXBsYWNlZCBieSB0aGUKLSsqKiBwYXRoIG9mIHRoZSBkaXJlY3Rv cnkgb2YgdGhlIGV4ZWN1dGFibGUgZmlsZSBvZiB0aGUgY3VycmVudCBwcm9jZXNzLgotKyovCi0r I2RlZmluZSBMVUFfTERJUgkiIVxcbHVhXFwiCi0rI2RlZmluZSBMVUFfQ0RJUgkiIVxcIgotKyNk ZWZpbmUgTFVBX1BBVEhfREVGQVVMVCAgXAotKwkJIi5cXD8ubHVhOyIgIExVQV9MRElSIj8ubHVh OyIgIExVQV9MRElSIj9cXGluaXQubHVhOyIgXAotKwkJICAgICAgICAgICAgIExVQV9DRElSIj8u bHVhOyIgIExVQV9DRElSIj9cXGluaXQubHVhIgotKyNkZWZpbmUgTFVBX0NQQVRIX0RFRkFVTFQg XAotKwkiLlxcPy5kbGw7IiAgTFVBX0NESVIiPy5kbGw7IiBMVUFfQ0RJUiJsb2FkYWxsLmRsbCIK LSsKLSsjZWxzZQotKwotKy8qKiBhdXRvdG9vbGl6ZSBwYXRjaCAqKi8KLSsjZGVmaW5lIExVQV9M RElSCSIlbHVhX2RhdGFkaXIlL2x1YS81LjEvIgotKyNkZWZpbmUgTFVBX0NESVIJIiVsdWFfbGli ZGlyJS9sdWEvNS4xLyIKLSsvKiogYXV0b3Rvb2xpemUgcGF0Y2ggKiovCi0rCi0rI2RlZmluZSBM VUFfUEFUSF9ERUZBVUxUICBcCi0rCQkiLi8/Lmx1YTsiICBMVUFfTERJUiI/Lmx1YTsiICBMVUFf TERJUiI/L2luaXQubHVhOyIgXAotKwkJICAgICAgICAgICAgTFVBX0NESVIiPy5sdWE7IiAgTFVB X0NESVIiPy9pbml0Lmx1YSIKLSsjZGVmaW5lIExVQV9DUEFUSF9ERUZBVUxUIFwKLSsJIi4vPy5z bzsiICBMVUFfQ0RJUiI/LnNvOyIgTFVBX0NESVIibG9hZGFsbC5zbyIKLSsjZW5kaWYKLSsKLSsK LSsvKgotK0BAIExVQV9ESVJTRVAgaXMgdGhlIGRpcmVjdG9yeSBzZXBhcmF0b3IgKGZvciBzdWJt b2R1bGVzKS4KLSsqKiBDSEFOR0UgaXQgaWYgeW91ciBtYWNoaW5lIGRvZXMgbm90IHVzZSAiLyIg YXMgdGhlIGRpcmVjdG9yeSBzZXBhcmF0b3IKLSsqKiBhbmQgaXMgbm90IFdpbmRvd3MuIChPbiBX aW5kb3dzIEx1YSBhdXRvbWF0aWNhbGx5IHVzZXMgIlwiLikKLSsqLwotKyNpZiBkZWZpbmVkKF9X SU4zMikKLSsjZGVmaW5lIExVQV9ESVJTRVAJIlxcIgotKyNlbHNlCi0rI2RlZmluZSBMVUFfRElS U0VQCSIvIgotKyNlbmRpZgotKwotKwotKy8qCi0rQEAgTFVBX1BBVEhTRVAgaXMgdGhlIGNoYXJh Y3RlciB0aGF0IHNlcGFyYXRlcyB0ZW1wbGF0ZXMgaW4gYSBwYXRoLgotK0BAIExVQV9QQVRIX01B UksgaXMgdGhlIHN0cmluZyB0aGF0IG1hcmtzIHRoZSBzdWJzdGl0dXRpb24gcG9pbnRzIGluIGEK LStAKiB0ZW1wbGF0ZS4KLStAQCBMVUFfRVhFQ0RJUiBpbiBhIFdpbmRvd3MgcGF0aCBpcyByZXBs YWNlZCBieSB0aGUgZXhlY3V0YWJsZSdzCi0rQCogZGlyZWN0b3J5LgotK0BAIExVQV9JR01BUksg aXMgYSBtYXJrIHRvIGlnbm9yZSBhbGwgYmVmb3JlIGl0IHdoZW4gYnVsZGluZyB0aGUKLStAKiBs dWFvcGVuXyBmdW5jdGlvbiBuYW1lLgotKyoqIENIQU5HRSB0aGVtIGlmIGZvciBzb21lIHJlYXNv biB5b3VyIHN5c3RlbSBjYW5ub3QgdXNlIHRob3NlCi0rKiogY2hhcmFjdGVycy4gKEUuZy4sIGlm IG9uZSBvZiB0aG9zZSBjaGFyYWN0ZXJzIGlzIGEgY29tbW9uIGNoYXJhY3RlcgotKyoqIGluIGZp bGUvZGlyZWN0b3J5IG5hbWVzLikgUHJvYmFibHkgeW91IGRvIG5vdCBuZWVkIHRvIGNoYW5nZSB0 aGVtLgotKyovCi0rI2RlZmluZSBMVUFfUEFUSFNFUAkiOyIKLSsjZGVmaW5lIExVQV9QQVRIX01B UksJIj8iCi0rI2RlZmluZSBMVUFfRVhFQ0RJUgkiISIKLSsjZGVmaW5lIExVQV9JR01BUksJIi0i Ci0rCi0rCi0rLyoKLStAQCBMVUFfSU5URUdFUiBpcyB0aGUgaW50ZWdyYWwgdHlwZSB1c2VkIGJ5 IGx1YV9wdXNoaW50ZWdlci9sdWFfdG9pbnRlZ2VyLgotKyoqIENIQU5HRSB0aGF0IGlmIHB0cmRp ZmZfdCBpcyBub3QgYWRlcXVhdGUgb24geW91ciBtYWNoaW5lLiAoT24gbW9zdAotKyoqIG1hY2hp bmVzLCBwdHJkaWZmX3QgZ2l2ZXMgYSBnb29kIGNob2ljZSBiZXR3ZWVuIGludCBvciBsb25nLikK LSsqLwotKyNkZWZpbmUgTFVBX0lOVEVHRVIJcHRyZGlmZl90Ci0rCi0rCi0rLyoKLStAQCBMVUFf QVBJIGlzIGEgbWFyayBmb3IgYWxsIGNvcmUgQVBJIGZ1bmN0aW9ucy4KLStAQCBMVUFMSUJfQVBJ IGlzIGEgbWFyayBmb3IgYWxsIHN0YW5kYXJkIGxpYnJhcnkgZnVuY3Rpb25zLgotKyoqIENIQU5H RSB0aGVtIGlmIHlvdSBuZWVkIHRvIGRlZmluZSB0aG9zZSBmdW5jdGlvbnMgaW4gc29tZSBzcGVj aWFsIHdheS4KLSsqKiBGb3IgaW5zdGFuY2UsIGlmIHlvdSB3YW50IHRvIGNyZWF0ZSBvbmUgV2lu ZG93cyBETEwgd2l0aCB0aGUgY29yZSBhbmQKLSsqKiB0aGUgbGlicmFyaWVzLCB5b3UgbWF5IHdh bnQgdG8gdXNlIHRoZSBmb2xsb3dpbmcgZGVmaW5pdGlvbiAoZGVmaW5lCi0rKiogTFVBX0JVSUxE X0FTX0RMTCB0byBnZXQgaXQpLgotKyovCi0rI2lmIGRlZmluZWQoTFVBX0JVSUxEX0FTX0RMTCkK LSsKLSsjaWYgZGVmaW5lZChMVUFfQ09SRSkgfHwgZGVmaW5lZChMVUFfTElCKQotKyNkZWZpbmUg TFVBX0FQSSBfX2RlY2xzcGVjKGRsbGV4cG9ydCkKLSsjZWxzZQotKyNkZWZpbmUgTFVBX0FQSSBf X2RlY2xzcGVjKGRsbGltcG9ydCkKLSsjZW5kaWYKLSsKLSsjZWxzZQotKwotKyNkZWZpbmUgTFVB X0FQSQkJZXh0ZXJuCi0rCi0rI2VuZGlmCi0rCi0rLyogbW9yZSBvZnRlbiB0aGFuIG5vdCB0aGUg bGlicyBnbyB0b2dldGhlciB3aXRoIHRoZSBjb3JlICovCi0rI2RlZmluZSBMVUFMSUJfQVBJCUxV QV9BUEkKLSsKLSsKLSsvKgotK0BAIExVQUlfRlVOQyBpcyBhIG1hcmsgZm9yIGFsbCBleHRlcm4g ZnVuY3Rpb25zIHRoYXQgYXJlIG5vdCB0byBiZQotK0AqIGV4cG9ydGVkIHRvIG91dHNpZGUgbW9k dWxlcy4KLStAQCBMVUFJX0RBVEEgaXMgYSBtYXJrIGZvciBhbGwgZXh0ZXJuIChjb25zdCkgdmFy aWFibGVzIHRoYXQgYXJlIG5vdCB0bwotK0AqIGJlIGV4cG9ydGVkIHRvIG91dHNpZGUgbW9kdWxl cy4KLSsqKiBDSEFOR0UgdGhlbSBpZiB5b3UgbmVlZCB0byBtYXJrIHRoZW0gaW4gc29tZSBzcGVj aWFsIHdheS4gRWxmL2djYwotKyoqICh2ZXJzaW9ucyAzLjIgYW5kIGxhdGVyKSBtYXJrIHRoZW0g YXMgImhpZGRlbiIgdG8gb3B0aW1pemUgYWNjZXNzCi0rKiogd2hlbiBMdWEgaXMgY29tcGlsZWQg YXMgYSBzaGFyZWQgbGlicmFyeS4KLSsqLwotKyNpZiBkZWZpbmVkKGx1YWFsbF9jKQotKyNkZWZp bmUgTFVBSV9GVU5DCXN0YXRpYwotKyNkZWZpbmUgTFVBSV9EQVRBCS8qIGVtcHR5ICovCi0rCi0r I2VsaWYgZGVmaW5lZChfX0dOVUNfXykgJiYgKChfX0dOVUNfXyoxMDAgKyBfX0dOVUNfTUlOT1Jf XykgPj0gMzAyKSAmJiBcCi0rICAgICAgZGVmaW5lZChfX0VMRl9fKQotKyNkZWZpbmUgTFVBSV9G VU5DCV9fYXR0cmlidXRlX18oKHZpc2liaWxpdHkoImhpZGRlbiIpKSkgZXh0ZXJuCi0rI2RlZmlu ZSBMVUFJX0RBVEEJTFVBSV9GVU5DCi0rCi0rI2Vsc2UKLSsjZGVmaW5lIExVQUlfRlVOQwlleHRl cm4KLSsjZGVmaW5lIExVQUlfREFUQQlleHRlcm4KLSsjZW5kaWYKLSsKLSsKLSsKLSsvKgotK0BA IExVQV9RTCBkZXNjcmliZXMgaG93IGVycm9yIG1lc3NhZ2VzIHF1b3RlIHByb2dyYW0gZWxlbWVu dHMuCi0rKiogQ0hBTkdFIGl0IGlmIHlvdSB3YW50IGEgZGlmZmVyZW50IGFwcGVhcmFuY2UuCi0r Ki8KLSsjZGVmaW5lIExVQV9RTCh4KQkiJyIgeCAiJyIKLSsjZGVmaW5lIExVQV9RUwkJTFVBX1FM KCIlcyIpCi0rCi0rCi0rLyoKLStAQCBMVUFfSURTSVpFIGdpdmVzIHRoZSBtYXhpbXVtIHNpemUg Zm9yIHRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgc291cmNlCi0rQCogb2YgYSBmdW5jdGlvbiBpbiBk ZWJ1ZyBpbmZvcm1hdGlvbi4KLSsqKiBDSEFOR0UgaXQgaWYgeW91IHdhbnQgYSBkaWZmZXJlbnQg c2l6ZS4KLSsqLwotKyNkZWZpbmUgTFVBX0lEU0laRQk2MAotKwotKwotKy8qCi0rKiogez09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PQotKyoqIFN0YW5kLWFsb25lIGNvbmZpZ3VyYXRpb24KLSsqKiA9PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0rKi8K LSsKLSsjaWYgZGVmaW5lZChsdWFfYykgfHwgZGVmaW5lZChsdWFhbGxfYykKLSsKLSsvKgotK0BA IGx1YV9zdGRpbl9pc190dHkgZGV0ZWN0cyB3aGV0aGVyIHRoZSBzdGFuZGFyZCBpbnB1dCBpcyBh ICd0dHknICh0aGF0Ci0rQCogaXMsIHdoZXRoZXIgd2UncmUgcnVubmluZyBsdWEgaW50ZXJhY3Rp dmVseSkuCi0rKiogQ0hBTkdFIGl0IGlmIHlvdSBoYXZlIGEgYmV0dGVyIGRlZmluaXRpb24gZm9y IG5vbi1QT1NJWC9ub24tV2luZG93cwotKyoqIHN5c3RlbXMuCi0rKi8KLSsjaWYgZGVmaW5lZChM VUFfVVNFX0lTQVRUWSkKLSsjaW5jbHVkZSA8dW5pc3RkLmg+Ci0rI2RlZmluZSBsdWFfc3RkaW5f aXNfdHR5KCkJaXNhdHR5KDApCi0rI2VsaWYgZGVmaW5lZChMVUFfV0lOKQotKyNpbmNsdWRlIDxp by5oPgotKyNpbmNsdWRlIDxzdGRpby5oPgotKyNkZWZpbmUgbHVhX3N0ZGluX2lzX3R0eSgpCV9p c2F0dHkoX2ZpbGVubyhzdGRpbikpCi0rI2Vsc2UKLSsjZGVmaW5lIGx1YV9zdGRpbl9pc190dHko KQkxICAvKiBhc3N1bWUgc3RkaW4gaXMgYSB0dHkgKi8KLSsjZW5kaWYKLSsKLSsKLSsvKgotK0BA IExVQV9QUk9NUFQgaXMgdGhlIGRlZmF1bHQgcHJvbXB0IHVzZWQgYnkgc3RhbmQtYWxvbmUgTHVh LgotK0BAIExVQV9QUk9NUFQyIGlzIHRoZSBkZWZhdWx0IGNvbnRpbnVhdGlvbiBwcm9tcHQgdXNl ZCBieSBzdGFuZC1hbG9uZSBMdWEuCi0rKiogQ0hBTkdFIHRoZW0gaWYgeW91IHdhbnQgZGlmZmVy ZW50IHByb21wdHMuIChZb3UgY2FuIGFsc28gY2hhbmdlIHRoZQotKyoqIHByb21wdHMgZHluYW1p Y2FsbHksIGFzc2lnbmluZyB0byBnbG9iYWxzIF9QUk9NUFQvX1BST01QVDIuKQotKyovCi0rI2Rl ZmluZSBMVUFfUFJPTVBUCQkiPiAiCi0rI2RlZmluZSBMVUFfUFJPTVBUMgkJIj4+ICIKLSsKLSsK LSsvKgotK0BAIExVQV9QUk9HTkFNRSBpcyB0aGUgZGVmYXVsdCBuYW1lIGZvciB0aGUgc3RhbmQt YWxvbmUgTHVhIHByb2dyYW0uCi0rKiogQ0hBTkdFIGl0IGlmIHlvdXIgc3RhbmQtYWxvbmUgaW50 ZXJwcmV0ZXIgaGFzIGEgZGlmZmVyZW50IG5hbWUgYW5kCi0rKiogeW91ciBzeXN0ZW0gaXMgbm90 IGFibGUgdG8gZGV0ZWN0IHRoYXQgbmFtZSBhdXRvbWF0aWNhbGx5LgotKyovCi0rI2RlZmluZSBM VUFfUFJPR05BTUUJCSJsdWEiCi0rCi0rCi0rLyoKLStAQCBMVUFfTUFYSU5QVVQgaXMgdGhlIG1h eGltdW0gbGVuZ3RoIGZvciBhbiBpbnB1dCBsaW5lIGluIHRoZQotK0AqIHN0YW5kLWFsb25lIGlu dGVycHJldGVyLgotKyoqIENIQU5HRSBpdCBpZiB5b3UgbmVlZCBsb25nZXIgbGluZXMuCi0rKi8K LSsjZGVmaW5lIExVQV9NQVhJTlBVVAk1MTIKLSsKLSsKLSsvKgotK0BAIGx1YV9yZWFkbGluZSBk ZWZpbmVzIGhvdyB0byBzaG93IGEgcHJvbXB0IGFuZCB0aGVuIHJlYWQgYSBsaW5lIGZyb20KLStA KiB0aGUgc3RhbmRhcmQgaW5wdXQuCi0rQEAgbHVhX3NhdmVsaW5lIGRlZmluZXMgaG93IHRvICJz YXZlIiBhIHJlYWQgbGluZSBpbiBhICJoaXN0b3J5Ii4KLStAQCBsdWFfZnJlZWxpbmUgZGVmaW5l cyBob3cgdG8gZnJlZSBhIGxpbmUgcmVhZCBieSBsdWFfcmVhZGxpbmUuCi0rKiogQ0hBTkdFIHRo ZW0gaWYgeW91IHdhbnQgdG8gaW1wcm92ZSB0aGlzIGZ1bmN0aW9uYWxpdHkgKGUuZy4sIGJ5IHVz aW5nCi0rKiogR05VIHJlYWRsaW5lIGFuZCBoaXN0b3J5IGZhY2lsaXRpZXMpLgotKyovCi0rI2lm IGRlZmluZWQoTFVBX1VTRV9SRUFETElORSkKLSsjaW5jbHVkZSA8c3RkaW8uaD4KLSsjaW5jbHVk ZSA8cmVhZGxpbmUvcmVhZGxpbmUuaD4KLSsjaW5jbHVkZSA8cmVhZGxpbmUvaGlzdG9yeS5oPgot KyNkZWZpbmUgbHVhX3JlYWRsaW5lKEwsYixwKQkoKHZvaWQpTCwgKChiKT1yZWFkbGluZShwKSkg IT0gTlVMTCkKLSsjZGVmaW5lIGx1YV9zYXZlbGluZShMLGlkeCkgXAotKwlpZiAobHVhX3N0cmxl bihMLGlkeCkgPiAwKSAgLyogbm9uLWVtcHR5IGxpbmU/ICovIFwKLSsJICBhZGRfaGlzdG9yeShs dWFfdG9zdHJpbmcoTCwgaWR4KSk7ICAvKiBhZGQgaXQgdG8gaGlzdG9yeSAqLwotKyNkZWZpbmUg bHVhX2ZyZWVsaW5lKEwsYikJKCh2b2lkKUwsIGZyZWUoYikpCi0rI2Vsc2UKLSsjZGVmaW5lIGx1 YV9yZWFkbGluZShMLGIscCkJXAotKwkoKHZvaWQpTCwgZnB1dHMocCwgc3Rkb3V0KSwgZmZsdXNo KHN0ZG91dCksICAvKiBzaG93IHByb21wdCAqLyBcCi0rCWZnZXRzKGIsIExVQV9NQVhJTlBVVCwg c3RkaW4pICE9IE5VTEwpICAvKiBnZXQgbGluZSAqLwotKyNkZWZpbmUgbHVhX3NhdmVsaW5lKEws aWR4KQl7ICh2b2lkKUw7ICh2b2lkKWlkeDsgfQotKyNkZWZpbmUgbHVhX2ZyZWVsaW5lKEwsYikJ eyAodm9pZClMOyAodm9pZCliOyB9Ci0rI2VuZGlmCi0rCi0rI2VuZGlmCi0rCi0rLyogfT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PSAqLwotKwotKwotKy8qCi0rQEAgTFVBSV9HQ1BBVVNFIGRlZmluZXMgdGhlIGRlZmF1bHQg cGF1c2UgYmV0d2VlbiBnYXJiYWdlLWNvbGxlY3RvciBjeWNsZXMKLStAKiBhcyBhIHBlcmNlbnRh Z2UuCi0rKiogQ0hBTkdFIGl0IGlmIHlvdSB3YW50IHRoZSBHQyB0byBydW4gZmFzdGVyIG9yIHNs b3dlciAoaGlnaGVyIHZhbHVlcwotKyoqIG1lYW4gbGFyZ2VyIHBhdXNlcyB3aGljaCBtZWFuIHNs b3dlciBjb2xsZWN0aW9uLikgWW91IGNhbiBhbHNvIGNoYW5nZQotKyoqIHRoaXMgdmFsdWUgZHlu YW1pY2FsbHkuCi0rKi8KLSsjZGVmaW5lIExVQUlfR0NQQVVTRQkyMDAgIC8qIDIwMCUgKHdhaXQg bWVtb3J5IHRvIGRvdWJsZSBiZWZvcmUgbmV4dCBHQykgKi8KLSsKLSsKLSsvKgotK0BAIExVQUlf R0NNVUwgZGVmaW5lcyB0aGUgZGVmYXVsdCBzcGVlZCBvZiBnYXJiYWdlIGNvbGxlY3Rpb24gcmVs YXRpdmUgdG8KLStAKiBtZW1vcnkgYWxsb2NhdGlvbiBhcyBhIHBlcmNlbnRhZ2UuCi0rKiogQ0hB TkdFIGl0IGlmIHlvdSB3YW50IHRvIGNoYW5nZSB0aGUgZ3JhbnVsYXJpdHkgb2YgdGhlIGdhcmJh Z2UKLSsqKiBjb2xsZWN0aW9uLiAoSGlnaGVyIHZhbHVlcyBtZWFuIGNvYXJzZXIgY29sbGVjdGlv bnMuIDAgcmVwcmVzZW50cwotKyoqIGluZmluaXR5LCB3aGVyZSBlYWNoIHN0ZXAgcGVyZm9ybXMg YSBmdWxsIGNvbGxlY3Rpb24uKSBZb3UgY2FuIGFsc28KLSsqKiBjaGFuZ2UgdGhpcyB2YWx1ZSBk eW5hbWljYWxseS4KLSsqLwotKyNkZWZpbmUgTFVBSV9HQ01VTAkyMDAgLyogR0MgcnVucyAndHdp Y2UgdGhlIHNwZWVkJyBvZiBtZW1vcnkgYWxsb2NhdGlvbiAqLwotKwotKwotKwotKy8qCi0rQEAg TFVBX0NPTVBBVF9HRVROIGNvbnRyb2xzIGNvbXBhdGliaWxpdHkgd2l0aCBvbGQgZ2V0biBiZWhh dmlvci4KLSsqKiBDSEFOR0UgaXQgKGRlZmluZSBpdCkgaWYgeW91IHdhbnQgZXhhY3QgY29tcGF0 aWJpbGl0eSB3aXRoIHRoZQotKyoqIGJlaGF2aW9yIG9mIHNldG4vZ2V0biBpbiBMdWEgNS4wLgot KyovCi0rI3VuZGVmIExVQV9DT01QQVRfR0VUTgotKwotKy8qCi0rQEAgTFVBX0NPTVBBVF9MT0FE TElCIGNvbnRyb2xzIGNvbXBhdGliaWxpdHkgYWJvdXQgZ2xvYmFsIGxvYWRsaWIuCi0rKiogQ0hB TkdFIGl0IHRvIHVuZGVmaW5lZCBhcyBzb29uIGFzIHlvdSBkbyBub3QgbmVlZCBhIGdsb2JhbCAn bG9hZGxpYicKLSsqKiBmdW5jdGlvbiAodGhlIGZ1bmN0aW9uIGlzIHN0aWxsIGF2YWlsYWJsZSBh cyAncGFja2FnZS5sb2FkbGliJykuCi0rKi8KLSsjdW5kZWYgTFVBX0NPTVBBVF9MT0FETElCCi0r Ci0rLyoKLStAQCBMVUFfQ09NUEFUX1ZBUkFSRyBjb250cm9scyBjb21wYXRpYmlsaXR5IHdpdGgg b2xkIHZhcmFyZyBmZWF0dXJlLgotKyoqIENIQU5HRSBpdCB0byB1bmRlZmluZWQgYXMgc29vbiBh cyB5b3VyIHByb2dyYW1zIHVzZSBvbmx5ICcuLi4nIHRvCi0rKiogYWNjZXNzIHZhcmFyZyBwYXJh bWV0ZXJzIChpbnN0ZWFkIG9mIHRoZSBvbGQgJ2FyZycgdGFibGUpLgotKyovCi0rI2RlZmluZSBM VUFfQ09NUEFUX1ZBUkFSRwotKwotKy8qCi0rQEAgTFVBX0NPTVBBVF9NT0QgY29udHJvbHMgY29t cGF0aWJpbGl0eSB3aXRoIG9sZCBtYXRoLm1vZCBmdW5jdGlvbi4KLSsqKiBDSEFOR0UgaXQgdG8g dW5kZWZpbmVkIGFzIHNvb24gYXMgeW91ciBwcm9ncmFtcyB1c2UgJ21hdGguZm1vZCcgb3IKLSsq KiB0aGUgbmV3ICclJyBvcGVyYXRvciBpbnN0ZWFkIG9mICdtYXRoLm1vZCcuCi0rKi8KLSsjZGVm aW5lIExVQV9DT01QQVRfTU9ECi0rCi0rLyoKLStAQCBMVUFfQ09NUEFUX0xTVFIgY29udHJvbHMg Y29tcGF0aWJpbGl0eSB3aXRoIG9sZCBsb25nIHN0cmluZyBuZXN0aW5nCi0rQCogZmFjaWxpdHku Ci0rKiogQ0hBTkdFIGl0IHRvIDIgaWYgeW91IHdhbnQgdGhlIG9sZCBiZWhhdmlvdXIsIG9yIHVu ZGVmaW5lIGl0IHRvIHR1cm4KLSsqKiBvZmYgdGhlIGFkdmlzb3J5IGVycm9yIHdoZW4gbmVzdGlu ZyBbWy4uLl1dLgotKyovCi0rI2RlZmluZSBMVUFfQ09NUEFUX0xTVFIJCTEKLSsKLSsvKgotK0BA IExVQV9DT01QQVRfR0ZJTkQgY29udHJvbHMgY29tcGF0aWJpbGl0eSB3aXRoIG9sZCAnc3RyaW5n LmdmaW5kJyBuYW1lLgotKyoqIENIQU5HRSBpdCB0byB1bmRlZmluZWQgYXMgc29vbiBhcyB5b3Ug cmVuYW1lICdzdHJpbmcuZ2ZpbmQnIHRvCi0rKiogJ3N0cmluZy5nbWF0Y2gnLgotKyovCi0rI2Rl ZmluZSBMVUFfQ09NUEFUX0dGSU5ECi0rCi0rLyoKLStAQCBMVUFfQ09NUEFUX09QRU5MSUIgY29u dHJvbHMgY29tcGF0aWJpbGl0eSB3aXRoIG9sZCAnbHVhTF9vcGVubGliJwotK0AqIGJlaGF2aW9y LgotKyoqIENIQU5HRSBpdCB0byB1bmRlZmluZWQgYXMgc29vbiBhcyB5b3UgcmVwbGFjZSB0byAn bHVhTF9yZWdpc3RlcicKLSsqKiB5b3VyIHVzZXMgb2YgJ2x1YUxfb3BlbmxpYicKLSsqLwotKyNk ZWZpbmUgTFVBX0NPTVBBVF9PUEVOTElCCi0rCi0rCi0rCi0rLyoKLStAQCBsdWFpX2FwaWNoZWNr IGlzIHRoZSBhc3NlcnQgbWFjcm8gdXNlZCBieSB0aGUgTHVhLUMgQVBJLgotKyoqIENIQU5HRSBs dWFpX2FwaWNoZWNrIGlmIHlvdSB3YW50IEx1YSB0byBwZXJmb3JtIHNvbWUgY2hlY2tzIGluIHRo ZQotKyoqIHBhcmFtZXRlcnMgaXQgZ2V0cyBmcm9tIEFQSSBjYWxscy4gVGhpcyBtYXkgc2xvdyBk b3duIHRoZSBpbnRlcnByZXRlcgotKyoqIGEgYml0LCBidXQgbWF5IGJlIHF1aXRlIHVzZWZ1bCB3 aGVuIGRlYnVnZ2luZyBDIGNvZGUgdGhhdCBpbnRlcmZhY2VzCi0rKiogd2l0aCBMdWEuIEEgdXNl ZnVsIHJlZGVmaW5pdGlvbiBpcyB0byB1c2UgYXNzZXJ0LmguCi0rKi8KLSsjaWYgZGVmaW5lZChM VUFfVVNFX0FQSUNIRUNLKQotKyNpbmNsdWRlIDxhc3NlcnQuaD4KLSsjZGVmaW5lIGx1YWlfYXBp Y2hlY2soTCxvKQl7ICh2b2lkKUw7IGFzc2VydChvKTsgfQotKyNlbHNlCi0rI2RlZmluZSBsdWFp X2FwaWNoZWNrKEwsbykJeyAodm9pZClMOyB9Ci0rI2VuZGlmCi0rCi0rCi0rLyoKLStAQCBMVUFJ X0JJVFNJTlQgZGVmaW5lcyB0aGUgbnVtYmVyIG9mIGJpdHMgaW4gYW4gaW50LgotKyoqIENIQU5H RSBoZXJlIGlmIEx1YSBjYW5ub3QgYXV0b21hdGljYWxseSBkZXRlY3QgdGhlIG51bWJlciBvZiBi aXRzIG9mCi0rKiogeW91ciBtYWNoaW5lLiBQcm9iYWJseSB5b3UgZG8gbm90IG5lZWQgdG8gY2hh bmdlIHRoaXMuCi0rKi8KLSsvKiBhdm9pZCBvdmVyZmxvd3MgaW4gY29tcGFyaXNvbiAqLwotKyNp ZiBJTlRfTUFYLTIwIDwgMzI3NjAKLSsjZGVmaW5lIExVQUlfQklUU0lOVAkxNgotKyNlbGlmIElO VF9NQVggPiAyMTQ3NDgzNjQwTAotKy8qIGludCBoYXMgYXQgbGVhc3QgMzIgYml0cyAqLwotKyNk ZWZpbmUgTFVBSV9CSVRTSU5UCTMyCi0rI2Vsc2UKLSsjZXJyb3IgInlvdSBtdXN0IGRlZmluZSBM VUFfQklUU0lOVCB3aXRoIG51bWJlciBvZiBiaXRzIGluIGFuIGludGVnZXIiCi0rI2VuZGlmCi0r Ci0rCi0rLyoKLStAQCBMVUFJX1VJTlQzMiBpcyBhbiB1bnNpZ25lZCBpbnRlZ2VyIHdpdGggYXQg bGVhc3QgMzIgYml0cy4KLStAQCBMVUFJX0lOVDMyIGlzIGFuIHNpZ25lZCBpbnRlZ2VyIHdpdGgg YXQgbGVhc3QgMzIgYml0cy4KLStAQCBMVUFJX1VNRU0gaXMgYW4gdW5zaWduZWQgaW50ZWdlciBi aWcgZW5vdWdoIHRvIGNvdW50IHRoZSB0b3RhbAotK0AqIG1lbW9yeSB1c2VkIGJ5IEx1YS4KLStA QCBMVUFJX01FTSBpcyBhIHNpZ25lZCBpbnRlZ2VyIGJpZyBlbm91Z2ggdG8gY291bnQgdGhlIHRv dGFsIG1lbW9yeQotK0AqIHVzZWQgYnkgTHVhLgotKyoqIENIQU5HRSBoZXJlIGlmIGZvciBzb21l IHdlaXJkIHJlYXNvbiB0aGUgZGVmYXVsdCBkZWZpbml0aW9ucyBhcmUgbm90Ci0rKiogZ29vZCBl bm91Z2ggZm9yIHlvdXIgbWFjaGluZS4gKFRoZSBkZWZpbml0aW9ucyBpbiB0aGUgJ2Vsc2UnCi0r KiogcGFydCBhbHdheXMgd29ya3MsIGJ1dCBtYXkgd2FzdGUgc3BhY2Ugb24gbWFjaGluZXMgd2l0 aCA2NC1iaXQKLSsqKiBsb25ncy4pIFByb2JhYmx5IHlvdSBkbyBub3QgbmVlZCB0byBjaGFuZ2Ug dGhpcy4KLSsqLwotKyNpZiBMVUFJX0JJVFNJTlQgPj0gMzIKLSsjZGVmaW5lIExVQUlfVUlOVDMy CXVuc2lnbmVkIGludAotKyNkZWZpbmUgTFVBSV9JTlQzMglpbnQKLSsjZGVmaW5lIExVQUlfTUFY SU5UMzIJSU5UX01BWAotKyNkZWZpbmUgTFVBSV9VTUVNCXNpemVfdAotKyNkZWZpbmUgTFVBSV9N RU0JcHRyZGlmZl90Ci0rI2Vsc2UKLSsvKiAxNi1iaXQgaW50cyAqLwotKyNkZWZpbmUgTFVBSV9V SU5UMzIJdW5zaWduZWQgbG9uZwotKyNkZWZpbmUgTFVBSV9JTlQzMglsb25nCi0rI2RlZmluZSBM VUFJX01BWElOVDMyCUxPTkdfTUFYCi0rI2RlZmluZSBMVUFJX1VNRU0JdW5zaWduZWQgbG9uZwot KyNkZWZpbmUgTFVBSV9NRU0JbG9uZwotKyNlbmRpZgotKwotKwotKy8qCi0rQEAgTFVBSV9NQVhD QUxMUyBsaW1pdHMgdGhlIG51bWJlciBvZiBuZXN0ZWQgY2FsbHMuCi0rKiogQ0hBTkdFIGl0IGlm IHlvdSBuZWVkIHJlYWxseSBkZWVwIHJlY3Vyc2l2ZSBjYWxscy4gVGhpcyBsaW1pdCBpcwotKyoq IGFyYml0cmFyeTsgaXRzIG9ubHkgcHVycG9zZSBpcyB0byBzdG9wIGluZmluaXRlIHJlY3Vyc2lv biBiZWZvcmUKLSsqKiBleGhhdXN0aW5nIG1lbW9yeS4KLSsqLwotKyNkZWZpbmUgTFVBSV9NQVhD QUxMUwkyMDAwMAotKwotKwotKy8qCi0rQEAgTFVBSV9NQVhDU1RBQ0sgbGltaXRzIHRoZSBudW1i ZXIgb2YgTHVhIHN0YWNrIHNsb3RzIHRoYXQgYSBDIGZ1bmN0aW9uCi0rQCogY2FuIHVzZS4KLSsq KiBDSEFOR0UgaXQgaWYgeW91IG5lZWQgbG90cyBvZiAoTHVhKSBzdGFjayBzcGFjZSBmb3IgeW91 ciBDCi0rKiogZnVuY3Rpb25zLiBUaGlzIGxpbWl0IGlzIGFyYml0cmFyeTsgaXRzIG9ubHkgcHVy cG9zZSBpcyB0byBzdG9wIEMKLSsqKiBmdW5jdGlvbnMgdG8gY29uc3VtZSB1bmxpbWl0ZWQgc3Rh Y2sgc3BhY2UuCi0rKi8KLSsjZGVmaW5lIExVQUlfTUFYQ1NUQUNLCTIwNDgKLSsKLSsKLSsKLSsv KgotKyoqIHs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT0KLSsqKiBDSEFOR0UgKHRvIHNtYWxsZXIgdmFsdWVzKSB0aGUgZm9s bG93aW5nIGRlZmluaXRpb25zIGlmIHlvdXIgc3lzdGVtCi0rKiogaGFzIGEgc21hbGwgQyBzdGFj ay4gKE9yIHlvdSBtYXkgd2FudCB0byBjaGFuZ2UgdGhlbSB0byBsYXJnZXIKLSsqKiB2YWx1ZXMg aWYgeW91ciBzeXN0ZW0gaGFzIGEgbGFyZ2UgQyBzdGFjayBhbmQgdGhlc2UgbGltaXRzIGFyZQot KyoqIHRvbyByaWdpZCBmb3IgeW91LikgU29tZSBvZiB0aGVzZSBjb25zdGFudHMgY29udHJvbCB0 aGUgc2l6ZSBvZgotKyoqIHN0YWNrLWFsbG9jYXRlZCBhcnJheXMgdXNlZCBieSB0aGUgY29tcGls ZXIgb3IgdGhlIGludGVycHJldGVyLCB3aGlsZQotKyoqIG90aGVycyBsaW1pdCB0aGUgbWF4aW11 bSBudW1iZXIgb2YgcmVjdXJzaXZlIGNhbGxzIHRoYXQgdGhlIGNvbXBpbGVyCi0rKiogb3IgdGhl IGludGVycHJldGVyIGNhbiBwZXJmb3JtLiBWYWx1ZXMgdG9vIGxhcmdlIG1heSBjYXVzZSBhIEMg c3RhY2sKLSsqKiBvdmVyZmxvdyBmb3Igc29tZSBmb3JtcyBvZiBkZWVwIGNvbnN0cnVjdHMuCi0r KiogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PQotKyovCi0rCi0rCi0rLyoKLStAQCBMVUFJX01BWENDQUxMUyBpcyB0aGUg bWF4aW11bSBkZXB0aCBmb3IgbmVzdGVkIEMgY2FsbHMgKHNob3J0KSBhbmQKLStAKiBzeW50YWN0 aWNhbCBuZXN0ZWQgbm9uLXRlcm1pbmFscyBpbiBhIHByb2dyYW0uCi0rKi8KLSsjZGVmaW5lIExV QUlfTUFYQ0NBTExTCQkyMDAKLSsKLSsKLSsvKgotK0BAIExVQUlfTUFYVkFSUyBpcyB0aGUgbWF4 aW11bSBudW1iZXIgb2YgbG9jYWwgdmFyaWFibGVzIHBlciBmdW5jdGlvbgotK0AqIChtdXN0IGJl IHNtYWxsZXIgdGhhbiAyNTApLgotKyovCi0rI2RlZmluZSBMVUFJX01BWFZBUlMJCTIwMAotKwot KwotKy8qCi0rQEAgTFVBSV9NQVhVUFZBTFVFUyBpcyB0aGUgbWF4aW11bSBudW1iZXIgb2YgdXB2 YWx1ZXMgcGVyIGZ1bmN0aW9uCi0rQCogKG11c3QgYmUgc21hbGxlciB0aGFuIDI1MCkuCi0rKi8K LSsjZGVmaW5lIExVQUlfTUFYVVBWQUxVRVMJNjAKLSsKLSsKLSsvKgotK0BAIExVQUxfQlVGRkVS U0laRSBpcyB0aGUgYnVmZmVyIHNpemUgdXNlZCBieSB0aGUgbGF1eGxpYiBidWZmZXIgc3lzdGVt LgotKyovCi0rI2RlZmluZSBMVUFMX0JVRkZFUlNJWkUJCUJVRlNJWgotKwotKy8qIH09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT0gKi8KLSsKLSsKLSsKLSsKLSsvKgotKyoqIHs9PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLStAQCBMVUFfTlVNQkVSIGlz IHRoZSB0eXBlIG9mIG51bWJlcnMgaW4gTHVhLgotKyoqIENIQU5HRSB0aGUgZm9sbG93aW5nIGRl ZmluaXRpb25zIG9ubHkgaWYgeW91IHdhbnQgdG8gYnVpbGQgTHVhCi0rKiogd2l0aCBhIG51bWJl ciB0eXBlIGRpZmZlcmVudCBmcm9tIGRvdWJsZS4gWW91IG1heSBhbHNvIG5lZWQgdG8KLSsqKiBj aGFuZ2UgbHVhX251bWJlcjJpbnQgJiBsdWFfbnVtYmVyMmludGVnZXIuCi0rKiogPT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PQotKyovCi0rCi0rI2RlZmluZSBMVUFfTlVNQkVSX0RPVUJMRQotKyNkZWZpbmUgTFVBX05VTUJF Uglkb3VibGUKLSsKLSsvKgotK0BAIExVQUlfVUFDTlVNQkVSIGlzIHRoZSByZXN1bHQgb2YgYW4g J3VzdWFsIGFyZ3VtZW50IGNvbnZlcnNpb24nCi0rQCogb3ZlciBhIG51bWJlci4KLSsqLwotKyNk ZWZpbmUgTFVBSV9VQUNOVU1CRVIJZG91YmxlCi0rCi0rCi0rLyoKLStAQCBMVUFfTlVNQkVSX1ND QU4gaXMgdGhlIGZvcm1hdCBmb3IgcmVhZGluZyBudW1iZXJzLgotK0BAIExVQV9OVU1CRVJfRk1U IGlzIHRoZSBmb3JtYXQgZm9yIHdyaXRpbmcgbnVtYmVycy4KLStAQCBsdWFfbnVtYmVyMnN0ciBj b252ZXJ0cyBhIG51bWJlciB0byBhIHN0cmluZy4KLStAQCBMVUFJX01BWE5VTUJFUjJTVFIgaXMg bWF4aW11bSBzaXplIG9mIHByZXZpb3VzIGNvbnZlcnNpb24uCi0rQEAgbHVhX3N0cjJudW1iZXIg Y29udmVydHMgYSBzdHJpbmcgdG8gYSBudW1iZXIuCi0rKi8KLSsjZGVmaW5lIExVQV9OVU1CRVJf U0NBTgkJIiVsZiIKLSsjZGVmaW5lIExVQV9OVU1CRVJfRk1UCQkiJS4xNGciCi0rI2RlZmluZSBs dWFfbnVtYmVyMnN0cihzLG4pCXNwcmludGYoKHMpLCBMVUFfTlVNQkVSX0ZNVCwgKG4pKQotKyNk ZWZpbmUgTFVBSV9NQVhOVU1CRVIyU1RSCTMyIC8qIDE2IGRpZ2l0cywgc2lnbiwgcG9pbnQsIGFu ZCBcMCAqLwotKyNkZWZpbmUgbHVhX3N0cjJudW1iZXIocyxwKQlzdHJ0b2QoKHMpLCAocCkpCi0r Ci0rCi0rLyoKLStAQCBUaGUgbHVhaV9udW0qIG1hY3JvcyBkZWZpbmUgdGhlIHByaW1pdGl2ZSBv cGVyYXRpb25zIG92ZXIgbnVtYmVycy4KLSsqLwotKyNpZiBkZWZpbmVkKExVQV9DT1JFKQotKyNp bmNsdWRlIDxtYXRoLmg+Ci0rI2RlZmluZSBsdWFpX251bWFkZChhLGIpCSgoYSkrKGIpKQotKyNk ZWZpbmUgbHVhaV9udW1zdWIoYSxiKQkoKGEpLShiKSkKLSsjZGVmaW5lIGx1YWlfbnVtbXVsKGEs YikJKChhKSooYikpCi0rI2RlZmluZSBsdWFpX251bWRpdihhLGIpCSgoYSkvKGIpKQotKyNkZWZp bmUgbHVhaV9udW1tb2QoYSxiKQkoKGEpIC0gZmxvb3IoKGEpLyhiKSkqKGIpKQotKyNkZWZpbmUg bHVhaV9udW1wb3coYSxiKQkocG93KGEsYikpCi0rI2RlZmluZSBsdWFpX251bXVubShhKQkJKC0o YSkpCi0rI2RlZmluZSBsdWFpX251bWVxKGEsYikJCSgoYSk9PShiKSkKLSsjZGVmaW5lIGx1YWlf bnVtbHQoYSxiKQkJKChhKTwoYikpCi0rI2RlZmluZSBsdWFpX251bWxlKGEsYikJCSgoYSk8PShi KSkKLSsjZGVmaW5lIGx1YWlfbnVtaXNuYW4oYSkJKCFsdWFpX251bWVxKChhKSwgKGEpKSkKLSsj ZW5kaWYKLSsKLSsKLSsvKgotK0BAIGx1YV9udW1iZXIyaW50IGlzIGEgbWFjcm8gdG8gY29udmVy dCBsdWFfTnVtYmVyIHRvIGludC4KLStAQCBsdWFfbnVtYmVyMmludGVnZXIgaXMgYSBtYWNybyB0 byBjb252ZXJ0IGx1YV9OdW1iZXIgdG8gbHVhX0ludGVnZXIuCi0rKiogQ0hBTkdFIHRoZW0gaWYg eW91IGtub3cgYSBmYXN0ZXIgd2F5IHRvIGNvbnZlcnQgYSBsdWFfTnVtYmVyIHRvCi0rKiogaW50 ICh3aXRoIGFueSByb3VuZGluZyBtZXRob2QgYW5kIHdpdGhvdXQgdGhyb3dpbmcgZXJyb3JzKSBp biB5b3VyCi0rKiogc3lzdGVtLiBJbiBQZW50aXVtIG1hY2hpbmVzLCBhIG5haXZlIHR5cGVjYXN0 IGZyb20gZG91YmxlIHRvIGludAotKyoqIGluIEMgaXMgZXh0cmVtZWx5IHNsb3csIHNvIGFueSBh bHRlcm5hdGl2ZSBpcyB3b3J0aCB0cnlpbmcuCi0rKi8KLSsKLSsvKiBPbiBhIFBlbnRpdW0sIHJl c29ydCB0byBhIHRyaWNrICovCi0rI2lmIGRlZmluZWQoTFVBX05VTUJFUl9ET1VCTEUpICYmICFk ZWZpbmVkKExVQV9BTlNJKSAmJiAhZGVmaW5lZChfX1NTRTJfXykgJiYgXAotKyAgICAoZGVmaW5l ZChfX2kzODYpIHx8IGRlZmluZWQgKF9NX0lYODYpIHx8IGRlZmluZWQoX19pMzg2X18pKQotKwot Ky8qIE9uIGEgTWljcm9zb2Z0IGNvbXBpbGVyLCB1c2UgYXNzZW1ibGVyICovCi0rI2lmIGRlZmlu ZWQoX01TQ19WRVIpCi0rCi0rI2RlZmluZSBsdWFfbnVtYmVyMmludChpLGQpICAgX19hc20gZmxk IGQgICBfX2FzbSBmaXN0cCBpCi0rI2RlZmluZSBsdWFfbnVtYmVyMmludGVnZXIoaSxuKQkJbHVh X251bWJlcjJpbnQoaSwgbikKLSsKLSsvKiB0aGUgbmV4dCB0cmljayBzaG91bGQgd29yayBvbiBh bnkgUGVudGl1bSwgYnV0IHNvbWV0aW1lcyBjbGFzaGVzCi0rICAgd2l0aCBhIERpcmVjdFggaWRp b3N5bmNyYXN5ICovCi0rI2Vsc2UKLSsKLSt1bmlvbiBsdWFpX0Nhc3QgeyBkb3VibGUgbF9kOyBs b25nIGxfbDsgfTsKLSsjZGVmaW5lIGx1YV9udW1iZXIyaW50KGksZCkgXAotKyAgeyB2b2xhdGls ZSB1bmlvbiBsdWFpX0Nhc3QgdTsgdS5sX2QgPSAoZCkgKyA2NzU1Mzk5NDQxMDU1NzQ0LjA7IChp KSA9IHUubF9sOyB9Ci0rI2RlZmluZSBsdWFfbnVtYmVyMmludGVnZXIoaSxuKQkJbHVhX251bWJl cjJpbnQoaSwgbikKLSsKLSsjZW5kaWYKLSsKLSsKLSsvKiB0aGlzIG9wdGlvbiBhbHdheXMgd29y a3MsIGJ1dCBtYXkgYmUgc2xvdyAqLwotKyNlbHNlCi0rI2RlZmluZSBsdWFfbnVtYmVyMmludChp LGQpCSgoaSk9KGludCkoZCkpCi0rI2RlZmluZSBsdWFfbnVtYmVyMmludGVnZXIoaSxkKQkoKGkp PShsdWFfSW50ZWdlcikoZCkpCi0rCi0rI2VuZGlmCi0rCi0rLyogfT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLwotKwot KwotKy8qCi0rQEAgTFVBSV9VU0VSX0FMSUdOTUVOVF9UIGlzIGEgdHlwZSB0aGF0IHJlcXVpcmVz IG1heGltdW0gYWxpZ25tZW50LgotKyoqIENIQU5HRSBpdCBpZiB5b3VyIHN5c3RlbSByZXF1aXJl cyBhbGlnbm1lbnRzIGxhcmdlciB0aGFuIGRvdWJsZS4gKEZvcgotKyoqIGluc3RhbmNlLCBpZiB5 b3VyIHN5c3RlbSBzdXBwb3J0cyBsb25nIGRvdWJsZXMgYW5kIHRoZXkgbXVzdCBiZQotKyoqIGFs aWduZWQgaW4gMTYtYnl0ZSBib3VuZGFyaWVzLCB0aGVuIHlvdSBzaG91bGQgYWRkIGxvbmcgZG91 YmxlIGluIHRoZQotKyoqIHVuaW9uLikgUHJvYmFibHkgeW91IGRvIG5vdCBuZWVkIHRvIGNoYW5n ZSB0aGlzLgotKyovCi0rI2RlZmluZSBMVUFJX1VTRVJfQUxJR05NRU5UX1QJdW5pb24geyBkb3Vi bGUgdTsgdm9pZCAqczsgbG9uZyBsOyB9Ci0rCi0rCi0rLyoKLStAQCBMVUFJX1RIUk9XL0xVQUlf VFJZIGRlZmluZSBob3cgTHVhIGRvZXMgZXhjZXB0aW9uIGhhbmRsaW5nLgotKyoqIENIQU5HRSB0 aGVtIGlmIHlvdSBwcmVmZXIgdG8gdXNlIGxvbmdqbXAvc2V0am1wIGV2ZW4gd2l0aCBDKysKLSsq KiBvciBpZiB3YW50L2Rvbid0IHRvIHVzZSBfbG9uZ2ptcC9fc2V0am1wIGluc3RlYWQgb2YgcmVn dWxhcgotKyoqIGxvbmdqbXAvc2V0am1wLiBCeSBkZWZhdWx0LCBMdWEgaGFuZGxlcyBlcnJvcnMg d2l0aCBleGNlcHRpb25zIHdoZW4KLSsqKiBjb21waWxpbmcgYXMgQysrIGNvZGUsIHdpdGggX2xv bmdqbXAvX3NldGptcCB3aGVuIGFza2VkIHRvIHVzZSB0aGVtLAotKyoqIGFuZCB3aXRoIGxvbmdq bXAvc2V0am1wIG90aGVyd2lzZS4KLSsqLwotKyNpZiBkZWZpbmVkKF9fY3BsdXNwbHVzKQotKy8q IEMrKyBleGNlcHRpb25zICovCi0rI2RlZmluZSBMVUFJX1RIUk9XKEwsYykJdGhyb3coYykKLSsj ZGVmaW5lIExVQUlfVFJZKEwsYyxhKQl0cnkgeyBhIH0gY2F0Y2goLi4uKSBcCi0rCXsgaWYgKChj KS0+c3RhdHVzID09IDApIChjKS0+c3RhdHVzID0gLTE7IH0KLSsjZGVmaW5lIGx1YWlfam1wYnVm CWludCAgLyogZHVtbXkgdmFyaWFibGUgKi8KLSsKLSsjZWxpZiBkZWZpbmVkKExVQV9VU0VfVUxP TkdKTVApCi0rLyogaW4gVW5peCwgdHJ5IF9sb25nam1wL19zZXRqbXAgKG1vcmUgZWZmaWNpZW50 KSAqLwotKyNkZWZpbmUgTFVBSV9USFJPVyhMLGMpCV9sb25nam1wKChjKS0+YiwgMSkKLSsjZGVm aW5lIExVQUlfVFJZKEwsYyxhKQlpZiAoX3NldGptcCgoYyktPmIpID09IDApIHsgYSB9Ci0rI2Rl ZmluZSBsdWFpX2ptcGJ1ZglqbXBfYnVmCi0rCi0rI2Vsc2UKLSsvKiBkZWZhdWx0IGhhbmRsaW5n IHdpdGggbG9uZyBqdW1wcyAqLwotKyNkZWZpbmUgTFVBSV9USFJPVyhMLGMpCWxvbmdqbXAoKGMp LT5iLCAxKQotKyNkZWZpbmUgTFVBSV9UUlkoTCxjLGEpCWlmIChzZXRqbXAoKGMpLT5iKSA9PSAw KSB7IGEgfQotKyNkZWZpbmUgbHVhaV9qbXBidWYJam1wX2J1ZgotKwotKyNlbmRpZgotKwotKwot Ky8qCi0rQEAgTFVBX01BWENBUFRVUkVTIGlzIHRoZSBtYXhpbXVtIG51bWJlciBvZiBjYXB0dXJl cyB0aGF0IGEgcGF0dGVybgotK0AqIGNhbiBkbyBkdXJpbmcgcGF0dGVybi1tYXRjaGluZy4KLSsq KiBDSEFOR0UgaXQgaWYgeW91IG5lZWQgbW9yZSBjYXB0dXJlcy4gVGhpcyBsaW1pdCBpcyBhcmJp dHJhcnkuCi0rKi8KLSsjZGVmaW5lIExVQV9NQVhDQVBUVVJFUwkJMzIKLSsKLSsKLSsvKgotK0BA IGx1YV90bXBuYW0gaXMgdGhlIGZ1bmN0aW9uIHRoYXQgdGhlIE9TIGxpYnJhcnkgdXNlcyB0byBj cmVhdGUgYQotK0AqIHRlbXBvcmFyeSBuYW1lLgotK0BAIExVQV9UTVBOQU1CVUZTSVpFIGlzIHRo ZSBtYXhpbXVtIHNpemUgb2YgYSBuYW1lIGNyZWF0ZWQgYnkgbHVhX3RtcG5hbS4KLSsqKiBDSEFO R0UgdGhlbSBpZiB5b3UgaGF2ZSBhbiBhbHRlcm5hdGl2ZSB0byB0bXBuYW0gKHdoaWNoIGlzIGNv bnNpZGVyZWQKLSsqKiBpbnNlY3VyZSkgb3IgaWYgeW91IHdhbnQgdGhlIG9yaWdpbmFsIHRtcG5h bSBhbnl3YXkuICBCeSBkZWZhdWx0LCBMdWEKLSsqKiB1c2VzIHRtcG5hbSBleGNlcHQgd2hlbiBQ T1NJWCBpcyBhdmFpbGFibGUsIHdoZXJlIGl0IHVzZXMgbWtzdGVtcC4KLSsqLwotKyNpZiBkZWZp bmVkKGxvc2xpYl9jKSB8fCBkZWZpbmVkKGx1YWFsbF9jKQotKwotKyNpZiBkZWZpbmVkKExVQV9V U0VfTUtTVEVNUCkKLSsjaW5jbHVkZSA8dW5pc3RkLmg+Ci0rI2RlZmluZSBMVUFfVE1QTkFNQlVG U0laRQkzMgotKyNkZWZpbmUgbHVhX3RtcG5hbShiLGUpCXsgXAotKwlzdHJjcHkoYiwgIi90bXAv bHVhX1hYWFhYWCIpOyBcCi0rCWUgPSBta3N0ZW1wKGIpOyBcCi0rCWlmIChlICE9IC0xKSBjbG9z ZShlKTsgXAotKwllID0gKGUgPT0gLTEpOyB9Ci0rCi0rI2Vsc2UKLSsjZGVmaW5lIExVQV9UTVBO QU1CVUZTSVpFCUxfdG1wbmFtCi0rI2RlZmluZSBsdWFfdG1wbmFtKGIsZSkJCXsgZSA9ICh0bXBu YW0oYikgPT0gTlVMTCk7IH0KLSsjZW5kaWYKLSsKLSsjZW5kaWYKLSsKLSsKLSsvKgotK0BAIGx1 YV9wb3BlbiBzcGF3bnMgYSBuZXcgcHJvY2VzcyBjb25uZWN0ZWQgdG8gdGhlIGN1cnJlbnQgb25l IHRocm91Z2gKLStAKiB0aGUgZmlsZSBzdHJlYW1zLgotKyoqIENIQU5HRSBpdCBpZiB5b3UgaGF2 ZSBhIHdheSB0byBpbXBsZW1lbnQgaXQgaW4geW91ciBzeXN0ZW0uCi0rKi8KLSsjaWYgZGVmaW5l ZChMVUFfVVNFX1BPUEVOKQotKwotKyNkZWZpbmUgbHVhX3BvcGVuKEwsYyxtKQkoKHZvaWQpTCwg cG9wZW4oYyxtKSkKLSsjZGVmaW5lIGx1YV9wY2xvc2UoTCxmaWxlKQkoKHZvaWQpTCwgKHBjbG9z ZShmaWxlKSAhPSAtMSkpCi0rCi0rI2VsaWYgZGVmaW5lZChMVUFfV0lOKQotKwotKyNkZWZpbmUg bHVhX3BvcGVuKEwsYyxtKQkoKHZvaWQpTCwgX3BvcGVuKGMsbSkpCi0rI2RlZmluZSBsdWFfcGNs b3NlKEwsZmlsZSkJKCh2b2lkKUwsIChfcGNsb3NlKGZpbGUpICE9IC0xKSkKLSsKLSsjZWxzZQot KwotKyNkZWZpbmUgbHVhX3BvcGVuKEwsYyxtKQkoKHZvaWQpKCh2b2lkKWMsIG0pLCAgXAotKwkJ bHVhTF9lcnJvcihMLCBMVUFfUUwoInBvcGVuIikgIiBub3Qgc3VwcG9ydGVkIiksIChGSUxFKikw KQotKyNkZWZpbmUgbHVhX3BjbG9zZShMLGZpbGUpCQkoKHZvaWQpKCh2b2lkKUwsIGZpbGUpLCAw KQotKwotKyNlbmRpZgotKwotKy8qCi0rQEAgTFVBX0RMXyogZGVmaW5lIHdoaWNoIGR5bmFtaWMt bGlicmFyeSBzeXN0ZW0gTHVhIHNob3VsZCB1c2UuCi0rKiogQ0hBTkdFIGhlcmUgaWYgTHVhIGhh cyBwcm9ibGVtcyBjaG9vc2luZyB0aGUgYXBwcm9wcmlhdGUKLSsqKiBkeW5hbWljLWxpYnJhcnkg c3lzdGVtIGZvciB5b3VyIHBsYXRmb3JtIChlaXRoZXIgV2luZG93cycgRExMLCBNYWMncwotKyoq IGR5bGQsIG9yIFVuaXgncyBkbG9wZW4pLiBJZiB5b3VyIHN5c3RlbSBpcyBzb21lIGtpbmQgb2Yg VW5peCwgdGhlcmUKLSsqKiBpcyBhIGdvb2QgY2hhbmNlIHRoYXQgaXQgaGFzIGRsb3Blbiwgc28g TFVBX0RMX0RMT1BFTiB3aWxsIHdvcmsgZm9yCi0rKiogaXQuICBUbyB1c2UgZGxvcGVuIHlvdSBh bHNvIG5lZWQgdG8gYWRhcHQgdGhlIHNyYy9NYWtlZmlsZSAocHJvYmFibHkKLSsqKiBhZGRpbmcg LWxkbCB0byB0aGUgbGlua2VyIG9wdGlvbnMpLCBzbyBMdWEgZG9lcyBub3Qgc2VsZWN0IGl0Ci0r KiogYXV0b21hdGljYWxseS4gIChXaGVuIHlvdSBjaGFuZ2UgdGhlIG1ha2VmaWxlIHRvIGFkZCAt bGRsLCB5b3UgbXVzdAotKyoqIGFsc28gYWRkIC1ETFVBX1VTRV9ETE9QRU4uKQotKyoqIElmIHlv dSBkbyBub3Qgd2FudCBhbnkga2luZCBvZiBkeW5hbWljIGxpYnJhcnksIHVuZGVmaW5lIGFsbCB0 aGVzZQotKyoqIG9wdGlvbnMuCi0rKiogQnkgZGVmYXVsdCwgX1dJTjMyIGdldHMgTFVBX0RMX0RM TCBhbmQgTUFDIE9TIFggZ2V0cyBMVUFfRExfRFlMRC4KLSsqLwotKyNpZiBkZWZpbmVkKExVQV9V U0VfRExPUEVOKQotKyNkZWZpbmUgTFVBX0RMX0RMT1BFTgotKyNlbmRpZgotKwotKyNpZiBkZWZp bmVkKExVQV9XSU4pCi0rI2RlZmluZSBMVUFfRExfRExMCi0rI2VuZGlmCi0rCi0rCi0rLyoKLStA QCBMVUFJX0VYVFJBU1BBQ0UgYWxsb3dzIHlvdSB0byBhZGQgdXNlci1zcGVjaWZpYyBkYXRhIGlu IGEgbHVhX1N0YXRlCi0rQCogKHRoZSBkYXRhIGdvZXMganVzdCAqYmVmb3JlKiB0aGUgbHVhX1N0 YXRlIHBvaW50ZXIpLgotKyoqIENIQU5HRSAoZGVmaW5lKSB0aGlzIGlmIHlvdSByZWFsbHkgbmVl ZCB0aGF0LiBUaGlzIHZhbHVlIG11c3QgYmUKLSsqKiBhIG11bHRpcGxlIG9mIHRoZSBtYXhpbXVt IGFsaWdubWVudCByZXF1aXJlZCBmb3IgeW91ciBtYWNoaW5lLgotKyovCi0rI2RlZmluZSBMVUFJ X0VYVFJBU1BBQ0UJCTAKLSsKLSsKLSsvKgotK0BAIGx1YWlfdXNlcnN0YXRlKiBhbGxvdyB1c2Vy LXNwZWNpZmljIGFjdGlvbnMgb24gdGhyZWFkcy4KLSsqKiBDSEFOR0UgdGhlbSBpZiB5b3UgZGVm aW5lZCBMVUFJX0VYVFJBU1BBQ0UgYW5kIG5lZWQgdG8gZG8gc29tZXRoaW5nCi0rKiogZXh0cmEg d2hlbiBhIHRocmVhZCBpcyBjcmVhdGVkL2RlbGV0ZWQvcmVzdW1lZC95aWVsZGVkLgotKyovCi0r I2RlZmluZSBsdWFpX3VzZXJzdGF0ZW9wZW4oTCkJCSgodm9pZClMKQotKyNkZWZpbmUgbHVhaV91 c2Vyc3RhdGVjbG9zZShMKQkJKCh2b2lkKUwpCi0rI2RlZmluZSBsdWFpX3VzZXJzdGF0ZXRocmVh ZChMLEwxKQkoKHZvaWQpTCkKLSsjZGVmaW5lIGx1YWlfdXNlcnN0YXRlZnJlZShMKQkJKCh2b2lk KUwpCi0rI2RlZmluZSBsdWFpX3VzZXJzdGF0ZXJlc3VtZShMLG4pCSgodm9pZClMKQotKyNkZWZp bmUgbHVhaV91c2Vyc3RhdGV5aWVsZChMLG4pCSgodm9pZClMKQotKwotKwotKy8qCi0rQEAgTFVB X0lOVEZSTUxFTiBpcyB0aGUgbGVuZ3RoIG1vZGlmaWVyIGZvciBpbnRlZ2VyIGNvbnZlcnNpb25z Ci0rQCogaW4gJ3N0cmluZy5mb3JtYXQnLgotK0BAIExVQV9JTlRGUk1fVCBpcyB0aGUgaW50ZWdl ciB0eXBlIGNvcnJlc3BvZGluZyB0byB0aGUgcHJldmlvdXMgbGVuZ3RoCi0rQCogbW9kaWZpZXIu Ci0rKiogQ0hBTkdFIHRoZW0gaWYgeW91ciBzeXN0ZW0gc3VwcG9ydHMgbG9uZyBsb25nIG9yIGRv ZXMgbm90IHN1cHBvcnQgbG9uZy4KLSsqLwotKwotKyNpZiBkZWZpbmVkKExVQV9VU0VMT05HTE9O RykKLSsKLSsjZGVmaW5lIExVQV9JTlRGUk1MRU4JCSJsbCIKLSsjZGVmaW5lIExVQV9JTlRGUk1f VAkJbG9uZyBsb25nCi0rCi0rI2Vsc2UKLSsKLSsjZGVmaW5lIExVQV9JTlRGUk1MRU4JCSJsIgot KyNkZWZpbmUgTFVBX0lOVEZSTV9UCQlsb25nCi0rCi0rI2VuZGlmCi0rCi0rCi0rCi0rLyogPT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PSAqLwotKwotKy8qCi0rKiogTG9jYWwgY29uZmlndXJhdGlvbi4gWW91IGNhbiB1c2Ug dGhpcyBzcGFjZSB0byBhZGQgeW91ciByZWRlZmluaXRpb25zCi0rKiogd2l0aG91dCBtb2RpZnlp bmcgdGhlIG1haW4gcGFydCBvZiB0aGUgZmlsZS4KLSsqLwotKwotKwotKwotKyNlbmRpZgotKwpk aWZmIC0tZ2l0IGEvcGF0Y2hlcy9sdWEtNS4xLjQvMDEwMi1BZGQtbHVhLXN1cHBvcnQtdG8tcHR4 ZGlzdC0xLjk5LWFkZC1hdXRvbWFrZS1maWxlcy5wYXRjaCBiL3BhdGNoZXMvbHVhLTUuMS40LzAx MDItQWRkLWx1YS1zdXBwb3J0LXRvLXB0eGRpc3QtMS45OS1hZGQtYXV0b21ha2UtZmlsZXMucGF0 Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGEyYjZjNGEuLjAwMDAwMDAKLS0tIGEv cGF0Y2hlcy9sdWEtNS4xLjQvMDEwMi1BZGQtbHVhLXN1cHBvcnQtdG8tcHR4ZGlzdC0xLjk5LWFk ZC1hdXRvbWFrZS1maWxlcy5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDEyNSArMCwwIEBACi1G cm9tOiBFcndpbiBSb2wgPGVyd2luQGVyd2lucm9sLmNvbT4KLURhdGU6IEZyaSwgOSBEZWMgMjAx MSAxMTozMjoxMiArMDEwMAotU3ViamVjdDogW1BBVENIXSBBZGQgbHVhIHN1cHBvcnQgdG8gcHR4 ZGlzdCAxLjk5OiBhZGQgYXV0b21ha2UgZmlsZXMKLQotVGhpcyBwYXRjaCBhZGQgbHVhIHN1cHBv cnQgdG8gcHR4ZGlzdCAxLjk5LiBJdCBoYXMgYSBtZW51IGVudHJ5IHVuZGVyCi1zY3JpcHRpbmcg bGFuZ3VhZ2VzLiBBbmQgYSBwYXRjaCB0aGF0IG1ha2VzIGl0IHBvc3NpYmxlIHRvIHVzZSBhdXRv Y29uZgotdG8gYnVpbGQuCi0KLVRoaXMgcGFydCBvZiB0aGUgcGF0Y2ggYWRkcyB0aGUgYXV0b21h a2UgZmlsZXMuCi0KLVNpZ25lZC1vZmYtYnk6IEVyd2luIFJvbCA8ZXJ3aW5AZXJ3aW5yb2wuY29t PgotU2lnbmVkLW9mZi1ieTogUm9iZXJ0IFNjaHdlYmVsIDxyLnNjaHdlYmVsQHBlbmd1dHJvbml4 LmRlPgotLS0tCi0gTWFrZWZpbGUuYW0gICAgICB8ICA1ICsrKysrCi0gZG9jL01ha2VmaWxlLmFt ICB8ICA1ICsrKysrCi0gZXRjL01ha2VmaWxlLmFtICB8ICA4ICsrKysrKysrCi0gc3JjL01ha2Vm aWxlLmFtICB8IDQ3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrCi0gdGVzdC9NYWtlZmlsZS5hbSB8ICA1ICsrKysrCi0gNSBmaWxlcyBjaGFuZ2VkLCA3MCBp bnNlcnRpb25zKCspCi0gY3JlYXRlIG1vZGUgMTAwNjQ0IE1ha2VmaWxlLmFtCi0gY3JlYXRlIG1v ZGUgMTAwNjQ0IGRvYy9NYWtlZmlsZS5hbQotIGNyZWF0ZSBtb2RlIDEwMDY0NCBldGMvTWFrZWZp bGUuYW0KLSBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjL01ha2VmaWxlLmFtCi0gY3JlYXRlIG1vZGUg MTAwNjQ0IHRlc3QvTWFrZWZpbGUuYW0KLQotZGlmZiAtLWdpdCBhL01ha2VmaWxlLmFtIGIvTWFr ZWZpbGUuYW0KLW5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci1pbmRleCAwMDAwMDAwLi5kZTc4YTI0Ci0t LS0gL2Rldi9udWxsCi0rKysgYi9NYWtlZmlsZS5hbQotQEAgLTAsMCArMSw1IEBACi0rQUNMT0NB TF9BTUZMQUdTID0gLUkgbTQKLSsKLStTVUJESVJTID0gc3JjIGRvYyBldGMgdGVzdAotKwotK0VY VFJBX0RJU1QgPSBhdXRvZ2VuLnNoIENPUFlSSUdIVCBISVNUT1JZIElOU1RBTEwgUkVBRE1FCi1k aWZmIC0tZ2l0IGEvZG9jL01ha2VmaWxlLmFtIGIvZG9jL01ha2VmaWxlLmFtCi1uZXcgZmlsZSBt b2RlIDEwMDY0NAotaW5kZXggMDAwMDAwMC4uNTc0YjZmOAotLS0tIC9kZXYvbnVsbAotKysrIGIv ZG9jL01ha2VmaWxlLmFtCi1AQCAtMCwwICsxLDUgQEAKLSttYW4xX01BTlMgPSBsdWEuMSBsdWFj LjEKLSsKLStFWFRSQV9ESVNUID0gXAotKwljb250ZW50cy5odG1sICBsdWEuMSAgIGx1YWMuaHRt bCAgbHVhLmh0bWwgICAgIG1hbnVhbC5odG1sIFwKLSsJbG9nby5naWYgICAgICAgbHVhYy4xICBs dWEuY3NzICAgIHJlYWRtZS5odG1sCi1kaWZmIC0tZ2l0IGEvZXRjL01ha2VmaWxlLmFtIGIvZXRj L01ha2VmaWxlLmFtCi1uZXcgZmlsZSBtb2RlIDEwMDY0NAotaW5kZXggMDAwMDAwMC4uMjNlZGQ5 MgotLS0tIC9kZXYvbnVsbAotKysrIGIvZXRjL01ha2VmaWxlLmFtCi1AQCAtMCwwICsxLDggQEAK LStpbmNsdWRlX0hFQURFUlMgPSBsdWEuaHBwCi0rCi0rcGtnY29uZmlnZGlyID0gJChsaWJkaXIp L3BrZ2NvbmZpZwotK3BrZ2NvbmZpZ19EQVRBID0gbHVhLnBjCi0rCi0rRVhUUkFfRElTVCA9IFwK LSsJYWxsLmMgICAgICBsdWEuaWNvICAgIGx1YS5wYy5pbiAgbm9wYXJzZXIuYyAgc3RyaWN0Lmx1 YSBcCi0rCWx1YXZzLmJhdCAgbWluLmMgICAgICBSRUFETUUKLWRpZmYgLS1naXQgYS9zcmMvTWFr ZWZpbGUuYW0gYi9zcmMvTWFrZWZpbGUuYW0KLW5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci1pbmRleCAw MDAwMDAwLi5jZjZiZGVhCi0tLS0gL2Rldi9udWxsCi0rKysgYi9zcmMvTWFrZWZpbGUuYW0KLUBA IC0wLDAgKzEsNDcgQEAKLStBTV9DRkxBR1MgPSAtV2FsbAotKwotK2luY2x1ZGVfSEVBREVSUyA9 IGx1YS5oIGx1YWxpYi5oIGxhdXhsaWIuaAotK25vZGlzdF9pbmNsdWRlX0hFQURFUlMgPSBsdWFj b25mLmgKLSsKLStsaWJfTFRMSUJSQVJJRVMgPSBsaWJsdWEubGEKLStsaWJsdWFfbGFfTERGTEFH UyA9IC1yZWxlYXNlIEBWRVJTSU9OQCAtV2wsLS1hcy1uZWVkZWQKLStsaWJsdWFfbGFfU09VUkNF UyA9IFwKLSsJbGFwaS5jIGxjb2RlLmMgbGRlYnVnLmMgbGRvLmMgbGR1bXAuYyBsZnVuYy5jIGxn Yy5jIGxsZXguYyBsbWVtLmMgXAotKwlsb2JqZWN0LmMgbG9wY29kZXMuYyBscGFyc2VyLmMgbHN0 YXRlLmMgbHN0cmluZy5jIGx0YWJsZS5jIGx0bS5jICBcCi0rCWx1bmR1bXAuYyBsdm0uYyBsemlv LmMgXAotKwlsYXV4bGliLmMgbGJhc2VsaWIuYyBsZGJsaWIuYyBsaW9saWIuYyBsbWF0aGxpYi5j IGxvc2xpYi5jIGx0YWJsaWIuYyBcCi0rCWxzdHJsaWIuYyBsb2FkbGliLmMgbGluaXQuYyBcCi0r CWxhcGkuaCBsZGVidWcuaCBsZ2MuaCBsbWVtLmggbHBhcnNlci5oIGx0YWJsZS5oIGx6aW8uaCBs ZG8uaCBsbGV4LmggXAotKwlsb2JqZWN0LmggbHN0YXRlLmggbHRtLmggbHVuZHVtcC5oIGxjb2Rl LmggbGZ1bmMuaCBsbGltaXRzLmggbG9wY29kZXMuaCBcCi0rCWxzdHJpbmcuaCBsdm0uaAotKwot K2xpYmx1YV9sYV9MSUJBREQgPSBATFVBX0xJQlNACi0rCi0rYmluX1BST0dSQU1TID0gbHVhIGx1 YWMKLSsKLStsdWFfU09VUkNFUyA9IGx1YS5jCi0rbHVhX0xEQUREID0gbGlibHVhLmxhIEBMVUFf TElCU0AKLStsdWFfREVQRU5ERU5DSUVTID0gbGlibHVhLmxhCi0rCi0rbHVhY19TT1VSQ0VTID0g bHVhYy5jIHByaW50LmMKLStsdWFjX0xEQUREID0gbGlibHVhLmxhIEBMVUFfTElCU0AKLStsdWFj X0RFUEVOREVOQ0lFUyA9IGxpYmx1YS5sYQotKwotKyMgbHVhYyBtdXN0IGJlIGxpbmtlZCBzdGF0 aWNhbGx5IGJlY2F1c2UgaXQgdXNlcyBmdW5jdGlvbnMgdGhhdAotKyMgZG9uJ3QgZ2V0IGV4cG9y dGVkIHRvIHRoZSBzaGFyZWQgb2JqZWN0Ci0rbHVhY19MREZMQUdTID0gLXN0YXRpYwotKwotK0VY VFJBX0RJU1QgPSBsdWFjb25mLmgudGVtcGxhdGUuaW4KLStCVUlMVF9TT1VSQ0VTID0gbHVhY29u Zi5oCi0rQ0xFQU5GSUxFUyA9IGx1YWNvbmYuaAotKwotK3JlYWRsaW5lX2RlZnMgPSBAUkVBRExJ TkVfREVGU0AKLSsKLStlZGl0ID0gCXNlZCBcCi0rCSAgLWUgJ3MsJWx1YV9kYXRhZGlyJSwkKGRh dGFkaXIpLGcnIFwKLSsJICAtZSAncywlbHVhX2xpYmRpciUsJChsaWJkaXIpLGcnCi0rCi0rbHVh Y29uZi5oIDogbHVhY29uZi5oLnRlbXBsYXRlCi0rCXJtIC1mIGx1YWNvbmYuaCBsdWFjb25mLmgu dG1wCi0rCSQoZWRpdCkgbHVhY29uZi5oLnRlbXBsYXRlID4gbHVhY29uZi5oLnRtcAotKwltdiBs dWFjb25mLmgudG1wIGx1YWNvbmYuaAotZGlmZiAtLWdpdCBhL3Rlc3QvTWFrZWZpbGUuYW0gYi90 ZXN0L01ha2VmaWxlLmFtCi1uZXcgZmlsZSBtb2RlIDEwMDY0NAotaW5kZXggMDAwMDAwMC4uYmFi N2VhYwotLS0tIC9kZXYvbnVsbAotKysrIGIvdGVzdC9NYWtlZmlsZS5hbQotQEAgLTAsMCArMSw1 IEBACi0rRVhUUkFfRElTVCA9IFwKLSsJYmlzZWN0Lmx1YSAgZW52Lmx1YSAgICAgICAgIGZpYi5s dWEgICAgICBsaWZlLmx1YSAgICAgICAgICBwcmludGYubHVhIFwKLSsJc2lldmUubHVhICAgdHJh Y2UtY2FsbHMubHVhIGNmLmx1YSAgICAgICBmYWN0b3JpYWwubHVhICAgICBnbG9iYWxzLmx1YSBc Ci0rCWx1YWMubHVhICAgIFJFQURNRSAgICAgICAgICBzb3J0Lmx1YSAgICAgdHJhY2UtZ2xvYmFs cy5sdWEgZWNoby5sdWEgXAotKwlmaWJmb3IubHVhICBoZWxsby5sdWEgICAgICAgcmVhZG9ubHku bHVhIHRhYmxlLmx1YSAgICAgICAgIHhkLmx1YQpkaWZmIC0tZ2l0IGEvcGF0Y2hlcy9sdWEtNS4x LjQvYXV0b2dlbi5zaCBiL3BhdGNoZXMvbHVhLTUuMS40L2F1dG9nZW4uc2gKZGVsZXRlZCBmaWxl IG1vZGUgMTIwMDAwCmluZGV4IDlmOGE0Y2IuLjAwMDAwMDAKLS0tIGEvcGF0Y2hlcy9sdWEtNS4x LjQvYXV0b2dlbi5zaAorKysgL2Rldi9udWxsCkBAIC0xICswLDAgQEAKLS4uL2F1dG9nZW4uc2gK XCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9wYXRjaGVzL2x1YS01LjEu NC9zZXJpZXMgYi9wYXRjaGVzL2x1YS01LjEuNC9zZXJpZXMKZGVsZXRlZCBmaWxlIG1vZGUgMTAw NjQ0CmluZGV4IDc0NmU4MTkuLjAwMDAwMDAKLS0tIGEvcGF0Y2hlcy9sdWEtNS4xLjQvc2VyaWVz CisrKyAvZGV2L251bGwKQEAgLTEsMTkgKzAsMCBAQAotIyBnZW5lcmF0ZWQgYnkgZ2l0LXB0eC1w YXRjaGVzCi0jIHVwc3RyZWFtIGlzc3VlcyB3aXRoIG5vIGNvbnRlbnQKLSMwMDAxLU1hbGljaW91 c2x5LWNyYWZ0ZWQtcHJlY29tcGlsZWQtY29kZS1jYW4tY3Jhc2gtTHVhLnBhdGNoCi0jMDAwMi1J dC1pcy1wb3NzaWJsZS10by1jcmVhdGUtZnVuY3Rpb25zLXRoYXQtcmV0dXJuLXRvby1tLnBhdGNo Ci0jdGFnOnVwc3RyZWFtIC0tc3RhcnQtbnVtYmVyIDMKLTAwMDMtV3JvbmctY29kZS1nZW5lcmF0 aW9uLWZvci1zb21lLXBhcnRpY3VsYXItYm9vbGVhbi1leC5wYXRjaAotMDAwNC1sdWFWX3NldHRh YmxlLW1heS1pbnZhbGlkYXRlLWEtcmVmZXJlbmNlLXRvLWEtdGFibGUtLnBhdGNoCi0wMDA1LWRl YnVnLmdldGZlbnYtZG9lcy1ub3QtY2hlY2std2hldGhlci1pdC1oYXMtYW4tYXJndW0ucGF0Y2gK LTAwMDYtR0MtbWF5LWdldC1zdHVjay1kdXJpbmctcGFyc2luZy1hbmQtYXZvaWRzLXByb3Blci1y ZS5wYXRjaAotMDAwNy1zdHJpbmcuZm9ybWF0LW1heS1nZXQtYnVmZmVyLWFzLWFuLWFyZ3VtZW50 LXdoZW4tdGhlLnBhdGNoCi0wMDA4LWlvLnJlYWQtbi1uLW1heS1yZXR1cm4tZ2FyYmFnZS1pZi1z ZWNvbmQtcmVhZC1mYWlscy5wYXRjaAotMDAwOS1Xcm9uZy1jb2RlLWdlbmVyYXRpb24tZm9yLXNv bWUtcGFydGljdWxhci1ib29sZWFuLWV4LnBhdGNoCi0wMDEwLV9fbmV3aW5kZXgtbWV0YW1ldGhv ZC1tYXktbm90LXdvcmstaWYtbWV0YXRhYmxlLWlzLWkucGF0Y2gKLTAwMTEtUGFyc2VyLW1heS1j b2xsZWN0LWEtcHJvdG90eXBlLXdoaWxlLWJ1aWxkaW5nLWl0LnBhdGNoCi0jdGFnOmF1dG90b29s cyAtLXN0YXJ0LW51bWJlciAxMDAKLTAxMDAtQWRkLWx1YS1zdXBwb3J0LXRvLXB0eGRpc3QtMS45 OS1yZW1vdmUtb2xkLU1ha2VmaWxlLnBhdGNoCi0wMTAxLUFkZC1sdWEtc3VwcG9ydC10by1wdHhk aXN0LTEuOTktYWRkLWF1dG9jb25mLWZpbGVzLnBhdGNoCi0wMTAyLUFkZC1sdWEtc3VwcG9ydC10 by1wdHhkaXN0LTEuOTktYWRkLWF1dG9tYWtlLWZpbGVzLnBhdGNoCi0jIDhiOTA5MDRiMGE1OTIz MDMzNDNhNTdiZDYzNWUyZWY4ICAtIGdpdC1wdHgtcGF0Y2hlcyBtYWdpYwpkaWZmIC0tZ2l0IGEv cGF0Y2hlcy9sdWEtNS4zLjQvMDAwMS1Dcm9zcy1jb21waWxlLWluLXB0eGRpc3QtZW52aXJpb25t ZW50LnBhdGNoIGIvcGF0Y2hlcy9sdWEtNS4zLjQvMDAwMS1Dcm9zcy1jb21waWxlLWluLXB0eGRp c3QtZW52aXJpb25tZW50LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu LjUyODgzZjMKLS0tIC9kZXYvbnVsbAorKysgYi9wYXRjaGVzL2x1YS01LjMuNC8wMDAxLUNyb3Nz LWNvbXBpbGUtaW4tcHR4ZGlzdC1lbnZpcmlvbm1lbnQucGF0Y2gKQEAgLTAsMCArMSwxMDUgQEAK K0Zyb206IERlbmlzIE9zdGVybGFuZCA8RGVuaXMuT3N0ZXJsYW5kQGRpZWhsLmNvbT4KK0RhdGU6 IFdlZCwgMjggSnVuIDIwMTcgMTU6NTI6NDIgKzAyMDAKK1N1YmplY3Q6IFtQQVRDSF0gQ3Jvc3Mt Y29tcGlsZSBpbiBwdHhkaXN0IGVudmlyaW9ubWVudC4KKworU2lnbmVkLW9mZi1ieTogRGVuaXMg T3N0ZXJsYW5kIDxEZW5pcy5Pc3RlcmxhbmRAZGllaGwuY29tPgorLS0tCisgTWFrZWZpbGUgICAg IHwgIDkgKysrKysrLS0tCisgc3JjL01ha2VmaWxlIHwgMTggKysrKysrKysrKy0tLS0tLS0tCisg MiBmaWxlcyBjaGFuZ2VkLCAxNiBpbnNlcnRpb25zKCspLCAxMSBkZWxldGlvbnMoLSkKKworZGlm ZiAtLWdpdCBhL01ha2VmaWxlIGIvTWFrZWZpbGUKK2luZGV4IDExOTExMGQyZjAxMC4uMmIyOTY4 NDQ5ZmI1IDEwMDY0NAorLS0tIGEvTWFrZWZpbGUKKysrKyBiL01ha2VmaWxlCitAQCAtNCwxMyAr NCwxMyBAQAorICMgPT0gQ0hBTkdFIFRIRSBTRVRUSU5HUyBCRUxPVyBUTyBTVUlUIFlPVVIgRU5W SVJPTk1FTlQgPT09PT09PT09PT09PT09PT09PT09PT0KKyAKKyAjIFlvdXIgcGxhdGZvcm0uIFNl ZSBQTEFUUyBmb3IgcG9zc2libGUgdmFsdWVzLgorLVBMQVQ9IG5vbmUKKytQTEFUPSBsaW51eAor IAorICMgV2hlcmUgdG8gaW5zdGFsbC4gVGhlIGluc3RhbGxhdGlvbiBzdGFydHMgaW4gdGhlIHNy YyBhbmQgZG9jIGRpcmVjdG9yaWVzLAorICMgc28gdGFrZSBjYXJlIGlmIElOU1RBTExfVE9QIGlz IG5vdCBhbiBhYnNvbHV0ZSBwYXRoLiBTZWUgdGhlIGxvY2FsIHRhcmdldC4KKyAjIFlvdSBtYXkg d2FudCB0byBtYWtlIElOU1RBTExfTE1PRCBhbmQgSU5TVEFMTF9DTU9EIGNvbnNpc3RlbnQgd2l0 aAorICMgTFVBX1JPT1QsIExVQV9MRElSLCBhbmQgTFVBX0NESVIgaW4gbHVhY29uZi5oLgorLUlO U1RBTExfVE9QPSAvdXNyL2xvY2FsCisrSU5TVEFMTF9UT1A9ICQoREVTVERJUikvdXNyCisgSU5T VEFMTF9CSU49ICQoSU5TVEFMTF9UT1ApL2JpbgorIElOU1RBTExfSU5DPSAkKElOU1RBTExfVE9Q KS9pbmNsdWRlCisgSU5TVEFMTF9MSUI9ICQoSU5TVEFMTF9UT1ApL2xpYgorQEAgLTUyLDcgKzUy LDcgQEAgUj0gJFYuNAorIGFsbDoJJChQTEFUKQorIAorICQoUExBVFMpIGNsZWFuOgorLQljZCBz cmMgJiYgJChNQUtFKSAkQAorKwljZCBzcmMgJiYgJChNQUtFKSAkQCBSPSRSCisgCisgdGVzdDoJ ZHVtbXkKKyAJc3JjL2x1YSAtdgorQEAgLTYyLDYgKzYyLDkgQEAgaW5zdGFsbDogZHVtbXkKKyAJ Y2Qgc3JjICYmICQoSU5TVEFMTF9FWEVDKSAkKFRPX0JJTikgJChJTlNUQUxMX0JJTikKKyAJY2Qg c3JjICYmICQoSU5TVEFMTF9EQVRBKSAkKFRPX0lOQykgJChJTlNUQUxMX0lOQykKKyAJY2Qgc3Jj ICYmICQoSU5TVEFMTF9EQVRBKSAkKFRPX0xJQikgJChJTlNUQUxMX0xJQikKKysJY2Qgc3JjICYm ICQoSU5TVEFMTF9FWEVDKSBsaWJsdWEuc28uJFIgJChJTlNUQUxMX0xJQikKKysJbG4gLXMgbGli bHVhLnNvLiRSICQoSU5TVEFMTF9MSUIpL2xpYmx1YS5zby4kVgorKwlsbiAtcyBsaWJsdWEuc28u JFYgJChJTlNUQUxMX0xJQikvbGlibHVhLnNvCisgCWNkIGRvYyAmJiAkKElOU1RBTExfREFUQSkg JChUT19NQU4pICQoSU5TVEFMTF9NQU4pCisgCisgdW5pbnN0YWxsOgorZGlmZiAtLWdpdCBhL3Ny Yy9NYWtlZmlsZSBiL3NyYy9NYWtlZmlsZQoraW5kZXggZDcxYzc1Yzg3MzIyLi5lZjE3NjBkNjUy MjUgMTAwNjQ0CistLS0gYS9zcmMvTWFrZWZpbGUKKysrKyBiL3NyYy9NYWtlZmlsZQorQEAgLTQs MTUgKzQsMTMgQEAKKyAjID09IENIQU5HRSBUSEUgU0VUVElOR1MgQkVMT1cgVE8gU1VJVCBZT1VS IEVOVklST05NRU5UID09PT09PT09PT09PT09PT09PT09PT09CisgCisgIyBZb3VyIHBsYXRmb3Jt LiBTZWUgUExBVFMgZm9yIHBvc3NpYmxlIHZhbHVlcy4KKy1QTEFUPSBub25lCisrUExBVD0gbGlu dXgKKyAKKy1DQz0gZ2NjIC1zdGQ9Z251OTkKKy1DRkxBR1M9IC1PMiAtV2FsbCAtV2V4dHJhIC1E TFVBX0NPTVBBVF81XzIgJChTWVNDRkxBR1MpICQoTVlDRkxBR1MpCisrQ0ZMQUdTPSAtc3RkPWdu dTk5IC1mUElDIC1PMiAtV2FsbCAtV2V4dHJhIC1ETFVBX0NPTVBBVF81XzIgJChTWVNDRkxBR1Mp ICQoTVlDRkxBR1MpCisgTERGTEFHUz0gJChTWVNMREZMQUdTKSAkKE1ZTERGTEFHUykKKyBMSUJT PSAtbG0gJChTWVNMSUJTKSAkKE1ZTElCUykKKyAKKy1BUj0gYXIgcmN1CistUkFOTElCPSByYW5s aWIKKytBUkZMQUdTPSByY3UKKyBSTT0gcm0gLWYKKyAKKyBTWVNDRkxBR1M9CitAQCAtMjksNiAr MjcsNyBAQCBNWU9CSlM9CisgUExBVFM9IGFpeCBic2QgYzg5IGZyZWVic2QgZ2VuZXJpYyBsaW51 eCBtYWNvc3ggbWluZ3cgcG9zaXggc29sYXJpcworIAorIExVQV9BPQlsaWJsdWEuYQorK0xVQV9T Tz0gbGlibHVhLnNvLiRSCisgQ09SRV9PPQlsYXBpLm8gbGNvZGUubyBsY3R5cGUubyBsZGVidWcu byBsZG8ubyBsZHVtcC5vIGxmdW5jLm8gbGdjLm8gbGxleC5vIFwKKyAJbG1lbS5vIGxvYmplY3Qu byBsb3Bjb2Rlcy5vIGxwYXJzZXIubyBsc3RhdGUubyBsc3RyaW5nLm8gbHRhYmxlLm8gXAorIAls dG0ubyBsdW5kdW1wLm8gbHZtLm8gbHppby5vCitAQCAtNDMsOCArNDIsOCBAQCBMVUFDX1Q9CWx1 YWMKKyBMVUFDX089CWx1YWMubworIAorIEFMTF9PPSAkKEJBU0VfTykgJChMVUFfTykgJChMVUFD X08pCistQUxMX1Q9ICQoTFVBX0EpICQoTFVBX1QpICQoTFVBQ19UKQorLUFMTF9BPSAkKExVQV9B KQorK0FMTF9UPSAkKExVQV9BKSAkKExVQV9TTykgJChMVUFfVCkgJChMVUFDX1QpCisrQUxMX0E9 ICQoTFVBX0EpICQoTFVBX1NPKQorIAorICMgVGFyZ2V0cyBzdGFydCBoZXJlLgorIGRlZmF1bHQ6 ICQoUExBVCkKK0BAIC01Niw5ICs1NSwxMiBAQCBvOgkkKEFMTF9PKQorIGE6CSQoQUxMX0EpCisg CisgJChMVUFfQSk6ICQoQkFTRV9PKQorLQkkKEFSKSAkQCAkKEJBU0VfTykKKysJJChBUikgJChB UkZMQUdTKSAkQCAkKEJBU0VfTykKKyAJJChSQU5MSUIpICRACisgCisrJChMVUFfU08pOiAkKEJB U0VfTykKKysJJChDQykgLXNoYXJlZCAtbyAkQCAkKEJBU0VfTykgJChmaWx0ZXItb3V0ICVyZWFk bGluZSwgJChMSUJTKSkKKysKKyAkKExVQV9UKTogJChMVUFfTykgJChMVUFfQSkKKyAJJChDQykg LW8gJEAgJChMREZMQUdTKSAkKExVQV9PKSAkKExVQV9BKSAkKExJQlMpCisgCmRpZmYgLS1naXQg YS9wYXRjaGVzL2x1YS01LjMuNC8wMDAyLUluc3RhbGwtcGtnY29uZmlnLWZpbGUucGF0Y2ggYi9w YXRjaGVzL2x1YS01LjMuNC8wMDAyLUluc3RhbGwtcGtnY29uZmlnLWZpbGUucGF0Y2gKbmV3IGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTcxNzE3OAotLS0gL2Rldi9udWxsCisrKyBi L3BhdGNoZXMvbHVhLTUuMy40LzAwMDItSW5zdGFsbC1wa2djb25maWctZmlsZS5wYXRjaApAQCAt MCwwICsxLDYxIEBACitGcm9tOiBEZW5pcyBPc3RlcmxhbmQgPERlbmlzLk9zdGVybGFuZEBkaWVo bC5jb20+CitEYXRlOiBUaHUsIDI5IEp1biAyMDE3IDE0OjU0OjA0ICswMjAwCitTdWJqZWN0OiBb UEFUQ0hdIEluc3RhbGwgcGtnY29uZmlnIGZpbGUuCisKK1NpZ25lZC1vZmYtYnk6IERlbmlzIE9z dGVybGFuZCA8RGVuaXMuT3N0ZXJsYW5kQGRpZWhsLmNvbT4KKy0tLQorIE1ha2VmaWxlICB8ICA4 ICsrKysrKy0tCisgbHVhLnBjLmluIHwgMTIgKysrKysrKysrKysrCisgMiBmaWxlcyBjaGFuZ2Vk LCAxOCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorIGNyZWF0ZSBtb2RlIDEwMDY0NCBs dWEucGMuaW4KKworZGlmZiAtLWdpdCBhL01ha2VmaWxlIGIvTWFrZWZpbGUKK2luZGV4IDJiMjk2 ODQ0OWZiNS4uMGVjZDAxOTgxNjlmIDEwMDY0NAorLS0tIGEvTWFrZWZpbGUKKysrKyBiL01ha2Vm aWxlCitAQCAtNTcsMTQgKzU3LDE1IEBAICQoUExBVFMpIGNsZWFuOgorIHRlc3Q6CWR1bW15Cisg CXNyYy9sdWEgLXYKKyAKKy1pbnN0YWxsOiBkdW1teQorLQljZCBzcmMgJiYgJChNS0RJUikgJChJ TlNUQUxMX0JJTikgJChJTlNUQUxMX0lOQykgJChJTlNUQUxMX0xJQikgJChJTlNUQUxMX01BTikg JChJTlNUQUxMX0xNT0QpICQoSU5TVEFMTF9DTU9EKQorK2luc3RhbGw6IGR1bW15IGx1YS5wYwor KwljZCBzcmMgJiYgJChNS0RJUikgJChJTlNUQUxMX0JJTikgJChJTlNUQUxMX0lOQykgJChJTlNU QUxMX0xJQikvcGtnY29uZmlnICQoSU5TVEFMTF9NQU4pICQoSU5TVEFMTF9MTU9EKSAkKElOU1RB TExfQ01PRCkKKyAJY2Qgc3JjICYmICQoSU5TVEFMTF9FWEVDKSAkKFRPX0JJTikgJChJTlNUQUxM X0JJTikKKyAJY2Qgc3JjICYmICQoSU5TVEFMTF9EQVRBKSAkKFRPX0lOQykgJChJTlNUQUxMX0lO QykKKyAJY2Qgc3JjICYmICQoSU5TVEFMTF9EQVRBKSAkKFRPX0xJQikgJChJTlNUQUxMX0xJQikK KyAJY2Qgc3JjICYmICQoSU5TVEFMTF9FWEVDKSBsaWJsdWEuc28uJFIgJChJTlNUQUxMX0xJQikK KyAJbG4gLXMgbGlibHVhLnNvLiRSICQoSU5TVEFMTF9MSUIpL2xpYmx1YS5zby4kVgorIAlsbiAt cyBsaWJsdWEuc28uJFYgJChJTlNUQUxMX0xJQikvbGlibHVhLnNvCisrCSQoSU5TVEFMTF9EQVRB KSBsdWEucGMgJChJTlNUQUxMX0xJQikvcGtnY29uZmlnCisgCWNkIGRvYyAmJiAkKElOU1RBTExf REFUQSkgJChUT19NQU4pICQoSU5TVEFMTF9NQU4pCisgCisgdW5pbnN0YWxsOgorQEAgLTExMSw2 ICsxMTIsOSBAQCBwYzoKKyAJQGVjaG8gImxpYmRpcj0kKElOU1RBTExfTElCKSIKKyAJQGVjaG8g ImluY2x1ZGVkaXI9JChJTlNUQUxMX0lOQykiCisgCisrbHVhLnBjOiBsdWEucGMuaW4KKysJc2Vk IC1lICJzL0BWRVJTSU9OQC8kUi9nIiAkPCA+ICRACisrCisgIyBsaXN0IHRhcmdldHMgdGhhdCBk byBub3QgY3JlYXRlIGZpbGVzIChidXQgbm90IGFsbCBtYWtlcyB1bmRlcnN0YW5kIC5QSE9OWSkK KyAuUEhPTlk6IGFsbCAkKFBMQVRTKSBjbGVhbiB0ZXN0IGluc3RhbGwgbG9jYWwgbm9uZSBkdW1t eSBlY2hvIHBlY2hvIGxlY2hvCisgCitkaWZmIC0tZ2l0IGEvbHVhLnBjLmluIGIvbHVhLnBjLmlu CituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAwMDAwLi42MzdiNGU2YjRjMTQK Ky0tLSAvZGV2L251bGwKKysrKyBiL2x1YS5wYy5pbgorQEAgLTAsMCArMSwxMiBAQAorK3ByZWZp eD0ke3BjZmlsZWRpcn0vLi4vLi4KKytsaWJkaXI9JHtwcmVmaXh9L2xpYgorK2luY2x1ZGVkaXI9 JHtwcmVmaXh9L2luY2x1ZGUKKysKKytOYW1lOiBMdWEKKytEZXNjcmlwdGlvbjogTHVhIGxhbmd1 YWdlIGVuZ2luZQorK1ZlcnNpb246IEBWRVJTSU9OQAorK1JlcXVpcmVzOgorK0xpYnM6IC1MJHts aWJkaXJ9IC1sbHVhCisrTGlicy5wcml2YXRlOiAtbG0gLWxkbAorK0NmbGFnczogLUkke2luY2x1 ZGVkaXJ9CisrCmRpZmYgLS1naXQgYS9wYXRjaGVzL2x1YS01LjMuNC9zZXJpZXMgYi9wYXRjaGVz L2x1YS01LjMuNC9zZXJpZXMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGQw YTc5MwotLS0gL2Rldi9udWxsCisrKyBiL3BhdGNoZXMvbHVhLTUuMy40L3NlcmllcwpAQCAtMCww ICsxLDUgQEAKKyMgZ2VuZXJhdGVkIGJ5IGdpdC1wdHgtcGF0Y2hlcworI3RhZzpiYXNlIC0tc3Rh cnQtbnVtYmVyIDEKKzAwMDEtQ3Jvc3MtY29tcGlsZS1pbi1wdHhkaXN0LWVudmlyaW9ubWVudC5w YXRjaAorMDAwMi1JbnN0YWxsLXBrZ2NvbmZpZy1maWxlLnBhdGNoCisjIDhjZWIyMzFiZDFkN2Rh ZmYwNjZhYTA0NWU3NjFhNWQ4ICAtIGdpdC1wdHgtcGF0Y2hlcyBtYWdpYwpkaWZmIC0tZ2l0IGEv cnVsZXMvbHVhLmluIGIvcnVsZXMvbHVhLmluCmluZGV4IDNhMDMxYmMuLjE1YzlkNzEgMTAwNjQ0 Ci0tLSBhL3J1bGVzL2x1YS5pbgorKysgYi9ydWxlcy9sdWEuaW4KQEAgLTMsNyArMyw3IEBACiBt ZW51Y29uZmlnIExVQQogCXRyaXN0YXRlCiAJcHJvbXB0ICJsdWEgICAgICAgICAgICAgICAgICAg ICAgICAgICAiCi0Jc2VsZWN0IFJFQURMSU5FCWlmIExVQV9SRUFETElORQorCXNlbGVjdCBSRUFE TElORQogCXNlbGVjdCBMSUJDX00KIAlzZWxlY3QgTElCQ19ETAogCWhlbHAKQEAgLTE5LDEzICsx OSw2IEBAIG1lbnVjb25maWcgTFVBCiAKIGlmIExVQQogCi1jb25maWcgTFVBX1JFQURMSU5FCi0J Ym9vbAotCXByb21wdCAiVXNlIHJlYWRsaW5lIgotCWRlcGVuZHMgb24gQlJPS0VOCi0JaGVscAot CSAgRklYTUUKLQogY29uZmlnIExVQV9JTlNUQUxMX0xVQQogCWJvb2wKIAlwcm9tcHQgIkluc3Rh bGwgbHVhIG9uIHRhcmdldCIKZGlmZiAtLWdpdCBhL3J1bGVzL2x1YS5tYWtlIGIvcnVsZXMvbHVh Lm1ha2UKaW5kZXggNWEzMThmNS4uMDQ5M2FkMSAxMDA2NDQKLS0tIGEvcnVsZXMvbHVhLm1ha2UK KysrIGIvcnVsZXMvbHVhLm1ha2UKQEAgLTE3LDggKzE3LDggQEAgUEFDS0FHRVMtJChQVFhDT05G X0xVQSkgKz0gbHVhCiAjCiAjIFBhdGhzIGFuZCBuYW1lcwogIwotTFVBX1ZFUlNJT04JOj0gNS4x LjQKLUxVQV9NRDUJCTo9IGQwODcwZjJkZTU1ZDU5YzFjODQxOWYzNmU4ZmFjMTUwCitMVUFfVkVS U0lPTgk6PSA1LjMuNAorTFVBX01ENQkJOj0gNTNhOWM2OGJjYzBlZGE1OGJkYzIwOTVhZDVjZGZj NjMKIExVQQkJOj0gbHVhLSQoTFVBX1ZFUlNJT04pCiBMVUFfU1VGRklYCTo9IHRhci5negogTFVB X1VSTAkJOj0gaHR0cDovL3d3dy5sdWEub3JnL2Z0cC8kKExVQSkuJChMVUFfU1VGRklYKQpAQCAt MzAsMTMgKzMwLDEzIEBAIExVQV9MSUNFTlNFICAgICA6PSBNSVQKICMgUHJlcGFyZQogIyAtLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tCiAKLSMKLSMgYXV0b2NvbmYKLSMKLUxVQV9BVVRPQ09ORiA6PSBcCi0J JChDUk9TU19BVVRPQ09ORl9VU1IpIFwKLQktLWVuYWJsZS1zdGF0aWMgXAotCS0tJChjYWxsIHB0 eC93d28sIFBUWENPTkZfTFVBX1JFQURMSU5FKS1yZWFkbGluZSBcCitMVUFfQ09ORl9UT09MICAg ICAgOj0gTk8KKworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIENvbXBpbGUKKyMgLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQorCitMVUFfTUFLRV9FTlYgICAgICAgOj0gJChDUk9TU19FTlYpCiAKICMgLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLQogIyBUYXJnZXQtSW5zdGFsbApAQCAtNTgsNyArNTgsNyBAQCBpZmRl ZiBQVFhDT05GX0xVQV9JTlNUQUxMX0xVQUMKIAlAJChjYWxsIGluc3RhbGxfY29weSwgbHVhLCAw LCAwLCAwNzU1LCAtLCAvdXNyL2Jpbi9sdWFjKQogZW5kaWYKIGlmZGVmIFBUWENPTkZfTFVBX0lO U1RBTExfTElCTFVBCi0JQCQoY2FsbCBpbnN0YWxsX2xpYiwgbHVhLCAwLCAwLCAwNjQ0LCBsaWJs dWEtJChMVUFfVkVSU0lPTikpCisJQCQoY2FsbCBpbnN0YWxsX2xpYiwgbHVhLCAwLCAwLCAwNjQ0 LCBsaWJsdWEpCiBlbmRpZgogCUAkKGNhbGwgaW5zdGFsbF9maW5pc2gsIGx1YSkKIAotLSAKMi43 LjQKCgpEaWVobCBBS08gU3RpZnR1bmcgJiBDby4gS0csIFBmYW5uZXJzdHJhw59lIDc1LTgzLCA4 ODIzOSBXYW5nZW4gaW0gQWxsZ8OkdQpCZXJlaWNoc3ZvcnN0YW5kOiBEaXBsLi1JbmcuIE1pY2hh ZWwgU2llZGVudG9wIChTcHJlY2hlciksIEpvc2VmIEZlbGxuZXIgKE1pdGdsaWVkKQpTaXR6IGRl ciBHZXNlbGxzY2hhZnQ6IFdhbmdlbiBpLkEuIOKAkyBSZWdpc3RlcmdlcmljaHQ6IEFtdHNnZXJp Y2h0IFVsbSBIUkEgNjIwNjA5IOKAkyBQZXJzw7ZubGljaCBoYWZ0ZW5kZSBHZXNlbGxzY2hhZnRl cmluOiBEaWVobCBWZXJ3YWx0dW5ncy1TdGlmdHVuZyDigJMgU2l0ejogTsO8cm5iZXJnIOKAkyBS ZWdpc3RlcmdlcmljaHQ6IEFtdHNnZXJpY2h0IE7DvHJuYmVyZyBIUkEgMTE3NTYg4oCTClZvcnN0 YW5kOiBEci4tSW5nLiBFLmguIFRob21hcyBEaWVobCAo4oCgKSAoVm9yc2l0emVuZGVyKSwgSGVy ciBEaXBsLi1XaXJ0c2NoLi1JbmcuIFdvbGZnYW5nIFdlZ2dlbiAoc3RlbGx2ZXJ0cmV0ZW5kZXIg Vm9yc2l0emVuZGVyKSwgRGlwbC4tS2ZtLiBDbGF1cyBHw7xudGhlciwgRGlwbC4tS2ZtLiBGcmFu ayBHdXR6ZWl0LCBEci4tSW5nLiBIZWlucmljaCBTY2h1bmssIERyLi1JbmcuIE1pY2hhZWwgU2ll ZGVudG9wICwgRGlwbC4tS2ZtLiBEci4tSW5nLiBNYXJ0aW4gU29tbWVyLCBEaXBsLi1JbmcuIChG SCkgUmFpbmVyIHZvbiBCb3JzdGVsLCBWb3JzaXR6ZW5kZXIgZGVzIEF1ZnNpY2h0c3JhdGVzOiBE ci4gS2xhdXMgTWFpZXIKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CkRlciBJbmhhbHQgZGVyIHZvcnN0ZWhlbmRlbiBFLU1haWwgaXN0IG5pY2h0IHJlY2h0bGljaCBi aW5kZW5kLiBEaWVzZSBFLU1haWwgZW50aGFlbHQgdmVydHJhdWxpY2hlIHVuZC9vZGVyIHJlY2h0 bGljaCBnZXNjaHVldHp0ZSBJbmZvcm1hdGlvbmVuLgpJbmZvcm1pZXJlbiBTaWUgdW5zIGJpdHRl LCB3ZW5uIFNpZSBkaWVzZSBFLU1haWwgZmFlbHNjaGxpY2hlcndlaXNlIGVyaGFsdGVuIGhhYmVu LiBCaXR0ZSBsb2VzY2hlbiBTaWUgaW4gZGllc2VtIEZhbGwgZGllIE5hY2hyaWNodC4gSmVkZSB1 bmVybGF1YnRlIEZvcm0gZGVyIFJlcHJvZHVrdGlvbiwgQmVrYW5udGdhYmUsIEFlbmRlcnVuZywg VmVydGVpbHVuZyB1bmQvb2RlciBQdWJsaWthdGlvbiBkaWVzZXIgRS1NYWlsIGlzdCBzdHJlbmdz dGVucyB1bnRlcnNhZ3QuClRoZSBjb250ZW50cyBvZiB0aGUgYWJvdmUgbWVudGlvbmVkIGUtbWFp bCBpcyBub3QgbGVnYWxseSBiaW5kaW5nLiBUaGlzIGUtbWFpbCBjb250YWlucyBjb25maWRlbnRp YWwgYW5kL29yIGxlZ2FsbHkgcHJvdGVjdGVkIGluZm9ybWF0aW9uLiBQbGVhc2UgaW5mb3JtIHVz IGlmIHlvdSBoYXZlIHJlY2VpdmVkIHRoaXMgZS1tYWlsIGJ5IG1pc3Rha2UgYW5kIGRlbGV0ZSBp dCBpbiBzdWNoIGEgY2FzZS4gRWFjaCB1bmF1dGhvcml6ZWQgcmVwcm9kdWN0aW9uLCBkaXNjbG9z dXJlLCBhbHRlcmF0aW9uLCBkaXN0cmlidXRpb24gYW5kL29yIHB1YmxpY2F0aW9uIG9mIHRoaXMg ZS1tYWlsIGlzIHN0cmljdGx5IHByb2hpYml0ZWQuCgpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpwdHhkaXN0IG1haWxpbmcgbGlzdApwdHhkaXN0QHBlbmd1 dHJvbml4LmRl