LyoKICogdmVuZG9yL3Byb2R1Y3QgSURzIChWSUQvUElEKSBvZiBkZXZpY2VzIHVzaW5nIEZUREkgVVNCIHNlcmlhbCBjb252ZXJ0ZXJzLgogKiBQbGVhc2Uga2VlcCBudW1lcmljYWxseSBzb3J0ZWQgd2l0aGluIGluZGl2aWR1YWwgYXJlYXMsIHRoYW5rcyEKICoKICogUGhpbGlwcCBH/GhyaW5nIC0gcGdAZnV0dXJld2FyZS5hdCAtIGFkZGVkIHRoZSBEZXZpY2UgSUQgb2YgdGhlIFVTQiByZWxhaXMKICogZnJvbSBSdWRvbGYgR3VnbGVyCiAqCiAqLwoKCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwovKioqKiogZGV2aWNlcyB1c2luZyBGVERJIFZJRCAqKioqKi8KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCgoKI2RlZmluZSBGVERJX1ZJRAkweDA0MDMJLyogVmVuZG9yIElkICovCgoKLyoqKiAib3JpZ2luYWwiIEZUREkgZGV2aWNlIFBJRHMgKioqLwoKI2RlZmluZSBGVERJXzhVMjMyQU1fUElEIDB4NjAwMSAvKiBTaW1pbGFyIGRldmljZSB0byBTSU8gYWJvdmUgKi8KI2RlZmluZSBGVERJXzhVMjMyQU1fQUxUX1BJRCAweDYwMDYgLyogRlRESSdzIGFsdGVybmF0ZSBQSUQgZm9yIGFib3ZlICovCiNkZWZpbmUgRlRESV84VTIyMzJDX1BJRCAweDYwMTAgLyogRHVhbCBjaGFubmVsIGRldmljZSAqLwojZGVmaW5lIEZURElfNDIzMkhfUElEIDB4NjAxMSAvKiBRdWFkIGNoYW5uZWwgaGktc3BlZWQgZGV2aWNlICovCiNkZWZpbmUgRlRESV9TSU9fUElECTB4ODM3MgkvKiBQcm9kdWN0IElkIFNJTyBhcHBsaWNhdGlvbiBvZiA4VTEwMEFYICovCiNkZWZpbmUgRlRESV8yMzJSTF9QSUQgIDB4RkJGQSAgLyogUHJvZHVjdCBJRCBmb3IgRlQyMzJSTCAqLwoKCi8qKiogdGhpcmQtcGFydHkgUElEcyAodXNpbmcgRlRESV9WSUQpICoqKi8KCi8qCiAqIE1hcnZlbGwgT3BlblJEIEJhc2UsIENsaWVudAogKiBodHRwOi8vd3d3Lm9wZW4tcmQub3JnCiAqIE9wZW5SRCBCYXNlLCBDbGllbnQgdXNlIFZJRCAweDA0MDMKICovCiNkZWZpbmUgTUFSVkVMTF9PUEVOUkRfUElECTB4OWU5MAoKLyogd3d3LmNhbmRhcHRlci5jb20gRXdlcnQgRW5lcmd5IFN5c3RlbXMgQ0FOZGFwdGVyIGRldmljZSAqLwojZGVmaW5lIEZURElfQ0FOREFQVEVSX1BJRCAweDlGODAgLyogUHJvZHVjdCBJZCAqLwoKI2RlZmluZSBGVERJX05YVENBTV9QSUQJCTB4QUJCOCAvKiBOWFRDYW0gZm9yIE1pbmRzdG9ybXMgTlhUICovCgovKiBVUyBJbnRlcmZhY2UgTmF2aWdhdG9yIChodHRwOi8vd3d3LnVzaW50ZXJmYWNlLmNvbS8pICovCiNkZWZpbmUgRlRESV9VU0lOVF9DQVRfUElECTB4YjgxMAkvKiBOYXZpZ2F0b3IgQ0FUIGFuZCAybmQgUFRUIGxpbmVzICovCiNkZWZpbmUgRlRESV9VU0lOVF9XS0VZX1BJRAkweGI4MTEJLyogTmF2aWdhdG9yIFdLRVkgYW5kIEZTSyBsaW5lcyAqLwojZGVmaW5lIEZURElfVVNJTlRfUlMyMzJfUElECTB4YjgxMgkvKiBOYXZpZ2F0b3IgUlMyMzIgYW5kIENPTkZJRyBsaW5lcyAqLwoKLyogT09DRGxpbmsgYnkgSm9lcm4gS2FpcGYgPGpvZXJua0B3ZWIuZGU+CiAqIChodHRwOi8vd3d3LmpvZXJub25saW5lLmRlL2R3L2Rva3UucGhwP2lkPXN0YXJ0JmlkeD1wcm9qZWN0czpvb2NkbGluaykgKi8KI2RlZmluZSBGVERJX09PQ0RMSU5LX1BJRAkweGJhZjgJLyogQW1vbnRlYyBKVEFHa2V5ICovCgovKiBMdW1pbmFyeSBNaWNybyBTdGVsbGFyaXMgQm9hcmRzLCBWSUQgPSBGVERJX1ZJRCAqLwovKiBGVERJIDIzMzJDIER1YWwgY2hhbm5lbCBkZXZpY2UsIHNpZGUgQT0yNDUgRklGTyAoSlRBRyksIFNpZGUgQj1SUzIzMiBVQVJUICovCiNkZWZpbmUgTE1JX0xNM1NfREVWRUxfQk9BUkRfUElECTB4YmNkOAojZGVmaW5lIExNSV9MTTNTX0VWQUxfQk9BUkRfUElECQkweGJjZDkKCiNkZWZpbmUgRlRESV9UVVJURUxJWkVSX1BJRAkweEJEQzggLyogSlRBRy9SUy0yMzIgYWRhcHRlciBieSBlZ25pdGUgR21iSCAqLwoKLyogT3BlbkRDQyAod3d3Lm9wZW5kY2MuZGUpIHByb2R1Y3QgaWQgKi8KI2RlZmluZSBGVERJX09QRU5EQ0NfUElECTB4QkZEOAojZGVmaW5lIEZURElfT1BFTkRDQ19TTklGRkVSX1BJRAkweEJGRDkKI2RlZmluZSBGVERJX09QRU5EQ0NfVEhST1RUTEVfUElECTB4QkZEQQojZGVmaW5lIEZURElfT1BFTkRDQ19HQVRFV0FZX1BJRAkweEJGREIKCi8qCiAqIFJSLUNpcktpdHMgTG9jb0J1ZmZlciBVU0IgKGh0dHA6Ly93d3cucnItY2lya2l0cy5jb20pCiAqLwojZGVmaW5lIEZURElfUlJDSVJLSVRTX0xPQ09CVUZGRVJfUElECTB4YzdkMAkvKiBMb2NvQnVmZmVyIFVTQiAqLwoKLyogRE1YNEFMTCBETVggSW50ZXJmYWNlcyAqLwojZGVmaW5lIEZURElfRE1YNEFMTCAweEM4NTAKCi8qCiAqIEFTSy5mciBkZXZpY2VzCiAqLwojZGVmaW5lIEZURElfQVNLX1JEUjQwMF9QSUQJMHhDOTkxCS8qIEFTSyBSRFIgNDAwIHNlcmllcyBjYXJkIHJlYWRlciAqLwoKLyogd3d3LnN0YXJ0aW5nLXBvaW50LXN5c3RlbXMuY29tILVDaGFtZWxlb24gZGV2aWNlICovCiNkZWZpbmUgRlRESV9NSUNST19DSEFNRUxFT05fUElECTB4Q0FBMAkvKiBQcm9kdWN0IElkICovCgovKgogKiBUYWN0cml4IE9wZW5Qb3J0IChFQ1UpIGRldmljZXMuCiAqIE9wZW5Qb3J0IDEuM00gc3VibWl0dGVkIGJ5IERvbm91ciBTaXplbW9yZS4KICogT3BlblBvcnQgMS4zUyBhbmQgMS4zVSBzdWJtaXR0ZWQgYnkgSWFuIEFiYm90dC4KICovCiNkZWZpbmUgRlRESV9UQUNUUklYX09QRU5QT1JUXzEzTV9QSUQJMHhDQzQ4CS8qIE9wZW5Qb3J0IDEuMyBNaXRzdWJpc2hpICovCiNkZWZpbmUgRlRESV9UQUNUUklYX09QRU5QT1JUXzEzU19QSUQJMHhDQzQ5CS8qIE9wZW5Qb3J0IDEuMyBTdWJhcnUgKi8KI2RlZmluZSBGVERJX1RBQ1RSSVhfT1BFTlBPUlRfMTNVX1BJRAkweENDNEEJLyogT3BlblBvcnQgMS4zIFVuaXZlcnNhbCAqLwoKLyogU0NTIEhGIFJhZGlvIE1vZGVtcyBQSUQncyAoaHR0cDovL3d3dy5zY3MtcHRjLmNvbSkgKi8KLyogdGhlIFZJRCBpcyB0aGUgc3RhbmRhcmQgZnRkaSB2aWQgKEZURElfVklEKSAqLwojZGVmaW5lIEZURElfU0NTX0RFVklDRV8wX1BJRCAweEQwMTAgICAgLyogU0NTIFBUQy1JSXVzYiAqLwojZGVmaW5lIEZURElfU0NTX0RFVklDRV8xX1BJRCAweEQwMTEgICAgLyogU0NTIFRyYWNrZXIgLyBEU1AgVE5DICovCiNkZWZpbmUgRlRESV9TQ1NfREVWSUNFXzJfUElEIDB4RDAxMgojZGVmaW5lIEZURElfU0NTX0RFVklDRV8zX1BJRCAweEQwMTMKI2RlZmluZSBGVERJX1NDU19ERVZJQ0VfNF9QSUQgMHhEMDE0CiNkZWZpbmUgRlRESV9TQ1NfREVWSUNFXzVfUElEIDB4RDAxNQojZGVmaW5lIEZURElfU0NTX0RFVklDRV82X1BJRCAweEQwMTYKI2RlZmluZSBGVERJX1NDU19ERVZJQ0VfN19QSUQgMHhEMDE3CgovKiBpUGx1cyBkZXZpY2UgKi8KI2RlZmluZSBGVERJX0lQTFVTX1BJRCAweEQwNzAgLyogUHJvZHVjdCBJZCAqLwojZGVmaW5lIEZURElfSVBMVVMyX1BJRCAweEQwNzEgLyogUHJvZHVjdCBJZCAqLwoKLyoKICogR2FtbWEgU2NvdXQgKGh0dHA6Ly9nYW1tYS1zY291dC5jb20vKS4gU3VibWl0dGVkIGJ5IHJzY0BydW50dXguY29tLgogKi8KI2RlZmluZSBGVERJX0dBTU1BX1NDT1VUX1BJRAkJMHhENjc4CS8qIEdhbW1hIFNjb3V0IG9ubGluZSAqLwoKLyogUHJvcG94IGRldmljZXMgKi8KI2RlZmluZSBGVERJX1BST1BPWF9KVEFHQ0FCTEVJSV9QSUQJMHhENzM4CgovKgogKiBYc2VucyBUZWNobm9sb2dpZXMgQlYgcHJvZHVjdHMgKGh0dHA6Ly93d3cueHNlbnMuY29tKS4KICovCiNkZWZpbmUgWFNFTlNfQ09OVkVSVEVSXzBfUElECTB4RDM4OAojZGVmaW5lIFhTRU5TX0NPTlZFUlRFUl8xX1BJRAkweEQzODkKI2RlZmluZSBYU0VOU19DT05WRVJURVJfMl9QSUQJMHhEMzhBCiNkZWZpbmUgWFNFTlNfQ09OVkVSVEVSXzNfUElECTB4RDM4QgojZGVmaW5lIFhTRU5TX0NPTlZFUlRFUl80X1BJRAkweEQzOEMKI2RlZmluZSBYU0VOU19DT05WRVJURVJfNV9QSUQJMHhEMzhECiNkZWZpbmUgWFNFTlNfQ09OVkVSVEVSXzZfUElECTB4RDM4RQojZGVmaW5lIFhTRU5TX0NPTlZFUlRFUl83X1BJRAkweEQzOEYKCi8qCiAqIE5ESSAod3d3Lm5kaWdpdGFsLmNvbSkgcHJvZHVjdCBpZHMKICovCiNkZWZpbmUgRlRESV9ORElfSFVDX1BJRAkJMHhEQTcwCS8qIE5ESSBIb3N0IFVTQiBDb252ZXJ0ZXIgKi8KI2RlZmluZSBGVERJX05ESV9TUEVDVFJBX1NDVV9QSUQJMHhEQTcxCS8qIE5ESSBTcGVjdHJhIFNDVSAqLwojZGVmaW5lIEZURElfTkRJX0ZVVFVSRV8yX1BJRAkJMHhEQTcyCS8qIE5ESSBmdXR1cmUgZGV2aWNlICMyICovCiNkZWZpbmUgRlRESV9ORElfRlVUVVJFXzNfUElECQkweERBNzMJLyogTkRJIGZ1dHVyZSBkZXZpY2UgIzMgKi8KI2RlZmluZSBGVERJX05ESV9BVVJPUkFfU0NVX1BJRAkJMHhEQTc0CS8qIE5ESSBBdXJvcmEgU0NVICovCgovKgogKiBXZXN0cmV4IEludGVybmF0aW9uYWwgZGV2aWNlcyBzdWJtaXR0ZWQgYnkgQ29yeSBMZWUKICovCiNkZWZpbmUgRlRESV9XRVNUUkVYX01PREVMXzc3N19QSUQJMHhEQzAwCS8qIE1vZGVsIDc3NyAqLwojZGVmaW5lIEZURElfV0VTVFJFWF9NT0RFTF84OTAwRl9QSUQJMHhEQzAxCS8qIE1vZGVsIDg5MDBGICovCgovKgogKiBBQ0cgSWRlbnRpZmljYXRpb24gVGVjaG5vbG9naWVzIEdtYkggcHJvZHVjdHMgKGh0dHA6Ly93d3cuYWNnLmRlLykuCiAqIFN1Ym1pdHRlZCBieSBhbnRvbiAtYXQtIGdvdG8xMCAtZG90LSBvcmcuCiAqLwojZGVmaW5lIEZURElfQUNHX0hGRFVBTF9QSUQJCTB4REQyMAkvKiBIRiBEdWFsIElTTyBSZWFkZXIgKFJGSUQpICovCgovKgogKiBEZWZpbml0aW9ucyBmb3IgQXJ0ZW1pcyBhc3Ryb25vbWljYWwgVVNCIGJhc2VkIGNhbWVyYXMKICogQ2hlY2sgaXQgYXQgaHR0cDovL3d3dy5hcnRlbWlzY2NkLmNvLnVrLwogKi8KI2RlZmluZSBGVERJX0FSVEVNSVNfUElECTB4REYyOAkvKiBBbGwgQXJ0ZW1pcyBDYW1lcmFzICovCgovKgogKiBEZWZpbml0aW9ucyBmb3IgQVRJSyBJbnN0cnVtZW50cyBhc3Ryb25vbWljYWwgVVNCIGJhc2VkIGNhbWVyYXMKICogQ2hlY2sgaXQgYXQgaHR0cDovL3d3dy5hdGlrLWluc3RydW1lbnRzLmNvbS8KICovCiNkZWZpbmUgRlRESV9BVElLX0FUSzE2X1BJRAkweERGMzAJLyogQVRJSyBBVEstMTYgR3JheXNjYWxlIENhbWVyYSAqLwojZGVmaW5lIEZURElfQVRJS19BVEsxNkNfUElECTB4REYzMgkvKiBBVElLIEFUSy0xNkMgQ29sb3VyIENhbWVyYSAqLwojZGVmaW5lIEZURElfQVRJS19BVEsxNkhSX1BJRAkweERGMzEJLyogQVRJSyBBVEstMTZIUiBHcmF5c2NhbGUgQ2FtZXJhICovCiNkZWZpbmUgRlRESV9BVElLX0FUSzE2SFJDX1BJRAkweERGMzMJLyogQVRJSyBBVEstMTZIUkMgQ29sb3VyIENhbWVyYSAqLwojZGVmaW5lIEZURElfQVRJS19BVEsxNklDX1BJRCAgIDB4REYzNSAgLyogQVRJSyBBVEstMTZJQyBHcmF5c2NhbGUgQ2FtZXJhICovCgovKgogKiBZb3N0IEVuZ2luZWVyaW5nLCBJbmMuIHByb2R1Y3RzICh3d3cueW9zdGVuZ2luZWVyaW5nLmNvbSkuCiAqIFBJRCAweEUwNTAgc3VibWl0dGVkIGJ5IEFhcm9uIFByb3NlLgogKi8KI2RlZmluZSBGVERJX1lFSV9TRVJWT0NFTlRFUjMxX1BJRAkweEUwNTAJLyogWUVJIFNlcnZvQ2VudGVyMy4xIFVTQiAqLwoKLyoKICogRUxWIFVTQiBkZXZpY2VzIHN1Ym1pdHRlZCBieSBDaHJpc3RpYW4gQWJ0IG9mIEVMViAod3d3LmVsdi5kZSkuCiAqIEFsbCBvZiB0aGVzZSBkZXZpY2VzIHVzZSBGVERJJ3MgdmVuZG9yIElEICgweDA0MDMpLgogKiBGdXJ0aGVyIElEcyB0YWtlbiBmcm9tIEVMViBXaW5kb3dzIC5pbmYgZmlsZS4KICoKICogVGhlIHByZXZpb3VzbHkgaW5jbHVkZWQgUElEIGZvciB0aGUgVU8gMTAwIG1vZHVsZSB3YXMgaW5jb3JyZWN0LgogKiBJbiBmYWN0LCB0aGF0IFBJRCB3YXMgZm9yIEVMVidzIFVSIDEwMCBVU0ItUlMyMzIgY29udmVydGVyICgweEZCNTgpLgogKgogKiBBcm1pbiBMYWV1Z2VyIG9yaWdpbmFsbHkgc2VudCB0aGUgUElEIGZvciB0aGUgVU0gMTAwIG1vZHVsZS4KICovCiNkZWZpbmUgRlRESV9FTFZfVVNSX1BJRAkweEUwMDAJLyogRUxWIFVuaXZlcnNhbC1Tb3VuZC1SZWNvcmRlciAqLwojZGVmaW5lIEZURElfRUxWX01TTTFfUElECTB4RTAwMQkvKiBFTFYgTWluaS1Tb3VuZC1Nb2R1bCAqLwojZGVmaW5lIEZURElfRUxWX0tMMTAwX1BJRAkweEUwMDIJLyogRUxWIEtmei1MZWlzdHVuZ3NtZXNzZXIgS0wgMTAwICovCiNkZWZpbmUgRlRESV9FTFZfV1M1NTBfUElECTB4RTAwNAkvKiBXUyA1NTAgKi8KI2RlZmluZSBGVERJX0VMVl9FQzMwMDBfUElECTB4RTAwNgkvKiBFTkVSR1kgQ09OVFJPTCAzMDAwIFVTQiAqLwojZGVmaW5lIEZURElfRUxWX1dTODg4X1BJRAkweEUwMDgJLyogV1MgODg4ICovCiNkZWZpbmUgRlRESV9FTFZfVFdTNTUwX1BJRAkweEUwMDkJLyogVGVjaG5vbGluZSBXUyA1NTAgKi8KI2RlZmluZSBGVERJX0VMVl9GRU1fUElECTB4RTAwQQkvKiBGdW5rIEVuZXJnaWUgTW9uaXRvciAqLwojZGVmaW5lIEZURElfRUxWX0ZIWjEzMDBQQ19QSUQJMHhFMEU4CS8qIEZIWiAxMzAwIFBDICovCiNkZWZpbmUgRlRESV9FTFZfV1M1MDBfUElECTB4RTBFOQkvKiBQQy1XZXR0ZXJzdGF0aW9uIChXUyA1MDApICovCiNkZWZpbmUgRlRESV9FTFZfSFM0ODVfUElECTB4RTBFQQkvKiBVU0IgdG8gUlMtNDg1IGFkYXB0ZXIgKi8KI2RlZmluZSBGVERJX0VMVl9VTVMxMDBfUElECTB4RTBFQgkvKiBFTFYgVVNCIE1hc3Rlci1TbGF2ZSBTY2hhbHRzdGVja2Rvc2UgVU1TIDEwMCAqLwojZGVmaW5lIEZURElfRUxWX1RGRDEyOF9QSUQJMHhFMEVDCS8qIEVMViBUZW1wZXJhdHVyLUZldWNodGUtRGF0ZW5sb2dnZXIgVEZEIDEyOCAqLwojZGVmaW5lIEZURElfRUxWX0ZNM1JYX1BJRAkweEUwRUQJLyogRUxWIE1lc3N3ZXJ0dWViZXJ0cmFndW5nIEZNMyBSWCAqLwojZGVmaW5lIEZURElfRUxWX1dTNzc3X1BJRAkweEUwRUUJLyogQ29ucmFkIFdTIDc3NyAqLwojZGVmaW5lIEZURElfRUxWX0VNMTAxMFBDX1BJRAkweEUwRUYJLyogRW5lcmd5IG1vbml0b3IgRU0gMTAxMCBQQyAqLwojZGVmaW5lIEZURElfRUxWX0NTSThfUElECTB4RTBGMAkvKiBDb21wdXRlci1TY2hhbHQtSW50ZXJmYWNlIChDU0kgOCkgKi8KI2RlZmluZSBGVERJX0VMVl9FTTEwMDBETF9QSUQJMHhFMEYxCS8qIFBDLURhdGVubG9nZ2VyIGZ1ZXIgRW5lcmdpZW1vbml0b3IgKEVNIDEwMDAgREwpICovCiNkZWZpbmUgRlRESV9FTFZfUENLMTAwX1BJRAkweEUwRjIJLyogUEMtS2FiZWx0ZXN0ZXIgKFBDSyAxMDApICovCiNkZWZpbmUgRlRESV9FTFZfUkZQNTAwX1BJRAkweEUwRjMJLyogSEYtTGVpc3R1bmdzbWVzc2VyIChSRlAgNTAwKSAqLwojZGVmaW5lIEZURElfRUxWX0ZTMjBTSUdfUElECTB4RTBGNAkvKiBTaWduYWxnZWJlciAoRlMgMjAgU0lHKSAqLwojZGVmaW5lIEZURElfRUxWX1VUUDhfUElECTB4RTBGNQkvKiBFTFYgVVRQIDggKi8KI2RlZmluZSBGVERJX0VMVl9XUzMwMFBDX1BJRAkweEUwRjYJLyogUEMtV2V0dGVyc3RhdGlvbiAoV1MgMzAwIFBDKSAqLwojZGVmaW5lIEZURElfRUxWX1dTNDQ0UENfUElECTB4RTBGNwkvKiBDb25yYWQgV1MgNDQ0IFBDICovCiNkZWZpbmUgRlRESV9QSElfRklTQ09fUElEICAgICAgMHhFNDBCICAvKiBQSEkgRmlzY28gVVNCIHRvIFNlcmlhbCBjYWJsZSAqLwojZGVmaW5lIEZURElfRUxWX1VBRDhfUElECTB4RjA2OAkvKiBVU0ItQUQtV2FuZGxlciAoVUFEIDgpICovCiNkZWZpbmUgRlRESV9FTFZfVURBN19QSUQJMHhGMDY5CS8qIFVTQi1EQS1XYW5kbGVyIChVREEgNykgKi8KI2RlZmluZSBGVERJX0VMVl9VU0kyX1BJRAkweEYwNkEJLyogVVNCLVNjaHJpdHRtb3RvcmVuLUludGVyZmFjZSAoVVNJIDIpICovCiNkZWZpbmUgRlRESV9FTFZfVDExMDBfUElECTB4RjA2QgkvKiBUaGVybW9tZXRlciAoVCAxMTAwKSAqLwojZGVmaW5lIEZURElfRUxWX1BDRDIwMF9QSUQJMHhGMDZDCS8qIFBDLURhdGVubG9nZ2VyIChQQ0QgMjAwKSAqLwojZGVmaW5lIEZURElfRUxWX1VMQTIwMF9QSUQJMHhGMDZECS8qIFVTQi1MQ0QtQW5zdGV1ZXJ1bmcgKFVMQSAyMDApICovCiNkZWZpbmUgRlRESV9FTFZfQUxDODUwMF9QSUQJMHhGMDZFCS8qIEFMQyA4NTAwIEV4cGVydCAqLwojZGVmaW5lIEZURElfRUxWX0ZIWjEwMDBQQ19QSUQJMHhGMDZGCS8qIEZIWiAxMDAwIFBDICovCiNkZWZpbmUgRlRESV9FTFZfVVIxMDBfUElECTB4RkI1OAkvKiBVU0ItUlMyMzItVW1zZXR6ZXIgKFVSIDEwMCkgKi8KI2RlZmluZSBGVERJX0VMVl9VTTEwMF9QSUQJMHhGQjVBCS8qIFVTQi1Nb2R1bCBVTSAxMDAgKi8KI2RlZmluZSBGVERJX0VMVl9VTzEwMF9QSUQJMHhGQjVCCS8qIFVTQi1Nb2R1bCBVTyAxMDAgKi8KLyogQWRkaXRpb25hbCBFTFYgUElEcyB0aGF0IGRlZmF1bHQgdG8gdXNpbmcgdGhlIEZUREkgRDJYWCBkcml2ZXJzIG9uCiAqIE1TIFdpbmRvd3MsIHJhdGhlciB0aGFuIHRoZSBGVERJIFZpcnR1YWwgQ29tIFBvcnQgZHJpdmVycy4KICogTWF5YmUgdGhlc2Ugd2lsbCBiZSBlYXNpZXIgdG8gdXNlIHdpdGggdGhlIGxpYmZ0ZGkvbGlidXNiIHVzZXItc3BhY2UKICogZHJpdmVycywgb3IgcG9zc2libHkgdGhlIENvbWVkaSBkcml2ZXJzIGluIHNvbWUgY2FzZXMuICovCiNkZWZpbmUgRlRESV9FTFZfQ0xJNzAwMF9QSUQJMHhGQjU5CS8qIENvbXB1dGVyLUxpZ2h0LUludGVyZmFjZSAoQ0xJIDcwMDApICovCiNkZWZpbmUgRlRESV9FTFZfUFBTNzMzMF9QSUQJMHhGQjVDCS8qIFByb2Nlc3Nvci1Qb3dlci1TdXBwbHkgKFBQUyA3MzMwKSAqLwojZGVmaW5lIEZURElfRUxWX1RGTTEwMF9QSUQJMHhGQjVECS8qIFRlbXBlcmF0dXItRmV1Y2h0ZS1NZXNzZ2VyYWV0IChURk0gMTAwKSAqLwojZGVmaW5lIEZURElfRUxWX1VERjc3X1BJRAkweEZCNUUJLyogVVNCIERDRiBGdW5rdWhyIChVREYgNzcpICovCiNkZWZpbmUgRlRESV9FTFZfVUlPODhfUElECTB4RkI1RgkvKiBVU0ItSS9PIEludGVyZmFjZSAoVUlPIDg4KSAqLwoKLyoKICogRVZFUiBFY28gUHJvIFVQUyAoaHR0cDovL3d3dy5ldmVyLmNvbS5wbC8pCiAqLwoKI2RlZmluZQlFVkVSX0VDT19QUk9fQ0RTCTB4ZTUyMAkvKiBSUy0yMzIgY29udmVydGVyICovCgovKgogKiBBY3RpdmUgUm9ib3RzIHByb2R1Y3QgaWRzLgogKi8KI2RlZmluZSBGVERJX0FDVElWRV9ST0JPVFNfUElECTB4RTU0OAkvKiBVU0IgY29tbXMgYm9hcmQgKi8KCi8qIFB5cmFtaWQgQ29tcHV0ZXIgR21iSCAqLwojZGVmaW5lIEZURElfUFlSQU1JRF9QSUQJMHhFNkM4CS8qIFB5cmFtaWQgQXBwbGlhbmNlIERpc3BsYXkgKi8KCi8qIHd3dy5lbHN0ZXJlbGVjdHJpY2l0eS5jb20gRWxzdGVyIFVuaWNvbSBJSUkgT3B0aWNhbCBQcm9iZSAqLwojZGVmaW5lIEZURElfRUxTVEVSX1VOSUNPTV9QSUQJCTB4RTcwMCAvKiBQcm9kdWN0IElkICovCgovKgogKiBHdWRlIEFuYWxvZy0gdW5kIERpZ2l0YWxzeXN0ZW1lIEdtYkgKICovCiNkZWZpbmUgRlRESV9HVURFQURTX0U4MDhfUElEICAgIDB4RTgwOAojZGVmaW5lIEZURElfR1VERUFEU19FODA5X1BJRCAgICAweEU4MDkKI2RlZmluZSBGVERJX0dVREVBRFNfRTgwQV9QSUQgICAgMHhFODBBCiNkZWZpbmUgRlRESV9HVURFQURTX0U4MEJfUElEICAgIDB4RTgwQgojZGVmaW5lIEZURElfR1VERUFEU19FODBDX1BJRCAgICAweEU4MEMKI2RlZmluZSBGVERJX0dVREVBRFNfRTgwRF9QSUQgICAgMHhFODBECiNkZWZpbmUgRlRESV9HVURFQURTX0U4MEVfUElEICAgIDB4RTgwRQojZGVmaW5lIEZURElfR1VERUFEU19FODBGX1BJRCAgICAweEU4MEYKI2RlZmluZSBGVERJX0dVREVBRFNfRTg4OF9QSUQgICAgMHhFODg4ICAvKiBFeHBlcnQgSVNETiBDb250cm9sIFVTQiAqLwojZGVmaW5lIEZURElfR1VERUFEU19FODg5X1BJRCAgICAweEU4ODkgIC8qIFVTQiBSUy0yMzIgT3B0b0JyaWRnZSAqLwojZGVmaW5lIEZURElfR1VERUFEU19FODhBX1BJRCAgICAweEU4OEEKI2RlZmluZSBGVERJX0dVREVBRFNfRTg4Ql9QSUQgICAgMHhFODhCCiNkZWZpbmUgRlRESV9HVURFQURTX0U4OENfUElEICAgIDB4RTg4QwojZGVmaW5lIEZURElfR1VERUFEU19FODhEX1BJRCAgICAweEU4OEQKI2RlZmluZSBGVERJX0dVREVBRFNfRTg4RV9QSUQgICAgMHhFODhFCiNkZWZpbmUgRlRESV9HVURFQURTX0U4OEZfUElEICAgIDB4RTg4RgoKLyoKICogRWNsbyAoaHR0cDovL3d3dy5lY2xvLnB0LykgcHJvZHVjdCBJRHMuCiAqIFBJRCAweEVBOTAgc3VibWl0dGVkIGJ5IE1hcnRpbiBHcmlsbC4KICovCiNkZWZpbmUgRlRESV9FQ0xPX0NPTV8xV0lSRV9QSUQJMHhFQTkwCS8qIENPTSB0byAxLVdpcmUgVVNCIGFkYXB0b3IgKi8KCi8qIFROQy1YIFVTQi10by1wYWNrZXQtcmFkaW8gYWRhcHRlciwgdmVyc2lvbnMgcHJpb3IgdG8gMy4wIChETFAgbW9kdWxlKSAqLwojZGVmaW5lIEZURElfVE5DX1hfUElECQkweEVCRTAKCi8qCiAqIFRlcmF0cm9uaWsgcHJvZHVjdCBpZHMuCiAqIFN1Ym1pdHRlZCBieSBPLiBX9mxmZWxzY2huZWlkZXIuCiAqLwojZGVmaW5lIEZURElfVEVSQVRST05JS19WQ1BfUElECSAweEVDODgJLyogVGVyYXRyb25payBkZXZpY2UgKHByZWZlcnJpbmcgVkNQIGRyaXZlciBvbiB3aW5kb3dzKSAqLwojZGVmaW5lIEZURElfVEVSQVRST05JS19EMlhYX1BJRCAweEVDODkJLyogVGVyYXRyb25payBkZXZpY2UgKHByZWZlcnJpbmcgRDJYWCBkcml2ZXIgb24gd2luZG93cykgKi8KCi8qIFJpZyBFeHBlcnQgVWtyYWluZSBkZXZpY2VzICovCiNkZWZpbmUgRlRESV9SRVVfVElOWV9QSUQJCTB4RUQyMgkvKiBSaWdFeHBlcnQgVGlueSAqLwoKLyoKICogSGFtZWcgSE84MjAgYW5kIEhPODcwIGludGVyZmFjZSAodXNpbmcgVklEIDB4MDQwMykKICovCiNkZWZpbmUgSEFNRUdfSE84MjBfUElECQkJMHhlZDc0CiNkZWZpbmUgSEFNRUdfSE84NzBfUElECQkJMHhlZDcxCgovKgogKiAgTWF4U3RyZWFtIGRldmljZXMJd3d3Lm1heHN0cmVhbS5uZXQKICovCiNkZWZpbmUgRlRESV9NQVhTVFJFQU1fUElECTB4RUUxOAkvKiBYYmVlIFBLRy1VIE1vZHVsZSAqLwoKLyoKICogbWljcm9IQU0gcHJvZHVjdCBJRHMgKGh0dHA6Ly93d3cubWljcm9oYW0uY29tKS4KICogU3VibWl0dGVkIGJ5IEp1c3RpbiBCdXJrZXQgKEtMMVJMKSA8em9ydG9uQGp0YW4uY29tPgogKiBhbmQgTWlrZSBTdHVkZXIgKEs2RUVQKSA8azZlZXBAaGFtc29mdHdhcmUub3JnPi4KICogSWFuIEFiYm90dCA8YWJib3R0aUBtZXYuY28udWs+IGFkZGVkIGEgZmV3IG1vcmUgZnJvbSB0aGUgZHJpdmVyIElORiBmaWxlLgogKi8KI2RlZmluZSBGVERJX01IQU1fS1dfUElECTB4RUVFOAkvKiBVU0ItS1cgaW50ZXJmYWNlICovCiNkZWZpbmUgRlRESV9NSEFNX1lTX1BJRAkweEVFRTkJLyogVVNCLVlTIGludGVyZmFjZSAqLwojZGVmaW5lIEZURElfTUhBTV9ZNl9QSUQJMHhFRUVBCS8qIFVTQi1ZNiBpbnRlcmZhY2UgKi8KI2RlZmluZSBGVERJX01IQU1fWThfUElECTB4RUVFQgkvKiBVU0ItWTggaW50ZXJmYWNlICovCiNkZWZpbmUgRlRESV9NSEFNX0lDX1BJRAkweEVFRUMJLyogVVNCLUlDIGludGVyZmFjZSAqLwojZGVmaW5lIEZURElfTUhBTV9EQjlfUElECTB4RUVFRAkvKiBVU0ItREI5IGludGVyZmFjZSAqLwojZGVmaW5lIEZURElfTUhBTV9SUzIzMl9QSUQJMHhFRUVFCS8qIFVTQi1SUzIzMiBpbnRlcmZhY2UgKi8KI2RlZmluZSBGVERJX01IQU1fWTlfUElECTB4RUVFRgkvKiBVU0ItWTkgaW50ZXJmYWNlICovCgovKiBEb21pbnRlbGwgcHJvZHVjdHMgIGh0dHA6Ly93d3cuZG9taW50ZWxsLmNvbSAqLwojZGVmaW5lIEZURElfRE9NSU5URUxMX0RHUUdfUElECTB4RUY1MAkvKiBNYXN0ZXIgKi8KI2RlZmluZSBGVERJX0RPTUlOVEVMTF9EVVNCX1BJRAkweEVGNTEJLyogRFVTQjAxIG1vZHVsZSAqLwoKLyoKICogVGhlIGZvbGxvd2luZyBhcmUgdGhlIHZhbHVlcyBmb3IgdGhlIFBlcmxlIFN5c3RlbXMKICogVWx0cmFQb3J0IFVTQiBzZXJpYWwgY29udmVydGVycwogKi8KI2RlZmluZSBGVERJX1BFUkxFX1VMVFJBUE9SVF9QSUQgMHhGMEMwCS8qIFBlcmxlIFVsdHJhUG9ydCBQcm9kdWN0IElkICovCgovKiBTcHJvZyBJSSAoQW5kcmV3IENyb3NsYW5kJ3MgU3Byb2dJSSBEQ0MgaW50ZXJmYWNlKSAqLwojZGVmaW5lIEZURElfU1BST0dfSUkJCTB4RjBDOAoKLyogYW4gaW5mcmFyZWQgcmVjZWl2ZXIgZm9yIHVzZXIgYWNjZXNzIGNvbnRyb2wgd2l0aCBJUiB0YWdzICovCiNkZWZpbmUgRlRESV9QSUVHUk9VUF9QSUQJMHhGMjA4CS8qIFByb2R1Y3QgSWQgKi8KCi8qIEFDVCBTb2x1dGlvbnMgSG9tZVBybyBaV2F2ZSBpbnRlcmZhY2UKICAgKGh0dHA6Ly93d3cuYWN0LXNvbHV0aW9ucy5jb20vSG9tZVByby5odG0pICovCiNkZWZpbmUgRlRESV9BQ1RaV0FWRV9QSUQJMHhGMkQwCgovKgogKiA0Ti1HQUxBWFkuREUgUElEcyBmb3IgQ0FOLVVTQiwgVVNCLVJTMjMyLCBVU0ItUlM0MjIsIFVTQi1SUzQ4NSwKICogVVNCLVRUWSBha3RpdiwgVVNCLVRUWSBwYXNzaXYuICBTb21lIFBJRHMgYXJlIHVzZWQgYnkgc2V2ZXJhbCBkZXZpY2VzCiAqIGFuZCBJJ20gbm90IGVudGlyZWx5IHN1cmUgd2hpY2ggYXJlIHVzZWQgYnkgd2hpY2guCiAqLwojZGVmaW5lIEZURElfNE5fR0FMQVhZX0RFXzFfUElECTB4RjNDMAojZGVmaW5lIEZURElfNE5fR0FMQVhZX0RFXzJfUElECTB4RjNDMQoKLyoKICogTGlueCBUZWNobm9sb2dpZXMgcHJvZHVjdCBpZHMKICovCiNkZWZpbmUgTElOWF9TRE1VU0JRU1NfUElECTB4RjQ0OAkvKiBMaW54IFNETS1VU0ItUVMtUyAqLwojZGVmaW5lIExJTlhfTUFTVEVSREVWRUwyX1BJRCAgIDB4RjQ0OQkvKiBMaW54IE1hc3RlciBEZXZlbG9wbWVudCAyLjAgKi8KI2RlZmluZSBMSU5YX0ZVVFVSRV8wX1BJRCAgIDB4RjQ0QQkvKiBMaW54IGZ1dHVyZSBkZXZpY2UgKi8KI2RlZmluZSBMSU5YX0ZVVFVSRV8xX1BJRCAgIDB4RjQ0QgkvKiBMaW54IGZ1dHVyZSBkZXZpY2UgKi8KI2RlZmluZSBMSU5YX0ZVVFVSRV8yX1BJRCAgIDB4RjQ0QwkvKiBMaW54IGZ1dHVyZSBkZXZpY2UgKi8KCi8qCiAqIE9jZWFuaWMgcHJvZHVjdCBpZHMKICovCiNkZWZpbmUgRlRESV9PQ0VBTklDX1BJRAkweEY0NjAgIC8qIE9jZWFuaWMgZGl2ZSBpbnN0cnVtZW50ICovCgovKgogKiBTVVVOVE8gcHJvZHVjdCBpZHMKICovCiNkZWZpbmUgRlRESV9TVVVOVE9fU1BPUlRTX1BJRAkweEY2ODAJLyogU3V1bnRvIFNwb3J0cyBpbnN0cnVtZW50ICovCgovKiBVU0ItVUlSVCAtIEFuIGluZnJhcmVkIHJlY2VpdmVyIGFuZCB0cmFuc21pdHRlciB1c2luZyB0aGUgOFUyMzJBTSBjaGlwICovCi8qIGh0dHA6Ly9ob21lLmVhcnRobGluay5uZXQvfmpyaGVlcy9VU0JVSVJUL2luZGV4Lmh0bSAqLwojZGVmaW5lIEZURElfVVNCX1VJUlRfUElECTB4Rjg1MAkvKiBQcm9kdWN0IElkICovCgovKiBDQ1MgSW5jLiBJQ0RVL0lDRFU0MCBwcm9kdWN0IElEIC0KICogdGhlIEZUMjMyQk0gaXMgdXNlZCBpbiBhbiBpbi1jaXJjdWl0LWRlYnVnZ2VyIHVuaXQgZm9yIFBJQzE2J3MvUElDMTgncyAqLwojZGVmaW5lIEZURElfQ0NTSUNEVTIwXzBfUElEICAgIDB4RjlEMAojZGVmaW5lIEZURElfQ0NTSUNEVTQwXzFfUElEICAgIDB4RjlEMQojZGVmaW5lIEZURElfQ0NTTUFDSFhfMl9QSUQgICAgIDB4RjlEMgojZGVmaW5lIEZURElfQ0NTTE9BRF9OX0dPXzNfUElEIDB4RjlEMwojZGVmaW5lIEZURElfQ0NTSUNEVTY0XzRfUElEICAgIDB4RjlENAojZGVmaW5lIEZURElfQ0NTUFJJTUU4XzVfUElEICAgIDB4RjlENQoKLyoKICogVGhlIGZvbGxvd2luZyBhcmUgdGhlIHZhbHVlcyBmb3IgdGhlIE1hdHJpeCBPcmJpdGFsIExDRCBkaXNwbGF5cywKICogd2hpY2ggYXJlIHRoZSBGVDIzMkJNICggc2ltaWxhciB0byB0aGUgOFUyMzJBTSApCiAqLwojZGVmaW5lIEZURElfTVRYT1JCXzBfUElEICAgICAgMHhGQTAwICAvKiBNYXRyaXggT3JiaXRhbCBQcm9kdWN0IElkICovCiNkZWZpbmUgRlRESV9NVFhPUkJfMV9QSUQgICAgICAweEZBMDEgIC8qIE1hdHJpeCBPcmJpdGFsIFByb2R1Y3QgSWQgKi8KI2RlZmluZSBGVERJX01UWE9SQl8yX1BJRCAgICAgIDB4RkEwMiAgLyogTWF0cml4IE9yYml0YWwgUHJvZHVjdCBJZCAqLwojZGVmaW5lIEZURElfTVRYT1JCXzNfUElEICAgICAgMHhGQTAzICAvKiBNYXRyaXggT3JiaXRhbCBQcm9kdWN0IElkICovCiNkZWZpbmUgRlRESV9NVFhPUkJfNF9QSUQgICAgICAweEZBMDQgIC8qIE1hdHJpeCBPcmJpdGFsIFByb2R1Y3QgSWQgKi8KI2RlZmluZSBGVERJX01UWE9SQl81X1BJRCAgICAgIDB4RkEwNSAgLyogTWF0cml4IE9yYml0YWwgUHJvZHVjdCBJZCAqLwojZGVmaW5lIEZURElfTVRYT1JCXzZfUElEICAgICAgMHhGQTA2ICAvKiBNYXRyaXggT3JiaXRhbCBQcm9kdWN0IElkICovCgovKgogKiBIb21lIEVsZWN0cm9uaWNzICh3d3cuaG9tZS1lbGVjdHJvLmNvbSkgVVNCIGdhZGdldHMKICovCiNkZWZpbmUgRlRESV9IRV9USVJBMV9QSUQJMHhGQTc4CS8qIFRpcmEtMSBJUiB0cmFuc2NlaXZlciAqLwoKLyogSW5zaWRlIEFjY2Vzc28gY29udGFjdGxlc3MgcmVhZGVyIChodHRwOi8vd3d3Lmluc2lkZWZyLmNvbSkgKi8KI2RlZmluZSBJTlNJREVfQUNDRVNTTwkJMHhGQUQwCgovKgogKiBUaG9yTGFicyBVU0IgbW90b3IgZHJpdmVycwogKi8KI2RlZmluZSBGVERJX1RIT1JMQUJTX1BJRAkJMHhmYWYwIC8qIFRob3JMYWJzIFVTQiBtb3RvciBkcml2ZXJzICovCgovKgogKiBQcm90ZWdvIHByb2R1Y3QgaWRzCiAqLwojZGVmaW5lIFBST1RFR09fU1BFQ0lBTF8xCTB4RkM3MAkvKiBzcGVjaWFsL3Vua25vd24gZGV2aWNlICovCiNkZWZpbmUgUFJPVEVHT19SMlgwCQkweEZDNzEJLyogUjIwMC1VU0IgVFJORyB1bml0IChSMjEwLCBSMjIwLCBhbmQgUjIzMCkgKi8KI2RlZmluZSBQUk9URUdPX1NQRUNJQUxfMwkweEZDNzIJLyogc3BlY2lhbC91bmtub3duIGRldmljZSAqLwojZGVmaW5lIFBST1RFR09fU1BFQ0lBTF80CTB4RkM3MwkvKiBzcGVjaWFsL3Vua25vd24gZGV2aWNlICovCgovKgogKiBEU1MtMjAgU3luYyBTdGF0aW9uIGZvciBTb255IEVyaWNzc29uIFA4MDAKICovCiNkZWZpbmUgRlRESV9EU1MyMF9QSUQgICAgICAgICAgMHhGQzgyCgovKiB3d3cuaXJ0cmFucy5kZSBkZXZpY2UgKi8KI2RlZmluZSBGVERJX0lSVFJBTlNfUElEIDB4RkM2MCAvKiBQcm9kdWN0IElkICovCgovKgogKiBSTSBNaWNoYWVsaWRlcyBDQU52aWV3IFVTQiAoaHR0cDovL3d3dy5ybWNhbi5jb20pIChGVERJX1ZJRCkKICogQ0FOIGZpZWxkYnVzIGludGVyZmFjZSBhZGFwdGVyLCBhZGRlZCBieSBwb3J0IEdtYkggd3d3LnBvcnQuZGUpCiAqIElhbiBBYmJvdHQgY2hhbmdlZCB0aGUgbWFjcm8gbmFtZXMgZm9yIGNvbnNpc3RlbmN5LgogKi8KI2RlZmluZSBGVERJX1JNX0NBTlZJRVdfUElECTB4ZmQ2MAkvKiBQcm9kdWN0IElkICovCi8qIHd3dy50aG91Z2h0dGVjaG5vbG9neS5jb20vIFRULVVTQiBwcm92aWRlIHdpdGggcHJvY29tcCB1c2UgZnRkaV9zaW8gKi8KI2RlZmluZSBGVERJX1RUVVNCX1BJRCAweEZGMjAgLyogUHJvZHVjdCBJZCAqLwoKI2RlZmluZSBGVERJX1VTQlhfNzA3X1BJRCAweEY4NTcJLyogQURTVGVjaCBJUiBCbGFzdGVyIFVTQlgtNzA3IChGVERJX1ZJRCkgKi8KCiNkZWZpbmUgRlRESV9SRUxBSVNfUElECTB4RkExMCAgLyogUmVsYWlzIGRldmljZSBmcm9tIFJ1ZG9sZiBHdWdsZXIgKi8KCi8qCiAqIFBDREogdXNlIGZ0ZGkgYmFzZWQgZGotY29udHJvbGxlcnMuIFRoZSBmb2xsb3dpbmcgUElEIGlzCiAqIGZvciB0aGVpciBEQUMtMiBkZXZpY2UgaHR0cDovL3d3dy5wY2RqaGFyZHdhcmUuY29tL0RBQzIuYXNwCiAqICh0aGUgVklEIGlzIHRoZSBzdGFuZGFyZCBmdGRpIHZpZCAoRlRESV9WSUQpLCBQSUQgc2VudCBieSBXb3V0ZXIgUGFlc2VuKQogKi8KI2RlZmluZSBGVERJX1BDREpfREFDMl9QSUQgMHhGQTg4CgojZGVmaW5lIEZURElfUjIwMDBLVV9UUlVFX1JORwkweEZCODAgIC8qIFIyMDAwS1UgVFJVRSBSTkcgKEZURElfVklEKSAqLwoKLyoKICogRElFQk9MRCBCQ1MgU0U5MjMgKEZURElfVklEKQogKi8KI2RlZmluZSBESUVCT0xEX0JDU19TRTkyM19QSUQJMHhmYjk5CgovKiB3d3cuY3J5c3RhbGZvbnR6LmNvbSBkZXZpY2VzCiAqIC0gdGhhbnggZm9yIHByb3ZpZGluZyBmcmVlIGRldmljZXMgZm9yIGV2YWx1YXRpb24gIQogKiB0aGV5IHVzZSB0aGUgZnRkaSBjaGlwc2V0IGZvciB0aGUgVVNCIGludGVyZmFjZQogKiBhbmQgdGhlIHZlbmRvciBpZCBpcyB0aGUgc2FtZQogKi8KI2RlZmluZSBGVERJX1hGXzYzMl9QSUQgMHhGQzA4CS8qIDYzMjogMTZ4MiBDaGFyYWN0ZXIgRGlzcGxheSAqLwojZGVmaW5lIEZURElfWEZfNjM0X1BJRCAweEZDMDkJLyogNjM0OiAyMHg0IENoYXJhY3RlciBEaXNwbGF5ICovCiNkZWZpbmUgRlRESV9YRl81NDdfUElEIDB4RkMwQQkvKiA1NDc6IFR3byBsaW5lIERpc3BsYXkgKi8KI2RlZmluZSBGVERJX1hGXzYzM19QSUQgMHhGQzBCCS8qIDYzMzogMTZ4MiBDaGFyYWN0ZXIgRGlzcGxheSB3aXRoIEtleXMgKi8KI2RlZmluZSBGVERJX1hGXzYzMV9QSUQgMHhGQzBDCS8qIDYzMTogMjB4MiBDaGFyYWN0ZXIgRGlzcGxheSAqLwojZGVmaW5lIEZURElfWEZfNjM1X1BJRCAweEZDMEQJLyogNjM1OiAyMHg0IENoYXJhY3RlciBEaXNwbGF5ICovCiNkZWZpbmUgRlRESV9YRl82NDBfUElEIDB4RkMwRQkvKiA2NDA6IFR3byBsaW5lIERpc3BsYXkgKi8KI2RlZmluZSBGVERJX1hGXzY0Ml9QSUQgMHhGQzBGCS8qIDY0MjogVHdvIGxpbmUgRGlzcGxheSAqLwoKLyoKICogVmlkZW8gTmV0d29ya3MgTGltaXRlZCAvIEhvbWVjaG9pY2UgaW4gdGhlIFVLIHVzZSBhbiBmdGRpLWJhc2VkIGRldmljZQogKiBmb3IgdGhlaXIgMU1iIGJyb2FkYmFuZCBpbnRlcm5ldCBzZXJ2aWNlLiAgVGhlIGZvbGxvd2luZyBQSUQgaXMgZXhoaWJpdGVkCiAqIGJ5IHRoZSB1c2IgZGV2aWNlIHN1cHBsaWVkICh0aGUgVklEIGlzIHRoZSBzdGFuZGFyZCBmdGRpIHZpZCAoRlRESV9WSUQpCiAqLwojZGVmaW5lIEZURElfVk5IQ1BDVVNCX0RfUElEIDB4ZmUzOCAvKiBQcm9kdWN0IElkICovCgovKiBBbHBoYU1pY3JvIENvbXBvbmVudHMgQU1DLTIzMlVTQjAxIGRldmljZSAoRlRESV9WSUQpICovCiNkZWZpbmUgRlRESV9BTUMyMzJfUElEIDB4RkYwMCAvKiBQcm9kdWN0IElkICovCgovKgogKiBJQlMgZWxla3Ryb25payBwcm9kdWN0IGlkcyAoRlRESV9WSUQpCiAqIFN1Ym1pdHRlZCBieSBUaG9tYXMgU2NobGV1c2VuZXIKICovCiNkZWZpbmUgRlRESV9JQlNfVVM0ODVfUElECTB4ZmYzOCAgLyogSUJTIFVTNDg1IChVU0I8LS0+UlM0MjIvNDg1IGludGVyZmFjZSkgKi8KI2RlZmluZSBGVERJX0lCU19QSUNQUk9fUElECTB4ZmYzOSAgLyogSUJTIFBJQy1Qcm9ncmFtbWVyICovCiNkZWZpbmUgRlRESV9JQlNfUENNQ0lBX1BJRAkweGZmM2EgIC8qIElCUyBDYXJkIHJlYWRlciBmb3IgUENNQ0lBIFNSQU0tY2FyZHMgKi8KI2RlZmluZSBGVERJX0lCU19QSzFfUElECTB4ZmYzYiAgLyogSUJTIFBLMSAtIFBhcnRpY2VsIGNvdW50ZXIgKi8KI2RlZmluZSBGVERJX0lCU19SUzIzMk1PTl9QSUQJMHhmZjNjICAvKiBJQlMgUlMyMzIgLSBNb25pdG9yICovCiNkZWZpbmUgRlRESV9JQlNfQVBQNzBfUElECTB4ZmYzZCAgLyogQVBQIDcwIChkdXN0IG1vbml0b3Jpbmcgc3lzdGVtKSAqLwojZGVmaW5lIEZURElfSUJTX1BFRE9fUElECTB4ZmYzZSAgLyogSUJTIFBFRE8tTW9kZW0gKFJGIG1vZGVtIDg2OC4zNSBNSHopICovCiNkZWZpbmUgRlRESV9JQlNfUFJPRF9QSUQJMHhmZjNmICAvKiBmdXR1cmUgZGV2aWNlICovCi8qIHd3dy5jYW51c2IuY29tIExhd2ljZWwgQ0FOVVNCIGRldmljZSAoRlRESV9WSUQpICovCiNkZWZpbmUgRlRESV9DQU5VU0JfUElEIDB4RkZBOCAvKiBQcm9kdWN0IElkICovCgoKCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLyoqIHRoaXJkLXBhcnR5IFZJRC9QSUQgY29tYm9zICoqLwovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCgoKCi8qCiAqIEF0bWVsIFNUSzU0MQogKi8KI2RlZmluZSBBVE1FTF9WSUQJCTB4MDNlYiAvKiBWZW5kb3IgSUQgKi8KI2RlZmluZSBTVEs1NDFfUElECQkweDIxMDkgLyogWmlnYmVlIENvbnRyb2xsZXIgKi8KCi8qCiAqIEJsYWNrZmluIGduSUNFIEpUQUcKICogaHR0cDovL2RvY3MuYmxhY2tmaW4udWNsaW51eC5vcmcvZG9rdS5waHA/aWQ9aHc6anRhZzpnbmljZQogKi8KI2RlZmluZSBBRElfVklECQkJMHgwNDU2CiNkZWZpbmUgQURJX0dOSUNFX1BJRAkJMHhGMDAwCiNkZWZpbmUgQURJX0dOSUNFUExVU19QSUQJMHhGMDAxCgovKgogKiBSQVRPQyBSRVgtVVNCNjBGCiAqLwojZGVmaW5lIFJBVE9DX1ZFTkRPUl9JRAkJMHgwNTg0CiNkZWZpbmUgUkFUT0NfUFJPRFVDVF9JRF9VU0I2MEYJMHhiMDIwCgovKgogKiBDb250ZWMgcHJvZHVjdHMgKGh0dHA6Ly93d3cuY29udGVjLmNvbSkKICogU3VibWl0dGVkIGJ5IERhbmllbCBTYW5nb3JyaW4KICovCiNkZWZpbmUgQ09OVEVDX1ZJRAkJMHgwNkNFCS8qIFZlbmRvciBJRCAqLwojZGVmaW5lIENPTlRFQ19DT00xVVNCSF9QSUQJMHg4MzExCS8qIENPTS0xKFVTQilIICovCgovKgogKiBEZWZpbml0aW9ucyBmb3IgQiZCIEVsZWN0cm9uaWNzIHByb2R1Y3RzLgogKi8KI2RlZmluZSBCQU5EQl9WSUQJCTB4MDg1NgkvKiBCJkIgRWxlY3Ryb25pY3MgVmVuZG9yIElEICovCiNkZWZpbmUgQkFOREJfVVNPVEw0X1BJRAkweEFDMDEJLyogVVNPVEw0IElzb2xhdGVkIFJTLTQ4NSBDb252ZXJ0ZXIgKi8KI2RlZmluZSBCQU5EQl9VU1RMNF9QSUQJCTB4QUMwMgkvKiBVU1RMNCBSUy00ODUgQ29udmVydGVyICovCiNkZWZpbmUgQkFOREJfVVNPOU1MMl9QSUQJMHhBQzAzCS8qIFVTTzlNTDIgSXNvbGF0ZWQgUlMtMjMyIENvbnZlcnRlciAqLwojZGVmaW5lIEJBTkRCX1VTT1BUTDRfUElECTB4QUMxMQojZGVmaW5lIEJBTkRCX1VTUFRMNF9QSUQJMHhBQzEyCiNkZWZpbmUgQkFOREJfVVNPOU1MMkRSXzJfUElECTB4QUMxNgojZGVmaW5lIEJBTkRCX1VTTzlNTDJEUl9QSUQJMHhBQzE3CiNkZWZpbmUgQkFOREJfVVNPUFRMNERSMl9QSUQJMHhBQzE4CS8qIFVTT1BUTDRSLTIgMi1wb3J0IElzb2xhdGVkIFJTLTIzMiBDb252ZXJ0ZXIgKi8KI2RlZmluZSBCQU5EQl9VU09QVEw0RFJfUElECTB4QUMxOQojZGVmaW5lIEJBTkRCXzQ4NVVTQjlGXzJXX1BJRAkweEFDMjUKI2RlZmluZSBCQU5EQl80ODVVU0I5Rl80V19QSUQJMHhBQzI2CiNkZWZpbmUgQkFOREJfMjMyVVNCOU1fUElECTB4QUMyNwojZGVmaW5lIEJBTkRCXzQ4NVVTQlRCXzJXX1BJRAkweEFDMzMKI2RlZmluZSBCQU5EQl80ODVVU0JUQl80V19QSUQJMHhBQzM0CiNkZWZpbmUgQkFOREJfVFRMNVVTQjlNX1BJRAkweEFDNDkKI2RlZmluZSBCQU5EQl9UVEwzVVNCOU1fUElECTB4QUM1MAojZGVmaW5lIEJBTkRCX1paX1BST0cxX1VTQl9QSUQJMHhCQTAyCgovKgogKiBJbnRyZXBpZCBDb250cm9sIFN5c3RlbXMgKGh0dHA6Ly93d3cuaW50cmVwaWRjcy5jb20vKSBWYWx1ZUNBTiBhbmQgTmVvVkkKICovCiNkZWZpbmUgSU5UUkVQSURfVklECQkweDA5M0MKI2RlZmluZSBJTlRSRVBJRF9WQUxVRUNBTl9QSUQJMHgwNjAxCiNkZWZpbmUgSU5UUkVQSURfTkVPVklfUElECTB4MDcwMQoKLyoKICogRGVmaW5pdGlvbnMgZm9yIElEIFRFQ0ggKHd3dy5pZHQtbmV0LmNvbSkgZGV2aWNlcwogKi8KI2RlZmluZSBJRFRFQ0hfVklECQkweDBBQ0QJLyogSUQgVEVDSCBWZW5kb3IgSUQgKi8KI2RlZmluZSBJRFRFQ0hfSURUMTIyMVVfUElECTB4MDMwMAkvKiBJRFQxMjIxVSBVU0IgdG8gUlMtMjMyIGFkYXB0ZXIgKi8KCi8qCiAqIERlZmluaXRpb25zIGZvciBPbW5pZGlyZWN0aW9uYWwgQ29udHJvbCBUZWNobm9sb2d5LCBJbmMuIGRldmljZXMKICovCiNkZWZpbmUgT0NUX1ZJRAkJCTB4MEIzOQkvKiBPQ1QgdmVuZG9yIElEICovCi8qIE5vdGU6IE9DVCBVUzEwMSBpcyBhbHNvIHJlYmFkZ2VkIGFzIERpY2sgU21pdGggRWxlY3Ryb25pY3MgKE5aKSBYSDYzODEgKi8KLyogQWxzbyByZWJhZGdlZCBhcyBEaWNrIFNtaXRoIEVsZWN0cm9uaWNzIChBdXMpIFhINjQ1MSAqLwovKiBBbHNvIHJlYmFkZ2VkIGFzIFNJSUcgSW5jLiBtb2RlbCBVUzIzMDggaGFyZHdhcmUgdmVyc2lvbiAxICovCiNkZWZpbmUgT0NUX1VTMTAxX1BJRAkJMHgwNDIxCS8qIE9DVCBVUzEwMSBVU0IgdG8gUlMtMjMyICovCgovKgogKiBJY29tIElELTEgZGlnaXRhbCB0cmFuc2NlaXZlcgogKi8KCiNkZWZpbmUgSUNPTV9JRDFfVklEICAgICAgICAgICAgMHgwQzI2CiNkZWZpbmUgSUNPTV9JRDFfUElEICAgICAgICAgICAgMHgwMDA0CgovKgogKiBHTiBPdG9tZXRyaWNzIChodHRwOi8vd3d3Lm90b21ldHJpY3MuY29tKQogKiBTdWJtaXR0ZWQgYnkgVmlsbGUgU3VuZGJlcmcuCiAqLwojZGVmaW5lIEdOX09UT01FVFJJQ1NfVklECTB4MGMzMwkvKiBWZW5kb3IgSUQgKi8KI2RlZmluZSBBVVJJQ0FMX1VTQl9QSUQJCTB4MDAxMAkvKiBBdXJpY2FsIFVTQiBBdWRpb21ldGVyICovCgovKgogKiBUaGUgZm9sbG93aW5nIGFyZSB0aGUgdmFsdWVzIGZvciB0aGUgU2VhbGV2ZWwgU2VhTElOSysgYWRhcHRlcnMuCiAqIChPcmlnaW5hbCBsaXN0IHNlbnQgYnkgVHVhbiBIb2FuZy4gIElhbiBBYmJvdHQgcmVuYW1lZCB0aGUgbWFjcm9zIGFuZAogKiByZW1vdmVkIHNvbWUgUElEcyB0aGF0IGRvbid0IHNlZW0gdG8gbWF0Y2ggYW55IGV4aXN0aW5nIHByb2R1Y3RzLikKICovCiNkZWZpbmUgU0VBTEVWRUxfVklECQkweDBjNTIJLyogU2VhbGV2ZWwgVmVuZG9yIElEICovCiNkZWZpbmUgU0VBTEVWRUxfMjEwMV9QSUQJMHgyMTAxCS8qIFNlYUxJTksrMjMyICgyMTAxLzIxMDUpICovCiNkZWZpbmUgU0VBTEVWRUxfMjEwMl9QSUQJMHgyMTAyCS8qIFNlYUxJTksrNDg1ICgyMTAyKSAqLwojZGVmaW5lIFNFQUxFVkVMXzIxMDNfUElECTB4MjEwMwkvKiBTZWFMSU5LKzIzMkkgKDIxMDMpICovCiNkZWZpbmUgU0VBTEVWRUxfMjEwNF9QSUQJMHgyMTA0CS8qIFNlYUxJTksrNDg1SSAoMjEwNCkgKi8KI2RlZmluZSBTRUFMRVZFTF8yMTA2X1BJRAkweDkwMjAJLyogU2VhTElOSys0MjIgKDIxMDYpICovCiNkZWZpbmUgU0VBTEVWRUxfMjIwMV8xX1BJRAkweDIyMTEJLyogU2VhUE9SVCsyLzIzMiAoMjIwMSkgUG9ydCAxICovCiNkZWZpbmUgU0VBTEVWRUxfMjIwMV8yX1BJRAkweDIyMjEJLyogU2VhUE9SVCsyLzIzMiAoMjIwMSkgUG9ydCAyICovCiNkZWZpbmUgU0VBTEVWRUxfMjIwMl8xX1BJRAkweDIyMTIJLyogU2VhUE9SVCsyLzQ4NSAoMjIwMikgUG9ydCAxICovCiNkZWZpbmUgU0VBTEVWRUxfMjIwMl8yX1BJRAkweDIyMjIJLyogU2VhUE9SVCsyLzQ4NSAoMjIwMikgUG9ydCAyICovCiNkZWZpbmUgU0VBTEVWRUxfMjIwM18xX1BJRAkweDIyMTMJLyogU2VhUE9SVCsyICgyMjAzKSBQb3J0IDEgKi8KI2RlZmluZSBTRUFMRVZFTF8yMjAzXzJfUElECTB4MjIyMwkvKiBTZWFQT1JUKzIgKDIyMDMpIFBvcnQgMiAqLwojZGVmaW5lIFNFQUxFVkVMXzI0MDFfMV9QSUQJMHgyNDExCS8qIFNlYVBPUlQrNC8yMzIgKDI0MDEpIFBvcnQgMSAqLwojZGVmaW5lIFNFQUxFVkVMXzI0MDFfMl9QSUQJMHgyNDIxCS8qIFNlYVBPUlQrNC8yMzIgKDI0MDEpIFBvcnQgMiAqLwojZGVmaW5lIFNFQUxFVkVMXzI0MDFfM19QSUQJMHgyNDMxCS8qIFNlYVBPUlQrNC8yMzIgKDI0MDEpIFBvcnQgMyAqLwojZGVmaW5lIFNFQUxFVkVMXzI0MDFfNF9QSUQJMHgyNDQxCS8qIFNlYVBPUlQrNC8yMzIgKDI0MDEpIFBvcnQgNCAqLwojZGVmaW5lIFNFQUxFVkVMXzI0MDJfMV9QSUQJMHgyNDEyCS8qIFNlYVBPUlQrNC80ODUgKDI0MDIpIFBvcnQgMSAqLwojZGVmaW5lIFNFQUxFVkVMXzI0MDJfMl9QSUQJMHgyNDIyCS8qIFNlYVBPUlQrNC80ODUgKDI0MDIpIFBvcnQgMiAqLwojZGVmaW5lIFNFQUxFVkVMXzI0MDJfM19QSUQJMHgyNDMyCS8qIFNlYVBPUlQrNC80ODUgKDI0MDIpIFBvcnQgMyAqLwojZGVmaW5lIFNFQUxFVkVMXzI0MDJfNF9QSUQJMHgyNDQyCS8qIFNlYVBPUlQrNC80ODUgKDI0MDIpIFBvcnQgNCAqLwojZGVmaW5lIFNFQUxFVkVMXzI0MDNfMV9QSUQJMHgyNDEzCS8qIFNlYVBPUlQrNCAoMjQwMykgUG9ydCAxICovCiNkZWZpbmUgU0VBTEVWRUxfMjQwM18yX1BJRAkweDI0MjMJLyogU2VhUE9SVCs0ICgyNDAzKSBQb3J0IDIgKi8KI2RlZmluZSBTRUFMRVZFTF8yNDAzXzNfUElECTB4MjQzMwkvKiBTZWFQT1JUKzQgKDI0MDMpIFBvcnQgMyAqLwojZGVmaW5lIFNFQUxFVkVMXzI0MDNfNF9QSUQJMHgyNDQzCS8qIFNlYVBPUlQrNCAoMjQwMykgUG9ydCA0ICovCiNkZWZpbmUgU0VBTEVWRUxfMjgwMV8xX1BJRAkwWDI4MTEJLyogU2VhTElOSys4LzIzMiAoMjgwMSkgUG9ydCAxICovCiNkZWZpbmUgU0VBTEVWRUxfMjgwMV8yX1BJRAkwWDI4MjEJLyogU2VhTElOSys4LzIzMiAoMjgwMSkgUG9ydCAyICovCiNkZWZpbmUgU0VBTEVWRUxfMjgwMV8zX1BJRAkwWDI4MzEJLyogU2VhTElOSys4LzIzMiAoMjgwMSkgUG9ydCAzICovCiNkZWZpbmUgU0VBTEVWRUxfMjgwMV80X1BJRAkwWDI4NDEJLyogU2VhTElOSys4LzIzMiAoMjgwMSkgUG9ydCA0ICovCiNkZWZpbmUgU0VBTEVWRUxfMjgwMV81X1BJRAkwWDI4NTEJLyogU2VhTElOSys4LzIzMiAoMjgwMSkgUG9ydCA1ICovCiNkZWZpbmUgU0VBTEVWRUxfMjgwMV82X1BJRAkwWDI4NjEJLyogU2VhTElOSys4LzIzMiAoMjgwMSkgUG9ydCA2ICovCiNkZWZpbmUgU0VBTEVWRUxfMjgwMV83X1BJRAkwWDI4NzEJLyogU2VhTElOSys4LzIzMiAoMjgwMSkgUG9ydCA3ICovCiNkZWZpbmUgU0VBTEVWRUxfMjgwMV84X1BJRAkwWDI4ODEJLyogU2VhTElOSys4LzIzMiAoMjgwMSkgUG9ydCA4ICovCiNkZWZpbmUgU0VBTEVWRUxfMjgwMl8xX1BJRAkwWDI4MTIJLyogU2VhTElOSys4LzQ4NSAoMjgwMikgUG9ydCAxICovCiNkZWZpbmUgU0VBTEVWRUxfMjgwMl8yX1BJRAkwWDI4MjIJLyogU2VhTElOSys4LzQ4NSAoMjgwMikgUG9ydCAyICovCiNkZWZpbmUgU0VBTEVWRUxfMjgwMl8zX1BJRAkwWDI4MzIJLyogU2VhTElOSys4LzQ4NSAoMjgwMikgUG9ydCAzICovCiNkZWZpbmUgU0VBTEVWRUxfMjgwMl80X1BJRAkwWDI4NDIJLyogU2VhTElOSys4LzQ4NSAoMjgwMikgUG9ydCA0ICovCiNkZWZpbmUgU0VBTEVWRUxfMjgwMl81X1BJRAkwWDI4NTIJLyogU2VhTElOSys4LzQ4NSAoMjgwMikgUG9ydCA1ICovCiNkZWZpbmUgU0VBTEVWRUxfMjgwMl82X1BJRAkwWDI4NjIJLyogU2VhTElOSys4LzQ4NSAoMjgwMikgUG9ydCA2ICovCiNkZWZpbmUgU0VBTEVWRUxfMjgwMl83X1BJRAkwWDI4NzIJLyogU2VhTElOSys4LzQ4NSAoMjgwMikgUG9ydCA3ICovCiNkZWZpbmUgU0VBTEVWRUxfMjgwMl84X1BJRAkwWDI4ODIJLyogU2VhTElOSys4LzQ4NSAoMjgwMikgUG9ydCA4ICovCiNkZWZpbmUgU0VBTEVWRUxfMjgwM18xX1BJRAkwWDI4MTMJLyogU2VhTElOSys4ICgyODAzKSBQb3J0IDEgKi8KI2RlZmluZSBTRUFMRVZFTF8yODAzXzJfUElECTBYMjgyMwkvKiBTZWFMSU5LKzggKDI4MDMpIFBvcnQgMiAqLwojZGVmaW5lIFNFQUxFVkVMXzI4MDNfM19QSUQJMFgyODMzCS8qIFNlYUxJTksrOCAoMjgwMykgUG9ydCAzICovCiNkZWZpbmUgU0VBTEVWRUxfMjgwM180X1BJRAkwWDI4NDMJLyogU2VhTElOSys4ICgyODAzKSBQb3J0IDQgKi8KI2RlZmluZSBTRUFMRVZFTF8yODAzXzVfUElECTBYMjg1MwkvKiBTZWFMSU5LKzggKDI4MDMpIFBvcnQgNSAqLwojZGVmaW5lIFNFQUxFVkVMXzI4MDNfNl9QSUQJMFgyODYzCS8qIFNlYUxJTksrOCAoMjgwMykgUG9ydCA2ICovCiNkZWZpbmUgU0VBTEVWRUxfMjgwM183X1BJRAkwWDI4NzMJLyogU2VhTElOSys4ICgyODAzKSBQb3J0IDcgKi8KI2RlZmluZSBTRUFMRVZFTF8yODAzXzhfUElECTBYMjg4MwkvKiBTZWFMSU5LKzggKDI4MDMpIFBvcnQgOCAqLwoKLyoKICogSkVUSSBTUEVDVFJPTUVURVIgU1BFQ0JPUyAxMjAxCiAqIGh0dHA6Ly93d3cuamV0aS5jb20vcHJvZHVjdHMvc3lzL3NjYi9zY2IxMjAxLnBocAogKi8KI2RlZmluZSBKRVRJX1ZJRAkJMHgwYzZjCiNkZWZpbmUgSkVUSV9TUEMxMjAxX1BJRAkweDA0YjIKCi8qCiAqIEZUREkgVVNCIFVBUlQgY2hpcHMgdXNlZCBpbiBjb25zdHJ1Y3Rpb24gcHJvamVjdHMgZnJvbSB0aGUKICogRWxla3RvciBFbGVjdHJvbmljcyBtYWdhemluZSAoaHR0cDovL2VsZWt0b3ItZWxlY3Ryb25pY3MuY28udWspCiAqLwojZGVmaW5lIEVMRUtUT1JfVklECQkweDBDN0QKI2RlZmluZSBFTEVLVE9SX0ZUMzIzUl9QSUQJMHgwMDA1CS8qIFJGSUQtUmVhZGVyLCBpc3N1ZSAwOS0yMDA2ICovCgovKgogKiBQb3NpZmxleCBpbmMgcmV0YWlsIGVxdWlwbWVudCAoaHR0cDovL3d3dy5wb3NpZmxleC5jb20udHcpCiAqLwojZGVmaW5lIFBPU0lGTEVYX1ZJRAkJMHgwZDNhICAvKiBWZW5kb3IgSUQgKi8KI2RlZmluZSBQT1NJRkxFWF9QUDcwMDBfUElECTB4MDMwMCAgLyogUFAtNzAwMElJIHRoZXJtYWwgcHJpbnRlciAqLwoKLyoKICogVGhlIGZvbGxvd2luZyBhcmUgdGhlIHZhbHVlcyBmb3IgdHdvIEtPQklMIGNoaXBjYXJkIHRlcm1pbmFscy4KICovCiNkZWZpbmUgS09CSUxfVklECQkweDBkNDYJLyogS09CSUwgVmVuZG9yIElEICovCiNkZWZpbmUgS09CSUxfQ09OVl9CMV9QSUQJMHgyMDIwCS8qIEtPQklMIEtvbnZlcnRlciBmb3IgQjEgKi8KI2RlZmluZSBLT0JJTF9DT05WX0tBQU5fUElECTB4MjAyMQkvKiBLT0JJTF9Lb252ZXJ0ZXIgZm9yIEtBQU4gKi8KCiNkZWZpbmUgRlRESV9ORl9SSUNfVklECTB4MERDRAkvKiBWZW5kb3IgSWQgKi8KI2RlZmluZSBGVERJX05GX1JJQ19QSUQJMHgwMDAxCS8qIFByb2R1Y3QgSWQgKi8KCi8qCiAqIEZhbGNvbSBXaXJlbGVzcyBDb21tdW5pY2F0aW9ucyBHbWJICiAqLwojZGVmaW5lIEZBTENPTV9WSUQJCTB4MEY5NAkvKiBWZW5kb3IgSWQgKi8KI2RlZmluZSBGQUxDT01fVFdJU1RfUElECTB4MDAwMQkvKiBGYWxjb20gVHdpc3QgVVNCIEdQUlMgbW9kZW0gKi8KI2RlZmluZSBGQUxDT01fU0FNQkFfUElECTB4MDAwNQkvKiBGYWxjb20gU2FtYmEgVVNCIEdQUlMgbW9kZW0gKi8KCi8qIExhcnNlbiBhbmQgQnJ1c2dhYXJkIEFsdGlUcmFjay9VU0J0cmFjayAqLwojZGVmaW5lIExBUlNFTkJSVVNHQUFSRF9WSUQJCTB4MEZEOAojZGVmaW5lIExCX0FMVElUUkFDS19QSUQJCTB4MDAwMQoKLyoKICogVFRpIChUaHVybGJ5IFRoYW5kYXIgSW5zdHJ1bWVudHMpCiAqLwojZGVmaW5lIFRUSV9WSUQJCQkweDEwM0UJLyogVmVuZG9yIElkICovCiNkZWZpbmUgVFRJX1FMMzU1UF9QSUQJCTB4MDNFOAkvKiBUVGkgUUwzNTVQIHBvd2VyIHN1cHBseSAqLwoKLyogSW50ZXJiaW9tZXRyaWNzIFVTQiBJL08gQm9hcmQgKi8KLyogRGV2ZWxvcGVkIGZvciBJbnRlcmJpb21ldHJpY3MgYnkgUnVkb2xmIEd1Z2xlciAqLwojZGVmaW5lIElOVEVSQklPTUVUUklDU19WSUQgICAgICAgICAgICAgIDB4MTIwOQojZGVmaW5lIElOVEVSQklPTUVUUklDU19JT0JPQVJEX1BJRCAgICAgIDB4MTAwMgojZGVmaW5lIElOVEVSQklPTUVUUklDU19NSU5JX0lPQk9BUkRfUElEIDB4MTAwNgoKLyoKICogVGVzdG8gcHJvZHVjdHMgKGh0dHA6Ly93d3cudGVzdG8uY29tLykKICogU3VibWl0dGVkIGJ5IENvbGluIExlcm95CiAqLwojZGVmaW5lIFRFU1RPX1ZJRAkJCTB4MTI4RAojZGVmaW5lIFRFU1RPX1VTQl9JTlRFUkZBQ0VfUElECQkweDAwMDEKCi8qCiAqIE1vYmlsaXR5IEVsZWN0cm9uaWNzIHByb2R1Y3RzLgogKi8KI2RlZmluZSBNT0JJTElUWV9WSUQJCQkweDEzNDIKI2RlZmluZSBNT0JJTElUWV9VU0JfU0VSSUFMX1BJRAkJMHgwMjAyCS8qIEVhc2lEb2NrIFVTQiAyMDAgc2VyaWFsICovCgovKgogKiBGSUMgLyBPcGVuTW9rbywgSW5jLiBodHRwOi8vd2lraS5vcGVubW9rby5vcmcvd2lraS9OZW8xOTczX0RlYnVnX0JvYXJkX3YzCiAqIFN1Ym1pdHRlZCBieSBIYXJhbGQgV2VsdGUgPGxhZm9yZ2VAb3Blbm1va28ub3JnPgogKi8KI2RlZmluZQlGSUNfVklECQkJMHgxNDU3CiNkZWZpbmUJRklDX05FTzE5NzNfREVCVUdfUElECTB4NTExOAoKLyogT2xpbWV4ICovCiNkZWZpbmUgT0xJTUVYX1ZJRAkJCTB4MTVCQQojZGVmaW5lIE9MSU1FWF9BUk1fVVNCX09DRF9QSUQJCTB4MDAwMwoKLyoKICogVGVsbGR1cyBUZWNobm9sb2dpZXMKICovCiNkZWZpbmUgVEVMTERVU19WSUQJCQkweDE3ODEJLyogVmVuZG9yIElEICovCiNkZWZpbmUgVEVMTERVU19URUxMU1RJQ0tfUElECQkweDBDMzAJLyogUkYgY29udHJvbCBkb25nbGUgNDMzIE1IeiB1c2luZyBGVDIzMlJMICovCgovKgogKiBSVCBTeXN0ZW1zIHByb2dyYW1taW5nIGNhYmxlcyBmb3IgdmFyaW91cyBoYW0gcmFkaW9zCiAqLwojZGVmaW5lIFJUU1lTVEVNU19WSUQJCQkweDIxMDAJLyogVmVuZG9yIElEICovCiNkZWZpbmUgUlRTWVNURU1TX1NFUklBTF9WWDdfUElECTB4OWU1MgkvKiBTZXJpYWwgY29udmVydGVyIGZvciBWWC03IFJhZGlvcyB1c2luZyBGVDIzMlJMICovCgovKgogKiBCYXllciBBc2NlbnNpYSBDb250b3VyIGJsb29kIGdsdWNvc2UgbWV0ZXIgVVNCLWNvbnZlcnRlciBjYWJsZS4KICogaHR0cDovL3dpbmdsdWNvZmFjdHMuY29tL2NhYmxlcy8KICovCiNkZWZpbmUgQkFZRVJfVklEICAgICAgICAgICAgICAgICAgICAgIDB4MUE3OQojZGVmaW5lIEJBWUVSX0NPTlRPVVJfQ0FCTEVfUElEICAgICAgICAweDYwMDEKCi8qCiAqIFRoZSBmb2xsb3dpbmcgYXJlIHRoZSB2YWx1ZXMgZm9yIHRoZSBNYXRyaXggT3JiaXRhbCBGVERJIFJhbmdlCiAqIEFueXRoaW5nIGluIHRoaXMgcmFuZ2Ugd2lsbCB1c2UgYW4gRlQyMzJSTC4KICovCiNkZWZpbmUgTVRYT1JCX1ZJRAkJCTB4MUIzRAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMDBfUElECTB4MDEwMAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMDFfUElECTB4MDEwMQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMDJfUElECTB4MDEwMgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMDNfUElECTB4MDEwMwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMDRfUElECTB4MDEwNAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMDVfUElECTB4MDEwNQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMDZfUElECTB4MDEwNgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMDdfUElECTB4MDEwNwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMDhfUElECTB4MDEwOAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMDlfUElECTB4MDEwOQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMEFfUElECTB4MDEwQQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMEJfUElECTB4MDEwQgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMENfUElECTB4MDEwQwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMERfUElECTB4MDEwRAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMEVfUElECTB4MDEwRQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMEZfUElECTB4MDEwRgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMTBfUElECTB4MDExMAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMTFfUElECTB4MDExMQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMTJfUElECTB4MDExMgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMTNfUElECTB4MDExMwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMTRfUElECTB4MDExNAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMTVfUElECTB4MDExNQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMTZfUElECTB4MDExNgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMTdfUElECTB4MDExNwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMThfUElECTB4MDExOAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMTlfUElECTB4MDExOQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMUFfUElECTB4MDExQQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMUJfUElECTB4MDExQgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMUNfUElECTB4MDExQwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMURfUElECTB4MDExRAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMUVfUElECTB4MDExRQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMUZfUElECTB4MDExRgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMjBfUElECTB4MDEyMAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMjFfUElECTB4MDEyMQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMjJfUElECTB4MDEyMgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMjNfUElECTB4MDEyMwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMjRfUElECTB4MDEyNAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMjVfUElECTB4MDEyNQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMjZfUElECTB4MDEyNgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMjdfUElECTB4MDEyNwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMjhfUElECTB4MDEyOAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMjlfUElECTB4MDEyOQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMkFfUElECTB4MDEyQQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMkJfUElECTB4MDEyQgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMkNfUElECTB4MDEyQwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMkRfUElECTB4MDEyRAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMkVfUElECTB4MDEyRQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMkZfUElECTB4MDEyRgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMzBfUElECTB4MDEzMAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMzFfUElECTB4MDEzMQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMzJfUElECTB4MDEzMgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMzNfUElECTB4MDEzMwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMzRfUElECTB4MDEzNAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMzVfUElECTB4MDEzNQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMzZfUElECTB4MDEzNgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMzdfUElECTB4MDEzNwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMzhfUElECTB4MDEzOAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxMzlfUElECTB4MDEzOQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxM0FfUElECTB4MDEzQQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxM0JfUElECTB4MDEzQgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxM0NfUElECTB4MDEzQwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxM0RfUElECTB4MDEzRAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxM0VfUElECTB4MDEzRQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxM0ZfUElECTB4MDEzRgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNDBfUElECTB4MDE0MAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNDFfUElECTB4MDE0MQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNDJfUElECTB4MDE0MgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNDNfUElECTB4MDE0MwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNDRfUElECTB4MDE0NAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNDVfUElECTB4MDE0NQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNDZfUElECTB4MDE0NgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNDdfUElECTB4MDE0NwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNDhfUElECTB4MDE0OAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNDlfUElECTB4MDE0OQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNEFfUElECTB4MDE0QQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNEJfUElECTB4MDE0QgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNENfUElECTB4MDE0QwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNERfUElECTB4MDE0RAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNEVfUElECTB4MDE0RQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNEZfUElECTB4MDE0RgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNTBfUElECTB4MDE1MAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNTFfUElECTB4MDE1MQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNTJfUElECTB4MDE1MgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNTNfUElECTB4MDE1MwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNTRfUElECTB4MDE1NAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNTVfUElECTB4MDE1NQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNTZfUElECTB4MDE1NgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNTdfUElECTB4MDE1NwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNThfUElECTB4MDE1OAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNTlfUElECTB4MDE1OQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNUFfUElECTB4MDE1QQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNUJfUElECTB4MDE1QgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNUNfUElECTB4MDE1QwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNURfUElECTB4MDE1RAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNUVfUElECTB4MDE1RQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNUZfUElECTB4MDE1RgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNjBfUElECTB4MDE2MAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNjFfUElECTB4MDE2MQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNjJfUElECTB4MDE2MgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNjNfUElECTB4MDE2MwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNjRfUElECTB4MDE2NAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNjVfUElECTB4MDE2NQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNjZfUElECTB4MDE2NgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNjdfUElECTB4MDE2NwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNjhfUElECTB4MDE2OAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNjlfUElECTB4MDE2OQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNkFfUElECTB4MDE2QQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNkJfUElECTB4MDE2QgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNkNfUElECTB4MDE2QwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNkRfUElECTB4MDE2RAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNkVfUElECTB4MDE2RQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNkZfUElECTB4MDE2RgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNzBfUElECTB4MDE3MAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNzFfUElECTB4MDE3MQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNzJfUElECTB4MDE3MgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNzNfUElECTB4MDE3MwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNzRfUElECTB4MDE3NAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNzVfUElECTB4MDE3NQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNzZfUElECTB4MDE3NgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNzdfUElECTB4MDE3NwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNzhfUElECTB4MDE3OAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxNzlfUElECTB4MDE3OQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxN0FfUElECTB4MDE3QQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxN0JfUElECTB4MDE3QgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxN0NfUElECTB4MDE3QwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxN0RfUElECTB4MDE3RAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxN0VfUElECTB4MDE3RQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxN0ZfUElECTB4MDE3RgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxODBfUElECTB4MDE4MAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxODFfUElECTB4MDE4MQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxODJfUElECTB4MDE4MgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxODNfUElECTB4MDE4MwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxODRfUElECTB4MDE4NAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxODVfUElECTB4MDE4NQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxODZfUElECTB4MDE4NgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxODdfUElECTB4MDE4NwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxODhfUElECTB4MDE4OAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxODlfUElECTB4MDE4OQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxOEFfUElECTB4MDE4QQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxOEJfUElECTB4MDE4QgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxOENfUElECTB4MDE4QwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxOERfUElECTB4MDE4RAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxOEVfUElECTB4MDE4RQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxOEZfUElECTB4MDE4RgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxOTBfUElECTB4MDE5MAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxOTFfUElECTB4MDE5MQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxOTJfUElECTB4MDE5MgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxOTNfUElECTB4MDE5MwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxOTRfUElECTB4MDE5NAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxOTVfUElECTB4MDE5NQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxOTZfUElECTB4MDE5NgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxOTdfUElECTB4MDE5NwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxOThfUElECTB4MDE5OAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxOTlfUElECTB4MDE5OQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxOUFfUElECTB4MDE5QQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxOUJfUElECTB4MDE5QgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxOUNfUElECTB4MDE5QwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxOURfUElECTB4MDE5RAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxOUVfUElECTB4MDE5RQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxOUZfUElECTB4MDE5RgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQTBfUElECTB4MDFBMAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQTFfUElECTB4MDFBMQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQTJfUElECTB4MDFBMgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQTNfUElECTB4MDFBMwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQTRfUElECTB4MDFBNAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQTVfUElECTB4MDFBNQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQTZfUElECTB4MDFBNgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQTdfUElECTB4MDFBNwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQThfUElECTB4MDFBOAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQTlfUElECTB4MDFBOQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQUFfUElECTB4MDFBQQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQUJfUElECTB4MDFBQgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQUNfUElECTB4MDFBQwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQURfUElECTB4MDFBRAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQUVfUElECTB4MDFBRQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQUZfUElECTB4MDFBRgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQjBfUElECTB4MDFCMAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQjFfUElECTB4MDFCMQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQjJfUElECTB4MDFCMgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQjNfUElECTB4MDFCMwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQjRfUElECTB4MDFCNAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQjVfUElECTB4MDFCNQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQjZfUElECTB4MDFCNgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQjdfUElECTB4MDFCNwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQjhfUElECTB4MDFCOAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQjlfUElECTB4MDFCOQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQkFfUElECTB4MDFCQQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQkJfUElECTB4MDFCQgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQkNfUElECTB4MDFCQwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQkRfUElECTB4MDFCRAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQkVfUElECTB4MDFCRQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQkZfUElECTB4MDFCRgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQzBfUElECTB4MDFDMAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQzFfUElECTB4MDFDMQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQzJfUElECTB4MDFDMgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQzNfUElECTB4MDFDMwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQzRfUElECTB4MDFDNAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQzVfUElECTB4MDFDNQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQzZfUElECTB4MDFDNgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQzdfUElECTB4MDFDNwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQzhfUElECTB4MDFDOAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQzlfUElECTB4MDFDOQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQ0FfUElECTB4MDFDQQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQ0JfUElECTB4MDFDQgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQ0NfUElECTB4MDFDQwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQ0RfUElECTB4MDFDRAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQ0VfUElECTB4MDFDRQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxQ0ZfUElECTB4MDFDRgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRDBfUElECTB4MDFEMAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRDFfUElECTB4MDFEMQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRDJfUElECTB4MDFEMgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRDNfUElECTB4MDFEMwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRDRfUElECTB4MDFENAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRDVfUElECTB4MDFENQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRDZfUElECTB4MDFENgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRDdfUElECTB4MDFENwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRDhfUElECTB4MDFEOAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRDlfUElECTB4MDFEOQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxREFfUElECTB4MDFEQQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxREJfUElECTB4MDFEQgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRENfUElECTB4MDFEQwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRERfUElECTB4MDFERAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxREVfUElECTB4MDFERQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxREZfUElECTB4MDFERgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRTBfUElECTB4MDFFMAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRTFfUElECTB4MDFFMQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRTJfUElECTB4MDFFMgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRTNfUElECTB4MDFFMwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRTRfUElECTB4MDFFNAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRTVfUElECTB4MDFFNQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRTZfUElECTB4MDFFNgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRTdfUElECTB4MDFFNwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRThfUElECTB4MDFFOAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRTlfUElECTB4MDFFOQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRUFfUElECTB4MDFFQQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRUJfUElECTB4MDFFQgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRUNfUElECTB4MDFFQwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRURfUElECTB4MDFFRAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRUVfUElECTB4MDFFRQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRUZfUElECTB4MDFFRgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRjBfUElECTB4MDFGMAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRjFfUElECTB4MDFGMQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRjJfUElECTB4MDFGMgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRjNfUElECTB4MDFGMwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRjRfUElECTB4MDFGNAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRjVfUElECTB4MDFGNQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRjZfUElECTB4MDFGNgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRjdfUElECTB4MDFGNwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRjhfUElECTB4MDFGOAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRjlfUElECTB4MDFGOQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRkFfUElECTB4MDFGQQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRkJfUElECTB4MDFGQgojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRkNfUElECTB4MDFGQwojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRkRfUElECTB4MDFGRAojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRkVfUElECTB4MDFGRQojZGVmaW5lIE1UWE9SQl9GVERJX1JBTkdFXzAxRkZfUElECTB4MDFGRgoKCgovKgogKiBUaGUgTW9iaWxpdHkgTGFiIChUTUwpCiAqIFN1Ym1pdHRlZCBieSBQaWVycmUgQ2FzdGVsbGEKICovCiNkZWZpbmUgVE1MX1ZJRAkJCTB4MUI5MQkvKiBWZW5kb3IgSUQgKi8KI2RlZmluZSBUTUxfVVNCX1NFUklBTF9QSUQJMHgwMDY0CS8qIFVTQiAtIFNlcmlhbCBDb252ZXJ0ZXIgKi8KCi8qIEFsdGktMiBwcm9kdWN0cyAgaHR0cDovL3d3dy5hbHRpLTIuY29tICovCiNkZWZpbmUgQUxUSTJfVklECTB4MUJDOQojZGVmaW5lIEFMVEkyX04zX1BJRAkweDYwMDEJLyogTmVwdHVuZSAzICovCgovKgogKiBEcmVzZGVuIEVsZWt0cm9uaWsgU2Vuc29yIFRlcm1pbmFsIEJvYXJkCiAqLwojZGVmaW5lIERFX1ZJRAkJCTB4MWNmMSAvKiBWZW5kb3IgSUQgKi8KI2RlZmluZSBTVEJfUElECQkJMHgwMDAxIC8qIFNlbnNvciBUZXJtaW5hbCBCb2FyZCAqLwojZGVmaW5lIFdIVF9QSUQJCQkweDAwMDQgLyogV2lyZWxlc3MgSGFuZGhlbGQgVGVybWluYWwgKi8KCi8qCiAqIFBhcG91Y2ggcHJvZHVjdHMgKGh0dHA6Ly93d3cucGFwb3VjaC5jb20vKQogKiBTdWJtaXR0ZWQgYnkgRm9sa2VydCB2YW4gSGV1c2RlbgogKi8KCiNkZWZpbmUgUEFQT1VDSF9WSUQJCQkweDUwNTAJLyogVmVuZG9yIElEICovCiNkZWZpbmUgUEFQT1VDSF9UTVVfUElECQkJMHgwNDAwCS8qIFRNVSBVU0IgVGhlcm1vbWV0ZXIgKi8KI2RlZmluZSBQQVBPVUNIX1FVSURPNHg0X1BJRAkJMHgwOTAwCS8qIFF1aWRvIDQvNCBNb2R1bGUgKi8KI2RlZmluZSBQQVBPVUNIX0FENFVTQl9QSUQJCTB4ODAwMwkvKiBBRDRVU0IgTWVhc3VyZW1lbnQgTW9kdWxlICovCgovKgogKiBNYXJ2ZWxsIFNoZWV2YVBsdWcKICovCiNkZWZpbmUgTUFSVkVMTF9WSUQJCTB4OWU4OAojZGVmaW5lIE1BUlZFTExfU0hFRVZBUExVR19QSUQJMHg5ZThmCgovKgogKiBFdm9sdXRpb24gUm9ib3RpY3MgcHJvZHVjdHMgKGh0dHA6Ly93d3cuZXZvbHV0aW9uLmNvbS8pLgogKiBTdWJtaXR0ZWQgYnkgU2hhd24gTS4gTGF2ZWxsZS4KICovCiNkZWZpbmUgRVZPTFVUSU9OX1ZJRAkJMHhERUVFCS8qIFZlbmRvciBJRCAqLwojZGVmaW5lIEVWT0xVVElPTl9FUjFfUElECTB4MDMwMAkvKiBFUjEgQ29udHJvbCBNb2R1bGUgKi8KI2RlZmluZSBFVk9fOFUyMzJBTV9QSUQJCTB4MDJGRgkvKiBFdm9sdXRpb24gcm9ib3RpY3MgUkNNMiAoRlQyMzJBTSkqLwojZGVmaW5lIEVWT19IWUJSSURfUElECQkweDAzMDIJLyogRXZvbHV0aW9uIHJvYm90aWNzIFJDTTQgUElEIChGVDIzMkJNKSovCiNkZWZpbmUgRVZPX1JDTTRfUElECQkweDAzMDMJLyogRXZvbHV0aW9uIHJvYm90aWNzIFJDTTQgUElEICovCgovKgogKiBNSlMgR2FkZ2V0cyBIRCBSYWRpbyAvIFhNIFJhZGlvIC8gU2lyaXVzIFJhZGlvIGludGVyZmFjZXMgKHVzaW5nIFZJRCAweDA0MDMpCiAqLwojZGVmaW5lIE1KU0dfR0VORVJJQ19QSUQJMHg5Mzc4CiNkZWZpbmUgTUpTR19TUl9SQURJT19QSUQJMHg5Mzc5CiNkZWZpbmUgTUpTR19YTV9SQURJT19QSUQJMHg5MzdBCiNkZWZpbmUgTUpTR19IRF9SQURJT19QSUQJMHg5MzdDCgovKgogKiBYdmVydmUgU2lnbmFseXplciB0b29scyAoaHR0cDovL3d3dy5zaWduYWx5emVyLmNvbS8pCiAqLwojZGVmaW5lIFhWRVJWRV9TSUdOQUxZWkVSX1NUX1BJRAkweEJDQTAKI2RlZmluZSBYVkVSVkVfU0lHTkFMWVpFUl9TTElURV9QSUQJMHhCQ0ExCiNkZWZpbmUgWFZFUlZFX1NJR05BTFlaRVJfU0gyX1BJRAkweEJDQTIKI2RlZmluZSBYVkVSVkVfU0lHTkFMWVpFUl9TSDRfUElECTB4QkNBNAoKLyoKICogU2Vnd2F5IFJvYm90aWMgTW9iaWxpdHkgUGxhdGZvcm0gVVNCIGludGVyZmFjZSAodXNpbmcgVklEIDB4MDQwMykKICogU3VibWl0dGVkIGJ5IEpvaG4gRy4gUm9nZXJzCiAqLwojZGVmaW5lIFNFR1dBWV9STVAyMDBfUElECTB4ZTcyOQo=