From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 From: Jakub Jelinek To: git-commits@fedoraproject.org Subject: [rpms/gcc] rhel-f41-base: 4.7.0-0.2 Date: Mon, 29 Jun 2026 12:25:11 GMT Message-ID: <178273591160.1.6348981657042100857.rpms-gcc-5c29a257402c@fedoraproject.org> List-ID: X-Git-Repo: rpms/gcc X-Git-Branch: rhel-f41-base X-Git-Rev: 5c29a257402c1e3f62f44c0906c0c5e5bcb5fbb7 QSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KClJlcG8gICA6IHJwbXMvZ2NjCkJyYW5jaCA6 IHJoZWwtZjQxLWJhc2UKQ29tbWl0IDogNWMyOWEyNTc0MDJjMWUzZjYyZjQ0YzA5MDZjMGM1ZTVi Y2I1ZmJiNwpBdXRob3IgOiBKYWt1YiBKZWxpbmVrIDxqYWt1YkByZWRoYXQuY29tPgpEYXRlICAg OiAyMDEyLTAxLTAzVDE1OjE3OjIyKzAxOjAwClN0YXRzICA6ICsxNzUzLy0yMDkxIGluIDM4IGZp bGUocykKVVJMICAgIDogaHR0cHM6Ly9zcmMuZmVkb3JhcHJvamVjdC5vcmcvcnBtcy9nY2MvYy81 YzI5YTI1NzQwMmMxZTNmNjJmNDRjMDkwNmMwYzVlNWJjYjVmYmI3P2JyYW5jaD1yaGVsLWY0MS1i YXNlCgpMb2c6CjQuNy4wLTAuMgoKLS0tCmRpZmYgLS1naXQgYS8uZ2l0aWdub3JlIGIvLmdpdGln bm9yZQppbmRleCAzMjY4Y2NjLi4yYjkyMTAwIDEwMDY0NAotLS0gYS8uZ2l0aWdub3JlCisrKyBi Ly5naXRpZ25vcmUKQEAgLTcsMyArNyw0IEBACiAvZ2NjLTQuNi4xLTIwMTEwNjI3LnRhci5iejIK IC9nY2MtNC42LjEtMjAxMTA3MDgudGFyLmJ6MgogL2djYy00LjYuMS0yMDExMDcxNS50YXIuYnoy CisvZ2NjLTQuNy4wLTIwMTIwMTAzLnRhci5iejIKCmRpZmYgLS1naXQgYS9nY2Muc3BlYyBiL2dj Yy5zcGVjCmluZGV4IDU4MDFiY2UuLjkyZmFiNDQgMTAwNjQ0Ci0tLSBhL2djYy5zcGVjCisrKyBi L2djYy5zcGVjCkBAIC0xLDkgKzEsOSBAQAotJWdsb2JhbCBEQVRFIDIwMTExMDI3Ci0lZ2xvYmFs IFNWTlJFViAxODA1NjEKLSVnbG9iYWwgZ2NjX3ZlcnNpb24gNC42LjIKKyVnbG9iYWwgREFURSAy MDEyMDEwMworJWdsb2JhbCBTVk5SRVYgMTgyODQ3CislZ2xvYmFsIGdjY192ZXJzaW9uIDQuNy4w CiAjIE5vdGUsIGdjY19yZWxlYXNlIG11c3QgYmUgaW50ZWdlciwgaWYgeW91IHdhbnQgdG8gYWRk IHN1ZmZpeGVzIHRvCiAjICV7cmVsZWFzZX0sIGFwcGVuZCB0aGVtIGFmdGVyICV7Z2NjX3JlbGVh c2V9IG9uIFJlbGVhc2U6IGxpbmUuCi0lZ2xvYmFsIGdjY19yZWxlYXNlIDEgCislZ2xvYmFsIGdj Y19yZWxlYXNlIDAKICVnbG9iYWwgX3VucGFja2FnZWRfZmlsZXNfdGVybWluYXRlX2J1aWxkIDAK ICVnbG9iYWwgbXVsdGlsaWJfNjRfYXJjaHMgc3BhcmM2NCBwcGM2NCBzMzkweCB4ODZfNjQKICVp ZmFyY2ggJXtpeDg2fSB4ODZfNjQgaWE2NCBwcGMgcHBjNjQgYWxwaGEKQEAgLTEyLDE2ICsxMiwx NyBAQAogJWdsb2JhbCBidWlsZF9hZGEgMAogJWVuZGlmCiAlZ2xvYmFsIGJ1aWxkX2phdmEgMQot JWlmYXJjaCAle2l4ODZ9IHg4Nl82NAogJWdsb2JhbCBidWlsZF9nbyAxCi0lZWxzZQotJWdsb2Jh bCBidWlsZF9nbyAwCi0lZW5kaWYKICVpZmFyY2ggJXtpeDg2fSB4ODZfNjQgaWE2NAogJWdsb2Jh bCBidWlsZF9saWJxdWFkbWF0aCAxCiAlZWxzZQogJWdsb2JhbCBidWlsZF9saWJxdWFkbWF0aCAw CiAlZW5kaWYKKyVpZmFyY2ggJXtpeDg2fSB4ODZfNjQgJXthcm19IGFscGhhCislZ2xvYmFsIGJ1 aWxkX2xpYml0bSAxCislZWxzZQorJWdsb2JhbCBidWlsZF9saWJpdG0gMAorJWVuZGlmCiAlZ2xv YmFsIGJ1aWxkX2Nsb29nIDEKICVnbG9iYWwgYnVpbGRfbGlic3RkY3h4X2RvY3MgMQogIyBJZiB5 b3UgZG9uJ3QgaGF2ZSBhbHJlYWR5IGEgdXNhYmxlIGdjYy1qYXZhIGFuZCBsaWJnY2ogZm9yIHlv dXIgYXJjaCwKQEAgLTQ1LDE0ICs0NiwxNCBAQAogU3VtbWFyeTogVmFyaW91cyBjb21waWxlcnMg KEMsIEMrKywgT2JqZWN0aXZlLUMsIEphdmEsIC4uLikKIE5hbWU6IGdjYwogVmVyc2lvbjogJXtn Y2NfdmVyc2lvbn0KLVJlbGVhc2U6ICV7Z2NjX3JlbGVhc2V9JXs/ZGlzdH0uMQorUmVsZWFzZTog JXtnY2NfcmVsZWFzZX0uMiV7P2Rpc3R9CiAjIGxpYmdjYywgbGliZ2ZvcnRyYW4sIGxpYm11ZGZs YXAsIGxpYmdvbXAsIGxpYnN0ZGMrKyBhbmQgY3J0c3R1ZmYgaGF2ZQogIyBHQ0MgUnVudGltZSBF eGNlcHRpb24uCiBMaWNlbnNlOiBHUEx2MysgYW5kIEdQTHYzKyB3aXRoIGV4Y2VwdGlvbnMgYW5k IEdQTHYyKyB3aXRoIGV4Y2VwdGlvbnMgYW5kIExHUEx2MisgYW5kIEJTRAogR3JvdXA6IERldmVs b3BtZW50L0xhbmd1YWdlcwogIyBUaGUgc291cmNlIGZvciB0aGlzIHBhY2thZ2Ugd2FzIHB1bGxl ZCBmcm9tIHVwc3RyZWFtJ3MgdmNzLiAgVXNlIHRoZQogIyBmb2xsb3dpbmcgY29tbWFuZHMgdG8g Z2VuZXJhdGUgdGhlIHRhcmJhbGw6Ci0jIHN2biBleHBvcnQgc3ZuOi8vZ2NjLmdudS5vcmcvc3Zu L2djYy9icmFuY2hlcy9yZWRoYXQvZ2NjLTRfNi1icmFuY2hAJXtTVk5SRVZ9IGdjYy0le3ZlcnNp b259LSV7REFURX0KKyMgc3ZuIGV4cG9ydCBzdm46Ly9nY2MuZ251Lm9yZy9zdm4vZ2NjL2JyYW5j aGVzL3JlZGhhdC9nY2MtNF83LWJyYW5jaEAle1NWTlJFVn0gZ2NjLSV7dmVyc2lvbn0tJXtEQVRF fQogIyB0YXIgY2YgLSBnY2MtJXt2ZXJzaW9ufS0le0RBVEV9IHwgYnppcDIgLTkgPiBnY2MtJXt2 ZXJzaW9ufS0le0RBVEV9LnRhci5iejIKIFNvdXJjZTA6IGdjYy0le3ZlcnNpb259LSV7REFURX0u dGFyLmJ6MgogJWdsb2JhbCBmYXN0amFyX3ZlciAwLjk3CkBAIC0xNTMsMjMgKzE1NCwyMiBAQCBS ZXF1aXJlcyhwb3N0KTogL3NiaW4vaW5zdGFsbC1pbmZvCiBSZXF1aXJlcyhwcmV1bik6IC9zYmlu L2luc3RhbGwtaW5mbwogQXV0b1JlcTogdHJ1ZQogCi1QYXRjaDA6IGdjYzQ2LWhhY2sucGF0Y2gK LVBhdGNoMjogZ2NjNDYtYysrLWJ1aWx0aW4tcmVkZWNsLnBhdGNoCi1QYXRjaDQ6IGdjYzQ2LWph dmEtbm9tdWx0aS5wYXRjaAotUGF0Y2g1OiBnY2M0Ni1wcGMzMi1yZXRhZGRyLnBhdGNoCi1QYXRj aDY6IGdjYzQ2LXByMzM3NjMucGF0Y2gKLVBhdGNoNzogZ2NjNDYtcmgzMzA3NzEucGF0Y2gKLVBh dGNoODogZ2NjNDYtaTM4Ni1saWJnb21wLnBhdGNoCi1QYXRjaDk6IGdjYzQ2LXNwYXJjLWNvbmZp Zy1kZXRlY3Rpb24ucGF0Y2gKLVBhdGNoMTA6IGdjYzQ2LWxpYmdvbXAtb21wX2gtbXVsdGlsaWIu cGF0Y2gKLVBhdGNoMTE6IGdjYzQ2LWxpYnRvb2wtbm8tcnBhdGgucGF0Y2gKLVBhdGNoMTI6IGdj YzQ2LWNsb29nLWRsLnBhdGNoCi1QYXRjaDE0OiBnY2M0Ni1wcjM4NzU3LnBhdGNoCi1QYXRjaDE1 OiBnY2M0Ni1saWJzdGRjKystZG9jcy5wYXRjaAotUGF0Y2gxNzogZ2NjNDYtbm8tYWRkLW5lZWRl ZC5wYXRjaAotUGF0Y2gxODogZ2NjNDYtcHBsLTAuMTAucGF0Y2gKLVBhdGNoMTk6IGdjYzQ2LXBy NDc4NTgucGF0Y2gKLVBhdGNoMjA6IGdjYzQ2LWxpYmphdmEtcHJpbXMtY3R5cGUucGF0Y2gKK1Bh dGNoMDogZ2NjNDctaGFjay5wYXRjaAorUGF0Y2gxOiBnY2M0Ny1jKystYnVpbHRpbi1yZWRlY2wu cGF0Y2gKK1BhdGNoMjogZ2NjNDctamF2YS1ub211bHRpLnBhdGNoCitQYXRjaDM6IGdjYzQ3LXBw YzMyLXJldGFkZHIucGF0Y2gKK1BhdGNoNDogZ2NjNDctcHIzMzc2My5wYXRjaAorUGF0Y2g1OiBn Y2M0Ny1yaDMzMDc3MS5wYXRjaAorUGF0Y2g2OiBnY2M0Ny1pMzg2LWxpYmdvbXAucGF0Y2gKK1Bh dGNoNzogZ2NjNDctc3BhcmMtY29uZmlnLWRldGVjdGlvbi5wYXRjaAorUGF0Y2g4OiBnY2M0Ny1s aWJnb21wLW9tcF9oLW11bHRpbGliLnBhdGNoCitQYXRjaDk6IGdjYzQ3LWxpYnRvb2wtbm8tcnBh dGgucGF0Y2gKK1BhdGNoMTA6IGdjYzQ3LWNsb29nLWRsLnBhdGNoCitQYXRjaDExOiBnY2M0Ny1w cjM4NzU3LnBhdGNoCitQYXRjaDEyOiBnY2M0Ny1saWJzdGRjKystZG9jcy5wYXRjaAorUGF0Y2gx MzogZ2NjNDctbm8tYWRkLW5lZWRlZC5wYXRjaAorUGF0Y2gxNDogZ2NjNDctcHBsLTAuMTAucGF0 Y2gKK1BhdGNoMTU6IGdjYzQ3LWxpYml0bS1mbm8tZXhjZXB0aW9ucy5wYXRjaAogCiBQYXRjaDEw MDA6IGZhc3RqYXItMC45Ny1zZWdmYXVsdC5wYXRjaAogUGF0Y2gxMDAxOiBmYXN0amFyLTAuOTct bGVuMS5wYXRjaApAQCAtMTkzLDExICsxOTMsMTEgQEAgUGF0Y2gxMDA0OiBmYXN0amFyLW1hbi5w YXRjaAogJWVuZGlmCiAKICVkZXNjcmlwdGlvbgotVGhlIGdjYyBwYWNrYWdlIGNvbnRhaW5zIHRo ZSBHTlUgQ29tcGlsZXIgQ29sbGVjdGlvbiB2ZXJzaW9uIDQuNi4KK1RoZSBnY2MgcGFja2FnZSBj b250YWlucyB0aGUgR05VIENvbXBpbGVyIENvbGxlY3Rpb24gdmVyc2lvbiA0LjcuCiBZb3UnbGwg bmVlZCB0aGlzIHBhY2thZ2UgaW4gb3JkZXIgdG8gY29tcGlsZSBDIGNvZGUuCiAKICVwYWNrYWdl IC1uIGxpYmdjYwotU3VtbWFyeTogR0NDIHZlcnNpb24gNC42IHNoYXJlZCBzdXBwb3J0IGxpYnJh cnkKK1N1bW1hcnk6IEdDQyB2ZXJzaW9uIDQuNyBzaGFyZWQgc3VwcG9ydCBsaWJyYXJ5CiBHcm91 cDogU3lzdGVtIEVudmlyb25tZW50L0xpYnJhcmllcwogQXV0b3JlcTogZmFsc2UKIApAQCAtMzk4 LDYgKzM5OCwzNCBAQCBSZXF1aXJlczogbGlicXVhZG1hdGgtZGV2ZWwgPSAle3ZlcnNpb259LSV7 cmVsZWFzZX0KIFRoaXMgcGFja2FnZSBjb250YWlucyBzdGF0aWMgbGlicmFyaWVzIGZvciBidWls ZGluZyBGb3J0cmFuIHByb2dyYW1zCiB1c2luZyBSRUFMKjE2IGFuZCBwcm9ncmFtcyB1c2luZyBf X2Zsb2F0MTI4IG1hdGguCiAKKyVwYWNrYWdlIC1uIGxpYml0bQorU3VtbWFyeTogVGhlIEdOVSBU cmFuc2FjdGlvbmFsIE1lbW9yeSBsaWJyYXJ5CitHcm91cDogU3lzdGVtIEVudmlyb25tZW50L0xp YnJhcmllcworUmVxdWlyZXMocG9zdCk6IC9zYmluL2luc3RhbGwtaW5mbworUmVxdWlyZXMocHJl dW4pOiAvc2Jpbi9pbnN0YWxsLWluZm8KKworJWRlc2NyaXB0aW9uIC1uIGxpYml0bQorVGhpcyBw YWNrYWdlIGNvbnRhaW5zIHRoZSBHTlUgVHJhbnNhY3Rpb25hbCBNZW1vcnkgbGlicmFyeQord2hp Y2ggaXMgYSBHQ0MgdHJhbnNhY3Rpb25hbCBtZW1vcnkgc3VwcG9ydCBydW50aW1lIGxpYnJhcnku CisKKyVwYWNrYWdlIC1uIGxpYml0bS1kZXZlbAorU3VtbWFyeTogVGhlIEdOVSBUcmFuc2FjdGlv bmFsIE1lbW9yeSBzdXBwb3J0CitHcm91cDogRGV2ZWxvcG1lbnQvTGlicmFyaWVzCitSZXF1aXJl czogbGliaXRtID0gJXt2ZXJzaW9ufS0le3JlbGVhc2V9CitSZXF1aXJlczogZ2NjID0gJXt2ZXJz aW9ufS0le3JlbGVhc2V9CisKKyVkZXNjcmlwdGlvbiAtbiBsaWJpdG0tZGV2ZWwKK1RoaXMgcGFj a2FnZSBjb250YWlucyBoZWFkZXJzIGFuZCBzdXBwb3J0IGZpbGVzIGZvciB0aGUKK0dOVSBUcmFu c2FjdGlvbmFsIE1lbW9yeSBsaWJyYXJ5LgorCislcGFja2FnZSAtbiBsaWJpdG0tc3RhdGljCitT dW1tYXJ5OiBUaGUgR05VIFRyYW5zYWN0aW9uYWwgTWVtb3J5IHN0YXRpYyBsaWJyYXJ5CitHcm91 cDogRGV2ZWxvcG1lbnQvTGlicmFyaWVzCitSZXF1aXJlczogbGliaXRtLWRldmVsID0gJXt2ZXJz aW9ufS0le3JlbGVhc2V9CisKKyVkZXNjcmlwdGlvbiAtbiBsaWJpdG0tc3RhdGljCitUaGlzIHBh Y2thZ2UgY29udGFpbnMgR05VIFRyYW5zYWN0aW9uYWwgTWVtb3J5IHN0YXRpYyBsaWJyYXJpZXMu CisKICVwYWNrYWdlIGphdmEKIFN1bW1hcnk6IEphdmEgc3VwcG9ydCBmb3IgR0NDCiBHcm91cDog RGV2ZWxvcG1lbnQvTGFuZ3VhZ2VzCkBAIC02MjAsMjggKzY0OCwyNyBAQCBwYWNrYWdlIG9yIHdo ZW4gZGVidWdnaW5nIHRoaXMgcGFja2FnZS4KICVwcmVwCiAlc2V0dXAgLXEgLW4gZ2NjLSV7dmVy c2lvbn0tJXtEQVRFfQogJXBhdGNoMCAtcDAgLWIgLmhhY2t+Ci0lcGF0Y2gyIC1wMCAtYiAuYysr LWJ1aWx0aW4tcmVkZWNsfgotJXBhdGNoNCAtcDAgLWIgLmphdmEtbm9tdWx0aX4KLSVwYXRjaDUg LXAwIC1iIC5wcGMzMi1yZXRhZGRyfgotJXBhdGNoNiAtcDAgLWIgLnByMzM3NjN+Ci0lcGF0Y2g3 IC1wMCAtYiAucmgzMzA3NzF+Ci0lcGF0Y2g4IC1wMCAtYiAuaTM4Ni1saWJnb21wfgotJXBhdGNo OSAtcDAgLWIgLnNwYXJjLWNvbmZpZy1kZXRlY3Rpb25+Ci0lcGF0Y2gxMCAtcDAgLWIgLmxpYmdv bXAtb21wX2gtbXVsdGlsaWJ+Ci0lcGF0Y2gxMSAtcDAgLWIgLmxpYnRvb2wtbm8tcnBhdGh+Cisl cGF0Y2gxIC1wMCAtYiAuYysrLWJ1aWx0aW4tcmVkZWNsfgorJXBhdGNoMiAtcDAgLWIgLmphdmEt bm9tdWx0aX4KKyVwYXRjaDMgLXAwIC1iIC5wcGMzMi1yZXRhZGRyfgorJXBhdGNoNCAtcDAgLWIg LnByMzM3NjN+CislcGF0Y2g1IC1wMCAtYiAucmgzMzA3NzF+CislcGF0Y2g2IC1wMCAtYiAuaTM4 Ni1saWJnb21wfgorJXBhdGNoNyAtcDAgLWIgLnNwYXJjLWNvbmZpZy1kZXRlY3Rpb25+CislcGF0 Y2g4IC1wMCAtYiAubGliZ29tcC1vbXBfaC1tdWx0aWxpYn4KKyVwYXRjaDkgLXAwIC1iIC5saWJ0 b29sLW5vLXJwYXRofgogJWlmICV7YnVpbGRfY2xvb2d9Ci0lcGF0Y2gxMiAtcDAgLWIgLmNsb29n LWRsfgorJXBhdGNoMTAgLXAwIC1iIC5jbG9vZy1kbH4KICVlbmRpZgotJXBhdGNoMTQgLXAwIC1i IC5wcjM4NzU3fgorJXBhdGNoMTEgLXAwIC1iIC5wcjM4NzU3fgogJWlmICV7YnVpbGRfbGlic3Rk Y3h4X2RvY3N9Ci0lcGF0Y2gxNSAtcDAgLWIgLmxpYnN0ZGMrKy1kb2NzfgorJXBhdGNoMTIgLXAw IC1iIC5saWJzdGRjKystZG9jc34KICVlbmRpZgotJXBhdGNoMTcgLXAwIC1iIC5uby1hZGQtbmVl ZGVkfgorJXBhdGNoMTMgLXAwIC1iIC5uby1hZGQtbmVlZGVkfgogJWlmIDAlez9mZWRvcmF9IDwg MTUgfHwgMCV7P3JoZWx9IDwgNwotJXBhdGNoMTggLXAwIC1iIC5wcGwtMC4xMH4KKyVwYXRjaDE0 IC1wMCAtYiAucHBsLTAuMTB+CiAlZW5kaWYKLSVwYXRjaDE5IC1wMCAtYiAucHI0Nzg1OH4KLSVw YXRjaDIwIC1wMCAtYiAubGliamF2YS1wcmltcy1jdHlwZX4KKyVwYXRjaDE1IC1wMCAtYiAubGli aXRtLWZuby1leGNlcHRpb25zfgogCiAlaWYgMCV7P19lbmFibGVfZGVidWdfcGFja2FnZXN9CiBj YXQgPiBzcGxpdC1kZWJ1Z2luZm8uc2ggPDxcRU9GCkBAIC02NTMsNyArNjgwLDcgQEAgaWYgWyAt ZiAiJHtCVUlMRERJUn0iL2RlYnVnZmlsZXMubGlzdCBcCiAgID4gIiR7QlVJTERESVJ9Ii9kZWJ1 Z2ZpbGVzLWJhc2UubGlzdAogICBjZCAiJHtSUE1fQlVJTERfUk9PVH0iCiAgIGZvciBmIGluIGBm aW5kIHVzci9saWIvZGVidWcgLW5hbWUgXCouZGVidWcgXAotCSAgICB8IGVncmVwICdsaWJbMC05 XSovbGliKGdjY3xnb21wfHN0ZGMpJ2A7IGRvCisJICAgIHwgZWdyZXAgJ2xpYlswLTldKi9saWIo Z2NjfGdvbXB8c3RkY3xxdWFkbWF0aHxpdG0pJ2A7IGRvCiAgICAgZWNobyAiLyRmIiA+PiAiJHtC VUlMRERJUn0iL2RlYnVnZmlsZXMtYmFzZS5saXN0CiAgICAgaWYgWyAtZiAiJGYiIC1hICEgLUwg IiRmIiBdOyB0aGVuCiAgICAgICBjcCAtYSAiJGYiICIke0JVSUxERElSfSIvdGVzdC5kZWJ1ZwpA QCAtNjY0LDcgKzY5MSw3IEBAIGlmIFsgLWYgIiR7QlVJTERESVJ9Ii9kZWJ1Z2ZpbGVzLmxpc3Qg XAogICAgIGZpCiAgIGRvbmUKICAgZm9yIGYgaW4gYGZpbmQgdXNyL2xpYi9kZWJ1Zy8uYnVpbGQt aWQgLXR5cGUgbGA7IGRvCi0gICAgbHMgLWwgIiRmIiB8IGVncmVwIC1xIC0tICctPi4qbGliWzAt OV0qL2xpYihnY2N8Z29tcHxzdGRjKScgXAorICAgIGxzIC1sICIkZiIgfCBlZ3JlcCAtcSAtLSAn LT4uKmxpYlswLTldKi9saWIoZ2NjfGdvbXB8c3RkY3xxdWFkbWF0aHxpdG0pJyBcCiAgICAgICAm JiBlY2hvICIvJGYiID4+ICIke0JVSUxERElSfSIvZGVidWdmaWxlcy1iYXNlLmxpc3QKICAgZG9u ZQogICBncmVwIC12IC1mICIke0JVSUxERElSfSIvZGVidWdmaWxlcy1iYXNlLmxpc3QgXApAQCAt NzA1LDcgKzczMiw3IEBAIHRhciB4emYgJXtTT1VSQ0U0fQogdGFyIHhqZiAle1NPVVJDRTEwfQog JWVuZGlmCiAKLXNlZCAtaSAtZSAncy80XC42XC4zLzQuNi4yLycgZ2NjL0JBU0UtVkVSCitzZWQg LWkgLWUgJ3MvNFwuN1wuMC80LjcuMC8nIGdjYy9CQVNFLVZFUgogZWNobyAnUmVkIEhhdCAle3Zl cnNpb259LSV7Z2NjX3JlbGVhc2V9JyA+IGdjYy9ERVYtUEhBU0UKIAogJWlmIDAlez9mZWRvcmF9 ID49IDE2IHx8IDAlez9yaGVsfSA+PSA3CkBAIC04NTIsOCArODc5LDkgQEAgQ0M9IiRDQyIgQ0ZM QUdTPSIkT1BUX0ZMQUdTIiBDWFhGTEFHUz0iYGVjaG8gJE9QVF9GTEFHUyB8IHNlZCAncy8gLVdh bGwgLyAvZydgIiAKIAkuLi9jb25maWd1cmUgLS1wcmVmaXg9JXtfcHJlZml4fSAtLW1hbmRpcj0l e19tYW5kaXJ9IC0taW5mb2Rpcj0le19pbmZvZGlyfSBcCiAJLS13aXRoLWJ1Z3VybD1odHRwOi8v YnVnemlsbGEucmVkaGF0LmNvbS9idWd6aWxsYSAtLWVuYWJsZS1ib290c3RyYXAgXAogCS0tZW5h YmxlLXNoYXJlZCAtLWVuYWJsZS10aHJlYWRzPXBvc2l4IC0tZW5hYmxlLWNoZWNraW5nPXJlbGVh c2UgXAorCS0tZGlzYWJsZS1idWlsZC13aXRoLWN4eCAtLWRpc2FibGUtYnVpbGQtcG9zdHN0YWdl MS13aXRoLWN4eCBcCiAJLS13aXRoLXN5c3RlbS16bGliIC0tZW5hYmxlLV9fY3hhX2F0ZXhpdCAt LWRpc2FibGUtbGlidW53aW5kLWV4Y2VwdGlvbnMgXAotCS0tZW5hYmxlLWdudS11bmlxdWUtb2Jq ZWN0IC0tZW5hYmxlLWxpbmtlci1idWlsZC1pZCBcCisJLS1lbmFibGUtZ251LXVuaXF1ZS1vYmpl Y3QgLS1lbmFibGUtbGlua2VyLWJ1aWxkLWlkIC0td2l0aC1saW5rZXItaGFzaC1zdHlsZT1nbnUg XAogCS0tZW5hYmxlLWxhbmd1YWdlcz1jLGMrKyxvYmpjLG9iai1jKyssamF2YSxmb3J0cmFuJHtl bmFibGVsYWRhfSR7ZW5hYmxlbGdvfSxsdG8gXAogCS0tZW5hYmxlLXBsdWdpbiBcCiAlaWYgISV7 YnVpbGRfamF2YX0KQEAgLTkxNyw4ICs5NDUsOCBAQCBDQz0iJENDIiBDRkxBR1M9IiRPUFRfRkxB R1MiIENYWEZMQUdTPSJgZWNobyAkT1BUX0ZMQUdTIHwgc2VkICdzLyAtV2FsbCAvIC9nJ2AiIAog CS0tYnVpbGQ9JXtnY2NfdGFyZ2V0X3BsYXRmb3JtfQogJWVuZGlmCiAKLSNHQ0pGTEFHUz0iJE9Q VF9GTEFHUyIgbWFrZSAlez9fc21wX21mbGFnc30gQk9PVF9DRkxBR1M9IiRPUFRfRkxBR1MiIGJv b3RzdHJhcAotR0NKRkxBR1M9IiRPUFRfRkxBR1MiIG1ha2UgJXs/X3NtcF9tZmxhZ3N9IEJPT1Rf Q0ZMQUdTPSIkT1BUX0ZMQUdTIiBwcm9maWxlZGJvb3RzdHJhcAorR0NKRkxBR1M9IiRPUFRfRkxB R1MiIG1ha2UgJXs/X3NtcF9tZmxhZ3N9IEJPT1RfQ0ZMQUdTPSIkT1BUX0ZMQUdTIiBib290c3Ry YXAKKyNHQ0pGTEFHUz0iJE9QVF9GTEFHUyIgbWFrZSAlez9fc21wX21mbGFnc30gQk9PVF9DRkxB R1M9IiRPUFRfRkxBR1MiIHByb2ZpbGVkYm9vdHN0cmFwCiAKICMgTWFrZSBnZW5lcmF0ZWQgbWFu IHBhZ2VzIGV2ZW4gaWYgUG9kOjpNYW4gaXMgbm90IG5ldyBlbm91Z2gKIHBlcmwgLXBpIC1lICdz L2hlYWQzL2hlYWQyLycgLi4vY29udHJpYi90ZXhpMnBvZC5wbApAQCAtOTQwLDcgKzk2OCw3IEBA IGNkIC4uLy4uCiBjZCAuLgogbWtkaXIgLXAgcnBtLmRvYy9nZm9ydHJhbiBycG0uZG9jL29iamMK IG1rZGlyIC1wIHJwbS5kb2MvYm9laG0tZ2MgcnBtLmRvYy9mYXN0amFyIHJwbS5kb2MvbGliZmZp IHJwbS5kb2MvbGliamF2YQotbWtkaXIgLXAgcnBtLmRvYy9nbyBycG0uZG9jL2xpYmdvIHJwbS5k b2MvbGlicXVhZG1hdGgKK21rZGlyIC1wIHJwbS5kb2MvZ28gcnBtLmRvYy9saWJnbyBycG0uZG9j L2xpYnF1YWRtYXRoIHJwbS5kb2MvbGliaXRtCiBta2RpciAtcCBycG0uZG9jL2NoYW5nZWxvZ3Mv e2djYy9jcCxnY2MvamF2YSxnY2MvYWRhLGxpYnN0ZGMrKy12MyxsaWJvYmpjLGxpYm11ZGZsYXAs bGliZ29tcH0KIAogZm9yIGkgaW4ge2djYyxnY2MvY3AsZ2NjL2phdmEsZ2NjL2FkYSxsaWJzdGRj KystdjMsbGlib2JqYyxsaWJtdWRmbGFwLGxpYmdvbXB9L0NoYW5nZUxvZyo7IGRvCkBAIC05NzQs NiArMTAwMiwxMSBAQCBjcCAtcCBsaWJqYXZhL0xJQkdDSl9MSUNFTlNFIHJwbS5kb2MvbGliamF2 YS8KIAljcCAtcCAkaSAuLi9ycG0uZG9jL2xpYnF1YWRtYXRoLyRpLmxpYnF1YWRtYXRoCiBkb25l KQogJWVuZGlmCislaWYgJXtidWlsZF9saWJpdG19CisoY2QgbGliaXRtOyBmb3IgaSBpbiBDaGFu Z2VMb2cqOyBkbworCWNwIC1wICRpIC4uL3JwbS5kb2MvbGliaXRtLyRpLmxpYml0bQorZG9uZSkK KyVlbmRpZgogJWlmICV7YnVpbGRfZ299CiAoY2QgZ2NjL2dvOyBmb3IgaSBpbiBSRUFETUUqIENo YW5nZUxvZyo7IGRvCiAJY3AgLXAgJGkgLi4vLi4vcnBtLmRvYy9nby8kaQpAQCAtMTEyMyw2ICsx MTU2LDcgQEAgc2VkIC1pIC1lICdzL2xpYjogLyYlJXtzdGF0aWM6JSVlSmF2YSBwcm9ncmFtcyBj YW5ub3QgYmUgbGlua2VkIHN0YXRpY2FsbHl9LycgXAogJWVuZGlmCiAKIG12ICV7YnVpbGRyb290 fSV7X3ByZWZpeH0vbGliL2xpYmdmb3J0cmFuLnNwZWMgJEZVTExQQVRILworbXYgJXtidWlsZHJv b3R9JXtfcHJlZml4fS9saWIvbGliaXRtLnNwZWMgJEZVTExQQVRILwogCiBta2RpciAtcCAle2J1 aWxkcm9vdH0vJXtfbGlifQogbXYgLWYgJXtidWlsZHJvb3R9JXtfcHJlZml4fS8le19saWJ9L2xp YmdjY19zLnNvLjEgJXtidWlsZHJvb3R9LyV7X2xpYn0vbGliZ2NjX3MtJXtnY2NfdmVyc2lvbn0t JXtEQVRFfS5zby4xCkBAIC0xMjAwLDcgKzEyMzQsNyBAQCBwb3BkCiAKIHB1c2hkICRGVUxMUEFU SAogaWYgWyAiJXtfbGlifSIgPSAibGliIiBdOyB0aGVuCi1sbiAtc2YgLi4vLi4vLi4vbGlib2Jq Yy5zby4zIGxpYm9iamMuc28KK2xuIC1zZiAuLi8uLi8uLi9saWJvYmpjLnNvLjQgbGlib2JqYy5z bwogbG4gLXNmIC4uLy4uLy4uL2xpYnN0ZGMrKy5zby42LipbMC05XSBsaWJzdGRjKysuc28KIGxu IC1zZiAuLi8uLi8uLi9saWJnZm9ydHJhbi5zby4zLiogbGliZ2ZvcnRyYW4uc28KIGxuIC1zZiAu Li8uLi8uLi9saWJnb21wLnNvLjEuKiBsaWJnb21wLnNvCkBAIC0xMjEyLDEzICsxMjQ2LDE2IEBA IGxuIC1zZiAuLi8uLi8uLi9saWJnby5zby4wLiogbGliZ28uc28KICVpZiAle2J1aWxkX2xpYnF1 YWRtYXRofQogbG4gLXNmIC4uLy4uLy4uL2xpYnF1YWRtYXRoLnNvLjAuKiBsaWJxdWFkbWF0aC5z bwogJWVuZGlmCislaWYgJXtidWlsZF9saWJpdG19CitsbiAtc2YgLi4vLi4vLi4vbGliaXRtLnNv LjEuKiBsaWJpdG0uc28KKyVlbmRpZgogJWlmICV7YnVpbGRfamF2YX0KLWxuIC1zZiAuLi8uLi8u Li9saWJnY2ouc28uMTIuKiBsaWJnY2ouc28KLWxuIC1zZiAuLi8uLi8uLi9saWJnY2otdG9vbHMu c28uMTIuKiBsaWJnY2otdG9vbHMuc28KLWxuIC1zZiAuLi8uLi8uLi9saWJnaWouc28uMTIuKiBs aWJnaWouc28KK2xuIC1zZiAuLi8uLi8uLi9saWJnY2ouc28uMTMuKiBsaWJnY2ouc28KK2xuIC1z ZiAuLi8uLi8uLi9saWJnY2otdG9vbHMuc28uMTMuKiBsaWJnY2otdG9vbHMuc28KK2xuIC1zZiAu Li8uLi8uLi9saWJnaWouc28uMTMuKiBsaWJnaWouc28KICVlbmRpZgogZWxzZQotbG4gLXNmIC4u Ly4uLy4uLy4uLyV7X2xpYn0vbGlib2JqYy5zby4zIGxpYm9iamMuc28KK2xuIC1zZiAuLi8uLi8u Li8uLi8le19saWJ9L2xpYm9iamMuc28uNCBsaWJvYmpjLnNvCiBsbiAtc2YgLi4vLi4vLi4vLi4v JXtfbGlifS9saWJzdGRjKysuc28uNi4qWzAtOV0gbGlic3RkYysrLnNvCiBsbiAtc2YgLi4vLi4v Li4vLi4vJXtfbGlifS9saWJnZm9ydHJhbi5zby4zLiogbGliZ2ZvcnRyYW4uc28KIGxuIC1zZiAu Li8uLi8uLi8uLi8le19saWJ9L2xpYmdvbXAuc28uMS4qIGxpYmdvbXAuc28KQEAgLTEyMzAsMTAg KzEyNjcsMTMgQEAgbG4gLXNmIC4uLy4uLy4uLy4uLyV7X2xpYn0vbGliZ28uc28uMC4qIGxpYmdv LnNvCiAlaWYgJXtidWlsZF9saWJxdWFkbWF0aH0KIGxuIC1zZiAuLi8uLi8uLi8uLi8le19saWJ9 L2xpYnF1YWRtYXRoLnNvLjAuKiBsaWJxdWFkbWF0aC5zbwogJWVuZGlmCislaWYgJXtidWlsZF9s aWJpdG19CitsbiAtc2YgLi4vLi4vLi4vLi4vJXtfbGlifS9saWJpdG0uc28uMS4qIGxpYml0bS5z bworJWVuZGlmCiAlaWYgJXtidWlsZF9qYXZhfQotbG4gLXNmIC4uLy4uLy4uLy4uLyV7X2xpYn0v bGliZ2NqLnNvLjEyLiogbGliZ2NqLnNvCi1sbiAtc2YgLi4vLi4vLi4vLi4vJXtfbGlifS9saWJn Y2otdG9vbHMuc28uMTIuKiBsaWJnY2otdG9vbHMuc28KLWxuIC1zZiAuLi8uLi8uLi8uLi8le19s aWJ9L2xpYmdpai5zby4xMi4qIGxpYmdpai5zbworbG4gLXNmIC4uLy4uLy4uLy4uLyV7X2xpYn0v bGliZ2NqLnNvLjEzLiogbGliZ2NqLnNvCitsbiAtc2YgLi4vLi4vLi4vLi4vJXtfbGlifS9saWJn Y2otdG9vbHMuc28uMTMuKiBsaWJnY2otdG9vbHMuc28KK2xuIC1zZiAuLi8uLi8uLi8uLi8le19s aWJ9L2xpYmdpai5zby4xMy4qIGxpYmdpai5zbwogJWVuZGlmCiBmaQogJWlmICV7YnVpbGRfamF2 YX0KQEAgLTEyNDgsNiArMTI4OCw5IEBAIG12IC1mICV7YnVpbGRyb290fSV7X3ByZWZpeH0vJXtf bGlifS9saWJtdWRmbGFweyx0aH0uKmEgJEZVTExMUEFUSC8KICVpZiAle2J1aWxkX2xpYnF1YWRt YXRofQogbXYgLWYgJXtidWlsZHJvb3R9JXtfcHJlZml4fS8le19saWJ9L2xpYnF1YWRtYXRoLiph ICRGVUxMTFBBVEgvCiAlZW5kaWYKKyVpZiAle2J1aWxkX2xpYml0bX0KK212IC1mICV7YnVpbGRy b290fSV7X3ByZWZpeH0vJXtfbGlifS9saWJpdG0uKmEgJEZVTExMUEFUSC8KKyVlbmRpZgogJWlm ICV7YnVpbGRfZ299CiBtdiAtZiAle2J1aWxkcm9vdH0le19wcmVmaXh9LyV7X2xpYn0vbGliZ28u KmEgJEZVTExMUEFUSC8KIG12IC1mICV7YnVpbGRyb290fSV7X3ByZWZpeH0vJXtfbGlifS9saWJn b2JlZ2luLiphICRGVUxMTFBBVEgvCkBAIC0xMjY1LDM1ICsxMzA4LDM1IEBAIG12IC1mICRGVUxM UEFUSC9hZGF7aW5jbHVkZSxsaWJ9ICRGVUxMTFBBVEgvCiBwdXNoZCAkRlVMTExQQVRIL2FkYWxp YgogaWYgWyAiJXtfbGlifSIgPSAibGliIiBdOyB0aGVuCiBsbiAtc2YgLi4vLi4vLi4vLi4vLi4v bGliZ25hcmwtKi5zbyBsaWJnbmFybC5zbwotbG4gLXNmIC4uLy4uLy4uLy4uLy4uL2xpYmduYXJs LSouc28gbGliZ25hcmwtNC42LnNvCitsbiAtc2YgLi4vLi4vLi4vLi4vLi4vbGliZ25hcmwtKi5z byBsaWJnbmFybC00Ljcuc28KIGxuIC1zZiAuLi8uLi8uLi8uLi8uLi9saWJnbmF0LSouc28gbGli Z25hdC5zbwotbG4gLXNmIC4uLy4uLy4uLy4uLy4uL2xpYmduYXQtKi5zbyBsaWJnbmF0LTQuNi5z bworbG4gLXNmIC4uLy4uLy4uLy4uLy4uL2xpYmduYXQtKi5zbyBsaWJnbmF0LTQuNy5zbwogZWxz ZQogbG4gLXNmIC4uLy4uLy4uLy4uLy4uLy4uLyV7X2xpYn0vbGliZ25hcmwtKi5zbyBsaWJnbmFy bC5zbwotbG4gLXNmIC4uLy4uLy4uLy4uLy4uLy4uLyV7X2xpYn0vbGliZ25hcmwtKi5zbyBsaWJn bmFybC00LjYuc28KK2xuIC1zZiAuLi8uLi8uLi8uLi8uLi8uLi8le19saWJ9L2xpYmduYXJsLSou c28gbGliZ25hcmwtNC43LnNvCiBsbiAtc2YgLi4vLi4vLi4vLi4vLi4vLi4vJXtfbGlifS9saWJn bmF0LSouc28gbGliZ25hdC5zbwotbG4gLXNmIC4uLy4uLy4uLy4uLy4uLy4uLyV7X2xpYn0vbGli Z25hdC0qLnNvIGxpYmduYXQtNC42LnNvCitsbiAtc2YgLi4vLi4vLi4vLi4vLi4vLi4vJXtfbGli fS9saWJnbmF0LSouc28gbGliZ25hdC00Ljcuc28KIGZpCiBwb3BkCiBlbHNlCiBwdXNoZCAkRlVM TFBBVEgvYWRhbGliCiBpZiBbICIle19saWJ9IiA9ICJsaWIiIF07IHRoZW4KIGxuIC1zZiAuLi8u Li8uLi8uLi9saWJnbmFybC0qLnNvIGxpYmduYXJsLnNvCi1sbiAtc2YgLi4vLi4vLi4vLi4vbGli Z25hcmwtKi5zbyBsaWJnbmFybC00LjYuc28KK2xuIC1zZiAuLi8uLi8uLi8uLi9saWJnbmFybC0q LnNvIGxpYmduYXJsLTQuNy5zbwogbG4gLXNmIC4uLy4uLy4uLy4uL2xpYmduYXQtKi5zbyBsaWJn bmF0LnNvCi1sbiAtc2YgLi4vLi4vLi4vLi4vbGliZ25hdC0qLnNvIGxpYmduYXQtNC42LnNvCits biAtc2YgLi4vLi4vLi4vLi4vbGliZ25hdC0qLnNvIGxpYmduYXQtNC43LnNvCiBlbHNlCiBsbiAt c2YgLi4vLi4vLi4vLi4vLi4vJXtfbGlifS9saWJnbmFybC0qLnNvIGxpYmduYXJsLnNvCi1sbiAt c2YgLi4vLi4vLi4vLi4vLi4vJXtfbGlifS9saWJnbmFybC0qLnNvIGxpYmduYXJsLTQuNi5zbwor bG4gLXNmIC4uLy4uLy4uLy4uLy4uLyV7X2xpYn0vbGliZ25hcmwtKi5zbyBsaWJnbmFybC00Ljcu c28KIGxuIC1zZiAuLi8uLi8uLi8uLi8uLi8le19saWJ9L2xpYmduYXQtKi5zbyBsaWJnbmF0LnNv Ci1sbiAtc2YgLi4vLi4vLi4vLi4vLi4vJXtfbGlifS9saWJnbmF0LSouc28gbGliZ25hdC00LjYu c28KK2xuIC1zZiAuLi8uLi8uLi8uLi8uLi8le19saWJ9L2xpYmduYXQtKi5zbyBsaWJnbmF0LTQu Ny5zbwogZmkKIHBvcGQKIGZpCiAlZW5kaWYKIAogJWlmYXJjaCBzcGFyY3Y5IHBwYwotbG4gLXNm IC4uLy4uLy4uLy4uLy4uL2xpYjY0L2xpYm9iamMuc28uMyA2NC9saWJvYmpjLnNvCitsbiAtc2Yg Li4vLi4vLi4vLi4vLi4vbGliNjQvbGlib2JqYy5zby40IDY0L2xpYm9iamMuc28KIGxuIC1zZiAu Li9gZWNobyAuLi8uLi8uLi8uLi9saWIvbGlic3RkYysrLnNvLjYuKlswLTldIHwgc2VkIHN+L2xp Yi9+L2xpYjY0L35gIDY0L2xpYnN0ZGMrKy5zbwogbG4gLXNmIC4uL2BlY2hvIC4uLy4uLy4uLy4u L2xpYi9saWJnZm9ydHJhbi5zby4zLiogfCBzZWQgc34vbGliL34vbGliNjQvfmAgNjQvbGliZ2Zv cnRyYW4uc28KIGxuIC1zZiAuLi9gZWNobyAuLi8uLi8uLi8uLi9saWIvbGliZ29tcC5zby4xLiog fCBzZWQgc34vbGliL34vbGliNjQvfmAgNjQvbGliZ29tcC5zbwpAQCAtMTMxMiwxMCArMTM1NSwx NSBAQCBybSAtZiBsaWJxdWFkbWF0aC5zbwogZWNobyAnSU5QVVQgKCAle19wcmVmaXh9L2xpYi8n YGVjaG8gLi4vLi4vLi4vLi4vbGliL2xpYnF1YWRtYXRoLnNvLjAuKiB8IHNlZCAncyxeLipsaWJx LGxpYnEsJ2AnICknID4gbGlicXVhZG1hdGguc28KIGVjaG8gJ0lOUFVUICggJXtfcHJlZml4fS9s aWI2NC8nYGVjaG8gLi4vLi4vLi4vLi4vbGliL2xpYnF1YWRtYXRoLnNvLjAuKiB8IHNlZCAncyxe LipsaWJxLGxpYnEsJ2AnICknID4gNjQvbGlicXVhZG1hdGguc28KICVlbmRpZgorJWlmICV7YnVp bGRfbGliaXRtfQorcm0gLWYgbGliaXRtLnNvCitlY2hvICdJTlBVVCAoICV7X3ByZWZpeH0vbGli LydgZWNobyAuLi8uLi8uLi8uLi9saWIvbGliaXRtLnNvLjEuKiB8IHNlZCAncyxeLipsaWJpLGxp YmksJ2AnICknID4gbGliaXRtLnNvCitlY2hvICdJTlBVVCAoICV7X3ByZWZpeH0vbGliNjQvJ2Bl Y2hvIC4uLy4uLy4uLy4uL2xpYi9saWJpdG0uc28uMS4qIHwgc2VkICdzLF4uKmxpYmksbGliaSwn YCcgKScgPiA2NC9saWJpdG0uc28KKyVlbmRpZgogJWlmICV7YnVpbGRfamF2YX0KLWxuIC1zZiAu Li9gZWNobyAuLi8uLi8uLi8uLi9saWIvbGliZ2NqLnNvLjEyLiogfCBzZWQgc34vbGliL34vbGli NjQvfmAgNjQvbGliZ2NqLnNvCi1sbiAtc2YgLi4vYGVjaG8gLi4vLi4vLi4vLi4vbGliL2xpYmdj ai10b29scy5zby4xMi4qIHwgc2VkIHN+L2xpYi9+L2xpYjY0L35gIDY0L2xpYmdjai10b29scy5z bwotbG4gLXNmIC4uL2BlY2hvIC4uLy4uLy4uLy4uL2xpYi9saWJnaWouc28uMTIuKiB8IHNlZCBz fi9saWIvfi9saWI2NC9+YCA2NC9saWJnaWouc28KK2xuIC1zZiAuLi9gZWNobyAuLi8uLi8uLi8u Li9saWIvbGliZ2NqLnNvLjEzLiogfCBzZWQgc34vbGliL34vbGliNjQvfmAgNjQvbGliZ2NqLnNv CitsbiAtc2YgLi4vYGVjaG8gLi4vLi4vLi4vLi4vbGliL2xpYmdjai10b29scy5zby4xMy4qIHwg c2VkIHN+L2xpYi9+L2xpYjY0L35gIDY0L2xpYmdjai10b29scy5zbworbG4gLXNmIC4uL2BlY2hv IC4uLy4uLy4uLy4uL2xpYi9saWJnaWouc28uMTMuKiB8IHNlZCBzfi9saWIvfi9saWI2NC9+YCA2 NC9saWJnaWouc28KIGxuIC1zZiBsaWIzMi9saWJnY2pfYmMuc28gbGliZ2NqX2JjLnNvCiBsbiAt c2YgLi4vbGliNjQvbGliZ2NqX2JjLnNvIDY0L2xpYmdjal9iYy5zbwogJWVuZGlmCkBAIC0xMzM1 LDYgKzEzODMsMTAgQEAgbG4gLXNmIC4uL2xpYjY0L2xpYm11ZGZsYXB0aC5hIDY0L2xpYm11ZGZs YXB0aC5hCiBsbiAtc2YgbGliMzIvbGlicXVhZG1hdGguYSBsaWJxdWFkbWF0aC5hCiBsbiAtc2Yg Li4vbGliNjQvbGlicXVhZG1hdGguYSA2NC9saWJxdWFkbWF0aC5hCiAlZW5kaWYKKyVpZiAle2J1 aWxkX2xpYml0bX0KK2xuIC1zZiBsaWIzMi9saWJpdG0uYSBsaWJpdG0uYQorbG4gLXNmIC4uL2xp YjY0L2xpYml0bS5hIDY0L2xpYml0bS5hCislZW5kaWYKICVpZiAle2J1aWxkX2dvfQogbG4gLXNm IGxpYjMyL2xpYmdvLmEgbGliZ28uYQogbG4gLXNmIC4uL2xpYjY0L2xpYmdvLmEgNjQvbGliZ28u YQpAQCAtMTM1MCw3ICsxNDAyLDcgQEAgbG4gLXNmIC4uL2xpYjY0L2FkYWxpYiA2NC9hZGFsaWIK ICVlbmRpZgogJWlmYXJjaCAle211bHRpbGliXzY0X2FyY2hzfQogbWtkaXIgLXAgMzIKLWxuIC1z ZiAuLi8uLi8uLi8uLi9saWJvYmpjLnNvLjMgMzIvbGlib2JqYy5zbworbG4gLXNmIC4uLy4uLy4u Ly4uL2xpYm9iamMuc28uNCAzMi9saWJvYmpjLnNvCiBsbiAtc2YgLi4vYGVjaG8gLi4vLi4vLi4v Li4vbGliNjQvbGlic3RkYysrLnNvLjYuKlswLTldIHwgc2VkIHN+Ly4uL2xpYjY0L34vfmAgMzIv bGlic3RkYysrLnNvCiBsbiAtc2YgLi4vYGVjaG8gLi4vLi4vLi4vLi4vbGliNjQvbGliZ2ZvcnRy YW4uc28uMy4qIHwgc2VkIHN+Ly4uL2xpYjY0L34vfmAgMzIvbGliZ2ZvcnRyYW4uc28KIGxuIC1z ZiAuLi9gZWNobyAuLi8uLi8uLi8uLi9saWI2NC9saWJnb21wLnNvLjEuKiB8IHNlZCBzfi8uLi9s aWI2NC9+L35gIDMyL2xpYmdvbXAuc28KQEAgLTEzNjksMTAgKzE0MjEsMTUgQEAgcm0gLWYgbGli cXVhZG1hdGguc28KIGVjaG8gJ0lOUFVUICggJXtfcHJlZml4fS9saWI2NC8nYGVjaG8gLi4vLi4v Li4vLi4vbGliNjQvbGlicXVhZG1hdGguc28uMC4qIHwgc2VkICdzLF4uKmxpYnEsbGlicSwnYCcg KScgPiBsaWJxdWFkbWF0aC5zbwogZWNobyAnSU5QVVQgKCAle19wcmVmaXh9L2xpYi8nYGVjaG8g Li4vLi4vLi4vLi4vbGliNjQvbGlicXVhZG1hdGguc28uMC4qIHwgc2VkICdzLF4uKmxpYnEsbGli cSwnYCcgKScgPiAzMi9saWJxdWFkbWF0aC5zbwogJWVuZGlmCislaWYgJXtidWlsZF9saWJpdG19 CitybSAtZiBsaWJpdG0uc28KK2VjaG8gJ0lOUFVUICggJXtfcHJlZml4fS9saWI2NC8nYGVjaG8g Li4vLi4vLi4vLi4vbGliNjQvbGliaXRtLnNvLjEuKiB8IHNlZCAncyxeLipsaWJpLGxpYmksJ2An ICknID4gbGliaXRtLnNvCitlY2hvICdJTlBVVCAoICV7X3ByZWZpeH0vbGliLydgZWNobyAuLi8u Li8uLi8uLi9saWI2NC9saWJpdG0uc28uMS4qIHwgc2VkICdzLF4uKmxpYmksbGliaSwnYCcgKScg PiAzMi9saWJpdG0uc28KKyVlbmRpZgogJWlmICV7YnVpbGRfamF2YX0KLWxuIC1zZiAuLi9gZWNo byAuLi8uLi8uLi8uLi9saWI2NC9saWJnY2ouc28uMTIuKiB8IHNlZCBzfi8uLi9saWI2NC9+L35g IDMyL2xpYmdjai5zbwotbG4gLXNmIC4uL2BlY2hvIC4uLy4uLy4uLy4uL2xpYjY0L2xpYmdjai10 b29scy5zby4xMi4qIHwgc2VkIHN+Ly4uL2xpYjY0L34vfmAgMzIvbGliZ2NqLXRvb2xzLnNvCi1s biAtc2YgLi4vYGVjaG8gLi4vLi4vLi4vLi4vbGliNjQvbGliZ2lqLnNvLjEyLiogfCBzZWQgc34v Li4vbGliNjQvfi9+YCAzMi9saWJnaWouc28KK2xuIC1zZiAuLi9gZWNobyAuLi8uLi8uLi8uLi9s aWI2NC9saWJnY2ouc28uMTMuKiB8IHNlZCBzfi8uLi9saWI2NC9+L35gIDMyL2xpYmdjai5zbwor bG4gLXNmIC4uL2BlY2hvIC4uLy4uLy4uLy4uL2xpYjY0L2xpYmdjai10b29scy5zby4xMy4qIHwg c2VkIHN+Ly4uL2xpYjY0L34vfmAgMzIvbGliZ2NqLXRvb2xzLnNvCitsbiAtc2YgLi4vYGVjaG8g Li4vLi4vLi4vLi4vbGliNjQvbGliZ2lqLnNvLjEzLiogfCBzZWQgc34vLi4vbGliNjQvfi9+YCAz Mi9saWJnaWouc28KICVlbmRpZgogbXYgLWYgJXtidWlsZHJvb3R9JXtfcHJlZml4fS9saWIvbGli b2JqYy4qYSAzMi8KIG12IC1mICV7YnVpbGRyb290fSV7X3ByZWZpeH0vbGliL2xpYmdvbXAuKmEg MzIvCkBAIC0xMzkyLDYgKzE0NDksMTAgQEAgbG4gLXNmIGxpYjY0L2xpYm11ZGZsYXB0aC5hIGxp Ym11ZGZsYXB0aC5hCiBsbiAtc2YgLi4vbGliMzIvbGlicXVhZG1hdGguYSAzMi9saWJxdWFkbWF0 aC5hCiBsbiAtc2YgbGliNjQvbGlicXVhZG1hdGguYSBsaWJxdWFkbWF0aC5hCiAlZW5kaWYKKyVp ZiAle2J1aWxkX2xpYml0bX0KK2xuIC1zZiAuLi9saWIzMi9saWJpdG0uYSAzMi9saWJpdG0uYQor bG4gLXNmIGxpYjY0L2xpYml0bS5hIGxpYml0bS5hCislZW5kaWYKICVpZiAle2J1aWxkX2dvfQog bG4gLXNmIC4uL2xpYjMyL2xpYmdvLmEgMzIvbGliZ28uYQogbG4gLXNmIGxpYjY0L2xpYmdvLmEg bGliZ28uYQpAQCAtMTQxOCw2ICsxNDc5LDkgQEAgbG4gLXNmIC4uLy4uLy4uLyV7bXVsdGlsaWJf MzJfYXJjaH0tJXtfdmVuZG9yfS0le190YXJnZXRfb3N9LyV7Z2NjX3ZlcnNpb259L2xpYm0KICVp ZiAle2J1aWxkX2xpYnF1YWRtYXRofQogbG4gLXNmIC4uLy4uLy4uLyV7bXVsdGlsaWJfMzJfYXJj aH0tJXtfdmVuZG9yfS0le190YXJnZXRfb3N9LyV7Z2NjX3ZlcnNpb259L2xpYnF1YWRtYXRoLmEg MzIvbGlicXVhZG1hdGguYQogJWVuZGlmCislaWYgJXtidWlsZF9saWJpdG19CitsbiAtc2YgLi4v Li4vLi4vJXttdWx0aWxpYl8zMl9hcmNofS0le192ZW5kb3J9LSV7X3RhcmdldF9vc30vJXtnY2Nf dmVyc2lvbn0vbGliaXRtLmEgMzIvbGliaXRtLmEKKyVlbmRpZgogJWlmICV7YnVpbGRfZ299CiBs biAtc2YgLi4vLi4vLi4vJXttdWx0aWxpYl8zMl9hcmNofS0le192ZW5kb3J9LSV7X3RhcmdldF9v c30vJXtnY2NfdmVyc2lvbn0vbGliZ28uYSAzMi9saWJnby5hCiBsbiAtc2YgLi4vLi4vLi4vJXtt dWx0aWxpYl8zMl9hcmNofS0le192ZW5kb3J9LSV7X3RhcmdldF9vc30vJXtnY2NfdmVyc2lvbn0v bGliZ29iZWdpbi5hIDMyL2xpYmdvYmVnaW4uYQpAQCAtMTQzNiw3ICsxNTAwLDggQEAgbG4gLXNm IC4uLy4uLy4uLyV7bXVsdGlsaWJfMzJfYXJjaH0tJXtfdmVuZG9yfS0le190YXJnZXRfb3N9LyV7 Z2NjX3ZlcnNpb259L2FkYWwKIHN0cmlwIC1nIGBmaW5kIC4gXCggLW5hbWUgbGliZ2ZvcnRyYW4u YSAtbyAtbmFtZSBsaWJvYmpjLmEgLW8gLW5hbWUgbGliZ29tcC5hIFwKIAkJICAgIC1vIC1uYW1l IGxpYm11ZGZsYXAuYSAtbyAtbmFtZSBsaWJtdWRmbGFwdGguYSBcCiAJCSAgICAtbyAtbmFtZSBs aWJnY2MuYSAtbyAtbmFtZSBsaWJnY292LmEgLW8gLW5hbWUgbGlicXVhZG1hdGguYSBcCi0JCSAg ICAtbyAtbmFtZSBsaWJnby5hIFwpIC1hIC10eXBlIGZgCisJCSAgICAtbyAtbmFtZSBsaWJpdG0u YSAtbyAtbmFtZSBsaWJnby5hIC1vIC1uYW1lIGxpYmNhZlwqLmEgXCkgXAorCQkgLWEgLXR5cGUg ZmAKIHBvcGQKIGNobW9kIDc1NSAle2J1aWxkcm9vdH0le19wcmVmaXh9LyV7X2xpYn0vbGliZ2Zv cnRyYW4uc28uMy4qCiBjaG1vZCA3NTUgJXtidWlsZHJvb3R9JXtfcHJlZml4fS8le19saWJ9L2xp YmdvbXAuc28uMS4qCkBAIC0xNDQ0LDEwICsxNTA5LDEzIEBAIGNobW9kIDc1NSAle2J1aWxkcm9v dH0le19wcmVmaXh9LyV7X2xpYn0vbGlibXVkZmxhcHssdGh9LnNvLjAuKgogJWlmICV7YnVpbGRf bGlicXVhZG1hdGh9CiBjaG1vZCA3NTUgJXtidWlsZHJvb3R9JXtfcHJlZml4fS8le19saWJ9L2xp YnF1YWRtYXRoLnNvLjAuKgogJWVuZGlmCislaWYgJXtidWlsZF9saWJpdG19CitjaG1vZCA3NTUg JXtidWlsZHJvb3R9JXtfcHJlZml4fS8le19saWJ9L2xpYml0bS5zby4xLioKKyVlbmRpZgogJWlm ICV7YnVpbGRfZ299CiBjaG1vZCA3NTUgJXtidWlsZHJvb3R9JXtfcHJlZml4fS8le19saWJ9L2xp YmdvLnNvLjAuKgogJWVuZGlmCi1jaG1vZCA3NTUgJXtidWlsZHJvb3R9JXtfcHJlZml4fS8le19s aWJ9L2xpYm9iamMuc28uMy4qCitjaG1vZCA3NTUgJXtidWlsZHJvb3R9JXtfcHJlZml4fS8le19s aWJ9L2xpYm9iamMuc28uNC4qCiAKICVpZiAle2J1aWxkX2FkYX0KIGNobW9kIDc1NSAle2J1aWxk cm9vdH0le19wcmVmaXh9LyV7X2xpYn0vbGliZ25hcmwqc28qCkBAIC0xNTM4LDcgKzE2MDYsNyBA QCB0b3VjaCAle2J1aWxkcm9vdH0le19wcmVmaXh9LyV7X2xpYn0vZ2NqLSV7dmVyc2lvbn0vY2xh c3NtYXAuZGIKIHJtIC1mICV7YnVpbGRyb290fSV7bWFuZGlyfS9tYW4zL2ZmaSoKIAogIyBIZWxw IHBsdWdpbnMgZmluZCBvdXQgbnZyYS4KLWVjaG8gZ2NjLSV7dmVyc2lvbn0tJXtyZWxlYXNlfS4l e2FyY2h9ID4gJEZVTExQQVRIL3JwbXZlcgorZWNobyBnY2MtJXt2ZXJzaW9ufS0le3JlbGVhc2V9 LiV7X2FyY2h9ID4gJEZVTExQQVRIL3JwbXZlcgogCiAlY2hlY2sKIGNkIG9iai0le2djY190YXJn ZXRfcGxhdGZvcm19CkBAIC0xNzI2LDYgKzE3OTQsMjEgQEAgZmkKIAogJXBvc3R1biAtbiBsaWJx dWFkbWF0aCAtcCAvc2Jpbi9sZGNvbmZpZwogCislcG9zdCAtbiBsaWJpdG0KKy9zYmluL2xkY29u ZmlnCitpZiBbIC1mICV7X2luZm9kaXJ9L2xpYml0bS5pbmZvLmd6IF07IHRoZW4KKyAgL3NiaW4v aW5zdGFsbC1pbmZvIFwKKyAgICAtLWluZm8tZGlyPSV7X2luZm9kaXJ9ICV7X2luZm9kaXJ9L2xp Yml0bS5pbmZvLmd6IHx8IDoKK2ZpCisKKyVwcmV1biAtbiBsaWJpdG0KK2lmIFsgJDEgPSAwIC1h IC1mICV7X2luZm9kaXJ9L2xpYml0bS5pbmZvLmd6IF07IHRoZW4KKyAgL3NiaW4vaW5zdGFsbC1p bmZvIC0tZGVsZXRlIFwKKyAgICAtLWluZm8tZGlyPSV7X2luZm9kaXJ9ICV7X2luZm9kaXJ9L2xp Yml0bS5pbmZvLmd6IHx8IDoKK2ZpCisKKyVwb3N0dW4gLW4gbGliaXRtIC1wIC9zYmluL2xkY29u ZmlnCisKICVwb3N0IC1uIGxpYmdvIC1wIC9zYmluL2xkY29uZmlnCiAKICVwb3N0dW4gLW4gbGli Z28gLXAgL3NiaW4vbGRjb25maWcKQEAgLTE3NzQsNiArMTg1Nyw4IEBAIGZpCiAle19wcmVmaXh9 L2xpYi9nY2MvJXtnY2NfdGFyZ2V0X3BsYXRmb3JtfS8le2djY192ZXJzaW9ufS9pbmNsdWRlL29t cC5oCiAle19wcmVmaXh9L2xpYi9nY2MvJXtnY2NfdGFyZ2V0X3BsYXRmb3JtfS8le2djY192ZXJz aW9ufS9pbmNsdWRlL3N0ZGludC5oCiAle19wcmVmaXh9L2xpYi9nY2MvJXtnY2NfdGFyZ2V0X3Bs YXRmb3JtfS8le2djY192ZXJzaW9ufS9pbmNsdWRlL3N0ZGludC1nY2MuaAorJXtfcHJlZml4fS9s aWIvZ2NjLyV7Z2NjX3RhcmdldF9wbGF0Zm9ybX0vJXtnY2NfdmVyc2lvbn0vaW5jbHVkZS9zdGRh bGlnbi5oCisle19wcmVmaXh9L2xpYi9nY2MvJXtnY2NfdGFyZ2V0X3BsYXRmb3JtfS8le2djY192 ZXJzaW9ufS9pbmNsdWRlL3N0ZG5vcmV0dXJuLmgKICVpZmFyY2ggJXtpeDg2fSB4ODZfNjQKICV7 X3ByZWZpeH0vbGliL2djYy8le2djY190YXJnZXRfcGxhdGZvcm19LyV7Z2NjX3ZlcnNpb259L2lu Y2x1ZGUvbW1pbnRyaW4uaAogJXtfcHJlZml4fS9saWIvZ2NjLyV7Z2NjX3RhcmdldF9wbGF0Zm9y bX0vJXtnY2NfdmVyc2lvbn0vaW5jbHVkZS94bW1pbnRyaW4uaApAQCAtMTc5MSwxMSArMTg3Niwx NSBAQCBmaQogJXtfcHJlZml4fS9saWIvZ2NjLyV7Z2NjX3RhcmdldF9wbGF0Zm9ybX0vJXtnY2Nf dmVyc2lvbn0vaW5jbHVkZS9mbWE0aW50cmluLmgKICV7X3ByZWZpeH0vbGliL2djYy8le2djY190 YXJnZXRfcGxhdGZvcm19LyV7Z2NjX3ZlcnNpb259L2luY2x1ZGUveG9waW50cmluLmgKICV7X3By ZWZpeH0vbGliL2djYy8le2djY190YXJnZXRfcGxhdGZvcm19LyV7Z2NjX3ZlcnNpb259L2luY2x1 ZGUvbHdwaW50cmluLmgKLSV7X3ByZWZpeH0vbGliL2djYy8le2djY190YXJnZXRfcGxhdGZvcm19 LyV7Z2NjX3ZlcnNpb259L2luY2x1ZGUvYWJtaW50cmluLmgKICV7X3ByZWZpeH0vbGliL2djYy8l e2djY190YXJnZXRfcGxhdGZvcm19LyV7Z2NjX3ZlcnNpb259L2luY2x1ZGUvcG9wY250aW50cmlu LmgKICV7X3ByZWZpeH0vbGliL2djYy8le2djY190YXJnZXRfcGxhdGZvcm19LyV7Z2NjX3ZlcnNp b259L2luY2x1ZGUvYm1paW50cmluLmgKICV7X3ByZWZpeH0vbGliL2djYy8le2djY190YXJnZXRf cGxhdGZvcm19LyV7Z2NjX3ZlcnNpb259L2luY2x1ZGUvdGJtaW50cmluLmgKICV7X3ByZWZpeH0v bGliL2djYy8le2djY190YXJnZXRfcGxhdGZvcm19LyV7Z2NjX3ZlcnNpb259L2luY2x1ZGUvaWEz MmludHJpbi5oCisle19wcmVmaXh9L2xpYi9nY2MvJXtnY2NfdGFyZ2V0X3BsYXRmb3JtfS8le2dj Y192ZXJzaW9ufS9pbmNsdWRlL2F2eDJpbnRyaW4uaAorJXtfcHJlZml4fS9saWIvZ2NjLyV7Z2Nj X3RhcmdldF9wbGF0Zm9ybX0vJXtnY2NfdmVyc2lvbn0vaW5jbHVkZS9ibWkyaW50cmluLmgKKyV7 X3ByZWZpeH0vbGliL2djYy8le2djY190YXJnZXRfcGxhdGZvcm19LyV7Z2NjX3ZlcnNpb259L2lu Y2x1ZGUvZjE2Y2ludHJpbi5oCisle19wcmVmaXh9L2xpYi9nY2MvJXtnY2NfdGFyZ2V0X3BsYXRm b3JtfS8le2djY192ZXJzaW9ufS9pbmNsdWRlL2ZtYWludHJpbi5oCisle19wcmVmaXh9L2xpYi9n Y2MvJXtnY2NfdGFyZ2V0X3BsYXRmb3JtfS8le2djY192ZXJzaW9ufS9pbmNsdWRlL2x6Y250aW50 cmluLmgKICV7X3ByZWZpeH0vbGliL2djYy8le2djY190YXJnZXRfcGxhdGZvcm19LyV7Z2NjX3Zl cnNpb259L2luY2x1ZGUvbW1fbWFsbG9jLmgKICV7X3ByZWZpeH0vbGliL2djYy8le2djY190YXJn ZXRfcGxhdGZvcm19LyV7Z2NjX3ZlcnNpb259L2luY2x1ZGUvbW0zZG5vdy5oCiAle19wcmVmaXh9 L2xpYi9nY2MvJXtnY2NfdGFyZ2V0X3BsYXRmb3JtfS8le2djY192ZXJzaW9ufS9pbmNsdWRlL2Nw dWlkLmgKQEAgLTE4MjMsNiArMTkxMiw3IEBAIGZpCiAle19wcmVmaXh9L2xpYi9nY2MvJXtnY2Nf dGFyZ2V0X3BsYXRmb3JtfS8le2djY192ZXJzaW9ufS9saWJnb21wLnNwZWMKICV7X3ByZWZpeH0v bGliL2djYy8le2djY190YXJnZXRfcGxhdGZvcm19LyV7Z2NjX3ZlcnNpb259L2xpYmdvbXAuYQog JXtfcHJlZml4fS9saWIvZ2NjLyV7Z2NjX3RhcmdldF9wbGF0Zm9ybX0vJXtnY2NfdmVyc2lvbn0v bGliZ29tcC5zbworJXtfcHJlZml4fS9saWIvZ2NjLyV7Z2NjX3RhcmdldF9wbGF0Zm9ybX0vJXtn Y2NfdmVyc2lvbn0vbGliaXRtLnNwZWMKICVpZmFyY2ggc3BhcmN2OSBwcGMKICVkaXIgJXtfcHJl Zml4fS9saWIvZ2NjLyV7Z2NjX3RhcmdldF9wbGF0Zm9ybX0vJXtnY2NfdmVyc2lvbn0vNjQKICV7 X3ByZWZpeH0vbGliL2djYy8le2djY190YXJnZXRfcGxhdGZvcm19LyV7Z2NjX3ZlcnNpb259LzY0 L2NydCoubwpAQCAtMTg0MCw2ICsxOTMwLDEwIEBAIGZpCiAle19wcmVmaXh9L2xpYi9nY2MvJXtn Y2NfdGFyZ2V0X3BsYXRmb3JtfS8le2djY192ZXJzaW9ufS82NC9saWJxdWFkbWF0aC5hCiAle19w cmVmaXh9L2xpYi9nY2MvJXtnY2NfdGFyZ2V0X3BsYXRmb3JtfS8le2djY192ZXJzaW9ufS82NC9s aWJxdWFkbWF0aC5zbwogJWVuZGlmCislaWYgJXtidWlsZF9saWJpdG19Cisle19wcmVmaXh9L2xp Yi9nY2MvJXtnY2NfdGFyZ2V0X3BsYXRmb3JtfS8le2djY192ZXJzaW9ufS82NC9saWJpdG0uYQor JXtfcHJlZml4fS9saWIvZ2NjLyV7Z2NjX3RhcmdldF9wbGF0Zm9ybX0vJXtnY2NfdmVyc2lvbn0v NjQvbGliaXRtLnNvCislZW5kaWYKICVlbmRpZgogJWlmYXJjaCAle211bHRpbGliXzY0X2FyY2hz fQogJWRpciAle19wcmVmaXh9L2xpYi9nY2MvJXtnY2NfdGFyZ2V0X3BsYXRmb3JtfS8le2djY192 ZXJzaW9ufS8zMgpAQCAtMTg1OCw2ICsxOTUyLDEwIEBAIGZpCiAle19wcmVmaXh9L2xpYi9nY2Mv JXtnY2NfdGFyZ2V0X3BsYXRmb3JtfS8le2djY192ZXJzaW9ufS8zMi9saWJxdWFkbWF0aC5hCiAl e19wcmVmaXh9L2xpYi9nY2MvJXtnY2NfdGFyZ2V0X3BsYXRmb3JtfS8le2djY192ZXJzaW9ufS8z Mi9saWJxdWFkbWF0aC5zbwogJWVuZGlmCislaWYgJXtidWlsZF9saWJpdG19Cisle19wcmVmaXh9 L2xpYi9nY2MvJXtnY2NfdGFyZ2V0X3BsYXRmb3JtfS8le2djY192ZXJzaW9ufS8zMi9saWJpdG0u YQorJXtfcHJlZml4fS9saWIvZ2NjLyV7Z2NjX3RhcmdldF9wbGF0Zm9ybX0vJXtnY2NfdmVyc2lv bn0vMzIvbGliaXRtLnNvCislZW5kaWYKICVlbmRpZgogJWlmYXJjaCBzcGFyY3Y5IHNwYXJjNjQg cHBjIHBwYzY0CiAle19wcmVmaXh9L2xpYi9nY2MvJXtnY2NfdGFyZ2V0X3BsYXRmb3JtfS8le2dj Y192ZXJzaW9ufS9saWJtdWRmbGFwLmEKQEAgLTE4NjgsNiArMTk2NiwxMCBAQCBmaQogJXtfcHJl Zml4fS9saWIvZ2NjLyV7Z2NjX3RhcmdldF9wbGF0Zm9ybX0vJXtnY2NfdmVyc2lvbn0vbGlicXVh ZG1hdGguYQogJXtfcHJlZml4fS9saWIvZ2NjLyV7Z2NjX3RhcmdldF9wbGF0Zm9ybX0vJXtnY2Nf dmVyc2lvbn0vbGlicXVhZG1hdGguc28KICVlbmRpZgorJWlmICV7YnVpbGRfbGliaXRtfQorJXtf cHJlZml4fS9saWIvZ2NjLyV7Z2NjX3RhcmdldF9wbGF0Zm9ybX0vJXtnY2NfdmVyc2lvbn0vbGli aXRtLmEKKyV7X3ByZWZpeH0vbGliL2djYy8le2djY190YXJnZXRfcGxhdGZvcm19LyV7Z2NjX3Zl cnNpb259L2xpYml0bS5zbworJWVuZGlmCiAlZW5kaWYKICVkaXIgJXtfcHJlZml4fS9saWJleGVj L2dldGNvbmYKICV7X3ByZWZpeH0vbGliZXhlYy9nZXRjb25mL2RlZmF1bHQKQEAgLTIwMTMsNyAr MjExNSw3IEBAIGZpCiAKICVmaWxlcyAtbiBsaWJvYmpjCiAlZGVmYXR0cigtLHJvb3Qscm9vdCwt KQotJXtfcHJlZml4fS8le19saWJ9L2xpYm9iamMuc28uMyoKKyV7X3ByZWZpeH0vJXtfbGlifS9s aWJvYmpjLnNvLjQqCiAKICVmaWxlcyBnZm9ydHJhbgogJWRlZmF0dHIoLSxyb290LHJvb3QsLSkK QEAgLTIwMzUsNiArMjEzNyw3IEBAIGZpCiAle19wcmVmaXh9L2xpYmV4ZWMvZ2NjLyV7Z2NjX3Rh cmdldF9wbGF0Zm9ybX0vJXtnY2NfdmVyc2lvbn0vZjk1MQogJXtfcHJlZml4fS9saWIvZ2NjLyV7 Z2NjX3RhcmdldF9wbGF0Zm9ybX0vJXtnY2NfdmVyc2lvbn0vbGliZ2ZvcnRyYW4uc3BlYwogJXtf cHJlZml4fS9saWIvZ2NjLyV7Z2NjX3RhcmdldF9wbGF0Zm9ybX0vJXtnY2NfdmVyc2lvbn0vbGli Z2ZvcnRyYW5iZWdpbi5hCisle19wcmVmaXh9L2xpYi9nY2MvJXtnY2NfdGFyZ2V0X3BsYXRmb3Jt fS8le2djY192ZXJzaW9ufS9saWJjYWZfc2luZ2xlLmEKICVpZmFyY2ggc3BhcmN2OSBzcGFyYzY0 IHBwYyBwcGM2NAogJXtfcHJlZml4fS9saWIvZ2NjLyV7Z2NjX3RhcmdldF9wbGF0Zm9ybX0vJXtn Y2NfdmVyc2lvbn0vbGliZ2ZvcnRyYW4uYQogJWVuZGlmCkBAIC0yMDQyLDEyICsyMTQ1LDE0IEBA IGZpCiAlaWZhcmNoIHNwYXJjdjkgcHBjCiAlZGlyICV7X3ByZWZpeH0vbGliL2djYy8le2djY190 YXJnZXRfcGxhdGZvcm19LyV7Z2NjX3ZlcnNpb259LzY0CiAle19wcmVmaXh9L2xpYi9nY2MvJXtn Y2NfdGFyZ2V0X3BsYXRmb3JtfS8le2djY192ZXJzaW9ufS82NC9saWJnZm9ydHJhbmJlZ2luLmEK KyV7X3ByZWZpeH0vbGliL2djYy8le2djY190YXJnZXRfcGxhdGZvcm19LyV7Z2NjX3ZlcnNpb259 LzY0L2xpYmNhZl9zaW5nbGUuYQogJXtfcHJlZml4fS9saWIvZ2NjLyV7Z2NjX3RhcmdldF9wbGF0 Zm9ybX0vJXtnY2NfdmVyc2lvbn0vNjQvbGliZ2ZvcnRyYW4uYQogJXtfcHJlZml4fS9saWIvZ2Nj LyV7Z2NjX3RhcmdldF9wbGF0Zm9ybX0vJXtnY2NfdmVyc2lvbn0vNjQvbGliZ2ZvcnRyYW4uc28K ICVlbmRpZgogJWlmYXJjaCAle211bHRpbGliXzY0X2FyY2hzfQogJWRpciAle19wcmVmaXh9L2xp Yi9nY2MvJXtnY2NfdGFyZ2V0X3BsYXRmb3JtfS8le2djY192ZXJzaW9ufS8zMgogJXtfcHJlZml4 fS9saWIvZ2NjLyV7Z2NjX3RhcmdldF9wbGF0Zm9ybX0vJXtnY2NfdmVyc2lvbn0vMzIvbGliZ2Zv cnRyYW5iZWdpbi5hCisle19wcmVmaXh9L2xpYi9nY2MvJXtnY2NfdGFyZ2V0X3BsYXRmb3JtfS8l e2djY192ZXJzaW9ufS8zMi9saWJjYWZfc2luZ2xlLmEKICV7X3ByZWZpeH0vbGliL2djYy8le2dj Y190YXJnZXRfcGxhdGZvcm19LyV7Z2NjX3ZlcnNpb259LzMyL2xpYmdmb3J0cmFuLmEKICV7X3By ZWZpeH0vbGliL2djYy8le2djY190YXJnZXRfcGxhdGZvcm19LyV7Z2NjX3ZlcnNpb259LzMyL2xp Ymdmb3J0cmFuLnNvCiAlZW5kaWYKQEAgLTIzNzYsNiArMjQ4MSw0MyBAQCBmaQogJWVuZGlmCiAl ZW5kaWYKIAorJWlmICV7YnVpbGRfbGliaXRtfQorJWZpbGVzIC1uIGxpYml0bQorJWRlZmF0dHIo LSxyb290LHJvb3QsLSkKKyV7X3ByZWZpeH0vJXtfbGlifS9saWJpdG0uc28uMSoKKyV7X2luZm9k aXJ9L2xpYml0bS5pbmZvKgorCislZmlsZXMgLW4gbGliaXRtLWRldmVsCislZGVmYXR0cigtLHJv b3Qscm9vdCwtKQorJWRpciAle19wcmVmaXh9L2xpYi9nY2MKKyVkaXIgJXtfcHJlZml4fS9saWIv Z2NjLyV7Z2NjX3RhcmdldF9wbGF0Zm9ybX0KKyVkaXIgJXtfcHJlZml4fS9saWIvZ2NjLyV7Z2Nj X3RhcmdldF9wbGF0Zm9ybX0vJXtnY2NfdmVyc2lvbn0KKyVkaXIgJXtfcHJlZml4fS9saWIvZ2Nj LyV7Z2NjX3RhcmdldF9wbGF0Zm9ybX0vJXtnY2NfdmVyc2lvbn0vaW5jbHVkZQorIyV7X3ByZWZp eH0vbGliL2djYy8le2djY190YXJnZXRfcGxhdGZvcm19LyV7Z2NjX3ZlcnNpb259L2luY2x1ZGUv aXRtLmgKKyMle19wcmVmaXh9L2xpYi9nY2MvJXtnY2NfdGFyZ2V0X3BsYXRmb3JtfS8le2djY192 ZXJzaW9ufS9pbmNsdWRlL2l0bV93ZWFrLmgKKyVpZm5hcmNoIHNwYXJjdjkgc3BhcmM2NCBwcGMg cHBjNjQKKyV7X3ByZWZpeH0vbGliL2djYy8le2djY190YXJnZXRfcGxhdGZvcm19LyV7Z2NjX3Zl cnNpb259L2xpYml0bS5zbworJWVuZGlmCislZG9jIHJwbS5kb2MvbGliaXRtL0NoYW5nZUxvZyoK KworJWZpbGVzIC1uIGxpYml0bS1zdGF0aWMKKyVkZWZhdHRyKC0scm9vdCxyb290LC0pCislZGly ICV7X3ByZWZpeH0vbGliL2djYworJWRpciAle19wcmVmaXh9L2xpYi9nY2MvJXtnY2NfdGFyZ2V0 X3BsYXRmb3JtfQorJWRpciAle19wcmVmaXh9L2xpYi9nY2MvJXtnY2NfdGFyZ2V0X3BsYXRmb3Jt fS8le2djY192ZXJzaW9ufQorJWlmYXJjaCBzcGFyY3Y5IHBwYworJWRpciAle19wcmVmaXh9L2xp Yi9nY2MvJXtnY2NfdGFyZ2V0X3BsYXRmb3JtfS8le2djY192ZXJzaW9ufS9saWIzMgorJXtfcHJl Zml4fS9saWIvZ2NjLyV7Z2NjX3RhcmdldF9wbGF0Zm9ybX0vJXtnY2NfdmVyc2lvbn0vbGliMzIv bGliaXRtLmEKKyVlbmRpZgorJWlmYXJjaCBzcGFyYzY0IHBwYzY0CislZGlyICV7X3ByZWZpeH0v bGliL2djYy8le2djY190YXJnZXRfcGxhdGZvcm19LyV7Z2NjX3ZlcnNpb259L2xpYjY0Cisle19w cmVmaXh9L2xpYi9nY2MvJXtnY2NfdGFyZ2V0X3BsYXRmb3JtfS8le2djY192ZXJzaW9ufS9saWI2 NC9saWJpdG0uYQorJWVuZGlmCislaWZuYXJjaCBzcGFyY3Y5IHNwYXJjNjQgcHBjIHBwYzY0Cisl e19wcmVmaXh9L2xpYi9nY2MvJXtnY2NfdGFyZ2V0X3BsYXRmb3JtfS8le2djY192ZXJzaW9ufS9s aWJpdG0uYQorJWVuZGlmCislZW5kaWYKKwogJWlmICV7YnVpbGRfZ299CiAlZmlsZXMgZ28KICVk ZWZhdHRyKC0scm9vdCxyb290LC0pCkBAIC0yNDY2LDUyNyArMjYwOCwzMCBAQCBmaQogJWRpciAl e19wcmVmaXh9L2xpYi9nY2MvJXtnY2NfdGFyZ2V0X3BsYXRmb3JtfQogJWRpciAle19wcmVmaXh9 L2xpYi9nY2MvJXtnY2NfdGFyZ2V0X3BsYXRmb3JtfS8le2djY192ZXJzaW9ufQogJXtfcHJlZml4 fS9saWIvZ2NjLyV7Z2NjX3RhcmdldF9wbGF0Zm9ybX0vJXtnY2NfdmVyc2lvbn0vcGx1Z2luCisl ZGlyICV7X3ByZWZpeH0vbGliZXhlYy9nY2MKKyVkaXIgJXtfcHJlZml4fS9saWJleGVjL2djYy8l e2djY190YXJnZXRfcGxhdGZvcm19CislZGlyICV7X3ByZWZpeH0vbGliZXhlYy9nY2MvJXtnY2Nf dGFyZ2V0X3BsYXRmb3JtfS8le2djY192ZXJzaW9ufQorJXtfcHJlZml4fS9saWJleGVjL2djYy8l e2djY190YXJnZXRfcGxhdGZvcm19LyV7Z2NjX3ZlcnNpb259L3BsdWdpbgogCiAlY2hhbmdlbG9n Ci0qIE1vbiBPY3QgMzEgMjAxMSBSZXggRGlldGVyIDxyZGlldGVyQGZlZG9yYXByb2plY3Qub3Jn PiA0LjYuMi0xLmZjMTcuMQotLSByZWJ1aWxkIChnbXApCi0KLSogVGh1IE9jdCAyNyAyMDExIEph a3ViIEplbGluZWsgPGpha3ViQHJlZGhhdC5jb20+IDQuNi4yLTEKLS0gdXBkYXRlIGZyb20gdGhl IDQuNiBicmFuY2gKLSAgLSBHQ0MgNC42LjIgcmVsZWFzZQotICAtIFBScyBjKysvNDQ0NzMsIGMr Ky80OTIxNiwgYysrLzQ5ODU1LCBjKysvNDk4OTYsIGMrKy81MDUzMSwgYysrLzUwNjExLAotCWMr Ky81MDYxOCwgYysrLzUwNzg3LCBjKysvNTA3OTMsIGMvNTA1NjUsIGRlYnVnLzUwODE2LCBmb3J0 cmFuLzQ3MDIzLAotCWZvcnRyYW4vNDg3MDYsIGZvcnRyYW4vNTAwMTYsIGZvcnRyYW4vNTAyNzMs IGZvcnRyYW4vNTA1NzAsCi0JZm9ydHJhbi81MDU4NSwgZm9ydHJhbi81MDYyNSwgZm9ydHJhbi81 MDY1OSwgZm9ydHJhbi81MDcxOCwKLQlsaWJvYmpjLzQ5ODgzLCBsaWJvYmpjLzUwMDAyLCBsaWJz dGRjKysvNDg2OTgsIG1pZGRsZS1lbmQvNDk4MDEsCi0JbWlkZGxlLWVuZC81MDMyNiwgbWlkZGxl LWVuZC81MDM4Niwgb2JqLWMrKy80ODI3NSwgb2JqYy0rKy80ODI3NSwKLQl0YXJnZXQvNDkwNDks IHRhcmdldC80OTgyNCwgdGFyZ2V0LzQ5OTY1LCB0YXJnZXQvNDk5NjcsIHRhcmdldC81MDEwNiwK LQl0YXJnZXQvNTAzNTAsIHRhcmdldC81MDY1MiwgdGFyZ2V0LzUwNzM3LCB0YXJnZXQvNTA3ODgs IHRhcmdldC81MDgyMCwKLQl0cmVlLW9wdGltaXphdGlvbi80OTI3OSwgdHJlZS1vcHRpbWl6YXRp b24vNTAxODksCi0JdHJlZS1vcHRpbWl6YXRpb24vNTA3MDAsIHRyZWUtb3B0aW1pemF0aW9uLzUw NzEyLAotCXRyZWUtb3B0aW1pemF0aW9uLzUwNzIzCi0tIGFkZCBhcm12N2hsIGNvbmZpZ3VyeSBv cHRpb25zICgjNzQ2ODQzKQotLSBhZGQgYGdjYyAtcHJpbnQtZmlsZS1uYW1lPXJwbXZlcmAgZmls ZSB3aXRoIGdjYyBOVlJBIGZvciBwbHVnaW5zCi0gICgjNzQ0OTIyKQotLSBmaXggYnVpbGQgYWdh aW5zdCBjdXJyZW50IGdsaWJjLCBjdHlwZS5oIGNoYW5nZXMgYnJva2UgbGliamF2YSBjb21waWxh dGlvbgotCi0qIE1vbiBPY3QgIDIgMjAxMSBKYWt1YiBKZWxpbmVrIDxqYWt1YkByZWRoYXQuY29t PiA0LjYuMS0xMAotLSB1cGRhdGUgZnJvbSB0aGUgNC42IGJyYW5jaAotICAtIFBScyBjKysvMjAw MzksIGMrKy80MDgzMSwgYysrLzQyODQ0LCBjKysvNDYxMDUsIGMrKy80ODMyMCwgYysrLzUwNDI0 LAotCWMrKy81MDQ0MiwgYysrLzUwNDkxLCBjKysvNTA1MDgsIGlubGluZS1hc20vNTA1NzEsIGxp YnN0ZGMrKy80OTU1OSwKLQlsaWJzdGRjKysvNTA1MDksIGxpYnN0ZGMrKy81MDUxMCwgbGlic3Rk YysrLzUwNTI5LCBtaWRkbGUtZW5kLzQ5ODg2LAotCXRhcmdldC81MDA5MSwgdGFyZ2V0LzUwMzQx LCB0YXJnZXQvNTA0NjQsIHRlc3RzdWl0ZS81MDQ4NywKLQl0cmVlLW9wdGltaXphdGlvbi80OTUx OCwgdHJlZS1vcHRpbWl6YXRpb24vNDk2MjgsCi0JdHJlZS1vcHRpbWl6YXRpb24vNDk5MTEsIHRy ZWUtb3B0aW1pemF0aW9uLzUwMTYyLAotCXRyZWUtb3B0aW1pemF0aW9uLzUwNDEyLCB0cmVlLW9w dGltaXphdGlvbi81MDQxMywKLQl0cmVlLW9wdGltaXphdGlvbi81MDQ3MgotLSByZWNvZ25pemUg SVZzIHdpdGggUkVGRVJFTkNFX1RZUEUgaW4gc2ltcGxlX2l2IHNpbWlsYXJseSB0bwotICBJVnMg d2l0aCBQT0lOVEVSX1RZUEUgKCM1Mjg1NzgpCi0tIHJldHVybiBsYXJnZXIgdHlwZXMgZm9yIG9k ZC1zaXplZCBwcmVjaXNpb24gaW4gRm9ydHJhbiB0eXBlX2Zvcl9zaXplCi0gIGxhbmdob29rIGlm IHBvc3NpYmxlCi0KLSogVGh1IFNlcCAgOCAyMDExIEpha3ViIEplbGluZWsgPGpha3ViQHJlZGhh dC5jb20+IDQuNi4xLTkKLS0gdXBkYXRlIGZyb20gdGhlIDQuNiBicmFuY2gKLSAgLSBQUnMgYysr LzQ5MjY3LCBjKysvNTAwODksIGMrKy81MDE1NywgYysrLzUwMjA3LCBjKysvNTAyMjAsIGMrKy81 MDIyNCwKLQljKysvNTAyMzQsIGMrKy81MDI1NSwgYysrLzUwMzA5LCBjLzUwMTc5LCBmb3J0cmFu LzUwMTYzLAotCWxpYmZmaS80OTU5NCwgbGliZm9ydHJhbi81MDE5MiwgbGlic3RkYysrLzUwMjY4 LCBtaWRkbGUtZW5kLzUwMTE2LAotCW1pZGRsZS1lbmQvNTAyNjYsIHRhcmdldC81MDA5MCwgdGFy Z2V0LzUwMjAyLCB0YXJnZXQvNTAyODksCi0JdGFyZ2V0LzUwMzEwLCB0cmVlLW9wdGltaXphdGlv bi81MDE3OAotLSBkZWJ1ZyBpbmZvIHJlbGF0ZWQgYmFja3BvcnRzIGZyb20gdGhlIHRydW5rCi0g IC0gUFJzIGRlYnVnLzUwMTkxLCBkZWJ1Zy81MDIxNQotLSBmaXggY2FsbCBzaXRlIGRlYnVnIGlu Zm8gb24gYmlnIGVuZGlhbiB0YXJnZXRzIChQUiBkZWJ1Zy81MDI5OSkKLS0gcHV0IGxpYmdjYy5h IGludG8gbGliZ2NjX3Muc28gbGlua2VyIHNjcmlwdCBhbHNvIG9uIGFybSAoIzczMzU0OSkKLS0g dXNlICUlez9mZWRvcmF9IGluc3RlYWQgb2YgJSV7ZmVkb3JhfSwgaGFuZGxlIDAlJXs/cmhlbH0g Pj0gNyBsaWtlCi0gIDAlJXs/ZmVkb3JhfSA+PSAxNgotCi0qIFdlZCBBdWcgMjQgMjAxMSBKYWt1 YiBKZWxpbmVrIDxqYWt1YkByZWRoYXQuY29tPiA0LjYuMS04Ci0tIHVwZGF0ZSBmcm9tIHRoZSA0 LjYgYnJhbmNoCi0gIC0gUFJzIGMrKy80Njg2MiwgYysrLzQ4OTkzLCBjKysvNDk2NjksIGMrKy80 OTkyMSwgYysrLzQ5OTg4LCBjKysvNTAwMjQsCi0JYysrLzUwMDU0LCBjKysvNTAwODYsIGZvcnRy YW4vNDk3OTIsIGZvcnRyYW4vNTAwNTAsIGZvcnRyYW4vNTAxMDksCi0JZm9ydHJhbi81MDEyOSwg Zm9ydHJhbi81MDEzMCwgbWlkZGxlLWVuZC80OTkyMywgdGFyZ2V0LzUwMDAxLAotCXRhcmdldC81 MDA5MiwgdHJlZS1vcHRpbWl6YXRpb24vNDg3MzkKLS0gYnVpbGQgRUhfU1BFQ19CTE9DSyB3aXRo IHRoZSBzYW1lIGxvY2F0aW9uIGFzIGN1cnJlbnQgZnVuY3Rpb24KLSAgdG8gaGVscCBnY292ICgj NzMyODAyLCBQUiBjKysvNTAwNTUpCi0tIHN1cHBvcnQgdXNlZCBhdHRyaWJ1dGUgb24gdGVtcGxh dGUgY2xhc3MgbWV0aG9kcyBhbmQgc3RhdGljIGRhdGEKLSAgbWVtYmVycyBmb3IgZm9yY2VkIGlu c3RhbnRpYXRpb24gKCM3MjI1ODcpCi0tIGZpeCB1cCBsb2NhdGlvbiBjb3B5aW5nIGluIHRoZSB2 ZWN0b3JpemVyIChQUiB0cmVlLW9wdGltaXphdGlvbi81MDEzMykKLS0gdW5zaGFyZSBDQUxMX0lO U05fRlVOQ1RJT05fVVNBR0UgKFBSIG1pZGRsZS1lbmQvNDg3MjIpCi0tIGZpeCB1cCBndGhyKi5o IGZvciAtRSAtQyAoIzcxMzgwMCkKLQotKiBUaHUgQXVnICA0IDIwMTEgSmFrdWIgSmVsaW5layA8 amFrdWJAcmVkaGF0LmNvbT4gNC42LjEtNwotLSB1cGRhdGUgZnJvbSB0aGUgNC42IGJyYW5jaAot ICAtIFBScyBjKysvNDM4ODYsIGMrKy80OTU5MywgYysrLzQ5ODAzLCBmb3J0cmFuLzQ5ODg1LAot CXRyZWUtb3B0aW1pemF0aW9uLzQ5OTQ4Ci0tIGFkZCBzZWxmX3NwZWMgc3VwcG9ydCB0byBzcGVj cwotLSBhZGQgQ09QWUlORy5SVU5USU1FIHRvIGdjYyBhbmQgbGliZ2NjIGRvY3MgKCM3Mjc4MDkp Ci0tIFNQQVJDIGVudHJ5X3ZhbHVlIGZpeGVzIChQUnMgdGFyZ2V0LzQ4MjIwLCBkZWJ1Zy80OTgx NSkKLS0gZml4IHVwIGMtZmFtaWx5IGhlYWRlcnMgaW4gZ2NjLXBsdWdpbi1kZXZlbCAoIzcyODAx MSwgUFJzIHBsdWdpbnMvNDUzNDgsCi0gIHBsdWdpbnMvNDY1NzcsIHBsdWdpbnMvNDg0MjUpCi0K LSogVHVlIEF1ZyAgMiAyMDExIEpha3ViIEplbGluZWsgPGpha3ViQHJlZGhhdC5jb20+IDQuNi4x LTYKLS0gdXBkYXRlIGZyb20gdGhlIDQuNiBicmFuY2gKLSAgLSBQUnMgYysrLzQ5MjYwLCBjKysv NDk5MjQsIGxpYnN0ZGMrKy80OTkyNSwgdGFyZ2V0LzQ3OTA4LCB0YXJnZXQvNDk5MjAKLSAgLSBm aXggbGlicXVhZG1hdGggb24gaTY4NiAoIzcyNjkwOSkKLS0gT3Blbk1QIDMuMSBzdXBwb3J0IChQ UiBmb3J0cmFuLzQyMDQxLCBQUiBmb3J0cmFuLzQ2NzUyKQotJWlmIDAlez9mZWRvcmF9ID49IDE2 IHx8IDAlez9yaGVsfSA+PSA3Ci0tIG1ha2UgLWdyZWNvcmQtZ2NjLXN3aXRjaGVzIHRoZSBkZWZh dWx0Ci0lZW5kaWYKLQotKiBTdW4gSnVsIDMxIDIwMTEgSmFrdWIgSmVsaW5layA8amFrdWJAcmVk aGF0LmNvbT4gNC42LjEtNQotLSB1cGRhdGUgZnJvbSB0aGUgNC42IGJyYW5jaAotICAtIFBScyBk ZWJ1Zy80OTg3MSwgZm9ydHJhbi80ODg3NiwgZm9ydHJhbi80OTc5MSwgbWlkZGxlLWVuZC80OTg5 NywKLQltaWRkbGUtZW5kLzQ5ODk4LCBydGwtb3B0aW1pemF0aW9uLzQ5Nzk5LCB0YXJnZXQvNDcz NjQKLS0gZG9uJ3QgYXR0ZW1wdCB0byBzaXplIG9wdGltaXplIC1nZHdhcmYtMiBEV19BVF9kYXRh X21lbWJlcl9sb2NhdGlvbgotICBmcm9tIERXX09QX3BsdXNfdWNvbnN0IGZvcm0KLQotKiBXZWQg SnVsIDI3IDIwMTEgSmFrdWIgSmVsaW5layA8amFrdWJAcmVkaGF0LmNvbT4gNC42LjEtNAotLSB1 cGRhdGUgZnJvbSB0aGUgNC42IGJyYW5jaAotICAtIFBScyBhZGEvNDk4MTksIGMrKy80OTc4NSwg ZGVidWcvNDczOTMsIGZvcnRyYW4vNDk2NDgsIGZvcnRyYW4vNDk3MDgsCi0JbWlkZGxlLWVuZC80 OTY3NSwgbWlkZGxlLWVuZC80OTczMiwgdGFyZ2V0LzM5Mzg2LCB0YXJnZXQvNDk2MDAsCi0JdGFy Z2V0LzQ5NzIzLCB0YXJnZXQvNDk3NDYsIHRlc3RzdWl0ZS80OTc1MywgdHJlZS1vcHQvNDk2NzEs Ci0JdHJlZS1vcHRpbWl6YXRpb24vNDU4MTksIHRyZWUtb3B0aW1pemF0aW9uLzQ5MzA5LAotCXRy ZWUtb3B0aW1pemF0aW9uLzQ5NzI1LCB0cmVlLW9wdGltaXphdGlvbi80OTc2OAotLSByZXF1aXJl IGdtcC1kZXZlbCwgbXBmci1kZXZlbCBhbmQgbGlibXBjLWRldmVsIGluIGdjYy1wbHVnaW4tZGV2 ZWwKLSAgKCM3MjU1NjkpCi0tIGJhY2twb3J0IC1ncmVjb3JkLWdjYy1zd2l0Y2hlcyAoIzUwNzc1 OSwgUFIgb3RoZXIvMzI5OTgpCi0laWYgMCV7P2ZlZG9yYX0gPj0gMTYgfHwgMCV7P3JoZWx9ID49 IDcKLS0gbW9yZSBjb21wYWN0IGRlYnVnIG1hY3JvIGluZm8gZm9yIC1nMyAtIC5kZWJ1Z19tYWNy byBzZWN0aW9uCi0tIGltcHJvdmUgY2FsbCBzaXRlIGRlYnVnIGluZm8gZm9yIHNvbWUgZmxvYXRp bmcgcG9pbnQgcGFyYW1ldGVycwotICBwYXNzZWQgb24gdGhlIHN0YWNrIChQUiBkZWJ1Zy80OTg0 NikKLSVlbmRpZgotLSBmaXggLW1jbW9kZWw9bGFyZ2UgY2FsbCBjb25zdHJhaW50cyAoUFIgdGFy Z2V0LzQ5ODY2LCAjNzI1NTE2KQotCi0qIEZyaSBKdWwgMTUgMjAxMSBKYWt1YiBKZWxpbmVrIDxq YWt1YkByZWRoYXQuY29tPiA0LjYuMS0zCi0tIHVwZGF0ZSBmcm9tIHRoZSA0LjYgYnJhbmNoCi0g IC0gUFJzIGFkYS80NjM1MCwgYWRhLzQ4NzExLCBjKysvNDk2NzIsIGZvcnRyYW4vNDg5MjYsIGZv cnRyYW4vNDk1NjIsCi0JZm9ydHJhbi80OTY5MCwgZm9ydHJhbi80OTY5OCwgdGFyZ2V0LzM5NjMz LCB0YXJnZXQvNDY3NzksCi0JdGFyZ2V0LzQ5NDg3LCB0YXJnZXQvNDk1NDEsIHRhcmdldC80OTYy MSwgdHJlZS1vcHQvNDkzMDksCi0JdHJlZS1vcHRpbWl6YXRpb24vNDkwOTQsIHRyZWUtb3B0aW1p emF0aW9uLzQ5NjUxCi0tIGJhY2twb3J0IC1tYXJjaD1iZHZlcjIgYW5kIC1tdHVuZT1iZHZlcjIg c3VwcG9ydAotJWlmIDAlez9mZWRvcmF9IDwgMTYgfHwgMCV7P3JoZWx9ID49IDcKLS0gdXNlIEVO VFJZX1ZBTFVFIFJUTHMgaW50ZXJuYWxseSB0byBpbXByb3ZlIGdlbmVyYXRlZCBkZWJ1ZyBpbmZv LAotICBqdXN0IG1ha2Ugc3VyZSB0byByZW1vdmUgaXQgZnJvbSBwb3NzaWJsZSBvcHRpb25zIGJl Zm9yZSBlbWl0dGluZwotICB2YXItdHJhY2tpbmcgbm90ZXMKLSVlbmRpZgotCi0qIEZyaSBKdWwg IDggMjAxMSBKYWt1YiBKZWxpbmVrIDxqYWt1YkByZWRoYXQuY29tPiA0LjYuMS0yCi0tIHVwZGF0 ZSBmcm9tIHRoZSA0LjYgYnJhbmNoCi0gIC0gUFJzIGFkYS80OTUxMSwgYm9vdHN0cmFwLzIzNjU2 LCBib290c3RyYXAvNDkyNDcsIGMrKy80ODE1NywgYy80ODgyNSwKLQljKysvNDk0MTgsIGMrKy80 OTQ0MCwgYysrLzQ5NTI4LCBjKysvNDk1OTgsIGMvNDk2NDQsIGRlYnVnLzQ5MjYyLAotCWRlYnVn LzQ5NTIyLCBmb3J0cmFuLzQ5NDY2LCBmb3J0cmFuLzQ5NDc5LCBmb3J0cmFuLzQ5NjIzLAotCWxp YmZmaS80NjY2MCwgbGliZm9ydHJhbi80OTI5NiwgbWlkZGxlLWVuZC80OTY0MCwgb3RoZXIvNDc3 MzMsCi0JcmVncmVzc2lvbi80NzgzNiwgcnRsLW9wdGltaXphdGlvbi80OTAxNCwgcnRsLW9wdGlt aXphdGlvbi80OTQ3MiwKLQlydGwtb3B0aW1pemF0aW9uLzQ5NjE5LCB0YXJnZXQvMzQ3MzQsIHRh cmdldC80Nzk5NywgdGFyZ2V0LzQ4MjczLAotCXRhcmdldC80OTA4OSwgdGFyZ2V0LzQ5MzM1LCB0 YXJnZXQvNDk2NjAsIHRlc3RzdWl0ZS80OTY0MywKLQl0cmVlLW9wdGltaXphdGlvbi8zODc1Miwg dHJlZS1vcHRpbWl6YXRpb24vNDk1MTYsCi0JdHJlZS1vcHRpbWl6YXRpb24vNDk1MzksIHRyZWUt b3B0aW1pemF0aW9uLzQ5NTcyLAotCXRyZWUtb3B0aW1pemF0aW9uLzQ5NjE1LCB0cmVlLW9wdGlt aXphdGlvbi80OTYxOAotICAtIGRlY3JlYXNlIGNvbXBpbGVyIG1lbW9yeSBhbmQgdGltZSByZXF1 aXJlbWVudHMgb24gRm9ydHJhbiBEQVRBCi0gICAgd2l0aCBtYW55IHRpbWVzIHJlcGVhdGVkIGlu aXRpYWxpemVycyAoIzcxNjcyMSwgUFIgZm9ydHJhbi80OTU0MCkKLS0gYmFja3BvcnQgc29tZSBk ZWJ1Z2luZm8gaW1wcm92ZW1lbnRzIGFuZCBmaXhlcwotICAtIFBScyBkZWJ1Zy80OTM2NCwgZGVi dWcvNDk2MDIKLSAgLSBmaXggdHlwZWQgRFdBUkYgc3RhY2sgSUNFICgjNzE3MjQwLCBQUjQ5NTY3 KQotLSBiYWNrcG9ydCBfX2J1aWx0aW5fYXNzdW1lX2FsaWduZWQgc3VwcG9ydCAoIzcxMzU4NikK LS0gYmFja3BvcnQgZnVydGhlciBDKysgRkUgaW1wcm92ZW1lbnRzIGZvciBoZWF2eSBvdmVybG9h ZGluZyB1c2UKLSAgKCM2NTEwOTgsIFBSIGMrKy80ODQ4MSkKLQotKiBNb24gSnVuIDI3IDIwMTEg SmFrdWIgSmVsaW5layA8amFrdWJAcmVkaGF0LmNvbT4gNC42LjEtMQotLSB1cGRhdGUgZnJvbSB0 aGUgNC42IGJyYW5jaAotICAtIEdDQyA0LjYuMSByZWxlYXNlCi0gIC0gUFJzIGMrKy8zMzg0MCwg YysrLzQ5MTE3LCBjKysvNDkxMzQsIGMrKy80OTIyOSwgYysrLzQ5MjUxLCBjKysvNDkyNjQsCi0J YysrLzQ5Mjc2LCBjKysvNDkyOTAsIGMrKy80OTI5OCwgYysrLzQ5MzY5LCBjKysvNDk0ODIsIGMr Ky80OTUwNywKLQlkZWJ1Zy80NzU5MCwgZGVidWcvNDg0NTksIGZvcnRyYW4vNDc2MDEsIGZvcnRy YW4vNDg2OTksCi0JZm9ydHJhbi80OTA3NCwgZm9ydHJhbi80OTEwMywgZm9ydHJhbi80OTExMiwg Zm9ydHJhbi80OTI2OCwKLQlmb3J0cmFuLzQ5MzI0LCBmb3J0cmFuLzQ5NDE3LCBnY292LXByb2Zp bGUvNDkyOTksIG1pZGRsZS1lbmQvNDkxOTEsCi0JcnRsLW9wdGltaXphdGlvbi80ODU0MiwgcnRs LW9wdGltaXphdGlvbi80OTIzNSwgdGFyZ2V0LzQ0NjE4LAotCXRhcmdldC80ODQ1NCwgdGFyZ2V0 LzQ5MTg2LCB0YXJnZXQvNDkyMzgsIHRhcmdldC80OTMwNywgdGFyZ2V0LzQ5NDExLAotCXRhcmdl dC80OTQ2MSwgdGVzdHN1aXRlLzQ5NDMyLCB0cmVlLW9wdGltaXphdGlvbi80ODYxMywKLQl0cmVl LW9wdGltaXphdGlvbi80ODcwMiwgdHJlZS1vcHRpbWl6YXRpb24vNDkwMzgsCi0JdHJlZS1vcHRp bWl6YXRpb24vNDkxMTUsIHRyZWUtb3B0aW1pemF0aW9uLzQ5MjQzLAotCXRyZWUtb3B0aW1pemF0 aW9uLzQ5NDE5Ci0gIC0gZml4IEdDU0UgKCM3MTI0ODAsIFBSIHJ0bC1vcHRpbWl6YXRpb24vNDkz OTApCi0tIHVzZSBybSAtZiBhbmQgbXYgLWYgaW4gc3BsaXQtZGVidWdpbmZvLnNoICgjNzE2NjY0 KQotLSBiYWNrcG9ydCBzb21lIGRlYnVnaW5mbyBpbXByb3ZlbWVudHMgYW5kIGJ1Z2ZpeGVzCi0l aWYgMCV7P2ZlZG9yYX0gPj0gMTYgfHwgMCV7P3JoZWx9ID49IDcKLSAgLSBpbXByb3ZlIGRlYnVn IGluZm8gZm9yIElQQS1TUkEgdGhyb3VnaCBEV19PUF9HTlVfcGFyYW1ldGVyX3JlZgotICAgIChQ UiBkZWJ1Zy80Nzg1OCkKLSAgLSBlbWl0IERXX09QX0dOVV9jb252ZXJ0IDwwPiBhcyBjb252ZXJ0 IHRvIHVudHlwZWQKLSVlbmRpZgotICAtIGVtaXQgLmRlYnVnX2xvYyBlbXB0eSByYW5nZXMgZm9y IHBhcmFtZXRlcnMgdGhhdCBhcmUKLSAgICBtb2RpZmllZCBldmVuIGJlZm9yZSBmaXJzdCBpbnNu IGluIGEgZnVuY3Rpb24gKFBSIGRlYnVnLzQ5MzgyKQotICAtIGZpeCBkZWJ1ZyBJQ0Ugb24gczM5 MHggKFBSIGRlYnVnLzQ5NTQ0KQotICAtIFZUQSBJQ0UgZml4IChQUiBtaWRkbGUtZW5kLzQ5MzA4 KQotLSBiYWxhbmNlIHdvcmsgaW4gI3ByYWdtYSBvbXAgZm9yIHNjaGVkdWxlKHN0YXRpYykgYmV0 dGVyIChQUiBsaWJnb21wLzQ5NDkwKQotCi0qIEZyaSBKdW4gIDMgMjAxMSBKYWt1YiBKZWxpbmVr IDxqYWt1YkByZWRoYXQuY29tPiA0LjYuMC0xMAotLSB1cGRhdGUgZnJvbSB0aGUgNC42IGJyYW5j aAotICAtIFBScyBmb3J0cmFuLzQ1Nzg2LCBmb3J0cmFuLzQ5MjY1LCBtaWRkbGUtZW5kLzQ4OTUz LCBtaWRkbGUtZW5kLzQ4OTg1LAotCXRyZWUtb3B0aW1pemF0aW9uLzQ5MDkzCi0tIGJhY2twb3J0 IHNvbWUgZGVidWdpbmZvIGltcHJvdmVtZW50cwotICAtIFBScyBkZWJ1Zy80NzkxOSwgZGVidWcv NDc5OTQsIGRlYnVnLzQ5MjUwCi0tIGRlY3JlYXNlIEMrKyBGRSBtZW1vcnkgdXNhZ2Ugb24gY29k ZSB3aXRoIGhlYXZ5IG92ZXJsb2FkaW5nCi0gICgjNjUxMDk4LCBQUiBjKysvNDg0ODEpCi0KLSog TW9uIE1heSAzMCAyMDExIEpha3ViIEplbGluZWsgPGpha3ViQHJlZGhhdC5jb20+IDQuNi4wLTkK LS0gdXBkYXRlIGZyb20gdGhlIDQuNiBicmFuY2gKLSAgLSBQUnMgYysrLzQ0MzExLCBjKysvNDQ5 OTQsIGMrKy80NTA4MCwgYysrLzQ1NDAxLCBjKysvNDU0MTgsIGMrKy80NTY5OCwKLQljKysvNDYw MDUsIGMrKy80NjI0NSwgYysrLzQ2Njk2LCBjKysvNDcwNDksIGMrKy80NzE4NCwgYysrLzQ3Mjc3 LAotCWMrKy80ODI4NCwgYysrLzQ4MjkyLCBjKysvNDg0MjQsIGMrKy80ODkzNSwgYysrLzQ5MTU2 LCBjKysvNDkxNjUsCi0JYysrLzQ5MTc2LCBjKysvNDkyMjMsIGZvcnRyYW4vNDg5NTUsIGxpYm9i amMvNDgxNzcsIGxpYnN0ZGMrKy80OTE0MSwKLQl0YXJnZXQvNDM3MDAsIHRhcmdldC80Mzk5NSwg dGFyZ2V0LzQ0NjQzLCB0YXJnZXQvNDUyNjMsCi0JdHJlZS1vcHRpbWl6YXRpb24vNDQ4OTcsIHRy ZWUtb3B0aW1pemF0aW9uLzQ5MTYxLAotCXRyZWUtb3B0aW1pemF0aW9uLzQ5MjE3LCB0cmVlLW9w dGltaXphdGlvbi80OTIxOAotJWlmIDAlez9mZWRvcmF9ID49IDE2IHx8IDAlez9yaGVsfSA+PSA3 Ci0tIGRlZmF1bHQgdG8gLWdkd2FyZi00IC1mbm8tZGVidWctdHlwZXMtc2VjdGlvbiBpbnN0ZWFk IG9mIC1nZHdhcmYtMwotLSBiYWNrcG9ydCBEV19PUF9HTlVfZW50cnlfdmFsdWUgc3VwcG9ydAot ICAoUFJzIHJ0bC1vcHRpbWl6YXRpb24vNDg4MjYsIGRlYnVnLzQ4OTAyLCBib290c3RyYXAvNDgx NDgsCi0gICBkZWJ1Zy80ODIwMywgYm9vdHN0cmFwLzQ4MTY4LCBkZWJ1Zy80ODAyMywgZGVidWcv NDgxNzgsCi0gICBkZWJ1Zy80ODE2MywgZGVidWcvNDgxNjAsIGJvb3RzdHJhcC80ODE1MywgbWlk ZGxlLWVuZC80ODE1MiwKLSAgIGJvb3RzdHJhcC80ODE0OCwgZGVidWcvNDU4ODIpCi0tIGJhY2tw b3J0IERXX09QX0dOVV97e2NvbnN0LHJlZ3ZhbCxkZXJlZn1fdHlwZSxjb252ZXJ0LHJlaW50ZXJw cmV0fQotICBzdXBwb3J0IChQUnMgZGVidWcvNDg5MjgsIGRlYnVnLzQ4ODUzKQotJWVuZGlmCi0t IHNwbGl0IG9mZiBkZWJ1Z2luZm8gZm9yIGxpYmdjY19zLCBsaWJzdGRjKysgYW5kIGxpYmdvbXAg aW50bwotICBnY2MtYmFzZS1kZWJ1Z2luZm8gc3VicGFja2FnZSAoIzcwNjk3MykKLS0gcnVuIGxk Y29uZmlnIGluIGxpYmdjYyAlJXBvc3R1biwgZHJvcCBsaWJjY19wb3N0X3VwZ3JhZGUsCi0gIGlu c3RlYWQgd3JpdGUgdGhlIHNjcmlwdCBpbiA8bHVhPiAoIzcwNTgzMikKLQotKiBXZWQgTWF5IDI1 IDIwMTEgSmFrdWIgSmVsaW5layA8amFrdWJAcmVkaGF0LmNvbT4gNC42LjAtOAotLSB1cGRhdGUg ZnJvbSB0aGUgNC42IGJyYW5jaAotICAtIFBScyBib290c3RyYXAvNDkwODYsIGMrKy80NzI2Mywg YysrLzQ3MzM2LCBjKysvNDc1NDQsIGMrKy80ODUyMiwKLQljKysvNDg2MTcsIGMrKy80ODY0Nywg YysrLzQ4NzM2LCBjKysvNDg3NDUsIGMrKy80ODc4MCwgYysrLzQ4ODU5LAotCWMrKy80ODg2OSwg YysrLzQ4ODczLCBjKysvNDg4ODQsIGMrKy80ODk0NSwgYysrLzQ4OTQ4LCBjKysvNDkwNDIsCi0J YysrLzQ5MDQzLCBjKysvNDkwNjYsIGMrKy80OTA4MiwgYysrLzQ5MTA1LCBjKysvNDkxMzYsIGMv NDkxMjAsCi0JZGVidWcvNDgxNTksIGRlYnVnLzQ5MDMyLCBmb3J0cmFuLzQ4ODg5LCBsaWJzdGRj KysvNDkwNTgsIGx0by80ODIwNywKLQlsdG8vNDg3MDMsIGx0by80OTEyMywgbWlkZGxlLWVuZC80 ODk3MywgbWlkZGxlLWVuZC80OTAyOSwKLQlwcmVwcm9jZXNzb3IvNDg2NzcsIHRhcmdldC80ODk4 NiwgdGFyZ2V0LzQ5MDAyLCB0YXJnZXQvNDkxMDQsCi0JdGFyZ2V0LzQ5MTI4LCB0YXJnZXQvNDkx MzMsIHRyZWUtb3B0aW1pemF0aW9uLzQ4MTcyLAotCXRyZWUtb3B0aW1pemF0aW9uLzQ4Nzk0LCB0 cmVlLW9wdGltaXphdGlvbi80ODgyMiwKLQl0cmVlLW9wdGltaXphdGlvbi80ODk3NSwgdHJlZS1v cHRpbWl6YXRpb24vNDkwMDAsCi0JdHJlZS1vcHRpbWl6YXRpb24vNDkwMTgsIHRyZWUtb3B0aW1p emF0aW9uLzQ5MDM5LAotCXRyZWUtb3B0aW1pemF0aW9uLzQ5MDczLCB0cmVlLW9wdGltaXphdGlv bi80OTA3OQotICAtIHBwYyBWMkRJbW9kZSBBQkkgZml4ICgjNzA1NzY0LCBQUiB0YXJnZXQvNDg4 NTcpCi0gIC0gZml4IHBwYyB2YXItdHJhY2tpbmcgSUNFICgjNzAzODg4LCBQUiBkZWJ1Zy80ODk2 NykKLQotKiBNb24gTWF5ICA5IDIwMTEgSmFrdWIgSmVsaW5layA8amFrdWJAcmVkaGF0LmNvbT4g NC42LjAtNwotLSB1cGRhdGUgZnJvbSB0aGUgNC42IGJyYW5jaAotICAtIFBScyBhZGEvNDg4NDQs IGMrKy80MDk3NSwgYysrLzQ4MDg5LCBjKysvNDg0NDYsIGMrKy80ODY1NiwgYysrLzQ4NzQ5LAot CWMrKy80ODgzOCwgYysrLzQ4OTA5LCBjKysvNDg5MTEsIGZvcnRyYW4vNDgxMTIsIGZvcnRyYW4v NDgyNzksCi0JZm9ydHJhbi80ODQ2MiwgZm9ydHJhbi80ODcyMCwgZm9ydHJhbi80ODc0NiwgZm9y dHJhbi80ODc4OCwKLQlmb3J0cmFuLzQ4ODAwLCBmb3J0cmFuLzQ4ODEwLCBmb3J0cmFuLzQ4ODk0 LCBsaWJnZm9ydHJhbi80ODAzMCwKLQlsaWJzdGRjKysvNDg3NTAsIGxpYnN0ZGMrKy80ODc2MCwg bHRvLzQ4ODQ2LCBtaWRkbGUtZW5kLzQ4NTk3LAotCXByZXByb2Nlc3Nvci80ODE5MiwgdGFyZ2V0 LzQ4MjI2LCB0YXJnZXQvNDgyNTIsIHRhcmdldC80ODI2MiwKLQl0YXJnZXQvNDg3NzQsIHRhcmdl dC80ODkwMCwgdHJlZS1vcHRpbWl6YXRpb24vNDg4MDkKLS0gZml4IElDRSB3aXRoIHJlZmVyZW5j ZXMgaW4gdGVtcGxhdGVzIChQUiBjKysvNDg1NzQpCi0tIGRpc2FibGUgdGFpbCBjYWxsIG9wdGlt aXphdGlvbiBpZiB0YWlsIHJlY3Vyc2lvbiBuZWVkcyBhY2N1bXVsYXRvcnMKLSAgKFBSIFBSIHRy ZWUtb3B0aW1pemF0aW9uLzQ4ODM3KQotCi0qIFRodSBBcHIgMjggMjAxMSBKYWt1YiBKZWxpbmVr IDxqYWt1YkByZWRoYXQuY29tPiA0LjYuMC02Ci0tIHVwZGF0ZSBmcm9tIHRoZSA0LjYgYnJhbmNo Ci0gIC0gUFJzIGMrKy80MjY4NywgYysrLzQ2MzA0LCBjKysvNDgwNDYsIGMrKy80ODY1NywgYysr LzQ4NzA3LCBjKysvNDg3MjYsCi0JYy80ODY4NSwgYy80ODcxNiwgYy80ODc0MiwgZGVidWcvNDg3 NjgsIGZvcnRyYW4vNDc5NzYsCi0JZm9ydHJhbi80ODU4OCwgbGlic3RkYysrLzQ4NTIxLCBsdG8v NDgxNDgsIGx0by80ODQ5MiwKLQltaWRkbGUtZW5kLzQ4Njk1LCBvdGhlci80ODc0OCwgcHJlcHJv Y2Vzc29yLzQ4NzQwLCB0YXJnZXQvNDgyODgsCi0JdGFyZ2V0LzQ4NzA4LCB0YXJnZXQvNDg3MjMs IHRyZWUtb3B0aW1pemF0aW9uLzQ4NjExLAotCXRyZWUtb3B0aW1pemF0aW9uLzQ4NzE3LCB0cmVl LW9wdGltaXphdGlvbi80ODczMSwKLQl0cmVlLW9wdGltaXphdGlvbi80ODczNAotCi0qIFR1ZSBB cHIgMTkgMjAxMSBKYWt1YiBKZWxpbmVrIDxqYWt1YkByZWRoYXQuY29tPiA0LjYuMC01Ci0tIHVw ZGF0ZSBmcm9tIHRoZSA0LjYgYnJhbmNoCi0gIC0gUFJzIGMrKy80ODUzNywgYysrLzQ4NjMyLCBm b3J0cmFuLzQ4MzYwLCBmb3J0cmFuLzQ4NDU2LAotCWxpYmZvcnRyYW4vNDc1NzEsIGxpYnN0ZGMr Ky80ODQ3NiwgbGlic3RkYysrLzQ4NjMxLAotCWxpYnN0ZGMrKy80ODYzNSwgbHRvLzQ4NTM4LCBt aWRkbGUtZW5kLzQ2MzY0LCBtaWRkbGUtZW5kLzQ4NjYxLAotCXByZXByb2Nlc3Nvci80ODI0OCwg dGFyZ2V0LzQ4MzY2LCB0YXJnZXQvNDg2MDUsIHRhcmdldC80ODYxNCwKLQl0YXJnZXQvNDg2Nzgs IHRlc3RzdWl0ZS80ODY3NSwgdHJlZS1vcHRpbWl6YXRpb24vNDg2MTYKLSAgLSBmaXggY2FsbGlu ZyBmdW5jdG9yIG9yIG5vbi1wb2ludGVyLXRvLW1lbWJlciB0aHJvdWdoCi0gICAgb3ZlcmxvYWRl ZCBwb2ludGVyLXRvLW1lbWJlciBvcGVyYXRvciAoIzY5NTU2NywgUFIgYysrLzQ4NTk0KQotCi0q IFdlZCBBcHIgMTMgMjAxMSBKYWt1YiBKZWxpbmVrIDxqYWt1YkByZWRoYXQuY29tPiA0LjYuMC00 Ci0tIHVwZGF0ZSBmcm9tIHRoZSA0LjYgYnJhbmNoCi0gIC0gUFJzIGMrKy80ODQ1MCwgYysrLzQ4 NDUyLCBjKysvNDg0NjgsIGMrKy80ODUwMCwgYysrLzQ4NTIzLCBjKysvNDg1MjgsCi0JYysrLzQ4 NTM0LCBjKysvNDg1NzAsIGMrKy80ODU3NCwgYy80ODUxNywgbGlic3RkYysrLzQ4NDY1LAotCWxp YnN0ZGMrKy80ODU0MSwgbGlic3RkYysrLzQ4NTY2LCB0YXJnZXQvNDc4MjksIHRhcmdldC80ODA5 MCwKLQl0ZXN0c3VpdGUvNDg1MDYsIHRyZWUtb3B0aW1pemF0aW9uLzQ4MTk1LCB0cmVlLW9wdGlt aXphdGlvbi80ODM3NwotICAtIGZpeCBjb21iaW5lciB3aXRoIC1nICgjNjk1MDE5LCBQUiBydGwt b3B0aW1pemF0aW9uLzQ4NTQ5KQotICAtIGZpeCBPcGVuTVAgYXRvbWljIF9fZmxvYXQxMjggaGFu ZGxpbmcgb24gaT84NiAoIzY5NjEyOSwKLSAgICBQUiBtaWRkbGUtZW5kLzQ4NTkxKQotCi0qIEZy aSBBcHIgIDggMjAxMSBKYWt1YiBKZWxpbmVrIDxqYWt1YkByZWRoYXQuY29tPiA0LjYuMC0zCi0t IHVwZGF0ZSBmcm9tIHRoZSA0LjYgYnJhbmNoCi0gIC0gUFJzIGJvb3RzdHJhcC80ODQzMSwgYysr LzQ4MjgwLCBkZWJ1Zy80ODM0MywgZGVidWcvNDg0NjYsIGZvcnRyYW4vNDgxMTcsCi0JZm9ydHJh bi80ODI5MSwgbGlic3RkYysrLzQ4Mzk4LCBtaWRkbGUtZW5kLzQ4MzM1LAotCXJ0bC1vcHRpbWl6 YXRpb24vNDgxNDMsIHJ0bC1vcHRpbWl6YXRpb24vNDgxNDQsIHRhcmdldC8xNjI5MiwKLQl0YXJn ZXQvNDgxNDIKLSAgLSBkb24ndCBJQ0UgYmVjYXVzZSBvZiBlbXB0eSBwYXJ0aXRpb25zIGR1cmlu ZyBMVE8gKCM2ODg3NjcsIFBSIGx0by80ODI0NikKLS0gZG9uJ3QgZW1pdCBEV19BVF8qX3BjIGZv ciBDVXMgd2l0aG91dCBhbnkgY29kZQotCi0qIFRodSBNYXIgMzEgMjAxMSBKYWt1YiBKZWxpbmVr IDxqYWt1YkByZWRoYXQuY29tPiA0LjYuMC0yCi0tIHVwZGF0ZSBmcm9tIHRoZSA0LjYgYnJhbmNo Ci0gIC0gUFJzIGMrKy80NzUwNCwgYysrLzQ3NTcwLCBjKysvNDc5OTksIGMrKy80ODE2NiwgYysr LzQ4MjEyLCBjKysvNDgyNjUsCi0JYysrLzQ4MjgxLCBjKysvNDgyODksIGMrKy80ODI5NiwgYysr LzQ4MzEzLCBjKysvNDgzMTksIGMrKy80ODM2OSwKLQlkZWJ1Zy80ODA0MSwgZGVidWcvNDgyNTMs IHByZXByb2Nlc3Nvci80ODI0OCwgdGFyZ2V0LzQ4MzQ5Ci0tIGFkZCAtZm5vLWRlYnVnLXR5cGVz LXNlY3Rpb24gc3dpdGNoCi0tIGRvbid0IGVtaXQgLmRlYnVnX2FiYnJldiBzZWN0aW9uIGlmIGl0 IGlzIGVtcHR5IGFuZCB1bnVzZWQKLQotKiBUdWUgTWFyIDI5IDIwMTEgSmFrdWIgSmVsaW5layA8 amFrdWJAcmVkaGF0LmNvbT4gNC42LjAtMQotLSB1cGRhdGUgZnJvbSB0aGUgNC42IGJyYW5jaAot ICAtIEdDQyA0LjYuMCByZWxlYXNlCi0gIC0gUFJzIGMvNDI1NDQsIGMvNDgxOTcsIGRlYnVnLzQ4 MjA0LCBtaWRkbGUtZW5kLzQ4MDMxLAotCW1pZGRsZS1lbmQvNDgxMzQsIG1pZGRsZS1lbmQvNDgy NjksIG90aGVyLzQ4MTc5LCBvdGhlci80ODIyMSwKLQlvdGhlci80ODIzNCwgcnRsLW9wdGltaXph dGlvbi80ODE1NiwgdGFyZ2V0LzQ3NTUzLAotCXRhcmdldC80ODIzNywgdGVzdHN1aXRlLzQ4MjUx LCB0cmVlLW9wdGltaXphdGlvbi80ODIyOAotICAtIGltcHJvdmUgUlRMIERTRSBzcGVlZCB3aXRo IGxhcmdlIG51bWJlciBvZiBzdG9yZXMgKCM2ODQ5MDAsCi0gICAgUFIgcnRsLW9wdGltaXphdGlv bi80ODE0MSkKLS0gYWRkIGduYXRpdmUyYXNjaWkgYmluYXJ5IGFuZCBtYW4gcGFnZSB0byBsaWJn Y2oKLQotKiBNb24gTWFyIDIxIDIwMTEgSmFrdWIgSmVsaW5layA8amFrdWJAcmVkaGF0LmNvbT4g NC42LjAtMC4xNQotLSB1cGRhdGUgZnJvbSB0aGUgNC42IGJyYW5jaAotICAtIFBScyBib290c3Ry YXAvNDUzODEsIGJvb3RzdHJhcC80ODEzNQotLSBmaXggczM5MCBJQ0UgZHVyaW5nIGFkZHJlc3Mg ZGVsZWdpdGltaXphdGlvbiAoUFIgdGFyZ2V0LzQ4MjEzLCAjNjg5MjY2KQotCi0qIEZyaSBNYXIg MTggMjAxMSBKYWt1YiBKZWxpbmVrIDxqYWt1YkByZWRoYXQuY29tPiA0LjYuMC0wLjE0Ci0tIHVw ZGF0ZSBmcm9tIHRoZSA0LjYgYnJhbmNoCi0gIC0gUFJzIGJvb3RzdHJhcC80ODE2MSwgYysrLzQ4 MTEzLCBjKysvNDgxMTUsIGMrKy80ODEzMiwgZGVidWcvNDc1MTAsCi0JZGVidWcvNDgxNzYsIGxp YnN0ZGMrKy80ODEyMywgbWlkZGxlLWVuZC80NzQwNSwgbWlkZGxlLWVuZC80ODE2NSwKLQl0YXJn ZXQvNDY3NzgsIHRhcmdldC80Njc4OCwgdGFyZ2V0LzQ4MTcxCi0tIHVwZGF0ZSBsaWJzdGRjKysg cHJldHR5IHByaW50ZXJzIGZyb20gdHJ1bmsKLQotKiBUdWUgTWFyIDE1IDIwMTEgSmFrdWIgSmVs aW5layA8amFrdWJAcmVkaGF0LmNvbT4gNC42LjAtMC4xMwotLSB1cGRhdGUgZnJvbSB0cnVuayBh bmQgdGhlIDQuNiBicmFuY2gKLSAgLSBQUnMgYm9vdHN0cmFwLzQ4MDAwLCBib290c3RyYXAvNDgx MDIsIGMrKy80NDYyOSwgYysrLzQ1NjUxLCBjKysvNDYyMjAsCi0JYysrLzQ2ODAzLCBjKysvNDcx MjUsIGMrKy80NzE0NCwgYysrLzQ3MTk4LCBjKysvNDc0ODgsIGMrKy80NzcwNSwKLQljKysvNDc4 MDgsIGMrKy80Nzk1NywgYysrLzQ3OTcxLCBjKysvNDgwMDMsIGMrKy80ODAwOCwgYysrLzQ4MDE1 LAotCWMrKy80ODAyOSwgYysrLzQ4MDM1LCBjKysvNDgwNjksIGMvNDc3ODYsIGRlYnVnLzQ3ODgx LCBkZWJ1Zy80ODA0MywKLQlmb3J0cmFuLzQ3NTUyLCBmb3J0cmFuLzQ3ODUwLCBmb3J0cmFuLzQ4 MDU0LCBmb3J0cmFuLzQ4MDU5LAotCWxpYmZvcnRyYW4vNDgwNjYsIGxpYmdmb3J0cmFuLzQ4MDQ3 LCBsaWJzdGRjKysvNDgwMzgsIGxpYnN0ZGMrKy80ODExNCwKLQlsdG8vNDc0OTcsIGx0by80ODA3 MywgbHRvLzQ4MDg2LCBtaWRkbGUtZW5kLzQ3OTY4LCBtaWRkbGUtZW5kLzQ3OTc1LAotCW1pZGRs ZS1lbmQvNDgwNDQsIG1pZGRsZS1lbmQvNDgwOTgsIHJ0bC1vcHRpbWl6YXRpb24vNDc4NjYsCi0J cnRsLW9wdGltaXphdGlvbi80Nzg5OSwgdGFyZ2V0LzQ1NDEzLCB0YXJnZXQvNDc3MTksIHRhcmdl dC80Nzg2MiwKLQl0YXJnZXQvNDc5ODYsIHRhcmdldC80ODAzMiwgdGFyZ2V0LzQ4MDUzLCB0ZXN0 c3VpdGUvNDc5NTQsCi0JdHJlZS1vcHRpbWl6YXRpb24vNDcxMjcsIHRyZWUtb3B0aW1pemF0aW9u LzQ3Mjc4LAotCXRyZWUtb3B0aW1pemF0aW9uLzQ3NzE0LCB0cmVlLW9wdGltaXphdGlvbi80Nzk2 NywKLQl0cmVlLW9wdGltaXphdGlvbi80ODAyMiwgdHJlZS1vcHRpbWl6YXRpb24vNDgwNjMsCi0J dHJlZS1vcHRpbWl6YXRpb24vNDgwNjcKLSAgLSBmaXggdmFyLXRyYWNraW5nIElDRSBvbiBzMzkw eCAoIzY4MjQxMCwgUFIgZGVidWcvNDc5OTEpCi0KLSogRnJpIE1hciAgNCAyMDExIEpha3ViIEpl bGluZWsgPGpha3ViQHJlZGhhdC5jb20+IDQuNi4wLTAuMTIKLS0gdXBkYXRlIGZyb20gdHJ1bmsK LSAgLSBQUnMgYysrLzQ2MTU5LCBjKysvNDYyODIsIGMrKy80NzIwMCwgYysrLzQ3Nzc0LCBjKysv NDc4NTEsIGMrKy80Nzk1MCwKLQljKysvNDc5NzQsIGMvNDc5NjMsIGxpYnN0ZGMrKy80NzkxMywg bWlkZGxlLWVuZC80NzI4MywKLQlydGwtb3B0aW1pemF0aW9uLzQ3OTI1LCB0YXJnZXQvNDc5MzUs IHRyZWUtb3B0aW1pemF0aW9uLzQ3ODkwCi0tIHJlYnVpbHQgYWdhaW5zdCBwcGwgMC4xMS4yLCBy ZWVuYWJsZSBjbG9vZy1wcGwgUmVxdWlyZXMKLQotKiBUdWUgTWFyICAxIDIwMTEgSmFrdWIgSmVs aW5layA8amFrdWJAcmVkaGF0LmNvbT4gNC42LjAtMC4xMQotLSB1cGRhdGUgZnJvbSB0cnVuawot ICAtIFBScyBjKysvNDY0NjYsIGMrKy80Nzg3MywgYysrLzQ3ODk3LCBjKysvNDc5MDYsIGRlYnVn LzI4MDQ3LAotCWZvcnRyYW4vNDA4NTAsIGZvcnRyYW4vNDc4MzksIGZvcnRyYW4vNDc4NDYsIGZv cnRyYW4vNDc4NzIsCi0JZm9ydHJhbi80Nzg3OCwgZm9ydHJhbi80Nzg4NiwgZm9ydHJhbi80Nzg5 NCwgbGliZm9ydHJhbi80NTE2NSwKLQlsaWJmb3J0cmFuLzQ3ODAyLCBsaWJnZm9ydHJhbi80Nzc3 OCwgbGliZ2ZvcnRyYW4vNDc5MzMsCi0JbGlib2JqYy80NzkyMiwgbGlic3RkYysrLzQyNjIyLCBs aWJzdGRjKysvNDc5MjEsIGx0by80NjkxMSwKLQlsdG8vNDc5MjQsIG1pZGRsZS1lbmQvNDY3OTAs IG1pZGRsZS1lbmQvNDc5MDMsIHRhcmdldC80MjI0MCwKLQl0YXJnZXQvNDUyNjEsIHRhcmdldC80 Njg5OCwgdGVzdHN1aXRlLzQ3ODAxLCB0cmVlLW9wdGltaXphdGlvbi80NTQ3MAotICAtIGZpeCBz dGFjayBzbG90IHBhZGRpbmcgcmV1c2FsICgjNjc5OTI0LCBQUiBtaWRkbGUtZW5kLzQ3ODkzKQot ICAtIGZpeCBJQ0Ugb24gREVDTF9QQVJNX0lOREVYIGluIGNwX3RyZWVfZXF1YWwgKCM2ODA2MDMs IFBSIGMrKy80NzkwNCkKLS0gZGlzYWJsZSBJUEEtU1JBIGF0IC1PMi8tT3MgKCM2Njg0ODksIFBS IGRlYnVnLzQ3ODU4KQotLSB0ZW1wb3JhcmlseSBkaXNhYmxlIGNsb29nLXBwbCBSZXF1aXJlcywg c28gdGhhdCBwcGwgYW5kIGNsb29nLXBwbCBjYW4KLSAgYmUgYnVtcGVkCi0KLSogV2VkIEZlYiAy MiAyMDExIEpha3ViIEplbGluZWsgPGpha3ViQHJlZGhhdC5jb20+IDQuNi4wLTAuMTAKLS0gdXBk YXRlIGZyb20gdHJ1bmsKLSAgLSBQUnMgYysrLzQ2ODY4LCB0cmVlLW9wdGltaXphdGlvbi80Nzgz OCwgdHJlZS1vcHRpbWl6YXRpb24vNDc4NDkKLS0gZG9uJ3Qgc2hpcCBhb3Rjb21waWxlLnB5KiBh bmQgY2xhc3NmaWxlLnB5KiBpbiBsaWJzdGRjKysgKCM2Nzg5ODIpCi0KLSogV2VkIEZlYiAyMiAy MDExIEpha3ViIEplbGluZWsgPGpha3ViQHJlZGhhdC5jb20+IDQuNi4wLTAuOQotLSB1cGRhdGUg ZnJvbSB0cnVuawotICAtIFBScyBib290c3RyYXAvNDc4MjcsIGMrKy80NDExOCwgYysrLzQ2Mzk0 LCBjKysvNDY0NzIsIGMrKy80NjgzMSwKLQljKysvNDcxOTksIGMrKy80NzIwNywgYysrLzQ3MjQy LCBjKysvNDc2NjYsIGMrKy80NzcwMywgYysrLzQ3ODMzLAotCWRvYy80Nzg0OCwgZm9ydHJhbi80 MTM1OSwgZm9ydHJhbi80NDk0NSwgZm9ydHJhbi80NTA3NywKLQlmb3J0cmFuLzQ1NzQzLCBmb3J0 cmFuLzQ2ODE4LCBmb3J0cmFuLzQ3Nzk3LCBsaWJmb3J0cmFuLzQ3Njk0LAotCWxpYmZvcnRyYW4v NDc4MzAsIGxpYmdvbXAvNDc4NTQsIGx0by80NzgyMCwgbHRvLzQ3ODIyLAotCW9iamMrKy80Nzcx MSwgb2JqYy80Nzc4NCwgcnRsLW9wdGltaXphdGlvbi80NjAwMiwKLQlydGwtb3B0aW1pemF0aW9u LzQ3NzYzLCB0YXJnZXQvNDc4MjIsIHRhcmdldC80Nzg0MCwKLQl0cmVlLW9wdGltaXphdGlvbi80 NzgzNQotICAtIGZpeCBoYW5kbGluZyBvZiBPYmpDIHBvaW50ZXIgdG8gc3RydWN0IHdpdGggZmxl eGlibGUgYXJyYXkgbWVtYmVyCi0gICAgaW4gaW50ZXJmYWNlcyAoIzY3ODkyOCwgUFIgb2JqYy80 NzgzMikKLS0gdGVtcG9yYXJpbHkgQnVpbGRSZXF1aXJlIHVydy1mb250cyB1bnRpbCBncmFwaHZp eiBpcyBmaXhlZCAoIzY3NzExNCkKLQotKiBTdW4gRmViIDIwIDIwMTEgSmFrdWIgSmVsaW5layA8 amFrdWJAcmVkaGF0LmNvbT4gNC42LjAtMC44Ci0tIHVwZGF0ZSBmcm9tIHRydW5rCi0gIC0gUFJz IGFkYS80MTkyOSwgYm9vdHN0cmFwLzQ3NzM2LCBib290c3RyYXAvNDc4MDcsIGMrKy80NjgwNywK LQljKysvNDcxNzIsIGMrKy80NzIwOCwgYysrLzQ3MzI2LCBjKysvNDc0ODIsIGMrKy80NzUwMywK LQljKysvNDc3MDQsIGMrKy80Nzc4MywgYysrLzQ3Nzk1LCBjLzQ3ODA5LCBkZWJ1Zy80NzYzMCwK LQlkZWJ1Zy80Nzc4MCwgZHJpdmVyLzQ1NzMxLCBkcml2ZXIvNDczOTAsIGRyaXZlci80Nzc4NywK LQlmb3J0cmFuLzQ3MzQ4LCBmb3J0cmFuLzQ3MzQ5LCBmb3J0cmFuLzQ3NTY5LCBmb3J0cmFuLzQ3 NjMzLAotCWZvcnRyYW4vNDc2NDIsIGZvcnRyYW4vNDc2NDgsIGZvcnRyYW4vNDc3MTYsIGZvcnRy YW4vNDc3MjgsCi0JZm9ydHJhbi80NzczMCwgZm9ydHJhbi80Nzc0NSwgZm9ydHJhbi80Nzc1MCwg Zm9ydHJhbi80Nzc2NywKLQlmb3J0cmFuLzQ3NzY4LCBmb3J0cmFuLzQ3Nzc1LCBmb3J0cmFuLzQ3 Nzg5LCBsaWJmb3J0cmFuLzQ3NzU3LAotCWxpYmdmb3J0cmFuLzQ3NjY3LCBsaWJnb21wLzQ3NzMx LCBsaWJnb21wLzQ3NzU4LCBsaWJnb21wLzQ3ODA0LAotCWxpYmphdmEvNDc0ODQsIGxpYnN0ZGMr Ky80NzcwOSwgbGlic3RkYysrLzQ3NzI0LCBsaWJzdGRjKysvNDc3NzMsCi0JbGlic3RkYysrLzQ3 Nzc2LCBsdG8vNDc2NDcsIGx0by80Nzc5OCwgbWlkZGxlLWVuZC80NzU4MSwKLQltaWRkbGUtZW5k LzQ3NzI1LCBtaWRkbGUtZW5kLzQ3Nzg4LCBwY2gvMTQ5NDAsCi0JcnRsLW9wdGltaXphdGlvbi80 NjE3OCwgdGFyZ2V0LzQzNjUzLCB0YXJnZXQvNDU4MDgsIHRhcmdldC80NzY5NiwKLQl0YXJnZXQv NDc3NTUsIHRhcmdldC80Nzc5MiwgdHJlZS1vcHRpbWl6YXRpb24vNDY0OTQsCi0JdHJlZS1vcHRp bWl6YXRpb24vNDY2MjAsIHRyZWUtb3B0aW1pemF0aW9uLzQ3NzM3LAotCXRyZWUtb3B0aW1pemF0 aW9uLzQ3NzM4LCB0cmVlLW9wdGltaXphdGlvbi80Nzc0MwotICAtIGZpeCBpPzg2IHNoaWZ0ICsg cGx1cyBwZWVwaG9sZTIgKCM2Nzg1MzAsIFBSIHRhcmdldC80NzgwMCkKLQotKiBTYXQgRmViIDEy IDIwMTEgSmFrdWIgSmVsaW5layA8amFrdWJAcmVkaGF0LmNvbT4gNC42LjAtMC43Ci0tIHVwZGF0 ZSBmcm9tIHRydW5rCi0gIC0gUFJzIGJpbnV0aWxzLzEyMjgzLCBjKysvNDc1MTEsIGRlYnVnLzQy NjMxLCBkZWJ1Zy80NzY4NCwgZHJpdmVyLzQ3Njc4LAotCWZvcnRyYW4vNDI0MzQsIGZvcnRyYW4v NDUyOTAsIGZvcnRyYW4vNDU1ODYsIGZvcnRyYW4vNDczNTIsCi0JZm9ydHJhbi80NzQ2MywgZm9y dHJhbi80NzU1MCwgZm9ydHJhbi80NzU3NCwgZm9ydHJhbi80NzU4MywKLQlmb3J0cmFuLzQ3NTky LCBmb3J0cmFuLzQ3NjM3LCBsaWJmZmkvNDY2NjEsIGxpYmZvcnRyYW4vNDc1NzEsCi0JbGliZ2Zv cnRyYW4vNDc1NjcsIGxpYnN0ZGMrKy80Mzg2MywgbGlic3RkYysrLzQ3NDMzLAotCWxpYnN0ZGMr Ky80NzYyOCwgbGlic3RkYysrLzQ3NjY4LCBsdG8vNDcyMjUsIGx0by80NzI0MSwKLQltaWRkbGUt ZW5kLzQ1NTA1LCBtaWRkbGUtZW5kLzQ3NjEwLCBtaWRkbGUtZW5kLzQ3NjM5LAotCW1pZGRsZS1l bmQvNDc2NDYsIHRhcmdldC80MjMzMywgdGFyZ2V0LzQ0NjA2LCB0YXJnZXQvNDU3MDEsCi0JdGFy Z2V0LzQ2NDgxLCB0YXJnZXQvNDY2MTAsIHRhcmdldC80Njk5NywgdGFyZ2V0LzQ3MDMyLAotCXRh cmdldC80NzMyNCwgdGFyZ2V0LzQ3NTM0LCB0YXJnZXQvNDc1NDgsIHRhcmdldC80NzU1OCwKLQl0 YXJnZXQvNDc2MjksIHRhcmdldC80NzYzNiwgdGFyZ2V0LzQ3NjY1LCB0YXJnZXQvNDc2ODMsCi0J dGVzdHN1aXRlLzQ3NDAwLCB0ZXN0c3VpdGUvNDc2MjIsIHRyZWUtb3B0aW1pemF0aW9uLzQyODkz LAotCXRyZWUtb3B0aW1pemF0aW9uLzQ2ODM0LCB0cmVlLW9wdGltaXphdGlvbi80Njk5NCwKLQl0 cmVlLW9wdGltaXphdGlvbi80Njk5NSwgdHJlZS1vcHRpbWl6YXRpb24vNDc0MjAsCi0JdHJlZS1v cHRpbWl6YXRpb24vNDc2MTUsIHRyZWUtb3B0aW1pemF0aW9uLzQ3NjIxLAotCXRyZWUtb3B0aW1p emF0aW9uLzQ3NjMyLCB0cmVlLW9wdGltaXphdGlvbi80NzY0MSwKLQl0cmVlLW9wdGltaXphdGlv bi80NzY2NCwgdHJlZS1vcHRpbWl6YXRpb24vNDc3MDcKLSAgLSBmaXggcG9zdHJlbG9hZCBvbiBh dXRvIGluYy9kZWNyZW1lbnQgaW5zdHJ1Y3Rpb25zICgjNjc1Nzg3LAotICAgIFBSIHJ0bC1vcHRp bWl6YXRpb24vNDc2MTQpCi0gIC0gZml4IGEgaGFuZyBpbiBWUlAgKCM2NzY0NzMsIFBSIHRyZWUt b3B0aW1pemF0aW9uLzQ3Njc3KQotICAtIGZpeCBTVEwgaGVhZGVycyB3aXRoIC1mbm8tb3BlcmF0 b3ItbmFtZXMgKCM2NzY5MTAsIFBSIGxpYnN0ZGMrKy80NzY2MikKLS0gZml4IHNjaGVkdWxpbmcg b2YgZGVidWcgaW5zbnMgKCM2NzU3MTEsIFBSIGRlYnVnLzQ3NjIwKQotCi0qIFNhdCBGZWIgIDUg MjAxMSBKYWt1YiBKZWxpbmVrIDxqYWt1YkByZWRoYXQuY29tPiA0LjYuMC0wLjYKLS0gdXBkYXRl IGZyb20gdHJ1bmsKLSAgLSBQUnMgYm9vdHN0cmFwLzQ3MDQ0LCBib290c3RyYXAvNDcxNDcsIGMr Ky8yOTU3MSwgYysrLzQ2ODkwLCBjKysvNDczMTEsCi0JYysrLzQ3Mzk4LCBjKysvNDc0MTYsIGMr Ky80NzU4OSwgZGVidWcvNDMwOTIsIGRlYnVnLzQ3NDk4LAotCWRlYnVnLzQ3NTAxLCBkcml2ZXIv NDc1NDcsIGZvcnRyYW4vMzU4MTAsIGZvcnRyYW4vNDUxNzAsCi0JZm9ydHJhbi80NzA0MiwgZm9y dHJhbi80NzA4MiwgZm9ydHJhbi80NzM1MCwgZm9ydHJhbi80NzQ1NSwKLQlmb3J0cmFuLzQ3NDYz LCBmb3J0cmFuLzQ3NTA3LCBmb3J0cmFuLzQ3NTE5LCBmb3J0cmFuLzQ3NTIzLAotCWZvcnRyYW4v NDc1MzEsIGZvcnRyYW4vNDc1NjUsIGZvcnRyYW4vNDc1NzIsIGdjYy80NjY5MiwKLQlpbmxpbmUt YXNtLzIzMjAwLCBqYXZhLzIxMjA2LCBsaWJmb3J0cmFuLzQ3NTcxLCBsaWJnY2ovNDQzNDEsCi0J bGliZ2ZvcnRyYW4vNDc0MzQsIGxpYnF1YWRtYXRoLzQ3MjkzLCBsaWJzdGRjKysvNDY5MTQsCi0J bGlic3RkYysrLzQ3NTYwLCBsdG8vNDcyNzQsIG1pZGRsZS1lbmQvNDc1NDMsCi0JcnRsLW9wdGlt aXphdGlvbi80MzQ5NCwgcnRsLW9wdGltaXphdGlvbi80NDAzMSwKLQlydGwtb3B0aW1pemF0aW9u LzQ3NTI1LCB0YXJnZXQvNDI4OTQsIHRhcmdldC80NTMyNSwKLQl0YXJnZXQvNDcyNzIsIHRhcmdl dC80NzMxMiwgdGFyZ2V0LzQ3NTY0LCB0YXJnZXQvNDc1ODAsCi0JdHJlZS1vcHRpbWl6YXRpb24v NDA5NzksIHRyZWUtb3B0aW1pemF0aW9uLzQzNjk1LAotCXRyZWUtb3B0aW1pemF0aW9uLzQ1MTIy LCB0cmVlLW9wdGltaXphdGlvbi80NjE5NCwKLQl0cmVlLW9wdGltaXphdGlvbi80NzUzOCwgdHJl ZS1vcHRpbWl6YXRpb24vNDc1NDEsCi0JdHJlZS1vcHRpbWl6YXRpb24vNDc1NTUsIHRyZWUtb3B0 aW1pemF0aW9uLzQ3NTU5LAotCXRyZWUtb3B0aW1pemF0aW9uLzQ3NTYxLCB0cmVlLW9wdGltaXph dGlvbi80NzU2NiwKLQl0cmVlLW9wdGltaXphdGlvbi80NzU3NgotLSBzdXBwcmVzcyAtV292ZXJs ZW5ndGgtc3RyaW5nIHdhcm5pbmdzIGluc2lkZSBvZiBfX2FzbV9fCi0tIGZpeCBzZWN0aW9uIGZs YWdzIGNvbmZsaWN0IGhhbmRsaW5nIGZvciByZWxybyBzZWN0aW9ucyAoIzY3NDg5MCwKLSAgUFIg bWlkZGxlLWVuZC80NzYxMCkKLQotKiBGcmkgSmFuIDI4IDIwMTEgSmFrdWIgSmVsaW5layA8amFr dWJAcmVkaGF0LmNvbT4gNC42LjAtMC41CisqIFR1ZSBKYW4gIDMgMjAxMiBKYWt1YiBKZWxpbmVr IDxqYWt1YkByZWRoYXQuY29tPiA0LjcuMC0wLjIKIC0gdXBkYXRlIGZyb20gdHJ1bmsKLSAgLSBQ UnMgYm9vdHN0cmFwLzQ3NDY3LCBjKysvNDM2MDEsIGMrKy80NzQ3NiwgYy8yMTY1OSwgYy80MzA4 MiwgYy80NzQ3MywKLQlkZWJ1Zy80NTEzMCwgZGVidWcvNDUxMzYsIGRlYnVnLzQ1NDU0LCBmb3J0 cmFuLzM4NTM2LCBmb3J0cmFuLzQ3Mzk5LAotCWZvcnRyYW4vNDc0MjEsIGZvcnRyYW4vNDc0NDgs IGZvcnRyYW4vNDc0NzIsIGZvcnRyYW4vNDc0NzQsCi0JbGliZm9ydHJhbi80NzM3NSwgbGliZm9y dHJhbi80NzQzMSwgbGliZm9ydHJhbi80NzQzMiwKLQlsaWJmb3J0cmFuLzQ3NDkxLCBsaWJnZm9y dHJhbi80NzI4NSwgbGlic3RkYysrLzQ3Mzg3LAotCWxpYnN0ZGMrKy80NzQzMywgbGlic3RkYysr LzQ3NDM3LCBsdG8vNDQzMzQsIGx0by80NzMzMywKLQlsdG8vNDc0MjMsIG1pZGRsZS1lbmQvNDY5 NDksIG1pZGRsZS1lbmQvNDc0MDEsIG1pZGRsZS1lbmQvNDc0MTEsCi0JbWlkZGxlLWVuZC80NzQx NCwgcnRsLW9wdGltaXphdGlvbi8zNzI3MywgcnRsLW9wdGltaXphdGlvbi80NDE3NCwKLQlydGwt b3B0aW1pemF0aW9uLzQ0NDY5LCBydGwtb3B0aW1pemF0aW9uLzQ2ODU2LAotCXJ0bC1vcHRpbWl6 YXRpb24vNDY4NzgsIHJ0bC1vcHRpbWl6YXRpb24vNDcxNjYsCi0JcnRsLW9wdGltaXphdGlvbi80 NzQ2NCwgdGFyZ2V0LzQwMTI1LCB0YXJnZXQvNDU3MDEsCi0JdGFyZ2V0LzQ2NTE5LCB0YXJnZXQv NDY5OTcsIHRhcmdldC80NzIzNywgdGFyZ2V0LzQ3MjQ2LAotCXRhcmdldC80NzM4NSwgdGFyZ2V0 LzQ3NDA4LCB0ZXN0c3VpdGUvNDU5ODgsCi0JdHJlZS1vcHRpbWl6YXRpb24vMjY4NTQsIHRyZWUt b3B0aW1pemF0aW9uLzI5ODMyLAotCXRyZWUtb3B0aW1pemF0aW9uLzQzNTY3LCB0cmVlLW9wdGlt aXphdGlvbi80MzY1NywKLQl0cmVlLW9wdGltaXphdGlvbi80Mzg4NCwgdHJlZS1vcHRpbWl6YXRp b24vNDYxNjgsCi0JdHJlZS1vcHRpbWl6YXRpb24vNDYyMTUsIHRyZWUtb3B0aW1pemF0aW9uLzQ2 OTcwLAotCXRyZWUtb3B0aW1pemF0aW9uLzQ3MTkwLCB0cmVlLW9wdGltaXphdGlvbi80NzIyOCwK LQl0cmVlLW9wdGltaXphdGlvbi80NzIzNCwgdHJlZS1vcHRpbWl6YXRpb24vNDcyNjUsCi0JdHJl ZS1vcHRpbWl6YXRpb24vNDcyNzEsIHRyZWUtb3B0aW1pemF0aW9uLzQ3MzgyLAotCXRyZWUtb3B0 aW1pemF0aW9uLzQ3NDI3LCB0cmVlLW9wdGltaXphdGlvbi80NzQyOCwKLQl0cmVlLW9wdGltaXph dGlvbi80NzQ0MwotICAtIHJlYWxseSBmaXggdGhlIFBDSCBpc3N1ZSBvbiBwb3dlcnBjNjQgKFBS IHBjaC80NzQzMCkKLSAgLSBoYW5kbGUgdHJ1dGhfeG9yX2V4cHIgaW4gcG90ZW50aWFsX2NvbnN0 YW50X2V4cHJlc3Npb25fMQotICAgICgjNjcyMTU2LCBQUiB0cmVlLW9wdGltaXphdGlvbi80NzQy NikKLS0gZml4IG5hbWVkIHNlY3Rpb24gY29uZmxpY3QgaGFuZGxpbmcgKFBSIG1pZGRsZS1lbmQv MzE0OTApCi0tIHN1cHByZXNzIC1Xb3Zlcmxlbmd0aC1zdHJpbmcgd2FybmluZ3MgaW4gX19leHRl bnNpb25fXyBndWFyZGVkCi0gIGNvZGUKLQotKiBNb24gSmFuIDI0IDIwMTEgSmFrdWIgSmVsaW5l ayA8amFrdWJAcmVkaGF0LmNvbT4gNC42LjAtMC40Ci0tIGJ1aWxkIGdjYy1nbyBhbmQgbGliZ28q IG9ubHkgb24gYXJjaGl0ZWN0dXJlcyB0aGF0IHN1cHBvcnQgaXQKLS0gd29ya2Fyb3VuZCBQQ0gg aXNzdWUgb24gcG93ZXJwYzY0Ci0KLSogU2F0IEphbiAyMiAyMDExIEpha3ViIEplbGluZWsgPGph a3ViQHJlZGhhdC5jb20+IDQuNi4wLTAuMwotLSBhZGQgZ2NjLWdvLCBsaWJnb3ssLWRldmVsLC1z dGF0aWN9LCBsaWJxdWFkbWF0aHssLWRldmVsLC1zdGF0aWN9LAotICBsaWJnZm9ydHJhbi1zdGF0 aWMgYW5kIGdjYy1wbHVnaW4tZGV2ZWwgc3VicGFja2FnZXMKLS0gZml4IHVwIGxpYnN0ZGMrKy1k b2MgbWFuIHBhZ2UgbG9jYXRpb24gKCM2NjQ0NzUpCi0KLSogU2F0IEphbiAyMiAyMDExIEpha3Vi IEplbGluZWsgPGpha3ViQHJlZGhhdC5jb20+IDQuNi4wLTAuMgotLSB1cGRhdGUgZnJvbSB0aGUg dHJ1bmsKLSAgLSBQUnMgYm9vdHN0cmFwLzQ3MDU1LCBib290c3RyYXAvNDcxODcsIGJvb3RzdHJh cC80NzIxNSwgYysrLzMzNTU4LAotCWMrKy80NTUyMCwgYysrLzQ2NTUyLCBjKysvNDY2NTgsIGMr Ky80NjY4OCwgYysrLzQ2OTAzLCBjKysvNDY5NzcsCi0JYysrLzQ3MDIyLCBjKysvNDcwNDEsIGMr Ky80NzA2NywgYysrLzQ3MjEzLCBjKysvNDcyMTgsIGMrKy80NzI4OSwKLQljKysvNDcyOTEsIGMr Ky80NzMwMywgYysrLzQ3Mzg4LCBjLzQ3MTUwLCBkZWJ1Zy80NjI0MCwgZGVidWcvNDY1ODMsCi0J ZGVidWcvNDY3MDQsIGRlYnVnLzQ2NzI0LCBkZWJ1Zy80Njk1NSwgZGVidWcvNDcwNzksIGRlYnVn LzQ3MTA2LAotCWRlYnVnLzQ3MjA5LCBkZWJ1Zy80NzI4MywgZGVidWcvNDc0MDIsIGRlYnVnL1BS NDY5NzMsIGRyaXZlci80MjQ0NSwKLQlkcml2ZXIvNDcyNDQsIGZvcnRyYW4vMzMxMTcsIGZvcnRy YW4vMzg1MzYsIGZvcnRyYW4vNDE1ODAsCi0JZm9ydHJhbi80NTc3NywgZm9ydHJhbi80NTg0OCwg Zm9ydHJhbi80NjAxNywgZm9ydHJhbi80NjMxMywKLQlmb3J0cmFuLzQ2NDAyLCBmb3J0cmFuLzQ2 NDA1LCBmb3J0cmFuLzQ2NDE2LCBmb3J0cmFuLzQ2NDc4LAotCWZvcnRyYW4vNDY2MjUsIGZvcnRy YW4vNDY4MTcsIGZvcnRyYW4vNDY4OTYsIGZvcnRyYW4vNDcwMjQsCi0JZm9ydHJhbi80NzA1MSwg Zm9ydHJhbi80NzE3NCwgZm9ydHJhbi80NzE3NywgZm9ydHJhbi80NzE4MCwKLQlmb3J0cmFuLzQ3 MTgyLCBmb3J0cmFuLzQ3MTg5LCBmb3J0cmFuLzQ3MTk0LCBmb3J0cmFuLzQ3MTk1LAotCWZvcnRy YW4vNDcyMDQsIGZvcnRyYW4vNDcyMjQsIGZvcnRyYW4vNDcyNDAsIGZvcnRyYW4vNDcyNjAsCi0J Zm9ydHJhbi80NzI2OCwgZm9ydHJhbi80NzI5NSwgZm9ydHJhbi80NzMyNywgZm9ydHJhbi80NzMz MSwKLQlmb3J0cmFuLzQ3Mzc3LCBmb3J0cmFuLzQ3Mzk0LCBnY2MvNDY5MDIsIGxpYmZvcnRyYW4v NDYyNjcsCi0JbGliZm9ydHJhbi80NzI5NiwgbGliZm9ydHJhbi80NzMyMiwgbGliZ2ZvcnRyYW4v NDcxNTQsCi0JbGliZ2ZvcnRyYW4vNDcyOTYsIGxpYnN0ZGMrKy8zNjEwNCwgbGlic3RkYysrLzQ3 MDQ1LCBsaWJzdGRjKysvNDcxNDUsCi0JbGlic3RkYysrLzQ3MTg1LCBsaWJzdGRjKysvNDczMjAs IGxpYnN0ZGMrKy80NzMyMSwgbGlic3RkYysrLzQ3MzIzLAotCWxpYnN0ZGMrKy80NzM1NCwgbHRv LzQ1Mzc1LCBsdG8vNDU3MjEsIGx0by80NjA4MywgbHRvLzQ2NzYwLAotCWx0by80NzE2MiwgbHRv LzQ3MTg4LCBsdG8vNDcyMjIsIGx0by80NzIyNSwgbHRvLzQ3MjU5LCBsdG8vNDcyNjQsCi0JbWlk ZGxlLWVuZC8zMjUxMSwgbWlkZGxlLWVuZC80NTIzNSwgbWlkZGxlLWVuZC80NTU2NiwKLQltaWRk bGUtZW5kLzQ2ODIzLCBtaWRkbGUtZW5kLzQ2ODk0LCBtaWRkbGUtZW5kLzQ3MjgxLAotCW1pZGRs ZS1lbmQvNDczNzAsIG1pZGRsZS1lbmQvNDczOTUsIG9iamMvNDU5ODksIG9iamMvNDcwNzgsCi0J b2JqYy80NzIzMiwgb2JqYy80NzMxNCwgb3RoZXIvNDU5MTUsIG90aGVyLzQ2OTQ2LCBwcmVwcm9j ZXNzb3IvMzkyMTMsCi0JcnRsLW9wdGltaXphdGlvbi8zOTA3NywgcnRsLW9wdGltaXphdGlvbi80 MTYxOSwKLQlydGwtb3B0aW1pemF0aW9uLzQ1MzUyLCBydGwtb3B0aW1pemF0aW9uLzQ3MjE2LAot CXJ0bC1vcHRpbWl6YXRpb24vNDcyOTksIHJ0bC1vcHRpbWl6YXRpb24vNDczMzcsCi0JcnRsLW9w dGltaXphdGlvbi80NzM2NiwgdGFyZ2V0LzE5MTYyLCB0YXJnZXQvMzgxMTgsIHRhcmdldC80MzMw OSwKLQl0YXJnZXQvNDUyNTgsIHRhcmdldC80NjAzNywgdGFyZ2V0LzQ2NjU1LCB0YXJnZXQvNDY5 OTcsIHRhcmdldC80NzIwMSwKLQl0YXJnZXQvNDcyMTksIHRhcmdldC80NzI1MSwgdGFyZ2V0LzQ3 MzE4LCB0ZXN0c3VpdGUvMzMwMzMsCi0JdGVzdHN1aXRlLzQxMTQ2LCB0ZXN0c3VpdGUvNDUzNDIs IHRlc3RzdWl0ZS80NjIzMCwgdGVzdHN1aXRlLzQ2OTEyLAotCXRlc3RzdWl0ZS80NzMyNSwgdGVz dHN1aXRlLzQ3MzcxLCB0cmVlLW9wdGltaXphdGlvbi80NTkzNCwKLQl0cmVlLW9wdGltaXphdGlv bi80NTk2NywgdHJlZS1vcHRpbWl6YXRpb24vNDYwMjEsCi0JdHJlZS1vcHRpbWl6YXRpb24vNDYw NzYsIHRyZWUtb3B0aW1pemF0aW9uLzQ2MTMwLAotCXRyZWUtb3B0aW1pemF0aW9uLzQ2MzAyLCB0 cmVlLW9wdGltaXphdGlvbi80NjM2NywKLQl0cmVlLW9wdGltaXphdGlvbi80NzAwNSwgdHJlZS1v cHRpbWl6YXRpb24vNDcwNTMsCi0JdHJlZS1vcHRpbWl6YXRpb24vNDcwNTYsIHRyZWUtb3B0aW1p emF0aW9uLzQ3MDg2LAotCXRyZWUtb3B0aW1pemF0aW9uLzQ3MTM5LCB0cmVlLW9wdGltaXphdGlv bi80NzE0MSwKLQl0cmVlLW9wdGltaXphdGlvbi80NzE2NywgdHJlZS1vcHRpbWl6YXRpb24vNDcx NzksCi0JdHJlZS1vcHRpbWl6YXRpb24vNDcyMzMsIHRyZWUtb3B0aW1pemF0aW9uLzQ3MjM0LAot CXRyZWUtb3B0aW1pemF0aW9uLzQ3MjM5LCB0cmVlLW9wdGltaXphdGlvbi80NzI3NiwKLQl0cmVl LW9wdGltaXphdGlvbi80NzI4MCwgdHJlZS1vcHRpbWl6YXRpb24vNDcyODYsCi0JdHJlZS1vcHRp bWl6YXRpb24vNDcyOTAsIHRyZWUtb3B0aW1pemF0aW9uLzQ3MzEzLAotCXRyZWUtb3B0aW1pemF0 aW9uLzQ3MzU1LCB0cmVlLW9wdGltaXphdGlvbi80NzM2NSwKLQl0cmVlLW9wdGltaXphdGlvbi80 NzM5MSwgdHJlZS1vcHRtaXphdGlvbi80NjQ2OQotLSBhZGQgc3lzdGVtdGFwIHByb2JlIHRvIF9V bndpbmRfRGVidWdIb29rCi0KLSogV2VkIEphbiAgNSAyMDExIEpha3ViIEplbGluZWsgPGpha3Vi QHJlZGhhdC5jb20+IDQuNi4wLTAuMQorICAtIFBScyBib290c3RyYXAvNTE2ODYsIGJvb3RzdHJh cC81MTcyNSwgYysrLzE1ODY3LCBjKysvMTY2MDMsIGMrKy8yMDE0MCwKKwljKysvMjMyMTEsIGMr Ky81MTMxNiwgYysrLzUxMzc5LCBjKysvNTEzOTcsIGMrKy81MTQ2MiwgYysrLzUxNTA3LAorCWMr Ky81MTU0NywgYysrLzUxNjY2LCBjKysvNTE2NjksIGMrKy81MTY3NSwgYysrLzUxNzIzLCBkZWJ1 Zy81MTY1MCwKKwlkcml2ZXIvNDgzMDYsIGZvcnRyYW4vNDYyNjIsIGZvcnRyYW4vNDYzMjgsIGZv cnRyYW4vNTEwNTIsCisJZm9ydHJhbi81MTUwMiwgZm9ydHJhbi81MTUyOSwgZm9ydHJhbi81MTY4 MiwgbGliZm9ydHJhbi81MTY0NiwKKwlsaWJnY2ovNDkxOTMsIGxpYnN0ZGMrKy80ODM2MiwgbGli c3RkYysrLzQ5MjA0LCBsaWJzdGRjKysvNTE2MDgsCisJbGlic3RkYysrLzUxNzAxLCBsaWJzdGRj KysvNTE3MTEsIGx0by81MTY1MCwgbWlkZGxlLWVuZC80ODY0MSwKKwltaWRkbGUtZW5kLzUxMjAw LCBtaWRkbGUtZW5kLzUxMjEyLCBtaWRkbGUtZW5kLzUxMjUyLAorCW1pZGRsZS1lbmQvNTE3MzAs IG90aGVyLzUxNjc5LCBwY2gvNTE3MjIsIHJ0bC1vcHRpbWl6YXRpb24vNTAzOTYsCisJcnRsLW9w dGltaXphdGlvbi81MTA2OSwgcnRsLW9wdGltaXphdGlvbi81MTY2NywgdGFyZ2V0LzI3NDY4LAor CXRhcmdldC80NzY0MywgdGFyZ2V0LzUxMzQ1LCB0YXJnZXQvNTE1NTIsIHRhcmdldC81MTYyMywg dGFyZ2V0LzUxNjQzLAorCXRhcmdldC81MTcyOSwgdGVzdHN1aXRlLzUwNzIyLCB0ZXN0c3VpdGUv NTE2NDUsIHRlc3RzdWl0ZS81MTcwMiwKKwl0cmVlLW9wdGltaXphdGlvbi80MzQ5MSwgdHJlZS1v cHRpbWl6YXRpb24vNTEwNzAsCisJdHJlZS1vcHRpbWl6YXRpb24vNTEyNjksIHRyZWUtb3B0aW1p emF0aW9uLzUxNjgzLAorCXRyZWUtb3B0aW1pemF0aW9uLzUxNjg0LCB0cmVlLW9wdGltaXphdGlv bi81MTY5MiwKKwl0cmVlLW9wdGltaXphdGlvbi81MTcwNCwgdHJlZS1vcHRpbWl6YXRpb24vNTE3 MTkKKworKiBXZWQgRGVjIDIxIDIwMTEgSmFrdWIgSmVsaW5layA8amFrdWJAcmVkaGF0LmNvbT4g NC43LjAtMC4xCiAtIG5ldyBwYWNrYWdlCgpkaWZmIC0tZ2l0IGEvZ2NjNDYtYysrLWJ1aWx0aW4t cmVkZWNsLnBhdGNoIGIvZ2NjNDYtYysrLWJ1aWx0aW4tcmVkZWNsLnBhdGNoCmRlbGV0ZWQgZmls ZSBtb2RlIDEwMDY0NAppbmRleCA5NDYzNDI4Li4wMDAwMDAwCi0tLSBhL2djYzQ2LWMrKy1idWls dGluLXJlZGVjbC5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDEwMiArMCwwIEBACi0yMDA3LTEw LTAyICBKYWt1YiBKZWxpbmVrICA8amFrdWJAcmVkaGF0LmNvbT4KLQotCSogZGVjbC5jIChkdXBs aWNhdGVfZGVjbHMpOiBXaGVuIHJlZGVjbGFyaW5nIGEgYnVpbHRpbiBmdW5jdGlvbiwKLQlrZWVw IHRoZSBtZXJnZWQgZGVjbCBidWlsdGluIHdoZW5ldmVyIHR5cGVzIG1hdGNoLCBldmVuIGlmIG5l dwotCWRlY2wgZGVmaW5lcyBhIGZ1bmN0aW9uLgotCi0JKiBnY2MuZGcvYnVpbHRpbnMtODUuYzog TmV3IHRlc3QuCi0JKiBnKysuZGcvZXh0L2J1aWx0aW4zMC5DOiBOZXcgdGVzdC4KLQotLS0tIGdj Yy9jcC9kZWNsLmMuamoJMjAwNy0xMC0wMSAyMjoxMTowOS4wMDAwMDAwMDAgKzAyMDAKLSsrKyBn Y2MvY3AvZGVjbC5jCTIwMDctMTAtMDIgMTE6Mzk6NDYuMDAwMDAwMDAwICswMjAwCi1AQCAtMjAw MSwyMyArMjAwMSwyMSBAQCBkdXBsaWNhdGVfZGVjbHMgKHRyZWUgbmV3ZGVjbCwgdHJlZSBvbGRk Ci0gCSAgREVDTF9BUkdVTUVOVFMgKG9sZGRlY2wpID0gREVDTF9BUkdVTUVOVFMgKG5ld2RlY2wp OwotIAkgIERFQ0xfUkVTVUxUIChvbGRkZWNsKSA9IERFQ0xfUkVTVUxUIChuZXdkZWNsKTsKLSAJ fQotKyAgICAgIC8qIElmIHJlZGVjbGFyaW5nIGEgYnVpbHRpbiBmdW5jdGlvbiwgaXQgc3RheXMg YnVpbHQgaW4uICAqLwotKyAgICAgIGlmICh0eXBlc19tYXRjaCAmJiBERUNMX0JVSUxUX0lOIChv bGRkZWNsKSkKLSsJewotKwkgIERFQ0xfQlVJTFRfSU5fQ0xBU1MgKG5ld2RlY2wpID0gREVDTF9C VUlMVF9JTl9DTEFTUyAob2xkZGVjbCk7Ci0rCSAgREVDTF9GVU5DVElPTl9DT0RFIChuZXdkZWNs KSA9IERFQ0xfRlVOQ1RJT05fQ09ERSAob2xkZGVjbCk7Ci0rCSAgLyogSWYgd2UncmUga2VlcGlu ZyB0aGUgYnVpbHQtaW4gZGVmaW5pdGlvbiwga2VlcCB0aGUgcnRsLAotKwkgICAgIHJlZ2FyZGxl c3Mgb2YgZGVjbGFyYXRpb24gbWF0Y2hlcy4gICovCi0rCSAgQ09QWV9ERUNMX1JUTCAob2xkZGVj bCwgbmV3ZGVjbCk7Ci0rCX0KLSAgICAgICBpZiAobmV3X2RlZmluZXNfZnVuY3Rpb24pCi0gCS8q IElmIGRlZmluaW5nIGEgZnVuY3Rpb24gZGVjbGFyZWQgd2l0aCBvdGhlciBsYW5ndWFnZQotIAkg ICBsaW5rYWdlLCB1c2UgdGhlIHByZXZpb3VzbHkgZGVjbGFyZWQgbGFuZ3VhZ2UgbGlua2FnZS4g ICovCi0gCVNFVF9ERUNMX0xBTkdVQUdFIChuZXdkZWNsLCBERUNMX0xBTkdVQUdFIChvbGRkZWNs KSk7Ci0gICAgICAgZWxzZSBpZiAodHlwZXNfbWF0Y2gpCi0gCXsKLS0JICAvKiBJZiByZWRlY2xh cmluZyBhIGJ1aWx0aW4gZnVuY3Rpb24sIGFuZCBub3QgYSBkZWZpbml0aW9uLAotLQkgICAgIGl0 IHN0YXlzIGJ1aWx0IGluLiAgKi8KLS0JICBpZiAoREVDTF9CVUlMVF9JTiAob2xkZGVjbCkpCi0t CSAgICB7Ci0tCSAgICAgIERFQ0xfQlVJTFRfSU5fQ0xBU1MgKG5ld2RlY2wpID0gREVDTF9CVUlM VF9JTl9DTEFTUyAob2xkZGVjbCk7Ci0tCSAgICAgIERFQ0xfRlVOQ1RJT05fQ09ERSAobmV3ZGVj bCkgPSBERUNMX0ZVTkNUSU9OX0NPREUgKG9sZGRlY2wpOwotLQkgICAgICAvKiBJZiB3ZSdyZSBr ZWVwaW5nIHRoZSBidWlsdC1pbiBkZWZpbml0aW9uLCBrZWVwIHRoZSBydGwsCi0tCQkgcmVnYXJk bGVzcyBvZiBkZWNsYXJhdGlvbiBtYXRjaGVzLiAgKi8KLS0JICAgICAgQ09QWV9ERUNMX1JUTCAo b2xkZGVjbCwgbmV3ZGVjbCk7Ci0tCSAgICB9Ci0tCi0gCSAgREVDTF9SRVNVTFQgKG5ld2RlY2wp ID0gREVDTF9SRVNVTFQgKG9sZGRlY2wpOwotIAkgIC8qIERvbid0IGNsZWFyIG91dCB0aGUgYXJn dW1lbnRzIGlmIHdlJ3JlIGp1c3QgcmVkZWNsYXJpbmcgYQotIAkgICAgIGZ1bmN0aW9uLiAgKi8K LS0tLSBnY2MvdGVzdHN1aXRlL2djYy5kZy9idWlsdGlucy04NS5jLmpqCTIwMDctMTAtMDIgMTE6 MjM6NTEuMDAwMDAwMDAwICswMjAwCi0rKysgZ2NjL3Rlc3RzdWl0ZS9nY2MuZGcvYnVpbHRpbnMt ODUuYwkyMDA3LTEwLTAyIDExOjI0OjEyLjAwMDAwMDAwMCArMDIwMAotQEAgLTAsMCArMSwyNSBA QAotKy8qIHsgZGctZG8gY29tcGlsZSB9ICovCi0rLyogeyBkZy1vcHRpb25zICItTzIiIH0gKi8K LSsKLSt0eXBlZGVmIF9fU0laRV9UWVBFX18gc2l6ZV90OwotK2V4dGVybiB2b2lkIF9fY2hrX2Zh aWwgKHZvaWQpOwotK2V4dGVybiBpbnQgc25wcmludGYgKGNoYXIgKiwgc2l6ZV90LCBjb25zdCBj aGFyICosIC4uLik7Ci0rZXh0ZXJuIGlubGluZSBfX2F0dHJpYnV0ZV9fKChnbnVfaW5saW5lLCBh bHdheXNfaW5saW5lKSkgaW50IHNucHJpbnRmIChjaGFyICphLCBzaXplX3QgYiwgY29uc3QgY2hh ciAqZm10LCAuLi4pCi0rewotKyAgaWYgKF9fYnVpbHRpbl9vYmplY3Rfc2l6ZSAoYSwgMCkgIT0g LTFVTCAmJiBfX2J1aWx0aW5fb2JqZWN0X3NpemUgKGEsIDApIDwgYikKLSsgICAgX19jaGtfZmFp bCAoKTsKLSsgIHJldHVybiBfX2J1aWx0aW5fc25wcmludGYgKGEsIGIsIGZtdCwgX19idWlsdGlu X3ZhX2FyZ19wYWNrICgpKTsKLSt9Ci0rZXh0ZXJuIGludCBzbnByaW50ZiAoY2hhciAqLCBzaXpl X3QsIGNvbnN0IGNoYXIgKiwgLi4uKSBfX2FzbSAoIm15c25wcmludGYiKTsKLSsKLStjaGFyIGJ1 ZlsxMF07Ci0rCi0raW50Ci0rbWFpbiAodm9pZCkKLSt7Ci0rICBzbnByaW50ZiAoYnVmLCAxMCwg IiVkJWRcbiIsIDEwLCAxMCk7Ci0rICByZXR1cm4gMDsKLSt9Ci0rCi0rLyogeyBkZy1maW5hbCB7 IHNjYW4tYXNzZW1ibGVyICJteXNucHJpbnRmIiB9IH0gKi8KLSsvKiB7IGRnLWZpbmFsIHsgc2Nh bi1hc3NlbWJsZXItbm90ICJfX2Noa19mYWlsIiB9IH0gKi8KLS0tLSBnY2MvdGVzdHN1aXRlL2cr Ky5kZy9leHQvYnVpbHRpbjMwLkMuamoJMjAwNy0xMC0wMiAxMToxOTo0NS4wMDAwMDAwMDAgKzAy MDAKLSsrKyBnY2MvdGVzdHN1aXRlL2crKy5kZy9leHQvYnVpbHRpbjMwLkMJMjAwNy0xMC0wMiAx MToyMzoyNi4wMDAwMDAwMDAgKzAyMDAKLUBAIC0wLDAgKzEsMjcgQEAKLSsvLyB7IGRnLWRvIGNv bXBpbGUgfQotKy8vIHsgZGctb3B0aW9ucyAiLU8yIiB9Ci0rCi0rdHlwZWRlZiBfX1NJWkVfVFlQ RV9fIHNpemVfdDsKLStleHRlcm4gIkMiIHsKLStleHRlcm4gdm9pZCBfX2Noa19mYWlsICh2b2lk KTsKLStleHRlcm4gaW50IHNucHJpbnRmIChjaGFyICosIHNpemVfdCwgY29uc3QgY2hhciAqLCAu Li4pOwotK2V4dGVybiBpbmxpbmUgX19hdHRyaWJ1dGVfXygoZ251X2lubGluZSwgYWx3YXlzX2lu bGluZSkpIGludCBzbnByaW50ZiAoY2hhciAqYSwgc2l6ZV90IGIsIGNvbnN0IGNoYXIgKmZtdCwg Li4uKQotK3sKLSsgIGlmIChfX2J1aWx0aW5fb2JqZWN0X3NpemUgKGEsIDApICE9IC0xVUwgJiYg X19idWlsdGluX29iamVjdF9zaXplIChhLCAwKSA8IGIpCi0rICAgIF9fY2hrX2ZhaWwgKCk7Ci0r ICByZXR1cm4gX19idWlsdGluX3NucHJpbnRmIChhLCBiLCBmbXQsIF9fYnVpbHRpbl92YV9hcmdf cGFjayAoKSk7Ci0rfQotK2V4dGVybiBpbnQgc25wcmludGYgKGNoYXIgKiwgc2l6ZV90LCBjb25z dCBjaGFyICosIC4uLikgX19hc20gKCJteXNucHJpbnRmIik7Ci0rfQotKwotK2NoYXIgYnVmWzEw XTsKLSsKLStpbnQKLSttYWluICh2b2lkKQotK3sKLSsgIHNucHJpbnRmIChidWYsIDEwLCAiJWQl ZFxuIiwgMTAsIDEwKTsKLSsgIHJldHVybiAwOwotK30KLSsKLSsvLyB7IGRnLWZpbmFsIHsgc2Nh bi1hc3NlbWJsZXIgIm15c25wcmludGYiIH0gfQotKy8vIHsgZGctZmluYWwgeyBzY2FuLWFzc2Vt Ymxlci1ub3QgIl9fY2hrX2ZhaWwiIH0gfQoKZGlmZiAtLWdpdCBhL2djYzQ2LWNsb29nLWRsLnBh dGNoIGIvZ2NjNDYtY2xvb2ctZGwucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4 IDExY2U4MmIuLjAwMDAwMDAKLS0tIGEvZ2NjNDYtY2xvb2ctZGwucGF0Y2gKKysrIC9kZXYvbnVs bApAQCAtMSw0NTkgKzAsMCBAQAotMjAxMS0wMS0wNCAgSmFrdWIgSmVsaW5layAgPGpha3ViQHJl ZGhhdC5jb20+Ci0KLQkqIE1ha2VmaWxlLmluIChCQUNLRU5ETElCUyk6IExpbmsgYWdhaW5zdCAt bGRsIGluc3RlYWQgb2YKLQktbGNsb29nIC1scHBsLgotCShncmFwaGl0ZS5vLCBncmFwaGl0ZSUu byk6IEZvcmNlIC1PLCByZW1vdmUgLWZrZWVwLWlubGluZS1mdW5jdGlvbnMuCi0JKEdSQVBISVRF X0NMT09HX1VUSUxfSCwgR1JBUEhJVEVfUE9MWV9IKTogTmV3LgotCShncmFwaGl0ZSoubyk6IEFk anVzdCBkZXBlbmRlbmNpZXMuCi0JKiBncmFwaGl0ZS1jbG9vZy1jb21wYXQuaDogSW5jbHVkZSA8 ZGxmY24uaD4uICBSZWZlcmVuY2UgbGliY2xvb2cgYW5kCi0JbGlicHBsIHN5bWJvbHMgdGhyb3Vn aCBwb2ludGVycyBpbiBjbG9vZ19wb2ludGVyc19fIHZhcmlhYmxlLgotCSogZ3JhcGhpdGUuYyAo aW5pdF9jbG9vZ19wb2ludGVycyk6IE5ldyBmdW5jdGlvbi4KLQkoZ3JhcGhpdGVfdHJhbnNmb3Jt X2xvb3BzKTogQ2FsbCBpbml0X2Nsb29nX3BvaW50ZXJzLgotCSogZ3JhcGhpdGUtY2xhc3QtdG8t Z2ltcGxlLmMgKGdjY190eXBlX2Zvcl9pdl9vZl9jbGFzdF9sb29wKTogUmVuYW1lCi0Jc3RtdF9m b3IgYXJndW1lbnQgdG8gc3RtdF9mb3JhLgotCSogZ3JhcGhpdGUtcG9seS5oOiBJbmNsdWRlIGdy YXBoaXRlLWNsb29nLXV0aWwuaC4KLQotLS0tIGdjYy9NYWtlZmlsZS5pbi5qagkyMDExLTAxLTAz IDEzOjQ0OjE0LjE2MzkwMDkwMiArMDEwMAotKysrIGdjYy9NYWtlZmlsZS5pbgkyMDExLTAxLTA0 IDE3OjQ4OjUzLjU4ODc3NTkxMSArMDEwMAotQEAgLTk4NCw2ICs5ODQsOCBAQCBHQ0NfUExVR0lO X0ggPSBnY2MtcGx1Z2luLmggaGlnaGxldi1wbHVnCi0gUExVR0lOX0ggPSBwbHVnaW4uaCAkKEdD Q19QTFVHSU5fSCkKLSBQTFVHSU5fVkVSU0lPTl9IID0gcGx1Z2luLXZlcnNpb24uaCBjb25maWdh cmdzLmgKLSBMSUJGVU5DU19IID0gbGliZnVuY3MuaCAkKEhBU0hUQUJfSCkKLStHUkFQSElURV9D TE9PR19VVElMX0ggPSBncmFwaGl0ZS1jbG9vZy11dGlsLmggZ3JhcGhpdGUtY2xvb2ctY29tcGF0 LmgKLStHUkFQSElURV9QT0xZX0ggPSBncmFwaGl0ZS1wb2x5LmggJChHUkFQSElURV9DTE9PR19V VElMX0gpCi0gCi0gIwwKLSAjIE5vdyBmaWd1cmUgb3V0IGZyb20gdGhvc2UgdmFyaWFibGVzIGhv dyB0byBjb21waWxlIGFuZCBsaW5rLgotQEAgLTEwMzcsNyArMTAzOSw3IEBAIEJVSUxEX0xJQkRF UFM9ICQoQlVJTERfTElCSUJFUlRZKQotICMgYW5kIHRoZSBzeXN0ZW0ncyBpbnN0YWxsZWQgbGli cmFyaWVzLgotIExJQlMgPSBATElCU0AgJChDUFBMSUIpICQoTElCSU5UTCkgJChMSUJJQ09OVikg JChMSUJJQkVSVFkpICQoTElCREVDTlVNQkVSKSBcCi0gCSQoSE9TVF9MSUJTKQotLUJBQ0tFTkRM SUJTID0gJChDTE9PR0xJQlMpICQoUFBMTElCUykgJChHTVBMSUJTKSAkKFBMVUdJTkxJQlMpICQo SE9TVF9MSUJTKSBcCi0rQkFDS0VORExJQlMgPSAkKEdNUExJQlMpICQoaWYgJChDTE9PR0xJQlMp LC1sZGwpICQoUExVR0lOTElCUykgJChIT1NUX0xJQlMpIFwKLSAJJChaTElCKQotICMgQW55IHN5 c3RlbSBsaWJyYXJpZXMgbmVlZGVkIGp1c3QgZm9yIEdOQVQuCi0gU1lTTElCUyA9IEBHTkFUX0xJ QkVYQ0AKLUBAIC0yNjY4LDQwICsyNjcwLDQwIEBAIHNlc2UubyA6IHNlc2UuYyBzZXNlLmggJChD T05GSUdfSCkgJChTWVMKLSAgICAkKFRSRUVfRkxPV19IKSAkKENGR0xPT1BfSCkgJChUUkVFX0RB VEFfUkVGX0gpIHRyZWUtcGFzcy5oIHZhbHVlLXByb2YuaAotIGdyYXBoaXRlLm8gOiBncmFwaGl0 ZS5jICQoQ09ORklHX0gpICQoU1lTVEVNX0gpIGNvcmV0eXBlcy5oICQoRElBR05PU1RJQ19DT1JF X0gpIFwKLSAgICAkKFRSRUVfRkxPV19IKSAkKFRSRUVfRFVNUF9IKSAkKENGR0xPT1BfSCkgJChU UkVFX0RBVEFfUkVGX0gpIHNlc2UuaCBcCi0tICAgJChEQkdDTlRfSCkgZ3JhcGhpdGUtcHBsLmgg Z3JhcGhpdGUtcG9seS5oIGdyYXBoaXRlLXNjb3AtZGV0ZWN0aW9uLmggXAotKyAgICQoREJHQ05U X0gpIGdyYXBoaXRlLXBwbC5oICQoR1JBUEhJVEVfUE9MWV9IKSBncmFwaGl0ZS1zY29wLWRldGVj dGlvbi5oIFwKLSAgICBncmFwaGl0ZS1jbGFzdC10by1naW1wbGUuaCBncmFwaGl0ZS1zZXNlLXRv LXBvbHkuaAotIGdyYXBoaXRlLWJsb2NraW5nLm8gOiBncmFwaGl0ZS1ibG9ja2luZy5jICQoQ09O RklHX0gpICQoU1lTVEVNX0gpIFwKLSAgICBjb3JldHlwZXMuaCAkKFRSRUVfRkxPV19IKSAkKFRS RUVfRFVNUF9IKSAkKENGR0xPT1BfSCkgJChUUkVFX0RBVEFfUkVGX0gpIFwKLS0gICBzZXNlLmgg Z3JhcGhpdGUtcHBsLmggZ3JhcGhpdGUtcG9seS5oCi0rICAgc2VzZS5oIGdyYXBoaXRlLXBwbC5o ICQoR1JBUEhJVEVfUE9MWV9IKQotIGdyYXBoaXRlLWNsYXN0LXRvLWdpbXBsZS5vIDogZ3JhcGhp dGUtY2xhc3QtdG8tZ2ltcGxlLmMgJChDT05GSUdfSCkgXAotICAgICQoU1lTVEVNX0gpIGNvcmV0 eXBlcy5oICQoRElBR05PU1RJQ19DT1JFX0gpICQoVFJFRV9GTE9XX0gpICQoVFJFRV9EVU1QX0gp IFwKLS0gICAkKENGR0xPT1BfSCkgJChUUkVFX0RBVEFfUkVGX0gpIHNlc2UuaCBncmFwaGl0ZS1j bG9vZy11dGlsLmggXAotLSAgIGdyYXBoaXRlLXBwbC5oIGdyYXBoaXRlLXBvbHkuaCBncmFwaGl0 ZS1jbGFzdC10by1naW1wbGUuaCBcCi0rICAgJChDRkdMT09QX0gpICQoVFJFRV9EQVRBX1JFRl9I KSBzZXNlLmggJChHUkFQSElURV9DTE9PR19VVElMX0gpIFwKLSsgICBncmFwaGl0ZS1wcGwuaCAk KEdSQVBISVRFX1BPTFlfSCkgZ3JhcGhpdGUtY2xhc3QtdG8tZ2ltcGxlLmggXAotICAgIGdyYXBo aXRlLWRlcGVuZGVuY2VzLmggZ3JhcGhpdGUtY2xvb2ctY29tcGF0LmgKLSBncmFwaGl0ZS1jbG9v Zy11dGlsLm8gOiBncmFwaGl0ZS1jbG9vZy11dGlsLmMgJChDT05GSUdfSCkgJChTWVNURU1fSCkg XAotLSAgIGNvcmV0eXBlcy5oIGdyYXBoaXRlLWNsb29nLXV0aWwuaCBncmFwaGl0ZS1jbG9vZy1j b21wYXQuaAotKyAgIGNvcmV0eXBlcy5oICQoR1JBUEhJVEVfQ0xPT0dfVVRJTF9IKSBncmFwaGl0 ZS1jbG9vZy1jb21wYXQuaAotIGdyYXBoaXRlLWRlcGVuZGVuY2VzLm8gOiBncmFwaGl0ZS1kZXBl bmRlbmNlcy5jICQoQ09ORklHX0gpICQoU1lTVEVNX0gpIFwKLSAgICBjb3JldHlwZXMuaCAkKFRS RUVfRkxPV19IKSAkKFRSRUVfRFVNUF9IKSAkKENGR0xPT1BfSCkgJChUUkVFX0RBVEFfUkVGX0gp IFwKLS0gICBzZXNlLmggZ3JhcGhpdGUtcHBsLmggZ3JhcGhpdGUtcG9seS5oIGdyYXBoaXRlLWRl cGVuZGVuY2VzLmggXAotLSAgIGdyYXBoaXRlLWNsb29nLXV0aWwuaAotKyAgIHNlc2UuaCBncmFw aGl0ZS1wcGwuaCAkKEdSQVBISVRFX1BPTFlfSCkgZ3JhcGhpdGUtZGVwZW5kZW5jZXMuaCBcCi0r ICAgJChHUkFQSElURV9DTE9PR19VVElMX0gpCi0gZ3JhcGhpdGUtZmxhdHRlbmluZy5vIDogZ3Jh cGhpdGUtZmxhdHRlbmluZy5jICQoQ09ORklHX0gpICQoU1lTVEVNX0gpCVwKLSAgICBjb3JldHlw ZXMuaCAkKFRSRUVfRkxPV19IKSAkKFRSRUVfRFVNUF9IKSAkKENGR0xPT1BfSCkgJChUUkVFX0RB VEFfUkVGX0gpIFwKLS0gICBzZXNlLmggZ3JhcGhpdGUtcHBsLmggZ3JhcGhpdGUtcG9seS5oCi0r ICAgc2VzZS5oIGdyYXBoaXRlLXBwbC5oICQoR1JBUEhJVEVfUE9MWV9IKQotIGdyYXBoaXRlLWlu dGVyY2hhbmdlLm8gOiBncmFwaGl0ZS1pbnRlcmNoYW5nZS5jICQoQ09ORklHX0gpICQoU1lTVEVN X0gpIFwKLSAgICBjb3JldHlwZXMuaCAkKFRSRUVfRkxPV19IKSAkKFRSRUVfRFVNUF9IKSAkKENG R0xPT1BfSCkgJChUUkVFX0RBVEFfUkVGX0gpIFwKLS0gICBzZXNlLmggZ3JhcGhpdGUtcHBsLmgg Z3JhcGhpdGUtcG9seS5oCi0rICAgc2VzZS5oIGdyYXBoaXRlLXBwbC5oICQoR1JBUEhJVEVfUE9M WV9IKQotIGdyYXBoaXRlLXBvbHkubyA6IGdyYXBoaXRlLXBvbHkuYyAkKENPTkZJR19IKSAkKFNZ U1RFTV9IKSBjb3JldHlwZXMuaCBcCi0gICAgJChESUFHTk9TVElDX0NPUkVfSCkgJChUUkVFX0ZM T1dfSCkgJChUUkVFX0RVTVBfSCkgZ2ltcGxlLXByZXR0eS1wcmludC5oIFwKLS0gICAkKENGR0xP T1BfSCkgJChUUkVFX0RBVEFfUkVGX0gpIHNlc2UuaCBncmFwaGl0ZS1wcGwuaCBncmFwaGl0ZS1w b2x5LmggXAotLSAgIGdyYXBoaXRlLWRlcGVuZGVuY2VzLmggZ3JhcGhpdGUtY2xvb2ctdXRpbC5o Ci0rICAgJChDRkdMT09QX0gpICQoVFJFRV9EQVRBX1JFRl9IKSBzZXNlLmggZ3JhcGhpdGUtcHBs LmggJChHUkFQSElURV9QT0xZX0gpIFwKLSsgICBncmFwaGl0ZS1kZXBlbmRlbmNlcy5oICQoR1JB UEhJVEVfQ0xPT0dfVVRJTF9IKQotIGdyYXBoaXRlLXBwbC5vIDogZ3JhcGhpdGUtcHBsLmMgJChD T05GSUdfSCkgJChTWVNURU1fSCkgY29yZXR5cGVzLmggXAotLSAgIGdyYXBoaXRlLWNsb29nLXV0 aWwuaCBncmFwaGl0ZS1wcGwuaAotKyAgICQoR1JBUEhJVEVfQ0xPT0dfVVRJTF9IKSBncmFwaGl0 ZS1wcGwuaAotIGdyYXBoaXRlLXNjb3AtZGV0ZWN0aW9uLm8gOiBncmFwaGl0ZS1zY29wLWRldGVj dGlvbi5jICQoQ09ORklHX0gpICQoU1lTVEVNX0gpIFwKLSAgICBjb3JldHlwZXMuaCAkKFRSRUVf RkxPV19IKSAkKENGR0xPT1BfSCkgJChUUkVFX0RBVEFfUkVGX0gpICQoVFJFRV9QQVNTX0gpIFwK LS0gICBzZXNlLmggZ3JhcGhpdGUtcHBsLmggZ3JhcGhpdGUtcG9seS5oIGdyYXBoaXRlLXNjb3At ZGV0ZWN0aW9uLmgKLSsgICBzZXNlLmggZ3JhcGhpdGUtcHBsLmggJChHUkFQSElURV9QT0xZX0gp IGdyYXBoaXRlLXNjb3AtZGV0ZWN0aW9uLmgKLSBncmFwaGl0ZS1zZXNlLXRvLXBvbHkubyA6IGdy YXBoaXRlLXNlc2UtdG8tcG9seS5jICQoQ09ORklHX0gpIFwKLSAgICAkKFNZU1RFTV9IKSBjb3Jl dHlwZXMuaCAkKFRSRUVfRkxPV19IKSAkKFRSRUVfRFVNUF9IKSAkKENGR0xPT1BfSCkgXAotLSAg ICQoVFJFRV9EQVRBX1JFRl9IKSBkb213YWxrLmggc2VzZS5oIGdyYXBoaXRlLXBwbC5oIGdyYXBo aXRlLXBvbHkuaCBcCi0rICAgJChUUkVFX0RBVEFfUkVGX0gpIGRvbXdhbGsuaCBzZXNlLmggZ3Jh cGhpdGUtcHBsLmggJChHUkFQSElURV9QT0xZX0gpIFwKLSAgICBncmFwaGl0ZS1zZXNlLXRvLXBv bHkuaAotIHRyZWUtdmVjdC1sb29wLm86IHRyZWUtdmVjdC1sb29wLmMgJChDT05GSUdfSCkgJChT WVNURU1fSCkgY29yZXR5cGVzLmggXAotICAgICQoVE1fSCkgJChHR0NfSCkgJChUUkVFX0gpICQo QkFTSUNfQkxPQ0tfSCkgJChESUFHTk9TVElDX0gpICQoVFJFRV9GTE9XX0gpIFwKLUBAIC0zNDgy LDYgKzM0ODQsMTEgQEAgJChvdXRfb2JqZWN0X2ZpbGUpOiAkKG91dF9maWxlKSAkKENPTkZJRwot IAkkKENPTVBJTEVSKSAtYyAkKEFMTF9DT01QSUxFUkZMQUdTKSAkKEFMTF9DUFBGTEFHUykgXAot IAkJJChvdXRfZmlsZSkgJChPVVRQVVRfT1BUSU9OKQotIAotK2dyYXBoaXRlJS5vIDogXAotKyAg QUxMX0NGTEFHUyA6PSAtTyAkKGZpbHRlci1vdXQgLWZrZWVwLWlubGluZS1mdW5jdGlvbnMsICQo QUxMX0NGTEFHUykpCi0rZ3JhcGhpdGUubyA6IFwKLSsgIEFMTF9DRkxBR1MgOj0gLU8gJChmaWx0 ZXItb3V0IC1ma2VlcC1pbmxpbmUtZnVuY3Rpb25zLCAkKEFMTF9DRkxBR1MpKQotKwotICMgQnVp bGQgYXV4aWxpYXJ5IGZpbGVzIHRoYXQgc3VwcG9ydCBlY29mZiBmb3JtYXQuCi0gbWlwcy10Zmls ZTogbWlwcy10ZmlsZS5vIHZlcnNpb24ubyAkKExJQkRFUFMpCi0gCSQoTElOS0VSKSAkKExJTktF UkZMQUdTKSAkKExERkxBR1MpIC1vICRAIFwKLS0tLSBnY2MvZ3JhcGhpdGUtY2xvb2ctY29tcGF0 LmguamoJMjAxMS0wMS0wMyAxMjo1MzowNS4wMDAwMDAwMDAgKzAxMDAKLSsrKyBnY2MvZ3JhcGhp dGUtY2xvb2ctY29tcGF0LmgJMjAxMS0wMS0wNCAxNzozNDowOS44NTc3NTc1NDQgKzAxMDAKLUBA IC0yNzIsNCArMjcyLDI3NyBAQCBzdGF0aWMgaW5saW5lIGludCBjbG9vZ19tYXRyaXhfbnJvd3Mg KENsCi0gICAgcmV0dXJuIG0tPk5iUm93czsKLSB9Ci0gI2VuZGlmIC8qIENMT09HX09SRyAgKi8K LSsKLSsjaW5jbHVkZSA8ZGxmY24uaD4KLSsjaWYgUFBMX1ZFUlNJT05fTUFKT1IgPT0gMCAmJiBQ UExfVkVSU0lPTl9NSU5PUiA8IDExCi0rI2RlZmluZSBEWU5TWU1TX1BQTDExCi0rI2Vsc2UKLSsj ZGVmaW5lIERZTlNZTVNfUFBMMTEgXAotKyAgRFlOU1lNIChwcGxfbmV3X1BJUF9Qcm9ibGVtX2Zy b21fY29uc3RyYWludHMpOyBcCi0rICBEWU5TWU0gKHBwbF9QSVBfUHJvYmxlbV9pc19zYXRpc2Zp YWJsZSk7IFwKLSsgIERZTlNZTSAocHBsX2RlbGV0ZV9QSVBfUHJvYmxlbSk7Ci0rI2VuZGlmCi0r I2RlZmluZSBEWU5TWU1TIFwKLSsgIERZTlNZTSAoY2xvb2dfYmxvY2tfYWxsb2MpOyBcCi0rICBE WU5TWU0gKGNsb29nX2Jsb2NrX2xpc3RfZnJlZSk7IFwKLSsgIERZTlNZTSAoY2xvb2dfYmxvY2tf bGlzdF9tYWxsb2MpOyBcCi0rICBEWU5TWU0gKGNsb29nX2NsYXN0X2NyZWF0ZSk7IFwKLSsgIERZ TlNZTSAoY2xvb2dfY2xhc3RfZnJlZSk7IFwKLSsgIERZTlNZTSAoY2xvb2dfZG9tYWluX2ZyZWUp OyBcCi0rICBEWU5TWU0gKGNsb29nX2RvbWFpbl9tYXRyaXgyZG9tYWluKTsgXAotKyAgRFlOU1lN IChjbG9vZ19pbml0aWFsaXplKTsgXAotKyAgRFlOU1lNIChjbG9vZ19sb29wX21hbGxvYyk7IFwK LSsgIERZTlNZTSAoY2xvb2dfbWF0cml4X2FsbG9jKTsgXAotKyAgRFlOU1lNIChjbG9vZ19tYXRy aXhfY29weSk7IFwKLSsgIERZTlNZTSAoY2xvb2dfbWF0cml4X2ZyZWUpOyBcCi0rICBEWU5TWU0g KGNsb29nX21hdHJpeF9wcmludCk7IFwKLSsgIERZTlNZTSAoY2xvb2dfbmFtZXNfbWFsbG9jKTsg XAotKyAgRFlOU1lNIChjbG9vZ19uYW1lc19zY2FsYXJpemUpOyBcCi0rICBEWU5TWU0gKGNsb29n X29wdGlvbnNfZnJlZSk7IFwKLSsgIERZTlNZTSAoY2xvb2dfb3B0aW9uc19tYWxsb2MpOyBcCi0r ICBEWU5TWU0gKGNsb29nX3Byb2dyYW1fZHVtcF9jbG9vZyk7IFwKLSsgIERZTlNZTSAoY2xvb2df cHJvZ3JhbV9leHRyYWN0X3NjYWxhcnMpOyBcCi0rICBEWU5TWU0gKGNsb29nX3Byb2dyYW1fZnJl ZSk7IFwKLSsgIERZTlNZTSAoY2xvb2dfcHJvZ3JhbV9nZW5lcmF0ZSk7IFwKLSsgIERZTlNZTSAo Y2xvb2dfcHJvZ3JhbV9tYWxsb2MpOyBcCi0rICBEWU5TWU0gKGNsb29nX3Byb2dyYW1fcHJpbnQp OyBcCi0rICBEWU5TWU0gKGNsb29nX3Byb2dyYW1fc2NhdHRlcik7IFwKLSsgIERZTlNZTSAoY2xv b2dfc3RhdGVtZW50X2FsbG9jKTsgXAotKyAgRFlOU1lNIChjbG9vZ19kb21haW5fdW5pb24pOyBc Ci0rICBEWU5TWU0gKGNsb29nX21hdHJpeF9yZWFkKTsgXAotKyAgRFlOU1lNIChjbG9vZ19uZXdf cG9sKTsgXAotKyAgRFlOU1lNIChjbG9vZ192ZWN0b3JfZ2NkKTsgXAotKyAgRFlOU1lNIChwcGxf ZmluYWxpemUpOyBcCi0rICBEWU5TWU0gKHBwbF9hc3NpZ25fQ29lZmZpY2llbnRfZnJvbV9tcHpf dCk7IFwKLSsgIERZTlNZTSAocHBsX2Fzc2lnbl9MaW5lYXJfRXhwcmVzc2lvbl9mcm9tX0xpbmVh cl9FeHByZXNzaW9uKTsgXAotKyAgRFlOU1lNIChwcGxfQ29lZmZpY2llbnRfdG9fbXB6X3QpOyBc Ci0rICBEWU5TWU0gKHBwbF9Db25zdHJhaW50X2NvZWZmaWNpZW50KTsgXAotKyAgRFlOU1lNIChw cGxfQ29uc3RyYWludF9pbmhvbW9nZW5lb3VzX3Rlcm0pOyBcCi0rICBEWU5TWU0gKHBwbF9Db25z dHJhaW50X3NwYWNlX2RpbWVuc2lvbik7IFwKLSsgIERZTlNZTSAocHBsX0NvbnN0cmFpbnRfU3lz dGVtX2JlZ2luKTsgXAotKyAgRFlOU1lNIChwcGxfQ29uc3RyYWludF9TeXN0ZW1fY29uc3RfaXRl cmF0b3JfZGVyZWZlcmVuY2UpOyBcCi0rICBEWU5TWU0gKHBwbF9Db25zdHJhaW50X1N5c3RlbV9j b25zdF9pdGVyYXRvcl9lcXVhbF90ZXN0KTsgXAotKyAgRFlOU1lNIChwcGxfQ29uc3RyYWludF9T eXN0ZW1fY29uc3RfaXRlcmF0b3JfaW5jcmVtZW50KTsgXAotKyAgRFlOU1lNIChwcGxfQ29uc3Ry YWludF9TeXN0ZW1fZW5kKTsgXAotKyAgRFlOU1lNIChwcGxfQ29uc3RyYWludF9TeXN0ZW1faW5z ZXJ0X0NvbnN0cmFpbnQpOyBcCi0rICBEWU5TWU0gKHBwbF9Db25zdHJhaW50X1N5c3RlbV9zcGFj ZV9kaW1lbnNpb24pOyBcCi0rICBEWU5TWU0gKHBwbF9Db25zdHJhaW50X3R5cGUpOyBcCi0rICBE WU5TWU0gKHBwbF9kZWxldGVfQ29lZmZpY2llbnQpOyBcCi0rICBEWU5TWU0gKHBwbF9kZWxldGVf Q29uc3RyYWludCk7IFwKLSsgIERZTlNZTSAocHBsX2RlbGV0ZV9Db25zdHJhaW50X1N5c3RlbV9j b25zdF9pdGVyYXRvcik7IFwKLSsgIERZTlNZTSAocHBsX2RlbGV0ZV9MaW5lYXJfRXhwcmVzc2lv bik7IFwKLSsgIERZTlNZTSAocHBsX2RlbGV0ZV9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRy b24pOyBcCi0rICBEWU5TWU0gKHBwbF9kZWxldGVfUG9pbnRzZXRfUG93ZXJzZXRfQ19Qb2x5aGVk cm9uX2l0ZXJhdG9yKTsgXAotKyAgRFlOU1lNIChwcGxfZGVsZXRlX1BvbHloZWRyb24pOyBcCi0r ICBEWU5TWU0gKHBwbF9MaW5lYXJfRXhwcmVzc2lvbl9hZGRfdG9fY29lZmZpY2llbnQpOyBcCi0r ICBEWU5TWU0gKHBwbF9MaW5lYXJfRXhwcmVzc2lvbl9hZGRfdG9faW5ob21vZ2VuZW91cyk7IFwK LSsgIERZTlNZTSAocHBsX0xpbmVhcl9FeHByZXNzaW9uX2NvZWZmaWNpZW50KTsgXAotKyAgRFlO U1lNIChwcGxfTGluZWFyX0V4cHJlc3Npb25faW5ob21vZ2VuZW91c190ZXJtKTsgXAotKyAgRFlO U1lNIChwcGxfTGluZWFyX0V4cHJlc3Npb25fc3BhY2VfZGltZW5zaW9uKTsgXAotKyAgRFlOU1lN IChwcGxfbmV3X0NvZWZmaWNpZW50KTsgXAotKyAgRFlOU1lNIChwcGxfbmV3X0NvZWZmaWNpZW50 X2Zyb21fbXB6X3QpOyBcCi0rICBEWU5TWU0gKHBwbF9uZXdfQ29uc3RyYWludCk7IFwKLSsgIERZ TlNZTSAocHBsX25ld19Db25zdHJhaW50X1N5c3RlbSk7IFwKLSsgIERZTlNZTSAocHBsX25ld19D b25zdHJhaW50X1N5c3RlbV9jb25zdF9pdGVyYXRvcik7IFwKLSsgIERZTlNZTSAocHBsX25ld19D X1BvbHloZWRyb25fZnJvbV9DX1BvbHloZWRyb24pOyBcCi0rICBEWU5TWU0gKHBwbF9uZXdfQ19Q b2x5aGVkcm9uX2Zyb21fc3BhY2VfZGltZW5zaW9uKTsgXAotKyAgRFlOU1lNIChwcGxfbmV3X0Nf UG9seWhlZHJvbl9yZWN5Y2xlX0NvbnN0cmFpbnRfU3lzdGVtKTsgXAotKyAgRFlOU1lNIChwcGxf bmV3X0xpbmVhcl9FeHByZXNzaW9uKTsgXAotKyAgRFlOU1lNIChwcGxfbmV3X0xpbmVhcl9FeHBy ZXNzaW9uX2Zyb21fQ29uc3RyYWludCk7IFwKLSsgIERZTlNZTSAocHBsX25ld19MaW5lYXJfRXhw cmVzc2lvbl9mcm9tX0xpbmVhcl9FeHByZXNzaW9uKTsgXAotKyAgRFlOU1lNIChwcGxfbmV3X0xp bmVhcl9FeHByZXNzaW9uX3dpdGhfZGltZW5zaW9uKTsgXAotKyAgRFlOU1lNIChwcGxfbmV3X1Bv aW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl9mcm9tX0NfUG9seWhlZHJvbik7IFwKLSsgIERZ TlNZTSAocHBsX25ld19Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25fZnJvbV9Qb2ludHNl dF9Qb3dlcnNldF9DX1BvbHloZWRyb24pOyBcCi0rICBEWU5TWU0gKHBwbF9uZXdfUG9pbnRzZXRf UG93ZXJzZXRfQ19Qb2x5aGVkcm9uX2Zyb21fc3BhY2VfZGltZW5zaW9uKTsgXAotKyAgRFlOU1lN IChwcGxfbmV3X1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl9pdGVyYXRvcik7IFwKLSsg IERZTlNZTSAocHBsX1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl9hZGRfY29uc3RyYWlu dCk7IFwKLSsgIERZTlNZTSAocHBsX1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl9hZGRf c3BhY2VfZGltZW5zaW9uc19hbmRfZW1iZWQpOyBcCi0rICBEWU5TWU0gKHBwbF9Qb2ludHNldF9Q b3dlcnNldF9DX1BvbHloZWRyb25fZGlmZmVyZW5jZV9hc3NpZ24pOyBcCi0rICBEWU5TWU0gKHBw bF9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25faW50ZXJzZWN0aW9uX2Fzc2lnbik7IFwK LSsgIERZTlNZTSAocHBsX1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl9pc19lbXB0eSk7 IFwKLSsgIERZTlNZTSAocHBsX1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl9pdGVyYXRv cl9iZWdpbik7IFwKLSsgIERZTlNZTSAocHBsX1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJv bl9pdGVyYXRvcl9kZXJlZmVyZW5jZSk7IFwKLSsgIERZTlNZTSAocHBsX1BvaW50c2V0X1Bvd2Vy c2V0X0NfUG9seWhlZHJvbl9pdGVyYXRvcl9lbmQpOyBcCi0rICBEWU5TWU0gKHBwbF9Qb2ludHNl dF9Qb3dlcnNldF9DX1BvbHloZWRyb25faXRlcmF0b3JfZXF1YWxfdGVzdCk7IFwKLSsgIERZTlNZ TSAocHBsX1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl9pdGVyYXRvcl9pbmNyZW1lbnQp OyBcCi0rICBEWU5TWU0gKHBwbF9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25fbWFwX3Nw YWNlX2RpbWVuc2lvbnMpOyBcCi0rICBEWU5TWU0gKHBwbF9Qb2ludHNldF9Qb3dlcnNldF9DX1Bv bHloZWRyb25fbWF4aW1pemUpOyBcCi0rICBEWU5TWU0gKHBwbF9Qb2ludHNldF9Qb3dlcnNldF9D X1BvbHloZWRyb25fbWluaW1pemUpOyBcCi0rICBEWU5TWU0gKHBwbF9Qb2ludHNldF9Qb3dlcnNl dF9DX1BvbHloZWRyb25fcmVtb3ZlX3NwYWNlX2RpbWVuc2lvbnMpOyBcCi0rICBEWU5TWU0gKHBw bF9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25fc2l6ZSk7IFwKLSsgIERZTlNZTSAocHBs X1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl9zcGFjZV9kaW1lbnNpb24pOyBcCi0rICBE WU5TWU0gKHBwbF9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25fdXBwZXJfYm91bmRfYXNz aWduKTsgXAotKyAgRFlOU1lNIChwcGxfUG9seWhlZHJvbl9hZGRfY29uc3RyYWludCk7IFwKLSsg IERZTlNZTSAocHBsX1BvbHloZWRyb25fYWRkX2NvbnN0cmFpbnRzKTsgXAotKyAgRFlOU1lNIChw cGxfUG9seWhlZHJvbl9hZGRfc3BhY2VfZGltZW5zaW9uc19hbmRfZW1iZWQpOyBcCi0rICBEWU5T WU0gKHBwbF9Qb2x5aGVkcm9uX2dldF9jb25zdHJhaW50cyk7IFwKLSsgIERZTlNZTSAocHBsX1Bv bHloZWRyb25fbWFwX3NwYWNlX2RpbWVuc2lvbnMpOyBcCi0rICBEWU5TWU0gKHBwbF9Qb2x5aGVk cm9uX3JlbW92ZV9zcGFjZV9kaW1lbnNpb25zKTsgXAotKyAgRFlOU1lNIChwcGxfUG9seWhlZHJv bl9zcGFjZV9kaW1lbnNpb24pOyBcCi0rICBEWU5TWU0gKHBwbF9zdWJ0cmFjdF9MaW5lYXJfRXhw cmVzc2lvbl9mcm9tX0xpbmVhcl9FeHByZXNzaW9uKTsgXAotKyAgRFlOU1lNIChwcHJpbnQpOyBc Ci0rICBEWU5TWU0gKHN0bXRfYmxvY2spOyBcCi0rICBEWU5TWU0gKHN0bXRfZm9yKTsgXAotKyAg RFlOU1lNIChzdG10X2d1YXJkKTsgXAotKyAgRFlOU1lNIChzdG10X3Jvb3QpOyBcCi0rICBEWU5T WU0gKHN0bXRfdXNlcik7IFwKLSsgIERZTlNZTSAocHBsX2RlbGV0ZV9Db25zdHJhaW50X1N5c3Rl bSk7IFwKLSsgIERZTlNZTSAocHBsX2luaXRpYWxpemUpOyBcCi0rICBEWU5TWU0gKHBwbF9uZXdf Q29uc3RyYWludF9TeXN0ZW1fZnJvbV9Db25zdHJhaW50KTsgXAotKyAgRFlOU1lNIChwcGxfbmV3 X0NfUG9seWhlZHJvbl9mcm9tX0NvbnN0cmFpbnRfU3lzdGVtKTsgXAotKyAgRFlOU1lNIChwcGxf UG9seWhlZHJvbl9hZmZpbmVfaW1hZ2UpOyBcCi0rICBEWU5TWU0gKHBwbF9pb19mcHJpbnRfUG9p bnRzZXRfUG93ZXJzZXRfQ19Qb2x5aGVkcm9uKTsgXAotKyAgRFlOU1lNU19QUEwxMQotK2V4dGVy biBzdHJ1Y3QKLSt7Ci0rICBib29sIGluaXRlZDsKLSsgIHZvaWQgKmg7Ci0rI2RlZmluZSBEWU5T WU0oeCkgX190eXBlb2YgKHgpICpwXyMjeAotKyAgRFlOU1lNUwotKyN1bmRlZiBEWU5TWU0KLSt9 IGNsb29nX3BvaW50ZXJzX187Ci0rCi0rI2RlZmluZSBjbG9vZ19ibG9ja19hbGxvYyAoKmNsb29n X3BvaW50ZXJzX18ucF9jbG9vZ19ibG9ja19hbGxvYykKLSsjZGVmaW5lIGNsb29nX2Jsb2NrX2xp c3RfZnJlZSAoKmNsb29nX3BvaW50ZXJzX18ucF9jbG9vZ19ibG9ja19saXN0X2ZyZWUpCi0rI2Rl ZmluZSBjbG9vZ19ibG9ja19saXN0X21hbGxvYyAoKmNsb29nX3BvaW50ZXJzX18ucF9jbG9vZ19i bG9ja19saXN0X21hbGxvYykKLSsjZGVmaW5lIGNsb29nX2NsYXN0X2NyZWF0ZSAoKmNsb29nX3Bv aW50ZXJzX18ucF9jbG9vZ19jbGFzdF9jcmVhdGUpCi0rI2RlZmluZSBjbG9vZ19jbGFzdF9mcmVl ICgqY2xvb2dfcG9pbnRlcnNfXy5wX2Nsb29nX2NsYXN0X2ZyZWUpCi0rI2RlZmluZSBjbG9vZ19k b21haW5fZnJlZSAoKmNsb29nX3BvaW50ZXJzX18ucF9jbG9vZ19kb21haW5fZnJlZSkKLSsjZGVm aW5lIGNsb29nX2RvbWFpbl9tYXRyaXgyZG9tYWluICgqY2xvb2dfcG9pbnRlcnNfXy5wX2Nsb29n X2RvbWFpbl9tYXRyaXgyZG9tYWluKQotKyNkZWZpbmUgY2xvb2dfaW5pdGlhbGl6ZSAoKmNsb29n X3BvaW50ZXJzX18ucF9jbG9vZ19pbml0aWFsaXplKQotKyNpZm5kZWYgQ0xPT0dfT1JHCi0rI3Vu ZGVmIGNsb29nX2xvb3BfbWFsbG9jCi0rI2RlZmluZSBjbG9vZ19sb29wX21hbGxvYyhTVEFURSkg KCpjbG9vZ19wb2ludGVyc19fLnBfY2xvb2dfbG9vcF9tYWxsb2MpICgpCi0rI2Vsc2UKLSsjZGVm aW5lIGNsb29nX2xvb3BfbWFsbG9jICgqY2xvb2dfcG9pbnRlcnNfXy5wX2Nsb29nX2xvb3BfbWFs bG9jKQotKyNlbmRpZgotKyNkZWZpbmUgY2xvb2dfbWF0cml4X2FsbG9jICgqY2xvb2dfcG9pbnRl cnNfXy5wX2Nsb29nX21hdHJpeF9hbGxvYykKLSsjZGVmaW5lIGNsb29nX21hdHJpeF9jb3B5ICgq Y2xvb2dfcG9pbnRlcnNfXy5wX2Nsb29nX21hdHJpeF9jb3B5KQotKyNkZWZpbmUgY2xvb2dfbWF0 cml4X2ZyZWUgKCpjbG9vZ19wb2ludGVyc19fLnBfY2xvb2dfbWF0cml4X2ZyZWUpCi0rI2RlZmlu ZSBjbG9vZ19tYXRyaXhfcHJpbnQgKCpjbG9vZ19wb2ludGVyc19fLnBfY2xvb2dfbWF0cml4X3By aW50KQotKyNkZWZpbmUgY2xvb2dfbmFtZXNfbWFsbG9jICgqY2xvb2dfcG9pbnRlcnNfXy5wX2Ns b29nX25hbWVzX21hbGxvYykKLSsjZGVmaW5lIGNsb29nX25hbWVzX3NjYWxhcml6ZSAoKmNsb29n X3BvaW50ZXJzX18ucF9jbG9vZ19uYW1lc19zY2FsYXJpemUpCi0rI2RlZmluZSBjbG9vZ19vcHRp b25zX2ZyZWUgKCpjbG9vZ19wb2ludGVyc19fLnBfY2xvb2dfb3B0aW9uc19mcmVlKQotKyNpZm5k ZWYgQ0xPT0dfT1JHCi0rI3VuZGVmIGNsb29nX29wdGlvbnNfbWFsbG9jCi0rI2RlZmluZSBjbG9v Z19vcHRpb25zX21hbGxvYyhTVEFURSkgKCpjbG9vZ19wb2ludGVyc19fLnBfY2xvb2dfb3B0aW9u c19tYWxsb2MpICgpCi0rI3VuZGVmIGNsb29nX3Byb2dyYW1fZHVtcF9jbG9vZwotKyNkZWZpbmUg Y2xvb2dfcHJvZ3JhbV9kdW1wX2Nsb29nKERVTVBGSUxFLCBQUk9HUkFNLCBTQ0FUVEVSSU5HTElT VCkgXAotKyAgKCpjbG9vZ19wb2ludGVyc19fLnBfY2xvb2dfcHJvZ3JhbV9kdW1wX2Nsb29nKSAo RFVNUEZJTEUsIFBST0dSQU0pCi0rI3VuZGVmIGNsb29nX3Byb2dyYW1fZXh0cmFjdF9zY2FsYXJz Ci0rI2RlZmluZSBjbG9vZ19wcm9ncmFtX2V4dHJhY3Rfc2NhbGFycyhQUk9HLCBTQ0FUVCwgT1BU KSBcCi0rICAoKmNsb29nX3BvaW50ZXJzX18ucF9jbG9vZ19wcm9ncmFtX2V4dHJhY3Rfc2NhbGFy cykgKFBST0csIFNDQVRUKQotKyNlbHNlCi0rI2RlZmluZSBjbG9vZ19vcHRpb25zX21hbGxvYyAo KmNsb29nX3BvaW50ZXJzX18ucF9jbG9vZ19vcHRpb25zX21hbGxvYykKLSsjZGVmaW5lIGNsb29n X3Byb2dyYW1fZHVtcF9jbG9vZyAoKmNsb29nX3BvaW50ZXJzX18ucF9jbG9vZ19wcm9ncmFtX2R1 bXBfY2xvb2cpCi0rI2RlZmluZSBjbG9vZ19wcm9ncmFtX2V4dHJhY3Rfc2NhbGFycyAoKmNsb29n X3BvaW50ZXJzX18ucF9jbG9vZ19wcm9ncmFtX2V4dHJhY3Rfc2NhbGFycykKLSsjZW5kaWYKLSsj ZGVmaW5lIGNsb29nX3Byb2dyYW1fZnJlZSAoKmNsb29nX3BvaW50ZXJzX18ucF9jbG9vZ19wcm9n cmFtX2ZyZWUpCi0rI2RlZmluZSBjbG9vZ19wcm9ncmFtX2dlbmVyYXRlICgqY2xvb2dfcG9pbnRl cnNfXy5wX2Nsb29nX3Byb2dyYW1fZ2VuZXJhdGUpCi0rI2RlZmluZSBjbG9vZ19wcm9ncmFtX21h bGxvYyAoKmNsb29nX3BvaW50ZXJzX18ucF9jbG9vZ19wcm9ncmFtX21hbGxvYykKLSsjZGVmaW5l IGNsb29nX3Byb2dyYW1fcHJpbnQgKCpjbG9vZ19wb2ludGVyc19fLnBfY2xvb2dfcHJvZ3JhbV9w cmludCkKLSsjaWZuZGVmIENMT09HX09SRwotKyN1bmRlZiBjbG9vZ19wcm9ncmFtX3NjYXR0ZXIK LSsjZGVmaW5lIGNsb29nX3Byb2dyYW1fc2NhdHRlcihQUk9HLCBTQ0FUVCwgT1BUKSBcCi0rICAo KmNsb29nX3BvaW50ZXJzX18ucF9jbG9vZ19wcm9ncmFtX3NjYXR0ZXIpIChQUk9HLCBTQ0FUVCkK LSsjdW5kZWYgY2xvb2dfc3RhdGVtZW50X2FsbG9jCi0rI2RlZmluZSBjbG9vZ19zdGF0ZW1lbnRf YWxsb2MoU1RBVEUsIElOREVYKSBcCi0rICAoKmNsb29nX3BvaW50ZXJzX18ucF9jbG9vZ19zdGF0 ZW1lbnRfYWxsb2MpIChJTkRFWCkKLSsjZWxzZQotKyNkZWZpbmUgY2xvb2dfcHJvZ3JhbV9zY2F0 dGVyICgqY2xvb2dfcG9pbnRlcnNfXy5wX2Nsb29nX3Byb2dyYW1fc2NhdHRlcikKLSsjZGVmaW5l IGNsb29nX3N0YXRlbWVudF9hbGxvYyAoKmNsb29nX3BvaW50ZXJzX18ucF9jbG9vZ19zdGF0ZW1l bnRfYWxsb2MpCi0rI2VuZGlmCi0rI2RlZmluZSBjbG9vZ19kb21haW5fdW5pb24gKCpjbG9vZ19w b2ludGVyc19fLnBfY2xvb2dfZG9tYWluX3VuaW9uKQotKyNkZWZpbmUgY2xvb2dfbWF0cml4X3Jl YWQgKCpjbG9vZ19wb2ludGVyc19fLnBfY2xvb2dfbWF0cml4X3JlYWQpCi0rI2RlZmluZSBjbG9v Z19uZXdfcG9sICgqY2xvb2dfcG9pbnRlcnNfXy5wX2Nsb29nX25ld19wb2wpCi0rI2RlZmluZSBj bG9vZ192ZWN0b3JfZ2NkICgqY2xvb2dfcG9pbnRlcnNfXy5wX2Nsb29nX3ZlY3Rvcl9nY2QpCi0r I2RlZmluZSBwcGxfZmluYWxpemUgKCpjbG9vZ19wb2ludGVyc19fLnBfcHBsX2ZpbmFsaXplKQot KyNkZWZpbmUgcHBsX2Fzc2lnbl9Db2VmZmljaWVudF9mcm9tX21wel90ICgqY2xvb2dfcG9pbnRl cnNfXy5wX3BwbF9hc3NpZ25fQ29lZmZpY2llbnRfZnJvbV9tcHpfdCkKLSsjZGVmaW5lIHBwbF9h c3NpZ25fTGluZWFyX0V4cHJlc3Npb25fZnJvbV9MaW5lYXJfRXhwcmVzc2lvbiAoKmNsb29nX3Bv aW50ZXJzX18ucF9wcGxfYXNzaWduX0xpbmVhcl9FeHByZXNzaW9uX2Zyb21fTGluZWFyX0V4cHJl c3Npb24pCi0rI2RlZmluZSBwcGxfQ29lZmZpY2llbnRfdG9fbXB6X3QgKCpjbG9vZ19wb2ludGVy c19fLnBfcHBsX0NvZWZmaWNpZW50X3RvX21wel90KQotKyNkZWZpbmUgcHBsX0NvbnN0cmFpbnRf Y29lZmZpY2llbnQgKCpjbG9vZ19wb2ludGVyc19fLnBfcHBsX0NvbnN0cmFpbnRfY29lZmZpY2ll bnQpCi0rI2RlZmluZSBwcGxfQ29uc3RyYWludF9pbmhvbW9nZW5lb3VzX3Rlcm0gKCpjbG9vZ19w b2ludGVyc19fLnBfcHBsX0NvbnN0cmFpbnRfaW5ob21vZ2VuZW91c190ZXJtKQotKyNkZWZpbmUg cHBsX0NvbnN0cmFpbnRfc3BhY2VfZGltZW5zaW9uICgqY2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9D b25zdHJhaW50X3NwYWNlX2RpbWVuc2lvbikKLSsjZGVmaW5lIHBwbF9Db25zdHJhaW50X1N5c3Rl bV9iZWdpbiAoKmNsb29nX3BvaW50ZXJzX18ucF9wcGxfQ29uc3RyYWludF9TeXN0ZW1fYmVnaW4p Ci0rI2RlZmluZSBwcGxfQ29uc3RyYWludF9TeXN0ZW1fY29uc3RfaXRlcmF0b3JfZGVyZWZlcmVu Y2UgKCpjbG9vZ19wb2ludGVyc19fLnBfcHBsX0NvbnN0cmFpbnRfU3lzdGVtX2NvbnN0X2l0ZXJh dG9yX2RlcmVmZXJlbmNlKQotKyNkZWZpbmUgcHBsX0NvbnN0cmFpbnRfU3lzdGVtX2NvbnN0X2l0 ZXJhdG9yX2VxdWFsX3Rlc3QgKCpjbG9vZ19wb2ludGVyc19fLnBfcHBsX0NvbnN0cmFpbnRfU3lz dGVtX2NvbnN0X2l0ZXJhdG9yX2VxdWFsX3Rlc3QpCi0rI2RlZmluZSBwcGxfQ29uc3RyYWludF9T eXN0ZW1fY29uc3RfaXRlcmF0b3JfaW5jcmVtZW50ICgqY2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9D b25zdHJhaW50X1N5c3RlbV9jb25zdF9pdGVyYXRvcl9pbmNyZW1lbnQpCi0rI2RlZmluZSBwcGxf Q29uc3RyYWludF9TeXN0ZW1fZW5kICgqY2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9Db25zdHJhaW50 X1N5c3RlbV9lbmQpCi0rI2RlZmluZSBwcGxfQ29uc3RyYWludF9TeXN0ZW1faW5zZXJ0X0NvbnN0 cmFpbnQgKCpjbG9vZ19wb2ludGVyc19fLnBfcHBsX0NvbnN0cmFpbnRfU3lzdGVtX2luc2VydF9D b25zdHJhaW50KQotKyNkZWZpbmUgcHBsX0NvbnN0cmFpbnRfU3lzdGVtX3NwYWNlX2RpbWVuc2lv biAoKmNsb29nX3BvaW50ZXJzX18ucF9wcGxfQ29uc3RyYWludF9TeXN0ZW1fc3BhY2VfZGltZW5z aW9uKQotKyNkZWZpbmUgcHBsX0NvbnN0cmFpbnRfdHlwZSAoKmNsb29nX3BvaW50ZXJzX18ucF9w cGxfQ29uc3RyYWludF90eXBlKQotKyNkZWZpbmUgcHBsX2RlbGV0ZV9Db2VmZmljaWVudCAoKmNs b29nX3BvaW50ZXJzX18ucF9wcGxfZGVsZXRlX0NvZWZmaWNpZW50KQotKyNkZWZpbmUgcHBsX2Rl bGV0ZV9Db25zdHJhaW50ICgqY2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9kZWxldGVfQ29uc3RyYWlu dCkKLSsjZGVmaW5lIHBwbF9kZWxldGVfQ29uc3RyYWludF9TeXN0ZW1fY29uc3RfaXRlcmF0b3Ig KCpjbG9vZ19wb2ludGVyc19fLnBfcHBsX2RlbGV0ZV9Db25zdHJhaW50X1N5c3RlbV9jb25zdF9p dGVyYXRvcikKLSsjZGVmaW5lIHBwbF9kZWxldGVfTGluZWFyX0V4cHJlc3Npb24gKCpjbG9vZ19w b2ludGVyc19fLnBfcHBsX2RlbGV0ZV9MaW5lYXJfRXhwcmVzc2lvbikKLSsjZGVmaW5lIHBwbF9k ZWxldGVfUG9pbnRzZXRfUG93ZXJzZXRfQ19Qb2x5aGVkcm9uICgqY2xvb2dfcG9pbnRlcnNfXy5w X3BwbF9kZWxldGVfUG9pbnRzZXRfUG93ZXJzZXRfQ19Qb2x5aGVkcm9uKQotKyNkZWZpbmUgcHBs X2RlbGV0ZV9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25faXRlcmF0b3IgKCpjbG9vZ19w b2ludGVyc19fLnBfcHBsX2RlbGV0ZV9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25faXRl cmF0b3IpCi0rI2RlZmluZSBwcGxfZGVsZXRlX1BvbHloZWRyb24gKCpjbG9vZ19wb2ludGVyc19f LnBfcHBsX2RlbGV0ZV9Qb2x5aGVkcm9uKQotKyNkZWZpbmUgcHBsX0xpbmVhcl9FeHByZXNzaW9u X2FkZF90b19jb2VmZmljaWVudCAoKmNsb29nX3BvaW50ZXJzX18ucF9wcGxfTGluZWFyX0V4cHJl c3Npb25fYWRkX3RvX2NvZWZmaWNpZW50KQotKyNkZWZpbmUgcHBsX0xpbmVhcl9FeHByZXNzaW9u X2FkZF90b19pbmhvbW9nZW5lb3VzICgqY2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9MaW5lYXJfRXhw cmVzc2lvbl9hZGRfdG9faW5ob21vZ2VuZW91cykKLSsjZGVmaW5lIHBwbF9MaW5lYXJfRXhwcmVz c2lvbl9jb2VmZmljaWVudCAoKmNsb29nX3BvaW50ZXJzX18ucF9wcGxfTGluZWFyX0V4cHJlc3Np b25fY29lZmZpY2llbnQpCi0rI2RlZmluZSBwcGxfTGluZWFyX0V4cHJlc3Npb25faW5ob21vZ2Vu ZW91c190ZXJtICgqY2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9MaW5lYXJfRXhwcmVzc2lvbl9pbmhv bW9nZW5lb3VzX3Rlcm0pCi0rI2RlZmluZSBwcGxfTGluZWFyX0V4cHJlc3Npb25fc3BhY2VfZGlt ZW5zaW9uICgqY2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9MaW5lYXJfRXhwcmVzc2lvbl9zcGFjZV9k aW1lbnNpb24pCi0rI2RlZmluZSBwcGxfbmV3X0NvZWZmaWNpZW50ICgqY2xvb2dfcG9pbnRlcnNf Xy5wX3BwbF9uZXdfQ29lZmZpY2llbnQpCi0rI2RlZmluZSBwcGxfbmV3X0NvZWZmaWNpZW50X2Zy b21fbXB6X3QgKCpjbG9vZ19wb2ludGVyc19fLnBfcHBsX25ld19Db2VmZmljaWVudF9mcm9tX21w el90KQotKyNkZWZpbmUgcHBsX25ld19Db25zdHJhaW50ICgqY2xvb2dfcG9pbnRlcnNfXy5wX3Bw bF9uZXdfQ29uc3RyYWludCkKLSsjZGVmaW5lIHBwbF9uZXdfQ29uc3RyYWludF9TeXN0ZW0gKCpj bG9vZ19wb2ludGVyc19fLnBfcHBsX25ld19Db25zdHJhaW50X1N5c3RlbSkKLSsjZGVmaW5lIHBw bF9uZXdfQ29uc3RyYWludF9TeXN0ZW1fY29uc3RfaXRlcmF0b3IgKCpjbG9vZ19wb2ludGVyc19f LnBfcHBsX25ld19Db25zdHJhaW50X1N5c3RlbV9jb25zdF9pdGVyYXRvcikKLSsjZGVmaW5lIHBw bF9uZXdfQ19Qb2x5aGVkcm9uX2Zyb21fQ19Qb2x5aGVkcm9uICgqY2xvb2dfcG9pbnRlcnNfXy5w X3BwbF9uZXdfQ19Qb2x5aGVkcm9uX2Zyb21fQ19Qb2x5aGVkcm9uKQotKyNkZWZpbmUgcHBsX25l d19DX1BvbHloZWRyb25fZnJvbV9zcGFjZV9kaW1lbnNpb24gKCpjbG9vZ19wb2ludGVyc19fLnBf cHBsX25ld19DX1BvbHloZWRyb25fZnJvbV9zcGFjZV9kaW1lbnNpb24pCi0rI2RlZmluZSBwcGxf bmV3X0NfUG9seWhlZHJvbl9yZWN5Y2xlX0NvbnN0cmFpbnRfU3lzdGVtICgqY2xvb2dfcG9pbnRl cnNfXy5wX3BwbF9uZXdfQ19Qb2x5aGVkcm9uX3JlY3ljbGVfQ29uc3RyYWludF9TeXN0ZW0pCi0r I2RlZmluZSBwcGxfbmV3X0xpbmVhcl9FeHByZXNzaW9uICgqY2xvb2dfcG9pbnRlcnNfXy5wX3Bw bF9uZXdfTGluZWFyX0V4cHJlc3Npb24pCi0rI2RlZmluZSBwcGxfbmV3X0xpbmVhcl9FeHByZXNz aW9uX2Zyb21fQ29uc3RyYWludCAoKmNsb29nX3BvaW50ZXJzX18ucF9wcGxfbmV3X0xpbmVhcl9F eHByZXNzaW9uX2Zyb21fQ29uc3RyYWludCkKLSsjZGVmaW5lIHBwbF9uZXdfTGluZWFyX0V4cHJl c3Npb25fZnJvbV9MaW5lYXJfRXhwcmVzc2lvbiAoKmNsb29nX3BvaW50ZXJzX18ucF9wcGxfbmV3 X0xpbmVhcl9FeHByZXNzaW9uX2Zyb21fTGluZWFyX0V4cHJlc3Npb24pCi0rI2RlZmluZSBwcGxf bmV3X0xpbmVhcl9FeHByZXNzaW9uX3dpdGhfZGltZW5zaW9uICgqY2xvb2dfcG9pbnRlcnNfXy5w X3BwbF9uZXdfTGluZWFyX0V4cHJlc3Npb25fd2l0aF9kaW1lbnNpb24pCi0rI2RlZmluZSBwcGxf bmV3X1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl9mcm9tX0NfUG9seWhlZHJvbiAoKmNs b29nX3BvaW50ZXJzX18ucF9wcGxfbmV3X1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl9m cm9tX0NfUG9seWhlZHJvbikKLSsjZGVmaW5lIHBwbF9uZXdfUG9pbnRzZXRfUG93ZXJzZXRfQ19Q b2x5aGVkcm9uX2Zyb21fUG9pbnRzZXRfUG93ZXJzZXRfQ19Qb2x5aGVkcm9uICgqY2xvb2dfcG9p bnRlcnNfXy5wX3BwbF9uZXdfUG9pbnRzZXRfUG93ZXJzZXRfQ19Qb2x5aGVkcm9uX2Zyb21fUG9p bnRzZXRfUG93ZXJzZXRfQ19Qb2x5aGVkcm9uKQotKyNkZWZpbmUgcHBsX25ld19Qb2ludHNldF9Q b3dlcnNldF9DX1BvbHloZWRyb25fZnJvbV9zcGFjZV9kaW1lbnNpb24gKCpjbG9vZ19wb2ludGVy c19fLnBfcHBsX25ld19Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25fZnJvbV9zcGFjZV9k aW1lbnNpb24pCi0rI2RlZmluZSBwcGxfbmV3X1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJv bl9pdGVyYXRvciAoKmNsb29nX3BvaW50ZXJzX18ucF9wcGxfbmV3X1BvaW50c2V0X1Bvd2Vyc2V0 X0NfUG9seWhlZHJvbl9pdGVyYXRvcikKLSsjZGVmaW5lIHBwbF9Qb2ludHNldF9Qb3dlcnNldF9D X1BvbHloZWRyb25fYWRkX2NvbnN0cmFpbnQgKCpjbG9vZ19wb2ludGVyc19fLnBfcHBsX1BvaW50 c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl9hZGRfY29uc3RyYWludCkKLSsjZGVmaW5lIHBwbF9Q b2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25fYWRkX3NwYWNlX2RpbWVuc2lvbnNfYW5kX2Vt YmVkICgqY2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRy b25fYWRkX3NwYWNlX2RpbWVuc2lvbnNfYW5kX2VtYmVkKQotKyNkZWZpbmUgcHBsX1BvaW50c2V0 X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl9kaWZmZXJlbmNlX2Fzc2lnbiAoKmNsb29nX3BvaW50ZXJz X18ucF9wcGxfUG9pbnRzZXRfUG93ZXJzZXRfQ19Qb2x5aGVkcm9uX2RpZmZlcmVuY2VfYXNzaWdu KQotKyNkZWZpbmUgcHBsX1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl9pbnRlcnNlY3Rp b25fYXNzaWduICgqY2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9Qb2ludHNldF9Qb3dlcnNldF9DX1Bv bHloZWRyb25faW50ZXJzZWN0aW9uX2Fzc2lnbikKLSsjZGVmaW5lIHBwbF9Qb2ludHNldF9Qb3dl cnNldF9DX1BvbHloZWRyb25faXNfZW1wdHkgKCpjbG9vZ19wb2ludGVyc19fLnBfcHBsX1BvaW50 c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl9pc19lbXB0eSkKLSsjZGVmaW5lIHBwbF9Qb2ludHNl dF9Qb3dlcnNldF9DX1BvbHloZWRyb25faXRlcmF0b3JfYmVnaW4gKCpjbG9vZ19wb2ludGVyc19f LnBfcHBsX1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl9pdGVyYXRvcl9iZWdpbikKLSsj ZGVmaW5lIHBwbF9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25faXRlcmF0b3JfZGVyZWZl cmVuY2UgKCpjbG9vZ19wb2ludGVyc19fLnBfcHBsX1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhl ZHJvbl9pdGVyYXRvcl9kZXJlZmVyZW5jZSkKLSsjZGVmaW5lIHBwbF9Qb2ludHNldF9Qb3dlcnNl dF9DX1BvbHloZWRyb25faXRlcmF0b3JfZW5kICgqY2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9Qb2lu dHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25faXRlcmF0b3JfZW5kKQotKyNkZWZpbmUgcHBsX1Bv aW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl9pdGVyYXRvcl9lcXVhbF90ZXN0ICgqY2xvb2df cG9pbnRlcnNfXy5wX3BwbF9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25faXRlcmF0b3Jf ZXF1YWxfdGVzdCkKLSsjZGVmaW5lIHBwbF9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25f aXRlcmF0b3JfaW5jcmVtZW50ICgqY2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9Qb2ludHNldF9Qb3dl cnNldF9DX1BvbHloZWRyb25faXRlcmF0b3JfaW5jcmVtZW50KQotKyNkZWZpbmUgcHBsX1BvaW50 c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl9tYXBfc3BhY2VfZGltZW5zaW9ucyAoKmNsb29nX3Bv aW50ZXJzX18ucF9wcGxfUG9pbnRzZXRfUG93ZXJzZXRfQ19Qb2x5aGVkcm9uX21hcF9zcGFjZV9k aW1lbnNpb25zKQotKyNkZWZpbmUgcHBsX1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl9t YXhpbWl6ZSAoKmNsb29nX3BvaW50ZXJzX18ucF9wcGxfUG9pbnRzZXRfUG93ZXJzZXRfQ19Qb2x5 aGVkcm9uX21heGltaXplKQotKyNkZWZpbmUgcHBsX1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhl ZHJvbl9taW5pbWl6ZSAoKmNsb29nX3BvaW50ZXJzX18ucF9wcGxfUG9pbnRzZXRfUG93ZXJzZXRf Q19Qb2x5aGVkcm9uX21pbmltaXplKQotKyNkZWZpbmUgcHBsX1BvaW50c2V0X1Bvd2Vyc2V0X0Nf UG9seWhlZHJvbl9yZW1vdmVfc3BhY2VfZGltZW5zaW9ucyAoKmNsb29nX3BvaW50ZXJzX18ucF9w cGxfUG9pbnRzZXRfUG93ZXJzZXRfQ19Qb2x5aGVkcm9uX3JlbW92ZV9zcGFjZV9kaW1lbnNpb25z KQotKyNkZWZpbmUgcHBsX1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl9zaXplICgqY2xv b2dfcG9pbnRlcnNfXy5wX3BwbF9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25fc2l6ZSkK LSsjZGVmaW5lIHBwbF9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25fc3BhY2VfZGltZW5z aW9uICgqY2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRy b25fc3BhY2VfZGltZW5zaW9uKQotKyNkZWZpbmUgcHBsX1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9s eWhlZHJvbl91cHBlcl9ib3VuZF9hc3NpZ24gKCpjbG9vZ19wb2ludGVyc19fLnBfcHBsX1BvaW50 c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl91cHBlcl9ib3VuZF9hc3NpZ24pCi0rI2RlZmluZSBw cGxfUG9seWhlZHJvbl9hZGRfY29uc3RyYWludCAoKmNsb29nX3BvaW50ZXJzX18ucF9wcGxfUG9s eWhlZHJvbl9hZGRfY29uc3RyYWludCkKLSsjZGVmaW5lIHBwbF9Qb2x5aGVkcm9uX2FkZF9jb25z dHJhaW50cyAoKmNsb29nX3BvaW50ZXJzX18ucF9wcGxfUG9seWhlZHJvbl9hZGRfY29uc3RyYWlu dHMpCi0rI2RlZmluZSBwcGxfUG9seWhlZHJvbl9hZGRfc3BhY2VfZGltZW5zaW9uc19hbmRfZW1i ZWQgKCpjbG9vZ19wb2ludGVyc19fLnBfcHBsX1BvbHloZWRyb25fYWRkX3NwYWNlX2RpbWVuc2lv bnNfYW5kX2VtYmVkKQotKyNkZWZpbmUgcHBsX1BvbHloZWRyb25fZ2V0X2NvbnN0cmFpbnRzICgq Y2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9Qb2x5aGVkcm9uX2dldF9jb25zdHJhaW50cykKLSsjZGVm aW5lIHBwbF9Qb2x5aGVkcm9uX21hcF9zcGFjZV9kaW1lbnNpb25zICgqY2xvb2dfcG9pbnRlcnNf Xy5wX3BwbF9Qb2x5aGVkcm9uX21hcF9zcGFjZV9kaW1lbnNpb25zKQotKyNkZWZpbmUgcHBsX1Bv bHloZWRyb25fcmVtb3ZlX3NwYWNlX2RpbWVuc2lvbnMgKCpjbG9vZ19wb2ludGVyc19fLnBfcHBs X1BvbHloZWRyb25fcmVtb3ZlX3NwYWNlX2RpbWVuc2lvbnMpCi0rI2RlZmluZSBwcGxfUG9seWhl ZHJvbl9zcGFjZV9kaW1lbnNpb24gKCpjbG9vZ19wb2ludGVyc19fLnBfcHBsX1BvbHloZWRyb25f c3BhY2VfZGltZW5zaW9uKQotKyNkZWZpbmUgcHBsX3N1YnRyYWN0X0xpbmVhcl9FeHByZXNzaW9u X2Zyb21fTGluZWFyX0V4cHJlc3Npb24gKCpjbG9vZ19wb2ludGVyc19fLnBfcHBsX3N1YnRyYWN0 X0xpbmVhcl9FeHByZXNzaW9uX2Zyb21fTGluZWFyX0V4cHJlc3Npb24pCi0rI2RlZmluZSBwcHJp bnQgKCpjbG9vZ19wb2ludGVyc19fLnBfcHByaW50KQotKyNkZWZpbmUgc3RtdF9ibG9jayAoKmNs b29nX3BvaW50ZXJzX18ucF9zdG10X2Jsb2NrKQotKyNkZWZpbmUgc3RtdF9mb3IgKCpjbG9vZ19w b2ludGVyc19fLnBfc3RtdF9mb3IpCi0rI2RlZmluZSBzdG10X2d1YXJkICgqY2xvb2dfcG9pbnRl cnNfXy5wX3N0bXRfZ3VhcmQpCi0rI2RlZmluZSBzdG10X3Jvb3QgKCpjbG9vZ19wb2ludGVyc19f LnBfc3RtdF9yb290KQotKyNkZWZpbmUgc3RtdF91c2VyICgqY2xvb2dfcG9pbnRlcnNfXy5wX3N0 bXRfdXNlcikKLSsjZGVmaW5lIHBwbF9kZWxldGVfQ29uc3RyYWludF9TeXN0ZW0gKCpjbG9vZ19w b2ludGVyc19fLnBfcHBsX2RlbGV0ZV9Db25zdHJhaW50X1N5c3RlbSkKLSsjZGVmaW5lIHBwbF9p bml0aWFsaXplICgqY2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9pbml0aWFsaXplKQotKyNkZWZpbmUg cHBsX25ld19Db25zdHJhaW50X1N5c3RlbV9mcm9tX0NvbnN0cmFpbnQgKCpjbG9vZ19wb2ludGVy c19fLnBfcHBsX25ld19Db25zdHJhaW50X1N5c3RlbV9mcm9tX0NvbnN0cmFpbnQpCi0rI2RlZmlu ZSBwcGxfbmV3X0NfUG9seWhlZHJvbl9mcm9tX0NvbnN0cmFpbnRfU3lzdGVtICgqY2xvb2dfcG9p bnRlcnNfXy5wX3BwbF9uZXdfQ19Qb2x5aGVkcm9uX2Zyb21fQ29uc3RyYWludF9TeXN0ZW0pCi0r I2RlZmluZSBwcGxfUG9seWhlZHJvbl9hZmZpbmVfaW1hZ2UgKCpjbG9vZ19wb2ludGVyc19fLnBf cHBsX1BvbHloZWRyb25fYWZmaW5lX2ltYWdlKQotKyNkZWZpbmUgcHBsX2lvX2ZwcmludF9Qb2lu dHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb24gKCpjbG9vZ19wb2ludGVyc19fLnBfcHBsX2lvX2Zw cmludF9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb24pCi0rI2lmICEoUFBMX1ZFUlNJT05f TUFKT1IgPT0gMCAmJiBQUExfVkVSU0lPTl9NSU5PUiA8IDExKQotKyNkZWZpbmUgcHBsX25ld19Q SVBfUHJvYmxlbV9mcm9tX2NvbnN0cmFpbnRzICgqY2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9uZXdf UElQX1Byb2JsZW1fZnJvbV9jb25zdHJhaW50cykKLSsjZGVmaW5lIHBwbF9QSVBfUHJvYmxlbV9p c19zYXRpc2ZpYWJsZSAoKmNsb29nX3BvaW50ZXJzX18ucF9wcGxfUElQX1Byb2JsZW1faXNfc2F0 aXNmaWFibGUpCi0rI2RlZmluZSBwcGxfZGVsZXRlX1BJUF9Qcm9ibGVtICgqY2xvb2dfcG9pbnRl cnNfXy5wX3BwbF9kZWxldGVfUElQX1Byb2JsZW0pCi0rI2VuZGlmCi0rCi0rI2RlZmluZSBjbG9v Z19maW5hbGl6ZSAoKmNsb29nX3BvaW50ZXJzX18ucF9wcGxfZmluYWxpemUpCi0rCi0rCi0gI2Vu ZGlmIC8qIEdSQVBISVRFX0NMT09HX0NPTVBBVF9IICAqLwotLS0tIGdjYy9ncmFwaGl0ZS5jLmpq CTIwMTEtMDEtMDMgMTI6NTM6MDUuMTk0MDU2NTEzICswMTAwCi0rKysgZ2NjL2dyYXBoaXRlLmMJ MjAxMS0wMS0wNCAxNjoxODozMi4zODUwMDc3NjcgKzAxMDAKLUBAIC01Niw2ICs1NiwzNSBAQCBh bG9uZyB3aXRoIEdDQzsgc2VlIHRoZSBmaWxlIENPUFlJTkczLiAgCi0gCi0gQ2xvb2dTdGF0ZSAq Y2xvb2dfc3RhdGU7Ci0gCi0rX190eXBlb2YgKGNsb29nX3BvaW50ZXJzX18pIGNsb29nX3BvaW50 ZXJzX187Ci0rCi0rc3RhdGljIGJvb2wKLStpbml0X2Nsb29nX3BvaW50ZXJzICh2b2lkKQotK3sK LSsgIHZvaWQgKmg7Ci0rCi0rICBpZiAoY2xvb2dfcG9pbnRlcnNfXy5pbml0ZWQpCi0rICAgIHJl dHVybiBjbG9vZ19wb2ludGVyc19fLmggIT0gTlVMTDsKLSsgIGggPSBkbG9wZW4gKCJsaWJjbG9v Zy5zby4wIiwgUlRMRF9MQVpZKTsKLSsgIGNsb29nX3BvaW50ZXJzX18uaCA9IGg7Ci0rICBpZiAo aCA9PSBOVUxMKQotKyAgICByZXR1cm4gZmFsc2U7Ci0rI2RlZmluZSBEWU5TWU0oeCkgXAotKyAg ZG8gXAotKyAgICB7IFwKLSsgICAgICB1bmlvbiB7IF9fdHlwZW9mIChjbG9vZ19wb2ludGVyc19f LnBfIyN4KSBwOyB2b2lkICpxOyB9IHU7IFwKLSsgICAgICB1LnEgPSBkbHN5bSAoaCwgI3gpOyBc Ci0rICAgICAgaWYgKHUucSA9PSBOVUxMKSBcCi0rCXJldHVybiBmYWxzZTsgXAotKyAgICAgIGNs b29nX3BvaW50ZXJzX18ucF8jI3ggPSB1LnA7IFwKLSsgICAgfSBcCi0rICB3aGlsZSAoMCkKLSsg IERZTlNZTVMKLSsjdW5kZWYgRFlOU1lNCi0rICByZXR1cm4gdHJ1ZTsKLSt9Ci0rCi0rCi0gLyog UHJpbnQgZ2xvYmFsIHN0YXRpc3RpY3MgdG8gRklMRS4gICovCi0gCi0gc3RhdGljIHZvaWQKLUBA IC0yMDEsNiArMjMwLDEyIEBAIGdyYXBoaXRlX2luaXRpYWxpemUgKHZvaWQpCi0gICAgICAgcmV0 dXJuIGZhbHNlOwotICAgICB9Ci0gCi0rICBpZiAoIWluaXRfY2xvb2dfcG9pbnRlcnMgKCkpCi0r ICAgIHsKLSsgICAgICBzb3JyeSAoIkdyYXBoaXRlIGxvb3Agb3B0aW1pemF0aW9ucyBjYW5ub3Qg YmUgdXNlZCIpOwotKyAgICAgIHJldHVybiBmYWxzZTsKLSsgICAgfQotKwotICAgc2Nldl9yZXNl dCAoKTsKLSAgIHJlY29tcHV0ZV9hbGxfZG9taW5hdG9ycyAoKTsKLSAgIGluaXRpYWxpemVfb3Jp Z2luYWxfY29weV90YWJsZXMgKCk7Ci0tLS0gZ2NjL2dyYXBoaXRlLWNsYXN0LXRvLWdpbXBsZS5j LmpqCTIwMTEtMDEtMDMgMTI6NTM6MDUuMDAwMDAwMDAwICswMTAwCi0rKysgZ2NjL2dyYXBoaXRl LWNsYXN0LXRvLWdpbXBsZS5jCTIwMTEtMDEtMDQgMTY6Mjk6NTUuNzM4MDA3NDYzICswMTAwCi1A QCAtNzM4LDEwICs3MzgsMTAgQEAgY2xhc3RfZ2V0X2JvZHlfb2ZfbG9vcCAoc3RydWN0IGNsYXN0 X3N0bQotICAgIGZyb20gU1RNVF9GT1IuICAqLwotIAotIHN0YXRpYyB0cmVlCi0tZ2NjX3R5cGVf Zm9yX2l2X29mX2NsYXN0X2xvb3AgKHN0cnVjdCBjbGFzdF9mb3IgKnN0bXRfZm9yLCBpbnQgbGV2 ZWwsCi0rZ2NjX3R5cGVfZm9yX2l2X29mX2NsYXN0X2xvb3AgKHN0cnVjdCBjbGFzdF9mb3IgKnN0 bXRfZm9yYSwgaW50IGxldmVsLAotIAkJCSAgICAgICB0cmVlIGxiX3R5cGUsIHRyZWUgdWJfdHlw ZSkKLSB7Ci0tICBzdHJ1Y3QgY2xhc3Rfc3RtdCAqc3RtdCA9IChzdHJ1Y3QgY2xhc3Rfc3RtdCAq KSBzdG10X2ZvcjsKLSsgIHN0cnVjdCBjbGFzdF9zdG10ICpzdG10ID0gKHN0cnVjdCBjbGFzdF9z dG10ICopIHN0bXRfZm9yYTsKLSAgIHN0cnVjdCBjbGFzdF91c2VyX3N0bXQgKmJvZHkgPSBjbGFz dF9nZXRfYm9keV9vZl9sb29wIChzdG10KTsKLSAgIENsb29nU3RhdGVtZW50ICpjcyA9IGJvZHkt PnN0YXRlbWVudDsKLSAgIHBvbHlfYmJfcCBwYmIgPSAocG9seV9iYl9wKSBjbG9vZ19zdGF0ZW1l bnRfdXNyIChjcyk7Ci0tLS0gZ2NjL2dyYXBoaXRlLXBvbHkuaC5qagkyMDExLTAxLTAzIDEyOjUz OjA1LjAwMDAwMDAwMCArMDEwMAotKysrIGdjYy9ncmFwaGl0ZS1wb2x5LmgJMjAxMS0wMS0wNCAx NzozNTo1My4zMDg3ODg2MjkgKzAxMDAKLUBAIC0yMiw2ICsyMiw4IEBAIGFsb25nIHdpdGggR0ND OyBzZWUgdGhlIGZpbGUgQ09QWUlORzMuICAKLSAjaWZuZGVmIEdDQ19HUkFQSElURV9QT0xZX0gK LSAjZGVmaW5lIEdDQ19HUkFQSElURV9QT0xZX0gKLSAKLSsjaW5jbHVkZSAiZ3JhcGhpdGUtY2xv b2ctdXRpbC5oIgotKwotIHR5cGVkZWYgc3RydWN0IHBvbHlfZHIgKnBvbHlfZHJfcDsKLSBERUZf VkVDX1AocG9seV9kcl9wKTsKLSBERUZfVkVDX0FMTE9DX1AgKHBvbHlfZHJfcCwgaGVhcCk7Cgpk aWZmIC0tZ2l0IGEvZ2NjNDYtaGFjay5wYXRjaCBiL2djYzQ2LWhhY2sucGF0Y2gKZGVsZXRlZCBm aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDQ2ODljZTguLjAwMDAwMDAKLS0tIGEvZ2NjNDYtaGFjay5w YXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDExNCArMCwwIEBACi0tLS0gbGliYWRhL01ha2VmaWxl LmluLmpqCTIwMDktMDEtMTQgMTI6MDc6MzUuMDAwMDAwMDAwICswMTAwCi0rKysgbGliYWRhL01h a2VmaWxlLmluCTIwMDktMDEtMTUgMTQ6MjU6MzMuMDAwMDAwMDAwICswMTAwCi1AQCAtNjksMTgg KzY5LDQwIEBAIHZlcnNpb24gOj0gJChzaGVsbCBjYXQgJChzcmNkaXIpLy4uL2djYy8KLSBsaWJz dWJkaXIgOj0gJChsaWJkaXIpL2djYy8kKHRhcmdldF9ub25jYW5vbmljYWwpLyQodmVyc2lvbikk KE1VTFRJU1VCRElSKQotIEFEQV9SVFNfRElSPSQoR0NDX0RJUikvYWRhL3J0cyQoc3Vic3QgLyxf LCQoTVVMVElTVUJESVIpKQotIAotK0RFRkFVTFRNVUxUSUZMQUdTIDo9Ci0raWZlcSAoJChNVUxU SVNVQkRJUiksKQotK3Rhcmc6PSQoc3Vic3QgLSwgLCQodGFyZ2V0KSkKLSthcmNoOj0kKHdvcmQg MSwkKHRhcmcpKQotK2lmZXEgKCQod29yZHMgJCh0YXJnKSksMikKLStvc3lzOj0kKHdvcmQgMiwk KHRhcmcpKQotK2Vsc2UKLStvc3lzOj0kKHdvcmQgMywkKHRhcmcpKQotK2VuZGlmCi0raWZlcSAo JChzdHJpcCAkKGZpbHRlci1vdXQgaSU4NiB4ODZfNjQgcG93ZXJwYyUgcHBjJSBzMzkwJSBzcGFy YyUgbGludXglLCAkKGFyY2gpICQob3N5cykpKSwpCi0raWZlcSAoJChzaGVsbCAkKENDKSAkKENG TEFHUykgLXByaW50LW11bHRpLW9zLWRpcmVjdG9yeSksLi4vbGliNjQpCi0rREVGQVVMVE1VTFRJ RkxBR1MgOj0gLW02NAotK2Vsc2UKLStpZmVxICgkKHN0cmlwICQoZmlsdGVyLW91dCBzMzkwJSwg JChhcmNoKSkpLCkKLStERUZBVUxUTVVMVElGTEFHUyA6PSAtbTMxCi0rZWxzZQotK0RFRkFVTFRN VUxUSUZMQUdTIDo9IC1tMzIKLStlbmRpZgotK2VuZGlmCi0rZW5kaWYKLStlbmRpZgotKwotICMg ZXhlZXh0IHNob3VsZCBub3QgYmUgdXNlZCBiZWNhdXNlIGl0J3MgdGhlICpob3N0KiBleGVleHQu ICBXZSdyZSBidWlsZGluZwotICMgYSAqdGFyZ2V0KiBsaWJyYXJ5LCBhcmVuJ3Qgd2U/IT8gIExp a2V3aXNlIGZvciBDQy4gIFN0aWxsLCBwcm92aWRlIGJvZ3VzCi0gIyBkZWZpbml0aW9ucyBqdXN0 IGluIGNhc2Ugc29tZXRoaW5nIHNsaXBzIHRocm91Z2ggdGhlIHNhZmV0eSBuZXQgcHJvdmlkZWQK LSAjIGJ5IHJlY3Vyc2l2ZSBtYWtlIGludm9jYXRpb25zIGluIGdjYy9hZGEvTWFrZWZpbGUuaW4K LSBMSUJBREFfRkxBR1NfVE9fUEFTUyA9IFwKLSAgICAgICAgICJNQUtFT1ZFUlJJREVTPSIgXAot LSAgICAgICAgIkxERkxBR1M9JChMREZMQUdTKSIgXAotKyAgICAgICAgIkxERkxBR1M9JChzdHJp cCAkKExERkxBR1MpICQoREVGQVVMVE1VTFRJRkxBR1MpKSIgXAotICAgICAgICAgIkxOX1M9JChM Tl9TKSIgXAotICAgICAgICAgIlNIRUxMPSQoU0hFTEwpIiBcCi0tICAgICAgICAiR05BVExJQkZM QUdTPSQoR05BVExJQkZMQUdTKSAkKE1VTFRJRkxBR1MpIiBcCi0tICAgICAgICAiR05BVExJQkNG TEFHUz0kKEdOQVRMSUJDRkxBR1MpICQoTVVMVElGTEFHUykiIFwKLS0gICAgICAgICJHTkFUTElC Q0ZMQUdTX0ZPUl9DPSQoR05BVExJQkNGTEFHU19GT1JfQykgJChNVUxUSUZMQUdTKSIgXAotKyAg ICAgICAgIkdOQVRMSUJGTEFHUz0kKHN0cmlwICQoR05BVExJQkZMQUdTKSAkKE1VTFRJRkxBR1Mp ICQoREVGQVVMVE1VTFRJRkxBR1MpKSIgXAotKyAgICAgICAgIkdOQVRMSUJDRkxBR1M9JChzdHJp cCAkKEdOQVRMSUJDRkxBR1MpICQoTVVMVElGTEFHUykgJChERUZBVUxUTVVMVElGTEFHUykpIiBc Ci0rICAgICAgICAiR05BVExJQkNGTEFHU19GT1JfQz0kKHN0cmlwICQoR05BVExJQkNGTEFHU19G T1JfQykgJChNVUxUSUZMQUdTKSAkKERFRkFVTFRNVUxUSUZMQUdTKSkiIFwKLSAgICAgICAgICJU QVJHRVRfTElCR0NDMl9DRkxBR1M9JChUQVJHRVRfTElCR0NDMl9DRkxBR1MpIiBcCi0gICAgICAg ICAiVEhSRUFEX0tJTkQ9JChUSFJFQURfS0lORCkiIFwKLSAgICAgICAgICJUUkFDRT0kKFRSQUNF KSIgXAotQEAgLTkxLDcgKzExMyw3IEBAIExJQkFEQV9GTEFHU19UT19QQVNTID0gXAotICAgICAg ICAgImV4ZWV4dD0uZXhlZXh0LnNob3VsZC5ub3QuYmUudXNlZCAiIFwKLSAJJ0NDPXRoZS5ob3N0 LmNvbXBpbGVyLnNob3VsZC5ub3QuYmUubmVlZGVkJyBcCi0gCSJHQ0NfRk9SX1RBUkdFVD0kKEND KSIgXAotLSAgICAgICAgIkNGTEFHUz0kKENGTEFHUykgJChXQVJOX0NGTEFHUykiCi0rICAgICAg ICAiQ0ZMQUdTPSQoc3RyaXAgJChDRkxBR1MpICQoREVGQVVMVE1VTFRJRkxBR1MpICQoV0FSTl9D RkxBR1MpKSIKLSAKLSAjIFJ1bGVzIHRvIGJ1aWxkIGduYXRsaWIuCi0gLlBIT05ZOiBnbmF0bGli IGduYXRsaWItcGxhaW4gZ25hdGxpYi1zamxqIGduYXRsaWItemN4IGduYXRsaWItc2hhcmVkIG9z Y29ucwotLS0tIGdjYy9hZGEvc2VtX3V0aWwuYWRiCShyZXZpc2lvbiAxNjE2NzcpCi0rKysgZ2Nj L2FkYS9zZW1fdXRpbC5hZGIJKHdvcmtpbmcgY29weSkKLUBAIC0yMjQ2LDcgKzIyNDYsMTEgQEAK LSAgICAgICAgICBlbmQgaWY7Ci0gCi0gICAgICAgZWxzaWYgSXNfRW50aXR5X05hbWUgKEEyKSB0 aGVuCi0rCi0rICAgICAgICAgLS0gIFRyaWdnZXJlZCBieSAtV2FsbAotKyAgICAgICAgIHByYWdt YSBXYXJuaW5ncyAoT2ZmKTsKLSAgICAgICAgICByZXR1cm4gRGVub3Rlc19TYW1lX1ByZWZpeCAo QTIsIEExKTsKLSsgICAgICAgICBwcmFnbWEgV2FybmluZ3MgKE9uKTsKLSAKLSAgICAgICBlbHNp ZiBOa2luZF9JbiAoQTEsIE5fU2VsZWN0ZWRfQ29tcG9uZW50LCBOX0luZGV4ZWRfQ29tcG9uZW50 LCBOX1NsaWNlKQotICAgICAgICAgICAgICAgYW5kIHRoZW4KLUBAIC00Njk0LDcgKzQ2OTgsNyBA QAotICAgICAgICAgICAgIEV4cCAgICAgICAgICAgOiBOb2RlX0lkOwotICAgICAgICAgICAgIEFz c24gICAgICAgICAgOiBOb2RlX0lkOwotICAgICAgICAgICAgIENob2ljZSAgICAgICAgOiBOb2Rl X0lkOwotLSAgICAgICAgICAgIENvbXBfVHlwZSAgICAgOiBFbnRpdHlfSWQ7Ci0rICAgICAgICAg ICAgQ29tcF9UeXBlICAgICA6IEVudGl0eV9JZCA6PSBFbXB0eTsKLSAgICAgICAgICAgICBJc19B cnJheV9BZ2dyIDogQm9vbGVhbjsKLSAKLSAgICAgICAgICBiZWdpbgotLS0tIGNvbmZpZy1tbC5p bi5qagkyMDEwLTA2LTMwIDA5OjUwOjQ0LjAwMDAwMDAwMCArMDIwMAotKysrIGNvbmZpZy1tbC5p bgkyMDEwLTA3LTAyIDIxOjI0OjE3Ljk5NDIxMTE1MSArMDIwMAotQEAgLTUxNiw2ICs1MTYsOCBA QCBtdWx0aS1kbzoKLSAJCQkJQURBRkxBR1M9IiQoQURBRkxBR1MpICQke2ZsYWdzfSIgXAotIAkJ CQlwcmVmaXg9IiQocHJlZml4KSIgXAotIAkJCQlleGVjX3ByZWZpeD0iJChleGVjX3ByZWZpeCki IFwKLSsJCQkJbWFuZGlyPSIkKG1hbmRpcikiIFwKLSsJCQkJaW5mb2Rpcj0iJChpbmZvZGlyKSIg XAotIAkJCQlHQ0pGTEFHUz0iJChHQ0pGTEFHUykgJCR7ZmxhZ3N9IiBcCi0gCQkJCUdPQ0ZMQUdT PSIkKEdPQ0ZMQUdTKSAkJHtmbGFnc30iIFwKLSAJCQkJQ1hYRkxBR1M9IiQoQ1hYRkxBR1MpICQk e2ZsYWdzfSIgXAotLS0tIGxpYmphdmEvTWFrZWZpbGUuYW0uamoJMjAxMC0wNy0wOSAxMToxNzoz My43Mjk2MDQwOTAgKzAyMDAKLSsrKyBsaWJqYXZhL01ha2VmaWxlLmFtCTIwMTAtMDctMDkgMTM6 MTY6NDEuODk0Mzc1NjQxICswMjAwCi1AQCAtNzEwLDcgKzcxMCw4IEBAIGlmIFVTRV9MSUJHQ0pf QkMKLSAjIyBsYXRlci4KLSAJQGVjaG8gSW5zdGFsbGluZyBkdW1teSBsaWIgbGliZ2NqX2JjLnNv LjEuMC4wOyBcCi0gCXJtICQoREVTVERJUikkKHRvb2xleGVjbGliZGlyKS9saWJnY2pfYmMuc287 IFwKLS0JbXYgJChERVNURElSKSQodG9vbGV4ZWNsaWJkaXIpL2xpYmdjal9iYy5zby4xLjAuMCAk KERFU1RESVIpJCh0b29sZXhlY2xpYmRpcikvbGliZ2NqX2JjLnNvOyBcCi0rCSQoSU5TVEFMTCkg JChJTlNUQUxMX1NUUklQX0ZMQUcpICQoaGVyZSkvLmxpYnMvbGliZ2NqX2JjLnNvICQoREVTVERJ UikkKHRvb2xleGVjbGliZGlyKS9saWJnY2pfYmMuc287IFwKLSsJcm0gJChERVNURElSKSQodG9v bGV4ZWNsaWJkaXIpL2xpYmdjal9iYy5zby4xLjAuMDsgXAotIAkkKGxpYmdjal9iY19kdW1teV9M SU5LKSAteGMgL2Rldi9udWxsIC1XbCwtc29uYW1lLGxpYmdjal9iYy5zby4xIFwKLSAJLW8gJChE RVNURElSKSQodG9vbGV4ZWNsaWJkaXIpL2xpYmdjal9iYy5zby4xLjAuMCAtbGdjaiB8fCBleGl0 OyBcCi0gCXJtICQoREVTVERJUikkKHRvb2xleGVjbGliZGlyKS9saWJnY2pfYmMuc28uMTsgXAot LS0tIGxpYmphdmEvTWFrZWZpbGUuaW4uamoJMjAxMC0wNy0wOSAxMToxNzozNC4wMDAwMDAwMDAg KzAyMDAKLSsrKyBsaWJqYXZhL01ha2VmaWxlLmluCTIwMTAtMDctMDkgMTM6MTg6MDcuNTQyNTcy MjcwICswMjAwCi1AQCAtMTI2NjUsNyArMTI2NjUsOCBAQCBpbnN0YWxsLWV4ZWMtaG9vazogaW5z dGFsbC1iaW5QUk9HUkFNUyBpCi0gCWluc3RhbGwtbGliZXhlY3N1YlBST0dSQU1TCi0gQFVTRV9M SUJHQ0pfQkNfVFJVRUAJQGVjaG8gSW5zdGFsbGluZyBkdW1teSBsaWIgbGliZ2NqX2JjLnNvLjEu MC4wOyBcCi0gQFVTRV9MSUJHQ0pfQkNfVFJVRUAJcm0gJChERVNURElSKSQodG9vbGV4ZWNsaWJk aXIpL2xpYmdjal9iYy5zbzsgXAotLUBVU0VfTElCR0NKX0JDX1RSVUVACW12ICQoREVTVERJUikk KHRvb2xleGVjbGliZGlyKS9saWJnY2pfYmMuc28uMS4wLjAgJChERVNURElSKSQodG9vbGV4ZWNs aWJkaXIpL2xpYmdjal9iYy5zbzsgXAotK0BVU0VfTElCR0NKX0JDX1RSVUVACSQoSU5TVEFMTCkg JChJTlNUQUxMX1NUUklQX0ZMQUcpICQoaGVyZSkvLmxpYnMvbGliZ2NqX2JjLnNvICQoREVTVERJ UikkKHRvb2xleGVjbGliZGlyKS9saWJnY2pfYmMuc287IFwKLStAVVNFX0xJQkdDSl9CQ19UUlVF QAlybSAkKERFU1RESVIpJCh0b29sZXhlY2xpYmRpcikvbGliZ2NqX2JjLnNvLjEuMC4wOyBcCi0g QFVTRV9MSUJHQ0pfQkNfVFJVRUAJJChsaWJnY2pfYmNfZHVtbXlfTElOSykgLXhjIC9kZXYvbnVs bCAtV2wsLXNvbmFtZSxsaWJnY2pfYmMuc28uMSBcCi0gQFVTRV9MSUJHQ0pfQkNfVFJVRUAJLW8g JChERVNURElSKSQodG9vbGV4ZWNsaWJkaXIpL2xpYmdjal9iYy5zby4xLjAuMCAtbGdjaiB8fCBl eGl0OyBcCi0gQFVTRV9MSUJHQ0pfQkNfVFJVRUAJcm0gJChERVNURElSKSQodG9vbGV4ZWNsaWJk aXIpL2xpYmdjal9iYy5zby4xOyBcCgpkaWZmIC0tZ2l0IGEvZ2NjNDYtaTM4Ni1saWJnb21wLnBh dGNoIGIvZ2NjNDYtaTM4Ni1saWJnb21wLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp bmRleCA1ZDFlZWE4Li4wMDAwMDAwCi0tLSBhL2djYzQ2LWkzODYtbGliZ29tcC5wYXRjaAorKysg L2Rldi9udWxsCkBAIC0xLDYxICswLDAgQEAKLUJ1aWxkIGkzODYucnBtIGxpYmdvbXAgYW5kIGxp YnN1cGMrKy5hKGd1YXJkLm8pIGFzIGk0ODYrLCBwcmUtaTQ4NgotaGFyZHdhcmUgaXNuJ3Qgc3Vw cG9ydGVkIGJlY2F1c2UgTlBUTCBkb2Vzbid0IHN1cHBvcnQgaXQgYW55d2F5LgotCi0tLS0gbGli Z29tcC9jb25maWd1cmUudGd0LmpqCTIwMDgtMDEtMTAgMjA6NTM6NDguMDAwMDAwMDAwICswMTAw Ci0rKysgbGliZ29tcC9jb25maWd1cmUudGd0CTIwMDgtMDMtMjcgMTI6NDQ6NTEuMDAwMDAwMDAw ICswMTAwCi1AQCAtNDQsMTQgKzQ0LDE0IEBAIGlmIHRlc3QgJGVuYWJsZV9saW51eF9mdXRleCA9 IHllczsgdGhlbgotIAk7OwotIAotICAgICAjIE5vdGUgdGhhdCBiYXJlIGkzODYgaXMgbm90IGlu Y2x1ZGVkIGhlcmUuICBXZSBuZWVkIGNtcHhjaGcuCi0tICAgIGlbNDU2XTg2LSotbGludXgqKQot KyAgICBpWzM0NTZdODYtKi1saW51eCopCi0gCWNvbmZpZ19wYXRoPSJsaW51eC94ODYgbGludXgg cG9zaXgiCi0gCWNhc2UgIiAke0NDfSAke0NGTEFHU30gIiBpbgotIAkgICoiIC1tNjQgIiopCi0g CSAgICA7OwotIAkgICopCi0gCSAgICBpZiB0ZXN0IC16ICIkd2l0aF9hcmNoIjsgdGhlbgotLQkg ICAgICBYQ0ZMQUdTPSIke1hDRkxBR1N9IC1tYXJjaD1pNDg2IC1tdHVuZT0ke3RhcmdldF9jcHV9 IgotKwkgICAgICBYQ0ZMQUdTPSIke1hDRkxBR1N9IC1tYXJjaD1pNDg2IC1tdHVuZT1nZW5lcmlj IgotIAkgICAgZmkKLSAJZXNhYwotIAk7OwotQEAgLTYzLDcgKzYzLDcgQEAgaWYgdGVzdCAkZW5h YmxlX2xpbnV4X2Z1dGV4ID0geWVzOyB0aGVuCi0gCWNvbmZpZ19wYXRoPSJsaW51eC94ODYgbGlu dXggcG9zaXgiCi0gCWNhc2UgIiAke0NDfSAke0NGTEFHU30gIiBpbgotIAkgICoiIC1tMzIgIiop Ci0tCSAgICBYQ0ZMQUdTPSIke1hDRkxBR1N9IC1tYXJjaD1pNDg2IC1tdHVuZT1pNjg2IgotKwkg ICAgWENGTEFHUz0iJHtYQ0ZMQUdTfSAtbWFyY2g9aTQ4NiAtbXR1bmU9Z2VuZXJpYyIKLSAJICAg IDs7Ci0gCWVzYWMKLSAJOzsKLS0tLSBsaWJzdGRjKystdjMvbGlic3VwYysrL2d1YXJkLmNjLmpq CTIwMDgtMDMtMDEgMDA6NTg6MjQuMDAwMDAwMDAwICswMTAwCi0rKysgbGlic3RkYysrLXYzL2xp YnN1cGMrKy9ndWFyZC5jYwkyMDA4LTAzLTI3IDE0OjA4OjQ0LjAwMDAwMDAwMCArMDEwMAotQEAg LTM1LDYgKzM1LDI3IEBACi0gI2luY2x1ZGUgPG5ldz4KLSAjaW5jbHVkZSA8ZXh0L2F0b21pY2l0 eS5oPgotICNpbmNsdWRlIDxleHQvY29uY3VycmVuY2UuaD4KLSsjaWYgZGVmaW5lZCBfX2kzODZf XyAmJiAhZGVmaW5lZCBfR0xJQkNYWF9BVE9NSUNfQlVJTFRJTlNfNAotKyMgZGVmaW5lIF9HTElC Q1hYX0FUT01JQ19CVUlMVElOU180IDEKLSsjIGRlZmluZSBfX3N5bmNfdmFsX2NvbXBhcmVfYW5k X3N3YXAoYSwgYiwgYykgXAotKyAgKHsJCQkJCQkJCVwKLSsgICAgIHR5cGVkZWYgY2hhciBzbHRh c3Rbc2l6ZW9mICgqYSkgPT0gc2l6ZW9mIChpbnQpID8gMSA6IC0xXTsJXAotKyAgICAgaW50IHNs dGFzOwkJCQkJCQlcCi0rICAgICBfX2FzbSBfX3ZvbGF0aWxlICgibG9jazsgY21weGNoZ2wgJTMs ICglMSkiCQlcCi0rCQkgICAgICAgOiAiPWEiIChzbHRhcykJCQkJXAotKwkJICAgICAgIDogInIi IChhKSwgIjAiIChiKSwgInIiIChjKSA6ICJtZW1vcnkiKTsJXAotKyAgICAgc2x0YXM7CQkJCQkJ CVwKLSsgICB9KQotKyMgZGVmaW5lIF9fc3luY19sb2NrX3Rlc3RfYW5kX3NldChhLCBiKSBcCi0r ICAoewkJCQkJCQkJXAotKyAgICAgdHlwZWRlZiBjaGFyIHNsdGFzdFtzaXplb2YgKCphKSA9PSBz aXplb2YgKGludCkgPyAxIDogLTFdOwlcCi0rICAgICBpbnQgc2x0YXM7CQkJCQkJCVwKLSsgICAg IF9fYXNtIF9fdm9sYXRpbGUgKCJ4Y2hnbCAoJTEpLCAlMCIJCQkJXAotKwkJICAgICAgIDogIj1y IiAoc2x0YXMpCQkJCVwKLSsJCSAgICAgICA6ICJyIiAoYSksICIwIiAoYikgOiAibWVtb3J5Iik7 CQlcCi0rICAgICBzbHRhczsJCQkJCQkJXAotKyAgIH0pCi0rI2VuZGlmCi0gI2lmIGRlZmluZWQo X19HVEhSRUFEUykgJiYgZGVmaW5lZChfX0dUSFJFQURfSEFTX0NPTkQpIFwKLSAgICAgJiYgZGVm aW5lZChfR0xJQkNYWF9BVE9NSUNfQlVJTFRJTlNfNCkgJiYgZGVmaW5lZChfR0xJQkNYWF9IQVZF X0xJTlVYX0ZVVEVYKQotICMgaW5jbHVkZSA8Y2xpbWl0cz4KCmRpZmYgLS1naXQgYS9nY2M0Ni1q YXZhLW5vbXVsdGkucGF0Y2ggYi9nY2M0Ni1qYXZhLW5vbXVsdGkucGF0Y2gKZGVsZXRlZCBmaWxl IG1vZGUgMTAwNjQ0CmluZGV4IDE3MzM0YWEuLjAwMDAwMDAKLS0tIGEvZ2NjNDYtamF2YS1ub211 bHRpLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsNDQgKzAsMCBAQAotLS0tIGxpYmphdmEvY29u ZmlndXJlLmFjLmpqCTIwMDctMTItMDcgMTc6NTU6NTAuMDAwMDAwMDAwICswMTAwCi0rKysgbGli amF2YS9jb25maWd1cmUuYWMJMjAwNy0xMi0wNyAxODozNjo1Ni4wMDAwMDAwMDAgKzAxMDAKLUBA IC04Miw2ICs4MiwxMyBAQCBBQ19BUkdfRU5BQkxFKGphdmEtbWFpbnRhaW5lci1tb2RlLAotIAlb YWxsb3cgcmVidWlsZGluZyBvZiAuY2xhc3MgYW5kIC5oIGZpbGVzXSkpCi0gQU1fQ09ORElUSU9O QUwoSkFWQV9NQUlOVEFJTkVSX01PREUsIHRlc3QgIiRlbmFibGVfamF2YV9tYWludGFpbmVyX21v ZGUiID0geWVzKQotIAotK0FDX0FSR19FTkFCTEUobGliamF2YS1tdWx0aWxpYiwKLSsJQVNfSEVM UF9TVFJJTkcoWy0tZW5hYmxlLWxpYmphdmEtbXVsdGlsaWJdLCBbYnVpbGQgbGliamF2YSBhcyBt dWx0aWxpYl0pKQotK2lmIHRlc3QgIiRlbmFibGVfbGliamF2YV9tdWx0aWxpYiIgPSBubzsgdGhl bgotKyAgbXVsdGlsaWI9bm8KLSsgIGFjX2NvbmZpZ3VyZV9hcmdzPSIkYWNfY29uZmlndXJlX2Fy Z3MgLS1kaXNhYmxlLW11bHRpbGliIgotK2ZpCi0rCi0gIyBJdCBtYXkgbm90IGJlIHNhZmUgdG8g cnVuIGxpbmtpbmcgdGVzdHMgaW4gQUNfUFJPR19DQy9BQ19QUk9HX0NYWC4KLSBHQ0NfTk9fRVhF Q1VUQUJMRVMKLSAKLS0tLSBsaWJqYXZhL2NvbmZpZ3VyZS5qagkyMDA3LTEyLTA3IDE3OjU1OjUw LjAwMDAwMDAwMCArMDEwMAotKysrIGxpYmphdmEvY29uZmlndXJlCTIwMDctMTItMDcgMTg6Mzk6 NTguMDAwMDAwMDAwICswMTAwCi1AQCAtMTAyMSw2ICsxMDIxLDggQEAgT3B0aW9uYWwgRmVhdHVy ZXM6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0PXllcwotICAgLS1lbmFibGUt amF2YS1tYWludGFpbmVyLW1vZGUKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsbG93IHJl YnVpbGRpbmcgb2YgLmNsYXNzIGFuZCAuaCBmaWxlcwotKyAgLS1lbmFibGUtbGliamF2YS1tdWx0 aWxpYgotKyAgICAgICAgICAgICAgICAgICAgICAgICAgYnVpbGQgbGliamF2YSBhcyBtdWx0aWxp YgotICAgLS1kaXNhYmxlLWRlcGVuZGVuY3ktdHJhY2tpbmcgIHNwZWVkcyB1cCBvbmUtdGltZSBi dWlsZAotICAgLS1lbmFibGUtZGVwZW5kZW5jeS10cmFja2luZyAgIGRvIG5vdCByZWplY3Qgc2xv dyBkZXBlbmRlbmN5IGV4dHJhY3RvcnMKLSAgIC0tZW5hYmxlLW1haW50YWluZXItbW9kZSAgZW5h YmxlIG1ha2UgcnVsZXMgYW5kIGRlcGVuZGVuY2llcyBub3QgdXNlZnVsCi1AQCAtMTk3Myw2ICsx OTc1LDE2IEBAIGVsc2UKLSBmaQotIAotIAotKyMgQ2hlY2sgd2hldGhlciAtLWVuYWJsZS1saWJq YXZhLW11bHRpbGliIHdhcyBnaXZlbi4KLStpZiB0ZXN0ICIke2VuYWJsZV9saWJqYXZhX211bHRp bGliK3NldH0iID0gc2V0OyB0aGVuCi0rICBlbmFibGV2YWw9JGVuYWJsZV9saWJqYXZhX211bHRp bGliOwotK2ZpCi0rCi0raWYgdGVzdCAiJGVuYWJsZV9saWJqYXZhX211bHRpbGliIiA9IG5vOyB0 aGVuCi0rICBtdWx0aWxpYj1ubwotKyAgYWNfY29uZmlndXJlX2FyZ3M9IiRhY19jb25maWd1cmVf YXJncyAtLWRpc2FibGUtbXVsdGlsaWIiCi0rZmkKLSsKLSAjIEl0IG1heSBub3QgYmUgc2FmZSB0 byBydW4gbGlua2luZyB0ZXN0cyBpbiBBQ19QUk9HX0NDL0FDX1BST0dfQ1hYLgotIAotIAoKZGlm ZiAtLWdpdCBhL2djYzQ2LWxpYmdvbXAtb21wX2gtbXVsdGlsaWIucGF0Y2ggYi9nY2M0Ni1saWJn b21wLW9tcF9oLW11bHRpbGliLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBk MGU5OGQxLi4wMDAwMDAwCi0tLSBhL2djYzQ2LWxpYmdvbXAtb21wX2gtbXVsdGlsaWIucGF0Y2gK KysrIC9kZXYvbnVsbApAQCAtMSwxNyArMCwwIEBACi0yMDA4LTA2LTA5ICBKYWt1YiBKZWxpbmVr ICA8amFrdWJAcmVkaGF0LmNvbT4KLQotCSogb21wLmguaW4gKG9tcF9uZXN0X2xvY2tfdCk6IEZp eCB1cCBmb3IgTGludXggbXVsdGlsaWJzLgotCi0tLS0gbGliZ29tcC9vbXAuaC5pbi5qagkyMDA4 LTA2LTA5IDEzOjM0OjA1LjAwMDAwMDAwMCArMDIwMAotKysrIGxpYmdvbXAvb21wLmguaW4JMjAw OC0wNi0wOSAxMzozNDo0OC4wMDAwMDAwMDAgKzAyMDAKLUBAIC00Miw4ICs0Miw4IEBAIHR5cGVk ZWYgc3RydWN0Ci0gCi0gdHlwZWRlZiBzdHJ1Y3QKLSB7Ci0tICB1bnNpZ25lZCBjaGFyIF94W0BP TVBfTkVTVF9MT0NLX1NJWkVAXSAKLS0gICAgX19hdHRyaWJ1dGVfXygoX19hbGlnbmVkX18oQE9N UF9ORVNUX0xPQ0tfQUxJR05AKSkpOwotKyAgdW5zaWduZWQgY2hhciBfeFs4ICsgc2l6ZW9mICh2 b2lkICopXSAKLSsgICAgX19hdHRyaWJ1dGVfXygoX19hbGlnbmVkX18oc2l6ZW9mICh2b2lkICop KSkpOwotIH0gb21wX25lc3RfbG9ja190OwotICNlbmRpZgotIAoKZGlmZiAtLWdpdCBhL2djYzQ2 LWxpYmphdmEtcHJpbXMtY3R5cGUucGF0Y2ggYi9nY2M0Ni1saWJqYXZhLXByaW1zLWN0eXBlLnBh dGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMjdlMWU3Li4wMDAwMDAwCi0tLSBh L2djYzQ2LWxpYmphdmEtcHJpbXMtY3R5cGUucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwyMiAr MCwwIEBACi0yMDExLTEwLTI3ICBKYWt1YiBKZWxpbmVrICA8amFrdWJAcmVkaGF0LmNvbT4KLQot CSogcHJpbXMuY2MgKF9fTk9fQ1RZUEUpOiBGb3IgZ2xpYmMgZGVmaW5lIHRoaXMgYmVmb3JlIGlu Y2x1ZGluZwotCWN0eXBlLmguCi0KLS0tLSBsaWJqYXZhL3ByaW1zLmNjCTIwMDktMDQtMjggMDY6 MDI6MzAuMDAwMDAwMDAwICswMjAwCi0rKysgbGliamF2YS9wcmltcy5jYwkyMDExLTEwLTI3IDEy OjU3OjQyLjc0ODc1MjM4MCArMDIwMAotQEAgLTM4LDYgKzM4LDE0IEBAIGRldGFpbHMuICAqLwot ICNlbmRpZgotIAotICNpZm5kZWYgRElTQUJMRV9HRVRFTlZfUFJPUEVSVElFUwotKyNpZmRlZiBf X0dMSUJDX18KLSsvKiBnbGliYyAyLjE1KyBwcm92aWRlcyBldmVuIGZvciBDKysgaW5saW5lIG9w dGltaXplZCA6Omlzc3BhY2UgZXRjLgotKyAgIFVuZm9ydHVuYXRlbHkgdGhvc2UgaW5saW5lcyBh cmUgdGhyb3cgKCksIGFuZCBjYWxsIGEgZnVuY3Rpb24gcG9pbnRlcgotKyAgICh3aGljaCBpcyB0 aHJvdyAoKSB0b28sIGJ1dCB3aXRoIC1mbm9uLWNhbGwtZXhjZXB0aW9ucyB0aGlzIHJlc3VsdHMK LSsgICBpbiBhIF9fY3hhX2NhbGxfdW5leHBlY3RlZCBjYWxsLiAgVGhpcyBtYWNybyBkaXNhYmxl cyB0aGUgb3B0aW1pemVkCi0rICAgdmVyc2lvbi4gICovCi0rI2RlZmluZSBfX05PX0NUWVBFIDEK LSsjZW5kaWYKLSAjaW5jbHVkZSA8Y3R5cGUuaD4KLSAjaW5jbHVkZSA8amF2YS1wcm9wcy5oPgot ICNkZWZpbmUgUFJPQ0VTU19HQ0pfUFJPUEVSVElFUyBwcm9jZXNzX2djal9wcm9wZXJ0aWVzKCkK CmRpZmYgLS1naXQgYS9nY2M0Ni1saWJzdGRjKystZG9jcy5wYXRjaCBiL2djYzQ2LWxpYnN0ZGMr Ky1kb2NzLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyZDFjZDVmLi4wMDAw MDAwCi0tLSBhL2djYzQ2LWxpYnN0ZGMrKy1kb2NzLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEs MzYgKzAsMCBAQAotLS0tIGxpYnN0ZGMrKy12My9kb2MvaHRtbC9pbmRleC5odG1sLmpqCTIwMTEt MDEtMDMgMTI6NTM6MjEuMjgyODI5MDEwICswMTAwCi0rKysgbGlic3RkYysrLXYzL2RvYy9odG1s L2luZGV4Lmh0bWwJMjAxMS0wMS0wNCAxODowNjoyOC45OTk4NTExNDUgKzAxMDAKLUBAIC0xMiw3 ICsxMiw4IEBACi0gPGRpdj4KLSA8aDE+VGhlIEdOVSBDKysgTGlicmFyeSBEb2N1bWVudGF0aW9u PC9oMT4KLSAKLS08cD5Db3B5cmlnaHQgMjAwOCwgMjAwOSBGU0Y8L3A+Ci0rPHA+UmVsZWFzZSA0 LjYuMDwvcD4KLSs8cD5Db3B5cmlnaHQgMjAwOCwgMjAwOSwgMjAxMCwgMjAxMSBGU0Y8L3A+Ci0g Ci0gPHA+Ci0gICBQZXJtaXNzaW9uIGlzIGdyYW50ZWQgdG8gY29weSwgZGlzdHJpYnV0ZSBhbmQv b3IgbW9kaWZ5IHRoaXMKLS0tLSBsaWJzdGRjKystdjMvZG9jL2h0bWwvYXBpLmh0bWwuamoJMjAx MS0wMS0wMyAxMjo1MzoyMS4wMDAwMDAwMDAgKzAxMDAKLSsrKyBsaWJzdGRjKystdjMvZG9jL2h0 bWwvYXBpLmh0bWwJMjAxMS0wMS0wNCAxODoxMjowMS42NzI3NTc3ODQgKzAxMDAKLUBAIC0zLDcg KzMsNyBAQAotIDxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj48aGVh ZD48dGl0bGU+VGhlIEdOVSBDKysgTGlicmFyeSBBUEkgUmVmZXJlbmNlPC90aXRsZT48bWV0YSBu YW1lPSJnZW5lcmF0b3IiIGNvbnRlbnQ9IkRvY0Jvb2sgWFNMLU5TIFN0eWxlc2hlZXRzIFYxLjc2 LjEiLz48bGluayByZWw9ImhvbWUiIGhyZWY9InNwaW5lLmh0bWwiIHRpdGxlPSJUaGUgR05VIEMr KyBMaWJyYXJ5Ii8+PGxpbmsgcmVsPSJ1cCIgaHJlZj0iYmswMi5odG1sIiB0aXRsZT0iIi8+PGxp bmsgcmVsPSJwcmV2IiBocmVmPSJiazAyLmh0bWwiIHRpdGxlPSIiLz48bGluayByZWw9Im5leHQi IGhyZWY9ImJrMDMuaHRtbCIgdGl0bGU9IiIvPjwvaGVhZD48Ym9keT48ZGl2IGNsYXNzPSJuYXZo ZWFkZXIiPjx0YWJsZSB3aWR0aD0iMTAwJSIgc3VtbWFyeT0iTmF2aWdhdGlvbiBoZWFkZXIiPjx0 cj48dGggY29sc3Bhbj0iMyIgYWxpZ249ImNlbnRlciI+VGhlIEdOVSBDKysgTGlicmFyeSBBUEkg UmVmZXJlbmNlPC90aD48L3RyPjx0cj48dGQgYWxpZ249ImxlZnQiPjxhIGFjY2Vzc2tleT0icCIg aHJlZj0iYmswMi5odG1sIj5QcmV2PC9hPsKgPC90ZD48dGggd2lkdGg9IjYwJSIgYWxpZ249ImNl bnRlciIvPjx0ZCBhbGlnbj0icmlnaHQiPsKgPGEgYWNjZXNza2V5PSJuIiBocmVmPSJiazAzLmh0 bWwiPk5leHQ8L2E+PC90ZD48L3RyPjwvdGFibGU+PGhyLz48L2Rpdj48ZGl2IGNsYXNzPSJhcnRp Y2xlIiB0aXRsZT0iVGhlIEdOVSBDKysgTGlicmFyeSBBUEkgUmVmZXJlbmNlIj48ZGl2IGNsYXNz PSJ0aXRsZXBhZ2UiPjxkaXY+PGRpdj48aDIgY2xhc3M9InRpdGxlIj48YSBpZD0iYXBpIi8+VGhl IEdOVSBDKysgTGlicmFyeSBBUEkgUmVmZXJlbmNlPC9oMj48L2Rpdj48ZGl2PjxwIGNsYXNzPSJj b3B5cmlnaHQiPkNvcHlyaWdodCDCqSAKLSAgICAgICAyMDA4Ci0gICAgICwgCi0tICAgICAgMjAx MAotKyAgICAgIDIwMTAsIDIwMTEKLSAgICAgIAotICAgICAgIDxhIGNsYXNzPSJsaW5rIiBocmVm PSJodHRwOi8vd3d3LmZzZi5vcmcvIj5GU0YKLSAgICAgICA8L2E+Ci1AQCAtMTksOCArMTksMTEg QEAKLSAgIG1lbWJlciBmdW5jdGlvbnMgZm9yIHRoZSBsaWJyYXJ5IGNsYXNzZXMsIGZpbmRpbmcg b3V0IHdoYXQgaXMgaW4gYQotICAgcGFydGljdWxhciBpbmNsdWRlIGZpbGUsIGxvb2tpbmcgYXQg aW5oZXJpdGFuY2UgZGlhZ3JhbXMsIGV0Yy4KLSA8L3A+PHA+Ci0tICBUaGUgQVBJIGRvY3VtZW50 YXRpb24sIHJlbmRlcmVkIGludG8gSFRNTCwgY2FuIGJlIHZpZXdlZCBvbmxpbmU6Ci0rICBUaGUg QVBJIGRvY3VtZW50YXRpb24sIHJlbmRlcmVkIGludG8gSFRNTCwgY2FuIGJlIHZpZXdlZCBoZXJl OgotIDwvcD48ZGl2IGNsYXNzPSJpdGVtaXplZGxpc3QiPjx1bCBjbGFzcz0iaXRlbWl6ZWRsaXN0 Ij48bGkgY2xhc3M9Imxpc3RpdGVtIj48cD4KLSsgICAgICA8YSBjbGFzcz0idWxpbmsiIGhyZWY9 ImFwaS9pbmRleC5odG1sIj5mb3IgdGhlIDQuNiByZWxlYXNlLCBsb2NhbAotKyAgICAgIDwvYT4K LSsgICAgPC9wPjwvbGk+PGxpIGNsYXNzPSJsaXN0aXRlbSI+PHA+Ci0gICAgICAgPGEgY2xhc3M9 ImxpbmsiIGhyZWY9Imh0dHA6Ly9nY2MuZ251Lm9yZy9vbmxpbmVkb2NzL2xpYnN0ZGMrKy9saWJz dGRjKystaHRtbC1VU0VSUy0zLjQvaW5kZXguaHRtbCI+Zm9yIHRoZSAzLjQgcmVsZWFzZQotICAg ICAgIDwvYT4KLSAgICAgPC9wPjwvbGk+PGxpIGNsYXNzPSJsaXN0aXRlbSI+PHA+CgpkaWZmIC0t Z2l0IGEvZ2NjNDYtbGlidG9vbC1uby1ycGF0aC5wYXRjaCBiL2djYzQ2LWxpYnRvb2wtbm8tcnBh dGgucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDQ2NmM2NjEuLjAwMDAwMDAK LS0tIGEvZ2NjNDYtbGlidG9vbC1uby1ycGF0aC5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDI3 ICswLDAgQEAKLWxpYnRvb2wgc3Vja3MuCi0tLS0gbHRtYWluLnNoLmpqCTIwMDctMTItMDcgMTQ6 NTM6MjEuMDAwMDAwMDAwICswMTAwCi0rKysgbHRtYWluLnNoCTIwMDgtMDktMDUgMjE6NTE6NDgu MDAwMDAwMDAwICswMjAwCi1AQCAtNTM5NCw2ICs1Mzk0LDcgQEAgRU9GCi0gCSAgcnBhdGg9IiRm aW5hbGl6ZV9ycGF0aCIKLSAJICB0ZXN0ICIkbW9kZSIgIT0gcmVsaW5rICYmIHJwYXRoPSIkY29t cGlsZV9ycGF0aCRycGF0aCIKLSAJICBmb3IgbGliZGlyIGluICRycGF0aDsgZG8KLSsJICAgIGNh c2UgIiRsaWJkaXIiIGluIC91c3IvbGlifC91c3IvbGliNjR8L3Vzci9saWIvLi4vbGlifC91c3Iv bGliLy4uL2xpYjY0KSBjb250aW51ZTs7IGVzYWMKLSAJICAgIGlmIHRlc3QgLW4gIiRoYXJkY29k ZV9saWJkaXJfZmxhZ19zcGVjIjsgdGhlbgotIAkgICAgICBpZiB0ZXN0IC1uICIkaGFyZGNvZGVf bGliZGlyX3NlcGFyYXRvciI7IHRoZW4KLSAJCWlmIHRlc3QgLXogIiRoYXJkY29kZV9saWJkaXJz IjsgdGhlbgotQEAgLTYwNzEsNiArNjA3Miw3IEBAIEVPRgotICAgICAgIHJwYXRoPQotICAgICAg IGhhcmRjb2RlX2xpYmRpcnM9Ci0gICAgICAgZm9yIGxpYmRpciBpbiAkY29tcGlsZV9ycGF0aCAk ZmluYWxpemVfcnBhdGg7IGRvCi0rCWNhc2UgIiRsaWJkaXIiIGluIC91c3IvbGlifC91c3IvbGli NjR8L3Vzci9saWIvLi4vbGlifC91c3IvbGliLy4uL2xpYjY0KSBjb250aW51ZTs7IGVzYWMKLSAJ aWYgdGVzdCAtbiAiJGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMiOyB0aGVuCi0gCSAgaWYgdGVz dCAtbiAiJGhhcmRjb2RlX2xpYmRpcl9zZXBhcmF0b3IiOyB0aGVuCi0gCSAgICBpZiB0ZXN0IC16 ICIkaGFyZGNvZGVfbGliZGlycyI7IHRoZW4KLUBAIC02MTIwLDYgKzYxMjIsNyBAQCBFT0YKLSAg ICAgICBycGF0aD0KLSAgICAgICBoYXJkY29kZV9saWJkaXJzPQotICAgICAgIGZvciBsaWJkaXIg aW4gJGZpbmFsaXplX3JwYXRoOyBkbwotKwljYXNlICIkbGliZGlyIiBpbiAvdXNyL2xpYnwvdXNy L2xpYjY0fC91c3IvbGliLy4uL2xpYnwvdXNyL2xpYi8uLi9saWI2NCkgY29udGludWU7OyBlc2Fj Ci0gCWlmIHRlc3QgLW4gIiRoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjIjsgdGhlbgotIAkgIGlm IHRlc3QgLW4gIiRoYXJkY29kZV9saWJkaXJfc2VwYXJhdG9yIjsgdGhlbgotIAkgICAgaWYgdGVz dCAteiAiJGhhcmRjb2RlX2xpYmRpcnMiOyB0aGVuCgpkaWZmIC0tZ2l0IGEvZ2NjNDYtbm8tYWRk LW5lZWRlZC5wYXRjaCBiL2djYzQ2LW5vLWFkZC1uZWVkZWQucGF0Y2gKZGVsZXRlZCBmaWxlIG1v ZGUgMTAwNjQ0CmluZGV4IDhhYWMyMDkuLjAwMDAwMDAKLS0tIGEvZ2NjNDYtbm8tYWRkLW5lZWRl ZC5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDUyICswLDAgQEAKLTIwMTAtMDItMDggIFJvbGFu ZCBNY0dyYXRoICA8cm9sYW5kQHJlZGhhdC5jb20+Ci0KLQkqIGNvbmZpZy9yczYwMDAvc3lzdjQu aCAoTElOS19FSF9TUEVDKTogUGFzcyAtLW5vLWFkZC1uZWVkZWQgdG8gdGhlCi0JbGlua2VyLgot CSogY29uZmlnL2dudS11c2VyLmggKExJTktfRUhfU1BFQyk6IExpa2V3aXNlLgotCSogY29uZmln L2FscGhhL2VsZi5oIChMSU5LX0VIX1NQRUMpOiBMaWtld2lzZS4KLQkqIGNvbmZpZy9pYTY0L2xp bnV4LmggKExJTktfRUhfU1BFQyk6IExpa2V3aXNlLgotCi0tLS0gZ2NjL2NvbmZpZy9hbHBoYS9l bGYuaC5qagkyMDExLTAxLTAzIDEyOjUyOjMxLjExODA1Njc2NCArMDEwMAotKysrIGdjYy9jb25m aWcvYWxwaGEvZWxmLmgJMjAxMS0wMS0wNCAxODoxNDoxMC45MzE4NzQxNjAgKzAxMDAKLUBAIC00 MzgsNyArNDM4LDcgQEAgZXh0ZXJuIGludCBhbHBoYV90aGlzX2dwZGlzcF9zZXF1ZW5jZV9udQot ICAgIEkgaW1hZ2luZSB0aGF0IG90aGVyIHN5c3RlbXMgd2lsbCBjYXRjaCB1cC4gIEluIHRoZSBt ZWFudGltZSwgaXQKLSAgICBkb2Vzbid0IGhhcm0gdG8gbWFrZSBzdXJlIHRoYXQgdGhlIGRhdGEg ZXhpc3RzIHRvIGJlIHVzZWQgbGF0ZXIuICAqLwotICNpZiBkZWZpbmVkKEhBVkVfTERfRUhfRlJB TUVfSERSKQotLSNkZWZpbmUgTElOS19FSF9TUEVDICIleyFzdGF0aWM6LS1laC1mcmFtZS1oZHJ9 ICIKLSsjZGVmaW5lIExJTktfRUhfU1BFQyAiLS1uby1hZGQtbmVlZGVkICV7IXN0YXRpYzotLWVo LWZyYW1lLWhkcn0gIgotICNlbmRpZgotIAotIC8qIEEgQyBzdGF0ZW1lbnQgKHNhbnMgc2VtaWNv bG9uKSB0byBvdXRwdXQgdG8gdGhlIHN0ZGlvIHN0cmVhbSBTVFJFQU0KLS0tLSBnY2MvY29uZmln L2lhNjQvbGludXguaC5qagkyMDExLTAxLTAzIDEzOjAyOjExLjQ2Mjk5NDUyMiArMDEwMAotKysr IGdjYy9jb25maWcvaWE2NC9saW51eC5oCTIwMTEtMDEtMDQgMTg6MTQ6MTAuOTMxODc0MTYwICsw MTAwCi1AQCAtODIsNyArODIsNyBAQCBkbyB7CQkJCQkJXAotICAgIFNpZ25hbGl6ZSB0aGF0IGJl Y2F1c2Ugd2UgaGF2ZSBmZGUtZ2xpYmMsIHdlIGRvbid0IG5lZWQgYWxsIEMgc2hhcmVkIGxpYnMK LSAgICBsaW5rZWQgYWdhaW5zdCAtbGdjY19zLiAgKi8KLSAjdW5kZWYgTElOS19FSF9TUEVDCi0t I2RlZmluZSBMSU5LX0VIX1NQRUMgIiIKLSsjZGVmaW5lIExJTktfRUhfU1BFQyAiLS1uby1hZGQt bmVlZGVkICIKLSAKLSAjZGVmaW5lIE1EX1VOV0lORF9TVVBQT1JUICJjb25maWcvaWE2NC9saW51 eC11bndpbmQuaCIKLSAKLS0tLSBnY2MvY29uZmlnL2dudS11c2VyLmguamoJMjAxMS0wMS0wMyAx Mjo1MzowMy43MzkwNTcyOTkgKzAxMDAKLSsrKyBnY2MvY29uZmlnL2dudS11c2VyLmgJMjAxMS0w MS0wNCAxODoxNDoxMC45MzI4MTQ4ODQgKzAxMDAKLUBAIC04Miw3ICs4Miw3IEBAIHNlZSB0aGUg ZmlsZXMgQ09QWUlORzMgYW5kIENPUFlJTkcuUlVOVEkKLSAjZGVmaW5lIExJQl9TUEVDIEdOVV9V U0VSX1RBUkdFVF9MSUJfU1BFQwotIAotICNpZiBkZWZpbmVkKEhBVkVfTERfRUhfRlJBTUVfSERS KQotLSNkZWZpbmUgTElOS19FSF9TUEVDICIleyFzdGF0aWM6LS1laC1mcmFtZS1oZHJ9ICIKLSsj ZGVmaW5lIExJTktfRUhfU1BFQyAiLS1uby1hZGQtbmVlZGVkICV7IXN0YXRpYzotLWVoLWZyYW1l LWhkcn0gIgotICNlbmRpZgotIAotICN1bmRlZiBMSU5LX0dDQ19DX1NFUVVFTkNFX1NQRUMKLS0t LSBnY2MvY29uZmlnL3JzNjAwMC9zeXN2NC5oLmpqCTIwMTEtMDEtMDMgMTM6MDI6MTguMjU1OTk0 MjE1ICswMTAwCi0rKysgZ2NjL2NvbmZpZy9yczYwMDAvc3lzdjQuaAkyMDExLTAxLTA0IDE4OjE0 OjEwLjkzMzg4ODg3MSArMDEwMAotQEAgLTg2OSw3ICs4NjksNyBAQCBleHRlcm4gaW50IGZpeHVw bGFiZWxubzsKLSAgIC1keW5hbWljLWxpbmtlciAiIExJTlVYX0RZTkFNSUNfTElOS0VSICJ9fSIK LSAKLSAjaWYgZGVmaW5lZChIQVZFX0xEX0VIX0ZSQU1FX0hEUikKLS0jIGRlZmluZSBMSU5LX0VI X1NQRUMgIiV7IXN0YXRpYzotLWVoLWZyYW1lLWhkcn0gIgotKyMgZGVmaW5lIExJTktfRUhfU1BF QyAiLS1uby1hZGQtbmVlZGVkICV7IXN0YXRpYzotLWVoLWZyYW1lLWhkcn0gIgotICNlbmRpZgot IAotICNkZWZpbmUgQ1BQX09TX0xJTlVYX1NQRUMgIi1EX191bml4X18gLURfX2dudV9saW51eF9f IC1EX19saW51eF9fIFwKCmRpZmYgLS1naXQgYS9nY2M0Ni1wcGMzMi1yZXRhZGRyLnBhdGNoIGIv Z2NjNDYtcHBjMzItcmV0YWRkci5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg ZTlhZTFiYy4uMDAwMDAwMAotLS0gYS9nY2M0Ni1wcGMzMi1yZXRhZGRyLnBhdGNoCisrKyAvZGV2 L251bGwKQEAgLTEsODYgKzAsMCBAQAotMjAwNS0xMS0yOCAgSmFrdWIgSmVsaW5layAgPGpha3Vi QHJlZGhhdC5jb20+Ci0KLQkqIGNvbmZpZy9yczYwMDAvcnM2MDAwLmMgKHJzNjAwMF9yZXR1cm5f YWRkcik6IElmIENPVU5UID09IDAsCi0JcmVhZCB3b3JkIFJFVFVSTl9BRERSRVNTX09GRlNFVCBi eXRlcyBhYm92ZSBhcmdfcG9pbnRlcl9ydHgKLQlpbnN0ZWFkIG9mIGRvaW5nIGFuIGV4dHJhbiBp bmRpcmVjdGlvbiBmcm9tIGZyYW1lX3BvaW50ZXJfcnR4LgotCi0JKiBnY2MuZGcvMjAwNTExMjgt MS5jOiBOZXcgdGVzdC4KLQotLS0tIGdjYy9jb25maWcvcnM2MDAwL3JzNjAwMC5jLmpqCTIwMDUt MTEtMjYgMTQ6Mzg6MDEuMDAwMDAwMDAwICswMTAwCi0rKysgZ2NjL2NvbmZpZy9yczYwMDAvcnM2 MDAwLmMJMjAwNS0xMS0yOCAyMDozMjoxOC4wMDAwMDAwMDAgKzAxMDAKLUBAIC0xMzE2NiwxNyAr MTMxNjYsMjIgQEAgcnM2MDAwX3JldHVybl9hZGRyIChpbnQgY291bnQsIHJ0eCBmcmFtZQotICAg ICAgZG9uJ3QgdHJ5IHRvIGJlIHRvbyBjbGV2ZXIgaGVyZS4gICovCi0gICBpZiAoY291bnQgIT0g MCB8fCAoREVGQVVMVF9BQkkgIT0gQUJJX0FJWCAmJiBmbGFnX3BpYykpCi0gICAgIHsKLSsgICAg ICBydHggeDsKLSAgICAgICBjZnVuLT5tYWNoaW5lLT5yYV9uZWVkc19mdWxsX2ZyYW1lID0gMTsK LSAKLS0gICAgICByZXR1cm4KLS0JZ2VuX3J0eF9NRU0KLS0JICAoUG1vZGUsCi0tCSAgIG1lbW9y eV9hZGRyZXNzCi0tCSAgIChQbW9kZSwKLS0JICAgIHBsdXNfY29uc3RhbnQgKGNvcHlfdG9fcmVn Ci0tCQkJICAgKGdlbl9ydHhfTUVNIChQbW9kZSwKLS0JCQkJCSBtZW1vcnlfYWRkcmVzcyAoUG1v ZGUsIGZyYW1lKSkpLAotLQkJCSAgIFJFVFVSTl9BRERSRVNTX09GRlNFVCkpKTsKLSsgICAgICBp ZiAoY291bnQgPT0gMCkKLSsJewotKwkgIGdjY19hc3NlcnQgKGZyYW1lID09IGZyYW1lX3BvaW50 ZXJfcnR4KTsKLSsJICB4ID0gYXJnX3BvaW50ZXJfcnR4OwotKwl9Ci0rICAgICAgZWxzZQotKwl7 Ci0rCSAgeCA9IG1lbW9yeV9hZGRyZXNzIChQbW9kZSwgZnJhbWUpOwotKwkgIHggPSBjb3B5X3Rv X3JlZyAoZ2VuX3J0eF9NRU0gKFBtb2RlLCB4KSk7Ci0rCX0KLSsKLSsgICAgICB4ID0gcGx1c19j b25zdGFudCAoeCwgUkVUVVJOX0FERFJFU1NfT0ZGU0VUKTsKLSsgICAgICByZXR1cm4gZ2VuX3J0 eF9NRU0gKFBtb2RlLCBtZW1vcnlfYWRkcmVzcyAoUG1vZGUsIHgpKTsKLSAgICAgfQotIAotICAg Y2Z1bi0+bWFjaGluZS0+cmFfbmVlZF9sciA9IDE7Ci0tLS0gZ2NjL3Rlc3RzdWl0ZS9nY2MuZGcv MjAwNTExMjgtMS5jLmpqCTIwMDUtMTAtMTAgMTE6MjE6NDEuMDk2OTk5MDAwICswMjAwCi0rKysg Z2NjL3Rlc3RzdWl0ZS9nY2MuZGcvMjAwNTExMjgtMS5jCTIwMDUtMTEtMjggMTI6MzA6NTcuMDAw MDAwMDAwICswMTAwCi1AQCAtMCwwICsxLDQxIEBACi0rLyogeyBkZy1kbyBydW4gfSAqLwotKy8q IHsgZGctb3B0aW9ucyAiLU8yIC1mcGljIiB9ICovCi0rCi0rZXh0ZXJuIHZvaWQgZXhpdCAoaW50 KTsKLStleHRlcm4gdm9pZCBhYm9ydCAodm9pZCk7Ci0rCi0raW50IGI7Ci0rCi0rc3RydWN0IEEK LSt7Ci0rICB2b2lkICpwYWRbMTQ3XTsKLSsgIHZvaWQgKnJhLCAqaDsKLSsgIGxvbmcgbzsKLSt9 OwotKwotK3ZvaWQKLStfX2F0dHJpYnV0ZV9fKChub2lubGluZSkpCi0rZm9vIChzdHJ1Y3QgQSAq YSwgdm9pZCAqeCkKLSt7Ci0rICBfX2J1aWx0aW5fbWVtc2V0IChhLCAwLCBzaXplb2YgKGEpKTsK LSsgIGlmICghYikKLSsgICAgZXhpdCAoMCk7Ci0rfQotKwotK3ZvaWQKLStfX2F0dHJpYnV0ZV9f KChub2lubGluZSkpCi0rYmFyICh2b2lkKQotK3sKLSsgIHN0cnVjdCBBIGE7Ci0rCi0rICBfX2J1 aWx0aW5fdW53aW5kX2luaXQgKCk7Ci0rICBmb28gKCZhLCBfX2J1aWx0aW5fcmV0dXJuX2FkZHJl c3MgKDApKTsKLSt9Ci0rCi0raW50Ci0rbWFpbiAodm9pZCkKLSt7Ci0rICBiYXIgKCk7Ci0rICBh Ym9ydCAoKTsKLSsgIHJldHVybiAwOwotK30KCmRpZmYgLS1naXQgYS9nY2M0Ni1wcGwtMC4xMC5w YXRjaCBiL2djYzQ2LXBwbC0wLjEwLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl eCBkNDNmMzRmLi4wMDAwMDAwCi0tLSBhL2djYzQ2LXBwbC0wLjEwLnBhdGNoCisrKyAvZGV2L251 bGwKQEAgLTEsMTIxICswLDAgQEAKLTIwMTEtMDEtMjggIEpha3ViIEplbGluZWsgIDxqYWt1YkBy ZWRoYXQuY29tPgotCi0JUmV2ZXJ0OgotCTIwMTEtMDEtMjUgIFNlYmFzdGlhbiBQb3AgIDxzZWJh c3RpYW4ucG9wQGFtZC5jb20+Ci0KLQkqIGNvbmZpZ3VyZTogUmVnZW5lcmF0ZWQuCi0JKiBjb25m aWd1cmUuYWM6IENoZWNrIGZvciB2ZXJzaW9uIDAuMTEgKG9yIGxhdGVyIHJldmlzaW9uKSBvZiBQ UEwuCi1nY2MvCi0JKiBkb2MvaW5zdGFsbC50ZXhpOiBVcGRhdGUgdGhlIGV4cGVjdGVkIHZlcnNp b24gbnVtYmVyIG9mIFBQTCB0byAwLjExLgotCSogZ3JhcGhpdGUtcHBsLmMgKHBwbF9wb3dlcnNl dF9pc19lbXB0eSk6IFJlbW92ZSBub3cgZGVhZCBjb2RlIHVuZGVyCi0JI2lmIFBQTF9WRVJTSU9O X01JTk9SIDwgMTEuCi0KLS0tLSBnY2MvZG9jL2luc3RhbGwudGV4aQkocmV2aXNpb24gMTY5MjA3 KQotKysrIGdjYy9kb2MvaW5zdGFsbC50ZXhpCShyZXZpc2lvbiAxNjkyMDYpCi1AQCAtMzMyLDcg KzMzMiw3IEBAIGFuZCBAb3B0aW9uey0td2l0aC1tcGMtaW5jbHVkZX0uICBBbHRlcm4KLSBkaXN0 cmlidXRpb24gaXMgZm91bmQgaW4gYSBzdWJkaXJlY3Rvcnkgb2YgeW91ciBHQ0Mgc291cmNlcyBu YW1lZAotIEBmaWxle21wY30sIGl0IHdpbGwgYmUgYnVpbHQgdG9nZXRoZXIgd2l0aCBHQ0NALgot IAotLUBpdGVtIFBhcm1hIFBvbHloZWRyYSBMaWJyYXJ5IChQUEwpIHZlcnNpb24gMC4xMQotK0Bp dGVtIFBhcm1hIFBvbHloZWRyYSBMaWJyYXJ5IChQUEwpIHZlcnNpb24gMC4xMAotIAotIE5lY2Vz c2FyeSB0byBidWlsZCBHQ0Mgd2l0aCB0aGUgR3JhcGhpdGUgbG9vcCBvcHRpbWl6YXRpb25zLgot IEl0IGNhbiBiZSBkb3dubG9hZGVkIGZyb20gQHVyZWZ7aHR0cDovL3d3dy5jcy51bmlwci5pdC9w cGwvRG93bmxvYWQvfS4KLS0tLSBnY2MvZ3JhcGhpdGUtcHBsLmMJKHJldmlzaW9uIDE2OTIwNykK LSsrKyBnY2MvZ3JhcGhpdGUtcHBsLmMJKHJldmlzaW9uIDE2OTIwNikKLUBAIC01MjEsNiArNTIx LDE1IEBAIGRlYnVnX2dtcF92YWx1ZSAobXB6X3QgdmFsKQotIGJvb2wKLSBwcGxfcG93ZXJzZXRf aXNfZW1wdHkgKHBwbF9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25fdCBwcykKLSB7Ci0r I2lmIFBQTF9WRVJTSU9OX01BSk9SID09IDAgJiYgUFBMX1ZFUlNJT05fTUlOT1IgPCAxMQotKyAg LyogT24gUFBMIDAuMTAsCi0rICAgICBwcGxfUG9pbnRzZXRfUG93ZXJzZXRfQ19Qb2x5aGVkcm9u X2NvbnRhaW5zX2ludGVnZXJfcG9pbnQgKHBzKQotKyAgICAgdGFrZXMgdG9vIGxvbmcgb24gc29t ZSBjYXNlcyBhbmQgc28gd2UgY2FsbCBfaXNfZW1wdHkgaW5zdGVhZC4gICovCi0rICByZXR1cm4g cHBsX1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl9pc19lbXB0eSAocHMpOwotKwotKyNl bHNlCi0rICAvKiBPbiBQUEwgMC4xMSBvciBsYXRlciwgd2UgY2FuIGNoZWNrIGZvciBpbnRlZ2Vy IGZlYXNpYmlsaXR5IHVzaW5nCi0rICAgICB0aGUgUElQIHNvbHZlci4gICovCi0gICBwcGxfUElQ X1Byb2JsZW1fdCBwaXA7Ci0gICBwcGxfZGltZW5zaW9uX3R5cGUgZDsKLSAgIHBwbF9jb25zdF9D b25zdHJhaW50X1N5c3RlbV90IHBjczsKLUBAIC01NjEsNiArNTcwLDcgQEAgcHBsX3Bvd2Vyc2V0 X2lzX2VtcHR5IChwcGxfUG9pbnRzZXRfUG93ZQotICAgcHBsX2RlbGV0ZV9Qb2ludHNldF9Qb3dl cnNldF9DX1BvbHloZWRyb25faXRlcmF0b3IgKGVuZCk7Ci0gCi0gICByZXR1cm4gIWhhc19pbnRl Z2VyX3NvbHV0aW9uczsKLSsjZW5kaWYKLSB9Ci0gCi0gI2VuZGlmCi0tLS0gY29uZmlndXJlLmFj CShyZXZpc2lvbiAxNjkyMDcpCi0rKysgY29uZmlndXJlLmFjCShyZXZpc2lvbiAxNjkyMDYpCi1A QCAtMTY4OCw5ICsxNjg4LDkgQEAgaWYgdGVzdCAieCR3aXRoX3BwbCIgIT0geG5vOyB0aGVuCi0g ICBpZiB0ZXN0ICIkZW5hYmxlX3BwbF92ZXJzaW9uX2NoZWNrIiAhPSBubzsgdGhlbgotICAgICBz YXZlZF9DRkxBR1M9IiRDRkxBR1MiCi0gICAgIENGTEFHUz0iJENGTEFHUyAkcHBsaW5jICRnbXBp bmMiCi0tICAgIEFDX01TR19DSEVDS0lORyhbZm9yIHZlcnNpb24gMC4xMSAocmV2aXNpb24gMCBv ciBsYXRlcikgb2YgUFBMXSkKLSsgICAgQUNfTVNHX0NIRUNLSU5HKFtmb3IgdmVyc2lvbiAwLjEw IChyZXZpc2lvbiAwIG9yIGxhdGVyKSBvZiBQUExdKQotICAgICBBQ19UUllfQ09NUElMRShbI2lu Y2x1ZGUgInBwbF9jLmgiXSxbCi0tICAgICNpZiBQUExfVkVSU0lPTl9NQUpPUiAhPSAwIHx8IFBQ TF9WRVJTSU9OX01JTk9SIDwgMTEKLSsgICAgI2lmIFBQTF9WRVJTSU9OX01BSk9SICE9IDAgfHwg UFBMX1ZFUlNJT05fTUlOT1IgPCAxMAotICAgICBjaG9rZSBtZQotICAgICAjZW5kaWYKLSAgICAg XSwgW0FDX01TR19SRVNVTFQoW3llc10pXSwgW0FDX01TR19SRVNVTFQoW25vXSk7IHBwbGxpYnM9 IDsgcHBsaW5jPSA7IHdpdGhfcHBsPW5vIF0pCi0tLS0gY29uZmlndXJlCShyZXZpc2lvbiAxNjky MDcpCi0rKysgY29uZmlndXJlCShyZXZpc2lvbiAxNjkyMDYpCi1AQCAtNTc3NSw4ICs1Nzc1LDgg QEAgZmkKLSAgIGlmIHRlc3QgIiRlbmFibGVfcHBsX3ZlcnNpb25fY2hlY2siICE9IG5vOyB0aGVu Ci0gICAgIHNhdmVkX0NGTEFHUz0iJENGTEFHUyIKLSAgICAgQ0ZMQUdTPSIkQ0ZMQUdTICRwcGxp bmMgJGdtcGluYyIKLS0gICAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99 OiBjaGVja2luZyBmb3IgdmVyc2lvbiAwLjExIChyZXZpc2lvbiAwIG9yIGxhdGVyKSBvZiBQUEwi ID4mNQotLSRhc19lY2hvX24gImNoZWNraW5nIGZvciB2ZXJzaW9uIDAuMTEgKHJldmlzaW9uIDAg b3IgbGF0ZXIpIG9mIFBQTC4uLiAiID4mNjsgfQotKyAgICB7ICRhc19lY2hvICIkYXNfbWU6JHth c19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciB2ZXJzaW9uIDAuMTAgKHJldmlzaW9uIDAg b3IgbGF0ZXIpIG9mIFBQTCIgPiY1Ci0rJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yIHZlcnNpb24g MC4xMCAocmV2aXNpb24gMCBvciBsYXRlcikgb2YgUFBMLi4uICIgPiY2OyB9Ci0gICAgIGNhdCBj b25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKLSAvKiBlbmQgY29uZmRlZnMu aC4gICovCi0gI2luY2x1ZGUgInBwbF9jLmgiCi1AQCAtNTc4NCw3ICs1Nzg0LDcgQEAgaW50Ci0g bWFpbiAoKQotIHsKLSAKLS0gICAgI2lmIFBQTF9WRVJTSU9OX01BSk9SICE9IDAgfHwgUFBMX1ZF UlNJT05fTUlOT1IgPCAxMQotKyAgICAjaWYgUFBMX1ZFUlNJT05fTUFKT1IgIT0gMCB8fCBQUExf VkVSU0lPTl9NSU5PUiA8IDEwCi0gICAgIGNob2tlIG1lCi0gICAgICNlbmRpZgotIAotLS0tIGdj Yy90ZXN0c3VpdGUvZ2NjLmRnL2dyYXBoaXRlL2ludGVyY2hhbmdlLTExLmMuamoJMjAxMS0wMS0y OCAwOTozODoxMS4wMDAwMDAwMDAgKzAxMDAKLSsrKyBnY2MvdGVzdHN1aXRlL2djYy5kZy9ncmFw aGl0ZS9pbnRlcmNoYW5nZS0xMS5jCTIwMTEtMDEtMjggMTE6MDY6NTYuNDYxNDI5ODQ4ICswMTAw Ci1AQCAtNDYsNSArNDYsNSBAQCBtYWluICh2b2lkKQotICAgcmV0dXJuIDA7Ci0gfQotIAotLS8q IHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAid2lsbCBiZSBpbnRlcmNoYW5nZWQi IDEgImdyYXBoaXRlIiB9IH0gKi8KLSsvKiB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtdGlt ZXMgIndpbGwgYmUgaW50ZXJjaGFuZ2VkIiAxICJncmFwaGl0ZSIgeyB4ZmFpbCAqLSotKiB9IH0g fSAqLwotIC8qIHsgZGctZmluYWwgeyBjbGVhbnVwLXRyZWUtZHVtcCAiZ3JhcGhpdGUiIH0gfSAq LwotLS0tIGdjYy90ZXN0c3VpdGUvZ2NjLmRnL2dyYXBoaXRlL2ludGVyY2hhbmdlLTEzLmMuamoJ MjAxMS0wMS0yOCAwOTozODoxMi4wMDAwMDAwMDAgKzAxMDAKLSsrKyBnY2MvdGVzdHN1aXRlL2dj Yy5kZy9ncmFwaGl0ZS9pbnRlcmNoYW5nZS0xMy5jCTIwMTEtMDEtMjggMTE6MDc6MDguMTgyNDI5 MjIzICswMTAwCi1AQCAtNTAsNSArNTAsNSBAQCBtYWluICh2b2lkKQotIH0KLSAKLSAKLS0vKiB7 IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtdGltZXMgIndpbGwgYmUgaW50ZXJjaGFuZ2VkIiAx ICJncmFwaGl0ZSIgfSB9ICovCi0rLyogeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVz ICJ3aWxsIGJlIGludGVyY2hhbmdlZCIgMSAiZ3JhcGhpdGUiIHsgeGZhaWwgKi0qLSogfSB9IH0g Ki8KLSAvKiB7IGRnLWZpbmFsIHsgY2xlYW51cC10cmVlLWR1bXAgImdyYXBoaXRlIiB9IH0gKi8K LS0tLSBnY2MvdGVzdHN1aXRlL2djYy5kZy9ncmFwaGl0ZS9pbnRlcmNoYW5nZS0xLmMuamoJMjAx MS0wMS0yOCAwOTozODoxMy4wMDAwMDAwMDAgKzAxMDAKLSsrKyBnY2MvdGVzdHN1aXRlL2djYy5k Zy9ncmFwaGl0ZS9pbnRlcmNoYW5nZS0xLmMJMjAxMS0wMS0yOCAxMTowNjo0Mi4xNjA0MjkxOTMg KzAxMDAKLUBAIC00OSw1ICs0OSw1IEBAIG1haW4gKHZvaWQpCi0gICByZXR1cm4gMDsKLSB9Ci0g Ci0tLyogeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICJ3aWxsIGJlIGludGVyY2hh bmdlZCIgMSAiZ3JhcGhpdGUiIH0gfSAqLwotKy8qIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVt cC10aW1lcyAid2lsbCBiZSBpbnRlcmNoYW5nZWQiIDEgImdyYXBoaXRlIiB7IHhmYWlsICotKi0q IH0gfSB9ICovCi0gLyogeyBkZy1maW5hbCB7IGNsZWFudXAtdHJlZS1kdW1wICJncmFwaGl0ZSIg fSB9ICovCi0tLS0gZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9ncmFwaGl0ZS9pbnRlcmNoYW5n ZS0zLmY5MC5qagkyMDExLTAxLTI4IDA5OjM4OjA1LjAwMDAwMDAwMCArMDEwMAotKysrIGdjYy90 ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZ3JhcGhpdGUvaW50ZXJjaGFuZ2UtMy5mOTAJMjAxMS0wMS0y OCAxMTowNzo0Ni4zMTM0MjA0NDEgKzAxMDAKLUBAIC0yNCw1ICsyNCw1IEBAIFByb2dyYW0gRk9P Ci0gCi0gZW5kIFByb2dyYW0gRk9PCi0gCi0tISB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAt dGltZXMgIndpbGwgYmUgaW50ZXJjaGFuZ2VkIiAxICJncmFwaGl0ZSIgfSB9Ci0rISB7IGRnLWZp bmFsIHsgc2Nhbi10cmVlLWR1bXAtdGltZXMgIndpbGwgYmUgaW50ZXJjaGFuZ2VkIiAxICJncmFw aGl0ZSIgeyB4ZmFpbCAqLSotKiB9IH0gfQotICEgeyBkZy1maW5hbCB7IGNsZWFudXAtdHJlZS1k dW1wICJncmFwaGl0ZSIgfSB9CgpkaWZmIC0tZ2l0IGEvZ2NjNDYtcHIzMzc2My5wYXRjaCBiL2dj YzQ2LXByMzM3NjMucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDg2YzhhYzcu LjAwMDAwMDAKLS0tIGEvZ2NjNDYtcHIzMzc2My5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDE1 MyArMCwwIEBACi0yMDA3LTExLTA2ICBKYWt1YiBKZWxpbmVrICA8amFrdWJAcmVkaGF0LmNvbT4K LQotCVBSIHRyZWUtb3B0aW1pemF0aW9uLzMzNzYzCi0JKiBnY2MuZGcvcHIzMzc2My5jOiBOZXcg dGVzdC4KLQkqIGcrKy5kZy9vcHQvaW5saW5lMTMuQzogTmV3IHRlc3QuCi0KLTIwMDctMTEtMDYg IEphbiBIdWJpY2thICA8amhAc3VzZS5jej4KLQotCVBSIHRyZWUtb3B0aW1pemF0aW9uLzMzNzYz Ci0JKiB0cmVlLWlubGluZS5jIChleHBhbmRfY2FsbF9pbmxpbmUpOiBTaWxlbnRseSBpZ25vcmUg YWx3YXlzX2lubGluZQotCWF0dHJpYnV0ZSBmb3IgcmVkZWZpbmVkIGV4dGVybiBpbmxpbmUgZnVu Y3Rpb25zLgotCi0tLS0gZ2NjL3RyZWUtaW5saW5lLmMuamoJMjAwNy0xMS0wNiAwOToyOTowNC4w MDAwMDAwMDAgKzAxMDAKLSsrKyBnY2MvdHJlZS1pbmxpbmUuYwkyMDA3LTExLTA2IDE2OjE5OjEy LjAwMDAwMDAwMCArMDEwMAotQEAgLTMxNTcsNiArMzE1NywxMiBAQCBleHBhbmRfY2FsbF9pbmxp bmUgKGJhc2ljX2Jsb2NrIGJiLCBnaW1wCi0gCWdvdG8gZWdyZXNzOwotIAotICAgICAgIGlmIChs b29rdXBfYXR0cmlidXRlICgiYWx3YXlzX2lubGluZSIsIERFQ0xfQVRUUklCVVRFUyAoZm4pKQot KwkvKiBGb3IgZXh0ZXJuIGlubGluZSBmdW5jdGlvbnMgdGhhdCBnZXQgcmVkZWZpbmVkIHdlIGFs d2F5cwotKwkgICBzaWxlbnRseSBpZ25vcmVkIGFsd2F5X2lubGluZSBmbGFnLiBCZXR0ZXIgYmVo YXZpb3VyIHdvdWxkCi0rCSAgIGJlIHRvIGJlIGFibGUgdG8ga2VlcCBib3RoIGJvZGllcyBhbmQg dXNlIGV4dGVybiBpbmxpbmUgYm9keQotKwkgICBmb3IgaW5saW5pbmcsIGJ1dCB3ZSBjYW4ndCBk byB0aGF0IGJlY2F1c2UgZnJvbnRlbmRzIG92ZXJ3cml0ZQotKwkgICB0aGUgYm9keS4gICovCi0r CSAgJiYgIWNnX2VkZ2UtPmNhbGxlZS0+bG9jYWwucmVkZWZpbmVkX2V4dGVybl9pbmxpbmUKLSAJ ICAvKiBBdm9pZCB3YXJuaW5ncyBkdXJpbmcgZWFybHkgaW5saW5lIHBhc3MuICovCi0gCSAgJiYg Y2dyYXBoX2dsb2JhbF9pbmZvX3JlYWR5KQotIAl7Ci0tLS0gZ2NjL3Rlc3RzdWl0ZS9nY2MuZGcv cHIzMzc2My5jLmpqCTIwMDctMTEtMDYgMTY6MTk6MTIuMDAwMDAwMDAwICswMTAwCi0rKysgZ2Nj L3Rlc3RzdWl0ZS9nY2MuZGcvcHIzMzc2My5jCTIwMDctMTEtMDYgMTY6MTk6MTIuMDAwMDAwMDAw ICswMTAwCi1AQCAtMCwwICsxLDYwIEBACi0rLyogUFIgdHJlZS1vcHRpbWl6YXRpb24vMzM3NjMg Ki8KLSsvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLwotKy8qIHsgZGctb3B0aW9ucyAiLU8yIiB9ICov Ci0rCi0rdHlwZWRlZiBzdHJ1Y3QKLSt7Ci0rICB2b2lkICphOwotKyAgdm9pZCAqYjsKLSt9IFQ7 Ci0rZXh0ZXJuIHZvaWQgKmZvbyAoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICopOwotK2V4dGVy biB2b2lkICpiYXIgKHZvaWQgKiwgY29uc3QgY2hhciAqLCBUKTsKLStleHRlcm4gaW50IGJheiAo Y29uc3QgY2hhciAqLCBpbnQpOwotKwotK2V4dGVybiBpbmxpbmUgX19hdHRyaWJ1dGVfXyAoKGFs d2F5c19pbmxpbmUsIGdudV9pbmxpbmUpKSBpbnQKLStiYXogKGNvbnN0IGNoYXIgKngsIGludCB5 KQotK3sKLSsgIHJldHVybiAyOwotK30KLSsKLStpbnQKLStiYXogKGNvbnN0IGNoYXIgKngsIGlu dCB5KQotK3sKLSsgIHJldHVybiAxOwotK30KLSsKLStpbnQgeGEsIHhiOwotKwotK3N0YXRpYyB2 b2lkICoKLStpbmwgKGNvbnN0IGNoYXIgKngsIGNvbnN0IGNoYXIgKnkpCi0rewotKyAgVCB0ID0g eyAmeGEsICZ4YiB9OwotKyAgaW50ICpmID0gKGludCAqKSBfX2J1aWx0aW5fbWFsbG9jIChzaXpl b2YgKGludCkpOwotKyAgY29uc3QgY2hhciAqejsKLSsgIGludCBvID0gMDsKLSsgIHZvaWQgKnIg PSAwOwotKwotKyAgZm9yICh6ID0geTsgKno7IHorKykKLSsgICAgewotKyAgICAgIGlmICgqeiA9 PSAncicpCi0rCW8gfD0gMTsKLSsgICAgICBpZiAoKnogPT0gJ3cnKQotKwlvIHw9IDI7Ci0rICAg IH0KLSsgIGlmIChvID09IDEpCi0rICAgICpmID0gYmF6ICh4LCAwKTsKLSsgIGlmIChvID09IDIp Ci0rICAgICpmID0gYmF6ICh4LCAxKTsKLSsgIGlmIChvID09IDMpCi0rICAgICpmID0gYmF6ICh4 LCAyKTsKLSsKLSsgIGlmIChvICYmICpmID4gMCkKLSsgICAgciA9IGJhciAoZiwgInciLCB0KTsK LSsgIHJldHVybiByOwotK30KLSsKLSt2b2lkICoKLStmb28gKGNvbnN0IGNoYXIgKngsIGNvbnN0 IGNoYXIgKnkpCi0rewotKyAgcmV0dXJuIGlubCAoeCwgeSk7Ci0rfQotLS0tIGdjYy90ZXN0c3Vp dGUvZysrLmRnL29wdC9pbmxpbmUxMy5DLmpqCTIwMDctMTEtMDYgMTY6MjA6MjAuMDAwMDAwMDAw ICswMTAwCi0rKysgZ2NjL3Rlc3RzdWl0ZS9nKysuZGcvb3B0L2lubGluZTEzLkMJMjAwNy0xMS0w NiAxNjoyMTozMC4wMDAwMDAwMDAgKzAxMDAKLUBAIC0wLDAgKzEsNjAgQEAKLSsvLyBQUiB0cmVl LW9wdGltaXphdGlvbi8zMzc2MwotKy8vIHsgZGctZG8gY29tcGlsZSB9Ci0rLy8geyBkZy1vcHRp b25zICItTzIiIH0KLSsKLSt0eXBlZGVmIHN0cnVjdAotK3sKLSsgIHZvaWQgKmE7Ci0rICB2b2lk ICpiOwotK30gVDsKLStleHRlcm4gdm9pZCAqZm9vIChjb25zdCBjaGFyICosIGNvbnN0IGNoYXIg Kik7Ci0rZXh0ZXJuIHZvaWQgKmJhciAodm9pZCAqLCBjb25zdCBjaGFyICosIFQpOwotK2V4dGVy biBpbnQgYmF6IChjb25zdCBjaGFyICosIGludCk7Ci0rCi0rZXh0ZXJuIGlubGluZSBfX2F0dHJp YnV0ZV9fICgoYWx3YXlzX2lubGluZSwgZ251X2lubGluZSkpIGludAotK2JheiAoY29uc3QgY2hh ciAqeCwgaW50IHkpCi0rewotKyAgcmV0dXJuIDI7Ci0rfQotKwotK2ludAotK2JheiAoY29uc3Qg Y2hhciAqeCwgaW50IHkpCi0rewotKyAgcmV0dXJuIDE7Ci0rfQotKwotK2ludCB4YSwgeGI7Ci0r Ci0rc3RhdGljIHZvaWQgKgotK2lubCAoY29uc3QgY2hhciAqeCwgY29uc3QgY2hhciAqeSkKLSt7 Ci0rICBUIHQgPSB7ICZ4YSwgJnhiIH07Ci0rICBpbnQgKmYgPSAoaW50ICopIF9fYnVpbHRpbl9t YWxsb2MgKHNpemVvZiAoaW50KSk7Ci0rICBjb25zdCBjaGFyICp6OwotKyAgaW50IG8gPSAwOwot KyAgdm9pZCAqciA9IDA7Ci0rCi0rICBmb3IgKHogPSB5OyAqejsgeisrKQotKyAgICB7Ci0rICAg ICAgaWYgKCp6ID09ICdyJykKLSsJbyB8PSAxOwotKyAgICAgIGlmICgqeiA9PSAndycpCi0rCW8g fD0gMjsKLSsgICAgfQotKyAgaWYgKG8gPT0gMSkKLSsgICAgKmYgPSBiYXogKHgsIDApOwotKyAg aWYgKG8gPT0gMikKLSsgICAgKmYgPSBiYXogKHgsIDEpOwotKyAgaWYgKG8gPT0gMykKLSsgICAg KmYgPSBiYXogKHgsIDIpOwotKwotKyAgaWYgKG8gJiYgKmYgPiAwKQotKyAgICByID0gYmFyIChm LCAidyIsIHQpOwotKyAgcmV0dXJuIHI7Ci0rfQotKwotK3ZvaWQgKgotK2ZvbyAoY29uc3QgY2hh ciAqeCwgY29uc3QgY2hhciAqeSkKLSt7Ci0rICByZXR1cm4gaW5sICh4LCB5KTsKLSt9CgpkaWZm IC0tZ2l0IGEvZ2NjNDYtcHIzODc1Ny5wYXRjaCBiL2djYzQ2LXByMzg3NTcucGF0Y2gKZGVsZXRl ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDVlNmJmNTcuLjAwMDAwMDAKLS0tIGEvZ2NjNDYtcHIz ODc1Ny5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDEwNSArMCwwIEBACi0yMDA5LTAzLTE4ICBK YWt1YiBKZWxpbmVrICA8amFrdWJAcmVkaGF0LmNvbT4KLQotCVBSIGRlYnVnLzM4NzU3Ci0JKiBs YW5naG9va3MuaCAoc3RydWN0IGxhbmdfaG9va3MpOiBBZGQgc291cmNlX2xhbmd1YWdlIGxhbmdo b29rLgotCSogbGFuZ2hvb2tzLWRlZi5oIChMQU5HX0hPT0tTX1NPVVJDRV9MQU5HVUFHRSk6IERl ZmluZSB0byBOVUxMLgotCShMQU5HX0hPT0tTX0lOSVRJQUxJWkVSKTogQWRkIExBTkdfSE9PS1Nf U09VUkNFX0xBTkdVQUdFLgotCSogYy1sYW5nLmMgKGNfc291cmNlX2xhbmd1YWdlKTogTmV3IGZ1 bmN0aW9uLgotCShMQU5HX0hPT0tTX1NPVVJDRV9MQU5HVUFHRSk6IERlZmluZS4KLQkqIGR3YXJm Mm91dC5jIChhZGRfcHJvdG90eXBlZF9hdHRyaWJ1dGUpOiBBZGQgRFdfQVRfcHJvdG90eXBlCi0J YWxzbyBmb3IgRFdfTEFOR197QyxDOTksT2JqQ30uCi0JKGdlbl9jb21waWxlX3VuaXRfZGllKTog VXNlIGxhbmdfaG9va3Muc291cmNlX2xhbmd1YWdlICgpIHRvCi0JZGV0ZXJtaW5lIGlmIERXX0xB TkdfQzk5IG9yIERXX0xBTkdfQzg5IHNob3VsZCBiZSByZXR1cm5lZC4KLQotLS0tIGdjYy9sYW5n aG9va3MuaC5qagkyMDExLTAxLTAzIDEyOjUzOjA1LjEyNTc0NTQ1MCArMDEwMAotKysrIGdjYy9s YW5naG9va3MuaAkyMDExLTAxLTA0IDE3OjU5OjQzLjE2Njc0NDkyNiArMDEwMAotQEAgLTQ2Nyw2 ICs0NjcsMTAgQEAgc3RydWN0IGxhbmdfaG9va3MKLSAgICAgIGdpbXBsaWZpY2F0aW9uLiAgKi8K LSAgIGJvb2wgZGVlcF91bnNoYXJpbmc7Ci0gCi0rICAvKiBSZXR1cm4geWVhciBvZiB0aGUgc291 cmNlIGxhbmd1YWdlIHN0YW5kYXJkIHZlcnNpb24gaWYgdGhlIEZFIHN1cHBvcnRzCi0rICAgICBt dWx0aXBsZSB2ZXJzaW9ucyBvZiB0aGUgc3RhbmRhcmQuICAqLwotKyAgaW50ICgqc291cmNlX2xh bmd1YWdlKSAodm9pZCk7Ci0rCi0gICAvKiBXaGVuZXZlciB5b3UgYWRkIGVudHJpZXMgaGVyZSwg bWFrZSBzdXJlIHlvdSBhZGp1c3QgbGFuZ2hvb2tzLWRlZi5oCi0gICAgICBhbmQgbGFuZ2hvb2tz LmMgYWNjb3JkaW5nbHkuICAqLwotIH07Ci0tLS0gZ2NjL2xhbmdob29rcy1kZWYuaC5qagkyMDEx LTAxLTAzIDEyOjUzOjA1LjAwMDAwMDAwMCArMDEwMAotKysrIGdjYy9sYW5naG9va3MtZGVmLmgJ MjAxMS0wMS0wNCAxODowMDo0NC44NTg4NTEwMzAgKzAxMDAKLUBAIC0xMTgsNiArMTE4LDcgQEAg ZXh0ZXJuIHZvaWQgbGhkX29tcF9maXJzdHByaXZhdGl6ZV90eXBlXwotICNkZWZpbmUgTEFOR19I T09LU19FSF9QUk9URUNUX0NMRUFOVVBfQUNUSU9OUwlOVUxMCi0gI2RlZmluZSBMQU5HX0hPT0tT X0VIX1VTRV9DWEFfRU5EX0NMRUFOVVAJZmFsc2UKLSAjZGVmaW5lIExBTkdfSE9PS1NfREVFUF9V TlNIQVJJTkcJZmFsc2UKLSsjZGVmaW5lIExBTkdfSE9PS1NfU09VUkNFX0xBTkdVQUdFCU5VTEwK LSAKLSAvKiBBdHRyaWJ1dGUgaG9va3MuICAqLwotICNkZWZpbmUgTEFOR19IT09LU19BVFRSSUJV VEVfVEFCTEUJCU5VTEwKLUBAIC0zMDcsNyArMzA4LDggQEAgZXh0ZXJuIHZvaWQgbGhkX2VuZF9z ZWN0aW9uICh2b2lkKTsKLSAgIExBTkdfSE9PS1NfRUhfUlVOVElNRV9UWVBFLCBcCi0gICBMQU5H X0hPT0tTX0VIX1BST1RFQ1RfQ0xFQU5VUF9BQ1RJT05TLCBcCi0gICBMQU5HX0hPT0tTX0VIX1VT RV9DWEFfRU5EX0NMRUFOVVAsIFwKLS0gIExBTkdfSE9PS1NfREVFUF9VTlNIQVJJTkcgXAotKyAg TEFOR19IT09LU19ERUVQX1VOU0hBUklORywgXAotKyAgTEFOR19IT09LU19TT1VSQ0VfTEFOR1VB R0UgXAotIH0KLSAKLSAjZW5kaWYgLyogR0NDX0xBTkdfSE9PS1NfREVGX0ggKi8KLS0tLSBnY2Mv Yy1sYW5nLmMuamoJMjAxMS0wMS0wMyAxMjo1MzowNS4zNzYwNTY5MzYgKzAxMDAKLSsrKyBnY2Mv Yy1sYW5nLmMJMjAxMS0wMS0wNCAxNzo1OTo0My4xNjc3NDM3OTggKzAxMDAKLUBAIC0zNiw2ICsz NiwxMiBAQCBhbG9uZyB3aXRoIEdDQzsgc2VlIHRoZSBmaWxlIENPUFlJTkczLiAgCi0gCi0gZW51 bSBjX2xhbmd1YWdlX2tpbmQgY19sYW5ndWFnZSA9IGNsa19jOwotIAotK3N0YXRpYyBpbnQKLStj X3NvdXJjZV9sYW5ndWFnZSAodm9pZCkKLSt7Ci0rICByZXR1cm4gZmxhZ19pc29jOTkgPyAxOTk5 IDogMTk4OTsKLSt9Ci0rCi0gLyogTGFuZyBob29rcyBjb21tb24gdG8gQyBhbmQgT2JqQyBhcmUg ZGVjbGFyZWQgaW4gYy1vYmpjLWNvbW1vbi5oOwotICAgIGNvbnNlcXVlbnRseSwgdGhlcmUgc2hv dWxkIGJlIHZlcnkgZmV3IGhvb2tzIGJlbG93LiAgKi8KLSAKLUBAIC00Myw2ICs0OSw4IEBAIGVu dW0gY19sYW5ndWFnZV9raW5kIGNfbGFuZ3VhZ2UgPSBjbGtfYzsKLSAjZGVmaW5lIExBTkdfSE9P S1NfTkFNRSAiR05VIEMiCi0gI3VuZGVmIExBTkdfSE9PS1NfSU5JVAotICNkZWZpbmUgTEFOR19I T09LU19JTklUIGNfb2JqY19jb21tb25faW5pdAotKyN1bmRlZiBMQU5HX0hPT0tTX1NPVVJDRV9M QU5HVUFHRQotKyNkZWZpbmUgTEFOR19IT09LU19TT1VSQ0VfTEFOR1VBR0UgY19zb3VyY2VfbGFu Z3VhZ2UKLSAKLSAvKiBFYWNoIGZyb250IGVuZCBwcm92aWRlcyBpdHMgb3duIGxhbmcgaG9vayBp bml0aWFsaXplci4gICovCi0gc3RydWN0IGxhbmdfaG9va3MgbGFuZ19ob29rcyA9IExBTkdfSE9P S1NfSU5JVElBTElaRVI7Ci0tLS0gZ2NjL2R3YXJmMm91dC5jLmpqCTIwMTEtMDEtMDMgMTI6NTM6 MDUuMTAyMDU2NDc1ICswMTAwCi0rKysgZ2NjL2R3YXJmMm91dC5jCTIwMTEtMDEtMDQgMTg6MDM6 MTQuNTM0MTUxNzYzICswMTAwCi1AQCAtMTc2NTAsOSArMTc2NTAsMTggQEAgYWRkX2JpdF9zaXpl X2F0dHJpYnV0ZSAoZHdfZGllX3JlZiBkaWUsIAotIHN0YXRpYyBpbmxpbmUgdm9pZAotIGFkZF9w cm90b3R5cGVkX2F0dHJpYnV0ZSAoZHdfZGllX3JlZiBkaWUsIHRyZWUgZnVuY190eXBlKQotIHsK LS0gIGlmIChnZXRfQVRfdW5zaWduZWQgKGNvbXBfdW5pdF9kaWUgKCksIERXX0FUX2xhbmd1YWdl KSA9PSBEV19MQU5HX0M4OQotLSAgICAgICYmIHByb3RvdHlwZV9wIChmdW5jX3R5cGUpKQotLSAg ICBhZGRfQVRfZmxhZyAoZGllLCBEV19BVF9wcm90b3R5cGVkLCAxKTsKLSsgIHN3aXRjaCAoZ2V0 X0FUX3Vuc2lnbmVkIChjb21wX3VuaXRfZGllICgpLCBEV19BVF9sYW5ndWFnZSkpCi0rICAgIHsK LSsgICAgY2FzZSBEV19MQU5HX0M6Ci0rICAgIGNhc2UgRFdfTEFOR19DODk6Ci0rICAgIGNhc2Ug RFdfTEFOR19DOTk6Ci0rICAgIGNhc2UgRFdfTEFOR19PYmpDOgotKyAgICAgIGlmIChwcm90b3R5 cGVfcCAoZnVuY190eXBlKSAhPSBOVUxMKQotKwlhZGRfQVRfZmxhZyAoZGllLCBEV19BVF9wcm90 b3R5cGVkLCAxKTsKLSsgICAgICBicmVhazsKLSsgICAgZGVmYXVsdDoKLSsgICAgICBicmVhazsK LSsgICAgfQotIH0KLSAKLSAvKiBBZGQgYW4gJ2Fic3RyYWN0X29yaWdpbicgYXR0cmlidXRlIGJl bG93IGEgZ2l2ZW4gRElFLiAgVGhlIERJRSBpcyBmb3VuZAotQEAgLTE5ODc1LDYgKzE5ODg0LDEw IEBAIGdlbl9jb21waWxlX3VuaXRfZGllIChjb25zdCBjaGFyICpmaWxlbmEKLSAJbGFuZ3VhZ2Ug PSBEV19MQU5HX09iakM7Ci0gICAgICAgZWxzZSBpZiAoc3RyY21wIChsYW5ndWFnZV9zdHJpbmcs ICJHTlUgT2JqZWN0aXZlLUMrKyIpID09IDApCi0gCWxhbmd1YWdlID0gRFdfTEFOR19PYmpDX3Bs dXNfcGx1czsKLSsgICAgICBlbHNlIGlmIChzdHJjbXAgKGxhbmd1YWdlX3N0cmluZywgIkdOVSBD IikgPT0gMAotKwkgICAgICAgJiYgbGFuZ19ob29rcy5zb3VyY2VfbGFuZ3VhZ2UKLSsJICAgICAg ICYmIGxhbmdfaG9va3Muc291cmNlX2xhbmd1YWdlICgpID49IDE5OTkpCi0rCWxhbmd1YWdlID0g RFdfTEFOR19DOTk7Ci0gICAgIH0KLSAKLSAgIGFkZF9BVF91bnNpZ25lZCAoZGllLCBEV19BVF9s YW5ndWFnZSwgbGFuZ3VhZ2UpOwoKZGlmZiAtLWdpdCBhL2djYzQ2LXByNDc4NTgucGF0Y2ggYi9n Y2M0Ni1wcjQ3ODU4LnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4ZDA1YWM2 Li4wMDAwMDAwCi0tLSBhL2djYzQ2LXByNDc4NTgucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwy MyArMCwwIEBACi0yMDExLTAzLTAxICBKYWt1YiBKZWxpbmVrICA8amFrdWJAcmVkaGF0LmNvbT4K LQotCVBSIGRlYnVnLzQ3ODU4Ci0JKiBvcHRzLmMgKGRlZmF1bHRfb3B0aW9uc190YWJsZSk6IEVu YWJsZSAtZmlwYS1zcmEgYnkgZGVmYXVsdAotCW9ubHkgZm9yIC1PMywgbm90IGZvciAtTzIgYW5k IC1Pcy4KLQotLS0tIGdjYy9vcHRzLmMuamoJMjAxMS0wMi0yMCAwODozNjo1OS44ODgzOTA4OTAg KzAxMDAKLSsrKyBnY2Mvb3B0cy5jCTIwMTEtMDMtMDEgMTI6MDQ6MzguNjgwNTU4MzUxICswMTAw Ci1AQCAtNDg3LDEzICs0ODcsMTMgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBkZWZhdWx0X29wdGlv bnMgZGVmYQotICAgICB7IE9QVF9MRVZFTFNfMl9QTFVTLCBPUFRfZnRyZWVfc3dpdGNoX2NvbnZl cnNpb24sIE5VTEwsIDEgfSwKLSAgICAgeyBPUFRfTEVWRUxTXzJfUExVUywgT1BUX2ZpcGFfY3As IE5VTEwsIDEgfSwKLSAgICAgeyBPUFRfTEVWRUxTXzJfUExVUywgT1BUX2ZkZXZpcnR1YWxpemUs IE5VTEwsIDEgfSwKLS0gICAgeyBPUFRfTEVWRUxTXzJfUExVUywgT1BUX2ZpcGFfc3JhLCBOVUxM LCAxIH0sCi0gICAgIHsgT1BUX0xFVkVMU18yX1BMVVMsIE9QVF9mYWxpZ25fbG9vcHMsIE5VTEws IDEgfSwKLSAgICAgeyBPUFRfTEVWRUxTXzJfUExVUywgT1BUX2ZhbGlnbl9qdW1wcywgTlVMTCwg MSB9LAotICAgICB7IE9QVF9MRVZFTFNfMl9QTFVTLCBPUFRfZmFsaWduX2xhYmVscywgTlVMTCwg MSB9LAotICAgICB7IE9QVF9MRVZFTFNfMl9QTFVTLCBPUFRfZmFsaWduX2Z1bmN0aW9ucywgTlVM TCwgMSB9LAotIAotICAgICAvKiAtTzMgb3B0aW1pemF0aW9ucy4gICovCi0rICAgIHsgT1BUX0xF VkVMU18zX1BMVVMsIE9QVF9maXBhX3NyYSwgTlVMTCwgMSB9LAotICAgICB7IE9QVF9MRVZFTFNf M19QTFVTLCBPUFRfZnRyZWVfbG9vcF9kaXN0cmlidXRlX3BhdHRlcm5zLCBOVUxMLCAxIH0sCi0g ICAgIHsgT1BUX0xFVkVMU18zX1BMVVMsIE9QVF9mcHJlZGljdGl2ZV9jb21tb25pbmcsIE5VTEws IDEgfSwKLSAgICAgLyogSW5saW5pbmcgb2YgZnVuY3Rpb25zIHJlZHVjaW5nIHNpemUgaXMgYSBn b29kIGlkZWEgd2l0aCAtT3MKCmRpZmYgLS1naXQgYS9nY2M0Ni1yaDMzMDc3MS5wYXRjaCBiL2dj YzQ2LXJoMzMwNzcxLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxMDI3MzBm Li4wMDAwMDAwCi0tLSBhL2djYzQ2LXJoMzMwNzcxLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEs MjcgKzAsMCBAQAotMjAwNy0xMC0xNiAgSmFrdWIgSmVsaW5layAgPGpha3ViQHJlZGhhdC5jb20+ Ci0KLQkqIE1ha2VmaWxlLmFtIChsaWJnY2pfdG9vbHNfbGFfTElCQUREKTogQWRkLgotCSogTWFr ZWZpbGUuaW46IFJlZ2VuZXJhdGVkLgotCi0tLS0gbGliamF2YS9NYWtlZmlsZS5hbS5qagkyMDA5 LTA1LTA2IDA4OjE0OjUwLjAwMDAwMDAwMCArMDIwMAotKysrIGxpYmphdmEvTWFrZWZpbGUuYW0J MjAwOS0wNS0wNiAxMDoyNjo0My4wMDAwMDAwMDAgKzAyMDAKLUBAIC01NTAsNyArNTUwLDcgQEAg bGliZ2NqX3Rvb2xzX2xhX0xERkxBR1MgPSAtcnBhdGggJCh0b29sZQotICAkKExJQkdDSl9MRF9T WU1CT0xJQ19GVU5DVElPTlMpICQoTElCSkFWQV9MREZMQUdTX05PVU5ERUYpIFwKLSAgJChMSUJK QVZBX0xERkxBR1NfTElCTUFUSCkKLSAKLS1saWJnY2pfdG9vbHNfbGFfTElCQUREID0gbGliZ2Nq LmxhCi0rbGliZ2NqX3Rvb2xzX2xhX0xJQkFERCA9IC1MJChoZXJlKS8ubGlicyBsaWJnY2oubGEK LSBsaWJnY2pfdG9vbHNfbGFfREVQRU5ERU5DSUVTID0gbGliZ2NqLmxhIGxpYmdjai5zcGVjIFwK LSAgJChsaWJnY2pfdG9vbHNfbGFfdmVyc2lvbl9kZXApCi0gaWYgQlVJTERfU1VCTElCUwotLS0t IGxpYmphdmEvTWFrZWZpbGUuaW4uamoJMjAwOS0wNS0wNiAwODoxNDo0OS4wMDAwMDAwMDAgKzAy MDAKLSsrKyBsaWJqYXZhL01ha2VmaWxlLmluCTIwMDktMDUtMDYgMTA6Mjc6MTguMDAwMDAwMDAw ICswMjAwCi1AQCAtMTExMCw3ICsxMTEwLDcgQEAgbGliZ2NqX3Rvb2xzX2xhX0xERkxBR1MgPSAt cnBhdGggJCh0b29sZQotICAkKExJQkdDSl9MRF9TWU1CT0xJQ19GVU5DVElPTlMpICQoTElCSkFW QV9MREZMQUdTX05PVU5ERUYpIFwKLSAgJChMSUJKQVZBX0xERkxBR1NfTElCTUFUSCkKLSAKLS1s aWJnY2pfdG9vbHNfbGFfTElCQUREID0gbGliZ2NqLmxhCi0rbGliZ2NqX3Rvb2xzX2xhX0xJQkFE RCA9IC1MJChoZXJlKS8ubGlicyBsaWJnY2oubGEKLSBsaWJnY2pfdG9vbHNfbGFfREVQRU5ERU5D SUVTID0gbGliZ2NqLmxhIGxpYmdjai5zcGVjIFwKLSAJJChsaWJnY2pfdG9vbHNfbGFfdmVyc2lv bl9kZXApICQoYW1fX2FwcGVuZF8xOSkKLSBsaWJnY2pfdG9vbHNfbGFfTElOSyA9ICQoTElCTElO SykgJChsaWJnY2pfdG9vbHNfbGFfTERGTEFHUykgXAoKZGlmZiAtLWdpdCBhL2djYzQ2LXNwYXJj LWNvbmZpZy1kZXRlY3Rpb24ucGF0Y2ggYi9nY2M0Ni1zcGFyYy1jb25maWctZGV0ZWN0aW9uLnBh dGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1ZjE5MzdiLi4wMDAwMDAwCi0tLSBh L2djYzQ2LXNwYXJjLWNvbmZpZy1kZXRlY3Rpb24ucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw0 MCArMCwwIEBACi0tLS0gZ2NjL2NvbmZpZy5nY2MuamoJMjAwOC0wNC0yNCAxNTo0Mjo0Ni4wMDAw MDAwMDAgLTA1MDAKLSsrKyBnY2MvY29uZmlnLmdjYwkyMDA4LTA0LTI0IDE1OjQ0OjUxLjAwMDAw MDAwMCAtMDUwMAotQEAgLTI1MzAsNyArMjUzMCw3IEBAIHNwYXJjLSotcnRlbXMqKQotIAl0bWFr ZV9maWxlPSJzcGFyYy90LWVsZiBzcGFyYy90LWNydGluIHNwYXJjL3QtY3J0Zm0gdC1ydGVtcyIK LSAJZXh0cmFfcGFydHM9ImNydGJlZ2luLm8gY3J0ZW5kLm8iCi0gCTs7Ci0tc3BhcmMtKi1saW51 eCopCi0rc3BhcmMtKi1saW51eCogfCBzcGFyY3Y5LSotbGludXgqKQotIAl0bV9maWxlPSIke3Rt X2ZpbGV9IGRieGVsZi5oIGVsZm9zLmggc3BhcmMvc3lzdjQuaCBnbnUtdXNlci5oIGxpbnV4Lmgg Z2xpYmMtc3RkaW50LmgiCi0gCWV4dHJhX29wdGlvbnM9IiR7ZXh0cmFfb3B0aW9uc30gc3BhcmMv bG9uZy1kb3VibGUtc3dpdGNoLm9wdCIKLSAJY2FzZSAke3RhcmdldH0gaW4KLUBAIC0yNjI0LDcg KzI2MjQsNyBAQCBzcGFyYzY0LSotcnRlbXMqKQotIAl0bWFrZV9maWxlPSIke3RtYWtlX2ZpbGV9 IHNwYXJjL3QtY3J0aW4gc3BhcmMvdC1jcnRmbSB0LXJ0ZW1zIgotIAlleHRyYV9wYXJ0cz0iY3J0 YmVnaW4ubyBjcnRlbmQubyIKLSAJOzsKLS1zcGFyYzY0LSotbGludXgqKQotK3NwYXJjNjQqLSot bGludXgqKQotIAl0bV9maWxlPSJzcGFyYy9iaWFyY2g2NC5oICR7dG1fZmlsZX0gZGJ4ZWxmLmgg ZWxmb3MuaCBzcGFyYy9zeXN2NC5oIGdudS11c2VyLmggbGludXguaCBnbGliYy1zdGRpbnQuaCBz cGFyYy9saW51eDY0LmgiCi0gCWV4dHJhX29wdGlvbnM9IiR7ZXh0cmFfb3B0aW9uc30gc3BhcmMv bG9uZy1kb3VibGUtc3dpdGNoLm9wdCIKLSAJdG1ha2VfZmlsZT0iJHt0bWFrZV9maWxlfSBzcGFy Yy90LWxpbnV4IHNwYXJjL3QtbGludXg2NCBzcGFyYy90LWNydGZtIgotLS0tIGxpYmdjYy9jb25m aWcuaG9zdC5qagkyMDA4LTA0LTI0IDE1OjQ2OjE5LjAwMDAwMDAwMCAtMDUwMAotKysrIGxpYmdj Yy9jb25maWcuaG9zdAkyMDA4LTA0LTI0IDE1OjQ2OjQ5LjAwMDAwMDAwMCAtMDUwMAotQEAgLTU3 Miw3ICs1NzIsNyBAQCBzcGFyYzY0LSotb3BlbmJzZCopCi0gCTs7Ci0gc3BhcmMtKi1lbGYqKQot IAk7OwotLXNwYXJjLSotbGludXgqKQkJIyBTUEFSQydzIHJ1bm5pbmcgR05VL0xpbnV4LCBsaWJj NgotK3NwYXJjLSotbGludXgqIHwgc3BhcmN2OSotKi1saW51eCopCQkjIFNQQVJDJ3MgcnVubmlu ZyBHTlUvTGludXgsIGxpYmM2Ci0gCWV4dHJhX3BhcnRzPSIkZXh0cmFfcGFydHMgY3J0ZmFzdG1h dGgubyIKLSAJdG1ha2VfZmlsZT0iJHt0bWFrZV9maWxlfSBzcGFyYy90LWNydGZtIgotIAk7Owot QEAgLTU5MCw3ICs1OTAsNyBAQCBzcGFyYy13cnMtdnh3b3JrcykKLSAJOzsKLSBzcGFyYzY0LSot ZnJlZWJzZCp8dWx0cmFzcGFyYy0qLWZyZWVic2QqKQotIAk7OwotLXNwYXJjNjQtKi1saW51eCop CQkjIDY0LWJpdCBTUEFSQydzIHJ1bm5pbmcgR05VL0xpbnV4Ci0rc3BhcmM2NCotKi1saW51eCop CQkjIDY0LWJpdCBTUEFSQydzIHJ1bm5pbmcgR05VL0xpbnV4Ci0gCWV4dHJhX3BhcnRzPSIkZXh0 cmFfcGFydHMgY3J0ZmFzdG1hdGgubyIKLSAJdG1ha2VfZmlsZT0iJHt0bWFrZV9maWxlfSBzcGFy Yy90LWNydGZtIgotIAk7OwoKZGlmZiAtLWdpdCBhL2djYzQ3LWMrKy1idWlsdGluLXJlZGVjbC5w YXRjaCBiL2djYzQ3LWMrKy1idWlsdGluLXJlZGVjbC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCAwMDAwMDAwLi5mYTMwNzQ1Ci0tLSAvZGV2L251bGwKKysrIGIvZ2NjNDctYysrLWJ1 aWx0aW4tcmVkZWNsLnBhdGNoCkBAIC0wLDAgKzEsMTM0IEBACisyMDA3LTEwLTAyICBKYWt1YiBK ZWxpbmVrICA8amFrdWJAcmVkaGF0LmNvbT4KKworCSogZGVjbC5jIChkdXBsaWNhdGVfZGVjbHMp OiBXaGVuIHJlZGVjbGFyaW5nIGEgYnVpbHRpbiBmdW5jdGlvbiwKKwlrZWVwIHRoZSBtZXJnZWQg ZGVjbCBidWlsdGluIHdoZW5ldmVyIHR5cGVzIG1hdGNoLCBldmVuIGlmIG5ldworCWRlY2wgZGVm aW5lcyBhIGZ1bmN0aW9uLgorCisJKiBnY2MuZGcvYnVpbHRpbnMtODUuYzogTmV3IHRlc3QuCisJ KiBnKysuZGcvZXh0L2J1aWx0aW4zMC5DOiBOZXcgdGVzdC4KKworLS0tIGdjYy9jcC9kZWNsLmMu amoJMjAwNy0xMC0wMSAyMjoxMTowOS4wMDAwMDAwMDAgKzAyMDAKKysrKyBnY2MvY3AvZGVjbC5j CTIwMDctMTAtMDIgMTE6Mzk6NDYuMDAwMDAwMDAwICswMjAwCitAQCAtMjEzNywzOSArMjEzNywz NyBAQCBkdXBsaWNhdGVfZGVjbHMgKHRyZWUgbmV3ZGVjbCwgdHJlZSBvbGRkCisgCSAgREVDTF9B UkdVTUVOVFMgKG9sZGRlY2wpID0gREVDTF9BUkdVTUVOVFMgKG5ld2RlY2wpOworIAkgIERFQ0xf UkVTVUxUIChvbGRkZWNsKSA9IERFQ0xfUkVTVUxUIChuZXdkZWNsKTsKKyAJfQorKyAgICAgIC8q IElmIHJlZGVjbGFyaW5nIGEgYnVpbHRpbiBmdW5jdGlvbiwgaXQgc3RheXMgYnVpbHQgaW4uICAq LworKyAgICAgIGlmICh0eXBlc19tYXRjaCAmJiBERUNMX0JVSUxUX0lOIChvbGRkZWNsKSkKKysJ eworKwkgIERFQ0xfQlVJTFRfSU5fQ0xBU1MgKG5ld2RlY2wpID0gREVDTF9CVUlMVF9JTl9DTEFT UyAob2xkZGVjbCk7CisrCSAgREVDTF9GVU5DVElPTl9DT0RFIChuZXdkZWNsKSA9IERFQ0xfRlVO Q1RJT05fQ09ERSAob2xkZGVjbCk7CisrCSAgLyogSWYgd2UncmUga2VlcGluZyB0aGUgYnVpbHQt aW4gZGVmaW5pdGlvbiwga2VlcCB0aGUgcnRsLAorKwkgICAgIHJlZ2FyZGxlc3Mgb2YgZGVjbGFy YXRpb24gbWF0Y2hlcy4gICovCisrCSAgQ09QWV9ERUNMX1JUTCAob2xkZGVjbCwgbmV3ZGVjbCk7 CisrCSAgaWYgKERFQ0xfQlVJTFRfSU5fQ0xBU1MgKG5ld2RlY2wpID09IEJVSUxUX0lOX05PUk1B TCkKKysJICAgIHsKKysJICAgICAgZW51bSBidWlsdF9pbl9mdW5jdGlvbiBmbmNvZGUgPSBERUNM X0ZVTkNUSU9OX0NPREUgKG5ld2RlY2wpOworKwkgICAgICBzd2l0Y2ggKGZuY29kZSkKKysJCXsK KysJCSAgLyogSWYgYSBjb21wYXRpYmxlIHByb3RvdHlwZSBvZiB0aGVzZSBidWlsdGluIGZ1bmN0 aW9ucworKwkJICAgICBpcyBzZWVuLCBhc3N1bWUgdGhlIHJ1bnRpbWUgaW1wbGVtZW50cyBpdCB3 aXRoIHRoZQorKwkJICAgICBleHBlY3RlZCBzZW1hbnRpY3MuICAqLworKwkJY2FzZSBCVUlMVF9J Tl9TVFBDUFk6CisrCQkgIGlmIChidWlsdGluX2RlY2xfZXhwbGljaXRfcCAoZm5jb2RlKSkKKysJ CSAgICBzZXRfYnVpbHRpbl9kZWNsX2ltcGxpY2l0X3AgKGZuY29kZSwgdHJ1ZSk7CisrCQkgIGJy ZWFrOworKwkJZGVmYXVsdDoKKysJCSAgYnJlYWs7CisrCQl9CisrCSAgICB9CisrCX0KKyAgICAg ICBpZiAobmV3X2RlZmluZXNfZnVuY3Rpb24pCisgCS8qIElmIGRlZmluaW5nIGEgZnVuY3Rpb24g ZGVjbGFyZWQgd2l0aCBvdGhlciBsYW5ndWFnZQorIAkgICBsaW5rYWdlLCB1c2UgdGhlIHByZXZp b3VzbHkgZGVjbGFyZWQgbGFuZ3VhZ2UgbGlua2FnZS4gICovCisgCVNFVF9ERUNMX0xBTkdVQUdF IChuZXdkZWNsLCBERUNMX0xBTkdVQUdFIChvbGRkZWNsKSk7CisgICAgICAgZWxzZSBpZiAodHlw ZXNfbWF0Y2gpCisgCXsKKy0JICAvKiBJZiByZWRlY2xhcmluZyBhIGJ1aWx0aW4gZnVuY3Rpb24s IGFuZCBub3QgYSBkZWZpbml0aW9uLAorLQkgICAgIGl0IHN0YXlzIGJ1aWx0IGluLiAgKi8KKy0J ICBpZiAoREVDTF9CVUlMVF9JTiAob2xkZGVjbCkpCistCSAgICB7CistCSAgICAgIERFQ0xfQlVJ TFRfSU5fQ0xBU1MgKG5ld2RlY2wpID0gREVDTF9CVUlMVF9JTl9DTEFTUyAob2xkZGVjbCk7Cist CSAgICAgIERFQ0xfRlVOQ1RJT05fQ09ERSAobmV3ZGVjbCkgPSBERUNMX0ZVTkNUSU9OX0NPREUg KG9sZGRlY2wpOworLQkgICAgICAvKiBJZiB3ZSdyZSBrZWVwaW5nIHRoZSBidWlsdC1pbiBkZWZp bml0aW9uLCBrZWVwIHRoZSBydGwsCistCQkgcmVnYXJkbGVzcyBvZiBkZWNsYXJhdGlvbiBtYXRj aGVzLiAgKi8KKy0JICAgICAgQ09QWV9ERUNMX1JUTCAob2xkZGVjbCwgbmV3ZGVjbCk7CistCSAg ICAgIGlmIChERUNMX0JVSUxUX0lOX0NMQVNTIChuZXdkZWNsKSA9PSBCVUlMVF9JTl9OT1JNQUwp CistCQl7CistCQkgIGVudW0gYnVpbHRfaW5fZnVuY3Rpb24gZm5jb2RlID0gREVDTF9GVU5DVElP Tl9DT0RFIChuZXdkZWNsKTsKKy0JCSAgc3dpdGNoIChmbmNvZGUpCistCQkgICAgeworLQkJICAg ICAgLyogSWYgYSBjb21wYXRpYmxlIHByb3RvdHlwZSBvZiB0aGVzZSBidWlsdGluIGZ1bmN0aW9u cworLQkJCSBpcyBzZWVuLCBhc3N1bWUgdGhlIHJ1bnRpbWUgaW1wbGVtZW50cyBpdCB3aXRoIHRo ZQorLQkJCSBleHBlY3RlZCBzZW1hbnRpY3MuICAqLworLQkJICAgIGNhc2UgQlVJTFRfSU5fU1RQ Q1BZOgorLQkJICAgICAgaWYgKGJ1aWx0aW5fZGVjbF9leHBsaWNpdF9wIChmbmNvZGUpKQorLQkJ CXNldF9idWlsdGluX2RlY2xfaW1wbGljaXRfcCAoZm5jb2RlLCB0cnVlKTsKKy0JCSAgICAgIGJy ZWFrOworLQkJICAgIGRlZmF1bHQ6CistCQkgICAgICBicmVhazsKKy0JCSAgICB9CistCQl9Cist CSAgICB9CistCisgCSAgREVDTF9SRVNVTFQgKG5ld2RlY2wpID0gREVDTF9SRVNVTFQgKG9sZGRl Y2wpOworIAkgIC8qIERvbid0IGNsZWFyIG91dCB0aGUgYXJndW1lbnRzIGlmIHdlJ3JlIGp1c3Qg cmVkZWNsYXJpbmcgYQorIAkgICAgIGZ1bmN0aW9uLiAgKi8KKy0tLSBnY2MvdGVzdHN1aXRlL2dj Yy5kZy9idWlsdGlucy04NS5jLmpqCTIwMDctMTAtMDIgMTE6MjM6NTEuMDAwMDAwMDAwICswMjAw CisrKysgZ2NjL3Rlc3RzdWl0ZS9nY2MuZGcvYnVpbHRpbnMtODUuYwkyMDA3LTEwLTAyIDExOjI0 OjEyLjAwMDAwMDAwMCArMDIwMAorQEAgLTAsMCArMSwyNSBAQAorKy8qIHsgZGctZG8gY29tcGls ZSB9ICovCisrLyogeyBkZy1vcHRpb25zICItTzIiIH0gKi8KKysKKyt0eXBlZGVmIF9fU0laRV9U WVBFX18gc2l6ZV90OworK2V4dGVybiB2b2lkIF9fY2hrX2ZhaWwgKHZvaWQpOworK2V4dGVybiBp bnQgc25wcmludGYgKGNoYXIgKiwgc2l6ZV90LCBjb25zdCBjaGFyICosIC4uLik7CisrZXh0ZXJu IGlubGluZSBfX2F0dHJpYnV0ZV9fKChnbnVfaW5saW5lLCBhbHdheXNfaW5saW5lKSkgaW50IHNu cHJpbnRmIChjaGFyICphLCBzaXplX3QgYiwgY29uc3QgY2hhciAqZm10LCAuLi4pCisreworKyAg aWYgKF9fYnVpbHRpbl9vYmplY3Rfc2l6ZSAoYSwgMCkgIT0gLTFVTCAmJiBfX2J1aWx0aW5fb2Jq ZWN0X3NpemUgKGEsIDApIDwgYikKKysgICAgX19jaGtfZmFpbCAoKTsKKysgIHJldHVybiBfX2J1 aWx0aW5fc25wcmludGYgKGEsIGIsIGZtdCwgX19idWlsdGluX3ZhX2FyZ19wYWNrICgpKTsKKyt9 CisrZXh0ZXJuIGludCBzbnByaW50ZiAoY2hhciAqLCBzaXplX3QsIGNvbnN0IGNoYXIgKiwgLi4u KSBfX2FzbSAoIm15c25wcmludGYiKTsKKysKKytjaGFyIGJ1ZlsxMF07CisrCisraW50CisrbWFp biAodm9pZCkKKyt7CisrICBzbnByaW50ZiAoYnVmLCAxMCwgIiVkJWRcbiIsIDEwLCAxMCk7Cisr ICByZXR1cm4gMDsKKyt9CisrCisrLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyICJteXNu cHJpbnRmIiB9IH0gKi8KKysvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItbm90ICJfX2No a19mYWlsIiB9IH0gKi8KKy0tLSBnY2MvdGVzdHN1aXRlL2crKy5kZy9leHQvYnVpbHRpbjMwLkMu amoJMjAwNy0xMC0wMiAxMToxOTo0NS4wMDAwMDAwMDAgKzAyMDAKKysrKyBnY2MvdGVzdHN1aXRl L2crKy5kZy9leHQvYnVpbHRpbjMwLkMJMjAwNy0xMC0wMiAxMToyMzoyNi4wMDAwMDAwMDAgKzAy MDAKK0BAIC0wLDAgKzEsMjcgQEAKKysvLyB7IGRnLWRvIGNvbXBpbGUgfQorKy8vIHsgZGctb3B0 aW9ucyAiLU8yIiB9CisrCisrdHlwZWRlZiBfX1NJWkVfVFlQRV9fIHNpemVfdDsKKytleHRlcm4g IkMiIHsKKytleHRlcm4gdm9pZCBfX2Noa19mYWlsICh2b2lkKTsKKytleHRlcm4gaW50IHNucHJp bnRmIChjaGFyICosIHNpemVfdCwgY29uc3QgY2hhciAqLCAuLi4pOworK2V4dGVybiBpbmxpbmUg X19hdHRyaWJ1dGVfXygoZ251X2lubGluZSwgYWx3YXlzX2lubGluZSkpIGludCBzbnByaW50ZiAo Y2hhciAqYSwgc2l6ZV90IGIsIGNvbnN0IGNoYXIgKmZtdCwgLi4uKQorK3sKKysgIGlmIChfX2J1 aWx0aW5fb2JqZWN0X3NpemUgKGEsIDApICE9IC0xVUwgJiYgX19idWlsdGluX29iamVjdF9zaXpl IChhLCAwKSA8IGIpCisrICAgIF9fY2hrX2ZhaWwgKCk7CisrICByZXR1cm4gX19idWlsdGluX3Nu cHJpbnRmIChhLCBiLCBmbXQsIF9fYnVpbHRpbl92YV9hcmdfcGFjayAoKSk7CisrfQorK2V4dGVy biBpbnQgc25wcmludGYgKGNoYXIgKiwgc2l6ZV90LCBjb25zdCBjaGFyICosIC4uLikgX19hc20g KCJteXNucHJpbnRmIik7CisrfQorKworK2NoYXIgYnVmWzEwXTsKKysKKytpbnQKKyttYWluICh2 b2lkKQorK3sKKysgIHNucHJpbnRmIChidWYsIDEwLCAiJWQlZFxuIiwgMTAsIDEwKTsKKysgIHJl dHVybiAwOworK30KKysKKysvLyB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXIgIm15c25wcmlu dGYiIH0gfQorKy8vIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci1ub3QgIl9fY2hrX2ZhaWwi IH0gfQoKZGlmZiAtLWdpdCBhL2djYzQ3LWNsb29nLWRsLnBhdGNoIGIvZ2NjNDctY2xvb2ctZGwu cGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMWVkNzE2NQotLS0gL2Rl di9udWxsCisrKyBiL2djYzQ3LWNsb29nLWRsLnBhdGNoCkBAIC0wLDAgKzEsNDcyIEBACisyMDEx LTAxLTA0ICBKYWt1YiBKZWxpbmVrICA8amFrdWJAcmVkaGF0LmNvbT4KKworCSogTWFrZWZpbGUu aW4gKEJBQ0tFTkRMSUJTKTogTGluayBhZ2FpbnN0IC1sZGwgaW5zdGVhZCBvZgorCS1sY2xvb2cg LWxwcGwuCisJKGdyYXBoaXRlLm8sIGdyYXBoaXRlJS5vKTogRm9yY2UgLU8sIHJlbW92ZSAtZmtl ZXAtaW5saW5lLWZ1bmN0aW9ucy4KKwkoR1JBUEhJVEVfQ0xPT0dfVVRJTF9ILCBHUkFQSElURV9Q T0xZX0gpOiBOZXcuCisJKGdyYXBoaXRlKi5vKTogQWRqdXN0IGRlcGVuZGVuY2llcy4KKwkqIGdy YXBoaXRlLWNsb29nLWNvbXBhdC5oOiBJbmNsdWRlIDxkbGZjbi5oPi4gIFJlZmVyZW5jZSBsaWJj bG9vZyBhbmQKKwlsaWJwcGwgc3ltYm9scyB0aHJvdWdoIHBvaW50ZXJzIGluIGNsb29nX3BvaW50 ZXJzX18gdmFyaWFibGUuCisJKiBncmFwaGl0ZS5jIChpbml0X2Nsb29nX3BvaW50ZXJzKTogTmV3 IGZ1bmN0aW9uLgorCShncmFwaGl0ZV90cmFuc2Zvcm1fbG9vcHMpOiBDYWxsIGluaXRfY2xvb2df cG9pbnRlcnMuCisJKiBncmFwaGl0ZS1jbGFzdC10by1naW1wbGUuYyAoZ2NjX3R5cGVfZm9yX2l2 X29mX2NsYXN0X2xvb3ApOiBSZW5hbWUKKwlzdG10X2ZvciBhcmd1bWVudCB0byBzdG10X2ZvcmEu CisJKiBncmFwaGl0ZS1wb2x5Lmg6IEluY2x1ZGUgZ3JhcGhpdGUtY2xvb2ctdXRpbC5oLgorCist LS0gZ2NjL01ha2VmaWxlLmluLmpqCTIwMTEtMDEtMDMgMTM6NDQ6MTQuMTYzOTAwOTAyICswMTAw CisrKysgZ2NjL01ha2VmaWxlLmluCTIwMTEtMDEtMDQgMTc6NDg6NTMuNTg4Nzc1OTExICswMTAw CitAQCAtOTYyLDYgKzk2Miw4IEBAIEdDQ19QTFVHSU5fSCA9IGdjYy1wbHVnaW4uaCBoaWdobGV2 LXBsdWcKKyBQTFVHSU5fSCA9IHBsdWdpbi5oICQoR0NDX1BMVUdJTl9IKQorIFBMVUdJTl9WRVJT SU9OX0ggPSBwbHVnaW4tdmVyc2lvbi5oIGNvbmZpZ2FyZ3MuaAorIExJQkZVTkNTX0ggPSBsaWJm dW5jcy5oICQoSEFTSFRBQl9IKQorK0dSQVBISVRFX0NMT09HX1VUSUxfSCA9IGdyYXBoaXRlLWNs b29nLXV0aWwuaCBncmFwaGl0ZS1jbG9vZy1jb21wYXQuaAorK0dSQVBISVRFX1BPTFlfSCA9IGdy YXBoaXRlLXBvbHkuaCAkKEdSQVBISVRFX0NMT09HX1VUSUxfSCkKKyAKKyAjDAorICMgTm93IGZp Z3VyZSBvdXQgZnJvbSB0aG9zZSB2YXJpYWJsZXMgaG93IHRvIGNvbXBpbGUgYW5kIGxpbmsuCitA QCAtMTAxNiw3ICsxMDE4LDcgQEAgQlVJTERfTElCREVQUz0gJChCVUlMRF9MSUJJQkVSVFkpCisg IyBhbmQgdGhlIHN5c3RlbSdzIGluc3RhbGxlZCBsaWJyYXJpZXMuCisgTElCUyA9IEBMSUJTQCBs aWJjb21tb24uYSAkKENQUExJQikgJChMSUJJTlRMKSAkKExJQklDT05WKSAkKExJQklCRVJUWSkg XAorIAkkKExJQkRFQ05VTUJFUikgJChIT1NUX0xJQlMpCistQkFDS0VORExJQlMgPSAkKENMT09H TElCUykgJChQUExMSUJTKSAkKEdNUExJQlMpICQoUExVR0lOTElCUykgJChIT1NUX0xJQlMpIFwK KytCQUNLRU5ETElCUyA9ICQoR01QTElCUykgJChpZiAkKENMT09HTElCUyksLWxkbCkgJChQTFVH SU5MSUJTKSAkKEhPU1RfTElCUykgXAorIAkkKFpMSUIpCisgIyBBbnkgc3lzdGVtIGxpYnJhcmll cyBuZWVkZWQganVzdCBmb3IgR05BVC4KKyBTWVNMSUJTID0gQEdOQVRfTElCRVhDQAorQEAgLTI2 MDIsNDAgKzI2MDQsNDAgQEAgc2VzZS5vIDogc2VzZS5jIHNlc2UuaCAkKENPTkZJR19IKSAkKFNZ UworICAgICQoVFJFRV9GTE9XX0gpICQoQ0ZHTE9PUF9IKSAkKFRSRUVfREFUQV9SRUZfSCkgdHJl ZS1wYXNzLmggdmFsdWUtcHJvZi5oCisgZ3JhcGhpdGUubyA6IGdyYXBoaXRlLmMgJChDT05GSUdf SCkgJChTWVNURU1fSCkgY29yZXR5cGVzLmggJChESUFHTk9TVElDX0NPUkVfSCkgXAorICAgICQo VFJFRV9GTE9XX0gpICQoVFJFRV9EVU1QX0gpICQoQ0ZHTE9PUF9IKSAkKFRSRUVfREFUQV9SRUZf SCkgc2VzZS5oIFwKKy0gICAkKERCR0NOVF9IKSBncmFwaGl0ZS1wcGwuaCBncmFwaGl0ZS1wb2x5 LmggZ3JhcGhpdGUtc2NvcC1kZXRlY3Rpb24uaCBcCisrICAgJChEQkdDTlRfSCkgZ3JhcGhpdGUt cHBsLmggJChHUkFQSElURV9QT0xZX0gpIGdyYXBoaXRlLXNjb3AtZGV0ZWN0aW9uLmggXAorICAg IGdyYXBoaXRlLWNsYXN0LXRvLWdpbXBsZS5oIGdyYXBoaXRlLXNlc2UtdG8tcG9seS5oCisgZ3Jh cGhpdGUtYmxvY2tpbmcubyA6IGdyYXBoaXRlLWJsb2NraW5nLmMgJChDT05GSUdfSCkgJChTWVNU RU1fSCkgXAorICAgIGNvcmV0eXBlcy5oICQoVFJFRV9GTE9XX0gpICQoVFJFRV9EVU1QX0gpICQo Q0ZHTE9PUF9IKSAkKFRSRUVfREFUQV9SRUZfSCkgXAorLSAgIHNlc2UuaCBncmFwaGl0ZS1wcGwu aCBncmFwaGl0ZS1wb2x5LmgKKysgICBzZXNlLmggZ3JhcGhpdGUtcHBsLmggJChHUkFQSElURV9Q T0xZX0gpCisgZ3JhcGhpdGUtY2xhc3QtdG8tZ2ltcGxlLm8gOiBncmFwaGl0ZS1jbGFzdC10by1n aW1wbGUuYyAkKENPTkZJR19IKSBcCisgICAgJChTWVNURU1fSCkgY29yZXR5cGVzLmggJChESUFH Tk9TVElDX0NPUkVfSCkgJChUUkVFX0ZMT1dfSCkgJChUUkVFX0RVTVBfSCkgXAorLSAgICQoQ0ZH TE9PUF9IKSAkKFRSRUVfREFUQV9SRUZfSCkgc2VzZS5oIGdyYXBoaXRlLWNsb29nLXV0aWwuaCBc CistICAgZ3JhcGhpdGUtcHBsLmggZ3JhcGhpdGUtcG9seS5oIGdyYXBoaXRlLWNsYXN0LXRvLWdp bXBsZS5oIFwKKysgICAkKENGR0xPT1BfSCkgJChUUkVFX0RBVEFfUkVGX0gpIHNlc2UuaCAkKEdS QVBISVRFX0NMT09HX1VUSUxfSCkgXAorKyAgIGdyYXBoaXRlLXBwbC5oICQoR1JBUEhJVEVfUE9M WV9IKSBncmFwaGl0ZS1jbGFzdC10by1naW1wbGUuaCBcCisgICAgZ3JhcGhpdGUtZGVwZW5kZW5j ZXMuaCBncmFwaGl0ZS1jbG9vZy1jb21wYXQuaAorIGdyYXBoaXRlLWNsb29nLXV0aWwubyA6IGdy YXBoaXRlLWNsb29nLXV0aWwuYyAkKENPTkZJR19IKSAkKFNZU1RFTV9IKSBcCistICAgY29yZXR5 cGVzLmggZ3JhcGhpdGUtY2xvb2ctdXRpbC5oIGdyYXBoaXRlLWNsb29nLWNvbXBhdC5oCisrICAg Y29yZXR5cGVzLmggJChHUkFQSElURV9DTE9PR19VVElMX0gpIGdyYXBoaXRlLWNsb29nLWNvbXBh dC5oCisgZ3JhcGhpdGUtZGVwZW5kZW5jZXMubyA6IGdyYXBoaXRlLWRlcGVuZGVuY2VzLmMgJChD T05GSUdfSCkgJChTWVNURU1fSCkgXAorICAgIGNvcmV0eXBlcy5oICQoVFJFRV9GTE9XX0gpICQo VFJFRV9EVU1QX0gpICQoQ0ZHTE9PUF9IKSAkKFRSRUVfREFUQV9SRUZfSCkgXAorLSAgIHNlc2Uu aCBncmFwaGl0ZS1wcGwuaCBncmFwaGl0ZS1wb2x5LmggZ3JhcGhpdGUtZGVwZW5kZW5jZXMuaCBc CistICAgZ3JhcGhpdGUtY2xvb2ctdXRpbC5oCisrICAgc2VzZS5oIGdyYXBoaXRlLXBwbC5oICQo R1JBUEhJVEVfUE9MWV9IKSBncmFwaGl0ZS1kZXBlbmRlbmNlcy5oIFwKKysgICAkKEdSQVBISVRF X0NMT09HX1VUSUxfSCkKKyBncmFwaGl0ZS1mbGF0dGVuaW5nLm8gOiBncmFwaGl0ZS1mbGF0dGVu aW5nLmMgJChDT05GSUdfSCkgJChTWVNURU1fSCkJXAorICAgIGNvcmV0eXBlcy5oICQoVFJFRV9G TE9XX0gpICQoVFJFRV9EVU1QX0gpICQoQ0ZHTE9PUF9IKSAkKFRSRUVfREFUQV9SRUZfSCkgXAor LSAgIHNlc2UuaCBncmFwaGl0ZS1wcGwuaCBncmFwaGl0ZS1wb2x5LmgKKysgICBzZXNlLmggZ3Jh cGhpdGUtcHBsLmggJChHUkFQSElURV9QT0xZX0gpCisgZ3JhcGhpdGUtaW50ZXJjaGFuZ2UubyA6 IGdyYXBoaXRlLWludGVyY2hhbmdlLmMgJChDT05GSUdfSCkgJChTWVNURU1fSCkgXAorICAgIGNv cmV0eXBlcy5oICQoVFJFRV9GTE9XX0gpICQoVFJFRV9EVU1QX0gpICQoQ0ZHTE9PUF9IKSAkKFRS RUVfREFUQV9SRUZfSCkgXAorLSAgIHNlc2UuaCBncmFwaGl0ZS1wcGwuaCBncmFwaGl0ZS1wb2x5 LmgKKysgICBzZXNlLmggZ3JhcGhpdGUtcHBsLmggJChHUkFQSElURV9QT0xZX0gpCisgZ3JhcGhp dGUtcG9seS5vIDogZ3JhcGhpdGUtcG9seS5jICQoQ09ORklHX0gpICQoU1lTVEVNX0gpIGNvcmV0 eXBlcy5oIFwKKyAgICAkKERJQUdOT1NUSUNfQ09SRV9IKSAkKFRSRUVfRkxPV19IKSAkKFRSRUVf RFVNUF9IKSBnaW1wbGUtcHJldHR5LXByaW50LmggXAorLSAgICQoQ0ZHTE9PUF9IKSAkKFRSRUVf REFUQV9SRUZfSCkgc2VzZS5oIGdyYXBoaXRlLXBwbC5oIGdyYXBoaXRlLXBvbHkuaCBcCistICAg Z3JhcGhpdGUtZGVwZW5kZW5jZXMuaCBncmFwaGl0ZS1jbG9vZy11dGlsLmgKKysgICAkKENGR0xP T1BfSCkgJChUUkVFX0RBVEFfUkVGX0gpIHNlc2UuaCBncmFwaGl0ZS1wcGwuaCAkKEdSQVBISVRF X1BPTFlfSCkgXAorKyAgIGdyYXBoaXRlLWRlcGVuZGVuY2VzLmggJChHUkFQSElURV9DTE9PR19V VElMX0gpCisgZ3JhcGhpdGUtcHBsLm8gOiBncmFwaGl0ZS1wcGwuYyAkKENPTkZJR19IKSAkKFNZ U1RFTV9IKSBjb3JldHlwZXMuaCBcCistICAgZ3JhcGhpdGUtY2xvb2ctdXRpbC5oIGdyYXBoaXRl LXBwbC5oCisrICAgJChHUkFQSElURV9DTE9PR19VVElMX0gpIGdyYXBoaXRlLXBwbC5oCisgZ3Jh cGhpdGUtc2NvcC1kZXRlY3Rpb24ubyA6IGdyYXBoaXRlLXNjb3AtZGV0ZWN0aW9uLmMgJChDT05G SUdfSCkgJChTWVNURU1fSCkgXAorICAgIGNvcmV0eXBlcy5oICQoVFJFRV9GTE9XX0gpICQoQ0ZH TE9PUF9IKSAkKFRSRUVfREFUQV9SRUZfSCkgJChUUkVFX1BBU1NfSCkgXAorLSAgIHNlc2UuaCBn cmFwaGl0ZS1wcGwuaCBncmFwaGl0ZS1wb2x5LmggZ3JhcGhpdGUtc2NvcC1kZXRlY3Rpb24uaAor KyAgIHNlc2UuaCBncmFwaGl0ZS1wcGwuaCAkKEdSQVBISVRFX1BPTFlfSCkgZ3JhcGhpdGUtc2Nv cC1kZXRlY3Rpb24uaAorIGdyYXBoaXRlLXNlc2UtdG8tcG9seS5vIDogZ3JhcGhpdGUtc2VzZS10 by1wb2x5LmMgJChDT05GSUdfSCkgXAorICAgICQoU1lTVEVNX0gpIGNvcmV0eXBlcy5oICQoVFJF RV9GTE9XX0gpICQoVFJFRV9EVU1QX0gpICQoQ0ZHTE9PUF9IKSBcCistICAgJChUUkVFX0RBVEFf UkVGX0gpIGRvbXdhbGsuaCBzZXNlLmggZ3JhcGhpdGUtcHBsLmggZ3JhcGhpdGUtcG9seS5oIFwK KysgICAkKFRSRUVfREFUQV9SRUZfSCkgZG9td2Fsay5oIHNlc2UuaCBncmFwaGl0ZS1wcGwuaCAk KEdSQVBISVRFX1BPTFlfSCkgXAorICAgIGdyYXBoaXRlLXNlc2UtdG8tcG9seS5oCisgdHJlZS12 ZWN0LWxvb3AubzogdHJlZS12ZWN0LWxvb3AuYyAkKENPTkZJR19IKSAkKFNZU1RFTV9IKSBjb3Jl dHlwZXMuaCBcCisgICAgJChUTV9IKSAkKEdHQ19IKSAkKFRSRUVfSCkgJChCQVNJQ19CTE9DS19I KSAkKERJQUdOT1NUSUNfSCkgJChUUkVFX0ZMT1dfSCkgXAorQEAgLTM0NTQsNiArMzQ1NiwxNSBA QCAkKGNvbW1vbl9vdXRfb2JqZWN0X2ZpbGUpOiAkKGNvbW1vbl9vdXRfCisgCSQoQ09NUElMRVIp IC1jICQoQUxMX0NPTVBJTEVSRkxBR1MpICQoQUxMX0NQUEZMQUdTKSBcCisgCSAgJDwgJChPVVRQ VVRfT1BUSU9OKQorIAorK2dyYXBoaXRlJS5vIDogXAorKyAgQUxMX0NGTEFHUyA6PSAtTyAkKGZp bHRlci1vdXQgLWZrZWVwLWlubGluZS1mdW5jdGlvbnMsICQoQUxMX0NGTEFHUykpCisrZ3JhcGhp dGUubyA6IFwKKysgIEFMTF9DRkxBR1MgOj0gLU8gJChmaWx0ZXItb3V0IC1ma2VlcC1pbmxpbmUt ZnVuY3Rpb25zLCAkKEFMTF9DRkxBR1MpKQorK2dyYXBoaXRlJS5vIDogXAorKyAgQUxMX0NYWEZM QUdTIDo9IC1PICQoZmlsdGVyLW91dCAtZmtlZXAtaW5saW5lLWZ1bmN0aW9ucywgJChBTExfQ1hY RkxBR1MpKQorK2dyYXBoaXRlLm8gOiBcCisrICBBTExfQ1hYRkxBR1MgOj0gLU8gJChmaWx0ZXIt b3V0IC1ma2VlcC1pbmxpbmUtZnVuY3Rpb25zLCAkKEFMTF9DWFhGTEFHUykpCisrCisgIyBCdWls ZCBhdXhpbGlhcnkgZmlsZXMgdGhhdCBzdXBwb3J0IGVjb2ZmIGZvcm1hdC4KKyBtaXBzLXRmaWxl OiBtaXBzLXRmaWxlLm8gJChMSUJERVBTKQorIAkkKExJTktFUikgJChMSU5LRVJGTEFHUykgJChM REZMQUdTKSAtbyAkQCBcCistLS0gZ2NjL2dyYXBoaXRlLWNsb29nLWNvbXBhdC5oLmpqCTIwMTEt MDEtMDMgMTI6NTM6MDUuMDAwMDAwMDAwICswMTAwCisrKysgZ2NjL2dyYXBoaXRlLWNsb29nLWNv bXBhdC5oCTIwMTEtMDEtMDQgMTc6MzQ6MDkuODU3NzU3NTQ0ICswMTAwCitAQCAtMjcyLDQgKzI3 MiwyNzkgQEAgc3RhdGljIGlubGluZSBpbnQgY2xvb2dfbWF0cml4X25yb3dzIChDbAorICAgIHJl dHVybiBtLT5OYlJvd3M7CisgfQorICNlbmRpZiAvKiBDTE9PR19PUkcgICovCisrCisrI2luY2x1 ZGUgPGRsZmNuLmg+CisrI2lmIFBQTF9WRVJTSU9OX01BSk9SID09IDAgJiYgUFBMX1ZFUlNJT05f TUlOT1IgPCAxMQorKyNkZWZpbmUgRFlOU1lNU19QUEwxMQorKyNlbHNlCisrI2RlZmluZSBEWU5T WU1TX1BQTDExIFwKKysgIERZTlNZTSAocHBsX25ld19QSVBfUHJvYmxlbV9mcm9tX2NvbnN0cmFp bnRzKTsgXAorKyAgRFlOU1lNIChwcGxfUElQX1Byb2JsZW1faXNfc2F0aXNmaWFibGUpOyBcCisr ICBEWU5TWU0gKHBwbF9kZWxldGVfUElQX1Byb2JsZW0pOworKyNlbmRpZgorKyNkZWZpbmUgRFlO U1lNUyBcCisrICBEWU5TWU0gKGNsb29nX2Jsb2NrX2FsbG9jKTsgXAorKyAgRFlOU1lNIChjbG9v Z19ibG9ja19saXN0X2ZyZWUpOyBcCisrICBEWU5TWU0gKGNsb29nX2Jsb2NrX2xpc3RfbWFsbG9j KTsgXAorKyAgRFlOU1lNIChjbG9vZ19jbGFzdF9jcmVhdGUpOyBcCisrICBEWU5TWU0gKGNsb29n X2NsYXN0X2ZyZWUpOyBcCisrICBEWU5TWU0gKGNsb29nX2RvbWFpbl9mcmVlKTsgXAorKyAgRFlO U1lNIChjbG9vZ19kb21haW5fbWF0cml4MmRvbWFpbik7IFwKKysgIERZTlNZTSAoY2xvb2dfaW5p dGlhbGl6ZSk7IFwKKysgIERZTlNZTSAoY2xvb2dfbG9vcF9tYWxsb2MpOyBcCisrICBEWU5TWU0g KGNsb29nX21hdHJpeF9hbGxvYyk7IFwKKysgIERZTlNZTSAoY2xvb2dfbWF0cml4X2NvcHkpOyBc CisrICBEWU5TWU0gKGNsb29nX21hdHJpeF9mcmVlKTsgXAorKyAgRFlOU1lNIChjbG9vZ19tYXRy aXhfcHJpbnQpOyBcCisrICBEWU5TWU0gKGNsb29nX25hbWVzX21hbGxvYyk7IFwKKysgIERZTlNZ TSAoY2xvb2dfbmFtZXNfc2NhbGFyaXplKTsgXAorKyAgRFlOU1lNIChjbG9vZ19vcHRpb25zX2Zy ZWUpOyBcCisrICBEWU5TWU0gKGNsb29nX29wdGlvbnNfbWFsbG9jKTsgXAorKyAgRFlOU1lNIChj bG9vZ19wcm9ncmFtX2R1bXBfY2xvb2cpOyBcCisrICBEWU5TWU0gKGNsb29nX3Byb2dyYW1fZXh0 cmFjdF9zY2FsYXJzKTsgXAorKyAgRFlOU1lNIChjbG9vZ19wcm9ncmFtX2ZyZWUpOyBcCisrICBE WU5TWU0gKGNsb29nX3Byb2dyYW1fZ2VuZXJhdGUpOyBcCisrICBEWU5TWU0gKGNsb29nX3Byb2dy YW1fbWFsbG9jKTsgXAorKyAgRFlOU1lNIChjbG9vZ19wcm9ncmFtX3ByaW50KTsgXAorKyAgRFlO U1lNIChjbG9vZ19wcm9ncmFtX3NjYXR0ZXIpOyBcCisrICBEWU5TWU0gKGNsb29nX3N0YXRlbWVu dF9hbGxvYyk7IFwKKysgIERZTlNZTSAoY2xvb2dfZG9tYWluX3VuaW9uKTsgXAorKyAgRFlOU1lN IChjbG9vZ19tYXRyaXhfcmVhZCk7IFwKKysgIERZTlNZTSAoY2xvb2dfbmV3X3BvbCk7IFwKKysg IERZTlNZTSAoY2xvb2dfdmVjdG9yX2djZCk7IFwKKysgIERZTlNZTSAocHBsX2ZpbmFsaXplKTsg XAorKyAgRFlOU1lNIChwcGxfYXNzaWduX0NvZWZmaWNpZW50X2Zyb21fbXB6X3QpOyBcCisrICBE WU5TWU0gKHBwbF9hc3NpZ25fTGluZWFyX0V4cHJlc3Npb25fZnJvbV9MaW5lYXJfRXhwcmVzc2lv bik7IFwKKysgIERZTlNZTSAocHBsX0NvZWZmaWNpZW50X3RvX21wel90KTsgXAorKyAgRFlOU1lN IChwcGxfQ29uc3RyYWludF9jb2VmZmljaWVudCk7IFwKKysgIERZTlNZTSAocHBsX0NvbnN0cmFp bnRfaW5ob21vZ2VuZW91c190ZXJtKTsgXAorKyAgRFlOU1lNIChwcGxfQ29uc3RyYWludF9zcGFj ZV9kaW1lbnNpb24pOyBcCisrICBEWU5TWU0gKHBwbF9Db25zdHJhaW50X1N5c3RlbV9iZWdpbik7 IFwKKysgIERZTlNZTSAocHBsX0NvbnN0cmFpbnRfU3lzdGVtX2NvbnN0X2l0ZXJhdG9yX2RlcmVm ZXJlbmNlKTsgXAorKyAgRFlOU1lNIChwcGxfQ29uc3RyYWludF9TeXN0ZW1fY29uc3RfaXRlcmF0 b3JfZXF1YWxfdGVzdCk7IFwKKysgIERZTlNZTSAocHBsX0NvbnN0cmFpbnRfU3lzdGVtX2NvbnN0 X2l0ZXJhdG9yX2luY3JlbWVudCk7IFwKKysgIERZTlNZTSAocHBsX0NvbnN0cmFpbnRfU3lzdGVt X2VuZCk7IFwKKysgIERZTlNZTSAocHBsX0NvbnN0cmFpbnRfU3lzdGVtX2luc2VydF9Db25zdHJh aW50KTsgXAorKyAgRFlOU1lNIChwcGxfQ29uc3RyYWludF9TeXN0ZW1fc3BhY2VfZGltZW5zaW9u KTsgXAorKyAgRFlOU1lNIChwcGxfQ29uc3RyYWludF90eXBlKTsgXAorKyAgRFlOU1lNIChwcGxf ZGVsZXRlX0NvZWZmaWNpZW50KTsgXAorKyAgRFlOU1lNIChwcGxfZGVsZXRlX0NvbnN0cmFpbnQp OyBcCisrICBEWU5TWU0gKHBwbF9kZWxldGVfQ29uc3RyYWludF9TeXN0ZW1fY29uc3RfaXRlcmF0 b3IpOyBcCisrICBEWU5TWU0gKHBwbF9kZWxldGVfTGluZWFyX0V4cHJlc3Npb24pOyBcCisrICBE WU5TWU0gKHBwbF9kZWxldGVfUG9pbnRzZXRfUG93ZXJzZXRfQ19Qb2x5aGVkcm9uKTsgXAorKyAg RFlOU1lNIChwcGxfZGVsZXRlX1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl9pdGVyYXRv cik7IFwKKysgIERZTlNZTSAocHBsX2RlbGV0ZV9Qb2x5aGVkcm9uKTsgXAorKyAgRFlOU1lNIChw cGxfTGluZWFyX0V4cHJlc3Npb25fYWRkX3RvX2NvZWZmaWNpZW50KTsgXAorKyAgRFlOU1lNIChw cGxfTGluZWFyX0V4cHJlc3Npb25fYWRkX3RvX2luaG9tb2dlbmVvdXMpOyBcCisrICBEWU5TWU0g KHBwbF9MaW5lYXJfRXhwcmVzc2lvbl9jb2VmZmljaWVudCk7IFwKKysgIERZTlNZTSAocHBsX0xp bmVhcl9FeHByZXNzaW9uX2luaG9tb2dlbmVvdXNfdGVybSk7IFwKKysgIERZTlNZTSAocHBsX0xp bmVhcl9FeHByZXNzaW9uX3NwYWNlX2RpbWVuc2lvbik7IFwKKysgIERZTlNZTSAocHBsX25ld19D b2VmZmljaWVudCk7IFwKKysgIERZTlNZTSAocHBsX25ld19Db2VmZmljaWVudF9mcm9tX21wel90 KTsgXAorKyAgRFlOU1lNIChwcGxfbmV3X0NvbnN0cmFpbnQpOyBcCisrICBEWU5TWU0gKHBwbF9u ZXdfQ29uc3RyYWludF9TeXN0ZW0pOyBcCisrICBEWU5TWU0gKHBwbF9uZXdfQ29uc3RyYWludF9T eXN0ZW1fY29uc3RfaXRlcmF0b3IpOyBcCisrICBEWU5TWU0gKHBwbF9uZXdfQ19Qb2x5aGVkcm9u X2Zyb21fQ19Qb2x5aGVkcm9uKTsgXAorKyAgRFlOU1lNIChwcGxfbmV3X0NfUG9seWhlZHJvbl9m cm9tX3NwYWNlX2RpbWVuc2lvbik7IFwKKysgIERZTlNZTSAocHBsX25ld19DX1BvbHloZWRyb25f cmVjeWNsZV9Db25zdHJhaW50X1N5c3RlbSk7IFwKKysgIERZTlNZTSAocHBsX25ld19MaW5lYXJf RXhwcmVzc2lvbik7IFwKKysgIERZTlNZTSAocHBsX25ld19MaW5lYXJfRXhwcmVzc2lvbl9mcm9t X0NvbnN0cmFpbnQpOyBcCisrICBEWU5TWU0gKHBwbF9uZXdfTGluZWFyX0V4cHJlc3Npb25fZnJv bV9MaW5lYXJfRXhwcmVzc2lvbik7IFwKKysgIERZTlNZTSAocHBsX25ld19MaW5lYXJfRXhwcmVz c2lvbl93aXRoX2RpbWVuc2lvbik7IFwKKysgIERZTlNZTSAocHBsX25ld19Qb2ludHNldF9Qb3dl cnNldF9DX1BvbHloZWRyb25fZnJvbV9DX1BvbHloZWRyb24pOyBcCisrICBEWU5TWU0gKHBwbF9u ZXdfUG9pbnRzZXRfUG93ZXJzZXRfQ19Qb2x5aGVkcm9uX2Zyb21fUG9pbnRzZXRfUG93ZXJzZXRf Q19Qb2x5aGVkcm9uKTsgXAorKyAgRFlOU1lNIChwcGxfbmV3X1BvaW50c2V0X1Bvd2Vyc2V0X0Nf UG9seWhlZHJvbl9mcm9tX3NwYWNlX2RpbWVuc2lvbik7IFwKKysgIERZTlNZTSAocHBsX25ld19Q b2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25faXRlcmF0b3IpOyBcCisrICBEWU5TWU0gKHBw bF9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25fYWRkX2NvbnN0cmFpbnQpOyBcCisrICBE WU5TWU0gKHBwbF9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25fYWRkX3NwYWNlX2RpbWVu c2lvbnNfYW5kX2VtYmVkKTsgXAorKyAgRFlOU1lNIChwcGxfUG9pbnRzZXRfUG93ZXJzZXRfQ19Q b2x5aGVkcm9uX2RpZmZlcmVuY2VfYXNzaWduKTsgXAorKyAgRFlOU1lNIChwcGxfUG9pbnRzZXRf UG93ZXJzZXRfQ19Qb2x5aGVkcm9uX2ludGVyc2VjdGlvbl9hc3NpZ24pOyBcCisrICBEWU5TWU0g KHBwbF9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25faXNfZW1wdHkpOyBcCisrICBEWU5T WU0gKHBwbF9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25faXRlcmF0b3JfYmVnaW4pOyBc CisrICBEWU5TWU0gKHBwbF9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25faXRlcmF0b3Jf ZGVyZWZlcmVuY2UpOyBcCisrICBEWU5TWU0gKHBwbF9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHlo ZWRyb25faXRlcmF0b3JfZW5kKTsgXAorKyAgRFlOU1lNIChwcGxfUG9pbnRzZXRfUG93ZXJzZXRf Q19Qb2x5aGVkcm9uX2l0ZXJhdG9yX2VxdWFsX3Rlc3QpOyBcCisrICBEWU5TWU0gKHBwbF9Qb2lu dHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25faXRlcmF0b3JfaW5jcmVtZW50KTsgXAorKyAgRFlO U1lNIChwcGxfUG9pbnRzZXRfUG93ZXJzZXRfQ19Qb2x5aGVkcm9uX21hcF9zcGFjZV9kaW1lbnNp b25zKTsgXAorKyAgRFlOU1lNIChwcGxfUG9pbnRzZXRfUG93ZXJzZXRfQ19Qb2x5aGVkcm9uX21h eGltaXplKTsgXAorKyAgRFlOU1lNIChwcGxfUG9pbnRzZXRfUG93ZXJzZXRfQ19Qb2x5aGVkcm9u X21pbmltaXplKTsgXAorKyAgRFlOU1lNIChwcGxfUG9pbnRzZXRfUG93ZXJzZXRfQ19Qb2x5aGVk cm9uX3JlbW92ZV9zcGFjZV9kaW1lbnNpb25zKTsgXAorKyAgRFlOU1lNIChwcGxfUG9pbnRzZXRf UG93ZXJzZXRfQ19Qb2x5aGVkcm9uX3NpemUpOyBcCisrICBEWU5TWU0gKHBwbF9Qb2ludHNldF9Q b3dlcnNldF9DX1BvbHloZWRyb25fc3BhY2VfZGltZW5zaW9uKTsgXAorKyAgRFlOU1lNIChwcGxf UG9pbnRzZXRfUG93ZXJzZXRfQ19Qb2x5aGVkcm9uX3VwcGVyX2JvdW5kX2Fzc2lnbik7IFwKKysg IERZTlNZTSAocHBsX1BvbHloZWRyb25fYWRkX2NvbnN0cmFpbnQpOyBcCisrICBEWU5TWU0gKHBw bF9Qb2x5aGVkcm9uX2FkZF9jb25zdHJhaW50cyk7IFwKKysgIERZTlNZTSAocHBsX1BvbHloZWRy b25fYWRkX3NwYWNlX2RpbWVuc2lvbnNfYW5kX2VtYmVkKTsgXAorKyAgRFlOU1lNIChwcGxfUG9s eWhlZHJvbl9nZXRfY29uc3RyYWludHMpOyBcCisrICBEWU5TWU0gKHBwbF9Qb2x5aGVkcm9uX21h cF9zcGFjZV9kaW1lbnNpb25zKTsgXAorKyAgRFlOU1lNIChwcGxfUG9seWhlZHJvbl9yZW1vdmVf c3BhY2VfZGltZW5zaW9ucyk7IFwKKysgIERZTlNZTSAocHBsX1BvbHloZWRyb25fc3BhY2VfZGlt ZW5zaW9uKTsgXAorKyAgRFlOU1lNIChwcGxfc3VidHJhY3RfTGluZWFyX0V4cHJlc3Npb25fZnJv bV9MaW5lYXJfRXhwcmVzc2lvbik7IFwKKysgIERZTlNZTSAocHByaW50KTsgXAorKyAgRFlOU1lN IChzdG10X2Jsb2NrKTsgXAorKyAgRFlOU1lNIChzdG10X2Zvcik7IFwKKysgIERZTlNZTSAoc3Rt dF9ndWFyZCk7IFwKKysgIERZTlNZTSAoc3RtdF9yb290KTsgXAorKyAgRFlOU1lNIChzdG10X3Vz ZXIpOyBcCisrICBEWU5TWU0gKHN0bXRfYXNzKTsgXAorKyAgRFlOU1lNIChwcGxfZGVsZXRlX0Nv bnN0cmFpbnRfU3lzdGVtKTsgXAorKyAgRFlOU1lNIChwcGxfaW5pdGlhbGl6ZSk7IFwKKysgIERZ TlNZTSAocHBsX25ld19Db25zdHJhaW50X1N5c3RlbV9mcm9tX0NvbnN0cmFpbnQpOyBcCisrICBE WU5TWU0gKHBwbF9uZXdfQ19Qb2x5aGVkcm9uX2Zyb21fQ29uc3RyYWludF9TeXN0ZW0pOyBcCisr ICBEWU5TWU0gKHBwbF9Qb2x5aGVkcm9uX2FmZmluZV9pbWFnZSk7IFwKKysgIERZTlNZTSAocHBs X2lvX2ZwcmludF9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb24pOyBcCisrICBEWU5TWU1T X1BQTDExCisrZXh0ZXJuIHN0cnVjdCBjbG9vZ19wb2ludGVyc19zX18KKyt7CisrICBib29sIGlu aXRlZDsKKysgIHZvaWQgKmg7CisrI2RlZmluZSBEWU5TWU0oeCkgX190eXBlb2YgKHgpICpwXyMj eAorKyAgRFlOU1lNUworKyN1bmRlZiBEWU5TWU0KKyt9IGNsb29nX3BvaW50ZXJzX187CisrCisr I2RlZmluZSBjbG9vZ19ibG9ja19hbGxvYyAoKmNsb29nX3BvaW50ZXJzX18ucF9jbG9vZ19ibG9j a19hbGxvYykKKysjZGVmaW5lIGNsb29nX2Jsb2NrX2xpc3RfZnJlZSAoKmNsb29nX3BvaW50ZXJz X18ucF9jbG9vZ19ibG9ja19saXN0X2ZyZWUpCisrI2RlZmluZSBjbG9vZ19ibG9ja19saXN0X21h bGxvYyAoKmNsb29nX3BvaW50ZXJzX18ucF9jbG9vZ19ibG9ja19saXN0X21hbGxvYykKKysjZGVm aW5lIGNsb29nX2NsYXN0X2NyZWF0ZSAoKmNsb29nX3BvaW50ZXJzX18ucF9jbG9vZ19jbGFzdF9j cmVhdGUpCisrI2RlZmluZSBjbG9vZ19jbGFzdF9mcmVlICgqY2xvb2dfcG9pbnRlcnNfXy5wX2Ns b29nX2NsYXN0X2ZyZWUpCisrI2RlZmluZSBjbG9vZ19kb21haW5fZnJlZSAoKmNsb29nX3BvaW50 ZXJzX18ucF9jbG9vZ19kb21haW5fZnJlZSkKKysjZGVmaW5lIGNsb29nX2RvbWFpbl9tYXRyaXgy ZG9tYWluICgqY2xvb2dfcG9pbnRlcnNfXy5wX2Nsb29nX2RvbWFpbl9tYXRyaXgyZG9tYWluKQor KyNkZWZpbmUgY2xvb2dfaW5pdGlhbGl6ZSAoKmNsb29nX3BvaW50ZXJzX18ucF9jbG9vZ19pbml0 aWFsaXplKQorKyNpZm5kZWYgQ0xPT0dfT1JHCisrI3VuZGVmIGNsb29nX2xvb3BfbWFsbG9jCisr I2RlZmluZSBjbG9vZ19sb29wX21hbGxvYyhTVEFURSkgKCpjbG9vZ19wb2ludGVyc19fLnBfY2xv b2dfbG9vcF9tYWxsb2MpICgpCisrI2Vsc2UKKysjZGVmaW5lIGNsb29nX2xvb3BfbWFsbG9jICgq Y2xvb2dfcG9pbnRlcnNfXy5wX2Nsb29nX2xvb3BfbWFsbG9jKQorKyNlbmRpZgorKyNkZWZpbmUg Y2xvb2dfbWF0cml4X2FsbG9jICgqY2xvb2dfcG9pbnRlcnNfXy5wX2Nsb29nX21hdHJpeF9hbGxv YykKKysjZGVmaW5lIGNsb29nX21hdHJpeF9jb3B5ICgqY2xvb2dfcG9pbnRlcnNfXy5wX2Nsb29n X21hdHJpeF9jb3B5KQorKyNkZWZpbmUgY2xvb2dfbWF0cml4X2ZyZWUgKCpjbG9vZ19wb2ludGVy c19fLnBfY2xvb2dfbWF0cml4X2ZyZWUpCisrI2RlZmluZSBjbG9vZ19tYXRyaXhfcHJpbnQgKCpj bG9vZ19wb2ludGVyc19fLnBfY2xvb2dfbWF0cml4X3ByaW50KQorKyNkZWZpbmUgY2xvb2dfbmFt ZXNfbWFsbG9jICgqY2xvb2dfcG9pbnRlcnNfXy5wX2Nsb29nX25hbWVzX21hbGxvYykKKysjZGVm aW5lIGNsb29nX25hbWVzX3NjYWxhcml6ZSAoKmNsb29nX3BvaW50ZXJzX18ucF9jbG9vZ19uYW1l c19zY2FsYXJpemUpCisrI2RlZmluZSBjbG9vZ19vcHRpb25zX2ZyZWUgKCpjbG9vZ19wb2ludGVy c19fLnBfY2xvb2dfb3B0aW9uc19mcmVlKQorKyNpZm5kZWYgQ0xPT0dfT1JHCisrI3VuZGVmIGNs b29nX29wdGlvbnNfbWFsbG9jCisrI2RlZmluZSBjbG9vZ19vcHRpb25zX21hbGxvYyhTVEFURSkg KCpjbG9vZ19wb2ludGVyc19fLnBfY2xvb2dfb3B0aW9uc19tYWxsb2MpICgpCisrI3VuZGVmIGNs b29nX3Byb2dyYW1fZHVtcF9jbG9vZworKyNkZWZpbmUgY2xvb2dfcHJvZ3JhbV9kdW1wX2Nsb29n KERVTVBGSUxFLCBQUk9HUkFNLCBTQ0FUVEVSSU5HTElTVCkgXAorKyAgKCpjbG9vZ19wb2ludGVy c19fLnBfY2xvb2dfcHJvZ3JhbV9kdW1wX2Nsb29nKSAoRFVNUEZJTEUsIFBST0dSQU0pCisrI3Vu ZGVmIGNsb29nX3Byb2dyYW1fZXh0cmFjdF9zY2FsYXJzCisrI2RlZmluZSBjbG9vZ19wcm9ncmFt X2V4dHJhY3Rfc2NhbGFycyhQUk9HLCBTQ0FUVCwgT1BUKSBcCisrICAoKmNsb29nX3BvaW50ZXJz X18ucF9jbG9vZ19wcm9ncmFtX2V4dHJhY3Rfc2NhbGFycykgKFBST0csIFNDQVRUKQorKyNlbHNl CisrI2RlZmluZSBjbG9vZ19vcHRpb25zX21hbGxvYyAoKmNsb29nX3BvaW50ZXJzX18ucF9jbG9v Z19vcHRpb25zX21hbGxvYykKKysjZGVmaW5lIGNsb29nX3Byb2dyYW1fZHVtcF9jbG9vZyAoKmNs b29nX3BvaW50ZXJzX18ucF9jbG9vZ19wcm9ncmFtX2R1bXBfY2xvb2cpCisrI2RlZmluZSBjbG9v Z19wcm9ncmFtX2V4dHJhY3Rfc2NhbGFycyAoKmNsb29nX3BvaW50ZXJzX18ucF9jbG9vZ19wcm9n cmFtX2V4dHJhY3Rfc2NhbGFycykKKysjZW5kaWYKKysjZGVmaW5lIGNsb29nX3Byb2dyYW1fZnJl ZSAoKmNsb29nX3BvaW50ZXJzX18ucF9jbG9vZ19wcm9ncmFtX2ZyZWUpCisrI2RlZmluZSBjbG9v Z19wcm9ncmFtX2dlbmVyYXRlICgqY2xvb2dfcG9pbnRlcnNfXy5wX2Nsb29nX3Byb2dyYW1fZ2Vu ZXJhdGUpCisrI2RlZmluZSBjbG9vZ19wcm9ncmFtX21hbGxvYyAoKmNsb29nX3BvaW50ZXJzX18u cF9jbG9vZ19wcm9ncmFtX21hbGxvYykKKysjZGVmaW5lIGNsb29nX3Byb2dyYW1fcHJpbnQgKCpj bG9vZ19wb2ludGVyc19fLnBfY2xvb2dfcHJvZ3JhbV9wcmludCkKKysjaWZuZGVmIENMT09HX09S RworKyN1bmRlZiBjbG9vZ19wcm9ncmFtX3NjYXR0ZXIKKysjZGVmaW5lIGNsb29nX3Byb2dyYW1f c2NhdHRlcihQUk9HLCBTQ0FUVCwgT1BUKSBcCisrICAoKmNsb29nX3BvaW50ZXJzX18ucF9jbG9v Z19wcm9ncmFtX3NjYXR0ZXIpIChQUk9HLCBTQ0FUVCkKKysjdW5kZWYgY2xvb2dfc3RhdGVtZW50 X2FsbG9jCisrI2RlZmluZSBjbG9vZ19zdGF0ZW1lbnRfYWxsb2MoU1RBVEUsIElOREVYKSBcCisr ICAoKmNsb29nX3BvaW50ZXJzX18ucF9jbG9vZ19zdGF0ZW1lbnRfYWxsb2MpIChJTkRFWCkKKysj ZWxzZQorKyNkZWZpbmUgY2xvb2dfcHJvZ3JhbV9zY2F0dGVyICgqY2xvb2dfcG9pbnRlcnNfXy5w X2Nsb29nX3Byb2dyYW1fc2NhdHRlcikKKysjZGVmaW5lIGNsb29nX3N0YXRlbWVudF9hbGxvYyAo KmNsb29nX3BvaW50ZXJzX18ucF9jbG9vZ19zdGF0ZW1lbnRfYWxsb2MpCisrI2VuZGlmCisrI2Rl ZmluZSBjbG9vZ19kb21haW5fdW5pb24gKCpjbG9vZ19wb2ludGVyc19fLnBfY2xvb2dfZG9tYWlu X3VuaW9uKQorKyNkZWZpbmUgY2xvb2dfbWF0cml4X3JlYWQgKCpjbG9vZ19wb2ludGVyc19fLnBf Y2xvb2dfbWF0cml4X3JlYWQpCisrI2RlZmluZSBjbG9vZ19uZXdfcG9sICgqY2xvb2dfcG9pbnRl cnNfXy5wX2Nsb29nX25ld19wb2wpCisrI2RlZmluZSBjbG9vZ192ZWN0b3JfZ2NkICgqY2xvb2df cG9pbnRlcnNfXy5wX2Nsb29nX3ZlY3Rvcl9nY2QpCisrI2RlZmluZSBwcGxfZmluYWxpemUgKCpj bG9vZ19wb2ludGVyc19fLnBfcHBsX2ZpbmFsaXplKQorKyNkZWZpbmUgcHBsX2Fzc2lnbl9Db2Vm ZmljaWVudF9mcm9tX21wel90ICgqY2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9hc3NpZ25fQ29lZmZp Y2llbnRfZnJvbV9tcHpfdCkKKysjZGVmaW5lIHBwbF9hc3NpZ25fTGluZWFyX0V4cHJlc3Npb25f ZnJvbV9MaW5lYXJfRXhwcmVzc2lvbiAoKmNsb29nX3BvaW50ZXJzX18ucF9wcGxfYXNzaWduX0xp bmVhcl9FeHByZXNzaW9uX2Zyb21fTGluZWFyX0V4cHJlc3Npb24pCisrI2RlZmluZSBwcGxfQ29l ZmZpY2llbnRfdG9fbXB6X3QgKCpjbG9vZ19wb2ludGVyc19fLnBfcHBsX0NvZWZmaWNpZW50X3Rv X21wel90KQorKyNkZWZpbmUgcHBsX0NvbnN0cmFpbnRfY29lZmZpY2llbnQgKCpjbG9vZ19wb2lu dGVyc19fLnBfcHBsX0NvbnN0cmFpbnRfY29lZmZpY2llbnQpCisrI2RlZmluZSBwcGxfQ29uc3Ry YWludF9pbmhvbW9nZW5lb3VzX3Rlcm0gKCpjbG9vZ19wb2ludGVyc19fLnBfcHBsX0NvbnN0cmFp bnRfaW5ob21vZ2VuZW91c190ZXJtKQorKyNkZWZpbmUgcHBsX0NvbnN0cmFpbnRfc3BhY2VfZGlt ZW5zaW9uICgqY2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9Db25zdHJhaW50X3NwYWNlX2RpbWVuc2lv bikKKysjZGVmaW5lIHBwbF9Db25zdHJhaW50X1N5c3RlbV9iZWdpbiAoKmNsb29nX3BvaW50ZXJz X18ucF9wcGxfQ29uc3RyYWludF9TeXN0ZW1fYmVnaW4pCisrI2RlZmluZSBwcGxfQ29uc3RyYWlu dF9TeXN0ZW1fY29uc3RfaXRlcmF0b3JfZGVyZWZlcmVuY2UgKCpjbG9vZ19wb2ludGVyc19fLnBf cHBsX0NvbnN0cmFpbnRfU3lzdGVtX2NvbnN0X2l0ZXJhdG9yX2RlcmVmZXJlbmNlKQorKyNkZWZp bmUgcHBsX0NvbnN0cmFpbnRfU3lzdGVtX2NvbnN0X2l0ZXJhdG9yX2VxdWFsX3Rlc3QgKCpjbG9v Z19wb2ludGVyc19fLnBfcHBsX0NvbnN0cmFpbnRfU3lzdGVtX2NvbnN0X2l0ZXJhdG9yX2VxdWFs X3Rlc3QpCisrI2RlZmluZSBwcGxfQ29uc3RyYWludF9TeXN0ZW1fY29uc3RfaXRlcmF0b3JfaW5j cmVtZW50ICgqY2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9Db25zdHJhaW50X1N5c3RlbV9jb25zdF9p dGVyYXRvcl9pbmNyZW1lbnQpCisrI2RlZmluZSBwcGxfQ29uc3RyYWludF9TeXN0ZW1fZW5kICgq Y2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9Db25zdHJhaW50X1N5c3RlbV9lbmQpCisrI2RlZmluZSBw cGxfQ29uc3RyYWludF9TeXN0ZW1faW5zZXJ0X0NvbnN0cmFpbnQgKCpjbG9vZ19wb2ludGVyc19f LnBfcHBsX0NvbnN0cmFpbnRfU3lzdGVtX2luc2VydF9Db25zdHJhaW50KQorKyNkZWZpbmUgcHBs X0NvbnN0cmFpbnRfU3lzdGVtX3NwYWNlX2RpbWVuc2lvbiAoKmNsb29nX3BvaW50ZXJzX18ucF9w cGxfQ29uc3RyYWludF9TeXN0ZW1fc3BhY2VfZGltZW5zaW9uKQorKyNkZWZpbmUgcHBsX0NvbnN0 cmFpbnRfdHlwZSAoKmNsb29nX3BvaW50ZXJzX18ucF9wcGxfQ29uc3RyYWludF90eXBlKQorKyNk ZWZpbmUgcHBsX2RlbGV0ZV9Db2VmZmljaWVudCAoKmNsb29nX3BvaW50ZXJzX18ucF9wcGxfZGVs ZXRlX0NvZWZmaWNpZW50KQorKyNkZWZpbmUgcHBsX2RlbGV0ZV9Db25zdHJhaW50ICgqY2xvb2df cG9pbnRlcnNfXy5wX3BwbF9kZWxldGVfQ29uc3RyYWludCkKKysjZGVmaW5lIHBwbF9kZWxldGVf Q29uc3RyYWludF9TeXN0ZW1fY29uc3RfaXRlcmF0b3IgKCpjbG9vZ19wb2ludGVyc19fLnBfcHBs X2RlbGV0ZV9Db25zdHJhaW50X1N5c3RlbV9jb25zdF9pdGVyYXRvcikKKysjZGVmaW5lIHBwbF9k ZWxldGVfTGluZWFyX0V4cHJlc3Npb24gKCpjbG9vZ19wb2ludGVyc19fLnBfcHBsX2RlbGV0ZV9M aW5lYXJfRXhwcmVzc2lvbikKKysjZGVmaW5lIHBwbF9kZWxldGVfUG9pbnRzZXRfUG93ZXJzZXRf Q19Qb2x5aGVkcm9uICgqY2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9kZWxldGVfUG9pbnRzZXRfUG93 ZXJzZXRfQ19Qb2x5aGVkcm9uKQorKyNkZWZpbmUgcHBsX2RlbGV0ZV9Qb2ludHNldF9Qb3dlcnNl dF9DX1BvbHloZWRyb25faXRlcmF0b3IgKCpjbG9vZ19wb2ludGVyc19fLnBfcHBsX2RlbGV0ZV9Q b2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25faXRlcmF0b3IpCisrI2RlZmluZSBwcGxfZGVs ZXRlX1BvbHloZWRyb24gKCpjbG9vZ19wb2ludGVyc19fLnBfcHBsX2RlbGV0ZV9Qb2x5aGVkcm9u KQorKyNkZWZpbmUgcHBsX0xpbmVhcl9FeHByZXNzaW9uX2FkZF90b19jb2VmZmljaWVudCAoKmNs b29nX3BvaW50ZXJzX18ucF9wcGxfTGluZWFyX0V4cHJlc3Npb25fYWRkX3RvX2NvZWZmaWNpZW50 KQorKyNkZWZpbmUgcHBsX0xpbmVhcl9FeHByZXNzaW9uX2FkZF90b19pbmhvbW9nZW5lb3VzICgq Y2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9MaW5lYXJfRXhwcmVzc2lvbl9hZGRfdG9faW5ob21vZ2Vu ZW91cykKKysjZGVmaW5lIHBwbF9MaW5lYXJfRXhwcmVzc2lvbl9jb2VmZmljaWVudCAoKmNsb29n X3BvaW50ZXJzX18ucF9wcGxfTGluZWFyX0V4cHJlc3Npb25fY29lZmZpY2llbnQpCisrI2RlZmlu ZSBwcGxfTGluZWFyX0V4cHJlc3Npb25faW5ob21vZ2VuZW91c190ZXJtICgqY2xvb2dfcG9pbnRl cnNfXy5wX3BwbF9MaW5lYXJfRXhwcmVzc2lvbl9pbmhvbW9nZW5lb3VzX3Rlcm0pCisrI2RlZmlu ZSBwcGxfTGluZWFyX0V4cHJlc3Npb25fc3BhY2VfZGltZW5zaW9uICgqY2xvb2dfcG9pbnRlcnNf Xy5wX3BwbF9MaW5lYXJfRXhwcmVzc2lvbl9zcGFjZV9kaW1lbnNpb24pCisrI2RlZmluZSBwcGxf bmV3X0NvZWZmaWNpZW50ICgqY2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9uZXdfQ29lZmZpY2llbnQp CisrI2RlZmluZSBwcGxfbmV3X0NvZWZmaWNpZW50X2Zyb21fbXB6X3QgKCpjbG9vZ19wb2ludGVy c19fLnBfcHBsX25ld19Db2VmZmljaWVudF9mcm9tX21wel90KQorKyNkZWZpbmUgcHBsX25ld19D b25zdHJhaW50ICgqY2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9uZXdfQ29uc3RyYWludCkKKysjZGVm aW5lIHBwbF9uZXdfQ29uc3RyYWludF9TeXN0ZW0gKCpjbG9vZ19wb2ludGVyc19fLnBfcHBsX25l d19Db25zdHJhaW50X1N5c3RlbSkKKysjZGVmaW5lIHBwbF9uZXdfQ29uc3RyYWludF9TeXN0ZW1f Y29uc3RfaXRlcmF0b3IgKCpjbG9vZ19wb2ludGVyc19fLnBfcHBsX25ld19Db25zdHJhaW50X1N5 c3RlbV9jb25zdF9pdGVyYXRvcikKKysjZGVmaW5lIHBwbF9uZXdfQ19Qb2x5aGVkcm9uX2Zyb21f Q19Qb2x5aGVkcm9uICgqY2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9uZXdfQ19Qb2x5aGVkcm9uX2Zy b21fQ19Qb2x5aGVkcm9uKQorKyNkZWZpbmUgcHBsX25ld19DX1BvbHloZWRyb25fZnJvbV9zcGFj ZV9kaW1lbnNpb24gKCpjbG9vZ19wb2ludGVyc19fLnBfcHBsX25ld19DX1BvbHloZWRyb25fZnJv bV9zcGFjZV9kaW1lbnNpb24pCisrI2RlZmluZSBwcGxfbmV3X0NfUG9seWhlZHJvbl9yZWN5Y2xl X0NvbnN0cmFpbnRfU3lzdGVtICgqY2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9uZXdfQ19Qb2x5aGVk cm9uX3JlY3ljbGVfQ29uc3RyYWludF9TeXN0ZW0pCisrI2RlZmluZSBwcGxfbmV3X0xpbmVhcl9F eHByZXNzaW9uICgqY2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9uZXdfTGluZWFyX0V4cHJlc3Npb24p CisrI2RlZmluZSBwcGxfbmV3X0xpbmVhcl9FeHByZXNzaW9uX2Zyb21fQ29uc3RyYWludCAoKmNs b29nX3BvaW50ZXJzX18ucF9wcGxfbmV3X0xpbmVhcl9FeHByZXNzaW9uX2Zyb21fQ29uc3RyYWlu dCkKKysjZGVmaW5lIHBwbF9uZXdfTGluZWFyX0V4cHJlc3Npb25fZnJvbV9MaW5lYXJfRXhwcmVz c2lvbiAoKmNsb29nX3BvaW50ZXJzX18ucF9wcGxfbmV3X0xpbmVhcl9FeHByZXNzaW9uX2Zyb21f TGluZWFyX0V4cHJlc3Npb24pCisrI2RlZmluZSBwcGxfbmV3X0xpbmVhcl9FeHByZXNzaW9uX3dp dGhfZGltZW5zaW9uICgqY2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9uZXdfTGluZWFyX0V4cHJlc3Np b25fd2l0aF9kaW1lbnNpb24pCisrI2RlZmluZSBwcGxfbmV3X1BvaW50c2V0X1Bvd2Vyc2V0X0Nf UG9seWhlZHJvbl9mcm9tX0NfUG9seWhlZHJvbiAoKmNsb29nX3BvaW50ZXJzX18ucF9wcGxfbmV3 X1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl9mcm9tX0NfUG9seWhlZHJvbikKKysjZGVm aW5lIHBwbF9uZXdfUG9pbnRzZXRfUG93ZXJzZXRfQ19Qb2x5aGVkcm9uX2Zyb21fUG9pbnRzZXRf UG93ZXJzZXRfQ19Qb2x5aGVkcm9uICgqY2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9uZXdfUG9pbnRz ZXRfUG93ZXJzZXRfQ19Qb2x5aGVkcm9uX2Zyb21fUG9pbnRzZXRfUG93ZXJzZXRfQ19Qb2x5aGVk cm9uKQorKyNkZWZpbmUgcHBsX25ld19Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25fZnJv bV9zcGFjZV9kaW1lbnNpb24gKCpjbG9vZ19wb2ludGVyc19fLnBfcHBsX25ld19Qb2ludHNldF9Q b3dlcnNldF9DX1BvbHloZWRyb25fZnJvbV9zcGFjZV9kaW1lbnNpb24pCisrI2RlZmluZSBwcGxf bmV3X1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl9pdGVyYXRvciAoKmNsb29nX3BvaW50 ZXJzX18ucF9wcGxfbmV3X1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl9pdGVyYXRvcikK KysjZGVmaW5lIHBwbF9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25fYWRkX2NvbnN0cmFp bnQgKCpjbG9vZ19wb2ludGVyc19fLnBfcHBsX1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJv bl9hZGRfY29uc3RyYWludCkKKysjZGVmaW5lIHBwbF9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHlo ZWRyb25fYWRkX3NwYWNlX2RpbWVuc2lvbnNfYW5kX2VtYmVkICgqY2xvb2dfcG9pbnRlcnNfXy5w X3BwbF9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25fYWRkX3NwYWNlX2RpbWVuc2lvbnNf YW5kX2VtYmVkKQorKyNkZWZpbmUgcHBsX1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl9k aWZmZXJlbmNlX2Fzc2lnbiAoKmNsb29nX3BvaW50ZXJzX18ucF9wcGxfUG9pbnRzZXRfUG93ZXJz ZXRfQ19Qb2x5aGVkcm9uX2RpZmZlcmVuY2VfYXNzaWduKQorKyNkZWZpbmUgcHBsX1BvaW50c2V0 X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl9pbnRlcnNlY3Rpb25fYXNzaWduICgqY2xvb2dfcG9pbnRl cnNfXy5wX3BwbF9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25faW50ZXJzZWN0aW9uX2Fz c2lnbikKKysjZGVmaW5lIHBwbF9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25faXNfZW1w dHkgKCpjbG9vZ19wb2ludGVyc19fLnBfcHBsX1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJv bl9pc19lbXB0eSkKKysjZGVmaW5lIHBwbF9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25f aXRlcmF0b3JfYmVnaW4gKCpjbG9vZ19wb2ludGVyc19fLnBfcHBsX1BvaW50c2V0X1Bvd2Vyc2V0 X0NfUG9seWhlZHJvbl9pdGVyYXRvcl9iZWdpbikKKysjZGVmaW5lIHBwbF9Qb2ludHNldF9Qb3dl cnNldF9DX1BvbHloZWRyb25faXRlcmF0b3JfZGVyZWZlcmVuY2UgKCpjbG9vZ19wb2ludGVyc19f LnBfcHBsX1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl9pdGVyYXRvcl9kZXJlZmVyZW5j ZSkKKysjZGVmaW5lIHBwbF9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25faXRlcmF0b3Jf ZW5kICgqY2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRy b25faXRlcmF0b3JfZW5kKQorKyNkZWZpbmUgcHBsX1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhl ZHJvbl9pdGVyYXRvcl9lcXVhbF90ZXN0ICgqY2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9Qb2ludHNl dF9Qb3dlcnNldF9DX1BvbHloZWRyb25faXRlcmF0b3JfZXF1YWxfdGVzdCkKKysjZGVmaW5lIHBw bF9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25faXRlcmF0b3JfaW5jcmVtZW50ICgqY2xv b2dfcG9pbnRlcnNfXy5wX3BwbF9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25faXRlcmF0 b3JfaW5jcmVtZW50KQorKyNkZWZpbmUgcHBsX1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJv bl9tYXBfc3BhY2VfZGltZW5zaW9ucyAoKmNsb29nX3BvaW50ZXJzX18ucF9wcGxfUG9pbnRzZXRf UG93ZXJzZXRfQ19Qb2x5aGVkcm9uX21hcF9zcGFjZV9kaW1lbnNpb25zKQorKyNkZWZpbmUgcHBs X1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl9tYXhpbWl6ZSAoKmNsb29nX3BvaW50ZXJz X18ucF9wcGxfUG9pbnRzZXRfUG93ZXJzZXRfQ19Qb2x5aGVkcm9uX21heGltaXplKQorKyNkZWZp bmUgcHBsX1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl9taW5pbWl6ZSAoKmNsb29nX3Bv aW50ZXJzX18ucF9wcGxfUG9pbnRzZXRfUG93ZXJzZXRfQ19Qb2x5aGVkcm9uX21pbmltaXplKQor KyNkZWZpbmUgcHBsX1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl9yZW1vdmVfc3BhY2Vf ZGltZW5zaW9ucyAoKmNsb29nX3BvaW50ZXJzX18ucF9wcGxfUG9pbnRzZXRfUG93ZXJzZXRfQ19Q b2x5aGVkcm9uX3JlbW92ZV9zcGFjZV9kaW1lbnNpb25zKQorKyNkZWZpbmUgcHBsX1BvaW50c2V0 X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl9zaXplICgqY2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9Qb2lu dHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25fc2l6ZSkKKysjZGVmaW5lIHBwbF9Qb2ludHNldF9Q b3dlcnNldF9DX1BvbHloZWRyb25fc3BhY2VfZGltZW5zaW9uICgqY2xvb2dfcG9pbnRlcnNfXy5w X3BwbF9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25fc3BhY2VfZGltZW5zaW9uKQorKyNk ZWZpbmUgcHBsX1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbl91cHBlcl9ib3VuZF9hc3Np Z24gKCpjbG9vZ19wb2ludGVyc19fLnBfcHBsX1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJv bl91cHBlcl9ib3VuZF9hc3NpZ24pCisrI2RlZmluZSBwcGxfUG9seWhlZHJvbl9hZGRfY29uc3Ry YWludCAoKmNsb29nX3BvaW50ZXJzX18ucF9wcGxfUG9seWhlZHJvbl9hZGRfY29uc3RyYWludCkK KysjZGVmaW5lIHBwbF9Qb2x5aGVkcm9uX2FkZF9jb25zdHJhaW50cyAoKmNsb29nX3BvaW50ZXJz X18ucF9wcGxfUG9seWhlZHJvbl9hZGRfY29uc3RyYWludHMpCisrI2RlZmluZSBwcGxfUG9seWhl ZHJvbl9hZGRfc3BhY2VfZGltZW5zaW9uc19hbmRfZW1iZWQgKCpjbG9vZ19wb2ludGVyc19fLnBf cHBsX1BvbHloZWRyb25fYWRkX3NwYWNlX2RpbWVuc2lvbnNfYW5kX2VtYmVkKQorKyNkZWZpbmUg cHBsX1BvbHloZWRyb25fZ2V0X2NvbnN0cmFpbnRzICgqY2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9Q b2x5aGVkcm9uX2dldF9jb25zdHJhaW50cykKKysjZGVmaW5lIHBwbF9Qb2x5aGVkcm9uX21hcF9z cGFjZV9kaW1lbnNpb25zICgqY2xvb2dfcG9pbnRlcnNfXy5wX3BwbF9Qb2x5aGVkcm9uX21hcF9z cGFjZV9kaW1lbnNpb25zKQorKyNkZWZpbmUgcHBsX1BvbHloZWRyb25fcmVtb3ZlX3NwYWNlX2Rp bWVuc2lvbnMgKCpjbG9vZ19wb2ludGVyc19fLnBfcHBsX1BvbHloZWRyb25fcmVtb3ZlX3NwYWNl X2RpbWVuc2lvbnMpCisrI2RlZmluZSBwcGxfUG9seWhlZHJvbl9zcGFjZV9kaW1lbnNpb24gKCpj bG9vZ19wb2ludGVyc19fLnBfcHBsX1BvbHloZWRyb25fc3BhY2VfZGltZW5zaW9uKQorKyNkZWZp bmUgcHBsX3N1YnRyYWN0X0xpbmVhcl9FeHByZXNzaW9uX2Zyb21fTGluZWFyX0V4cHJlc3Npb24g KCpjbG9vZ19wb2ludGVyc19fLnBfcHBsX3N1YnRyYWN0X0xpbmVhcl9FeHByZXNzaW9uX2Zyb21f TGluZWFyX0V4cHJlc3Npb24pCisrI2RlZmluZSBwcHJpbnQgKCpjbG9vZ19wb2ludGVyc19fLnBf cHByaW50KQorKyNkZWZpbmUgc3RtdF9ibG9jayAoKmNsb29nX3BvaW50ZXJzX18ucF9zdG10X2Js b2NrKQorKyNkZWZpbmUgc3RtdF9mb3IgKCpjbG9vZ19wb2ludGVyc19fLnBfc3RtdF9mb3IpCisr I2RlZmluZSBzdG10X2d1YXJkICgqY2xvb2dfcG9pbnRlcnNfXy5wX3N0bXRfZ3VhcmQpCisrI2Rl ZmluZSBzdG10X3Jvb3QgKCpjbG9vZ19wb2ludGVyc19fLnBfc3RtdF9yb290KQorKyNkZWZpbmUg c3RtdF91c2VyICgqY2xvb2dfcG9pbnRlcnNfXy5wX3N0bXRfdXNlcikKKysjZGVmaW5lIHN0bXRf YXNzICgqY2xvb2dfcG9pbnRlcnNfXy5wX3N0bXRfYXNzKQorKyNkZWZpbmUgcHBsX2RlbGV0ZV9D b25zdHJhaW50X1N5c3RlbSAoKmNsb29nX3BvaW50ZXJzX18ucF9wcGxfZGVsZXRlX0NvbnN0cmFp bnRfU3lzdGVtKQorKyNkZWZpbmUgcHBsX2luaXRpYWxpemUgKCpjbG9vZ19wb2ludGVyc19fLnBf cHBsX2luaXRpYWxpemUpCisrI2RlZmluZSBwcGxfbmV3X0NvbnN0cmFpbnRfU3lzdGVtX2Zyb21f Q29uc3RyYWludCAoKmNsb29nX3BvaW50ZXJzX18ucF9wcGxfbmV3X0NvbnN0cmFpbnRfU3lzdGVt X2Zyb21fQ29uc3RyYWludCkKKysjZGVmaW5lIHBwbF9uZXdfQ19Qb2x5aGVkcm9uX2Zyb21fQ29u c3RyYWludF9TeXN0ZW0gKCpjbG9vZ19wb2ludGVyc19fLnBfcHBsX25ld19DX1BvbHloZWRyb25f ZnJvbV9Db25zdHJhaW50X1N5c3RlbSkKKysjZGVmaW5lIHBwbF9Qb2x5aGVkcm9uX2FmZmluZV9p bWFnZSAoKmNsb29nX3BvaW50ZXJzX18ucF9wcGxfUG9seWhlZHJvbl9hZmZpbmVfaW1hZ2UpCisr I2RlZmluZSBwcGxfaW9fZnByaW50X1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhlZHJvbiAoKmNs b29nX3BvaW50ZXJzX18ucF9wcGxfaW9fZnByaW50X1BvaW50c2V0X1Bvd2Vyc2V0X0NfUG9seWhl ZHJvbikKKysjaWYgIShQUExfVkVSU0lPTl9NQUpPUiA9PSAwICYmIFBQTF9WRVJTSU9OX01JTk9S IDwgMTEpCisrI2RlZmluZSBwcGxfbmV3X1BJUF9Qcm9ibGVtX2Zyb21fY29uc3RyYWludHMgKCpj bG9vZ19wb2ludGVyc19fLnBfcHBsX25ld19QSVBfUHJvYmxlbV9mcm9tX2NvbnN0cmFpbnRzKQor KyNkZWZpbmUgcHBsX1BJUF9Qcm9ibGVtX2lzX3NhdGlzZmlhYmxlICgqY2xvb2dfcG9pbnRlcnNf Xy5wX3BwbF9QSVBfUHJvYmxlbV9pc19zYXRpc2ZpYWJsZSkKKysjZGVmaW5lIHBwbF9kZWxldGVf UElQX1Byb2JsZW0gKCpjbG9vZ19wb2ludGVyc19fLnBfcHBsX2RlbGV0ZV9QSVBfUHJvYmxlbSkK KysjZW5kaWYKKysKKysjZGVmaW5lIGNsb29nX2ZpbmFsaXplICgqY2xvb2dfcG9pbnRlcnNfXy5w X3BwbF9maW5hbGl6ZSkKKysKKysKKyAjZW5kaWYgLyogR1JBUEhJVEVfQ0xPT0dfQ09NUEFUX0gg ICovCistLS0gZ2NjL2dyYXBoaXRlLmMuamoJMjAxMS0wMS0wMyAxMjo1MzowNS4xOTQwNTY1MTMg KzAxMDAKKysrKyBnY2MvZ3JhcGhpdGUuYwkyMDExLTAxLTA0IDE2OjE4OjMyLjM4NTAwNzc2NyAr MDEwMAorQEAgLTU2LDYgKzU2LDM1IEBAIGFsb25nIHdpdGggR0NDOyBzZWUgdGhlIGZpbGUgQ09Q WUlORzMuICAKKyAKKyBDbG9vZ1N0YXRlICpjbG9vZ19zdGF0ZTsKKyAKKytfX3R5cGVvZiAoY2xv b2dfcG9pbnRlcnNfXykgY2xvb2dfcG9pbnRlcnNfXzsKKysKKytzdGF0aWMgYm9vbAorK2luaXRf Y2xvb2dfcG9pbnRlcnMgKHZvaWQpCisreworKyAgdm9pZCAqaDsKKysKKysgIGlmIChjbG9vZ19w b2ludGVyc19fLmluaXRlZCkKKysgICAgcmV0dXJuIGNsb29nX3BvaW50ZXJzX18uaCAhPSBOVUxM OworKyAgaCA9IGRsb3BlbiAoImxpYmNsb29nLnNvLjAiLCBSVExEX0xBWlkpOworKyAgY2xvb2df cG9pbnRlcnNfXy5oID0gaDsKKysgIGlmIChoID09IE5VTEwpCisrICAgIHJldHVybiBmYWxzZTsK KysjZGVmaW5lIERZTlNZTSh4KSBcCisrICBkbyBcCisrICAgIHsgXAorKyAgICAgIHVuaW9uIHsg X190eXBlb2YgKGNsb29nX3BvaW50ZXJzX18ucF8jI3gpIHA7IHZvaWQgKnE7IH0gdTsgXAorKyAg ICAgIHUucSA9IGRsc3ltIChoLCAjeCk7IFwKKysgICAgICBpZiAodS5xID09IE5VTEwpIFwKKysJ cmV0dXJuIGZhbHNlOyBcCisrICAgICAgY2xvb2dfcG9pbnRlcnNfXy5wXyMjeCA9IHUucDsgXAor KyAgICB9IFwKKysgIHdoaWxlICgwKQorKyAgRFlOU1lNUworKyN1bmRlZiBEWU5TWU0KKysgIHJl dHVybiB0cnVlOworK30KKysKKysKKyAvKiBQcmludCBnbG9iYWwgc3RhdGlzdGljcyB0byBGSUxF LiAgKi8KKyAKKyBzdGF0aWMgdm9pZAorQEAgLTIwMSw2ICsyMzAsMTIgQEAgZ3JhcGhpdGVfaW5p dGlhbGl6ZSAodm9pZCkKKyAgICAgICByZXR1cm4gZmFsc2U7CisgICAgIH0KKyAKKysgIGlmICgh aW5pdF9jbG9vZ19wb2ludGVycyAoKSkKKysgICAgeworKyAgICAgIHNvcnJ5ICgiR3JhcGhpdGUg bG9vcCBvcHRpbWl6YXRpb25zIGNhbm5vdCBiZSB1c2VkIik7CisrICAgICAgcmV0dXJuIGZhbHNl OworKyAgICB9CisrCisgICBzY2V2X3Jlc2V0ICgpOworICAgcmVjb21wdXRlX2FsbF9kb21pbmF0 b3JzICgpOworICAgaW5pdGlhbGl6ZV9vcmlnaW5hbF9jb3B5X3RhYmxlcyAoKTsKKy0tLSBnY2Mv Z3JhcGhpdGUtY2xhc3QtdG8tZ2ltcGxlLmMuamoJMjAxMS0wMS0wMyAxMjo1MzowNS4wMDAwMDAw MDAgKzAxMDAKKysrKyBnY2MvZ3JhcGhpdGUtY2xhc3QtdG8tZ2ltcGxlLmMJMjAxMS0wMS0wNCAx NjoyOTo1NS43MzgwMDc0NjMgKzAxMDAKK0BAIC04MzYsNyArODM2LDcgQEAgY2xhc3RfZ2V0X2Jv ZHlfb2ZfbG9vcCAoc3RydWN0IGNsYXN0X3N0bQorICAgIGZyb20gU1RNVF9GT1IuICAqLworIAor IHN0YXRpYyB0cmVlCistdHlwZV9mb3JfY2xhc3RfZm9yIChzdHJ1Y3QgY2xhc3RfZm9yICpzdG10 X2ZvciwgaXZzX3BhcmFtc19wIGlwKQorK3R5cGVfZm9yX2NsYXN0X2ZvciAoc3RydWN0IGNsYXN0 X2ZvciAqc3RtdF9mb3JhLCBpdnNfcGFyYW1zX3AgaXApCisgeworICAgbXB6X3QgYm91bmRfb25l LCBib3VuZF90d287CisgICB0cmVlIGxiX3R5cGUsIHViX3R5cGU7CitAQCAtODQ0LDggKzg0NCw4 IEBAIHR5cGVfZm9yX2NsYXN0X2ZvciAoc3RydWN0IGNsYXN0X2ZvciAqc3QKKyAgIG1wel9pbml0 IChib3VuZF9vbmUpOworICAgbXB6X2luaXQgKGJvdW5kX3R3byk7CisgCistICBsYl90eXBlID0g dHlwZV9mb3JfY2xhc3RfZXhwciAoc3RtdF9mb3ItPkxCLCBpcCwgYm91bmRfb25lLCBib3VuZF90 d28pOworLSAgdWJfdHlwZSA9IHR5cGVfZm9yX2NsYXN0X2V4cHIgKHN0bXRfZm9yLT5VQiwgaXAs IGJvdW5kX29uZSwgYm91bmRfdHdvKTsKKysgIGxiX3R5cGUgPSB0eXBlX2Zvcl9jbGFzdF9leHBy IChzdG10X2ZvcmEtPkxCLCBpcCwgYm91bmRfb25lLCBib3VuZF90d28pOworKyAgdWJfdHlwZSA9 IHR5cGVfZm9yX2NsYXN0X2V4cHIgKHN0bXRfZm9yYS0+VUIsIGlwLCBib3VuZF9vbmUsIGJvdW5k X3R3byk7CisgCisgICBtcHpfY2xlYXIgKGJvdW5kX29uZSk7CisgICBtcHpfY2xlYXIgKGJvdW5k X3R3byk7CistLS0gZ2NjL2dyYXBoaXRlLXBvbHkuaC5qagkyMDExLTAxLTAzIDEyOjUzOjA1LjAw MDAwMDAwMCArMDEwMAorKysrIGdjYy9ncmFwaGl0ZS1wb2x5LmgJMjAxMS0wMS0wNCAxNzozNTo1 My4zMDg3ODg2MjkgKzAxMDAKK0BAIC0yMiw2ICsyMiw4IEBAIGFsb25nIHdpdGggR0NDOyBzZWUg dGhlIGZpbGUgQ09QWUlORzMuICAKKyAjaWZuZGVmIEdDQ19HUkFQSElURV9QT0xZX0gKKyAjZGVm aW5lIEdDQ19HUkFQSElURV9QT0xZX0gKKyAKKysjaW5jbHVkZSAiZ3JhcGhpdGUtY2xvb2ctdXRp bC5oIgorKworIHR5cGVkZWYgc3RydWN0IHBvbHlfZHIgKnBvbHlfZHJfcDsKKyBERUZfVkVDX1Ao cG9seV9kcl9wKTsKKyBERUZfVkVDX0FMTE9DX1AgKHBvbHlfZHJfcCwgaGVhcCk7CgpkaWZmIC0t Z2l0IGEvZ2NjNDctaGFjay5wYXRjaCBiL2djYzQ3LWhhY2sucGF0Y2gKbmV3IGZpbGUgbW9kZSAx MDA2NDQKaW5kZXggMDAwMDAwMC4uMTkwM2U5NQotLS0gL2Rldi9udWxsCisrKyBiL2djYzQ3LWhh Y2sucGF0Y2gKQEAgLTAsMCArMSwxMDIgQEAKKy0tLSBsaWJhZGEvTWFrZWZpbGUuaW4uamoJMjAw OS0wMS0xNCAxMjowNzozNS4wMDAwMDAwMDAgKzAxMDAKKysrKyBsaWJhZGEvTWFrZWZpbGUuaW4J MjAwOS0wMS0xNSAxNDoyNTozMy4wMDAwMDAwMDAgKzAxMDAKK0BAIC02NiwxOCArNjYsNDAgQEAg bGlic3ViZGlyIDo9ICQobGliZGlyKS9nY2MvJCh0YXJnZXRfbm9uYworIEFEQV9SVFNfRElSPSQo R0NDX0RJUikvYWRhL3J0cyQoc3Vic3QgLyxfLCQoTVVMVElTVUJESVIpKQorIEFEQV9SVFNfU1VC RElSPS4vcnRzJChzdWJzdCAvLF8sJChNVUxUSVNVQkRJUikpCisgCisrREVGQVVMVE1VTFRJRkxB R1MgOj0KKytpZmVxICgkKE1VTFRJU1VCRElSKSwpCisrdGFyZzo9JChzdWJzdCAtLCAsJCh0YXJn ZXQpKQorK2FyY2g6PSQod29yZCAxLCQodGFyZykpCisraWZlcSAoJCh3b3JkcyAkKHRhcmcpKSwy KQorK29zeXM6PSQod29yZCAyLCQodGFyZykpCisrZWxzZQorK29zeXM6PSQod29yZCAzLCQodGFy ZykpCisrZW5kaWYKKytpZmVxICgkKHN0cmlwICQoZmlsdGVyLW91dCBpJTg2IHg4Nl82NCBwb3dl cnBjJSBwcGMlIHMzOTAlIHNwYXJjJSBsaW51eCUsICQoYXJjaCkgJChvc3lzKSkpLCkKKytpZmVx ICgkKHNoZWxsICQoQ0MpICQoQ0ZMQUdTKSAtcHJpbnQtbXVsdGktb3MtZGlyZWN0b3J5KSwuLi9s aWI2NCkKKytERUZBVUxUTVVMVElGTEFHUyA6PSAtbTY0CisrZWxzZQorK2lmZXEgKCQoc3RyaXAg JChmaWx0ZXItb3V0IHMzOTAlLCAkKGFyY2gpKSksKQorK0RFRkFVTFRNVUxUSUZMQUdTIDo9IC1t MzEKKytlbHNlCisrREVGQVVMVE1VTFRJRkxBR1MgOj0gLW0zMgorK2VuZGlmCisrZW5kaWYKKytl bmRpZgorK2VuZGlmCisrCisgIyBleGVleHQgc2hvdWxkIG5vdCBiZSB1c2VkIGJlY2F1c2UgaXQn cyB0aGUgKmhvc3QqIGV4ZWV4dC4gIFdlJ3JlIGJ1aWxkaW5nCisgIyBhICp0YXJnZXQqIGxpYnJh cnksIGFyZW4ndCB3ZT8hPyAgTGlrZXdpc2UgZm9yIENDLiAgU3RpbGwsIHByb3ZpZGUgYm9ndXMK KyAjIGRlZmluaXRpb25zIGp1c3QgaW4gY2FzZSBzb21ldGhpbmcgc2xpcHMgdGhyb3VnaCB0aGUg c2FmZXR5IG5ldCBwcm92aWRlZAorICMgYnkgcmVjdXJzaXZlIG1ha2UgaW52b2NhdGlvbnMgaW4g Z2NjL2FkYS9NYWtlZmlsZS5pbgorIExJQkFEQV9GTEFHU19UT19QQVNTID0gXAorICAgICAgICAg Ik1BS0VPVkVSUklERVM9IiBcCistICAgICAgICAiTERGTEFHUz0kKExERkxBR1MpIiBcCisrICAg ICAgICAiTERGTEFHUz0kKExERkxBR1MpICQoREVGQVVMVE1VTFRJRkxBR1MpIiBcCisgICAgICAg ICAiTE5fUz0kKExOX1MpIiBcCisgICAgICAgICAiU0hFTEw9JChTSEVMTCkiIFwKKy0gICAgICAg ICJHTkFUTElCRkxBR1M9JChHTkFUTElCRkxBR1MpICQoTVVMVElGTEFHUykiIFwKKy0gICAgICAg ICJHTkFUTElCQ0ZMQUdTPSQoR05BVExJQkNGTEFHUykgJChNVUxUSUZMQUdTKSIgXAorLSAgICAg ICAgIkdOQVRMSUJDRkxBR1NfRk9SX0M9JChHTkFUTElCQ0ZMQUdTX0ZPUl9DKSAkKE1VTFRJRkxB R1MpIiBcCisrICAgICAgICAiR05BVExJQkZMQUdTPSQoR05BVExJQkZMQUdTKSAkKE1VTFRJRkxB R1MpICQoREVGQVVMVE1VTFRJRkxBR1MpIiBcCisrICAgICAgICAiR05BVExJQkNGTEFHUz0kKEdO QVRMSUJDRkxBR1MpICQoTVVMVElGTEFHUykgJChERUZBVUxUTVVMVElGTEFHUykiIFwKKysgICAg ICAgICJHTkFUTElCQ0ZMQUdTX0ZPUl9DPSQoR05BVExJQkNGTEFHU19GT1JfQykgJChNVUxUSUZM QUdTKSAkKERFRkFVTFRNVUxUSUZMQUdTKSIgXAorICAgICAgICAgIlBJQ0ZMQUdfRk9SX1RBUkdF VD0kKFBJQ0ZMQUcpIiBcCisgICAgICAgICAiVEhSRUFEX0tJTkQ9JChUSFJFQURfS0lORCkiIFwK KyAgICAgICAgICJUUkFDRT0kKFRSQUNFKSIgXAorQEAgLTg4LDcgKzExMCw3IEBAIExJQkFEQV9G TEFHU19UT19QQVNTID0gXAorICAgICAgICAgImV4ZWV4dD0uZXhlZXh0LnNob3VsZC5ub3QuYmUu dXNlZCAiIFwKKyAJJ0NDPXRoZS5ob3N0LmNvbXBpbGVyLnNob3VsZC5ub3QuYmUubmVlZGVkJyBc CisgCSJHQ0NfRk9SX1RBUkdFVD0kKENDKSIgXAorLSAgICAgICAgIkNGTEFHUz0kKENGTEFHUyki CisrICAgICAgICAiQ0ZMQUdTPSQoQ0ZMQUdTKSAkKERFRkFVTFRNVUxUSUZMQUdTKSIKKyAKKyAj IFJ1bGVzIHRvIGJ1aWxkIGduYXRsaWIuCisgLlBIT05ZOiBnbmF0bGliIGduYXRsaWItcGxhaW4g Z25hdGxpYi1zamxqIGduYXRsaWItemN4IGduYXRsaWItc2hhcmVkIG9zY29uc3Rvb2wKKy0tLSBn Y2MvYWRhL3NlbV91dGlsLmFkYgkocmV2aXNpb24gMTYxNjc3KQorKysrIGdjYy9hZGEvc2VtX3V0 aWwuYWRiCSh3b3JraW5nIGNvcHkpCitAQCAtNTQ4Nyw3ICs1NDg3LDcgQEAgcGFja2FnZSBib2R5 IFNlbV9VdGlsIGlzCisgICAgICAgICAgICAgRXhwICAgICAgICAgICA6IE5vZGVfSWQ7CisgICAg ICAgICAgICAgQXNzbiAgICAgICAgICA6IE5vZGVfSWQ7CisgICAgICAgICAgICAgQ2hvaWNlICAg ICAgICA6IE5vZGVfSWQ7CistICAgICAgICAgICAgQ29tcF9UeXBlICAgICA6IEVudGl0eV9JZDsK KysgICAgICAgICAgICBDb21wX1R5cGUgICAgIDogRW50aXR5X0lkIDo9IEVtcHR5OworICAgICAg ICAgICAgIElzX0FycmF5X0FnZ3IgOiBCb29sZWFuOworIAorICAgICAgICAgIGJlZ2luCistLS0g Y29uZmlnLW1sLmluLmpqCTIwMTAtMDYtMzAgMDk6NTA6NDQuMDAwMDAwMDAwICswMjAwCisrKysg Y29uZmlnLW1sLmluCTIwMTAtMDctMDIgMjE6MjQ6MTcuOTk0MjExMTUxICswMjAwCitAQCAtNTE2 LDYgKzUxNiw4IEBAIG11bHRpLWRvOgorIAkJCQlBREFGTEFHUz0iJChBREFGTEFHUykgJCR7Zmxh Z3N9IiBcCisgCQkJCXByZWZpeD0iJChwcmVmaXgpIiBcCisgCQkJCWV4ZWNfcHJlZml4PSIkKGV4 ZWNfcHJlZml4KSIgXAorKwkJCQltYW5kaXI9IiQobWFuZGlyKSIgXAorKwkJCQlpbmZvZGlyPSIk KGluZm9kaXIpIiBcCisgCQkJCUdDSkZMQUdTPSIkKEdDSkZMQUdTKSAkJHtmbGFnc30iIFwKKyAJ CQkJR09DRkxBR1M9IiQoR09DRkxBR1MpICQke2ZsYWdzfSIgXAorIAkJCQlDWFhGTEFHUz0iJChD WFhGTEFHUykgJCR7ZmxhZ3N9IiBcCistLS0gbGliamF2YS9NYWtlZmlsZS5hbS5qagkyMDEwLTA3 LTA5IDExOjE3OjMzLjcyOTYwNDA5MCArMDIwMAorKysrIGxpYmphdmEvTWFrZWZpbGUuYW0JMjAx MC0wNy0wOSAxMzoxNjo0MS44OTQzNzU2NDEgKzAyMDAKK0BAIC03MTAsNyArNzEwLDggQEAgaWYg VVNFX0xJQkdDSl9CQworICMjIGxhdGVyLgorIAlAZWNobyBJbnN0YWxsaW5nIGR1bW15IGxpYiBs aWJnY2pfYmMuc28uMS4wLjA7IFwKKyAJcm0gJChERVNURElSKSQodG9vbGV4ZWNsaWJkaXIpL2xp Ymdjal9iYy5zbzsgXAorLQltdiAkKERFU1RESVIpJCh0b29sZXhlY2xpYmRpcikvbGliZ2NqX2Jj LnNvLjEuMC4wICQoREVTVERJUikkKHRvb2xleGVjbGliZGlyKS9saWJnY2pfYmMuc287IFwKKysJ JChJTlNUQUxMKSAkKElOU1RBTExfU1RSSVBfRkxBRykgJChoZXJlKS8ubGlicy9saWJnY2pfYmMu c28gJChERVNURElSKSQodG9vbGV4ZWNsaWJkaXIpL2xpYmdjal9iYy5zbzsgXAorKwlybSAkKERF U1RESVIpJCh0b29sZXhlY2xpYmRpcikvbGliZ2NqX2JjLnNvLjEuMC4wOyBcCisgCSQobGliZ2Nq X2JjX2R1bW15X0xJTkspIC14YyAvZGV2L251bGwgLVdsLC1zb25hbWUsbGliZ2NqX2JjLnNvLjEg XAorIAktbyAkKERFU1RESVIpJCh0b29sZXhlY2xpYmRpcikvbGliZ2NqX2JjLnNvLjEuMC4wIC1s Z2NqIHx8IGV4aXQ7IFwKKyAJcm0gJChERVNURElSKSQodG9vbGV4ZWNsaWJkaXIpL2xpYmdjal9i Yy5zby4xOyBcCistLS0gbGliamF2YS9NYWtlZmlsZS5pbi5qagkyMDEwLTA3LTA5IDExOjE3OjM0 LjAwMDAwMDAwMCArMDIwMAorKysrIGxpYmphdmEvTWFrZWZpbGUuaW4JMjAxMC0wNy0wOSAxMzox ODowNy41NDI1NzIyNzAgKzAyMDAKK0BAIC0xMjY2NSw3ICsxMjY2NSw4IEBAIGluc3RhbGwtZXhl Yy1ob29rOiBpbnN0YWxsLWJpblBST0dSQU1TIGkKKyAJaW5zdGFsbC1saWJleGVjc3ViUFJPR1JB TVMKKyBAVVNFX0xJQkdDSl9CQ19UUlVFQAlAZWNobyBJbnN0YWxsaW5nIGR1bW15IGxpYiBsaWJn Y2pfYmMuc28uMS4wLjA7IFwKKyBAVVNFX0xJQkdDSl9CQ19UUlVFQAlybSAkKERFU1RESVIpJCh0 b29sZXhlY2xpYmRpcikvbGliZ2NqX2JjLnNvOyBcCistQFVTRV9MSUJHQ0pfQkNfVFJVRUAJbXYg JChERVNURElSKSQodG9vbGV4ZWNsaWJkaXIpL2xpYmdjal9iYy5zby4xLjAuMCAkKERFU1RESVIp JCh0b29sZXhlY2xpYmRpcikvbGliZ2NqX2JjLnNvOyBcCisrQFVTRV9MSUJHQ0pfQkNfVFJVRUAJ JChJTlNUQUxMKSAkKElOU1RBTExfU1RSSVBfRkxBRykgJChoZXJlKS8ubGlicy9saWJnY2pfYmMu c28gJChERVNURElSKSQodG9vbGV4ZWNsaWJkaXIpL2xpYmdjal9iYy5zbzsgXAorK0BVU0VfTElC R0NKX0JDX1RSVUVACXJtICQoREVTVERJUikkKHRvb2xleGVjbGliZGlyKS9saWJnY2pfYmMuc28u MS4wLjA7IFwKKyBAVVNFX0xJQkdDSl9CQ19UUlVFQAkkKGxpYmdjal9iY19kdW1teV9MSU5LKSAt eGMgL2Rldi9udWxsIC1XbCwtc29uYW1lLGxpYmdjal9iYy5zby4xIFwKKyBAVVNFX0xJQkdDSl9C Q19UUlVFQAktbyAkKERFU1RESVIpJCh0b29sZXhlY2xpYmRpcikvbGliZ2NqX2JjLnNvLjEuMC4w IC1sZ2NqIHx8IGV4aXQ7IFwKKyBAVVNFX0xJQkdDSl9CQ19UUlVFQAlybSAkKERFU1RESVIpJCh0 b29sZXhlY2xpYmRpcikvbGliZ2NqX2JjLnNvLjE7IFwKCmRpZmYgLS1naXQgYS9nY2M0Ny1pMzg2 LWxpYmdvbXAucGF0Y2ggYi9nY2M0Ny1pMzg2LWxpYmdvbXAucGF0Y2gKbmV3IGZpbGUgbW9kZSAx MDA2NDQKaW5kZXggMDAwMDAwMC4uZjZhNmI5MQotLS0gL2Rldi9udWxsCisrKyBiL2djYzQ3LWkz ODYtbGliZ29tcC5wYXRjaApAQCAtMCwwICsxLDI4IEBACistLS0gbGliZ29tcC9jb25maWd1cmUu dGd0LmpqCTIwMDgtMDEtMTAgMjA6NTM6NDguMDAwMDAwMDAwICswMTAwCisrKysgbGliZ29tcC9j b25maWd1cmUudGd0CTIwMDgtMDMtMjcgMTI6NDQ6NTEuMDAwMDAwMDAwICswMTAwCitAQCAtNDQs MTQgKzQ0LDE0IEBAIGlmIHRlc3QgJGVuYWJsZV9saW51eF9mdXRleCA9IHllczsgdGhlbgorIAk7 OworIAorICAgICAjIE5vdGUgdGhhdCBiYXJlIGkzODYgaXMgbm90IGluY2x1ZGVkIGhlcmUuICBX ZSBuZWVkIGNtcHhjaGcuCistICAgIGlbNDU2XTg2LSotbGludXgqKQorKyAgICBpWzQ1Nl04Ni0q LWxpbnV4KikKKyAJY29uZmlnX3BhdGg9ImxpbnV4L3g4NiBsaW51eCBwb3NpeCIKKyAJY2FzZSAi ICR7Q0N9ICR7Q0ZMQUdTfSAiIGluCisgCSAgKiIgLW02NCAiKikKKyAJICAgIDs7CisgCSAgKikK KyAJICAgIGlmIHRlc3QgLXogIiR3aXRoX2FyY2giOyB0aGVuCistCSAgICAgIFhDRkxBR1M9IiR7 WENGTEFHU30gLW1hcmNoPWk0ODYgLW10dW5lPSR7dGFyZ2V0X2NwdX0iCisrCSAgICAgIFhDRkxB R1M9IiR7WENGTEFHU30gLW1hcmNoPWk0ODYgLW10dW5lPWdlbmVyaWMiCisgCSAgICBmaQorIAll c2FjCisgCTs7CitAQCAtNjMsNyArNjMsNyBAQCBpZiB0ZXN0ICRlbmFibGVfbGludXhfZnV0ZXgg PSB5ZXM7IHRoZW4KKyAJY29uZmlnX3BhdGg9ImxpbnV4L3g4NiBsaW51eCBwb3NpeCIKKyAJY2Fz ZSAiICR7Q0N9ICR7Q0ZMQUdTfSAiIGluCisgCSAgKiIgLW0zMiAiKikKKy0JICAgIFhDRkxBR1M9 IiR7WENGTEFHU30gLW1hcmNoPWk0ODYgLW10dW5lPWk2ODYiCisrCSAgICBYQ0ZMQUdTPSIke1hD RkxBR1N9IC1tYXJjaD1pNDg2IC1tdHVuZT1nZW5lcmljIgorIAkgICAgOzsKKyAJZXNhYworIAk7 OwoKZGlmZiAtLWdpdCBhL2djYzQ3LWphdmEtbm9tdWx0aS5wYXRjaCBiL2djYzQ3LWphdmEtbm9t dWx0aS5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xNzMzNGFhCi0t LSAvZGV2L251bGwKKysrIGIvZ2NjNDctamF2YS1ub211bHRpLnBhdGNoCkBAIC0wLDAgKzEsNDQg QEAKKy0tLSBsaWJqYXZhL2NvbmZpZ3VyZS5hYy5qagkyMDA3LTEyLTA3IDE3OjU1OjUwLjAwMDAw MDAwMCArMDEwMAorKysrIGxpYmphdmEvY29uZmlndXJlLmFjCTIwMDctMTItMDcgMTg6MzY6NTYu MDAwMDAwMDAwICswMTAwCitAQCAtODIsNiArODIsMTMgQEAgQUNfQVJHX0VOQUJMRShqYXZhLW1h aW50YWluZXItbW9kZSwKKyAJW2FsbG93IHJlYnVpbGRpbmcgb2YgLmNsYXNzIGFuZCAuaCBmaWxl c10pKQorIEFNX0NPTkRJVElPTkFMKEpBVkFfTUFJTlRBSU5FUl9NT0RFLCB0ZXN0ICIkZW5hYmxl X2phdmFfbWFpbnRhaW5lcl9tb2RlIiA9IHllcykKKyAKKytBQ19BUkdfRU5BQkxFKGxpYmphdmEt bXVsdGlsaWIsCisrCUFTX0hFTFBfU1RSSU5HKFstLWVuYWJsZS1saWJqYXZhLW11bHRpbGliXSwg W2J1aWxkIGxpYmphdmEgYXMgbXVsdGlsaWJdKSkKKytpZiB0ZXN0ICIkZW5hYmxlX2xpYmphdmFf bXVsdGlsaWIiID0gbm87IHRoZW4KKysgIG11bHRpbGliPW5vCisrICBhY19jb25maWd1cmVfYXJn cz0iJGFjX2NvbmZpZ3VyZV9hcmdzIC0tZGlzYWJsZS1tdWx0aWxpYiIKKytmaQorKworICMgSXQg bWF5IG5vdCBiZSBzYWZlIHRvIHJ1biBsaW5raW5nIHRlc3RzIGluIEFDX1BST0dfQ0MvQUNfUFJP R19DWFguCisgR0NDX05PX0VYRUNVVEFCTEVTCisgCistLS0gbGliamF2YS9jb25maWd1cmUuamoJ MjAwNy0xMi0wNyAxNzo1NTo1MC4wMDAwMDAwMDAgKzAxMDAKKysrKyBsaWJqYXZhL2NvbmZpZ3Vy ZQkyMDA3LTEyLTA3IDE4OjM5OjU4LjAwMDAwMDAwMCArMDEwMAorQEAgLTEwMjEsNiArMTAyMSw4 IEBAIE9wdGlvbmFsIEZlYXR1cmVzOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVs dD15ZXMKKyAgIC0tZW5hYmxlLWphdmEtbWFpbnRhaW5lci1tb2RlCisgICAgICAgICAgICAgICAg ICAgICAgICAgICBhbGxvdyByZWJ1aWxkaW5nIG9mIC5jbGFzcyBhbmQgLmggZmlsZXMKKysgIC0t ZW5hYmxlLWxpYmphdmEtbXVsdGlsaWIKKysgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1aWxk IGxpYmphdmEgYXMgbXVsdGlsaWIKKyAgIC0tZGlzYWJsZS1kZXBlbmRlbmN5LXRyYWNraW5nICBz cGVlZHMgdXAgb25lLXRpbWUgYnVpbGQKKyAgIC0tZW5hYmxlLWRlcGVuZGVuY3ktdHJhY2tpbmcg ICBkbyBub3QgcmVqZWN0IHNsb3cgZGVwZW5kZW5jeSBleHRyYWN0b3JzCisgICAtLWVuYWJsZS1t YWludGFpbmVyLW1vZGUgIGVuYWJsZSBtYWtlIHJ1bGVzIGFuZCBkZXBlbmRlbmNpZXMgbm90IHVz ZWZ1bAorQEAgLTE5NzMsNiArMTk3NSwxNiBAQCBlbHNlCisgZmkKKyAKKyAKKysjIENoZWNrIHdo ZXRoZXIgLS1lbmFibGUtbGliamF2YS1tdWx0aWxpYiB3YXMgZ2l2ZW4uCisraWYgdGVzdCAiJHtl bmFibGVfbGliamF2YV9tdWx0aWxpYitzZXR9IiA9IHNldDsgdGhlbgorKyAgZW5hYmxldmFsPSRl bmFibGVfbGliamF2YV9tdWx0aWxpYjsKKytmaQorKworK2lmIHRlc3QgIiRlbmFibGVfbGliamF2 YV9tdWx0aWxpYiIgPSBubzsgdGhlbgorKyAgbXVsdGlsaWI9bm8KKysgIGFjX2NvbmZpZ3VyZV9h cmdzPSIkYWNfY29uZmlndXJlX2FyZ3MgLS1kaXNhYmxlLW11bHRpbGliIgorK2ZpCisrCisgIyBJ dCBtYXkgbm90IGJlIHNhZmUgdG8gcnVuIGxpbmtpbmcgdGVzdHMgaW4gQUNfUFJPR19DQy9BQ19Q Uk9HX0NYWC4KKyAKKyAKCmRpZmYgLS1naXQgYS9nY2M0Ny1saWJnb21wLW9tcF9oLW11bHRpbGli LnBhdGNoIGIvZ2NjNDctbGliZ29tcC1vbXBfaC1tdWx0aWxpYi5wYXRjaApuZXcgZmlsZSBtb2Rl IDEwMDY0NAppbmRleCAwMDAwMDAwLi5kMGU5OGQxCi0tLSAvZGV2L251bGwKKysrIGIvZ2NjNDct bGliZ29tcC1vbXBfaC1tdWx0aWxpYi5wYXRjaApAQCAtMCwwICsxLDE3IEBACisyMDA4LTA2LTA5 ICBKYWt1YiBKZWxpbmVrICA8amFrdWJAcmVkaGF0LmNvbT4KKworCSogb21wLmguaW4gKG9tcF9u ZXN0X2xvY2tfdCk6IEZpeCB1cCBmb3IgTGludXggbXVsdGlsaWJzLgorCistLS0gbGliZ29tcC9v bXAuaC5pbi5qagkyMDA4LTA2LTA5IDEzOjM0OjA1LjAwMDAwMDAwMCArMDIwMAorKysrIGxpYmdv bXAvb21wLmguaW4JMjAwOC0wNi0wOSAxMzozNDo0OC4wMDAwMDAwMDAgKzAyMDAKK0BAIC00Miw4 ICs0Miw4IEBAIHR5cGVkZWYgc3RydWN0CisgCisgdHlwZWRlZiBzdHJ1Y3QKKyB7CistICB1bnNp Z25lZCBjaGFyIF94W0BPTVBfTkVTVF9MT0NLX1NJWkVAXSAKKy0gICAgX19hdHRyaWJ1dGVfXygo X19hbGlnbmVkX18oQE9NUF9ORVNUX0xPQ0tfQUxJR05AKSkpOworKyAgdW5zaWduZWQgY2hhciBf eFs4ICsgc2l6ZW9mICh2b2lkICopXSAKKysgICAgX19hdHRyaWJ1dGVfXygoX19hbGlnbmVkX18o c2l6ZW9mICh2b2lkICopKSkpOworIH0gb21wX25lc3RfbG9ja190OworICNlbmRpZgorIAoKZGlm ZiAtLWdpdCBhL2djYzQ3LWxpYml0bS1mbm8tZXhjZXB0aW9ucy5wYXRjaCBiL2djYzQ3LWxpYml0 bS1mbm8tZXhjZXB0aW9ucy5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw Li5lZDc1MmRhCi0tLSAvZGV2L251bGwKKysrIGIvZ2NjNDctbGliaXRtLWZuby1leGNlcHRpb25z LnBhdGNoCkBAIC0wLDAgKzEsMjYgQEAKKzIwMTEtMTItMjIgIEpha3ViIEplbGluZWsgIDxqYWt1 YkByZWRoYXQuY29tPgorCisJKiBNYWtlZmlsZS5hbSAoYmVnaW5lbmQubG8pOiBBcHBlbmQgLWZu by1leGNlcHRpb25zIHRvCisJQ1hYRkxBR1MuCisJKiBNYWtlZmlsZS5pbjogUmVnZW5lcmF0ZWQu CisKKy0tLSBsaWJpdG0vTWFrZWZpbGUuYW0uamoJMjAxMS0xMi0yMCAxMzo0Nzo1Ny4wMDAwMDAw MDAgKzAxMDAKKysrKyBsaWJpdG0vTWFrZWZpbGUuYW0JMjAxMS0xMi0yMiAwOToxNDowNi42NjM0 NjkxNjUgKzAxMDAKK0BAIC03Miw2ICs3Miw3IEBAIGVuZGlmCisgaWYgQVJDSF9YODZfQVZYCisg eDg2X2F2eC5sbyA6IFhDRkxBR1MgKz0gLW1hdngKKyBlbmRpZgorK2JlZ2luZW5kLmxvIDogQ1hY RkxBR1MgKz0gLWZuby1leGNlcHRpb25zCisgCisgaWYgQVJDSF9GVVRFWAorIGxpYml0bV9sYV9T T1VSQ0VTICs9IGZ1dGV4LmNjCistLS0gbGliaXRtL01ha2VmaWxlLmluLmpqCTIwMTEtMTItMjAg MTM6NDc6NTcuMDAwMDAwMDAwICswMTAwCisrKysgbGliaXRtL01ha2VmaWxlLmluCTIwMTEtMTIt MjIgMDk6MTQ6MjkuNDY2MzI5OTQ0ICswMTAwCitAQCAtMTI3OCw2ICsxMjc4LDcgQEAgdnBhdGgg JSAkKHN0cmlwICQoc2VhcmNoX3BhdGgpKQorIEBMSUJJVE1fQlVJTERfVkVSU0lPTkVEX1NITElC X1NVTl9UUlVFQEBMSUJJVE1fQlVJTERfVkVSU0lPTkVEX1NITElCX1RSVUVACSA+ICRAIHx8IChy bSAtZiAkQCA7IGV4aXQgMSkKKyBAQVJDSF9YODZfVFJVRUB4ODZfc3NlLmxvIDogWENGTEFHUyAr PSAtbXNzZQorIEBBUkNIX1g4Nl9BVlhfVFJVRUB4ODZfYXZ4LmxvIDogWENGTEFHUyArPSAtbWF2 eAorK2JlZ2luZW5kLmxvIDogQ1hYRkxBR1MgKz0gLWZuby1leGNlcHRpb25zCisgCisgYWxsLWxv Y2FsOiAkKFNUQU1QX0dFTklOU1JDKQorIAoKZGlmZiAtLWdpdCBhL2djYzQ3LWxpYmphdmEtcHJp bXMtY3R5cGUucGF0Y2ggYi9nY2M0Ny1saWJqYXZhLXByaW1zLWN0eXBlLnBhdGNoCm5ldyBmaWxl IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjAyN2UxZTcKLS0tIC9kZXYvbnVsbAorKysgYi9n Y2M0Ny1saWJqYXZhLXByaW1zLWN0eXBlLnBhdGNoCkBAIC0wLDAgKzEsMjIgQEAKKzIwMTEtMTAt MjcgIEpha3ViIEplbGluZWsgIDxqYWt1YkByZWRoYXQuY29tPgorCisJKiBwcmltcy5jYyAoX19O T19DVFlQRSk6IEZvciBnbGliYyBkZWZpbmUgdGhpcyBiZWZvcmUgaW5jbHVkaW5nCisJY3R5cGUu aC4KKworLS0tIGxpYmphdmEvcHJpbXMuY2MJMjAwOS0wNC0yOCAwNjowMjozMC4wMDAwMDAwMDAg KzAyMDAKKysrKyBsaWJqYXZhL3ByaW1zLmNjCTIwMTEtMTAtMjcgMTI6NTc6NDIuNzQ4NzUyMzgw ICswMjAwCitAQCAtMzgsNiArMzgsMTQgQEAgZGV0YWlscy4gICovCisgI2VuZGlmCisgCisgI2lm bmRlZiBESVNBQkxFX0dFVEVOVl9QUk9QRVJUSUVTCisrI2lmZGVmIF9fR0xJQkNfXworKy8qIGds aWJjIDIuMTUrIHByb3ZpZGVzIGV2ZW4gZm9yIEMrKyBpbmxpbmUgb3B0aW1pemVkIDo6aXNzcGFj ZSBldGMuCisrICAgVW5mb3J0dW5hdGVseSB0aG9zZSBpbmxpbmVzIGFyZSB0aHJvdyAoKSwgYW5k IGNhbGwgYSBmdW5jdGlvbiBwb2ludGVyCisrICAgKHdoaWNoIGlzIHRocm93ICgpIHRvbywgYnV0 IHdpdGggLWZub24tY2FsbC1leGNlcHRpb25zIHRoaXMgcmVzdWx0cworKyAgIGluIGEgX19jeGFf Y2FsbF91bmV4cGVjdGVkIGNhbGwuICBUaGlzIG1hY3JvIGRpc2FibGVzIHRoZSBvcHRpbWl6ZWQK KysgICB2ZXJzaW9uLiAgKi8KKysjZGVmaW5lIF9fTk9fQ1RZUEUgMQorKyNlbmRpZgorICNpbmNs dWRlIDxjdHlwZS5oPgorICNpbmNsdWRlIDxqYXZhLXByb3BzLmg+CisgI2RlZmluZSBQUk9DRVNT X0dDSl9QUk9QRVJUSUVTIHByb2Nlc3NfZ2NqX3Byb3BlcnRpZXMoKQoKZGlmZiAtLWdpdCBhL2dj YzQ3LWxpYnN0ZGMrKy1kb2NzLnBhdGNoIGIvZ2NjNDctbGlic3RkYysrLWRvY3MucGF0Y2gKbmV3 IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTc3ZGQ0OQotLS0gL2Rldi9udWxsCisr KyBiL2djYzQ3LWxpYnN0ZGMrKy1kb2NzLnBhdGNoCkBAIC0wLDAgKzEsMjYgQEAKKy0tLSBsaWJz dGRjKystdjMvZG9jL2h0bWwvaW5kZXguaHRtbC5qagkyMDExLTAxLTAzIDEyOjUzOjIxLjI4Mjgy OTAxMCArMDEwMAorKysrIGxpYnN0ZGMrKy12My9kb2MvaHRtbC9pbmRleC5odG1sCTIwMTEtMDEt MDQgMTg6MDY6MjguOTk5ODUxMTQ1ICswMTAwCitAQCAtNSw2ICs1LDggQEAKKyAgICAgICA8YSBj bGFzcz0ibGluayIgaHJlZj0iaHR0cDovL3d3dy5mc2Yub3JnLyI+RlNGCisgICAgICAgPC9hPgor ICAgICA8L3A+PHA+CisrICAgICAgUmVsZWFzZSA0LjcuMAorKyAgICA8L3A+PHA+CisgICAgICAg UGVybWlzc2lvbiBpcyBncmFudGVkIHRvIGNvcHksIGRpc3RyaWJ1dGUgYW5kL29yIG1vZGlmeSB0 aGlzCisgICAgICAgZG9jdW1lbnQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgRnJlZSBEb2N1 bWVudGF0aW9uCisgICAgICAgTGljZW5zZSwgVmVyc2lvbiAxLjIgb3IgYW55IGxhdGVyIHZlcnNp b24gcHVibGlzaGVkIGJ5IHRoZQorLS0tIGxpYnN0ZGMrKy12My9kb2MvaHRtbC9hcGkuaHRtbC5q agkyMDExLTAxLTAzIDEyOjUzOjIxLjAwMDAwMDAwMCArMDEwMAorKysrIGxpYnN0ZGMrKy12My9k b2MvaHRtbC9hcGkuaHRtbAkyMDExLTAxLTA0IDE4OjEyOjAxLjY3Mjc1Nzc4NCArMDEwMAorQEAg LTE5LDggKzE5LDExIEBACisgICBtZW1iZXIgZnVuY3Rpb25zIGZvciB0aGUgbGlicmFyeSBjbGFz c2VzLCBmaW5kaW5nIG91dCB3aGF0IGlzIGluIGEKKyAgIHBhcnRpY3VsYXIgaW5jbHVkZSBmaWxl LCBsb29raW5nIGF0IGluaGVyaXRhbmNlIGRpYWdyYW1zLCBldGMuCisgPC9wPjxwPgorLSAgVGhl IEFQSSBkb2N1bWVudGF0aW9uLCByZW5kZXJlZCBpbnRvIEhUTUwsIGNhbiBiZSB2aWV3ZWQgb25s aW5lOgorKyAgVGhlIEFQSSBkb2N1bWVudGF0aW9uLCByZW5kZXJlZCBpbnRvIEhUTUwsIGNhbiBi ZSB2aWV3ZWQgaGVyZToKKyA8L3A+PGRpdiBjbGFzcz0iaXRlbWl6ZWRsaXN0Ij48dWwgY2xhc3M9 Iml0ZW1pemVkbGlzdCI+PGxpIGNsYXNzPSJsaXN0aXRlbSI+PHA+CisrICAgICAgPGEgY2xhc3M9 InVsaW5rIiBocmVmPSJhcGkvaW5kZXguaHRtbCI+Zm9yIHRoZSA0LjcgcmVsZWFzZSwgbG9jYWwK KysgICAgICA8L2E+CisrICAgIDwvcD48L2xpPjxsaSBjbGFzcz0ibGlzdGl0ZW0iPjxwPgorICAg ICAgIDxhIGNsYXNzPSJsaW5rIiBocmVmPSJodHRwOi8vZ2NjLmdudS5vcmcvb25saW5lZG9jcy9s aWJzdGRjKysvbGlic3RkYysrLWh0bWwtVVNFUlMtMy40L2luZGV4Lmh0bWwiPmZvciB0aGUgMy40 IHJlbGVhc2UKKyAgICAgICA8L2E+CisgICAgIDwvcD48L2xpPjxsaSBjbGFzcz0ibGlzdGl0ZW0i PjxwPgoKZGlmZiAtLWdpdCBhL2djYzQ3LWxpYnRvb2wtbm8tcnBhdGgucGF0Y2ggYi9nY2M0Ny1s aWJ0b29sLW5vLXJwYXRoLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu LjQ2NmM2NjEKLS0tIC9kZXYvbnVsbAorKysgYi9nY2M0Ny1saWJ0b29sLW5vLXJwYXRoLnBhdGNo CkBAIC0wLDAgKzEsMjcgQEAKK2xpYnRvb2wgc3Vja3MuCistLS0gbHRtYWluLnNoLmpqCTIwMDct MTItMDcgMTQ6NTM6MjEuMDAwMDAwMDAwICswMTAwCisrKysgbHRtYWluLnNoCTIwMDgtMDktMDUg MjE6NTE6NDguMDAwMDAwMDAwICswMjAwCitAQCAtNTM5NCw2ICs1Mzk0LDcgQEAgRU9GCisgCSAg cnBhdGg9IiRmaW5hbGl6ZV9ycGF0aCIKKyAJICB0ZXN0ICIkbW9kZSIgIT0gcmVsaW5rICYmIHJw YXRoPSIkY29tcGlsZV9ycGF0aCRycGF0aCIKKyAJICBmb3IgbGliZGlyIGluICRycGF0aDsgZG8K KysJICAgIGNhc2UgIiRsaWJkaXIiIGluIC91c3IvbGlifC91c3IvbGliNjR8L3Vzci9saWIvLi4v bGlifC91c3IvbGliLy4uL2xpYjY0KSBjb250aW51ZTs7IGVzYWMKKyAJICAgIGlmIHRlc3QgLW4g IiRoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjIjsgdGhlbgorIAkgICAgICBpZiB0ZXN0IC1uICIk aGFyZGNvZGVfbGliZGlyX3NlcGFyYXRvciI7IHRoZW4KKyAJCWlmIHRlc3QgLXogIiRoYXJkY29k ZV9saWJkaXJzIjsgdGhlbgorQEAgLTYwNzEsNiArNjA3Miw3IEBAIEVPRgorICAgICAgIHJwYXRo PQorICAgICAgIGhhcmRjb2RlX2xpYmRpcnM9CisgICAgICAgZm9yIGxpYmRpciBpbiAkY29tcGls ZV9ycGF0aCAkZmluYWxpemVfcnBhdGg7IGRvCisrCWNhc2UgIiRsaWJkaXIiIGluIC91c3IvbGli fC91c3IvbGliNjR8L3Vzci9saWIvLi4vbGlifC91c3IvbGliLy4uL2xpYjY0KSBjb250aW51ZTs7 IGVzYWMKKyAJaWYgdGVzdCAtbiAiJGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMiOyB0aGVuCisg CSAgaWYgdGVzdCAtbiAiJGhhcmRjb2RlX2xpYmRpcl9zZXBhcmF0b3IiOyB0aGVuCisgCSAgICBp ZiB0ZXN0IC16ICIkaGFyZGNvZGVfbGliZGlycyI7IHRoZW4KK0BAIC02MTIwLDYgKzYxMjIsNyBA QCBFT0YKKyAgICAgICBycGF0aD0KKyAgICAgICBoYXJkY29kZV9saWJkaXJzPQorICAgICAgIGZv ciBsaWJkaXIgaW4gJGZpbmFsaXplX3JwYXRoOyBkbworKwljYXNlICIkbGliZGlyIiBpbiAvdXNy L2xpYnwvdXNyL2xpYjY0fC91c3IvbGliLy4uL2xpYnwvdXNyL2xpYi8uLi9saWI2NCkgY29udGlu dWU7OyBlc2FjCisgCWlmIHRlc3QgLW4gIiRoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjIjsgdGhl bgorIAkgIGlmIHRlc3QgLW4gIiRoYXJkY29kZV9saWJkaXJfc2VwYXJhdG9yIjsgdGhlbgorIAkg ICAgaWYgdGVzdCAteiAiJGhhcmRjb2RlX2xpYmRpcnMiOyB0aGVuCgpkaWZmIC0tZ2l0IGEvZ2Nj NDctbm8tYWRkLW5lZWRlZC5wYXRjaCBiL2djYzQ3LW5vLWFkZC1uZWVkZWQucGF0Y2gKbmV3IGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2UzOGIwYgotLS0gL2Rldi9udWxsCisrKyBi L2djYzQ3LW5vLWFkZC1uZWVkZWQucGF0Y2gKQEAgLTAsMCArMSw1MiBAQAorMjAxMC0wMi0wOCAg Um9sYW5kIE1jR3JhdGggIDxyb2xhbmRAcmVkaGF0LmNvbT4KKworCSogY29uZmlnL3JzNjAwMC9z eXN2NC5oIChMSU5LX0VIX1NQRUMpOiBQYXNzIC0tbm8tYWRkLW5lZWRlZCB0byB0aGUKKwlsaW5r ZXIuCisJKiBjb25maWcvZ251LXVzZXIuaCAoTElOS19FSF9TUEVDKTogTGlrZXdpc2UuCisJKiBj b25maWcvYWxwaGEvZWxmLmggKExJTktfRUhfU1BFQyk6IExpa2V3aXNlLgorCSogY29uZmlnL2lh NjQvbGludXguaCAoTElOS19FSF9TUEVDKTogTGlrZXdpc2UuCisKKy0tLSBnY2MvY29uZmlnL2Fs cGhhL2VsZi5oLmpqCTIwMTEtMDEtMDMgMTI6NTI6MzEuMTE4MDU2NzY0ICswMTAwCisrKysgZ2Nj L2NvbmZpZy9hbHBoYS9lbGYuaAkyMDExLTAxLTA0IDE4OjE0OjEwLjkzMTg3NDE2MCArMDEwMAor QEAgLTQzOCw3ICs0MzgsNyBAQCBleHRlcm4gaW50IGFscGhhX3RoaXNfZ3BkaXNwX3NlcXVlbmNl X251CisgICAgSSBpbWFnaW5lIHRoYXQgb3RoZXIgc3lzdGVtcyB3aWxsIGNhdGNoIHVwLiAgSW4g dGhlIG1lYW50aW1lLCBpdAorICAgIGRvZXNuJ3QgaGFybSB0byBtYWtlIHN1cmUgdGhhdCB0aGUg ZGF0YSBleGlzdHMgdG8gYmUgdXNlZCBsYXRlci4gICovCisgI2lmIGRlZmluZWQoSEFWRV9MRF9F SF9GUkFNRV9IRFIpCistI2RlZmluZSBMSU5LX0VIX1NQRUMgIiV7IXN0YXRpYzotLWVoLWZyYW1l LWhkcn0gIgorKyNkZWZpbmUgTElOS19FSF9TUEVDICItLW5vLWFkZC1uZWVkZWQgJXshc3RhdGlj Oi0tZWgtZnJhbWUtaGRyfSAiCisgI2VuZGlmCisgCisgLyogQSBDIHN0YXRlbWVudCAoc2FucyBz ZW1pY29sb24pIHRvIG91dHB1dCB0byB0aGUgc3RkaW8gc3RyZWFtIFNUUkVBTQorLS0tIGdjYy9j b25maWcvaWE2NC9saW51eC5oLmpqCTIwMTEtMDEtMDMgMTM6MDI6MTEuNDYyOTk0NTIyICswMTAw CisrKysgZ2NjL2NvbmZpZy9pYTY0L2xpbnV4LmgJMjAxMS0wMS0wNCAxODoxNDoxMC45MzE4NzQx NjAgKzAxMDAKK0BAIC03Nyw3ICs3Nyw3IEBAIGRvIHsJCQkJCQlcCisgICAgU2lnbmFsaXplIHRo YXQgYmVjYXVzZSB3ZSBoYXZlIGZkZS1nbGliYywgd2UgZG9uJ3QgbmVlZCBhbGwgQyBzaGFyZWQg bGlicworICAgIGxpbmtlZCBhZ2FpbnN0IC1sZ2NjX3MuICAqLworICN1bmRlZiBMSU5LX0VIX1NQ RUMKKy0jZGVmaW5lIExJTktfRUhfU1BFQyAiIgorKyNkZWZpbmUgTElOS19FSF9TUEVDICItLW5v LWFkZC1uZWVkZWQgIgorIAorIC8qIFB1dCBhbGwgKnRmIHJvdXRpbmVzIGluIGxpYmdjYy4gICov CisgI3VuZGVmIExJQkdDQzJfSEFTX1RGX01PREUKKy0tLSBnY2MvY29uZmlnL2dudS11c2VyLmgu amoJMjAxMS0wMS0wMyAxMjo1MzowMy43MzkwNTcyOTkgKzAxMDAKKysrKyBnY2MvY29uZmlnL2du dS11c2VyLmgJMjAxMS0wMS0wNCAxODoxNDoxMC45MzI4MTQ4ODQgKzAxMDAKK0BAIC04Miw3ICs4 Miw3IEBAIHNlZSB0aGUgZmlsZXMgQ09QWUlORzMgYW5kIENPUFlJTkcuUlVOVEkKKyAjZGVmaW5l IExJQl9TUEVDIEdOVV9VU0VSX1RBUkdFVF9MSUJfU1BFQworIAorICNpZiBkZWZpbmVkKEhBVkVf TERfRUhfRlJBTUVfSERSKQorLSNkZWZpbmUgTElOS19FSF9TUEVDICIleyFzdGF0aWM6LS1laC1m cmFtZS1oZHJ9ICIKKysjZGVmaW5lIExJTktfRUhfU1BFQyAiLS1uby1hZGQtbmVlZGVkICV7IXN0 YXRpYzotLWVoLWZyYW1lLWhkcn0gIgorICNlbmRpZgorIAorICN1bmRlZiBMSU5LX0dDQ19DX1NF UVVFTkNFX1NQRUMKKy0tLSBnY2MvY29uZmlnL3JzNjAwMC9zeXN2NC5oLmpqCTIwMTEtMDEtMDMg MTM6MDI6MTguMjU1OTk0MjE1ICswMTAwCisrKysgZ2NjL2NvbmZpZy9yczYwMDAvc3lzdjQuaAky MDExLTAxLTA0IDE4OjE0OjEwLjkzMzg4ODg3MSArMDEwMAorQEAgLTgyMCw3ICs4MjAsNyBAQCBl eHRlcm4gaW50IGZpeHVwbGFiZWxubzsKKyAgIC1keW5hbWljLWxpbmtlciAiIEdOVV9VU0VSX0RZ TkFNSUNfTElOS0VSICJ9fSIKKyAKKyAjaWYgZGVmaW5lZChIQVZFX0xEX0VIX0ZSQU1FX0hEUikK Ky0jIGRlZmluZSBMSU5LX0VIX1NQRUMgIiV7IXN0YXRpYzotLWVoLWZyYW1lLWhkcn0gIgorKyMg ZGVmaW5lIExJTktfRUhfU1BFQyAiLS1uby1hZGQtbmVlZGVkICV7IXN0YXRpYzotLWVoLWZyYW1l LWhkcn0gIgorICNlbmRpZgorIAorICNkZWZpbmUgQ1BQX09TX0xJTlVYX1NQRUMgIi1EX191bml4 X18gLURfX2dudV9saW51eF9fIC1EX19saW51eF9fIFwKCmRpZmYgLS1naXQgYS9nY2M0Ny1wcGMz Mi1yZXRhZGRyLnBhdGNoIGIvZ2NjNDctcHBjMzItcmV0YWRkci5wYXRjaApuZXcgZmlsZSBtb2Rl IDEwMDY0NAppbmRleCAwMDAwMDAwLi5lOWFlMWJjCi0tLSAvZGV2L251bGwKKysrIGIvZ2NjNDct cHBjMzItcmV0YWRkci5wYXRjaApAQCAtMCwwICsxLDg2IEBACisyMDA1LTExLTI4ICBKYWt1YiBK ZWxpbmVrICA8amFrdWJAcmVkaGF0LmNvbT4KKworCSogY29uZmlnL3JzNjAwMC9yczYwMDAuYyAo cnM2MDAwX3JldHVybl9hZGRyKTogSWYgQ09VTlQgPT0gMCwKKwlyZWFkIHdvcmQgUkVUVVJOX0FE RFJFU1NfT0ZGU0VUIGJ5dGVzIGFib3ZlIGFyZ19wb2ludGVyX3J0eAorCWluc3RlYWQgb2YgZG9p bmcgYW4gZXh0cmFuIGluZGlyZWN0aW9uIGZyb20gZnJhbWVfcG9pbnRlcl9ydHguCisKKwkqIGdj Yy5kZy8yMDA1MTEyOC0xLmM6IE5ldyB0ZXN0LgorCistLS0gZ2NjL2NvbmZpZy9yczYwMDAvcnM2 MDAwLmMuamoJMjAwNS0xMS0yNiAxNDozODowMS4wMDAwMDAwMDAgKzAxMDAKKysrKyBnY2MvY29u ZmlnL3JzNjAwMC9yczYwMDAuYwkyMDA1LTExLTI4IDIwOjMyOjE4LjAwMDAwMDAwMCArMDEwMAor QEAgLTEzMTY2LDE3ICsxMzE2NiwyMiBAQCByczYwMDBfcmV0dXJuX2FkZHIgKGludCBjb3VudCwg cnR4IGZyYW1lCisgICAgICBkb24ndCB0cnkgdG8gYmUgdG9vIGNsZXZlciBoZXJlLiAgKi8KKyAg IGlmIChjb3VudCAhPSAwIHx8IChERUZBVUxUX0FCSSAhPSBBQklfQUlYICYmIGZsYWdfcGljKSkK KyAgICAgeworKyAgICAgIHJ0eCB4OworICAgICAgIGNmdW4tPm1hY2hpbmUtPnJhX25lZWRzX2Z1 bGxfZnJhbWUgPSAxOworIAorLSAgICAgIHJldHVybgorLQlnZW5fcnR4X01FTQorLQkgIChQbW9k ZSwKKy0JICAgbWVtb3J5X2FkZHJlc3MKKy0JICAgKFBtb2RlLAorLQkgICAgcGx1c19jb25zdGFu dCAoY29weV90b19yZWcKKy0JCQkgICAoZ2VuX3J0eF9NRU0gKFBtb2RlLAorLQkJCQkJIG1lbW9y eV9hZGRyZXNzIChQbW9kZSwgZnJhbWUpKSksCistCQkJICAgUkVUVVJOX0FERFJFU1NfT0ZGU0VU KSkpOworKyAgICAgIGlmIChjb3VudCA9PSAwKQorKwl7CisrCSAgZ2NjX2Fzc2VydCAoZnJhbWUg PT0gZnJhbWVfcG9pbnRlcl9ydHgpOworKwkgIHggPSBhcmdfcG9pbnRlcl9ydHg7CisrCX0KKysg ICAgICBlbHNlCisrCXsKKysJICB4ID0gbWVtb3J5X2FkZHJlc3MgKFBtb2RlLCBmcmFtZSk7Cisr CSAgeCA9IGNvcHlfdG9fcmVnIChnZW5fcnR4X01FTSAoUG1vZGUsIHgpKTsKKysJfQorKworKyAg ICAgIHggPSBwbHVzX2NvbnN0YW50ICh4LCBSRVRVUk5fQUREUkVTU19PRkZTRVQpOworKyAgICAg IHJldHVybiBnZW5fcnR4X01FTSAoUG1vZGUsIG1lbW9yeV9hZGRyZXNzIChQbW9kZSwgeCkpOwor ICAgICB9CisgCisgICBjZnVuLT5tYWNoaW5lLT5yYV9uZWVkX2xyID0gMTsKKy0tLSBnY2MvdGVz dHN1aXRlL2djYy5kZy8yMDA1MTEyOC0xLmMuamoJMjAwNS0xMC0xMCAxMToyMTo0MS4wOTY5OTkw MDAgKzAyMDAKKysrKyBnY2MvdGVzdHN1aXRlL2djYy5kZy8yMDA1MTEyOC0xLmMJMjAwNS0xMS0y OCAxMjozMDo1Ny4wMDAwMDAwMDAgKzAxMDAKK0BAIC0wLDAgKzEsNDEgQEAKKysvKiB7IGRnLWRv IHJ1biB9ICovCisrLyogeyBkZy1vcHRpb25zICItTzIgLWZwaWMiIH0gKi8KKysKKytleHRlcm4g dm9pZCBleGl0IChpbnQpOworK2V4dGVybiB2b2lkIGFib3J0ICh2b2lkKTsKKysKKytpbnQgYjsK KysKKytzdHJ1Y3QgQQorK3sKKysgIHZvaWQgKnBhZFsxNDddOworKyAgdm9pZCAqcmEsICpoOwor KyAgbG9uZyBvOworK307CisrCisrdm9pZAorK19fYXR0cmlidXRlX18oKG5vaW5saW5lKSkKKytm b28gKHN0cnVjdCBBICphLCB2b2lkICp4KQorK3sKKysgIF9fYnVpbHRpbl9tZW1zZXQgKGEsIDAs IHNpemVvZiAoYSkpOworKyAgaWYgKCFiKQorKyAgICBleGl0ICgwKTsKKyt9CisrCisrdm9pZAor K19fYXR0cmlidXRlX18oKG5vaW5saW5lKSkKKytiYXIgKHZvaWQpCisreworKyAgc3RydWN0IEEg YTsKKysKKysgIF9fYnVpbHRpbl91bndpbmRfaW5pdCAoKTsKKysgIGZvbyAoJmEsIF9fYnVpbHRp bl9yZXR1cm5fYWRkcmVzcyAoMCkpOworK30KKysKKytpbnQKKyttYWluICh2b2lkKQorK3sKKysg IGJhciAoKTsKKysgIGFib3J0ICgpOworKyAgcmV0dXJuIDA7CisrfQoKZGlmZiAtLWdpdCBhL2dj YzQ3LXBwbC0wLjEwLnBhdGNoIGIvZ2NjNDctcHBsLTAuMTAucGF0Y2gKbmV3IGZpbGUgbW9kZSAx MDA2NDQKaW5kZXggMDAwMDAwMC4uZDQzZjM0ZgotLS0gL2Rldi9udWxsCisrKyBiL2djYzQ3LXBw bC0wLjEwLnBhdGNoCkBAIC0wLDAgKzEsMTIxIEBACisyMDExLTAxLTI4ICBKYWt1YiBKZWxpbmVr ICA8amFrdWJAcmVkaGF0LmNvbT4KKworCVJldmVydDoKKwkyMDExLTAxLTI1ICBTZWJhc3RpYW4g UG9wICA8c2ViYXN0aWFuLnBvcEBhbWQuY29tPgorCisJKiBjb25maWd1cmU6IFJlZ2VuZXJhdGVk LgorCSogY29uZmlndXJlLmFjOiBDaGVjayBmb3IgdmVyc2lvbiAwLjExIChvciBsYXRlciByZXZp c2lvbikgb2YgUFBMLgorZ2NjLworCSogZG9jL2luc3RhbGwudGV4aTogVXBkYXRlIHRoZSBleHBl Y3RlZCB2ZXJzaW9uIG51bWJlciBvZiBQUEwgdG8gMC4xMS4KKwkqIGdyYXBoaXRlLXBwbC5jIChw cGxfcG93ZXJzZXRfaXNfZW1wdHkpOiBSZW1vdmUgbm93IGRlYWQgY29kZSB1bmRlcgorCSNpZiBQ UExfVkVSU0lPTl9NSU5PUiA8IDExLgorCistLS0gZ2NjL2RvYy9pbnN0YWxsLnRleGkJKHJldmlz aW9uIDE2OTIwNykKKysrKyBnY2MvZG9jL2luc3RhbGwudGV4aQkocmV2aXNpb24gMTY5MjA2KQor QEAgLTMzMiw3ICszMzIsNyBAQCBhbmQgQG9wdGlvbnstLXdpdGgtbXBjLWluY2x1ZGV9LiAgQWx0 ZXJuCisgZGlzdHJpYnV0aW9uIGlzIGZvdW5kIGluIGEgc3ViZGlyZWN0b3J5IG9mIHlvdXIgR0ND IHNvdXJjZXMgbmFtZWQKKyBAZmlsZXttcGN9LCBpdCB3aWxsIGJlIGJ1aWx0IHRvZ2V0aGVyIHdp dGggR0NDQC4KKyAKKy1AaXRlbSBQYXJtYSBQb2x5aGVkcmEgTGlicmFyeSAoUFBMKSB2ZXJzaW9u IDAuMTEKKytAaXRlbSBQYXJtYSBQb2x5aGVkcmEgTGlicmFyeSAoUFBMKSB2ZXJzaW9uIDAuMTAK KyAKKyBOZWNlc3NhcnkgdG8gYnVpbGQgR0NDIHdpdGggdGhlIEdyYXBoaXRlIGxvb3Agb3B0aW1p emF0aW9ucy4KKyBJdCBjYW4gYmUgZG93bmxvYWRlZCBmcm9tIEB1cmVme2h0dHA6Ly93d3cuY3Mu dW5pcHIuaXQvcHBsL0Rvd25sb2FkL30uCistLS0gZ2NjL2dyYXBoaXRlLXBwbC5jCShyZXZpc2lv biAxNjkyMDcpCisrKysgZ2NjL2dyYXBoaXRlLXBwbC5jCShyZXZpc2lvbiAxNjkyMDYpCitAQCAt NTIxLDYgKzUyMSwxNSBAQCBkZWJ1Z19nbXBfdmFsdWUgKG1wel90IHZhbCkKKyBib29sCisgcHBs X3Bvd2Vyc2V0X2lzX2VtcHR5IChwcGxfUG9pbnRzZXRfUG93ZXJzZXRfQ19Qb2x5aGVkcm9uX3Qg cHMpCisgeworKyNpZiBQUExfVkVSU0lPTl9NQUpPUiA9PSAwICYmIFBQTF9WRVJTSU9OX01JTk9S IDwgMTEKKysgIC8qIE9uIFBQTCAwLjEwLAorKyAgICAgcHBsX1BvaW50c2V0X1Bvd2Vyc2V0X0Nf UG9seWhlZHJvbl9jb250YWluc19pbnRlZ2VyX3BvaW50IChwcykKKysgICAgIHRha2VzIHRvbyBs b25nIG9uIHNvbWUgY2FzZXMgYW5kIHNvIHdlIGNhbGwgX2lzX2VtcHR5IGluc3RlYWQuICAqLwor KyAgcmV0dXJuIHBwbF9Qb2ludHNldF9Qb3dlcnNldF9DX1BvbHloZWRyb25faXNfZW1wdHkgKHBz KTsKKysKKysjZWxzZQorKyAgLyogT24gUFBMIDAuMTEgb3IgbGF0ZXIsIHdlIGNhbiBjaGVjayBm b3IgaW50ZWdlciBmZWFzaWJpbGl0eSB1c2luZworKyAgICAgdGhlIFBJUCBzb2x2ZXIuICAqLwor ICAgcHBsX1BJUF9Qcm9ibGVtX3QgcGlwOworICAgcHBsX2RpbWVuc2lvbl90eXBlIGQ7CisgICBw cGxfY29uc3RfQ29uc3RyYWludF9TeXN0ZW1fdCBwY3M7CitAQCAtNTYxLDYgKzU3MCw3IEBAIHBw bF9wb3dlcnNldF9pc19lbXB0eSAocHBsX1BvaW50c2V0X1Bvd2UKKyAgIHBwbF9kZWxldGVfUG9p bnRzZXRfUG93ZXJzZXRfQ19Qb2x5aGVkcm9uX2l0ZXJhdG9yIChlbmQpOworIAorICAgcmV0dXJu ICFoYXNfaW50ZWdlcl9zb2x1dGlvbnM7CisrI2VuZGlmCisgfQorIAorICNlbmRpZgorLS0tIGNv bmZpZ3VyZS5hYwkocmV2aXNpb24gMTY5MjA3KQorKysrIGNvbmZpZ3VyZS5hYwkocmV2aXNpb24g MTY5MjA2KQorQEAgLTE2ODgsOSArMTY4OCw5IEBAIGlmIHRlc3QgIngkd2l0aF9wcGwiICE9IHhu bzsgdGhlbgorICAgaWYgdGVzdCAiJGVuYWJsZV9wcGxfdmVyc2lvbl9jaGVjayIgIT0gbm87IHRo ZW4KKyAgICAgc2F2ZWRfQ0ZMQUdTPSIkQ0ZMQUdTIgorICAgICBDRkxBR1M9IiRDRkxBR1MgJHBw bGluYyAkZ21waW5jIgorLSAgICBBQ19NU0dfQ0hFQ0tJTkcoW2ZvciB2ZXJzaW9uIDAuMTEgKHJl dmlzaW9uIDAgb3IgbGF0ZXIpIG9mIFBQTF0pCisrICAgIEFDX01TR19DSEVDS0lORyhbZm9yIHZl cnNpb24gMC4xMCAocmV2aXNpb24gMCBvciBsYXRlcikgb2YgUFBMXSkKKyAgICAgQUNfVFJZX0NP TVBJTEUoWyNpbmNsdWRlICJwcGxfYy5oIl0sWworLSAgICAjaWYgUFBMX1ZFUlNJT05fTUFKT1Ig IT0gMCB8fCBQUExfVkVSU0lPTl9NSU5PUiA8IDExCisrICAgICNpZiBQUExfVkVSU0lPTl9NQUpP UiAhPSAwIHx8IFBQTF9WRVJTSU9OX01JTk9SIDwgMTAKKyAgICAgY2hva2UgbWUKKyAgICAgI2Vu ZGlmCisgICAgIF0sIFtBQ19NU0dfUkVTVUxUKFt5ZXNdKV0sIFtBQ19NU0dfUkVTVUxUKFtub10p OyBwcGxsaWJzPSA7IHBwbGluYz0gOyB3aXRoX3BwbD1ubyBdKQorLS0tIGNvbmZpZ3VyZQkocmV2 aXNpb24gMTY5MjA3KQorKysrIGNvbmZpZ3VyZQkocmV2aXNpb24gMTY5MjA2KQorQEAgLTU3NzUs OCArNTc3NSw4IEBAIGZpCisgICBpZiB0ZXN0ICIkZW5hYmxlX3BwbF92ZXJzaW9uX2NoZWNrIiAh PSBubzsgdGhlbgorICAgICBzYXZlZF9DRkxBR1M9IiRDRkxBR1MiCisgICAgIENGTEFHUz0iJENG TEFHUyAkcHBsaW5jICRnbXBpbmMiCistICAgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVu by0kTElORU5PfTogY2hlY2tpbmcgZm9yIHZlcnNpb24gMC4xMSAocmV2aXNpb24gMCBvciBsYXRl cikgb2YgUFBMIiA+JjUKKy0kYXNfZWNob19uICJjaGVja2luZyBmb3IgdmVyc2lvbiAwLjExIChy ZXZpc2lvbiAwIG9yIGxhdGVyKSBvZiBQUEwuLi4gIiA+JjY7IH0KKysgICAgeyAkYXNfZWNobyAi JGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3IgdmVyc2lvbiAwLjEwIChy ZXZpc2lvbiAwIG9yIGxhdGVyKSBvZiBQUEwiID4mNQorKyRhc19lY2hvX24gImNoZWNraW5nIGZv ciB2ZXJzaW9uIDAuMTAgKHJldmlzaW9uIDAgb3IgbGF0ZXIpIG9mIFBQTC4uLiAiID4mNjsgfQor ICAgICBjYXQgY29uZmRlZnMuaCAtIDw8X0FDRU9GID5jb25mdGVzdC4kYWNfZXh0CisgLyogZW5k IGNvbmZkZWZzLmguICAqLworICNpbmNsdWRlICJwcGxfYy5oIgorQEAgLTU3ODQsNyArNTc4NCw3 IEBAIGludAorIG1haW4gKCkKKyB7CisgCistICAgICNpZiBQUExfVkVSU0lPTl9NQUpPUiAhPSAw IHx8IFBQTF9WRVJTSU9OX01JTk9SIDwgMTEKKysgICAgI2lmIFBQTF9WRVJTSU9OX01BSk9SICE9 IDAgfHwgUFBMX1ZFUlNJT05fTUlOT1IgPCAxMAorICAgICBjaG9rZSBtZQorICAgICAjZW5kaWYK KyAKKy0tLSBnY2MvdGVzdHN1aXRlL2djYy5kZy9ncmFwaGl0ZS9pbnRlcmNoYW5nZS0xMS5jLmpq CTIwMTEtMDEtMjggMDk6Mzg6MTEuMDAwMDAwMDAwICswMTAwCisrKysgZ2NjL3Rlc3RzdWl0ZS9n Y2MuZGcvZ3JhcGhpdGUvaW50ZXJjaGFuZ2UtMTEuYwkyMDExLTAxLTI4IDExOjA2OjU2LjQ2MTQy OTg0OCArMDEwMAorQEAgLTQ2LDUgKzQ2LDUgQEAgbWFpbiAodm9pZCkKKyAgIHJldHVybiAwOwor IH0KKyAKKy0vKiB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtdGltZXMgIndpbGwgYmUgaW50 ZXJjaGFuZ2VkIiAxICJncmFwaGl0ZSIgfSB9ICovCisrLyogeyBkZy1maW5hbCB7IHNjYW4tdHJl ZS1kdW1wLXRpbWVzICJ3aWxsIGJlIGludGVyY2hhbmdlZCIgMSAiZ3JhcGhpdGUiIHsgeGZhaWwg Ki0qLSogfSB9IH0gKi8KKyAvKiB7IGRnLWZpbmFsIHsgY2xlYW51cC10cmVlLWR1bXAgImdyYXBo aXRlIiB9IH0gKi8KKy0tLSBnY2MvdGVzdHN1aXRlL2djYy5kZy9ncmFwaGl0ZS9pbnRlcmNoYW5n ZS0xMy5jLmpqCTIwMTEtMDEtMjggMDk6Mzg6MTIuMDAwMDAwMDAwICswMTAwCisrKysgZ2NjL3Rl c3RzdWl0ZS9nY2MuZGcvZ3JhcGhpdGUvaW50ZXJjaGFuZ2UtMTMuYwkyMDExLTAxLTI4IDExOjA3 OjA4LjE4MjQyOTIyMyArMDEwMAorQEAgLTUwLDUgKzUwLDUgQEAgbWFpbiAodm9pZCkKKyB9Cisg CisgCistLyogeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICJ3aWxsIGJlIGludGVy Y2hhbmdlZCIgMSAiZ3JhcGhpdGUiIH0gfSAqLworKy8qIHsgZGctZmluYWwgeyBzY2FuLXRyZWUt ZHVtcC10aW1lcyAid2lsbCBiZSBpbnRlcmNoYW5nZWQiIDEgImdyYXBoaXRlIiB7IHhmYWlsICot Ki0qIH0gfSB9ICovCisgLyogeyBkZy1maW5hbCB7IGNsZWFudXAtdHJlZS1kdW1wICJncmFwaGl0 ZSIgfSB9ICovCistLS0gZ2NjL3Rlc3RzdWl0ZS9nY2MuZGcvZ3JhcGhpdGUvaW50ZXJjaGFuZ2Ut MS5jLmpqCTIwMTEtMDEtMjggMDk6Mzg6MTMuMDAwMDAwMDAwICswMTAwCisrKysgZ2NjL3Rlc3Rz dWl0ZS9nY2MuZGcvZ3JhcGhpdGUvaW50ZXJjaGFuZ2UtMS5jCTIwMTEtMDEtMjggMTE6MDY6NDIu MTYwNDI5MTkzICswMTAwCitAQCAtNDksNSArNDksNSBAQCBtYWluICh2b2lkKQorICAgcmV0dXJu IDA7CisgfQorIAorLS8qIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAid2lsbCBi ZSBpbnRlcmNoYW5nZWQiIDEgImdyYXBoaXRlIiB9IH0gKi8KKysvKiB7IGRnLWZpbmFsIHsgc2Nh bi10cmVlLWR1bXAtdGltZXMgIndpbGwgYmUgaW50ZXJjaGFuZ2VkIiAxICJncmFwaGl0ZSIgeyB4 ZmFpbCAqLSotKiB9IH0gfSAqLworIC8qIHsgZGctZmluYWwgeyBjbGVhbnVwLXRyZWUtZHVtcCAi Z3JhcGhpdGUiIH0gfSAqLworLS0tIGdjYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZ3JhcGhpdGUv aW50ZXJjaGFuZ2UtMy5mOTAuamoJMjAxMS0wMS0yOCAwOTozODowNS4wMDAwMDAwMDAgKzAxMDAK KysrKyBnY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2dyYXBoaXRlL2ludGVyY2hhbmdlLTMuZjkw CTIwMTEtMDEtMjggMTE6MDc6NDYuMzEzNDIwNDQxICswMTAwCitAQCAtMjQsNSArMjQsNSBAQCBQ cm9ncmFtIEZPTworIAorIGVuZCBQcm9ncmFtIEZPTworIAorLSEgeyBkZy1maW5hbCB7IHNjYW4t dHJlZS1kdW1wLXRpbWVzICJ3aWxsIGJlIGludGVyY2hhbmdlZCIgMSAiZ3JhcGhpdGUiIH0gfQor KyEgeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICJ3aWxsIGJlIGludGVyY2hhbmdl ZCIgMSAiZ3JhcGhpdGUiIHsgeGZhaWwgKi0qLSogfSB9IH0KKyAhIHsgZGctZmluYWwgeyBjbGVh bnVwLXRyZWUtZHVtcCAiZ3JhcGhpdGUiIH0gfQoKZGlmZiAtLWdpdCBhL2djYzQ3LXByMzM3NjMu cGF0Y2ggYi9nY2M0Ny1wcjMzNzYzLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw MDAwMDAuLjBjZjA3MjMKLS0tIC9kZXYvbnVsbAorKysgYi9nY2M0Ny1wcjMzNzYzLnBhdGNoCkBA IC0wLDAgKzEsMTUzIEBACisyMDA3LTExLTA2ICBKYWt1YiBKZWxpbmVrICA8amFrdWJAcmVkaGF0 LmNvbT4KKworCVBSIHRyZWUtb3B0aW1pemF0aW9uLzMzNzYzCisJKiBnY2MuZGcvcHIzMzc2My5j OiBOZXcgdGVzdC4KKwkqIGcrKy5kZy9vcHQvaW5saW5lMTMuQzogTmV3IHRlc3QuCisKKzIwMDct MTEtMDYgIEphbiBIdWJpY2thICA8amhAc3VzZS5jej4KKworCVBSIHRyZWUtb3B0aW1pemF0aW9u LzMzNzYzCisJKiB0cmVlLWlubGluZS5jIChleHBhbmRfY2FsbF9pbmxpbmUpOiBTaWxlbnRseSBp Z25vcmUgYWx3YXlzX2lubGluZQorCWF0dHJpYnV0ZSBmb3IgcmVkZWZpbmVkIGV4dGVybiBpbmxp bmUgZnVuY3Rpb25zLgorCistLS0gZ2NjL3RyZWUtaW5saW5lLmMuamoJMjAwNy0xMS0wNiAwOToy OTowNC4wMDAwMDAwMDAgKzAxMDAKKysrKyBnY2MvdHJlZS1pbmxpbmUuYwkyMDA3LTExLTA2IDE2 OjE5OjEyLjAwMDAwMDAwMCArMDEwMAorQEAgLTM4MTcsNiArMzgxNywxMiBAQCBleHBhbmRfY2Fs bF9pbmxpbmUgKGJhc2ljX2Jsb2NrIGJiLCBnaW1wCisgCWdvdG8gZWdyZXNzOworIAorICAgICAg IGlmIChsb29rdXBfYXR0cmlidXRlICgiYWx3YXlzX2lubGluZSIsIERFQ0xfQVRUUklCVVRFUyAo Zm4pKQorKyAgICAgICAgICAvKiBGb3IgZXh0ZXJuIGlubGluZSBmdW5jdGlvbnMgdGhhdCBnZXQg cmVkZWZpbmVkIHdlIGFsd2F5cworKwkgICAgIHNpbGVudGx5IGlnbm9yZWQgYWx3YXlzX2lubGlu ZSBmbGFnLiBCZXR0ZXIgYmVoYXZpb3VyIHdvdWxkCisrCSAgICAgYmUgdG8gYmUgYWJsZSB0byBr ZWVwIGJvdGggYm9kaWVzIGFuZCB1c2UgZXh0ZXJuIGlubGluZSBib2R5CisrCSAgICAgZm9yIGlu bGluaW5nLCBidXQgd2UgY2FuJ3QgZG8gdGhhdCBiZWNhdXNlIGZyb250ZW5kcyBvdmVyd3JpdGUK KysJICAgICB0aGUgYm9keS4gICovCisrCSAgJiYgIWNnX2VkZ2UtPmNhbGxlZS0+bG9jYWwucmVk ZWZpbmVkX2V4dGVybl9pbmxpbmUKKyAJICAvKiBBdm9pZCB3YXJuaW5ncyBkdXJpbmcgZWFybHkg aW5saW5lIHBhc3MuICovCisgCSAgJiYgY2dyYXBoX2dsb2JhbF9pbmZvX3JlYWR5CisgCSAgLyog UFIgMjAwOTAyMTgtMV8wLmMuIEJvZHkgY2FuIGJlIHByb3ZpZGVkIGJ5IGFub3RoZXIgbW9kdWxl LiAqLworLS0tIGdjYy90ZXN0c3VpdGUvZ2NjLmRnL3ByMzM3NjMuYy5qagkyMDA3LTExLTA2IDE2 OjE5OjEyLjAwMDAwMDAwMCArMDEwMAorKysrIGdjYy90ZXN0c3VpdGUvZ2NjLmRnL3ByMzM3NjMu YwkyMDA3LTExLTA2IDE2OjE5OjEyLjAwMDAwMDAwMCArMDEwMAorQEAgLTAsMCArMSw2MCBAQAor Ky8qIFBSIHRyZWUtb3B0aW1pemF0aW9uLzMzNzYzICovCisrLyogeyBkZy1kbyBjb21waWxlIH0g Ki8KKysvKiB7IGRnLW9wdGlvbnMgIi1PMiIgfSAqLworKworK3R5cGVkZWYgc3RydWN0Cisrewor KyAgdm9pZCAqYTsKKysgIHZvaWQgKmI7CisrfSBUOworK2V4dGVybiB2b2lkICpmb28gKGNvbnN0 IGNoYXIgKiwgY29uc3QgY2hhciAqKTsKKytleHRlcm4gdm9pZCAqYmFyICh2b2lkICosIGNvbnN0 IGNoYXIgKiwgVCk7CisrZXh0ZXJuIGludCBiYXogKGNvbnN0IGNoYXIgKiwgaW50KTsKKysKKytl eHRlcm4gaW5saW5lIF9fYXR0cmlidXRlX18gKChhbHdheXNfaW5saW5lLCBnbnVfaW5saW5lKSkg aW50CisrYmF6IChjb25zdCBjaGFyICp4LCBpbnQgeSkKKyt7CisrICByZXR1cm4gMjsKKyt9Cisr CisraW50CisrYmF6IChjb25zdCBjaGFyICp4LCBpbnQgeSkKKyt7CisrICByZXR1cm4gMTsKKyt9 CisrCisraW50IHhhLCB4YjsKKysKKytzdGF0aWMgdm9pZCAqCisraW5sIChjb25zdCBjaGFyICp4 LCBjb25zdCBjaGFyICp5KQorK3sKKysgIFQgdCA9IHsgJnhhLCAmeGIgfTsKKysgIGludCAqZiA9 IChpbnQgKikgX19idWlsdGluX21hbGxvYyAoc2l6ZW9mIChpbnQpKTsKKysgIGNvbnN0IGNoYXIg Kno7CisrICBpbnQgbyA9IDA7CisrICB2b2lkICpyID0gMDsKKysKKysgIGZvciAoeiA9IHk7ICp6 OyB6KyspCisrICAgIHsKKysgICAgICBpZiAoKnogPT0gJ3InKQorKwlvIHw9IDE7CisrICAgICAg aWYgKCp6ID09ICd3JykKKysJbyB8PSAyOworKyAgICB9CisrICBpZiAobyA9PSAxKQorKyAgICAq ZiA9IGJheiAoeCwgMCk7CisrICBpZiAobyA9PSAyKQorKyAgICAqZiA9IGJheiAoeCwgMSk7Cisr ICBpZiAobyA9PSAzKQorKyAgICAqZiA9IGJheiAoeCwgMik7CisrCisrICBpZiAobyAmJiAqZiA+ IDApCisrICAgIHIgPSBiYXIgKGYsICJ3IiwgdCk7CisrICByZXR1cm4gcjsKKyt9CisrCisrdm9p ZCAqCisrZm9vIChjb25zdCBjaGFyICp4LCBjb25zdCBjaGFyICp5KQorK3sKKysgIHJldHVybiBp bmwgKHgsIHkpOworK30KKy0tLSBnY2MvdGVzdHN1aXRlL2crKy5kZy9vcHQvaW5saW5lMTMuQy5q agkyMDA3LTExLTA2IDE2OjIwOjIwLjAwMDAwMDAwMCArMDEwMAorKysrIGdjYy90ZXN0c3VpdGUv ZysrLmRnL29wdC9pbmxpbmUxMy5DCTIwMDctMTEtMDYgMTY6MjE6MzAuMDAwMDAwMDAwICswMTAw CitAQCAtMCwwICsxLDYwIEBACisrLy8gUFIgdHJlZS1vcHRpbWl6YXRpb24vMzM3NjMKKysvLyB7 IGRnLWRvIGNvbXBpbGUgfQorKy8vIHsgZGctb3B0aW9ucyAiLU8yIiB9CisrCisrdHlwZWRlZiBz dHJ1Y3QKKyt7CisrICB2b2lkICphOworKyAgdm9pZCAqYjsKKyt9IFQ7CisrZXh0ZXJuIHZvaWQg KmZvbyAoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICopOworK2V4dGVybiB2b2lkICpiYXIgKHZv aWQgKiwgY29uc3QgY2hhciAqLCBUKTsKKytleHRlcm4gaW50IGJheiAoY29uc3QgY2hhciAqLCBp bnQpOworKworK2V4dGVybiBpbmxpbmUgX19hdHRyaWJ1dGVfXyAoKGFsd2F5c19pbmxpbmUsIGdu dV9pbmxpbmUpKSBpbnQKKytiYXogKGNvbnN0IGNoYXIgKngsIGludCB5KQorK3sKKysgIHJldHVy biAyOworK30KKysKKytpbnQKKytiYXogKGNvbnN0IGNoYXIgKngsIGludCB5KQorK3sKKysgIHJl dHVybiAxOworK30KKysKKytpbnQgeGEsIHhiOworKworK3N0YXRpYyB2b2lkICoKKytpbmwgKGNv bnN0IGNoYXIgKngsIGNvbnN0IGNoYXIgKnkpCisreworKyAgVCB0ID0geyAmeGEsICZ4YiB9Owor KyAgaW50ICpmID0gKGludCAqKSBfX2J1aWx0aW5fbWFsbG9jIChzaXplb2YgKGludCkpOworKyAg Y29uc3QgY2hhciAqejsKKysgIGludCBvID0gMDsKKysgIHZvaWQgKnIgPSAwOworKworKyAgZm9y ICh6ID0geTsgKno7IHorKykKKysgICAgeworKyAgICAgIGlmICgqeiA9PSAncicpCisrCW8gfD0g MTsKKysgICAgICBpZiAoKnogPT0gJ3cnKQorKwlvIHw9IDI7CisrICAgIH0KKysgIGlmIChvID09 IDEpCisrICAgICpmID0gYmF6ICh4LCAwKTsKKysgIGlmIChvID09IDIpCisrICAgICpmID0gYmF6 ICh4LCAxKTsKKysgIGlmIChvID09IDMpCisrICAgICpmID0gYmF6ICh4LCAyKTsKKysKKysgIGlm IChvICYmICpmID4gMCkKKysgICAgciA9IGJhciAoZiwgInciLCB0KTsKKysgIHJldHVybiByOwor K30KKysKKyt2b2lkICoKKytmb28gKGNvbnN0IGNoYXIgKngsIGNvbnN0IGNoYXIgKnkpCisrewor KyAgcmV0dXJuIGlubCAoeCwgeSk7CisrfQoKZGlmZiAtLWdpdCBhL2djYzQ3LXByMzg3NTcucGF0 Y2ggYi9nY2M0Ny1wcjM4NzU3LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw MDAuLmI2YjMyMzMKLS0tIC9kZXYvbnVsbAorKysgYi9nY2M0Ny1wcjM4NzU3LnBhdGNoCkBAIC0w LDAgKzEsMTA1IEBACisyMDA5LTAzLTE4ICBKYWt1YiBKZWxpbmVrICA8amFrdWJAcmVkaGF0LmNv bT4KKworCVBSIGRlYnVnLzM4NzU3CisJKiBsYW5naG9va3MuaCAoc3RydWN0IGxhbmdfaG9va3Mp OiBBZGQgc291cmNlX2xhbmd1YWdlIGxhbmdob29rLgorCSogbGFuZ2hvb2tzLWRlZi5oIChMQU5H X0hPT0tTX1NPVVJDRV9MQU5HVUFHRSk6IERlZmluZSB0byBOVUxMLgorCShMQU5HX0hPT0tTX0lO SVRJQUxJWkVSKTogQWRkIExBTkdfSE9PS1NfU09VUkNFX0xBTkdVQUdFLgorCSogYy1sYW5nLmMg KGNfc291cmNlX2xhbmd1YWdlKTogTmV3IGZ1bmN0aW9uLgorCShMQU5HX0hPT0tTX1NPVVJDRV9M QU5HVUFHRSk6IERlZmluZS4KKwkqIGR3YXJmMm91dC5jIChhZGRfcHJvdG90eXBlZF9hdHRyaWJ1 dGUpOiBBZGQgRFdfQVRfcHJvdG90eXBlCisJYWxzbyBmb3IgRFdfTEFOR197QyxDOTksT2JqQ30u CisJKGdlbl9jb21waWxlX3VuaXRfZGllKTogVXNlIGxhbmdfaG9va3Muc291cmNlX2xhbmd1YWdl ICgpIHRvCisJZGV0ZXJtaW5lIGlmIERXX0xBTkdfQzk5IG9yIERXX0xBTkdfQzg5IHNob3VsZCBi ZSByZXR1cm5lZC4KKworLS0tIGdjYy9sYW5naG9va3MuaC5qagkyMDExLTAxLTAzIDEyOjUzOjA1 LjEyNTc0NTQ1MCArMDEwMAorKysrIGdjYy9sYW5naG9va3MuaAkyMDExLTAxLTA0IDE3OjU5OjQz LjE2Njc0NDkyNiArMDEwMAorQEAgLTQ2Nyw2ICs0NjcsMTAgQEAgc3RydWN0IGxhbmdfaG9va3MK KyAgICAgIGdpbXBsaWZpY2F0aW9uLiAgKi8KKyAgIGJvb2wgZGVlcF91bnNoYXJpbmc7CisgCisr ICAvKiBSZXR1cm4geWVhciBvZiB0aGUgc291cmNlIGxhbmd1YWdlIHN0YW5kYXJkIHZlcnNpb24g aWYgdGhlIEZFIHN1cHBvcnRzCisrICAgICBtdWx0aXBsZSB2ZXJzaW9ucyBvZiB0aGUgc3RhbmRh cmQuICAqLworKyAgaW50ICgqc291cmNlX2xhbmd1YWdlKSAodm9pZCk7CisrCisgICAvKiBXaGVu ZXZlciB5b3UgYWRkIGVudHJpZXMgaGVyZSwgbWFrZSBzdXJlIHlvdSBhZGp1c3QgbGFuZ2hvb2tz LWRlZi5oCisgICAgICBhbmQgbGFuZ2hvb2tzLmMgYWNjb3JkaW5nbHkuICAqLworIH07CistLS0g Z2NjL2xhbmdob29rcy1kZWYuaC5qagkyMDExLTAxLTAzIDEyOjUzOjA1LjAwMDAwMDAwMCArMDEw MAorKysrIGdjYy9sYW5naG9va3MtZGVmLmgJMjAxMS0wMS0wNCAxODowMDo0NC44NTg4NTEwMzAg KzAxMDAKK0BAIC0xMTgsNiArMTE4LDcgQEAgZXh0ZXJuIHZvaWQgbGhkX29tcF9maXJzdHByaXZh dGl6ZV90eXBlXworICNkZWZpbmUgTEFOR19IT09LU19FSF9QUk9URUNUX0NMRUFOVVBfQUNUSU9O UwlOVUxMCisgI2RlZmluZSBMQU5HX0hPT0tTX0VIX1VTRV9DWEFfRU5EX0NMRUFOVVAJZmFsc2UK KyAjZGVmaW5lIExBTkdfSE9PS1NfREVFUF9VTlNIQVJJTkcJZmFsc2UKKysjZGVmaW5lIExBTkdf SE9PS1NfU09VUkNFX0xBTkdVQUdFCU5VTEwKKyAKKyAvKiBBdHRyaWJ1dGUgaG9va3MuICAqLwor ICNkZWZpbmUgTEFOR19IT09LU19BVFRSSUJVVEVfVEFCTEUJCU5VTEwKK0BAIC0zMDcsNyArMzA4 LDggQEAgZXh0ZXJuIHZvaWQgbGhkX2VuZF9zZWN0aW9uICh2b2lkKTsKKyAgIExBTkdfSE9PS1Nf RUhfUlVOVElNRV9UWVBFLCBcCisgICBMQU5HX0hPT0tTX0VIX1BST1RFQ1RfQ0xFQU5VUF9BQ1RJ T05TLCBcCisgICBMQU5HX0hPT0tTX0VIX1VTRV9DWEFfRU5EX0NMRUFOVVAsIFwKKy0gIExBTkdf SE9PS1NfREVFUF9VTlNIQVJJTkcgXAorKyAgTEFOR19IT09LU19ERUVQX1VOU0hBUklORywgXAor KyAgTEFOR19IT09LU19TT1VSQ0VfTEFOR1VBR0UgXAorIH0KKyAKKyAjZW5kaWYgLyogR0NDX0xB TkdfSE9PS1NfREVGX0ggKi8KKy0tLSBnY2MvYy1sYW5nLmMuamoJMjAxMS0wMS0wMyAxMjo1Mzow NS4zNzYwNTY5MzYgKzAxMDAKKysrKyBnY2MvYy1sYW5nLmMJMjAxMS0wMS0wNCAxNzo1OTo0My4x Njc3NDM3OTggKzAxMDAKK0BAIC0zNiw2ICszNiwxMiBAQCBhbG9uZyB3aXRoIEdDQzsgc2VlIHRo ZSBmaWxlIENPUFlJTkczLgorIAorIGVudW0gY19sYW5ndWFnZV9raW5kIGNfbGFuZ3VhZ2UgPSBj bGtfYzsKKyAKKytzdGF0aWMgaW50CisrY19zb3VyY2VfbGFuZ3VhZ2UgKHZvaWQpCisreworKyAg cmV0dXJuIGZsYWdfaXNvYzk5ID8gMTk5OSA6IDE5ODk7CisrfQorKworIC8qIExhbmcgaG9va3Mg Y29tbW9uIHRvIEMgYW5kIE9iakMgYXJlIGRlY2xhcmVkIGluIGMtb2JqYy1jb21tb24uaDsKKyAg ICBjb25zZXF1ZW50bHksIHRoZXJlIHNob3VsZCBiZSB2ZXJ5IGZldyBob29rcyBiZWxvdy4gICov CisgCitAQCAtNDUsNiArNTEsOCBAQCBlbnVtIGNfbGFuZ3VhZ2Vfa2luZCBjX2xhbmd1YWdlID0g Y2xrX2M7CisgI2RlZmluZSBMQU5HX0hPT0tTX0lOSVQgY19vYmpjX2NvbW1vbl9pbml0CisgI3Vu ZGVmIExBTkdfSE9PS1NfSU5JVF9UUworICNkZWZpbmUgTEFOR19IT09LU19JTklUX1RTIGNfY29t bW9uX2luaXRfdHMKKysjdW5kZWYgTEFOR19IT09LU19TT1VSQ0VfTEFOR1VBR0UKKysjZGVmaW5l IExBTkdfSE9PS1NfU09VUkNFX0xBTkdVQUdFIGNfc291cmNlX2xhbmd1YWdlCisgCisgLyogRWFj aCBmcm9udCBlbmQgcHJvdmlkZXMgaXRzIG93biBsYW5nIGhvb2sgaW5pdGlhbGl6ZXIuICAqLwor IHN0cnVjdCBsYW5nX2hvb2tzIGxhbmdfaG9va3MgPSBMQU5HX0hPT0tTX0lOSVRJQUxJWkVSOwor LS0tIGdjYy9kd2FyZjJvdXQuYy5qagkyMDExLTAxLTAzIDEyOjUzOjA1LjEwMjA1NjQ3NSArMDEw MAorKysrIGdjYy9kd2FyZjJvdXQuYwkyMDExLTAxLTA0IDE4OjAzOjE0LjUzNDE1MTc2MyArMDEw MAorQEAgLTE3NjUwLDkgKzE3NjUwLDE4IEBAIGFkZF9iaXRfc2l6ZV9hdHRyaWJ1dGUgKGR3X2Rp ZV9yZWYgZGllLCAKKyBzdGF0aWMgaW5saW5lIHZvaWQKKyBhZGRfcHJvdG90eXBlZF9hdHRyaWJ1 dGUgKGR3X2RpZV9yZWYgZGllLCB0cmVlIGZ1bmNfdHlwZSkKKyB7CistICBpZiAoZ2V0X0FUX3Vu c2lnbmVkIChjb21wX3VuaXRfZGllICgpLCBEV19BVF9sYW5ndWFnZSkgPT0gRFdfTEFOR19DODkK Ky0gICAgICAmJiBwcm90b3R5cGVfcCAoZnVuY190eXBlKSkKKy0gICAgYWRkX0FUX2ZsYWcgKGRp ZSwgRFdfQVRfcHJvdG90eXBlZCwgMSk7CisrICBzd2l0Y2ggKGdldF9BVF91bnNpZ25lZCAoY29t cF91bml0X2RpZSAoKSwgRFdfQVRfbGFuZ3VhZ2UpKQorKyAgICB7CisrICAgIGNhc2UgRFdfTEFO R19DOgorKyAgICBjYXNlIERXX0xBTkdfQzg5OgorKyAgICBjYXNlIERXX0xBTkdfQzk5OgorKyAg ICBjYXNlIERXX0xBTkdfT2JqQzoKKysgICAgICBpZiAocHJvdG90eXBlX3AgKGZ1bmNfdHlwZSkp CisrCWFkZF9BVF9mbGFnIChkaWUsIERXX0FUX3Byb3RvdHlwZWQsIDEpOworKyAgICAgIGJyZWFr OworKyAgICBkZWZhdWx0OgorKyAgICAgIGJyZWFrOworKyAgICB9CisgfQorIAorIC8qIEFkZCBh biAnYWJzdHJhY3Rfb3JpZ2luJyBhdHRyaWJ1dGUgYmVsb3cgYSBnaXZlbiBESUUuICBUaGUgRElF IGlzIGZvdW5kCitAQCAtMTk4NzUsNiArMTk4ODQsMTAgQEAgZ2VuX2NvbXBpbGVfdW5pdF9kaWUg KGNvbnN0IGNoYXIgKmZpbGVuYQorIAlsYW5ndWFnZSA9IERXX0xBTkdfT2JqQzsKKyAgICAgICBl bHNlIGlmIChzdHJjbXAgKGxhbmd1YWdlX3N0cmluZywgIkdOVSBPYmplY3RpdmUtQysrIikgPT0g MCkKKyAJbGFuZ3VhZ2UgPSBEV19MQU5HX09iakNfcGx1c19wbHVzOworKyAgICAgIGVsc2UgaWYg KHN0cmNtcCAobGFuZ3VhZ2Vfc3RyaW5nLCAiR05VIEMiKSA9PSAwCisrCSAgICAgICAmJiBsYW5n X2hvb2tzLnNvdXJjZV9sYW5ndWFnZQorKwkgICAgICAgJiYgbGFuZ19ob29rcy5zb3VyY2VfbGFu Z3VhZ2UgKCkgPj0gMTk5OSkKKysJbGFuZ3VhZ2UgPSBEV19MQU5HX0M5OTsKKyAgICAgfQorIAor ICAgYWRkX0FUX3Vuc2lnbmVkIChkaWUsIERXX0FUX2xhbmd1YWdlLCBsYW5ndWFnZSk7CgpkaWZm IC0tZ2l0IGEvZ2NjNDctcHI0Nzg1OC5wYXRjaCBiL2djYzQ3LXByNDc4NTgucGF0Y2gKbmV3IGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGQwNWFjNgotLS0gL2Rldi9udWxsCisrKyBi L2djYzQ3LXByNDc4NTgucGF0Y2gKQEAgLTAsMCArMSwyMyBAQAorMjAxMS0wMy0wMSAgSmFrdWIg SmVsaW5layAgPGpha3ViQHJlZGhhdC5jb20+CisKKwlQUiBkZWJ1Zy80Nzg1OAorCSogb3B0cy5j IChkZWZhdWx0X29wdGlvbnNfdGFibGUpOiBFbmFibGUgLWZpcGEtc3JhIGJ5IGRlZmF1bHQKKwlv bmx5IGZvciAtTzMsIG5vdCBmb3IgLU8yIGFuZCAtT3MuCisKKy0tLSBnY2Mvb3B0cy5jLmpqCTIw MTEtMDItMjAgMDg6MzY6NTkuODg4MzkwODkwICswMTAwCisrKysgZ2NjL29wdHMuYwkyMDExLTAz LTAxIDEyOjA0OjM4LjY4MDU1ODM1MSArMDEwMAorQEAgLTQ4NywxMyArNDg3LDEzIEBAIHN0YXRp YyBjb25zdCBzdHJ1Y3QgZGVmYXVsdF9vcHRpb25zIGRlZmEKKyAgICAgeyBPUFRfTEVWRUxTXzJf UExVUywgT1BUX2Z0cmVlX3N3aXRjaF9jb252ZXJzaW9uLCBOVUxMLCAxIH0sCisgICAgIHsgT1BU X0xFVkVMU18yX1BMVVMsIE9QVF9maXBhX2NwLCBOVUxMLCAxIH0sCisgICAgIHsgT1BUX0xFVkVM U18yX1BMVVMsIE9QVF9mZGV2aXJ0dWFsaXplLCBOVUxMLCAxIH0sCistICAgIHsgT1BUX0xFVkVM U18yX1BMVVMsIE9QVF9maXBhX3NyYSwgTlVMTCwgMSB9LAorICAgICB7IE9QVF9MRVZFTFNfMl9Q TFVTLCBPUFRfZmFsaWduX2xvb3BzLCBOVUxMLCAxIH0sCisgICAgIHsgT1BUX0xFVkVMU18yX1BM VVMsIE9QVF9mYWxpZ25fanVtcHMsIE5VTEwsIDEgfSwKKyAgICAgeyBPUFRfTEVWRUxTXzJfUExV UywgT1BUX2ZhbGlnbl9sYWJlbHMsIE5VTEwsIDEgfSwKKyAgICAgeyBPUFRfTEVWRUxTXzJfUExV UywgT1BUX2ZhbGlnbl9mdW5jdGlvbnMsIE5VTEwsIDEgfSwKKyAKKyAgICAgLyogLU8zIG9wdGlt aXphdGlvbnMuICAqLworKyAgICB7IE9QVF9MRVZFTFNfM19QTFVTLCBPUFRfZmlwYV9zcmEsIE5V TEwsIDEgfSwKKyAgICAgeyBPUFRfTEVWRUxTXzNfUExVUywgT1BUX2Z0cmVlX2xvb3BfZGlzdHJp YnV0ZV9wYXR0ZXJucywgTlVMTCwgMSB9LAorICAgICB7IE9QVF9MRVZFTFNfM19QTFVTLCBPUFRf ZnByZWRpY3RpdmVfY29tbW9uaW5nLCBOVUxMLCAxIH0sCisgICAgIC8qIElubGluaW5nIG9mIGZ1 bmN0aW9ucyByZWR1Y2luZyBzaXplIGlzIGEgZ29vZCBpZGVhIHdpdGggLU9zCgpkaWZmIC0tZ2l0 IGEvZ2NjNDctcmgzMzA3NzEucGF0Y2ggYi9nY2M0Ny1yaDMzMDc3MS5wYXRjaApuZXcgZmlsZSBt b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xMDI3MzBmCi0tLSAvZGV2L251bGwKKysrIGIvZ2Nj NDctcmgzMzA3NzEucGF0Y2gKQEAgLTAsMCArMSwyNyBAQAorMjAwNy0xMC0xNiAgSmFrdWIgSmVs aW5layAgPGpha3ViQHJlZGhhdC5jb20+CisKKwkqIE1ha2VmaWxlLmFtIChsaWJnY2pfdG9vbHNf bGFfTElCQUREKTogQWRkLgorCSogTWFrZWZpbGUuaW46IFJlZ2VuZXJhdGVkLgorCistLS0gbGli amF2YS9NYWtlZmlsZS5hbS5qagkyMDA5LTA1LTA2IDA4OjE0OjUwLjAwMDAwMDAwMCArMDIwMAor KysrIGxpYmphdmEvTWFrZWZpbGUuYW0JMjAwOS0wNS0wNiAxMDoyNjo0My4wMDAwMDAwMDAgKzAy MDAKK0BAIC01NTAsNyArNTUwLDcgQEAgbGliZ2NqX3Rvb2xzX2xhX0xERkxBR1MgPSAtcnBhdGgg JCh0b29sZQorICAkKExJQkdDSl9MRF9TWU1CT0xJQ19GVU5DVElPTlMpICQoTElCSkFWQV9MREZM QUdTX05PVU5ERUYpIFwKKyAgJChMSUJKQVZBX0xERkxBR1NfTElCTUFUSCkKKyAKKy1saWJnY2pf dG9vbHNfbGFfTElCQUREID0gbGliZ2NqLmxhCisrbGliZ2NqX3Rvb2xzX2xhX0xJQkFERCA9IC1M JChoZXJlKS8ubGlicyBsaWJnY2oubGEKKyBsaWJnY2pfdG9vbHNfbGFfREVQRU5ERU5DSUVTID0g bGliZ2NqLmxhIGxpYmdjai5zcGVjIFwKKyAgJChsaWJnY2pfdG9vbHNfbGFfdmVyc2lvbl9kZXAp CisgaWYgQlVJTERfU1VCTElCUworLS0tIGxpYmphdmEvTWFrZWZpbGUuaW4uamoJMjAwOS0wNS0w NiAwODoxNDo0OS4wMDAwMDAwMDAgKzAyMDAKKysrKyBsaWJqYXZhL01ha2VmaWxlLmluCTIwMDkt MDUtMDYgMTA6Mjc6MTguMDAwMDAwMDAwICswMjAwCitAQCAtMTExMCw3ICsxMTEwLDcgQEAgbGli Z2NqX3Rvb2xzX2xhX0xERkxBR1MgPSAtcnBhdGggJCh0b29sZQorICAkKExJQkdDSl9MRF9TWU1C T0xJQ19GVU5DVElPTlMpICQoTElCSkFWQV9MREZMQUdTX05PVU5ERUYpIFwKKyAgJChMSUJKQVZB X0xERkxBR1NfTElCTUFUSCkKKyAKKy1saWJnY2pfdG9vbHNfbGFfTElCQUREID0gbGliZ2NqLmxh CisrbGliZ2NqX3Rvb2xzX2xhX0xJQkFERCA9IC1MJChoZXJlKS8ubGlicyBsaWJnY2oubGEKKyBs aWJnY2pfdG9vbHNfbGFfREVQRU5ERU5DSUVTID0gbGliZ2NqLmxhIGxpYmdjai5zcGVjIFwKKyAJ JChsaWJnY2pfdG9vbHNfbGFfdmVyc2lvbl9kZXApICQoYW1fX2FwcGVuZF8xOSkKKyBsaWJnY2pf dG9vbHNfbGFfTElOSyA9ICQoTElCTElOSykgJChsaWJnY2pfdG9vbHNfbGFfTERGTEFHUykgXAoK ZGlmZiAtLWdpdCBhL2djYzQ3LXNwYXJjLWNvbmZpZy1kZXRlY3Rpb24ucGF0Y2ggYi9nY2M0Ny1z cGFyYy1jb25maWctZGV0ZWN0aW9uLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw MDAwMDAuLmNlMmFjYzcKLS0tIC9kZXYvbnVsbAorKysgYi9nY2M0Ny1zcGFyYy1jb25maWctZGV0 ZWN0aW9uLnBhdGNoCkBAIC0wLDAgKzEsNDAgQEAKKy0tLSBnY2MvY29uZmlnLmdjYy5qagkyMDA4 LTA0LTI0IDE1OjQyOjQ2LjAwMDAwMDAwMCAtMDUwMAorKysrIGdjYy9jb25maWcuZ2NjCTIwMDgt MDQtMjQgMTU6NDQ6NTEuMDAwMDAwMDAwIC0wNTAwCitAQCAtMjM1Niw3ICsyMzU2LDcgQEAgc3Bh cmMtKi1ydGVtcyopCisgCXRtX2ZpbGU9IiR7dG1fZmlsZX0gZGJ4ZWxmLmggZWxmb3MuaCBzcGFy Yy9zeXN2NC5oIHNwYXJjL3NwLWVsZi5oIHNwYXJjL3J0ZW1zZWxmLmggcnRlbXMuaCBuZXdsaWIt c3RkaW50LmgiCisgCXRtYWtlX2ZpbGU9InNwYXJjL3Qtc3BhcmMgc3BhcmMvdC1lbGYgdC1ydGVt cyIKKyAJOzsKKy1zcGFyYy0qLWxpbnV4KikKKytzcGFyYy0qLWxpbnV4KiB8IHNwYXJjdjktKi1s aW51eCopCisgCXRtX2ZpbGU9IiR7dG1fZmlsZX0gZGJ4ZWxmLmggZWxmb3MuaCBzcGFyYy9zeXN2 NC5oIGdudS11c2VyLmggbGludXguaCBnbGliYy1zdGRpbnQuaCBzcGFyYy90c28uaCIKKyAJZXh0 cmFfb3B0aW9ucz0iJHtleHRyYV9vcHRpb25zfSBzcGFyYy9sb25nLWRvdWJsZS1zd2l0Y2gub3B0 IgorIAljYXNlICR7dGFyZ2V0fSBpbgorQEAgLTI0MDksNyArMjQwOSw3IEBAIHNwYXJjNjQtKi1y dGVtcyopCisgCWV4dHJhX29wdGlvbnM9IiR7ZXh0cmFfb3B0aW9uc30iCisgCXRtYWtlX2ZpbGU9 IiR7dG1ha2VfZmlsZX0gc3BhcmMvdC1zcGFyYyB0LXJ0ZW1zIgorIAk7OworLXNwYXJjNjQtKi1s aW51eCopCisrc3BhcmM2NCotKi1saW51eCopCisgCXRtX2ZpbGU9InNwYXJjL2JpYXJjaDY0Lmgg JHt0bV9maWxlfSBkYnhlbGYuaCBlbGZvcy5oIHNwYXJjL3N5c3Y0LmggZ251LXVzZXIuaCBsaW51 eC5oIGdsaWJjLXN0ZGludC5oIHNwYXJjL2RlZmF1bHQtNjQuaCBzcGFyYy9saW51eDY0Lmggc3Bh cmMvdHNvLmgiCisgCWV4dHJhX29wdGlvbnM9IiR7ZXh0cmFfb3B0aW9uc30gc3BhcmMvbG9uZy1k b3VibGUtc3dpdGNoLm9wdCIKKyAJdG1ha2VfZmlsZT0iJHt0bWFrZV9maWxlfSBzcGFyYy90LXNw YXJjIHNwYXJjL3QtbGludXg2NCIKKy0tLSBsaWJnY2MvY29uZmlnLmhvc3QuamoJMjAwOC0wNC0y NCAxNTo0NjoxOS4wMDAwMDAwMDAgLTA1MDAKKysrKyBsaWJnY2MvY29uZmlnLmhvc3QJMjAwOC0w NC0yNCAxNTo0Njo0OS4wMDAwMDAwMDAgLTA1MDAKK0BAIC0xMDAyLDcgKzEwMDIsNyBAQCBzcGFy Yy0qLWVsZiopCisgCXRtYWtlX2ZpbGU9IiR7dG1ha2VfZmlsZX0gdC1mZHBiaXQgdC1jcnRmbSIK KyAJZXh0cmFfcGFydHM9IiRleHRyYV9wYXJ0cyBjcnRpLm8gY3J0bi5vIGNydGZhc3RtYXRoLm8i CisgCTs7Cistc3BhcmMtKi1saW51eCopCQkjIFNQQVJDJ3MgcnVubmluZyBHTlUvTGludXgsIGxp YmM2Cisrc3BhcmMtKi1saW51eCogfCBzcGFyY3Y5LSotbGludXgqKQkJIyBTUEFSQydzIHJ1bm5p bmcgR05VL0xpbnV4LCBsaWJjNgorIAl0bWFrZV9maWxlPSIke3RtYWtlX2ZpbGV9IHQtY3J0Zm0i CisgCWlmIHRlc3QgIiR7aG9zdF9hZGRyZXNzfSIgPSA2NDsgdGhlbgorIAkJdG1ha2VfZmlsZT0i JHRtYWtlX2ZpbGUgc3BhcmMvdC1saW51eDY0IgorQEAgLTEwNTAsNyArMTA1MCw3IEBAIHNwYXJj NjQtKi1mcmVlYnNkKnx1bHRyYXNwYXJjLSotZnJlZWJzZCoKKyAJdG1ha2VfZmlsZT0iJHRtYWtl X2ZpbGUgdC1jcnRmbSIKKyAJZXh0cmFfcGFydHM9IiRleHRyYV9wYXJ0cyBjcnRmYXN0bWF0aC5v IgorIAk7OworLXNwYXJjNjQtKi1saW51eCopCQkjIDY0LWJpdCBTUEFSQydzIHJ1bm5pbmcgR05V L0xpbnV4Cisrc3BhcmM2NCotKi1saW51eCopCQkjIDY0LWJpdCBTUEFSQydzIHJ1bm5pbmcgR05V L0xpbnV4CisgCWV4dHJhX3BhcnRzPSIkZXh0cmFfcGFydHMgY3J0ZmFzdG1hdGgubyIKKyAJdG1h a2VfZmlsZT0iJHt0bWFrZV9maWxlfSB0LWNydGZtIHNwYXJjL3QtbGludXgiCisgCWlmIHRlc3Qg IiR7aG9zdF9hZGRyZXNzfSIgPSA2NDsgdGhlbgoKZGlmZiAtLWdpdCBhL3NvdXJjZXMgYi9zb3Vy Y2VzCmluZGV4IGNkMjJkYjQuLjcyNzU5MTUgMTAwNjQ0Ci0tLSBhL3NvdXJjZXMKKysrIGIvc291 cmNlcwpAQCAtMSwyICsxLDIgQEAKIDI2NTlmMDljMmU0M2VmOGI3ZDQ0MDYzMjE3NTNmMWIyICBm YXN0amFyLTAuOTcudGFyLmd6Ci1jZDhmMTQzZTk4OTIxYzZkZDc1NTE5MzcxODVlN2ZhMSAgZ2Nj LTQuNi4yLTIwMTExMDI3LnRhci5iejIKKzMxZjcxMjdkNDY3OWY0MWUyNjNkNDAwOTkwMDQzOWIy ICBnY2MtNC43LjAtMjAxMjAxMDMudGFyLmJ6Mgo=