I2lmbmRlZiBfSU1YX1JFR1NfSAojZGVmaW5lIF9JTVhfUkVHU19ICi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogKiAgTW90b3JvbGEgSU1YIHN5c3RlbSByZWdpc3RlcnMKICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAqCiAqLwoKIyBpZm5kZWYgX19BU1NFTUJMWV9fCiMgIGRlZmluZSBfX1JFRyh4KQkoKigodm9sYXRpbGUgdTMyICopKHgpKSkKIyBkZWZpbmUgX19SRUcyKHgseSkJXAoJKCBfX2J1aWx0aW5fY29uc3RhbnRfcCh5KSA/IChfX1JFRygoeCkgKyAoeSkpKSBcCgkJCSAgOiAoKih2b2xhdGlsZSB1MzIgKikoKHUzMikmX19SRUcoeCkgKyAoeSkpKSApCiMgZWxzZQojICBkZWZpbmUgX19SRUcoeCkgKHgpCiMgIGRlZmluZSBfX1JFRzIoeCx5KSAoKHgpKyh5KSkKI2VuZGlmCgojZGVmaW5lIElNWF9JT19CQVNFCQkweDAwMjAwMDAwCgovKgogKiAgUmVnaXN0ZXIgQkFTRXMsIGJhc2VkIG9uIE9GRlNFVHMKICoKICovCiNkZWZpbmUgSU1YX0FJUEkxX0JBU0UgICAgICAgICAgICAgKDB4MDAwMDAgKyBJTVhfSU9fQkFTRSkKI2RlZmluZSBJTVhfV0RUX0JBU0UgICAgICAgICAgICAgICAoMHgwMTAwMCArIElNWF9JT19CQVNFKQojZGVmaW5lIElNWF9USU0xX0JBU0UgICAgICAgICAgICAgICgweDAyMDAwICsgSU1YX0lPX0JBU0UpCiNkZWZpbmUgSU1YX1RJTTJfQkFTRSAgICAgICAgICAgICAgKDB4MDMwMDAgKyBJTVhfSU9fQkFTRSkKI2RlZmluZSBJTVhfUlRDX0JBU0UgICAgICAgICAgICAgICAoMHgwNDAwMCArIElNWF9JT19CQVNFKQojZGVmaW5lIElNWF9MQ0RDX0JBU0UgICAgICAgICAgICAgICgweDA1MDAwICsgSU1YX0lPX0JBU0UpCiNkZWZpbmUgSU1YX1VBUlQxX0JBU0UgICAgICAgICAgICAgKDB4MDYwMDAgKyBJTVhfSU9fQkFTRSkKI2RlZmluZSBJTVhfVUFSVDJfQkFTRSAgICAgICAgICAgICAoMHgwNzAwMCArIElNWF9JT19CQVNFKQojZGVmaW5lIElNWF9QV01fQkFTRSAgICAgICAgICAgICAgICgweDA4MDAwICsgSU1YX0lPX0JBU0UpCiNkZWZpbmUgSU1YX0RNQUNfQkFTRSAgICAgICAgICAgICAgKDB4MDkwMDAgKyBJTVhfSU9fQkFTRSkKI2RlZmluZSBJTVhfQUlQSTJfQkFTRSAgICAgICAgICAgICAoMHgxMDAwMCArIElNWF9JT19CQVNFKQojZGVmaW5lIElNWF9TSU1fQkFTRSAgICAgICAgICAgICAgICgweDExMDAwICsgSU1YX0lPX0JBU0UpCiNkZWZpbmUgSU1YX1VTQkRfQkFTRSAgICAgICAgICAgICAgKDB4MTIwMDAgKyBJTVhfSU9fQkFTRSkKI2RlZmluZSBJTVhfU1BJMV9CQVNFICAgICAgICAgICAgICAoMHgxMzAwMCArIElNWF9JT19CQVNFKQojZGVmaW5lIElNWF9NTUNfQkFTRSAgICAgICAgICAgICAgICgweDE0MDAwICsgSU1YX0lPX0JBU0UpCiNkZWZpbmUgSU1YX0FTUF9CQVNFICAgICAgICAgICAgICAgKDB4MTUwMDAgKyBJTVhfSU9fQkFTRSkKI2RlZmluZSBJTVhfQlRBX0JBU0UgICAgICAgICAgICAgICAoMHgxNjAwMCArIElNWF9JT19CQVNFKQojZGVmaW5lIElNWF9JMkNfQkFTRSAgICAgICAgICAgICAgICgweDE3MDAwICsgSU1YX0lPX0JBU0UpCiNkZWZpbmUgSU1YX1NTSV9CQVNFICAgICAgICAgICAgICAgKDB4MTgwMDAgKyBJTVhfSU9fQkFTRSkKI2RlZmluZSBJTVhfU1BJMl9CQVNFICAgICAgICAgICAgICAoMHgxOTAwMCArIElNWF9JT19CQVNFKQojZGVmaW5lIElNWF9NU0hDX0JBU0UgICAgICAgICAgICAgICgweDFBMDAwICsgSU1YX0lPX0JBU0UpCiNkZWZpbmUgSU1YX1BMTF9CQVNFICAgICAgICAgICAgICAgKDB4MUIwMDAgKyBJTVhfSU9fQkFTRSkKI2RlZmluZSBJTVhfU1lTQ1RSTF9CQVNFICAgICAgICAgICAoMHgxQjgwMCArIElNWF9JT19CQVNFKQojZGVmaW5lIElNWF9HUElPX0JBU0UgICAgICAgICAgICAgICgweDFDMDAwICsgSU1YX0lPX0JBU0UpCiNkZWZpbmUgSU1YX0VJTV9CQVNFICAgICAgICAgICAgICAgKDB4MjAwMDAgKyBJTVhfSU9fQkFTRSkKI2RlZmluZSBJTVhfU0RSQU1DX0JBU0UgICAgICAgICAgICAoMHgyMTAwMCArIElNWF9JT19CQVNFKQojZGVmaW5lIElNWF9NTUFfQkFTRSAgICAgICAgICAgICAgICgweDIyMDAwICsgSU1YX0lPX0JBU0UpCiNkZWZpbmUgSU1YX0FJVENfQkFTRSAgICAgICAgICAgICAgKDB4MjMwMDAgKyBJTVhfSU9fQkFTRSkKI2RlZmluZSBJTVhfQ1NJX0JBU0UgICAgICAgICAgICAgICAoMHgyNDAwMCArIElNWF9JT19CQVNFKQoKLyogU1lTQ1RSTCBSZWdpc3RlcnMgKi8KI2RlZmluZSBTSURSICAgX19SRUcoSU1YX1NZU0NUUkxfQkFTRSArIDB4NCkgLyogU2lsaWNvbiBJRCBSZWdpc3RlcgkJICAgICovCiNkZWZpbmUgRk1DUiAgIF9fUkVHKElNWF9TWVNDVFJMX0JBU0UgKyAweDgpIC8qIEZ1bmN0aW9uIE11bHRpcGxleCBDb250cm9sIFJlZ2lzdGVyICovCiNkZWZpbmUgR1BDUiAgIF9fUkVHKElNWF9TWVNDVFJMX0JBU0UgKyAweEMpIC8qIEZ1bmN0aW9uIE11bHRpcGxleCBDb250cm9sIFJlZ2lzdGVyICovCgovKiBDaGlwIFNlbGVjdCBSZWdpc3RlcnMgKi8KI2RlZmluZSBDUzBVIF9fUkVHKElNWF9FSU1fQkFTRSkgICAgICAgIC8qIENoaXAgU2VsZWN0IDAgVXBwZXIgUmVnaXN0ZXIgKi8KI2RlZmluZSBDUzBMIF9fUkVHKElNWF9FSU1fQkFTRSArIDB4NCkgIC8qIENoaXAgU2VsZWN0IDAgTG93ZXIgUmVnaXN0ZXIgKi8KI2RlZmluZSBDUzFVIF9fUkVHKElNWF9FSU1fQkFTRSArIDB4OCkgIC8qIENoaXAgU2VsZWN0IDEgVXBwZXIgUmVnaXN0ZXIgKi8KI2RlZmluZSBDUzFMIF9fUkVHKElNWF9FSU1fQkFTRSArIDB4YykgIC8qIENoaXAgU2VsZWN0IDEgTG93ZXIgUmVnaXN0ZXIgKi8KI2RlZmluZSBDUzJVIF9fUkVHKElNWF9FSU1fQkFTRSArIDB4MTApIC8qIENoaXAgU2VsZWN0IDIgVXBwZXIgUmVnaXN0ZXIgKi8KI2RlZmluZSBDUzJMIF9fUkVHKElNWF9FSU1fQkFTRSArIDB4MTQpIC8qIENoaXAgU2VsZWN0IDIgTG93ZXIgUmVnaXN0ZXIgKi8KI2RlZmluZSBDUzNVIF9fUkVHKElNWF9FSU1fQkFTRSArIDB4MTgpIC8qIENoaXAgU2VsZWN0IDMgVXBwZXIgUmVnaXN0ZXIgKi8KI2RlZmluZSBDUzNMIF9fUkVHKElNWF9FSU1fQkFTRSArIDB4MWMpIC8qIENoaXAgU2VsZWN0IDMgTG93ZXIgUmVnaXN0ZXIgKi8KI2RlZmluZSBDUzRVIF9fUkVHKElNWF9FSU1fQkFTRSArIDB4MjApIC8qIENoaXAgU2VsZWN0IDQgVXBwZXIgUmVnaXN0ZXIgKi8KI2RlZmluZSBDUzRMIF9fUkVHKElNWF9FSU1fQkFTRSArIDB4MjQpIC8qIENoaXAgU2VsZWN0IDQgTG93ZXIgUmVnaXN0ZXIgKi8KI2RlZmluZSBDUzVVIF9fUkVHKElNWF9FSU1fQkFTRSArIDB4MjgpIC8qIENoaXAgU2VsZWN0IDUgVXBwZXIgUmVnaXN0ZXIgKi8KI2RlZmluZSBDUzVMIF9fUkVHKElNWF9FSU1fQkFTRSArIDB4MmMpIC8qIENoaXAgU2VsZWN0IDUgTG93ZXIgUmVnaXN0ZXIgKi8KI2RlZmluZSBFSU0gIF9fUkVHKElNWF9FSU1fQkFTRSArIDB4MzApIC8qIEVJTSBDb25maWd1cmF0aW9uIFJlZ2lzdGVyICovCgovKiBTRFJBTSBjb250cm9sbGVyIHJlZ2lzdGVycyAqLwoKI2RlZmluZSBTRENUTDAgX19SRUcoSU1YX1NEUkFNQ19CQVNFKSAgICAgICAgLyogU0RSQU0gMCBDb250cm9sIFJlZ2lzdGVyICovCiNkZWZpbmUgU0RDVEwxIF9fUkVHKElNWF9TRFJBTUNfQkFTRSArIDB4NCkgIC8qIFNEUkFNIDEgQ29udHJvbCBSZWdpc3RlciAqLwojZGVmaW5lIFNETUlTQyBfX1JFRyhJTVhfU0RSQU1DX0JBU0UgKyAweDE0KSAvKiBNaXNjZWxsYW5lb3VzIFJlZ2lzdGVyICovCiNkZWZpbmUgU0RSU1QgIF9fUkVHKElNWF9TRFJBTUNfQkFTRSArIDB4MTgpIC8qIFNEUkFNIFJlc2V0IFJlZ2lzdGVyICovCgovKiBQTEwgcmVnaXN0ZXJzICovCiNkZWZpbmUgQ1NDUiAgIF9fUkVHKElNWF9QTExfQkFTRSkgICAgICAgIC8qIENsb2NrIFNvdXJjZSBDb250cm9sIFJlZ2lzdGVyICovCiNkZWZpbmUgTVBDVEwwIF9fUkVHKElNWF9QTExfQkFTRSArIDB4NCkgIC8qIE1DVSBQTEwgQ29udHJvbCBSZWdpc3RlciAwICovCiNkZWZpbmUgTVBDVEwxIF9fUkVHKElNWF9QTExfQkFTRSArIDB4OCkgIC8qIE1DVSBQTEwgYW5kIFN5c3RlbSBDbG9jayBSZWdpc3RlciAxICovCiNkZWZpbmUgU1BDVEwwIF9fUkVHKElNWF9QTExfQkFTRSArIDB4YykgIC8qIFN5c3RlbSBQTEwgQ29udHJvbCBSZWdpc3RlciAwICovCiNkZWZpbmUgU1BDVEwxIF9fUkVHKElNWF9QTExfQkFTRSArIDB4MTApIC8qIFN5c3RlbSBQTEwgQ29udHJvbCBSZWdpc3RlciAxICovCiNkZWZpbmUgUENEUiAgIF9fUkVHKElNWF9QTExfQkFTRSArIDB4MjApIC8qIFBlcmlwaGVyYWwgQ2xvY2sgRGl2aWRlciBSZWdpc3RlciAqLwoKI2RlZmluZSBDU0NSX01QTExfUkVTVEFSVCAoMTw8MjEpCgovKgogKiAgR1BJTyBNb2R1bGUgYW5kIEkvTyBNdWx0aXBsZXhlcgogKiAgeCA9IDAuLjMgZm9yIHJlZ19BLCByZWdfQiwgcmVnX0MsIHJlZ19ECiAqLwojZGVmaW5lIERESVIoeCkgICAgX19SRUcyKElNWF9HUElPX0JBU0UgKyAweDAwLCAoKHgpICYgMykgPDwgOCkKI2RlZmluZSBPQ1IxKHgpICAgIF9fUkVHMihJTVhfR1BJT19CQVNFICsgMHgwNCwgKCh4KSAmIDMpIDw8IDgpCiNkZWZpbmUgT0NSMih4KSAgICBfX1JFRzIoSU1YX0dQSU9fQkFTRSArIDB4MDgsICgoeCkgJiAzKSA8PCA4KQojZGVmaW5lIElDT05GQTEoeCkgX19SRUcyKElNWF9HUElPX0JBU0UgKyAweDBjLCAoKHgpICYgMykgPDwgOCkKI2RlZmluZSBJQ09ORkEyKHgpIF9fUkVHMihJTVhfR1BJT19CQVNFICsgMHgxMCwgKCh4KSAmIDMpIDw8IDgpCiNkZWZpbmUgSUNPTkZCMSh4KSBfX1JFRzIoSU1YX0dQSU9fQkFTRSArIDB4MTQsICgoeCkgJiAzKSA8PCA4KQojZGVmaW5lIElDT05GQjIoeCkgX19SRUcyKElNWF9HUElPX0JBU0UgKyAweDE4LCAoKHgpICYgMykgPDwgOCkKI2RlZmluZSBEUih4KSAgICAgIF9fUkVHMihJTVhfR1BJT19CQVNFICsgMHgxYywgKCh4KSAmIDMpIDw8IDgpCiNkZWZpbmUgR0lVUyh4KSAgICBfX1JFRzIoSU1YX0dQSU9fQkFTRSArIDB4MjAsICgoeCkgJiAzKSA8PCA4KQojZGVmaW5lIFNTUih4KSAgICAgX19SRUcyKElNWF9HUElPX0JBU0UgKyAweDI0LCAoKHgpICYgMykgPDwgOCkKI2RlZmluZSBJQ1IxKHgpICAgIF9fUkVHMihJTVhfR1BJT19CQVNFICsgMHgyOCwgKCh4KSAmIDMpIDw8IDgpCiNkZWZpbmUgSUNSMih4KSAgICBfX1JFRzIoSU1YX0dQSU9fQkFTRSArIDB4MmMsICgoeCkgJiAzKSA8PCA4KQojZGVmaW5lIElNUih4KSAgICAgX19SRUcyKElNWF9HUElPX0JBU0UgKyAweDMwLCAoKHgpICYgMykgPDwgOCkKI2RlZmluZSBJU1IoeCkgICAgIF9fUkVHMihJTVhfR1BJT19CQVNFICsgMHgzNCwgKCh4KSAmIDMpIDw8IDgpCiNkZWZpbmUgR1BSKHgpICAgICBfX1JFRzIoSU1YX0dQSU9fQkFTRSArIDB4MzgsICgoeCkgJiAzKSA8PCA4KQojZGVmaW5lIFNXUih4KSAgICAgX19SRUcyKElNWF9HUElPX0JBU0UgKyAweDNjLCAoKHgpICYgMykgPDwgOCkKI2RlZmluZSBQVUVOKHgpICAgIF9fUkVHMihJTVhfR1BJT19CQVNFICsgMHg0MCwgKCh4KSAmIDMpIDw8IDgpCgojZGVmaW5lIEdQSU9fUElOX01BU0sgMHgxZgojZGVmaW5lIEdQSU9fUE9SVF9NQVNLICgweDMgPDwgNSkKCiNkZWZpbmUgR1BJT19QT1JUQSAoMDw8NSkKI2RlZmluZSBHUElPX1BPUlRCICgxPDw1KQojZGVmaW5lIEdQSU9fUE9SVEMgKDI8PDUpCiNkZWZpbmUgR1BJT19QT1JURCAoMzw8NSkKCiNkZWZpbmUgR1BJT19PVVQgICAoMTw8NykKI2RlZmluZSBHUElPX0lOICAgICgwPDw3KQojZGVmaW5lIEdQSU9fUFVFTiAgKDE8PDgpCgojZGVmaW5lIEdQSU9fUEYgICAgKDA8PDkpCiNkZWZpbmUgR1BJT19BRiAgICAoMTw8OSkKCiNkZWZpbmUgR1BJT19PQ1JfTUFTSyAoMzw8MTApCiNkZWZpbmUgR1BJT19BSU4gICAoMDw8MTApCiNkZWZpbmUgR1BJT19CSU4gICAoMTw8MTApCiNkZWZpbmUgR1BJT19DSU4gICAoMjw8MTApCiNkZWZpbmUgR1BJT19HUElPICAoMzw8MTApCgojZGVmaW5lIEdQSU9fQU9VVCAgKDE8PDEyKQojZGVmaW5lIEdQSU9fQk9VVCAgKDE8PDEzKQoKLyogYXNzaWduZW1lbnRzIGZvciBHUElPIGFsdGVybmF0ZS9wcmltYXJ5IGZ1bmN0aW9ucyAqLwoKLyogRklYTUU6IFRoaXMgbGlzdCBpcyBub3QgY29tcGxldGVkLiBUaGUgY29ycmVjdCBkaXJlY3Rpb25zIGFyZQogKiBtaXNzaW5nIG9uIHNvbWUgKG1hbnkpIHBpbnMKICovCiNkZWZpbmUgUEEwX1BGX0EyNCAgICAgICAgICAgKCBHUElPX1BPUlRBIHwgR1BJT19QRiB8IDAgKQojZGVmaW5lIFBBMF9BSU5fU1BJMl9DTEsgICAgICggR1BJT19QT1JUQSB8IEdQSU9fT1VUIHwgR1BJT19BSU4gfCAwICkKI2RlZmluZSBQQTBfQUZfRVRNVFJBQ0VTWU5DICAoIEdQSU9fUE9SVEEgfCBHUElPX0FGIHwgMCApCiNkZWZpbmUgUEExX0FPVVRfU1BJMl9SWEQgICAgKCBHUElPX1BPUlRBIHwgR1BJT19JTiB8IEdQSU9fQU9VVCB8IDEgKQojZGVmaW5lIFBBMV9QRl9USU4gICAgICAgICAgICggR1BJT19QT1JUQSB8IEdQSU9fUEYgfCAxICkKI2RlZmluZSBQQTJfUEZfUFdNMCAgICAgICAgICAoIEdQSU9fUE9SVEEgfCBHUElPX09VVCB8IEdQSU9fUEYgfCAyICkKI2RlZmluZSBQQTNfUEZfQ1NJX01DTEsgICAgICAoIEdQSU9fUE9SVEEgfCBHUElPX1BGIHwgMyApCiNkZWZpbmUgUEE0X1BGX0NTSV9EMCAgICAgICAgKCBHUElPX1BPUlRBIHwgR1BJT19QRiB8IDQgKQojZGVmaW5lIFBBNV9QRl9DU0lfRDEgICAgICAgICggR1BJT19QT1JUQSB8IEdQSU9fUEYgfCA1ICkKI2RlZmluZSBQQTZfUEZfQ1NJX0QyICAgICAgICAoIEdQSU9fUE9SVEEgfCBHUElPX1BGIHwgNiApCiNkZWZpbmUgUEE3X1BGX0NTSV9EMyAgICAgICAgKCBHUElPX1BPUlRBIHwgR1BJT19QRiB8IDcgKQojZGVmaW5lIFBBOF9QRl9DU0lfRDQgICAgICAgICggR1BJT19QT1JUQSB8IEdQSU9fUEYgfCA4ICkKI2RlZmluZSBQQTlfUEZfQ1NJX0Q1ICAgICAgICAoIEdQSU9fUE9SVEEgfCBHUElPX1BGIHwgOSApCiNkZWZpbmUgUEExMF9QRl9DU0lfRDYgICAgICAgKCBHUElPX1BPUlRBIHwgR1BJT19QRiB8IDEwICkKI2RlZmluZSBQQTExX1BGX0NTSV9ENyAgICAgICAoIEdQSU9fUE9SVEEgfCBHUElPX1BGIHwgMTEgKQojZGVmaW5lIFBBMTJfUEZfQ1NJX1ZTWU5DICAgICggR1BJT19QT1JUQSB8IEdQSU9fUEYgfCAxMiApCiNkZWZpbmUgUEExM19QRl9DU0lfSFNZTkMgICAgKCBHUElPX1BPUlRBIHwgR1BJT19QRiB8IDEzICkKI2RlZmluZSBQQTE0X1BGX0NTSV9QSVhDTEsgICAoIEdQSU9fUE9SVEEgfCBHUElPX1BGIHwgMTQgKQojZGVmaW5lIFBBMTVfUEZfSTJDX1NEQSAgICAgICggR1BJT19QT1JUQSB8IEdQSU9fT1VUIHwgR1BJT19QRiB8IDE1ICkKI2RlZmluZSBQQTE2X1BGX0kyQ19TQ0wgICAgICAoIEdQSU9fUE9SVEEgfCBHUElPX09VVCB8IEdQSU9fUEYgfCAxNiApCiNkZWZpbmUgUEExN19BRl9FVE1UUkFDRVBLVDQgKCBHUElPX1BPUlRBIHwgR1BJT19BRiB8IDE3ICkKI2RlZmluZSBQQTE3X0FJTl9TUEkyX1NTICAgICAoIEdQSU9fUE9SVEEgfCBHUElPX0FJTiB8IDE3ICkKI2RlZmluZSBQQTE4X0FGX0VUTVRSQUNFUEtUNSAoIEdQSU9fUE9SVEEgfCBHUElPX0FGIHwgMTggKQojZGVmaW5lIFBBMTlfQUZfRVRNVFJBQ0VQS1Q2ICggR1BJT19QT1JUQSB8IEdQSU9fQUYgfCAxOSApCiNkZWZpbmUgUEEyMF9BRl9FVE1UUkFDRVBLVDcgKCBHUElPX1BPUlRBIHwgR1BJT19BRiB8IDIwICkKI2RlZmluZSBQQTIxX1BGX0EwICAgICAgICAgICAoIEdQSU9fUE9SVEEgfCBHUElPX1BGIHwgMjEgKQojZGVmaW5lIFBBMjJfUEZfQ1M0ICAgICAgICAgICggR1BJT19QT1JUQSB8IEdQSU9fUEYgfCAyMiApCiNkZWZpbmUgUEEyM19QRl9DUzUgICAgICAgICAgKCBHUElPX1BPUlRBIHwgR1BJT19QRiB8IDIzICkKI2RlZmluZSBQQTI0X1BGX0ExNiAgICAgICAgICAoIEdQSU9fUE9SVEEgfCBHUElPX1BGIHwgMjQgKQojZGVmaW5lIFBBMjRfQUZfRVRNVFJBQ0VQS1QwICggR1BJT19QT1JUQSB8IEdQSU9fQUYgfCAyNCApCiNkZWZpbmUgUEEyNV9QRl9BMTcgICAgICAgICAgKCBHUElPX1BPUlRBIHwgR1BJT19QRiB8IDI1ICkKI2RlZmluZSBQQTI1X0FGX0VUTVRSQUNFUEtUMSAoIEdQSU9fUE9SVEEgfCBHUElPX0FGIHwgMjUgKQojZGVmaW5lIFBBMjZfUEZfQTE4ICAgICAgICAgICggR1BJT19QT1JUQSB8IEdQSU9fUEYgfCAyNiApCiNkZWZpbmUgUEEyNl9BRl9FVE1UUkFDRVBLVDIgKCBHUElPX1BPUlRBIHwgR1BJT19BRiB8IDI2ICkKI2RlZmluZSBQQTI3X1BGX0ExOSAgICAgICAgICAoIEdQSU9fUE9SVEEgfCBHUElPX1BGIHwgMjcgKQojZGVmaW5lIFBBMjdfQUZfRVRNVFJBQ0VQS1QzICggR1BJT19QT1JUQSB8IEdQSU9fQUYgfCAyNyApCiNkZWZpbmUgUEEyOF9QRl9BMjAgICAgICAgICAgKCBHUElPX1BPUlRBIHwgR1BJT19QRiB8IDI4ICkKI2RlZmluZSBQQTI4X0FGX0VUTVBJUEVTVEFUMCAoIEdQSU9fUE9SVEEgfCBHUElPX0FGIHwgMjggKQojZGVmaW5lIFBBMjlfUEZfQTIxICAgICAgICAgICggR1BJT19QT1JUQSB8IEdQSU9fUEYgfCAyOSApCiNkZWZpbmUgUEEyOV9BRl9FVE1QSVBFU1RBVDEgKCBHUElPX1BPUlRBIHwgR1BJT19BRiB8IDI5ICkKI2RlZmluZSBQQTMwX1BGX0EyMiAgICAgICAgICAoIEdQSU9fUE9SVEEgfCBHUElPX1BGIHwgMzAgKQojZGVmaW5lIFBBMzBfQUZfRVRNUElQRVNUQVQyICggR1BJT19QT1JUQSB8IEdQSU9fQUYgfCAzMCApCiNkZWZpbmUgUEEzMV9QRl9BMjMgICAgICAgICAgKCBHUElPX1BPUlRBIHwgR1BJT19QRiB8IDMxICkKI2RlZmluZSBQQTMxX0FGX0VUTVRSQUNFQ0xLICAoIEdQSU9fUE9SVEEgfCBHUElPX0FGIHwgMzEgKQojZGVmaW5lIFBCOF9QRl9TRF9EQVQwICAgICAgICggR1BJT19QT1JUQiB8IEdQSU9fUEYgfCBHUElPX1BVRU4gfCA4ICkKI2RlZmluZSBQQjhfQUZfTVNfUElPICAgICAgICAoIEdQSU9fUE9SVEIgfCBHUElPX0FGIHwgOCApCiNkZWZpbmUgUEI5X1BGX1NEX0RBVDEgICAgICAgKCBHUElPX1BPUlRCIHwgR1BJT19QRiB8IEdQSU9fUFVFTiAgfCA5ICkKI2RlZmluZSBQQjlfQUZfTVNfUEkxICAgICAgICAoIEdQSU9fUE9SVEIgfCBHUElPX0FGIHwgOSApCiNkZWZpbmUgUEIxMF9QRl9TRF9EQVQyICAgICAgKCBHUElPX1BPUlRCIHwgR1BJT19QRiB8IEdQSU9fUFVFTiAgfCAxMCApCiNkZWZpbmUgUEIxMF9BRl9NU19TQ0xLSSAgICAgKCBHUElPX1BPUlRCIHwgR1BJT19BRiB8IDEwICkKI2RlZmluZSBQQjExX1BGX1NEX0RBVDMgICAgICAoIEdQSU9fUE9SVEIgfCBHUElPX1BGIHwgR1BJT19QVUVOICB8IDExICkKI2RlZmluZSBQQjExX0FGX01TX1NESU8gICAgICAoIEdQSU9fUE9SVEIgfCBHUElPX0FGIHwgMTEgKQojZGVmaW5lIFBCMTJfUEZfU0RfQ0xLICAgICAgICggR1BJT19QT1JUQiB8IEdQSU9fUEYgfCBHUElPX09VVCB8IDEyICkKI2RlZmluZSBQQjEyX0FGX01TX1NDTEswICAgICAoIEdQSU9fUE9SVEIgfCBHUElPX0FGIHwgMTIgKQojZGVmaW5lIFBCMTNfUEZfU0RfQ01EICAgICAgICggR1BJT19QT1JUQiB8IEdQSU9fUEYgfCBHUElPX09VVCB8IEdQSU9fUFVFTiB8IDEzICkKI2RlZmluZSBQQjEzX0FGX01TX0JTICAgICAgICAoIEdQSU9fUE9SVEIgfCBHUElPX0FGIHwgMTMgKQojZGVmaW5lIFBCMTRfQUZfU1NJX1JYRlMgICAgICggR1BJT19QT1JUQiB8IEdQSU9fQUYgfCAxNCApCiNkZWZpbmUgUEIxNV9BRl9TU0lfUlhDTEsgICAgKCBHUElPX1BPUlRCIHwgR1BJT19BRiB8IDE1ICkKI2RlZmluZSBQQjE2X0FGX1NTSV9SWERBVCAgICAoIEdQSU9fUE9SVEIgfCBHUElPX0lOIHwgR1BJT19BRiB8IDE2ICkKI2RlZmluZSBQQjE3X0FGX1NTSV9UWERBVCAgICAoIEdQSU9fUE9SVEIgfCBHUElPX09VVCB8IEdQSU9fQUYgfCAxNyApCiNkZWZpbmUgUEIxOF9BRl9TU0lfVFhGUyAgICAgKCBHUElPX1BPUlRCIHwgR1BJT19BRiB8IDE4ICkKI2RlZmluZSBQQjE5X0FGX1NTSV9UWENMSyAgICAoIEdQSU9fUE9SVEIgfCBHUElPX0FGIHwgMTkgKQojZGVmaW5lIFBCMjBfUEZfVVNCRF9BRkUgICAgICggR1BJT19QT1JUQiB8IEdQSU9fUEYgfCAyMCApCiNkZWZpbmUgUEIyMV9QRl9VU0JEX09FICAgICAgKCBHUElPX1BPUlRCIHwgR1BJT19QRiB8IDIxICkKI2RlZmluZSBQQjIyX1BGVVNCRF9SQ1YgICAgICAoIEdQSU9fUE9SVEIgfCBHUElPX1BGIHwgMjIgKQojZGVmaW5lIFBCMjNfUEZfVVNCRF9TVVNQTkQgICggR1BJT19QT1JUQiB8IEdQSU9fUEYgfCAyMyApCiNkZWZpbmUgUEIyNF9QRl9VU0JEX1ZQICAgICAgKCBHUElPX1BPUlRCIHwgR1BJT19QRiB8IDI0ICkKI2RlZmluZSBQQjI1X1BGX1VTQkRfVk0gICAgICAoIEdQSU9fUE9SVEIgfCBHUElPX1BGIHwgMjUgKQojZGVmaW5lIFBCMjZfUEZfVVNCRF9WUE8gICAgICggR1BJT19QT1JUQiB8IEdQSU9fUEYgfCAyNiApCiNkZWZpbmUgUEIyN19QRl9VU0JEX1ZNTyAgICAgKCBHUElPX1BPUlRCIHwgR1BJT19QRiB8IDI3ICkKI2RlZmluZSBQQjI4X1BGX1VBUlQyX0NUUyAgICAoIEdQSU9fUE9SVEIgfCBHUElPX09VVCB8IEdQSU9fUEYgfCAyOCApCiNkZWZpbmUgUEIyOV9QRl9VQVJUMl9SVFMgICAgKCBHUElPX1BPUlRCIHwgR1BJT19JTiB8IEdQSU9fUEYgfCAyOSApCiNkZWZpbmUgUEIzMF9QRl9VQVJUMl9UWEQgICAgKCBHUElPX1BPUlRCIHwgR1BJT19PVVQgfCBHUElPX1BGIHwgMzAgKQojZGVmaW5lIFBCMzFfUEZfVUFSVDJfUlhEICAgICggR1BJT19QT1JUQiB8IEdQSU9fSU4gfCBHUElPX1BGIHwgMzEgKQojZGVmaW5lIFBDM19QRl9TU0lfUlhGUyAgICAgICggR1BJT19QT1JUQyB8IEdQSU9fUEYgfCAzICkKI2RlZmluZSBQQzRfUEZfU1NJX1JYQ0xLICAgICAoIEdQSU9fUE9SVEMgfCBHUElPX1BGIHwgNCApCiNkZWZpbmUgUEM1X1BGX1NTSV9SWERBVCAgICAgKCBHUElPX1BPUlRDIHwgR1BJT19JTiB8IEdQSU9fUEYgfCA1ICkKI2RlZmluZSBQQzZfUEZfU1NJX1RYREFUICAgICAoIEdQSU9fUE9SVEMgfCBHUElPX09VVCB8IEdQSU9fUEYgfCA2ICkKI2RlZmluZSBQQzdfUEZfU1NJX1RYRlMgICAgICAoIEdQSU9fUE9SVEMgfCBHUElPX1BGIHwgNyApCiNkZWZpbmUgUEM4X1BGX1NTSV9UWENMSyAgICAgKCBHUElPX1BPUlRDIHwgR1BJT19QRiB8IDggKQojZGVmaW5lIFBDOV9QRl9VQVJUMV9DVFMgICAgICggR1BJT19QT1JUQyB8IEdQSU9fT1VUIHwgR1BJT19QRiB8IDkgKQojZGVmaW5lIFBDMTBfUEZfVUFSVDFfUlRTICAgICggR1BJT19QT1JUQyB8IEdQSU9fSU4gfCBHUElPX1BGIHwgMTAgKQojZGVmaW5lIFBDMTFfUEZfVUFSVDFfVFhEICAgICggR1BJT19QT1JUQyB8IEdQSU9fT1VUIHwgR1BJT19QRiB8IDExICkKI2RlZmluZSBQQzEyX1BGX1VBUlQxX1JYRCAgICAoIEdQSU9fUE9SVEMgfCBHUElPX0lOIHwgR1BJT19QRiB8IDEyICkKI2RlZmluZSBQQzEzX1BGX1NQSTFfU1BJX1JEWSAoIEdQSU9fUE9SVEMgfCBHUElPX1BGIHwgMTMgKQojZGVmaW5lIFBDMTRfUEZfU1BJMV9TQ0xLICAgICggR1BJT19QT1JUQyB8IEdQSU9fUEYgfCAxNCApCiNkZWZpbmUgUEMxNV9QRl9TUEkxX1NTICAgICAgKCBHUElPX1BPUlRDIHwgR1BJT19QRiB8IDE1ICkKI2RlZmluZSBQQzE2X1BGX1NQSTFfTUlTTyAgICAoIEdQSU9fUE9SVEMgfCBHUElPX1BGIHwgMTYgKQojZGVmaW5lIFBDMTdfUEZfU1BJMV9NT1NJICAgICggR1BJT19QT1JUQyB8IEdQSU9fUEYgfCAxNyApCiNkZWZpbmUgUEQ2X1BGX0xTQ0xLICAgICAgICAgKCBHUElPX1BPUlREIHwgR1BJT19PVVQgfCBHUElPX1BGIHwgNiApCiNkZWZpbmUgUEQ3X1BGX1JFViAgICAgICAgICAgKCBHUElPX1BPUlREIHwgR1BJT19QRiB8IDcgKQojZGVmaW5lIFBEN19BRl9VQVJUMl9EVFIgICAgICggR1BJT19QT1JURCB8IEdQSU9fSU4gfCBHUElPX0FGIHwgNyApCiNkZWZpbmUgUEQ3X0FJTl9TUEkyX1NDTEsgICAgKCBHUElPX1BPUlREIHwgR1BJT19BSU4gfCA3ICkKI2RlZmluZSBQRDhfUEZfQ0xTICAgICAgICAgICAoIEdQSU9fUE9SVEQgfCBHUElPX1BGIHwgOCApCiNkZWZpbmUgUEQ4X0FGX1VBUlQyX0RDRCAgICAgKCBHUElPX1BPUlREIHwgR1BJT19PVVQgfCBHUElPX0FGIHwgOCApCiNkZWZpbmUgUEQ4X0FJTl9TUEkyX1NTICAgICAgKCBHUElPX1BPUlREIHwgR1BJT19BSU4gfCA4ICkKI2RlZmluZSBQRDlfUEZfUFMgICAgICAgICAgICAoIEdQSU9fUE9SVEQgfCBHUElPX1BGIHwgOSApCiNkZWZpbmUgUEQ5X0FGX1VBUlQyX1JJICAgICAgKCBHUElPX1BPUlREIHwgR1BJT19PVVQgfCBHUElPX0FGIHwgOSApCiNkZWZpbmUgUEQ5X0FPVVRfU1BJMl9SWEQgICAgKCBHUElPX1BPUlREIHwgR1BJT19JTiB8IEdQSU9fQU9VVCB8IDkgKQojZGVmaW5lIFBEMTBfUEZfU1BMX1NQUiAgICAgICggR1BJT19QT1JURCB8IEdQSU9fT1VUIHwgR1BJT19QRiB8IDEwICkKI2RlZmluZSBQRDEwX0FGX1VBUlQyX0RTUiAgICAoIEdQSU9fUE9SVEQgfCBHUElPX09VVCB8IEdQSU9fQUYgfCAxMCApCiNkZWZpbmUgUEQxMF9BSU5fU1BJMl9UWEQgICAgKCBHUElPX1BPUlREIHwgR1BJT19PVVQgfCBHUElPX0FJTiB8IDEwICkKI2RlZmluZSBQRDExX1BGX0NPTlRSQVNUICAgICAoIEdQSU9fUE9SVEQgfCBHUElPX09VVCB8IEdQSU9fUEYgfCAxMSApCiNkZWZpbmUgUEQxMl9QRl9BQ0RfT0UgICAgICAgKCBHUElPX1BPUlREIHwgR1BJT19PVVQgfCBHUElPX1BGIHwgMTIgKQojZGVmaW5lIFBEMTNfUEZfTFBfSFNZTkMgICAgICggR1BJT19QT1JURCB8IEdQSU9fT1VUIHwgR1BJT19QRiB8IDEzICkKI2RlZmluZSBQRDE0X1BGX0ZMTV9WU1lOQyAgICAoIEdQSU9fUE9SVEQgfCBHUElPX09VVCB8IEdQSU9fUEYgfCAxNCApCiNkZWZpbmUgUEQxNV9QRl9MRDAgICAgICAgICAgKCBHUElPX1BPUlREIHwgR1BJT19PVVQgfCBHUElPX1BGIHwgMTUgKQojZGVmaW5lIFBEMTZfUEZfTEQxICAgICAgICAgICggR1BJT19QT1JURCB8IEdQSU9fT1VUIHwgR1BJT19QRiB8IDE2ICkKI2RlZmluZSBQRDE3X1BGX0xEMiAgICAgICAgICAoIEdQSU9fUE9SVEQgfCBHUElPX09VVCB8IEdQSU9fUEYgfCAxNyApCiNkZWZpbmUgUEQxOF9QRl9MRDMgICAgICAgICAgKCBHUElPX1BPUlREIHwgR1BJT19PVVQgfCBHUElPX1BGIHwgMTggKQojZGVmaW5lIFBEMTlfUEZfTEQ0ICAgICAgICAgICggR1BJT19QT1JURCB8IEdQSU9fT1VUIHwgR1BJT19QRiB8IDE5ICkKI2RlZmluZSBQRDIwX1BGX0xENSAgICAgICAgICAoIEdQSU9fUE9SVEQgfCBHUElPX09VVCB8IEdQSU9fUEYgfCAyMCApCiNkZWZpbmUgUEQyMV9QRl9MRDYgICAgICAgICAgKCBHUElPX1BPUlREIHwgR1BJT19PVVQgfCBHUElPX1BGIHwgMjEgKQojZGVmaW5lIFBEMjJfUEZfTEQ3ICAgICAgICAgICggR1BJT19QT1JURCB8IEdQSU9fT1VUIHwgR1BJT19QRiB8IDIyICkKI2RlZmluZSBQRDIzX1BGX0xEOCAgICAgICAgICAoIEdQSU9fUE9SVEQgfCBHUElPX09VVCB8IEdQSU9fUEYgfCAyMyApCiNkZWZpbmUgUEQyNF9QRl9MRDkgICAgICAgICAgKCBHUElPX1BPUlREIHwgR1BJT19PVVQgfCBHUElPX1BGIHwgMjQgKQojZGVmaW5lIFBEMjVfUEZfTEQxMCAgICAgICAgICggR1BJT19QT1JURCB8IEdQSU9fT1VUIHwgR1BJT19QRiB8IDI1ICkKI2RlZmluZSBQRDI2X1BGX0xEMTEgICAgICAgICAoIEdQSU9fUE9SVEQgfCBHUElPX09VVCB8IEdQSU9fUEYgfCAyNiApCiNkZWZpbmUgUEQyN19QRl9MRDEyICAgICAgICAgKCBHUElPX1BPUlREIHwgR1BJT19PVVQgfCBHUElPX1BGIHwgMjcgKQojZGVmaW5lIFBEMjhfUEZfTEQxMyAgICAgICAgICggR1BJT19QT1JURCB8IEdQSU9fT1VUIHwgR1BJT19QRiB8IDI4ICkKI2RlZmluZSBQRDI5X1BGX0xEMTQgICAgICAgICAoIEdQSU9fUE9SVEQgfCBHUElPX09VVCB8IEdQSU9fUEYgfCAyOSApCiNkZWZpbmUgUEQzMF9QRl9MRDE1ICAgICAgICAgKCBHUElPX1BPUlREIHwgR1BJT19PVVQgfCBHUElPX1BGIHwgMzAgKQojZGVmaW5lIFBEMzFfUEZfVE1SMk9VVCAgICAgICggR1BJT19QT1JURCB8IEdQSU9fUEYgfCAzMSApCiNkZWZpbmUgUEQzMV9CSU5fU1BJMl9UWEQgICAgKCBHUElPX1BPUlREIHwgR1BJT19CSU4gfCAzMSApCgovKgogKiAgRE1BIENvbnRyb2xsZXIKICovCiNkZWZpbmUgRENSICAgICBfX1JFRyhJTVhfRE1BQ19CQVNFICsweDAwKQkvKiBETUEgQ29udHJvbCBSZWdpc3RlciAqLwojZGVmaW5lIERJU1IgICAgX19SRUcoSU1YX0RNQUNfQkFTRSArMHgwNCkJLyogRE1BIEludGVycnVwdCBzdGF0dXMgUmVnaXN0ZXIgKi8KI2RlZmluZSBESU1SICAgIF9fUkVHKElNWF9ETUFDX0JBU0UgKzB4MDgpCS8qIERNQSBJbnRlcnJ1cHQgbWFzayBSZWdpc3RlciAqLwojZGVmaW5lIERCVE9TUiAgX19SRUcoSU1YX0RNQUNfQkFTRSArMHgwYykJLyogRE1BIEJ1cnN0IHRpbWVvdXQgc3RhdHVzIFJlZ2lzdGVyICovCiNkZWZpbmUgRFJUT1NSICBfX1JFRyhJTVhfRE1BQ19CQVNFICsweDEwKQkvKiBETUEgUmVxdWVzdCB0aW1lb3V0IFJlZ2lzdGVyICovCiNkZWZpbmUgRFNFU1IgICBfX1JFRyhJTVhfRE1BQ19CQVNFICsweDE0KQkvKiBETUEgVHJhbnNmZXIgRXJyb3IgU3RhdHVzIFJlZ2lzdGVyICovCiNkZWZpbmUgREJPU1IgICBfX1JFRyhJTVhfRE1BQ19CQVNFICsweDE4KQkvKiBETUEgQnVmZmVyIG92ZXJmbG93IHN0YXR1cyBSZWdpc3RlciAqLwojZGVmaW5lIERCVE9DUiAgX19SRUcoSU1YX0RNQUNfQkFTRSArMHgxYykJLyogRE1BIEJ1cnN0IHRpbWVvdXQgY29udHJvbCBSZWdpc3RlciAqLwojZGVmaW5lIFdTUkEgICAgX19SRUcoSU1YX0RNQUNfQkFTRSArMHg0MCkJLyogVy1TaXplIFJlZ2lzdGVyIEEgKi8KI2RlZmluZSBYU1JBICAgIF9fUkVHKElNWF9ETUFDX0JBU0UgKzB4NDQpCS8qIFgtU2l6ZSBSZWdpc3RlciBBICovCiNkZWZpbmUgWVNSQSAgICBfX1JFRyhJTVhfRE1BQ19CQVNFICsweDQ4KQkvKiBZLVNpemUgUmVnaXN0ZXIgQSAqLwojZGVmaW5lIFdTUkIgICAgX19SRUcoSU1YX0RNQUNfQkFTRSArMHg0YykJLyogVy1TaXplIFJlZ2lzdGVyIEIgKi8KI2RlZmluZSBYU1JCICAgIF9fUkVHKElNWF9ETUFDX0JBU0UgKzB4NTApCS8qIFgtU2l6ZSBSZWdpc3RlciBCICovCiNkZWZpbmUgWVNSQiAgICBfX1JFRyhJTVhfRE1BQ19CQVNFICsweDU0KQkvKiBZLVNpemUgUmVnaXN0ZXIgQiAqLwojZGVmaW5lIFNBUih4KSAgX19SRUcyKCBJTVhfRE1BQ19CQVNFICsgMHg4MCwgKHgpIDw8IDYpCS8qIFNvdXJjZSBBZGRyZXNzIFJlZ2lzdGVycyAqLwojZGVmaW5lIERBUih4KSAgX19SRUcyKCBJTVhfRE1BQ19CQVNFICsgMHg4NCwgKHgpIDw8IDYpCS8qIERlc3RpbmF0aW9uIEFkZHJlc3MgUmVnaXN0ZXJzICovCiNkZWZpbmUgQ05UUih4KSBfX1JFRzIoIElNWF9ETUFDX0JBU0UgKyAweDg4LCAoeCkgPDwgNikJLyogQ291bnQgUmVnaXN0ZXJzICovCiNkZWZpbmUgQ0NSKHgpICBfX1JFRzIoIElNWF9ETUFDX0JBU0UgKyAweDhjLCAoeCkgPDwgNikJLyqgQ29udHJvbCBSZWdpc3RlcnMgKi8KI2RlZmluZSBSU1NSKHgpIF9fUkVHMiggSU1YX0RNQUNfQkFTRSArIDB4OTAsICh4KSA8PCA2KQkvKiBSZXF1ZXN0IHNvdXJjZSBzZWxlY3QgUmVnaXN0ZXJzICovCiNkZWZpbmUgQkxSKHgpICBfX1JFRzIoIElNWF9ETUFDX0JBU0UgKyAweDk0LCAoeCkgPDwgNikJLyogQnVyc3QgbGVuZ3RoIFJlZ2lzdGVycyAqLwojZGVmaW5lIFJUT1IoeCkgX19SRUcyKCBJTVhfRE1BQ19CQVNFICsgMHg5OCwgKHgpIDw8IDYpCS8qIFJlcXVlc3QgdGltZW91dCBSZWdpc3RlcnMgKi8KI2RlZmluZSBCVUNSKHgpIF9fUkVHMiggSU1YX0RNQUNfQkFTRSArIDB4OTgsICh4KSA8PCA2KQkvKiBCdXMgVXRpbGl6YXRpb24gUmVnaXN0ZXJzICovCgovKiBUT0RPOiBkZWZpbmUgRE1BX1JFUSBsaW5lcyAqLwoKI2RlZmluZSBEQ1JfRFJTVCAgICAgICAgICAgKDE8PDEpCiNkZWZpbmUgRENSX0RFTiAgICAgICAgICAgICgxPDwwKQojZGVmaW5lIERCVE9DUl9FTiAgICAgICAgICAoMTw8MTUpCiNkZWZpbmUgREJUT0NSX0NOVCh4KSAgICAgICgoeCkgJiAweDdmZmYgKQojZGVmaW5lIENOVFJfQ05UKHgpICAgICAgICAoKHgpICYgMHhmZmZmZmYgKQojZGVmaW5lIENDUl9ETU9EX0xJTkVBUiAgICAoIDB4MCA8PCAxMiApCiNkZWZpbmUgQ0NSX0RNT0RfMkQgICAgICAgICggMHgxIDw8IDEyICkKI2RlZmluZSBDQ1JfRE1PRF9GSUZPICAgICAgKCAweDIgPDwgMTIgKQojZGVmaW5lIENDUl9ETU9EX0VPQkZJRk8gICAoIDB4MyA8PCAxMiApCiNkZWZpbmUgQ0NSX1NNT0RfTElORUFSICAgICggMHgwIDw8IDEwICkKI2RlZmluZSBDQ1JfU01PRF8yRCAgICAgICAgKCAweDEgPDwgMTAgKQojZGVmaW5lIENDUl9TTU9EX0ZJRk8gICAgICAoIDB4MiA8PCAxMCApCiNkZWZpbmUgQ0NSX1NNT0RfRU9CRklGTyAgICggMHgzIDw8IDEwICkKI2RlZmluZSBDQ1JfTURJUl9ERUMgICAgICAgKDE8PDkpCiNkZWZpbmUgQ0NSX01TRUxfQiAgICAgICAgICgxPDw4KQojZGVmaW5lIENDUl9EU0laXzMyICAgICAgICAoIDB4MCA8PCA2ICkKI2RlZmluZSBDQ1JfRFNJWl84ICAgICAgICAgKCAweDEgPDwgNiApCiNkZWZpbmUgQ0NSX0RTSVpfMTYgICAgICAgICggMHgyIDw8IDYgKQojZGVmaW5lIENDUl9TU0laXzMyICAgICAgICAoIDB4MCA8PCA0ICkKI2RlZmluZSBDQ1JfU1NJWl84ICAgICAgICAgKCAweDEgPDwgNCApCiNkZWZpbmUgQ0NSX1NTSVpfMTYgICAgICAgICggMHgyIDw8IDQgKQojZGVmaW5lIENDUl9SRU4gICAgICAgICAgICAoMTw8MykKI2RlZmluZSBDQ1JfUlBUICAgICAgICAgICAgKDE8PDIpCiNkZWZpbmUgQ0NSX0ZSQyAgICAgICAgICAgICgxPDwxKQojZGVmaW5lIENDUl9DRU4gICAgICAgICAgICAoMTw8MCkKI2RlZmluZSBSVE9SX0VOICAgICAgICAgICAgKDE8PDE1KQojZGVmaW5lIFJUT1JfQ0xLICAgICAgICAgICAoMTw8MTQpCiNkZWZpbmUgUlRPUl9QU0MgICAgICAgICAgICgxPDwxMykKCi8qCiAqIExDRCBDb250cm9sbGVyCiAqLwoKI2RlZmluZSBMQ0RDX1NTQQlfX1JFRyhJTVhfTENEQ19CQVNFKzB4MDApCgojZGVmaW5lIExDRENfU0laRQlfX1JFRyhJTVhfTENEQ19CQVNFKzB4MDQpCiNkZWZpbmUgU0laRV9YTUFYKHgpCSgoKCh4KSA+PiA0KSAmIDB4M2YpIDw8IDIwKQojZGVmaW5lIFNJWkVfWU1BWCh5KSAgICAoICh5KSAmIDB4MWZmICkKCiNkZWZpbmUgTENEQ19WUFcJX19SRUcoSU1YX0xDRENfQkFTRSsweDA4KQojZGVmaW5lIFZQV19WUFcoeCkJKCAoeCkgJiAweDNmZiApCgojZGVmaW5lIExDRENfQ1BPUwlfX1JFRyhJTVhfTENEQ19CQVNFKzB4MEMpCiNkZWZpbmUgQ1BPU19DQzEgICAgICAgICgxPDwzMSkKI2RlZmluZSBDUE9TX0NDMCAgICAgICAgKDE8PDMwKQojZGVmaW5lIENQT1NfT1AgICAgICAgICAoMTw8MjgpCiNkZWZpbmUgQ1BPU19DWFAoeCkgICAgICgoKHgpICYgM2ZmKSA8PCAxNikKI2RlZmluZSBDUE9TX0NZUCh5KSAgICAgKCh5KSAmIDB4MWZmKQoKI2RlZmluZSBMQ0RDX0xDV0hCCV9fUkVHKElNWF9MQ0RDX0JBU0UrMHgxMCkKI2RlZmluZSBMQ1dIQl9CS19FTiAgICAgKDE8PDMxKQojZGVmaW5lIExDV0hCX0NXKHcpICAgICAoKCh3KSAmIDB4MWYpIDw8IDI0KQojZGVmaW5lIExDV0hCX0NIKGgpICAgICAoKChoKSAmIDB4MWYpIDw8IDE2KQojZGVmaW5lIExDV0hCX0JEKHgpICAgICAoKHgpICYgMHhmZikKCiNkZWZpbmUgTENEQ19MQ0hDQwlfX1JFRyhJTVhfTENEQ19CQVNFKzB4MTQpCiNkZWZpbmUgTENIQ0NfQ1VSX0NPTF9SKHIpICgoKHIpICYgMHgxZikgPDwgMTEpCiNkZWZpbmUgTENIQ0NfQ1VSX0NPTF9HKGcpICgoKGcpICYgMHgzZikgPDwgNSkKI2RlZmluZSBMQ0hDQ19DVVJfQ09MX0IoYikgKChiKSAmIDB4MWYpCgojZGVmaW5lIExDRENfUENSCV9fUkVHKElNWF9MQ0RDX0JBU0UrMHgxOCkKI2RlZmluZSBQQ1JfVEZUICAgICAgICAgKDE8PDMxKQojZGVmaW5lIFBDUl9DT0xPUiAgICAgICAoMTw8MzApCiNkZWZpbmUgUENSX1BCU0laXzEgICAgICgwPDwyOCkKI2RlZmluZSBQQ1JfUEJTSVpfMiAgICAgKDE8PDI4KQojZGVmaW5lIFBDUl9QQlNJWl80ICAgICAoMjw8MjgpCiNkZWZpbmUgUENSX1BCU0laXzggICAgICgzPDwyOCkKI2RlZmluZSBQQ1JfQlBJWF8xICAgICAgKDA8PDI1KQojZGVmaW5lIFBDUl9CUElYXzIgICAgICAoMTw8MjUpCiNkZWZpbmUgUENSX0JQSVhfNCAgICAgICgyPDwyNSkKI2RlZmluZSBQQ1JfQlBJWF84ICAgICAgKDM8PDI1KQojZGVmaW5lIFBDUl9CUElYXzEyICAgICAoNDw8MjUpCiNkZWZpbmUgUENSX0JQSVhfMTYgICAgICg0PDwyNSkKI2RlZmluZSBQQ1JfUElYUE9MICAgICAgKDE8PDI0KQojZGVmaW5lIFBDUl9GTE1QT0wgICAgICAoMTw8MjMpCiNkZWZpbmUgUENSX0xQUE9MICAgICAgICgxPDwyMikKI2RlZmluZSBQQ1JfQ0xLUE9MICAgICAgKDE8PDIxKQojZGVmaW5lIFBDUl9PRVBPTCAgICAgICAoMTw8MjApCiNkZWZpbmUgUENSX1NDTEtJRExFICAgICgxPDwxOSkKI2RlZmluZSBQQ1JfRU5EX1NFTCAgICAgKDE8PDE4KQojZGVmaW5lIFBDUl9FTkRfQllURV9TV0FQICgxPDwxNykKI2RlZmluZSBQQ1JfUkVWX1ZTICAgICAgKDE8PDE2KQojZGVmaW5lIFBDUl9BQ0RfU0VMICAgICAoMTw8MTUpCiNkZWZpbmUgUENSX0FDRCh4KSAgICAgICgoKHgpICYgMHg3ZikgPDwgOCkKI2RlZmluZSBQQ1JfU0NMS19TRUwgICAgKDE8PDcpCiNkZWZpbmUgUENSX1NIQVJQICAgICAgICgxPDw2KQojZGVmaW5lIFBDUl9QQ0QoeCkgICAgICAoKHgpICYgMHgzZikKCiNkZWZpbmUgTENEQ19IQ1IJX19SRUcoSU1YX0xDRENfQkFTRSsweDFDKQojZGVmaW5lIEhDUl9IX1dJRFRIKHgpICAoKCh4KSAmIDB4M2YpIDw8IDI2KQojZGVmaW5lIEhDUl9IX1dBSVRfMSh4KSAoKCh4KSAmIDB4ZmYpIDw8IDgpCiNkZWZpbmUgSENSX0hfV0FJVF8yKHgpICgoeCkgJiAweGZmKQoKI2RlZmluZSBMQ0RDX1ZDUglfX1JFRyhJTVhfTENEQ19CQVNFKzB4MjApCiNkZWZpbmUgVkNSX1ZfV0lEVEgoeCkgICgoKHgpICYgMHgzZikgPDwgMjYpCiNkZWZpbmUgVkNSX1ZfV0FJVF8xKHgpICgoKHgpICYgMHhmZikgPDwgOCkKI2RlZmluZSBWQ1JfVl9XQUlUXzIoeCkgKCh4KSAmIDB4ZmYpCgojZGVmaW5lIExDRENfUE9TCV9fUkVHKElNWF9MQ0RDX0JBU0UrMHgyNCkKI2RlZmluZSBQT1NfUE9TKHgpICAgICAgKCh4KSAmIDFmKQoKI2RlZmluZSBMQ0RDX0xTQ1IxCV9fUkVHKElNWF9MQ0RDX0JBU0UrMHgyOCkKI2RlZmluZSBMU0NSMV9HUkFZMSh4KSAgKCgoeCkgJiAweGYpIDw8IDQpCiNkZWZpbmUgTFNDUjFfR1JBWTIoeCkgICgoeCkgJiAweGYpCgojZGVmaW5lIExDRENfUFdNUglfX1JFRyhJTVhfTENEQ19CQVNFKzB4MkMpCiNkZWZpbmUgUFdNUl9DTFMoeCkgICAgICgoKHgpICYgMHgxZmYpIDw8IDE2KQojZGVmaW5lIFBXTVJfTERNU0sgICAgICAoMTw8MTUpCiNkZWZpbmUgUFdNUl9TQ1IxICAgICAgICgxPDwxMCkKI2RlZmluZSBQV01SX1NDUjAgICAgICAgKDE8PDkpCiNkZWZpbmUgUFdNUl9DQ19FTiAgICAgICgxPDw4KQojZGVmaW5lIFBXTVJfUFcoeCkgICAgICAoKHgpICYgMHhmZikKCiNkZWZpbmUgTENEQ19ETUFDUglfX1JFRyhJTVhfTENEQ19CQVNFKzB4MzApCiNkZWZpbmUgRE1BQ1JfQlVSU1QgICAgICgxPDwzMSkKI2RlZmluZSBETUFDUl9ITSh4KSAgICAgKCgoeCkgJiAweGYpIDw8IDE2KQojZGVmaW5lIERNQUNSX1RNKHgpICAgICAoKHgpICYweGYpCgojZGVmaW5lIExDRENfUk1DUglfX1JFRyhJTVhfTENEQ19CQVNFKzB4MzQpCiNkZWZpbmUgUk1DUl9MQ0RDX0VOCQkoMTw8MSkKI2RlZmluZSBSTUNSX1NFTEZfUkVGCQkoMTw8MCkKCiNkZWZpbmUgTENEQ19MQ0RJQ1IJX19SRUcoSU1YX0xDRENfQkFTRSsweDM4KQojZGVmaW5lIExDRElDUl9JTlRfU1lOICAoMTw8MikKI2RlZmluZSBMQ0RJQ1JfSU5UX0NPTiAgKDEpCgojZGVmaW5lIExDRENfTENESVNSCV9fUkVHKElNWF9MQ0RDX0JBU0UrMHg0MCkKI2RlZmluZSBMQ0RJU1JfVURSX0VSUiAoMTw8MykKI2RlZmluZSBMQ0RJU1JfRVJSX1JFUyAoMTw8MikKI2RlZmluZSBMQ0RJU1JfRU9GICAgICAoMTw8MSkKI2RlZmluZSBMQ0RJU1JfQk9GICAgICAoMTw8MCkKLyoKICogIFVBUlQgTW9kdWxlCiAqLwojZGVmaW5lIFVSWEQwKHgpIF9fUkVHMiggSU1YX1VBUlQxX0JBU0UgKyAweDAsICgoeCkgJiAxKSA8PCAxMikJLyogUmVjZWl2ZXIgUmVnaXN0ZXIgKi8KI2RlZmluZSBVUlRYMCh4KSBfX1JFRzIoIElNWF9VQVJUMV9CQVNFICsgMHg0MCwgKCh4KSAmIDEpIDw8IDEyKQkvKiBUcmFuc21pdHRlciBSZWdpc3RlciAqLwojZGVmaW5lIFVDUjEoeCkgIF9fUkVHMiggSU1YX1VBUlQxX0JBU0UgKyAweDgwLCAoKHgpICYgMSkgPDwgMTIpCS8qIENvbnRyb2wgUmVnaXN0ZXIgMSAqLwojZGVmaW5lIFVDUjIoeCkgIF9fUkVHMiggSU1YX1VBUlQxX0JBU0UgKyAweDg0LCAoKHgpICYgMSkgPDwgMTIpCS8qIENvbnRyb2wgUmVnaXN0ZXIgMiAqLwojZGVmaW5lIFVDUjMoeCkgIF9fUkVHMiggSU1YX1VBUlQxX0JBU0UgKyAweDg4LCAoKHgpICYgMSkgPDwgMTIpCS8qIENvbnRyb2wgUmVnaXN0ZXIgMyAqLwojZGVmaW5lIFVDUjQoeCkgIF9fUkVHMiggSU1YX1VBUlQxX0JBU0UgKyAweDhjLCAoKHgpICYgMSkgPDwgMTIpCS8qIENvbnRyb2wgUmVnaXN0ZXIgNCAqLwojZGVmaW5lIFVGQ1IoeCkgIF9fUkVHMiggSU1YX1VBUlQxX0JBU0UgKyAweDkwLCAoKHgpICYgMSkgPDwgMTIpCS8qIEZJRk8gQ29udHJvbCBSZWdpc3RlciAqLwojZGVmaW5lIFVTUjEoeCkgIF9fUkVHMiggSU1YX1VBUlQxX0JBU0UgKyAweDk0LCAoKHgpICYgMSkgPDwgMTIpCS8qIFN0YXR1cyBSZWdpc3RlciAxICovCiNkZWZpbmUgVVNSMih4KSAgX19SRUcyKCBJTVhfVUFSVDFfQkFTRSArIDB4OTgsICgoeCkgJiAxKSA8PCAxMikJLyogU3RhdHVzIFJlZ2lzdGVyIDIgKi8KI2RlZmluZSBVRVNDKHgpICBfX1JFRzIoIElNWF9VQVJUMV9CQVNFICsgMHg5YywgKCh4KSAmIDEpIDw8IDEyKQkvKiBFc2NhcGUgQ2hhcmFjdGVyIFJlZ2lzdGVyICovCiNkZWZpbmUgVVRJTSh4KSAgX19SRUcyKCBJTVhfVUFSVDFfQkFTRSArIDB4YTAsICgoeCkgJiAxKSA8PCAxMikJLyogRXNjYXBlIFRpbWVyIFJlZ2lzdGVyICovCiNkZWZpbmUgVUJJUih4KSAgX19SRUcyKCBJTVhfVUFSVDFfQkFTRSArIDB4YTQsICgoeCkgJiAxKSA8PCAxMikJLyogQlJNIEluY3JlbWVudGFsIFJlZ2lzdGVyICovCiNkZWZpbmUgVUJNUih4KSAgX19SRUcyKCBJTVhfVUFSVDFfQkFTRSArIDB4YTgsICgoeCkgJiAxKSA8PCAxMikJLyogQlJNIE1vZHVsYXRvciBSZWdpc3RlciAqLwojZGVmaW5lIFVCUkMoeCkgIF9fUkVHMiggSU1YX1VBUlQxX0JBU0UgKyAweGFjLCAoKHgpICYgMSkgPDwgMTIpCS8qIEJhdWQgUmF0ZSBDb3VudCBSZWdpc3RlciAqLwojZGVmaW5lIEJJUFIxKHgpIF9fUkVHMiggSU1YX1VBUlQxX0JBU0UgKyAweGIwLCAoKHgpICYgMSkgPDwgMTIpCS8qIEluY3JlbWVudGFsIFByZXNldCBSZWdpc3RlciAxICovCiNkZWZpbmUgQklQUjIoeCkgX19SRUcyKCBJTVhfVUFSVDFfQkFTRSArIDB4YjQsICgoeCkgJiAxKSA8PCAxMikJLyogSW5jcmVtZW50YWwgUHJlc2V0IFJlZ2lzdGVyIDIgKi8KI2RlZmluZSBCSVBSMyh4KSBfX1JFRzIoIElNWF9VQVJUMV9CQVNFICsgMHhiOCwgKCh4KSAmIDEpIDw8IDEyKQkvKiBJbmNyZW1lbnRhbCBQcmVzZXQgUmVnaXN0ZXIgMyAqLwojZGVmaW5lIEJJUFI0KHgpIF9fUkVHMiggSU1YX1VBUlQxX0JBU0UgKyAweGJjLCAoKHgpICYgMSkgPDwgMTIpCS8qIEluY3JlbWVudGFsIFByZXNldCBSZWdpc3RlciA0ICovCiNkZWZpbmUgQk1QUjEoeCkgX19SRUcyKCBJTVhfVUFSVDFfQkFTRSArIDB4YzAsICgoeCkgJiAxKSA8PCAxMikJLyogQlJNIE1vZHVsYXRvciBSZWdpc3RlciAxICovCiNkZWZpbmUgQk1QUjIoeCkgX19SRUcyKCBJTVhfVUFSVDFfQkFTRSArIDB4YzQsICgoeCkgJiAxKSA8PCAxMikJLyogQlJNIE1vZHVsYXRvciBSZWdpc3RlciAyICovCiNkZWZpbmUgQk1QUjMoeCkgX19SRUcyKCBJTVhfVUFSVDFfQkFTRSArIDB4YzgsICgoeCkgJiAxKSA8PCAxMikJLyogQlJNIE1vZHVsYXRvciBSZWdpc3RlciAzICovCiNkZWZpbmUgQk1QUjQoeCkgX19SRUcyKCBJTVhfVUFSVDFfQkFTRSArIDB4Y2MsICgoeCkgJiAxKSA8PCAxMikJLyogQlJNIE1vZHVsYXRvciBSZWdpc3RlciA0ICovCiNkZWZpbmUgVVRTKHgpICAgX19SRUcyKCBJTVhfVUFSVDFfQkFTRSArIDB4ZDAsICgoeCkgJiAxKSA8PCAxMikJLyogVUFSVCBUZXN0IFJlZ2lzdGVyICovCgovKiBVQVJUIENvbnRyb2wgUmVnaXN0ZXIgQml0IEZpZWxkcy4qLwojZGVmaW5lICBVUlhEX0NIQVJSRFkgICAgKDE8PDE1KQojZGVmaW5lICBVUlhEX0VSUiAgICAgICAgKDE8PDE0KQojZGVmaW5lICBVUlhEX09WUlJVTiAgICAgKDE8PDEzKQojZGVmaW5lICBVUlhEX0ZSTUVSUiAgICAgKDE8PDEyKQojZGVmaW5lICBVUlhEX0JSSyAgICAgICAgKDE8PDExKQojZGVmaW5lICBVUlhEX1BSRVJSICAgICAgKDE8PDEwKQojZGVmaW5lICBVQ1IxX0FERU4gICAgICAgKDE8PDE1KSAvKiBBdXRvIGRlY3RlY3QgaW50ZXJydXB0ICovCiNkZWZpbmUgIFVDUjFfQURCUiAgICAgICAoMTw8MTQpIC8qIEF1dG8gZGV0ZWN0IGJhdWQgcmF0ZSAqLwojZGVmaW5lICBVQ1IxX1RSRFlFTiAgICAgKDE8PDEzKSAvKiBUcmFuc21pdHRlciByZWFkeSBpbnRlcnJ1cHQgZW5hYmxlICovCiNkZWZpbmUgIFVDUjFfSURFTiAgICAgICAoMTw8MTIpIC8qIElkbGUgY29uZGl0aW9uIGludGVycnVwdCAqLwojZGVmaW5lICBVQ1IxX1JSRFlFTiAgICAgKDE8PDkpCSAvKiBSZWN2IHJlYWR5IGludGVycnVwdCBlbmFibGUgKi8KI2RlZmluZSAgVUNSMV9SRE1BRU4gICAgICgxPDw4KQkgLyogUmVjdiByZWFkeSBETUEgZW5hYmxlICovCiNkZWZpbmUgIFVDUjFfSVJFTiAgICAgICAoMTw8NykJIC8qIEluZnJhcmVkIGludGVyZmFjZSBlbmFibGUgKi8KI2RlZmluZSAgVUNSMV9UWE1QVFlFTiAgICgxPDw2KQkgLyogVHJhbnNpbWl0dGVyIGVtcHR5IGludGVycnVwdCBlbmFibGUgKi8KI2RlZmluZSAgVUNSMV9SVFNERU4gICAgICgxPDw1KQkgLyogUlRTIGRlbHRhIGludGVycnVwdCBlbmFibGUgKi8KI2RlZmluZSAgVUNSMV9TTkRCUksgICAgICgxPDw0KQkgLyogU2VuZCBicmVhayAqLwojZGVmaW5lICBVQ1IxX1RETUFFTiAgICAgKDE8PDMpCSAvKiBUcmFuc21pdHRlciByZWFkeSBETUEgZW5hYmxlICovCiNkZWZpbmUgIFVDUjFfVUFSVENMS0VOICAoMTw8MikJIC8qIFVBUlQgY2xvY2sgZW5hYmxlZCAqLwojZGVmaW5lICBVQ1IxX0RPWkUgICAgICAgKDE8PDEpCSAvKiBEb3plICovCiNkZWZpbmUgIFVDUjFfVUFSVEVOICAgICAoMTw8MCkJIC8qIFVBUlQgZW5hYmxlZCAqLwojZGVmaW5lICBVQ1IyX0VTQ0kgICAgIAkgKDE8PDE1KSAvKiBFc2NhcGUgc2VxIGludGVycnVwdCBlbmFibGUgKi8KI2RlZmluZSAgVUNSMl9JUlRTICAJICgxPDwxNCkgLyogSWdub3JlIFJUUyBwaW4gKi8KI2RlZmluZSAgVUNSMl9DVFNDICAJICgxPDwxMykgLyogQ1RTIHBpbiBjb250cm9sICovCiNkZWZpbmUgIFVDUjJfQ1RTICAgICAgICAoMTw8MTIpIC8qIENsZWFyIHRvIHNlbmQgKi8KI2RlZmluZSAgVUNSMl9FU0NFTiAgICAgICgxPDwxMSkgLyogRXNjYXBlIGVuYWJsZSAqLwojZGVmaW5lICBVQ1IyX1BSRU4gICAgICAgKDE8PDgpIC8qIFBhcml0eSBlbmFibGUgKi8KI2RlZmluZSAgVUNSMl9QUk9FICAgICAgICgxPDw3KSAvKiBQYXJpdHkgb2RkL2V2ZW4gKi8KI2RlZmluZSAgVUNSMl9TVFBCICAgICAgICgxPDw2KQkvKiBTdG9wICovCiNkZWZpbmUgIFVDUjJfV1MgICAgICAgICAoMTw8NSkJLyogV29yZCBzaXplICovCiNkZWZpbmUgIFVDUjJfUlRTRU4gICAgICAoMTw8NCkJLyogUmVxdWVzdCB0byBzZW5kIGludGVycnVwdCBlbmFibGUgKi8KI2RlZmluZSAgVUNSMl9UWEVOICAgICAgICgxPDwyKQkvKiBUcmFuc21pdHRlciBlbmFibGVkICovCiNkZWZpbmUgIFVDUjJfUlhFTiAgICAgICAoMTw8MSkJLyogUmVjZWl2ZXIgZW5hYmxlZCAqLwojZGVmaW5lICBVQ1IyX1NSU1QgCSAoMTw8MCkJLyogU1cgcmVzZXQgKi8KI2RlZmluZSAgVUNSM19EVFJFTiAJICgxPDwxMykgLyogRFRSIGludGVycnVwdCBlbmFibGUgKi8KI2RlZmluZSAgVUNSM19QQVJFUlJFTiAgICgxPDwxMikgLyogUGFyaXR5IGVuYWJsZSAqLwojZGVmaW5lICBVQ1IzX0ZSQUVSUkVOICAgKDE8PDExKSAvKiBGcmFtZSBlcnJvciBpbnRlcnJ1cHQgZW5hYmxlICovCiNkZWZpbmUgIFVDUjNfRFNSICAgICAgICAoMTw8MTApIC8qIERhdGEgc2V0IHJlYWR5ICovCiNkZWZpbmUgIFVDUjNfRENEICAgICAgICAoMTw8OSkgIC8qIERhdGEgY2FycmllciBkZXRlY3QgKi8KI2RlZmluZSAgVUNSM19SSSAgICAgICAgICgxPDw4KSAgLyogUmluZyBpbmRpY2F0b3IgKi8KI2RlZmluZSAgVUNSM19USU1FT1VURU4gICgxPDw3KSAgLyogVGltZW91dCBpbnRlcnJ1cHQgZW5hYmxlICovCiNkZWZpbmUgIFVDUjNfUlhEU0VOCSAoMTw8NikgIC8qIFJlY2VpdmUgc3RhdHVzIGludGVycnVwdCBlbmFibGUgKi8KI2RlZmluZSAgVUNSM19BSVJJTlRFTiAgICgxPDw1KSAgLyogQXN5bmMgSVIgd2FrZSBpbnRlcnJ1cHQgZW5hYmxlICovCiNkZWZpbmUgIFVDUjNfQVdBS0VOCSAoMTw8NCkgIC8qIEFzeW5jIHdha2UgaW50ZXJydXB0IGVuYWJsZSAqLwojZGVmaW5lICBVQ1IzX1JFRjI1IAkgKDE8PDMpICAvKiBSZWYgZnJlcSAyNSBNSHogKi8KI2RlZmluZSAgVUNSM19SRUYzMCAJICgxPDwyKSAgLyogUmVmIEZyZXEgMzAgTUh6ICovCiNkZWZpbmUgIFVDUjNfSU5WVCAgCSAoMTw8MSkgIC8qIEludmVydGVkIEluZnJhcmVkIHRyYW5zbWlzc2lvbiAqLwojZGVmaW5lICBVQ1IzX0JQRU4gIAkgKDE8PDApICAvKiBQcmVzZXQgcmVnaXN0ZXJzIGVuYWJsZSAqLwojZGVmaW5lICBVQ1I0X0NUU1RMXzMyICAgKDMyPDwxMCkgLyogQ1RTIHRyaWdnZXIgbGV2ZWwgKDMyIGNoYXJzKSAqLwojZGVmaW5lICBVQ1I0X0lOVlIgIAkgKDE8PDkpICAvKiBJbnZlcnRlZCBpbmZyYXJlZCByZWNlcHRpb24gKi8KI2RlZmluZSAgVUNSNF9FTklSSSAJICgxPDw4KSAgLyogU2VyaWFsIGluZnJhcmVkIGludGVycnVwdCBlbmFibGUgKi8KI2RlZmluZSAgVUNSNF9XS0VOICAJICgxPDw3KSAgLyogV2FrZSBpbnRlcnJ1cHQgZW5hYmxlICovCiNkZWZpbmUgIFVDUjRfUkVGMTYgCSAoMTw8NikgIC8qIFJlZiBmcmVxIDE2IE1IeiAqLwojZGVmaW5lICBVQ1I0X0lSU0MgIAkgKDE8PDUpIC8qIElSIHNwZWNpYWwgY2FzZSAqLwojZGVmaW5lICBVQ1I0X1RDRU4gIAkgKDE8PDMpIC8qIFRyYW5zbWl0IGNvbXBsZXRlIGludGVycnVwdCBlbmFibGUgKi8KI2RlZmluZSAgVUNSNF9CS0VOICAJICgxPDwyKSAvKiBCcmVhayBjb25kaXRpb24gaW50ZXJydXB0IGVuYWJsZSAqLwojZGVmaW5lICBVQ1I0X09SRU4gIAkgKDE8PDEpIC8qIFJlY2VpdmVyIG92ZXJydW4gaW50ZXJydXB0IGVuYWJsZSAqLwojZGVmaW5lICBVQ1I0X0RSRU4gIAkgKDE8PDApIC8qIFJlY3YgZGF0YSByZWFkeSBpbnRlcnJ1cHQgZW5hYmxlICovCiNkZWZpbmUgIFVGQ1JfUlhUTF9TSEYgICAwICAgICAgLyogUmVjZWl2ZXIgdHJpZ2dlciBsZXZlbCBzaGlmdCAqLwojZGVmaW5lICBVRkNSX1JGRElWICAgICAgKDc8PDcpIC8qIFJlZmVyZW5jZSBmcmVxIGRpdmlkZXIgbWFzayAqLwojZGVmaW5lICBVRkNSX1RYVExfU0hGICAgMTAgICAgIC8qIFRyYW5zbWl0dGVyIHRyaWdnZXIgbGV2ZWwgc2hpZnQgKi8KI2RlZmluZSAgVVNSMV9QQVJJVFlFUlIgICgxPDwxNSkgLyogUGFyaXR5IGVycm9yIGludGVycnVwdCBmbGFnICovCiNkZWZpbmUgIFVTUjFfUlRTUyAgCSAoMTw8MTQpIC8qIFJUUyBwaW4gc3RhdHVzICovCiNkZWZpbmUgIFVTUjFfVFJEWSAgCSAoMTw8MTMpIC8qIFRyYW5zbWl0dGVyIHJlYWR5IGludGVycnVwdC9kbWEgZmxhZyAqLwojZGVmaW5lICBVU1IxX1JUU0QgIAkgKDE8PDEyKSAvKiBSVFMgZGVsdGEgKi8KI2RlZmluZSAgVVNSMV9FU0NGICAJICgxPDwxMSkgLyogRXNjYXBlIHNlcSBpbnRlcnJ1cHQgZmxhZyAqLwojZGVmaW5lICBVU1IxX0ZSQU1FUlIgICAgKDE8PDEwKSAvKiBGcmFtZSBlcnJvciBpbnRlcnJ1cHQgZmxhZyAqLwojZGVmaW5lICBVU1IxX1JSRFkgICAgICAgKDE8PDkpCS8qIFJlY2VpdmVyIHJlYWR5IGludGVycnVwdC9kbWEgZmxhZyAqLwojZGVmaW5lICBVU1IxX1RJTUVPVVQgICAgKDE8PDcpCS8qIFJlY2VpdmUgdGltZW91dCBpbnRlcnJ1cHQgc3RhdHVzICovCiNkZWZpbmUgIFVTUjFfUlhEUyAgCSAoMTw8NikJLyogUmVjZWl2ZXIgaWRsZSBpbnRlcnJ1cHQgZmxhZyAqLwojZGVmaW5lICBVU1IxX0FJUklOVAkgKDE8PDUpCS8qIEFzeW5jIElSIHdha2UgaW50ZXJydXB0IGZsYWcgKi8KI2RlZmluZSAgVVNSMV9BV0FLRSAJICgxPDw0KQkvKiBBeXNuYyB3YWtlIGludGVycnVwdCBmbGFnICovCiNkZWZpbmUgIFVTUjJfQURFVCAgCSAoMTw8MTUpIC8qIEF1dG8gYmF1ZCByYXRlIGRldGVjdCBjb21wbGV0ZSAqLwojZGVmaW5lICBVU1IyX1RYRkUgIAkgKDE8PDE0KSAvKiBUcmFuc21pdCBidWZmZXIgRklGTyBlbXB0eSAqLwojZGVmaW5lICBVU1IyX0RUUkYgIAkgKDE8PDEzKSAvKiBEVFIgZWRnZSBpbnRlcnJ1cHQgZmxhZyAqLwojZGVmaW5lICBVU1IyX0lETEUgIAkgKDE8PDEyKSAvKiBJZGxlIGNvbmRpdGlvbiAqLwojZGVmaW5lICBVU1IyX0lSSU5UIAkgKDE8PDgpCS8qIFNlcmlhbCBpbmZyYXJlZCBpbnRlcnJ1cHQgZmxhZyAqLwojZGVmaW5lICBVU1IyX1dBS0UgIAkgKDE8PDcpCS8qIFdha2UgKi8KI2RlZmluZSAgVVNSMl9SVFNGICAJICgxPDw0KQkvKiBSVFMgZWRnZSBpbnRlcnJ1cHQgZmxhZyAqLwojZGVmaW5lICBVU1IyX1RYREMgIAkgKDE8PDMpCS8qIFRyYW5zbWl0dGVyIGNvbXBsZXRlICovCiNkZWZpbmUgIFVTUjJfQlJDRCAgCSAoMTw8MikJLyogQnJlYWsgY29uZGl0aW9uICovCiNkZWZpbmUgIFVTUjJfT1JFICAgICAgICAoMTw8MSkJLyogT3ZlcnJ1biBlcnJvciAqLwojZGVmaW5lICBVU1IyX1JEUiAgICAgICAgKDE8PDApCS8qIFJlY3YgZGF0YSByZWFkeSAqLwojZGVmaW5lICBVVFNfRlJDUEVSUgkgKDE8PDEzKSAvKiBGb3JjZSBwYXJpdHkgZXJyb3IgKi8KI2RlZmluZSAgVVRTX0xPT1AgICAgICAgICgxPDwxMikgLyogTG9vcCB0eCBhbmQgcnggKi8KI2RlZmluZSAgVVRTX1RYRU1QVFkJICgxPDw2KQkvKiBUeEZJRk8gZW1wdHkgKi8KI2RlZmluZSAgVVRTX1JYRU1QVFkJICgxPDw1KQkvKiBSeEZJRk8gZW1wdHkgKi8KI2RlZmluZSAgVVRTX1RYRlVMTCAJICgxPDw0KQkvKiBUeEZJRk8gZnVsbCAqLwojZGVmaW5lICBVVFNfUlhGVUxMIAkgKDE8PDMpCS8qIFJ4RklGTyBmdWxsICovCiNkZWZpbmUgIFVUU19TT0ZUUlNUCSAoMTw8MCkJLyogU29mdHdhcmUgcmVzZXQgKi8KCi8qIEdlbmVyYWwgcHVycG9zZSB0aW1lcnMgcmVnaXN0ZXJzICovCiNkZWZpbmUgVENUTDEgICBfX1JFRyhJTVhfVElNMV9CQVNFKQojZGVmaW5lIFRQUkVSMSAgX19SRUcoSU1YX1RJTTFfQkFTRSArIDB4NCkKI2RlZmluZSBUQ01QMSAgIF9fUkVHKElNWF9USU0xX0JBU0UgKyAweDgpCiNkZWZpbmUgVENSMSAgICBfX1JFRyhJTVhfVElNMV9CQVNFICsgMHhjKQojZGVmaW5lIFRDTjEgICAgX19SRUcoSU1YX1RJTTFfQkFTRSArIDB4MTApCiNkZWZpbmUgVFNUQVQxICBfX1JFRyhJTVhfVElNMV9CQVNFICsgMHgxNCkKI2RlZmluZSBUQ1RMMiAgIF9fUkVHKElNWF9USU0yX0JBU0UpCiNkZWZpbmUgVFBSRVIyICBfX1JFRyhJTVhfVElNMl9CQVNFICsgMHg0KQojZGVmaW5lIFRDTVAyICAgX19SRUcoSU1YX1RJTTJfQkFTRSArIDB4OCkKI2RlZmluZSBUQ1IyICAgIF9fUkVHKElNWF9USU0yX0JBU0UgKyAweGMpCiNkZWZpbmUgVENOMiAgICBfX1JFRyhJTVhfVElNMl9CQVNFICsgMHgxMCkKI2RlZmluZSBUU1RBVDIgIF9fUkVHKElNWF9USU0yX0JBU0UgKyAweDE0KQoKLyogR2VuZXJhbCBwdXJwb3NlIHRpbWVycyBiaXRmaWVsZHMgKi8KI2RlZmluZSBUQ1RMX1NXUiAgICAgICAoMTw8MTUpIC8qIFNvZnR3YXJlIHJlc2V0ICovCiNkZWZpbmUgVENUTF9GUlIgICAgICAgKDE8PDgpICAvKiBGcmVlcnVuIC8gcmVzdGFydCAqLwojZGVmaW5lIFRDVExfQ0FQICAgICAgICgzPDw2KSAgLyogQ2FwdHVyZSBFZGdlICovCiNkZWZpbmUgVENUTF9PTSAgICAgICAgKDE8PDUpICAvKiBvdXRwdXQgbW9kZSAqLwojZGVmaW5lIFRDVExfSVJRRU4gICAgICgxPDw0KSAgLyogaW50ZXJydXB0IGVuYWJsZSAqLwojZGVmaW5lIFRDVExfQ0xLU09VUkNFICg3PDwxKSAgLyogQ2xvY2sgc291cmNlICovCiNkZWZpbmUgVENUTF9URU4gICAgICAgKDEpICAgICAvKiBUaW1lciBlbmFibGUgKi8KI2RlZmluZSBUUFJFUl9QUkVTICAgICAoMHhmZikgIC8qIFByZXNjYWxlICovCiNkZWZpbmUgVFNUQVRfQ0FQVCAgICAgKDE8PDEpICAvKiBDYXB0dXJlIGV2ZW50ICovCiNkZWZpbmUgVFNUQVRfQ09NUCAgICAgKDEpICAgICAvKiBDb21wYXJlIGV2ZW50ICovCgojZW5kaWYJCQkJLyogX0lNWF9SRUdTX0ggKi8K