From: marko.makela Date: April 18 2012 8:55am Subject: bzr push into mysql-trunk-wl5522 branch (marko.makela:4072 to 4075) WL#5522 List-Archive: http://lists.mysql.com/commits/143549 Message-Id: <201204180855.q3I8tHJC032547@acsmt356.oracle.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 IDQwNzUgTWFya28gTcOka2Vsw6QJMjAxMi0wNC0xOAogICAgICBXTCM1NTIyOiBSZW1vdmUgdHJh aWxpbmcgc3BhY2UgZnJvbSBjb2RlIGFuZCB0ZXN0cy4KCiAgICBtb2RpZmllZDoKICAgICAgbXlz cWwtdGVzdC9zdWl0ZS9zeXNfdmFycy9yL2lubm9kYl9wdXJnZV9ydW5fbm93X2Jhc2ljLnJlc3Vs dAogICAgICBteXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3IvaW5ub2RiX3B1cmdlX3N0b3Bfbm93 X2Jhc2ljLnJlc3VsdAogICAgICBteXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3QvaW5ub2RiX3B1 cmdlX3J1bl9ub3dfYmFzaWMudGVzdAogICAgICBteXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3Qv aW5ub2RiX3B1cmdlX3N0b3Bfbm93X2Jhc2ljLnRlc3QKICAgICAgc3RvcmFnZS9pbm5vYmFzZS9i dHIvYnRyMGJ0ci5jYwogICAgICBzdG9yYWdlL2lubm9iYXNlL2ZpbC9maWwwZmlsLmNjCiAgICAg IHN0b3JhZ2UvaW5ub2Jhc2UvbXRyL210cjBtdHIuY2MKICAgICAgc3RvcmFnZS9pbm5vYmFzZS9y b3cvcm93MGltcG9ydC5jYwogICAgICBzdG9yYWdlL2lubm9iYXNlL3Jvdy9yb3cwbXlzcWwuY2MK IDQwNzQgTWFya28gTcOka2Vsw6QJMjAxMi0wNC0xOCBbbWVyZ2VdCiAgICAgIE1lcmdlIG15c3Fs LXRydW5rIHRvIG15c3FsLXRydW5rLXdsNTUyMi4KICAgICAgCiAgICAgIFNldmVyYWwgdGVzdHMg Y3Jhc2ggYmVmb3JlIGFuZCBhZnRlciB0aGlzIG1lcmdlLiBUbyBtZW50aW9uIHNvbWU6CiAgICAg IC0tc3VpdGUgaW5ub2RiOiBpbm5vZGItd2w1NTIyLWRlYnVnIChnbGliYyBkZXRlY3RlZCBkb3Vi bGUgZnJlZSkKICAgICAgLS1zdWl0ZSBtYWluOiBkYXRlX2Zvcm1hdHMgY3R5cGVfZXJyb3JzIGN0 eXBlX3VjcyBjdHlwZV91dGY4bWI0X2hlYXAKICAgICAgY3R5cGVfdXRmOG1iNF9teWlzYW0gdmFy aWFibGVzIG15c3FsIGN0eXBlX3V0ZjhtYjQgY3JlYXRlLWJpZwoKICAgIGFkZGVkOgogICAgICBt eXNxbC10ZXN0L3N1aXRlL2lubm9kYi9yL2lubm9kYi1hbHRlci1kaXNjYXJkLnJlc3VsdAogICAg ICBteXNxbC10ZXN0L3N1aXRlL2lubm9kYi90L2lubm9kYi1hbHRlci1kaXNjYXJkLnRlc3QKICAg IG1vZGlmaWVkOgogICAgICBteXNxbC10ZXN0L3N1aXRlL2lubm9kYi9yL2lubm9kYi1pbmRleC1v bmxpbmUucmVzdWx0CiAgICAgIG15c3FsLXRlc3Qvc3VpdGUvaW5ub2RiL3QvaW5ub2RiLWluZGV4 LW9ubGluZS50ZXN0CiAgICAgIHN0b3JhZ2UvaW5ub2Jhc2UvaGFuZGxlci9oYW5kbGVyMGFsdGVy LmNjCiAgICAgIHN0b3JhZ2UvaW5ub2Jhc2UvbG9nL2xvZzByZWN2LmNjCiA0MDczIE1hcmtvIE3D pGtlbMOkCTIwMTItMDQtMTgKICAgICAgV0wjNTUyMjogQWRqdXN0IG15c3FsLXRlc3Qgc3VwcHJl c3Npb25zIGZvciBjaGFuZ2VkIElubm9EQiBtZXNzYWdlLgoKICAgIG1vZGlmaWVkOgogICAgICBt eXNxbC10ZXN0L2luY2x1ZGUvbWl4MS5pbmMKICAgICAgbXlzcWwtdGVzdC9saWIvdjEvbXRyX3Jl cG9ydC5wbAogICAgICBteXNxbC10ZXN0L3IvbG93ZXJjYXNlX3RhYmxlMy5yZXN1bHQKICAgICAg bXlzcWwtdGVzdC9zdWl0ZS9pbm5vZGIvci9pbm5vZGJfbXlzcWwucmVzdWx0CiAgICAgIG15c3Fs LXRlc3Qvc3VpdGUvaW5ub2RiL3QvaW5ub2RiX215c3FsLnRlc3QKICAgICAgbXlzcWwtdGVzdC90 L2xvd2VyY2FzZV90YWJsZTMudGVzdAogNDA3MiBTdW5ueSBCYWlucwkyMDEyLTA0LTE4IFttZXJn ZV0KICAgICAgV0wjNTUyMiAtIE1lcmdlIGZyb20gbXlzcWwtdHJ1bmsuCgogICAgYWRkZWQ6CiAg ICAgIG15c3FsLXRlc3Qvci9teXNxbF9lbWJlZGRlZF9jbGllbnRfdGVzdC5yZXN1bHQKICAgICAg bXlzcWwtdGVzdC90L215c3FsX2VtYmVkZGVkX2NsaWVudF90ZXN0LnRlc3QKICAgIG1vZGlmaWVk OgogICAgICBteXNxbC10ZXN0L2V4dHJhL3JwbF90ZXN0cy9ycGxfbG9hZGRhdGEudGVzdAogICAg ICBteXNxbC10ZXN0L3N1aXRlL2VuZ2luZXMvZnVuY3MvdC9jcmFzaF9tYW55dGFibGVzX251bWJl ci50ZXN0CiAgICAgIG15c3FsLXRlc3Qvc3VpdGUvZW5naW5lcy9mdW5jcy90L2xkX2FsbF9udW1i ZXJfc3RyaW5nX2NhbGVuZGFyX3R5cGVzLnRlc3QKICAgICAgbXlzcWwtdGVzdC9zdWl0ZS9lbmdp bmVzL2Z1bmNzL3Qvc2Vfam9pbl9jcm9zcy50ZXN0CiAgICAgIG15c3FsLXRlc3Qvc3VpdGUvZW5n aW5lcy9mdW5jcy90L3NlX2pvaW5fZGVmYXVsdC50ZXN0CiAgICAgIG15c3FsLXRlc3Qvc3VpdGUv ZW5naW5lcy9mdW5jcy90L3NlX2pvaW5faW5uZXIudGVzdAogICAgICBteXNxbC10ZXN0L3N1aXRl L2VuZ2luZXMvZnVuY3MvdC9zZV9qb2luX2xlZnQudGVzdAogICAgICBteXNxbC10ZXN0L3N1aXRl L2VuZ2luZXMvZnVuY3MvdC9zZV9qb2luX25hdHVyYWxfbGVmdC50ZXN0CiAgICAgIG15c3FsLXRl c3Qvc3VpdGUvZW5naW5lcy9mdW5jcy90L3NlX2pvaW5fbmF0dXJhbF9sZWZ0X291dGVyLnRlc3QK ICAgICAgbXlzcWwtdGVzdC9zdWl0ZS9lbmdpbmVzL2Z1bmNzL3Qvc2Vfam9pbl9uYXR1cmFsX3Jp Z2h0LnRlc3QKICAgICAgbXlzcWwtdGVzdC9zdWl0ZS9lbmdpbmVzL2Z1bmNzL3Qvc2Vfam9pbl9u YXR1cmFsX3JpZ2h0X291dGVyLnRlc3QKICAgICAgbXlzcWwtdGVzdC9zdWl0ZS9lbmdpbmVzL2Z1 bmNzL3Qvc2Vfam9pbl9yaWdodC50ZXN0CiAgICAgIG15c3FsLXRlc3Qvc3VpdGUvZW5naW5lcy9m dW5jcy90L3NlX2pvaW5fcmlnaHRfb3V0ZXIudGVzdAogICAgICBteXNxbC10ZXN0L3N1aXRlL2Vu Z2luZXMvZnVuY3MvdC9zZV9qb2luX3N0cmFpZ2h0LnRlc3QKICAgICAgbXlzcWwtdGVzdC9zdWl0 ZS9lbmdpbmVzL2Z1bmNzL3Qvc2Vfc3RyaW5nX2xpbWl0LnRlc3QKICAgICAgbXlzcWwtdGVzdC9z dWl0ZS9lbmdpbmVzL2l1ZHMvdC91cGRhdGVfZGVsZXRlX251bWJlci50ZXN0CiAgICAgIG15c3Fs LXRlc3Qvc3VpdGUvaW5ub2RiL3QvaW5ub2RiX2J1ZzMwNDIzLnRlc3QKICAgICAgbXlzcWwtdGVz dC9zdWl0ZS9pbm5vZGIvdC9pbm5vZGJfYnVnNTMyOTAudGVzdAogICAgICBteXNxbC10ZXN0L3N1 aXRlL3BhcnRzL3QvcGFydGl0aW9uX2Zsb2F0X215aXNhbS50ZXN0CiAgICAgIG15c3FsLXRlc3Qv c3VpdGUvcnBsL3IvcnBsX2JpbmxvZ19pbmRleC5yZXN1bHQKICAgICAgbXlzcWwtdGVzdC9zdWl0 ZS9ycGwvci9ycGxfbG9hZGRhdGEucmVzdWx0CiAgICAgIG15c3FsLXRlc3Qvc3VpdGUvcnBsL3Iv cnBsX3BhcmFsbGVsX3N0YXJ0X3N0b3AucmVzdWx0CiAgICAgIG15c3FsLXRlc3Qvc3VpdGUvcnBs L3IvcnBsX3N0bV9sb2FkZGF0YV9jb25jdXJyZW50LnJlc3VsdAogICAgICBteXNxbC10ZXN0L3N1 aXRlL3JwbC90L3JwbF9iaW5sb2dfaW5kZXgudGVzdAogICAgICBteXNxbC10ZXN0L3N1aXRlL3Jw bC90L3JwbF9pbm5vZGJfYnVnMjg0MzAudGVzdAogICAgICBteXNxbC10ZXN0L3N1aXRlL3JwbC90 L3JwbF9wYXJhbGxlbF9pbm5vZGIudGVzdAogICAgICBteXNxbC10ZXN0L3N1aXRlL3JwbC90L3Jw bF9wYXJhbGxlbF9zdGFydF9zdG9wLnRlc3QKICAgICAgbXlzcWwtdGVzdC9zdWl0ZS9ycGwvdC9y cGxfcm90YXRlX3B1cmdlX2RlYWRsb2NrLnRlc3QKICAgICAgbXlzcWwtdGVzdC9zdWl0ZS9ycGwv dC9ycGxfcm93X2ltZ19ibG9icy50ZXN0CiAgICAgIG15c3FsLXRlc3Qvc3VpdGUvcnBsL3QvcnBs X3Jvd19pbWdfZW5nX2Z1bGwudGVzdAogICAgICBteXNxbC10ZXN0L3N1aXRlL3JwbC90L3JwbF9y b3dfaW1nX2lkeF9mdWxsLnRlc3QKICAgICAgbXlzcWwtdGVzdC9zdWl0ZS9ycGwvdC9ycGxfc3Rv cF9zbGF2ZS50ZXN0CiAgICAgIG15c3FsLXRlc3Qvc3VpdGUvcnBsL3QvcnBsX3R5cGVjb252LnRl c3QKICAgICAgbXlzcWwtdGVzdC90L2Rpc2FibGVkLmRlZgogICAgICBteXNxbC10ZXN0L3QvaW5k ZXhfbWVyZ2VfaW5ub2RiLnRlc3QKICAgICAgbXlzcWwtdGVzdC90L2lubm9kYl9leHBsYWluX2pz b25fbm9uX3NlbGVjdF9hbGwudGVzdAogICAgICBteXNxbC10ZXN0L3QvaW5ub2RiX2V4cGxhaW5f bm9uX3NlbGVjdF9hbGwudGVzdAogICAgICBteXNxbC10ZXN0L3QvaW5ub2RiX2V4cGxhaW5fbm9u X3NlbGVjdF9ub25lLnRlc3QKICAgICAgbXlzcWwtdGVzdC90L215c3FsX2NsaWVudF90ZXN0X2Vt YmVkZGVkLnRlc3QKICAgICAgc3FsL2hhbmRsZXIuY2MKICAgICAgc3FsL2l0ZW0uY2MKICAgICAg c3FsL2l0ZW0uaAogICAgICBzcWwvaXRlbV9jcmVhdGUuY2MKICAgICAgc3FsL2l0ZW1fc3RyZnVu Yy5jYwogICAgICBzcWwvaXRlbV9zdHJmdW5jLmgKICAgICAgc3FsL2l0ZW1fc3Vic2VsZWN0LmNj CiAgICAgIHNxbC9pdGVtX3htbGZ1bmMuY2MKICAgICAgc3FsL3NwX2hlYWQuY2MKICAgICAgc3Fs L3NxbF9iYXNlLmNjCiAgICAgIHNxbC9zcWxfY2xhc3MuY2MKICAgICAgc3FsL3NxbF9vcHRpbWl6 ZXIuY2MKICAgICAgc3FsL3NxbF9wYXJzZS5jYwogICAgICBzcWwvc3FsX3Nob3cuY2MKICAgICAg c3FsL3NxbF9zdHJpbmcuaAogICAgICBzcWwvc3FsX3RhYmxlLmNjCiAgICAgIHNxbC9zcWxfeWFj Yy55eQogICAgICBzdG9yYWdlL2lubm9iYXNlL2J1Zi9idWYwZmx1LmNjCj09PSBtb2RpZmllZCBm aWxlICdteXNxbC10ZXN0L2luY2x1ZGUvbWl4MS5pbmMnCi0tLSBhL215c3FsLXRlc3QvaW5jbHVk ZS9taXgxLmluYwlyZXZpZDpzdW5ueS5iYWluc0BvcmFjbGUuY29tLTIwMTIwNDE3MjMyMjMyLXR1 czhveTR4bjM0a29pdWUKKysrIGIvbXlzcWwtdGVzdC9pbmNsdWRlL21peDEuaW5jCXJldmlkOm1h cmtvLm1ha2VsYUBvcmFjbGUuY29tLTIwMTIwNDE4MDgxMjIzLWxvMXdtdmR2N2RhOHlpMHkKQEAg LTYzNyw3ICs2MzcsNyBAQCBjcmVhdGUgdGFibGUgYnVnMjk4MDcgKGEgaW50KTsKIGRyb3AgdGFi bGUgYnVnMjk4MDc7CiAtLWRpc2FibGVfcXVlcnlfbG9nCiBjYWxsIG10ci5hZGRfc3VwcHJlc3Np b24oIklubm9EQjogRXJyb3I6IHRhYmxlIC50ZXN0Li4uYnVnMjk4MDcuIGRvZXMgbm90IGV4aXN0 IGluIHRoZSBJbm5vREIgaW50ZXJuYWwiKTsKLWNhbGwgbXRyLmFkZF9zdXBwcmVzc2lvbigiQ2Fu bm90IGZpbmQgb3Igb3BlbiB0YWJsZSB0ZXN0XC9idWcyOTgwNyBmcm9tIik7CitjYWxsIG10ci5h ZGRfc3VwcHJlc3Npb24oIklubm9EQjogQ2Fubm90IG9wZW4gdGFibGUgdGVzdC9idWcyOTgwNyBm cm9tIik7CiAtLWVuYWJsZV9xdWVyeV9sb2cKIAogCgo9PT0gbW9kaWZpZWQgZmlsZSAnbXlzcWwt dGVzdC9saWIvdjEvbXRyX3JlcG9ydC5wbCcKLS0tIGEvbXlzcWwtdGVzdC9saWIvdjEvbXRyX3Jl cG9ydC5wbAlyZXZpZDpzdW5ueS5iYWluc0BvcmFjbGUuY29tLTIwMTIwNDE3MjMyMjMyLXR1czhv eTR4bjM0a29pdWUKKysrIGIvbXlzcWwtdGVzdC9saWIvdjEvbXRyX3JlcG9ydC5wbAlyZXZpZDpt YXJrby5tYWtlbGFAb3JhY2xlLmNvbS0yMDEyMDQxODA4MTIyMy1sbzF3bXZkdjdkYTh5aTB5CkBA IC0zMzksNyArMzM5LDcgQEAgc3ViIG10cl9yZXBvcnRfc3RhdHMgKCQpIHsKIAogICAgICAgICAg ICAgICAgICMgdGVzdCBjYXNlIGZvciBCdWcjYnVnMjk4MDcgY29waWVzIGEgc3RyYXkgZnJtIGlu dG8gZGF0YWJhc2UKICAgICAgICAgICAgICAgICAvSW5ub0RCOiBFcnJvcjogdGFibGUgYHRlc3Rg LmBidWcyOTgwN2AgZG9lcyBub3QgZXhpc3QgaW4gdGhlIElubm9EQiBpbnRlcm5hbC8gb3IKLSAg ICAgICAgICAgICAgICAvQ2Fubm90IGZpbmQgb3Igb3BlbiB0YWJsZSB0ZXN0XC9idWcyOTgwNyBm cm9tLyBvcgorICAgICAgICAgICAgICAgIC9Jbm5vREI6IENhbm5vdCBvcGVuIHRhYmxlIHRlc3Rc L2J1ZzI5ODA3IGZyb20vIG9yCiAKICAgICAgICAgICAgICAgICAjIGlubm9kYiBmb3JlaWduIGtl eSB0ZXN0cyB0aGF0IGZhaWwgaW4gQUxURVIgb3IgUkVOQU1FIHByb2R1Y2UgdGhpcwogICAgICAg ICAgICAgICAgIC9Jbm5vREI6IEVycm9yOiBpbiBBTFRFUiBUQUJMRSBgdGVzdGAuYHRbMTJdYC8g b3IKQEAgLTQwMCw3ICs0MDAsNyBAQCBzdWIgbXRyX3JlcG9ydF9zdGF0cyAoJCkgewogCiAgICAg ICAgICAgICAgICAgIyBsb3dlcmNhc2VfdGFibGUzIHVzaW5nIGNhc2Ugc2Vuc2l0aXZlIG9wdGlv biBvbgogICAgICAgICAgICAgICAgICMgY2FzZSBpbnNlbnNpdGl2ZSBmaWxlc3lzdGVtIChJbm5v REIgZXJyb3IpLgotICAgICAgICAgICAgICAgIC9DYW5ub3QgZmluZCBvciBvcGVuIHRhYmxlIHRl c3RcL0JVRzI5ODM5IGZyb20vIG9yCisgICAgICAgICAgICAgICAgL0lubm9EQjogQ2Fubm90IG9w ZW4gdGFibGUgdGVzdFwvQlVHMjk4MzkgZnJvbS8gb3IKIAogICAgICAgICAgICAgICAgICMgV2hl biB0cnlpbmcgdG8gc2V0IGxvd2VyX2Nhc2VfdGFibGVfbmFtZXMgPSAyCiAgICAgICAgICAgICAg ICAgIyBvbiBhIGNhc2Ugc2Vuc2l0aXZlIGZpbGUgc3lzdGVtLiBCdWcjMzc0MDIuCgo9PT0gbW9k aWZpZWQgZmlsZSAnbXlzcWwtdGVzdC9yL2xvd2VyY2FzZV90YWJsZTMucmVzdWx0JwotLS0gYS9t eXNxbC10ZXN0L3IvbG93ZXJjYXNlX3RhYmxlMy5yZXN1bHQJcmV2aWQ6c3VubnkuYmFpbnNAb3Jh Y2xlLmNvbS0yMDEyMDQxNzIzMjIzMi10dXM4b3k0eG4zNGtvaXVlCisrKyBiL215c3FsLXRlc3Qv ci9sb3dlcmNhc2VfdGFibGUzLnJlc3VsdAlyZXZpZDptYXJrby5tYWtlbGFAb3JhY2xlLmNvbS0y MDEyMDQxODA4MTIyMy1sbzF3bXZkdjdkYTh5aTB5CkBAIC0xLDQgKzEsNCBAQAotY2FsbCBtdHIu YWRkX3N1cHByZXNzaW9uKCJDYW5ub3QgZmluZCBvciBvcGVuIHRhYmxlIHRlc3QvQlVHMjk4Mzkg ZnJvbSIpOworY2FsbCBtdHIuYWRkX3N1cHByZXNzaW9uKCJJbm5vREI6IENhbm5vdCBvcGVuIHRh YmxlIHRlc3QvQlVHMjk4MzkgZnJvbSIpOwogRFJPUCBUQUJMRSBJRiBFWElTVFMgdDEsVDE7CiBD UkVBVEUgVEFCTEUgdDEgKGEgSU5UKTsKIFNFTEVDVCAqIEZST00gVDE7Cgo9PT0gYWRkZWQgZmls ZSAnbXlzcWwtdGVzdC9zdWl0ZS9pbm5vZGIvci9pbm5vZGItYWx0ZXItZGlzY2FyZC5yZXN1bHQn Ci0tLSBhL215c3FsLXRlc3Qvc3VpdGUvaW5ub2RiL3IvaW5ub2RiLWFsdGVyLWRpc2NhcmQucmVz dWx0CTE5NzAtMDEtMDEgMDA6MDA6MDAgKzAwMDAKKysrIGIvbXlzcWwtdGVzdC9zdWl0ZS9pbm5v ZGIvci9pbm5vZGItYWx0ZXItZGlzY2FyZC5yZXN1bHQJcmV2aWQ6bWFya28ubWFrZWxhQG9yYWNs ZS5jb20tMjAxMjA0MTgwODEyMjMtbG8xd212ZHY3ZGE4eWkweQpAQCAtMCwwICsxLDE5IEBACitT RVQgR0xPQkFMIGlubm9kYl9maWxlX3Blcl90YWJsZT0xOworQ1JFQVRFIFRBQkxFIHQoYSBJTlQp RU5HSU5FPUlubm9EQjsKK2NhbGwgbXRyLmFkZF9zdXBwcmVzc2lvbigiSW5ub0RCOiBFcnJvcjog dHJ5aW5nIHRvIG9wZW4gYSB0YWJsZSwgYnV0IGNvdWxkIG5vdCQiKTsKK2NhbGwgbXRyLmFkZF9z dXBwcmVzc2lvbigiTXlTUUwgaXMgdHJ5aW5nIHRvIG9wZW4gYSB0YWJsZSBoYW5kbGUgYnV0IHRo ZSBcLmliZCBmaWxlIGZvciQiKTsKK2NhbGwgbXRyLmFkZF9zdXBwcmVzc2lvbigiSW5ub0RCOiBF cnJvcjogdGFibGUgJ3Rlc3QvdCckIik7CitTRUxFQ1QgKiBGUk9NIHQ7CitFUlJPUiA0MlMwMjog VGFibGUgJ3Rlc3QudCcgZG9lc24ndCBleGlzdAorQUxURVIgVEFCTEUgdCBBREQgSU5ERVggKGEp LCBBTEdPUklUSE09SU5QTEFDRTsKK0VSUk9SIDQyUzAyOiBUYWJsZSAndGVzdC50JyBkb2Vzbid0 IGV4aXN0CitBTFRFUiBUQUJMRSB0MSBBREQgSU5ERVggKGEpLCBBTEdPUklUSE09Q09QWTsKK0VS Uk9SIDQyUzAyOiBUYWJsZSAndGVzdC50MScgZG9lc24ndCBleGlzdAorY2FsbCBtdHIuYWRkX3N1 cHByZXNzaW9uKCJJbm5vREI6IFRhYmxlc3BhY2Ugb3BlbiBmYWlsZWQgZm9yICd0ZXN0L3QnLCBp Z25vcmVkIik7CitjYWxsIG10ci5hZGRfc3VwcHJlc3Npb24oIklubm9EQjogRmFpbGVkIHRvIGZp bmQgdGFibGVzcGFjZSBmb3IgdGFibGUgJ3Rlc3QvdCcgaW4gdGhlIGNhY2hlIik7CitjYWxsIG10 ci5hZGRfc3VwcHJlc3Npb24oIklubm9EQjogQ2Fubm90IGRlbGV0ZSB0YWJsZXNwYWNlIFswLTld Ky4qbm90IGZvdW5kIik7CitBTFRFUiBUQUJMRSB0IERJU0NBUkQgVEFCTEVTUEFDRTsKK1dhcm5p bmdzOgorV2FybmluZwkxODA4CUlubm9EQjogVGFibGVzcGFjZSBpcyBtaXNzaW5nIGZvciB0YWJs ZSAndGVzdC90JworV2FybmluZwkxODA4CUlubm9EQjogVGFibGVzcGFjZSBpcyBtaXNzaW5nIGZv ciB0YWJsZSAndGVzdC90JworRFJPUCBUQUJMRSB0OwoKPT09IG1vZGlmaWVkIGZpbGUgJ215c3Fs LXRlc3Qvc3VpdGUvaW5ub2RiL3IvaW5ub2RiLWluZGV4LW9ubGluZS5yZXN1bHQnCi0tLSBhL215 c3FsLXRlc3Qvc3VpdGUvaW5ub2RiL3IvaW5ub2RiLWluZGV4LW9ubGluZS5yZXN1bHQJcmV2aWQ6 c3VubnkuYmFpbnNAb3JhY2xlLmNvbS0yMDEyMDQxNzIzMjIzMi10dXM4b3k0eG4zNGtvaXVlCisr KyBiL215c3FsLXRlc3Qvc3VpdGUvaW5ub2RiL3IvaW5ub2RiLWluZGV4LW9ubGluZS5yZXN1bHQJ cmV2aWQ6bWFya28ubWFrZWxhQG9yYWNsZS5jb20tMjAxMjA0MTgwODEyMjMtbG8xd212ZHY3ZGE4 eWkweQpAQCAtNCw2ICs0LDkgQEAgU0VUIERFQlVHPSdkLHF1ZXJ5LGRlYnVnX3N5bmNfZXhlYzpp OnQ6QQogY2FsbCBtdHIuYWRkX3N1cHByZXNzaW9uKCJJbm5vREI6IFdhcm5pbmc6IFNtYWxsIGJ1 ZmZlciBwb29sIHNpemUiKTsKIGNhbGwgbXRyLmFkZF9zdXBwcmVzc2lvbigiQ2Fubm90IGZpbmQg aW5kZXggLipjMiBpbiBJbm5vREIgaW5kZXggdHJhbnNsYXRpb24gdGFibGUiKTsKIGNhbGwgbXRy LmFkZF9zdXBwcmVzc2lvbigiRmluZCBpbmRleCAuKmMyIGluIElubm9EQiBpbmRleCBsaXN0IGJ1 dCBub3QgaXRzIE15U1FMIGluZGV4IG51bWJlciIpOworY2FsbCBtdHIuYWRkX3N1cHByZXNzaW9u KCJJbm5vREI6IEVycm9yOiB0YWJsZSAndGVzdC90MSckIik7CitjYWxsIG10ci5hZGRfc3VwcHJl c3Npb24oIk15U1FMIGlzIHRyeWluZyB0byBvcGVuIGEgdGFibGUgaGFuZGxlIGJ1dCB0aGUgLmli ZCBmaWxlIGZvciQiKTsKK1NFVCBHTE9CQUwgaW5ub2RiX2ZpbGVfcGVyX3RhYmxlPW9uOwogQ1JF QVRFIFRBQkxFIHQxIChjMSBJTlQgUFJJTUFSWSBLRVksIGMyIElOVCwgYzMgSU5UKSBFTkdJTkU9 SW5ub0RCOwogSU5TRVJUIElOVE8gdDEgVkFMVUVTICgxLDEsMCksKDIsMiwwKSwoMywzLDApLCg0 LDQsMCksKDUsNSwwKTsKIFNFVCBHTE9CQUwgaW5ub2RiX21vbml0b3JfZW5hYmxlPW1vZHVsZV9k ZGw7CkBAIC0yNTcsNiArMjYwLDQ4IEBAIENPVU5UKGMyKQogQ0hFQ0sgVEFCTEUgdDE7CiBUYWJs ZQlPcAlNc2dfdHlwZQlNc2dfdGV4dAogdGVzdC50MQljaGVjawlzdGF0dXMJT0sKK1NFVCBERUJV R19TWU5DPSdyb3dfbG9nX2FwcGx5X2JlZm9yZSBTSUdOQUwgYzJnX2NyZWF0ZWQgV0FJVF9GT1Ig ZG1sNF9kb25lJzsKK1NFVCBsb2NrX3dhaXRfdGltZW91dD0xOworQUxURVIgVEFCTEUgdDEgRFJP UCBJTkRFWCBjMmYsIEFERCBJTkRFWCBjMmcoYzIpOworU0VUIERFQlVHX1NZTkM9J25vdyBXQUlU X0ZPUiBjMmdfY3JlYXRlZCc7CitTRVQgbG9ja193YWl0X3RpbWVvdXQ9MTA7CitBTFRFUiBUQUJM RSB0MSBESVNDQVJEIFRBQkxFU1BBQ0U7CitTRUxFQ1Qgc3RhdGUgRlJPTSBpbmZvcm1hdGlvbl9z Y2hlbWEucHJvY2Vzc2xpc3QKK1dIRVJFIGluZm89J0FMVEVSIFRBQkxFIHQxIERJU0NBUkQgVEFC TEVTUEFDRSc7CitzdGF0ZQorV2FpdGluZyBmb3IgdGFibGUgbGV2ZWwgbG9jaworU0VUIERFQlVH X1NZTkM9J25vdyBTSUdOQUwgZG1sNF9kb25lJzsKK0VSUk9SIEhZMDAwOiBMb2NrIHdhaXQgdGlt ZW91dCBleGNlZWRlZDsgdHJ5IHJlc3RhcnRpbmcgdHJhbnNhY3Rpb24KK1NIT1cgQ1JFQVRFIFRB QkxFIHQxOworVGFibGUJQ3JlYXRlIFRhYmxlCit0MQlDUkVBVEUgVEFCTEUgYHQxYCAoCisgIGBj MWAgaW50KDExKSBOT1QgTlVMTCwKKyAgYGMyYCBpbnQoMTEpIERFRkFVTFQgTlVMTCwKKyAgYGMz YCBpbnQoMTEpIERFRkFVTFQgTlVMTCwKKyAgUFJJTUFSWSBLRVkgKGBjMWApLAorICBLRVkgYGMy ZGAgKGBjMmApLAorICBLRVkgYGMyZmAgKGBjMmApCispIEVOR0lORT1Jbm5vREIgREVGQVVMVCBD SEFSU0VUPWxhdGluMSBDT01NRU5UPSd0ZXN0aW5nIGlmIGMyZSB3aWxsIGJlIGRyb3BwZWQnCitB TFRFUiBUQUJMRSB0MSBEUk9QIElOREVYIGMyZCwgRFJPUCBJTkRFWCBjMmY7CitXYXJuaW5nczoK K1dhcm5pbmcJMTgxMAlJbm5vREI6IFRhYmxlc3BhY2UgaGFzIGJlZW4gZGlzY2FyZGVkIGZvciB0 YWJsZSAndGVzdC90MScKK0FMVEVSIFRBQkxFIHQxIEFERCBJTkRFWCBjMmgoYzIpLCBBTEdPUklU SE09SU5QTEFDRTsKK1dhcm5pbmdzOgorV2FybmluZwkxODEwCUlubm9EQjogVGFibGVzcGFjZSBo YXMgYmVlbiBkaXNjYXJkZWQgZm9yIHRhYmxlICd0ZXN0L3QxJworQUxURVIgVEFCTEUgdDEgQURE IElOREVYIGMyZyhjMiksIEFMR09SSVRITT1DT1BZOworRVJST1IgSFkwMDA6IFRhYmxlc3BhY2Ug aGFzIGJlZW4gZGlzY2FyZGVkIGZvciB0YWJsZSAndGVzdC90MScKK1NFTEVDVCAqIEZST00gdDE7 CitFUlJPUiBIWTAwMDogVGFibGVzcGFjZSBoYXMgYmVlbiBkaXNjYXJkZWQgZm9yIHRhYmxlICd0 ZXN0L3QxJworU0hPVyBDUkVBVEUgVEFCTEUgdDE7CitUYWJsZQlDcmVhdGUgVGFibGUKK3QxCUNS RUFURSBUQUJMRSBgdDFgICgKKyAgYGMxYCBpbnQoMTEpIE5PVCBOVUxMLAorICBgYzJgIGludCgx MSkgREVGQVVMVCBOVUxMLAorICBgYzNgIGludCgxMSkgREVGQVVMVCBOVUxMLAorICBQUklNQVJZ IEtFWSAoYGMxYCksCisgIEtFWSBgYzJoYCAoYGMyYCkKKykgRU5HSU5FPUlubm9EQiBERUZBVUxU IENIQVJTRVQ9bGF0aW4xIENPTU1FTlQ9J3Rlc3RpbmcgaWYgYzJlIHdpbGwgYmUgZHJvcHBlZCcK K1NFVCBHTE9CQUwgaW5ub2RiX2ZpbGVfcGVyX3RhYmxlPTA7CiBTRVQgREVCVUdfU1lOQz0nUkVT RVQnOwogU0VUIERFQlVHPSctZCxkZWJ1Z19zeW5jX2Fib3J0X29uX3RpbWVvdXQnOwogU0VUIERF QlVHPScnOwoKPT09IG1vZGlmaWVkIGZpbGUgJ215c3FsLXRlc3Qvc3VpdGUvaW5ub2RiL3IvaW5u b2RiX215c3FsLnJlc3VsdCcKLS0tIGEvbXlzcWwtdGVzdC9zdWl0ZS9pbm5vZGIvci9pbm5vZGJf bXlzcWwucmVzdWx0CXJldmlkOnN1bm55LmJhaW5zQG9yYWNsZS5jb20tMjAxMjA0MTcyMzIyMzIt dHVzOG95NHhuMzRrb2l1ZQorKysgYi9teXNxbC10ZXN0L3N1aXRlL2lubm9kYi9yL2lubm9kYl9t eXNxbC5yZXN1bHQJcmV2aWQ6bWFya28ubWFrZWxhQG9yYWNsZS5jb20tMjAxMjA0MTgwODEyMjMt bG8xd212ZHY3ZGE4eWkweQpAQCAtMjg0Niw1ICsyODQ2LDQgQEAgSU5ERVggYSAoYSkpIEVOR0lO RT1pbm5vZGI7CiBBTFRFUiBUQUJMRSB0MSBEUk9QIElOREVYIGEsIEFERCBJTkRFWCBhIChiLCBh KTsKIEFMVEVSIFRBQkxFIHQxIERST1AgSU5ERVggYSwgQUREIElOREVYIChhLCBiKTsKIERST1Ag VEFCTEUgdDE7Ci1jYWxsIG10ci5hZGRfc3VwcHJlc3Npb24oJ0lubm9EQjogQ2Fubm90IG9wZW4g dGFibGUgLiogZnJvbSB0aGUgaW50ZXJuYWwgZGF0YSBkaWN0aW9uYXJ5IG9mIElubm9EQiB0aG91 Z2ggdGhlIC5mcm0gZmlsZSBmb3IgdGhlIHRhYmxlIGV4aXN0cy4qJyk7CiBFbmQgb2YgNi4wIHRl c3RzCgo9PT0gYWRkZWQgZmlsZSAnbXlzcWwtdGVzdC9zdWl0ZS9pbm5vZGIvdC9pbm5vZGItYWx0 ZXItZGlzY2FyZC50ZXN0JwotLS0gYS9teXNxbC10ZXN0L3N1aXRlL2lubm9kYi90L2lubm9kYi1h bHRlci1kaXNjYXJkLnRlc3QJMTk3MC0wMS0wMSAwMDowMDowMCArMDAwMAorKysgYi9teXNxbC10 ZXN0L3N1aXRlL2lubm9kYi90L2lubm9kYi1hbHRlci1kaXNjYXJkLnRlc3QJcmV2aWQ6bWFya28u bWFrZWxhQG9yYWNsZS5jb20tMjAxMjA0MTgwODEyMjMtbG8xd212ZHY3ZGE4eWkweQpAQCAtMCww ICsxLDQ0IEBACisjQnVnIzEzOTU1MDgzIEFMTE9XIElOLVBMQUNFIERETCBPUEVSQVRJT05TIE9O IE1JU1NJTkcgT1IgRElTQ0FSREVEIFRBQkxFU1BBQ0VTCisKKy0tc291cmNlIGluY2x1ZGUvaGF2 ZV9pbm5vZGIuaW5jCisKK2xldCAkTVlTUUxEX0RBVEFESVI9YHNlbGVjdCBAQGRhdGFkaXJgOwor U0VUIEdMT0JBTCBpbm5vZGJfZmlsZV9wZXJfdGFibGU9MTsKK0NSRUFURSBUQUJMRSB0KGEgSU5U KUVOR0lORT1Jbm5vREI7CisKKyMgU2h1dCBkb3duIHRoZSBzZXJ2ZXIKKy0tIGV4ZWMgZWNobyAi d2FpdCIgPiAkTVlTUUxURVNUX1ZBUkRJUi90bXAvbXlzcWxkLjEuZXhwZWN0CistLSBzaHV0ZG93 bl9zZXJ2ZXIKKy0tIHNvdXJjZSBpbmNsdWRlL3dhaXRfdW50aWxfZGlzY29ubmVjdGVkLmluYwor CisjIFJlbW92ZSB0aGUgdGFibGVzcGFjZSBmaWxlLgorbGV0IElCRD0kTVlTUUxEX0RBVEFESVIv dGVzdC90LmliZDsKK3Blcmw7Cit1bmxpbmsgIiRFTlZ7SUJEfSIgfHwgZGllICJVbmFibGUgdG8g dW5saW5rICRFTlZ7SUJEfVxuIjsKK0VPRgorCisjIFJlc3RhcnQgdGhlIHNlcnZlci4KKy0tIGV4 ZWMgZWNobyAicmVzdGFydCIgPiAkTVlTUUxURVNUX1ZBUkRJUi90bXAvbXlzcWxkLjEuZXhwZWN0 CistLSBlbmFibGVfcmVjb25uZWN0CistLSBzb3VyY2UgaW5jbHVkZS93YWl0X3VudGlsX2Nvbm5l Y3RlZF9hZ2Fpbi5pbmMKKworY2FsbCBtdHIuYWRkX3N1cHByZXNzaW9uKCJJbm5vREI6IEVycm9y OiB0cnlpbmcgdG8gb3BlbiBhIHRhYmxlLCBidXQgY291bGQgbm90JCIpOworY2FsbCBtdHIuYWRk X3N1cHByZXNzaW9uKCJNeVNRTCBpcyB0cnlpbmcgdG8gb3BlbiBhIHRhYmxlIGhhbmRsZSBidXQg dGhlIFwuaWJkIGZpbGUgZm9yJCIpOworY2FsbCBtdHIuYWRkX3N1cHByZXNzaW9uKCJJbm5vREI6 IEVycm9yOiB0YWJsZSAndGVzdC90JyQiKTsKKworIyBUaGUgRVJfTk9fU1VDSF9UQUJMRSBpcyBi ZWluZyB0aHJvd24gYnkgaGFfaW5ub2Jhc2U6Om9wZW4oKS4KKyMgVGhlIHRhYmxlIGRvZXMgZXhp c3QsIG9ubHkgdGhlIHRhYmxlc3BhY2UgZG9lcyBub3QgZXhpc3QuCistLWVycm9yIEVSX05PX1NV Q0hfVEFCTEUKK1NFTEVDVCAqIEZST00gdDsKKworLS1lcnJvciBFUl9OT19TVUNIX1RBQkxFCitB TFRFUiBUQUJMRSB0IEFERCBJTkRFWCAoYSksIEFMR09SSVRITT1JTlBMQUNFOworLS1lcnJvciBF Ul9OT19TVUNIX1RBQkxFCitBTFRFUiBUQUJMRSB0MSBBREQgSU5ERVggKGEpLCBBTEdPUklUSE09 Q09QWTsKKworY2FsbCBtdHIuYWRkX3N1cHByZXNzaW9uKCJJbm5vREI6IFRhYmxlc3BhY2Ugb3Bl biBmYWlsZWQgZm9yICd0ZXN0L3QnLCBpZ25vcmVkIik7CitjYWxsIG10ci5hZGRfc3VwcHJlc3Np b24oIklubm9EQjogRmFpbGVkIHRvIGZpbmQgdGFibGVzcGFjZSBmb3IgdGFibGUgJ3Rlc3QvdCcg aW4gdGhlIGNhY2hlIik7CitjYWxsIG10ci5hZGRfc3VwcHJlc3Npb24oIklubm9EQjogQ2Fubm90 IGRlbGV0ZSB0YWJsZXNwYWNlIFswLTldKy4qbm90IGZvdW5kIik7CisKK0FMVEVSIFRBQkxFIHQg RElTQ0FSRCBUQUJMRVNQQUNFOworRFJPUCBUQUJMRSB0OwoKPT09IG1vZGlmaWVkIGZpbGUgJ215 c3FsLXRlc3Qvc3VpdGUvaW5ub2RiL3QvaW5ub2RiLWluZGV4LW9ubGluZS50ZXN0JwotLS0gYS9t eXNxbC10ZXN0L3N1aXRlL2lubm9kYi90L2lubm9kYi1pbmRleC1vbmxpbmUudGVzdAlyZXZpZDpz dW5ueS5iYWluc0BvcmFjbGUuY29tLTIwMTIwNDE3MjMyMjMyLXR1czhveTR4bjM0a29pdWUKKysr IGIvbXlzcWwtdGVzdC9zdWl0ZS9pbm5vZGIvdC9pbm5vZGItaW5kZXgtb25saW5lLnRlc3QJcmV2 aWQ6bWFya28ubWFrZWxhQG9yYWNsZS5jb20tMjAxMjA0MTgwODEyMjMtbG8xd212ZHY3ZGE4eWkw eQpAQCAtOSw2ICs5LDEzIEBAIGNhbGwgbXRyLmFkZF9zdXBwcmVzc2lvbigiSW5ub0RCOiBXYXJu aW4KICMgVGhlc2Ugd2lsbCBiZSB0cmlnZ2VyZWQgYnkgSU5TRVJUIElOVE8gdDEgVkFMVUVTKDYs MywxKTsKIGNhbGwgbXRyLmFkZF9zdXBwcmVzc2lvbigiQ2Fubm90IGZpbmQgaW5kZXggLipjMiBp biBJbm5vREIgaW5kZXggdHJhbnNsYXRpb24gdGFibGUiKTsKIGNhbGwgbXRyLmFkZF9zdXBwcmVz c2lvbigiRmluZCBpbmRleCAuKmMyIGluIElubm9EQiBpbmRleCBsaXN0IGJ1dCBub3QgaXRzIE15 U1FMIGluZGV4IG51bWJlciIpOworIyB0aGVzZSB3aWxsIGJlIHRyaWdnZXJlZCBieSBESVNDQVJE IFRBQkxFU1BBQ0UKK2NhbGwgbXRyLmFkZF9zdXBwcmVzc2lvbigiSW5ub0RCOiBFcnJvcjogdGFi bGUgJ3Rlc3QvdDEnJCIpOworY2FsbCBtdHIuYWRkX3N1cHByZXNzaW9uKCJNeVNRTCBpcyB0cnlp bmcgdG8gb3BlbiBhIHRhYmxlIGhhbmRsZSBidXQgdGhlIC5pYmQgZmlsZSBmb3IkIik7CisKKyMg RElTQ0FSRCBUQUJMRVNQQUNFIG5lZWRzIGZpbGUtcGVyLXRhYmxlCitsZXQgJHBlcl90YWJsZT1g c2VsZWN0IEBAaW5ub2RiX2ZpbGVfcGVyX3RhYmxlYDsKK1NFVCBHTE9CQUwgaW5ub2RiX2ZpbGVf cGVyX3RhYmxlPW9uOwogCiAjIFNhdmUgdGhlIGluaXRpYWwgbnVtYmVyIG9mIGNvbmN1cnJlbnQg c2Vzc2lvbnMuCiAtLXNvdXJjZSBpbmNsdWRlL2NvdW50X3Nlc3Npb25zLmluYwpAQCAtMjU2LDEw ICsyNjMsNDggQEAgU0VMRUNUIG5hbWUsY291bnQgRlJPTSBJTkZPUk1BVElPTl9TQ0hFTQogU0VM RUNUIENPVU5UKGMyKSBGUk9NIHQxOwogQ0hFQ0sgVEFCTEUgdDE7CiAKLWRpc2Nvbm5lY3QgY29u MTsKK2Nvbm5lY3Rpb24gZGVmYXVsdDsKK1NFVCBERUJVR19TWU5DPSdyb3dfbG9nX2FwcGx5X2Jl Zm9yZSBTSUdOQUwgYzJnX2NyZWF0ZWQgV0FJVF9GT1IgZG1sNF9kb25lJzsKKyMgVGhlIGxvY2sg dXBncmFkZSBhdCB0aGUgZW5kIG9mIHRoZSBBTFRFUiB3aWxsIGNvbmZsaWN0IHdpdGggdGhlIERJ U0NBUkQuCitTRVQgbG9ja193YWl0X3RpbWVvdXQ9MTsKKy0tc2VuZAorQUxURVIgVEFCTEUgdDEg RFJPUCBJTkRFWCBjMmYsIEFERCBJTkRFWCBjMmcoYzIpOworCitjb25uZWN0aW9uIGNvbjE7CitT RVQgREVCVUdfU1lOQz0nbm93IFdBSVRfRk9SIGMyZ19jcmVhdGVkJzsKKworY29ubmVjdCAoY29u Mixsb2NhbGhvc3Qscm9vdCwsKTsKK2Nvbm5lY3Rpb24gY29uMjsKKworIyBUaGlzIHdpbGwgY29u ZmxpY3Qgd2l0aCB0aGUgQUxURVIgaW4gY29ubmVjdGlvbiBkZWZhdWx0LCBhYm92ZS4KK1NFVCBs b2NrX3dhaXRfdGltZW91dD0xMDsKKy0tc2VuZAorQUxURVIgVEFCTEUgdDEgRElTQ0FSRCBUQUJM RVNQQUNFOwogCitjb25uZWN0aW9uIGNvbjE7CitTRUxFQ1Qgc3RhdGUgRlJPTSBpbmZvcm1hdGlv bl9zY2hlbWEucHJvY2Vzc2xpc3QKK1dIRVJFIGluZm89J0FMVEVSIFRBQkxFIHQxIERJU0NBUkQg VEFCTEVTUEFDRSc7CisKK1NFVCBERUJVR19TWU5DPSdub3cgU0lHTkFMIGRtbDRfZG9uZSc7Citk aXNjb25uZWN0IGNvbjE7Citjb25uZWN0aW9uIGRlZmF1bHQ7CistLWVycm9yIEVSX0xPQ0tfV0FJ VF9USU1FT1VUCityZWFwOworY29ubmVjdGlvbiBjb24yOworcmVhcDsKK2Rpc2Nvbm5lY3QgY29u MjsKIGNvbm5lY3Rpb24gZGVmYXVsdDsKIAorU0hPVyBDUkVBVEUgVEFCTEUgdDE7CitBTFRFUiBU QUJMRSB0MSBEUk9QIElOREVYIGMyZCwgRFJPUCBJTkRFWCBjMmY7CitBTFRFUiBUQUJMRSB0MSBB REQgSU5ERVggYzJoKGMyKSwgQUxHT1JJVEhNPUlOUExBQ0U7CistLSBlcnJvciBFUl9UQUJMRVNQ QUNFX0RJU0NBUkRFRAorQUxURVIgVEFCTEUgdDEgQUREIElOREVYIGMyZyhjMiksIEFMR09SSVRI TT1DT1BZOworLS0gZXJyb3IgRVJfVEFCTEVTUEFDRV9ESVNDQVJERUQKK1NFTEVDVCAqIEZST00g dDE7CitTSE9XIENSRUFURSBUQUJMRSB0MTsKKworZXZhbCBTRVQgR0xPQkFMIGlubm9kYl9maWxl X3Blcl90YWJsZT0kcGVyX3RhYmxlOwogU0VUIERFQlVHX1NZTkM9J1JFU0VUJzsKIFNFVCBERUJV Rz0nLWQsZGVidWdfc3luY19hYm9ydF9vbl90aW1lb3V0JzsKIFNFVCBERUJVRz0nJzsKCj09PSBt b2RpZmllZCBmaWxlICdteXNxbC10ZXN0L3N1aXRlL2lubm9kYi90L2lubm9kYl9teXNxbC50ZXN0 JwotLS0gYS9teXNxbC10ZXN0L3N1aXRlL2lubm9kYi90L2lubm9kYl9teXNxbC50ZXN0CXJldmlk OnN1bm55LmJhaW5zQG9yYWNsZS5jb20tMjAxMjA0MTcyMzIyMzItdHVzOG95NHhuMzRrb2l1ZQor KysgYi9teXNxbC10ZXN0L3N1aXRlL2lubm9kYi90L2lubm9kYl9teXNxbC50ZXN0CXJldmlkOm1h cmtvLm1ha2VsYUBvcmFjbGUuY29tLTIwMTIwNDE4MDgxMjIzLWxvMXdtdmR2N2RhOHlpMHkKQEAg LTEwMDMsNSArMTAwMyw0IEBAIEFMVEVSIFRBQkxFIHQxIERST1AgSU5ERVggYSwgQUREIElOREVY ICgKIAogRFJPUCBUQUJMRSB0MTsKIAotY2FsbCBtdHIuYWRkX3N1cHByZXNzaW9uKCdJbm5vREI6 IENhbm5vdCBvcGVuIHRhYmxlIC4qIGZyb20gdGhlIGludGVybmFsIGRhdGEgZGljdGlvbmFyeSBv ZiBJbm5vREIgdGhvdWdoIHRoZSAuZnJtIGZpbGUgZm9yIHRoZSB0YWJsZSBleGlzdHMuKicpOwog LS1lY2hvIEVuZCBvZiA2LjAgdGVzdHMKCj09PSBtb2RpZmllZCBmaWxlICdteXNxbC10ZXN0L3N1 aXRlL3N5c192YXJzL3IvaW5ub2RiX3B1cmdlX3J1bl9ub3dfYmFzaWMucmVzdWx0JwotLS0gYS9t eXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3IvaW5ub2RiX3B1cmdlX3J1bl9ub3dfYmFzaWMucmVz dWx0CXJldmlkOnN1bm55LmJhaW5zQG9yYWNsZS5jb20tMjAxMjA0MTcyMzIyMzItdHVzOG95NHhu MzRrb2l1ZQorKysgYi9teXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3IvaW5ub2RiX3B1cmdlX3J1 bl9ub3dfYmFzaWMucmVzdWx0CXJldmlkOm1hcmtvLm1ha2VsYUBvcmFjbGUuY29tLTIwMTIwNDE4 MDgxMjIzLWxvMXdtdmR2N2RhOHlpMHkKQEAgLTEsNCArMSw0IEBACi1TRUxFQ1QgbmFtZSwgY291 bnQgCitTRUxFQ1QgbmFtZSwgY291bnQKIEZST00gaW5mb3JtYXRpb25fc2NoZW1hLmlubm9kYl9t ZXRyaWNzCiBXSEVSRSBuYW1lID0gJ3B1cmdlX3N0b3BfY291bnQnIE9SIG5hbWUgPSAncHVyZ2Vf cmVzdW1lX2NvdW50JzsKIG5hbWUJY291bnQKQEAgLTksNyArOSw3IEBAIFNFTEVDVCBAb3JpZzsK IEBvcmlnCiAwCiBTRVQgR0xPQkFMIGlubm9kYl9wdXJnZV9zdG9wX25vdyA9IE9OOwotU0VMRUNU IG5hbWUsIGNvdW50IAorU0VMRUNUIG5hbWUsIGNvdW50CiBGUk9NIGluZm9ybWF0aW9uX3NjaGVt YS5pbm5vZGJfbWV0cmljcwogV0hFUkUgbmFtZSA9ICdwdXJnZV9zdG9wX2NvdW50JyBPUiBuYW1l ID0gJ3B1cmdlX3Jlc3VtZV9jb3VudCc7CiBuYW1lCWNvdW50CkBAIC0xOSw3ICsxOSw3IEBAIFNF VCBHTE9CQUwgaW5ub2RiX3B1cmdlX3J1bl9ub3cgPSBPTjsKIFNFTEVDVCBAQGdsb2JhbC5pbm5v ZGJfcHVyZ2VfcnVuX25vdzsKIEBAZ2xvYmFsLmlubm9kYl9wdXJnZV9ydW5fbm93CiAwCi1TRUxF Q1QgbmFtZSwgY291bnQgCitTRUxFQ1QgbmFtZSwgY291bnQKIEZST00gaW5mb3JtYXRpb25fc2No ZW1hLmlubm9kYl9tZXRyaWNzCiBXSEVSRSBuYW1lID0gJ3B1cmdlX3N0b3BfY291bnQnIE9SIG5h bWUgPSAncHVyZ2VfcmVzdW1lX2NvdW50JzsKIG5hbWUJY291bnQKCj09PSBtb2RpZmllZCBmaWxl ICdteXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3IvaW5ub2RiX3B1cmdlX3N0b3Bfbm93X2Jhc2lj LnJlc3VsdCcKLS0tIGEvbXlzcWwtdGVzdC9zdWl0ZS9zeXNfdmFycy9yL2lubm9kYl9wdXJnZV9z dG9wX25vd19iYXNpYy5yZXN1bHQJcmV2aWQ6c3VubnkuYmFpbnNAb3JhY2xlLmNvbS0yMDEyMDQx NzIzMjIzMi10dXM4b3k0eG4zNGtvaXVlCisrKyBiL215c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMv ci9pbm5vZGJfcHVyZ2Vfc3RvcF9ub3dfYmFzaWMucmVzdWx0CXJldmlkOm1hcmtvLm1ha2VsYUBv cmFjbGUuY29tLTIwMTIwNDE4MDgxMjIzLWxvMXdtdmR2N2RhOHlpMHkKQEAgLTEsNCArMSw0IEBA Ci1TRUxFQ1QgbmFtZSwgY291bnQgCitTRUxFQ1QgbmFtZSwgY291bnQKIEZST00gaW5mb3JtYXRp b25fc2NoZW1hLmlubm9kYl9tZXRyaWNzCiBXSEVSRSBuYW1lID0gJ3B1cmdlX3N0b3BfY291bnQn IE9SIG5hbWUgPSAncHVyZ2VfcmVzdW1lX2NvdW50JzsKIG5hbWUJY291bnQKQEAgLTksNyArOSw3 IEBAIFNFTEVDVCBAb3JpZzsKIEBvcmlnCiAwCiBTRVQgR0xPQkFMIGlubm9kYl9wdXJnZV9zdG9w X25vdyA9IE9OOwotU0VMRUNUIG5hbWUsIGNvdW50IAorU0VMRUNUIG5hbWUsIGNvdW50CiBGUk9N IGluZm9ybWF0aW9uX3NjaGVtYS5pbm5vZGJfbWV0cmljcwogV0hFUkUgbmFtZSA9ICdwdXJnZV9z dG9wX2NvdW50JyBPUiBuYW1lID0gJ3B1cmdlX3Jlc3VtZV9jb3VudCc7CiBuYW1lCWNvdW50CkBA IC0xOSw3ICsxOSw3IEBAIFNFVCBHTE9CQUwgaW5ub2RiX3B1cmdlX3J1bl9ub3cgPSBPTjsKIFNF TEVDVCBAQGdsb2JhbC5pbm5vZGJfcHVyZ2VfcnVuX25vdzsKIEBAZ2xvYmFsLmlubm9kYl9wdXJn ZV9ydW5fbm93CiAwCi1TRUxFQ1QgbmFtZSwgY291bnQgCitTRUxFQ1QgbmFtZSwgY291bnQKIEZS T00gaW5mb3JtYXRpb25fc2NoZW1hLmlubm9kYl9tZXRyaWNzCiBXSEVSRSBuYW1lID0gJ3B1cmdl X3N0b3BfY291bnQnIE9SIG5hbWUgPSAncHVyZ2VfcmVzdW1lX2NvdW50JzsKIG5hbWUJY291bnQK Cj09PSBtb2RpZmllZCBmaWxlICdteXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3QvaW5ub2RiX3B1 cmdlX3J1bl9ub3dfYmFzaWMudGVzdCcKLS0tIGEvbXlzcWwtdGVzdC9zdWl0ZS9zeXNfdmFycy90 L2lubm9kYl9wdXJnZV9ydW5fbm93X2Jhc2ljLnRlc3QJcmV2aWQ6c3VubnkuYmFpbnNAb3JhY2xl LmNvbS0yMDEyMDQxNzIzMjIzMi10dXM4b3k0eG4zNGtvaXVlCisrKyBiL215c3FsLXRlc3Qvc3Vp dGUvc3lzX3ZhcnMvdC9pbm5vZGJfcHVyZ2VfcnVuX25vd19iYXNpYy50ZXN0CXJldmlkOm1hcmtv Lm1ha2VsYUBvcmFjbGUuY29tLTIwMTIwNDE4MDgxMjIzLWxvMXdtdmR2N2RhOHlpMHkKQEAgLTE1 LDcgKzE1LDcgQEAgc2V0IGdsb2JhbCBpbm5vZGJfbW9uaXRvcl9lbmFibGUgPSBwdXJnZQogLS1l bmFibGVfcXVlcnlfbG9nCiAKICMgU2hvdWxkIGJlIDAgZm9yIGJvdGgKLVNFTEVDVCBuYW1lLCBj b3VudCAKK1NFTEVDVCBuYW1lLCBjb3VudAogICBGUk9NIGluZm9ybWF0aW9uX3NjaGVtYS5pbm5v ZGJfbWV0cmljcwogICBXSEVSRSBuYW1lID0gJ3B1cmdlX3N0b3BfY291bnQnIE9SIG5hbWUgPSAn cHVyZ2VfcmVzdW1lX2NvdW50JzsKIApAQCAtMjcsNyArMjcsNyBAQCBTRUxFQ1QgQG9yaWc7CiBT RVQgR0xPQkFMIGlubm9kYl9wdXJnZV9zdG9wX25vdyA9IE9OOwogCiAjIFN0b3AgY291bnQgc2hv dWxkIG5vdyBiZSAxCi1TRUxFQ1QgbmFtZSwgY291bnQgCitTRUxFQ1QgbmFtZSwgY291bnQKICAg RlJPTSBpbmZvcm1hdGlvbl9zY2hlbWEuaW5ub2RiX21ldHJpY3MKICAgV0hFUkUgbmFtZSA9ICdw dXJnZV9zdG9wX2NvdW50JyBPUiBuYW1lID0gJ3B1cmdlX3Jlc3VtZV9jb3VudCc7CiAKQEAgLTM3 LDcgKzM3LDcgQEAgU0VUIEdMT0JBTCBpbm5vZGJfcHVyZ2VfcnVuX25vdyA9IE9OOwogU0VMRUNU IEBAZ2xvYmFsLmlubm9kYl9wdXJnZV9ydW5fbm93OwogCiAjIEJvdGggc2hvdWxkIGJlIDEgbm93 Ci1TRUxFQ1QgbmFtZSwgY291bnQgCitTRUxFQ1QgbmFtZSwgY291bnQKICAgRlJPTSBpbmZvcm1h dGlvbl9zY2hlbWEuaW5ub2RiX21ldHJpY3MKICAgV0hFUkUgbmFtZSA9ICdwdXJnZV9zdG9wX2Nv dW50JyBPUiBuYW1lID0gJ3B1cmdlX3Jlc3VtZV9jb3VudCc7CiAKCj09PSBtb2RpZmllZCBmaWxl ICdteXNxbC10ZXN0L3N1aXRlL3N5c192YXJzL3QvaW5ub2RiX3B1cmdlX3N0b3Bfbm93X2Jhc2lj LnRlc3QnCi0tLSBhL215c3FsLXRlc3Qvc3VpdGUvc3lzX3ZhcnMvdC9pbm5vZGJfcHVyZ2Vfc3Rv cF9ub3dfYmFzaWMudGVzdAlyZXZpZDpzdW5ueS5iYWluc0BvcmFjbGUuY29tLTIwMTIwNDE3MjMy MjMyLXR1czhveTR4bjM0a29pdWUKKysrIGIvbXlzcWwtdGVzdC9zdWl0ZS9zeXNfdmFycy90L2lu bm9kYl9wdXJnZV9zdG9wX25vd19iYXNpYy50ZXN0CXJldmlkOm1hcmtvLm1ha2VsYUBvcmFjbGUu Y29tLTIwMTIwNDE4MDgxMjIzLWxvMXdtdmR2N2RhOHlpMHkKQEAgLTE1LDcgKzE1LDcgQEAgc2V0 IGdsb2JhbCBpbm5vZGJfbW9uaXRvcl9lbmFibGUgPSBwdXJnZQogLS1lbmFibGVfcXVlcnlfbG9n CiAKICMgU2hvdWxkIGJlIDAgZm9yIGJvdGgKLVNFTEVDVCBuYW1lLCBjb3VudCAKK1NFTEVDVCBu YW1lLCBjb3VudAogICBGUk9NIGluZm9ybWF0aW9uX3NjaGVtYS5pbm5vZGJfbWV0cmljcwogICBX SEVSRSBuYW1lID0gJ3B1cmdlX3N0b3BfY291bnQnIE9SIG5hbWUgPSAncHVyZ2VfcmVzdW1lX2Nv dW50JzsKIApAQCAtMjcsNyArMjcsNyBAQCBTRUxFQ1QgQG9yaWc7CiBTRVQgR0xPQkFMIGlubm9k Yl9wdXJnZV9zdG9wX25vdyA9IE9OOwogCiAjIFN0b3AgY291bnQgc2hvdWxkIG5vdyBiZSAxCi1T RUxFQ1QgbmFtZSwgY291bnQgCitTRUxFQ1QgbmFtZSwgY291bnQKICAgRlJPTSBpbmZvcm1hdGlv bl9zY2hlbWEuaW5ub2RiX21ldHJpY3MKICAgV0hFUkUgbmFtZSA9ICdwdXJnZV9zdG9wX2NvdW50 JyBPUiBuYW1lID0gJ3B1cmdlX3Jlc3VtZV9jb3VudCc7CiAKQEAgLTM3LDcgKzM3LDcgQEAgU0VU IEdMT0JBTCBpbm5vZGJfcHVyZ2VfcnVuX25vdyA9IE9OOwogU0VMRUNUIEBAZ2xvYmFsLmlubm9k Yl9wdXJnZV9ydW5fbm93OwogCiAjIEJvdGggc2hvdWxkIGJlIDEgbm93Ci1TRUxFQ1QgbmFtZSwg Y291bnQgCitTRUxFQ1QgbmFtZSwgY291bnQKICAgRlJPTSBpbmZvcm1hdGlvbl9zY2hlbWEuaW5u b2RiX21ldHJpY3MKICAgV0hFUkUgbmFtZSA9ICdwdXJnZV9zdG9wX2NvdW50JyBPUiBuYW1lID0g J3B1cmdlX3Jlc3VtZV9jb3VudCc7CiAKCj09PSBtb2RpZmllZCBmaWxlICdteXNxbC10ZXN0L3Qv bG93ZXJjYXNlX3RhYmxlMy50ZXN0JwotLS0gYS9teXNxbC10ZXN0L3QvbG93ZXJjYXNlX3RhYmxl My50ZXN0CXJldmlkOnN1bm55LmJhaW5zQG9yYWNsZS5jb20tMjAxMjA0MTcyMzIyMzItdHVzOG95 NHhuMzRrb2l1ZQorKysgYi9teXNxbC10ZXN0L3QvbG93ZXJjYXNlX3RhYmxlMy50ZXN0CXJldmlk Om1hcmtvLm1ha2VsYUBvcmFjbGUuY29tLTIwMTIwNDE4MDgxMjIzLWxvMXdtdmR2N2RhOHlpMHkK QEAgLTksNyArOSw3IEBACiAtLXNvdXJjZSBpbmNsdWRlL2hhdmVfY2FzZV9pbnNlbnNpdGl2ZV9m aWxlX3N5c3RlbS5pbmMKIC0tc291cmNlIGluY2x1ZGUvbm90X3dpbmRvd3MuaW5jCiAKLWNhbGwg bXRyLmFkZF9zdXBwcmVzc2lvbigiQ2Fubm90IGZpbmQgb3Igb3BlbiB0YWJsZSB0ZXN0L0JVRzI5 ODM5IGZyb20iKTsKK2NhbGwgbXRyLmFkZF9zdXBwcmVzc2lvbigiSW5ub0RCOiBDYW5ub3Qgb3Bl biB0YWJsZSB0ZXN0L0JVRzI5ODM5IGZyb20iKTsKIAogLS1kaXNhYmxlX3dhcm5pbmdzCiBEUk9Q IFRBQkxFIElGIEVYSVNUUyB0MSxUMTsKCj09PSBtb2RpZmllZCBmaWxlICdzdG9yYWdlL2lubm9i YXNlL2J0ci9idHIwYnRyLmNjJwotLS0gYS9zdG9yYWdlL2lubm9iYXNlL2J0ci9idHIwYnRyLmNj CXJldmlkOnN1bm55LmJhaW5zQG9yYWNsZS5jb20tMjAxMjA0MTcyMzIyMzItdHVzOG95NHhuMzRr b2l1ZQorKysgYi9zdG9yYWdlL2lubm9iYXNlL2J0ci9idHIwYnRyLmNjCXJldmlkOm1hcmtvLm1h a2VsYUBvcmFjbGUuY29tLTIwMTIwNDE4MDgxMjIzLWxvMXdtdmR2N2RhOHlpMHkKQEAgLTg1NCw3 ICs4NTQsNyBAQCBidHJfcm9vdF9hZGp1c3Rfb25faW1wb3J0KAogCQlib29sCXBhZ2VfaXNfY29t cGFjdF9mb3JtYXQ7CiAKIAkJcGFnZV9pc19jb21wYWN0X2Zvcm1hdCA9IHBhZ2VfaXNfY29tcChw YWdlKSA+IDA7Ci0JCQorCiAJCS8qIENoZWNrIGlmIHRoZSBwYWdlIGZvcm1hdCBhbmQgdGFibGUg Zm9ybWF0IGFncmVlLiAqLwogCQlpZiAocGFnZV9pc19jb21wYWN0X2Zvcm1hdCAhPSBkaWN0X3Rh YmxlX2lzX2NvbXAodGFibGUpKSB7CiAJCQllcnIgPSBEQl9DT1JSVVBUSU9OOwoKPT09IG1vZGlm aWVkIGZpbGUgJ3N0b3JhZ2UvaW5ub2Jhc2UvZmlsL2ZpbDBmaWwuY2MnCi0tLSBhL3N0b3JhZ2Uv aW5ub2Jhc2UvZmlsL2ZpbDBmaWwuY2MJcmV2aWQ6c3VubnkuYmFpbnNAb3JhY2xlLmNvbS0yMDEy MDQxNzIzMjIzMi10dXM4b3k0eG4zNGtvaXVlCisrKyBiL3N0b3JhZ2UvaW5ub2Jhc2UvZmlsL2Zp bDBmaWwuY2MJcmV2aWQ6bWFya28ubWFrZWxhQG9yYWNsZS5jb20tMjAxMjA0MTgwODEyMjMtbG8x d212ZHY3ZGE4eWkweQpAQCAtMjMzNiw3ICsyMzM2LDcgQEAgZmlsX2NoZWNrX3BlbmRpbmdfaW8o CiAJCXV0X2EoISgqbm9kZSktPmJlaW5nX2V4dGVuZGVkKTsKIAogCQlpZiAoY291bnQgPiAxMDAw KSB7Ci0JCQlpYl9sb2dmKElCX0xPR19MRVZFTF9XQVJOLCAKKwkJCWliX2xvZ2YoSUJfTE9HX0xF VkVMX1dBUk4sCiAJCQkJIlRyeWluZyB0byBjbG9zZS9kZWxldGUgdGFibGVzcGFjZSAnJXMnICIK IAkJCQkiYnV0IHRoZXJlIGFyZSAlbHUgZmx1c2hlcyAiCiAJCQkJIiBhbmQgJWx1IHBlbmRpbmcg aS9vJ3Mgb24gaXQuIiwKQEAgLTI0MDYsNyArMjQwNiw3IEBAIGZpbF9jaGVja19wZW5kaW5nX29w ZXJhdGlvbnMoCiAJCWlmIChjb3VudCA9PSAwKSB7CiAJCQkqcGF0aCA9IG1lbV9zdHJkdXAobm9k ZS0+bmFtZSk7CiAJCX0KLQkJCisKIAkJbXV0ZXhfZXhpdCgmZmlsX3N5c3RlbS0+bXV0ZXgpOwog CiAJCWlmIChjb3VudCA+IDApIHsKCj09PSBtb2RpZmllZCBmaWxlICdzdG9yYWdlL2lubm9iYXNl L2hhbmRsZXIvaGFuZGxlcjBhbHRlci5jYycKLS0tIGEvc3RvcmFnZS9pbm5vYmFzZS9oYW5kbGVy L2hhbmRsZXIwYWx0ZXIuY2MJcmV2aWQ6c3VubnkuYmFpbnNAb3JhY2xlLmNvbS0yMDEyMDQxNzIz MjIzMi10dXM4b3k0eG4zNGtvaXVlCisrKyBiL3N0b3JhZ2UvaW5ub2Jhc2UvaGFuZGxlci9oYW5k bGVyMGFsdGVyLmNjCXJldmlkOm1hcmtvLm1ha2VsYUBvcmFjbGUuY29tLTIwMTIwNDE4MDgxMjIz LWxvMXdtdmR2N2RhOHlpMHkKQEAgLTM4LDkgKzM4LDYgQEAgU21hcnQgQUxURVIgVEFCTEUKICNp bmNsdWRlICJoYW5kbGVyMGFsdGVyLmgiCiAjaW5jbHVkZSAic3J2MG1vbi5oIgogI2luY2x1ZGUg ImZ0czBwcml2LmgiCi0jaWZkZWYgVU5JVl9ERUJVRwotI2luY2x1ZGUgImJ0cjBzZWEuaCIKLSNl bmRpZiAvKiBVTklWX0RFQlVHICovCiAKICNpbmNsdWRlICJoYV9pbm5vZGIuaCIKIApAQCAtMTU0 LDYgKzE1MSwxMCBAQCBoYV9pbm5vYmFzZTo6Y2hlY2tfaWZfc3VwcG9ydGVkX2lucGxhY2VfCiB7 CiAJREJVR19FTlRFUigiY2hlY2tfaWZfc3VwcG9ydGVkX2lucGxhY2VfYWx0ZXIiKTsKIAorCWlm IChzcnZfY3JlYXRlZF9uZXdfcmF3IHx8IHNydl9mb3JjZV9yZWNvdmVyeSkgeworCQlEQlVHX1JF VFVSTihIQV9BTFRFUl9JTlBMQUNFX05PVF9TVVBQT1JURUQpOworCX0KKwogCUhBX0NSRUFURV9J TkZPKiBjcmVhdGVfaW5mbyA9IGhhX2FsdGVyX2luZm8tPmNyZWF0ZV9pbmZvOwogCiAJaWYgKGhh X2FsdGVyX2luZm8tPmhhbmRsZXJfZmxhZ3MKQEAgLTE4OSw2ICsxOTAsNyBAQCBoYV9pbm5vYmFz ZTo6Y2hlY2tfaWZfc3VwcG9ydGVkX2lucGxhY2VfCiAJfQogCiAJdXBkYXRlX3RoZCgpOworCXRy eF9zZWFyY2hfbGF0Y2hfcmVsZWFzZV9pZl9yZXNlcnZlZChwcmVidWlsdC0+dHJ4KTsKIAogCS8q IEZpeCB0aGUga2V5IHBhcnRzLiAqLwogCWZvciAoS0VZKiBuZXdfa2V5ID0gaGFfYWx0ZXJfaW5m by0+a2V5X2luZm9fYnVmZmVyOwpAQCAtMTYyOCw3ICsxNjMwLDkgQEAgY29sX2ZhaWw6CiAJCWxv ZyBpcyB1bm5lY2Vzc2FyeS4gKi8KIAkJaWYgKCFudW1fZnRzX2luZGV4CiAJCSAgICAmJiAhKGhh X2FsdGVyX2luZm8tPmhhbmRsZXJfZmxhZ3MKLQkJCSAmIH5JTk5PQkFTRV9PTkxJTkVfT1BFUkFU SU9OUykpIHsKKwkJCSAmIH5JTk5PQkFTRV9PTkxJTkVfT1BFUkFUSU9OUykKKwkJICAgICYmICF1 c2VyX3RhYmxlLT5pYmRfZmlsZV9taXNzaW5nCisJCSAgICAmJiAhZGljdF90YWJsZV9pc19kaXNj YXJkZWQodXNlcl90YWJsZSkpIHsKIAkJCURCVUdfRVhFQ1VURV9JRigiaW5ub2RiX09PTV9wcmVw YXJlX2lucGxhY2VfYWx0ZXIiLAogCQkJCQllcnJvciA9IERCX09VVF9PRl9NRU1PUlk7CiAJCQkJ CWdvdG8gZXJyb3JfaGFuZGxpbmc7KTsKQEAgLTE4MjgsMTkgKzE4MzIsMTEgQEAgaGFfaW5ub2Jh c2U6OnByZXBhcmVfaW5wbGFjZV9hbHRlcl90YWJsZQogCQlnb3RvIGZ1bmNfZXhpdDsKIAl9CiAK LQlpZiAoc3J2X2NyZWF0ZWRfbmV3X3JhdyB8fCBzcnZfZm9yY2VfcmVjb3ZlcnkpIHsKLQkJbXlf ZXJyb3IoRVJfT1BFTl9BU19SRUFET05MWSwgTVlGKDApLAotCQkJIHRhYmxlLT5zLT50YWJsZV9u YW1lLnN0cik7Ci0JCURCVUdfUkVUVVJOKHRydWUpOwotCX0KLQogCXV0X2QobXV0ZXhfZW50ZXIo JmRpY3Rfc3lzLT5tdXRleCkpOwogCXV0X2QoZGljdF90YWJsZV9jaGVja19mb3JfZHVwX2luZGV4 ZXMoCiAJCSAgICAgcHJlYnVpbHQtPnRhYmxlLCBDSEVDS19BQk9SVEVEX09LKSk7CiAJdXRfZCht dXRleF9leGl0KCZkaWN0X3N5cy0+bXV0ZXgpKTsKIAotCXVwZGF0ZV90aGQoKTsKLQogCS8qIElu IGNhc2UgTXlTUUwgY2FsbHMgdGhpcyBpbiB0aGUgbWlkZGxlIG9mIGEgU0VMRUNUIHF1ZXJ5LCBy ZWxlYXNlCiAJcG9zc2libGUgYWRhcHRpdmUgaGFzaCBsYXRjaCB0byBhdm9pZCBkZWFkbG9ja3Mg b2YgdGhyZWFkcy4gKi8KIAl0cnhfc2VhcmNoX2xhdGNoX3JlbGVhc2VfaWZfcmVzZXJ2ZWQocHJl YnVpbHQtPnRyeCk7CkBAIC0yMTE1LDM1ICsyMTExLDIyIEBAIGhhX2lubm9iYXNlOjppbnBsYWNl X2FsdGVyX3RhYmxlKAogCXV0X2FkKCFyd19sb2NrX293bigmZGljdF9vcGVyYXRpb25fbG9jaywg UldfTE9DS19TSEFSRUQpKTsKICNlbmRpZiAvKiBVTklWX1NZTkNfREVCVUcgKi8KIAotCWNsYXNz IGhhX2lubm9iYXNlX2lucGxhY2VfY3R4KgljdHgKLQkJPSBzdGF0aWNfY2FzdDxjbGFzcyBoYV9p bm5vYmFzZV9pbnBsYWNlX2N0eCo+Ci0JCShoYV9hbHRlcl9pbmZvLT5oYW5kbGVyX2N0eCk7Ci0K LQl1cGRhdGVfdGhkKCk7Ci0KIAlpZiAoIShoYV9hbHRlcl9pbmZvLT5oYW5kbGVyX2ZsYWdzICYg SU5OT0JBU0VfSU5QTEFDRV9DUkVBVEUpKSB7CiAJCURCVUdfUkVUVVJOKGZhbHNlKTsKLQl9IGVs c2UgaWYgKGRpY3RfdGFibGVfaXNfZGlzY2FyZGVkKHByZWJ1aWx0LT50YWJsZSkpIHsKKwl9CiAK LQkJLyogTm90aGluZyB0byBkby4gKi8KLQkJZm9yICh1aW50IGkgPSAwOyBpIDwgY3R4LT5udW1f dG9fYWRkOyArK2kpIHsKLQkJCWRpY3RfaW5kZXhfdCoJaW5kZXggPSBjdHgtPmFkZFtpXTsKKwlj bGFzcyBoYV9pbm5vYmFzZV9pbnBsYWNlX2N0eCoJY3R4CisJCT0gc3RhdGljX2Nhc3Q8Y2xhc3Mg aGFfaW5ub2Jhc2VfaW5wbGFjZV9jdHgqPgorCQkoaGFfYWx0ZXJfaW5mby0+aGFuZGxlcl9jdHgp OwogCi0JCQllcnJvciA9IHJvd19sb2dfYXBwbHkocHJlYnVpbHQtPnRyeCwgaW5kZXgsIHRhYmxl KTsKLQkJCXV0X2EoZXJyb3IgPT0gREJfU1VDQ0VTUyk7Ci0jaWZkZWYgVU5JVl9ERUJVRwotCQkJ dXRfYShpbmRleC0+aW5mby5zZWFyY2gtPm1hZ2ljX24gPT0gQlRSX1NFQVJDSF9NQUdJQ19OKTsK LSNlbmRpZiAvKiBVTklWX0RFQlVHICovCi0JCQlpbmRleC0+cGFnZSA9IEZJTF9OVUxMOwotCQl9 CisJREJVR19BU1NFUlQoY3R4KTsKKwlEQlVHX0FTU0VSVChjdHgtPnRyeCk7CiAKLQkJREJVR19S RVRVUk4oZmFsc2UpOworCWlmIChwcmVidWlsdC0+dGFibGUtPmliZF9maWxlX21pc3NpbmcKKwkg ICAgfHwgZGljdF90YWJsZV9pc19kaXNjYXJkZWQocHJlYnVpbHQtPnRhYmxlKSkgeworCQlnb3Rv IGFsbF9kb25lOwogCX0KIAotCXRyeF9zZWFyY2hfbGF0Y2hfcmVsZWFzZV9pZl9yZXNlcnZlZChw cmVidWlsdC0+dHJ4KTsKLQotCURCVUdfQVNTRVJUKGN0eC0+dHJ4ICE9IDApOwotCiAJLyogUmVh ZCB0aGUgY2x1c3RlcmVkIGluZGV4IG9mIHRoZSB0YWJsZSBhbmQgYnVpbGQKIAlpbmRleGVzIGJh c2VkIG9uIHRoaXMgaW5mb3JtYXRpb24gdXNpbmcgdGVtcG9yYXJ5CiAJZmlsZXMgYW5kIG1lcmdl IHNvcnQuICovCkBAIC0yMTYzLDYgKzIxNDYsNyBAQCBvb206CiAKIAlzd2l0Y2ggKGVycm9yKSB7 CiAJCUtFWSoJZHVwX2tleTsKKwlhbGxfZG9uZToKIAljYXNlIERCX1NVQ0NFU1M6CiAJCXV0X2Qo bXV0ZXhfZW50ZXIoJmRpY3Rfc3lzLT5tdXRleCkpOwogCQl1dF9kKGRpY3RfdGFibGVfY2hlY2tf Zm9yX2R1cF9pbmRleGVzKAoKPT09IG1vZGlmaWVkIGZpbGUgJ3N0b3JhZ2UvaW5ub2Jhc2UvbG9n L2xvZzByZWN2LmNjJwotLS0gYS9zdG9yYWdlL2lubm9iYXNlL2xvZy9sb2cwcmVjdi5jYwlyZXZp ZDpzdW5ueS5iYWluc0BvcmFjbGUuY29tLTIwMTIwNDE3MjMyMjMyLXR1czhveTR4bjM0a29pdWUK KysrIGIvc3RvcmFnZS9pbm5vYmFzZS9sb2cvbG9nMHJlY3YuY2MJcmV2aWQ6bWFya28ubWFrZWxh QG9yYWNsZS5jb20tMjAxMjA0MTgwODEyMjMtbG8xd212ZHY3ZGE4eWkweQpAQCAtMjg5NCw3ICsy ODk0LDcgQEAgcmVjdl9yZWNvdmVyeV9mcm9tX2NoZWNrcG9pbnRfc3RhcnRfZnVuYwogCWxzbl90 CQljaGVja3BvaW50X2xzbjsKIAlpYl91aW50NjRfdAljaGVja3BvaW50X25vOwogCWxzbl90CQlv bGRfc2Nhbm5lZF9sc247Ci0JbHNuX3QJCWdyb3VwX3NjYW5uZWRfbHNuOworCWxzbl90CQlncm91 cF9zY2FubmVkX2xzbiA9IDA7CiAJbHNuX3QJCWNvbnRpZ3VvdXNfbHNuOwogI2lmZGVmIFVOSVZf TE9HX0FSQ0hJVkUKIAlsc25fdAkJYXJjaGl2ZWRfbHNuOwoKPT09IG1vZGlmaWVkIGZpbGUgJ3N0 b3JhZ2UvaW5ub2Jhc2UvbXRyL210cjBtdHIuY2MnCi0tLSBhL3N0b3JhZ2UvaW5ub2Jhc2UvbXRy L210cjBtdHIuY2MJcmV2aWQ6c3VubnkuYmFpbnNAb3JhY2xlLmNvbS0yMDEyMDQxNzIzMjIzMi10 dXM4b3k0eG4zNGtvaXVlCisrKyBiL3N0b3JhZ2UvaW5ub2Jhc2UvbXRyL210cjBtdHIuY2MJcmV2 aWQ6bWFya28ubWFrZWxhQG9yYWNsZS5jb20tMjAxMjA0MTgwODEyMjMtbG8xd212ZHY3ZGE4eWkw eQpAQCAtMjQ4LDggKzI0OCw4IEBAIG10cl9sb2dfcmVzZXJ2ZV9hbmRfd3JpdGUoCiAKIAlpZiAo bWxvZy0+aGVhcCA9PSBOVUxMKSB7CiAJCXVsaW50CWxlbjsKLQkJCi0JCWxlbiA9IG10ci0+bG9n X21vZGUgIT0gTVRSX0xPR19OT19SRURPIAorCisJCWxlbiA9IG10ci0+bG9nX21vZGUgIT0gTVRS X0xPR19OT19SRURPCiAJCQk/IGR5bl9ibG9ja19nZXRfdXNlZChtbG9nKSA6IDA7CiAKIAkJbXRy LT5lbmRfbHNuID0gbG9nX3Jlc2VydmVfYW5kX3dyaXRlX2Zhc3QoCgo9PT0gbW9kaWZpZWQgZmls ZSAnc3RvcmFnZS9pbm5vYmFzZS9yb3cvcm93MGltcG9ydC5jYycKLS0tIGEvc3RvcmFnZS9pbm5v YmFzZS9yb3cvcm93MGltcG9ydC5jYwlyZXZpZDpzdW5ueS5iYWluc0BvcmFjbGUuY29tLTIwMTIw NDE3MjMyMjMyLXR1czhveTR4bjM0a29pdWUKKysrIGIvc3RvcmFnZS9pbm5vYmFzZS9yb3cvcm93 MGltcG9ydC5jYwlyZXZpZDptYXJrby5tYWtlbGFAb3JhY2xlLmNvbS0yMDEyMDQxODA4MTIyMy1s bzF3bXZkdjdkYTh5aTB5CkBAIC0xOTgyLDggKzE5ODIsOCBAQCByb3dfaW1wb3J0X3VwZGF0ZV9k aXNjYXJkZWRfZmxhZygKIAkJCQkJdG8gc2V0IHRoZSByb290IHRhYmxlLT5mbGFnczIgKi8KIAli b29sCQlkaXNjYXJkZWQsCS8qITwgaW46IHNldCBNSVhfTEVOIGNvbHVtbiBiaXQKIAkJCQkJdG8g ZGlzY2FyZGVkLCBpZiB0cnVlICovCi0JYm9vbAkJZGljdF9sb2NrZWQpCS8qITwgaW46IHNldCB0 byB0cnVlIGlmIHRoZSAKLQkJCQkJY2FsbGVyIGFscmVhZHkgb3ducyB0aGUgCisJYm9vbAkJZGlj dF9sb2NrZWQpCS8qITwgaW46IHNldCB0byB0cnVlIGlmIHRoZQorCQkJCQljYWxsZXIgYWxyZWFk eSBvd25zIHRoZQogCQkJCQlkaWN0X3N5c190OjogbXV0ZXguICovCiAKIHsKCj09PSBtb2RpZmll ZCBmaWxlICdzdG9yYWdlL2lubm9iYXNlL3Jvdy9yb3cwbXlzcWwuY2MnCi0tLSBhL3N0b3JhZ2Uv aW5ub2Jhc2Uvcm93L3JvdzBteXNxbC5jYwlyZXZpZDpzdW5ueS5iYWluc0BvcmFjbGUuY29tLTIw MTIwNDE3MjMyMjMyLXR1czhveTR4bjM0a29pdWUKKysrIGIvc3RvcmFnZS9pbm5vYmFzZS9yb3cv cm93MG15c3FsLmNjCXJldmlkOm1hcmtvLm1ha2VsYUBvcmFjbGUuY29tLTIwMTIwNDE4MDgxMjIz LWxvMXdtdmR2N2RhOHlpMHkKQEAgLTI5MjEsNyArMjkyMSw3IEBAIHJvd19kaXNjYXJkX3RhYmxl c3BhY2VfZm9yX215c3FsKAogCiAJaWYgKGVyciAhPSBEQl9TVUNDRVNTKSB7CiAJCXJldHVybihy b3dfZGlzY2FyZF90YWJsZXNwYWNlX2VuZCh0cngsIHRhYmxlLCBlcnIpKTsKLQl9CQorCX0KIAog CWVyciA9IHJvd19kaXNjYXJkX3RhYmxlc3BhY2UodHJ4LCB0YWJsZSk7CiAKCk5vIGJ1bmRsZSAo cmVhc29uOiB1c2VsZXNzIGZvciBwdXNoIGVtYWlscyku