Ly8gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCi8vICAgICAgICAgIEFUTUVMIE1pY3JvY29udHJvbGxlciBTb2Z0d2FyZSBTdXBwb3J0ICAtICBST1VTU0VUICAtDQovLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KLy8gIENvcHlyaWdodCAoYykgMjAwOCwgQXRtZWwgQ29ycG9yYXRpb24NCi8vIA0KLy8gIEFsbCByaWdodHMgcmVzZXJ2ZWQuDQovLyANCi8vICBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQNCi8vICBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoNCi8vIA0KLy8gIC0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLA0KLy8gIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZGlzY2xhaW1lciBiZWxvdy4NCi8vIA0KLy8gIEF0bWVsJ3MgbmFtZSBtYXkgbm90IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQ0KLy8gIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uIA0KLy8gIA0KLy8gIERJU0NMQUlNRVI6ICBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFUTUVMICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SDQovLyAgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRg0KLy8gIE1FUkNIQU5UQUJJTElUWSwgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTi1JTkZSSU5HRU1FTlQgQVJFDQovLyAgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVRNRUwgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwNCi8vICBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UDQovLyAgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsDQovLyAgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRg0KLy8gIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HDQovLyAgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLA0KLy8gIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuDQovLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KLy8gRmlsZSBOYW1lICAgICAgICAgICA6IEFUOTFTQU0zVTQuaA0KLy8gT2JqZWN0ICAgICAgICAgICAgICA6IEFUOTFTQU0zVTQgZGVmaW5pdGlvbnMNCi8vIEdlbmVyYXRlZCAgICAgICAgICAgOiBBVDkxIFNXIEFwcGxpY2F0aW9uIEdyb3VwICAwMy8wOS8yMDA5ICgxMTo0OTozNCkNCi8vIA0KLy8gQ1ZTIFJlZmVyZW5jZSAgICAgICA6IC9BVDkxU0FNM1U0LnBsLzEuMzIvTW9uIEZlYiAgOSAxNDoyMDo1OCAyMDA5Ly8NCi8vIENWUyBSZWZlcmVuY2UgICAgICAgOiAvU1lTX1NBTTNVNC5wbC8xLjQvRnJpIE9jdCAxNyAxMzoyNzo1NyAyMDA4Ly8NCi8vIENWUyBSZWZlcmVuY2UgICAgICAgOiAvSE1BVFJJWDJfU0FNM1U0LnBsLzEuMy9Nb24gTWFyICAyIDEwOjEyOjA3IDIwMDkvLw0KLy8gQ1ZTIFJlZmVyZW5jZSAgICAgICA6IC9QTUNfU0FNM1U0LnBsLzEuNy9GcmkgT2N0IDE3IDEzOjI3OjU0IDIwMDgvLw0KLy8gQ1ZTIFJlZmVyZW5jZSAgICAgICA6IC9FQklfU0FNOTI2MC5wbC8xLjEvRnJpIFNlcCAzMCAxMjoxMjoxNCAyMDA1Ly8NCi8vIENWUyBSZWZlcmVuY2UgICAgICAgOiAvRUZDMl9TQU0zVTQucGwvMS4zL01vbiBNYXIgIDIgMTA6MTI6MDYgMjAwOS8vDQovLyBDVlMgUmVmZXJlbmNlICAgICAgIDogL0hTRFJBTUMxXzYxMDBBLnBsLzEuMi9Nb24gQXVnICA5IDEwOjUyOjI1IDIwMDQvLw0KLy8gQ1ZTIFJlZmVyZW5jZSAgICAgICA6IC9IU01DNF94eHh4LnBsLzEuOS9GcmkgT2N0IDE3IDEzOjI3OjU2IDIwMDgvLw0KLy8gQ1ZTIFJlZmVyZW5jZSAgICAgICA6IC9IRUNDXzYxNDNBLnBsLzEuMS9XZWQgRmViICA5IDE3OjE2OjU3IDIwMDUvLw0KLy8gQ1ZTIFJlZmVyZW5jZSAgICAgICA6IC9DT1JURVhfTTNfTlZJQy5wbC8xLjcvVHVlIEphbiAyNyAxNjoxNjoyNCAyMDA5Ly8NCi8vIENWUyBSZWZlcmVuY2UgICAgICAgOiAvQ09SVEVYX00zX01QVS5wbC8xLjMvRnJpIE9jdCAxNyAxMzoyNzo0OCAyMDA4Ly8NCi8vIENWUyBSZWZlcmVuY2UgICAgICAgOiAvQ09SVEVYX00zLnBsLzEuMS9Nb24gU2VwIDE1IDE1OjIyOjA2IDIwMDgvLw0KLy8gQ1ZTIFJlZmVyZW5jZSAgICAgICA6IC9QRENfNjA3NEMucGwvMS4yL1RodSBGZWIgIDMgMDk6MDI6MTEgMjAwNS8vDQovLyBDVlMgUmVmZXJlbmNlICAgICAgIDogL0RCR1VfU0FNM1U0LnBsLzEuMi9GcmkgT2N0IDE3IDEzOjI3OjQ5IDIwMDgvLw0KLy8gQ1ZTIFJlZmVyZW5jZSAgICAgICA6IC9QSU8zX3h4eHgucGwvMS42L01vbiBNYXIgIDkgMTA6NDM6MzcgMjAwOS8vDQovLyBDVlMgUmVmZXJlbmNlICAgICAgIDogL1JTVENfNjA5OEEucGwvMS40L0ZyaSBPY3QgMTcgMTM6Mjc6NTUgMjAwOC8vDQovLyBDVlMgUmVmZXJlbmNlICAgICAgIDogL1NIRFdDXzYxMjJBLnBsLzEuMy9XZWQgT2N0ICA2IDE0OjE2OjU4IDIwMDQvLw0KLy8gQ1ZTIFJlZmVyZW5jZSAgICAgICA6IC9TVVBDX1NBTTNVNC5wbC8xLjIvVGh1IEp1biAgNSAxNToyNzoyNyAyMDA4Ly8NCi8vIENWUyBSZWZlcmVuY2UgICAgICAgOiAvUlRUQ182MDgxQS5wbC8xLjIvVGh1IE5vdiAgNCAxMzo1NzoyMiAyMDA0Ly8NCi8vIENWUyBSZWZlcmVuY2UgICAgICAgOiAvUElUQ182MDc5QS5wbC8xLjIvVGh1IE5vdiAgNCAxMzo1NjoyMiAyMDA0Ly8NCi8vIENWUyBSZWZlcmVuY2UgICAgICAgOiAvV0RUQ182MDgwQS5wbC8xLjMvVGh1IE5vdiAgNCAxMzo1ODo1MiAyMDA0Ly8NCi8vIENWUyBSZWZlcmVuY2UgICAgICAgOiAvVENfNjA4MkEucGwvMS44L0ZyaSBPY3QgMTcgMTM6Mjc6NTggMjAwOC8vDQovLyBDVlMgUmVmZXJlbmNlICAgICAgIDogL01DSV82MTAxRi5wbC8xLjMvRnJpIEphbiAyMyAwOToxNTozMiAyMDA5Ly8NCi8vIENWUyBSZWZlcmVuY2UgICAgICAgOiAvVFdJXzYwNjFCLnBsLzEuMy9GcmkgT2N0IDE3IDEzOjI3OjU5IDIwMDgvLw0KLy8gQ1ZTIFJlZmVyZW5jZSAgICAgICA6IC9VU182MDg5Si5wbC8xLjMvRnJpIE9jdCAxNyAxMzoyNzo1OSAyMDA4Ly8NCi8vIENWUyBSZWZlcmVuY2UgICAgICAgOiAvU1NDXzYwNzhCLnBsLzEuMy9GcmkgT2N0IDE3IDEzOjI3OjU3IDIwMDgvLw0KLy8gQ1ZTIFJlZmVyZW5jZSAgICAgICA6IC9TUEkyLnBsLzEuNC9Nb24gTWFyICA5IDA4OjU2OjI4IDIwMDkvLw0KLy8gQ1ZTIFJlZmVyZW5jZSAgICAgICA6IC9QV01fNjM0M0JfVjQwMC5wbC8xLjMvRnJpIE9jdCAxNyAxMzoyNzo1NCAyMDA4Ly8NCi8vIENWUyBSZWZlcmVuY2UgICAgICAgOiAvSERNQV9TQU0zVTQucGwvMS4zL0ZyaSBPY3QgMTcgMTM6Mjc6NTEgMjAwOC8vDQovLyBDVlMgUmVmZXJlbmNlICAgICAgIDogL1VEUEhTX1NBTTlfN2VwdDZkbWE0aXNvLnBsLzEuNC9UdWUgSnVuIDI0IDEzOjA1OjE0IDIwMDgvLw0KLy8gQ1ZTIFJlZmVyZW5jZSAgICAgICA6IC9BRENfU0FNM1VFLnBsLzEuNC9GcmkgRmViIDIwIDEyOjE5OjE4IDIwMDkvLw0KLy8gQ1ZTIFJlZmVyZW5jZSAgICAgICA6IC9SVENfMTI0NUQucGwvMS4zL0ZyaSBTZXAgMTcgMTQ6MDE6MzEgMjAwNC8vDQovLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQojaWZuZGVmIEFUOTFTQU0zVTRfSA0KI2RlZmluZSBBVDkxU0FNM1U0X0gNCg0KI2lmbmRlZiBfX0FTU0VNQkxZX18NCnR5cGVkZWYgdm9sYXRpbGUgdW5zaWduZWQgaW50IEFUOTFfUkVHOy8vIEhhcmR3YXJlIHJlZ2lzdGVyIGRlZmluaXRpb24NCiNkZWZpbmUgQVQ5MV9DQVNUKGEpIChhKQ0KI2Vsc2UNCiNkZWZpbmUgQVQ5MV9DQVNUKGEpDQojZW5kaWYNCg0KLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCi8vICAgICAgICAgICAgICBTT0ZUV0FSRSBBUEkgREVGSU5JVElPTiAgRk9SIFN5c3RlbSBQZXJpcGhlcmFscw0KLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCiNpZm5kZWYgX19BU1NFTUJMWV9fDQp0eXBlZGVmIHN0cnVjdCBfQVQ5MVNfU1lTIHsNCglBVDkxX1JFRwkgSFNNQzRfQ0ZHOyAJLy8gQ29uZmlndXJhdGlvbiBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBIU01DNF9DVFJMOyAJLy8gQ29udHJvbCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBIU01DNF9TUjsgCS8vIFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBIU01DNF9JRVI7IAkvLyBJbnRlcnJ1cHQgRW5hYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIEhTTUM0X0lEUjsgCS8vIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIEhTTUM0X0lNUjsgCS8vIEludGVycnVwdCBNYXNrIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIEhTTUM0X0FERFI7IAkvLyBBZGRyZXNzIEN5Y2xlIFplcm8gUmVnaXN0ZXINCglBVDkxX1JFRwkgSFNNQzRfQkFOSzsgCS8vIEJhbmsgUmVnaXN0ZXINCglBVDkxX1JFRwkgSFNNQzRfRUNDQ1I7IAkvLyBFQ0MgcmVzZXQgcmVnaXN0ZXINCglBVDkxX1JFRwkgSFNNQzRfRUNDQ01EOyAJLy8gRUNDIFBhZ2Ugc2l6ZSByZWdpc3Rlcg0KCUFUOTFfUkVHCSBIU01DNF9FQ0NTUjE7IAkvLyBFQ0MgU3RhdHVzIHJlZ2lzdGVyIDENCglBVDkxX1JFRwkgSFNNQzRfRUNDUFIwOyAJLy8gRUNDIFBhcml0eSByZWdpc3RlciAwDQoJQVQ5MV9SRUcJIEhTTUM0X0VDQ1BSMTsgCS8vIEVDQyBQYXJpdHkgcmVnaXN0ZXIgMQ0KCUFUOTFfUkVHCSBIU01DNF9FQ0NTUjI7IAkvLyBFQ0MgU3RhdHVzIHJlZ2lzdGVyIDINCglBVDkxX1JFRwkgSFNNQzRfRUNDUFIyOyAJLy8gRUNDIFBhcml0eSByZWdpc3RlciAyDQoJQVQ5MV9SRUcJIEhTTUM0X0VDQ1BSMzsgCS8vIEVDQyBQYXJpdHkgcmVnaXN0ZXIgMw0KCUFUOTFfUkVHCSBIU01DNF9FQ0NQUjQ7IAkvLyBFQ0MgUGFyaXR5IHJlZ2lzdGVyIDQNCglBVDkxX1JFRwkgSFNNQzRfRUNDUFI1OyAJLy8gRUNDIFBhcml0eSByZWdpc3RlciA1DQoJQVQ5MV9SRUcJIEhTTUM0X0VDQ1BSNjsgCS8vIEVDQyBQYXJpdHkgcmVnaXN0ZXIgNg0KCUFUOTFfUkVHCSBIU01DNF9FQ0NQUjc7IAkvLyBFQ0MgUGFyaXR5IHJlZ2lzdGVyIDcNCglBVDkxX1JFRwkgSFNNQzRfRUNDUFI4OyAJLy8gRUNDIFBhcml0eSByZWdpc3RlciA4DQoJQVQ5MV9SRUcJIEhTTUM0X0VDQ1BSOTsgCS8vIEVDQyBQYXJpdHkgcmVnaXN0ZXIgOQ0KCUFUOTFfUkVHCSBIU01DNF9FQ0NQUjEwOyAJLy8gRUNDIFBhcml0eSByZWdpc3RlciAxMA0KCUFUOTFfUkVHCSBIU01DNF9FQ0NQUjExOyAJLy8gRUNDIFBhcml0eSByZWdpc3RlciAxMQ0KCUFUOTFfUkVHCSBIU01DNF9FQ0NQUjEyOyAJLy8gRUNDIFBhcml0eSByZWdpc3RlciAxMg0KCUFUOTFfUkVHCSBIU01DNF9FQ0NQUjEzOyAJLy8gRUNDIFBhcml0eSByZWdpc3RlciAxMw0KCUFUOTFfUkVHCSBIU01DNF9FQ0NQUjE0OyAJLy8gRUNDIFBhcml0eSByZWdpc3RlciAxNA0KCUFUOTFfUkVHCSBIU01DNF9FY2NwcjE1OyAJLy8gRUNDIFBhcml0eSByZWdpc3RlciAxNQ0KCUFUOTFfUkVHCSBSZXNlcnZlZDBbNDBdOyAJLy8gDQoJQVQ5MV9SRUcJIEhTTUM0X09DTVM7IAkvLyBPQ01TIE1PREUgcmVnaXN0ZXINCglBVDkxX1JFRwkgSFNNQzRfS0VZMTsgCS8vIEtFWTEgUmVnaXN0ZXINCglBVDkxX1JFRwkgSFNNQzRfS0VZMjsgCS8vIEtFWTIgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQxWzUwXTsgCS8vIA0KCUFUOTFfUkVHCSBIU01DNF9XUENSOyAJLy8gV3JpdGUgUHJvdGVjdGlvbiBDb250cm9sIHJlZ2lzdGVyDQoJQVQ5MV9SRUcJIEhTTUM0X1dQU1I7IAkvLyBXcml0ZSBQcm90ZWN0aW9uIFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBIU01DNF9BRERSU0laRTsgCS8vIFdyaXRlIFByb3RlY3Rpb24gU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIEhTTUM0X0lQTkFNRTE7IAkvLyBXcml0ZSBQcm90ZWN0aW9uIFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBIU01DNF9JUE5BTUUyOyAJLy8gV3JpdGUgUHJvdGVjdGlvbiBTdGF0dXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgSFNNQzRfRkVBVFVSRVM7IAkvLyBXcml0ZSBQcm90ZWN0aW9uIFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBIU01DNF9WRVI7IAkvLyBIU01DNCBWZXJzaW9uIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIEhNQVRSSVhfTUNGRzA7IAkvLyAgTWFzdGVyIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgMCA6IEFSTSBJIGFuZCBEDQoJQVQ5MV9SRUcJIEhNQVRSSVhfTUNGRzE7IAkvLyAgTWFzdGVyIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgMSA6IEFSTSBTDQoJQVQ5MV9SRUcJIEhNQVRSSVhfTUNGRzI7IAkvLyAgTWFzdGVyIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgMg0KCUFUOTFfUkVHCSBITUFUUklYX01DRkczOyAJLy8gIE1hc3RlciBDb25maWd1cmF0aW9uIFJlZ2lzdGVyIDMNCglBVDkxX1JFRwkgSE1BVFJJWF9NQ0ZHNDsgCS8vICBNYXN0ZXIgQ29uZmlndXJhdGlvbiBSZWdpc3RlciA0DQoJQVQ5MV9SRUcJIEhNQVRSSVhfTUNGRzU7IAkvLyAgTWFzdGVyIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgNQ0KCUFUOTFfUkVHCSBITUFUUklYX01DRkc2OyAJLy8gIE1hc3RlciBDb25maWd1cmF0aW9uIFJlZ2lzdGVyIDYNCglBVDkxX1JFRwkgSE1BVFJJWF9NQ0ZHNzsgCS8vICBNYXN0ZXIgQ29uZmlndXJhdGlvbiBSZWdpc3RlciA3DQoJQVQ5MV9SRUcJIFJlc2VydmVkMls4XTsgCS8vIA0KCUFUOTFfUkVHCSBITUFUUklYX1NDRkcwOyAJLy8gIFNsYXZlIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgMA0KCUFUOTFfUkVHCSBITUFUUklYX1NDRkcxOyAJLy8gIFNsYXZlIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgMQ0KCUFUOTFfUkVHCSBITUFUUklYX1NDRkcyOyAJLy8gIFNsYXZlIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgMg0KCUFUOTFfUkVHCSBITUFUUklYX1NDRkczOyAJLy8gIFNsYXZlIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgMw0KCUFUOTFfUkVHCSBITUFUUklYX1NDRkc0OyAJLy8gIFNsYXZlIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgNA0KCUFUOTFfUkVHCSBITUFUUklYX1NDRkc1OyAJLy8gIFNsYXZlIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgNQ0KCUFUOTFfUkVHCSBITUFUUklYX1NDRkc2OyAJLy8gIFNsYXZlIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgNg0KCUFUOTFfUkVHCSBITUFUUklYX1NDRkc3OyAJLy8gIFNsYXZlIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgNQ0KCUFUOTFfUkVHCSBITUFUUklYX1NDRkc4OyAJLy8gIFNsYXZlIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgOA0KCUFUOTFfUkVHCSBSZXNlcnZlZDNbNDNdOyAJLy8gDQoJQVQ5MV9SRUcJIEhNQVRSSVhfU0ZSMCA7IAkvLyAgU3BlY2lhbCBGdW5jdGlvbiBSZWdpc3RlciAwDQoJQVQ5MV9SRUcJIEhNQVRSSVhfU0ZSMSA7IAkvLyAgU3BlY2lhbCBGdW5jdGlvbiBSZWdpc3RlciAxDQoJQVQ5MV9SRUcJIEhNQVRSSVhfU0ZSMiA7IAkvLyAgU3BlY2lhbCBGdW5jdGlvbiBSZWdpc3RlciAyDQoJQVQ5MV9SRUcJIEhNQVRSSVhfU0ZSMyA7IAkvLyAgU3BlY2lhbCBGdW5jdGlvbiBSZWdpc3RlciAzDQoJQVQ5MV9SRUcJIEhNQVRSSVhfU0ZSNCA7IAkvLyAgU3BlY2lhbCBGdW5jdGlvbiBSZWdpc3RlciA0DQoJQVQ5MV9SRUcJIEhNQVRSSVhfU0ZSNSA7IAkvLyAgU3BlY2lhbCBGdW5jdGlvbiBSZWdpc3RlciA1DQoJQVQ5MV9SRUcJIEhNQVRSSVhfU0ZSNiA7IAkvLyAgU3BlY2lhbCBGdW5jdGlvbiBSZWdpc3RlciA2DQoJQVQ5MV9SRUcJIEhNQVRSSVhfU0ZSNyA7IAkvLyAgU3BlY2lhbCBGdW5jdGlvbiBSZWdpc3RlciA3DQoJQVQ5MV9SRUcJIEhNQVRSSVhfU0ZSOCA7IAkvLyAgU3BlY2lhbCBGdW5jdGlvbiBSZWdpc3RlciA4DQoJQVQ5MV9SRUcJIEhNQVRSSVhfU0ZSOSA7IAkvLyAgU3BlY2lhbCBGdW5jdGlvbiBSZWdpc3RlciA5DQoJQVQ5MV9SRUcJIEhNQVRSSVhfU0ZSMTA7IAkvLyAgU3BlY2lhbCBGdW5jdGlvbiBSZWdpc3RlciAxMA0KCUFUOTFfUkVHCSBITUFUUklYX1NGUjExOyAJLy8gIFNwZWNpYWwgRnVuY3Rpb24gUmVnaXN0ZXIgMTENCglBVDkxX1JFRwkgSE1BVFJJWF9TRlIxMjsgCS8vICBTcGVjaWFsIEZ1bmN0aW9uIFJlZ2lzdGVyIDEyDQoJQVQ5MV9SRUcJIEhNQVRSSVhfU0ZSMTM7IAkvLyAgU3BlY2lhbCBGdW5jdGlvbiBSZWdpc3RlciAxMw0KCUFUOTFfUkVHCSBITUFUUklYX1NGUjE0OyAJLy8gIFNwZWNpYWwgRnVuY3Rpb24gUmVnaXN0ZXIgMTQNCglBVDkxX1JFRwkgSE1BVFJJWF9TRlIxNTsgCS8vICBTcGVjaWFsIEZ1bmN0aW9uIFJlZ2lzdGVyIDE1DQoJQVQ5MV9SRUcJIFJlc2VydmVkNFszOV07IAkvLyANCglBVDkxX1JFRwkgSE1BVFJJWF9BRERSU0laRTsgCS8vIEhNQVRSSVgyIEFERFJTSVpFIFJFR0lTVEVSIA0KCUFUOTFfUkVHCSBITUFUUklYX0lQTkFNRTE7IAkvLyBITUFUUklYMiBJUE5BTUUxIFJFR0lTVEVSIA0KCUFUOTFfUkVHCSBITUFUUklYX0lQTkFNRTI7IAkvLyBITUFUUklYMiBJUE5BTUUyIFJFR0lTVEVSIA0KCUFUOTFfUkVHCSBITUFUUklYX0ZFQVRVUkVTOyAJLy8gSE1BVFJJWDIgRkVBVFVSRVMgUkVHSVNURVIgDQoJQVQ5MV9SRUcJIEhNQVRSSVhfVkVSOyAJLy8gSE1BVFJJWDIgVkVSU0lPTiBSRUdJU1RFUiANCglBVDkxX1JFRwkgUE1DX1NDRVI7IAkvLyBTeXN0ZW0gQ2xvY2sgRW5hYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBNQ19TQ0RSOyAJLy8gU3lzdGVtIENsb2NrIERpc2FibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUE1DX1NDU1I7IAkvLyBTeXN0ZW0gQ2xvY2sgU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkNVsxXTsgCS8vIA0KCUFUOTFfUkVHCSBQTUNfUENFUjsgCS8vIFBlcmlwaGVyYWwgQ2xvY2sgRW5hYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBNQ19QQ0RSOyAJLy8gUGVyaXBoZXJhbCBDbG9jayBEaXNhYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBNQ19QQ1NSOyAJLy8gUGVyaXBoZXJhbCBDbG9jayBTdGF0dXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgUE1DX1VDS1I7IAkvLyBVVE1JIENsb2NrIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXINCglBVDkxX1JFRwkgUE1DX01PUjsgCS8vIE1haW4gT3NjaWxsYXRvciBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQTUNfTUNGUjsgCS8vIE1haW4gQ2xvY2sgIEZyZXF1ZW5jeSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQTUNfUExMQVI7IAkvLyBQTEwgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQ2WzFdOyAJLy8gDQoJQVQ5MV9SRUcJIFBNQ19NQ0tSOyAJLy8gTWFzdGVyIENsb2NrIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkN1szXTsgCS8vIA0KCUFUOTFfUkVHCSBQTUNfUENLUls4XTsgCS8vIFByb2dyYW1tYWJsZSBDbG9jayBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQTUNfSUVSOyAJLy8gSW50ZXJydXB0IEVuYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQTUNfSURSOyAJLy8gSW50ZXJydXB0IERpc2FibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUE1DX1NSOyAJLy8gU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBNQ19JTVI7IAkvLyBJbnRlcnJ1cHQgTWFzayBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQTUNfRlNNUjsgCS8vIEZhc3QgU3RhcnR1cCBNb2RlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBNQ19GU1BSOyAJLy8gRmFzdCBTdGFydHVwIFBvbGFyaXR5IFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBNQ19GT0NSOyAJLy8gRmF1bHQgT3V0cHV0IENsZWFyIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkOFsyOF07IAkvLyANCglBVDkxX1JFRwkgUE1DX0FERFJTSVpFOyAJLy8gUE1DIEFERFJTSVpFIFJFR0lTVEVSIA0KCUFUOTFfUkVHCSBQTUNfSVBOQU1FMTsgCS8vIFBNQyBJUE5BTUUxIFJFR0lTVEVSIA0KCUFUOTFfUkVHCSBQTUNfSVBOQU1FMjsgCS8vIFBNQyBJUE5BTUUyIFJFR0lTVEVSIA0KCUFUOTFfUkVHCSBQTUNfRkVBVFVSRVM7IAkvLyBQTUMgRkVBVFVSRVMgUkVHSVNURVIgDQoJQVQ5MV9SRUcJIFBNQ19WRVI7IAkvLyBBUE1DIFZFUlNJT04gUkVHSVNURVINCglBVDkxX1JFRwkgUmVzZXJ2ZWQ5WzY0XTsgCS8vIA0KCUFUOTFfUkVHCSBEQkdVX0NSOyAJLy8gQ29udHJvbCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBEQkdVX01SOyAJLy8gTW9kZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBEQkdVX0lFUjsgCS8vIEludGVycnVwdCBFbmFibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgREJHVV9JRFI7IAkvLyBJbnRlcnJ1cHQgRGlzYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBEQkdVX0lNUjsgCS8vIEludGVycnVwdCBNYXNrIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIERCR1VfQ1NSOyAJLy8gQ2hhbm5lbCBTdGF0dXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgREJHVV9SSFI7IAkvLyBSZWNlaXZlciBIb2xkaW5nIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIERCR1VfVEhSOyAJLy8gVHJhbnNtaXR0ZXIgSG9sZGluZyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBEQkdVX0JSR1I7IAkvLyBCYXVkIFJhdGUgR2VuZXJhdG9yIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkMTBbOV07IAkvLyANCglBVDkxX1JFRwkgREJHVV9GTlRSOyAJLy8gRm9yY2UgTlRSU1QgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQxMVs0MF07IAkvLyANCglBVDkxX1JFRwkgREJHVV9BRERSU0laRTsgCS8vIERCR1UgQUREUlNJWkUgUkVHSVNURVIgDQoJQVQ5MV9SRUcJIERCR1VfSVBOQU1FMTsgCS8vIERCR1UgSVBOQU1FMSBSRUdJU1RFUiANCglBVDkxX1JFRwkgREJHVV9JUE5BTUUyOyAJLy8gREJHVSBJUE5BTUUyIFJFR0lTVEVSIA0KCUFUOTFfUkVHCSBEQkdVX0ZFQVRVUkVTOyAJLy8gREJHVSBGRUFUVVJFUyBSRUdJU1RFUiANCglBVDkxX1JFRwkgREJHVV9WRVI7IAkvLyBEQkdVIFZFUlNJT04gUkVHSVNURVIgDQoJQVQ5MV9SRUcJIERCR1VfUlBSOyAJLy8gUmVjZWl2ZSBQb2ludGVyIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIERCR1VfUkNSOyAJLy8gUmVjZWl2ZSBDb3VudGVyIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIERCR1VfVFBSOyAJLy8gVHJhbnNtaXQgUG9pbnRlciBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBEQkdVX1RDUjsgCS8vIFRyYW5zbWl0IENvdW50ZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgREJHVV9STlBSOyAJLy8gUmVjZWl2ZSBOZXh0IFBvaW50ZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgREJHVV9STkNSOyAJLy8gUmVjZWl2ZSBOZXh0IENvdW50ZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgREJHVV9UTlBSOyAJLy8gVHJhbnNtaXQgTmV4dCBQb2ludGVyIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIERCR1VfVE5DUjsgCS8vIFRyYW5zbWl0IE5leHQgQ291bnRlciBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBEQkdVX1BUQ1I7IAkvLyBQREMgVHJhbnNmZXIgQ29udHJvbCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBEQkdVX1BUU1I7IAkvLyBQREMgVHJhbnNmZXIgU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkMTJbNl07IAkvLyANCglBVDkxX1JFRwkgREJHVV9DSURSOyAJLy8gQ2hpcCBJRCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBEQkdVX0VYSUQ7IAkvLyBDaGlwIElEIEV4dGVuc2lvbiBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDEzWzQ2XTsgCS8vIA0KCUFUOTFfUkVHCSBFRkMwX0ZNUjsgCS8vIEVGQyBGbGFzaCBNb2RlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIEVGQzBfRkNSOyAJLy8gRUZDIEZsYXNoIENvbW1hbmQgUmVnaXN0ZXINCglBVDkxX1JFRwkgRUZDMF9GU1I7IAkvLyBFRkMgRmxhc2ggU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIEVGQzBfRlJSOyAJLy8gRUZDIEZsYXNoIFJlc3VsdCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDE0WzFdOyAJLy8gDQoJQVQ5MV9SRUcJIEVGQzBfRlZSOyAJLy8gRUZDIEZsYXNoIFZlcnNpb24gUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQxNVsxMjJdOyAJLy8gDQoJQVQ5MV9SRUcJIEVGQzFfRk1SOyAJLy8gRUZDIEZsYXNoIE1vZGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgRUZDMV9GQ1I7IAkvLyBFRkMgRmxhc2ggQ29tbWFuZCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBFRkMxX0ZTUjsgCS8vIEVGQyBGbGFzaCBTdGF0dXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgRUZDMV9GUlI7IAkvLyBFRkMgRmxhc2ggUmVzdWx0IFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkMTZbMV07IAkvLyANCglBVDkxX1JFRwkgRUZDMV9GVlI7IAkvLyBFRkMgRmxhc2ggVmVyc2lvbiBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDE3WzEyMl07IAkvLyANCglBVDkxX1JFRwkgUElPQV9QRVI7IAkvLyBQSU8gRW5hYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT0FfUERSOyAJLy8gUElPIERpc2FibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQV9QU1I7IAkvLyBQSU8gU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkMThbMV07IAkvLyANCglBVDkxX1JFRwkgUElPQV9PRVI7IAkvLyBPdXRwdXQgRW5hYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT0FfT0RSOyAJLy8gT3V0cHV0IERpc2FibGUgUmVnaXN0ZXJyDQoJQVQ5MV9SRUcJIFBJT0FfT1NSOyAJLy8gT3V0cHV0IFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDE5WzFdOyAJLy8gDQoJQVQ5MV9SRUcJIFBJT0FfSUZFUjsgCS8vIElucHV0IEZpbHRlciBFbmFibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQV9JRkRSOyAJLy8gSW5wdXQgRmlsdGVyIERpc2FibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQV9JRlNSOyAJLy8gSW5wdXQgRmlsdGVyIFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDIwWzFdOyAJLy8gDQoJQVQ5MV9SRUcJIFBJT0FfU09EUjsgCS8vIFNldCBPdXRwdXQgRGF0YSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9BX0NPRFI7IAkvLyBDbGVhciBPdXRwdXQgRGF0YSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9BX09EU1I7IAkvLyBPdXRwdXQgRGF0YSBTdGF0dXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQV9QRFNSOyAJLy8gUGluIERhdGEgU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT0FfSUVSOyAJLy8gSW50ZXJydXB0IEVuYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9BX0lEUjsgCS8vIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT0FfSU1SOyAJLy8gSW50ZXJydXB0IE1hc2sgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQV9JU1I7IAkvLyBJbnRlcnJ1cHQgU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT0FfTURFUjsgCS8vIE11bHRpLWRyaXZlciBFbmFibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQV9NRERSOyAJLy8gTXVsdGktZHJpdmVyIERpc2FibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQV9NRFNSOyAJLy8gTXVsdGktZHJpdmVyIFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDIxWzFdOyAJLy8gDQoJQVQ5MV9SRUcJIFBJT0FfUFBVRFI7IAkvLyBQdWxsLXVwIERpc2FibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQV9QUFVFUjsgCS8vIFB1bGwtdXAgRW5hYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT0FfUFBVU1I7IAkvLyBQdWxsLXVwIFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDIyWzFdOyAJLy8gDQoJQVQ5MV9SRUcJIFBJT0FfQUJTUjsgCS8vIFBlcmlwaGVyYWwgQUIgU2VsZWN0IFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkMjNbM107IAkvLyANCglBVDkxX1JFRwkgUElPQV9TQ0lGU1I7IAkvLyBTeXN0ZW0gQ2xvY2sgR2xpdGNoIElucHV0IEZpbHRlciBTZWxlY3QgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQV9ESUZTUjsgCS8vIERlYm91bmNpbmcgSW5wdXQgRmlsdGVyIFNlbGVjdCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9BX0lGREdTUjsgCS8vIEdsaXRjaCBvciBEZWJvdW5jaW5nIElucHV0IEZpbHRlciBDbG9jayBTZWxlY3Rpb24gU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT0FfU0NEUjsgCS8vIFNsb3cgQ2xvY2sgRGl2aWRlciBEZWJvdW5jaW5nIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkMjRbNF07IAkvLyANCglBVDkxX1JFRwkgUElPQV9PV0VSOyAJLy8gT3V0cHV0IFdyaXRlIEVuYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9BX09XRFI7IAkvLyBPdXRwdXQgV3JpdGUgRGlzYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9BX09XU1I7IAkvLyBPdXRwdXQgV3JpdGUgU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkMjVbMV07IAkvLyANCglBVDkxX1JFRwkgUElPQV9BSU1FUjsgCS8vIEFkZGl0aW9uYWwgSW50ZXJydXB0IE1vZGVzIEVuYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9BX0FJTURSOyAJLy8gQWRkaXRpb25hbCBJbnRlcnJ1cHQgTW9kZXMgRGlzYWJsZXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQV9BSU1NUjsgCS8vIEFkZGl0aW9uYWwgSW50ZXJydXB0IE1vZGVzIE1hc2sgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQyNlsxXTsgCS8vIA0KCUFUOTFfUkVHCSBQSU9BX0VTUjsgCS8vIEVkZ2UgU2VsZWN0IFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT0FfTFNSOyAJLy8gTGV2ZWwgU2VsZWN0IFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT0FfRUxTUjsgCS8vIEVkZ2UvTGV2ZWwgU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkMjdbMV07IAkvLyANCglBVDkxX1JFRwkgUElPQV9GRUxMU1I7IAkvLyBGYWxsaW5nIEVkZ2UvTG93IExldmVsIFNlbGVjdCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9BX1JFSExTUjsgCS8vIFJpc2luZyBFZGdlLyBIaWdoIExldmVsIFNlbGVjdCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9BX0ZSTEhTUjsgCS8vIEZhbGwvUmlzZSAtIExvdy9IaWdoIFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDI4WzFdOyAJLy8gDQoJQVQ5MV9SRUcJIFBJT0FfTE9DS1NSOyAJLy8gTG9jayBTdGF0dXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQyOVs2XTsgCS8vIA0KCUFUOTFfUkVHCSBQSU9BX1ZFUjsgCS8vIFBJTyBWRVJTSU9OIFJFR0lTVEVSIA0KCUFUOTFfUkVHCSBSZXNlcnZlZDMwWzhdOyAJLy8gDQoJQVQ5MV9SRUcJIFBJT0FfS0VSOyAJLy8gS2V5cGFkIENvbnRyb2xsZXIgRW5hYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT0FfS1JDUjsgCS8vIEtleXBhZCBDb250cm9sbGVyIFJvdyBDb2x1bW4gUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQV9LRFI7IAkvLyBLZXlwYWQgQ29udHJvbGxlciBEZWJvdW5jaW5nIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkMzFbMV07IAkvLyANCglBVDkxX1JFRwkgUElPQV9LSUVSOyAJLy8gS2V5cGFkIENvbnRyb2xsZXIgSW50ZXJydXB0IEVuYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9BX0tJRFI7IAkvLyBLZXlwYWQgQ29udHJvbGxlciBJbnRlcnJ1cHQgRGlzYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9BX0tJTVI7IAkvLyBLZXlwYWQgQ29udHJvbGxlciBJbnRlcnJ1cHQgTWFzayBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9BX0tTUjsgCS8vIEtleXBhZCBDb250cm9sbGVyIFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9BX0tLUFI7IAkvLyBLZXlwYWQgQ29udHJvbGxlciBLZXkgUHJlc3MgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQV9LS1JSOyAJLy8gS2V5cGFkIENvbnRyb2xsZXIgS2V5IFJlbGVhc2UgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQzMls0Nl07IAkvLyANCglBVDkxX1JFRwkgUElPQl9QRVI7IAkvLyBQSU8gRW5hYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT0JfUERSOyAJLy8gUElPIERpc2FibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQl9QU1I7IAkvLyBQSU8gU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkMzNbMV07IAkvLyANCglBVDkxX1JFRwkgUElPQl9PRVI7IAkvLyBPdXRwdXQgRW5hYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT0JfT0RSOyAJLy8gT3V0cHV0IERpc2FibGUgUmVnaXN0ZXJyDQoJQVQ5MV9SRUcJIFBJT0JfT1NSOyAJLy8gT3V0cHV0IFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDM0WzFdOyAJLy8gDQoJQVQ5MV9SRUcJIFBJT0JfSUZFUjsgCS8vIElucHV0IEZpbHRlciBFbmFibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQl9JRkRSOyAJLy8gSW5wdXQgRmlsdGVyIERpc2FibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQl9JRlNSOyAJLy8gSW5wdXQgRmlsdGVyIFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDM1WzFdOyAJLy8gDQoJQVQ5MV9SRUcJIFBJT0JfU09EUjsgCS8vIFNldCBPdXRwdXQgRGF0YSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9CX0NPRFI7IAkvLyBDbGVhciBPdXRwdXQgRGF0YSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9CX09EU1I7IAkvLyBPdXRwdXQgRGF0YSBTdGF0dXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQl9QRFNSOyAJLy8gUGluIERhdGEgU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT0JfSUVSOyAJLy8gSW50ZXJydXB0IEVuYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9CX0lEUjsgCS8vIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT0JfSU1SOyAJLy8gSW50ZXJydXB0IE1hc2sgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQl9JU1I7IAkvLyBJbnRlcnJ1cHQgU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT0JfTURFUjsgCS8vIE11bHRpLWRyaXZlciBFbmFibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQl9NRERSOyAJLy8gTXVsdGktZHJpdmVyIERpc2FibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQl9NRFNSOyAJLy8gTXVsdGktZHJpdmVyIFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDM2WzFdOyAJLy8gDQoJQVQ5MV9SRUcJIFBJT0JfUFBVRFI7IAkvLyBQdWxsLXVwIERpc2FibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQl9QUFVFUjsgCS8vIFB1bGwtdXAgRW5hYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT0JfUFBVU1I7IAkvLyBQdWxsLXVwIFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDM3WzFdOyAJLy8gDQoJQVQ5MV9SRUcJIFBJT0JfQUJTUjsgCS8vIFBlcmlwaGVyYWwgQUIgU2VsZWN0IFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkMzhbM107IAkvLyANCglBVDkxX1JFRwkgUElPQl9TQ0lGU1I7IAkvLyBTeXN0ZW0gQ2xvY2sgR2xpdGNoIElucHV0IEZpbHRlciBTZWxlY3QgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQl9ESUZTUjsgCS8vIERlYm91bmNpbmcgSW5wdXQgRmlsdGVyIFNlbGVjdCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9CX0lGREdTUjsgCS8vIEdsaXRjaCBvciBEZWJvdW5jaW5nIElucHV0IEZpbHRlciBDbG9jayBTZWxlY3Rpb24gU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT0JfU0NEUjsgCS8vIFNsb3cgQ2xvY2sgRGl2aWRlciBEZWJvdW5jaW5nIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkMzlbNF07IAkvLyANCglBVDkxX1JFRwkgUElPQl9PV0VSOyAJLy8gT3V0cHV0IFdyaXRlIEVuYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9CX09XRFI7IAkvLyBPdXRwdXQgV3JpdGUgRGlzYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9CX09XU1I7IAkvLyBPdXRwdXQgV3JpdGUgU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkNDBbMV07IAkvLyANCglBVDkxX1JFRwkgUElPQl9BSU1FUjsgCS8vIEFkZGl0aW9uYWwgSW50ZXJydXB0IE1vZGVzIEVuYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9CX0FJTURSOyAJLy8gQWRkaXRpb25hbCBJbnRlcnJ1cHQgTW9kZXMgRGlzYWJsZXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQl9BSU1NUjsgCS8vIEFkZGl0aW9uYWwgSW50ZXJydXB0IE1vZGVzIE1hc2sgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQ0MVsxXTsgCS8vIA0KCUFUOTFfUkVHCSBQSU9CX0VTUjsgCS8vIEVkZ2UgU2VsZWN0IFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT0JfTFNSOyAJLy8gTGV2ZWwgU2VsZWN0IFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT0JfRUxTUjsgCS8vIEVkZ2UvTGV2ZWwgU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkNDJbMV07IAkvLyANCglBVDkxX1JFRwkgUElPQl9GRUxMU1I7IAkvLyBGYWxsaW5nIEVkZ2UvTG93IExldmVsIFNlbGVjdCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9CX1JFSExTUjsgCS8vIFJpc2luZyBFZGdlLyBIaWdoIExldmVsIFNlbGVjdCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9CX0ZSTEhTUjsgCS8vIEZhbGwvUmlzZSAtIExvdy9IaWdoIFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDQzWzFdOyAJLy8gDQoJQVQ5MV9SRUcJIFBJT0JfTE9DS1NSOyAJLy8gTG9jayBTdGF0dXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQ0NFs2XTsgCS8vIA0KCUFUOTFfUkVHCSBQSU9CX1ZFUjsgCS8vIFBJTyBWRVJTSU9OIFJFR0lTVEVSIA0KCUFUOTFfUkVHCSBSZXNlcnZlZDQ1WzhdOyAJLy8gDQoJQVQ5MV9SRUcJIFBJT0JfS0VSOyAJLy8gS2V5cGFkIENvbnRyb2xsZXIgRW5hYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT0JfS1JDUjsgCS8vIEtleXBhZCBDb250cm9sbGVyIFJvdyBDb2x1bW4gUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQl9LRFI7IAkvLyBLZXlwYWQgQ29udHJvbGxlciBEZWJvdW5jaW5nIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkNDZbMV07IAkvLyANCglBVDkxX1JFRwkgUElPQl9LSUVSOyAJLy8gS2V5cGFkIENvbnRyb2xsZXIgSW50ZXJydXB0IEVuYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9CX0tJRFI7IAkvLyBLZXlwYWQgQ29udHJvbGxlciBJbnRlcnJ1cHQgRGlzYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9CX0tJTVI7IAkvLyBLZXlwYWQgQ29udHJvbGxlciBJbnRlcnJ1cHQgTWFzayBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9CX0tTUjsgCS8vIEtleXBhZCBDb250cm9sbGVyIFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9CX0tLUFI7IAkvLyBLZXlwYWQgQ29udHJvbGxlciBLZXkgUHJlc3MgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQl9LS1JSOyAJLy8gS2V5cGFkIENvbnRyb2xsZXIgS2V5IFJlbGVhc2UgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQ0N1s0Nl07IAkvLyANCglBVDkxX1JFRwkgUElPQ19QRVI7IAkvLyBQSU8gRW5hYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT0NfUERSOyAJLy8gUElPIERpc2FibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQ19QU1I7IAkvLyBQSU8gU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkNDhbMV07IAkvLyANCglBVDkxX1JFRwkgUElPQ19PRVI7IAkvLyBPdXRwdXQgRW5hYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT0NfT0RSOyAJLy8gT3V0cHV0IERpc2FibGUgUmVnaXN0ZXJyDQoJQVQ5MV9SRUcJIFBJT0NfT1NSOyAJLy8gT3V0cHV0IFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDQ5WzFdOyAJLy8gDQoJQVQ5MV9SRUcJIFBJT0NfSUZFUjsgCS8vIElucHV0IEZpbHRlciBFbmFibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQ19JRkRSOyAJLy8gSW5wdXQgRmlsdGVyIERpc2FibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQ19JRlNSOyAJLy8gSW5wdXQgRmlsdGVyIFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDUwWzFdOyAJLy8gDQoJQVQ5MV9SRUcJIFBJT0NfU09EUjsgCS8vIFNldCBPdXRwdXQgRGF0YSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9DX0NPRFI7IAkvLyBDbGVhciBPdXRwdXQgRGF0YSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9DX09EU1I7IAkvLyBPdXRwdXQgRGF0YSBTdGF0dXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQ19QRFNSOyAJLy8gUGluIERhdGEgU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT0NfSUVSOyAJLy8gSW50ZXJydXB0IEVuYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9DX0lEUjsgCS8vIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT0NfSU1SOyAJLy8gSW50ZXJydXB0IE1hc2sgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQ19JU1I7IAkvLyBJbnRlcnJ1cHQgU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT0NfTURFUjsgCS8vIE11bHRpLWRyaXZlciBFbmFibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQ19NRERSOyAJLy8gTXVsdGktZHJpdmVyIERpc2FibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQ19NRFNSOyAJLy8gTXVsdGktZHJpdmVyIFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDUxWzFdOyAJLy8gDQoJQVQ5MV9SRUcJIFBJT0NfUFBVRFI7IAkvLyBQdWxsLXVwIERpc2FibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQ19QUFVFUjsgCS8vIFB1bGwtdXAgRW5hYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT0NfUFBVU1I7IAkvLyBQdWxsLXVwIFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDUyWzFdOyAJLy8gDQoJQVQ5MV9SRUcJIFBJT0NfQUJTUjsgCS8vIFBlcmlwaGVyYWwgQUIgU2VsZWN0IFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkNTNbM107IAkvLyANCglBVDkxX1JFRwkgUElPQ19TQ0lGU1I7IAkvLyBTeXN0ZW0gQ2xvY2sgR2xpdGNoIElucHV0IEZpbHRlciBTZWxlY3QgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQ19ESUZTUjsgCS8vIERlYm91bmNpbmcgSW5wdXQgRmlsdGVyIFNlbGVjdCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9DX0lGREdTUjsgCS8vIEdsaXRjaCBvciBEZWJvdW5jaW5nIElucHV0IEZpbHRlciBDbG9jayBTZWxlY3Rpb24gU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT0NfU0NEUjsgCS8vIFNsb3cgQ2xvY2sgRGl2aWRlciBEZWJvdW5jaW5nIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkNTRbNF07IAkvLyANCglBVDkxX1JFRwkgUElPQ19PV0VSOyAJLy8gT3V0cHV0IFdyaXRlIEVuYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9DX09XRFI7IAkvLyBPdXRwdXQgV3JpdGUgRGlzYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9DX09XU1I7IAkvLyBPdXRwdXQgV3JpdGUgU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkNTVbMV07IAkvLyANCglBVDkxX1JFRwkgUElPQ19BSU1FUjsgCS8vIEFkZGl0aW9uYWwgSW50ZXJydXB0IE1vZGVzIEVuYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9DX0FJTURSOyAJLy8gQWRkaXRpb25hbCBJbnRlcnJ1cHQgTW9kZXMgRGlzYWJsZXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQ19BSU1NUjsgCS8vIEFkZGl0aW9uYWwgSW50ZXJydXB0IE1vZGVzIE1hc2sgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQ1NlsxXTsgCS8vIA0KCUFUOTFfUkVHCSBQSU9DX0VTUjsgCS8vIEVkZ2UgU2VsZWN0IFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT0NfTFNSOyAJLy8gTGV2ZWwgU2VsZWN0IFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT0NfRUxTUjsgCS8vIEVkZ2UvTGV2ZWwgU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkNTdbMV07IAkvLyANCglBVDkxX1JFRwkgUElPQ19GRUxMU1I7IAkvLyBGYWxsaW5nIEVkZ2UvTG93IExldmVsIFNlbGVjdCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9DX1JFSExTUjsgCS8vIFJpc2luZyBFZGdlLyBIaWdoIExldmVsIFNlbGVjdCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9DX0ZSTEhTUjsgCS8vIEZhbGwvUmlzZSAtIExvdy9IaWdoIFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDU4WzFdOyAJLy8gDQoJQVQ5MV9SRUcJIFBJT0NfTE9DS1NSOyAJLy8gTG9jayBTdGF0dXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQ1OVs2XTsgCS8vIA0KCUFUOTFfUkVHCSBQSU9DX1ZFUjsgCS8vIFBJTyBWRVJTSU9OIFJFR0lTVEVSIA0KCUFUOTFfUkVHCSBSZXNlcnZlZDYwWzhdOyAJLy8gDQoJQVQ5MV9SRUcJIFBJT0NfS0VSOyAJLy8gS2V5cGFkIENvbnRyb2xsZXIgRW5hYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT0NfS1JDUjsgCS8vIEtleXBhZCBDb250cm9sbGVyIFJvdyBDb2x1bW4gUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQ19LRFI7IAkvLyBLZXlwYWQgQ29udHJvbGxlciBEZWJvdW5jaW5nIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkNjFbMV07IAkvLyANCglBVDkxX1JFRwkgUElPQ19LSUVSOyAJLy8gS2V5cGFkIENvbnRyb2xsZXIgSW50ZXJydXB0IEVuYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9DX0tJRFI7IAkvLyBLZXlwYWQgQ29udHJvbGxlciBJbnRlcnJ1cHQgRGlzYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9DX0tJTVI7IAkvLyBLZXlwYWQgQ29udHJvbGxlciBJbnRlcnJ1cHQgTWFzayBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9DX0tTUjsgCS8vIEtleXBhZCBDb250cm9sbGVyIFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9DX0tLUFI7IAkvLyBLZXlwYWQgQ29udHJvbGxlciBLZXkgUHJlc3MgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPQ19LS1JSOyAJLy8gS2V5cGFkIENvbnRyb2xsZXIgS2V5IFJlbGVhc2UgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQ2Mls0Nl07IAkvLyANCglBVDkxX1JFRwkgUlNUQ19SQ1I7IAkvLyBSZXNldCBDb250cm9sIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJTVENfUlNSOyAJLy8gUmVzZXQgU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJTVENfUk1SOyAJLy8gUmVzZXQgTW9kZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDYzWzFdOyAJLy8gDQoJQVQ5MV9SRUcJIFNVUENfQ1I7IAkvLyBDb250cm9sIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFNVUENfQk9NUjsgCS8vIEJyb3duIE91dCBNb2RlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFNVUENfTVI7IAkvLyBNb2RlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFNVUENfV1VNUjsgCS8vIFdha2UgVXAgTW9kZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBTVVBDX1dVSVI7IAkvLyBXYWtlIFVwIElucHV0cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBTVVBDX1NSOyAJLy8gU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFNVUENfRldVVFI7IAkvLyBGbGFzaCBXYWtlLXVwIFRpbWVyIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkNjRbMV07IAkvLyANCglBVDkxX1JFRwkgUlRUQ19SVE1SOyAJLy8gUmVhbC10aW1lIE1vZGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUlRUQ19SVEFSOyAJLy8gUmVhbC10aW1lIEFsYXJtIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJUVENfUlRWUjsgCS8vIFJlYWwtdGltZSBWYWx1ZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSVFRDX1JUU1I7IAkvLyBSZWFsLXRpbWUgU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkNjVbNF07IAkvLyANCglBVDkxX1JFRwkgV0RUQ19XRENSOyAJLy8gV2F0Y2hkb2cgQ29udHJvbCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBXRFRDX1dETVI7IAkvLyBXYXRjaGRvZyBNb2RlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFdEVENfV0RTUjsgCS8vIFdhdGNoZG9nIFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDY2WzFdOyAJLy8gDQoJQVQ5MV9SRUcJIFJUQ19DUjsgCS8vIENvbnRyb2wgUmVnaXN0ZXINCglBVDkxX1JFRwkgUlRDX01SOyAJLy8gTW9kZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSVENfVElNUjsgCS8vIFRpbWUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUlRDX0NBTFI7IAkvLyBDYWxlbmRhciBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSVENfVElNQUxSOyAJLy8gVGltZSBBbGFybSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSVENfQ0FMQUxSOyAJLy8gQ2FsZW5kYXIgQWxhcm0gUmVnaXN0ZXINCglBVDkxX1JFRwkgUlRDX1NSOyAJLy8gU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJUQ19TQ0NSOyAJLy8gU3RhdHVzIENsZWFyIENvbW1hbmQgUmVnaXN0ZXINCglBVDkxX1JFRwkgUlRDX0lFUjsgCS8vIEludGVycnVwdCBFbmFibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUlRDX0lEUjsgCS8vIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJUQ19JTVI7IAkvLyBJbnRlcnJ1cHQgTWFzayBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSVENfVkVSOyAJLy8gVmFsaWQgRW50cnkgUmVnaXN0ZXINCglBVDkxX1JFRwkgU1lTX0dQQlJbOF07IAkvLyBHZW5lcmFsIFB1cnBvc2UgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQ2N1sxOV07IAkvLyANCglBVDkxX1JFRwkgUlNUQ19WRVI7IAkvLyBWZXJzaW9uIFJlZ2lzdGVyDQp9IEFUOTFTX1NZUywgKkFUOTFQU19TWVM7DQojZWxzZQ0KI2RlZmluZSBHUEJSICAgICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMTI5MCkgLy8gKEdQQlIpIEdlbmVyYWwgUHVycG9zZSBSZWdpc3Rlcg0KDQojZW5kaWYNCi8vIC0tLS0tLS0tIEdQQlIgOiAoU1lTIE9mZnNldDogMHgxMjkwKSBHUEJSIEdlbmVyYWwgUHVycG9zZSBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfR1BCUl9HUFJWICAgICAgICgweDAgPDwgIDApIC8vIChTWVMpIEdlbmVyYWwgUHVycG9zZSBSZWdpc3RlciBWYWx1ZQ0KDQovLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KLy8gICAgICAgICAgICAgIFNPRlRXQVJFIEFQSSBERUZJTklUSU9OICBGT1IgSFNNQzQgQ2hpcCBTZWxlY3QgaW50ZXJmYWNlDQovLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KI2lmbmRlZiBfX0FTU0VNQkxZX18NCnR5cGVkZWYgc3RydWN0IF9BVDkxU19IU01DNF9DUyB7DQoJQVQ5MV9SRUcJIEhTTUM0X1NFVFVQOyAJLy8gU2V0dXAgUmVnaXN0ZXINCglBVDkxX1JFRwkgSFNNQzRfUFVMU0U7IAkvLyBQdWxzZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBIU01DNF9DWUNMRTsgCS8vIEN5Y2xlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIEhTTUM0X1RJTUlOR1M7IAkvLyBUaW1taW5ncyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBIU01DNF9NT0RFOyAJLy8gTW9kZSBSZWdpc3Rlcg0KfSBBVDkxU19IU01DNF9DUywgKkFUOTFQU19IU01DNF9DUzsNCiNlbHNlDQojZGVmaW5lIEhTTUM0X1NFVFVQICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDAwKSAvLyAoSFNNQzRfU0VUVVApIFNldHVwIFJlZ2lzdGVyDQojZGVmaW5lIEhTTUM0X1BVTFNFICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDA0KSAvLyAoSFNNQzRfUFVMU0UpIFB1bHNlIFJlZ2lzdGVyDQojZGVmaW5lIEhTTUM0X0NZQ0xFICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDA4KSAvLyAoSFNNQzRfQ1lDTEUpIEN5Y2xlIFJlZ2lzdGVyDQojZGVmaW5lIEhTTUM0X1RJTUlOR1MgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDBDKSAvLyAoSFNNQzRfVElNSU5HUykgVGltbWluZ3MgUmVnaXN0ZXINCiNkZWZpbmUgSFNNQzRfTU9ERSAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMTApIC8vIChIU01DNF9NT0RFKSBNb2RlIFJlZ2lzdGVyDQoNCiNlbmRpZg0KLy8gLS0tLS0tLS0gSFNNQzRfU0VUVVAgOiAoSFNNQzRfQ1MgT2Zmc2V0OiAweDApIEhTTUM0IFNFVFVQIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19IU01DNF9OV0VfU0VUVVAgKDB4M0YgPDwgIDApIC8vIChIU01DNF9DUykgTldFIFNldHVwIGxlbmd0aA0KI2RlZmluZSBBVDkxQ19IU01DNF9OQ1NfV1JfU0VUVVAgKDB4M0YgPDwgIDgpIC8vIChIU01DNF9DUykgTkNTIFNldHVwIGxlbmd0aCBpbiBXcml0ZSBhY2Nlc3MNCiNkZWZpbmUgQVQ5MUNfSFNNQzRfTlJEX1NFVFVQICgweDNGIDw8IDE2KSAvLyAoSFNNQzRfQ1MpIE5SRCBTZXR1cCBsZW5ndGgNCiNkZWZpbmUgQVQ5MUNfSFNNQzRfTkNTX1JEX1NFVFVQICgweDNGIDw8IDI0KSAvLyAoSFNNQzRfQ1MpIE5DUyBTZXR1cCBsZWdudGggaW4gUmVhZCBhY2Nlc3MNCi8vIC0tLS0tLS0tIEhTTUM0X1BVTFNFIDogKEhTTUM0X0NTIE9mZnNldDogMHg0KSBIU01DNCBQVUxTRSAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfSFNNQzRfTldFX1BVTFNFICgweDNGIDw8ICAwKSAvLyAoSFNNQzRfQ1MpIE5XRSBQdWxzZSBMZW5ndGgNCiNkZWZpbmUgQVQ5MUNfSFNNQzRfTkNTX1dSX1BVTFNFICgweDNGIDw8ICA4KSAvLyAoSFNNQzRfQ1MpIE5DUyBQdWxzZSBsZW5ndGggaW4gV1JJVEUgYWNjZXNzDQojZGVmaW5lIEFUOTFDX0hTTUM0X05SRF9QVUxTRSAoMHgzRiA8PCAxNikgLy8gKEhTTUM0X0NTKSBOUkQgUHVsc2UgbGVuZ3RoDQojZGVmaW5lIEFUOTFDX0hTTUM0X05DU19SRF9QVUxTRSAoMHgzRiA8PCAyNCkgLy8gKEhTTUM0X0NTKSBOQ1MgUHVsc2UgbGVuZ3RoIGluIFJFQUQgYWNjZXNzDQovLyAtLS0tLS0tLSBIU01DNF9DWUNMRSA6IChIU01DNF9DUyBPZmZzZXQ6IDB4OCkgSFNNQzQgQ1lDTEUgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX0hTTUM0X05XRV9DWUNMRSAoMHgxRkYgPDwgIDApIC8vIChIU01DNF9DUykgVG90YWwgV3JpdGUgQ3ljbGUgTGVuZ3RoDQojZGVmaW5lIEFUOTFDX0hTTUM0X05SRF9DWUNMRSAoMHgxRkYgPDwgMTYpIC8vIChIU01DNF9DUykgVG90YWwgUmVhZCBDeWNsZSBMZW5ndGgNCi8vIC0tLS0tLS0tIEhTTUM0X1RJTUlOR1MgOiAoSFNNQzRfQ1MgT2Zmc2V0OiAweGMpIEhTTUM0IFRJTUlOR1MgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX0hTTUM0X1RDTFIgICAgICAoMHhGIDw8ICAwKSAvLyAoSFNNQzRfQ1MpIENMRSB0byBSRU4gbG93IGRlbGF5DQojZGVmaW5lIEFUOTFDX0hTTUM0X1RBREwgICAgICAoMHhGIDw8ICA0KSAvLyAoSFNNQzRfQ1MpIEFMRSB0byBkYXRhIHN0YXJ0DQojZGVmaW5lIEFUOTFDX0hTTUM0X1RBUiAgICAgICAoMHhGIDw8ICA4KSAvLyAoSFNNQzRfQ1MpIEFMRSB0byBSRU4gbG93IGRlbGF5DQojZGVmaW5lIEFUOTFDX0hTTUM0X09DTVNFTiAgICAoMHgxIDw8IDEyKSAvLyAoSFNNQzRfQ1MpIE9mZiBDaGlwIE1lbW9yeSBTY3JhbWJsaW5nIEVuYWJsZQ0KI2RlZmluZSBBVDkxQ19IU01DNF9UUlIgICAgICAgKDB4RiA8PCAxNikgLy8gKEhTTUM0X0NTKSBSZWFkeSB0byBSRU4gbG93IGRlbGF5DQojZGVmaW5lIEFUOTFDX0hTTUM0X1RXQiAgICAgICAoMHhGIDw8IDI0KSAvLyAoSFNNQzRfQ1MpIFdFTiBoaWdoIHRvIFJFTiB0byBidXN5DQojZGVmaW5lIEFUOTFDX0hTTUM0X1JCTlNFTCAgICAoMHg3IDw8IDI4KSAvLyAoSFNNQzRfQ1MpIFJlYWR5L0J1c3kgTGluZSBTZWxlY3Rpb24NCiNkZWZpbmUgQVQ5MUNfSFNNQzRfTkZTRUwgICAgICgweDEgPDwgMzEpIC8vIChIU01DNF9DUykgTmFuZCBGbGFzaCBTZWxlY3Rpb24NCi8vIC0tLS0tLS0tIEhTTUM0X01PREUgOiAoSFNNQzRfQ1MgT2Zmc2V0OiAweDEwKSBIU01DNCBNT0RFIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19IU01DNF9SRUFEX01PREUgKDB4MSA8PCAgMCkgLy8gKEhTTUM0X0NTKSBSZWFkIE1vZGUNCiNkZWZpbmUgQVQ5MUNfSFNNQzRfV1JJVEVfTU9ERSAoMHgxIDw8ICAxKSAvLyAoSFNNQzRfQ1MpIFdyaXRlIE1vZGUNCiNkZWZpbmUgQVQ5MUNfSFNNQzRfRVhOV19NT0RFICgweDMgPDwgIDQpIC8vIChIU01DNF9DUykgTldBSVQgTW9kZQ0KI2RlZmluZSAJQVQ5MUNfSFNNQzRfRVhOV19NT0RFX05XQUlUX0RJU0FCTEUgICAgICAgICgweDAgPDwgIDQpIC8vIChIU01DNF9DUykgRXh0ZXJuYWwgTldBSVQgZGlzYWJsZWQuDQojZGVmaW5lIAlBVDkxQ19IU01DNF9FWE5XX01PREVfTldBSVRfRU5BQkxFX0ZST1pFTiAgKDB4MiA8PCAgNCkgLy8gKEhTTUM0X0NTKSBFeHRlcm5hbCBOV0FJVCBlbmFibGVkIGluIGZyb3plbiBtb2RlLg0KI2RlZmluZSAJQVQ5MUNfSFNNQzRfRVhOV19NT0RFX05XQUlUX0VOQUJMRV9SRUFEWSAgICgweDMgPDwgIDQpIC8vIChIU01DNF9DUykgRXh0ZXJuYWwgTldBSVQgZW5hYmxlZCBpbiByZWFkeSBtb2RlLg0KI2RlZmluZSBBVDkxQ19IU01DNF9CQVQgICAgICAgKDB4MSA8PCAgOCkgLy8gKEhTTUM0X0NTKSBCeXRlIEFjY2VzcyBUeXBlDQojZGVmaW5lIAlBVDkxQ19IU01DNF9CQVRfQllURV9TRUxFQ1QgICAgICAgICAgKDB4MCA8PCAgOCkgLy8gKEhTTUM0X0NTKSBXcml0ZSBjb250cm9sZWQgYnkgbmNzLCBuYnMwLCBuYnMxLCBuYnMyLCBuYnMzLiBSZWFkIGNvbnRyb2xlZCBieSBuY3MsIG5yZCwgbmJzMCwgbmJzMSwgbmJzMiwgbmJzMy4NCiNkZWZpbmUgCUFUOTFDX0hTTUM0X0JBVF9CWVRFX1dSSVRFICAgICAgICAgICAoMHgxIDw8ICA4KSAvLyAoSFNNQzRfQ1MpIFdyaXRlIGNvbnRyb2xlZCBieSBuY3MsIG53ZTAsIG53ZTEsIG53ZTIsIG53ZTMuIFJlYWQgY29udHJvbGVkIGJ5IG5jcyBhbmQgbnJkLg0KI2RlZmluZSBBVDkxQ19IU01DNF9EQlcgICAgICAgKDB4MyA8PCAxMikgLy8gKEhTTUM0X0NTKSBEYXRhIEJ1cyBXaWR0aA0KI2RlZmluZSAJQVQ5MUNfSFNNQzRfREJXX1dJRFRIX0VJR1RIX0JJVFMgICAgICgweDAgPDwgMTIpIC8vIChIU01DNF9DUykgOCBiaXRzLg0KI2RlZmluZSAJQVQ5MUNfSFNNQzRfREJXX1dJRFRIX1NJWFRFRU5fQklUUyAgICgweDEgPDwgMTIpIC8vIChIU01DNF9DUykgMTYgYml0cy4NCiNkZWZpbmUgCUFUOTFDX0hTTUM0X0RCV19XSURUSF9USElSVFlfVFdPX0JJVFMgKDB4MiA8PCAxMikgLy8gKEhTTUM0X0NTKSAzMiBiaXRzLg0KI2RlZmluZSBBVDkxQ19IU01DNF9UREZfQ1lDTEVTICgweEYgPDwgMTYpIC8vIChIU01DNF9DUykgRGF0YSBGbG9hdCBUaW1lLg0KI2RlZmluZSBBVDkxQ19IU01DNF9UREZfTU9ERSAgKDB4MSA8PCAyMCkgLy8gKEhTTUM0X0NTKSBUREYgRW5hYmxlZC4NCiNkZWZpbmUgQVQ5MUNfSFNNQzRfUE1FTiAgICAgICgweDEgPDwgMjQpIC8vIChIU01DNF9DUykgUGFnZSBNb2RlIEVuYWJsZWQuDQojZGVmaW5lIEFUOTFDX0hTTUM0X1BTICAgICAgICAoMHgzIDw8IDI4KSAvLyAoSFNNQzRfQ1MpIFBhZ2UgU2l6ZQ0KI2RlZmluZSAJQVQ5MUNfSFNNQzRfUFNfU0laRV9GT1VSX0JZVEVTICAgICAgKDB4MCA8PCAyOCkgLy8gKEhTTUM0X0NTKSA0IGJ5dGVzLg0KI2RlZmluZSAJQVQ5MUNfSFNNQzRfUFNfU0laRV9FSUdIVF9CWVRFUyAgICAgKDB4MSA8PCAyOCkgLy8gKEhTTUM0X0NTKSA4IGJ5dGVzLg0KI2RlZmluZSAJQVQ5MUNfSFNNQzRfUFNfU0laRV9TSVhURUVOX0JZVEVTICAgKDB4MiA8PCAyOCkgLy8gKEhTTUM0X0NTKSAxNiBieXRlcy4NCiNkZWZpbmUgCUFUOTFDX0hTTUM0X1BTX1NJWkVfVEhJUlRZX1RXT19CWVRFUyAoMHgzIDw8IDI4KSAvLyAoSFNNQzRfQ1MpIDMyIGJ5dGVzLg0KDQovLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KLy8gICAgICAgICAgICAgIFNPRlRXQVJFIEFQSSBERUZJTklUSU9OICBGT1IgQUhCIFN0YXRpYyBNZW1vcnkgQ29udHJvbGxlciA0IEludGVyZmFjZQ0KLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCiNpZm5kZWYgX19BU1NFTUJMWV9fDQp0eXBlZGVmIHN0cnVjdCBfQVQ5MVNfSFNNQzQgew0KCUFUOTFfUkVHCSBIU01DNF9DRkc7IAkvLyBDb25maWd1cmF0aW9uIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIEhTTUM0X0NUUkw7IAkvLyBDb250cm9sIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIEhTTUM0X1NSOyAJLy8gU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIEhTTUM0X0lFUjsgCS8vIEludGVycnVwdCBFbmFibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgSFNNQzRfSURSOyAJLy8gSW50ZXJydXB0IERpc2FibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgSFNNQzRfSU1SOyAJLy8gSW50ZXJydXB0IE1hc2sgUmVnaXN0ZXINCglBVDkxX1JFRwkgSFNNQzRfQUREUjsgCS8vIEFkZHJlc3MgQ3ljbGUgWmVybyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBIU01DNF9CQU5LOyAJLy8gQmFuayBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBIU01DNF9FQ0NDUjsgCS8vIEVDQyByZXNldCByZWdpc3Rlcg0KCUFUOTFfUkVHCSBIU01DNF9FQ0NDTUQ7IAkvLyBFQ0MgUGFnZSBzaXplIHJlZ2lzdGVyDQoJQVQ5MV9SRUcJIEhTTUM0X0VDQ1NSMTsgCS8vIEVDQyBTdGF0dXMgcmVnaXN0ZXIgMQ0KCUFUOTFfUkVHCSBIU01DNF9FQ0NQUjA7IAkvLyBFQ0MgUGFyaXR5IHJlZ2lzdGVyIDANCglBVDkxX1JFRwkgSFNNQzRfRUNDUFIxOyAJLy8gRUNDIFBhcml0eSByZWdpc3RlciAxDQoJQVQ5MV9SRUcJIEhTTUM0X0VDQ1NSMjsgCS8vIEVDQyBTdGF0dXMgcmVnaXN0ZXIgMg0KCUFUOTFfUkVHCSBIU01DNF9FQ0NQUjI7IAkvLyBFQ0MgUGFyaXR5IHJlZ2lzdGVyIDINCglBVDkxX1JFRwkgSFNNQzRfRUNDUFIzOyAJLy8gRUNDIFBhcml0eSByZWdpc3RlciAzDQoJQVQ5MV9SRUcJIEhTTUM0X0VDQ1BSNDsgCS8vIEVDQyBQYXJpdHkgcmVnaXN0ZXIgNA0KCUFUOTFfUkVHCSBIU01DNF9FQ0NQUjU7IAkvLyBFQ0MgUGFyaXR5IHJlZ2lzdGVyIDUNCglBVDkxX1JFRwkgSFNNQzRfRUNDUFI2OyAJLy8gRUNDIFBhcml0eSByZWdpc3RlciA2DQoJQVQ5MV9SRUcJIEhTTUM0X0VDQ1BSNzsgCS8vIEVDQyBQYXJpdHkgcmVnaXN0ZXIgNw0KCUFUOTFfUkVHCSBIU01DNF9FQ0NQUjg7IAkvLyBFQ0MgUGFyaXR5IHJlZ2lzdGVyIDgNCglBVDkxX1JFRwkgSFNNQzRfRUNDUFI5OyAJLy8gRUNDIFBhcml0eSByZWdpc3RlciA5DQoJQVQ5MV9SRUcJIEhTTUM0X0VDQ1BSMTA7IAkvLyBFQ0MgUGFyaXR5IHJlZ2lzdGVyIDEwDQoJQVQ5MV9SRUcJIEhTTUM0X0VDQ1BSMTE7IAkvLyBFQ0MgUGFyaXR5IHJlZ2lzdGVyIDExDQoJQVQ5MV9SRUcJIEhTTUM0X0VDQ1BSMTI7IAkvLyBFQ0MgUGFyaXR5IHJlZ2lzdGVyIDEyDQoJQVQ5MV9SRUcJIEhTTUM0X0VDQ1BSMTM7IAkvLyBFQ0MgUGFyaXR5IHJlZ2lzdGVyIDEzDQoJQVQ5MV9SRUcJIEhTTUM0X0VDQ1BSMTQ7IAkvLyBFQ0MgUGFyaXR5IHJlZ2lzdGVyIDE0DQoJQVQ5MV9SRUcJIEhTTUM0X0VjY3ByMTU7IAkvLyBFQ0MgUGFyaXR5IHJlZ2lzdGVyIDE1DQoJQVQ5MV9SRUcJIFJlc2VydmVkMFs0MF07IAkvLyANCglBVDkxX1JFRwkgSFNNQzRfT0NNUzsgCS8vIE9DTVMgTU9ERSByZWdpc3Rlcg0KCUFUOTFfUkVHCSBIU01DNF9LRVkxOyAJLy8gS0VZMSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBIU01DNF9LRVkyOyAJLy8gS0VZMiBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDFbNTBdOyAJLy8gDQoJQVQ5MV9SRUcJIEhTTUM0X1dQQ1I7IAkvLyBXcml0ZSBQcm90ZWN0aW9uIENvbnRyb2wgcmVnaXN0ZXINCglBVDkxX1JFRwkgSFNNQzRfV1BTUjsgCS8vIFdyaXRlIFByb3RlY3Rpb24gU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIEhTTUM0X0FERFJTSVpFOyAJLy8gV3JpdGUgUHJvdGVjdGlvbiBTdGF0dXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgSFNNQzRfSVBOQU1FMTsgCS8vIFdyaXRlIFByb3RlY3Rpb24gU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIEhTTUM0X0lQTkFNRTI7IAkvLyBXcml0ZSBQcm90ZWN0aW9uIFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBIU01DNF9GRUFUVVJFUzsgCS8vIFdyaXRlIFByb3RlY3Rpb24gU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIEhTTUM0X1ZFUjsgCS8vIEhTTUM0IFZlcnNpb24gUmVnaXN0ZXINCglBVDkxX1JFRwkgSFNNQzRfRFVNTVk7IAkvLyBUaGlzIHJ0ZWdpc3RlciB3YXMgY3JlYXRlZCBvbmx5IHRpIGhhdmUgQUhCIGNvbnN0YW50cw0KfSBBVDkxU19IU01DNCwgKkFUOTFQU19IU01DNDsNCiNlbHNlDQojZGVmaW5lIEhTTUM0X0NGRyAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDAwKSAvLyAoSFNNQzRfQ0ZHKSBDb25maWd1cmF0aW9uIFJlZ2lzdGVyDQojZGVmaW5lIEhTTUM0X0NUUkwgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDA0KSAvLyAoSFNNQzRfQ1RSTCkgQ29udHJvbCBSZWdpc3Rlcg0KI2RlZmluZSBIU01DNF9TUiAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAwOCkgLy8gKEhTTUM0X1NSKSBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgSFNNQzRfSUVSICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMEMpIC8vIChIU01DNF9JRVIpIEludGVycnVwdCBFbmFibGUgUmVnaXN0ZXINCiNkZWZpbmUgSFNNQzRfSURSICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMTApIC8vIChIU01DNF9JRFIpIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEhTTUM0X0lNUiAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDE0KSAvLyAoSFNNQzRfSU1SKSBJbnRlcnJ1cHQgTWFzayBSZWdpc3Rlcg0KI2RlZmluZSBIU01DNF9BRERSICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAxOCkgLy8gKEhTTUM0X0FERFIpIEFkZHJlc3MgQ3ljbGUgWmVybyBSZWdpc3Rlcg0KI2RlZmluZSBIU01DNF9CQU5LICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAxQykgLy8gKEhTTUM0X0JBTkspIEJhbmsgUmVnaXN0ZXINCiNkZWZpbmUgSFNNQzRfRUNDQ1IgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMjApIC8vIChIU01DNF9FQ0NDUikgRUNDIHJlc2V0IHJlZ2lzdGVyDQojZGVmaW5lIEhTTUM0X0VDQ0NNRCAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDI0KSAvLyAoSFNNQzRfRUNDQ01EKSBFQ0MgUGFnZSBzaXplIHJlZ2lzdGVyDQojZGVmaW5lIEhTTUM0X0VDQ1NSMSAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDI4KSAvLyAoSFNNQzRfRUNDU1IxKSBFQ0MgU3RhdHVzIHJlZ2lzdGVyIDENCiNkZWZpbmUgSFNNQzRfRUNDUFIwICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMkMpIC8vIChIU01DNF9FQ0NQUjApIEVDQyBQYXJpdHkgcmVnaXN0ZXIgMA0KI2RlZmluZSBIU01DNF9FQ0NQUjEgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAzMCkgLy8gKEhTTUM0X0VDQ1BSMSkgRUNDIFBhcml0eSByZWdpc3RlciAxDQojZGVmaW5lIEhTTUM0X0VDQ1NSMiAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDM0KSAvLyAoSFNNQzRfRUNDU1IyKSBFQ0MgU3RhdHVzIHJlZ2lzdGVyIDINCiNkZWZpbmUgSFNNQzRfRUNDUFIyICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMzgpIC8vIChIU01DNF9FQ0NQUjIpIEVDQyBQYXJpdHkgcmVnaXN0ZXIgMg0KI2RlZmluZSBIU01DNF9FQ0NQUjMgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAzQykgLy8gKEhTTUM0X0VDQ1BSMykgRUNDIFBhcml0eSByZWdpc3RlciAzDQojZGVmaW5lIEhTTUM0X0VDQ1BSNCAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDQwKSAvLyAoSFNNQzRfRUNDUFI0KSBFQ0MgUGFyaXR5IHJlZ2lzdGVyIDQNCiNkZWZpbmUgSFNNQzRfRUNDUFI1ICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNDQpIC8vIChIU01DNF9FQ0NQUjUpIEVDQyBQYXJpdHkgcmVnaXN0ZXIgNQ0KI2RlZmluZSBIU01DNF9FQ0NQUjYgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDA0OCkgLy8gKEhTTUM0X0VDQ1BSNikgRUNDIFBhcml0eSByZWdpc3RlciA2DQojZGVmaW5lIEhTTUM0X0VDQ1BSNyAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDRDKSAvLyAoSFNNQzRfRUNDUFI3KSBFQ0MgUGFyaXR5IHJlZ2lzdGVyIDcNCiNkZWZpbmUgSFNNQzRfRUNDUFI4ICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNTApIC8vIChIU01DNF9FQ0NQUjgpIEVDQyBQYXJpdHkgcmVnaXN0ZXIgOA0KI2RlZmluZSBIU01DNF9FQ0NQUjkgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDA1NCkgLy8gKEhTTUM0X0VDQ1BSOSkgRUNDIFBhcml0eSByZWdpc3RlciA5DQojZGVmaW5lIEhTTUM0X0VDQ1BSMTAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDU4KSAvLyAoSFNNQzRfRUNDUFIxMCkgRUNDIFBhcml0eSByZWdpc3RlciAxMA0KI2RlZmluZSBIU01DNF9FQ0NQUjExICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDA1QykgLy8gKEhTTUM0X0VDQ1BSMTEpIEVDQyBQYXJpdHkgcmVnaXN0ZXIgMTENCiNkZWZpbmUgSFNNQzRfRUNDUFIxMiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNjApIC8vIChIU01DNF9FQ0NQUjEyKSBFQ0MgUGFyaXR5IHJlZ2lzdGVyIDEyDQojZGVmaW5lIEhTTUM0X0VDQ1BSMTMgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDY0KSAvLyAoSFNNQzRfRUNDUFIxMykgRUNDIFBhcml0eSByZWdpc3RlciAxMw0KI2RlZmluZSBIU01DNF9FQ0NQUjE0ICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDA2OCkgLy8gKEhTTUM0X0VDQ1BSMTQpIEVDQyBQYXJpdHkgcmVnaXN0ZXIgMTQNCiNkZWZpbmUgSHNtYzRfRWNjcHIxNSAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNkMpIC8vIChIc21jNF9FY2NwcjE1KSBFQ0MgUGFyaXR5IHJlZ2lzdGVyIDE1DQojZGVmaW5lIEhTTUM0X09DTVMgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMTEwKSAvLyAoSFNNQzRfT0NNUykgT0NNUyBNT0RFIHJlZ2lzdGVyDQojZGVmaW5lIEhTTUM0X0tFWTEgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMTE0KSAvLyAoSFNNQzRfS0VZMSkgS0VZMSBSZWdpc3Rlcg0KI2RlZmluZSBIU01DNF9LRVkyICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDExOCkgLy8gKEhTTUM0X0tFWTIpIEtFWTIgUmVnaXN0ZXINCiNkZWZpbmUgSFNNQzRfV1BDUiAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxRTQpIC8vIChIU01DNF9XUENSKSBXcml0ZSBQcm90ZWN0aW9uIENvbnRyb2wgcmVnaXN0ZXINCiNkZWZpbmUgSFNNQzRfV1BTUiAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxRTgpIC8vIChIU01DNF9XUFNSKSBXcml0ZSBQcm90ZWN0aW9uIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBIU01DNF9BRERSU0laRSAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDFFQykgLy8gKEhTTUM0X0FERFJTSVpFKSBXcml0ZSBQcm90ZWN0aW9uIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBIU01DNF9JUE5BTUUxICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDFGMCkgLy8gKEhTTUM0X0lQTkFNRTEpIFdyaXRlIFByb3RlY3Rpb24gU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEhTTUM0X0lQTkFNRTIgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMUY0KSAvLyAoSFNNQzRfSVBOQU1FMikgV3JpdGUgUHJvdGVjdGlvbiBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgSFNNQzRfRkVBVFVSRVMgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxRjgpIC8vIChIU01DNF9GRUFUVVJFUykgV3JpdGUgUHJvdGVjdGlvbiBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgSFNNQzRfVkVSICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxRkMpIC8vIChIU01DNF9WRVIpIEhTTUM0IFZlcnNpb24gUmVnaXN0ZXINCiNkZWZpbmUgSFNNQzRfRFVNTVkgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAyMDApIC8vIChIU01DNF9EVU1NWSkgVGhpcyBydGVnaXN0ZXIgd2FzIGNyZWF0ZWQgb25seSB0aSBoYXZlIEFIQiBjb25zdGFudHMNCg0KI2VuZGlmDQovLyAtLS0tLS0tLSBIU01DNF9DRkcgOiAoSFNNQzQgT2Zmc2V0OiAweDApIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX0hTTUM0X1BBR0VTSVpFICAoMHgzIDw8ICAwKSAvLyAoSFNNQzQpIFBBR0VTSVpFIGZpZWxkIGRlc2NyaXB0aW9uDQojZGVmaW5lIAlBVDkxQ19IU01DNF9QQUdFU0laRV81MjhfQnl0ZXMgICAgICAgICAgICAoMHgwKSAvLyAoSFNNQzQpIDUxMiBieXRlcyBwbHVzIDE2IGJ5dGVzIHBhZ2Ugc2l6ZQ0KI2RlZmluZSAJQVQ5MUNfSFNNQzRfUEFHRVNJWkVfMTA1Nl9CeXRlcyAgICAgICAgICAgKDB4MSkgLy8gKEhTTUM0KSAxMDI0IGJ5dGVzIHBsdXMgMzIgYnl0ZXMgcGFnZSBzaXplDQojZGVmaW5lIAlBVDkxQ19IU01DNF9QQUdFU0laRV8yMTEyX0J5dGVzICAgICAgICAgICAoMHgyKSAvLyAoSFNNQzQpIDIwNDggYnl0ZXMgcGx1cyA2NCBieXRlcyBwYWdlIHNpemUNCiNkZWZpbmUgCUFUOTFDX0hTTUM0X1BBR0VTSVpFXzQyMjRfQnl0ZXMgICAgICAgICAgICgweDMpIC8vIChIU01DNCkgNDA5NiBieXRlcyBwbHVzIDEyOCBieXRlcyBwYWdlIHNpemUNCiNkZWZpbmUgQVQ5MUNfSFNNQzRfV1NQQVJFICAgICgweDEgPDwgIDgpIC8vIChIU01DNCkgU3BhcmUgYXJlYSBhY2Nlc3MgaW4gV3JpdGUgTW9kZQ0KI2RlZmluZSBBVDkxQ19IU01DNF9SU1BBUkUgICAgKDB4MSA8PCAgOSkgLy8gKEhTTUM0KSBTcGFyZSBhcmVhIGFjY2VzcyBpbiBSZWFkIE1vZGUNCiNkZWZpbmUgQVQ5MUNfSFNNQzRfRURHRUNUUkwgICgweDEgPDwgMTIpIC8vIChIU01DNCkgUmlzaW5nL0ZhbGxpbmcgRWRnZSBEZXRlY3Rpb24gQ29udHJvbA0KI2RlZmluZSBBVDkxQ19IU01DNF9SQkVER0UgICAgKDB4MSA8PCAxMykgLy8gKEhTTUM0KSBSZWFkeS9CdXN5IFNpZ25hbCBlZGdlIERldGVjdGlvbg0KI2RlZmluZSBBVDkxQ19IU01DNF9EVE9DWUMgICAgKDB4RiA8PCAxNikgLy8gKEhTTUM0KSBEYXRhIFRpbWVvdXQgQ3ljbGUgTnVtYmVyDQojZGVmaW5lIEFUOTFDX0hTTUM0X0RUT01VTCAgICAoMHg3IDw8IDIwKSAvLyAoSFNNQzQpIERhdGEgVGltZW91dCBNdWx0aXBsaWVyDQojZGVmaW5lIAlBVDkxQ19IU01DNF9EVE9NVUxfMSAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAyMCkgLy8gKEhTTUM0KSBEVE9DWUMgeCAxDQojZGVmaW5lIAlBVDkxQ19IU01DNF9EVE9NVUxfMTYgICAgICAgICAgICAgICAgICAgKDB4MSA8PCAyMCkgLy8gKEhTTUM0KSBEVE9DWUMgeCAxNg0KI2RlZmluZSAJQVQ5MUNfSFNNQzRfRFRPTVVMXzEyOCAgICAgICAgICAgICAgICAgICgweDIgPDwgMjApIC8vIChIU01DNCkgRFRPQ1lDIHggMTI4DQojZGVmaW5lIAlBVDkxQ19IU01DNF9EVE9NVUxfMjU2ICAgICAgICAgICAgICAgICAgKDB4MyA8PCAyMCkgLy8gKEhTTUM0KSBEVE9DWUMgeCAyNTYNCiNkZWZpbmUgCUFUOTFDX0hTTUM0X0RUT01VTF8xMDI0ICAgICAgICAgICAgICAgICAoMHg0IDw8IDIwKSAvLyAoSFNNQzQpIERUT0NZQyB4IDEwMjQNCiNkZWZpbmUgCUFUOTFDX0hTTUM0X0RUT01VTF80MDk2ICAgICAgICAgICAgICAgICAoMHg1IDw8IDIwKSAvLyAoSFNNQzQpIERUT0NZQyB4IDQwOTYNCiNkZWZpbmUgCUFUOTFDX0hTTUM0X0RUT01VTF82NTUzNiAgICAgICAgICAgICAgICAoMHg2IDw8IDIwKSAvLyAoSFNNQzQpIERUT0NZQyB4IDY1NTM2DQojZGVmaW5lIAlBVDkxQ19IU01DNF9EVE9NVUxfMTA0ODU3NiAgICAgICAgICAgICAgKDB4NyA8PCAyMCkgLy8gKEhTTUM0KSBEVE9DWUMgeCAxMDQ4NTc2DQovLyAtLS0tLS0tLSBIU01DNF9DVFJMIDogKEhTTUM0IE9mZnNldDogMHg0KSBDb250cm9sIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19IU01DNF9ORkNFTiAgICAgKDB4MSA8PCAgMCkgLy8gKEhTTUM0KSBOYW5kIEZsYXNoIENvbnRyb2xsZXIgSG9zdCBFbmFibGUNCiNkZWZpbmUgQVQ5MUNfSFNNQzRfTkZDRElTICAgICgweDEgPDwgIDEpIC8vIChIU01DNCkgTmFuZCBGbGFzaCBDb250cm9sbGVyIEhvc3QgRGlzYWJsZQ0KI2RlZmluZSBBVDkxQ19IU01DNF9IT1NURU4gICAgKDB4MSA8PCAgOCkgLy8gKEhTTUM0KSBJZiBzZXQgdG8gb25lLCB0aGUgSG9zdCBjb250cm9sbGVyIGlzIGFjdGl2YXRlZCBhbmQgcGVyZm9ybSBhIGRhdGEgdHJhbnNmZXIgcGhhc2UuDQojZGVmaW5lIEFUOTFDX0hTTUM0X0hPU1RXUiAgICAoMHgxIDw8IDExKSAvLyAoSFNNQzQpIElmIHRoaXMgZmllbGQgaXMgc2V0IHRvIG9uZSwgdGhlIGhvc3QgdHJhbnNmZXJzIGRhdGEgZnJvbSB0aGUgaW50ZXJuYWwgU1JBTSB0byB0aGUgTWVtb3J5IERldmljZS4NCiNkZWZpbmUgQVQ5MUNfSFNNQzRfSE9TVENTSUQgICgweDcgPDwgMTIpIC8vIChIU01DNCkgSG9zdCBDb250cm9sbGVyIENoaXAgc2VsZWN0IElkDQojZGVmaW5lIAlBVDkxQ19IU01DNF9IT1NUQ1NJRF8wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8IDEyKSAvLyAoSFNNQzQpIENTMA0KI2RlZmluZSAJQVQ5MUNfSFNNQzRfSE9TVENTSURfMSAgICAgICAgICAgICAgICAgICAgKDB4MSA8PCAxMikgLy8gKEhTTUM0KSBDUzENCiNkZWZpbmUgCUFUOTFDX0hTTUM0X0hPU1RDU0lEXzIgICAgICAgICAgICAgICAgICAgICgweDIgPDwgMTIpIC8vIChIU01DNCkgQ1MyDQojZGVmaW5lIAlBVDkxQ19IU01DNF9IT1NUQ1NJRF8zICAgICAgICAgICAgICAgICAgICAoMHgzIDw8IDEyKSAvLyAoSFNNQzQpIENTMw0KI2RlZmluZSAJQVQ5MUNfSFNNQzRfSE9TVENTSURfNCAgICAgICAgICAgICAgICAgICAgKDB4NCA8PCAxMikgLy8gKEhTTUM0KSBDUzQNCiNkZWZpbmUgCUFUOTFDX0hTTUM0X0hPU1RDU0lEXzUgICAgICAgICAgICAgICAgICAgICgweDUgPDwgMTIpIC8vIChIU01DNCkgQ1M1DQojZGVmaW5lIAlBVDkxQ19IU01DNF9IT1NUQ1NJRF82ICAgICAgICAgICAgICAgICAgICAoMHg2IDw8IDEyKSAvLyAoSFNNQzQpIENTNg0KI2RlZmluZSAJQVQ5MUNfSFNNQzRfSE9TVENTSURfNyAgICAgICAgICAgICAgICAgICAgKDB4NyA8PCAxMikgLy8gKEhTTUM0KSBDUzcNCiNkZWZpbmUgQVQ5MUNfSFNNQzRfVkFMSUQgICAgICgweDEgPDwgMTUpIC8vIChIU01DNCkgV2hlbiBzZXQgdG8gMSwgYSB3cml0ZSBvcGVyYXRpb24gbW9kaWZpZXMgYm90aCBIT1NUQ1NJRCBhbmQgSE9TVFdSIGZpZWxkcy4NCi8vIC0tLS0tLS0tIEhTTUM0X1NSIDogKEhTTUM0IE9mZnNldDogMHg4KSBIU01DNCBTdGF0dXMgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX0hTTUM0X05GQ1NUUyAgICAoMHgxIDw8ICAwKSAvLyAoSFNNQzQpIE5hbmQgRmxhc2ggQ29udHJvbGxlciBzdGF0dXMNCiNkZWZpbmUgQVQ5MUNfSFNNQzRfUkJSSVNFICAgICgweDEgPDwgIDQpIC8vIChIU01DNCkgU2VsZWN0ZWQgUmVhZHkgQnVzeSBSaXNpbmcgRWRnZSBEZXRlY3RlZCBmbGFnDQojZGVmaW5lIEFUOTFDX0hTTUM0X1JCRkFMTCAgICAoMHgxIDw8ICA1KSAvLyAoSFNNQzQpIFNlbGVjdGVkIFJlYWR5IEJ1c3kgRmFsbGluZyBFZGdlIERldGVjdGVkIGZsYWcNCiNkZWZpbmUgQVQ5MUNfSFNNQzRfSE9TVEJVU1kgICgweDEgPDwgIDgpIC8vIChIU01DNCkgSG9zdCBCdXN5DQojZGVmaW5lIEFUOTFDX0hTTUM0X0hPU1RXICAgICAoMHgxIDw8IDExKSAvLyAoSFNNQzQpIEhvc3QgV3JpdGUvUmVhZCBPcGVyYXRpb24NCiNkZWZpbmUgQVQ5MUNfSFNNQzRfSE9TVENTICAgICgweDcgPDwgMTIpIC8vIChIU01DNCkgSG9zdCBDb250cm9sbGVyIENoaXAgc2VsZWN0IElkDQojZGVmaW5lIAlBVDkxQ19IU01DNF9IT1NUQ1NfMCAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAxMikgLy8gKEhTTUM0KSBDUzANCiNkZWZpbmUgCUFUOTFDX0hTTUM0X0hPU1RDU18xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8IDEyKSAvLyAoSFNNQzQpIENTMQ0KI2RlZmluZSAJQVQ5MUNfSFNNQzRfSE9TVENTXzIgICAgICAgICAgICAgICAgICAgICgweDIgPDwgMTIpIC8vIChIU01DNCkgQ1MyDQojZGVmaW5lIAlBVDkxQ19IU01DNF9IT1NUQ1NfMyAgICAgICAgICAgICAgICAgICAgKDB4MyA8PCAxMikgLy8gKEhTTUM0KSBDUzMNCiNkZWZpbmUgCUFUOTFDX0hTTUM0X0hPU1RDU180ICAgICAgICAgICAgICAgICAgICAoMHg0IDw8IDEyKSAvLyAoSFNNQzQpIENTNA0KI2RlZmluZSAJQVQ5MUNfSFNNQzRfSE9TVENTXzUgICAgICAgICAgICAgICAgICAgICgweDUgPDwgMTIpIC8vIChIU01DNCkgQ1M1DQojZGVmaW5lIAlBVDkxQ19IU01DNF9IT1NUQ1NfNiAgICAgICAgICAgICAgICAgICAgKDB4NiA8PCAxMikgLy8gKEhTTUM0KSBDUzYNCiNkZWZpbmUgCUFUOTFDX0hTTUM0X0hPU1RDU183ICAgICAgICAgICAgICAgICAgICAoMHg3IDw8IDEyKSAvLyAoSFNNQzQpIENTNw0KI2RlZmluZSBBVDkxQ19IU01DNF9YRlJET05FICAgKDB4MSA8PCAxNikgLy8gKEhTTUM0KSBIb3N0IERhdGEgVHJhbnNmZXIgVGVybWluYXRlZA0KI2RlZmluZSBBVDkxQ19IU01DNF9DTURET05FICAgKDB4MSA8PCAxNykgLy8gKEhTTUM0KSBDb21tYW5kIERvbmUNCiNkZWZpbmUgQVQ5MUNfSFNNQzRfRUNDUkRZICAgICgweDEgPDwgMTgpIC8vIChIU01DNCkgRUNDIHJlYWR5DQojZGVmaW5lIEFUOTFDX0hTTUM0X0RUT0UgICAgICAoMHgxIDw8IDIwKSAvLyAoSFNNQzQpIERhdGEgdGltZW91dCBFcnJvcg0KI2RlZmluZSBBVDkxQ19IU01DNF9VTkRFRiAgICAgKDB4MSA8PCAyMSkgLy8gKEhTTUM0KSBVbmRlZmluZWQgQXJlYSBFcnJvcg0KI2RlZmluZSBBVDkxQ19IU01DNF9BV0IgICAgICAgKDB4MSA8PCAyMikgLy8gKEhTTUM0KSBBY2Nlc3NpbmcgV2hpbGUgQnVzeSBFcnJvcg0KI2RlZmluZSBBVDkxQ19IU01DNF9IQVNFICAgICAgKDB4MSA8PCAyMykgLy8gKEhTTUM0KSBIb3N0IENvbnRyb2xsZXIgQWNjZXNzIFNpemUgRXJyb3INCiNkZWZpbmUgQVQ5MUNfSFNNQzRfUkJFREdFMCAgICgweDEgPDwgMjQpIC8vIChIU01DNCkgUmVhZHkgQnVzeSBsaW5lIDAgRWRnZSBkZXRlY3RlZA0KI2RlZmluZSBBVDkxQ19IU01DNF9SQkVER0UxICAgKDB4MSA8PCAyNSkgLy8gKEhTTUM0KSBSZWFkeSBCdXN5IGxpbmUgMSBFZGdlIGRldGVjdGVkDQojZGVmaW5lIEFUOTFDX0hTTUM0X1JCRURHRTIgICAoMHgxIDw8IDI2KSAvLyAoSFNNQzQpIFJlYWR5IEJ1c3kgbGluZSAyIEVkZ2UgZGV0ZWN0ZWQNCiNkZWZpbmUgQVQ5MUNfSFNNQzRfUkJFREdFMyAgICgweDEgPDwgMjcpIC8vIChIU01DNCkgUmVhZHkgQnVzeSBsaW5lIDMgRWRnZSBkZXRlY3RlZA0KI2RlZmluZSBBVDkxQ19IU01DNF9SQkVER0U0ICAgKDB4MSA8PCAyOCkgLy8gKEhTTUM0KSBSZWFkeSBCdXN5IGxpbmUgNCBFZGdlIGRldGVjdGVkDQojZGVmaW5lIEFUOTFDX0hTTUM0X1JCRURHRTUgICAoMHgxIDw8IDI5KSAvLyAoSFNNQzQpIFJlYWR5IEJ1c3kgbGluZSA1IEVkZ2UgZGV0ZWN0ZWQNCiNkZWZpbmUgQVQ5MUNfSFNNQzRfUkJFREdFNiAgICgweDEgPDwgMzApIC8vIChIU01DNCkgUmVhZHkgQnVzeSBsaW5lIDYgRWRnZSBkZXRlY3RlZA0KI2RlZmluZSBBVDkxQ19IU01DNF9SQkVER0U3ICAgKDB4MSA8PCAzMSkgLy8gKEhTTUM0KSBSZWFkeSBCdXN5IGxpbmUgNyBFZGdlIGRldGVjdGVkDQovLyAtLS0tLS0tLSBIU01DNF9JRVIgOiAoSFNNQzQgT2Zmc2V0OiAweGMpIEhTTUM0IEludGVycnVwdCBFbmFibGUgUmVnaXN0ZXIgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBIU01DNF9JRFIgOiAoSFNNQzQgT2Zmc2V0OiAweDEwKSBIU01DNCBJbnRlcnJ1cHQgRGlzYWJsZSBSZWdpc3RlciAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIEhTTUM0X0lNUiA6IChIU01DNCBPZmZzZXQ6IDB4MTQpIEhTTUM0IEludGVycnVwdCBNYXNrIFJlZ2lzdGVyIC0tLS0tLS0tIA0KLy8gLS0tLS0tLS0gSFNNQzRfQUREUiA6IChIU01DNCBPZmZzZXQ6IDB4MTgpIEFkZHJlc3MgQ3ljbGUgWmVybyBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfSFNNQzRfQUREUkNZQ0xFMCAoMHhGRiA8PCAgMCkgLy8gKEhTTUM0KSBOYW5kIEZsYXNoIEFycmF5IEFkZHJlc3MgY3ljbGUgMA0KLy8gLS0tLS0tLS0gSFNNQzRfQkFOSyA6IChIU01DNCBPZmZzZXQ6IDB4MWMpIEJhbmsgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX0JBTksgICAgICAgICAgICAoMHg3IDw8ICAwKSAvLyAoSFNNQzQpIEJhbmsgaWRlbnRpZmllcg0KI2RlZmluZSAJQVQ5MUNfQkFOS18wICAgICAgICAgICAgICAgICAgICAoMHgwKSAvLyAoSFNNQzQpIEJBTkswDQojZGVmaW5lIAlBVDkxQ19CQU5LXzEgICAgICAgICAgICAgICAgICAgICgweDEpIC8vIChIU01DNCkgQkFOSzENCiNkZWZpbmUgCUFUOTFDX0JBTktfMiAgICAgICAgICAgICAgICAgICAgKDB4MikgLy8gKEhTTUM0KSBCQU5LMg0KI2RlZmluZSAJQVQ5MUNfQkFOS18zICAgICAgICAgICAgICAgICAgICAoMHgzKSAvLyAoSFNNQzQpIEJBTkszDQojZGVmaW5lIAlBVDkxQ19CQU5LXzQgICAgICAgICAgICAgICAgICAgICgweDQpIC8vIChIU01DNCkgQkFOSzQNCiNkZWZpbmUgCUFUOTFDX0JBTktfNSAgICAgICAgICAgICAgICAgICAgKDB4NSkgLy8gKEhTTUM0KSBCQU5LNQ0KI2RlZmluZSAJQVQ5MUNfQkFOS182ICAgICAgICAgICAgICAgICAgICAoMHg2KSAvLyAoSFNNQzQpIEJBTks2DQojZGVmaW5lIAlBVDkxQ19CQU5LXzcgICAgICAgICAgICAgICAgICAgICgweDcpIC8vIChIU01DNCkgQkFOSzcNCi8vIC0tLS0tLS0tIEhTTUM0X0VDQ0NSIDogKEhTTUM0IE9mZnNldDogMHgyMCkgRUNDIENvbnRyb2wgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX0hTTUM0X0VDQ1JFU0VUICAoMHgxIDw8ICAwKSAvLyAoSFNNQzQpIFJlc2V0IEVDQw0KLy8gLS0tLS0tLS0gSFNNQzRfRUNDQ01EIDogKEhTTUM0IE9mZnNldDogMHgyNCkgRUNDIG1vZGUgcmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX0VDQ19QQUdFX1NJWkUgICAoMHgzIDw8ICAwKSAvLyAoSFNNQzQpIE5hbmQgRmxhc2ggcGFnZSBzaXplDQojZGVmaW5lIEFUOTFDX0VDQ19UWVBDT1JSRUNUICAoMHgzIDw8ICA0KSAvLyAoSFNNQzQpIE5hbmQgRmxhc2ggcGFnZSBzaXplDQojZGVmaW5lIAlBVDkxQ19FQ0NfVFlQQ09SUkVDVF9PTkVfUEVSX1BBR0UgICAgICAgICAoMHgwIDw8ICA0KSAvLyAoSFNNQzQpIA0KI2RlZmluZSAJQVQ5MUNfRUNDX1RZUENPUlJFQ1RfT05FX0VWRVJZXzI1Nl9CWVRFUyAgKDB4MSA8PCAgNCkgLy8gKEhTTUM0KSANCiNkZWZpbmUgCUFUOTFDX0VDQ19UWVBDT1JSRUNUX09ORV9FVkVSWV81MTJfQllURVMgICgweDIgPDwgIDQpIC8vIChIU01DNCkgDQovLyAtLS0tLS0tLSBIU01DNF9FQ0NTUjEgOiAoSFNNQzQgT2Zmc2V0OiAweDI4KSBFQ0MgU3RhdHVzIFJlZ2lzdGVyIDEgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX0hTTUM0X0VDQ19SRUNFUlIwICgweDEgPDwgIDApIC8vIChIU01DNCkgUmVjb3ZlcmFibGUgRXJyb3INCiNkZWZpbmUgQVQ5MUNfSFNNQzRfRUNDX0VDQ0VSUjAgKDB4MSA8PCAgMSkgLy8gKEhTTUM0KSBFQ0MgRXJyb3INCiNkZWZpbmUgQVQ5MUNfSFNNQzRfRUNDX01VTEVSUjAgKDB4MSA8PCAgMikgLy8gKEhTTUM0KSBNdWx0aXBsZSBFcnJvcg0KI2RlZmluZSBBVDkxQ19IU01DNF9FQ0NfUkVDRVJSMSAoMHgxIDw8ICA0KSAvLyAoSFNNQzQpIFJlY292ZXJhYmxlIEVycm9yDQojZGVmaW5lIEFUOTFDX0hTTUM0X0VDQ19FQ0NFUlIxICgweDEgPDwgIDUpIC8vIChIU01DNCkgRUNDIEVycm9yDQojZGVmaW5lIEFUOTFDX0hTTUM0X0VDQ19NVUxFUlIxICgweDEgPDwgIDYpIC8vIChIU01DNCkgTXVsdGlwbGUgRXJyb3INCiNkZWZpbmUgQVQ5MUNfSFNNQzRfRUNDX1JFQ0VSUjIgKDB4MSA8PCAgOCkgLy8gKEhTTUM0KSBSZWNvdmVyYWJsZSBFcnJvcg0KI2RlZmluZSBBVDkxQ19IU01DNF9FQ0NfRUNDRVJSMiAoMHgxIDw8ICA5KSAvLyAoSFNNQzQpIEVDQyBFcnJvcg0KI2RlZmluZSBBVDkxQ19IU01DNF9FQ0NfTVVMRVJSMiAoMHgxIDw8IDEwKSAvLyAoSFNNQzQpIE11bHRpcGxlIEVycm9yDQojZGVmaW5lIEFUOTFDX0hTTUM0X0VDQ19SRUNFUlIzICgweDEgPDwgMTIpIC8vIChIU01DNCkgUmVjb3ZlcmFibGUgRXJyb3INCiNkZWZpbmUgQVQ5MUNfSFNNQzRfRUNDX0VDQ0VSUjMgKDB4MSA8PCAxMykgLy8gKEhTTUM0KSBFQ0MgRXJyb3INCiNkZWZpbmUgQVQ5MUNfSFNNQzRfRUNDX01VTEVSUjMgKDB4MSA8PCAxNCkgLy8gKEhTTUM0KSBNdWx0aXBsZSBFcnJvcg0KI2RlZmluZSBBVDkxQ19IU01DNF9FQ0NfUkVDRVJSNCAoMHgxIDw8IDE2KSAvLyAoSFNNQzQpIFJlY292ZXJhYmxlIEVycm9yDQojZGVmaW5lIEFUOTFDX0hTTUM0X0VDQ19FQ0NFUlI0ICgweDEgPDwgMTcpIC8vIChIU01DNCkgRUNDIEVycm9yDQojZGVmaW5lIEFUOTFDX0hTTUM0X0VDQ19NVUxFUlI0ICgweDEgPDwgMTgpIC8vIChIU01DNCkgTXVsdGlwbGUgRXJyb3INCiNkZWZpbmUgQVQ5MUNfSFNNQzRfRUNDX1JFQ0VSUjUgKDB4MSA8PCAyMCkgLy8gKEhTTUM0KSBSZWNvdmVyYWJsZSBFcnJvcg0KI2RlZmluZSBBVDkxQ19IU01DNF9FQ0NfRUNDRVJSNSAoMHgxIDw8IDIxKSAvLyAoSFNNQzQpIEVDQyBFcnJvcg0KI2RlZmluZSBBVDkxQ19IU01DNF9FQ0NfTVVMRVJSNSAoMHgxIDw8IDIyKSAvLyAoSFNNQzQpIE11bHRpcGxlIEVycm9yDQojZGVmaW5lIEFUOTFDX0hTTUM0X0VDQ19SRUNFUlI2ICgweDEgPDwgMjQpIC8vIChIU01DNCkgUmVjb3ZlcmFibGUgRXJyb3INCiNkZWZpbmUgQVQ5MUNfSFNNQzRfRUNDX0VDQ0VSUjYgKDB4MSA8PCAyNSkgLy8gKEhTTUM0KSBFQ0MgRXJyb3INCiNkZWZpbmUgQVQ5MUNfSFNNQzRfRUNDX01VTEVSUjYgKDB4MSA8PCAyNikgLy8gKEhTTUM0KSBNdWx0aXBsZSBFcnJvcg0KI2RlZmluZSBBVDkxQ19IU01DNF9FQ0NfUkVDRVJSNyAoMHgxIDw8IDI4KSAvLyAoSFNNQzQpIFJlY292ZXJhYmxlIEVycm9yDQojZGVmaW5lIEFUOTFDX0hTTUM0X0VDQ19FQ0NFUlI3ICgweDEgPDwgMjkpIC8vIChIU01DNCkgRUNDIEVycm9yDQojZGVmaW5lIEFUOTFDX0hTTUM0X0VDQ19NVUxFUlI3ICgweDEgPDwgMzApIC8vIChIU01DNCkgTXVsdGlwbGUgRXJyb3INCi8vIC0tLS0tLS0tIEhTTUM0X0VDQ1BSMCA6IChIU01DNCBPZmZzZXQ6IDB4MmMpIEhTTUM0IEVDQyBwYXJpdHkgUmVnaXN0ZXIgMCAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfSFNNQzRfRUNDX0JJVEFERFIgKDB4NyA8PCAgMCkgLy8gKEhTTUM0KSBDb3JydXB0ZWQgQml0IEFkZHJlc3MgaW4gdGhlIHBhZ2UNCiNkZWZpbmUgQVQ5MUNfSFNNQzRfRUNDX1dPUkRBRERSICgweEZGIDw8ICAzKSAvLyAoSFNNQzQpIENvcnJ1cHRlZCBXb3JkIEFkZHJlc3MgaW4gdGhlIHBhZ2UNCiNkZWZpbmUgQVQ5MUNfSFNNQzRfRUNDX05QQVJJVFkgKDB4N0ZGIDw8IDEyKSAvLyAoSFNNQzQpIFBhcml0eSBODQovLyAtLS0tLS0tLSBIU01DNF9FQ0NQUjEgOiAoSFNNQzQgT2Zmc2V0OiAweDMwKSBIU01DNCBFQ0MgcGFyaXR5IFJlZ2lzdGVyIDEgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBIU01DNF9FQ0NTUjIgOiAoSFNNQzQgT2Zmc2V0OiAweDM0KSBFQ0MgU3RhdHVzIFJlZ2lzdGVyIDIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX0hTTUM0X0VDQ19SRUNFUlI4ICgweDEgPDwgIDApIC8vIChIU01DNCkgUmVjb3ZlcmFibGUgRXJyb3INCiNkZWZpbmUgQVQ5MUNfSFNNQzRfRUNDX0VDQ0VSUjggKDB4MSA8PCAgMSkgLy8gKEhTTUM0KSBFQ0MgRXJyb3INCiNkZWZpbmUgQVQ5MUNfSFNNQzRfRUNDX01VTEVSUjggKDB4MSA8PCAgMikgLy8gKEhTTUM0KSBNdWx0aXBsZSBFcnJvcg0KI2RlZmluZSBBVDkxQ19IU01DNF9FQ0NfUkVDRVJSOSAoMHgxIDw8ICA0KSAvLyAoSFNNQzQpIFJlY292ZXJhYmxlIEVycm9yDQojZGVmaW5lIEFUOTFDX0hTTUM0X0VDQ19FQ0NFUlI5ICgweDEgPDwgIDUpIC8vIChIU01DNCkgRUNDIEVycm9yDQojZGVmaW5lIEFUOTFDX0hTTUM0X0VDQ19NVUxFUlI5ICgweDEgPDwgIDYpIC8vIChIU01DNCkgTXVsdGlwbGUgRXJyb3INCiNkZWZpbmUgQVQ5MUNfSFNNQzRfRUNDX1JFQ0VSUjEwICgweDEgPDwgIDgpIC8vIChIU01DNCkgUmVjb3ZlcmFibGUgRXJyb3INCiNkZWZpbmUgQVQ5MUNfSFNNQzRfRUNDX0VDQ0VSUjEwICgweDEgPDwgIDkpIC8vIChIU01DNCkgRUNDIEVycm9yDQojZGVmaW5lIEFUOTFDX0hTTUM0X0VDQ19NVUxFUlIxMCAoMHgxIDw8IDEwKSAvLyAoSFNNQzQpIE11bHRpcGxlIEVycm9yDQojZGVmaW5lIEFUOTFDX0hTTUM0X0VDQ19SRUNFUlIxMSAoMHgxIDw8IDEyKSAvLyAoSFNNQzQpIFJlY292ZXJhYmxlIEVycm9yDQojZGVmaW5lIEFUOTFDX0hTTUM0X0VDQ19FQ0NFUlIxMSAoMHgxIDw8IDEzKSAvLyAoSFNNQzQpIEVDQyBFcnJvcg0KI2RlZmluZSBBVDkxQ19IU01DNF9FQ0NfTVVMRVJSMTEgKDB4MSA8PCAxNCkgLy8gKEhTTUM0KSBNdWx0aXBsZSBFcnJvcg0KI2RlZmluZSBBVDkxQ19IU01DNF9FQ0NfUkVDRVJSMTIgKDB4MSA8PCAxNikgLy8gKEhTTUM0KSBSZWNvdmVyYWJsZSBFcnJvcg0KI2RlZmluZSBBVDkxQ19IU01DNF9FQ0NfRUNDRVJSMTIgKDB4MSA8PCAxNykgLy8gKEhTTUM0KSBFQ0MgRXJyb3INCiNkZWZpbmUgQVQ5MUNfSFNNQzRfRUNDX01VTEVSUjEyICgweDEgPDwgMTgpIC8vIChIU01DNCkgTXVsdGlwbGUgRXJyb3INCiNkZWZpbmUgQVQ5MUNfSFNNQzRfRUNDX1JFQ0VSUjEzICgweDEgPDwgMjApIC8vIChIU01DNCkgUmVjb3ZlcmFibGUgRXJyb3INCiNkZWZpbmUgQVQ5MUNfSFNNQzRfRUNDX0VDQ0VSUjEzICgweDEgPDwgMjEpIC8vIChIU01DNCkgRUNDIEVycm9yDQojZGVmaW5lIEFUOTFDX0hTTUM0X0VDQ19NVUxFUlIxMyAoMHgxIDw8IDIyKSAvLyAoSFNNQzQpIE11bHRpcGxlIEVycm9yDQojZGVmaW5lIEFUOTFDX0hTTUM0X0VDQ19SRUNFUlIxNCAoMHgxIDw8IDI0KSAvLyAoSFNNQzQpIFJlY292ZXJhYmxlIEVycm9yDQojZGVmaW5lIEFUOTFDX0hTTUM0X0VDQ19FQ0NFUlIxNCAoMHgxIDw8IDI1KSAvLyAoSFNNQzQpIEVDQyBFcnJvcg0KI2RlZmluZSBBVDkxQ19IU01DNF9FQ0NfTVVMRVJSMTQgKDB4MSA8PCAyNikgLy8gKEhTTUM0KSBNdWx0aXBsZSBFcnJvcg0KI2RlZmluZSBBVDkxQ19IU01DNF9FQ0NfUkVDRVJSMTUgKDB4MSA8PCAyOCkgLy8gKEhTTUM0KSBSZWNvdmVyYWJsZSBFcnJvcg0KI2RlZmluZSBBVDkxQ19IU01DNF9FQ0NfRUNDRVJSMTUgKDB4MSA8PCAyOSkgLy8gKEhTTUM0KSBFQ0MgRXJyb3INCiNkZWZpbmUgQVQ5MUNfSFNNQzRfRUNDX01VTEVSUjE1ICgweDEgPDwgMzApIC8vIChIU01DNCkgTXVsdGlwbGUgRXJyb3INCi8vIC0tLS0tLS0tIEhTTUM0X0VDQ1BSMiA6IChIU01DNCBPZmZzZXQ6IDB4MzgpIEhTTUM0IEVDQyBwYXJpdHkgUmVnaXN0ZXIgMiAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIEhTTUM0X0VDQ1BSMyA6IChIU01DNCBPZmZzZXQ6IDB4M2MpIEhTTUM0IEVDQyBwYXJpdHkgUmVnaXN0ZXIgMyAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIEhTTUM0X0VDQ1BSNCA6IChIU01DNCBPZmZzZXQ6IDB4NDApIEhTTUM0IEVDQyBwYXJpdHkgUmVnaXN0ZXIgNCAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIEhTTUM0X0VDQ1BSNSA6IChIU01DNCBPZmZzZXQ6IDB4NDQpIEhTTUM0IEVDQyBwYXJpdHkgUmVnaXN0ZXIgNSAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIEhTTUM0X0VDQ1BSNiA6IChIU01DNCBPZmZzZXQ6IDB4NDgpIEhTTUM0IEVDQyBwYXJpdHkgUmVnaXN0ZXIgNiAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIEhTTUM0X0VDQ1BSNyA6IChIU01DNCBPZmZzZXQ6IDB4NGMpIEhTTUM0IEVDQyBwYXJpdHkgUmVnaXN0ZXIgNyAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIEhTTUM0X0VDQ1BSOCA6IChIU01DNCBPZmZzZXQ6IDB4NTApIEhTTUM0IEVDQyBwYXJpdHkgUmVnaXN0ZXIgOCAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIEhTTUM0X0VDQ1BSOSA6IChIU01DNCBPZmZzZXQ6IDB4NTQpIEhTTUM0IEVDQyBwYXJpdHkgUmVnaXN0ZXIgOSAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIEhTTUM0X0VDQ1BSMTAgOiAoSFNNQzQgT2Zmc2V0OiAweDU4KSBIU01DNCBFQ0MgcGFyaXR5IFJlZ2lzdGVyIDEwIC0tLS0tLS0tIA0KLy8gLS0tLS0tLS0gSFNNQzRfRUNDUFIxMSA6IChIU01DNCBPZmZzZXQ6IDB4NWMpIEhTTUM0IEVDQyBwYXJpdHkgUmVnaXN0ZXIgMTEgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBIU01DNF9FQ0NQUjEyIDogKEhTTUM0IE9mZnNldDogMHg2MCkgSFNNQzQgRUNDIHBhcml0eSBSZWdpc3RlciAxMiAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIEhTTUM0X0VDQ1BSMTMgOiAoSFNNQzQgT2Zmc2V0OiAweDY0KSBIU01DNCBFQ0MgcGFyaXR5IFJlZ2lzdGVyIDEzIC0tLS0tLS0tIA0KLy8gLS0tLS0tLS0gSFNNQzRfRUNDUFIxNCA6IChIU01DNCBPZmZzZXQ6IDB4NjgpIEhTTUM0IEVDQyBwYXJpdHkgUmVnaXN0ZXIgMTQgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBIU01DNF9FQ0NQUjE1IDogKEhTTUM0IE9mZnNldDogMHg2YykgSFNNQzQgRUNDIHBhcml0eSBSZWdpc3RlciAxNSAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIEhTTUM0X09DTVMgOiAoSFNNQzQgT2Zmc2V0OiAweDExMCkgSFNNQzQgT0NNUyBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfSFNNQzRfT0NNU19TUlNFICgweDEgPDwgIDApIC8vIChIU01DNCkgU3RhdGljIE1lbW9yeSBDb250cm9sbGVyIFNjcmFtYmxpbmcgRW5hYmxlDQojZGVmaW5lIEFUOTFDX0hTTUM0X09DTVNfU01TRSAoMHgxIDw8ICAxKSAvLyAoSFNNQzQpIFNSQU0gU2NyYW1saW5nIEVuYWJsZQ0KLy8gLS0tLS0tLS0gSFNNQzRfS0VZMSA6IChIU01DNCBPZmZzZXQ6IDB4MTE0KSBIU01DNCBPQ01TIEtFWTEgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX0hTTUM0X09DTVNfS0VZMSAoMHgwIDw8ICAwKSAvLyAoSFNNQzQpIE9DTVMgS2V5IDINCi8vIC0tLS0tLS0tIEhTTUM0X09DTVNfS0VZMiA6IChIU01DNCBPZmZzZXQ6IDB4MTE4KSBIU01DNCBPQ01TIEtFWTIgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX0hTTUM0X09DTVNfS0VZMiAoMHgwIDw8ICAwKSAvLyAoSFNNQzQpIE9DTVMgS2V5IDINCi8vIC0tLS0tLS0tIEhTTUM0X1dQQ1IgOiAoSFNNQzQgT2Zmc2V0OiAweDFlNCkgSFNNQzQgV2l0cmUgUHJvdGVjdGlvbiBDb250cm9sIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19IU01DNF9XUF9FTiAgICAgKDB4MSA8PCAgMCkgLy8gKEhTTUM0KSBXcml0ZSBQcm90ZWN0aW9uIEVuYWJsZQ0KI2RlZmluZSBBVDkxQ19IU01DNF9XUF9LRVkgICAgKDB4RkZGRkZGIDw8ICA4KSAvLyAoSFNNQzQpIFByb3RlY3Rpb24gUGFzc3dvcmQNCi8vIC0tLS0tLS0tIEhTTUM0X1dQU1IgOiAoSFNNQzQgT2Zmc2V0OiAweDFlOCkgSFNNQzQgV1BTUiBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfSFNNQzRfV1BfVlMgICAgICgweEYgPDwgIDApIC8vIChIU01DNCkgV3JpdGUgUHJvdGVjdGlvbiBWaW9sYXRpb24gU3RhdHVzDQojZGVmaW5lIAlBVDkxQ19IU01DNF9XUF9WU19XUF9WUzAgICAgICAgICAgICAgICAoMHgwKSAvLyAoSFNNQzQpIE5vIHdyaXRlIHByb3RlY3Rpb24gdmlvbGF0aW9uIHNpbmNlIHRoZSBsYXN0IHJlYWQgb2YgdGhpcyByZWdpc3Rlcg0KI2RlZmluZSAJQVQ5MUNfSFNNQzRfV1BfVlNfV1BfVlMxICAgICAgICAgICAgICAgKDB4MSkgLy8gKEhTTUM0KSB3cml0ZSBwcm90ZWN0aW9uIGRldGVjdGVkIHVuYXV0aG9yaXplZCBhdHRlbXB0IHRvIHdyaXRlIGEgY29udHJvbCByZWdpc3RlciBoYWQgb2NjdXJlZCAoc2luY2UgdGhlIGxhc3QgcmVhZCkNCiNkZWZpbmUgCUFUOTFDX0hTTUM0X1dQX1ZTX1dQX1ZTMiAgICAgICAgICAgICAgICgweDIpIC8vIChIU01DNCkgU29mdHdhcmUgcmVzZXQgaGFkIGJlZW4gcGVyZm9ybWVkIHdoaWxlIHdyaXRlIHByb3RlY3Rpb24gd2FzIGVuYWJsZWQgKHNpbmNlIHRoZSBsYXN0IHJlYWQpDQojZGVmaW5lIAlBVDkxQ19IU01DNF9XUF9WU19XUF9WUzMgICAgICAgICAgICAgICAoMHgzKSAvLyAoSFNNQzQpIEJvdGggd3JpdGUgcHJvdGVjdGlvbiB2aW9sYXRpb24gYW5kIHNvZnR3YXJlIHJlc2V0IHdpdGggd3JpdGUgcHJvdGVjdGlvbiBlbmFibGVkIGhhZCBvY2N1cmVkIHNpbmNlIHRoZSBsYXN0IHJlYWQNCiNkZWZpbmUgQVQ5MUNfICAgICAgICAgICAgICAgICgweDAgPDwgIDgpIC8vIChIU01DNCkgDQovLyAtLS0tLS0tLSBIU01DNF9WRVIgOiAoSFNNQzQgT2Zmc2V0OiAweDFmYykgSFNNQzQgVkVSU0lPTiBSZWdpc3RlciAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIEhTTUM0X0RVTU1ZIDogKEhTTUM0IE9mZnNldDogMHgyMDApIEhTTUM0IERVTU1ZIFJFR0lTVEVSIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19IU01DNF9DTUQxICAgICAgKDB4RkYgPDwgIDIpIC8vIChIU01DNCkgQ29tbWFuZCBSZWdpc3RlciBWYWx1ZSBmb3IgQ3ljbGUgMQ0KI2RlZmluZSBBVDkxQ19IU01DNF9DTUQyICAgICAgKDB4RkYgPDwgMTApIC8vIChIU01DNCkgQ29tbWFuZCBSZWdpc3RlciBWYWx1ZSBmb3IgQ3ljbGUgMg0KI2RlZmluZSBBVDkxQ19IU01DNF9WQ01EMiAgICAgKDB4MSA8PCAxOCkgLy8gKEhTTUM0KSBWYWxpZCBDeWNsZSAyIENvbW1hbmQNCiNkZWZpbmUgQVQ5MUNfSFNNQzRfQUNZQ0xFICAgICgweDcgPDwgMTkpIC8vIChIU01DNCkgTnVtYmVyIG9mIEFkZHJlc3MgcmVxdWlyZWQgZm9yIHRoZSBjdXJyZW50IGNvbW1hbmQNCiNkZWZpbmUgCUFUOTFDX0hTTUM0X0FDWUNMRV9IU01DNF9BQ1lDTEVfTk9ORSAgICAoMHgwIDw8IDE5KSAvLyAoSFNNQzQpIE5vIGFkZHJlc3MgY3ljbGUNCiNkZWZpbmUgCUFUOTFDX0hTTUM0X0FDWUNMRV9IU01DNF9BQ1lDTEVfT05FICAgICAoMHgxIDw8IDE5KSAvLyAoSFNNQzQpIE9uZSBhZGRyZXNzIGN5Y2xlDQojZGVmaW5lIAlBVDkxQ19IU01DNF9BQ1lDTEVfSFNNQzRfQUNZQ0xFX1RXTyAgICAgKDB4MiA8PCAxOSkgLy8gKEhTTUM0KSBUd28gYWRkcmVzcyBjeWNsZXMNCiNkZWZpbmUgCUFUOTFDX0hTTUM0X0FDWUNMRV9IU01DNF9BQ1lDTEVfVEhSRUUgICAoMHgzIDw8IDE5KSAvLyAoSFNNQzQpIFRocmVlIGFkZHJlc3MgY3ljbGVzDQojZGVmaW5lIAlBVDkxQ19IU01DNF9BQ1lDTEVfSFNNQzRfQUNZQ0xFX0ZPVVIgICAgKDB4NCA8PCAxOSkgLy8gKEhTTUM0KSBGb3VyIGFkZHJlc3MgY3ljbGVzDQojZGVmaW5lIAlBVDkxQ19IU01DNF9BQ1lDTEVfSFNNQzRfQUNZQ0xFX0ZJVkUgICAgKDB4NSA8PCAxOSkgLy8gKEhTTUM0KSBGaXZlIGFkZHJlc3MgY3ljbGVzDQojZGVmaW5lIEFUOTFDX0hTTUM0X0NTSUQgICAgICAoMHg3IDw8IDIyKSAvLyAoSFNNQzQpIENoaXAgU2VsZWN0IElkZW50aWZpZXINCiNkZWZpbmUgCUFUOTFDX0hTTUM0X0NTSURfMCAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAyMikgLy8gKEhTTUM0KSBDUzANCiNkZWZpbmUgCUFUOTFDX0hTTUM0X0NTSURfMSAgICAgICAgICAgICAgICAgICAgKDB4MSA8PCAyMikgLy8gKEhTTUM0KSBDUzENCiNkZWZpbmUgCUFUOTFDX0hTTUM0X0NTSURfMiAgICAgICAgICAgICAgICAgICAgKDB4MiA8PCAyMikgLy8gKEhTTUM0KSBDUzINCiNkZWZpbmUgCUFUOTFDX0hTTUM0X0NTSURfMyAgICAgICAgICAgICAgICAgICAgKDB4MyA8PCAyMikgLy8gKEhTTUM0KSBDUzMNCiNkZWZpbmUgCUFUOTFDX0hTTUM0X0NTSURfNCAgICAgICAgICAgICAgICAgICAgKDB4NCA8PCAyMikgLy8gKEhTTUM0KSBDUzQNCiNkZWZpbmUgCUFUOTFDX0hTTUM0X0NTSURfNSAgICAgICAgICAgICAgICAgICAgKDB4NSA8PCAyMikgLy8gKEhTTUM0KSBDUzUNCiNkZWZpbmUgCUFUOTFDX0hTTUM0X0NTSURfNiAgICAgICAgICAgICAgICAgICAgKDB4NiA8PCAyMikgLy8gKEhTTUM0KSBDUzYNCiNkZWZpbmUgCUFUOTFDX0hTTUM0X0NTSURfNyAgICAgICAgICAgICAgICAgICAgKDB4NyA8PCAyMikgLy8gKEhTTUM0KSBDUzcNCiNkZWZpbmUgQVQ5MUNfSFNNQzRfSE9TVF9FTiAgICgweDEgPDwgMjUpIC8vIChIU01DNCkgSG9zdCBNYWluIENvbnRyb2xsZXIgRW5hYmxlDQojZGVmaW5lIEFUOTFDX0hTTUM0X0hPU1RfV1IgICAoMHgxIDw8IDI2KSAvLyAoSFNNQzQpIEhPU1RXUiA6IEhvc3QgTWFpbiBDb250cm9sbGVyIFdyaXRlIEVuYWJsZQ0KI2RlZmluZSBBVDkxQ19IU01DNF9IT1NUQ01EICAgKDB4MSA8PCAyNykgLy8gKEhTTUM0KSBIb3N0IENvbW1hbmQgRW5hYmxlDQoNCi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQovLyAgICAgICAgICAgICAgU09GVFdBUkUgQVBJIERFRklOSVRJT04gIEZPUiBBSEIgTWF0cml4MiBJbnRlcmZhY2UNCi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQojaWZuZGVmIF9fQVNTRU1CTFlfXw0KdHlwZWRlZiBzdHJ1Y3QgX0FUOTFTX0hNQVRSSVgyIHsNCglBVDkxX1JFRwkgSE1BVFJJWDJfTUNGRzA7IAkvLyAgTWFzdGVyIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgMCA6IEFSTSBJIGFuZCBEDQoJQVQ5MV9SRUcJIEhNQVRSSVgyX01DRkcxOyAJLy8gIE1hc3RlciBDb25maWd1cmF0aW9uIFJlZ2lzdGVyIDEgOiBBUk0gUw0KCUFUOTFfUkVHCSBITUFUUklYMl9NQ0ZHMjsgCS8vICBNYXN0ZXIgQ29uZmlndXJhdGlvbiBSZWdpc3RlciAyDQoJQVQ5MV9SRUcJIEhNQVRSSVgyX01DRkczOyAJLy8gIE1hc3RlciBDb25maWd1cmF0aW9uIFJlZ2lzdGVyIDMNCglBVDkxX1JFRwkgSE1BVFJJWDJfTUNGRzQ7IAkvLyAgTWFzdGVyIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgNA0KCUFUOTFfUkVHCSBITUFUUklYMl9NQ0ZHNTsgCS8vICBNYXN0ZXIgQ29uZmlndXJhdGlvbiBSZWdpc3RlciA1DQoJQVQ5MV9SRUcJIEhNQVRSSVgyX01DRkc2OyAJLy8gIE1hc3RlciBDb25maWd1cmF0aW9uIFJlZ2lzdGVyIDYNCglBVDkxX1JFRwkgSE1BVFJJWDJfTUNGRzc7IAkvLyAgTWFzdGVyIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgNw0KCUFUOTFfUkVHCSBSZXNlcnZlZDBbOF07IAkvLyANCglBVDkxX1JFRwkgSE1BVFJJWDJfU0NGRzA7IAkvLyAgU2xhdmUgQ29uZmlndXJhdGlvbiBSZWdpc3RlciAwDQoJQVQ5MV9SRUcJIEhNQVRSSVgyX1NDRkcxOyAJLy8gIFNsYXZlIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgMQ0KCUFUOTFfUkVHCSBITUFUUklYMl9TQ0ZHMjsgCS8vICBTbGF2ZSBDb25maWd1cmF0aW9uIFJlZ2lzdGVyIDINCglBVDkxX1JFRwkgSE1BVFJJWDJfU0NGRzM7IAkvLyAgU2xhdmUgQ29uZmlndXJhdGlvbiBSZWdpc3RlciAzDQoJQVQ5MV9SRUcJIEhNQVRSSVgyX1NDRkc0OyAJLy8gIFNsYXZlIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgNA0KCUFUOTFfUkVHCSBITUFUUklYMl9TQ0ZHNTsgCS8vICBTbGF2ZSBDb25maWd1cmF0aW9uIFJlZ2lzdGVyIDUNCglBVDkxX1JFRwkgSE1BVFJJWDJfU0NGRzY7IAkvLyAgU2xhdmUgQ29uZmlndXJhdGlvbiBSZWdpc3RlciA2DQoJQVQ5MV9SRUcJIEhNQVRSSVgyX1NDRkc3OyAJLy8gIFNsYXZlIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgNQ0KCUFUOTFfUkVHCSBITUFUUklYMl9TQ0ZHODsgCS8vICBTbGF2ZSBDb25maWd1cmF0aW9uIFJlZ2lzdGVyIDgNCglBVDkxX1JFRwkgUmVzZXJ2ZWQxWzQzXTsgCS8vIA0KCUFUOTFfUkVHCSBITUFUUklYMl9TRlIwIDsgCS8vICBTcGVjaWFsIEZ1bmN0aW9uIFJlZ2lzdGVyIDANCglBVDkxX1JFRwkgSE1BVFJJWDJfU0ZSMSA7IAkvLyAgU3BlY2lhbCBGdW5jdGlvbiBSZWdpc3RlciAxDQoJQVQ5MV9SRUcJIEhNQVRSSVgyX1NGUjIgOyAJLy8gIFNwZWNpYWwgRnVuY3Rpb24gUmVnaXN0ZXIgMg0KCUFUOTFfUkVHCSBITUFUUklYMl9TRlIzIDsgCS8vICBTcGVjaWFsIEZ1bmN0aW9uIFJlZ2lzdGVyIDMNCglBVDkxX1JFRwkgSE1BVFJJWDJfU0ZSNCA7IAkvLyAgU3BlY2lhbCBGdW5jdGlvbiBSZWdpc3RlciA0DQoJQVQ5MV9SRUcJIEhNQVRSSVgyX1NGUjUgOyAJLy8gIFNwZWNpYWwgRnVuY3Rpb24gUmVnaXN0ZXIgNQ0KCUFUOTFfUkVHCSBITUFUUklYMl9TRlI2IDsgCS8vICBTcGVjaWFsIEZ1bmN0aW9uIFJlZ2lzdGVyIDYNCglBVDkxX1JFRwkgSE1BVFJJWDJfU0ZSNyA7IAkvLyAgU3BlY2lhbCBGdW5jdGlvbiBSZWdpc3RlciA3DQoJQVQ5MV9SRUcJIEhNQVRSSVgyX1NGUjggOyAJLy8gIFNwZWNpYWwgRnVuY3Rpb24gUmVnaXN0ZXIgOA0KCUFUOTFfUkVHCSBITUFUUklYMl9TRlI5IDsgCS8vICBTcGVjaWFsIEZ1bmN0aW9uIFJlZ2lzdGVyIDkNCglBVDkxX1JFRwkgSE1BVFJJWDJfU0ZSMTA7IAkvLyAgU3BlY2lhbCBGdW5jdGlvbiBSZWdpc3RlciAxMA0KCUFUOTFfUkVHCSBITUFUUklYMl9TRlIxMTsgCS8vICBTcGVjaWFsIEZ1bmN0aW9uIFJlZ2lzdGVyIDExDQoJQVQ5MV9SRUcJIEhNQVRSSVgyX1NGUjEyOyAJLy8gIFNwZWNpYWwgRnVuY3Rpb24gUmVnaXN0ZXIgMTINCglBVDkxX1JFRwkgSE1BVFJJWDJfU0ZSMTM7IAkvLyAgU3BlY2lhbCBGdW5jdGlvbiBSZWdpc3RlciAxMw0KCUFUOTFfUkVHCSBITUFUUklYMl9TRlIxNDsgCS8vICBTcGVjaWFsIEZ1bmN0aW9uIFJlZ2lzdGVyIDE0DQoJQVQ5MV9SRUcJIEhNQVRSSVgyX1NGUjE1OyAJLy8gIFNwZWNpYWwgRnVuY3Rpb24gUmVnaXN0ZXIgMTUNCglBVDkxX1JFRwkgUmVzZXJ2ZWQyWzM5XTsgCS8vIA0KCUFUOTFfUkVHCSBITUFUUklYMl9BRERSU0laRTsgCS8vIEhNQVRSSVgyIEFERFJTSVpFIFJFR0lTVEVSIA0KCUFUOTFfUkVHCSBITUFUUklYMl9JUE5BTUUxOyAJLy8gSE1BVFJJWDIgSVBOQU1FMSBSRUdJU1RFUiANCglBVDkxX1JFRwkgSE1BVFJJWDJfSVBOQU1FMjsgCS8vIEhNQVRSSVgyIElQTkFNRTIgUkVHSVNURVIgDQoJQVQ5MV9SRUcJIEhNQVRSSVgyX0ZFQVRVUkVTOyAJLy8gSE1BVFJJWDIgRkVBVFVSRVMgUkVHSVNURVIgDQoJQVQ5MV9SRUcJIEhNQVRSSVgyX1ZFUjsgCS8vIEhNQVRSSVgyIFZFUlNJT04gUkVHSVNURVIgDQp9IEFUOTFTX0hNQVRSSVgyLCAqQVQ5MVBTX0hNQVRSSVgyOw0KI2Vsc2UNCiNkZWZpbmUgTUFUUklYX01DRkcwICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMDApIC8vIChNQVRSSVhfTUNGRzApICBNYXN0ZXIgQ29uZmlndXJhdGlvbiBSZWdpc3RlciAwIDogQVJNIEkgYW5kIEQNCiNkZWZpbmUgTUFUUklYX01DRkcxICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMDQpIC8vIChNQVRSSVhfTUNGRzEpICBNYXN0ZXIgQ29uZmlndXJhdGlvbiBSZWdpc3RlciAxIDogQVJNIFMNCiNkZWZpbmUgTUFUUklYX01DRkcyICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMDgpIC8vIChNQVRSSVhfTUNGRzIpICBNYXN0ZXIgQ29uZmlndXJhdGlvbiBSZWdpc3RlciAyDQojZGVmaW5lIE1BVFJJWF9NQ0ZHMyAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDBDKSAvLyAoTUFUUklYX01DRkczKSAgTWFzdGVyIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgMw0KI2RlZmluZSBNQVRSSVhfTUNGRzQgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAxMCkgLy8gKE1BVFJJWF9NQ0ZHNCkgIE1hc3RlciBDb25maWd1cmF0aW9uIFJlZ2lzdGVyIDQNCiNkZWZpbmUgTUFUUklYX01DRkc1ICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMTQpIC8vIChNQVRSSVhfTUNGRzUpICBNYXN0ZXIgQ29uZmlndXJhdGlvbiBSZWdpc3RlciA1DQojZGVmaW5lIE1BVFJJWF9NQ0ZHNiAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDE4KSAvLyAoTUFUUklYX01DRkc2KSAgTWFzdGVyIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgNg0KI2RlZmluZSBNQVRSSVhfTUNGRzcgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAxQykgLy8gKE1BVFJJWF9NQ0ZHNykgIE1hc3RlciBDb25maWd1cmF0aW9uIFJlZ2lzdGVyIDcNCiNkZWZpbmUgTUFUUklYX1NDRkcwICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNDApIC8vIChNQVRSSVhfU0NGRzApICBTbGF2ZSBDb25maWd1cmF0aW9uIFJlZ2lzdGVyIDANCiNkZWZpbmUgTUFUUklYX1NDRkcxICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNDQpIC8vIChNQVRSSVhfU0NGRzEpICBTbGF2ZSBDb25maWd1cmF0aW9uIFJlZ2lzdGVyIDENCiNkZWZpbmUgTUFUUklYX1NDRkcyICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNDgpIC8vIChNQVRSSVhfU0NGRzIpICBTbGF2ZSBDb25maWd1cmF0aW9uIFJlZ2lzdGVyIDINCiNkZWZpbmUgTUFUUklYX1NDRkczICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNEMpIC8vIChNQVRSSVhfU0NGRzMpICBTbGF2ZSBDb25maWd1cmF0aW9uIFJlZ2lzdGVyIDMNCiNkZWZpbmUgTUFUUklYX1NDRkc0ICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNTApIC8vIChNQVRSSVhfU0NGRzQpICBTbGF2ZSBDb25maWd1cmF0aW9uIFJlZ2lzdGVyIDQNCiNkZWZpbmUgTUFUUklYX1NDRkc1ICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNTQpIC8vIChNQVRSSVhfU0NGRzUpICBTbGF2ZSBDb25maWd1cmF0aW9uIFJlZ2lzdGVyIDUNCiNkZWZpbmUgTUFUUklYX1NDRkc2ICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNTgpIC8vIChNQVRSSVhfU0NGRzYpICBTbGF2ZSBDb25maWd1cmF0aW9uIFJlZ2lzdGVyIDYNCiNkZWZpbmUgTUFUUklYX1NDRkc3ICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNUMpIC8vIChNQVRSSVhfU0NGRzcpICBTbGF2ZSBDb25maWd1cmF0aW9uIFJlZ2lzdGVyIDUNCiNkZWZpbmUgTUFUUklYX1NDRkc4ICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNjApIC8vIChNQVRSSVhfU0NGRzgpICBTbGF2ZSBDb25maWd1cmF0aW9uIFJlZ2lzdGVyIDgNCiNkZWZpbmUgTUFUUklYX1NGUjAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxMTApIC8vIChNQVRSSVhfU0ZSMCApICBTcGVjaWFsIEZ1bmN0aW9uIFJlZ2lzdGVyIDANCiNkZWZpbmUgTUFUUklYX1NGUjEgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxMTQpIC8vIChNQVRSSVhfU0ZSMSApICBTcGVjaWFsIEZ1bmN0aW9uIFJlZ2lzdGVyIDENCiNkZWZpbmUgTUFUUklYX1NGUjIgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxMTgpIC8vIChNQVRSSVhfU0ZSMiApICBTcGVjaWFsIEZ1bmN0aW9uIFJlZ2lzdGVyIDINCiNkZWZpbmUgTUFUUklYX1NGUjMgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxMUMpIC8vIChNQVRSSVhfU0ZSMyApICBTcGVjaWFsIEZ1bmN0aW9uIFJlZ2lzdGVyIDMNCiNkZWZpbmUgTUFUUklYX1NGUjQgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxMjApIC8vIChNQVRSSVhfU0ZSNCApICBTcGVjaWFsIEZ1bmN0aW9uIFJlZ2lzdGVyIDQNCiNkZWZpbmUgTUFUUklYX1NGUjUgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxMjQpIC8vIChNQVRSSVhfU0ZSNSApICBTcGVjaWFsIEZ1bmN0aW9uIFJlZ2lzdGVyIDUNCiNkZWZpbmUgTUFUUklYX1NGUjYgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxMjgpIC8vIChNQVRSSVhfU0ZSNiApICBTcGVjaWFsIEZ1bmN0aW9uIFJlZ2lzdGVyIDYNCiNkZWZpbmUgTUFUUklYX1NGUjcgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxMkMpIC8vIChNQVRSSVhfU0ZSNyApICBTcGVjaWFsIEZ1bmN0aW9uIFJlZ2lzdGVyIDcNCiNkZWZpbmUgTUFUUklYX1NGUjggICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxMzApIC8vIChNQVRSSVhfU0ZSOCApICBTcGVjaWFsIEZ1bmN0aW9uIFJlZ2lzdGVyIDgNCiNkZWZpbmUgTUFUUklYX1NGUjkgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxMzQpIC8vIChNQVRSSVhfU0ZSOSApICBTcGVjaWFsIEZ1bmN0aW9uIFJlZ2lzdGVyIDkNCiNkZWZpbmUgTUFUUklYX1NGUjEwICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxMzgpIC8vIChNQVRSSVhfU0ZSMTApICBTcGVjaWFsIEZ1bmN0aW9uIFJlZ2lzdGVyIDEwDQojZGVmaW5lIE1BVFJJWF9TRlIxMSAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMTNDKSAvLyAoTUFUUklYX1NGUjExKSAgU3BlY2lhbCBGdW5jdGlvbiBSZWdpc3RlciAxMQ0KI2RlZmluZSBNQVRSSVhfU0ZSMTIgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDE0MCkgLy8gKE1BVFJJWF9TRlIxMikgIFNwZWNpYWwgRnVuY3Rpb24gUmVnaXN0ZXIgMTINCiNkZWZpbmUgTUFUUklYX1NGUjEzICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxNDQpIC8vIChNQVRSSVhfU0ZSMTMpICBTcGVjaWFsIEZ1bmN0aW9uIFJlZ2lzdGVyIDEzDQojZGVmaW5lIE1BVFJJWF9TRlIxNCAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMTQ4KSAvLyAoTUFUUklYX1NGUjE0KSAgU3BlY2lhbCBGdW5jdGlvbiBSZWdpc3RlciAxNA0KI2RlZmluZSBNQVRSSVhfU0ZSMTUgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDE0QykgLy8gKE1BVFJJWF9TRlIxNSkgIFNwZWNpYWwgRnVuY3Rpb24gUmVnaXN0ZXIgMTUNCiNkZWZpbmUgSE1BVFJJWDJfQUREUlNJWkUgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDFFQykgLy8gKEhNQVRSSVgyX0FERFJTSVpFKSBITUFUUklYMiBBRERSU0laRSBSRUdJU1RFUiANCiNkZWZpbmUgSE1BVFJJWDJfSVBOQU1FMSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMUYwKSAvLyAoSE1BVFJJWDJfSVBOQU1FMSkgSE1BVFJJWDIgSVBOQU1FMSBSRUdJU1RFUiANCiNkZWZpbmUgSE1BVFJJWDJfSVBOQU1FMiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMUY0KSAvLyAoSE1BVFJJWDJfSVBOQU1FMikgSE1BVFJJWDIgSVBOQU1FMiBSRUdJU1RFUiANCiNkZWZpbmUgSE1BVFJJWDJfRkVBVFVSRVMgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDFGOCkgLy8gKEhNQVRSSVgyX0ZFQVRVUkVTKSBITUFUUklYMiBGRUFUVVJFUyBSRUdJU1RFUiANCiNkZWZpbmUgSE1BVFJJWDJfVkVSICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxRkMpIC8vIChITUFUUklYMl9WRVIpIEhNQVRSSVgyIFZFUlNJT04gUkVHSVNURVIgDQoNCiNlbmRpZg0KLy8gLS0tLS0tLS0gTUFUUklYX01DRkcwIDogKEhNQVRSSVgyIE9mZnNldDogMHgwKSBNYXN0ZXIgQ29uZmlndXJhdGlvbiBSZWdpc3RlciBBUk0gYnVzIEkgYW5kIEQgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX01BVFJJWF9VTEJUICAgICAoMHg3IDw8ICAwKSAvLyAoSE1BVFJJWDIpIFVuZGVmaW5lZCBMZW5ndGggQnVyc3QgVHlwZQ0KI2RlZmluZSAJQVQ5MUNfTUFUUklYX1VMQlRfSU5GSU5JVF9MRU5HVEggICAgICAgKDB4MCkgLy8gKEhNQVRSSVgyKSBpbmZpbml0ZSBsZW5ndGggYnVyc3QNCiNkZWZpbmUgCUFUOTFDX01BVFJJWF9VTEJUX1NJTkdMRV9BQ0NFU1MgICAgICAgICgweDEpIC8vIChITUFUUklYMikgU2luZ2xlIEFjY2Vzcw0KI2RlZmluZSAJQVQ5MUNfTUFUUklYX1VMQlRfNF9CRUFUICAgICAgICAgICAgICAgKDB4MikgLy8gKEhNQVRSSVgyKSA0IEJlYXQgQnVyc3QNCiNkZWZpbmUgCUFUOTFDX01BVFJJWF9VTEJUXzhfQkVBVCAgICAgICAgICAgICAgICgweDMpIC8vIChITUFUUklYMikgOCBCZWF0IEJ1cnN0DQojZGVmaW5lIAlBVDkxQ19NQVRSSVhfVUxCVF8xNl9CRUFUICAgICAgICAgICAgICAoMHg0KSAvLyAoSE1BVFJJWDIpIDE2IEJlYXQgQnVyc3QNCiNkZWZpbmUgCUFUOTFDX01BVFJJWF9VTEJUXzMyX0JFQVQgICAgICAgICAgICAgICgweDUpIC8vIChITUFUUklYMikgMzIgQmVhdCBCdXJzdA0KI2RlZmluZSAJQVQ5MUNfTUFUUklYX1VMQlRfNjRfQkVBVCAgICAgICAgICAgICAgKDB4NikgLy8gKEhNQVRSSVgyKSA2NCBCZWF0IEJ1cnN0DQojZGVmaW5lIAlBVDkxQ19NQVRSSVhfVUxCVF8xMjhfQkVBVCAgICAgICAgICAgICAoMHg3KSAvLyAoSE1BVFJJWDIpIDEyOCBCZWF0IEJ1cnN0DQovLyAtLS0tLS0tLSBNQVRSSVhfTUNGRzEgOiAoSE1BVFJJWDIgT2Zmc2V0OiAweDQpIE1hc3RlciBDb25maWd1cmF0aW9uIFJlZ2lzdGVyIEFSTSBidXMgUyAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIE1BVFJJWF9NQ0ZHMiA6IChITUFUUklYMiBPZmZzZXQ6IDB4OCkgTWFzdGVyIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBNQVRSSVhfTUNGRzMgOiAoSE1BVFJJWDIgT2Zmc2V0OiAweGMpIE1hc3RlciBDb25maWd1cmF0aW9uIFJlZ2lzdGVyIC0tLS0tLS0tIA0KLy8gLS0tLS0tLS0gTUFUUklYX01DRkc0IDogKEhNQVRSSVgyIE9mZnNldDogMHgxMCkgTWFzdGVyIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBNQVRSSVhfTUNGRzUgOiAoSE1BVFJJWDIgT2Zmc2V0OiAweDE0KSBNYXN0ZXIgQ29uZmlndXJhdGlvbiBSZWdpc3RlciAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIE1BVFJJWF9NQ0ZHNiA6IChITUFUUklYMiBPZmZzZXQ6IDB4MTgpIE1hc3RlciBDb25maWd1cmF0aW9uIFJlZ2lzdGVyIC0tLS0tLS0tIA0KLy8gLS0tLS0tLS0gTUFUUklYX01DRkc3IDogKEhNQVRSSVgyIE9mZnNldDogMHgxYykgTWFzdGVyIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBNQVRSSVhfU0NGRzAgOiAoSE1BVFJJWDIgT2Zmc2V0OiAweDQwKSBTbGF2ZSBDb25maWd1cmF0aW9uIFJlZ2lzdGVyIDAgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX01BVFJJWF9TTE9UX0NZQ0xFICgweEZGIDw8ICAwKSAvLyAoSE1BVFJJWDIpIE1heGltdW0gTnVtYmVyIG9mIEFsbG93ZWQgQ3ljbGVzIGZvciBhIEJ1cnN0DQojZGVmaW5lIEFUOTFDX01BVFJJWF9ERUZNU1RSX1RZUEUgKDB4MyA8PCAxNikgLy8gKEhNQVRSSVgyKSBEZWZhdWx0IE1hc3RlciBUeXBlDQojZGVmaW5lIAlBVDkxQ19NQVRSSVhfREVGTVNUUl9UWVBFX05PX0RFRk1TVFIgICAgICAgICAgICgweDAgPDwgMTYpIC8vIChITUFUUklYMikgTm8gRGVmYXVsdCBNYXN0ZXIuIEF0IHRoZSBlbmQgb2YgY3VycmVudCBzbGF2ZSBhY2Nlc3MsIGlmIG5vIG90aGVyIG1hc3RlciByZXF1ZXN0IGlzIHBlbmRpbmcsIHRoZSBzbGF2ZSBpcyBkZWNvbm5lY3RlZCBmcm9tIGFsbCBtYXN0ZXJzLiBUaGlzIHJlc3VsdHMgaW4gaGF2aW5nIGEgb25lIGN5Y2xlIGxhdGVuY3kgZm9yIHRoZSBmaXJzdCB0cmFuc2ZlciBvZiBhIGJ1cnN0Lg0KI2RlZmluZSAJQVQ5MUNfTUFUUklYX0RFRk1TVFJfVFlQRV9MQVNUX0RFRk1TVFIgICAgICAgICAoMHgxIDw8IDE2KSAvLyAoSE1BVFJJWDIpIExhc3QgRGVmYXVsdCBNYXN0ZXIuIEF0IHRoZSBlbmQgb2YgY3VycmVudCBzbGF2ZSBhY2Nlc3MsIGlmIG5vIG90aGVyIG1hc3RlciByZXF1ZXN0IGlzIHBlbmRpbmcsIHRoZSBzbGF2ZSBzdGF5IGNvbm5lY3RlZCB3aXRoIHRoZSBsYXN0IG1hc3RlciBoYXZpbmcgYWNjZXNzZWQgaXQuIFRoaXMgcmVzdWx0cyBpbiBub3QgaGF2aW5nIHRoZSBvbmUgY3ljbGUgbGF0ZW5jeSB3aGVuIHRoZSBsYXN0IG1hc3RlciByZS10cnlpbmcgYWNjZXNzIG9uIHRoZSBzbGF2ZS4NCiNkZWZpbmUgCUFUOTFDX01BVFJJWF9ERUZNU1RSX1RZUEVfRklYRURfREVGTVNUUiAgICAgICAgKDB4MiA8PCAxNikgLy8gKEhNQVRSSVgyKSBGaXhlZCBEZWZhdWx0IE1hc3Rlci4gQXQgdGhlIGVuZCBvZiBjdXJyZW50IHNsYXZlIGFjY2VzcywgaWYgbm8gb3RoZXIgbWFzdGVyIHJlcXVlc3QgaXMgcGVuZGluZywgdGhlIHNsYXZlIGNvbm5lY3RzIHdpdGggZml4ZWQgd2hpY2ggbnVtYmVyIGlzIGluIEZJWEVEX0RFRk1TVFIgZmllbGQuIFRoaXMgcmVzdWx0cyBpbiBub3QgaGF2aW5nIHRoZSBvbmUgY3ljbGUgbGF0ZW5jeSB3aGVuIHRoZSBmaXhlZCBtYXN0ZXIgcmUtdHJ5aW5nIGFjY2VzcyBvbiB0aGUgc2xhdmUuDQojZGVmaW5lIEFUOTFDX01BVFJJWF9GSVhFRF9ERUZNU1RSX1NDRkcwICgweDcgPDwgMTgpIC8vIChITUFUUklYMikgRml4ZWQgSW5kZXggb2YgRGVmYXVsdCBNYXN0ZXINCiNkZWZpbmUgCUFUOTFDX01BVFJJWF9GSVhFRF9ERUZNU1RSX1NDRkcwX0FSTVMgICAgICAgICAgICAgICAgICgweDEgPDwgMTgpIC8vIChITUFUUklYMikgQVJNUyBpcyBEZWZhdWx0IE1hc3Rlcg0KLy8gLS0tLS0tLS0gTUFUUklYX1NDRkcxIDogKEhNQVRSSVgyIE9mZnNldDogMHg0NCkgU2xhdmUgQ29uZmlndXJhdGlvbiBSZWdpc3RlciAxIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19NQVRSSVhfRklYRURfREVGTVNUUl9TQ0ZHMSAoMHg3IDw8IDE4KSAvLyAoSE1BVFJJWDIpIEZpeGVkIEluZGV4IG9mIERlZmF1bHQgTWFzdGVyDQojZGVmaW5lIAlBVDkxQ19NQVRSSVhfRklYRURfREVGTVNUUl9TQ0ZHMV9BUk1TICAgICAgICAgICAgICAgICAoMHgxIDw8IDE4KSAvLyAoSE1BVFJJWDIpIEFSTVMgaXMgRGVmYXVsdCBNYXN0ZXINCi8vIC0tLS0tLS0tIE1BVFJJWF9TQ0ZHMiA6IChITUFUUklYMiBPZmZzZXQ6IDB4NDgpIFNsYXZlIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgMiAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfTUFUUklYX0ZJWEVEX0RFRk1TVFJfU0NGRzIgKDB4NyA8PCAxOCkgLy8gKEhNQVRSSVgyKSBGaXhlZCBJbmRleCBvZiBEZWZhdWx0IE1hc3Rlcg0KI2RlZmluZSAJQVQ5MUNfTUFUUklYX0ZJWEVEX0RFRk1TVFJfU0NGRzJfQVJNUyAgICAgICAgICAgICAgICAgKDB4MSA8PCAxOCkgLy8gKEhNQVRSSVgyKSBBUk1TIGlzIERlZmF1bHQgTWFzdGVyDQovLyAtLS0tLS0tLSBNQVRSSVhfU0NGRzMgOiAoSE1BVFJJWDIgT2Zmc2V0OiAweDRjKSBTbGF2ZSBDb25maWd1cmF0aW9uIFJlZ2lzdGVyIDMgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX01BVFJJWF9GSVhFRF9ERUZNU1RSX1NDRkczICgweDcgPDwgMTgpIC8vIChITUFUUklYMikgRml4ZWQgSW5kZXggb2YgRGVmYXVsdCBNYXN0ZXINCiNkZWZpbmUgCUFUOTFDX01BVFJJWF9GSVhFRF9ERUZNU1RSX1NDRkczX0FSTUMgICAgICAgICAgICAgICAgICgweDAgPDwgMTgpIC8vIChITUFUUklYMikgQVJNQyBpcyBEZWZhdWx0IE1hc3Rlcg0KLy8gLS0tLS0tLS0gTUFUUklYX1NDRkc0IDogKEhNQVRSSVgyIE9mZnNldDogMHg1MCkgU2xhdmUgQ29uZmlndXJhdGlvbiBSZWdpc3RlciA0IC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19NQVRSSVhfRklYRURfREVGTVNUUl9TQ0ZHNCAoMHg3IDw8IDE4KSAvLyAoSE1BVFJJWDIpIEZpeGVkIEluZGV4IG9mIERlZmF1bHQgTWFzdGVyDQojZGVmaW5lIAlBVDkxQ19NQVRSSVhfRklYRURfREVGTVNUUl9TQ0ZHNF9BUk1TICAgICAgICAgICAgICAgICAoMHgxIDw8IDE4KSAvLyAoSE1BVFJJWDIpIEFSTVMgaXMgRGVmYXVsdCBNYXN0ZXINCi8vIC0tLS0tLS0tIE1BVFJJWF9TQ0ZHNSA6IChITUFUUklYMiBPZmZzZXQ6IDB4NTQpIFNsYXZlIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgNSAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfTUFUUklYX0ZJWEVEX0RFRk1TVFJfU0NGRzUgKDB4NyA8PCAxOCkgLy8gKEhNQVRSSVgyKSBGaXhlZCBJbmRleCBvZiBEZWZhdWx0IE1hc3Rlcg0KI2RlZmluZSAJQVQ5MUNfTUFUUklYX0ZJWEVEX0RFRk1TVFJfU0NGRzVfQVJNUyAgICAgICAgICAgICAgICAgKDB4MSA8PCAxOCkgLy8gKEhNQVRSSVgyKSBBUk1TIGlzIERlZmF1bHQgTWFzdGVyDQovLyAtLS0tLS0tLSBNQVRSSVhfU0NGRzYgOiAoSE1BVFJJWDIgT2Zmc2V0OiAweDU4KSBTbGF2ZSBDb25maWd1cmF0aW9uIFJlZ2lzdGVyIDYgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX01BVFJJWF9GSVhFRF9ERUZNU1RSX1NDRkc2ICgweDcgPDwgMTgpIC8vIChITUFUUklYMikgRml4ZWQgSW5kZXggb2YgRGVmYXVsdCBNYXN0ZXINCiNkZWZpbmUgCUFUOTFDX01BVFJJWF9GSVhFRF9ERUZNU1RSX1NDRkc2X0FSTVMgICAgICAgICAgICAgICAgICgweDEgPDwgMTgpIC8vIChITUFUUklYMikgQVJNUyBpcyBEZWZhdWx0IE1hc3Rlcg0KLy8gLS0tLS0tLS0gTUFUUklYX1NDRkc3IDogKEhNQVRSSVgyIE9mZnNldDogMHg1YykgU2xhdmUgQ29uZmlndXJhdGlvbiBSZWdpc3RlciA3IC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19NQVRSSVhfRklYRURfREVGTVNUUl9TQ0ZHNyAoMHg3IDw8IDE4KSAvLyAoSE1BVFJJWDIpIEZpeGVkIEluZGV4IG9mIERlZmF1bHQgTWFzdGVyDQojZGVmaW5lIAlBVDkxQ19NQVRSSVhfRklYRURfREVGTVNUUl9TQ0ZHN19BUk1TICAgICAgICAgICAgICAgICAoMHgxIDw8IDE4KSAvLyAoSE1BVFJJWDIpIEFSTVMgaXMgRGVmYXVsdCBNYXN0ZXINCi8vIC0tLS0tLS0tIE1BVFJJWF9TQ0ZHOCA6IChITUFUUklYMiBPZmZzZXQ6IDB4NjApIFNsYXZlIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgOCAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfTUFUUklYX0ZJWEVEX0RFRk1TVFJfU0NGRzggKDB4NyA8PCAxOCkgLy8gKEhNQVRSSVgyKSBGaXhlZCBJbmRleCBvZiBEZWZhdWx0IE1hc3Rlcg0KI2RlZmluZSAJQVQ5MUNfTUFUUklYX0ZJWEVEX0RFRk1TVFJfU0NGRzhfQVJNUyAgICAgICAgICAgICAgICAgKDB4MSA8PCAxOCkgLy8gKEhNQVRSSVgyKSBBUk1TIGlzIERlZmF1bHQgTWFzdGVyDQojZGVmaW5lIAlBVDkxQ19NQVRSSVhfRklYRURfREVGTVNUUl9TQ0ZHOF9IRE1BICAgICAgICAgICAgICAgICAoMHg0IDw8IDE4KSAvLyAoSE1BVFJJWDIpIEhETUEgaXMgRGVmYXVsdCBNYXN0ZXINCi8vIC0tLS0tLS0tIE1BVFJJWF9TRlIwIDogKEhNQVRSSVgyIE9mZnNldDogMHgxMTApIFNwZWNpYWwgRnVuY3Rpb24gUmVnaXN0ZXIgMCAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIE1BVFJJWF9TRlIwIDogKEhNQVRSSVgyIE9mZnNldDogMHgxMTQpIFNwZWNpYWwgRnVuY3Rpb24gUmVnaXN0ZXIgMCAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIE1BVFJJWF9TRlIwIDogKEhNQVRSSVgyIE9mZnNldDogMHgxMTgpIFNwZWNpYWwgRnVuY3Rpb24gUmVnaXN0ZXIgMCAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIE1BVFJJWF9TRlIwIDogKEhNQVRSSVgyIE9mZnNldDogMHgxMWMpIFNwZWNpYWwgRnVuY3Rpb24gUmVnaXN0ZXIgMCAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIE1BVFJJWF9TRlIwIDogKEhNQVRSSVgyIE9mZnNldDogMHgxMjApIFNwZWNpYWwgRnVuY3Rpb24gUmVnaXN0ZXIgMCAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIE1BVFJJWF9TRlIwIDogKEhNQVRSSVgyIE9mZnNldDogMHgxMjQpIFNwZWNpYWwgRnVuY3Rpb24gUmVnaXN0ZXIgMCAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIE1BVFJJWF9TRlIwIDogKEhNQVRSSVgyIE9mZnNldDogMHgxMjgpIFNwZWNpYWwgRnVuY3Rpb24gUmVnaXN0ZXIgMCAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIE1BVFJJWF9TRlIwIDogKEhNQVRSSVgyIE9mZnNldDogMHgxMmMpIFNwZWNpYWwgRnVuY3Rpb24gUmVnaXN0ZXIgMCAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIE1BVFJJWF9TRlIwIDogKEhNQVRSSVgyIE9mZnNldDogMHgxMzApIFNwZWNpYWwgRnVuY3Rpb24gUmVnaXN0ZXIgMCAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIE1BVFJJWF9TRlIwIDogKEhNQVRSSVgyIE9mZnNldDogMHgxMzQpIFNwZWNpYWwgRnVuY3Rpb24gUmVnaXN0ZXIgMCAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIE1BVFJJWF9TRlIwIDogKEhNQVRSSVgyIE9mZnNldDogMHgxMzgpIFNwZWNpYWwgRnVuY3Rpb24gUmVnaXN0ZXIgMCAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIE1BVFJJWF9TRlIwIDogKEhNQVRSSVgyIE9mZnNldDogMHgxM2MpIFNwZWNpYWwgRnVuY3Rpb24gUmVnaXN0ZXIgMCAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIE1BVFJJWF9TRlIwIDogKEhNQVRSSVgyIE9mZnNldDogMHgxNDApIFNwZWNpYWwgRnVuY3Rpb24gUmVnaXN0ZXIgMCAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIE1BVFJJWF9TRlIwIDogKEhNQVRSSVgyIE9mZnNldDogMHgxNDQpIFNwZWNpYWwgRnVuY3Rpb24gUmVnaXN0ZXIgMCAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIE1BVFJJWF9TRlIwIDogKEhNQVRSSVgyIE9mZnNldDogMHgxNDgpIFNwZWNpYWwgRnVuY3Rpb24gUmVnaXN0ZXIgMCAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIE1BVFJJWF9TRlIwIDogKEhNQVRSSVgyIE9mZnNldDogMHgxNGMpIFNwZWNpYWwgRnVuY3Rpb24gUmVnaXN0ZXIgMCAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIEhNQVRSSVgyX1ZFUiA6IChITUFUUklYMiBPZmZzZXQ6IDB4MWZjKSAgVkVSU0lPTiAgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX0hNQVRSSVgyX1ZFUiAgICAoMHhGIDw8ICAwKSAvLyAoSE1BVFJJWDIpICBWRVJTSU9OICBSZWdpc3Rlcg0KDQovLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KLy8gICAgICAgICAgICAgIFNPRlRXQVJFIEFQSSBERUZJTklUSU9OICBGT1IgTkVTVEVEIHZlY3RvciBJbnRlcnJ1cHQgQ29udHJvbGxlcg0KLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCiNpZm5kZWYgX19BU1NFTUJMWV9fDQp0eXBlZGVmIHN0cnVjdCBfQVQ5MVNfTlZJQyB7DQoJQVQ5MV9SRUcJIFJlc2VydmVkMFsxXTsgCS8vIA0KCUFUOTFfUkVHCSBOVklDX0lDVFI7IAkvLyBJbnRlcnJ1cHQgQ29udHJvbCBUeXBlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkMVsyXTsgCS8vIA0KCUFUOTFfUkVHCSBOVklDX1NUSUNLQ1NSOyAJLy8gU3lzVGljayBDb250cm9sIGFuZCBTdGF0dXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgTlZJQ19TVElDS1JWUjsgCS8vIFN5c1RpY2sgUmVsb2FkIFZhbHVlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIE5WSUNfU1RJQ0tDVlI7IAkvLyBTeXNUaWNrIEN1cnJlbnQgVmFsdWUgUmVnaXN0ZXINCglBVDkxX1JFRwkgTlZJQ19TVElDS0NBTFZSOyAJLy8gU3lzVGljayBDYWxpYnJhdGlvbiBWYWx1ZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDJbNTZdOyAJLy8gDQoJQVQ5MV9SRUcJIE5WSUNfSVNFUls4XTsgCS8vIFNldCBFbmFibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQzWzI0XTsgCS8vIA0KCUFUOTFfUkVHCSBOVklDX0lDRVJbOF07IAkvLyBDbGVhciBlbmFibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQ0WzI0XTsgCS8vIA0KCUFUOTFfUkVHCSBOVklDX0lTUFJbOF07IAkvLyBTZXQgUGVuZGluZyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDVbMjRdOyAJLy8gDQoJQVQ5MV9SRUcJIE5WSUNfSUNQUls4XTsgCS8vIENsZWFyIFBlbmRpbmcgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQ2WzI0XTsgCS8vIA0KCUFUOTFfUkVHCSBOVklDX0FCUls4XTsgCS8vIEFjdGl2ZSBCaXQgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQ3WzU2XTsgCS8vIA0KCUFUOTFfUkVHCSBOVklDX0lQUls2MF07IAkvLyBJbnRlcnJ1cHQgTWFzayBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDhbNTE2XTsgCS8vIA0KCUFUOTFfUkVHCSBOVklDX0NQVUlEOyAJLy8gQ1BVSUQgQmFzZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBOVklDX0lDU1I7IAkvLyBJbnRlcnJ1cHQgQ29udHJvbCBTdGF0ZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBOVklDX1ZUT0ZGUjsgCS8vIFZlY3RvciBUYWJsZSBPZmZzZXQgUmVnaXN0ZXINCglBVDkxX1JFRwkgTlZJQ19BSVJDUjsgCS8vIEFwcGxpY2F0aW9uIEludGVycnVwdC9SZXNldCBDb250cm9sIFJlZw0KCUFUOTFfUkVHCSBOVklDX1NDUjsgCS8vIFN5c3RlbSBDb250cm9sIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIE5WSUNfQ0NSOyAJLy8gQ29uZmlndXJhdGlvbiBDb250cm9sIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIE5WSUNfSEFORDRQUjsgCS8vIFN5c3RlbSBIYW5kbGVycyA0LTcgUHJpb3JpdHkgUmVnaXN0ZXINCglBVDkxX1JFRwkgTlZJQ19IQU5EOFBSOyAJLy8gU3lzdGVtIEhhbmRsZXJzIDgtMTEgUHJpb3JpdHkgUmVnaXN0ZXINCglBVDkxX1JFRwkgTlZJQ19IQU5EMTJQUjsgCS8vIFN5c3RlbSBIYW5kbGVycyAxMi0xNSBQcmlvcml0eSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBOVklDX0hBTkRDU1I7IAkvLyBTeXN0ZW0gSGFuZGxlciBDb250cm9sIGFuZCBTdGF0ZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBOVklDX0NGU1I7IAkvLyBDb25maWd1cmFibGUgRmF1bHQgU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIE5WSUNfSEZTUjsgCS8vIEhhcmQgRmF1bHQgU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIE5WSUNfREZTUjsgCS8vIERlYnVnIEZhdWx0IFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBOVklDX01NQVI7IAkvLyBNZW0gTWFuYWdlIEFkZHJlc3MgUmVnaXN0ZXINCglBVDkxX1JFRwkgTlZJQ19CRkFSOyAJLy8gQnVzIEZhdWx0IEFkZHJlc3MgUmVnaXN0ZXINCglBVDkxX1JFRwkgTlZJQ19BRlNSOyAJLy8gQXV4aWxpYXJ5IEZhdWx0IFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBOVklDX1BGUjA7IAkvLyBQcm9jZXNzb3IgRmVhdHVyZSByZWdpc3RlcjANCglBVDkxX1JFRwkgTlZJQ19QRlIxOyAJLy8gUHJvY2Vzc29yIEZlYXR1cmUgcmVnaXN0ZXIxDQoJQVQ5MV9SRUcJIE5WSUNfREZSMDsgCS8vIERlYnVnIEZlYXR1cmUgcmVnaXN0ZXIwDQoJQVQ5MV9SRUcJIE5WSUNfQUZSMDsgCS8vIEF1eGlsaWFyeSBGZWF0dXJlIHJlZ2lzdGVyMA0KCUFUOTFfUkVHCSBOVklDX01NRlIwOyAJLy8gTWVtb3J5IE1vZGVsIEZlYXR1cmUgcmVnaXN0ZXIwDQoJQVQ5MV9SRUcJIE5WSUNfTU1GUjE7IAkvLyBNZW1vcnkgTW9kZWwgRmVhdHVyZSByZWdpc3RlcjENCglBVDkxX1JFRwkgTlZJQ19NTUZSMjsgCS8vIE1lbW9yeSBNb2RlbCBGZWF0dXJlIHJlZ2lzdGVyMg0KCUFUOTFfUkVHCSBOVklDX01NRlIzOyAJLy8gTWVtb3J5IE1vZGVsIEZlYXR1cmUgcmVnaXN0ZXIzDQoJQVQ5MV9SRUcJIE5WSUNfSVNBUjA7IAkvLyBJU0EgRmVhdHVyZSByZWdpc3RlcjANCglBVDkxX1JFRwkgTlZJQ19JU0FSMTsgCS8vIElTQSBGZWF0dXJlIHJlZ2lzdGVyMQ0KCUFUOTFfUkVHCSBOVklDX0lTQVIyOyAJLy8gSVNBIEZlYXR1cmUgcmVnaXN0ZXIyDQoJQVQ5MV9SRUcJIE5WSUNfSVNBUjM7IAkvLyBJU0EgRmVhdHVyZSByZWdpc3RlcjMNCglBVDkxX1JFRwkgTlZJQ19JU0FSNDsgCS8vIElTQSBGZWF0dXJlIHJlZ2lzdGVyNA0KCUFUOTFfUkVHCSBSZXNlcnZlZDlbOTldOyAJLy8gDQoJQVQ5MV9SRUcJIE5WSUNfU1RJUjsgCS8vIFNvZnR3YXJlIFRyaWdnZXIgSW50ZXJydXB0IFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkMTBbNTFdOyAJLy8gDQoJQVQ5MV9SRUcJIE5WSUNfUElENDsgCS8vIFBlcmlwaGVyYWwgaWRlbnRpZmljYXRpb24gcmVnaXN0ZXINCglBVDkxX1JFRwkgTlZJQ19QSUQ1OyAJLy8gUGVyaXBoZXJhbCBpZGVudGlmaWNhdGlvbiByZWdpc3Rlcg0KCUFUOTFfUkVHCSBOVklDX1BJRDY7IAkvLyBQZXJpcGhlcmFsIGlkZW50aWZpY2F0aW9uIHJlZ2lzdGVyDQoJQVQ5MV9SRUcJIE5WSUNfUElENzsgCS8vIFBlcmlwaGVyYWwgaWRlbnRpZmljYXRpb24gcmVnaXN0ZXINCglBVDkxX1JFRwkgTlZJQ19QSUQwOyAJLy8gUGVyaXBoZXJhbCBpZGVudGlmaWNhdGlvbiByZWdpc3RlciBiNzowDQoJQVQ5MV9SRUcJIE5WSUNfUElEMTsgCS8vIFBlcmlwaGVyYWwgaWRlbnRpZmljYXRpb24gcmVnaXN0ZXIgYjE1OjgNCglBVDkxX1JFRwkgTlZJQ19QSUQyOyAJLy8gUGVyaXBoZXJhbCBpZGVudGlmaWNhdGlvbiByZWdpc3RlciBiMjM6MTYNCglBVDkxX1JFRwkgTlZJQ19QSUQzOyAJLy8gUGVyaXBoZXJhbCBpZGVudGlmaWNhdGlvbiByZWdpc3RlciBiMzE6MjQNCglBVDkxX1JFRwkgTlZJQ19DSUQwOyAJLy8gQ29tcG9uZW50IGlkZW50aWZpY2F0aW9uIHJlZ2lzdGVyIGI3OjANCglBVDkxX1JFRwkgTlZJQ19DSUQxOyAJLy8gQ29tcG9uZW50IGlkZW50aWZpY2F0aW9uIHJlZ2lzdGVyIGIxNTo4DQoJQVQ5MV9SRUcJIE5WSUNfQ0lEMjsgCS8vIENvbXBvbmVudCBpZGVudGlmaWNhdGlvbiByZWdpc3RlciBiMjM6MTYNCglBVDkxX1JFRwkgTlZJQ19DSUQzOyAJLy8gQ29tcG9uZW50IGlkZW50aWZpY2F0aW9uIHJlZ2lzdGVyIGIzMToyNA0KfSBBVDkxU19OVklDLCAqQVQ5MVBTX05WSUM7DQojZWxzZQ0KI2RlZmluZSBOVklDX0lDVFIgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAwNCkgLy8gKE5WSUNfSUNUUikgSW50ZXJydXB0IENvbnRyb2wgVHlwZSBSZWdpc3Rlcg0KI2RlZmluZSBOVklDX1NUSUNLQ1NSICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAxMCkgLy8gKE5WSUNfU1RJQ0tDU1IpIFN5c1RpY2sgQ29udHJvbCBhbmQgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIE5WSUNfU1RJQ0tSVlIgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDE0KSAvLyAoTlZJQ19TVElDS1JWUikgU3lzVGljayBSZWxvYWQgVmFsdWUgUmVnaXN0ZXINCiNkZWZpbmUgTlZJQ19TVElDS0NWUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMTgpIC8vIChOVklDX1NUSUNLQ1ZSKSBTeXNUaWNrIEN1cnJlbnQgVmFsdWUgUmVnaXN0ZXINCiNkZWZpbmUgTlZJQ19TVElDS0NBTFZSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMUMpIC8vIChOVklDX1NUSUNLQ0FMVlIpIFN5c1RpY2sgQ2FsaWJyYXRpb24gVmFsdWUgUmVnaXN0ZXINCiNkZWZpbmUgTlZJQ19JU0VSICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxMDApIC8vIChOVklDX0lTRVIpIFNldCBFbmFibGUgUmVnaXN0ZXINCiNkZWZpbmUgTlZJQ19JQ0VSICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxODApIC8vIChOVklDX0lDRVIpIENsZWFyIGVuYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBOVklDX0lTUFIgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDIwMCkgLy8gKE5WSUNfSVNQUikgU2V0IFBlbmRpbmcgUmVnaXN0ZXINCiNkZWZpbmUgTlZJQ19JQ1BSICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAyODApIC8vIChOVklDX0lDUFIpIENsZWFyIFBlbmRpbmcgUmVnaXN0ZXINCiNkZWZpbmUgTlZJQ19JQUJSICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAzMDApIC8vIChOVklDX0lBQlIpIEFjdGl2ZSBCaXQgUmVnaXN0ZXINCiNkZWZpbmUgTlZJQ19JUFIgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDA0MDApIC8vIChOVklDX0lQUikgSW50ZXJydXB0IE1hc2sgUmVnaXN0ZXINCiNkZWZpbmUgTlZJQ19DUFVJRCAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDBEMDApIC8vIChOVklDX0NQVUlEKSBDUFVJRCBCYXNlIFJlZ2lzdGVyDQojZGVmaW5lIE5WSUNfSUNTUiAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwRDA0KSAvLyAoTlZJQ19JQ1NSKSBJbnRlcnJ1cHQgQ29udHJvbCBTdGF0ZSBSZWdpc3Rlcg0KI2RlZmluZSBOVklDX1ZUT0ZGUiAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMEQwOCkgLy8gKE5WSUNfVlRPRkZSKSBWZWN0b3IgVGFibGUgT2Zmc2V0IFJlZ2lzdGVyDQojZGVmaW5lIE5WSUNfQUlSQ1IgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwRDBDKSAvLyAoTlZJQ19BSVJDUikgQXBwbGljYXRpb24gSW50ZXJydXB0L1Jlc2V0IENvbnRyb2wgUmVnDQojZGVmaW5lIE5WSUNfU0NSICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwRDEwKSAvLyAoTlZJQ19TQ1IpIFN5c3RlbSBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIE5WSUNfQ0NSICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwRDE0KSAvLyAoTlZJQ19DQ1IpIENvbmZpZ3VyYXRpb24gQ29udHJvbCBSZWdpc3Rlcg0KI2RlZmluZSBOVklDX0hBTkQ0UFIgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMEQxOCkgLy8gKE5WSUNfSEFORDRQUikgU3lzdGVtIEhhbmRsZXJzIDQtNyBQcmlvcml0eSBSZWdpc3Rlcg0KI2RlZmluZSBOVklDX0hBTkQ4UFIgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMEQxQykgLy8gKE5WSUNfSEFORDhQUikgU3lzdGVtIEhhbmRsZXJzIDgtMTEgUHJpb3JpdHkgUmVnaXN0ZXINCiNkZWZpbmUgTlZJQ19IQU5EMTJQUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDBEMjApIC8vIChOVklDX0hBTkQxMlBSKSBTeXN0ZW0gSGFuZGxlcnMgMTItMTUgUHJpb3JpdHkgUmVnaXN0ZXINCiNkZWZpbmUgTlZJQ19IQU5EQ1NSICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDBEMjQpIC8vIChOVklDX0hBTkRDU1IpIFN5c3RlbSBIYW5kbGVyIENvbnRyb2wgYW5kIFN0YXRlIFJlZ2lzdGVyDQojZGVmaW5lIE5WSUNfQ0ZTUiAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwRDI4KSAvLyAoTlZJQ19DRlNSKSBDb25maWd1cmFibGUgRmF1bHQgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIE5WSUNfSEZTUiAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwRDJDKSAvLyAoTlZJQ19IRlNSKSBIYXJkIEZhdWx0IFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBOVklDX0RGU1IgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMEQzMCkgLy8gKE5WSUNfREZTUikgRGVidWcgRmF1bHQgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIE5WSUNfTU1BUiAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwRDM0KSAvLyAoTlZJQ19NTUFSKSBNZW0gTWFuYWdlIEFkZHJlc3MgUmVnaXN0ZXINCiNkZWZpbmUgTlZJQ19CRkFSICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDBEMzgpIC8vIChOVklDX0JGQVIpIEJ1cyBGYXVsdCBBZGRyZXNzIFJlZ2lzdGVyDQojZGVmaW5lIE5WSUNfQUZTUiAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwRDNDKSAvLyAoTlZJQ19BRlNSKSBBdXhpbGlhcnkgRmF1bHQgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIE5WSUNfUEZSMCAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwRDQwKSAvLyAoTlZJQ19QRlIwKSBQcm9jZXNzb3IgRmVhdHVyZSByZWdpc3RlcjANCiNkZWZpbmUgTlZJQ19QRlIxICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDBENDQpIC8vIChOVklDX1BGUjEpIFByb2Nlc3NvciBGZWF0dXJlIHJlZ2lzdGVyMQ0KI2RlZmluZSBOVklDX0RGUjAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMEQ0OCkgLy8gKE5WSUNfREZSMCkgRGVidWcgRmVhdHVyZSByZWdpc3RlcjANCiNkZWZpbmUgTlZJQ19BRlIwICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDBENEMpIC8vIChOVklDX0FGUjApIEF1eGlsaWFyeSBGZWF0dXJlIHJlZ2lzdGVyMA0KI2RlZmluZSBOVklDX01NRlIwICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMEQ1MCkgLy8gKE5WSUNfTU1GUjApIE1lbW9yeSBNb2RlbCBGZWF0dXJlIHJlZ2lzdGVyMA0KI2RlZmluZSBOVklDX01NRlIxICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMEQ1NCkgLy8gKE5WSUNfTU1GUjEpIE1lbW9yeSBNb2RlbCBGZWF0dXJlIHJlZ2lzdGVyMQ0KI2RlZmluZSBOVklDX01NRlIyICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMEQ1OCkgLy8gKE5WSUNfTU1GUjIpIE1lbW9yeSBNb2RlbCBGZWF0dXJlIHJlZ2lzdGVyMg0KI2RlZmluZSBOVklDX01NRlIzICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMEQ1QykgLy8gKE5WSUNfTU1GUjMpIE1lbW9yeSBNb2RlbCBGZWF0dXJlIHJlZ2lzdGVyMw0KI2RlZmluZSBOVklDX0lTQVIwICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMEQ2MCkgLy8gKE5WSUNfSVNBUjApIElTQSBGZWF0dXJlIHJlZ2lzdGVyMA0KI2RlZmluZSBOVklDX0lTQVIxICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMEQ2NCkgLy8gKE5WSUNfSVNBUjEpIElTQSBGZWF0dXJlIHJlZ2lzdGVyMQ0KI2RlZmluZSBOVklDX0lTQVIyICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMEQ2OCkgLy8gKE5WSUNfSVNBUjIpIElTQSBGZWF0dXJlIHJlZ2lzdGVyMg0KI2RlZmluZSBOVklDX0lTQVIzICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMEQ2QykgLy8gKE5WSUNfSVNBUjMpIElTQSBGZWF0dXJlIHJlZ2lzdGVyMw0KI2RlZmluZSBOVklDX0lTQVI0ICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMEQ3MCkgLy8gKE5WSUNfSVNBUjQpIElTQSBGZWF0dXJlIHJlZ2lzdGVyNA0KI2RlZmluZSBOVklDX1NUSVIgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMEYwMCkgLy8gKE5WSUNfU1RJUikgU29mdHdhcmUgVHJpZ2dlciBJbnRlcnJ1cHQgUmVnaXN0ZXINCiNkZWZpbmUgTlZJQ19QSUQ0ICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDBGRDApIC8vIChOVklDX1BJRDQpIFBlcmlwaGVyYWwgaWRlbnRpZmljYXRpb24gcmVnaXN0ZXINCiNkZWZpbmUgTlZJQ19QSUQ1ICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDBGRDQpIC8vIChOVklDX1BJRDUpIFBlcmlwaGVyYWwgaWRlbnRpZmljYXRpb24gcmVnaXN0ZXINCiNkZWZpbmUgTlZJQ19QSUQ2ICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDBGRDgpIC8vIChOVklDX1BJRDYpIFBlcmlwaGVyYWwgaWRlbnRpZmljYXRpb24gcmVnaXN0ZXINCiNkZWZpbmUgTlZJQ19QSUQ3ICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDBGREMpIC8vIChOVklDX1BJRDcpIFBlcmlwaGVyYWwgaWRlbnRpZmljYXRpb24gcmVnaXN0ZXINCiNkZWZpbmUgTlZJQ19QSUQwICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDBGRTApIC8vIChOVklDX1BJRDApIFBlcmlwaGVyYWwgaWRlbnRpZmljYXRpb24gcmVnaXN0ZXIgYjc6MA0KI2RlZmluZSBOVklDX1BJRDEgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMEZFNCkgLy8gKE5WSUNfUElEMSkgUGVyaXBoZXJhbCBpZGVudGlmaWNhdGlvbiByZWdpc3RlciBiMTU6OA0KI2RlZmluZSBOVklDX1BJRDIgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMEZFOCkgLy8gKE5WSUNfUElEMikgUGVyaXBoZXJhbCBpZGVudGlmaWNhdGlvbiByZWdpc3RlciBiMjM6MTYNCiNkZWZpbmUgTlZJQ19QSUQzICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDBGRUMpIC8vIChOVklDX1BJRDMpIFBlcmlwaGVyYWwgaWRlbnRpZmljYXRpb24gcmVnaXN0ZXIgYjMxOjI0DQojZGVmaW5lIE5WSUNfQ0lEMCAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwRkYwKSAvLyAoTlZJQ19DSUQwKSBDb21wb25lbnQgaWRlbnRpZmljYXRpb24gcmVnaXN0ZXIgYjc6MA0KI2RlZmluZSBOVklDX0NJRDEgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMEZGNCkgLy8gKE5WSUNfQ0lEMSkgQ29tcG9uZW50IGlkZW50aWZpY2F0aW9uIHJlZ2lzdGVyIGIxNTo4DQojZGVmaW5lIE5WSUNfQ0lEMiAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwRkY4KSAvLyAoTlZJQ19DSUQyKSBDb21wb25lbnQgaWRlbnRpZmljYXRpb24gcmVnaXN0ZXIgYjIzOjE2DQojZGVmaW5lIE5WSUNfQ0lEMyAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwRkZDKSAvLyAoTlZJQ19DSUQzKSBDb21wb25lbnQgaWRlbnRpZmljYXRpb24gcmVnaXN0ZXIgYjMxOjI0DQoNCiNlbmRpZg0KLy8gLS0tLS0tLS0gTlZJQ19JQ1RSIDogKE5WSUMgT2Zmc2V0OiAweDQpIEludGVycnVwdCBDb250cm9sbGVyIFR5cGUgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX05WSUNfSU5UTElORVNOVU0gKDB4RiA8PCAgMCkgLy8gKE5WSUMpIFRvdGFsIG51bWJlciBvZiBpbnRlcnJ1cHQgbGluZXMNCiNkZWZpbmUgCUFUOTFDX05WSUNfSU5UTElORVNOVU1fMzIgICAgICAgICAgICAgICAgICAgKDB4MCkgLy8gKE5WSUMpIHVwIHRvIDMyIGludGVycnVwdCBsaW5lcyBzdXBwb3J0ZWQNCiNkZWZpbmUgCUFUOTFDX05WSUNfSU5UTElORVNOVU1fNjQgICAgICAgICAgICAgICAgICAgKDB4MSkgLy8gKE5WSUMpIHVwIHRvIDY0IGludGVycnVwdCBsaW5lcyBzdXBwb3J0ZWQNCiNkZWZpbmUgCUFUOTFDX05WSUNfSU5UTElORVNOVU1fOTYgICAgICAgICAgICAgICAgICAgKDB4MikgLy8gKE5WSUMpIHVwIHRvIDk2IGludGVycnVwdCBsaW5lcyBzdXBwb3J0ZWQNCiNkZWZpbmUgCUFUOTFDX05WSUNfSU5UTElORVNOVU1fMTI4ICAgICAgICAgICAgICAgICAgKDB4MykgLy8gKE5WSUMpIHVwIHRvIDEyOCBpbnRlcnJ1cHQgbGluZXMgc3VwcG9ydGVkDQojZGVmaW5lIAlBVDkxQ19OVklDX0lOVExJTkVTTlVNXzE2MCAgICAgICAgICAgICAgICAgICgweDQpIC8vIChOVklDKSB1cCB0byAxNjAgaW50ZXJydXB0IGxpbmVzIHN1cHBvcnRlZA0KI2RlZmluZSAJQVQ5MUNfTlZJQ19JTlRMSU5FU05VTV8xOTIgICAgICAgICAgICAgICAgICAoMHg1KSAvLyAoTlZJQykgdXAgdG8gMTkyIGludGVycnVwdCBsaW5lcyBzdXBwb3J0ZWQNCiNkZWZpbmUgCUFUOTFDX05WSUNfSU5UTElORVNOVU1fMjI0ICAgICAgICAgICAgICAgICAgKDB4NikgLy8gKE5WSUMpIHVwIHRvIDIyNCBpbnRlcnJ1cHQgbGluZXMgc3VwcG9ydGVkDQojZGVmaW5lIAlBVDkxQ19OVklDX0lOVExJTkVTTlVNXzI1NiAgICAgICAgICAgICAgICAgICgweDcpIC8vIChOVklDKSB1cCB0byAyNTYgaW50ZXJydXB0IGxpbmVzIHN1cHBvcnRlZA0KI2RlZmluZSAJQVQ5MUNfTlZJQ19JTlRMSU5FU05VTV8yODggICAgICAgICAgICAgICAgICAoMHg4KSAvLyAoTlZJQykgdXAgdG8gMjg4IGludGVycnVwdCBsaW5lcyBzdXBwb3J0ZWQNCiNkZWZpbmUgCUFUOTFDX05WSUNfSU5UTElORVNOVU1fMzIwICAgICAgICAgICAgICAgICAgKDB4OSkgLy8gKE5WSUMpIHVwIHRvIDMyMCBpbnRlcnJ1cHQgbGluZXMgc3VwcG9ydGVkDQojZGVmaW5lIAlBVDkxQ19OVklDX0lOVExJTkVTTlVNXzM1MiAgICAgICAgICAgICAgICAgICgweEEpIC8vIChOVklDKSB1cCB0byAzNTIgaW50ZXJydXB0IGxpbmVzIHN1cHBvcnRlZA0KI2RlZmluZSAJQVQ5MUNfTlZJQ19JTlRMSU5FU05VTV8zODQgICAgICAgICAgICAgICAgICAoMHhCKSAvLyAoTlZJQykgdXAgdG8gMzg0IGludGVycnVwdCBsaW5lcyBzdXBwb3J0ZWQNCiNkZWZpbmUgCUFUOTFDX05WSUNfSU5UTElORVNOVU1fNDE2ICAgICAgICAgICAgICAgICAgKDB4QykgLy8gKE5WSUMpIHVwIHRvIDQxNiBpbnRlcnJ1cHQgbGluZXMgc3VwcG9ydGVkDQojZGVmaW5lIAlBVDkxQ19OVklDX0lOVExJTkVTTlVNXzQ0OCAgICAgICAgICAgICAgICAgICgweEQpIC8vIChOVklDKSB1cCB0byA0NDggaW50ZXJydXB0IGxpbmVzIHN1cHBvcnRlZA0KI2RlZmluZSAJQVQ5MUNfTlZJQ19JTlRMSU5FU05VTV80ODAgICAgICAgICAgICAgICAgICAoMHhFKSAvLyAoTlZJQykgdXAgdG8gNDgwIGludGVycnVwdCBsaW5lcyBzdXBwb3J0ZWQNCiNkZWZpbmUgCUFUOTFDX05WSUNfSU5UTElORVNOVU1fNDk2ICAgICAgICAgICAgICAgICAgKDB4RikgLy8gKE5WSUMpIHVwIHRvIDQ5NiBpbnRlcnJ1cHQgbGluZXMgc3VwcG9ydGVkKQ0KLy8gLS0tLS0tLS0gTlZJQ19TVElDS0NTUiA6IChOVklDIE9mZnNldDogMHgxMCkgU3lzVGljayBDb250cm9sIGFuZCBTdGF0dXMgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX05WSUNfU1RJQ0tFTkFCTEUgKDB4MSA8PCAgMCkgLy8gKE5WSUMpIFN5c1RpY2sgY291bnRlciBlbmFibGUuDQojZGVmaW5lIEFUOTFDX05WSUNfU1RJQ0tJTlQgICAoMHgxIDw8ICAxKSAvLyAoTlZJQykgU3lzVGljayBpbnRlcnJ1cHQgZW5hYmxlLg0KI2RlZmluZSBBVDkxQ19OVklDX1NUSUNLQ0xLU09VUkNFICgweDEgPDwgIDIpIC8vIChOVklDKSBSZWZlcmVuY2UgY2xvY2sgc2VsZWN0aW9uLg0KI2RlZmluZSBBVDkxQ19OVklDX1NUSUNLQ09VTlRGTEFHICgweDEgPDwgMTYpIC8vIChOVklDKSBSZXR1cm4gMSBpZiB0aW1lciBjb3VudGVkIHRvIDAgc2luY2UgbGFzdCByZWFkLg0KLy8gLS0tLS0tLS0gTlZJQ19TVElDS1JWUiA6IChOVklDIE9mZnNldDogMHgxNCkgU3lzVGljayBSZWxvYWQgVmFsdWUgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX05WSUNfU1RJQ0tSRUxPQUQgKDB4RkZGRkZGIDw8ICAwKSAvLyAoTlZJQykgU3lzVGljayByZWxvYWQgdmFsdWUuDQovLyAtLS0tLS0tLSBOVklDX1NUSUNLQ1ZSIDogKE5WSUMgT2Zmc2V0OiAweDE4KSBTeXNUaWNrIEN1cnJlbnQgVmFsdWUgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX05WSUNfU1RJQ0tDVVJSRU5UICgweDdGRkZGRkZGIDw8ICAwKSAvLyAoTlZJQykgU3lzVGljayBjdXJyZW50IHZhbHVlLg0KLy8gLS0tLS0tLS0gTlZJQ19TVElDS0NBTFZSIDogKE5WSUMgT2Zmc2V0OiAweDFjKSBTeXNUaWNrIENhbGlicmF0aW9uIFZhbHVlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19OVklDX1NUSUNLVEVOTVMgKDB4RkZGRkZGIDw8ICAwKSAvLyAoTlZJQykgUmVsb2FkIHZhbHVlIHRvIHVzZSBmb3IgMTBtcyB0aW1pbmcuDQojZGVmaW5lIEFUOTFDX05WSUNfU1RJQ0tTS0VXICAoMHgxIDw8IDMwKSAvLyAoTlZJQykgUmVhZCBhcyAxIGlmIHRoZSBjYWxpYnJhdGlvbiB2YWx1ZSBpcyBub3QgZXhhY3RseSAxMG1zIGJlY2F1c2Ugb2YgY2xvY2sgZnJlcXVlbmN5Lg0KI2RlZmluZSBBVDkxQ19OVklDX1NUSUNLTk9SRUYgKDB4MSA8PCAzMSkgLy8gKE5WSUMpIFJlYWQgYXMgMSBpZiB0aGUgcmVmZXJlbmNlIGNsb2NrIGlzIG5vdCBwcm92aWRlZC4NCi8vIC0tLS0tLS0tIE5WSUNfSVBSIDogKE5WSUMgT2Zmc2V0OiAweDQwMCkgSW50ZXJydXB0IFByaW9yaXR5IFJlZ2lzdGVycyAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfTlZJQ19QUklfTiAgICAgICgweEZGIDw8ICAwKSAvLyAoTlZJQykgUHJpb3JpdHkgb2YgaW50ZXJydXB0IE4gKDAsIDQsIDgsIGV0YykNCiNkZWZpbmUgQVQ5MUNfTlZJQ19QUklfTjEgICAgICgweEZGIDw8ICA4KSAvLyAoTlZJQykgUHJpb3JpdHkgb2YgaW50ZXJydXB0IE4rMSAoMSwgNSwgOSwgZXRjKQ0KI2RlZmluZSBBVDkxQ19OVklDX1BSSV9OMiAgICAgKDB4RkYgPDwgMTYpIC8vIChOVklDKSBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgTisyICgyLCA2LCAxMCwgZXRjKQ0KI2RlZmluZSBBVDkxQ19OVklDX1BSSV9OMyAgICAgKDB4RkYgPDwgMjQpIC8vIChOVklDKSBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgTiszICgzLCA3LCAxMSwgZXRjKQ0KLy8gLS0tLS0tLS0gTlZJQ19DUFVJRCA6IChOVklDIE9mZnNldDogMHhkMDApIENQVSBJRCBCYXNlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19OVklDX1JFVklTSU9OICAgKDB4RiA8PCAgMCkgLy8gKE5WSUMpIEltcGxlbWVudGF0aW9uIGRlZmluZWQgcmV2aXNpb24gbnVtYmVyLg0KI2RlZmluZSBBVDkxQ19OVklDX1BBUlROTyAgICAgKDB4RkZGIDw8ICA0KSAvLyAoTlZJQykgTnVtYmVyIG9mIHByb2Nlc3NvciB3aXRoaW4gZmFtaWx5DQojZGVmaW5lIEFUOTFDX05WSUNfQ09OU1RBTlQgICAoMHhGIDw8IDE2KSAvLyAoTlZJQykgUmVhZHMgYXMgMHhGDQojZGVmaW5lIEFUOTFDX05WSUNfVkFSSUFOVCAgICAoMHhGIDw8IDIwKSAvLyAoTlZJQykgSW1wbGVtZW50YXRpb24gZGVmaW5lZCB2YXJpYW50IG51bWJlci4NCiNkZWZpbmUgQVQ5MUNfTlZJQ19JTVBMRU1FTlRFUiAoMHhGRiA8PCAyNCkgLy8gKE5WSUMpIEltcGxlbWVudGVyIGNvZGUuIEFSTSBpcyAweDQxDQovLyAtLS0tLS0tLSBOVklDX0lDU1IgOiAoTlZJQyBPZmZzZXQ6IDB4ZDA0KSBJbnRlcnJ1cHQgQ29udHJvbCBTdGF0ZSBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfTlZJQ19WRUNUQUNUSVZFICgweDFGRiA8PCAgMCkgLy8gKE5WSUMpIFJlYWQtb25seSBBY3RpdmUgSVNSIG51bWJlciBmaWVsZA0KI2RlZmluZSBBVDkxQ19OVklDX1JFVFRPQkFTRSAgKDB4MSA8PCAxMSkgLy8gKE5WSUMpIFJlYWQtb25seQ0KI2RlZmluZSBBVDkxQ19OVklDX1ZFQ1RQRU5ESU5HICgweDFGRiA8PCAxMikgLy8gKE5WSUMpIFJlYWQtb25seSBQZW5kaW5nIElTUiBudW1iZXIgZmllbGQNCiNkZWZpbmUgQVQ5MUNfTlZJQ19JU1JQRU5ESU5HICgweDEgPDwgMjIpIC8vIChOVklDKSBSZWFkLW9ubHkgSW50ZXJydXB0IHBlbmRpbmcgZmxhZy4NCiNkZWZpbmUgQVQ5MUNfTlZJQ19JU1JQUkVFTVBUICgweDEgPDwgMjMpIC8vIChOVklDKSBSZWFkLW9ubHkgWW91IG11c3Qgb25seSB1c2UgdGhpcyBhdCBkZWJ1ZyB0aW1lDQojZGVmaW5lIEFUOTFDX05WSUNfUEVORFNUQ0xSICAoMHgxIDw8IDI1KSAvLyAoTlZJQykgV3JpdGUtb25seSBDbGVhciBwZW5kaW5nIFN5c1RpY2sgYml0DQojZGVmaW5lIEFUOTFDX05WSUNfUEVORFNUU0VUICAoMHgxIDw8IDI2KSAvLyAoTlZJQykgUmVhZC93cml0ZSBTZXQgYSBwZW5kaW5nIFN5c1RpY2sgYml0DQojZGVmaW5lIEFUOTFDX05WSUNfUEVORFNWQ0xSICAoMHgxIDw8IDI3KSAvLyAoTlZJQykgV3JpdGUtb25seSBDbGVhciBwZW5kaW5nIHBlbmRTViBiaXQNCiNkZWZpbmUgQVQ5MUNfTlZJQ19QRU5EU1ZTRVQgICgweDEgPDwgMjgpIC8vIChOVklDKSBSZWFkL3dyaXRlIFNldCBwZW5kaW5nIHBlbmRTViBiaXQNCiNkZWZpbmUgQVQ5MUNfTlZJQ19OTUlQRU5EU0VUICgweDEgPDwgMzEpIC8vIChOVklDKSBSZWFkL3dyaXRlIFNldCBwZW5kaW5nIE5NSQ0KLy8gLS0tLS0tLS0gTlZJQ19WVE9GRlIgOiAoTlZJQyBPZmZzZXQ6IDB4ZDA4KSBWZWN0b3IgVGFibGUgT2Zmc2V0IFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19OVklDX1RCTE9GRiAgICAgKDB4M0ZGRkZGIDw8ICA3KSAvLyAoTlZJQykgVmVjdG9yIHRhYmxlIGJhc2Ugb2Zmc2V0IGZpZWxkDQojZGVmaW5lIEFUOTFDX05WSUNfVEJMQkFTRSAgICAoMHgxIDw8IDI5KSAvLyAoTlZJQykgVGFibGUgYmFzZSBpcyBpbiBDb2RlICgwKSBvciBSQU0gKDEpDQojZGVmaW5lIAlBVDkxQ19OVklDX1RCTEJBU0VfQ09ERSAgICAgICAgICAgICAgICAgKDB4MCA8PCAyOSkgLy8gKE5WSUMpIFRhYmxlIGJhc2UgaXMgaW4gQ09ERQ0KI2RlZmluZSAJQVQ5MUNfTlZJQ19UQkxCQVNFX1JBTSAgICAgICAgICAgICAgICAgICgweDEgPDwgMjkpIC8vIChOVklDKSBUYWJsZSBiYXNlIGlzIGluIFJBTQ0KLy8gLS0tLS0tLS0gTlZJQ19BSVJDUiA6IChOVklDIE9mZnNldDogMHhkMGMpIEFwcGxpY2F0aW9uIEludGVycnVwdCBhbmQgUmVzZXQgQ29udHJvbCBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfTlZJQ19WRUNUUkVTRVQgICgweDEgPDwgIDApIC8vIChOVklDKSBTeXN0ZW0gUmVzZXQgYml0DQojZGVmaW5lIEFUOTFDX05WSUNfVkVDVENMUkFDVElWRSAoMHgxIDw8ICAxKSAvLyAoTlZJQykgQ2xlYXIgYWN0aXZlIHZlY3RvciBiaXQNCiNkZWZpbmUgQVQ5MUNfTlZJQ19TWVNSRVNFVFJFUSAoMHgxIDw8ICAyKSAvLyAoTlZJQykgQ2F1c2VzIGEgc2lnbmFsIHRvIGJlIGFzc2VydGVkIHRvIHRoZSBvdXRlciBzeXN0ZW0gdGhhdCBpbmRpY2F0ZXMgYSByZXNldCBpcyByZXF1ZXN0ZWQNCiNkZWZpbmUgQVQ5MUNfTlZJQ19QUklHUk9VUCAgICgweDcgPDwgIDgpIC8vIChOVklDKSBJbnRlcnJ1cHQgcHJpb3JpdHkgZ3JvdXBpbmcgZmllbGQNCiNkZWZpbmUgCUFUOTFDX05WSUNfUFJJR1JPVVBfMCAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAgOCkgLy8gKE5WSUMpIGluZGljYXRlcyBzZXZlbiBiaXRzIG9mIHByZS1lbXB0aW9uIHByaW9yaXR5LCBvbmUgYml0IG9mIHN1YnByaW9yaXR5DQojZGVmaW5lIAlBVDkxQ19OVklDX1BSSUdST1VQXzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgIDgpIC8vIChOVklDKSBpbmRpY2F0ZXMgc2l4IGJpdHMgb2YgcHJlLWVtcHRpb24gcHJpb3JpdHksIHR3byBiaXRzIG9mIHN1YnByaW9yaXR5DQojZGVmaW5lIAlBVDkxQ19OVklDX1BSSUdST1VQXzIgICAgICAgICAgICAgICAgICAgICgweDIgPDwgIDgpIC8vIChOVklDKSBpbmRpY2F0ZXMgZml2ZSBiaXRzIG9mIHByZS1lbXB0aW9uIHByaW9yaXR5LCB0aHJlZSBiaXRzIG9mIHN1YnByaW9yaXR5DQojZGVmaW5lIAlBVDkxQ19OVklDX1BSSUdST1VQXzMgICAgICAgICAgICAgICAgICAgICgweDMgPDwgIDgpIC8vIChOVklDKSBpbmRpY2F0ZXMgZm91ciBiaXRzIG9mIHByZS1lbXB0aW9uIHByaW9yaXR5LCBmb3VyIGJpdHMgb2Ygc3VicHJpb3JpdHkNCiNkZWZpbmUgCUFUOTFDX05WSUNfUFJJR1JPVVBfNCAgICAgICAgICAgICAgICAgICAgKDB4NCA8PCAgOCkgLy8gKE5WSUMpIGluZGljYXRlcyB0aHJlZSBiaXRzIG9mIHByZS1lbXB0aW9uIHByaW9yaXR5LCBmaXZlIGJpdHMgb2Ygc3VicHJpb3JpdHkNCiNkZWZpbmUgCUFUOTFDX05WSUNfUFJJR1JPVVBfNSAgICAgICAgICAgICAgICAgICAgKDB4NSA8PCAgOCkgLy8gKE5WSUMpIGluZGljYXRlcyB0d28gYml0cyBvZiBwcmUtZW1wdGlvbiBwcmlvcml0eSwgc2l4IGJpdHMgb2Ygc3VicHJpb3JpdHkNCiNkZWZpbmUgCUFUOTFDX05WSUNfUFJJR1JPVVBfNiAgICAgICAgICAgICAgICAgICAgKDB4NiA8PCAgOCkgLy8gKE5WSUMpIGluZGljYXRlcyBvbmUgYml0IG9mIHByZS1lbXB0aW9uIHByaW9yaXR5LCBzZXZlbiBiaXRzIG9mIHN1YnByaW9yaXR5DQojZGVmaW5lIAlBVDkxQ19OVklDX1BSSUdST1VQXzcgICAgICAgICAgICAgICAgICAgICgweDcgPDwgIDgpIC8vIChOVklDKSBpbmRpY2F0ZXMgbm8gcHJlLWVtcHRpb24gcHJpb3JpdHksIGVpZ2h0IGJpdHMgb2Ygc3VicHJpb3JpdHkNCiNkZWZpbmUgQVQ5MUNfTlZJQ19FTkRJQU5FU1MgICgweDEgPDwgMTUpIC8vIChOVklDKSBEYXRhIGVuZGlhbm5lc3MgYml0DQojZGVmaW5lIEFUOTFDX05WSUNfVkVDVEtFWSAgICAoMHhGRkZGIDw8IDE2KSAvLyAoTlZJQykgUmVnaXN0ZXIga2V5DQovLyAtLS0tLS0tLSBOVklDX1NDUiA6IChOVklDIE9mZnNldDogMHhkMTApIFN5c3RlbSBDb250cm9sIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19OVklDX1NMRUVQT05FWElUICgweDEgPDwgIDEpIC8vIChOVklDKSBTbGVlcCBvbiBleGl0IHdoZW4gcmV0dXJuaW5nIGZyb20gSGFuZGxlciBtb2RlIHRvIFRocmVhZCBtb2RlDQojZGVmaW5lIEFUOTFDX05WSUNfU0xFRVBERUVQICAoMHgxIDw8ICAyKSAvLyAoTlZJQykgU2xlZXAgZGVlcCBiaXQNCiNkZWZpbmUgQVQ5MUNfTlZJQ19TRVZPTlBFTkQgICgweDEgPDwgIDQpIC8vIChOVklDKSBXaGVuIGVuYWJsZWQsIHRoaXMgY2F1c2VzIFdGRSB0byB3YWtlIHVwIHdoZW4gYW4gaW50ZXJydXB0IG1vdmVzIGZyb20gaW5hY3RpdmUgdG8gcGVuZGVkDQovLyAtLS0tLS0tLSBOVklDX0NDUiA6IChOVklDIE9mZnNldDogMHhkMTQpIENvbmZpZ3VyYXRpb24gQ29udHJvbCBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfTlZJQ19OT05FQkFTRVRIUkRFTkEgKDB4MSA8PCAgMCkgLy8gKE5WSUMpIFdoZW4gMCwgZGVmYXVsdCwgSXQgaXMgb25seSBwb3NzaWJsZSB0byBlbnRlciBUaHJlYWQgbW9kZSB3aGVuIHJldHVybmluZyBmcm9tIHRoZSBsYXN0IGV4Y2VwdGlvbg0KI2RlZmluZSBBVDkxQ19OVklDX1VTRVJTRVRNUEVORCAoMHgxIDw8ICAxKSAvLyAoTlZJQykgDQojZGVmaW5lIEFUOTFDX05WSUNfVU5BTElHTl9UUlAgKDB4MSA8PCAgMykgLy8gKE5WSUMpIFRyYXAgZm9yIHVuYWxpZ25lZCBhY2Nlc3MNCiNkZWZpbmUgQVQ5MUNfTlZJQ19ESVZfMF9UUlAgICgweDEgPDwgIDQpIC8vIChOVklDKSBUcmFwIG9uIERpdmlkZSBieSAwDQojZGVmaW5lIEFUOTFDX05WSUNfQkZIRk5NSUdOICAoMHgxIDw8ICA4KSAvLyAoTlZJQykgDQojZGVmaW5lIEFUOTFDX05WSUNfU1RLQUxJR04gICAoMHgxIDw8ICA5KSAvLyAoTlZJQykgDQovLyAtLS0tLS0tLSBOVklDX0hBTkQ0UFIgOiAoTlZJQyBPZmZzZXQ6IDB4ZDE4KSBTeXN0ZW0gSGFuZGxlcnMgNC03IFByaW9yaXR5IFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19OVklDX1BSSV80ICAgICAgKDB4RkYgPDwgIDApIC8vIChOVklDKSANCiNkZWZpbmUgQVQ5MUNfTlZJQ19QUklfNSAgICAgICgweEZGIDw8ICA4KSAvLyAoTlZJQykgDQojZGVmaW5lIEFUOTFDX05WSUNfUFJJXzYgICAgICAoMHhGRiA8PCAxNikgLy8gKE5WSUMpIA0KI2RlZmluZSBBVDkxQ19OVklDX1BSSV83ICAgICAgKDB4RkYgPDwgMjQpIC8vIChOVklDKSANCi8vIC0tLS0tLS0tIE5WSUNfSEFORDhQUiA6IChOVklDIE9mZnNldDogMHhkMWMpIFN5c3RlbSBIYW5kbGVycyA4LTExIFByaW9yaXR5IFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19OVklDX1BSSV84ICAgICAgKDB4RkYgPDwgIDApIC8vIChOVklDKSANCiNkZWZpbmUgQVQ5MUNfTlZJQ19QUklfOSAgICAgICgweEZGIDw8ICA4KSAvLyAoTlZJQykgDQojZGVmaW5lIEFUOTFDX05WSUNfUFJJXzEwICAgICAoMHhGRiA8PCAxNikgLy8gKE5WSUMpIA0KI2RlZmluZSBBVDkxQ19OVklDX1BSSV8xMSAgICAgKDB4RkYgPDwgMjQpIC8vIChOVklDKSANCi8vIC0tLS0tLS0tIE5WSUNfSEFORDEyUFIgOiAoTlZJQyBPZmZzZXQ6IDB4ZDIwKSBTeXN0ZW0gSGFuZGxlcnMgMTItMTUgUHJpb3JpdHkgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX05WSUNfUFJJXzEyICAgICAoMHhGRiA8PCAgMCkgLy8gKE5WSUMpIA0KI2RlZmluZSBBVDkxQ19OVklDX1BSSV8xMyAgICAgKDB4RkYgPDwgIDgpIC8vIChOVklDKSANCiNkZWZpbmUgQVQ5MUNfTlZJQ19QUklfMTQgICAgICgweEZGIDw8IDE2KSAvLyAoTlZJQykgDQojZGVmaW5lIEFUOTFDX05WSUNfUFJJXzE1ICAgICAoMHhGRiA8PCAyNCkgLy8gKE5WSUMpIA0KLy8gLS0tLS0tLS0gTlZJQ19IQU5EQ1NSIDogKE5WSUMgT2Zmc2V0OiAweGQyNCkgU3lzdGVtIEhhbmRsZXIgQ29udHJvbCBhbmQgU3RhdGUgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX05WSUNfTUVNRkFVTFRBQ1QgKDB4MSA8PCAgMCkgLy8gKE5WSUMpIA0KI2RlZmluZSBBVDkxQ19OVklDX0JVU0ZBVUxUQUNUICgweDEgPDwgIDEpIC8vIChOVklDKSANCiNkZWZpbmUgQVQ5MUNfTlZJQ19VU0dGQVVMVEFDVCAoMHgxIDw8ICAzKSAvLyAoTlZJQykgDQojZGVmaW5lIEFUOTFDX05WSUNfU1ZDQUxMQUNUICAoMHgxIDw8ICA3KSAvLyAoTlZJQykgDQojZGVmaW5lIEFUOTFDX05WSUNfTU9OSVRPUkFDVCAoMHgxIDw8ICA4KSAvLyAoTlZJQykgDQojZGVmaW5lIEFUOTFDX05WSUNfUEVORFNWQUNUICAoMHgxIDw8IDEwKSAvLyAoTlZJQykgDQojZGVmaW5lIEFUOTFDX05WSUNfU1lTVElDS0FDVCAoMHgxIDw8IDExKSAvLyAoTlZJQykgDQojZGVmaW5lIEFUOTFDX05WSUNfVVNHRkFVTFRQRU5ERUQgKDB4MSA8PCAxMikgLy8gKE5WSUMpIA0KI2RlZmluZSBBVDkxQ19OVklDX01FTUZBVUxUUEVOREVEICgweDEgPDwgMTMpIC8vIChOVklDKSANCiNkZWZpbmUgQVQ5MUNfTlZJQ19CVVNGQVVMVFBFTkRFRCAoMHgxIDw8IDE0KSAvLyAoTlZJQykgDQojZGVmaW5lIEFUOTFDX05WSUNfU1ZDQUxMUEVOREVEICgweDEgPDwgMTUpIC8vIChOVklDKSANCiNkZWZpbmUgQVQ5MUNfTlZJQ19NRU1GQVVMVEVOQSAoMHgxIDw8IDE2KSAvLyAoTlZJQykgDQojZGVmaW5lIEFUOTFDX05WSUNfQlVTRkFVTFRFTkEgKDB4MSA8PCAxNykgLy8gKE5WSUMpIA0KI2RlZmluZSBBVDkxQ19OVklDX1VTR0ZBVUxURU5BICgweDEgPDwgMTgpIC8vIChOVklDKSANCi8vIC0tLS0tLS0tIE5WSUNfQ0ZTUiA6IChOVklDIE9mZnNldDogMHhkMjgpIENvbmZpZ3VyYWJsZSBGYXVsdCBTdGF0dXMgUmVnaXN0ZXJzIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19OVklDX01FTU1BTkFHRSAgKDB4RkYgPDwgIDApIC8vIChOVklDKSANCiNkZWZpbmUgQVQ5MUNfTlZJQ19CVVNGQVVMVCAgICgweEZGIDw8ICA4KSAvLyAoTlZJQykgDQojZGVmaW5lIEFUOTFDX05WSUNfVVNBR0VGQVVMVCAoMHhGRiA8PCAxNikgLy8gKE5WSUMpIA0KLy8gLS0tLS0tLS0gTlZJQ19CRkFSIDogKE5WSUMgT2Zmc2V0OiAweGQzOCkgQnVzIEZhdWx0IEFkZHJlc3MgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX05WSUNfSUJVU0VSUiAgICAoMHgxIDw8ICAwKSAvLyAoTlZJQykgVGhpcyBiaXQgaW5kaWNhdGVzIGEgYnVzIGZhdWx0IG9uIGFuIGluc3RydWN0aW9uIHByZWZldGNoDQojZGVmaW5lIEFUOTFDX05WSUNfUFJFQ0lTRVJSICAoMHgxIDw8ICAxKSAvLyAoTlZJQykgUHJlY2lzZSBkYXRhIGFjY2VzcyBlcnJvci4gVGhlIEJGQVIgaXMgd3JpdHRlbiB3aXRoIHRoZSBmYXVsdGluZyBhZGRyZXNzDQojZGVmaW5lIEFUOTFDX05WSUNfSU1QUkVDSVNFUlIgKDB4MSA8PCAgMikgLy8gKE5WSUMpIEltcHJlY2lzZSBkYXRhIGFjY2VzcyBlcnJvcg0KI2RlZmluZSBBVDkxQ19OVklDX1VOU1RLRVJSICAgKDB4MSA8PCAgMykgLy8gKE5WSUMpIFRoaXMgYml0IGluZGljYXRlcyBhIGRlcml2ZWQgYnVzIGZhdWx0IGhhcyBvY2N1cnJlZCBvbiBleGNlcHRpb24gcmV0dXJuDQojZGVmaW5lIEFUOTFDX05WSUNfU1RLRVJSICAgICAoMHgxIDw8ICA0KSAvLyAoTlZJQykgVGhpcyBiaXQgaW5kaWNhdGVzIGEgZGVyaXZlZCBidXMgZmF1bHQgaGFzIG9jY3VycmVkIG9uIGV4Y2VwdGlvbiBlbnRyeQ0KI2RlZmluZSBBVDkxQ19OVklDX0JGQVJWQUxJRCAgKDB4MSA8PCAgNykgLy8gKE5WSUMpIFRoaXMgYml0IGlzIHNldCBpZiB0aGUgQkZBUiByZWdpc3RlciBoYXMgdmFsaWQgY29udGVudHMNCi8vIC0tLS0tLS0tIE5WSUNfUEZSMCA6IChOVklDIE9mZnNldDogMHhkNDApIFByb2Nlc3NvciBGZWF0dXJlIHJlZ2lzdGVyMCAoSURfUEZSMCkgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX05WSUNfSURfUEZSMF8wICAoMHhGIDw8ICAwKSAvLyAoTlZJQykgU3RhdGUwIChULWJpdCA9PSAwKQ0KI2RlZmluZSBBVDkxQ19OVklDX0lEX1BSRjBfMSAgKDB4RiA8PCAgNCkgLy8gKE5WSUMpIFN0YXRlMSAoVC1iaXQgPT0gMSkNCi8vIC0tLS0tLS0tIE5WSUNfUEZSMSA6IChOVklDIE9mZnNldDogMHhkNDQpIFByb2Nlc3NvciBGZWF0dXJlIHJlZ2lzdGVyMSAoSURfUEZSMSkgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX05WSUNfSURfUFJGMV9NT0RFTCAoMHhGIDw8ICA4KSAvLyAoTlZJQykgTWljcm9jb250cm9sbGVyIHByb2dyYW1tZXKScyBtb2RlbA0KLy8gLS0tLS0tLS0gTlZJQ19ERlIwIDogKE5WSUMgT2Zmc2V0OiAweGQ0OCkgRGVidWcgRmVhdHVyZSByZWdpc3RlcjAgKElEX0RGUjApIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19OVklDX0lEX0RGUjBfTU9ERUwgKDB4RiA8PCAyMCkgLy8gKE5WSUMpIE1pY3JvY29udHJvbGxlciBEZWJ1ZyBNb2RlbCCWIG1lbW9yeSBtYXBwZWQNCi8vIC0tLS0tLS0tIE5WSUNfTU1GUjAgOiAoTlZJQyBPZmZzZXQ6IDB4ZDUwKSBNZW1vcnkgTW9kZWwgRmVhdHVyZSByZWdpc3RlcjAgKElEX01NRlIwKSAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfTlZJQ19JRF9NTUZSMF9QTVNBICgweEYgPDwgIDQpIC8vIChOVklDKSBNaWNyb2NvbnRyb2xsZXIgRGVidWcgTW9kZWwgliBtZW1vcnkgbWFwcGVkDQojZGVmaW5lIEFUOTFDX05WSUNfSURfTU1GUjBfQ0FDSEUgKDB4RiA8PCAgOCkgLy8gKE5WSUMpIE1pY3JvY29udHJvbGxlciBEZWJ1ZyBNb2RlbCCWIG1lbW9yeSBtYXBwZWQNCg0KLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCi8vICAgICAgICAgICAgICBTT0ZUV0FSRSBBUEkgREVGSU5JVElPTiAgRk9SIE5FU1RFRCB2ZWN0b3IgSW50ZXJydXB0IENvbnRyb2xsZXINCi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQojaWZuZGVmIF9fQVNTRU1CTFlfXw0KdHlwZWRlZiBzdHJ1Y3QgX0FUOTFTX01QVSB7DQoJQVQ5MV9SRUcJIE1QVV9UWVBFOyAJLy8gTVBVIFR5cGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgTVBVX0NUUkw7IAkvLyBNUFUgQ29udHJvbCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBNUFVfUkVHX05COyAJLy8gTVBVIFJlZ2lvbiBOdW1iZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgTVBVX1JFR19CQVNFX0FERFI7IAkvLyBNUFUgUmVnaW9uIEJhc2UgQWRkcmVzcyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBNUFVfQVRUUl9TSVpFOyAJLy8gTVBVICBBdHRyaWJ1dGUgYW5kIFNpemUgUmVnaXN0ZXINCglBVDkxX1JFRwkgTVBVX1JFR19CQVNFX0FERFIxOyAJLy8gTVBVIFJlZ2lvbiBCYXNlIEFkZHJlc3MgUmVnaXN0ZXIgYWxpYXMgMQ0KCUFUOTFfUkVHCSBNUFVfQVRUUl9TSVpFMTsgCS8vIE1QVSAgQXR0cmlidXRlIGFuZCBTaXplIFJlZ2lzdGVyIGFsaWFzIDENCglBVDkxX1JFRwkgTVBVX1JFR19CQVNFX0FERFIyOyAJLy8gTVBVIFJlZ2lvbiBCYXNlIEFkZHJlc3MgUmVnaXN0ZXIgYWxpYXMgMg0KCUFUOTFfUkVHCSBNUFVfQVRUUl9TSVpFMjsgCS8vIE1QVSAgQXR0cmlidXRlIGFuZCBTaXplIFJlZ2lzdGVyIGFsaWFzIDINCglBVDkxX1JFRwkgTVBVX1JFR19CQVNFX0FERFIzOyAJLy8gTVBVIFJlZ2lvbiBCYXNlIEFkZHJlc3MgUmVnaXN0ZXIgYWxpYXMgMw0KCUFUOTFfUkVHCSBNUFVfQVRUUl9TSVpFMzsgCS8vIE1QVSAgQXR0cmlidXRlIGFuZCBTaXplIFJlZ2lzdGVyIGFsaWFzIDMNCn0gQVQ5MVNfTVBVLCAqQVQ5MVBTX01QVTsNCiNlbHNlDQojZGVmaW5lIE1QVV9UWVBFICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDAwKSAvLyAoTVBVX1RZUEUpIE1QVSBUeXBlIFJlZ2lzdGVyDQojZGVmaW5lIE1QVV9DVFJMICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDA0KSAvLyAoTVBVX0NUUkwpIE1QVSBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIE1QVV9SRUdfTkIgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDA4KSAvLyAoTVBVX1JFR19OQikgTVBVIFJlZ2lvbiBOdW1iZXIgUmVnaXN0ZXINCiNkZWZpbmUgTVBVX1JFR19CQVNFX0FERFIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAwQykgLy8gKE1QVV9SRUdfQkFTRV9BRERSKSBNUFUgUmVnaW9uIEJhc2UgQWRkcmVzcyBSZWdpc3Rlcg0KI2RlZmluZSBNUFVfQVRUUl9TSVpFICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAxMCkgLy8gKE1QVV9BVFRSX1NJWkUpIE1QVSAgQXR0cmlidXRlIGFuZCBTaXplIFJlZ2lzdGVyDQojZGVmaW5lIE1QVV9SRUdfQkFTRV9BRERSMSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDE0KSAvLyAoTVBVX1JFR19CQVNFX0FERFIxKSBNUFUgUmVnaW9uIEJhc2UgQWRkcmVzcyBSZWdpc3RlciBhbGlhcyAxDQojZGVmaW5lIE1QVV9BVFRSX1NJWkUxICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDE4KSAvLyAoTVBVX0FUVFJfU0laRTEpIE1QVSAgQXR0cmlidXRlIGFuZCBTaXplIFJlZ2lzdGVyIGFsaWFzIDENCiNkZWZpbmUgTVBVX1JFR19CQVNFX0FERFIyIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMUMpIC8vIChNUFVfUkVHX0JBU0VfQUREUjIpIE1QVSBSZWdpb24gQmFzZSBBZGRyZXNzIFJlZ2lzdGVyIGFsaWFzIDINCiNkZWZpbmUgTVBVX0FUVFJfU0laRTIgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMjApIC8vIChNUFVfQVRUUl9TSVpFMikgTVBVICBBdHRyaWJ1dGUgYW5kIFNpemUgUmVnaXN0ZXIgYWxpYXMgMg0KI2RlZmluZSBNUFVfUkVHX0JBU0VfQUREUjMgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAyNCkgLy8gKE1QVV9SRUdfQkFTRV9BRERSMykgTVBVIFJlZ2lvbiBCYXNlIEFkZHJlc3MgUmVnaXN0ZXIgYWxpYXMgMw0KI2RlZmluZSBNUFVfQVRUUl9TSVpFMyAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAyOCkgLy8gKE1QVV9BVFRSX1NJWkUzKSBNUFUgIEF0dHJpYnV0ZSBhbmQgU2l6ZSBSZWdpc3RlciBhbGlhcyAzDQoNCiNlbmRpZg0KLy8gLS0tLS0tLS0gTVBVX1RZUEUgOiAoTVBVIE9mZnNldDogMHgwKSAgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX01QVV9TRVBBUkFURSAgICAoMHgxIDw8ICAwKSAvLyAoTVBVKSANCiNkZWZpbmUgQVQ5MUNfTVBVX0RSRUdJT04gICAgICgweEZGIDw8ICA4KSAvLyAoTVBVKSANCiNkZWZpbmUgQVQ5MUNfTVBVX0lSRUdJT04gICAgICgweEZGIDw8IDE2KSAvLyAoTVBVKSANCi8vIC0tLS0tLS0tIE1QVV9DVFJMIDogKE1QVSBPZmZzZXQ6IDB4NCkgIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19NUFVfRU5BQkxFICAgICAgKDB4MSA8PCAgMCkgLy8gKE1QVSkgDQojZGVmaW5lIEFUOTFDX01QVV9IRk5NSUVOQSAgICAoMHgxIDw8ICAxKSAvLyAoTVBVKSANCiNkZWZpbmUgQVQ5MUNfTVBVX1BSSVZERUZFTkEgICgweDEgPDwgIDIpIC8vIChNUFUpIA0KLy8gLS0tLS0tLS0gTVBVX1JFR19OQiA6IChNUFUgT2Zmc2V0OiAweDgpICAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfTVBVX1JFR0lPTiAgICAgICgweEZGIDw8ICAwKSAvLyAoTVBVKSANCi8vIC0tLS0tLS0tIE1QVV9SRUdfQkFTRV9BRERSIDogKE1QVSBPZmZzZXQ6IDB4YykgIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19NUFVfUkVHICAgICAgICAgKDB4RiA8PCAgMCkgLy8gKE1QVSkgDQojZGVmaW5lIEFUOTFDX01QVV9WQUxJRCAgICAgICAoMHgxIDw8ICA0KSAvLyAoTVBVKSANCiNkZWZpbmUgQVQ5MUNfTVBVX0FERFIgICAgICAgICgweDNGRkZGRkYgPDwgIDUpIC8vIChNUFUpIA0KLy8gLS0tLS0tLS0gTVBVX0FUVFJfU0laRSA6IChNUFUgT2Zmc2V0OiAweDEwKSAgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX01QVV9FTkEgICAgICAgICAoMHgxIDw8ICAwKSAvLyAoTVBVKSANCiNkZWZpbmUgQVQ5MUNfTVBVX1NJWkUgICAgICAgICgweEYgPDwgIDEpIC8vIChNUFUpIA0KI2RlZmluZSBBVDkxQ19NUFVfU1JEICAgICAgICAgKDB4RkYgPDwgIDgpIC8vIChNUFUpIA0KI2RlZmluZSBBVDkxQ19NUFVfQiAgICAgICAgICAgKDB4MSA8PCAxNikgLy8gKE1QVSkgDQojZGVmaW5lIEFUOTFDX01QVV9DICAgICAgICAgICAoMHgxIDw8IDE3KSAvLyAoTVBVKSANCiNkZWZpbmUgQVQ5MUNfTVBVX1MgICAgICAgICAgICgweDEgPDwgMTgpIC8vIChNUFUpIA0KI2RlZmluZSBBVDkxQ19NUFVfVEVYICAgICAgICAgKDB4NyA8PCAxOSkgLy8gKE1QVSkgDQojZGVmaW5lIEFUOTFDX01QVV9BUCAgICAgICAgICAoMHg3IDw8IDI0KSAvLyAoTVBVKSANCiNkZWZpbmUgQVQ5MUNfTVBVX1hOICAgICAgICAgICgweDcgPDwgMjgpIC8vIChNUFUpIA0KDQovLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KLy8gICAgICAgICAgICAgIFNPRlRXQVJFIEFQSSBERUZJTklUSU9OICBGT1IgQ09SVEVYX00zIFJlZ2lzdGVycw0KLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCiNpZm5kZWYgX19BU1NFTUJMWV9fDQp0eXBlZGVmIHN0cnVjdCBfQVQ5MVNfQ00zIHsNCglBVDkxX1JFRwkgQ00zX0NQVUlEOyAJLy8gQ1BVIElEIEJhc2UgUmVnaXN0ZXINCglBVDkxX1JFRwkgQ00zX0lDU1I7IAkvLyBJbnRlcnJ1cHQgQ29udHJvbCBTdGF0ZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBDTTNfVlRPUjsgCS8vIFZlY3RvciBUYWJsZSBPZmZzZXQgUmVnaXN0ZXINCglBVDkxX1JFRwkgQ00zX0FJUkNSOyAJLy8gQXBwbGljYXRpb24gSW50ZXJydXB0IGFuZCBSZXNldCBDb250cm9sIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIENNM19TQ1I7IAkvLyBTeXN0ZW0gQ29udHJvbGxlciBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBDTTNfQ0NSOyAJLy8gQ29uZmlndXJhdGlvbiBDb250cm9sIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIENNM19TSFBSWzNdOyAJLy8gU3lzdGVtIEhhbmRsZXIgUHJpb3JpdHkgUmVnaXN0ZXINCglBVDkxX1JFRwkgQ00zX1NIQ1NSOyAJLy8gU3lzdGVtIEhhbmRsZXIgQ29udHJvbCBhbmQgU3RhdGUgUmVnaXN0ZXINCn0gQVQ5MVNfQ00zLCAqQVQ5MVBTX0NNMzsNCiNlbHNlDQojZGVmaW5lIENNM19DUFVJRCAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDAwKSAvLyAoQ00zX0NQVUlEKSBDUFUgSUQgQmFzZSBSZWdpc3Rlcg0KI2RlZmluZSBDTTNfSUNTUiAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAwNCkgLy8gKENNM19JQ1NSKSBJbnRlcnJ1cHQgQ29udHJvbCBTdGF0ZSBSZWdpc3Rlcg0KI2RlZmluZSBDTTNfVlRPUiAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAwOCkgLy8gKENNM19WVE9SKSBWZWN0b3IgVGFibGUgT2Zmc2V0IFJlZ2lzdGVyDQojZGVmaW5lIENNM19BSVJDUiAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDBDKSAvLyAoQ00zX0FJUkNSKSBBcHBsaWNhdGlvbiBJbnRlcnJ1cHQgYW5kIFJlc2V0IENvbnRyb2wgUmVnaXN0ZXINCiNkZWZpbmUgQ00zX1NDUiAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMTApIC8vIChDTTNfU0NSKSBTeXN0ZW0gQ29udHJvbGxlciBSZWdpc3Rlcg0KI2RlZmluZSBDTTNfQ0NSICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAxNCkgLy8gKENNM19DQ1IpIENvbmZpZ3VyYXRpb24gQ29udHJvbCBSZWdpc3Rlcg0KI2RlZmluZSBDTTNfU0hQUiAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAxOCkgLy8gKENNM19TSFBSKSBTeXN0ZW0gSGFuZGxlciBQcmlvcml0eSBSZWdpc3Rlcg0KI2RlZmluZSBDTTNfU0hDU1IgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAyNCkgLy8gKENNM19TSENTUikgU3lzdGVtIEhhbmRsZXIgQ29udHJvbCBhbmQgU3RhdGUgUmVnaXN0ZXINCg0KI2VuZGlmDQovLyAtLS0tLS0tLSBDTTNfQ1BVSUQgOiAoQ00zIE9mZnNldDogMHgwKSAgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBDTTNfQUlSQ1IgOiAoQ00zIE9mZnNldDogMHhjKSAgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX0NNM19TWVNSRVNFVFJFUSAoMHgxIDw8ICAyKSAvLyAoQ00zKSBBIHJlc2V0IGlzIHJlcXVlc3RlZCBieSB0aGUgcHJvY2Vzc29yLg0KLy8gLS0tLS0tLS0gQ00zX1NDUiA6IChDTTMgT2Zmc2V0OiAweDEwKSAgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX0NNM19TTEVFUE9ORVhJVCAoMHgxIDw8ICAxKSAvLyAoQ00zKSBTbGVlcCBvbiBleGl0IHdoZW4gcmV0dXJuaW5nIGZyb20gSGFuZGxlciBtb2RlIHRvIFRocmVhZCBtb2RlLiBFbmFibGVzIGludGVycnVwdCBkcml2ZW4gYXBwbGljYXRpb25zIHRvIGF2b2lkIHJldHVybmluZyB0byBlbXB0eSBtYWluIGFwcGxpY2F0aW9uLg0KI2RlZmluZSBBVDkxQ19DTTNfU0xFRVBERUVQICAgKDB4MSA8PCAgMikgLy8gKENNMykgU2xlZXAgZGVlcCBiaXQuDQojZGVmaW5lIEFUOTFDX0NNM19TRVZPTlBFTkQgICAoMHgxIDw8ICA0KSAvLyAoQ00zKSBXaGVuIGVuYWJsZWQsIHRoaXMgY2F1c2VzIFdGRSB0byB3YWtlIHVwIHdoZW4gYW4gaW50ZXJydXB0IG1vdmVzIGZyb20gaW5hY3RpdmUgdG8gcGVuZGVkLg0KLy8gLS0tLS0tLS0gQ00zX1NIQ1NSIDogKENNMyBPZmZzZXQ6IDB4MjQpICAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfQ00zX1NZU1RJQ0tBQ1QgICgweDEgPDwgMTEpIC8vIChDTTMpIFJlYWRzIGFzIDEgaWYgU3lzVGljayBpcyBhY3RpdmUuDQoNCi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQovLyAgICAgICAgICAgICAgU09GVFdBUkUgQVBJIERFRklOSVRJT04gIEZPUiBQZXJpcGhlcmFsIERNQSBDb250cm9sbGVyDQovLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KI2lmbmRlZiBfX0FTU0VNQkxZX18NCnR5cGVkZWYgc3RydWN0IF9BVDkxU19QREMgew0KCUFUOTFfUkVHCSBQRENfUlBSOyAJLy8gUmVjZWl2ZSBQb2ludGVyIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBEQ19SQ1I7IAkvLyBSZWNlaXZlIENvdW50ZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgUERDX1RQUjsgCS8vIFRyYW5zbWl0IFBvaW50ZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgUERDX1RDUjsgCS8vIFRyYW5zbWl0IENvdW50ZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgUERDX1JOUFI7IAkvLyBSZWNlaXZlIE5leHQgUG9pbnRlciBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQRENfUk5DUjsgCS8vIFJlY2VpdmUgTmV4dCBDb3VudGVyIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBEQ19UTlBSOyAJLy8gVHJhbnNtaXQgTmV4dCBQb2ludGVyIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBEQ19UTkNSOyAJLy8gVHJhbnNtaXQgTmV4dCBDb3VudGVyIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBEQ19QVENSOyAJLy8gUERDIFRyYW5zZmVyIENvbnRyb2wgUmVnaXN0ZXINCglBVDkxX1JFRwkgUERDX1BUU1I7IAkvLyBQREMgVHJhbnNmZXIgU3RhdHVzIFJlZ2lzdGVyDQp9IEFUOTFTX1BEQywgKkFUOTFQU19QREM7DQojZWxzZQ0KI2RlZmluZSBQRENfUlBSICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAwMCkgLy8gKFBEQ19SUFIpIFJlY2VpdmUgUG9pbnRlciBSZWdpc3Rlcg0KI2RlZmluZSBQRENfUkNSICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAwNCkgLy8gKFBEQ19SQ1IpIFJlY2VpdmUgQ291bnRlciBSZWdpc3Rlcg0KI2RlZmluZSBQRENfVFBSICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAwOCkgLy8gKFBEQ19UUFIpIFRyYW5zbWl0IFBvaW50ZXIgUmVnaXN0ZXINCiNkZWZpbmUgUERDX1RDUiAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMEMpIC8vIChQRENfVENSKSBUcmFuc21pdCBDb3VudGVyIFJlZ2lzdGVyDQojZGVmaW5lIFBEQ19STlBSICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDEwKSAvLyAoUERDX1JOUFIpIFJlY2VpdmUgTmV4dCBQb2ludGVyIFJlZ2lzdGVyDQojZGVmaW5lIFBEQ19STkNSICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDE0KSAvLyAoUERDX1JOQ1IpIFJlY2VpdmUgTmV4dCBDb3VudGVyIFJlZ2lzdGVyDQojZGVmaW5lIFBEQ19UTlBSICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDE4KSAvLyAoUERDX1ROUFIpIFRyYW5zbWl0IE5leHQgUG9pbnRlciBSZWdpc3Rlcg0KI2RlZmluZSBQRENfVE5DUiAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAxQykgLy8gKFBEQ19UTkNSKSBUcmFuc21pdCBOZXh0IENvdW50ZXIgUmVnaXN0ZXINCiNkZWZpbmUgUERDX1BUQ1IgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMjApIC8vIChQRENfUFRDUikgUERDIFRyYW5zZmVyIENvbnRyb2wgUmVnaXN0ZXINCiNkZWZpbmUgUERDX1BUU1IgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMjQpIC8vIChQRENfUFRTUikgUERDIFRyYW5zZmVyIFN0YXR1cyBSZWdpc3Rlcg0KDQojZW5kaWYNCi8vIC0tLS0tLS0tIFBEQ19QVENSIDogKFBEQyBPZmZzZXQ6IDB4MjApIFBEQyBUcmFuc2ZlciBDb250cm9sIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19QRENfUlhURU4gICAgICAgKDB4MSA8PCAgMCkgLy8gKFBEQykgUmVjZWl2ZXIgVHJhbnNmZXIgRW5hYmxlDQojZGVmaW5lIEFUOTFDX1BEQ19SWFRESVMgICAgICAoMHgxIDw8ICAxKSAvLyAoUERDKSBSZWNlaXZlciBUcmFuc2ZlciBEaXNhYmxlDQojZGVmaW5lIEFUOTFDX1BEQ19UWFRFTiAgICAgICAoMHgxIDw8ICA4KSAvLyAoUERDKSBUcmFuc21pdHRlciBUcmFuc2ZlciBFbmFibGUNCiNkZWZpbmUgQVQ5MUNfUERDX1RYVERJUyAgICAgICgweDEgPDwgIDkpIC8vIChQREMpIFRyYW5zbWl0dGVyIFRyYW5zZmVyIERpc2FibGUNCi8vIC0tLS0tLS0tIFBEQ19QVFNSIDogKFBEQyBPZmZzZXQ6IDB4MjQpIFBEQyBUcmFuc2ZlciBTdGF0dXMgUmVnaXN0ZXIgLS0tLS0tLS0gDQoNCi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQovLyAgICAgICAgICAgICAgU09GVFdBUkUgQVBJIERFRklOSVRJT04gIEZPUiBEZWJ1ZyBVbml0DQovLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KI2lmbmRlZiBfX0FTU0VNQkxZX18NCnR5cGVkZWYgc3RydWN0IF9BVDkxU19EQkdVIHsNCglBVDkxX1JFRwkgREJHVV9DUjsgCS8vIENvbnRyb2wgUmVnaXN0ZXINCglBVDkxX1JFRwkgREJHVV9NUjsgCS8vIE1vZGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgREJHVV9JRVI7IAkvLyBJbnRlcnJ1cHQgRW5hYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIERCR1VfSURSOyAJLy8gSW50ZXJydXB0IERpc2FibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgREJHVV9JTVI7IAkvLyBJbnRlcnJ1cHQgTWFzayBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBEQkdVX0NTUjsgCS8vIENoYW5uZWwgU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIERCR1VfUkhSOyAJLy8gUmVjZWl2ZXIgSG9sZGluZyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBEQkdVX1RIUjsgCS8vIFRyYW5zbWl0dGVyIEhvbGRpbmcgUmVnaXN0ZXINCglBVDkxX1JFRwkgREJHVV9CUkdSOyAJLy8gQmF1ZCBSYXRlIEdlbmVyYXRvciBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDBbOV07IAkvLyANCglBVDkxX1JFRwkgREJHVV9GTlRSOyAJLy8gRm9yY2UgTlRSU1QgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQxWzQwXTsgCS8vIA0KCUFUOTFfUkVHCSBEQkdVX0FERFJTSVpFOyAJLy8gREJHVSBBRERSU0laRSBSRUdJU1RFUiANCglBVDkxX1JFRwkgREJHVV9JUE5BTUUxOyAJLy8gREJHVSBJUE5BTUUxIFJFR0lTVEVSIA0KCUFUOTFfUkVHCSBEQkdVX0lQTkFNRTI7IAkvLyBEQkdVIElQTkFNRTIgUkVHSVNURVIgDQoJQVQ5MV9SRUcJIERCR1VfRkVBVFVSRVM7IAkvLyBEQkdVIEZFQVRVUkVTIFJFR0lTVEVSIA0KCUFUOTFfUkVHCSBEQkdVX1ZFUjsgCS8vIERCR1UgVkVSU0lPTiBSRUdJU1RFUiANCglBVDkxX1JFRwkgREJHVV9SUFI7IAkvLyBSZWNlaXZlIFBvaW50ZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgREJHVV9SQ1I7IAkvLyBSZWNlaXZlIENvdW50ZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgREJHVV9UUFI7IAkvLyBUcmFuc21pdCBQb2ludGVyIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIERCR1VfVENSOyAJLy8gVHJhbnNtaXQgQ291bnRlciBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBEQkdVX1JOUFI7IAkvLyBSZWNlaXZlIE5leHQgUG9pbnRlciBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBEQkdVX1JOQ1I7IAkvLyBSZWNlaXZlIE5leHQgQ291bnRlciBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBEQkdVX1ROUFI7IAkvLyBUcmFuc21pdCBOZXh0IFBvaW50ZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgREJHVV9UTkNSOyAJLy8gVHJhbnNtaXQgTmV4dCBDb3VudGVyIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIERCR1VfUFRDUjsgCS8vIFBEQyBUcmFuc2ZlciBDb250cm9sIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIERCR1VfUFRTUjsgCS8vIFBEQyBUcmFuc2ZlciBTdGF0dXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQyWzZdOyAJLy8gDQoJQVQ5MV9SRUcJIERCR1VfQ0lEUjsgCS8vIENoaXAgSUQgUmVnaXN0ZXINCglBVDkxX1JFRwkgREJHVV9FWElEOyAJLy8gQ2hpcCBJRCBFeHRlbnNpb24gUmVnaXN0ZXINCn0gQVQ5MVNfREJHVSwgKkFUOTFQU19EQkdVOw0KI2Vsc2UNCiNkZWZpbmUgREJHVV9DUiAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMDApIC8vIChEQkdVX0NSKSBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIERCR1VfTVIgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDA0KSAvLyAoREJHVV9NUikgTW9kZSBSZWdpc3Rlcg0KI2RlZmluZSBEQkdVX0lFUiAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAwOCkgLy8gKERCR1VfSUVSKSBJbnRlcnJ1cHQgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIERCR1VfSURSICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDBDKSAvLyAoREJHVV9JRFIpIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyDQojZGVmaW5lIERCR1VfSU1SICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDEwKSAvLyAoREJHVV9JTVIpIEludGVycnVwdCBNYXNrIFJlZ2lzdGVyDQojZGVmaW5lIERCR1VfQ1NSICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDE0KSAvLyAoREJHVV9DU1IpIENoYW5uZWwgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIERCR1VfUkhSICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDE4KSAvLyAoREJHVV9SSFIpIFJlY2VpdmVyIEhvbGRpbmcgUmVnaXN0ZXINCiNkZWZpbmUgREJHVV9USFIgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMUMpIC8vIChEQkdVX1RIUikgVHJhbnNtaXR0ZXIgSG9sZGluZyBSZWdpc3Rlcg0KI2RlZmluZSBEQkdVX0JSR1IgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAyMCkgLy8gKERCR1VfQlJHUikgQmF1ZCBSYXRlIEdlbmVyYXRvciBSZWdpc3Rlcg0KI2RlZmluZSBEQkdVX0ZOVFIgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDA0OCkgLy8gKERCR1VfRk5UUikgRm9yY2UgTlRSU1QgUmVnaXN0ZXINCiNkZWZpbmUgREJHVV9BRERSU0laRSAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwRUMpIC8vIChEQkdVX0FERFJTSVpFKSBEQkdVIEFERFJTSVpFIFJFR0lTVEVSIA0KI2RlZmluZSBEQkdVX0lQTkFNRTEgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDBGMCkgLy8gKERCR1VfSVBOQU1FMSkgREJHVSBJUE5BTUUxIFJFR0lTVEVSIA0KI2RlZmluZSBEQkdVX0lQTkFNRTIgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDBGNCkgLy8gKERCR1VfSVBOQU1FMikgREJHVSBJUE5BTUUyIFJFR0lTVEVSIA0KI2RlZmluZSBEQkdVX0ZFQVRVUkVTICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDBGOCkgLy8gKERCR1VfRkVBVFVSRVMpIERCR1UgRkVBVFVSRVMgUkVHSVNURVIgDQojZGVmaW5lIERCR1VfVkVSICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMEZDKSAvLyAoREJHVV9WRVIpIERCR1UgVkVSU0lPTiBSRUdJU1RFUiANCiNkZWZpbmUgREJHVV9DSURSICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxNDApIC8vIChEQkdVX0NJRFIpIENoaXAgSUQgUmVnaXN0ZXINCiNkZWZpbmUgREJHVV9FWElEICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxNDQpIC8vIChEQkdVX0VYSUQpIENoaXAgSUQgRXh0ZW5zaW9uIFJlZ2lzdGVyDQoNCiNlbmRpZg0KLy8gLS0tLS0tLS0gREJHVV9DUiA6IChEQkdVIE9mZnNldDogMHgwKSBEZWJ1ZyBVbml0IENvbnRyb2wgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1VTX1JTVFJYICAgICAgICAoMHgxIDw8ICAyKSAvLyAoREJHVSkgUmVzZXQgUmVjZWl2ZXINCiNkZWZpbmUgQVQ5MUNfVVNfUlNUVFggICAgICAgICgweDEgPDwgIDMpIC8vIChEQkdVKSBSZXNldCBUcmFuc21pdHRlcg0KI2RlZmluZSBBVDkxQ19VU19SWEVOICAgICAgICAgKDB4MSA8PCAgNCkgLy8gKERCR1UpIFJlY2VpdmVyIEVuYWJsZQ0KI2RlZmluZSBBVDkxQ19VU19SWERJUyAgICAgICAgKDB4MSA8PCAgNSkgLy8gKERCR1UpIFJlY2VpdmVyIERpc2FibGUNCiNkZWZpbmUgQVQ5MUNfVVNfVFhFTiAgICAgICAgICgweDEgPDwgIDYpIC8vIChEQkdVKSBUcmFuc21pdHRlciBFbmFibGUNCiNkZWZpbmUgQVQ5MUNfVVNfVFhESVMgICAgICAgICgweDEgPDwgIDcpIC8vIChEQkdVKSBUcmFuc21pdHRlciBEaXNhYmxlDQojZGVmaW5lIEFUOTFDX1VTX1JTVFNUQSAgICAgICAoMHgxIDw8ICA4KSAvLyAoREJHVSkgUmVzZXQgU3RhdHVzIEJpdHMNCi8vIC0tLS0tLS0tIERCR1VfTVIgOiAoREJHVSBPZmZzZXQ6IDB4NCkgRGVidWcgVW5pdCBNb2RlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19VU19QQVIgICAgICAgICAgKDB4NyA8PCAgOSkgLy8gKERCR1UpIFBhcml0eSB0eXBlDQojZGVmaW5lIAlBVDkxQ19VU19QQVJfRVZFTiAgICAgICAgICAgICAgICAgKDB4MCA8PCAgOSkgLy8gKERCR1UpIEV2ZW4gUGFyaXR5DQojZGVmaW5lIAlBVDkxQ19VU19QQVJfT0REICAgICAgICAgICAgICAgICAgKDB4MSA8PCAgOSkgLy8gKERCR1UpIE9kZCBQYXJpdHkNCiNkZWZpbmUgCUFUOTFDX1VTX1BBUl9TUEFDRSAgICAgICAgICAgICAgICAoMHgyIDw8ICA5KSAvLyAoREJHVSkgUGFyaXR5IGZvcmNlZCB0byAwIChTcGFjZSkNCiNkZWZpbmUgCUFUOTFDX1VTX1BBUl9NQVJLICAgICAgICAgICAgICAgICAoMHgzIDw8ICA5KSAvLyAoREJHVSkgUGFyaXR5IGZvcmNlZCB0byAxIChNYXJrKQ0KI2RlZmluZSAJQVQ5MUNfVVNfUEFSX05PTkUgICAgICAgICAgICAgICAgICgweDQgPDwgIDkpIC8vIChEQkdVKSBObyBQYXJpdHkNCiNkZWZpbmUgCUFUOTFDX1VTX1BBUl9NVUxUSV9EUk9QICAgICAgICAgICAoMHg2IDw8ICA5KSAvLyAoREJHVSkgTXVsdGktZHJvcCBtb2RlDQojZGVmaW5lIEFUOTFDX1VTX0NITU9ERSAgICAgICAoMHgzIDw8IDE0KSAvLyAoREJHVSkgQ2hhbm5lbCBNb2RlDQojZGVmaW5lIAlBVDkxQ19VU19DSE1PREVfTk9STUFMICAgICAgICAgICAgICAgKDB4MCA8PCAxNCkgLy8gKERCR1UpIE5vcm1hbCBNb2RlOiBUaGUgVVNBUlQgY2hhbm5lbCBvcGVyYXRlcyBhcyBhbiBSWC9UWCBVU0FSVC4NCiNkZWZpbmUgCUFUOTFDX1VTX0NITU9ERV9BVVRPICAgICAgICAgICAgICAgICAoMHgxIDw8IDE0KSAvLyAoREJHVSkgQXV0b21hdGljIEVjaG86IFJlY2VpdmVyIERhdGEgSW5wdXQgaXMgY29ubmVjdGVkIHRvIHRoZSBUWEQgcGluLg0KI2RlZmluZSAJQVQ5MUNfVVNfQ0hNT0RFX0xPQ0FMICAgICAgICAgICAgICAgICgweDIgPDwgMTQpIC8vIChEQkdVKSBMb2NhbCBMb29wYmFjazogVHJhbnNtaXR0ZXIgT3V0cHV0IFNpZ25hbCBpcyBjb25uZWN0ZWQgdG8gUmVjZWl2ZXIgSW5wdXQgU2lnbmFsLg0KI2RlZmluZSAJQVQ5MUNfVVNfQ0hNT0RFX1JFTU9URSAgICAgICAgICAgICAgICgweDMgPDwgMTQpIC8vIChEQkdVKSBSZW1vdGUgTG9vcGJhY2s6IFJYRCBwaW4gaXMgaW50ZXJuYWxseSBjb25uZWN0ZWQgdG8gVFhEIHBpbi4NCi8vIC0tLS0tLS0tIERCR1VfSUVSIDogKERCR1UgT2Zmc2V0OiAweDgpIERlYnVnIFVuaXQgSW50ZXJydXB0IEVuYWJsZSBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfVVNfUlhSRFkgICAgICAgICgweDEgPDwgIDApIC8vIChEQkdVKSBSWFJEWSBJbnRlcnJ1cHQNCiNkZWZpbmUgQVQ5MUNfVVNfVFhSRFkgICAgICAgICgweDEgPDwgIDEpIC8vIChEQkdVKSBUWFJEWSBJbnRlcnJ1cHQNCiNkZWZpbmUgQVQ5MUNfVVNfRU5EUlggICAgICAgICgweDEgPDwgIDMpIC8vIChEQkdVKSBFbmQgb2YgUmVjZWl2ZSBUcmFuc2ZlciBJbnRlcnJ1cHQNCiNkZWZpbmUgQVQ5MUNfVVNfRU5EVFggICAgICAgICgweDEgPDwgIDQpIC8vIChEQkdVKSBFbmQgb2YgVHJhbnNtaXQgSW50ZXJydXB0DQojZGVmaW5lIEFUOTFDX1VTX09WUkUgICAgICAgICAoMHgxIDw8ICA1KSAvLyAoREJHVSkgT3ZlcnJ1biBJbnRlcnJ1cHQNCiNkZWZpbmUgQVQ5MUNfVVNfRlJBTUUgICAgICAgICgweDEgPDwgIDYpIC8vIChEQkdVKSBGcmFtaW5nIEVycm9yIEludGVycnVwdA0KI2RlZmluZSBBVDkxQ19VU19QQVJFICAgICAgICAgKDB4MSA8PCAgNykgLy8gKERCR1UpIFBhcml0eSBFcnJvciBJbnRlcnJ1cHQNCiNkZWZpbmUgQVQ5MUNfVVNfVFhFTVBUWSAgICAgICgweDEgPDwgIDkpIC8vIChEQkdVKSBUWEVNUFRZIEludGVycnVwdA0KI2RlZmluZSBBVDkxQ19VU19UWEJVRkUgICAgICAgKDB4MSA8PCAxMSkgLy8gKERCR1UpIFRYQlVGRSBJbnRlcnJ1cHQNCiNkZWZpbmUgQVQ5MUNfVVNfUlhCVUZGICAgICAgICgweDEgPDwgMTIpIC8vIChEQkdVKSBSWEJVRkYgSW50ZXJydXB0DQojZGVmaW5lIEFUOTFDX1VTX0NPTU1fVFggICAgICAoMHgxIDw8IDMwKSAvLyAoREJHVSkgQ09NTV9UWCBJbnRlcnJ1cHQNCiNkZWZpbmUgQVQ5MUNfVVNfQ09NTV9SWCAgICAgICgweDEgPDwgMzEpIC8vIChEQkdVKSBDT01NX1JYIEludGVycnVwdA0KLy8gLS0tLS0tLS0gREJHVV9JRFIgOiAoREJHVSBPZmZzZXQ6IDB4YykgRGVidWcgVW5pdCBJbnRlcnJ1cHQgRGlzYWJsZSBSZWdpc3RlciAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIERCR1VfSU1SIDogKERCR1UgT2Zmc2V0OiAweDEwKSBEZWJ1ZyBVbml0IEludGVycnVwdCBNYXNrIFJlZ2lzdGVyIC0tLS0tLS0tIA0KLy8gLS0tLS0tLS0gREJHVV9DU1IgOiAoREJHVSBPZmZzZXQ6IDB4MTQpIERlYnVnIFVuaXQgQ2hhbm5lbCBTdGF0dXMgUmVnaXN0ZXIgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBEQkdVX0ZOVFIgOiAoREJHVSBPZmZzZXQ6IDB4NDgpIERlYnVnIFVuaXQgRk9SQ0VfTlRSU1QgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1VTX0ZPUkNFX05UUlNUICAoMHgxIDw8ICAwKSAvLyAoREJHVSkgRm9yY2UgTlRSU1QgaW4gSlRBRw0KDQovLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KLy8gICAgICAgICAgICAgIFNPRlRXQVJFIEFQSSBERUZJTklUSU9OICBGT1IgUGFyYWxsZWwgSW5wdXQgT3V0cHV0IENvbnRyb2xlcg0KLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCiNpZm5kZWYgX19BU1NFTUJMWV9fDQp0eXBlZGVmIHN0cnVjdCBfQVQ5MVNfUElPIHsNCglBVDkxX1JFRwkgUElPX1BFUjsgCS8vIFBJTyBFbmFibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPX1BEUjsgCS8vIFBJTyBEaXNhYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT19QU1I7IAkvLyBQSU8gU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkMFsxXTsgCS8vIA0KCUFUOTFfUkVHCSBQSU9fT0VSOyAJLy8gT3V0cHV0IEVuYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9fT0RSOyAJLy8gT3V0cHV0IERpc2FibGUgUmVnaXN0ZXJyDQoJQVQ5MV9SRUcJIFBJT19PU1I7IAkvLyBPdXRwdXQgU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkMVsxXTsgCS8vIA0KCUFUOTFfUkVHCSBQSU9fSUZFUjsgCS8vIElucHV0IEZpbHRlciBFbmFibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPX0lGRFI7IAkvLyBJbnB1dCBGaWx0ZXIgRGlzYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9fSUZTUjsgCS8vIElucHV0IEZpbHRlciBTdGF0dXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQyWzFdOyAJLy8gDQoJQVQ5MV9SRUcJIFBJT19TT0RSOyAJLy8gU2V0IE91dHB1dCBEYXRhIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT19DT0RSOyAJLy8gQ2xlYXIgT3V0cHV0IERhdGEgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPX09EU1I7IAkvLyBPdXRwdXQgRGF0YSBTdGF0dXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPX1BEU1I7IAkvLyBQaW4gRGF0YSBTdGF0dXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPX0lFUjsgCS8vIEludGVycnVwdCBFbmFibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPX0lEUjsgCS8vIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT19JTVI7IAkvLyBJbnRlcnJ1cHQgTWFzayBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9fSVNSOyAJLy8gSW50ZXJydXB0IFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9fTURFUjsgCS8vIE11bHRpLWRyaXZlciBFbmFibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPX01ERFI7IAkvLyBNdWx0aS1kcml2ZXIgRGlzYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9fTURTUjsgCS8vIE11bHRpLWRyaXZlciBTdGF0dXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQzWzFdOyAJLy8gDQoJQVQ5MV9SRUcJIFBJT19QUFVEUjsgCS8vIFB1bGwtdXAgRGlzYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9fUFBVRVI7IAkvLyBQdWxsLXVwIEVuYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9fUFBVU1I7IAkvLyBQdWxsLXVwIFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDRbMV07IAkvLyANCglBVDkxX1JFRwkgUElPX0FCU1I7IAkvLyBQZXJpcGhlcmFsIEFCIFNlbGVjdCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDVbM107IAkvLyANCglBVDkxX1JFRwkgUElPX1NDSUZTUjsgCS8vIFN5c3RlbSBDbG9jayBHbGl0Y2ggSW5wdXQgRmlsdGVyIFNlbGVjdCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9fRElGU1I7IAkvLyBEZWJvdW5jaW5nIElucHV0IEZpbHRlciBTZWxlY3QgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPX0lGREdTUjsgCS8vIEdsaXRjaCBvciBEZWJvdW5jaW5nIElucHV0IEZpbHRlciBDbG9jayBTZWxlY3Rpb24gU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT19TQ0RSOyAJLy8gU2xvdyBDbG9jayBEaXZpZGVyIERlYm91bmNpbmcgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQ2WzRdOyAJLy8gDQoJQVQ5MV9SRUcJIFBJT19PV0VSOyAJLy8gT3V0cHV0IFdyaXRlIEVuYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9fT1dEUjsgCS8vIE91dHB1dCBXcml0ZSBEaXNhYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT19PV1NSOyAJLy8gT3V0cHV0IFdyaXRlIFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDdbMV07IAkvLyANCglBVDkxX1JFRwkgUElPX0FJTUVSOyAJLy8gQWRkaXRpb25hbCBJbnRlcnJ1cHQgTW9kZXMgRW5hYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT19BSU1EUjsgCS8vIEFkZGl0aW9uYWwgSW50ZXJydXB0IE1vZGVzIERpc2FibGVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT19BSU1NUjsgCS8vIEFkZGl0aW9uYWwgSW50ZXJydXB0IE1vZGVzIE1hc2sgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQ4WzFdOyAJLy8gDQoJQVQ5MV9SRUcJIFBJT19FU1I7IAkvLyBFZGdlIFNlbGVjdCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9fTFNSOyAJLy8gTGV2ZWwgU2VsZWN0IFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT19FTFNSOyAJLy8gRWRnZS9MZXZlbCBTdGF0dXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQ5WzFdOyAJLy8gDQoJQVQ5MV9SRUcJIFBJT19GRUxMU1I7IAkvLyBGYWxsaW5nIEVkZ2UvTG93IExldmVsIFNlbGVjdCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9fUkVITFNSOyAJLy8gUmlzaW5nIEVkZ2UvIEhpZ2ggTGV2ZWwgU2VsZWN0IFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT19GUkxIU1I7IAkvLyBGYWxsL1Jpc2UgLSBMb3cvSGlnaCBTdGF0dXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQxMFsxXTsgCS8vIA0KCUFUOTFfUkVHCSBQSU9fTE9DS1NSOyAJLy8gTG9jayBTdGF0dXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQxMVs2XTsgCS8vIA0KCUFUOTFfUkVHCSBQSU9fVkVSOyAJLy8gUElPIFZFUlNJT04gUkVHSVNURVIgDQoJQVQ5MV9SRUcJIFJlc2VydmVkMTJbOF07IAkvLyANCglBVDkxX1JFRwkgUElPX0tFUjsgCS8vIEtleXBhZCBDb250cm9sbGVyIEVuYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9fS1JDUjsgCS8vIEtleXBhZCBDb250cm9sbGVyIFJvdyBDb2x1bW4gUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPX0tEUjsgCS8vIEtleXBhZCBDb250cm9sbGVyIERlYm91bmNpbmcgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQxM1sxXTsgCS8vIA0KCUFUOTFfUkVHCSBQSU9fS0lFUjsgCS8vIEtleXBhZCBDb250cm9sbGVyIEludGVycnVwdCBFbmFibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPX0tJRFI7IAkvLyBLZXlwYWQgQ29udHJvbGxlciBJbnRlcnJ1cHQgRGlzYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQSU9fS0lNUjsgCS8vIEtleXBhZCBDb250cm9sbGVyIEludGVycnVwdCBNYXNrIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBJT19LU1I7IAkvLyBLZXlwYWQgQ29udHJvbGxlciBTdGF0dXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPX0tLUFI7IAkvLyBLZXlwYWQgQ29udHJvbGxlciBLZXkgUHJlc3MgUmVnaXN0ZXINCglBVDkxX1JFRwkgUElPX0tLUlI7IAkvLyBLZXlwYWQgQ29udHJvbGxlciBLZXkgUmVsZWFzZSBSZWdpc3Rlcg0KfSBBVDkxU19QSU8sICpBVDkxUFNfUElPOw0KI2Vsc2UNCiNkZWZpbmUgUElPX1BFUiAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMDApIC8vIChQSU9fUEVSKSBQSU8gRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIFBJT19QRFIgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDA0KSAvLyAoUElPX1BEUikgUElPIERpc2FibGUgUmVnaXN0ZXINCiNkZWZpbmUgUElPX1BTUiAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMDgpIC8vIChQSU9fUFNSKSBQSU8gU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIFBJT19PRVIgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDEwKSAvLyAoUElPX09FUikgT3V0cHV0IEVuYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBQSU9fT0RSICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAxNCkgLy8gKFBJT19PRFIpIE91dHB1dCBEaXNhYmxlIFJlZ2lzdGVycg0KI2RlZmluZSBQSU9fT1NSICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAxOCkgLy8gKFBJT19PU1IpIE91dHB1dCBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgUElPX0lGRVIgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMjApIC8vIChQSU9fSUZFUikgSW5wdXQgRmlsdGVyIEVuYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBQSU9fSUZEUiAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAyNCkgLy8gKFBJT19JRkRSKSBJbnB1dCBGaWx0ZXIgRGlzYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBQSU9fSUZTUiAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAyOCkgLy8gKFBJT19JRlNSKSBJbnB1dCBGaWx0ZXIgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIFBJT19TT0RSICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDMwKSAvLyAoUElPX1NPRFIpIFNldCBPdXRwdXQgRGF0YSBSZWdpc3Rlcg0KI2RlZmluZSBQSU9fQ09EUiAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAzNCkgLy8gKFBJT19DT0RSKSBDbGVhciBPdXRwdXQgRGF0YSBSZWdpc3Rlcg0KI2RlZmluZSBQSU9fT0RTUiAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAzOCkgLy8gKFBJT19PRFNSKSBPdXRwdXQgRGF0YSBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgUElPX1BEU1IgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwM0MpIC8vIChQSU9fUERTUikgUGluIERhdGEgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIFBJT19JRVIgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDQwKSAvLyAoUElPX0lFUikgSW50ZXJydXB0IEVuYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBQSU9fSURSICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDA0NCkgLy8gKFBJT19JRFIpIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyDQojZGVmaW5lIFBJT19JTVIgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDQ4KSAvLyAoUElPX0lNUikgSW50ZXJydXB0IE1hc2sgUmVnaXN0ZXINCiNkZWZpbmUgUElPX0lTUiAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNEMpIC8vIChQSU9fSVNSKSBJbnRlcnJ1cHQgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIFBJT19NREVSICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDUwKSAvLyAoUElPX01ERVIpIE11bHRpLWRyaXZlciBFbmFibGUgUmVnaXN0ZXINCiNkZWZpbmUgUElPX01ERFIgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNTQpIC8vIChQSU9fTUREUikgTXVsdGktZHJpdmVyIERpc2FibGUgUmVnaXN0ZXINCiNkZWZpbmUgUElPX01EU1IgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNTgpIC8vIChQSU9fTURTUikgTXVsdGktZHJpdmVyIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBQSU9fUFBVRFIgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDA2MCkgLy8gKFBJT19QUFVEUikgUHVsbC11cCBEaXNhYmxlIFJlZ2lzdGVyDQojZGVmaW5lIFBJT19QUFVFUiAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDY0KSAvLyAoUElPX1BQVUVSKSBQdWxsLXVwIEVuYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBQSU9fUFBVU1IgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDA2OCkgLy8gKFBJT19QUFVTUikgUHVsbC11cCBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgUElPX0FCU1IgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNzApIC8vIChQSU9fQUJTUikgUGVyaXBoZXJhbCBBQiBTZWxlY3QgUmVnaXN0ZXINCiNkZWZpbmUgUElPX1NDSUZTUiAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwODApIC8vIChQSU9fU0NJRlNSKSBTeXN0ZW0gQ2xvY2sgR2xpdGNoIElucHV0IEZpbHRlciBTZWxlY3QgUmVnaXN0ZXINCiNkZWZpbmUgUElPX0RJRlNSICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwODQpIC8vIChQSU9fRElGU1IpIERlYm91bmNpbmcgSW5wdXQgRmlsdGVyIFNlbGVjdCBSZWdpc3Rlcg0KI2RlZmluZSBQSU9fSUZER1NSICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDA4OCkgLy8gKFBJT19JRkRHU1IpIEdsaXRjaCBvciBEZWJvdW5jaW5nIElucHV0IEZpbHRlciBDbG9jayBTZWxlY3Rpb24gU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIFBJT19TQ0RSICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDhDKSAvLyAoUElPX1NDRFIpIFNsb3cgQ2xvY2sgRGl2aWRlciBEZWJvdW5jaW5nIFJlZ2lzdGVyDQojZGVmaW5lIFBJT19PV0VSICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMEEwKSAvLyAoUElPX09XRVIpIE91dHB1dCBXcml0ZSBFbmFibGUgUmVnaXN0ZXINCiNkZWZpbmUgUElPX09XRFIgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwQTQpIC8vIChQSU9fT1dEUikgT3V0cHV0IFdyaXRlIERpc2FibGUgUmVnaXN0ZXINCiNkZWZpbmUgUElPX09XU1IgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwQTgpIC8vIChQSU9fT1dTUikgT3V0cHV0IFdyaXRlIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBQSU9fQUlNRVIgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDBCMCkgLy8gKFBJT19BSU1FUikgQWRkaXRpb25hbCBJbnRlcnJ1cHQgTW9kZXMgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIFBJT19BSU1EUiAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMEI0KSAvLyAoUElPX0FJTURSKSBBZGRpdGlvbmFsIEludGVycnVwdCBNb2RlcyBEaXNhYmxlcyBSZWdpc3Rlcg0KI2RlZmluZSBQSU9fQUlNTVIgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDBCOCkgLy8gKFBJT19BSU1NUikgQWRkaXRpb25hbCBJbnRlcnJ1cHQgTW9kZXMgTWFzayBSZWdpc3Rlcg0KI2RlZmluZSBQSU9fRVNSICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDBDMCkgLy8gKFBJT19FU1IpIEVkZ2UgU2VsZWN0IFJlZ2lzdGVyDQojZGVmaW5lIFBJT19MU1IgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMEM0KSAvLyAoUElPX0xTUikgTGV2ZWwgU2VsZWN0IFJlZ2lzdGVyDQojZGVmaW5lIFBJT19FTFNSICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMEM4KSAvLyAoUElPX0VMU1IpIEVkZ2UvTGV2ZWwgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIFBJT19GRUxMU1IgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMEQwKSAvLyAoUElPX0ZFTExTUikgRmFsbGluZyBFZGdlL0xvdyBMZXZlbCBTZWxlY3QgUmVnaXN0ZXINCiNkZWZpbmUgUElPX1JFSExTUiAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwRDQpIC8vIChQSU9fUkVITFNSKSBSaXNpbmcgRWRnZS8gSGlnaCBMZXZlbCBTZWxlY3QgUmVnaXN0ZXINCiNkZWZpbmUgUElPX0ZSTEhTUiAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwRDgpIC8vIChQSU9fRlJMSFNSKSBGYWxsL1Jpc2UgLSBMb3cvSGlnaCBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgUElPX0xPQ0tTUiAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwRTApIC8vIChQSU9fTE9DS1NSKSBMb2NrIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBQSU9fVkVSICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDBGQykgLy8gKFBJT19WRVIpIFBJTyBWRVJTSU9OIFJFR0lTVEVSIA0KI2RlZmluZSBQSU9fS0VSICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDEyMCkgLy8gKFBJT19LRVIpIEtleXBhZCBDb250cm9sbGVyIEVuYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBQSU9fS1JDUiAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDEyNCkgLy8gKFBJT19LUkNSKSBLZXlwYWQgQ29udHJvbGxlciBSb3cgQ29sdW1uIFJlZ2lzdGVyDQojZGVmaW5lIFBJT19LRFIgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMTI4KSAvLyAoUElPX0tEUikgS2V5cGFkIENvbnRyb2xsZXIgRGVib3VuY2luZyBSZWdpc3Rlcg0KI2RlZmluZSBQSU9fS0lFUiAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDEzMCkgLy8gKFBJT19LSUVSKSBLZXlwYWQgQ29udHJvbGxlciBJbnRlcnJ1cHQgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIFBJT19LSURSICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMTM0KSAvLyAoUElPX0tJRFIpIEtleXBhZCBDb250cm9sbGVyIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyDQojZGVmaW5lIFBJT19LSU1SICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMTM4KSAvLyAoUElPX0tJTVIpIEtleXBhZCBDb250cm9sbGVyIEludGVycnVwdCBNYXNrIFJlZ2lzdGVyDQojZGVmaW5lIFBJT19LU1IgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMTNDKSAvLyAoUElPX0tTUikgS2V5cGFkIENvbnRyb2xsZXIgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIFBJT19LS1BSICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMTQwKSAvLyAoUElPX0tLUFIpIEtleXBhZCBDb250cm9sbGVyIEtleSBQcmVzcyBSZWdpc3Rlcg0KI2RlZmluZSBQSU9fS0tSUiAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDE0NCkgLy8gKFBJT19LS1JSKSBLZXlwYWQgQ29udHJvbGxlciBLZXkgUmVsZWFzZSBSZWdpc3Rlcg0KDQojZW5kaWYNCi8vIC0tLS0tLS0tIFBJT19LRVIgOiAoUElPIE9mZnNldDogMHgxMjApIEtleXBhZCBDb250cm9sbGVyIEVuYWJsZSBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfUElPX0tDRSAgICAgICAgICgweDEgPDwgIDApIC8vIChQSU8pIEtleXBhZCBDb250cm9sbGVyIEVuYWJsZQ0KLy8gLS0tLS0tLS0gUElPX0tSQ1IgOiAoUElPIE9mZnNldDogMHgxMjQpIEtleXBhZCBDb250cm9sbGVyIFJvdyBDb2x1bW4gUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1BJT19OQlIgICAgICAgICAoMHg3IDw8ICAwKSAvLyAoUElPKSBOdW1iZXIgb2YgQ29sdW1ucyBvZiB0aGUgS2V5cGFkIE1hdHJpeA0KI2RlZmluZSBBVDkxQ19QSU9fTkJDICAgICAgICAgKDB4NyA8PCAgOCkgLy8gKFBJTykgTnVtYmVyIG9mIFJvd3Mgb2YgdGhlIEtleXBhZCBNYXRyaXgNCi8vIC0tLS0tLS0tIFBJT19LRFIgOiAoUElPIE9mZnNldDogMHgxMjgpIEtleXBhZCBDb250cm9sbGVyIERlYm91bmNpbmcgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1BJT19EQkMgICAgICAgICAoMHgzRkYgPDwgIDApIC8vIChQSU8pIERlYm91bmNpbmcgVmFsdWUNCi8vIC0tLS0tLS0tIFBJT19LSUVSIDogKFBJTyBPZmZzZXQ6IDB4MTMwKSBLZXlwYWQgQ29udHJvbGxlciBJbnRlcnJ1cHQgRW5hYmxlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19QSU9fS1BSICAgICAgICAgKDB4MSA8PCAgMCkgLy8gKFBJTykgS2V5IFByZXNzIEludGVycnVwdCBFbmFibGUNCiNkZWZpbmUgQVQ5MUNfUElPX0tSTCAgICAgICAgICgweDEgPDwgIDEpIC8vIChQSU8pIEtleSBSZWxlYXNlIEludGVycnVwdCBFbmFibGUNCi8vIC0tLS0tLS0tIFBJT19LSURSIDogKFBJTyBPZmZzZXQ6IDB4MTM0KSBLZXlwYWQgQ29udHJvbGxlciBJbnRlcnJ1cHQgRGlzYWJsZSBSZWdpc3RlciAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIFBJT19LSU1SIDogKFBJTyBPZmZzZXQ6IDB4MTM4KSBLZXlwYWQgQ29udHJvbGxlciBJbnRlcnJ1cHQgTWFzayBSZWdpc3RlciAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIFBJT19LU1IgOiAoUElPIE9mZnNldDogMHgxM2MpIEtleXBhZCBDb250cm9sbGVyIFN0YXR1cyBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfUElPX05CS1BSICAgICAgICgweDMgPDwgIDgpIC8vIChQSU8pIE51bWJlciBvZiBTaW11bHRhbmVvdXMgS2V5IFByZXNzZXMNCiNkZWZpbmUgQVQ5MUNfUElPX05CS1JMICAgICAgICgweDMgPDwgMTYpIC8vIChQSU8pIE51bWJlciBvZiBTaW11bHRhbmVvdXMgS2V5IFJlbGVhc2VzDQovLyAtLS0tLS0tLSBQSU9fS0tQUiA6IChQSU8gT2Zmc2V0OiAweDE0MCkgS2V5cGFkIENvbnRyb2xsZXIgS2V5IFByZXNzIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19LRVkwUk9XICAgICAgICAgKDB4NyA8PCAgMCkgLy8gKFBJTykgUm93IGluZGV4IG9mIHRoZSBmaXJzdCBkZXRlY3RlZCBLZXkgUHJlc3MNCiNkZWZpbmUgQVQ5MUNfS0VZMENPTCAgICAgICAgICgweDcgPDwgIDQpIC8vIChQSU8pIENvbHVtbiBpbmRleCBvZiB0aGUgZmlyc3QgZGV0ZWN0ZWQgS2V5IFByZXNzDQojZGVmaW5lIEFUOTFDX0tFWTFST1cgICAgICAgICAoMHg3IDw8ICA4KSAvLyAoUElPKSBSb3cgaW5kZXggb2YgdGhlIHNlY29uZCBkZXRlY3RlZCBLZXkgUHJlc3MNCiNkZWZpbmUgQVQ5MUNfS0VZMUNPTCAgICAgICAgICgweDcgPDwgMTIpIC8vIChQSU8pIENvbHVtbiBpbmRleCBvZiB0aGUgc2Vjb25kIGRldGVjdGVkIEtleSBQcmVzcw0KI2RlZmluZSBBVDkxQ19LRVkyUk9XICAgICAgICAgKDB4NyA8PCAxNikgLy8gKFBJTykgUm93IGluZGV4IG9mIHRoZSB0aGlyZCBkZXRlY3RlZCBLZXkgUHJlc3MNCiNkZWZpbmUgQVQ5MUNfS0VZMkNPTCAgICAgICAgICgweDcgPDwgMjApIC8vIChQSU8pIENvbHVtbiBpbmRleCBvZiB0aGUgdGhpcmQgZGV0ZWN0ZWQgS2V5IFByZXNzDQojZGVmaW5lIEFUOTFDX0tFWTNST1cgICAgICAgICAoMHg3IDw8IDI0KSAvLyAoUElPKSBSb3cgaW5kZXggb2YgdGhlIGZvdXJ0aCBkZXRlY3RlZCBLZXkgUHJlc3MNCiNkZWZpbmUgQVQ5MUNfS0VZM0NPTCAgICAgICAgICgweDcgPDwgMjgpIC8vIChQSU8pIENvbHVtbiBpbmRleCBvZiB0aGUgZm91cnRoIGRldGVjdGVkIEtleSBQcmVzcw0KLy8gLS0tLS0tLS0gUElPX0tLUlIgOiAoUElPIE9mZnNldDogMHgxNDQpIEtleXBhZCBDb250cm9sbGVyIEtleSBSZWxlYXNlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KDQovLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KLy8gICAgICAgICAgICAgIFNPRlRXQVJFIEFQSSBERUZJTklUSU9OICBGT1IgUG93ZXIgTWFuYWdlbWVudCBDb250cm9sZXINCi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQojaWZuZGVmIF9fQVNTRU1CTFlfXw0KdHlwZWRlZiBzdHJ1Y3QgX0FUOTFTX1BNQyB7DQoJQVQ5MV9SRUcJIFBNQ19TQ0VSOyAJLy8gU3lzdGVtIENsb2NrIEVuYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQTUNfU0NEUjsgCS8vIFN5c3RlbSBDbG9jayBEaXNhYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBNQ19TQ1NSOyAJLy8gU3lzdGVtIENsb2NrIFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDBbMV07IAkvLyANCglBVDkxX1JFRwkgUE1DX1BDRVI7IAkvLyBQZXJpcGhlcmFsIENsb2NrIEVuYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQTUNfUENEUjsgCS8vIFBlcmlwaGVyYWwgQ2xvY2sgRGlzYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQTUNfUENTUjsgCS8vIFBlcmlwaGVyYWwgQ2xvY2sgU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBNQ19VQ0tSOyAJLy8gVVRNSSBDbG9jayBDb25maWd1cmF0aW9uIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBNQ19NT1I7IAkvLyBNYWluIE9zY2lsbGF0b3IgUmVnaXN0ZXINCglBVDkxX1JFRwkgUE1DX01DRlI7IAkvLyBNYWluIENsb2NrICBGcmVxdWVuY3kgUmVnaXN0ZXINCglBVDkxX1JFRwkgUE1DX1BMTEFSOyAJLy8gUExMIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkMVsxXTsgCS8vIA0KCUFUOTFfUkVHCSBQTUNfTUNLUjsgCS8vIE1hc3RlciBDbG9jayBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDJbM107IAkvLyANCglBVDkxX1JFRwkgUE1DX1BDS1JbOF07IAkvLyBQcm9ncmFtbWFibGUgQ2xvY2sgUmVnaXN0ZXINCglBVDkxX1JFRwkgUE1DX0lFUjsgCS8vIEludGVycnVwdCBFbmFibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUE1DX0lEUjsgCS8vIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBNQ19TUjsgCS8vIFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQTUNfSU1SOyAJLy8gSW50ZXJydXB0IE1hc2sgUmVnaXN0ZXINCglBVDkxX1JFRwkgUE1DX0ZTTVI7IAkvLyBGYXN0IFN0YXJ0dXAgTW9kZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQTUNfRlNQUjsgCS8vIEZhc3QgU3RhcnR1cCBQb2xhcml0eSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQTUNfRk9DUjsgCS8vIEZhdWx0IE91dHB1dCBDbGVhciBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDNbMjhdOyAJLy8gDQoJQVQ5MV9SRUcJIFBNQ19BRERSU0laRTsgCS8vIFBNQyBBRERSU0laRSBSRUdJU1RFUiANCglBVDkxX1JFRwkgUE1DX0lQTkFNRTE7IAkvLyBQTUMgSVBOQU1FMSBSRUdJU1RFUiANCglBVDkxX1JFRwkgUE1DX0lQTkFNRTI7IAkvLyBQTUMgSVBOQU1FMiBSRUdJU1RFUiANCglBVDkxX1JFRwkgUE1DX0ZFQVRVUkVTOyAJLy8gUE1DIEZFQVRVUkVTIFJFR0lTVEVSIA0KCUFUOTFfUkVHCSBQTUNfVkVSOyAJLy8gQVBNQyBWRVJTSU9OIFJFR0lTVEVSDQp9IEFUOTFTX1BNQywgKkFUOTFQU19QTUM7DQojZWxzZQ0KI2RlZmluZSBQTUNfU0NFUiAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAwMCkgLy8gKFBNQ19TQ0VSKSBTeXN0ZW0gQ2xvY2sgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIFBNQ19TQ0RSICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDA0KSAvLyAoUE1DX1NDRFIpIFN5c3RlbSBDbG9jayBEaXNhYmxlIFJlZ2lzdGVyDQojZGVmaW5lIFBNQ19TQ1NSICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDA4KSAvLyAoUE1DX1NDU1IpIFN5c3RlbSBDbG9jayBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgUE1DX1BDRVIgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMTApIC8vIChQTUNfUENFUikgUGVyaXBoZXJhbCBDbG9jayBFbmFibGUgUmVnaXN0ZXINCiNkZWZpbmUgUE1DX1BDRFIgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMTQpIC8vIChQTUNfUENEUikgUGVyaXBoZXJhbCBDbG9jayBEaXNhYmxlIFJlZ2lzdGVyDQojZGVmaW5lIFBNQ19QQ1NSICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDE4KSAvLyAoUE1DX1BDU1IpIFBlcmlwaGVyYWwgQ2xvY2sgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIENLR1JfVUNLUiAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDFDKSAvLyAoQ0tHUl9VQ0tSKSBVVE1JIENsb2NrIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXINCiNkZWZpbmUgQ0tHUl9NT1IgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMjApIC8vIChDS0dSX01PUikgTWFpbiBPc2NpbGxhdG9yIFJlZ2lzdGVyDQojZGVmaW5lIENLR1JfTUNGUiAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDI0KSAvLyAoQ0tHUl9NQ0ZSKSBNYWluIENsb2NrICBGcmVxdWVuY3kgUmVnaXN0ZXINCiNkZWZpbmUgQ0tHUl9QTExBUiAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMjgpIC8vIChDS0dSX1BMTEFSKSBQTEwgUmVnaXN0ZXINCiNkZWZpbmUgUE1DX01DS1IgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMzApIC8vIChQTUNfTUNLUikgTWFzdGVyIENsb2NrIFJlZ2lzdGVyDQojZGVmaW5lIFBNQ19QQ0tSICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDQwKSAvLyAoUE1DX1BDS1IpIFByb2dyYW1tYWJsZSBDbG9jayBSZWdpc3Rlcg0KI2RlZmluZSBQTUNfSUVSICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDA2MCkgLy8gKFBNQ19JRVIpIEludGVycnVwdCBFbmFibGUgUmVnaXN0ZXINCiNkZWZpbmUgUE1DX0lEUiAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNjQpIC8vIChQTUNfSURSKSBJbnRlcnJ1cHQgRGlzYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBQTUNfU1IgICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDA2OCkgLy8gKFBNQ19TUikgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIFBNQ19JTVIgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDZDKSAvLyAoUE1DX0lNUikgSW50ZXJydXB0IE1hc2sgUmVnaXN0ZXINCiNkZWZpbmUgUE1DX0ZTTVIgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNzApIC8vIChQTUNfRlNNUikgRmFzdCBTdGFydHVwIE1vZGUgUmVnaXN0ZXINCiNkZWZpbmUgUE1DX0ZTUFIgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNzQpIC8vIChQTUNfRlNQUikgRmFzdCBTdGFydHVwIFBvbGFyaXR5IFJlZ2lzdGVyDQojZGVmaW5lIFBNQ19GT0NSICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDc4KSAvLyAoUE1DX0ZPQ1IpIEZhdWx0IE91dHB1dCBDbGVhciBSZWdpc3Rlcg0KI2RlZmluZSBQTUNfQUREUlNJWkUgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDBFQykgLy8gKFBNQ19BRERSU0laRSkgUE1DIEFERFJTSVpFIFJFR0lTVEVSIA0KI2RlZmluZSBQTUNfSVBOQU1FMSAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDBGMCkgLy8gKFBNQ19JUE5BTUUxKSBQTUMgSVBOQU1FMSBSRUdJU1RFUiANCiNkZWZpbmUgUE1DX0lQTkFNRTIgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwRjQpIC8vIChQTUNfSVBOQU1FMikgUE1DIElQTkFNRTIgUkVHSVNURVIgDQojZGVmaW5lIFBNQ19GRUFUVVJFUyAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMEY4KSAvLyAoUE1DX0ZFQVRVUkVTKSBQTUMgRkVBVFVSRVMgUkVHSVNURVIgDQojZGVmaW5lIFBNQ19WRVIgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMEZDKSAvLyAoUE1DX1ZFUikgQVBNQyBWRVJTSU9OIFJFR0lTVEVSDQoNCiNlbmRpZg0KLy8gLS0tLS0tLS0gUE1DX1NDRVIgOiAoUE1DIE9mZnNldDogMHgwKSBTeXN0ZW0gQ2xvY2sgRW5hYmxlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19QTUNfUENLICAgICAgICAgKDB4MSA8PCAgMCkgLy8gKFBNQykgUHJvY2Vzc29yIENsb2NrDQojZGVmaW5lIEFUOTFDX1BNQ19QQ0swICAgICAgICAoMHgxIDw8ICA4KSAvLyAoUE1DKSBQcm9ncmFtbWFibGUgQ2xvY2sgT3V0cHV0DQojZGVmaW5lIEFUOTFDX1BNQ19QQ0sxICAgICAgICAoMHgxIDw8ICA5KSAvLyAoUE1DKSBQcm9ncmFtbWFibGUgQ2xvY2sgT3V0cHV0DQojZGVmaW5lIEFUOTFDX1BNQ19QQ0syICAgICAgICAoMHgxIDw8IDEwKSAvLyAoUE1DKSBQcm9ncmFtbWFibGUgQ2xvY2sgT3V0cHV0DQovLyAtLS0tLS0tLSBQTUNfU0NEUiA6IChQTUMgT2Zmc2V0OiAweDQpIFN5c3RlbSBDbG9jayBEaXNhYmxlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KLy8gLS0tLS0tLS0gUE1DX1NDU1IgOiAoUE1DIE9mZnNldDogMHg4KSBTeXN0ZW0gQ2xvY2sgU3RhdHVzIFJlZ2lzdGVyIC0tLS0tLS0tIA0KLy8gLS0tLS0tLS0gQ0tHUl9VQ0tSIDogKFBNQyBPZmZzZXQ6IDB4MWMpIFVUTUkgQ2xvY2sgQ29uZmlndXJhdGlvbiBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfQ0tHUl9VUExMRU4gICAgICgweDEgPDwgMTYpIC8vIChQTUMpIFVUTUkgUExMIEVuYWJsZQ0KI2RlZmluZSAJQVQ5MUNfQ0tHUl9VUExMRU5fRElTQUJMRUQgICAgICAgICAgICAgKDB4MCA8PCAxNikgLy8gKFBNQykgVGhlIFVUTUkgUExMIGlzIGRpc2FibGVkDQojZGVmaW5lIAlBVDkxQ19DS0dSX1VQTExFTl9FTkFCTEVEICAgICAgICAgICAgICAoMHgxIDw8IDE2KSAvLyAoUE1DKSBUaGUgVVRNSSBQTEwgaXMgZW5hYmxlZA0KI2RlZmluZSBBVDkxQ19DS0dSX1VQTExDT1VOVCAgKDB4RiA8PCAyMCkgLy8gKFBNQykgVVRNSSBPc2NpbGxhdG9yIFN0YXJ0LXVwIFRpbWUNCiNkZWZpbmUgQVQ5MUNfQ0tHUl9CSUFTRU4gICAgICgweDEgPDwgMjQpIC8vIChQTUMpIFVUTUkgQklBUyBFbmFibGUNCiNkZWZpbmUgCUFUOTFDX0NLR1JfQklBU0VOX0RJU0FCTEVEICAgICAgICAgICAgICgweDAgPDwgMjQpIC8vIChQTUMpIFRoZSBVVE1JIEJJQVMgaXMgZGlzYWJsZWQNCiNkZWZpbmUgCUFUOTFDX0NLR1JfQklBU0VOX0VOQUJMRUQgICAgICAgICAgICAgICgweDEgPDwgMjQpIC8vIChQTUMpIFRoZSBVVE1JIEJJQVMgaXMgZW5hYmxlZA0KI2RlZmluZSBBVDkxQ19DS0dSX0JJQVNDT1VOVCAgKDB4RiA8PCAyOCkgLy8gKFBNQykgVVRNSSBCSUFTIFN0YXJ0LXVwIFRpbWUNCi8vIC0tLS0tLS0tIENLR1JfTU9SIDogKFBNQyBPZmZzZXQ6IDB4MjApIE1haW4gT3NjaWxsYXRvciBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfQ0tHUl9NT1NDWFRFTiAgICgweDEgPDwgIDApIC8vIChQTUMpIE1haW4gQ3J5c3RhbCBPc2NpbGxhdG9yIEVuYWJsZQ0KI2RlZmluZSBBVDkxQ19DS0dSX01PU0NYVEJZICAgKDB4MSA8PCAgMSkgLy8gKFBNQykgTWFpbiBDcnlzdGFsIE9zY2lsbGF0b3IgQnlwYXNzDQojZGVmaW5lIEFUOTFDX0NLR1JfV0FJVE1PREUgICAoMHgxIDw8ICAyKSAvLyAoUE1DKSBNYWluIENyeXN0YWwgT3NjaWxsYXRvciBCeXBhc3MNCiNkZWZpbmUgQVQ5MUNfQ0tHUl9NT1NDUkNFTiAgICgweDEgPDwgIDMpIC8vIChQTUMpIE1haW4gT24tQ2hpcCBSQyBPc2NpbGxhdG9yIEVuYWJsZQ0KI2RlZmluZSBBVDkxQ19DS0dSX01PU0NSQ0YgICAgKDB4NyA8PCAgNCkgLy8gKFBNQykgTWFpbiBPbi1DaGlwIFJDIE9zY2lsbGF0b3IgRnJlcXVlbmN5IFNlbGVjdGlvbg0KI2RlZmluZSBBVDkxQ19DS0dSX01PU0NYVFNUICAgKDB4RkYgPDwgIDgpIC8vIChQTUMpIE1haW4gQ3J5c3RhbCBPc2NpbGxhdG9yIFN0YXJ0LXVwIFRpbWUNCiNkZWZpbmUgQVQ5MUNfQ0tHUl9LRVkgICAgICAgICgweEZGIDw8IDE2KSAvLyAoUE1DKSBDbG9jayBHZW5lcmF0b3IgQ29udHJvbGxlciBXcml0aW5nIFByb3RlY3Rpb24gS2V5DQojZGVmaW5lIEFUOTFDX0NLR1JfTU9TQ1NFTCAgICAoMHgxIDw8IDI0KSAvLyAoUE1DKSBNYWluIE9zY2lsbGF0b3IgU2VsZWN0aW9uDQojZGVmaW5lIEFUOTFDX0NLR1JfQ0ZERU4gICAgICAoMHgxIDw8IDI1KSAvLyAoUE1DKSBDbG9jayBGYWlsdXJlIERldGVjdG9yIEVuYWJsZQ0KLy8gLS0tLS0tLS0gQ0tHUl9NQ0ZSIDogKFBNQyBPZmZzZXQ6IDB4MjQpIE1haW4gQ2xvY2sgRnJlcXVlbmN5IFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19DS0dSX01BSU5GICAgICAgKDB4RkZGRiA8PCAgMCkgLy8gKFBNQykgTWFpbiBDbG9jayBGcmVxdWVuY3kNCiNkZWZpbmUgQVQ5MUNfQ0tHUl9NQUlOUkRZICAgICgweDEgPDwgMTYpIC8vIChQTUMpIE1haW4gQ2xvY2sgUmVhZHkNCi8vIC0tLS0tLS0tIENLR1JfUExMQVIgOiAoUE1DIE9mZnNldDogMHgyOCkgUExMIEEgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX0NLR1JfRElWQSAgICAgICAoMHhGRiA8PCAgMCkgLy8gKFBNQykgRGl2aWRlciBTZWxlY3RlZA0KI2RlZmluZSAJQVQ5MUNfQ0tHUl9ESVZBXzAgICAgICAgICAgICAgICAgICAgICgweDApIC8vIChQTUMpIERpdmlkZXIgb3V0cHV0IGlzIDANCiNkZWZpbmUgCUFUOTFDX0NLR1JfRElWQV9CWVBBU1MgICAgICAgICAgICAgICAoMHgxKSAvLyAoUE1DKSBEaXZpZGVyIGlzIGJ5cGFzc2VkDQojZGVmaW5lIEFUOTFDX0NLR1JfUExMQUNPVU5UICAoMHgzRiA8PCAgOCkgLy8gKFBNQykgUExMQSBDb3VudGVyDQojZGVmaW5lIEFUOTFDX0NLR1JfU1RNT0RFICAgICAoMHgzIDw8IDE0KSAvLyAoUE1DKSBTdGFydCBNb2RlDQojZGVmaW5lIAlBVDkxQ19DS0dSX1NUTU9ERV8wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8IDE0KSAvLyAoUE1DKSBGYXN0IHN0YXJ0dXANCiNkZWZpbmUgCUFUOTFDX0NLR1JfU1RNT0RFXzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgMTQpIC8vIChQTUMpIFJlc2VydmVkDQojZGVmaW5lIAlBVDkxQ19DS0dSX1NUTU9ERV8yICAgICAgICAgICAgICAgICAgICAoMHgyIDw8IDE0KSAvLyAoUE1DKSBOb3JtYWwgc3RhcnR1cA0KI2RlZmluZSAJQVQ5MUNfQ0tHUl9TVE1PREVfMyAgICAgICAgICAgICAgICAgICAgKDB4MyA8PCAxNCkgLy8gKFBNQykgUmVzZXJ2ZWQNCiNkZWZpbmUgQVQ5MUNfQ0tHUl9NVUxBICAgICAgICgweDdGRiA8PCAxNikgLy8gKFBNQykgUExMIE11bHRpcGxpZXINCiNkZWZpbmUgQVQ5MUNfQ0tHUl9TUkMgICAgICAgICgweDEgPDwgMjkpIC8vIChQTUMpIA0KLy8gLS0tLS0tLS0gUE1DX01DS1IgOiAoUE1DIE9mZnNldDogMHgzMCkgTWFzdGVyIENsb2NrIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19QTUNfQ1NTICAgICAgICAgKDB4NyA8PCAgMCkgLy8gKFBNQykgUHJvZ3JhbW1hYmxlIENsb2NrIFNlbGVjdGlvbg0KI2RlZmluZSAJQVQ5MUNfUE1DX0NTU19TTE9XX0NMSyAgICAgICAgICAgICAoMHgwKSAvLyAoUE1DKSBTbG93IENsb2NrIGlzIHNlbGVjdGVkDQojZGVmaW5lIAlBVDkxQ19QTUNfQ1NTX01BSU5fQ0xLICAgICAgICAgICAgICgweDEpIC8vIChQTUMpIE1haW4gQ2xvY2sgaXMgc2VsZWN0ZWQNCiNkZWZpbmUgCUFUOTFDX1BNQ19DU1NfUExMQV9DTEsgICAgICAgICAgICAgKDB4MikgLy8gKFBNQykgQ2xvY2sgZnJvbSBQTEwgQSBpcyBzZWxlY3RlZA0KI2RlZmluZSAJQVQ5MUNfUE1DX0NTU19VUExMX0NMSyAgICAgICAgICAgICAoMHgzKSAvLyAoUE1DKSBDbG9jayBmcm9tIFVQTEwgaXMgc2VsZWN0ZWQNCiNkZWZpbmUgCUFUOTFDX1BNQ19DU1NfU1lTX0NMSyAgICAgICAgICAgICAgKDB4NCkgLy8gKFBNQykgU3lzdGVtIGNsb2NrIGlzIHNlbGVjdGVkDQojZGVmaW5lIEFUOTFDX1BNQ19QUkVTICAgICAgICAoMHg3IDw8ICA0KSAvLyAoUE1DKSBQcm9ncmFtbWFibGUgQ2xvY2sgUHJlc2NhbGVyDQojZGVmaW5lIAlBVDkxQ19QTUNfUFJFU19DTEsgICAgICAgICAgICAgICAgICAoMHgwIDw8ICA0KSAvLyAoUE1DKSBTZWxlY3RlZCBjbG9jaw0KI2RlZmluZSAJQVQ5MUNfUE1DX1BSRVNfQ0xLXzIgICAgICAgICAgICAgICAgKDB4MSA8PCAgNCkgLy8gKFBNQykgU2VsZWN0ZWQgY2xvY2sgZGl2aWRlZCBieSAyDQojZGVmaW5lIAlBVDkxQ19QTUNfUFJFU19DTEtfNCAgICAgICAgICAgICAgICAoMHgyIDw8ICA0KSAvLyAoUE1DKSBTZWxlY3RlZCBjbG9jayBkaXZpZGVkIGJ5IDQNCiNkZWZpbmUgCUFUOTFDX1BNQ19QUkVTX0NMS184ICAgICAgICAgICAgICAgICgweDMgPDwgIDQpIC8vIChQTUMpIFNlbGVjdGVkIGNsb2NrIGRpdmlkZWQgYnkgOA0KI2RlZmluZSAJQVQ5MUNfUE1DX1BSRVNfQ0xLXzE2ICAgICAgICAgICAgICAgKDB4NCA8PCAgNCkgLy8gKFBNQykgU2VsZWN0ZWQgY2xvY2sgZGl2aWRlZCBieSAxNg0KI2RlZmluZSAJQVQ5MUNfUE1DX1BSRVNfQ0xLXzMyICAgICAgICAgICAgICAgKDB4NSA8PCAgNCkgLy8gKFBNQykgU2VsZWN0ZWQgY2xvY2sgZGl2aWRlZCBieSAzMg0KI2RlZmluZSAJQVQ5MUNfUE1DX1BSRVNfQ0xLXzY0ICAgICAgICAgICAgICAgKDB4NiA8PCAgNCkgLy8gKFBNQykgU2VsZWN0ZWQgY2xvY2sgZGl2aWRlZCBieSA2NA0KI2RlZmluZSAJQVQ5MUNfUE1DX1BSRVNfQ0xLXzYgICAgICAgICAgICAgICAgKDB4NyA8PCAgNCkgLy8gKFBNQykgU2VsZWN0ZWQgY2xvY2sgZGl2aWRlZCBieSA2DQovLyAtLS0tLS0tLSBQTUNfUENLUiA6IChQTUMgT2Zmc2V0OiAweDQwKSBQcm9ncmFtbWFibGUgQ2xvY2sgUmVnaXN0ZXIgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBQTUNfSUVSIDogKFBNQyBPZmZzZXQ6IDB4NjApIFBNQyBJbnRlcnJ1cHQgRW5hYmxlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19QTUNfTU9TQ1hUUyAgICAgKDB4MSA8PCAgMCkgLy8gKFBNQykgTWFpbiBDcnlzdGFsIE9zY2lsbGF0b3IgU3RhdHVzL0VuYWJsZS9EaXNhYmxlL01hc2sNCiNkZWZpbmUgQVQ5MUNfUE1DX0xPQ0tBICAgICAgICgweDEgPDwgIDEpIC8vIChQTUMpIFBMTCBBIFN0YXR1cy9FbmFibGUvRGlzYWJsZS9NYXNrDQojZGVmaW5lIEFUOTFDX1BNQ19NQ0tSRFkgICAgICAoMHgxIDw8ICAzKSAvLyAoUE1DKSBNYXN0ZXIgQ2xvY2sgU3RhdHVzL0VuYWJsZS9EaXNhYmxlL01hc2sNCiNkZWZpbmUgQVQ5MUNfUE1DX0xPQ0tVICAgICAgICgweDEgPDwgIDYpIC8vIChQTUMpIFBMTCBVVE1JIFN0YXR1cy9FbmFibGUvRGlzYWJsZS9NYXNrDQojZGVmaW5lIEFUOTFDX1BNQ19QQ0tSRFkwICAgICAoMHgxIDw8ICA4KSAvLyAoUE1DKSBQQ0swX1JEWSBTdGF0dXMvRW5hYmxlL0Rpc2FibGUvTWFzaw0KI2RlZmluZSBBVDkxQ19QTUNfUENLUkRZMSAgICAgKDB4MSA8PCAgOSkgLy8gKFBNQykgUENLMV9SRFkgU3RhdHVzL0VuYWJsZS9EaXNhYmxlL01hc2sNCiNkZWZpbmUgQVQ5MUNfUE1DX1BDS1JEWTIgICAgICgweDEgPDwgMTApIC8vIChQTUMpIFBDSzJfUkRZIFN0YXR1cy9FbmFibGUvRGlzYWJsZS9NYXNrDQojZGVmaW5lIEFUOTFDX1BNQ19NT1NDU0VMUyAgICAoMHgxIDw8IDE2KSAvLyAoUE1DKSBNYWluIE9zY2lsbGF0b3IgU2VsZWN0aW9uIFN0YXR1cw0KI2RlZmluZSBBVDkxQ19QTUNfTU9TQ1JDUyAgICAgKDB4MSA8PCAxNykgLy8gKFBNQykgTWFpbiBPbi1DaGlwIFJDIE9zY2lsbGF0b3IgU3RhdHVzDQojZGVmaW5lIEFUOTFDX1BNQ19DRkRFViAgICAgICAoMHgxIDw8IDE4KSAvLyAoUE1DKSBDbG9jayBGYWlsdXJlIERldGVjdG9yIEV2ZW50DQovLyAtLS0tLS0tLSBQTUNfSURSIDogKFBNQyBPZmZzZXQ6IDB4NjQpIFBNQyBJbnRlcnJ1cHQgRGlzYWJsZSBSZWdpc3RlciAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIFBNQ19TUiA6IChQTUMgT2Zmc2V0OiAweDY4KSBQTUMgU3RhdHVzIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19QTUNfT1NDU0VMUyAgICAgKDB4MSA8PCAgNykgLy8gKFBNQykgU2xvdyBDbG9jayBPc2NpbGxhdG9yIFNlbGVjdGlvbg0KI2RlZmluZSBBVDkxQ19QTUNfQ0ZEUyAgICAgICAgKDB4MSA8PCAxOSkgLy8gKFBNQykgQ2xvY2sgRmFpbHVyZSBEZXRlY3RvciBTdGF0dXMNCiNkZWZpbmUgQVQ5MUNfUE1DX0ZPUyAgICAgICAgICgweDEgPDwgMjApIC8vIChQTUMpIENsb2NrIEZhaWx1cmUgRGV0ZWN0b3IgRmF1bHQgT3V0cHV0IFN0YXR1cw0KLy8gLS0tLS0tLS0gUE1DX0lNUiA6IChQTUMgT2Zmc2V0OiAweDZjKSBQTUMgSW50ZXJydXB0IE1hc2sgUmVnaXN0ZXIgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBQTUNfRlNNUiA6IChQTUMgT2Zmc2V0OiAweDcwKSBGYXN0IFN0YXJ0dXAgTW9kZSBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfUE1DX0ZTVFQgICAgICAgICgweEZGRkYgPDwgIDApIC8vIChQTUMpIEZhc3QgU3RhcnQtdXAgSW5wdXQgRW5hYmxlIDAgdG8gMTUNCiNkZWZpbmUgQVQ5MUNfUE1DX1JUVEFMICAgICAgICgweDEgPDwgMTYpIC8vIChQTUMpIFJUVCBBbGFybSBFbmFibGUNCiNkZWZpbmUgQVQ5MUNfUE1DX1JUQ0FMICAgICAgICgweDEgPDwgMTcpIC8vIChQTUMpIFJUQyBBbGFybSBFbmFibGUNCiNkZWZpbmUgQVQ5MUNfUE1DX1VTQkFMICAgICAgICgweDEgPDwgMTgpIC8vIChQTUMpIFVTQiBBbGFybSBFbmFibGUNCiNkZWZpbmUgQVQ5MUNfUE1DX0xQTSAgICAgICAgICgweDEgPDwgMjApIC8vIChQTUMpIExvdyBQb3dlciBNb2RlDQovLyAtLS0tLS0tLSBQTUNfRlNQUiA6IChQTUMgT2Zmc2V0OiAweDc0KSBGYXN0IFN0YXJ0dXAgUG9sYXJpdHkgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1BNQ19GU1RQICAgICAgICAoMHhGRkZGIDw8ICAwKSAvLyAoUE1DKSBGYXN0IFN0YXJ0LXVwIElucHV0IFBvbGFyaXR5IDAgdG8gMTUNCi8vIC0tLS0tLS0tIFBNQ19GT0NSIDogKFBNQyBPZmZzZXQ6IDB4NzgpIEZhdWx0IE91dHB1dCBDbGVhciBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfUE1DX0ZPQ0xSICAgICAgICgweDEgPDwgIDApIC8vIChQTUMpIEZhdWx0IE91dHB1dCBDbGVhcg0KDQovLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KLy8gICAgICAgICAgICAgIFNPRlRXQVJFIEFQSSBERUZJTklUSU9OICBGT1IgQ2xvY2sgR2VuZXJhdG9yIENvbnRyb2xlcg0KLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCiNpZm5kZWYgX19BU1NFTUJMWV9fDQp0eXBlZGVmIHN0cnVjdCBfQVQ5MVNfQ0tHUiB7DQoJQVQ5MV9SRUcJIENLR1JfVUNLUjsgCS8vIFVUTUkgQ2xvY2sgQ29uZmlndXJhdGlvbiBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBDS0dSX01PUjsgCS8vIE1haW4gT3NjaWxsYXRvciBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBDS0dSX01DRlI7IAkvLyBNYWluIENsb2NrICBGcmVxdWVuY3kgUmVnaXN0ZXINCglBVDkxX1JFRwkgQ0tHUl9QTExBUjsgCS8vIFBMTCBSZWdpc3Rlcg0KfSBBVDkxU19DS0dSLCAqQVQ5MVBTX0NLR1I7DQojZWxzZQ0KDQojZW5kaWYNCi8vIC0tLS0tLS0tIENLR1JfVUNLUiA6IChDS0dSIE9mZnNldDogMHgwKSBVVE1JIENsb2NrIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBDS0dSX01PUiA6IChDS0dSIE9mZnNldDogMHg0KSBNYWluIE9zY2lsbGF0b3IgUmVnaXN0ZXIgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBDS0dSX01DRlIgOiAoQ0tHUiBPZmZzZXQ6IDB4OCkgTWFpbiBDbG9jayBGcmVxdWVuY3kgUmVnaXN0ZXIgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBDS0dSX1BMTEFSIDogKENLR1IgT2Zmc2V0OiAweGMpIFBMTCBBIFJlZ2lzdGVyIC0tLS0tLS0tIA0KDQovLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KLy8gICAgICAgICAgICAgIFNPRlRXQVJFIEFQSSBERUZJTklUSU9OICBGT1IgUmVzZXQgQ29udHJvbGxlciBJbnRlcmZhY2UNCi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQojaWZuZGVmIF9fQVNTRU1CTFlfXw0KdHlwZWRlZiBzdHJ1Y3QgX0FUOTFTX1JTVEMgew0KCUFUOTFfUkVHCSBSU1RDX1JDUjsgCS8vIFJlc2V0IENvbnRyb2wgUmVnaXN0ZXINCglBVDkxX1JFRwkgUlNUQ19SU1I7IAkvLyBSZXNldCBTdGF0dXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgUlNUQ19STVI7IAkvLyBSZXNldCBNb2RlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkMFs2MF07IAkvLyANCglBVDkxX1JFRwkgUlNUQ19WRVI7IAkvLyBWZXJzaW9uIFJlZ2lzdGVyDQp9IEFUOTFTX1JTVEMsICpBVDkxUFNfUlNUQzsNCiNlbHNlDQojZGVmaW5lIFJTVENfUkNSICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDAwKSAvLyAoUlNUQ19SQ1IpIFJlc2V0IENvbnRyb2wgUmVnaXN0ZXINCiNkZWZpbmUgUlNUQ19SU1IgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMDQpIC8vIChSU1RDX1JTUikgUmVzZXQgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIFJTVENfUk1SICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDA4KSAvLyAoUlNUQ19STVIpIFJlc2V0IE1vZGUgUmVnaXN0ZXINCiNkZWZpbmUgUlNUQ19WRVIgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwRkMpIC8vIChSU1RDX1ZFUikgVmVyc2lvbiBSZWdpc3Rlcg0KDQojZW5kaWYNCi8vIC0tLS0tLS0tIFJTVENfUkNSIDogKFJTVEMgT2Zmc2V0OiAweDApIFJlc2V0IENvbnRyb2wgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1JTVENfUFJPQ1JTVCAgICAoMHgxIDw8ICAwKSAvLyAoUlNUQykgUHJvY2Vzc29yIFJlc2V0DQojZGVmaW5lIEFUOTFDX1JTVENfSUNFUlNUICAgICAoMHgxIDw8ICAxKSAvLyAoUlNUQykgSUNFIEludGVyZmFjZSBSZXNldA0KI2RlZmluZSBBVDkxQ19SU1RDX1BFUlJTVCAgICAgKDB4MSA8PCAgMikgLy8gKFJTVEMpIFBlcmlwaGVyYWwgUmVzZXQNCiNkZWZpbmUgQVQ5MUNfUlNUQ19FWFRSU1QgICAgICgweDEgPDwgIDMpIC8vIChSU1RDKSBFeHRlcm5hbCBSZXNldA0KI2RlZmluZSBBVDkxQ19SU1RDX0tFWSAgICAgICAgKDB4RkYgPDwgMjQpIC8vIChSU1RDKSBQYXNzd29yZA0KLy8gLS0tLS0tLS0gUlNUQ19SU1IgOiAoUlNUQyBPZmZzZXQ6IDB4NCkgUmVzZXQgU3RhdHVzIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19SU1RDX1VSU1RTICAgICAgKDB4MSA8PCAgMCkgLy8gKFJTVEMpIFVzZXIgUmVzZXQgU3RhdHVzDQojZGVmaW5lIEFUOTFDX1JTVENfUlNUVFlQICAgICAoMHg3IDw8ICA4KSAvLyAoUlNUQykgUmVzZXQgVHlwZQ0KI2RlZmluZSAJQVQ5MUNfUlNUQ19SU1RUWVBfR0VORVJBTCAgICAgICAgICAgICAgKDB4MCA8PCAgOCkgLy8gKFJTVEMpIEdlbmVyYWwgcmVzZXQuIEJvdGggVkREQ09SRSBhbmQgVkREQlUgcmlzaW5nLg0KI2RlZmluZSAJQVQ5MUNfUlNUQ19SU1RUWVBfV0FLRVVQICAgICAgICAgICAgICAgKDB4MSA8PCAgOCkgLy8gKFJTVEMpIFdha2VVcCBSZXNldC4gVkREQ09SRSByaXNpbmcuDQojZGVmaW5lIAlBVDkxQ19SU1RDX1JTVFRZUF9XQVRDSERPRyAgICAgICAgICAgICAoMHgyIDw8ICA4KSAvLyAoUlNUQykgV2F0Y2hkb2cgUmVzZXQuIFdhdGNoZG9nIG92ZXJmbG93IG9jY3VyZWQuDQojZGVmaW5lIAlBVDkxQ19SU1RDX1JTVFRZUF9TT0ZUV0FSRSAgICAgICAgICAgICAoMHgzIDw8ICA4KSAvLyAoUlNUQykgU29mdHdhcmUgUmVzZXQuIFByb2Nlc3NvciByZXNldCByZXF1aXJlZCBieSB0aGUgc29mdHdhcmUuDQojZGVmaW5lIAlBVDkxQ19SU1RDX1JTVFRZUF9VU0VSICAgICAgICAgICAgICAgICAoMHg0IDw8ICA4KSAvLyAoUlNUQykgVXNlciBSZXNldC4gTlJTVCBwaW4gZGV0ZWN0ZWQgbG93Lg0KI2RlZmluZSBBVDkxQ19SU1RDX05SU1RMICAgICAgKDB4MSA8PCAxNikgLy8gKFJTVEMpIE5SU1QgcGluIGxldmVsDQojZGVmaW5lIEFUOTFDX1JTVENfU1JDTVAgICAgICAoMHgxIDw8IDE3KSAvLyAoUlNUQykgU29mdHdhcmUgUmVzZXQgQ29tbWFuZCBpbiBQcm9ncmVzcy4NCi8vIC0tLS0tLS0tIFJTVENfUk1SIDogKFJTVEMgT2Zmc2V0OiAweDgpIFJlc2V0IE1vZGUgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1JTVENfVVJTVEVOICAgICAoMHgxIDw8ICAwKSAvLyAoUlNUQykgVXNlciBSZXNldCBFbmFibGUNCiNkZWZpbmUgQVQ5MUNfUlNUQ19VUlNUSUVOICAgICgweDEgPDwgIDQpIC8vIChSU1RDKSBVc2VyIFJlc2V0IEludGVycnVwdCBFbmFibGUNCiNkZWZpbmUgQVQ5MUNfUlNUQ19FUlNUTCAgICAgICgweEYgPDwgIDgpIC8vIChSU1RDKSBVc2VyIFJlc2V0IEVuYWJsZQ0KDQovLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KLy8gICAgICAgICAgICAgIFNPRlRXQVJFIEFQSSBERUZJTklUSU9OICBGT1IgU3VwcGx5IENvbnRyb2xsZXIgSW50ZXJmYWNlDQovLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KI2lmbmRlZiBfX0FTU0VNQkxZX18NCnR5cGVkZWYgc3RydWN0IF9BVDkxU19TVVBDIHsNCglBVDkxX1JFRwkgU1VQQ19DUjsgCS8vIENvbnRyb2wgUmVnaXN0ZXINCglBVDkxX1JFRwkgU1VQQ19CT01SOyAJLy8gQnJvd24gT3V0IE1vZGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgU1VQQ19NUjsgCS8vIE1vZGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgU1VQQ19XVU1SOyAJLy8gV2FrZSBVcCBNb2RlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFNVUENfV1VJUjsgCS8vIFdha2UgVXAgSW5wdXRzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFNVUENfU1I7IAkvLyBTdGF0dXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgU1VQQ19GV1VUUjsgCS8vIEZsYXNoIFdha2UtdXAgVGltZXIgUmVnaXN0ZXINCn0gQVQ5MVNfU1VQQywgKkFUOTFQU19TVVBDOw0KI2Vsc2UNCiNkZWZpbmUgU1VQQ19DUiAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMDApIC8vIChTVVBDX0NSKSBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIFNVUENfQk9NUiAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDA0KSAvLyAoU1VQQ19CT01SKSBCcm93biBPdXQgTW9kZSBSZWdpc3Rlcg0KI2RlZmluZSBTVVBDX01SICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAwOCkgLy8gKFNVUENfTVIpIE1vZGUgUmVnaXN0ZXINCiNkZWZpbmUgU1VQQ19XVU1SICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMEMpIC8vIChTVVBDX1dVTVIpIFdha2UgVXAgTW9kZSBSZWdpc3Rlcg0KI2RlZmluZSBTVVBDX1dVSVIgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAxMCkgLy8gKFNVUENfV1VJUikgV2FrZSBVcCBJbnB1dHMgUmVnaXN0ZXINCiNkZWZpbmUgU1VQQ19TUiAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMTQpIC8vIChTVVBDX1NSKSBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgU1VQQ19GV1VUUiAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMTgpIC8vIChTVVBDX0ZXVVRSKSBGbGFzaCBXYWtlLXVwIFRpbWVyIFJlZ2lzdGVyDQoNCiNlbmRpZg0KLy8gLS0tLS0tLS0gU1VQQ19DUiA6IChTVVBDIE9mZnNldDogMHgwKSBDb250cm9sIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19TVVBDX1NIRFcgICAgICAgKDB4MSA8PCAgMCkgLy8gKFNVUEMpIFNodXQgRG93biBDb21tYW5kDQojZGVmaW5lIEFUOTFDX1NVUENfU0hEV0VPRiAgICAoMHgxIDw8ICAxKSAvLyAoU1VQQykgU2h1dCBEb3duIGFmdGVyIEVuZCBPZiBGcmFtZQ0KI2RlZmluZSBBVDkxQ19TVVBDX1ZST0ZGICAgICAgKDB4MSA8PCAgMikgLy8gKFNVUEMpIFZvbHRhZ2UgUmVndWxhdG9yIE9mZg0KI2RlZmluZSBBVDkxQ19TVVBDX1hUQUxTRUwgICAgKDB4MSA8PCAgMykgLy8gKFNVUEMpIENyeXN0YWwgT3NjaWxsYXRvciBTZWxlY3QNCiNkZWZpbmUgQVQ5MUNfU1VQQ19LRVkgICAgICAgICgweEZGIDw8IDI0KSAvLyAoU1VQQykgU3VwcGx5IENvbnRyb2xsZXIgV3JpdGluZyBQcm90ZWN0aW9uIEtleQ0KLy8gLS0tLS0tLS0gU1VQQ19CT01SIDogKFNVUEMgT2Zmc2V0OiAweDQpIEJyb3duIE91dCBNb2RlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19TVVBDX0JPRFRIICAgICAgKDB4RiA8PCAgMCkgLy8gKFNVUEMpIEJyb3duIE91dCBUaHJlc2hvbGQNCiNkZWZpbmUgQVQ5MUNfU1VQQ19CT0RTTVBMICAgICgweDcgPDwgIDgpIC8vIChTVVBDKSBCcm93biBPdXQgU2FtcGxpbmcgUGVyaW9kDQojZGVmaW5lIAlBVDkxQ19TVVBDX0JPRFNNUExfRElTQUJMRUQgICAgICAgICAgICAgKDB4MCA8PCAgOCkgLy8gKFNVUEMpIEJyb3duIE91dCBEZXRlY3RvciBkaXNhYmxlZA0KI2RlZmluZSAJQVQ5MUNfU1VQQ19CT0RTTVBMX0NPTlRJTlVPVVMgICAgICAgICAgICgweDEgPDwgIDgpIC8vIChTVVBDKSBDb250aW51b3VzIEJyb3duIE91dCBEZXRlY3Rvcg0KI2RlZmluZSAJQVQ5MUNfU1VQQ19CT0RTTVBMXzMyX1NMQ0sgICAgICAgICAgICAgICgweDIgPDwgIDgpIC8vIChTVVBDKSBCcm93biBPdXQgRGV0ZWN0b3IgZW5hYmxlZCBvbmUgU0xDSyBwZXJpb2QgZXZlcnkgMzIgU0xDSyBwZXJpb2RzDQojZGVmaW5lIAlBVDkxQ19TVVBDX0JPRFNNUExfMjU2X1NMQ0sgICAgICAgICAgICAgKDB4MyA8PCAgOCkgLy8gKFNVUEMpIEJyb3duIE91dCBEZXRlY3RvciBlbmFibGVkIG9uZSBTTENLIHBlcmlvZCBldmVyeSAyNTYgU0xDSyBwZXJpb2RzDQojZGVmaW5lIAlBVDkxQ19TVVBDX0JPRFNNUExfMjA0OF9TTENLICAgICAgICAgICAgKDB4NCA8PCAgOCkgLy8gKFNVUEMpIEJyb3duIE91dCBEZXRlY3RvciBlbmFibGVkIG9uZSBTTENLIHBlcmlvZCBldmVyeSAyMDQ4IFNMQ0sgcGVyaW9kcw0KI2RlZmluZSBBVDkxQ19TVVBDX0JPRFJTVEVOICAgKDB4MSA8PCAxMikgLy8gKFNVUEMpIEJyb3dub3V0IFJlc2V0IEVuYWJsZQ0KLy8gLS0tLS0tLS0gU1VQQ19NUiA6IChTVVBDIE9mZnNldDogMHg4KSBTdXBwbHkgQ29udHJvbGxlciBNb2RlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19TVVBDX0xDRE9VVCAgICAgKDB4RiA8PCAgMCkgLy8gKFNVUEMpIExDRCBDaGFyZ2UgUHVtcCBPdXRwdXQgVm9sdGFnZSBTZWxlY3Rpb24NCiNkZWZpbmUgQVQ5MUNfU1VQQ19MQ0RNT0RFICAgICgweDMgPDwgIDQpIC8vIChTVVBDKSBTZWdtZW50IExDRCBTdXBwbHkgTW9kZQ0KI2RlZmluZSAJQVQ5MUNfU1VQQ19MQ0RNT0RFX09GRiAgICAgICAgICAgICAgICAgICgweDAgPDwgIDQpIC8vIChTVVBDKSBUaGUgaW50ZXJuYWwgYW5kIGV4dGVybmFsIHN1cHBseSBzb3VyY2VzIGFyZSBib3RoIGRlc2VsZWN0ZWQgYW5kIHRoZSBvbi1jaGlwIGNoYXJnZSBwdW1wIGlzIHR1cm5lZCBvZmYNCiNkZWZpbmUgCUFUOTFDX1NVUENfTENETU9ERV9PRkZfQUZURVJfRU9GICAgICAgICAoMHgxIDw8ICA0KSAvLyAoU1VQQykgQXQgdGhlIEVuZCBPZiBGcmFtZSBmcm9tIExDRCBjb250cm9sbGVyLCB0aGUgaW50ZXJuYWwgYW5kIGV4dGVybmFsIHN1cHBseSBzb3VyY2VzIGFyZSBib3RoIGRlc2VsZWN0ZWQgYW5kIHRoZSBvbi1jaGlwIGNoYXJnZSBwdW1wIGlzIHR1cm5lZCBvZmYNCiNkZWZpbmUgCUFUOTFDX1NVUENfTENETU9ERV9FWFRFUk5BTCAgICAgICAgICAgICAoMHgyIDw8ICA0KSAvLyAoU1VQQykgVGhlIGV4dGVybmFsIHN1cHBseSBzb3VyY2UgaXMgc2VsZWN0ZWQNCiNkZWZpbmUgCUFUOTFDX1NVUENfTENETU9ERV9JTlRFUk5BTCAgICAgICAgICAgICAoMHgzIDw8ICA0KSAvLyAoU1VQQykgVGhlIGludGVybmFsIHN1cHBseSBzb3VyY2UgaXMgc2VsZWN0ZWQgYW5kIHRoZSBvbi1jaGlwIGNoYXJnZSBwdW1wIGlzIHR1cm5lZCBvbg0KI2RlZmluZSBBVDkxQ19TVVBDX1ZSREVFUCAgICAgKDB4MSA8PCAgOCkgLy8gKFNVUEMpIFZvbHRhZ2UgUmVndWxhdG9yIERlZXAgTW9kZQ0KI2RlZmluZSBBVDkxQ19TVVBDX1ZSVkREICAgICAgKDB4NyA8PCAgOSkgLy8gKFNVUEMpIFZvbHRhZ2UgUmVndWxhdG9yIE91dHB1dCBWb2x0YWdlIFNlbGVjdGlvbg0KI2RlZmluZSBBVDkxQ19TVVBDX1ZSUlNURU4gICAgKDB4MSA8PCAxMikgLy8gKFNVUEMpIFZvbHRhZ2UgUmVndWxhdGlvbiBMb3NzIFJlc2V0IEVuYWJsZQ0KI2RlZmluZSBBVDkxQ19TVVBDX0dQQlJPTiAgICAgKDB4MSA8PCAxNikgLy8gKFNVUEMpIEdQQlIgT04NCiNkZWZpbmUgQVQ5MUNfU1VQQ19TUkFNT04gICAgICgweDEgPDwgMTcpIC8vIChTVVBDKSBTUkFNIE9ODQojZGVmaW5lIEFUOTFDX1NVUENfUlRDT04gICAgICAoMHgxIDw8IDE4KSAvLyAoU1VQQykgUmVhbCBUaW1lIENsb2NrIFBvd2VyIHN3aXRjaCBPTg0KI2RlZmluZSBBVDkxQ19TVVBDX0ZMQVNIT04gICAgKDB4MSA8PCAxOSkgLy8gKFNVUEMpIEZsYXNoIFBvd2VyIHN3aXRjaCBPbg0KI2RlZmluZSBBVDkxQ19TVVBDX0JZUEFTUyAgICAgKDB4MSA8PCAyMCkgLy8gKFNVUEMpIDMya0h6IG9zY2lsbGF0b3IgYnlwYXNzDQojZGVmaW5lIEFUOTFDX1NVUENfTUtFWSAgICAgICAoMHhGRiA8PCAyNCkgLy8gKFNVUEMpIFN1cHBseSBDb250cm9sbGVyIFdyaXRpbmcgUHJvdGVjdGlvbiBLZXkNCi8vIC0tLS0tLS0tIFNVUENfV1VNUiA6IChTVVBDIE9mZnNldDogMHhjKSBXYWtlIFVwIE1vZGUgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1NVUENfRldVUEVOICAgICAoMHgxIDw8ICAwKSAvLyAoU1VQQykgRm9yY2UgV2FrZSBVcCBFbmFibGUNCiNkZWZpbmUgQVQ5MUNfU1VQQ19CT0RFTiAgICAgICgweDEgPDwgIDEpIC8vIChTVVBDKSBCcm93biBPdXQgV2FrZSBVcCBFbmFibGUNCiNkZWZpbmUgQVQ5MUNfU1VQQ19SVFRFTiAgICAgICgweDEgPDwgIDIpIC8vIChTVVBDKSBSZWFsIFRpbWUgVGltZXIgV2FrZSBVcCBFbmFibGUNCiNkZWZpbmUgQVQ5MUNfU1VQQ19SVENFTiAgICAgICgweDEgPDwgIDMpIC8vIChTVVBDKSBSZWFsIFRpbWUgQ2xvY2sgV2FrZSBVcCBFbmFibGUNCiNkZWZpbmUgQVQ5MUNfU1VQQ19GV1VQREJDICAgICgweDcgPDwgIDgpIC8vIChTVVBDKSBGb3JjZSBXYWtlIFVwIGRlYm91bmNlcg0KI2RlZmluZSAJQVQ5MUNfU1VQQ19GV1VQREJDX0lNTUVESUFURSAgICAgICAgICAgICgweDAgPDwgIDgpIC8vIChTVVBDKSBJbW1lZGlhdGUsIE5vIGRlYm91bmNpbmcsIGRldGVjdGVkIGFjdGl2ZSBhdCBsZWFzdCBvbmUgU2xvdyBjbG9jayBlZGdlDQojZGVmaW5lIAlBVDkxQ19TVVBDX0ZXVVBEQkNfM19TTENLICAgICAgICAgICAgICAgKDB4MSA8PCAgOCkgLy8gKFNVUEMpIEFuIGVuYWJsZWQgV2FrZSBVcCBpbnB1dCBzaGFsbCBiZSBsb3cgZm9yIGF0IGxlYXN0IDMgU0xDSyBwZXJpb2RzDQojZGVmaW5lIAlBVDkxQ19TVVBDX0ZXVVBEQkNfMzJfU0xDSyAgICAgICAgICAgICAgKDB4MiA8PCAgOCkgLy8gKFNVUEMpIEFuIGVuYWJsZWQgV2FrZSBVcCBpbnB1dCAgc2hhbGwgYmUgbG93IGZvciBhdCBsZWFzdCAzMiBTTENLIHBlcmlvZHMNCiNkZWZpbmUgCUFUOTFDX1NVUENfRldVUERCQ181MTJfU0xDSyAgICAgICAgICAgICAoMHgzIDw8ICA4KSAvLyAoU1VQQykgQW4gZW5hYmxlZCBXYWtlIFVwIGlucHV0ICBzaGFsbCBiZSBsb3cgZm9yIGF0IGxlYXN0IDUxMiBTTENLIHBlcmlvZHMNCiNkZWZpbmUgCUFUOTFDX1NVUENfRldVUERCQ180MDk2X1NMQ0sgICAgICAgICAgICAoMHg0IDw8ICA4KSAvLyAoU1VQQykgQW4gZW5hYmxlZCBXYWtlIFVwIGlucHV0ICBzaGFsbCBiZSBsb3cgZm9yIGF0IGxlYXN0IDQwOTYgU0xDSyBwZXJpb2RzDQojZGVmaW5lIAlBVDkxQ19TVVBDX0ZXVVBEQkNfMzI3NjhfU0xDSyAgICAgICAgICAgKDB4NSA8PCAgOCkgLy8gKFNVUEMpIEFuIGVuYWJsZWQgV2FrZSBVcCBpbnB1dCAgc2hhbGwgYmUgbG93IGZvciBhdCBsZWFzdCAzMjc2OCBTTENLIHBlcmlvZHMNCiNkZWZpbmUgQVQ5MUNfU1VQQ19XS1VQREJDICAgICgweDcgPDwgMTIpIC8vIChTVVBDKSBGb3JjZSBXYWtlIFVwIGRlYm91bmNlcg0KI2RlZmluZSAJQVQ5MUNfU1VQQ19XS1VQREJDX0lNTUVESUFURSAgICAgICAgICAgICgweDAgPDwgMTIpIC8vIChTVVBDKSBJbW1lZGlhdGUsIE5vIGRlYm91bmNpbmcsIGRldGVjdGVkIGFjdGl2ZSBhdCBsZWFzdCBvbmUgU2xvdyBjbG9jayBlZGdlDQojZGVmaW5lIAlBVDkxQ19TVVBDX1dLVVBEQkNfM19TTENLICAgICAgICAgICAgICAgKDB4MSA8PCAxMikgLy8gKFNVUEMpIEZXVVAgc2hhbGwgYmUgbG93IGZvciBhdCBsZWFzdCAzIFNMQ0sgcGVyaW9kcw0KI2RlZmluZSAJQVQ5MUNfU1VQQ19XS1VQREJDXzMyX1NMQ0sgICAgICAgICAgICAgICgweDIgPDwgMTIpIC8vIChTVVBDKSBGV1VQIHNoYWxsIGJlIGxvdyBmb3IgYXQgbGVhc3QgMzIgU0xDSyBwZXJpb2RzDQojZGVmaW5lIAlBVDkxQ19TVVBDX1dLVVBEQkNfNTEyX1NMQ0sgICAgICAgICAgICAgKDB4MyA8PCAxMikgLy8gKFNVUEMpIEZXVVAgc2hhbGwgYmUgbG93IGZvciBhdCBsZWFzdCA1MTIgU0xDSyBwZXJpb2RzDQojZGVmaW5lIAlBVDkxQ19TVVBDX1dLVVBEQkNfNDA5Nl9TTENLICAgICAgICAgICAgKDB4NCA8PCAxMikgLy8gKFNVUEMpIEZXVVAgc2hhbGwgYmUgbG93IGZvciBhdCBsZWFzdCA0MDk2IFNMQ0sgcGVyaW9kcw0KI2RlZmluZSAJQVQ5MUNfU1VQQ19XS1VQREJDXzMyNzY4X1NMQ0sgICAgICAgICAgICgweDUgPDwgMTIpIC8vIChTVVBDKSBGV1VQIHNoYWxsIGJlIGxvdyBmb3IgYXQgbGVhc3QgMzI3NjggU0xDSyBwZXJpb2RzDQovLyAtLS0tLS0tLSBTVVBDX1dVSVIgOiAoU1VQQyBPZmZzZXQ6IDB4MTApIFdha2UgVXAgSW5wdXRzIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19TVVBDX1dLVVBFTjAgICAgKDB4MSA8PCAgMCkgLy8gKFNVUEMpIFdha2UgVXAgSW5wdXQgRW5hYmxlIDANCiNkZWZpbmUgQVQ5MUNfU1VQQ19XS1VQRU4xICAgICgweDEgPDwgIDEpIC8vIChTVVBDKSBXYWtlIFVwIElucHV0IEVuYWJsZSAxDQojZGVmaW5lIEFUOTFDX1NVUENfV0tVUEVOMiAgICAoMHgxIDw8ICAyKSAvLyAoU1VQQykgV2FrZSBVcCBJbnB1dCBFbmFibGUgMg0KI2RlZmluZSBBVDkxQ19TVVBDX1dLVVBFTjMgICAgKDB4MSA8PCAgMykgLy8gKFNVUEMpIFdha2UgVXAgSW5wdXQgRW5hYmxlIDMNCiNkZWZpbmUgQVQ5MUNfU1VQQ19XS1VQRU40ICAgICgweDEgPDwgIDQpIC8vIChTVVBDKSBXYWtlIFVwIElucHV0IEVuYWJsZSA0DQojZGVmaW5lIEFUOTFDX1NVUENfV0tVUEVONSAgICAoMHgxIDw8ICA1KSAvLyAoU1VQQykgV2FrZSBVcCBJbnB1dCBFbmFibGUgNQ0KI2RlZmluZSBBVDkxQ19TVVBDX1dLVVBFTjYgICAgKDB4MSA8PCAgNikgLy8gKFNVUEMpIFdha2UgVXAgSW5wdXQgRW5hYmxlIDYNCiNkZWZpbmUgQVQ5MUNfU1VQQ19XS1VQRU43ICAgICgweDEgPDwgIDcpIC8vIChTVVBDKSBXYWtlIFVwIElucHV0IEVuYWJsZSA3DQojZGVmaW5lIEFUOTFDX1NVUENfV0tVUEVOOCAgICAoMHgxIDw8ICA4KSAvLyAoU1VQQykgV2FrZSBVcCBJbnB1dCBFbmFibGUgOA0KI2RlZmluZSBBVDkxQ19TVVBDX1dLVVBFTjkgICAgKDB4MSA8PCAgOSkgLy8gKFNVUEMpIFdha2UgVXAgSW5wdXQgRW5hYmxlIDkNCiNkZWZpbmUgQVQ5MUNfU1VQQ19XS1VQRU4xMCAgICgweDEgPDwgMTApIC8vIChTVVBDKSBXYWtlIFVwIElucHV0IEVuYWJsZSAxMA0KI2RlZmluZSBBVDkxQ19TVVBDX1dLVVBFTjExICAgKDB4MSA8PCAxMSkgLy8gKFNVUEMpIFdha2UgVXAgSW5wdXQgRW5hYmxlIDExDQojZGVmaW5lIEFUOTFDX1NVUENfV0tVUEVOMTIgICAoMHgxIDw8IDEyKSAvLyAoU1VQQykgV2FrZSBVcCBJbnB1dCBFbmFibGUgMTINCiNkZWZpbmUgQVQ5MUNfU1VQQ19XS1VQRU4xMyAgICgweDEgPDwgMTMpIC8vIChTVVBDKSBXYWtlIFVwIElucHV0IEVuYWJsZSAxMw0KI2RlZmluZSBBVDkxQ19TVVBDX1dLVVBFTjE0ICAgKDB4MSA8PCAxNCkgLy8gKFNVUEMpIFdha2UgVXAgSW5wdXQgRW5hYmxlIDE0DQojZGVmaW5lIEFUOTFDX1NVUENfV0tVUEVOMTUgICAoMHgxIDw8IDE1KSAvLyAoU1VQQykgV2FrZSBVcCBJbnB1dCBFbmFibGUgMTUNCiNkZWZpbmUgQVQ5MUNfU1VQQ19XS1VQVDAgICAgICgweDEgPDwgMTYpIC8vIChTVVBDKSBXYWtlIFVwIElucHV0IFRyYW5zaXRpb24gMA0KI2RlZmluZSBBVDkxQ19TVVBDX1dLVVBUMSAgICAgKDB4MSA8PCAxNykgLy8gKFNVUEMpIFdha2UgVXAgSW5wdXQgVHJhbnNpdGlvbiAxDQojZGVmaW5lIEFUOTFDX1NVUENfV0tVUFQyICAgICAoMHgxIDw8IDE4KSAvLyAoU1VQQykgV2FrZSBVcCBJbnB1dCBUcmFuc2l0aW9uIDINCiNkZWZpbmUgQVQ5MUNfU1VQQ19XS1VQVDMgICAgICgweDEgPDwgMTkpIC8vIChTVVBDKSBXYWtlIFVwIElucHV0IFRyYW5zaXRpb24gMw0KI2RlZmluZSBBVDkxQ19TVVBDX1dLVVBUNCAgICAgKDB4MSA8PCAyMCkgLy8gKFNVUEMpIFdha2UgVXAgSW5wdXQgVHJhbnNpdGlvbiA0DQojZGVmaW5lIEFUOTFDX1NVUENfV0tVUFQ1ICAgICAoMHgxIDw8IDIxKSAvLyAoU1VQQykgV2FrZSBVcCBJbnB1dCBUcmFuc2l0aW9uIDUNCiNkZWZpbmUgQVQ5MUNfU1VQQ19XS1VQVDYgICAgICgweDEgPDwgMjIpIC8vIChTVVBDKSBXYWtlIFVwIElucHV0IFRyYW5zaXRpb24gNg0KI2RlZmluZSBBVDkxQ19TVVBDX1dLVVBUNyAgICAgKDB4MSA8PCAyMykgLy8gKFNVUEMpIFdha2UgVXAgSW5wdXQgVHJhbnNpdGlvbiA3DQojZGVmaW5lIEFUOTFDX1NVUENfV0tVUFQ4ICAgICAoMHgxIDw8IDI0KSAvLyAoU1VQQykgV2FrZSBVcCBJbnB1dCBUcmFuc2l0aW9uIDgNCiNkZWZpbmUgQVQ5MUNfU1VQQ19XS1VQVDkgICAgICgweDEgPDwgMjUpIC8vIChTVVBDKSBXYWtlIFVwIElucHV0IFRyYW5zaXRpb24gOQ0KI2RlZmluZSBBVDkxQ19TVVBDX1dLVVBUMTAgICAgKDB4MSA8PCAyNikgLy8gKFNVUEMpIFdha2UgVXAgSW5wdXQgVHJhbnNpdGlvbiAxMA0KI2RlZmluZSBBVDkxQ19TVVBDX1dLVVBUMTEgICAgKDB4MSA8PCAyNykgLy8gKFNVUEMpIFdha2UgVXAgSW5wdXQgVHJhbnNpdGlvbiAxMQ0KI2RlZmluZSBBVDkxQ19TVVBDX1dLVVBUMTIgICAgKDB4MSA8PCAyOCkgLy8gKFNVUEMpIFdha2UgVXAgSW5wdXQgVHJhbnNpdGlvbiAxMg0KI2RlZmluZSBBVDkxQ19TVVBDX1dLVVBUMTMgICAgKDB4MSA8PCAyOSkgLy8gKFNVUEMpIFdha2UgVXAgSW5wdXQgVHJhbnNpdGlvbiAxMw0KI2RlZmluZSBBVDkxQ19TVVBDX1dLVVBUMTQgICAgKDB4MSA8PCAzMCkgLy8gKFNVUEMpIFdha2UgVXAgSW5wdXQgVHJhbnNpdGlvbiAxNA0KI2RlZmluZSBBVDkxQ19TVVBDX1dLVVBUMTUgICAgKDB4MSA8PCAzMSkgLy8gKFNVUEMpIFdha2UgVXAgSW5wdXQgVHJhbnNpdGlvbiAxNQ0KLy8gLS0tLS0tLS0gU1VQQ19TUiA6IChTVVBDIE9mZnNldDogMHgxNCkgU3RhdHVzIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19TVVBDX0ZXVVBTICAgICAgKDB4MSA8PCAgMCkgLy8gKFNVUEMpIEZvcmNlIFdha2UgVXAgU3RhdHVzDQojZGVmaW5lIEFUOTFDX1NVUENfV0tVUFMgICAgICAoMHgxIDw8ICAxKSAvLyAoU1VQQykgV2FrZSBVcCBTdGF0dXMNCiNkZWZpbmUgQVQ5MUNfU1VQQ19CT0RXUyAgICAgICgweDEgPDwgIDIpIC8vIChTVVBDKSBCT0QgRGV0ZWN0aW9uIFdha2UgVXAgU3RhdHVzDQojZGVmaW5lIEFUOTFDX1NVUENfVlJSU1RTICAgICAoMHgxIDw8ICAzKSAvLyAoU1VQQykgVm9sdGFnZSByZWd1bGF0aW9uIExvc3MgUmVzZXQgU3RhdHVzDQojZGVmaW5lIEFUOTFDX1NVUENfQk9EUlNUUyAgICAoMHgxIDw8ICA0KSAvLyAoU1VQQykgQk9EIGRldGVjdGlvbiBSZXNldCBTdGF0dXMNCiNkZWZpbmUgQVQ5MUNfU1VQQ19CT0RTICAgICAgICgweDEgPDwgIDUpIC8vIChTVVBDKSBCT0QgU3RhdHVzDQojZGVmaW5lIEFUOTFDX1NVUENfQlJPV05PVVQgICAoMHgxIDw8ICA2KSAvLyAoU1VQQykgQk9EIE91dHB1dCBTdGF0dXMNCiNkZWZpbmUgQVQ5MUNfU1VQQ19PU0NTRUwgICAgICgweDEgPDwgIDcpIC8vIChTVVBDKSAzMmtIeiBPc2NpbGxhdG9yIFNlbGVjdGlvbiBTdGF0dXMNCiNkZWZpbmUgQVQ5MUNfU1VQQ19MQ0RTICAgICAgICgweDEgPDwgIDgpIC8vIChTVVBDKSBMQ0QgU3RhdHVzDQojZGVmaW5lIEFUOTFDX1NVUENfR1BCUlMgICAgICAoMHgxIDw8ICA5KSAvLyAoU1VQQykgR2VuZXJhbCBQdXJwb3NlIEJhY2stdXAgcmVnaXN0ZXJzIFN0YXR1cw0KI2RlZmluZSBBVDkxQ19TVVBDX1JUUyAgICAgICAgKDB4MSA8PCAxMCkgLy8gKFNVUEMpIENsb2NrIFN0YXR1cw0KI2RlZmluZSBBVDkxQ19TVVBDX0ZMQVNIUyAgICAgKDB4MSA8PCAxMSkgLy8gKFNVUEMpIEZMQVNIIE1lbW9yeSBTdGF0dXMNCiNkZWZpbmUgQVQ5MUNfU1VQQ19GV1VQSVMgICAgICgweDEgPDwgMTIpIC8vIChTVVBDKSBXS1VQIElucHV0IFN0YXR1cw0KI2RlZmluZSBBVDkxQ19TVVBDX1dLVVBJUzAgICAgKDB4MSA8PCAxNikgLy8gKFNVUEMpIFdLVVAgSW5wdXQgMCBTdGF0dXMNCiNkZWZpbmUgQVQ5MUNfU1VQQ19XS1VQSVMxICAgICgweDEgPDwgMTcpIC8vIChTVVBDKSBXS1VQIElucHV0IDEgU3RhdHVzDQojZGVmaW5lIEFUOTFDX1NVUENfV0tVUElTMiAgICAoMHgxIDw8IDE4KSAvLyAoU1VQQykgV0tVUCBJbnB1dCAyIFN0YXR1cw0KI2RlZmluZSBBVDkxQ19TVVBDX1dLVVBJUzMgICAgKDB4MSA8PCAxOSkgLy8gKFNVUEMpIFdLVVAgSW5wdXQgMyBTdGF0dXMNCiNkZWZpbmUgQVQ5MUNfU1VQQ19XS1VQSVM0ICAgICgweDEgPDwgMjApIC8vIChTVVBDKSBXS1VQIElucHV0IDQgU3RhdHVzDQojZGVmaW5lIEFUOTFDX1NVUENfV0tVUElTNSAgICAoMHgxIDw8IDIxKSAvLyAoU1VQQykgV0tVUCBJbnB1dCA1IFN0YXR1cw0KI2RlZmluZSBBVDkxQ19TVVBDX1dLVVBJUzYgICAgKDB4MSA8PCAyMikgLy8gKFNVUEMpIFdLVVAgSW5wdXQgNiBTdGF0dXMNCiNkZWZpbmUgQVQ5MUNfU1VQQ19XS1VQSVM3ICAgICgweDEgPDwgMjMpIC8vIChTVVBDKSBXS1VQIElucHV0IDcgU3RhdHVzDQojZGVmaW5lIEFUOTFDX1NVUENfV0tVUElTOCAgICAoMHgxIDw8IDI0KSAvLyAoU1VQQykgV0tVUCBJbnB1dCA4IFN0YXR1cw0KI2RlZmluZSBBVDkxQ19TVVBDX1dLVVBJUzkgICAgKDB4MSA8PCAyNSkgLy8gKFNVUEMpIFdLVVAgSW5wdXQgOSBTdGF0dXMNCiNkZWZpbmUgQVQ5MUNfU1VQQ19XS1VQSVMxMCAgICgweDEgPDwgMjYpIC8vIChTVVBDKSBXS1VQIElucHV0IDEwIFN0YXR1cw0KI2RlZmluZSBBVDkxQ19TVVBDX1dLVVBJUzExICAgKDB4MSA8PCAyNykgLy8gKFNVUEMpIFdLVVAgSW5wdXQgMTEgU3RhdHVzDQojZGVmaW5lIEFUOTFDX1NVUENfV0tVUElTMTIgICAoMHgxIDw8IDI4KSAvLyAoU1VQQykgV0tVUCBJbnB1dCAxMiBTdGF0dXMNCiNkZWZpbmUgQVQ5MUNfU1VQQ19XS1VQSVMxMyAgICgweDEgPDwgMjkpIC8vIChTVVBDKSBXS1VQIElucHV0IDEzIFN0YXR1cw0KI2RlZmluZSBBVDkxQ19TVVBDX1dLVVBJUzE0ICAgKDB4MSA8PCAzMCkgLy8gKFNVUEMpIFdLVVAgSW5wdXQgMTQgU3RhdHVzDQojZGVmaW5lIEFUOTFDX1NVUENfV0tVUElTMTUgICAoMHgxIDw8IDMxKSAvLyAoU1VQQykgV0tVUCBJbnB1dCAxNSBTdGF0dXMNCi8vIC0tLS0tLS0tIFNVUENfRldVVFIgOiAoU1VQQyBPZmZzZXQ6IDB4MTgpIEZsYXNoIFdha2UgVXAgVGltZXIgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1NVUENfRldVVCAgICAgICAoMHgzRkYgPDwgIDApIC8vIChTVVBDKSBGbGFzaCBXYWtlIFVwIFRpbWVyDQoNCi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQovLyAgICAgICAgICAgICAgU09GVFdBUkUgQVBJIERFRklOSVRJT04gIEZPUiBSZWFsIFRpbWUgVGltZXIgQ29udHJvbGxlciBJbnRlcmZhY2UNCi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQojaWZuZGVmIF9fQVNTRU1CTFlfXw0KdHlwZWRlZiBzdHJ1Y3QgX0FUOTFTX1JUVEMgew0KCUFUOTFfUkVHCSBSVFRDX1JUTVI7IAkvLyBSZWFsLXRpbWUgTW9kZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSVFRDX1JUQVI7IAkvLyBSZWFsLXRpbWUgQWxhcm0gUmVnaXN0ZXINCglBVDkxX1JFRwkgUlRUQ19SVFZSOyAJLy8gUmVhbC10aW1lIFZhbHVlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJUVENfUlRTUjsgCS8vIFJlYWwtdGltZSBTdGF0dXMgUmVnaXN0ZXINCn0gQVQ5MVNfUlRUQywgKkFUOTFQU19SVFRDOw0KI2Vsc2UNCiNkZWZpbmUgUlRUQ19SVE1SICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMDApIC8vIChSVFRDX1JUTVIpIFJlYWwtdGltZSBNb2RlIFJlZ2lzdGVyDQojZGVmaW5lIFJUVENfUlRBUiAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDA0KSAvLyAoUlRUQ19SVEFSKSBSZWFsLXRpbWUgQWxhcm0gUmVnaXN0ZXINCiNkZWZpbmUgUlRUQ19SVFZSICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMDgpIC8vIChSVFRDX1JUVlIpIFJlYWwtdGltZSBWYWx1ZSBSZWdpc3Rlcg0KI2RlZmluZSBSVFRDX1JUU1IgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAwQykgLy8gKFJUVENfUlRTUikgUmVhbC10aW1lIFN0YXR1cyBSZWdpc3Rlcg0KDQojZW5kaWYNCi8vIC0tLS0tLS0tIFJUVENfUlRNUiA6IChSVFRDIE9mZnNldDogMHgwKSBSZWFsLXRpbWUgTW9kZSBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfUlRUQ19SVFBSRVMgICAgICgweEZGRkYgPDwgIDApIC8vIChSVFRDKSBSZWFsLXRpbWUgVGltZXIgUHJlc2NhbGVyIFZhbHVlDQojZGVmaW5lIEFUOTFDX1JUVENfQUxNSUVOICAgICAoMHgxIDw8IDE2KSAvLyAoUlRUQykgQWxhcm0gSW50ZXJydXB0IEVuYWJsZQ0KI2RlZmluZSBBVDkxQ19SVFRDX1JUVElOQ0lFTiAgKDB4MSA8PCAxNykgLy8gKFJUVEMpIFJlYWwgVGltZSBUaW1lciBJbmNyZW1lbnQgSW50ZXJydXB0IEVuYWJsZQ0KI2RlZmluZSBBVDkxQ19SVFRDX1JUVFJTVCAgICAgKDB4MSA8PCAxOCkgLy8gKFJUVEMpIFJlYWwgVGltZSBUaW1lciBSZXN0YXJ0DQovLyAtLS0tLS0tLSBSVFRDX1JUQVIgOiAoUlRUQyBPZmZzZXQ6IDB4NCkgUmVhbC10aW1lIEFsYXJtIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19SVFRDX0FMTVYgICAgICAgKDB4MCA8PCAgMCkgLy8gKFJUVEMpIEFsYXJtIFZhbHVlDQovLyAtLS0tLS0tLSBSVFRDX1JUVlIgOiAoUlRUQyBPZmZzZXQ6IDB4OCkgQ3VycmVudCBSZWFsLXRpbWUgVmFsdWUgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1JUVENfQ1JUViAgICAgICAoMHgwIDw8ICAwKSAvLyAoUlRUQykgQ3VycmVudCBSZWFsLXRpbWUgVmFsdWUNCi8vIC0tLS0tLS0tIFJUVENfUlRTUiA6IChSVFRDIE9mZnNldDogMHhjKSBSZWFsLXRpbWUgU3RhdHVzIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19SVFRDX0FMTVMgICAgICAgKDB4MSA8PCAgMCkgLy8gKFJUVEMpIFJlYWwtdGltZSBBbGFybSBTdGF0dXMNCiNkZWZpbmUgQVQ5MUNfUlRUQ19SVFRJTkMgICAgICgweDEgPDwgIDEpIC8vIChSVFRDKSBSZWFsLXRpbWUgVGltZXIgSW5jcmVtZW50DQoNCi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQovLyAgICAgICAgICAgICAgU09GVFdBUkUgQVBJIERFRklOSVRJT04gIEZPUiBXYXRjaGRvZyBUaW1lciBDb250cm9sbGVyIEludGVyZmFjZQ0KLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCiNpZm5kZWYgX19BU1NFTUJMWV9fDQp0eXBlZGVmIHN0cnVjdCBfQVQ5MVNfV0RUQyB7DQoJQVQ5MV9SRUcJIFdEVENfV0RDUjsgCS8vIFdhdGNoZG9nIENvbnRyb2wgUmVnaXN0ZXINCglBVDkxX1JFRwkgV0RUQ19XRE1SOyAJLy8gV2F0Y2hkb2cgTW9kZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBXRFRDX1dEU1I7IAkvLyBXYXRjaGRvZyBTdGF0dXMgUmVnaXN0ZXINCn0gQVQ5MVNfV0RUQywgKkFUOTFQU19XRFRDOw0KI2Vsc2UNCiNkZWZpbmUgV0RUQ19XRENSICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMDApIC8vIChXRFRDX1dEQ1IpIFdhdGNoZG9nIENvbnRyb2wgUmVnaXN0ZXINCiNkZWZpbmUgV0RUQ19XRE1SICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMDQpIC8vIChXRFRDX1dETVIpIFdhdGNoZG9nIE1vZGUgUmVnaXN0ZXINCiNkZWZpbmUgV0RUQ19XRFNSICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMDgpIC8vIChXRFRDX1dEU1IpIFdhdGNoZG9nIFN0YXR1cyBSZWdpc3Rlcg0KDQojZW5kaWYNCi8vIC0tLS0tLS0tIFdEVENfV0RDUiA6IChXRFRDIE9mZnNldDogMHgwKSBQZXJpb2RpYyBJbnRlcnZhbCBJbWFnZSBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfV0RUQ19XRFJTVFQgICAgICgweDEgPDwgIDApIC8vIChXRFRDKSBXYXRjaGRvZyBSZXN0YXJ0DQojZGVmaW5lIEFUOTFDX1dEVENfS0VZICAgICAgICAoMHhGRiA8PCAyNCkgLy8gKFdEVEMpIFdhdGNoZG9nIEtFWSBQYXNzd29yZA0KLy8gLS0tLS0tLS0gV0RUQ19XRE1SIDogKFdEVEMgT2Zmc2V0OiAweDQpIFdhdGNoZG9nIE1vZGUgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1dEVENfV0RWICAgICAgICAoMHhGRkYgPDwgIDApIC8vIChXRFRDKSBXYXRjaGRvZyBUaW1lciBSZXN0YXJ0DQojZGVmaW5lIEFUOTFDX1dEVENfV0RGSUVOICAgICAoMHgxIDw8IDEyKSAvLyAoV0RUQykgV2F0Y2hkb2cgRmF1bHQgSW50ZXJydXB0IEVuYWJsZQ0KI2RlZmluZSBBVDkxQ19XRFRDX1dEUlNURU4gICAgKDB4MSA8PCAxMykgLy8gKFdEVEMpIFdhdGNoZG9nIFJlc2V0IEVuYWJsZQ0KI2RlZmluZSBBVDkxQ19XRFRDX1dEUlBST0MgICAgKDB4MSA8PCAxNCkgLy8gKFdEVEMpIFdhdGNoZG9nIFRpbWVyIFJlc3RhcnQNCiNkZWZpbmUgQVQ5MUNfV0RUQ19XRERJUyAgICAgICgweDEgPDwgMTUpIC8vIChXRFRDKSBXYXRjaGRvZyBEaXNhYmxlDQojZGVmaW5lIEFUOTFDX1dEVENfV0REICAgICAgICAoMHhGRkYgPDwgMTYpIC8vIChXRFRDKSBXYXRjaGRvZyBEZWx0YSBWYWx1ZQ0KI2RlZmluZSBBVDkxQ19XRFRDX1dEREJHSExUICAgKDB4MSA8PCAyOCkgLy8gKFdEVEMpIFdhdGNoZG9nIERlYnVnIEhhbHQNCiNkZWZpbmUgQVQ5MUNfV0RUQ19XRElETEVITFQgICgweDEgPDwgMjkpIC8vIChXRFRDKSBXYXRjaGRvZyBJZGxlIEhhbHQNCi8vIC0tLS0tLS0tIFdEVENfV0RTUiA6IChXRFRDIE9mZnNldDogMHg4KSBXYXRjaGRvZyBTdGF0dXMgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1dEVENfV0RVTkYgICAgICAoMHgxIDw8ICAwKSAvLyAoV0RUQykgV2F0Y2hkb2cgVW5kZXJmbG93DQojZGVmaW5lIEFUOTFDX1dEVENfV0RFUlIgICAgICAoMHgxIDw8ICAxKSAvLyAoV0RUQykgV2F0Y2hkb2cgRXJyb3INCg0KLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCi8vICAgICAgICAgICAgICBTT0ZUV0FSRSBBUEkgREVGSU5JVElPTiAgRk9SIFJlYWwtdGltZSBDbG9jayBBbGFybSBhbmQgUGFyYWxsZWwgTG9hZCBJbnRlcmZhY2UNCi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQojaWZuZGVmIF9fQVNTRU1CTFlfXw0KdHlwZWRlZiBzdHJ1Y3QgX0FUOTFTX1JUQyB7DQoJQVQ5MV9SRUcJIFJUQ19DUjsgCS8vIENvbnRyb2wgUmVnaXN0ZXINCglBVDkxX1JFRwkgUlRDX01SOyAJLy8gTW9kZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSVENfVElNUjsgCS8vIFRpbWUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUlRDX0NBTFI7IAkvLyBDYWxlbmRhciBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSVENfVElNQUxSOyAJLy8gVGltZSBBbGFybSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSVENfQ0FMQUxSOyAJLy8gQ2FsZW5kYXIgQWxhcm0gUmVnaXN0ZXINCglBVDkxX1JFRwkgUlRDX1NSOyAJLy8gU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJUQ19TQ0NSOyAJLy8gU3RhdHVzIENsZWFyIENvbW1hbmQgUmVnaXN0ZXINCglBVDkxX1JFRwkgUlRDX0lFUjsgCS8vIEludGVycnVwdCBFbmFibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUlRDX0lEUjsgCS8vIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJUQ19JTVI7IAkvLyBJbnRlcnJ1cHQgTWFzayBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSVENfVkVSOyAJLy8gVmFsaWQgRW50cnkgUmVnaXN0ZXINCn0gQVQ5MVNfUlRDLCAqQVQ5MVBTX1JUQzsNCiNlbHNlDQojZGVmaW5lIFJUQ19DUiAgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDAwKSAvLyAoUlRDX0NSKSBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIFJUQ19NUiAgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDA0KSAvLyAoUlRDX01SKSBNb2RlIFJlZ2lzdGVyDQojZGVmaW5lIFJUQ19USU1SICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDA4KSAvLyAoUlRDX1RJTVIpIFRpbWUgUmVnaXN0ZXINCiNkZWZpbmUgUlRDX0NBTFIgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMEMpIC8vIChSVENfQ0FMUikgQ2FsZW5kYXIgUmVnaXN0ZXINCiNkZWZpbmUgUlRDX1RJTUFMUiAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMTApIC8vIChSVENfVElNQUxSKSBUaW1lIEFsYXJtIFJlZ2lzdGVyDQojZGVmaW5lIFJUQ19DQUxBTFIgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDE0KSAvLyAoUlRDX0NBTEFMUikgQ2FsZW5kYXIgQWxhcm0gUmVnaXN0ZXINCiNkZWZpbmUgUlRDX1NSICAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMTgpIC8vIChSVENfU1IpIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBSVENfU0NDUiAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAxQykgLy8gKFJUQ19TQ0NSKSBTdGF0dXMgQ2xlYXIgQ29tbWFuZCBSZWdpc3Rlcg0KI2RlZmluZSBSVENfSUVSICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAyMCkgLy8gKFJUQ19JRVIpIEludGVycnVwdCBFbmFibGUgUmVnaXN0ZXINCiNkZWZpbmUgUlRDX0lEUiAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMjQpIC8vIChSVENfSURSKSBJbnRlcnJ1cHQgRGlzYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBSVENfSU1SICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAyOCkgLy8gKFJUQ19JTVIpIEludGVycnVwdCBNYXNrIFJlZ2lzdGVyDQojZGVmaW5lIFJUQ19WRVIgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDJDKSAvLyAoUlRDX1ZFUikgVmFsaWQgRW50cnkgUmVnaXN0ZXINCg0KI2VuZGlmDQovLyAtLS0tLS0tLSBSVENfQ1IgOiAoUlRDIE9mZnNldDogMHgwKSBSVEMgQ29udHJvbCBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfUlRDX1VQRFRJTSAgICAgICgweDEgPDwgIDApIC8vIChSVEMpIFVwZGF0ZSBSZXF1ZXN0IFRpbWUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUlRDX1VQRENBTCAgICAgICgweDEgPDwgIDEpIC8vIChSVEMpIFVwZGF0ZSBSZXF1ZXN0IENhbGVuZGFyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1JUQ19USU1FVlNFTCAgICAoMHgzIDw8ICA4KSAvLyAoUlRDKSBUaW1lIEV2ZW50IFNlbGVjdGlvbg0KI2RlZmluZSAJQVQ5MUNfUlRDX1RJTUVWU0VMX01JTlVURSAgICAgICAgICAgICAgICgweDAgPDwgIDgpIC8vIChSVEMpIE1pbnV0ZSBjaGFuZ2UuDQojZGVmaW5lIAlBVDkxQ19SVENfVElNRVZTRUxfSE9VUiAgICAgICAgICAgICAgICAgKDB4MSA8PCAgOCkgLy8gKFJUQykgSG91ciBjaGFuZ2UuDQojZGVmaW5lIAlBVDkxQ19SVENfVElNRVZTRUxfREFZMjQgICAgICAgICAgICAgICAgKDB4MiA8PCAgOCkgLy8gKFJUQykgRXZlcnkgZGF5IGF0IG1pZG5pZ2h0Lg0KI2RlZmluZSAJQVQ5MUNfUlRDX1RJTUVWU0VMX0RBWTEyICAgICAgICAgICAgICAgICgweDMgPDwgIDgpIC8vIChSVEMpIEV2ZXJ5IGRheSBhdCBub29uLg0KI2RlZmluZSBBVDkxQ19SVENfQ0FMRVZTRUwgICAgKDB4MyA8PCAxNikgLy8gKFJUQykgQ2FsZW5kYXIgRXZlbnQgU2VsZWN0aW9uDQojZGVmaW5lIAlBVDkxQ19SVENfQ0FMRVZTRUxfV0VFSyAgICAgICAgICAgICAgICAgKDB4MCA8PCAxNikgLy8gKFJUQykgV2VlayBjaGFuZ2UgKGV2ZXJ5IE1vbmRheSBhdCB0aW1lIDAwOjAwOjAwKS4NCiNkZWZpbmUgCUFUOTFDX1JUQ19DQUxFVlNFTF9NT05USCAgICAgICAgICAgICAgICAoMHgxIDw8IDE2KSAvLyAoUlRDKSBNb250aCBjaGFuZ2UgKGV2ZXJ5IDAxIG9mIGVhY2ggbW9udGggYXQgdGltZSAwMDowMDowMCkuDQojZGVmaW5lIAlBVDkxQ19SVENfQ0FMRVZTRUxfWUVBUiAgICAgICAgICAgICAgICAgKDB4MiA8PCAxNikgLy8gKFJUQykgWWVhciBjaGFuZ2UgKGV2ZXJ5IEphbnVhcnkgMSBhdCB0aW1lIDAwOjAwOjAwKS4NCi8vIC0tLS0tLS0tIFJUQ19NUiA6IChSVEMgT2Zmc2V0OiAweDQpIFJUQyBNb2RlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19SVENfSFJNT0QgICAgICAgKDB4MSA8PCAgMCkgLy8gKFJUQykgMTItMjQgaG91ciBNb2RlDQovLyAtLS0tLS0tLSBSVENfVElNUiA6IChSVEMgT2Zmc2V0OiAweDgpIFJUQyBUaW1lIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19SVENfU0VDICAgICAgICAgKDB4N0YgPDwgIDApIC8vIChSVEMpIEN1cnJlbnQgU2Vjb25kDQojZGVmaW5lIEFUOTFDX1JUQ19NSU4gICAgICAgICAoMHg3RiA8PCAgOCkgLy8gKFJUQykgQ3VycmVudCBNaW51dGUNCiNkZWZpbmUgQVQ5MUNfUlRDX0hPVVIgICAgICAgICgweDNGIDw8IDE2KSAvLyAoUlRDKSBDdXJyZW50IEhvdXINCiNkZWZpbmUgQVQ5MUNfUlRDX0FNUE0gICAgICAgICgweDEgPDwgMjIpIC8vIChSVEMpIEFudGUgTWVyaWRpZW0sIFBvc3QgTWVyaWRpZW0gSW5kaWNhdG9yDQovLyAtLS0tLS0tLSBSVENfQ0FMUiA6IChSVEMgT2Zmc2V0OiAweGMpIFJUQyBDYWxlbmRhciBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfUlRDX0NFTlQgICAgICAgICgweDNGIDw8ICAwKSAvLyAoUlRDKSBDdXJyZW50IENlbnR1cnkNCiNkZWZpbmUgQVQ5MUNfUlRDX1lFQVIgICAgICAgICgweEZGIDw8ICA4KSAvLyAoUlRDKSBDdXJyZW50IFllYXINCiNkZWZpbmUgQVQ5MUNfUlRDX01PTlRIICAgICAgICgweDFGIDw8IDE2KSAvLyAoUlRDKSBDdXJyZW50IE1vbnRoDQojZGVmaW5lIEFUOTFDX1JUQ19EQVkgICAgICAgICAoMHg3IDw8IDIxKSAvLyAoUlRDKSBDdXJyZW50IERheQ0KI2RlZmluZSBBVDkxQ19SVENfREFURSAgICAgICAgKDB4M0YgPDwgMjQpIC8vIChSVEMpIEN1cnJlbnQgRGF0ZQ0KLy8gLS0tLS0tLS0gUlRDX1RJTUFMUiA6IChSVEMgT2Zmc2V0OiAweDEwKSBSVEMgVGltZSBBbGFybSBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfUlRDX1NFQ0VOICAgICAgICgweDEgPDwgIDcpIC8vIChSVEMpIFNlY29uZCBBbGFybSBFbmFibGUNCiNkZWZpbmUgQVQ5MUNfUlRDX01JTkVOICAgICAgICgweDEgPDwgMTUpIC8vIChSVEMpIE1pbnV0ZSBBbGFybQ0KI2RlZmluZSBBVDkxQ19SVENfSE9VUkVOICAgICAgKDB4MSA8PCAyMykgLy8gKFJUQykgQ3VycmVudCBIb3VyDQovLyAtLS0tLS0tLSBSVENfQ0FMQUxSIDogKFJUQyBPZmZzZXQ6IDB4MTQpIFJUQyBDYWxlbmRhciBBbGFybSBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfUlRDX01PTlRIRU4gICAgICgweDEgPDwgMjMpIC8vIChSVEMpIE1vbnRoIEFsYXJtIEVuYWJsZQ0KI2RlZmluZSBBVDkxQ19SVENfREFURUVOICAgICAgKDB4MSA8PCAzMSkgLy8gKFJUQykgRGF0ZSBBbGFybSBFbmFibGUNCi8vIC0tLS0tLS0tIFJUQ19TUiA6IChSVEMgT2Zmc2V0OiAweDE4KSBSVEMgU3RhdHVzIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19SVENfQUNLVVBEICAgICAgKDB4MSA8PCAgMCkgLy8gKFJUQykgQWNrbm93bGVkZ2UgZm9yIFVwZGF0ZQ0KI2RlZmluZSBBVDkxQ19SVENfQUxBUk0gICAgICAgKDB4MSA8PCAgMSkgLy8gKFJUQykgQWxhcm0gRmxhZw0KI2RlZmluZSBBVDkxQ19SVENfU0VDRVYgICAgICAgKDB4MSA8PCAgMikgLy8gKFJUQykgU2Vjb25kIEV2ZW50DQojZGVmaW5lIEFUOTFDX1JUQ19USU1FViAgICAgICAoMHgxIDw8ICAzKSAvLyAoUlRDKSBUaW1lIEV2ZW50DQojZGVmaW5lIEFUOTFDX1JUQ19DQUxFViAgICAgICAoMHgxIDw8ICA0KSAvLyAoUlRDKSBDYWxlbmRhciBldmVudA0KLy8gLS0tLS0tLS0gUlRDX1NDQ1IgOiAoUlRDIE9mZnNldDogMHgxYykgUlRDIFN0YXR1cyBDbGVhciBDb21tYW5kIFJlZ2lzdGVyIC0tLS0tLS0tIA0KLy8gLS0tLS0tLS0gUlRDX0lFUiA6IChSVEMgT2Zmc2V0OiAweDIwKSBSVEMgSW50ZXJydXB0IEVuYWJsZSBSZWdpc3RlciAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIFJUQ19JRFIgOiAoUlRDIE9mZnNldDogMHgyNCkgUlRDIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KLy8gLS0tLS0tLS0gUlRDX0lNUiA6IChSVEMgT2Zmc2V0OiAweDI4KSBSVEMgSW50ZXJydXB0IE1hc2sgUmVnaXN0ZXIgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBSVENfVkVSIDogKFJUQyBPZmZzZXQ6IDB4MmMpIFJUQyBWYWxpZCBFbnRyeSBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfUlRDX05WVElNICAgICAgICgweDEgPDwgIDApIC8vIChSVEMpIE5vbiB2YWxpZCBUaW1lDQojZGVmaW5lIEFUOTFDX1JUQ19OVkNBTCAgICAgICAoMHgxIDw8ICAxKSAvLyAoUlRDKSBOb24gdmFsaWQgQ2FsZW5kYXINCiNkZWZpbmUgQVQ5MUNfUlRDX05WVElNQUxSICAgICgweDEgPDwgIDIpIC8vIChSVEMpIE5vbiB2YWxpZCB0aW1lIEFsYXJtDQojZGVmaW5lIEFUOTFDX1JUQ19OVkNBTEFMUiAgICAoMHgxIDw8ICAzKSAvLyAoUlRDKSBOb252YWxpZCBDYWxlbmRhciBBbGFybQ0KDQovLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KLy8gICAgICAgICAgICAgIFNPRlRXQVJFIEFQSSBERUZJTklUSU9OICBGT1IgQW5hbG9nIHRvIERpZ2l0YWwgQ29udmVydG9yDQovLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KI2lmbmRlZiBfX0FTU0VNQkxZX18NCnR5cGVkZWYgc3RydWN0IF9BVDkxU19BREMgew0KCUFUOTFfUkVHCSBBRENfQ1I7IAkvLyBBREMgQ29udHJvbCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBBRENfTVI7IAkvLyBBREMgTW9kZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDBbMl07IAkvLyANCglBVDkxX1JFRwkgQURDX0NIRVI7IAkvLyBBREMgQ2hhbm5lbCBFbmFibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgQURDX0NIRFI7IAkvLyBBREMgQ2hhbm5lbCBEaXNhYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIEFEQ19DSFNSOyAJLy8gQURDIENoYW5uZWwgU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIEFEQ19TUjsgCS8vIEFEQyBTdGF0dXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgQURDX0xDRFI7IAkvLyBBREMgTGFzdCBDb252ZXJ0ZWQgRGF0YSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBBRENfSUVSOyAJLy8gQURDIEludGVycnVwdCBFbmFibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgQURDX0lEUjsgCS8vIEFEQyBJbnRlcnJ1cHQgRGlzYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBBRENfSU1SOyAJLy8gQURDIEludGVycnVwdCBNYXNrIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIEFEQ19DRFIwOyAJLy8gQURDIENoYW5uZWwgRGF0YSBSZWdpc3RlciAwDQoJQVQ5MV9SRUcJIEFEQ19DRFIxOyAJLy8gQURDIENoYW5uZWwgRGF0YSBSZWdpc3RlciAxDQoJQVQ5MV9SRUcJIEFEQ19DRFIyOyAJLy8gQURDIENoYW5uZWwgRGF0YSBSZWdpc3RlciAyDQoJQVQ5MV9SRUcJIEFEQ19DRFIzOyAJLy8gQURDIENoYW5uZWwgRGF0YSBSZWdpc3RlciAzDQoJQVQ5MV9SRUcJIEFEQ19DRFI0OyAJLy8gQURDIENoYW5uZWwgRGF0YSBSZWdpc3RlciA0DQoJQVQ5MV9SRUcJIEFEQ19DRFI1OyAJLy8gQURDIENoYW5uZWwgRGF0YSBSZWdpc3RlciA1DQoJQVQ5MV9SRUcJIEFEQ19DRFI2OyAJLy8gQURDIENoYW5uZWwgRGF0YSBSZWdpc3RlciA2DQoJQVQ5MV9SRUcJIEFEQ19DRFI3OyAJLy8gQURDIENoYW5uZWwgRGF0YSBSZWdpc3RlciA3DQoJQVQ5MV9SRUcJIFJlc2VydmVkMVs1XTsgCS8vIA0KCUFUOTFfUkVHCSBBRENfQUNSOyAJLy8gQW5hbG9nIENvbnRyb2wgUmVnaXN0ZXINCglBVDkxX1JFRwkgQURDX0VNUjsgCS8vIEV4dGVuZGVkIE1vZGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQyWzMyXTsgCS8vIA0KCUFUOTFfUkVHCSBBRENfQUREUlNJWkU7IAkvLyBBREMgQUREUlNJWkUgUkVHSVNURVIgDQoJQVQ5MV9SRUcJIEFEQ19JUE5BTUUxOyAJLy8gQURDIElQTkFNRTEgUkVHSVNURVIgDQoJQVQ5MV9SRUcJIEFEQ19JUE5BTUUyOyAJLy8gQURDIElQTkFNRTIgUkVHSVNURVIgDQoJQVQ5MV9SRUcJIEFEQ19GRUFUVVJFUzsgCS8vIEFEQyBGRUFUVVJFUyBSRUdJU1RFUiANCglBVDkxX1JFRwkgQURDX1ZFUjsgCS8vIEFEQyBWRVJTSU9OIFJFR0lTVEVSDQoJQVQ5MV9SRUcJIEFEQ19SUFI7IAkvLyBSZWNlaXZlIFBvaW50ZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgQURDX1JDUjsgCS8vIFJlY2VpdmUgQ291bnRlciBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBBRENfVFBSOyAJLy8gVHJhbnNtaXQgUG9pbnRlciBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBBRENfVENSOyAJLy8gVHJhbnNtaXQgQ291bnRlciBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBBRENfUk5QUjsgCS8vIFJlY2VpdmUgTmV4dCBQb2ludGVyIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIEFEQ19STkNSOyAJLy8gUmVjZWl2ZSBOZXh0IENvdW50ZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgQURDX1ROUFI7IAkvLyBUcmFuc21pdCBOZXh0IFBvaW50ZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgQURDX1ROQ1I7IAkvLyBUcmFuc21pdCBOZXh0IENvdW50ZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgQURDX1BUQ1I7IAkvLyBQREMgVHJhbnNmZXIgQ29udHJvbCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBBRENfUFRTUjsgCS8vIFBEQyBUcmFuc2ZlciBTdGF0dXMgUmVnaXN0ZXINCn0gQVQ5MVNfQURDLCAqQVQ5MVBTX0FEQzsNCiNlbHNlDQojZGVmaW5lIEFEQ19DUiAgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDAwKSAvLyAoQURDX0NSKSBBREMgQ29udHJvbCBSZWdpc3Rlcg0KI2RlZmluZSBBRENfTVIgICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAwNCkgLy8gKEFEQ19NUikgQURDIE1vZGUgUmVnaXN0ZXINCiNkZWZpbmUgQURDX0NIRVIgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMTApIC8vIChBRENfQ0hFUikgQURDIENoYW5uZWwgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFEQ19DSERSICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDE0KSAvLyAoQURDX0NIRFIpIEFEQyBDaGFubmVsIERpc2FibGUgUmVnaXN0ZXINCiNkZWZpbmUgQURDX0NIU1IgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMTgpIC8vIChBRENfQ0hTUikgQURDIENoYW5uZWwgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFEQ19TUiAgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDFDKSAvLyAoQURDX1NSKSBBREMgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFEQ19MQ0RSICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDIwKSAvLyAoQURDX0xDRFIpIEFEQyBMYXN0IENvbnZlcnRlZCBEYXRhIFJlZ2lzdGVyDQojZGVmaW5lIEFEQ19JRVIgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDI0KSAvLyAoQURDX0lFUikgQURDIEludGVycnVwdCBFbmFibGUgUmVnaXN0ZXINCiNkZWZpbmUgQURDX0lEUiAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMjgpIC8vIChBRENfSURSKSBBREMgSW50ZXJydXB0IERpc2FibGUgUmVnaXN0ZXINCiNkZWZpbmUgQURDX0lNUiAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMkMpIC8vIChBRENfSU1SKSBBREMgSW50ZXJydXB0IE1hc2sgUmVnaXN0ZXINCiNkZWZpbmUgQURDX0NEUjAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMzApIC8vIChBRENfQ0RSMCkgQURDIENoYW5uZWwgRGF0YSBSZWdpc3RlciAwDQojZGVmaW5lIEFEQ19DRFIxICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDM0KSAvLyAoQURDX0NEUjEpIEFEQyBDaGFubmVsIERhdGEgUmVnaXN0ZXIgMQ0KI2RlZmluZSBBRENfQ0RSMiAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAzOCkgLy8gKEFEQ19DRFIyKSBBREMgQ2hhbm5lbCBEYXRhIFJlZ2lzdGVyIDINCiNkZWZpbmUgQURDX0NEUjMgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwM0MpIC8vIChBRENfQ0RSMykgQURDIENoYW5uZWwgRGF0YSBSZWdpc3RlciAzDQojZGVmaW5lIEFEQ19DRFI0ICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDQwKSAvLyAoQURDX0NEUjQpIEFEQyBDaGFubmVsIERhdGEgUmVnaXN0ZXIgNA0KI2RlZmluZSBBRENfQ0RSNSAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDA0NCkgLy8gKEFEQ19DRFI1KSBBREMgQ2hhbm5lbCBEYXRhIFJlZ2lzdGVyIDUNCiNkZWZpbmUgQURDX0NEUjYgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNDgpIC8vIChBRENfQ0RSNikgQURDIENoYW5uZWwgRGF0YSBSZWdpc3RlciA2DQojZGVmaW5lIEFEQ19DRFI3ICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDRDKSAvLyAoQURDX0NEUjcpIEFEQyBDaGFubmVsIERhdGEgUmVnaXN0ZXIgNw0KI2RlZmluZSBBRENfQUNSICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDA2NCkgLy8gKEFEQ19BQ1IpIEFuYWxvZyBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIEFEQ19FTVIgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDY4KSAvLyAoQURDX0VNUikgRXh0ZW5kZWQgTW9kZSBSZWdpc3Rlcg0KI2RlZmluZSBBRENfQUREUlNJWkUgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDBFQykgLy8gKEFEQ19BRERSU0laRSkgQURDIEFERFJTSVpFIFJFR0lTVEVSIA0KI2RlZmluZSBBRENfSVBOQU1FMSAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDBGMCkgLy8gKEFEQ19JUE5BTUUxKSBBREMgSVBOQU1FMSBSRUdJU1RFUiANCiNkZWZpbmUgQURDX0lQTkFNRTIgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwRjQpIC8vIChBRENfSVBOQU1FMikgQURDIElQTkFNRTIgUkVHSVNURVIgDQojZGVmaW5lIEFEQ19GRUFUVVJFUyAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMEY4KSAvLyAoQURDX0ZFQVRVUkVTKSBBREMgRkVBVFVSRVMgUkVHSVNURVIgDQojZGVmaW5lIEFEQ19WRVIgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMEZDKSAvLyAoQURDX1ZFUikgQURDIFZFUlNJT04gUkVHSVNURVINCg0KI2VuZGlmDQovLyAtLS0tLS0tLSBBRENfQ1IgOiAoQURDIE9mZnNldDogMHgwKSBBREMgQ29udHJvbCBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfQURDX1NXUlNUICAgICAgICgweDEgPDwgIDApIC8vIChBREMpIFNvZnR3YXJlIFJlc2V0DQojZGVmaW5lIEFUOTFDX0FEQ19TVEFSVCAgICAgICAoMHgxIDw8ICAxKSAvLyAoQURDKSBTdGFydCBDb252ZXJzaW9uDQovLyAtLS0tLS0tLSBBRENfTVIgOiAoQURDIE9mZnNldDogMHg0KSBBREMgTW9kZSBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfQURDX1RSR0VOICAgICAgICgweDEgPDwgIDApIC8vIChBREMpIFRyaWdnZXIgRW5hYmxlDQojZGVmaW5lIAlBVDkxQ19BRENfVFJHRU5fRElTICAgICAgICAgICAgICAgICAgKDB4MCkgLy8gKEFEQykgSHJhZHdhcmUgdHJpZ2dlcnMgYXJlIGRpc2FibGVkLiBTdGFydGluZyBhIGNvbnZlcnNpb24gaXMgb25seSBwb3NzaWJsZSBieSBzb2Z0d2FyZQ0KI2RlZmluZSAJQVQ5MUNfQURDX1RSR0VOX0VOICAgICAgICAgICAgICAgICAgICgweDEpIC8vIChBREMpIEhhcmR3YXJlIHRyaWdnZXIgc2VsZWN0ZWQgYnkgVFJHU0VMIGZpZWxkIGlzIGVuYWJsZWQuDQojZGVmaW5lIEFUOTFDX0FEQ19UUkdTRUwgICAgICAoMHg3IDw8ICAxKSAvLyAoQURDKSBUcmlnZ2VyIFNlbGVjdGlvbg0KI2RlZmluZSAJQVQ5MUNfQURDX1RSR1NFTF9FWFQgICAgICAgICAgICAgICAgICAoMHgwIDw8ICAxKSAvLyAoQURDKSBTZWxlY3RlZCBUUkdTRUwgPSBFeHRlcm5hbCBUcmlnZ2VyDQojZGVmaW5lIAlBVDkxQ19BRENfVFJHU0VMX1RJT0EwICAgICAgICAgICAgICAgICgweDEgPDwgIDEpIC8vIChBREMpIFNlbGVjdGVkIFRSR1NFTCA9IFRJQU8wDQojZGVmaW5lIAlBVDkxQ19BRENfVFJHU0VMX1RJT0ExICAgICAgICAgICAgICAgICgweDIgPDwgIDEpIC8vIChBREMpIFNlbGVjdGVkIFRSR1NFTCA9IFRJQU8xDQojZGVmaW5lIAlBVDkxQ19BRENfVFJHU0VMX1RJT0EyICAgICAgICAgICAgICAgICgweDMgPDwgIDEpIC8vIChBREMpIFNlbGVjdGVkIFRSR1NFTCA9IFRJQU8yDQojZGVmaW5lIAlBVDkxQ19BRENfVFJHU0VMX1BXTTBfVFJJRyAgICAgICAgICAgICgweDQgPDwgIDEpIC8vIChBREMpIFNlbGVjdGVkIFRSR1NFTCA9IFBXTSB0cmlnZ2VyDQojZGVmaW5lIAlBVDkxQ19BRENfVFJHU0VMX1BXTTFfVFJJRyAgICAgICAgICAgICgweDUgPDwgIDEpIC8vIChBREMpIFNlbGVjdGVkIFRSR1NFTCA9IFBXTSBUcmlnZ2VyDQojZGVmaW5lIAlBVDkxQ19BRENfVFJHU0VMX1JFU0VSVkVEICAgICAgICAgICAgICgweDYgPDwgIDEpIC8vIChBREMpIFNlbGVjdGVkIFRSR1NFTCA9IFJlc2VydmVkDQojZGVmaW5lIEFUOTFDX0FEQ19MT1dSRVMgICAgICAoMHgxIDw8ICA0KSAvLyAoQURDKSBSZXNvbHV0aW9uLg0KI2RlZmluZSAJQVQ5MUNfQURDX0xPV1JFU18xMF9CSVQgICAgICAgICAgICAgICAoMHgwIDw8ICA0KSAvLyAoQURDKSAxMC1iaXQgcmVzb2x1dGlvbg0KI2RlZmluZSAJQVQ5MUNfQURDX0xPV1JFU184X0JJVCAgICAgICAgICAgICAgICAoMHgxIDw8ICA0KSAvLyAoQURDKSA4LWJpdCByZXNvbHV0aW9uDQojZGVmaW5lIEFUOTFDX0FEQ19TTEVFUCAgICAgICAoMHgxIDw8ICA1KSAvLyAoQURDKSBTbGVlcCBNb2RlDQojZGVmaW5lIAlBVDkxQ19BRENfU0xFRVBfTk9STUFMX01PREUgICAgICAgICAgKDB4MCA8PCAgNSkgLy8gKEFEQykgTm9ybWFsIE1vZGUNCiNkZWZpbmUgCUFUOTFDX0FEQ19TTEVFUF9NT0RFICAgICAgICAgICAgICAgICAoMHgxIDw8ICA1KSAvLyAoQURDKSBTbGVlcCBNb2RlDQojZGVmaW5lIEFUOTFDX0FEQ19QUkVTQ0FMICAgICAoMHgzRiA8PCAgOCkgLy8gKEFEQykgUHJlc2NhbGVyIHJhdGUgc2VsZWN0aW9uDQojZGVmaW5lIEFUOTFDX0FEQ19TVEFSVFVQICAgICAoMHgxRiA8PCAxNikgLy8gKEFEQykgU3RhcnR1cCBUaW1lDQojZGVmaW5lIEFUOTFDX0FEQ19TSFRJTSAgICAgICAoMHhGIDw8IDI0KSAvLyAoQURDKSBTYW1wbGUgJiBIb2xkIFRpbWUNCi8vIC0tLS0tLS0tIAlBRENfQ0hFUiA6IChBREMgT2Zmc2V0OiAweDEwKSBBREMgQ2hhbm5lbCBFbmFibGUgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX0FEQ19DSDAgICAgICAgICAoMHgxIDw8ICAwKSAvLyAoQURDKSBDaGFubmVsIDANCiNkZWZpbmUgQVQ5MUNfQURDX0NIMSAgICAgICAgICgweDEgPDwgIDEpIC8vIChBREMpIENoYW5uZWwgMQ0KI2RlZmluZSBBVDkxQ19BRENfQ0gyICAgICAgICAgKDB4MSA8PCAgMikgLy8gKEFEQykgQ2hhbm5lbCAyDQojZGVmaW5lIEFUOTFDX0FEQ19DSDMgICAgICAgICAoMHgxIDw8ICAzKSAvLyAoQURDKSBDaGFubmVsIDMNCiNkZWZpbmUgQVQ5MUNfQURDX0NINCAgICAgICAgICgweDEgPDwgIDQpIC8vIChBREMpIENoYW5uZWwgNA0KI2RlZmluZSBBVDkxQ19BRENfQ0g1ICAgICAgICAgKDB4MSA8PCAgNSkgLy8gKEFEQykgQ2hhbm5lbCA1DQojZGVmaW5lIEFUOTFDX0FEQ19DSDYgICAgICAgICAoMHgxIDw8ICA2KSAvLyAoQURDKSBDaGFubmVsIDYNCiNkZWZpbmUgQVQ5MUNfQURDX0NINyAgICAgICAgICgweDEgPDwgIDcpIC8vIChBREMpIENoYW5uZWwgNw0KLy8gLS0tLS0tLS0gCUFEQ19DSERSIDogKEFEQyBPZmZzZXQ6IDB4MTQpIEFEQyBDaGFubmVsIERpc2FibGUgUmVnaXN0ZXIgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSAJQURDX0NIU1IgOiAoQURDIE9mZnNldDogMHgxOCkgQURDIENoYW5uZWwgU3RhdHVzIFJlZ2lzdGVyIC0tLS0tLS0tIA0KLy8gLS0tLS0tLS0gQURDX1NSIDogKEFEQyBPZmZzZXQ6IDB4MWMpIEFEQyBTdGF0dXMgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX0FEQ19FT0MwICAgICAgICAoMHgxIDw8ICAwKSAvLyAoQURDKSBFbmQgb2YgQ29udmVyc2lvbg0KI2RlZmluZSBBVDkxQ19BRENfRU9DMSAgICAgICAgKDB4MSA8PCAgMSkgLy8gKEFEQykgRW5kIG9mIENvbnZlcnNpb24NCiNkZWZpbmUgQVQ5MUNfQURDX0VPQzIgICAgICAgICgweDEgPDwgIDIpIC8vIChBREMpIEVuZCBvZiBDb252ZXJzaW9uDQojZGVmaW5lIEFUOTFDX0FEQ19FT0MzICAgICAgICAoMHgxIDw8ICAzKSAvLyAoQURDKSBFbmQgb2YgQ29udmVyc2lvbg0KI2RlZmluZSBBVDkxQ19BRENfRU9DNCAgICAgICAgKDB4MSA8PCAgNCkgLy8gKEFEQykgRW5kIG9mIENvbnZlcnNpb24NCiNkZWZpbmUgQVQ5MUNfQURDX0VPQzUgICAgICAgICgweDEgPDwgIDUpIC8vIChBREMpIEVuZCBvZiBDb252ZXJzaW9uDQojZGVmaW5lIEFUOTFDX0FEQ19FT0M2ICAgICAgICAoMHgxIDw8ICA2KSAvLyAoQURDKSBFbmQgb2YgQ29udmVyc2lvbg0KI2RlZmluZSBBVDkxQ19BRENfRU9DNyAgICAgICAgKDB4MSA8PCAgNykgLy8gKEFEQykgRW5kIG9mIENvbnZlcnNpb24NCiNkZWZpbmUgQVQ5MUNfQURDX09WUkUwICAgICAgICgweDEgPDwgIDgpIC8vIChBREMpIE92ZXJydW4gRXJyb3INCiNkZWZpbmUgQVQ5MUNfQURDX09WUkUxICAgICAgICgweDEgPDwgIDkpIC8vIChBREMpIE92ZXJydW4gRXJyb3INCiNkZWZpbmUgQVQ5MUNfQURDX09WUkUyICAgICAgICgweDEgPDwgMTApIC8vIChBREMpIE92ZXJydW4gRXJyb3INCiNkZWZpbmUgQVQ5MUNfQURDX09WUkUzICAgICAgICgweDEgPDwgMTEpIC8vIChBREMpIE92ZXJydW4gRXJyb3INCiNkZWZpbmUgQVQ5MUNfQURDX09WUkU0ICAgICAgICgweDEgPDwgMTIpIC8vIChBREMpIE92ZXJydW4gRXJyb3INCiNkZWZpbmUgQVQ5MUNfQURDX09WUkU1ICAgICAgICgweDEgPDwgMTMpIC8vIChBREMpIE92ZXJydW4gRXJyb3INCiNkZWZpbmUgQVQ5MUNfQURDX09WUkU2ICAgICAgICgweDEgPDwgMTQpIC8vIChBREMpIE92ZXJydW4gRXJyb3INCiNkZWZpbmUgQVQ5MUNfQURDX09WUkU3ICAgICAgICgweDEgPDwgMTUpIC8vIChBREMpIE92ZXJydW4gRXJyb3INCiNkZWZpbmUgQVQ5MUNfQURDX0RSRFkgICAgICAgICgweDEgPDwgMTYpIC8vIChBREMpIERhdGEgUmVhZHkNCiNkZWZpbmUgQVQ5MUNfQURDX0dPVlJFICAgICAgICgweDEgPDwgMTcpIC8vIChBREMpIEdlbmVyYWwgT3ZlcnJ1bg0KI2RlZmluZSBBVDkxQ19BRENfRU5EUlggICAgICAgKDB4MSA8PCAxOCkgLy8gKEFEQykgRW5kIG9mIFJlY2VpdmVyIFRyYW5zZmVyDQojZGVmaW5lIEFUOTFDX0FEQ19SWEJVRkYgICAgICAoMHgxIDw8IDE5KSAvLyAoQURDKSBSWEJVRkYgSW50ZXJydXB0DQovLyAtLS0tLS0tLSBBRENfTENEUiA6IChBREMgT2Zmc2V0OiAweDIwKSBBREMgTGFzdCBDb252ZXJ0ZWQgRGF0YSBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfQURDX0xEQVRBICAgICAgICgweDNGRiA8PCAgMCkgLy8gKEFEQykgTGFzdCBEYXRhIENvbnZlcnRlZA0KLy8gLS0tLS0tLS0gQURDX0lFUiA6IChBREMgT2Zmc2V0OiAweDI0KSBBREMgSW50ZXJydXB0IEVuYWJsZSBSZWdpc3RlciAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIEFEQ19JRFIgOiAoQURDIE9mZnNldDogMHgyOCkgQURDIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KLy8gLS0tLS0tLS0gQURDX0lNUiA6IChBREMgT2Zmc2V0OiAweDJjKSBBREMgSW50ZXJydXB0IE1hc2sgUmVnaXN0ZXIgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBBRENfQ0RSMCA6IChBREMgT2Zmc2V0OiAweDMwKSBBREMgQ2hhbm5lbCBEYXRhIFJlZ2lzdGVyIDAgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX0FEQ19EQVRBICAgICAgICAoMHgzRkYgPDwgIDApIC8vIChBREMpIENvbnZlcnRlZCBEYXRhDQovLyAtLS0tLS0tLSBBRENfQ0RSMSA6IChBREMgT2Zmc2V0OiAweDM0KSBBREMgQ2hhbm5lbCBEYXRhIFJlZ2lzdGVyIDEgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBBRENfQ0RSMiA6IChBREMgT2Zmc2V0OiAweDM4KSBBREMgQ2hhbm5lbCBEYXRhIFJlZ2lzdGVyIDIgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBBRENfQ0RSMyA6IChBREMgT2Zmc2V0OiAweDNjKSBBREMgQ2hhbm5lbCBEYXRhIFJlZ2lzdGVyIDMgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBBRENfQ0RSNCA6IChBREMgT2Zmc2V0OiAweDQwKSBBREMgQ2hhbm5lbCBEYXRhIFJlZ2lzdGVyIDQgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBBRENfQ0RSNSA6IChBREMgT2Zmc2V0OiAweDQ0KSBBREMgQ2hhbm5lbCBEYXRhIFJlZ2lzdGVyIDUgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBBRENfQ0RSNiA6IChBREMgT2Zmc2V0OiAweDQ4KSBBREMgQ2hhbm5lbCBEYXRhIFJlZ2lzdGVyIDYgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBBRENfQ0RSNyA6IChBREMgT2Zmc2V0OiAweDRjKSBBREMgQ2hhbm5lbCBEYXRhIFJlZ2lzdGVyIDcgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBBRENfQUNSIDogKEFEQyBPZmZzZXQ6IDB4NjQpIEFEQyBBbmFsb2cgQ29udHJvbGVyIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19BRENfR0FJTiAgICAgICAgKDB4MyA8PCAgMCkgLy8gKEFEQykgSW5wdXQgR2Fpbg0KI2RlZmluZSBBVDkxQ19BRENfSUJDVEwgICAgICAgKDB4MyA8PCAgNikgLy8gKEFEQykgQmlhcyBDdXJyZW50IENvbnRyb2wNCiNkZWZpbmUgCUFUOTFDX0FEQ19JQkNUTF8wMCAgICAgICAgICAgICAgICAgICAoMHgwIDw8ICA2KSAvLyAoQURDKSB0eXAgLSAyMCUNCiNkZWZpbmUgCUFUOTFDX0FEQ19JQkNUTF8wMSAgICAgICAgICAgICAgICAgICAoMHgxIDw8ICA2KSAvLyAoQURDKSB0eXANCiNkZWZpbmUgCUFUOTFDX0FEQ19JQkNUTF8xMCAgICAgICAgICAgICAgICAgICAoMHgyIDw8ICA2KSAvLyAoQURDKSB0eXAgKyAyMCUNCiNkZWZpbmUgCUFUOTFDX0FEQ19JQkNUTF8xMSAgICAgICAgICAgICAgICAgICAoMHgzIDw8ICA2KSAvLyAoQURDKSB0eXAgKyA0MCUNCiNkZWZpbmUgQVQ5MUNfQURDX0RJRkYgICAgICAgICgweDEgPDwgMTYpIC8vIChBREMpIERpZmZlcmVudGlhbCBNb2RlDQojZGVmaW5lIEFUOTFDX0FEQ19PRkZTRVQgICAgICAoMHgxIDw8IDE3KSAvLyAoQURDKSBJbnB1dCBPRkZTRVQNCi8vIC0tLS0tLS0tIEFEQ19FTVIgOiAoQURDIE9mZnNldDogMHg2OCkgQURDIEV4dGVuZGVkIE1vZGUgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX09GRk1PREVTICAgICAgICAoMHgxIDw8ICAwKSAvLyAoQURDKSBPZmYgTW9kZSBpZg0KI2RlZmluZSBBVDkxQ19PRkZfTU9ERV9TVEFSVFVQX1RJTUUgKDB4MSA8PCAxNikgLy8gKEFEQykgU3RhcnR1cCBUaW1lDQovLyAtLS0tLS0tLSBBRENfVkVSIDogKEFEQyBPZmZzZXQ6IDB4ZmMpIEFEQyBWRVIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX0FEQ19WRVIgICAgICAgICAoMHhGIDw8ICAwKSAvLyAoQURDKSBBREMgVkVSDQoNCi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQovLyAgICAgICAgICAgICAgU09GVFdBUkUgQVBJIERFRklOSVRJT04gIEZPUiBUaW1lciBDb3VudGVyIENoYW5uZWwgSW50ZXJmYWNlDQovLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KI2lmbmRlZiBfX0FTU0VNQkxZX18NCnR5cGVkZWYgc3RydWN0IF9BVDkxU19UQyB7DQoJQVQ5MV9SRUcJIFRDX0NDUjsgCS8vIENoYW5uZWwgQ29udHJvbCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBUQ19DTVI7IAkvLyBDaGFubmVsIE1vZGUgUmVnaXN0ZXIgKENhcHR1cmUgTW9kZSAvIFdhdmVmb3JtIE1vZGUpDQoJQVQ5MV9SRUcJIFJlc2VydmVkMFsyXTsgCS8vIA0KCUFUOTFfUkVHCSBUQ19DVjsgCS8vIENvdW50ZXIgVmFsdWUNCglBVDkxX1JFRwkgVENfUkE7IAkvLyBSZWdpc3RlciBBDQoJQVQ5MV9SRUcJIFRDX1JCOyAJLy8gUmVnaXN0ZXIgQg0KCUFUOTFfUkVHCSBUQ19SQzsgCS8vIFJlZ2lzdGVyIEMNCglBVDkxX1JFRwkgVENfU1I7IAkvLyBTdGF0dXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgVENfSUVSOyAJLy8gSW50ZXJydXB0IEVuYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBUQ19JRFI7IAkvLyBJbnRlcnJ1cHQgRGlzYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBUQ19JTVI7IAkvLyBJbnRlcnJ1cHQgTWFzayBSZWdpc3Rlcg0KfSBBVDkxU19UQywgKkFUOTFQU19UQzsNCiNlbHNlDQojZGVmaW5lIFRDX0NDUiAgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDAwKSAvLyAoVENfQ0NSKSBDaGFubmVsIENvbnRyb2wgUmVnaXN0ZXINCiNkZWZpbmUgVENfQ01SICAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMDQpIC8vIChUQ19DTVIpIENoYW5uZWwgTW9kZSBSZWdpc3RlciAoQ2FwdHVyZSBNb2RlIC8gV2F2ZWZvcm0gTW9kZSkNCiNkZWZpbmUgVENfQ1YgICAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMTApIC8vIChUQ19DVikgQ291bnRlciBWYWx1ZQ0KI2RlZmluZSBUQ19SQSAgICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAxNCkgLy8gKFRDX1JBKSBSZWdpc3RlciBBDQojZGVmaW5lIFRDX1JCICAgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDE4KSAvLyAoVENfUkIpIFJlZ2lzdGVyIEINCiNkZWZpbmUgVENfUkMgICAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMUMpIC8vIChUQ19SQykgUmVnaXN0ZXIgQw0KI2RlZmluZSBUQ19TUiAgICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAyMCkgLy8gKFRDX1NSKSBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgVENfSUVSICAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMjQpIC8vIChUQ19JRVIpIEludGVycnVwdCBFbmFibGUgUmVnaXN0ZXINCiNkZWZpbmUgVENfSURSICAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMjgpIC8vIChUQ19JRFIpIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyDQojZGVmaW5lIFRDX0lNUiAgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDJDKSAvLyAoVENfSU1SKSBJbnRlcnJ1cHQgTWFzayBSZWdpc3Rlcg0KDQojZW5kaWYNCi8vIC0tLS0tLS0tIFRDX0NDUiA6IChUQyBPZmZzZXQ6IDB4MCkgVEMgQ2hhbm5lbCBDb250cm9sIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19UQ19DTEtFTiAgICAgICAgKDB4MSA8PCAgMCkgLy8gKFRDKSBDb3VudGVyIENsb2NrIEVuYWJsZSBDb21tYW5kDQojZGVmaW5lIEFUOTFDX1RDX0NMS0RJUyAgICAgICAoMHgxIDw8ICAxKSAvLyAoVEMpIENvdW50ZXIgQ2xvY2sgRGlzYWJsZSBDb21tYW5kDQojZGVmaW5lIEFUOTFDX1RDX1NXVFJHICAgICAgICAoMHgxIDw8ICAyKSAvLyAoVEMpIFNvZnR3YXJlIFRyaWdnZXIgQ29tbWFuZA0KLy8gLS0tLS0tLS0gVENfQ01SIDogKFRDIE9mZnNldDogMHg0KSBUQyBDaGFubmVsIE1vZGUgUmVnaXN0ZXI6IENhcHR1cmUgTW9kZSAvIFdhdmVmb3JtIE1vZGUgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1RDX0NMS1MgICAgICAgICAoMHg3IDw8ICAwKSAvLyAoVEMpIENsb2NrIFNlbGVjdGlvbg0KI2RlZmluZSAJQVQ5MUNfVENfQ0xLU19USU1FUl9ESVYxX0NMT0NLICAgICAoMHgwKSAvLyAoVEMpIENsb2NrIHNlbGVjdGVkOiBUSU1FUl9ESVYxX0NMT0NLDQojZGVmaW5lIAlBVDkxQ19UQ19DTEtTX1RJTUVSX0RJVjJfQ0xPQ0sgICAgICgweDEpIC8vIChUQykgQ2xvY2sgc2VsZWN0ZWQ6IFRJTUVSX0RJVjJfQ0xPQ0sNCiNkZWZpbmUgCUFUOTFDX1RDX0NMS1NfVElNRVJfRElWM19DTE9DSyAgICAgKDB4MikgLy8gKFRDKSBDbG9jayBzZWxlY3RlZDogVElNRVJfRElWM19DTE9DSw0KI2RlZmluZSAJQVQ5MUNfVENfQ0xLU19USU1FUl9ESVY0X0NMT0NLICAgICAoMHgzKSAvLyAoVEMpIENsb2NrIHNlbGVjdGVkOiBUSU1FUl9ESVY0X0NMT0NLDQojZGVmaW5lIAlBVDkxQ19UQ19DTEtTX1RJTUVSX0RJVjVfQ0xPQ0sgICAgICgweDQpIC8vIChUQykgQ2xvY2sgc2VsZWN0ZWQ6IFRJTUVSX0RJVjVfQ0xPQ0sNCiNkZWZpbmUgCUFUOTFDX1RDX0NMS1NfWEMwICAgICAgICAgICAgICAgICAgKDB4NSkgLy8gKFRDKSBDbG9jayBzZWxlY3RlZDogWEMwDQojZGVmaW5lIAlBVDkxQ19UQ19DTEtTX1hDMSAgICAgICAgICAgICAgICAgICgweDYpIC8vIChUQykgQ2xvY2sgc2VsZWN0ZWQ6IFhDMQ0KI2RlZmluZSAJQVQ5MUNfVENfQ0xLU19YQzIgICAgICAgICAgICAgICAgICAoMHg3KSAvLyAoVEMpIENsb2NrIHNlbGVjdGVkOiBYQzINCiNkZWZpbmUgQVQ5MUNfVENfQ0xLSSAgICAgICAgICgweDEgPDwgIDMpIC8vIChUQykgQ2xvY2sgSW52ZXJ0DQojZGVmaW5lIEFUOTFDX1RDX0JVUlNUICAgICAgICAoMHgzIDw8ICA0KSAvLyAoVEMpIEJ1cnN0IFNpZ25hbCBTZWxlY3Rpb24NCiNkZWZpbmUgCUFUOTFDX1RDX0JVUlNUX05PTkUgICAgICAgICAgICAgICAgICgweDAgPDwgIDQpIC8vIChUQykgVGhlIGNsb2NrIGlzIG5vdCBnYXRlZCBieSBhbiBleHRlcm5hbCBzaWduYWwNCiNkZWZpbmUgCUFUOTFDX1RDX0JVUlNUX1hDMCAgICAgICAgICAgICAgICAgICgweDEgPDwgIDQpIC8vIChUQykgWEMwIGlzIEFORGVkIHdpdGggdGhlIHNlbGVjdGVkIGNsb2NrDQojZGVmaW5lIAlBVDkxQ19UQ19CVVJTVF9YQzEgICAgICAgICAgICAgICAgICAoMHgyIDw8ICA0KSAvLyAoVEMpIFhDMSBpcyBBTkRlZCB3aXRoIHRoZSBzZWxlY3RlZCBjbG9jaw0KI2RlZmluZSAJQVQ5MUNfVENfQlVSU1RfWEMyICAgICAgICAgICAgICAgICAgKDB4MyA8PCAgNCkgLy8gKFRDKSBYQzIgaXMgQU5EZWQgd2l0aCB0aGUgc2VsZWN0ZWQgY2xvY2sNCiNkZWZpbmUgQVQ5MUNfVENfQ1BDU1RPUCAgICAgICgweDEgPDwgIDYpIC8vIChUQykgQ291bnRlciBDbG9jayBTdG9wcGVkIHdpdGggUkMgQ29tcGFyZQ0KI2RlZmluZSBBVDkxQ19UQ19MREJTVE9QICAgICAgKDB4MSA8PCAgNikgLy8gKFRDKSBDb3VudGVyIENsb2NrIFN0b3BwZWQgd2l0aCBSQiBMb2FkaW5nDQojZGVmaW5lIEFUOTFDX1RDX0NQQ0RJUyAgICAgICAoMHgxIDw8ICA3KSAvLyAoVEMpIENvdW50ZXIgQ2xvY2sgRGlzYWJsZSB3aXRoIFJDIENvbXBhcmUNCiNkZWZpbmUgQVQ5MUNfVENfTERCRElTICAgICAgICgweDEgPDwgIDcpIC8vIChUQykgQ291bnRlciBDbG9jayBEaXNhYmxlZCB3aXRoIFJCIExvYWRpbmcNCiNkZWZpbmUgQVQ5MUNfVENfRVRSR0VERyAgICAgICgweDMgPDwgIDgpIC8vIChUQykgRXh0ZXJuYWwgVHJpZ2dlciBFZGdlIFNlbGVjdGlvbg0KI2RlZmluZSAJQVQ5MUNfVENfRVRSR0VER19OT05FICAgICAgICAgICAgICAgICAoMHgwIDw8ICA4KSAvLyAoVEMpIEVkZ2U6IE5vbmUNCiNkZWZpbmUgCUFUOTFDX1RDX0VUUkdFREdfUklTSU5HICAgICAgICAgICAgICAgKDB4MSA8PCAgOCkgLy8gKFRDKSBFZGdlOiByaXNpbmcgZWRnZQ0KI2RlZmluZSAJQVQ5MUNfVENfRVRSR0VER19GQUxMSU5HICAgICAgICAgICAgICAoMHgyIDw8ICA4KSAvLyAoVEMpIEVkZ2U6IGZhbGxpbmcgZWRnZQ0KI2RlZmluZSAJQVQ5MUNfVENfRVRSR0VER19CT1RIICAgICAgICAgICAgICAgICAoMHgzIDw8ICA4KSAvLyAoVEMpIEVkZ2U6IGVhY2ggZWRnZQ0KI2RlZmluZSBBVDkxQ19UQ19FRVZURURHICAgICAgKDB4MyA8PCAgOCkgLy8gKFRDKSBFeHRlcm5hbCBFdmVudCBFZGdlIFNlbGVjdGlvbg0KI2RlZmluZSAJQVQ5MUNfVENfRUVWVEVER19OT05FICAgICAgICAgICAgICAgICAoMHgwIDw8ICA4KSAvLyAoVEMpIEVkZ2U6IE5vbmUNCiNkZWZpbmUgCUFUOTFDX1RDX0VFVlRFREdfUklTSU5HICAgICAgICAgICAgICAgKDB4MSA8PCAgOCkgLy8gKFRDKSBFZGdlOiByaXNpbmcgZWRnZQ0KI2RlZmluZSAJQVQ5MUNfVENfRUVWVEVER19GQUxMSU5HICAgICAgICAgICAgICAoMHgyIDw8ICA4KSAvLyAoVEMpIEVkZ2U6IGZhbGxpbmcgZWRnZQ0KI2RlZmluZSAJQVQ5MUNfVENfRUVWVEVER19CT1RIICAgICAgICAgICAgICAgICAoMHgzIDw8ICA4KSAvLyAoVEMpIEVkZ2U6IGVhY2ggZWRnZQ0KI2RlZmluZSBBVDkxQ19UQ19FRVZUICAgICAgICAgKDB4MyA8PCAxMCkgLy8gKFRDKSBFeHRlcm5hbCBFdmVudCAgU2VsZWN0aW9uDQojZGVmaW5lIAlBVDkxQ19UQ19FRVZUX1RJT0IgICAgICAgICAgICAgICAgICgweDAgPDwgMTApIC8vIChUQykgU2lnbmFsIHNlbGVjdGVkIGFzIGV4dGVybmFsIGV2ZW50OiBUSU9CIFRJT0IgZGlyZWN0aW9uOiBpbnB1dA0KI2RlZmluZSAJQVQ5MUNfVENfRUVWVF9YQzAgICAgICAgICAgICAgICAgICAoMHgxIDw8IDEwKSAvLyAoVEMpIFNpZ25hbCBzZWxlY3RlZCBhcyBleHRlcm5hbCBldmVudDogWEMwIFRJT0IgZGlyZWN0aW9uOiBvdXRwdXQNCiNkZWZpbmUgCUFUOTFDX1RDX0VFVlRfWEMxICAgICAgICAgICAgICAgICAgKDB4MiA8PCAxMCkgLy8gKFRDKSBTaWduYWwgc2VsZWN0ZWQgYXMgZXh0ZXJuYWwgZXZlbnQ6IFhDMSBUSU9CIGRpcmVjdGlvbjogb3V0cHV0DQojZGVmaW5lIAlBVDkxQ19UQ19FRVZUX1hDMiAgICAgICAgICAgICAgICAgICgweDMgPDwgMTApIC8vIChUQykgU2lnbmFsIHNlbGVjdGVkIGFzIGV4dGVybmFsIGV2ZW50OiBYQzIgVElPQiBkaXJlY3Rpb246IG91dHB1dA0KI2RlZmluZSBBVDkxQ19UQ19BQkVUUkcgICAgICAgKDB4MSA8PCAxMCkgLy8gKFRDKSBUSU9BIG9yIFRJT0IgRXh0ZXJuYWwgVHJpZ2dlciBTZWxlY3Rpb24NCiNkZWZpbmUgQVQ5MUNfVENfRU5FVFJHICAgICAgICgweDEgPDwgMTIpIC8vIChUQykgRXh0ZXJuYWwgRXZlbnQgVHJpZ2dlciBlbmFibGUNCiNkZWZpbmUgQVQ5MUNfVENfV0FWRVNFTCAgICAgICgweDMgPDwgMTMpIC8vIChUQykgV2F2ZWZvcm0gIFNlbGVjdGlvbg0KI2RlZmluZSAJQVQ5MUNfVENfV0FWRVNFTF9VUCAgICAgICAgICAgICAgICAgICAoMHgwIDw8IDEzKSAvLyAoVEMpIFVQIG1vZGUgd2l0aG91dCBhdG9tYXRpYyB0cmlnZ2VyIG9uIFJDIENvbXBhcmUNCiNkZWZpbmUgCUFUOTFDX1RDX1dBVkVTRUxfVVBET1dOICAgICAgICAgICAgICAgKDB4MSA8PCAxMykgLy8gKFRDKSBVUERPV04gbW9kZSB3aXRob3V0IGF1dG9tYXRpYyB0cmlnZ2VyIG9uIFJDIENvbXBhcmUNCiNkZWZpbmUgCUFUOTFDX1RDX1dBVkVTRUxfVVBfQVVUTyAgICAgICAgICAgICAgKDB4MiA8PCAxMykgLy8gKFRDKSBVUCBtb2RlIHdpdGggYXV0b21hdGljIHRyaWdnZXIgb24gUkMgQ29tcGFyZQ0KI2RlZmluZSAJQVQ5MUNfVENfV0FWRVNFTF9VUERPV05fQVVUTyAgICAgICAgICAoMHgzIDw8IDEzKSAvLyAoVEMpIFVQRE9XTiBtb2RlIHdpdGggYXV0b21hdGljIHRyaWdnZXIgb24gUkMgQ29tcGFyZQ0KI2RlZmluZSBBVDkxQ19UQ19DUENUUkcgICAgICAgKDB4MSA8PCAxNCkgLy8gKFRDKSBSQyBDb21wYXJlIFRyaWdnZXIgRW5hYmxlDQojZGVmaW5lIEFUOTFDX1RDX1dBVkUgICAgICAgICAoMHgxIDw8IDE1KSAvLyAoVEMpIA0KI2RlZmluZSBBVDkxQ19UQ19BQ1BBICAgICAgICAgKDB4MyA8PCAxNikgLy8gKFRDKSBSQSBDb21wYXJlIEVmZmVjdCBvbiBUSU9BDQojZGVmaW5lIAlBVDkxQ19UQ19BQ1BBX05PTkUgICAgICAgICAgICAgICAgICgweDAgPDwgMTYpIC8vIChUQykgRWZmZWN0OiBub25lDQojZGVmaW5lIAlBVDkxQ19UQ19BQ1BBX1NFVCAgICAgICAgICAgICAgICAgICgweDEgPDwgMTYpIC8vIChUQykgRWZmZWN0OiBzZXQNCiNkZWZpbmUgCUFUOTFDX1RDX0FDUEFfQ0xFQVIgICAgICAgICAgICAgICAgKDB4MiA8PCAxNikgLy8gKFRDKSBFZmZlY3Q6IGNsZWFyDQojZGVmaW5lIAlBVDkxQ19UQ19BQ1BBX1RPR0dMRSAgICAgICAgICAgICAgICgweDMgPDwgMTYpIC8vIChUQykgRWZmZWN0OiB0b2dnbGUNCiNkZWZpbmUgQVQ5MUNfVENfTERSQSAgICAgICAgICgweDMgPDwgMTYpIC8vIChUQykgUkEgTG9hZGluZyBTZWxlY3Rpb24NCiNkZWZpbmUgCUFUOTFDX1RDX0xEUkFfTk9ORSAgICAgICAgICAgICAgICAgKDB4MCA8PCAxNikgLy8gKFRDKSBFZGdlOiBOb25lDQojZGVmaW5lIAlBVDkxQ19UQ19MRFJBX1JJU0lORyAgICAgICAgICAgICAgICgweDEgPDwgMTYpIC8vIChUQykgRWRnZTogcmlzaW5nIGVkZ2Ugb2YgVElPQQ0KI2RlZmluZSAJQVQ5MUNfVENfTERSQV9GQUxMSU5HICAgICAgICAgICAgICAoMHgyIDw8IDE2KSAvLyAoVEMpIEVkZ2U6IGZhbGxpbmcgZWRnZSBvZiBUSU9BDQojZGVmaW5lIAlBVDkxQ19UQ19MRFJBX0JPVEggICAgICAgICAgICAgICAgICgweDMgPDwgMTYpIC8vIChUQykgRWRnZTogZWFjaCBlZGdlIG9mIFRJT0ENCiNkZWZpbmUgQVQ5MUNfVENfQUNQQyAgICAgICAgICgweDMgPDwgMTgpIC8vIChUQykgUkMgQ29tcGFyZSBFZmZlY3Qgb24gVElPQQ0KI2RlZmluZSAJQVQ5MUNfVENfQUNQQ19OT05FICAgICAgICAgICAgICAgICAoMHgwIDw8IDE4KSAvLyAoVEMpIEVmZmVjdDogbm9uZQ0KI2RlZmluZSAJQVQ5MUNfVENfQUNQQ19TRVQgICAgICAgICAgICAgICAgICAoMHgxIDw8IDE4KSAvLyAoVEMpIEVmZmVjdDogc2V0DQojZGVmaW5lIAlBVDkxQ19UQ19BQ1BDX0NMRUFSICAgICAgICAgICAgICAgICgweDIgPDwgMTgpIC8vIChUQykgRWZmZWN0OiBjbGVhcg0KI2RlZmluZSAJQVQ5MUNfVENfQUNQQ19UT0dHTEUgICAgICAgICAgICAgICAoMHgzIDw8IDE4KSAvLyAoVEMpIEVmZmVjdDogdG9nZ2xlDQojZGVmaW5lIEFUOTFDX1RDX0xEUkIgICAgICAgICAoMHgzIDw8IDE4KSAvLyAoVEMpIFJCIExvYWRpbmcgU2VsZWN0aW9uDQojZGVmaW5lIAlBVDkxQ19UQ19MRFJCX05PTkUgICAgICAgICAgICAgICAgICgweDAgPDwgMTgpIC8vIChUQykgRWRnZTogTm9uZQ0KI2RlZmluZSAJQVQ5MUNfVENfTERSQl9SSVNJTkcgICAgICAgICAgICAgICAoMHgxIDw8IDE4KSAvLyAoVEMpIEVkZ2U6IHJpc2luZyBlZGdlIG9mIFRJT0ENCiNkZWZpbmUgCUFUOTFDX1RDX0xEUkJfRkFMTElORyAgICAgICAgICAgICAgKDB4MiA8PCAxOCkgLy8gKFRDKSBFZGdlOiBmYWxsaW5nIGVkZ2Ugb2YgVElPQQ0KI2RlZmluZSAJQVQ5MUNfVENfTERSQl9CT1RIICAgICAgICAgICAgICAgICAoMHgzIDw8IDE4KSAvLyAoVEMpIEVkZ2U6IGVhY2ggZWRnZSBvZiBUSU9BDQojZGVmaW5lIEFUOTFDX1RDX0FFRVZUICAgICAgICAoMHgzIDw8IDIwKSAvLyAoVEMpIEV4dGVybmFsIEV2ZW50IEVmZmVjdCBvbiBUSU9BDQojZGVmaW5lIAlBVDkxQ19UQ19BRUVWVF9OT05FICAgICAgICAgICAgICAgICAoMHgwIDw8IDIwKSAvLyAoVEMpIEVmZmVjdDogbm9uZQ0KI2RlZmluZSAJQVQ5MUNfVENfQUVFVlRfU0VUICAgICAgICAgICAgICAgICAgKDB4MSA8PCAyMCkgLy8gKFRDKSBFZmZlY3Q6IHNldA0KI2RlZmluZSAJQVQ5MUNfVENfQUVFVlRfQ0xFQVIgICAgICAgICAgICAgICAgKDB4MiA8PCAyMCkgLy8gKFRDKSBFZmZlY3Q6IGNsZWFyDQojZGVmaW5lIAlBVDkxQ19UQ19BRUVWVF9UT0dHTEUgICAgICAgICAgICAgICAoMHgzIDw8IDIwKSAvLyAoVEMpIEVmZmVjdDogdG9nZ2xlDQojZGVmaW5lIEFUOTFDX1RDX0FTV1RSRyAgICAgICAoMHgzIDw8IDIyKSAvLyAoVEMpIFNvZnR3YXJlIFRyaWdnZXIgRWZmZWN0IG9uIFRJT0ENCiNkZWZpbmUgCUFUOTFDX1RDX0FTV1RSR19OT05FICAgICAgICAgICAgICAgICAoMHgwIDw8IDIyKSAvLyAoVEMpIEVmZmVjdDogbm9uZQ0KI2RlZmluZSAJQVQ5MUNfVENfQVNXVFJHX1NFVCAgICAgICAgICAgICAgICAgICgweDEgPDwgMjIpIC8vIChUQykgRWZmZWN0OiBzZXQNCiNkZWZpbmUgCUFUOTFDX1RDX0FTV1RSR19DTEVBUiAgICAgICAgICAgICAgICAoMHgyIDw8IDIyKSAvLyAoVEMpIEVmZmVjdDogY2xlYXINCiNkZWZpbmUgCUFUOTFDX1RDX0FTV1RSR19UT0dHTEUgICAgICAgICAgICAgICAoMHgzIDw8IDIyKSAvLyAoVEMpIEVmZmVjdDogdG9nZ2xlDQojZGVmaW5lIEFUOTFDX1RDX0JDUEIgICAgICAgICAoMHgzIDw8IDI0KSAvLyAoVEMpIFJCIENvbXBhcmUgRWZmZWN0IG9uIFRJT0INCiNkZWZpbmUgCUFUOTFDX1RDX0JDUEJfTk9ORSAgICAgICAgICAgICAgICAgKDB4MCA8PCAyNCkgLy8gKFRDKSBFZmZlY3Q6IG5vbmUNCiNkZWZpbmUgCUFUOTFDX1RDX0JDUEJfU0VUICAgICAgICAgICAgICAgICAgKDB4MSA8PCAyNCkgLy8gKFRDKSBFZmZlY3Q6IHNldA0KI2RlZmluZSAJQVQ5MUNfVENfQkNQQl9DTEVBUiAgICAgICAgICAgICAgICAoMHgyIDw8IDI0KSAvLyAoVEMpIEVmZmVjdDogY2xlYXINCiNkZWZpbmUgCUFUOTFDX1RDX0JDUEJfVE9HR0xFICAgICAgICAgICAgICAgKDB4MyA8PCAyNCkgLy8gKFRDKSBFZmZlY3Q6IHRvZ2dsZQ0KI2RlZmluZSBBVDkxQ19UQ19CQ1BDICAgICAgICAgKDB4MyA8PCAyNikgLy8gKFRDKSBSQyBDb21wYXJlIEVmZmVjdCBvbiBUSU9CDQojZGVmaW5lIAlBVDkxQ19UQ19CQ1BDX05PTkUgICAgICAgICAgICAgICAgICgweDAgPDwgMjYpIC8vIChUQykgRWZmZWN0OiBub25lDQojZGVmaW5lIAlBVDkxQ19UQ19CQ1BDX1NFVCAgICAgICAgICAgICAgICAgICgweDEgPDwgMjYpIC8vIChUQykgRWZmZWN0OiBzZXQNCiNkZWZpbmUgCUFUOTFDX1RDX0JDUENfQ0xFQVIgICAgICAgICAgICAgICAgKDB4MiA8PCAyNikgLy8gKFRDKSBFZmZlY3Q6IGNsZWFyDQojZGVmaW5lIAlBVDkxQ19UQ19CQ1BDX1RPR0dMRSAgICAgICAgICAgICAgICgweDMgPDwgMjYpIC8vIChUQykgRWZmZWN0OiB0b2dnbGUNCiNkZWZpbmUgQVQ5MUNfVENfQkVFVlQgICAgICAgICgweDMgPDwgMjgpIC8vIChUQykgRXh0ZXJuYWwgRXZlbnQgRWZmZWN0IG9uIFRJT0INCiNkZWZpbmUgCUFUOTFDX1RDX0JFRVZUX05PTkUgICAgICAgICAgICAgICAgICgweDAgPDwgMjgpIC8vIChUQykgRWZmZWN0OiBub25lDQojZGVmaW5lIAlBVDkxQ19UQ19CRUVWVF9TRVQgICAgICAgICAgICAgICAgICAoMHgxIDw8IDI4KSAvLyAoVEMpIEVmZmVjdDogc2V0DQojZGVmaW5lIAlBVDkxQ19UQ19CRUVWVF9DTEVBUiAgICAgICAgICAgICAgICAoMHgyIDw8IDI4KSAvLyAoVEMpIEVmZmVjdDogY2xlYXINCiNkZWZpbmUgCUFUOTFDX1RDX0JFRVZUX1RPR0dMRSAgICAgICAgICAgICAgICgweDMgPDwgMjgpIC8vIChUQykgRWZmZWN0OiB0b2dnbGUNCiNkZWZpbmUgQVQ5MUNfVENfQlNXVFJHICAgICAgICgweDMgPDwgMzApIC8vIChUQykgU29mdHdhcmUgVHJpZ2dlciBFZmZlY3Qgb24gVElPQg0KI2RlZmluZSAJQVQ5MUNfVENfQlNXVFJHX05PTkUgICAgICAgICAgICAgICAgICgweDAgPDwgMzApIC8vIChUQykgRWZmZWN0OiBub25lDQojZGVmaW5lIAlBVDkxQ19UQ19CU1dUUkdfU0VUICAgICAgICAgICAgICAgICAgKDB4MSA8PCAzMCkgLy8gKFRDKSBFZmZlY3Q6IHNldA0KI2RlZmluZSAJQVQ5MUNfVENfQlNXVFJHX0NMRUFSICAgICAgICAgICAgICAgICgweDIgPDwgMzApIC8vIChUQykgRWZmZWN0OiBjbGVhcg0KI2RlZmluZSAJQVQ5MUNfVENfQlNXVFJHX1RPR0dMRSAgICAgICAgICAgICAgICgweDMgPDwgMzApIC8vIChUQykgRWZmZWN0OiB0b2dnbGUNCi8vIC0tLS0tLS0tIFRDX1NSIDogKFRDIE9mZnNldDogMHgyMCkgVEMgQ2hhbm5lbCBTdGF0dXMgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1RDX0NPVkZTICAgICAgICAoMHgxIDw8ICAwKSAvLyAoVEMpIENvdW50ZXIgT3ZlcmZsb3cNCiNkZWZpbmUgQVQ5MUNfVENfTE9WUlMgICAgICAgICgweDEgPDwgIDEpIC8vIChUQykgTG9hZCBPdmVycnVuDQojZGVmaW5lIEFUOTFDX1RDX0NQQVMgICAgICAgICAoMHgxIDw8ICAyKSAvLyAoVEMpIFJBIENvbXBhcmUNCiNkZWZpbmUgQVQ5MUNfVENfQ1BCUyAgICAgICAgICgweDEgPDwgIDMpIC8vIChUQykgUkIgQ29tcGFyZQ0KI2RlZmluZSBBVDkxQ19UQ19DUENTICAgICAgICAgKDB4MSA8PCAgNCkgLy8gKFRDKSBSQyBDb21wYXJlDQojZGVmaW5lIEFUOTFDX1RDX0xEUkFTICAgICAgICAoMHgxIDw8ICA1KSAvLyAoVEMpIFJBIExvYWRpbmcNCiNkZWZpbmUgQVQ5MUNfVENfTERSQlMgICAgICAgICgweDEgPDwgIDYpIC8vIChUQykgUkIgTG9hZGluZw0KI2RlZmluZSBBVDkxQ19UQ19FVFJHUyAgICAgICAgKDB4MSA8PCAgNykgLy8gKFRDKSBFeHRlcm5hbCBUcmlnZ2VyDQojZGVmaW5lIEFUOTFDX1RDX0NMS1NUQSAgICAgICAoMHgxIDw8IDE2KSAvLyAoVEMpIENsb2NrIEVuYWJsaW5nDQojZGVmaW5lIEFUOTFDX1RDX01USU9BICAgICAgICAoMHgxIDw8IDE3KSAvLyAoVEMpIFRJT0EgTWlycm9yDQojZGVmaW5lIEFUOTFDX1RDX01USU9CICAgICAgICAoMHgxIDw8IDE4KSAvLyAoVEMpIFRJT0EgTWlycm9yDQovLyAtLS0tLS0tLSBUQ19JRVIgOiAoVEMgT2Zmc2V0OiAweDI0KSBUQyBDaGFubmVsIEludGVycnVwdCBFbmFibGUgUmVnaXN0ZXIgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBUQ19JRFIgOiAoVEMgT2Zmc2V0OiAweDI4KSBUQyBDaGFubmVsIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KLy8gLS0tLS0tLS0gVENfSU1SIDogKFRDIE9mZnNldDogMHgyYykgVEMgQ2hhbm5lbCBJbnRlcnJ1cHQgTWFzayBSZWdpc3RlciAtLS0tLS0tLSANCg0KLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCi8vICAgICAgICAgICAgICBTT0ZUV0FSRSBBUEkgREVGSU5JVElPTiAgRk9SIFRpbWVyIENvdW50ZXIgSW50ZXJmYWNlDQovLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KI2lmbmRlZiBfX0FTU0VNQkxZX18NCnR5cGVkZWYgc3RydWN0IF9BVDkxU19UQ0Igew0KCUFUOTFTX1RDCSBUQ0JfVEMwOyAJLy8gVEMgQ2hhbm5lbCAwDQoJQVQ5MV9SRUcJIFJlc2VydmVkMFs0XTsgCS8vIA0KCUFUOTFTX1RDCSBUQ0JfVEMxOyAJLy8gVEMgQ2hhbm5lbCAxDQoJQVQ5MV9SRUcJIFJlc2VydmVkMVs0XTsgCS8vIA0KCUFUOTFTX1RDCSBUQ0JfVEMyOyAJLy8gVEMgQ2hhbm5lbCAyDQoJQVQ5MV9SRUcJIFJlc2VydmVkMls0XTsgCS8vIA0KCUFUOTFfUkVHCSBUQ0JfQkNSOyAJLy8gVEMgQmxvY2sgQ29udHJvbCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBUQ0JfQk1SOyAJLy8gVEMgQmxvY2sgTW9kZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDNbOV07IAkvLyANCglBVDkxX1JFRwkgVENCX0FERFJTSVpFOyAJLy8gVEMgQUREUlNJWkUgUkVHSVNURVIgDQoJQVQ5MV9SRUcJIFRDQl9JUE5BTUUxOyAJLy8gVEMgSVBOQU1FMSBSRUdJU1RFUiANCglBVDkxX1JFRwkgVENCX0lQTkFNRTI7IAkvLyBUQyBJUE5BTUUyIFJFR0lTVEVSIA0KCUFUOTFfUkVHCSBUQ0JfRkVBVFVSRVM7IAkvLyBUQyBGRUFUVVJFUyBSRUdJU1RFUiANCglBVDkxX1JFRwkgVENCX1ZFUjsgCS8vICBWZXJzaW9uIFJlZ2lzdGVyDQp9IEFUOTFTX1RDQiwgKkFUOTFQU19UQ0I7DQojZWxzZQ0KI2RlZmluZSBUQ0JfQkNSICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDBDMCkgLy8gKFRDQl9CQ1IpIFRDIEJsb2NrIENvbnRyb2wgUmVnaXN0ZXINCiNkZWZpbmUgVENCX0JNUiAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwQzQpIC8vIChUQ0JfQk1SKSBUQyBCbG9jayBNb2RlIFJlZ2lzdGVyDQojZGVmaW5lIFRDX0FERFJTSVpFICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMEVDKSAvLyAoVENfQUREUlNJWkUpIFRDIEFERFJTSVpFIFJFR0lTVEVSIA0KI2RlZmluZSBUQ19JUE5BTUUxICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDBGMCkgLy8gKFRDX0lQTkFNRTEpIFRDIElQTkFNRTEgUkVHSVNURVIgDQojZGVmaW5lIFRDX0lQTkFNRTIgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMEY0KSAvLyAoVENfSVBOQU1FMikgVEMgSVBOQU1FMiBSRUdJU1RFUiANCiNkZWZpbmUgVENfRkVBVFVSRVMgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwRjgpIC8vIChUQ19GRUFUVVJFUykgVEMgRkVBVFVSRVMgUkVHSVNURVIgDQojZGVmaW5lIFRDX1ZFUiAgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMEZDKSAvLyAoVENfVkVSKSAgVmVyc2lvbiBSZWdpc3Rlcg0KDQojZW5kaWYNCi8vIC0tLS0tLS0tIFRDQl9CQ1IgOiAoVENCIE9mZnNldDogMHhjMCkgVEMgQmxvY2sgQ29udHJvbCBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfVENCX1NZTkMgICAgICAgICgweDEgPDwgIDApIC8vIChUQ0IpIFN5bmNocm8gQ29tbWFuZA0KLy8gLS0tLS0tLS0gVENCX0JNUiA6IChUQ0IgT2Zmc2V0OiAweGM0KSBUQyBCbG9jayBNb2RlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19UQ0JfVEMwWEMwUyAgICAgKDB4MyA8PCAgMCkgLy8gKFRDQikgRXh0ZXJuYWwgQ2xvY2sgU2lnbmFsIDAgU2VsZWN0aW9uDQojZGVmaW5lIAlBVDkxQ19UQ0JfVEMwWEMwU19UQ0xLMCAgICAgICAgICAgICAgICAoMHgwKSAvLyAoVENCKSBUQ0xLMCBjb25uZWN0ZWQgdG8gWEMwDQojZGVmaW5lIAlBVDkxQ19UQ0JfVEMwWEMwU19OT05FICAgICAgICAgICAgICAgICAoMHgxKSAvLyAoVENCKSBOb25lIHNpZ25hbCBjb25uZWN0ZWQgdG8gWEMwDQojZGVmaW5lIAlBVDkxQ19UQ0JfVEMwWEMwU19USU9BMSAgICAgICAgICAgICAgICAoMHgyKSAvLyAoVENCKSBUSU9BMSBjb25uZWN0ZWQgdG8gWEMwDQojZGVmaW5lIAlBVDkxQ19UQ0JfVEMwWEMwU19USU9BMiAgICAgICAgICAgICAgICAoMHgzKSAvLyAoVENCKSBUSU9BMiBjb25uZWN0ZWQgdG8gWEMwDQojZGVmaW5lIEFUOTFDX1RDQl9UQzFYQzFTICAgICAoMHgzIDw8ICAyKSAvLyAoVENCKSBFeHRlcm5hbCBDbG9jayBTaWduYWwgMSBTZWxlY3Rpb24NCiNkZWZpbmUgCUFUOTFDX1RDQl9UQzFYQzFTX1RDTEsxICAgICAgICAgICAgICAgICgweDAgPDwgIDIpIC8vIChUQ0IpIFRDTEsxIGNvbm5lY3RlZCB0byBYQzENCiNkZWZpbmUgCUFUOTFDX1RDQl9UQzFYQzFTX05PTkUgICAgICAgICAgICAgICAgICgweDEgPDwgIDIpIC8vIChUQ0IpIE5vbmUgc2lnbmFsIGNvbm5lY3RlZCB0byBYQzENCiNkZWZpbmUgCUFUOTFDX1RDQl9UQzFYQzFTX1RJT0EwICAgICAgICAgICAgICAgICgweDIgPDwgIDIpIC8vIChUQ0IpIFRJT0EwIGNvbm5lY3RlZCB0byBYQzENCiNkZWZpbmUgCUFUOTFDX1RDQl9UQzFYQzFTX1RJT0EyICAgICAgICAgICAgICAgICgweDMgPDwgIDIpIC8vIChUQ0IpIFRJT0EyIGNvbm5lY3RlZCB0byBYQzENCiNkZWZpbmUgQVQ5MUNfVENCX1RDMlhDMlMgICAgICgweDMgPDwgIDQpIC8vIChUQ0IpIEV4dGVybmFsIENsb2NrIFNpZ25hbCAyIFNlbGVjdGlvbg0KI2RlZmluZSAJQVQ5MUNfVENCX1RDMlhDMlNfVENMSzIgICAgICAgICAgICAgICAgKDB4MCA8PCAgNCkgLy8gKFRDQikgVENMSzIgY29ubmVjdGVkIHRvIFhDMg0KI2RlZmluZSAJQVQ5MUNfVENCX1RDMlhDMlNfTk9ORSAgICAgICAgICAgICAgICAgKDB4MSA8PCAgNCkgLy8gKFRDQikgTm9uZSBzaWduYWwgY29ubmVjdGVkIHRvIFhDMg0KI2RlZmluZSAJQVQ5MUNfVENCX1RDMlhDMlNfVElPQTAgICAgICAgICAgICAgICAgKDB4MiA8PCAgNCkgLy8gKFRDQikgVElPQTAgY29ubmVjdGVkIHRvIFhDMg0KI2RlZmluZSAJQVQ5MUNfVENCX1RDMlhDMlNfVElPQTEgICAgICAgICAgICAgICAgKDB4MyA8PCAgNCkgLy8gKFRDQikgVElPQTIgY29ubmVjdGVkIHRvIFhDMg0KDQovLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KLy8gICAgICAgICAgICAgIFNPRlRXQVJFIEFQSSBERUZJTklUSU9OICBGT1IgRW1iZWRkZWQgRmxhc2ggQ29udHJvbGxlciAyLjANCi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQojaWZuZGVmIF9fQVNTRU1CTFlfXw0KdHlwZWRlZiBzdHJ1Y3QgX0FUOTFTX0VGQyB7DQoJQVQ5MV9SRUcJIEVGQ19GTVI7IAkvLyBFRkMgRmxhc2ggTW9kZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBFRkNfRkNSOyAJLy8gRUZDIEZsYXNoIENvbW1hbmQgUmVnaXN0ZXINCglBVDkxX1JFRwkgRUZDX0ZTUjsgCS8vIEVGQyBGbGFzaCBTdGF0dXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgRUZDX0ZSUjsgCS8vIEVGQyBGbGFzaCBSZXN1bHQgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQwWzFdOyAJLy8gDQoJQVQ5MV9SRUcJIEVGQ19GVlI7IAkvLyBFRkMgRmxhc2ggVmVyc2lvbiBSZWdpc3Rlcg0KfSBBVDkxU19FRkMsICpBVDkxUFNfRUZDOw0KI2Vsc2UNCiNkZWZpbmUgRUZDX0ZNUiAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMDApIC8vIChFRkNfRk1SKSBFRkMgRmxhc2ggTW9kZSBSZWdpc3Rlcg0KI2RlZmluZSBFRkNfRkNSICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAwNCkgLy8gKEVGQ19GQ1IpIEVGQyBGbGFzaCBDb21tYW5kIFJlZ2lzdGVyDQojZGVmaW5lIEVGQ19GU1IgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDA4KSAvLyAoRUZDX0ZTUikgRUZDIEZsYXNoIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBFRkNfRlJSICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAwQykgLy8gKEVGQ19GUlIpIEVGQyBGbGFzaCBSZXN1bHQgUmVnaXN0ZXINCiNkZWZpbmUgRUZDX0ZWUiAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMTQpIC8vIChFRkNfRlZSKSBFRkMgRmxhc2ggVmVyc2lvbiBSZWdpc3Rlcg0KDQojZW5kaWYNCi8vIC0tLS0tLS0tIEVGQ19GTVIgOiAoRUZDIE9mZnNldDogMHgwKSBFRkMgRmxhc2ggTW9kZSBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfRUZDX0ZSRFkgICAgICAgICgweDEgPDwgIDApIC8vIChFRkMpIFJlYWR5IEludGVycnVwdCBFbmFibGUNCiNkZWZpbmUgQVQ5MUNfRUZDX0ZXUyAgICAgICAgICgweEYgPDwgIDgpIC8vIChFRkMpIEZsYXNoIFdhaXQgU3RhdGUuDQojZGVmaW5lIAlBVDkxQ19FRkNfRldTXzBXUyAgICAgICAgICAgICAgICAgICgweDAgPDwgIDgpIC8vIChFRkMpIDAgV2FpdCBTdGF0ZQ0KI2RlZmluZSAJQVQ5MUNfRUZDX0ZXU18xV1MgICAgICAgICAgICAgICAgICAoMHgxIDw8ICA4KSAvLyAoRUZDKSAxIFdhaXQgU3RhdGUNCiNkZWZpbmUgCUFUOTFDX0VGQ19GV1NfMldTICAgICAgICAgICAgICAgICAgKDB4MiA8PCAgOCkgLy8gKEVGQykgMiBXYWl0IFN0YXRlcw0KI2RlZmluZSAJQVQ5MUNfRUZDX0ZXU18zV1MgICAgICAgICAgICAgICAgICAoMHgzIDw8ICA4KSAvLyAoRUZDKSAzIFdhaXQgU3RhdGVzDQovLyAtLS0tLS0tLSBFRkNfRkNSIDogKEVGQyBPZmZzZXQ6IDB4NCkgRUZDIEZsYXNoIENvbW1hbmQgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX0VGQ19GQ01EICAgICAgICAoMHhGRiA8PCAgMCkgLy8gKEVGQykgRmxhc2ggQ29tbWFuZA0KI2RlZmluZSAJQVQ5MUNfRUZDX0ZDTURfR0VURCAgICAgICAgICAgICAgICAgKDB4MCkgLy8gKEVGQykgR2V0IEZsYXNoIERlc2NyaXB0b3INCiNkZWZpbmUgCUFUOTFDX0VGQ19GQ01EX1dQICAgICAgICAgICAgICAgICAgICgweDEpIC8vIChFRkMpIFdyaXRlIFBhZ2UNCiNkZWZpbmUgCUFUOTFDX0VGQ19GQ01EX1dQTCAgICAgICAgICAgICAgICAgICgweDIpIC8vIChFRkMpIFdyaXRlIFBhZ2UgYW5kIExvY2sNCiNkZWZpbmUgCUFUOTFDX0VGQ19GQ01EX0VXUCAgICAgICAgICAgICAgICAgICgweDMpIC8vIChFRkMpIEVyYXNlIFBhZ2UgYW5kIFdyaXRlIFBhZ2UNCiNkZWZpbmUgCUFUOTFDX0VGQ19GQ01EX0VXUEwgICAgICAgICAgICAgICAgICgweDQpIC8vIChFRkMpIEVyYXNlIFBhZ2UgYW5kIFdyaXRlIFBhZ2UgdGhlbiBMb2NrDQojZGVmaW5lIAlBVDkxQ19FRkNfRkNNRF9FQSAgICAgICAgICAgICAgICAgICAoMHg1KSAvLyAoRUZDKSBFcmFzZSBBbGwNCiNkZWZpbmUgCUFUOTFDX0VGQ19GQ01EX0VQTCAgICAgICAgICAgICAgICAgICgweDYpIC8vIChFRkMpIEVyYXNlIFBsYW5lDQojZGVmaW5lIAlBVDkxQ19FRkNfRkNNRF9FUEEgICAgICAgICAgICAgICAgICAoMHg3KSAvLyAoRUZDKSBFcmFzZSBQYWdlcw0KI2RlZmluZSAJQVQ5MUNfRUZDX0ZDTURfU0xCICAgICAgICAgICAgICAgICAgKDB4OCkgLy8gKEVGQykgU2V0IExvY2sgQml0DQojZGVmaW5lIAlBVDkxQ19FRkNfRkNNRF9DTEIgICAgICAgICAgICAgICAgICAoMHg5KSAvLyAoRUZDKSBDbGVhciBMb2NrIEJpdA0KI2RlZmluZSAJQVQ5MUNfRUZDX0ZDTURfR0xCICAgICAgICAgICAgICAgICAgKDB4QSkgLy8gKEVGQykgR2V0IExvY2sgQml0DQojZGVmaW5lIAlBVDkxQ19FRkNfRkNNRF9TRkIgICAgICAgICAgICAgICAgICAoMHhCKSAvLyAoRUZDKSBTZXQgRnVzZSBCaXQNCiNkZWZpbmUgCUFUOTFDX0VGQ19GQ01EX0NGQiAgICAgICAgICAgICAgICAgICgweEMpIC8vIChFRkMpIENsZWFyIEZ1c2UgQml0DQojZGVmaW5lIAlBVDkxQ19FRkNfRkNNRF9HRkIgICAgICAgICAgICAgICAgICAoMHhEKSAvLyAoRUZDKSBHZXQgRnVzZSBCaXQNCiNkZWZpbmUgCUFUOTFDX0VGQ19GQ01EX1NUVUkgICAgICAgICAgICAgICAgICgweEUpIC8vIChFRkMpIFN0YXJ0IFJlYWQgVW5pcXVlIElEDQojZGVmaW5lIAlBVDkxQ19FRkNfRkNNRF9TUFVJICAgICAgICAgICAgICAgICAoMHhGKSAvLyAoRUZDKSBTdG9wIFJlYWQgVW5pcXVlIElEDQojZGVmaW5lIEFUOTFDX0VGQ19GQVJHICAgICAgICAoMHhGRkZGIDw8ICA4KSAvLyAoRUZDKSBGbGFzaCBDb21tYW5kIEFyZ3VtZW50DQojZGVmaW5lIEFUOTFDX0VGQ19GS0VZICAgICAgICAoMHhGRiA8PCAyNCkgLy8gKEVGQykgRmxhc2ggV3JpdGluZyBQcm90ZWN0aW9uIEtleQ0KLy8gLS0tLS0tLS0gRUZDX0ZTUiA6IChFRkMgT2Zmc2V0OiAweDgpIEVGQyBGbGFzaCBTdGF0dXMgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX0VGQ19GUkRZX1MgICAgICAoMHgxIDw8ICAwKSAvLyAoRUZDKSBGbGFzaCBSZWFkeSBTdGF0dXMNCiNkZWZpbmUgQVQ5MUNfRUZDX0ZDTURFICAgICAgICgweDEgPDwgIDEpIC8vIChFRkMpIEZsYXNoIENvbW1hbmQgRXJyb3IgU3RhdHVzDQojZGVmaW5lIEFUOTFDX0VGQ19MT0NLRSAgICAgICAoMHgxIDw8ICAyKSAvLyAoRUZDKSBGbGFzaCBMb2NrIEVycm9yIFN0YXR1cw0KLy8gLS0tLS0tLS0gRUZDX0ZSUiA6IChFRkMgT2Zmc2V0OiAweGMpIEVGQyBGbGFzaCBSZXN1bHQgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX0VGQ19GVkFMVUUgICAgICAoMHgwIDw8ICAwKSAvLyAoRUZDKSBGbGFzaCBSZXN1bHQgVmFsdWUNCg0KLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCi8vICAgICAgICAgICAgICBTT0ZUV0FSRSBBUEkgREVGSU5JVElPTiAgRk9SIE11bHRpbWVkaWEgQ2FyZCBJbnRlcmZhY2UNCi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQojaWZuZGVmIF9fQVNTRU1CTFlfXw0KdHlwZWRlZiBzdHJ1Y3QgX0FUOTFTX01DSSB7DQoJQVQ5MV9SRUcJIE1DSV9DUjsgCS8vIE1DSSBDb250cm9sIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIE1DSV9NUjsgCS8vIE1DSSBNb2RlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIE1DSV9EVE9SOyAJLy8gTUNJIERhdGEgVGltZW91dCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBNQ0lfU0RDUjsgCS8vIE1DSSBTRC9TRElPIENhcmQgUmVnaXN0ZXINCglBVDkxX1JFRwkgTUNJX0FSR1I7IAkvLyBNQ0kgQXJndW1lbnQgUmVnaXN0ZXINCglBVDkxX1JFRwkgTUNJX0NNRFI7IAkvLyBNQ0kgQ29tbWFuZCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBNQ0lfQkxLUjsgCS8vIE1DSSBCbG9jayBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBNQ0lfQ1NUT1I7IAkvLyBNQ0kgQ29tcGxldGlvbiBTaWduYWwgVGltZW91dCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBNQ0lfUlNQUls0XTsgCS8vIE1DSSBSZXNwb25zZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBNQ0lfUkRSOyAJLy8gTUNJIFJlY2VpdmUgRGF0YSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBNQ0lfVERSOyAJLy8gTUNJIFRyYW5zbWl0IERhdGEgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQwWzJdOyAJLy8gDQoJQVQ5MV9SRUcJIE1DSV9TUjsgCS8vIE1DSSBTdGF0dXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgTUNJX0lFUjsgCS8vIE1DSSBJbnRlcnJ1cHQgRW5hYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIE1DSV9JRFI7IAkvLyBNQ0kgSW50ZXJydXB0IERpc2FibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgTUNJX0lNUjsgCS8vIE1DSSBJbnRlcnJ1cHQgTWFzayBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBNQ0lfRE1BOyAJLy8gTUNJIERNQSBDb25maWd1cmF0aW9uIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIE1DSV9DRkc7IAkvLyBNQ0kgQ29uZmlndXJhdGlvbiBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDFbMzVdOyAJLy8gDQoJQVQ5MV9SRUcJIE1DSV9XUENSOyAJLy8gTUNJIFdyaXRlIFByb3RlY3Rpb24gQ29udHJvbCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBNQ0lfV1BTUjsgCS8vIE1DSSBXcml0ZSBQcm90ZWN0aW9uIFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBNQ0lfQUREUlNJWkU7IAkvLyBNQ0kgQUREUlNJWkUgUkVHSVNURVIgDQoJQVQ5MV9SRUcJIE1DSV9JUE5BTUUxOyAJLy8gTUNJIElQTkFNRTEgUkVHSVNURVIgDQoJQVQ5MV9SRUcJIE1DSV9JUE5BTUUyOyAJLy8gTUNJIElQTkFNRTIgUkVHSVNURVIgDQoJQVQ5MV9SRUcJIE1DSV9GRUFUVVJFUzsgCS8vIE1DSSBGRUFUVVJFUyBSRUdJU1RFUiANCglBVDkxX1JFRwkgTUNJX1ZFUjsgCS8vIE1DSSBWRVJTSU9OIFJFR0lTVEVSIA0KCUFUOTFfUkVHCSBNQ0lfUlBSOyAJLy8gUmVjZWl2ZSBQb2ludGVyIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIE1DSV9SQ1I7IAkvLyBSZWNlaXZlIENvdW50ZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgTUNJX1RQUjsgCS8vIFRyYW5zbWl0IFBvaW50ZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgTUNJX1RDUjsgCS8vIFRyYW5zbWl0IENvdW50ZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgTUNJX1JOUFI7IAkvLyBSZWNlaXZlIE5leHQgUG9pbnRlciBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBNQ0lfUk5DUjsgCS8vIFJlY2VpdmUgTmV4dCBDb3VudGVyIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIE1DSV9UTlBSOyAJLy8gVHJhbnNtaXQgTmV4dCBQb2ludGVyIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIE1DSV9UTkNSOyAJLy8gVHJhbnNtaXQgTmV4dCBDb3VudGVyIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIE1DSV9QVENSOyAJLy8gUERDIFRyYW5zZmVyIENvbnRyb2wgUmVnaXN0ZXINCglBVDkxX1JFRwkgTUNJX1BUU1I7IAkvLyBQREMgVHJhbnNmZXIgU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkMls1NF07IAkvLyANCglBVDkxX1JFRwkgTUNJX0ZJRk87IAkvLyBNQ0kgRklGTyBBcGVydHVyZSBSZWdpc3Rlcg0KfSBBVDkxU19NQ0ksICpBVDkxUFNfTUNJOw0KI2Vsc2UNCiNkZWZpbmUgTUNJX0NSICAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMDApIC8vIChNQ0lfQ1IpIE1DSSBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIE1DSV9NUiAgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDA0KSAvLyAoTUNJX01SKSBNQ0kgTW9kZSBSZWdpc3Rlcg0KI2RlZmluZSBNQ0lfRFRPUiAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAwOCkgLy8gKE1DSV9EVE9SKSBNQ0kgRGF0YSBUaW1lb3V0IFJlZ2lzdGVyDQojZGVmaW5lIE1DSV9TRENSICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDBDKSAvLyAoTUNJX1NEQ1IpIE1DSSBTRC9TRElPIENhcmQgUmVnaXN0ZXINCiNkZWZpbmUgTUNJX0FSR1IgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMTApIC8vIChNQ0lfQVJHUikgTUNJIEFyZ3VtZW50IFJlZ2lzdGVyDQojZGVmaW5lIE1DSV9DTURSICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDE0KSAvLyAoTUNJX0NNRFIpIE1DSSBDb21tYW5kIFJlZ2lzdGVyDQojZGVmaW5lIE1DSV9CTEtSICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDE4KSAvLyAoTUNJX0JMS1IpIE1DSSBCbG9jayBSZWdpc3Rlcg0KI2RlZmluZSBNQ0lfQ1NUT1IgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAxQykgLy8gKE1DSV9DU1RPUikgTUNJIENvbXBsZXRpb24gU2lnbmFsIFRpbWVvdXQgUmVnaXN0ZXINCiNkZWZpbmUgTUNJX1JTUFIgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMjApIC8vIChNQ0lfUlNQUikgTUNJIFJlc3BvbnNlIFJlZ2lzdGVyDQojZGVmaW5lIE1DSV9SRFIgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDMwKSAvLyAoTUNJX1JEUikgTUNJIFJlY2VpdmUgRGF0YSBSZWdpc3Rlcg0KI2RlZmluZSBNQ0lfVERSICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAzNCkgLy8gKE1DSV9URFIpIE1DSSBUcmFuc21pdCBEYXRhIFJlZ2lzdGVyDQojZGVmaW5lIE1DSV9TUiAgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDQwKSAvLyAoTUNJX1NSKSBNQ0kgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIE1DSV9JRVIgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDQ0KSAvLyAoTUNJX0lFUikgTUNJIEludGVycnVwdCBFbmFibGUgUmVnaXN0ZXINCiNkZWZpbmUgTUNJX0lEUiAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNDgpIC8vIChNQ0lfSURSKSBNQ0kgSW50ZXJydXB0IERpc2FibGUgUmVnaXN0ZXINCiNkZWZpbmUgTUNJX0lNUiAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNEMpIC8vIChNQ0lfSU1SKSBNQ0kgSW50ZXJydXB0IE1hc2sgUmVnaXN0ZXINCiNkZWZpbmUgTUNJX0RNQSAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNTApIC8vIChNQ0lfRE1BKSBNQ0kgRE1BIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXINCiNkZWZpbmUgTUNJX0NGRyAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNTQpIC8vIChNQ0lfQ0ZHKSBNQ0kgQ29uZmlndXJhdGlvbiBSZWdpc3Rlcg0KI2RlZmluZSBNQ0lfV1BDUiAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDBFNCkgLy8gKE1DSV9XUENSKSBNQ0kgV3JpdGUgUHJvdGVjdGlvbiBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIE1DSV9XUFNSICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMEU4KSAvLyAoTUNJX1dQU1IpIE1DSSBXcml0ZSBQcm90ZWN0aW9uIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBNQ0lfQUREUlNJWkUgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDBFQykgLy8gKE1DSV9BRERSU0laRSkgTUNJIEFERFJTSVpFIFJFR0lTVEVSIA0KI2RlZmluZSBNQ0lfSVBOQU1FMSAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDBGMCkgLy8gKE1DSV9JUE5BTUUxKSBNQ0kgSVBOQU1FMSBSRUdJU1RFUiANCiNkZWZpbmUgTUNJX0lQTkFNRTIgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwRjQpIC8vIChNQ0lfSVBOQU1FMikgTUNJIElQTkFNRTIgUkVHSVNURVIgDQojZGVmaW5lIE1DSV9GRUFUVVJFUyAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMEY4KSAvLyAoTUNJX0ZFQVRVUkVTKSBNQ0kgRkVBVFVSRVMgUkVHSVNURVIgDQojZGVmaW5lIE1DSV9WRVIgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMEZDKSAvLyAoTUNJX1ZFUikgTUNJIFZFUlNJT04gUkVHSVNURVIgDQojZGVmaW5lIE1DSV9GSUZPICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMjAwKSAvLyAoTUNJX0ZJRk8pIE1DSSBGSUZPIEFwZXJ0dXJlIFJlZ2lzdGVyDQoNCiNlbmRpZg0KLy8gLS0tLS0tLS0gTUNJX0NSIDogKE1DSSBPZmZzZXQ6IDB4MCkgTUNJIENvbnRyb2wgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX01DSV9NQ0lFTiAgICAgICAoMHgxIDw8ICAwKSAvLyAoTUNJKSBNdWx0aW1lZGlhIEludGVyZmFjZSBFbmFibGUNCiNkZWZpbmUgCUFUOTFDX01DSV9NQ0lFTl8wICAgICAgICAgICAgICAgICAgICAoMHgwKSAvLyAoTUNJKSBObyBlZmZlY3QNCiNkZWZpbmUgCUFUOTFDX01DSV9NQ0lFTl8xICAgICAgICAgICAgICAgICAgICAoMHgxKSAvLyAoTUNJKSBFbmFibGUgdGhlIE11bHRpTWVkaWEgSW50ZXJmYWNlIGlmIE1DSURJUyBpcyAwDQojZGVmaW5lIEFUOTFDX01DSV9NQ0lESVMgICAgICAoMHgxIDw8ICAxKSAvLyAoTUNJKSBNdWx0aW1lZGlhIEludGVyZmFjZSBEaXNhYmxlDQojZGVmaW5lIAlBVDkxQ19NQ0lfTUNJRElTXzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgIDEpIC8vIChNQ0kpIE5vIGVmZmVjdA0KI2RlZmluZSAJQVQ5MUNfTUNJX01DSURJU18xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8ICAxKSAvLyAoTUNJKSBEaXNhYmxlIHRoZSBNdWx0aU1lZGlhIEludGVyZmFjZQ0KI2RlZmluZSBBVDkxQ19NQ0lfUFdTRU4gICAgICAgKDB4MSA8PCAgMikgLy8gKE1DSSkgUG93ZXIgU2F2ZSBNb2RlIEVuYWJsZQ0KI2RlZmluZSAJQVQ5MUNfTUNJX1BXU0VOXzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgIDIpIC8vIChNQ0kpIE5vIGVmZmVjdA0KI2RlZmluZSAJQVQ5MUNfTUNJX1BXU0VOXzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgIDIpIC8vIChNQ0kpIEVuYWJsZSB0aGUgUG93ZXItc2F2aW5nIG1vZGUgaWYgUFdTRElTIGlzIDAuDQojZGVmaW5lIEFUOTFDX01DSV9QV1NESVMgICAgICAoMHgxIDw8ICAzKSAvLyAoTUNJKSBQb3dlciBTYXZlIE1vZGUgRGlzYWJsZQ0KI2RlZmluZSAJQVQ5MUNfTUNJX1BXU0RJU18wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8ICAzKSAvLyAoTUNJKSBObyBlZmZlY3QNCiNkZWZpbmUgCUFUOTFDX01DSV9QV1NESVNfMSAgICAgICAgICAgICAgICAgICAgKDB4MSA8PCAgMykgLy8gKE1DSSkgRGlzYWJsZSB0aGUgUG93ZXItc2F2aW5nIG1vZGUuDQojZGVmaW5lIEFUOTFDX01DSV9JT1dBSVRFTiAgICAoMHgxIDw8ICA0KSAvLyAoTUNJKSBTRElPIFJlYWQgV2FpdCBFbmFibGUNCiNkZWZpbmUgCUFUOTFDX01DSV9JT1dBSVRFTl8wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8ICA0KSAvLyAoTUNJKSBObyBlZmZlY3QNCiNkZWZpbmUgCUFUOTFDX01DSV9JT1dBSVRFTl8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8ICA0KSAvLyAoTUNJKSBFbmFibGVzIHRoZSBTRElPIFJlYWQgV2FpdCBPcGVyYXRpb24uDQojZGVmaW5lIEFUOTFDX01DSV9JT1dBSVRESVMgICAoMHgxIDw8ICA1KSAvLyAoTUNJKSBTRElPIFJlYWQgV2FpdCBEaXNhYmxlDQojZGVmaW5lIAlBVDkxQ19NQ0lfSU9XQUlURElTXzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgIDUpIC8vIChNQ0kpIE5vIGVmZmVjdA0KI2RlZmluZSAJQVQ5MUNfTUNJX0lPV0FJVERJU18xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8ICA1KSAvLyAoTUNJKSBEaXNhYmxlcyB0aGUgU0RJTyBSZWFkIFdhaXQgT3BlcmF0aW9uLg0KI2RlZmluZSBBVDkxQ19NQ0lfU1dSU1QgICAgICAgKDB4MSA8PCAgNykgLy8gKE1DSSkgTUNJIFNvZnR3YXJlIHJlc2V0DQojZGVmaW5lIAlBVDkxQ19NQ0lfU1dSU1RfMCAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAgNykgLy8gKE1DSSkgTm8gZWZmZWN0DQojZGVmaW5lIAlBVDkxQ19NQ0lfU1dSU1RfMSAgICAgICAgICAgICAgICAgICAgKDB4MSA8PCAgNykgLy8gKE1DSSkgUmVzZXRzIHRoZSBNQ0kNCi8vIC0tLS0tLS0tIE1DSV9NUiA6IChNQ0kgT2Zmc2V0OiAweDQpIE1DSSBNb2RlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19NQ0lfQ0xLRElWICAgICAgKDB4RkYgPDwgIDApIC8vIChNQ0kpIENsb2NrIERpdmlkZXINCiNkZWZpbmUgQVQ5MUNfTUNJX1BXU0RJViAgICAgICgweDcgPDwgIDgpIC8vIChNQ0kpIFBvd2VyIFNhdmluZyBEaXZpZGVyDQojZGVmaW5lIEFUOTFDX01DSV9SRFBST09GICAgICAoMHgxIDw8IDExKSAvLyAoTUNJKSBSZWFkIFByb29mIEVuYWJsZQ0KI2RlZmluZSAJQVQ5MUNfTUNJX1JEUFJPT0ZfRElTQUJMRSAgICAgICAgICAgICAgKDB4MCA8PCAxMSkgLy8gKE1DSSkgRGlzYWJsZXMgUmVhZCBQcm9vZg0KI2RlZmluZSAJQVQ5MUNfTUNJX1JEUFJPT0ZfRU5BQkxFICAgICAgICAgICAgICAgKDB4MSA8PCAxMSkgLy8gKE1DSSkgRW5hYmxlcyBSZWFkIFByb29mDQojZGVmaW5lIEFUOTFDX01DSV9XUlBST09GICAgICAoMHgxIDw8IDEyKSAvLyAoTUNJKSBXcml0ZSBQcm9vZiBFbmFibGUNCiNkZWZpbmUgCUFUOTFDX01DSV9XUlBST09GX0RJU0FCTEUgICAgICAgICAgICAgICgweDAgPDwgMTIpIC8vIChNQ0kpIERpc2FibGVzIFdyaXRlIFByb29mDQojZGVmaW5lIAlBVDkxQ19NQ0lfV1JQUk9PRl9FTkFCTEUgICAgICAgICAgICAgICAoMHgxIDw8IDEyKSAvLyAoTUNJKSBFbmFibGVzIFdyaXRlIFByb29mDQojZGVmaW5lIEFUOTFDX01DSV9QRENGQllURSAgICAoMHgxIDw8IDEzKSAvLyAoTUNJKSBQREMgRm9yY2UgQnl0ZSBUcmFuc2Zlcg0KI2RlZmluZSAJQVQ5MUNfTUNJX1BEQ0ZCWVRFX0RJU0FCTEUgICAgICAgICAgICAgICgweDAgPDwgMTMpIC8vIChNQ0kpIERpc2FibGVzIFBEQyBGb3JjZSBCeXRlIFRyYW5zZmVyDQojZGVmaW5lIAlBVDkxQ19NQ0lfUERDRkJZVEVfRU5BQkxFICAgICAgICAgICAgICAgKDB4MSA8PCAxMykgLy8gKE1DSSkgRW5hYmxlcyBQREMgRm9yY2UgQnl0ZSBUcmFuc2Zlcg0KI2RlZmluZSBBVDkxQ19NQ0lfUERDUEFEViAgICAgKDB4MSA8PCAxNCkgLy8gKE1DSSkgUERDIFBhZGRpbmcgVmFsdWUNCiNkZWZpbmUgQVQ5MUNfTUNJX1BEQ01PREUgICAgICgweDEgPDwgMTUpIC8vIChNQ0kpIFBEQyBPcmllbnRlZCBNb2RlDQojZGVmaW5lIAlBVDkxQ19NQ0lfUERDTU9ERV9ESVNBQkxFICAgICAgICAgICAgICAoMHgwIDw8IDE1KSAvLyAoTUNJKSBEaXNhYmxlcyBQREMgVHJhbnNmZXINCiNkZWZpbmUgCUFUOTFDX01DSV9QRENNT0RFX0VOQUJMRSAgICAgICAgICAgICAgICgweDEgPDwgMTUpIC8vIChNQ0kpIEVuYWJsZXMgUERDIFRyYW5zZmVyDQojZGVmaW5lIEFUOTFDX01DSV9CTEtMRU4gICAgICAoMHhGRkZGIDw8IDE2KSAvLyAoTUNJKSBEYXRhIEJsb2NrIExlbmd0aA0KLy8gLS0tLS0tLS0gTUNJX0RUT1IgOiAoTUNJIE9mZnNldDogMHg4KSBNQ0kgRGF0YSBUaW1lb3V0IFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19NQ0lfRFRPQ1lDICAgICAgKDB4RiA8PCAgMCkgLy8gKE1DSSkgRGF0YSBUaW1lb3V0IEN5Y2xlIE51bWJlcg0KI2RlZmluZSBBVDkxQ19NQ0lfRFRPTVVMICAgICAgKDB4NyA8PCAgNCkgLy8gKE1DSSkgRGF0YSBUaW1lb3V0IE11bHRpcGxpZXINCiNkZWZpbmUgCUFUOTFDX01DSV9EVE9NVUxfMSAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAgNCkgLy8gKE1DSSkgRFRPQ1lDIHggMQ0KI2RlZmluZSAJQVQ5MUNfTUNJX0RUT01VTF8xNiAgICAgICAgICAgICAgICAgICAoMHgxIDw8ICA0KSAvLyAoTUNJKSBEVE9DWUMgeCAxNg0KI2RlZmluZSAJQVQ5MUNfTUNJX0RUT01VTF8xMjggICAgICAgICAgICAgICAgICAoMHgyIDw8ICA0KSAvLyAoTUNJKSBEVE9DWUMgeCAxMjgNCiNkZWZpbmUgCUFUOTFDX01DSV9EVE9NVUxfMjU2ICAgICAgICAgICAgICAgICAgKDB4MyA8PCAgNCkgLy8gKE1DSSkgRFRPQ1lDIHggMjU2DQojZGVmaW5lIAlBVDkxQ19NQ0lfRFRPTVVMXzEwMjQgICAgICAgICAgICAgICAgICgweDQgPDwgIDQpIC8vIChNQ0kpIERUT0NZQyB4IDEwMjQNCiNkZWZpbmUgCUFUOTFDX01DSV9EVE9NVUxfNDA5NiAgICAgICAgICAgICAgICAgKDB4NSA8PCAgNCkgLy8gKE1DSSkgRFRPQ1lDIHggNDA5Ng0KI2RlZmluZSAJQVQ5MUNfTUNJX0RUT01VTF82NTUzNiAgICAgICAgICAgICAgICAoMHg2IDw8ICA0KSAvLyAoTUNJKSBEVE9DWUMgeCA2NTUzNg0KI2RlZmluZSAJQVQ5MUNfTUNJX0RUT01VTF8xMDQ4NTc2ICAgICAgICAgICAgICAoMHg3IDw8ICA0KSAvLyAoTUNJKSBEVE9DWUMgeCAxMDQ4NTc2DQovLyAtLS0tLS0tLSBNQ0lfU0RDUiA6IChNQ0kgT2Zmc2V0OiAweGMpIE1DSSBTRCBDYXJkIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19NQ0lfU0NEU0VMICAgICAgKDB4MyA8PCAgMCkgLy8gKE1DSSkgU0QgQ2FyZC9TRElPIFNlbGVjdG9yDQojZGVmaW5lIAlBVDkxQ19NQ0lfU0NEU0VMX1NMT1RBICAgICAgICAgICAgICAgICgweDApIC8vIChNQ0kpIFNsb3QgQSBzZWxlY3RlZA0KI2RlZmluZSAJQVQ5MUNfTUNJX1NDRFNFTF9TTE9UQiAgICAgICAgICAgICAgICAoMHgxKSAvLyAoTUNJKSBTbG90IEIgc2VsZWN0ZWQNCiNkZWZpbmUgCUFUOTFDX01DSV9TQ0RTRUxfU0xPVEMgICAgICAgICAgICAgICAgKDB4MikgLy8gKE1DSSkgU2xvdCBDIHNlbGVjdGVkDQojZGVmaW5lIAlBVDkxQ19NQ0lfU0NEU0VMX1NMT1REICAgICAgICAgICAgICAgICgweDMpIC8vIChNQ0kpIFNsb3QgRCBzZWxlY3RlZA0KI2RlZmluZSBBVDkxQ19NQ0lfU0NEQlVTICAgICAgKDB4MyA8PCAgNikgLy8gKE1DSSkgU0RDYXJkL1NESU8gQnVzIFdpZHRoDQojZGVmaW5lIAlBVDkxQ19NQ0lfU0NEQlVTXzFCSVQgICAgICAgICAgICAgICAgICgweDAgPDwgIDYpIC8vIChNQ0kpIDEtYml0IGRhdGEgYnVzDQojZGVmaW5lIAlBVDkxQ19NQ0lfU0NEQlVTXzRCSVRTICAgICAgICAgICAgICAgICgweDIgPDwgIDYpIC8vIChNQ0kpIDQtYml0cyBkYXRhIGJ1cw0KI2RlZmluZSAJQVQ5MUNfTUNJX1NDREJVU184QklUUyAgICAgICAgICAgICAgICAoMHgzIDw8ICA2KSAvLyAoTUNJKSA4LWJpdHMgZGF0YSBidXMNCi8vIC0tLS0tLS0tIE1DSV9DTURSIDogKE1DSSBPZmZzZXQ6IDB4MTQpIE1DSSBDb21tYW5kIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19NQ0lfQ01ETkIgICAgICAgKDB4M0YgPDwgIDApIC8vIChNQ0kpIENvbW1hbmQgTnVtYmVyDQojZGVmaW5lIEFUOTFDX01DSV9SU1BUWVAgICAgICAoMHgzIDw8ICA2KSAvLyAoTUNJKSBSZXNwb25zZSBUeXBlDQojZGVmaW5lIAlBVDkxQ19NQ0lfUlNQVFlQX05PICAgICAgICAgICAgICAgICAgICgweDAgPDwgIDYpIC8vIChNQ0kpIE5vIHJlc3BvbnNlDQojZGVmaW5lIAlBVDkxQ19NQ0lfUlNQVFlQXzQ4ICAgICAgICAgICAgICAgICAgICgweDEgPDwgIDYpIC8vIChNQ0kpIDQ4LWJpdCByZXNwb25zZQ0KI2RlZmluZSAJQVQ5MUNfTUNJX1JTUFRZUF8xMzYgICAgICAgICAgICAgICAgICAoMHgyIDw8ICA2KSAvLyAoTUNJKSAxMzYtYml0IHJlc3BvbnNlDQojZGVmaW5lIAlBVDkxQ19NQ0lfUlNQVFlQX1IxQiAgICAgICAgICAgICAgICAgICgweDMgPDwgIDYpIC8vIChNQ0kpIFIxYiByZXNwb25zZQ0KI2RlZmluZSBBVDkxQ19NQ0lfU1BDTUQgICAgICAgKDB4NyA8PCAgOCkgLy8gKE1DSSkgU3BlY2lhbCBDTUQNCiNkZWZpbmUgCUFUOTFDX01DSV9TUENNRF9OT05FICAgICAgICAgICAgICAgICAoMHgwIDw8ICA4KSAvLyAoTUNJKSBOb3QgYSBzcGVjaWFsIENNRA0KI2RlZmluZSAJQVQ5MUNfTUNJX1NQQ01EX0lOSVQgICAgICAgICAgICAgICAgICgweDEgPDwgIDgpIC8vIChNQ0kpIEluaXRpYWxpemF0aW9uIENNRA0KI2RlZmluZSAJQVQ5MUNfTUNJX1NQQ01EX1NZTkMgICAgICAgICAgICAgICAgICgweDIgPDwgIDgpIC8vIChNQ0kpIFN5bmNocm9uaXplZCBDTUQNCiNkZWZpbmUgCUFUOTFDX01DSV9TUENNRF9DRV9BVEEgICAgICAgICAgICAgICAoMHgzIDw8ICA4KSAvLyAoTUNJKSBDRS1BVEEgQ29tcGxldGlvbiBTaWduYWwgZGlzYWJsZSBDTUQNCiNkZWZpbmUgCUFUOTFDX01DSV9TUENNRF9JVF9DTUQgICAgICAgICAgICAgICAoMHg0IDw8ICA4KSAvLyAoTUNJKSBJbnRlcnJ1cHQgY29tbWFuZA0KI2RlZmluZSAJQVQ5MUNfTUNJX1NQQ01EX0lUX1JFUCAgICAgICAgICAgICAgICgweDUgPDwgIDgpIC8vIChNQ0kpIEludGVycnVwdCByZXNwb25zZQ0KI2RlZmluZSAgICAgQVQ5MUNfTUNJX1NQQ01EX0JPT1RSRVEgICAgICAgICAgICAgICgweDYgPDwgIDgpIC8vIChNQ0kpIEJvb3QgT3BlcmF0aW9uIFJlcXVlc3QNCiNkZWZpbmUgICAgIEFUOTFDX01DSV9TUENNRF9CT09URU5EICAgICAgICAgICAgICAoMHg3IDw8ICA4KSAvLyAoTUNJKSBFbmQgQm9vdCBPcGVyYXRpb24NCiNkZWZpbmUgQVQ5MUNfTUNJX09QRENNRCAgICAgICgweDEgPDwgMTEpIC8vIChNQ0kpIE9wZW4gRHJhaW4gQ29tbWFuZA0KI2RlZmluZSAJQVQ5MUNfTUNJX09QRENNRF9QVVNIUFVMTCAgICAgICAgICAgICAoMHgwIDw8IDExKSAvLyAoTUNJKSBQdXNoL3B1bGwgY29tbWFuZA0KI2RlZmluZSAJQVQ5MUNfTUNJX09QRENNRF9PUEVORFJBSU4gICAgICAgICAgICAoMHgxIDw8IDExKSAvLyAoTUNJKSBPcGVuIGRyYWluIGNvbW1hbmQNCiNkZWZpbmUgQVQ5MUNfTUNJX01BWExBVCAgICAgICgweDEgPDwgMTIpIC8vIChNQ0kpIE1heGltdW0gTGF0ZW5jeSBmb3IgQ29tbWFuZCB0byByZXNwb25kDQojZGVmaW5lIAlBVDkxQ19NQ0lfTUFYTEFUXzUgICAgICAgICAgICAgICAgICAgICgweDAgPDwgMTIpIC8vIChNQ0kpIDUgY3ljbGVzIG1heGltdW0gbGF0ZW5jeQ0KI2RlZmluZSAJQVQ5MUNfTUNJX01BWExBVF82NCAgICAgICAgICAgICAgICAgICAoMHgxIDw8IDEyKSAvLyAoTUNJKSA2NCBjeWNsZXMgbWF4aW11bSBsYXRlbmN5DQojZGVmaW5lIEFUOTFDX01DSV9UUkNNRCAgICAgICAoMHgzIDw8IDE2KSAvLyAoTUNJKSBUcmFuc2ZlciBDTUQNCiNkZWZpbmUgCUFUOTFDX01DSV9UUkNNRF9OTyAgICAgICAgICAgICAgICAgICAoMHgwIDw8IDE2KSAvLyAoTUNJKSBObyB0cmFuc2Zlcg0KI2RlZmluZSAJQVQ5MUNfTUNJX1RSQ01EX1NUQVJUICAgICAgICAgICAgICAgICgweDEgPDwgMTYpIC8vIChNQ0kpIFN0YXJ0IHRyYW5zZmVyDQojZGVmaW5lIAlBVDkxQ19NQ0lfVFJDTURfU1RPUCAgICAgICAgICAgICAgICAgKDB4MiA8PCAxNikgLy8gKE1DSSkgU3RvcCB0cmFuc2Zlcg0KI2RlZmluZSBBVDkxQ19NQ0lfVFJESVIgICAgICAgKDB4MSA8PCAxOCkgLy8gKE1DSSkgVHJhbnNmZXIgRGlyZWN0aW9uDQojZGVmaW5lIAlBVDkxQ19NQ0lfVFJESVJfV1JJVEUgICAgICAgICAgICAgICAgKDB4MCA8PCAxOCkgLy8gKE1DSSkgV3JpdGUNCiNkZWZpbmUgCUFUOTFDX01DSV9UUkRJUl9SRUFEICAgICAgICAgICAgICAgICAoMHgxIDw8IDE4KSAvLyAoTUNJKSBSZWFkDQojZGVmaW5lIEFUOTFDX01DSV9UUlRZUCAgICAgICAoMHg3IDw8IDE5KSAvLyAoTUNJKSBUcmFuc2ZlciBUeXBlDQojZGVmaW5lIAlBVDkxQ19NQ0lfVFJUWVBfQkxPQ0sgICAgICAgICAgICAgICAgKDB4MCA8PCAxOSkgLy8gKE1DSSkgTU1DL1NEQ2FyZCBTaW5nbGUgQmxvY2sgVHJhbnNmZXIgdHlwZQ0KI2RlZmluZSAJQVQ5MUNfTUNJX1RSVFlQX01VTFRJUExFICAgICAgICAgICAgICgweDEgPDwgMTkpIC8vIChNQ0kpIE1NQy9TRENhcmQgTXVsdGlwbGUgQmxvY2sgdHJhbnNmZXIgdHlwZQ0KI2RlZmluZSAJQVQ5MUNfTUNJX1RSVFlQX1NUUkVBTSAgICAgICAgICAgICAgICgweDIgPDwgMTkpIC8vIChNQ0kpIE1NQyBTdHJlYW0gdHJhbnNmZXIgdHlwZQ0KI2RlZmluZSAJQVQ5MUNfTUNJX1RSVFlQX1NESU9fQllURSAgICAgICAgICAgICgweDQgPDwgMTkpIC8vIChNQ0kpIFNESU8gQnl0ZSB0cmFuc2ZlciB0eXBlDQojZGVmaW5lIAlBVDkxQ19NQ0lfVFJUWVBfU0RJT19CTE9DSyAgICAgICAgICAgKDB4NSA8PCAxOSkgLy8gKE1DSSkgU0RJTyBCbG9jayB0cmFuc2ZlciB0eXBlDQojZGVmaW5lIEFUOTFDX01DSV9JT1NQQ01EICAgICAoMHgzIDw8IDI0KSAvLyAoTUNJKSBTRElPIFNwZWNpYWwgQ29tbWFuZA0KI2RlZmluZSAJQVQ5MUNfTUNJX0lPU1BDTURfTk9ORSAgICAgICAgICAgICAgICAgKDB4MCA8PCAyNCkgLy8gKE1DSSkgTk9UIGEgc3BlY2lhbCBjb21tYW5kDQojZGVmaW5lIAlBVDkxQ19NQ0lfSU9TUENNRF9TVVNQRU5EICAgICAgICAgICAgICAoMHgxIDw8IDI0KSAvLyAoTUNJKSBTRElPIFN1c3BlbmQgQ29tbWFuZA0KI2RlZmluZSAJQVQ5MUNfTUNJX0lPU1BDTURfUkVTVU1FICAgICAgICAgICAgICAgKDB4MiA8PCAyNCkgLy8gKE1DSSkgU0RJTyBSZXN1bWUgQ29tbWFuZA0KI2RlZmluZSBBVDkxQ19NQ0lfQVRBQ1MgICAgICAgKDB4MSA8PCAyNikgLy8gKE1DSSkgQVRBIHdpdGggY29tbWFuZCBjb21wbGV0aW9uIHNpZ25hbA0KI2RlZmluZSAJQVQ5MUNfTUNJX0FUQUNTX05PUk1BTCAgICAgICAgICAgICAgICgweDAgPDwgMjYpIC8vIChNQ0kpIG5vcm1hbCBvcGVyYXRpb24gbW9kZQ0KI2RlZmluZSAJQVQ5MUNfTUNJX0FUQUNTX0NPTVBMRVRJT04gICAgICAgICAgICgweDEgPDwgMjYpIC8vIChNQ0kpIGNvbXBsZXRpb24gc2lnbmFsIGlzIGV4cGVjdGVkIHdpdGhpbiBNQ0lfQ1NUT1INCiNkZWZpbmUgQVQ5MUNfTUNJX0JPT1RBQ0sgICAgICgweDEgPDwgMjcpIC8vIChNQ0kpIEJvb3QgT3BlcmF0aW9uIEFja25vd2xlZGdlDQojZGVmaW5lICAgICBBVDkxQ19NQ0lfQk9PVEFDS19ESVNBQkxFICAgICAgICAgICAoMHgwIDw8IDI3KSAvLyAoTUNJKSBCb290IE9wZXJhdGlvbiBBY2tub3dsZWRnZSBEaXNhYmxlZA0KI2RlZmluZSAgICAgQVQ5MUNfTUNJX0JPT1RBQ0tfRU5BQkxFICAgICAgICAgICAgKDB4MSA8PCAyNykgLy8gKE1DSSkgQm9vdCBPcGVyYXRpb24gQWNrbm93bGVkZ2UgRW5hYmxlZA0KLy8gLS0tLS0tLS0gTUNJX0JMS1IgOiAoTUNJIE9mZnNldDogMHgxOCkgTUNJIEJsb2NrIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19NQ0lfQkNOVCAgICAgICAgKDB4RkZGRiA8PCAgMCkgLy8gKE1DSSkgTU1DL1NESU8gQmxvY2sgQ291bnQgLyBTRElPIEJ5dGUgQ291bnQNCi8vIC0tLS0tLS0tIE1DSV9DU1RPUiA6IChNQ0kgT2Zmc2V0OiAweDFjKSBNQ0kgQ29tcGxldGlvbiBTaWduYWwgVGltZW91dCBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfTUNJX0NTVE9DWUMgICAgICgweEYgPDwgIDApIC8vIChNQ0kpIENvbXBsZXRpb24gU2lnbmFsIFRpbWVvdXQgQ3ljbGUgTnVtYmVyDQojZGVmaW5lIEFUOTFDX01DSV9DU1RPTVVMICAgICAoMHg3IDw8ICA0KSAvLyAoTUNJKSBDb21wbGV0aW9uIFNpZ25hbCBUaW1lb3V0IE11bHRpcGxpZXINCiNkZWZpbmUgCUFUOTFDX01DSV9DU1RPTVVMXzEgICAgICAgICAgICAgICAgICAgICgweDAgPDwgIDQpIC8vIChNQ0kpIENTVE9DWUMgeCAxDQojZGVmaW5lIAlBVDkxQ19NQ0lfQ1NUT01VTF8xNiAgICAgICAgICAgICAgICAgICAoMHgxIDw8ICA0KSAvLyAoTUNJKSBDU1RPQ1lDIHggIDE2DQojZGVmaW5lIAlBVDkxQ19NQ0lfQ1NUT01VTF8xMjggICAgICAgICAgICAgICAgICAoMHgyIDw8ICA0KSAvLyAoTUNJKSBDU1RPQ1lDIHggIDEyOA0KI2RlZmluZSAJQVQ5MUNfTUNJX0NTVE9NVUxfMjU2ICAgICAgICAgICAgICAgICAgKDB4MyA8PCAgNCkgLy8gKE1DSSkgQ1NUT0NZQyB4ICAyNTYNCiNkZWZpbmUgCUFUOTFDX01DSV9DU1RPTVVMXzEwMjQgICAgICAgICAgICAgICAgICgweDQgPDwgIDQpIC8vIChNQ0kpIENTVE9DWUMgeCAgMTAyNA0KI2RlZmluZSAJQVQ5MUNfTUNJX0NTVE9NVUxfNDA5NiAgICAgICAgICAgICAgICAgKDB4NSA8PCAgNCkgLy8gKE1DSSkgQ1NUT0NZQyB4ICA0MDk2DQojZGVmaW5lIAlBVDkxQ19NQ0lfQ1NUT01VTF82NTUzNiAgICAgICAgICAgICAgICAoMHg2IDw8ICA0KSAvLyAoTUNJKSBDU1RPQ1lDIHggIDY1NTM2DQojZGVmaW5lIAlBVDkxQ19NQ0lfQ1NUT01VTF8xMDQ4NTc2ICAgICAgICAgICAgICAoMHg3IDw8ICA0KSAvLyAoTUNJKSBDU1RPQ1lDIHggIDEwNDg1NzYNCi8vIC0tLS0tLS0tIE1DSV9TUiA6IChNQ0kgT2Zmc2V0OiAweDQwKSBNQ0kgU3RhdHVzIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19NQ0lfQ01EUkRZICAgICAgKDB4MSA8PCAgMCkgLy8gKE1DSSkgQ29tbWFuZCBSZWFkeSBmbGFnDQojZGVmaW5lIEFUOTFDX01DSV9SWFJEWSAgICAgICAoMHgxIDw8ICAxKSAvLyAoTUNJKSBSWCBSZWFkeSBmbGFnDQojZGVmaW5lIEFUOTFDX01DSV9UWFJEWSAgICAgICAoMHgxIDw8ICAyKSAvLyAoTUNJKSBUWCBSZWFkeSBmbGFnDQojZGVmaW5lIEFUOTFDX01DSV9CTEtFICAgICAgICAoMHgxIDw8ICAzKSAvLyAoTUNJKSBEYXRhIEJsb2NrIFRyYW5zZmVyIEVuZGVkIGZsYWcNCiNkZWZpbmUgQVQ5MUNfTUNJX0RUSVAgICAgICAgICgweDEgPDwgIDQpIC8vIChNQ0kpIERhdGEgVHJhbnNmZXIgaW4gUHJvZ3Jlc3MgZmxhZw0KI2RlZmluZSBBVDkxQ19NQ0lfTk9UQlVTWSAgICAgKDB4MSA8PCAgNSkgLy8gKE1DSSkgRGF0YSBMaW5lIE5vdCBCdXN5IGZsYWcNCiNkZWZpbmUgQVQ5MUNfTUNJX0VORFJYICAgICAgICgweDEgPDwgIDYpIC8vIChNQ0kpIEVuZCBvZiBSWCBCdWZmZXIgZmxhZw0KI2RlZmluZSBBVDkxQ19NQ0lfRU5EVFggICAgICAgKDB4MSA8PCAgNykgLy8gKE1DSSkgRW5kIG9mIFRYIEJ1ZmZlciBmbGFnDQojZGVmaW5lIEFUOTFDX01DSV9TRElPSVJRQSAgICAoMHgxIDw8ICA4KSAvLyAoTUNJKSBTRElPIEludGVycnVwdCBmb3IgU2xvdCBBDQojZGVmaW5lIEFUOTFDX01DSV9TRElPSVJRQiAgICAoMHgxIDw8ICA5KSAvLyAoTUNJKSBTRElPIEludGVycnVwdCBmb3IgU2xvdCBCDQojZGVmaW5lIEFUOTFDX01DSV9TRElPSVJRQyAgICAoMHgxIDw8IDEwKSAvLyAoTUNJKSBTRElPIEludGVycnVwdCBmb3IgU2xvdCBDDQojZGVmaW5lIEFUOTFDX01DSV9TRElPSVJRRCAgICAoMHgxIDw8IDExKSAvLyAoTUNJKSBTRElPIEludGVycnVwdCBmb3IgU2xvdCBEDQojZGVmaW5lIEFUOTFDX01DSV9TRElPV0FJVCAgICAoMHgxIDw8IDEyKSAvLyAoTUNJKSBTRElPIFJlYWQgV2FpdCBvcGVyYXRpb24gZmxhZw0KI2RlZmluZSBBVDkxQ19NQ0lfQ1NSQ1YgICAgICAgKDB4MSA8PCAxMykgLy8gKE1DSSkgQ0UtQVRBIENvbXBsZXRpb24gU2lnbmFsIGZsYWcNCiNkZWZpbmUgQVQ5MUNfTUNJX1JYQlVGRiAgICAgICgweDEgPDwgMTQpIC8vIChNQ0kpIFJYIEJ1ZmZlciBGdWxsIGZsYWcNCiNkZWZpbmUgQVQ5MUNfTUNJX1RYQlVGRSAgICAgICgweDEgPDwgMTUpIC8vIChNQ0kpIFRYIEJ1ZmZlciBFbXB0eSBmbGFnDQojZGVmaW5lIEFUOTFDX01DSV9SSU5ERSAgICAgICAoMHgxIDw8IDE2KSAvLyAoTUNJKSBSZXNwb25zZSBJbmRleCBFcnJvciBmbGFnDQojZGVmaW5lIEFUOTFDX01DSV9SRElSRSAgICAgICAoMHgxIDw8IDE3KSAvLyAoTUNJKSBSZXNwb25zZSBEaXJlY3Rpb24gRXJyb3IgZmxhZw0KI2RlZmluZSBBVDkxQ19NQ0lfUkNSQ0UgICAgICAgKDB4MSA8PCAxOCkgLy8gKE1DSSkgUmVzcG9uc2UgQ1JDIEVycm9yIGZsYWcNCiNkZWZpbmUgQVQ5MUNfTUNJX1JFTkRFICAgICAgICgweDEgPDwgMTkpIC8vIChNQ0kpIFJlc3BvbnNlIEVuZCBCaXQgRXJyb3IgZmxhZw0KI2RlZmluZSBBVDkxQ19NQ0lfUlRPRSAgICAgICAgKDB4MSA8PCAyMCkgLy8gKE1DSSkgUmVzcG9uc2UgVGltZS1vdXQgRXJyb3IgZmxhZw0KI2RlZmluZSBBVDkxQ19NQ0lfRENSQ0UgICAgICAgKDB4MSA8PCAyMSkgLy8gKE1DSSkgZGF0YSBDUkMgRXJyb3IgZmxhZw0KI2RlZmluZSBBVDkxQ19NQ0lfRFRPRSAgICAgICAgKDB4MSA8PCAyMikgLy8gKE1DSSkgRGF0YSB0aW1lb3V0IEVycm9yIGZsYWcNCiNkZWZpbmUgQVQ5MUNfTUNJX0NTVE9FICAgICAgICgweDEgPDwgMjMpIC8vIChNQ0kpIENvbXBsZXRpb24gU2lnbmFsIHRpbWVvdXQgRXJyb3IgZmxhZw0KI2RlZmluZSBBVDkxQ19NQ0lfQkxLT1ZSRSAgICAgKDB4MSA8PCAyNCkgLy8gKE1DSSkgRE1BIEJsb2NrIE92ZXJydW4gRXJyb3IgZmxhZw0KI2RlZmluZSBBVDkxQ19NQ0lfRE1BRE9ORSAgICAgKDB4MSA8PCAyNSkgLy8gKE1DSSkgRE1BIFRyYW5zZmVyIERvbmUgZmxhZw0KI2RlZmluZSBBVDkxQ19NQ0lfRklGT0VNUFRZICAgKDB4MSA8PCAyNikgLy8gKE1DSSkgRklGTyBFbXB0eSBmbGFnDQojZGVmaW5lIEFUOTFDX01DSV9YRlJET05FICAgICAoMHgxIDw8IDI3KSAvLyAoTUNJKSBUcmFuc2ZlciBEb25lIGZsYWcNCiNkZWZpbmUgQVQ5MUNfTUNJX09WUkUgICAgICAgICgweDEgPDwgMzApIC8vIChNQ0kpIE92ZXJydW4gZmxhZw0KI2RlZmluZSBBVDkxQ19NQ0lfVU5SRSAgICAgICAgKDB4MSA8PCAzMSkgLy8gKE1DSSkgVW5kZXJydW4gZmxhZw0KLy8gLS0tLS0tLS0gTUNJX0lFUiA6IChNQ0kgT2Zmc2V0OiAweDQ0KSBNQ0kgSW50ZXJydXB0IEVuYWJsZSBSZWdpc3RlciAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIE1DSV9JRFIgOiAoTUNJIE9mZnNldDogMHg0OCkgTUNJIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KLy8gLS0tLS0tLS0gTUNJX0lNUiA6IChNQ0kgT2Zmc2V0OiAweDRjKSBNQ0kgSW50ZXJydXB0IE1hc2sgUmVnaXN0ZXIgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBNQ0lfRE1BIDogKE1DSSBPZmZzZXQ6IDB4NTApIE1DSSBETUEgQ29uZmlndXJhdGlvbiBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfTUNJX09GRlNFVCAgICAgICgweDMgPDwgIDApIC8vIChNQ0kpIERNQSBXcml0ZSBCdWZmZXIgT2Zmc2V0DQojZGVmaW5lIEFUOTFDX01DSV9DSEtTSVpFICAgICAoMHg3IDw8ICA0KSAvLyAoTUNJKSBETUEgQ2hhbm5lbCBSZWFkL1dyaXRlIENodW5rIFNpemUNCiNkZWZpbmUgCUFUOTFDX01DSV9DSEtTSVpFXzEgICAgICAgICAgICAgICAgICAgICgweDAgPDwgIDQpIC8vIChNQ0kpIE51bWJlciBvZiBkYXRhIHRyYW5zZmVycmVkIGlzIDENCiNkZWZpbmUgCUFUOTFDX01DSV9DSEtTSVpFXzQgICAgICAgICAgICAgICAgICAgICgweDEgPDwgIDQpIC8vIChNQ0kpIE51bWJlciBvZiBkYXRhIHRyYW5zZmVycmVkIGlzIDQNCiNkZWZpbmUgCUFUOTFDX01DSV9DSEtTSVpFXzggICAgICAgICAgICAgICAgICAgICgweDIgPDwgIDQpIC8vIChNQ0kpIE51bWJlciBvZiBkYXRhIHRyYW5zZmVycmVkIGlzIDgNCiNkZWZpbmUgCUFUOTFDX01DSV9DSEtTSVpFXzE2ICAgICAgICAgICAgICAgICAgICgweDMgPDwgIDQpIC8vIChNQ0kpIE51bWJlciBvZiBkYXRhIHRyYW5zZmVycmVkIGlzIDE2DQojZGVmaW5lIAlBVDkxQ19NQ0lfQ0hLU0laRV8zMiAgICAgICAgICAgICAgICAgICAoMHg0IDw8ICA0KSAvLyAoTUNJKSBOdW1iZXIgb2YgZGF0YSB0cmFuc2ZlcnJlZCBpcyAzMg0KI2RlZmluZSBBVDkxQ19NQ0lfRE1BRU4gICAgICAgKDB4MSA8PCAgOCkgLy8gKE1DSSkgRE1BIEhhcmR3YXJlIEhhbmRzaGFraW5nIEVuYWJsZQ0KI2RlZmluZSAJQVQ5MUNfTUNJX0RNQUVOX0RJU0FCTEUgICAgICAgICAgICAgICgweDAgPDwgIDgpIC8vIChNQ0kpIERNQSBpbnRlcmZhY2UgaXMgZGlzYWJsZWQNCiNkZWZpbmUgCUFUOTFDX01DSV9ETUFFTl9FTkFCTEUgICAgICAgICAgICAgICAoMHgxIDw8ICA4KSAvLyAoTUNJKSBETUEgaW50ZXJmYWNlIGlzIGVuYWJsZWQNCi8vIC0tLS0tLS0tIE1DSV9DRkcgOiAoTUNJIE9mZnNldDogMHg1NCkgTUNJIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX01DSV9GSUZPTU9ERSAgICAoMHgxIDw8ICAwKSAvLyAoTUNJKSBNQ0kgSW50ZXJuYWwgRklGTyBDb250cm9sIE1vZGUNCiNkZWZpbmUgCUFUOTFDX01DSV9GSUZPTU9ERV9BTU9VTlREQVRBICAgICAgICAgICAoMHgwKSAvLyAoTUNJKSBBIHdyaXRlIHRyYW5zZmVyIHN0YXJ0cyB3aGVuIGEgc3VmZmljaWVudCBhbW91bnQgb2YgZGF0YXMgaXMgd3JpdHRlbiBpbnRvIHRoZSBGSUZPDQojZGVmaW5lIAlBVDkxQ19NQ0lfRklGT01PREVfT05FREFUQSAgICAgICAgICAgICAgKDB4MSkgLy8gKE1DSSkgQSB3cml0ZSB0cmFuc2ZlciBzdGFydHMgYXMgc29vbiBhcyBvbmUgZGF0YSBpcyB3cml0dGVuIGludG8gdGhlIEZJRk8NCiNkZWZpbmUgQVQ5MUNfTUNJX0ZFUlJDVFJMICAgICgweDEgPDwgIDQpIC8vIChNQ0kpIEZsb3cgRXJyb3IgRmxhZyBSZXNldCBDb250cm9sIE1vZGUNCiNkZWZpbmUgCUFUOTFDX01DSV9GRVJSQ1RSTF9SV0NNRCAgICAgICAgICAgICAgICAoMHgwIDw8ICA0KSAvLyAoTUNJKSBXaGVuIGFuIHVuZGVyZmxvdy9vdmVyZmxvdyBjb25kaXRpb24gZmxhZyBpcyBzZXQsIGEgbmV3IFdyaXRlL1JlYWQgY29tbWFuZCBpcyBuZWVkZWQgdG8gcmVzZXQgdGhlIGZsYWcNCiNkZWZpbmUgCUFUOTFDX01DSV9GRVJSQ1RSTF9SRUFEU1IgICAgICAgICAgICAgICAoMHgxIDw8ICA0KSAvLyAoTUNJKSBXaGVuIGFuIHVuZGVyZmxvdy9vdmVyZmxvdyBjb25kaXRpb24gZmxhZyBpcyBzZXQsIGEgcmVhZCBzdGF0dXMgcmVzZXRzIHRoZSBmbGFnDQojZGVmaW5lIEFUOTFDX01DSV9IU01PREUgICAgICAoMHgxIDw8ICA4KSAvLyAoTUNJKSBIaWdoIFNwZWVkIE1vZGUNCiNkZWZpbmUgCUFUOTFDX01DSV9IU01PREVfRElTQUJMRSAgICAgICAgICAgICAgKDB4MCA8PCAgOCkgLy8gKE1DSSkgRGVmYXVsdCBCdXMgVGltaW5nIE1vZGUNCiNkZWZpbmUgCUFUOTFDX01DSV9IU01PREVfRU5BQkxFICAgICAgICAgICAgICAgKDB4MSA8PCAgOCkgLy8gKE1DSSkgSGlnaCBTcGVlZCBNb2RlDQojZGVmaW5lIEFUOTFDX01DSV9MU1lOQyAgICAgICAoMHgxIDw8IDEyKSAvLyAoTUNJKSBTeW5jaHJvbml6ZSBvbiBsYXN0IGJsb2NrDQojZGVmaW5lIAlBVDkxQ19NQ0lfTFNZTkNfQ1VSUkVOVCAgICAgICAgICAgICAgKDB4MCA8PCAxMikgLy8gKE1DSSkgUGVuZGluZyBjb21tYW5kIHNlbnQgYXQgZW5kIG9mIGN1cnJlbnQgZGF0YSBibG9jaw0KI2RlZmluZSAJQVQ5MUNfTUNJX0xTWU5DX0lORklOSVRFICAgICAgICAgICAgICgweDEgPDwgMTIpIC8vIChNQ0kpIFBlbmRpbmcgY29tbWFuZCBzZW50IGF0IGVuZCBvZiBibG9jayB0cmFuc2ZlciB3aGVuIHRyYW5zZmVyIGxlbmd0aCBpcyBub3QgaW5maW5pdGUNCi8vIC0tLS0tLS0tIE1DSV9XUENSIDogKE1DSSBPZmZzZXQ6IDB4ZTQpIFdyaXRlIFByb3RlY3Rpb24gQ29udHJvbCBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfTUNJX1dQX0VOICAgICAgICgweDEgPDwgIDApIC8vIChNQ0kpIFdyaXRlIFByb3RlY3Rpb24gRW5hYmxlDQojZGVmaW5lIAlBVDkxQ19NQ0lfV1BfRU5fRElTQUJMRSAgICAgICAgICAgICAgKDB4MCkgLy8gKE1DSSkgV3JpdGUgT3BlcmF0aW9uIGlzIGRpc2FibGVkIChpZiBXUF9LRVkgY29ycmVzcG9uZHMpDQojZGVmaW5lIAlBVDkxQ19NQ0lfV1BfRU5fRU5BQkxFICAgICAgICAgICAgICAgKDB4MSkgLy8gKE1DSSkgV3JpdGUgT3BlcmF0aW9uIGlzIGVuYWJsZWQgKGlmIFdQX0tFWSBjb3JyZXNwb25kcykNCiNkZWZpbmUgQVQ5MUNfTUNJX1dQX0tFWSAgICAgICgweEZGRkZGRiA8PCAgOCkgLy8gKE1DSSkgV3JpdGUgUHJvdGVjdGlvbiBLZXkNCi8vIC0tLS0tLS0tIE1DSV9XUFNSIDogKE1DSSBPZmZzZXQ6IDB4ZTgpIFdyaXRlIFByb3RlY3Rpb24gU3RhdHVzIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19NQ0lfV1BfVlMgICAgICAgKDB4RiA8PCAgMCkgLy8gKE1DSSkgV3JpdGUgUHJvdGVjdGlvbiBWaW9sYXRpb24gU3RhdHVzDQojZGVmaW5lIAlBVDkxQ19NQ0lfV1BfVlNfTk9fVklPTEFUSU9OICAgICAgICAgKDB4MCkgLy8gKE1DSSkgTm8gV3JpdGUgUHJvdGVjdGlvbiBWaW9sYXRpb24gZGV0ZWN0ZWQgc2luY2UgbGFzdCByZWFkDQojZGVmaW5lIAlBVDkxQ19NQ0lfV1BfVlNfT05fV1JJVEUgICAgICAgICAgICAgKDB4MSkgLy8gKE1DSSkgV3JpdGUgUHJvdGVjdGlvbiBWaW9sYXRpb24gZGV0ZWN0ZWQgc2luY2UgbGFzdCByZWFkDQojZGVmaW5lIAlBVDkxQ19NQ0lfV1BfVlNfT05fUkVTRVQgICAgICAgICAgICAgKDB4MikgLy8gKE1DSSkgU29mdHdhcmUgUmVzZXQgVmlvbGF0aW9uIGRldGVjdGVkIHNpbmNlIGxhc3QgcmVhZA0KI2RlZmluZSAJQVQ5MUNfTUNJX1dQX1ZTX09OX0JPVEggICAgICAgICAgICAgICgweDMpIC8vIChNQ0kpIFdyaXRlIFByb3RlY3Rpb24gYW5kIFNvZnR3YXJlIFJlc2V0IFZpb2xhdGlvbiBkZXRlY3RlZCBzaW5jZSBsYXN0IHJlYWQNCiNkZWZpbmUgQVQ5MUNfTUNJX1dQX1ZTUkMgICAgICgweEYgPDwgIDgpIC8vIChNQ0kpIFdyaXRlIFByb3RlY3Rpb24gVmlvbGF0aW9uIFNvdXJjZQ0KI2RlZmluZSAJQVQ5MUNfTUNJX1dQX1ZTUkNfTk9fVklPTEFUSU9OICAgICAgICAgKDB4MCA8PCAgOCkgLy8gKE1DSSkgTm8gV3JpdGUgUHJvdGVjdGlvbiBWaW9sYXRpb24gZGV0ZWN0ZWQgc2luY2UgbGFzdCByZWFkDQojZGVmaW5lIAlBVDkxQ19NQ0lfV1BfVlNSQ19NQ0lfTVIgICAgICAgICAgICAgICAoMHgxIDw8ICA4KSAvLyAoTUNJKSBXcml0ZSBQcm90ZWN0aW9uIFZpb2xhdGlvbiBkZXRlY3RlZCBvbiBNQ0lfTVIgc2luY2UgbGFzdCByZWFkDQojZGVmaW5lIAlBVDkxQ19NQ0lfV1BfVlNSQ19NQ0lfRFRPUiAgICAgICAgICAgICAoMHgyIDw8ICA4KSAvLyAoTUNJKSBXcml0ZSBQcm90ZWN0aW9uIFZpb2xhdGlvbiBkZXRlY3RlZCBvbiBNQ0lfRFRPUiBzaW5jZSBsYXN0IHJlYWQNCiNkZWZpbmUgCUFUOTFDX01DSV9XUF9WU1JDX01DSV9TRENSICAgICAgICAgICAgICgweDMgPDwgIDgpIC8vIChNQ0kpIFdyaXRlIFByb3RlY3Rpb24gVmlvbGF0aW9uIGRldGVjdGVkIG9uIE1DSV9TRENSIHNpbmNlIGxhc3QgcmVhZA0KI2RlZmluZSAJQVQ5MUNfTUNJX1dQX1ZTUkNfTUNJX0NTVE9SICAgICAgICAgICAgKDB4NCA8PCAgOCkgLy8gKE1DSSkgV3JpdGUgUHJvdGVjdGlvbiBWaW9sYXRpb24gZGV0ZWN0ZWQgb24gTUNJX0NTVE9SIHNpbmNlIGxhc3QgcmVhZA0KI2RlZmluZSAJQVQ5MUNfTUNJX1dQX1ZTUkNfTUNJX0RNQSAgICAgICAgICAgICAgKDB4NSA8PCAgOCkgLy8gKE1DSSkgV3JpdGUgUHJvdGVjdGlvbiBWaW9sYXRpb24gZGV0ZWN0ZWQgb24gTUNJX0RNQSBzaW5jZSBsYXN0IHJlYWQNCiNkZWZpbmUgCUFUOTFDX01DSV9XUF9WU1JDX01DSV9DRkcgICAgICAgICAgICAgICgweDYgPDwgIDgpIC8vIChNQ0kpIFdyaXRlIFByb3RlY3Rpb24gVmlvbGF0aW9uIGRldGVjdGVkIG9uIE1DSV9DRkcgc2luY2UgbGFzdCByZWFkDQojZGVmaW5lIAlBVDkxQ19NQ0lfV1BfVlNSQ19NQ0lfREVMICAgICAgICAgICAgICAoMHg3IDw8ICA4KSAvLyAoTUNJKSBXcml0ZSBQcm90ZWN0aW9uIFZpb2xhdGlvbiBkZXRlY3RlZCBvbiBNQ0lfREVMIHNpbmNlIGxhc3QgcmVhZA0KLy8gLS0tLS0tLS0gTUNJX1ZFUiA6IChNQ0kgT2Zmc2V0OiAweGZjKSAgVkVSU0lPTiAgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX01DSV9WRVIgICAgICAgICAoMHhGIDw8ICAwKSAvLyAoTUNJKSAgVkVSU0lPTiAgUmVnaXN0ZXINCg0KLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCi8vICAgICAgICAgICAgICBTT0ZUV0FSRSBBUEkgREVGSU5JVElPTiAgRk9SIFR3by13aXJlIEludGVyZmFjZQ0KLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCiNpZm5kZWYgX19BU1NFTUJMWV9fDQp0eXBlZGVmIHN0cnVjdCBfQVQ5MVNfVFdJIHsNCglBVDkxX1JFRwkgVFdJX0NSOyAJLy8gQ29udHJvbCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBUV0lfTU1SOyAJLy8gTWFzdGVyIE1vZGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgVFdJX1NNUjsgCS8vIFNsYXZlIE1vZGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgVFdJX0lBRFI7IAkvLyBJbnRlcm5hbCBBZGRyZXNzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFRXSV9DV0dSOyAJLy8gQ2xvY2sgV2F2ZWZvcm0gR2VuZXJhdG9yIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkMFszXTsgCS8vIA0KCUFUOTFfUkVHCSBUV0lfU1I7IAkvLyBTdGF0dXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgVFdJX0lFUjsgCS8vIEludGVycnVwdCBFbmFibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgVFdJX0lEUjsgCS8vIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFRXSV9JTVI7IAkvLyBJbnRlcnJ1cHQgTWFzayBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBUV0lfUkhSOyAJLy8gUmVjZWl2ZSBIb2xkaW5nIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFRXSV9USFI7IAkvLyBUcmFuc21pdCBIb2xkaW5nIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkMVs0NV07IAkvLyANCglBVDkxX1JFRwkgVFdJX0FERFJTSVpFOyAJLy8gVFdJIEFERFJTSVpFIFJFR0lTVEVSIA0KCUFUOTFfUkVHCSBUV0lfSVBOQU1FMTsgCS8vIFRXSSBJUE5BTUUxIFJFR0lTVEVSIA0KCUFUOTFfUkVHCSBUV0lfSVBOQU1FMjsgCS8vIFRXSSBJUE5BTUUyIFJFR0lTVEVSIA0KCUFUOTFfUkVHCSBUV0lfRkVBVFVSRVM7IAkvLyBUV0kgRkVBVFVSRVMgUkVHSVNURVIgDQoJQVQ5MV9SRUcJIFRXSV9WRVI7IAkvLyBWZXJzaW9uIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFRXSV9SUFI7IAkvLyBSZWNlaXZlIFBvaW50ZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgVFdJX1JDUjsgCS8vIFJlY2VpdmUgQ291bnRlciBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBUV0lfVFBSOyAJLy8gVHJhbnNtaXQgUG9pbnRlciBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBUV0lfVENSOyAJLy8gVHJhbnNtaXQgQ291bnRlciBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBUV0lfUk5QUjsgCS8vIFJlY2VpdmUgTmV4dCBQb2ludGVyIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFRXSV9STkNSOyAJLy8gUmVjZWl2ZSBOZXh0IENvdW50ZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgVFdJX1ROUFI7IAkvLyBUcmFuc21pdCBOZXh0IFBvaW50ZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgVFdJX1ROQ1I7IAkvLyBUcmFuc21pdCBOZXh0IENvdW50ZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgVFdJX1BUQ1I7IAkvLyBQREMgVHJhbnNmZXIgQ29udHJvbCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBUV0lfUFRTUjsgCS8vIFBEQyBUcmFuc2ZlciBTdGF0dXMgUmVnaXN0ZXINCn0gQVQ5MVNfVFdJLCAqQVQ5MVBTX1RXSTsNCiNlbHNlDQojZGVmaW5lIFRXSV9DUiAgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDAwKSAvLyAoVFdJX0NSKSBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIFRXSV9NTVIgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDA0KSAvLyAoVFdJX01NUikgTWFzdGVyIE1vZGUgUmVnaXN0ZXINCiNkZWZpbmUgVFdJX1NNUiAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMDgpIC8vIChUV0lfU01SKSBTbGF2ZSBNb2RlIFJlZ2lzdGVyDQojZGVmaW5lIFRXSV9JQURSICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDBDKSAvLyAoVFdJX0lBRFIpIEludGVybmFsIEFkZHJlc3MgUmVnaXN0ZXINCiNkZWZpbmUgVFdJX0NXR1IgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMTApIC8vIChUV0lfQ1dHUikgQ2xvY2sgV2F2ZWZvcm0gR2VuZXJhdG9yIFJlZ2lzdGVyDQojZGVmaW5lIFRXSV9TUiAgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDIwKSAvLyAoVFdJX1NSKSBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgVFdJX0lFUiAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMjQpIC8vIChUV0lfSUVSKSBJbnRlcnJ1cHQgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIFRXSV9JRFIgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDI4KSAvLyAoVFdJX0lEUikgSW50ZXJydXB0IERpc2FibGUgUmVnaXN0ZXINCiNkZWZpbmUgVFdJX0lNUiAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMkMpIC8vIChUV0lfSU1SKSBJbnRlcnJ1cHQgTWFzayBSZWdpc3Rlcg0KI2RlZmluZSBUV0lfUkhSICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAzMCkgLy8gKFRXSV9SSFIpIFJlY2VpdmUgSG9sZGluZyBSZWdpc3Rlcg0KI2RlZmluZSBUV0lfVEhSICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAzNCkgLy8gKFRXSV9USFIpIFRyYW5zbWl0IEhvbGRpbmcgUmVnaXN0ZXINCiNkZWZpbmUgVFdJX0FERFJTSVpFICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwRUMpIC8vIChUV0lfQUREUlNJWkUpIFRXSSBBRERSU0laRSBSRUdJU1RFUiANCiNkZWZpbmUgVFdJX0lQTkFNRTEgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwRjApIC8vIChUV0lfSVBOQU1FMSkgVFdJIElQTkFNRTEgUkVHSVNURVIgDQojZGVmaW5lIFRXSV9JUE5BTUUyICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMEY0KSAvLyAoVFdJX0lQTkFNRTIpIFRXSSBJUE5BTUUyIFJFR0lTVEVSIA0KI2RlZmluZSBUV0lfRkVBVFVSRVMgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDBGOCkgLy8gKFRXSV9GRUFUVVJFUykgVFdJIEZFQVRVUkVTIFJFR0lTVEVSIA0KI2RlZmluZSBUV0lfVkVSICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDBGQykgLy8gKFRXSV9WRVIpIFZlcnNpb24gUmVnaXN0ZXINCg0KI2VuZGlmDQovLyAtLS0tLS0tLSBUV0lfQ1IgOiAoVFdJIE9mZnNldDogMHgwKSBUV0kgQ29udHJvbCBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfVFdJX1NUQVJUICAgICAgICgweDEgPDwgIDApIC8vIChUV0kpIFNlbmQgYSBTVEFSVCBDb25kaXRpb24NCiNkZWZpbmUgQVQ5MUNfVFdJX1NUT1AgICAgICAgICgweDEgPDwgIDEpIC8vIChUV0kpIFNlbmQgYSBTVE9QIENvbmRpdGlvbg0KI2RlZmluZSBBVDkxQ19UV0lfTVNFTiAgICAgICAgKDB4MSA8PCAgMikgLy8gKFRXSSkgVFdJIE1hc3RlciBUcmFuc2ZlciBFbmFibGVkDQojZGVmaW5lIEFUOTFDX1RXSV9NU0RJUyAgICAgICAoMHgxIDw8ICAzKSAvLyAoVFdJKSBUV0kgTWFzdGVyIFRyYW5zZmVyIERpc2FibGVkDQojZGVmaW5lIEFUOTFDX1RXSV9TVkVOICAgICAgICAoMHgxIDw8ICA0KSAvLyAoVFdJKSBUV0kgU2xhdmUgbW9kZSBFbmFibGVkDQojZGVmaW5lIEFUOTFDX1RXSV9TVkRJUyAgICAgICAoMHgxIDw8ICA1KSAvLyAoVFdJKSBUV0kgU2xhdmUgbW9kZSBEaXNhYmxlZA0KI2RlZmluZSBBVDkxQ19UV0lfU1dSU1QgICAgICAgKDB4MSA8PCAgNykgLy8gKFRXSSkgU29mdHdhcmUgUmVzZXQNCi8vIC0tLS0tLS0tIFRXSV9NTVIgOiAoVFdJIE9mZnNldDogMHg0KSBUV0kgTWFzdGVyIE1vZGUgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1RXSV9JQURSU1ogICAgICAoMHgzIDw8ICA4KSAvLyAoVFdJKSBJbnRlcm5hbCBEZXZpY2UgQWRkcmVzcyBTaXplDQojZGVmaW5lIAlBVDkxQ19UV0lfSUFEUlNaX05PICAgICAgICAgICAgICAgICAgICgweDAgPDwgIDgpIC8vIChUV0kpIE5vIGludGVybmFsIGRldmljZSBhZGRyZXNzDQojZGVmaW5lIAlBVDkxQ19UV0lfSUFEUlNaXzFfQllURSAgICAgICAgICAgICAgICgweDEgPDwgIDgpIC8vIChUV0kpIE9uZS1ieXRlIGludGVybmFsIGRldmljZSBhZGRyZXNzDQojZGVmaW5lIAlBVDkxQ19UV0lfSUFEUlNaXzJfQllURSAgICAgICAgICAgICAgICgweDIgPDwgIDgpIC8vIChUV0kpIFR3by1ieXRlIGludGVybmFsIGRldmljZSBhZGRyZXNzDQojZGVmaW5lIAlBVDkxQ19UV0lfSUFEUlNaXzNfQllURSAgICAgICAgICAgICAgICgweDMgPDwgIDgpIC8vIChUV0kpIFRocmVlLWJ5dGUgaW50ZXJuYWwgZGV2aWNlIGFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfVFdJX01SRUFEICAgICAgICgweDEgPDwgMTIpIC8vIChUV0kpIE1hc3RlciBSZWFkIERpcmVjdGlvbg0KI2RlZmluZSBBVDkxQ19UV0lfREFEUiAgICAgICAgKDB4N0YgPDwgMTYpIC8vIChUV0kpIERldmljZSBBZGRyZXNzDQovLyAtLS0tLS0tLSBUV0lfU01SIDogKFRXSSBPZmZzZXQ6IDB4OCkgVFdJIFNsYXZlIE1vZGUgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1RXSV9TQURSICAgICAgICAoMHg3RiA8PCAxNikgLy8gKFRXSSkgU2xhdmUgQWRkcmVzcw0KLy8gLS0tLS0tLS0gVFdJX0NXR1IgOiAoVFdJIE9mZnNldDogMHgxMCkgVFdJIENsb2NrIFdhdmVmb3JtIEdlbmVyYXRvciBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfVFdJX0NMRElWICAgICAgICgweEZGIDw8ICAwKSAvLyAoVFdJKSBDbG9jayBMb3cgRGl2aWRlcg0KI2RlZmluZSBBVDkxQ19UV0lfQ0hESVYgICAgICAgKDB4RkYgPDwgIDgpIC8vIChUV0kpIENsb2NrIEhpZ2ggRGl2aWRlcg0KI2RlZmluZSBBVDkxQ19UV0lfQ0tESVYgICAgICAgKDB4NyA8PCAxNikgLy8gKFRXSSkgQ2xvY2sgRGl2aWRlcg0KLy8gLS0tLS0tLS0gVFdJX1NSIDogKFRXSSBPZmZzZXQ6IDB4MjApIFRXSSBTdGF0dXMgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1RXSV9UWENPTVBfU0xBVkUgKDB4MSA8PCAgMCkgLy8gKFRXSSkgVHJhbnNtaXNzaW9uIENvbXBsZXRlZA0KI2RlZmluZSBBVDkxQ19UV0lfVFhDT01QX01BU1RFUiAoMHgxIDw8ICAwKSAvLyAoVFdJKSBUcmFuc21pc3Npb24gQ29tcGxldGVkDQojZGVmaW5lIEFUOTFDX1RXSV9SWFJEWSAgICAgICAoMHgxIDw8ICAxKSAvLyAoVFdJKSBSZWNlaXZlIGhvbGRpbmcgcmVnaXN0ZXIgUmVhRFkNCiNkZWZpbmUgQVQ5MUNfVFdJX1RYUkRZX01BU1RFUiAoMHgxIDw8ICAyKSAvLyAoVFdJKSBUcmFuc21pdCBob2xkaW5nIHJlZ2lzdGVyIFJlYURZDQojZGVmaW5lIEFUOTFDX1RXSV9UWFJEWV9TTEFWRSAoMHgxIDw8ICAyKSAvLyAoVFdJKSBUcmFuc21pdCBob2xkaW5nIHJlZ2lzdGVyIFJlYURZDQojZGVmaW5lIEFUOTFDX1RXSV9TVlJFQUQgICAgICAoMHgxIDw8ICAzKSAvLyAoVFdJKSBTbGF2ZSBSRUFEICh1c2VkIG9ubHkgaW4gU2xhdmUgbW9kZSkNCiNkZWZpbmUgQVQ5MUNfVFdJX1NWQUNDICAgICAgICgweDEgPDwgIDQpIC8vIChUV0kpIFNsYXZlIEFDQ2VzcyAodXNlZCBvbmx5IGluIFNsYXZlIG1vZGUpDQojZGVmaW5lIEFUOTFDX1RXSV9HQUNDICAgICAgICAoMHgxIDw8ICA1KSAvLyAoVFdJKSBHZW5lcmFsIENhbGwgQUNjZXNzICh1c2VkIG9ubHkgaW4gU2xhdmUgbW9kZSkNCiNkZWZpbmUgQVQ5MUNfVFdJX09WUkUgICAgICAgICgweDEgPDwgIDYpIC8vIChUV0kpIE92ZXJydW4gRXJyb3IgKHVzZWQgb25seSBpbiBNYXN0ZXIgYW5kIE11bHRpLW1hc3RlciBtb2RlKQ0KI2RlZmluZSBBVDkxQ19UV0lfTkFDS19TTEFWRSAgKDB4MSA8PCAgOCkgLy8gKFRXSSkgTm90IEFja25vd2xlZGdlZA0KI2RlZmluZSBBVDkxQ19UV0lfTkFDS19NQVNURVIgKDB4MSA8PCAgOCkgLy8gKFRXSSkgTm90IEFja25vd2xlZGdlZA0KI2RlZmluZSBBVDkxQ19UV0lfQVJCTFNUX01VTFRJX01BU1RFUiAoMHgxIDw8ICA5KSAvLyAoVFdJKSBBcmJpdHJhdGlvbiBMb3N0ICh1c2VkIG9ubHkgaW4gTXVsdGltYXN0ZXIgbW9kZSkNCiNkZWZpbmUgQVQ5MUNfVFdJX1NDTFdTICAgICAgICgweDEgPDwgMTApIC8vIChUV0kpIENsb2NrIFdhaXQgU3RhdGUgKHVzZWQgb25seSBpbiBTbGF2ZSBtb2RlKQ0KI2RlZmluZSBBVDkxQ19UV0lfRU9TQUNDICAgICAgKDB4MSA8PCAxMSkgLy8gKFRXSSkgRW5kIE9mIFNsYXZlIEFDQ2VzcyAodXNlZCBvbmx5IGluIFNsYXZlIG1vZGUpDQojZGVmaW5lIEFUOTFDX1RXSV9FTkRSWCAgICAgICAoMHgxIDw8IDEyKSAvLyAoVFdJKSBFbmQgb2YgUmVjZWl2ZXIgVHJhbnNmZXINCiNkZWZpbmUgQVQ5MUNfVFdJX0VORFRYICAgICAgICgweDEgPDwgMTMpIC8vIChUV0kpIEVuZCBvZiBSZWNlaXZlciBUcmFuc2Zlcg0KI2RlZmluZSBBVDkxQ19UV0lfUlhCVUZGICAgICAgKDB4MSA8PCAxNCkgLy8gKFRXSSkgUlhCVUZGIEludGVycnVwdA0KI2RlZmluZSBBVDkxQ19UV0lfVFhCVUZFICAgICAgKDB4MSA8PCAxNSkgLy8gKFRXSSkgVFhCVUZFIEludGVycnVwdA0KLy8gLS0tLS0tLS0gVFdJX0lFUiA6IChUV0kgT2Zmc2V0OiAweDI0KSBUV0kgSW50ZXJydXB0IEVuYWJsZSBSZWdpc3RlciAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIFRXSV9JRFIgOiAoVFdJIE9mZnNldDogMHgyOCkgVFdJIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KLy8gLS0tLS0tLS0gVFdJX0lNUiA6IChUV0kgT2Zmc2V0OiAweDJjKSBUV0kgSW50ZXJydXB0IE1hc2sgUmVnaXN0ZXIgLS0tLS0tLS0gDQoNCi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQovLyAgICAgICAgICAgICAgU09GVFdBUkUgQVBJIERFRklOSVRJT04gIEZPUiBVc2FydA0KLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCiNpZm5kZWYgX19BU1NFTUJMWV9fDQp0eXBlZGVmIHN0cnVjdCBfQVQ5MVNfVVNBUlQgew0KCUFUOTFfUkVHCSBVU19DUjsgCS8vIENvbnRyb2wgUmVnaXN0ZXINCglBVDkxX1JFRwkgVVNfTVI7IAkvLyBNb2RlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFVTX0lFUjsgCS8vIEludGVycnVwdCBFbmFibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgVVNfSURSOyAJLy8gSW50ZXJydXB0IERpc2FibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgVVNfSU1SOyAJLy8gSW50ZXJydXB0IE1hc2sgUmVnaXN0ZXINCglBVDkxX1JFRwkgVVNfQ1NSOyAJLy8gQ2hhbm5lbCBTdGF0dXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgVVNfUkhSOyAJLy8gUmVjZWl2ZXIgSG9sZGluZyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBVU19USFI7IAkvLyBUcmFuc21pdHRlciBIb2xkaW5nIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFVTX0JSR1I7IAkvLyBCYXVkIFJhdGUgR2VuZXJhdG9yIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFVTX1JUT1I7IAkvLyBSZWNlaXZlciBUaW1lLW91dCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBVU19UVEdSOyAJLy8gVHJhbnNtaXR0ZXIgVGltZS1ndWFyZCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDBbNV07IAkvLyANCglBVDkxX1JFRwkgVVNfRklESTsgCS8vIEZJX0RJX1JhdGlvIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFVTX05FUjsgCS8vIE5iIEVycm9ycyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDFbMV07IAkvLyANCglBVDkxX1JFRwkgVVNfSUY7IAkvLyBJUkRBX0ZJTFRFUiBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBVU19NQU47IAkvLyBNYW5jaGVzdGVyIEVuY29kZXIgRGVjb2RlciBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDJbMzhdOyAJLy8gDQoJQVQ5MV9SRUcJIFVTX0FERFJTSVpFOyAJLy8gVVMgQUREUlNJWkUgUkVHSVNURVIgDQoJQVQ5MV9SRUcJIFVTX0lQTkFNRTE7IAkvLyBVUyBJUE5BTUUxIFJFR0lTVEVSIA0KCUFUOTFfUkVHCSBVU19JUE5BTUUyOyAJLy8gVVMgSVBOQU1FMiBSRUdJU1RFUiANCglBVDkxX1JFRwkgVVNfRkVBVFVSRVM7IAkvLyBVUyBGRUFUVVJFUyBSRUdJU1RFUiANCglBVDkxX1JFRwkgVVNfVkVSOyAJLy8gVkVSU0lPTiBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBVU19SUFI7IAkvLyBSZWNlaXZlIFBvaW50ZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgVVNfUkNSOyAJLy8gUmVjZWl2ZSBDb3VudGVyIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFVTX1RQUjsgCS8vIFRyYW5zbWl0IFBvaW50ZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgVVNfVENSOyAJLy8gVHJhbnNtaXQgQ291bnRlciBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBVU19STlBSOyAJLy8gUmVjZWl2ZSBOZXh0IFBvaW50ZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgVVNfUk5DUjsgCS8vIFJlY2VpdmUgTmV4dCBDb3VudGVyIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFVTX1ROUFI7IAkvLyBUcmFuc21pdCBOZXh0IFBvaW50ZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgVVNfVE5DUjsgCS8vIFRyYW5zbWl0IE5leHQgQ291bnRlciBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBVU19QVENSOyAJLy8gUERDIFRyYW5zZmVyIENvbnRyb2wgUmVnaXN0ZXINCglBVDkxX1JFRwkgVVNfUFRTUjsgCS8vIFBEQyBUcmFuc2ZlciBTdGF0dXMgUmVnaXN0ZXINCn0gQVQ5MVNfVVNBUlQsICpBVDkxUFNfVVNBUlQ7DQojZWxzZQ0KI2RlZmluZSBVU19DUiAgICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAwMCkgLy8gKFVTX0NSKSBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIFVTX01SICAgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDA0KSAvLyAoVVNfTVIpIE1vZGUgUmVnaXN0ZXINCiNkZWZpbmUgVVNfSUVSICAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMDgpIC8vIChVU19JRVIpIEludGVycnVwdCBFbmFibGUgUmVnaXN0ZXINCiNkZWZpbmUgVVNfSURSICAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMEMpIC8vIChVU19JRFIpIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyDQojZGVmaW5lIFVTX0lNUiAgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDEwKSAvLyAoVVNfSU1SKSBJbnRlcnJ1cHQgTWFzayBSZWdpc3Rlcg0KI2RlZmluZSBVU19DU1IgICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAxNCkgLy8gKFVTX0NTUikgQ2hhbm5lbCBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgVVNfUkhSICAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMTgpIC8vIChVU19SSFIpIFJlY2VpdmVyIEhvbGRpbmcgUmVnaXN0ZXINCiNkZWZpbmUgVVNfVEhSICAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMUMpIC8vIChVU19USFIpIFRyYW5zbWl0dGVyIEhvbGRpbmcgUmVnaXN0ZXINCiNkZWZpbmUgVVNfQlJHUiAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMjApIC8vIChVU19CUkdSKSBCYXVkIFJhdGUgR2VuZXJhdG9yIFJlZ2lzdGVyDQojZGVmaW5lIFVTX1JUT1IgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDI0KSAvLyAoVVNfUlRPUikgUmVjZWl2ZXIgVGltZS1vdXQgUmVnaXN0ZXINCiNkZWZpbmUgVVNfVFRHUiAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMjgpIC8vIChVU19UVEdSKSBUcmFuc21pdHRlciBUaW1lLWd1YXJkIFJlZ2lzdGVyDQojZGVmaW5lIFVTX0ZJREkgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDQwKSAvLyAoVVNfRklESSkgRklfRElfUmF0aW8gUmVnaXN0ZXINCiNkZWZpbmUgVVNfTkVSICAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNDQpIC8vIChVU19ORVIpIE5iIEVycm9ycyBSZWdpc3Rlcg0KI2RlZmluZSBVU19JRiAgICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDA0QykgLy8gKFVTX0lGKSBJUkRBX0ZJTFRFUiBSZWdpc3Rlcg0KI2RlZmluZSBVU19NQU4gICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDA1MCkgLy8gKFVTX01BTikgTWFuY2hlc3RlciBFbmNvZGVyIERlY29kZXIgUmVnaXN0ZXINCiNkZWZpbmUgVVNfQUREUlNJWkUgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwRUMpIC8vIChVU19BRERSU0laRSkgVVMgQUREUlNJWkUgUkVHSVNURVIgDQojZGVmaW5lIFVTX0lQTkFNRTEgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMEYwKSAvLyAoVVNfSVBOQU1FMSkgVVMgSVBOQU1FMSBSRUdJU1RFUiANCiNkZWZpbmUgVVNfSVBOQU1FMiAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwRjQpIC8vIChVU19JUE5BTUUyKSBVUyBJUE5BTUUyIFJFR0lTVEVSIA0KI2RlZmluZSBVU19GRUFUVVJFUyAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDBGOCkgLy8gKFVTX0ZFQVRVUkVTKSBVUyBGRUFUVVJFUyBSRUdJU1RFUiANCiNkZWZpbmUgVVNfVkVSICAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwRkMpIC8vIChVU19WRVIpIFZFUlNJT04gUmVnaXN0ZXINCg0KI2VuZGlmDQovLyAtLS0tLS0tLSBVU19DUiA6IChVU0FSVCBPZmZzZXQ6IDB4MCkgIENvbnRyb2wgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1VTX1NUVEJSSyAgICAgICAoMHgxIDw8ICA5KSAvLyAoVVNBUlQpIFN0YXJ0IEJyZWFrDQojZGVmaW5lIEFUOTFDX1VTX1NUUEJSSyAgICAgICAoMHgxIDw8IDEwKSAvLyAoVVNBUlQpIFN0b3AgQnJlYWsNCiNkZWZpbmUgQVQ5MUNfVVNfU1RUVE8gICAgICAgICgweDEgPDwgMTEpIC8vIChVU0FSVCkgU3RhcnQgVGltZS1vdXQNCiNkZWZpbmUgQVQ5MUNfVVNfU0VOREEgICAgICAgICgweDEgPDwgMTIpIC8vIChVU0FSVCkgU2VuZCBBZGRyZXNzDQojZGVmaW5lIEFUOTFDX1VTX1JTVElUICAgICAgICAoMHgxIDw8IDEzKSAvLyAoVVNBUlQpIFJlc2V0IEl0ZXJhdGlvbnMNCiNkZWZpbmUgQVQ5MUNfVVNfUlNUTkFDSyAgICAgICgweDEgPDwgMTQpIC8vIChVU0FSVCkgUmVzZXQgTm9uIEFja25vd2xlZGdlDQojZGVmaW5lIEFUOTFDX1VTX1JFVFRPICAgICAgICAoMHgxIDw8IDE1KSAvLyAoVVNBUlQpIFJlYXJtIFRpbWUtb3V0DQojZGVmaW5lIEFUOTFDX1VTX0RUUkVOICAgICAgICAoMHgxIDw8IDE2KSAvLyAoVVNBUlQpIERhdGEgVGVybWluYWwgcmVhZHkgRW5hYmxlDQojZGVmaW5lIEFUOTFDX1VTX0RUUkRJUyAgICAgICAoMHgxIDw8IDE3KSAvLyAoVVNBUlQpIERhdGEgVGVybWluYWwgcmVhZHkgRGlzYWJsZQ0KI2RlZmluZSBBVDkxQ19VU19SVFNFTiAgICAgICAgKDB4MSA8PCAxOCkgLy8gKFVTQVJUKSBSZXF1ZXN0IHRvIFNlbmQgZW5hYmxlDQojZGVmaW5lIEFUOTFDX1VTX1JUU0RJUyAgICAgICAoMHgxIDw8IDE5KSAvLyAoVVNBUlQpIFJlcXVlc3QgdG8gU2VuZCBEaXNhYmxlDQovLyAtLS0tLS0tLSBVU19NUiA6IChVU0FSVCBPZmZzZXQ6IDB4NCkgIE1vZGUgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1VTX1VTTU9ERSAgICAgICAoMHhGIDw8ICAwKSAvLyAoVVNBUlQpIFVzYXJ0IG1vZGUNCiNkZWZpbmUgCUFUOTFDX1VTX1VTTU9ERV9OT1JNQUwgICAgICAgICAgICAgICAoMHgwKSAvLyAoVVNBUlQpIE5vcm1hbA0KI2RlZmluZSAJQVQ5MUNfVVNfVVNNT0RFX1JTNDg1ICAgICAgICAgICAgICAgICgweDEpIC8vIChVU0FSVCkgUlM0ODUNCiNkZWZpbmUgCUFUOTFDX1VTX1VTTU9ERV9IV0hTSCAgICAgICAgICAgICAgICAoMHgyKSAvLyAoVVNBUlQpIEhhcmR3YXJlIEhhbmRzaGFraW5nDQojZGVmaW5lIAlBVDkxQ19VU19VU01PREVfTU9ERU0gICAgICAgICAgICAgICAgKDB4MykgLy8gKFVTQVJUKSBNb2RlbQ0KI2RlZmluZSAJQVQ5MUNfVVNfVVNNT0RFX0lTTzc4MTZfMCAgICAgICAgICAgICgweDQpIC8vIChVU0FSVCkgSVNPNzgxNiBwcm90b2NvbDogVCA9IDANCiNkZWZpbmUgCUFUOTFDX1VTX1VTTU9ERV9JU083ODE2XzEgICAgICAgICAgICAoMHg2KSAvLyAoVVNBUlQpIElTTzc4MTYgcHJvdG9jb2w6IFQgPSAxDQojZGVmaW5lIAlBVDkxQ19VU19VU01PREVfSVJEQSAgICAgICAgICAgICAgICAgKDB4OCkgLy8gKFVTQVJUKSBJckRBDQojZGVmaW5lIAlBVDkxQ19VU19VU01PREVfU1dIU0ggICAgICAgICAgICAgICAgKDB4QykgLy8gKFVTQVJUKSBTb2Z0d2FyZSBIYW5kc2hha2luZw0KI2RlZmluZSBBVDkxQ19VU19DTEtTICAgICAgICAgKDB4MyA8PCAgNCkgLy8gKFVTQVJUKSBDbG9jayBTZWxlY3Rpb24gKEJhdWQgUmF0ZSBnZW5lcmF0b3IgSW5wdXQgQ2xvY2sNCiNkZWZpbmUgCUFUOTFDX1VTX0NMS1NfQ0xPQ0sgICAgICAgICAgICAgICAgKDB4MCA8PCAgNCkgLy8gKFVTQVJUKSBDbG9jaw0KI2RlZmluZSAJQVQ5MUNfVVNfQ0xLU19GRElWMSAgICAgICAgICAgICAgICAoMHgxIDw8ICA0KSAvLyAoVVNBUlQpIGZkaXYxDQojZGVmaW5lIAlBVDkxQ19VU19DTEtTX1NMT1cgICAgICAgICAgICAgICAgICgweDIgPDwgIDQpIC8vIChVU0FSVCkgc2xvd19jbG9jayAoQVJNKQ0KI2RlZmluZSAJQVQ5MUNfVVNfQ0xLU19FWFQgICAgICAgICAgICAgICAgICAoMHgzIDw8ICA0KSAvLyAoVVNBUlQpIEV4dGVybmFsIChTQ0spDQojZGVmaW5lIEFUOTFDX1VTX0NIUkwgICAgICAgICAoMHgzIDw8ICA2KSAvLyAoVVNBUlQpIENsb2NrIFNlbGVjdGlvbiAoQmF1ZCBSYXRlIGdlbmVyYXRvciBJbnB1dCBDbG9jaw0KI2RlZmluZSAJQVQ5MUNfVVNfQ0hSTF81X0JJVFMgICAgICAgICAgICAgICAoMHgwIDw8ICA2KSAvLyAoVVNBUlQpIENoYXJhY3RlciBMZW5ndGg6IDUgYml0cw0KI2RlZmluZSAJQVQ5MUNfVVNfQ0hSTF82X0JJVFMgICAgICAgICAgICAgICAoMHgxIDw8ICA2KSAvLyAoVVNBUlQpIENoYXJhY3RlciBMZW5ndGg6IDYgYml0cw0KI2RlZmluZSAJQVQ5MUNfVVNfQ0hSTF83X0JJVFMgICAgICAgICAgICAgICAoMHgyIDw8ICA2KSAvLyAoVVNBUlQpIENoYXJhY3RlciBMZW5ndGg6IDcgYml0cw0KI2RlZmluZSAJQVQ5MUNfVVNfQ0hSTF84X0JJVFMgICAgICAgICAgICAgICAoMHgzIDw8ICA2KSAvLyAoVVNBUlQpIENoYXJhY3RlciBMZW5ndGg6IDggYml0cw0KI2RlZmluZSBBVDkxQ19VU19TWU5DICAgICAgICAgKDB4MSA8PCAgOCkgLy8gKFVTQVJUKSBTeW5jaHJvbm91cyBNb2RlIFNlbGVjdA0KI2RlZmluZSBBVDkxQ19VU19OQlNUT1AgICAgICAgKDB4MyA8PCAxMikgLy8gKFVTQVJUKSBOdW1iZXIgb2YgU3RvcCBiaXRzDQojZGVmaW5lIAlBVDkxQ19VU19OQlNUT1BfMV9CSVQgICAgICAgICAgICAgICAgKDB4MCA8PCAxMikgLy8gKFVTQVJUKSAxIHN0b3AgYml0DQojZGVmaW5lIAlBVDkxQ19VU19OQlNUT1BfMTVfQklUICAgICAgICAgICAgICAgKDB4MSA8PCAxMikgLy8gKFVTQVJUKSBBc3luY2hyb25vdXMgKFNZTkM9MCkgMiBzdG9wIGJpdHMgU3luY2hyb25vdXMgKFNZTkM9MSkgMiBzdG9wIGJpdHMNCiNkZWZpbmUgCUFUOTFDX1VTX05CU1RPUF8yX0JJVCAgICAgICAgICAgICAgICAoMHgyIDw8IDEyKSAvLyAoVVNBUlQpIDIgc3RvcCBiaXRzDQojZGVmaW5lIEFUOTFDX1VTX01TQkYgICAgICAgICAoMHgxIDw8IDE2KSAvLyAoVVNBUlQpIEJpdCBPcmRlcg0KI2RlZmluZSBBVDkxQ19VU19NT0RFOSAgICAgICAgKDB4MSA8PCAxNykgLy8gKFVTQVJUKSA5LWJpdCBDaGFyYWN0ZXIgbGVuZ3RoDQojZGVmaW5lIEFUOTFDX1VTX0NLTE8gICAgICAgICAoMHgxIDw8IDE4KSAvLyAoVVNBUlQpIENsb2NrIE91dHB1dCBTZWxlY3QNCiNkZWZpbmUgQVQ5MUNfVVNfT1ZFUiAgICAgICAgICgweDEgPDwgMTkpIC8vIChVU0FSVCkgT3ZlciBTYW1wbGluZyBNb2RlDQojZGVmaW5lIEFUOTFDX1VTX0lOQUNLICAgICAgICAoMHgxIDw8IDIwKSAvLyAoVVNBUlQpIEluaGliaXQgTm9uIEFja25vd2xlZGdlDQojZGVmaW5lIEFUOTFDX1VTX0RTTkFDSyAgICAgICAoMHgxIDw8IDIxKSAvLyAoVVNBUlQpIERpc2FibGUgU3VjY2Vzc2l2ZSBOQUNLDQojZGVmaW5lIEFUOTFDX1VTX1ZBUl9TWU5DICAgICAoMHgxIDw8IDIyKSAvLyAoVVNBUlQpIFZhcmlhYmxlIHN5bmNocm9uaXphdGlvbiBvZiBjb21tYW5kL2RhdGEgc3luYyBTdGFydCBGcmFtZSBEZWxpbWl0ZXINCiNkZWZpbmUgQVQ5MUNfVVNfTUFYX0lURVIgICAgICgweDEgPDwgMjQpIC8vIChVU0FSVCkgTnVtYmVyIG9mIFJlcGV0aXRpb25zDQojZGVmaW5lIEFUOTFDX1VTX0ZJTFRFUiAgICAgICAoMHgxIDw8IDI4KSAvLyAoVVNBUlQpIFJlY2VpdmUgTGluZSBGaWx0ZXINCiNkZWZpbmUgQVQ5MUNfVVNfTUFOTU9ERSAgICAgICgweDEgPDwgMjkpIC8vIChVU0FSVCkgTWFuY2hlc3RlciBFbmNvZGVyL0RlY29kZXIgRW5hYmxlDQojZGVmaW5lIEFUOTFDX1VTX01PRFNZTkMgICAgICAoMHgxIDw8IDMwKSAvLyAoVVNBUlQpIE1hbmNoZXN0ZXIgU3luY2hyb25pemF0aW9uIG1vZGUNCiNkZWZpbmUgQVQ5MUNfVVNfT05FQklUICAgICAgICgweDEgPDwgMzEpIC8vIChVU0FSVCkgU3RhcnQgRnJhbWUgRGVsaW1pdGVyIHNlbGVjdG9yDQovLyAtLS0tLS0tLSBVU19JRVIgOiAoVVNBUlQgT2Zmc2V0OiAweDgpICBJbnRlcnJ1cHQgRW5hYmxlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19VU19SWEJSSyAgICAgICAgKDB4MSA8PCAgMikgLy8gKFVTQVJUKSBCcmVhayBSZWNlaXZlZC9FbmQgb2YgQnJlYWsNCiNkZWZpbmUgQVQ5MUNfVVNfVElNRU9VVCAgICAgICgweDEgPDwgIDgpIC8vIChVU0FSVCkgUmVjZWl2ZXIgVGltZS1vdXQNCiNkZWZpbmUgQVQ5MUNfVVNfSVRFUkFUSU9OICAgICgweDEgPDwgMTApIC8vIChVU0FSVCkgTWF4IG51bWJlciBvZiBSZXBldGl0aW9ucyBSZWFjaGVkDQojZGVmaW5lIEFUOTFDX1VTX05BQ0sgICAgICAgICAoMHgxIDw8IDEzKSAvLyAoVVNBUlQpIE5vbiBBY2tub3dsZWRnZQ0KI2RlZmluZSBBVDkxQ19VU19SSUlDICAgICAgICAgKDB4MSA8PCAxNikgLy8gKFVTQVJUKSBSaW5nIElOZGljYXRvciBJbnB1dCBDaGFuZ2UgRmxhZw0KI2RlZmluZSBBVDkxQ19VU19EU1JJQyAgICAgICAgKDB4MSA8PCAxNykgLy8gKFVTQVJUKSBEYXRhIFNldCBSZWFkeSBJbnB1dCBDaGFuZ2UgRmxhZw0KI2RlZmluZSBBVDkxQ19VU19EQ0RJQyAgICAgICAgKDB4MSA8PCAxOCkgLy8gKFVTQVJUKSBEYXRhIENhcnJpZXIgRmxhZw0KI2RlZmluZSBBVDkxQ19VU19DVFNJQyAgICAgICAgKDB4MSA8PCAxOSkgLy8gKFVTQVJUKSBDbGVhciBUbyBTZW5kIElucHV0IENoYW5nZSBGbGFnDQojZGVmaW5lIEFUOTFDX1VTX01BTkUgICAgICAgICAoMHgxIDw8IDIwKSAvLyAoVVNBUlQpIE1hbmNoZXN0ZXIgRXJyb3IgSW50ZXJydXB0DQovLyAtLS0tLS0tLSBVU19JRFIgOiAoVVNBUlQgT2Zmc2V0OiAweGMpICBJbnRlcnJ1cHQgRGlzYWJsZSBSZWdpc3RlciAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIFVTX0lNUiA6IChVU0FSVCBPZmZzZXQ6IDB4MTApICBJbnRlcnJ1cHQgTWFzayBSZWdpc3RlciAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIFVTX0NTUiA6IChVU0FSVCBPZmZzZXQ6IDB4MTQpICBDaGFubmVsIFN0YXR1cyBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfVVNfUkkgICAgICAgICAgICgweDEgPDwgMjApIC8vIChVU0FSVCkgSW1hZ2Ugb2YgUkkgSW5wdXQNCiNkZWZpbmUgQVQ5MUNfVVNfRFNSICAgICAgICAgICgweDEgPDwgMjEpIC8vIChVU0FSVCkgSW1hZ2Ugb2YgRFNSIElucHV0DQojZGVmaW5lIEFUOTFDX1VTX0RDRCAgICAgICAgICAoMHgxIDw8IDIyKSAvLyAoVVNBUlQpIEltYWdlIG9mIERDRCBJbnB1dA0KI2RlZmluZSBBVDkxQ19VU19DVFMgICAgICAgICAgKDB4MSA8PCAyMykgLy8gKFVTQVJUKSBJbWFnZSBvZiBDVFMgSW5wdXQNCiNkZWZpbmUgQVQ5MUNfVVNfTUFORVJSICAgICAgICgweDEgPDwgMjQpIC8vIChVU0FSVCkgTWFuY2hlc3RlciBFcnJvcg0KLy8gLS0tLS0tLS0gVVNfTUFOIDogKFVTQVJUIE9mZnNldDogMHg1MCkgTWFuY2hlc3RlciBFbmNvZGVyIERlY29kZXIgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1VTX1RYX1BMICAgICAgICAoMHhGIDw8ICAwKSAvLyAoVVNBUlQpIFRyYW5zbWl0dGVyIFByZWFtYmxlIExlbmd0aA0KI2RlZmluZSBBVDkxQ19VU19UWF9QUCAgICAgICAgKDB4MyA8PCAgOCkgLy8gKFVTQVJUKSBUcmFuc21pdHRlciBQcmVhbWJsZSBQYXR0ZXJuDQojZGVmaW5lIAlBVDkxQ19VU19UWF9QUF9BTExfT05FICAgICAgICAgICAgICAoMHgwIDw8ICA4KSAvLyAoVVNBUlQpIEFMTF9PTkUNCiNkZWZpbmUgCUFUOTFDX1VTX1RYX1BQX0FMTF9aRVJPICAgICAgICAgICAgICgweDEgPDwgIDgpIC8vIChVU0FSVCkgQUxMX1pFUk8NCiNkZWZpbmUgCUFUOTFDX1VTX1RYX1BQX1pFUk9fT05FICAgICAgICAgICAgICgweDIgPDwgIDgpIC8vIChVU0FSVCkgWkVST19PTkUNCiNkZWZpbmUgCUFUOTFDX1VTX1RYX1BQX09ORV9aRVJPICAgICAgICAgICAgICgweDMgPDwgIDgpIC8vIChVU0FSVCkgT05FX1pFUk8NCiNkZWZpbmUgQVQ5MUNfVVNfVFhfTVBPTCAgICAgICgweDEgPDwgMTIpIC8vIChVU0FSVCkgVHJhbnNtaXR0ZXIgTWFuY2hlc3RlciBQb2xhcml0eQ0KI2RlZmluZSBBVDkxQ19VU19SWF9QTCAgICAgICAgKDB4RiA8PCAxNikgLy8gKFVTQVJUKSBSZWNlaXZlciBQcmVhbWJsZSBMZW5ndGgNCiNkZWZpbmUgQVQ5MUNfVVNfUlhfUFAgICAgICAgICgweDMgPDwgMjQpIC8vIChVU0FSVCkgUmVjZWl2ZXIgUHJlYW1ibGUgUGF0dGVybiBkZXRlY3RlZA0KI2RlZmluZSAJQVQ5MUNfVVNfUlhfUFBfQUxMX09ORSAgICAgICAgICAgICAgKDB4MCA8PCAyNCkgLy8gKFVTQVJUKSBBTExfT05FDQojZGVmaW5lIAlBVDkxQ19VU19SWF9QUF9BTExfWkVSTyAgICAgICAgICAgICAoMHgxIDw8IDI0KSAvLyAoVVNBUlQpIEFMTF9aRVJPDQojZGVmaW5lIAlBVDkxQ19VU19SWF9QUF9aRVJPX09ORSAgICAgICAgICAgICAoMHgyIDw8IDI0KSAvLyAoVVNBUlQpIFpFUk9fT05FDQojZGVmaW5lIAlBVDkxQ19VU19SWF9QUF9PTkVfWkVSTyAgICAgICAgICAgICAoMHgzIDw8IDI0KSAvLyAoVVNBUlQpIE9ORV9aRVJPDQojZGVmaW5lIEFUOTFDX1VTX1JYX01QT0wgICAgICAoMHgxIDw8IDI4KSAvLyAoVVNBUlQpIFJlY2VpdmVyIE1hbmNoZXN0ZXIgUG9sYXJpdHkNCiNkZWZpbmUgQVQ5MUNfVVNfRFJJRlQgICAgICAgICgweDEgPDwgMzApIC8vIChVU0FSVCkgRHJpZnQgY29tcGVuc2F0aW9uDQoNCi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQovLyAgICAgICAgICAgICAgU09GVFdBUkUgQVBJIERFRklOSVRJT04gIEZPUiBTeW5jaHJvbm91cyBTZXJpYWwgQ29udHJvbGxlciBJbnRlcmZhY2UNCi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQojaWZuZGVmIF9fQVNTRU1CTFlfXw0KdHlwZWRlZiBzdHJ1Y3QgX0FUOTFTX1NTQyB7DQoJQVQ5MV9SRUcJIFNTQ19DUjsgCS8vIENvbnRyb2wgUmVnaXN0ZXINCglBVDkxX1JFRwkgU1NDX0NNUjsgCS8vIENsb2NrIE1vZGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQwWzJdOyAJLy8gDQoJQVQ5MV9SRUcJIFNTQ19SQ01SOyAJLy8gUmVjZWl2ZSBDbG9jayBNb2RlUmVnaXN0ZXINCglBVDkxX1JFRwkgU1NDX1JGTVI7IAkvLyBSZWNlaXZlIEZyYW1lIE1vZGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgU1NDX1RDTVI7IAkvLyBUcmFuc21pdCBDbG9jayBNb2RlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFNTQ19URk1SOyAJLy8gVHJhbnNtaXQgRnJhbWUgTW9kZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBTU0NfUkhSOyAJLy8gUmVjZWl2ZSBIb2xkaW5nIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFNTQ19USFI7IAkvLyBUcmFuc21pdCBIb2xkaW5nIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkMVsyXTsgCS8vIA0KCUFUOTFfUkVHCSBTU0NfUlNIUjsgCS8vIFJlY2VpdmUgU3luYyBIb2xkaW5nIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFNTQ19UU0hSOyAJLy8gVHJhbnNtaXQgU3luYyBIb2xkaW5nIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkMlsyXTsgCS8vIA0KCUFUOTFfUkVHCSBTU0NfU1I7IAkvLyBTdGF0dXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgU1NDX0lFUjsgCS8vIEludGVycnVwdCBFbmFibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgU1NDX0lEUjsgCS8vIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFNTQ19JTVI7IAkvLyBJbnRlcnJ1cHQgTWFzayBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDNbMzldOyAJLy8gDQoJQVQ5MV9SRUcJIFNTQ19BRERSU0laRTsgCS8vIFNTQyBBRERSU0laRSBSRUdJU1RFUiANCglBVDkxX1JFRwkgU1NDX0lQTkFNRTE7IAkvLyBTU0MgSVBOQU1FMSBSRUdJU1RFUiANCglBVDkxX1JFRwkgU1NDX0lQTkFNRTI7IAkvLyBTU0MgSVBOQU1FMiBSRUdJU1RFUiANCglBVDkxX1JFRwkgU1NDX0ZFQVRVUkVTOyAJLy8gU1NDIEZFQVRVUkVTIFJFR0lTVEVSIA0KCUFUOTFfUkVHCSBTU0NfVkVSOyAJLy8gVmVyc2lvbiBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBTU0NfUlBSOyAJLy8gUmVjZWl2ZSBQb2ludGVyIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFNTQ19SQ1I7IAkvLyBSZWNlaXZlIENvdW50ZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgU1NDX1RQUjsgCS8vIFRyYW5zbWl0IFBvaW50ZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgU1NDX1RDUjsgCS8vIFRyYW5zbWl0IENvdW50ZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgU1NDX1JOUFI7IAkvLyBSZWNlaXZlIE5leHQgUG9pbnRlciBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBTU0NfUk5DUjsgCS8vIFJlY2VpdmUgTmV4dCBDb3VudGVyIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFNTQ19UTlBSOyAJLy8gVHJhbnNtaXQgTmV4dCBQb2ludGVyIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFNTQ19UTkNSOyAJLy8gVHJhbnNtaXQgTmV4dCBDb3VudGVyIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFNTQ19QVENSOyAJLy8gUERDIFRyYW5zZmVyIENvbnRyb2wgUmVnaXN0ZXINCglBVDkxX1JFRwkgU1NDX1BUU1I7IAkvLyBQREMgVHJhbnNmZXIgU3RhdHVzIFJlZ2lzdGVyDQp9IEFUOTFTX1NTQywgKkFUOTFQU19TU0M7DQojZWxzZQ0KI2RlZmluZSBTU0NfQ1IgICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAwMCkgLy8gKFNTQ19DUikgQ29udHJvbCBSZWdpc3Rlcg0KI2RlZmluZSBTU0NfQ01SICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAwNCkgLy8gKFNTQ19DTVIpIENsb2NrIE1vZGUgUmVnaXN0ZXINCiNkZWZpbmUgU1NDX1JDTVIgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMTApIC8vIChTU0NfUkNNUikgUmVjZWl2ZSBDbG9jayBNb2RlUmVnaXN0ZXINCiNkZWZpbmUgU1NDX1JGTVIgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMTQpIC8vIChTU0NfUkZNUikgUmVjZWl2ZSBGcmFtZSBNb2RlIFJlZ2lzdGVyDQojZGVmaW5lIFNTQ19UQ01SICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDE4KSAvLyAoU1NDX1RDTVIpIFRyYW5zbWl0IENsb2NrIE1vZGUgUmVnaXN0ZXINCiNkZWZpbmUgU1NDX1RGTVIgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMUMpIC8vIChTU0NfVEZNUikgVHJhbnNtaXQgRnJhbWUgTW9kZSBSZWdpc3Rlcg0KI2RlZmluZSBTU0NfUkhSICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAyMCkgLy8gKFNTQ19SSFIpIFJlY2VpdmUgSG9sZGluZyBSZWdpc3Rlcg0KI2RlZmluZSBTU0NfVEhSICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAyNCkgLy8gKFNTQ19USFIpIFRyYW5zbWl0IEhvbGRpbmcgUmVnaXN0ZXINCiNkZWZpbmUgU1NDX1JTSFIgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMzApIC8vIChTU0NfUlNIUikgUmVjZWl2ZSBTeW5jIEhvbGRpbmcgUmVnaXN0ZXINCiNkZWZpbmUgU1NDX1RTSFIgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMzQpIC8vIChTU0NfVFNIUikgVHJhbnNtaXQgU3luYyBIb2xkaW5nIFJlZ2lzdGVyDQojZGVmaW5lIFNTQ19TUiAgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDQwKSAvLyAoU1NDX1NSKSBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgU1NDX0lFUiAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNDQpIC8vIChTU0NfSUVSKSBJbnRlcnJ1cHQgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIFNTQ19JRFIgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDQ4KSAvLyAoU1NDX0lEUikgSW50ZXJydXB0IERpc2FibGUgUmVnaXN0ZXINCiNkZWZpbmUgU1NDX0lNUiAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNEMpIC8vIChTU0NfSU1SKSBJbnRlcnJ1cHQgTWFzayBSZWdpc3Rlcg0KI2RlZmluZSBTU0NfQUREUlNJWkUgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDBFQykgLy8gKFNTQ19BRERSU0laRSkgU1NDIEFERFJTSVpFIFJFR0lTVEVSIA0KI2RlZmluZSBTU0NfSVBOQU1FMSAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDBGMCkgLy8gKFNTQ19JUE5BTUUxKSBTU0MgSVBOQU1FMSBSRUdJU1RFUiANCiNkZWZpbmUgU1NDX0lQTkFNRTIgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwRjQpIC8vIChTU0NfSVBOQU1FMikgU1NDIElQTkFNRTIgUkVHSVNURVIgDQojZGVmaW5lIFNTQ19GRUFUVVJFUyAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMEY4KSAvLyAoU1NDX0ZFQVRVUkVTKSBTU0MgRkVBVFVSRVMgUkVHSVNURVIgDQojZGVmaW5lIFNTQ19WRVIgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMEZDKSAvLyAoU1NDX1ZFUikgVmVyc2lvbiBSZWdpc3Rlcg0KDQojZW5kaWYNCi8vIC0tLS0tLS0tIFNTQ19DUiA6IChTU0MgT2Zmc2V0OiAweDApIFNTQyBDb250cm9sIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19TU0NfUlhFTiAgICAgICAgKDB4MSA8PCAgMCkgLy8gKFNTQykgUmVjZWl2ZSBFbmFibGUNCiNkZWZpbmUgQVQ5MUNfU1NDX1JYRElTICAgICAgICgweDEgPDwgIDEpIC8vIChTU0MpIFJlY2VpdmUgRGlzYWJsZQ0KI2RlZmluZSBBVDkxQ19TU0NfVFhFTiAgICAgICAgKDB4MSA8PCAgOCkgLy8gKFNTQykgVHJhbnNtaXQgRW5hYmxlDQojZGVmaW5lIEFUOTFDX1NTQ19UWERJUyAgICAgICAoMHgxIDw8ICA5KSAvLyAoU1NDKSBUcmFuc21pdCBEaXNhYmxlDQojZGVmaW5lIEFUOTFDX1NTQ19TV1JTVCAgICAgICAoMHgxIDw8IDE1KSAvLyAoU1NDKSBTb2Z0d2FyZSBSZXNldA0KLy8gLS0tLS0tLS0gU1NDX1JDTVIgOiAoU1NDIE9mZnNldDogMHgxMCkgU1NDIFJlY2VpdmUgQ2xvY2sgTW9kZSBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfU1NDX0NLUyAgICAgICAgICgweDMgPDwgIDApIC8vIChTU0MpIFJlY2VpdmUvVHJhbnNtaXQgQ2xvY2sgU2VsZWN0aW9uDQojZGVmaW5lIAlBVDkxQ19TU0NfQ0tTX0RJViAgICAgICAgICAgICAgICAgICgweDApIC8vIChTU0MpIERpdmlkZWQgQ2xvY2sNCiNkZWZpbmUgCUFUOTFDX1NTQ19DS1NfVEsgICAgICAgICAgICAgICAgICAgKDB4MSkgLy8gKFNTQykgVEsgQ2xvY2sgc2lnbmFsDQojZGVmaW5lIAlBVDkxQ19TU0NfQ0tTX1JLICAgICAgICAgICAgICAgICAgICgweDIpIC8vIChTU0MpIFJLIHBpbg0KI2RlZmluZSBBVDkxQ19TU0NfQ0tPICAgICAgICAgKDB4NyA8PCAgMikgLy8gKFNTQykgUmVjZWl2ZS9UcmFuc21pdCBDbG9jayBPdXRwdXQgTW9kZSBTZWxlY3Rpb24NCiNkZWZpbmUgCUFUOTFDX1NTQ19DS09fTk9ORSAgICAgICAgICAgICAgICAgKDB4MCA8PCAgMikgLy8gKFNTQykgUmVjZWl2ZS9UcmFuc21pdCBDbG9jayBPdXRwdXQgTW9kZTogTm9uZSBSSyBwaW46IElucHV0LW9ubHkNCiNkZWZpbmUgCUFUOTFDX1NTQ19DS09fQ09OVElOT1VTICAgICAgICAgICAgKDB4MSA8PCAgMikgLy8gKFNTQykgQ29udGludW91cyBSZWNlaXZlL1RyYW5zbWl0IENsb2NrIFJLIHBpbjogT3V0cHV0DQojZGVmaW5lIAlBVDkxQ19TU0NfQ0tPX0RBVEFfVFggICAgICAgICAgICAgICgweDIgPDwgIDIpIC8vIChTU0MpIFJlY2VpdmUvVHJhbnNtaXQgQ2xvY2sgb25seSBkdXJpbmcgZGF0YSB0cmFuc2ZlcnMgUksgcGluOiBPdXRwdXQNCiNkZWZpbmUgQVQ5MUNfU1NDX0NLSSAgICAgICAgICgweDEgPDwgIDUpIC8vIChTU0MpIFJlY2VpdmUvVHJhbnNtaXQgQ2xvY2sgSW52ZXJzaW9uDQojZGVmaW5lIEFUOTFDX1NTQ19DS0cgICAgICAgICAoMHgzIDw8ICA2KSAvLyAoU1NDKSBSZWNlaXZlL1RyYW5zbWl0IENsb2NrIEdhdGluZyBTZWxlY3Rpb24NCiNkZWZpbmUgCUFUOTFDX1NTQ19DS0dfTk9ORSAgICAgICAgICAgICAgICAgKDB4MCA8PCAgNikgLy8gKFNTQykgUmVjZWl2ZS9UcmFuc21pdCBDbG9jayBHYXRpbmc6IE5vbmUsIGNvbnRpbnVvdXMgY2xvY2sNCiNkZWZpbmUgCUFUOTFDX1NTQ19DS0dfTE9XICAgICAgICAgICAgICAgICAgKDB4MSA8PCAgNikgLy8gKFNTQykgUmVjZWl2ZS9UcmFuc21pdCBDbG9jayBlbmFibGVkIG9ubHkgaWYgUkYgTG93DQojZGVmaW5lIAlBVDkxQ19TU0NfQ0tHX0hJR0ggICAgICAgICAgICAgICAgICgweDIgPDwgIDYpIC8vIChTU0MpIFJlY2VpdmUvVHJhbnNtaXQgQ2xvY2sgZW5hYmxlZCBvbmx5IGlmIFJGIEhpZ2gNCiNkZWZpbmUgQVQ5MUNfU1NDX1NUQVJUICAgICAgICgweEYgPDwgIDgpIC8vIChTU0MpIFJlY2VpdmUvVHJhbnNtaXQgU3RhcnQgU2VsZWN0aW9uDQojZGVmaW5lIAlBVDkxQ19TU0NfU1RBUlRfQ09OVElOT1VTICAgICAgICAgICAgKDB4MCA8PCAgOCkgLy8gKFNTQykgQ29udGludW91cywgYXMgc29vbiBhcyB0aGUgcmVjZWl2ZXIgaXMgZW5hYmxlZCwgYW5kIGltbWVkaWF0ZWx5IGFmdGVyIHRoZSBlbmQgb2YgdHJhbnNmZXIgb2YgdGhlIHByZXZpb3VzIGRhdGEuDQojZGVmaW5lIAlBVDkxQ19TU0NfU1RBUlRfVFggICAgICAgICAgICAgICAgICAgKDB4MSA8PCAgOCkgLy8gKFNTQykgVHJhbnNtaXQvUmVjZWl2ZSBzdGFydA0KI2RlZmluZSAJQVQ5MUNfU1NDX1NUQVJUX0xPV19SRiAgICAgICAgICAgICAgICgweDIgPDwgIDgpIC8vIChTU0MpIERldGVjdGlvbiBvZiBhIGxvdyBsZXZlbCBvbiBSRiBpbnB1dA0KI2RlZmluZSAJQVQ5MUNfU1NDX1NUQVJUX0hJR0hfUkYgICAgICAgICAgICAgICgweDMgPDwgIDgpIC8vIChTU0MpIERldGVjdGlvbiBvZiBhIGhpZ2ggbGV2ZWwgb24gUkYgaW5wdXQNCiNkZWZpbmUgCUFUOTFDX1NTQ19TVEFSVF9GQUxMX1JGICAgICAgICAgICAgICAoMHg0IDw8ICA4KSAvLyAoU1NDKSBEZXRlY3Rpb24gb2YgYSBmYWxsaW5nIGVkZ2Ugb24gUkYgaW5wdXQNCiNkZWZpbmUgCUFUOTFDX1NTQ19TVEFSVF9SSVNFX1JGICAgICAgICAgICAgICAoMHg1IDw8ICA4KSAvLyAoU1NDKSBEZXRlY3Rpb24gb2YgYSByaXNpbmcgZWRnZSBvbiBSRiBpbnB1dA0KI2RlZmluZSAJQVQ5MUNfU1NDX1NUQVJUX0xFVkVMX1JGICAgICAgICAgICAgICgweDYgPDwgIDgpIC8vIChTU0MpIERldGVjdGlvbiBvZiBhbnkgbGV2ZWwgY2hhbmdlIG9uIFJGIGlucHV0DQojZGVmaW5lIAlBVDkxQ19TU0NfU1RBUlRfRURHRV9SRiAgICAgICAgICAgICAgKDB4NyA8PCAgOCkgLy8gKFNTQykgRGV0ZWN0aW9uIG9mIGFueSBlZGdlIG9uIFJGIGlucHV0DQojZGVmaW5lIAlBVDkxQ19TU0NfU1RBUlRfMCAgICAgICAgICAgICAgICAgICAgKDB4OCA8PCAgOCkgLy8gKFNTQykgQ29tcGFyZSAwDQojZGVmaW5lIEFUOTFDX1NTQ19TVE9QICAgICAgICAoMHgxIDw8IDEyKSAvLyAoU1NDKSBSZWNlaXZlIFN0b3AgU2VsZWN0aW9uDQojZGVmaW5lIEFUOTFDX1NTQ19TVFRETFkgICAgICAoMHhGRiA8PCAxNikgLy8gKFNTQykgUmVjZWl2ZS9UcmFuc21pdCBTdGFydCBEZWxheQ0KI2RlZmluZSBBVDkxQ19TU0NfUEVSSU9EICAgICAgKDB4RkYgPDwgMjQpIC8vIChTU0MpIFJlY2VpdmUvVHJhbnNtaXQgUGVyaW9kIERpdmlkZXIgU2VsZWN0aW9uDQovLyAtLS0tLS0tLSBTU0NfUkZNUiA6IChTU0MgT2Zmc2V0OiAweDE0KSBTU0MgUmVjZWl2ZSBGcmFtZSBNb2RlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19TU0NfREFUTEVOICAgICAgKDB4MUYgPDwgIDApIC8vIChTU0MpIERhdGEgTGVuZ3RoDQojZGVmaW5lIEFUOTFDX1NTQ19MT09QICAgICAgICAoMHgxIDw8ICA1KSAvLyAoU1NDKSBMb29wIE1vZGUNCiNkZWZpbmUgQVQ5MUNfU1NDX01TQkYgICAgICAgICgweDEgPDwgIDcpIC8vIChTU0MpIE1vc3QgU2lnbmlmaWNhbnQgQml0IEZpcnN0DQojZGVmaW5lIEFUOTFDX1NTQ19EQVROQiAgICAgICAoMHhGIDw8ICA4KSAvLyAoU1NDKSBEYXRhIE51bWJlciBwZXIgRnJhbWUNCiNkZWZpbmUgQVQ5MUNfU1NDX0ZTTEVOICAgICAgICgweEYgPDwgMTYpIC8vIChTU0MpIFJlY2VpdmUvVHJhbnNtaXQgRnJhbWUgU3luYyBsZW5ndGgNCiNkZWZpbmUgQVQ5MUNfU1NDX0ZTT1MgICAgICAgICgweDcgPDwgMjApIC8vIChTU0MpIFJlY2VpdmUvVHJhbnNtaXQgRnJhbWUgU3luYyBPdXRwdXQgU2VsZWN0aW9uDQojZGVmaW5lIAlBVDkxQ19TU0NfRlNPU19OT05FICAgICAgICAgICAgICAgICAoMHgwIDw8IDIwKSAvLyAoU1NDKSBTZWxlY3RlZCBSZWNlaXZlL1RyYW5zbWl0IEZyYW1lIFN5bmMgU2lnbmFsOiBOb25lIFJLIHBpbiBJbnB1dC1vbmx5DQojZGVmaW5lIAlBVDkxQ19TU0NfRlNPU19ORUdBVElWRSAgICAgICAgICAgICAoMHgxIDw8IDIwKSAvLyAoU1NDKSBTZWxlY3RlZCBSZWNlaXZlL1RyYW5zbWl0IEZyYW1lIFN5bmMgU2lnbmFsOiBOZWdhdGl2ZSBQdWxzZQ0KI2RlZmluZSAJQVQ5MUNfU1NDX0ZTT1NfUE9TSVRJVkUgICAgICAgICAgICAgKDB4MiA8PCAyMCkgLy8gKFNTQykgU2VsZWN0ZWQgUmVjZWl2ZS9UcmFuc21pdCBGcmFtZSBTeW5jIFNpZ25hbDogUG9zaXRpdmUgUHVsc2UNCiNkZWZpbmUgCUFUOTFDX1NTQ19GU09TX0xPVyAgICAgICAgICAgICAgICAgICgweDMgPDwgMjApIC8vIChTU0MpIFNlbGVjdGVkIFJlY2VpdmUvVHJhbnNtaXQgRnJhbWUgU3luYyBTaWduYWw6IERyaXZlciBMb3cgZHVyaW5nIGRhdGEgdHJhbnNmZXINCiNkZWZpbmUgCUFUOTFDX1NTQ19GU09TX0hJR0ggICAgICAgICAgICAgICAgICgweDQgPDwgMjApIC8vIChTU0MpIFNlbGVjdGVkIFJlY2VpdmUvVHJhbnNtaXQgRnJhbWUgU3luYyBTaWduYWw6IERyaXZlciBIaWdoIGR1cmluZyBkYXRhIHRyYW5zZmVyDQojZGVmaW5lIAlBVDkxQ19TU0NfRlNPU19UT0dHTEUgICAgICAgICAgICAgICAoMHg1IDw8IDIwKSAvLyAoU1NDKSBTZWxlY3RlZCBSZWNlaXZlL1RyYW5zbWl0IEZyYW1lIFN5bmMgU2lnbmFsOiBUb2dnbGluZyBhdCBlYWNoIHN0YXJ0IG9mIGRhdGEgdHJhbnNmZXINCiNkZWZpbmUgQVQ5MUNfU1NDX0ZTRURHRSAgICAgICgweDEgPDwgMjQpIC8vIChTU0MpIEZyYW1lIFN5bmMgRWRnZSBEZXRlY3Rpb24NCi8vIC0tLS0tLS0tIFNTQ19UQ01SIDogKFNTQyBPZmZzZXQ6IDB4MTgpIFNTQyBUcmFuc21pdCBDbG9jayBNb2RlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KLy8gLS0tLS0tLS0gU1NDX1RGTVIgOiAoU1NDIE9mZnNldDogMHgxYykgU1NDIFRyYW5zbWl0IEZyYW1lIE1vZGUgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1NTQ19EQVRERUYgICAgICAoMHgxIDw8ICA1KSAvLyAoU1NDKSBEYXRhIERlZmF1bHQgVmFsdWUNCiNkZWZpbmUgQVQ5MUNfU1NDX0ZTREVOICAgICAgICgweDEgPDwgMjMpIC8vIChTU0MpIEZyYW1lIFN5bmMgRGF0YSBFbmFibGUNCi8vIC0tLS0tLS0tIFNTQ19TUiA6IChTU0MgT2Zmc2V0OiAweDQwKSBTU0MgU3RhdHVzIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19TU0NfVFhSRFkgICAgICAgKDB4MSA8PCAgMCkgLy8gKFNTQykgVHJhbnNtaXQgUmVhZHkNCiNkZWZpbmUgQVQ5MUNfU1NDX1RYRU1QVFkgICAgICgweDEgPDwgIDEpIC8vIChTU0MpIFRyYW5zbWl0IEVtcHR5DQojZGVmaW5lIEFUOTFDX1NTQ19FTkRUWCAgICAgICAoMHgxIDw8ICAyKSAvLyAoU1NDKSBFbmQgT2YgVHJhbnNtaXNzaW9uDQojZGVmaW5lIEFUOTFDX1NTQ19UWEJVRkUgICAgICAoMHgxIDw8ICAzKSAvLyAoU1NDKSBUcmFuc21pdCBCdWZmZXIgRW1wdHkNCiNkZWZpbmUgQVQ5MUNfU1NDX1JYUkRZICAgICAgICgweDEgPDwgIDQpIC8vIChTU0MpIFJlY2VpdmUgUmVhZHkNCiNkZWZpbmUgQVQ5MUNfU1NDX09WUlVOICAgICAgICgweDEgPDwgIDUpIC8vIChTU0MpIFJlY2VpdmUgT3ZlcnJ1bg0KI2RlZmluZSBBVDkxQ19TU0NfRU5EUlggICAgICAgKDB4MSA8PCAgNikgLy8gKFNTQykgRW5kIG9mIFJlY2VwdGlvbg0KI2RlZmluZSBBVDkxQ19TU0NfUlhCVUZGICAgICAgKDB4MSA8PCAgNykgLy8gKFNTQykgUmVjZWl2ZSBCdWZmZXIgRnVsbA0KI2RlZmluZSBBVDkxQ19TU0NfQ1AwICAgICAgICAgKDB4MSA8PCAgOCkgLy8gKFNTQykgQ29tcGFyZSAwDQojZGVmaW5lIEFUOTFDX1NTQ19DUDEgICAgICAgICAoMHgxIDw8ICA5KSAvLyAoU1NDKSBDb21wYXJlIDENCiNkZWZpbmUgQVQ5MUNfU1NDX1RYU1lOICAgICAgICgweDEgPDwgMTApIC8vIChTU0MpIFRyYW5zbWl0IFN5bmMNCiNkZWZpbmUgQVQ5MUNfU1NDX1JYU1lOICAgICAgICgweDEgPDwgMTEpIC8vIChTU0MpIFJlY2VpdmUgU3luYw0KI2RlZmluZSBBVDkxQ19TU0NfVFhFTkEgICAgICAgKDB4MSA8PCAxNikgLy8gKFNTQykgVHJhbnNtaXQgRW5hYmxlDQojZGVmaW5lIEFUOTFDX1NTQ19SWEVOQSAgICAgICAoMHgxIDw8IDE3KSAvLyAoU1NDKSBSZWNlaXZlIEVuYWJsZQ0KLy8gLS0tLS0tLS0gU1NDX0lFUiA6IChTU0MgT2Zmc2V0OiAweDQ0KSBTU0MgSW50ZXJydXB0IEVuYWJsZSBSZWdpc3RlciAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIFNTQ19JRFIgOiAoU1NDIE9mZnNldDogMHg0OCkgU1NDIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KLy8gLS0tLS0tLS0gU1NDX0lNUiA6IChTU0MgT2Zmc2V0OiAweDRjKSBTU0MgSW50ZXJydXB0IE1hc2sgUmVnaXN0ZXIgLS0tLS0tLS0gDQoNCi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQovLyAgICAgICAgICAgICAgU09GVFdBUkUgQVBJIERFRklOSVRJT04gIEZPUiBQV01DIENoYW5uZWwgSW50ZXJmYWNlDQovLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KI2lmbmRlZiBfX0FTU0VNQkxZX18NCnR5cGVkZWYgc3RydWN0IF9BVDkxU19QV01DX0NIIHsNCglBVDkxX1JFRwkgUFdNQ19DTVI7IAkvLyBDaGFubmVsIE1vZGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUFdNQ19DRFRZUjsgCS8vIENoYW5uZWwgRHV0eSBDeWNsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX0NEVFlVUERSOyAJLy8gQ2hhbm5lbCBEdXR5IEN5Y2xlIFVwZGF0ZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX0NQUkRSOyAJLy8gQ2hhbm5lbCBQZXJpb2QgUmVnaXN0ZXINCglBVDkxX1JFRwkgUFdNQ19DUFJEVVBEUjsgCS8vIENoYW5uZWwgUGVyaW9kIFVwZGF0ZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX0NDTlRSOyAJLy8gQ2hhbm5lbCBDb3VudGVyIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBXTUNfRFRSOyAJLy8gQ2hhbm5lbCBEZWFkIFRpbWUgVmFsdWUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUFdNQ19EVFVQRFI7IAkvLyBDaGFubmVsIERlYWQgVGltZSBVcGRhdGUgVmFsdWUgUmVnaXN0ZXINCn0gQVQ5MVNfUFdNQ19DSCwgKkFUOTFQU19QV01DX0NIOw0KI2Vsc2UNCiNkZWZpbmUgUFdNQ19DTVIgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMDApIC8vIChQV01DX0NNUikgQ2hhbm5lbCBNb2RlIFJlZ2lzdGVyDQojZGVmaW5lIFBXTUNfQ0RUWVIgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDA0KSAvLyAoUFdNQ19DRFRZUikgQ2hhbm5lbCBEdXR5IEN5Y2xlIFJlZ2lzdGVyDQojZGVmaW5lIFBXTUNfQ0RUWVVQRFIgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDA4KSAvLyAoUFdNQ19DRFRZVVBEUikgQ2hhbm5lbCBEdXR5IEN5Y2xlIFVwZGF0ZSBSZWdpc3Rlcg0KI2RlZmluZSBQV01DX0NQUkRSICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAwQykgLy8gKFBXTUNfQ1BSRFIpIENoYW5uZWwgUGVyaW9kIFJlZ2lzdGVyDQojZGVmaW5lIFBXTUNfQ1BSRFVQRFIgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDEwKSAvLyAoUFdNQ19DUFJEVVBEUikgQ2hhbm5lbCBQZXJpb2QgVXBkYXRlIFJlZ2lzdGVyDQojZGVmaW5lIFBXTUNfQ0NOVFIgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDE0KSAvLyAoUFdNQ19DQ05UUikgQ2hhbm5lbCBDb3VudGVyIFJlZ2lzdGVyDQojZGVmaW5lIFBXTUNfRFRSICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDE4KSAvLyAoUFdNQ19EVFIpIENoYW5uZWwgRGVhZCBUaW1lIFZhbHVlIFJlZ2lzdGVyDQojZGVmaW5lIFBXTUNfRFRVUERSICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDFDKSAvLyAoUFdNQ19EVFVQRFIpIENoYW5uZWwgRGVhZCBUaW1lIFVwZGF0ZSBWYWx1ZSBSZWdpc3Rlcg0KDQojZW5kaWYNCi8vIC0tLS0tLS0tIFBXTUNfQ01SIDogKFBXTUNfQ0ggT2Zmc2V0OiAweDApIFBXTUMgQ2hhbm5lbCBNb2RlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19QV01DX0NQUkUgICAgICAgKDB4RiA8PCAgMCkgLy8gKFBXTUNfQ0gpIENoYW5uZWwgUHJlLXNjYWxlciA6IFBXTUNfQ0xLeA0KI2RlZmluZSAJQVQ5MUNfUFdNQ19DUFJFX01DSyAgICAgICAgICAgICAgICAgICgweDApIC8vIChQV01DX0NIKSANCiNkZWZpbmUgCUFUOTFDX1BXTUNfQ1BSRV9NQ0tfRElWXzIgICAgICAgICAgICAoMHgxKSAvLyAoUFdNQ19DSCkgDQojZGVmaW5lIAlBVDkxQ19QV01DX0NQUkVfTUNLX0RJVl80ICAgICAgICAgICAgKDB4MikgLy8gKFBXTUNfQ0gpIA0KI2RlZmluZSAJQVQ5MUNfUFdNQ19DUFJFX01DS19ESVZfOCAgICAgICAgICAgICgweDMpIC8vIChQV01DX0NIKSANCiNkZWZpbmUgCUFUOTFDX1BXTUNfQ1BSRV9NQ0tfRElWXzE2ICAgICAgICAgICAoMHg0KSAvLyAoUFdNQ19DSCkgDQojZGVmaW5lIAlBVDkxQ19QV01DX0NQUkVfTUNLX0RJVl8zMiAgICAgICAgICAgKDB4NSkgLy8gKFBXTUNfQ0gpIA0KI2RlZmluZSAJQVQ5MUNfUFdNQ19DUFJFX01DS19ESVZfNjQgICAgICAgICAgICgweDYpIC8vIChQV01DX0NIKSANCiNkZWZpbmUgCUFUOTFDX1BXTUNfQ1BSRV9NQ0tfRElWXzEyOCAgICAgICAgICAoMHg3KSAvLyAoUFdNQ19DSCkgDQojZGVmaW5lIAlBVDkxQ19QV01DX0NQUkVfTUNLX0RJVl8yNTYgICAgICAgICAgKDB4OCkgLy8gKFBXTUNfQ0gpIA0KI2RlZmluZSAJQVQ5MUNfUFdNQ19DUFJFX01DS19ESVZfNTEyICAgICAgICAgICgweDkpIC8vIChQV01DX0NIKSANCiNkZWZpbmUgCUFUOTFDX1BXTUNfQ1BSRV9NQ0tfRElWXzEwMjQgICAgICAgICAoMHhBKSAvLyAoUFdNQ19DSCkgDQojZGVmaW5lIAlBVDkxQ19QV01DX0NQUkVfTUNLQSAgICAgICAgICAgICAgICAgKDB4QikgLy8gKFBXTUNfQ0gpIA0KI2RlZmluZSAJQVQ5MUNfUFdNQ19DUFJFX01DS0IgICAgICAgICAgICAgICAgICgweEMpIC8vIChQV01DX0NIKSANCiNkZWZpbmUgQVQ5MUNfUFdNQ19DQUxHICAgICAgICgweDEgPDwgIDgpIC8vIChQV01DX0NIKSBDaGFubmVsIEFsaWdubWVudA0KI2RlZmluZSBBVDkxQ19QV01DX0NQT0wgICAgICAgKDB4MSA8PCAgOSkgLy8gKFBXTUNfQ0gpIENoYW5uZWwgUG9sYXJpdHkNCiNkZWZpbmUgQVQ5MUNfUFdNQ19DRVMgICAgICAgICgweDEgPDwgMTApIC8vIChQV01DX0NIKSBDb3VudGVyIEV2ZW50IFNlbGVjdGlvbg0KI2RlZmluZSBBVDkxQ19QV01DX0RURSAgICAgICAgKDB4MSA8PCAxNikgLy8gKFBXTUNfQ0gpIERlYWQgVGltZSBHZW5yYXRvciBFbmFibGUNCiNkZWZpbmUgQVQ5MUNfUFdNQ19EVEhJICAgICAgICgweDEgPDwgMTcpIC8vIChQV01DX0NIKSBEZWFkIFRpbWUgUFdNSHggT3V0cHV0IEludmVydGVkDQojZGVmaW5lIEFUOTFDX1BXTUNfRFRMSSAgICAgICAoMHgxIDw8IDE4KSAvLyAoUFdNQ19DSCkgRGVhZCBUaW1lIFBXTUx4IE91dHB1dCBJbnZlcnRlZA0KLy8gLS0tLS0tLS0gUFdNQ19DRFRZUiA6IChQV01DX0NIIE9mZnNldDogMHg0KSBQV01DIENoYW5uZWwgRHV0eSBDeWNsZSBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfUFdNQ19DRFRZICAgICAgICgweEZGRkZGRiA8PCAgMCkgLy8gKFBXTUNfQ0gpIENoYW5uZWwgRHV0eSBDeWNsZQ0KLy8gLS0tLS0tLS0gUFdNQ19DRFRZVVBEUiA6IChQV01DX0NIIE9mZnNldDogMHg4KSBQV01DIENoYW5uZWwgRHV0eSBDeWNsZSBVcGRhdGUgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1BXTUNfQ0RUWVVQRCAgICAoMHhGRkZGRkYgPDwgIDApIC8vIChQV01DX0NIKSBDaGFubmVsIER1dHkgQ3ljbGUgVXBkYXRlDQovLyAtLS0tLS0tLSBQV01DX0NQUkRSIDogKFBXTUNfQ0ggT2Zmc2V0OiAweGMpIFBXTUMgQ2hhbm5lbCBQZXJpb2QgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1BXTUNfQ1BSRCAgICAgICAoMHhGRkZGRkYgPDwgIDApIC8vIChQV01DX0NIKSBDaGFubmVsIFBlcmlvZA0KLy8gLS0tLS0tLS0gUFdNQ19DUFJEVVBEUiA6IChQV01DX0NIIE9mZnNldDogMHgxMCkgUFdNQyBDaGFubmVsIFBlcmlvZCBVcGRhdGUgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1BXTUNfQ1BSRFVQRCAgICAoMHhGRkZGRkYgPDwgIDApIC8vIChQV01DX0NIKSBDaGFubmVsIFBlcmlvZCBVcGRhdGUNCi8vIC0tLS0tLS0tIFBXTUNfQ0NOVFIgOiAoUFdNQ19DSCBPZmZzZXQ6IDB4MTQpIFBXTUMgQ2hhbm5lbCBDb3VudGVyIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19QV01DX0NDTlQgICAgICAgKDB4RkZGRkZGIDw8ICAwKSAvLyAoUFdNQ19DSCkgQ2hhbm5lbCBDb3VudGVyDQovLyAtLS0tLS0tLSBQV01DX0RUUiA6IChQV01DX0NIIE9mZnNldDogMHgxOCkgQ2hhbm5lbCBEZWFkIFRpbWUgVmFsdWUgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1BXTUNfRFRMICAgICAgICAoMHhGRkZGIDw8ICAwKSAvLyAoUFdNQ19DSCkgQ2hhbm5lbCBEZWFkIFRpbWUgZm9yIFBXTUwNCiNkZWZpbmUgQVQ5MUNfUFdNQ19EVEggICAgICAgICgweEZGRkYgPDwgMTYpIC8vIChQV01DX0NIKSBDaGFubmVsIERlYWQgVGltZSBmb3IgUFdNSA0KLy8gLS0tLS0tLS0gUFdNQ19EVFVQRFIgOiAoUFdNQ19DSCBPZmZzZXQ6IDB4MWMpIENoYW5uZWwgRGVhZCBUaW1lIFZhbHVlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19QV01DX0RUTFVQRCAgICAgKDB4RkZGRiA8PCAgMCkgLy8gKFBXTUNfQ0gpIENoYW5uZWwgRGVhZCBUaW1lIFVwZGF0ZSBmb3IgUFdNTC4NCiNkZWZpbmUgQVQ5MUNfUFdNQ19EVEhVUEQgICAgICgweEZGRkYgPDwgMTYpIC8vIChQV01DX0NIKSBDaGFubmVsIERlYWQgVGltZSBVcGRhdGUgZm9yIFBXTUguDQoNCi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQovLyAgICAgICAgICAgICAgU09GVFdBUkUgQVBJIERFRklOSVRJT04gIEZPUiBQdWxzZSBXaWR0aCBNb2R1bGF0aW9uIENvbnRyb2xsZXIgSW50ZXJmYWNlDQovLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KI2lmbmRlZiBfX0FTU0VNQkxZX18NCnR5cGVkZWYgc3RydWN0IF9BVDkxU19QV01DIHsNCglBVDkxX1JFRwkgUFdNQ19NUjsgCS8vIFBXTUMgTW9kZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX0VOQTsgCS8vIFBXTUMgRW5hYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBXTUNfRElTOyAJLy8gUFdNQyBEaXNhYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBXTUNfU1I7IAkvLyBQV01DIFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX0lFUjE7IAkvLyBQV01DIEludGVycnVwdCBFbmFibGUgUmVnaXN0ZXIgMQ0KCUFUOTFfUkVHCSBQV01DX0lEUjE7IAkvLyBQV01DIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyIDENCglBVDkxX1JFRwkgUFdNQ19JTVIxOyAJLy8gUFdNQyBJbnRlcnJ1cHQgTWFzayBSZWdpc3RlciAxDQoJQVQ5MV9SRUcJIFBXTUNfSVNSMTsgCS8vIFBXTUMgSW50ZXJydXB0IFN0YXR1cyBSZWdpc3RlciAxDQoJQVQ5MV9SRUcJIFBXTUNfU1lOQzsgCS8vIFBXTSBTeW5jaHJvbml6ZWQgQ2hhbm5lbHMgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQwWzFdOyAJLy8gDQoJQVQ5MV9SRUcJIFBXTUNfVVBDUjsgCS8vIFBXTSBVcGRhdGUgQ29udHJvbCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX1NDVVA7IAkvLyBQV00gVXBkYXRlIFBlcmlvZCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX1NDVVBVUEQ7IAkvLyBQV00gVXBkYXRlIFBlcmlvZCBVcGRhdGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUFdNQ19JRVIyOyAJLy8gUFdNQyBJbnRlcnJ1cHQgRW5hYmxlIFJlZ2lzdGVyIDINCglBVDkxX1JFRwkgUFdNQ19JRFIyOyAJLy8gUFdNQyBJbnRlcnJ1cHQgRGlzYWJsZSBSZWdpc3RlciAyDQoJQVQ5MV9SRUcJIFBXTUNfSU1SMjsgCS8vIFBXTUMgSW50ZXJydXB0IE1hc2sgUmVnaXN0ZXIgMg0KCUFUOTFfUkVHCSBQV01DX0lTUjI7IAkvLyBQV01DIEludGVycnVwdCBTdGF0dXMgUmVnaXN0ZXIgMg0KCUFUOTFfUkVHCSBQV01DX09PVjsgCS8vIFBXTSBPdXRwdXQgT3ZlcnJpZGUgVmFsdWUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUFdNQ19PUzsgCS8vIFBXTSBPdXRwdXQgU2VsZWN0aW9uIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBXTUNfT1NTOyAJLy8gUFdNIE91dHB1dCBTZWxlY3Rpb24gU2V0IFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBXTUNfT1NDOyAJLy8gUFdNIE91dHB1dCBTZWxlY3Rpb24gQ2xlYXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgUFdNQ19PU1NVUEQ7IAkvLyBQV00gT3V0cHV0IFNlbGVjdGlvbiBTZXQgVXBkYXRlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBXTUNfT1NDVVBEOyAJLy8gUFdNIE91dHB1dCBTZWxlY3Rpb24gQ2xlYXIgVXBkYXRlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBXTUNfRk1SOyAJLy8gUFdNIEZhdWx0IE1vZGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUFdNQ19GU1I7IAkvLyBQV00gRmF1bHQgTW9kZSBTdGF0dXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgUFdNQ19GQ1I7IAkvLyBQV00gRmF1bHQgTW9kZSBDbGVhciBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX0ZQVjsgCS8vIFBXTSBGYXVsdCBQcm90ZWN0aW9uIFZhbHVlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBXTUNfRlBFUjE7IAkvLyBQV00gRmF1bHQgUHJvdGVjdGlvbiBFbmFibGUgUmVnaXN0ZXIgMQ0KCUFUOTFfUkVHCSBQV01DX0ZQRVIyOyAJLy8gUFdNIEZhdWx0IFByb3RlY3Rpb24gRW5hYmxlIFJlZ2lzdGVyIDINCglBVDkxX1JFRwkgUFdNQ19GUEVSMzsgCS8vIFBXTSBGYXVsdCBQcm90ZWN0aW9uIEVuYWJsZSBSZWdpc3RlciAzDQoJQVQ5MV9SRUcJIFBXTUNfRlBFUjQ7IAkvLyBQV00gRmF1bHQgUHJvdGVjdGlvbiBFbmFibGUgUmVnaXN0ZXIgNA0KCUFUOTFfUkVHCSBQV01DX0VMME1SOyAJLy8gUFdNIEV2ZW50IExpbmUgMCBNb2RlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBXTUNfRUwxTVI7IAkvLyBQV00gRXZlbnQgTGluZSAxIE1vZGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUFdNQ19FTDJNUjsgCS8vIFBXTSBFdmVudCBMaW5lIDIgTW9kZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX0VMM01SOyAJLy8gUFdNIEV2ZW50IExpbmUgMyBNb2RlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBXTUNfRUw0TVI7IAkvLyBQV00gRXZlbnQgTGluZSA0IE1vZGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUFdNQ19FTDVNUjsgCS8vIFBXTSBFdmVudCBMaW5lIDUgTW9kZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX0VMNk1SOyAJLy8gUFdNIEV2ZW50IExpbmUgNiBNb2RlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBXTUNfRUw3TVI7IAkvLyBQV00gRXZlbnQgTGluZSA3IE1vZGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQxWzE4XTsgCS8vIA0KCUFUOTFfUkVHCSBQV01DX1dQQ1I7IAkvLyBQV00gV3JpdGUgUHJvdGVjdGlvbiBFbmFibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUFdNQ19XUFNSOyAJLy8gUFdNIFdyaXRlIFByb3RlY3Rpb24gU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBXTUNfQUREUlNJWkU7IAkvLyBQV01DIEFERFJTSVpFIFJFR0lTVEVSIA0KCUFUOTFfUkVHCSBQV01DX0lQTkFNRTE7IAkvLyBQV01DIElQTkFNRTEgUkVHSVNURVIgDQoJQVQ5MV9SRUcJIFBXTUNfSVBOQU1FMjsgCS8vIFBXTUMgSVBOQU1FMiBSRUdJU1RFUiANCglBVDkxX1JFRwkgUFdNQ19GRUFUVVJFUzsgCS8vIFBXTUMgRkVBVFVSRVMgUkVHSVNURVIgDQoJQVQ5MV9SRUcJIFBXTUNfVkVSOyAJLy8gUFdNQyBWZXJzaW9uIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBXTUNfUlBSOyAJLy8gUmVjZWl2ZSBQb2ludGVyIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBXTUNfUkNSOyAJLy8gUmVjZWl2ZSBDb3VudGVyIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBXTUNfVFBSOyAJLy8gVHJhbnNtaXQgUG9pbnRlciBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX1RDUjsgCS8vIFRyYW5zbWl0IENvdW50ZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgUFdNQ19STlBSOyAJLy8gUmVjZWl2ZSBOZXh0IFBvaW50ZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgUFdNQ19STkNSOyAJLy8gUmVjZWl2ZSBOZXh0IENvdW50ZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgUFdNQ19UTlBSOyAJLy8gVHJhbnNtaXQgTmV4dCBQb2ludGVyIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFBXTUNfVE5DUjsgCS8vIFRyYW5zbWl0IE5leHQgQ291bnRlciBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX1BUQ1I7IAkvLyBQREMgVHJhbnNmZXIgQ29udHJvbCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX1BUU1I7IAkvLyBQREMgVHJhbnNmZXIgU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkMlsyXTsgCS8vIA0KCUFUOTFfUkVHCSBQV01DX0NNUDBWOyAJLy8gUFdNIENvbXBhcmlzb24gVmFsdWUgMCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX0NNUDBWVVBEOyAJLy8gUFdNIENvbXBhcmlzb24gVmFsdWUgMCBVcGRhdGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUFdNQ19DTVAwTTsgCS8vIFBXTSBDb21wYXJpc29uIE1vZGUgMCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX0NNUDBNVVBEOyAJLy8gUFdNIENvbXBhcmlzb24gTW9kZSAwIFVwZGF0ZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX0NNUDFWOyAJLy8gUFdNIENvbXBhcmlzb24gVmFsdWUgMSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX0NNUDFWVVBEOyAJLy8gUFdNIENvbXBhcmlzb24gVmFsdWUgMSBVcGRhdGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUFdNQ19DTVAxTTsgCS8vIFBXTSBDb21wYXJpc29uIE1vZGUgMSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX0NNUDFNVVBEOyAJLy8gUFdNIENvbXBhcmlzb24gTW9kZSAxIFVwZGF0ZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX0NNUDJWOyAJLy8gUFdNIENvbXBhcmlzb24gVmFsdWUgMiBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX0NNUDJWVVBEOyAJLy8gUFdNIENvbXBhcmlzb24gVmFsdWUgMiBVcGRhdGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUFdNQ19DTVAyTTsgCS8vIFBXTSBDb21wYXJpc29uIE1vZGUgMiBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX0NNUDJNVVBEOyAJLy8gUFdNIENvbXBhcmlzb24gTW9kZSAyIFVwZGF0ZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX0NNUDNWOyAJLy8gUFdNIENvbXBhcmlzb24gVmFsdWUgMyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX0NNUDNWVVBEOyAJLy8gUFdNIENvbXBhcmlzb24gVmFsdWUgMyBVcGRhdGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUFdNQ19DTVAzTTsgCS8vIFBXTSBDb21wYXJpc29uIE1vZGUgMyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX0NNUDNNVVBEOyAJLy8gUFdNIENvbXBhcmlzb24gTW9kZSAzIFVwZGF0ZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX0NNUDRWOyAJLy8gUFdNIENvbXBhcmlzb24gVmFsdWUgNCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX0NNUDRWVVBEOyAJLy8gUFdNIENvbXBhcmlzb24gVmFsdWUgNCBVcGRhdGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUFdNQ19DTVA0TTsgCS8vIFBXTSBDb21wYXJpc29uIE1vZGUgNCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX0NNUDRNVVBEOyAJLy8gUFdNIENvbXBhcmlzb24gTW9kZSA0IFVwZGF0ZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX0NNUDVWOyAJLy8gUFdNIENvbXBhcmlzb24gVmFsdWUgNSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX0NNUDVWVVBEOyAJLy8gUFdNIENvbXBhcmlzb24gVmFsdWUgNSBVcGRhdGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUFdNQ19DTVA1TTsgCS8vIFBXTSBDb21wYXJpc29uIE1vZGUgNSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX0NNUDVNVVBEOyAJLy8gUFdNIENvbXBhcmlzb24gTW9kZSA1IFVwZGF0ZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX0NNUDZWOyAJLy8gUFdNIENvbXBhcmlzb24gVmFsdWUgNiBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX0NNUDZWVVBEOyAJLy8gUFdNIENvbXBhcmlzb24gVmFsdWUgNiBVcGRhdGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUFdNQ19DTVA2TTsgCS8vIFBXTSBDb21wYXJpc29uIE1vZGUgNiBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX0NNUDZNVVBEOyAJLy8gUFdNIENvbXBhcmlzb24gTW9kZSA2IFVwZGF0ZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX0NNUDdWOyAJLy8gUFdNIENvbXBhcmlzb24gVmFsdWUgNyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX0NNUDdWVVBEOyAJLy8gUFdNIENvbXBhcmlzb24gVmFsdWUgNyBVcGRhdGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgUFdNQ19DTVA3TTsgCS8vIFBXTSBDb21wYXJpc29uIE1vZGUgNyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBQV01DX0NNUDdNVVBEOyAJLy8gUFdNIENvbXBhcmlzb24gTW9kZSA3IFVwZGF0ZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBSZXNlcnZlZDNbMjBdOyAJLy8gDQoJQVQ5MVNfUFdNQ19DSAkgUFdNQ19DSFs4XTsgCS8vIFBXTUMgQ2hhbm5lbCAwDQp9IEFUOTFTX1BXTUMsICpBVDkxUFNfUFdNQzsNCiNlbHNlDQojZGVmaW5lIFBXTUNfTVIgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDAwKSAvLyAoUFdNQ19NUikgUFdNQyBNb2RlIFJlZ2lzdGVyDQojZGVmaW5lIFBXTUNfRU5BICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDA0KSAvLyAoUFdNQ19FTkEpIFBXTUMgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIFBXTUNfRElTICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDA4KSAvLyAoUFdNQ19ESVMpIFBXTUMgRGlzYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBQV01DX1NSICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAwQykgLy8gKFBXTUNfU1IpIFBXTUMgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIFBXTUNfSUVSMSAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDEwKSAvLyAoUFdNQ19JRVIxKSBQV01DIEludGVycnVwdCBFbmFibGUgUmVnaXN0ZXIgMQ0KI2RlZmluZSBQV01DX0lEUjEgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAxNCkgLy8gKFBXTUNfSURSMSkgUFdNQyBJbnRlcnJ1cHQgRGlzYWJsZSBSZWdpc3RlciAxDQojZGVmaW5lIFBXTUNfSU1SMSAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDE4KSAvLyAoUFdNQ19JTVIxKSBQV01DIEludGVycnVwdCBNYXNrIFJlZ2lzdGVyIDENCiNkZWZpbmUgUFdNQ19JU1IxICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMUMpIC8vIChQV01DX0lTUjEpIFBXTUMgSW50ZXJydXB0IFN0YXR1cyBSZWdpc3RlciAxDQojZGVmaW5lIFBXTUNfU1lOQyAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDIwKSAvLyAoUFdNQ19TWU5DKSBQV00gU3luY2hyb25pemVkIENoYW5uZWxzIFJlZ2lzdGVyDQojZGVmaW5lIFBXTUNfVVBDUiAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDI4KSAvLyAoUFdNQ19VUENSKSBQV00gVXBkYXRlIENvbnRyb2wgUmVnaXN0ZXINCiNkZWZpbmUgUFdNQ19TQ1VQICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMkMpIC8vIChQV01DX1NDVVApIFBXTSBVcGRhdGUgUGVyaW9kIFJlZ2lzdGVyDQojZGVmaW5lIFBXTUNfU0NVUFVQRCAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDMwKSAvLyAoUFdNQ19TQ1VQVVBEKSBQV00gVXBkYXRlIFBlcmlvZCBVcGRhdGUgUmVnaXN0ZXINCiNkZWZpbmUgUFdNQ19JRVIyICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMzQpIC8vIChQV01DX0lFUjIpIFBXTUMgSW50ZXJydXB0IEVuYWJsZSBSZWdpc3RlciAyDQojZGVmaW5lIFBXTUNfSURSMiAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDM4KSAvLyAoUFdNQ19JRFIyKSBQV01DIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyIDINCiNkZWZpbmUgUFdNQ19JTVIyICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwM0MpIC8vIChQV01DX0lNUjIpIFBXTUMgSW50ZXJydXB0IE1hc2sgUmVnaXN0ZXIgMg0KI2RlZmluZSBQV01DX0lTUjIgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDA0MCkgLy8gKFBXTUNfSVNSMikgUFdNQyBJbnRlcnJ1cHQgU3RhdHVzIFJlZ2lzdGVyIDINCiNkZWZpbmUgUFdNQ19PT1YgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNDQpIC8vIChQV01DX09PVikgUFdNIE91dHB1dCBPdmVycmlkZSBWYWx1ZSBSZWdpc3Rlcg0KI2RlZmluZSBQV01DX09TICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDA0OCkgLy8gKFBXTUNfT1MpIFBXTSBPdXRwdXQgU2VsZWN0aW9uIFJlZ2lzdGVyDQojZGVmaW5lIFBXTUNfT1NTICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDRDKSAvLyAoUFdNQ19PU1MpIFBXTSBPdXRwdXQgU2VsZWN0aW9uIFNldCBSZWdpc3Rlcg0KI2RlZmluZSBQV01DX09TQyAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDA1MCkgLy8gKFBXTUNfT1NDKSBQV00gT3V0cHV0IFNlbGVjdGlvbiBDbGVhciBSZWdpc3Rlcg0KI2RlZmluZSBQV01DX09TU1VQRCAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDA1NCkgLy8gKFBXTUNfT1NTVVBEKSBQV00gT3V0cHV0IFNlbGVjdGlvbiBTZXQgVXBkYXRlIFJlZ2lzdGVyDQojZGVmaW5lIFBXTUNfT1NDVVBEICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDU4KSAvLyAoUFdNQ19PU0NVUEQpIFBXTSBPdXRwdXQgU2VsZWN0aW9uIENsZWFyIFVwZGF0ZSBSZWdpc3Rlcg0KI2RlZmluZSBQV01DX0ZNUiAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDA1QykgLy8gKFBXTUNfRk1SKSBQV00gRmF1bHQgTW9kZSBSZWdpc3Rlcg0KI2RlZmluZSBQV01DX0ZTUiAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDA2MCkgLy8gKFBXTUNfRlNSKSBQV00gRmF1bHQgTW9kZSBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgUFdNQ19GQ1IgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNjQpIC8vIChQV01DX0ZDUikgUFdNIEZhdWx0IE1vZGUgQ2xlYXIgUmVnaXN0ZXINCiNkZWZpbmUgUFdNQ19GUFYgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNjgpIC8vIChQV01DX0ZQVikgUFdNIEZhdWx0IFByb3RlY3Rpb24gVmFsdWUgUmVnaXN0ZXINCiNkZWZpbmUgUFdNQ19GUEVSMSAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNkMpIC8vIChQV01DX0ZQRVIxKSBQV00gRmF1bHQgUHJvdGVjdGlvbiBFbmFibGUgUmVnaXN0ZXIgMQ0KI2RlZmluZSBQV01DX0ZQRVIyICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDA3MCkgLy8gKFBXTUNfRlBFUjIpIFBXTSBGYXVsdCBQcm90ZWN0aW9uIEVuYWJsZSBSZWdpc3RlciAyDQojZGVmaW5lIFBXTUNfRlBFUjMgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDc0KSAvLyAoUFdNQ19GUEVSMykgUFdNIEZhdWx0IFByb3RlY3Rpb24gRW5hYmxlIFJlZ2lzdGVyIDMNCiNkZWZpbmUgUFdNQ19GUEVSNCAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwNzgpIC8vIChQV01DX0ZQRVI0KSBQV00gRmF1bHQgUHJvdGVjdGlvbiBFbmFibGUgUmVnaXN0ZXIgNA0KI2RlZmluZSBQV01DX0VMME1SICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDA3QykgLy8gKFBXTUNfRUwwTVIpIFBXTSBFdmVudCBMaW5lIDAgTW9kZSBSZWdpc3Rlcg0KI2RlZmluZSBQV01DX0VMMU1SICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDA4MCkgLy8gKFBXTUNfRUwxTVIpIFBXTSBFdmVudCBMaW5lIDEgTW9kZSBSZWdpc3Rlcg0KI2RlZmluZSBQV01DX0VMMk1SICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDA4NCkgLy8gKFBXTUNfRUwyTVIpIFBXTSBFdmVudCBMaW5lIDIgTW9kZSBSZWdpc3Rlcg0KI2RlZmluZSBQV01DX0VMM01SICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDA4OCkgLy8gKFBXTUNfRUwzTVIpIFBXTSBFdmVudCBMaW5lIDMgTW9kZSBSZWdpc3Rlcg0KI2RlZmluZSBQV01DX0VMNE1SICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDA4QykgLy8gKFBXTUNfRUw0TVIpIFBXTSBFdmVudCBMaW5lIDQgTW9kZSBSZWdpc3Rlcg0KI2RlZmluZSBQV01DX0VMNU1SICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDA5MCkgLy8gKFBXTUNfRUw1TVIpIFBXTSBFdmVudCBMaW5lIDUgTW9kZSBSZWdpc3Rlcg0KI2RlZmluZSBQV01DX0VMNk1SICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDA5NCkgLy8gKFBXTUNfRUw2TVIpIFBXTSBFdmVudCBMaW5lIDYgTW9kZSBSZWdpc3Rlcg0KI2RlZmluZSBQV01DX0VMN01SICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDA5OCkgLy8gKFBXTUNfRUw3TVIpIFBXTSBFdmVudCBMaW5lIDcgTW9kZSBSZWdpc3Rlcg0KI2RlZmluZSBQV01DX1dQQ1IgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDBFNCkgLy8gKFBXTUNfV1BDUikgUFdNIFdyaXRlIFByb3RlY3Rpb24gRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIFBXTUNfV1BTUiAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMEU4KSAvLyAoUFdNQ19XUFNSKSBQV00gV3JpdGUgUHJvdGVjdGlvbiBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgUFdNQ19BRERSU0laRSAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwRUMpIC8vIChQV01DX0FERFJTSVpFKSBQV01DIEFERFJTSVpFIFJFR0lTVEVSIA0KI2RlZmluZSBQV01DX0lQTkFNRTEgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDBGMCkgLy8gKFBXTUNfSVBOQU1FMSkgUFdNQyBJUE5BTUUxIFJFR0lTVEVSIA0KI2RlZmluZSBQV01DX0lQTkFNRTIgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDBGNCkgLy8gKFBXTUNfSVBOQU1FMikgUFdNQyBJUE5BTUUyIFJFR0lTVEVSIA0KI2RlZmluZSBQV01DX0ZFQVRVUkVTICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDBGOCkgLy8gKFBXTUNfRkVBVFVSRVMpIFBXTUMgRkVBVFVSRVMgUkVHSVNURVIgDQojZGVmaW5lIFBXTUNfVkVSICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMEZDKSAvLyAoUFdNQ19WRVIpIFBXTUMgVmVyc2lvbiBSZWdpc3Rlcg0KI2RlZmluZSBQV01DX0NNUDBWICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDEzMCkgLy8gKFBXTUNfQ01QMFYpIFBXTSBDb21wYXJpc29uIFZhbHVlIDAgUmVnaXN0ZXINCiNkZWZpbmUgUFdNQ19DTVAwVlVQRCAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxMzQpIC8vIChQV01DX0NNUDBWVVBEKSBQV00gQ29tcGFyaXNvbiBWYWx1ZSAwIFVwZGF0ZSBSZWdpc3Rlcg0KI2RlZmluZSBQV01DX0NNUDBNICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDEzOCkgLy8gKFBXTUNfQ01QME0pIFBXTSBDb21wYXJpc29uIE1vZGUgMCBSZWdpc3Rlcg0KI2RlZmluZSBQV01DX0NNUDBNVVBEICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDEzQykgLy8gKFBXTUNfQ01QME1VUEQpIFBXTSBDb21wYXJpc29uIE1vZGUgMCBVcGRhdGUgUmVnaXN0ZXINCiNkZWZpbmUgUFdNQ19DTVAxViAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxNDApIC8vIChQV01DX0NNUDFWKSBQV00gQ29tcGFyaXNvbiBWYWx1ZSAxIFJlZ2lzdGVyDQojZGVmaW5lIFBXTUNfQ01QMVZVUEQgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMTQ0KSAvLyAoUFdNQ19DTVAxVlVQRCkgUFdNIENvbXBhcmlzb24gVmFsdWUgMSBVcGRhdGUgUmVnaXN0ZXINCiNkZWZpbmUgUFdNQ19DTVAxTSAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxNDgpIC8vIChQV01DX0NNUDFNKSBQV00gQ29tcGFyaXNvbiBNb2RlIDEgUmVnaXN0ZXINCiNkZWZpbmUgUFdNQ19DTVAxTVVQRCAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxNEMpIC8vIChQV01DX0NNUDFNVVBEKSBQV00gQ29tcGFyaXNvbiBNb2RlIDEgVXBkYXRlIFJlZ2lzdGVyDQojZGVmaW5lIFBXTUNfQ01QMlYgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMTUwKSAvLyAoUFdNQ19DTVAyVikgUFdNIENvbXBhcmlzb24gVmFsdWUgMiBSZWdpc3Rlcg0KI2RlZmluZSBQV01DX0NNUDJWVVBEICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDE1NCkgLy8gKFBXTUNfQ01QMlZVUEQpIFBXTSBDb21wYXJpc29uIFZhbHVlIDIgVXBkYXRlIFJlZ2lzdGVyDQojZGVmaW5lIFBXTUNfQ01QMk0gICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMTU4KSAvLyAoUFdNQ19DTVAyTSkgUFdNIENvbXBhcmlzb24gTW9kZSAyIFJlZ2lzdGVyDQojZGVmaW5lIFBXTUNfQ01QMk1VUEQgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMTVDKSAvLyAoUFdNQ19DTVAyTVVQRCkgUFdNIENvbXBhcmlzb24gTW9kZSAyIFVwZGF0ZSBSZWdpc3Rlcg0KI2RlZmluZSBQV01DX0NNUDNWICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDE2MCkgLy8gKFBXTUNfQ01QM1YpIFBXTSBDb21wYXJpc29uIFZhbHVlIDMgUmVnaXN0ZXINCiNkZWZpbmUgUFdNQ19DTVAzVlVQRCAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxNjQpIC8vIChQV01DX0NNUDNWVVBEKSBQV00gQ29tcGFyaXNvbiBWYWx1ZSAzIFVwZGF0ZSBSZWdpc3Rlcg0KI2RlZmluZSBQV01DX0NNUDNNICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDE2OCkgLy8gKFBXTUNfQ01QM00pIFBXTSBDb21wYXJpc29uIE1vZGUgMyBSZWdpc3Rlcg0KI2RlZmluZSBQV01DX0NNUDNNVVBEICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDE2QykgLy8gKFBXTUNfQ01QM01VUEQpIFBXTSBDb21wYXJpc29uIE1vZGUgMyBVcGRhdGUgUmVnaXN0ZXINCiNkZWZpbmUgUFdNQ19DTVA0ViAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxNzApIC8vIChQV01DX0NNUDRWKSBQV00gQ29tcGFyaXNvbiBWYWx1ZSA0IFJlZ2lzdGVyDQojZGVmaW5lIFBXTUNfQ01QNFZVUEQgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMTc0KSAvLyAoUFdNQ19DTVA0VlVQRCkgUFdNIENvbXBhcmlzb24gVmFsdWUgNCBVcGRhdGUgUmVnaXN0ZXINCiNkZWZpbmUgUFdNQ19DTVA0TSAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxNzgpIC8vIChQV01DX0NNUDRNKSBQV00gQ29tcGFyaXNvbiBNb2RlIDQgUmVnaXN0ZXINCiNkZWZpbmUgUFdNQ19DTVA0TVVQRCAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxN0MpIC8vIChQV01DX0NNUDRNVVBEKSBQV00gQ29tcGFyaXNvbiBNb2RlIDQgVXBkYXRlIFJlZ2lzdGVyDQojZGVmaW5lIFBXTUNfQ01QNVYgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMTgwKSAvLyAoUFdNQ19DTVA1VikgUFdNIENvbXBhcmlzb24gVmFsdWUgNSBSZWdpc3Rlcg0KI2RlZmluZSBQV01DX0NNUDVWVVBEICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDE4NCkgLy8gKFBXTUNfQ01QNVZVUEQpIFBXTSBDb21wYXJpc29uIFZhbHVlIDUgVXBkYXRlIFJlZ2lzdGVyDQojZGVmaW5lIFBXTUNfQ01QNU0gICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMTg4KSAvLyAoUFdNQ19DTVA1TSkgUFdNIENvbXBhcmlzb24gTW9kZSA1IFJlZ2lzdGVyDQojZGVmaW5lIFBXTUNfQ01QNU1VUEQgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMThDKSAvLyAoUFdNQ19DTVA1TVVQRCkgUFdNIENvbXBhcmlzb24gTW9kZSA1IFVwZGF0ZSBSZWdpc3Rlcg0KI2RlZmluZSBQV01DX0NNUDZWICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDE5MCkgLy8gKFBXTUNfQ01QNlYpIFBXTSBDb21wYXJpc29uIFZhbHVlIDYgUmVnaXN0ZXINCiNkZWZpbmUgUFdNQ19DTVA2VlVQRCAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxOTQpIC8vIChQV01DX0NNUDZWVVBEKSBQV00gQ29tcGFyaXNvbiBWYWx1ZSA2IFVwZGF0ZSBSZWdpc3Rlcg0KI2RlZmluZSBQV01DX0NNUDZNICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDE5OCkgLy8gKFBXTUNfQ01QNk0pIFBXTSBDb21wYXJpc29uIE1vZGUgNiBSZWdpc3Rlcg0KI2RlZmluZSBQV01DX0NNUDZNVVBEICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDE5QykgLy8gKFBXTUNfQ01QNk1VUEQpIFBXTSBDb21wYXJpc29uIE1vZGUgNiBVcGRhdGUgUmVnaXN0ZXINCiNkZWZpbmUgUFdNQ19DTVA3ViAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxQTApIC8vIChQV01DX0NNUDdWKSBQV00gQ29tcGFyaXNvbiBWYWx1ZSA3IFJlZ2lzdGVyDQojZGVmaW5lIFBXTUNfQ01QN1ZVUEQgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMUE0KSAvLyAoUFdNQ19DTVA3VlVQRCkgUFdNIENvbXBhcmlzb24gVmFsdWUgNyBVcGRhdGUgUmVnaXN0ZXINCiNkZWZpbmUgUFdNQ19DTVA3TSAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxQTgpIC8vIChQV01DX0NNUDdNKSBQV00gQ29tcGFyaXNvbiBNb2RlIDcgUmVnaXN0ZXINCiNkZWZpbmUgUFdNQ19DTVA3TVVQRCAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxQUMpIC8vIChQV01DX0NNUDdNVVBEKSBQV00gQ29tcGFyaXNvbiBNb2RlIDcgVXBkYXRlIFJlZ2lzdGVyDQoNCiNlbmRpZg0KLy8gLS0tLS0tLS0gUFdNQ19NUiA6IChQV01DIE9mZnNldDogMHgwKSBQV01DIE1vZGUgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1BXTUNfRElWQSAgICAgICAoMHhGRiA8PCAgMCkgLy8gKFBXTUMpIENMS0EgZGl2aWRlIGZhY3Rvci4NCiNkZWZpbmUgQVQ5MUNfUFdNQ19QUkVBICAgICAgICgweEYgPDwgIDgpIC8vIChQV01DKSBEaXZpZGVyIElucHV0IENsb2NrIFByZXNjYWxlciBBDQojZGVmaW5lIAlBVDkxQ19QV01DX1BSRUFfTUNLICAgICAgICAgICAgICAgICAgKDB4MCA8PCAgOCkgLy8gKFBXTUMpIA0KI2RlZmluZSAJQVQ5MUNfUFdNQ19QUkVBX01DS19ESVZfMiAgICAgICAgICAgICgweDEgPDwgIDgpIC8vIChQV01DKSANCiNkZWZpbmUgCUFUOTFDX1BXTUNfUFJFQV9NQ0tfRElWXzQgICAgICAgICAgICAoMHgyIDw8ICA4KSAvLyAoUFdNQykgDQojZGVmaW5lIAlBVDkxQ19QV01DX1BSRUFfTUNLX0RJVl84ICAgICAgICAgICAgKDB4MyA8PCAgOCkgLy8gKFBXTUMpIA0KI2RlZmluZSAJQVQ5MUNfUFdNQ19QUkVBX01DS19ESVZfMTYgICAgICAgICAgICgweDQgPDwgIDgpIC8vIChQV01DKSANCiNkZWZpbmUgCUFUOTFDX1BXTUNfUFJFQV9NQ0tfRElWXzMyICAgICAgICAgICAoMHg1IDw8ICA4KSAvLyAoUFdNQykgDQojZGVmaW5lIAlBVDkxQ19QV01DX1BSRUFfTUNLX0RJVl82NCAgICAgICAgICAgKDB4NiA8PCAgOCkgLy8gKFBXTUMpIA0KI2RlZmluZSAJQVQ5MUNfUFdNQ19QUkVBX01DS19ESVZfMTI4ICAgICAgICAgICgweDcgPDwgIDgpIC8vIChQV01DKSANCiNkZWZpbmUgCUFUOTFDX1BXTUNfUFJFQV9NQ0tfRElWXzI1NiAgICAgICAgICAoMHg4IDw8ICA4KSAvLyAoUFdNQykgDQojZGVmaW5lIEFUOTFDX1BXTUNfRElWQiAgICAgICAoMHhGRiA8PCAxNikgLy8gKFBXTUMpIENMS0IgZGl2aWRlIGZhY3Rvci4NCiNkZWZpbmUgQVQ5MUNfUFdNQ19QUkVCICAgICAgICgweEYgPDwgMjQpIC8vIChQV01DKSBEaXZpZGVyIElucHV0IENsb2NrIFByZXNjYWxlciBCDQojZGVmaW5lIAlBVDkxQ19QV01DX1BSRUJfTUNLICAgICAgICAgICAgICAgICAgKDB4MCA8PCAyNCkgLy8gKFBXTUMpIA0KI2RlZmluZSAJQVQ5MUNfUFdNQ19QUkVCX01DS19ESVZfMiAgICAgICAgICAgICgweDEgPDwgMjQpIC8vIChQV01DKSANCiNkZWZpbmUgCUFUOTFDX1BXTUNfUFJFQl9NQ0tfRElWXzQgICAgICAgICAgICAoMHgyIDw8IDI0KSAvLyAoUFdNQykgDQojZGVmaW5lIAlBVDkxQ19QV01DX1BSRUJfTUNLX0RJVl84ICAgICAgICAgICAgKDB4MyA8PCAyNCkgLy8gKFBXTUMpIA0KI2RlZmluZSAJQVQ5MUNfUFdNQ19QUkVCX01DS19ESVZfMTYgICAgICAgICAgICgweDQgPDwgMjQpIC8vIChQV01DKSANCiNkZWZpbmUgCUFUOTFDX1BXTUNfUFJFQl9NQ0tfRElWXzMyICAgICAgICAgICAoMHg1IDw8IDI0KSAvLyAoUFdNQykgDQojZGVmaW5lIAlBVDkxQ19QV01DX1BSRUJfTUNLX0RJVl82NCAgICAgICAgICAgKDB4NiA8PCAyNCkgLy8gKFBXTUMpIA0KI2RlZmluZSAJQVQ5MUNfUFdNQ19QUkVCX01DS19ESVZfMTI4ICAgICAgICAgICgweDcgPDwgMjQpIC8vIChQV01DKSANCiNkZWZpbmUgCUFUOTFDX1BXTUNfUFJFQl9NQ0tfRElWXzI1NiAgICAgICAgICAoMHg4IDw8IDI0KSAvLyAoUFdNQykgDQojZGVmaW5lIEFUOTFDX1BXTUNfQ0xLU0VMICAgICAoMHgxIDw8IDMxKSAvLyAoUFdNQykgQ0NLIFNvdXJjZSBDbG9jayBTZWxlY3Rpb24NCi8vIC0tLS0tLS0tIFBXTUNfRU5BIDogKFBXTUMgT2Zmc2V0OiAweDQpIFBXTUMgRW5hYmxlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19QV01DX0NISUQwICAgICAgKDB4MSA8PCAgMCkgLy8gKFBXTUMpIENoYW5uZWwgSUQgMA0KI2RlZmluZSBBVDkxQ19QV01DX0NISUQxICAgICAgKDB4MSA8PCAgMSkgLy8gKFBXTUMpIENoYW5uZWwgSUQgMQ0KI2RlZmluZSBBVDkxQ19QV01DX0NISUQyICAgICAgKDB4MSA8PCAgMikgLy8gKFBXTUMpIENoYW5uZWwgSUQgMg0KI2RlZmluZSBBVDkxQ19QV01DX0NISUQzICAgICAgKDB4MSA8PCAgMykgLy8gKFBXTUMpIENoYW5uZWwgSUQgMw0KI2RlZmluZSBBVDkxQ19QV01DX0NISUQ0ICAgICAgKDB4MSA8PCAgNCkgLy8gKFBXTUMpIENoYW5uZWwgSUQgNA0KI2RlZmluZSBBVDkxQ19QV01DX0NISUQ1ICAgICAgKDB4MSA8PCAgNSkgLy8gKFBXTUMpIENoYW5uZWwgSUQgNQ0KI2RlZmluZSBBVDkxQ19QV01DX0NISUQ2ICAgICAgKDB4MSA8PCAgNikgLy8gKFBXTUMpIENoYW5uZWwgSUQgNg0KI2RlZmluZSBBVDkxQ19QV01DX0NISUQ3ICAgICAgKDB4MSA8PCAgNykgLy8gKFBXTUMpIENoYW5uZWwgSUQgNw0KI2RlZmluZSBBVDkxQ19QV01DX0NISUQ4ICAgICAgKDB4MSA8PCAgOCkgLy8gKFBXTUMpIENoYW5uZWwgSUQgOA0KI2RlZmluZSBBVDkxQ19QV01DX0NISUQ5ICAgICAgKDB4MSA8PCAgOSkgLy8gKFBXTUMpIENoYW5uZWwgSUQgOQ0KI2RlZmluZSBBVDkxQ19QV01DX0NISUQxMCAgICAgKDB4MSA8PCAxMCkgLy8gKFBXTUMpIENoYW5uZWwgSUQgMTANCiNkZWZpbmUgQVQ5MUNfUFdNQ19DSElEMTEgICAgICgweDEgPDwgMTEpIC8vIChQV01DKSBDaGFubmVsIElEIDExDQojZGVmaW5lIEFUOTFDX1BXTUNfQ0hJRDEyICAgICAoMHgxIDw8IDEyKSAvLyAoUFdNQykgQ2hhbm5lbCBJRCAxMg0KI2RlZmluZSBBVDkxQ19QV01DX0NISUQxMyAgICAgKDB4MSA8PCAxMykgLy8gKFBXTUMpIENoYW5uZWwgSUQgMTMNCiNkZWZpbmUgQVQ5MUNfUFdNQ19DSElEMTQgICAgICgweDEgPDwgMTQpIC8vIChQV01DKSBDaGFubmVsIElEIDE0DQojZGVmaW5lIEFUOTFDX1BXTUNfQ0hJRDE1ICAgICAoMHgxIDw8IDE1KSAvLyAoUFdNQykgQ2hhbm5lbCBJRCAxNQ0KLy8gLS0tLS0tLS0gUFdNQ19ESVMgOiAoUFdNQyBPZmZzZXQ6IDB4OCkgUFdNQyBEaXNhYmxlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KLy8gLS0tLS0tLS0gUFdNQ19TUiA6IChQV01DIE9mZnNldDogMHhjKSBQV01DIFN0YXR1cyBSZWdpc3RlciAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIFBXTUNfSUVSMSA6IChQV01DIE9mZnNldDogMHgxMCkgUFdNQyBJbnRlcnJ1cHQgRW5hYmxlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19QV01DX0ZDSElEMCAgICAgKDB4MSA8PCAxNikgLy8gKFBXTUMpIEZhdWx0IEV2ZW50IENoYW5uZWwgSUQgMA0KI2RlZmluZSBBVDkxQ19QV01DX0ZDSElEMSAgICAgKDB4MSA8PCAxNykgLy8gKFBXTUMpIEZhdWx0IEV2ZW50IENoYW5uZWwgSUQgMQ0KI2RlZmluZSBBVDkxQ19QV01DX0ZDSElEMiAgICAgKDB4MSA8PCAxOCkgLy8gKFBXTUMpIEZhdWx0IEV2ZW50IENoYW5uZWwgSUQgMg0KI2RlZmluZSBBVDkxQ19QV01DX0ZDSElEMyAgICAgKDB4MSA8PCAxOSkgLy8gKFBXTUMpIEZhdWx0IEV2ZW50IENoYW5uZWwgSUQgMw0KI2RlZmluZSBBVDkxQ19QV01DX0ZDSElENCAgICAgKDB4MSA8PCAyMCkgLy8gKFBXTUMpIEZhdWx0IEV2ZW50IENoYW5uZWwgSUQgNA0KI2RlZmluZSBBVDkxQ19QV01DX0ZDSElENSAgICAgKDB4MSA8PCAyMSkgLy8gKFBXTUMpIEZhdWx0IEV2ZW50IENoYW5uZWwgSUQgNQ0KI2RlZmluZSBBVDkxQ19QV01DX0ZDSElENiAgICAgKDB4MSA8PCAyMikgLy8gKFBXTUMpIEZhdWx0IEV2ZW50IENoYW5uZWwgSUQgNg0KI2RlZmluZSBBVDkxQ19QV01DX0ZDSElENyAgICAgKDB4MSA8PCAyMykgLy8gKFBXTUMpIEZhdWx0IEV2ZW50IENoYW5uZWwgSUQgNw0KI2RlZmluZSBBVDkxQ19QV01DX0ZDSElEOCAgICAgKDB4MSA8PCAyNCkgLy8gKFBXTUMpIEZhdWx0IEV2ZW50IENoYW5uZWwgSUQgOA0KI2RlZmluZSBBVDkxQ19QV01DX0ZDSElEOSAgICAgKDB4MSA8PCAyNSkgLy8gKFBXTUMpIEZhdWx0IEV2ZW50IENoYW5uZWwgSUQgOQ0KI2RlZmluZSBBVDkxQ19QV01DX0ZDSElEMTAgICAgKDB4MSA8PCAyNikgLy8gKFBXTUMpIEZhdWx0IEV2ZW50IENoYW5uZWwgSUQgMTANCiNkZWZpbmUgQVQ5MUNfUFdNQ19GQ0hJRDExICAgICgweDEgPDwgMjcpIC8vIChQV01DKSBGYXVsdCBFdmVudCBDaGFubmVsIElEIDExDQojZGVmaW5lIEFUOTFDX1BXTUNfRkNISUQxMiAgICAoMHgxIDw8IDI4KSAvLyAoUFdNQykgRmF1bHQgRXZlbnQgQ2hhbm5lbCBJRCAxMg0KI2RlZmluZSBBVDkxQ19QV01DX0ZDSElEMTMgICAgKDB4MSA8PCAyOSkgLy8gKFBXTUMpIEZhdWx0IEV2ZW50IENoYW5uZWwgSUQgMTMNCiNkZWZpbmUgQVQ5MUNfUFdNQ19GQ0hJRDE0ICAgICgweDEgPDwgMzApIC8vIChQV01DKSBGYXVsdCBFdmVudCBDaGFubmVsIElEIDE0DQojZGVmaW5lIEFUOTFDX1BXTUNfRkNISUQxNSAgICAoMHgxIDw8IDMxKSAvLyAoUFdNQykgRmF1bHQgRXZlbnQgQ2hhbm5lbCBJRCAxNQ0KLy8gLS0tLS0tLS0gUFdNQ19JRFIxIDogKFBXTUMgT2Zmc2V0OiAweDE0KSBQV01DIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KLy8gLS0tLS0tLS0gUFdNQ19JTVIxIDogKFBXTUMgT2Zmc2V0OiAweDE4KSBQV01DIEludGVycnVwdCBNYXNrIFJlZ2lzdGVyIC0tLS0tLS0tIA0KLy8gLS0tLS0tLS0gUFdNQ19JU1IxIDogKFBXTUMgT2Zmc2V0OiAweDFjKSBQV01DIEludGVycnVwdCBTdGF0dXMgUmVnaXN0ZXIgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBQV01DX1NZTkMgOiAoUFdNQyBPZmZzZXQ6IDB4MjApIFBXTUMgU3luY2hyb25vdXMgQ2hhbm5lbHMgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1BXTUNfU1lOQzAgICAgICAoMHgxIDw8ICAwKSAvLyAoUFdNQykgU3luY2hyb25vdXMgQ2hhbm5lbCBJRCAwDQojZGVmaW5lIEFUOTFDX1BXTUNfU1lOQzEgICAgICAoMHgxIDw8ICAxKSAvLyAoUFdNQykgU3luY2hyb25vdXMgQ2hhbm5lbCBJRCAxDQojZGVmaW5lIEFUOTFDX1BXTUNfU1lOQzIgICAgICAoMHgxIDw8ICAyKSAvLyAoUFdNQykgU3luY2hyb25vdXMgQ2hhbm5lbCBJRCAyDQojZGVmaW5lIEFUOTFDX1BXTUNfU1lOQzMgICAgICAoMHgxIDw8ICAzKSAvLyAoUFdNQykgU3luY2hyb25vdXMgQ2hhbm5lbCBJRCAzDQojZGVmaW5lIEFUOTFDX1BXTUNfU1lOQzQgICAgICAoMHgxIDw8ICA0KSAvLyAoUFdNQykgU3luY2hyb25vdXMgQ2hhbm5lbCBJRCA0DQojZGVmaW5lIEFUOTFDX1BXTUNfU1lOQzUgICAgICAoMHgxIDw8ICA1KSAvLyAoUFdNQykgU3luY2hyb25vdXMgQ2hhbm5lbCBJRCA1DQojZGVmaW5lIEFUOTFDX1BXTUNfU1lOQzYgICAgICAoMHgxIDw8ICA2KSAvLyAoUFdNQykgU3luY2hyb25vdXMgQ2hhbm5lbCBJRCA2DQojZGVmaW5lIEFUOTFDX1BXTUNfU1lOQzcgICAgICAoMHgxIDw8ICA3KSAvLyAoUFdNQykgU3luY2hyb25vdXMgQ2hhbm5lbCBJRCA3DQojZGVmaW5lIEFUOTFDX1BXTUNfU1lOQzggICAgICAoMHgxIDw8ICA4KSAvLyAoUFdNQykgU3luY2hyb25vdXMgQ2hhbm5lbCBJRCA4DQojZGVmaW5lIEFUOTFDX1BXTUNfU1lOQzkgICAgICAoMHgxIDw8ICA5KSAvLyAoUFdNQykgU3luY2hyb25vdXMgQ2hhbm5lbCBJRCA5DQojZGVmaW5lIEFUOTFDX1BXTUNfU1lOQzEwICAgICAoMHgxIDw8IDEwKSAvLyAoUFdNQykgU3luY2hyb25vdXMgQ2hhbm5lbCBJRCAxMA0KI2RlZmluZSBBVDkxQ19QV01DX1NZTkMxMSAgICAgKDB4MSA8PCAxMSkgLy8gKFBXTUMpIFN5bmNocm9ub3VzIENoYW5uZWwgSUQgMTENCiNkZWZpbmUgQVQ5MUNfUFdNQ19TWU5DMTIgICAgICgweDEgPDwgMTIpIC8vIChQV01DKSBTeW5jaHJvbm91cyBDaGFubmVsIElEIDEyDQojZGVmaW5lIEFUOTFDX1BXTUNfU1lOQzEzICAgICAoMHgxIDw8IDEzKSAvLyAoUFdNQykgU3luY2hyb25vdXMgQ2hhbm5lbCBJRCAxMw0KI2RlZmluZSBBVDkxQ19QV01DX1NZTkMxNCAgICAgKDB4MSA8PCAxNCkgLy8gKFBXTUMpIFN5bmNocm9ub3VzIENoYW5uZWwgSUQgMTQNCiNkZWZpbmUgQVQ5MUNfUFdNQ19TWU5DMTUgICAgICgweDEgPDwgMTUpIC8vIChQV01DKSBTeW5jaHJvbm91cyBDaGFubmVsIElEIDE1DQojZGVmaW5lIEFUOTFDX1BXTUNfVVBETSAgICAgICAoMHgzIDw8IDE2KSAvLyAoUFdNQykgU3luY2hyb25vdXMgQ2hhbm5lbHMgVXBkYXRlIG1vZGUNCiNkZWZpbmUgCUFUOTFDX1BXTUNfVVBETV9NT0RFMCAgICAgICAgICAgICAgICAoMHgwIDw8IDE2KSAvLyAoUFdNQykgTWFudWFsIHdyaXRlIG9mIGRhdGEgYW5kIG1hbnVhbCB0cmlnZ2VyIG9mIHRoZSB1cGRhdGUNCiNkZWZpbmUgCUFUOTFDX1BXTUNfVVBETV9NT0RFMSAgICAgICAgICAgICAgICAoMHgxIDw8IDE2KSAvLyAoUFdNQykgTWFudWFsIHdyaXRlIG9mIGRhdGEgYW5kIGF1dG9tYXRpYyB0cmlnZ2VyIG9mIHRoZSB1cGRhdGUNCiNkZWZpbmUgCUFUOTFDX1BXTUNfVVBETV9NT0RFMiAgICAgICAgICAgICAgICAoMHgyIDw8IDE2KSAvLyAoUFdNQykgQXV0b21hdGljIHdyaXRlIG9mIGRhdGEgYW5kIGF1dG9tYXRpYyB0cmlnZ2VyIG9mIHRoZSB1cGRhdGUNCi8vIC0tLS0tLS0tIFBXTUNfVVBDUiA6IChQV01DIE9mZnNldDogMHgyOCkgUFdNQyBVcGRhdGUgQ29udHJvbCBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfUFdNQ19VUERVTE9DSyAgICgweDEgPDwgIDApIC8vIChQV01DKSBTeW5jaHJvbml6ZWQgQ2hhbm5lbHMgRHV0eSBDeWNsZSBVcGRhdGUgVW5sb2NrDQovLyAtLS0tLS0tLSBQV01DX1NDVVAgOiAoUFdNQyBPZmZzZXQ6IDB4MmMpIFBXTSBVcGRhdGUgUGVyaW9kIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19QV01DX1VQUiAgICAgICAgKDB4RiA8PCAgMCkgLy8gKFBXTUMpIFBXTSBVcGRhdGUgUGVyaW9kLg0KI2RlZmluZSBBVDkxQ19QV01DX1VQUkNOVCAgICAgKDB4RiA8PCAgNCkgLy8gKFBXTUMpIFBXTSBVcGRhdGUgUGVyaW9kIENvdW50ZXIuDQovLyAtLS0tLS0tLSBQV01DX1NDVVBVUEQgOiAoUFdNQyBPZmZzZXQ6IDB4MzApIFBXTSBVcGRhdGUgUGVyaW9kIFVwZGF0ZSBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfUFdNQ19VUFZVUERBTCAgICgweEYgPDwgIDApIC8vIChQV01DKSBQV00gVXBkYXRlIFBlcmlvZCBVcGRhdGUuDQovLyAtLS0tLS0tLSBQV01DX0lFUjIgOiAoUFdNQyBPZmZzZXQ6IDB4MzQpIFBXTUMgSW50ZXJydXB0IEVuYWJsZSBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfUFdNQ19XUkRZICAgICAgICgweDEgPDwgIDApIC8vIChQV01DKSBQREMgV3JpdGUgUmVhZHkNCiNkZWZpbmUgQVQ5MUNfUFdNQ19FTkRUWCAgICAgICgweDEgPDwgIDEpIC8vIChQV01DKSBQREMgRW5kIG9mIFRYIEJ1ZmZlcg0KI2RlZmluZSBBVDkxQ19QV01DX1RYQlVGRSAgICAgKDB4MSA8PCAgMikgLy8gKFBXTUMpIFBEQyBFbmQgb2YgVFggQnVmZmVyDQojZGVmaW5lIEFUOTFDX1BXTUNfVU5SRSAgICAgICAoMHgxIDw8ICAzKSAvLyAoUFdNQykgUERDIEVuZCBvZiBUWCBCdWZmZXINCi8vIC0tLS0tLS0tIFBXTUNfSURSMiA6IChQV01DIE9mZnNldDogMHgzOCkgUFdNQyBJbnRlcnJ1cHQgRGlzYWJsZSBSZWdpc3RlciAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIFBXTUNfSU1SMiA6IChQV01DIE9mZnNldDogMHgzYykgUFdNQyBJbnRlcnJ1cHQgTWFzayBSZWdpc3RlciAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIFBXTUNfSVNSMiA6IChQV01DIE9mZnNldDogMHg0MCkgUFdNQyBJbnRlcnJ1cHQgU3RhdHVzIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19QV01DX0NNUE0wICAgICAgKDB4MSA8PCAgOCkgLy8gKFBXTUMpIENvbXBhcmlzb24geCBNYXRjaA0KI2RlZmluZSBBVDkxQ19QV01DX0NNUE0xICAgICAgKDB4MSA8PCAgOSkgLy8gKFBXTUMpIENvbXBhcmlzb24geCBNYXRjaA0KI2RlZmluZSBBVDkxQ19QV01DX0NNUE0yICAgICAgKDB4MSA8PCAxMCkgLy8gKFBXTUMpIENvbXBhcmlzb24geCBNYXRjaA0KI2RlZmluZSBBVDkxQ19QV01DX0NNUE0zICAgICAgKDB4MSA8PCAxMSkgLy8gKFBXTUMpIENvbXBhcmlzb24geCBNYXRjaA0KI2RlZmluZSBBVDkxQ19QV01DX0NNUE00ICAgICAgKDB4MSA8PCAxMikgLy8gKFBXTUMpIENvbXBhcmlzb24geCBNYXRjaA0KI2RlZmluZSBBVDkxQ19QV01DX0NNUE01ICAgICAgKDB4MSA8PCAxMykgLy8gKFBXTUMpIENvbXBhcmlzb24geCBNYXRjaA0KI2RlZmluZSBBVDkxQ19QV01DX0NNUE02ICAgICAgKDB4MSA8PCAxNCkgLy8gKFBXTUMpIENvbXBhcmlzb24geCBNYXRjaA0KI2RlZmluZSBBVDkxQ19QV01DX0NNUE03ICAgICAgKDB4MSA8PCAxNSkgLy8gKFBXTUMpIENvbXBhcmlzb24geCBNYXRjaA0KI2RlZmluZSBBVDkxQ19QV01DX0NNUFUwICAgICAgKDB4MSA8PCAxNikgLy8gKFBXTUMpIENvbXBhcmlzb24geCBVcGRhdGUNCiNkZWZpbmUgQVQ5MUNfUFdNQ19DTVBVMSAgICAgICgweDEgPDwgMTcpIC8vIChQV01DKSBDb21wYXJpc29uIHggVXBkYXRlDQojZGVmaW5lIEFUOTFDX1BXTUNfQ01QVTIgICAgICAoMHgxIDw8IDE4KSAvLyAoUFdNQykgQ29tcGFyaXNvbiB4IFVwZGF0ZQ0KI2RlZmluZSBBVDkxQ19QV01DX0NNUFUzICAgICAgKDB4MSA8PCAxOSkgLy8gKFBXTUMpIENvbXBhcmlzb24geCBVcGRhdGUNCiNkZWZpbmUgQVQ5MUNfUFdNQ19DTVBVNCAgICAgICgweDEgPDwgMjApIC8vIChQV01DKSBDb21wYXJpc29uIHggVXBkYXRlDQojZGVmaW5lIEFUOTFDX1BXTUNfQ01QVTUgICAgICAoMHgxIDw8IDIxKSAvLyAoUFdNQykgQ29tcGFyaXNvbiB4IFVwZGF0ZQ0KI2RlZmluZSBBVDkxQ19QV01DX0NNUFU2ICAgICAgKDB4MSA8PCAyMikgLy8gKFBXTUMpIENvbXBhcmlzb24geCBVcGRhdGUNCiNkZWZpbmUgQVQ5MUNfUFdNQ19DTVBVNyAgICAgICgweDEgPDwgMjMpIC8vIChQV01DKSBDb21wYXJpc29uIHggVXBkYXRlDQovLyAtLS0tLS0tLSBQV01DX09PViA6IChQV01DIE9mZnNldDogMHg0NCkgUFdNIE91dHB1dCBPdmVycmlkZSBWYWx1ZSBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfUFdNQ19PT1ZIMCAgICAgICgweDEgPDwgIDApIC8vIChQV01DKSBPdXRwdXQgT3ZlcnJpZGUgVmFsdWUgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDANCiNkZWZpbmUgQVQ5MUNfUFdNQ19PT1ZIMSAgICAgICgweDEgPDwgIDEpIC8vIChQV01DKSBPdXRwdXQgT3ZlcnJpZGUgVmFsdWUgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDENCiNkZWZpbmUgQVQ5MUNfUFdNQ19PT1ZIMiAgICAgICgweDEgPDwgIDIpIC8vIChQV01DKSBPdXRwdXQgT3ZlcnJpZGUgVmFsdWUgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDINCiNkZWZpbmUgQVQ5MUNfUFdNQ19PT1ZIMyAgICAgICgweDEgPDwgIDMpIC8vIChQV01DKSBPdXRwdXQgT3ZlcnJpZGUgVmFsdWUgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDMNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PT1ZINCAgICAgICgweDEgPDwgIDQpIC8vIChQV01DKSBPdXRwdXQgT3ZlcnJpZGUgVmFsdWUgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDQNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PT1ZINSAgICAgICgweDEgPDwgIDUpIC8vIChQV01DKSBPdXRwdXQgT3ZlcnJpZGUgVmFsdWUgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDUNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PT1ZINiAgICAgICgweDEgPDwgIDYpIC8vIChQV01DKSBPdXRwdXQgT3ZlcnJpZGUgVmFsdWUgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDYNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PT1ZINyAgICAgICgweDEgPDwgIDcpIC8vIChQV01DKSBPdXRwdXQgT3ZlcnJpZGUgVmFsdWUgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDcNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PT1ZIOCAgICAgICgweDEgPDwgIDgpIC8vIChQV01DKSBPdXRwdXQgT3ZlcnJpZGUgVmFsdWUgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDgNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PT1ZIOSAgICAgICgweDEgPDwgIDkpIC8vIChQV01DKSBPdXRwdXQgT3ZlcnJpZGUgVmFsdWUgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDkNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PT1ZIMTAgICAgICgweDEgPDwgMTApIC8vIChQV01DKSBPdXRwdXQgT3ZlcnJpZGUgVmFsdWUgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDEwDQojZGVmaW5lIEFUOTFDX1BXTUNfT09WSDExICAgICAoMHgxIDw8IDExKSAvLyAoUFdNQykgT3V0cHV0IE92ZXJyaWRlIFZhbHVlIGZvciBQV01IIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAxMQ0KI2RlZmluZSBBVDkxQ19QV01DX09PVkgxMiAgICAgKDB4MSA8PCAxMikgLy8gKFBXTUMpIE91dHB1dCBPdmVycmlkZSBWYWx1ZSBmb3IgUFdNSCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMTINCiNkZWZpbmUgQVQ5MUNfUFdNQ19PT1ZIMTMgICAgICgweDEgPDwgMTMpIC8vIChQV01DKSBPdXRwdXQgT3ZlcnJpZGUgVmFsdWUgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDEzDQojZGVmaW5lIEFUOTFDX1BXTUNfT09WSDE0ICAgICAoMHgxIDw8IDE0KSAvLyAoUFdNQykgT3V0cHV0IE92ZXJyaWRlIFZhbHVlIGZvciBQV01IIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAxNA0KI2RlZmluZSBBVDkxQ19QV01DX09PVkgxNSAgICAgKDB4MSA8PCAxNSkgLy8gKFBXTUMpIE91dHB1dCBPdmVycmlkZSBWYWx1ZSBmb3IgUFdNSCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMTUNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PT1ZMMCAgICAgICgweDEgPDwgMTYpIC8vIChQV01DKSBPdXRwdXQgT3ZlcnJpZGUgVmFsdWUgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDANCiNkZWZpbmUgQVQ5MUNfUFdNQ19PT1ZMMSAgICAgICgweDEgPDwgMTcpIC8vIChQV01DKSBPdXRwdXQgT3ZlcnJpZGUgVmFsdWUgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDENCiNkZWZpbmUgQVQ5MUNfUFdNQ19PT1ZMMiAgICAgICgweDEgPDwgMTgpIC8vIChQV01DKSBPdXRwdXQgT3ZlcnJpZGUgVmFsdWUgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDINCiNkZWZpbmUgQVQ5MUNfUFdNQ19PT1ZMMyAgICAgICgweDEgPDwgMTkpIC8vIChQV01DKSBPdXRwdXQgT3ZlcnJpZGUgVmFsdWUgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDMNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PT1ZMNCAgICAgICgweDEgPDwgMjApIC8vIChQV01DKSBPdXRwdXQgT3ZlcnJpZGUgVmFsdWUgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDQNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PT1ZMNSAgICAgICgweDEgPDwgMjEpIC8vIChQV01DKSBPdXRwdXQgT3ZlcnJpZGUgVmFsdWUgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDUNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PT1ZMNiAgICAgICgweDEgPDwgMjIpIC8vIChQV01DKSBPdXRwdXQgT3ZlcnJpZGUgVmFsdWUgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDYNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PT1ZMNyAgICAgICgweDEgPDwgMjMpIC8vIChQV01DKSBPdXRwdXQgT3ZlcnJpZGUgVmFsdWUgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDcNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PT1ZMOCAgICAgICgweDEgPDwgMjQpIC8vIChQV01DKSBPdXRwdXQgT3ZlcnJpZGUgVmFsdWUgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDgNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PT1ZMOSAgICAgICgweDEgPDwgMjUpIC8vIChQV01DKSBPdXRwdXQgT3ZlcnJpZGUgVmFsdWUgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDkNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PT1ZMMTAgICAgICgweDEgPDwgMjYpIC8vIChQV01DKSBPdXRwdXQgT3ZlcnJpZGUgVmFsdWUgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDEwDQojZGVmaW5lIEFUOTFDX1BXTUNfT09WTDExICAgICAoMHgxIDw8IDI3KSAvLyAoUFdNQykgT3V0cHV0IE92ZXJyaWRlIFZhbHVlIGZvciBQV01MIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAxMQ0KI2RlZmluZSBBVDkxQ19QV01DX09PVkwxMiAgICAgKDB4MSA8PCAyOCkgLy8gKFBXTUMpIE91dHB1dCBPdmVycmlkZSBWYWx1ZSBmb3IgUFdNTCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMTINCiNkZWZpbmUgQVQ5MUNfUFdNQ19PT1ZMMTMgICAgICgweDEgPDwgMjkpIC8vIChQV01DKSBPdXRwdXQgT3ZlcnJpZGUgVmFsdWUgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDEzDQojZGVmaW5lIEFUOTFDX1BXTUNfT09WTDE0ICAgICAoMHgxIDw8IDMwKSAvLyAoUFdNQykgT3V0cHV0IE92ZXJyaWRlIFZhbHVlIGZvciBQV01MIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAxNA0KI2RlZmluZSBBVDkxQ19QV01DX09PVkwxNSAgICAgKDB4MSA8PCAzMSkgLy8gKFBXTUMpIE91dHB1dCBPdmVycmlkZSBWYWx1ZSBmb3IgUFdNTCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMTUNCi8vIC0tLS0tLS0tIFBXTUNfT1MgOiAoUFdNQyBPZmZzZXQ6IDB4NDgpIFBXTSBPdXRwdXQgU2VsZWN0aW9uIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19QV01DX09TSDAgICAgICAgKDB4MSA8PCAgMCkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDANCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0gxICAgICAgICgweDEgPDwgIDEpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIGZvciBQV01IIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAxDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NIMiAgICAgICAoMHgxIDw8ICAyKSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBmb3IgUFdNSCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMg0KI2RlZmluZSBBVDkxQ19QV01DX09TSDMgICAgICAgKDB4MSA8PCAgMykgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDMNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0g0ICAgICAgICgweDEgPDwgIDQpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIGZvciBQV01IIG91dHB1dCBvZiB0aGUgY2hhbm5lbCA0DQojZGVmaW5lIEFUOTFDX1BXTUNfT1NINSAgICAgICAoMHgxIDw8ICA1KSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBmb3IgUFdNSCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgNQ0KI2RlZmluZSBBVDkxQ19QV01DX09TSDYgICAgICAgKDB4MSA8PCAgNikgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDYNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0g3ICAgICAgICgweDEgPDwgIDcpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIGZvciBQV01IIG91dHB1dCBvZiB0aGUgY2hhbm5lbCA3DQojZGVmaW5lIEFUOTFDX1BXTUNfT1NIOCAgICAgICAoMHgxIDw8ICA4KSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBmb3IgUFdNSCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgOA0KI2RlZmluZSBBVDkxQ19QV01DX09TSDkgICAgICAgKDB4MSA8PCAgOSkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDkNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0gxMCAgICAgICgweDEgPDwgMTApIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIGZvciBQV01IIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAxMA0KI2RlZmluZSBBVDkxQ19QV01DX09TSDExICAgICAgKDB4MSA8PCAxMSkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDExDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NIMTIgICAgICAoMHgxIDw8IDEyKSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBmb3IgUFdNSCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMTINCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0gxMyAgICAgICgweDEgPDwgMTMpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIGZvciBQV01IIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAxMw0KI2RlZmluZSBBVDkxQ19QV01DX09TSDE0ICAgICAgKDB4MSA8PCAxNCkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDE0DQojZGVmaW5lIEFUOTFDX1BXTUNfT1NIMTUgICAgICAoMHgxIDw8IDE1KSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBmb3IgUFdNSCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMTUNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0wwICAgICAgICgweDEgPDwgMTYpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIGZvciBQV01MIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAwDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NMMSAgICAgICAoMHgxIDw8IDE3KSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBmb3IgUFdNTCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMQ0KI2RlZmluZSBBVDkxQ19QV01DX09TTDIgICAgICAgKDB4MSA8PCAxOCkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDINCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0wzICAgICAgICgweDEgPDwgMTkpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIGZvciBQV01MIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAzDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NMNCAgICAgICAoMHgxIDw8IDIwKSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBmb3IgUFdNTCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgNA0KI2RlZmluZSBBVDkxQ19QV01DX09TTDUgICAgICAgKDB4MSA8PCAyMSkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDUNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0w2ICAgICAgICgweDEgPDwgMjIpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIGZvciBQV01MIG91dHB1dCBvZiB0aGUgY2hhbm5lbCA2DQojZGVmaW5lIEFUOTFDX1BXTUNfT1NMNyAgICAgICAoMHgxIDw8IDIzKSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBmb3IgUFdNTCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgNw0KI2RlZmluZSBBVDkxQ19QV01DX09TTDggICAgICAgKDB4MSA8PCAyNCkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDgNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0w5ICAgICAgICgweDEgPDwgMjUpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIGZvciBQV01MIG91dHB1dCBvZiB0aGUgY2hhbm5lbCA5DQojZGVmaW5lIEFUOTFDX1BXTUNfT1NMMTAgICAgICAoMHgxIDw8IDI2KSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBmb3IgUFdNTCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMTANCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0wxMSAgICAgICgweDEgPDwgMjcpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIGZvciBQV01MIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAxMQ0KI2RlZmluZSBBVDkxQ19QV01DX09TTDEyICAgICAgKDB4MSA8PCAyOCkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDEyDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NMMTMgICAgICAoMHgxIDw8IDI5KSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBmb3IgUFdNTCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMTMNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0wxNCAgICAgICgweDEgPDwgMzApIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIGZvciBQV01MIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAxNA0KI2RlZmluZSBBVDkxQ19QV01DX09TTDE1ICAgICAgKDB4MSA8PCAzMSkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDE1DQovLyAtLS0tLS0tLSBQV01DX09TUyA6IChQV01DIE9mZnNldDogMHg0YykgUFdNIE91dHB1dCBTZWxlY3Rpb24gU2V0IFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19QV01DX09TU0gwICAgICAgKDB4MSA8PCAgMCkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gU2V0IGZvciBQV01IIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAwDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NTSDEgICAgICAoMHgxIDw8ICAxKSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBTZXQgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDENCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU1NIMiAgICAgICgweDEgPDwgIDIpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIFNldCBmb3IgUFdNSCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMg0KI2RlZmluZSBBVDkxQ19QV01DX09TU0gzICAgICAgKDB4MSA8PCAgMykgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gU2V0IGZvciBQV01IIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAzDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NTSDQgICAgICAoMHgxIDw8ICA0KSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBTZXQgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDQNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU1NINSAgICAgICgweDEgPDwgIDUpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIFNldCBmb3IgUFdNSCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgNQ0KI2RlZmluZSBBVDkxQ19QV01DX09TU0g2ICAgICAgKDB4MSA8PCAgNikgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gU2V0IGZvciBQV01IIG91dHB1dCBvZiB0aGUgY2hhbm5lbCA2DQojZGVmaW5lIEFUOTFDX1BXTUNfT1NTSDcgICAgICAoMHgxIDw8ICA3KSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBTZXQgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDcNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU1NIOCAgICAgICgweDEgPDwgIDgpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIFNldCBmb3IgUFdNSCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgOA0KI2RlZmluZSBBVDkxQ19QV01DX09TU0g5ICAgICAgKDB4MSA8PCAgOSkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gU2V0IGZvciBQV01IIG91dHB1dCBvZiB0aGUgY2hhbm5lbCA5DQojZGVmaW5lIEFUOTFDX1BXTUNfT1NTSDEwICAgICAoMHgxIDw8IDEwKSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBTZXQgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDEwDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NTSDExICAgICAoMHgxIDw8IDExKSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBTZXQgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDExDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NTSDEyICAgICAoMHgxIDw8IDEyKSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBTZXQgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDEyDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NTSDEzICAgICAoMHgxIDw8IDEzKSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBTZXQgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDEzDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NTSDE0ICAgICAoMHgxIDw8IDE0KSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBTZXQgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDE0DQojZGVmaW5lIEFUOTFDX1BXTUNfT1NTSDE1ICAgICAoMHgxIDw8IDE1KSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBTZXQgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDE1DQojZGVmaW5lIEFUOTFDX1BXTUNfT1NTTDAgICAgICAoMHgxIDw8IDE2KSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBTZXQgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDANCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU1NMMSAgICAgICgweDEgPDwgMTcpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIFNldCBmb3IgUFdNTCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMQ0KI2RlZmluZSBBVDkxQ19QV01DX09TU0wyICAgICAgKDB4MSA8PCAxOCkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gU2V0IGZvciBQV01MIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAyDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NTTDMgICAgICAoMHgxIDw8IDE5KSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBTZXQgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDMNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU1NMNCAgICAgICgweDEgPDwgMjApIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIFNldCBmb3IgUFdNTCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgNA0KI2RlZmluZSBBVDkxQ19QV01DX09TU0w1ICAgICAgKDB4MSA8PCAyMSkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gU2V0IGZvciBQV01MIG91dHB1dCBvZiB0aGUgY2hhbm5lbCA1DQojZGVmaW5lIEFUOTFDX1BXTUNfT1NTTDYgICAgICAoMHgxIDw8IDIyKSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBTZXQgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDYNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU1NMNyAgICAgICgweDEgPDwgMjMpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIFNldCBmb3IgUFdNTCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgNw0KI2RlZmluZSBBVDkxQ19QV01DX09TU0w4ICAgICAgKDB4MSA8PCAyNCkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gU2V0IGZvciBQV01MIG91dHB1dCBvZiB0aGUgY2hhbm5lbCA4DQojZGVmaW5lIEFUOTFDX1BXTUNfT1NTTDkgICAgICAoMHgxIDw8IDI1KSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBTZXQgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDkNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU1NMMTAgICAgICgweDEgPDwgMjYpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIFNldCBmb3IgUFdNTCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMTANCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU1NMMTEgICAgICgweDEgPDwgMjcpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIFNldCBmb3IgUFdNTCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMTENCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU1NMMTIgICAgICgweDEgPDwgMjgpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIFNldCBmb3IgUFdNTCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMTINCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU1NMMTMgICAgICgweDEgPDwgMjkpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIFNldCBmb3IgUFdNTCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMTMNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU1NMMTQgICAgICgweDEgPDwgMzApIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIFNldCBmb3IgUFdNTCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMTQNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU1NMMTUgICAgICgweDEgPDwgMzEpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIFNldCBmb3IgUFdNTCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMTUNCi8vIC0tLS0tLS0tIFBXTUNfT1NDIDogKFBXTUMgT2Zmc2V0OiAweDUwKSBQV00gT3V0cHV0IFNlbGVjdGlvbiBDbGVhciBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0NIMCAgICAgICgweDEgPDwgIDApIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIENsZWFyIGZvciBQV01IIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAwDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NDSDEgICAgICAoMHgxIDw8ICAxKSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBDbGVhciBmb3IgUFdNSCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMQ0KI2RlZmluZSBBVDkxQ19QV01DX09TQ0gyICAgICAgKDB4MSA8PCAgMikgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gQ2xlYXIgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDINCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0NIMyAgICAgICgweDEgPDwgIDMpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIENsZWFyIGZvciBQV01IIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAzDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NDSDQgICAgICAoMHgxIDw8ICA0KSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBDbGVhciBmb3IgUFdNSCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgNA0KI2RlZmluZSBBVDkxQ19QV01DX09TQ0g1ICAgICAgKDB4MSA8PCAgNSkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gQ2xlYXIgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDUNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0NINiAgICAgICgweDEgPDwgIDYpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIENsZWFyIGZvciBQV01IIG91dHB1dCBvZiB0aGUgY2hhbm5lbCA2DQojZGVmaW5lIEFUOTFDX1BXTUNfT1NDSDcgICAgICAoMHgxIDw8ICA3KSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBDbGVhciBmb3IgUFdNSCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgNw0KI2RlZmluZSBBVDkxQ19QV01DX09TQ0g4ICAgICAgKDB4MSA8PCAgOCkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gQ2xlYXIgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDgNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0NIOSAgICAgICgweDEgPDwgIDkpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIENsZWFyIGZvciBQV01IIG91dHB1dCBvZiB0aGUgY2hhbm5lbCA5DQojZGVmaW5lIEFUOTFDX1BXTUNfT1NDSDEwICAgICAoMHgxIDw8IDEwKSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBDbGVhciBmb3IgUFdNSCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMTANCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0NIMTEgICAgICgweDEgPDwgMTEpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIENsZWFyIGZvciBQV01IIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAxMQ0KI2RlZmluZSBBVDkxQ19QV01DX09TQ0gxMiAgICAgKDB4MSA8PCAxMikgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gQ2xlYXIgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDEyDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NDSDEzICAgICAoMHgxIDw8IDEzKSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBDbGVhciBmb3IgUFdNSCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMTMNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0NIMTQgICAgICgweDEgPDwgMTQpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIENsZWFyIGZvciBQV01IIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAxNA0KI2RlZmluZSBBVDkxQ19QV01DX09TQ0gxNSAgICAgKDB4MSA8PCAxNSkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gQ2xlYXIgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDE1DQojZGVmaW5lIEFUOTFDX1BXTUNfT1NDTDAgICAgICAoMHgxIDw8IDE2KSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBDbGVhciBmb3IgUFdNTCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMA0KI2RlZmluZSBBVDkxQ19QV01DX09TQ0wxICAgICAgKDB4MSA8PCAxNykgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gQ2xlYXIgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDENCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0NMMiAgICAgICgweDEgPDwgMTgpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIENsZWFyIGZvciBQV01MIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAyDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NDTDMgICAgICAoMHgxIDw8IDE5KSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBDbGVhciBmb3IgUFdNTCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMw0KI2RlZmluZSBBVDkxQ19QV01DX09TQ0w0ICAgICAgKDB4MSA8PCAyMCkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gQ2xlYXIgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDQNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0NMNSAgICAgICgweDEgPDwgMjEpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIENsZWFyIGZvciBQV01MIG91dHB1dCBvZiB0aGUgY2hhbm5lbCA1DQojZGVmaW5lIEFUOTFDX1BXTUNfT1NDTDYgICAgICAoMHgxIDw8IDIyKSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBDbGVhciBmb3IgUFdNTCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgNg0KI2RlZmluZSBBVDkxQ19QV01DX09TQ0w3ICAgICAgKDB4MSA8PCAyMykgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gQ2xlYXIgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDcNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0NMOCAgICAgICgweDEgPDwgMjQpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIENsZWFyIGZvciBQV01MIG91dHB1dCBvZiB0aGUgY2hhbm5lbCA4DQojZGVmaW5lIEFUOTFDX1BXTUNfT1NDTDkgICAgICAoMHgxIDw8IDI1KSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBDbGVhciBmb3IgUFdNTCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgOQ0KI2RlZmluZSBBVDkxQ19QV01DX09TQ0wxMCAgICAgKDB4MSA8PCAyNikgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gQ2xlYXIgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDEwDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NDTDExICAgICAoMHgxIDw8IDI3KSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBDbGVhciBmb3IgUFdNTCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMTENCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0NMMTIgICAgICgweDEgPDwgMjgpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIENsZWFyIGZvciBQV01MIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAxMg0KI2RlZmluZSBBVDkxQ19QV01DX09TQ0wxMyAgICAgKDB4MSA8PCAyOSkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gQ2xlYXIgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDEzDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NDTDE0ICAgICAoMHgxIDw8IDMwKSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBDbGVhciBmb3IgUFdNTCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMTQNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0NMMTUgICAgICgweDEgPDwgMzEpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIENsZWFyIGZvciBQV01MIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAxNQ0KLy8gLS0tLS0tLS0gUFdNQ19PU1NVUEQgOiAoUFdNQyBPZmZzZXQ6IDB4NTQpIE91dHB1dCBTZWxlY3Rpb24gU2V0IGZvciBQV01IIC8gUFdNTCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgeCAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU1NVUERIMCAgICgweDEgPDwgIDApIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIFNldCBmb3IgUFdNSCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMA0KI2RlZmluZSBBVDkxQ19QV01DX09TU1VQREgxICAgKDB4MSA8PCAgMSkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gU2V0IGZvciBQV01IIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAxDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NTVVBESDIgICAoMHgxIDw8ICAyKSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBTZXQgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDINCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU1NVUERIMyAgICgweDEgPDwgIDMpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIFNldCBmb3IgUFdNSCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMw0KI2RlZmluZSBBVDkxQ19QV01DX09TU1VQREg0ICAgKDB4MSA8PCAgNCkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gU2V0IGZvciBQV01IIG91dHB1dCBvZiB0aGUgY2hhbm5lbCA0DQojZGVmaW5lIEFUOTFDX1BXTUNfT1NTVVBESDUgICAoMHgxIDw8ICA1KSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBTZXQgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDUNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU1NVUERINiAgICgweDEgPDwgIDYpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIFNldCBmb3IgUFdNSCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgNg0KI2RlZmluZSBBVDkxQ19QV01DX09TU1VQREg3ICAgKDB4MSA8PCAgNykgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gU2V0IGZvciBQV01IIG91dHB1dCBvZiB0aGUgY2hhbm5lbCA3DQojZGVmaW5lIEFUOTFDX1BXTUNfT1NTVVBESDggICAoMHgxIDw8ICA4KSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBTZXQgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDgNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU1NVUERIOSAgICgweDEgPDwgIDkpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIFNldCBmb3IgUFdNSCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgOQ0KI2RlZmluZSBBVDkxQ19QV01DX09TU1VQREgxMCAgKDB4MSA8PCAxMCkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gU2V0IGZvciBQV01IIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAxMA0KI2RlZmluZSBBVDkxQ19QV01DX09TU1VQREgxMSAgKDB4MSA8PCAxMSkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gU2V0IGZvciBQV01IIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAxMQ0KI2RlZmluZSBBVDkxQ19QV01DX09TU1VQREgxMiAgKDB4MSA8PCAxMikgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gU2V0IGZvciBQV01IIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAxMg0KI2RlZmluZSBBVDkxQ19QV01DX09TU1VQREgxMyAgKDB4MSA8PCAxMykgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gU2V0IGZvciBQV01IIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAxMw0KI2RlZmluZSBBVDkxQ19QV01DX09TU1VQREgxNCAgKDB4MSA8PCAxNCkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gU2V0IGZvciBQV01IIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAxNA0KI2RlZmluZSBBVDkxQ19QV01DX09TU1VQREgxNSAgKDB4MSA8PCAxNSkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gU2V0IGZvciBQV01IIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAxNQ0KI2RlZmluZSBBVDkxQ19QV01DX09TU1VQREwwICAgKDB4MSA8PCAxNikgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gU2V0IGZvciBQV01MIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAwDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NTVVBETDEgICAoMHgxIDw8IDE3KSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBTZXQgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDENCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU1NVUERMMiAgICgweDEgPDwgMTgpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIFNldCBmb3IgUFdNTCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMg0KI2RlZmluZSBBVDkxQ19QV01DX09TU1VQREwzICAgKDB4MSA8PCAxOSkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gU2V0IGZvciBQV01MIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAzDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NTVVBETDQgICAoMHgxIDw8IDIwKSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBTZXQgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDQNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU1NVUERMNSAgICgweDEgPDwgMjEpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIFNldCBmb3IgUFdNTCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgNQ0KI2RlZmluZSBBVDkxQ19QV01DX09TU1VQREw2ICAgKDB4MSA8PCAyMikgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gU2V0IGZvciBQV01MIG91dHB1dCBvZiB0aGUgY2hhbm5lbCA2DQojZGVmaW5lIEFUOTFDX1BXTUNfT1NTVVBETDcgICAoMHgxIDw8IDIzKSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBTZXQgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDcNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU1NVUERMOCAgICgweDEgPDwgMjQpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIFNldCBmb3IgUFdNTCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgOA0KI2RlZmluZSBBVDkxQ19QV01DX09TU1VQREw5ICAgKDB4MSA8PCAyNSkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gU2V0IGZvciBQV01MIG91dHB1dCBvZiB0aGUgY2hhbm5lbCA5DQojZGVmaW5lIEFUOTFDX1BXTUNfT1NTVVBETDEwICAoMHgxIDw8IDI2KSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBTZXQgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDEwDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NTVVBETDExICAoMHgxIDw8IDI3KSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBTZXQgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDExDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NTVVBETDEyICAoMHgxIDw8IDI4KSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBTZXQgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDEyDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NTVVBETDEzICAoMHgxIDw8IDI5KSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBTZXQgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDEzDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NTVVBETDE0ICAoMHgxIDw8IDMwKSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBTZXQgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDE0DQojZGVmaW5lIEFUOTFDX1BXTUNfT1NTVVBETDE1ICAoMHgxIDw8IDMxKSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBTZXQgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDE1DQovLyAtLS0tLS0tLSBQV01DX09TQ1VQRCA6IChQV01DIE9mZnNldDogMHg1OCkgT3V0cHV0IFNlbGVjdGlvbiBDbGVhciBmb3IgUFdNSCAvIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIHggLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NDVVBESDAgICAoMHgxIDw8ICAwKSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBDbGVhciBmb3IgUFdNSCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMA0KI2RlZmluZSBBVDkxQ19QV01DX09TQ1VQREgxICAgKDB4MSA8PCAgMSkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gQ2xlYXIgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDENCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0NVUERIMiAgICgweDEgPDwgIDIpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIENsZWFyIGZvciBQV01IIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAyDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NDVVBESDMgICAoMHgxIDw8ICAzKSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBDbGVhciBmb3IgUFdNSCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMw0KI2RlZmluZSBBVDkxQ19QV01DX09TQ1VQREg0ICAgKDB4MSA8PCAgNCkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gQ2xlYXIgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDQNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0NVUERINSAgICgweDEgPDwgIDUpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIENsZWFyIGZvciBQV01IIG91dHB1dCBvZiB0aGUgY2hhbm5lbCA1DQojZGVmaW5lIEFUOTFDX1BXTUNfT1NDVVBESDYgICAoMHgxIDw8ICA2KSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBDbGVhciBmb3IgUFdNSCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgNg0KI2RlZmluZSBBVDkxQ19QV01DX09TQ1VQREg3ICAgKDB4MSA8PCAgNykgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gQ2xlYXIgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDcNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0NVUERIOCAgICgweDEgPDwgIDgpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIENsZWFyIGZvciBQV01IIG91dHB1dCBvZiB0aGUgY2hhbm5lbCA4DQojZGVmaW5lIEFUOTFDX1BXTUNfT1NDVVBESDkgICAoMHgxIDw8ICA5KSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBDbGVhciBmb3IgUFdNSCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgOQ0KI2RlZmluZSBBVDkxQ19QV01DX09TQ1VQREgxMCAgKDB4MSA8PCAxMCkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gQ2xlYXIgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDEwDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NDVVBESDExICAoMHgxIDw8IDExKSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBDbGVhciBmb3IgUFdNSCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMTENCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0NVUERIMTIgICgweDEgPDwgMTIpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIENsZWFyIGZvciBQV01IIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAxMg0KI2RlZmluZSBBVDkxQ19QV01DX09TQ1VQREgxMyAgKDB4MSA8PCAxMykgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gQ2xlYXIgZm9yIFBXTUggb3V0cHV0IG9mIHRoZSBjaGFubmVsIDEzDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NDVVBESDE0ICAoMHgxIDw8IDE0KSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBDbGVhciBmb3IgUFdNSCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMTQNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0NVUERIMTUgICgweDEgPDwgMTUpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIENsZWFyIGZvciBQV01IIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAxNQ0KI2RlZmluZSBBVDkxQ19QV01DX09TQ1VQREwwICAgKDB4MSA8PCAxNikgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gQ2xlYXIgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDANCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0NVUERMMSAgICgweDEgPDwgMTcpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIENsZWFyIGZvciBQV01MIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAxDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NDVVBETDIgICAoMHgxIDw8IDE4KSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBDbGVhciBmb3IgUFdNTCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMg0KI2RlZmluZSBBVDkxQ19QV01DX09TQ1VQREwzICAgKDB4MSA8PCAxOSkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gQ2xlYXIgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDMNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0NVUERMNCAgICgweDEgPDwgMjApIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIENsZWFyIGZvciBQV01MIG91dHB1dCBvZiB0aGUgY2hhbm5lbCA0DQojZGVmaW5lIEFUOTFDX1BXTUNfT1NDVVBETDUgICAoMHgxIDw8IDIxKSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBDbGVhciBmb3IgUFdNTCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgNQ0KI2RlZmluZSBBVDkxQ19QV01DX09TQ1VQREw2ICAgKDB4MSA8PCAyMikgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gQ2xlYXIgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDYNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0NVUERMNyAgICgweDEgPDwgMjMpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIENsZWFyIGZvciBQV01MIG91dHB1dCBvZiB0aGUgY2hhbm5lbCA3DQojZGVmaW5lIEFUOTFDX1BXTUNfT1NDVVBETDggICAoMHgxIDw8IDI0KSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBDbGVhciBmb3IgUFdNTCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgOA0KI2RlZmluZSBBVDkxQ19QV01DX09TQ1VQREw5ICAgKDB4MSA8PCAyNSkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gQ2xlYXIgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDkNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0NVUERMMTAgICgweDEgPDwgMjYpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIENsZWFyIGZvciBQV01MIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAxMA0KI2RlZmluZSBBVDkxQ19QV01DX09TQ1VQREwxMSAgKDB4MSA8PCAyNykgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gQ2xlYXIgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDExDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NDVVBETDEyICAoMHgxIDw8IDI4KSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBDbGVhciBmb3IgUFdNTCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMTINCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0NVUERMMTMgICgweDEgPDwgMjkpIC8vIChQV01DKSBPdXRwdXQgU2VsZWN0aW9uIENsZWFyIGZvciBQV01MIG91dHB1dCBvZiB0aGUgY2hhbm5lbCAxMw0KI2RlZmluZSBBVDkxQ19QV01DX09TQ1VQREwxNCAgKDB4MSA8PCAzMCkgLy8gKFBXTUMpIE91dHB1dCBTZWxlY3Rpb24gQ2xlYXIgZm9yIFBXTUwgb3V0cHV0IG9mIHRoZSBjaGFubmVsIDE0DQojZGVmaW5lIEFUOTFDX1BXTUNfT1NDVVBETDE1ICAoMHgxIDw8IDMxKSAvLyAoUFdNQykgT3V0cHV0IFNlbGVjdGlvbiBDbGVhciBmb3IgUFdNTCBvdXRwdXQgb2YgdGhlIGNoYW5uZWwgMTUNCi8vIC0tLS0tLS0tIFBXTUNfRk1SIDogKFBXTUMgT2Zmc2V0OiAweDVjKSBQV00gRmF1bHQgTW9kZSBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfUFdNQ19GUE9MMCAgICAgICgweDEgPDwgIDApIC8vIChQV01DKSBGYXVsdCBQb2xhcml0eSBvbiBmYXVsdCBpbnB1dCAwDQojZGVmaW5lIEFUOTFDX1BXTUNfRlBPTDEgICAgICAoMHgxIDw8ICAxKSAvLyAoUFdNQykgRmF1bHQgUG9sYXJpdHkgb24gZmF1bHQgaW5wdXQgMQ0KI2RlZmluZSBBVDkxQ19QV01DX0ZQT0wyICAgICAgKDB4MSA8PCAgMikgLy8gKFBXTUMpIEZhdWx0IFBvbGFyaXR5IG9uIGZhdWx0IGlucHV0IDINCiNkZWZpbmUgQVQ5MUNfUFdNQ19GUE9MMyAgICAgICgweDEgPDwgIDMpIC8vIChQV01DKSBGYXVsdCBQb2xhcml0eSBvbiBmYXVsdCBpbnB1dCAzDQojZGVmaW5lIEFUOTFDX1BXTUNfRlBPTDQgICAgICAoMHgxIDw8ICA0KSAvLyAoUFdNQykgRmF1bHQgUG9sYXJpdHkgb24gZmF1bHQgaW5wdXQgNA0KI2RlZmluZSBBVDkxQ19QV01DX0ZQT0w1ICAgICAgKDB4MSA8PCAgNSkgLy8gKFBXTUMpIEZhdWx0IFBvbGFyaXR5IG9uIGZhdWx0IGlucHV0IDUNCiNkZWZpbmUgQVQ5MUNfUFdNQ19GUE9MNiAgICAgICgweDEgPDwgIDYpIC8vIChQV01DKSBGYXVsdCBQb2xhcml0eSBvbiBmYXVsdCBpbnB1dCA2DQojZGVmaW5lIEFUOTFDX1BXTUNfRlBPTDcgICAgICAoMHgxIDw8ICA3KSAvLyAoUFdNQykgRmF1bHQgUG9sYXJpdHkgb24gZmF1bHQgaW5wdXQgNw0KI2RlZmluZSBBVDkxQ19QV01DX0ZNT0QwICAgICAgKDB4MSA8PCAgOCkgLy8gKFBXTUMpIEZhdWx0IEFjdGl2YXRpb24gTW9kZSBvbiBmYXVsdCBpbnB1dCAwDQojZGVmaW5lIEFUOTFDX1BXTUNfRk1PRDEgICAgICAoMHgxIDw8ICA5KSAvLyAoUFdNQykgRmF1bHQgQWN0aXZhdGlvbiBNb2RlIG9uIGZhdWx0IGlucHV0IDENCiNkZWZpbmUgQVQ5MUNfUFdNQ19GTU9EMiAgICAgICgweDEgPDwgMTApIC8vIChQV01DKSBGYXVsdCBBY3RpdmF0aW9uIE1vZGUgb24gZmF1bHQgaW5wdXQgMg0KI2RlZmluZSBBVDkxQ19QV01DX0ZNT0QzICAgICAgKDB4MSA8PCAxMSkgLy8gKFBXTUMpIEZhdWx0IEFjdGl2YXRpb24gTW9kZSBvbiBmYXVsdCBpbnB1dCAzDQojZGVmaW5lIEFUOTFDX1BXTUNfRk1PRDQgICAgICAoMHgxIDw8IDEyKSAvLyAoUFdNQykgRmF1bHQgQWN0aXZhdGlvbiBNb2RlIG9uIGZhdWx0IGlucHV0IDQNCiNkZWZpbmUgQVQ5MUNfUFdNQ19GTU9ENSAgICAgICgweDEgPDwgMTMpIC8vIChQV01DKSBGYXVsdCBBY3RpdmF0aW9uIE1vZGUgb24gZmF1bHQgaW5wdXQgNQ0KI2RlZmluZSBBVDkxQ19QV01DX0ZNT0Q2ICAgICAgKDB4MSA8PCAxNCkgLy8gKFBXTUMpIEZhdWx0IEFjdGl2YXRpb24gTW9kZSBvbiBmYXVsdCBpbnB1dCA2DQojZGVmaW5lIEFUOTFDX1BXTUNfRk1PRDcgICAgICAoMHgxIDw8IDE1KSAvLyAoUFdNQykgRmF1bHQgQWN0aXZhdGlvbiBNb2RlIG9uIGZhdWx0IGlucHV0IDcNCiNkZWZpbmUgQVQ5MUNfUFdNQ19GRklMMDAgICAgICgweDEgPDwgMTYpIC8vIChQV01DKSBGYXVsdCBGaWx0ZXJpbmcgb24gZmF1bHQgaW5wdXQgMA0KI2RlZmluZSBBVDkxQ19QV01DX0ZGSUwwMSAgICAgKDB4MSA8PCAxNykgLy8gKFBXTUMpIEZhdWx0IEZpbHRlcmluZyBvbiBmYXVsdCBpbnB1dCAxDQojZGVmaW5lIEFUOTFDX1BXTUNfRkZJTDAyICAgICAoMHgxIDw8IDE4KSAvLyAoUFdNQykgRmF1bHQgRmlsdGVyaW5nIG9uIGZhdWx0IGlucHV0IDINCiNkZWZpbmUgQVQ5MUNfUFdNQ19GRklMMDMgICAgICgweDEgPDwgMTkpIC8vIChQV01DKSBGYXVsdCBGaWx0ZXJpbmcgb24gZmF1bHQgaW5wdXQgMw0KI2RlZmluZSBBVDkxQ19QV01DX0ZGSUwwNCAgICAgKDB4MSA8PCAyMCkgLy8gKFBXTUMpIEZhdWx0IEZpbHRlcmluZyBvbiBmYXVsdCBpbnB1dCA0DQojZGVmaW5lIEFUOTFDX1BXTUNfRkZJTDA1ICAgICAoMHgxIDw8IDIxKSAvLyAoUFdNQykgRmF1bHQgRmlsdGVyaW5nIG9uIGZhdWx0IGlucHV0IDUNCiNkZWZpbmUgQVQ5MUNfUFdNQ19GRklMMDYgICAgICgweDEgPDwgMjIpIC8vIChQV01DKSBGYXVsdCBGaWx0ZXJpbmcgb24gZmF1bHQgaW5wdXQgNg0KI2RlZmluZSBBVDkxQ19QV01DX0ZGSUwwNyAgICAgKDB4MSA8PCAyMykgLy8gKFBXTUMpIEZhdWx0IEZpbHRlcmluZyBvbiBmYXVsdCBpbnB1dCA3DQovLyAtLS0tLS0tLSBQV01DX0ZTUiA6IChQV01DIE9mZnNldDogMHg2MCkgRmF1bHQgSW5wdXQgeCBWYWx1ZSAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfUFdNQ19GSVYwICAgICAgICgweDEgPDwgIDApIC8vIChQV01DKSBGYXVsdCBJbnB1dCAwIFZhbHVlDQojZGVmaW5lIEFUOTFDX1BXTUNfRklWMSAgICAgICAoMHgxIDw8ICAxKSAvLyAoUFdNQykgRmF1bHQgSW5wdXQgMSBWYWx1ZQ0KI2RlZmluZSBBVDkxQ19QV01DX0ZJVjIgICAgICAgKDB4MSA8PCAgMikgLy8gKFBXTUMpIEZhdWx0IElucHV0IDIgVmFsdWUNCiNkZWZpbmUgQVQ5MUNfUFdNQ19GSVYzICAgICAgICgweDEgPDwgIDMpIC8vIChQV01DKSBGYXVsdCBJbnB1dCAzIFZhbHVlDQojZGVmaW5lIEFUOTFDX1BXTUNfRklWNCAgICAgICAoMHgxIDw8ICA0KSAvLyAoUFdNQykgRmF1bHQgSW5wdXQgNCBWYWx1ZQ0KI2RlZmluZSBBVDkxQ19QV01DX0ZJVjUgICAgICAgKDB4MSA8PCAgNSkgLy8gKFBXTUMpIEZhdWx0IElucHV0IDUgVmFsdWUNCiNkZWZpbmUgQVQ5MUNfUFdNQ19GSVY2ICAgICAgICgweDEgPDwgIDYpIC8vIChQV01DKSBGYXVsdCBJbnB1dCA2IFZhbHVlDQojZGVmaW5lIEFUOTFDX1BXTUNfRklWNyAgICAgICAoMHgxIDw8ICA3KSAvLyAoUFdNQykgRmF1bHQgSW5wdXQgNyBWYWx1ZQ0KI2RlZmluZSBBVDkxQ19QV01DX0ZTMCAgICAgICAgKDB4MSA8PCAgOCkgLy8gKFBXTUMpIEZhdWx0IDAgU3RhdHVzDQojZGVmaW5lIEFUOTFDX1BXTUNfRlMxICAgICAgICAoMHgxIDw8ICA5KSAvLyAoUFdNQykgRmF1bHQgMSBTdGF0dXMNCiNkZWZpbmUgQVQ5MUNfUFdNQ19GUzIgICAgICAgICgweDEgPDwgMTApIC8vIChQV01DKSBGYXVsdCAyIFN0YXR1cw0KI2RlZmluZSBBVDkxQ19QV01DX0ZTMyAgICAgICAgKDB4MSA8PCAxMSkgLy8gKFBXTUMpIEZhdWx0IDMgU3RhdHVzDQojZGVmaW5lIEFUOTFDX1BXTUNfRlM0ICAgICAgICAoMHgxIDw8IDEyKSAvLyAoUFdNQykgRmF1bHQgNCBTdGF0dXMNCiNkZWZpbmUgQVQ5MUNfUFdNQ19GUzUgICAgICAgICgweDEgPDwgMTMpIC8vIChQV01DKSBGYXVsdCA1IFN0YXR1cw0KI2RlZmluZSBBVDkxQ19QV01DX0ZTNiAgICAgICAgKDB4MSA8PCAxNCkgLy8gKFBXTUMpIEZhdWx0IDYgU3RhdHVzDQojZGVmaW5lIEFUOTFDX1BXTUNfRlM3ICAgICAgICAoMHgxIDw8IDE1KSAvLyAoUFdNQykgRmF1bHQgNyBTdGF0dXMNCi8vIC0tLS0tLS0tIFBXTUNfRkNSIDogKFBXTUMgT2Zmc2V0OiAweDY0KSBGYXVsdCB5IENsZWFyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19QV01DX0ZDTFIwICAgICAgKDB4MSA8PCAgMCkgLy8gKFBXTUMpIEZhdWx0IDAgQ2xlYXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19GQ0xSMSAgICAgICgweDEgPDwgIDEpIC8vIChQV01DKSBGYXVsdCAxIENsZWFyDQojZGVmaW5lIEFUOTFDX1BXTUNfRkNMUjIgICAgICAoMHgxIDw8ICAyKSAvLyAoUFdNQykgRmF1bHQgMiBDbGVhcg0KI2RlZmluZSBBVDkxQ19QV01DX0ZDTFIzICAgICAgKDB4MSA8PCAgMykgLy8gKFBXTUMpIEZhdWx0IDMgQ2xlYXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19GQ0xSNCAgICAgICgweDEgPDwgIDQpIC8vIChQV01DKSBGYXVsdCA0IENsZWFyDQojZGVmaW5lIEFUOTFDX1BXTUNfRkNMUjUgICAgICAoMHgxIDw8ICA1KSAvLyAoUFdNQykgRmF1bHQgNSBDbGVhcg0KI2RlZmluZSBBVDkxQ19QV01DX0ZDTFI2ICAgICAgKDB4MSA8PCAgNikgLy8gKFBXTUMpIEZhdWx0IDYgQ2xlYXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19GQ0xSNyAgICAgICgweDEgPDwgIDcpIC8vIChQV01DKSBGYXVsdCA3IENsZWFyDQovLyAtLS0tLS0tLSBQV01DX0ZQViA6IChQV01DIE9mZnNldDogMHg2OCkgUFdNIEZhdWx0IFByb3RlY3Rpb24gVmFsdWUgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1BXTUNfRlBWSDAgICAgICAoMHgxIDw8ICAwKSAvLyAoUFdNQykgRmF1bHQgUHJvdGVjdGlvbiBWYWx1ZSBmb3IgUFdNSCBvdXRwdXQgb24gY2hhbm5lbCAwDQojZGVmaW5lIEFUOTFDX1BXTUNfRlBWSDEgICAgICAoMHgxIDw8ICAxKSAvLyAoUFdNQykgRmF1bHQgUHJvdGVjdGlvbiBWYWx1ZSBmb3IgUFdNSCBvdXRwdXQgb24gY2hhbm5lbCAxDQojZGVmaW5lIEFUOTFDX1BXTUNfRlBWSDIgICAgICAoMHgxIDw8ICAyKSAvLyAoUFdNQykgRmF1bHQgUHJvdGVjdGlvbiBWYWx1ZSBmb3IgUFdNSCBvdXRwdXQgb24gY2hhbm5lbCAyDQojZGVmaW5lIEFUOTFDX1BXTUNfRlBWSDMgICAgICAoMHgxIDw8ICAzKSAvLyAoUFdNQykgRmF1bHQgUHJvdGVjdGlvbiBWYWx1ZSBmb3IgUFdNSCBvdXRwdXQgb24gY2hhbm5lbCAzDQojZGVmaW5lIEFUOTFDX1BXTUNfRlBWSDQgICAgICAoMHgxIDw8ICA0KSAvLyAoUFdNQykgRmF1bHQgUHJvdGVjdGlvbiBWYWx1ZSBmb3IgUFdNSCBvdXRwdXQgb24gY2hhbm5lbCA0DQojZGVmaW5lIEFUOTFDX1BXTUNfRlBWSDUgICAgICAoMHgxIDw8ICA1KSAvLyAoUFdNQykgRmF1bHQgUHJvdGVjdGlvbiBWYWx1ZSBmb3IgUFdNSCBvdXRwdXQgb24gY2hhbm5lbCA1DQojZGVmaW5lIEFUOTFDX1BXTUNfRlBWSDYgICAgICAoMHgxIDw8ICA2KSAvLyAoUFdNQykgRmF1bHQgUHJvdGVjdGlvbiBWYWx1ZSBmb3IgUFdNSCBvdXRwdXQgb24gY2hhbm5lbCA2DQojZGVmaW5lIEFUOTFDX1BXTUNfRlBWSDcgICAgICAoMHgxIDw8ICA3KSAvLyAoUFdNQykgRmF1bHQgUHJvdGVjdGlvbiBWYWx1ZSBmb3IgUFdNSCBvdXRwdXQgb24gY2hhbm5lbCA3DQojZGVmaW5lIEFUOTFDX1BXTUNfRlBWTDAgICAgICAoMHgxIDw8IDE2KSAvLyAoUFdNQykgRmF1bHQgUHJvdGVjdGlvbiBWYWx1ZSBmb3IgUFdNTCBvdXRwdXQgb24gY2hhbm5lbCAwDQojZGVmaW5lIEFUOTFDX1BXTUNfRlBWTDEgICAgICAoMHgxIDw8IDE3KSAvLyAoUFdNQykgRmF1bHQgUHJvdGVjdGlvbiBWYWx1ZSBmb3IgUFdNTCBvdXRwdXQgb24gY2hhbm5lbCAxDQojZGVmaW5lIEFUOTFDX1BXTUNfRlBWTDIgICAgICAoMHgxIDw8IDE4KSAvLyAoUFdNQykgRmF1bHQgUHJvdGVjdGlvbiBWYWx1ZSBmb3IgUFdNTCBvdXRwdXQgb24gY2hhbm5lbCAyDQojZGVmaW5lIEFUOTFDX1BXTUNfRlBWTDMgICAgICAoMHgxIDw8IDE5KSAvLyAoUFdNQykgRmF1bHQgUHJvdGVjdGlvbiBWYWx1ZSBmb3IgUFdNTCBvdXRwdXQgb24gY2hhbm5lbCAzDQojZGVmaW5lIEFUOTFDX1BXTUNfRlBWTDQgICAgICAoMHgxIDw8IDIwKSAvLyAoUFdNQykgRmF1bHQgUHJvdGVjdGlvbiBWYWx1ZSBmb3IgUFdNTCBvdXRwdXQgb24gY2hhbm5lbCA0DQojZGVmaW5lIEFUOTFDX1BXTUNfRlBWTDUgICAgICAoMHgxIDw8IDIxKSAvLyAoUFdNQykgRmF1bHQgUHJvdGVjdGlvbiBWYWx1ZSBmb3IgUFdNTCBvdXRwdXQgb24gY2hhbm5lbCA1DQojZGVmaW5lIEFUOTFDX1BXTUNfRlBWTDYgICAgICAoMHgxIDw8IDIyKSAvLyAoUFdNQykgRmF1bHQgUHJvdGVjdGlvbiBWYWx1ZSBmb3IgUFdNTCBvdXRwdXQgb24gY2hhbm5lbCA2DQojZGVmaW5lIEFUOTFDX1BXTUNfRlBWTDcgICAgICAoMHgxIDw8IDIzKSAvLyAoUFdNQykgRmF1bHQgUHJvdGVjdGlvbiBWYWx1ZSBmb3IgUFdNTCBvdXRwdXQgb24gY2hhbm5lbCA3DQovLyAtLS0tLS0tLSBQV01DX0ZQRVIxIDogKFBXTUMgT2Zmc2V0OiAweDZjKSBQV00gRmF1bHQgUHJvdGVjdGlvbiBFbmFibGUgUmVnaXN0ZXIgMSAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfUFdNQ19GUEUwICAgICAgICgweEZGIDw8ICAwKSAvLyAoUFdNQykgRmF1bHQgUHJvdGVjdGlvbiBFbmFibGUgd2l0aCBGYXVsdCBJbnB1dCB5IGZvciBQV00gY2hhbm5lbCAwDQojZGVmaW5lIEFUOTFDX1BXTUNfRlBFMSAgICAgICAoMHhGRiA8PCAgOCkgLy8gKFBXTUMpIEZhdWx0IFByb3RlY3Rpb24gRW5hYmxlIHdpdGggRmF1bHQgSW5wdXQgeSBmb3IgUFdNIGNoYW5uZWwgMQ0KI2RlZmluZSBBVDkxQ19QV01DX0ZQRTIgICAgICAgKDB4RkYgPDwgMTYpIC8vIChQV01DKSBGYXVsdCBQcm90ZWN0aW9uIEVuYWJsZSB3aXRoIEZhdWx0IElucHV0IHkgZm9yIFBXTSBjaGFubmVsIDINCiNkZWZpbmUgQVQ5MUNfUFdNQ19GUEUzICAgICAgICgweEZGIDw8IDI0KSAvLyAoUFdNQykgRmF1bHQgUHJvdGVjdGlvbiBFbmFibGUgd2l0aCBGYXVsdCBJbnB1dCB5IGZvciBQV00gY2hhbm5lbCAzDQovLyAtLS0tLS0tLSBQV01DX0ZQRVIyIDogKFBXTUMgT2Zmc2V0OiAweDcwKSBQV00gRmF1bHQgUHJvdGVjdGlvbiBFbmFibGUgUmVnaXN0ZXIgMiAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfUFdNQ19GUEU0ICAgICAgICgweEZGIDw8ICAwKSAvLyAoUFdNQykgRmF1bHQgUHJvdGVjdGlvbiBFbmFibGUgd2l0aCBGYXVsdCBJbnB1dCB5IGZvciBQV00gY2hhbm5lbCA0DQojZGVmaW5lIEFUOTFDX1BXTUNfRlBFNSAgICAgICAoMHhGRiA8PCAgOCkgLy8gKFBXTUMpIEZhdWx0IFByb3RlY3Rpb24gRW5hYmxlIHdpdGggRmF1bHQgSW5wdXQgeSBmb3IgUFdNIGNoYW5uZWwgNQ0KI2RlZmluZSBBVDkxQ19QV01DX0ZQRTYgICAgICAgKDB4RkYgPDwgMTYpIC8vIChQV01DKSBGYXVsdCBQcm90ZWN0aW9uIEVuYWJsZSB3aXRoIEZhdWx0IElucHV0IHkgZm9yIFBXTSBjaGFubmVsIDYNCiNkZWZpbmUgQVQ5MUNfUFdNQ19GUEU3ICAgICAgICgweEZGIDw8IDI0KSAvLyAoUFdNQykgRmF1bHQgUHJvdGVjdGlvbiBFbmFibGUgd2l0aCBGYXVsdCBJbnB1dCB5IGZvciBQV00gY2hhbm5lbCA3DQovLyAtLS0tLS0tLSBQV01DX0ZQRVIzIDogKFBXTUMgT2Zmc2V0OiAweDc0KSBQV00gRmF1bHQgUHJvdGVjdGlvbiBFbmFibGUgUmVnaXN0ZXIgMyAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfUFdNQ19GUEU4ICAgICAgICgweEZGIDw8ICAwKSAvLyAoUFdNQykgRmF1bHQgUHJvdGVjdGlvbiBFbmFibGUgd2l0aCBGYXVsdCBJbnB1dCB5IGZvciBQV00gY2hhbm5lbCA4DQojZGVmaW5lIEFUOTFDX1BXTUNfRlBFOSAgICAgICAoMHhGRiA8PCAgOCkgLy8gKFBXTUMpIEZhdWx0IFByb3RlY3Rpb24gRW5hYmxlIHdpdGggRmF1bHQgSW5wdXQgeSBmb3IgUFdNIGNoYW5uZWwgOQ0KI2RlZmluZSBBVDkxQ19QV01DX0ZQRTEwICAgICAgKDB4RkYgPDwgMTYpIC8vIChQV01DKSBGYXVsdCBQcm90ZWN0aW9uIEVuYWJsZSB3aXRoIEZhdWx0IElucHV0IHkgZm9yIFBXTSBjaGFubmVsIDEwDQojZGVmaW5lIEFUOTFDX1BXTUNfRlBFMTEgICAgICAoMHhGRiA8PCAyNCkgLy8gKFBXTUMpIEZhdWx0IFByb3RlY3Rpb24gRW5hYmxlIHdpdGggRmF1bHQgSW5wdXQgeSBmb3IgUFdNIGNoYW5uZWwgMTENCi8vIC0tLS0tLS0tIFBXTUNfRlBFUjQgOiAoUFdNQyBPZmZzZXQ6IDB4NzgpIFBXTSBGYXVsdCBQcm90ZWN0aW9uIEVuYWJsZSBSZWdpc3RlciA0IC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19QV01DX0ZQRTEyICAgICAgKDB4RkYgPDwgIDApIC8vIChQV01DKSBGYXVsdCBQcm90ZWN0aW9uIEVuYWJsZSB3aXRoIEZhdWx0IElucHV0IHkgZm9yIFBXTSBjaGFubmVsIDEyDQojZGVmaW5lIEFUOTFDX1BXTUNfRlBFMTMgICAgICAoMHhGRiA8PCAgOCkgLy8gKFBXTUMpIEZhdWx0IFByb3RlY3Rpb24gRW5hYmxlIHdpdGggRmF1bHQgSW5wdXQgeSBmb3IgUFdNIGNoYW5uZWwgMTMNCiNkZWZpbmUgQVQ5MUNfUFdNQ19GUEUxNCAgICAgICgweEZGIDw8IDE2KSAvLyAoUFdNQykgRmF1bHQgUHJvdGVjdGlvbiBFbmFibGUgd2l0aCBGYXVsdCBJbnB1dCB5IGZvciBQV00gY2hhbm5lbCAxNA0KI2RlZmluZSBBVDkxQ19QV01DX0ZQRTE1ICAgICAgKDB4RkYgPDwgMjQpIC8vIChQV01DKSBGYXVsdCBQcm90ZWN0aW9uIEVuYWJsZSB3aXRoIEZhdWx0IElucHV0IHkgZm9yIFBXTSBjaGFubmVsIDE1DQovLyAtLS0tLS0tLSBQV01DX0VMME1SIDogKFBXTUMgT2Zmc2V0OiAweDdjKSBQV00gRXZlbnQgTGluZSAwIE1vZGUgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1BXTUNfTDBDU0VMMCAgICAoMHgxIDw8ICAwKSAvLyAoUFdNQykgQ29tcGFyaXNvbiAwIFNlbGVjdGlvbg0KI2RlZmluZSBBVDkxQ19QV01DX0wwQ1NFTDEgICAgKDB4MSA8PCAgMSkgLy8gKFBXTUMpIENvbXBhcmlzb24gMSBTZWxlY3Rpb24NCiNkZWZpbmUgQVQ5MUNfUFdNQ19MMENTRUwyICAgICgweDEgPDwgIDIpIC8vIChQV01DKSBDb21wYXJpc29uIDIgU2VsZWN0aW9uDQojZGVmaW5lIEFUOTFDX1BXTUNfTDBDU0VMMyAgICAoMHgxIDw8ICAzKSAvLyAoUFdNQykgQ29tcGFyaXNvbiAzIFNlbGVjdGlvbg0KI2RlZmluZSBBVDkxQ19QV01DX0wwQ1NFTDQgICAgKDB4MSA8PCAgNCkgLy8gKFBXTUMpIENvbXBhcmlzb24gNCBTZWxlY3Rpb24NCiNkZWZpbmUgQVQ5MUNfUFdNQ19MMENTRUw1ICAgICgweDEgPDwgIDUpIC8vIChQV01DKSBDb21wYXJpc29uIDUgU2VsZWN0aW9uDQojZGVmaW5lIEFUOTFDX1BXTUNfTDBDU0VMNiAgICAoMHgxIDw8ICA2KSAvLyAoUFdNQykgQ29tcGFyaXNvbiA2IFNlbGVjdGlvbg0KI2RlZmluZSBBVDkxQ19QV01DX0wwQ1NFTDcgICAgKDB4MSA8PCAgNykgLy8gKFBXTUMpIENvbXBhcmlzb24gNyBTZWxlY3Rpb24NCi8vIC0tLS0tLS0tIFBXTUNfRUwxTVIgOiAoUFdNQyBPZmZzZXQ6IDB4ODApIFBXTSBFdmVudCBMaW5lIDEgTW9kZSBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfUFdNQ19MMUNTRUwwICAgICgweDEgPDwgIDApIC8vIChQV01DKSBDb21wYXJpc29uIDAgU2VsZWN0aW9uDQojZGVmaW5lIEFUOTFDX1BXTUNfTDFDU0VMMSAgICAoMHgxIDw8ICAxKSAvLyAoUFdNQykgQ29tcGFyaXNvbiAxIFNlbGVjdGlvbg0KI2RlZmluZSBBVDkxQ19QV01DX0wxQ1NFTDIgICAgKDB4MSA8PCAgMikgLy8gKFBXTUMpIENvbXBhcmlzb24gMiBTZWxlY3Rpb24NCiNkZWZpbmUgQVQ5MUNfUFdNQ19MMUNTRUwzICAgICgweDEgPDwgIDMpIC8vIChQV01DKSBDb21wYXJpc29uIDMgU2VsZWN0aW9uDQojZGVmaW5lIEFUOTFDX1BXTUNfTDFDU0VMNCAgICAoMHgxIDw8ICA0KSAvLyAoUFdNQykgQ29tcGFyaXNvbiA0IFNlbGVjdGlvbg0KI2RlZmluZSBBVDkxQ19QV01DX0wxQ1NFTDUgICAgKDB4MSA8PCAgNSkgLy8gKFBXTUMpIENvbXBhcmlzb24gNSBTZWxlY3Rpb24NCiNkZWZpbmUgQVQ5MUNfUFdNQ19MMUNTRUw2ICAgICgweDEgPDwgIDYpIC8vIChQV01DKSBDb21wYXJpc29uIDYgU2VsZWN0aW9uDQojZGVmaW5lIEFUOTFDX1BXTUNfTDFDU0VMNyAgICAoMHgxIDw8ICA3KSAvLyAoUFdNQykgQ29tcGFyaXNvbiA3IFNlbGVjdGlvbg0KLy8gLS0tLS0tLS0gUFdNQ19FTDJNUiA6IChQV01DIE9mZnNldDogMHg4NCkgUFdNIEV2ZW50IGxpbmUgMiBNb2RlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19QV01DX0wyQ1NFTDAgICAgKDB4MSA8PCAgMCkgLy8gKFBXTUMpIENvbXBhcmlzb24gMCBTZWxlY3Rpb24NCiNkZWZpbmUgQVQ5MUNfUFdNQ19MMkNTRUwxICAgICgweDEgPDwgIDEpIC8vIChQV01DKSBDb21wYXJpc29uIDEgU2VsZWN0aW9uDQojZGVmaW5lIEFUOTFDX1BXTUNfTDJDU0VMMiAgICAoMHgxIDw8ICAyKSAvLyAoUFdNQykgQ29tcGFyaXNvbiAyIFNlbGVjdGlvbg0KI2RlZmluZSBBVDkxQ19QV01DX0wyQ1NFTDMgICAgKDB4MSA8PCAgMykgLy8gKFBXTUMpIENvbXBhcmlzb24gMyBTZWxlY3Rpb24NCiNkZWZpbmUgQVQ5MUNfUFdNQ19MMkNTRUw0ICAgICgweDEgPDwgIDQpIC8vIChQV01DKSBDb21wYXJpc29uIDQgU2VsZWN0aW9uDQojZGVmaW5lIEFUOTFDX1BXTUNfTDJDU0VMNSAgICAoMHgxIDw8ICA1KSAvLyAoUFdNQykgQ29tcGFyaXNvbiA1IFNlbGVjdGlvbg0KI2RlZmluZSBBVDkxQ19QV01DX0wyQ1NFTDYgICAgKDB4MSA8PCAgNikgLy8gKFBXTUMpIENvbXBhcmlzb24gNiBTZWxlY3Rpb24NCiNkZWZpbmUgQVQ5MUNfUFdNQ19MMkNTRUw3ICAgICgweDEgPDwgIDcpIC8vIChQV01DKSBDb21wYXJpc29uIDcgU2VsZWN0aW9uDQovLyAtLS0tLS0tLSBQV01DX0VMM01SIDogKFBXTUMgT2Zmc2V0OiAweDg4KSBQV00gRXZlbnQgbGluZSAzIE1vZGUgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1BXTUNfTDNDU0VMMCAgICAoMHgxIDw8ICAwKSAvLyAoUFdNQykgQ29tcGFyaXNvbiAwIFNlbGVjdGlvbg0KI2RlZmluZSBBVDkxQ19QV01DX0wzQ1NFTDEgICAgKDB4MSA8PCAgMSkgLy8gKFBXTUMpIENvbXBhcmlzb24gMSBTZWxlY3Rpb24NCiNkZWZpbmUgQVQ5MUNfUFdNQ19MM0NTRUwyICAgICgweDEgPDwgIDIpIC8vIChQV01DKSBDb21wYXJpc29uIDIgU2VsZWN0aW9uDQojZGVmaW5lIEFUOTFDX1BXTUNfTDNDU0VMMyAgICAoMHgxIDw8ICAzKSAvLyAoUFdNQykgQ29tcGFyaXNvbiAzIFNlbGVjdGlvbg0KI2RlZmluZSBBVDkxQ19QV01DX0wzQ1NFTDQgICAgKDB4MSA8PCAgNCkgLy8gKFBXTUMpIENvbXBhcmlzb24gNCBTZWxlY3Rpb24NCiNkZWZpbmUgQVQ5MUNfUFdNQ19MM0NTRUw1ICAgICgweDEgPDwgIDUpIC8vIChQV01DKSBDb21wYXJpc29uIDUgU2VsZWN0aW9uDQojZGVmaW5lIEFUOTFDX1BXTUNfTDNDU0VMNiAgICAoMHgxIDw8ICA2KSAvLyAoUFdNQykgQ29tcGFyaXNvbiA2IFNlbGVjdGlvbg0KI2RlZmluZSBBVDkxQ19QV01DX0wzQ1NFTDcgICAgKDB4MSA8PCAgNykgLy8gKFBXTUMpIENvbXBhcmlzb24gNyBTZWxlY3Rpb24NCi8vIC0tLS0tLS0tIFBXTUNfRUw0TVIgOiAoUFdNQyBPZmZzZXQ6IDB4OGMpIFBXTSBFdmVudCBsaW5lIDQgTW9kZSBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfUFdNQ19MNENTRUwwICAgICgweDEgPDwgIDApIC8vIChQV01DKSBDb21wYXJpc29uIDAgU2VsZWN0aW9uDQojZGVmaW5lIEFUOTFDX1BXTUNfTDRDU0VMMSAgICAoMHgxIDw8ICAxKSAvLyAoUFdNQykgQ29tcGFyaXNvbiAxIFNlbGVjdGlvbg0KI2RlZmluZSBBVDkxQ19QV01DX0w0Q1NFTDIgICAgKDB4MSA8PCAgMikgLy8gKFBXTUMpIENvbXBhcmlzb24gMiBTZWxlY3Rpb24NCiNkZWZpbmUgQVQ5MUNfUFdNQ19MNENTRUwzICAgICgweDEgPDwgIDMpIC8vIChQV01DKSBDb21wYXJpc29uIDMgU2VsZWN0aW9uDQojZGVmaW5lIEFUOTFDX1BXTUNfTDRDU0VMNCAgICAoMHgxIDw8ICA0KSAvLyAoUFdNQykgQ29tcGFyaXNvbiA0IFNlbGVjdGlvbg0KI2RlZmluZSBBVDkxQ19QV01DX0w0Q1NFTDUgICAgKDB4MSA8PCAgNSkgLy8gKFBXTUMpIENvbXBhcmlzb24gNSBTZWxlY3Rpb24NCiNkZWZpbmUgQVQ5MUNfUFdNQ19MNENTRUw2ICAgICgweDEgPDwgIDYpIC8vIChQV01DKSBDb21wYXJpc29uIDYgU2VsZWN0aW9uDQojZGVmaW5lIEFUOTFDX1BXTUNfTDRDU0VMNyAgICAoMHgxIDw8ICA3KSAvLyAoUFdNQykgQ29tcGFyaXNvbiA3IFNlbGVjdGlvbg0KLy8gLS0tLS0tLS0gUFdNQ19FTDVNUiA6IChQV01DIE9mZnNldDogMHg5MCkgUFdNIEV2ZW50IGxpbmUgNSBNb2RlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19QV01DX0w1Q1NFTDAgICAgKDB4MSA8PCAgMCkgLy8gKFBXTUMpIENvbXBhcmlzb24gMCBTZWxlY3Rpb24NCiNkZWZpbmUgQVQ5MUNfUFdNQ19MNUNTRUwxICAgICgweDEgPDwgIDEpIC8vIChQV01DKSBDb21wYXJpc29uIDEgU2VsZWN0aW9uDQojZGVmaW5lIEFUOTFDX1BXTUNfTDVDU0VMMiAgICAoMHgxIDw8ICAyKSAvLyAoUFdNQykgQ29tcGFyaXNvbiAyIFNlbGVjdGlvbg0KI2RlZmluZSBBVDkxQ19QV01DX0w1Q1NFTDMgICAgKDB4MSA8PCAgMykgLy8gKFBXTUMpIENvbXBhcmlzb24gMyBTZWxlY3Rpb24NCiNkZWZpbmUgQVQ5MUNfUFdNQ19MNUNTRUw0ICAgICgweDEgPDwgIDQpIC8vIChQV01DKSBDb21wYXJpc29uIDQgU2VsZWN0aW9uDQojZGVmaW5lIEFUOTFDX1BXTUNfTDVDU0VMNSAgICAoMHgxIDw8ICA1KSAvLyAoUFdNQykgQ29tcGFyaXNvbiA1IFNlbGVjdGlvbg0KI2RlZmluZSBBVDkxQ19QV01DX0w1Q1NFTDYgICAgKDB4MSA8PCAgNikgLy8gKFBXTUMpIENvbXBhcmlzb24gNiBTZWxlY3Rpb24NCiNkZWZpbmUgQVQ5MUNfUFdNQ19MNUNTRUw3ICAgICgweDEgPDwgIDcpIC8vIChQV01DKSBDb21wYXJpc29uIDcgU2VsZWN0aW9uDQovLyAtLS0tLS0tLSBQV01DX0VMNk1SIDogKFBXTUMgT2Zmc2V0OiAweDk0KSBQV00gRXZlbnQgbGluZSA2IE1vZGUgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1BXTUNfTDZDU0VMMCAgICAoMHgxIDw8ICAwKSAvLyAoUFdNQykgQ29tcGFyaXNvbiAwIFNlbGVjdGlvbg0KI2RlZmluZSBBVDkxQ19QV01DX0w2Q1NFTDEgICAgKDB4MSA8PCAgMSkgLy8gKFBXTUMpIENvbXBhcmlzb24gMSBTZWxlY3Rpb24NCiNkZWZpbmUgQVQ5MUNfUFdNQ19MNkNTRUwyICAgICgweDEgPDwgIDIpIC8vIChQV01DKSBDb21wYXJpc29uIDIgU2VsZWN0aW9uDQojZGVmaW5lIEFUOTFDX1BXTUNfTDZDU0VMMyAgICAoMHgxIDw8ICAzKSAvLyAoUFdNQykgQ29tcGFyaXNvbiAzIFNlbGVjdGlvbg0KI2RlZmluZSBBVDkxQ19QV01DX0w2Q1NFTDQgICAgKDB4MSA8PCAgNCkgLy8gKFBXTUMpIENvbXBhcmlzb24gNCBTZWxlY3Rpb24NCiNkZWZpbmUgQVQ5MUNfUFdNQ19MNkNTRUw1ICAgICgweDEgPDwgIDUpIC8vIChQV01DKSBDb21wYXJpc29uIDUgU2VsZWN0aW9uDQojZGVmaW5lIEFUOTFDX1BXTUNfTDZDU0VMNiAgICAoMHgxIDw8ICA2KSAvLyAoUFdNQykgQ29tcGFyaXNvbiA2IFNlbGVjdGlvbg0KI2RlZmluZSBBVDkxQ19QV01DX0w2Q1NFTDcgICAgKDB4MSA8PCAgNykgLy8gKFBXTUMpIENvbXBhcmlzb24gNyBTZWxlY3Rpb24NCi8vIC0tLS0tLS0tIFBXTUNfRUw3TVIgOiAoUFdNQyBPZmZzZXQ6IDB4OTgpIFBXTSBFdmVudCBsaW5lIDcgTW9kZSBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfUFdNQ19MN0NTRUwwICAgICgweDEgPDwgIDApIC8vIChQV01DKSBDb21wYXJpc29uIDAgU2VsZWN0aW9uDQojZGVmaW5lIEFUOTFDX1BXTUNfTDdDU0VMMSAgICAoMHgxIDw8ICAxKSAvLyAoUFdNQykgQ29tcGFyaXNvbiAxIFNlbGVjdGlvbg0KI2RlZmluZSBBVDkxQ19QV01DX0w3Q1NFTDIgICAgKDB4MSA8PCAgMikgLy8gKFBXTUMpIENvbXBhcmlzb24gMiBTZWxlY3Rpb24NCiNkZWZpbmUgQVQ5MUNfUFdNQ19MN0NTRUwzICAgICgweDEgPDwgIDMpIC8vIChQV01DKSBDb21wYXJpc29uIDMgU2VsZWN0aW9uDQojZGVmaW5lIEFUOTFDX1BXTUNfTDdDU0VMNCAgICAoMHgxIDw8ICA0KSAvLyAoUFdNQykgQ29tcGFyaXNvbiA0IFNlbGVjdGlvbg0KI2RlZmluZSBBVDkxQ19QV01DX0w3Q1NFTDUgICAgKDB4MSA8PCAgNSkgLy8gKFBXTUMpIENvbXBhcmlzb24gNSBTZWxlY3Rpb24NCiNkZWZpbmUgQVQ5MUNfUFdNQ19MN0NTRUw2ICAgICgweDEgPDwgIDYpIC8vIChQV01DKSBDb21wYXJpc29uIDYgU2VsZWN0aW9uDQojZGVmaW5lIEFUOTFDX1BXTUNfTDdDU0VMNyAgICAoMHgxIDw8ICA3KSAvLyAoUFdNQykgQ29tcGFyaXNvbiA3IFNlbGVjdGlvbg0KLy8gLS0tLS0tLS0gUFdNQ19XUENSIDogKFBXTUMgT2Zmc2V0OiAweGU0KSBQV00gV3JpdGUgUHJvdGVjdGlvbiBDb250cm9sIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19QV01DX1dQQ01EICAgICAgKDB4MyA8PCAgMCkgLy8gKFBXTUMpIFdyaXRlIFByb3RlY3Rpb24gQ29tbWFuZA0KI2RlZmluZSBBVDkxQ19QV01DX1dQUkcwICAgICAgKDB4MSA8PCAgMikgLy8gKFBXTUMpIFdyaXRlIFByb3RlY3QgUmVnaXN0ZXIgR3JvdXAgMA0KI2RlZmluZSBBVDkxQ19QV01DX1dQUkcxICAgICAgKDB4MSA8PCAgMykgLy8gKFBXTUMpIFdyaXRlIFByb3RlY3QgUmVnaXN0ZXIgR3JvdXAgMQ0KI2RlZmluZSBBVDkxQ19QV01DX1dQUkcyICAgICAgKDB4MSA8PCAgNCkgLy8gKFBXTUMpIFdyaXRlIFByb3RlY3QgUmVnaXN0ZXIgR3JvdXAgMg0KI2RlZmluZSBBVDkxQ19QV01DX1dQUkczICAgICAgKDB4MSA8PCAgNSkgLy8gKFBXTUMpIFdyaXRlIFByb3RlY3QgUmVnaXN0ZXIgR3JvdXAgMw0KI2RlZmluZSBBVDkxQ19QV01DX1dQUkc0ICAgICAgKDB4MSA8PCAgNikgLy8gKFBXTUMpIFdyaXRlIFByb3RlY3QgUmVnaXN0ZXIgR3JvdXAgNA0KI2RlZmluZSBBVDkxQ19QV01DX1dQUkc1ICAgICAgKDB4MSA8PCAgNykgLy8gKFBXTUMpIFdyaXRlIFByb3RlY3QgUmVnaXN0ZXIgR3JvdXAgNQ0KI2RlZmluZSBBVDkxQ19QV01DX1dQS0VZICAgICAgKDB4RkZGRkZGIDw8ICA4KSAvLyAoUFdNQykgUHJvdGVjdGlvbiBQYXNzd29yZA0KLy8gLS0tLS0tLS0gUFdNQ19XUFZTIDogKFBXTUMgT2Zmc2V0OiAweGU4KSBXcml0ZSBQcm90ZWN0aW9uIFN0YXR1cyBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfUFdNQ19XUFNXUzAgICAgICgweDEgPDwgIDApIC8vIChQV01DKSBXcml0ZSBQcm90ZWN0IFNXIEdyb3VwIDAgU3RhdHVzIA0KI2RlZmluZSBBVDkxQ19QV01DX1dQU1dTMSAgICAgKDB4MSA8PCAgMSkgLy8gKFBXTUMpIFdyaXRlIFByb3RlY3QgU1cgR3JvdXAgMSBTdGF0dXMgDQojZGVmaW5lIEFUOTFDX1BXTUNfV1BTV1MyICAgICAoMHgxIDw8ICAyKSAvLyAoUFdNQykgV3JpdGUgUHJvdGVjdCBTVyBHcm91cCAyIFN0YXR1cyANCiNkZWZpbmUgQVQ5MUNfUFdNQ19XUFNXUzMgICAgICgweDEgPDwgIDMpIC8vIChQV01DKSBXcml0ZSBQcm90ZWN0IFNXIEdyb3VwIDMgU3RhdHVzIA0KI2RlZmluZSBBVDkxQ19QV01DX1dQU1dTNCAgICAgKDB4MSA8PCAgNCkgLy8gKFBXTUMpIFdyaXRlIFByb3RlY3QgU1cgR3JvdXAgNCBTdGF0dXMgDQojZGVmaW5lIEFUOTFDX1BXTUNfV1BTV1M1ICAgICAoMHgxIDw8ICA1KSAvLyAoUFdNQykgV3JpdGUgUHJvdGVjdCBTVyBHcm91cCA1IFN0YXR1cyANCiNkZWZpbmUgQVQ5MUNfUFdNQ19XUFZTICAgICAgICgweDEgPDwgIDcpIC8vIChQV01DKSBXcml0ZSBQcm90ZWN0aW9uIEVuYWJsZQ0KI2RlZmluZSBBVDkxQ19QV01DX1dQSFdTMCAgICAgKDB4MSA8PCAgOCkgLy8gKFBXTUMpIFdyaXRlIFByb3RlY3QgSFcgR3JvdXAgMCBTdGF0dXMgDQojZGVmaW5lIEFUOTFDX1BXTUNfV1BIV1MxICAgICAoMHgxIDw8ICA5KSAvLyAoUFdNQykgV3JpdGUgUHJvdGVjdCBIVyBHcm91cCAxIFN0YXR1cyANCiNkZWZpbmUgQVQ5MUNfUFdNQ19XUEhXUzIgICAgICgweDEgPDwgMTApIC8vIChQV01DKSBXcml0ZSBQcm90ZWN0IEhXIEdyb3VwIDIgU3RhdHVzIA0KI2RlZmluZSBBVDkxQ19QV01DX1dQSFdTMyAgICAgKDB4MSA8PCAxMSkgLy8gKFBXTUMpIFdyaXRlIFByb3RlY3QgSFcgR3JvdXAgMyBTdGF0dXMgDQojZGVmaW5lIEFUOTFDX1BXTUNfV1BIV1M0ICAgICAoMHgxIDw8IDEyKSAvLyAoUFdNQykgV3JpdGUgUHJvdGVjdCBIVyBHcm91cCA0IFN0YXR1cyANCiNkZWZpbmUgQVQ5MUNfUFdNQ19XUEhXUzUgICAgICgweDEgPDwgMTMpIC8vIChQV01DKSBXcml0ZSBQcm90ZWN0IEhXIEdyb3VwIDUgU3RhdHVzIA0KI2RlZmluZSBBVDkxQ19QV01DX1dQVlNSQyAgICAgKDB4RkZGRiA8PCAxNikgLy8gKFBXTUMpIFdyaXRlIFByb3RlY3Rpb24gVmlvbGF0aW9uIFNvdXJjZQ0KLy8gLS0tLS0tLS0gUFdNQ19DTVAwViA6IChQV01DIE9mZnNldDogMHgxMzApIFBXTSBDb21wYXJpc29uIFZhbHVlIDAgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1BXTUNfQ1YgICAgICAgICAoMHhGRkZGRkYgPDwgIDApIC8vIChQV01DKSBQV00gQ29tcGFyaXNvbiBWYWx1ZSAwLg0KI2RlZmluZSBBVDkxQ19QV01DX0NWTSAgICAgICAgKDB4MSA8PCAyNCkgLy8gKFBXTUMpIENvbXBhcmlzb24gVmFsdWUgMCBNb2RlLg0KLy8gLS0tLS0tLS0gUFdNQ19DTVAwVlVQRCA6IChQV01DIE9mZnNldDogMHgxMzQpIFBXTSBDb21wYXJpc29uIFZhbHVlIDAgVXBkYXRlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19QV01DX0NWVVBEICAgICAgKDB4RkZGRkZGIDw8ICAwKSAvLyAoUFdNQykgUFdNIENvbXBhcmlzb24gVmFsdWUgVXBkYXRlLg0KI2RlZmluZSBBVDkxQ19QV01DX0NWTVVQRCAgICAgKDB4MSA8PCAyNCkgLy8gKFBXTUMpIENvbXBhcmlzb24gVmFsdWUgVXBkYXRlIE1vZGUuDQovLyAtLS0tLS0tLSBQV01DX0NNUDBNIDogKFBXTUMgT2Zmc2V0OiAweDEzOCkgUFdNIENvbXBhcmlzb24gMCBNb2RlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19QV01DX0NFTiAgICAgICAgKDB4MSA8PCAgMCkgLy8gKFBXTUMpIENvbXBhcmlzb24gRW5hYmxlLg0KI2RlZmluZSBBVDkxQ19QV01DX0NUUiAgICAgICAgKDB4RiA8PCAgNCkgLy8gKFBXTUMpIFBXTSBDb21wYXJpc29uIFRyaWdnZXIuDQojZGVmaW5lIEFUOTFDX1BXTUNfQ1BSICAgICAgICAoMHhGIDw8ICA4KSAvLyAoUFdNQykgUFdNIENvbXBhcmlzb24gUGVyaW9kLg0KI2RlZmluZSBBVDkxQ19QV01DX0NQUkNOVCAgICAgKDB4RiA8PCAxMikgLy8gKFBXTUMpIFBXTSBDb21wYXJpc29uIFBlcmlvZCBDb3VudGVyLg0KI2RlZmluZSBBVDkxQ19QV01DX0NVUFIgICAgICAgKDB4RiA8PCAxNikgLy8gKFBXTUMpIFBXTSBDb21wYXJpc29uIFVwZGF0ZSBQZXJpb2QuDQojZGVmaW5lIEFUOTFDX1BXTUNfQ1VQUkNOVCAgICAoMHhGIDw8IDIwKSAvLyAoUFdNQykgUFdNIENvbXBhcmlzb24gVXBkYXRlIFBlcmlvZCBDb3VudGVyLg0KLy8gLS0tLS0tLS0gUFdNQ19DTVAwTVVQRCA6IChQV01DIE9mZnNldDogMHgxM2MpIFBXTSBDb21wYXJpc29uIDAgTW9kZSBVcGRhdGUgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1BXTUNfQ0VOVVBEICAgICAoMHgxIDw8ICAwKSAvLyAoUFdNQykgQ29tcGFyaXNvbiBFbmFibGUgVXBkYXRlLg0KI2RlZmluZSBBVDkxQ19QV01DX0NUUlVQRCAgICAgKDB4RiA8PCAgNCkgLy8gKFBXTUMpIFBXTSBDb21wYXJpc29uIFRyaWdnZXIgVXBkYXRlLg0KI2RlZmluZSBBVDkxQ19QV01DX0NQUlVQRCAgICAgKDB4RiA8PCAgOCkgLy8gKFBXTUMpIFBXTSBDb21wYXJpc29uIFBlcmlvZCBVcGRhdGUuDQojZGVmaW5lIEFUOTFDX1BXTUNfQ1VQUlVQRCAgICAoMHhGIDw8IDE2KSAvLyAoUFdNQykgUFdNIENvbXBhcmlzb24gVXBkYXRlIFBlcmlvZCBVcGRhdGUuDQovLyAtLS0tLS0tLSBQV01DX0NNUDFWIDogKFBXTUMgT2Zmc2V0OiAweDE0MCkgUFdNIENvbXBhcmlzb24gVmFsdWUgMSBSZWdpc3RlciAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIFBXTUNfQ01QMVZVUEQgOiAoUFdNQyBPZmZzZXQ6IDB4MTQ0KSBQV00gQ29tcGFyaXNvbiBWYWx1ZSAxIFVwZGF0ZSBSZWdpc3RlciAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIFBXTUNfQ01QMU0gOiAoUFdNQyBPZmZzZXQ6IDB4MTQ4KSBQV00gQ29tcGFyaXNvbiAxIE1vZGUgUmVnaXN0ZXIgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBQV01DX0NNUDFNVVBEIDogKFBXTUMgT2Zmc2V0OiAweDE0YykgUFdNIENvbXBhcmlzb24gMSBNb2RlIFVwZGF0ZSBSZWdpc3RlciAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIFBXTUNfQ01QMlYgOiAoUFdNQyBPZmZzZXQ6IDB4MTUwKSBQV00gQ29tcGFyaXNvbiBWYWx1ZSAyIFJlZ2lzdGVyIC0tLS0tLS0tIA0KLy8gLS0tLS0tLS0gUFdNQ19DTVAyVlVQRCA6IChQV01DIE9mZnNldDogMHgxNTQpIFBXTSBDb21wYXJpc29uIFZhbHVlIDIgVXBkYXRlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KLy8gLS0tLS0tLS0gUFdNQ19DTVAyTSA6IChQV01DIE9mZnNldDogMHgxNTgpIFBXTSBDb21wYXJpc29uIDIgTW9kZSBSZWdpc3RlciAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIFBXTUNfQ01QMk1VUEQgOiAoUFdNQyBPZmZzZXQ6IDB4MTVjKSBQV00gQ29tcGFyaXNvbiAyIE1vZGUgVXBkYXRlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KLy8gLS0tLS0tLS0gUFdNQ19DTVAzViA6IChQV01DIE9mZnNldDogMHgxNjApIFBXTSBDb21wYXJpc29uIFZhbHVlIDMgUmVnaXN0ZXIgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBQV01DX0NNUDNWVVBEIDogKFBXTUMgT2Zmc2V0OiAweDE2NCkgUFdNIENvbXBhcmlzb24gVmFsdWUgMyBVcGRhdGUgUmVnaXN0ZXIgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBQV01DX0NNUDNNIDogKFBXTUMgT2Zmc2V0OiAweDE2OCkgUFdNIENvbXBhcmlzb24gMyBNb2RlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KLy8gLS0tLS0tLS0gUFdNQ19DTVAzTVVQRCA6IChQV01DIE9mZnNldDogMHgxNmMpIFBXTSBDb21wYXJpc29uIDMgTW9kZSBVcGRhdGUgUmVnaXN0ZXIgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBQV01DX0NNUDRWIDogKFBXTUMgT2Zmc2V0OiAweDE3MCkgUFdNIENvbXBhcmlzb24gVmFsdWUgNCBSZWdpc3RlciAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIFBXTUNfQ01QNFZVUEQgOiAoUFdNQyBPZmZzZXQ6IDB4MTc0KSBQV00gQ29tcGFyaXNvbiBWYWx1ZSA0IFVwZGF0ZSBSZWdpc3RlciAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIFBXTUNfQ01QNE0gOiAoUFdNQyBPZmZzZXQ6IDB4MTc4KSBQV00gQ29tcGFyaXNvbiA0IE1vZGUgUmVnaXN0ZXIgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBQV01DX0NNUDRNVVBEIDogKFBXTUMgT2Zmc2V0OiAweDE3YykgUFdNIENvbXBhcmlzb24gNCBNb2RlIFVwZGF0ZSBSZWdpc3RlciAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIFBXTUNfQ01QNVYgOiAoUFdNQyBPZmZzZXQ6IDB4MTgwKSBQV00gQ29tcGFyaXNvbiBWYWx1ZSA1IFJlZ2lzdGVyIC0tLS0tLS0tIA0KLy8gLS0tLS0tLS0gUFdNQ19DTVA1VlVQRCA6IChQV01DIE9mZnNldDogMHgxODQpIFBXTSBDb21wYXJpc29uIFZhbHVlIDUgVXBkYXRlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KLy8gLS0tLS0tLS0gUFdNQ19DTVA1TSA6IChQV01DIE9mZnNldDogMHgxODgpIFBXTSBDb21wYXJpc29uIDUgTW9kZSBSZWdpc3RlciAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIFBXTUNfQ01QNU1VUEQgOiAoUFdNQyBPZmZzZXQ6IDB4MThjKSBQV00gQ29tcGFyaXNvbiA1IE1vZGUgVXBkYXRlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KLy8gLS0tLS0tLS0gUFdNQ19DTVA2ViA6IChQV01DIE9mZnNldDogMHgxOTApIFBXTSBDb21wYXJpc29uIFZhbHVlIDYgUmVnaXN0ZXIgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBQV01DX0NNUDZWVVBEIDogKFBXTUMgT2Zmc2V0OiAweDE5NCkgUFdNIENvbXBhcmlzb24gVmFsdWUgNiBVcGRhdGUgUmVnaXN0ZXIgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBQV01DX0NNUDZNIDogKFBXTUMgT2Zmc2V0OiAweDE5OCkgUFdNIENvbXBhcmlzb24gNiBNb2RlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KLy8gLS0tLS0tLS0gUFdNQ19DTVA2TVVQRCA6IChQV01DIE9mZnNldDogMHgxOWMpIFBXTSBDb21wYXJpc29uIDYgTW9kZSBVcGRhdGUgUmVnaXN0ZXIgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBQV01DX0NNUDdWIDogKFBXTUMgT2Zmc2V0OiAweDFhMCkgUFdNIENvbXBhcmlzb24gVmFsdWUgNyBSZWdpc3RlciAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIFBXTUNfQ01QN1ZVUEQgOiAoUFdNQyBPZmZzZXQ6IDB4MWE0KSBQV00gQ29tcGFyaXNvbiBWYWx1ZSA3IFVwZGF0ZSBSZWdpc3RlciAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIFBXTUNfQ01QN00gOiAoUFdNQyBPZmZzZXQ6IDB4MWE4KSBQV00gQ29tcGFyaXNvbiA3IE1vZGUgUmVnaXN0ZXIgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBQV01DX0NNUDdNVVBEIDogKFBXTUMgT2Zmc2V0OiAweDFhYykgUFdNIENvbXBhcmlzb24gNyBNb2RlIFVwZGF0ZSBSZWdpc3RlciAtLS0tLS0tLSANCg0KLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCi8vICAgICAgICAgICAgICBTT0ZUV0FSRSBBUEkgREVGSU5JVElPTiAgRk9SIFNlcmlhbCBQYXJhbGxlbCBJbnRlcmZhY2UNCi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQojaWZuZGVmIF9fQVNTRU1CTFlfXw0KdHlwZWRlZiBzdHJ1Y3QgX0FUOTFTX1NQSSB7DQoJQVQ5MV9SRUcJIFNQSV9DUjsgCS8vIENvbnRyb2wgUmVnaXN0ZXINCglBVDkxX1JFRwkgU1BJX01SOyAJLy8gTW9kZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBTUElfUkRSOyAJLy8gUmVjZWl2ZSBEYXRhIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFNQSV9URFI7IAkvLyBUcmFuc21pdCBEYXRhIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFNQSV9TUjsgCS8vIFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBTUElfSUVSOyAJLy8gSW50ZXJydXB0IEVuYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBTUElfSURSOyAJLy8gSW50ZXJydXB0IERpc2FibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgU1BJX0lNUjsgCS8vIEludGVycnVwdCBNYXNrIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkMFs0XTsgCS8vIA0KCUFUOTFfUkVHCSBTUElfQ1NSWzRdOyAJLy8gQ2hpcCBTZWxlY3QgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQxWzQzXTsgCS8vIA0KCUFUOTFfUkVHCSBTUElfQUREUlNJWkU7IAkvLyBTUEkgQUREUlNJWkUgUkVHSVNURVIgDQoJQVQ5MV9SRUcJIFNQSV9JUE5BTUUxOyAJLy8gU1BJIElQTkFNRTEgUkVHSVNURVIgDQoJQVQ5MV9SRUcJIFNQSV9JUE5BTUUyOyAJLy8gU1BJIElQTkFNRTIgUkVHSVNURVIgDQoJQVQ5MV9SRUcJIFNQSV9GRUFUVVJFUzsgCS8vIFNQSSBGRUFUVVJFUyBSRUdJU1RFUiANCglBVDkxX1JFRwkgU1BJX1ZFUjsgCS8vIFZlcnNpb24gUmVnaXN0ZXINCglBVDkxX1JFRwkgU1BJX1JQUjsgCS8vIFJlY2VpdmUgUG9pbnRlciBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBTUElfUkNSOyAJLy8gUmVjZWl2ZSBDb3VudGVyIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFNQSV9UUFI7IAkvLyBUcmFuc21pdCBQb2ludGVyIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFNQSV9UQ1I7IAkvLyBUcmFuc21pdCBDb3VudGVyIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFNQSV9STlBSOyAJLy8gUmVjZWl2ZSBOZXh0IFBvaW50ZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgU1BJX1JOQ1I7IAkvLyBSZWNlaXZlIE5leHQgQ291bnRlciBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBTUElfVE5QUjsgCS8vIFRyYW5zbWl0IE5leHQgUG9pbnRlciBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBTUElfVE5DUjsgCS8vIFRyYW5zbWl0IE5leHQgQ291bnRlciBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBTUElfUFRDUjsgCS8vIFBEQyBUcmFuc2ZlciBDb250cm9sIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFNQSV9QVFNSOyAJLy8gUERDIFRyYW5zZmVyIFN0YXR1cyBSZWdpc3Rlcg0KfSBBVDkxU19TUEksICpBVDkxUFNfU1BJOw0KI2Vsc2UNCiNkZWZpbmUgU1BJX0NSICAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMDApIC8vIChTUElfQ1IpIENvbnRyb2wgUmVnaXN0ZXINCiNkZWZpbmUgU1BJX01SICAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMDQpIC8vIChTUElfTVIpIE1vZGUgUmVnaXN0ZXINCiNkZWZpbmUgU1BJX1JEUiAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMDgpIC8vIChTUElfUkRSKSBSZWNlaXZlIERhdGEgUmVnaXN0ZXINCiNkZWZpbmUgU1BJX1REUiAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMEMpIC8vIChTUElfVERSKSBUcmFuc21pdCBEYXRhIFJlZ2lzdGVyDQojZGVmaW5lIFNQSV9TUiAgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDEwKSAvLyAoU1BJX1NSKSBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgU1BJX0lFUiAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMTQpIC8vIChTUElfSUVSKSBJbnRlcnJ1cHQgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIFNQSV9JRFIgICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDE4KSAvLyAoU1BJX0lEUikgSW50ZXJydXB0IERpc2FibGUgUmVnaXN0ZXINCiNkZWZpbmUgU1BJX0lNUiAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMUMpIC8vIChTUElfSU1SKSBJbnRlcnJ1cHQgTWFzayBSZWdpc3Rlcg0KI2RlZmluZSBTUElfQ1NSICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAzMCkgLy8gKFNQSV9DU1IpIENoaXAgU2VsZWN0IFJlZ2lzdGVyDQojZGVmaW5lIFNQSV9BRERSU0laRSAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMEVDKSAvLyAoU1BJX0FERFJTSVpFKSBTUEkgQUREUlNJWkUgUkVHSVNURVIgDQojZGVmaW5lIFNQSV9JUE5BTUUxICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMEYwKSAvLyAoU1BJX0lQTkFNRTEpIFNQSSBJUE5BTUUxIFJFR0lTVEVSIA0KI2RlZmluZSBTUElfSVBOQU1FMiAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDBGNCkgLy8gKFNQSV9JUE5BTUUyKSBTUEkgSVBOQU1FMiBSRUdJU1RFUiANCiNkZWZpbmUgU1BJX0ZFQVRVUkVTICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwRjgpIC8vIChTUElfRkVBVFVSRVMpIFNQSSBGRUFUVVJFUyBSRUdJU1RFUiANCiNkZWZpbmUgU1BJX1ZFUiAgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwRkMpIC8vIChTUElfVkVSKSBWZXJzaW9uIFJlZ2lzdGVyDQoNCiNlbmRpZg0KLy8gLS0tLS0tLS0gU1BJX0NSIDogKFNQSSBPZmZzZXQ6IDB4MCkgU1BJIENvbnRyb2wgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1NQSV9TUElFTiAgICAgICAoMHgxIDw8ICAwKSAvLyAoU1BJKSBTUEkgRW5hYmxlDQojZGVmaW5lIEFUOTFDX1NQSV9TUElESVMgICAgICAoMHgxIDw8ICAxKSAvLyAoU1BJKSBTUEkgRGlzYWJsZQ0KI2RlZmluZSBBVDkxQ19TUElfU1dSU1QgICAgICAgKDB4MSA8PCAgNykgLy8gKFNQSSkgU1BJIFNvZnR3YXJlIHJlc2V0DQojZGVmaW5lIEFUOTFDX1NQSV9MQVNUWEZFUiAgICAoMHgxIDw8IDI0KSAvLyAoU1BJKSBTUEkgTGFzdCBUcmFuc2Zlcg0KLy8gLS0tLS0tLS0gU1BJX01SIDogKFNQSSBPZmZzZXQ6IDB4NCkgU1BJIE1vZGUgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1NQSV9NU1RSICAgICAgICAoMHgxIDw8ICAwKSAvLyAoU1BJKSBNYXN0ZXIvU2xhdmUgTW9kZQ0KI2RlZmluZSBBVDkxQ19TUElfUFMgICAgICAgICAgKDB4MSA8PCAgMSkgLy8gKFNQSSkgUGVyaXBoZXJhbCBTZWxlY3QNCiNkZWZpbmUgCUFUOTFDX1NQSV9QU19GSVhFRCAgICAgICAgICAgICAgICAoMHgwIDw8ICAxKSAvLyAoU1BJKSBGaXhlZCBQZXJpcGhlcmFsIFNlbGVjdA0KI2RlZmluZSAJQVQ5MUNfU1BJX1BTX1ZBUklBQkxFICAgICAgICAgICAgICgweDEgPDwgIDEpIC8vIChTUEkpIFZhcmlhYmxlIFBlcmlwaGVyYWwgU2VsZWN0DQojZGVmaW5lIEFUOTFDX1NQSV9QQ1NERUMgICAgICAoMHgxIDw8ICAyKSAvLyAoU1BJKSBDaGlwIFNlbGVjdCBEZWNvZGUNCiNkZWZpbmUgQVQ5MUNfU1BJX0ZESVYgICAgICAgICgweDEgPDwgIDMpIC8vIChTUEkpIENsb2NrIFNlbGVjdGlvbg0KI2RlZmluZSBBVDkxQ19TUElfTU9ERkRJUyAgICAgKDB4MSA8PCAgNCkgLy8gKFNQSSkgTW9kZSBGYXVsdCBEZXRlY3Rpb24NCiNkZWZpbmUgQVQ5MUNfU1BJX0xMQiAgICAgICAgICgweDEgPDwgIDcpIC8vIChTUEkpIENsb2NrIFNlbGVjdGlvbg0KI2RlZmluZSBBVDkxQ19TUElfUENTICAgICAgICAgKDB4RiA8PCAxNikgLy8gKFNQSSkgUGVyaXBoZXJhbCBDaGlwIFNlbGVjdA0KI2RlZmluZSBBVDkxQ19TUElfRExZQkNTICAgICAgKDB4RkYgPDwgMjQpIC8vIChTUEkpIERlbGF5IEJldHdlZW4gQ2hpcCBTZWxlY3RzDQovLyAtLS0tLS0tLSBTUElfUkRSIDogKFNQSSBPZmZzZXQ6IDB4OCkgUmVjZWl2ZSBEYXRhIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19TUElfUkQgICAgICAgICAgKDB4RkZGRiA8PCAgMCkgLy8gKFNQSSkgUmVjZWl2ZSBEYXRhDQojZGVmaW5lIEFUOTFDX1NQSV9SUENTICAgICAgICAoMHhGIDw8IDE2KSAvLyAoU1BJKSBQZXJpcGhlcmFsIENoaXAgU2VsZWN0IFN0YXR1cw0KLy8gLS0tLS0tLS0gU1BJX1REUiA6IChTUEkgT2Zmc2V0OiAweGMpIFRyYW5zbWl0IERhdGEgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1NQSV9URCAgICAgICAgICAoMHhGRkZGIDw8ICAwKSAvLyAoU1BJKSBUcmFuc21pdCBEYXRhDQojZGVmaW5lIEFUOTFDX1NQSV9UUENTICAgICAgICAoMHhGIDw8IDE2KSAvLyAoU1BJKSBQZXJpcGhlcmFsIENoaXAgU2VsZWN0IFN0YXR1cw0KLy8gLS0tLS0tLS0gU1BJX1NSIDogKFNQSSBPZmZzZXQ6IDB4MTApIFN0YXR1cyBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfU1BJX1JEUkYgICAgICAgICgweDEgPDwgIDApIC8vIChTUEkpIFJlY2VpdmUgRGF0YSBSZWdpc3RlciBGdWxsDQojZGVmaW5lIEFUOTFDX1NQSV9URFJFICAgICAgICAoMHgxIDw8ICAxKSAvLyAoU1BJKSBUcmFuc21pdCBEYXRhIFJlZ2lzdGVyIEVtcHR5DQojZGVmaW5lIEFUOTFDX1NQSV9NT0RGICAgICAgICAoMHgxIDw8ICAyKSAvLyAoU1BJKSBNb2RlIEZhdWx0IEVycm9yDQojZGVmaW5lIEFUOTFDX1NQSV9PVlJFUyAgICAgICAoMHgxIDw8ICAzKSAvLyAoU1BJKSBPdmVycnVuIEVycm9yIFN0YXR1cw0KI2RlZmluZSBBVDkxQ19TUElfRU5EUlggICAgICAgKDB4MSA8PCAgNCkgLy8gKFNQSSkgRW5kIG9mIFJlY2VpdmVyIFRyYW5zZmVyDQojZGVmaW5lIEFUOTFDX1NQSV9FTkRUWCAgICAgICAoMHgxIDw8ICA1KSAvLyAoU1BJKSBFbmQgb2YgUmVjZWl2ZXIgVHJhbnNmZXINCiNkZWZpbmUgQVQ5MUNfU1BJX1JYQlVGRiAgICAgICgweDEgPDwgIDYpIC8vIChTUEkpIFJYQlVGRiBJbnRlcnJ1cHQNCiNkZWZpbmUgQVQ5MUNfU1BJX1RYQlVGRSAgICAgICgweDEgPDwgIDcpIC8vIChTUEkpIFRYQlVGRSBJbnRlcnJ1cHQNCiNkZWZpbmUgQVQ5MUNfU1BJX05TU1IgICAgICAgICgweDEgPDwgIDgpIC8vIChTUEkpIE5TU1IgSW50ZXJydXB0DQojZGVmaW5lIEFUOTFDX1NQSV9UWEVNUFRZICAgICAoMHgxIDw8ICA5KSAvLyAoU1BJKSBUWEVNUFRZIEludGVycnVwdA0KI2RlZmluZSBBVDkxQ19TUElfU1BJRU5TICAgICAgKDB4MSA8PCAxNikgLy8gKFNQSSkgRW5hYmxlIFN0YXR1cw0KLy8gLS0tLS0tLS0gU1BJX0lFUiA6IChTUEkgT2Zmc2V0OiAweDE0KSBJbnRlcnJ1cHQgRW5hYmxlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KLy8gLS0tLS0tLS0gU1BJX0lEUiA6IChTUEkgT2Zmc2V0OiAweDE4KSBJbnRlcnJ1cHQgRGlzYWJsZSBSZWdpc3RlciAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIFNQSV9JTVIgOiAoU1BJIE9mZnNldDogMHgxYykgSW50ZXJydXB0IE1hc2sgUmVnaXN0ZXIgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBTUElfQ1NSIDogKFNQSSBPZmZzZXQ6IDB4MzApIENoaXAgU2VsZWN0IFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19TUElfQ1BPTCAgICAgICAgKDB4MSA8PCAgMCkgLy8gKFNQSSkgQ2xvY2sgUG9sYXJpdHkNCiNkZWZpbmUgQVQ5MUNfU1BJX05DUEhBICAgICAgICgweDEgPDwgIDEpIC8vIChTUEkpIENsb2NrIFBoYXNlDQojZGVmaW5lIEFUOTFDX1NQSV9DU05BQVQgICAgICAoMHgxIDw8ICAyKSAvLyAoU1BJKSBDaGlwIFNlbGVjdCBOb3QgQWN0aXZlIEFmdGVyIFRyYW5zZmVyIChJZ25vcmVkIGlmIENTQUFUID0gMSkNCiNkZWZpbmUgQVQ5MUNfU1BJX0NTQUFUICAgICAgICgweDEgPDwgIDMpIC8vIChTUEkpIENoaXAgU2VsZWN0IEFjdGl2ZSBBZnRlciBUcmFuc2Zlcg0KI2RlZmluZSBBVDkxQ19TUElfQklUUyAgICAgICAgKDB4RiA8PCAgNCkgLy8gKFNQSSkgQml0cyBQZXIgVHJhbnNmZXINCiNkZWZpbmUgCUFUOTFDX1NQSV9CSVRTXzggICAgICAgICAgICAgICAgICAgICgweDAgPDwgIDQpIC8vIChTUEkpIDggQml0cyBQZXIgdHJhbnNmZXINCiNkZWZpbmUgCUFUOTFDX1NQSV9CSVRTXzkgICAgICAgICAgICAgICAgICAgICgweDEgPDwgIDQpIC8vIChTUEkpIDkgQml0cyBQZXIgdHJhbnNmZXINCiNkZWZpbmUgCUFUOTFDX1NQSV9CSVRTXzEwICAgICAgICAgICAgICAgICAgICgweDIgPDwgIDQpIC8vIChTUEkpIDEwIEJpdHMgUGVyIHRyYW5zZmVyDQojZGVmaW5lIAlBVDkxQ19TUElfQklUU18xMSAgICAgICAgICAgICAgICAgICAoMHgzIDw8ICA0KSAvLyAoU1BJKSAxMSBCaXRzIFBlciB0cmFuc2Zlcg0KI2RlZmluZSAJQVQ5MUNfU1BJX0JJVFNfMTIgICAgICAgICAgICAgICAgICAgKDB4NCA8PCAgNCkgLy8gKFNQSSkgMTIgQml0cyBQZXIgdHJhbnNmZXINCiNkZWZpbmUgCUFUOTFDX1NQSV9CSVRTXzEzICAgICAgICAgICAgICAgICAgICgweDUgPDwgIDQpIC8vIChTUEkpIDEzIEJpdHMgUGVyIHRyYW5zZmVyDQojZGVmaW5lIAlBVDkxQ19TUElfQklUU18xNCAgICAgICAgICAgICAgICAgICAoMHg2IDw8ICA0KSAvLyAoU1BJKSAxNCBCaXRzIFBlciB0cmFuc2Zlcg0KI2RlZmluZSAJQVQ5MUNfU1BJX0JJVFNfMTUgICAgICAgICAgICAgICAgICAgKDB4NyA8PCAgNCkgLy8gKFNQSSkgMTUgQml0cyBQZXIgdHJhbnNmZXINCiNkZWZpbmUgCUFUOTFDX1NQSV9CSVRTXzE2ICAgICAgICAgICAgICAgICAgICgweDggPDwgIDQpIC8vIChTUEkpIDE2IEJpdHMgUGVyIHRyYW5zZmVyDQojZGVmaW5lIEFUOTFDX1NQSV9TQ0JSICAgICAgICAoMHhGRiA8PCAgOCkgLy8gKFNQSSkgU2VyaWFsIENsb2NrIEJhdWQgUmF0ZQ0KI2RlZmluZSBBVDkxQ19TUElfRExZQlMgICAgICAgKDB4RkYgPDwgMTYpIC8vIChTUEkpIFNlcmlhbCBDbG9jayBCYXVkIFJhdGUNCiNkZWZpbmUgQVQ5MUNfU1BJX0RMWUJDVCAgICAgICgweEZGIDw8IDI0KSAvLyAoU1BJKSBEZWxheSBCZXR3ZWVuIENvbnNlY3V0aXZlIFRyYW5zZmVycw0KDQovLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KLy8gICAgICAgICAgICAgIFNPRlRXQVJFIEFQSSBERUZJTklUSU9OICBGT1IgVURQSFMgRW5wb2ludCBGSUZPIGRhdGEgcmVnaXN0ZXINCi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQojaWZuZGVmIF9fQVNTRU1CTFlfXw0KdHlwZWRlZiBzdHJ1Y3QgX0FUOTFTX1VEUEhTX0VQVEZJRk8gew0KCUFUOTFfUkVHCSBVRFBIU19SRUFERVBUMFsxNjM4NF07IAkvLyBGSUZPIEVuZHBvaW50IERhdGEgUmVnaXN0ZXIgMA0KCUFUOTFfUkVHCSBVRFBIU19SRUFERVBUMVsxNjM4NF07IAkvLyBGSUZPIEVuZHBvaW50IERhdGEgUmVnaXN0ZXIgMQ0KCUFUOTFfUkVHCSBVRFBIU19SRUFERVBUMlsxNjM4NF07IAkvLyBGSUZPIEVuZHBvaW50IERhdGEgUmVnaXN0ZXIgMg0KCUFUOTFfUkVHCSBVRFBIU19SRUFERVBUM1sxNjM4NF07IAkvLyBGSUZPIEVuZHBvaW50IERhdGEgUmVnaXN0ZXIgMw0KCUFUOTFfUkVHCSBVRFBIU19SRUFERVBUNFsxNjM4NF07IAkvLyBGSUZPIEVuZHBvaW50IERhdGEgUmVnaXN0ZXIgNA0KCUFUOTFfUkVHCSBVRFBIU19SRUFERVBUNVsxNjM4NF07IAkvLyBGSUZPIEVuZHBvaW50IERhdGEgUmVnaXN0ZXIgNQ0KCUFUOTFfUkVHCSBVRFBIU19SRUFERVBUNlsxNjM4NF07IAkvLyBGSUZPIEVuZHBvaW50IERhdGEgUmVnaXN0ZXIgNg0KfSBBVDkxU19VRFBIU19FUFRGSUZPLCAqQVQ5MVBTX1VEUEhTX0VQVEZJRk87DQojZWxzZQ0KI2RlZmluZSBVRFBIU19SRUFERVBUMCAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAwMCkgLy8gKFVEUEhTX1JFQURFUFQwKSBGSUZPIEVuZHBvaW50IERhdGEgUmVnaXN0ZXIgMA0KI2RlZmluZSBVRFBIU19SRUFERVBUMSAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAxMDAwMCkgLy8gKFVEUEhTX1JFQURFUFQxKSBGSUZPIEVuZHBvaW50IERhdGEgUmVnaXN0ZXIgMQ0KI2RlZmluZSBVRFBIU19SRUFERVBUMiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAyMDAwMCkgLy8gKFVEUEhTX1JFQURFUFQyKSBGSUZPIEVuZHBvaW50IERhdGEgUmVnaXN0ZXIgMg0KI2RlZmluZSBVRFBIU19SRUFERVBUMyAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAzMDAwMCkgLy8gKFVEUEhTX1JFQURFUFQzKSBGSUZPIEVuZHBvaW50IERhdGEgUmVnaXN0ZXIgMw0KI2RlZmluZSBVRFBIU19SRUFERVBUNCAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDA0MDAwMCkgLy8gKFVEUEhTX1JFQURFUFQ0KSBGSUZPIEVuZHBvaW50IERhdGEgUmVnaXN0ZXIgNA0KI2RlZmluZSBVRFBIU19SRUFERVBUNSAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDA1MDAwMCkgLy8gKFVEUEhTX1JFQURFUFQ1KSBGSUZPIEVuZHBvaW50IERhdGEgUmVnaXN0ZXIgNQ0KI2RlZmluZSBVRFBIU19SRUFERVBUNiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDA2MDAwMCkgLy8gKFVEUEhTX1JFQURFUFQ2KSBGSUZPIEVuZHBvaW50IERhdGEgUmVnaXN0ZXIgNg0KDQojZW5kaWYNCg0KLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCi8vICAgICAgICAgICAgICBTT0ZUV0FSRSBBUEkgREVGSU5JVElPTiAgRk9SIFVEUEhTIEVuZHBvaW50IHN0cnVjdA0KLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCiNpZm5kZWYgX19BU1NFTUJMWV9fDQp0eXBlZGVmIHN0cnVjdCBfQVQ5MVNfVURQSFNfRVBUIHsNCglBVDkxX1JFRwkgVURQSFNfRVBUQ0ZHOyAJLy8gVURQSFMgRW5kcG9pbnQgQ29uZmlnIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFVEUEhTX0VQVENUTEVOQjsgCS8vIFVEUEhTIEVuZHBvaW50IENvbnRyb2wgRW5hYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFVEUEhTX0VQVENUTERJUzsgCS8vIFVEUEhTIEVuZHBvaW50IENvbnRyb2wgRGlzYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBVRFBIU19FUFRDVEw7IAkvLyBVRFBIUyBFbmRwb2ludCBDb250cm9sIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkMFsxXTsgCS8vIA0KCUFUOTFfUkVHCSBVRFBIU19FUFRTRVRTVEE7IAkvLyBVRFBIUyBFbmRwb2ludCBTZXQgU3RhdHVzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFVEUEhTX0VQVENMUlNUQTsgCS8vIFVEUEhTIEVuZHBvaW50IENsZWFyIFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBVRFBIU19FUFRTVEE7IAkvLyBVRFBIUyBFbmRwb2ludCBTdGF0dXMgUmVnaXN0ZXINCn0gQVQ5MVNfVURQSFNfRVBULCAqQVQ5MVBTX1VEUEhTX0VQVDsNCiNlbHNlDQojZGVmaW5lIFVEUEhTX0VQVENGRyAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDAwKSAvLyAoVURQSFNfRVBUQ0ZHKSBVRFBIUyBFbmRwb2ludCBDb25maWcgUmVnaXN0ZXINCiNkZWZpbmUgVURQSFNfRVBUQ1RMRU5CIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMDQpIC8vIChVRFBIU19FUFRDVExFTkIpIFVEUEhTIEVuZHBvaW50IENvbnRyb2wgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIFVEUEhTX0VQVENUTERJUyAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDA4KSAvLyAoVURQSFNfRVBUQ1RMRElTKSBVRFBIUyBFbmRwb2ludCBDb250cm9sIERpc2FibGUgUmVnaXN0ZXINCiNkZWZpbmUgVURQSFNfRVBUQ1RMICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMEMpIC8vIChVRFBIU19FUFRDVEwpIFVEUEhTIEVuZHBvaW50IENvbnRyb2wgUmVnaXN0ZXINCiNkZWZpbmUgVURQSFNfRVBUU0VUU1RBIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMTQpIC8vIChVRFBIU19FUFRTRVRTVEEpIFVEUEhTIEVuZHBvaW50IFNldCBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgVURQSFNfRVBUQ0xSU1RBIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMTgpIC8vIChVRFBIU19FUFRDTFJTVEEpIFVEUEhTIEVuZHBvaW50IENsZWFyIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBVRFBIU19FUFRTVEEgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAxQykgLy8gKFVEUEhTX0VQVFNUQSkgVURQSFMgRW5kcG9pbnQgU3RhdHVzIFJlZ2lzdGVyDQoNCiNlbmRpZg0KLy8gLS0tLS0tLS0gVURQSFNfRVBUQ0ZHIDogKFVEUEhTX0VQVCBPZmZzZXQ6IDB4MCkgVURQSFMgRW5kcG9pbnQgQ29uZmlnIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19VRFBIU19FUFRfU0laRSAgKDB4NyA8PCAgMCkgLy8gKFVEUEhTX0VQVCkgRW5kcG9pbnQgU2l6ZQ0KI2RlZmluZSAJQVQ5MUNfVURQSFNfRVBUX1NJWkVfOCAgICAgICAgICAgICAgICAgICAgKDB4MCkgLy8gKFVEUEhTX0VQVCkgICAgOCBieXRlcw0KI2RlZmluZSAJQVQ5MUNfVURQSFNfRVBUX1NJWkVfMTYgICAgICAgICAgICAgICAgICAgKDB4MSkgLy8gKFVEUEhTX0VQVCkgICAxNiBieXRlcw0KI2RlZmluZSAJQVQ5MUNfVURQSFNfRVBUX1NJWkVfMzIgICAgICAgICAgICAgICAgICAgKDB4MikgLy8gKFVEUEhTX0VQVCkgICAzMiBieXRlcw0KI2RlZmluZSAJQVQ5MUNfVURQSFNfRVBUX1NJWkVfNjQgICAgICAgICAgICAgICAgICAgKDB4MykgLy8gKFVEUEhTX0VQVCkgICA2NCBieXRlcw0KI2RlZmluZSAJQVQ5MUNfVURQSFNfRVBUX1NJWkVfMTI4ICAgICAgICAgICAgICAgICAgKDB4NCkgLy8gKFVEUEhTX0VQVCkgIDEyOCBieXRlcw0KI2RlZmluZSAJQVQ5MUNfVURQSFNfRVBUX1NJWkVfMjU2ICAgICAgICAgICAgICAgICAgKDB4NSkgLy8gKFVEUEhTX0VQVCkgIDI1NiBieXRlcyAoaWYgcG9zc2libGUpDQojZGVmaW5lIAlBVDkxQ19VRFBIU19FUFRfU0laRV81MTIgICAgICAgICAgICAgICAgICAoMHg2KSAvLyAoVURQSFNfRVBUKSAgNTEyIGJ5dGVzIChpZiBwb3NzaWJsZSkNCiNkZWZpbmUgCUFUOTFDX1VEUEhTX0VQVF9TSVpFXzEwMjQgICAgICAgICAgICAgICAgICgweDcpIC8vIChVRFBIU19FUFQpIDEwMjQgYnl0ZXMgKGlmIHBvc3NpYmxlKQ0KI2RlZmluZSBBVDkxQ19VRFBIU19FUFRfRElSICAgKDB4MSA8PCAgMykgLy8gKFVEUEhTX0VQVCkgRW5kcG9pbnQgRGlyZWN0aW9uIDA6T1VULCAxOklODQojZGVmaW5lIAlBVDkxQ19VRFBIU19FUFRfRElSX09VVCAgICAgICAgICAgICAgICAgICgweDAgPDwgIDMpIC8vIChVRFBIU19FUFQpIERpcmVjdGlvbiBPVVQNCiNkZWZpbmUgCUFUOTFDX1VEUEhTX0VQVF9ESVJfSU4gICAgICAgICAgICAgICAgICAgKDB4MSA8PCAgMykgLy8gKFVEUEhTX0VQVCkgRGlyZWN0aW9uIElODQojZGVmaW5lIEFUOTFDX1VEUEhTX0VQVF9UWVBFICAoMHgzIDw8ICA0KSAvLyAoVURQSFNfRVBUKSBFbmRwb2ludCBUeXBlDQojZGVmaW5lIAlBVDkxQ19VRFBIU19FUFRfVFlQRV9DVExfRVBUICAgICAgICAgICAgICAoMHgwIDw8ICA0KSAvLyAoVURQSFNfRVBUKSBDb250cm9sIGVuZHBvaW50DQojZGVmaW5lIAlBVDkxQ19VRFBIU19FUFRfVFlQRV9JU09fRVBUICAgICAgICAgICAgICAoMHgxIDw8ICA0KSAvLyAoVURQSFNfRVBUKSBJc29jaHJvbm91cyBlbmRwb2ludA0KI2RlZmluZSAJQVQ5MUNfVURQSFNfRVBUX1RZUEVfQlVMX0VQVCAgICAgICAgICAgICAgKDB4MiA8PCAgNCkgLy8gKFVEUEhTX0VQVCkgQnVsayBlbmRwb2ludA0KI2RlZmluZSAJQVQ5MUNfVURQSFNfRVBUX1RZUEVfSU5UX0VQVCAgICAgICAgICAgICAgKDB4MyA8PCAgNCkgLy8gKFVEUEhTX0VQVCkgSW50ZXJydXB0IGVuZHBvaW50DQojZGVmaW5lIEFUOTFDX1VEUEhTX0JLX05VTUJFUiAoMHgzIDw8ICA2KSAvLyAoVURQSFNfRVBUKSBOdW1iZXIgb2YgQmFua3MNCiNkZWZpbmUgCUFUOTFDX1VEUEhTX0JLX05VTUJFUl8wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8ICA2KSAvLyAoVURQSFNfRVBUKSBaZXJvIEJhbmssIHRoZSBFbmRQb2ludCBpcyBub3QgbWFwcGVkIGluIG1lbW9yeQ0KI2RlZmluZSAJQVQ5MUNfVURQSFNfQktfTlVNQkVSXzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgIDYpIC8vIChVRFBIU19FUFQpIE9uZSBCYW5rIChCYW5rMCkNCiNkZWZpbmUgCUFUOTFDX1VEUEhTX0JLX05VTUJFUl8yICAgICAgICAgICAgICAgICAgICAoMHgyIDw8ICA2KSAvLyAoVURQSFNfRVBUKSBEb3VibGUgYmFuayAoUGluZy1Qb25nIDogQmFuazAgLyBCYW5rMSkNCiNkZWZpbmUgCUFUOTFDX1VEUEhTX0JLX05VTUJFUl8zICAgICAgICAgICAgICAgICAgICAoMHgzIDw8ICA2KSAvLyAoVURQSFNfRVBUKSBUcmlwbGUgQmFuayAoQmFuazAgLyBCYW5rMSAvIEJhbmsyKSAoaWYgcG9zc2libGUpDQojZGVmaW5lIEFUOTFDX1VEUEhTX05CX1RSQU5TICAoMHgzIDw8ICA4KSAvLyAoVURQSFNfRVBUKSBOdW1iZXIgT2YgVHJhbnNhY3Rpb24gcGVyIE1pY3JvLUZyYW1lIChIaWdoLUJhbmR3aWR0aCBpc28gb25seSkNCiNkZWZpbmUgQVQ5MUNfVURQSFNfRVBUX01BUEQgICgweDEgPDwgMzEpIC8vIChVRFBIU19FUFQpIEVuZHBvaW50IE1hcHBlZCAocmVhZCBvbmx5DQovLyAtLS0tLS0tLSBVRFBIU19FUFRDVExFTkIgOiAoVURQSFNfRVBUIE9mZnNldDogMHg0KSBVRFBIUyBFbmRwb2ludCBDb250cm9sIEVuYWJsZSBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfVURQSFNfRVBUX0VOQUJMICgweDEgPDwgIDApIC8vIChVRFBIU19FUFQpIEVuZHBvaW50IEVuYWJsZQ0KI2RlZmluZSBBVDkxQ19VRFBIU19BVVRPX1ZBTElEICgweDEgPDwgIDEpIC8vIChVRFBIU19FUFQpIFBhY2tldCBBdXRvLVZhbGlkIEVuYWJsZS9EaXNhYmxlDQojZGVmaW5lIEFUOTFDX1VEUEhTX0lOVERJU19ETUEgKDB4MSA8PCAgMykgLy8gKFVEUEhTX0VQVCkgRW5kcG9pbnQgSW50ZXJydXB0cyBETUEgUmVxdWVzdCBFbmFibGUvRGlzYWJsZQ0KI2RlZmluZSBBVDkxQ19VRFBIU19OWUVUX0RJUyAgKDB4MSA8PCAgNCkgLy8gKFVEUEhTX0VQVCkgTllFVCBFbmFibGUvRGlzYWJsZQ0KI2RlZmluZSBBVDkxQ19VRFBIU19EQVRBWF9SWCAgKDB4MSA8PCAgNikgLy8gKFVEUEhTX0VQVCkgREFUQXggSW50ZXJydXB0IEVuYWJsZS9EaXNhYmxlDQojZGVmaW5lIEFUOTFDX1VEUEhTX01EQVRBX1JYICAoMHgxIDw8ICA3KSAvLyAoVURQSFNfRVBUKSBNREFUQSBJbnRlcnJ1cHQgRW5hYmxlZC9EaXNhYmxlDQojZGVmaW5lIEFUOTFDX1VEUEhTX0VSUl9PVkZMVyAoMHgxIDw8ICA4KSAvLyAoVURQSFNfRVBUKSBPdmVyRmxvdyBFcnJvciBJbnRlcnJ1cHQgRW5hYmxlL0Rpc2FibGUvU3RhdHVzDQojZGVmaW5lIEFUOTFDX1VEUEhTX1JYX0JLX1JEWSAoMHgxIDw8ICA5KSAvLyAoVURQSFNfRVBUKSBSZWNlaXZlZCBPVVQgRGF0YQ0KI2RlZmluZSBBVDkxQ19VRFBIU19UWF9DT01QTFQgKDB4MSA8PCAxMCkgLy8gKFVEUEhTX0VQVCkgVHJhbnNtaXR0ZWQgSU4gRGF0YSBDb21wbGV0ZSBJbnRlcnJ1cHQgRW5hYmxlL0Rpc2FibGUgb3IgVHJhbnNtaXR0ZWQgSU4gRGF0YSBDb21wbGV0ZSAoY2xlYXIpDQojZGVmaW5lIEFUOTFDX1VEUEhTX0VSUl9UUkFOUyAoMHgxIDw8IDExKSAvLyAoVURQSFNfRVBUKSBUcmFuc2FjdGlvbiBFcnJvciBJbnRlcnJ1cHQgRW5hYmxlL0Rpc2FibGUNCiNkZWZpbmUgQVQ5MUNfVURQSFNfVFhfUEtfUkRZICgweDEgPDwgMTEpIC8vIChVRFBIU19FUFQpIFRYIFBhY2tldCBSZWFkeSBJbnRlcnJ1cHQgRW5hYmxlL0Rpc2FibGUNCiNkZWZpbmUgQVQ5MUNfVURQSFNfUlhfU0VUVVAgICgweDEgPDwgMTIpIC8vIChVRFBIU19FUFQpIFJlY2VpdmVkIFNFVFVQIEludGVycnVwdCBFbmFibGUvRGlzYWJsZQ0KI2RlZmluZSBBVDkxQ19VRFBIU19FUlJfRkxfSVNPICgweDEgPDwgMTIpIC8vIChVRFBIU19FUFQpIEVycm9yIEZsb3cgQ2xlYXIvSW50ZXJydXB0IEVuYWJsZS9EaXNhYmxlDQojZGVmaW5lIEFUOTFDX1VEUEhTX1NUQUxMX1NOVCAoMHgxIDw8IDEzKSAvLyAoVURQSFNfRVBUKSBTdGFsbCBTZW50IENsZWFyDQojZGVmaW5lIEFUOTFDX1VEUEhTX0VSUl9DUklTTyAoMHgxIDw8IDEzKSAvLyAoVURQSFNfRVBUKSBDUkMgZXJyb3IgLyBFcnJvciBOQiBUcmFucyAvIEludGVycnVwdCBFbmFibGUvRGlzYWJsZQ0KI2RlZmluZSBBVDkxQ19VRFBIU19OQUtfSU4gICAgKDB4MSA8PCAxNCkgLy8gKFVEUEhTX0VQVCkgTkFLSU4gRVJST1IgRkxVU0ggLyBDbGVhciAvIEludGVycnVwdCBFbmFibGUvRGlzYWJsZQ0KI2RlZmluZSBBVDkxQ19VRFBIU19OQUtfT1VUICAgKDB4MSA8PCAxNSkgLy8gKFVEUEhTX0VQVCkgTkFLT1VUIC8gQ2xlYXIgLyBJbnRlcnJ1cHQgRW5hYmxlL0Rpc2FibGUNCiNkZWZpbmUgQVQ5MUNfVURQSFNfQlVTWV9CQU5LICgweDEgPDwgMTgpIC8vIChVRFBIU19FUFQpIEJ1c3kgQmFuayBJbnRlcnJ1cHQgRW5hYmxlL0Rpc2FibGUNCiNkZWZpbmUgQVQ5MUNfVURQSFNfU0hSVF9QQ0tUICgweDEgPDwgMzEpIC8vIChVRFBIU19FUFQpIFNob3J0IFBhY2tldCAvIEludGVycnVwdCBFbmFibGUvRGlzYWJsZQ0KLy8gLS0tLS0tLS0gVURQSFNfRVBUQ1RMRElTIDogKFVEUEhTX0VQVCBPZmZzZXQ6IDB4OCkgVURQSFMgRW5kcG9pbnQgQ29udHJvbCBEaXNhYmxlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19VRFBIU19FUFRfRElTQUJMICgweDEgPDwgIDApIC8vIChVRFBIU19FUFQpIEVuZHBvaW50IERpc2FibGUNCi8vIC0tLS0tLS0tIFVEUEhTX0VQVENUTCA6IChVRFBIU19FUFQgT2Zmc2V0OiAweGMpIFVEUEhTIEVuZHBvaW50IENvbnRyb2wgUmVnaXN0ZXIgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBVRFBIU19FUFRTRVRTVEEgOiAoVURQSFNfRVBUIE9mZnNldDogMHgxNCkgVURQSFMgRW5kcG9pbnQgU2V0IFN0YXR1cyBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfVURQSFNfRlJDRVNUQUxMICgweDEgPDwgIDUpIC8vIChVRFBIU19FUFQpIFN0YWxsIEhhbmRzaGFrZSBSZXF1ZXN0IFNldC9DbGVhci9TdGF0dXMNCiNkZWZpbmUgQVQ5MUNfVURQSFNfS0lMTF9CQU5LICgweDEgPDwgIDkpIC8vIChVRFBIU19FUFQpIEtJTEwgQmFuaw0KLy8gLS0tLS0tLS0gVURQSFNfRVBUQ0xSU1RBIDogKFVEUEhTX0VQVCBPZmZzZXQ6IDB4MTgpIFVEUEhTIEVuZHBvaW50IENsZWFyIFN0YXR1cyBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfVURQSFNfVE9HR0xFU1EgICgweDEgPDwgIDYpIC8vIChVRFBIU19FUFQpIERhdGEgVG9nZ2xlIENsZWFyDQovLyAtLS0tLS0tLSBVRFBIU19FUFRTVEEgOiAoVURQSFNfRVBUIE9mZnNldDogMHgxYykgVURQSFMgRW5kcG9pbnQgU3RhdHVzIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19VRFBIU19UT0dHTEVTUV9TVEEgKDB4MyA8PCAgNikgLy8gKFVEUEhTX0VQVCkgVG9nZ2xlIFNlcXVlbmNpbmcNCiNkZWZpbmUgCUFUOTFDX1VEUEhTX1RPR0dMRVNRX1NUQV8wMCAgICAgICAgICAgICAgICAgICAoMHgwIDw8ICA2KSAvLyAoVURQSFNfRVBUKSBEYXRhMA0KI2RlZmluZSAJQVQ5MUNfVURQSFNfVE9HR0xFU1FfU1RBXzAxICAgICAgICAgICAgICAgICAgICgweDEgPDwgIDYpIC8vIChVRFBIU19FUFQpIERhdGExDQojZGVmaW5lIAlBVDkxQ19VRFBIU19UT0dHTEVTUV9TVEFfMTAgICAgICAgICAgICAgICAgICAgKDB4MiA8PCAgNikgLy8gKFVEUEhTX0VQVCkgRGF0YTIgKG9ubHkgZm9yIEhpZ2gtQmFuZHdpZHRoIElzb2Nocm9ub3VzIEVuZFBvaW50KQ0KI2RlZmluZSAJQVQ5MUNfVURQSFNfVE9HR0xFU1FfU1RBXzExICAgICAgICAgICAgICAgICAgICgweDMgPDwgIDYpIC8vIChVRFBIU19FUFQpIE1EYXRhIChvbmx5IGZvciBIaWdoLUJhbmR3aWR0aCBJc29jaHJvbm91cyBFbmRQb2ludCkNCiNkZWZpbmUgQVQ5MUNfVURQSFNfQ09OVFJPTF9ESVIgKDB4MyA8PCAxNikgLy8gKFVEUEhTX0VQVCkgDQojZGVmaW5lIAlBVDkxQ19VRFBIU19DT05UUk9MX0RJUl8wMCAgICAgICAgICAgICAgICAgICAoMHgwIDw8IDE2KSAvLyAoVURQSFNfRVBUKSBCYW5rIDANCiNkZWZpbmUgCUFUOTFDX1VEUEhTX0NPTlRST0xfRElSXzAxICAgICAgICAgICAgICAgICAgICgweDEgPDwgMTYpIC8vIChVRFBIU19FUFQpIEJhbmsgMQ0KI2RlZmluZSAJQVQ5MUNfVURQSFNfQ09OVFJPTF9ESVJfMTAgICAgICAgICAgICAgICAgICAgKDB4MiA8PCAxNikgLy8gKFVEUEhTX0VQVCkgQmFuayAyDQojZGVmaW5lIAlBVDkxQ19VRFBIU19DT05UUk9MX0RJUl8xMSAgICAgICAgICAgICAgICAgICAoMHgzIDw8IDE2KSAvLyAoVURQSFNfRVBUKSBJbnZhbGlkDQojZGVmaW5lIEFUOTFDX1VEUEhTX0NVUlJFTlRfQkFOSyAoMHgzIDw8IDE2KSAvLyAoVURQSFNfRVBUKSANCiNkZWZpbmUgCUFUOTFDX1VEUEhTX0NVUlJFTlRfQkFOS18wMCAgICAgICAgICAgICAgICAgICAoMHgwIDw8IDE2KSAvLyAoVURQSFNfRVBUKSBCYW5rIDANCiNkZWZpbmUgCUFUOTFDX1VEUEhTX0NVUlJFTlRfQkFOS18wMSAgICAgICAgICAgICAgICAgICAoMHgxIDw8IDE2KSAvLyAoVURQSFNfRVBUKSBCYW5rIDENCiNkZWZpbmUgCUFUOTFDX1VEUEhTX0NVUlJFTlRfQkFOS18xMCAgICAgICAgICAgICAgICAgICAoMHgyIDw8IDE2KSAvLyAoVURQSFNfRVBUKSBCYW5rIDINCiNkZWZpbmUgCUFUOTFDX1VEUEhTX0NVUlJFTlRfQkFOS18xMSAgICAgICAgICAgICAgICAgICAoMHgzIDw8IDE2KSAvLyAoVURQSFNfRVBUKSBJbnZhbGlkDQojZGVmaW5lIEFUOTFDX1VEUEhTX0JVU1lfQkFOS19TVEEgKDB4MyA8PCAxOCkgLy8gKFVEUEhTX0VQVCkgQnVzeSBCYW5rIE51bWJlcg0KI2RlZmluZSAJQVQ5MUNfVURQSFNfQlVTWV9CQU5LX1NUQV8wMCAgICAgICAgICAgICAgICAgICAoMHgwIDw8IDE4KSAvLyAoVURQSFNfRVBUKSBBbGwgYmFua3MgYXJlIGZyZWUNCiNkZWZpbmUgCUFUOTFDX1VEUEhTX0JVU1lfQkFOS19TVEFfMDEgICAgICAgICAgICAgICAgICAgKDB4MSA8PCAxOCkgLy8gKFVEUEhTX0VQVCkgMSBidXN5IGJhbmsNCiNkZWZpbmUgCUFUOTFDX1VEUEhTX0JVU1lfQkFOS19TVEFfMTAgICAgICAgICAgICAgICAgICAgKDB4MiA8PCAxOCkgLy8gKFVEUEhTX0VQVCkgMiBidXN5IGJhbmtzDQojZGVmaW5lIAlBVDkxQ19VRFBIU19CVVNZX0JBTktfU1RBXzExICAgICAgICAgICAgICAgICAgICgweDMgPDwgMTgpIC8vIChVRFBIU19FUFQpIDMgYnVzeSBiYW5rcyAoaWYgcG9zc2libGUpDQojZGVmaW5lIEFUOTFDX1VEUEhTX0JZVEVfQ09VTlQgKDB4N0ZGIDw8IDIwKSAvLyAoVURQSFNfRVBUKSBVRFBIUyBCeXRlIENvdW50DQoNCi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQovLyAgICAgICAgICAgICAgU09GVFdBUkUgQVBJIERFRklOSVRJT04gIEZPUiBVRFBIUyBETUEgc3RydWN0DQovLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KI2lmbmRlZiBfX0FTU0VNQkxZX18NCnR5cGVkZWYgc3RydWN0IF9BVDkxU19VRFBIU19ETUEgew0KCUFUOTFfUkVHCSBVRFBIU19ETUFOWFREU0M7IAkvLyBVRFBIUyBETUEgQ2hhbm5lbCBOZXh0IERlc2NyaXB0b3IgQWRkcmVzcw0KCUFUOTFfUkVHCSBVRFBIU19ETUFBRERSRVNTOyAJLy8gVURQSFMgRE1BIENoYW5uZWwgQWRkcmVzcyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBVRFBIU19ETUFDT05UUk9MOyAJLy8gVURQSFMgRE1BIENoYW5uZWwgQ29udHJvbCBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBVRFBIU19ETUFTVEFUVVM7IAkvLyBVRFBIUyBETUEgQ2hhbm5lbCBTdGF0dXMgUmVnaXN0ZXINCn0gQVQ5MVNfVURQSFNfRE1BLCAqQVQ5MVBTX1VEUEhTX0RNQTsNCiNlbHNlDQojZGVmaW5lIFVEUEhTX0RNQU5YVERTQyAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDAwKSAvLyAoVURQSFNfRE1BTlhURFNDKSBVRFBIUyBETUEgQ2hhbm5lbCBOZXh0IERlc2NyaXB0b3IgQWRkcmVzcw0KI2RlZmluZSBVRFBIU19ETUFBRERSRVNTIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMDQpIC8vIChVRFBIU19ETUFBRERSRVNTKSBVRFBIUyBETUEgQ2hhbm5lbCBBZGRyZXNzIFJlZ2lzdGVyDQojZGVmaW5lIFVEUEhTX0RNQUNPTlRST0wgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAwOCkgLy8gKFVEUEhTX0RNQUNPTlRST0wpIFVEUEhTIERNQSBDaGFubmVsIENvbnRyb2wgUmVnaXN0ZXINCiNkZWZpbmUgVURQSFNfRE1BU1RBVFVTIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMEMpIC8vIChVRFBIU19ETUFTVEFUVVMpIFVEUEhTIERNQSBDaGFubmVsIFN0YXR1cyBSZWdpc3Rlcg0KDQojZW5kaWYNCi8vIC0tLS0tLS0tIFVEUEhTX0RNQU5YVERTQyA6IChVRFBIU19ETUEgT2Zmc2V0OiAweDApIFVEUEhTIERNQSBOZXh0IERlc2NyaXB0b3IgQWRkcmVzcyBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfVURQSFNfTlhUX0RTQ19BREQgKDB4RkZGRkZGRiA8PCAgNCkgLy8gKFVEUEhTX0RNQSkgbmV4dCBDaGFubmVsIERlc2NyaXB0b3INCi8vIC0tLS0tLS0tIFVEUEhTX0RNQUFERFJFU1MgOiAoVURQSFNfRE1BIE9mZnNldDogMHg0KSBVRFBIUyBETUEgQ2hhbm5lbCBBZGRyZXNzIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19VRFBIU19CVUZGX0FERCAgKDB4MCA8PCAgMCkgLy8gKFVEUEhTX0RNQSkgc3RhcnRpbmcgYWRkcmVzcyBvZiBhIERNQSBDaGFubmVsIHRyYW5zZmVyDQovLyAtLS0tLS0tLSBVRFBIU19ETUFDT05UUk9MIDogKFVEUEhTX0RNQSBPZmZzZXQ6IDB4OCkgVURQSFMgRE1BIENoYW5uZWwgQ29udHJvbCBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfVURQSFNfQ0hBTk5fRU5CICgweDEgPDwgIDApIC8vIChVRFBIU19ETUEpIENoYW5uZWwgRW5hYmxlZA0KI2RlZmluZSBBVDkxQ19VRFBIU19MRE5YVF9EU0MgKDB4MSA8PCAgMSkgLy8gKFVEUEhTX0RNQSkgTG9hZCBOZXh0IENoYW5uZWwgVHJhbnNmZXIgRGVzY3JpcHRvciBFbmFibGUNCiNkZWZpbmUgQVQ5MUNfVURQSFNfRU5EX1RSX0VOICgweDEgPDwgIDIpIC8vIChVRFBIU19ETUEpIEJ1ZmZlciBDbG9zZSBJbnB1dCBFbmFibGUNCiNkZWZpbmUgQVQ5MUNfVURQSFNfRU5EX0JfRU4gICgweDEgPDwgIDMpIC8vIChVRFBIU19ETUEpIEVuZCBvZiBETUEgQnVmZmVyIFBhY2tldCBWYWxpZGF0aW9uDQojZGVmaW5lIEFUOTFDX1VEUEhTX0VORF9UUl9JVCAoMHgxIDw8ICA0KSAvLyAoVURQSFNfRE1BKSBFbmQgT2YgVHJhbnNmZXIgSW50ZXJydXB0IEVuYWJsZQ0KI2RlZmluZSBBVDkxQ19VRFBIU19FTkRfQlVGRklUICgweDEgPDwgIDUpIC8vIChVRFBIU19ETUEpIEVuZCBPZiBDaGFubmVsIEJ1ZmZlciBJbnRlcnJ1cHQgRW5hYmxlDQojZGVmaW5lIEFUOTFDX1VEUEhTX0RFU0NfTERfSVQgKDB4MSA8PCAgNikgLy8gKFVEUEhTX0RNQSkgRGVzY3JpcHRvciBMb2FkZWQgSW50ZXJydXB0IEVuYWJsZQ0KI2RlZmluZSBBVDkxQ19VRFBIU19CVVJTVF9MQ0sgKDB4MSA8PCAgNykgLy8gKFVEUEhTX0RNQSkgQnVyc3QgTG9jayBFbmFibGUNCiNkZWZpbmUgQVQ5MUNfVURQSFNfQlVGRl9MRU5HVEggKDB4RkZGRiA8PCAxNikgLy8gKFVEUEhTX0RNQSkgQnVmZmVyIEJ5dGUgTGVuZ3RoICh3cml0ZSBvbmx5KQ0KLy8gLS0tLS0tLS0gVURQSFNfRE1BU1RBVFVTIDogKFVEUEhTX0RNQSBPZmZzZXQ6IDB4YykgVURQSFMgRE1BIENoYW5uZWx4IFN0YXR1cyBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfVURQSFNfQ0hBTk5fQUNUICgweDEgPDwgIDEpIC8vIChVRFBIU19ETUEpIA0KI2RlZmluZSBBVDkxQ19VRFBIU19FTkRfVFJfU1QgKDB4MSA8PCAgNCkgLy8gKFVEUEhTX0RNQSkgDQojZGVmaW5lIEFUOTFDX1VEUEhTX0VORF9CRl9TVCAoMHgxIDw8ICA1KSAvLyAoVURQSFNfRE1BKSANCiNkZWZpbmUgQVQ5MUNfVURQSFNfREVTQ19MRFNUICgweDEgPDwgIDYpIC8vIChVRFBIU19ETUEpIA0KI2RlZmluZSBBVDkxQ19VRFBIU19CVUZGX0NPVU5UICgweEZGRkYgPDwgMTYpIC8vIChVRFBIU19ETUEpIA0KDQovLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KLy8gICAgICAgICAgICAgIFNPRlRXQVJFIEFQSSBERUZJTklUSU9OICBGT1IgVURQSFMgSGlnaCBTcGVlZCBEZXZpY2UgSW50ZXJmYWNlDQovLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KI2lmbmRlZiBfX0FTU0VNQkxZX18NCnR5cGVkZWYgc3RydWN0IF9BVDkxU19VRFBIUyB7DQoJQVQ5MV9SRUcJIFVEUEhTX0NUUkw7IAkvLyBVRFBIUyBDb250cm9sIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFVEUEhTX0ZOVU07IAkvLyBVRFBIUyBGcmFtZSBOdW1iZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgUmVzZXJ2ZWQwWzJdOyAJLy8gDQoJQVQ5MV9SRUcJIFVEUEhTX0lFTjsgCS8vIFVEUEhTIEludGVycnVwdCBFbmFibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgVURQSFNfSU5UU1RBOyAJLy8gVURQSFMgSW50ZXJydXB0IFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBVRFBIU19DTFJJTlQ7IAkvLyBVRFBIUyBDbGVhciBJbnRlcnJ1cHQgUmVnaXN0ZXINCglBVDkxX1JFRwkgVURQSFNfRVBUUlNUOyAJLy8gVURQSFMgRW5kcG9pbnRzIFJlc2V0IFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkMVs0NF07IAkvLyANCglBVDkxX1JFRwkgVURQSFNfVFNUU09GQ05UOyAJLy8gVURQSFMgVGVzdCBTT0YgQ291bnRlciBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBVRFBIU19UU1RDTlRBOyAJLy8gVURQSFMgVGVzdCBBIENvdW50ZXIgUmVnaXN0ZXINCglBVDkxX1JFRwkgVURQSFNfVFNUQ05UQjsgCS8vIFVEUEhTIFRlc3QgQiBDb3VudGVyIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFVEUEhTX1RTVE1PRFJFRzsgCS8vIFVEUEhTIFRlc3QgTW9kZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBVRFBIU19UU1Q7IAkvLyBVRFBIUyBUZXN0IFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFJlc2VydmVkMlsyXTsgCS8vIA0KCUFUOTFfUkVHCSBVRFBIU19SSVBQQUREUlNJWkU7IAkvLyBVRFBIUyBQQUREUlNJWkUgUmVnaXN0ZXINCglBVDkxX1JFRwkgVURQSFNfUklQTkFNRTE7IAkvLyBVRFBIUyBOYW1lMSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBVRFBIU19SSVBOQU1FMjsgCS8vIFVEUEhTIE5hbWUyIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIFVEUEhTX0lQRkVBVFVSRVM7IAkvLyBVRFBIUyBGZWF0dXJlcyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBVRFBIU19JUFZFUlNJT047IAkvLyBVRFBIUyBWZXJzaW9uIFJlZ2lzdGVyDQoJQVQ5MVNfVURQSFNfRVBUCSBVRFBIU19FUFRbN107IAkvLyBVRFBIUyBFbmRwb2ludCBzdHJ1Y3QNCglBVDkxX1JFRwkgUmVzZXJ2ZWQzWzcyXTsgCS8vIA0KCUFUOTFTX1VEUEhTX0RNQQkgVURQSFNfRE1BWzZdOyAJLy8gVURQSFMgRE1BIGNoYW5uZWwgc3RydWN0IChub3QgdXNlIFswXSkNCn0gQVQ5MVNfVURQSFMsICpBVDkxUFNfVURQSFM7DQojZWxzZQ0KI2RlZmluZSBVRFBIU19DVFJMICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAwMCkgLy8gKFVEUEhTX0NUUkwpIFVEUEhTIENvbnRyb2wgUmVnaXN0ZXINCiNkZWZpbmUgVURQSFNfRk5VTSAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMDQpIC8vIChVRFBIU19GTlVNKSBVRFBIUyBGcmFtZSBOdW1iZXIgUmVnaXN0ZXINCiNkZWZpbmUgVURQSFNfSUVOICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMTApIC8vIChVRFBIU19JRU4pIFVEUEhTIEludGVycnVwdCBFbmFibGUgUmVnaXN0ZXINCiNkZWZpbmUgVURQSFNfSU5UU1RBICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMTQpIC8vIChVRFBIU19JTlRTVEEpIFVEUEhTIEludGVycnVwdCBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgVURQSFNfQ0xSSU5UICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMTgpIC8vIChVRFBIU19DTFJJTlQpIFVEUEhTIENsZWFyIEludGVycnVwdCBSZWdpc3Rlcg0KI2RlZmluZSBVRFBIU19FUFRSU1QgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAxQykgLy8gKFVEUEhTX0VQVFJTVCkgVURQSFMgRW5kcG9pbnRzIFJlc2V0IFJlZ2lzdGVyDQojZGVmaW5lIFVEUEhTX1RTVFNPRkNOVCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMEQwKSAvLyAoVURQSFNfVFNUU09GQ05UKSBVRFBIUyBUZXN0IFNPRiBDb3VudGVyIFJlZ2lzdGVyDQojZGVmaW5lIFVEUEhTX1RTVENOVEEgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMEQ0KSAvLyAoVURQSFNfVFNUQ05UQSkgVURQSFMgVGVzdCBBIENvdW50ZXIgUmVnaXN0ZXINCiNkZWZpbmUgVURQSFNfVFNUQ05UQiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwRDgpIC8vIChVRFBIU19UU1RDTlRCKSBVRFBIUyBUZXN0IEIgQ291bnRlciBSZWdpc3Rlcg0KI2RlZmluZSBVRFBIU19UU1RNT0RSRUcgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDBEQykgLy8gKFVEUEhTX1RTVE1PRFJFRykgVURQSFMgVGVzdCBNb2RlIFJlZ2lzdGVyDQojZGVmaW5lIFVEUEhTX1RTVCAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMEUwKSAvLyAoVURQSFNfVFNUKSBVRFBIUyBUZXN0IFJlZ2lzdGVyDQojZGVmaW5lIFVEUEhTX1JJUFBBRERSU0laRSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMEVDKSAvLyAoVURQSFNfUklQUEFERFJTSVpFKSBVRFBIUyBQQUREUlNJWkUgUmVnaXN0ZXINCiNkZWZpbmUgVURQSFNfUklQTkFNRTEgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwRjApIC8vIChVRFBIU19SSVBOQU1FMSkgVURQSFMgTmFtZTEgUmVnaXN0ZXINCiNkZWZpbmUgVURQSFNfUklQTkFNRTIgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwRjQpIC8vIChVRFBIU19SSVBOQU1FMikgVURQSFMgTmFtZTIgUmVnaXN0ZXINCiNkZWZpbmUgVURQSFNfSVBGRUFUVVJFUyAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMEY4KSAvLyAoVURQSFNfSVBGRUFUVVJFUykgVURQSFMgRmVhdHVyZXMgUmVnaXN0ZXINCiNkZWZpbmUgVURQSFNfSVBWRVJTSU9OIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwRkMpIC8vIChVRFBIU19JUFZFUlNJT04pIFVEUEhTIFZlcnNpb24gUmVnaXN0ZXINCg0KI2VuZGlmDQovLyAtLS0tLS0tLSBVRFBIU19DVFJMIDogKFVEUEhTIE9mZnNldDogMHgwKSBVRFBIUyBDb250cm9sIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19VRFBIU19ERVZfQUREUiAgKDB4N0YgPDwgIDApIC8vIChVRFBIUykgVURQSFMgQWRkcmVzcw0KI2RlZmluZSBBVDkxQ19VRFBIU19GQUREUl9FTiAgKDB4MSA8PCAgNykgLy8gKFVEUEhTKSBGdW5jdGlvbiBBZGRyZXNzIEVuYWJsZQ0KI2RlZmluZSBBVDkxQ19VRFBIU19FTl9VRFBIUyAgKDB4MSA8PCAgOCkgLy8gKFVEUEhTKSBVRFBIUyBFbmFibGUNCiNkZWZpbmUgQVQ5MUNfVURQSFNfREVUQUNIICAgICgweDEgPDwgIDkpIC8vIChVRFBIUykgRGV0YWNoIENvbW1hbmQNCiNkZWZpbmUgQVQ5MUNfVURQSFNfUkVXQUtFVVAgICgweDEgPDwgMTApIC8vIChVRFBIUykgU2VuZCBSZW1vdGUgV2FrZSBVcA0KI2RlZmluZSBBVDkxQ19VRFBIU19QVUxMRF9ESVMgKDB4MSA8PCAxMSkgLy8gKFVEUEhTKSBQdWxsRG93biBEaXNhYmxlDQovLyAtLS0tLS0tLSBVRFBIU19GTlVNIDogKFVEUEhTIE9mZnNldDogMHg0KSBVRFBIUyBGcmFtZSBOdW1iZXIgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1VEUEhTX01JQ1JPX0ZSQU1FX05VTSAoMHg3IDw8ICAwKSAvLyAoVURQSFMpIE1pY3JvIEZyYW1lIE51bWJlcg0KI2RlZmluZSBBVDkxQ19VRFBIU19GUkFNRV9OVU1CRVIgKDB4N0ZGIDw8ICAzKSAvLyAoVURQSFMpIEZyYW1lIE51bWJlciBhcyBkZWZpbmVkIGluIHRoZSBQYWNrZXQgRmllbGQgRm9ybWF0cw0KI2RlZmluZSBBVDkxQ19VRFBIU19GTlVNX0VSUiAgKDB4MSA8PCAzMSkgLy8gKFVEUEhTKSBGcmFtZSBOdW1iZXIgQ1JDIEVycm9yDQovLyAtLS0tLS0tLSBVRFBIU19JRU4gOiAoVURQSFMgT2Zmc2V0OiAweDEwKSBVRFBIUyBJbnRlcnJ1cHQgRW5hYmxlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19VRFBIU19ERVRfU1VTUEQgKDB4MSA8PCAgMSkgLy8gKFVEUEhTKSBTdXNwZW5kIEludGVycnVwdCBFbmFibGUvQ2xlYXIvU3RhdHVzDQojZGVmaW5lIEFUOTFDX1VEUEhTX01JQ1JPX1NPRiAoMHgxIDw8ICAyKSAvLyAoVURQSFMpIE1pY3JvLVNPRiBJbnRlcnJ1cHQgRW5hYmxlL0NsZWFyL1N0YXR1cw0KI2RlZmluZSBBVDkxQ19VRFBIU19JRU5fU09GICAgKDB4MSA8PCAgMykgLy8gKFVEUEhTKSBTT0YgSW50ZXJydXB0IEVuYWJsZS9DbGVhci9TdGF0dXMNCiNkZWZpbmUgQVQ5MUNfVURQSFNfRU5EUkVTRVQgICgweDEgPDwgIDQpIC8vIChVRFBIUykgRW5kIE9mIFJlc2V0IEludGVycnVwdCBFbmFibGUvQ2xlYXIvU3RhdHVzDQojZGVmaW5lIEFUOTFDX1VEUEhTX1dBS0VfVVAgICAoMHgxIDw8ICA1KSAvLyAoVURQSFMpIFdha2UgVXAgQ1BVIEludGVycnVwdCBFbmFibGUvQ2xlYXIvU3RhdHVzDQojZGVmaW5lIEFUOTFDX1VEUEhTX0VORE9GUlNNICAoMHgxIDw8ICA2KSAvLyAoVURQSFMpIEVuZCBPZiBSZXN1bWUgSW50ZXJydXB0IEVuYWJsZS9DbGVhci9TdGF0dXMNCiNkZWZpbmUgQVQ5MUNfVURQSFNfVVBTVFJfUkVTICgweDEgPDwgIDcpIC8vIChVRFBIUykgVXBzdHJlYW0gUmVzdW1lIEludGVycnVwdCBFbmFibGUvQ2xlYXIvU3RhdHVzDQojZGVmaW5lIEFUOTFDX1VEUEhTX0VQVF9JTlRfMCAoMHgxIDw8ICA4KSAvLyAoVURQSFMpIEVuZHBvaW50IDAgSW50ZXJydXB0IEVuYWJsZS9TdGF0dXMNCiNkZWZpbmUgQVQ5MUNfVURQSFNfRVBUX0lOVF8xICgweDEgPDwgIDkpIC8vIChVRFBIUykgRW5kcG9pbnQgMSBJbnRlcnJ1cHQgRW5hYmxlL1N0YXR1cw0KI2RlZmluZSBBVDkxQ19VRFBIU19FUFRfSU5UXzIgKDB4MSA8PCAxMCkgLy8gKFVEUEhTKSBFbmRwb2ludCAyIEludGVycnVwdCBFbmFibGUvU3RhdHVzDQojZGVmaW5lIEFUOTFDX1VEUEhTX0VQVF9JTlRfMyAoMHgxIDw8IDExKSAvLyAoVURQSFMpIEVuZHBvaW50IDMgSW50ZXJydXB0IEVuYWJsZS9TdGF0dXMNCiNkZWZpbmUgQVQ5MUNfVURQSFNfRVBUX0lOVF80ICgweDEgPDwgMTIpIC8vIChVRFBIUykgRW5kcG9pbnQgNCBJbnRlcnJ1cHQgRW5hYmxlL1N0YXR1cw0KI2RlZmluZSBBVDkxQ19VRFBIU19FUFRfSU5UXzUgKDB4MSA8PCAxMykgLy8gKFVEUEhTKSBFbmRwb2ludCA1IEludGVycnVwdCBFbmFibGUvU3RhdHVzDQojZGVmaW5lIEFUOTFDX1VEUEhTX0VQVF9JTlRfNiAoMHgxIDw8IDE0KSAvLyAoVURQSFMpIEVuZHBvaW50IDYgSW50ZXJydXB0IEVuYWJsZS9TdGF0dXMNCiNkZWZpbmUgQVQ5MUNfVURQSFNfRE1BX0lOVF8xICgweDEgPDwgMjUpIC8vIChVRFBIUykgRE1BIENoYW5uZWwgMSBJbnRlcnJ1cHQgRW5hYmxlL1N0YXR1cw0KI2RlZmluZSBBVDkxQ19VRFBIU19ETUFfSU5UXzIgKDB4MSA8PCAyNikgLy8gKFVEUEhTKSBETUEgQ2hhbm5lbCAyIEludGVycnVwdCBFbmFibGUvU3RhdHVzDQojZGVmaW5lIEFUOTFDX1VEUEhTX0RNQV9JTlRfMyAoMHgxIDw8IDI3KSAvLyAoVURQSFMpIERNQSBDaGFubmVsIDMgSW50ZXJydXB0IEVuYWJsZS9TdGF0dXMNCiNkZWZpbmUgQVQ5MUNfVURQSFNfRE1BX0lOVF80ICgweDEgPDwgMjgpIC8vIChVRFBIUykgRE1BIENoYW5uZWwgNCBJbnRlcnJ1cHQgRW5hYmxlL1N0YXR1cw0KI2RlZmluZSBBVDkxQ19VRFBIU19ETUFfSU5UXzUgKDB4MSA8PCAyOSkgLy8gKFVEUEhTKSBETUEgQ2hhbm5lbCA1IEludGVycnVwdCBFbmFibGUvU3RhdHVzDQojZGVmaW5lIEFUOTFDX1VEUEhTX0RNQV9JTlRfNiAoMHgxIDw8IDMwKSAvLyAoVURQSFMpIERNQSBDaGFubmVsIDYgSW50ZXJydXB0IEVuYWJsZS9TdGF0dXMNCi8vIC0tLS0tLS0tIFVEUEhTX0lOVFNUQSA6IChVRFBIUyBPZmZzZXQ6IDB4MTQpIFVEUEhTIEludGVycnVwdCBTdGF0dXMgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1VEUEhTX1NQRUVEICAgICAoMHgxIDw8ICAwKSAvLyAoVURQSFMpIFNwZWVkIFN0YXR1cw0KLy8gLS0tLS0tLS0gVURQSFNfQ0xSSU5UIDogKFVEUEhTIE9mZnNldDogMHgxOCkgVURQSFMgQ2xlYXIgSW50ZXJydXB0IFJlZ2lzdGVyIC0tLS0tLS0tIA0KLy8gLS0tLS0tLS0gVURQSFNfRVBUUlNUIDogKFVEUEhTIE9mZnNldDogMHgxYykgVURQSFMgRW5kcG9pbnRzIFJlc2V0IFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19VRFBIU19SU1RfRVBUXzAgKDB4MSA8PCAgMCkgLy8gKFVEUEhTKSBFbmRwb2ludCBSZXNldCAwDQojZGVmaW5lIEFUOTFDX1VEUEhTX1JTVF9FUFRfMSAoMHgxIDw8ICAxKSAvLyAoVURQSFMpIEVuZHBvaW50IFJlc2V0IDENCiNkZWZpbmUgQVQ5MUNfVURQSFNfUlNUX0VQVF8yICgweDEgPDwgIDIpIC8vIChVRFBIUykgRW5kcG9pbnQgUmVzZXQgMg0KI2RlZmluZSBBVDkxQ19VRFBIU19SU1RfRVBUXzMgKDB4MSA8PCAgMykgLy8gKFVEUEhTKSBFbmRwb2ludCBSZXNldCAzDQojZGVmaW5lIEFUOTFDX1VEUEhTX1JTVF9FUFRfNCAoMHgxIDw8ICA0KSAvLyAoVURQSFMpIEVuZHBvaW50IFJlc2V0IDQNCiNkZWZpbmUgQVQ5MUNfVURQSFNfUlNUX0VQVF81ICgweDEgPDwgIDUpIC8vIChVRFBIUykgRW5kcG9pbnQgUmVzZXQgNQ0KI2RlZmluZSBBVDkxQ19VRFBIU19SU1RfRVBUXzYgKDB4MSA8PCAgNikgLy8gKFVEUEhTKSBFbmRwb2ludCBSZXNldCA2DQovLyAtLS0tLS0tLSBVRFBIU19UU1RTT0ZDTlQgOiAoVURQSFMgT2Zmc2V0OiAweGQwKSBVRFBIUyBUZXN0IFNPRiBDb3VudGVyIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19VRFBIU19TT0ZDTlRNQVggKDB4MyA8PCAgMCkgLy8gKFVEUEhTKSBTT0YgQ291bnRlciBNYXggVmFsdWUNCiNkZWZpbmUgQVQ5MUNfVURQSFNfU09GQ1RMT0FEICgweDEgPDwgIDcpIC8vIChVRFBIUykgU09GIENvdW50ZXIgTG9hZA0KLy8gLS0tLS0tLS0gVURQSFNfVFNUQ05UQSA6IChVRFBIUyBPZmZzZXQ6IDB4ZDQpIFVEUEhTIFRlc3QgQSBDb3VudGVyIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19VRFBIU19DTlRBTUFYICAgKDB4N0ZGRiA8PCAgMCkgLy8gKFVEUEhTKSBBIENvdW50ZXIgTWF4IFZhbHVlDQojZGVmaW5lIEFUOTFDX1VEUEhTX0NOVEFMT0FEICAoMHgxIDw8IDE1KSAvLyAoVURQSFMpIEEgQ291bnRlciBMb2FkDQovLyAtLS0tLS0tLSBVRFBIU19UU1RDTlRCIDogKFVEUEhTIE9mZnNldDogMHhkOCkgVURQSFMgVGVzdCBCIENvdW50ZXIgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1VEUEhTX0NOVEJNQVggICAoMHg3RkZGIDw8ICAwKSAvLyAoVURQSFMpIEIgQ291bnRlciBNYXggVmFsdWUNCiNkZWZpbmUgQVQ5MUNfVURQSFNfQ05UQkxPQUQgICgweDEgPDwgMTUpIC8vIChVRFBIUykgQiBDb3VudGVyIExvYWQNCi8vIC0tLS0tLS0tIFVEUEhTX1RTVE1PRFJFRyA6IChVRFBIUyBPZmZzZXQ6IDB4ZGMpIFVEUEhTIFRlc3QgTW9kZSBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfVURQSFNfVFNUTU9ERSAgICgweDFGIDw8ICAxKSAvLyAoVURQSFMpIFVEUEhTIENvcmUgVGVzdE1vZGVSZWcNCi8vIC0tLS0tLS0tIFVEUEhTX1RTVCA6IChVRFBIUyBPZmZzZXQ6IDB4ZTApIFVEUEhTIFRlc3QgUmVnaXN0ZXIgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1VEUEhTX1NQRUVEX0NGRyAoMHgzIDw8ICAwKSAvLyAoVURQSFMpIFNwZWVkIENvbmZpZ3VyYXRpb24NCiNkZWZpbmUgCUFUOTFDX1VEUEhTX1NQRUVEX0NGR19OTSAgICAgICAgICAgICAgICAgICAoMHgwKSAvLyAoVURQSFMpIE5vcm1hbCBNb2RlDQojZGVmaW5lIAlBVDkxQ19VRFBIU19TUEVFRF9DRkdfUlMgICAgICAgICAgICAgICAgICAgKDB4MSkgLy8gKFVEUEhTKSBSZXNlcnZlZA0KI2RlZmluZSAJQVQ5MUNfVURQSFNfU1BFRURfQ0ZHX0hTICAgICAgICAgICAgICAgICAgICgweDIpIC8vIChVRFBIUykgRm9yY2UgSGlnaCBTcGVlZA0KI2RlZmluZSAJQVQ5MUNfVURQSFNfU1BFRURfQ0ZHX0ZTICAgICAgICAgICAgICAgICAgICgweDMpIC8vIChVRFBIUykgRm9yY2UgRnVsbC1TcGVlZA0KI2RlZmluZSBBVDkxQ19VRFBIU19UU1RfSiAgICAgKDB4MSA8PCAgMikgLy8gKFVEUEhTKSBUZXN0Sk1vZGUNCiNkZWZpbmUgQVQ5MUNfVURQSFNfVFNUX0sgICAgICgweDEgPDwgIDMpIC8vIChVRFBIUykgVGVzdEtNb2RlDQojZGVmaW5lIEFUOTFDX1VEUEhTX1RTVF9QS1QgICAoMHgxIDw8ICA0KSAvLyAoVURQSFMpIFRlc3RQYWNrZXRNb2RlDQojZGVmaW5lIEFUOTFDX1VEUEhTX09QTU9ERTIgICAoMHgxIDw8ICA1KSAvLyAoVURQSFMpIE9wTW9kZTINCi8vIC0tLS0tLS0tIFVEUEhTX1JJUFBBRERSU0laRSA6IChVRFBIUyBPZmZzZXQ6IDB4ZWMpIFVEUEhTIFBBRERSU0laRSBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfVURQSFNfSVBQQUREUlNJWkUgKDB4MCA8PCAgMCkgLy8gKFVEUEhTKSAyXlVEUEhTREVWX1BBRERSX1NJWkUNCi8vIC0tLS0tLS0tIFVEUEhTX1JJUE5BTUUxIDogKFVEUEhTIE9mZnNldDogMHhmMCkgVURQSFMgTmFtZSBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfVURQSFNfSVBOQU1FMSAgICgweDAgPDwgIDApIC8vIChVRFBIUykgQVNDSUkgc3RyaW5nIEhVU0INCi8vIC0tLS0tLS0tIFVEUEhTX1JJUE5BTUUyIDogKFVEUEhTIE9mZnNldDogMHhmNCkgVURQSFMgTmFtZSBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfVURQSFNfSVBOQU1FMiAgICgweDAgPDwgIDApIC8vIChVRFBIUykgQVNDSUkgc3RyaW5nIDJERVYNCi8vIC0tLS0tLS0tIFVEUEhTX0lQRkVBVFVSRVMgOiAoVURQSFMgT2Zmc2V0OiAweGY4KSBVRFBIUyBGZWF0dXJlcyBSZWdpc3RlciAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfVURQSFNfRVBUX05CUl9NQVggKDB4RiA8PCAgMCkgLy8gKFVEUEhTKSBNYXggTnVtYmVyIG9mIEVuZHBvaW50cw0KI2RlZmluZSBBVDkxQ19VRFBIU19ETUFfQ0hBTk5FTF9OQlIgKDB4NyA8PCAgNCkgLy8gKFVEUEhTKSBOdW1iZXIgb2YgRE1BIENoYW5uZWxzDQojZGVmaW5lIEFUOTFDX1VEUEhTX0RNQV9CX1NJWiAoMHgxIDw8ICA3KSAvLyAoVURQSFMpIERNQSBCdWZmZXIgU2l6ZQ0KI2RlZmluZSBBVDkxQ19VRFBIU19ETUFfRklGT19XT1JEX0RFUFRIICgweEYgPDwgIDgpIC8vIChVRFBIUykgRE1BIEZJRk8gRGVwdGggaW4gd29yZHMNCiNkZWZpbmUgQVQ5MUNfVURQSFNfRklGT19NQVhfU0laRSAoMHg3IDw8IDEyKSAvLyAoVURQSFMpIERQUkFNIHNpemUNCiNkZWZpbmUgQVQ5MUNfVURQSFNfQldfRFBSQU0gICgweDEgPDwgMTUpIC8vIChVRFBIUykgRFBSQU0gYnl0ZSB3cml0ZSBjYXBhYmlsaXR5DQojZGVmaW5lIEFUOTFDX1VEUEhTX0RBVEFCMTZfOCAoMHgxIDw8IDE2KSAvLyAoVURQSFMpIFVUTUkgRGF0YUJ1czE2XzgNCiNkZWZpbmUgQVQ5MUNfVURQSFNfSVNPX0VQVF8xICgweDEgPDwgMTcpIC8vIChVRFBIUykgRW5kcG9pbnQgMSBIaWdoIEJhbmR3aWR0aCBJc29jaHJvbm91cyBDYXBhYmlsaXR5DQojZGVmaW5lIEFUOTFDX1VEUEhTX0lTT19FUFRfMiAoMHgxIDw8IDE4KSAvLyAoVURQSFMpIEVuZHBvaW50IDIgSGlnaCBCYW5kd2lkdGggSXNvY2hyb25vdXMgQ2FwYWJpbGl0eQ0KI2RlZmluZSBBVDkxQ19VRFBIU19JU09fRVBUXzUgKDB4MSA8PCAyMSkgLy8gKFVEUEhTKSBFbmRwb2ludCA1IEhpZ2ggQmFuZHdpZHRoIElzb2Nocm9ub3VzIENhcGFiaWxpdHkNCiNkZWZpbmUgQVQ5MUNfVURQSFNfSVNPX0VQVF82ICgweDEgPDwgMjIpIC8vIChVRFBIUykgRW5kcG9pbnQgNiBIaWdoIEJhbmR3aWR0aCBJc29jaHJvbm91cyBDYXBhYmlsaXR5DQovLyAtLS0tLS0tLSBVRFBIU19JUFZFUlNJT04gOiAoVURQSFMgT2Zmc2V0OiAweGZjKSBVRFBIUyBWZXJzaW9uIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19VRFBIU19WRVJTSU9OX05VTSAoMHhGRkZGIDw8ICAwKSAvLyAoVURQSFMpIEdpdmUgdGhlIElQIHZlcnNpb24NCiNkZWZpbmUgQVQ5MUNfVURQSFNfTUVUQUxfRklYX05VTSAoMHg3IDw8IDE2KSAvLyAoVURQSFMpIEdpdmUgdGhlIG51bWJlciBvZiBtZXRhbCBmaXhlcw0KDQovLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KLy8gICAgICAgICAgICAgIFNPRlRXQVJFIEFQSSBERUZJTklUSU9OICBGT1IgSERNQSBDaGFubmVsIHN0cnVjdHVyZQ0KLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCiNpZm5kZWYgX19BU1NFTUJMWV9fDQp0eXBlZGVmIHN0cnVjdCBfQVQ5MVNfSERNQV9DSCB7DQoJQVQ5MV9SRUcJIEhETUFfU0FERFI7IAkvLyBIRE1BIENoYW5uZWwgU291cmNlIEFkZHJlc3MgUmVnaXN0ZXINCglBVDkxX1JFRwkgSERNQV9EQUREUjsgCS8vIEhETUEgQ2hhbm5lbCBEZXN0aW5hdGlvbiBBZGRyZXNzIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIEhETUFfRFNDUjsgCS8vIEhETUEgQ2hhbm5lbCBEZXNjcmlwdG9yIEFkZHJlc3MgUmVnaXN0ZXINCglBVDkxX1JFRwkgSERNQV9DVFJMQTsgCS8vIEhETUEgQ2hhbm5lbCBDb250cm9sIEEgUmVnaXN0ZXINCglBVDkxX1JFRwkgSERNQV9DVFJMQjsgCS8vIEhETUEgQ2hhbm5lbCBDb250cm9sIEIgUmVnaXN0ZXINCglBVDkxX1JFRwkgSERNQV9DRkc7IAkvLyBIRE1BIENoYW5uZWwgQ29uZmlndXJhdGlvbiBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBIRE1BX1NQSVA7IAkvLyBIRE1BIENoYW5uZWwgU291cmNlIFBpY3R1cmUgaW4gUGljdHVyZSBDb25maWd1cmF0aW9uIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIEhETUFfRFBJUDsgCS8vIEhETUEgQ2hhbm5lbCBEZXN0aW5hdGlvbiBQaWN0dXJlIGluIFBpY3R1cmUgQ29uZmlndXJhdGlvbiBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBIRE1BX0JEU0NSOyAJLy8gSERNQSBSZXNlcnZlZA0KCUFUOTFfUkVHCSBIRE1BX0NBRERSOyAJLy8gSERNQSBSZXNlcnZlZA0KfSBBVDkxU19IRE1BX0NILCAqQVQ5MVBTX0hETUFfQ0g7DQojZWxzZQ0KI2RlZmluZSBIRE1BX1NBRERSICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAwMCkgLy8gKEhETUFfU0FERFIpIEhETUEgQ2hhbm5lbCBTb3VyY2UgQWRkcmVzcyBSZWdpc3Rlcg0KI2RlZmluZSBIRE1BX0RBRERSICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAwNCkgLy8gKEhETUFfREFERFIpIEhETUEgQ2hhbm5lbCBEZXN0aW5hdGlvbiBBZGRyZXNzIFJlZ2lzdGVyDQojZGVmaW5lIEhETUFfRFNDUiAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDA4KSAvLyAoSERNQV9EU0NSKSBIRE1BIENoYW5uZWwgRGVzY3JpcHRvciBBZGRyZXNzIFJlZ2lzdGVyDQojZGVmaW5lIEhETUFfQ1RSTEEgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDBDKSAvLyAoSERNQV9DVFJMQSkgSERNQSBDaGFubmVsIENvbnRyb2wgQSBSZWdpc3Rlcg0KI2RlZmluZSBIRE1BX0NUUkxCICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAxMCkgLy8gKEhETUFfQ1RSTEIpIEhETUEgQ2hhbm5lbCBDb250cm9sIEIgUmVnaXN0ZXINCiNkZWZpbmUgSERNQV9DRkcgICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMTQpIC8vIChIRE1BX0NGRykgSERNQSBDaGFubmVsIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXINCiNkZWZpbmUgSERNQV9TUElQICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMTgpIC8vIChIRE1BX1NQSVApIEhETUEgQ2hhbm5lbCBTb3VyY2UgUGljdHVyZSBpbiBQaWN0dXJlIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXINCiNkZWZpbmUgSERNQV9EUElQICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMUMpIC8vIChIRE1BX0RQSVApIEhETUEgQ2hhbm5lbCBEZXN0aW5hdGlvbiBQaWN0dXJlIGluIFBpY3R1cmUgQ29uZmlndXJhdGlvbiBSZWdpc3Rlcg0KI2RlZmluZSBIRE1BX0JEU0NSICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAyMCkgLy8gKEhETUFfQkRTQ1IpIEhETUEgUmVzZXJ2ZWQNCiNkZWZpbmUgSERNQV9DQUREUiAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMjQpIC8vIChIRE1BX0NBRERSKSBIRE1BIFJlc2VydmVkDQoNCiNlbmRpZg0KLy8gLS0tLS0tLS0gSERNQV9TQUREUiA6IChIRE1BX0NIIE9mZnNldDogMHgwKSAgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1NBRERSICAgICAgICAgICAoMHgwIDw8ICAwKSAvLyAoSERNQV9DSCkgDQovLyAtLS0tLS0tLSBIRE1BX0RBRERSIDogKEhETUFfQ0ggT2Zmc2V0OiAweDQpICAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfREFERFIgICAgICAgICAgICgweDAgPDwgIDApIC8vIChIRE1BX0NIKSANCi8vIC0tLS0tLS0tIEhETUFfRFNDUiA6IChIRE1BX0NIIE9mZnNldDogMHg4KSAgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX0hETUFfRFNDUl9JRiAgICAoMHgzIDw8ICAwKSAvLyAoSERNQV9DSCkgU2VsZWN0IEFIQi1MaXRlIEludGVyZmFjZSBmb3IgY3VycmVudCBjaGFubmVsDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RTQ1JfSUZfMCAgICAgICAgICAgICAgICAgICAgKDB4MCkgLy8gKEhETUFfQ0gpIFRoZSBCdWZmZXIgVHJhbnNmZXIgZGVzY3JpcHRvciBpcyBmZXRjaGVkIHZpYSBBSEItTGl0ZSBJbnRlcmZhY2UgMC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRFNDUl9JRl8xICAgICAgICAgICAgICAgICAgICAoMHgxKSAvLyAoSERNQV9DSCkgVGhlIEJ1ZmZlciBUcmFuc2ZlciBkZXNjcmlwdG9yIGlzIGZldGNoZWQgdmlhIEFIQi1MaXRlIEludGVyZmFjZSAxLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9EU0NSX0lGXzIgICAgICAgICAgICAgICAgICAgICgweDIpIC8vIChIRE1BX0NIKSBUaGUgQnVmZmVyIFRyYW5zZmVyIGRlc2NyaXB0b3IgaXMgZmV0Y2hlZCB2aWEgQUhCLUxpdGUgSW50ZXJmYWNlIDIuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RTQ1JfSUZfMyAgICAgICAgICAgICAgICAgICAgKDB4MykgLy8gKEhETUFfQ0gpIFRoZSBCdWZmZXIgVHJhbnNmZXIgZGVzY3JpcHRvciBpcyBmZXRjaGVkIHZpYSBBSEItTGl0ZSBJbnRlcmZhY2UgMy4NCiNkZWZpbmUgQVQ5MUNfSERNQV9EU0NSICAgICAgICgweDNGRkZGRkZGIDw8ICAyKSAvLyAoSERNQV9DSCkgQnVmZmVyIFRyYW5zZmVyIGRlc2NyaXB0b3IgYWRkcmVzcy4gVGhpcyBhZGRyZXNzIGlzIHdvcmQgYWxpZ25lZC4NCi8vIC0tLS0tLS0tIEhETUFfQ1RSTEEgOiAoSERNQV9DSCBPZmZzZXQ6IDB4YykgIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19IRE1BX0JUU0laRSAgICAgKDB4RkZGRiA8PCAgMCkgLy8gKEhETUFfQ0gpIEJ1ZmZlciBUcmFuc2ZlciBTaXplLg0KI2RlZmluZSBBVDkxQ19IRE1BX1NDU0laRSAgICAgKDB4NyA8PCAxNikgLy8gKEhETUFfQ0gpIFNvdXJjZSBDaHVuayBUcmFuc2ZlciBTaXplLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TQ1NJWkVfMSAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAxNikgLy8gKEhETUFfQ0gpIDEuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NDU0laRV80ICAgICAgICAgICAgICAgICAgICAoMHgxIDw8IDE2KSAvLyAoSERNQV9DSCkgNC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfU0NTSVpFXzggICAgICAgICAgICAgICAgICAgICgweDIgPDwgMTYpIC8vIChIRE1BX0NIKSA4Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TQ1NJWkVfMTYgICAgICAgICAgICAgICAgICAgKDB4MyA8PCAxNikgLy8gKEhETUFfQ0gpIDE2Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TQ1NJWkVfMzIgICAgICAgICAgICAgICAgICAgKDB4NCA8PCAxNikgLy8gKEhETUFfQ0gpIDMyLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TQ1NJWkVfNjQgICAgICAgICAgICAgICAgICAgKDB4NSA8PCAxNikgLy8gKEhETUFfQ0gpIDY0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TQ1NJWkVfMTI4ICAgICAgICAgICAgICAgICAgKDB4NiA8PCAxNikgLy8gKEhETUFfQ0gpIDEyOC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfU0NTSVpFXzI1NiAgICAgICAgICAgICAgICAgICgweDcgPDwgMTYpIC8vIChIRE1BX0NIKSAyNTYuDQojZGVmaW5lIEFUOTFDX0hETUFfRENTSVpFICAgICAoMHg3IDw8IDIwKSAvLyAoSERNQV9DSCkgRGVzdGluYXRpb24gQ2h1bmsgVHJhbnNmZXIgU2l6ZQ0KI2RlZmluZSAJQVQ5MUNfSERNQV9EQ1NJWkVfMSAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAyMCkgLy8gKEhETUFfQ0gpIDEuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RDU0laRV80ICAgICAgICAgICAgICAgICAgICAoMHgxIDw8IDIwKSAvLyAoSERNQV9DSCkgNC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRENTSVpFXzggICAgICAgICAgICAgICAgICAgICgweDIgPDwgMjApIC8vIChIRE1BX0NIKSA4Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9EQ1NJWkVfMTYgICAgICAgICAgICAgICAgICAgKDB4MyA8PCAyMCkgLy8gKEhETUFfQ0gpIDE2Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9EQ1NJWkVfMzIgICAgICAgICAgICAgICAgICAgKDB4NCA8PCAyMCkgLy8gKEhETUFfQ0gpIDMyLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9EQ1NJWkVfNjQgICAgICAgICAgICAgICAgICAgKDB4NSA8PCAyMCkgLy8gKEhETUFfQ0gpIDY0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9EQ1NJWkVfMTI4ICAgICAgICAgICAgICAgICAgKDB4NiA8PCAyMCkgLy8gKEhETUFfQ0gpIDEyOC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRENTSVpFXzI1NiAgICAgICAgICAgICAgICAgICgweDcgPDwgMjApIC8vIChIRE1BX0NIKSAyNTYuDQojZGVmaW5lIEFUOTFDX0hETUFfU1JDX1dJRFRIICAoMHgzIDw8IDI0KSAvLyAoSERNQV9DSCkgU291cmNlIFNpbmdsZSBUcmFuc2ZlciBTaXplDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NSQ19XSURUSF9CWVRFICAgICAgICAgICAgICAgICAoMHgwIDw8IDI0KSAvLyAoSERNQV9DSCkgQllURS4NCiNkZWZpbmUgCUFUOTFDX0hETUFfU1JDX1dJRFRIX0hBTEZXT1JEICAgICAgICAgICAgICgweDEgPDwgMjQpIC8vIChIRE1BX0NIKSBIQUxGLVdPUkQuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NSQ19XSURUSF9XT1JEICAgICAgICAgICAgICAgICAoMHgyIDw8IDI0KSAvLyAoSERNQV9DSCkgV09SRC4NCiNkZWZpbmUgQVQ5MUNfSERNQV9EU1RfV0lEVEggICgweDMgPDwgMjgpIC8vIChIRE1BX0NIKSBEZXN0aW5hdGlvbiBTaW5nbGUgVHJhbnNmZXIgU2l6ZQ0KI2RlZmluZSAJQVQ5MUNfSERNQV9EU1RfV0lEVEhfQllURSAgICAgICAgICAgICAgICAgKDB4MCA8PCAyOCkgLy8gKEhETUFfQ0gpIEJZVEUuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RTVF9XSURUSF9IQUxGV09SRCAgICAgICAgICAgICAoMHgxIDw8IDI4KSAvLyAoSERNQV9DSCkgSEFMRi1XT1JELg0KI2RlZmluZSAJQVQ5MUNfSERNQV9EU1RfV0lEVEhfV09SRCAgICAgICAgICAgICAgICAgKDB4MiA8PCAyOCkgLy8gKEhETUFfQ0gpIFdPUkQuDQojZGVmaW5lIEFUOTFDX0hETUFfRE9ORSAgICAgICAoMHgxIDw8IDMxKSAvLyAoSERNQV9DSCkgDQovLyAtLS0tLS0tLSBIRE1BX0NUUkxCIDogKEhETUFfQ0ggT2Zmc2V0OiAweDEwKSAgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX0hETUFfU0lGICAgICAgICAoMHgzIDw8ICAwKSAvLyAoSERNQV9DSCkgU291cmNlIEludGVyZmFjZSBTZWxlY3Rpb24gRmllbGQuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NJRl8wICAgICAgICAgICAgICAgICAgICAoMHgwKSAvLyAoSERNQV9DSCkgVGhlIFNvdXJjZSBUcmFuc2ZlciBpcyBkb25lIHZpYSBBSEItTGl0ZSBJbnRlcmZhY2UgMC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfU0lGXzEgICAgICAgICAgICAgICAgICAgICgweDEpIC8vIChIRE1BX0NIKSBUaGUgU291cmNlIFRyYW5zZmVyIGlzIGRvbmUgdmlhIEFIQi1MaXRlIEludGVyZmFjZSAxLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TSUZfMiAgICAgICAgICAgICAgICAgICAgKDB4MikgLy8gKEhETUFfQ0gpIFRoZSBTb3VyY2UgVHJhbnNmZXIgaXMgZG9uZSB2aWEgQUhCLUxpdGUgSW50ZXJmYWNlIDIuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NJRl8zICAgICAgICAgICAgICAgICAgICAoMHgzKSAvLyAoSERNQV9DSCkgVGhlIFNvdXJjZSBUcmFuc2ZlciBpcyBkb25lIHZpYSBBSEItTGl0ZSBJbnRlcmZhY2UgMy4NCiNkZWZpbmUgQVQ5MUNfSERNQV9ESUYgICAgICAgICgweDMgPDwgIDQpIC8vIChIRE1BX0NIKSBEZXN0aW5hdGlvbiBJbnRlcmZhY2UgU2VsZWN0aW9uIEZpZWxkLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9ESUZfMCAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAgNCkgLy8gKEhETUFfQ0gpIFRoZSBEZXN0aW5hdGlvbiBUcmFuc2ZlciBpcyBkb25lIHZpYSBBSEItTGl0ZSBJbnRlcmZhY2UgMC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRElGXzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgIDQpIC8vIChIRE1BX0NIKSBUaGUgRGVzdGluYXRpb24gVHJhbnNmZXIgaXMgZG9uZSB2aWEgQUhCLUxpdGUgSW50ZXJmYWNlIDEuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RJRl8yICAgICAgICAgICAgICAgICAgICAoMHgyIDw8ICA0KSAvLyAoSERNQV9DSCkgVGhlIERlc3RpbmF0aW9uIFRyYW5zZmVyIGlzIGRvbmUgdmlhIEFIQi1MaXRlIEludGVyZmFjZSAyLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9ESUZfMyAgICAgICAgICAgICAgICAgICAgKDB4MyA8PCAgNCkgLy8gKEhETUFfQ0gpIFRoZSBEZXN0aW5hdGlvbiBUcmFuc2ZlciBpcyBkb25lIHZpYSBBSEItTGl0ZSBJbnRlcmZhY2UgMy4NCiNkZWZpbmUgQVQ5MUNfSERNQV9TUkNfUElQICAgICgweDEgPDwgIDgpIC8vIChIRE1BX0NIKSBTb3VyY2UgUGljdHVyZS1pbi1QaWN0dXJlIE1vZGUNCiNkZWZpbmUgCUFUOTFDX0hETUFfU1JDX1BJUF9ESVNBQkxFICAgICAgICAgICAgICAoMHgwIDw8ICA4KSAvLyAoSERNQV9DSCkgU291cmNlIFBpY3R1cmUtaW4tUGljdHVyZSBtb2RlIGlzIGRpc2FibGVkLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TUkNfUElQX0VOQUJMRSAgICAgICAgICAgICAgICgweDEgPDwgIDgpIC8vIChIRE1BX0NIKSBTb3VyY2UgUGljdHVyZS1pbi1QaWN0dXJlIG1vZGUgaXMgZW5hYmxlZC4NCiNkZWZpbmUgQVQ5MUNfSERNQV9EU1RfUElQICAgICgweDEgPDwgMTIpIC8vIChIRE1BX0NIKSBEZXN0aW5hdGlvbiBQaWN0dXJlLWluLVBpY3R1cmUgTW9kZQ0KI2RlZmluZSAJQVQ5MUNfSERNQV9EU1RfUElQX0RJU0FCTEUgICAgICAgICAgICAgICgweDAgPDwgMTIpIC8vIChIRE1BX0NIKSBEZXN0aW5hdGlvbiBQaWN0dXJlLWluLVBpY3R1cmUgbW9kZSBpcyBkaXNhYmxlZC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRFNUX1BJUF9FTkFCTEUgICAgICAgICAgICAgICAoMHgxIDw8IDEyKSAvLyAoSERNQV9DSCkgRGVzdGluYXRpb24gUGljdHVyZS1pbi1QaWN0dXJlIG1vZGUgaXMgZW5hYmxlZC4NCiNkZWZpbmUgQVQ5MUNfSERNQV9TUkNfRFNDUiAgICgweDEgPDwgMTYpIC8vIChIRE1BX0NIKSBTb3VyY2UgQnVmZmVyIERlc2NyaXB0b3IgRmV0Y2ggb3BlcmF0aW9uDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NSQ19EU0NSX0ZFVENIX0ZST01fTUVNICAgICAgICgweDAgPDwgMTYpIC8vIChIRE1BX0NIKSBTb3VyY2UgYWRkcmVzcyBpcyB1cGRhdGVkIHdoZW4gdGhlIGRlc2NyaXB0b3IgaXMgZmV0Y2hlZCBmcm9tIHRoZSBtZW1vcnkuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NSQ19EU0NSX0ZFVENIX0RJU0FCTEUgICAgICAgICgweDEgPDwgMTYpIC8vIChIRE1BX0NIKSBCdWZmZXIgRGVzY3JpcHRvciBGZXRjaCBvcGVyYXRpb24gaXMgZGlzYWJsZWQgZm9yIHRoZSBTb3VyY2UuDQojZGVmaW5lIEFUOTFDX0hETUFfRFNUX0RTQ1IgICAoMHgxIDw8IDIwKSAvLyAoSERNQV9DSCkgRGVzdGluYXRpb24gQnVmZmVyIERlc2NyaXB0b3Igb3BlcmF0aW9uDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RTVF9EU0NSX0ZFVENIX0ZST01fTUVNICAgICAgICgweDAgPDwgMjApIC8vIChIRE1BX0NIKSBEZXN0aW5hdGlvbiBhZGRyZXNzIGlzIHVwZGF0ZWQgd2hlbiB0aGUgZGVzY3JpcHRvciBpcyBmZXRjaGVkIGZyb20gdGhlIG1lbW9yeS4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRFNUX0RTQ1JfRkVUQ0hfRElTQUJMRSAgICAgICAgKDB4MSA8PCAyMCkgLy8gKEhETUFfQ0gpIEJ1ZmZlciBEZXNjcmlwdG9yIEZldGNoIG9wZXJhdGlvbiBpcyBkaXNhYmxlZCBmb3IgdGhlIGRlc3RpbmF0aW9uLg0KI2RlZmluZSBBVDkxQ19IRE1BX0ZDICAgICAgICAgKDB4NyA8PCAyMSkgLy8gKEhETUFfQ0gpIFRoaXMgZmllbGQgZGVmaW5lcyB3aGljaCBkZXZpY2VzIGNvbnRyb2xzIHRoZSBzaXplIG9mIHRoZSBidWZmZXIgdHJhbnNmZXIsIGFsc28gcmVmZXJyZWQgYXMgdG8gdGhlIEZsb3cgQ29udHJvbGxlci4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRkNfTUVNMk1FTSAgICAgICAgICAgICAgKDB4MCA8PCAyMSkgLy8gKEhETUFfQ0gpIE1lbW9yeS10by1NZW1vcnkgKERNQSBDb250cm9sbGVyKS4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRkNfTUVNMlBFUiAgICAgICAgICAgICAgKDB4MSA8PCAyMSkgLy8gKEhETUFfQ0gpIE1lbW9yeS10by1QZXJpcGhlcmFsIChETUEgQ29udHJvbGxlcikuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0ZDX1BFUjJNRU0gICAgICAgICAgICAgICgweDIgPDwgMjEpIC8vIChIRE1BX0NIKSBQZXJpcGhlcmFsLXRvLU1lbW9yeSAoRE1BIENvbnRyb2xsZXIpLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9GQ19QRVIyUEVSICAgICAgICAgICAgICAoMHgzIDw8IDIxKSAvLyAoSERNQV9DSCkgUGVyaXBoZXJhbC10by1QZXJpcGhlcmFsIChETUEgQ29udHJvbGxlcikuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0ZDX1BFUjJNRU1fUEVSICAgICAgICAgICgweDQgPDwgMjEpIC8vIChIRE1BX0NIKSBQZXJpcGhlcmFsLXRvLU1lbW9yeSAoUGVyaXBoZXJhbCkuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0ZDX01FTTJQRVJfUEVSICAgICAgICAgICgweDUgPDwgMjEpIC8vIChIRE1BX0NIKSBNZW1vcnktdG8tUGVyaXBoZXJhbCAoUGVyaXBoZXJhbCkuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0ZDX1BFUjJQRVJfUEVSICAgICAgICAgICgweDYgPDwgMjEpIC8vIChIRE1BX0NIKSBQZXJpcGhlcmFsLXRvLVBlcmlwaGVyYWwgKFNvdXJjZSBQZXJpcGhlcmFsKS4NCiNkZWZpbmUgQVQ5MUNfSERNQV9TUkNfQUREUkVTU19NT0RFICgweDMgPDwgMjQpIC8vIChIRE1BX0NIKSBUeXBlIG9mIGFkZHJlc3NpbmcgbW9kZQ0KI2RlZmluZSAJQVQ5MUNfSERNQV9TUkNfQUREUkVTU19NT0RFX0lOQ1IgICAgICAgICAgICAgICAgICgweDAgPDwgMjQpIC8vIChIRE1BX0NIKSBJbmNyZW1lbnRpbmcgTW9kZS4NCiNkZWZpbmUgCUFUOTFDX0hETUFfU1JDX0FERFJFU1NfTU9ERV9ERUNSICAgICAgICAgICAgICAgICAoMHgxIDw8IDI0KSAvLyAoSERNQV9DSCkgRGVjcmVtZW50aW5nIE1vZGUuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NSQ19BRERSRVNTX01PREVfRklYRUQgICAgICAgICAgICAgICAgKDB4MiA8PCAyNCkgLy8gKEhETUFfQ0gpIEZpeGVkIE1vZGUuDQojZGVmaW5lIEFUOTFDX0hETUFfRFNUX0FERFJFU1NfTU9ERSAoMHgzIDw8IDI4KSAvLyAoSERNQV9DSCkgVHlwZSBvZiBhZGRyZXNzaW5nIG1vZGUNCiNkZWZpbmUgCUFUOTFDX0hETUFfRFNUX0FERFJFU1NfTU9ERV9JTkNSICAgICAgICAgICAgICAgICAoMHgwIDw8IDI4KSAvLyAoSERNQV9DSCkgSW5jcmVtZW50aW5nIE1vZGUuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RTVF9BRERSRVNTX01PREVfREVDUiAgICAgICAgICAgICAgICAgKDB4MSA8PCAyOCkgLy8gKEhETUFfQ0gpIERlY3JlbWVudGluZyBNb2RlLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9EU1RfQUREUkVTU19NT0RFX0ZJWEVEICAgICAgICAgICAgICAgICgweDIgPDwgMjgpIC8vIChIRE1BX0NIKSBGaXhlZCBNb2RlLg0KI2RlZmluZSBBVDkxQ19IRE1BX0FVVE8gICAgICAgKDB4MSA8PCAzMSkgLy8gKEhETUFfQ0gpIEF1dG9tYXRpYyBtdWx0aXBsZSBidWZmZXIgdHJhbnNmZXIgZW5hYmxlDQojZGVmaW5lIAlBVDkxQ19IRE1BX0FVVE9fRElTQUJMRSAgICAgICAgICAgICAgKDB4MCA8PCAzMSkgLy8gKEhETUFfQ0gpIEF1dG9tYXRpYyBtdWx0aXBsZSBidWZmZXIgdHJhbnNmZXIgaXMgZGlzYWJsZWQuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0FVVE9fRU5BQkxFICAgICAgICAgICAgICAgKDB4MSA8PCAzMSkgLy8gKEhETUFfQ0gpIEF1dG9tYXRpYyBtdWx0aXBsZSBidWZmZXIgdHJhbnNmZXIgaXMgZW5hYmxlZC4gVGhpcyBlbmFibGVzIHJlcGxheSBtb2RlIG9yIGNvbnRpZ3VvdXMgbW9kZSB3aGVuIHNldmVyYWwgYnVmZmVycyBhcmUgdHJhbnNmZXJyZWQuDQovLyAtLS0tLS0tLSBIRE1BX0NGRyA6IChIRE1BX0NIIE9mZnNldDogMHgxNCkgIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19IRE1BX1NSQ19QRVIgICAgKDB4RiA8PCAgMCkgLy8gKEhETUFfQ0gpIENoYW5uZWwgU291cmNlIFJlcXVlc3QgaXMgYXNzb2NpYXRlZCB3aXRoIHBlcmlwaGVyYWwgaWRlbnRpZmllciBjb2RlZCBTUkNfUEVSIGhhbmRzaGFraW5nIGludGVyZmFjZS4NCiNkZWZpbmUgCUFUOTFDX0hETUFfU1JDX1BFUl8wICAgICAgICAgICAgICAgICAgICAoMHgwKSAvLyAoSERNQV9DSCkgSFcgSGFuZHNoYWtpbmcgSW50ZXJmYWNlIG51bWJlciAwLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TUkNfUEVSXzEgICAgICAgICAgICAgICAgICAgICgweDEpIC8vIChIRE1BX0NIKSBIVyBIYW5kc2hha2luZyBJbnRlcmZhY2UgbnVtYmVyIDEuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NSQ19QRVJfMiAgICAgICAgICAgICAgICAgICAgKDB4MikgLy8gKEhETUFfQ0gpIEhXIEhhbmRzaGFraW5nIEludGVyZmFjZSBudW1iZXIgMi4NCiNkZWZpbmUgCUFUOTFDX0hETUFfU1JDX1BFUl8zICAgICAgICAgICAgICAgICAgICAoMHgzKSAvLyAoSERNQV9DSCkgSFcgSGFuZHNoYWtpbmcgSW50ZXJmYWNlIG51bWJlciAzLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TUkNfUEVSXzQgICAgICAgICAgICAgICAgICAgICgweDQpIC8vIChIRE1BX0NIKSBIVyBIYW5kc2hha2luZyBJbnRlcmZhY2UgbnVtYmVyIDQuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NSQ19QRVJfNSAgICAgICAgICAgICAgICAgICAgKDB4NSkgLy8gKEhETUFfQ0gpIEhXIEhhbmRzaGFraW5nIEludGVyZmFjZSBudW1iZXIgNS4NCiNkZWZpbmUgCUFUOTFDX0hETUFfU1JDX1BFUl82ICAgICAgICAgICAgICAgICAgICAoMHg2KSAvLyAoSERNQV9DSCkgSFcgSGFuZHNoYWtpbmcgSW50ZXJmYWNlIG51bWJlciA2Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TUkNfUEVSXzcgICAgICAgICAgICAgICAgICAgICgweDcpIC8vIChIRE1BX0NIKSBIVyBIYW5kc2hha2luZyBJbnRlcmZhY2UgbnVtYmVyIDcuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NSQ19QRVJfOCAgICAgICAgICAgICAgICAgICAgKDB4OCkgLy8gKEhETUFfQ0gpIEhXIEhhbmRzaGFraW5nIEludGVyZmFjZSBudW1iZXIgOC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfU1JDX1BFUl85ICAgICAgICAgICAgICAgICAgICAoMHg5KSAvLyAoSERNQV9DSCkgSFcgSGFuZHNoYWtpbmcgSW50ZXJmYWNlIG51bWJlciA5Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TUkNfUEVSXzEwICAgICAgICAgICAgICAgICAgICgweEEpIC8vIChIRE1BX0NIKSBIVyBIYW5kc2hha2luZyBJbnRlcmZhY2UgbnVtYmVyIDEwLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TUkNfUEVSXzExICAgICAgICAgICAgICAgICAgICgweEIpIC8vIChIRE1BX0NIKSBIVyBIYW5kc2hha2luZyBJbnRlcmZhY2UgbnVtYmVyIDExLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TUkNfUEVSXzEyICAgICAgICAgICAgICAgICAgICgweEMpIC8vIChIRE1BX0NIKSBIVyBIYW5kc2hha2luZyBJbnRlcmZhY2UgbnVtYmVyIDEyLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TUkNfUEVSXzEzICAgICAgICAgICAgICAgICAgICgweEQpIC8vIChIRE1BX0NIKSBIVyBIYW5kc2hha2luZyBJbnRlcmZhY2UgbnVtYmVyIDEzLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TUkNfUEVSXzE0ICAgICAgICAgICAgICAgICAgICgweEUpIC8vIChIRE1BX0NIKSBIVyBIYW5kc2hha2luZyBJbnRlcmZhY2UgbnVtYmVyIDE0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TUkNfUEVSXzE1ICAgICAgICAgICAgICAgICAgICgweEYpIC8vIChIRE1BX0NIKSBIVyBIYW5kc2hha2luZyBJbnRlcmZhY2UgbnVtYmVyIDE1Lg0KI2RlZmluZSBBVDkxQ19IRE1BX0RTVF9QRVIgICAgKDB4RiA8PCAgNCkgLy8gKEhETUFfQ0gpIENoYW5uZWwgRGVzdGluYXRpb24gUmVxdWVzdCBpcyBhc3NvY2lhdGVkIHdpdGggcGVyaXBoZXJhbCBpZGVudGlmaWVyIGNvZGVkIERTVF9QRVIgaGFuZHNoYWtpbmcgaW50ZXJmYWNlLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9EU1RfUEVSXzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgIDQpIC8vIChIRE1BX0NIKSBIVyBIYW5kc2hha2luZyBJbnRlcmZhY2UgbnVtYmVyIDAuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RTVF9QRVJfMSAgICAgICAgICAgICAgICAgICAgKDB4MSA8PCAgNCkgLy8gKEhETUFfQ0gpIEhXIEhhbmRzaGFraW5nIEludGVyZmFjZSBudW1iZXIgMS4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRFNUX1BFUl8yICAgICAgICAgICAgICAgICAgICAoMHgyIDw8ICA0KSAvLyAoSERNQV9DSCkgSFcgSGFuZHNoYWtpbmcgSW50ZXJmYWNlIG51bWJlciAyLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9EU1RfUEVSXzMgICAgICAgICAgICAgICAgICAgICgweDMgPDwgIDQpIC8vIChIRE1BX0NIKSBIVyBIYW5kc2hha2luZyBJbnRlcmZhY2UgbnVtYmVyIDMuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RTVF9QRVJfNCAgICAgICAgICAgICAgICAgICAgKDB4NCA8PCAgNCkgLy8gKEhETUFfQ0gpIEhXIEhhbmRzaGFraW5nIEludGVyZmFjZSBudW1iZXIgNC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRFNUX1BFUl81ICAgICAgICAgICAgICAgICAgICAoMHg1IDw8ICA0KSAvLyAoSERNQV9DSCkgSFcgSGFuZHNoYWtpbmcgSW50ZXJmYWNlIG51bWJlciA1Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9EU1RfUEVSXzYgICAgICAgICAgICAgICAgICAgICgweDYgPDwgIDQpIC8vIChIRE1BX0NIKSBIVyBIYW5kc2hha2luZyBJbnRlcmZhY2UgbnVtYmVyIDYuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RTVF9QRVJfNyAgICAgICAgICAgICAgICAgICAgKDB4NyA8PCAgNCkgLy8gKEhETUFfQ0gpIEhXIEhhbmRzaGFraW5nIEludGVyZmFjZSBudW1iZXIgNy4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRFNUX1BFUl84ICAgICAgICAgICAgICAgICAgICAoMHg4IDw8ICA0KSAvLyAoSERNQV9DSCkgSFcgSGFuZHNoYWtpbmcgSW50ZXJmYWNlIG51bWJlciA4Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9EU1RfUEVSXzkgICAgICAgICAgICAgICAgICAgICgweDkgPDwgIDQpIC8vIChIRE1BX0NIKSBIVyBIYW5kc2hha2luZyBJbnRlcmZhY2UgbnVtYmVyIDkuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RTVF9QRVJfMTAgICAgICAgICAgICAgICAgICAgKDB4QSA8PCAgNCkgLy8gKEhETUFfQ0gpIEhXIEhhbmRzaGFraW5nIEludGVyZmFjZSBudW1iZXIgMTAuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RTVF9QRVJfMTEgICAgICAgICAgICAgICAgICAgKDB4QiA8PCAgNCkgLy8gKEhETUFfQ0gpIEhXIEhhbmRzaGFraW5nIEludGVyZmFjZSBudW1iZXIgMTEuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RTVF9QRVJfMTIgICAgICAgICAgICAgICAgICAgKDB4QyA8PCAgNCkgLy8gKEhETUFfQ0gpIEhXIEhhbmRzaGFraW5nIEludGVyZmFjZSBudW1iZXIgMTIuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RTVF9QRVJfMTMgICAgICAgICAgICAgICAgICAgKDB4RCA8PCAgNCkgLy8gKEhETUFfQ0gpIEhXIEhhbmRzaGFraW5nIEludGVyZmFjZSBudW1iZXIgMTMuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RTVF9QRVJfMTQgICAgICAgICAgICAgICAgICAgKDB4RSA8PCAgNCkgLy8gKEhETUFfQ0gpIEhXIEhhbmRzaGFraW5nIEludGVyZmFjZSBudW1iZXIgMTQuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RTVF9QRVJfMTUgICAgICAgICAgICAgICAgICAgKDB4RiA8PCAgNCkgLy8gKEhETUFfQ0gpIEhXIEhhbmRzaGFraW5nIEludGVyZmFjZSBudW1iZXIgMTUuDQojZGVmaW5lIEFUOTFDX0hETUFfU1JDX1JFUCAgICAoMHgxIDw8ICA4KSAvLyAoSERNQV9DSCkgU291cmNlIFJlcGxheSBNb2RlDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NSQ19SRVBfQ09OVElHVU9VU19BRERSICAgICAgKDB4MCA8PCAgOCkgLy8gKEhETUFfQ0gpIFdoZW4gYXV0b21hdGljIG1vZGUgaXMgYWN0aXZhdGVkLCBzb3VyY2UgYWRkcmVzcyBpcyBjb250aWd1b3VzIGJldHdlZW4gdHdvIGJ1ZmZlcnMuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NSQ19SRVBfUkVMT0FEX0FERFIgICAgICAgICAgKDB4MSA8PCAgOCkgLy8gKEhETUFfQ0gpIFdoZW4gYXV0b21hdGljIG1vZGUgaXMgYWN0aXZhdGVkLCB0aGUgc291cmNlIGFkZHJlc3MgYW5kIHRoZSBjb250cm9sIHJlZ2lzdGVyIGFyZSByZWxvYWRlZCBmcm9tIHByZXZpb3VzIHRyYW5zZmVyLi4NCiNkZWZpbmUgQVQ5MUNfSERNQV9TUkNfSDJTRUwgICgweDEgPDwgIDkpIC8vIChIRE1BX0NIKSBTb3VyY2UgSGFuZHNoYWtpbmcgTW9kZQ0KI2RlZmluZSAJQVQ5MUNfSERNQV9TUkNfSDJTRUxfU1cgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAgOSkgLy8gKEhETUFfQ0gpIFNvZnR3YXJlIGhhbmRzaGFraW5nIGludGVyZmFjZSBpcyB1c2VkIHRvIHRyaWdnZXIgYSB0cmFuc2ZlciByZXF1ZXN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TUkNfSDJTRUxfSFcgICAgICAgICAgICAgICAgICAgKDB4MSA8PCAgOSkgLy8gKEhETUFfQ0gpIEhhcmR3YXJlIGhhbmRzaGFraW5nIGludGVyZmFjZSBpcyB1c2VkIHRvIHRyaWdnZXIgYSB0cmFuc2ZlciByZXF1ZXN0Lg0KI2RlZmluZSBBVDkxQ19IRE1BX0RTVF9SRVAgICAgKDB4MSA8PCAxMikgLy8gKEhETUFfQ0gpIERlc3RpbmF0aW9uIFJlcGxheSBNb2RlDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RTVF9SRVBfQ09OVElHVU9VU19BRERSICAgICAgKDB4MCA8PCAxMikgLy8gKEhETUFfQ0gpIFdoZW4gYXV0b21hdGljIG1vZGUgaXMgYWN0aXZhdGVkLCBkZXN0aW5hdGlvbiBhZGRyZXNzIGlzIGNvbnRpZ3VvdXMgYmV0d2VlbiB0d28gYnVmZmVycy4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRFNUX1JFUF9SRUxPQURfQUREUiAgICAgICAgICAoMHgxIDw8IDEyKSAvLyAoSERNQV9DSCkgV2hlbiBhdXRvbWF0aWMgbW9kZSBpcyBhY3RpdmF0ZWQsIHRoZSBkZXN0aW5hdGlvbiBhZGRyZXNzIGFuZCB0aGUgY29udHJvbCByZWdpc3RlciBhcmUgcmVsb2FkZWQgZnJvbSBwcmV2aW91cyB0cmFuc2Zlci4uDQojZGVmaW5lIEFUOTFDX0hETUFfRFNUX0gyU0VMICAoMHgxIDw8IDEzKSAvLyAoSERNQV9DSCkgRGVzdGluYXRpb24gSGFuZHNoYWtpbmcgTW9kZQ0KI2RlZmluZSAJQVQ5MUNfSERNQV9EU1RfSDJTRUxfU1cgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAxMykgLy8gKEhETUFfQ0gpIFNvZnR3YXJlIGhhbmRzaGFraW5nIGludGVyZmFjZSBpcyB1c2VkIHRvIHRyaWdnZXIgYSB0cmFuc2ZlciByZXF1ZXN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9EU1RfSDJTRUxfSFcgICAgICAgICAgICAgICAgICAgKDB4MSA8PCAxMykgLy8gKEhETUFfQ0gpIEhhcmR3YXJlIGhhbmRzaGFraW5nIGludGVyZmFjZSBpcyB1c2VkIHRvIHRyaWdnZXIgYSB0cmFuc2ZlciByZXF1ZXN0Lg0KI2RlZmluZSBBVDkxQ19IRE1BX1NPRCAgICAgICAgKDB4MSA8PCAxNikgLy8gKEhETUFfQ0gpIFNUT1AgT04gRE9ORQ0KI2RlZmluZSAJQVQ5MUNfSERNQV9TT0RfRElTQUJMRSAgICAgICAgICAgICAgKDB4MCA8PCAxNikgLy8gKEhETUFfQ0gpIFNUT1AgT04gRE9ORSBkaXNhYmxlZCwgdGhlIGRlc2NyaXB0b3IgZmV0Y2ggb3BlcmF0aW9uIGlnbm9yZXMgRE9ORSBGaWVsZCBvZiBDVFJMQSByZWdpc3Rlci4NCiNkZWZpbmUgCUFUOTFDX0hETUFfU09EX0VOQUJMRSAgICAgICAgICAgICAgICgweDEgPDwgMTYpIC8vIChIRE1BX0NIKSBTVE9QIE9OIERPTkUgYWN0aXZhdGVkLCB0aGUgRE1BQyBtb2R1bGUgaXMgYXV0b21hdGljYWxseSBkaXNhYmxlZCBpZiBET05FIEZJRUxEIGlzIHNldCB0byAxLg0KI2RlZmluZSBBVDkxQ19IRE1BX0xPQ0tfSUYgICAgKDB4MSA8PCAyMCkgLy8gKEhETUFfQ0gpIEludGVyZmFjZSBMb2NrDQojZGVmaW5lIAlBVDkxQ19IRE1BX0xPQ0tfSUZfRElTQUJMRSAgICAgICAgICAgICAgKDB4MCA8PCAyMCkgLy8gKEhETUFfQ0gpIEludGVyZmFjZSBMb2NrIGNhcGFiaWxpdHkgaXMgZGlzYWJsZWQuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0xPQ0tfSUZfRU5BQkxFICAgICAgICAgICAgICAgKDB4MSA8PCAyMCkgLy8gKEhETUFfQ0gpIEludGVyZmFjZSBMb2NrIGNhcGFiaWxpdHkgaXMgZW5hYmxlZC4NCiNkZWZpbmUgQVQ5MUNfSERNQV9MT0NLX0IgICAgICgweDEgPDwgMjEpIC8vIChIRE1BX0NIKSBBSEIgQnVzIExvY2sNCiNkZWZpbmUgCUFUOTFDX0hETUFfTE9DS19CX0RJU0FCTEUgICAgICAgICAgICAgICgweDAgPDwgMjEpIC8vIChIRE1BX0NIKSBBSEIgQnVzIExvY2tpbmcgY2FwYWJpbGl0eSBpcyBkaXNhYmxlZC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfTE9DS19CX0VOQUJMRSAgICAgICAgICAgICAgICgweDEgPDwgMjEpIC8vIChIRE1BX0NIKSBBSEIgQnVzIExvY2tpbmcgY2FwYWJpbGl0eSBpcyBlbmFibGVkLg0KI2RlZmluZSBBVDkxQ19IRE1BX0xPQ0tfSUZfTCAgKDB4MSA8PCAyMikgLy8gKEhETUFfQ0gpIE1hc3RlciBJbnRlcmZhY2UgQXJiaXRlciBMb2NrDQojZGVmaW5lIAlBVDkxQ19IRE1BX0xPQ0tfSUZfTF9DSFVOSyAgICAgICAgICAgICAgICAoMHgwIDw8IDIyKSAvLyAoSERNQV9DSCkgVGhlIE1hc3RlciBJbnRlcmZhY2UgQXJiaXRlciBpcyBsb2NrZWQgYnkgdGhlIGNoYW5uZWwgeCBmb3IgYSBjaHVuayB0cmFuc2Zlci4NCiNkZWZpbmUgCUFUOTFDX0hETUFfTE9DS19JRl9MX0JVRkZFUiAgICAgICAgICAgICAgICgweDEgPDwgMjIpIC8vIChIRE1BX0NIKSBUaGUgTWFzdGVyIEludGVyZmFjZSBBcmJpdGVyIGlzIGxvY2tlZCBieSB0aGUgY2hhbm5lbCB4IGZvciBhIGJ1ZmZlciB0cmFuc2Zlci4NCiNkZWZpbmUgQVQ5MUNfSERNQV9BSEJfUFJPVCAgICgweDcgPDwgMjQpIC8vIChIRE1BX0NIKSBBSEIgUHJvdA0KI2RlZmluZSBBVDkxQ19IRE1BX0ZJRk9DRkcgICAgKDB4MyA8PCAyOCkgLy8gKEhETUFfQ0gpIEZJRk8gUmVxdWVzdCBDb25maWd1cmF0aW9uDQojZGVmaW5lIAlBVDkxQ19IRE1BX0ZJRk9DRkdfTEFSR0VTVEJVUlNUICAgICAgICAgKDB4MCA8PCAyOCkgLy8gKEhETUFfQ0gpIFRoZSBsYXJnZXN0IGRlZmluZWQgbGVuZ3RoIEFIQiBidXJzdCBpcyBwZXJmb3JtZWQgb24gdGhlIGRlc3RpbmF0aW9uIEFIQiBpbnRlcmZhY2UuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0ZJRk9DRkdfSEFMRkZJRk8gICAgICAgICAgICAgKDB4MSA8PCAyOCkgLy8gKEhETUFfQ0gpIFdoZW4gaGFsZiBmaWZvIHNpemUgaXMgYXZhaWxhYmxlL2ZpbGxlZCBhIHNvdXJjZS9kZXN0aW5hdGlvbiByZXF1ZXN0IGlzIHNlcnZpY2VkLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9GSUZPQ0ZHX0VOT1VHSFNQQUNFICAgICAgICAgICgweDIgPDwgMjgpIC8vIChIRE1BX0NIKSBXaGVuIHRoZXJlIGlzIGVub3VnaCBzcGFjZS9kYXRhIGF2YWlsYWJsZSB0byBwZXJmb20gYSBzaW5nbGUgQUhCIGFjY2VzcyB0aGVuIHRoZSByZXF1ZXN0IGlzIHNlcnZpY2VkLg0KLy8gLS0tLS0tLS0gSERNQV9TUElQIDogKEhETUFfQ0ggT2Zmc2V0OiAweDE4KSAgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX1NQSVBfSE9MRSAgICAgICAoMHhGRkZGIDw8ICAwKSAvLyAoSERNQV9DSCkgVGhpcyBmaWVsZCBpbmRpY2F0ZXMgdGhlIHZhbHVlIHRvIGFkZCB0byB0aGUgYWRkcmVzcyB3aGVuIHRoZSBwcm9ncmFtbWFibGUgYm91bmRhcnkgaGFzIGJlZW4gcmVhY2hlZC4NCiNkZWZpbmUgQVQ5MUNfU1BJUF9CT1VOREFSWSAgICgweDNGRiA8PCAxNikgLy8gKEhETUFfQ0gpIFRoaXMgZmllbGQgaW5kaWNhdGVzIHRoZSBudW1iZXIgb2Ygc291cmNlIHRyYW5zZmVycyB0byBwZXJmb3JtIGJlZm9yZSB0aGUgYXV0b21hdGljIGFkZHJlc3MgaW5jcmVtZW50IG9wZXJhdGlvbi4NCi8vIC0tLS0tLS0tIEhETUFfRFBJUCA6IChIRE1BX0NIIE9mZnNldDogMHgxYykgIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19EUElQX0hPTEUgICAgICAgKDB4RkZGRiA8PCAgMCkgLy8gKEhETUFfQ0gpIFRoaXMgZmllbGQgaW5kaWNhdGVzIHRoZSB2YWx1ZSB0byBhZGQgdG8gdGhlIGFkZHJlc3Mgd2hlbiB0aGUgcHJvZ3JhbW1hYmxlIGJvdW5kYXJ5IGhhcyBiZWVuIHJlYWNoZWQuDQojZGVmaW5lIEFUOTFDX0RQSVBfQk9VTkRBUlkgICAoMHgzRkYgPDwgMTYpIC8vIChIRE1BX0NIKSBUaGlzIGZpZWxkIGluZGljYXRlcyB0aGUgbnVtYmVyIG9mIHNvdXJjZSB0cmFuc2ZlcnMgdG8gcGVyZm9ybSBiZWZvcmUgdGhlIGF1dG9tYXRpYyBhZGRyZXNzIGluY3JlbWVudCBvcGVyYXRpb24uDQovLyAtLS0tLS0tLSBIRE1BX0JEU0NSIDogKEhETUFfQ0ggT2Zmc2V0OiAweDIwKSAgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBIRE1BX0NBRERSIDogKEhETUFfQ0ggT2Zmc2V0OiAweDI0KSAgLS0tLS0tLS0gDQoNCi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQovLyAgICAgICAgICAgICAgU09GVFdBUkUgQVBJIERFRklOSVRJT04gIEZPUiBIRE1BIGNvbnRyb2xsZXINCi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQojaWZuZGVmIF9fQVNTRU1CTFlfXw0KdHlwZWRlZiBzdHJ1Y3QgX0FUOTFTX0hETUEgew0KCUFUOTFfUkVHCSBIRE1BX0dDRkc7IAkvLyBIRE1BIEdsb2JhbCBDb25maWd1cmF0aW9uIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIEhETUFfRU47IAkvLyBIRE1BIENvbnRyb2xsZXIgRW5hYmxlIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIEhETUFfU1JFUTsgCS8vIEhETUEgU29mdHdhcmUgU2luZ2xlIFJlcXVlc3QgUmVnaXN0ZXINCglBVDkxX1JFRwkgSERNQV9DUkVROyAJLy8gSERNQSBTb2Z0d2FyZSBDaHVuayBUcmFuc2ZlciBSZXF1ZXN0IFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIEhETUFfTEFTVDsgCS8vIEhETUEgU29mdHdhcmUgTGFzdCBUcmFuc2ZlciBGbGFnIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIEhETUFfU1lOQzsgCS8vIEhETUEgUmVxdWVzdCBTeW5jaHJvbml6YXRpb24gUmVnaXN0ZXINCglBVDkxX1JFRwkgSERNQV9FQkNJRVI7IAkvLyBIRE1BIEVycm9yLCBDaGFpbmVkIEJ1ZmZlciB0cmFuc2ZlciBjb21wbGV0ZWQgYW5kIEJ1ZmZlciB0cmFuc2ZlciBjb21wbGV0ZWQgSW50ZXJydXB0IEVuYWJsZSByZWdpc3Rlcg0KCUFUOTFfUkVHCSBIRE1BX0VCQ0lEUjsgCS8vIEhETUEgRXJyb3IsIENoYWluZWQgQnVmZmVyIHRyYW5zZmVyIGNvbXBsZXRlZCBhbmQgQnVmZmVyIHRyYW5zZmVyIGNvbXBsZXRlZCBJbnRlcnJ1cHQgRGlzYWJsZSByZWdpc3Rlcg0KCUFUOTFfUkVHCSBIRE1BX0VCQ0lNUjsgCS8vIEhETUEgRXJyb3IsIENoYWluZWQgQnVmZmVyIHRyYW5zZmVyIGNvbXBsZXRlZCBhbmQgQnVmZmVyIHRyYW5zZmVyIGNvbXBsZXRlZCBNYXNrIFJlZ2lzdGVyDQoJQVQ5MV9SRUcJIEhETUFfRUJDSVNSOyAJLy8gSERNQSBFcnJvciwgQ2hhaW5lZCBCdWZmZXIgdHJhbnNmZXIgY29tcGxldGVkIGFuZCBCdWZmZXIgdHJhbnNmZXIgY29tcGxldGVkIFN0YXR1cyBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBIRE1BX0NIRVI7IAkvLyBIRE1BIENoYW5uZWwgSGFuZGxlciBFbmFibGUgUmVnaXN0ZXINCglBVDkxX1JFRwkgSERNQV9DSERSOyAJLy8gSERNQSBDaGFubmVsIEhhbmRsZXIgRGlzYWJsZSBSZWdpc3Rlcg0KCUFUOTFfUkVHCSBIRE1BX0NIU1I7IAkvLyBIRE1BIENoYW5uZWwgSGFuZGxlciBTdGF0dXMgUmVnaXN0ZXINCglBVDkxX1JFRwkgSERNQV9SU1ZEMDsgCS8vIEhETUEgUmVzZXJ2ZWQNCglBVDkxX1JFRwkgSERNQV9SU1ZEMTsgCS8vIEhETUEgUmVzZXJ2ZWQNCglBVDkxU19IRE1BX0NICSBIRE1BX0NIWzRdOyAJLy8gSERNQSBDaGFubmVsIHN0cnVjdHVyZQ0KCUFUOTFfUkVHCSBSZXNlcnZlZDBbNjhdOyAJLy8gDQoJQVQ5MV9SRUcJIEhETUFfQUREUlNJWkU7IAkvLyBIRE1BIEFERFJTSVpFIFJFR0lTVEVSIA0KCUFUOTFfUkVHCSBIRE1BX0lQTkFNRTE7IAkvLyBIRE1BIElQTkFNRTEgUkVHSVNURVIgDQoJQVQ5MV9SRUcJIEhETUFfSVBOQU1FMjsgCS8vIEhETUEgSVBOQU1FMiBSRUdJU1RFUiANCglBVDkxX1JFRwkgSERNQV9GRUFUVVJFUzsgCS8vIEhETUEgRkVBVFVSRVMgUkVHSVNURVIgDQoJQVQ5MV9SRUcJIEhETUFfVkVSOyAJLy8gSERNQSBWRVJTSU9OIFJFR0lTVEVSIA0KfSBBVDkxU19IRE1BLCAqQVQ5MVBTX0hETUE7DQojZWxzZQ0KI2RlZmluZSBIRE1BX0dDRkcgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAwMCkgLy8gKEhETUFfR0NGRykgSERNQSBHbG9iYWwgQ29uZmlndXJhdGlvbiBSZWdpc3Rlcg0KI2RlZmluZSBIRE1BX0VOICAgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAwNCkgLy8gKEhETUFfRU4pIEhETUEgQ29udHJvbGxlciBFbmFibGUgUmVnaXN0ZXINCiNkZWZpbmUgSERNQV9TUkVRICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMDgpIC8vIChIRE1BX1NSRVEpIEhETUEgU29mdHdhcmUgU2luZ2xlIFJlcXVlc3QgUmVnaXN0ZXINCiNkZWZpbmUgSERNQV9DUkVRICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMEMpIC8vIChIRE1BX0NSRVEpIEhETUEgU29mdHdhcmUgQ2h1bmsgVHJhbnNmZXIgUmVxdWVzdCBSZWdpc3Rlcg0KI2RlZmluZSBIRE1BX0xBU1QgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAxMCkgLy8gKEhETUFfTEFTVCkgSERNQSBTb2Z0d2FyZSBMYXN0IFRyYW5zZmVyIEZsYWcgUmVnaXN0ZXINCiNkZWZpbmUgSERNQV9TWU5DICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMTQpIC8vIChIRE1BX1NZTkMpIEhETUEgUmVxdWVzdCBTeW5jaHJvbml6YXRpb24gUmVnaXN0ZXINCiNkZWZpbmUgSERNQV9FQkNJRVIgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMTgpIC8vIChIRE1BX0VCQ0lFUikgSERNQSBFcnJvciwgQ2hhaW5lZCBCdWZmZXIgdHJhbnNmZXIgY29tcGxldGVkIGFuZCBCdWZmZXIgdHJhbnNmZXIgY29tcGxldGVkIEludGVycnVwdCBFbmFibGUgcmVnaXN0ZXINCiNkZWZpbmUgSERNQV9FQkNJRFIgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMUMpIC8vIChIRE1BX0VCQ0lEUikgSERNQSBFcnJvciwgQ2hhaW5lZCBCdWZmZXIgdHJhbnNmZXIgY29tcGxldGVkIGFuZCBCdWZmZXIgdHJhbnNmZXIgY29tcGxldGVkIEludGVycnVwdCBEaXNhYmxlIHJlZ2lzdGVyDQojZGVmaW5lIEhETUFfRUJDSU1SICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDIwKSAvLyAoSERNQV9FQkNJTVIpIEhETUEgRXJyb3IsIENoYWluZWQgQnVmZmVyIHRyYW5zZmVyIGNvbXBsZXRlZCBhbmQgQnVmZmVyIHRyYW5zZmVyIGNvbXBsZXRlZCBNYXNrIFJlZ2lzdGVyDQojZGVmaW5lIEhETUFfRUJDSVNSICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDI0KSAvLyAoSERNQV9FQkNJU1IpIEhETUEgRXJyb3IsIENoYWluZWQgQnVmZmVyIHRyYW5zZmVyIGNvbXBsZXRlZCBhbmQgQnVmZmVyIHRyYW5zZmVyIGNvbXBsZXRlZCBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgSERNQV9DSEVSICAgICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAwMjgpIC8vIChIRE1BX0NIRVIpIEhETUEgQ2hhbm5lbCBIYW5kbGVyIEVuYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBIRE1BX0NIRFIgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAyQykgLy8gKEhETUFfQ0hEUikgSERNQSBDaGFubmVsIEhhbmRsZXIgRGlzYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBIRE1BX0NIU1IgICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAzMCkgLy8gKEhETUFfQ0hTUikgSERNQSBDaGFubmVsIEhhbmRsZXIgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEhETUFfUlNWRDAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMDM0KSAvLyAoSERNQV9SU1ZEMCkgSERNQSBSZXNlcnZlZA0KI2RlZmluZSBIRE1BX1JTVkQxICAgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDAzOCkgLy8gKEhETUFfUlNWRDEpIEhETUEgUmVzZXJ2ZWQNCiNkZWZpbmUgSERNQV9BRERSU0laRSAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4MDAwMDAxRUMpIC8vIChIRE1BX0FERFJTSVpFKSBIRE1BIEFERFJTSVpFIFJFR0lTVEVSIA0KI2RlZmluZSBIRE1BX0lQTkFNRTEgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDFGMCkgLy8gKEhETUFfSVBOQU1FMSkgSERNQSBJUE5BTUUxIFJFR0lTVEVSIA0KI2RlZmluZSBIRE1BX0lQTkFNRTIgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDFGNCkgLy8gKEhETUFfSVBOQU1FMikgSERNQSBJUE5BTUUyIFJFR0lTVEVSIA0KI2RlZmluZSBIRE1BX0ZFQVRVUkVTICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHgwMDAwMDFGOCkgLy8gKEhETUFfRkVBVFVSRVMpIEhETUEgRkVBVFVSRVMgUkVHSVNURVIgDQojZGVmaW5lIEhETUFfVkVSICAgICAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDAwMDAwMUZDKSAvLyAoSERNQV9WRVIpIEhETUEgVkVSU0lPTiBSRUdJU1RFUiANCg0KI2VuZGlmDQovLyAtLS0tLS0tLSBIRE1BX0dDRkcgOiAoSERNQSBPZmZzZXQ6IDB4MCkgIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19IRE1BX0lGMF9CSUdFTkQgKDB4MSA8PCAgMCkgLy8gKEhETUEpIEFIQi1MaXRlIEludGVyZmFjZSAwIGVuZGlhbiBtb2RlLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9JRjBfQklHRU5EX0lTX0xJVFRMRV9FTkRJQU4gICAgICgweDApIC8vIChIRE1BKSBBSEItTGl0ZSBJbnRlcmZhY2UgMCBpcyBsaXR0bGUgZW5kaWFuLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9JRjBfQklHRU5EX0lTX0JJR19FTkRJQU4gICAgICAgICgweDEpIC8vIChIRE1BKSBBSEItTGl0ZSBJbnRlcmZhY2UgMCBpcyBiaWcgZW5kaWFuLg0KI2RlZmluZSBBVDkxQ19IRE1BX0lGMV9CSUdFTkQgKDB4MSA8PCAgMSkgLy8gKEhETUEpIEFIQi1MaXRlIEludGVyZmFjZSAxIGVuZGlhbiBtb2RlLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9JRjFfQklHRU5EX0lTX0xJVFRMRV9FTkRJQU4gICAgICgweDAgPDwgIDEpIC8vIChIRE1BKSBBSEItTGl0ZSBJbnRlcmZhY2UgMSBpcyBsaXR0bGUgZW5kaWFuLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9JRjFfQklHRU5EX0lTX0JJR19FTkRJQU4gICAgICAgICgweDEgPDwgIDEpIC8vIChIRE1BKSBBSEItTGl0ZSBJbnRlcmZhY2UgMSBpcyBiaWcgZW5kaWFuLg0KI2RlZmluZSBBVDkxQ19IRE1BX0lGMl9CSUdFTkQgKDB4MSA8PCAgMikgLy8gKEhETUEpIEFIQi1MaXRlIEludGVyZmFjZSAyIGVuZGlhbiBtb2RlLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9JRjJfQklHRU5EX0lTX0xJVFRMRV9FTkRJQU4gICAgICgweDAgPDwgIDIpIC8vIChIRE1BKSBBSEItTGl0ZSBJbnRlcmZhY2UgMiBpcyBsaXR0bGUgZW5kaWFuLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9JRjJfQklHRU5EX0lTX0JJR19FTkRJQU4gICAgICAgICgweDEgPDwgIDIpIC8vIChIRE1BKSBBSEItTGl0ZSBJbnRlcmZhY2UgMiBpcyBiaWcgZW5kaWFuLg0KI2RlZmluZSBBVDkxQ19IRE1BX0lGM19CSUdFTkQgKDB4MSA8PCAgMykgLy8gKEhETUEpIEFIQi1MaXRlIEludGVyZmFjZSAzIGVuZGlhbiBtb2RlLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9JRjNfQklHRU5EX0lTX0xJVFRMRV9FTkRJQU4gICAgICgweDAgPDwgIDMpIC8vIChIRE1BKSBBSEItTGl0ZSBJbnRlcmZhY2UgMyBpcyBsaXR0bGUgZW5kaWFuLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9JRjNfQklHRU5EX0lTX0JJR19FTkRJQU4gICAgICAgICgweDEgPDwgIDMpIC8vIChIRE1BKSBBSEItTGl0ZSBJbnRlcmZhY2UgMyBpcyBiaWcgZW5kaWFuLg0KI2RlZmluZSBBVDkxQ19IRE1BX0FSQl9DRkcgICAgKDB4MSA8PCAgNCkgLy8gKEhETUEpIEFyYml0ZXIgbW9kZS4NCiNkZWZpbmUgCUFUOTFDX0hETUFfQVJCX0NGR19GSVhFRCAgICAgICAgICAgICAgICAoMHgwIDw8ICA0KSAvLyAoSERNQSkgRml4ZWQgcHJpb3JpdHkgYXJiaXRlci4NCiNkZWZpbmUgCUFUOTFDX0hETUFfQVJCX0NGR19ST1VORF9ST0JJTiAgICAgICAgICAoMHgxIDw8ICA0KSAvLyAoSERNQSkgTW9kaWZpZWQgcm91bmQgcm9iaW4gYXJiaXRlci4NCi8vIC0tLS0tLS0tIEhETUFfRU4gOiAoSERNQSBPZmZzZXQ6IDB4NCkgIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19IRE1BX0VOQUJMRSAgICAgKDB4MSA8PCAgMCkgLy8gKEhETUEpIA0KI2RlZmluZSAJQVQ5MUNfSERNQV9FTkFCTEVfRElTQUJMRSAgICAgICAgICAgICAgKDB4MCkgLy8gKEhETUEpIERpc2FibGVzIEhETUEuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0VOQUJMRV9FTkFCTEUgICAgICAgICAgICAgICAoMHgxKSAvLyAoSERNQSkgRW5hYmxlcyBIRE1BLg0KLy8gLS0tLS0tLS0gSERNQV9TUkVRIDogKEhETUEgT2Zmc2V0OiAweDgpICAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfSERNQV9TU1JFUTAgICAgICgweDEgPDwgIDApIC8vIChIRE1BKSBSZXF1ZXN0IGEgc291cmNlIHNpbmdsZSB0cmFuc2ZlciBvbiBjaGFubmVsIDANCiNkZWZpbmUgCUFUOTFDX0hETUFfU1NSRVEwXzAgICAgICAgICAgICAgICAgICAgICgweDApIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NTUkVRMF8xICAgICAgICAgICAgICAgICAgICAoMHgxKSAvLyAoSERNQSkgUmVxdWVzdCBhIHNvdXJjZSBzaW5nbGUgdHJhbnNmZXIgb24gY2hhbm5lbCAwLg0KI2RlZmluZSBBVDkxQ19IRE1BX0RTUkVRMCAgICAgKDB4MSA8PCAgMSkgLy8gKEhETUEpIFJlcXVlc3QgYSBkZXN0aW5hdGlvbiBzaW5nbGUgdHJhbnNmZXIgb24gY2hhbm5lbCAwDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RTUkVRMF8wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8ICAxKSAvLyAoSERNQSkgTm8gZWZmZWN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9EU1JFUTBfMSAgICAgICAgICAgICAgICAgICAgKDB4MSA8PCAgMSkgLy8gKEhETUEpIFJlcXVlc3QgYSBkZXN0aW5hdGlvbiBzaW5nbGUgdHJhbnNmZXIgb24gY2hhbm5lbCAwLg0KI2RlZmluZSBBVDkxQ19IRE1BX1NTUkVRMSAgICAgKDB4MSA8PCAgMikgLy8gKEhETUEpIFJlcXVlc3QgYSBzb3VyY2Ugc2luZ2xlIHRyYW5zZmVyIG9uIGNoYW5uZWwgMQ0KI2RlZmluZSAJQVQ5MUNfSERNQV9TU1JFUTFfMCAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAgMikgLy8gKEhETUEpIE5vIGVmZmVjdC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfU1NSRVExXzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgIDIpIC8vIChIRE1BKSBSZXF1ZXN0IGEgc291cmNlIHNpbmdsZSB0cmFuc2ZlciBvbiBjaGFubmVsIDEuDQojZGVmaW5lIEFUOTFDX0hETUFfRFNSRVExICAgICAoMHgxIDw8ICAzKSAvLyAoSERNQSkgUmVxdWVzdCBhIGRlc3RpbmF0aW9uIHNpbmdsZSB0cmFuc2ZlciBvbiBjaGFubmVsIDENCiNkZWZpbmUgCUFUOTFDX0hETUFfRFNSRVExXzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgIDMpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RTUkVRMV8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8ICAzKSAvLyAoSERNQSkgUmVxdWVzdCBhIGRlc3RpbmF0aW9uIHNpbmdsZSB0cmFuc2ZlciBvbiBjaGFubmVsIDEuDQojZGVmaW5lIEFUOTFDX0hETUFfU1NSRVEyICAgICAoMHgxIDw8ICA0KSAvLyAoSERNQSkgUmVxdWVzdCBhIHNvdXJjZSBzaW5nbGUgdHJhbnNmZXIgb24gY2hhbm5lbCAyDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NTUkVRMl8wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8ICA0KSAvLyAoSERNQSkgTm8gZWZmZWN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TU1JFUTJfMSAgICAgICAgICAgICAgICAgICAgKDB4MSA8PCAgNCkgLy8gKEhETUEpIFJlcXVlc3QgYSBzb3VyY2Ugc2luZ2xlIHRyYW5zZmVyIG9uIGNoYW5uZWwgMi4NCiNkZWZpbmUgQVQ5MUNfSERNQV9EU1JFUTIgICAgICgweDEgPDwgIDUpIC8vIChIRE1BKSBSZXF1ZXN0IGEgZGVzdGluYXRpb24gc2luZ2xlIHRyYW5zZmVyIG9uIGNoYW5uZWwgMg0KI2RlZmluZSAJQVQ5MUNfSERNQV9EU1JFUTJfMCAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAgNSkgLy8gKEhETUEpIE5vIGVmZmVjdC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRFNSRVEyXzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgIDUpIC8vIChIRE1BKSBSZXF1ZXN0IGEgZGVzdGluYXRpb24gc2luZ2xlIHRyYW5zZmVyIG9uIGNoYW5uZWwgMi4NCiNkZWZpbmUgQVQ5MUNfSERNQV9TU1JFUTMgICAgICgweDEgPDwgIDYpIC8vIChIRE1BKSBSZXF1ZXN0IGEgc291cmNlIHNpbmdsZSB0cmFuc2ZlciBvbiBjaGFubmVsIDMNCiNkZWZpbmUgCUFUOTFDX0hETUFfU1NSRVEzXzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgIDYpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NTUkVRM18xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8ICA2KSAvLyAoSERNQSkgUmVxdWVzdCBhIHNvdXJjZSBzaW5nbGUgdHJhbnNmZXIgb24gY2hhbm5lbCAzLg0KI2RlZmluZSBBVDkxQ19IRE1BX0RTUkVRMyAgICAgKDB4MSA8PCAgNykgLy8gKEhETUEpIFJlcXVlc3QgYSBkZXN0aW5hdGlvbiBzaW5nbGUgdHJhbnNmZXIgb24gY2hhbm5lbCAzDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RTUkVRM18wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8ICA3KSAvLyAoSERNQSkgTm8gZWZmZWN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9EU1JFUTNfMSAgICAgICAgICAgICAgICAgICAgKDB4MSA8PCAgNykgLy8gKEhETUEpIFJlcXVlc3QgYSBkZXN0aW5hdGlvbiBzaW5nbGUgdHJhbnNmZXIgb24gY2hhbm5lbCAzLg0KI2RlZmluZSBBVDkxQ19IRE1BX1NTUkVRNCAgICAgKDB4MSA8PCAgOCkgLy8gKEhETUEpIFJlcXVlc3QgYSBzb3VyY2Ugc2luZ2xlIHRyYW5zZmVyIG9uIGNoYW5uZWwgNA0KI2RlZmluZSAJQVQ5MUNfSERNQV9TU1JFUTRfMCAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAgOCkgLy8gKEhETUEpIE5vIGVmZmVjdC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfU1NSRVE0XzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgIDgpIC8vIChIRE1BKSBSZXF1ZXN0IGEgc291cmNlIHNpbmdsZSB0cmFuc2ZlciBvbiBjaGFubmVsIDQuDQojZGVmaW5lIEFUOTFDX0hETUFfRFNSRVE0ICAgICAoMHgxIDw8ICA5KSAvLyAoSERNQSkgUmVxdWVzdCBhIGRlc3RpbmF0aW9uIHNpbmdsZSB0cmFuc2ZlciBvbiBjaGFubmVsIDQNCiNkZWZpbmUgCUFUOTFDX0hETUFfRFNSRVE0XzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgIDkpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RTUkVRNF8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8ICA5KSAvLyAoSERNQSkgUmVxdWVzdCBhIGRlc3RpbmF0aW9uIHNpbmdsZSB0cmFuc2ZlciBvbiBjaGFubmVsIDQuDQojZGVmaW5lIEFUOTFDX0hETUFfU1NSRVE1ICAgICAoMHgxIDw8IDEwKSAvLyAoSERNQSkgUmVxdWVzdCBhIHNvdXJjZSBzaW5nbGUgdHJhbnNmZXIgb24gY2hhbm5lbCA1DQojZGVmaW5lIAlBVDkxQ19IRE1BX1NTUkVRNV8wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8IDEwKSAvLyAoSERNQSkgTm8gZWZmZWN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TU1JFUTVfMSAgICAgICAgICAgICAgICAgICAgKDB4MSA8PCAxMCkgLy8gKEhETUEpIFJlcXVlc3QgYSBzb3VyY2Ugc2luZ2xlIHRyYW5zZmVyIG9uIGNoYW5uZWwgNS4NCiNkZWZpbmUgQVQ5MUNfSERNQV9EU1JFUTYgICAgICgweDEgPDwgMTEpIC8vIChIRE1BKSBSZXF1ZXN0IGEgZGVzdGluYXRpb24gc2luZ2xlIHRyYW5zZmVyIG9uIGNoYW5uZWwgNQ0KI2RlZmluZSAJQVQ5MUNfSERNQV9EU1JFUTZfMCAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAxMSkgLy8gKEhETUEpIE5vIGVmZmVjdC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRFNSRVE2XzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgMTEpIC8vIChIRE1BKSBSZXF1ZXN0IGEgZGVzdGluYXRpb24gc2luZ2xlIHRyYW5zZmVyIG9uIGNoYW5uZWwgNS4NCiNkZWZpbmUgQVQ5MUNfSERNQV9TU1JFUTYgICAgICgweDEgPDwgMTIpIC8vIChIRE1BKSBSZXF1ZXN0IGEgc291cmNlIHNpbmdsZSB0cmFuc2ZlciBvbiBjaGFubmVsIDYNCiNkZWZpbmUgCUFUOTFDX0hETUFfU1NSRVE2XzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgMTIpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NTUkVRNl8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8IDEyKSAvLyAoSERNQSkgUmVxdWVzdCBhIHNvdXJjZSBzaW5nbGUgdHJhbnNmZXIgb24gY2hhbm5lbCA2Lg0KI2RlZmluZSBBVDkxQ19IRE1BX1NTUkVRNyAgICAgKDB4MSA8PCAxNCkgLy8gKEhETUEpIFJlcXVlc3QgYSBzb3VyY2Ugc2luZ2xlIHRyYW5zZmVyIG9uIGNoYW5uZWwgNw0KI2RlZmluZSAJQVQ5MUNfSERNQV9TU1JFUTdfMCAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAxNCkgLy8gKEhETUEpIE5vIGVmZmVjdC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfU1NSRVE3XzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgMTQpIC8vIChIRE1BKSBSZXF1ZXN0IGEgc291cmNlIHNpbmdsZSB0cmFuc2ZlciBvbiBjaGFubmVsIDcuDQojZGVmaW5lIEFUOTFDX0hETUFfRFNSRVE3ICAgICAoMHgxIDw8IDE1KSAvLyAoSERNQSkgUmVxdWVzdCBhIGRlc3RpbmF0aW9uIHNpbmdsZSB0cmFuc2ZlciBvbiBjaGFubmVsIDcNCiNkZWZpbmUgCUFUOTFDX0hETUFfRFNSRVE3XzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgMTUpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RTUkVRN18xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8IDE1KSAvLyAoSERNQSkgUmVxdWVzdCBhIGRlc3RpbmF0aW9uIHNpbmdsZSB0cmFuc2ZlciBvbiBjaGFubmVsIDcuDQovLyAtLS0tLS0tLSBIRE1BX0NSRVEgOiAoSERNQSBPZmZzZXQ6IDB4YykgIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19IRE1BX1NDUkVRMCAgICAgKDB4MSA8PCAgMCkgLy8gKEhETUEpIFJlcXVlc3QgYSBzb3VyY2UgY2h1bmsgdHJhbnNmZXIgb24gY2hhbm5lbCAwDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NDUkVRMF8wICAgICAgICAgICAgICAgICAgICAoMHgwKSAvLyAoSERNQSkgTm8gZWZmZWN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TQ1JFUTBfMSAgICAgICAgICAgICAgICAgICAgKDB4MSkgLy8gKEhETUEpIFJlcXVlc3QgYSBzb3VyY2UgY2h1bmsgdHJhbnNmZXIgb24gY2hhbm5lbCAwLg0KI2RlZmluZSBBVDkxQ19IRE1BX0RDUkVRMCAgICAgKDB4MSA8PCAgMSkgLy8gKEhETUEpIFJlcXVlc3QgYSBkZXN0aW5hdGlvbiBjaHVuayB0cmFuc2ZlciBvbiBjaGFubmVsIDANCiNkZWZpbmUgCUFUOTFDX0hETUFfRENSRVEwXzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgIDEpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RDUkVRMF8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8ICAxKSAvLyAoSERNQSkgUmVxdWVzdCBhIGRlc3RpbmF0aW9uIGNodW5rIHRyYW5zZmVyIG9uIGNoYW5uZWwgMC4NCiNkZWZpbmUgQVQ5MUNfSERNQV9TQ1JFUTEgICAgICgweDEgPDwgIDIpIC8vIChIRE1BKSBSZXF1ZXN0IGEgc291cmNlIGNodW5rIHRyYW5zZmVyIG9uIGNoYW5uZWwgMQ0KI2RlZmluZSAJQVQ5MUNfSERNQV9TQ1JFUTFfMCAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAgMikgLy8gKEhETUEpIE5vIGVmZmVjdC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfU0NSRVExXzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgIDIpIC8vIChIRE1BKSBSZXF1ZXN0IGEgc291cmNlIGNodW5rIHRyYW5zZmVyIG9uIGNoYW5uZWwgMS4NCiNkZWZpbmUgQVQ5MUNfSERNQV9EQ1JFUTEgICAgICgweDEgPDwgIDMpIC8vIChIRE1BKSBSZXF1ZXN0IGEgZGVzdGluYXRpb24gY2h1bmsgdHJhbnNmZXIgb24gY2hhbm5lbCAxDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RDUkVRMV8wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8ICAzKSAvLyAoSERNQSkgTm8gZWZmZWN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9EQ1JFUTFfMSAgICAgICAgICAgICAgICAgICAgKDB4MSA8PCAgMykgLy8gKEhETUEpIFJlcXVlc3QgYSBkZXN0aW5hdGlvbiBjaHVuayB0cmFuc2ZlciBvbiBjaGFubmVsIDEuDQojZGVmaW5lIEFUOTFDX0hETUFfU0NSRVEyICAgICAoMHgxIDw8ICA0KSAvLyAoSERNQSkgUmVxdWVzdCBhIHNvdXJjZSBjaHVuayB0cmFuc2ZlciBvbiBjaGFubmVsIDINCiNkZWZpbmUgCUFUOTFDX0hETUFfU0NSRVEyXzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgIDQpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NDUkVRMl8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8ICA0KSAvLyAoSERNQSkgUmVxdWVzdCBhIHNvdXJjZSBjaHVuayB0cmFuc2ZlciBvbiBjaGFubmVsIDIuDQojZGVmaW5lIEFUOTFDX0hETUFfRENSRVEyICAgICAoMHgxIDw8ICA1KSAvLyAoSERNQSkgUmVxdWVzdCBhIGRlc3RpbmF0aW9uIGNodW5rIHRyYW5zZmVyIG9uIGNoYW5uZWwgMg0KI2RlZmluZSAJQVQ5MUNfSERNQV9EQ1JFUTJfMCAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAgNSkgLy8gKEhETUEpIE5vIGVmZmVjdC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRENSRVEyXzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgIDUpIC8vIChIRE1BKSBSZXF1ZXN0IGEgZGVzdGluYXRpb24gY2h1bmsgdHJhbnNmZXIgb24gY2hhbm5lbCAyLg0KI2RlZmluZSBBVDkxQ19IRE1BX1NDUkVRMyAgICAgKDB4MSA8PCAgNikgLy8gKEhETUEpIFJlcXVlc3QgYSBzb3VyY2UgY2h1bmsgdHJhbnNmZXIgb24gY2hhbm5lbCAzDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NDUkVRM18wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8ICA2KSAvLyAoSERNQSkgTm8gZWZmZWN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TQ1JFUTNfMSAgICAgICAgICAgICAgICAgICAgKDB4MSA8PCAgNikgLy8gKEhETUEpIFJlcXVlc3QgYSBzb3VyY2UgY2h1bmsgdHJhbnNmZXIgb24gY2hhbm5lbCAzLg0KI2RlZmluZSBBVDkxQ19IRE1BX0RDUkVRMyAgICAgKDB4MSA8PCAgNykgLy8gKEhETUEpIFJlcXVlc3QgYSBkZXN0aW5hdGlvbiBjaHVuayB0cmFuc2ZlciBvbiBjaGFubmVsIDMNCiNkZWZpbmUgCUFUOTFDX0hETUFfRENSRVEzXzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgIDcpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RDUkVRM18xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8ICA3KSAvLyAoSERNQSkgUmVxdWVzdCBhIGRlc3RpbmF0aW9uIGNodW5rIHRyYW5zZmVyIG9uIGNoYW5uZWwgMy4NCiNkZWZpbmUgQVQ5MUNfSERNQV9TQ1JFUTQgICAgICgweDEgPDwgIDgpIC8vIChIRE1BKSBSZXF1ZXN0IGEgc291cmNlIGNodW5rIHRyYW5zZmVyIG9uIGNoYW5uZWwgNA0KI2RlZmluZSAJQVQ5MUNfSERNQV9TQ1JFUTRfMCAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAgOCkgLy8gKEhETUEpIE5vIGVmZmVjdC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfU0NSRVE0XzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgIDgpIC8vIChIRE1BKSBSZXF1ZXN0IGEgc291cmNlIGNodW5rIHRyYW5zZmVyIG9uIGNoYW5uZWwgNC4NCiNkZWZpbmUgQVQ5MUNfSERNQV9EQ1JFUTQgICAgICgweDEgPDwgIDkpIC8vIChIRE1BKSBSZXF1ZXN0IGEgZGVzdGluYXRpb24gY2h1bmsgdHJhbnNmZXIgb24gY2hhbm5lbCA0DQojZGVmaW5lIAlBVDkxQ19IRE1BX0RDUkVRNF8wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8ICA5KSAvLyAoSERNQSkgTm8gZWZmZWN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9EQ1JFUTRfMSAgICAgICAgICAgICAgICAgICAgKDB4MSA8PCAgOSkgLy8gKEhETUEpIFJlcXVlc3QgYSBkZXN0aW5hdGlvbiBjaHVuayB0cmFuc2ZlciBvbiBjaGFubmVsIDQuDQojZGVmaW5lIEFUOTFDX0hETUFfU0NSRVE1ICAgICAoMHgxIDw8IDEwKSAvLyAoSERNQSkgUmVxdWVzdCBhIHNvdXJjZSBjaHVuayB0cmFuc2ZlciBvbiBjaGFubmVsIDUNCiNkZWZpbmUgCUFUOTFDX0hETUFfU0NSRVE1XzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgMTApIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NDUkVRNV8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8IDEwKSAvLyAoSERNQSkgUmVxdWVzdCBhIHNvdXJjZSBjaHVuayB0cmFuc2ZlciBvbiBjaGFubmVsIDUuDQojZGVmaW5lIEFUOTFDX0hETUFfRENSRVE2ICAgICAoMHgxIDw8IDExKSAvLyAoSERNQSkgUmVxdWVzdCBhIGRlc3RpbmF0aW9uIGNodW5rIHRyYW5zZmVyIG9uIGNoYW5uZWwgNQ0KI2RlZmluZSAJQVQ5MUNfSERNQV9EQ1JFUTZfMCAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAxMSkgLy8gKEhETUEpIE5vIGVmZmVjdC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRENSRVE2XzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgMTEpIC8vIChIRE1BKSBSZXF1ZXN0IGEgZGVzdGluYXRpb24gY2h1bmsgdHJhbnNmZXIgb24gY2hhbm5lbCA1Lg0KI2RlZmluZSBBVDkxQ19IRE1BX1NDUkVRNiAgICAgKDB4MSA8PCAxMikgLy8gKEhETUEpIFJlcXVlc3QgYSBzb3VyY2UgY2h1bmsgdHJhbnNmZXIgb24gY2hhbm5lbCA2DQojZGVmaW5lIAlBVDkxQ19IRE1BX1NDUkVRNl8wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8IDEyKSAvLyAoSERNQSkgTm8gZWZmZWN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TQ1JFUTZfMSAgICAgICAgICAgICAgICAgICAgKDB4MSA8PCAxMikgLy8gKEhETUEpIFJlcXVlc3QgYSBzb3VyY2UgY2h1bmsgdHJhbnNmZXIgb24gY2hhbm5lbCA2Lg0KI2RlZmluZSBBVDkxQ19IRE1BX1NDUkVRNyAgICAgKDB4MSA8PCAxNCkgLy8gKEhETUEpIFJlcXVlc3QgYSBzb3VyY2UgY2h1bmsgdHJhbnNmZXIgb24gY2hhbm5lbCA3DQojZGVmaW5lIAlBVDkxQ19IRE1BX1NDUkVRN18wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8IDE0KSAvLyAoSERNQSkgTm8gZWZmZWN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TQ1JFUTdfMSAgICAgICAgICAgICAgICAgICAgKDB4MSA8PCAxNCkgLy8gKEhETUEpIFJlcXVlc3QgYSBzb3VyY2UgY2h1bmsgdHJhbnNmZXIgb24gY2hhbm5lbCA3Lg0KI2RlZmluZSBBVDkxQ19IRE1BX0RDUkVRNyAgICAgKDB4MSA8PCAxNSkgLy8gKEhETUEpIFJlcXVlc3QgYSBkZXN0aW5hdGlvbiBjaHVuayB0cmFuc2ZlciBvbiBjaGFubmVsIDcNCiNkZWZpbmUgCUFUOTFDX0hETUFfRENSRVE3XzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgMTUpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RDUkVRN18xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8IDE1KSAvLyAoSERNQSkgUmVxdWVzdCBhIGRlc3RpbmF0aW9uIGNodW5rIHRyYW5zZmVyIG9uIGNoYW5uZWwgNy4NCi8vIC0tLS0tLS0tIEhETUFfTEFTVCA6IChIRE1BIE9mZnNldDogMHgxMCkgIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19IRE1BX1NMQVNUMCAgICAgKDB4MSA8PCAgMCkgLy8gKEhETUEpIEluZGljYXRlcyB0aGF0IHRoaXMgc291cmNlIHJlcXVlc3QgaXMgdGhlIGxhc3QgdHJhbnNmZXIgb2YgdGhlIGJ1ZmZlciBvbiBjaGFubmVsIDANCiNkZWZpbmUgCUFUOTFDX0hETUFfU0xBU1QwXzAgICAgICAgICAgICAgICAgICAgICgweDApIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NMQVNUMF8xICAgICAgICAgICAgICAgICAgICAoMHgxKSAvLyAoSERNQSkgV3JpdGluZyBvbmUgdG8gU0xBU1R4IHByaW9yIHRvIHdyaXRpbmcgb25lIHRvIFNTUkVReCBvciBTQ1JFUXggaW5kaWNhdGVzIHRoYXQgdGhpcyBzb3VyY2UgcmVxdWVzdCBpcyB0aGUgbGFzdCB0cmFuc2ZlciBvZiB0aGUgYnVmZmVyIG9uIGNoYW5uZWwgMC4NCiNkZWZpbmUgQVQ5MUNfSERNQV9ETEFTVDAgICAgICgweDEgPDwgIDEpIC8vIChIRE1BKSBJbmRpY2F0ZXMgdGhhdCB0aGlzIGRlc3RpbmF0aW9uIHJlcXVlc3QgaXMgdGhlIGxhc3QgdHJhbnNmZXIgb2YgdGhlIGJ1ZmZlciBvbiBjaGFubmVsIDANCiNkZWZpbmUgCUFUOTFDX0hETUFfRExBU1QwXzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgIDEpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RMQVNUMF8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8ICAxKSAvLyAoSERNQSkgV3JpdGluZyBvbmUgdG8gRExBU1R4IHByaW9yIHRvIHdyaXRpbmcgb25lIHRvIERTUkVReCBvciBEQ1JFUXggaW5kaWNhdGVzIHRoYXQgdGhpcyBkZXN0aW5hdGlvbiByZXF1ZXN0IGlzIHRoZSBsYXN0IHRyYW5zZmVyIG9mIHRoZSBidWZmZXIgb24gY2hhbm5lbCAwLg0KI2RlZmluZSBBVDkxQ19IRE1BX1NMQVNUMSAgICAgKDB4MSA8PCAgMikgLy8gKEhETUEpIEluZGljYXRlcyB0aGF0IHRoaXMgc291cmNlIHJlcXVlc3QgaXMgdGhlIGxhc3QgdHJhbnNmZXIgb2YgdGhlIGJ1ZmZlciBvbiBjaGFubmVsIDENCiNkZWZpbmUgCUFUOTFDX0hETUFfU0xBU1QxXzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgIDIpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NMQVNUMV8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8ICAyKSAvLyAoSERNQSkgV3JpdGluZyBvbmUgdG8gU0xBU1R4IHByaW9yIHRvIHdyaXRpbmcgb25lIHRvIFNTUkVReCBvciBTQ1JFUXggaW5kaWNhdGVzIHRoYXQgdGhpcyBzb3VyY2UgcmVxdWVzdCBpcyB0aGUgbGFzdCB0cmFuc2ZlciBvZiB0aGUgYnVmZmVyIG9uIGNoYW5uZWwgMS4NCiNkZWZpbmUgQVQ5MUNfSERNQV9ETEFTVDEgICAgICgweDEgPDwgIDMpIC8vIChIRE1BKSBJbmRpY2F0ZXMgdGhhdCB0aGlzIGRlc3RpbmF0aW9uIHJlcXVlc3QgaXMgdGhlIGxhc3QgdHJhbnNmZXIgb2YgdGhlIGJ1ZmZlciBvbiBjaGFubmVsIDENCiNkZWZpbmUgCUFUOTFDX0hETUFfRExBU1QxXzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgIDMpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RMQVNUMV8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8ICAzKSAvLyAoSERNQSkgV3JpdGluZyBvbmUgdG8gRExBU1R4IHByaW9yIHRvIHdyaXRpbmcgb25lIHRvIERTUkVReCBvciBEQ1JFUXggaW5kaWNhdGVzIHRoYXQgdGhpcyBkZXN0aW5hdGlvbiByZXF1ZXN0IGlzIHRoZSBsYXN0IHRyYW5zZmVyIG9mIHRoZSBidWZmZXIgb24gY2hhbm5lbCAxLg0KI2RlZmluZSBBVDkxQ19IRE1BX1NMQVNUMiAgICAgKDB4MSA8PCAgNCkgLy8gKEhETUEpIEluZGljYXRlcyB0aGF0IHRoaXMgc291cmNlIHJlcXVlc3QgaXMgdGhlIGxhc3QgdHJhbnNmZXIgb2YgdGhlIGJ1ZmZlciBvbiBjaGFubmVsIDINCiNkZWZpbmUgCUFUOTFDX0hETUFfU0xBU1QyXzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgIDQpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NMQVNUMl8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8ICA0KSAvLyAoSERNQSkgV3JpdGluZyBvbmUgdG8gU0xBU1R4IHByaW9yIHRvIHdyaXRpbmcgb25lIHRvIFNTUkVReCBvciBTQ1JFUXggaW5kaWNhdGVzIHRoYXQgdGhpcyBzb3VyY2UgcmVxdWVzdCBpcyB0aGUgbGFzdCB0cmFuc2ZlciBvZiB0aGUgYnVmZmVyIG9uIGNoYW5uZWwgMi4NCiNkZWZpbmUgQVQ5MUNfSERNQV9ETEFTVDIgICAgICgweDEgPDwgIDUpIC8vIChIRE1BKSBJbmRpY2F0ZXMgdGhhdCB0aGlzIGRlc3RpbmF0aW9uIHJlcXVlc3QgaXMgdGhlIGxhc3QgdHJhbnNmZXIgb2YgdGhlIGJ1ZmZlciBvbiBjaGFubmVsIDINCiNkZWZpbmUgCUFUOTFDX0hETUFfRExBU1QyXzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgIDUpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RMQVNUMl8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8ICA1KSAvLyAoSERNQSkgV3JpdGluZyBvbmUgdG8gRExBU1R4IHByaW9yIHRvIHdyaXRpbmcgb25lIHRvIERTUkVReCBvciBEQ1JFUXggaW5kaWNhdGVzIHRoYXQgdGhpcyBkZXN0aW5hdGlvbiByZXF1ZXN0IGlzIHRoZSBsYXN0IHRyYW5zZmVyIG9mIHRoZSBidWZmZXIgb24gY2hhbm5lbCAyLg0KI2RlZmluZSBBVDkxQ19IRE1BX1NMQVNUMyAgICAgKDB4MSA8PCAgNikgLy8gKEhETUEpIEluZGljYXRlcyB0aGF0IHRoaXMgc291cmNlIHJlcXVlc3QgaXMgdGhlIGxhc3QgdHJhbnNmZXIgb2YgdGhlIGJ1ZmZlciBvbiBjaGFubmVsIDMNCiNkZWZpbmUgCUFUOTFDX0hETUFfU0xBU1QzXzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgIDYpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NMQVNUM18xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8ICA2KSAvLyAoSERNQSkgV3JpdGluZyBvbmUgdG8gU0xBU1R4IHByaW9yIHRvIHdyaXRpbmcgb25lIHRvIFNTUkVReCBvciBTQ1JFUXggaW5kaWNhdGVzIHRoYXQgdGhpcyBzb3VyY2UgcmVxdWVzdCBpcyB0aGUgbGFzdCB0cmFuc2ZlciBvZiB0aGUgYnVmZmVyIG9uIGNoYW5uZWwgMy4NCiNkZWZpbmUgQVQ5MUNfSERNQV9ETEFTVDMgICAgICgweDEgPDwgIDcpIC8vIChIRE1BKSBJbmRpY2F0ZXMgdGhhdCB0aGlzIGRlc3RpbmF0aW9uIHJlcXVlc3QgaXMgdGhlIGxhc3QgdHJhbnNmZXIgb2YgdGhlIGJ1ZmZlciBvbiBjaGFubmVsIDMNCiNkZWZpbmUgCUFUOTFDX0hETUFfRExBU1QzXzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgIDcpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RMQVNUM18xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8ICA3KSAvLyAoSERNQSkgV3JpdGluZyBvbmUgdG8gRExBU1R4IHByaW9yIHRvIHdyaXRpbmcgb25lIHRvIERTUkVReCBvciBEQ1JFUXggaW5kaWNhdGVzIHRoYXQgdGhpcyBkZXN0aW5hdGlvbiByZXF1ZXN0IGlzIHRoZSBsYXN0IHRyYW5zZmVyIG9mIHRoZSBidWZmZXIgb24gY2hhbm5lbCAzLg0KI2RlZmluZSBBVDkxQ19IRE1BX1NMQVNUNCAgICAgKDB4MSA8PCAgOCkgLy8gKEhETUEpIEluZGljYXRlcyB0aGF0IHRoaXMgc291cmNlIHJlcXVlc3QgaXMgdGhlIGxhc3QgdHJhbnNmZXIgb2YgdGhlIGJ1ZmZlciBvbiBjaGFubmVsIDQNCiNkZWZpbmUgCUFUOTFDX0hETUFfU0xBU1Q0XzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgIDgpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NMQVNUNF8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8ICA4KSAvLyAoSERNQSkgV3JpdGluZyBvbmUgdG8gU0xBU1R4IHByaW9yIHRvIHdyaXRpbmcgb25lIHRvIFNTUkVReCBvciBTQ1JFUXggaW5kaWNhdGVzIHRoYXQgdGhpcyBzb3VyY2UgcmVxdWVzdCBpcyB0aGUgbGFzdCB0cmFuc2ZlciBvZiB0aGUgYnVmZmVyIG9uIGNoYW5uZWwgNC4NCiNkZWZpbmUgQVQ5MUNfSERNQV9ETEFTVDQgICAgICgweDEgPDwgIDkpIC8vIChIRE1BKSBJbmRpY2F0ZXMgdGhhdCB0aGlzIGRlc3RpbmF0aW9uIHJlcXVlc3QgaXMgdGhlIGxhc3QgdHJhbnNmZXIgb2YgdGhlIGJ1ZmZlciBvbiBjaGFubmVsIDQNCiNkZWZpbmUgCUFUOTFDX0hETUFfRExBU1Q0XzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgIDkpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RMQVNUNF8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8ICA5KSAvLyAoSERNQSkgV3JpdGluZyBvbmUgdG8gRExBU1R4IHByaW9yIHRvIHdyaXRpbmcgb25lIHRvIERTUkVReCBvciBEQ1JFUXggaW5kaWNhdGVzIHRoYXQgdGhpcyBkZXN0aW5hdGlvbiByZXF1ZXN0IGlzIHRoZSBsYXN0IHRyYW5zZmVyIG9mIHRoZSBidWZmZXIgb24gY2hhbm5lbCA0Lg0KI2RlZmluZSBBVDkxQ19IRE1BX1NMQVNUNSAgICAgKDB4MSA8PCAxMCkgLy8gKEhETUEpIEluZGljYXRlcyB0aGF0IHRoaXMgc291cmNlIHJlcXVlc3QgaXMgdGhlIGxhc3QgdHJhbnNmZXIgb2YgdGhlIGJ1ZmZlciBvbiBjaGFubmVsIDUNCiNkZWZpbmUgCUFUOTFDX0hETUFfU0xBU1Q1XzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgMTApIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NMQVNUNV8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8IDEwKSAvLyAoSERNQSkgV3JpdGluZyBvbmUgdG8gU0xBU1R4IHByaW9yIHRvIHdyaXRpbmcgb25lIHRvIFNTUkVReCBvciBTQ1JFUXggaW5kaWNhdGVzIHRoYXQgdGhpcyBzb3VyY2UgcmVxdWVzdCBpcyB0aGUgbGFzdCB0cmFuc2ZlciBvZiB0aGUgYnVmZmVyIG9uIGNoYW5uZWwgNS4NCiNkZWZpbmUgQVQ5MUNfSERNQV9ETEFTVDYgICAgICgweDEgPDwgMTEpIC8vIChIRE1BKSBJbmRpY2F0ZXMgdGhhdCB0aGlzIGRlc3RpbmF0aW9uIHJlcXVlc3QgaXMgdGhlIGxhc3QgdHJhbnNmZXIgb2YgdGhlIGJ1ZmZlciBvbiBjaGFubmVsIDUNCiNkZWZpbmUgCUFUOTFDX0hETUFfRExBU1Q2XzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgMTEpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RMQVNUNl8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8IDExKSAvLyAoSERNQSkgV3JpdGluZyBvbmUgdG8gRExBU1R4IHByaW9yIHRvIHdyaXRpbmcgb25lIHRvIERTUkVReCBvciBEQ1JFUXggaW5kaWNhdGVzIHRoYXQgdGhpcyBkZXN0aW5hdGlvbiByZXF1ZXN0IGlzIHRoZSBsYXN0IHRyYW5zZmVyIG9mIHRoZSBidWZmZXIgb24gY2hhbm5lbCA1Lg0KI2RlZmluZSBBVDkxQ19IRE1BX1NMQVNUNiAgICAgKDB4MSA8PCAxMikgLy8gKEhETUEpIEluZGljYXRlcyB0aGF0IHRoaXMgc291cmNlIHJlcXVlc3QgaXMgdGhlIGxhc3QgdHJhbnNmZXIgb2YgdGhlIGJ1ZmZlciBvbiBjaGFubmVsIDYNCiNkZWZpbmUgCUFUOTFDX0hETUFfU0xBU1Q2XzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgMTIpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NMQVNUNl8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8IDEyKSAvLyAoSERNQSkgV3JpdGluZyBvbmUgdG8gU0xBU1R4IHByaW9yIHRvIHdyaXRpbmcgb25lIHRvIFNTUkVReCBvciBTQ1JFUXggaW5kaWNhdGVzIHRoYXQgdGhpcyBzb3VyY2UgcmVxdWVzdCBpcyB0aGUgbGFzdCB0cmFuc2ZlciBvZiB0aGUgYnVmZmVyIG9uIGNoYW5uZWwgNi4NCiNkZWZpbmUgQVQ5MUNfSERNQV9TTEFTVDcgICAgICgweDEgPDwgMTQpIC8vIChIRE1BKSBJbmRpY2F0ZXMgdGhhdCB0aGlzIHNvdXJjZSByZXF1ZXN0IGlzIHRoZSBsYXN0IHRyYW5zZmVyIG9mIHRoZSBidWZmZXIgb24gY2hhbm5lbCA3DQojZGVmaW5lIAlBVDkxQ19IRE1BX1NMQVNUN18wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8IDE0KSAvLyAoSERNQSkgTm8gZWZmZWN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TTEFTVDdfMSAgICAgICAgICAgICAgICAgICAgKDB4MSA8PCAxNCkgLy8gKEhETUEpIFdyaXRpbmcgb25lIHRvIFNMQVNUeCBwcmlvciB0byB3cml0aW5nIG9uZSB0byBTU1JFUXggb3IgU0NSRVF4IGluZGljYXRlcyB0aGF0IHRoaXMgc291cmNlIHJlcXVlc3QgaXMgdGhlIGxhc3QgdHJhbnNmZXIgb2YgdGhlIGJ1ZmZlciBvbiBjaGFubmVsIDcuDQojZGVmaW5lIEFUOTFDX0hETUFfRExBU1Q3ICAgICAoMHgxIDw8IDE1KSAvLyAoSERNQSkgSW5kaWNhdGVzIHRoYXQgdGhpcyBkZXN0aW5hdGlvbiByZXF1ZXN0IGlzIHRoZSBsYXN0IHRyYW5zZmVyIG9mIHRoZSBidWZmZXIgb24gY2hhbm5lbCA3DQojZGVmaW5lIAlBVDkxQ19IRE1BX0RMQVNUN18wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8IDE1KSAvLyAoSERNQSkgTm8gZWZmZWN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9ETEFTVDdfMSAgICAgICAgICAgICAgICAgICAgKDB4MSA8PCAxNSkgLy8gKEhETUEpIFdyaXRpbmcgb25lIHRvIERMQVNUeCBwcmlvciB0byB3cml0aW5nIG9uZSB0byBEU1JFUXggb3IgRENSRVF4IGluZGljYXRlcyB0aGF0IHRoaXMgZGVzdGluYXRpb24gcmVxdWVzdCBpcyB0aGUgbGFzdCB0cmFuc2ZlciBvZiB0aGUgYnVmZmVyIG9uIGNoYW5uZWwgNy4NCi8vIC0tLS0tLS0tIEhETUFfU1lOQyA6IChIRE1BIE9mZnNldDogMHgxNCkgIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19TWU5DX1JFUSAgICAgICAgKDB4RkZGRiA8PCAgMCkgLy8gKEhETUEpIA0KLy8gLS0tLS0tLS0gSERNQV9FQkNJRVIgOiAoSERNQSBPZmZzZXQ6IDB4MTgpIEJ1ZmZlciBUcmFuc2ZlciBDb21wbGV0ZWQvQ2hhaW5lZCBCdWZmZXIgVHJhbnNmZXIgQ29tcGxldGVkL0FjY2VzcyBFcnJvciBJbnRlcnJ1cHQgRW5hYmxlIFJlZ2lzdGVyIC0tLS0tLS0tIA0KI2RlZmluZSBBVDkxQ19IRE1BX0JUQzAgICAgICAgKDB4MSA8PCAgMCkgLy8gKEhETUEpIEJ1ZmZlciBUcmFuc2ZlciBDb21wbGV0ZWQgSW50ZXJydXB0IEVuYWJsZS9EaXNhYmxlL1N0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19IRE1BX0JUQzEgICAgICAgKDB4MSA8PCAgMSkgLy8gKEhETUEpIEJ1ZmZlciBUcmFuc2ZlciBDb21wbGV0ZWQgSW50ZXJydXB0IEVuYWJsZS9EaXNhYmxlL1N0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19IRE1BX0JUQzIgICAgICAgKDB4MSA8PCAgMikgLy8gKEhETUEpIEJ1ZmZlciBUcmFuc2ZlciBDb21wbGV0ZWQgSW50ZXJydXB0IEVuYWJsZS9EaXNhYmxlL1N0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19IRE1BX0JUQzMgICAgICAgKDB4MSA8PCAgMykgLy8gKEhETUEpIEJ1ZmZlciBUcmFuc2ZlciBDb21wbGV0ZWQgSW50ZXJydXB0IEVuYWJsZS9EaXNhYmxlL1N0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19IRE1BX0JUQzQgICAgICAgKDB4MSA8PCAgNCkgLy8gKEhETUEpIEJ1ZmZlciBUcmFuc2ZlciBDb21wbGV0ZWQgSW50ZXJydXB0IEVuYWJsZS9EaXNhYmxlL1N0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19IRE1BX0JUQzUgICAgICAgKDB4MSA8PCAgNSkgLy8gKEhETUEpIEJ1ZmZlciBUcmFuc2ZlciBDb21wbGV0ZWQgSW50ZXJydXB0IEVuYWJsZS9EaXNhYmxlL1N0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19IRE1BX0JUQzYgICAgICAgKDB4MSA8PCAgNikgLy8gKEhETUEpIEJ1ZmZlciBUcmFuc2ZlciBDb21wbGV0ZWQgSW50ZXJydXB0IEVuYWJsZS9EaXNhYmxlL1N0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19IRE1BX0JUQzcgICAgICAgKDB4MSA8PCAgNykgLy8gKEhETUEpIEJ1ZmZlciBUcmFuc2ZlciBDb21wbGV0ZWQgSW50ZXJydXB0IEVuYWJsZS9EaXNhYmxlL1N0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19IRE1BX0NCVEMwICAgICAgKDB4MSA8PCAgOCkgLy8gKEhETUEpIENoYWluZWQgQnVmZmVyIFRyYW5zZmVyIENvbXBsZXRlZCBJbnRlcnJ1cHQgRW5hYmxlL0Rpc2FibGUvU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0hETUFfQ0JUQzEgICAgICAoMHgxIDw8ICA5KSAvLyAoSERNQSkgQ2hhaW5lZCBCdWZmZXIgVHJhbnNmZXIgQ29tcGxldGVkIEludGVycnVwdCBFbmFibGUvRGlzYWJsZS9TdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfSERNQV9DQlRDMiAgICAgICgweDEgPDwgMTApIC8vIChIRE1BKSBDaGFpbmVkIEJ1ZmZlciBUcmFuc2ZlciBDb21wbGV0ZWQgSW50ZXJydXB0IEVuYWJsZS9EaXNhYmxlL1N0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19IRE1BX0NCVEMzICAgICAgKDB4MSA8PCAxMSkgLy8gKEhETUEpIENoYWluZWQgQnVmZmVyIFRyYW5zZmVyIENvbXBsZXRlZCBJbnRlcnJ1cHQgRW5hYmxlL0Rpc2FibGUvU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0hETUFfQ0JUQzQgICAgICAoMHgxIDw8IDEyKSAvLyAoSERNQSkgQ2hhaW5lZCBCdWZmZXIgVHJhbnNmZXIgQ29tcGxldGVkIEludGVycnVwdCBFbmFibGUvRGlzYWJsZS9TdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfSERNQV9DQlRDNSAgICAgICgweDEgPDwgMTMpIC8vIChIRE1BKSBDaGFpbmVkIEJ1ZmZlciBUcmFuc2ZlciBDb21wbGV0ZWQgSW50ZXJydXB0IEVuYWJsZS9EaXNhYmxlL1N0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19IRE1BX0NCVEM2ICAgICAgKDB4MSA8PCAxNCkgLy8gKEhETUEpIENoYWluZWQgQnVmZmVyIFRyYW5zZmVyIENvbXBsZXRlZCBJbnRlcnJ1cHQgRW5hYmxlL0Rpc2FibGUvU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0hETUFfQ0JUQzcgICAgICAoMHgxIDw8IDE1KSAvLyAoSERNQSkgQ2hhaW5lZCBCdWZmZXIgVHJhbnNmZXIgQ29tcGxldGVkIEludGVycnVwdCBFbmFibGUvRGlzYWJsZS9TdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfSERNQV9FUlIwICAgICAgICgweDEgPDwgMTYpIC8vIChIRE1BKSBBY2Nlc3MgSERNQV9FcnJvciBJbnRlcnJ1cHQgRW5hYmxlL0Rpc2FibGUvU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0hETUFfRVJSMSAgICAgICAoMHgxIDw8IDE3KSAvLyAoSERNQSkgQWNjZXNzIEhETUFfRXJyb3IgSW50ZXJydXB0IEVuYWJsZS9EaXNhYmxlL1N0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19IRE1BX0VSUjIgICAgICAgKDB4MSA8PCAxOCkgLy8gKEhETUEpIEFjY2VzcyBIRE1BX0Vycm9yIEludGVycnVwdCBFbmFibGUvRGlzYWJsZS9TdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfSERNQV9FUlIzICAgICAgICgweDEgPDwgMTkpIC8vIChIRE1BKSBBY2Nlc3MgSERNQV9FcnJvciBJbnRlcnJ1cHQgRW5hYmxlL0Rpc2FibGUvU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0hETUFfRVJSNCAgICAgICAoMHgxIDw8IDIwKSAvLyAoSERNQSkgQWNjZXNzIEhETUFfRXJyb3IgSW50ZXJydXB0IEVuYWJsZS9EaXNhYmxlL1N0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19IRE1BX0VSUjUgICAgICAgKDB4MSA8PCAyMSkgLy8gKEhETUEpIEFjY2VzcyBIRE1BX0Vycm9yIEludGVycnVwdCBFbmFibGUvRGlzYWJsZS9TdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfSERNQV9FUlI2ICAgICAgICgweDEgPDwgMjIpIC8vIChIRE1BKSBBY2Nlc3MgSERNQV9FcnJvciBJbnRlcnJ1cHQgRW5hYmxlL0Rpc2FibGUvU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0hETUFfRVJSNyAgICAgICAoMHgxIDw8IDIzKSAvLyAoSERNQSkgQWNjZXNzIEhETUFfRXJyb3IgSW50ZXJydXB0IEVuYWJsZS9EaXNhYmxlL1N0YXR1cyBSZWdpc3Rlcg0KLy8gLS0tLS0tLS0gSERNQV9FQkNJRFIgOiAoSERNQSBPZmZzZXQ6IDB4MWMpICAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIEhETUFfRUJDSU1SIDogKEhETUEgT2Zmc2V0OiAweDIwKSAgLS0tLS0tLS0gDQovLyAtLS0tLS0tLSBIRE1BX0VCQ0lTUiA6IChIRE1BIE9mZnNldDogMHgyNCkgIC0tLS0tLS0tIA0KLy8gLS0tLS0tLS0gSERNQV9DSEVSIDogKEhETUEgT2Zmc2V0OiAweDI4KSAgLS0tLS0tLS0gDQojZGVmaW5lIEFUOTFDX0hETUFfRU5BMCAgICAgICAoMHgxIDw8ICAwKSAvLyAoSERNQSkgV2hlbiBzZXQsIGNoYW5uZWwgMCBlbmFibGVkLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9FTkEwXzAgICAgICAgICAgICAgICAgICAgICgweDApIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0VOQTBfMSAgICAgICAgICAgICAgICAgICAgKDB4MSkgLy8gKEhETUEpIENoYW5uZWwgMCBlbmFibGVkLg0KI2RlZmluZSBBVDkxQ19IRE1BX0VOQTEgICAgICAgKDB4MSA8PCAgMSkgLy8gKEhETUEpIFdoZW4gc2V0LCBjaGFubmVsIDEgZW5hYmxlZC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRU5BMV8wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8ICAxKSAvLyAoSERNQSkgTm8gZWZmZWN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9FTkExXzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgIDEpIC8vIChIRE1BKSBDaGFubmVsIDEgZW5hYmxlZC4NCiNkZWZpbmUgQVQ5MUNfSERNQV9FTkEyICAgICAgICgweDEgPDwgIDIpIC8vIChIRE1BKSBXaGVuIHNldCwgY2hhbm5lbCAyIGVuYWJsZWQuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0VOQTJfMCAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAgMikgLy8gKEhETUEpIE5vIGVmZmVjdC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRU5BMl8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8ICAyKSAvLyAoSERNQSkgQ2hhbm5lbCAyIGVuYWJsZWQuDQojZGVmaW5lIEFUOTFDX0hETUFfRU5BMyAgICAgICAoMHgxIDw8ICAzKSAvLyAoSERNQSkgV2hlbiBzZXQsIGNoYW5uZWwgMyBlbmFibGVkLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9FTkEzXzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgIDMpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0VOQTNfMSAgICAgICAgICAgICAgICAgICAgKDB4MSA8PCAgMykgLy8gKEhETUEpIENoYW5uZWwgMyBlbmFibGVkLg0KI2RlZmluZSBBVDkxQ19IRE1BX0VOQTQgICAgICAgKDB4MSA8PCAgNCkgLy8gKEhETUEpIFdoZW4gc2V0LCBjaGFubmVsIDQgZW5hYmxlZC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRU5BNF8wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8ICA0KSAvLyAoSERNQSkgTm8gZWZmZWN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9FTkE0XzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgIDQpIC8vIChIRE1BKSBDaGFubmVsIDQgZW5hYmxlZC4NCiNkZWZpbmUgQVQ5MUNfSERNQV9FTkE1ICAgICAgICgweDEgPDwgIDUpIC8vIChIRE1BKSBXaGVuIHNldCwgY2hhbm5lbCA1IGVuYWJsZWQuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0VOQTVfMCAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAgNSkgLy8gKEhETUEpIE5vIGVmZmVjdC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRU5BNV8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8ICA1KSAvLyAoSERNQSkgQ2hhbm5lbCA1IGVuYWJsZWQuDQojZGVmaW5lIEFUOTFDX0hETUFfRU5BNiAgICAgICAoMHgxIDw8ICA2KSAvLyAoSERNQSkgV2hlbiBzZXQsIGNoYW5uZWwgNiBlbmFibGVkLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9FTkE2XzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgIDYpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0VOQTZfMSAgICAgICAgICAgICAgICAgICAgKDB4MSA8PCAgNikgLy8gKEhETUEpIENoYW5uZWwgNiBlbmFibGVkLg0KI2RlZmluZSBBVDkxQ19IRE1BX0VOQTcgICAgICAgKDB4MSA8PCAgNykgLy8gKEhETUEpIFdoZW4gc2V0LCBjaGFubmVsIDcgZW5hYmxlZC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRU5BN18wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8ICA3KSAvLyAoSERNQSkgTm8gZWZmZWN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9FTkE3XzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgIDcpIC8vIChIRE1BKSBDaGFubmVsIDcgZW5hYmxlZC4NCiNkZWZpbmUgQVQ5MUNfSERNQV9TVVNQMCAgICAgICgweDEgPDwgIDgpIC8vIChIRE1BKSBXaGVuIHNldCwgY2hhbm5lbCAwIGZyZWV6ZWQgYW5kIGl0cyBjdXJyZW50IGNvbnRleHQuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NVU1AwXzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgIDgpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NVU1AwXzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgIDgpIC8vIChIRE1BKSBDaGFubmVsIDAgZnJlZXplZC4NCiNkZWZpbmUgQVQ5MUNfSERNQV9TVVNQMSAgICAgICgweDEgPDwgIDkpIC8vIChIRE1BKSBXaGVuIHNldCwgY2hhbm5lbCAxIGZyZWV6ZWQgYW5kIGl0cyBjdXJyZW50IGNvbnRleHQuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NVU1AxXzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgIDkpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NVU1AxXzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgIDkpIC8vIChIRE1BKSBDaGFubmVsIDEgZnJlZXplZC4NCiNkZWZpbmUgQVQ5MUNfSERNQV9TVVNQMiAgICAgICgweDEgPDwgMTApIC8vIChIRE1BKSBXaGVuIHNldCwgY2hhbm5lbCAyIGZyZWV6ZWQgYW5kIGl0cyBjdXJyZW50IGNvbnRleHQuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NVU1AyXzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgMTApIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NVU1AyXzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgMTApIC8vIChIRE1BKSBDaGFubmVsIDIgZnJlZXplZC4NCiNkZWZpbmUgQVQ5MUNfSERNQV9TVVNQMyAgICAgICgweDEgPDwgMTEpIC8vIChIRE1BKSBXaGVuIHNldCwgY2hhbm5lbCAzIGZyZWV6ZWQgYW5kIGl0cyBjdXJyZW50IGNvbnRleHQuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NVU1AzXzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgMTEpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NVU1AzXzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgMTEpIC8vIChIRE1BKSBDaGFubmVsIDMgZnJlZXplZC4NCiNkZWZpbmUgQVQ5MUNfSERNQV9TVVNQNCAgICAgICgweDEgPDwgMTIpIC8vIChIRE1BKSBXaGVuIHNldCwgY2hhbm5lbCA0IGZyZWV6ZWQgYW5kIGl0cyBjdXJyZW50IGNvbnRleHQuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NVU1A0XzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgMTIpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NVU1A0XzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgMTIpIC8vIChIRE1BKSBDaGFubmVsIDQgZnJlZXplZC4NCiNkZWZpbmUgQVQ5MUNfSERNQV9TVVNQNSAgICAgICgweDEgPDwgMTMpIC8vIChIRE1BKSBXaGVuIHNldCwgY2hhbm5lbCA1IGZyZWV6ZWQgYW5kIGl0cyBjdXJyZW50IGNvbnRleHQuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NVU1A1XzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgMTMpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NVU1A1XzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgMTMpIC8vIChIRE1BKSBDaGFubmVsIDUgZnJlZXplZC4NCiNkZWZpbmUgQVQ5MUNfSERNQV9TVVNQNiAgICAgICgweDEgPDwgMTQpIC8vIChIRE1BKSBXaGVuIHNldCwgY2hhbm5lbCA2IGZyZWV6ZWQgYW5kIGl0cyBjdXJyZW50IGNvbnRleHQuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NVU1A2XzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgMTQpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NVU1A2XzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgMTQpIC8vIChIRE1BKSBDaGFubmVsIDYgZnJlZXplZC4NCiNkZWZpbmUgQVQ5MUNfSERNQV9TVVNQNyAgICAgICgweDEgPDwgMTUpIC8vIChIRE1BKSBXaGVuIHNldCwgY2hhbm5lbCA3IGZyZWV6ZWQgYW5kIGl0cyBjdXJyZW50IGNvbnRleHQuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NVU1A3XzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgMTUpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1NVU1A3XzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgMTUpIC8vIChIRE1BKSBDaGFubmVsIDcgZnJlZXplZC4NCiNkZWZpbmUgQVQ5MUNfSERNQV9LRUVQMCAgICAgICgweDEgPDwgMjQpIC8vIChIRE1BKSBXaGVuIHNldCwgaXQgcmVzdW1lcyB0aGUgY2hhbm5lbCAwIGZyb20gYW4gYXV0b21hdGljIHN0YWxsIHN0YXRlLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9LRUVQMF8wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8IDI0KSAvLyAoSERNQSkgTm8gZWZmZWN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9LRUVQMF8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8IDI0KSAvLyAoSERNQSkgUmVzdW1lcyB0aGUgY2hhbm5lbCAwLg0KI2RlZmluZSBBVDkxQ19IRE1BX0tFRVAxICAgICAgKDB4MSA8PCAyNSkgLy8gKEhETUEpIFdoZW4gc2V0LCBpdCByZXN1bWVzIHRoZSBjaGFubmVsIDEgZnJvbSBhbiBhdXRvbWF0aWMgc3RhbGwgc3RhdGUuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0tFRVAxXzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgMjUpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0tFRVAxXzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgMjUpIC8vIChIRE1BKSBSZXN1bWVzIHRoZSBjaGFubmVsIDEuDQojZGVmaW5lIEFUOTFDX0hETUFfS0VFUDIgICAgICAoMHgxIDw8IDI2KSAvLyAoSERNQSkgV2hlbiBzZXQsIGl0IHJlc3VtZXMgdGhlIGNoYW5uZWwgMiBmcm9tIGFuIGF1dG9tYXRpYyBzdGFsbCBzdGF0ZS4NCiNkZWZpbmUgCUFUOTFDX0hETUFfS0VFUDJfMCAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAyNikgLy8gKEhETUEpIE5vIGVmZmVjdC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfS0VFUDJfMSAgICAgICAgICAgICAgICAgICAgKDB4MSA8PCAyNikgLy8gKEhETUEpIFJlc3VtZXMgdGhlIGNoYW5uZWwgMi4NCiNkZWZpbmUgQVQ5MUNfSERNQV9LRUVQMyAgICAgICgweDEgPDwgMjcpIC8vIChIRE1BKSBXaGVuIHNldCwgaXQgcmVzdW1lcyB0aGUgY2hhbm5lbCAzIGZyb20gYW4gYXV0b21hdGljIHN0YWxsIHN0YXRlLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9LRUVQM18wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8IDI3KSAvLyAoSERNQSkgTm8gZWZmZWN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9LRUVQM18xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8IDI3KSAvLyAoSERNQSkgUmVzdW1lcyB0aGUgY2hhbm5lbCAzLg0KI2RlZmluZSBBVDkxQ19IRE1BX0tFRVA0ICAgICAgKDB4MSA8PCAyOCkgLy8gKEhETUEpIFdoZW4gc2V0LCBpdCByZXN1bWVzIHRoZSBjaGFubmVsIDQgZnJvbSBhbiBhdXRvbWF0aWMgc3RhbGwgc3RhdGUuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0tFRVA0XzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgMjgpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0tFRVA0XzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgMjgpIC8vIChIRE1BKSBSZXN1bWVzIHRoZSBjaGFubmVsIDQuDQojZGVmaW5lIEFUOTFDX0hETUFfS0VFUDUgICAgICAoMHgxIDw8IDI5KSAvLyAoSERNQSkgV2hlbiBzZXQsIGl0IHJlc3VtZXMgdGhlIGNoYW5uZWwgNSBmcm9tIGFuIGF1dG9tYXRpYyBzdGFsbCBzdGF0ZS4NCiNkZWZpbmUgCUFUOTFDX0hETUFfS0VFUDVfMCAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAyOSkgLy8gKEhETUEpIE5vIGVmZmVjdC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfS0VFUDVfMSAgICAgICAgICAgICAgICAgICAgKDB4MSA8PCAyOSkgLy8gKEhETUEpIFJlc3VtZXMgdGhlIGNoYW5uZWwgNS4NCiNkZWZpbmUgQVQ5MUNfSERNQV9LRUVQNiAgICAgICgweDEgPDwgMzApIC8vIChIRE1BKSBXaGVuIHNldCwgaXQgcmVzdW1lcyB0aGUgY2hhbm5lbCA2IGZyb20gYW4gYXV0b21hdGljIHN0YWxsIHN0YXRlLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9LRUVQNl8wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8IDMwKSAvLyAoSERNQSkgTm8gZWZmZWN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9LRUVQNl8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8IDMwKSAvLyAoSERNQSkgUmVzdW1lcyB0aGUgY2hhbm5lbCA2Lg0KI2RlZmluZSBBVDkxQ19IRE1BX0tFRVA3ICAgICAgKDB4MSA8PCAzMSkgLy8gKEhETUEpIFdoZW4gc2V0LCBpdCByZXN1bWVzIHRoZSBjaGFubmVsIDcgZnJvbSBhbiBhdXRvbWF0aWMgc3RhbGwgc3RhdGUuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0tFRVA3XzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgMzEpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0tFRVA3XzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgMzEpIC8vIChIRE1BKSBSZXN1bWVzIHRoZSBjaGFubmVsIDcuDQovLyAtLS0tLS0tLSBIRE1BX0NIRFIgOiAoSERNQSBPZmZzZXQ6IDB4MmMpICAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfSERNQV9ESVMwICAgICAgICgweDEgPDwgIDApIC8vIChIRE1BKSBXcml0ZSBvbmUgdG8gdGhpcyBmaWVsZCB0byBkaXNhYmxlIHRoZSBjaGFubmVsIDAuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RJUzBfMCAgICAgICAgICAgICAgICAgICAgKDB4MCkgLy8gKEhETUEpIE5vIGVmZmVjdC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRElTMF8xICAgICAgICAgICAgICAgICAgICAoMHgxKSAvLyAoSERNQSkgRGlzYWJsZXMgdGhlIGNoYW5uZWwgMC4NCiNkZWZpbmUgQVQ5MUNfSERNQV9ESVMxICAgICAgICgweDEgPDwgIDEpIC8vIChIRE1BKSBXcml0ZSBvbmUgdG8gdGhpcyBmaWVsZCB0byBkaXNhYmxlIHRoZSBjaGFubmVsIDEuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RJUzFfMCAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAgMSkgLy8gKEhETUEpIE5vIGVmZmVjdC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRElTMV8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8ICAxKSAvLyAoSERNQSkgRGlzYWJsZXMgdGhlIGNoYW5uZWwgMS4NCiNkZWZpbmUgQVQ5MUNfSERNQV9ESVMyICAgICAgICgweDEgPDwgIDIpIC8vIChIRE1BKSBXcml0ZSBvbmUgdG8gdGhpcyBmaWVsZCB0byBkaXNhYmxlIHRoZSBjaGFubmVsIDIuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RJUzJfMCAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAgMikgLy8gKEhETUEpIE5vIGVmZmVjdC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRElTMl8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8ICAyKSAvLyAoSERNQSkgRGlzYWJsZXMgdGhlIGNoYW5uZWwgMi4NCiNkZWZpbmUgQVQ5MUNfSERNQV9ESVMzICAgICAgICgweDEgPDwgIDMpIC8vIChIRE1BKSBXcml0ZSBvbmUgdG8gdGhpcyBmaWVsZCB0byBkaXNhYmxlIHRoZSBjaGFubmVsIDMuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RJUzNfMCAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAgMykgLy8gKEhETUEpIE5vIGVmZmVjdC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRElTM18xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8ICAzKSAvLyAoSERNQSkgRGlzYWJsZXMgdGhlIGNoYW5uZWwgMy4NCiNkZWZpbmUgQVQ5MUNfSERNQV9ESVM0ICAgICAgICgweDEgPDwgIDQpIC8vIChIRE1BKSBXcml0ZSBvbmUgdG8gdGhpcyBmaWVsZCB0byBkaXNhYmxlIHRoZSBjaGFubmVsIDQuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RJUzRfMCAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAgNCkgLy8gKEhETUEpIE5vIGVmZmVjdC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRElTNF8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8ICA0KSAvLyAoSERNQSkgRGlzYWJsZXMgdGhlIGNoYW5uZWwgNC4NCiNkZWZpbmUgQVQ5MUNfSERNQV9ESVM1ICAgICAgICgweDEgPDwgIDUpIC8vIChIRE1BKSBXcml0ZSBvbmUgdG8gdGhpcyBmaWVsZCB0byBkaXNhYmxlIHRoZSBjaGFubmVsIDUuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RJUzVfMCAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAgNSkgLy8gKEhETUEpIE5vIGVmZmVjdC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRElTNV8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8ICA1KSAvLyAoSERNQSkgRGlzYWJsZXMgdGhlIGNoYW5uZWwgNS4NCiNkZWZpbmUgQVQ5MUNfSERNQV9ESVM2ICAgICAgICgweDEgPDwgIDYpIC8vIChIRE1BKSBXcml0ZSBvbmUgdG8gdGhpcyBmaWVsZCB0byBkaXNhYmxlIHRoZSBjaGFubmVsIDYuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RJUzZfMCAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAgNikgLy8gKEhETUEpIE5vIGVmZmVjdC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRElTNl8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8ICA2KSAvLyAoSERNQSkgRGlzYWJsZXMgdGhlIGNoYW5uZWwgNi4NCiNkZWZpbmUgQVQ5MUNfSERNQV9ESVM3ICAgICAgICgweDEgPDwgIDcpIC8vIChIRE1BKSBXcml0ZSBvbmUgdG8gdGhpcyBmaWVsZCB0byBkaXNhYmxlIHRoZSBjaGFubmVsIDcuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0RJUzdfMCAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAgNykgLy8gKEhETUEpIE5vIGVmZmVjdC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRElTN18xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8ICA3KSAvLyAoSERNQSkgRGlzYWJsZXMgdGhlIGNoYW5uZWwgNy4NCiNkZWZpbmUgQVQ5MUNfSERNQV9SRVMwICAgICAgICgweDEgPDwgIDgpIC8vIChIRE1BKSBXcml0ZSBvbmUgdG8gdGhpcyBmaWVsZCB0byByZXN1bWUgdGhlIGNoYW5uZWwgMCB0cmFuc2ZlciByZXN0b3JpbmcgaXRzIGNvbnRleHQuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1JFUzBfMCAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAgOCkgLy8gKEhETUEpIE5vIGVmZmVjdC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfUkVTMF8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8ICA4KSAvLyAoSERNQSkgUmVzdW1lcyB0aGUgY2hhbm5lbCAwLg0KI2RlZmluZSBBVDkxQ19IRE1BX1JFUzEgICAgICAgKDB4MSA8PCAgOSkgLy8gKEhETUEpIFdyaXRlIG9uZSB0byB0aGlzIGZpZWxkIHRvIHJlc3VtZSB0aGUgY2hhbm5lbCAxIHRyYW5zZmVyIHJlc3RvcmluZyBpdHMgY29udGV4dC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfUkVTMV8wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8ICA5KSAvLyAoSERNQSkgTm8gZWZmZWN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9SRVMxXzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgIDkpIC8vIChIRE1BKSBSZXN1bWVzIHRoZSBjaGFubmVsIDEuDQojZGVmaW5lIEFUOTFDX0hETUFfUkVTMiAgICAgICAoMHgxIDw8IDEwKSAvLyAoSERNQSkgV3JpdGUgb25lIHRvIHRoaXMgZmllbGQgdG8gcmVzdW1lIHRoZSBjaGFubmVsIDIgdHJhbnNmZXIgcmVzdG9yaW5nIGl0cyBjb250ZXh0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9SRVMyXzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgMTApIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1JFUzJfMSAgICAgICAgICAgICAgICAgICAgKDB4MSA8PCAxMCkgLy8gKEhETUEpIFJlc3VtZXMgdGhlIGNoYW5uZWwgMi4NCiNkZWZpbmUgQVQ5MUNfSERNQV9SRVMzICAgICAgICgweDEgPDwgMTEpIC8vIChIRE1BKSBXcml0ZSBvbmUgdG8gdGhpcyBmaWVsZCB0byByZXN1bWUgdGhlIGNoYW5uZWwgMyB0cmFuc2ZlciByZXN0b3JpbmcgaXRzIGNvbnRleHQuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1JFUzNfMCAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAxMSkgLy8gKEhETUEpIE5vIGVmZmVjdC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfUkVTM18xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8IDExKSAvLyAoSERNQSkgUmVzdW1lcyB0aGUgY2hhbm5lbCAzLg0KI2RlZmluZSBBVDkxQ19IRE1BX1JFUzQgICAgICAgKDB4MSA8PCAxMikgLy8gKEhETUEpIFdyaXRlIG9uZSB0byB0aGlzIGZpZWxkIHRvIHJlc3VtZSB0aGUgY2hhbm5lbCA0IHRyYW5zZmVyIHJlc3RvcmluZyBpdHMgY29udGV4dC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfUkVTNF8wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8IDEyKSAvLyAoSERNQSkgTm8gZWZmZWN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9SRVM0XzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgMTIpIC8vIChIRE1BKSBSZXN1bWVzIHRoZSBjaGFubmVsIDQuDQojZGVmaW5lIEFUOTFDX0hETUFfUkVTNSAgICAgICAoMHgxIDw8IDEzKSAvLyAoSERNQSkgV3JpdGUgb25lIHRvIHRoaXMgZmllbGQgdG8gcmVzdW1lIHRoZSBjaGFubmVsIDUgdHJhbnNmZXIgcmVzdG9yaW5nIGl0cyBjb250ZXh0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9SRVM1XzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgMTMpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1JFUzVfMSAgICAgICAgICAgICAgICAgICAgKDB4MSA8PCAxMykgLy8gKEhETUEpIFJlc3VtZXMgdGhlIGNoYW5uZWwgNS4NCiNkZWZpbmUgQVQ5MUNfSERNQV9SRVM2ICAgICAgICgweDEgPDwgMTQpIC8vIChIRE1BKSBXcml0ZSBvbmUgdG8gdGhpcyBmaWVsZCB0byByZXN1bWUgdGhlIGNoYW5uZWwgNiB0cmFuc2ZlciByZXN0b3JpbmcgaXRzIGNvbnRleHQuDQojZGVmaW5lIAlBVDkxQ19IRE1BX1JFUzZfMCAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAxNCkgLy8gKEhETUEpIE5vIGVmZmVjdC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfUkVTNl8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8IDE0KSAvLyAoSERNQSkgUmVzdW1lcyB0aGUgY2hhbm5lbCA2Lg0KI2RlZmluZSBBVDkxQ19IRE1BX1JFUzcgICAgICAgKDB4MSA8PCAxNSkgLy8gKEhETUEpIFdyaXRlIG9uZSB0byB0aGlzIGZpZWxkIHRvIHJlc3VtZSB0aGUgY2hhbm5lbCA3IHRyYW5zZmVyIHJlc3RvcmluZyBpdHMgY29udGV4dC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfUkVTN18wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8IDE1KSAvLyAoSERNQSkgTm8gZWZmZWN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9SRVM3XzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgMTUpIC8vIChIRE1BKSBSZXN1bWVzIHRoZSBjaGFubmVsIDcuDQovLyAtLS0tLS0tLSBIRE1BX0NIU1IgOiAoSERNQSBPZmZzZXQ6IDB4MzApICAtLS0tLS0tLSANCiNkZWZpbmUgQVQ5MUNfSERNQV9FTVBUMCAgICAgICgweDEgPDwgMTYpIC8vIChIRE1BKSBXaGVuIHNldCwgY2hhbm5lbCAwIGlzIGVtcHR5Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9FTVBUMF8wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8IDE2KSAvLyAoSERNQSkgTm8gZWZmZWN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9FTVBUMF8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8IDE2KSAvLyAoSERNQSkgQ2hhbm5lbCAwIGVtcHR5Lg0KI2RlZmluZSBBVDkxQ19IRE1BX0VNUFQxICAgICAgKDB4MSA8PCAxNykgLy8gKEhETUEpIFdoZW4gc2V0LCBjaGFubmVsIDEgaXMgZW1wdHkuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0VNUFQxXzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgMTcpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0VNUFQxXzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgMTcpIC8vIChIRE1BKSBDaGFubmVsIDEgZW1wdHkuDQojZGVmaW5lIEFUOTFDX0hETUFfRU1QVDIgICAgICAoMHgxIDw8IDE4KSAvLyAoSERNQSkgV2hlbiBzZXQsIGNoYW5uZWwgMiBpcyBlbXB0eS4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRU1QVDJfMCAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAxOCkgLy8gKEhETUEpIE5vIGVmZmVjdC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRU1QVDJfMSAgICAgICAgICAgICAgICAgICAgKDB4MSA8PCAxOCkgLy8gKEhETUEpIENoYW5uZWwgMiBlbXB0eS4NCiNkZWZpbmUgQVQ5MUNfSERNQV9FTVBUMyAgICAgICgweDEgPDwgMTkpIC8vIChIRE1BKSBXaGVuIHNldCwgY2hhbm5lbCAzIGlzIGVtcHR5Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9FTVBUM18wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8IDE5KSAvLyAoSERNQSkgTm8gZWZmZWN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9FTVBUM18xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8IDE5KSAvLyAoSERNQSkgQ2hhbm5lbCAzIGVtcHR5Lg0KI2RlZmluZSBBVDkxQ19IRE1BX0VNUFQ0ICAgICAgKDB4MSA8PCAyMCkgLy8gKEhETUEpIFdoZW4gc2V0LCBjaGFubmVsIDQgaXMgZW1wdHkuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0VNUFQ0XzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgMjApIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0VNUFQ0XzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgMjApIC8vIChIRE1BKSBDaGFubmVsIDQgZW1wdHkuDQojZGVmaW5lIEFUOTFDX0hETUFfRU1QVDUgICAgICAoMHgxIDw8IDIxKSAvLyAoSERNQSkgV2hlbiBzZXQsIGNoYW5uZWwgNSBpcyBlbXB0eS4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRU1QVDVfMCAgICAgICAgICAgICAgICAgICAgKDB4MCA8PCAyMSkgLy8gKEhETUEpIE5vIGVmZmVjdC4NCiNkZWZpbmUgCUFUOTFDX0hETUFfRU1QVDVfMSAgICAgICAgICAgICAgICAgICAgKDB4MSA8PCAyMSkgLy8gKEhETUEpIENoYW5uZWwgNSBlbXB0eS4NCiNkZWZpbmUgQVQ5MUNfSERNQV9FTVBUNiAgICAgICgweDEgPDwgMjIpIC8vIChIRE1BKSBXaGVuIHNldCwgY2hhbm5lbCA2IGlzIGVtcHR5Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9FTVBUNl8wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8IDIyKSAvLyAoSERNQSkgTm8gZWZmZWN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9FTVBUNl8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8IDIyKSAvLyAoSERNQSkgQ2hhbm5lbCA2IGVtcHR5Lg0KI2RlZmluZSBBVDkxQ19IRE1BX0VNUFQ3ICAgICAgKDB4MSA8PCAyMykgLy8gKEhETUEpIFdoZW4gc2V0LCBjaGFubmVsIDcgaXMgZW1wdHkuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0VNUFQ3XzAgICAgICAgICAgICAgICAgICAgICgweDAgPDwgMjMpIC8vIChIRE1BKSBObyBlZmZlY3QuDQojZGVmaW5lIAlBVDkxQ19IRE1BX0VNUFQ3XzEgICAgICAgICAgICAgICAgICAgICgweDEgPDwgMjMpIC8vIChIRE1BKSBDaGFubmVsIDcgZW1wdHkuDQojZGVmaW5lIEFUOTFDX0hETUFfU1RBTDAgICAgICAoMHgxIDw8IDI0KSAvLyAoSERNQSkgV2hlbiBzZXQsIGNoYW5uZWwgMCBpcyBzdGFsbGVkLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TVEFMMF8wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8IDI0KSAvLyAoSERNQSkgTm8gZWZmZWN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TVEFMMF8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8IDI0KSAvLyAoSERNQSkgQ2hhbm5lbCAwIHN0YWxsZWQuDQojZGVmaW5lIEFUOTFDX0hETUFfU1RBTDEgICAgICAoMHgxIDw8IDI1KSAvLyAoSERNQSkgV2hlbiBzZXQsIGNoYW5uZWwgMSBpcyBzdGFsbGVkLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TVEFMMV8wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8IDI1KSAvLyAoSERNQSkgTm8gZWZmZWN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TVEFMMV8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8IDI1KSAvLyAoSERNQSkgQ2hhbm5lbCAxIHN0YWxsZWQuDQojZGVmaW5lIEFUOTFDX0hETUFfU1RBTDIgICAgICAoMHgxIDw8IDI2KSAvLyAoSERNQSkgV2hlbiBzZXQsIGNoYW5uZWwgMiBpcyBzdGFsbGVkLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TVEFMMl8wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8IDI2KSAvLyAoSERNQSkgTm8gZWZmZWN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TVEFMMl8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8IDI2KSAvLyAoSERNQSkgQ2hhbm5lbCAyIHN0YWxsZWQuDQojZGVmaW5lIEFUOTFDX0hETUFfU1RBTDMgICAgICAoMHgxIDw8IDI3KSAvLyAoSERNQSkgV2hlbiBzZXQsIGNoYW5uZWwgMyBpcyBzdGFsbGVkLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TVEFMM18wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8IDI3KSAvLyAoSERNQSkgTm8gZWZmZWN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TVEFMM18xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8IDI3KSAvLyAoSERNQSkgQ2hhbm5lbCAzIHN0YWxsZWQuDQojZGVmaW5lIEFUOTFDX0hETUFfU1RBTDQgICAgICAoMHgxIDw8IDI4KSAvLyAoSERNQSkgV2hlbiBzZXQsIGNoYW5uZWwgNCBpcyBzdGFsbGVkLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TVEFMNF8wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8IDI4KSAvLyAoSERNQSkgTm8gZWZmZWN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TVEFMNF8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8IDI4KSAvLyAoSERNQSkgQ2hhbm5lbCA0IHN0YWxsZWQuDQojZGVmaW5lIEFUOTFDX0hETUFfU1RBTDUgICAgICAoMHgxIDw8IDI5KSAvLyAoSERNQSkgV2hlbiBzZXQsIGNoYW5uZWwgNSBpcyBzdGFsbGVkLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TVEFMNV8wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8IDI5KSAvLyAoSERNQSkgTm8gZWZmZWN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TVEFMNV8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8IDI5KSAvLyAoSERNQSkgQ2hhbm5lbCA1IHN0YWxsZWQuDQojZGVmaW5lIEFUOTFDX0hETUFfU1RBTDYgICAgICAoMHgxIDw8IDMwKSAvLyAoSERNQSkgV2hlbiBzZXQsIGNoYW5uZWwgNiBpcyBzdGFsbGVkLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TVEFMNl8wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8IDMwKSAvLyAoSERNQSkgTm8gZWZmZWN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TVEFMNl8xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8IDMwKSAvLyAoSERNQSkgQ2hhbm5lbCA2IHN0YWxsZWQuDQojZGVmaW5lIEFUOTFDX0hETUFfU1RBTDcgICAgICAoMHgxIDw8IDMxKSAvLyAoSERNQSkgV2hlbiBzZXQsIGNoYW5uZWwgNyBpcyBzdGFsbGVkLg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TVEFMN18wICAgICAgICAgICAgICAgICAgICAoMHgwIDw8IDMxKSAvLyAoSERNQSkgTm8gZWZmZWN0Lg0KI2RlZmluZSAJQVQ5MUNfSERNQV9TVEFMN18xICAgICAgICAgICAgICAgICAgICAoMHgxIDw8IDMxKSAvLyAoSERNQSkgQ2hhbm5lbCA3IHN0YWxsZWQuDQovLyAtLS0tLS0tLSBIRE1BX1JTVkQgOiAoSERNQSBPZmZzZXQ6IDB4MzQpICAtLS0tLS0tLSANCi8vIC0tLS0tLS0tIEhETUFfUlNWRCA6IChIRE1BIE9mZnNldDogMHgzOCkgIC0tLS0tLS0tIA0KLy8gLS0tLS0tLS0gSERNQV9WRVIgOiAoSERNQSBPZmZzZXQ6IDB4MWZjKSAgLS0tLS0tLS0gDQoNCi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQovLyAgICAgICAgICAgICAgIFJFR0lTVEVSIEFERFJFU1MgREVGSU5JVElPTiBGT1IgQVQ5MVNBTTNVNA0KLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCi8vID09PT09PT09PT0gUmVnaXN0ZXIgZGVmaW5pdGlvbiBmb3IgU1lTIHBlcmlwaGVyYWwgPT09PT09PT09PSANCiNkZWZpbmUgQVQ5MUNfU1lTX0dQQlIgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTEyOTApIC8vIChTWVMpIEdlbmVyYWwgUHVycG9zZSBSZWdpc3Rlcg0KLy8gPT09PT09PT09PSBSZWdpc3RlciBkZWZpbml0aW9uIGZvciBIU01DNF9DUzAgcGVyaXBoZXJhbCA9PT09PT09PT09IA0KI2RlZmluZSBBVDkxQ19DUzBfTU9ERSAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDA4MCkgLy8gKEhTTUM0X0NTMCkgTW9kZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19DUzBfUFVMU0UgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDA3NCkgLy8gKEhTTUM0X0NTMCkgUHVsc2UgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfQ1MwX0NZQ0xFIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAwNzgpIC8vIChIU01DNF9DUzApIEN5Y2xlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0NTMF9USU1JTkdTIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAwN0MpIC8vIChIU01DNF9DUzApIFRpbW1pbmdzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0NTMF9TRVRVUCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMDcwKSAvLyAoSFNNQzRfQ1MwKSBTZXR1cCBSZWdpc3Rlcg0KLy8gPT09PT09PT09PSBSZWdpc3RlciBkZWZpbml0aW9uIGZvciBIU01DNF9DUzEgcGVyaXBoZXJhbCA9PT09PT09PT09IA0KI2RlZmluZSBBVDkxQ19DUzFfQ1lDTEUgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDA4QykgLy8gKEhTTUM0X0NTMSkgQ3ljbGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfQ1MxX1BVTFNFIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAwODgpIC8vIChIU01DNF9DUzEpIFB1bHNlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0NTMV9NT0RFICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMDk0KSAvLyAoSFNNQzRfQ1MxKSBNb2RlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0NTMV9TRVRVUCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMDg0KSAvLyAoSFNNQzRfQ1MxKSBTZXR1cCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19DUzFfVElNSU5HUyAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMDkwKSAvLyAoSFNNQzRfQ1MxKSBUaW1taW5ncyBSZWdpc3Rlcg0KLy8gPT09PT09PT09PSBSZWdpc3RlciBkZWZpbml0aW9uIGZvciBIU01DNF9DUzIgcGVyaXBoZXJhbCA9PT09PT09PT09IA0KI2RlZmluZSBBVDkxQ19DUzJfUFVMU0UgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDA5QykgLy8gKEhTTUM0X0NTMikgUHVsc2UgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfQ1MyX1RJTUlOR1MgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDBBNCkgLy8gKEhTTUM0X0NTMikgVGltbWluZ3MgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfQ1MyX0NZQ0xFIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAwQTApIC8vIChIU01DNF9DUzIpIEN5Y2xlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0NTMl9NT0RFICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMEE4KSAvLyAoSFNNQzRfQ1MyKSBNb2RlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0NTMl9TRVRVUCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMDk4KSAvLyAoSFNNQzRfQ1MyKSBTZXR1cCBSZWdpc3Rlcg0KLy8gPT09PT09PT09PSBSZWdpc3RlciBkZWZpbml0aW9uIGZvciBIU01DNF9DUzMgcGVyaXBoZXJhbCA9PT09PT09PT09IA0KI2RlZmluZSBBVDkxQ19DUzNfTU9ERSAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDBCQykgLy8gKEhTTUM0X0NTMykgTW9kZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19DUzNfVElNSU5HUyAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMEI4KSAvLyAoSFNNQzRfQ1MzKSBUaW1taW5ncyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19DUzNfU0VUVVAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDBBQykgLy8gKEhTTUM0X0NTMykgU2V0dXAgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfQ1MzX0NZQ0xFIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAwQjQpIC8vIChIU01DNF9DUzMpIEN5Y2xlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0NTM19QVUxTRSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMEIwKSAvLyAoSFNNQzRfQ1MzKSBQdWxzZSBSZWdpc3Rlcg0KLy8gPT09PT09PT09PSBSZWdpc3RlciBkZWZpbml0aW9uIGZvciBIU01DNF9ORkMgcGVyaXBoZXJhbCA9PT09PT09PT09IA0KI2RlZmluZSBBVDkxQ19ORkNfTU9ERSAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDEwQykgLy8gKEhTTUM0X05GQykgTW9kZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19ORkNfQ1lDTEUgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDEwNCkgLy8gKEhTTUM0X05GQykgQ3ljbGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfTkZDX1BVTFNFIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAxMDApIC8vIChIU01DNF9ORkMpIFB1bHNlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX05GQ19TRVRVUCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMEZDKSAvLyAoSFNNQzRfTkZDKSBTZXR1cCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19ORkNfVElNSU5HUyAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMTA4KSAvLyAoSFNNQzRfTkZDKSBUaW1taW5ncyBSZWdpc3Rlcg0KLy8gPT09PT09PT09PSBSZWdpc3RlciBkZWZpbml0aW9uIGZvciBIU01DNCBwZXJpcGhlcmFsID09PT09PT09PT0gDQojZGVmaW5lIEFUOTFDX0hTTUM0X0lQTkFNRTEgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDFGMCkgLy8gKEhTTUM0KSBXcml0ZSBQcm90ZWN0aW9uIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19IU01DNF9FQ0NQUjYgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDA0OCkgLy8gKEhTTUM0KSBFQ0MgUGFyaXR5IHJlZ2lzdGVyIDYNCiNkZWZpbmUgQVQ5MUNfSFNNQzRfQUREUlNJWkUgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDFFQykgLy8gKEhTTUM0KSBXcml0ZSBQcm90ZWN0aW9uIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19IU01DNF9FQ0NQUjExIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAwNUMpIC8vIChIU01DNCkgRUNDIFBhcml0eSByZWdpc3RlciAxMQ0KI2RlZmluZSBBVDkxQ19IU01DNF9TUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDAwOCkgLy8gKEhTTUM0KSBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfSFNNQzRfSU1SIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAwMTQpIC8vIChIU01DNCkgSW50ZXJydXB0IE1hc2sgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfSFNNQzRfV1BTUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMUU4KSAvLyAoSFNNQzQpIFdyaXRlIFByb3RlY3Rpb24gU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0hTTUM0X0JBTksgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDAxQykgLy8gKEhTTUM0KSBCYW5rIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0hTTUM0X0VDQ1BSOCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMDUwKSAvLyAoSFNNQzQpIEVDQyBQYXJpdHkgcmVnaXN0ZXIgOA0KI2RlZmluZSBBVDkxQ19IU01DNF9XUENSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAxRTQpIC8vIChIU01DNCkgV3JpdGUgUHJvdGVjdGlvbiBDb250cm9sIHJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0hTTUM0X0VDQ1BSMiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMDM4KSAvLyAoSFNNQzQpIEVDQyBQYXJpdHkgcmVnaXN0ZXIgMg0KI2RlZmluZSBBVDkxQ19IU01DNF9FQ0NQUjEgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDAzMCkgLy8gKEhTTUM0KSBFQ0MgUGFyaXR5IHJlZ2lzdGVyIDENCiNkZWZpbmUgQVQ5MUNfSFNNQzRfRUNDU1IyIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAwMzQpIC8vIChIU01DNCkgRUNDIFN0YXR1cyByZWdpc3RlciAyDQojZGVmaW5lIEFUOTFDX0hTTUM0X09DTVMgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDExMCkgLy8gKEhTTUM0KSBPQ01TIE1PREUgcmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfSFNNQzRfRUNDUFI5IChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAwNTQpIC8vIChIU01DNCkgRUNDIFBhcml0eSByZWdpc3RlciA5DQojZGVmaW5lIEFUOTFDX0hTTUM0X0RVTU1ZIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAyMDApIC8vIChIU01DNCkgVGhpcyBydGVnaXN0ZXIgd2FzIGNyZWF0ZWQgb25seSB0aSBoYXZlIEFIQiBjb25zdGFudHMNCiNkZWZpbmUgQVQ5MUNfSFNNQzRfRUNDUFI1IChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAwNDQpIC8vIChIU01DNCkgRUNDIFBhcml0eSByZWdpc3RlciA1DQojZGVmaW5lIEFUOTFDX0hTTUM0X0VDQ0NSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAwMjApIC8vIChIU01DNCkgRUNDIHJlc2V0IHJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0hTTUM0X0tFWTIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDExOCkgLy8gKEhTTUM0KSBLRVkyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0hTTUM0X0lFUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMDBDKSAvLyAoSFNNQzQpIEludGVycnVwdCBFbmFibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfSFNNQzRfRUNDU1IxIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAwMjgpIC8vIChIU01DNCkgRUNDIFN0YXR1cyByZWdpc3RlciAxDQojZGVmaW5lIEFUOTFDX0hTTUM0X0lEUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMDEwKSAvLyAoSFNNQzQpIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0hTTUM0X0VDQ1BSMCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMDJDKSAvLyAoSFNNQzQpIEVDQyBQYXJpdHkgcmVnaXN0ZXIgMA0KI2RlZmluZSBBVDkxQ19IU01DNF9GRUFUVVJFUyAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMUY4KSAvLyAoSFNNQzQpIFdyaXRlIFByb3RlY3Rpb24gU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0hTTUM0X0VDQ1BSNyAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMDRDKSAvLyAoSFNNQzQpIEVDQyBQYXJpdHkgcmVnaXN0ZXIgNw0KI2RlZmluZSBBVDkxQ19IU01DNF9FQ0NQUjEyIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAwNjApIC8vIChIU01DNCkgRUNDIFBhcml0eSByZWdpc3RlciAxMg0KI2RlZmluZSBBVDkxQ19IU01DNF9FQ0NQUjEwIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAwNTgpIC8vIChIU01DNCkgRUNDIFBhcml0eSByZWdpc3RlciAxMA0KI2RlZmluZSBBVDkxQ19IU01DNF9LRVkxIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAxMTQpIC8vIChIU01DNCkgS0VZMSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19IU01DNF9WRVIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDFGQykgLy8gKEhTTUM0KSBIU01DNCBWZXJzaW9uIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0hTTUM0X0VjY3ByMTUgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDA2QykgLy8gKEhTTUM0KSBFQ0MgUGFyaXR5IHJlZ2lzdGVyIDE1DQojZGVmaW5lIEFUOTFDX0hTTUM0X0VDQ1BSNCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMDQwKSAvLyAoSFNNQzQpIEVDQyBQYXJpdHkgcmVnaXN0ZXIgNA0KI2RlZmluZSBBVDkxQ19IU01DNF9JUE5BTUUyIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAxRjQpIC8vIChIU01DNCkgV3JpdGUgUHJvdGVjdGlvbiBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfSFNNQzRfRUNDQ01EIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAwMjQpIC8vIChIU01DNCkgRUNDIFBhZ2Ugc2l6ZSByZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19IU01DNF9BRERSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAwMTgpIC8vIChIU01DNCkgQWRkcmVzcyBDeWNsZSBaZXJvIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0hTTUM0X0VDQ1BSMyAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMDNDKSAvLyAoSFNNQzQpIEVDQyBQYXJpdHkgcmVnaXN0ZXIgMw0KI2RlZmluZSBBVDkxQ19IU01DNF9DRkcgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDAwMCkgLy8gKEhTTUM0KSBDb25maWd1cmF0aW9uIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0hTTUM0X0NUUkwgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDAwNCkgLy8gKEhTTUM0KSBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0hTTUM0X0VDQ1BSMTMgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDA2NCkgLy8gKEhTTUM0KSBFQ0MgUGFyaXR5IHJlZ2lzdGVyIDEzDQojZGVmaW5lIEFUOTFDX0hTTUM0X0VDQ1BSMTQgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDA2OCkgLy8gKEhTTUM0KSBFQ0MgUGFyaXR5IHJlZ2lzdGVyIDE0DQovLyA9PT09PT09PT09IFJlZ2lzdGVyIGRlZmluaXRpb24gZm9yIE1BVFJJWCBwZXJpcGhlcmFsID09PT09PT09PT0gDQojZGVmaW5lIEFUOTFDX01BVFJJWF9TRlIyICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMzE4KSAvLyAoTUFUUklYKSAgU3BlY2lhbCBGdW5jdGlvbiBSZWdpc3RlciAyDQojZGVmaW5lIEFUOTFDX01BVFJJWF9TRlIzICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMzFDKSAvLyAoTUFUUklYKSAgU3BlY2lhbCBGdW5jdGlvbiBSZWdpc3RlciAzDQojZGVmaW5lIEFUOTFDX01BVFJJWF9TQ0ZHOCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMjYwKSAvLyAoTUFUUklYKSAgU2xhdmUgQ29uZmlndXJhdGlvbiBSZWdpc3RlciA4DQojZGVmaW5lIEFUOTFDX01BVFJJWF9NQ0ZHMiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMjA4KSAvLyAoTUFUUklYKSAgTWFzdGVyIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgMg0KI2RlZmluZSBBVDkxQ19NQVRSSVhfTUNGRzcgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDIxQykgLy8gKE1BVFJJWCkgIE1hc3RlciBDb25maWd1cmF0aW9uIFJlZ2lzdGVyIDcNCiNkZWZpbmUgQVQ5MUNfTUFUUklYX1NDRkczIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAyNEMpIC8vIChNQVRSSVgpICBTbGF2ZSBDb25maWd1cmF0aW9uIFJlZ2lzdGVyIDMNCiNkZWZpbmUgQVQ5MUNfTUFUUklYX1NDRkcwIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAyNDApIC8vIChNQVRSSVgpICBTbGF2ZSBDb25maWd1cmF0aW9uIFJlZ2lzdGVyIDANCiNkZWZpbmUgQVQ5MUNfTUFUUklYX1NGUjEyIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAzNDApIC8vIChNQVRSSVgpICBTcGVjaWFsIEZ1bmN0aW9uIFJlZ2lzdGVyIDEyDQojZGVmaW5lIEFUOTFDX01BVFJJWF9TQ0ZHMSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMjQ0KSAvLyAoTUFUUklYKSAgU2xhdmUgQ29uZmlndXJhdGlvbiBSZWdpc3RlciAxDQojZGVmaW5lIEFUOTFDX01BVFJJWF9TRlI4ICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMzMwKSAvLyAoTUFUUklYKSAgU3BlY2lhbCBGdW5jdGlvbiBSZWdpc3RlciA4DQojZGVmaW5lIEFUOTFDX01BVFJJWF9WRVIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDNGQykgLy8gKE1BVFJJWCkgSE1BVFJJWDIgVkVSU0lPTiBSRUdJU1RFUiANCiNkZWZpbmUgQVQ5MUNfTUFUUklYX1NGUjEzIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAzNDQpIC8vIChNQVRSSVgpICBTcGVjaWFsIEZ1bmN0aW9uIFJlZ2lzdGVyIDEzDQojZGVmaW5lIEFUOTFDX01BVFJJWF9TRlI1ICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMzI0KSAvLyAoTUFUUklYKSAgU3BlY2lhbCBGdW5jdGlvbiBSZWdpc3RlciA1DQojZGVmaW5lIEFUOTFDX01BVFJJWF9NQ0ZHMCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMjAwKSAvLyAoTUFUUklYKSAgTWFzdGVyIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgMCA6IEFSTSBJIGFuZCBEDQojZGVmaW5lIEFUOTFDX01BVFJJWF9TQ0ZHNiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMjU4KSAvLyAoTUFUUklYKSAgU2xhdmUgQ29uZmlndXJhdGlvbiBSZWdpc3RlciA2DQojZGVmaW5lIEFUOTFDX01BVFJJWF9TRlIxICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMzE0KSAvLyAoTUFUUklYKSAgU3BlY2lhbCBGdW5jdGlvbiBSZWdpc3RlciAxDQojZGVmaW5lIEFUOTFDX01BVFJJWF9TRlIxNCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMzQ4KSAvLyAoTUFUUklYKSAgU3BlY2lhbCBGdW5jdGlvbiBSZWdpc3RlciAxNA0KI2RlZmluZSBBVDkxQ19NQVRSSVhfU0ZSMTUgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDM0QykgLy8gKE1BVFJJWCkgIFNwZWNpYWwgRnVuY3Rpb24gUmVnaXN0ZXIgMTUNCiNkZWZpbmUgQVQ5MUNfTUFUUklYX1NGUjYgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAzMjgpIC8vIChNQVRSSVgpICBTcGVjaWFsIEZ1bmN0aW9uIFJlZ2lzdGVyIDYNCiNkZWZpbmUgQVQ5MUNfTUFUUklYX1NGUjExIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAzM0MpIC8vIChNQVRSSVgpICBTcGVjaWFsIEZ1bmN0aW9uIFJlZ2lzdGVyIDExDQojZGVmaW5lIEFUOTFDX01BVFJJWF9JUE5BTUUyIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAzRjQpIC8vIChNQVRSSVgpIEhNQVRSSVgyIElQTkFNRTIgUkVHSVNURVIgDQojZGVmaW5lIEFUOTFDX01BVFJJWF9BRERSU0laRSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwM0VDKSAvLyAoTUFUUklYKSBITUFUUklYMiBBRERSU0laRSBSRUdJU1RFUiANCiNkZWZpbmUgQVQ5MUNfTUFUUklYX01DRkc1IChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAyMTQpIC8vIChNQVRSSVgpICBNYXN0ZXIgQ29uZmlndXJhdGlvbiBSZWdpc3RlciA1DQojZGVmaW5lIEFUOTFDX01BVFJJWF9TRlI5ICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMzM0KSAvLyAoTUFUUklYKSAgU3BlY2lhbCBGdW5jdGlvbiBSZWdpc3RlciA5DQojZGVmaW5lIEFUOTFDX01BVFJJWF9NQ0ZHMyAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMjBDKSAvLyAoTUFUUklYKSAgTWFzdGVyIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgMw0KI2RlZmluZSBBVDkxQ19NQVRSSVhfU0NGRzQgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDI1MCkgLy8gKE1BVFJJWCkgIFNsYXZlIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgNA0KI2RlZmluZSBBVDkxQ19NQVRSSVhfTUNGRzEgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDIwNCkgLy8gKE1BVFJJWCkgIE1hc3RlciBDb25maWd1cmF0aW9uIFJlZ2lzdGVyIDEgOiBBUk0gUw0KI2RlZmluZSBBVDkxQ19NQVRSSVhfU0NGRzcgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDI1QykgLy8gKE1BVFJJWCkgIFNsYXZlIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIgNQ0KI2RlZmluZSBBVDkxQ19NQVRSSVhfU0ZSMTAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDMzOCkgLy8gKE1BVFJJWCkgIFNwZWNpYWwgRnVuY3Rpb24gUmVnaXN0ZXIgMTANCiNkZWZpbmUgQVQ5MUNfTUFUUklYX1NDRkcyIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAyNDgpIC8vIChNQVRSSVgpICBTbGF2ZSBDb25maWd1cmF0aW9uIFJlZ2lzdGVyIDINCiNkZWZpbmUgQVQ5MUNfTUFUUklYX1NGUjcgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAzMkMpIC8vIChNQVRSSVgpICBTcGVjaWFsIEZ1bmN0aW9uIFJlZ2lzdGVyIDcNCiNkZWZpbmUgQVQ5MUNfTUFUUklYX0lQTkFNRTEgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDNGMCkgLy8gKE1BVFJJWCkgSE1BVFJJWDIgSVBOQU1FMSBSRUdJU1RFUiANCiNkZWZpbmUgQVQ5MUNfTUFUUklYX01DRkc0IChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAyMTApIC8vIChNQVRSSVgpICBNYXN0ZXIgQ29uZmlndXJhdGlvbiBSZWdpc3RlciA0DQojZGVmaW5lIEFUOTFDX01BVFJJWF9TRlIwICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMzEwKSAvLyAoTUFUUklYKSAgU3BlY2lhbCBGdW5jdGlvbiBSZWdpc3RlciAwDQojZGVmaW5lIEFUOTFDX01BVFJJWF9GRUFUVVJFUyAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwM0Y4KSAvLyAoTUFUUklYKSBITUFUUklYMiBGRUFUVVJFUyBSRUdJU1RFUiANCiNkZWZpbmUgQVQ5MUNfTUFUUklYX1NDRkc1IChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAyNTQpIC8vIChNQVRSSVgpICBTbGF2ZSBDb25maWd1cmF0aW9uIFJlZ2lzdGVyIDUNCiNkZWZpbmUgQVQ5MUNfTUFUUklYX01DRkc2IChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTAyMTgpIC8vIChNQVRSSVgpICBNYXN0ZXIgQ29uZmlndXJhdGlvbiBSZWdpc3RlciA2DQojZGVmaW5lIEFUOTFDX01BVFJJWF9TRlI0ICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwMzIwKSAvLyAoTUFUUklYKSAgU3BlY2lhbCBGdW5jdGlvbiBSZWdpc3RlciA0DQovLyA9PT09PT09PT09IFJlZ2lzdGVyIGRlZmluaXRpb24gZm9yIE5WSUMgcGVyaXBoZXJhbCA9PT09PT09PT09IA0KI2RlZmluZSBBVDkxQ19OVklDX01NQVIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHhFMDAwRUQzNCkgLy8gKE5WSUMpIE1lbSBNYW5hZ2UgQWRkcmVzcyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19OVklDX1NUSVIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHhFMDAwRUYwMCkgLy8gKE5WSUMpIFNvZnR3YXJlIFRyaWdnZXIgSW50ZXJydXB0IFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX05WSUNfTU1GUjIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHhFMDAwRUQ1OCkgLy8gKE5WSUMpIE1lbW9yeSBNb2RlbCBGZWF0dXJlIHJlZ2lzdGVyMg0KI2RlZmluZSBBVDkxQ19OVklDX0NQVUlEIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4RTAwMEVEMDApIC8vIChOVklDKSBDUFVJRCBCYXNlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX05WSUNfREZTUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweEUwMDBFRDMwKSAvLyAoTlZJQykgRGVidWcgRmF1bHQgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX05WSUNfSEFORDRQUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweEUwMDBFRDE4KSAvLyAoTlZJQykgU3lzdGVtIEhhbmRsZXJzIDQtNyBQcmlvcml0eSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19OVklDX0hGU1IgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHhFMDAwRUQyQykgLy8gKE5WSUMpIEhhcmQgRmF1bHQgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX05WSUNfUElENiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweEUwMDBFRkQ4KSAvLyAoTlZJQykgUGVyaXBoZXJhbCBpZGVudGlmaWNhdGlvbiByZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19OVklDX1BGUjAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHhFMDAwRUQ0MCkgLy8gKE5WSUMpIFByb2Nlc3NvciBGZWF0dXJlIHJlZ2lzdGVyMA0KI2RlZmluZSBBVDkxQ19OVklDX1ZUT0ZGUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweEUwMDBFRDA4KSAvLyAoTlZJQykgVmVjdG9yIFRhYmxlIE9mZnNldCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19OVklDX0lTUFIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHhFMDAwRTIwMCkgLy8gKE5WSUMpIFNldCBQZW5kaW5nIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX05WSUNfUElEMCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweEUwMDBFRkUwKSAvLyAoTlZJQykgUGVyaXBoZXJhbCBpZGVudGlmaWNhdGlvbiByZWdpc3RlciBiNzowDQojZGVmaW5lIEFUOTFDX05WSUNfUElENyAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweEUwMDBFRkRDKSAvLyAoTlZJQykgUGVyaXBoZXJhbCBpZGVudGlmaWNhdGlvbiByZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19OVklDX1NUSUNLUlZSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4RTAwMEUwMTQpIC8vIChOVklDKSBTeXNUaWNrIFJlbG9hZCBWYWx1ZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19OVklDX1BJRDIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHhFMDAwRUZFOCkgLy8gKE5WSUMpIFBlcmlwaGVyYWwgaWRlbnRpZmljYXRpb24gcmVnaXN0ZXIgYjIzOjE2DQojZGVmaW5lIEFUOTFDX05WSUNfSVNBUjAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHhFMDAwRUQ2MCkgLy8gKE5WSUMpIElTQSBGZWF0dXJlIHJlZ2lzdGVyMA0KI2RlZmluZSBBVDkxQ19OVklDX1NDUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHhFMDAwRUQxMCkgLy8gKE5WSUMpIFN5c3RlbSBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX05WSUNfUElENCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweEUwMDBFRkQwKSAvLyAoTlZJQykgUGVyaXBoZXJhbCBpZGVudGlmaWNhdGlvbiByZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19OVklDX0lTQVIyIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4RTAwMEVENjgpIC8vIChOVklDKSBJU0EgRmVhdHVyZSByZWdpc3RlcjINCiNkZWZpbmUgQVQ5MUNfTlZJQ19JU0VSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4RTAwMEUxMDApIC8vIChOVklDKSBTZXQgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX05WSUNfSVBSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweEUwMDBFNDAwKSAvLyAoTlZJQykgSW50ZXJydXB0IE1hc2sgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfTlZJQ19BSVJDUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweEUwMDBFRDBDKSAvLyAoTlZJQykgQXBwbGljYXRpb24gSW50ZXJydXB0L1Jlc2V0IENvbnRyb2wgUmVnDQojZGVmaW5lIEFUOTFDX05WSUNfQ0lEMiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweEUwMDBFRkY4KSAvLyAoTlZJQykgQ29tcG9uZW50IGlkZW50aWZpY2F0aW9uIHJlZ2lzdGVyIGIyMzoxNg0KI2RlZmluZSBBVDkxQ19OVklDX0lDUFIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHhFMDAwRTI4MCkgLy8gKE5WSUMpIENsZWFyIFBlbmRpbmcgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfTlZJQ19DSUQzIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4RTAwMEVGRkMpIC8vIChOVklDKSBDb21wb25lbnQgaWRlbnRpZmljYXRpb24gcmVnaXN0ZXIgYjMxOjI0DQojZGVmaW5lIEFUOTFDX05WSUNfQ0ZTUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweEUwMDBFRDI4KSAvLyAoTlZJQykgQ29uZmlndXJhYmxlIEZhdWx0IFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19OVklDX0FGUjAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHhFMDAwRUQ0QykgLy8gKE5WSUMpIEF1eGlsaWFyeSBGZWF0dXJlIHJlZ2lzdGVyMA0KI2RlZmluZSBBVDkxQ19OVklDX0lDU1IgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHhFMDAwRUQwNCkgLy8gKE5WSUMpIEludGVycnVwdCBDb250cm9sIFN0YXRlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX05WSUNfQ0NSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweEUwMDBFRDE0KSAvLyAoTlZJQykgQ29uZmlndXJhdGlvbiBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX05WSUNfQ0lEMCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweEUwMDBFRkYwKSAvLyAoTlZJQykgQ29tcG9uZW50IGlkZW50aWZpY2F0aW9uIHJlZ2lzdGVyIGI3OjANCiNkZWZpbmUgQVQ5MUNfTlZJQ19JU0FSMSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweEUwMDBFRDY0KSAvLyAoTlZJQykgSVNBIEZlYXR1cmUgcmVnaXN0ZXIxDQojZGVmaW5lIEFUOTFDX05WSUNfU1RJQ0tDVlIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHhFMDAwRTAxOCkgLy8gKE5WSUMpIFN5c1RpY2sgQ3VycmVudCBWYWx1ZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19OVklDX1NUSUNLQ1NSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4RTAwMEUwMTApIC8vIChOVklDKSBTeXNUaWNrIENvbnRyb2wgYW5kIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19OVklDX0NJRDEgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHhFMDAwRUZGNCkgLy8gKE5WSUMpIENvbXBvbmVudCBpZGVudGlmaWNhdGlvbiByZWdpc3RlciBiMTU6OA0KI2RlZmluZSBBVDkxQ19OVklDX0RGUjAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHhFMDAwRUQ0OCkgLy8gKE5WSUMpIERlYnVnIEZlYXR1cmUgcmVnaXN0ZXIwDQojZGVmaW5lIEFUOTFDX05WSUNfTU1GUjMgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHhFMDAwRUQ1QykgLy8gKE5WSUMpIE1lbW9yeSBNb2RlbCBGZWF0dXJlIHJlZ2lzdGVyMw0KI2RlZmluZSBBVDkxQ19OVklDX01NRlIwIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4RTAwMEVENTApIC8vIChOVklDKSBNZW1vcnkgTW9kZWwgRmVhdHVyZSByZWdpc3RlcjANCiNkZWZpbmUgQVQ5MUNfTlZJQ19TVElDS0NBTFZSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4RTAwMEUwMUMpIC8vIChOVklDKSBTeXNUaWNrIENhbGlicmF0aW9uIFZhbHVlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX05WSUNfUElEMSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweEUwMDBFRkU0KSAvLyAoTlZJQykgUGVyaXBoZXJhbCBpZGVudGlmaWNhdGlvbiByZWdpc3RlciBiMTU6OA0KI2RlZmluZSBBVDkxQ19OVklDX0hBTkQxMlBSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4RTAwMEVEMjApIC8vIChOVklDKSBTeXN0ZW0gSGFuZGxlcnMgMTItMTUgUHJpb3JpdHkgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfTlZJQ19NTUZSMSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweEUwMDBFRDU0KSAvLyAoTlZJQykgTWVtb3J5IE1vZGVsIEZlYXR1cmUgcmVnaXN0ZXIxDQojZGVmaW5lIEFUOTFDX05WSUNfQUZTUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweEUwMDBFRDNDKSAvLyAoTlZJQykgQXV4aWxpYXJ5IEZhdWx0IFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19OVklDX0hBTkRDU1IgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHhFMDAwRUQyNCkgLy8gKE5WSUMpIFN5c3RlbSBIYW5kbGVyIENvbnRyb2wgYW5kIFN0YXRlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX05WSUNfSVNBUjQgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHhFMDAwRUQ3MCkgLy8gKE5WSUMpIElTQSBGZWF0dXJlIHJlZ2lzdGVyNA0KI2RlZmluZSBBVDkxQ19OVklDX0FCUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHhFMDAwRTMwMCkgLy8gKE5WSUMpIEFjdGl2ZSBCaXQgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfTlZJQ19QRlIxIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4RTAwMEVENDQpIC8vIChOVklDKSBQcm9jZXNzb3IgRmVhdHVyZSByZWdpc3RlcjENCiNkZWZpbmUgQVQ5MUNfTlZJQ19QSUQ1IChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4RTAwMEVGRDQpIC8vIChOVklDKSBQZXJpcGhlcmFsIGlkZW50aWZpY2F0aW9uIHJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX05WSUNfSUNUUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweEUwMDBFMDA0KSAvLyAoTlZJQykgSW50ZXJydXB0IENvbnRyb2wgVHlwZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19OVklDX0lDRVIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHhFMDAwRTE4MCkgLy8gKE5WSUMpIENsZWFyIGVuYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19OVklDX1BJRDMgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHhFMDAwRUZFQykgLy8gKE5WSUMpIFBlcmlwaGVyYWwgaWRlbnRpZmljYXRpb24gcmVnaXN0ZXIgYjMxOjI0DQojZGVmaW5lIEFUOTFDX05WSUNfSVNBUjMgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHhFMDAwRUQ2QykgLy8gKE5WSUMpIElTQSBGZWF0dXJlIHJlZ2lzdGVyMw0KI2RlZmluZSBBVDkxQ19OVklDX0hBTkQ4UFIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHhFMDAwRUQxQykgLy8gKE5WSUMpIFN5c3RlbSBIYW5kbGVycyA4LTExIFByaW9yaXR5IFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX05WSUNfQkZBUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweEUwMDBFRDM4KSAvLyAoTlZJQykgQnVzIEZhdWx0IEFkZHJlc3MgUmVnaXN0ZXINCi8vID09PT09PT09PT0gUmVnaXN0ZXIgZGVmaW5pdGlvbiBmb3IgTVBVIHBlcmlwaGVyYWwgPT09PT09PT09PSANCiNkZWZpbmUgQVQ5MUNfTVBVX1JFR19CQVNFX0FERFIzIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4RTAwMEVEQjQpIC8vIChNUFUpIE1QVSBSZWdpb24gQmFzZSBBZGRyZXNzIFJlZ2lzdGVyIGFsaWFzIDMNCiNkZWZpbmUgQVQ5MUNfTVBVX1JFR19OQiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweEUwMDBFRDk4KSAvLyAoTVBVKSBNUFUgUmVnaW9uIE51bWJlciBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19NUFVfQVRUUl9TSVpFMSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweEUwMDBFREE4KSAvLyAoTVBVKSBNUFUgIEF0dHJpYnV0ZSBhbmQgU2l6ZSBSZWdpc3RlciBhbGlhcyAxDQojZGVmaW5lIEFUOTFDX01QVV9SRUdfQkFTRV9BRERSMSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweEUwMDBFREE0KSAvLyAoTVBVKSBNUFUgUmVnaW9uIEJhc2UgQWRkcmVzcyBSZWdpc3RlciBhbGlhcyAxDQojZGVmaW5lIEFUOTFDX01QVV9BVFRSX1NJWkUzIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4RTAwMEVEQjgpIC8vIChNUFUpIE1QVSAgQXR0cmlidXRlIGFuZCBTaXplIFJlZ2lzdGVyIGFsaWFzIDMNCiNkZWZpbmUgQVQ5MUNfTVBVX0NUUkwgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4RTAwMEVEOTQpIC8vIChNUFUpIE1QVSBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX01QVV9BVFRSX1NJWkUyIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4RTAwMEVEQjApIC8vIChNUFUpIE1QVSAgQXR0cmlidXRlIGFuZCBTaXplIFJlZ2lzdGVyIGFsaWFzIDINCiNkZWZpbmUgQVQ5MUNfTVBVX1JFR19CQVNFX0FERFIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHhFMDAwRUQ5QykgLy8gKE1QVSkgTVBVIFJlZ2lvbiBCYXNlIEFkZHJlc3MgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfTVBVX1JFR19CQVNFX0FERFIyIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4RTAwMEVEQUMpIC8vIChNUFUpIE1QVSBSZWdpb24gQmFzZSBBZGRyZXNzIFJlZ2lzdGVyIGFsaWFzIDINCiNkZWZpbmUgQVQ5MUNfTVBVX0FUVFJfU0laRSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweEUwMDBFREEwKSAvLyAoTVBVKSBNUFUgIEF0dHJpYnV0ZSBhbmQgU2l6ZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19NUFVfVFlQRSAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHhFMDAwRUQ5MCkgLy8gKE1QVSkgTVBVIFR5cGUgUmVnaXN0ZXINCi8vID09PT09PT09PT0gUmVnaXN0ZXIgZGVmaW5pdGlvbiBmb3IgQ00zIHBlcmlwaGVyYWwgPT09PT09PT09PSANCiNkZWZpbmUgQVQ5MUNfQ00zX1NIQ1NSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4RTAwMEVEMjQpIC8vIChDTTMpIFN5c3RlbSBIYW5kbGVyIENvbnRyb2wgYW5kIFN0YXRlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0NNM19DQ1IgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweEUwMDBFRDE0KSAvLyAoQ00zKSBDb25maWd1cmF0aW9uIENvbnRyb2wgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfQ00zX0lDU1IgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4RTAwMEVEMDQpIC8vIChDTTMpIEludGVycnVwdCBDb250cm9sIFN0YXRlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0NNM19DUFVJRCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweEUwMDBFRDAwKSAvLyAoQ00zKSBDUFUgSUQgQmFzZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19DTTNfU0NSICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHhFMDAwRUQxMCkgLy8gKENNMykgU3lzdGVtIENvbnRyb2xsZXIgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfQ00zX0FJUkNSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4RTAwMEVEMEMpIC8vIChDTTMpIEFwcGxpY2F0aW9uIEludGVycnVwdCBhbmQgUmVzZXQgQ29udHJvbCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19DTTNfU0hQUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHhFMDAwRUQxOCkgLy8gKENNMykgU3lzdGVtIEhhbmRsZXIgUHJpb3JpdHkgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfQ00zX1ZUT1IgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4RTAwMEVEMDgpIC8vIChDTTMpIFZlY3RvciBUYWJsZSBPZmZzZXQgUmVnaXN0ZXINCi8vID09PT09PT09PT0gUmVnaXN0ZXIgZGVmaW5pdGlvbiBmb3IgUERDX0RCR1UgcGVyaXBoZXJhbCA9PT09PT09PT09IA0KI2RlZmluZSBBVDkxQ19EQkdVX1RQUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDcwOCkgLy8gKFBEQ19EQkdVKSBUcmFuc21pdCBQb2ludGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0RCR1VfUFRDUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwNzIwKSAvLyAoUERDX0RCR1UpIFBEQyBUcmFuc2ZlciBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0RCR1VfVE5DUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwNzFDKSAvLyAoUERDX0RCR1UpIFRyYW5zbWl0IE5leHQgQ291bnRlciBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19EQkdVX1BUU1IgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDcyNCkgLy8gKFBEQ19EQkdVKSBQREMgVHJhbnNmZXIgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0RCR1VfUk5DUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwNzE0KSAvLyAoUERDX0RCR1UpIFJlY2VpdmUgTmV4dCBDb3VudGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0RCR1VfUlBSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwNzAwKSAvLyAoUERDX0RCR1UpIFJlY2VpdmUgUG9pbnRlciBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19EQkdVX1RDUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDcwQykgLy8gKFBEQ19EQkdVKSBUcmFuc21pdCBDb3VudGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0RCR1VfUk5QUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwNzEwKSAvLyAoUERDX0RCR1UpIFJlY2VpdmUgTmV4dCBQb2ludGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0RCR1VfVE5QUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwNzE4KSAvLyAoUERDX0RCR1UpIFRyYW5zbWl0IE5leHQgUG9pbnRlciBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19EQkdVX1JDUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDcwNCkgLy8gKFBEQ19EQkdVKSBSZWNlaXZlIENvdW50ZXIgUmVnaXN0ZXINCi8vID09PT09PT09PT0gUmVnaXN0ZXIgZGVmaW5pdGlvbiBmb3IgREJHVSBwZXJpcGhlcmFsID09PT09PT09PT0gDQojZGVmaW5lIEFUOTFDX0RCR1VfQ1IgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwNjAwKSAvLyAoREJHVSkgQ29udHJvbCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19EQkdVX0lEUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDYwQykgLy8gKERCR1UpIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0RCR1VfQ0lEUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwNzQwKSAvLyAoREJHVSkgQ2hpcCBJRCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19EQkdVX0lQTkFNRTIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDZGNCkgLy8gKERCR1UpIERCR1UgSVBOQU1FMiBSRUdJU1RFUiANCiNkZWZpbmUgQVQ5MUNfREJHVV9GRUFUVVJFUyAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwNkY4KSAvLyAoREJHVSkgREJHVSBGRUFUVVJFUyBSRUdJU1RFUiANCiNkZWZpbmUgQVQ5MUNfREJHVV9GTlRSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTA2NDgpIC8vIChEQkdVKSBGb3JjZSBOVFJTVCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19EQkdVX1JIUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDYxOCkgLy8gKERCR1UpIFJlY2VpdmVyIEhvbGRpbmcgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfREJHVV9USFIgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTA2MUMpIC8vIChEQkdVKSBUcmFuc21pdHRlciBIb2xkaW5nIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0RCR1VfQUREUlNJWkUgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDZFQykgLy8gKERCR1UpIERCR1UgQUREUlNJWkUgUkVHSVNURVIgDQojZGVmaW5lIEFUOTFDX0RCR1VfTVIgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwNjA0KSAvLyAoREJHVSkgTW9kZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19EQkdVX0lFUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDYwOCkgLy8gKERCR1UpIEludGVycnVwdCBFbmFibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfREJHVV9CUkdSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTA2MjApIC8vIChEQkdVKSBCYXVkIFJhdGUgR2VuZXJhdG9yIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0RCR1VfQ1NSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwNjE0KSAvLyAoREJHVSkgQ2hhbm5lbCBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfREJHVV9WRVIgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTA2RkMpIC8vIChEQkdVKSBEQkdVIFZFUlNJT04gUkVHSVNURVIgDQojZGVmaW5lIEFUOTFDX0RCR1VfSU1SICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwNjEwKSAvLyAoREJHVSkgSW50ZXJydXB0IE1hc2sgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfREJHVV9JUE5BTUUxIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTA2RjApIC8vIChEQkdVKSBEQkdVIElQTkFNRTEgUkVHSVNURVIgDQojZGVmaW5lIEFUOTFDX0RCR1VfRVhJRCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwNzQ0KSAvLyAoREJHVSkgQ2hpcCBJRCBFeHRlbnNpb24gUmVnaXN0ZXINCi8vID09PT09PT09PT0gUmVnaXN0ZXIgZGVmaW5pdGlvbiBmb3IgUElPQSBwZXJpcGhlcmFsID09PT09PT09PT0gDQojZGVmaW5lIEFUOTFDX1BJT0FfUERSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwQzA0KSAvLyAoUElPQSkgUElPIERpc2FibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQV9GUkxIU1IgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMENEOCkgLy8gKFBJT0EpIEZhbGwvUmlzZSAtIExvdy9IaWdoIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9BX0tJTVIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMEQzOCkgLy8gKFBJT0EpIEtleXBhZCBDb250cm9sbGVyIEludGVycnVwdCBNYXNrIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0FfTFNSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwQ0M0KSAvLyAoUElPQSkgTGV2ZWwgU2VsZWN0IFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0FfSUZTUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwQzI4KSAvLyAoUElPQSkgSW5wdXQgRmlsdGVyIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9BX0tLUlIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMEQ0NCkgLy8gKFBJT0EpIEtleXBhZCBDb250cm9sbGVyIEtleSBSZWxlYXNlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0FfT0RSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwQzE0KSAvLyAoUElPQSkgT3V0cHV0IERpc2FibGUgUmVnaXN0ZXJyDQojZGVmaW5lIEFUOTFDX1BJT0FfU0NJRlNSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTBDODApIC8vIChQSU9BKSBTeXN0ZW0gQ2xvY2sgR2xpdGNoIElucHV0IEZpbHRlciBTZWxlY3QgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQV9QRVIgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTBDMDApIC8vIChQSU9BKSBQSU8gRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0FfVkVSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwQ0ZDKSAvLyAoUElPQSkgUElPIFZFUlNJT04gUkVHSVNURVIgDQojZGVmaW5lIEFUOTFDX1BJT0FfT1dTUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwQ0E4KSAvLyAoUElPQSkgT3V0cHV0IFdyaXRlIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9BX0tTUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMEQzQykgLy8gKFBJT0EpIEtleXBhZCBDb250cm9sbGVyIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9BX0lNUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMEM0OCkgLy8gKFBJT0EpIEludGVycnVwdCBNYXNrIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0FfT1dEUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwQ0E0KSAvLyAoUElPQSkgT3V0cHV0IFdyaXRlIERpc2FibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQV9NRFNSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTBDNTgpIC8vIChQSU9BKSBNdWx0aS1kcml2ZXIgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0FfSUZEUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwQzI0KSAvLyAoUElPQSkgSW5wdXQgRmlsdGVyIERpc2FibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQV9BSU1EUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwQ0I0KSAvLyAoUElPQSkgQWRkaXRpb25hbCBJbnRlcnJ1cHQgTW9kZXMgRGlzYWJsZXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQV9DT0RSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTBDMzQpIC8vIChQSU9BKSBDbGVhciBPdXRwdXQgRGF0YSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9BX1NDRFIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMEM4QykgLy8gKFBJT0EpIFNsb3cgQ2xvY2sgRGl2aWRlciBEZWJvdW5jaW5nIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0FfS0lFUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwRDMwKSAvLyAoUElPQSkgS2V5cGFkIENvbnRyb2xsZXIgSW50ZXJydXB0IEVuYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9BX1JFSExTUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwQ0Q0KSAvLyAoUElPQSkgUmlzaW5nIEVkZ2UvIEhpZ2ggTGV2ZWwgU2VsZWN0IFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0FfSVNSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwQzRDKSAvLyAoUElPQSkgSW50ZXJydXB0IFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9BX0VTUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMENDMCkgLy8gKFBJT0EpIEVkZ2UgU2VsZWN0IFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0FfUFBVRFIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMEM2MCkgLy8gKFBJT0EpIFB1bGwtdXAgRGlzYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9BX01ERFIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMEM1NCkgLy8gKFBJT0EpIE11bHRpLWRyaXZlciBEaXNhYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0FfUFNSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwQzA4KSAvLyAoUElPQSkgUElPIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9BX1BEU1IgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMEMzQykgLy8gKFBJT0EpIFBpbiBEYXRhIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9BX0lGREdTUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwQzg4KSAvLyAoUElPQSkgR2xpdGNoIG9yIERlYm91bmNpbmcgSW5wdXQgRmlsdGVyIENsb2NrIFNlbGVjdGlvbiBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQV9GRUxMU1IgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMENEMCkgLy8gKFBJT0EpIEZhbGxpbmcgRWRnZS9Mb3cgTGV2ZWwgU2VsZWN0IFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0FfUFBVU1IgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMEM2OCkgLy8gKFBJT0EpIFB1bGwtdXAgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0FfT0VSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwQzEwKSAvLyAoUElPQSkgT3V0cHV0IEVuYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9BX09TUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMEMxOCkgLy8gKFBJT0EpIE91dHB1dCBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQV9LS1BSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTBENDApIC8vIChQSU9BKSBLZXlwYWQgQ29udHJvbGxlciBLZXkgUHJlc3MgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQV9BSU1NUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwQ0I4KSAvLyAoUElPQSkgQWRkaXRpb25hbCBJbnRlcnJ1cHQgTW9kZXMgTWFzayBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9BX0tSQ1IgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMEQyNCkgLy8gKFBJT0EpIEtleXBhZCBDb250cm9sbGVyIFJvdyBDb2x1bW4gUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQV9JRVIgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTBDNDApIC8vIChQSU9BKSBJbnRlcnJ1cHQgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0FfS0VSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwRDIwKSAvLyAoUElPQSkgS2V5cGFkIENvbnRyb2xsZXIgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0FfUFBVRVIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMEM2NCkgLy8gKFBJT0EpIFB1bGwtdXAgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0FfS0lEUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwRDM0KSAvLyAoUElPQSkgS2V5cGFkIENvbnRyb2xsZXIgSW50ZXJydXB0IERpc2FibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQV9BQlNSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTBDNzApIC8vIChQSU9BKSBQZXJpcGhlcmFsIEFCIFNlbGVjdCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9BX0xPQ0tTUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwQ0UwKSAvLyAoUElPQSkgTG9jayBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQV9ESUZTUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwQzg0KSAvLyAoUElPQSkgRGVib3VuY2luZyBJbnB1dCBGaWx0ZXIgU2VsZWN0IFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0FfTURFUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwQzUwKSAvLyAoUElPQSkgTXVsdGktZHJpdmVyIEVuYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9BX0FJTUVSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTBDQjApIC8vIChQSU9BKSBBZGRpdGlvbmFsIEludGVycnVwdCBNb2RlcyBFbmFibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQV9FTFNSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTBDQzgpIC8vIChQSU9BKSBFZGdlL0xldmVsIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9BX0lGRVIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMEMyMCkgLy8gKFBJT0EpIElucHV0IEZpbHRlciBFbmFibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQV9LRFIgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTBEMjgpIC8vIChQSU9BKSBLZXlwYWQgQ29udHJvbGxlciBEZWJvdW5jaW5nIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0FfSURSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwQzQ0KSAvLyAoUElPQSkgSW50ZXJydXB0IERpc2FibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQV9PV0VSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTBDQTApIC8vIChQSU9BKSBPdXRwdXQgV3JpdGUgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0FfT0RTUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwQzM4KSAvLyAoUElPQSkgT3V0cHV0IERhdGEgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0FfU09EUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwQzMwKSAvLyAoUElPQSkgU2V0IE91dHB1dCBEYXRhIFJlZ2lzdGVyDQovLyA9PT09PT09PT09IFJlZ2lzdGVyIGRlZmluaXRpb24gZm9yIFBJT0IgcGVyaXBoZXJhbCA9PT09PT09PT09IA0KI2RlZmluZSBBVDkxQ19QSU9CX0tJRFIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMEYzNCkgLy8gKFBJT0IpIEtleXBhZCBDb250cm9sbGVyIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0JfT1dTUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwRUE4KSAvLyAoUElPQikgT3V0cHV0IFdyaXRlIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9CX1BTUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMEUwOCkgLy8gKFBJT0IpIFBJTyBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQl9NREVSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTBFNTApIC8vIChQSU9CKSBNdWx0aS1kcml2ZXIgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0JfT0RSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwRTE0KSAvLyAoUElPQikgT3V0cHV0IERpc2FibGUgUmVnaXN0ZXJyDQojZGVmaW5lIEFUOTFDX1BJT0JfSURSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwRTQ0KSAvLyAoUElPQikgSW50ZXJydXB0IERpc2FibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQl9BSU1FUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwRUIwKSAvLyAoUElPQikgQWRkaXRpb25hbCBJbnRlcnJ1cHQgTW9kZXMgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0JfRElGU1IgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMEU4NCkgLy8gKFBJT0IpIERlYm91bmNpbmcgSW5wdXQgRmlsdGVyIFNlbGVjdCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9CX1BEUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMEUwNCkgLy8gKFBJT0IpIFBJTyBEaXNhYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0JfUkVITFNSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTBFRDQpIC8vIChQSU9CKSBSaXNpbmcgRWRnZS8gSGlnaCBMZXZlbCBTZWxlY3QgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQl9QRFNSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTBFM0MpIC8vIChQSU9CKSBQaW4gRGF0YSBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQl9QUFVEUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwRTYwKSAvLyAoUElPQikgUHVsbC11cCBEaXNhYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0JfTFNSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwRUM0KSAvLyAoUElPQikgTGV2ZWwgU2VsZWN0IFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0JfT1dEUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwRUE0KSAvLyAoUElPQikgT3V0cHV0IFdyaXRlIERpc2FibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQl9GRUxMU1IgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMEVEMCkgLy8gKFBJT0IpIEZhbGxpbmcgRWRnZS9Mb3cgTGV2ZWwgU2VsZWN0IFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0JfSUZFUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwRTIwKSAvLyAoUElPQikgSW5wdXQgRmlsdGVyIEVuYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9CX0FCU1IgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMEU3MCkgLy8gKFBJT0IpIFBlcmlwaGVyYWwgQUIgU2VsZWN0IFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0JfS0lNUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwRjM4KSAvLyAoUElPQikgS2V5cGFkIENvbnRyb2xsZXIgSW50ZXJydXB0IE1hc2sgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQl9LS1BSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTBGNDApIC8vIChQSU9CKSBLZXlwYWQgQ29udHJvbGxlciBLZXkgUHJlc3MgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQl9GUkxIU1IgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMEVEOCkgLy8gKFBJT0IpIEZhbGwvUmlzZSAtIExvdy9IaWdoIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9CX0FJTURSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTBFQjQpIC8vIChQSU9CKSBBZGRpdGlvbmFsIEludGVycnVwdCBNb2RlcyBEaXNhYmxlcyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9CX1NDSUZTUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwRTgwKSAvLyAoUElPQikgU3lzdGVtIENsb2NrIEdsaXRjaCBJbnB1dCBGaWx0ZXIgU2VsZWN0IFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0JfVkVSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwRUZDKSAvLyAoUElPQikgUElPIFZFUlNJT04gUkVHSVNURVIgDQojZGVmaW5lIEFUOTFDX1BJT0JfUEVSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwRTAwKSAvLyAoUElPQikgUElPIEVuYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9CX0VMU1IgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMEVDOCkgLy8gKFBJT0IpIEVkZ2UvTGV2ZWwgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0JfSU1SICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwRTQ4KSAvLyAoUElPQikgSW50ZXJydXB0IE1hc2sgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQl9QUFVTUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwRTY4KSAvLyAoUElPQikgUHVsbC11cCBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQl9TQ0RSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTBFOEMpIC8vIChQSU9CKSBTbG93IENsb2NrIERpdmlkZXIgRGVib3VuY2luZyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9CX0tTUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMEYzQykgLy8gKFBJT0IpIEtleXBhZCBDb250cm9sbGVyIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9CX0lGREdTUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwRTg4KSAvLyAoUElPQikgR2xpdGNoIG9yIERlYm91bmNpbmcgSW5wdXQgRmlsdGVyIENsb2NrIFNlbGVjdGlvbiBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQl9FU1IgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTBFQzApIC8vIChQSU9CKSBFZGdlIFNlbGVjdCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9CX09EU1IgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMEUzOCkgLy8gKFBJT0IpIE91dHB1dCBEYXRhIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9CX0lGRFIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMEUyNCkgLy8gKFBJT0IpIElucHV0IEZpbHRlciBEaXNhYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0JfU09EUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwRTMwKSAvLyAoUElPQikgU2V0IE91dHB1dCBEYXRhIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0JfSUVSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwRTQwKSAvLyAoUElPQikgSW50ZXJydXB0IEVuYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9CX01EU1IgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMEU1OCkgLy8gKFBJT0IpIE11bHRpLWRyaXZlciBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQl9JU1IgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTBFNEMpIC8vIChQSU9CKSBJbnRlcnJ1cHQgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0JfSUZTUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwRTI4KSAvLyAoUElPQikgSW5wdXQgRmlsdGVyIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9CX0tFUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMEYyMCkgLy8gKFBJT0IpIEtleXBhZCBDb250cm9sbGVyIEVuYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9CX0tLUlIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMEY0NCkgLy8gKFBJT0IpIEtleXBhZCBDb250cm9sbGVyIEtleSBSZWxlYXNlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0JfUFBVRVIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMEU2NCkgLy8gKFBJT0IpIFB1bGwtdXAgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0JfTE9DS1NSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTBFRTApIC8vIChQSU9CKSBMb2NrIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9CX09XRVIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMEVBMCkgLy8gKFBJT0IpIE91dHB1dCBXcml0ZSBFbmFibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQl9LSUVSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTBGMzApIC8vIChQSU9CKSBLZXlwYWQgQ29udHJvbGxlciBJbnRlcnJ1cHQgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0JfTUREUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwRTU0KSAvLyAoUElPQikgTXVsdGktZHJpdmVyIERpc2FibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQl9LUkNSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTBGMjQpIC8vIChQSU9CKSBLZXlwYWQgQ29udHJvbGxlciBSb3cgQ29sdW1uIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0JfQ09EUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwRTM0KSAvLyAoUElPQikgQ2xlYXIgT3V0cHV0IERhdGEgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQl9LRFIgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTBGMjgpIC8vIChQSU9CKSBLZXlwYWQgQ29udHJvbGxlciBEZWJvdW5jaW5nIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0JfQUlNTVIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMEVCOCkgLy8gKFBJT0IpIEFkZGl0aW9uYWwgSW50ZXJydXB0IE1vZGVzIE1hc2sgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQl9PRVIgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTBFMTApIC8vIChQSU9CKSBPdXRwdXQgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0JfT1NSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwRTE4KSAvLyAoUElPQikgT3V0cHV0IFN0YXR1cyBSZWdpc3Rlcg0KLy8gPT09PT09PT09PSBSZWdpc3RlciBkZWZpbml0aW9uIGZvciBQSU9DIHBlcmlwaGVyYWwgPT09PT09PT09PSANCiNkZWZpbmUgQVQ5MUNfUElPQ19GRUxMU1IgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMTBEMCkgLy8gKFBJT0MpIEZhbGxpbmcgRWRnZS9Mb3cgTGV2ZWwgU2VsZWN0IFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0NfRlJMSFNSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTEwRDgpIC8vIChQSU9DKSBGYWxsL1Jpc2UgLSBMb3cvSGlnaCBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQ19NRERSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTEwNTQpIC8vIChQSU9DKSBNdWx0aS1kcml2ZXIgRGlzYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9DX0lGREdTUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMDg4KSAvLyAoUElPQykgR2xpdGNoIG9yIERlYm91bmNpbmcgSW5wdXQgRmlsdGVyIENsb2NrIFNlbGVjdGlvbiBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQ19BQlNSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTEwNzApIC8vIChQSU9DKSBQZXJpcGhlcmFsIEFCIFNlbGVjdCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9DX0tJTVIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMTEzOCkgLy8gKFBJT0MpIEtleXBhZCBDb250cm9sbGVyIEludGVycnVwdCBNYXNrIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0NfS1JDUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMTI0KSAvLyAoUElPQykgS2V5cGFkIENvbnRyb2xsZXIgUm93IENvbHVtbiBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9DX09EU1IgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMTAzOCkgLy8gKFBJT0MpIE91dHB1dCBEYXRhIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9DX09TUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMTAxOCkgLy8gKFBJT0MpIE91dHB1dCBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQ19JRkVSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTEwMjApIC8vIChQSU9DKSBJbnB1dCBGaWx0ZXIgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0NfS0tQUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMTQwKSAvLyAoUElPQykgS2V5cGFkIENvbnRyb2xsZXIgS2V5IFByZXNzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0NfTURTUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMDU4KSAvLyAoUElPQykgTXVsdGktZHJpdmVyIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9DX0lGRFIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMTAyNCkgLy8gKFBJT0MpIElucHV0IEZpbHRlciBEaXNhYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0NfTURFUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMDUwKSAvLyAoUElPQykgTXVsdGktZHJpdmVyIEVuYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9DX1NDRFIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMTA4QykgLy8gKFBJT0MpIFNsb3cgQ2xvY2sgRGl2aWRlciBEZWJvdW5jaW5nIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0NfU0NJRlNSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTEwODApIC8vIChQSU9DKSBTeXN0ZW0gQ2xvY2sgR2xpdGNoIElucHV0IEZpbHRlciBTZWxlY3QgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQ19JRVIgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTEwNDApIC8vIChQSU9DKSBJbnRlcnJ1cHQgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0NfS0RSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMTI4KSAvLyAoUElPQykgS2V5cGFkIENvbnRyb2xsZXIgRGVib3VuY2luZyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9DX09XRFIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMTBBNCkgLy8gKFBJT0MpIE91dHB1dCBXcml0ZSBEaXNhYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0NfSUZTUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMDI4KSAvLyAoUElPQykgSW5wdXQgRmlsdGVyIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9DX0lTUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMTA0QykgLy8gKFBJT0MpIEludGVycnVwdCBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQ19QUFVEUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMDYwKSAvLyAoUElPQykgUHVsbC11cCBEaXNhYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0NfUERTUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMDNDKSAvLyAoUElPQykgUGluIERhdGEgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0NfS0tSUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMTQ0KSAvLyAoUElPQykgS2V5cGFkIENvbnRyb2xsZXIgS2V5IFJlbGVhc2UgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQ19BSU1EUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMEI0KSAvLyAoUElPQykgQWRkaXRpb25hbCBJbnRlcnJ1cHQgTW9kZXMgRGlzYWJsZXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQ19MU1IgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTEwQzQpIC8vIChQSU9DKSBMZXZlbCBTZWxlY3QgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQ19QUFVFUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMDY0KSAvLyAoUElPQykgUHVsbC11cCBFbmFibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQ19BSU1FUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMEIwKSAvLyAoUElPQykgQWRkaXRpb25hbCBJbnRlcnJ1cHQgTW9kZXMgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0NfT0VSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMDEwKSAvLyAoUElPQykgT3V0cHV0IEVuYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9DX0NPRFIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMTAzNCkgLy8gKFBJT0MpIENsZWFyIE91dHB1dCBEYXRhIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0NfQUlNTVIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMTBCOCkgLy8gKFBJT0MpIEFkZGl0aW9uYWwgSW50ZXJydXB0IE1vZGVzIE1hc2sgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQ19PV0VSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTEwQTApIC8vIChQSU9DKSBPdXRwdXQgV3JpdGUgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0NfVkVSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMEZDKSAvLyAoUElPQykgUElPIFZFUlNJT04gUkVHSVNURVIgDQojZGVmaW5lIEFUOTFDX1BJT0NfSU1SICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMDQ4KSAvLyAoUElPQykgSW50ZXJydXB0IE1hc2sgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQ19QUFVTUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMDY4KSAvLyAoUElPQykgUHVsbC11cCBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQ19JRFIgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTEwNDQpIC8vIChQSU9DKSBJbnRlcnJ1cHQgRGlzYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9DX0RJRlNSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTEwODQpIC8vIChQSU9DKSBEZWJvdW5jaW5nIElucHV0IEZpbHRlciBTZWxlY3QgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQ19LSURSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTExMzQpIC8vIChQSU9DKSBLZXlwYWQgQ29udHJvbGxlciBJbnRlcnJ1cHQgRGlzYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9DX0tTUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMTEzQykgLy8gKFBJT0MpIEtleXBhZCBDb250cm9sbGVyIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9DX1JFSExTUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMEQ0KSAvLyAoUElPQykgUmlzaW5nIEVkZ2UvIEhpZ2ggTGV2ZWwgU2VsZWN0IFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0NfRVNSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMEMwKSAvLyAoUElPQykgRWRnZSBTZWxlY3QgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQ19LSUVSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTExMzApIC8vIChQSU9DKSBLZXlwYWQgQ29udHJvbGxlciBJbnRlcnJ1cHQgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0NfRUxTUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMEM4KSAvLyAoUElPQykgRWRnZS9MZXZlbCBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQ19TT0RSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTEwMzApIC8vIChQSU9DKSBTZXQgT3V0cHV0IERhdGEgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUElPQ19QU1IgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTEwMDgpIC8vIChQSU9DKSBQSU8gU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0NfS0VSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMTIwKSAvLyAoUElPQykgS2V5cGFkIENvbnRyb2xsZXIgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0NfT0RSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMDE0KSAvLyAoUElPQykgT3V0cHV0IERpc2FibGUgUmVnaXN0ZXJyDQojZGVmaW5lIEFUOTFDX1BJT0NfT1dTUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMEE4KSAvLyAoUElPQykgT3V0cHV0IFdyaXRlIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9DX1BEUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMTAwNCkgLy8gKFBJT0MpIFBJTyBEaXNhYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BJT0NfTE9DS1NSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTEwRTApIC8vIChQSU9DKSBMb2NrIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QSU9DX1BFUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMTAwMCkgLy8gKFBJT0MpIFBJTyBFbmFibGUgUmVnaXN0ZXINCi8vID09PT09PT09PT0gUmVnaXN0ZXIgZGVmaW5pdGlvbiBmb3IgUE1DIHBlcmlwaGVyYWwgPT09PT09PT09PSANCiNkZWZpbmUgQVQ5MUNfUE1DX1BMTEFSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTA0MjgpIC8vIChQTUMpIFBMTCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QTUNfVUNLUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDQxQykgLy8gKFBNQykgVVRNSSBDbG9jayBDb25maWd1cmF0aW9uIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BNQ19GU01SICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwNDcwKSAvLyAoUE1DKSBGYXN0IFN0YXJ0dXAgTW9kZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QTUNfTUNLUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDQzMCkgLy8gKFBNQykgTWFzdGVyIENsb2NrIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BNQ19TQ0VSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwNDAwKSAvLyAoUE1DKSBTeXN0ZW0gQ2xvY2sgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BNQ19QQ1NSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwNDE4KSAvLyAoUE1DKSBQZXJpcGhlcmFsIENsb2NrIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QTUNfTUNGUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDQyNCkgLy8gKFBNQykgTWFpbiBDbG9jayAgRnJlcXVlbmN5IFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BNQ19GT0NSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwNDc4KSAvLyAoUE1DKSBGYXVsdCBPdXRwdXQgQ2xlYXIgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUE1DX0ZTUFIgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTA0NzQpIC8vIChQTUMpIEZhc3QgU3RhcnR1cCBQb2xhcml0eSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QTUNfU0NTUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDQwOCkgLy8gKFBNQykgU3lzdGVtIENsb2NrIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QTUNfSURSICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDQ2NCkgLy8gKFBNQykgSW50ZXJydXB0IERpc2FibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUE1DX1ZFUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTA0RkMpIC8vIChQTUMpIEFQTUMgVkVSU0lPTiBSRUdJU1RFUg0KI2RlZmluZSBBVDkxQ19QTUNfSU1SICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDQ2QykgLy8gKFBNQykgSW50ZXJydXB0IE1hc2sgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUE1DX0lQTkFNRTIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDRGNCkgLy8gKFBNQykgUE1DIElQTkFNRTIgUkVHSVNURVIgDQojZGVmaW5lIEFUOTFDX1BNQ19TQ0RSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwNDA0KSAvLyAoUE1DKSBTeXN0ZW0gQ2xvY2sgRGlzYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QTUNfUENLUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDQ0MCkgLy8gKFBNQykgUHJvZ3JhbW1hYmxlIENsb2NrIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BNQ19BRERSU0laRSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwNEVDKSAvLyAoUE1DKSBQTUMgQUREUlNJWkUgUkVHSVNURVIgDQojZGVmaW5lIEFUOTFDX1BNQ19QQ0RSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwNDE0KSAvLyAoUE1DKSBQZXJpcGhlcmFsIENsb2NrIERpc2FibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUE1DX01PUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTA0MjApIC8vIChQTUMpIE1haW4gT3NjaWxsYXRvciBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QTUNfU1IgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDQ2OCkgLy8gKFBNQykgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BNQ19JRVIgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwNDYwKSAvLyAoUE1DKSBJbnRlcnJ1cHQgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BNQ19JUE5BTUUxIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTA0RjApIC8vIChQTUMpIFBNQyBJUE5BTUUxIFJFR0lTVEVSIA0KI2RlZmluZSBBVDkxQ19QTUNfUENFUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDQxMCkgLy8gKFBNQykgUGVyaXBoZXJhbCBDbG9jayBFbmFibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUE1DX0ZFQVRVUkVTIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTA0RjgpIC8vIChQTUMpIFBNQyBGRUFUVVJFUyBSRUdJU1RFUiANCi8vID09PT09PT09PT0gUmVnaXN0ZXIgZGVmaW5pdGlvbiBmb3IgQ0tHUiBwZXJpcGhlcmFsID09PT09PT09PT0gDQojZGVmaW5lIEFUOTFDX0NLR1JfUExMQVIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDQyOCkgLy8gKENLR1IpIFBMTCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19DS0dSX1VDS1IgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDQxQykgLy8gKENLR1IpIFVUTUkgQ2xvY2sgQ29uZmlndXJhdGlvbiBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19DS0dSX01PUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDQyMCkgLy8gKENLR1IpIE1haW4gT3NjaWxsYXRvciBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19DS0dSX01DRlIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMDQyNCkgLy8gKENLR1IpIE1haW4gQ2xvY2sgIEZyZXF1ZW5jeSBSZWdpc3Rlcg0KLy8gPT09PT09PT09PSBSZWdpc3RlciBkZWZpbml0aW9uIGZvciBSU1RDIHBlcmlwaGVyYWwgPT09PT09PT09PSANCiNkZWZpbmUgQVQ5MUNfUlNUQ19WRVIgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTEyRkMpIC8vIChSU1RDKSBWZXJzaW9uIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1JTVENfUkNSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMjAwKSAvLyAoUlNUQykgUmVzZXQgQ29udHJvbCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19SU1RDX1JNUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMTIwOCkgLy8gKFJTVEMpIFJlc2V0IE1vZGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUlNUQ19SU1IgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTEyMDQpIC8vIChSU1RDKSBSZXNldCBTdGF0dXMgUmVnaXN0ZXINCi8vID09PT09PT09PT0gUmVnaXN0ZXIgZGVmaW5pdGlvbiBmb3IgU1VQQyBwZXJpcGhlcmFsID09PT09PT09PT0gDQojZGVmaW5lIEFUOTFDX1NVUENfV1VJUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMjIwKSAvLyAoU1VQQykgV2FrZSBVcCBJbnB1dHMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfU1VQQ19DUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTEyMTApIC8vIChTVVBDKSBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1NVUENfTVIgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMjE4KSAvLyAoU1VQQykgTW9kZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19TVVBDX0ZXVVRSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTEyMjgpIC8vIChTVVBDKSBGbGFzaCBXYWtlLXVwIFRpbWVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1NVUENfU1IgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMjI0KSAvLyAoU1VQQykgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1NVUENfV1VNUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMjFDKSAvLyAoU1VQQykgV2FrZSBVcCBNb2RlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1NVUENfQk9NUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMjE0KSAvLyAoU1VQQykgQnJvd24gT3V0IE1vZGUgUmVnaXN0ZXINCi8vID09PT09PT09PT0gUmVnaXN0ZXIgZGVmaW5pdGlvbiBmb3IgUlRUQyBwZXJpcGhlcmFsID09PT09PT09PT0gDQojZGVmaW5lIEFUOTFDX1JUVENfUlRWUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMjM4KSAvLyAoUlRUQykgUmVhbC10aW1lIFZhbHVlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1JUVENfUlRBUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMjM0KSAvLyAoUlRUQykgUmVhbC10aW1lIEFsYXJtIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1JUVENfUlRNUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMjMwKSAvLyAoUlRUQykgUmVhbC10aW1lIE1vZGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUlRUQ19SVFNSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTEyM0MpIC8vIChSVFRDKSBSZWFsLXRpbWUgU3RhdHVzIFJlZ2lzdGVyDQovLyA9PT09PT09PT09IFJlZ2lzdGVyIGRlZmluaXRpb24gZm9yIFdEVEMgcGVyaXBoZXJhbCA9PT09PT09PT09IA0KI2RlZmluZSBBVDkxQ19XRFRDX1dEU1IgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMTI1OCkgLy8gKFdEVEMpIFdhdGNoZG9nIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19XRFRDX1dETVIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMTI1NCkgLy8gKFdEVEMpIFdhdGNoZG9nIE1vZGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfV0RUQ19XRENSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTEyNTApIC8vIChXRFRDKSBXYXRjaGRvZyBDb250cm9sIFJlZ2lzdGVyDQovLyA9PT09PT09PT09IFJlZ2lzdGVyIGRlZmluaXRpb24gZm9yIFJUQyBwZXJpcGhlcmFsID09PT09PT09PT0gDQojZGVmaW5lIEFUOTFDX1JUQ19JTVIgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMjg4KSAvLyAoUlRDKSBJbnRlcnJ1cHQgTWFzayBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19SVENfU0NDUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMTI3QykgLy8gKFJUQykgU3RhdHVzIENsZWFyIENvbW1hbmQgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUlRDX0NBTFIgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTEyNkMpIC8vIChSVEMpIENhbGVuZGFyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1JUQ19NUiAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMjY0KSAvLyAoUlRDKSBNb2RlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1JUQ19USU1SICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMjY4KSAvLyAoUlRDKSBUaW1lIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1JUQ19DQUxBTFIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMTI3NCkgLy8gKFJUQykgQ2FsZW5kYXIgQWxhcm0gUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUlRDX1ZFUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTEyOEMpIC8vIChSVEMpIFZhbGlkIEVudHJ5IFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1JUQ19DUiAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMjYwKSAvLyAoUlRDKSBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1JUQ19JRFIgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUxMjg0KSAvLyAoUlRDKSBJbnRlcnJ1cHQgRGlzYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19SVENfVElNQUxSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTEyNzApIC8vIChSVEMpIFRpbWUgQWxhcm0gUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUlRDX0lFUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTEyODApIC8vIChSVEMpIEludGVycnVwdCBFbmFibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUlRDX1NSICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTEyNzgpIC8vIChSVEMpIFN0YXR1cyBSZWdpc3Rlcg0KLy8gPT09PT09PT09PSBSZWdpc3RlciBkZWZpbml0aW9uIGZvciBBREMwIHBlcmlwaGVyYWwgPT09PT09PT09PSANCiNkZWZpbmUgQVQ5MUNfQURDMF9DRFI0IChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTgwNDApIC8vIChBREMwKSBBREMgQ2hhbm5lbCBEYXRhIFJlZ2lzdGVyIDQNCiNkZWZpbmUgQVQ5MUNfQURDMF9DRFIyIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTgwMzgpIC8vIChBREMwKSBBREMgQ2hhbm5lbCBEYXRhIFJlZ2lzdGVyIDINCiNkZWZpbmUgQVQ5MUNfQURDMF9DSEVSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTgwMTApIC8vIChBREMwKSBBREMgQ2hhbm5lbCBFbmFibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfQURDMF9TUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTgwMUMpIC8vIChBREMwKSBBREMgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0FEQzBfSVBOQU1FMSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE4MEYwKSAvLyAoQURDMCkgQURDIElQTkFNRTEgUkVHSVNURVIgDQojZGVmaW5lIEFUOTFDX0FEQzBfSUVSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE4MDI0KSAvLyAoQURDMCkgQURDIEludGVycnVwdCBFbmFibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfQURDMF9DUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTgwMDApIC8vIChBREMwKSBBREMgQ29udHJvbCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19BREMwX0NEUjYgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBODA0OCkgLy8gKEFEQzApIEFEQyBDaGFubmVsIERhdGEgUmVnaXN0ZXIgNg0KI2RlZmluZSBBVDkxQ19BREMwX0NIRFIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBODAxNCkgLy8gKEFEQzApIEFEQyBDaGFubmVsIERpc2FibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfQURDMF9DRFIzIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTgwM0MpIC8vIChBREMwKSBBREMgQ2hhbm5lbCBEYXRhIFJlZ2lzdGVyIDMNCiNkZWZpbmUgQVQ5MUNfQURDMF9BQ1IgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTgwNjQpIC8vIChBREMwKSBBbmFsb2cgQ29udHJvbCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19BREMwX0lEUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBODAyOCkgLy8gKEFEQzApIEFEQyBJbnRlcnJ1cHQgRGlzYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19BREMwX1ZFUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBODBGQykgLy8gKEFEQzApIEFEQyBWRVJTSU9OIFJFR0lTVEVSDQojZGVmaW5lIEFUOTFDX0FEQzBfQ0RSNyAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE4MDRDKSAvLyAoQURDMCkgQURDIENoYW5uZWwgRGF0YSBSZWdpc3RlciA3DQojZGVmaW5lIEFUOTFDX0FEQzBfQ0hTUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE4MDE4KSAvLyAoQURDMCkgQURDIENoYW5uZWwgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0FEQzBfQ0RSNSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE4MDQ0KSAvLyAoQURDMCkgQURDIENoYW5uZWwgRGF0YSBSZWdpc3RlciA1DQojZGVmaW5lIEFUOTFDX0FEQzBfSVBOQU1FMiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE4MEY0KSAvLyAoQURDMCkgQURDIElQTkFNRTIgUkVHSVNURVIgDQojZGVmaW5lIEFUOTFDX0FEQzBfTVIgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE4MDA0KSAvLyAoQURDMCkgQURDIE1vZGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfQURDMF9GRUFUVVJFUyAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE4MEY4KSAvLyAoQURDMCkgQURDIEZFQVRVUkVTIFJFR0lTVEVSIA0KI2RlZmluZSBBVDkxQ19BREMwX0VNUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBODA2OCkgLy8gKEFEQzApIEV4dGVuZGVkIE1vZGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfQURDMF9DRFIwIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTgwMzApIC8vIChBREMwKSBBREMgQ2hhbm5lbCBEYXRhIFJlZ2lzdGVyIDANCiNkZWZpbmUgQVQ5MUNfQURDMF9MQ0RSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTgwMjApIC8vIChBREMwKSBBREMgTGFzdCBDb252ZXJ0ZWQgRGF0YSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19BREMwX0lNUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBODAyQykgLy8gKEFEQzApIEFEQyBJbnRlcnJ1cHQgTWFzayBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19BREMwX0FERFJTSVpFIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTgwRUMpIC8vIChBREMwKSBBREMgQUREUlNJWkUgUkVHSVNURVIgDQojZGVmaW5lIEFUOTFDX0FEQzBfQ0RSMSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE4MDM0KSAvLyAoQURDMCkgQURDIENoYW5uZWwgRGF0YSBSZWdpc3RlciAxDQovLyA9PT09PT09PT09IFJlZ2lzdGVyIGRlZmluaXRpb24gZm9yIEFEQzEgcGVyaXBoZXJhbCA9PT09PT09PT09IA0KI2RlZmluZSBBVDkxQ19BREMxX0lQTkFNRTIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBQzBGNCkgLy8gKEFEQzEpIEFEQyBJUE5BTUUyIFJFR0lTVEVSIA0KI2RlZmluZSBBVDkxQ19BREMxX0FERFJTSVpFIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQUMwRUMpIC8vIChBREMxKSBBREMgQUREUlNJWkUgUkVHSVNURVIgDQojZGVmaW5lIEFUOTFDX0FEQzFfSURSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEFDMDI4KSAvLyAoQURDMSkgQURDIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0FEQzFfQ0hTUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEFDMDE4KSAvLyAoQURDMSkgQURDIENoYW5uZWwgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0FEQzFfRkVBVFVSRVMgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBQzBGOCkgLy8gKEFEQzEpIEFEQyBGRUFUVVJFUyBSRUdJU1RFUiANCiNkZWZpbmUgQVQ5MUNfQURDMV9DRFIwIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQUMwMzApIC8vIChBREMxKSBBREMgQ2hhbm5lbCBEYXRhIFJlZ2lzdGVyIDANCiNkZWZpbmUgQVQ5MUNfQURDMV9MQ0RSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQUMwMjApIC8vIChBREMxKSBBREMgTGFzdCBDb252ZXJ0ZWQgRGF0YSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19BREMxX0VNUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBQzA2OCkgLy8gKEFEQzEpIEV4dGVuZGVkIE1vZGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfQURDMV9DRFIzIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQUMwM0MpIC8vIChBREMxKSBBREMgQ2hhbm5lbCBEYXRhIFJlZ2lzdGVyIDMNCiNkZWZpbmUgQVQ5MUNfQURDMV9DRFI3IChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQUMwNEMpIC8vIChBREMxKSBBREMgQ2hhbm5lbCBEYXRhIFJlZ2lzdGVyIDcNCiNkZWZpbmUgQVQ5MUNfQURDMV9TUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQUMwMUMpIC8vIChBREMxKSBBREMgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0FEQzFfQUNSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEFDMDY0KSAvLyAoQURDMSkgQW5hbG9nIENvbnRyb2wgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfQURDMV9DRFI1IChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQUMwNDQpIC8vIChBREMxKSBBREMgQ2hhbm5lbCBEYXRhIFJlZ2lzdGVyIDUNCiNkZWZpbmUgQVQ5MUNfQURDMV9JUE5BTUUxIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQUMwRjApIC8vIChBREMxKSBBREMgSVBOQU1FMSBSRUdJU1RFUiANCiNkZWZpbmUgQVQ5MUNfQURDMV9DRFI2IChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQUMwNDgpIC8vIChBREMxKSBBREMgQ2hhbm5lbCBEYXRhIFJlZ2lzdGVyIDYNCiNkZWZpbmUgQVQ5MUNfQURDMV9NUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQUMwMDQpIC8vIChBREMxKSBBREMgTW9kZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19BREMxX0NEUjEgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBQzAzNCkgLy8gKEFEQzEpIEFEQyBDaGFubmVsIERhdGEgUmVnaXN0ZXIgMQ0KI2RlZmluZSBBVDkxQ19BREMxX0NEUjIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBQzAzOCkgLy8gKEFEQzEpIEFEQyBDaGFubmVsIERhdGEgUmVnaXN0ZXIgMg0KI2RlZmluZSBBVDkxQ19BREMxX0NEUjQgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBQzA0MCkgLy8gKEFEQzEpIEFEQyBDaGFubmVsIERhdGEgUmVnaXN0ZXIgNA0KI2RlZmluZSBBVDkxQ19BREMxX0NIRVIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBQzAxMCkgLy8gKEFEQzEpIEFEQyBDaGFubmVsIEVuYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19BREMxX1ZFUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBQzBGQykgLy8gKEFEQzEpIEFEQyBWRVJTSU9OIFJFR0lTVEVSDQojZGVmaW5lIEFUOTFDX0FEQzFfQ0hEUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEFDMDE0KSAvLyAoQURDMSkgQURDIENoYW5uZWwgRGlzYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19BREMxX0NSICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBQzAwMCkgLy8gKEFEQzEpIEFEQyBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0FEQzFfSU1SICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEFDMDJDKSAvLyAoQURDMSkgQURDIEludGVycnVwdCBNYXNrIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0FEQzFfSUVSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEFDMDI0KSAvLyAoQURDMSkgQURDIEludGVycnVwdCBFbmFibGUgUmVnaXN0ZXINCi8vID09PT09PT09PT0gUmVnaXN0ZXIgZGVmaW5pdGlvbiBmb3IgVEMwIHBlcmlwaGVyYWwgPT09PT09PT09PSANCiNkZWZpbmUgQVQ5MUNfVEMwX0lFUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODAwMjQpIC8vIChUQzApIEludGVycnVwdCBFbmFibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVEMwX0NWICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODAwMTApIC8vIChUQzApIENvdW50ZXIgVmFsdWUNCiNkZWZpbmUgQVQ5MUNfVEMwX1JBICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODAwMTQpIC8vIChUQzApIFJlZ2lzdGVyIEENCiNkZWZpbmUgQVQ5MUNfVEMwX1JCICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODAwMTgpIC8vIChUQzApIFJlZ2lzdGVyIEINCiNkZWZpbmUgQVQ5MUNfVEMwX0lEUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODAwMjgpIC8vIChUQzApIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1RDMF9TUiAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDgwMDIwKSAvLyAoVEMwKSBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVEMwX0lNUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODAwMkMpIC8vIChUQzApIEludGVycnVwdCBNYXNrIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1RDMF9DTVIgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDgwMDA0KSAvLyAoVEMwKSBDaGFubmVsIE1vZGUgUmVnaXN0ZXIgKENhcHR1cmUgTW9kZSAvIFdhdmVmb3JtIE1vZGUpDQojZGVmaW5lIEFUOTFDX1RDMF9SQyAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDgwMDFDKSAvLyAoVEMwKSBSZWdpc3RlciBDDQojZGVmaW5lIEFUOTFDX1RDMF9DQ1IgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDgwMDAwKSAvLyAoVEMwKSBDaGFubmVsIENvbnRyb2wgUmVnaXN0ZXINCi8vID09PT09PT09PT0gUmVnaXN0ZXIgZGVmaW5pdGlvbiBmb3IgVEMxIHBlcmlwaGVyYWwgPT09PT09PT09PSANCiNkZWZpbmUgQVQ5MUNfVEMxX1NSICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODAwNjApIC8vIChUQzEpIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19UQzFfUkEgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4MDA1NCkgLy8gKFRDMSkgUmVnaXN0ZXIgQQ0KI2RlZmluZSBBVDkxQ19UQzFfSUVSICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4MDA2NCkgLy8gKFRDMSkgSW50ZXJydXB0IEVuYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19UQzFfUkIgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4MDA1OCkgLy8gKFRDMSkgUmVnaXN0ZXIgQg0KI2RlZmluZSBBVDkxQ19UQzFfSURSICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4MDA2OCkgLy8gKFRDMSkgSW50ZXJydXB0IERpc2FibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVEMxX0NDUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODAwNDApIC8vIChUQzEpIENoYW5uZWwgQ29udHJvbCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19UQzFfSU1SICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4MDA2QykgLy8gKFRDMSkgSW50ZXJydXB0IE1hc2sgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVEMxX1JDICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODAwNUMpIC8vIChUQzEpIFJlZ2lzdGVyIEMNCiNkZWZpbmUgQVQ5MUNfVEMxX0NNUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODAwNDQpIC8vIChUQzEpIENoYW5uZWwgTW9kZSBSZWdpc3RlciAoQ2FwdHVyZSBNb2RlIC8gV2F2ZWZvcm0gTW9kZSkNCiNkZWZpbmUgQVQ5MUNfVEMxX0NWICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODAwNTApIC8vIChUQzEpIENvdW50ZXIgVmFsdWUNCi8vID09PT09PT09PT0gUmVnaXN0ZXIgZGVmaW5pdGlvbiBmb3IgVEMyIHBlcmlwaGVyYWwgPT09PT09PT09PSANCiNkZWZpbmUgQVQ5MUNfVEMyX1JBICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODAwOTQpIC8vIChUQzIpIFJlZ2lzdGVyIEENCiNkZWZpbmUgQVQ5MUNfVEMyX1JCICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODAwOTgpIC8vIChUQzIpIFJlZ2lzdGVyIEINCiNkZWZpbmUgQVQ5MUNfVEMyX0NNUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODAwODQpIC8vIChUQzIpIENoYW5uZWwgTW9kZSBSZWdpc3RlciAoQ2FwdHVyZSBNb2RlIC8gV2F2ZWZvcm0gTW9kZSkNCiNkZWZpbmUgQVQ5MUNfVEMyX1NSICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODAwQTApIC8vIChUQzIpIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19UQzJfQ0NSICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4MDA4MCkgLy8gKFRDMikgQ2hhbm5lbCBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1RDMl9JTVIgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDgwMEFDKSAvLyAoVEMyKSBJbnRlcnJ1cHQgTWFzayBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19UQzJfQ1YgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4MDA5MCkgLy8gKFRDMikgQ291bnRlciBWYWx1ZQ0KI2RlZmluZSBBVDkxQ19UQzJfUkMgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4MDA5QykgLy8gKFRDMikgUmVnaXN0ZXIgQw0KI2RlZmluZSBBVDkxQ19UQzJfSUVSICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4MDBBNCkgLy8gKFRDMikgSW50ZXJydXB0IEVuYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19UQzJfSURSICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4MDBBOCkgLy8gKFRDMikgSW50ZXJydXB0IERpc2FibGUgUmVnaXN0ZXINCi8vID09PT09PT09PT0gUmVnaXN0ZXIgZGVmaW5pdGlvbiBmb3IgVENCMCBwZXJpcGhlcmFsID09PT09PT09PT0gDQojZGVmaW5lIEFUOTFDX1RDQjBfQkNSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDgwMEMwKSAvLyAoVENCMCkgVEMgQmxvY2sgQ29udHJvbCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19UQ0IwX0lQTkFNRTIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4MDBGNCkgLy8gKFRDQjApIFRDIElQTkFNRTIgUkVHSVNURVIgDQojZGVmaW5lIEFUOTFDX1RDQjBfSVBOQU1FMSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDgwMEYwKSAvLyAoVENCMCkgVEMgSVBOQU1FMSBSRUdJU1RFUiANCiNkZWZpbmUgQVQ5MUNfVENCMF9BRERSU0laRSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDgwMEVDKSAvLyAoVENCMCkgVEMgQUREUlNJWkUgUkVHSVNURVIgDQojZGVmaW5lIEFUOTFDX1RDQjBfRkVBVFVSRVMgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4MDBGOCkgLy8gKFRDQjApIFRDIEZFQVRVUkVTIFJFR0lTVEVSIA0KI2RlZmluZSBBVDkxQ19UQ0IwX0JNUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4MDBDNCkgLy8gKFRDQjApIFRDIEJsb2NrIE1vZGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVENCMF9WRVIgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODAwRkMpIC8vIChUQ0IwKSAgVmVyc2lvbiBSZWdpc3Rlcg0KLy8gPT09PT09PT09PSBSZWdpc3RlciBkZWZpbml0aW9uIGZvciBUQ0IxIHBlcmlwaGVyYWwgPT09PT09PT09PSANCiNkZWZpbmUgQVQ5MUNfVENCMV9CQ1IgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODAxMDApIC8vIChUQ0IxKSBUQyBCbG9jayBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1RDQjFfVkVSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDgwMTNDKSAvLyAoVENCMSkgIFZlcnNpb24gUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVENCMV9GRUFUVVJFUyAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDgwMTM4KSAvLyAoVENCMSkgVEMgRkVBVFVSRVMgUkVHSVNURVIgDQojZGVmaW5lIEFUOTFDX1RDQjFfSVBOQU1FMiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDgwMTM0KSAvLyAoVENCMSkgVEMgSVBOQU1FMiBSRUdJU1RFUiANCiNkZWZpbmUgQVQ5MUNfVENCMV9CTVIgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODAxMDQpIC8vIChUQ0IxKSBUQyBCbG9jayBNb2RlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1RDQjFfQUREUlNJWkUgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4MDEyQykgLy8gKFRDQjEpIFRDIEFERFJTSVpFIFJFR0lTVEVSIA0KI2RlZmluZSBBVDkxQ19UQ0IxX0lQTkFNRTEgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4MDEzMCkgLy8gKFRDQjEpIFRDIElQTkFNRTEgUkVHSVNURVIgDQovLyA9PT09PT09PT09IFJlZ2lzdGVyIGRlZmluaXRpb24gZm9yIFRDQjIgcGVyaXBoZXJhbCA9PT09PT09PT09IA0KI2RlZmluZSBBVDkxQ19UQ0IyX0ZFQVRVUkVTIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODAxNzgpIC8vIChUQ0IyKSBUQyBGRUFUVVJFUyBSRUdJU1RFUiANCiNkZWZpbmUgQVQ5MUNfVENCMl9WRVIgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODAxN0MpIC8vIChUQ0IyKSAgVmVyc2lvbiBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19UQ0IyX0FERFJTSVpFIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODAxNkMpIC8vIChUQ0IyKSBUQyBBRERSU0laRSBSRUdJU1RFUiANCiNkZWZpbmUgQVQ5MUNfVENCMl9JUE5BTUUxIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODAxNzApIC8vIChUQ0IyKSBUQyBJUE5BTUUxIFJFR0lTVEVSIA0KI2RlZmluZSBBVDkxQ19UQ0IyX0lQTkFNRTIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4MDE3NCkgLy8gKFRDQjIpIFRDIElQTkFNRTIgUkVHSVNURVIgDQojZGVmaW5lIEFUOTFDX1RDQjJfQk1SICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDgwMTQ0KSAvLyAoVENCMikgVEMgQmxvY2sgTW9kZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19UQ0IyX0JDUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4MDE0MCkgLy8gKFRDQjIpIFRDIEJsb2NrIENvbnRyb2wgUmVnaXN0ZXINCi8vID09PT09PT09PT0gUmVnaXN0ZXIgZGVmaW5pdGlvbiBmb3IgRUZDMCBwZXJpcGhlcmFsID09PT09PT09PT0gDQojZGVmaW5lIEFUOTFDX0VGQzBfRkNSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwODA0KSAvLyAoRUZDMCkgRUZDIEZsYXNoIENvbW1hbmQgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfRUZDMF9GUlIgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTA4MEMpIC8vIChFRkMwKSBFRkMgRmxhc2ggUmVzdWx0IFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0VGQzBfRk1SICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwODAwKSAvLyAoRUZDMCkgRUZDIEZsYXNoIE1vZGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfRUZDMF9GU1IgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTA4MDgpIC8vIChFRkMwKSBFRkMgRmxhc2ggU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0VGQzBfRlZSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwODE0KSAvLyAoRUZDMCkgRUZDIEZsYXNoIFZlcnNpb24gUmVnaXN0ZXINCi8vID09PT09PT09PT0gUmVnaXN0ZXIgZGVmaW5pdGlvbiBmb3IgRUZDMSBwZXJpcGhlcmFsID09PT09PT09PT0gDQojZGVmaW5lIEFUOTFDX0VGQzFfRk1SICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEUwQTAwKSAvLyAoRUZDMSkgRUZDIEZsYXNoIE1vZGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfRUZDMV9GVlIgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTBBMTQpIC8vIChFRkMxKSBFRkMgRmxhc2ggVmVyc2lvbiBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19FRkMxX0ZTUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMEEwOCkgLy8gKEVGQzEpIEVGQyBGbGFzaCBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfRUZDMV9GQ1IgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwRTBBMDQpIC8vIChFRkMxKSBFRkMgRmxhc2ggQ29tbWFuZCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19FRkMxX0ZSUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBFMEEwQykgLy8gKEVGQzEpIEVGQyBGbGFzaCBSZXN1bHQgUmVnaXN0ZXINCi8vID09PT09PT09PT0gUmVnaXN0ZXIgZGVmaW5pdGlvbiBmb3IgTUNJMCBwZXJpcGhlcmFsID09PT09PT09PT0gDQojZGVmaW5lIEFUOTFDX01DSTBfRE1BICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDAwMDUwKSAvLyAoTUNJMCkgTUNJIERNQSBDb25maWd1cmF0aW9uIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX01DSTBfU0RDUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDAwMDBDKSAvLyAoTUNJMCkgTUNJIFNEL1NESU8gQ2FyZCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19NQ0kwX0lQTkFNRTEgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDAwMDBGMCkgLy8gKE1DSTApIE1DSSBJUE5BTUUxIFJFR0lTVEVSIA0KI2RlZmluZSBBVDkxQ19NQ0kwX0NTVE9SIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwMDAwMUMpIC8vIChNQ0kwKSBNQ0kgQ29tcGxldGlvbiBTaWduYWwgVGltZW91dCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19NQ0kwX1JEUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDAwMDAzMCkgLy8gKE1DSTApIE1DSSBSZWNlaXZlIERhdGEgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfTUNJMF9DTURSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwMDAwMTQpIC8vIChNQ0kwKSBNQ0kgQ29tbWFuZCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19NQ0kwX0lEUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDAwMDA0OCkgLy8gKE1DSTApIE1DSSBJbnRlcnJ1cHQgRGlzYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19NQ0kwX0FERFJTSVpFIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwMDAwRUMpIC8vIChNQ0kwKSBNQ0kgQUREUlNJWkUgUkVHSVNURVIgDQojZGVmaW5lIEFUOTFDX01DSTBfV1BDUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDAwMEU0KSAvLyAoTUNJMCkgTUNJIFdyaXRlIFByb3RlY3Rpb24gQ29udHJvbCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19NQ0kwX1JTUFIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDAwMDAyMCkgLy8gKE1DSTApIE1DSSBSZXNwb25zZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19NQ0kwX0lQTkFNRTIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDAwMDBGNCkgLy8gKE1DSTApIE1DSSBJUE5BTUUyIFJFR0lTVEVSIA0KI2RlZmluZSBBVDkxQ19NQ0kwX0NSICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDAwMDAwMCkgLy8gKE1DSTApIE1DSSBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX01DSTBfSU1SICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDAwMDRDKSAvLyAoTUNJMCkgTUNJIEludGVycnVwdCBNYXNrIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX01DSTBfV1BTUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDAwMEU4KSAvLyAoTUNJMCkgTUNJIFdyaXRlIFByb3RlY3Rpb24gU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX01DSTBfRFRPUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDAwMDA4KSAvLyAoTUNJMCkgTUNJIERhdGEgVGltZW91dCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19NQ0kwX01SICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDAwMDAwNCkgLy8gKE1DSTApIE1DSSBNb2RlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX01DSTBfU1IgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDAwMDQwKSAvLyAoTUNJMCkgTUNJIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19NQ0kwX0lFUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDAwMDA0NCkgLy8gKE1DSTApIE1DSSBJbnRlcnJ1cHQgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX01DSTBfVkVSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDAwMEZDKSAvLyAoTUNJMCkgTUNJIFZFUlNJT04gUkVHSVNURVIgDQojZGVmaW5lIEFUOTFDX01DSTBfRkVBVFVSRVMgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDAwMDBGOCkgLy8gKE1DSTApIE1DSSBGRUFUVVJFUyBSRUdJU1RFUiANCiNkZWZpbmUgQVQ5MUNfTUNJMF9CTEtSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwMDAwMTgpIC8vIChNQ0kwKSBNQ0kgQmxvY2sgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfTUNJMF9BUkdSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwMDAwMTApIC8vIChNQ0kwKSBNQ0kgQXJndW1lbnQgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfTUNJMF9GSUZPIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwMDAyMDApIC8vIChNQ0kwKSBNQ0kgRklGTyBBcGVydHVyZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19NQ0kwX1REUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDAwMDAzNCkgLy8gKE1DSTApIE1DSSBUcmFuc21pdCBEYXRhIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX01DSTBfQ0ZHICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDAwMDU0KSAvLyAoTUNJMCkgTUNJIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXINCi8vID09PT09PT09PT0gUmVnaXN0ZXIgZGVmaW5pdGlvbiBmb3IgUERDX1RXSTAgcGVyaXBoZXJhbCA9PT09PT09PT09IA0KI2RlZmluZSBBVDkxQ19UV0kwX1ROQ1IgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4NDExQykgLy8gKFBEQ19UV0kwKSBUcmFuc21pdCBOZXh0IENvdW50ZXIgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVFdJMF9QVENSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODQxMjApIC8vIChQRENfVFdJMCkgUERDIFRyYW5zZmVyIENvbnRyb2wgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVFdJMF9QVFNSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODQxMjQpIC8vIChQRENfVFdJMCkgUERDIFRyYW5zZmVyIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19UV0kwX1JDUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4NDEwNCkgLy8gKFBEQ19UV0kwKSBSZWNlaXZlIENvdW50ZXIgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVFdJMF9UTlBSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODQxMTgpIC8vIChQRENfVFdJMCkgVHJhbnNtaXQgTmV4dCBQb2ludGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1RXSTBfUk5QUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDg0MTEwKSAvLyAoUERDX1RXSTApIFJlY2VpdmUgTmV4dCBQb2ludGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1RXSTBfUlBSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDg0MTAwKSAvLyAoUERDX1RXSTApIFJlY2VpdmUgUG9pbnRlciBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19UV0kwX1JOQ1IgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4NDExNCkgLy8gKFBEQ19UV0kwKSBSZWNlaXZlIE5leHQgQ291bnRlciBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19UV0kwX1RQUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4NDEwOCkgLy8gKFBEQ19UV0kwKSBUcmFuc21pdCBQb2ludGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1RXSTBfVENSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDg0MTBDKSAvLyAoUERDX1RXSTApIFRyYW5zbWl0IENvdW50ZXIgUmVnaXN0ZXINCi8vID09PT09PT09PT0gUmVnaXN0ZXIgZGVmaW5pdGlvbiBmb3IgUERDX1RXSTEgcGVyaXBoZXJhbCA9PT09PT09PT09IA0KI2RlZmluZSBBVDkxQ19UV0kxX1ROQ1IgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4ODExQykgLy8gKFBEQ19UV0kxKSBUcmFuc21pdCBOZXh0IENvdW50ZXIgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVFdJMV9QVENSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODgxMjApIC8vIChQRENfVFdJMSkgUERDIFRyYW5zZmVyIENvbnRyb2wgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVFdJMV9STkNSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODgxMTQpIC8vIChQRENfVFdJMSkgUmVjZWl2ZSBOZXh0IENvdW50ZXIgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVFdJMV9SQ1IgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODgxMDQpIC8vIChQRENfVFdJMSkgUmVjZWl2ZSBDb3VudGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1RXSTFfUlBSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDg4MTAwKSAvLyAoUERDX1RXSTEpIFJlY2VpdmUgUG9pbnRlciBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19UV0kxX1ROUFIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4ODExOCkgLy8gKFBEQ19UV0kxKSBUcmFuc21pdCBOZXh0IFBvaW50ZXIgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVFdJMV9STlBSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODgxMTApIC8vIChQRENfVFdJMSkgUmVjZWl2ZSBOZXh0IFBvaW50ZXIgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVFdJMV9UQ1IgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODgxMEMpIC8vIChQRENfVFdJMSkgVHJhbnNtaXQgQ291bnRlciBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19UV0kxX1RQUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4ODEwOCkgLy8gKFBEQ19UV0kxKSBUcmFuc21pdCBQb2ludGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1RXSTFfUFRTUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDg4MTI0KSAvLyAoUERDX1RXSTEpIFBEQyBUcmFuc2ZlciBTdGF0dXMgUmVnaXN0ZXINCi8vID09PT09PT09PT0gUmVnaXN0ZXIgZGVmaW5pdGlvbiBmb3IgVFdJMCBwZXJpcGhlcmFsID09PT09PT09PT0gDQojZGVmaW5lIEFUOTFDX1RXSTBfRkVBVFVSRVMgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4NDBGOCkgLy8gKFRXSTApIFRXSSBGRUFUVVJFUyBSRUdJU1RFUiANCiNkZWZpbmUgQVQ5MUNfVFdJMF9JUE5BTUUxIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODQwRjApIC8vIChUV0kwKSBUV0kgSVBOQU1FMSBSRUdJU1RFUiANCiNkZWZpbmUgQVQ5MUNfVFdJMF9TTVIgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODQwMDgpIC8vIChUV0kwKSBTbGF2ZSBNb2RlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1RXSTBfTU1SICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDg0MDA0KSAvLyAoVFdJMCkgTWFzdGVyIE1vZGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVFdJMF9TUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODQwMjApIC8vIChUV0kwKSBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVFdJMF9JUE5BTUUyIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODQwRjQpIC8vIChUV0kwKSBUV0kgSVBOQU1FMiBSRUdJU1RFUiANCiNkZWZpbmUgQVQ5MUNfVFdJMF9DUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODQwMDApIC8vIChUV0kwKSBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1RXSTBfSUVSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDg0MDI0KSAvLyAoVFdJMCkgSW50ZXJydXB0IEVuYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19UV0kwX1JIUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4NDAzMCkgLy8gKFRXSTApIFJlY2VpdmUgSG9sZGluZyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19UV0kwX0FERFJTSVpFIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODQwRUMpIC8vIChUV0kwKSBUV0kgQUREUlNJWkUgUkVHSVNURVIgDQojZGVmaW5lIEFUOTFDX1RXSTBfVEhSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDg0MDM0KSAvLyAoVFdJMCkgVHJhbnNtaXQgSG9sZGluZyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19UV0kwX1ZFUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4NDBGQykgLy8gKFRXSTApIFZlcnNpb24gUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVFdJMF9JQURSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODQwMEMpIC8vIChUV0kwKSBJbnRlcm5hbCBBZGRyZXNzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1RXSTBfSU1SICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDg0MDJDKSAvLyAoVFdJMCkgSW50ZXJydXB0IE1hc2sgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVFdJMF9DV0dSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODQwMTApIC8vIChUV0kwKSBDbG9jayBXYXZlZm9ybSBHZW5lcmF0b3IgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVFdJMF9JRFIgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODQwMjgpIC8vIChUV0kwKSBJbnRlcnJ1cHQgRGlzYWJsZSBSZWdpc3Rlcg0KLy8gPT09PT09PT09PSBSZWdpc3RlciBkZWZpbml0aW9uIGZvciBUV0kxIHBlcmlwaGVyYWwgPT09PT09PT09PSANCiNkZWZpbmUgQVQ5MUNfVFdJMV9WRVIgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODgwRkMpIC8vIChUV0kxKSBWZXJzaW9uIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1RXSTFfSURSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDg4MDI4KSAvLyAoVFdJMSkgSW50ZXJydXB0IERpc2FibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVFdJMV9JUE5BTUUyIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODgwRjQpIC8vIChUV0kxKSBUV0kgSVBOQU1FMiBSRUdJU1RFUiANCiNkZWZpbmUgQVQ5MUNfVFdJMV9DV0dSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODgwMTApIC8vIChUV0kxKSBDbG9jayBXYXZlZm9ybSBHZW5lcmF0b3IgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVFdJMV9DUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODgwMDApIC8vIChUV0kxKSBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1RXSTFfQUREUlNJWkUgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4ODBFQykgLy8gKFRXSTEpIFRXSSBBRERSU0laRSBSRUdJU1RFUiANCiNkZWZpbmUgQVQ5MUNfVFdJMV9JQURSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODgwMEMpIC8vIChUV0kxKSBJbnRlcm5hbCBBZGRyZXNzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1RXSTFfSUVSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDg4MDI0KSAvLyAoVFdJMSkgSW50ZXJydXB0IEVuYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19UV0kxX1NNUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4ODAwOCkgLy8gKFRXSTEpIFNsYXZlIE1vZGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVFdJMV9SSFIgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwODgwMzApIC8vIChUV0kxKSBSZWNlaXZlIEhvbGRpbmcgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVFdJMV9GRUFUVVJFUyAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDg4MEY4KSAvLyAoVFdJMSkgVFdJIEZFQVRVUkVTIFJFR0lTVEVSIA0KI2RlZmluZSBBVDkxQ19UV0kxX0lNUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4ODAyQykgLy8gKFRXSTEpIEludGVycnVwdCBNYXNrIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1RXSTFfU1IgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDg4MDIwKSAvLyAoVFdJMSkgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1RXSTFfVEhSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDg4MDM0KSAvLyAoVFdJMSkgVHJhbnNtaXQgSG9sZGluZyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19UV0kxX01NUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4ODAwNCkgLy8gKFRXSTEpIE1hc3RlciBNb2RlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1RXSTFfSVBOQU1FMSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDg4MEYwKSAvLyAoVFdJMSkgVFdJIElQTkFNRTEgUkVHSVNURVIgDQovLyA9PT09PT09PT09IFJlZ2lzdGVyIGRlZmluaXRpb24gZm9yIFBEQ19VUzAgcGVyaXBoZXJhbCA9PT09PT09PT09IA0KI2RlZmluZSBBVDkxQ19VUzBfUk5DUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5MDExNCkgLy8gKFBEQ19VUzApIFJlY2VpdmUgTmV4dCBDb3VudGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTMF9UTlBSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDkwMTE4KSAvLyAoUERDX1VTMCkgVHJhbnNtaXQgTmV4dCBQb2ludGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTMF9UUFIgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDkwMTA4KSAvLyAoUERDX1VTMCkgVHJhbnNtaXQgUG9pbnRlciBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VUzBfUkNSICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5MDEwNCkgLy8gKFBEQ19VUzApIFJlY2VpdmUgQ291bnRlciBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VUzBfUk5QUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5MDExMCkgLy8gKFBEQ19VUzApIFJlY2VpdmUgTmV4dCBQb2ludGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTMF9UTkNSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDkwMTFDKSAvLyAoUERDX1VTMCkgVHJhbnNtaXQgTmV4dCBDb3VudGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTMF9QVFNSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDkwMTI0KSAvLyAoUERDX1VTMCkgUERDIFRyYW5zZmVyIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VUzBfUlBSICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5MDEwMCkgLy8gKFBEQ19VUzApIFJlY2VpdmUgUG9pbnRlciBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VUzBfUFRDUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5MDEyMCkgLy8gKFBEQ19VUzApIFBEQyBUcmFuc2ZlciBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTMF9UQ1IgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDkwMTBDKSAvLyAoUERDX1VTMCkgVHJhbnNtaXQgQ291bnRlciBSZWdpc3Rlcg0KLy8gPT09PT09PT09PSBSZWdpc3RlciBkZWZpbml0aW9uIGZvciBVUzAgcGVyaXBoZXJhbCA9PT09PT09PT09IA0KI2RlZmluZSBBVDkxQ19VUzBfTkVSICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5MDA0NCkgLy8gKFVTMCkgTmIgRXJyb3JzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTMF9SSFIgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDkwMDE4KSAvLyAoVVMwKSBSZWNlaXZlciBIb2xkaW5nIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTMF9JUE5BTUUxIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOTAwRjApIC8vIChVUzApIFVTIElQTkFNRTEgUkVHSVNURVIgDQojZGVmaW5lIEFUOTFDX1VTMF9NUiAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDkwMDA0KSAvLyAoVVMwKSBNb2RlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTMF9SVE9SICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDkwMDI0KSAvLyAoVVMwKSBSZWNlaXZlciBUaW1lLW91dCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VUzBfSUYgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5MDA0QykgLy8gKFVTMCkgSVJEQV9GSUxURVIgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVVMwX0FERFJTSVpFIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOTAwRUMpIC8vIChVUzApIFVTIEFERFJTSVpFIFJFR0lTVEVSIA0KI2RlZmluZSBBVDkxQ19VUzBfSURSICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5MDAwQykgLy8gKFVTMCkgSW50ZXJydXB0IERpc2FibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVVMwX0lNUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOTAwMTApIC8vIChVUzApIEludGVycnVwdCBNYXNrIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTMF9JRVIgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDkwMDA4KSAvLyAoVVMwKSBJbnRlcnJ1cHQgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTMF9UVEdSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDkwMDI4KSAvLyAoVVMwKSBUcmFuc21pdHRlciBUaW1lLWd1YXJkIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTMF9JUE5BTUUyIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOTAwRjQpIC8vIChVUzApIFVTIElQTkFNRTIgUkVHSVNURVIgDQojZGVmaW5lIEFUOTFDX1VTMF9GSURJICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDkwMDQwKSAvLyAoVVMwKSBGSV9ESV9SYXRpbyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VUzBfQ1IgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5MDAwMCkgLy8gKFVTMCkgQ29udHJvbCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VUzBfQlJHUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5MDAyMCkgLy8gKFVTMCkgQmF1ZCBSYXRlIEdlbmVyYXRvciBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VUzBfTUFOICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5MDA1MCkgLy8gKFVTMCkgTWFuY2hlc3RlciBFbmNvZGVyIERlY29kZXIgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVVMwX1ZFUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOTAwRkMpIC8vIChVUzApIFZFUlNJT04gUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVVMwX0ZFQVRVUkVTIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOTAwRjgpIC8vIChVUzApIFVTIEZFQVRVUkVTIFJFR0lTVEVSIA0KI2RlZmluZSBBVDkxQ19VUzBfQ1NSICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5MDAxNCkgLy8gKFVTMCkgQ2hhbm5lbCBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVVMwX1RIUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOTAwMUMpIC8vIChVUzApIFRyYW5zbWl0dGVyIEhvbGRpbmcgUmVnaXN0ZXINCi8vID09PT09PT09PT0gUmVnaXN0ZXIgZGVmaW5pdGlvbiBmb3IgUERDX1VTMSBwZXJpcGhlcmFsID09PT09PT09PT0gDQojZGVmaW5lIEFUOTFDX1VTMV9UTlBSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDk0MTE4KSAvLyAoUERDX1VTMSkgVHJhbnNtaXQgTmV4dCBQb2ludGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTMV9UUFIgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDk0MTA4KSAvLyAoUERDX1VTMSkgVHJhbnNtaXQgUG9pbnRlciBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VUzFfUk5DUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5NDExNCkgLy8gKFBEQ19VUzEpIFJlY2VpdmUgTmV4dCBDb3VudGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTMV9UTkNSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDk0MTFDKSAvLyAoUERDX1VTMSkgVHJhbnNtaXQgTmV4dCBDb3VudGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTMV9STlBSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDk0MTEwKSAvLyAoUERDX1VTMSkgUmVjZWl2ZSBOZXh0IFBvaW50ZXIgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVVMxX1RDUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOTQxMEMpIC8vIChQRENfVVMxKSBUcmFuc21pdCBDb3VudGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTMV9QVFNSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDk0MTI0KSAvLyAoUERDX1VTMSkgUERDIFRyYW5zZmVyIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VUzFfUkNSICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5NDEwNCkgLy8gKFBEQ19VUzEpIFJlY2VpdmUgQ291bnRlciBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VUzFfUlBSICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5NDEwMCkgLy8gKFBEQ19VUzEpIFJlY2VpdmUgUG9pbnRlciBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VUzFfUFRDUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5NDEyMCkgLy8gKFBEQ19VUzEpIFBEQyBUcmFuc2ZlciBDb250cm9sIFJlZ2lzdGVyDQovLyA9PT09PT09PT09IFJlZ2lzdGVyIGRlZmluaXRpb24gZm9yIFVTMSBwZXJpcGhlcmFsID09PT09PT09PT0gDQojZGVmaW5lIEFUOTFDX1VTMV9JTVIgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDk0MDEwKSAvLyAoVVMxKSBJbnRlcnJ1cHQgTWFzayBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VUzFfUlRPUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5NDAyNCkgLy8gKFVTMSkgUmVjZWl2ZXIgVGltZS1vdXQgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVVMxX1JIUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOTQwMTgpIC8vIChVUzEpIFJlY2VpdmVyIEhvbGRpbmcgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVVMxX0lQTkFNRTEgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5NDBGMCkgLy8gKFVTMSkgVVMgSVBOQU1FMSBSRUdJU1RFUiANCiNkZWZpbmUgQVQ5MUNfVVMxX1ZFUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOTQwRkMpIC8vIChVUzEpIFZFUlNJT04gUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVVMxX01SICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOTQwMDQpIC8vIChVUzEpIE1vZGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVVMxX0ZFQVRVUkVTIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOTQwRjgpIC8vIChVUzEpIFVTIEZFQVRVUkVTIFJFR0lTVEVSIA0KI2RlZmluZSBBVDkxQ19VUzFfTkVSICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5NDA0NCkgLy8gKFVTMSkgTmIgRXJyb3JzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTMV9JUE5BTUUyIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOTQwRjQpIC8vIChVUzEpIFVTIElQTkFNRTIgUkVHSVNURVIgDQojZGVmaW5lIEFUOTFDX1VTMV9DUiAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDk0MDAwKSAvLyAoVVMxKSBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTMV9CUkdSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDk0MDIwKSAvLyAoVVMxKSBCYXVkIFJhdGUgR2VuZXJhdG9yIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTMV9JRiAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDk0MDRDKSAvLyAoVVMxKSBJUkRBX0ZJTFRFUiBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VUzFfSUVSICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5NDAwOCkgLy8gKFVTMSkgSW50ZXJydXB0IEVuYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VUzFfVFRHUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5NDAyOCkgLy8gKFVTMSkgVHJhbnNtaXR0ZXIgVGltZS1ndWFyZCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VUzFfRklESSAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5NDA0MCkgLy8gKFVTMSkgRklfRElfUmF0aW8gUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVVMxX01BTiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOTQwNTApIC8vIChVUzEpIE1hbmNoZXN0ZXIgRW5jb2RlciBEZWNvZGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTMV9BRERSU0laRSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDk0MEVDKSAvLyAoVVMxKSBVUyBBRERSU0laRSBSRUdJU1RFUiANCiNkZWZpbmUgQVQ5MUNfVVMxX0NTUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOTQwMTQpIC8vIChVUzEpIENoYW5uZWwgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTMV9USFIgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDk0MDFDKSAvLyAoVVMxKSBUcmFuc21pdHRlciBIb2xkaW5nIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTMV9JRFIgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDk0MDBDKSAvLyAoVVMxKSBJbnRlcnJ1cHQgRGlzYWJsZSBSZWdpc3Rlcg0KLy8gPT09PT09PT09PSBSZWdpc3RlciBkZWZpbml0aW9uIGZvciBQRENfVVMyIHBlcmlwaGVyYWwgPT09PT09PT09PSANCiNkZWZpbmUgQVQ5MUNfVVMyX1JQUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOTgxMDApIC8vIChQRENfVVMyKSBSZWNlaXZlIFBvaW50ZXIgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVVMyX1RQUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOTgxMDgpIC8vIChQRENfVVMyKSBUcmFuc21pdCBQb2ludGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTMl9UQ1IgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDk4MTBDKSAvLyAoUERDX1VTMikgVHJhbnNtaXQgQ291bnRlciBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VUzJfUFRTUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5ODEyNCkgLy8gKFBEQ19VUzIpIFBEQyBUcmFuc2ZlciBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVVMyX1BUQ1IgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOTgxMjApIC8vIChQRENfVVMyKSBQREMgVHJhbnNmZXIgQ29udHJvbCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VUzJfUk5QUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5ODExMCkgLy8gKFBEQ19VUzIpIFJlY2VpdmUgTmV4dCBQb2ludGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTMl9UTkNSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDk4MTFDKSAvLyAoUERDX1VTMikgVHJhbnNtaXQgTmV4dCBDb3VudGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTMl9STkNSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDk4MTE0KSAvLyAoUERDX1VTMikgUmVjZWl2ZSBOZXh0IENvdW50ZXIgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVVMyX1ROUFIgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOTgxMTgpIC8vIChQRENfVVMyKSBUcmFuc21pdCBOZXh0IFBvaW50ZXIgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVVMyX1JDUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOTgxMDQpIC8vIChQRENfVVMyKSBSZWNlaXZlIENvdW50ZXIgUmVnaXN0ZXINCi8vID09PT09PT09PT0gUmVnaXN0ZXIgZGVmaW5pdGlvbiBmb3IgVVMyIHBlcmlwaGVyYWwgPT09PT09PT09PSANCiNkZWZpbmUgQVQ5MUNfVVMyX01BTiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOTgwNTApIC8vIChVUzIpIE1hbmNoZXN0ZXIgRW5jb2RlciBEZWNvZGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTMl9BRERSU0laRSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDk4MEVDKSAvLyAoVVMyKSBVUyBBRERSU0laRSBSRUdJU1RFUiANCiNkZWZpbmUgQVQ5MUNfVVMyX01SICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOTgwMDQpIC8vIChVUzIpIE1vZGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVVMyX0lQTkFNRTEgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5ODBGMCkgLy8gKFVTMikgVVMgSVBOQU1FMSBSRUdJU1RFUiANCiNkZWZpbmUgQVQ5MUNfVVMyX0lGICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOTgwNEMpIC8vIChVUzIpIElSREFfRklMVEVSIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTMl9CUkdSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDk4MDIwKSAvLyAoVVMyKSBCYXVkIFJhdGUgR2VuZXJhdG9yIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTMl9GSURJICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDk4MDQwKSAvLyAoVVMyKSBGSV9ESV9SYXRpbyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VUzJfSUVSICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5ODAwOCkgLy8gKFVTMikgSW50ZXJydXB0IEVuYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VUzJfUlRPUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5ODAyNCkgLy8gKFVTMikgUmVjZWl2ZXIgVGltZS1vdXQgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVVMyX0NSICAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOTgwMDApIC8vIChVUzIpIENvbnRyb2wgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVVMyX1RIUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOTgwMUMpIC8vIChVUzIpIFRyYW5zbWl0dGVyIEhvbGRpbmcgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVVMyX0NTUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOTgwMTQpIC8vIChVUzIpIENoYW5uZWwgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTMl9WRVIgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDk4MEZDKSAvLyAoVVMyKSBWRVJTSU9OIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTMl9GRUFUVVJFUyAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDk4MEY4KSAvLyAoVVMyKSBVUyBGRUFUVVJFUyBSRUdJU1RFUiANCiNkZWZpbmUgQVQ5MUNfVVMyX0lEUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOTgwMEMpIC8vIChVUzIpIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTMl9UVEdSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDk4MDI4KSAvLyAoVVMyKSBUcmFuc21pdHRlciBUaW1lLWd1YXJkIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTMl9JUE5BTUUyIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOTgwRjQpIC8vIChVUzIpIFVTIElQTkFNRTIgUkVHSVNURVIgDQojZGVmaW5lIEFUOTFDX1VTMl9SSFIgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDk4MDE4KSAvLyAoVVMyKSBSZWNlaXZlciBIb2xkaW5nIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTMl9ORVIgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDk4MDQ0KSAvLyAoVVMyKSBOYiBFcnJvcnMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVVMyX0lNUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOTgwMTApIC8vIChVUzIpIEludGVycnVwdCBNYXNrIFJlZ2lzdGVyDQovLyA9PT09PT09PT09IFJlZ2lzdGVyIGRlZmluaXRpb24gZm9yIFBEQ19VUzMgcGVyaXBoZXJhbCA9PT09PT09PT09IA0KI2RlZmluZSBBVDkxQ19VUzNfVFBSICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5QzEwOCkgLy8gKFBEQ19VUzMpIFRyYW5zbWl0IFBvaW50ZXIgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVVMzX1BUQ1IgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOUMxMjApIC8vIChQRENfVVMzKSBQREMgVHJhbnNmZXIgQ29udHJvbCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VUzNfVENSICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5QzEwQykgLy8gKFBEQ19VUzMpIFRyYW5zbWl0IENvdW50ZXIgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVVMzX1JDUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOUMxMDQpIC8vIChQRENfVVMzKSBSZWNlaXZlIENvdW50ZXIgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVVMzX1JOQ1IgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOUMxMTQpIC8vIChQRENfVVMzKSBSZWNlaXZlIE5leHQgQ291bnRlciBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VUzNfUk5QUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5QzExMCkgLy8gKFBEQ19VUzMpIFJlY2VpdmUgTmV4dCBQb2ludGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTM19SUFIgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDlDMTAwKSAvLyAoUERDX1VTMykgUmVjZWl2ZSBQb2ludGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTM19QVFNSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDlDMTI0KSAvLyAoUERDX1VTMykgUERDIFRyYW5zZmVyIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VUzNfVE5DUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5QzExQykgLy8gKFBEQ19VUzMpIFRyYW5zbWl0IE5leHQgQ291bnRlciBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VUzNfVE5QUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5QzExOCkgLy8gKFBEQ19VUzMpIFRyYW5zbWl0IE5leHQgUG9pbnRlciBSZWdpc3Rlcg0KLy8gPT09PT09PT09PSBSZWdpc3RlciBkZWZpbml0aW9uIGZvciBVUzMgcGVyaXBoZXJhbCA9PT09PT09PT09IA0KI2RlZmluZSBBVDkxQ19VUzNfTUFOICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5QzA1MCkgLy8gKFVTMykgTWFuY2hlc3RlciBFbmNvZGVyIERlY29kZXIgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVVMzX0NTUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOUMwMTQpIC8vIChVUzMpIENoYW5uZWwgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTM19CUkdSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDlDMDIwKSAvLyAoVVMzKSBCYXVkIFJhdGUgR2VuZXJhdG9yIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTM19JUE5BTUUyIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOUMwRjQpIC8vIChVUzMpIFVTIElQTkFNRTIgUkVHSVNURVIgDQojZGVmaW5lIEFUOTFDX1VTM19SVE9SICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDlDMDI0KSAvLyAoVVMzKSBSZWNlaXZlciBUaW1lLW91dCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VUzNfQUREUlNJWkUgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5QzBFQykgLy8gKFVTMykgVVMgQUREUlNJWkUgUkVHSVNURVIgDQojZGVmaW5lIEFUOTFDX1VTM19DUiAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDlDMDAwKSAvLyAoVVMzKSBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTM19JRiAgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDlDMDRDKSAvLyAoVVMzKSBJUkRBX0ZJTFRFUiBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VUzNfRkVBVFVSRVMgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5QzBGOCkgLy8gKFVTMykgVVMgRkVBVFVSRVMgUkVHSVNURVIgDQojZGVmaW5lIEFUOTFDX1VTM19WRVIgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDlDMEZDKSAvLyAoVVMzKSBWRVJTSU9OIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTM19SSFIgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDlDMDE4KSAvLyAoVVMzKSBSZWNlaXZlciBIb2xkaW5nIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTM19UVEdSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDlDMDI4KSAvLyAoVVMzKSBUcmFuc21pdHRlciBUaW1lLWd1YXJkIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTM19ORVIgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDlDMDQ0KSAvLyAoVVMzKSBOYiBFcnJvcnMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVVMzX0lNUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOUMwMTApIC8vIChVUzMpIEludGVycnVwdCBNYXNrIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTM19USFIgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDlDMDFDKSAvLyAoVVMzKSBUcmFuc21pdHRlciBIb2xkaW5nIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VTM19JRFIgICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDlDMDBDKSAvLyAoVVMzKSBJbnRlcnJ1cHQgRGlzYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VUzNfTVIgICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5QzAwNCkgLy8gKFVTMykgTW9kZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VUzNfSUVSICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5QzAwOCkgLy8gKFVTMykgSW50ZXJydXB0IEVuYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VUzNfRklESSAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5QzA0MCkgLy8gKFVTMykgRklfRElfUmF0aW8gUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVVMzX0lQTkFNRTEgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA5QzBGMCkgLy8gKFVTMykgVVMgSVBOQU1FMSBSRUdJU1RFUiANCi8vID09PT09PT09PT0gUmVnaXN0ZXIgZGVmaW5pdGlvbiBmb3IgUERDX1NTQzAgcGVyaXBoZXJhbCA9PT09PT09PT09IA0KI2RlZmluZSBBVDkxQ19TU0MwX1JOQ1IgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDAwNDExNCkgLy8gKFBEQ19TU0MwKSBSZWNlaXZlIE5leHQgQ291bnRlciBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19TU0MwX1RQUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDAwNDEwOCkgLy8gKFBEQ19TU0MwKSBUcmFuc21pdCBQb2ludGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1NTQzBfVENSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDA0MTBDKSAvLyAoUERDX1NTQzApIFRyYW5zbWl0IENvdW50ZXIgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfU1NDMF9QVENSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwMDQxMjApIC8vIChQRENfU1NDMCkgUERDIFRyYW5zZmVyIENvbnRyb2wgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfU1NDMF9UTlBSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwMDQxMTgpIC8vIChQRENfU1NDMCkgVHJhbnNtaXQgTmV4dCBQb2ludGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1NTQzBfUlBSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDA0MTAwKSAvLyAoUERDX1NTQzApIFJlY2VpdmUgUG9pbnRlciBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19TU0MwX1ROQ1IgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDAwNDExQykgLy8gKFBEQ19TU0MwKSBUcmFuc21pdCBOZXh0IENvdW50ZXIgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfU1NDMF9STlBSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwMDQxMTApIC8vIChQRENfU1NDMCkgUmVjZWl2ZSBOZXh0IFBvaW50ZXIgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfU1NDMF9SQ1IgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwMDQxMDQpIC8vIChQRENfU1NDMCkgUmVjZWl2ZSBDb3VudGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1NTQzBfUFRTUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDA0MTI0KSAvLyAoUERDX1NTQzApIFBEQyBUcmFuc2ZlciBTdGF0dXMgUmVnaXN0ZXINCi8vID09PT09PT09PT0gUmVnaXN0ZXIgZGVmaW5pdGlvbiBmb3IgU1NDMCBwZXJpcGhlcmFsID09PT09PT09PT0gDQojZGVmaW5lIEFUOTFDX1NTQzBfRkVBVFVSRVMgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDAwNDBGOCkgLy8gKFNTQzApIFNTQyBGRUFUVVJFUyBSRUdJU1RFUiANCiNkZWZpbmUgQVQ5MUNfU1NDMF9JUE5BTUUxIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwMDQwRjApIC8vIChTU0MwKSBTU0MgSVBOQU1FMSBSRUdJU1RFUiANCiNkZWZpbmUgQVQ5MUNfU1NDMF9DUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwMDQwMDApIC8vIChTU0MwKSBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1NTQzBfQUREUlNJWkUgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDAwNDBFQykgLy8gKFNTQzApIFNTQyBBRERSU0laRSBSRUdJU1RFUiANCiNkZWZpbmUgQVQ5MUNfU1NDMF9SSFIgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwMDQwMjApIC8vIChTU0MwKSBSZWNlaXZlIEhvbGRpbmcgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfU1NDMF9WRVIgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwMDQwRkMpIC8vIChTU0MwKSBWZXJzaW9uIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1NTQzBfVFNIUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDA0MDM0KSAvLyAoU1NDMCkgVHJhbnNtaXQgU3luYyBIb2xkaW5nIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1NTQzBfUkZNUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDA0MDE0KSAvLyAoU1NDMCkgUmVjZWl2ZSBGcmFtZSBNb2RlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1NTQzBfSURSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDA0MDQ4KSAvLyAoU1NDMCkgSW50ZXJydXB0IERpc2FibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfU1NDMF9URk1SIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwMDQwMUMpIC8vIChTU0MwKSBUcmFuc21pdCBGcmFtZSBNb2RlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1NTQzBfUlNIUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDA0MDMwKSAvLyAoU1NDMCkgUmVjZWl2ZSBTeW5jIEhvbGRpbmcgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfU1NDMF9UQ01SIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwMDQwMTgpIC8vIChTU0MwKSBUcmFuc21pdCBDbG9jayBNb2RlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1NTQzBfUkNNUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDA0MDEwKSAvLyAoU1NDMCkgUmVjZWl2ZSBDbG9jayBNb2RlUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfU1NDMF9TUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwMDQwNDApIC8vIChTU0MwKSBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfU1NDMF9JUE5BTUUyIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwMDQwRjQpIC8vIChTU0MwKSBTU0MgSVBOQU1FMiBSRUdJU1RFUiANCiNkZWZpbmUgQVQ5MUNfU1NDMF9USFIgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwMDQwMjQpIC8vIChTU0MwKSBUcmFuc21pdCBIb2xkaW5nIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1NTQzBfQ01SICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDA0MDA0KSAvLyAoU1NDMCkgQ2xvY2sgTW9kZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19TU0MwX0lFUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDAwNDA0NCkgLy8gKFNTQzApIEludGVycnVwdCBFbmFibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfU1NDMF9JTVIgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwMDQwNEMpIC8vIChTU0MwKSBJbnRlcnJ1cHQgTWFzayBSZWdpc3Rlcg0KLy8gPT09PT09PT09PSBSZWdpc3RlciBkZWZpbml0aW9uIGZvciBQRENfUFdNQyBwZXJpcGhlcmFsID09PT09PT09PT0gDQojZGVmaW5lIEFUOTFDX1BXTUNfVE5DUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMTFDKSAvLyAoUERDX1BXTUMpIFRyYW5zbWl0IE5leHQgQ291bnRlciBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QV01DX1RQUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4QzEwOCkgLy8gKFBEQ19QV01DKSBUcmFuc21pdCBQb2ludGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfUlBSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMTAwKSAvLyAoUERDX1BXTUMpIFJlY2VpdmUgUG9pbnRlciBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QV01DX1RDUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4QzEwQykgLy8gKFBEQ19QV01DKSBUcmFuc21pdCBDb3VudGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfUFRTUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMTI0KSAvLyAoUERDX1BXTUMpIFBEQyBUcmFuc2ZlciBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19STlBSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMxMTApIC8vIChQRENfUFdNQykgUmVjZWl2ZSBOZXh0IFBvaW50ZXIgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19SQ1IgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMxMDQpIC8vIChQRENfUFdNQykgUmVjZWl2ZSBDb3VudGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfUk5DUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMTE0KSAvLyAoUERDX1BXTUMpIFJlY2VpdmUgTmV4dCBDb3VudGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfUFRDUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMTIwKSAvLyAoUERDX1BXTUMpIFBEQyBUcmFuc2ZlciBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfVE5QUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMTE4KSAvLyAoUERDX1BXTUMpIFRyYW5zbWl0IE5leHQgUG9pbnRlciBSZWdpc3Rlcg0KLy8gPT09PT09PT09PSBSZWdpc3RlciBkZWZpbml0aW9uIGZvciBQV01DX0NIMCBwZXJpcGhlcmFsID09PT09PT09PT0gDQojZGVmaW5lIEFUOTFDX1BXTUNfQ0gwX0RUUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMjE4KSAvLyAoUFdNQ19DSDApIENoYW5uZWwgRGVhZCBUaW1lIFZhbHVlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfQ0gwX0NNUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMjAwKSAvLyAoUFdNQ19DSDApIENoYW5uZWwgTW9kZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QV01DX0NIMF9DQ05UUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMjE0KSAvLyAoUFdNQ19DSDApIENoYW5uZWwgQ291bnRlciBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QV01DX0NIMF9DUFJEUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMjBDKSAvLyAoUFdNQ19DSDApIENoYW5uZWwgUGVyaW9kIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfQ0gwX0RUVVBEUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMjFDKSAvLyAoUFdNQ19DSDApIENoYW5uZWwgRGVhZCBUaW1lIFVwZGF0ZSBWYWx1ZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QV01DX0NIMF9DUFJEVVBEUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMjEwKSAvLyAoUFdNQ19DSDApIENoYW5uZWwgUGVyaW9kIFVwZGF0ZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QV01DX0NIMF9DRFRZVVBEUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMjA4KSAvLyAoUFdNQ19DSDApIENoYW5uZWwgRHV0eSBDeWNsZSBVcGRhdGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19DSDBfQ0RUWVIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4QzIwNCkgLy8gKFBXTUNfQ0gwKSBDaGFubmVsIER1dHkgQ3ljbGUgUmVnaXN0ZXINCi8vID09PT09PT09PT0gUmVnaXN0ZXIgZGVmaW5pdGlvbiBmb3IgUFdNQ19DSDEgcGVyaXBoZXJhbCA9PT09PT09PT09IA0KI2RlZmluZSBBVDkxQ19QV01DX0NIMV9DQ05UUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMjM0KSAvLyAoUFdNQ19DSDEpIENoYW5uZWwgQ291bnRlciBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QV01DX0NIMV9EVFIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4QzIzOCkgLy8gKFBXTUNfQ0gxKSBDaGFubmVsIERlYWQgVGltZSBWYWx1ZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QV01DX0NIMV9DRFRZVVBEUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMjI4KSAvLyAoUFdNQ19DSDEpIENoYW5uZWwgRHV0eSBDeWNsZSBVcGRhdGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19DSDFfRFRVUERSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMyM0MpIC8vIChQV01DX0NIMSkgQ2hhbm5lbCBEZWFkIFRpbWUgVXBkYXRlIFZhbHVlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfQ0gxX0NEVFlSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMyMjQpIC8vIChQV01DX0NIMSkgQ2hhbm5lbCBEdXR5IEN5Y2xlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfQ0gxX0NQUkRSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMyMkMpIC8vIChQV01DX0NIMSkgQ2hhbm5lbCBQZXJpb2QgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19DSDFfQ1BSRFVQRFIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4QzIzMCkgLy8gKFBXTUNfQ0gxKSBDaGFubmVsIFBlcmlvZCBVcGRhdGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19DSDFfQ01SIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMyMjApIC8vIChQV01DX0NIMSkgQ2hhbm5lbCBNb2RlIFJlZ2lzdGVyDQovLyA9PT09PT09PT09IFJlZ2lzdGVyIGRlZmluaXRpb24gZm9yIFBXTUNfQ0gyIHBlcmlwaGVyYWwgPT09PT09PT09PSANCiNkZWZpbmUgQVQ5MUNfUFdNQ19DSDJfQ0RUWVIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4QzI0NCkgLy8gKFBXTUNfQ0gyKSBDaGFubmVsIER1dHkgQ3ljbGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19DSDJfRFRVUERSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMyNUMpIC8vIChQV01DX0NIMikgQ2hhbm5lbCBEZWFkIFRpbWUgVXBkYXRlIFZhbHVlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfQ0gyX0NDTlRSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMyNTQpIC8vIChQV01DX0NIMikgQ2hhbm5lbCBDb3VudGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfQ0gyX0NNUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMjQwKSAvLyAoUFdNQ19DSDIpIENoYW5uZWwgTW9kZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QV01DX0NIMl9DUFJEUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMjRDKSAvLyAoUFdNQ19DSDIpIENoYW5uZWwgUGVyaW9kIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfQ0gyX0NQUkRVUERSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMyNTApIC8vIChQV01DX0NIMikgQ2hhbm5lbCBQZXJpb2QgVXBkYXRlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfQ0gyX0NEVFlVUERSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMyNDgpIC8vIChQV01DX0NIMikgQ2hhbm5lbCBEdXR5IEN5Y2xlIFVwZGF0ZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QV01DX0NIMl9EVFIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4QzI1OCkgLy8gKFBXTUNfQ0gyKSBDaGFubmVsIERlYWQgVGltZSBWYWx1ZSBSZWdpc3Rlcg0KLy8gPT09PT09PT09PSBSZWdpc3RlciBkZWZpbml0aW9uIGZvciBQV01DX0NIMyBwZXJpcGhlcmFsID09PT09PT09PT0gDQojZGVmaW5lIEFUOTFDX1BXTUNfQ0gzX0NQUkRVUERSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMyNzApIC8vIChQV01DX0NIMykgQ2hhbm5lbCBQZXJpb2QgVXBkYXRlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfQ0gzX0RUUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMjc4KSAvLyAoUFdNQ19DSDMpIENoYW5uZWwgRGVhZCBUaW1lIFZhbHVlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfQ0gzX0NEVFlSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMyNjQpIC8vIChQV01DX0NIMykgQ2hhbm5lbCBEdXR5IEN5Y2xlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfQ0gzX0RUVVBEUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMjdDKSAvLyAoUFdNQ19DSDMpIENoYW5uZWwgRGVhZCBUaW1lIFVwZGF0ZSBWYWx1ZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QV01DX0NIM19DRFRZVVBEUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMjY4KSAvLyAoUFdNQ19DSDMpIENoYW5uZWwgRHV0eSBDeWNsZSBVcGRhdGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19DSDNfQ0NOVFIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4QzI3NCkgLy8gKFBXTUNfQ0gzKSBDaGFubmVsIENvdW50ZXIgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19DSDNfQ01SIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMyNjApIC8vIChQV01DX0NIMykgQ2hhbm5lbCBNb2RlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfQ0gzX0NQUkRSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMyNkMpIC8vIChQV01DX0NIMykgQ2hhbm5lbCBQZXJpb2QgUmVnaXN0ZXINCi8vID09PT09PT09PT0gUmVnaXN0ZXIgZGVmaW5pdGlvbiBmb3IgUFdNQyBwZXJpcGhlcmFsID09PT09PT09PT0gDQojZGVmaW5lIEFUOTFDX1BXTUNfQ01QNk1VUEQgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4QzE5QykgLy8gKFBXTUMpIFBXTSBDb21wYXJpc29uIE1vZGUgNiBVcGRhdGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19JU1IxIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMwMUMpIC8vIChQV01DKSBQV01DIEludGVycnVwdCBTdGF0dXMgUmVnaXN0ZXIgMQ0KI2RlZmluZSBBVDkxQ19QV01DX0NNUDVWIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMxODApIC8vIChQV01DKSBQV00gQ29tcGFyaXNvbiBWYWx1ZSA1IFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfQ01QNE1VUEQgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4QzE3QykgLy8gKFBXTUMpIFBXTSBDb21wYXJpc29uIE1vZGUgNCBVcGRhdGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19GTVIgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMwNUMpIC8vIChQV01DKSBQV00gRmF1bHQgTW9kZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QV01DX0NNUDZWIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMxOTApIC8vIChQV01DKSBQV00gQ29tcGFyaXNvbiBWYWx1ZSA2IFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfRUw0TVIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4QzA4QykgLy8gKFBXTUMpIFBXTSBFdmVudCBMaW5lIDQgTW9kZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QV01DX1VQQ1IgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4QzAyOCkgLy8gKFBXTUMpIFBXTSBVcGRhdGUgQ29udHJvbCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QV01DX0NNUDFWVVBEIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMxNDQpIC8vIChQV01DKSBQV00gQ29tcGFyaXNvbiBWYWx1ZSAxIFVwZGF0ZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QV01DX0NNUDBNIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMxMzgpIC8vIChQV01DKSBQV00gQ29tcGFyaXNvbiBNb2RlIDAgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19DTVA1VlVQRCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMTg0KSAvLyAoUFdNQykgUFdNIENvbXBhcmlzb24gVmFsdWUgNSBVcGRhdGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19GUEVSMyAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMDc0KSAvLyAoUFdNQykgUFdNIEZhdWx0IFByb3RlY3Rpb24gRW5hYmxlIFJlZ2lzdGVyIDMNCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0NVUEQgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4QzA1OCkgLy8gKFBXTUMpIFBXTSBPdXRwdXQgU2VsZWN0aW9uIENsZWFyIFVwZGF0ZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QV01DX0ZQRVIxIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMwNkMpIC8vIChQV01DKSBQV00gRmF1bHQgUHJvdGVjdGlvbiBFbmFibGUgUmVnaXN0ZXIgMQ0KI2RlZmluZSBBVDkxQ19QV01DX1NDVVBVUEQgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4QzAzMCkgLy8gKFBXTUMpIFBXTSBVcGRhdGUgUGVyaW9kIFVwZGF0ZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QV01DX0RJUyAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4QzAwOCkgLy8gKFBXTUMpIFBXTUMgRGlzYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QV01DX0lFUjEgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4QzAxMCkgLy8gKFBXTUMpIFBXTUMgSW50ZXJydXB0IEVuYWJsZSBSZWdpc3RlciAxDQojZGVmaW5lIEFUOTFDX1BXTUNfSU1SMiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMDNDKSAvLyAoUFdNQykgUFdNQyBJbnRlcnJ1cHQgTWFzayBSZWdpc3RlciAyDQojZGVmaW5lIEFUOTFDX1BXTUNfQ01QMFYgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4QzEzMCkgLy8gKFBXTUMpIFBXTSBDb21wYXJpc29uIFZhbHVlIDAgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19TUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMwMEMpIC8vIChQV01DKSBQV01DIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QV01DX0NNUDRNIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMxNzgpIC8vIChQV01DKSBQV00gQ29tcGFyaXNvbiBNb2RlIDQgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19DTVAzTSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMTY4KSAvLyAoUFdNQykgUFdNIENvbXBhcmlzb24gTW9kZSAzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfSUVSMiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMDM0KSAvLyAoUFdNQykgUFdNQyBJbnRlcnJ1cHQgRW5hYmxlIFJlZ2lzdGVyIDINCiNkZWZpbmUgQVQ5MUNfUFdNQ19DTVAzVlVQRCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMTY0KSAvLyAoUFdNQykgUFdNIENvbXBhcmlzb24gVmFsdWUgMyBVcGRhdGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19DTVAyTSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMTU4KSAvLyAoUFdNQykgUFdNIENvbXBhcmlzb24gTW9kZSAyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfSURSMiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMDM4KSAvLyAoUFdNQykgUFdNQyBJbnRlcnJ1cHQgRGlzYWJsZSBSZWdpc3RlciAyDQojZGVmaW5lIEFUOTFDX1BXTUNfRUwyTVIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4QzA4NCkgLy8gKFBXTUMpIFBXTSBFdmVudCBMaW5lIDIgTW9kZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QV01DX0NNUDdWIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMxQTApIC8vIChQV01DKSBQV00gQ29tcGFyaXNvbiBWYWx1ZSA3IFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfQ01QMU0gKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4QzE0OCkgLy8gKFBXTUMpIFBXTSBDb21wYXJpc29uIE1vZGUgMSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QV01DX0NNUDBWVVBEIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMxMzQpIC8vIChQV01DKSBQV00gQ29tcGFyaXNvbiBWYWx1ZSAwIFVwZGF0ZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QV01DX1dQU1IgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4QzBFOCkgLy8gKFBXTUMpIFBXTSBXcml0ZSBQcm90ZWN0aW9uIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QV01DX0NNUDZWVVBEIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMxOTQpIC8vIChQV01DKSBQV00gQ29tcGFyaXNvbiBWYWx1ZSA2IFVwZGF0ZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QV01DX0NNUDFNVVBEIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMxNEMpIC8vIChQV01DKSBQV00gQ29tcGFyaXNvbiBNb2RlIDEgVXBkYXRlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfQ01QMVYgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4QzE0MCkgLy8gKFBXTUMpIFBXTSBDb21wYXJpc29uIFZhbHVlIDEgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19GQ1IgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMwNjQpIC8vIChQV01DKSBQV00gRmF1bHQgTW9kZSBDbGVhciBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QV01DX1ZFUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4QzBGQykgLy8gKFBXTUMpIFBXTUMgVmVyc2lvbiBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QV01DX0VMMU1SIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMwODApIC8vIChQV01DKSBQV00gRXZlbnQgTGluZSAxIE1vZGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19FTDZNUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMDk0KSAvLyAoUFdNQykgUFdNIEV2ZW50IExpbmUgNiBNb2RlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfSVNSMiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMDQwKSAvLyAoUFdNQykgUFdNQyBJbnRlcnJ1cHQgU3RhdHVzIFJlZ2lzdGVyIDINCiNkZWZpbmUgQVQ5MUNfUFdNQ19DTVA0VlVQRCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMTc0KSAvLyAoUFdNQykgUFdNIENvbXBhcmlzb24gVmFsdWUgNCBVcGRhdGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19DTVA1TVVQRCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMThDKSAvLyAoUFdNQykgUFdNIENvbXBhcmlzb24gTW9kZSA1IFVwZGF0ZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QV01DX09TICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4QzA0OCkgLy8gKFBXTUMpIFBXTSBPdXRwdXQgU2VsZWN0aW9uIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfRlBWICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMDY4KSAvLyAoUFdNQykgUFdNIEZhdWx0IFByb3RlY3Rpb24gVmFsdWUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19GUEVSMiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMDcwKSAvLyAoUFdNQykgUFdNIEZhdWx0IFByb3RlY3Rpb24gRW5hYmxlIFJlZ2lzdGVyIDINCiNkZWZpbmUgQVQ5MUNfUFdNQ19FTDdNUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMDk4KSAvLyAoUFdNQykgUFdNIEV2ZW50IExpbmUgNyBNb2RlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NTVVBEIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMwNTQpIC8vIChQV01DKSBQV00gT3V0cHV0IFNlbGVjdGlvbiBTZXQgVXBkYXRlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfRkVBVFVSRVMgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4QzBGOCkgLy8gKFBXTUMpIFBXTUMgRkVBVFVSRVMgUkVHSVNURVIgDQojZGVmaW5lIEFUOTFDX1BXTUNfQ01QMlYgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4QzE1MCkgLy8gKFBXTUMpIFBXTSBDb21wYXJpc29uIFZhbHVlIDIgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19GU1IgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMwNjApIC8vIChQV01DKSBQV00gRmF1bHQgTW9kZSBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19BRERSU0laRSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMEVDKSAvLyAoUFdNQykgUFdNQyBBRERSU0laRSBSRUdJU1RFUiANCiNkZWZpbmUgQVQ5MUNfUFdNQ19PU0MgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMwNTApIC8vIChQV01DKSBQV00gT3V0cHV0IFNlbGVjdGlvbiBDbGVhciBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QV01DX1NDVVAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4QzAyQykgLy8gKFBXTUMpIFBXTSBVcGRhdGUgUGVyaW9kIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfQ01QN01VUEQgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4QzFBQykgLy8gKFBXTUMpIFBXTSBDb21wYXJpc29uIE1vZGUgNyBVcGRhdGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19DTVAyVlVQRCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMTU0KSAvLyAoUFdNQykgUFdNIENvbXBhcmlzb24gVmFsdWUgMiBVcGRhdGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19GUEVSNCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMDc4KSAvLyAoUFdNQykgUFdNIEZhdWx0IFByb3RlY3Rpb24gRW5hYmxlIFJlZ2lzdGVyIDQNCiNkZWZpbmUgQVQ5MUNfUFdNQ19JTVIxIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMwMTgpIC8vIChQV01DKSBQV01DIEludGVycnVwdCBNYXNrIFJlZ2lzdGVyIDENCiNkZWZpbmUgQVQ5MUNfUFdNQ19FTDNNUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMDg4KSAvLyAoUFdNQykgUFdNIEV2ZW50IExpbmUgMyBNb2RlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfQ01QM1YgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4QzE2MCkgLy8gKFBXTUMpIFBXTSBDb21wYXJpc29uIFZhbHVlIDMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19JUE5BTUUxIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMwRjApIC8vIChQV01DKSBQV01DIElQTkFNRTEgUkVHSVNURVIgDQojZGVmaW5lIEFUOTFDX1BXTUNfT1NTICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMDRDKSAvLyAoUFdNQykgUFdNIE91dHB1dCBTZWxlY3Rpb24gU2V0IFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfQ01QME1VUEQgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4QzEzQykgLy8gKFBXTUMpIFBXTSBDb21wYXJpc29uIE1vZGUgMCBVcGRhdGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19DTVAyTVVQRCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMTVDKSAvLyAoUFdNQykgUFdNIENvbXBhcmlzb24gTW9kZSAyIFVwZGF0ZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QV01DX0NNUDRWIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMxNzApIC8vIChQV01DKSBQV00gQ29tcGFyaXNvbiBWYWx1ZSA0IFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfRU5BICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMDA0KSAvLyAoUFdNQykgUFdNQyBFbmFibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19DTVAzTVVQRCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMTZDKSAvLyAoUFdNQykgUFdNIENvbXBhcmlzb24gTW9kZSAzIFVwZGF0ZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QV01DX0VMME1SIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMwN0MpIC8vIChQV01DKSBQV00gRXZlbnQgTGluZSAwIE1vZGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19PT1YgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMwNDQpIC8vIChQV01DKSBQV00gT3V0cHV0IE92ZXJyaWRlIFZhbHVlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfV1BDUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMEU0KSAvLyAoUFdNQykgUFdNIFdyaXRlIFByb3RlY3Rpb24gRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfQ01QN00gKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4QzFBOCkgLy8gKFBXTUMpIFBXTSBDb21wYXJpc29uIE1vZGUgNyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QV01DX0NNUDZNIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMxOTgpIC8vIChQV01DKSBQV00gQ29tcGFyaXNvbiBNb2RlIDYgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19DTVA1TSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMTg4KSAvLyAoUFdNQykgUFdNIENvbXBhcmlzb24gTW9kZSA1IFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1BXTUNfSVBOQU1FMiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMEY0KSAvLyAoUFdNQykgUFdNQyBJUE5BTUUyIFJFR0lTVEVSIA0KI2RlZmluZSBBVDkxQ19QV01DX0NNUDdWVVBEIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMxQTQpIC8vIChQV01DKSBQV00gQ29tcGFyaXNvbiBWYWx1ZSA3IFVwZGF0ZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19QV01DX1NZTkMgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDA4QzAyMCkgLy8gKFBXTUMpIFBXTSBTeW5jaHJvbml6ZWQgQ2hhbm5lbHMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19NUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMwMDApIC8vIChQV01DKSBQV01DIE1vZGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfUFdNQ19JRFIxIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwOEMwMTQpIC8vIChQV01DKSBQV01DIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyIDENCiNkZWZpbmUgQVQ5MUNfUFdNQ19FTDVNUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDhDMDkwKSAvLyAoUFdNQykgUFdNIEV2ZW50IExpbmUgNSBNb2RlIFJlZ2lzdGVyDQovLyA9PT09PT09PT09IFJlZ2lzdGVyIGRlZmluaXRpb24gZm9yIFNQSTAgcGVyaXBoZXJhbCA9PT09PT09PT09IA0KI2RlZmluZSBBVDkxQ19TUEkwX0FERFJTSVpFIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwMDgwRUMpIC8vIChTUEkwKSBTUEkgQUREUlNJWkUgUkVHSVNURVIgDQojZGVmaW5lIEFUOTFDX1NQSTBfUkRSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDA4MDA4KSAvLyAoU1BJMCkgUmVjZWl2ZSBEYXRhIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1NQSTBfRkVBVFVSRVMgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDAwODBGOCkgLy8gKFNQSTApIFNQSSBGRUFUVVJFUyBSRUdJU1RFUiANCiNkZWZpbmUgQVQ5MUNfU1BJMF9DUiAgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwMDgwMDApIC8vIChTUEkwKSBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1NQSTBfSVBOQU1FMSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDA4MEYwKSAvLyAoU1BJMCkgU1BJIElQTkFNRTEgUkVHSVNURVIgDQojZGVmaW5lIEFUOTFDX1NQSTBfVkVSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDA4MEZDKSAvLyAoU1BJMCkgVmVyc2lvbiBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19TUEkwX0lEUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDAwODAxOCkgLy8gKFNQSTApIEludGVycnVwdCBEaXNhYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1NQSTBfVERSICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDA4MDBDKSAvLyAoU1BJMCkgVHJhbnNtaXQgRGF0YSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19TUEkwX01SICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDAwODAwNCkgLy8gKFNQSTApIE1vZGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfU1BJMF9JRVIgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwMDgwMTQpIC8vIChTUEkwKSBJbnRlcnJ1cHQgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1NQSTBfSU1SICAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMDA4MDFDKSAvLyAoU1BJMCkgSW50ZXJydXB0IE1hc2sgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfU1BJMF9JUE5BTUUyIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwMDgwRjQpIC8vIChTUEkwKSBTUEkgSVBOQU1FMiBSRUdJU1RFUiANCiNkZWZpbmUgQVQ5MUNfU1BJMF9DU1IgIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwMDgwMzApIC8vIChTUEkwKSBDaGlwIFNlbGVjdCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19TUEkwX1NSICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDAwODAxMCkgLy8gKFNQSTApIFN0YXR1cyBSZWdpc3Rlcg0KLy8gPT09PT09PT09PSBSZWdpc3RlciBkZWZpbml0aW9uIGZvciBVRFBIU19FUFRGSUZPIHBlcmlwaGVyYWwgPT09PT09PT09PSANCiNkZWZpbmUgQVQ5MUNfVURQSFNfRVBURklGT19SRUFERVBUNiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDIwMUUwMDAwKSAvLyAoVURQSFNfRVBURklGTykgRklGTyBFbmRwb2ludCBEYXRhIFJlZ2lzdGVyIDYNCiNkZWZpbmUgQVQ5MUNfVURQSFNfRVBURklGT19SRUFERVBUMiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDIwMUEwMDAwKSAvLyAoVURQSFNfRVBURklGTykgRklGTyBFbmRwb2ludCBEYXRhIFJlZ2lzdGVyIDINCiNkZWZpbmUgQVQ5MUNfVURQSFNfRVBURklGT19SRUFERVBUMSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDIwMTkwMDAwKSAvLyAoVURQSFNfRVBURklGTykgRklGTyBFbmRwb2ludCBEYXRhIFJlZ2lzdGVyIDENCiNkZWZpbmUgQVQ5MUNfVURQSFNfRVBURklGT19SRUFERVBUMCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDIwMTgwMDAwKSAvLyAoVURQSFNfRVBURklGTykgRklGTyBFbmRwb2ludCBEYXRhIFJlZ2lzdGVyIDANCiNkZWZpbmUgQVQ5MUNfVURQSFNfRVBURklGT19SRUFERVBUNSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDIwMUQwMDAwKSAvLyAoVURQSFNfRVBURklGTykgRklGTyBFbmRwb2ludCBEYXRhIFJlZ2lzdGVyIDUNCiNkZWZpbmUgQVQ5MUNfVURQSFNfRVBURklGT19SRUFERVBUNCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDIwMUMwMDAwKSAvLyAoVURQSFNfRVBURklGTykgRklGTyBFbmRwb2ludCBEYXRhIFJlZ2lzdGVyIDQNCiNkZWZpbmUgQVQ5MUNfVURQSFNfRVBURklGT19SRUFERVBUMyAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDIwMUIwMDAwKSAvLyAoVURQSFNfRVBURklGTykgRklGTyBFbmRwb2ludCBEYXRhIFJlZ2lzdGVyIDMNCi8vID09PT09PT09PT0gUmVnaXN0ZXIgZGVmaW5pdGlvbiBmb3IgVURQSFNfRVBUXzAgcGVyaXBoZXJhbCA9PT09PT09PT09IA0KI2RlZmluZSBBVDkxQ19VRFBIU19FUFRfMF9FUFRDVEwgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBNDEwQykgLy8gKFVEUEhTX0VQVF8wKSBVRFBIUyBFbmRwb2ludCBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VEUEhTX0VQVF8wX0VQVFNUQSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE0MTFDKSAvLyAoVURQSFNfRVBUXzApIFVEUEhTIEVuZHBvaW50IFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VRFBIU19FUFRfMF9FUFRDTFJTVEEgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBNDExOCkgLy8gKFVEUEhTX0VQVF8wKSBVRFBIUyBFbmRwb2ludCBDbGVhciBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVURQSFNfRVBUXzBfRVBUQ1RMRElTIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTQxMDgpIC8vIChVRFBIU19FUFRfMCkgVURQSFMgRW5kcG9pbnQgQ29udHJvbCBEaXNhYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VEUEhTX0VQVF8wX0VQVENGRyAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE0MTAwKSAvLyAoVURQSFNfRVBUXzApIFVEUEhTIEVuZHBvaW50IENvbmZpZyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VRFBIU19FUFRfMF9FUFRTRVRTVEEgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBNDExNCkgLy8gKFVEUEhTX0VQVF8wKSBVRFBIUyBFbmRwb2ludCBTZXQgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VEUEhTX0VQVF8wX0VQVENUTEVOQiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE0MTA0KSAvLyAoVURQSFNfRVBUXzApIFVEUEhTIEVuZHBvaW50IENvbnRyb2wgRW5hYmxlIFJlZ2lzdGVyDQovLyA9PT09PT09PT09IFJlZ2lzdGVyIGRlZmluaXRpb24gZm9yIFVEUEhTX0VQVF8xIHBlcmlwaGVyYWwgPT09PT09PT09PSANCiNkZWZpbmUgQVQ5MUNfVURQSFNfRVBUXzFfRVBUU1RBIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTQxM0MpIC8vIChVRFBIU19FUFRfMSkgVURQSFMgRW5kcG9pbnQgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VEUEhTX0VQVF8xX0VQVFNFVFNUQSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE0MTM0KSAvLyAoVURQSFNfRVBUXzEpIFVEUEhTIEVuZHBvaW50IFNldCBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVURQSFNfRVBUXzFfRVBUQ1RMIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTQxMkMpIC8vIChVRFBIU19FUFRfMSkgVURQSFMgRW5kcG9pbnQgQ29udHJvbCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VRFBIU19FUFRfMV9FUFRDRkcgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBNDEyMCkgLy8gKFVEUEhTX0VQVF8xKSBVRFBIUyBFbmRwb2ludCBDb25maWcgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVURQSFNfRVBUXzFfRVBUQ1RMRElTIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTQxMjgpIC8vIChVRFBIU19FUFRfMSkgVURQSFMgRW5kcG9pbnQgQ29udHJvbCBEaXNhYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VEUEhTX0VQVF8xX0VQVENMUlNUQSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE0MTM4KSAvLyAoVURQSFNfRVBUXzEpIFVEUEhTIEVuZHBvaW50IENsZWFyIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VRFBIU19FUFRfMV9FUFRDVExFTkIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBNDEyNCkgLy8gKFVEUEhTX0VQVF8xKSBVRFBIUyBFbmRwb2ludCBDb250cm9sIEVuYWJsZSBSZWdpc3Rlcg0KLy8gPT09PT09PT09PSBSZWdpc3RlciBkZWZpbml0aW9uIGZvciBVRFBIU19FUFRfMiBwZXJpcGhlcmFsID09PT09PT09PT0gDQojZGVmaW5lIEFUOTFDX1VEUEhTX0VQVF8yX0VQVENUTEVOQiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE0MTQ0KSAvLyAoVURQSFNfRVBUXzIpIFVEUEhTIEVuZHBvaW50IENvbnRyb2wgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VEUEhTX0VQVF8yX0VQVENMUlNUQSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE0MTU4KSAvLyAoVURQSFNfRVBUXzIpIFVEUEhTIEVuZHBvaW50IENsZWFyIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VRFBIU19FUFRfMl9FUFRDRkcgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBNDE0MCkgLy8gKFVEUEhTX0VQVF8yKSBVRFBIUyBFbmRwb2ludCBDb25maWcgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVURQSFNfRVBUXzJfRVBUQ1RMIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTQxNEMpIC8vIChVRFBIU19FUFRfMikgVURQSFMgRW5kcG9pbnQgQ29udHJvbCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VRFBIU19FUFRfMl9FUFRTRVRTVEEgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBNDE1NCkgLy8gKFVEUEhTX0VQVF8yKSBVRFBIUyBFbmRwb2ludCBTZXQgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VEUEhTX0VQVF8yX0VQVFNUQSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE0MTVDKSAvLyAoVURQSFNfRVBUXzIpIFVEUEhTIEVuZHBvaW50IFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VRFBIU19FUFRfMl9FUFRDVExESVMgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBNDE0OCkgLy8gKFVEUEhTX0VQVF8yKSBVRFBIUyBFbmRwb2ludCBDb250cm9sIERpc2FibGUgUmVnaXN0ZXINCi8vID09PT09PT09PT0gUmVnaXN0ZXIgZGVmaW5pdGlvbiBmb3IgVURQSFNfRVBUXzMgcGVyaXBoZXJhbCA9PT09PT09PT09IA0KI2RlZmluZSBBVDkxQ19VRFBIU19FUFRfM19FUFRDVExESVMgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBNDE2OCkgLy8gKFVEUEhTX0VQVF8zKSBVRFBIUyBFbmRwb2ludCBDb250cm9sIERpc2FibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVURQSFNfRVBUXzNfRVBUQ1RMRU5CIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTQxNjQpIC8vIChVRFBIU19FUFRfMykgVURQSFMgRW5kcG9pbnQgQ29udHJvbCBFbmFibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVURQSFNfRVBUXzNfRVBUU0VUU1RBIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTQxNzQpIC8vIChVRFBIU19FUFRfMykgVURQSFMgRW5kcG9pbnQgU2V0IFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VRFBIU19FUFRfM19FUFRDTFJTVEEgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBNDE3OCkgLy8gKFVEUEhTX0VQVF8zKSBVRFBIUyBFbmRwb2ludCBDbGVhciBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVURQSFNfRVBUXzNfRVBUQ0ZHIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTQxNjApIC8vIChVRFBIU19FUFRfMykgVURQSFMgRW5kcG9pbnQgQ29uZmlnIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VEUEhTX0VQVF8zX0VQVFNUQSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE0MTdDKSAvLyAoVURQSFNfRVBUXzMpIFVEUEhTIEVuZHBvaW50IFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VRFBIU19FUFRfM19FUFRDVEwgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBNDE2QykgLy8gKFVEUEhTX0VQVF8zKSBVRFBIUyBFbmRwb2ludCBDb250cm9sIFJlZ2lzdGVyDQovLyA9PT09PT09PT09IFJlZ2lzdGVyIGRlZmluaXRpb24gZm9yIFVEUEhTX0VQVF80IHBlcmlwaGVyYWwgPT09PT09PT09PSANCiNkZWZpbmUgQVQ5MUNfVURQSFNfRVBUXzRfRVBUU0VUU1RBIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTQxOTQpIC8vIChVRFBIU19FUFRfNCkgVURQSFMgRW5kcG9pbnQgU2V0IFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VRFBIU19FUFRfNF9FUFRDVExESVMgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBNDE4OCkgLy8gKFVEUEhTX0VQVF80KSBVRFBIUyBFbmRwb2ludCBDb250cm9sIERpc2FibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVURQSFNfRVBUXzRfRVBUQ1RMIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTQxOEMpIC8vIChVRFBIU19FUFRfNCkgVURQSFMgRW5kcG9pbnQgQ29udHJvbCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VRFBIU19FUFRfNF9FUFRDRkcgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBNDE4MCkgLy8gKFVEUEhTX0VQVF80KSBVRFBIUyBFbmRwb2ludCBDb25maWcgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVURQSFNfRVBUXzRfRVBUQ1RMRU5CIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTQxODQpIC8vIChVRFBIU19FUFRfNCkgVURQSFMgRW5kcG9pbnQgQ29udHJvbCBFbmFibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVURQSFNfRVBUXzRfRVBUU1RBIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTQxOUMpIC8vIChVRFBIU19FUFRfNCkgVURQSFMgRW5kcG9pbnQgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VEUEhTX0VQVF80X0VQVENMUlNUQSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE0MTk4KSAvLyAoVURQSFNfRVBUXzQpIFVEUEhTIEVuZHBvaW50IENsZWFyIFN0YXR1cyBSZWdpc3Rlcg0KLy8gPT09PT09PT09PSBSZWdpc3RlciBkZWZpbml0aW9uIGZvciBVRFBIU19FUFRfNSBwZXJpcGhlcmFsID09PT09PT09PT0gDQojZGVmaW5lIEFUOTFDX1VEUEhTX0VQVF81X0VQVENGRyAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE0MUEwKSAvLyAoVURQSFNfRVBUXzUpIFVEUEhTIEVuZHBvaW50IENvbmZpZyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VRFBIU19FUFRfNV9FUFRDVEwgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBNDFBQykgLy8gKFVEUEhTX0VQVF81KSBVRFBIUyBFbmRwb2ludCBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VEUEhTX0VQVF81X0VQVENUTEVOQiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE0MUE0KSAvLyAoVURQSFNfRVBUXzUpIFVEUEhTIEVuZHBvaW50IENvbnRyb2wgRW5hYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VEUEhTX0VQVF81X0VQVFNUQSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE0MUJDKSAvLyAoVURQSFNfRVBUXzUpIFVEUEhTIEVuZHBvaW50IFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VRFBIU19FUFRfNV9FUFRTRVRTVEEgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBNDFCNCkgLy8gKFVEUEhTX0VQVF81KSBVRFBIUyBFbmRwb2ludCBTZXQgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VEUEhTX0VQVF81X0VQVENUTERJUyAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE0MUE4KSAvLyAoVURQSFNfRVBUXzUpIFVEUEhTIEVuZHBvaW50IENvbnRyb2wgRGlzYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VRFBIU19FUFRfNV9FUFRDTFJTVEEgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBNDFCOCkgLy8gKFVEUEhTX0VQVF81KSBVRFBIUyBFbmRwb2ludCBDbGVhciBTdGF0dXMgUmVnaXN0ZXINCi8vID09PT09PT09PT0gUmVnaXN0ZXIgZGVmaW5pdGlvbiBmb3IgVURQSFNfRVBUXzYgcGVyaXBoZXJhbCA9PT09PT09PT09IA0KI2RlZmluZSBBVDkxQ19VRFBIU19FUFRfNl9FUFRDTFJTVEEgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBNDFEOCkgLy8gKFVEUEhTX0VQVF82KSBVRFBIUyBFbmRwb2ludCBDbGVhciBTdGF0dXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVURQSFNfRVBUXzZfRVBUQ1RMIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTQxQ0MpIC8vIChVRFBIU19FUFRfNikgVURQSFMgRW5kcG9pbnQgQ29udHJvbCBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VRFBIU19FUFRfNl9FUFRDRkcgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBNDFDMCkgLy8gKFVEUEhTX0VQVF82KSBVRFBIUyBFbmRwb2ludCBDb25maWcgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVURQSFNfRVBUXzZfRVBUQ1RMRElTIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTQxQzgpIC8vIChVRFBIU19FUFRfNikgVURQSFMgRW5kcG9pbnQgQ29udHJvbCBEaXNhYmxlIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VEUEhTX0VQVF82X0VQVFNUQSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE0MURDKSAvLyAoVURQSFNfRVBUXzYpIFVEUEhTIEVuZHBvaW50IFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VRFBIU19FUFRfNl9FUFRDVExFTkIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBNDFDNCkgLy8gKFVEUEhTX0VQVF82KSBVRFBIUyBFbmRwb2ludCBDb250cm9sIEVuYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VRFBIU19FUFRfNl9FUFRTRVRTVEEgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBNDFENCkgLy8gKFVEUEhTX0VQVF82KSBVRFBIUyBFbmRwb2ludCBTZXQgU3RhdHVzIFJlZ2lzdGVyDQovLyA9PT09PT09PT09IFJlZ2lzdGVyIGRlZmluaXRpb24gZm9yIFVEUEhTX0RNQV8xIHBlcmlwaGVyYWwgPT09PT09PT09PSANCiNkZWZpbmUgQVQ5MUNfVURQSFNfRE1BXzFfRE1BU1RBVFVTIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTQzMUMpIC8vIChVRFBIU19ETUFfMSkgVURQSFMgRE1BIENoYW5uZWwgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VEUEhTX0RNQV8xX0RNQUNPTlRST0wgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBNDMxOCkgLy8gKFVEUEhTX0RNQV8xKSBVRFBIUyBETUEgQ2hhbm5lbCBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VEUEhTX0RNQV8xX0RNQU5YVERTQyAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE0MzEwKSAvLyAoVURQSFNfRE1BXzEpIFVEUEhTIERNQSBDaGFubmVsIE5leHQgRGVzY3JpcHRvciBBZGRyZXNzDQojZGVmaW5lIEFUOTFDX1VEUEhTX0RNQV8xX0RNQUFERFJFU1MgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBNDMxNCkgLy8gKFVEUEhTX0RNQV8xKSBVRFBIUyBETUEgQ2hhbm5lbCBBZGRyZXNzIFJlZ2lzdGVyDQovLyA9PT09PT09PT09IFJlZ2lzdGVyIGRlZmluaXRpb24gZm9yIFVEUEhTX0RNQV8yIHBlcmlwaGVyYWwgPT09PT09PT09PSANCiNkZWZpbmUgQVQ5MUNfVURQSFNfRE1BXzJfRE1BU1RBVFVTIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTQzMkMpIC8vIChVRFBIU19ETUFfMikgVURQSFMgRE1BIENoYW5uZWwgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VEUEhTX0RNQV8yX0RNQU5YVERTQyAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE0MzIwKSAvLyAoVURQSFNfRE1BXzIpIFVEUEhTIERNQSBDaGFubmVsIE5leHQgRGVzY3JpcHRvciBBZGRyZXNzDQojZGVmaW5lIEFUOTFDX1VEUEhTX0RNQV8yX0RNQUNPTlRST0wgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBNDMyOCkgLy8gKFVEUEhTX0RNQV8yKSBVRFBIUyBETUEgQ2hhbm5lbCBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VEUEhTX0RNQV8yX0RNQUFERFJFU1MgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBNDMyNCkgLy8gKFVEUEhTX0RNQV8yKSBVRFBIUyBETUEgQ2hhbm5lbCBBZGRyZXNzIFJlZ2lzdGVyDQovLyA9PT09PT09PT09IFJlZ2lzdGVyIGRlZmluaXRpb24gZm9yIFVEUEhTX0RNQV8zIHBlcmlwaGVyYWwgPT09PT09PT09PSANCiNkZWZpbmUgQVQ5MUNfVURQSFNfRE1BXzNfRE1BQ09OVFJPTCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE0MzM4KSAvLyAoVURQSFNfRE1BXzMpIFVEUEhTIERNQSBDaGFubmVsIENvbnRyb2wgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVURQSFNfRE1BXzNfRE1BTlhURFNDIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTQzMzApIC8vIChVRFBIU19ETUFfMykgVURQSFMgRE1BIENoYW5uZWwgTmV4dCBEZXNjcmlwdG9yIEFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfVURQSFNfRE1BXzNfRE1BU1RBVFVTIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTQzM0MpIC8vIChVRFBIU19ETUFfMykgVURQSFMgRE1BIENoYW5uZWwgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VEUEhTX0RNQV8zX0RNQUFERFJFU1MgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBNDMzNCkgLy8gKFVEUEhTX0RNQV8zKSBVRFBIUyBETUEgQ2hhbm5lbCBBZGRyZXNzIFJlZ2lzdGVyDQovLyA9PT09PT09PT09IFJlZ2lzdGVyIGRlZmluaXRpb24gZm9yIFVEUEhTX0RNQV80IHBlcmlwaGVyYWwgPT09PT09PT09PSANCiNkZWZpbmUgQVQ5MUNfVURQSFNfRE1BXzRfRE1BQUREUkVTUyAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE0MzQ0KSAvLyAoVURQSFNfRE1BXzQpIFVEUEhTIERNQSBDaGFubmVsIEFkZHJlc3MgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVURQSFNfRE1BXzRfRE1BTlhURFNDIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTQzNDApIC8vIChVRFBIU19ETUFfNCkgVURQSFMgRE1BIENoYW5uZWwgTmV4dCBEZXNjcmlwdG9yIEFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfVURQSFNfRE1BXzRfRE1BU1RBVFVTIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTQzNEMpIC8vIChVRFBIU19ETUFfNCkgVURQSFMgRE1BIENoYW5uZWwgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VEUEhTX0RNQV80X0RNQUNPTlRST0wgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBNDM0OCkgLy8gKFVEUEhTX0RNQV80KSBVRFBIUyBETUEgQ2hhbm5lbCBDb250cm9sIFJlZ2lzdGVyDQovLyA9PT09PT09PT09IFJlZ2lzdGVyIGRlZmluaXRpb24gZm9yIFVEUEhTX0RNQV81IHBlcmlwaGVyYWwgPT09PT09PT09PSANCiNkZWZpbmUgQVQ5MUNfVURQSFNfRE1BXzVfRE1BQ09OVFJPTCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE0MzU4KSAvLyAoVURQSFNfRE1BXzUpIFVEUEhTIERNQSBDaGFubmVsIENvbnRyb2wgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVURQSFNfRE1BXzVfRE1BQUREUkVTUyAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE0MzU0KSAvLyAoVURQSFNfRE1BXzUpIFVEUEhTIERNQSBDaGFubmVsIEFkZHJlc3MgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVURQSFNfRE1BXzVfRE1BTlhURFNDIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTQzNTApIC8vIChVRFBIU19ETUFfNSkgVURQSFMgRE1BIENoYW5uZWwgTmV4dCBEZXNjcmlwdG9yIEFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfVURQSFNfRE1BXzVfRE1BU1RBVFVTIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTQzNUMpIC8vIChVRFBIU19ETUFfNSkgVURQSFMgRE1BIENoYW5uZWwgU3RhdHVzIFJlZ2lzdGVyDQovLyA9PT09PT09PT09IFJlZ2lzdGVyIGRlZmluaXRpb24gZm9yIFVEUEhTX0RNQV82IHBlcmlwaGVyYWwgPT09PT09PT09PSANCiNkZWZpbmUgQVQ5MUNfVURQSFNfRE1BXzZfRE1BU1RBVFVTIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTQzNkMpIC8vIChVRFBIU19ETUFfNikgVURQSFMgRE1BIENoYW5uZWwgU3RhdHVzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VEUEhTX0RNQV82X0RNQUNPTlRST0wgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBNDM2OCkgLy8gKFVEUEhTX0RNQV82KSBVRFBIUyBETUEgQ2hhbm5lbCBDb250cm9sIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VEUEhTX0RNQV82X0RNQU5YVERTQyAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE0MzYwKSAvLyAoVURQSFNfRE1BXzYpIFVEUEhTIERNQSBDaGFubmVsIE5leHQgRGVzY3JpcHRvciBBZGRyZXNzDQojZGVmaW5lIEFUOTFDX1VEUEhTX0RNQV82X0RNQUFERFJFU1MgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBNDM2NCkgLy8gKFVEUEhTX0RNQV82KSBVRFBIUyBETUEgQ2hhbm5lbCBBZGRyZXNzIFJlZ2lzdGVyDQovLyA9PT09PT09PT09IFJlZ2lzdGVyIGRlZmluaXRpb24gZm9yIFVEUEhTIHBlcmlwaGVyYWwgPT09PT09PT09PSANCiNkZWZpbmUgQVQ5MUNfVURQSFNfRVBUUlNUIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTQwMUMpIC8vIChVRFBIUykgVURQSFMgRW5kcG9pbnRzIFJlc2V0IFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VEUEhTX0lFTiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE0MDEwKSAvLyAoVURQSFMpIFVEUEhTIEludGVycnVwdCBFbmFibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVURQSFNfVFNUQ05UQiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE0MEQ4KSAvLyAoVURQSFMpIFVEUEhTIFRlc3QgQiBDb3VudGVyIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VEUEhTX1JJUE5BTUUyIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTQwRjQpIC8vIChVRFBIUykgVURQSFMgTmFtZTIgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVURQSFNfUklQUEFERFJTSVpFIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTQwRUMpIC8vIChVRFBIUykgVURQSFMgUEFERFJTSVpFIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VEUEhTX1RTVE1PRFJFRyAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE0MERDKSAvLyAoVURQSFMpIFVEUEhTIFRlc3QgTW9kZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VRFBIU19UU1QgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBBNDBFMCkgLy8gKFVEUEhTKSBVRFBIUyBUZXN0IFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VEUEhTX1RTVFNPRkNOVCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE0MEQwKSAvLyAoVURQSFMpIFVEUEhTIFRlc3QgU09GIENvdW50ZXIgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVURQSFNfRk5VTSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE0MDA0KSAvLyAoVURQSFMpIFVEUEhTIEZyYW1lIE51bWJlciBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VRFBIU19UU1RDTlRBIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTQwRDQpIC8vIChVRFBIUykgVURQSFMgVGVzdCBBIENvdW50ZXIgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVURQSFNfSU5UU1RBIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTQwMTQpIC8vIChVRFBIUykgVURQSFMgSW50ZXJydXB0IFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19VRFBIU19JUEZFQVRVUkVTIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTQwRjgpIC8vIChVRFBIUykgVURQSFMgRmVhdHVyZXMgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVURQSFNfQ0xSSU5UIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTQwMTgpIC8vIChVRFBIUykgVURQSFMgQ2xlYXIgSW50ZXJydXB0IFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX1VEUEhTX1JJUE5BTUUxIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTQwRjApIC8vIChVRFBIUykgVURQSFMgTmFtZTEgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVURQSFNfQ1RSTCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEE0MDAwKSAvLyAoVURQSFMpIFVEUEhTIENvbnRyb2wgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfVURQSFNfSVBWRVJTSU9OIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQTQwRkMpIC8vIChVRFBIUykgVURQSFMgVmVyc2lvbiBSZWdpc3Rlcg0KLy8gPT09PT09PT09PSBSZWdpc3RlciBkZWZpbml0aW9uIGZvciBIRE1BX0NIXzAgcGVyaXBoZXJhbCA9PT09PT09PT09IA0KI2RlZmluZSBBVDkxQ19IRE1BX0NIXzBfQ0FERFIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBCMDA2MCkgLy8gKEhETUFfQ0hfMCkgSERNQSBSZXNlcnZlZA0KI2RlZmluZSBBVDkxQ19IRE1BX0NIXzBfREFERFIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBCMDA0MCkgLy8gKEhETUFfQ0hfMCkgSERNQSBDaGFubmVsIERlc3RpbmF0aW9uIEFkZHJlc3MgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfSERNQV9DSF8wX0JEU0NSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQjAwNUMpIC8vIChIRE1BX0NIXzApIEhETUEgUmVzZXJ2ZWQNCiNkZWZpbmUgQVQ5MUNfSERNQV9DSF8wX0NGRyAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEIwMDUwKSAvLyAoSERNQV9DSF8wKSBIRE1BIENoYW5uZWwgQ29uZmlndXJhdGlvbiBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19IRE1BX0NIXzBfQ1RSTEIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBCMDA0QykgLy8gKEhETUFfQ0hfMCkgSERNQSBDaGFubmVsIENvbnRyb2wgQiBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19IRE1BX0NIXzBfQ1RSTEEgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBCMDA0OCkgLy8gKEhETUFfQ0hfMCkgSERNQSBDaGFubmVsIENvbnRyb2wgQSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19IRE1BX0NIXzBfRFNDUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEIwMDQ0KSAvLyAoSERNQV9DSF8wKSBIRE1BIENoYW5uZWwgRGVzY3JpcHRvciBBZGRyZXNzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0hETUFfQ0hfMF9TQUREUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEIwMDNDKSAvLyAoSERNQV9DSF8wKSBIRE1BIENoYW5uZWwgU291cmNlIEFkZHJlc3MgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfSERNQV9DSF8wX0RQSVAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBCMDA1OCkgLy8gKEhETUFfQ0hfMCkgSERNQSBDaGFubmVsIERlc3RpbmF0aW9uIFBpY3R1cmUgaW4gUGljdHVyZSBDb25maWd1cmF0aW9uIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0hETUFfQ0hfMF9TUElQIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQjAwNTQpIC8vIChIRE1BX0NIXzApIEhETUEgQ2hhbm5lbCBTb3VyY2UgUGljdHVyZSBpbiBQaWN0dXJlIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXINCi8vID09PT09PT09PT0gUmVnaXN0ZXIgZGVmaW5pdGlvbiBmb3IgSERNQV9DSF8xIHBlcmlwaGVyYWwgPT09PT09PT09PSANCiNkZWZpbmUgQVQ5MUNfSERNQV9DSF8xX0RTQ1IgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBCMDA2QykgLy8gKEhETUFfQ0hfMSkgSERNQSBDaGFubmVsIERlc2NyaXB0b3IgQWRkcmVzcyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19IRE1BX0NIXzFfQkRTQ1IgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBCMDA4NCkgLy8gKEhETUFfQ0hfMSkgSERNQSBSZXNlcnZlZA0KI2RlZmluZSBBVDkxQ19IRE1BX0NIXzFfQ1RSTEIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBCMDA3NCkgLy8gKEhETUFfQ0hfMSkgSERNQSBDaGFubmVsIENvbnRyb2wgQiBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19IRE1BX0NIXzFfU1BJUCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEIwMDdDKSAvLyAoSERNQV9DSF8xKSBIRE1BIENoYW5uZWwgU291cmNlIFBpY3R1cmUgaW4gUGljdHVyZSBDb25maWd1cmF0aW9uIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0hETUFfQ0hfMV9TQUREUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEIwMDY0KSAvLyAoSERNQV9DSF8xKSBIRE1BIENoYW5uZWwgU291cmNlIEFkZHJlc3MgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfSERNQV9DSF8xX0RQSVAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBCMDA4MCkgLy8gKEhETUFfQ0hfMSkgSERNQSBDaGFubmVsIERlc3RpbmF0aW9uIFBpY3R1cmUgaW4gUGljdHVyZSBDb25maWd1cmF0aW9uIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0hETUFfQ0hfMV9DRkcgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBCMDA3OCkgLy8gKEhETUFfQ0hfMSkgSERNQSBDaGFubmVsIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfSERNQV9DSF8xX0RBRERSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQjAwNjgpIC8vIChIRE1BX0NIXzEpIEhETUEgQ2hhbm5lbCBEZXN0aW5hdGlvbiBBZGRyZXNzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0hETUFfQ0hfMV9DQUREUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEIwMDg4KSAvLyAoSERNQV9DSF8xKSBIRE1BIFJlc2VydmVkDQojZGVmaW5lIEFUOTFDX0hETUFfQ0hfMV9DVFJMQSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEIwMDcwKSAvLyAoSERNQV9DSF8xKSBIRE1BIENoYW5uZWwgQ29udHJvbCBBIFJlZ2lzdGVyDQovLyA9PT09PT09PT09IFJlZ2lzdGVyIGRlZmluaXRpb24gZm9yIEhETUFfQ0hfMiBwZXJpcGhlcmFsID09PT09PT09PT0gDQojZGVmaW5lIEFUOTFDX0hETUFfQ0hfMl9CRFNDUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEIwMEFDKSAvLyAoSERNQV9DSF8yKSBIRE1BIFJlc2VydmVkDQojZGVmaW5lIEFUOTFDX0hETUFfQ0hfMl9DVFJMQiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEIwMDlDKSAvLyAoSERNQV9DSF8yKSBIRE1BIENoYW5uZWwgQ29udHJvbCBCIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0hETUFfQ0hfMl9DQUREUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEIwMEIwKSAvLyAoSERNQV9DSF8yKSBIRE1BIFJlc2VydmVkDQojZGVmaW5lIEFUOTFDX0hETUFfQ0hfMl9DRkcgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBCMDBBMCkgLy8gKEhETUFfQ0hfMikgSERNQSBDaGFubmVsIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfSERNQV9DSF8yX0NUUkxBIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQjAwOTgpIC8vIChIRE1BX0NIXzIpIEhETUEgQ2hhbm5lbCBDb250cm9sIEEgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfSERNQV9DSF8yX1NBRERSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQjAwOEMpIC8vIChIRE1BX0NIXzIpIEhETUEgQ2hhbm5lbCBTb3VyY2UgQWRkcmVzcyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19IRE1BX0NIXzJfRFBJUCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEIwMEE4KSAvLyAoSERNQV9DSF8yKSBIRE1BIENoYW5uZWwgRGVzdGluYXRpb24gUGljdHVyZSBpbiBQaWN0dXJlIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfSERNQV9DSF8yX0RBRERSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQjAwOTApIC8vIChIRE1BX0NIXzIpIEhETUEgQ2hhbm5lbCBEZXN0aW5hdGlvbiBBZGRyZXNzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0hETUFfQ0hfMl9TUElQIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQjAwQTQpIC8vIChIRE1BX0NIXzIpIEhETUEgQ2hhbm5lbCBTb3VyY2UgUGljdHVyZSBpbiBQaWN0dXJlIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfSERNQV9DSF8yX0RTQ1IgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBCMDA5NCkgLy8gKEhETUFfQ0hfMikgSERNQSBDaGFubmVsIERlc2NyaXB0b3IgQWRkcmVzcyBSZWdpc3Rlcg0KLy8gPT09PT09PT09PSBSZWdpc3RlciBkZWZpbml0aW9uIGZvciBIRE1BX0NIXzMgcGVyaXBoZXJhbCA9PT09PT09PT09IA0KI2RlZmluZSBBVDkxQ19IRE1BX0NIXzNfRFNDUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEIwMEJDKSAvLyAoSERNQV9DSF8zKSBIRE1BIENoYW5uZWwgRGVzY3JpcHRvciBBZGRyZXNzIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0hETUFfQ0hfM19TQUREUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEIwMEI0KSAvLyAoSERNQV9DSF8zKSBIRE1BIENoYW5uZWwgU291cmNlIEFkZHJlc3MgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfSERNQV9DSF8zX0JEU0NSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQjAwRDQpIC8vIChIRE1BX0NIXzMpIEhETUEgUmVzZXJ2ZWQNCiNkZWZpbmUgQVQ5MUNfSERNQV9DSF8zX0NUUkxBIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQjAwQzApIC8vIChIRE1BX0NIXzMpIEhETUEgQ2hhbm5lbCBDb250cm9sIEEgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfSERNQV9DSF8zX0RQSVAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBCMDBEMCkgLy8gKEhETUFfQ0hfMykgSERNQSBDaGFubmVsIERlc3RpbmF0aW9uIFBpY3R1cmUgaW4gUGljdHVyZSBDb25maWd1cmF0aW9uIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0hETUFfQ0hfM19DVFJMQiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEIwMEM0KSAvLyAoSERNQV9DSF8zKSBIRE1BIENoYW5uZWwgQ29udHJvbCBCIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0hETUFfQ0hfM19TUElQIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQjAwQ0MpIC8vIChIRE1BX0NIXzMpIEhETUEgQ2hhbm5lbCBTb3VyY2UgUGljdHVyZSBpbiBQaWN0dXJlIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfSERNQV9DSF8zX0NGRyAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEIwMEM4KSAvLyAoSERNQV9DSF8zKSBIRE1BIENoYW5uZWwgQ29uZmlndXJhdGlvbiBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19IRE1BX0NIXzNfQ0FERFIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBCMDBEOCkgLy8gKEhETUFfQ0hfMykgSERNQSBSZXNlcnZlZA0KI2RlZmluZSBBVDkxQ19IRE1BX0NIXzNfREFERFIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBCMDBCOCkgLy8gKEhETUFfQ0hfMykgSERNQSBDaGFubmVsIERlc3RpbmF0aW9uIEFkZHJlc3MgUmVnaXN0ZXINCi8vID09PT09PT09PT0gUmVnaXN0ZXIgZGVmaW5pdGlvbiBmb3IgSERNQSBwZXJpcGhlcmFsID09PT09PT09PT0gDQojZGVmaW5lIEFUOTFDX0hETUFfU1lOQyAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEIwMDE0KSAvLyAoSERNQSkgSERNQSBSZXF1ZXN0IFN5bmNocm9uaXphdGlvbiBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19IRE1BX1ZFUiAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBCMDFGQykgLy8gKEhETUEpIEhETUEgVkVSU0lPTiBSRUdJU1RFUiANCiNkZWZpbmUgQVQ5MUNfSERNQV9SU1ZEMCAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEIwMDM0KSAvLyAoSERNQSkgSERNQSBSZXNlcnZlZA0KI2RlZmluZSBBVDkxQ19IRE1BX0NIU1IgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBCMDAzMCkgLy8gKEhETUEpIEhETUEgQ2hhbm5lbCBIYW5kbGVyIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19IRE1BX0lQTkFNRTIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBCMDFGNCkgLy8gKEhETUEpIEhETUEgSVBOQU1FMiBSRUdJU1RFUiANCiNkZWZpbmUgQVQ5MUNfSERNQV9FQkNJTVIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBCMDAyMCkgLy8gKEhETUEpIEhETUEgRXJyb3IsIENoYWluZWQgQnVmZmVyIHRyYW5zZmVyIGNvbXBsZXRlZCBhbmQgQnVmZmVyIHRyYW5zZmVyIGNvbXBsZXRlZCBNYXNrIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0hETUFfQ0hEUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEIwMDJDKSAvLyAoSERNQSkgSERNQSBDaGFubmVsIEhhbmRsZXIgRGlzYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19IRE1BX0VOICAgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBCMDAwNCkgLy8gKEhETUEpIEhETUEgQ29udHJvbGxlciBFbmFibGUgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfSERNQV9HQ0ZHIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQjAwMDApIC8vIChIRE1BKSBIRE1BIEdsb2JhbCBDb25maWd1cmF0aW9uIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0hETUFfSVBOQU1FMSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEIwMUYwKSAvLyAoSERNQSkgSERNQSBJUE5BTUUxIFJFR0lTVEVSIA0KI2RlZmluZSBBVDkxQ19IRE1BX0xBU1QgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBCMDAxMCkgLy8gKEhETUEpIEhETUEgU29mdHdhcmUgTGFzdCBUcmFuc2ZlciBGbGFnIFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0hETUFfRkVBVFVSRVMgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBCMDFGOCkgLy8gKEhETUEpIEhETUEgRkVBVFVSRVMgUkVHSVNURVIgDQojZGVmaW5lIEFUOTFDX0hETUFfQ1JFUSAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEIwMDBDKSAvLyAoSERNQSkgSERNQSBTb2Z0d2FyZSBDaHVuayBUcmFuc2ZlciBSZXF1ZXN0IFJlZ2lzdGVyDQojZGVmaW5lIEFUOTFDX0hETUFfRUJDSUVSIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQjAwMTgpIC8vIChIRE1BKSBIRE1BIEVycm9yLCBDaGFpbmVkIEJ1ZmZlciB0cmFuc2ZlciBjb21wbGV0ZWQgYW5kIEJ1ZmZlciB0cmFuc2ZlciBjb21wbGV0ZWQgSW50ZXJydXB0IEVuYWJsZSByZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19IRE1BX0NIRVIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBCMDAyOCkgLy8gKEhETUEpIEhETUEgQ2hhbm5lbCBIYW5kbGVyIEVuYWJsZSBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19IRE1BX0FERFJTSVpFIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQjAxRUMpIC8vIChIRE1BKSBIRE1BIEFERFJTSVpFIFJFR0lTVEVSIA0KI2RlZmluZSBBVDkxQ19IRE1BX0VCQ0lTUiAoQVQ5MV9DQVNUKEFUOTFfUkVHICopIAkweDQwMEIwMDI0KSAvLyAoSERNQSkgSERNQSBFcnJvciwgQ2hhaW5lZCBCdWZmZXIgdHJhbnNmZXIgY29tcGxldGVkIGFuZCBCdWZmZXIgdHJhbnNmZXIgY29tcGxldGVkIFN0YXR1cyBSZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19IRE1BX1NSRVEgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBCMDAwOCkgLy8gKEhETUEpIEhETUEgU29mdHdhcmUgU2luZ2xlIFJlcXVlc3QgUmVnaXN0ZXINCiNkZWZpbmUgQVQ5MUNfSERNQV9FQkNJRFIgKEFUOTFfQ0FTVChBVDkxX1JFRyAqKSAJMHg0MDBCMDAxQykgLy8gKEhETUEpIEhETUEgRXJyb3IsIENoYWluZWQgQnVmZmVyIHRyYW5zZmVyIGNvbXBsZXRlZCBhbmQgQnVmZmVyIHRyYW5zZmVyIGNvbXBsZXRlZCBJbnRlcnJ1cHQgRGlzYWJsZSByZWdpc3Rlcg0KI2RlZmluZSBBVDkxQ19IRE1BX1JTVkQxIChBVDkxX0NBU1QoQVQ5MV9SRUcgKikgCTB4NDAwQjAwMzgpIC8vIChIRE1BKSBIRE1BIFJlc2VydmVkDQoNCi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQovLyAgICAgICAgICAgICAgIFBJTyBERUZJTklUSU9OUyBGT1IgQVQ5MVNBTTNVNA0KLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCiNkZWZpbmUgQVQ5MUNfUElPX1BBMCAgICAgICAgKDEgPDwgIDApIC8vIFBpbiBDb250cm9sbGVkIGJ5IFBBMA0KI2RlZmluZSBBVDkxQ19QQTBfVElPQjAgICAgKEFUOTFDX1BJT19QQTApIC8vICANCiNkZWZpbmUgQVQ5MUNfUEEwX1NQSTBfTlBDUzEgKEFUOTFDX1BJT19QQTApIC8vICANCiNkZWZpbmUgQVQ5MUNfUElPX1BBMSAgICAgICAgKDEgPDwgIDEpIC8vIFBpbiBDb250cm9sbGVkIGJ5IFBBMQ0KI2RlZmluZSBBVDkxQ19QQTFfVElPQTAgICAgKEFUOTFDX1BJT19QQTEpIC8vICANCiNkZWZpbmUgQVQ5MUNfUEExX1NQSTBfTlBDUzIgKEFUOTFDX1BJT19QQTEpIC8vICANCiNkZWZpbmUgQVQ5MUNfUElPX1BBMTAgICAgICAgKDEgPDwgMTApIC8vIFBpbiBDb250cm9sbGVkIGJ5IFBBMTANCiNkZWZpbmUgQVQ5MUNfUEExMF9UV0NLMCAgICAoQVQ5MUNfUElPX1BBMTApIC8vICANCiNkZWZpbmUgQVQ5MUNfUEExMF9QV01MMyAgICAoQVQ5MUNfUElPX1BBMTApIC8vICANCiNkZWZpbmUgQVQ5MUNfUElPX1BBMTEgICAgICAgKDEgPDwgMTEpIC8vIFBpbiBDb250cm9sbGVkIGJ5IFBBMTENCiNkZWZpbmUgQVQ5MUNfUEExMV9EUlhEICAgICAoQVQ5MUNfUElPX1BBMTEpIC8vICANCiNkZWZpbmUgQVQ5MUNfUElPX1BBMTIgICAgICAgKDEgPDwgMTIpIC8vIFBpbiBDb250cm9sbGVkIGJ5IFBBMTINCiNkZWZpbmUgQVQ5MUNfUEExMl9EVFhEICAgICAoQVQ5MUNfUElPX1BBMTIpIC8vICANCiNkZWZpbmUgQVQ5MUNfUElPX1BBMTMgICAgICAgKDEgPDwgMTMpIC8vIFBpbiBDb250cm9sbGVkIGJ5IFBBMTMNCiNkZWZpbmUgQVQ5MUNfUEExM19TUEkwX01JU08gKEFUOTFDX1BJT19QQTEzKSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQTE0ICAgICAgICgxIDw8IDE0KSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQTE0DQojZGVmaW5lIEFUOTFDX1BBMTRfU1BJMF9NT1NJIChBVDkxQ19QSU9fUEExNCkgLy8gIA0KI2RlZmluZSBBVDkxQ19QSU9fUEExNSAgICAgICAoMSA8PCAxNSkgLy8gUGluIENvbnRyb2xsZWQgYnkgUEExNQ0KI2RlZmluZSBBVDkxQ19QQTE1X1NQSTBfU1BDSyAoQVQ5MUNfUElPX1BBMTUpIC8vICANCiNkZWZpbmUgQVQ5MUNfUEExNV9QV01IMiAgICAoQVQ5MUNfUElPX1BBMTUpIC8vICANCiNkZWZpbmUgQVQ5MUNfUElPX1BBMTYgICAgICAgKDEgPDwgMTYpIC8vIFBpbiBDb250cm9sbGVkIGJ5IFBBMTYNCiNkZWZpbmUgQVQ5MUNfUEExNl9TUEkwX05QQ1MwIChBVDkxQ19QSU9fUEExNikgLy8gIA0KI2RlZmluZSBBVDkxQ19QQTE2X05DUzEgICAgIChBVDkxQ19QSU9fUEExNikgLy8gIA0KI2RlZmluZSBBVDkxQ19QSU9fUEExNyAgICAgICAoMSA8PCAxNykgLy8gUGluIENvbnRyb2xsZWQgYnkgUEExNw0KI2RlZmluZSBBVDkxQ19QQTE3X1NDSzAgICAgIChBVDkxQ19QSU9fUEExNykgLy8gIA0KI2RlZmluZSBBVDkxQ19QQTE3X0FEVFJHMCAgIChBVDkxQ19QSU9fUEExNykgLy8gIA0KI2RlZmluZSBBVDkxQ19QSU9fUEExOCAgICAgICAoMSA8PCAxOCkgLy8gUGluIENvbnRyb2xsZWQgYnkgUEExOA0KI2RlZmluZSBBVDkxQ19QQTE4X1RYRDAgICAgIChBVDkxQ19QSU9fUEExOCkgLy8gIA0KI2RlZmluZSBBVDkxQ19QSU9fUEExOSAgICAgICAoMSA8PCAxOSkgLy8gUGluIENvbnRyb2xsZWQgYnkgUEExOQ0KI2RlZmluZSBBVDkxQ19QQTE5X1JYRDAgICAgIChBVDkxQ19QSU9fUEExOSkgLy8gIA0KI2RlZmluZSBBVDkxQ19QQTE5X1NQSTBfTlBDUzMgKEFUOTFDX1BJT19QQTE5KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQTIgICAgICAgICgxIDw8ICAyKSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQTINCiNkZWZpbmUgQVQ5MUNfUEEyX1RDTEswICAgIChBVDkxQ19QSU9fUEEyKSAvLyAgDQojZGVmaW5lIEFUOTFDX1BBMl9BRFRSRzEgICAoQVQ5MUNfUElPX1BBMikgLy8gIA0KI2RlZmluZSBBVDkxQ19QSU9fUEEyMCAgICAgICAoMSA8PCAyMCkgLy8gUGluIENvbnRyb2xsZWQgYnkgUEEyMA0KI2RlZmluZSBBVDkxQ19QQTIwX1RYRDEgICAgIChBVDkxQ19QSU9fUEEyMCkgLy8gIA0KI2RlZmluZSBBVDkxQ19QQTIwX1BXTUgzICAgIChBVDkxQ19QSU9fUEEyMCkgLy8gIA0KI2RlZmluZSBBVDkxQ19QSU9fUEEyMSAgICAgICAoMSA8PCAyMSkgLy8gUGluIENvbnRyb2xsZWQgYnkgUEEyMQ0KI2RlZmluZSBBVDkxQ19QQTIxX1JYRDEgICAgIChBVDkxQ19QSU9fUEEyMSkgLy8gIA0KI2RlZmluZSBBVDkxQ19QQTIxX1BDSzAgICAgIChBVDkxQ19QSU9fUEEyMSkgLy8gIA0KI2RlZmluZSBBVDkxQ19QSU9fUEEyMiAgICAgICAoMSA8PCAyMikgLy8gUGluIENvbnRyb2xsZWQgYnkgUEEyMg0KI2RlZmluZSBBVDkxQ19QQTIyX1RYRDIgICAgIChBVDkxQ19QSU9fUEEyMikgLy8gIA0KI2RlZmluZSBBVDkxQ19QQTIyX1JUUzEgICAgIChBVDkxQ19QSU9fUEEyMikgLy8gIA0KI2RlZmluZSBBVDkxQ19QSU9fUEEyMyAgICAgICAoMSA8PCAyMykgLy8gUGluIENvbnRyb2xsZWQgYnkgUEEyMw0KI2RlZmluZSBBVDkxQ19QQTIzX1JYRDIgICAgIChBVDkxQ19QSU9fUEEyMykgLy8gIA0KI2RlZmluZSBBVDkxQ19QQTIzX0NUUzEgICAgIChBVDkxQ19QSU9fUEEyMykgLy8gIA0KI2RlZmluZSBBVDkxQ19QSU9fUEEyNCAgICAgICAoMSA8PCAyNCkgLy8gUGluIENvbnRyb2xsZWQgYnkgUEEyNA0KI2RlZmluZSBBVDkxQ19QQTI0X1RXRDEgICAgIChBVDkxQ19QSU9fUEEyNCkgLy8gIA0KI2RlZmluZSBBVDkxQ19QQTI0X1NDSzEgICAgIChBVDkxQ19QSU9fUEEyNCkgLy8gIA0KI2RlZmluZSBBVDkxQ19QSU9fUEEyNSAgICAgICAoMSA8PCAyNSkgLy8gUGluIENvbnRyb2xsZWQgYnkgUEEyNQ0KI2RlZmluZSBBVDkxQ19QQTI1X1RXQ0sxICAgIChBVDkxQ19QSU9fUEEyNSkgLy8gIA0KI2RlZmluZSBBVDkxQ19QQTI1X1NDSzIgICAgIChBVDkxQ19QSU9fUEEyNSkgLy8gIA0KI2RlZmluZSBBVDkxQ19QSU9fUEEyNiAgICAgICAoMSA8PCAyNikgLy8gUGluIENvbnRyb2xsZWQgYnkgUEEyNg0KI2RlZmluZSBBVDkxQ19QQTI2X1REMCAgICAgIChBVDkxQ19QSU9fUEEyNikgLy8gIA0KI2RlZmluZSBBVDkxQ19QQTI2X1RDTEsyICAgIChBVDkxQ19QSU9fUEEyNikgLy8gIA0KI2RlZmluZSBBVDkxQ19QSU9fUEEyNyAgICAgICAoMSA8PCAyNykgLy8gUGluIENvbnRyb2xsZWQgYnkgUEEyNw0KI2RlZmluZSBBVDkxQ19QQTI3X1JEMCAgICAgIChBVDkxQ19QSU9fUEEyNykgLy8gIA0KI2RlZmluZSBBVDkxQ19QQTI3X1BDSzAgICAgIChBVDkxQ19QSU9fUEEyNykgLy8gIA0KI2RlZmluZSBBVDkxQ19QSU9fUEEyOCAgICAgICAoMSA8PCAyOCkgLy8gUGluIENvbnRyb2xsZWQgYnkgUEEyOA0KI2RlZmluZSBBVDkxQ19QQTI4X1RLMCAgICAgIChBVDkxQ19QSU9fUEEyOCkgLy8gIA0KI2RlZmluZSBBVDkxQ19QQTI4X1BXTUgwICAgIChBVDkxQ19QSU9fUEEyOCkgLy8gIA0KI2RlZmluZSBBVDkxQ19QSU9fUEEyOSAgICAgICAoMSA8PCAyOSkgLy8gUGluIENvbnRyb2xsZWQgYnkgUEEyOQ0KI2RlZmluZSBBVDkxQ19QQTI5X1JLMCAgICAgIChBVDkxQ19QSU9fUEEyOSkgLy8gIA0KI2RlZmluZSBBVDkxQ19QQTI5X1BXTUgxICAgIChBVDkxQ19QSU9fUEEyOSkgLy8gIA0KI2RlZmluZSBBVDkxQ19QSU9fUEEzICAgICAgICAoMSA8PCAgMykgLy8gUGluIENvbnRyb2xsZWQgYnkgUEEzDQojZGVmaW5lIEFUOTFDX1BBM19NQ0kwX0NLICAoQVQ5MUNfUElPX1BBMykgLy8gIA0KI2RlZmluZSBBVDkxQ19QQTNfUENLMSAgICAgKEFUOTFDX1BJT19QQTMpIC8vICANCiNkZWZpbmUgQVQ5MUNfUElPX1BBMzAgICAgICAgKDEgPDwgMzApIC8vIFBpbiBDb250cm9sbGVkIGJ5IFBBMzANCiNkZWZpbmUgQVQ5MUNfUEEzMF9URjAgICAgICAoQVQ5MUNfUElPX1BBMzApIC8vICANCiNkZWZpbmUgQVQ5MUNfUEEzMF9USU9BMiAgICAoQVQ5MUNfUElPX1BBMzApIC8vICANCiNkZWZpbmUgQVQ5MUNfUElPX1BBMzEgICAgICAgKDEgPDwgMzEpIC8vIFBpbiBDb250cm9sbGVkIGJ5IFBBMzENCiNkZWZpbmUgQVQ5MUNfUEEzMV9SRjAgICAgICAoQVQ5MUNfUElPX1BBMzEpIC8vICANCiNkZWZpbmUgQVQ5MUNfUEEzMV9USU9CMiAgICAoQVQ5MUNfUElPX1BBMzEpIC8vICANCiNkZWZpbmUgQVQ5MUNfUElPX1BBNCAgICAgICAgKDEgPDwgIDQpIC8vIFBpbiBDb250cm9sbGVkIGJ5IFBBNA0KI2RlZmluZSBBVDkxQ19QQTRfTUNJMF9DREEgKEFUOTFDX1BJT19QQTQpIC8vICANCiNkZWZpbmUgQVQ5MUNfUEE0X1BXTUgwICAgIChBVDkxQ19QSU9fUEE0KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQTUgICAgICAgICgxIDw8ICA1KSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQTUNCiNkZWZpbmUgQVQ5MUNfUEE1X01DSTBfREEwIChBVDkxQ19QSU9fUEE1KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BBNV9QV01IMSAgICAoQVQ5MUNfUElPX1BBNSkgLy8gIA0KI2RlZmluZSBBVDkxQ19QSU9fUEE2ICAgICAgICAoMSA8PCAgNikgLy8gUGluIENvbnRyb2xsZWQgYnkgUEE2DQojZGVmaW5lIEFUOTFDX1BBNl9NQ0kwX0RBMSAoQVQ5MUNfUElPX1BBNikgLy8gIA0KI2RlZmluZSBBVDkxQ19QQTZfUFdNSDIgICAgKEFUOTFDX1BJT19QQTYpIC8vICANCiNkZWZpbmUgQVQ5MUNfUElPX1BBNyAgICAgICAgKDEgPDwgIDcpIC8vIFBpbiBDb250cm9sbGVkIGJ5IFBBNw0KI2RlZmluZSBBVDkxQ19QQTdfTUNJMF9EQTIgKEFUOTFDX1BJT19QQTcpIC8vICANCiNkZWZpbmUgQVQ5MUNfUEE3X1BXTUwwICAgIChBVDkxQ19QSU9fUEE3KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQTggICAgICAgICgxIDw8ICA4KSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQTgNCiNkZWZpbmUgQVQ5MUNfUEE4X01DSTBfREEzIChBVDkxQ19QSU9fUEE4KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BBOF9QV01MMSAgICAoQVQ5MUNfUElPX1BBOCkgLy8gIA0KI2RlZmluZSBBVDkxQ19QSU9fUEE5ICAgICAgICAoMSA8PCAgOSkgLy8gUGluIENvbnRyb2xsZWQgYnkgUEE5DQojZGVmaW5lIEFUOTFDX1BBOV9UV0QwICAgICAoQVQ5MUNfUElPX1BBOSkgLy8gIA0KI2RlZmluZSBBVDkxQ19QQTlfUFdNTDIgICAgKEFUOTFDX1BJT19QQTkpIC8vICANCiNkZWZpbmUgQVQ5MUNfUElPX1BCMCAgICAgICAgKDEgPDwgIDApIC8vIFBpbiBDb250cm9sbGVkIGJ5IFBCMA0KI2RlZmluZSBBVDkxQ19QQjBfUFdNSDAgICAgKEFUOTFDX1BJT19QQjApIC8vICANCiNkZWZpbmUgQVQ5MUNfUEIwX0EyICAgICAgIChBVDkxQ19QSU9fUEIwKSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQjEgICAgICAgICgxIDw8ICAxKSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQjENCiNkZWZpbmUgQVQ5MUNfUEIxX1BXTUgxICAgIChBVDkxQ19QSU9fUEIxKSAvLyAgDQojZGVmaW5lIEFUOTFDX1BCMV9BMyAgICAgICAoQVQ5MUNfUElPX1BCMSkgLy8gIA0KI2RlZmluZSBBVDkxQ19QSU9fUEIxMCAgICAgICAoMSA8PCAxMCkgLy8gUGluIENvbnRyb2xsZWQgYnkgUEIxMA0KI2RlZmluZSBBVDkxQ19QQjEwX0QxICAgICAgIChBVDkxQ19QSU9fUEIxMCkgLy8gIA0KI2RlZmluZSBBVDkxQ19QQjEwX0RTUjAgICAgIChBVDkxQ19QSU9fUEIxMCkgLy8gIA0KI2RlZmluZSBBVDkxQ19QSU9fUEIxMSAgICAgICAoMSA8PCAxMSkgLy8gUGluIENvbnRyb2xsZWQgYnkgUEIxMQ0KI2RlZmluZSBBVDkxQ19QQjExX0QyICAgICAgIChBVDkxQ19QSU9fUEIxMSkgLy8gIA0KI2RlZmluZSBBVDkxQ19QQjExX0RDRDAgICAgIChBVDkxQ19QSU9fUEIxMSkgLy8gIA0KI2RlZmluZSBBVDkxQ19QSU9fUEIxMiAgICAgICAoMSA8PCAxMikgLy8gUGluIENvbnRyb2xsZWQgYnkgUEIxMg0KI2RlZmluZSBBVDkxQ19QQjEyX0QzICAgICAgIChBVDkxQ19QSU9fUEIxMikgLy8gIA0KI2RlZmluZSBBVDkxQ19QQjEyX1JJMCAgICAgIChBVDkxQ19QSU9fUEIxMikgLy8gIA0KI2RlZmluZSBBVDkxQ19QSU9fUEIxMyAgICAgICAoMSA8PCAxMykgLy8gUGluIENvbnRyb2xsZWQgYnkgUEIxMw0KI2RlZmluZSBBVDkxQ19QQjEzX0Q0ICAgICAgIChBVDkxQ19QSU9fUEIxMykgLy8gIA0KI2RlZmluZSBBVDkxQ19QQjEzX1BXTUgwICAgIChBVDkxQ19QSU9fUEIxMykgLy8gIA0KI2RlZmluZSBBVDkxQ19QSU9fUEIxNCAgICAgICAoMSA8PCAxNCkgLy8gUGluIENvbnRyb2xsZWQgYnkgUEIxNA0KI2RlZmluZSBBVDkxQ19QQjE0X0Q1ICAgICAgIChBVDkxQ19QSU9fUEIxNCkgLy8gIA0KI2RlZmluZSBBVDkxQ19QQjE0X1BXTUgxICAgIChBVDkxQ19QSU9fUEIxNCkgLy8gIA0KI2RlZmluZSBBVDkxQ19QSU9fUEIxNSAgICAgICAoMSA8PCAxNSkgLy8gUGluIENvbnRyb2xsZWQgYnkgUEIxNQ0KI2RlZmluZSBBVDkxQ19QQjE1X0Q2ICAgICAgIChBVDkxQ19QSU9fUEIxNSkgLy8gIA0KI2RlZmluZSBBVDkxQ19QQjE1X1BXTUgyICAgIChBVDkxQ19QSU9fUEIxNSkgLy8gIA0KI2RlZmluZSBBVDkxQ19QSU9fUEIxNiAgICAgICAoMSA8PCAxNikgLy8gUGluIENvbnRyb2xsZWQgYnkgUEIxNg0KI2RlZmluZSBBVDkxQ19QQjE2X0Q3ICAgICAgIChBVDkxQ19QSU9fUEIxNikgLy8gIA0KI2RlZmluZSBBVDkxQ19QQjE2X1BXTUgzICAgIChBVDkxQ19QSU9fUEIxNikgLy8gIA0KI2RlZmluZSBBVDkxQ19QSU9fUEIxNyAgICAgICAoMSA8PCAxNykgLy8gUGluIENvbnRyb2xsZWQgYnkgUEIxNw0KI2RlZmluZSBBVDkxQ19QQjE3X05BTkRPRSAgIChBVDkxQ19QSU9fUEIxNykgLy8gIA0KI2RlZmluZSBBVDkxQ19QQjE3X1BXTUwwICAgIChBVDkxQ19QSU9fUEIxNykgLy8gIA0KI2RlZmluZSBBVDkxQ19QSU9fUEIxOCAgICAgICAoMSA8PCAxOCkgLy8gUGluIENvbnRyb2xsZWQgYnkgUEIxOA0KI2RlZmluZSBBVDkxQ19QQjE4X05BTkRXRSAgIChBVDkxQ19QSU9fUEIxOCkgLy8gIA0KI2RlZmluZSBBVDkxQ19QQjE4X1BXTUwxICAgIChBVDkxQ19QSU9fUEIxOCkgLy8gIA0KI2RlZmluZSBBVDkxQ19QSU9fUEIxOSAgICAgICAoMSA8PCAxOSkgLy8gUGluIENvbnRyb2xsZWQgYnkgUEIxOQ0KI2RlZmluZSBBVDkxQ19QQjE5X05SRCAgICAgIChBVDkxQ19QSU9fUEIxOSkgLy8gIA0KI2RlZmluZSBBVDkxQ19QQjE5X1BXTUwyICAgIChBVDkxQ19QSU9fUEIxOSkgLy8gIA0KI2RlZmluZSBBVDkxQ19QSU9fUEIyICAgICAgICAoMSA8PCAgMikgLy8gUGluIENvbnRyb2xsZWQgYnkgUEIyDQojZGVmaW5lIEFUOTFDX1BCMl9QV01IMiAgICAoQVQ5MUNfUElPX1BCMikgLy8gIA0KI2RlZmluZSBBVDkxQ19QQjJfQTQgICAgICAgKEFUOTFDX1BJT19QQjIpIC8vICANCiNkZWZpbmUgQVQ5MUNfUElPX1BCMjAgICAgICAgKDEgPDwgMjApIC8vIFBpbiBDb250cm9sbGVkIGJ5IFBCMjANCiNkZWZpbmUgQVQ5MUNfUEIyMF9OQ1MwICAgICAoQVQ5MUNfUElPX1BCMjApIC8vICANCiNkZWZpbmUgQVQ5MUNfUEIyMF9QV01MMyAgICAoQVQ5MUNfUElPX1BCMjApIC8vICANCiNkZWZpbmUgQVQ5MUNfUElPX1BCMjEgICAgICAgKDEgPDwgMjEpIC8vIFBpbiBDb250cm9sbGVkIGJ5IFBCMjENCiNkZWZpbmUgQVQ5MUNfUEIyMV9BMjFfTkFOREFMRSAoQVQ5MUNfUElPX1BCMjEpIC8vICANCiNkZWZpbmUgQVQ5MUNfUEIyMV9SVFMyICAgICAoQVQ5MUNfUElPX1BCMjEpIC8vICANCiNkZWZpbmUgQVQ5MUNfUElPX1BCMjIgICAgICAgKDEgPDwgMjIpIC8vIFBpbiBDb250cm9sbGVkIGJ5IFBCMjINCiNkZWZpbmUgQVQ5MUNfUEIyMl9BMjJfTkFORENMRSAoQVQ5MUNfUElPX1BCMjIpIC8vICANCiNkZWZpbmUgQVQ5MUNfUEIyMl9DVFMyICAgICAoQVQ5MUNfUElPX1BCMjIpIC8vICANCiNkZWZpbmUgQVQ5MUNfUElPX1BCMjMgICAgICAgKDEgPDwgMjMpIC8vIFBpbiBDb250cm9sbGVkIGJ5IFBCMjMNCiNkZWZpbmUgQVQ5MUNfUEIyM19OV1IwX05XRSAoQVQ5MUNfUElPX1BCMjMpIC8vICANCiNkZWZpbmUgQVQ5MUNfUEIyM19QQ0syICAgICAoQVQ5MUNfUElPX1BCMjMpIC8vICANCiNkZWZpbmUgQVQ5MUNfUElPX1BCMjQgICAgICAgKDEgPDwgMjQpIC8vIFBpbiBDb250cm9sbGVkIGJ5IFBCMjQNCiNkZWZpbmUgQVQ5MUNfUEIyNF9OQU5EUkRZICAoQVQ5MUNfUElPX1BCMjQpIC8vICANCiNkZWZpbmUgQVQ5MUNfUEIyNF9QQ0sxICAgICAoQVQ5MUNfUElPX1BCMjQpIC8vICANCiNkZWZpbmUgQVQ5MUNfUElPX1BCMjUgICAgICAgKDEgPDwgMjUpIC8vIFBpbiBDb250cm9sbGVkIGJ5IFBCMjUNCiNkZWZpbmUgQVQ5MUNfUEIyNV9EOCAgICAgICAoQVQ5MUNfUElPX1BCMjUpIC8vICANCiNkZWZpbmUgQVQ5MUNfUEIyNV9QV01MMCAgICAoQVQ5MUNfUElPX1BCMjUpIC8vICANCiNkZWZpbmUgQVQ5MUNfUElPX1BCMjYgICAgICAgKDEgPDwgMjYpIC8vIFBpbiBDb250cm9sbGVkIGJ5IFBCMjYNCiNkZWZpbmUgQVQ5MUNfUEIyNl9EOSAgICAgICAoQVQ5MUNfUElPX1BCMjYpIC8vICANCiNkZWZpbmUgQVQ5MUNfUEIyNl9QV01MMSAgICAoQVQ5MUNfUElPX1BCMjYpIC8vICANCiNkZWZpbmUgQVQ5MUNfUElPX1BCMjcgICAgICAgKDEgPDwgMjcpIC8vIFBpbiBDb250cm9sbGVkIGJ5IFBCMjcNCiNkZWZpbmUgQVQ5MUNfUEIyN19EMTAgICAgICAoQVQ5MUNfUElPX1BCMjcpIC8vICANCiNkZWZpbmUgQVQ5MUNfUEIyN19QV01MMiAgICAoQVQ5MUNfUElPX1BCMjcpIC8vICANCiNkZWZpbmUgQVQ5MUNfUElPX1BCMjggICAgICAgKDEgPDwgMjgpIC8vIFBpbiBDb250cm9sbGVkIGJ5IFBCMjgNCiNkZWZpbmUgQVQ5MUNfUEIyOF9EMTEgICAgICAoQVQ5MUNfUElPX1BCMjgpIC8vICANCiNkZWZpbmUgQVQ5MUNfUEIyOF9QV01MMyAgICAoQVQ5MUNfUElPX1BCMjgpIC8vICANCiNkZWZpbmUgQVQ5MUNfUElPX1BCMjkgICAgICAgKDEgPDwgMjkpIC8vIFBpbiBDb250cm9sbGVkIGJ5IFBCMjkNCiNkZWZpbmUgQVQ5MUNfUEIyOV9EMTIgICAgICAoQVQ5MUNfUElPX1BCMjkpIC8vICANCiNkZWZpbmUgQVQ5MUNfUElPX1BCMyAgICAgICAgKDEgPDwgIDMpIC8vIFBpbiBDb250cm9sbGVkIGJ5IFBCMw0KI2RlZmluZSBBVDkxQ19QQjNfUFdNSDMgICAgKEFUOTFDX1BJT19QQjMpIC8vICANCiNkZWZpbmUgQVQ5MUNfUEIzX0E1ICAgICAgIChBVDkxQ19QSU9fUEIzKSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQjMwICAgICAgICgxIDw8IDMwKSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQjMwDQojZGVmaW5lIEFUOTFDX1BCMzBfRDEzICAgICAgKEFUOTFDX1BJT19QQjMwKSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQjMxICAgICAgICgxIDw8IDMxKSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQjMxDQojZGVmaW5lIEFUOTFDX1BCMzFfRDE0ICAgICAgKEFUOTFDX1BJT19QQjMxKSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQjQgICAgICAgICgxIDw8ICA0KSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQjQNCiNkZWZpbmUgQVQ5MUNfUEI0X1RDTEsxICAgIChBVDkxQ19QSU9fUEI0KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BCNF9BNiAgICAgICAoQVQ5MUNfUElPX1BCNCkgLy8gIA0KI2RlZmluZSBBVDkxQ19QSU9fUEI1ICAgICAgICAoMSA8PCAgNSkgLy8gUGluIENvbnRyb2xsZWQgYnkgUEI1DQojZGVmaW5lIEFUOTFDX1BCNV9USU9BMSAgICAoQVQ5MUNfUElPX1BCNSkgLy8gIA0KI2RlZmluZSBBVDkxQ19QQjVfQTcgICAgICAgKEFUOTFDX1BJT19QQjUpIC8vICANCiNkZWZpbmUgQVQ5MUNfUElPX1BCNiAgICAgICAgKDEgPDwgIDYpIC8vIFBpbiBDb250cm9sbGVkIGJ5IFBCNg0KI2RlZmluZSBBVDkxQ19QQjZfVElPQjEgICAgKEFUOTFDX1BJT19QQjYpIC8vICANCiNkZWZpbmUgQVQ5MUNfUEI2X0QxNSAgICAgIChBVDkxQ19QSU9fUEI2KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQjcgICAgICAgICgxIDw8ICA3KSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQjcNCiNkZWZpbmUgQVQ5MUNfUEI3X1JUUzAgICAgIChBVDkxQ19QSU9fUEI3KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BCN19BMF9OQlMwICAoQVQ5MUNfUElPX1BCNykgLy8gIA0KI2RlZmluZSBBVDkxQ19QSU9fUEI4ICAgICAgICAoMSA8PCAgOCkgLy8gUGluIENvbnRyb2xsZWQgYnkgUEI4DQojZGVmaW5lIEFUOTFDX1BCOF9DVFMwICAgICAoQVQ5MUNfUElPX1BCOCkgLy8gIA0KI2RlZmluZSBBVDkxQ19QQjhfQTEgICAgICAgKEFUOTFDX1BJT19QQjgpIC8vICANCiNkZWZpbmUgQVQ5MUNfUElPX1BCOSAgICAgICAgKDEgPDwgIDkpIC8vIFBpbiBDb250cm9sbGVkIGJ5IFBCOQ0KI2RlZmluZSBBVDkxQ19QQjlfRDAgICAgICAgKEFUOTFDX1BJT19QQjkpIC8vICANCiNkZWZpbmUgQVQ5MUNfUEI5X0RUUjAgICAgIChBVDkxQ19QSU9fUEI5KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQzAgICAgICAgICgxIDw8ICAwKSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQzANCiNkZWZpbmUgQVQ5MUNfUEMwX0EyICAgICAgIChBVDkxQ19QSU9fUEMwKSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQzEgICAgICAgICgxIDw8ICAxKSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQzENCiNkZWZpbmUgQVQ5MUNfUEMxX0EzICAgICAgIChBVDkxQ19QSU9fUEMxKSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQzEwICAgICAgICgxIDw8IDEwKSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQzEwDQojZGVmaW5lIEFUOTFDX1BDMTBfQTEyICAgICAgKEFUOTFDX1BJT19QQzEwKSAvLyAgDQojZGVmaW5lIEFUOTFDX1BDMTBfQ1RTMyAgICAgKEFUOTFDX1BJT19QQzEwKSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQzExICAgICAgICgxIDw8IDExKSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQzExDQojZGVmaW5lIEFUOTFDX1BDMTFfQTEzICAgICAgKEFUOTFDX1BJT19QQzExKSAvLyAgDQojZGVmaW5lIEFUOTFDX1BDMTFfUlRTMyAgICAgKEFUOTFDX1BJT19QQzExKSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQzEyICAgICAgICgxIDw8IDEyKSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQzEyDQojZGVmaW5lIEFUOTFDX1BDMTJfTkNTMSAgICAgKEFUOTFDX1BJT19QQzEyKSAvLyAgDQojZGVmaW5lIEFUOTFDX1BDMTJfVFhEMyAgICAgKEFUOTFDX1BJT19QQzEyKSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQzEzICAgICAgICgxIDw8IDEzKSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQzEzDQojZGVmaW5lIEFUOTFDX1BDMTNfQTIgICAgICAgKEFUOTFDX1BJT19QQzEzKSAvLyAgDQojZGVmaW5lIEFUOTFDX1BDMTNfUlhEMyAgICAgKEFUOTFDX1BJT19QQzEzKSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQzE0ICAgICAgICgxIDw8IDE0KSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQzE0DQojZGVmaW5lIEFUOTFDX1BDMTRfQTMgICAgICAgKEFUOTFDX1BJT19QQzE0KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BDMTRfU1BJMF9OUENTMiAoQVQ5MUNfUElPX1BDMTQpIC8vICANCiNkZWZpbmUgQVQ5MUNfUElPX1BDMTUgICAgICAgKDEgPDwgMTUpIC8vIFBpbiBDb250cm9sbGVkIGJ5IFBDMTUNCiNkZWZpbmUgQVQ5MUNfUEMxNV9OV1IxX05CUzEgKEFUOTFDX1BJT19QQzE1KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQzE2ICAgICAgICgxIDw8IDE2KSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQzE2DQojZGVmaW5lIEFUOTFDX1BDMTZfTkNTMiAgICAgKEFUOTFDX1BJT19QQzE2KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BDMTZfUFdNTDMgICAgKEFUOTFDX1BJT19QQzE2KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQzE3ICAgICAgICgxIDw8IDE3KSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQzE3DQojZGVmaW5lIEFUOTFDX1BDMTdfTkNTMyAgICAgKEFUOTFDX1BJT19QQzE3KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BDMTdfQTI0ICAgICAgKEFUOTFDX1BJT19QQzE3KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQzE4ICAgICAgICgxIDw8IDE4KSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQzE4DQojZGVmaW5lIEFUOTFDX1BDMThfTldBSVQgICAgKEFUOTFDX1BJT19QQzE4KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQzE5ICAgICAgICgxIDw8IDE5KSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQzE5DQojZGVmaW5lIEFUOTFDX1BDMTlfU0NLMyAgICAgKEFUOTFDX1BJT19QQzE5KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BDMTlfTlBDUzEgICAgKEFUOTFDX1BJT19QQzE5KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQzIgICAgICAgICgxIDw8ICAyKSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQzINCiNkZWZpbmUgQVQ5MUNfUEMyX0E0ICAgICAgIChBVDkxQ19QSU9fUEMyKSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQzIwICAgICAgICgxIDw8IDIwKSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQzIwDQojZGVmaW5lIEFUOTFDX1BDMjBfQTE0ICAgICAgKEFUOTFDX1BJT19QQzIwKSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQzIxICAgICAgICgxIDw8IDIxKSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQzIxDQojZGVmaW5lIEFUOTFDX1BDMjFfQTE1ICAgICAgKEFUOTFDX1BJT19QQzIxKSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQzIyICAgICAgICgxIDw8IDIyKSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQzIyDQojZGVmaW5lIEFUOTFDX1BDMjJfQTE2ICAgICAgKEFUOTFDX1BJT19QQzIyKSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQzIzICAgICAgICgxIDw8IDIzKSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQzIzDQojZGVmaW5lIEFUOTFDX1BDMjNfQTE3ICAgICAgKEFUOTFDX1BJT19QQzIzKSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQzI0ICAgICAgICgxIDw8IDI0KSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQzI0DQojZGVmaW5lIEFUOTFDX1BDMjRfQTE4ICAgICAgKEFUOTFDX1BJT19QQzI0KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BDMjRfUFdNSDAgICAgKEFUOTFDX1BJT19QQzI0KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQzI1ICAgICAgICgxIDw8IDI1KSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQzI1DQojZGVmaW5lIEFUOTFDX1BDMjVfQTE5ICAgICAgKEFUOTFDX1BJT19QQzI1KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BDMjVfUFdNSDEgICAgKEFUOTFDX1BJT19QQzI1KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQzI2ICAgICAgICgxIDw8IDI2KSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQzI2DQojZGVmaW5lIEFUOTFDX1BDMjZfQTIwICAgICAgKEFUOTFDX1BJT19QQzI2KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BDMjZfUFdNSDIgICAgKEFUOTFDX1BJT19QQzI2KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQzI3ICAgICAgICgxIDw8IDI3KSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQzI3DQojZGVmaW5lIEFUOTFDX1BDMjdfQTIzICAgICAgKEFUOTFDX1BJT19QQzI3KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BDMjdfUFdNSDMgICAgKEFUOTFDX1BJT19QQzI3KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQzI4ICAgICAgICgxIDw8IDI4KSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQzI4DQojZGVmaW5lIEFUOTFDX1BDMjhfQTI0ICAgICAgKEFUOTFDX1BJT19QQzI4KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BDMjhfTUNJMF9EQTQgKEFUOTFDX1BJT19QQzI4KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQzI5ICAgICAgICgxIDw8IDI5KSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQzI5DQojZGVmaW5lIEFUOTFDX1BDMjlfUFdNTDAgICAgKEFUOTFDX1BJT19QQzI5KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BDMjlfTUNJMF9EQTUgKEFUOTFDX1BJT19QQzI5KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQzMgICAgICAgICgxIDw8ICAzKSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQzMNCiNkZWZpbmUgQVQ5MUNfUEMzX0E1ICAgICAgIChBVDkxQ19QSU9fUEMzKSAvLyAgDQojZGVmaW5lIEFUOTFDX1BDM19TUEkwX05QQ1MxIChBVDkxQ19QSU9fUEMzKSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQzMwICAgICAgICgxIDw8IDMwKSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQzMwDQojZGVmaW5lIEFUOTFDX1BDMzBfUFdNTDEgICAgKEFUOTFDX1BJT19QQzMwKSAvLyAgDQojZGVmaW5lIEFUOTFDX1BDMzBfTUNJMF9EQTYgKEFUOTFDX1BJT19QQzMwKSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQzMxICAgICAgICgxIDw8IDMxKSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQzMxDQojZGVmaW5lIEFUOTFDX1BDMzFfUFdNTDIgICAgKEFUOTFDX1BJT19QQzMxKSAvLyAgDQojZGVmaW5lIEFUOTFDX1BDMzFfTUNJMF9EQTcgKEFUOTFDX1BJT19QQzMxKSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQzQgICAgICAgICgxIDw8ICA0KSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQzQNCiNkZWZpbmUgQVQ5MUNfUEM0X0E2ICAgICAgIChBVDkxQ19QSU9fUEM0KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BDNF9TUEkwX05QQ1MyIChBVDkxQ19QSU9fUEM0KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQzUgICAgICAgICgxIDw8ICA1KSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQzUNCiNkZWZpbmUgQVQ5MUNfUEM1X0E3ICAgICAgIChBVDkxQ19QSU9fUEM1KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BDNV9TUEkwX05QQ1MzIChBVDkxQ19QSU9fUEM1KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQzYgICAgICAgICgxIDw8ICA2KSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQzYNCiNkZWZpbmUgQVQ5MUNfUEM2X0E4ICAgICAgIChBVDkxQ19QSU9fUEM2KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BDNl9QV01MMCAgICAoQVQ5MUNfUElPX1BDNikgLy8gIA0KI2RlZmluZSBBVDkxQ19QSU9fUEM3ICAgICAgICAoMSA8PCAgNykgLy8gUGluIENvbnRyb2xsZWQgYnkgUEM3DQojZGVmaW5lIEFUOTFDX1BDN19BOSAgICAgICAoQVQ5MUNfUElPX1BDNykgLy8gIA0KI2RlZmluZSBBVDkxQ19QQzdfUFdNTDEgICAgKEFUOTFDX1BJT19QQzcpIC8vICANCiNkZWZpbmUgQVQ5MUNfUElPX1BDOCAgICAgICAgKDEgPDwgIDgpIC8vIFBpbiBDb250cm9sbGVkIGJ5IFBDOA0KI2RlZmluZSBBVDkxQ19QQzhfQTEwICAgICAgKEFUOTFDX1BJT19QQzgpIC8vICANCiNkZWZpbmUgQVQ5MUNfUEM4X1BXTUwyICAgIChBVDkxQ19QSU9fUEM4KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BJT19QQzkgICAgICAgICgxIDw8ICA5KSAvLyBQaW4gQ29udHJvbGxlZCBieSBQQzkNCiNkZWZpbmUgQVQ5MUNfUEM5X0ExMSAgICAgIChBVDkxQ19QSU9fUEM5KSAvLyAgDQojZGVmaW5lIEFUOTFDX1BDOV9QV01MMyAgICAoQVQ5MUNfUElPX1BDOSkgLy8gIA0KDQovLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KLy8gICAgICAgICAgICAgICBQRVJJUEhFUkFMIElEIERFRklOSVRJT05TIEZPUiBBVDkxU0FNM1U0DQovLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KI2RlZmluZSBBVDkxQ19JRF9TVVBDICAgKCAwKSAvLyBTVVBQTFkgQ09OVFJPTExFUg0KI2RlZmluZSBBVDkxQ19JRF9SU1RDICAgKCAxKSAvLyBSRVNFVCBDT05UUk9MTEVSDQojZGVmaW5lIEFUOTFDX0lEX1JUQyAgICAoIDIpIC8vIFJFQUwgVElNRSBDTE9DSw0KI2RlZmluZSBBVDkxQ19JRF9SVFQgICAgKCAzKSAvLyBSRUFMIFRJTUUgVElNRVINCiNkZWZpbmUgQVQ5MUNfSURfV0RHICAgICggNCkgLy8gV0FUQ0hET0cgVElNRVINCiNkZWZpbmUgQVQ5MUNfSURfUE1DICAgICggNSkgLy8gUE1DDQojZGVmaW5lIEFUOTFDX0lEX0VGQzAgICAoIDYpIC8vIEVGQzANCiNkZWZpbmUgQVQ5MUNfSURfRUZDMSAgICggNykgLy8gRUZDMQ0KI2RlZmluZSBBVDkxQ19JRF9EQkdVICAgKCA4KSAvLyBEQkdVDQojZGVmaW5lIEFUOTFDX0lEX0hTTUM0ICAoIDkpIC8vIEhTTUM0DQojZGVmaW5lIEFUOTFDX0lEX1BJT0EgICAoMTApIC8vIFBhcmFsbGVsIElPIENvbnRyb2xsZXIgQQ0KI2RlZmluZSBBVDkxQ19JRF9QSU9CICAgKDExKSAvLyBQYXJhbGxlbCBJTyBDb250cm9sbGVyIEINCiNkZWZpbmUgQVQ5MUNfSURfUElPQyAgICgxMikgLy8gUGFyYWxsZWwgSU8gQ29udHJvbGxlciBDDQojZGVmaW5lIEFUOTFDX0lEX1VTMCAgICAoMTMpIC8vIFVTQVJUIDANCiNkZWZpbmUgQVQ5MUNfSURfVVMxICAgICgxNCkgLy8gVVNBUlQgMQ0KI2RlZmluZSBBVDkxQ19JRF9VUzIgICAgKDE1KSAvLyBVU0FSVCAyDQojZGVmaW5lIEFUOTFDX0lEX1VTMyAgICAoMTYpIC8vIFVTQVJUIDMNCiNkZWZpbmUgQVQ5MUNfSURfTUNJMCAgICgxNykgLy8gTXVsdGltZWRpYSBDYXJkIEludGVyZmFjZQ0KI2RlZmluZSBBVDkxQ19JRF9UV0kwICAgKDE4KSAvLyBUV0kgMA0KI2RlZmluZSBBVDkxQ19JRF9UV0kxICAgKDE5KSAvLyBUV0kgMQ0KI2RlZmluZSBBVDkxQ19JRF9TUEkwICAgKDIwKSAvLyBTZXJpYWwgUGVyaXBoZXJhbCBJbnRlcmZhY2UNCiNkZWZpbmUgQVQ5MUNfSURfU1NDMCAgICgyMSkgLy8gU2VyaWFsIFN5bmNocm9ub3VzIENvbnRyb2xsZXIgMA0KI2RlZmluZSBBVDkxQ19JRF9UQzAgICAgKDIyKSAvLyBUaW1lciBDb3VudGVyIDANCiNkZWZpbmUgQVQ5MUNfSURfVEMxICAgICgyMykgLy8gVGltZXIgQ291bnRlciAxDQojZGVmaW5lIEFUOTFDX0lEX1RDMiAgICAoMjQpIC8vIFRpbWVyIENvdW50ZXIgMg0KI2RlZmluZSBBVDkxQ19JRF9QV01DICAgKDI1KSAvLyBQdWxzZSBXaWR0aCBNb2R1bGF0aW9uIENvbnRyb2xsZXINCiNkZWZpbmUgQVQ5MUNfSURfQURDQzAgICgyNikgLy8gQURDIGNvbnRyb2xsZXIwDQojZGVmaW5lIEFUOTFDX0lEX0FEQ0MxICAoMjcpIC8vIEFEQyBjb250cm9sbGVyMQ0KI2RlZmluZSBBVDkxQ19JRF9IRE1BICAgKDI4KSAvLyBIRE1BDQojZGVmaW5lIEFUOTFDX0lEX1VEUEhTICAoMjkpIC8vIFVTQiBEZXZpY2UgSGlnaCBTcGVlZA0KI2RlZmluZSBBVDkxQ19BTExfSU5UICAgKDB4M0ZGRkZGRkYpIC8vIEFMTCBWQUxJRCBJTlRFUlJVUFRTDQoNCi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQovLyAgICAgICAgICAgICAgIEJBU0UgQUREUkVTUyBERUZJTklUSU9OUyBGT1IgQVQ5MVNBTTNVNA0KLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCiNkZWZpbmUgQVQ5MUNfQkFTRV9TWVMgICAgICAgKEFUOTFfQ0FTVChBVDkxUFNfU1lTKSAJMHg0MDBFMDAwMCkgLy8gKFNZUykgQmFzZSBBZGRyZXNzDQojZGVmaW5lIEFUOTFDX0JBU0VfSFNNQzRfQ1MwIChBVDkxX0NBU1QoQVQ5MVBTX0hTTUM0X0NTKSAJMHg0MDBFMDA3MCkgLy8gKEhTTUM0X0NTMCkgQmFzZSBBZGRyZXNzDQojZGVmaW5lIEFUOTFDX0JBU0VfSFNNQzRfQ1MxIChBVDkxX0NBU1QoQVQ5MVBTX0hTTUM0X0NTKSAJMHg0MDBFMDA4NCkgLy8gKEhTTUM0X0NTMSkgQmFzZSBBZGRyZXNzDQojZGVmaW5lIEFUOTFDX0JBU0VfSFNNQzRfQ1MyIChBVDkxX0NBU1QoQVQ5MVBTX0hTTUM0X0NTKSAJMHg0MDBFMDA5OCkgLy8gKEhTTUM0X0NTMikgQmFzZSBBZGRyZXNzDQojZGVmaW5lIEFUOTFDX0JBU0VfSFNNQzRfQ1MzIChBVDkxX0NBU1QoQVQ5MVBTX0hTTUM0X0NTKSAJMHg0MDBFMDBBQykgLy8gKEhTTUM0X0NTMykgQmFzZSBBZGRyZXNzDQojZGVmaW5lIEFUOTFDX0JBU0VfSFNNQzRfTkZDIChBVDkxX0NBU1QoQVQ5MVBTX0hTTUM0X0NTKSAJMHg0MDBFMDBGQykgLy8gKEhTTUM0X05GQykgQmFzZSBBZGRyZXNzDQojZGVmaW5lIEFUOTFDX0JBU0VfSFNNQzQgICAgIChBVDkxX0NBU1QoQVQ5MVBTX0hTTUM0KSAJMHg0MDBFMDAwMCkgLy8gKEhTTUM0KSBCYXNlIEFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfQkFTRV9NQVRSSVggICAgKEFUOTFfQ0FTVChBVDkxUFNfSE1BVFJJWDIpIAkweDQwMEUwMjAwKSAvLyAoTUFUUklYKSBCYXNlIEFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfQkFTRV9OVklDICAgICAgKEFUOTFfQ0FTVChBVDkxUFNfTlZJQykgCTB4RTAwMEUwMDApIC8vIChOVklDKSBCYXNlIEFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfQkFTRV9NUFUgICAgICAgKEFUOTFfQ0FTVChBVDkxUFNfTVBVKSAJMHhFMDAwRUQ5MCkgLy8gKE1QVSkgQmFzZSBBZGRyZXNzDQojZGVmaW5lIEFUOTFDX0JBU0VfQ00zICAgICAgIChBVDkxX0NBU1QoQVQ5MVBTX0NNMykgCTB4RTAwMEVEMDApIC8vIChDTTMpIEJhc2UgQWRkcmVzcw0KI2RlZmluZSBBVDkxQ19CQVNFX1BEQ19EQkdVICAoQVQ5MV9DQVNUKEFUOTFQU19QREMpIAkweDQwMEUwNzAwKSAvLyAoUERDX0RCR1UpIEJhc2UgQWRkcmVzcw0KI2RlZmluZSBBVDkxQ19CQVNFX0RCR1UgICAgICAoQVQ5MV9DQVNUKEFUOTFQU19EQkdVKSAJMHg0MDBFMDYwMCkgLy8gKERCR1UpIEJhc2UgQWRkcmVzcw0KI2RlZmluZSBBVDkxQ19CQVNFX1BJT0EgICAgICAoQVQ5MV9DQVNUKEFUOTFQU19QSU8pIAkweDQwMEUwQzAwKSAvLyAoUElPQSkgQmFzZSBBZGRyZXNzDQojZGVmaW5lIEFUOTFDX0JBU0VfUElPQiAgICAgIChBVDkxX0NBU1QoQVQ5MVBTX1BJTykgCTB4NDAwRTBFMDApIC8vIChQSU9CKSBCYXNlIEFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfQkFTRV9QSU9DICAgICAgKEFUOTFfQ0FTVChBVDkxUFNfUElPKSAJMHg0MDBFMTAwMCkgLy8gKFBJT0MpIEJhc2UgQWRkcmVzcw0KI2RlZmluZSBBVDkxQ19CQVNFX1BNQyAgICAgICAoQVQ5MV9DQVNUKEFUOTFQU19QTUMpIAkweDQwMEUwNDAwKSAvLyAoUE1DKSBCYXNlIEFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfQkFTRV9DS0dSICAgICAgKEFUOTFfQ0FTVChBVDkxUFNfQ0tHUikgCTB4NDAwRTA0MUMpIC8vIChDS0dSKSBCYXNlIEFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfQkFTRV9SU1RDICAgICAgKEFUOTFfQ0FTVChBVDkxUFNfUlNUQykgCTB4NDAwRTEyMDApIC8vIChSU1RDKSBCYXNlIEFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfQkFTRV9TVVBDICAgICAgKEFUOTFfQ0FTVChBVDkxUFNfU1VQQykgCTB4NDAwRTEyMTApIC8vIChTVVBDKSBCYXNlIEFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfQkFTRV9SVFRDICAgICAgKEFUOTFfQ0FTVChBVDkxUFNfUlRUQykgCTB4NDAwRTEyMzApIC8vIChSVFRDKSBCYXNlIEFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfQkFTRV9XRFRDICAgICAgKEFUOTFfQ0FTVChBVDkxUFNfV0RUQykgCTB4NDAwRTEyNTApIC8vIChXRFRDKSBCYXNlIEFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfQkFTRV9SVEMgICAgICAgKEFUOTFfQ0FTVChBVDkxUFNfUlRDKSAJMHg0MDBFMTI2MCkgLy8gKFJUQykgQmFzZSBBZGRyZXNzDQojZGVmaW5lIEFUOTFDX0JBU0VfQURDMCAgICAgIChBVDkxX0NBU1QoQVQ5MVBTX0FEQykgCTB4NDAwQTgwMDApIC8vIChBREMwKSBCYXNlIEFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfQkFTRV9BREMxICAgICAgKEFUOTFfQ0FTVChBVDkxUFNfQURDKSAJMHg0MDBBQzAwMCkgLy8gKEFEQzEpIEJhc2UgQWRkcmVzcw0KI2RlZmluZSBBVDkxQ19CQVNFX1RDMCAgICAgICAoQVQ5MV9DQVNUKEFUOTFQU19UQykgCTB4NDAwODAwMDApIC8vIChUQzApIEJhc2UgQWRkcmVzcw0KI2RlZmluZSBBVDkxQ19CQVNFX1RDMSAgICAgICAoQVQ5MV9DQVNUKEFUOTFQU19UQykgCTB4NDAwODAwNDApIC8vIChUQzEpIEJhc2UgQWRkcmVzcw0KI2RlZmluZSBBVDkxQ19CQVNFX1RDMiAgICAgICAoQVQ5MV9DQVNUKEFUOTFQU19UQykgCTB4NDAwODAwODApIC8vIChUQzIpIEJhc2UgQWRkcmVzcw0KI2RlZmluZSBBVDkxQ19CQVNFX1RDQjAgICAgICAoQVQ5MV9DQVNUKEFUOTFQU19UQ0IpIAkweDQwMDgwMDAwKSAvLyAoVENCMCkgQmFzZSBBZGRyZXNzDQojZGVmaW5lIEFUOTFDX0JBU0VfVENCMSAgICAgIChBVDkxX0NBU1QoQVQ5MVBTX1RDQikgCTB4NDAwODAwNDApIC8vIChUQ0IxKSBCYXNlIEFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfQkFTRV9UQ0IyICAgICAgKEFUOTFfQ0FTVChBVDkxUFNfVENCKSAJMHg0MDA4MDA4MCkgLy8gKFRDQjIpIEJhc2UgQWRkcmVzcw0KI2RlZmluZSBBVDkxQ19CQVNFX0VGQzAgICAgICAoQVQ5MV9DQVNUKEFUOTFQU19FRkMpIAkweDQwMEUwODAwKSAvLyAoRUZDMCkgQmFzZSBBZGRyZXNzDQojZGVmaW5lIEFUOTFDX0JBU0VfRUZDMSAgICAgIChBVDkxX0NBU1QoQVQ5MVBTX0VGQykgCTB4NDAwRTBBMDApIC8vIChFRkMxKSBCYXNlIEFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfQkFTRV9NQ0kwICAgICAgKEFUOTFfQ0FTVChBVDkxUFNfTUNJKSAJMHg0MDAwMDAwMCkgLy8gKE1DSTApIEJhc2UgQWRkcmVzcw0KI2RlZmluZSBBVDkxQ19CQVNFX1BEQ19UV0kwICAoQVQ5MV9DQVNUKEFUOTFQU19QREMpIAkweDQwMDg0MTAwKSAvLyAoUERDX1RXSTApIEJhc2UgQWRkcmVzcw0KI2RlZmluZSBBVDkxQ19CQVNFX1BEQ19UV0kxICAoQVQ5MV9DQVNUKEFUOTFQU19QREMpIAkweDQwMDg4MTAwKSAvLyAoUERDX1RXSTEpIEJhc2UgQWRkcmVzcw0KI2RlZmluZSBBVDkxQ19CQVNFX1RXSTAgICAgICAoQVQ5MV9DQVNUKEFUOTFQU19UV0kpIAkweDQwMDg0MDAwKSAvLyAoVFdJMCkgQmFzZSBBZGRyZXNzDQojZGVmaW5lIEFUOTFDX0JBU0VfVFdJMSAgICAgIChBVDkxX0NBU1QoQVQ5MVBTX1RXSSkgCTB4NDAwODgwMDApIC8vIChUV0kxKSBCYXNlIEFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfQkFTRV9QRENfVVMwICAgKEFUOTFfQ0FTVChBVDkxUFNfUERDKSAJMHg0MDA5MDEwMCkgLy8gKFBEQ19VUzApIEJhc2UgQWRkcmVzcw0KI2RlZmluZSBBVDkxQ19CQVNFX1VTMCAgICAgICAoQVQ5MV9DQVNUKEFUOTFQU19VU0FSVCkgCTB4NDAwOTAwMDApIC8vIChVUzApIEJhc2UgQWRkcmVzcw0KI2RlZmluZSBBVDkxQ19CQVNFX1BEQ19VUzEgICAoQVQ5MV9DQVNUKEFUOTFQU19QREMpIAkweDQwMDk0MTAwKSAvLyAoUERDX1VTMSkgQmFzZSBBZGRyZXNzDQojZGVmaW5lIEFUOTFDX0JBU0VfVVMxICAgICAgIChBVDkxX0NBU1QoQVQ5MVBTX1VTQVJUKSAJMHg0MDA5NDAwMCkgLy8gKFVTMSkgQmFzZSBBZGRyZXNzDQojZGVmaW5lIEFUOTFDX0JBU0VfUERDX1VTMiAgIChBVDkxX0NBU1QoQVQ5MVBTX1BEQykgCTB4NDAwOTgxMDApIC8vIChQRENfVVMyKSBCYXNlIEFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfQkFTRV9VUzIgICAgICAgKEFUOTFfQ0FTVChBVDkxUFNfVVNBUlQpIAkweDQwMDk4MDAwKSAvLyAoVVMyKSBCYXNlIEFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfQkFTRV9QRENfVVMzICAgKEFUOTFfQ0FTVChBVDkxUFNfUERDKSAJMHg0MDA5QzEwMCkgLy8gKFBEQ19VUzMpIEJhc2UgQWRkcmVzcw0KI2RlZmluZSBBVDkxQ19CQVNFX1VTMyAgICAgICAoQVQ5MV9DQVNUKEFUOTFQU19VU0FSVCkgCTB4NDAwOUMwMDApIC8vIChVUzMpIEJhc2UgQWRkcmVzcw0KI2RlZmluZSBBVDkxQ19CQVNFX1BEQ19TU0MwICAoQVQ5MV9DQVNUKEFUOTFQU19QREMpIAkweDQwMDA0MTAwKSAvLyAoUERDX1NTQzApIEJhc2UgQWRkcmVzcw0KI2RlZmluZSBBVDkxQ19CQVNFX1NTQzAgICAgICAoQVQ5MV9DQVNUKEFUOTFQU19TU0MpIAkweDQwMDA0MDAwKSAvLyAoU1NDMCkgQmFzZSBBZGRyZXNzDQojZGVmaW5lIEFUOTFDX0JBU0VfUERDX1BXTUMgIChBVDkxX0NBU1QoQVQ5MVBTX1BEQykgCTB4NDAwOEMxMDApIC8vIChQRENfUFdNQykgQmFzZSBBZGRyZXNzDQojZGVmaW5lIEFUOTFDX0JBU0VfUFdNQ19DSDAgIChBVDkxX0NBU1QoQVQ5MVBTX1BXTUNfQ0gpIAkweDQwMDhDMjAwKSAvLyAoUFdNQ19DSDApIEJhc2UgQWRkcmVzcw0KI2RlZmluZSBBVDkxQ19CQVNFX1BXTUNfQ0gxICAoQVQ5MV9DQVNUKEFUOTFQU19QV01DX0NIKSAJMHg0MDA4QzIyMCkgLy8gKFBXTUNfQ0gxKSBCYXNlIEFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfQkFTRV9QV01DX0NIMiAgKEFUOTFfQ0FTVChBVDkxUFNfUFdNQ19DSCkgCTB4NDAwOEMyNDApIC8vIChQV01DX0NIMikgQmFzZSBBZGRyZXNzDQojZGVmaW5lIEFUOTFDX0JBU0VfUFdNQ19DSDMgIChBVDkxX0NBU1QoQVQ5MVBTX1BXTUNfQ0gpIAkweDQwMDhDMjYwKSAvLyAoUFdNQ19DSDMpIEJhc2UgQWRkcmVzcw0KI2RlZmluZSBBVDkxQ19CQVNFX1BXTUMgICAgICAoQVQ5MV9DQVNUKEFUOTFQU19QV01DKSAJMHg0MDA4QzAwMCkgLy8gKFBXTUMpIEJhc2UgQWRkcmVzcw0KI2RlZmluZSBBVDkxQ19CQVNFX1NQSTAgICAgICAoQVQ5MV9DQVNUKEFUOTFQU19TUEkpIAkweDQwMDA4MDAwKSAvLyAoU1BJMCkgQmFzZSBBZGRyZXNzDQojZGVmaW5lIEFUOTFDX0JBU0VfVURQSFNfRVBURklGTyAoQVQ5MV9DQVNUKEFUOTFQU19VRFBIU19FUFRGSUZPKSAJMHgyMDE4MDAwMCkgLy8gKFVEUEhTX0VQVEZJRk8pIEJhc2UgQWRkcmVzcw0KI2RlZmluZSBBVDkxQ19CQVNFX1VEUEhTX0VQVF8wIChBVDkxX0NBU1QoQVQ5MVBTX1VEUEhTX0VQVCkgCTB4NDAwQTQxMDApIC8vIChVRFBIU19FUFRfMCkgQmFzZSBBZGRyZXNzDQojZGVmaW5lIEFUOTFDX0JBU0VfVURQSFNfRVBUXzEgKEFUOTFfQ0FTVChBVDkxUFNfVURQSFNfRVBUKSAJMHg0MDBBNDEyMCkgLy8gKFVEUEhTX0VQVF8xKSBCYXNlIEFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfQkFTRV9VRFBIU19FUFRfMiAoQVQ5MV9DQVNUKEFUOTFQU19VRFBIU19FUFQpIAkweDQwMEE0MTQwKSAvLyAoVURQSFNfRVBUXzIpIEJhc2UgQWRkcmVzcw0KI2RlZmluZSBBVDkxQ19CQVNFX1VEUEhTX0VQVF8zIChBVDkxX0NBU1QoQVQ5MVBTX1VEUEhTX0VQVCkgCTB4NDAwQTQxNjApIC8vIChVRFBIU19FUFRfMykgQmFzZSBBZGRyZXNzDQojZGVmaW5lIEFUOTFDX0JBU0VfVURQSFNfRVBUXzQgKEFUOTFfQ0FTVChBVDkxUFNfVURQSFNfRVBUKSAJMHg0MDBBNDE4MCkgLy8gKFVEUEhTX0VQVF80KSBCYXNlIEFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfQkFTRV9VRFBIU19FUFRfNSAoQVQ5MV9DQVNUKEFUOTFQU19VRFBIU19FUFQpIAkweDQwMEE0MUEwKSAvLyAoVURQSFNfRVBUXzUpIEJhc2UgQWRkcmVzcw0KI2RlZmluZSBBVDkxQ19CQVNFX1VEUEhTX0VQVF82IChBVDkxX0NBU1QoQVQ5MVBTX1VEUEhTX0VQVCkgCTB4NDAwQTQxQzApIC8vIChVRFBIU19FUFRfNikgQmFzZSBBZGRyZXNzDQojZGVmaW5lIEFUOTFDX0JBU0VfVURQSFNfRE1BXzEgKEFUOTFfQ0FTVChBVDkxUFNfVURQSFNfRE1BKSAJMHg0MDBBNDMxMCkgLy8gKFVEUEhTX0RNQV8xKSBCYXNlIEFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfQkFTRV9VRFBIU19ETUFfMiAoQVQ5MV9DQVNUKEFUOTFQU19VRFBIU19ETUEpIAkweDQwMEE0MzIwKSAvLyAoVURQSFNfRE1BXzIpIEJhc2UgQWRkcmVzcw0KI2RlZmluZSBBVDkxQ19CQVNFX1VEUEhTX0RNQV8zIChBVDkxX0NBU1QoQVQ5MVBTX1VEUEhTX0RNQSkgCTB4NDAwQTQzMzApIC8vIChVRFBIU19ETUFfMykgQmFzZSBBZGRyZXNzDQojZGVmaW5lIEFUOTFDX0JBU0VfVURQSFNfRE1BXzQgKEFUOTFfQ0FTVChBVDkxUFNfVURQSFNfRE1BKSAJMHg0MDBBNDM0MCkgLy8gKFVEUEhTX0RNQV80KSBCYXNlIEFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfQkFTRV9VRFBIU19ETUFfNSAoQVQ5MV9DQVNUKEFUOTFQU19VRFBIU19ETUEpIAkweDQwMEE0MzUwKSAvLyAoVURQSFNfRE1BXzUpIEJhc2UgQWRkcmVzcw0KI2RlZmluZSBBVDkxQ19CQVNFX1VEUEhTX0RNQV82IChBVDkxX0NBU1QoQVQ5MVBTX1VEUEhTX0RNQSkgCTB4NDAwQTQzNjApIC8vIChVRFBIU19ETUFfNikgQmFzZSBBZGRyZXNzDQojZGVmaW5lIEFUOTFDX0JBU0VfVURQSFMgICAgIChBVDkxX0NBU1QoQVQ5MVBTX1VEUEhTKSAJMHg0MDBBNDAwMCkgLy8gKFVEUEhTKSBCYXNlIEFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfQkFTRV9IRE1BX0NIXzAgKEFUOTFfQ0FTVChBVDkxUFNfSERNQV9DSCkgCTB4NDAwQjAwM0MpIC8vIChIRE1BX0NIXzApIEJhc2UgQWRkcmVzcw0KI2RlZmluZSBBVDkxQ19CQVNFX0hETUFfQ0hfMSAoQVQ5MV9DQVNUKEFUOTFQU19IRE1BX0NIKSAJMHg0MDBCMDA2NCkgLy8gKEhETUFfQ0hfMSkgQmFzZSBBZGRyZXNzDQojZGVmaW5lIEFUOTFDX0JBU0VfSERNQV9DSF8yIChBVDkxX0NBU1QoQVQ5MVBTX0hETUFfQ0gpIAkweDQwMEIwMDhDKSAvLyAoSERNQV9DSF8yKSBCYXNlIEFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfQkFTRV9IRE1BX0NIXzMgKEFUOTFfQ0FTVChBVDkxUFNfSERNQV9DSCkgCTB4NDAwQjAwQjQpIC8vIChIRE1BX0NIXzMpIEJhc2UgQWRkcmVzcw0KI2RlZmluZSBBVDkxQ19CQVNFX0hETUEgICAgICAoQVQ5MV9DQVNUKEFUOTFQU19IRE1BKSAJMHg0MDBCMDAwMCkgLy8gKEhETUEpIEJhc2UgQWRkcmVzcw0KDQovLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KLy8gICAgICAgICAgICAgICBNRU1PUlkgTUFQUElORyBERUZJTklUSU9OUyBGT1IgQVQ5MVNBTTNVNA0KLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCi8vIElUQ00NCiNkZWZpbmUgQVQ5MUNfSVRDTSAJICgweDAwMTAwMDAwKSAvLyBNYXhpbXVtIElUQ00gQXJlYSBiYXNlIGFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfSVRDTV9TSVpFCSAoMHgwMDAxMDAwMCkgLy8gTWF4aW11bSBJVENNIEFyZWEgc2l6ZSBpbiBieXRlICg2NCBLYnl0ZXMpDQovLyBEVENNDQojZGVmaW5lIEFUOTFDX0RUQ00gCSAoMHgwMDIwMDAwMCkgLy8gTWF4aW11bSBEVENNIEFyZWEgYmFzZSBhZGRyZXNzDQojZGVmaW5lIEFUOTFDX0RUQ01fU0laRQkgKDB4MDAwMTAwMDApIC8vIE1heGltdW0gRFRDTSBBcmVhIHNpemUgaW4gYnl0ZSAoNjQgS2J5dGVzKQ0KLy8gSVJBTQ0KI2RlZmluZSBBVDkxQ19JUkFNIAkgKDB4MjAwMDAwMDApIC8vIE1heGltdW0gSW50ZXJuYWwgU1JBTSBiYXNlIGFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfSVJBTV9TSVpFCSAoMHgwMDAxMDAwMCkgLy8gTWF4aW11bSBJbnRlcm5hbCBTUkFNIHNpemUgaW4gYnl0ZSAoNjQgS2J5dGVzKQ0KLy8gSVJBTV9NSU4NCiNkZWZpbmUgQVQ5MUNfSVJBTV9NSU4JICgweDAwMzAwMDAwKSAvLyBNaW5pbXVtIEludGVybmFsIFJBTSBiYXNlIGFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfSVJBTV9NSU5fU0laRQkgKDB4MDAwMDQwMDApIC8vIE1pbmltdW0gSW50ZXJuYWwgUkFNIHNpemUgaW4gYnl0ZSAoMTYgS2J5dGVzKQ0KLy8gSVJPTQ0KI2RlZmluZSBBVDkxQ19JUk9NIAkgKDB4MDAxODAwMDApIC8vIEludGVybmFsIFJPTSBiYXNlIGFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfSVJPTV9TSVpFCSAoMHgwMDAwODAwMCkgLy8gSW50ZXJuYWwgUk9NIHNpemUgaW4gYnl0ZSAoMzIgS2J5dGVzKQ0KLy8gSUZMQVNIMA0KI2RlZmluZSBBVDkxQ19JRkxBU0gwCSAoMHgwMDA4MDAwMCkgLy8gTWF4aW11bSBJRkxBU0ggQXJlYSA6IDEyOEtieXRlIGJhc2UgYWRkcmVzcw0KI2RlZmluZSBBVDkxQ19JRkxBU0gwX1NJWkUJICgweDAwMDIwMDAwKSAvLyBNYXhpbXVtIElGTEFTSCBBcmVhIDogMTI4S2J5dGUgc2l6ZSBpbiBieXRlICgxMjggS2J5dGVzKQ0KI2RlZmluZSBBVDkxQ19JRkxBU0gwX1BBR0VfU0laRQkgKDI1NikgLy8gTWF4aW11bSBJRkxBU0ggQXJlYSA6IDEyOEtieXRlIFBhZ2UgU2l6ZTogMjU2IGJ5dGVzDQojZGVmaW5lIEFUOTFDX0lGTEFTSDBfTE9DS19SRUdJT05fU0laRQkgKDgxOTIpIC8vIE1heGltdW0gSUZMQVNIIEFyZWEgOiAxMjhLYnl0ZSBMb2NrIFJlZ2lvbiBTaXplOiA4IEtieXRlcw0KI2RlZmluZSBBVDkxQ19JRkxBU0gwX05CX09GX1BBR0VTCSAoNTEyKSAvLyBNYXhpbXVtIElGTEFTSCBBcmVhIDogMTI4S2J5dGUgTnVtYmVyIG9mIFBhZ2VzOiA1MTIgYnl0ZXMNCiNkZWZpbmUgQVQ5MUNfSUZMQVNIMF9OQl9PRl9MT0NLX0JJVFMJICgxNikgLy8gTWF4aW11bSBJRkxBU0ggQXJlYSA6IDEyOEtieXRlIE51bWJlciBvZiBMb2NrIEJpdHM6IDMyIGJ5dGVzDQovLyBJRkxBU0gxDQojZGVmaW5lIEFUOTFDX0lGTEFTSDEJICgweDAxMDAwMDApIC8vIE1heGltdW0gSUZMQVNIIEFyZWEgOiAxMjhLYnl0ZSBiYXNlIGFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfSUZMQVNIMV9TSVpFCSAoMHgwMDAyMDAwMCkgLy8gTWF4aW11bSBJRkxBU0ggQXJlYSA6IDEyOEtieXRlIHNpemUgaW4gYnl0ZSAoMTI4IEtieXRlcykNCiNkZWZpbmUgQVQ5MUNfSUZMQVNIMV9QQUdFX1NJWkUJICgyNTYpIC8vIE1heGltdW0gSUZMQVNIIEFyZWEgOiAxMjhLYnl0ZSBQYWdlIFNpemU6IDI1NiBieXRlcw0KI2RlZmluZSBBVDkxQ19JRkxBU0gxX0xPQ0tfUkVHSU9OX1NJWkUJICg4MTkyKSAvLyBNYXhpbXVtIElGTEFTSCBBcmVhIDogMTI4S2J5dGUgTG9jayBSZWdpb24gU2l6ZTogOCBLYnl0ZXMNCiNkZWZpbmUgQVQ5MUNfSUZMQVNIMV9OQl9PRl9QQUdFUwkgKDUxMikgLy8gTWF4aW11bSBJRkxBU0ggQXJlYSA6IDEyOEtieXRlIE51bWJlciBvZiBQYWdlczogNTEyIGJ5dGVzDQojZGVmaW5lIEFUOTFDX0lGTEFTSDFfTkJfT0ZfTE9DS19CSVRTCSAoMTYpIC8vIE1heGltdW0gSUZMQVNIIEFyZWEgOiAxMjhLYnl0ZSBOdW1iZXIgb2YgTG9jayBCaXRzOiAzMiBieXRlcw0KLy8gRUJJX0NTMA0KI2RlZmluZSBBVDkxQ19FQklfQ1MwCSAoMHgxMDAwMDAwMCkgLy8gRUJJIENoaXAgU2VsZWN0IDAgYmFzZSBhZGRyZXNzDQojZGVmaW5lIEFUOTFDX0VCSV9DUzBfU0laRQkgKDB4MTAwMDAwMDApIC8vIEVCSSBDaGlwIFNlbGVjdCAwIHNpemUgaW4gYnl0ZSAoMjYyMTQ0IEtieXRlcykNCi8vIEVCSV9DUzENCiNkZWZpbmUgQVQ5MUNfRUJJX0NTMQkgKDB4MjAwMDAwMDApIC8vIEVCSSBDaGlwIFNlbGVjdCAxIGJhc2UgYWRkcmVzcw0KI2RlZmluZSBBVDkxQ19FQklfQ1MxX1NJWkUJICgweDEwMDAwMDAwKSAvLyBFQkkgQ2hpcCBTZWxlY3QgMSBzaXplIGluIGJ5dGUgKDI2MjE0NCBLYnl0ZXMpDQovLyBFQklfU0RSQU0NCiNkZWZpbmUgQVQ5MUNfRUJJX1NEUkFNCSAoMHgyMDAwMDAwMCkgLy8gU0RSQU0gb24gRUJJIENoaXAgU2VsZWN0IDEgYmFzZSBhZGRyZXNzDQojZGVmaW5lIEFUOTFDX0VCSV9TRFJBTV9TSVpFCSAoMHgxMDAwMDAwMCkgLy8gU0RSQU0gb24gRUJJIENoaXAgU2VsZWN0IDEgc2l6ZSBpbiBieXRlICgyNjIxNDQgS2J5dGVzKQ0KLy8gRUJJX1NEUkFNXzE2QklUDQojZGVmaW5lIEFUOTFDX0VCSV9TRFJBTV8xNkJJVAkgKDB4MjAwMDAwMDApIC8vIFNEUkFNIG9uIEVCSSBDaGlwIFNlbGVjdCAxIGJhc2UgYWRkcmVzcw0KI2RlZmluZSBBVDkxQ19FQklfU0RSQU1fMTZCSVRfU0laRQkgKDB4MDIwMDAwMDApIC8vIFNEUkFNIG9uIEVCSSBDaGlwIFNlbGVjdCAxIHNpemUgaW4gYnl0ZSAoMzI3NjggS2J5dGVzKQ0KLy8gRUJJX1NEUkFNXzMyQklUDQojZGVmaW5lIEFUOTFDX0VCSV9TRFJBTV8zMkJJVAkgKDB4MjAwMDAwMDApIC8vIFNEUkFNIG9uIEVCSSBDaGlwIFNlbGVjdCAxIGJhc2UgYWRkcmVzcw0KI2RlZmluZSBBVDkxQ19FQklfU0RSQU1fMzJCSVRfU0laRQkgKDB4MDQwMDAwMDApIC8vIFNEUkFNIG9uIEVCSSBDaGlwIFNlbGVjdCAxIHNpemUgaW4gYnl0ZSAoNjU1MzYgS2J5dGVzKQ0KLy8gRUJJX0NTMg0KI2RlZmluZSBBVDkxQ19FQklfQ1MyCSAoMHgzMDAwMDAwMCkgLy8gRUJJIENoaXAgU2VsZWN0IDIgYmFzZSBhZGRyZXNzDQojZGVmaW5lIEFUOTFDX0VCSV9DUzJfU0laRQkgKDB4MTAwMDAwMDApIC8vIEVCSSBDaGlwIFNlbGVjdCAyIHNpemUgaW4gYnl0ZSAoMjYyMTQ0IEtieXRlcykNCi8vIEVCSV9DUzMNCiNkZWZpbmUgQVQ5MUNfRUJJX0NTMwkgKDB4NDAwMDAwMDApIC8vIEVCSSBDaGlwIFNlbGVjdCAzIGJhc2UgYWRkcmVzcw0KI2RlZmluZSBBVDkxQ19FQklfQ1MzX1NJWkUJICgweDEwMDAwMDAwKSAvLyBFQkkgQ2hpcCBTZWxlY3QgMyBzaXplIGluIGJ5dGUgKDI2MjE0NCBLYnl0ZXMpDQovLyBFQklfU00NCiNkZWZpbmUgQVQ5MUNfRUJJX1NNCSAoMHg0MDAwMDAwMCkgLy8gTkFOREZMQVNIIG9uIEVCSSBDaGlwIFNlbGVjdCAzIGJhc2UgYWRkcmVzcw0KI2RlZmluZSBBVDkxQ19FQklfU01fU0laRQkgKDB4MTAwMDAwMDApIC8vIE5BTkRGTEFTSCBvbiBFQkkgQ2hpcCBTZWxlY3QgMyBzaXplIGluIGJ5dGUgKDI2MjE0NCBLYnl0ZXMpDQovLyBFQklfQ1M0DQojZGVmaW5lIEFUOTFDX0VCSV9DUzQJICgweDUwMDAwMDAwKSAvLyBFQkkgQ2hpcCBTZWxlY3QgNCBiYXNlIGFkZHJlc3MNCiNkZWZpbmUgQVQ5MUNfRUJJX0NTNF9TSVpFCSAoMHgxMDAwMDAwMCkgLy8gRUJJIENoaXAgU2VsZWN0IDQgc2l6ZSBpbiBieXRlICgyNjIxNDQgS2J5dGVzKQ0KLy8gRUJJX0NGMA0KI2RlZmluZSBBVDkxQ19FQklfQ0YwCSAoMHg1MDAwMDAwMCkgLy8gQ29tcGFjdEZsYXNoIDAgb24gRUJJIENoaXAgU2VsZWN0IDQgYmFzZSBhZGRyZXNzDQojZGVmaW5lIEFUOTFDX0VCSV9DRjBfU0laRQkgKDB4MTAwMDAwMDApIC8vIENvbXBhY3RGbGFzaCAwIG9uIEVCSSBDaGlwIFNlbGVjdCA0IHNpemUgaW4gYnl0ZSAoMjYyMTQ0IEtieXRlcykNCi8vIEVCSV9DUzUNCiNkZWZpbmUgQVQ5MUNfRUJJX0NTNQkgKDB4NjAwMDAwMDApIC8vIEVCSSBDaGlwIFNlbGVjdCA1IGJhc2UgYWRkcmVzcw0KI2RlZmluZSBBVDkxQ19FQklfQ1M1X1NJWkUJICgweDEwMDAwMDAwKSAvLyBFQkkgQ2hpcCBTZWxlY3QgNSBzaXplIGluIGJ5dGUgKDI2MjE0NCBLYnl0ZXMpDQovLyBFQklfQ0YxDQojZGVmaW5lIEFUOTFDX0VCSV9DRjEJICgweDYwMDAwMDAwKSAvLyBDb21wYWN0Rmxhc2ggMSBvbiBFQklDaGlwIFNlbGVjdCA1IGJhc2UgYWRkcmVzcw0KI2RlZmluZSBBVDkxQ19FQklfQ0YxX1NJWkUJICgweDEwMDAwMDAwKSAvLyBDb21wYWN0Rmxhc2ggMSBvbiBFQklDaGlwIFNlbGVjdCA1IHNpemUgaW4gYnl0ZSAoMjYyMTQ0IEtieXRlcykNCg0KI2VuZGlmDQo=