LyoKICogQ29weXJpZ2h0IChjKSAyMDE0LTIwMTUgVGhlIExpbnV4IEZvdW5kYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAqCiAqIFByZXZpb3VzbHkgbGljZW5zZWQgdW5kZXIgdGhlIElTQyBsaWNlbnNlIGJ5IFF1YWxjb21tIEF0aGVyb3MsIEluYy4KICoKICoKICogUGVybWlzc2lvbiB0byB1c2UsIGNvcHksIG1vZGlmeSwgYW5kL29yIGRpc3RyaWJ1dGUgdGhpcyBzb2Z0d2FyZSBmb3IKICogYW55IHB1cnBvc2Ugd2l0aCBvciB3aXRob3V0IGZlZSBpcyBoZXJlYnkgZ3JhbnRlZCwgcHJvdmlkZWQgdGhhdCB0aGUKICogYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBhcHBlYXIgaW4gYWxsCiAqIGNvcGllcy4KICoKICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIgQU5EIFRIRSBBVVRIT1IgRElTQ0xBSU1TIEFMTAogKiBXQVJSQU5USUVTIFdJVEggUkVHQVJEIFRPIFRISVMgU09GVFdBUkUgSU5DTFVESU5HIEFMTCBJTVBMSUVECiAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTLiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKICogQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5ZIFNQRUNJQUwsIERJUkVDVCwgSU5ESVJFQ1QsIE9SIENPTlNFUVVFTlRJQUwKICogREFNQUdFUyBPUiBBTlkgREFNQUdFUyBXSEFUU09FVkVSIFJFU1VMVElORyBGUk9NIExPU1MgT0YgVVNFLCBEQVRBIE9SCiAqIFBST0ZJVFMsIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBORUdMSUdFTkNFIE9SIE9USEVSCiAqIFRPUlRJT1VTIEFDVElPTiwgQVJJU0lORyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBVU0UgT1IKICogUEVSRk9STUFOQ0UgT0YgVEhJUyBTT0ZUV0FSRS4KICovCgovKgogKiBUaGlzIGZpbGUgd2FzIG9yaWdpbmFsbHkgZGlzdHJpYnV0ZWQgYnkgUXVhbGNvbW0gQXRoZXJvcywgSW5jLgogKiB1bmRlciBwcm9wcmlldGFyeSB0ZXJtcyBiZWZvcmUgQ29weXJpZ2h0IG93bmVyc2hpcCB3YXMgYXNzaWduZWQKICogdG8gdGhlIExpbnV4IEZvdW5kYXRpb24uCiAqLwoKI2lmbmRlZiBMT0dfQ09ERVNfSAojZGVmaW5lIExPR19DT0RFU19ICgovKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQoKICAgICAgICAgICAgICAgICAgICAgICAgIExvZyBDb2RlIERlZmluaXRpb25zCgpHZW5lcmFsIERlc2NyaXB0aW9uCiAgVGhpcyBmaWxlIGNvbnRhaW5zIGxvZyBjb2RlIGRlZmluaXRpb25zIGFuZCBpcyBzaGFyZWQgd2l0aCB0aGUgdG9vbHMuCgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qLwoKLyogRE8gTk9UIE1PRElGWSBUSElTIEZJTEUgV0lUSE9VVCBQUklPUiBBUFBST1ZBTAoqKgoqKiBMb2cgY29kZXMsIGJ5IGRlc2lnbiwgYXJlIGEgdGlnaHRseSBjb250cm9sbGVkIHNldCBvZiB2YWx1ZXMuCioqIERldmVsb3BlcnMgbWF5IG5vdCBjcmVhdGUgbG9nIGNvZGVzIGF0IHdpbGwuCioqCioqIFJlcXVlc3QgbmV3IGxvZ3MgdXNpbmcgdGhlIGZvbGxvd2luZyBwcm9jZXNzOgoqKgoqKiAxLiBTZW5kIGVtYWlsIHRvIGFzdy5kaWFnLnJlcXVlc3QgcmVxdWVzdGluZyBsb2cgY29kYXNzaWdubWVudHMuCioqIDIuIElkZW50aWZ5IHRoZSBsb2cgbmVlZGVkIGJ5IG5hbWUuCioqIDMuIFByb3ZpZGUgYSBicmllZiBkZXNjcmlwdGlvbiBmb3IgdGhlIGxvZy4KKioKKi8KCi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVkaXQgSGlzdG9yeQoKJEhlYWRlcjogLy9zb3VyY2UvcWNvbS9xY3QvY29yZS9zZXJ2aWNlcy9kaWFnL2FwaS9pbmMvbWFpbi9sYXRlc3QvbG9nX2NvZGVzLmgjOSAkCgp3aGVuICAgICAgIHdobyAgICAgd2hhdCwgd2hlcmUsIHdoeQotLS0tLS0tLSAgIC0tLSAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQowNy8zMC8wOSAgIGRoYW8gICAgQ29uc29saWRhdGUgbG9nX2NvZGVzX2FwcHMuaAowNy8zMC8wOSAgIGRoYW8gICAgQWRkIExhc3QgbG9nIGNvZGUgZGVmaW5pdGlvbiBmb3IgRXF1aXAgSUQgMTEKMDYvMjYvMDkgICBkaGFvICAgIFVwZGF0ZSBmb3JtYXQgdGhlIG1hY3JvCjA2LzI0LzA5ICAgc2FyICAgICBSZXZlcnRlZCBsYXN0IGNoYW5nZS4KMDYvMjQvMDkgICBzYXIgICAgIEFkZGVkIGxvZyBjb2RlIGZvciBMT0dfTUNfU1RNX0MuCjExLzAyLzAxICAgc2ZoICAgICBGZWF0dXJpemUgY29tbW9uIE5BUyBsb2cgY29kZXMgZm9yIFVNVFMuCjEwLzMwLzAxICAgc2ZoICAgICBBZGRlZCBsb2cgY29kZSBmb3IgTE9HX0dQU19GQVRQQVRIX0lORk9fQy4KMTAvMjQvMDEgICBzZmggICAgIEFkZGVkIHVwZGF0ZXMgZm9yIFVNVFMgZXF1aXBtZW50IElEIGFuZCBsb2cgY29kZXMuCjA2LzI3LzAxICAgbGFkICAgICBBZGRlZCBtdWx0aXBsZSBlcXVpcG1lbnQgSUQgc3VwcG9ydC4KMDUvMjIvMDEgICBzZmggICAgIFJlc2VydmVkIGxvZyBjb2RlcyAxNTggLSAxNjguCjA1LzIxLzAxICAgc2ZoICAgICBLZWVwIGNvbmZ1c2luZyBYWFhfQkFTRV9DIG5hbWVzIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eS4KMDUvMTYvMDEgICBzZmggICAgIFJlc2VydmVkIGxvZyBjb2RlIDE1NS4KMDUvMDgvMDEgICBzZmggICAgIFJlc2VydmVkIGxvZyBjb2RlcyAxNTAgLSAxNTQuCjA0LzA2LzAxICAgbGFkICAgICBBZGRlZCBkZWZpbml0aW9ucyBvZiBiYXNlIElEcyAoc3VjaCBhcyBMT0dfV0NETUFfQkFTRV9DKS4KICAgICAgICAgICAgICAgICAgIFRoaXMgaXMgY3VycmVudGx5IHVzaW5nIHRlbXBvcmFyeSBJRCB2YWx1ZXMgaW4gdGhlIDB4MTAwMAogICAgICAgICAgICAgICAgICAgcmFuZ2UuCjAyLzIzLzAxICAgbGFkICAgICBDcmVhdGVkIGZpbGUgZnJvbSBETVNTIGxvZy5oLiAgTG9nIGNvZGVzIG9ubHkKCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovCiNpbmNsdWRlIDx2b3NfdHlwZXMuaD4KCi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICogRGF0YSBEZWNsYXJhdGlvbnMKICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwoKLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogKiBMb2cgZXF1aXBtZW50IElEcy4KICogVGhlIG1vc3Qgc2lnbmlmaWNhbnQgNCBiaXRzIG9mIHRoZSAxNiBiaXQgbG9nIGNvZGUgaXMgdGhlIGVxdWlwbWVudCBJRC4KICogT3JpZ25hbGx5LCB0aGUgbW9iaWxlIHdhcyB0byBoYXZlIGFuIElELCBhbmQgYmFzZSBzdGF0aW9ucyBhbmQgb3RoZXIKICogSURzLiAgQXMgUUNUIHRlY2hub2xvZ3kgZGl2ZXJzaWZpZXMsIG5ldyBlcXVpcG1lbnQgSURzIGFyZSBhc3NpZ25lZCB0byBuZXcKICogdGVjaG5vbG9neSBhcmVhcy4gIDB4MjAwMCBhbmQgMHgzMDAwIGFyZSByZXNlcnZlZCBmb3IgbGVnYWN5IHJlYXNvbnMsIHNvCiAqIHRoZSBmaXJzdAogKiBhZGRpdGlvbiBzdGFydHMgYXQgMHg0MDAwLgogKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCgojZGVmaW5lIExPR18xWF9CQVNFX0MgICAgKCh2X1UxNl90KSAweDEwMDApCiNkZWZpbmUgTE9HX1dDRE1BX0JBU0VfQyAoKHZfVTE2X3QpIDB4NDAwMCkKI2RlZmluZSBMT0dfR1NNX0JBU0VfQyAgICgodl9VMTZfdCkgMHg1MDAwKQojZGVmaW5lIExPR19MQlNfQkFTRV9DICAgKCh2X1UxNl90KSAweDYwMDApCiNkZWZpbmUgTE9HX1VNVFNfQkFTRV9DICAoKHZfVTE2X3QpIDB4NzAwMCkKI2RlZmluZSBMT0dfVERNQV9CQVNFX0MgICgodl9VMTZfdCkgMHg4MDAwKQojZGVmaW5lIExPR19EVFZfQkFTRV9DICAgKCh2X1UxNl90KSAweEEwMDApCiNkZWZpbmUgTE9HX0FQUFNfQkFTRV9DICAoKHZfVTE2X3QpIDB4QjAwMCkKI2RlZmluZSBMT0dfTFRFX0JBU0VfQyAgICgodl9VMTZfdCkgKDB4QjAwMCArIDB4MDAxMCkpCiNkZWZpbmUgTE9HX0xURV9MQVNUX0MgICAoKHZfVTE2X3QpIDB4QjFGRikKI2RlZmluZSBMT0dfV0lNQVhfQkFTRV9DICgodl9VMTZfdCkgMHhCNDAwKQojZGVmaW5lIExPR19EU1BfQkFTRV9DICAgKCh2X1UxNl90KSAweEMwMDApCgojZGVmaW5lIExPR19UT09MU19CQVNFX0MgKCh2X1UxNl90KSAweEYwMDApCgovKiBMT0dfQkFTRV9DIGlzIHdoYXQgd2FzIHVzZWQgYmVmb3JlIGV4cGFuZGluZyB0aGUgdXNlIG9mIHRoZSBlcXVpcG1lbnQgSUQuCiAqIFRPRE86IE9uY2UgYWxsIHRhcmdldHMgYXJlIHVzaW5nIHRoZSAiY29yZSIgZGlhZyBzeXN0ZW0sIHRoaXMgc2hvdWxkIGJlCiAqIG9tbWl0dGVkLiAqLwojZGVmaW5lIExPR19CQVNFX0MgTE9HXzFYX0JBU0VfQwoKLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogKiBMb2cgQ29kZXMKICogICBUaGVzZSBjb2RlcyBpZGVudGlmeSB0aGUga2luZCBvZiBpbmZvcm1hdGlvbiBjb250YWluZWQgaW4gYSBsb2cgZW50cnkuCiAqICAgVGhleSBhcmUgdXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIHRoZSAnY29kZScgZmllbGQgb2YgdGhlIGxvZyBlbnRyeQogKiAgIGhlYWRlci4gIFRoZSBkYXRhIHR5cGVzIGFzc29jaWF0ZWQgd2l0aCBlYWNoIGNvZGUgYXJlIGRlZmluZWQgYmVsb3cuCiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KCi8qIFRoZSB1cHBlciA0IGJpdHMgb2YgdGhlIDE2IGJpdCBsb2cgZW50cnkgY29kZSBzcGVjaWZ5IHdoaWNoIHR5cGUKICogb2YgZXF1aXBtZW50IGNyZWF0ZWQgdGhlIGxvZyBlbnRyeS4gKi8KCi8qIDAgTW9iaWxlIFN0YXRpb24gdGVtcG9yYWwgYW5hbHl6ZXIgZW50cnkgKi8KI2RlZmluZSBMT0dfVEFfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDAgKyBMT0dfMVhfQkFTRV9DKQoKLyogMSBBR0MgdmFsdWVzIGFuZCBjbG9zZWQgbG9vcCBwb3dlciBjb250cm9sIGVudHJ5ICovCiNkZWZpbmUgTE9HX0FHQ19QQ1RMX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxICsgTE9HXzFYX0JBU0VfQykKCi8qIDIgRm9yd2FyZCBsaW5rIGZyYW1lIHJhdGVzIGFuZCB0eXBlcyBlbnRyeSAqLwojZGVmaW5lIExPR19GX01VWDFfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MiArIExPR18xWF9CQVNFX0MpCgovKiAzIFJldmVyc2UgbGluayBmcmFtZSByYXRlcyBhbmQgdHlwZXMgZW50cnkgKi8KI2RlZmluZSBMT0dfUl9NVVgxX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDMgKyBMT0dfMVhfQkFTRV9DKQoKLyogNCBBY2Nlc3MgY2hhbm5lbCBtZXNzYWdlIGVudHJ5ICovCiNkZWZpbmUgTE9HX0FDX01TR19DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0ICsgTE9HXzFYX0JBU0VfQykKCi8qIDUgUmV2ZXJzZSBsaW5rIHRyYWZmaWMgY2hhbm5lbCBtZXNzYWdlIGVudHJ5ICovCiNkZWZpbmUgTE9HX1JfVENfTVNHX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg1ICsgTE9HXzFYX0JBU0VfQykKCi8qIDYgU3luYyBjaGFubmVsIG1lc3NhZ2UgZW50cnkgKi8KI2RlZmluZSBMT0dfU0NfTVNHX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDYgKyBMT0dfMVhfQkFTRV9DKQoKLyogNyBQYWdpbmcgY2hhbm5lbCBtZXNzYWdlIGVudHJ5ICovCiNkZWZpbmUgTE9HX1BDX01TR19DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg3ICsgTE9HXzFYX0JBU0VfQykKCi8qIDggRm9yd2FyZCBsaW5rIHRyYWZmaWMgY2hhbm5lbCBtZXNzYWdlIGVudHJ5ICovCiNkZWZpbmUgTE9HX0ZfVENfTVNHX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg4ICsgTE9HXzFYX0JBU0VfQykKCi8qIDkgRm9yd2FyZCBsaW5rIHZvY29kZXIgcGFja2V0IGVudHJ5ICovCiNkZWZpbmUgTE9HX1ZPQ19GT1JfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg5ICsgTE9HXzFYX0JBU0VfQykKCi8qIDEwIFJldmVyc2UgbGluayB2b2NvZGVyIHBhY2tldCBlbnRyeSAqLwojZGVmaW5lIExPR19WT0NfUkVWX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4QSArIExPR18xWF9CQVNFX0MpCgovKiAxMSBUZW1wb3JhbCBhbmFseXplciBmaW5nZXIgaW5mbyBvbmx5ICovCiNkZWZpbmUgTE9HX0ZJTkdfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHhCICsgTE9HXzFYX0JBU0VfQykKCi8qIDEyIFNlYXJjaGVyIHBhdGhsb2cgaW5mbyAoUmV1c2VkIG9sZCBTUkNIIGxvZ3R5cGUpICovCiNkZWZpbmUgTE9HX1NSQ0hfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHhDICsgTE9HXzFYX0JBU0VfQykKCi8qIDEzIFBvc2l0aW9uIGFuZCBzcGVlZCBpbmZvcm1hdGlvbiByZWFkIGZyb20gRVRBSyAqLwojZGVmaW5lIExPR19FVEFLX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4RCArIExPR18xWF9CQVNFX0MpCgovKiAxNCBNYXJrb3YgZnJhbWUgc3RhdGlzdGljcyAqLwojZGVmaW5lIExPR19NQVJfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4RSArIExPR18xWF9CQVNFX0MpCgovKiAxNSBOZXcgYW5kIGltcHJvdmVkIHRlbXBvcmFsIGFuYWx5emVyIHNlYXJjaGVyIGluZm8gKi8KI2RlZmluZSBMT0dfU1JDSDJfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweEYgKyBMT0dfMVhfQkFTRV9DKQoKLyogMTYgVGhlIEZ1aml0c3UgaGFuZHNldCBpbmZvcm1hdGlvbiAqLwojZGVmaW5lIExPR19IQU5EU0VUX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MTAgKyBMT0dfMVhfQkFTRV9DKQoKLyogMTcgVm9jb2RlciBiaXQgZXJyb3IgcmF0ZSBtYXNrICovCiNkZWZpbmUgTE9HX0VSUk1BU0tfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxMSArIExPR18xWF9CQVNFX0MpCgovKiAxOCBBbmFsb2cgdm9pY2UgY2hhbm5lbCBpbmZvcm1hdGlvbiAqLwojZGVmaW5lIExPR19BTkFMT0dfSU5GT19DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MTIgKyBMT0dfMVhfQkFTRV9DKQoKLyogMTkgQWNjZXNzIHByb2JlIGluZm9ybWF0aW9uICovCiNkZWZpbmUgTE9HX0FDQ19JTkZPX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxMyArIExPR18xWF9CQVNFX0MpCgovKiAyMCBQb3NpdGlvbiAmIHNwZWVkIGluZm8gcmVhZCBmcm9tIEdQUyByZWNlaXZlciAqLwojZGVmaW5lIExPR19HUFNfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MTQgKyBMT0dfMVhfQkFTRV9DKQoKLyogMjEgVGVzdCBDb21tYW5kIGluZm9ybWF0aW9uICovCiNkZWZpbmUgTE9HX1RFU1RfQ01EX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxNSArIExPR18xWF9CQVNFX0MpCgovKiAyMiBTcGFyc2UgKDIwbXMpIEFHQyAvIGNsb3NlZCBsb29wIHBvd2VyIGNvbnRyb2wgZW50cnkgKi8KI2RlZmluZSBMT0dfU19BR0NfUENUTF9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDE2ICsgTE9HXzFYX0JBU0VfQykKCi8qIDIzIE5vdGlmaWNhdGlvbiBvZiBhIGJhbmQgY2xhc3MgY2hhbmdlICovCiNkZWZpbmUgTE9HX0JBTkRfQ0hBTkdFX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxNyArIExPR18xWF9CQVNFX0MpCgovKiAyNCBETSBkZWJ1ZyBtZXNzYWdlcywgaWYgYmVpbmcgbG9nZ2VkIHZpYSBsb2cgc2VydmljZXMgKi8KI2RlZmluZSBMT0dfREJHX01TR19DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDE4ICsgTE9HXzFYX0JBU0VfQykKCi8qIDI1IEdlbmVyYWwgdGVtcG9yYWwgYW5hbHl6ZXIgZW50cnkgKi8KI2RlZmluZSBMT0dfR0VOUkxfVEFfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDE5ICsgTE9HXzFYX0JBU0VfQykKCi8qIDI2IEdlbmVyYWwgdGVtcG9yYWwgYW5hbHl6ZXIgdy9zdXBwbGVtZW50YWwgY2hhbm5lbHMgKi8KI2RlZmluZSBMT0dfR0VOUkxfVEFfU1VQX0NIX0MgICAgICAgICAgICAgICAgICAgICAgICAgICgweDFBICsgTE9HXzFYX0JBU0VfQykKCi8qIEZlYXR1cml6YXRpb24gUmVtb3ZhbCByZXF1ZXN0ZWQgYnkgQ01JCiNpZmRlZiBGRUFUVVJFX1BMVAoqLwoKLyogMjcgRGVjb2RlciByYXcgYml0cyBsb2dnaW5nICovCiNkZWZpbmUgTE9HX1BMVF9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxQiArIExPR18xWF9CQVNFX0MpCgovKiBGZWF0dXJpemF0aW9uIFJlbW92YWwgcmVxdWVzdGVkIGJ5IENNSQojZWxzZQoyNyBFRlMgVXNhZ2UgSW5mbyAtIE5vIGltcGxlbWVudGF0aW9uIGFzIHlldAojZGVmaW5lIExPR19FRlNfSU5GT19DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MUIgKyBMT0dfMVhfQkFTRV9DKQojZW5kaWYKKi8KCi8qIDI4IEFuYWxvZyBGb3J3YXJkIENoYW5uZWwgKi8KI2RlZmluZSBMT0dfQU5BTE9HX0ZPUldfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDFDICsgTE9HXzFYX0JBU0VfQykKCi8qIDI5IEFuYWxvZyBSZXZlcnNlIENoYW5uZWwgKi8KI2RlZmluZSBMT0dfQU5BTE9HX1JFVlNfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDFEICsgTE9HXzFYX0JBU0VfQykKCi8qIDMwIEFuYWxvZyBIYW5kb2ZmIEVudHJ5ICovCiNkZWZpbmUgTE9HX0FOQUxPR19IQU5ET0ZGX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxRSArIExPR18xWF9CQVNFX0MpCgovKiAzMSBGTSBTbG90IFN0YXRpc3RpcyBlbnRyeSAqLwojZGVmaW5lIExPR19BTkFMT0dfRk1TTE9UX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MUYgKyBMT0dfMVhfQkFTRV9DKQoKLyogMzIgRk9DQyBXb3JkIFN5bmMgQ291bnQgZW50cnkgKi8KI2RlZmluZSBMT0dfQU5BTE9HX1dTX0NPVU5UX0MgICAgICAgICAgICAgICAgICAgICAgICAgICgweDIwICsgTE9HXzFYX0JBU0VfQykKCi8qIDMzICovCiNkZWZpbmUgTE9HX1JMUF9QQUNLRVRfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyMSArIExPR18xWF9CQVNFX0MpCgovKiAzNCAqLwojZGVmaW5lIExPR19BU1lOQ19UQ1BfU0VHX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MjIgKyBMT0dfMVhfQkFTRV9DKQoKLyogMzUgKi8KI2RlZmluZSBMT0dfUEFDS0VUX0RBVEFfSVBfUEFDS0VUU19DICAgICAgICAgICAgICAgICAgICgweDIzICsgTE9HXzFYX0JBU0VfQykKCi8qIDM2ICovCiNkZWZpbmUgTE9HX0ZOQkRUX01FU1NBR0VfTE9HX0MgICAgICAgICAgICAgICAgICAgICAgICAoMHgyNCArIExPR18xWF9CQVNFX0MpCgovKiBCZWdpbiBJUy0yMDAwIExPRyBmZWF0dXJlcyAqLwoKLyogMzcgUkxQIFJYIEZyYW1lcyBsb2dnaW5nICovCiNkZWZpbmUgTE9HX1JMUF9SWF9GUkFNRVNfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyNSArIExPR18xWF9CQVNFX0MpCgovKiAzOCBSTFAgVFggRnJhbWVzIGxvZ2dpbmcgKi8KI2RlZmluZSBMT0dfUkxQX1RYX0ZSQU1FU19DICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDI2ICsgTE9HXzFYX0JBU0VfQykKCi8qIDM5IFJlc2VydmVkIGZvciBhZGRpdGlvbnMgdG8gUkxQIGZyYW1lcyAqLwojZGVmaW5lIExPR19STFBfUlNWRDFfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MjcgKyBMT0dfMVhfQkFTRV9DKQoKLyogNDAgUmVzZXJ2ZWQgZm9yIGFkZGl0aW9ucyB0byBSTFAgZnJhbWVzICovCiNkZWZpbmUgTE9HX1JMUF9SU1ZEMl9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyOCArIExPR18xWF9CQVNFX0MpCgovKiA0MSBGb3J3YXJkIExpbmsgRnJhbWUgVHlwZXMgbG9nZ2luZyAqLwojZGVmaW5lIExPR19GV0RfRlJBTUVfVFlQRVNfQyAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MjkgKyBMT0dfMVhfQkFTRV9DKQoKLyogNDIgUmV2ZXJzZSBMaW5rIEZyYW1lIFR5cGVzIGxvZ2dpbmcgKi8KI2RlZmluZSBMT0dfUkVWX0ZSQU1FX1RZUEVTX0MgICAgICAgICAgICAgICAgICAgICAgICAgICgweDJBICsgTE9HXzFYX0JBU0VfQykKCi8qIDQzIEZhc3QgRm9yd2FyZCBQb3dlciBDb250cm9sIFBhcmFtZXRlcnMgbG9nZ2luZyAqLwojZGVmaW5lIExPR19GRldEX1BDVFJMX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MkIgKyBMT0dfMVhfQkFTRV9DKQoKLyogNDQgUmV2ZXJzZSBQb3dlciBDb250cm9sIFBhcmFtZXRlcnMgbG9nZ2luZyAqLwojZGVmaW5lIExPR19SRVZfUENUUkxfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MkMgKyBMT0dfMVhfQkFTRV9DKQoKLyogNDUgU2VhcmNoZXIgYW5kIEZpbmdlciBJbmZvcm1hdGlvbiBsb2dnaW5nICovCiNkZWZpbmUgTE9HX1NSQ0hfRklOR19JTkZPX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyRCArIExPR18xWF9CQVNFX0MpCgovKiA0NiBTZXJ2aWNlIENvbmZpZ3VyYXRpb24gbG9nZ2luZyAqLwojZGVmaW5lIExPR19TVkNfQ09ORklHX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MkUgKyBMT0dfMVhfQkFTRV9DKQoKLyogNDcgQWN0aXZlIFNldCBDb25maWd1cmF0aW9uIGxvZ2dpbmcgKi8KI2RlZmluZSBMT0dfQVNFVF9DT05GSUdfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDJGICsgTE9HXzFYX0JBU0VfQykKCi8qIDQ4IFF1aWNrIFBhZ2luZyBDaGFubmVsIGxvZ2dpbmcgKi8KI2RlZmluZSBMT0dfUVBDSF9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDMwICsgTE9HXzFYX0JBU0VfQykKCi8qIDQ5IFJMUCBTdGF0aXN0aWNzIGxvZ2dpbmcgKi8KI2RlZmluZSBMT0dfUkxQX1NUQVRfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDMxICsgTE9HXzFYX0JBU0VfQykKCi8qIDUwIFNpbXBsZSBUZXN0IERhdGEgU2VydmljZSBPcHRpb24gbG9nZ2luZyAqLwojZGVmaW5lIExPR19TVERTT19DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MzIgKyBMT0dfMVhfQkFTRV9DKQoKLyogNTEgUGlsb3QgUGhhc2UgTWVhc3VyZW1lbnQgcmVzdWx0cyBsb2dnaW5nICovCiNkZWZpbmUgTE9HX1NSQ0hfUFBNX1JFU19DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgzMyArIExPR18xWF9CQVNFX0MpCgovKiA1MiBQaWxvdCBQaGFzZSBNZWFzdXJlbWVudCBEYXRhIEJhc2UgbG9nZ2luZyAqLwojZGVmaW5lIExPR19TUkNIX1BQTV9EQl9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MzQgKyBMT0dfMVhfQkFTRV9DKQoKLyogNTMgUGlsb3QgUGhhc2UgTWVhc3VyZW1lbnQgc2VhcmNoIHJlc3VsdHMgbG9nZ2luZyAqLwojZGVmaW5lIExPR19TUkNIX1BQTV9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MzUgKyBMT0dfMVhfQkFTRV9DKQoKLyogNTQgSVMtODAxIGZvcndhcmQgbGluayBtZXNzYWdlICovCiNkZWZpbmUgTE9HX0dQU19GV0RfTVNHX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgzNiArIExPR18xWF9CQVNFX0MpCgovKiA1NSBJUy04MDEgcmV2ZXJzZSBsaW5rIG1lc3NhZ2UgKi8KI2RlZmluZSBMT0dfR1BTX1JFVl9NU0dfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDM3ICsgTE9HXzFYX0JBU0VfQykKCi8qIDU2IEdQUyBzZWFyY2ggc2Vzc2lvbiBzdGF0aXN0aWNzICovCiNkZWZpbmUgTE9HX0dQU19TVEFUU19NU0dfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgzOCArIExPR18xWF9CQVNFX0MpCgovKiA1NyBHUFMgc2VhcmNoIHJlc3VsdHMgKi8KI2RlZmluZSBMT0dfR1BTX1NSQ0hfUEVBS1NfTVNHX0MgICAgICAgICAgICAgICAgICAgICAgICgweDM5ICsgTE9HXzFYX0JBU0VfQykKCi8qIDU4IEZhY3RvcnkgVGVzdG1vZGUgbG9nZ2luZyAqLwojZGVmaW5lIExPR19GVE1fQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4M0EgKyBMT0dfMVhfQkFTRV9DKQoKLyogNTkgTXVsdGlwbGUgUGVhayBMb2dnaW5nICovCiNkZWZpbmUgTE9HX1NSQ0hfR1BTX01VTFRJX1BFQUtTX0lORk9fQyAgICAgICAgICAgICAgICAoMHgzQiArIExPR18xWF9CQVNFX0MpCgovKiA2MCBQb3N0IHByb2Nlc3NlZCBzZWFyY2ggcmVzdWx0cyBsb2dzICovCiNkZWZpbmUgTE9HX1NSQ0hfR1BTX1BPU1RfUFJPQ19DICAgICAgICAgICAgICAgICAgICAgICAoMHgzQyArIExPR18xWF9CQVNFX0MpCgovKiA2MSBGVUxMIFRlc3QgRGF0YSBTZXJ2aWNlIE9wdGlvbiBsb2dnaW5nICovCiNkZWZpbmUgTE9HX0ZURFNPX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgzRCArIExPR18xWF9CQVNFX0MpCgovKiA2MiBCbHVldG9vdGggbG9nZ2luZyAqLwojZGVmaW5lIExPR19CVF9SRVNFUlZFRF9DT0RFU19CQVNFX0MgICAgICAgICAgICAgICAgICAgKDB4M0UgKyBMT0dfMVhfQkFTRV9DKQovKiBLZWVwIGNvbmZ1c2luZyBuYW1lIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eS4gICovCiNkZWZpbmUgTE9HX0JUX0JBU0VfQyBMT0dfQlRfUkVTRVJWRURfQ09ERVNfQkFTRV9DCgovKiA5MiBCbHVldG9vdGgncyBsYXN0IGxvZyBjb2RlICovCiNkZWZpbmUgTE9HX0JUX0xBU1RfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMzAgKyBMT0dfQlRfUkVTRVJWRURfQ09ERVNfQkFTRV9DKQoKLyogOTMgSERSIGxvZyBjb2RlcyAqLwojZGVmaW5lIExPR19IRFJfUkVTRVJWRURfQ09ERVNfQkFTRV9DICAgICAgICAgICAgICAgICAgKDB4NUQgKyBMT0dfMVhfQkFTRV9DKQovKiBLZWVwIGNvbmZ1c2luZyBuYW1lIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eS4gICovCiNkZWZpbmUgTE9HX0hEUl9CQVNFX0MgTE9HX0hEUl9SRVNFUlZFRF9DT0RFU19CQVNFX0MKCi8qIDE0MyBpcyBIRFIncyBsYXN0IGxvZyBjb2RlICovCiNkZWZpbmUgTE9HX0hEUl9MQVNUX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoNTAgKyBMT0dfSERSX1JFU0VSVkVEX0NPREVTX0JBU0VfQykKCi8qIDE0NCBJUzIwMDAgRENDSCBGb3J3YXJkIGxpbmsgY2hhbm5lbCAqLwojZGVmaW5lIExPR19GT1JfRENDSF9NU0dfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4OTAgKyBMT0dfMVhfQkFTRV9DKQojZGVmaW5lIExPR19EQ0NIX0ZXRF9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTE9HX0ZPUl9EQ0NIX01TR19DCgovKiAxNDUgSVMyMDAwIERDQ0ggRm9yd2FyZCBsaW5rIGNoYW5uZWwgKi8KI2RlZmluZSBMT0dfUkVWX0RDQ0hfTVNHX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDkxICsgTE9HXzFYX0JBU0VfQykKI2RlZmluZSBMT0dfRENDSF9SRVZfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExPR19SRVZfRENDSF9NU0dfQwoKLyogMTQ2IElTMjAwMCBEQ0NIIEZvcndhcmQgbGluayBjaGFubmVsICovCiNkZWZpbmUgTE9HX1pSRVhfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg5MiArIExPR18xWF9CQVNFX0MpCgovKiAxNDcgQWN0aXZlIHNldCBpbmZvIGxvZ2dpbmcsIHNpbWlsYXIgdG8gQVNFVF9DT05GSUcsIGJ1dCBzaW1wbGVyLiAgKi8KI2RlZmluZSBMT0dfQVNFVF9JTkZPX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDkzICsgTE9HXzFYX0JBU0VfQykKCi8qIDE0OCBQaWxvdCBQaGFzZSBNZWFzdXJlbWVudCBmb3VyLXNob3VsZGVyLXNlYXJjaCByZXN1dGx0cyBsb2dnaW5nICovCiNkZWZpbmUgTE9HX1NSQ0hfUFBNXzRTSE9VTERFUl9SRVNfQyAgICAgICAgICAgICAgICAgICAoMHg5NCArIExPR18xWF9CQVNFX0MpCgovKiAxNDkgRXh0ZW5kZWQgUGlsb3QgUGhhc2UgTWVhc3VyZW1lbnQgRGF0YSBCYXNlIGxvZ2dpbmcgKi8KI2RlZmluZSBMT0dfU1JDSF9FWFRfUFBNX0RCX0MgICAgICAgICAgICAgICAgICAgICAgICAgICgweDk1ICsgTE9HXzFYX0JBU0VfQykKCi8qIDE1MCBHUFMgVmlzaXQgUGFyYW1ldGVycyAqLwojZGVmaW5lIExPR19HUFNfVklTSVRfUEFSQU1FVEVSU19DICAgICAgICAgICAgICAgICAgICAgKDB4OTYgKyBMT0dfMVhfQkFTRV9DKQoKLyogMTUxIEdQUyBNZWFzdXJlbWVudCAqLwojZGVmaW5lIExPR19HUFNfTUVBU1VSRU1FTlRfQyAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4OTcgKyBMT0dfMVhfQkFTRV9DKQoKLyogMTUyIFVJTSBEYXRhICovCiNkZWZpbmUgTE9HX1VJTV9EQVRBX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg5OCArIExPR18xWF9CQVNFX0MpCgovKiAxNTMgU1REU08gcGx1cyBQMiAqLwojZGVmaW5lIExPR19TVERTT19QMl9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4OTkgKyBMT0dfMVhfQkFTRV9DKQoKLyogMTU0IEZURFNPIHBsdXMgUDIgKi8KI2RlZmluZSBMT0dfRlREU09fUDJfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDlBICsgTE9HXzFYX0JBU0VfQykKCi8qIDE1NSBTZWFyY2ggUFBNIFN0YXRpc3RpY3MgKi8KI2RlZmluZSBMT0dfU1JDSF9QUE1fU1RBVFNfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDlCICsgTE9HXzFYX0JBU0VfQykKCi8qIDE1NiBQUFAgVHggRnJhbWVzICovCiNkZWZpbmUgTE9HX1BQUF9UWF9GUkFNRVNfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg5QyArIExPR18xWF9CQVNFX0MpCgovKiAxNTcgUFBQIFJ4IEZyYW1lcyAqLwojZGVmaW5lIExPR19QUFBfUlhfRlJBTUVTX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4OUQgKyBMT0dfMVhfQkFTRV9DKQoKLyogMTU4LTE4NyBTU0wgcmVzZXJ2ZWQgbG9nIGNvZGVzICovCiNkZWZpbmUgTE9HX1NTTF9SRVNFUlZFRF9DT0RFU19CQVNFX0MgICAgICAgICAgICAgICAgICAoMHg5RSArIExPR18xWF9CQVNFX0MpCiNkZWZpbmUgTE9HX1NTTF9MQVNUX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMjkgKyBMT0dfU1NMX1JFU0VSVkVEX0NPREVTX0JBU0VfQykKCi8qIDE4OC0xOTkgUHVtYSByZXNlcnZlZCBsb2cgY29kZXMgKi8KLyogMTg4IFFQQ0gsIHZlcnNpb24gMiAqLwojZGVmaW5lIExPR19RUENIX1ZFUl8yX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4QkMgKyBMT0dfMVhfQkFTRV9DKQoKLyogMTg5IEVuaGFuY2VkIEFjY2VzcyBQcm9iZSAqLwojZGVmaW5lIExPR19FQV9QUk9CRV9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4QkQgKyBMT0dfMVhfQkFTRV9DKQoKLyogMTkwIEJDQ0ggRnJhbWUgSW5mb3JtYXRpb24gKi8KI2RlZmluZSBMT0dfQkNDSF9GUkFNRV9JTkZPX0MgICAgICAgICAgICAgICAgICAgICAgICAgICgweEJFICsgTE9HXzFYX0JBU0VfQykKCi8qIDE5MSBGQ0NDSCBGcmFtZSBJbmZvcm1hdGlvbiAqLwojZGVmaW5lIExPR19GQ0NDSF9GUkFNRV9JTkZPX0MgICAgICAgICAgICAgICAgICAgICAgICAgKDB4QkYgKyBMT0dfMVhfQkFTRV9DKQoKLyogMTkyIEZEQ0ggRnJhbWUgSW5mb3JtYXRpb24gKi8KI2RlZmluZSBMT0dfRkRDSF9GUkFNRV9JTkZPX0MgICAgICAgICAgICAgICAgICAgICAgICAgICgweEMwICsgTE9HXzFYX0JBU0VfQykKCi8qIDE5MyBSRENIIEZyYW1lIEluZm9ybWF0aW9uICovCiNkZWZpbmUgTE9HX1JEQ0hfRlJBTUVfSU5GT19DICAgICAgICAgICAgICAgICAgICAgICAgICAoMHhDMSArIExPR18xWF9CQVNFX0MpCgovKiAxOTQgRkZQQyBJbmZvcm1hdGlvbiAqLwojZGVmaW5lIExPR19GRlBDX0lORk9fQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4QzIgKyBMT0dfMVhfQkFTRV9DKQoKLyogMTk1IFJQQyBJbmZvcm1hdGlvbiAqLwojZGVmaW5lIExPR19SUENfSU5GT19DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4QzMgKyBMT0dfMVhfQkFTRV9DKQoKLyogMTk2IFNlYXJjaGVyIGFuZCBGaW5nZXIgSW5mb3JtYXRpb24gKi8KI2RlZmluZSBMT0dfU1JDSF9GSU5HX0lORk9fVkVSXzJfQyAgICAgICAgICAgICAgICAgICAgICgweEM0ICsgTE9HXzFYX0JBU0VfQykKCi8qIDE5NyBTZXJ2aWNlIENvbmZpZ3VyYXRpb24sIHZlcnNpb24gMiAqLwojZGVmaW5lIExPR19TUlZfQ09ORklHX1ZFUl8yX0MgICAgICAgICAgICAgICAgICAgICAgICAgKDB4QzUgKyBMT0dfMVhfQkFTRV9DKQoKLyogMTk4IEFjdGl2ZSBTZXQgSW5mb3JtYXRpb24sIHZlcnNpb24gMiAqLwojZGVmaW5lIExPR19BU0VUX0lORk9fVkVSXzJfQyAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4QzYgKyBMT0dfMVhfQkFTRV9DKQoKLyogMTk5IFJlZHVjZWQgQWN0aXZlIFNldCAqLwojZGVmaW5lIExPR19SRURVQ0VEX0FTRVRfSU5GT19DICAgICAgICAgICAgICAgICAgICAgICAgKDB4QzcgKyBMT0dfMVhfQkFTRV9DKQoKLyogMjAwIFNlYXJjaCBUcmlhZ2UgSW5mbyAqLwojZGVmaW5lIExPR19TUkNIX1RSSUFHRV9JTkZPX0MgICAgICAgICAgICAgICAgICAgICAgICAgKDB4QzggKyBMT0dfMVhfQkFTRV9DKQoKLyogMjAxIFJEQSBGcmFtZSBJbmZvcm1hdGlvbiAqLwojZGVmaW5lIExPR19SREFfRlJBTUVfSU5GT19DICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4QzkgKyBMT0dfMVhfQkFTRV9DKQoKLyogMjAyIGdwc09uZSBmYXRwYXRoIGluZm9ybWF0aW9uICovCiNkZWZpbmUgTE9HX0dQU19GQVRQQVRIX0lORk9fQyAgICAgICAgICAgICAgICAgICAgICAgICAoMHhDQSArIExPR18xWF9CQVNFX0MpCgovKiAyMDMgRXh0ZW5kZWQgQUdDICovCiNkZWZpbmUgTE9HX0VYVEVOREVEX0FHQ19DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHhDQiArIExPR18xWF9CQVNFX0MpCgovKiAyMDQgVHJhbnNtaXQgQUdDICovCiNkZWZpbmUgTE9HX1RSQU5TTUlUX0FHQ19DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHhDQyArIExPR18xWF9CQVNFX0MpCgovKiAyMDUgSS9RIE9mZnNldCByZWdpc3RlcnMgKi8KI2RlZmluZSBMT0dfSVFfT0ZGU0VUX1JFR0lTVEVSU19DICAgICAgICAgICAgICAgICAgICAgICgweENEICsgTE9HXzFYX0JBU0VfQykKCi8qIDIwNiBEQUNDIEkvUSBBY2N1bXVsYXRvciByZWdpc3RlcnMgKi8KI2RlZmluZSBMT0dfREFDQ19JUV9BQ0NVTVVMQVRPUl9DICAgICAgICAgICAgICAgICAgICAgICgweENFICsgTE9HXzFYX0JBU0VfQykKCi8qIDIwNyBSZWdpc3RlciBwb2xsaW5nIHJlc3VsdHMgKi8KI2RlZmluZSBMT0dfUkVHSVNURVJfUE9MTElOR19SRVNVTFRTX0MgICAgICAgICAgICAgICAgICgweENGICsgTE9HXzFYX0JBU0VfQykKCi8qIDIwOCBTeXN0ZW0gYXJiaXRyYXRpb24gbW9kdWxlICovCiNkZWZpbmUgTE9HX0FUX1NBTV9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHhEMCArIExPR18xWF9CQVNFX0MpCgovKiAyMDkgRGlhYmxvIHNlYXJjaGVyIGZpbmdlciBsb2cgKi8KI2RlZmluZSBMT0dfRElBQkxPX1NSQ0hfRklOR19JTkZPX0MgICAgICAgICAgICAgICAgICAgICgweEQxICsgTE9HXzFYX0JBU0VfQykKCi8qIDIxMCBsb2cgcmVzZXJ2ZWQgZm9yIGRhbmRydXMgKi8KI2RlZmluZSBMT0dfU0QyMF9MQVNUX0FDVElPTl9DICAgICAgICAgICAgICAgICAgICAgICAgICgweEQyICsgTE9HXzFYX0JBU0VfQykKCi8qIDIxMSBsb2cgcmVzZXJ2ZWQgZm9yIGRhbmRydXMgKi8KI2RlZmluZSBMT0dfU0QyMF9MQVNUX0FDVElPTl9IWUJSSURfQyAgICAgICAgICAgICAgICAgICgweEQzICsgTE9HXzFYX0JBU0VfQykKCi8qIDIxMiBsb2cgcmVzZXJ2ZWQgZm9yIGRhbmRydXMgKi8KI2RlZmluZSBMT0dfU0QyMF9TU19PQkpFQ1RfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICgweEQ0ICsgTE9HXzFYX0JBU0VfQykKCi8qIDIxMyBsb2cgcmVzZXJ2ZWQgZm9yIGRhbmRydXMgKi8KI2RlZmluZSBMT0dfU0QyMF9TU19PQkpFQ1RfSFlCUklEX0MgICAgICAgICAgICAgICAgICAgICgweEQ1ICsgTE9HXzFYX0JBU0VfQykKCi8qIDIxNCBsb2cgcmVzZXJ2ZWQgZm9yIGpwaW5vcyAqLwojZGVmaW5lIExPR19CQ0NIX1NJR05BTElOR19DICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4RDYgKyBMT0dfMVhfQkFTRV9DKQoKLyogMjE1IGxvZyByZXNlcnZlZCBmb3IganBpbm9zICovCiNkZWZpbmUgTE9HX1JFQUNIX1NJR05BTElOR19DICAgICAgICAgICAgICAgICAgICAgICAgICAoMHhENyArIExPR18xWF9CQVNFX0MpCgovKiAyMTYgbG9nIHJlc2VydmVkIGZvciBqcGlub3MgKi8KI2RlZmluZSBMT0dfRkNDQ0hfU0lHTkFMSU5HX0MgICAgICAgICAgICAgICAgICAgICAgICAgICgweEQ4ICsgTE9HXzFYX0JBU0VfQykKCi8qIDIxNyBSREEgRnJhbWUgSW5mb3JtYXRpb24gMiAqLwojZGVmaW5lIExPR19SREFfRlJBTUVfSU5GT18yX0MgICAgICAgICAgICAgICAgICAgICAgICAgKDB4RDkgKyBMT0dfMVhfQkFTRV9DKQoKLyogMjE4ICovCiNkZWZpbmUgTE9HX0dQU19CSVRfRURHRV9SRVNVTFRTX0MgICAgICAgICAgICAgICAgICAgICAoMHhEQSArIExPR18xWF9CQVNFX0MpCgovKiAyMTkgKi8KI2RlZmluZSBMT0dfUEVfREFUQV9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweERCICsgTE9HXzFYX0JBU0VfQykKCi8qIDIyMCAqLwojZGVmaW5lIExPR19QRV9QQVJUSUFMX0RBVEFfQyAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4REMgKyBMT0dfMVhfQkFTRV9DKQoKLyogMjIxICovCiNkZWZpbmUgTE9HX0dQU19TSU5HTEVfUEVBS19TUkNIX1JFU1VMVFNfQyAgICAgICAgICAgICAoMHhERCArIExPR18xWF9CQVNFX0MpCgovKiAyMjIgKi8KI2RlZmluZSBMT0dfU1JDSDRfU0FNUFJBTV9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweERFICsgTE9HXzFYX0JBU0VfQykKCi8qIDIyMyAqLwojZGVmaW5lIEhEUl9BTl9QUFBfVFhfRlJBTUVTICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4REYgKyBMT0dfMVhfQkFTRV9DKQoKLyogMjI0ICovCiNkZWZpbmUgSERSX0FOX1BQUF9SWF9GUkFNRVMgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHhFMCArIExPR18xWF9CQVNFX0MpCgovKiAyMjUgKi8KI2RlZmluZSBMT0dfR1BTX1NDSEVEVUxFUl9UUkFDRV9DICAgICAgICAgICAgICAgICAgICAgICgweEUxICsgTE9HXzFYX0JBU0VfQykKCi8qIDIyNiAqLwojZGVmaW5lIExPR19NUEVHNF9ZVVZfRlJBTUVfQyAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4RTIgKyBMT0dfMVhfQkFTRV9DKQoKLyogMjI3ICovCiNkZWZpbmUgTE9HX01QRUc0X0NMSVBfU1RBVFNfQyAgICAgICAgICAgICAgICAgICAgICAgICAoMHhFMyArIExPR18xWF9CQVNFX0MpCgovKiAyMjggKi8KI2RlZmluZSBMT0dfTVBFRzRfQ0xJUF9TVEFUU19WRVIyX0MgICAgICAgICAgICAgICAgICAgICgweEU0ICsgTE9HXzFYX0JBU0VfQykKCi8qIDIyNi0yNDEgTU1FRyByZXNlcnZlZC4gKi8KI2RlZmluZSBMT0dfTVBFR19SRVNFUlZFRF9DT0RFU19CQVNFX0MgICAgICAgICAgICAgICAgICgweEYxICsgTE9HXzFYX0JBU0VfQykKCi8qIDI0Mi0yNzQgQlJFVyByZXNlcnZlZCBsb2cgcmFuZ2UgKi8KI2RlZmluZSBMT0dfQlJFV19SRVNFUlZFRF9DT0RFU19CQVNFX0MgICAgICAgICAgICAgICAgICgweEYyICsgTE9HXzFYX0JBU0VfQykKI2RlZmluZSBMT0dfQlJFV19MQVNUX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgzMiArIExPR19CUkVXX1JFU0VSVkVEX0NPREVTX0JBU0VfQykKCi8qIDI3NS0zMzkgUFBQIEV4dGVuZGVkIEZyYW1lcyAqLwojZGVmaW5lIExPR19QUFBfRlJBTUVTX1JFU0VSVkVEX0NPREVTX0JBU0VfQyAgICAgICAgICAgKDB4MTEzICsgTE9HXzFYX0JBU0VfQykKI2RlZmluZSBMT0dfUFBQX0ZSQU1FU19MQVNUX0MgICAgICAgICAgICAgICAgICAgICAgICAgICg2NCArIExPR19QUFBfRlJBTUVTX1JFU0VSVkVEX0NPREVTX0JBU0VfQykKCiNkZWZpbmUgTE9HX1BQUF9FWFRfRlJBTUVEX1JYX1VNX0MgICAgICAgICAgICAgICAgICAgICAoMHgxMTMgKyBMT0dfMVhfQkFTRV9DKQojZGVmaW5lIExPR19QUFBfRVhUX0ZSQU1FRF9SWF9STV9DICAgICAgICAgICAgICAgICAgICAgKDB4MTE0ICsgTE9HXzFYX0JBU0VfQykKI2RlZmluZSBMT0dfUFBQX0VYVF9GUkFNRURfUlhfQU5fQyAgICAgICAgICAgICAgICAgICAgICgweDExNSArIExPR18xWF9CQVNFX0MpCgojZGVmaW5lIExPR19QUFBfRVhUX0ZSQU1FRF9UWF9VTV9DICAgICAgICAgICAgICAgICAgICAgKDB4MTIzICsgTE9HXzFYX0JBU0VfQykKI2RlZmluZSBMT0dfUFBQX0VYVF9GUkFNRURfVFhfUk1fQyAgICAgICAgICAgICAgICAgICAgICgweDEyNCArIExPR18xWF9CQVNFX0MpCiNkZWZpbmUgTE9HX1BQUF9FWFRfRlJBTUVEX1RYX0FOX0MgICAgICAgICAgICAgICAgICAgICAoMHgxMjUgKyBMT0dfMVhfQkFTRV9DKQoKI2RlZmluZSBMT0dfUFBQX0VYVF9VTkZSQU1FRF9SWF9VTV9DICAgICAgICAgICAgICAgICAgICgweDEzMyArIExPR18xWF9CQVNFX0MpCiNkZWZpbmUgTE9HX1BQUF9FWFRfVU5GUkFNRURfUlhfUk1fQyAgICAgICAgICAgICAgICAgICAoMHgxMzQgKyBMT0dfMVhfQkFTRV9DKQojZGVmaW5lIExPR19QUFBfRVhUX1VORlJBTUVEX1JYX0FOX0MgICAgICAgICAgICAgICAgICAgKDB4MTM1ICsgTE9HXzFYX0JBU0VfQykKCiNkZWZpbmUgTE9HX1BQUF9FWFRfVU5GUkFNRURfVFhfVU1fQyAgICAgICAgICAgICAgICAgICAoMHgxNDMgKyBMT0dfMVhfQkFTRV9DKQojZGVmaW5lIExPR19QUFBfRVhUX1VORlJBTUVEX1RYX1JNX0MgICAgICAgICAgICAgICAgICAgKDB4MTQ0ICsgTE9HXzFYX0JBU0VfQykKI2RlZmluZSBMT0dfUFBQX0VYVF9VTkZSQU1FRF9UWF9BTl9DICAgICAgICAgICAgICAgICAgICgweDE0NSArIExPR18xWF9CQVNFX0MpCgovKiAzNDAgTE9HX1BFX0RBVEFfRVhUX0MgKi8KI2RlZmluZSBMT0dfUEVfREFUQV9FWFRfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDE1NCArIExPR18xWF9CQVNFX0MpCgovKiBSRVggU3Vic3lzdGVtIGxvZ3MgKi8KI2RlZmluZSBMT0dfTUVNREVCVUdfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDE1NSArIExPR18xWF9CQVNFX0MpCiNkZWZpbmUgTE9HX1NZU1BST0ZJTEVfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxNTYgKyBMT0dfMVhfQkFTRV9DKQojZGVmaW5lIExPR19UQVNLUFJPRklMRV9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MTU3ICsgTE9HXzFYX0JBU0VfQykKI2RlZmluZSBMT0dfQ09SRURVTVBfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDE1OCArIExPR18xWF9CQVNFX0MpCgovKiAzNDEtMzQ5IFJFWCBzdWJzeXN0ZW0gbG9ncyAqLwojZGVmaW5lIExPR19SRVhfUkVTRVJWRURfQ09ERVNfQkFTRV9DICAgICAgICAgICAgICAgICAgKDB4MTU1ICsgTE9HXzFYX0JBU0VfQykKI2RlZmluZSBMT0dfUkVYX0xBU1RfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICg4ICsgTE9HX1JFWF9SRVNFUlZFRF9DT0RFU19CQVNFX0MpCgovKiAzNTAgTE9HX1BFX1BBUlRJQUxfREFUQV9FWFRfQyAqLwojZGVmaW5lIExPR19QRV9QQVJUSUFMX0RBVEFfRVhUX0MgICAgICAgICAgICAgICAgICAgICAgKDB4MTVFICsgTE9HXzFYX0JBU0VfQykKCi8qIDM1MSBMT0dfRElBR19TVFJFU1NfVEVTVF9DICovCiNkZWZpbmUgTE9HX0RJQUdfU1RSRVNTX1RFU1RfQyAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxNUYgKyBMT0dfMVhfQkFTRV9DKQoKLyogMzUyICBMT0dfV01TX1JFQURfQyAqLwojZGVmaW5lIExPR19XTVNfUkVBRF9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MTYwICsgTE9HXzFYX0JBU0VfQykKCi8qIDM1MyBTZWFyY2ggVHJpYWdlIEluZm8gVmVyc2lvbiAyICovCiNkZWZpbmUgTE9HX1NSQ0hfVFJJQUdFX0lORk8yX0MgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MTYxICsgTE9HXzFYX0JBU0VfQykKCi8qIDM1NCBSTFAgUnggRkRDSCBGcmFtZXMgKi8KI2RlZmluZSBMT0dfUkxQX1JYX0ZEQ0hfRlJBTUVTX0MgICAgICAgICAgICAgICAgICAgICAgICAoMHgxNjIgKyBMT0dfMVhfQkFTRV9DKQoKCi8qIDM1NSBSTFAgVHggRkRDSCBGcmFtZXMgKi8KI2RlZmluZSBMT0dfUkxQX1RYX0ZEQ0hfRlJBTUVTX0MgICAgICAgICAgICAgICAgICAgICAgICAoMHgxNjMgKyBMT0dfMVhfQkFTRV9DKQoKLyogMzU2LTM3MSBRVFYgc3Vic3lzdGVtIGxvZ3MgKi8KI2RlZmluZSBMT0dfUVRWX1JFU0VSVkVEX0NPREVTX0JBU0VfQyAgICAgICAgICAgICAgICAgICAoMHgxNjQgKyBMT0dfMVhfQkFTRV9DKQojZGVmaW5lIExPR19RVFZfTEFTVF9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgxNSArIExPR19RVFZfUkVTRVJWRURfQ09ERVNfQkFTRV9DKQoKLyogMzcyIFNlYXJjaGVyIDQgMVggKi8KI2RlZmluZSBMT0dfU1JDSDRfMVhfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxNzQgKyBMT0dfMVhfQkFTRV9DKQoKLyogMzczIFNlYXJjaGVyIHNsZWVwIHN0YXRpc3RpY3MgKi8KI2RlZmluZSBMT0dfU1JDSF9TTEVFUF9TVEFUU19DICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxNzUgKyBMT0dfMVhfQkFTRV9DKQoKLyogMzc0IFNlcnZpY2UgQ29uZmlndXJhdGlvbiwgdmVyc2lvbiAzICovCiNkZWZpbmUgTE9HX1NSVl9DT05GSUdfVkVSXzNfQyAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MTc2ICsgTE9HXzFYX0JBU0VfQykKCi8qIDM3NSBTZWFyY2hlciA0IEhEUiAqLwojZGVmaW5lIExPR19TUkNINF9IRFJfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDE3NyArIExPR18xWF9CQVNFX0MpCgovKiAzNzYgU2VhcmNoZXIgNCBBRkxUICovCiNkZWZpbmUgTE9HX1NSQ0g0X0FGTFRfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MTc4ICsgTE9HXzFYX0JBU0VfQykKCi8qIDM3NyBFbmhhbmNlZCBGaW5nZXIgSW5mb3JtYXRpb24gKi8KI2RlZmluZSBMT0dfRU5IX0ZJTkdfSU5GT19DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxNzkgKyBMT0dfMVhfQkFTRV9DKQoKLyogMzc4IERWIEluZm9ybWF0aW9uICovCiNkZWZpbmUgTE9HX0RWX0lORk9fQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MTdBICsgTE9HXzFYX0JBU0VfQykKCi8qIDM3OSBXTVMgc2V0IHJvdXRlcyBpbmZvcm1hdGlvbiAqLwojZGVmaW5lIExPR19XTVNfU0VUX1JPVVRFU19DICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDE3QiArIExPR18xWF9CQVNFX0MpCgovKiAzODAgRlRNIFZlcnNpb24gMiBMb2dzICovCiNkZWZpbmUgTE9HX0ZUTV9WRVJfMl9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MTdDICsgTE9HXzFYX0JBU0VfQykKCi8qIDM4MSBHUFMgTXVsdGlwZWFrIGxvZ2dpbmcgKi8KI2RlZmluZSBMT0dfU1JDSF9HUFNfTVVMVElfUEVBS1NfU0lNUExJRklFRF9JTkZPX0MgICAgICAoMHgxN0QgKyBMT0dfMVhfQkFTRV9DKQoKLyogMzgyIEdQUyBNdWx0aXBlYWsgbG9nZ2luZyAqLwojZGVmaW5lIExPR19TUkNIX0dQU19NVUxUSV9QRUFLU19WRVJCT1NFX0lORk9fQyAgICAgICAgICgweDE3RSArIExPR18xWF9CQVNFX0MpCgovKiAzODMtNDAzIEhEUiByZXNlcnZlZCBsb2dzICovCiNkZWZpbmUgTE9HX0hEUl9SRVNFUlZFRF9DT0RFU19CQVNFXzJfQyAgICAgICAgICAgICAgICAgKDB4MTdGICsgTE9HXzFYX0JBU0VfQykKI2RlZmluZSBMT0dfSERSX0xBU1RfMl9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMjAgKyBMT0dfSERSX1JFU0VSVkVEX0NPREVTX0JBU0VfMl9DKQoKLyogUkxQIFJ4IC0gUERDSCBwYXJ0aWFsIE11eFBEVTUgZnJhbWVzICovCiNkZWZpbmUgTE9HX1JMUF9SWF9QRENIX1BBUlRJQUxfTVVYUERVNV9GUkFNRVNfQyAgICAgICAgKDB4MTk0ICsgTE9HXzFYX0JBU0VfQykKCi8qIFJMUCBUeCAtIFBEQ0ggcGFydGlhbCBNdXhQRFU1IGZyYW1lcyAqLwojZGVmaW5lIExPR19STFBfVFhfUERDSF9QQVJUSUFMX01VWFBEVTVfRlJBTUVTX0MgICAgICAgICgweDE5NSArIExPR18xWF9CQVNFX0MpCgovKiBSTFAgUnggaW50ZXJuYWwgZGV0YWlscyAqLwojZGVmaW5lIExPR19STFBfUlhfSU5URVJOQUxfREVUQUlMU19DICAgICAgICAgICAgICAgICAgICgweDE5NiArIExPR18xWF9CQVNFX0MpCgovKiBSTFAgVHggaW50ZXJuYWwgZGV0YWlscyAqLwojZGVmaW5lIExPR19STFBfVFhfSU5URVJOQUxfREVUQUlMU19DICAgICAgICAgICAgICAgICAgICgweDE5NyArIExPR18xWF9CQVNFX0MpCgovKiBNUEVHNCBDbGlwIFN0YXRpc3RpY3MgdmVyc2lvbiAzICovCiNkZWZpbmUgTE9HX01QRUc0X0NMSVBfU1RBVFNfVkVSM19DICAgICAgICAgICAgICAgICAgICAgKDB4MTk4ICsgTE9HXzFYX0JBU0VfQykKCi8qIE1vYmlsZSBJUCBQZXJmb3JtYW5jZSAqLwojZGVmaW5lIExPR19NT0JJTEVfSVBfUEVSRk9STUFOQ0VfQyAgICAgICAgICAgICAgICAgICAgICgweDE5OSArIExPR18xWF9CQVNFX0MpCgovKiA0MTAtNDMwIFNlYXJjaGVyIHJlc2VydmVkIGxvZ3MgKi8KI2RlZmluZSBMT0dfU0VBUkNIRVJfUkVTRVJWRURfQ09ERVNfQkFTRV9DICAgICAgICAgICAgICAoMHgxOUEgKyBMT0dfMVhfQkFTRV9DKQojZGVmaW5lIExPR19TRUFSQ0hFUl9MQVNUXzJfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICgyMSArIExPR19TRUFSQ0hFUl9SRVNFUlZFRF9DT0RFU19CQVNFX0MpCgovKiA0MzItNDgwIFFUViByZXNlcnZlZCBsb2dzICovCiNkZWZpbmUgTE9HX1FUVjJfUkVTRVJWRURfQ09ERVNfQkFTRV9DICAgICAgICAgICAgICAgICAgKDB4MUIwICsgTE9HXzFYX0JBU0VfQykKI2RlZmluZSBMT0dfUVRWMl9MQVNUX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoNDggKyBMT0dfUVRWMl9SRVNFUlZFRF9DT0RFU19CQVNFX0MpCgojZGVmaW5lIExPR19RVFZfUERTMl9TVEFUUyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDFCNiArIExPR18xWF9CQVNFX0MpCiNkZWZpbmUgTE9HX1FUVl9QRFMyX0dFVF9SRVFVRVNUICAgICAgICAgICAgICAgICAgICAgICAgKDB4MUI3ICsgTE9HXzFYX0JBU0VfQykKI2RlZmluZSBMT0dfUVRWX1BEUzJfR0VUX1JFU1BfSEVBREVSICAgICAgICAgICAgICAgICAgICAoMHgxQjggKyBMT0dfMVhfQkFTRV9DKQojZGVmaW5lIExPR19RVFZfUERTMl9HRVRfUkVTUF9QQ0tUICAgICAgICAgICAgICAgICAgICAgICgweDFCOSArIExPR18xWF9CQVNFX0MpCiNkZWZpbmUgTE9HX1FUVl9DTVhfQVVESU9fSU5QVVRfREFUQV9DICAgICAgICAgICAgICAgICAgKDB4MUJBICsgTE9HXzFYX0JBU0VfQykKI2RlZmluZSBMT0dfUVRWX1JUU1BfT1BUSU9OU19DICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxQkIgKyBMT0dfMVhfQkFTRV9DKQojZGVmaW5lIExPR19RVFZfUlRTUF9HRVRfUEFSQU1FVEVSX0MgICAgICAgICAgICAgICAgICAgICgweDFCQyArIExPR18xWF9CQVNFX0MpCiNkZWZpbmUgTE9HX1FUVl9SVFNQX1NFVF9QQVJBTUVURVJfQyAgICAgICAgICAgICAgICAgICAgKDB4MUJEICsgTE9HXzFYX0JBU0VfQykKI2RlZmluZSBMT0dfUVRWX1ZJREVPX0JJVFNUUkVBTSAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxQkUgKyBMT0dfMVhfQkFTRV9DKQojZGVmaW5lIExPR19BUk1fVklERU9fREVDT0RFX1NUQVRTICAgICAgICAgICAgICAgICAgICAgICgweDFCRiArIExPR18xWF9CQVNFX0MpCiNkZWZpbmUgTE9HX1FUVl9EU1BfU0xJQ0VfQlVGRkVSX0MgICAgICAgICAgICAgICAgICAgICAgKDB4MUMwICsgTE9HXzFYX0JBU0VfQykKI2RlZmluZSBMT0dfUVRWX0NNRF9MT0dHSU5HX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxQzEgKyBMT0dfMVhfQkFTRV9DKQojZGVmaW5lIExPR19RVFZfQVVESU9fRlJBTUVfUFRTX0lORk9fQyAgICAgICAgICAgICAgICAgICgweDFDMiArIExPR18xWF9CQVNFX0MpCiNkZWZpbmUgTE9HX1FUVl9WSURFT19GUkFNRV9ERUNPREVfSU5GT19DICAgICAgICAgICAgICAgKDB4MUMzICsgTE9HXzFYX0JBU0VfQykKI2RlZmluZSBMT0dfUVRWX1JUQ1BfQ09NUE9VTkRfUlJfQyAgICAgICAgICAgICAgICAgICAgICAoMHgxQzQgKyBMT0dfMVhfQkFTRV9DKQojZGVmaW5lIExPR19RVFZfRlJBTUVfQlVGRkVSX1JFTEVBU0VfUkVBU09OX0MgICAgICAgICAgICgweDFDNSArIExPR18xWF9CQVNFX0MpCiNkZWZpbmUgTE9HX1FUVl9BVURJT19DSEFOTkVMX1NXSVRDSF9GUkFNRV9DICAgICAgICAgICAgKDB4MUM2ICsgTE9HXzFYX0JBU0VfQykKI2RlZmluZSBMT0dfUVRWX1JUUF9ERUNSWVBURURfUEtUX0MgICAgICAgICAgICAgICAgICAgICAoMHgxQzcgKyBMT0dfMVhfQkFTRV9DKQojZGVmaW5lIExPR19RVFZfUENSX0RSSUZUX1JBVEVfQyAgICAgICAgICAgICAgICAgICAgICAgICgweDFDOCArIExPR18xWF9CQVNFX0MpCgovKiBHUFMgUERTTSBsb2dzICovCiNkZWZpbmUgTE9HX1BEU01fUE9TSVRJT05fUkVQT1JUX0NBTExCQUNLX0MgICAgICAgICAgICAgKDB4MUUxICsgTE9HXzFYX0JBU0VfQykKI2RlZmluZSBMT0dfUERTTV9QRF9FVkVOVF9DQUxMQkFDS19DICAgICAgICAgICAgICAgICAgICAoMHgxRTIgKyBMT0dfMVhfQkFTRV9DKQojZGVmaW5lIExPR19QRFNNX1BBX0VWRU5UX0NBTExCQUNLX0MgICAgICAgICAgICAgICAgICAgICgweDFFMyArIExPR18xWF9CQVNFX0MpCiNkZWZpbmUgTE9HX1BEU01fTk9USUZZX1ZFUklGWV9SRVFVRVNUX0MgICAgICAgICAgICAgICAgKDB4MUU0ICsgTE9HXzFYX0JBU0VfQykKI2RlZmluZSBMT0dfUERTTV9SRVNFUlZFRDFfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxRTUgKyBMT0dfMVhfQkFTRV9DKQojZGVmaW5lIExPR19QRFNNX1JFU0VSVkVEMl9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDFFNiArIExPR18xWF9CQVNFX0MpCgovKiBTZWFyY2hlciBEZW1vZHVsYXRpb24gU3RhdHVzIGxvZyAqLwojZGVmaW5lIExPR19TUkNIX0RFTU9EX1NUQVRVU19DICAgICAgICAgICAgICAgICAgICAgICAgICgweDFFNyArIExPR18xWF9CQVNFX0MpCgovKiBTZWFyY2hlciBDYWxsIFN0YXRpc3RpY3MgbG9nICovCiNkZWZpbmUgTE9HX1NSQ0hfQ0FMTF9TVEFUSVNUSUNTX0MgICAgICAgICAgICAgICAgICAgICAgKDB4MUU4ICsgTE9HXzFYX0JBU0VfQykKCi8qIEdQUyBNUy1NUEMgRm9yd2FyZCBsaW5rICovCiNkZWZpbmUgTE9HX01TX01QQ19GV0RfTElOS19DICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MUU5ICsgTE9HXzFYX0JBU0VfQykKCi8qIEdQUyBNUy1NUEMgUmV2ZXJzZSBsaW5rICovCiNkZWZpbmUgTE9HX01TX01QQ19SRVZfTElOS19DICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MUVBICsgTE9HXzFYX0JBU0VfQykKCi8qIFByb3RvY29sIFNlcnZpY2VzIERhdGEgKi8KI2RlZmluZSBMT0dfREFUQV9QUk9UT0NPTF9MT0dHSU5HX0MgICAgICAgICAgICAgICAgICAgICAoMHgxRUIgKyBMT0dfMVhfQkFTRV9DKQoKLyogTWVkaWFGTE8gcmVzZXJ2ZWQgbG9nIGNvZGVzICovCiNkZWZpbmUgTE9HX01GTE9fUkVTRVJWRURfQ09ERVNfQkFTRV9DICAgICAgICAgICAgICAgICAgKDB4MUVDICsgTE9HXzFYX0JBU0VfQykKI2RlZmluZSBMT0dfTUZMT19MQVNUX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoOTkgKyBMT0dfTUZMT19SRVNFUlZFRF9DT0RFU19CQVNFX0MpCgovKiBHUFMgZGVtb2R1bGF0aW9uIHRyYWNraW5nIGhlYWRlciBpbmZvICovCiNkZWZpbmUgTE9HX0dQU19ERU1PRF9UUkFDS0lOR19IRUFERVJfQyAgICAgICAgICAgICAgICAgKDB4MjUwICsgTE9HXzFYX0JBU0VfQykKCi8qIEdQUyBkZW1vZHVsYXRpb24gdHJhY2tpbmcgcmVzdWx0cyAqLwojZGVmaW5lIExPR19HUFNfREVNT0RfVFJBQ0tJTkdfQyAgICAgICAgICAgICAgICAgICAgICAgICgweDI1MSArIExPR18xWF9CQVNFX0MpCgovKiBHUFMgYml0IGVkZ2UgbG9ncyBmcm9tIGRlbW9kIHRyYWNraW5nICovCiNkZWZpbmUgTE9HX0dQU19ERU1PRF9CSVRfRURHRV9DICAgICAgICAgICAgICAgICAgICAgICAgKDB4MjUyICsgTE9HXzFYX0JBU0VfQykKCi8qIEdQUyBkZW1vZHVsYXRpb24gc29mdCBkZWNpc2lvbnMgKi8KI2RlZmluZSBMT0dfR1BTX0RFTU9EX1NPRlRfREVDSVNJT05TX0MgICAgICAgICAgICAgICAgICAoMHgyNTMgKyBMT0dfMVhfQkFTRV9DKQoKLyogR1BTIHBvc3QtcHJvY2Vzc2VkIGRlbW9kIHRyYWNraW5nIHJlc3VsdHMgKi8KI2RlZmluZSBMT0dfR1BTX0RFTU9EX1RSQUNLSU5HX1BPU1RfUFJPQ19DICAgICAgICAgICAgICAoMHgyNTQgKyBMT0dfMVhfQkFTRV9DKQoKLyogR1BTIHN1YmZyYW1lIGxvZyAqLwojZGVmaW5lIExPR19HUFNfREVNT0RfU1VCRlJBTUVfQyAgICAgICAgICAgICAgICAgICAgICAgICgweDI1NSArIExPR18xWF9CQVNFX0MpCgovKiBGLUNQQ0NIIFF1YWxpdHkgSW5mb3JtYXRpb24gKi8KI2RlZmluZSBMT0dfRl9DUENDSF9RVUFMSVRZX0lORk9fQyAgICAgICAgICAgICAgICAgICAgICAoMHgyNTYgKyBMT0dfMVhfQkFTRV9DKQoKLyogUmV2ZXJzZSBQRENDSC9QRENIIEZyYW1lIEluZm9ybWF0aW9uICovCiNkZWZpbmUgTE9HX1JfUERDQ0hfUl9QRENIX0ZSQU1FX0lORk9fQyAgICAgICAgICAgICAgICAgKDB4MjU3ICsgTE9HXzFYX0JBU0VfQykKCi8qIEZvcndhcmQgRyBDaGFubmVsIEluZm9ybWF0aW9uICovCiNkZWZpbmUgTE9HX0ZfR0NIX0lORk9fQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MjU4ICsgTE9HXzFYX0JBU0VfQykKCi8qIEZvcndhcmQgRyBDaGFubmVsIEZyYW1lIEluZm9ybWF0aW9uICovCiNkZWZpbmUgTE9HX0ZfR0NIX0ZSQU1FX0lORk9fQyAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MjU5ICsgTE9HXzFYX0JBU0VfQykKCi8qIEZvcndhcmQgUkMgQ2hhbm5lbCBJbmZvcm1hdGlvbiAqLwojZGVmaW5lIExPR19GX1JDQ0hfSU5GT19DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDI1QSArIExPR18xWF9CQVNFX0MpCgovKiBGb3J3YXJkIEFDSyBDaGFubmVsIEluZm9ybWF0aW9uICovCiNkZWZpbmUgTE9HX0ZfQUNLQ0hfSU5GT19DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MjVCICsgTE9HXzFYX0JBU0VfQykKCi8qIEZvcndhcmQgQUNLIENoYW5uZWwgQUNLREEgSW5mb3JtYXRpb24gKi8KI2RlZmluZSBMT0dfRl9BQ0tDSF9BQ0tEQV9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyNUMgKyBMT0dfMVhfQkFTRV9DKQoKLyogUmV2ZXJzZSBSRVEgQ2hhbm5lbCBJbmZvcm1hdGlvbiAqLwojZGVmaW5lIExPR19SX1JFUUNIX0lORk9fQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDI1RCArIExPR18xWF9CQVNFX0MpCgovKiBTbGVlcCBUYXNrIFN0YXRpc3RpY3MgKi8KI2RlZmluZSBMT0dfU0xFRVBfU1RBVFNfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyNUUgKyBMT0dfMVhfQkFTRV9DKQoKLyogU2xlZXAgY29udHJvbGxlciBzdGF0aXN0aWNzIDFYICovCiNkZWZpbmUgTE9HXzFYX1NMRUVQX0NPTlRST0xMRVJfU1RBVFNfQyAgICAgICAgICAgICAgICAgKDB4MjVGICsgTE9HXzFYX0JBU0VfQykKCi8qIFNsZWVwIGNvbnRyb2xsZXIgc3RhdGlzdGljcyBIRFIgKi8KI2RlZmluZSBMT0dfSERSX1NMRUVQX0NPTlRST0xMRVJfU1RBVFNfQyAgICAgICAgICAgICAgICAoMHgyNjAgKyBMT0dfMVhfQkFTRV9DKQoKLyogU2xlZXAgY29udHJvbGxlciBzdGF0aXN0aWNzIEdTTSAqLwojZGVmaW5lIExPR19HU01fU0xFRVBfQ09OVFJPTExFUl9TVEFUU19DICAgICAgICAgICAgICAgICgweDI2MSArIExPR18xWF9CQVNFX0MpCgovKiBTbGVlcCBjb250cm9sbGVyIHN0YXRpc3RpY3MgV0NETUEgKi8KI2RlZmluZSBMT0dfV0NETUFfU0xFRVBfQ09OVFJPTExFUl9TVEFUU19DICAgICAgICAgICAgICAoMHgyNjIgKyBMT0dfMVhfQkFTRV9DKQoKLyogU2xlZXAgdGFzayBhbmQgY29udHJvbGxlciByZXNlcnZlZCBsb2dzICovCiNkZWZpbmUgTE9HX1NMRUVQX0FQUFNfU1RBVFNfQyAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MjYzICsgTE9HXzFYX0JBU0VfQykKI2RlZmluZSBMT0dfU0xFRVBfU1RBVFNfUkVTRVJWRUQyX0MgICAgICAgICAgICAgICAgICAgICAoMHgyNjQgKyBMT0dfMVhfQkFTRV9DKQojZGVmaW5lIExPR19TTEVFUF9TVEFUU19SRVNFUlZFRDNfQyAgICAgICAgICAgICAgICAgICAgICgweDI2NSArIExPR18xWF9CQVNFX0MpCgovKiBEViBJbmZvcm1hdGlvbiBwbGFjZWhvbGRlciBjaGFubmVsIGxvZ3MgKi8KI2RlZmluZSBMT0dfUERDQ0hfTE9fU0VMRUNURURfQyAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyNjYgKyBMT0dfMVhfQkFTRV9DKQojZGVmaW5lIExPR19QRENDSF9ISV9TRUxFQ1RFRF9DICAgICAgICAgICAgICAgICAgICAgICAgICgweDI2NyArIExPR18xWF9CQVNFX0MpCiNkZWZpbmUgTE9HX1dBTFNIX1NFTEVDVEVEX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MjY4ICsgTE9HXzFYX0JBU0VfQykKI2RlZmluZSBMT0dfUERDSF9CRV9TRUxFQ1RFRF9DICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyNjkgKyBMT0dfMVhfQkFTRV9DKQojZGVmaW5lIExPR19QRENDSF9MTFJfU0VMRUNURURfQyAgICAgICAgICAgICAgICAgICAgICAgICgweDI2QSArIExPR18xWF9CQVNFX0MpCiNkZWZpbmUgTE9HX0NRSV9BQ0tfTE9fU0VMRUNURURfQyAgICAgICAgICAgICAgICAgICAgICAgKDB4MjZCICsgTE9HXzFYX0JBU0VfQykKI2RlZmluZSBMT0dfQ1FJX0FDS19ISV9TRUxFQ1RFRF9DICAgICAgICAgICAgICAgICAgICAgICAoMHgyNkMgKyBMT0dfMVhfQkFTRV9DKQojZGVmaW5lIExPR19STF9HQUlOX1NFTEVDVEVEX0MgICAgICAgICAgICAgICAgICAgICAgICAgICgweDI2RCArIExPR18xWF9CQVNFX0MpCiNkZWZpbmUgTE9HX1BEQ0NIMF9TTkRBX1NFTEVDVEVEX0MgICAgICAgICAgICAgICAgICAgICAgKDB4MjZFICsgTE9HXzFYX0JBU0VfQykKI2RlZmluZSBMT0dfUERDQ0gxX1NOREFfU0VMRUNURURfQyAgICAgICAgICAgICAgICAgICAgICAoMHgyNkYgKyBMT0dfMVhfQkFTRV9DKQoKLyogNjI0IFdNUyBNZXNzYWdlIExpc3QgKi8KI2RlZmluZSBMT0dfV01TX01FU1NBR0VfTElTVF9DICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyNzAgKyBMT0dfMVhfQkFTRV9DKQoKLyogNjI1IE11bHRpbW9kZSBHZW5lcmljIFNJTSBEcml2ZXIgSW50ZXJmYWNlICovCiNkZWZpbmUgTE9HX01NX0dFTkVSSUNfU0lNX0RSSVZFUl9DICAgICAgICAgICAgICAgICAgICAgKDB4MjcxICsgTE9HXzFYX0JBU0VfQykKCi8qIDYyNiBHZW5lcmljIFNJTSBUb29sa2l0IFRhc2sgKi8KI2RlZmluZSBMT0dfR0VORVJJQ19TSU1fVE9PTEtJVF9UQVNLX0MgICAgICAgICAgICAgICAgICAoMHgyNzIgKyBMT0dfMVhfQkFTRV9DKQoKLyogNjI3IENhbGwgTWFuYWdlciBQaG9uZSBldmVudHMgbG9nICovCiNkZWZpbmUgTE9HX0NNX1BIX0VWRU5UX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MjczICsgTE9HXzFYX0JBU0VfQykKCi8qIDYyOCBXTVMgU2V0IE1lc3NhZ2UgTGlzdCAqLwojZGVmaW5lIExPR19XTVNfU0VUX01FU1NBR0VfTElTVF9DICAgICAgICAgICAgICAgICAgICAgICgweDI3NCArIExPR18xWF9CQVNFX0MpCgovKiA2MjktNzA0IEhEUiByZXNlcnZlZCBsb2dzICovCiNkZWZpbmUgTE9HX0hEUl9SRVNFUlZFRF9DT0RFU19CQVNFXzNfQyAgICAgICAgICAgICAgICAgKDB4Mjc1ICsgTE9HXzFYX0JBU0VfQykKI2RlZmluZSBMT0dfSERSX0xBU1RfM19DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoNzUgKyBMT0dfSERSX1JFU0VSVkVEX0NPREVTX0JBU0VfM19DKQoKLyogNzA1IENhbGwgTWFuYWdlciBjYWxsIGV2ZW50IGxvZyAqLwojZGVmaW5lIExPR19DTV9DQUxMX0VWRU5UX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDJDMSArIExPR18xWF9CQVNFX0MpCgovKiA3MDYtNzM4IFFWUCByZXNlcnZlZCBsb2dzICovCiNkZWZpbmUgTE9HX1FWUF9SRVNFUlZFRF9DT0RFU19CQVNFX0MgICAgICAgICAgICAgICAgICAgKDB4MkMyICsgTE9HXzFYX0JBU0VfQykKI2RlZmluZSBMT0dfUVZQX0xBU1RfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMzIgKyBMT0dfUVZQX1JFU0VSVkVEX0NPREVTX0JBU0VfQykKCi8qIDczOSBHUFMgUEUgUG9zaXRpb24gUmVwb3J0IGxvZyAqLwojZGVmaW5lIExPR19HUFNfUEVfUE9TSVRJT05fUkVQT1JUX0MgICAgICAgICAgICAgICAgICAgICgweDJFMyArIExPR18xWF9CQVNFX0MpCgovKiA3NDAgR1BTIFBFIFBvc2l0aW9uIFJlcG9ydCBFeHRlbmRlZCBsb2cgKi8KI2RlZmluZSBMT0dfR1BTX1BFX1BPU0lUSU9OX1JFUE9SVF9FWFRfQyAgICAgICAgICAgICAgICAoMHgyRTQgKyBMT0dfMVhfQkFTRV9DKQoKLyogNzQxIGxvZyAqLwojZGVmaW5lIExPR19NRERJX0hPU1RfU1RBVFNfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDJFNSArIExPR18xWF9CQVNFX0MpCgovKiBHUFMgRGVjb2RlZCBFcGhlbWVyaXMgKi8KI2RlZmluZSBMT0dfR1BTX0RFQ09ERURfRVBIRU1FUklTX0MgICAgICAgICAgICAgICAgICAgICAoMHgyRTYgKyBMT0dfMVhfQkFTRV9DKQoKLyogR1BTIERlY29kZWQgQWxtYW5hYyAqLwojZGVmaW5lIExPR19HUFNfREVDT0RFRF9BTE1BTkFDX0MgICAgICAgICAgICAgICAgICAgICAgICgweDJFNyArIExPR18xWF9CQVNFX0MpCgovKiBUcmFuc2NlaXZlciBSZXNvdXJjZSBNYW5hZ2VyICovCiNkZWZpbmUgTE9HX1RSQU5TQ0VJVkVSX1JFU09VUkNFX01HUl9DICAgICAgICAgICAgICAgICAgKDB4MkU4ICsgTE9HXzFYX0JBU0VfQykKCi8qIEdQUyBQb3NpdGlvbiBFbmdpbmUgSW5mbyAqLwojZGVmaW5lIExPR19HUFNfUE9TSVRJT05fRU5HSU5FX0lORk9fQyAgICAgICAgICAgICAgICAgICgweDJFOSArIExPR18xWF9CQVNFX0MpCgovKiA3NDYtODEwIFJBUFRPUiByZXNlcnZlZCBsb2cgcmFuZ2UgKi8KI2RlZmluZSBMT0dfUkFQVE9SX1JFU0VSVkVEX0NPREVTX0JBU0VfQyAgICAgICAgICAgICAgICAoMHgyRUEgKyBMT0dfMVhfQkFTRV9DKQojZGVmaW5lIExPR19SQVBUT1JfTEFTVF9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICg2NCArIExPR19SQVBUT1JfUkVTRVJWRURfQ09ERVNfQkFTRV9DKQoKLyogUU9TIFNwZWNpZmljYXRpb24gTG9nZ2luZyAqLwoKLyogUU9TIFJlcXVlc3RlZCBMb2cgKi8KI2RlZmluZSBMT0dfUU9TX1JFUVVFU1RFRF9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgzMkIgKyBMT0dfMVhfQkFTRV9DKQoKLyogUU9TIEdyYW50ZWQgTG9nICovCiNkZWZpbmUgTE9HX1FPU19HUkFOVEVEX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MzJDICsgTE9HXzFYX0JBU0VfQykKCi8qIFFPUyBTdGF0ZSBMb2cgKi8KI2RlZmluZSBMT0dfUU9TX1NUQVRFX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgzMkQgKyBMT0dfMVhfQkFTRV9DKQoKI2RlZmluZSBMT0dfUU9TX01PRElGSUVEX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgzMkUgKyBMT0dfMVhfQkFTRV9DKQoKI2RlZmluZSBMT0dfUURKX0VOUVVFVUVfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgzMkYgKyBMT0dfMVhfQkFTRV9DKQojZGVmaW5lIExPR19RREpfREVRVUVVRV9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDMzMCArIExPR18xWF9CQVNFX0MpCiNkZWZpbmUgTE9HX1FESl9VUERBVEVfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MzMxICsgTE9HXzFYX0JBU0VfQykKI2RlZmluZSBMT0dfUURUWF9FTkNPREVSX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgzMzIgKyBMT0dfMVhfQkFTRV9DKQojZGVmaW5lIExPR19RRFRYX0RFQ09ERVJfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDMzMyArIExPR18xWF9CQVNFX0MpCgojZGVmaW5lIExPR19QT1JUX0FTU0lHTk1FTlRfU1RBVFVTX0MgICAgICAgICAgICAgICAgICAgICgweDMzNCArIExPR18xWF9CQVNFX0MpCgovKiBQcm90b2NvbCBTZXJ2aWNlcyByZXNlcnZlZCBsb2cgY29kZXMgKi8KI2RlZmluZSBMT0dfUFNfUkVTRVJWRURfQ09ERVNfQkFTRV9DICAgICAgICAgICAgICAgICAgICAoMHgzMzUgKyBMT0dfMVhfQkFTRV9DKQojZGVmaW5lIExPR19QU19MQVNUX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgyNSArIExPR19QU19SRVNFUlZFRF9DKQoKI2RlZmluZSBMT0dfUFNfU1RBVF9JUF9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgzMzUgKyBMT0dfMVhfQkFTRV9DKQojZGVmaW5lIExPR19QU19TVEFUX0dMT0JBTF9JUFY0X0MgICAgICAgICAgICAgICAgICAgICAgICgweDMzNSArIExPR18xWF9CQVNFX0MpCiNkZWZpbmUgTE9HX1BTX1NUQVRfR0xPQkFMX0lQVjZfQyAgICAgICAgICAgICAgICAgICAgICAgKDB4MzM2ICsgTE9HXzFYX0JBU0VfQykKI2RlZmluZSBMT0dfUFNfU1RBVF9HTE9CQUxfSUNNUFY0X0MgICAgICAgICAgICAgICAgICAgICAoMHgzMzcgKyBMT0dfMVhfQkFTRV9DKQojZGVmaW5lIExPR19QU19TVEFUX0dMT0JBTF9JQ01QVjZfQyAgICAgICAgICAgICAgICAgICAgICgweDMzOCArIExPR18xWF9CQVNFX0MpCiNkZWZpbmUgTE9HX1BTX1NUQVRfR0xPQkFMX1RDUF9DICAgICAgICAgICAgICAgICAgICAgICAgKDB4MzM5ICsgTE9HXzFYX0JBU0VfQykKI2RlZmluZSBMT0dfUFNfU1RBVF9HTE9CQUxfVURQX0MgICAgICAgICAgICAgICAgICAgICAgICAoMHgzM0EgKyBMT0dfMVhfQkFTRV9DKQoKLyogUHJvdG9jb2wgU2VydmljZXMgZGVzY3JpYmUgYWxsIFRDUCBpbnN0YW5jZXMgKi8KI2RlZmluZSBMT0dfUFNfU1RBVF9ERVNDX0FMTF9UQ1BfSU5TVF9DICAgICAgICAgICAgICAgICAoMHgzM0IgKyBMT0dfMVhfQkFTRV9DKQoKLyogUHJvdG9jb2wgU2VydmljZXMgZGVzY3JpYmUgYWxsIG1lbW9yeSBwb29sIGluc3RhbmNlcyAqLwojZGVmaW5lIExPR19QU19TVEFUX0RFU0NfQUxMX01FTV9QT09MX0lOU1RfQyAgICAgICAgICAgICgweDMzQyArIExPR18xWF9CQVNFX0MpCgovKiBQcm90b2NvbCBTZXJ2aWNlcyBkZXNjcmliZSBhbGwgSUZBQ0UgaW5zdGFuY2VzICovCiNkZWZpbmUgTE9HX1BTX1NUQVRfREVTQ19BTExfSUZBQ0VfSU5TVF9DICAgICAgICAgICAgICAgKDB4MzNEICsgTE9HXzFYX0JBU0VfQykKCi8qIFByb3RvY29sIFNlcnZpY2VzIGRlc2NyaWJlIGFsbCBQUFAgaW5zdGFuY2VzICovCiNkZWZpbmUgTE9HX1BTX1NUQVRfREVTQ19BTExfUFBQX0lOU1RfQyAgICAgICAgICAgICAgICAgKDB4MzNFICsgTE9HXzFYX0JBU0VfQykKCi8qIFByb3RvY29sIFNlcnZpY2VzIGRlc2NyaWJlIGFsbCBBUlAgaW5zdGFuY2VzICovCiNkZWZpbmUgTE9HX1BTX1NUQVRfREVTQ19BTExfQVJQX0lOU1RfQyAgICAgICAgICAgICAgICAgKDB4MzNGICsgTE9HXzFYX0JBU0VfQykKCi8qIFByb3RvY29sIFNlcnZpY2VzIGRlc2NyaWJlIGRlbHRhIGluc3RhbmNlICovCiNkZWZpbmUgTE9HX1BTX1NUQVRfREVTQ19ERUxUQV9JTlNUX0MgICAgICAgICAgICAgICAgICAgKDB4MzQwICsgTE9HXzFYX0JBU0VfQykKCi8qIFByb3RvY29sIFNlcnZpY2VzIGluc3RhbmNlIFRDUCBzdGF0aXN0aWNzICovCiNkZWZpbmUgTE9HX1BTX1NUQVRfVENQX0lOU1RfQyAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MzQxICsgTE9HXzFYX0JBU0VfQykKCi8qIFByb3RvY29sIFNlcnZpY2VzIGluc3RhbmNlIFVEUCBzdGF0aXN0aWNzICovCiNkZWZpbmUgTE9HX1BTX1NUQVRfVURQX0lOU1RfQyAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MzQyICsgTE9HXzFYX0JBU0VfQykKCi8qIFByb3RvY29sIFNlcnZpY2VzIGluc3RhbmNlIFBQUCBzdGF0aXN0aWNzICovCiNkZWZpbmUgTE9HX1BTX1NUQVRfUFBQX0lOU1RfQyAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MzQzICsgTE9HXzFYX0JBU0VfQykKCi8qIFByb3RvY29sIFNlcnZpY2VzIGluc3RhbmNlIElGQUNFIHN0YXRpc3RpY3MgKi8KI2RlZmluZSBMT0dfUFNfU1RBVF9JRkFDRV9JTlNUX0MgICAgICAgICAgICAgICAgICAgICAgICAoMHgzNDQgKyBMT0dfMVhfQkFTRV9DKQoKLyogUHJvdG9jb2wgU2VydmljZXMgaW5zdGFuY2UgbWVtb3J5IHN0YXRpc3RpY3MgKi8KI2RlZmluZSBMT0dfUFNfU1RBVF9NRU1fSU5TVF9DICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgzNDUgKyBMT0dfMVhfQkFTRV9DKQoKLyogUHJvdG9jb2wgU2VydmljZXMgaW5zdGFuY2UgZmxvdyBzdGF0aXN0aWNzICovCiNkZWZpbmUgTE9HX1BTX1NUQVRfRkxPV19JTlNUX0MgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MzQ2ICsgTE9HXzFYX0JBU0VfQykKCi8qIFByb3RvY29sIFNlcnZpY2VzIGluc3RhbmNlIHBoeXNpY2FsIGxpbmsgc3RhdGlzdGljcyAqLwojZGVmaW5lIExPR19QU19TVEFUX1BIWVNfTElOS19JTlNUX0MgICAgICAgICAgICAgICAgICAgICgweDM0NyArIExPR18xWF9CQVNFX0MpCgovKiBQcm90b2NvbCBTZXJ2aWNlcyBpbnN0YW5jZSBBUlAgc3RhdGlzdGljcyAqLwojZGVmaW5lIExPR19QU19TVEFUX0FSUF9JTlNUX0MgICAgICAgICAgICAgICAgICAgICAgICAgICgweDM0OCArIExPR18xWF9CQVNFX0MpCgovKiBQcm90b2NvbCBTZXJ2aWNlcyBpbnN0YW5jZSBMTEMgc3RhdGlzdGljcyAqLwojZGVmaW5lIExPR19QU19TVEFUX0xMQ19JTlNUX0MgICAgICAgICAgICAgICAgICAgICAgICAgICgweDM0OSArIExPR18xWF9CQVNFX0MpCgovKiBQcm90b2NvbCBTZXJ2aWNlcyBpbnN0YW5jZSBJUEhDIHN0YXRpc3RpY3MgKi8KI2RlZmluZSBMT0dfUFNfU1RBVF9JUEhDX0lOU1RfQyAgICAgICAgICAgICAgICAgICAgICAgICAoMHgzNEEgKyBMT0dfMVhfQkFTRV9DKQoKLyogUHJvdG9jb2wgU2VydmljZXMgaW5zdGFuY2UgUk9IQyBzdGF0aXN0aWNzICovCiNkZWZpbmUgTE9HX1BTX1NUQVRfUk9IQ19JTlNUX0MgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MzRCICsgTE9HXzFYX0JBU0VfQykKCi8qIFByb3RvY29sIFNlcnZpY2VzIGluc3RhbmNlIFJTVlAgc3RhdGlzdGljcyAqLwojZGVmaW5lIExPR19QU19TVEFUX1JTVlBfSU5TVF9DICAgICAgICAgICAgICAgICAgICAgICAgICgweDM0QyArIExPR18xWF9CQVNFX0MpCgovKiBQcm90b2NvbCBTZXJ2aWNlcyBkZXNjcmliZSBhbGwgTExDIGluc3RhbmNlcyAqLwojZGVmaW5lIExPR19QU19TVEFUX0RFU0NfQUxMX0xMQ19JTlNUX0MgICAgICAgICAgICAgICAgICgweDM0RCArIExPR18xWF9CQVNFX0MpCgovKiBQcm90b2NvbCBTZXJ2aWNlcyBkZXNjcmliZSBhbGwgUlNWUCBpbnN0YW5jZXMgKi8KI2RlZmluZSBMT0dfUFNfU1RBVF9ERVNDX0FMTF9SU1ZQX0lOU1RfQyAgICAgICAgICAgICAgICAoMHgzNEUgKyBMT0dfMVhfQkFTRV9DKQoKLyogQ2FsbCBNYW5hZ2VyIFNlcnZpbmcgU3lzdGVtIGV2ZW50IGxvZyAqLwojZGVmaW5lIExPR19DTV9TU19FVkVOVF9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDM0RiArIExPR18xWF9CQVNFX0MpCgovKiBWY1RjeG8gbWFuYWdlcpJzIGF1dG9tYXRpYyBmcmVxdWVuY3kgY29udHJvbCBsb2cgKi8KI2RlZmluZSBMT0dfVENYT01HUl9BRkNfREFUQV9DICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgzNTAgKyBMT0dfMVhfQkFTRV9DKQoKLyogQ2xvY2sgdHJhbnNhY3Rpb25zIGFuZCBnZW5lcmFsIGNsb2NrcyBzdGF0dXMgbG9nICovCiNkZWZpbmUgTE9HX0NMT0NLX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MzUxICsgTE9HXzFYX0JBU0VfQykKCi8qIEdQUyBzZWFyY2ggcHJvY2Vzc2VkIHBlYWsgcmVzdWx0cyBhbmQgdGhlaXIgYXNzb2NpYXRlZCBzZWFyY2ggcGFyYW1ldGVycyAqLwojZGVmaW5lIExPR19HUFNfUFJPQ0VTU0VEX1BFQUtfQyAgICAgICAgICAgICAgICAgICAgICAgICgweDM1MiArIExPR18xWF9CQVNFX0MpCgojZGVmaW5lIExPR19NRFNQX0xPR19DSFVOS1NfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDM1MyArIExPR18xWF9CQVNFX0MpCgovKiBQZXJpb2RpYyBSU1NJIHVwZGF0ZSBsb2cgKi8KI2RlZmluZSBMT0dfV0xBTl9SU1NJX1VQREFURV9DICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgzNTQgKyBMT0dfMVhfQkFTRV9DKQoKLyogUGVyaW9kaWMgTGluayBMYXllciBzdGF0aXN0aWNzIGxvZyAqLwojZGVmaW5lIExPR19XTEFOX0xMX1NUQVRfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDM1NSArIExPR18xWF9CQVNFX0MpCgovKiBRT1MgRXh0ZW5kZWQgU3RhdGUgTG9nICovCiNkZWZpbmUgTE9HX1FPU19TVEFURV9FWF9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MzU2ICsgTE9HXzFYX0JBU0VfQykKCi8qIEJsdWV0b290aCBob3N0IEhDSSB0cmFuc21pdHRlZCBkYXRhICovCiNkZWZpbmUgTE9HX0JUX0hPU1RfSENJX1RYX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MzU3ICsgTE9HXzFYX0JBU0VfQykKCi8qIEJsdWV0b290aCBob3N0IEhDSSByZWNlaXZlZCBkYXRhICovCiNkZWZpbmUgTE9HX0JUX0hPU1RfSENJX1JYX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MzU4ICsgTE9HXzFYX0JBU0VfQykKCi8qIEludGVybmFsIC0gR1BTIFBFIFBvc2l0aW9uIFJlcG9ydCBQYXJ0IDMgKi8KI2RlZmluZSBMT0dfR1BTX1BFX1BPU0lUSU9OX1JFUE9SVF9QQVJUM19DICAgICAgICAgICAgICAoMHgzNTkgKyBMT0dfMVhfQkFTRV9DKQoKLyogRXh0ZW5kZWQgbG9nIGNvZGUgd2hpY2ggbG9ncyByZXF1ZXN0ZWQgUW9TICovCiNkZWZpbmUgTE9HX1FPU19SRVFVRVNURURfRVhfQyAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MzVBICsgTE9HXzFYX0JBU0VfQykKCi8qIEV4dGVuZGVkIGxvZyBjb2RlIHdoaWNoIGxvZ3MgZ3JhbnRlZCBRb1MgKi8KI2RlZmluZSBMT0dfUU9TX0dSQU5URURfRVhfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgzNUIgKyBMT0dfMVhfQkFTRV9DKQoKLyogRXh0ZW5kZWQgbG9nIGNvZGUgd2hpY2ggbG9ncyBtb2RpZmllZCBRb1MgKi8KI2RlZmluZSBMT0dfUU9TX01PRElGSUVEX0VYX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgzNUMgKyBMT0dfMVhfQkFTRV9DKQoKLyogQnVzIE1vbml0b3IgUHJvZmlsaW5nIEluZm8gKi8KI2RlZmluZSBMT0dfQlVTX01PTl9QUk9GX0lORk9fQyAgICAgICAgICAgICAgICAgICAgICAgICAoMHgzNUQgKyBMT0dfMVhfQkFTRV9DKQoKLyogUGlsb3QgUGhhc2UgTWVhc3VyZW1lbnQgU2VhcmNoIHJlc3VsdHMgKi8KI2RlZmluZSBMT0dfU1JDSF9QUE1fUkVTX1ZFUl8yX0MgICAgICAgICAgICAgICAgICAgICAgICAoMHgzNUUgKyBMT0dfMVhfQkFTRV9DKQoKLyogUGlsb3QgUGhhc2UgTWVhc3VyZW1lbnQgRGF0YSBCYXNlICovCiNkZWZpbmUgTE9HX1NSQ0hfUFBNX0RCX1ZFUl8yX0MgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MzVGICsgTE9HXzFYX0JBU0VfQykKCi8qIFBpbG90IFBoYXNlIE1lYXN1cmVtZW50IHN0YXRlIG1hY2hpbmUgKi8KI2RlZmluZSBMT0dfUFBNX1NNX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgzNjAgKyBMT0dfMVhfQkFTRV9DKQoKLyogUm9idXN0IEhlYWRlciBDb21wcmVzc2lvbiAtIENvbXByZXNzb3IgKi8KI2RlZmluZSBMT0dfUk9IQ19DT01QUkVTU09SX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgzNjEgKyBMT0dfMVhfQkFTRV9DKQoKLyogUm9idXN0IEhlYWRlciBDb21wcmVzc2lvbiAtIERlY29tcHJlc3NvciAqLwojZGVmaW5lIExPR19ST0hDX0RFQ09NUFJFU1NPUl9DICAgICAgICAgICAgICAgICAgICAgICAgICgweDM2MiArIExPR18xWF9CQVNFX0MpCgovKiBSb2J1c3QgSGVhZGVyIENvbXByZXNzaW9uIC0gRmVlZGJhY2sgQ29tcHJlc3NvciAqLwojZGVmaW5lIExPR19ST0hDX0ZFRURCQUNLX0NPTVBSRVNTT1JfQyAgICAgICAgICAgICAgICAgICgweDM2MyArIExPR18xWF9CQVNFX0MpCgovKiBSb2J1c3QgSGVhZGVyIENvbXByZXNzaW9uIC0gRmVlZGJhY2sgRGVjb21wcmVzc29yICovCiNkZWZpbmUgTE9HX1JPSENfRkVFREJBQ0tfREVDT01QUkVTU09SX0MgICAgICAgICAgICAgICAgKDB4MzY0ICsgTE9HXzFYX0JBU0VfQykKCi8qIEJsdWV0b290aCBIQ0kgY29tbWFuZHMgKi8KI2RlZmluZSBMT0dfQlRfSENJX0NNRF9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgzNjUgKyBMT0dfMVhfQkFTRV9DKQoKLyogQmx1ZXRvb3RoIEhDSSBldmVudHMgKi8KI2RlZmluZSBMT0dfQlRfSENJX0VWX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgzNjYgKyBMT0dfMVhfQkFTRV9DKQoKLyogQmx1ZXRvb3RoIEhDSSBUcmFuc21pdHRlZCBBQ0wgZGF0YSAqLwojZGVmaW5lIExPR19CVF9IQ0lfVFhfQUNMX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDM2NyArIExPR18xWF9CQVNFX0MpCgovKiBCbHVldG9vdGggSENJIFJlY2VpdmVkIEFDTCBkYXRhICovCiNkZWZpbmUgTE9HX0JUX0hDSV9SWF9BQ0xfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MzY4ICsgTE9HXzFYX0JBU0VfQykKCi8qIEJsdWV0b290aCBTT0MgSDQgRGVlcCBTbGVlcCAqLwojZGVmaW5lIExPR19CVF9TT0NfSDREU19DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDM2OSArIExPR18xWF9CQVNFX0MpCgovKiBVTVRTIHRvIENETUEgSGFuZG92ZXIgTWVzc2FnZSAqLwojZGVmaW5lIExPR19VTVRTX1RPX0NETUFfSEFORE9WRVJfTVNHX0MgICAgICAgICAgICAgICAgICgweDM2QSArIExPR18xWF9CQVNFX0MpCgovKiBHcmFwaGljIEV2ZW50IERhdGEgKi8KI2RlZmluZSBMT0dfUFJPRklMRVJfR1JBUEhJQ19EQVRBX0MgICAgICAgICAgICAgICAgICAgICAoMHgzNkIgKyBMT0dfMVhfQkFTRV9DKQoKLyogQXVkaW8gRXZlbnQgRGF0YSAqLwojZGVmaW5lIExPR19QUk9GSUxFUl9BVURJT19EQVRBX0MgICAgICAgICAgICAgICAgICAgICAgICgweDM2QyArIExPR18xWF9CQVNFX0MpCgovKiBHUFMgU3BlY3RyYWwgSW5mb3JtYXRpb24gKi8KI2RlZmluZSBMT0dfR1BTX1NQRUNUUkFMX0lORk9fQyAgICAgICAgICAgICAgICAgICAgICAgICAoMHgzNkQgKyBMT0dfMVhfQkFTRV9DKQoKLyogQUhCIFBlcmZvcm1hbmNlIE1vbml0b3IgTE9HIGRhdGEgKi8KI2RlZmluZSBMT0dfQVBNX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgzNkUgKyBMT0dfMVhfQkFTRV9DKQoKLyogR1BTIENsb2NrIFJlcG9ydCAqLwojZGVmaW5lIExPR19DT05WRVJHRURfR1BTX0NMT0NLX1JFUE9SVF9DICAgICAgICAgICAgICAgICgweDM2RiArIExPR18xWF9CQVNFX0MpCgovKiBHUFMgUG9zaXRpb24gUmVwb3J0ICovCiNkZWZpbmUgTE9HX0NPTlZFUkdFRF9HUFNfUE9TSVRJT05fUkVQT1JUX0MgICAgICAgICAgICAgKDB4MzcwICsgTE9HXzFYX0JBU0VfQykKCi8qIEdQUyBNZWFzdXJlbWVudCBSZXBvcnQgKi8KI2RlZmluZSBMT0dfQ09OVkVSR0VEX0dQU19NRUFTVVJFTUVOVF9SRVBPUlRfQyAgICAgICAgICAoMHgzNzEgKyBMT0dfMVhfQkFTRV9DKQoKLyogR1BTIFJGIFN0YXR1cyBSZXBvcnQgKi8KI2RlZmluZSBMT0dfQ09OVkVSR0VEX0dQU19SRl9TVEFUVVNfUkVQT1JUX0MgICAgICAgICAgICAoMHgzNzIgKyBMT0dfMVhfQkFTRV9DKQoKLyogVk9JUCBUbyBDRE1BIEhhbmRvdmVyIE1lc3NhZ2UgLSBPYnNvbGV0ZWQgYnkgMHgxMzhCIC0gMHgxMzhEICovCiNkZWZpbmUgTE9HX1ZPSVBfVE9fQ0RNQV9IQU5ET1ZFUl9NU0dfQyAgICAgICAgICAgICAgICAgKDB4MzczICsgTE9HXzFYX0JBU0VfQykKCi8qIEdQUyBQcmVzY3JpYmVkIER3ZWxsIFJlc3VsdCAqLwojZGVmaW5lIExPR19HUFNfUFJFU0NSSUJFRF9EV0VMTF9SRVNVTFRfQyAgICAgICAgICAgICAgICgweDM3NCArIExPR18xWF9CQVNFX0MpCgovKiBDR1BTIElQQyBEYXRhICovCiNkZWZpbmUgTE9HX0NHUFNfSVBDX0RBVEFfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4Mzc1ICsgTE9HXzFYX0JBU0VfQykKCi8qIENHUFMgTm9uIElQQyBEYXRhICovCiNkZWZpbmUgTE9HX0NHUFNfTk9OX0lQQ19EQVRBX0MgICAgICAgICAgICAgICAgICAgICAgICAgKDB4Mzc2ICsgTE9HXzFYX0JBU0VfQykKCi8qIENHUFMgU2Vzc2lvbiBSZXBvcnQgKi8KI2RlZmluZSBMT0dfQ0dQU19SRVBfRVZUX0xPR19QQUNLRVRfQyAgICAgICAgICAgICAgICAgICAoMHgzNzcgKyBMT0dfMVhfQkFTRV9DKQoKLyogQ0dQUyBQRFNNIEdldCBQb3NpdGlvbiAqLwojZGVmaW5lIExPR19DR1BTX1BEU01fR0VUX1BPU0lUSU9OX0MgICAgICAgICAgICAgICAgICAgICgweDM3OCArIExPR18xWF9CQVNFX0MpCgovKiBDR1BTIFBEU00gU2V0IFBhcmFtZXRlcnMgKi8KI2RlZmluZSBMT0dfQ0dQU19QRFNNX1NFVF9QQVJBTUVURVJTX0MgICAgICAgICAgICAgICAgICAoMHgzNzkgKyBMT0dfMVhfQkFTRV9DKQoKLyogQ0dQUyBQRFNNIEVuZCBTZXNzaW9uICovCiNkZWZpbmUgTE9HX0NHUFNfUERTTV9FTkRfU0VTU0lPTl9DICAgICAgICAgICAgICAgICAgICAgKDB4MzdBICsgTE9HXzFYX0JBU0VfQykKCi8qIENHUFMgUERTTSBOb3RpZnkgVmVyaWZ5IFJlc3BvbnNlICovCiNkZWZpbmUgTE9HX0NHUFNfUERTTV9OT1RJRllfVkVSSUZZX1JFU1BfQyAgICAgICAgICAgICAgKDB4MzdCICsgTE9HXzFYX0JBU0VfQykKCi8qIENHUFMgUERTTSBQb3NpdGlvbiBSZXBvcnQgQ2FsbGJhY2sgKi8KI2RlZmluZSBMT0dfQ0dQU19QRFNNX1BPU0lUSU9OX1JFUE9SVF9DQUxMQkFDS19DICAgICAgICAoMHgzN0MgKyBMT0dfMVhfQkFTRV9DKQoKLyogQ0dQUyBQRFNNIFBEIEV2ZW50IENhbGxiYWNrICovCiNkZWZpbmUgTE9HX0NHUFNfUERTTV9QRF9FVkVOVF9DQUxMQkFDS19DICAgICAgICAgICAgICAgKDB4MzdEICsgTE9HXzFYX0JBU0VfQykKCi8qIENHUFMgUERTTSBQQSBFdmVudCBDYWxsYmFjayAqLwojZGVmaW5lIExPR19DR1BTX1BEU01fUEFfRVZFTlRfQ0FMTEJBQ0tfQyAgICAgICAgICAgICAgICgweDM3RSArIExPR18xWF9CQVNFX0MpCgovKiBDR1BTIFBEU00gTm90aWZ5IFZlcmlmeSBSZXF1ZXN0IENhbGxiYWNrICovCiNkZWZpbmUgTE9HX0NHUFNfUERTTV9OT1RJRllfVkVSSUZZX1JFUVVFU1RfQyAgICAgICAgICAgKDB4MzdGICsgTE9HXzFYX0JBU0VfQykKCi8qIENHUFMgUERTTSBQRCBDb21tYW5kIEVycm9yIENhbGxiYWNrICovCiNkZWZpbmUgTE9HX0NHUFNfUERTTV9QRF9DTURfRVJSX0NBTExCQUNLX0MgICAgICAgICAgICAgKDB4MzgwICsgTE9HXzFYX0JBU0VfQykKCi8qIENHUFMgUERTTSBQQSBDb21tYW5kIEVycm9yIENhbGxiYWNrICovCiNkZWZpbmUgTE9HX0NHUFNfUERTTV9QQV9DTURfRVJSX0NBTExCQUNLX0MgICAgICAgICAgICAgKDB4MzgxICsgTE9HXzFYX0JBU0VfQykKCi8qIENHUFMgUERTTSBQb3NpdGlvbiBFcnJvciAqLwojZGVmaW5lIExPR19DR1BTX1BEU01fUE9TX0VSUk9SX0MgICAgICAgICAgICAgICAgICAgICAgICgweDM4MiArIExPR18xWF9CQVNFX0MpCgovKiBDR1BTIFBEU00gRXh0ZW5kZWQgU3RhdHVzIFBvc2l0aW9uIFJlcG9ydCAqLwojZGVmaW5lIExPR19DR1BTX1BEU01fRVhUX1NUQVRVU19QT1NfUkVQT1JUX0MgICAgICAgICAgICgweDM4MyArIExPR18xWF9CQVNFX0MpCgovKiBDR1BTIFBEU00gRXh0ZW5kZWQgU3RhdHVzIE5NRUEgUmVwb3J0ICovCiNkZWZpbmUgTE9HX0NHUFNfUERTTV9FWFRfU1RBVFVTX05NRUFfUkVQT1JUX0MgICAgICAgICAgKDB4Mzg0ICsgTE9HXzFYX0JBU0VfQykKCi8qIENHUFMgUERTTSBFeHRlbmRlZCBTdGF0dXMgTWVhc3VyZW1lbnQgUmVwb3J0ICovCiNkZWZpbmUgTE9HX0NHUFNfUERTTV9FWFRfU1RBVFVTX01FQVNfUkVQT1JUX0MgICAgICAgICAgKDB4Mzg1ICsgTE9HXzFYX0JBU0VfQykKCi8qIENHUFMgUmVwb3J0IFNlcnZlciBUWCBQYWNrZXQgKi8KI2RlZmluZSBMT0dfQ0dQU19SRVBfU1ZSX1RYX0xPR19QQUNLRVRfQyAgICAgICAgICAgICAgICAoMHgzODYgKyBMT0dfMVhfQkFTRV9DKQoKLyogQ0dQUyBSZXBvcnQgU2VydmVyIFJYIFBhY2tldCAqLwojZGVmaW5lIExPR19DR1BTX1JFUF9TVlJfUlhfTE9HX1BBQ0tFVF9DICAgICAgICAgICAgICAgICgweDM4NyArIExPR18xWF9CQVNFX0MpCgovKiBVTVRTIFRvIENETUEgSGFuZG92ZXIgUGFnaW5nIENoYW5uZWwgTWVzc2FnZSAqLwojZGVmaW5lIExPR19VTVRTX1RPX0NETUFfSEFORE9WRVJfUENIX01TR19DICAgICAgICAgICAgICgweDM4OCArIExPR18xWF9CQVNFX0MpCgovKiBVTVRTIFRvIENETUEgSGFuZG92ZXIgVHJhZmZpYyBDaGFubmVsIE1lc3NhZ2UgKi8KI2RlZmluZSBMT0dfVU1UU19UT19DRE1BX0hBTkRPVkVSX1RDSF9NU0dfQyAgICAgICAgICAgICAoMHgzODkgKyBMT0dfMVhfQkFTRV9DKQoKLyogQ29udmVyZ2VkIEdQUyBJUSBSZXBvcnQgKi8KI2RlZmluZSBMT0dfQ09OVkVSR0VEX0dQU19JUV9SRVBPUlRfQyAgICAgICAgICAgICAgICAgICAoMHgzOEEgKyBMT0dfMVhfQkFTRV9DKQoKLyogVk9JUCBUbyBDRE1BIFBhZ2luZyBDaGFubmVsIEhhbmRvdmVyIE1lc3NhZ2UgKi8KI2RlZmluZSBMT0dfVk9JUF9UT19DRE1BX1BDSF9IQU5ET1ZFUl9NU0dfQyAgICAgICAgICAgICAoMHgzOEIgKyBMT0dfMVhfQkFTRV9DKQoKLyogVk9JUCBUbyBDRE1BIEFjY2VzcyBDaGFubmVsIEhhbmRvdmVyIE1lc3NhZ2UgKi8KI2RlZmluZSBMT0dfVk9JUF9UT19DRE1BX0FDSF9IQU5ET1ZFUl9NU0dfQyAgICAgICAgICAgICAoMHgzOEMgKyBMT0dfMVhfQkFTRV9DKQoKLyogVk9JUCBUbyBDRE1BIEZvcndhcmQgVHJhZmZpYyBDaGFubmVsIEhhbmRvdmVyIE1lc3NhZ2UgKi8KI2RlZmluZSBMT0dfVk9JUF9UT19DRE1BX0ZUQ19IQU5ET1ZFUl9NU0dfQyAgICAgICAgICAgICAoMHgzOEQgKyBMT0dfMVhfQkFTRV9DKQoKLyogUU1JIHJlc2VydmVkIGxvZ3MgKi8KI2RlZmluZSBMT0dfUU1JX1JFU0VSVkVEX0NPREVTX0JBU0VfQyAgICAgICAgICAgICAgICAgICAoMHgzOEUgKyBMT0dfMVhfQkFTRV9DKQojZGVmaW5lIExPR19RTUlfTEFTVF9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgzMiArIExPR19RTUlfUkVTRVJWRURfQ09ERVNfQkFTRV9DKQoKLyogUU9TIEluZm8gQ29kZSBVcGRhdGUgTG9nICovCiNkZWZpbmUgTE9HX1FPU19JTkZPX0NPREVfVVBEQVRFX0MgICAgICAgICAgICAgICAgICAgICAgKDB4M0FGICsgTE9HXzFYX0JBU0VfQykKCi8qIFRyYW5zbWl0KFVwbGluaykgVm9jb2RlciBQQ00gUGFja2V0IExvZyAqLwojZGVmaW5lIExPR19UWF9QQ01fUEFDS0VUX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDNCMCArIExPR18xWF9CQVNFX0MpCgovKiBBdWRpbyBWb2NvZGVyIERhdGEgUGF0aHMgKi8KI2RlZmluZSBMT0dfQVVEVk9DX0RBVEFfUEFUSFNfUEFDS0VUX0MgICAgICAgICAgICAgICAgICAoMHgzQjAgKyBMT0dfMVhfQkFTRV9DKQoKLyogUmVjZWl2ZShEb3dubGluaykgVm9jb2RlciBQQ00gUGFja2V0IExvZyAqLwojZGVmaW5lIExPR19SWF9QQ01fUEFDS0VUX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDNCMSArIExPR18xWF9CQVNFX0MpCgovKiBDUkMgb2YgWVVWIGZyYW1lIGxvZyAqLwojZGVmaW5lIExPR19ERUNfQ1JDX0ZSQU1FX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDNCMiArIExPR18xWF9CQVNFX0MpCgovKiBGTFVURSBTZXNzaW9uIEluZm9ybWF0aW9uICovCiNkZWZpbmUgTE9HX0ZMVVRFX1NFU1NJT05fSU5GT19DICAgICAgICAgICAgICAgICAgICAgICAgKDB4M0IzICsgTE9HXzFYX0JBU0VfQykKCi8qIEZMVVRFIEFEUCBGaWxlIEluZm9ybWF0aW9uICovCiNkZWZpbmUgTE9HX0ZMVVRFX0FEUF9GSUxFX0lORk9fQyAgICAgICAgICAgICAgICAgICAgICAgKDB4M0I0ICsgTE9HXzFYX0JBU0VfQykKCi8qIEZMVVRFIEZpbGUgUmVxdWVzdCBJbmZvcm1hdGlvbiAqLwojZGVmaW5lIExPR19GTFVURV9GSUxFX1JFUV9JTkZPX0MgICAgICAgICAgICAgICAgICAgICAgICgweDNCNSArIExPR18xWF9CQVNFX0MpCgovKiBGTFVURSBGRFQgSW5zdGFuY2UgSW5mb3JtYXRpb24gKi8KI2RlZmluZSBMT0dfRkxVVEVfRkRUX0lOU1RfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgzQjYgKyBMT0dfMVhfQkFTRV9DKQoKLyogRkxVVEUgRkRUIEluZm9ybWF0aW9uICovCiNkZWZpbmUgTE9HX0ZMVVRFX0ZEVF9JTkZPX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4M0I3ICsgTE9HXzFYX0JBU0VfQykKCi8qIEZMVVRFIEZpbGUgTG9nIFBhY2tldCBJbmZvcm1hdGlvbiAqLwojZGVmaW5lIExPR19GTFVURV9GSUxFX0lORk9fQyAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDNCOCArIExPR18xWF9CQVNFX0MpCgovKiAzRyAxWCBQYXJhbWV0ZXIgT3ZlcmhlYWQgSW5mb3JtYXRpb24gKi8KI2RlZmluZSBMT0dfVk9JUF9UT19DRE1BXzNHMVhfUEFSQU1FVEVSU19DICAgICAgICAgICAgICAoMHgzQjkgKyBMT0dfMVhfQkFTRV9DKQoKLyogQ0dQUyBNRSBKb2IgSW5mbyAqLwojZGVmaW5lIExPR19DR1BTX01FX0pPQl9JTkZPX0MgICAgICAgICAgICAgICAgICAgICAgICAgICgweDNCQSArIExPR18xWF9CQVNFX0MpCgovKiBDR1BTIE1FIFNWIExpc3RzICovCiNkZWZpbmUgTE9HX0NQR1NfTUVfU1ZfTElTVFNfQyAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4M0JCICsgTE9HXzFYX0JBU0VfQykKCi8qIEZsZXhpYmxlIFByb2ZpbGluZyBTdGF0dXMgKi8KI2RlZmluZSBMT0dfUFJPRkRJQUdfR0VOX1NUQVRVU19DICAgICAgICAgICAgICAgICAgICAgICAoMHgzQkMgKyBMT0dfMVhfQkFTRV9DKQoKLyogRmxleGlibGUgUHJvZmlsaW5nIFJlc3VsdHMgKi8KI2RlZmluZSBMT0dfUFJPRkRJQUdfR0VOX1BST0ZfQyAgICAgICAgICAgICAgICAgICAgICAgICAoMHgzQkQgKyBMT0dfMVhfQkFTRV9DKQoKLyogRkxVVEUgQURQIEZpbGUgQ29udGVudCBMb2cgUGFja2V0IEluZm9ybWF0aW9uICovCiNkZWZpbmUgTE9HX0ZMVVRFX0FEUF9GSUxFX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4M0JFICsgTE9HXzFYX0JBU0VfQykKCi8qIEZMVVRFIEZEVCBJbnN0YW5jZSBGaWxlIENvbnRlbnQgTG9nIFBhY2tldCBJbmZvcm1hdGlvbiAqLwojZGVmaW5lIExPR19GTFVURV9GRFRfSU5TVF9GSUxFX0MgICAgICAgICAgICAgICAgICAgICAgICgweDNCRiArIExPR18xWF9CQVNFX0MpCgovKiBGTFVURSBGRFQgRW50cmllcyBJbmZvcm1hdGlvbiAqLwojZGVmaW5lIExPR19GTFVURV9GRFRfRU5UUklFU19JTkZPX0MgICAgICAgICAgICAgICAgICAgICgweDNDMCArIExPR18xWF9CQVNFX0MpCgovKiBGTFVURSBGaWxlIENvbnRlbnRzIExvZyBQYWNrZXQgSW5mb3JtYXRpb24gKi8KI2RlZmluZSBMT0dfRkxVVEVfRklMRV9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgzQzEgKyBMT0dfMVhfQkFTRV9DKQoKLyogQ0dQUyBNRSBUaW1lLVRyYW5zZmVyIEluZm8gKi8KI2RlZmluZSBMT0dfQ0dQU19NRV9USU1FX1RSQU5TRkVSX0lORk9fQyAgICAgICAgICAgICAgICAoMHgzQzIgKyBMT0dfMVhfQkFTRV9DKQoKLyogQ0dQUyBNRSBVTVRTIFRpbWUtVGFnZ2luZyBJbmZvICovCiNkZWZpbmUgTE9HX0NHUFNfTUVfVU1UU19USU1FX1RBR0dJTkdfSU5GT19DICAgICAgICAgICAgKDB4M0MzICsgTE9HXzFYX0JBU0VfQykKCi8qIENHUFMgTUUgR2VuZXJpYyBUaW1lIEVzdGltYXRlIFB1dCBsbmZvICovCiNkZWZpbmUgTE9HX0NHUFNfTUVfVElNRV9FU1RfUFVUX0lORk9fQyAgICAgICAgICAgICAgICAgKDB4M0M0ICsgTE9HXzFYX0JBU0VfQykKCi8qIENHUFMgTUUgR2VuZXJpYyBGcmVxIEVzdGltYXRlIFB1dCBsbmZvICovCiNkZWZpbmUgTE9HX0NHUFNfTUVfRlJFUV9FU1RfUFVUX0lORk9fQyAgICAgICAgICAgICAgICAgKDB4M0M1ICsgTE9HXzFYX0JBU0VfQykKCi8qIENHUFMgU2xvdyBDbG9jayBSZXBvcnQgKi8KI2RlZmluZSBMT0dfQ0dQU19TTE9XX0NMT0NLX1JFUE9SVF9DICAgICAgICAgICAgICAgICAgICAoMHgzQzYgKyBMT0dfMVhfQkFTRV9DKQoKLyogQ29udmVyZ2VkIEdQUyBNZWRpdW0gR3JpZCAqLwojZGVmaW5lIExPR19DT05WRVJHRURfR1BTX01FRElVTV9HUklEX0MgICAgICAgICAgICAgICAgICgweDNDNyArIExPR18xWF9CQVNFX0MpCgovKiBTdGF0aWMgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGRyaXZlciBvciBkZXZpY2UgKi8KI2RlZmluZSBMT0dfU05TRF9JTkZPX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgzQzggKyBMT0dfMVhfQkFTRV9DKQoKLyogRHluYW1pYyBzdGF0ZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgZGV2aWNlIG9yIGRyaXZlciAqLwojZGVmaW5lIExPR19TTlNEX1NUQVRFX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDNDOSArIExPR18xWF9CQVNFX0MpCgovKiBEYXRhIGZyb20gYSBkcml2ZXIgKi8KI2RlZmluZSBMT0dfU05TRF9EQVRBICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgzQ0EgKyBMT0dfMVhfQkFTRV9DKQojZGVmaW5lIExPR19TTlNEX0RBVEFfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDNDQSArIExPR18xWF9CQVNFX0MpCgovKiBDR1BTIENlbGwgREIgQ2VsbCBDaGFuZ2UgSW5mbyAqLwojZGVmaW5lIExPR19DR1BTX0NFTExEQl9DRUxMX0NIQU5HRV9JTkZPX0MgICAgICAgICAgICAgICgweDNDQiArIExPR18xWF9CQVNFX0MpCgovKiB4U2NhbGFyIFlVViBmcmFtZSBsb2cgKi8KI2RlZmluZSBMT0dfREVDX1hTQ0FMRV9ZVVZfRlJBTUVfQyAgICAgICAgICAgICAgICAgICAgICAoMHgzQ0MgKyBMT0dfMVhfQkFTRV9DKQoKLyogQ1JDIG9mIHhTY2FsZWQgWVVWIGZyYW1lIGxvZyAqLwojZGVmaW5lIExPR19ERUNfWFNDQUxFX0NSQ19GUkFNRV9DICAgICAgICAgICAgICAgICAgICAgICgweDNDRCArIExPR18xWF9CQVNFX0MpCgovKiBDR1BTIEZyZXF1ZW5jeSBFc3RpbWF0ZSBSZXBvcnQgKi8KI2RlZmluZSBMT0dfQ0dQU19GUkVRX0VTVF9SRVBPUlRfQyAgICAgICAgICAgICAgICAgICAgICAoMHgzQ0UgKyBMT0dfMVhfQkFTRV9DKQoKLyogR1BTIERDTUUgU3JjaCBKb2IgQ29tcGxldGVkICovCiNkZWZpbmUgTE9HX0dQU19EQ01FX1NSQ0hfSk9CX0NPTVBMRVRFRF9DICAgICAgICAgICAgICAgKDB4M0NGICsgTE9HXzFYX0JBU0VfQykKCi8qIENHUFMgTUUgRmFzdHNjYW4gcmVzdWx0cyAgKi8KI2RlZmluZSBMT0dfQ0dQU19NRV9GQVNUU0NBTl9SRVNVTFRTX0MgICAgICAgICAgICAgICAgICAoMHgzRDAgKyBMT0dfMVhfQkFTRV9DKQoKLyogWE8gZnJlcXVlbmN5IEVzdGltYXRpb24gbG9nICovCiNkZWZpbmUgTE9HX1hPX0ZSRVFfRVNUX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4M0QxICsgTE9HXzFYX0JBU0VfQykKCi8qIFRjeG9tZ3IgZmllbGQgY2FsaWJyYXRpb24gZGF0YSAgKi8KI2RlZmluZSBMT0dfVENYT01HUl9GSUVMRF9DQUxfQyAgICAgICAgICAgICAgICAgICAgICAgICAoMHgzRDIgKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIENhbGwgUHJvY2Vzc2luZyBDb25uZWN0aW9uIEF0dGVtcHQgKi8KI2RlZmluZSBMT0dfVU1CQ1BfQ09OTkVDVElPTl9BVFRFTVBUX0MgICAgICAgICAgICAgICAgICAoMHgzRDMgKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIENhbGwgUHJvY2Vzc2luZyBDb25uZWN0aW9uIFJlbGVhc2UgKi8KI2RlZmluZSBMT0dfVU1CQ1BfQ09OTkVDVElPTl9SRUxFQVNFX0MgICAgICAgICAgICAgICAgICAoMHgzRDQgKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIENhbGwgUHJvY2Vzc2luZyBQYWdlIE1lc3NhZ2UgKi8KI2RlZmluZSBMT0dfVU1CQ1BfUEFHRV9NRVNTQUdFX0MgICAgICAgICAgICAgICAgICAgICAgICAoMHgzRDUgKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIENhbGwgUHJvY2Vzc2luZyBPVkhEIEluZm9ybWF0aW9uICovCiNkZWZpbmUgTE9HX1VNQkNQX09WSERfSU5GT19DICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4M0Q2ICsgTE9HXzFYX0JBU0VfQykKCi8qIFVNQiBDYWxsIFByb2Nlc3NpbmcgU2Vzc2lvbiBBdHRlbXB0ICovCiNkZWZpbmUgTE9HX1VNQkNQX1NFU1NJT05fQVRURU1QVF9DICAgICAgICAgICAgICAgICAgICAgKDB4M0Q3ICsgTE9HXzFYX0JBU0VfQykKCi8qIFVNQiBDYWxsIFByb2Nlc3NpbmcgUm91dGUgSW5mb3JtYXRpb24gKi8KI2RlZmluZSBMT0dfVU1CQ1BfUk9VVEVfSU5GT19DICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgzRDggKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIENhbGwgUHJvY2Vzc2luZyBTdGF0ZSBJbmZvcm1hdGlvbiAqLwojZGVmaW5lIExPR19VTUJDUF9TVEFURV9JTkZPX0MgICAgICAgICAgICAgICAgICAgICAgICAgICgweDNEOSArIExPR18xWF9CQVNFX0MpCgovKiBVTUIgQ2FsbCBQcm9jZXNzaW5nIFNOUCAqLwojZGVmaW5lIExPR19VTUJDUF9TTlBfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDNEQSArIExPR18xWF9CQVNFX0MpCgovKiBDR1BTIFNlc3Npb24gRWFybHkgRXhpdCBEZWNpc2lvbiAqLwojZGVmaW5lIExPR19DR1BTX1NFU1NJT05fRUFSTFlfRVhJVF9ERUNJU0lPTl9DICAgICAgICAgICgweDNEQiArIExPR18xWF9CQVNFX0MpCgovKiBHUFMgUkYgTGluZWFyaXR5IFN0YXR1cyAqLwojZGVmaW5lIExPR19DR1BTX01FX1JGX0xJTkVBUklUWV9JTkZPX0MgICAgICAgICAgICAgICAgICgweDNEQyArIExPR18xWF9CQVNFX0MpCgovKiBDR1BTIE1FIDVtcyBJUSBTdW1zICovCiNkZWZpbmUgTE9HX0NHUFNfTUVfNU1TX0lRX1NVTVNfQyAgICAgICAgICAgICAgICAgICAgICAgKDB4M0REICsgTE9HXzFYX0JBU0VfQykKCi8qIENHUFMgTUUgMjBtcyBJUSBTdW1zICovCiNkZWZpbmUgTE9HX0NQR1NfTUVfMjBNU19JUV9TVU1TX0MgICAgICAgICAgICAgICAgICAgICAgKDB4M0RFICsgTE9HXzFYX0JBU0VfQykKCi8qIFJPSEMgQ29tcHJlc3NvciBTdGF0aXN0aWNzICovCiNkZWZpbmUgTE9HX1JPSENfQ09NUFJFU1NPUl9TVEFUU19DICAgICAgICAgICAgICAgICAgICAgKDB4M0RGICsgTE9HXzFYX0JBU0VfQykKCi8qIFJPSEMgRGVjb21wcmVzc29yIFN0YXRpc3RpY3MgKi8KI2RlZmluZSBMT0dfUk9IQ19ERUNPTVBSRVNTT1JfU1RBVFNfQyAgICAgICAgICAgICAgICAgICAoMHgzRTAgKyBMT0dfMVhfQkFTRV9DKQoKLyogU2Vuc29ycyAtIEthbG1hbiBmaWx0ZXIgaW5mb3JtYXRpb24gKi8KI2RlZmluZSBMT0dfU0VOU09SX0tGX0lORk9fQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgzRTEgKyBMT0dfMVhfQkFTRV9DKQoKLyogU2Vuc29ycyAtIEludGVncmF0ZWQgbWVhc3VyZW1lbnRzICovCiNkZWZpbmUgTE9HX1NFTlNPUl9JTlRfTUVBU19DICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4M0UyICsgTE9HXzFYX0JBU0VfQykKCi8qIFNlbnNvcnMgLSBCaWFzIGNhbGlicmF0aW9uIHZhbHVlcyAqLwojZGVmaW5lIExPR19TRU5TT1JfQklBU19DQUxJQlJBVElPTl9DICAgICAgICAgICAgICAgICAgICgweDNFMyArIExPR18xWF9CQVNFX0MpCgovKiBMb2cgY29kZXMgMHgxM0U0LTB4MTNFNyBhcmUgbm90IGZvbGxvd2luZyBzdGFuZGFyZCBsb2cgbmFtaW5nIGNvbnZlbnRpb24gKi8KCi8qIERUViBJU0RCLVQgVHJhbnNwb3J0IFN0cmVhbSBQYWNrZXRzICovCiNkZWZpbmUgTE9HX0RUVl9JU0RCX1RTX1BBQ0tFVFMgICAgICAgICAgICAgICAgICAgICAgICAgKDB4M0U0ICsgTE9HXzFYX0JBU0VfQykKCi8qIERUViBJU0RCLVQgUEVTIFBhY2tldHMgKi8KI2RlZmluZSBMT0dfRFRWX0lTREJfUEVTX1BBQ0tFVFMgICAgICAgICAgICAgICAgICAgICAgICAoMHgzRTUgKyBMT0dfMVhfQkFTRV9DKQoKLyogRFRWIElTREItVCBTZWN0aW9ucyAqLwojZGVmaW5lIExPR19EVFZfSVNEQl9TRUNUSU9OUyAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDNFNiArIExPR18xWF9CQVNFX0MpCgovKiBEVFYgSVNEQi1UIEJ1ZmZlcmluZyAqLwojZGVmaW5lIExPR19EVFZfSVNEQl9CVUZGRVJJTkcgICAgICAgICAgICAgICAgICAgICAgICAgICgweDNFNyArIExPR18xWF9CQVNFX0MpCgovKiBXTEFOIFN5c3RlbSBBY3F1aXNpdGlvbiBhbmQgSGFuZG9mZiAqLwojZGVmaW5lIExPR19XTEFOX1NZU19BQ1FfSE9fQyAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDNFOCArIExPR18xWF9CQVNFX0MpCgovKiBXTEFOIEdlbmVyYWwgQ29uZmlndXJhYmxlIFBhcmFtZXRlcnMgKi8KI2RlZmluZSBMT0dfV0xBTl9HRU5fQ09ORklHX1BBUkFNU19DICAgICAgICAgICAgICAgICAgICAoMHgzRTkgKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIFBoeXNpY2FsIExheWVyIENoYW5uZWwgYW5kIEludGVyZmVyZW5jZSBFc3RpbWF0aW9uICovCiNkZWZpbmUgTE9HX1VNQl9QSFlfUlhfRFBJQ0hfQ0lFX0MgICAgICAgICAgICAgICAgICAgICAgKDB4M0VBICsgTE9HXzFYX0JBU0VfQykKCi8qIFVNQiBQaHlzaWNhbCBMYXllciBNTVNFL01SQyBEZW1vZHVsYXRlZCBEYXRhIFN5bWJvbHMgKExvdykgKi8KI2RlZmluZSBMT0dfVU1CX1BIWV9SWF9EQVRBX0RFTU9EX0xPV19DICAgICAgICAgICAgICAgICAoMHgzRUIgKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIFBoeXNpY2FsIExheWVyIE1NU0UvTVJDIERlbW9kdWxhdGVkIERhdGEgU3ltYm9scyAoSGlnaCkgKi8KI2RlZmluZSBMT0dfVU1CX1BIWV9SWF9EQVRBX0RFTU9EX0hJR0hfQyAgICAgICAgICAgICAgICAoMHgzRUMgKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIFBoeXNpY2FsIExheWVyIERDSCBEZWNvZGVyICovCiNkZWZpbmUgTE9HX1VNQl9QSFlfUlhfRENIX0RFQ09ERVJfQyAgICAgICAgICAgICAgICAgICAgKDB4M0VEICsgTE9HXzFYX0JBU0VfQykKCi8qIFVNQiBQaHlzaWNhbCBMYXllciBEQ0ggU3RhdGlzdGljcyAqLwojZGVmaW5lIExPR19VTUJfUEhZX0RDSF9TVEFUSVNUSUNTX0MgICAgICAgICAgICAgICAgICAgICgweDNFRSArIExPR18xWF9CQVNFX0MpCgovKiBVTUIgUGh5c2ljYWwgTGF5ZXIgQ3FpUGljaCBQcm9jZXNzaW5nICovCiNkZWZpbmUgTE9HX1VNQl9QSFlfUlhfQ1FJUElDSF9DICAgICAgICAgICAgICAgICAgICAgICAgKDB4M0VGICsgTE9HXzFYX0JBU0VfQykKCi8qIFVNQiBQaHlzaWNhbCBMYXllciBNSU1PL1NJTU8gaW4gQ3FpUGljaCAoSGlnaCkgKi8KI2RlZmluZSBMT0dfVU1CX1BIWV9SWF9DUUlQSUNIX0NIQU5UQVBTX0hJR0hfQyAgICAgICAgICAoMHgzRjAgKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIFBoeXNpY2FsIExheWVyIE1JTU8vU0lNTyBpbiBDcXVpUGljaCAoTG93KSAqLwojZGVmaW5lIExPR19VTUJfUEhZX1JYX0NRSVBJQ0hfQ0hBTlRBUFNfTE9XX0MgICAgICAgICAgICgweDNGMSArIExPR18xWF9CQVNFX0MpCgovKiBVTUIgUGh5c2ljYWwgTGF5ZXIgVGltZS1Eb21haW4gQ2hhbm5lbCBUYXBzIChIaWdoKSAqLwojZGVmaW5lIExPR19VTUJfUEhZX1JYX1BQSUNIX0NIQU5fRVNUX0hJR0hfQyAgICAgICAgICAgICgweDNGMiArIExPR18xWF9CQVNFX0MpCgovKiBVTUIgUGh5c2ljYWwgTGF5ZXIgVGltZS1Eb21haW4gQ2hhbm5lbCBUYXBzIChMb3cpICovCiNkZWZpbmUgTE9HX1VNQl9QSFlfUlhfUFBJQ0hfQ0hBTl9FU1RfTE9XX0MgICAgICAgICAgICAgKDB4M0YzICsgTE9HXzFYX0JBU0VfQykKCi8qIFVNQiBQaHlzaWNhbCBMYXllciBBVCBNb2R1bGF0b3IgKi8KI2RlZmluZSBMT0dfVU1CX1BIWV9UWF9QSUNIX0NPTkZJR19DICAgICAgICAgICAgICAgICAgICAoMHgzRjQgKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIFBoeXNpY2FsIExheWVyIEFUIE1vZHVsYXRvciBmb3IgUi1BQ0sgKEhpZ2gpICovCiNkZWZpbmUgTE9HX1VNQl9QSFlfVFhfQUNLX0hJR0hfQyAgICAgICAgICAgICAgICAgICAgICAgKDB4M0Y1ICsgTE9HXzFYX0JBU0VfQykKCi8qIFVNQiBQaHlzaWNhbCBMYXllciBBVCBNb2R1bGF0b3IgZm9yIFItQUNLIChMb3cpICovCiNkZWZpbmUgTE9HX1VNQl9QSFlfVFhfQUNLX0xPV19DICAgICAgICAgICAgICAgICAgICAgICAgKDB4M0Y2ICsgTE9HXzFYX0JBU0VfQykKCi8qIFVNQiBQaHlzaWNhbCBMYXllciBBVCBNb2R1bGF0b3IgZm9yIFItUElDSCAqLwojZGVmaW5lIExPR19VTUJfUEhZX1RYX1BJQ0hfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDNGNyArIExPR18xWF9CQVNFX0MpCgovKiBVTUIgUGh5c2ljYWwgTGF5ZXIgQVQgTW9kdWxhdG9yIGZvciBSLUFDSCAoQWNjZXNzKSAqLwojZGVmaW5lIExPR19VTUJfUEhZX1RYX0FDSF9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDNGOCArIExPR18xWF9CQVNFX0MpCgovKiBVTUIgUGh5c2ljYWwgTGF5ZXIgQVQgTW9kdWxhdG9yIGZvciBSLU9ERENDSCAoSGlnaCkgKi8KI2RlZmluZSBMT0dfVU1CX1BIWV9UWF9PRENDSF9ISUdIX0MgICAgICAgICAgICAgICAgICAgICAoMHgzRjkgKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIFBoeXNpY2FsIExheWVyIEFUIE1vZHVsYXRvciBmb3IgUi1PRERDQ0ggKExvdykgKi8KI2RlZmluZSBMT0dfVU1CX1BIWV9UWF9PRENDSF9MT1dfQyAgICAgICAgICAgICAgICAgICAgICAoMHgzRkEgKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIFBoeXNpY2FsIExheWVyIEFUIE1vZHVsYXRvciBmb3IgUi1DRENDSCAqLwojZGVmaW5lIExPR19VTUJfUEhZX1RYX1JDRENDSF9DT05GSUdfQyAgICAgICAgICAgICAgICAgICgweDNGQiArIExPR18xWF9CQVNFX0MpCgovKiBVTUIgUGh5c2ljYWwgTGF5ZXIgQVQgTW9kdWxhdG9yIGZvciBDUUkgc2VudCBvbiBSQ0RDQ0ggKi8KI2RlZmluZSBMT0dfVU1CX1BIWV9UWF9OT05GTFNTX0NRSUNIX0MgICAgICAgICAgICAgICAgICAoMHgzRkMgKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIFBoeXNpY2FsIExheWVyIEFUIE1vZHVsYXRvciBmb3IgQ1FJIHNlbnQgb24gUkNEQ0NIICovCiNkZWZpbmUgTE9HX1VNQl9QSFlfVFhfRkxTU19DUUlDSF9DICAgICAgICAgICAgICAgICAgICAgKDB4M0ZEICsgTE9HXzFYX0JBU0VfQykKCi8qIFVNQiBQaHlzaWNhbCBMYXllciBBVCBNb2R1bGF0b3IgZm9yIFBBQ0ggc2VudCBvbiBSQ0RDQ0ggKi8KI2RlZmluZSBMT0dfVU1CX1BIWV9UWF9QQUhDSF9DICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgzRkUgKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIFBoeXNpY2FsIExheWVyIEFUIE1vZHVsYXRvciBmb3IgUkVRIHNlbnQgb24gUkNEQ0NIICovCiNkZWZpbmUgTE9HX1VNQl9QSFlfVFhfUkVRQ0hfQyAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4M0ZGICsgTE9HXzFYX0JBU0VfQykKCi8qIFVNQiBQaHlzaWNhbCBMYXllciBBVCBNb2R1bGF0b3IgZm9yIFBTRCBzZW50IG9uIFJDRENDSCAqLwojZGVmaW5lIExPR19VTUJfUEhZX1RYX1BTRENIX0MgICAgICAgICAgICAgICAgICAgICAgICAgICgweDQwMCArIExPR18xWF9CQVNFX0MpCgovKiBVTUIgUGh5c2ljYWwgTGF5ZXIgQVQgTW9kdWxhdG9yIGZvciBSLURDSCAqLwojZGVmaW5lIExPR19VTUJfUEhZX1RYX0RDSF9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDQwMSArIExPR18xWF9CQVNFX0MpCgovKiBVTUIgUGh5c2ljYWwgTGF5ZXIgVGltZS9GcmVxdWVuY3kvUnhQb3dlciBFc3RpbWF0ZSAqLwojZGVmaW5lIExPR19VTUJfUEhZX1JYX1RJTUVfRlJFUV9QT1dFUl9FU1RJTUFURV9DICAgICAgICgweDQwMiArIExPR18xWF9CQVNFX0MpCgovKiBVTUIgUGh5c2ljYWwgTGF5ZXIgRkxDUyBQcm9jZXNzaW5nICovCiNkZWZpbmUgTE9HX1VNQl9QSFlfUlhfRkxDU19QUk9DRVNTSU5HX0MgICAgICAgICAgICAgICAgKDB4NDAzICsgTE9HXzFYX0JBU0VfQykKCi8qIFVNQiBQaHlzaWNhbCBMYXllciBQQkNDSCBQcm9jZXNzaW5nICovCiNkZWZpbmUgTE9HX1VNQl9QSFlfUlhfUEJDQ0hfUFJPQ0VTU0lOR19DICAgICAgICAgICAgICAgKDB4NDA0ICsgTE9HXzFYX0JBU0VfQykKCi8qIFVNQiBQaHlzaWNhbCBMYXllciBTQkNDSCBQcm9jZXNzaW5nICovCiNkZWZpbmUgTE9HX1VNQl9QSFlfUlhfU0JDQ0hfUFJPQ0VTU0lOR19DICAgICAgICAgICAgICAgKDB4NDA1ICsgTE9HXzFYX0JBU0VfQykKCi8qIFVNQiBQaHlzaWNhbCBMYXllciBRUENIIFByb2Nlc3NpbmcgKi8KI2RlZmluZSBMT0dfVU1CX1BIWV9SWF9RUENIX1BST0NFU1NJTkdfQyAgICAgICAgICAgICAgICAoMHg0MDYgKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIFBoeXNpY2FsIExheWVyIE1SQyBEZW1vZHVsYXRlZCBEYXRhIFN5bWJvbHMgKFByZWFtYmxlIFNCQ0NIL1FQQ0gpICovCiNkZWZpbmUgTE9HX1VNQl9QSFlfUlhfU0JDQ0hfREVNT0RfQyAgICAgICAgICAgICAgICAgICAgKDB4NDA3ICsgTE9HXzFYX0JBU0VfQykKCi8qIFVNQiBQaHlzaWNhbCBMYXllciBNUkMgRGVtb2R1bGF0ZWQgRGF0YSBTeW1ib2xzIChQcmVhbWJsZSBQQkNDSCkgKi8KI2RlZmluZSBMT0dfVU1CX1BIWV9SWF9QQkNDSF9ERU1PRF9DICAgICAgICAgICAgICAgICAgICAoMHg0MDggKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIFBoeXNpY2FsIExheWVyIFZDUUkgKi8KI2RlZmluZSBMT0dfVU1CX1BIWV9SWF9WQ1FJX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0MDkgKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIFBoeXNpY2FsIExheWVyIEFjcXVpc2l0aW9uIEFsZ29yaXRobSAqLwojZGVmaW5lIExPR19VTUJfUEhZX1JYX0lOSVRJQUxfQUNRVUlTSVRJT05fQyAgICAgICAgICAgICgweDQwQSArIExPR18xWF9CQVNFX0MpCgovKiBVTUIgUGh5c2ljYWwgTGF5ZXIgSGFuZG9mZiBTZWFyY2ggQWxnb3JpdGhtICovCiNkZWZpbmUgTE9HX1VNQl9QSFlfUlhfSEFORE9GRl9TRUFSQ0hfQyAgICAgICAgICAgICAgICAgKDB4NDBCICsgTE9HXzFYX0JBU0VfQykKCi8qIFVNQiBSRiBSRkZFIENvbmZpZ3VyYXRpb24gSW5mbyAqLwojZGVmaW5lIExPR19VTUJfQVRfUkZGRV9DT05GR19DICAgICAgICAgICAgICAgICAgICAgICAgICgweDQwQyArIExPR18xWF9CQVNFX0MpCgovKiBVTUIgUkYgQ2FsaWJyYXRlZCBWYWx1ZXMgQWZ0ZXIgUG93ZXJ1cCAqLwojZGVmaW5lIExPR19VTUJfQVRfUkZGRV9SWF9DQUxJQl9DICAgICAgICAgICAgICAgICAgICAgICgweDQwRCArIExPR18xWF9CQVNFX0MpCgovKiBVTUIgUkYgQUdDIEJsb2NrIGluIEFjcXVpc2l0aW9uIE1vZGUgKi8KI2RlZmluZSBMT0dfVU1CX0FUX1JGRkVfUlhfQUNRX0MgICAgICAgICAgICAgICAgICAgICAgICAoMHg0MEUgKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIFJGIEFHQyBCbG9jayBpbiBJZGxlIE1vZGUgKi8KI2RlZmluZSBMT0dfVU1CX0FUX1JGRkVfUlhfSURMRV9DICAgICAgICAgICAgICAgICAgICAgICAoMHg0MEYgKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIFJGIEFHQyBCbG9jayBpbiBDb25uZWN0ZWQgTW9kZSAqLwojZGVmaW5lIExPR19VTUJfQVRfUkZGRV9SWF9DT05ORUNURURfQyAgICAgICAgICAgICAgICAgICgweDQxMCArIExPR18xWF9CQVNFX0MpCgovKiBVTUIgUkYgQUdDIEJsb2NrIGluIENvbm5lY3RlZCBNb2RlIChGVE0pICovCiNkZWZpbmUgTE9HX1VNQl9BVF9SRkZFX1JYX0NPTk5FQ1RFRF9GVE1fQyAgICAgICAgICAgICAgKDB4NDExICsgTE9HXzFYX0JBU0VfQykKCi8qIFVNQiBSRiBKYW1tZXIgRGV0ZWN0b3IgRnVuY3Rpb25hbGl0eSAqLwojZGVmaW5lIExPR19VTUJfQVRfUkZGRV9SWF9KQU1NRVJfREVURUNUT1JfRlVOQ1RJT05BTElUWV9DICAoMHg0MTIgKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIFJGIEphbW1lciBEZXRlY3RvciBSZXNwb25zZSAqLwojZGVmaW5lIExPR19VTUJfQVRfUkZGRV9SWF9KQU1NRVJfREVURUNUT1JfUkVTUE9OU0VfQyAgICgweDQxMyArIExPR18xWF9CQVNFX0MpCgovKiBVTUIgUkYgUkZGRSBUWCBQb3dlciBDb250cm9sICovCiNkZWZpbmUgTE9HX1VNQl9BVF9SRkZFX1RYX0JFVEFfU0NBTElOR19DICAgICAgICAgICAgICAgKDB4NDE0ICsgTE9HXzFYX0JBU0VfQykKCi8qIFVNQiBTZWFyY2hlciBEdW1wICovCiNkZWZpbmUgTE9HX1VNQl9TRUFSQ0hFUl9EVU1QX0MgICAgICAgICAgICAgICAgICAgICAgICAgKDB4NDE1ICsgTE9HXzFYX0JBU0VfQykKCi8qIFVNQiBTeXN0ZW0gQWNxdWlyZSAqLwojZGVmaW5lIExPR19VTUJfU1lTVEVNX0FDUVVJUkVfQyAgICAgICAgICAgICAgICAgICAgICAgICgweDQxNiArIExPR18xWF9CQVNFX0MpCgovKiBVTUIgU2V0IE1haW50ZW5hbmNlICovCiNkZWZpbmUgTE9HX1VNQl9TRVRfTUFJTlRFTkFOQ0VfQyAgICAgICAgICAgICAgICAgICAgICAgKDB4NDE3ICsgTE9HXzFYX0JBU0VfQykKCi8qIFVNQiBRUENIICovCiNkZWZpbmUgTE9HX1VNQl9RUENIX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4NDE4ICsgTE9HXzFYX0JBU0VfQykKCi8qIFVNQiBSTEwgRm9yd2FyZCBQYXJ0aWFsIFJQIFBhY2tldCAqLwojZGVmaW5lIExPR19VTUJfUkxMX0ZPUldBUkRfUEFSVElBTF9SUF9DICAgICAgICAgICAgICAgICgweDQxOSArIExPR18xWF9CQVNFX0MpCgovKiBVTUIgUkxMIFJldmVyc2UgUGFydGlhbCBSUCBQYWNrZXQgKi8KI2RlZmluZSBMT0dfVU1CX1JMTF9SRVZFUlNFX1BBUlRJQUxfUlBfQyAgICAgICAgICAgICAgICAoMHg0MUEgKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIFJMTCBGb3J3YXJkIFNpZ25hbCBQYWNrZXQgKi8KI2RlZmluZSBMT0dfVU1CX1JMTF9GT1JXQVJEX1NJR05BTF9DICAgICAgICAgICAgICAgICAgICAoMHg0MUIgKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIFJMTCBSZXZlcnNlIFNpZ25hbCBQYWNrZXQgKi8KI2RlZmluZSBMT0dfVU1CX1JMTF9SRVZFUlNFX1NJR05BTF9DICAgICAgICAgICAgICAgICAgICAoMHg0MUMgKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIFJMTCBGb3J3YXJkIFN0YXRpc3RpY3MgKi8KI2RlZmluZSBMT0dfVU1CX1JMTF9GT1JXQVJEX1NUQVRTX0MgICAgICAgICAgICAgICAgICAgICAoMHg0MUQgKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIFJMTCBSZXZlcnNlIFN0YXRpc3RpY3MgKi8KI2RlZmluZSBMT0dfVU1CX1JMTF9SRVZFUlNFX1NUQVRTX0MgICAgICAgICAgICAgICAgICAgICAoMHg0MUUgKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIFJMTCBJUlRQICovCiNkZWZpbmUgTE9HX1VNQl9STExfSVJUUF9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4NDFGICsgTE9HXzFYX0JBU0VfQykKCi8qIFVNQiBBUCBGb3J3YXJkIExpbmsgTUFDIFBhY2tldHMgKi8KI2RlZmluZSBMT0dfVU1CX0FQX0ZMX01BQ19QQUNLRVRfQyAgICAgICAgICAgICAgICAgICAgICAoMHg0MjAgKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIEFQIFJldmVyc2UgTGluayBNQUMgUGFja2V0cyAqLwojZGVmaW5lIExPR19VTUJfQVBfUkxfTUFDX1BBQ0tFVF9DICAgICAgICAgICAgICAgICAgICAgICgweDQyMSArIExPR18xWF9CQVNFX0MpCgovKiBHUFMgUGVyZm9ybWFuY2UgU3RhdGlzdGljcyBsb2cgKi8KI2RlZmluZSBMT0dfQ0dQU19QRVJGT1JNQU5DRV9TVEFUU19DICAgICAgICAgICAgICAgICAgICAoMHg0MjIgKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIFNlYXJjaGVyIEdlbmVyYWwgU3RhdHVzICovCiNkZWZpbmUgTE9HX1VNQl9TUkNIX0dFTkVSQUxfU1RBVFVTX0MgICAgICAgICAgICAgICAgICAgKDB4NDIzICsgTE9HXzFYX0JBU0VfQykKCi8qIFVNQiBTdXBlcmZyYW1lIFNjaGVkdWxlciAqLwojZGVmaW5lIExPR19VTUJfU1VQRVJGUkFNRV9TQ0hFRFVMRVJfQyAgICAgICAgICAgICAgICAgICgweDQyNCArIExPR18xWF9CQVNFX0MpCgovKiBVTUIgU2VjdG9yIExpc3QgKi8KI2RlZmluZSBMT0dfVU1CX1NFQ1RPUl9MSVNUX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0MjUgKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIE1BQyBBY2Nlc3MgQXR0ZW1wdCBDb21tYW5kICovCiNkZWZpbmUgTE9HX1VNQl9NQUNfQUNDRVNTX0FUVEVNUFRfQ01EX0MgICAgICAgICAgICAgICAgKDB4NDI2ICsgTE9HXzFYX0JBU0VfQykKCi8qIFVNQiBNQUMgQWNjZXNzIFByb2JlIEluZm9ybWF0aW9uICovCiNkZWZpbmUgTE9HX1VNQl9NQUNfQUNDRVNTX1BST0JFX0lORk9fQyAgICAgICAgICAgICAgICAgKDB4NDI3ICsgTE9HXzFYX0JBU0VfQykKCi8qIFVNQiBNQUMgUlRDTUFDIFBhY2thZ2UgSW5mb3JtYXRpb24gKi8KI2RlZmluZSBMT0dfVU1CX01BQ19SVENNQUNfUEtHX0lORk9fQyAgICAgICAgICAgICAgICAgICAoMHg0MjggKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIE1BQyBTdXBlciBGcmFtZSBJbmZvcm1hdGlvbiAqLwojZGVmaW5lIExPR19VTUJfTUFDX1NJX0lORk9fQyAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDQyOSArIExPR18xWF9CQVNFX0MpCgovKiBVTUIgTUFDIFF1aWNrIENoYW5uZWwgSW5mb3JtYXRpb24gKi8KI2RlZmluZSBMT0dfVU1CX01BQ19RQ0lfSU5GT19DICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0MkEgKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIE1BQyBQYWdpbmcgSWQgTGlzdCAqLwojZGVmaW5lIExPR19VTUJfTUFDX1BBR0lOR19JRF9MSVNUX0MgICAgICAgICAgICAgICAgICAgICgweDQyQiArIExPR18xWF9CQVNFX0MpCgovKiBVTUIgTUFDIFF1aWNrIFBhZ2luZyBDaGFubmVsIEluZm9ybWF0aW9uICovCiNkZWZpbmUgTE9HX1VNQl9NQUNfUVBDSF9JTkZPX0MgICAgICAgICAgICAgICAgICAgICAgICAgKDB4NDJDICsgTE9HXzFYX0JBU0VfQykKCi8qIFVNQiBNQUMgRlRDTUFDIEluZm9ybWF0aW9uICovCiNkZWZpbmUgTE9HX1VNQl9NQUNfRlRDTUFDX1BLR19JTkZPX0MgICAgICAgICAgICAgICAgICAgKDB4NDJEICsgTE9HXzFYX0JBU0VfQykKCi8qIFVNQiBNQUMgQWNjZXNzIEdyYW50IFJlY2VpdmluZyAqLwojZGVmaW5lIExPR19VTUJfTUFDX0FDQ0VTU19HUkFOVF9DICAgICAgICAgICAgICAgICAgICAgICgweDQyRSArIExPR18xWF9CQVNFX0MpCgovKiBVTUIgTUFDIEdlbmVyaWMgRGVidWcgTG9nICovCiNkZWZpbmUgTE9HX1VNQl9NQUNfR0VOX0RFQlVHX0xPR19QS0dfQyAgICAgICAgICAgICAgICAgKDB4NDJGICsgTE9HXzFYX0JBU0VfQykKCi8qIENHUFMgRnJlcXVlbmN5IEJpYXMgRXN0aW1hdGUgKi8KI2RlZmluZSBMT0dfQ0dQU19NQ19GUkVRX0JJQVNfRVNUX0MgICAgICAgICAgICAgICAgICAgICAoMHg0MzAgKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIE1BQyBSZXF1ZXN0IFJlcG9ydCBJbmZvcm1hdGlvbiBMb2cgKi8KI2RlZmluZSBMT0dfVU1CX01BQ19SRVFDSF9SRVBPUlRfSU5GT19DICAgICAgICAgICAgICAgICAoMHg0MzEgKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIE1BQyBSZXZlcnNlIExpbmsgUW9TIFRva2VuIEJ1Y2tldCBJbmZvcm1hdGlvbiBMb2cgKi8KI2RlZmluZSBMT0dfVU1CX01BQ19STFFPU19UT0tFTl9CVUNLRVRfSU5GT19DICAgICAgICAgICAoMHg0MzIgKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIE1BQyBSZXZlcnNlIExpbmsgUW9TIFN0cmVhbSBJbmZvcm1hdGlvbiBMb2cgKi8KI2RlZmluZSBMT0dfVU1CX01BQ19STFFPU19TVFJFQU1fSU5GT19DICAgICAgICAgICAgICAgICAoMHg0MzMgKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIE1BQyBSZXZlcnNlIExpbmsgUW9TIEFsbG90bWVudCBJbmZvcm1hdGlvbiBMb2cgKi8KI2RlZmluZSBMT0dfVU1CX01BQ19STFFPU19BTExPVE1FTlRfSU5GT19DICAgICAgICAgICAgICAoMHg0MzQgKyBMT0dfMVhfQkFTRV9DKQoKLyogVU1CIFNlYXJjaGVyIFJlY2VudCBTdGF0ZSBNYWNoaW5lIFRyYW5zYWN0aW9ucyAqLwojZGVmaW5lIExPR19VTUJfU1JDSF9TVE1fQUNUSVZJVFlfQyAgICAgICAgICAgICAgICAgICAgICgweDQzNSArIExPR18xWF9CQVNFX0MpCgovKiBQZXJmb3JtYW5jZSBDb3VudGVycyBvbiBBUk0xMSBQcm9maWxpbmcgSW5mb3JtYXRpb24gKi8KI2RlZmluZSBMT0dfQVJNMTFfUEVSRl9DTlRfSU5GT19DICAgICAgICAgICAgICAgICAgICAgICAoMHg0MzYgKyBMT0dfMVhfQkFTRV9DKQoKLyogUHJvdG9jb2wgU2VydmljZXMgZGVzY3JpYmUgYWxsIGZsb3cgaW5zdGFuY2VzICovCiNkZWZpbmUgTE9HX1BTX1NUQVRfREVTQ19BTExfRkxPV19JTlNUX0MgICAgICAgICAgICAgICAgKDB4NDM3ICsgTE9HXzFYX0JBU0VfQykKCi8qIFByb3RvY29sIFNlcnZpY2VzIGRlc2NyaWJlIGFsbCBwaHlzaWNhbCBsaW5rIGluc3RhbmNlcyAqLwojZGVmaW5lIExPR19QU19TVEFUX0RFU0NfQUxMX1BIWVNfTElOS19JTlNUX0MgICAgICAgICAgICgweDQzOCArIExPR18xWF9CQVNFX0MpCgovKiBQcm90b2NvbCBTZXJ2aWNlcyBkZXNjcmliZSBhbGwgVURQIGluc3RhbmNlcyAqLwojZGVmaW5lIExPR19QU19TVEFUX0RFU0NfQUxMX1VEUF9JTlNUX0MgICAgICAgICAgICAgICAgICgweDQzOSArIExPR18xWF9CQVNFX0MpCgovKiBTZWFyY2hlciA0IE11bHRpLUNhcnJpZXIgSERSICovCiNkZWZpbmUgTE9HX1NSQ0g0X01DX0hEUl9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4NDNBICsgTE9HXzFYX0JBU0VfQykKCi8qIFByb3RvY29sIFNlcnZpY2VzIGRlc2NyaWJlIGFsbCBJUEhDIGluc3RhbmNlcyAqLwojZGVmaW5lIExPR19QU19TVEFUX0RFU0NfQUxMX0lQSENfSU5TVF9DICAgICAgICAgICAgICAgICgweDQzQiArIExPR18xWF9CQVNFX0MpCgovKiBQcm90b2NvbCBTZXJ2aWNlcyBkZXNjcmliZSBhbGwgUk9IQyBpbnN0YW5jZXMgKi8KI2RlZmluZSBMT0dfUFNfU1RBVF9ERVNDX0FMTF9ST0hDX0lOU1RfQyAgICAgICAgICAgICAgICAoMHg0M0MgKyBMT0dfMVhfQkFTRV9DKQoKLyogQkNhc3Qgc2VjdXJpdHkgYWRkIHByb2dyYW0gaW5mb3JtYXRpb24gKi8KI2RlZmluZSBMT0dfQkNBU1RfU0VDX0FERF9QUk9HUkFNX0lORk9fQyAgICAgICAgICAgICAgICAoMHg0M0QgKyBMT0dfMVhfQkFTRV9DKQoKLyogQkNhc3Qgc2VjdXJpdHkgYWRkIHByb2dyYW0gY29tcGxldGUgKi8KI2RlZmluZSBMT0dfQkNBU1RfU0VDX0FERF9QUk9HUkFNX0NPTVBMRVRFX0MgICAgICAgICAgICAoMHg0M0UgKyBMT0dfMVhfQkFTRV9DKQoKLyogQkNhc3Qgc2VjdXJpdHkgU0RQIHBhcnNlICovCiNkZWZpbmUgTE9HX0JDQVNUX1NFQ19TRFBfUEFSU0VfQyAgICAgICAgICAgICAgICAgICAgICAgKDB4NDNGICsgTE9HXzFYX0JBU0VfQykKCi8qIENHUFMgTUUgZHluYW1pYyBwb3dlciBvcHRpbWl6YXRpb24gc3RhdHVzICovCiNkZWZpbmUgTE9HX0NHUFNfTUVfRFBPX1NUQVRVU19DICAgICAgICAgICAgICAgICAgICAgICAgKDB4NDQwICsgTE9HXzFYX0JBU0VfQykKCi8qIENHUFMgUERTTSBvbiBkZW1hbmQgc2Vzc2lvbiBzdGFydCAqLwojZGVmaW5lIExPR19DR1BTX1BEU01fT05fREVNQU5EX1NFU1NJT05fU1RBUlRfQyAgICAgICAgICgweDQ0MSArIExPR18xWF9CQVNFX0MpCgovKiBDR1BTIFBEU00gb24gZGVtYW5kIHNlc3Npb24gc3RvcCAqLwojZGVmaW5lIExPR19DR1BTX1BEU01fT05fREVNQU5EX1NFU1NJT05fU1RPUF9DICAgICAgICAgICgweDQ0MiArIExPR18xWF9CQVNFX0MpCgovKiBDR1BTIFBEU00gb24gZGVtYW5kIHNlc3Npb24gbm90IHN0YXJ0ZWQgKi8KI2RlZmluZSBMT0dfQ0dQU19QRFNNX09OX0RFTUFORF9TRVNTSU9OX05PVF9TVEFSVEVEX0MgICAoMHg0NDMgKyBMT0dfMVhfQkFTRV9DKQoKLyogQ0dQUyBQRFNNIGV4dGVybiBjb2Fyc2UgcG9zaXRpb24gaW5qZWN0IHN0YXJ0ICovCiNkZWZpbmUgTE9HX0NHUFNfUERTTV9FWFRFUk5fQ09BUlNFX1BPU19JTkpfU1RBUlRfQyAgICAgKDB4NDQ0ICsgTE9HXzFYX0JBU0VfQykKCi8qIERUViBJU0RCLVQgVE1DQyBpbmZvcm1hdGlvbiAqLwojZGVmaW5lIExPR19EVFZfSVNEQl9UTUNDX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDQ0NSArIExPR18xWF9CQVNFX0MpCgovKiBSRiBkZXZlbG9wbWVudCAqLwojZGVmaW5lIExPR19SRl9ERVZfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDQ0NiArIExPR18xWF9CQVNFX0MpCgovKiBSRiBSRk0gQVBJICovCiNkZWZpbmUgTE9HX1JGX1JGTV9BUElfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4NDQ3ICsgTE9HXzFYX0JBU0VfQykKCi8qIFJGIFJGTSBzdGF0ZSAqLwojZGVmaW5lIExPR19SRl9SRk1fU1RBVEVfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDQ0OCArIExPR18xWF9CQVNFX0MpCgovKiAxWCBSRiBXYXJtdXAgKi8KI2RlZmluZSBMT0dfMVhfUkZfV0FSTVVQX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0NDkgKyBMT0dfMVhfQkFTRV9DKQoKLyogMVggUkYgcG93ZXIgbGltaXRpbmcgKi8KI2RlZmluZSBMT0dfMVhfUkZfUFdSX0xNVF9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0NEEgKyBMT0dfMVhfQkFTRV9DKQoKLyogMVggUkYgc3RhdGUgKi8KI2RlZmluZSBMT0dfMVhfUkZfU1RBVEVfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0NEIgKyBMT0dfMVhfQkFTRV9DKQoKLyogMVggUkYgc2xlZXAgKi8KI2RlZmluZSBMT0dfMVhfUkZfU0xFRVBfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0NEMgKyBMT0dfMVhfQkFTRV9DKQoKLyogMVggUkYgVFggc3RhdGUgKi8KI2RlZmluZSBMT0dfMVhfUkZfVFhfU1RBVEVfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0NEQgKyBMT0dfMVhfQkFTRV9DKQoKLyogMVggUkYgSW50ZWxsaUNlaXZlciBzdGF0ZSAqLwojZGVmaW5lIExPR18xWF9SRl9JTlRfU1RBVEVfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDQ0RSArIExPR18xWF9CQVNFX0MpCgovKiAxWCBSRiBSWCBBREMgY2xvY2sgKi8KI2RlZmluZSBMT0dfMVhfUkZfUlhfQURDX0NMS19DICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0NEYgKyBMT0dfMVhfQkFTRV9DKQoKLyogMVggUkYgTE5BIHN3aXRjaCBwb2ludCAqLwojZGVmaW5lIExPR18xWF9SRl9MTkFfU1dJVENIUF9DICAgICAgICAgICAgICAgICAgICAgICAgICgweDQ1MCArIExPR18xWF9CQVNFX0MpCgovKiAxWCBSRiBSWCBjYWxpYnJhdGlvbiAqLwojZGVmaW5lIExPR18xWF9SRl9SWF9DQUxfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDQ1MSArIExPR18xWF9CQVNFX0MpCgovKiAxWCBSRiBBUEkgKi8KI2RlZmluZSBMT0dfMVhfUkZfQVBJX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0NTIgKyBMT0dfMVhfQkFTRV9DKQoKLyogMVggUkYgUlggUExMIGxvY2tpbmcgc3RhdHVzICovCiNkZWZpbmUgTE9HXzFYX1JGX1JYX1BMTF9MT0NLX0MgICAgICAgICAgICAgICAgICAgICAgICAgKDB4NDUzICsgTE9HXzFYX0JBU0VfQykKCi8qIDFYIFJGIHZvbHRhZ2UgcmVndWxhdG9yICovCiNkZWZpbmUgTE9HXzFYX1JGX1ZSRUdfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4NDU0ICsgTE9HXzFYX0JBU0VfQykKCi8qIENHUFMgRElBRyBzdWNjZXNzZnVsIGZpeCBjb3VudCAqLwojZGVmaW5lIExPR19DR1BTX0RJQUdfU1VDQ0VTU0ZVTF9GSVhfQ09VTlRfQyAgICAgICAgICAgICgweDQ1NSArIExPR18xWF9CQVNFX0MpCgovKiBDR1BTIE1DIHRyYWNrIGR5bmFtaWMgcG93ZXIgb3B0aW1pemF0aW9uIHN0YXR1cyAqLwojZGVmaW5lIExPR19DR1BTX01DX1RSQUNLX0RQT19TVEFUVVNfQyAgICAgICAgICAgICAgICAgICgweDQ1NiArIExPR18xWF9CQVNFX0MpCgovKiBDR1BTIE1DIFNCQVMgZGVtb2R1bGF0ZWQgYml0cyAqLwojZGVmaW5lIExPR19DR1BTX01DX1NCQVNfREVNT0RfQklUU19DICAgICAgICAgICAgICAgICAgICgweDQ1NyArIExPR18xWF9CQVNFX0MpCgovKiBDR1BTIE1DIFNCQVMgZGVtb2R1bGF0ZWQgc29mdCBzeW1ib2xzICovCiNkZWZpbmUgTE9HX0NHUFNfTUNfU0JBU19ERU1PRF9TT0ZUX1NZTUJPTFNfQyAgICAgICAgICAgKDB4NDU4ICsgTE9HXzFYX0JBU0VfQykKCi8qIERhdGEgU2VydmljZXMgUFBQIGNvbmZpZ3VyYXRpb24gKi8KI2RlZmluZSBMT0dfRFNfUFBQX0NPTkZJR19QQVJBTVNfQyAgICAgICAgICAgICAgICAgICAgICAoMHg0NTkgKyBMT0dfMVhfQkFTRV9DKQoKLyogRGF0YSBTZXJ2aWNlcyBwaHlzaWNhbCBsaW5rIGNvbmZpZ3VyYXRpb24gKi8KI2RlZmluZSBMT0dfRFNfUEhZU19MSU5LX0NPTkZJR19QQVJBTVNfQyAgICAgICAgICAgICAgICAoMHg0NUEgKyBMT0dfMVhfQkFTRV9DKQoKLyogRGF0YSBTZXJ2aWNlcyBQUFAgZGV2aWNlIGNvbmZpZ3VyYXRpb24gKi8KI2RlZmluZSBMT0dfUFNfUFBQX0RFVl9DT05GSUdfUEFSQU1TX0MgICAgICAgICAgICAgICAgICAoMHg0NUIgKyBMT0dfMVhfQkFTRV9DKQoKLyogQ0dQUyBQRFNNIEdQUyBzdGF0ZSBpbmZvcm1hdGlvbiAqLwojZGVmaW5lIExPR19DR1BTX1BEU01fR1BTX1NUQVRFX0lORk9fQyAgICAgICAgICAgICAgICAgICgweDQ1QyArIExPR18xWF9CQVNFX0MpCgovKiBDR1BTIFBEU00gRVhUIHN0YXR1cyBHUFMgc3RhdGUgaW5mb3JtYXRpb24gKi8KI2RlZmluZSBMT0dfQ0dQU19QRFNNX0VYVF9TVEFUVVNfR1BTX1NUQVRFX0lORk9fQyAgICAgICAoMHg0NUQgKyBMT0dfMVhfQkFTRV9DKQoKLyogQ0dQUyBNRSBSYXBpZCBTZWFyY2ggUmVwb3J0ICovCiNkZWZpbmUgTE9HX0NHUFNfTUVfUkFQSURfU0VBUkNIX1JFUE9SVF9DICAgICAgICAgICAgICAgKDB4NDVFICsgTE9HXzFYX0JBU0VfQykKCi8qIENHUFMgUERTTSBYVFJBLVQgc2Vzc2lvbiAqLwojZGVmaW5lIExPR19DR1BTX1BEU01fWFRSQV9UX1NFU1NJT05fQyAgICAgICAgICAgICAgICAgICgweDQ1RiArIExPR18xWF9CQVNFX0MpCgovKiBDR1BTIFBEU00gWFRSQS1UIHVwbG9hZCAqLwojZGVmaW5lIExPR19DR1BTX1BEU01fWFRSQV9UX1VQTE9BRF9DICAgICAgICAgICAgICAgICAgICgweDQ2MCArIExPR18xWF9CQVNFX0MpCgovKiBDR1BTIFdpcGVyIFBvc2l0aW9uIFJlcG9ydCAqLwojZGVmaW5lIExPR19DR1BTX1dJUEVSX1BPU0lUSU9OX1JFUE9SVF9DICAgICAgICAgICAgICAgICgweDQ2MSArIExPR18xWF9CQVNFX0MpCgovKiBEVFYgRFZCSCBTZWN1cml0eSBTbWFydENhcmQgSFRUUCBEaWdlc3QgUmVxdWVzdCBJbmZvICovCiNkZWZpbmUgTE9HX0RUVl9EVkJIX1NFQ19TQ19IVFRQX0RJR0VTVF9SRVFfQyAgICAgICAgICAgKDB4NDYyICsgTE9HXzFYX0JBU0VfQykKCi8qIERUViBEVkJIIFNlY3VyaXR5IFNtYXJ0Q2FyZCBIVFRQIERpZ2VzdCBSZXNwb25zZSBJbmZvICovCiNkZWZpbmUgTE9HX0RUVl9EVkJIX1NFQ19TQ19IVFRQX0RJR0VTVF9SU1BfQyAgICAgICAgICAgKDB4NDYzICsgTE9HXzFYX0JBU0VfQykKCi8qIERUViBEVkJIIFNlY3VyaXR5IFNtYXJ0Q2FyZCBTZXJ2aWNlcyBSZWdpc3RyYXRpb24gUmVxdWVzdCBJbmZvICovCiNkZWZpbmUgTE9HX0RUVl9EVkJIX1NFQ19TQ19TVkNfUkVHX1JFUV9DICAgICAgICAgICAgICAgKDB4NDY0ICsgTE9HXzFYX0JBU0VfQykKCi8qIERUViBEVkJIIFNlY3VyaXR5IFNtYXJ0Q2FyZCBTZXJ2aWNlcyBSZWdpc3RyYXRpb24gQ29tcGxldGUgSW5mbyAqLwojZGVmaW5lIExPR19EVFZfRFZCSF9TRUNfU0NfU1ZDX1JFR19DT01QTEVURV9DICAgICAgICAgICgweDQ2NSArIExPR18xWF9CQVNFX0MpCgovKiBEVFYgRFZCSCBTZWN1cml0eSBTbWFydENhcmQgU2VydmljZXMgRGVyZWdpc3RyYXRpb24gUmVxdWVzdCBJbmZvICovCiNkZWZpbmUgTE9HX0RUVl9EVkJIX1NFQ19TQ19TVkNfREVSRUdfUkVRX0MgICAgICAgICAgICAgKDB4NDY2ICsgTE9HXzFYX0JBU0VfQykKCi8qIERUViBEVkJIIFNlY3VyaXR5IFNtYXJ0Q2FyZCBTZXJ2aWNlcyBEZXJlZ2lzdHJhdGlvbiBDb21wbGV0ZSBJbmZvICovCiNkZWZpbmUgTE9HX0RUVl9EVkJIX1NFQ19TQ19TVkNfREVSRUdfQ09NUExFVEVfQyAgICAgICAgKDB4NDY3ICsgTE9HXzFYX0JBU0VfQykKCi8qIERUViBEVkJIIFNlY3VyaXR5IFNtYXJ0Q2FyZCBMVEtNIFJlcXVlc3QgSW5mbyAqLwojZGVmaW5lIExPR19EVFZfRFZCSF9TRUNfU0NfTFRLTV9SRVFfQyAgICAgICAgICAgICAgICAgICgweDQ2OCArIExPR18xWF9CQVNFX0MpCgovKiBEVFYgRFZCSCBTZWN1cml0eSBTbWFydENhcmQgTFRLTSBSZXF1ZXN0IENvbXBsZXRlIEluZm8gKi8KI2RlZmluZSBMT0dfRFRWX0RWQkhfU0VDX1NDX0xUS01fUkVRX0NPTVBMRVRFX0MgICAgICAgICAoMHg0NjkgKyBMT0dfMVhfQkFTRV9DKQoKLyogRFRWIERWQkggU2VjdXJpdHkgU21hcnRDYXJkIFByb2dyYW0gU2VsZWN0aW9uIEluZm8gKi8KI2RlZmluZSBMT0dfRFRWX0RWQkhfU0VDX1NDX1BST0dfU0VMX0MgICAgICAgICAgICAgICAgICAoMHg0NkEgKyBMT0dfMVhfQkFTRV9DKQoKLyogRFRWIERWQkggU2VjdXJpdHkgU21hcnRDYXJkIFByb2dyYW0gU2VsZWN0aW9uIENvbXBsZXRlIEluZm8gKi8KI2RlZmluZSBMT0dfRFRWX0RWQkhfU0VDX1NDX1BST0dfU0VMX0NPTVBMRVRFX0MgICAgICAgICAoMHg0NkIgKyBMT0dfMVhfQkFTRV9DKQoKLyogRFRWIERWQkggU2VjdXJpdHkgU21hcnRDYXJkIExUS00gKi8KI2RlZmluZSBMT0dfRFRWX0RWQkhfU0VDX1NDX0xUS01fQyAgICAgICAgICAgICAgICAgICAgICAoMHg0NkMgKyBMT0dfMVhfQkFTRV9DKQoKLyogRFRWIERWQkggU2VjdXJpdHkgU21hcnRDYXJkIExUS00gVmVyaWZpY2F0aW9uIE1lc3NhZ2UgKi8KI2RlZmluZSBMT0dfRFRWX0RWQkhfU0VDX1NDX0xUS01fVkVSSUZJQ0FUSU9OX0MgICAgICAgICAoMHg0NkQgKyBMT0dfMVhfQkFTRV9DKQoKLyogRFRWIERWQkggU2VjdXJpdHkgU21hcnRDYXJkIFBhcmVudGFsIENvbnRyb2wgTWVzc2FnZSAqLwojZGVmaW5lIExPR19EVFZfRFZCSF9TRUNfU0NfUEFSRU5UQUxfQ1RSTF9DICAgICAgICAgICAgICgweDQ2RSArIExPR18xWF9CQVNFX0MpCgovKiBEVFYgRFZCSCBTZWN1cml0eSBTbWFydENhcmQgU1RLTSAqLwojZGVmaW5lIExPR19EVFZfRFZCSF9TRUNfU0NfU1RLTV9DICAgICAgICAgICAgICAgICAgICAgICgweDQ2RiArIExPR18xWF9CQVNFX0MpCgovKiBQcm90b2NvbCBTZXJ2aWNlcyBTdGF0aXN0aWNzIEdsb2JhbCBTb2NrZXQgKi8KI2RlZmluZSBMT0dfUFNfU1RBVF9HTE9CQUxfU09DS19DICAgICAgICAgICAgICAgICAgICAgICAoMHg0NzAgKyBMT0dfMVhfQkFTRV9DKQoKLyogTUNTIEFwcGxpY2F0aW9uIE1hbmFnZXIgKi8KI2RlZmluZSBMT0dfTUNTX0FQUE1HUl9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0NzEgKyBMT0dfMVhfQkFTRV9DKQoKLyogTUNTIE1TR1IgKi8KI2RlZmluZSBMT0dfTUNTX01TR1JfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0NzIgKyBMT0dfMVhfQkFTRV9DKQoKLyogTUNTIFFURiAgKi8KI2RlZmluZSBMT0dfTUNTX1FURl9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0NzMgKyBMT0dfMVhfQkFTRV9DKQoKLyogU2Vuc29ycyBTdGF0aW9uYXJ5IERldGVjdG9yIE91dHB1dCAqLwojZGVmaW5lIExPR19TVEFUSU9OQVJZX0RFVEVDVE9SX09VVFBVVF9DICAgICAgICAgICAgICAgICgweDQ3NCArIExPR18xWF9CQVNFX0MpCgovKiBQcmludCBvdXQgdGhlIHBwbSBkYXRhIHBvcnRpb24gICovCiNkZWZpbmUgTE9HX0NHUFNfUERTTV9FWFRfU1RBVFVTX01FQVNfUkVQT1JUX1BQTV9DICAgICAgKDB4NDc1ICsgTE9HXzFYX0JBU0VfQykKCi8qIEdOU1MgUG9zaXRpb24gUmVwb3J0ICovCiNkZWZpbmUgTE9HX0dOU1NfUE9TSVRJT05fUkVQT1JUX0MgICAgICAgICAgICAgICAgICAgICAgKDB4NDc2ICsgTE9HXzFYX0JBU0VfQykKCi8qIEdOU1MgR1BTIE1lYXN1cmVtZW50IFJlcG9ydCAqLwojZGVmaW5lIExPR19HTlNTX0dQU19NRUFTVVJFTUVOVF9SRVBPUlRfQyAgICAgICAgICAgICAgICgweDQ3NyArIExPR18xWF9CQVNFX0MpCgovKiBHTlNTIENsb2NrIFJlcG9ydCAqLwojZGVmaW5lIExPR19HTlNTX0NMT0NLX1JFUE9SVF9DICAgICAgICAgICAgICAgICAgICAgICAgICgweDQ3OCArIExPR18xWF9CQVNFX0MpCgovKiBHTlNTIERlbW9kIFNvZnQgRGVjaXNpb24gKi8KI2RlZmluZSBMT0dfR05TU19ERU1PRF9TT0ZUX0RFQ0lTSU9OU19DICAgICAgICAgICAgICAgICAoMHg0NzkgKyBMT0dfMVhfQkFTRV9DKQoKLyogR05TUyBNRSA1TVMgSVEgc3VtICovCiNkZWZpbmUgTE9HX0dOU1NfTUVfNU1TX0lRX1NVTVNfQyAgICAgICAgICAgICAgICAgICAgICAgKDB4NDdBICsgTE9HXzFYX0JBU0VfQykKCi8qIEdOU1MgQ0QgREIgcmVwb3J0ICovCiNkZWZpbmUgTE9HX0dOU1NfQ0RfREJfUkVQT1JUX0MgICAgICAgICAgICAgICAgICAgICAgICAgKDB4NDdCICsgTE9HXzFYX0JBU0VfQykKCi8qIEdOU1MgUEUgV0xTIHBvc2l0aW9uIHJlcG9ydCAqLwojZGVmaW5lIExPR19HTlNTX1BFX1dMU19QT1NJVElPTl9SRVBPUlRfQyAgICAgICAgICAgICAgICgweDQ3QyArIExPR18xWF9CQVNFX0MpCgovKiBHTlNTIFBFIEtGIHBvc2l0aW9uIHJlcG9ydCAqLwojZGVmaW5lIExPR19HTlNTX1BFX0tGX1BPU0lUSU9OX1JFUE9SVF9DICAgICAgICAgICAgICAgICgweDQ3RCArIExPR18xWF9CQVNFX0MpCgovKiBHTlNTIFBSWCBSRiBIVyBzdGF0dXMgcmVwb3J0ICovCiNkZWZpbmUgTE9HX0dOU1NfUFJYX1JGX0hXX1NUQVRVU19SRVBPUlRfQyAgICAgICAgICAgICAgKDB4NDdFICsgTE9HXzFYX0JBU0VfQykKCi8qIEdOU1MgRFJYIFJGIEhXIHN0YXR1cyByZXBvcnQgKi8KI2RlZmluZSBMT0dfR05TU19EUlhfUkZfSFdfU1RBVFVTX1JFUE9SVF9DICAgICAgICAgICAgICAoMHg0N0YgKyBMT0dfMVhfQkFTRV9DKQoKLyogR05TUyBHbG9uYXNzIE1lYXN1cmVtZW50IHJlcG9ydCAqLwojZGVmaW5lIExPR19HTlNTX0dMT05BU1NfTUVBU1VSRU1FTlRfUkVQT1JUX0MgICAgICAgICAgICgweDQ4MCArIExPR18xWF9CQVNFX0MpCgovKiBHTlNTIEdQUyBIQlcgUlhEIG1lYXN1cmVtZW50ICovCiNkZWZpbmUgTE9HX0dOU1NfR1BTX0hCV19SWERfTUVBU1VSRU1FTlRfQyAgICAgICAgICAgICAgKDB4NDgxICsgTE9HXzFYX0JBU0VfQykKCi8qIEdOU1MgUERTTSBwb3NpdGlvbiByZXBvcnQgY2FsbGJhY2sgKi8KI2RlZmluZSBMT0dfR05TU19QRFNNX1BPU0lUSU9OX1JFUE9SVF9DQUxMQkFDS19DICAgICAgICAoMHg0ODIgKyBMT0dfMVhfQkFTRV9DKQoKLyogSVNlbnNlIFJlcXVlc3QgU3RyaW5nICAqLwojZGVmaW5lIExPR19JU0VOU0VfUkVRVUVTVF9TVFJfQyAgICAgICAgICAgICAgICAgICAgICAgICgweDQ4MyArIExPR18xWF9CQVNFX0MpCgovKiBJU2Vuc2UgUmVzcG9uc2UgU3RyaW5nICovCiNkZWZpbmUgTE9HX0lTRU5TRV9SRVNQT05TRV9TVFJfQyAgICAgICAgICAgICAgICAgICAgICAgKDB4NDg0ICsgTE9HXzFYX0JBU0VfQykKCi8qIEJsdWV0b290aCBTT0MgR2VuZXJhbCBMb2cgUGFja2V0Ki8KI2RlZmluZSBMT0dfQlRfU09DX0dFTkVSQUxfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0ODUgKyBMT0dfMVhfQkFTRV9DKQoKLyogUUNSaWwgQ2FsbCBGbG93ICovCiNkZWZpbmUgTE9HX1FDUklMX0NBTExfRkxPV19DICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4NDg2ICsgTE9HXzFYX0JBU0VfQykKCi8qIENHUFMgV2lkZWJhbmQgRkZUIHN0YXRzICovCiNkZWZpbmUgTE9HX0NHUFNfV0JfRkZUX1NUQVRTX0MgICAgICAgICAgICAgICAgICAgICAgICAgKDB4NDg3ICsgTE9HXzFYX0JBU0VfQykKCi8qIENHUFMgU2xvdyBDbG9jayBDYWxpYnJhdGlvbiBSZXBvcnQqLwojZGVmaW5lIExPR19DR1BTX1NMT1dfQ0xPQ0tfQ0FMSUJfUkVQT1JUX0MgICAgICAgICAgICAgICgweDQ4OCArIExPR18xWF9CQVNFX0MpCgovKiBTTlMgR1BTIFRJTUVTVEFNUCAqLwojZGVmaW5lIExPR19TTlNfR1BTX1RJTUVTVEFNUF9DICAgICAgICAgICAgICAgICAgICAgICAgICgweDQ4OSArIExPR18xWF9CQVNFX0MpCgovKiBHTlNTIFNlYXJjaCBTdHJhdGVneSBUYXNrIEFsbG9jYXRpb24gKi8KI2RlZmluZSBMT0dfR05TU19TRUFSQ0hfU1RSQVRFR1lfVEFTS19BTExPQ0FUSU9OX0MgICAgICAoMHg0OEEgKyBMT0dfMVhfQkFTRV9DKQoKLyogUkYgTUMgU1RNIHN0YXRlICovCiNkZWZpbmUgTE9HXzFYSERSX01DX1NUQVRFX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4NDhCICsgTE9HXzFYX0JBU0VfQykKCi8qIFJlY29yZCBpbiB0aGUgU3BhcnNlIE5ldHdvcmsgREIgKi8KI2RlZmluZSBMT0dfQ0dQU19TTkRCX1JFQ09SRF9DICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0OEMgKyBMT0dfMVhfQkFTRV9DKQoKLyogUmVjb3JkIHJlbW92ZWQgZnJvbSB0aGUgREIgKi8KI2RlZmluZSBMT0dfQ0dQU19TTkRCX1JFTU9WRV9DICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0OEQgKyBMT0dfMVhfQkFTRV9DKQoKLyogQ0dQUyBSZXNlcnZlZCAqLwojZGVmaW5lIExPR19HTlNTX0NDX1BFUkZPUk1BTkNFX1NUQVRTX0MgICAgICAgICAgICAgICAgICgweDQ4RSArIExPR18xWF9CQVNFX0MpCgovKiBHTlNTIFBEU00gU2V0IFBhcmFtZXJ0ZXJzICovCiNkZWZpbmUgTE9HX0dOU1NfUERTTV9TRVRfUEFSQU1FVEVSU19DICAgICAgICAgICAgICAgICAgKDB4NDhGICsgTE9HXzFYX0JBU0VfQykKCi8qIEdOU1MgUERTTSBQRCBFdmVudCBDYWxsYmFjayAqLwojZGVmaW5lIExPR19HTlNTX1BEU01fUERfRVZFTlRfQ0FMTEJBQ0tfQyAgICAgICAgICAgICAgICgweDQ5MCArIExPR18xWF9CQVNFX0MpCgovKiBHTlNTIFBEU00gUEEgRXZlbnQgQ2FsbGJhY2sgKi8KI2RlZmluZSBMT0dfR05TU19QRFNNX1BBX0VWRU5UX0NBTExCQUNLX0MgICAgICAgICAgICAgICAoMHg0OTEgKyBMT0dfMVhfQkFTRV9DKQoKLyogQ0dQUyBSZXNlcnZlZCAqLwojZGVmaW5lIExPR19DR1BTX1JFU0VSVkVEMl9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDQ5MiArIExPR18xWF9CQVNFX0MpCgovKiBDR1BTIFJlc2VydmVkICovCiNkZWZpbmUgTE9HX0NHUFNfUkVTRVJWRUQzX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4NDkzICsgTE9HXzFYX0JBU0VfQykKCi8qIEdOU1MgUERTTSBFWFQgU3RhdHVzIE1FQVMgUmVwb3J0ICovCiNkZWZpbmUgTE9HX0dOU1NfUERTTV9FWFRfU1RBVFVTX01FQVNfUkVQT1JUX0MgICAgICAgICAgKDB4NDk0ICsgTE9HXzFYX0JBU0VfQykKCi8qIEdOU1MgU00gRXJyb3IgKi8KI2RlZmluZSBMT0dfR05TU19TTV9FUlJPUl9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0OTUgKyBMT0dfMVhfQkFTRV9DKQoKLyogV0xBTiBTY2FuICovCiNkZWZpbmUgTE9HX1dMQU5fU0NBTl9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4NDk2ICsgTE9HXzFYX0JBU0VfQykKCi8qIFdMQU4gSUJTUyAqLwojZGVmaW5lIExPR19XTEFOX0lCU1NfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDQ5NyArIExPR18xWF9CQVNFX0MpCgovKiBXTEFOIDgwMi4xMWQqLwojZGVmaW5lIExPR19XTEFOXzgwMjExRF9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDQ5OCArIExPR18xWF9CQVNFX0MpCgovKiBXTEFOIEhhbmRvZmYgKi8KI2RlZmluZSBMT0dfV0xBTl9IQU5ET0ZGX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0OTkgKyBMT0dfMVhfQkFTRV9DKQoKLyogV0xBTiBRb1MgRURDQSAqLwojZGVmaW5lIExPR19XTEFOX1FPU19FRENBX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDQ5QSArIExPR18xWF9CQVNFX0MpCgovKiBXTEFOIEJlYWNvbiBVcGRhdGUgKi8KI2RlZmluZSBMT0dfV0xBTl9CRUFDT05fVVBEQVRFX0MgICAgICAgICAgICAgICAgICAgICAgICAoMHg0OUIgKyBMT0dfMVhfQkFTRV9DKQoKLyogV0xBTiBQb3dlciBzYXZlIHdvdyBhZGQgcGF0dGVybiAqLwojZGVmaW5lIExPR19XTEFOX1BPV0VSU0FWRV9XT1dfQUREX1BUUk5fQyAgICAgICAgICAgICAgICgweDQ5QyArIExPR18xWF9CQVNFX0MpCgovKiBXTEFOIFdDTSBsaW5rIG1ldHJpY3MgKi8KI2RlZmluZSBMT0dfV0xBTl9XQ01fTElOS01FVFJJQ1NfQyAgICAgICAgICAgICAgICAgICAgICAoMHg0OUQgKyBMT0dfMVhfQkFTRV9DKQoKLyogV0xBTiB3cHMgc2NhbiBjb21wbGV0ZSovCiNkZWZpbmUgTE9HX1dMQU5fV1BTX1NDQU5fQ09NUExFVEVfQyAgICAgICAgICAgICAgICAgICAgKDB4NDlFICsgTE9HXzFYX0JBU0VfQykKCi8qIFdMQU4gV1BTIFdTQyBNZXNzYWdlICovCiNkZWZpbmUgTE9HX1dMQU5fV1BTX1dTQ19NRVNTQUdFX0MgICAgICAgICAgICAgICAgICAgICAgKDB4NDlGICsgTE9HXzFYX0JBU0VfQykKCi8qIFdMQU4gV1BTIGNyZWRlbnRpYWxzICovCiNkZWZpbmUgTE9HX1dMQU5fV1BTX0NSRURFTlRJQUxTX0MgICAgICAgICAgICAgICAgICAgICAgKDB4NEEwICsgTE9HXzFYX0JBU0VfQykKCi8qIFdMQU4gTGlua2xheWVyIHN0YXQqLwojZGVmaW5lIExPR19XTEFOX0xJTktMQVlFUl9TVEFUX0MgICAgICAgICAgICAgICAgICAgICAgICgweDRBMSArIExPR18xWF9CQVNFX0MpCgovKiBXTEFOIFFvcyBUU3BlYyovCiNkZWZpbmUgTE9HX1dMQU5fUU9TX1RTUEVDX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4NEEyICsgTE9HXzFYX0JBU0VfQykKCi8qIFBNSUMgVnJlZyBDb250cm9sICovCiNkZWZpbmUgTE9HX1BNX1ZSRUdfQ09OVFJPTF9DICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4NEEzICsgTE9HXzFYX0JBU0VfQykKCi8qIFBNSUMgVnJlZyBMZXZlbCAqLwojZGVmaW5lIExPR19QTV9WUkVHX0xFVkVMX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDRBNCArIExPR18xWF9CQVNFX0MpCgovKiBQTUlDIFZyZWcgU3RhdGUgKi8KI2RlZmluZSBMT0dfUE1fVlJFR19TVEFURV9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0QTUgKyBMT0dfMVhfQkFTRV9DKQoKLyogQ0dQUyBTTSBFUEggUmFuZG9taXphdGlvbiBpbmZvICovCiNkZWZpbmUgTE9HX0NHUFNfU01fRVBIX1JBTkRPTUlaQVRJT05fSU5GT19DICAgICAgICAgICAgKDB4NEE2ICsgTE9HXzFYX0JBU0VfQykKCi8qIEF1ZGlvIGNhbGlicmF0aW9uIGRhdGEgKi8KI2RlZmluZSBMT0dfUUFDVF9EQVRBX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0QTcgKyBMT0dfMVhfQkFTRV9DKQoKLyogQ29tcGFzcyAyRCBUcmFja2VkIENhbGlicmF0aW9uIFNldCAqLwojZGVmaW5lIExPR19TTlNfVkNQU18yRF9UUkFDS0VEX0NBTF9TRVQgICAgICAgICAgICAgICAgICgweDRBOCArIExPR18xWF9CQVNFX0MpCgovKiBDb21wYXNzIDNEIFRyYWNrZWQgQ2FsaWJyYXRpb24gU2V0ICAqLwojZGVmaW5lIExPR19TTlNfVkNQU18zRF9UUkFDS0VEX0NBTF9TRVQgICAgICAgICAgICAgICAgICgweDRBOSArIExPR18xWF9CQVNFX0MpCgovKiBDYWxpYnJhdGlvbiBtZXRyaWMgKi8KI2RlZmluZSBMT0dfU05TX1ZDUFNfQ0FMX01FVFJJQyAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0QUEgKyBMT0dfMVhfQkFTRV9DKQoKLyogQWNjZWxlcm9tZXRlciBkaXN0YW5jZSAqLwojZGVmaW5lIExPR19TTlNfVkNQU19BQ0NFTF9ESVNUICAgICAgICAgICAgICAgICAgICAgICAgICgweDRBQiArIExPR18xWF9CQVNFX0MpCgovKiBQbGFuZSB1cGRhdGUgKi8KI2RlZmluZSBMT0dfU05TX1ZDUFNfUExBTkVfVVBEQVRFICAgICAgICAgICAgICAgICAgICAgICAoMHg0QUMgKyBMT0dfMVhfQkFTRV9DKQoKLyogTG9jYXRpb24gcmVwb3J0ICAqLwojZGVmaW5lIExPR19TTlNfVkNQU19MT0NfUkVQT1JUICAgICAgICAgICAgICAgICAgICAgICAgICgweDRBRCArIExPR18xWF9CQVNFX0MpCgovKiBDTSBBY3RpdmUgc3Vic2NyaXB0aW9uICovCiNkZWZpbmUgTE9HX0NNX1BIX0VWRU5UX1NVQlNDUklQVElPTl9QUkVGX0lORk9fQyAgICAgICAgKDB4NEFFICsgTE9HXzFYX0JBU0VfQykKCi8qIERTRFMgdmVyc2lvbiBvZiBDTSBjYWxsIGV2ZW50ICovCiNkZWZpbmUgTE9HX0NNX0RTX0NBTExfRVZFTlRfQyAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4NEFGICsgTE9HXzFYX0JBU0VfQykKCi8qIFNlbnNvcnMgP01vYmlTZW5zIE91dHB1dCAqLwojZGVmaW5lIExPR19NT0JJU0VOU19PVVRQVVRfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDRCMCArIExPR18xWF9CQVNFX0MpCgovKiBBY2NlbGVyb21ldGVyIERhdGEgICAqLwojZGVmaW5lIExPR19BQ0NFTF9EQVRBX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDRCMSArIExPR18xWF9CQVNFX0MpCgovKiBBY2NlbGVyb21ldGVyIENvbXBlbnNhdGVkIERhdGEgICovCiNkZWZpbmUgTE9HX0FDQ0VMX0NPTVBfREFUQV9DICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4NEIyICsgTE9HXzFYX0JBU0VfQykKCi8qIE1vdGlvbiBTdGF0ZSBEYXRhICAqLwojZGVmaW5lIExPR19NT1RJT05fU1RBVEVfREFUQV9DICAgICAgICAgICAgICAgICAgICAgICAgICgweDRCMyArIExPR18xWF9CQVNFX0MpCgovKiBTdGF0aW9uYXJ5IFBvc2l0aW9uIEluZGljYXRvciAgKi8KI2RlZmluZSBMT0dfU1RBVF9QT1NfSU5EX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0QjQgKyBMT0dfMVhfQkFTRV9DKQoKLyogTW90aW9uIFN0YXRlIEZlYXR1cmVzICAgKi8KI2RlZmluZSBMT0dfTU9USU9OX1NUQVRFX0ZFQVRVUkVTX0MgICAgICAgICAgICAgICAgICAgICAoMHg0QjUgKyBMT0dfMVhfQkFTRV9DKQoKLyogTW90aW9uIFN0YXRlIEhhcmQgRGVjaXNpb24gKi8KI2RlZmluZSBMT0dfTU9USU9OX1NUQVRFX0hBUkRfREVDSVNJT05fQyAgICAgICAgICAgICAgICAoMHg0QjYgKyBMT0dfMVhfQkFTRV9DKQoKLyogTW90aW9uIFN0YXRlIFNvZnQgRGVjaXNpb24gKi8KI2RlZmluZSBMT0dfTU9USU9OX1NUQVRFX1NPRlRfREVDSVNJT05fQyAgICAgICAgICAgICAgICAoMHg0QjcgKyBMT0dfMVhfQkFTRV9DKQoKLyogU2Vuc29ycyBTb2Z0d2FyZSBWZXJzaW9uICovCiNkZWZpbmUgTE9HX1NFTlNPUlNfU09GVFdBUkVfVkVSU0lPTl9DICAgICAgICAgICAgICAgICAgKDB4NEI4ICsgTE9HXzFYX0JBU0VfQykKCi8qIE1vYmlTZW5zIFN0YXRpb25hcnkgUG9zaXRpb24gSW5kaWNhdG9yIExvZyBQYWNrZXQgKi8KI2RlZmluZSBMT0dfTU9CSVNFTlNfU1BJX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0QjkgKyBMT0dfMVhfQkFTRV9DKQoKLyogWE8gY2FsaWJyYXRpb24gcmF3IElRIGRhdGEgKi8KI2RlZmluZSBMT0dfWE9fSVFfREFUQV9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0QkEgKyBMT0dfMVhfQkFTRV9DKQoKLypEVFYgQ01NQiBDb250cm9sIFRhYmwgVXBkYXRlZCovCiNkZWZpbmUgTE9HX0RUVl9DTU1CX0NPTlRST0xfVEFCTEVfVVBEQVRFICAgICAgICAgICAgICAgICAgKCgweDRCQikgKyBMT0dfMVhfQkFTRV9DKQoKLypEVFYgQ01NQiBNZWRpYSBBUEkgQnVmZmVyaW5nIFN0YXR1cyovCiNkZWZpbmUgTE9HX0RUVl9DTU1CX01FRElBX0JVRkZFUklOR19TVEFUVVMgICAgICAgICAgICAgICAgKCgweDRCQykgKyBMT0dfMVhfQkFTRV9DKQoKLypEVFYgQ01NQiAqRW1lcmdlbmN5IEJyb2FkY2FzdCBEYXRhKi8KI2RlZmluZSBMT0dfRFRWX0NNTUJfQ09OVFJPTF9FTUVSR0VOQ1lfQkNBU1QgICAgICAgICAgICAgKCgweDRCRCkgKyBMT0dfMVhfQkFTRV9DKQoKLypEVFYgQ01NQiBFTU0vRUNNIERhdGEqLwojZGVmaW5lIExPR19EVFZfQ01NQl9DQVNfRU1NX0VDTSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoMHg0QkUpICsgTE9HXzFYX0JBU0VfQykKCi8qRFRWIENNTUIgSFcgU3RhdHVzKi8KI2RlZmluZSBMT0dfRFRWX0NNTUJfSFdfUEVSRk9STUFOQ0UgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCgweDRCRikgKyBMT0dfMVhfQkFTRV9DKQoKLypEVFYgQ01NQiBFU1NHIFByb2dyYW0gSW5kaWNhdGlvbiBJbmZvcm1hdGlvbiovCiNkZWZpbmUgTE9HX0RUVl9DTU1CX0VTR19QUk9HUkFNX0lORElDQVRJT05fSU5GT1JNQVRJT04gICAgKCgweDRDMCkgKyBMT0dfMVhfQkFTRV9DKQoKLyogU2Vuc29ycyCoQyBiaW5hcnkgb3V0cHV0IG9mIGNvbnZlcnRlZCBzZW5zb3IgZGF0YSAqLwojZGVmaW5lIExPR19DT05WRVJURURfU0VOU09SX0RBVEFfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCgweDRDMSkgKyBMT0dfMVhfQkFTRV9DKQoKLyogQ00gU3Vic2NyaXB0aW9uIGV2ZW50ICovCiNkZWZpbmUgTE9HX0NNX1NVQlNDUklQVElPTl9FVkVOVF9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKDB4NEMyKSArIExPR18xWF9CQVNFX0MpCgovKiBTZW5zb3IgQW1iaWVudCBMaWdodCBEYXRhICovCiNkZWZpbmUgTE9HX1NOU19BTFNfREFUQV9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoMHg0QzMpICsgTE9HXzFYX0JBU0VfQykKCi8qU2Vuc29yIEFtYmllbnQgTGlnaHQgQWRhcHRpdmUgRGF0YSAqLwojZGVmaW5lIExPR19TTlNfQUxTX0RBVEFfQURBUFRJVkVfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICgoMHg0QzQpICsgTE9HXzFYX0JBU0VfQykKCi8qU2Vuc29yIFByb3hpbWl0eSBEaXN0YW5jZSBEYXRhICovCiNkZWZpbmUgTE9HX1NOU19QUlhfRElTVF9EQVRBX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCgweDRDNSkgKyBMT0dfMVhfQkFTRV9DKQoKLypTZW5zb3IgUHJveGltaXR5IERhdGEgKi8KI2RlZmluZSBMT0dfU05TX1BSWF9EQVRBX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKDB4NEM2KSArIExPR18xWF9CQVNFX0MpCgojZGVmaW5lIExPR19HTlNTX1NCQVNfUkVQT1JUX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoMHg0QzcpICsgTE9HXzFYX0JBU0VfQykKCiNkZWZpbmUgTE9HX0NQVV9NT05JVE9SX01PREVNX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCgweDRDOCkgKyBMT0dfMVhfQkFTRV9DKQoKI2RlZmluZSBMT0dfQ1BVX01PTklUT1JfQVBQU19DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKDB4NEM5KSArIExPR18xWF9CQVNFX0MpCgojZGVmaW5lIExPR19CTEFTVF9UQVNLUFJPRklMRV9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoMHg0Q0EpICsgTE9HXzFYX0JBU0VfQykKCiNkZWZpbmUgTE9HX0JMQVNUX1NZU1BST0ZJTEVfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCgweDRDQikgKyBMT0dfMVhfQkFTRV9DKQoKI2RlZmluZSBMT0dfRk1fUkFESU9fRlRNX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKDB4NENDKSArIExPR18xWF9CQVNFX0MpCgojZGVmaW5lIExPR19GTV9SQURJT19DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoMHg0Q0QpICsgTE9HXzFYX0JBU0VfQykKCiNkZWZpbmUgTE9HX1VJTV9EU19EQVRBX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCgweDRDRSkgKyBMT0dfMVhfQkFTRV9DKQoKI2RlZmluZSBMT0dfUU1JX0NBTExfRkxPV19DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKDB4NENGKSArIExPR18xWF9CQVNFX0MpCgojZGVmaW5lIExPR19BUFJfTU9ERU1fQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoMHg0RDApICsgTE9HXzFYX0JBU0VfQykKCiNkZWZpbmUgTE9HX0FQUl9BUFBTX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCgweDREMSkgKyBMT0dfMVhfQkFTRV9DKQoKI2RlZmluZSBMT0dfQVBSX0FEU1BfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKDB4NEQyKSArIExPR18xWF9CQVNFX0MpCgojZGVmaW5lIExPR19EQVRBX01VWF9SWF9SQVdfUEFDS0VUX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoMHg0RDMpICsgTE9HXzFYX0JBU0VfQykKCiNkZWZpbmUgTE9HX0RBVEFfTVVYX1RYX1JBV19QQUNLRVRfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCgweDRENCkgKyBMT0dfMVhfQkFTRV9DKQoKI2RlZmluZSBMT0dfREFUQV9NVVhfUlhfRlJBTUVfUEFDS0VUX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKDB4NEQ1KSArIExPR18xWF9CQVNFX0MpCgojZGVmaW5lIExPR19EQVRBX01VWF9UWF9GUkFNRV9QQUNLRVRfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoMHg0RDYpICsgTE9HXzFYX0JBU0VfQykKCiNkZWZpbmUgTE9HX0NHUFNfUERTTV9FWFRfU1RBVFVTX1BPU19JTkpfUkVRX0lORk9fQyAgICAgICAgICAgICAgICAgKCgweDRENykgKyBMT0dfMVhfQkFTRV9DKQoKI2RlZmluZSBMT0dfVEVNUEVSQVRVUkVfTU9OSVRPUl9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKDB4NEQ4KSArIExPR18xWF9CQVNFX0MpCgojZGVmaW5lIExPR19TTlNfR0VTVFVSRVNfUkVTVF9ERVRFQ1RfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoMHg0RDkpICsgTE9HXzFYX0JBU0VfQykKCiNkZWZpbmUgTE9HX1NOU19HRVNUVVJFU19PUklFTlRBVElPTl9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCgweDREQSkgKyBMT0dfMVhfQkFTRV9DKQoKI2RlZmluZSBMT0dfU05TX0dFU1RVUkVTX0ZBQ0lOR19DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKDB4NERCKSArIExPR18xWF9CQVNFX0MpCgojZGVmaW5lIExPR19TTlNfR0VTVFVSRVNfQkFTSUNfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoMHg0REMpICsgTE9HXzFYX0JBU0VfQykKCiNkZWZpbmUgTE9HX1NOU19HRVNUVVJFU19ISU5CWUVfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCgweDRERCkgKyBMT0dfMVhfQkFTRV9DKQoKI2RlZmluZSBMT0dfR05TU19PRU1EUkVfTUVBU1VSRU1FTlRfUkVQT1JUX0MgICAgICAgICAgICAgICAgICAgICAgICAoKDB4NERFKSArIExPR18xWF9CQVNFX0MpCgojZGVmaW5lIExPR19HTlNTX09FTURSRV9QT1NJVElPTl9SRVBPUlRfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICgoMHg0RTApICsgTE9HXzFYX0JBU0VfQykKCiNkZWZpbmUgTE9HX0dOU1NfT0VNRFJFX1NWUE9MWV9SRVBPUlRfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCgweDRFMSkgKyBMT0dfMVhfQkFTRV9DKQoKI2RlZmluZSBMT0dfR05TU19PRU1EUlNZTkNfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKDB4NEUyKSArIExPR18xWF9CQVNFX0MpCgojZGVmaW5lIExPR19TTlNfTUdSX0VWRU5UX05PVElGWV9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoMHg0RTMpICsgTE9HXzFYX0JBU0VfQykKCiNkZWZpbmUgTE9HX1NOU19NR1JfRVZFTlRfUkVHSVNURVJfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCgweDRFNCkgKyBMT0dfMVhfQkFTRV9DKQoKI2RlZmluZSBMT0dfR05TU19QRFNNX1BQTV9TRVNTSU9OX0JFR0lOX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAoKDB4NEU1KSArIExPR18xWF9CQVNFX0MpCgojZGVmaW5lIExPR19HTlNTX1BEU01fUFBNX1NFU1NJT05fUFBNX1NVU1BFTkRfQyAgICAgICAgICAgICAgICAgICAgICgoMHg0RTYpICsgTE9HXzFYX0JBU0VfQykKCiNkZWZpbmUgTE9HX0dOU1NfUERTTV9QUE1fUkVQT1JUX1RIUk9UVExFRF9DICAgICAgICAgICAgICAgICAgICAgICAgKCgweDRFNykgKyBMT0dfMVhfQkFTRV9DKQoKI2RlZmluZSBMT0dfR05TU19QRFNNX1BQTV9SRVBPUlRfRklSRURfQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKDB4NEU4KSArIExPR18xWF9CQVNFX0MpCgojZGVmaW5lIExPR19HTlNTX1BEU01fUFBNX1NFU1NJT05fRU5EX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoMHg0RTkpICsgTE9HXzFYX0JBU0VfQykKCiNkZWZpbmUgTE9HX1RSU1BfREFUQV9TVEFMTF9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCgweDgwMSkgKyBMT0dfMVhfQkFTRV9DKQoKI2RlZmluZSBMT0dfV0xBTl9QS1RfTE9HX0lORk9fQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKDB4OEUwKSArIExPR18xWF9CQVNFX0MpCgovKiBUaGUgbGFzdCBkZWZpbmVkIERNU1MgbG9nIGNvZGUgKi8KI2RlZmluZSBMT0dfMVhfTEFTVF9DICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKDB4OEUwKSArIExPR18xWF9CQVNFX0MpCgoKLyogVGhpcyBpcyBvbmx5IGhlcmUgZm9yIG9sZCAocHJlIGVxdWlwbWVudCBJRCB1cGRhdGUpIGxvZ2dpbmcgY29kZSAqLwojZGVmaW5lIExPR19MQVNUX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICggTE9HXzFYX0xBU1RfQyAmIDB4RkZGICkKCgovKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAqIEFQUFMgTE9HIGRlZmluaXRpb246CiAqIFRoZSBtYXggbnVtYmVyIG9mIDE2IGxvZyBjb2RlcyBpcyBhc3NpZ25lZCBmb3IgQXBwcy4KICogVGhlIGxhc3QgYXBwcyBsb2cgY29kZSBjb3VsZCBiZSAweEIwMEYuCiAqIEJlbG93IGRlZmluaXRpb24gaXMgY29uc29saWRhdGVkIGZyb20gbG9nX2NvZGVzX2FwcHMuaAogKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCgovKiA9PT09PT09PT09PT09PT09PT09PT09PT0gICBBUFBTIFByb2ZpbGluZyAgPT09PT09PT09PT09PT09PT09PT09PT09ICovCiNkZWZpbmUgTE9HX0FQUFNfU1lTUFJPRklMRV9DICAgICAgICAgICAgICAgICAgICAgICAoMHgwMSAgKyBMT0dfQVBQU19CQVNFX0MpCiNkZWZpbmUgTE9HX0FQUFNfVEFTS1BST0ZJTEVfQyAgICAgICAgICAgICAgICAgICAgICAoMHgwMiAgKyBMT0dfQVBQU19CQVNFX0MpCgovKiBUaGUgbGFzdCBkZWZpbmVkIEFQUFMgbG9nIGNvZGUgKi8KLyogQ2hhbmdlIGl0IHRvICgweDAyICsgTE9HX0xURV9MQVNUX0MpIHRvIGFsbG93IExURSBsb2cgY29kZXMgKi8KI2RlZmluZSBMT0dfQVBQU19MQVNUX0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDAyICsgTE9HX0xURV9MQVNUX0MpCgovKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAqIExvZyBFcXVpcG1lbnQgSURzLgogKiBUaGUgbnVtYmVyIGlzIHJlcHJlc2VudGVkIGJ5IDQgYml0cy4KICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwp0eXBlZGVmIGVudW0gewogIExPR19FUVVJUF9JRF9PRU0gICA9IDAsIC8qIDNyZCBwYXJ0eSBPRU0gKGxpY2Vuc2VlKSB1c2UgKi8KICBMT0dfRVFVSVBfSURfMVggICAgPSAxLCAvKiBUcmFkaXRpb25hbCAxWCBsaW5lIG9mIHByb2R1Y3RzICovCiAgTE9HX0VRVUlQX0lEX1JTVkQyID0gMiwKICBMT0dfRVFVSVBfSURfUlNWRDMgPSAzLAogIExPR19FUVVJUF9JRF9XQ0RNQSA9IDQsCiAgTE9HX0VRVUlQX0lEX0dTTSAgID0gNSwKICBMT0dfRVFVSVBfSURfTEJTICAgPSA2LAogIExPR19FUVVJUF9JRF9VTVRTICA9IDcsCiAgTE9HX0VRVUlQX0lEX1RETUEgID0gOCwKICBMT0dfRVFVSVBfSURfQk9BICAgPSA5LAogIExPR19FUVVJUF9JRF9EVFYgICA9IDEwLAogIExPR19FUVVJUF9JRF9BUFBTICA9IDExLAogIExPR19FUVVJUF9JRF9EU1AgICA9IDEyLAoKICBMT0dfRVFVSVBfSURfTEFTVF9ERUZBVUxUID0gTE9HX0VRVUlQX0lEX0RTUAoKfSBsb2dfZXF1aXBfaWRfZW51bV90eXBlOwoKI2RlZmluZSBMT0dfRVFVSVBfSURfTUFYIDB4RiAvKiBUaGUgZXF1aXBtZW50IElEIGlzIDQgYml0cyAqLwoKLyogTm90ZSB0aGF0IHRoZXNlIGFyZSB0aGUgb2ZmaWNpYWwgdmFsdWVzIGFuZCBhcmUgdXNlZCBieSBkZWZhdWx0IGluCiAgIGRpYWd0dW5lLmguCiovCiNkZWZpbmUgTE9HX0VRVUlQX0lEXzBfTEFTVF9DT0RFX0RFRkFVTFQgMAojZGVmaW5lIExPR19FUVVJUF9JRF8xX0xBU1RfQ09ERV9ERUZBVUxUIExPR18xWF9MQVNUX0MKI2RlZmluZSBMT0dfRVFVSVBfSURfMl9MQVNUX0NPREVfREVGQVVMVCAwCiNkZWZpbmUgTE9HX0VRVUlQX0lEXzNfTEFTVF9DT0RFX0RFRkFVTFQgMAojZGVmaW5lIExPR19FUVVJUF9JRF80X0xBU1RfQ09ERV9ERUZBVUxUIDAKI2RlZmluZSBMT0dfRVFVSVBfSURfNV9MQVNUX0NPREVfREVGQVVMVCAwCiNkZWZpbmUgTE9HX0VRVUlQX0lEXzZfTEFTVF9DT0RFX0RFRkFVTFQgMAojZGVmaW5lIExPR19FUVVJUF9JRF83X0xBU1RfQ09ERV9ERUZBVUxUIDAKI2RlZmluZSBMT0dfRVFVSVBfSURfOF9MQVNUX0NPREVfREVGQVVMVCAwCiNkZWZpbmUgTE9HX0VRVUlQX0lEXzlfTEFTVF9DT0RFX0RFRkFVTFQgMAojZGVmaW5lIExPR19FUVVJUF9JRF8xMF9MQVNUX0NPREVfREVGQVVMVCAwCiNkZWZpbmUgTE9HX0VRVUlQX0lEXzExX0xBU1RfQ09ERV9ERUZBVUxUIExPR19MVEVfTEFTVF9DCiNkZWZpbmUgTE9HX0VRVUlQX0lEXzEyX0xBU1RfQ09ERV9ERUZBVUxUIDAKI2RlZmluZSBMT0dfRVFVSVBfSURfMTNfTEFTVF9DT0RFX0RFRkFVTFQgMAojZGVmaW5lIExPR19FUVVJUF9JRF8xNF9MQVNUX0NPREVfREVGQVVMVCAwCiNkZWZpbmUgTE9HX0VRVUlQX0lEXzE1X0xBU1RfQ09ERV9ERUZBVUxUIDAKCiNlbmRpZiAvKiBMT0dfQ09ERVNfSCAqLwo=