LyoqDQogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KICAqIEBmaWxlICAgIHN0bTMyZjAzMXg2LmgNCiAgKiBAYXV0aG9yICBNQ0QgQXBwbGljYXRpb24gVGVhbQ0KICAqIEBicmllZiAgIENNU0lTIENvcnRleC1NMCBEZXZpY2UgUGVyaXBoZXJhbCBBY2Nlc3MgTGF5ZXIgSGVhZGVyIEZpbGUuIA0KICAqICAgICAgICAgIFRoaXMgZmlsZSBjb250YWlucyBhbGwgdGhlIHBlcmlwaGVyYWwgcmVnaXN0ZXIncyBkZWZpbml0aW9ucywgYml0cyANCiAgKiAgICAgICAgICBkZWZpbml0aW9ucyBhbmQgbWVtb3J5IG1hcHBpbmcgZm9yIFNUTTMyRjB4eCBkZXZpY2VzLiAgICAgICAgICAgIA0KICAqICAgICAgICAgICAgDQogICogICAgICAgICAgVGhpcyBmaWxlIGNvbnRhaW5zOg0KICAqICAgICAgICAgICAtIERhdGEgc3RydWN0dXJlcyBhbmQgdGhlIGFkZHJlc3MgbWFwcGluZyBmb3IgYWxsIHBlcmlwaGVyYWxzDQogICogICAgICAgICAgIC0gUGVyaXBoZXJhbCdzIHJlZ2lzdGVycyBkZWNsYXJhdGlvbnMgYW5kIGJpdHMgZGVmaW5pdGlvbg0KICAqICAgICAgICAgICAtIE1hY3JvcyB0byBhY2Nlc3MgcGVyaXBoZXJhbJJzIHJlZ2lzdGVycyBoYXJkd2FyZQ0KICAqICANCiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQogICogQGF0dGVudGlvbg0KICAqDQogICogPGgyPjxjZW50ZXI+JmNvcHk7IENPUFlSSUdIVChjKSAyMDE2IFNUTWljcm9lbGVjdHJvbmljczwvY2VudGVyPjwvaDI+DQogICoNCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLA0KICAqIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoNCiAgKiAgIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwNCiAgKiAgICAgIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuDQogICogICAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsDQogICogICAgICB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uDQogICogICAgICBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4NCiAgKiAgIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgU1RNaWNyb2VsZWN0cm9uaWNzIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycw0KICAqICAgICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlDQogICogICAgICB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4NCiAgKg0KICAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIg0KICAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUNCiAgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUNCiAgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFDQogICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwNCiAgKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUg0KICAqIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSDQogICogQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwNCiAgKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQ0KICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuDQogICoNCiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQogICovDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KLyoqIEBhZGR0b2dyb3VwIENNU0lTDQogICogQHsNCiAgKi8NCg0KLyoqIEBhZGR0b2dyb3VwIHN0bTMyZjAzMXg2DQogICogQHsNCiAgKi8NCiAgICANCiNpZm5kZWYgX19TVE0zMkYwMzF4Nl9IDQojZGVmaW5lIF9fU1RNMzJGMDMxeDZfSA0KDQojaWZkZWYgX19jcGx1c3BsdXMNCiBleHRlcm4gIkMiIHsNCiNlbmRpZiAvKiBfX2NwbHVzcGx1cyAqLw0KDQogIC8qKiBAYWRkdG9ncm91cCBDb25maWd1cmF0aW9uX3NlY3Rpb25fZm9yX0NNU0lTDQogICogQHsNCiAgKi8NCi8qKg0KICogQGJyaWVmIENvbmZpZ3VyYXRpb24gb2YgdGhlIENvcnRleC1NMCBQcm9jZXNzb3IgYW5kIENvcmUgUGVyaXBoZXJhbHMNCiAqLw0KI2RlZmluZSBfX0NNMF9SRVYgICAgICAgICAgICAgICAgIDAgLyohPCBDb3JlIFJldmlzaW9uIHIwcDAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiNkZWZpbmUgX19NUFVfUFJFU0VOVCAgICAgICAgICAgICAwIC8qITwgU1RNMzJGMHh4IGRvIG5vdCBwcm92aWRlIE1QVSAgICAgICAgICAgICAgICAgICovDQojZGVmaW5lIF9fTlZJQ19QUklPX0JJVFMgICAgICAgICAgMiAvKiE8IFNUTTMyRjB4eCB1c2VzIDIgQml0cyBmb3IgdGhlIFByaW9yaXR5IExldmVscyAqLw0KI2RlZmluZSBfX1ZlbmRvcl9TeXNUaWNrQ29uZmlnICAgIDAgICAgIC8qITwgU2V0IHRvIDEgaWYgZGlmZmVyZW50IFN5c1RpY2sgQ29uZmlnIGlzIHVzZWQgKi8NCiANCi8qKg0KICAqIEB9DQogICovDQogICANCi8qKiBAYWRkdG9ncm91cCBQZXJpcGhlcmFsX2ludGVycnVwdF9udW1iZXJfZGVmaW5pdGlvbg0KICAqIEB7DQogICovDQoNCi8qKg0KICogQGJyaWVmIFNUTTMyRjB4eCBJbnRlcnJ1cHQgTnVtYmVyIERlZmluaXRpb24sIGFjY29yZGluZyB0byB0aGUgc2VsZWN0ZWQgZGV2aWNlIA0KICogICAgICAgIGluIEByZWYgTGlicmFyeV9jb25maWd1cmF0aW9uX3NlY3Rpb24gDQogKi8NCg0KIC8qITwgSW50ZXJydXB0IE51bWJlciBEZWZpbml0aW9uICovDQp0eXBlZGVmIGVudW0NCnsNCi8qKioqKiogIENvcnRleC1NMCBQcm9jZXNzb3IgRXhjZXB0aW9ucyBOdW1iZXJzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KICBOb25NYXNrYWJsZUludF9JUlFuICAgICAgICAgPSAtMTQsICAgIC8qITwgMiBOb24gTWFza2FibGUgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIEhhcmRGYXVsdF9JUlFuICAgICAgICAgICAgICA9IC0xMywgICAgLyohPCAzIENvcnRleC1NMCBIYXJkIEZhdWx0IEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgU1ZDX0lSUW4gICAgICAgICAgICAgICAgICAgID0gLTUsICAgICAvKiE8IDExIENvcnRleC1NMCBTViBDYWxsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KICBQZW5kU1ZfSVJRbiAgICAgICAgICAgICAgICAgPSAtMiwgICAgIC8qITwgMTQgQ29ydGV4LU0wIFBlbmQgU1YgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFN5c1RpY2tfSVJRbiAgICAgICAgICAgICAgICA9IC0xLCAgICAgLyohPCAxNSBDb3J0ZXgtTTAgU3lzdGVtIFRpY2sgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCg0KLyoqKioqKiAgU1RNMzJGMCBzcGVjaWZpYyBJbnRlcnJ1cHQgTnVtYmVycyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQogIFdXREdfSVJRbiAgICAgICAgICAgICAgICAgICA9IDAsICAgICAgLyohPCBXaW5kb3cgV2F0Y2hEb2cgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFBWRF9JUlFuICAgICAgICAgICAgICAgICAgICA9IDEsICAgICAgLyohPCBQVkQgSW50ZXJydXB0IHRocm91Z2ggRVhUSSBMaW5lcyAxNiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgUlRDX0lSUW4gICAgICAgICAgICAgICAgICAgID0gMiwgICAgICAvKiE8IFJUQyBJbnRlcnJ1cHQgdGhyb3VnaCBFWFRJIExpbmVzIDE3LCAxOSBhbmQgMjAgICAgICAgICAgICAgICAgICAqLw0KICBGTEFTSF9JUlFuICAgICAgICAgICAgICAgICAgPSAzLCAgICAgIC8qITwgRkxBU0ggZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFJDQ19JUlFuICAgICAgICAgICAgICAgICAgICA9IDQsICAgICAgLyohPCBSQ0MgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRVhUSTBfMV9JUlFuICAgICAgICAgICAgICAgID0gNSwgICAgICAvKiE8IEVYVEkgTGluZSAwIGFuZCAxIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KICBFWFRJMl8zX0lSUW4gICAgICAgICAgICAgICAgPSA2LCAgICAgIC8qITwgRVhUSSBMaW5lIDIgYW5kIDMgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIEVYVEk0XzE1X0lSUW4gICAgICAgICAgICAgICA9IDcsICAgICAgLyohPCBFWFRJIExpbmUgNCB0byAxNSBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMV9DaGFubmVsMV9JUlFuICAgICAgICAgID0gOSwgICAgICAvKiE8IERNQTEgQ2hhbm5lbCAxIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KICBETUExX0NoYW5uZWwyXzNfSVJRbiAgICAgICAgPSAxMCwgICAgIC8qITwgRE1BMSBDaGFubmVsIDIgYW5kIENoYW5uZWwgMyBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIERNQTFfQ2hhbm5lbDRfNV9JUlFuICAgICAgICA9IDExLCAgICAgLyohPCBETUExIENoYW5uZWwgNCBhbmQgQ2hhbm5lbCA1IEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgQURDMV9JUlFuICAgICAgICAgICAgICAgICAgID0gMTIsICAgICAvKiE8IEFEQzEgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KICBUSU0xX0JSS19VUF9UUkdfQ09NX0lSUW4gICAgPSAxMywgICAgIC8qITwgVElNMSBCcmVhaywgVXBkYXRlLCBUcmlnZ2VyIGFuZCBDb21tdXRhdGlvbiBJbnRlcnJ1cHQgICAgICAgICAgICovDQogIFRJTTFfQ0NfSVJRbiAgICAgICAgICAgICAgICA9IDE0LCAgICAgLyohPCBUSU0xIENhcHR1cmUgQ29tcGFyZSBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVElNMl9JUlFuICAgICAgICAgICAgICAgICAgID0gMTUsICAgICAvKiE8IFRJTTIgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KICBUSU0zX0lSUW4gICAgICAgICAgICAgICAgICAgPSAxNiwgICAgIC8qITwgVElNMyBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFRJTTE0X0lSUW4gICAgICAgICAgICAgICAgICA9IDE5LCAgICAgLyohPCBUSU0xNCBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVElNMTZfSVJRbiAgICAgICAgICAgICAgICAgID0gMjEsICAgICAvKiE8IFRJTTE2IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KICBUSU0xN19JUlFuICAgICAgICAgICAgICAgICAgPSAyMiwgICAgIC8qITwgVElNMTcgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIEkyQzFfSVJRbiAgICAgICAgICAgICAgICAgICA9IDIzLCAgICAgLyohPCBJMkMxIEV2ZW50IEludGVycnVwdCAmIEVYVEkgTGluZTIzIEludGVycnVwdCAoSTJDMSB3YWtldXApICAgICAgKi8NCiAgU1BJMV9JUlFuICAgICAgICAgICAgICAgICAgID0gMjUsICAgICAvKiE8IFNQSTEgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KICBVU0FSVDFfSVJRbiAgICAgICAgICAgICAgICAgPSAyNyAgICAgIC8qITwgVVNBUlQxIGdsb2JhbCBJbnRlcnJ1cHQgJiBFWFRJIExpbmUyNSBJbnRlcnJ1cHQgKFVTQVJUMSB3YWtldXApICovDQp9IElSUW5fVHlwZTsNCg0KLyoqDQogICogQH0NCiAgKi8NCg0KI2luY2x1ZGUgImNvcmVfY20wLmgiICAgICAgICAgICAgLyogQ29ydGV4LU0wIHByb2Nlc3NvciBhbmQgY29yZSBwZXJpcGhlcmFscyAqLw0KI2luY2x1ZGUgInN5c3RlbV9zdG0zMmYweHguaCIgICAgLyogU1RNMzJGMHh4IFN5c3RlbSBIZWFkZXIgKi8NCiNpbmNsdWRlIDxzdGRpbnQuaD4NCg0KLyoqIEBhZGR0b2dyb3VwIFBlcmlwaGVyYWxfcmVnaXN0ZXJzX3N0cnVjdHVyZXMNCiAgKiBAew0KICAqLw0KDQovKioNCiAgKiBAYnJpZWYgQW5hbG9nIHRvIERpZ2l0YWwgQ29udmVydGVyDQogICovDQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgSVNSOyAgICAgICAgICAvKiE8IEFEQyBpbnRlcnJ1cHQgYW5kIHN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBJRVI7ICAgICAgICAgIC8qITwgQURDIGludGVycnVwdCBlbmFibGUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IENSOyAgICAgICAgICAgLyohPCBBREMgY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovDQogIF9fSU8gdWludDMyX3QgQ0ZHUjE7ICAgICAgICAvKiE8IEFEQyBjb25maWd1cmF0aW9uIHJlZ2lzdGVyIDEsICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8NCiAgX19JTyB1aW50MzJfdCBDRkdSMjsgICAgICAgIC8qITwgQURDIGNvbmZpZ3VyYXRpb24gcmVnaXN0ZXIgMiwgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IFNNUFI7ICAgICAgICAgLyohPCBBREMgc2FtcGxpbmcgdGltZSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0ICovDQogICAgICAgdWludDMyX3QgUkVTRVJWRUQxOyAgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MTggKi8NCiAgICAgICB1aW50MzJfdCBSRVNFUlZFRDI7ICAgIC8qITwgUmVzZXJ2ZWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgxQyAqLw0KICBfX0lPIHVpbnQzMl90IFRSOyAgICAgICAgICAgLyohPCBBREMgYW5hbG9nIHdhdGNoZG9nIDEgdGhyZXNob2xkIHJlZ2lzdGVyLCAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDIwICovDQogICAgICAgdWludDMyX3QgUkVTRVJWRUQzOyAgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MjQgKi8NCiAgX19JTyB1aW50MzJfdCBDSFNFTFI7ICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJlZ2lzdGVyLCAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyOCAqLw0KICAgICAgIHVpbnQzMl90IFJFU0VSVkVENFs1XTsgLyohPCBSZXNlcnZlZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDJDICovDQogIF9fSU8gdWludDMyX3QgRFI7ICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIGRhdGEgcmVnaXN0ZXIsICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDAgKi8NCn0gQURDX1R5cGVEZWY7DQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgQ0NSOyAgICAgICAgICAvKiE8IEFEQyBjb21tb24gY29uZmlndXJhdGlvbiByZWdpc3RlciwgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IEFEQzEgYmFzZSBhZGRyZXNzICsgMHgzMDggKi8NCn0gQURDX0NvbW1vbl9UeXBlRGVmOw0KDQovKiogDQogICogQGJyaWVmIENSQyBjYWxjdWxhdGlvbiB1bml0DQogICovDQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgRFI7ICAgICAgICAgIC8qITwgQ1JDIERhdGEgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50OF90ICBJRFI7ICAgICAgICAgLyohPCBDUkMgSW5kZXBlbmRlbnQgZGF0YSByZWdpc3RlciwgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICB1aW50OF90ICAgICAgIFJFU0VSVkVEMDsgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDA1ICovDQogIHVpbnQxNl90ICAgICAgUkVTRVJWRUQxOyAgIC8qITwgUmVzZXJ2ZWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDYgKi8NCiAgX19JTyB1aW50MzJfdCBDUjsgICAgICAgICAgLyohPCBDUkMgQ29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLyANCiAgdWludDMyX3QgICAgICBSRVNFUlZFRDI7ICAgLyohPCBSZXNlcnZlZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwQyAqLw0KICBfX0lPIHVpbnQzMl90IElOSVQ7ICAgICAgICAvKiE8IEluaXRpYWwgQ1JDIHZhbHVlIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDEwICovDQogIF9fSU8gdWludDMyX3QgUkVTRVJWRUQzOyAgIC8qITwgUmVzZXJ2ZWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MTQgKi8NCn0gQ1JDX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgRGVidWcgTUNVDQogICovDQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgSURDT0RFOyAgICAgICAvKiE8IE1DVSBkZXZpY2UgSUQgY29kZSwgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgQ1I7ICAgICAgICAgICAvKiE8IERlYnVnIE1DVSBjb25maWd1cmF0aW9uIHJlZ2lzdGVyLCAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDMyX3QgQVBCMUZaOyAgICAgICAvKiE8IERlYnVnIE1DVSBBUEIxIGZyZWV6ZSByZWdpc3RlciwgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovDQogIF9fSU8gdWludDMyX3QgQVBCMkZaOyAgICAgICAvKiE8IERlYnVnIE1DVSBBUEIyIGZyZWV6ZSByZWdpc3RlciwgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDBDICovDQp9REJHTUNVX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgRE1BIENvbnRyb2xsZXINCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBDQ1I7ICAgICAgICAgIC8qITwgRE1BIGNoYW5uZWwgeCBjb25maWd1cmF0aW9uIHJlZ2lzdGVyICAgICAgICAqLw0KICBfX0lPIHVpbnQzMl90IENORFRSOyAgICAgICAgLyohPCBETUEgY2hhbm5lbCB4IG51bWJlciBvZiBkYXRhIHJlZ2lzdGVyICAgICAgICovDQogIF9fSU8gdWludDMyX3QgQ1BBUjsgICAgICAgICAvKiE8IERNQSBjaGFubmVsIHggcGVyaXBoZXJhbCBhZGRyZXNzIHJlZ2lzdGVyICAgKi8NCiAgX19JTyB1aW50MzJfdCBDTUFSOyAgICAgICAgIC8qITwgRE1BIGNoYW5uZWwgeCBtZW1vcnkgYWRkcmVzcyByZWdpc3RlciAgICAgICAqLw0KfSBETUFfQ2hhbm5lbF9UeXBlRGVmOw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IElTUjsgICAgICAgICAgLyohPCBETUEgaW50ZXJydXB0IHN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IElGQ1I7ICAgICAgICAgLyohPCBETUEgaW50ZXJydXB0IGZsYWcgY2xlYXIgcmVnaXN0ZXIsICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KfSBETUFfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBFeHRlcm5hbCBJbnRlcnJ1cHQvRXZlbnQgQ29udHJvbGxlcg0KICAqLw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IElNUjsgICAgICAgICAgLyohPEVYVEkgSW50ZXJydXB0IG1hc2sgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IEVNUjsgICAgICAgICAgLyohPEVYVEkgRXZlbnQgbWFzayByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IFJUU1I7ICAgICAgICAgLyohPEVYVEkgUmlzaW5nIHRyaWdnZXIgc2VsZWN0aW9uIHJlZ2lzdGVyICwgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KICBfX0lPIHVpbnQzMl90IEZUU1I7ICAgICAgICAgLyohPEVYVEkgRmFsbGluZyB0cmlnZ2VyIHNlbGVjdGlvbiByZWdpc3RlciwgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KICBfX0lPIHVpbnQzMl90IFNXSUVSOyAgICAgICAgLyohPEVYVEkgU29mdHdhcmUgaW50ZXJydXB0IGV2ZW50IHJlZ2lzdGVyLCAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IFBSOyAgICAgICAgICAgLyohPEVYVEkgUGVuZGluZyByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLw0KfSBFWFRJX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgRkxBU0ggUmVnaXN0ZXJzDQogICovDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IEFDUjsgICAgICAgICAgLyohPEZMQVNIIGFjY2VzcyBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBLRVlSOyAgICAgICAgIC8qITxGTEFTSCBrZXkgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDMyX3QgT1BUS0VZUjsgICAgICAvKiE8RkxBU0ggT1BUIGtleSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KICBfX0lPIHVpbnQzMl90IFNSOyAgICAgICAgICAgLyohPEZMQVNIIHN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8NCiAgX19JTyB1aW50MzJfdCBDUjsgICAgICAgICAgIC8qITxGTEFTSCBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDEwICovDQogIF9fSU8gdWludDMyX3QgQVI7ICAgICAgICAgICAvKiE8RkxBU0ggYWRkcmVzcyByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLw0KICBfX0lPIHVpbnQzMl90IFJFU0VSVkVEOyAgICAgLyohPCBSZXNlcnZlZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MTggKi8NCiAgX19JTyB1aW50MzJfdCBPQlI7ICAgICAgICAgIC8qITxGTEFTSCBvcHRpb24gYnl0ZXMgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDFDICovDQogIF9fSU8gdWludDMyX3QgV1JQUjsgICAgICAgICAvKiE8RkxBU0ggb3B0aW9uIGJ5dGVzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyMCAqLw0KfSBGTEFTSF9UeXBlRGVmOw0KDQovKiogDQogICogQGJyaWVmIE9wdGlvbiBCeXRlcyBSZWdpc3RlcnMNCiAgKi8NCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDE2X3QgUkRQOyAgICAgICAgICAvKiE8IEZMQVNIIG9wdGlvbiBieXRlIFJlYWQgcHJvdGVjdGlvbiwgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MTZfdCBVU0VSOyAgICAgICAgIC8qITwgRkxBU0ggb3B0aW9uIGJ5dGUgdXNlciBvcHRpb25zLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMiAqLw0KICBfX0lPIHVpbnQxNl90IERBVEEwOyAgICAgICAgLyohPCBVc2VyIGRhdGEgYnl0ZSAwIChzdG9yZWQgaW4gRkxBU0hfT0JSWzIzOjE2XSksIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDE2X3QgREFUQTE7ICAgICAgICAvKiE8IFVzZXIgZGF0YSBieXRlIDEgKHN0b3JlZCBpbiBGTEFTSF9PQlJbMzE6MjRdKSwgQWRkcmVzcyBvZmZzZXQ6IDB4MDYgKi8NCiAgX19JTyB1aW50MTZfdCBXUlAwOyAgICAgICAgIC8qITwgRkxBU0ggb3B0aW9uIGJ5dGUgd3JpdGUgcHJvdGVjdGlvbiAwLCAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KfSBPQl9UeXBlRGVmOw0KDQovKiogDQogICogQGJyaWVmIEdlbmVyYWwgUHVycG9zZSBJL08NCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBNT0RFUjsgICAgICAgIC8qITwgR1BJTyBwb3J0IG1vZGUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgICAgICAqLw0KICBfX0lPIHVpbnQzMl90IE9UWVBFUjsgICAgICAgLyohPCBHUElPIHBvcnQgb3V0cHV0IHR5cGUgcmVnaXN0ZXIsICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAgICAgICovDQogIF9fSU8gdWludDMyX3QgT1NQRUVEUjsgICAgICAvKiE8IEdQSU8gcG9ydCBvdXRwdXQgc3BlZWQgcmVnaXN0ZXIsICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICAgICAgKi8NCiAgX19JTyB1aW50MzJfdCBQVVBEUjsgICAgICAgIC8qITwgR1BJTyBwb3J0IHB1bGwtdXAvcHVsbC1kb3duIHJlZ2lzdGVyLCAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgICAgICAqLw0KICBfX0lPIHVpbnQzMl90IElEUjsgICAgICAgICAgLyohPCBHUElPIHBvcnQgaW5wdXQgZGF0YSByZWdpc3RlciwgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAgICAgICovDQogIF9fSU8gdWludDMyX3QgT0RSOyAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBvdXRwdXQgZGF0YSByZWdpc3RlciwgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0ICAgICAgKi8NCiAgX19JTyB1aW50MzJfdCBCU1JSOyAgICAgICAgIC8qITwgR1BJTyBwb3J0IGJpdCBzZXQvcmVzZXQgcmVnaXN0ZXIsICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MUEgKi8NCiAgX19JTyB1aW50MzJfdCBMQ0tSOyAgICAgICAgIC8qITwgR1BJTyBwb3J0IGNvbmZpZ3VyYXRpb24gbG9jayByZWdpc3RlciwgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MUMgICAgICAqLw0KICBfX0lPIHVpbnQzMl90IEFGUlsyXTsgICAgICAgLyohPCBHUElPIGFsdGVybmF0ZSBmdW5jdGlvbiBsb3cgcmVnaXN0ZXIsICBBZGRyZXNzIG9mZnNldDogMHgyMC0weDI0ICovDQogIF9fSU8gdWludDMyX3QgQlJSOyAgICAgICAgICAvKiE8IEdQSU8gYml0IHJlc2V0IHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDI4ICAgICAgKi8NCn0gR1BJT19UeXBlRGVmOw0KDQovKiogDQogICogQGJyaWVmIFN5c1RlbSBDb25maWd1cmF0aW9uDQogICovDQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgQ0ZHUjE7ICAgICAgIC8qITwgU1lTQ0ZHIGNvbmZpZ3VyYXRpb24gcmVnaXN0ZXIgMSwgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICAgICAgIHVpbnQzMl90IFJFU0VSVkVEOyAgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDQgKi8NCiAgX19JTyB1aW50MzJfdCBFWFRJQ1JbNF07ICAgLyohPCBTWVNDRkcgZXh0ZXJuYWwgaW50ZXJydXB0IGNvbmZpZ3VyYXRpb24gcmVnaXN0ZXIsICAgICBBZGRyZXNzIG9mZnNldDogMHgxNC0weDA4ICovDQogIF9fSU8gdWludDMyX3QgQ0ZHUjI7ICAgICAgIC8qITwgU1lTQ0ZHIGNvbmZpZ3VyYXRpb24gcmVnaXN0ZXIgMiwgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxOCAqLw0KfSBTWVNDRkdfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBJbnRlci1pbnRlZ3JhdGVkIENpcmN1aXQgSW50ZXJmYWNlDQogICovDQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgQ1IxOyAgICAgICAgICAvKiE8IEkyQyBDb250cm9sIHJlZ2lzdGVyIDEsICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgQ1IyOyAgICAgICAgICAvKiE8IEkyQyBDb250cm9sIHJlZ2lzdGVyIDIsICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDMyX3QgT0FSMTsgICAgIC8qITwgSTJDIE93biBhZGRyZXNzIDEgcmVnaXN0ZXIsICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KICBfX0lPIHVpbnQzMl90IE9BUjI7ICAgICAvKiE8IEkyQyBPd24gYWRkcmVzcyAyIHJlZ2lzdGVyLCAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8NCiAgX19JTyB1aW50MzJfdCBUSU1JTkdSOyAgLyohPCBJMkMgVGltaW5nIHJlZ2lzdGVyLCAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDEwICovDQogIF9fSU8gdWludDMyX3QgVElNRU9VVFI7IC8qITwgSTJDIFRpbWVvdXQgcmVnaXN0ZXIsICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLw0KICBfX0lPIHVpbnQzMl90IElTUjsgICAgICAvKiE8IEkyQyBJbnRlcnJ1cHQgYW5kIHN0YXR1cyByZWdpc3RlciwgQWRkcmVzcyBvZmZzZXQ6IDB4MTggKi8NCiAgX19JTyB1aW50MzJfdCBJQ1I7ICAgICAgLyohPCBJMkMgSW50ZXJydXB0IGNsZWFyIHJlZ2lzdGVyLCAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDFDICovDQogIF9fSU8gdWludDMyX3QgUEVDUjsgICAgIC8qITwgSTJDIFBFQyByZWdpc3RlciwgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyMCAqLw0KICBfX0lPIHVpbnQzMl90IFJYRFI7ICAgICAvKiE8IEkyQyBSZWNlaXZlIGRhdGEgcmVnaXN0ZXIsICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjQgKi8NCiAgX19JTyB1aW50MzJfdCBUWERSOyAgICAgLyohPCBJMkMgVHJhbnNtaXQgZGF0YSByZWdpc3RlciwgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDI4ICovDQp9IEkyQ19UeXBlRGVmOw0KDQovKiogDQogICogQGJyaWVmIEluZGVwZW5kZW50IFdBVENIRE9HDQogICovDQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgS1I7ICAgLyohPCBJV0RHIEtleSByZWdpc3RlciwgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBQUjsgICAvKiE8IElXREcgUHJlc2NhbGVyIHJlZ2lzdGVyLCBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IFJMUjsgIC8qITwgSVdERyBSZWxvYWQgcmVnaXN0ZXIsICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovDQogIF9fSU8gdWludDMyX3QgU1I7ICAgLyohPCBJV0RHIFN0YXR1cyByZWdpc3RlciwgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8NCiAgX19JTyB1aW50MzJfdCBXSU5SOyAvKiE8IElXREcgV2luZG93IHJlZ2lzdGVyLCAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KfSBJV0RHX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgUG93ZXIgQ29udHJvbA0KICAqLw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENSOyAgIC8qITwgUFdSIHBvd2VyIGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IENTUjsgIC8qITwgUFdSIHBvd2VyIGNvbnRyb2wvc3RhdHVzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KfSBQV1JfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBSZXNldCBhbmQgQ2xvY2sgQ29udHJvbA0KICAqLw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENSOyAgICAgICAgICAgIC8qITwgUkNDIGNsb2NrIGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IENGR1I7ICAgICAgIC8qITwgUkNDIGNsb2NrIGNvbmZpZ3VyYXRpb24gcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDMyX3QgQ0lSOyAgICAgICAgLyohPCBSQ0MgY2xvY2sgaW50ZXJydXB0IHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8NCiAgX19JTyB1aW50MzJfdCBBUEIyUlNUUjsgICAvKiE8IFJDQyBBUEIyIHBlcmlwaGVyYWwgcmVzZXQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KICBfX0lPIHVpbnQzMl90IEFQQjFSU1RSOyAgIC8qITwgUkNDIEFQQjEgcGVyaXBoZXJhbCByZXNldCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDEwICovDQogIF9fSU8gdWludDMyX3QgQUhCRU5SOyAgICAgLyohPCBSQ0MgQUhCIHBlcmlwaGVyYWwgY2xvY2sgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTQgKi8NCiAgX19JTyB1aW50MzJfdCBBUEIyRU5SOyAgICAvKiE8IFJDQyBBUEIyIHBlcmlwaGVyYWwgY2xvY2sgZW5hYmxlIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxOCAqLw0KICBfX0lPIHVpbnQzMl90IEFQQjFFTlI7ICAgIC8qITwgUkNDIEFQQjEgcGVyaXBoZXJhbCBjbG9jayBlbmFibGUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDFDICovDQogIF9fSU8gdWludDMyX3QgQkRDUjsgICAgICAgLyohPCBSQ0MgQmFja3VwIGRvbWFpbiBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjAgKi8NCiAgX19JTyB1aW50MzJfdCBDU1I7ICAgICAgICAvKiE8IFJDQyBjbG9jayBjb250cm9sICYgc3RhdHVzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyNCAqLw0KICBfX0lPIHVpbnQzMl90IEFIQlJTVFI7ICAgIC8qITwgUkNDIEFIQiBwZXJpcGhlcmFsIHJlc2V0IHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDI4ICovDQogIF9fSU8gdWludDMyX3QgQ0ZHUjI7ICAgICAgLyohPCBSQ0MgY2xvY2sgY29uZmlndXJhdGlvbiByZWdpc3RlciAyLCAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MkMgKi8NCiAgX19JTyB1aW50MzJfdCBDRkdSMzsgICAgICAvKiE8IFJDQyBjbG9jayBjb25maWd1cmF0aW9uIHJlZ2lzdGVyIDMsICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgzMCAqLw0KICBfX0lPIHVpbnQzMl90IENSMjsgICAgICAgIC8qITwgUkNDIGNsb2NrIGNvbnRyb2wgcmVnaXN0ZXIgMiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDM0ICovDQp9IFJDQ19UeXBlRGVmOw0KDQovKiogDQogICogQGJyaWVmIFJlYWwtVGltZSBDbG9jaw0KICAqLw0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBUUjsgICAgICAgICAvKiE8IFJUQyB0aW1lIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBEUjsgICAgICAgICAvKiE8IFJUQyBkYXRlIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8NCiAgX19JTyB1aW50MzJfdCBDUjsgICAgICAgICAvKiE8IFJUQyBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICBfX0lPIHVpbnQzMl90IElTUjsgICAgICAgIC8qITwgUlRDIGluaXRpYWxpemF0aW9uIGFuZCBzdGF0dXMgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KICBfX0lPIHVpbnQzMl90IFBSRVI7ICAgICAgIC8qITwgUlRDIHByZXNjYWxlciByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICAgICAgIHVpbnQzMl90IFJFU0VSVkVEMTsgIC8qITwgUmVzZXJ2ZWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLw0KICAgICAgIHVpbnQzMl90IFJFU0VSVkVEMjsgIC8qITwgUmVzZXJ2ZWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxOCAqLw0KICBfX0lPIHVpbnQzMl90IEFMUk1BUjsgICAgIC8qITwgUlRDIGFsYXJtIEEgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxQyAqLw0KICAgICAgIHVpbnQzMl90IFJFU0VSVkVEMzsgIC8qITwgUmVzZXJ2ZWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyMCAqLw0KICBfX0lPIHVpbnQzMl90IFdQUjsgICAgICAgIC8qITwgUlRDIHdyaXRlIHByb3RlY3Rpb24gcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyNCAqLw0KICBfX0lPIHVpbnQzMl90IFNTUjsgICAgICAgIC8qITwgUlRDIHN1YiBzZWNvbmQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyOCAqLw0KICBfX0lPIHVpbnQzMl90IFNISUZUUjsgICAgIC8qITwgUlRDIHNoaWZ0IGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyQyAqLw0KICBfX0lPIHVpbnQzMl90IFRTVFI7ICAgICAgIC8qITwgUlRDIHRpbWUgc3RhbXAgdGltZSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgzMCAqLw0KICBfX0lPIHVpbnQzMl90IFRTRFI7ICAgICAgIC8qITwgUlRDIHRpbWUgc3RhbXAgZGF0ZSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgzNCAqLw0KICBfX0lPIHVpbnQzMl90IFRTU1NSOyAgICAgIC8qITwgUlRDIHRpbWUtc3RhbXAgc3ViIHNlY29uZCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgzOCAqLw0KICBfX0lPIHVpbnQzMl90IENBTFI7ICAgICAgIC8qITwgUlRDIGNhbGlicmF0aW9uIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgzQyAqLw0KICBfX0lPIHVpbnQzMl90IFRBRkNSOyAgICAgIC8qITwgUlRDIHRhbXBlciBhbmQgYWx0ZXJuYXRlIGZ1bmN0aW9uIGNvbmZpZ3VyYXRpb24gcmVnaXN0ZXIsICBBZGRyZXNzIG9mZnNldDogMHg0MCAqLw0KICBfX0lPIHVpbnQzMl90IEFMUk1BU1NSOyAgIC8qITwgUlRDIGFsYXJtIEEgc3ViIHNlY29uZCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg0NCAqLw0KICAgICAgIHVpbnQzMl90IFJFU0VSVkVENDsgIC8qITwgUmVzZXJ2ZWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg0OCAqLw0KICAgICAgIHVpbnQzMl90IFJFU0VSVkVENTsgIC8qITwgUmVzZXJ2ZWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg0QyAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDBSOyAgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg1MCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDFSOyAgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAxLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg1NCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDJSOyAgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg1OCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDNSOyAgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAzLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg1QyAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDRSOyAgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciA0LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg2MCAqLw0KfSBSVENfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBTZXJpYWwgUGVyaXBoZXJhbCBJbnRlcmZhY2UNCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBDUjE7ICAgICAgICAvKiE8IFNQSSBDb250cm9sIHJlZ2lzdGVyIDEgKG5vdCB1c2VkIGluIEkyUyBtb2RlKSwgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IENSMjsgICAgICAgIC8qITwgU1BJIENvbnRyb2wgcmVnaXN0ZXIgMiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDMyX3QgU1I7ICAgICAgICAgLyohPCBTUEkgU3RhdHVzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8NCiAgX19JTyB1aW50MzJfdCBEUjsgICAgICAgICAvKiE8IFNQSSBkYXRhIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KICBfX0lPIHVpbnQzMl90IENSQ1BSOyAgICAgIC8qITwgU1BJIENSQyBwb2x5bm9taWFsIHJlZ2lzdGVyIChub3QgdXNlZCBpbiBJMlMgbW9kZSksIEFkZHJlc3Mgb2Zmc2V0OiAweDEwICovDQogIF9fSU8gdWludDMyX3QgUlhDUkNSOyAgICAgLyohPCBTUEkgUnggQ1JDIHJlZ2lzdGVyIChub3QgdXNlZCBpbiBJMlMgbW9kZSksICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTQgKi8NCiAgX19JTyB1aW50MzJfdCBUWENSQ1I7ICAgICAvKiE8IFNQSSBUeCBDUkMgcmVnaXN0ZXIgKG5vdCB1c2VkIGluIEkyUyBtb2RlKSwgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxOCAqLw0KICBfX0lPIHVpbnQzMl90IEkyU0NGR1I7ICAgIC8qITwgU1BJX0kyUyBjb25maWd1cmF0aW9uIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDFDICovDQogIF9fSU8gdWludDMyX3QgSTJTUFI7ICAgICAgLyohPCBTUElfSTJTIHByZXNjYWxlciByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjAgKi8NCn0gU1BJX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgVElNDQogICovDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENSMTsgICAgICAgICAgLyohPCBUSU0gY29udHJvbCByZWdpc3RlciAxLCAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBDUjI7ICAgICAgICAgIC8qITwgVElNIGNvbnRyb2wgcmVnaXN0ZXIgMiwgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDMyX3QgU01DUjsgICAgICAgICAvKiE8IFRJTSBzbGF2ZSBNb2RlIENvbnRyb2wgcmVnaXN0ZXIsICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KICBfX0lPIHVpbnQzMl90IERJRVI7ICAgICAgICAgLyohPCBUSU0gRE1BL2ludGVycnVwdCBlbmFibGUgcmVnaXN0ZXIsICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8NCiAgX19JTyB1aW50MzJfdCBTUjsgICAgICAgICAgIC8qITwgVElNIHN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDEwICovDQogIF9fSU8gdWludDMyX3QgRUdSOyAgICAgICAgICAvKiE8IFRJTSBldmVudCBnZW5lcmF0aW9uIHJlZ2lzdGVyLCAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLw0KICBfX0lPIHVpbnQzMl90IENDTVIxOyAgICAgICAgLyohPCBUSU0gY2FwdHVyZS9jb21wYXJlIG1vZGUgcmVnaXN0ZXIgMSwgQWRkcmVzcyBvZmZzZXQ6IDB4MTggKi8NCiAgX19JTyB1aW50MzJfdCBDQ01SMjsgICAgICAgIC8qITwgVElNIGNhcHR1cmUvY29tcGFyZSBtb2RlIHJlZ2lzdGVyIDIsIEFkZHJlc3Mgb2Zmc2V0OiAweDFDICovDQogIF9fSU8gdWludDMyX3QgQ0NFUjsgICAgICAgICAvKiE8IFRJTSBjYXB0dXJlL2NvbXBhcmUgZW5hYmxlIHJlZ2lzdGVyLCBBZGRyZXNzIG9mZnNldDogMHgyMCAqLw0KICBfX0lPIHVpbnQzMl90IENOVDsgICAgICAgICAgLyohPCBUSU0gY291bnRlciByZWdpc3RlciwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjQgKi8NCiAgX19JTyB1aW50MzJfdCBQU0M7ICAgICAgICAgIC8qITwgVElNIHByZXNjYWxlciByZWdpc3RlciwgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDI4ICovDQogIF9fSU8gdWludDMyX3QgQVJSOyAgICAgICAgICAvKiE8IFRJTSBhdXRvLXJlbG9hZCByZWdpc3RlciwgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyQyAqLw0KICBfX0lPIHVpbnQzMl90IFJDUjsgICAgICAgICAgICAgLyohPCBUSU0gIHJlcGV0aXRpb24gY291bnRlciByZWdpc3RlciwgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgzMCAqLw0KICBfX0lPIHVpbnQzMl90IENDUjE7ICAgICAgICAgLyohPCBUSU0gY2FwdHVyZS9jb21wYXJlIHJlZ2lzdGVyIDEsICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzQgKi8gICAgDQogIF9fSU8gdWludDMyX3QgQ0NSMjsgICAgICAgICAvKiE8IFRJTSBjYXB0dXJlL2NvbXBhcmUgcmVnaXN0ZXIgMiwgICAgICBBZGRyZXNzIG9mZnNldDogMHgzOCAqLyAgICANCiAgX19JTyB1aW50MzJfdCBDQ1IzOyAgICAgICAgIC8qITwgVElNIGNhcHR1cmUvY29tcGFyZSByZWdpc3RlciAzLCAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDNDICovDQogIF9fSU8gdWludDMyX3QgQ0NSNDsgICAgICAgICAvKiE8IFRJTSBjYXB0dXJlL2NvbXBhcmUgcmVnaXN0ZXIgNCwgICAgICBBZGRyZXNzIG9mZnNldDogMHg0MCAqLw0KICBfX0lPIHVpbnQzMl90IEJEVFI7ICAgICAgICAgICAgLyohPCBUSU0gYnJlYWsgYW5kIGRlYWQtdGltZSByZWdpc3RlciwgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg0NCAqLw0KICBfX0lPIHVpbnQzMl90IERDUjsgICAgICAgICAgLyohPCBUSU0gRE1BIGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDggKi8NCiAgX19JTyB1aW50MzJfdCBETUFSOyAgICAgICAgICAgIC8qITwgVElNIERNQSBhZGRyZXNzIGZvciBmdWxsIHRyYW5zZmVyIHJlZ2lzdGVyLCAgQWRkcmVzcyBvZmZzZXQ6IDB4NEMgKi8NCiAgX19JTyB1aW50MzJfdCBPUjsgICAgICAgICAgIC8qITwgVElNIG9wdGlvbiByZWdpc3RlciwgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDUwICovDQp9IFRJTV9UeXBlRGVmOw0KDQovKiogDQogICogQGJyaWVmIFVuaXZlcnNhbCBTeW5jaHJvbm91cyBBc3luY2hyb25vdXMgUmVjZWl2ZXIgVHJhbnNtaXR0ZXINCiAgKi8NCiANCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgQ1IxOyAgICAvKiE8IFVTQVJUIENvbnRyb2wgcmVnaXN0ZXIgMSwgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovIA0KICBfX0lPIHVpbnQzMl90IENSMjsgICAgLyohPCBVU0FSVCBDb250cm9sIHJlZ2lzdGVyIDIsICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLyANCiAgX19JTyB1aW50MzJfdCBDUjM7ICAgIC8qITwgVVNBUlQgQ29udHJvbCByZWdpc3RlciAzLCAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8NCiAgX19JTyB1aW50MzJfdCBCUlI7ICAgIC8qITwgVVNBUlQgQmF1ZCByYXRlIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8NCiAgX19JTyB1aW50MzJfdCBHVFBSOyAgIC8qITwgVVNBUlQgR3VhcmQgdGltZSBhbmQgcHJlc2NhbGVyIHJlZ2lzdGVyLCAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgKi8NCiAgX19JTyB1aW50MzJfdCBSVE9SOyAgIC8qITwgVVNBUlQgUmVjZWl2ZXIgVGltZSBPdXQgcmVnaXN0ZXIsICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTQgKi8gIA0KICBfX0lPIHVpbnQzMl90IFJRUjsgICAgLyohPCBVU0FSVCBSZXF1ZXN0IHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxOCAqLw0KICBfX0lPIHVpbnQzMl90IElTUjsgICAgLyohPCBVU0FSVCBJbnRlcnJ1cHQgYW5kIHN0YXR1cyByZWdpc3RlciwgICAgICBBZGRyZXNzIG9mZnNldDogMHgxQyAqLw0KICBfX0lPIHVpbnQzMl90IElDUjsgICAgLyohPCBVU0FSVCBJbnRlcnJ1cHQgZmxhZyBDbGVhciByZWdpc3RlciwgICAgICBBZGRyZXNzIG9mZnNldDogMHgyMCAqLw0KICBfX0lPIHVpbnQxNl90IFJEUjsgICAgLyohPCBVU0FSVCBSZWNlaXZlIERhdGEgcmVnaXN0ZXIsICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyNCAqLw0KICB1aW50MTZfdCAgUkVTRVJWRUQxOyAgLyohPCBSZXNlcnZlZCwgMHgyNiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KICBfX0lPIHVpbnQxNl90IFREUjsgICAgLyohPCBVU0FSVCBUcmFuc21pdCBEYXRhIHJlZ2lzdGVyLCAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyOCAqLw0KICB1aW50MTZfdCAgUkVTRVJWRUQyOyAgLyohPCBSZXNlcnZlZCwgMHgyQSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KfSBVU0FSVF9UeXBlRGVmOw0KDQovKiogDQogICogQGJyaWVmIFdpbmRvdyBXQVRDSERPRw0KICAqLw0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBDUjsgICAvKiE8IFdXREcgQ29udHJvbCByZWdpc3RlciwgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBDRlI7ICAvKiE8IFdXREcgQ29uZmlndXJhdGlvbiByZWdpc3RlciwgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8NCiAgX19JTyB1aW50MzJfdCBTUjsgICAvKiE8IFdXREcgU3RhdHVzIHJlZ2lzdGVyLCAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8NCn0gV1dER19UeXBlRGVmOw0KDQovKiogDQogICogQH0NCiAgKi8NCiAgDQovKiogQGFkZHRvZ3JvdXAgUGVyaXBoZXJhbF9tZW1vcnlfbWFwDQogICogQHsNCiAgKi8NCg0KI2RlZmluZSBGTEFTSF9CQVNFICAgICAgICAgICAgKCh1aW50MzJfdCkweDA4MDAwMDAwVSkgICAgICAgICAgICAgIC8qITwgRkxBU0ggYmFzZSBhZGRyZXNzIGluIHRoZSBhbGlhcyByZWdpb24gKi8NCiNkZWZpbmUgRkxBU0hfQkFOSzFfRU5EICAgICAgICgodWludDMyX3QpMHgwODAwN0ZGRlUpIC8qITwgRkxBU0ggRU5EIGFkZHJlc3Mgb2YgYmFuazEgKi8NCiNkZWZpbmUgU1JBTV9CQVNFICAgICAgICAgICAgICgodWludDMyX3QpMHgyMDAwMDAwMFUpICAgICAgICAgICAgICAvKiE8IFNSQU0gYmFzZSBhZGRyZXNzIGluIHRoZSBhbGlhcyByZWdpb24gKi8NCiNkZWZpbmUgUEVSSVBIX0JBU0UgICAgICAgICAgICgodWludDMyX3QpMHg0MDAwMDAwMFUpICAgICAgICAgICAgICAvKiE8IFBlcmlwaGVyYWwgYmFzZSBhZGRyZXNzIGluIHRoZSBhbGlhcyByZWdpb24gKi8NCg0KLyohPCBQZXJpcGhlcmFsIG1lbW9yeSBtYXAgKi8NCiNkZWZpbmUgQVBCUEVSSVBIX0JBU0UgICAgICAgIFBFUklQSF9CQVNFDQojZGVmaW5lIEFIQlBFUklQSF9CQVNFICAgICAgICAoUEVSSVBIX0JBU0UgKyAweDAwMDIwMDAwKQ0KI2RlZmluZSBBSEIyUEVSSVBIX0JBU0UgICAgICAgKFBFUklQSF9CQVNFICsgMHgwODAwMDAwMCkNCg0KLyohPCBBUEIgcGVyaXBoZXJhbHMgKi8NCiNkZWZpbmUgVElNMl9CQVNFICAgICAgICAgICAgIChBUEJQRVJJUEhfQkFTRSArIDB4MDAwMDAwMDApDQojZGVmaW5lIFRJTTNfQkFTRSAgICAgICAgICAgICAoQVBCUEVSSVBIX0JBU0UgKyAweDAwMDAwNDAwKQ0KI2RlZmluZSBUSU0xNF9CQVNFICAgICAgICAgICAgKEFQQlBFUklQSF9CQVNFICsgMHgwMDAwMjAwMCkNCiNkZWZpbmUgUlRDX0JBU0UgICAgICAgICAgICAgIChBUEJQRVJJUEhfQkFTRSArIDB4MDAwMDI4MDApDQojZGVmaW5lIFdXREdfQkFTRSAgICAgICAgICAgICAoQVBCUEVSSVBIX0JBU0UgKyAweDAwMDAyQzAwKQ0KI2RlZmluZSBJV0RHX0JBU0UgICAgICAgICAgICAgKEFQQlBFUklQSF9CQVNFICsgMHgwMDAwMzAwMCkNCiNkZWZpbmUgSTJDMV9CQVNFICAgICAgICAgICAgIChBUEJQRVJJUEhfQkFTRSArIDB4MDAwMDU0MDApDQojZGVmaW5lIFBXUl9CQVNFICAgICAgICAgICAgICAoQVBCUEVSSVBIX0JBU0UgKyAweDAwMDA3MDAwKQ0KI2RlZmluZSBTWVNDRkdfQkFTRSAgICAgICAgICAgKEFQQlBFUklQSF9CQVNFICsgMHgwMDAxMDAwMCkNCiNkZWZpbmUgRVhUSV9CQVNFICAgICAgICAgICAgIChBUEJQRVJJUEhfQkFTRSArIDB4MDAwMTA0MDApDQojZGVmaW5lIEFEQzFfQkFTRSAgICAgICAgICAgICAoQVBCUEVSSVBIX0JBU0UgKyAweDAwMDEyNDAwKQ0KI2RlZmluZSBBRENfQkFTRSAgICAgICAgICAgICAgKEFQQlBFUklQSF9CQVNFICsgMHgwMDAxMjcwOCkNCiNkZWZpbmUgVElNMV9CQVNFICAgICAgICAgICAgIChBUEJQRVJJUEhfQkFTRSArIDB4MDAwMTJDMDApDQojZGVmaW5lIFNQSTFfQkFTRSAgICAgICAgICAgICAoQVBCUEVSSVBIX0JBU0UgKyAweDAwMDEzMDAwKQ0KI2RlZmluZSBVU0FSVDFfQkFTRSAgICAgICAgICAgKEFQQlBFUklQSF9CQVNFICsgMHgwMDAxMzgwMCkNCiNkZWZpbmUgVElNMTZfQkFTRSAgICAgICAgICAgIChBUEJQRVJJUEhfQkFTRSArIDB4MDAwMTQ0MDApDQojZGVmaW5lIFRJTTE3X0JBU0UgICAgICAgICAgICAoQVBCUEVSSVBIX0JBU0UgKyAweDAwMDE0ODAwKQ0KI2RlZmluZSBEQkdNQ1VfQkFTRSAgICAgICAgICAgKEFQQlBFUklQSF9CQVNFICsgMHgwMDAxNTgwMCkNCg0KLyohPCBBSEIgcGVyaXBoZXJhbHMgKi8NCiNkZWZpbmUgRE1BMV9CQVNFICAgICAgICAgICAgIChBSEJQRVJJUEhfQkFTRSArIDB4MDAwMDAwMDApDQojZGVmaW5lIERNQTFfQ2hhbm5lbDFfQkFTRSAgICAoRE1BMV9CQVNFICsgMHgwMDAwMDAwOCkNCiNkZWZpbmUgRE1BMV9DaGFubmVsMl9CQVNFICAgIChETUExX0JBU0UgKyAweDAwMDAwMDFDKQ0KI2RlZmluZSBETUExX0NoYW5uZWwzX0JBU0UgICAgKERNQTFfQkFTRSArIDB4MDAwMDAwMzApDQojZGVmaW5lIERNQTFfQ2hhbm5lbDRfQkFTRSAgICAoRE1BMV9CQVNFICsgMHgwMDAwMDA0NCkNCiNkZWZpbmUgRE1BMV9DaGFubmVsNV9CQVNFICAgIChETUExX0JBU0UgKyAweDAwMDAwMDU4KQ0KDQojZGVmaW5lIFJDQ19CQVNFICAgICAgICAgICAgICAoQUhCUEVSSVBIX0JBU0UgKyAweDAwMDAxMDAwKQ0KI2RlZmluZSBGTEFTSF9SX0JBU0UgICAgICAgICAgKEFIQlBFUklQSF9CQVNFICsgMHgwMDAwMjAwMCkgLyohPCBGTEFTSCByZWdpc3RlcnMgYmFzZSBhZGRyZXNzICovDQojZGVmaW5lIE9CX0JBU0UgICAgICAgICAgICAgICAoKHVpbnQzMl90KTB4MUZGRkY4MDBVKSAgICAgICAvKiE8IEZMQVNIIE9wdGlvbiBCeXRlcyBiYXNlIGFkZHJlc3MgKi8NCiNkZWZpbmUgRkxBU0hTSVpFX0JBU0UgICAgICAgICgodWludDMyX3QpMHgxRkZGRjdDQ1UpICAgICAgIC8qITwgRkxBU0ggU2l6ZSByZWdpc3RlciBiYXNlIGFkZHJlc3MgKi8NCiNkZWZpbmUgVUlEX0JBU0UgICAgICAgICAgICAgICgodWludDMyX3QpMHgxRkZGRjdBQ1UpICAgICAgIC8qITwgVW5pcXVlIGRldmljZSBJRCByZWdpc3RlciBiYXNlIGFkZHJlc3MgKi8NCiNkZWZpbmUgQ1JDX0JBU0UgICAgICAgICAgICAgIChBSEJQRVJJUEhfQkFTRSArIDB4MDAwMDMwMDApDQoNCi8qITwgQUhCMiBwZXJpcGhlcmFscyAqLw0KI2RlZmluZSBHUElPQV9CQVNFICAgICAgICAgICAgKEFIQjJQRVJJUEhfQkFTRSArIDB4MDAwMDAwMDApDQojZGVmaW5lIEdQSU9CX0JBU0UgICAgICAgICAgICAoQUhCMlBFUklQSF9CQVNFICsgMHgwMDAwMDQwMCkNCiNkZWZpbmUgR1BJT0NfQkFTRSAgICAgICAgICAgIChBSEIyUEVSSVBIX0JBU0UgKyAweDAwMDAwODAwKQ0KI2RlZmluZSBHUElPRl9CQVNFICAgICAgICAgICAgKEFIQjJQRVJJUEhfQkFTRSArIDB4MDAwMDE0MDApDQoNCi8qKg0KICAqIEB9DQogICovDQogIA0KLyoqIEBhZGR0b2dyb3VwIFBlcmlwaGVyYWxfZGVjbGFyYXRpb24NCiAgKiBAew0KICAqLyAgDQoNCiNkZWZpbmUgVElNMiAgICAgICAgICAgICAgICAoKFRJTV9UeXBlRGVmICopIFRJTTJfQkFTRSkNCiNkZWZpbmUgVElNMyAgICAgICAgICAgICAgICAoKFRJTV9UeXBlRGVmICopIFRJTTNfQkFTRSkNCiNkZWZpbmUgVElNMTQgICAgICAgICAgICAgICAoKFRJTV9UeXBlRGVmICopIFRJTTE0X0JBU0UpDQojZGVmaW5lIFJUQyAgICAgICAgICAgICAgICAgKChSVENfVHlwZURlZiAqKSBSVENfQkFTRSkNCiNkZWZpbmUgV1dERyAgICAgICAgICAgICAgICAoKFdXREdfVHlwZURlZiAqKSBXV0RHX0JBU0UpDQojZGVmaW5lIElXREcgICAgICAgICAgICAgICAgKChJV0RHX1R5cGVEZWYgKikgSVdER19CQVNFKQ0KI2RlZmluZSBJMkMxICAgICAgICAgICAgICAgICgoSTJDX1R5cGVEZWYgKikgSTJDMV9CQVNFKQ0KI2RlZmluZSBQV1IgICAgICAgICAgICAgICAgICgoUFdSX1R5cGVEZWYgKikgUFdSX0JBU0UpDQojZGVmaW5lIFNZU0NGRyAgICAgICAgICAgICAgKChTWVNDRkdfVHlwZURlZiAqKSBTWVNDRkdfQkFTRSkNCiNkZWZpbmUgRVhUSSAgICAgICAgICAgICAgICAoKEVYVElfVHlwZURlZiAqKSBFWFRJX0JBU0UpDQojZGVmaW5lIEFEQzEgICAgICAgICAgICAgICAgKChBRENfVHlwZURlZiAqKSBBREMxX0JBU0UpDQojZGVmaW5lIEFEQzFfQ09NTU9OICAgICAgICAgKChBRENfQ29tbW9uX1R5cGVEZWYgKikgQURDX0JBU0UpDQojZGVmaW5lIEFEQyAgICAgICAgICAgICAgICAgKChBRENfQ29tbW9uX1R5cGVEZWYgKikgQURDX0JBU0UpIC8qIEtlcHQgZm9yIGxlZ2FjeSBwdXJwb3NlICovDQojZGVmaW5lIFRJTTEgICAgICAgICAgICAgICAgKChUSU1fVHlwZURlZiAqKSBUSU0xX0JBU0UpDQojZGVmaW5lIFNQSTEgICAgICAgICAgICAgICAgKChTUElfVHlwZURlZiAqKSBTUEkxX0JBU0UpDQojZGVmaW5lIFVTQVJUMSAgICAgICAgICAgICAgKChVU0FSVF9UeXBlRGVmICopIFVTQVJUMV9CQVNFKQ0KI2RlZmluZSBUSU0xNiAgICAgICAgICAgICAgICgoVElNX1R5cGVEZWYgKikgVElNMTZfQkFTRSkNCiNkZWZpbmUgVElNMTcgICAgICAgICAgICAgICAoKFRJTV9UeXBlRGVmICopIFRJTTE3X0JBU0UpDQojZGVmaW5lIERCR01DVSAgICAgICAgICAgICAgKChEQkdNQ1VfVHlwZURlZiAqKSBEQkdNQ1VfQkFTRSkNCiNkZWZpbmUgRE1BMSAgICAgICAgICAgICAgICAoKERNQV9UeXBlRGVmICopIERNQTFfQkFTRSkNCiNkZWZpbmUgRE1BMV9DaGFubmVsMSAgICAgICAoKERNQV9DaGFubmVsX1R5cGVEZWYgKikgRE1BMV9DaGFubmVsMV9CQVNFKQ0KI2RlZmluZSBETUExX0NoYW5uZWwyICAgICAgICgoRE1BX0NoYW5uZWxfVHlwZURlZiAqKSBETUExX0NoYW5uZWwyX0JBU0UpDQojZGVmaW5lIERNQTFfQ2hhbm5lbDMgICAgICAgKChETUFfQ2hhbm5lbF9UeXBlRGVmICopIERNQTFfQ2hhbm5lbDNfQkFTRSkNCiNkZWZpbmUgRE1BMV9DaGFubmVsNCAgICAgICAoKERNQV9DaGFubmVsX1R5cGVEZWYgKikgRE1BMV9DaGFubmVsNF9CQVNFKQ0KI2RlZmluZSBETUExX0NoYW5uZWw1ICAgICAgICgoRE1BX0NoYW5uZWxfVHlwZURlZiAqKSBETUExX0NoYW5uZWw1X0JBU0UpDQojZGVmaW5lIEZMQVNIICAgICAgICAgICAgICAgKChGTEFTSF9UeXBlRGVmICopIEZMQVNIX1JfQkFTRSkNCiNkZWZpbmUgT0IgICAgICAgICAgICAgICAgICAoKE9CX1R5cGVEZWYgKikgT0JfQkFTRSkgDQojZGVmaW5lIFJDQyAgICAgICAgICAgICAgICAgKChSQ0NfVHlwZURlZiAqKSBSQ0NfQkFTRSkNCiNkZWZpbmUgQ1JDICAgICAgICAgICAgICAgICAoKENSQ19UeXBlRGVmICopIENSQ19CQVNFKQ0KI2RlZmluZSBHUElPQSAgICAgICAgICAgICAgICgoR1BJT19UeXBlRGVmICopIEdQSU9BX0JBU0UpDQojZGVmaW5lIEdQSU9CICAgICAgICAgICAgICAgKChHUElPX1R5cGVEZWYgKikgR1BJT0JfQkFTRSkNCiNkZWZpbmUgR1BJT0MgICAgICAgICAgICAgICAoKEdQSU9fVHlwZURlZiAqKSBHUElPQ19CQVNFKQ0KI2RlZmluZSBHUElPRiAgICAgICAgICAgICAgICgoR1BJT19UeXBlRGVmICopIEdQSU9GX0JBU0UpDQovKioNCiAgKiBAfQ0KICAqLw0KDQovKiogQGFkZHRvZ3JvdXAgRXhwb3J0ZWRfY29uc3RhbnRzDQogICogQHsNCiAgKi8NCg0KICAvKiogQGFkZHRvZ3JvdXAgUGVyaXBoZXJhbF9SZWdpc3RlcnNfQml0c19EZWZpbml0aW9uDQogICogQHsNCiAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgIFBlcmlwaGVyYWwgUmVnaXN0ZXJzIEJpdHMgRGVmaW5pdGlvbiAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgIEFuYWxvZyB0byBEaWdpdGFsIENvbnZlcnRlciAoQURDKSAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoNCiAqIEBicmllZiBTcGVjaWZpYyBkZXZpY2UgZmVhdHVyZSBkZWZpbml0aW9ucyAobm90IHByZXNlbnQgb24gYWxsIGRldmljZXMgaW4gdGhlIFNUTTMyRjAgc2VyaWUpDQogKi8NCiNkZWZpbmUgQURDX0NIQU5ORUxfVkJBVF9TVVBQT1JUICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBmZWF0dXJlIGF2YWlsYWJsZSBvbmx5IG9uIHNwZWNpZmljIGRldmljZXM6IEFEQyBpbnRlcm5hbCBjaGFubmVsIFZiYXQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIEFEQ19JU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX0lTUl9BRFJEWV9Qb3MgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0lTUl9BRFJEWV9Nc2sgICAgICAgICAoMHgxVSA8PCBBRENfSVNSX0FEUkRZX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQURDX0lTUl9BRFJEWSAgICAgICAgICAgICBBRENfSVNSX0FEUkRZX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyByZWFkeSBmbGFnICovDQojZGVmaW5lIEFEQ19JU1JfRU9TTVBfUG9zICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19JU1JfRU9TTVBfTXNrICAgICAgICAgKDB4MVUgPDwgQURDX0lTUl9FT1NNUF9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEFEQ19JU1JfRU9TTVAgICAgICAgICAgICAgQURDX0lTUl9FT1NNUF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBlbmQgb2Ygc2FtcGxpbmcgZmxhZyAqLw0KI2RlZmluZSBBRENfSVNSX0VPQ19Qb3MgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfSVNSX0VPQ19Nc2sgICAgICAgICAgICgweDFVIDw8IEFEQ19JU1JfRU9DX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBBRENfSVNSX0VPQyAgICAgICAgICAgICAgIEFEQ19JU1JfRU9DX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgZW5kIG9mIHVuaXRhcnkgY29udmVyc2lvbiBmbGFnICovDQojZGVmaW5lIEFEQ19JU1JfRU9TX1BvcyAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19JU1JfRU9TX01zayAgICAgICAgICAgKDB4MVUgPDwgQURDX0lTUl9FT1NfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEFEQ19JU1JfRU9TICAgICAgICAgICAgICAgQURDX0lTUl9FT1NfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBlbmQgb2Ygc2VxdWVuY2UgY29udmVyc2lvbnMgZmxhZyAqLw0KI2RlZmluZSBBRENfSVNSX09WUl9Qb3MgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfSVNSX09WUl9Nc2sgICAgICAgICAgICgweDFVIDw8IEFEQ19JU1JfT1ZSX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBBRENfSVNSX09WUiAgICAgICAgICAgICAgIEFEQ19JU1JfT1ZSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgb3ZlcnJ1biBmbGFnICovDQojZGVmaW5lIEFEQ19JU1JfQVdEMV9Qb3MgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19JU1JfQVdEMV9Nc2sgICAgICAgICAgKDB4MVUgPDwgQURDX0lTUl9BV0QxX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEFEQ19JU1JfQVdEMSAgICAgICAgICAgICAgQURDX0lTUl9BV0QxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgYW5hbG9nIHdhdGNoZG9nIDEgZmxhZyAqLw0KDQovKiBMZWdhY3kgZGVmaW5lcyAqLw0KI2RlZmluZSBBRENfSVNSX0FXRCAgICAgICAgICAgICAoQURDX0lTUl9BV0QxKQ0KI2RlZmluZSBBRENfSVNSX0VPU0VRICAgICAgICAgICAoQURDX0lTUl9FT1MpDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBBRENfSUVSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19JRVJfQURSRFlJRV9Qb3MgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19JRVJfQURSRFlJRV9Nc2sgICAgICAgKDB4MVUgPDwgQURDX0lFUl9BRFJEWUlFX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEFEQ19JRVJfQURSRFlJRSAgICAgICAgICAgQURDX0lFUl9BRFJEWUlFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgcmVhZHkgaW50ZXJydXB0ICovDQojZGVmaW5lIEFEQ19JRVJfRU9TTVBJRV9Qb3MgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19JRVJfRU9TTVBJRV9Nc2sgICAgICAgKDB4MVUgPDwgQURDX0lFUl9FT1NNUElFX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEFEQ19JRVJfRU9TTVBJRSAgICAgICAgICAgQURDX0lFUl9FT1NNUElFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBlbmQgb2Ygc2FtcGxpbmcgaW50ZXJydXB0ICovDQojZGVmaW5lIEFEQ19JRVJfRU9DSUVfUG9zICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19JRVJfRU9DSUVfTXNrICAgICAgICAgKDB4MVUgPDwgQURDX0lFUl9FT0NJRV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEFEQ19JRVJfRU9DSUUgICAgICAgICAgICAgQURDX0lFUl9FT0NJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBlbmQgb2YgdW5pdGFyeSBjb252ZXJzaW9uIGludGVycnVwdCAqLw0KI2RlZmluZSBBRENfSUVSX0VPU0lFX1BvcyAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfSUVSX0VPU0lFX01zayAgICAgICAgICgweDFVIDw8IEFEQ19JRVJfRU9TSUVfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBBRENfSUVSX0VPU0lFICAgICAgICAgICAgIEFEQ19JRVJfRU9TSUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgZW5kIG9mIHNlcXVlbmNlIGNvbnZlcnNpb25zIGludGVycnVwdCAqLw0KI2RlZmluZSBBRENfSUVSX09WUklFX1BvcyAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfSUVSX09WUklFX01zayAgICAgICAgICgweDFVIDw8IEFEQ19JRVJfT1ZSSUVfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBBRENfSUVSX09WUklFICAgICAgICAgICAgIEFEQ19JRVJfT1ZSSUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgb3ZlcnJ1biBpbnRlcnJ1cHQgKi8NCiNkZWZpbmUgQURDX0lFUl9BV0QxSUVfUG9zICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0lFUl9BV0QxSUVfTXNrICAgICAgICAoMHgxVSA8PCBBRENfSUVSX0FXRDFJRV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgQURDX0lFUl9BV0QxSUUgICAgICAgICAgICBBRENfSUVSX0FXRDFJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBhbmFsb2cgd2F0Y2hkb2cgMSBpbnRlcnJ1cHQgKi8NCg0KLyogTGVnYWN5IGRlZmluZXMgKi8NCiNkZWZpbmUgQURDX0lFUl9BV0RJRSAgICAgICAgICAgKEFEQ19JRVJfQVdEMUlFKQ0KI2RlZmluZSBBRENfSUVSX0VPU0VRSUUgICAgICAgICAoQURDX0lFUl9FT1NJRSkNCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIEFEQ19DUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX0NSX0FERU5fUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSX0FERU5fTXNrICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1JfQURFTl9Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQURDX0NSX0FERU4gICAgICAgICAgICAgICBBRENfQ1JfQURFTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBlbmFibGUgKi8NCiNkZWZpbmUgQURDX0NSX0FERElTX1BvcyAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSX0FERElTX01zayAgICAgICAgICAoMHgxVSA8PCBBRENfQ1JfQURESVNfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgQURDX0NSX0FERElTICAgICAgICAgICAgICBBRENfQ1JfQURESVNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBkaXNhYmxlICovDQojZGVmaW5lIEFEQ19DUl9BRFNUQVJUX1BvcyAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUl9BRFNUQVJUX01zayAgICAgICAgKDB4MVUgPDwgQURDX0NSX0FEU1RBUlRfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEFEQ19DUl9BRFNUQVJUICAgICAgICAgICAgQURDX0NSX0FEU1RBUlRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBjb252ZXJzaW9uIHN0YXJ0ICovDQojZGVmaW5lIEFEQ19DUl9BRFNUUF9Qb3MgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUl9BRFNUUF9Nc2sgICAgICAgICAgKDB4MVUgPDwgQURDX0NSX0FEU1RQX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEFEQ19DUl9BRFNUUCAgICAgICAgICAgICAgQURDX0NSX0FEU1RQX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBjb252ZXJzaW9uIHN0b3AgKi8NCiNkZWZpbmUgQURDX0NSX0FEQ0FMX1BvcyAgICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSX0FEQ0FMX01zayAgICAgICAgICAoMHgxVSA8PCBBRENfQ1JfQURDQUxfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4ODAwMDAwMDAgKi8NCiNkZWZpbmUgQURDX0NSX0FEQ0FMICAgICAgICAgICAgICBBRENfQ1JfQURDQUxfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBjYWxpYnJhdGlvbiAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBBRENfQ0ZHUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfQ0ZHUjFfRE1BRU5fUG9zICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ0ZHUjFfRE1BRU5fTXNrICAgICAgICgweDFVIDw8IEFEQ19DRkdSMV9ETUFFTl9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBBRENfQ0ZHUjFfRE1BRU4gICAgICAgICAgIEFEQ19DRkdSMV9ETUFFTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIERNQSB0cmFuc2ZlciBlbmFibGUgKi8NCiNkZWZpbmUgQURDX0NGR1IxX0RNQUNGR19Qb3MgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NGR1IxX0RNQUNGR19Nc2sgICAgICAoMHgxVSA8PCBBRENfQ0ZHUjFfRE1BQ0ZHX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgQURDX0NGR1IxX0RNQUNGRyAgICAgICAgICBBRENfQ0ZHUjFfRE1BQ0ZHX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBETUEgdHJhbnNmZXIgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBBRENfQ0ZHUjFfU0NBTkRJUl9Qb3MgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ0ZHUjFfU0NBTkRJUl9Nc2sgICAgICgweDFVIDw8IEFEQ19DRkdSMV9TQ0FORElSX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBBRENfQ0ZHUjFfU0NBTkRJUiAgICAgICAgIEFEQ19DRkdSMV9TQ0FORElSX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHNjYW4gZGlyZWN0aW9uICovDQoNCiNkZWZpbmUgQURDX0NGR1IxX1JFU19Qb3MgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NGR1IxX1JFU19Nc2sgICAgICAgICAoMHgzVSA8PCBBRENfQ0ZHUjFfUkVTX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTggKi8NCiNkZWZpbmUgQURDX0NGR1IxX1JFUyAgICAgICAgICAgICBBRENfQ0ZHUjFfUkVTX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBkYXRhIHJlc29sdXRpb24gKi8NCiNkZWZpbmUgQURDX0NGR1IxX1JFU18wICAgICAgICAgICAoMHgxVSA8PCBBRENfQ0ZHUjFfUkVTX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgQURDX0NGR1IxX1JFU18xICAgICAgICAgICAoMHgyVSA8PCBBRENfQ0ZHUjFfUkVTX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCg0KI2RlZmluZSBBRENfQ0ZHUjFfQUxJR05fUG9zICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ0ZHUjFfQUxJR05fTXNrICAgICAgICgweDFVIDw8IEFEQ19DRkdSMV9BTElHTl9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBBRENfQ0ZHUjFfQUxJR04gICAgICAgICAgIEFEQ19DRkdSMV9BTElHTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGRhdGEgYWxpZ25lbWVudCAqLw0KDQojZGVmaW5lIEFEQ19DRkdSMV9FWFRTRUxfUG9zICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DRkdSMV9FWFRTRUxfTXNrICAgICAgKDB4N1UgPDwgQURDX0NGR1IxX0VYVFNFTF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMUMwICovDQojZGVmaW5lIEFEQ19DRkdSMV9FWFRTRUwgICAgICAgICAgQURDX0NGR1IxX0VYVFNFTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBleHRlcm5hbCB0cmlnZ2VyIHNvdXJjZSAqLw0KI2RlZmluZSBBRENfQ0ZHUjFfRVhUU0VMXzAgICAgICAgICgweDFVIDw8IEFEQ19DRkdSMV9FWFRTRUxfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBBRENfQ0ZHUjFfRVhUU0VMXzEgICAgICAgICgweDJVIDw8IEFEQ19DRkdSMV9FWFRTRUxfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBBRENfQ0ZHUjFfRVhUU0VMXzIgICAgICAgICgweDRVIDw8IEFEQ19DRkdSMV9FWFRTRUxfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KDQojZGVmaW5lIEFEQ19DRkdSMV9FWFRFTl9Qb3MgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DRkdSMV9FWFRFTl9Nc2sgICAgICAgKDB4M1UgPDwgQURDX0NGR1IxX0VYVEVOX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwQzAwICovDQojZGVmaW5lIEFEQ19DRkdSMV9FWFRFTiAgICAgICAgICAgQURDX0NGR1IxX0VYVEVOX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBleHRlcm5hbCB0cmlnZ2VyIHBvbGFyaXR5ICovDQojZGVmaW5lIEFEQ19DRkdSMV9FWFRFTl8wICAgICAgICAgKDB4MVUgPDwgQURDX0NGR1IxX0VYVEVOX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEFEQ19DRkdSMV9FWFRFTl8xICAgICAgICAgKDB4MlUgPDwgQURDX0NGR1IxX0VYVEVOX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQoNCiNkZWZpbmUgQURDX0NGR1IxX09WUk1PRF9Qb3MgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NGR1IxX09WUk1PRF9Nc2sgICAgICAoMHgxVSA8PCBBRENfQ0ZHUjFfT1ZSTU9EX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgQURDX0NGR1IxX09WUk1PRCAgICAgICAgICBBRENfQ0ZHUjFfT1ZSTU9EX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIG92ZXJydW4gY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBBRENfQ0ZHUjFfQ09OVF9Qb3MgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ0ZHUjFfQ09OVF9Nc2sgICAgICAgICgweDFVIDw8IEFEQ19DRkdSMV9DT05UX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBBRENfQ0ZHUjFfQ09OVCAgICAgICAgICAgIEFEQ19DRkdSMV9DT05UX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgY29udGludW91cyBjb252ZXJzaW9uIG1vZGUgKi8NCiNkZWZpbmUgQURDX0NGR1IxX1dBSVRfUG9zICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NGR1IxX1dBSVRfTXNrICAgICAgICAoMHgxVSA8PCBBRENfQ0ZHUjFfV0FJVF9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgQURDX0NGR1IxX1dBSVQgICAgICAgICAgICBBRENfQ0ZHUjFfV0FJVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBsb3cgcG93ZXIgYXV0byB3YWl0ICovDQojZGVmaW5lIEFEQ19DRkdSMV9BVVRPRkZfUG9zICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DRkdSMV9BVVRPRkZfTXNrICAgICAgKDB4MVUgPDwgQURDX0NGR1IxX0FVVE9GRl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEFEQ19DRkdSMV9BVVRPRkYgICAgICAgICAgQURDX0NGR1IxX0FVVE9GRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgbG93IHBvd2VyIGF1dG8gcG93ZXIgb2ZmICovDQojZGVmaW5lIEFEQ19DRkdSMV9ESVNDRU5fUG9zICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DRkdSMV9ESVNDRU5fTXNrICAgICAgKDB4MVUgPDwgQURDX0NGR1IxX0RJU0NFTl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEFEQ19DRkdSMV9ESVNDRU4gICAgICAgICAgQURDX0NGR1IxX0RJU0NFTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgZGlzY29udGludW91cyBtb2RlICovDQoNCiNkZWZpbmUgQURDX0NGR1IxX0FXRDFTR0xfUG9zICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NGR1IxX0FXRDFTR0xfTXNrICAgICAoMHgxVSA8PCBBRENfQ0ZHUjFfQVdEMVNHTF9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgQURDX0NGR1IxX0FXRDFTR0wgICAgICAgICBBRENfQ0ZHUjFfQVdEMVNHTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBhbmFsb2cgd2F0Y2hkb2cgMSBtb25pdG9yaW5nIGEgc2luZ2xlIGNoYW5uZWwgb3IgYWxsIGNoYW5uZWxzICovDQojZGVmaW5lIEFEQ19DRkdSMV9BV0QxRU5fUG9zICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DRkdSMV9BV0QxRU5fTXNrICAgICAgKDB4MVUgPDwgQURDX0NGR1IxX0FXRDFFTl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIEFEQ19DRkdSMV9BV0QxRU4gICAgICAgICAgQURDX0NGR1IxX0FXRDFFTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgYW5hbG9nIHdhdGNoZG9nIDEgZW5hYmxlIG9uIHNjb3BlIEFEQyBncm91cCByZWd1bGFyICovDQoNCiNkZWZpbmUgQURDX0NGR1IxX0FXRDFDSF9Qb3MgICAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NGR1IxX0FXRDFDSF9Nc2sgICAgICAoMHgxRlUgPDwgQURDX0NGR1IxX0FXRDFDSF9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4N0MwMDAwMDAgKi8NCiNkZWZpbmUgQURDX0NGR1IxX0FXRDFDSCAgICAgICAgICBBRENfQ0ZHUjFfQVdEMUNIX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBhbmFsb2cgd2F0Y2hkb2cgMSBtb25pdG9yZWQgY2hhbm5lbCBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX0NGR1IxX0FXRDFDSF8wICAgICAgICAoMHgwMVUgPDwgQURDX0NGR1IxX0FXRDFDSF9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgQURDX0NGR1IxX0FXRDFDSF8xICAgICAgICAoMHgwMlUgPDwgQURDX0NGR1IxX0FXRDFDSF9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgQURDX0NGR1IxX0FXRDFDSF8yICAgICAgICAoMHgwNFUgPDwgQURDX0NGR1IxX0FXRDFDSF9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgQURDX0NGR1IxX0FXRDFDSF8zICAgICAgICAoMHgwOFUgPDwgQURDX0NGR1IxX0FXRDFDSF9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgQURDX0NGR1IxX0FXRDFDSF80ICAgICAgICAoMHgxMFUgPDwgQURDX0NGR1IxX0FXRDFDSF9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4NDAwMDAwMDAgKi8NCg0KLyogTGVnYWN5IGRlZmluZXMgKi8NCiNkZWZpbmUgQURDX0NGR1IxX0FVVERMWSAgICAgICAgKEFEQ19DRkdSMV9XQUlUKQ0KI2RlZmluZSBBRENfQ0ZHUjFfQVdEU0dMICAgICAgICAoQURDX0NGR1IxX0FXRDFTR0wpDQojZGVmaW5lIEFEQ19DRkdSMV9BV0RFTiAgICAgICAgIChBRENfQ0ZHUjFfQVdEMUVOKQ0KI2RlZmluZSBBRENfQ0ZHUjFfQVdEQ0ggICAgICAgICAoQURDX0NGR1IxX0FXRDFDSCkNCiNkZWZpbmUgQURDX0NGR1IxX0FXRENIXzAgICAgICAgKEFEQ19DRkdSMV9BV0QxQ0hfMCkNCiNkZWZpbmUgQURDX0NGR1IxX0FXRENIXzEgICAgICAgKEFEQ19DRkdSMV9BV0QxQ0hfMSkNCiNkZWZpbmUgQURDX0NGR1IxX0FXRENIXzIgICAgICAgKEFEQ19DRkdSMV9BV0QxQ0hfMikNCiNkZWZpbmUgQURDX0NGR1IxX0FXRENIXzMgICAgICAgKEFEQ19DRkdSMV9BV0QxQ0hfMykNCiNkZWZpbmUgQURDX0NGR1IxX0FXRENIXzQgICAgICAgKEFEQ19DRkdSMV9BV0QxQ0hfNCkNCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgQURDX0NGR1IyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX0NGR1IyX0NLTU9ERV9Qb3MgICAgICAoMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NGR1IyX0NLTU9ERV9Nc2sgICAgICAoMHgzVSA8PCBBRENfQ0ZHUjJfQ0tNT0RFX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4QzAwMDAwMDAgKi8NCiNkZWZpbmUgQURDX0NGR1IyX0NLTU9ERSAgICAgICAgICBBRENfQ0ZHUjJfQ0tNT0RFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBjbG9jayBzb3VyY2UgYW5kIHByZXNjYWxlciAocHJlc2NhbGVyIG9ubHkgZm9yIGNsb2NrIHNvdXJjZSBzeW5jaHJvbm91cykgKi8NCiNkZWZpbmUgQURDX0NGR1IyX0NLTU9ERV8xICAgICAgICAoMHgyVSA8PCBBRENfQ0ZHUjJfQ0tNT0RFX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4ODAwMDAwMDAgKi8NCiNkZWZpbmUgQURDX0NGR1IyX0NLTU9ERV8wICAgICAgICAoMHgxVSA8PCBBRENfQ0ZHUjJfQ0tNT0RFX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4NDAwMDAwMDAgKi8NCg0KLyogTGVnYWN5IGRlZmluZXMgKi8NCiNkZWZpbmUgIEFEQ19DRkdSMl9KSVRPRkZESVY0ICAgKEFEQ19DRkdSMl9DS01PREVfMSkgICAvKiE8IEFEQyBjbG9ja2VkIGJ5IFBDTEsgZGl2NCAqLw0KI2RlZmluZSAgQURDX0NGR1IyX0pJVE9GRkRJVjIgICAoQURDX0NGR1IyX0NLTU9ERV8wKSAgIC8qITwgQURDIGNsb2NrZWQgYnkgUENMSyBkaXYyICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfU01QUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19TTVBSX1NNUF9Qb3MgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSX1NNUF9Nc2sgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFJfU01QX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA3ICovDQojZGVmaW5lIEFEQ19TTVBSX1NNUCAgICAgICAgICAgICAgQURDX1NNUFJfU01QX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgb2YgY2hhbm5lbHMgc2FtcGxpbmcgdGltZSAyICovDQojZGVmaW5lIEFEQ19TTVBSX1NNUF8wICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFJfU01QX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEFEQ19TTVBSX1NNUF8xICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFJfU01QX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEFEQ19TTVBSX1NNUF8yICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFJfU01QX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQoNCi8qIExlZ2FjeSBkZWZpbmVzICovDQojZGVmaW5lICBBRENfU01QUjFfU01QUiAgICAgICAgIChBRENfU01QUl9TTVApICAgICAgICAgLyohPCBTTVBbMjowXSBiaXRzIChTYW1wbGluZyB0aW1lIHNlbGVjdGlvbikgKi8NCiNkZWZpbmUgIEFEQ19TTVBSMV9TTVBSXzAgICAgICAgKEFEQ19TTVBSX1NNUF8wKSAgICAgICAvKiE8IGJpdCAwICovDQojZGVmaW5lICBBRENfU01QUjFfU01QUl8xICAgICAgIChBRENfU01QUl9TTVBfMSkgICAgICAgLyohPCBiaXQgMSAqLw0KI2RlZmluZSAgQURDX1NNUFIxX1NNUFJfMiAgICAgICAoQURDX1NNUFJfU01QXzIpICAgICAgIC8qITwgYml0IDIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfVFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfVFIxX0xUMV9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfVFIxX0xUMV9Nc2sgICAgICAgICAgICgweEZGRlUgPDwgQURDX1RSMV9MVDFfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMEZGRiAqLw0KI2RlZmluZSBBRENfVFIxX0xUMSAgICAgICAgICAgICAgIEFEQ19UUjFfTFQxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGFuYWxvZyB3YXRjaGRvZyAxIHRocmVzaG9sZCBsb3cgKi8NCiNkZWZpbmUgQURDX1RSMV9MVDFfMCAgICAgICAgICAgICAoMHgwMDFVIDw8IEFEQ19UUjFfTFQxX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQURDX1RSMV9MVDFfMSAgICAgICAgICAgICAoMHgwMDJVIDw8IEFEQ19UUjFfTFQxX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgQURDX1RSMV9MVDFfMiAgICAgICAgICAgICAoMHgwMDRVIDw8IEFEQ19UUjFfTFQxX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgQURDX1RSMV9MVDFfMyAgICAgICAgICAgICAoMHgwMDhVIDw8IEFEQ19UUjFfTFQxX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgQURDX1RSMV9MVDFfNCAgICAgICAgICAgICAoMHgwMTBVIDw8IEFEQ19UUjFfTFQxX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgQURDX1RSMV9MVDFfNSAgICAgICAgICAgICAoMHgwMjBVIDw8IEFEQ19UUjFfTFQxX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgQURDX1RSMV9MVDFfNiAgICAgICAgICAgICAoMHgwNDBVIDw8IEFEQ19UUjFfTFQxX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgQURDX1RSMV9MVDFfNyAgICAgICAgICAgICAoMHgwODBVIDw8IEFEQ19UUjFfTFQxX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgQURDX1RSMV9MVDFfOCAgICAgICAgICAgICAoMHgxMDBVIDw8IEFEQ19UUjFfTFQxX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgQURDX1RSMV9MVDFfOSAgICAgICAgICAgICAoMHgyMDBVIDw8IEFEQ19UUjFfTFQxX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgQURDX1RSMV9MVDFfMTAgICAgICAgICAgICAoMHg0MDBVIDw8IEFEQ19UUjFfTFQxX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgQURDX1RSMV9MVDFfMTEgICAgICAgICAgICAoMHg4MDBVIDw8IEFEQ19UUjFfTFQxX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCg0KI2RlZmluZSBBRENfVFIxX0hUMV9Qb3MgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfVFIxX0hUMV9Nc2sgICAgICAgICAgICgweEZGRlUgPDwgQURDX1RSMV9IVDFfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwRkZGMDAwMCAqLw0KI2RlZmluZSBBRENfVFIxX0hUMSAgICAgICAgICAgICAgIEFEQ19UUjFfSFQxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIEFuYWxvZyB3YXRjaGRvZyAxIHRocmVzaG9sZCBoaWdoICovDQojZGVmaW5lIEFEQ19UUjFfSFQxXzAgICAgICAgICAgICAgKDB4MDAxVSA8PCBBRENfVFIxX0hUMV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEFEQ19UUjFfSFQxXzEgICAgICAgICAgICAgKDB4MDAyVSA8PCBBRENfVFIxX0hUMV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIEFEQ19UUjFfSFQxXzIgICAgICAgICAgICAgKDB4MDA0VSA8PCBBRENfVFIxX0hUMV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEFEQ19UUjFfSFQxXzMgICAgICAgICAgICAgKDB4MDA4VSA8PCBBRENfVFIxX0hUMV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIEFEQ19UUjFfSFQxXzQgICAgICAgICAgICAgKDB4MDEwVSA8PCBBRENfVFIxX0hUMV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIEFEQ19UUjFfSFQxXzUgICAgICAgICAgICAgKDB4MDIwVSA8PCBBRENfVFIxX0hUMV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIEFEQ19UUjFfSFQxXzYgICAgICAgICAgICAgKDB4MDQwVSA8PCBBRENfVFIxX0hUMV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEFEQ19UUjFfSFQxXzcgICAgICAgICAgICAgKDB4MDgwVSA8PCBBRENfVFIxX0hUMV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIEFEQ19UUjFfSFQxXzggICAgICAgICAgICAgKDB4MTAwVSA8PCBBRENfVFIxX0hUMV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIEFEQ19UUjFfSFQxXzkgICAgICAgICAgICAgKDB4MjAwVSA8PCBBRENfVFIxX0hUMV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIEFEQ19UUjFfSFQxXzEwICAgICAgICAgICAgKDB4NDAwVSA8PCBBRENfVFIxX0hUMV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIEFEQ19UUjFfSFQxXzExICAgICAgICAgICAgKDB4ODAwVSA8PCBBRENfVFIxX0hUMV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDA4MDAwMDAwICovDQoNCi8qIExlZ2FjeSBkZWZpbmVzICovDQojZGVmaW5lICBBRENfVFJfSFQgICAgICAgICAgICAgIChBRENfVFIxX0hUMSkNCiNkZWZpbmUgIEFEQ19UUl9MVCAgICAgICAgICAgICAgKEFEQ19UUjFfTFQxKQ0KI2RlZmluZSAgQURDX0hUUl9IVCAgICAgICAgICAgICAoQURDX1RSMV9IVDEpDQojZGVmaW5lICBBRENfTFRSX0xUICAgICAgICAgICAgIChBRENfVFIxX0xUMSkNCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19DSFNFTFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX0NIU0VMUl9DSFNFTF9Qb3MgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NIU0VMUl9DSFNFTF9Nc2sgICAgICAoMHg3RkZGRlUgPDwgQURDX0NIU0VMUl9DSFNFTF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwN0ZGRkYgKi8NCiNkZWZpbmUgQURDX0NIU0VMUl9DSFNFTCAgICAgICAgICBBRENfQ0hTRUxSX0NIU0VMX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciBjaGFubmVscywgYXZhaWxhYmxlIHdoZW4gQURDX0NGR1IxX0NIU0VMUk1PRCBpcyByZXNldCAqLw0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMMThfUG9zICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMMThfTXNrICAgICgweDFVIDw8IEFEQ19DSFNFTFJfQ0hTRUwxOF9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMMTggICAgICAgIEFEQ19DSFNFTFJfQ0hTRUwxOF9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIGNoYW5uZWwgMTgsIGF2YWlsYWJsZSB3aGVuIEFEQ19DRkdSMV9DSFNFTFJNT0QgaXMgcmVzZXQgKi8NCiNkZWZpbmUgQURDX0NIU0VMUl9DSFNFTDE3X1BvcyAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NIU0VMUl9DSFNFTDE3X01zayAgICAoMHgxVSA8PCBBRENfQ0hTRUxSX0NIU0VMMTdfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgQURDX0NIU0VMUl9DSFNFTDE3ICAgICAgICBBRENfQ0hTRUxSX0NIU0VMMTdfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciBjaGFubmVsIDE3LCBhdmFpbGFibGUgd2hlbiBBRENfQ0ZHUjFfQ0hTRUxSTU9EIGlzIHJlc2V0ICovDQojZGVmaW5lIEFEQ19DSFNFTFJfQ0hTRUwxNl9Qb3MgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DSFNFTFJfQ0hTRUwxNl9Nc2sgICAgKDB4MVUgPDwgQURDX0NIU0VMUl9DSFNFTDE2X1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEFEQ19DSFNFTFJfQ0hTRUwxNiAgICAgICAgQURDX0NIU0VMUl9DSFNFTDE2X01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgY2hhbm5lbCAxNiwgYXZhaWxhYmxlIHdoZW4gQURDX0NGR1IxX0NIU0VMUk1PRCBpcyByZXNldCAqLw0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMMTVfUG9zICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMMTVfTXNrICAgICgweDFVIDw8IEFEQ19DSFNFTFJfQ0hTRUwxNV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMMTUgICAgICAgIEFEQ19DSFNFTFJfQ0hTRUwxNV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIGNoYW5uZWwgMTUsIGF2YWlsYWJsZSB3aGVuIEFEQ19DRkdSMV9DSFNFTFJNT0QgaXMgcmVzZXQgKi8NCiNkZWZpbmUgQURDX0NIU0VMUl9DSFNFTDE0X1BvcyAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NIU0VMUl9DSFNFTDE0X01zayAgICAoMHgxVSA8PCBBRENfQ0hTRUxSX0NIU0VMMTRfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgQURDX0NIU0VMUl9DSFNFTDE0ICAgICAgICBBRENfQ0hTRUxSX0NIU0VMMTRfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciBjaGFubmVsIDE0LCBhdmFpbGFibGUgd2hlbiBBRENfQ0ZHUjFfQ0hTRUxSTU9EIGlzIHJlc2V0ICovDQojZGVmaW5lIEFEQ19DSFNFTFJfQ0hTRUwxM19Qb3MgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DSFNFTFJfQ0hTRUwxM19Nc2sgICAgKDB4MVUgPDwgQURDX0NIU0VMUl9DSFNFTDEzX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEFEQ19DSFNFTFJfQ0hTRUwxMyAgICAgICAgQURDX0NIU0VMUl9DSFNFTDEzX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgY2hhbm5lbCAxMywgYXZhaWxhYmxlIHdoZW4gQURDX0NGR1IxX0NIU0VMUk1PRCBpcyByZXNldCAqLw0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMMTJfUG9zICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMMTJfTXNrICAgICgweDFVIDw8IEFEQ19DSFNFTFJfQ0hTRUwxMl9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMMTIgICAgICAgIEFEQ19DSFNFTFJfQ0hTRUwxMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIGNoYW5uZWwgMTIsIGF2YWlsYWJsZSB3aGVuIEFEQ19DRkdSMV9DSFNFTFJNT0QgaXMgcmVzZXQgKi8NCiNkZWZpbmUgQURDX0NIU0VMUl9DSFNFTDExX1BvcyAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NIU0VMUl9DSFNFTDExX01zayAgICAoMHgxVSA8PCBBRENfQ0hTRUxSX0NIU0VMMTFfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgQURDX0NIU0VMUl9DSFNFTDExICAgICAgICBBRENfQ0hTRUxSX0NIU0VMMTFfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciBjaGFubmVsIDExLCBhdmFpbGFibGUgd2hlbiBBRENfQ0ZHUjFfQ0hTRUxSTU9EIGlzIHJlc2V0ICovDQojZGVmaW5lIEFEQ19DSFNFTFJfQ0hTRUwxMF9Qb3MgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DSFNFTFJfQ0hTRUwxMF9Nc2sgICAgKDB4MVUgPDwgQURDX0NIU0VMUl9DSFNFTDEwX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEFEQ19DSFNFTFJfQ0hTRUwxMCAgICAgICAgQURDX0NIU0VMUl9DSFNFTDEwX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgY2hhbm5lbCAxMCwgYXZhaWxhYmxlIHdoZW4gQURDX0NGR1IxX0NIU0VMUk1PRCBpcyByZXNldCAqLw0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMOV9Qb3MgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMOV9Nc2sgICAgICgweDFVIDw8IEFEQ19DSFNFTFJfQ0hTRUw5X1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMOSAgICAgICAgIEFEQ19DSFNFTFJfQ0hTRUw5X01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIGNoYW5uZWwgOSwgYXZhaWxhYmxlIHdoZW4gQURDX0NGR1IxX0NIU0VMUk1PRCBpcyByZXNldCAqLw0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMOF9Qb3MgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMOF9Nc2sgICAgICgweDFVIDw8IEFEQ19DSFNFTFJfQ0hTRUw4X1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMOCAgICAgICAgIEFEQ19DSFNFTFJfQ0hTRUw4X01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIGNoYW5uZWwgOCwgYXZhaWxhYmxlIHdoZW4gQURDX0NGR1IxX0NIU0VMUk1PRCBpcyByZXNldCAqLw0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMN19Qb3MgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMN19Nc2sgICAgICgweDFVIDw8IEFEQ19DSFNFTFJfQ0hTRUw3X1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMNyAgICAgICAgIEFEQ19DSFNFTFJfQ0hTRUw3X01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIGNoYW5uZWwgNywgYXZhaWxhYmxlIHdoZW4gQURDX0NGR1IxX0NIU0VMUk1PRCBpcyByZXNldCAqLw0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMNl9Qb3MgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMNl9Nc2sgICAgICgweDFVIDw8IEFEQ19DSFNFTFJfQ0hTRUw2X1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMNiAgICAgICAgIEFEQ19DSFNFTFJfQ0hTRUw2X01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIGNoYW5uZWwgNiwgYXZhaWxhYmxlIHdoZW4gQURDX0NGR1IxX0NIU0VMUk1PRCBpcyByZXNldCAqLw0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMNV9Qb3MgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMNV9Nc2sgICAgICgweDFVIDw8IEFEQ19DSFNFTFJfQ0hTRUw1X1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMNSAgICAgICAgIEFEQ19DSFNFTFJfQ0hTRUw1X01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIGNoYW5uZWwgNSwgYXZhaWxhYmxlIHdoZW4gQURDX0NGR1IxX0NIU0VMUk1PRCBpcyByZXNldCAqLw0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMNF9Qb3MgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMNF9Nc2sgICAgICgweDFVIDw8IEFEQ19DSFNFTFJfQ0hTRUw0X1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMNCAgICAgICAgIEFEQ19DSFNFTFJfQ0hTRUw0X01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIGNoYW5uZWwgNCwgYXZhaWxhYmxlIHdoZW4gQURDX0NGR1IxX0NIU0VMUk1PRCBpcyByZXNldCAqLw0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMM19Qb3MgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMM19Nc2sgICAgICgweDFVIDw8IEFEQ19DSFNFTFJfQ0hTRUwzX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMMyAgICAgICAgIEFEQ19DSFNFTFJfQ0hTRUwzX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIGNoYW5uZWwgMywgYXZhaWxhYmxlIHdoZW4gQURDX0NGR1IxX0NIU0VMUk1PRCBpcyByZXNldCAqLw0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMMl9Qb3MgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMMl9Nc2sgICAgICgweDFVIDw8IEFEQ19DSFNFTFJfQ0hTRUwyX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMMiAgICAgICAgIEFEQ19DSFNFTFJfQ0hTRUwyX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIGNoYW5uZWwgMiwgYXZhaWxhYmxlIHdoZW4gQURDX0NGR1IxX0NIU0VMUk1PRCBpcyByZXNldCAqLw0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMMV9Qb3MgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMMV9Nc2sgICAgICgweDFVIDw8IEFEQ19DSFNFTFJfQ0hTRUwxX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMMSAgICAgICAgIEFEQ19DSFNFTFJfQ0hTRUwxX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIGNoYW5uZWwgMSwgYXZhaWxhYmxlIHdoZW4gQURDX0NGR1IxX0NIU0VMUk1PRCBpcyByZXNldCAqLw0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMMF9Qb3MgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMMF9Nc2sgICAgICgweDFVIDw8IEFEQ19DSFNFTFJfQ0hTRUwwX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBBRENfQ0hTRUxSX0NIU0VMMCAgICAgICAgIEFEQ19DSFNFTFJfQ0hTRUwwX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIGNoYW5uZWwgMCwgYXZhaWxhYmxlIHdoZW4gQURDX0NGR1IxX0NIU0VMUk1PRCBpcyByZXNldCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfRFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfRFJfREFUQV9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfRFJfREFUQV9Nc2sgICAgICAgICAgICgweEZGRkZVIDw8IEFEQ19EUl9EQVRBX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBBRENfRFJfREFUQSAgICAgICAgICAgICAgIEFEQ19EUl9EQVRBX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgY29udmVyc2lvbiBkYXRhICovDQojZGVmaW5lIEFEQ19EUl9EQVRBXzAgICAgICAgICAgICAgKDB4MDAwMVUgPDwgQURDX0RSX0RBVEFfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEFEQ19EUl9EQVRBXzEgICAgICAgICAgICAgKDB4MDAwMlUgPDwgQURDX0RSX0RBVEFfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEFEQ19EUl9EQVRBXzIgICAgICAgICAgICAgKDB4MDAwNFUgPDwgQURDX0RSX0RBVEFfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEFEQ19EUl9EQVRBXzMgICAgICAgICAgICAgKDB4MDAwOFUgPDwgQURDX0RSX0RBVEFfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEFEQ19EUl9EQVRBXzQgICAgICAgICAgICAgKDB4MDAxMFUgPDwgQURDX0RSX0RBVEFfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEFEQ19EUl9EQVRBXzUgICAgICAgICAgICAgKDB4MDAyMFUgPDwgQURDX0RSX0RBVEFfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEFEQ19EUl9EQVRBXzYgICAgICAgICAgICAgKDB4MDA0MFUgPDwgQURDX0RSX0RBVEFfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEFEQ19EUl9EQVRBXzcgICAgICAgICAgICAgKDB4MDA4MFUgPDwgQURDX0RSX0RBVEFfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEFEQ19EUl9EQVRBXzggICAgICAgICAgICAgKDB4MDEwMFUgPDwgQURDX0RSX0RBVEFfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEFEQ19EUl9EQVRBXzkgICAgICAgICAgICAgKDB4MDIwMFUgPDwgQURDX0RSX0RBVEFfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEFEQ19EUl9EQVRBXzEwICAgICAgICAgICAgKDB4MDQwMFUgPDwgQURDX0RSX0RBVEFfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEFEQ19EUl9EQVRBXzExICAgICAgICAgICAgKDB4MDgwMFUgPDwgQURDX0RSX0RBVEFfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEFEQ19EUl9EQVRBXzEyICAgICAgICAgICAgKDB4MTAwMFUgPDwgQURDX0RSX0RBVEFfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEFEQ19EUl9EQVRBXzEzICAgICAgICAgICAgKDB4MjAwMFUgPDwgQURDX0RSX0RBVEFfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEFEQ19EUl9EQVRBXzE0ICAgICAgICAgICAgKDB4NDAwMFUgPDwgQURDX0RSX0RBVEFfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIEFEQ19EUl9EQVRBXzE1ICAgICAgICAgICAgKDB4ODAwMFUgPDwgQURDX0RSX0RBVEFfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqICBBREMgQ29tbW9uIHJlZ2lzdGVycyAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19DQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfQ0NSX1ZSRUZFTl9Qb3MgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ0NSX1ZSRUZFTl9Nc2sgICAgICAgICgweDFVIDw8IEFEQ19DQ1JfVlJFRkVOX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBBRENfQ0NSX1ZSRUZFTiAgICAgICAgICAgIEFEQ19DQ1JfVlJFRkVOX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGludGVybmFsIHBhdGggdG8gVnJlZkludCBlbmFibGUgKi8NCiNkZWZpbmUgQURDX0NDUl9UU0VOX1BvcyAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NDUl9UU0VOX01zayAgICAgICAgICAoMHgxVSA8PCBBRENfQ0NSX1RTRU5fUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgQURDX0NDUl9UU0VOICAgICAgICAgICAgICBBRENfQ0NSX1RTRU5fTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBpbnRlcm5hbCBwYXRoIHRvIHRlbXBlcmF0dXJlIHNlbnNvciBlbmFibGUgKi8NCg0KI2RlZmluZSBBRENfQ0NSX1ZCQVRFTl9Qb3MgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ0NSX1ZCQVRFTl9Nc2sgICAgICAgICgweDFVIDw8IEFEQ19DQ1JfVkJBVEVOX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBBRENfQ0NSX1ZCQVRFTiAgICAgICAgICAgIEFEQ19DQ1JfVkJBVEVOX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGludGVybmFsIHBhdGggdG8gYmF0dGVyeSB2b2x0YWdlIGVuYWJsZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICBDUkMgY2FsY3VsYXRpb24gdW5pdCAoQ1JDKSAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQ1JDX0RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIENSQ19EUl9EUl9Qb3MgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENSQ19EUl9EUl9Nc2sgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgQ1JDX0RSX0RSX1BvcykgICAgICAgICAgICAgICAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIENSQ19EUl9EUiAgICAgICAgICAgICAgICBDUkNfRFJfRFJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBEYXRhIHJlZ2lzdGVyIGJpdHMgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBDUkNfSURSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQ1JDX0lEUl9JRFIgICAgICAgICAgICAgICgodWludDhfdCkweEZGVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdlbmVyYWwtcHVycG9zZSA4LWJpdCBkYXRhIHJlZ2lzdGVyIGJpdHMgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQ1JDX0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQ1JDX0NSX1JFU0VUX1BvcyAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ1JDX0NSX1JFU0VUX01zayAgICAgICAgICgweDFVIDw8IENSQ19DUl9SRVNFVF9Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQ1JDX0NSX1JFU0VUICAgICAgICAgICAgIENSQ19DUl9SRVNFVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJFU0VUIHRoZSBDUkMgY29tcHV0YXRpb24gdW5pdCBiaXQgKi8NCiNkZWZpbmUgQ1JDX0NSX1JFVl9JTl9Qb3MgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ1JDX0NSX1JFVl9JTl9Nc2sgICAgICAgICgweDNVIDw8IENSQ19DUl9SRVZfSU5fUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNjAgKi8NCiNkZWZpbmUgQ1JDX0NSX1JFVl9JTiAgICAgICAgICAgIENSQ19DUl9SRVZfSU5fTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJFVl9JTiBSZXZlcnNlIElucHV0IERhdGEgYml0cyAqLw0KI2RlZmluZSBDUkNfQ1JfUkVWX0lOXzAgICAgICAgICAgKDB4MVUgPDwgQ1JDX0NSX1JFVl9JTl9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBDUkNfQ1JfUkVWX0lOXzEgICAgICAgICAgKDB4MlUgPDwgQ1JDX0NSX1JFVl9JTl9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBDUkNfQ1JfUkVWX09VVF9Qb3MgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBDUkNfQ1JfUkVWX09VVF9Nc2sgICAgICAgKDB4MVUgPDwgQ1JDX0NSX1JFVl9PVVRfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBDUkNfQ1JfUkVWX09VVCAgICAgICAgICAgQ1JDX0NSX1JFVl9PVVRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUkVWX09VVCBSZXZlcnNlIE91dHB1dCBEYXRhIGJpdHMgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBDUkNfSU5JVCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQ1JDX0lOSVRfSU5JVF9Qb3MgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ1JDX0lOSVRfSU5JVF9Nc2sgICAgICAgICgweEZGRkZGRkZGVSA8PCBDUkNfSU5JVF9JTklUX1BvcykgICAgICAgICAgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgQ1JDX0lOSVRfSU5JVCAgICAgICAgICAgIENSQ19JTklUX0lOSVRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEluaXRpYWwgQ1JDIHZhbHVlIGJpdHMgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgIERlYnVnIE1DVSAoREJHTUNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREJHTUNVX0lEQ09ERSByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERCR01DVV9JRENPREVfREVWX0lEX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9JRENPREVfREVWX0lEX01zayAgICAgICAgICAgICAgICAgICAgICgweEZGRlUgPDwgREJHTUNVX0lEQ09ERV9ERVZfSURfUG9zKSAvKiE8IDB4MDAwMDBGRkYgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9ERVZfSUQgICAgICAgICAgICAgICAgICAgICAgICAgREJHTUNVX0lEQ09ERV9ERVZfSURfTXNrICAvKiE8IERldmljZSBJZGVudGlmaWVyICovDQoNCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zICAgICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4RkZGRjAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSUQgICAgICAgICAgICAgICAgICAgICAgICAgREJHTUNVX0lEQ09ERV9SRVZfSURfTXNrICAvKiE8IFJFVl9JRFsxNTowXSBiaXRzIChSZXZpc2lvbiBJZGVudGlmaWVyKSAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF8wICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAxVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF8xICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAyVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF8yICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDA0VSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF8zICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDA4VSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF80ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDEwVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF81ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDIwVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF82ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDQwVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF83ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDgwVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF84ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMTAwVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF85ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMjAwVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF8xMCAgICAgICAgICAgICAgICAgICAgICAoMHgwNDAwVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF8xMSAgICAgICAgICAgICAgICAgICAgICAoMHgwODAwVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF8xMiAgICAgICAgICAgICAgICAgICAgICAoMHgxMDAwVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF8xMyAgICAgICAgICAgICAgICAgICAgICAoMHgyMDAwVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF8xNCAgICAgICAgICAgICAgICAgICAgICAoMHg0MDAwVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHg0MDAwMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF8xNSAgICAgICAgICAgICAgICAgICAgICAoMHg4MDAwVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHg4MDAwMDAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREJHTUNVX0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBEQkdNQ1VfQ1JfREJHX1NUT1BfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQ1JfREJHX1NUT1BfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBEQkdNQ1VfQ1JfREJHX1NUT1BfUG9zKSAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgREJHTUNVX0NSX0RCR19TVE9QICAgICAgICAgICAgICAgICAgICAgICAgICAgREJHTUNVX0NSX0RCR19TVE9QX01zayAgICAvKiE8IERlYnVnIFN0b3AgTW9kZSAqLw0KI2RlZmluZSBEQkdNQ1VfQ1JfREJHX1NUQU5EQllfUG9zICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQ1JfREJHX1NUQU5EQllfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBEQkdNQ1VfQ1JfREJHX1NUQU5EQllfUG9zKSAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgREJHTUNVX0NSX0RCR19TVEFOREJZICAgICAgICAgICAgICAgICAgICAgICAgREJHTUNVX0NSX0RCR19TVEFOREJZX01zayAvKiE8IERlYnVnIFN0YW5kYnkgbW9kZSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREJHTUNVX0FQQjFfRlogcmVnaXN0ZXIgICoqKioqKioqKioqKioqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNMl9TVE9QX1BvcyAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNMl9TVE9QX01zayAgICAgICAgICAgICAoMHgxVSA8PCBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNMl9TVE9QX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19USU0yX1NUT1AgICAgICAgICAgICAgICAgIERCR01DVV9BUEIxX0ZaX0RCR19USU0yX1NUT1BfTXNrIC8qITwgVElNMiBjb3VudGVyIHN0b3BwZWQgd2hlbiBjb3JlIGlzIGhhbHRlZCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNM19TVE9QX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNM19TVE9QX01zayAgICAgICAgICAgICAoMHgxVSA8PCBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNM19TVE9QX1BvcykgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19USU0zX1NUT1AgICAgICAgICAgICAgICAgIERCR01DVV9BUEIxX0ZaX0RCR19USU0zX1NUT1BfTXNrIC8qITwgVElNMyBjb3VudGVyIHN0b3BwZWQgd2hlbiBjb3JlIGlzIGhhbHRlZCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNMTRfU1RPUF9Qb3MgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNMTRfU1RPUF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNMTRfU1RPUF9Qb3MpIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNMTRfU1RPUCAgICAgICAgICAgICAgICBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNMTRfU1RPUF9Nc2sgLyohPCBUSU0xNCBjb3VudGVyIHN0b3BwZWQgd2hlbiBjb3JlIGlzIGhhbHRlZCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfUlRDX1NUT1BfUG9zICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfUlRDX1NUT1BfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBEQkdNQ1VfQVBCMV9GWl9EQkdfUlRDX1NUT1BfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1JUQ19TVE9QICAgICAgICAgICAgICAgICAgREJHTUNVX0FQQjFfRlpfREJHX1JUQ19TVE9QX01zayAvKiE8IFJUQyBDYWxlbmRhciBmcm96ZW4gd2hlbiBjb3JlIGlzIGhhbHRlZCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfV1dER19TVE9QX1BvcyAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfV1dER19TVE9QX01zayAgICAgICAgICAgICAoMHgxVSA8PCBEQkdNQ1VfQVBCMV9GWl9EQkdfV1dER19TVE9QX1BvcykgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19XV0RHX1NUT1AgICAgICAgICAgICAgICAgIERCR01DVV9BUEIxX0ZaX0RCR19XV0RHX1NUT1BfTXNrIC8qITwgRGVidWcgV2luZG93IFdhdGNoZG9nIHN0b3BwZWQgd2hlbiBDb3JlIGlzIGhhbHRlZCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfSVdER19TVE9QX1BvcyAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfSVdER19TVE9QX01zayAgICAgICAgICAgICAoMHgxVSA8PCBEQkdNQ1VfQVBCMV9GWl9EQkdfSVdER19TVE9QX1BvcykgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19JV0RHX1NUT1AgICAgICAgICAgICAgICAgIERCR01DVV9BUEIxX0ZaX0RCR19JV0RHX1NUT1BfTXNrIC8qITwgRGVidWcgSW5kZXBlbmRlbnQgV2F0Y2hkb2cgc3RvcHBlZCB3aGVuIENvcmUgaXMgaGFsdGVkICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19JMkMxX1NNQlVTX1RJTUVPVVRfUG9zICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19JMkMxX1NNQlVTX1RJTUVPVVRfTXNrICAgICgweDFVIDw8IERCR01DVV9BUEIxX0ZaX0RCR19JMkMxX1NNQlVTX1RJTUVPVVRfUG9zKSAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX0kyQzFfU01CVVNfVElNRU9VVCAgICAgICAgREJHTUNVX0FQQjFfRlpfREJHX0kyQzFfU01CVVNfVElNRU9VVF9Nc2sgLyohPCBJMkMxIFNNQlVTIHRpbWVvdXQgbW9kZSBzdG9wcGVkIHdoZW4gQ29yZSBpcyBoYWx0ZWQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERCR01DVV9BUEIyX0ZaIHJlZ2lzdGVyICAqKioqKioqKioqKioqKi8NCiNkZWZpbmUgREJHTUNVX0FQQjJfRlpfREJHX1RJTTFfU1RPUF9Qb3MgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0FQQjJfRlpfREJHX1RJTTFfU1RPUF9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgREJHTUNVX0FQQjJfRlpfREJHX1RJTTFfU1RPUF9Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMl9GWl9EQkdfVElNMV9TVE9QICAgICAgICAgICAgICAgICBEQkdNQ1VfQVBCMl9GWl9EQkdfVElNMV9TVE9QX01zayAvKiE8IFRJTTEgY291bnRlciBzdG9wcGVkIHdoZW4gY29yZSBpcyBoYWx0ZWQgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjJfRlpfREJHX1RJTTE2X1NUT1BfUG9zICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0FQQjJfRlpfREJHX1RJTTE2X1NUT1BfTXNrICAgICAgICAgICAgKDB4MVUgPDwgREJHTUNVX0FQQjJfRlpfREJHX1RJTTE2X1NUT1BfUG9zKSAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjJfRlpfREJHX1RJTTE2X1NUT1AgICAgICAgICAgICAgICAgREJHTUNVX0FQQjJfRlpfREJHX1RJTTE2X1NUT1BfTXNrIC8qITwgVElNMTYgY291bnRlciBzdG9wcGVkIHdoZW4gY29yZSBpcyBoYWx0ZWQgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjJfRlpfREJHX1RJTTE3X1NUT1BfUG9zICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0FQQjJfRlpfREJHX1RJTTE3X1NUT1BfTXNrICAgICAgICAgICAgKDB4MVUgPDwgREJHTUNVX0FQQjJfRlpfREJHX1RJTTE3X1NUT1BfUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjJfRlpfREJHX1RJTTE3X1NUT1AgICAgICAgICAgICAgICAgREJHTUNVX0FQQjJfRlpfREJHX1RJTTE3X1NUT1BfTXNrIC8qITwgVElNMTcgY291bnRlciBzdG9wcGVkIHdoZW4gY29yZSBpcyBoYWx0ZWQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgIERNQSBDb250cm9sbGVyIChETUEpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9JU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfSVNSX0dJRjFfUG9zICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX0dJRjFfTXNrICAgICAgICgweDFVIDw8IERNQV9JU1JfR0lGMV9Qb3MpICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjEgICAgICAgICAgIERNQV9JU1JfR0lGMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAxIEdsb2JhbCBpbnRlcnJ1cHQgZmxhZyAgICAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUYxX1BvcyAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RDSUYxX01zayAgICAgICgweDFVIDw8IERNQV9JU1JfVENJRjFfUG9zKSAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUYxICAgICAgICAgIERNQV9JU1JfVENJRjFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAxIFRyYW5zZmVyIENvbXBsZXRlIGZsYWcgICAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUYxX1BvcyAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX0hUSUYxX01zayAgICAgICgweDFVIDw8IERNQV9JU1JfSFRJRjFfUG9zKSAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUYxICAgICAgICAgIERNQV9JU1JfSFRJRjFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAxIEhhbGYgVHJhbnNmZXIgZmxhZyAgICAgICAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUYxX1BvcyAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RFSUYxX01zayAgICAgICgweDFVIDw8IERNQV9JU1JfVEVJRjFfUG9zKSAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUYxICAgICAgICAgIERNQV9JU1JfVEVJRjFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAxIFRyYW5zZmVyIEVycm9yIGZsYWcgICAgICAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjJfUG9zICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX0dJRjJfTXNrICAgICAgICgweDFVIDw8IERNQV9JU1JfR0lGMl9Qb3MpICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjIgICAgICAgICAgIERNQV9JU1JfR0lGMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAyIEdsb2JhbCBpbnRlcnJ1cHQgZmxhZyAgICAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUYyX1BvcyAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RDSUYyX01zayAgICAgICgweDFVIDw8IERNQV9JU1JfVENJRjJfUG9zKSAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUYyICAgICAgICAgIERNQV9JU1JfVENJRjJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAyIFRyYW5zZmVyIENvbXBsZXRlIGZsYWcgICAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUYyX1BvcyAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX0hUSUYyX01zayAgICAgICgweDFVIDw8IERNQV9JU1JfSFRJRjJfUG9zKSAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUYyICAgICAgICAgIERNQV9JU1JfSFRJRjJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAyIEhhbGYgVHJhbnNmZXIgZmxhZyAgICAgICAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUYyX1BvcyAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RFSUYyX01zayAgICAgICgweDFVIDw8IERNQV9JU1JfVEVJRjJfUG9zKSAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUYyICAgICAgICAgIERNQV9JU1JfVEVJRjJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAyIFRyYW5zZmVyIEVycm9yIGZsYWcgICAgICAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjNfUG9zICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX0dJRjNfTXNrICAgICAgICgweDFVIDw8IERNQV9JU1JfR0lGM19Qb3MpICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjMgICAgICAgICAgIERNQV9JU1JfR0lGM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAzIEdsb2JhbCBpbnRlcnJ1cHQgZmxhZyAgICAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUYzX1BvcyAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RDSUYzX01zayAgICAgICgweDFVIDw8IERNQV9JU1JfVENJRjNfUG9zKSAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUYzICAgICAgICAgIERNQV9JU1JfVENJRjNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAzIFRyYW5zZmVyIENvbXBsZXRlIGZsYWcgICAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUYzX1BvcyAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX0hUSUYzX01zayAgICAgICgweDFVIDw8IERNQV9JU1JfSFRJRjNfUG9zKSAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUYzICAgICAgICAgIERNQV9JU1JfSFRJRjNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAzIEhhbGYgVHJhbnNmZXIgZmxhZyAgICAgICAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUYzX1BvcyAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RFSUYzX01zayAgICAgICgweDFVIDw8IERNQV9JU1JfVEVJRjNfUG9zKSAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUYzICAgICAgICAgIERNQV9JU1JfVEVJRjNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAzIFRyYW5zZmVyIEVycm9yIGZsYWcgICAgICAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjRfUG9zICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX0dJRjRfTXNrICAgICAgICgweDFVIDw8IERNQV9JU1JfR0lGNF9Qb3MpICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjQgICAgICAgICAgIERNQV9JU1JfR0lGNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA0IEdsb2JhbCBpbnRlcnJ1cHQgZmxhZyAgICAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUY0X1BvcyAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RDSUY0X01zayAgICAgICgweDFVIDw8IERNQV9JU1JfVENJRjRfUG9zKSAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUY0ICAgICAgICAgIERNQV9JU1JfVENJRjRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA0IFRyYW5zZmVyIENvbXBsZXRlIGZsYWcgICAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUY0X1BvcyAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX0hUSUY0X01zayAgICAgICgweDFVIDw8IERNQV9JU1JfSFRJRjRfUG9zKSAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUY0ICAgICAgICAgIERNQV9JU1JfSFRJRjRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA0IEhhbGYgVHJhbnNmZXIgZmxhZyAgICAgICAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUY0X1BvcyAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RFSUY0X01zayAgICAgICgweDFVIDw8IERNQV9JU1JfVEVJRjRfUG9zKSAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUY0ICAgICAgICAgIERNQV9JU1JfVEVJRjRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA0IFRyYW5zZmVyIEVycm9yIGZsYWcgICAgICAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjVfUG9zICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX0dJRjVfTXNrICAgICAgICgweDFVIDw8IERNQV9JU1JfR0lGNV9Qb3MpICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjUgICAgICAgICAgIERNQV9JU1JfR0lGNV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA1IEdsb2JhbCBpbnRlcnJ1cHQgZmxhZyAgICAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUY1X1BvcyAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RDSUY1X01zayAgICAgICgweDFVIDw8IERNQV9JU1JfVENJRjVfUG9zKSAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUY1ICAgICAgICAgIERNQV9JU1JfVENJRjVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA1IFRyYW5zZmVyIENvbXBsZXRlIGZsYWcgICAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUY1X1BvcyAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX0hUSUY1X01zayAgICAgICgweDFVIDw8IERNQV9JU1JfSFRJRjVfUG9zKSAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUY1ICAgICAgICAgIERNQV9JU1JfSFRJRjVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA1IEhhbGYgVHJhbnNmZXIgZmxhZyAgICAgICAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUY1X1BvcyAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RFSUY1X01zayAgICAgICgweDFVIDw8IERNQV9JU1JfVEVJRjVfUG9zKSAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUY1ICAgICAgICAgIERNQV9JU1JfVEVJRjVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA1IFRyYW5zZmVyIEVycm9yIGZsYWcgICAgICAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9JRkNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfSUZDUl9DR0lGMV9Qb3MgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DR0lGMV9Nc2sgICAgICgweDFVIDw8IERNQV9JRkNSX0NHSUYxX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBETUFfSUZDUl9DR0lGMSAgICAgICAgIERNQV9JRkNSX0NHSUYxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAxIEdsb2JhbCBpbnRlcnJ1cHQgY2xlYXIgICAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUYxX1BvcyAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUYxX01zayAgICAoMHgxVSA8PCBETUFfSUZDUl9DVENJRjFfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUYxICAgICAgICBETUFfSUZDUl9DVENJRjFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMSBUcmFuc2ZlciBDb21wbGV0ZSBjbGVhciAgICovDQojZGVmaW5lIERNQV9JRkNSX0NIVElGMV9Qb3MgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NIVElGMV9Nc2sgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ0hUSUYxX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIERNQV9JRkNSX0NIVElGMSAgICAgICAgRE1BX0lGQ1JfQ0hUSUYxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDEgSGFsZiBUcmFuc2ZlciBjbGVhciAgICAgICAqLw0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjFfUG9zICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjFfTXNrICAgICgweDFVIDw8IERNQV9JRkNSX0NURUlGMV9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjEgICAgICAgIERNQV9JRkNSX0NURUlGMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAxIFRyYW5zZmVyIEVycm9yIGNsZWFyICAgICAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjJfUG9zICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjJfTXNrICAgICAoMHgxVSA8PCBETUFfSUZDUl9DR0lGMl9Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjIgICAgICAgICBETUFfSUZDUl9DR0lGMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMiBHbG9iYWwgaW50ZXJydXB0IGNsZWFyICAgICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGMl9Qb3MgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGMl9Nc2sgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ1RDSUYyX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGMiAgICAgICAgRE1BX0lGQ1JfQ1RDSUYyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDIgVHJhbnNmZXIgQ29tcGxldGUgY2xlYXIgICAqLw0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjJfUG9zICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjJfTXNrICAgICgweDFVIDw8IERNQV9JRkNSX0NIVElGMl9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjIgICAgICAgIERNQV9JRkNSX0NIVElGMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAyIEhhbGYgVHJhbnNmZXIgY2xlYXIgICAgICAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUYyX1BvcyAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUYyX01zayAgICAoMHgxVSA8PCBETUFfSUZDUl9DVEVJRjJfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUYyICAgICAgICBETUFfSUZDUl9DVEVJRjJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMiBUcmFuc2ZlciBFcnJvciBjbGVhciAgICAgICovDQojZGVmaW5lIERNQV9JRkNSX0NHSUYzX1BvcyAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NHSUYzX01zayAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ0dJRjNfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIERNQV9JRkNSX0NHSUYzICAgICAgICAgRE1BX0lGQ1JfQ0dJRjNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDMgR2xvYmFsIGludGVycnVwdCBjbGVhciAgICAqLw0KI2RlZmluZSBETUFfSUZDUl9DVENJRjNfUG9zICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DVENJRjNfTXNrICAgICgweDFVIDw8IERNQV9JRkNSX0NUQ0lGM19Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DVENJRjMgICAgICAgIERNQV9JRkNSX0NUQ0lGM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAzIFRyYW5zZmVyIENvbXBsZXRlIGNsZWFyICAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYzX1BvcyAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYzX01zayAgICAoMHgxVSA8PCBETUFfSUZDUl9DSFRJRjNfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYzICAgICAgICBETUFfSUZDUl9DSFRJRjNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMyBIYWxmIFRyYW5zZmVyIGNsZWFyICAgICAgICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGM19Qb3MgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NURUlGM19Nc2sgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ1RFSUYzX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGMyAgICAgICAgRE1BX0lGQ1JfQ1RFSUYzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDMgVHJhbnNmZXIgRXJyb3IgY2xlYXIgICAgICAqLw0KI2RlZmluZSBETUFfSUZDUl9DR0lGNF9Qb3MgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DR0lGNF9Nc2sgICAgICgweDFVIDw8IERNQV9JRkNSX0NHSUY0X1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DR0lGNCAgICAgICAgIERNQV9JRkNSX0NHSUY0X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA0IEdsb2JhbCBpbnRlcnJ1cHQgY2xlYXIgICAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUY0X1BvcyAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUY0X01zayAgICAoMHgxVSA8PCBETUFfSUZDUl9DVENJRjRfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUY0ICAgICAgICBETUFfSUZDUl9DVENJRjRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNCBUcmFuc2ZlciBDb21wbGV0ZSBjbGVhciAgICovDQojZGVmaW5lIERNQV9JRkNSX0NIVElGNF9Qb3MgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NIVElGNF9Nc2sgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ0hUSUY0X1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NIVElGNCAgICAgICAgRE1BX0lGQ1JfQ0hUSUY0X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDQgSGFsZiBUcmFuc2ZlciBjbGVhciAgICAgICAqLw0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjRfUG9zICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjRfTXNrICAgICgweDFVIDw8IERNQV9JRkNSX0NURUlGNF9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjQgICAgICAgIERNQV9JRkNSX0NURUlGNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA0IFRyYW5zZmVyIEVycm9yIGNsZWFyICAgICAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjVfUG9zICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjVfTXNrICAgICAoMHgxVSA8PCBETUFfSUZDUl9DR0lGNV9Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjUgICAgICAgICBETUFfSUZDUl9DR0lGNV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNSBHbG9iYWwgaW50ZXJydXB0IGNsZWFyICAgICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGNV9Qb3MgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGNV9Nc2sgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ1RDSUY1X1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGNSAgICAgICAgRE1BX0lGQ1JfQ1RDSUY1X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDUgVHJhbnNmZXIgQ29tcGxldGUgY2xlYXIgICAqLw0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjVfUG9zICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjVfTXNrICAgICgweDFVIDw8IERNQV9JRkNSX0NIVElGNV9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjUgICAgICAgIERNQV9JRkNSX0NIVElGNV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA1IEhhbGYgVHJhbnNmZXIgY2xlYXIgICAgICAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUY1X1BvcyAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUY1X01zayAgICAoMHgxVSA8PCBETUFfSUZDUl9DVEVJRjVfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUY1ICAgICAgICBETUFfSUZDUl9DVEVJRjVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNSBUcmFuc2ZlciBFcnJvciBjbGVhciAgICAgICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DQ1JfRU5fUG9zICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DQ1JfRU5fTXNrICAgICAgICAgKDB4MVUgPDwgRE1BX0NDUl9FTl9Qb3MpICAgICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIERNQV9DQ1JfRU4gICAgICAgICAgICAgRE1BX0NDUl9FTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIGVuYWJsZSAgICAgICAgICAgICAgICAgICAgICAqLw0KI2RlZmluZSBETUFfQ0NSX1RDSUVfUG9zICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ0NSX1RDSUVfTXNrICAgICAgICgweDFVIDw8IERNQV9DQ1JfVENJRV9Qb3MpICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBETUFfQ0NSX1RDSUUgICAgICAgICAgIERNQV9DQ1JfVENJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNmZXIgY29tcGxldGUgaW50ZXJydXB0IGVuYWJsZSAgKi8NCiNkZWZpbmUgRE1BX0NDUl9IVElFX1BvcyAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NDUl9IVElFX01zayAgICAgICAoMHgxVSA8PCBETUFfQ0NSX0hUSUVfUG9zKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgRE1BX0NDUl9IVElFICAgICAgICAgICBETUFfQ0NSX0hUSUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhhbGYgVHJhbnNmZXIgaW50ZXJydXB0IGVuYWJsZSAgICAgICovDQojZGVmaW5lIERNQV9DQ1JfVEVJRV9Qb3MgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DQ1JfVEVJRV9Nc2sgICAgICAgKDB4MVUgPDwgRE1BX0NDUl9URUlFX1BvcykgICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIERNQV9DQ1JfVEVJRSAgICAgICAgICAgRE1BX0NDUl9URUlFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc2ZlciBlcnJvciBpbnRlcnJ1cHQgZW5hYmxlICAgICAqLw0KI2RlZmluZSBETUFfQ0NSX0RJUl9Qb3MgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ0NSX0RJUl9Nc2sgICAgICAgICgweDFVIDw8IERNQV9DQ1JfRElSX1BvcykgICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBETUFfQ0NSX0RJUiAgICAgICAgICAgIERNQV9DQ1JfRElSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRGF0YSB0cmFuc2ZlciBkaXJlY3Rpb24gICAgICAgICAgICAgKi8NCiNkZWZpbmUgRE1BX0NDUl9DSVJDX1BvcyAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NDUl9DSVJDX01zayAgICAgICAoMHgxVSA8PCBETUFfQ0NSX0NJUkNfUG9zKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgRE1BX0NDUl9DSVJDICAgICAgICAgICBETUFfQ0NSX0NJUkNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENpcmN1bGFyIG1vZGUgICAgICAgICAgICAgICAgICAgICAgICovDQojZGVmaW5lIERNQV9DQ1JfUElOQ19Qb3MgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DQ1JfUElOQ19Nc2sgICAgICAgKDB4MVUgPDwgRE1BX0NDUl9QSU5DX1BvcykgICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIERNQV9DQ1JfUElOQyAgICAgICAgICAgRE1BX0NDUl9QSU5DX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQZXJpcGhlcmFsIGluY3JlbWVudCBtb2RlICAgICAgICAgICAqLw0KI2RlZmluZSBETUFfQ0NSX01JTkNfUG9zICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ0NSX01JTkNfTXNrICAgICAgICgweDFVIDw8IERNQV9DQ1JfTUlOQ19Qb3MpICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBETUFfQ0NSX01JTkMgICAgICAgICAgIERNQV9DQ1JfTUlOQ19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTWVtb3J5IGluY3JlbWVudCBtb2RlICAgICAgICAgICAgICAgKi8NCg0KI2RlZmluZSBETUFfQ0NSX1BTSVpFX1BvcyAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ0NSX1BTSVpFX01zayAgICAgICgweDNVIDw8IERNQV9DQ1JfUFNJWkVfUG9zKSAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDMwMCAqLw0KI2RlZmluZSBETUFfQ0NSX1BTSVpFICAgICAgICAgIERNQV9DQ1JfUFNJWkVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUFNJWkVbMTowXSBiaXRzIChQZXJpcGhlcmFsIHNpemUpICAgKi8NCiNkZWZpbmUgRE1BX0NDUl9QU0laRV8wICAgICAgICAoMHgxVSA8PCBETUFfQ0NSX1BTSVpFX1BvcykgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgRE1BX0NDUl9QU0laRV8xICAgICAgICAoMHgyVSA8PCBETUFfQ0NSX1BTSVpFX1BvcykgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCg0KI2RlZmluZSBETUFfQ0NSX01TSVpFX1BvcyAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ0NSX01TSVpFX01zayAgICAgICgweDNVIDw8IERNQV9DQ1JfTVNJWkVfUG9zKSAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMEMwMCAqLw0KI2RlZmluZSBETUFfQ0NSX01TSVpFICAgICAgICAgIERNQV9DQ1JfTVNJWkVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTVNJWkVbMTowXSBiaXRzIChNZW1vcnkgc2l6ZSkgICAgICAgKi8NCiNkZWZpbmUgRE1BX0NDUl9NU0laRV8wICAgICAgICAoMHgxVSA8PCBETUFfQ0NSX01TSVpFX1BvcykgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgRE1BX0NDUl9NU0laRV8xICAgICAgICAoMHgyVSA8PCBETUFfQ0NSX01TSVpFX1BvcykgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCg0KI2RlZmluZSBETUFfQ0NSX1BMX1BvcyAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ0NSX1BMX01zayAgICAgICAgICgweDNVIDw8IERNQV9DQ1JfUExfUG9zKSAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMzAwMCAqLw0KI2RlZmluZSBETUFfQ0NSX1BMICAgICAgICAgICAgIERNQV9DQ1JfUExfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUExbMTowXSBiaXRzKENoYW5uZWwgUHJpb3JpdHkgbGV2ZWwpKi8NCiNkZWZpbmUgRE1BX0NDUl9QTF8wICAgICAgICAgICAoMHgxVSA8PCBETUFfQ0NSX1BMX1BvcykgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgRE1BX0NDUl9QTF8xICAgICAgICAgICAoMHgyVSA8PCBETUFfQ0NSX1BMX1BvcykgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCg0KI2RlZmluZSBETUFfQ0NSX01FTTJNRU1fUG9zICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ0NSX01FTTJNRU1fTXNrICAgICgweDFVIDw8IERNQV9DQ1JfTUVNMk1FTV9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBETUFfQ0NSX01FTTJNRU0gICAgICAgIERNQV9DQ1JfTUVNMk1FTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTWVtb3J5IHRvIG1lbW9yeSBtb2RlICAgICAgICAgICAgICAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DTkRUUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NORFRSX05EVF9Qb3MgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NORFRSX05EVF9Nc2sgICAgICAoMHhGRkZGVSA8PCBETUFfQ05EVFJfTkRUX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgRE1BX0NORFRSX05EVCAgICAgICAgICBETUFfQ05EVFJfTkRUX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE51bWJlciBvZiBkYXRhIHRvIFRyYW5zZmVyICAgICAgICAgICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ1BBUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DUEFSX1BBX1BvcyAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DUEFSX1BBX01zayAgICAgICAgKDB4RkZGRkZGRkZVIDw8IERNQV9DUEFSX1BBX1BvcykgICAgICAgICAgICAgICAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIERNQV9DUEFSX1BBICAgICAgICAgICAgRE1BX0NQQVJfUEFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQZXJpcGhlcmFsIEFkZHJlc3MgICAgICAgICAgICAgICAgICAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NNQVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ01BUl9NQV9Qb3MgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ01BUl9NQV9Nc2sgICAgICAgICgweEZGRkZGRkZGVSA8PCBETUFfQ01BUl9NQV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBETUFfQ01BUl9NQSAgICAgICAgICAgIERNQV9DTUFSX01BX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTWVtb3J5IEFkZHJlc3MgICAgICAgICAgICAgICAgICAgICAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgRXh0ZXJuYWwgSW50ZXJydXB0L0V2ZW50IENvbnRyb2xsZXIgKEVYVEkpICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEVYVElfSU1SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjBfUG9zICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjBfTXNrICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMF9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjAgICAgICAgICAgICAgIEVYVElfSU1SX01SMF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAwICAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjFfUG9zICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjFfTXNrICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMV9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjEgICAgICAgICAgICAgIEVYVElfSU1SX01SMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxICAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjJfUG9zICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjJfTXNrICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMl9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjIgICAgICAgICAgICAgIEVYVElfSU1SX01SMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAyICAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjNfUG9zICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjNfTXNrICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SM19Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjMgICAgICAgICAgICAgIEVYVElfSU1SX01SM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAzICAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjRfUG9zICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjRfTXNrICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SNF9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjQgICAgICAgICAgICAgIEVYVElfSU1SX01SNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSA0ICAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjVfUG9zICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjVfTXNrICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SNV9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjUgICAgICAgICAgICAgIEVYVElfSU1SX01SNV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSA1ICAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjZfUG9zICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjZfTXNrICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SNl9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjYgICAgICAgICAgICAgIEVYVElfSU1SX01SNl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSA2ICAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjdfUG9zICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjdfTXNrICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SN19Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjcgICAgICAgICAgICAgIEVYVElfSU1SX01SN19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSA3ICAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjhfUG9zICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjhfTXNrICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SOF9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjggICAgICAgICAgICAgIEVYVElfSU1SX01SOF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSA4ICAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjlfUG9zICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjlfTXNrICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SOV9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjkgICAgICAgICAgICAgIEVYVElfSU1SX01SOV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSA5ICAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjEwX1BvcyAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjEwX01zayAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMTBfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjEwICAgICAgICAgICAgIEVYVElfSU1SX01SMTBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjExX1BvcyAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjExX01zayAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMTFfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjExICAgICAgICAgICAgIEVYVElfSU1SX01SMTFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxMSAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjEyX1BvcyAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjEyX01zayAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMTJfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjEyICAgICAgICAgICAgIEVYVElfSU1SX01SMTJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxMiAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjEzX1BvcyAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjEzX01zayAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMTNfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjEzICAgICAgICAgICAgIEVYVElfSU1SX01SMTNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxMyAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjE0X1BvcyAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjE0X01zayAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMTRfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjE0ICAgICAgICAgICAgIEVYVElfSU1SX01SMTRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxNCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjE1X1BvcyAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjE1X01zayAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMTVfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjE1ICAgICAgICAgICAgIEVYVElfSU1SX01SMTVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxNSAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjE2X1BvcyAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjE2X01zayAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMTZfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjE2ICAgICAgICAgICAgIEVYVElfSU1SX01SMTZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxNiAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjE3X1BvcyAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjE3X01zayAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMTdfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjE3ICAgICAgICAgICAgIEVYVElfSU1SX01SMTdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxNyAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjE4X1BvcyAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjE4X01zayAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMThfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjE4ICAgICAgICAgICAgIEVYVElfSU1SX01SMThfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxOCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjE5X1BvcyAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjE5X01zayAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMTlfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjE5ICAgICAgICAgICAgIEVYVElfSU1SX01SMTlfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxOSAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjIxX1BvcyAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjIxX01zayAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMjFfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjIxICAgICAgICAgICAgIEVYVElfSU1SX01SMjFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAyMSAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjIyX1BvcyAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjIyX01zayAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMjJfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjIyICAgICAgICAgICAgIEVYVElfSU1SX01SMjJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAyMiAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjIzX1BvcyAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjIzX01zayAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMjNfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjIzICAgICAgICAgICAgIEVYVElfSU1SX01SMjNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAyMyAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjI1X1BvcyAgICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjI1X01zayAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMjVfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjI1ICAgICAgICAgICAgIEVYVElfSU1SX01SMjVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAyNSAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjI3X1BvcyAgICAgICAgICgyN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjI3X01zayAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMjdfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjI3ICAgICAgICAgICAgIEVYVElfSU1SX01SMjdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAyNyAqLw0KDQovKiBSZWZlcmVuY2VzIERlZmluZXMgKi8NCiNkZWZpbmUgIEVYVElfSU1SX0lNMCBFWFRJX0lNUl9NUjANCiNkZWZpbmUgIEVYVElfSU1SX0lNMSBFWFRJX0lNUl9NUjENCiNkZWZpbmUgIEVYVElfSU1SX0lNMiBFWFRJX0lNUl9NUjINCiNkZWZpbmUgIEVYVElfSU1SX0lNMyBFWFRJX0lNUl9NUjMNCiNkZWZpbmUgIEVYVElfSU1SX0lNNCBFWFRJX0lNUl9NUjQNCiNkZWZpbmUgIEVYVElfSU1SX0lNNSBFWFRJX0lNUl9NUjUNCiNkZWZpbmUgIEVYVElfSU1SX0lNNiBFWFRJX0lNUl9NUjYNCiNkZWZpbmUgIEVYVElfSU1SX0lNNyBFWFRJX0lNUl9NUjcNCiNkZWZpbmUgIEVYVElfSU1SX0lNOCBFWFRJX0lNUl9NUjgNCiNkZWZpbmUgIEVYVElfSU1SX0lNOSBFWFRJX0lNUl9NUjkNCiNkZWZpbmUgIEVYVElfSU1SX0lNMTAgRVhUSV9JTVJfTVIxMA0KI2RlZmluZSAgRVhUSV9JTVJfSU0xMSBFWFRJX0lNUl9NUjExDQojZGVmaW5lICBFWFRJX0lNUl9JTTEyIEVYVElfSU1SX01SMTINCiNkZWZpbmUgIEVYVElfSU1SX0lNMTMgRVhUSV9JTVJfTVIxMw0KI2RlZmluZSAgRVhUSV9JTVJfSU0xNCBFWFRJX0lNUl9NUjE0DQojZGVmaW5lICBFWFRJX0lNUl9JTTE1IEVYVElfSU1SX01SMTUNCiNkZWZpbmUgIEVYVElfSU1SX0lNMTYgRVhUSV9JTVJfTVIxNg0KI2RlZmluZSAgRVhUSV9JTVJfSU0xNyBFWFRJX0lNUl9NUjE3DQojZGVmaW5lICBFWFRJX0lNUl9JTTE4IEVYVElfSU1SX01SMTgNCiNkZWZpbmUgIEVYVElfSU1SX0lNMTkgRVhUSV9JTVJfTVIxOQ0KI2RlZmluZSAgRVhUSV9JTVJfSU0yMSBFWFRJX0lNUl9NUjIxDQojZGVmaW5lICBFWFRJX0lNUl9JTTIyIEVYVElfSU1SX01SMjINCiNkZWZpbmUgIEVYVElfSU1SX0lNMjMgRVhUSV9JTVJfTVIyMw0KI2RlZmluZSAgRVhUSV9JTVJfSU0yNSBFWFRJX0lNUl9NUjI1DQojZGVmaW5lICBFWFRJX0lNUl9JTTI3IEVYVElfSU1SX01SMjcNCg0KI2RlZmluZSBFWFRJX0lNUl9JTV9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9JTV9Nc2sgICAgICAgICAgICgweEFFRkZGRkZVIDw8IEVYVElfSU1SX0lNX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwQUVGRkZGRiAqLw0KI2RlZmluZSBFWFRJX0lNUl9JTSAgICAgICAgICAgICAgIEVYVElfSU1SX0lNX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgQWxsICovDQoNCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEVYVElfRU1SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIwX1BvcyAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVIwX01zayAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjBfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIwICAgICAgICAgICAgICBFWFRJX0VNUl9NUjBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAwICAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjFfUG9zICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjFfTXNrICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SMV9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjEgICAgICAgICAgICAgIEVYVElfRU1SX01SMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDEgICovDQojZGVmaW5lIEVYVElfRU1SX01SMl9Qb3MgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMl9Nc2sgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVIyX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEVYVElfRU1SX01SMiAgICAgICAgICAgICAgRVhUSV9FTVJfTVIyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgMiAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIzX1BvcyAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVIzX01zayAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjNfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIzICAgICAgICAgICAgICBFWFRJX0VNUl9NUjNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAzICAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjRfUG9zICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjRfTXNrICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SNF9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjQgICAgICAgICAgICAgIEVYVElfRU1SX01SNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDQgICovDQojZGVmaW5lIEVYVElfRU1SX01SNV9Qb3MgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SNV9Nc2sgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVI1X1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEVYVElfRU1SX01SNSAgICAgICAgICAgICAgRVhUSV9FTVJfTVI1X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgNSAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVI2X1BvcyAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVI2X01zayAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjZfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVI2ICAgICAgICAgICAgICBFWFRJX0VNUl9NUjZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSA2ICAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjdfUG9zICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjdfTXNrICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SN19Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjcgICAgICAgICAgICAgIEVYVElfRU1SX01SN19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDcgICovDQojZGVmaW5lIEVYVElfRU1SX01SOF9Qb3MgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SOF9Nc2sgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVI4X1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEVYVElfRU1SX01SOCAgICAgICAgICAgICAgRVhUSV9FTVJfTVI4X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgOCAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVI5X1BvcyAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVI5X01zayAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjlfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVI5ICAgICAgICAgICAgICBFWFRJX0VNUl9NUjlfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSA5ICAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjEwX1BvcyAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjEwX01zayAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SMTBfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjEwICAgICAgICAgICAgIEVYVElfRU1SX01SMTBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDEwICovDQojZGVmaW5lIEVYVElfRU1SX01SMTFfUG9zICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMTFfTXNrICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVIxMV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEVYVElfRU1SX01SMTEgICAgICAgICAgICAgRVhUSV9FTVJfTVIxMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgMTEgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxMl9Qb3MgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVIxMl9Nc2sgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjEyX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxMiAgICAgICAgICAgICBFWFRJX0VNUl9NUjEyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAxMiAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjEzX1BvcyAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjEzX01zayAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SMTNfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjEzICAgICAgICAgICAgIEVYVElfRU1SX01SMTNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDEzICovDQojZGVmaW5lIEVYVElfRU1SX01SMTRfUG9zICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMTRfTXNrICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVIxNF9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIEVYVElfRU1SX01SMTQgICAgICAgICAgICAgRVhUSV9FTVJfTVIxNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgMTQgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxNV9Qb3MgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVIxNV9Nc2sgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjE1X1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxNSAgICAgICAgICAgICBFWFRJX0VNUl9NUjE1X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAxNSAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjE2X1BvcyAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjE2X01zayAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SMTZfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjE2ICAgICAgICAgICAgIEVYVElfRU1SX01SMTZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDE2ICovDQojZGVmaW5lIEVYVElfRU1SX01SMTdfUG9zICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMTdfTXNrICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVIxN19Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIEVYVElfRU1SX01SMTcgICAgICAgICAgICAgRVhUSV9FTVJfTVIxN19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgMTcgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxOF9Qb3MgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVIxOF9Nc2sgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjE4X1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxOCAgICAgICAgICAgICBFWFRJX0VNUl9NUjE4X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAxOCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjE5X1BvcyAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjE5X01zayAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SMTlfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjE5ICAgICAgICAgICAgIEVYVElfRU1SX01SMTlfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDE5ICovDQojZGVmaW5lIEVYVElfRU1SX01SMjFfUG9zICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMjFfTXNrICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVIyMV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIEVYVElfRU1SX01SMjEgICAgICAgICAgICAgRVhUSV9FTVJfTVIyMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgMjEgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIyMl9Qb3MgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVIyMl9Nc2sgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjIyX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIyMiAgICAgICAgICAgICBFWFRJX0VNUl9NUjIyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAyMiAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjIzX1BvcyAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjIzX01zayAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SMjNfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjIzICAgICAgICAgICAgIEVYVElfRU1SX01SMjNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDIzICovDQojZGVmaW5lIEVYVElfRU1SX01SMjVfUG9zICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMjVfTXNrICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVIyNV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIEVYVElfRU1SX01SMjUgICAgICAgICAgICAgRVhUSV9FTVJfTVIyNV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgMjUgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIyN19Qb3MgICAgICAgICAoMjdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVIyN19Nc2sgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjI3X1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIyNyAgICAgICAgICAgICBFWFRJX0VNUl9NUjI3X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAyNyAqLw0KDQovKiBSZWZlcmVuY2VzIERlZmluZXMgKi8NCiNkZWZpbmUgIEVYVElfRU1SX0VNMCBFWFRJX0VNUl9NUjANCiNkZWZpbmUgIEVYVElfRU1SX0VNMSBFWFRJX0VNUl9NUjENCiNkZWZpbmUgIEVYVElfRU1SX0VNMiBFWFRJX0VNUl9NUjINCiNkZWZpbmUgIEVYVElfRU1SX0VNMyBFWFRJX0VNUl9NUjMNCiNkZWZpbmUgIEVYVElfRU1SX0VNNCBFWFRJX0VNUl9NUjQNCiNkZWZpbmUgIEVYVElfRU1SX0VNNSBFWFRJX0VNUl9NUjUNCiNkZWZpbmUgIEVYVElfRU1SX0VNNiBFWFRJX0VNUl9NUjYNCiNkZWZpbmUgIEVYVElfRU1SX0VNNyBFWFRJX0VNUl9NUjcNCiNkZWZpbmUgIEVYVElfRU1SX0VNOCBFWFRJX0VNUl9NUjgNCiNkZWZpbmUgIEVYVElfRU1SX0VNOSBFWFRJX0VNUl9NUjkNCiNkZWZpbmUgIEVYVElfRU1SX0VNMTAgRVhUSV9FTVJfTVIxMA0KI2RlZmluZSAgRVhUSV9FTVJfRU0xMSBFWFRJX0VNUl9NUjExDQojZGVmaW5lICBFWFRJX0VNUl9FTTEyIEVYVElfRU1SX01SMTINCiNkZWZpbmUgIEVYVElfRU1SX0VNMTMgRVhUSV9FTVJfTVIxMw0KI2RlZmluZSAgRVhUSV9FTVJfRU0xNCBFWFRJX0VNUl9NUjE0DQojZGVmaW5lICBFWFRJX0VNUl9FTTE1IEVYVElfRU1SX01SMTUNCiNkZWZpbmUgIEVYVElfRU1SX0VNMTYgRVhUSV9FTVJfTVIxNg0KI2RlZmluZSAgRVhUSV9FTVJfRU0xNyBFWFRJX0VNUl9NUjE3DQojZGVmaW5lICBFWFRJX0VNUl9FTTE4IEVYVElfRU1SX01SMTgNCiNkZWZpbmUgIEVYVElfRU1SX0VNMTkgRVhUSV9FTVJfTVIxOQ0KI2RlZmluZSAgRVhUSV9FTVJfRU0yMSBFWFRJX0VNUl9NUjIxDQojZGVmaW5lICBFWFRJX0VNUl9FTTIyIEVYVElfRU1SX01SMjINCiNkZWZpbmUgIEVYVElfRU1SX0VNMjMgRVhUSV9FTVJfTVIyMw0KI2RlZmluZSAgRVhUSV9FTVJfRU0yNSBFWFRJX0VNUl9NUjI1DQojZGVmaW5lICBFWFRJX0VNUl9FTTI3IEVYVElfRU1SX01SMjcNCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBFWFRJX1JUU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMF9Qb3MgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSMF9Nc2sgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIwX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMCAgICAgICAgICAgICBFWFRJX1JUU1JfVFIwX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxX1BvcyAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxX01zayAgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjFfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxICAgICAgICAgICAgIEVYVElfUlRTUl9UUjFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjJfUG9zICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjJfTXNrICAgICAgICAgKDB4MVUgPDwgRVhUSV9SVFNSX1RSMl9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjIgICAgICAgICAgICAgRVhUSV9SVFNSX1RSMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDIgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSM19Qb3MgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSM19Nc2sgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIzX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMyAgICAgICAgICAgICBFWFRJX1JUU1JfVFIzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMyAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFI0X1BvcyAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFI0X01zayAgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjRfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFI0ICAgICAgICAgICAgIEVYVElfUlRTUl9UUjRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA0ICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjVfUG9zICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjVfTXNrICAgICAgICAgKDB4MVUgPDwgRVhUSV9SVFNSX1RSNV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjUgICAgICAgICAgICAgRVhUSV9SVFNSX1RSNV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDUgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSNl9Qb3MgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSNl9Nc2sgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFI2X1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSNiAgICAgICAgICAgICBFWFRJX1JUU1JfVFI2X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgNiAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFI3X1BvcyAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFI3X01zayAgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjdfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFI3ICAgICAgICAgICAgIEVYVElfUlRTUl9UUjdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA3ICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjhfUG9zICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjhfTXNrICAgICAgICAgKDB4MVUgPDwgRVhUSV9SVFNSX1RSOF9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjggICAgICAgICAgICAgRVhUSV9SVFNSX1RSOF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDggKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSOV9Qb3MgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSOV9Nc2sgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFI5X1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSOSAgICAgICAgICAgICBFWFRJX1JUU1JfVFI5X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgOSAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMF9Qb3MgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMF9Nc2sgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjEwX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMCAgICAgICAgICAgIEVYVElfUlRTUl9UUjEwX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMV9Qb3MgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMV9Nc2sgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjExX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMSAgICAgICAgICAgIEVYVElfUlRTUl9UUjExX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxMSAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMl9Qb3MgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMl9Nc2sgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjEyX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMiAgICAgICAgICAgIEVYVElfUlRTUl9UUjEyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxMiAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxM19Qb3MgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxM19Nc2sgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjEzX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMyAgICAgICAgICAgIEVYVElfUlRTUl9UUjEzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxMyAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNF9Qb3MgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNF9Nc2sgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjE0X1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNCAgICAgICAgICAgIEVYVElfUlRTUl9UUjE0X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxNCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNV9Qb3MgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNV9Nc2sgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjE1X1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNSAgICAgICAgICAgIEVYVElfUlRTUl9UUjE1X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxNSAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNl9Qb3MgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNl9Nc2sgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjE2X1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNiAgICAgICAgICAgIEVYVElfUlRTUl9UUjE2X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxNiAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxN19Qb3MgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxN19Nc2sgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjE3X1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNyAgICAgICAgICAgIEVYVElfUlRTUl9UUjE3X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxNyAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxOV9Qb3MgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxOV9Nc2sgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjE5X1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxOSAgICAgICAgICAgIEVYVElfUlRTUl9UUjE5X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxOSAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIyMV9Qb3MgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIyMV9Nc2sgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjIxX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIyMSAgICAgICAgICAgIEVYVElfUlRTUl9UUjIxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAyMSAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIyMl9Qb3MgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIyMl9Nc2sgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjIyX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIyMiAgICAgICAgICAgIEVYVElfUlRTUl9UUjIyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAyMiAqLw0KDQovKiBSZWZlcmVuY2VzIERlZmluZXMgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1JUMCBFWFRJX1JUU1JfVFIwDQojZGVmaW5lIEVYVElfUlRTUl9SVDEgRVhUSV9SVFNSX1RSMQ0KI2RlZmluZSBFWFRJX1JUU1JfUlQyIEVYVElfUlRTUl9UUjINCiNkZWZpbmUgRVhUSV9SVFNSX1JUMyBFWFRJX1JUU1JfVFIzDQojZGVmaW5lIEVYVElfUlRTUl9SVDQgRVhUSV9SVFNSX1RSNA0KI2RlZmluZSBFWFRJX1JUU1JfUlQ1IEVYVElfUlRTUl9UUjUNCiNkZWZpbmUgRVhUSV9SVFNSX1JUNiBFWFRJX1JUU1JfVFI2DQojZGVmaW5lIEVYVElfUlRTUl9SVDcgRVhUSV9SVFNSX1RSNw0KI2RlZmluZSBFWFRJX1JUU1JfUlQ4IEVYVElfUlRTUl9UUjgNCiNkZWZpbmUgRVhUSV9SVFNSX1JUOSBFWFRJX1JUU1JfVFI5DQojZGVmaW5lIEVYVElfUlRTUl9SVDEwIEVYVElfUlRTUl9UUjEwDQojZGVmaW5lIEVYVElfUlRTUl9SVDExIEVYVElfUlRTUl9UUjExDQojZGVmaW5lIEVYVElfUlRTUl9SVDEyIEVYVElfUlRTUl9UUjEyDQojZGVmaW5lIEVYVElfUlRTUl9SVDEzIEVYVElfUlRTUl9UUjEzDQojZGVmaW5lIEVYVElfUlRTUl9SVDE0IEVYVElfUlRTUl9UUjE0DQojZGVmaW5lIEVYVElfUlRTUl9SVDE1IEVYVElfUlRTUl9UUjE1DQojZGVmaW5lIEVYVElfUlRTUl9SVDE2IEVYVElfUlRTUl9UUjE2DQojZGVmaW5lIEVYVElfUlRTUl9SVDE3IEVYVElfUlRTUl9UUjE3DQojZGVmaW5lIEVYVElfUlRTUl9SVDE5IEVYVElfUlRTUl9UUjE5DQojZGVmaW5lIEVYVElfUlRTUl9SVDIxIEVYVElfUlRTUl9UUjIxDQojZGVmaW5lIEVYVElfUlRTUl9SVDIyIEVYVElfUlRTUl9UUjIyDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRVhUSV9GVFNSIHJlZ2lzdGVyICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEVYVElfRlRTUl9UUjBfUG9zICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjBfTXNrICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSMF9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSMF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjFfUG9zICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjFfTXNrICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSMV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjEgICAgICAgICAgICAgRVhUSV9GVFNSX1RSMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjJfUG9zICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjJfTXNrICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSMl9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjIgICAgICAgICAgICAgRVhUSV9GVFNSX1RSMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAyICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjNfUG9zICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjNfTXNrICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSM19Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjMgICAgICAgICAgICAgRVhUSV9GVFNSX1RSM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAzICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjRfUG9zICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjRfTXNrICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSNF9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjQgICAgICAgICAgICAgRVhUSV9GVFNSX1RSNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA0ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjVfUG9zICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjVfTXNrICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSNV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjUgICAgICAgICAgICAgRVhUSV9GVFNSX1RSNV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA1ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjZfUG9zICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjZfTXNrICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSNl9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjYgICAgICAgICAgICAgRVhUSV9GVFNSX1RSNl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA2ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjdfUG9zICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjdfTXNrICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSN19Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjcgICAgICAgICAgICAgRVhUSV9GVFNSX1RSN19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA3ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjhfUG9zICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjhfTXNrICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSOF9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjggICAgICAgICAgICAgRVhUSV9GVFNSX1RSOF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA4ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjlfUG9zICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjlfTXNrICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSOV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjkgICAgICAgICAgICAgRVhUSV9GVFNSX1RSOV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA5ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjEwX1BvcyAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjEwX01zayAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSMTBfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjEwICAgICAgICAgICAgRVhUSV9GVFNSX1RSMTBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxMV9Qb3MgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxMV9Nc2sgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjExX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxMSAgICAgICAgICAgIEVYVElfRlRTUl9UUjExX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTEgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTJfUG9zICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTJfTXNrICAgICAgICAoMHgxVSA8PCBFWFRJX0ZUU1JfVFIxMl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTIgICAgICAgICAgICBFWFRJX0ZUU1JfVFIxMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDEyICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjEzX1BvcyAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjEzX01zayAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSMTNfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjEzICAgICAgICAgICAgRVhUSV9GVFNSX1RSMTNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxMyAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxNF9Qb3MgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxNF9Nc2sgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjE0X1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxNCAgICAgICAgICAgIEVYVElfRlRTUl9UUjE0X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTQgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTVfUG9zICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTVfTXNrICAgICAgICAoMHgxVSA8PCBFWFRJX0ZUU1JfVFIxNV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTUgICAgICAgICAgICBFWFRJX0ZUU1JfVFIxNV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDE1ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjE2X1BvcyAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjE2X01zayAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSMTZfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjE2ICAgICAgICAgICAgRVhUSV9GVFNSX1RSMTZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxNiAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxN19Qb3MgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxN19Nc2sgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjE3X1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxNyAgICAgICAgICAgIEVYVElfRlRTUl9UUjE3X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTcgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTlfUG9zICAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTlfTXNrICAgICAgICAoMHgxVSA8PCBFWFRJX0ZUU1JfVFIxOV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTkgICAgICAgICAgICBFWFRJX0ZUU1JfVFIxOV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDE5ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjIxX1BvcyAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjIxX01zayAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSMjFfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjIxICAgICAgICAgICAgRVhUSV9GVFNSX1RSMjFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAyMSAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIyMl9Qb3MgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIyMl9Nc2sgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjIyX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIyMiAgICAgICAgICAgIEVYVElfRlRTUl9UUjIyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMjIgKi8NCg0KLyogUmVmZXJlbmNlcyBEZWZpbmVzICovDQojZGVmaW5lIEVYVElfRlRTUl9GVDAgRVhUSV9GVFNSX1RSMA0KI2RlZmluZSBFWFRJX0ZUU1JfRlQxIEVYVElfRlRTUl9UUjENCiNkZWZpbmUgRVhUSV9GVFNSX0ZUMiBFWFRJX0ZUU1JfVFIyDQojZGVmaW5lIEVYVElfRlRTUl9GVDMgRVhUSV9GVFNSX1RSMw0KI2RlZmluZSBFWFRJX0ZUU1JfRlQ0IEVYVElfRlRTUl9UUjQNCiNkZWZpbmUgRVhUSV9GVFNSX0ZUNSBFWFRJX0ZUU1JfVFI1DQojZGVmaW5lIEVYVElfRlRTUl9GVDYgRVhUSV9GVFNSX1RSNg0KI2RlZmluZSBFWFRJX0ZUU1JfRlQ3IEVYVElfRlRTUl9UUjcNCiNkZWZpbmUgRVhUSV9GVFNSX0ZUOCBFWFRJX0ZUU1JfVFI4DQojZGVmaW5lIEVYVElfRlRTUl9GVDkgRVhUSV9GVFNSX1RSOQ0KI2RlZmluZSBFWFRJX0ZUU1JfRlQxMCBFWFRJX0ZUU1JfVFIxMA0KI2RlZmluZSBFWFRJX0ZUU1JfRlQxMSBFWFRJX0ZUU1JfVFIxMQ0KI2RlZmluZSBFWFRJX0ZUU1JfRlQxMiBFWFRJX0ZUU1JfVFIxMg0KI2RlZmluZSBFWFRJX0ZUU1JfRlQxMyBFWFRJX0ZUU1JfVFIxMw0KI2RlZmluZSBFWFRJX0ZUU1JfRlQxNCBFWFRJX0ZUU1JfVFIxNA0KI2RlZmluZSBFWFRJX0ZUU1JfRlQxNSBFWFRJX0ZUU1JfVFIxNQ0KI2RlZmluZSBFWFRJX0ZUU1JfRlQxNiBFWFRJX0ZUU1JfVFIxNg0KI2RlZmluZSBFWFRJX0ZUU1JfRlQxNyBFWFRJX0ZUU1JfVFIxNw0KI2RlZmluZSBFWFRJX0ZUU1JfRlQxOSBFWFRJX0ZUU1JfVFIxOQ0KI2RlZmluZSBFWFRJX0ZUU1JfRlQyMSBFWFRJX0ZUU1JfVFIyMQ0KI2RlZmluZSBFWFRJX0ZUU1JfRlQyMiBFWFRJX0ZUU1JfVFIyMg0KDQovKioqKioqKioqKioqKioqKioqKiBCaXQgZGVmaW5pdGlvbiBmb3IgRVhUSV9TV0lFUiByZWdpc3RlciAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMF9Qb3MgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMF9Nc2sgICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVIwX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMCAgICAgICAgIEVYVElfU1dJRVJfU1dJRVIwX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMCAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjFfUG9zICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjFfTXNrICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSMV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjEgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDEgICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIyX1BvcyAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIyX01zayAgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjJfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIyICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAyICAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSM19Qb3MgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSM19Nc2sgICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVIzX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMyAgICAgICAgIEVYVElfU1dJRVJfU1dJRVIzX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMyAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjRfUG9zICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjRfTXNrICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSNF9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjQgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDQgICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVI1X1BvcyAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVI1X01zayAgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjVfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVI1ICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSA1ICAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSNl9Qb3MgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSNl9Nc2sgICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVI2X1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSNiAgICAgICAgIEVYVElfU1dJRVJfU1dJRVI2X01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgNiAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjdfUG9zICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjdfTXNrICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSN19Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjcgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSN19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDcgICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVI4X1BvcyAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVI4X01zayAgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjhfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVI4ICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjhfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSA4ICAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSOV9Qb3MgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSOV9Nc2sgICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVI5X1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSOSAgICAgICAgIEVYVElfU1dJRVJfU1dJRVI5X01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgOSAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjEwX1BvcyAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjEwX01zayAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSMTBfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjEwICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMTBfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDEwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxMV9Qb3MgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxMV9Nc2sgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjExX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxMSAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjExX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAxMSAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTJfUG9zICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTJfTXNrICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVIxMl9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTIgICAgICAgIEVYVElfU1dJRVJfU1dJRVIxMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMTIgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjEzX1BvcyAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjEzX01zayAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSMTNfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjEzICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMTNfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDEzICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxNF9Qb3MgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxNF9Nc2sgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjE0X1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxNCAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjE0X01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAxNCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTVfUG9zICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTVfTXNrICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVIxNV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTUgICAgICAgIEVYVElfU1dJRVJfU1dJRVIxNV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMTUgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE2X1BvcyAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE2X01zayAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSMTZfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE2ICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMTZfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDE2ICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxN19Qb3MgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxN19Nc2sgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjE3X1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxNyAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjE3X01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAxNyAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTlfUG9zICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTlfTXNrICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVIxOV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTkgICAgICAgIEVYVElfU1dJRVJfU1dJRVIxOV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMTkgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjIxX1BvcyAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjIxX01zayAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSMjFfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjIxICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMjFfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDIxICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIyMl9Qb3MgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIyMl9Nc2sgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjIyX1BvcykgICAgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIyMiAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjIyX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAyMiAqLw0KDQovKiBSZWZlcmVuY2VzIERlZmluZXMgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0kwIEVYVElfU1dJRVJfU1dJRVIwDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJMSBFWFRJX1NXSUVSX1NXSUVSMQ0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSTIgRVhUSV9TV0lFUl9TV0lFUjINCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0kzIEVYVElfU1dJRVJfU1dJRVIzDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJNCBFWFRJX1NXSUVSX1NXSUVSNA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSTUgRVhUSV9TV0lFUl9TV0lFUjUNCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0k2IEVYVElfU1dJRVJfU1dJRVI2DQojZGVmaW5lIEVYVElfU1dJRVJfU1dJNyBFWFRJX1NXSUVSX1NXSUVSNw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSTggRVhUSV9TV0lFUl9TV0lFUjgNCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0k5IEVYVElfU1dJRVJfU1dJRVI5DQojZGVmaW5lIEVYVElfU1dJRVJfU1dJMTAgRVhUSV9TV0lFUl9TV0lFUjEwDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJMTEgRVhUSV9TV0lFUl9TV0lFUjExDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJMTIgRVhUSV9TV0lFUl9TV0lFUjEyDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJMTMgRVhUSV9TV0lFUl9TV0lFUjEzDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJMTQgRVhUSV9TV0lFUl9TV0lFUjE0DQojZGVmaW5lIEVYVElfU1dJRVJfU1dJMTUgRVhUSV9TV0lFUl9TV0lFUjE1DQojZGVmaW5lIEVYVElfU1dJRVJfU1dJMTYgRVhUSV9TV0lFUl9TV0lFUjE2DQojZGVmaW5lIEVYVElfU1dJRVJfU1dJMTcgRVhUSV9TV0lFUl9TV0lFUjE3DQojZGVmaW5lIEVYVElfU1dJRVJfU1dJMTkgRVhUSV9TV0lFUl9TV0lFUjE5DQojZGVmaW5lIEVYVElfU1dJRVJfU1dJMjEgRVhUSV9TV0lFUl9TV0lFUjIxDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJMjIgRVhUSV9TV0lFUl9TV0lFUjIyDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBFWFRJX1BSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEVYVElfUFJfUFIwX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIwX01zayAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjBfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEVYVElfUFJfUFIwICAgICAgICAgICAgICAgRVhUSV9QUl9QUjBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCAwICAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMV9Qb3MgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSMV9Nc2sgICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFIxX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMSAgICAgICAgICAgICAgIEVYVElfUFJfUFIxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgMSAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjJfUG9zICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjJfTXNrICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSMl9Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjIgICAgICAgICAgICAgICBFWFRJX1BSX1BSMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IDIgICovDQojZGVmaW5lIEVYVElfUFJfUFIzX1BvcyAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIzX01zayAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjNfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEVYVElfUFJfUFIzICAgICAgICAgICAgICAgRVhUSV9QUl9QUjNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCAzICAqLw0KI2RlZmluZSBFWFRJX1BSX1BSNF9Qb3MgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSNF9Nc2sgICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFI0X1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSNCAgICAgICAgICAgICAgIEVYVElfUFJfUFI0X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgNCAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjVfUG9zICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjVfTXNrICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSNV9Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjUgICAgICAgICAgICAgICBFWFRJX1BSX1BSNV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IDUgICovDQojZGVmaW5lIEVYVElfUFJfUFI2X1BvcyAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFI2X01zayAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjZfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEVYVElfUFJfUFI2ICAgICAgICAgICAgICAgRVhUSV9QUl9QUjZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCA2ICAqLw0KI2RlZmluZSBFWFRJX1BSX1BSN19Qb3MgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSN19Nc2sgICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFI3X1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSNyAgICAgICAgICAgICAgIEVYVElfUFJfUFI3X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgNyAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjhfUG9zICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjhfTXNrICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSOF9Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjggICAgICAgICAgICAgICBFWFRJX1BSX1BSOF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IDggICovDQojZGVmaW5lIEVYVElfUFJfUFI5X1BvcyAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFI5X01zayAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjlfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEVYVElfUFJfUFI5ICAgICAgICAgICAgICAgRVhUSV9QUl9QUjlfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCA5ICAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTBfUG9zICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSMTBfTXNrICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFIxMF9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTAgICAgICAgICAgICAgIEVYVElfUFJfUFIxMF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgMTAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjExX1BvcyAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjExX01zayAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSMTFfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjExICAgICAgICAgICAgICBFWFRJX1BSX1BSMTFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IDExICovDQojZGVmaW5lIEVYVElfUFJfUFIxMl9Qb3MgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIxMl9Nc2sgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjEyX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEVYVElfUFJfUFIxMiAgICAgICAgICAgICAgRVhUSV9QUl9QUjEyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCAxMiAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTNfUG9zICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSMTNfTXNrICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFIxM19Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTMgICAgICAgICAgICAgIEVYVElfUFJfUFIxM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgMTMgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjE0X1BvcyAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjE0X01zayAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSMTRfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjE0ICAgICAgICAgICAgICBFWFRJX1BSX1BSMTRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IDE0ICovDQojZGVmaW5lIEVYVElfUFJfUFIxNV9Qb3MgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIxNV9Nc2sgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjE1X1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEVYVElfUFJfUFIxNSAgICAgICAgICAgICAgRVhUSV9QUl9QUjE1X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCAxNSAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTZfUG9zICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSMTZfTXNrICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFIxNl9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTYgICAgICAgICAgICAgIEVYVElfUFJfUFIxNl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgMTYgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjE3X1BvcyAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjE3X01zayAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSMTdfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjE3ICAgICAgICAgICAgICBFWFRJX1BSX1BSMTdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IDE3ICovDQojZGVmaW5lIEVYVElfUFJfUFIxOV9Qb3MgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIxOV9Nc2sgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjE5X1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIEVYVElfUFJfUFIxOSAgICAgICAgICAgICAgRVhUSV9QUl9QUjE5X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCAxOSAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMjFfUG9zICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSMjFfTXNrICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFIyMV9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMjEgICAgICAgICAgICAgIEVYVElfUFJfUFIyMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgMjEgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjIyX1BvcyAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjIyX01zayAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSMjJfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjIyICAgICAgICAgICAgICBFWFRJX1BSX1BSMjJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IDIyICovDQoNCi8qIFJlZmVyZW5jZXMgRGVmaW5lcyAqLw0KI2RlZmluZSBFWFRJX1BSX1BJRjAgRVhUSV9QUl9QUjANCiNkZWZpbmUgRVhUSV9QUl9QSUYxIEVYVElfUFJfUFIxDQojZGVmaW5lIEVYVElfUFJfUElGMiBFWFRJX1BSX1BSMg0KI2RlZmluZSBFWFRJX1BSX1BJRjMgRVhUSV9QUl9QUjMNCiNkZWZpbmUgRVhUSV9QUl9QSUY0IEVYVElfUFJfUFI0DQojZGVmaW5lIEVYVElfUFJfUElGNSBFWFRJX1BSX1BSNQ0KI2RlZmluZSBFWFRJX1BSX1BJRjYgRVhUSV9QUl9QUjYNCiNkZWZpbmUgRVhUSV9QUl9QSUY3IEVYVElfUFJfUFI3DQojZGVmaW5lIEVYVElfUFJfUElGOCBFWFRJX1BSX1BSOA0KI2RlZmluZSBFWFRJX1BSX1BJRjkgRVhUSV9QUl9QUjkNCiNkZWZpbmUgRVhUSV9QUl9QSUYxMCBFWFRJX1BSX1BSMTANCiNkZWZpbmUgRVhUSV9QUl9QSUYxMSBFWFRJX1BSX1BSMTENCiNkZWZpbmUgRVhUSV9QUl9QSUYxMiBFWFRJX1BSX1BSMTINCiNkZWZpbmUgRVhUSV9QUl9QSUYxMyBFWFRJX1BSX1BSMTMNCiNkZWZpbmUgRVhUSV9QUl9QSUYxNCBFWFRJX1BSX1BSMTQNCiNkZWZpbmUgRVhUSV9QUl9QSUYxNSBFWFRJX1BSX1BSMTUNCiNkZWZpbmUgRVhUSV9QUl9QSUYxNiBFWFRJX1BSX1BSMTYNCiNkZWZpbmUgRVhUSV9QUl9QSUYxNyBFWFRJX1BSX1BSMTcNCiNkZWZpbmUgRVhUSV9QUl9QSUYxOSBFWFRJX1BSX1BSMTkNCiNkZWZpbmUgRVhUSV9QUl9QSUYyMSBFWFRJX1BSX1BSMjENCiNkZWZpbmUgRVhUSV9QUl9QSUYyMiBFWFRJX1BSX1BSMjINCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICBGTEFTSCBhbmQgT3B0aW9uIEJ5dGVzIFJlZ2lzdGVycyAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRkxBU0hfQUNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEZMQVNIX0FDUl9MQVRFTkNZX1BvcyAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX0FDUl9MQVRFTkNZX01zayAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9BQ1JfTEFURU5DWV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEZMQVNIX0FDUl9MQVRFTkNZICAgICAgICAgICAgICAgICBGTEFTSF9BQ1JfTEFURU5DWV9Nc2sgICAgICAgICAgICAgICAgLyohPCBMQVRFTkNZIGJpdCAoTGF0ZW5jeSkgKi8NCg0KI2RlZmluZSBGTEFTSF9BQ1JfUFJGVEJFX1BvcyAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9BQ1JfUFJGVEJFX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfQUNSX1BSRlRCRV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBGTEFTSF9BQ1JfUFJGVEJFICAgICAgICAgICAgICAgICAgRkxBU0hfQUNSX1BSRlRCRV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUHJlZmV0Y2ggQnVmZmVyIEVuYWJsZSAqLw0KI2RlZmluZSBGTEFTSF9BQ1JfUFJGVEJTX1BvcyAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9BQ1JfUFJGVEJTX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfQUNSX1BSRlRCU19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBGTEFTSF9BQ1JfUFJGVEJTICAgICAgICAgICAgICAgICAgRkxBU0hfQUNSX1BSRlRCU19Nc2sgICAgICAgICAgICAgICAgIC8qITwgUHJlZmV0Y2ggQnVmZmVyIFN0YXR1cyAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRkxBU0hfS0VZUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBGTEFTSF9LRVlSX0ZLRVlSX1BvcyAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9LRVlSX0ZLRVlSX01zayAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IEZMQVNIX0tFWVJfRktFWVJfUG9zKSAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRkxBU0hfS0VZUl9GS0VZUiAgICAgICAgICAgICAgICAgIEZMQVNIX0tFWVJfRktFWVJfTXNrICAgICAgICAgICAgICAgICAvKiE8IEZQRUMgS2V5ICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEZMQVNIX09QVEtFWVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIEZMQVNIX09QVEtFWVJfT1BUS0VZUl9Qb3MgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX09QVEtFWVJfT1BUS0VZUl9Nc2sgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRkxBU0hfT1BUS0VZUl9PUFRLRVlSX1BvcykgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIEZMQVNIX09QVEtFWVJfT1BUS0VZUiAgICAgICAgICAgICBGTEFTSF9PUFRLRVlSX09QVEtFWVJfTXNrICAgICAgICAgICAgLyohPCBPcHRpb24gQnl0ZSBLZXkgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgRkxBU0ggS2V5cyAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRkxBU0hfS0VZMV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfS0VZMV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDQ1NjcwMTIzVSA8PCBGTEFTSF9LRVkxX1BvcykgICAgICAvKiE8IDB4NDU2NzAxMjMgKi8NCiNkZWZpbmUgRkxBU0hfS0VZMSAgICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX0tFWTFfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEZsYXNoIHByb2dyYW0gZXJhc2Uga2V5MSAqLw0KI2RlZmluZSBGTEFTSF9LRVkyX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9LRVkyX01zayAgICAgICAgICAgICAgICAgICAgKDB4Q0RFRjg5QUJVIDw8IEZMQVNIX0tFWTJfUG9zKSAgICAgIC8qITwgMHhDREVGODlBQiAqLw0KI2RlZmluZSBGTEFTSF9LRVkyICAgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfS0VZMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRmxhc2ggcHJvZ3JhbSBlcmFzZSBrZXkyOiB1c2VkIHdpdGggRkxBU0hfUEVLRVkxDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvIHVubG9jayB0aGUgd3JpdGUgYWNjZXNzIHRvIHRoZSBGUEVDLiAqLw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX09QVEtFWTFfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX09QVEtFWTFfTXNrICAgICAgICAgICAgICAgICAoMHg0NTY3MDEyM1UgPDwgRkxBU0hfT1BUS0VZMV9Qb3MpICAgLyohPCAweDQ1NjcwMTIzICovDQojZGVmaW5lIEZMQVNIX09QVEtFWTEgICAgICAgICAgICAgICAgICAgICBGTEFTSF9PUFRLRVkxX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBGbGFzaCBvcHRpb24ga2V5MSAqLw0KI2RlZmluZSBGTEFTSF9PUFRLRVkyX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9PUFRLRVkyX01zayAgICAgICAgICAgICAgICAgKDB4Q0RFRjg5QUJVIDw8IEZMQVNIX09QVEtFWTJfUG9zKSAgIC8qITwgMHhDREVGODlBQiAqLw0KI2RlZmluZSBGTEFTSF9PUFRLRVkyICAgICAgICAgICAgICAgICAgICAgRkxBU0hfT1BUS0VZMl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgRmxhc2ggb3B0aW9uIGtleTI6IHVzZWQgd2l0aCBGTEFTSF9PUFRLRVkxIHRvDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVubG9jayB0aGUgd3JpdGUgYWNjZXNzIHRvIHRoZSBvcHRpb24gYnl0ZSBibG9jayAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRkxBU0hfU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEZMQVNIX1NSX0JTWV9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1NSX0JTWV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9TUl9CU1lfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEZMQVNIX1NSX0JTWSAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9TUl9CU1lfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBCdXN5ICovDQojZGVmaW5lIEZMQVNIX1NSX1BHRVJSX1BvcyAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1NSX1BHRVJSX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9TUl9QR0VSUl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEZMQVNIX1NSX1BHRVJSICAgICAgICAgICAgICAgICAgICBGTEFTSF9TUl9QR0VSUl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQcm9ncmFtbWluZyBFcnJvciAqLw0KI2RlZmluZSBGTEFTSF9TUl9XUlBSVEVSUl9Qb3MgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9TUl9XUlBSVEVSUl9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfU1JfV1JQUlRFUlJfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBGTEFTSF9TUl9XUlBSVEVSUiAgICAgICAgICAgICAgICAgRkxBU0hfU1JfV1JQUlRFUlJfTXNrICAgICAgICAgICAgICAgIC8qITwgV3JpdGUgUHJvdGVjdGlvbiBFcnJvciAqLw0KI2RlZmluZSBGTEFTSF9TUl9FT1BfUG9zICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9TUl9FT1BfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfU1JfRU9QX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBGTEFTSF9TUl9FT1AgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfU1JfRU9QX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kIG9mIG9wZXJhdGlvbiAqLw0KI2RlZmluZSAgRkxBU0hfU1JfV1JQRVJSICAgICAgICAgICAgICAgICAgICAgRkxBU0hfU1JfV1JQUlRFUlIgICAgICAgICAgICAgLyohPCBMZWdhY3kgb2YgV3JpdGUgUHJvdGVjdGlvbiBFcnJvciAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEZMQVNIX0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBGTEFTSF9DUl9QR19Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9DUl9QR19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfQ1JfUEdfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBGTEFTSF9DUl9QRyAgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfQ1JfUEdfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJvZ3JhbW1pbmcgKi8NCiNkZWZpbmUgRkxBU0hfQ1JfUEVSX1BvcyAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfQ1JfUEVSX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX0NSX1BFUl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgRkxBU0hfQ1JfUEVSICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX0NSX1BFUl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IFBhZ2UgRXJhc2UgKi8NCiNkZWZpbmUgRkxBU0hfQ1JfTUVSX1BvcyAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfQ1JfTUVSX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX0NSX01FUl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgRkxBU0hfQ1JfTUVSICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX0NSX01FUl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IE1hc3MgRXJhc2UgKi8NCiNkZWZpbmUgRkxBU0hfQ1JfT1BUUEdfUG9zICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfQ1JfT1BUUEdfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX0NSX09QVFBHX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgRkxBU0hfQ1JfT1BUUEcgICAgICAgICAgICAgICAgICAgIEZMQVNIX0NSX09QVFBHX01zayAgICAgICAgICAgICAgICAgICAvKiE8IE9wdGlvbiBCeXRlIFByb2dyYW1taW5nICovDQojZGVmaW5lIEZMQVNIX0NSX09QVEVSX1BvcyAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX0NSX09QVEVSX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9DUl9PUFRFUl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEZMQVNIX0NSX09QVEVSICAgICAgICAgICAgICAgICAgICBGTEFTSF9DUl9PUFRFUl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBPcHRpb24gQnl0ZSBFcmFzZSAqLw0KI2RlZmluZSBGTEFTSF9DUl9TVFJUX1BvcyAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9DUl9TVFJUX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfQ1JfU1RSVF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBGTEFTSF9DUl9TVFJUICAgICAgICAgICAgICAgICAgICAgRkxBU0hfQ1JfU1RSVF9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgU3RhcnQgKi8NCiNkZWZpbmUgRkxBU0hfQ1JfTE9DS19Qb3MgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfQ1JfTE9DS19Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX0NSX0xPQ0tfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgRkxBU0hfQ1JfTE9DSyAgICAgICAgICAgICAgICAgICAgIEZMQVNIX0NSX0xPQ0tfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IExvY2sgKi8NCiNkZWZpbmUgRkxBU0hfQ1JfT1BUV1JFX1BvcyAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfQ1JfT1BUV1JFX01zayAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX0NSX09QVFdSRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgRkxBU0hfQ1JfT1BUV1JFICAgICAgICAgICAgICAgICAgIEZMQVNIX0NSX09QVFdSRV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IE9wdGlvbiBCeXRlcyBXcml0ZSBFbmFibGUgKi8NCiNkZWZpbmUgRkxBU0hfQ1JfRVJSSUVfUG9zICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfQ1JfRVJSSUVfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX0NSX0VSUklFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgRkxBU0hfQ1JfRVJSSUUgICAgICAgICAgICAgICAgICAgIEZMQVNIX0NSX0VSUklFX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEVycm9yIEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgRkxBU0hfQ1JfRU9QSUVfUG9zICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfQ1JfRU9QSUVfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX0NSX0VPUElFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgRkxBU0hfQ1JfRU9QSUUgICAgICAgICAgICAgICAgICAgIEZMQVNIX0NSX0VPUElFX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEVuZCBvZiBvcGVyYXRpb24gaW50ZXJydXB0IGVuYWJsZSAqLw0KI2RlZmluZSBGTEFTSF9DUl9PQkxfTEFVTkNIX1BvcyAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9DUl9PQkxfTEFVTkNIX01zayAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfQ1JfT0JMX0xBVU5DSF9Qb3MpICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBGTEFTSF9DUl9PQkxfTEFVTkNIICAgICAgICAgICAgICAgRkxBU0hfQ1JfT0JMX0xBVU5DSF9Nc2sgICAgICAgICAgICAgIC8qITwgT3B0aW9uIEJ5dGVzIExvYWRlciBMYXVuY2ggKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBGTEFTSF9BUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRkxBU0hfQVJfRkFSX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfQVJfRkFSX01zayAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBGTEFTSF9BUl9GQVJfUG9zKSAgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRkxBU0hfQVJfRkFSICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX0FSX0ZBUl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IEZsYXNoIEFkZHJlc3MgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEZMQVNIX09CUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRkxBU0hfT0JSX09QVEVSUl9Qb3MgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfT0JSX09QVEVSUl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX09CUl9PUFRFUlJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgRkxBU0hfT0JSX09QVEVSUiAgICAgICAgICAgICAgICAgIEZMQVNIX09CUl9PUFRFUlJfTXNrICAgICAgICAgICAgICAgICAvKiE8IE9wdGlvbiBCeXRlIEVycm9yICovDQojZGVmaW5lIEZMQVNIX09CUl9SRFBSVDFfUG9zICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX09CUl9SRFBSVDFfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9PQlJfUkRQUlQxX1BvcykgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEZMQVNIX09CUl9SRFBSVDEgICAgICAgICAgICAgICAgICBGTEFTSF9PQlJfUkRQUlQxX01zayAgICAgICAgICAgICAgICAgLyohPCBSZWFkIHByb3RlY3Rpb24gTGV2ZWwgMSAqLw0KI2RlZmluZSBGTEFTSF9PQlJfUkRQUlQyX1BvcyAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9PQlJfUkRQUlQyX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfT0JSX1JEUFJUMl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBGTEFTSF9PQlJfUkRQUlQyICAgICAgICAgICAgICAgICAgRkxBU0hfT0JSX1JEUFJUMl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmVhZCBwcm90ZWN0aW9uIExldmVsIDIgKi8NCg0KI2RlZmluZSBGTEFTSF9PQlJfVVNFUl9Qb3MgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9PQlJfVVNFUl9Nc2sgICAgICAgICAgICAgICAgKDB4NzdVIDw8IEZMQVNIX09CUl9VU0VSX1BvcykgICAgICAgIC8qITwgMHgwMDAwNzcwMCAqLw0KI2RlZmluZSBGTEFTSF9PQlJfVVNFUiAgICAgICAgICAgICAgICAgICAgRkxBU0hfT0JSX1VTRVJfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgVXNlciBPcHRpb24gQnl0ZXMgKi8NCiNkZWZpbmUgRkxBU0hfT0JSX0lXREdfU1dfUG9zICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfT0JSX0lXREdfU1dfTXNrICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX09CUl9JV0RHX1NXX1BvcykgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgRkxBU0hfT0JSX0lXREdfU1cgICAgICAgICAgICAgICAgIEZMQVNIX09CUl9JV0RHX1NXX01zayAgICAgICAgICAgICAgICAvKiE8IElXREcgU1cgKi8NCiNkZWZpbmUgRkxBU0hfT0JSX25SU1RfU1RPUF9Qb3MgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfT0JSX25SU1RfU1RPUF9Nc2sgICAgICAgICAgICgweDFVIDw8IEZMQVNIX09CUl9uUlNUX1NUT1BfUG9zKSAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgRkxBU0hfT0JSX25SU1RfU1RPUCAgICAgICAgICAgICAgIEZMQVNIX09CUl9uUlNUX1NUT1BfTXNrICAgICAgICAgICAgICAvKiE8IG5SU1RfU1RPUCAqLw0KI2RlZmluZSBGTEFTSF9PQlJfblJTVF9TVERCWV9Qb3MgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9PQlJfblJTVF9TVERCWV9Nc2sgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfT0JSX25SU1RfU1REQllfUG9zKSAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBGTEFTSF9PQlJfblJTVF9TVERCWSAgICAgICAgICAgICAgRkxBU0hfT0JSX25SU1RfU1REQllfTXNrICAgICAgICAgICAgIC8qITwgblJTVF9TVERCWSAqLw0KI2RlZmluZSBGTEFTSF9PQlJfbkJPT1QxX1BvcyAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9PQlJfbkJPT1QxX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfT0JSX25CT09UMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBGTEFTSF9PQlJfbkJPT1QxICAgICAgICAgICAgICAgICAgRkxBU0hfT0JSX25CT09UMV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgbkJPT1QxICovDQojZGVmaW5lIEZMQVNIX09CUl9WRERBX01PTklUT1JfUG9zICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX09CUl9WRERBX01PTklUT1JfTXNrICAgICAgICAoMHgxVSA8PCBGTEFTSF9PQlJfVkREQV9NT05JVE9SX1BvcykgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEZMQVNIX09CUl9WRERBX01PTklUT1IgICAgICAgICAgICBGTEFTSF9PQlJfVkREQV9NT05JVE9SX01zayAgICAgICAgICAgLyohPCBWRERBIHBvd2VyIHN1cHBseSBzdXBlcnZpc29yICovDQojZGVmaW5lIEZMQVNIX09CUl9SQU1fUEFSSVRZX0NIRUNLX1BvcyAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX09CUl9SQU1fUEFSSVRZX0NIRUNLX01zayAgICAoMHgxVSA8PCBGTEFTSF9PQlJfUkFNX1BBUklUWV9DSEVDS19Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBGTEFTSF9PQlJfUkFNX1BBUklUWV9DSEVDSyAgICAgICAgRkxBU0hfT0JSX1JBTV9QQVJJVFlfQ0hFQ0tfTXNrICAgICAgIC8qITwgUkFNIHBhcml0eSBjaGVjayAqLw0KI2RlZmluZSBGTEFTSF9PQlJfREFUQTBfUG9zICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9PQlJfREFUQTBfTXNrICAgICAgICAgICAgICAgKDB4RkZVIDw8IEZMQVNIX09CUl9EQVRBMF9Qb3MpICAgICAgIC8qITwgMHgwMEZGMDAwMCAqLw0KI2RlZmluZSBGTEFTSF9PQlJfREFUQTAgICAgICAgICAgICAgICAgICAgRkxBU0hfT0JSX0RBVEEwX01zayAgICAgICAgICAgICAgICAgIC8qITwgRGF0YTAgKi8NCiNkZWZpbmUgRkxBU0hfT0JSX0RBVEExX1BvcyAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfT0JSX0RBVEExX01zayAgICAgICAgICAgICAgICgweEZGVSA8PCBGTEFTSF9PQlJfREFUQTFfUG9zKSAgICAgICAvKiE8IDB4RkYwMDAwMDAgKi8NCiNkZWZpbmUgRkxBU0hfT0JSX0RBVEExICAgICAgICAgICAgICAgICAgIEZMQVNIX09CUl9EQVRBMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IERhdGExICovDQoNCi8qIE9sZCBCT09UMSBiaXQgZGVmaW5pdGlvbiwgbWFpbnRhaW5lZCBmb3IgbGVnYWN5IHB1cnBvc2UgKi8NCiNkZWZpbmUgRkxBU0hfT0JSX0JPT1QxICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX09CUl9uQk9PVDENCg0KLyogT2xkIE9CUl9WRERBIGJpdCBkZWZpbml0aW9uLCBtYWludGFpbmVkIGZvciBsZWdhY3kgcHVycG9zZSAqLw0KI2RlZmluZSBGTEFTSF9PQlJfVkREQV9BTkFMT0cgICAgICAgICAgICAgICAgRkxBU0hfT0JSX1ZEREFfTU9OSVRPUg0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRkxBU0hfV1JQUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBGTEFTSF9XUlBSX1dSUF9Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9XUlBSX1dSUF9Nc2sgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgRkxBU0hfV1JQUl9XUlBfUG9zKSAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBGTEFTSF9XUlBSX1dSUCAgICAgICAgICAgICAgICAgICAgRkxBU0hfV1JQUl9XUlBfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgV3JpdGUgUHJvdGVjdCAqLw0KDQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgT0JfUkRQIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBPQl9SRFBfUkRQX1BvcyAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPQl9SRFBfUkRQX01zayAgICAgICAoMHhGRlUgPDwgT0JfUkRQX1JEUF9Qb3MpICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDBGRiAqLw0KI2RlZmluZSBPQl9SRFBfUkRQICAgICAgICAgICBPQl9SRFBfUkRQX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmVhZCBwcm90ZWN0aW9uIG9wdGlvbiBieXRlICovDQojZGVmaW5lIE9CX1JEUF9uUkRQX1BvcyAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9CX1JEUF9uUkRQX01zayAgICAgICgweEZGVSA8PCBPQl9SRFBfblJEUF9Qb3MpICAgICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDBGRjAwICovDQojZGVmaW5lIE9CX1JEUF9uUkRQICAgICAgICAgIE9CX1JEUF9uUkRQX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSZWFkIHByb3RlY3Rpb24gY29tcGxlbWVudGVkIG9wdGlvbiBieXRlICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBPQl9VU0VSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIE9CX1VTRVJfVVNFUl9Qb3MgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9CX1VTRVJfVVNFUl9Nc2sgICAgICgweEZGVSA8PCBPQl9VU0VSX1VTRVJfUG9zKSAgICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwRkYwMDAwICovDQojZGVmaW5lIE9CX1VTRVJfVVNFUiAgICAgICAgIE9CX1VTRVJfVVNFUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBVc2VyIG9wdGlvbiBieXRlICovDQojZGVmaW5lIE9CX1VTRVJfblVTRVJfUG9zICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9CX1VTRVJfblVTRVJfTXNrICAgICgweEZGVSA8PCBPQl9VU0VSX25VU0VSX1BvcykgICAgICAgICAgICAgICAgICAgICAgLyohPCAweEZGMDAwMDAwICovDQojZGVmaW5lIE9CX1VTRVJfblVTRVIgICAgICAgIE9CX1VTRVJfblVTRVJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBVc2VyIGNvbXBsZW1lbnRlZCBvcHRpb24gYnl0ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgT0JfV1JQMCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBPQl9XUlAwX1dSUDBfUG9zICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPQl9XUlAwX1dSUDBfTXNrICAgICAoMHhGRlUgPDwgT0JfV1JQMF9XUlAwX1BvcykgICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDBGRiAqLw0KI2RlZmluZSBPQl9XUlAwX1dSUDAgICAgICAgICBPQl9XUlAwX1dSUDBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRmxhc2ggbWVtb3J5IHdyaXRlIHByb3RlY3Rpb24gb3B0aW9uIGJ5dGVzICovDQojZGVmaW5lIE9CX1dSUDBfbldSUDBfUG9zICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9CX1dSUDBfbldSUDBfTXNrICAgICgweEZGVSA8PCBPQl9XUlAwX25XUlAwX1BvcykgICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDBGRjAwICovDQojZGVmaW5lIE9CX1dSUDBfbldSUDAgICAgICAgIE9CX1dSUDBfbldSUDBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBGbGFzaCBtZW1vcnkgd3JpdGUgcHJvdGVjdGlvbiBjb21wbGVtZW50ZWQgb3B0aW9uIGJ5dGVzICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYWwgUHVycG9zZSBJT3MgKEdQSU8pICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBHUElPX01PREVSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjBfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjBfTXNrICAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSMF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDMgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjAgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSMF9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjBfMCAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSMF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjBfMSAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSMF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjFfUG9zICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjFfTXNrICAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSMV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMEMgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSMV9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjFfMCAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSMV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjFfMSAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSMV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjJfUG9zICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjJfTXNrICAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSMl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMzAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjIgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSMl9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjJfMCAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSMl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjJfMSAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSMl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjNfUG9zICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjNfTXNrICAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSM19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwQzAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjMgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSM19Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjNfMCAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSM19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjNfMSAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSM19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjRfUG9zICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjRfTXNrICAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSNF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAzMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjQgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSNF9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjRfMCAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSNF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjRfMSAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSNF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjVfUG9zICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjVfTXNrICAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSNV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDBDMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjUgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSNV9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjVfMCAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSNV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjVfMSAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSNV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjZfUG9zICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjZfTXNrICAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSNl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDMwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjYgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSNl9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjZfMCAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSNl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjZfMSAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSNl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjdfUG9zICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjdfTXNrICAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSN19Qb3MpICAgICAgICAvKiE8IDB4MDAwMEMwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjcgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSN19Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjdfMCAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSN19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjdfMSAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSN19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjhfUG9zICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjhfTXNrICAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSOF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMzAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjggICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSOF9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjhfMCAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSOF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjhfMSAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSOF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjlfUG9zICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjlfTXNrICAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSOV9Qb3MpICAgICAgICAvKiE8IDB4MDAwQzAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjkgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSOV9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjlfMCAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSOV9Qb3MpICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjlfMSAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSOV9Qb3MpICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEwX1BvcyAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEwX01zayAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSMTBfUG9zKSAgICAgICAvKiE8IDB4MDAzMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEwICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSMTBfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEwXzAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSMTBfUG9zKSAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEwXzEgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSMTBfUG9zKSAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjExX1BvcyAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjExX01zayAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSMTFfUG9zKSAgICAgICAvKiE8IDB4MDBDMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjExICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSMTFfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjExXzAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSMTFfUG9zKSAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjExXzEgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSMTFfUG9zKSAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEyX1BvcyAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEyX01zayAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSMTJfUG9zKSAgICAgICAvKiE8IDB4MDMwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEyICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSMTJfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEyXzAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSMTJfUG9zKSAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEyXzEgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSMTJfUG9zKSAgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEzX1BvcyAgICAgICAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEzX01zayAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSMTNfUG9zKSAgICAgICAvKiE8IDB4MEMwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEzICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSMTNfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEzXzAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSMTNfUG9zKSAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEzXzEgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSMTNfUG9zKSAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjE0X1BvcyAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjE0X01zayAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSMTRfUG9zKSAgICAgICAvKiE8IDB4MzAwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjE0ICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSMTRfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjE0XzAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSMTRfUG9zKSAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjE0XzEgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSMTRfUG9zKSAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjE1X1BvcyAgICAgICAgICAoMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjE1X01zayAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSMTVfUG9zKSAgICAgICAvKiE8IDB4QzAwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjE1ICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSMTVfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjE1XzAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSMTVfUG9zKSAgICAgICAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjE1XzEgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSMTVfUG9zKSAgICAgICAvKiE8IDB4ODAwMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEdQSU9fT1RZUEVSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfMCAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfMSAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfMiAgICAgICAgICAgICAgICAoMHgwMDAwMDAwNFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfMyAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfNCAgICAgICAgICAgICAgICAoMHgwMDAwMDAxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfNSAgICAgICAgICAgICAgICAoMHgwMDAwMDAyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfNiAgICAgICAgICAgICAgICAoMHgwMDAwMDA0MFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfNyAgICAgICAgICAgICAgICAoMHgwMDAwMDA4MFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfOCAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfOSAgICAgICAgICAgICAgICAoMHgwMDAwMDIwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfMTAgICAgICAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfMTEgICAgICAgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfMTIgICAgICAgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfMTMgICAgICAgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfMTQgICAgICAgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfMTUgICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBHUElPX09TUEVFRFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIwX1BvcyAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIwX01zayAgICAgICAoMHgzVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjBfUG9zKSAgICAvKiE8IDB4MDAwMDAwMDMgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIwICAgICAgICAgICBHUElPX09TUEVFRFJfT1NQRUVEUjBfTXNrICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIwXzAgICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjBfUG9zKSAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIwXzEgICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjBfUG9zKSAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxX1BvcyAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxX01zayAgICAgICAoMHgzVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjFfUG9zKSAgICAvKiE8IDB4MDAwMDAwMEMgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxICAgICAgICAgICBHUElPX09TUEVFRFJfT1NQRUVEUjFfTXNrICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxXzAgICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjFfUG9zKSAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxXzEgICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjFfUG9zKSAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIyX1BvcyAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIyX01zayAgICAgICAoMHgzVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjJfUG9zKSAgICAvKiE8IDB4MDAwMDAwMzAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIyICAgICAgICAgICBHUElPX09TUEVFRFJfT1NQRUVEUjJfTXNrICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIyXzAgICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjJfUG9zKSAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIyXzEgICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjJfUG9zKSAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIzX1BvcyAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIzX01zayAgICAgICAoMHgzVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjNfUG9zKSAgICAvKiE8IDB4MDAwMDAwQzAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIzICAgICAgICAgICBHUElPX09TUEVFRFJfT1NQRUVEUjNfTXNrICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIzXzAgICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjNfUG9zKSAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIzXzEgICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjNfUG9zKSAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFI0X1BvcyAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFI0X01zayAgICAgICAoMHgzVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjRfUG9zKSAgICAvKiE8IDB4MDAwMDAzMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFI0ICAgICAgICAgICBHUElPX09TUEVFRFJfT1NQRUVEUjRfTXNrICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFI0XzAgICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjRfUG9zKSAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFI0XzEgICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjRfUG9zKSAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFI1X1BvcyAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFI1X01zayAgICAgICAoMHgzVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjVfUG9zKSAgICAvKiE8IDB4MDAwMDBDMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFI1ICAgICAgICAgICBHUElPX09TUEVFRFJfT1NQRUVEUjVfTXNrICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFI1XzAgICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjVfUG9zKSAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFI1XzEgICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjVfUG9zKSAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFI2X1BvcyAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFI2X01zayAgICAgICAoMHgzVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjZfUG9zKSAgICAvKiE8IDB4MDAwMDMwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFI2ICAgICAgICAgICBHUElPX09TUEVFRFJfT1NQRUVEUjZfTXNrICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFI2XzAgICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjZfUG9zKSAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFI2XzEgICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjZfUG9zKSAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFI3X1BvcyAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFI3X01zayAgICAgICAoMHgzVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjdfUG9zKSAgICAvKiE8IDB4MDAwMEMwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFI3ICAgICAgICAgICBHUElPX09TUEVFRFJfT1NQRUVEUjdfTXNrICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFI3XzAgICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjdfUG9zKSAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFI3XzEgICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjdfUG9zKSAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFI4X1BvcyAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFI4X01zayAgICAgICAoMHgzVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjhfUG9zKSAgICAvKiE8IDB4MDAwMzAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFI4ICAgICAgICAgICBHUElPX09TUEVFRFJfT1NQRUVEUjhfTXNrICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFI4XzAgICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjhfUG9zKSAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFI4XzEgICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjhfUG9zKSAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFI5X1BvcyAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFI5X01zayAgICAgICAoMHgzVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjlfUG9zKSAgICAvKiE8IDB4MDAwQzAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFI5ICAgICAgICAgICBHUElPX09TUEVFRFJfT1NQRUVEUjlfTXNrICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFI5XzAgICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjlfUG9zKSAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFI5XzEgICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjlfUG9zKSAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxMF9Qb3MgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxMF9Nc2sgICAgICAoMHgzVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjEwX1BvcykgICAvKiE8IDB4MDAzMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxMCAgICAgICAgICBHUElPX09TUEVFRFJfT1NQRUVEUjEwX01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxMF8wICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjEwX1BvcykgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxMF8xICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjEwX1BvcykgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxMV9Qb3MgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxMV9Nc2sgICAgICAoMHgzVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjExX1BvcykgICAvKiE8IDB4MDBDMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxMSAgICAgICAgICBHUElPX09TUEVFRFJfT1NQRUVEUjExX01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxMV8wICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjExX1BvcykgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxMV8xICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjExX1BvcykgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxMl9Qb3MgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxMl9Nc2sgICAgICAoMHgzVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjEyX1BvcykgICAvKiE8IDB4MDMwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxMiAgICAgICAgICBHUElPX09TUEVFRFJfT1NQRUVEUjEyX01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxMl8wICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjEyX1BvcykgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxMl8xICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjEyX1BvcykgICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxM19Qb3MgICAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxM19Nc2sgICAgICAoMHgzVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjEzX1BvcykgICAvKiE8IDB4MEMwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxMyAgICAgICAgICBHUElPX09TUEVFRFJfT1NQRUVEUjEzX01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxM18wICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjEzX1BvcykgICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxM18xICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjEzX1BvcykgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxNF9Qb3MgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxNF9Nc2sgICAgICAoMHgzVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjE0X1BvcykgICAvKiE8IDB4MzAwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxNCAgICAgICAgICBHUElPX09TUEVFRFJfT1NQRUVEUjE0X01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxNF8wICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjE0X1BvcykgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxNF8xICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjE0X1BvcykgICAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxNV9Qb3MgICAgICAoMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxNV9Nc2sgICAgICAoMHgzVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjE1X1BvcykgICAvKiE8IDB4QzAwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxNSAgICAgICAgICBHUElPX09TUEVFRFJfT1NQRUVEUjE1X01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxNV8wICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjE1X1BvcykgICAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRFIxNV8xICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFRFJfT1NQRUVEUjE1X1BvcykgICAvKiE8IDB4ODAwMDAwMDAgKi8NCg0KLyogT2xkIEJpdCBkZWZpbml0aW9uIGZvciBHUElPX09TUEVFRFIgcmVnaXN0ZXIgbWFpbnRhaW5lZCBmb3IgbGVnYWN5IHB1cnBvc2UgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMCAgICAgR1BJT19PU1BFRURSX09TUEVFRFIwDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjBfMCAgIEdQSU9fT1NQRUVEUl9PU1BFRURSMF8wDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjBfMSAgIEdQSU9fT1NQRUVEUl9PU1BFRURSMF8xDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEgICAgIEdQSU9fT1NQRUVEUl9PU1BFRURSMQ0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxXzAgICBHUElPX09TUEVFRFJfT1NQRUVEUjFfMA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxXzEgICBHUElPX09TUEVFRFJfT1NQRUVEUjFfMQ0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIyICAgICBHUElPX09TUEVFRFJfT1NQRUVEUjINCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMl8wICAgR1BJT19PU1BFRURSX09TUEVFRFIyXzANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMl8xICAgR1BJT19PU1BFRURSX09TUEVFRFIyXzENCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMyAgICAgR1BJT19PU1BFRURSX09TUEVFRFIzDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjNfMCAgIEdQSU9fT1NQRUVEUl9PU1BFRURSM18wDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjNfMSAgIEdQSU9fT1NQRUVEUl9PU1BFRURSM18xDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjQgICAgIEdQSU9fT1NQRUVEUl9PU1BFRURSNA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI0XzAgICBHUElPX09TUEVFRFJfT1NQRUVEUjRfMA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI0XzEgICBHUElPX09TUEVFRFJfT1NQRUVEUjRfMQ0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI1ICAgICBHUElPX09TUEVFRFJfT1NQRUVEUjUNCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSNV8wICAgR1BJT19PU1BFRURSX09TUEVFRFI1XzANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSNV8xICAgR1BJT19PU1BFRURSX09TUEVFRFI1XzENCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSNiAgICAgR1BJT19PU1BFRURSX09TUEVFRFI2DQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjZfMCAgIEdQSU9fT1NQRUVEUl9PU1BFRURSNl8wDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjZfMSAgIEdQSU9fT1NQRUVEUl9PU1BFRURSNl8xDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjcgICAgIEdQSU9fT1NQRUVEUl9PU1BFRURSNw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI3XzAgICBHUElPX09TUEVFRFJfT1NQRUVEUjdfMA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI3XzEgICBHUElPX09TUEVFRFJfT1NQRUVEUjdfMQ0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI4ICAgICBHUElPX09TUEVFRFJfT1NQRUVEUjgNCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSOF8wICAgR1BJT19PU1BFRURSX09TUEVFRFI4XzANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSOF8xICAgR1BJT19PU1BFRURSX09TUEVFRFI4XzENCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSOSAgICAgR1BJT19PU1BFRURSX09TUEVFRFI5DQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjlfMCAgIEdQSU9fT1NQRUVEUl9PU1BFRURSOV8wDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjlfMSAgIEdQSU9fT1NQRUVEUl9PU1BFRURSOV8xDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEwICAgIEdQSU9fT1NQRUVEUl9PU1BFRURSMTANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTBfMCAgR1BJT19PU1BFRURSX09TUEVFRFIxMF8wDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEwXzEgIEdQSU9fT1NQRUVEUl9PU1BFRURSMTBfMQ0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxMSAgICBHUElPX09TUEVFRFJfT1NQRUVEUjExDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjExXzAgIEdQSU9fT1NQRUVEUl9PU1BFRURSMTFfMA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxMV8xICBHUElPX09TUEVFRFJfT1NQRUVEUjExXzENCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTIgICAgR1BJT19PU1BFRURSX09TUEVFRFIxMg0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxMl8wICBHUElPX09TUEVFRFJfT1NQRUVEUjEyXzANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTJfMSAgR1BJT19PU1BFRURSX09TUEVFRFIxMl8xDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEzICAgIEdQSU9fT1NQRUVEUl9PU1BFRURSMTMNCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTNfMCAgR1BJT19PU1BFRURSX09TUEVFRFIxM18wDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEzXzEgIEdQSU9fT1NQRUVEUl9PU1BFRURSMTNfMQ0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxNCAgICBHUElPX09TUEVFRFJfT1NQRUVEUjE0DQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjE0XzAgIEdQSU9fT1NQRUVEUl9PU1BFRURSMTRfMA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxNF8xICBHUElPX09TUEVFRFJfT1NQRUVEUjE0XzENCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTUgICAgR1BJT19PU1BFRURSX09TUEVFRFIxNQ0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxNV8wICBHUElPX09TUEVFRFJfT1NQRUVEUjE1XzANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTVfMSAgR1BJT19PU1BFRURSX09TUEVFRFIxNV8xDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgR1BJT19QVVBEUiByZWdpc3RlciAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIwX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIwX01zayAgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjBfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAzICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIwICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjBfTXNrICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIwXzAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjBfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIwXzEgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjBfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxX1BvcyAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxX01zayAgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDBDICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjFfTXNrICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxXzAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxXzEgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIyX1BvcyAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIyX01zayAgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjJfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIyICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjJfTXNrICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIyXzAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjJfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIyXzEgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjJfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIzX1BvcyAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIzX01zayAgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjNfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMEMwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIzICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjNfTXNrICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIzXzAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjNfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIzXzEgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjNfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI0X1BvcyAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI0X01zayAgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjRfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMzAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI0ICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjRfTXNrICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI0XzAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjRfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI0XzEgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjRfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI1X1BvcyAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI1X01zayAgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwQzAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI1ICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjVfTXNrICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI1XzAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI1XzEgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI2X1BvcyAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI2X01zayAgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjZfUG9zKSAgICAgICAgLyohPCAweDAwMDAzMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI2ICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjZfTXNrICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI2XzAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjZfUG9zKSAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI2XzEgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjZfUG9zKSAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI3X1BvcyAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI3X01zayAgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjdfUG9zKSAgICAgICAgLyohPCAweDAwMDBDMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI3ICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjdfTXNrICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI3XzAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjdfUG9zKSAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI3XzEgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjdfUG9zKSAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI4X1BvcyAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI4X01zayAgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjhfUG9zKSAgICAgICAgLyohPCAweDAwMDMwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI4ICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjhfTXNrICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI4XzAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjhfUG9zKSAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI4XzEgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjhfUG9zKSAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI5X1BvcyAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI5X01zayAgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjlfUG9zKSAgICAgICAgLyohPCAweDAwMEMwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI5ICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjlfTXNrICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI5XzAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjlfUG9zKSAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI5XzEgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjlfUG9zKSAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMF9Qb3MgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMF9Nc2sgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjEwX1BvcykgICAgICAgLyohPCAweDAwMzAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMCAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjEwX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMF8wICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjEwX1BvcykgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMF8xICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjEwX1BvcykgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMV9Qb3MgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMV9Nc2sgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjExX1BvcykgICAgICAgLyohPCAweDAwQzAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMSAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjExX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMV8wICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjExX1BvcykgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMV8xICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjExX1BvcykgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMl9Qb3MgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMl9Nc2sgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjEyX1BvcykgICAgICAgLyohPCAweDAzMDAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMiAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjEyX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMl8wICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjEyX1BvcykgICAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMl8xICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjEyX1BvcykgICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxM19Qb3MgICAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxM19Nc2sgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjEzX1BvcykgICAgICAgLyohPCAweDBDMDAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMyAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjEzX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxM18wICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjEzX1BvcykgICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxM18xICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjEzX1BvcykgICAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNF9Qb3MgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNF9Nc2sgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjE0X1BvcykgICAgICAgLyohPCAweDMwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNCAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjE0X01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNF8wICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjE0X1BvcykgICAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNF8xICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjE0X1BvcykgICAgICAgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNV9Qb3MgICAgICAgICAgKDMwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNV9Nc2sgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjE1X1BvcykgICAgICAgLyohPCAweEMwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNSAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjE1X01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNV8wICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjE1X1BvcykgICAgICAgLyohPCAweDQwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNV8xICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjE1X1BvcykgICAgICAgLyohPCAweDgwMDAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgR1BJT19JRFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEdQSU9fSURSXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSXzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSXzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSXzQgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSXzUgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSXzYgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwNDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSXzcgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwODBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSXzggICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAxMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSXzkgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAyMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSXzEwICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSXzExICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDA4MDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSXzEyICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSXzEzICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSXzE0ICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSXzE1ICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBHUElPX09EUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEdQSU9fT0RSXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSXzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSXzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSXzQgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSXzUgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSXzYgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwNDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSXzcgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwODBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSXzggICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAxMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSXzkgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAyMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSXzEwICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSXzExICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDA4MDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSXzEyICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSXzEzICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSXzE0ICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSXzE1ICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKiogQml0IGRlZmluaXRpb24gZm9yIEdQSU9fQlNSUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEdQSU9fQlNSUl9CU18wICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU18xICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU18yICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU18zICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU180ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU181ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU182ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwNDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU183ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwODBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU184ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAxMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU185ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAyMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU18xMCAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU18xMSAgICAgICAgICAgICAgICAgKDB4MDAwMDA4MDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU18xMiAgICAgICAgICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU18xMyAgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU18xNCAgICAgICAgICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU18xNSAgICAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl8wICAgICAgICAgICAgICAgICAgKDB4MDAwMTAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl8xICAgICAgICAgICAgICAgICAgKDB4MDAwMjAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl8yICAgICAgICAgICAgICAgICAgKDB4MDAwNDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl8zICAgICAgICAgICAgICAgICAgKDB4MDAwODAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl80ICAgICAgICAgICAgICAgICAgKDB4MDAxMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl81ICAgICAgICAgICAgICAgICAgKDB4MDAyMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl82ICAgICAgICAgICAgICAgICAgKDB4MDA0MDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl83ICAgICAgICAgICAgICAgICAgKDB4MDA4MDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl84ICAgICAgICAgICAgICAgICAgKDB4MDEwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl85ICAgICAgICAgICAgICAgICAgKDB4MDIwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl8xMCAgICAgICAgICAgICAgICAgKDB4MDQwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl8xMSAgICAgICAgICAgICAgICAgKDB4MDgwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl8xMiAgICAgICAgICAgICAgICAgKDB4MTAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl8xMyAgICAgICAgICAgICAgICAgKDB4MjAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl8xNCAgICAgICAgICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl8xNSAgICAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKiogQml0IGRlZmluaXRpb24gZm9yIEdQSU9fTENLUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0swX1BvcyAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0swX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzBfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0swICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzBfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxX1BvcyAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzFfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0syX1BvcyAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0syX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0syICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzJfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0szX1BvcyAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0szX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzNfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0szICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzNfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s0X1BvcyAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s0X01zayAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzRfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s0ICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzRfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s1X1BvcyAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s1X01zayAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s1ICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzVfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s2X1BvcyAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s2X01zayAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s2ICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzZfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s3X1BvcyAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s3X01zayAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s3ICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzdfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s4X1BvcyAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s4X01zayAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzhfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s4ICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzhfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s5X1BvcyAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s5X01zayAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzlfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s5ICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzlfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMF9Qb3MgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMF9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzEwX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMCAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzEwX01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMV9Qb3MgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMV9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzExX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMSAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzExX01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMl9Qb3MgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMl9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzEyX1BvcykgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMiAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzEyX01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxM19Qb3MgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxM19Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzEzX1BvcykgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMyAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzEzX01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxNF9Qb3MgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxNF9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzE0X1BvcykgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxNCAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzE0X01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxNV9Qb3MgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxNV9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzE1X1BvcykgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxNSAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzE1X01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0tLX1BvcyAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0tLX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDS0tfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0tLICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDS0tfTXNrICAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKiogQml0IGRlZmluaXRpb24gZm9yIEdQSU9fQUZSTCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDBfUG9zICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDBfTXNrICAgICAgICAgICAgKDB4RlUgPDwgR1BJT19BRlJMX0FGU0VMMF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDAgICAgICAgICAgICAgICAgR1BJT19BRlJMX0FGU0VMMF9Nc2sgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUwxX1BvcyAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUwxX01zayAgICAgICAgICAgICgweEZVIDw8IEdQSU9fQUZSTF9BRlNFTDFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDBGMCAqLw0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUwxICAgICAgICAgICAgICAgIEdQSU9fQUZSTF9BRlNFTDFfTXNrICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMl9Qb3MgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMl9Nc2sgICAgICAgICAgICAoMHhGVSA8PCBHUElPX0FGUkxfQUZTRUwyX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMiAgICAgICAgICAgICAgICBHUElPX0FGUkxfQUZTRUwyX01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDNfUG9zICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDNfTXNrICAgICAgICAgICAgKDB4RlUgPDwgR1BJT19BRlJMX0FGU0VMM19Qb3MpICAgICAgICAgLyohPCAweDAwMDBGMDAwICovDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDMgICAgICAgICAgICAgICAgR1BJT19BRlJMX0FGU0VMM19Nc2sgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUw0X1BvcyAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUw0X01zayAgICAgICAgICAgICgweEZVIDw8IEdQSU9fQUZSTF9BRlNFTDRfUG9zKSAgICAgICAgIC8qITwgMHgwMDBGMDAwMCAqLw0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUw0ICAgICAgICAgICAgICAgIEdQSU9fQUZSTF9BRlNFTDRfTXNrICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNV9Qb3MgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNV9Nc2sgICAgICAgICAgICAoMHhGVSA8PCBHUElPX0FGUkxfQUZTRUw1X1BvcykgICAgICAgICAvKiE8IDB4MDBGMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNSAgICAgICAgICAgICAgICBHUElPX0FGUkxfQUZTRUw1X01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDZfUG9zICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDZfTXNrICAgICAgICAgICAgKDB4RlUgPDwgR1BJT19BRlJMX0FGU0VMNl9Qb3MpICAgICAgICAgLyohPCAweDBGMDAwMDAwICovDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDYgICAgICAgICAgICAgICAgR1BJT19BRlJMX0FGU0VMNl9Nc2sgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUw3X1BvcyAgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUw3X01zayAgICAgICAgICAgICgweEZVIDw8IEdQSU9fQUZSTF9BRlNFTDdfUG9zKSAgICAgICAgIC8qITwgMHhGMDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUw3ICAgICAgICAgICAgICAgIEdQSU9fQUZSTF9BRlNFTDdfTXNrICANCg0KLyogTGVnYWN5IGFsaWFzZXMgKi8gICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGUkwwX1BvcyAgICAgICAgICAgICBHUElPX0FGUkxfQUZTRUwwX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGUkwwX01zayAgICAgICAgICAgICBHUElPX0FGUkxfQUZTRUwwX01zaw0KI2RlZmluZSBHUElPX0FGUkxfQUZSTDAgICAgICAgICAgICAgICAgIEdQSU9fQUZSTF9BRlNFTDANCiNkZWZpbmUgR1BJT19BRlJMX0FGUkwxX1BvcyAgICAgICAgICAgICBHUElPX0FGUkxfQUZTRUwxX1Bvcw0KI2RlZmluZSBHUElPX0FGUkxfQUZSTDFfTXNrICAgICAgICAgICAgIEdQSU9fQUZSTF9BRlNFTDFfTXNrDQojZGVmaW5lIEdQSU9fQUZSTF9BRlJMMSAgICAgICAgICAgICAgICAgR1BJT19BRlJMX0FGU0VMMQ0KI2RlZmluZSBHUElPX0FGUkxfQUZSTDJfUG9zICAgICAgICAgICAgIEdQSU9fQUZSTF9BRlNFTDJfUG9zDQojZGVmaW5lIEdQSU9fQUZSTF9BRlJMMl9Nc2sgICAgICAgICAgICAgR1BJT19BRlJMX0FGU0VMMl9Nc2sNCiNkZWZpbmUgR1BJT19BRlJMX0FGUkwyICAgICAgICAgICAgICAgICBHUElPX0FGUkxfQUZTRUwyDQojZGVmaW5lIEdQSU9fQUZSTF9BRlJMM19Qb3MgICAgICAgICAgICAgR1BJT19BRlJMX0FGU0VMM19Qb3MNCiNkZWZpbmUgR1BJT19BRlJMX0FGUkwzX01zayAgICAgICAgICAgICBHUElPX0FGUkxfQUZTRUwzX01zaw0KI2RlZmluZSBHUElPX0FGUkxfQUZSTDMgICAgICAgICAgICAgICAgIEdQSU9fQUZSTF9BRlNFTDMNCiNkZWZpbmUgR1BJT19BRlJMX0FGUkw0X1BvcyAgICAgICAgICAgICBHUElPX0FGUkxfQUZTRUw0X1Bvcw0KI2RlZmluZSBHUElPX0FGUkxfQUZSTDRfTXNrICAgICAgICAgICAgIEdQSU9fQUZSTF9BRlNFTDRfTXNrDQojZGVmaW5lIEdQSU9fQUZSTF9BRlJMNCAgICAgICAgICAgICAgICAgR1BJT19BRlJMX0FGU0VMNA0KI2RlZmluZSBHUElPX0FGUkxfQUZSTDVfUG9zICAgICAgICAgICAgIEdQSU9fQUZSTF9BRlNFTDVfUG9zDQojZGVmaW5lIEdQSU9fQUZSTF9BRlJMNV9Nc2sgICAgICAgICAgICAgR1BJT19BRlJMX0FGU0VMNV9Nc2sNCiNkZWZpbmUgR1BJT19BRlJMX0FGUkw1ICAgICAgICAgICAgICAgICBHUElPX0FGUkxfQUZTRUw1DQojZGVmaW5lIEdQSU9fQUZSTF9BRlJMNl9Qb3MgICAgICAgICAgICAgR1BJT19BRlJMX0FGU0VMNl9Qb3MNCiNkZWZpbmUgR1BJT19BRlJMX0FGUkw2X01zayAgICAgICAgICAgICBHUElPX0FGUkxfQUZTRUw2X01zaw0KI2RlZmluZSBHUElPX0FGUkxfQUZSTDYgICAgICAgICAgICAgICAgIEdQSU9fQUZSTF9BRlNFTDYNCiNkZWZpbmUgR1BJT19BRlJMX0FGUkw3X1BvcyAgICAgICAgICAgICBHUElPX0FGUkxfQUZTRUw3X1Bvcw0KI2RlZmluZSBHUElPX0FGUkxfQUZSTDdfTXNrICAgICAgICAgICAgIEdQSU9fQUZSTF9BRlNFTDdfTXNrDQojZGVmaW5lIEdQSU9fQUZSTF9BRlJMNyAgICAgICAgICAgICAgICAgR1BJT19BRlJMX0FGU0VMNw0KIA0KLyoqKioqKioqKioqKioqKioqKiBCaXQgZGVmaW5pdGlvbiBmb3IgR1BJT19BRlJIIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMOF9Qb3MgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMOF9Nc2sgICAgICAgICAgICAoMHhGVSA8PCBHUElPX0FGUkhfQUZTRUw4X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMOCAgICAgICAgICAgICAgICBHUElPX0FGUkhfQUZTRUw4X01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDlfUG9zICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDlfTXNrICAgICAgICAgICAgKDB4RlUgPDwgR1BJT19BRlJIX0FGU0VMOV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMEYwICovDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDkgICAgICAgICAgICAgICAgR1BJT19BRlJIX0FGU0VMOV9Nc2sgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxMF9Qb3MgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxMF9Nc2sgICAgICAgICAgICgweEZVIDw8IEdQSU9fQUZSSF9BRlNFTDEwX1BvcykgICAgICAgIC8qITwgMHgwMDAwMEYwMCAqLw0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxMCAgICAgICAgICAgICAgIEdQSU9fQUZSSF9BRlNFTDEwX01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDExX1BvcyAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDExX01zayAgICAgICAgICAgKDB4RlUgPDwgR1BJT19BRlJIX0FGU0VMMTFfUG9zKSAgICAgICAgLyohPCAweDAwMDBGMDAwICovDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDExICAgICAgICAgICAgICAgR1BJT19BRlJIX0FGU0VMMTFfTXNrICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTJfUG9zICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTJfTXNrICAgICAgICAgICAoMHhGVSA8PCBHUElPX0FGUkhfQUZTRUwxMl9Qb3MpICAgICAgICAvKiE8IDB4MDAwRjAwMDAgKi8NCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTIgICAgICAgICAgICAgICBHUElPX0FGUkhfQUZTRUwxMl9Nc2sgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxM19Qb3MgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxM19Nc2sgICAgICAgICAgICgweEZVIDw8IEdQSU9fQUZSSF9BRlNFTDEzX1BvcykgICAgICAgIC8qITwgMHgwMEYwMDAwMCAqLw0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxMyAgICAgICAgICAgICAgIEdQSU9fQUZSSF9BRlNFTDEzX01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDE0X1BvcyAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDE0X01zayAgICAgICAgICAgKDB4RlUgPDwgR1BJT19BRlJIX0FGU0VMMTRfUG9zKSAgICAgICAgLyohPCAweDBGMDAwMDAwICovDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDE0ICAgICAgICAgICAgICAgR1BJT19BRlJIX0FGU0VMMTRfTXNrICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTVfUG9zICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTVfTXNrICAgICAgICAgICAoMHhGVSA8PCBHUElPX0FGUkhfQUZTRUwxNV9Qb3MpICAgICAgICAvKiE8IDB4RjAwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTUgICAgICAgICAgICAgICBHUElPX0FGUkhfQUZTRUwxNV9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKiBMZWdhY3kgYWxpYXNlcyAqLyAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkhfQUZSSDBfUG9zICAgICAgICAgICAgIEdQSU9fQUZSSF9BRlNFTDhfUG9zDQojZGVmaW5lIEdQSU9fQUZSSF9BRlJIMF9Nc2sgICAgICAgICAgICAgR1BJT19BRlJIX0FGU0VMOF9Nc2sNCiNkZWZpbmUgR1BJT19BRlJIX0FGUkgwICAgICAgICAgICAgICAgICBHUElPX0FGUkhfQUZTRUw4DQojZGVmaW5lIEdQSU9fQUZSSF9BRlJIMV9Qb3MgICAgICAgICAgICAgR1BJT19BRlJIX0FGU0VMOV9Qb3MNCiNkZWZpbmUgR1BJT19BRlJIX0FGUkgxX01zayAgICAgICAgICAgICBHUElPX0FGUkhfQUZTRUw5X01zaw0KI2RlZmluZSBHUElPX0FGUkhfQUZSSDEgICAgICAgICAgICAgICAgIEdQSU9fQUZSSF9BRlNFTDkNCiNkZWZpbmUgR1BJT19BRlJIX0FGUkgyX1BvcyAgICAgICAgICAgICBHUElPX0FGUkhfQUZTRUwxMF9Qb3MNCiNkZWZpbmUgR1BJT19BRlJIX0FGUkgyX01zayAgICAgICAgICAgICBHUElPX0FGUkhfQUZTRUwxMF9Nc2sNCiNkZWZpbmUgR1BJT19BRlJIX0FGUkgyICAgICAgICAgICAgICAgICBHUElPX0FGUkhfQUZTRUwxMA0KI2RlZmluZSBHUElPX0FGUkhfQUZSSDNfUG9zICAgICAgICAgICAgIEdQSU9fQUZSSF9BRlNFTDExX1Bvcw0KI2RlZmluZSBHUElPX0FGUkhfQUZSSDNfTXNrICAgICAgICAgICAgIEdQSU9fQUZSSF9BRlNFTDExX01zaw0KI2RlZmluZSBHUElPX0FGUkhfQUZSSDMgICAgICAgICAgICAgICAgIEdQSU9fQUZSSF9BRlNFTDExDQojZGVmaW5lIEdQSU9fQUZSSF9BRlJINF9Qb3MgICAgICAgICAgICAgR1BJT19BRlJIX0FGU0VMMTJfUG9zDQojZGVmaW5lIEdQSU9fQUZSSF9BRlJINF9Nc2sgICAgICAgICAgICAgR1BJT19BRlJIX0FGU0VMMTJfTXNrDQojZGVmaW5lIEdQSU9fQUZSSF9BRlJINCAgICAgICAgICAgICAgICAgR1BJT19BRlJIX0FGU0VMMTINCiNkZWZpbmUgR1BJT19BRlJIX0FGUkg1X1BvcyAgICAgICAgICAgICBHUElPX0FGUkhfQUZTRUwxM19Qb3MNCiNkZWZpbmUgR1BJT19BRlJIX0FGUkg1X01zayAgICAgICAgICAgICBHUElPX0FGUkhfQUZTRUwxM19Nc2sNCiNkZWZpbmUgR1BJT19BRlJIX0FGUkg1ICAgICAgICAgICAgICAgICBHUElPX0FGUkhfQUZTRUwxMw0KI2RlZmluZSBHUElPX0FGUkhfQUZSSDZfUG9zICAgICAgICAgICAgIEdQSU9fQUZSSF9BRlNFTDE0X1Bvcw0KI2RlZmluZSBHUElPX0FGUkhfQUZSSDZfTXNrICAgICAgICAgICAgIEdQSU9fQUZSSF9BRlNFTDE0X01zaw0KI2RlZmluZSBHUElPX0FGUkhfQUZSSDYgICAgICAgICAgICAgICAgIEdQSU9fQUZSSF9BRlNFTDE0DQojZGVmaW5lIEdQSU9fQUZSSF9BRlJIN19Qb3MgICAgICAgICAgICAgR1BJT19BRlJIX0FGU0VMMTVfUG9zDQojZGVmaW5lIEdQSU9fQUZSSF9BRlJIN19Nc2sgICAgICAgICAgICAgR1BJT19BRlJIX0FGU0VMMTVfTXNrDQojZGVmaW5lIEdQSU9fQUZSSF9BRlJINyAgICAgICAgICAgICAgICAgR1BJT19BRlJIX0FGU0VMMTUNCg0KLyoqKioqKioqKioqKioqKioqKiBCaXQgZGVmaW5pdGlvbiBmb3IgR1BJT19CUlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgR1BJT19CUlJfQlJfMCAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfMSAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfMiAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwNFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfMyAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfNCAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfNSAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfNiAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA0MFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfNyAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA4MFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfOCAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfOSAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDIwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfMTAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfMTEgICAgICAgICAgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfMTIgICAgICAgICAgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfMTMgICAgICAgICAgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfMTQgICAgICAgICAgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfMTUgICAgICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICBJbnRlci1pbnRlZ3JhdGVkIENpcmN1aXQgSW50ZXJmYWNlIChJMkMpICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgSTJDX0NSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSTJDX0NSMV9QRV9Qb3MgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9QRV9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IxX1BFX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgSTJDX0NSMV9QRSAgICAgICAgICAgICAgICAgICBJMkNfQ1IxX1BFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBlcmlwaGVyYWwgZW5hYmxlICovDQojZGVmaW5lIEkyQ19DUjFfVFhJRV9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19DUjFfVFhJRV9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMV9UWElFX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEkyQ19DUjFfVFhJRSAgICAgICAgICAgICAgICAgSTJDX0NSMV9UWElFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBUWCBpbnRlcnJ1cHQgZW5hYmxlICovDQojZGVmaW5lIEkyQ19DUjFfUlhJRV9Qb3MgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19DUjFfUlhJRV9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMV9SWElFX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEkyQ19DUjFfUlhJRSAgICAgICAgICAgICAgICAgSTJDX0NSMV9SWElFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSWCBpbnRlcnJ1cHQgZW5hYmxlICovDQojZGVmaW5lIEkyQ19DUjFfQUREUklFX1BvcyAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19DUjFfQUREUklFX01zayAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMV9BRERSSUVfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEkyQ19DUjFfQUREUklFICAgICAgICAgICAgICAgSTJDX0NSMV9BRERSSUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBZGRyZXNzIG1hdGNoIGludGVycnVwdCBlbmFibGUgKi8NCiNkZWZpbmUgSTJDX0NSMV9OQUNLSUVfUG9zICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9OQUNLSUVfTXNrICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IxX05BQ0tJRV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgSTJDX0NSMV9OQUNLSUUgICAgICAgICAgICAgICBJMkNfQ1IxX05BQ0tJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE5BQ0sgcmVjZWl2ZWQgaW50ZXJydXB0IGVuYWJsZSAqLw0KI2RlZmluZSBJMkNfQ1IxX1NUT1BJRV9Qb3MgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX1NUT1BJRV9Nc2sgICAgICAgICAgICgweDFVIDw8IEkyQ19DUjFfU1RPUElFX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBJMkNfQ1IxX1NUT1BJRSAgICAgICAgICAgICAgIEkyQ19DUjFfU1RPUElFX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1RPUCBkZXRlY3Rpb24gaW50ZXJydXB0IGVuYWJsZSAqLw0KI2RlZmluZSBJMkNfQ1IxX1RDSUVfUG9zICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX1RDSUVfTXNrICAgICAgICAgICAgICgweDFVIDw8IEkyQ19DUjFfVENJRV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBJMkNfQ1IxX1RDSUUgICAgICAgICAgICAgICAgIEkyQ19DUjFfVENJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNmZXIgY29tcGxldGUgaW50ZXJydXB0IGVuYWJsZSAqLw0KI2RlZmluZSBJMkNfQ1IxX0VSUklFX1BvcyAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX0VSUklFX01zayAgICAgICAgICAgICgweDFVIDw8IEkyQ19DUjFfRVJSSUVfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBJMkNfQ1IxX0VSUklFICAgICAgICAgICAgICAgIEkyQ19DUjFfRVJSSUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRXJyb3JzIGludGVycnVwdCBlbmFibGUgKi8NCiNkZWZpbmUgSTJDX0NSMV9ETkZfUG9zICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9ETkZfTXNrICAgICAgICAgICAgICAoMHhGVSA8PCBJMkNfQ1IxX0RORl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgSTJDX0NSMV9ETkYgICAgICAgICAgICAgICAgICBJMkNfQ1IxX0RORl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IERpZ2l0YWwgbm9pc2UgZmlsdGVyICovDQojZGVmaW5lIEkyQ19DUjFfQU5GT0ZGX1BvcyAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19DUjFfQU5GT0ZGX01zayAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMV9BTkZPRkZfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEkyQ19DUjFfQU5GT0ZGICAgICAgICAgICAgICAgSTJDX0NSMV9BTkZPRkZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBbmFsb2cgbm9pc2UgZmlsdGVyIE9GRiAqLw0KI2RlZmluZSBJMkNfQ1IxX1NXUlNUX1BvcyAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX1NXUlNUX01zayAgICAgICAgICAgICgweDFVIDw8IEkyQ19DUjFfU1dSU1RfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBJMkNfQ1IxX1NXUlNUICAgICAgICAgICAgICAgIEkyQ19DUjFfU1dSU1RfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgcmVzZXQgKi8NCiNkZWZpbmUgSTJDX0NSMV9UWERNQUVOX1BvcyAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9UWERNQUVOX01zayAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IxX1RYRE1BRU5fUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgSTJDX0NSMV9UWERNQUVOICAgICAgICAgICAgICBJMkNfQ1IxX1RYRE1BRU5fTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IERNQSB0cmFuc21pc3Npb24gcmVxdWVzdHMgZW5hYmxlICovDQojZGVmaW5lIEkyQ19DUjFfUlhETUFFTl9Qb3MgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19DUjFfUlhETUFFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMV9SWERNQUVOX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEkyQ19DUjFfUlhETUFFTiAgICAgICAgICAgICAgSTJDX0NSMV9SWERNQUVOX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBETUEgcmVjZXB0aW9uIHJlcXVlc3RzIGVuYWJsZSAqLw0KI2RlZmluZSBJMkNfQ1IxX1NCQ19Qb3MgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX1NCQ19Nc2sgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19DUjFfU0JDX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBJMkNfQ1IxX1NCQyAgICAgICAgICAgICAgICAgIEkyQ19DUjFfU0JDX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU2xhdmUgYnl0ZSBjb250cm9sICovDQojZGVmaW5lIEkyQ19DUjFfTk9TVFJFVENIX1BvcyAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19DUjFfTk9TVFJFVENIX01zayAgICAgICAgKDB4MVUgPDwgSTJDX0NSMV9OT1NUUkVUQ0hfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIEkyQ19DUjFfTk9TVFJFVENIICAgICAgICAgICAgSTJDX0NSMV9OT1NUUkVUQ0hfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBDbG9jayBzdHJldGNoaW5nIGRpc2FibGUgKi8NCiNkZWZpbmUgSTJDX0NSMV9XVVBFTl9Qb3MgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9XVVBFTl9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IxX1dVUEVOX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgSTJDX0NSMV9XVVBFTiAgICAgICAgICAgICAgICBJMkNfQ1IxX1dVUEVOX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFdha2V1cCBmcm9tIFNUT1AgZW5hYmxlICovDQojZGVmaW5lIEkyQ19DUjFfR0NFTl9Qb3MgICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19DUjFfR0NFTl9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMV9HQ0VOX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIEkyQ19DUjFfR0NFTiAgICAgICAgICAgICAgICAgSTJDX0NSMV9HQ0VOX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHZW5lcmFsIGNhbGwgZW5hYmxlICovDQojZGVmaW5lIEkyQ19DUjFfU01CSEVOX1BvcyAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19DUjFfU01CSEVOX01zayAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMV9TTUJIRU5fUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIEkyQ19DUjFfU01CSEVOICAgICAgICAgICAgICAgSTJDX0NSMV9TTUJIRU5fTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTTUJ1cyBob3N0IGFkZHJlc3MgZW5hYmxlICovDQojZGVmaW5lIEkyQ19DUjFfU01CREVOX1BvcyAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19DUjFfU01CREVOX01zayAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMV9TTUJERU5fUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIEkyQ19DUjFfU01CREVOICAgICAgICAgICAgICAgSTJDX0NSMV9TTUJERU5fTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTTUJ1cyBkZXZpY2UgZGVmYXVsdCBhZGRyZXNzIGVuYWJsZSAqLw0KI2RlZmluZSBJMkNfQ1IxX0FMRVJURU5fUG9zICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX0FMRVJURU5fTXNrICAgICAgICAgICgweDFVIDw8IEkyQ19DUjFfQUxFUlRFTl9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBJMkNfQ1IxX0FMRVJURU4gICAgICAgICAgICAgIEkyQ19DUjFfQUxFUlRFTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU01CdXMgYWxlcnQgZW5hYmxlICovDQojZGVmaW5lIEkyQ19DUjFfUEVDRU5fUG9zICAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19DUjFfUEVDRU5fTXNrICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMV9QRUNFTl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIEkyQ19DUjFfUEVDRU4gICAgICAgICAgICAgICAgSTJDX0NSMV9QRUNFTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRUMgZW5hYmxlICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJMkNfQ1IyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSTJDX0NSMl9TQUREX1BvcyAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMl9TQUREX01zayAgICAgICAgICAgICAoMHgzRkZVIDw8IEkyQ19DUjJfU0FERF9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAzRkYgKi8NCiNkZWZpbmUgSTJDX0NSMl9TQUREICAgICAgICAgICAgICAgICBJMkNfQ1IyX1NBRERfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNsYXZlIGFkZHJlc3MgKG1hc3RlciBtb2RlKSAqLw0KI2RlZmluZSBJMkNfQ1IyX1JEX1dSTl9Qb3MgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IyX1JEX1dSTl9Nc2sgICAgICAgICAgICgweDFVIDw8IEkyQ19DUjJfUkRfV1JOX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBJMkNfQ1IyX1JEX1dSTiAgICAgICAgICAgICAgIEkyQ19DUjJfUkRfV1JOX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNmZXIgZGlyZWN0aW9uIChtYXN0ZXIgbW9kZSkgKi8NCiNkZWZpbmUgSTJDX0NSMl9BREQxMF9Qb3MgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMl9BREQxMF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IyX0FERDEwX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgSTJDX0NSMl9BREQxMCAgICAgICAgICAgICAgICBJMkNfQ1IyX0FERDEwX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IDEwLWJpdCBhZGRyZXNzaW5nIG1vZGUgKG1hc3RlciBtb2RlKSAqLw0KI2RlZmluZSBJMkNfQ1IyX0hFQUQxMFJfUG9zICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IyX0hFQUQxMFJfTXNrICAgICAgICAgICgweDFVIDw8IEkyQ19DUjJfSEVBRDEwUl9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBJMkNfQ1IyX0hFQUQxMFIgICAgICAgICAgICAgIEkyQ19DUjJfSEVBRDEwUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgMTAtYml0IGFkZHJlc3MgaGVhZGVyIG9ubHkgcmVhZCBkaXJlY3Rpb24gKG1hc3RlciBtb2RlKSAqLw0KI2RlZmluZSBJMkNfQ1IyX1NUQVJUX1BvcyAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IyX1NUQVJUX01zayAgICAgICAgICAgICgweDFVIDw8IEkyQ19DUjJfU1RBUlRfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBJMkNfQ1IyX1NUQVJUICAgICAgICAgICAgICAgIEkyQ19DUjJfU1RBUlRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1RBUlQgZ2VuZXJhdGlvbiAqLw0KI2RlZmluZSBJMkNfQ1IyX1NUT1BfUG9zICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IyX1NUT1BfTXNrICAgICAgICAgICAgICgweDFVIDw8IEkyQ19DUjJfU1RPUF9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBJMkNfQ1IyX1NUT1AgICAgICAgICAgICAgICAgIEkyQ19DUjJfU1RPUF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1RPUCBnZW5lcmF0aW9uIChtYXN0ZXIgbW9kZSkgKi8NCiNkZWZpbmUgSTJDX0NSMl9OQUNLX1BvcyAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMl9OQUNLX01zayAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IyX05BQ0tfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgSTJDX0NSMl9OQUNLICAgICAgICAgICAgICAgICBJMkNfQ1IyX05BQ0tfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE5BQ0sgZ2VuZXJhdGlvbiAoc2xhdmUgbW9kZSkgKi8NCiNkZWZpbmUgSTJDX0NSMl9OQllURVNfUG9zICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMl9OQllURVNfTXNrICAgICAgICAgICAoMHhGRlUgPDwgSTJDX0NSMl9OQllURVNfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDBGRjAwMDAgKi8NCiNkZWZpbmUgSTJDX0NSMl9OQllURVMgICAgICAgICAgICAgICBJMkNfQ1IyX05CWVRFU19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE51bWJlciBvZiBieXRlcyAqLw0KI2RlZmluZSBJMkNfQ1IyX1JFTE9BRF9Qb3MgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IyX1JFTE9BRF9Nc2sgICAgICAgICAgICgweDFVIDw8IEkyQ19DUjJfUkVMT0FEX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBJMkNfQ1IyX1JFTE9BRCAgICAgICAgICAgICAgIEkyQ19DUjJfUkVMT0FEX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTkJZVEVTIHJlbG9hZCBtb2RlICovDQojZGVmaW5lIEkyQ19DUjJfQVVUT0VORF9Qb3MgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19DUjJfQVVUT0VORF9Nc2sgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMl9BVVRPRU5EX1BvcykgICAgICAgICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIEkyQ19DUjJfQVVUT0VORCAgICAgICAgICAgICAgSTJDX0NSMl9BVVRPRU5EX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBdXRvbWF0aWMgZW5kIG1vZGUgKG1hc3RlciBtb2RlKSAqLw0KI2RlZmluZSBJMkNfQ1IyX1BFQ0JZVEVfUG9zICAgICAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IyX1BFQ0JZVEVfTXNrICAgICAgICAgICgweDFVIDw8IEkyQ19DUjJfUEVDQllURV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBJMkNfQ1IyX1BFQ0JZVEUgICAgICAgICAgICAgIEkyQ19DUjJfUEVDQllURV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGFja2V0IGVycm9yIGNoZWNraW5nIGJ5dGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJMkNfT0FSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJMkNfT0FSMV9PQTFfUG9zICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfT0FSMV9PQTFfTXNrICAgICAgICAgICAgICgweDNGRlUgPDwgSTJDX09BUjFfT0ExX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDNGRiAqLw0KI2RlZmluZSBJMkNfT0FSMV9PQTEgICAgICAgICAgICAgICAgIEkyQ19PQVIxX09BMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJmYWNlIG93biBhZGRyZXNzIDEgKi8NCiNkZWZpbmUgSTJDX09BUjFfT0ExTU9ERV9Qb3MgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX09BUjFfT0ExTU9ERV9Nc2sgICAgICAgICAoMHgxVSA8PCBJMkNfT0FSMV9PQTFNT0RFX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgSTJDX09BUjFfT0ExTU9ERSAgICAgICAgICAgICBJMkNfT0FSMV9PQTFNT0RFX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IE93biBhZGRyZXNzIDEgMTAtYml0IG1vZGUgKi8NCiNkZWZpbmUgSTJDX09BUjFfT0ExRU5fUG9zICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX09BUjFfT0ExRU5fTXNrICAgICAgICAgICAoMHgxVSA8PCBJMkNfT0FSMV9PQTFFTl9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgSTJDX09BUjFfT0ExRU4gICAgICAgICAgICAgICBJMkNfT0FSMV9PQTFFTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE93biBhZGRyZXNzIDEgZW5hYmxlICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgSTJDX09BUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSTJDX09BUjJfT0EyX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX09BUjJfT0EyX01zayAgICAgICAgICAgICAoMHg3RlUgPDwgSTJDX09BUjJfT0EyX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwRkUgKi8NCiNkZWZpbmUgSTJDX09BUjJfT0EyICAgICAgICAgICAgICAgICBJMkNfT0FSMl9PQTJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEludGVyZmFjZSBvd24gYWRkcmVzcyAyICovDQojZGVmaW5lIEkyQ19PQVIyX09BMk1TS19Qb3MgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19PQVIyX09BMk1TS19Nc2sgICAgICAgICAgKDB4N1UgPDwgSTJDX09BUjJfT0EyTVNLX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwNzAwICovDQojZGVmaW5lIEkyQ19PQVIyX09BMk1TSyAgICAgICAgICAgICAgSTJDX09BUjJfT0EyTVNLX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBPd24gYWRkcmVzcyAyIG1hc2tzICovDQojZGVmaW5lIEkyQ19PQVIyX09BMk5PTUFTSyAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBObyBtYXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQojZGVmaW5lIEkyQ19PQVIyX09BMk1BU0swMV9Qb3MgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19PQVIyX09BMk1BU0swMV9Nc2sgICAgICAgKDB4MVUgPDwgSTJDX09BUjJfT0EyTUFTSzAxX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEkyQ19PQVIyX09BMk1BU0swMSAgICAgICAgICAgSTJDX09BUjJfT0EyTUFTSzAxX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBPQTJbMV0gaXMgbWFza2VkLCBPbmx5IE9BMls3OjJdIGFyZSBjb21wYXJlZCAgICovDQojZGVmaW5lIEkyQ19PQVIyX09BMk1BU0swMl9Qb3MgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19PQVIyX09BMk1BU0swMl9Nc2sgICAgICAgKDB4MVUgPDwgSTJDX09BUjJfT0EyTUFTSzAyX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEkyQ19PQVIyX09BMk1BU0swMiAgICAgICAgICAgSTJDX09BUjJfT0EyTUFTSzAyX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBPQTJbMjoxXSBpcyBtYXNrZWQsIE9ubHkgT0EyWzc6M10gYXJlIGNvbXBhcmVkICovDQojZGVmaW5lIEkyQ19PQVIyX09BMk1BU0swM19Qb3MgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19PQVIyX09BMk1BU0swM19Nc2sgICAgICAgKDB4M1UgPDwgSTJDX09BUjJfT0EyTUFTSzAzX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMzAwICovDQojZGVmaW5lIEkyQ19PQVIyX09BMk1BU0swMyAgICAgICAgICAgSTJDX09BUjJfT0EyTUFTSzAzX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBPQTJbMzoxXSBpcyBtYXNrZWQsIE9ubHkgT0EyWzc6NF0gYXJlIGNvbXBhcmVkICovDQojZGVmaW5lIEkyQ19PQVIyX09BMk1BU0swNF9Qb3MgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19PQVIyX09BMk1BU0swNF9Nc2sgICAgICAgKDB4MVUgPDwgSTJDX09BUjJfT0EyTUFTSzA0X1BvcykgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEkyQ19PQVIyX09BMk1BU0swNCAgICAgICAgICAgSTJDX09BUjJfT0EyTUFTSzA0X01zayAgICAgICAgICAgICAgICAgICAgLyohPCBPQTJbNDoxXSBpcyBtYXNrZWQsIE9ubHkgT0EyWzc6NV0gYXJlIGNvbXBhcmVkICovDQojZGVmaW5lIEkyQ19PQVIyX09BMk1BU0swNV9Qb3MgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19PQVIyX09BMk1BU0swNV9Nc2sgICAgICAgKDB4NVUgPDwgSTJDX09BUjJfT0EyTUFTSzA1X1BvcykgICAgICAgICAgLyohPCAweDAwMDAwNTAwICovDQojZGVmaW5lIEkyQ19PQVIyX09BMk1BU0swNSAgICAgICAgICAgSTJDX09BUjJfT0EyTUFTSzA1X01zayAgICAgICAgICAgICAgICAgICAgLyohPCBPQTJbNToxXSBpcyBtYXNrZWQsIE9ubHkgT0EyWzc6Nl0gYXJlIGNvbXBhcmVkICovDQojZGVmaW5lIEkyQ19PQVIyX09BMk1BU0swNl9Qb3MgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19PQVIyX09BMk1BU0swNl9Nc2sgICAgICAgKDB4M1UgPDwgSTJDX09BUjJfT0EyTUFTSzA2X1BvcykgICAgICAgICAgLyohPCAweDAwMDAwNjAwICovDQojZGVmaW5lIEkyQ19PQVIyX09BMk1BU0swNiAgICAgICAgICAgSTJDX09BUjJfT0EyTUFTSzA2X01zayAgICAgICAgICAgICAgICAgICAgLyohPCBPQTJbNjoxXSBpcyBtYXNrZWQsIE9ubHkgT0EyWzddIGFyZSBjb21wYXJlZCAgICovDQojZGVmaW5lIEkyQ19PQVIyX09BMk1BU0swN19Qb3MgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19PQVIyX09BMk1BU0swN19Nc2sgICAgICAgKDB4N1UgPDwgSTJDX09BUjJfT0EyTUFTSzA3X1BvcykgICAgICAgICAgLyohPCAweDAwMDAwNzAwICovDQojZGVmaW5lIEkyQ19PQVIyX09BMk1BU0swNyAgICAgICAgICAgSTJDX09BUjJfT0EyTUFTSzA3X01zayAgICAgICAgICAgICAgICAgICAgLyohPCBPQTJbNzoxXSBpcyBtYXNrZWQsIE5vIGNvbXBhcmlzb24gaXMgZG9uZSAgICAgICovDQojZGVmaW5lIEkyQ19PQVIyX09BMkVOX1BvcyAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19PQVIyX09BMkVOX01zayAgICAgICAgICAgKDB4MVUgPDwgSTJDX09BUjJfT0EyRU5fUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEkyQ19PQVIyX09BMkVOICAgICAgICAgICAgICAgSTJDX09BUjJfT0EyRU5fTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBPd24gYWRkcmVzcyAyIGVuYWJsZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEkyQ19USU1JTkdSIHJlZ2lzdGVyICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIEkyQ19USU1JTkdSX1NDTExfUG9zICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19USU1JTkdSX1NDTExfTXNrICAgICAgICAgKDB4RkZVIDw8IEkyQ19USU1JTkdSX1NDTExfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMEZGICovDQojZGVmaW5lIEkyQ19USU1JTkdSX1NDTEwgICAgICAgICAgICAgSTJDX1RJTUlOR1JfU0NMTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBTQ0wgbG93IHBlcmlvZCAobWFzdGVyIG1vZGUpICovDQojZGVmaW5lIEkyQ19USU1JTkdSX1NDTEhfUG9zICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19USU1JTkdSX1NDTEhfTXNrICAgICAgICAgKDB4RkZVIDw8IEkyQ19USU1JTkdSX1NDTEhfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDBGRjAwICovDQojZGVmaW5lIEkyQ19USU1JTkdSX1NDTEggICAgICAgICAgICAgSTJDX1RJTUlOR1JfU0NMSF9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBTQ0wgaGlnaCBwZXJpb2QgKG1hc3RlciBtb2RlKSAqLw0KI2RlZmluZSBJMkNfVElNSU5HUl9TREFERUxfUG9zICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfVElNSU5HUl9TREFERUxfTXNrICAgICAgICgweEZVIDw8IEkyQ19USU1JTkdSX1NEQURFTF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDBGMDAwMCAqLw0KI2RlZmluZSBJMkNfVElNSU5HUl9TREFERUwgICAgICAgICAgIEkyQ19USU1JTkdSX1NEQURFTF9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgRGF0YSBob2xkIHRpbWUgKi8NCiNkZWZpbmUgSTJDX1RJTUlOR1JfU0NMREVMX1BvcyAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1RJTUlOR1JfU0NMREVMX01zayAgICAgICAoMHhGVSA8PCBJMkNfVElNSU5HUl9TQ0xERUxfUG9zKSAgICAgICAgICAvKiE8IDB4MDBGMDAwMDAgKi8NCiNkZWZpbmUgSTJDX1RJTUlOR1JfU0NMREVMICAgICAgICAgICBJMkNfVElNSU5HUl9TQ0xERUxfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IERhdGEgc2V0dXAgdGltZSAqLw0KI2RlZmluZSBJMkNfVElNSU5HUl9QUkVTQ19Qb3MgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfVElNSU5HUl9QUkVTQ19Nc2sgICAgICAgICgweEZVIDw8IEkyQ19USU1JTkdSX1BSRVNDX1BvcykgICAgICAgICAgIC8qITwgMHhGMDAwMDAwMCAqLw0KI2RlZmluZSBJMkNfVElNSU5HUl9QUkVTQyAgICAgICAgICAgIEkyQ19USU1JTkdSX1BSRVNDX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgVGltaW5ncyBwcmVzY2FsZXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogQml0IGRlZmluaXRpb24gZm9yIEkyQ19USU1FT1VUUiByZWdpc3RlciAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJMkNfVElNRU9VVFJfVElNRU9VVEFfUG9zICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfVElNRU9VVFJfVElNRU9VVEFfTXNrICAgICgweEZGRlUgPDwgSTJDX1RJTUVPVVRSX1RJTUVPVVRBX1BvcykgICAgIC8qITwgMHgwMDAwMEZGRiAqLw0KI2RlZmluZSBJMkNfVElNRU9VVFJfVElNRU9VVEEgICAgICAgIEkyQ19USU1FT1VUUl9USU1FT1VUQV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQnVzIHRpbWVvdXQgQSAqLw0KI2RlZmluZSBJMkNfVElNRU9VVFJfVElETEVfUG9zICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfVElNRU9VVFJfVElETEVfTXNrICAgICAgICgweDFVIDw8IEkyQ19USU1FT1VUUl9USURMRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBJMkNfVElNRU9VVFJfVElETEUgICAgICAgICAgIEkyQ19USU1FT1VUUl9USURMRV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgSWRsZSBjbG9jayB0aW1lb3V0IGRldGVjdGlvbiAqLw0KI2RlZmluZSBJMkNfVElNRU9VVFJfVElNT1VURU5fUG9zICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfVElNRU9VVFJfVElNT1VURU5fTXNrICAgICgweDFVIDw8IEkyQ19USU1FT1VUUl9USU1PVVRFTl9Qb3MpICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBJMkNfVElNRU9VVFJfVElNT1VURU4gICAgICAgIEkyQ19USU1FT1VUUl9USU1PVVRFTl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQ2xvY2sgdGltZW91dCBlbmFibGUgKi8NCiNkZWZpbmUgSTJDX1RJTUVPVVRSX1RJTUVPVVRCX1BvcyAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1RJTUVPVVRSX1RJTUVPVVRCX01zayAgICAoMHhGRkZVIDw8IEkyQ19USU1FT1VUUl9USU1FT1VUQl9Qb3MpICAgICAvKiE8IDB4MEZGRjAwMDAgKi8NCiNkZWZpbmUgSTJDX1RJTUVPVVRSX1RJTUVPVVRCICAgICAgICBJMkNfVElNRU9VVFJfVElNRU9VVEJfTXNrICAgICAgICAgICAgICAgICAvKiE8IEJ1cyB0aW1lb3V0IEIqLw0KI2RlZmluZSBJMkNfVElNRU9VVFJfVEVYVEVOX1BvcyAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfVElNRU9VVFJfVEVYVEVOX01zayAgICAgICgweDFVIDw8IEkyQ19USU1FT1VUUl9URVhURU5fUG9zKSAgICAgICAgIC8qITwgMHg4MDAwMDAwMCAqLw0KI2RlZmluZSBJMkNfVElNRU9VVFJfVEVYVEVOICAgICAgICAgIEkyQ19USU1FT1VUUl9URVhURU5fTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRXh0ZW5kZWQgY2xvY2sgdGltZW91dCBlbmFibGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEkyQ19JU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJMkNfSVNSX1RYRV9Qb3MgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfSVNSX1RYRV9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19JU1JfVFhFX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBJMkNfSVNSX1RYRSAgICAgICAgICAgICAgICAgIEkyQ19JU1JfVFhFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXQgZGF0YSByZWdpc3RlciBlbXB0eSAqLw0KI2RlZmluZSBJMkNfSVNSX1RYSVNfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfSVNSX1RYSVNfTXNrICAgICAgICAgICAgICgweDFVIDw8IEkyQ19JU1JfVFhJU19Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBJMkNfSVNSX1RYSVMgICAgICAgICAgICAgICAgIEkyQ19JU1JfVFhJU19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXQgaW50ZXJydXB0IHN0YXR1cyAqLw0KI2RlZmluZSBJMkNfSVNSX1JYTkVfUG9zICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfSVNSX1JYTkVfTXNrICAgICAgICAgICAgICgweDFVIDw8IEkyQ19JU1JfUlhORV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBJMkNfSVNSX1JYTkUgICAgICAgICAgICAgICAgIEkyQ19JU1JfUlhORV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZWl2ZSBkYXRhIHJlZ2lzdGVyIG5vdCBlbXB0eSAqLw0KI2RlZmluZSBJMkNfSVNSX0FERFJfUG9zICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfSVNSX0FERFJfTXNrICAgICAgICAgICAgICgweDFVIDw8IEkyQ19JU1JfQUREUl9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBJMkNfSVNSX0FERFIgICAgICAgICAgICAgICAgIEkyQ19JU1JfQUREUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQWRkcmVzcyBtYXRjaGVkIChzbGF2ZSBtb2RlKSovDQojZGVmaW5lIEkyQ19JU1JfTkFDS0ZfUG9zICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19JU1JfTkFDS0ZfTXNrICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0lTUl9OQUNLRl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEkyQ19JU1JfTkFDS0YgICAgICAgICAgICAgICAgSTJDX0lTUl9OQUNLRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBOQUNLIHJlY2VpdmVkIGZsYWcgKi8NCiNkZWZpbmUgSTJDX0lTUl9TVE9QRl9Qb3MgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0lTUl9TVE9QRl9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBJMkNfSVNSX1NUT1BGX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgSTJDX0lTUl9TVE9QRiAgICAgICAgICAgICAgICBJMkNfSVNSX1NUT1BGX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNUT1AgZGV0ZWN0aW9uIGZsYWcgKi8NCiNkZWZpbmUgSTJDX0lTUl9UQ19Qb3MgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0lTUl9UQ19Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfSVNSX1RDX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgSTJDX0lTUl9UQyAgICAgICAgICAgICAgICAgICBJMkNfSVNSX1RDX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zZmVyIGNvbXBsZXRlIChtYXN0ZXIgbW9kZSkgKi8NCiNkZWZpbmUgSTJDX0lTUl9UQ1JfUG9zICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0lTUl9UQ1JfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfSVNSX1RDUl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgSTJDX0lTUl9UQ1IgICAgICAgICAgICAgICAgICBJMkNfSVNSX1RDUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zZmVyIGNvbXBsZXRlIHJlbG9hZCAqLw0KI2RlZmluZSBJMkNfSVNSX0JFUlJfUG9zICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfSVNSX0JFUlJfTXNrICAgICAgICAgICAgICgweDFVIDw8IEkyQ19JU1JfQkVSUl9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBJMkNfSVNSX0JFUlIgICAgICAgICAgICAgICAgIEkyQ19JU1JfQkVSUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQnVzIGVycm9yICovDQojZGVmaW5lIEkyQ19JU1JfQVJMT19Qb3MgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19JU1JfQVJMT19Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0lTUl9BUkxPX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEkyQ19JU1JfQVJMTyAgICAgICAgICAgICAgICAgSTJDX0lTUl9BUkxPX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBcmJpdHJhdGlvbiBsb3N0ICovDQojZGVmaW5lIEkyQ19JU1JfT1ZSX1BvcyAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19JU1JfT1ZSX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0lTUl9PVlJfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEkyQ19JU1JfT1ZSICAgICAgICAgICAgICAgICAgSTJDX0lTUl9PVlJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBPdmVycnVuL1VuZGVycnVuICovDQojZGVmaW5lIEkyQ19JU1JfUEVDRVJSX1BvcyAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19JU1JfUEVDRVJSX01zayAgICAgICAgICAgKDB4MVUgPDwgSTJDX0lTUl9QRUNFUlJfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEkyQ19JU1JfUEVDRVJSICAgICAgICAgICAgICAgSTJDX0lTUl9QRUNFUlJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRUMgZXJyb3IgaW4gcmVjZXB0aW9uICovDQojZGVmaW5lIEkyQ19JU1JfVElNRU9VVF9Qb3MgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19JU1JfVElNRU9VVF9Nc2sgICAgICAgICAgKDB4MVUgPDwgSTJDX0lTUl9USU1FT1VUX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEkyQ19JU1JfVElNRU9VVCAgICAgICAgICAgICAgSTJDX0lTUl9USU1FT1VUX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBUaW1lb3V0IG9yIFRsb3cgZGV0ZWN0aW9uIGZsYWcgKi8NCiNkZWZpbmUgSTJDX0lTUl9BTEVSVF9Qb3MgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0lTUl9BTEVSVF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBJMkNfSVNSX0FMRVJUX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgSTJDX0lTUl9BTEVSVCAgICAgICAgICAgICAgICBJMkNfSVNSX0FMRVJUX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNNQnVzIGFsZXJ0ICovDQojZGVmaW5lIEkyQ19JU1JfQlVTWV9Qb3MgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19JU1JfQlVTWV9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0lTUl9CVVNZX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEkyQ19JU1JfQlVTWSAgICAgICAgICAgICAgICAgSTJDX0lTUl9CVVNZX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCdXMgYnVzeSAqLw0KI2RlZmluZSBJMkNfSVNSX0RJUl9Qb3MgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfSVNSX0RJUl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19JU1JfRElSX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBJMkNfSVNSX0RJUiAgICAgICAgICAgICAgICAgIEkyQ19JU1JfRElSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNmZXIgZGlyZWN0aW9uIChzbGF2ZSBtb2RlKSAqLw0KI2RlZmluZSBJMkNfSVNSX0FERENPREVfUG9zICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfSVNSX0FERENPREVfTXNrICAgICAgICAgICgweDdGVSA8PCBJMkNfSVNSX0FERENPREVfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMEZFMDAwMCAqLw0KI2RlZmluZSBJMkNfSVNSX0FERENPREUgICAgICAgICAgICAgIEkyQ19JU1JfQUREQ09ERV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQWRkcmVzcyBtYXRjaCBjb2RlIChzbGF2ZSBtb2RlKSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgSTJDX0lDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEkyQ19JQ1JfQUREUkNGX1BvcyAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19JQ1JfQUREUkNGX01zayAgICAgICAgICAgKDB4MVUgPDwgSTJDX0lDUl9BRERSQ0ZfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEkyQ19JQ1JfQUREUkNGICAgICAgICAgICAgICAgSTJDX0lDUl9BRERSQ0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBZGRyZXNzIG1hdGNoZWQgY2xlYXIgZmxhZyAqLw0KI2RlZmluZSBJMkNfSUNSX05BQ0tDRl9Qb3MgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfSUNSX05BQ0tDRl9Nc2sgICAgICAgICAgICgweDFVIDw8IEkyQ19JQ1JfTkFDS0NGX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBJMkNfSUNSX05BQ0tDRiAgICAgICAgICAgICAgIEkyQ19JQ1JfTkFDS0NGX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTkFDSyBjbGVhciBmbGFnICovDQojZGVmaW5lIEkyQ19JQ1JfU1RPUENGX1BvcyAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19JQ1JfU1RPUENGX01zayAgICAgICAgICAgKDB4MVUgPDwgSTJDX0lDUl9TVE9QQ0ZfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEkyQ19JQ1JfU1RPUENGICAgICAgICAgICAgICAgSTJDX0lDUl9TVE9QQ0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTVE9QIGRldGVjdGlvbiBjbGVhciBmbGFnICovDQojZGVmaW5lIEkyQ19JQ1JfQkVSUkNGX1BvcyAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19JQ1JfQkVSUkNGX01zayAgICAgICAgICAgKDB4MVUgPDwgSTJDX0lDUl9CRVJSQ0ZfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEkyQ19JQ1JfQkVSUkNGICAgICAgICAgICAgICAgSTJDX0lDUl9CRVJSQ0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCdXMgZXJyb3IgY2xlYXIgZmxhZyAqLw0KI2RlZmluZSBJMkNfSUNSX0FSTE9DRl9Qb3MgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfSUNSX0FSTE9DRl9Nc2sgICAgICAgICAgICgweDFVIDw8IEkyQ19JQ1JfQVJMT0NGX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBJMkNfSUNSX0FSTE9DRiAgICAgICAgICAgICAgIEkyQ19JQ1JfQVJMT0NGX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQXJiaXRyYXRpb24gbG9zdCBjbGVhciBmbGFnICovDQojZGVmaW5lIEkyQ19JQ1JfT1ZSQ0ZfUG9zICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19JQ1JfT1ZSQ0ZfTXNrICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0lDUl9PVlJDRl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEkyQ19JQ1JfT1ZSQ0YgICAgICAgICAgICAgICAgSTJDX0lDUl9PVlJDRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBPdmVycnVuL1VuZGVycnVuIGNsZWFyIGZsYWcgKi8NCiNkZWZpbmUgSTJDX0lDUl9QRUNDRl9Qb3MgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0lDUl9QRUNDRl9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBJMkNfSUNSX1BFQ0NGX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgSTJDX0lDUl9QRUNDRiAgICAgICAgICAgICAgICBJMkNfSUNSX1BFQ0NGX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBQyBlcnJvciBjbGVhciBmbGFnICovDQojZGVmaW5lIEkyQ19JQ1JfVElNT1VUQ0ZfUG9zICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19JQ1JfVElNT1VUQ0ZfTXNrICAgICAgICAgKDB4MVUgPDwgSTJDX0lDUl9USU1PVVRDRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEkyQ19JQ1JfVElNT1VUQ0YgICAgICAgICAgICAgSTJDX0lDUl9USU1PVVRDRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBUaW1lb3V0IGNsZWFyIGZsYWcgKi8NCiNkZWZpbmUgSTJDX0lDUl9BTEVSVENGX1BvcyAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0lDUl9BTEVSVENGX01zayAgICAgICAgICAoMHgxVSA8PCBJMkNfSUNSX0FMRVJUQ0ZfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgSTJDX0lDUl9BTEVSVENGICAgICAgICAgICAgICBJMkNfSUNSX0FMRVJUQ0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFsZXJ0IGNsZWFyIGZsYWcgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEkyQ19QRUNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJMkNfUEVDUl9QRUNfUG9zICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfUEVDUl9QRUNfTXNrICAgICAgICAgICAgICgweEZGVSA8PCBJMkNfUEVDUl9QRUNfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDBGRiAqLw0KI2RlZmluZSBJMkNfUEVDUl9QRUMgICAgICAgICAgICAgICAgIEkyQ19QRUNSX1BFQ19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEVDIHJlZ2lzdGVyICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJMkNfUlhEUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJMkNfUlhEUl9SWERBVEFfUG9zICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfUlhEUl9SWERBVEFfTXNrICAgICAgICAgICgweEZGVSA8PCBJMkNfUlhEUl9SWERBVEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDBGRiAqLw0KI2RlZmluZSBJMkNfUlhEUl9SWERBVEEgICAgICAgICAgICAgIEkyQ19SWERSX1JYREFUQV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgOC1iaXQgcmVjZWl2ZSBkYXRhICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJMkNfVFhEUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSTJDX1RYRFJfVFhEQVRBX1BvcyAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1RYRFJfVFhEQVRBX01zayAgICAgICAgICAoMHhGRlUgPDwgSTJDX1RYRFJfVFhEQVRBX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwRkYgKi8NCiNkZWZpbmUgSTJDX1RYRFJfVFhEQVRBICAgICAgICAgICAgICBJMkNfVFhEUl9UWERBVEFfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IDgtYml0IHRyYW5zbWl0IGRhdGEgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICBJbmRlcGVuZGVudCBXQVRDSERPRyAoSVdERykgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJV0RHX0tSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJV0RHX0tSX0tFWV9Qb3MgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJV0RHX0tSX0tFWV9Nc2sgICAgICAoMHhGRkZGVSA8PCBJV0RHX0tSX0tFWV9Qb3MpICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBJV0RHX0tSX0tFWSAgICAgICAgICBJV0RHX0tSX0tFWV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgS2V5IHZhbHVlICh3cml0ZSBvbmx5LCByZWFkIDAwMDBoKSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIElXREdfUFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElXREdfUFJfUFJfUG9zICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIElXREdfUFJfUFJfTXNrICAgICAgICgweDdVIDw8IElXREdfUFJfUFJfUG9zKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA3ICovDQojZGVmaW5lIElXREdfUFJfUFIgICAgICAgICAgIElXREdfUFJfUFJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQUlsyOjBdIChQcmVzY2FsZXIgZGl2aWRlcikgKi8NCiNkZWZpbmUgSVdER19QUl9QUl8wICAgICAgICAgKDB4MVUgPDwgSVdER19QUl9QUl9Qb3MpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDEgKi8NCiNkZWZpbmUgSVdER19QUl9QUl8xICAgICAgICAgKDB4MlUgPDwgSVdER19QUl9QUl9Qb3MpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDIgKi8NCiNkZWZpbmUgSVdER19QUl9QUl8yICAgICAgICAgKDB4NFUgPDwgSVdER19QUl9QUl9Qb3MpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJV0RHX1JMUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJV0RHX1JMUl9STF9Qb3MgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJV0RHX1JMUl9STF9Nc2sgICAgICAoMHhGRkZVIDw8IElXREdfUkxSX1JMX1BvcykgICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMEZGRiAqLw0KI2RlZmluZSBJV0RHX1JMUl9STCAgICAgICAgICBJV0RHX1JMUl9STF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgV2F0Y2hkb2cgY291bnRlciByZWxvYWQgdmFsdWUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJV0RHX1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJV0RHX1NSX1BWVV9Qb3MgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJV0RHX1NSX1BWVV9Nc2sgICAgICAoMHgxVSA8PCBJV0RHX1NSX1BWVV9Qb3MpICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBJV0RHX1NSX1BWVSAgICAgICAgICBJV0RHX1NSX1BWVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgV2F0Y2hkb2cgcHJlc2NhbGVyIHZhbHVlIHVwZGF0ZSAqLw0KI2RlZmluZSBJV0RHX1NSX1JWVV9Qb3MgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJV0RHX1NSX1JWVV9Nc2sgICAgICAoMHgxVSA8PCBJV0RHX1NSX1JWVV9Qb3MpICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBJV0RHX1NSX1JWVSAgICAgICAgICBJV0RHX1NSX1JWVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgV2F0Y2hkb2cgY291bnRlciByZWxvYWQgdmFsdWUgdXBkYXRlICovDQojZGVmaW5lIElXREdfU1JfV1ZVX1BvcyAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIElXREdfU1JfV1ZVX01zayAgICAgICgweDFVIDw8IElXREdfU1JfV1ZVX1BvcykgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIElXREdfU1JfV1ZVICAgICAgICAgIElXREdfU1JfV1ZVX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBXYXRjaGRvZyBjb3VudGVyIHdpbmRvdyB2YWx1ZSB1cGRhdGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJV0RHX0tSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJV0RHX1dJTlJfV0lOX1BvcyAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJV0RHX1dJTlJfV0lOX01zayAgICAoMHhGRkZVIDw8IElXREdfV0lOUl9XSU5fUG9zKSAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMEZGRiAqLw0KI2RlZmluZSBJV0RHX1dJTlJfV0lOICAgICAgICBJV0RHX1dJTlJfV0lOX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgV2F0Y2hkb2cgY291bnRlciB3aW5kb3cgdmFsdWUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgIFBvd2VyIENvbnRyb2wgKFBXUikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQojZGVmaW5lIFBXUl9QVkRfU1VQUE9SVCAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQV1IgZmVhdHVyZSBhdmFpbGFibGUgb25seSBvbiBzcGVjaWZpYyBkZXZpY2VzOiBQb3dlciBWb2x0YWdlIERldGVjdGlvbiBmZWF0dXJlICovDQoNCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUFdSX0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBQV1JfQ1JfTFBEU19Qb3MgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1JfTFBEU19Nc2sgICAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1JfTFBEU19Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBQV1JfQ1JfTFBEUyAgICAgICAgICAgICAgICBQV1JfQ1JfTFBEU19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTG93LXBvd2VyIERlZXBzbGVlcCAqLw0KI2RlZmluZSBQV1JfQ1JfUEREU19Qb3MgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1JfUEREU19Nc2sgICAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1JfUEREU19Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBQV1JfQ1JfUEREUyAgICAgICAgICAgICAgICBQV1JfQ1JfUEREU19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUG93ZXIgRG93biBEZWVwc2xlZXAgKi8NCiNkZWZpbmUgUFdSX0NSX0NXVUZfUG9zICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUFdSX0NSX0NXVUZfTXNrICAgICAgICAgICAgKDB4MVUgPDwgUFdSX0NSX0NXVUZfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUFdSX0NSX0NXVUYgICAgICAgICAgICAgICAgUFdSX0NSX0NXVUZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENsZWFyIFdha2V1cCBGbGFnICovDQojZGVmaW5lIFBXUl9DUl9DU0JGX1BvcyAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DUl9DU0JGX01zayAgICAgICAgICAgICgweDFVIDw8IFBXUl9DUl9DU0JGX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFBXUl9DUl9DU0JGICAgICAgICAgICAgICAgIFBXUl9DUl9DU0JGX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDbGVhciBTdGFuZGJ5IEZsYWcgKi8NCiNkZWZpbmUgUFdSX0NSX1BWREVfUG9zICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUFdSX0NSX1BWREVfTXNrICAgICAgICAgICAgKDB4MVUgPDwgUFdSX0NSX1BWREVfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUFdSX0NSX1BWREUgICAgICAgICAgICAgICAgUFdSX0NSX1BWREVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBvd2VyIFZvbHRhZ2UgRGV0ZWN0b3IgRW5hYmxlICovDQoNCiNkZWZpbmUgUFdSX0NSX1BMU19Qb3MgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUFdSX0NSX1BMU19Nc2sgICAgICAgICAgICAgKDB4N1UgPDwgUFdSX0NSX1BMU19Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwRTAgKi8NCiNkZWZpbmUgUFdSX0NSX1BMUyAgICAgICAgICAgICAgICAgUFdSX0NSX1BMU19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBMU1syOjBdIGJpdHMgKFBWRCBMZXZlbCBTZWxlY3Rpb24pICovDQojZGVmaW5lIFBXUl9DUl9QTFNfMCAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DUl9QTFNfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFBXUl9DUl9QTFNfMSAgICAgICAgICAgICAgICgweDJVIDw8IFBXUl9DUl9QTFNfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFBXUl9DUl9QTFNfMiAgICAgICAgICAgICAgICgweDRVIDw8IFBXUl9DUl9QTFNfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQoNCi8qITwgUFZEIGxldmVsIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgUFdSX0NSX1BMU19MRVYwICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBWRCBsZXZlbCAwICovDQojZGVmaW5lIFBXUl9DUl9QTFNfTEVWMSAgICAgICAgICAgICgweDAwMDAwMDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQVkQgbGV2ZWwgMSAqLw0KI2RlZmluZSBQV1JfQ1JfUExTX0xFVjIgICAgICAgICAgICAoMHgwMDAwMDA0MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUFZEIGxldmVsIDIgKi8NCiNkZWZpbmUgUFdSX0NSX1BMU19MRVYzICAgICAgICAgICAgKDB4MDAwMDAwNjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBWRCBsZXZlbCAzICovDQojZGVmaW5lIFBXUl9DUl9QTFNfTEVWNCAgICAgICAgICAgICgweDAwMDAwMDgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQVkQgbGV2ZWwgNCAqLw0KI2RlZmluZSBQV1JfQ1JfUExTX0xFVjUgICAgICAgICAgICAoMHgwMDAwMDBBMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUFZEIGxldmVsIDUgKi8NCiNkZWZpbmUgUFdSX0NSX1BMU19MRVY2ICAgICAgICAgICAgKDB4MDAwMDAwQzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBWRCBsZXZlbCA2ICovDQojZGVmaW5lIFBXUl9DUl9QTFNfTEVWNyAgICAgICAgICAgICgweDAwMDAwMEUwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQVkQgbGV2ZWwgNyAqLw0KDQojZGVmaW5lIFBXUl9DUl9EQlBfUG9zICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DUl9EQlBfTXNrICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DUl9EQlBfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFBXUl9DUl9EQlAgICAgICAgICAgICAgICAgIFBXUl9DUl9EQlBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBEaXNhYmxlIEJhY2t1cCBEb21haW4gd3JpdGUgcHJvdGVjdGlvbiAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFBXUl9DU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFBXUl9DU1JfV1VGX1BvcyAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DU1JfV1VGX01zayAgICAgICAgICAgICgweDFVIDw8IFBXUl9DU1JfV1VGX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFBXUl9DU1JfV1VGICAgICAgICAgICAgICAgIFBXUl9DU1JfV1VGX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBXYWtldXAgRmxhZyAqLw0KI2RlZmluZSBQV1JfQ1NSX1NCRl9Qb3MgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1NSX1NCRl9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1NSX1NCRl9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBQV1JfQ1NSX1NCRiAgICAgICAgICAgICAgICBQV1JfQ1NSX1NCRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU3RhbmRieSBGbGFnICovDQojZGVmaW5lIFBXUl9DU1JfUFZET19Qb3MgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DU1JfUFZET19Nc2sgICAgICAgICAgICgweDFVIDw8IFBXUl9DU1JfUFZET19Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFBXUl9DU1JfUFZETyAgICAgICAgICAgICAgIFBXUl9DU1JfUFZET19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQVkQgT3V0cHV0ICovDQojZGVmaW5lIFBXUl9DU1JfVlJFRklOVFJEWUZfUG9zICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DU1JfVlJFRklOVFJEWUZfTXNrICAgICgweDFVIDw8IFBXUl9DU1JfVlJFRklOVFJEWUZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFBXUl9DU1JfVlJFRklOVFJEWUYgICAgICAgIFBXUl9DU1JfVlJFRklOVFJEWUZfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcm5hbCB2b2x0YWdlIHJlZmVyZW5jZSAoVlJFRklOVCkgcmVhZHkgZmxhZyAqLw0KDQojZGVmaW5lIFBXUl9DU1JfRVdVUDFfUG9zICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DU1JfRVdVUDFfTXNrICAgICAgICAgICgweDFVIDw8IFBXUl9DU1JfRVdVUDFfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFBXUl9DU1JfRVdVUDEgICAgICAgICAgICAgIFBXUl9DU1JfRVdVUDFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGUgV0tVUCBwaW4gMSAqLw0KI2RlZmluZSBQV1JfQ1NSX0VXVVAyX1BvcyAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1NSX0VXVVAyX01zayAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1NSX0VXVVAyX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBQV1JfQ1NSX0VXVVAyICAgICAgICAgICAgICBQV1JfQ1NSX0VXVVAyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxlIFdLVVAgcGluIDIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgUmVzZXQgYW5kIENsb2NrIENvbnRyb2wgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyoNCiogQGJyaWVmIFNwZWNpZmljIGRldmljZSBmZWF0dXJlIGRlZmluaXRpb25zICAobm90IHByZXNlbnQgb24gYWxsIGRldmljZXMgaW4gdGhlIFNUTTMyRjAgc2VyaWUpDQoqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJDQ19DUl9IU0lPTl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DUl9IU0lPTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NSX0hTSU9OX1BvcykgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJDQ19DUl9IU0lPTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NSX0hTSU9OX01zayAgICAgICAgICAgICAgLyohPCBJbnRlcm5hbCBIaWdoIFNwZWVkIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQ1JfSFNJUkRZX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfSFNJUkRZX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DUl9IU0lSRFlfUG9zKSAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSQ0NfQ1JfSFNJUkRZICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DUl9IU0lSRFlfTXNrICAgICAgICAgICAgIC8qITwgSW50ZXJuYWwgSGlnaCBTcGVlZCBjbG9jayByZWFkeSBmbGFnICovDQoNCiNkZWZpbmUgUkNDX0NSX0hTSVRSSU1fUG9zICAgICAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NSX0hTSVRSSU1fTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgUkNDX0NSX0hTSVRSSU1fUG9zKSAvKiE8IDB4MDAwMDAwRjggKi8NCiNkZWZpbmUgUkNDX0NSX0hTSVRSSU0gICAgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfSFNJVFJJTV9Nc2sgICAgICAgICAgICAvKiE8IEludGVybmFsIEhpZ2ggU3BlZWQgY2xvY2sgdHJpbW1pbmcgKi8NCiNkZWZpbmUgUkNDX0NSX0hTSVRSSU1fMCAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgUkNDX0NSX0hTSVRSSU1fUG9zKSAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUkNDX0NSX0hTSVRSSU1fMSAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgUkNDX0NSX0hTSVRSSU1fUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUkNDX0NSX0hTSVRSSU1fMiAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgUkNDX0NSX0hTSVRSSU1fUG9zKSAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUkNDX0NSX0hTSVRSSU1fMyAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgUkNDX0NSX0hTSVRSSU1fUG9zKSAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUkNDX0NSX0hTSVRSSU1fNCAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgUkNDX0NSX0hTSVRSSU1fUG9zKSAvKiE8IDB4MDAwMDAwODAgKi8NCg0KI2RlZmluZSBSQ0NfQ1JfSFNJQ0FMX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfSFNJQ0FMX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZGVSA8PCBSQ0NfQ1JfSFNJQ0FMX1BvcykgIC8qITwgMHgwMDAwRkYwMCAqLw0KI2RlZmluZSBSQ0NfQ1JfSFNJQ0FMICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DUl9IU0lDQUxfTXNrICAgICAgICAgICAgIC8qITwgSW50ZXJuYWwgSGlnaCBTcGVlZCBjbG9jayBDYWxpYnJhdGlvbiAqLw0KI2RlZmluZSBSQ0NfQ1JfSFNJQ0FMXzAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBSQ0NfQ1JfSFNJQ0FMX1BvcykgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSQ0NfQ1JfSFNJQ0FMXzEgICAgICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBSQ0NfQ1JfSFNJQ0FMX1BvcykgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSQ0NfQ1JfSFNJQ0FMXzIgICAgICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBSQ0NfQ1JfSFNJQ0FMX1BvcykgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSQ0NfQ1JfSFNJQ0FMXzMgICAgICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBSQ0NfQ1JfSFNJQ0FMX1BvcykgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSQ0NfQ1JfSFNJQ0FMXzQgICAgICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBSQ0NfQ1JfSFNJQ0FMX1BvcykgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSQ0NfQ1JfSFNJQ0FMXzUgICAgICAgICAgICAgICAgICAgICAgICAgICgweDIwVSA8PCBSQ0NfQ1JfSFNJQ0FMX1BvcykgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSQ0NfQ1JfSFNJQ0FMXzYgICAgICAgICAgICAgICAgICAgICAgICAgICgweDQwVSA8PCBSQ0NfQ1JfSFNJQ0FMX1BvcykgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1JfSFNJQ0FMXzcgICAgICAgICAgICAgICAgICAgICAgICAgICgweDgwVSA8PCBSQ0NfQ1JfSFNJQ0FMX1BvcykgIC8qITwgMHgwMDAwODAwMCAqLw0KDQojZGVmaW5lIFJDQ19DUl9IU0VPTl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DUl9IU0VPTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NSX0hTRU9OX1BvcykgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFJDQ19DUl9IU0VPTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NSX0hTRU9OX01zayAgICAgICAgICAgICAgLyohPCBFeHRlcm5hbCBIaWdoIFNwZWVkIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQ1JfSFNFUkRZX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfSFNFUkRZX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DUl9IU0VSRFlfUG9zKSAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1JfSFNFUkRZICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DUl9IU0VSRFlfTXNrICAgICAgICAgICAgIC8qITwgRXh0ZXJuYWwgSGlnaCBTcGVlZCBjbG9jayByZWFkeSBmbGFnICovDQojZGVmaW5lIFJDQ19DUl9IU0VCWVBfUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DUl9IU0VCWVBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NSX0hTRUJZUF9Qb3MpICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJDQ19DUl9IU0VCWVAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NSX0hTRUJZUF9Nc2sgICAgICAgICAgICAgLyohPCBFeHRlcm5hbCBIaWdoIFNwZWVkIGNsb2NrIEJ5cGFzcyAqLw0KI2RlZmluZSBSQ0NfQ1JfQ1NTT05fUG9zICAgICAgICAgICAgICAgICAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfQ1NTT05fTXNrICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DUl9DU1NPTl9Qb3MpICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1JfQ1NTT04gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DUl9DU1NPTl9Nc2sgICAgICAgICAgICAgIC8qITwgQ2xvY2sgU2VjdXJpdHkgU3lzdGVtIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQ1JfUExMT05fUG9zICAgICAgICAgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfUExMT05fTXNrICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DUl9QTExPTl9Qb3MpICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1JfUExMT04gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DUl9QTExPTl9Nc2sgICAgICAgICAgICAgIC8qITwgUExMIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQ1JfUExMUkRZX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfUExMUkRZX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DUl9QTExSRFlfUG9zKSAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1JfUExMUkRZICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DUl9QTExSRFlfTXNrICAgICAgICAgICAgIC8qITwgUExMIGNsb2NrIHJlYWR5IGZsYWcgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0NGR1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KLyohPCBTVyBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFJDQ19DRkdSX1NXX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX1NXX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgUkNDX0NGR1JfU1dfUG9zKSAgICAgLyohPCAweDAwMDAwMDAzICovDQojZGVmaW5lIFJDQ19DRkdSX1NXICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfU1dfTXNrICAgICAgICAgICAgICAgLyohPCBTV1sxOjBdIGJpdHMgKFN5c3RlbSBjbG9jayBTd2l0Y2gpICovDQojZGVmaW5lIFJDQ19DRkdSX1NXXzAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NGR1JfU1dfUG9zKSAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJDQ19DRkdSX1NXXzEgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX0NGR1JfU1dfUG9zKSAgICAgLyohPCAweDAwMDAwMDAyICovDQoNCiNkZWZpbmUgUkNDX0NGR1JfU1dfSFNJICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAvKiE8IEhTSSBzZWxlY3RlZCBhcyBzeXN0ZW0gY2xvY2sgKi8NCiNkZWZpbmUgUkNDX0NGR1JfU1dfSFNFICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAvKiE8IEhTRSBzZWxlY3RlZCBhcyBzeXN0ZW0gY2xvY2sgKi8NCiNkZWZpbmUgUkNDX0NGR1JfU1dfUExMICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAvKiE8IFBMTCBzZWxlY3RlZCBhcyBzeXN0ZW0gY2xvY2sgKi8NCg0KLyohPCBTV1MgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9TV1NfUG9zICAgICAgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUl9TV1NfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFJDQ19DRkdSX1NXU19Qb3MpICAgIC8qITwgMHgwMDAwMDAwQyAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9TV1MgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX1NXU19Nc2sgICAgICAgICAgICAgIC8qITwgU1dTWzE6MF0gYml0cyAoU3lzdGVtIENsb2NrIFN3aXRjaCBTdGF0dXMpICovDQojZGVmaW5lIFJDQ19DRkdSX1NXU18wICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NGR1JfU1dTX1BvcykgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJDQ19DRkdSX1NXU18xICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX0NGR1JfU1dTX1BvcykgICAgLyohPCAweDAwMDAwMDA4ICovDQoNCiNkZWZpbmUgUkNDX0NGR1JfU1dTX0hTSSAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAvKiE8IEhTSSBvc2NpbGxhdG9yIHVzZWQgYXMgc3lzdGVtIGNsb2NrICovDQojZGVmaW5lIFJDQ19DRkdSX1NXU19IU0UgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgLyohPCBIU0Ugb3NjaWxsYXRvciB1c2VkIGFzIHN5c3RlbSBjbG9jayAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9TV1NfUExMICAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA4VSkgICAgICAgICAgICAgICAgIC8qITwgUExMIHVzZWQgYXMgc3lzdGVtIGNsb2NrICovDQoNCi8qITwgSFBSRSBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFJDQ19DRkdSX0hQUkVfUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX0hQUkVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgUkNDX0NGR1JfSFBSRV9Qb3MpICAgLyohPCAweDAwMDAwMEYwICovDQojZGVmaW5lIFJDQ19DRkdSX0hQUkUgICAgICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfSFBSRV9Nc2sgICAgICAgICAgICAgLyohPCBIUFJFWzM6MF0gYml0cyAoQUhCIHByZXNjYWxlcikgKi8NCiNkZWZpbmUgUkNDX0NGR1JfSFBSRV8wICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0ZHUl9IUFJFX1BvcykgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfSFBSRV8xICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSQ0NfQ0ZHUl9IUFJFX1BvcykgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfSFBSRV8yICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSQ0NfQ0ZHUl9IUFJFX1BvcykgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfSFBSRV8zICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSQ0NfQ0ZHUl9IUFJFX1BvcykgICAvKiE8IDB4MDAwMDAwODAgKi8NCg0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFX0RJVjEgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgIC8qITwgU1lTQ0xLIG5vdCBkaXZpZGVkICovDQojZGVmaW5lIFJDQ19DRkdSX0hQUkVfRElWMiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwODBVKSAgICAgICAgICAgICAgICAgLyohPCBTWVNDTEsgZGl2aWRlZCBieSAyICovDQojZGVmaW5lIFJDQ19DRkdSX0hQUkVfRElWNCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwOTBVKSAgICAgICAgICAgICAgICAgLyohPCBTWVNDTEsgZGl2aWRlZCBieSA0ICovDQojZGVmaW5lIFJDQ19DRkdSX0hQUkVfRElWOCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwQTBVKSAgICAgICAgICAgICAgICAgLyohPCBTWVNDTEsgZGl2aWRlZCBieSA4ICovDQojZGVmaW5lIFJDQ19DRkdSX0hQUkVfRElWMTYgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwQjBVKSAgICAgICAgICAgICAgICAgLyohPCBTWVNDTEsgZGl2aWRlZCBieSAxNiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFX0RJVjY0ICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMEMwVSkgICAgICAgICAgICAgICAgIC8qITwgU1lTQ0xLIGRpdmlkZWQgYnkgNjQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfSFBSRV9ESVYxMjggICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDBEMFUpICAgICAgICAgICAgICAgICAvKiE8IFNZU0NMSyBkaXZpZGVkIGJ5IDEyOCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFX0RJVjI1NiAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMEUwVSkgICAgICAgICAgICAgICAgIC8qITwgU1lTQ0xLIGRpdmlkZWQgYnkgMjU2ICovDQojZGVmaW5lIFJDQ19DRkdSX0hQUkVfRElWNTEyICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwRjBVKSAgICAgICAgICAgICAgICAgLyohPCBTWVNDTEsgZGl2aWRlZCBieSA1MTIgKi8NCg0KLyohPCBQUFJFIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfUFBSRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBSQ0NfQ0ZHUl9QUFJFX1BvcykgICAvKiE8IDB4MDAwMDA3MDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRSAgICAgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9QUFJFX01zayAgICAgICAgICAgICAvKiE8IFBSRVsyOjBdIGJpdHMgKEFQQiBwcmVzY2FsZXIpICovDQojZGVmaW5lIFJDQ19DRkdSX1BQUkVfMCAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NGR1JfUFBSRV9Qb3MpICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BQUkVfMSAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX0NGR1JfUFBSRV9Qb3MpICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BQUkVfMiAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUkNDX0NGR1JfUFBSRV9Qb3MpICAgLyohPCAweDAwMDAwNDAwICovDQoNCiNkZWZpbmUgUkNDX0NGR1JfUFBSRV9ESVYxICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAvKiE8IEhDTEsgbm90IGRpdmlkZWQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRV9ESVYyX1BvcyAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfUFBSRV9ESVYyX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0ZHUl9QUFJFX0RJVjJfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRV9ESVYyICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9QUFJFX0RJVjJfTXNrICAgICAgICAvKiE8IEhDTEsgZGl2aWRlZCBieSAyICovDQojZGVmaW5lIFJDQ19DRkdSX1BQUkVfRElWNF9Qb3MgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX1BQUkVfRElWNF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4NVUgPDwgUkNDX0NGR1JfUFBSRV9ESVY0X1BvcykgLyohPCAweDAwMDAwNTAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BQUkVfRElWNCAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfUFBSRV9ESVY0X01zayAgICAgICAgLyohPCBIQ0xLIGRpdmlkZWQgYnkgNCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFX0RJVjhfUG9zICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFX0RJVjhfTXNrICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFJDQ19DRkdSX1BQUkVfRElWOF9Qb3MpIC8qITwgMHgwMDAwMDYwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFX0RJVjggICAgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX1BQUkVfRElWOF9Nc2sgICAgICAgIC8qITwgSENMSyBkaXZpZGVkIGJ5IDggKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRV9ESVYxNl9Qb3MgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfUFBSRV9ESVYxNl9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBSQ0NfQ0ZHUl9QUFJFX0RJVjE2X1BvcykgLyohPCAweDAwMDAwNzAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BQUkVfRElWMTYgICAgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfUFBSRV9ESVYxNl9Nc2sgICAgICAgLyohPCBIQ0xLIGRpdmlkZWQgYnkgMTYgKi8NCg0KLyohPCBBRENQUFJFIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgUkNDX0NGR1JfQURDUFJFX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfQURDUFJFX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0ZHUl9BRENQUkVfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfQURDUFJFICAgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9BRENQUkVfTXNrICAgICAgICAgICAvKiE8IEFEQ1BSRSBiaXQgKEFEQyBwcmVzY2FsZXIpICovDQoNCiNkZWZpbmUgUkNDX0NGR1JfQURDUFJFX0RJVjIgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAvKiE8IFBDTEsgZGl2aWRlZCBieSAyICovDQojZGVmaW5lIFJDQ19DRkdSX0FEQ1BSRV9ESVY0ICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgLyohPCBQQ0xLIGRpdmlkZWQgYnkgNCAqLw0KDQojZGVmaW5lIFJDQ19DRkdSX1BMTFNSQ19Qb3MgICAgICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX1BMTFNSQ19Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NGR1JfUExMU1JDX1BvcykgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTFNSQyAgICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfUExMU1JDX01zayAgICAgICAgICAgLyohPCBQTEwgZW50cnkgY2xvY2sgc291cmNlICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTFNSQ19IU0lfRElWMiAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgLyohPCBIU0kgY2xvY2sgZGl2aWRlZCBieSAyIHNlbGVjdGVkIGFzIFBMTCBlbnRyeSBjbG9jayBzb3VyY2UgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMU1JDX0hTRV9QUkVESVYgICAgICAgICAgICAgICAoMHgwMDAxMDAwMFUpICAgICAgICAgICAgICAgICAvKiE8IEhTRS9QUkVESVYgY2xvY2sgc2VsZWN0ZWQgYXMgUExMIGVudHJ5IGNsb2NrIHNvdXJjZSAqLw0KDQojZGVmaW5lIFJDQ19DRkdSX1BMTFhUUFJFX1BvcyAgICAgICAgICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX1BMTFhUUFJFX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NGR1JfUExMWFRQUkVfUG9zKSAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMWFRQUkUgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9QTExYVFBSRV9Nc2sgICAgICAgICAvKiE8IEhTRSBkaXZpZGVyIGZvciBQTEwgZW50cnkgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMWFRQUkVfSFNFX1BSRURJVl9ESVYxICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAvKiE8IEhTRS9QUkVESVYgY2xvY2sgbm90IGRpdmlkZWQgZm9yIFBMTCBlbnRyeSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExYVFBSRV9IU0VfUFJFRElWX0RJVjIgICAgICAgICgweDAwMDIwMDAwVSkgICAgICAgICAgICAgICAgIC8qITwgSFNFL1BSRURJViBjbG9jayBkaXZpZGVkIGJ5IDIgZm9yIFBMTCBlbnRyeSAqLw0KDQovKiE8IFBMTE1VTCBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTF9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgUkNDX0NGR1JfUExMTVVMX1BvcykgLyohPCAweDAwM0MwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTCAgICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfUExMTVVMX01zayAgICAgICAgICAgLyohPCBQTExNVUxbMzowXSBiaXRzIChQTEwgbXVsdGlwbGljYXRpb24gZmFjdG9yKSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExNVUxfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DRkdSX1BMTE1VTF9Qb3MpIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExNVUxfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJDQ19DRkdSX1BMTE1VTF9Qb3MpIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExNVUxfMiAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJDQ19DRkdSX1BMTE1VTF9Qb3MpIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExNVUxfMyAgICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJDQ19DRkdSX1BMTE1VTF9Qb3MpIC8qITwgMHgwMDIwMDAwMCAqLw0KDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTDIgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgLyohPCBQTEwgaW5wdXQgY2xvY2sqMiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExNVUwzICAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDQwMDAwVSkgICAgICAgICAgICAgICAgIC8qITwgUExMIGlucHV0IGNsb2NrKjMgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMNCAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDA4MDAwMFUpICAgICAgICAgICAgICAgICAvKiE8IFBMTCBpbnB1dCBjbG9jayo0ICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTDUgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwQzAwMDBVKSAgICAgICAgICAgICAgICAgLyohPCBQTEwgaW5wdXQgY2xvY2sqNSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExNVUw2ICAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMTAwMDAwVSkgICAgICAgICAgICAgICAgIC8qITwgUExMIGlucHV0IGNsb2NrKjYgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMNyAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDE0MDAwMFUpICAgICAgICAgICAgICAgICAvKiE8IFBMTCBpbnB1dCBjbG9jayo3ICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTDggICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAxODAwMDBVKSAgICAgICAgICAgICAgICAgLyohPCBQTEwgaW5wdXQgY2xvY2sqOCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExNVUw5ICAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMUMwMDAwVSkgICAgICAgICAgICAgICAgIC8qITwgUExMIGlucHV0IGNsb2NrKjkgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMMTAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDIwMDAwMFUpICAgICAgICAgICAgICAgICAvKiE8IFBMTCBpbnB1dCBjbG9jazEwICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTDExICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAyNDAwMDBVKSAgICAgICAgICAgICAgICAgLyohPCBQTEwgaW5wdXQgY2xvY2sqMTEgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMMTIgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDI4MDAwMFUpICAgICAgICAgICAgICAgICAvKiE8IFBMTCBpbnB1dCBjbG9jayoxMiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExNVUwxMyAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMkMwMDAwVSkgICAgICAgICAgICAgICAgIC8qITwgUExMIGlucHV0IGNsb2NrKjEzICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTDE0ICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAzMDAwMDBVKSAgICAgICAgICAgICAgICAgLyohPCBQTEwgaW5wdXQgY2xvY2sqMTQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMMTUgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDM0MDAwMFUpICAgICAgICAgICAgICAgICAvKiE8IFBMTCBpbnB1dCBjbG9jayoxNSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExNVUwxNiAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMzgwMDAwVSkgICAgICAgICAgICAgICAgIC8qITwgUExMIGlucHV0IGNsb2NrKjE2ICovDQoNCi8qITwgTUNPIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfTUNPX01zayAgICAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSQ0NfQ0ZHUl9NQ09fUG9zKSAgICAvKiE8IDB4MEYwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09fTXNrICAgICAgICAgICAgICAvKiE8IE1DT1szOjBdIGJpdHMgKE1pY3JvY29udHJvbGxlciBDbG9jayBPdXRwdXQpICovDQojZGVmaW5lIFJDQ19DRkdSX01DT18wICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NGR1JfTUNPX1BvcykgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX01DT18xICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX0NGR1JfTUNPX1BvcykgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX01DT18yICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUkNDX0NGR1JfTUNPX1BvcykgICAgLyohPCAweDA0MDAwMDAwICovDQoNCiNkZWZpbmUgUkNDX0NGR1JfTUNPX05PQ0xPQ0sgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAvKiE8IE5vIGNsb2NrICovDQojZGVmaW5lIFJDQ19DRkdSX01DT19IU0kxNCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDEwMDAwMDBVKSAgICAgICAgICAgICAgICAgLyohPCBIU0kxNCBjbG9jayBzZWxlY3RlZCBhcyBNQ08gc291cmNlICovDQojZGVmaW5lIFJDQ19DRkdSX01DT19MU0kgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDIwMDAwMDBVKSAgICAgICAgICAgICAgICAgLyohPCBMU0kgY2xvY2sgc2VsZWN0ZWQgYXMgTUNPIHNvdXJjZSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09fTFNFICAgICAgICAgICAgICAgICAgICAgICAgICgweDAzMDAwMDAwVSkgICAgICAgICAgICAgICAgIC8qITwgTFNFIGNsb2NrIHNlbGVjdGVkIGFzIE1DTyBzb3VyY2UgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPX1NZU0NMSyAgICAgICAgICAgICAgICAgICAgICAoMHgwNDAwMDAwMFUpICAgICAgICAgICAgICAgICAvKiE8IFN5c3RlbSBjbG9jayBzZWxlY3RlZCBhcyBNQ08gc291cmNlICovDQojZGVmaW5lIFJDQ19DRkdSX01DT19IU0kgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDUwMDAwMDBVKSAgICAgICAgICAgICAgICAgLyohPCBIU0kgY2xvY2sgc2VsZWN0ZWQgYXMgTUNPIHNvdXJjZSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09fSFNFICAgICAgICAgICAgICAgICAgICAgICAgICgweDA2MDAwMDAwVSkgICAgICAgICAgICAgICAgIC8qITwgSFNFIGNsb2NrIHNlbGVjdGVkIGFzIE1DTyBzb3VyY2UgICovDQojZGVmaW5lIFJDQ19DRkdSX01DT19QTEwgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDcwMDAwMDBVKSAgICAgICAgICAgICAgICAgLyohPCBQTEwgY2xvY2sgZGl2aWRlZCBieSAyIHNlbGVjdGVkIGFzIE1DTyBzb3VyY2UgKi8NCg0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09QUkVfUG9zICAgICAgICAgICAgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09QUkVfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDdVIDw8IFJDQ19DRkdSX01DT1BSRV9Qb3MpIC8qITwgMHg3MDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09QUkUgICAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX01DT1BSRV9Nc2sgICAgICAgICAgIC8qITwgTUNPIHByZXNjYWxlciAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPUFJFX0RJVjEgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAvKiE8IE1DTyBpcyBkaXZpZGVkIGJ5IDEgICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1BSRV9ESVYyICAgICAgICAgICAgICAgICAgICAgKDB4MTAwMDAwMDBVKSAgICAgICAgICAgICAgICAgLyohPCBNQ08gaXMgZGl2aWRlZCBieSAyICAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09QUkVfRElWNCAgICAgICAgICAgICAgICAgICAgICgweDIwMDAwMDAwVSkgICAgICAgICAgICAgICAgIC8qITwgTUNPIGlzIGRpdmlkZWQgYnkgNCAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPUFJFX0RJVjggICAgICAgICAgICAgICAgICAgICAoMHgzMDAwMDAwMFUpICAgICAgICAgICAgICAgICAvKiE8IE1DTyBpcyBkaXZpZGVkIGJ5IDggICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1BSRV9ESVYxNiAgICAgICAgICAgICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgLyohPCBNQ08gaXMgZGl2aWRlZCBieSAxNiAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPUFJFX0RJVjMyICAgICAgICAgICAgICAgICAgICAoMHg1MDAwMDAwMFUpICAgICAgICAgICAgICAgICAvKiE8IE1DTyBpcyBkaXZpZGVkIGJ5IDMyICAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09QUkVfRElWNjQgICAgICAgICAgICAgICAgICAgICgweDYwMDAwMDAwVSkgICAgICAgICAgICAgICAgIC8qITwgTUNPIGlzIGRpdmlkZWQgYnkgNjQgICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1BSRV9ESVYxMjggICAgICAgICAgICAgICAgICAgKDB4NzAwMDAwMDBVKSAgICAgICAgICAgICAgICAgLyohPCBNQ08gaXMgZGl2aWRlZCBieSAxMjggICovDQoNCiNkZWZpbmUgUkNDX0NGR1JfUExMTk9ESVZfUG9zICAgICAgICAgICAgICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfUExMTk9ESVZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0ZHUl9QTExOT0RJVl9Qb3MpIC8qITwgMHg4MDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExOT0RJViAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX1BMTE5PRElWX01zayAgICAgICAgIC8qITwgUExMIGlzIG5vdCBkaXZpZGVkIHRvIE1DTyAgKi8NCg0KLyogUmVmZXJlbmNlIGRlZmluZXMgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMICAgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX01DTw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfMCAgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPXzANCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMXzEgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX01DT18xDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF8yICAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09fMg0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfTk9DTE9DSyAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPX05PQ0xPQ0sNCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX0hTSTE0ICAgICAgICAgICAgICAgIFJDQ19DRkdSX01DT19IU0kxNA0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfTFNJICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPX0xTSQ0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfTFNFICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPX0xTRQ0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfU1lTQ0xLICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPX1NZU0NMSw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfSFNJICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPX0hTSQ0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfSFNFICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPX0hTRQ0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfUExMX0RJVjIgICAgICAgICAgICAgUkNDX0NGR1JfTUNPX1BMTA0KDQovKiE8KioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0NJUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJDQ19DSVJfTFNJUkRZRl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfTFNJUkRZRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9MU0lSRFlGX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJDQ19DSVJfTFNJUkRZRiAgICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9MU0lSRFlGX01zayAgICAgICAgICAgLyohPCBMU0kgUmVhZHkgSW50ZXJydXB0IGZsYWcgKi8NCiNkZWZpbmUgUkNDX0NJUl9MU0VSRFlGX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9MU0VSRFlGX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0lSX0xTRVJEWUZfUG9zKSAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUkNDX0NJUl9MU0VSRFlGICAgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX0xTRVJEWUZfTXNrICAgICAgICAgICAvKiE8IExTRSBSZWFkeSBJbnRlcnJ1cHQgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTSVJEWUZfUG9zICAgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0hTSVJEWUZfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfSFNJUkRZRl9Qb3MpIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTSVJEWUYgICAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfSFNJUkRZRl9Nc2sgICAgICAgICAgIC8qITwgSFNJIFJlYWR5IEludGVycnVwdCBmbGFnICovDQojZGVmaW5lIFJDQ19DSVJfSFNFUkRZRl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfSFNFUkRZRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9IU0VSRFlGX1BvcykgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJDQ19DSVJfSFNFUkRZRiAgICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9IU0VSRFlGX01zayAgICAgICAgICAgLyohPCBIU0UgUmVhZHkgSW50ZXJydXB0IGZsYWcgKi8NCiNkZWZpbmUgUkNDX0NJUl9QTExSRFlGX1BvcyAgICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9QTExSRFlGX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0lSX1BMTFJEWUZfUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUkNDX0NJUl9QTExSRFlGICAgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX1BMTFJEWUZfTXNrICAgICAgICAgICAvKiE8IFBMTCBSZWFkeSBJbnRlcnJ1cHQgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTSTE0UkRZRl9Qb3MgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0hTSTE0UkRZRl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfSFNJMTRSRFlGX1BvcykgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJDQ19DSVJfSFNJMTRSRFlGICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9IU0kxNFJEWUZfTXNrICAgICAgICAgLyohPCBIU0kxNCBSZWFkeSBJbnRlcnJ1cHQgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ0lSX0NTU0ZfUG9zICAgICAgICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0NTU0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfQ1NTRl9Qb3MpICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0NTU0YgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfQ1NTRl9Nc2sgICAgICAgICAgICAgIC8qITwgQ2xvY2sgU2VjdXJpdHkgU3lzdGVtIEludGVycnVwdCBmbGFnICovDQojZGVmaW5lIFJDQ19DSVJfTFNJUkRZSUVfUG9zICAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfTFNJUkRZSUVfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9MU0lSRFlJRV9Qb3MpIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0xTSVJEWUlFICAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfTFNJUkRZSUVfTXNrICAgICAgICAgIC8qITwgTFNJIFJlYWR5IEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgUkNDX0NJUl9MU0VSRFlJRV9Qb3MgICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9MU0VSRFlJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0lSX0xTRVJEWUlFX1BvcykgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJDQ19DSVJfTFNFUkRZSUUgICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9MU0VSRFlJRV9Nc2sgICAgICAgICAgLyohPCBMU0UgUmVhZHkgSW50ZXJydXB0IEVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTSVJEWUlFX1BvcyAgICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0hTSVJEWUlFX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfSFNJUkRZSUVfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUkNDX0NJUl9IU0lSRFlJRSAgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX0hTSVJEWUlFX01zayAgICAgICAgICAvKiE8IEhTSSBSZWFkeSBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFJDQ19DSVJfSFNFUkRZSUVfUG9zICAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfSFNFUkRZSUVfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9IU0VSRFlJRV9Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTRVJEWUlFICAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfSFNFUkRZSUVfTXNrICAgICAgICAgIC8qITwgSFNFIFJlYWR5IEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgUkNDX0NJUl9QTExSRFlJRV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9QTExSRFlJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0lSX1BMTFJEWUlFX1BvcykgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJDQ19DSVJfUExMUkRZSUUgICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9QTExSRFlJRV9Nc2sgICAgICAgICAgLyohPCBQTEwgUmVhZHkgSW50ZXJydXB0IEVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTSTE0UkRZSUVfUG9zICAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0hTSTE0UkRZSUVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfSFNJMTRSRFlJRV9Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTSTE0UkRZSUUgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfSFNJMTRSRFlJRV9Nc2sgICAgICAgIC8qITwgSFNJMTQgUmVhZHkgSW50ZXJydXB0IEVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQ0lSX0xTSVJEWUNfUG9zICAgICAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0xTSVJEWUNfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfTFNJUkRZQ19Qb3MpIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0xTSVJEWUMgICAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfTFNJUkRZQ19Nc2sgICAgICAgICAgIC8qITwgTFNJIFJlYWR5IEludGVycnVwdCBDbGVhciAqLw0KI2RlZmluZSBSQ0NfQ0lSX0xTRVJEWUNfUG9zICAgICAgICAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0xTRVJEWUNfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfTFNFUkRZQ19Qb3MpIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0xTRVJEWUMgICAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfTFNFUkRZQ19Nc2sgICAgICAgICAgIC8qITwgTFNFIFJlYWR5IEludGVycnVwdCBDbGVhciAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTSVJEWUNfUG9zICAgICAgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0hTSVJEWUNfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfSFNJUkRZQ19Qb3MpIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTSVJEWUMgICAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfSFNJUkRZQ19Nc2sgICAgICAgICAgIC8qITwgSFNJIFJlYWR5IEludGVycnVwdCBDbGVhciAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTRVJEWUNfUG9zICAgICAgICAgICAgICAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0hTRVJEWUNfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfSFNFUkRZQ19Qb3MpIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTRVJEWUMgICAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfSFNFUkRZQ19Nc2sgICAgICAgICAgIC8qITwgSFNFIFJlYWR5IEludGVycnVwdCBDbGVhciAqLw0KI2RlZmluZSBSQ0NfQ0lSX1BMTFJEWUNfUG9zICAgICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX1BMTFJEWUNfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfUExMUkRZQ19Qb3MpIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0lSX1BMTFJEWUMgICAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfUExMUkRZQ19Nc2sgICAgICAgICAgIC8qITwgUExMIFJlYWR5IEludGVycnVwdCBDbGVhciAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTSTE0UkRZQ19Qb3MgICAgICAgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0hTSTE0UkRZQ19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfSFNJMTRSRFlDX1BvcykgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJDQ19DSVJfSFNJMTRSRFlDICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9IU0kxNFJEWUNfTXNrICAgICAgICAgLyohPCBIU0kxNCBSZWFkeSBJbnRlcnJ1cHQgQ2xlYXIgKi8NCiNkZWZpbmUgUkNDX0NJUl9DU1NDX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9DU1NDX01zayAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0lSX0NTU0NfUG9zKSAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NJUl9DU1NDICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX0NTU0NfTXNrICAgICAgICAgICAgICAvKiE8IENsb2NrIFNlY3VyaXR5IFN5c3RlbSBJbnRlcnJ1cHQgQ2xlYXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0FQQjJSU1RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfU1lTQ0ZHUlNUX1BvcyAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfU1lTQ0ZHUlNUX01zayAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIyUlNUUl9TWVNDRkdSU1RfUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1NZU0NGR1JTVCAgICAgICAgICAgICAgICAgICBSQ0NfQVBCMlJTVFJfU1lTQ0ZHUlNUX01zayAgICAvKiE8IFNZU0NGRyByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfQURDUlNUX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfQURDUlNUX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIyUlNUUl9BRENSU1RfUG9zKSAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX0FEQ1JTVCAgICAgICAgICAgICAgICAgICAgICBSQ0NfQVBCMlJTVFJfQURDUlNUX01zayAgICAgICAvKiE8IEFEQyByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfVElNMVJTVF9Qb3MgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfVElNMVJTVF9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIyUlNUUl9USU0xUlNUX1BvcykgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9USU0xUlNUICAgICAgICAgICAgICAgICAgICAgUkNDX0FQQjJSU1RSX1RJTTFSU1RfTXNrICAgICAgLyohPCBUSU0xIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9TUEkxUlNUX1BvcyAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9TUEkxUlNUX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjJSU1RSX1NQSTFSU1RfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1NQSTFSU1QgICAgICAgICAgICAgICAgICAgICBSQ0NfQVBCMlJTVFJfU1BJMVJTVF9Nc2sgICAgICAvKiE8IFNQSTEgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1VTQVJUMVJTVF9Qb3MgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1VTQVJUMVJTVF9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMlJTVFJfVVNBUlQxUlNUX1BvcykgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9VU0FSVDFSU1QgICAgICAgICAgICAgICAgICAgUkNDX0FQQjJSU1RSX1VTQVJUMVJTVF9Nc2sgICAgLyohPCBVU0FSVDEgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1RJTTE2UlNUX1BvcyAgICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1RJTTE2UlNUX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMlJTVFJfVElNMTZSU1RfUG9zKSAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1RJTTE2UlNUICAgICAgICAgICAgICAgICAgICBSQ0NfQVBCMlJTVFJfVElNMTZSU1RfTXNrICAgICAvKiE8IFRJTTE2IHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9USU0xN1JTVF9Qb3MgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9USU0xN1JTVF9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjJSU1RSX1RJTTE3UlNUX1BvcykgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9USU0xN1JTVCAgICAgICAgICAgICAgICAgICAgUkNDX0FQQjJSU1RSX1RJTTE3UlNUX01zayAgICAgLyohPCBUSU0xNyByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfREJHTUNVUlNUX1BvcyAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfREJHTUNVUlNUX01zayAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIyUlNUUl9EQkdNQ1VSU1RfUG9zKSAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX0RCR01DVVJTVCAgICAgICAgICAgICAgICAgICBSQ0NfQVBCMlJTVFJfREJHTUNVUlNUX01zayAgICAvKiE8IERCR01DVSByZXNldCAqLw0KDQovKiE8IE9sZCBBREMxIHJlc2V0IGJpdCBkZWZpbml0aW9uIG1haW50YWluZWQgZm9yIGxlZ2FjeSBwdXJwb3NlICovDQojZGVmaW5lICBSQ0NfQVBCMlJTVFJfQURDMVJTVCAgICAgICAgICAgICAgICBSQ0NfQVBCMlJTVFJfQURDUlNUICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQVBCMVJTVFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU0yUlNUX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU0yUlNUX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFSU1RSX1RJTTJSU1RfUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1RJTTJSU1QgICAgICAgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfVElNMlJTVF9Nc2sgICAgICAvKiE8IFRpbWVyIDIgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1RJTTNSU1RfUG9zICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1RJTTNSU1RfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMVJTVFJfVElNM1JTVF9Qb3MpIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNM1JTVCAgICAgICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9USU0zUlNUX01zayAgICAgIC8qITwgVGltZXIgMyByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNMTRSU1RfUG9zICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNMTRSU1RfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxUlNUUl9USU0xNFJTVF9Qb3MpIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNMTRSU1QgICAgICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9USU0xNFJTVF9Nc2sgICAgIC8qITwgVGltZXIgMTQgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1dXREdSU1RfUG9zICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1dXREdSU1RfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMVJTVFJfV1dER1JTVF9Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfV1dER1JTVCAgICAgICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9XV0RHUlNUX01zayAgICAgIC8qITwgV2luZG93IFdhdGNoZG9nIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9JMkMxUlNUX1BvcyAgICAgICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9JMkMxUlNUX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFSU1RSX0kyQzFSU1RfUG9zKSAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0kyQzFSU1QgICAgICAgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfSTJDMVJTVF9Nc2sgICAgICAvKiE8IEkyQyAxIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9QV1JSU1RfUG9zICAgICAgICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9QV1JSU1RfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFSU1RSX1BXUlJTVF9Qb3MpIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfUFdSUlNUICAgICAgICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9QV1JSU1RfTXNrICAgICAgIC8qITwgUFdSIHJlc2V0ICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQUhCRU5SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9ETUFFTl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkVOUl9ETUFFTl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCRU5SX0RNQUVOX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJDQ19BSEJFTlJfRE1BRU4gICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0FIQkVOUl9ETUFFTl9Nc2sgICAgICAgICAgLyohPCBETUExIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX1NSQU1FTl9Qb3MgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCRU5SX1NSQU1FTl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJFTlJfU1JBTUVOX1BvcykgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJDQ19BSEJFTlJfU1JBTUVOICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0FIQkVOUl9TUkFNRU5fTXNrICAgICAgICAgLyohPCBTUkFNIGludGVyZmFjZSBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9GTElURkVOX1BvcyAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkVOUl9GTElURkVOX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCRU5SX0ZMSVRGRU5fUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9GTElURkVOICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQUhCRU5SX0ZMSVRGRU5fTXNrICAgICAgICAvKiE8IEZMSVRGIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0NSQ0VOX1BvcyAgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCRU5SX0NSQ0VOX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJFTlJfQ1JDRU5fUG9zKSAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9DUkNFTiAgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQUhCRU5SX0NSQ0VOX01zayAgICAgICAgICAvKiE8IENSQyBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPQUVOX1BvcyAgICAgICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPQUVOX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCRU5SX0dQSU9BRU5fUG9zKSAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPQUVOICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQUhCRU5SX0dQSU9BRU5fTXNrICAgICAgICAvKiE8IEdQSU9BIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9CRU5fUG9zICAgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9CRU5fTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJFTlJfR1BJT0JFTl9Qb3MpIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9CRU4gICAgICAgICAgICAgICAgICAgICAgIFJDQ19BSEJFTlJfR1BJT0JFTl9Nc2sgICAgICAgIC8qITwgR1BJT0IgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0NFTl9Qb3MgICAgICAgICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0NFTl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQkVOUl9HUElPQ0VOX1BvcykgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0NFTiAgICAgICAgICAgICAgICAgICAgICAgUkNDX0FIQkVOUl9HUElPQ0VOX01zayAgICAgICAgLyohPCBHUElPQyBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPRkVOX1BvcyAgICAgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPRkVOX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCRU5SX0dQSU9GRU5fUG9zKSAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPRkVOICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQUhCRU5SX0dQSU9GRU5fTXNrICAgICAgICAvKiE8IEdQSU9GIGNsb2NrIGVuYWJsZSAqLw0KDQovKiBPbGQgQml0IGRlZmluaXRpb24gbWFpbnRhaW5lZCBmb3IgbGVnYWN5IHB1cnBvc2UgKi8NCiNkZWZpbmUgIFJDQ19BSEJFTlJfRE1BMUVOICAgICAgICAgICAgICAgICAgIFJDQ19BSEJFTlJfRE1BRU4gICAgICAgIC8qITwgRE1BMSBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgIFJDQ19BSEJFTlJfVFNFTiAgICAgICAgICAgICAgICAgICAgIFJDQ19BSEJFTlJfVFNDRU4gICAgICAgIC8qITwgVFMgY2xvY2sgZW5hYmxlICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19BUEIyRU5SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUkNDX0FQQjJFTlJfU1lTQ0ZHQ09NUEVOX1BvcyAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJFTlJfU1lTQ0ZHQ09NUEVOX01zayAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMkVOUl9TWVNDRkdDT01QRU5fUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUkNDX0FQQjJFTlJfU1lTQ0ZHQ09NUEVOICAgICAgICAgICAgICAgICBSQ0NfQVBCMkVOUl9TWVNDRkdDT01QRU5fTXNrICAvKiE8IFNZU0NGRyBhbmQgY29tcGFyYXRvciBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjJFTlJfQURDRU5fUG9zICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJFTlJfQURDRU5fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMkVOUl9BRENFTl9Qb3MpIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMkVOUl9BRENFTiAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19BUEIyRU5SX0FEQ0VOX01zayAgICAgICAgIC8qITwgQURDMSBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjJFTlJfVElNMUVOX1BvcyAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJFTlJfVElNMUVOX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMkVOUl9USU0xRU5fUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUkNDX0FQQjJFTlJfVElNMUVOICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQVBCMkVOUl9USU0xRU5fTXNrICAgICAgICAvKiE8IFRJTTEgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1NQSTFFTl9Qb3MgICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyRU5SX1NQSTFFTl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjJFTlJfU1BJMUVOX1BvcykgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1NQSTFFTiAgICAgICAgICAgICAgICAgICAgICAgUkNDX0FQQjJFTlJfU1BJMUVOX01zayAgICAgICAgLyohPCBTUEkxIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMkVOUl9VU0FSVDFFTl9Qb3MgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMkVOUl9VU0FSVDFFTl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIyRU5SX1VTQVJUMUVOX1BvcykgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1VTQVJUMUVOICAgICAgICAgICAgICAgICAgICAgUkNDX0FQQjJFTlJfVVNBUlQxRU5fTXNrICAgICAgLyohPCBVU0FSVDEgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1RJTTE2RU5fUG9zICAgICAgICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyRU5SX1RJTTE2RU5fTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjJFTlJfVElNMTZFTl9Qb3MpIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMkVOUl9USU0xNkVOICAgICAgICAgICAgICAgICAgICAgIFJDQ19BUEIyRU5SX1RJTTE2RU5fTXNrICAgICAgIC8qITwgVElNMTYgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1RJTTE3RU5fUG9zICAgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyRU5SX1RJTTE3RU5fTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjJFTlJfVElNMTdFTl9Qb3MpIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMkVOUl9USU0xN0VOICAgICAgICAgICAgICAgICAgICAgIFJDQ19BUEIyRU5SX1RJTTE3RU5fTXNrICAgICAgIC8qITwgVElNMTcgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX0RCR01DVUVOX1BvcyAgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyRU5SX0RCR01DVUVOX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjJFTlJfREJHTUNVRU5fUG9zKSAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjJFTlJfREJHTUNVRU4gICAgICAgICAgICAgICAgICAgICBSQ0NfQVBCMkVOUl9EQkdNQ1VFTl9Nc2sgICAgICAvKiE8IERCR01DVSBjbG9jayBlbmFibGUgKi8NCg0KLyogT2xkIEJpdCBkZWZpbml0aW9uIG1haW50YWluZWQgZm9yIGxlZ2FjeSBwdXJwb3NlICovDQojZGVmaW5lICBSQ0NfQVBCMkVOUl9TWVNDRkdFTiAgICAgICAgICAgICAgICBSQ0NfQVBCMkVOUl9TWVNDRkdDT01QRU4gICAgICAgIC8qITwgU1lTQ0ZHIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSAgUkNDX0FQQjJFTlJfQURDMUVOICAgICAgICAgICAgICAgICAgUkNDX0FQQjJFTlJfQURDRU4gICAgICAgICAgICAgICAvKiE8IEFEQzEgY2xvY2sgZW5hYmxlICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19BUEIxRU5SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNMkVOX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNMkVOX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUVOUl9USU0yRU5fUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNMkVOICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9USU0yRU5fTXNrICAgICAgICAvKiE8IFRpbWVyIDIgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTNFTl9Qb3MgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTNFTl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFFTlJfVElNM0VOX1BvcykgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTNFTiAgICAgICAgICAgICAgICAgICAgICAgUkNDX0FQQjFFTlJfVElNM0VOX01zayAgICAgICAgLyohPCBUaW1lciAzIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9USU0xNEVOX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9USU0xNEVOX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxRU5SX1RJTTE0RU5fUG9zKSAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNMTRFTiAgICAgICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9USU0xNEVOX01zayAgICAgICAvKiE8IFRpbWVyIDE0IGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9XV0RHRU5fUG9zICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9XV0RHRU5fTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxRU5SX1dXREdFTl9Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9XV0RHRU4gICAgICAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX1dXREdFTl9Nc2sgICAgICAgIC8qITwgV2luZG93IFdhdGNoZG9nIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9JMkMxRU5fUG9zICAgICAgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9JMkMxRU5fTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxRU5SX0kyQzFFTl9Qb3MpIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9JMkMxRU4gICAgICAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX0kyQzFFTl9Nc2sgICAgICAgIC8qITwgSTJDMSBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfUFdSRU5fUG9zICAgICAgICAgICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfUFdSRU5fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUVOUl9QV1JFTl9Qb3MpIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9QV1JFTiAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX1BXUkVOX01zayAgICAgICAgIC8qITwgUFdSIGNsb2NrIGVuYWJsZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19CRENSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJDQ19CRENSX0xTRU9OX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19CRENSX0xTRU9OX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0JEQ1JfTFNFT05fUG9zKSAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJDQ19CRENSX0xTRU9OICAgICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0JEQ1JfTFNFT05fTXNrICAgICAgICAgICAgLyohPCBFeHRlcm5hbCBMb3cgU3BlZWQgb3NjaWxsYXRvciBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0JEQ1JfTFNFUkRZX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0JEQ1JfTFNFUkRZX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQkRDUl9MU0VSRFlfUG9zKSAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUkNDX0JEQ1JfTFNFUkRZICAgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQkRDUl9MU0VSRFlfTXNrICAgICAgICAgICAvKiE8IEV4dGVybmFsIExvdyBTcGVlZCBvc2NpbGxhdG9yIFJlYWR5ICovDQojZGVmaW5lIFJDQ19CRENSX0xTRUJZUF9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19CRENSX0xTRUJZUF9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0JEQ1JfTFNFQllQX1BvcykgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJDQ19CRENSX0xTRUJZUCAgICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0JEQ1JfTFNFQllQX01zayAgICAgICAgICAgLyohPCBFeHRlcm5hbCBMb3cgU3BlZWQgb3NjaWxsYXRvciBCeXBhc3MgKi8NCg0KI2RlZmluZSBSQ0NfQkRDUl9MU0VEUlZfUG9zICAgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQkRDUl9MU0VEUlZfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFJDQ19CRENSX0xTRURSVl9Qb3MpIC8qITwgMHgwMDAwMDAxOCAqLw0KI2RlZmluZSBSQ0NfQkRDUl9MU0VEUlYgICAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19CRENSX0xTRURSVl9Nc2sgICAgICAgICAgIC8qITwgTFNFRFJWWzE6MF0gYml0cyAoTFNFIE9zYy4gZHJpdmUgY2FwYWJpbGl0eSkgKi8NCiNkZWZpbmUgUkNDX0JEQ1JfTFNFRFJWXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQkRDUl9MU0VEUlZfUG9zKSAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUkNDX0JEQ1JfTFNFRFJWXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSQ0NfQkRDUl9MU0VEUlZfUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8NCg0KI2RlZmluZSBSQ0NfQkRDUl9SVENTRUxfUG9zICAgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQkRDUl9SVENTRUxfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFJDQ19CRENSX1JUQ1NFTF9Qb3MpIC8qITwgMHgwMDAwMDMwMCAqLw0KI2RlZmluZSBSQ0NfQkRDUl9SVENTRUwgICAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19CRENSX1JUQ1NFTF9Nc2sgICAgICAgICAgIC8qITwgUlRDU0VMWzE6MF0gYml0cyAoUlRDIGNsb2NrIHNvdXJjZSBzZWxlY3Rpb24pICovDQojZGVmaW5lIFJDQ19CRENSX1JUQ1NFTF8wICAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0JEQ1JfUlRDU0VMX1BvcykgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJDQ19CRENSX1JUQ1NFTF8xICAgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX0JEQ1JfUlRDU0VMX1BvcykgLyohPCAweDAwMDAwMjAwICovDQoNCi8qITwgUlRDIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgUkNDX0JEQ1JfUlRDU0VMX05PQ0xPQ0sgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAvKiE8IE5vIGNsb2NrICovDQojZGVmaW5lIFJDQ19CRENSX1JUQ1NFTF9MU0UgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAxMDBVKSAgICAgICAgICAgICAgICAgLyohPCBMU0Ugb3NjaWxsYXRvciBjbG9jayB1c2VkIGFzIFJUQyBjbG9jayAqLw0KI2RlZmluZSBSQ0NfQkRDUl9SVENTRUxfTFNJICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMjAwVSkgICAgICAgICAgICAgICAgIC8qITwgTFNJIG9zY2lsbGF0b3IgY2xvY2sgdXNlZCBhcyBSVEMgY2xvY2sgKi8NCiNkZWZpbmUgUkNDX0JEQ1JfUlRDU0VMX0hTRSAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDMwMFUpICAgICAgICAgICAgICAgICAvKiE8IEhTRSBvc2NpbGxhdG9yIGNsb2NrIGRpdmlkZWQgYnkgMTI4IHVzZWQgYXMgUlRDIGNsb2NrICovDQoNCiNkZWZpbmUgUkNDX0JEQ1JfUlRDRU5fUG9zICAgICAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0JEQ1JfUlRDRU5fTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQkRDUl9SVENFTl9Qb3MpICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUkNDX0JEQ1JfUlRDRU4gICAgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQkRDUl9SVENFTl9Nc2sgICAgICAgICAgICAvKiE8IFJUQyBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0JEQ1JfQkRSU1RfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0JEQ1JfQkRSU1RfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQkRDUl9CRFJTVF9Qb3MpICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUkNDX0JEQ1JfQkRSU1QgICAgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQkRDUl9CRFJTVF9Nc2sgICAgICAgICAgICAvKiE8IEJhY2t1cCBkb21haW4gc29mdHdhcmUgcmVzZXQgICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0NTUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUkNDX0NTUl9MU0lPTl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9MU0lPTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1NSX0xTSU9OX1BvcykgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUkNDX0NTUl9MU0lPTiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX0xTSU9OX01zayAgICAgICAgICAgICAvKiE8IEludGVybmFsIExvdyBTcGVlZCBvc2NpbGxhdG9yIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQ1NSX0xTSVJEWV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX0xTSVJEWV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfTFNJUkRZX1BvcykgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSQ0NfQ1NSX0xTSVJEWSAgICAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfTFNJUkRZX01zayAgICAgICAgICAgIC8qITwgSW50ZXJuYWwgTG93IFNwZWVkIG9zY2lsbGF0b3IgUmVhZHkgKi8NCiNkZWZpbmUgUkNDX0NTUl9WMThQV1JSU1RGX1BvcyAgICAgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9WMThQV1JSU1RGX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1NSX1YxOFBXUlJTVEZfUG9zKSAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9WMThQV1JSU1RGICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX1YxOFBXUlJTVEZfTXNrICAgICAgICAvKiE8IFYxLjggcG93ZXIgZG9tYWluIHJlc2V0IGZsYWcgKi8NCiNkZWZpbmUgUkNDX0NTUl9STVZGX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9STVZGX01zayAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1NSX1JNVkZfUG9zKSAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9STVZGICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX1JNVkZfTXNrICAgICAgICAgICAgICAvKiE8IFJlbW92ZSByZXNldCBmbGFnICovDQojZGVmaW5lIFJDQ19DU1JfT0JMUlNURl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfT0JMUlNURl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NTUl9PQkxSU1RGX1BvcykgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIFJDQ19DU1JfT0JMUlNURiAgICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9PQkxSU1RGX01zayAgICAgICAgICAgLyohPCBPQkwgcmVzZXQgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ1NSX1BJTlJTVEZfUG9zICAgICAgICAgICAgICAgICAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX1BJTlJTVEZfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfUElOUlNURl9Qb3MpIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1NSX1BJTlJTVEYgICAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfUElOUlNURl9Nc2sgICAgICAgICAgIC8qITwgUElOIHJlc2V0IGZsYWcgKi8NCiNkZWZpbmUgUkNDX0NTUl9QT1JSU1RGX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMjdVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9QT1JSU1RGX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1NSX1BPUlJTVEZfUG9zKSAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9QT1JSU1RGICAgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX1BPUlJTVEZfTXNrICAgICAgICAgICAvKiE8IFBPUi9QRFIgcmVzZXQgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ1NSX1NGVFJTVEZfUG9zICAgICAgICAgICAgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX1NGVFJTVEZfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfU0ZUUlNURl9Qb3MpIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1NSX1NGVFJTVEYgICAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfU0ZUUlNURl9Nc2sgICAgICAgICAgIC8qITwgU29mdHdhcmUgUmVzZXQgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ1NSX0lXREdSU1RGX1BvcyAgICAgICAgICAgICAgICAgICAgICgyOVUpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX0lXREdSU1RGX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfSVdER1JTVEZfUG9zKSAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9JV0RHUlNURiAgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX0lXREdSU1RGX01zayAgICAgICAgICAvKiE8IEluZGVwZW5kZW50IFdhdGNoZG9nIHJlc2V0IGZsYWcgKi8NCiNkZWZpbmUgUkNDX0NTUl9XV0RHUlNURl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9XV0RHUlNURl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1NSX1dXREdSU1RGX1BvcykgLyohPCAweDQwMDAwMDAwICovDQojZGVmaW5lIFJDQ19DU1JfV1dER1JTVEYgICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9XV0RHUlNURl9Nc2sgICAgICAgICAgLyohPCBXaW5kb3cgd2F0Y2hkb2cgcmVzZXQgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ1NSX0xQV1JSU1RGX1BvcyAgICAgICAgICAgICAgICAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX0xQV1JSU1RGX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfTFBXUlJTVEZfUG9zKSAvKiE8IDB4ODAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9MUFdSUlNURiAgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX0xQV1JSU1RGX01zayAgICAgICAgICAvKiE8IExvdy1Qb3dlciByZXNldCBmbGFnICovDQoNCi8qIE9sZCBCaXQgZGVmaW5pdGlvbiBtYWludGFpbmVkIGZvciBsZWdhY3kgcHVycG9zZSAqLw0KI2RlZmluZSAgUkNDX0NTUl9PQkwgICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9PQkxSU1RGICAgICAgICAvKiE8IE9CTCByZXNldCBmbGFnICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0FIQlJTVFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0FSU1RfUG9zICAgICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0FSU1RfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCUlNUUl9HUElPQVJTVF9Qb3MpIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPQVJTVCAgICAgICAgICAgICAgICAgICAgIFJDQ19BSEJSU1RSX0dQSU9BUlNUX01zayAgICAgIC8qITwgR1BJT0EgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0JSU1RfUG9zICAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0JSU1RfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCUlNUUl9HUElPQlJTVF9Qb3MpIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPQlJTVCAgICAgICAgICAgICAgICAgICAgIFJDQ19BSEJSU1RSX0dQSU9CUlNUX01zayAgICAgIC8qITwgR1BJT0IgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0NSU1RfUG9zICAgICAgICAgICAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0NSU1RfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCUlNUUl9HUElPQ1JTVF9Qb3MpIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPQ1JTVCAgICAgICAgICAgICAgICAgICAgIFJDQ19BSEJSU1RSX0dQSU9DUlNUX01zayAgICAgIC8qITwgR1BJT0MgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0ZSU1RfUG9zICAgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0ZSU1RfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCUlNUUl9HUElPRlJTVF9Qb3MpIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPRlJTVCAgICAgICAgICAgICAgICAgICAgIFJDQ19BSEJSU1RSX0dQSU9GUlNUX01zayAgICAgIC8qITwgR1BJT0YgcmVzZXQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQ0ZHUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KLyohPCBQUkVESVYgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUjJfUFJFRElWX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUjJfUFJFRElWX01zayAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJDQ19DRkdSMl9QUkVESVZfUG9zKSAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgUkNDX0NGR1IyX1BSRURJViAgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUjJfUFJFRElWX01zayAgICAgICAgICAvKiE8IFBSRURJVlszOjBdIGJpdHMgKi8NCiNkZWZpbmUgUkNDX0NGR1IyX1BSRURJVl8wICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0ZHUjJfUFJFRElWX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJDQ19DRkdSMl9QUkVESVZfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX0NGR1IyX1BSRURJVl9Qb3MpIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUjJfUFJFRElWXzIgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJDQ19DRkdSMl9QUkVESVZfUG9zKSAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUkNDX0NGR1IyX1BSRURJVl8zICAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSQ0NfQ0ZHUjJfUFJFRElWX1BvcykgLyohPCAweDAwMDAwMDA4ICovDQoNCiNkZWZpbmUgUkNDX0NGR1IyX1BSRURJVl9ESVYxICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAvKiE8IFBSRURJViBpbnB1dCBjbG9jayBub3QgZGl2aWRlZCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUjJfUFJFRElWX0RJVjIgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAxVSkgICAgICAgICAgICAgICAgIC8qITwgUFJFRElWIGlucHV0IGNsb2NrIGRpdmlkZWQgYnkgMiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUjJfUFJFRElWX0RJVjMgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgIC8qITwgUFJFRElWIGlucHV0IGNsb2NrIGRpdmlkZWQgYnkgMyAqLw0KI2RlZmluZSBSQ0NfQ0ZHUjJfUFJFRElWX0RJVjQgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAzVSkgICAgICAgICAgICAgICAgIC8qITwgUFJFRElWIGlucHV0IGNsb2NrIGRpdmlkZWQgYnkgNCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUjJfUFJFRElWX0RJVjUgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA0VSkgICAgICAgICAgICAgICAgIC8qITwgUFJFRElWIGlucHV0IGNsb2NrIGRpdmlkZWQgYnkgNSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUjJfUFJFRElWX0RJVjYgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA1VSkgICAgICAgICAgICAgICAgIC8qITwgUFJFRElWIGlucHV0IGNsb2NrIGRpdmlkZWQgYnkgNiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUjJfUFJFRElWX0RJVjcgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA2VSkgICAgICAgICAgICAgICAgIC8qITwgUFJFRElWIGlucHV0IGNsb2NrIGRpdmlkZWQgYnkgNyAqLw0KI2RlZmluZSBSQ0NfQ0ZHUjJfUFJFRElWX0RJVjggICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA3VSkgICAgICAgICAgICAgICAgIC8qITwgUFJFRElWIGlucHV0IGNsb2NrIGRpdmlkZWQgYnkgOCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUjJfUFJFRElWX0RJVjkgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA4VSkgICAgICAgICAgICAgICAgIC8qITwgUFJFRElWIGlucHV0IGNsb2NrIGRpdmlkZWQgYnkgOSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUjJfUFJFRElWX0RJVjEwICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA5VSkgICAgICAgICAgICAgICAgIC8qITwgUFJFRElWIGlucHV0IGNsb2NrIGRpdmlkZWQgYnkgMTAgKi8NCiNkZWZpbmUgUkNDX0NGR1IyX1BSRURJVl9ESVYxMSAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwQVUpICAgICAgICAgICAgICAgICAvKiE8IFBSRURJViBpbnB1dCBjbG9jayBkaXZpZGVkIGJ5IDExICovDQojZGVmaW5lIFJDQ19DRkdSMl9QUkVESVZfRElWMTIgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMEJVKSAgICAgICAgICAgICAgICAgLyohPCBQUkVESVYgaW5wdXQgY2xvY2sgZGl2aWRlZCBieSAxMiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUjJfUFJFRElWX0RJVjEzICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDBDVSkgICAgICAgICAgICAgICAgIC8qITwgUFJFRElWIGlucHV0IGNsb2NrIGRpdmlkZWQgYnkgMTMgKi8NCiNkZWZpbmUgUkNDX0NGR1IyX1BSRURJVl9ESVYxNCAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwRFUpICAgICAgICAgICAgICAgICAvKiE8IFBSRURJViBpbnB1dCBjbG9jayBkaXZpZGVkIGJ5IDE0ICovDQojZGVmaW5lIFJDQ19DRkdSMl9QUkVESVZfRElWMTUgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMEVVKSAgICAgICAgICAgICAgICAgLyohPCBQUkVESVYgaW5wdXQgY2xvY2sgZGl2aWRlZCBieSAxNSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUjJfUFJFRElWX0RJVjE2ICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDBGVSkgICAgICAgICAgICAgICAgIC8qITwgUFJFRElWIGlucHV0IGNsb2NrIGRpdmlkZWQgYnkgMTYgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQ0ZHUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KLyohPCBVU0FSVDEgQ2xvY2sgc291cmNlIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUjNfVVNBUlQxU1dfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUjNfVVNBUlQxU1dfTXNrICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFJDQ19DRkdSM19VU0FSVDFTV19Qb3MpIC8qITwgMHgwMDAwMDAwMyAqLw0KI2RlZmluZSBSQ0NfQ0ZHUjNfVVNBUlQxU1cgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSM19VU0FSVDFTV19Nc2sgICAgICAgIC8qITwgVVNBUlQxU1dbMTowXSBiaXRzICovDQojZGVmaW5lIFJDQ19DRkdSM19VU0FSVDFTV18wICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NGR1IzX1VTQVJUMVNXX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJDQ19DRkdSM19VU0FSVDFTV18xICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX0NGR1IzX1VTQVJUMVNXX1BvcykgLyohPCAweDAwMDAwMDAyICovDQoNCiNkZWZpbmUgUkNDX0NGR1IzX1VTQVJUMVNXX1BDTEsgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAvKiE8IFBDTEsgY2xvY2sgdXNlZCBhcyBVU0FSVDEgY2xvY2sgc291cmNlICovDQojZGVmaW5lIFJDQ19DRkdSM19VU0FSVDFTV19TWVNDTEsgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgLyohPCBTeXN0ZW0gY2xvY2sgc2VsZWN0ZWQgYXMgVVNBUlQxIGNsb2NrIHNvdXJjZSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUjNfVVNBUlQxU1dfTFNFICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgIC8qITwgTFNFIG9zY2lsbGF0b3IgY2xvY2sgdXNlZCBhcyBVU0FSVDEgY2xvY2sgc291cmNlICovDQojZGVmaW5lIFJDQ19DRkdSM19VU0FSVDFTV19IU0kgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDNVKSAgICAgICAgICAgICAgICAgLyohPCBIU0kgb3NjaWxsYXRvciBjbG9jayB1c2VkIGFzIFVTQVJUMSBjbG9jayBzb3VyY2UgKi8NCg0KLyohPCBJMkMxIENsb2NrIHNvdXJjZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgUkNDX0NGR1IzX0kyQzFTV19Qb3MgICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1IzX0kyQzFTV19Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0ZHUjNfSTJDMVNXX1BvcykgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJDQ19DRkdSM19JMkMxU1cgICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NGR1IzX0kyQzFTV19Nc2sgICAgICAgICAgLyohPCBJMkMxU1cgYml0cyAqLyANCg0KI2RlZmluZSBSQ0NfQ0ZHUjNfSTJDMVNXX0hTSSAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgIC8qITwgSFNJIG9zY2lsbGF0b3IgY2xvY2sgdXNlZCBhcyBJMkMxIGNsb2NrIHNvdXJjZSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUjNfSTJDMVNXX1NZU0NMS19Qb3MgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUjNfSTJDMVNXX1NZU0NMS19Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DRkdSM19JMkMxU1dfU1lTQ0xLX1BvcykgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJDQ19DRkdSM19JMkMxU1dfU1lTQ0xLICAgICAgICAgICAgICAgICAgUkNDX0NGR1IzX0kyQzFTV19TWVNDTEtfTXNrICAgLyohPCBTeXN0ZW0gY2xvY2sgc2VsZWN0ZWQgYXMgSTJDMSBjbG9jayBzb3VyY2UgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQ1IyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSQ0NfQ1IyX0hTSTE0T05fUG9zICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1IyX0hTSTE0T05fTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DUjJfSFNJMTRPTl9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSQ0NfQ1IyX0hTSTE0T04gICAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DUjJfSFNJMTRPTl9Nc2sgICAgICAgICAgIC8qITwgSW50ZXJuYWwgSGlnaCBTcGVlZCAxNE1IeiBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0NSMl9IU0kxNFJEWV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NSMl9IU0kxNFJEWV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1IyX0hTSTE0UkRZX1BvcykgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJDQ19DUjJfSFNJMTRSRFkgICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NSMl9IU0kxNFJEWV9Nc2sgICAgICAgICAgLyohPCBJbnRlcm5hbCBIaWdoIFNwZWVkIDE0TUh6IGNsb2NrIHJlYWR5IGZsYWcgKi8NCiNkZWZpbmUgUkNDX0NSMl9IU0kxNERJU19Qb3MgICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NSMl9IU0kxNERJU19Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1IyX0hTSTE0RElTX1BvcykgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJDQ19DUjJfSFNJMTRESVMgICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NSMl9IU0kxNERJU19Nc2sgICAgICAgICAgLyohPCBJbnRlcm5hbCBIaWdoIFNwZWVkIDE0TUh6IGNsb2NrIGRpc2FibGUgKi8NCiNkZWZpbmUgUkNDX0NSMl9IU0kxNFRSSU1fUG9zICAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NSMl9IU0kxNFRSSU1fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgUkNDX0NSMl9IU0kxNFRSSU1fUG9zKSAvKiE8IDB4MDAwMDAwRjggKi8NCiNkZWZpbmUgUkNDX0NSMl9IU0kxNFRSSU0gICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1IyX0hTSTE0VFJJTV9Nc2sgICAgICAgICAvKiE8IEludGVybmFsIEhpZ2ggU3BlZWQgMTRNSHogY2xvY2sgdHJpbW1pbmcgKi8NCiNkZWZpbmUgUkNDX0NSMl9IU0kxNENBTF9Qb3MgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NSMl9IU0kxNENBTF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHhGRlUgPDwgUkNDX0NSMl9IU0kxNENBTF9Qb3MpIC8qITwgMHgwMDAwRkYwMCAqLw0KI2RlZmluZSBSQ0NfQ1IyX0hTSTE0Q0FMICAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DUjJfSFNJMTRDQUxfTXNrICAgICAgICAgIC8qITwgSW50ZXJuYWwgSGlnaCBTcGVlZCAxNE1IeiBjbG9jayBDYWxpYnJhdGlvbiAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJlYWwtVGltZSBDbG9jayAoUlRDKSAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKg0KKiBAYnJpZWYgU3BlY2lmaWMgZGV2aWNlIGZlYXR1cmUgZGVmaW5pdGlvbnMgIChub3QgcHJlc2VudCBvbiBhbGwgZGV2aWNlcyBpbiB0aGUgU1RNMzJGMCBzZXJpZSkNCiovDQojZGVmaW5lIFJUQ19UQU1QRVIxX1NVUFBPUlQgIC8qITwgVEFNUEVSIDEgZmVhdHVyZSBzdXBwb3J0ICovDQojZGVmaW5lIFJUQ19UQU1QRVIyX1NVUFBPUlQgIC8qITwgVEFNUEVSIDIgZmVhdHVyZSBzdXBwb3J0ICovDQojZGVmaW5lIFJUQ19CQUNLVVBfU1VQUE9SVCAgIC8qITwgQkFDS1VQIHJlZ2lzdGVyIGZlYXR1cmUgc3VwcG9ydCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX1RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19UUl9QTV9Qb3MgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9QTV9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RSX1BNX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJUQ19UUl9QTSAgICAgICAgICAgICAgICAgICAgUlRDX1RSX1BNX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9IVF9Qb3MgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9IVF9Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgUlRDX1RSX0hUX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMzAwMDAwICovDQojZGVmaW5lIFJUQ19UUl9IVCAgICAgICAgICAgICAgICAgICAgUlRDX1RSX0hUX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9IVF8wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RSX0hUX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIFJUQ19UUl9IVF8xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX1RSX0hUX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJUQ19UUl9IVV9Qb3MgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9IVV9Nc2sgICAgICAgICAgICAgICAgKDB4RlUgPDwgUlRDX1RSX0hVX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMEYwMDAwICovDQojZGVmaW5lIFJUQ19UUl9IVSAgICAgICAgICAgICAgICAgICAgUlRDX1RSX0hVX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9IVV8wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RSX0hVX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFJUQ19UUl9IVV8xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX1RSX0hVX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFJUQ19UUl9IVV8yICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUlRDX1RSX0hVX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJUQ19UUl9IVV8zICAgICAgICAgICAgICAgICAgKDB4OFUgPDwgUlRDX1RSX0hVX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJUQ19UUl9NTlRfUG9zICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9NTlRfTXNrICAgICAgICAgICAgICAgKDB4N1UgPDwgUlRDX1RSX01OVF9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDA3MDAwICovDQojZGVmaW5lIFJUQ19UUl9NTlQgICAgICAgICAgICAgICAgICAgUlRDX1RSX01OVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9NTlRfMCAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RSX01OVF9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJUQ19UUl9NTlRfMSAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX1RSX01OVF9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJUQ19UUl9NTlRfMiAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUlRDX1RSX01OVF9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJUQ19UUl9NTlVfUG9zICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9NTlVfTXNrICAgICAgICAgICAgICAgKDB4RlUgPDwgUlRDX1RSX01OVV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwRjAwICovDQojZGVmaW5lIFJUQ19UUl9NTlUgICAgICAgICAgICAgICAgICAgUlRDX1RSX01OVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9NTlVfMCAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RSX01OVV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJUQ19UUl9NTlVfMSAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX1RSX01OVV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJUQ19UUl9NTlVfMiAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUlRDX1RSX01OVV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJUQ19UUl9NTlVfMyAgICAgICAgICAgICAgICAgKDB4OFUgPDwgUlRDX1RSX01OVV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJUQ19UUl9TVF9Qb3MgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9TVF9Nc2sgICAgICAgICAgICAgICAgKDB4N1UgPDwgUlRDX1RSX1NUX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDcwICovDQojZGVmaW5lIFJUQ19UUl9TVCAgICAgICAgICAgICAgICAgICAgUlRDX1RSX1NUX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9TVF8wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RSX1NUX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJUQ19UUl9TVF8xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX1RSX1NUX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJUQ19UUl9TVF8yICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUlRDX1RSX1NUX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJUQ19UUl9TVV9Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9TVV9Nc2sgICAgICAgICAgICAgICAgKDB4RlUgPDwgUlRDX1RSX1NVX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFJUQ19UUl9TVSAgICAgICAgICAgICAgICAgICAgUlRDX1RSX1NVX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9TVV8wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RSX1NVX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJUQ19UUl9TVV8xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX1RSX1NVX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJUQ19UUl9TVV8yICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUlRDX1RSX1NVX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJUQ19UUl9TVV8zICAgICAgICAgICAgICAgICAgKDB4OFUgPDwgUlRDX1RSX1NVX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfRFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0RSX1lUX1BvcyAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX1lUX01zayAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfRFJfWVRfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDBGMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1lUICAgICAgICAgICAgICAgICAgICBSVENfRFJfWVRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX1lUXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfRFJfWVRfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1lUXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfRFJfWVRfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1lUXzIgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfRFJfWVRfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1lUXzMgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfRFJfWVRfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1lVX1BvcyAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX1lVX01zayAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfRFJfWVVfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwRjAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1lVICAgICAgICAgICAgICAgICAgICBSVENfRFJfWVVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX1lVXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfRFJfWVVfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1lVXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfRFJfWVVfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1lVXzIgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfRFJfWVVfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1lVXzMgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfRFJfWVVfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1dEVV9Qb3MgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX1dEVV9Nc2sgICAgICAgICAgICAgICAoMHg3VSA8PCBSVENfRFJfV0RVX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMEUwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1dEVSAgICAgICAgICAgICAgICAgICBSVENfRFJfV0RVX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX1dEVV8wICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfRFJfV0RVX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1dEVV8xICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfRFJfV0RVX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1dEVV8yICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfRFJfV0RVX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX01UX1BvcyAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX01UX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfRFJfTVRfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX01UICAgICAgICAgICAgICAgICAgICBSVENfRFJfTVRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX01VX1BvcyAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX01VX01zayAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfRFJfTVVfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgUlRDX0RSX01VICAgICAgICAgICAgICAgICAgICBSVENfRFJfTVVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX01VXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfRFJfTVVfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUlRDX0RSX01VXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfRFJfTVVfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUlRDX0RSX01VXzIgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfRFJfTVVfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUlRDX0RSX01VXzMgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfRFJfTVVfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUlRDX0RSX0RUX1BvcyAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX0RUX01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBSVENfRFJfRFRfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMzAgKi8NCiNkZWZpbmUgUlRDX0RSX0RUICAgICAgICAgICAgICAgICAgICBSVENfRFJfRFRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX0RUXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfRFJfRFRfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUlRDX0RSX0RUXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfRFJfRFRfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUlRDX0RSX0RVX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX0RVX01zayAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfRFJfRFVfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgUlRDX0RSX0RVICAgICAgICAgICAgICAgICAgICBSVENfRFJfRFVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX0RVXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfRFJfRFVfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUlRDX0RSX0RVXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfRFJfRFVfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUlRDX0RSX0RVXzIgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfRFJfRFVfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUlRDX0RSX0RVXzMgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfRFJfRFVfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19DUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQ1JfQ09FX1BvcyAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfQ09FX01zayAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9DT0VfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBSVENfQ1JfQ09FICAgICAgICAgICAgICAgICAgIFJUQ19DUl9DT0VfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfT1NFTF9Qb3MgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfT1NFTF9Nc2sgICAgICAgICAgICAgICgweDNVIDw8IFJUQ19DUl9PU0VMX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDYwMDAwMCAqLw0KI2RlZmluZSBSVENfQ1JfT1NFTCAgICAgICAgICAgICAgICAgIFJUQ19DUl9PU0VMX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfT1NFTF8wICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9PU0VMX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBSVENfQ1JfT1NFTF8xICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19DUl9PU0VMX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBSVENfQ1JfUE9MX1BvcyAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfUE9MX01zayAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9QT0xfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBSVENfQ1JfUE9MICAgICAgICAgICAgICAgICAgIFJUQ19DUl9QT0xfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfQ09TRUxfUG9zICAgICAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfQ09TRUxfTXNrICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9DT1NFTF9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBSVENfQ1JfQ09TRUwgICAgICAgICAgICAgICAgIFJUQ19DUl9DT1NFTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfQktQX1BvcyAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfQktQX01zayAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9CS1BfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBSVENfQ1JfQktQICAgICAgICAgICAgICAgICAgIFJUQ19DUl9CS1BfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfU1VCMUhfUG9zICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfU1VCMUhfTXNrICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9TVUIxSF9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBSVENfQ1JfU1VCMUggICAgICAgICAgICAgICAgIFJUQ19DUl9TVUIxSF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfQUREMUhfUG9zICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfQUREMUhfTXNrICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9BREQxSF9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBSVENfQ1JfQUREMUggICAgICAgICAgICAgICAgIFJUQ19DUl9BREQxSF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfVFNJRV9Qb3MgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfVFNJRV9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9UU0lFX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBSVENfQ1JfVFNJRSAgICAgICAgICAgICAgICAgIFJUQ19DUl9UU0lFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfQUxSQUlFX1BvcyAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfQUxSQUlFX01zayAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9BTFJBSUVfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSVENfQ1JfQUxSQUlFICAgICAgICAgICAgICAgIFJUQ19DUl9BTFJBSUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfVFNFX1BvcyAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfVFNFX01zayAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9UU0VfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSVENfQ1JfVFNFICAgICAgICAgICAgICAgICAgIFJUQ19DUl9UU0VfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfQUxSQUVfUG9zICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfQUxSQUVfTXNrICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9BTFJBRV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSVENfQ1JfQUxSQUUgICAgICAgICAgICAgICAgIFJUQ19DUl9BTFJBRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfRk1UX1BvcyAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfRk1UX01zayAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9GTVRfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSVENfQ1JfRk1UICAgICAgICAgICAgICAgICAgIFJUQ19DUl9GTVRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfQllQU0hBRF9Qb3MgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfQllQU0hBRF9Nc2sgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9CWVBTSEFEX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSVENfQ1JfQllQU0hBRCAgICAgICAgICAgICAgIFJUQ19DUl9CWVBTSEFEX01zayAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfUkVGQ0tPTl9Qb3MgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfUkVGQ0tPTl9Nc2sgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9SRUZDS09OX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSVENfQ1JfUkVGQ0tPTiAgICAgICAgICAgICAgIFJUQ19DUl9SRUZDS09OX01zayAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfVFNFREdFX1BvcyAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfVFNFREdFX01zayAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9UU0VER0VfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSVENfQ1JfVFNFREdFICAgICAgICAgICAgICAgIFJUQ19DUl9UU0VER0VfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIA0KDQovKiBMZWdhY3kgZGVmaW5lcyAqLw0KI2RlZmluZSBSVENfQ1JfQkNLX1BvcyAgICAgICAgICAgICAgIFJUQ19DUl9CS1BfUG9zDQojZGVmaW5lIFJUQ19DUl9CQ0tfTXNrICAgICAgICAgICAgICAgUlRDX0NSX0JLUF9Nc2sNCiNkZWZpbmUgUlRDX0NSX0JDSyAgICAgICAgICAgICAgICAgICBSVENfQ1JfQktQDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfSVNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0lTUl9SRUNBTFBGX1BvcyAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9SRUNBTFBGX01zayAgICAgICAgICAoMHgxVSA8PCBSVENfSVNSX1JFQ0FMUEZfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUlRDX0lTUl9SRUNBTFBGICAgICAgICAgICAgICBSVENfSVNSX1JFQ0FMUEZfTXNrICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9UQU1QMkZfUG9zICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9UQU1QMkZfTXNrICAgICAgICAgICAoMHgxVSA8PCBSVENfSVNSX1RBTVAyRl9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUlRDX0lTUl9UQU1QMkYgICAgICAgICAgICAgICBSVENfSVNSX1RBTVAyRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9UQU1QMUZfUG9zICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9UQU1QMUZfTXNrICAgICAgICAgICAoMHgxVSA8PCBSVENfSVNSX1RBTVAxRl9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUlRDX0lTUl9UQU1QMUYgICAgICAgICAgICAgICBSVENfSVNSX1RBTVAxRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9UU09WRl9Qb3MgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9UU09WRl9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSVENfSVNSX1RTT1ZGX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUlRDX0lTUl9UU09WRiAgICAgICAgICAgICAgICBSVENfSVNSX1RTT1ZGX01zayAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9UU0ZfUG9zICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9UU0ZfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfSVNSX1RTRl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUlRDX0lTUl9UU0YgICAgICAgICAgICAgICAgICBSVENfSVNSX1RTRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9BTFJBRl9Qb3MgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9BTFJBRl9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSVENfSVNSX0FMUkFGX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUlRDX0lTUl9BTFJBRiAgICAgICAgICAgICAgICBSVENfSVNSX0FMUkFGX01zayAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9JTklUX1BvcyAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9JTklUX01zayAgICAgICAgICAgICAoMHgxVSA8PCBSVENfSVNSX0lOSVRfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUlRDX0lTUl9JTklUICAgICAgICAgICAgICAgICBSVENfSVNSX0lOSVRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9JTklURl9Qb3MgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9JTklURl9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSVENfSVNSX0lOSVRGX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUlRDX0lTUl9JTklURiAgICAgICAgICAgICAgICBSVENfSVNSX0lOSVRGX01zayAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9SU0ZfUG9zICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9SU0ZfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfSVNSX1JTRl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUlRDX0lTUl9SU0YgICAgICAgICAgICAgICAgICBSVENfSVNSX1JTRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9JTklUU19Qb3MgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9JTklUU19Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSVENfSVNSX0lOSVRTX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUlRDX0lTUl9JTklUUyAgICAgICAgICAgICAgICBSVENfSVNSX0lOSVRTX01zayAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9TSFBGX1BvcyAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9TSFBGX01zayAgICAgICAgICAgICAoMHgxVSA8PCBSVENfSVNSX1NIUEZfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUlRDX0lTUl9TSFBGICAgICAgICAgICAgICAgICBSVENfSVNSX1NIUEZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9BTFJBV0ZfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9BTFJBV0ZfTXNrICAgICAgICAgICAoMHgxVSA8PCBSVENfSVNSX0FMUkFXRl9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUlRDX0lTUl9BTFJBV0YgICAgICAgICAgICAgICBSVENfSVNSX0FMUkFXRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19QUkVSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfUFJFUl9QUkVESVZfQV9Qb3MgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfUFJFUl9QUkVESVZfQV9Nc2sgICAgICAgICgweDdGVSA8PCBSVENfUFJFUl9QUkVESVZfQV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDdGMDAwMCAqLw0KI2RlZmluZSBSVENfUFJFUl9QUkVESVZfQSAgICAgICAgICAgIFJUQ19QUkVSX1BSRURJVl9BX01zayAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfUFJFUl9QUkVESVZfU19Qb3MgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfUFJFUl9QUkVESVZfU19Nc2sgICAgICAgICgweDdGRkZVIDw8IFJUQ19QUkVSX1BSRURJVl9TX1BvcykgICAgICAgIC8qITwgMHgwMDAwN0ZGRiAqLw0KI2RlZmluZSBSVENfUFJFUl9QUkVESVZfUyAgICAgICAgICAgIFJUQ19QUkVSX1BSRURJVl9TX01zayAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0FMUk1BUiByZWdpc3RlciAgKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLNF9Qb3MgICAgICAgICAgKDMxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLNF9Nc2sgICAgICAgICAgKDB4MVUgPDwgUlRDX0FMUk1BUl9NU0s0X1BvcykgICAgICAgICAgICAgLyohPCAweDgwMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLNCAgICAgICAgICAgICAgUlRDX0FMUk1BUl9NU0s0X01zayAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfV0RTRUxfUG9zICAgICAgICAgKDMwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfV0RTRUxfTXNrICAgICAgICAgKDB4MVUgPDwgUlRDX0FMUk1BUl9XRFNFTF9Qb3MpICAgICAgICAgICAgLyohPCAweDQwMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfV0RTRUwgICAgICAgICAgICAgUlRDX0FMUk1BUl9XRFNFTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfRFRfUG9zICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfRFRfTXNrICAgICAgICAgICAgKDB4M1UgPDwgUlRDX0FMUk1BUl9EVF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDMwMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfRFQgICAgICAgICAgICAgICAgUlRDX0FMUk1BUl9EVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfRFRfMCAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0FMUk1BUl9EVF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfRFRfMSAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX0FMUk1BUl9EVF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfRFVfUG9zICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfRFVfTXNrICAgICAgICAgICAgKDB4RlUgPDwgUlRDX0FMUk1BUl9EVV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDBGMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfRFUgICAgICAgICAgICAgICAgUlRDX0FMUk1BUl9EVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfRFVfMCAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0FMUk1BUl9EVV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfRFVfMSAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX0FMUk1BUl9EVV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfRFVfMiAgICAgICAgICAgICAgKDB4NFUgPDwgUlRDX0FMUk1BUl9EVV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfRFVfMyAgICAgICAgICAgICAgKDB4OFUgPDwgUlRDX0FMUk1BUl9EVV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLM19Qb3MgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLM19Nc2sgICAgICAgICAgKDB4MVUgPDwgUlRDX0FMUk1BUl9NU0szX1BvcykgICAgICAgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLMyAgICAgICAgICAgICAgUlRDX0FMUk1BUl9NU0szX01zayAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfUE1fUG9zICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfUE1fTXNrICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0FMUk1BUl9QTV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfUE0gICAgICAgICAgICAgICAgUlRDX0FMUk1BUl9QTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfSFRfUG9zICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfSFRfTXNrICAgICAgICAgICAgKDB4M1UgPDwgUlRDX0FMUk1BUl9IVF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMzAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfSFQgICAgICAgICAgICAgICAgUlRDX0FMUk1BUl9IVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfSFRfMCAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0FMUk1BUl9IVF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfSFRfMSAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX0FMUk1BUl9IVF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfSFVfUG9zICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfSFVfTXNrICAgICAgICAgICAgKDB4RlUgPDwgUlRDX0FMUk1BUl9IVV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMEYwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfSFUgICAgICAgICAgICAgICAgUlRDX0FMUk1BUl9IVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfSFVfMCAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0FMUk1BUl9IVV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfSFVfMSAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX0FMUk1BUl9IVV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfSFVfMiAgICAgICAgICAgICAgKDB4NFUgPDwgUlRDX0FMUk1BUl9IVV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfSFVfMyAgICAgICAgICAgICAgKDB4OFUgPDwgUlRDX0FMUk1BUl9IVV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLMl9Qb3MgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLMl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUlRDX0FMUk1BUl9NU0syX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLMiAgICAgICAgICAgICAgUlRDX0FMUk1BUl9NU0syX01zayAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5UX1BvcyAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5UX01zayAgICAgICAgICAgKDB4N1UgPDwgUlRDX0FMUk1BUl9NTlRfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDA3MDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5UICAgICAgICAgICAgICAgUlRDX0FMUk1BUl9NTlRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5UXzAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0FMUk1BUl9NTlRfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5UXzEgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX0FMUk1BUl9NTlRfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5UXzIgICAgICAgICAgICAgKDB4NFUgPDwgUlRDX0FMUk1BUl9NTlRfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5VX1BvcyAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5VX01zayAgICAgICAgICAgKDB4RlUgPDwgUlRDX0FMUk1BUl9NTlVfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwRjAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5VICAgICAgICAgICAgICAgUlRDX0FMUk1BUl9NTlVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5VXzAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0FMUk1BUl9NTlVfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5VXzEgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX0FMUk1BUl9NTlVfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5VXzIgICAgICAgICAgICAgKDB4NFUgPDwgUlRDX0FMUk1BUl9NTlVfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5VXzMgICAgICAgICAgICAgKDB4OFUgPDwgUlRDX0FMUk1BUl9NTlVfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLMV9Qb3MgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLMV9Nc2sgICAgICAgICAgKDB4MVUgPDwgUlRDX0FMUk1BUl9NU0sxX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLMSAgICAgICAgICAgICAgUlRDX0FMUk1BUl9NU0sxX01zayAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfU1RfUG9zICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfU1RfTXNrICAgICAgICAgICAgKDB4N1UgPDwgUlRDX0FMUk1BUl9TVF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDcwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfU1QgICAgICAgICAgICAgICAgUlRDX0FMUk1BUl9TVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfU1RfMCAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0FMUk1BUl9TVF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfU1RfMSAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX0FMUk1BUl9TVF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfU1RfMiAgICAgICAgICAgICAgKDB4NFUgPDwgUlRDX0FMUk1BUl9TVF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfU1VfUG9zICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfU1VfTXNrICAgICAgICAgICAgKDB4RlUgPDwgUlRDX0FMUk1BUl9TVV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFJUQ19BTFJNQVJfU1UgICAgICAgICAgICAgICAgUlRDX0FMUk1BUl9TVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfU1VfMCAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0FMUk1BUl9TVV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJUQ19BTFJNQVJfU1VfMSAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX0FMUk1BUl9TVV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJUQ19BTFJNQVJfU1VfMiAgICAgICAgICAgICAgKDB4NFUgPDwgUlRDX0FMUk1BUl9TVV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJUQ19BTFJNQVJfU1VfMyAgICAgICAgICAgICAgKDB4OFUgPDwgUlRDX0FMUk1BUl9TVV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfV1BSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX1dQUl9LRVlfUG9zICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1dQUl9LRVlfTXNrICAgICAgICAgICAgICAoMHhGRlUgPDwgUlRDX1dQUl9LRVlfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwRkYgKi8NCiNkZWZpbmUgUlRDX1dQUl9LRVkgICAgICAgICAgICAgICAgICBSVENfV1BSX0tFWV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19TU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfU1NSX1NTX1BvcyAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfU1NSX1NTX01zayAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJUQ19TU1JfU1NfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSVENfU1NSX1NTICAgICAgICAgICAgICAgICAgIFJUQ19TU1JfU1NfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX1NISUZUUiByZWdpc3RlciAgKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19TSElGVFJfU1VCRlNfUG9zICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19TSElGVFJfU1VCRlNfTXNrICAgICAgICAgKDB4N0ZGRlUgPDwgUlRDX1NISUZUUl9TVUJGU19Qb3MpICAgICAgICAgLyohPCAweDAwMDA3RkZGICovDQojZGVmaW5lIFJUQ19TSElGVFJfU1VCRlMgICAgICAgICAgICAgUlRDX1NISUZUUl9TVUJGU19Nc2sgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19TSElGVFJfQUREMVNfUG9zICAgICAgICAgKDMxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19TSElGVFJfQUREMVNfTXNrICAgICAgICAgKDB4MVUgPDwgUlRDX1NISUZUUl9BREQxU19Qb3MpICAgICAgICAgICAgLyohPCAweDgwMDAwMDAwICovDQojZGVmaW5lIFJUQ19TSElGVFJfQUREMVMgICAgICAgICAgICAgUlRDX1NISUZUUl9BREQxU19Nc2sgICAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfVFNUUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX1RTVFJfUE1fUG9zICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfUE1fTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNUUl9QTV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfUE0gICAgICAgICAgICAgICAgICBSVENfVFNUUl9QTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfSFRfUG9zICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfSFRfTXNrICAgICAgICAgICAgICAoMHgzVSA8PCBSVENfVFNUUl9IVF9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAzMDAwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfSFQgICAgICAgICAgICAgICAgICBSVENfVFNUUl9IVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfSFRfMCAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNUUl9IVF9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfSFRfMSAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFNUUl9IVF9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfSFVfUG9zICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfSFVfTXNrICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfVFNUUl9IVV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwRjAwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfSFUgICAgICAgICAgICAgICAgICBSVENfVFNUUl9IVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfSFVfMCAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNUUl9IVV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfSFVfMSAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFNUUl9IVV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfSFVfMiAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFNUUl9IVV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfSFVfMyAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfVFNUUl9IVV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfTU5UX1BvcyAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfTU5UX01zayAgICAgICAgICAgICAoMHg3VSA8PCBSVENfVFNUUl9NTlRfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDcwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfTU5UICAgICAgICAgICAgICAgICBSVENfVFNUUl9NTlRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfTU5UXzAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNUUl9NTlRfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfTU5UXzEgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFNUUl9NTlRfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfTU5UXzIgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFNUUl9NTlRfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfTU5VX1BvcyAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfTU5VX01zayAgICAgICAgICAgICAoMHhGVSA8PCBSVENfVFNUUl9NTlVfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfTU5VICAgICAgICAgICAgICAgICBSVENfVFNUUl9NTlVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfTU5VXzAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNUUl9NTlVfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfTU5VXzEgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFNUUl9NTlVfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfTU5VXzIgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFNUUl9NTlVfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfTU5VXzMgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfVFNUUl9NTlVfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfU1RfUG9zICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfU1RfTXNrICAgICAgICAgICAgICAoMHg3VSA8PCBSVENfVFNUUl9TVF9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNzAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfU1QgICAgICAgICAgICAgICAgICBSVENfVFNUUl9TVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfU1RfMCAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNUUl9TVF9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfU1RfMSAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFNUUl9TVF9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfU1RfMiAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFNUUl9TVF9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfU1VfUG9zICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfU1VfTXNrICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfVFNUUl9TVV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgUlRDX1RTVFJfU1UgICAgICAgICAgICAgICAgICBSVENfVFNUUl9TVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfU1VfMCAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNUUl9TVV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUlRDX1RTVFJfU1VfMSAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFNUUl9TVV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUlRDX1RTVFJfU1VfMiAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFNUUl9TVV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUlRDX1RTVFJfU1VfMyAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfVFNUUl9TVV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19UU0RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfVFNEUl9XRFVfUG9zICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVFNEUl9XRFVfTXNrICAgICAgICAgICAgICgweDdVIDw8IFJUQ19UU0RSX1dEVV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwRTAwMCAqLw0KI2RlZmluZSBSVENfVFNEUl9XRFUgICAgICAgICAgICAgICAgIFJUQ19UU0RSX1dEVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVFNEUl9XRFVfMCAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UU0RSX1dEVV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSVENfVFNEUl9XRFVfMSAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UU0RSX1dEVV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSVENfVFNEUl9XRFVfMiAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UU0RSX1dEVV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBSVENfVFNEUl9NVF9Qb3MgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVFNEUl9NVF9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UU0RSX01UX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSVENfVFNEUl9NVCAgICAgICAgICAgICAgICAgIFJUQ19UU0RSX01UX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVFNEUl9NVV9Qb3MgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVFNEUl9NVV9Nc2sgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19UU0RSX01VX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMEYwMCAqLw0KI2RlZmluZSBSVENfVFNEUl9NVSAgICAgICAgICAgICAgICAgIFJUQ19UU0RSX01VX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVFNEUl9NVV8wICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UU0RSX01VX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSVENfVFNEUl9NVV8xICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UU0RSX01VX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSVENfVFNEUl9NVV8yICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UU0RSX01VX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSVENfVFNEUl9NVV8zICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19UU0RSX01VX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSVENfVFNEUl9EVF9Qb3MgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVFNEUl9EVF9Nc2sgICAgICAgICAgICAgICgweDNVIDw8IFJUQ19UU0RSX0RUX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAzMCAqLw0KI2RlZmluZSBSVENfVFNEUl9EVCAgICAgICAgICAgICAgICAgIFJUQ19UU0RSX0RUX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVFNEUl9EVF8wICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UU0RSX0RUX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSVENfVFNEUl9EVF8xICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UU0RSX0RUX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSVENfVFNEUl9EVV9Qb3MgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVFNEUl9EVV9Nc2sgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19UU0RSX0RVX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBSVENfVFNEUl9EVSAgICAgICAgICAgICAgICAgIFJUQ19UU0RSX0RVX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVFNEUl9EVV8wICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UU0RSX0RVX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSVENfVFNEUl9EVV8xICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UU0RSX0RVX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSVENfVFNEUl9EVV8yICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UU0RSX0RVX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSVENfVFNEUl9EVV8zICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19UU0RSX0RVX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX1RTU1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19UU1NTUl9TU19Qb3MgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1NTUl9TU19Nc2sgICAgICAgICAgICAgKDB4RkZGRlUgPDwgUlRDX1RTU1NSX1NTX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJUQ19UU1NTUl9TUyAgICAgICAgICAgICAgICAgUlRDX1RTU1NSX1NTX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQ0FMUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMUF9Qb3MgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTFJfQ0FMUF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ0FMUl9DQUxQX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMUCAgICAgICAgICAgICAgICBSVENfQ0FMUl9DQUxQX01zayAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTFJfQ0FMVzhfUG9zICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTFJfQ0FMVzhfTXNrICAgICAgICAgICAoMHgxVSA8PCBSVENfQ0FMUl9DQUxXOF9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMVzggICAgICAgICAgICAgICBSVENfQ0FMUl9DQUxXOF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTFJfQ0FMVzE2X1BvcyAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTFJfQ0FMVzE2X01zayAgICAgICAgICAoMHgxVSA8PCBSVENfQ0FMUl9DQUxXMTZfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMVzE2ICAgICAgICAgICAgICBSVENfQ0FMUl9DQUxXMTZfTXNrICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV9Qb3MgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV9Nc2sgICAgICAgICAgICAoMHgxRkZVIDw8IFJUQ19DQUxSX0NBTE1fUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxRkYgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTSAgICAgICAgICAgICAgICBSVENfQ0FMUl9DQUxNX01zayAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV8wICAgICAgICAgICAgICAoMHgwMDFVIDw8IFJUQ19DQUxSX0NBTE1fUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV8xICAgICAgICAgICAgICAoMHgwMDJVIDw8IFJUQ19DQUxSX0NBTE1fUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV8yICAgICAgICAgICAgICAoMHgwMDRVIDw8IFJUQ19DQUxSX0NBTE1fUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV8zICAgICAgICAgICAgICAoMHgwMDhVIDw8IFJUQ19DQUxSX0NBTE1fUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV80ICAgICAgICAgICAgICAoMHgwMTBVIDw8IFJUQ19DQUxSX0NBTE1fUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV81ICAgICAgICAgICAgICAoMHgwMjBVIDw8IFJUQ19DQUxSX0NBTE1fUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV82ICAgICAgICAgICAgICAoMHgwNDBVIDw8IFJUQ19DQUxSX0NBTE1fUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV83ICAgICAgICAgICAgICAoMHgwODBVIDw8IFJUQ19DQUxSX0NBTE1fUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV84ICAgICAgICAgICAgICAoMHgxMDBVIDw8IFJUQ19DQUxSX0NBTE1fUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19UQUZDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfVEFGQ1JfUEMxNU1PREVfUG9zICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfUEMxNU1PREVfTXNrICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9QQzE1TU9ERV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfUEMxNU1PREUgICAgICAgICAgIFJUQ19UQUZDUl9QQzE1TU9ERV9Nc2sgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfUEMxNVZBTFVFX1BvcyAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfUEMxNVZBTFVFX01zayAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9QQzE1VkFMVUVfUG9zKSAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfUEMxNVZBTFVFICAgICAgICAgIFJUQ19UQUZDUl9QQzE1VkFMVUVfTXNrICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfUEMxNE1PREVfUG9zICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfUEMxNE1PREVfTXNrICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9QQzE0TU9ERV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfUEMxNE1PREUgICAgICAgICAgIFJUQ19UQUZDUl9QQzE0TU9ERV9Nc2sgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfUEMxNFZBTFVFX1BvcyAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfUEMxNFZBTFVFX01zayAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9QQzE0VkFMVUVfUG9zKSAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfUEMxNFZBTFVFICAgICAgICAgIFJUQ19UQUZDUl9QQzE0VkFMVUVfTXNrICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfUEMxM01PREVfUG9zICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfUEMxM01PREVfTXNrICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9QQzEzTU9ERV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfUEMxM01PREUgICAgICAgICAgIFJUQ19UQUZDUl9QQzEzTU9ERV9Nc2sgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfUEMxM1ZBTFVFX1BvcyAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfUEMxM1ZBTFVFX01zayAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9QQzEzVkFMVUVfUG9zKSAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfUEMxM1ZBTFVFICAgICAgICAgIFJUQ19UQUZDUl9QQzEzVkFMVUVfTXNrICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFBVRElTX1BvcyAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFBVRElTX01zayAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QUFVESVNfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFBVRElTICAgICAgICAgIFJUQ19UQUZDUl9UQU1QUFVESVNfTXNrICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFBSQ0hfUG9zICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFBSQ0hfTXNrICAgICAgICgweDNVIDw8IFJUQ19UQUZDUl9UQU1QUFJDSF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwNjAwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFBSQ0ggICAgICAgICAgIFJUQ19UQUZDUl9UQU1QUFJDSF9Nc2sgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFBSQ0hfMCAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QUFJDSF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFBSQ0hfMSAgICAgICAgICgweDJVIDw8IFJUQ19UQUZDUl9UQU1QUFJDSF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZMVF9Qb3MgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZMVF9Nc2sgICAgICAgICgweDNVIDw8IFJUQ19UQUZDUl9UQU1QRkxUX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMTgwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZMVCAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QRkxUX01zayAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZMVF8wICAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QRkxUX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZMVF8xICAgICAgICAgICgweDJVIDw8IFJUQ19UQUZDUl9UQU1QRkxUX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZSRVFfUG9zICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZSRVFfTXNrICAgICAgICgweDdVIDw8IFJUQ19UQUZDUl9UQU1QRlJFUV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDcwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZSRVEgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QRlJFUV9Nc2sgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZSRVFfMCAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QRlJFUV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZSRVFfMSAgICAgICAgICgweDJVIDw8IFJUQ19UQUZDUl9UQU1QRlJFUV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZSRVFfMiAgICAgICAgICgweDRVIDw8IFJUQ19UQUZDUl9UQU1QRlJFUV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFRTX1BvcyAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFRTX01zayAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QVFNfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFRTICAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QVFNfTXNrICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDJUUkdfUG9zICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDJUUkdfTXNrICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QMlRSR19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDJUUkcgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QMlRSR19Nc2sgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDJFX1BvcyAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDJFX01zayAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QMkVfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDJFICAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QMkVfTXNrICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUElFX1BvcyAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUElFX01zayAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QSUVfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUElFICAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QSUVfTXNrICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDFUUkdfUG9zICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDFUUkdfTXNrICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QMVRSR19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDFUUkcgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QMVRSR19Nc2sgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDFFX1BvcyAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDFFX01zayAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QMUVfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDFFICAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QMUVfTXNrICAgICAgICAgICAgICAgICAgICAgIA0KDQovKiBSZWZlcmVuY2UgZGVmaW5lcyAqLw0KI2RlZmluZSBSVENfVEFGQ1JfQUxBUk1PVVRUWVBFICAgICAgICAgICAgICAgUlRDX1RBRkNSX1BDMTNWQUxVRQ0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0FMUk1BU1NSIHJlZ2lzdGVyICAqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19BTFJNQVNTUl9NQVNLU1NfUG9zICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVNTUl9NQVNLU1NfTXNrICAgICAgKDB4RlUgPDwgUlRDX0FMUk1BU1NSX01BU0tTU19Qb3MpICAgICAgICAgLyohPCAweDBGMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVNTUl9NQVNLU1MgICAgICAgICAgUlRDX0FMUk1BU1NSX01BU0tTU19Nc2sgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVNTUl9NQVNLU1NfMCAgICAgICAgKDB4MVUgPDwgUlRDX0FMUk1BU1NSX01BU0tTU19Qb3MpICAgICAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVNTUl9NQVNLU1NfMSAgICAgICAgKDB4MlUgPDwgUlRDX0FMUk1BU1NSX01BU0tTU19Qb3MpICAgICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVNTUl9NQVNLU1NfMiAgICAgICAgKDB4NFUgPDwgUlRDX0FMUk1BU1NSX01BU0tTU19Qb3MpICAgICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVNTUl9NQVNLU1NfMyAgICAgICAgKDB4OFUgPDwgUlRDX0FMUk1BU1NSX01BU0tTU19Qb3MpICAgICAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVNTUl9TU19Qb3MgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVNTUl9TU19Nc2sgICAgICAgICAgKDB4N0ZGRlUgPDwgUlRDX0FMUk1BU1NSX1NTX1BvcykgICAgICAgICAgLyohPCAweDAwMDA3RkZGICovDQojZGVmaW5lIFJUQ19BTFJNQVNTUl9TUyAgICAgICAgICAgICAgUlRDX0FMUk1BU1NSX1NTX01zayAgICAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQktQMFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDBSX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDBSX01zayAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgUlRDX0JLUDBSX1BvcykgICAgICAgICAgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDBSICAgICAgICAgICAgICAgICAgICBSVENfQktQMFJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AxUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMVJfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMVJfTXNrICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMVJfUG9zKSAgICAgICAgICAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMVIgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AxUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDJSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19CS1AyUl9Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19CS1AyUl9Nc2sgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AyUl9Qb3MpICAgICAgICAgICAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIFJUQ19CS1AyUiAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDJSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQktQM1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDNSX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDNSX01zayAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgUlRDX0JLUDNSX1BvcykgICAgICAgICAgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDNSICAgICAgICAgICAgICAgICAgICBSVENfQktQM1JfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1A0UiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQNFJfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQNFJfTXNrICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQNFJfUG9zKSAgICAgICAgICAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQNFIgICAgICAgICAgICAgICAgICAgIFJUQ19CS1A0Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogTnVtYmVyIG9mIGJhY2t1cCByZWdpc3RlcnMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQX05VTUJFUiAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwNVUNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICBTZXJpYWwgUGVyaXBoZXJhbCBJbnRlcmZhY2UgKFNQSSkgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKg0KICogQGJyaWVmIFNwZWNpZmljIGRldmljZSBmZWF0dXJlIGRlZmluaXRpb25zIChub3QgcHJlc2VudCBvbiBhbGwgZGV2aWNlcyBpbiB0aGUgU1RNMzJGMCBzZXJpZSkNCiAqLw0KI2RlZmluZSBTUElfSTJTX1NVUFBPUlQgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSTJTIHN1cHBvcnQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTUElfQ1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTUElfQ1IxX0NQSEFfUG9zICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IxX0NQSEFfTXNrICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMV9DUEhBX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBTUElfQ1IxX0NQSEEgICAgICAgICAgICAgICAgU1BJX0NSMV9DUEhBX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2xvY2sgUGhhc2UgKi8NCiNkZWZpbmUgU1BJX0NSMV9DUE9MX1BvcyAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMV9DUE9MX01zayAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjFfQ1BPTF9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgU1BJX0NSMV9DUE9MICAgICAgICAgICAgICAgIFNQSV9DUjFfQ1BPTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENsb2NrIFBvbGFyaXR5ICovDQojZGVmaW5lIFNQSV9DUjFfTVNUUl9Qb3MgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjFfTVNUUl9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBTUElfQ1IxX01TVFJfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFNQSV9DUjFfTVNUUiAgICAgICAgICAgICAgICBTUElfQ1IxX01TVFJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBNYXN0ZXIgU2VsZWN0aW9uICovDQojZGVmaW5lIFNQSV9DUjFfQlJfUG9zICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjFfQlJfTXNrICAgICAgICAgICAgICAoMHg3VSA8PCBTUElfQ1IxX0JSX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDM4ICovDQojZGVmaW5lIFNQSV9DUjFfQlIgICAgICAgICAgICAgICAgICBTUElfQ1IxX0JSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCUlsyOjBdIGJpdHMgKEJhdWQgUmF0ZSBDb250cm9sKSAqLw0KI2RlZmluZSBTUElfQ1IxX0JSXzAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMV9CUl9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBTUElfQ1IxX0JSXzEgICAgICAgICAgICAgICAgKDB4MlUgPDwgU1BJX0NSMV9CUl9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBTUElfQ1IxX0JSXzIgICAgICAgICAgICAgICAgKDB4NFUgPDwgU1BJX0NSMV9CUl9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBTUElfQ1IxX1NQRV9Qb3MgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IxX1NQRV9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMV9TUEVfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBTUElfQ1IxX1NQRSAgICAgICAgICAgICAgICAgU1BJX0NSMV9TUEVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1BJIEVuYWJsZSAqLw0KI2RlZmluZSBTUElfQ1IxX0xTQkZJUlNUX1BvcyAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IxX0xTQkZJUlNUX01zayAgICAgICAgKDB4MVUgPDwgU1BJX0NSMV9MU0JGSVJTVF9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBTUElfQ1IxX0xTQkZJUlNUICAgICAgICAgICAgU1BJX0NSMV9MU0JGSVJTVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRnJhbWUgRm9ybWF0ICovDQojZGVmaW5lIFNQSV9DUjFfU1NJX1BvcyAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjFfU1NJX01zayAgICAgICAgICAgICAoMHgxVSA8PCBTUElfQ1IxX1NTSV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFNQSV9DUjFfU1NJICAgICAgICAgICAgICAgICBTUElfQ1IxX1NTSV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcm5hbCBzbGF2ZSBzZWxlY3QgKi8NCiNkZWZpbmUgU1BJX0NSMV9TU01fUG9zICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMV9TU01fTXNrICAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjFfU1NNX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgU1BJX0NSMV9TU00gICAgICAgICAgICAgICAgIFNQSV9DUjFfU1NNX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIHNsYXZlIG1hbmFnZW1lbnQgKi8NCiNkZWZpbmUgU1BJX0NSMV9SWE9OTFlfUG9zICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMV9SWE9OTFlfTXNrICAgICAgICAgICgweDFVIDw8IFNQSV9DUjFfUlhPTkxZX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgU1BJX0NSMV9SWE9OTFkgICAgICAgICAgICAgIFNQSV9DUjFfUlhPTkxZX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VpdmUgb25seSAqLw0KI2RlZmluZSBTUElfQ1IxX0NSQ0xfUG9zICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IxX0NSQ0xfTXNrICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMV9DUkNMX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBTUElfQ1IxX0NSQ0wgICAgICAgICAgICAgICAgU1BJX0NSMV9DUkNMX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1JDIExlbmd0aCAqLw0KI2RlZmluZSBTUElfQ1IxX0NSQ05FWFRfUG9zICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IxX0NSQ05FWFRfTXNrICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMV9DUkNORVhUX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBTUElfQ1IxX0NSQ05FWFQgICAgICAgICAgICAgU1BJX0NSMV9DUkNORVhUX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXQgQ1JDIG5leHQgKi8NCiNkZWZpbmUgU1BJX0NSMV9DUkNFTl9Qb3MgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMV9DUkNFTl9Nc2sgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjFfQ1JDRU5fUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgU1BJX0NSMV9DUkNFTiAgICAgICAgICAgICAgIFNQSV9DUjFfQ1JDRU5fTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhhcmR3YXJlIENSQyBjYWxjdWxhdGlvbiBlbmFibGUgKi8NCiNkZWZpbmUgU1BJX0NSMV9CSURJT0VfUG9zICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMV9CSURJT0VfTXNrICAgICAgICAgICgweDFVIDw8IFNQSV9DUjFfQklESU9FX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgU1BJX0NSMV9CSURJT0UgICAgICAgICAgICAgIFNQSV9DUjFfQklESU9FX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE91dHB1dCBlbmFibGUgaW4gYmlkaXJlY3Rpb25hbCBtb2RlICovDQojZGVmaW5lIFNQSV9DUjFfQklESU1PREVfUG9zICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjFfQklESU1PREVfTXNrICAgICAgICAoMHgxVSA8PCBTUElfQ1IxX0JJRElNT0RFX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFNQSV9DUjFfQklESU1PREUgICAgICAgICAgICBTUElfQ1IxX0JJRElNT0RFX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaWRpcmVjdGlvbmFsIGRhdGEgbW9kZSBlbmFibGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTUElfQ1IyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTUElfQ1IyX1JYRE1BRU5fUG9zICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IyX1JYRE1BRU5fTXNrICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMl9SWERNQUVOX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBTUElfQ1IyX1JYRE1BRU4gICAgICAgICAgICAgU1BJX0NSMl9SWERNQUVOX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUnggQnVmZmVyIERNQSBFbmFibGUgKi8NCiNkZWZpbmUgU1BJX0NSMl9UWERNQUVOX1BvcyAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMl9UWERNQUVOX01zayAgICAgICAgICgweDFVIDw8IFNQSV9DUjJfVFhETUFFTl9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgU1BJX0NSMl9UWERNQUVOICAgICAgICAgICAgIFNQSV9DUjJfVFhETUFFTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFR4IEJ1ZmZlciBETUEgRW5hYmxlICovDQojZGVmaW5lIFNQSV9DUjJfU1NPRV9Qb3MgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjJfU1NPRV9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBTUElfQ1IyX1NTT0VfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFNQSV9DUjJfU1NPRSAgICAgICAgICAgICAgICBTUElfQ1IyX1NTT0VfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTUyBPdXRwdXQgRW5hYmxlICovDQojZGVmaW5lIFNQSV9DUjJfTlNTUF9Qb3MgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjJfTlNTUF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBTUElfQ1IyX05TU1BfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFNQSV9DUjJfTlNTUCAgICAgICAgICAgICAgICBTUElfQ1IyX05TU1BfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBOU1MgcHVsc2UgbWFuYWdlbWVudCBFbmFibGUgKi8NCiNkZWZpbmUgU1BJX0NSMl9GUkZfUG9zICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMl9GUkZfTXNrICAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjJfRlJGX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgU1BJX0NSMl9GUkYgICAgICAgICAgICAgICAgIFNQSV9DUjJfRlJGX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEZyYW1lIEZvcm1hdCBFbmFibGUgKi8NCiNkZWZpbmUgU1BJX0NSMl9FUlJJRV9Qb3MgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMl9FUlJJRV9Nc2sgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjJfRVJSSUVfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgU1BJX0NSMl9FUlJJRSAgICAgICAgICAgICAgIFNQSV9DUjJfRVJSSUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEVycm9yIEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgU1BJX0NSMl9SWE5FSUVfUG9zICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMl9SWE5FSUVfTXNrICAgICAgICAgICgweDFVIDw8IFNQSV9DUjJfUlhORUlFX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgU1BJX0NSMl9SWE5FSUUgICAgICAgICAgICAgIFNQSV9DUjJfUlhORUlFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJYIGJ1ZmZlciBOb3QgRW1wdHkgSW50ZXJydXB0IEVuYWJsZSAqLw0KI2RlZmluZSBTUElfQ1IyX1RYRUlFX1BvcyAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IyX1RYRUlFX01zayAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMl9UWEVJRV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBTUElfQ1IyX1RYRUlFICAgICAgICAgICAgICAgU1BJX0NSMl9UWEVJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgVHggYnVmZmVyIEVtcHR5IEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgU1BJX0NSMl9EU19Qb3MgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMl9EU19Nc2sgICAgICAgICAgICAgICgweEZVIDw8IFNQSV9DUjJfRFNfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgU1BJX0NSMl9EUyAgICAgICAgICAgICAgICAgIFNQSV9DUjJfRFNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IERTWzM6MF0gRGF0YSBTaXplICovDQojZGVmaW5lIFNQSV9DUjJfRFNfMCAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfQ1IyX0RTX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFNQSV9DUjJfRFNfMSAgICAgICAgICAgICAgICAoMHgyVSA8PCBTUElfQ1IyX0RTX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFNQSV9DUjJfRFNfMiAgICAgICAgICAgICAgICAoMHg0VSA8PCBTUElfQ1IyX0RTX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFNQSV9DUjJfRFNfMyAgICAgICAgICAgICAgICAoMHg4VSA8PCBTUElfQ1IyX0RTX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFNQSV9DUjJfRlJYVEhfUG9zICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjJfRlJYVEhfTXNrICAgICAgICAgICAoMHgxVSA8PCBTUElfQ1IyX0ZSWFRIX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFNQSV9DUjJfRlJYVEggICAgICAgICAgICAgICBTUElfQ1IyX0ZSWFRIX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBGSUZPIHJlY2VwdGlvbiBUaHJlc2hvbGQgKi8NCiNkZWZpbmUgU1BJX0NSMl9MRE1BUlhfUG9zICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMl9MRE1BUlhfTXNrICAgICAgICAgICgweDFVIDw8IFNQSV9DUjJfTERNQVJYX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgU1BJX0NSMl9MRE1BUlggICAgICAgICAgICAgIFNQSV9DUjJfTERNQVJYX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IExhc3QgRE1BIHRyYW5zZmVyIGZvciByZWNlcHRpb24gKi8NCiNkZWZpbmUgU1BJX0NSMl9MRE1BVFhfUG9zICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMl9MRE1BVFhfTXNrICAgICAgICAgICgweDFVIDw8IFNQSV9DUjJfTERNQVRYX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgU1BJX0NSMl9MRE1BVFggICAgICAgICAgICAgIFNQSV9DUjJfTERNQVRYX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IExhc3QgRE1BIHRyYW5zZmVyIGZvciB0cmFuc21pc3Npb24gKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1BJX1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTUElfU1JfUlhORV9Qb3MgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfU1JfUlhORV9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX1NSX1JYTkVfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBTUElfU1JfUlhORSAgICAgICAgICAgICAgICAgU1BJX1NSX1JYTkVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZWl2ZSBidWZmZXIgTm90IEVtcHR5ICovDQojZGVmaW5lIFNQSV9TUl9UWEVfUG9zICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9TUl9UWEVfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfU1JfVFhFX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFNQSV9TUl9UWEUgICAgICAgICAgICAgICAgICBTUElfU1JfVFhFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pdCBidWZmZXIgRW1wdHkgKi8NCiNkZWZpbmUgU1BJX1NSX0NIU0lERV9Qb3MgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX1NSX0NIU0lERV9Nc2sgICAgICAgICAgICgweDFVIDw8IFNQSV9TUl9DSFNJREVfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgU1BJX1NSX0NIU0lERSAgICAgICAgICAgICAgIFNQSV9TUl9DSFNJREVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgc2lkZSAqLw0KI2RlZmluZSBTUElfU1JfVURSX1BvcyAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfU1JfVURSX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX1NSX1VEUl9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBTUElfU1JfVURSICAgICAgICAgICAgICAgICAgU1BJX1NSX1VEUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgVW5kZXJydW4gZmxhZyAqLw0KI2RlZmluZSBTUElfU1JfQ1JDRVJSX1BvcyAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfU1JfQ1JDRVJSX01zayAgICAgICAgICAgKDB4MVUgPDwgU1BJX1NSX0NSQ0VSUl9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBTUElfU1JfQ1JDRVJSICAgICAgICAgICAgICAgU1BJX1NSX0NSQ0VSUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1JDIEVycm9yIGZsYWcgKi8NCiNkZWZpbmUgU1BJX1NSX01PREZfUG9zICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX1NSX01PREZfTXNrICAgICAgICAgICAgICgweDFVIDw8IFNQSV9TUl9NT0RGX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgU1BJX1NSX01PREYgICAgICAgICAgICAgICAgIFNQSV9TUl9NT0RGX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE1vZGUgZmF1bHQgKi8NCiNkZWZpbmUgU1BJX1NSX09WUl9Qb3MgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX1NSX09WUl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9TUl9PVlJfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgU1BJX1NSX09WUiAgICAgICAgICAgICAgICAgIFNQSV9TUl9PVlJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE92ZXJydW4gZmxhZyAqLw0KI2RlZmluZSBTUElfU1JfQlNZX1BvcyAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfU1JfQlNZX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX1NSX0JTWV9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBTUElfU1JfQlNZICAgICAgICAgICAgICAgICAgU1BJX1NSX0JTWV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQnVzeSBmbGFnICovDQojZGVmaW5lIFNQSV9TUl9GUkVfUG9zICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9TUl9GUkVfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfU1JfRlJFX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFNQSV9TUl9GUkUgICAgICAgICAgICAgICAgICBTUElfU1JfRlJFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBUSSBmcmFtZSBmb3JtYXQgZXJyb3IgKi8NCiNkZWZpbmUgU1BJX1NSX0ZSTFZMX1BvcyAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX1NSX0ZSTFZMX01zayAgICAgICAgICAgICgweDNVIDw8IFNQSV9TUl9GUkxWTF9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA2MDAgKi8NCiNkZWZpbmUgU1BJX1NSX0ZSTFZMICAgICAgICAgICAgICAgIFNQSV9TUl9GUkxWTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEZJRk8gUmVjZXB0aW9uIExldmVsICovDQojZGVmaW5lIFNQSV9TUl9GUkxWTF8wICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfU1JfRlJMVkxfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFNQSV9TUl9GUkxWTF8xICAgICAgICAgICAgICAoMHgyVSA8PCBTUElfU1JfRlJMVkxfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFNQSV9TUl9GVExWTF9Qb3MgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9TUl9GVExWTF9Nc2sgICAgICAgICAgICAoMHgzVSA8PCBTUElfU1JfRlRMVkxfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAxODAwICovDQojZGVmaW5lIFNQSV9TUl9GVExWTCAgICAgICAgICAgICAgICBTUElfU1JfRlRMVkxfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBGSUZPIFRyYW5zbWlzc2lvbiBMZXZlbCAqLw0KI2RlZmluZSBTUElfU1JfRlRMVkxfMCAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX1NSX0ZUTFZMX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBTUElfU1JfRlRMVkxfMSAgICAgICAgICAgICAgKDB4MlUgPDwgU1BJX1NSX0ZUTFZMX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTUElfRFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNQSV9EUl9EUl9Qb3MgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9EUl9EUl9Nc2sgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgU1BJX0RSX0RSX1BvcykgICAgICAgICAgICAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIFNQSV9EUl9EUiAgICAgICAgICAgICAgICAgICBTUElfRFJfRFJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBEYXRhIFJlZ2lzdGVyICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1BJX0NSQ1BSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1BJX0NSQ1BSX0NSQ1BPTFlfUG9zICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSQ1BSX0NSQ1BPTFlfTXNrICAgICAgICgweEZGRkZGRkZGVSA8PCBTUElfQ1JDUFJfQ1JDUE9MWV9Qb3MpICAgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgU1BJX0NSQ1BSX0NSQ1BPTFkgICAgICAgICAgIFNQSV9DUkNQUl9DUkNQT0xZX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IENSQyBwb2x5bm9taWFsIHJlZ2lzdGVyICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTUElfUlhDUkNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1BJX1JYQ1JDUl9SWENSQ19Qb3MgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX1JYQ1JDUl9SWENSQ19Nc2sgICAgICAgICgweEZGRkZGRkZGVSA8PCBTUElfUlhDUkNSX1JYQ1JDX1BvcykgICAgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgU1BJX1JYQ1JDUl9SWENSQyAgICAgICAgICAgIFNQSV9SWENSQ1JfUlhDUkNfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJ4IENSQyBSZWdpc3RlciAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1BJX1RYQ1JDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNQSV9UWENSQ1JfVFhDUkNfUG9zICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9UWENSQ1JfVFhDUkNfTXNrICAgICAgICAoMHhGRkZGRkZGRlUgPDwgU1BJX1RYQ1JDUl9UWENSQ19Qb3MpICAgICAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIFNQSV9UWENSQ1JfVFhDUkMgICAgICAgICAgICBTUElfVFhDUkNSX1RYQ1JDX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBUeCBDUkMgUmVnaXN0ZXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNQSV9JMlNDRkdSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTUElfSTJTQ0ZHUl9DSExFTl9Qb3MgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfSTJTQ0ZHUl9DSExFTl9Nc2sgICAgICAgKDB4MVUgPDwgU1BJX0kyU0NGR1JfQ0hMRU5fUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBTUElfSTJTQ0ZHUl9DSExFTiAgICAgICAgICAgU1BJX0kyU0NGR1JfQ0hMRU5fTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITxDaGFubmVsIGxlbmd0aCAobnVtYmVyIG9mIGJpdHMgcGVyIGF1ZGlvIGNoYW5uZWwpICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0RBVExFTl9Qb3MgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9JMlNDRkdSX0RBVExFTl9Nc2sgICAgICAoMHgzVSA8PCBTUElfSTJTQ0ZHUl9EQVRMRU5fUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA2ICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0RBVExFTiAgICAgICAgICBTUElfSTJTQ0ZHUl9EQVRMRU5fTXNrICAgICAgICAgICAgICAgICAgICAgLyohPERBVExFTlsxOjBdIGJpdHMgKERhdGEgbGVuZ3RoIHRvIGJlIHRyYW5zZmVycmVkKSAqLw0KI2RlZmluZSBTUElfSTJTQ0ZHUl9EQVRMRU5fMCAgICAgICAgKDB4MVUgPDwgU1BJX0kyU0NGR1JfREFUTEVOX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBTUElfSTJTQ0ZHUl9EQVRMRU5fMSAgICAgICAgKDB4MlUgPDwgU1BJX0kyU0NGR1JfREFUTEVOX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBTUElfSTJTQ0ZHUl9DS1BPTF9Qb3MgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfSTJTQ0ZHUl9DS1BPTF9Nc2sgICAgICAgKDB4MVUgPDwgU1BJX0kyU0NGR1JfQ0tQT0xfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBTUElfSTJTQ0ZHUl9DS1BPTCAgICAgICAgICAgU1BJX0kyU0NGR1JfQ0tQT0xfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITxzdGVhZHkgc3RhdGUgY2xvY2sgcG9sYXJpdHkgKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTU1REX1BvcyAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTU1REX01zayAgICAgICgweDNVIDw8IFNQSV9JMlNDRkdSX0kyU1NURF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMzAgKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTU1REICAgICAgICAgIFNQSV9JMlNDRkdSX0kyU1NURF9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8STJTU1REWzE6MF0gYml0cyAoSTJTIHN0YW5kYXJkIHNlbGVjdGlvbikgKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTU1REXzAgICAgICAgICgweDFVIDw8IFNQSV9JMlNDRkdSX0kyU1NURF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTU1REXzEgICAgICAgICgweDJVIDw8IFNQSV9JMlNDRkdSX0kyU1NURF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfUENNU1lOQ19Qb3MgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0kyU0NGR1JfUENNU1lOQ19Nc2sgICAgICgweDFVIDw8IFNQSV9JMlNDRkdSX1BDTVNZTkNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfUENNU1lOQyAgICAgICAgIFNQSV9JMlNDRkdSX1BDTVNZTkNfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8UENNIGZyYW1lIHN5bmNocm9uaXphdGlvbiAqLw0KI2RlZmluZSBTUElfSTJTQ0ZHUl9JMlNDRkdfUG9zICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfSTJTQ0ZHUl9JMlNDRkdfTXNrICAgICAgKDB4M1UgPDwgU1BJX0kyU0NGR1JfSTJTQ0ZHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDMwMCAqLw0KI2RlZmluZSBTUElfSTJTQ0ZHUl9JMlNDRkcgICAgICAgICAgU1BJX0kyU0NGR1JfSTJTQ0ZHX01zayAgICAgICAgICAgICAgICAgICAgIC8qITxJMlNDRkdbMTowXSBiaXRzIChJMlMgY29uZmlndXJhdGlvbiBtb2RlKSAqLw0KI2RlZmluZSBTUElfSTJTQ0ZHUl9JMlNDRkdfMCAgICAgICAgKDB4MVUgPDwgU1BJX0kyU0NGR1JfSTJTQ0ZHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBTUElfSTJTQ0ZHUl9JMlNDRkdfMSAgICAgICAgKDB4MlUgPDwgU1BJX0kyU0NGR1JfSTJTQ0ZHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBTUElfSTJTQ0ZHUl9JMlNFX1BvcyAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfSTJTQ0ZHUl9JMlNFX01zayAgICAgICAgKDB4MVUgPDwgU1BJX0kyU0NGR1JfSTJTRV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBTUElfSTJTQ0ZHUl9JMlNFICAgICAgICAgICAgU1BJX0kyU0NGR1JfSTJTRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITxJMlMgRW5hYmxlICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU01PRF9Qb3MgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU01PRF9Nc2sgICAgICAoMHgxVSA8PCBTUElfSTJTQ0ZHUl9JMlNNT0RfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU01PRCAgICAgICAgICBTUElfSTJTQ0ZHUl9JMlNNT0RfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPEkyUyBtb2RlIHNlbGVjdGlvbiAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1BJX0kyU1BSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNQSV9JMlNQUl9JMlNESVZfUG9zICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9JMlNQUl9JMlNESVZfTXNrICAgICAgICAoMHhGRlUgPDwgU1BJX0kyU1BSX0kyU0RJVl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMEZGICovDQojZGVmaW5lIFNQSV9JMlNQUl9JMlNESVYgICAgICAgICAgICBTUElfSTJTUFJfSTJTRElWX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPEkyUyBMaW5lYXIgcHJlc2NhbGVyICovDQojZGVmaW5lIFNQSV9JMlNQUl9PRERfUG9zICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9JMlNQUl9PRERfTXNrICAgICAgICAgICAoMHgxVSA8PCBTUElfSTJTUFJfT0REX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFNQSV9JMlNQUl9PREQgICAgICAgICAgICAgICBTUElfSTJTUFJfT0REX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPE9kZCBmYWN0b3IgZm9yIHRoZSBwcmVzY2FsZXIgKi8NCiNkZWZpbmUgU1BJX0kyU1BSX01DS09FX1BvcyAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0kyU1BSX01DS09FX01zayAgICAgICAgICgweDFVIDw8IFNQSV9JMlNQUl9NQ0tPRV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgU1BJX0kyU1BSX01DS09FICAgICAgICAgICAgIFNQSV9JMlNQUl9NQ0tPRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8TWFzdGVyIENsb2NrIE91dHB1dCBFbmFibGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgIFN5c3RlbSBDb25maWd1cmF0aW9uIChTWVNDRkcpICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1lTQ0ZHX0NGR1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTWVNDRkdfQ0ZHUjFfTUVNX01PREVfUG9zICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfQ0ZHUjFfTUVNX01PREVfTXNrICAgICAgICAgICAgKDB4M1UgPDwgU1lTQ0ZHX0NGR1IxX01FTV9NT0RFX1BvcykgLyohPCAweDAwMDAwMDAzICovDQojZGVmaW5lIFNZU0NGR19DRkdSMV9NRU1fTU9ERSAgICAgICAgICAgICAgICBTWVNDRkdfQ0ZHUjFfTUVNX01PREVfTXNrICAgICAgICAgICAvKiE8IFNZU0NGR19NZW1vcnkgUmVtYXAgQ29uZmlnICovDQojZGVmaW5lIFNZU0NGR19DRkdSMV9NRU1fTU9ERV8wICAgICAgICAgICAgICAoMHgxVSA8PCBTWVNDRkdfQ0ZHUjFfTUVNX01PREVfUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgU1lTQ0ZHX0NGR1IxX01FTV9NT0RFXzEgICAgICAgICAgICAgICgweDJVIDw8IFNZU0NGR19DRkdSMV9NRU1fTU9ERV9Qb3MpIC8qITwgMHgwMDAwMDAwMiAqLw0KDQojZGVmaW5lIFNZU0NGR19DRkdSMV9ETUFfUk1QX1BvcyAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19DRkdSMV9ETUFfUk1QX01zayAgICAgICAgICAgICAoMHgxRlUgPDwgU1lTQ0ZHX0NGR1IxX0RNQV9STVBfUG9zKSAvKiE8IDB4MDAwMDFGMDAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0NGR1IxX0RNQV9STVAgICAgICAgICAgICAgICAgIFNZU0NGR19DRkdSMV9ETUFfUk1QX01zayAgICAgICAgICAvKiE8IERNQSByZW1hcCBtYXNrICovDQojZGVmaW5lIFNZU0NGR19DRkdSMV9BRENfRE1BX1JNUF9Qb3MgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19DRkdSMV9BRENfRE1BX1JNUF9Nc2sgICAgICAgICAoMHgxVSA8PCBTWVNDRkdfQ0ZHUjFfQURDX0RNQV9STVBfUG9zKSAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0NGR1IxX0FEQ19ETUFfUk1QICAgICAgICAgICAgIFNZU0NGR19DRkdSMV9BRENfRE1BX1JNUF9Nc2sgICAgICAvKiE8IEFEQyBETUEgcmVtYXAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0NGR1IxX1VTQVJUMVRYX0RNQV9STVBfUG9zICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0NGR1IxX1VTQVJUMVRYX0RNQV9STVBfTXNrICAgICgweDFVIDw8IFNZU0NGR19DRkdSMV9VU0FSVDFUWF9ETUFfUk1QX1BvcykgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFNZU0NGR19DRkdSMV9VU0FSVDFUWF9ETUFfUk1QICAgICAgICBTWVNDRkdfQ0ZHUjFfVVNBUlQxVFhfRE1BX1JNUF9Nc2sgLyohPCBVU0FSVDEgVFggRE1BIHJlbWFwICovDQojZGVmaW5lIFNZU0NGR19DRkdSMV9VU0FSVDFSWF9ETUFfUk1QX1BvcyAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19DRkdSMV9VU0FSVDFSWF9ETUFfUk1QX01zayAgICAoMHgxVSA8PCBTWVNDRkdfQ0ZHUjFfVVNBUlQxUlhfRE1BX1JNUF9Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBTWVNDRkdfQ0ZHUjFfVVNBUlQxUlhfRE1BX1JNUCAgICAgICAgU1lTQ0ZHX0NGR1IxX1VTQVJUMVJYX0RNQV9STVBfTXNrIC8qITwgVVNBUlQxIFJYIERNQSByZW1hcCAqLw0KI2RlZmluZSBTWVNDRkdfQ0ZHUjFfVElNMTZfRE1BX1JNUF9Qb3MgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfQ0ZHUjFfVElNMTZfRE1BX1JNUF9Nc2sgICAgICAgKDB4MVUgPDwgU1lTQ0ZHX0NGR1IxX1RJTTE2X0RNQV9STVBfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0NGR1IxX1RJTTE2X0RNQV9STVAgICAgICAgICAgIFNZU0NGR19DRkdSMV9USU0xNl9ETUFfUk1QX01zayAgICAvKiE8IFRpbWVyIDE2IERNQSByZW1hcCAqLw0KI2RlZmluZSBTWVNDRkdfQ0ZHUjFfVElNMTdfRE1BX1JNUF9Qb3MgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfQ0ZHUjFfVElNMTdfRE1BX1JNUF9Nc2sgICAgICAgKDB4MVUgPDwgU1lTQ0ZHX0NGR1IxX1RJTTE3X0RNQV9STVBfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0NGR1IxX1RJTTE3X0RNQV9STVAgICAgICAgICAgIFNZU0NGR19DRkdSMV9USU0xN19ETUFfUk1QX01zayAgICAvKiE8IFRpbWVyIDE3IERNQSByZW1hcCAqLw0KDQojZGVmaW5lIFNZU0NGR19DRkdSMV9JMkNfRk1QX1BCNl9Qb3MgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19DRkdSMV9JMkNfRk1QX1BCNl9Nc2sgICAgICAgICAoMHgxVSA8PCBTWVNDRkdfQ0ZHUjFfSTJDX0ZNUF9QQjZfUG9zKSAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0NGR1IxX0kyQ19GTVBfUEI2ICAgICAgICAgICAgIFNZU0NGR19DRkdSMV9JMkNfRk1QX1BCNl9Nc2sgICAgICAvKiE8IEkyQyBQQjYgRmFzdCBtb2RlIHBsdXMgKi8NCiNkZWZpbmUgU1lTQ0ZHX0NGR1IxX0kyQ19GTVBfUEI3X1BvcyAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0NGR1IxX0kyQ19GTVBfUEI3X01zayAgICAgICAgICgweDFVIDw8IFNZU0NGR19DRkdSMV9JMkNfRk1QX1BCN19Qb3MpIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBTWVNDRkdfQ0ZHUjFfSTJDX0ZNUF9QQjcgICAgICAgICAgICAgU1lTQ0ZHX0NGR1IxX0kyQ19GTVBfUEI3X01zayAgICAgIC8qITwgSTJDIFBCNyBGYXN0IG1vZGUgcGx1cyAqLw0KI2RlZmluZSBTWVNDRkdfQ0ZHUjFfSTJDX0ZNUF9QQjhfUG9zICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfQ0ZHUjFfSTJDX0ZNUF9QQjhfTXNrICAgICAgICAgKDB4MVUgPDwgU1lTQ0ZHX0NGR1IxX0kyQ19GTVBfUEI4X1BvcykgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFNZU0NGR19DRkdSMV9JMkNfRk1QX1BCOCAgICAgICAgICAgICBTWVNDRkdfQ0ZHUjFfSTJDX0ZNUF9QQjhfTXNrICAgICAgLyohPCBJMkMgUEI4IEZhc3QgbW9kZSBwbHVzICovDQojZGVmaW5lIFNZU0NGR19DRkdSMV9JMkNfRk1QX1BCOV9Qb3MgICAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19DRkdSMV9JMkNfRk1QX1BCOV9Nc2sgICAgICAgICAoMHgxVSA8PCBTWVNDRkdfQ0ZHUjFfSTJDX0ZNUF9QQjlfUG9zKSAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0NGR1IxX0kyQ19GTVBfUEI5ICAgICAgICAgICAgIFNZU0NGR19DRkdSMV9JMkNfRk1QX1BCOV9Nc2sgICAgICAvKiE8IEkyQyBQQjkgRmFzdCBtb2RlIHBsdXMgKi8NCiNkZWZpbmUgU1lTQ0ZHX0NGR1IxX0kyQ19GTVBfSTJDMV9Qb3MgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0NGR1IxX0kyQ19GTVBfSTJDMV9Nc2sgICAgICAgICgweDFVIDw8IFNZU0NGR19DRkdSMV9JMkNfRk1QX0kyQzFfUG9zKSAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0NGR1IxX0kyQ19GTVBfSTJDMSAgICAgICAgICAgIFNZU0NGR19DRkdSMV9JMkNfRk1QX0kyQzFfTXNrICAgICAvKiE8IEVuYWJsZSBGYXN0IE1vZGUgUGx1cyBvbiBQQjEwLCBQQjExLCBQRjYgYW5kIFBGNyAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0NGR1IxX0kyQ19GTVBfUEE5X1BvcyAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0NGR1IxX0kyQ19GTVBfUEE5X01zayAgICAgICAgICgweDFVIDw8IFNZU0NGR19DRkdSMV9JMkNfRk1QX1BBOV9Qb3MpIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBTWVNDRkdfQ0ZHUjFfSTJDX0ZNUF9QQTkgICAgICAgICAgICAgU1lTQ0ZHX0NGR1IxX0kyQ19GTVBfUEE5X01zayAgICAgIC8qITwgRW5hYmxlIEZhc3QgTW9kZSBQbHVzIG9uIFBBOSAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0NGR1IxX0kyQ19GTVBfUEExMF9Qb3MgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0NGR1IxX0kyQ19GTVBfUEExMF9Nc2sgICAgICAgICgweDFVIDw8IFNZU0NGR19DRkdSMV9JMkNfRk1QX1BBMTBfUG9zKSAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0NGR1IxX0kyQ19GTVBfUEExMCAgICAgICAgICAgIFNZU0NGR19DRkdSMV9JMkNfRk1QX1BBMTBfTXNrICAgICAvKiE8IEVuYWJsZSBGYXN0IE1vZGUgUGx1cyBvbiBQQTEwICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNZU0NGR19FWFRJQ1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTBfUG9zICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTBfTXNrICAgICAgICAgICAgICgweEZVIDw8IFNZU0NGR19FWFRJQ1IxX0VYVEkwX1BvcykgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkwICAgICAgICAgICAgICAgICBTWVNDRkdfRVhUSUNSMV9FWFRJMF9Nc2sgICAgICAgICAgLyohPCBFWFRJIDAgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMV9Qb3MgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMV9Nc2sgICAgICAgICAgICAgKDB4RlUgPDwgU1lTQ0ZHX0VYVElDUjFfRVhUSTFfUG9zKSAvKiE8IDB4MDAwMDAwRjAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTEgICAgICAgICAgICAgICAgIFNZU0NGR19FWFRJQ1IxX0VYVEkxX01zayAgICAgICAgICAvKiE8IEVYVEkgMSBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkyX1BvcyAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkyX01zayAgICAgICAgICAgICAoMHhGVSA8PCBTWVNDRkdfRVhUSUNSMV9FWFRJMl9Qb3MpIC8qITwgMHgwMDAwMEYwMCAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMiAgICAgICAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjFfRVhUSTJfTXNrICAgICAgICAgIC8qITwgRVhUSSAyIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTNfUG9zICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTNfTXNrICAgICAgICAgICAgICgweEZVIDw8IFNZU0NGR19FWFRJQ1IxX0VYVEkzX1BvcykgLyohPCAweDAwMDBGMDAwICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkzICAgICAgICAgICAgICAgICBTWVNDRkdfRVhUSUNSMV9FWFRJM19Nc2sgICAgICAgICAgLyohPCBFWFRJIDMgY29uZmlndXJhdGlvbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJMCBjb25maWd1cmF0aW9uDQogICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkwX1BBICAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVswXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTBfUEIgICAgICAgICAgICAgICgweDAwMDAwMDAxVSkgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMF9QQyAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVKSAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbMF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkwX1BEICAgICAgICAgICAgICAoMHgwMDAwMDAwM1UpICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFswXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTBfUEYgICAgICAgICAgICAgICgweDAwMDAwMDA1VSkgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzBdIHBpbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJMSBjb25maWd1cmF0aW9uICANCiAgKi8gDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkxX1BBICAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVsxXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTFfUEIgICAgICAgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMV9QQyAgICAgICAgICAgICAgKDB4MDAwMDAwMjBVKSAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbMV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkxX1BEICAgICAgICAgICAgICAoMHgwMDAwMDAzMFUpICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFsxXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTFfUEYgICAgICAgICAgICAgICgweDAwMDAwMDUwVSkgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzFdIHBpbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJMiBjb25maWd1cmF0aW9uICANCiAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTJfUEEgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzJdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMl9QQiAgICAgICAgICAgICAgKDB4MDAwMDAxMDBVKSAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbMl0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkyX1BDICAgICAgICAgICAgICAoMHgwMDAwMDIwMFUpICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1syXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTJfUEQgICAgICAgICAgICAgICgweDAwMDAwMzAwVSkgICAgICAgICAgICAgICAgICAgICAvKiE8IFBEWzJdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMl9QRiAgICAgICAgICAgICAgKDB4MDAwMDA1MDBVKSAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbMl0gcGluICovDQoNCi8qKiANCiAgKiBAYnJpZWYgIEVYVEkzIGNvbmZpZ3VyYXRpb24gIA0KICAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJM19QQSAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbM10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkzX1BCICAgICAgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAgLyohPCBQQlszXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTNfUEMgICAgICAgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzNdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJM19QRCAgICAgICAgICAgICAgKDB4MDAwMDMwMDBVKSAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbM10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkzX1BGICAgICAgICAgICAgICAoMHgwMDAwNTAwMFUpICAgICAgICAgICAgICAgICAgICAgLyohPCBQRlszXSBwaW4gKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1lTQ0ZHX0VYVElDUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNF9Qb3MgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNF9Nc2sgICAgICAgICAgICAgKDB4RlUgPDwgU1lTQ0ZHX0VYVElDUjJfRVhUSTRfUG9zKSAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTQgICAgICAgICAgICAgICAgIFNZU0NGR19FWFRJQ1IyX0VYVEk0X01zayAgICAgICAgICAvKiE8IEVYVEkgNCBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk1X1BvcyAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk1X01zayAgICAgICAgICAgICAoMHhGVSA8PCBTWVNDRkdfRVhUSUNSMl9FWFRJNV9Qb3MpIC8qITwgMHgwMDAwMDBGMCAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNSAgICAgICAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjJfRVhUSTVfTXNrICAgICAgICAgIC8qITwgRVhUSSA1IGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTZfUG9zICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTZfTXNrICAgICAgICAgICAgICgweEZVIDw8IFNZU0NGR19FWFRJQ1IyX0VYVEk2X1BvcykgLyohPCAweDAwMDAwRjAwICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk2ICAgICAgICAgICAgICAgICBTWVNDRkdfRVhUSUNSMl9FWFRJNl9Nc2sgICAgICAgICAgLyohPCBFWFRJIDYgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJN19Qb3MgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJN19Nc2sgICAgICAgICAgICAgKDB4RlUgPDwgU1lTQ0ZHX0VYVElDUjJfRVhUSTdfUG9zKSAvKiE8IDB4MDAwMEYwMDAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTcgICAgICAgICAgICAgICAgIFNZU0NGR19FWFRJQ1IyX0VYVEk3X01zayAgICAgICAgICAvKiE8IEVYVEkgNyBjb25maWd1cmF0aW9uICovDQoNCi8qKiANCiAgKiBAYnJpZWYgIEVYVEk0IGNvbmZpZ3VyYXRpb24gIA0KICAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNF9QQSAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbNF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk0X1BCICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgLyohPCBQQls0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTRfUEMgICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzRdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNF9QRCAgICAgICAgICAgICAgKDB4MDAwMDAwMDNVKSAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbNF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk0X1BGICAgICAgICAgICAgICAoMHgwMDAwMDAwNVUpICAgICAgICAgICAgICAgICAgICAgLyohPCBQRls0XSBwaW4gKi8NCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTUgY29uZmlndXJhdGlvbiAgDQogICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk1X1BBICAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVs1XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTVfUEIgICAgICAgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzVdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNV9QQyAgICAgICAgICAgICAgKDB4MDAwMDAwMjBVKSAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbNV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk1X1BEICAgICAgICAgICAgICAoMHgwMDAwMDAzMFUpICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFs1XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTVfUEYgICAgICAgICAgICAgICgweDAwMDAwMDUwVSkgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzVdIHBpbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJNiBjb25maWd1cmF0aW9uICANCiAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTZfUEEgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzZdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNl9QQiAgICAgICAgICAgICAgKDB4MDAwMDAxMDBVKSAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbNl0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk2X1BDICAgICAgICAgICAgICAoMHgwMDAwMDIwMFUpICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1s2XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTZfUEQgICAgICAgICAgICAgICgweDAwMDAwMzAwVSkgICAgICAgICAgICAgICAgICAgICAvKiE8IFBEWzZdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNl9QRiAgICAgICAgICAgICAgKDB4MDAwMDA1MDBVKSAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbNl0gcGluICovDQoNCi8qKiANCiAgKiBAYnJpZWYgIEVYVEk3IGNvbmZpZ3VyYXRpb24gIA0KICAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJN19QQSAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbN10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk3X1BCICAgICAgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAgLyohPCBQQls3XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTdfUEMgICAgICAgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzddIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJN19QRCAgICAgICAgICAgICAgKDB4MDAwMDMwMDBVKSAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbN10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk3X1BGICAgICAgICAgICAgICAoMHgwMDAwNTAwMFUpICAgICAgICAgICAgICAgICAgICAgLyohPCBQRls3XSBwaW4gKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1lTQ0ZHX0VYVElDUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOF9Qb3MgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOF9Nc2sgICAgICAgICAgICAgKDB4RlUgPDwgU1lTQ0ZHX0VYVElDUjNfRVhUSThfUG9zKSAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTggICAgICAgICAgICAgICAgIFNZU0NGR19FWFRJQ1IzX0VYVEk4X01zayAgICAgICAgICAvKiE8IEVYVEkgOCBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk5X1BvcyAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk5X01zayAgICAgICAgICAgICAoMHhGVSA8PCBTWVNDRkdfRVhUSUNSM19FWFRJOV9Qb3MpIC8qITwgMHgwMDAwMDBGMCAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOSAgICAgICAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjNfRVhUSTlfTXNrICAgICAgICAgIC8qITwgRVhUSSA5IGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTEwX1BvcyAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTEwX01zayAgICAgICAgICAgICgweEZVIDw8IFNZU0NGR19FWFRJQ1IzX0VYVEkxMF9Qb3MpIC8qITwgMHgwMDAwMEYwMCAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTAgICAgICAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjNfRVhUSTEwX01zayAgICAgICAgIC8qITwgRVhUSSAxMCBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMV9Qb3MgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMV9Nc2sgICAgICAgICAgICAoMHhGVSA8PCBTWVNDRkdfRVhUSUNSM19FWFRJMTFfUG9zKSAvKiE8IDB4MDAwMEYwMDAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTExICAgICAgICAgICAgICAgIFNZU0NGR19FWFRJQ1IzX0VYVEkxMV9Nc2sgICAgICAgICAvKiE8IEVYVEkgMTEgY29uZmlndXJhdGlvbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJOCBjb25maWd1cmF0aW9uICANCiAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSThfUEEgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzhdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOF9QQiAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbOF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk4X1BDICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1s4XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSThfUEQgICAgICAgICAgICAgICgweDAwMDAwMDAzVSkgICAgICAgICAgICAgICAgICAgICAvKiE8IFBEWzhdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOF9QRiAgICAgICAgICAgICAgKDB4MDAwMDAwMDVVKSAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbOF0gcGluICovDQoNCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTkgY29uZmlndXJhdGlvbiAgDQogICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk5X1BBICAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVs5XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTlfUEIgICAgICAgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzldIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOV9QQyAgICAgICAgICAgICAgKDB4MDAwMDAwMjBVKSAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbOV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk5X1BEICAgICAgICAgICAgICAoMHgwMDAwMDAzMFUpICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFs5XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTlfUEYgICAgICAgICAgICAgICgweDAwMDAwMDUwVSkgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzldIHBpbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJMTAgY29uZmlndXJhdGlvbiAgDQogICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMF9QQSAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVsxMF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMF9QQiAgICAgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgLyohPCBQQlsxMF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMF9QQyAgICAgICAgICAgICAoMHgwMDAwMDIwMFUpICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1sxMF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMF9QRCAgICAgICAgICAgICAoMHgwMDAwMDMwMFUpICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFsxMF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMF9QRiAgICAgICAgICAgICAoMHgwMDAwMDUwMFUpICAgICAgICAgICAgICAgICAgICAgLyohPCBQRlsxMF0gcGluICovDQoNCi8qKiANCiAgKiBAYnJpZWYgIEVYVEkxMSBjb25maWd1cmF0aW9uICANCiAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTExX1BBICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzExXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTExX1BCICAgICAgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzExXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTExX1BDICAgICAgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzExXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTExX1BEICAgICAgICAgICAgICgweDAwMDAzMDAwVSkgICAgICAgICAgICAgICAgICAgICAvKiE8IFBEWzExXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTExX1BGICAgICAgICAgICAgICgweDAwMDA1MDAwVSkgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzExXSBwaW4gKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1lTQ0ZHX0VYVElDUjQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTJfUG9zICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTJfTXNrICAgICAgICAgICAgKDB4RlUgPDwgU1lTQ0ZHX0VYVElDUjRfRVhUSTEyX1BvcykgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxMiAgICAgICAgICAgICAgICBTWVNDRkdfRVhUSUNSNF9FWFRJMTJfTXNrICAgICAgICAgLyohPCBFWFRJIDEyIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX1BvcyAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX01zayAgICAgICAgICAgICgweEZVIDw8IFNZU0NGR19FWFRJQ1I0X0VYVEkxM19Qb3MpIC8qITwgMHgwMDAwMDBGMCAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTMgICAgICAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX01zayAgICAgICAgIC8qITwgRVhUSSAxMyBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNF9Qb3MgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNF9Nc2sgICAgICAgICAgICAoMHhGVSA8PCBTWVNDRkdfRVhUSUNSNF9FWFRJMTRfUG9zKSAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0ICAgICAgICAgICAgICAgIFNZU0NGR19FWFRJQ1I0X0VYVEkxNF9Nc2sgICAgICAgICAvKiE8IEVYVEkgMTQgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTVfUG9zICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTVfTXNrICAgICAgICAgICAgKDB4RlUgPDwgU1lTQ0ZHX0VYVElDUjRfRVhUSTE1X1BvcykgLyohPCAweDAwMDBGMDAwICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNSAgICAgICAgICAgICAgICBTWVNDRkdfRVhUSUNSNF9FWFRJMTVfTXNrICAgICAgICAgLyohPCBFWFRJIDE1IGNvbmZpZ3VyYXRpb24gKi8NCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTEyIGNvbmZpZ3VyYXRpb24gIA0KICAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTJfUEEgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbMTJdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTJfUEIgICAgICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbMTJdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTJfUEMgICAgICAgICAgICAgKDB4MDAwMDAwMDJVKSAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbMTJdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTJfUEQgICAgICAgICAgICAgKDB4MDAwMDAwMDNVKSAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbMTJdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTJfUEYgICAgICAgICAgICAgKDB4MDAwMDAwMDVVKSAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbMTJdIHBpbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJMTMgY29uZmlndXJhdGlvbiAgDQogICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxM19QQSAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVsxM10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxM19QQiAgICAgICAgICAgICAoMHgwMDAwMDAxMFUpICAgICAgICAgICAgICAgICAgICAgLyohPCBQQlsxM10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxM19QQyAgICAgICAgICAgICAoMHgwMDAwMDAyMFUpICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1sxM10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxM19QRCAgICAgICAgICAgICAoMHgwMDAwMDAzMFUpICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFsxM10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxM19QRiAgICAgICAgICAgICAoMHgwMDAwMDA1MFUpICAgICAgICAgICAgICAgICAgICAgLyohPCBQRlsxM10gcGluICovDQoNCi8qKiANCiAgKiBAYnJpZWYgIEVYVEkxNCBjb25maWd1cmF0aW9uICANCiAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X1BBICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzE0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X1BCICAgICAgICAgICAgICgweDAwMDAwMTAwVSkgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzE0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X1BDICAgICAgICAgICAgICgweDAwMDAwMjAwVSkgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzE0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X1BEICAgICAgICAgICAgICgweDAwMDAwMzAwVSkgICAgICAgICAgICAgICAgICAgICAvKiE8IFBEWzE0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X1BGICAgICAgICAgICAgICgweDAwMDAwNTAwVSkgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzE0XSBwaW4gKi8NCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTE1IGNvbmZpZ3VyYXRpb24gIA0KICAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTVfUEEgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbMTVdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTVfUEIgICAgICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbMTVdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTVfUEMgICAgICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbMTVdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTVfUEQgICAgICAgICAgICAgKDB4MDAwMDMwMDBVKSAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbMTVdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTVfUEYgICAgICAgICAgICAgKDB4MDAwMDUwMDBVKSAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbMTVdIHBpbiAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTWVNDRkdfQ0ZHUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNZU0NGR19DRkdSMl9MT0NLVVBfTE9DS19Qb3MgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19DRkdSMl9MT0NLVVBfTE9DS19Nc2sgICAgICAgICAoMHgxVSA8PCBTWVNDRkdfQ0ZHUjJfTE9DS1VQX0xPQ0tfUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgU1lTQ0ZHX0NGR1IyX0xPQ0tVUF9MT0NLICAgICAgICAgICAgIFNZU0NGR19DRkdSMl9MT0NLVVBfTE9DS19Nc2sgICAgICAvKiE8IEVuYWJsZXMgYW5kIGxvY2tzIHRoZSBMT0NLVVAgKEhhcmRmYXVsdCkgb3V0cHV0IG9mIENvcnRleE0wIHdpdGggQnJlYWsgSW5wdXQgb2YgVElNRVIxICovDQojZGVmaW5lIFNZU0NGR19DRkdSMl9TUkFNX1BBUklUWV9MT0NLX1BvcyAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19DRkdSMl9TUkFNX1BBUklUWV9MT0NLX01zayAgICAoMHgxVSA8PCBTWVNDRkdfQ0ZHUjJfU1JBTV9QQVJJVFlfTE9DS19Qb3MpIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBTWVNDRkdfQ0ZHUjJfU1JBTV9QQVJJVFlfTE9DSyAgICAgICAgU1lTQ0ZHX0NGR1IyX1NSQU1fUEFSSVRZX0xPQ0tfTXNrIC8qITwgRW5hYmxlcyBhbmQgbG9ja3MgdGhlIFNSQU1fUEFSSVRZIGVycm9yIHNpZ25hbCB3aXRoIEJyZWFrIElucHV0IG9mIFRJTUVSMSAqLw0KI2RlZmluZSBTWVNDRkdfQ0ZHUjJfUFZEX0xPQ0tfUG9zICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfQ0ZHUjJfUFZEX0xPQ0tfTXNrICAgICAgICAgICAgKDB4MVUgPDwgU1lTQ0ZHX0NGR1IyX1BWRF9MT0NLX1BvcykgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFNZU0NGR19DRkdSMl9QVkRfTE9DSyAgICAgICAgICAgICAgICBTWVNDRkdfQ0ZHUjJfUFZEX0xPQ0tfTXNrICAgICAgICAgLyohPCBFbmFibGVzIGFuZCBsb2NrcyB0aGUgUFZEIGNvbm5lY3Rpb24gd2l0aCBUaW1lcjEgQnJlYWsgSW5wdXQgYW5kIGFsc28gdGhlIFBWRF9FTiBhbmQgUFZEU0VMWzI6MF0gYml0cyBvZiB0aGUgUG93ZXIgQ29udHJvbCBJbnRlcmZhY2UgKi8NCiNkZWZpbmUgU1lTQ0ZHX0NGR1IyX1NSQU1fUEVGX1BvcyAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0NGR1IyX1NSQU1fUEVGX01zayAgICAgICAgICAgICgweDFVIDw8IFNZU0NGR19DRkdSMl9TUkFNX1BFRl9Qb3MpIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBTWVNDRkdfQ0ZHUjJfU1JBTV9QRUYgICAgICAgICAgICAgICAgU1lTQ0ZHX0NGR1IyX1NSQU1fUEVGX01zayAgICAgICAgIC8qITwgU1JBTSBQYXJpdHkgZXJyb3IgZmxhZyAqLw0KI2RlZmluZSBTWVNDRkdfQ0ZHUjJfU1JBTV9QRSAgICAgICAgICAgICAgICAgU1lTQ0ZHX0NGR1IyX1NSQU1fUEVGICAvKiE8IFNSQU0gUGFyaXR5IGVycm9yIGZsYWcgKGRlZmluZSBtYWludGFpbmVkIGZvciBsZWdhY3kgcHVycG9zZSkgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGltZXJzIChUSU0pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fQ1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fQ1IxX0NFTl9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ1IxX0NFTl9Nc2sgICAgICAgICAgICgweDFVIDw8IFRJTV9DUjFfQ0VOX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBUSU1fQ1IxX0NFTiAgICAgICAgICAgICAgIFRJTV9DUjFfQ0VOX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDb3VudGVyIGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fQ1IxX1VESVNfUG9zICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ1IxX1VESVNfTXNrICAgICAgICAgICgweDFVIDw8IFRJTV9DUjFfVURJU19Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBUSU1fQ1IxX1VESVMgICAgICAgICAgICAgIFRJTV9DUjFfVURJU19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxVcGRhdGUgZGlzYWJsZSAqLw0KI2RlZmluZSBUSU1fQ1IxX1VSU19Qb3MgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ1IxX1VSU19Nc2sgICAgICAgICAgICgweDFVIDw8IFRJTV9DUjFfVVJTX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBUSU1fQ1IxX1VSUyAgICAgICAgICAgICAgIFRJTV9DUjFfVVJTX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxVcGRhdGUgcmVxdWVzdCBzb3VyY2UgKi8NCiNkZWZpbmUgVElNX0NSMV9PUE1fUG9zICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMV9PUE1fTXNrICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ1IxX09QTV9Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgVElNX0NSMV9PUE0gICAgICAgICAgICAgICBUSU1fQ1IxX09QTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8T25lIHB1bHNlIG1vZGUgKi8NCiNkZWZpbmUgVElNX0NSMV9ESVJfUG9zICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMV9ESVJfTXNrICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ1IxX0RJUl9Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVElNX0NSMV9ESVIgICAgICAgICAgICAgICBUSU1fQ1IxX0RJUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8RGlyZWN0aW9uICovDQoNCiNkZWZpbmUgVElNX0NSMV9DTVNfUG9zICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMV9DTVNfTXNrICAgICAgICAgICAoMHgzVSA8PCBUSU1fQ1IxX0NNU19Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNjAgKi8NCiNkZWZpbmUgVElNX0NSMV9DTVMgICAgICAgICAgICAgICBUSU1fQ1IxX0NNU19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q01TWzE6MF0gYml0cyAoQ2VudGVyLWFsaWduZWQgbW9kZSBzZWxlY3Rpb24pICovDQojZGVmaW5lIFRJTV9DUjFfQ01TXzAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NSMV9DTVNfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFRJTV9DUjFfQ01TXzEgICAgICAgICAgICAgKDB4MlUgPDwgVElNX0NSMV9DTVNfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQoNCiNkZWZpbmUgVElNX0NSMV9BUlBFX1BvcyAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMV9BUlBFX01zayAgICAgICAgICAoMHgxVSA8PCBUSU1fQ1IxX0FSUEVfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVElNX0NSMV9BUlBFICAgICAgICAgICAgICBUSU1fQ1IxX0FSUEVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8QXV0by1yZWxvYWQgcHJlbG9hZCBlbmFibGUgKi8NCg0KI2RlZmluZSBUSU1fQ1IxX0NLRF9Qb3MgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ1IxX0NLRF9Nc2sgICAgICAgICAgICgweDNVIDw8IFRJTV9DUjFfQ0tEX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDMwMCAqLw0KI2RlZmluZSBUSU1fQ1IxX0NLRCAgICAgICAgICAgICAgIFRJTV9DUjFfQ0tEX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDS0RbMTowXSBiaXRzIChjbG9jayBkaXZpc2lvbikgKi8NCiNkZWZpbmUgVElNX0NSMV9DS0RfMCAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ1IxX0NLRF9Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVElNX0NSMV9DS0RfMSAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fQ1IxX0NLRF9Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fQ1IyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fQ1IyX0NDUENfUG9zICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ1IyX0NDUENfTXNrICAgICAgICAgICgweDFVIDw8IFRJTV9DUjJfQ0NQQ19Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBUSU1fQ1IyX0NDUEMgICAgICAgICAgICAgIFRJTV9DUjJfQ0NQQ19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgUHJlbG9hZGVkIENvbnRyb2wgKi8NCiNkZWZpbmUgVElNX0NSMl9DQ1VTX1BvcyAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMl9DQ1VTX01zayAgICAgICAgICAoMHgxVSA8PCBUSU1fQ1IyX0NDVVNfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgVElNX0NSMl9DQ1VTICAgICAgICAgICAgICBUSU1fQ1IyX0NDVVNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIENvbnRyb2wgVXBkYXRlIFNlbGVjdGlvbiAqLw0KI2RlZmluZSBUSU1fQ1IyX0NDRFNfUG9zICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ1IyX0NDRFNfTXNrICAgICAgICAgICgweDFVIDw8IFRJTV9DUjJfQ0NEU19Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBUSU1fQ1IyX0NDRFMgICAgICAgICAgICAgIFRJTV9DUjJfQ0NEU19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgRE1BIFNlbGVjdGlvbiAqLw0KDQojZGVmaW5lIFRJTV9DUjJfTU1TX1BvcyAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DUjJfTU1TX01zayAgICAgICAgICAgKDB4N1UgPDwgVElNX0NSMl9NTVNfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDcwICovDQojZGVmaW5lIFRJTV9DUjJfTU1TICAgICAgICAgICAgICAgVElNX0NSMl9NTVNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPE1NU1syOjBdIGJpdHMgKE1hc3RlciBNb2RlIFNlbGVjdGlvbikgKi8NCiNkZWZpbmUgVElNX0NSMl9NTVNfMCAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ1IyX01NU19Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVElNX0NSMl9NTVNfMSAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fQ1IyX01NU19Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgVElNX0NSMl9NTVNfMiAgICAgICAgICAgICAoMHg0VSA8PCBUSU1fQ1IyX01NU19Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCg0KI2RlZmluZSBUSU1fQ1IyX1RJMVNfUG9zICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ1IyX1RJMVNfTXNrICAgICAgICAgICgweDFVIDw8IFRJTV9DUjJfVEkxU19Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBUSU1fQ1IyX1RJMVMgICAgICAgICAgICAgIFRJTV9DUjJfVEkxU19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxUSTEgU2VsZWN0aW9uICovDQojZGVmaW5lIFRJTV9DUjJfT0lTMV9Qb3MgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DUjJfT0lTMV9Nc2sgICAgICAgICAgKDB4MVUgPDwgVElNX0NSMl9PSVMxX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFRJTV9DUjJfT0lTMSAgICAgICAgICAgICAgVElNX0NSMl9PSVMxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPE91dHB1dCBJZGxlIHN0YXRlIDEgKE9DMSBvdXRwdXQpICovDQojZGVmaW5lIFRJTV9DUjJfT0lTMU5fUG9zICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DUjJfT0lTMU5fTXNrICAgICAgICAgKDB4MVUgPDwgVElNX0NSMl9PSVMxTl9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFRJTV9DUjJfT0lTMU4gICAgICAgICAgICAgVElNX0NSMl9PSVMxTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPE91dHB1dCBJZGxlIHN0YXRlIDEgKE9DMU4gb3V0cHV0KSAqLw0KI2RlZmluZSBUSU1fQ1IyX09JUzJfUG9zICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ1IyX09JUzJfTXNrICAgICAgICAgICgweDFVIDw8IFRJTV9DUjJfT0lTMl9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBUSU1fQ1IyX09JUzIgICAgICAgICAgICAgIFRJTV9DUjJfT0lTMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgSWRsZSBzdGF0ZSAyIChPQzIgb3V0cHV0KSAqLw0KI2RlZmluZSBUSU1fQ1IyX09JUzJOX1BvcyAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ1IyX09JUzJOX01zayAgICAgICAgICgweDFVIDw8IFRJTV9DUjJfT0lTMk5fUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBUSU1fQ1IyX09JUzJOICAgICAgICAgICAgIFRJTV9DUjJfT0lTMk5fTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgSWRsZSBzdGF0ZSAyIChPQzJOIG91dHB1dCkgKi8NCiNkZWZpbmUgVElNX0NSMl9PSVMzX1BvcyAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMl9PSVMzX01zayAgICAgICAgICAoMHgxVSA8PCBUSU1fQ1IyX09JUzNfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVElNX0NSMl9PSVMzICAgICAgICAgICAgICBUSU1fQ1IyX09JUzNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IElkbGUgc3RhdGUgMyAoT0MzIG91dHB1dCkgKi8NCiNkZWZpbmUgVElNX0NSMl9PSVMzTl9Qb3MgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMl9PSVMzTl9Nc2sgICAgICAgICAoMHgxVSA8PCBUSU1fQ1IyX09JUzNOX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVElNX0NSMl9PSVMzTiAgICAgICAgICAgICBUSU1fQ1IyX09JUzNOX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IElkbGUgc3RhdGUgMyAoT0MzTiBvdXRwdXQpICovDQojZGVmaW5lIFRJTV9DUjJfT0lTNF9Qb3MgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DUjJfT0lTNF9Nc2sgICAgICAgICAgKDB4MVUgPDwgVElNX0NSMl9PSVM0X1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFRJTV9DUjJfT0lTNCAgICAgICAgICAgICAgVElNX0NSMl9PSVM0X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPE91dHB1dCBJZGxlIHN0YXRlIDQgKE9DNCBvdXRwdXQpICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX1NNQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVElNX1NNQ1JfU01TX1BvcyAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NNQ1JfU01TX01zayAgICAgICAgICAoMHg3VSA8PCBUSU1fU01DUl9TTVNfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDcgKi8NCiNkZWZpbmUgVElNX1NNQ1JfU01TICAgICAgICAgICAgICBUSU1fU01DUl9TTVNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8U01TWzI6MF0gYml0cyAoU2xhdmUgbW9kZSBzZWxlY3Rpb24pICovDQojZGVmaW5lIFRJTV9TTUNSX1NNU18wICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NNQ1JfU01TX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFRJTV9TTUNSX1NNU18xICAgICAgICAgICAgKDB4MlUgPDwgVElNX1NNQ1JfU01TX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFRJTV9TTUNSX1NNU18yICAgICAgICAgICAgKDB4NFUgPDwgVElNX1NNQ1JfU01TX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQoNCiNkZWZpbmUgVElNX1NNQ1JfT0NDU19Qb3MgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NNQ1JfT0NDU19Nc2sgICAgICAgICAoMHgxVSA8PCBUSU1fU01DUl9PQ0NTX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgVElNX1NNQ1JfT0NDUyAgICAgICAgICAgICBUSU1fU01DUl9PQ0NTX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE9DUkVGIGNsZWFyIHNlbGVjdGlvbiAqLw0KDQojZGVmaW5lIFRJTV9TTUNSX1RTX1BvcyAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9TTUNSX1RTX01zayAgICAgICAgICAgKDB4N1UgPDwgVElNX1NNQ1JfVFNfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDcwICovDQojZGVmaW5lIFRJTV9TTUNSX1RTICAgICAgICAgICAgICAgVElNX1NNQ1JfVFNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPFRTWzI6MF0gYml0cyAoVHJpZ2dlciBzZWxlY3Rpb24pICovDQojZGVmaW5lIFRJTV9TTUNSX1RTXzAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NNQ1JfVFNfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFRJTV9TTUNSX1RTXzEgICAgICAgICAgICAgKDB4MlUgPDwgVElNX1NNQ1JfVFNfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFRJTV9TTUNSX1RTXzIgICAgICAgICAgICAgKDB4NFUgPDwgVElNX1NNQ1JfVFNfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQoNCiNkZWZpbmUgVElNX1NNQ1JfTVNNX1BvcyAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NNQ1JfTVNNX01zayAgICAgICAgICAoMHgxVSA8PCBUSU1fU01DUl9NU01fUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVElNX1NNQ1JfTVNNICAgICAgICAgICAgICBUSU1fU01DUl9NU01fTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8TWFzdGVyL3NsYXZlIG1vZGUgKi8NCg0KI2RlZmluZSBUSU1fU01DUl9FVEZfUG9zICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU01DUl9FVEZfTXNrICAgICAgICAgICgweEZVIDw8IFRJTV9TTUNSX0VURl9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMEYwMCAqLw0KI2RlZmluZSBUSU1fU01DUl9FVEYgICAgICAgICAgICAgIFRJTV9TTUNSX0VURl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxFVEZbMzowXSBiaXRzIChFeHRlcm5hbCB0cmlnZ2VyIGZpbHRlcikgKi8NCiNkZWZpbmUgVElNX1NNQ1JfRVRGXzAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fU01DUl9FVEZfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVElNX1NNQ1JfRVRGXzEgICAgICAgICAgICAoMHgyVSA8PCBUSU1fU01DUl9FVEZfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVElNX1NNQ1JfRVRGXzIgICAgICAgICAgICAoMHg0VSA8PCBUSU1fU01DUl9FVEZfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVElNX1NNQ1JfRVRGXzMgICAgICAgICAgICAoMHg4VSA8PCBUSU1fU01DUl9FVEZfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCg0KI2RlZmluZSBUSU1fU01DUl9FVFBTX1BvcyAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU01DUl9FVFBTX01zayAgICAgICAgICgweDNVIDw8IFRJTV9TTUNSX0VUUFNfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMzAwMCAqLw0KI2RlZmluZSBUSU1fU01DUl9FVFBTICAgICAgICAgICAgIFRJTV9TTUNSX0VUUFNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxFVFBTWzE6MF0gYml0cyAoRXh0ZXJuYWwgdHJpZ2dlciBwcmVzY2FsZXIpICovDQojZGVmaW5lIFRJTV9TTUNSX0VUUFNfMCAgICAgICAgICAgKDB4MVUgPDwgVElNX1NNQ1JfRVRQU19Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFRJTV9TTUNSX0VUUFNfMSAgICAgICAgICAgKDB4MlUgPDwgVElNX1NNQ1JfRVRQU19Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQoNCiNkZWZpbmUgVElNX1NNQ1JfRUNFX1BvcyAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NNQ1JfRUNFX01zayAgICAgICAgICAoMHgxVSA8PCBUSU1fU01DUl9FQ0VfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVElNX1NNQ1JfRUNFICAgICAgICAgICAgICBUSU1fU01DUl9FQ0VfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8RXh0ZXJuYWwgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFRJTV9TTUNSX0VUUF9Qb3MgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9TTUNSX0VUUF9Nc2sgICAgICAgICAgKDB4MVUgPDwgVElNX1NNQ1JfRVRQX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFRJTV9TTUNSX0VUUCAgICAgICAgICAgICAgVElNX1NNQ1JfRVRQX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPEV4dGVybmFsIHRyaWdnZXIgcG9sYXJpdHkgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fRElFUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fRElFUl9VSUVfUG9zICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRElFUl9VSUVfTXNrICAgICAgICAgICgweDFVIDw8IFRJTV9ESUVSX1VJRV9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBUSU1fRElFUl9VSUUgICAgICAgICAgICAgIFRJTV9ESUVSX1VJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxVcGRhdGUgaW50ZXJydXB0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzFJRV9Qb3MgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRElFUl9DQzFJRV9Nc2sgICAgICAgICgweDFVIDw8IFRJTV9ESUVSX0NDMUlFX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzFJRSAgICAgICAgICAgIFRJTV9ESUVSX0NDMUlFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMSBpbnRlcnJ1cHQgZW5hYmxlICovDQojZGVmaW5lIFRJTV9ESUVSX0NDMklFX1BvcyAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9ESUVSX0NDMklFX01zayAgICAgICAgKDB4MVUgPDwgVElNX0RJRVJfQ0MySUVfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFRJTV9ESUVSX0NDMklFICAgICAgICAgICAgVElNX0RJRVJfQ0MySUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAyIGludGVycnVwdCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0RJRVJfQ0MzSUVfUG9zICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0RJRVJfQ0MzSUVfTXNrICAgICAgICAoMHgxVSA8PCBUSU1fRElFUl9DQzNJRV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgVElNX0RJRVJfQ0MzSUUgICAgICAgICAgICBUSU1fRElFUl9DQzNJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDMgaW50ZXJydXB0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzRJRV9Qb3MgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRElFUl9DQzRJRV9Nc2sgICAgICAgICgweDFVIDw8IFRJTV9ESUVSX0NDNElFX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzRJRSAgICAgICAgICAgIFRJTV9ESUVSX0NDNElFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgNCBpbnRlcnJ1cHQgZW5hYmxlICovDQojZGVmaW5lIFRJTV9ESUVSX0NPTUlFX1BvcyAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9ESUVSX0NPTUlFX01zayAgICAgICAgKDB4MVUgPDwgVElNX0RJRVJfQ09NSUVfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFRJTV9ESUVSX0NPTUlFICAgICAgICAgICAgVElNX0RJRVJfQ09NSUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENPTSBpbnRlcnJ1cHQgZW5hYmxlICovDQojZGVmaW5lIFRJTV9ESUVSX1RJRV9Qb3MgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9ESUVSX1RJRV9Nc2sgICAgICAgICAgKDB4MVUgPDwgVElNX0RJRVJfVElFX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFRJTV9ESUVSX1RJRSAgICAgICAgICAgICAgVElNX0RJRVJfVElFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPFRyaWdnZXIgaW50ZXJydXB0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fRElFUl9CSUVfUG9zICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRElFUl9CSUVfTXNrICAgICAgICAgICgweDFVIDw8IFRJTV9ESUVSX0JJRV9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBUSU1fRElFUl9CSUUgICAgICAgICAgICAgIFRJTV9ESUVSX0JJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxCcmVhayBpbnRlcnJ1cHQgZW5hYmxlICovDQojZGVmaW5lIFRJTV9ESUVSX1VERV9Qb3MgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9ESUVSX1VERV9Nc2sgICAgICAgICAgKDB4MVUgPDwgVElNX0RJRVJfVURFX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFRJTV9ESUVSX1VERSAgICAgICAgICAgICAgVElNX0RJRVJfVURFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPFVwZGF0ZSBETUEgcmVxdWVzdCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0RJRVJfQ0MxREVfUG9zICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0RJRVJfQ0MxREVfTXNrICAgICAgICAoMHgxVSA8PCBUSU1fRElFUl9DQzFERV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVElNX0RJRVJfQ0MxREUgICAgICAgICAgICBUSU1fRElFUl9DQzFERV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDEgRE1BIHJlcXVlc3QgZW5hYmxlICovDQojZGVmaW5lIFRJTV9ESUVSX0NDMkRFX1BvcyAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9ESUVSX0NDMkRFX01zayAgICAgICAgKDB4MVUgPDwgVElNX0RJRVJfQ0MyREVfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFRJTV9ESUVSX0NDMkRFICAgICAgICAgICAgVElNX0RJRVJfQ0MyREVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAyIERNQSByZXF1ZXN0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzNERV9Qb3MgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRElFUl9DQzNERV9Nc2sgICAgICAgICgweDFVIDw8IFRJTV9ESUVSX0NDM0RFX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzNERSAgICAgICAgICAgIFRJTV9ESUVSX0NDM0RFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMyBETUEgcmVxdWVzdCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0RJRVJfQ0M0REVfUG9zICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0RJRVJfQ0M0REVfTXNrICAgICAgICAoMHgxVSA8PCBUSU1fRElFUl9DQzRERV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVElNX0RJRVJfQ0M0REUgICAgICAgICAgICBUSU1fRElFUl9DQzRERV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDQgRE1BIHJlcXVlc3QgZW5hYmxlICovDQojZGVmaW5lIFRJTV9ESUVSX0NPTURFX1BvcyAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9ESUVSX0NPTURFX01zayAgICAgICAgKDB4MVUgPDwgVElNX0RJRVJfQ09NREVfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFRJTV9ESUVSX0NPTURFICAgICAgICAgICAgVElNX0RJRVJfQ09NREVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENPTSBETUEgcmVxdWVzdCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0RJRVJfVERFX1BvcyAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0RJRVJfVERFX01zayAgICAgICAgICAoMHgxVSA8PCBUSU1fRElFUl9UREVfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVElNX0RJRVJfVERFICAgICAgICAgICAgICBUSU1fRElFUl9UREVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8VHJpZ2dlciBETUEgcmVxdWVzdCBlbmFibGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fU1JfVUlGX1BvcyAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU1JfVUlGX01zayAgICAgICAgICAgICgweDFVIDw8IFRJTV9TUl9VSUZfUG9zKSAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBUSU1fU1JfVUlGICAgICAgICAgICAgICAgIFRJTV9TUl9VSUZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxVcGRhdGUgaW50ZXJydXB0IEZsYWcgKi8NCiNkZWZpbmUgVElNX1NSX0NDMUlGX1BvcyAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NSX0NDMUlGX01zayAgICAgICAgICAoMHgxVSA8PCBUSU1fU1JfQ0MxSUZfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgVElNX1NSX0NDMUlGICAgICAgICAgICAgICBUSU1fU1JfQ0MxSUZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDEgaW50ZXJydXB0IEZsYWcgKi8NCiNkZWZpbmUgVElNX1NSX0NDMklGX1BvcyAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NSX0NDMklGX01zayAgICAgICAgICAoMHgxVSA8PCBUSU1fU1JfQ0MySUZfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgVElNX1NSX0NDMklGICAgICAgICAgICAgICBUSU1fU1JfQ0MySUZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDIgaW50ZXJydXB0IEZsYWcgKi8NCiNkZWZpbmUgVElNX1NSX0NDM0lGX1BvcyAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NSX0NDM0lGX01zayAgICAgICAgICAoMHgxVSA8PCBUSU1fU1JfQ0MzSUZfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgVElNX1NSX0NDM0lGICAgICAgICAgICAgICBUSU1fU1JfQ0MzSUZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDMgaW50ZXJydXB0IEZsYWcgKi8NCiNkZWZpbmUgVElNX1NSX0NDNElGX1BvcyAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NSX0NDNElGX01zayAgICAgICAgICAoMHgxVSA8PCBUSU1fU1JfQ0M0SUZfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVElNX1NSX0NDNElGICAgICAgICAgICAgICBUSU1fU1JfQ0M0SUZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDQgaW50ZXJydXB0IEZsYWcgKi8NCiNkZWZpbmUgVElNX1NSX0NPTUlGX1BvcyAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NSX0NPTUlGX01zayAgICAgICAgICAoMHgxVSA8PCBUSU1fU1JfQ09NSUZfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgVElNX1NSX0NPTUlGICAgICAgICAgICAgICBUSU1fU1JfQ09NSUZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q09NIGludGVycnVwdCBGbGFnICovDQojZGVmaW5lIFRJTV9TUl9USUZfUG9zICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9TUl9USUZfTXNrICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NSX1RJRl9Qb3MpICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFRJTV9TUl9USUYgICAgICAgICAgICAgICAgVElNX1NSX1RJRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPFRyaWdnZXIgaW50ZXJydXB0IEZsYWcgKi8NCiNkZWZpbmUgVElNX1NSX0JJRl9Qb3MgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NSX0JJRl9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBUSU1fU1JfQklGX1BvcykgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVElNX1NSX0JJRiAgICAgICAgICAgICAgICBUSU1fU1JfQklGX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8QnJlYWsgaW50ZXJydXB0IEZsYWcgKi8NCiNkZWZpbmUgVElNX1NSX0NDMU9GX1BvcyAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NSX0NDMU9GX01zayAgICAgICAgICAoMHgxVSA8PCBUSU1fU1JfQ0MxT0ZfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVElNX1NSX0NDMU9GICAgICAgICAgICAgICBUSU1fU1JfQ0MxT0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDEgT3ZlcmNhcHR1cmUgRmxhZyAqLw0KI2RlZmluZSBUSU1fU1JfQ0MyT0ZfUG9zICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU1JfQ0MyT0ZfTXNrICAgICAgICAgICgweDFVIDw8IFRJTV9TUl9DQzJPRl9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBUSU1fU1JfQ0MyT0YgICAgICAgICAgICAgIFRJTV9TUl9DQzJPRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMiBPdmVyY2FwdHVyZSBGbGFnICovDQojZGVmaW5lIFRJTV9TUl9DQzNPRl9Qb3MgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9TUl9DQzNPRl9Nc2sgICAgICAgICAgKDB4MVUgPDwgVElNX1NSX0NDM09GX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFRJTV9TUl9DQzNPRiAgICAgICAgICAgICAgVElNX1NSX0NDM09GX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAzIE92ZXJjYXB0dXJlIEZsYWcgKi8NCiNkZWZpbmUgVElNX1NSX0NDNE9GX1BvcyAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NSX0NDNE9GX01zayAgICAgICAgICAoMHgxVSA8PCBUSU1fU1JfQ0M0T0ZfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVElNX1NSX0NDNE9GICAgICAgICAgICAgICBUSU1fU1JfQ0M0T0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDQgT3ZlcmNhcHR1cmUgRmxhZyAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9FR1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9FR1JfVUdfUG9zICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9FR1JfVUdfTXNrICAgICAgICAgICAgKDB4MVUgPDwgVElNX0VHUl9VR19Qb3MpICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFRJTV9FR1JfVUcgICAgICAgICAgICAgICAgVElNX0VHUl9VR19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPFVwZGF0ZSBHZW5lcmF0aW9uICovDQojZGVmaW5lIFRJTV9FR1JfQ0MxR19Qb3MgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9FR1JfQ0MxR19Nc2sgICAgICAgICAgKDB4MVUgPDwgVElNX0VHUl9DQzFHX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFRJTV9FR1JfQ0MxRyAgICAgICAgICAgICAgVElNX0VHUl9DQzFHX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAxIEdlbmVyYXRpb24gKi8NCiNkZWZpbmUgVElNX0VHUl9DQzJHX1BvcyAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0VHUl9DQzJHX01zayAgICAgICAgICAoMHgxVSA8PCBUSU1fRUdSX0NDMkdfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgVElNX0VHUl9DQzJHICAgICAgICAgICAgICBUSU1fRUdSX0NDMkdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDIgR2VuZXJhdGlvbiAqLw0KI2RlZmluZSBUSU1fRUdSX0NDM0dfUG9zICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRUdSX0NDM0dfTXNrICAgICAgICAgICgweDFVIDw8IFRJTV9FR1JfQ0MzR19Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBUSU1fRUdSX0NDM0cgICAgICAgICAgICAgIFRJTV9FR1JfQ0MzR19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMyBHZW5lcmF0aW9uICovDQojZGVmaW5lIFRJTV9FR1JfQ0M0R19Qb3MgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9FR1JfQ0M0R19Nc2sgICAgICAgICAgKDB4MVUgPDwgVElNX0VHUl9DQzRHX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFRJTV9FR1JfQ0M0RyAgICAgICAgICAgICAgVElNX0VHUl9DQzRHX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSA0IEdlbmVyYXRpb24gKi8NCiNkZWZpbmUgVElNX0VHUl9DT01HX1BvcyAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0VHUl9DT01HX01zayAgICAgICAgICAoMHgxVSA8PCBUSU1fRUdSX0NPTUdfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgVElNX0VHUl9DT01HICAgICAgICAgICAgICBUSU1fRUdSX0NPTUdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIENvbnRyb2wgVXBkYXRlIEdlbmVyYXRpb24gKi8NCiNkZWZpbmUgVElNX0VHUl9UR19Qb3MgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0VHUl9UR19Nc2sgICAgICAgICAgICAoMHgxVSA8PCBUSU1fRUdSX1RHX1BvcykgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVElNX0VHUl9URyAgICAgICAgICAgICAgICBUSU1fRUdSX1RHX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8VHJpZ2dlciBHZW5lcmF0aW9uICovDQojZGVmaW5lIFRJTV9FR1JfQkdfUG9zICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9FR1JfQkdfTXNrICAgICAgICAgICAgKDB4MVUgPDwgVElNX0VHUl9CR19Qb3MpICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFRJTV9FR1JfQkcgICAgICAgICAgICAgICAgVElNX0VHUl9CR19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPEJyZWFrIEdlbmVyYXRpb24gKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9DQ01SMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fQ0NNUjFfQ0MxU19Qb3MgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjFfQ0MxU19Nc2sgICAgICAgICgweDNVIDw8IFRJTV9DQ01SMV9DQzFTX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMyAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfQ0MxUyAgICAgICAgICAgIFRJTV9DQ01SMV9DQzFTX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDQzFTWzE6MF0gYml0cyAoQ2FwdHVyZS9Db21wYXJlIDEgU2VsZWN0aW9uKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfQ0MxU18wICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMV9DQzFTX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfQ0MxU18xICAgICAgICAgICgweDJVIDw8IFRJTV9DQ01SMV9DQzFTX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMV9PQzFGRV9Qb3MgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMV9PQzFGRV9Nc2sgICAgICAgKDB4MVUgPDwgVElNX0NDTVIxX09DMUZFX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFRJTV9DQ01SMV9PQzFGRSAgICAgICAgICAgVElNX0NDTVIxX09DMUZFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPE91dHB1dCBDb21wYXJlIDEgRmFzdCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMVBFX1BvcyAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIxX09DMVBFX01zayAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjFfT0MxUEVfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMVBFICAgICAgICAgICBUSU1fQ0NNUjFfT0MxUEVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgMSBQcmVsb2FkIGVuYWJsZSAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMV9PQzFNX1BvcyAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMV9PQzFNX01zayAgICAgICAgKDB4N1UgPDwgVElNX0NDTVIxX09DMU1fUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDcwICovDQojZGVmaW5lIFRJTV9DQ01SMV9PQzFNICAgICAgICAgICAgVElNX0NDTVIxX09DMU1fTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPE9DMU1bMjowXSBiaXRzIChPdXRwdXQgQ29tcGFyZSAxIE1vZGUpICovDQojZGVmaW5lIFRJTV9DQ01SMV9PQzFNXzAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIxX09DMU1fUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFRJTV9DQ01SMV9PQzFNXzEgICAgICAgICAgKDB4MlUgPDwgVElNX0NDTVIxX09DMU1fUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFRJTV9DQ01SMV9PQzFNXzIgICAgICAgICAgKDB4NFUgPDwgVElNX0NDTVIxX09DMU1fUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQoNCiNkZWZpbmUgVElNX0NDTVIxX09DMUNFX1BvcyAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIxX09DMUNFX01zayAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjFfT0MxQ0VfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMUNFICAgICAgICAgICBUSU1fQ0NNUjFfT0MxQ0VfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgMUNsZWFyIEVuYWJsZSAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMV9DQzJTX1BvcyAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMV9DQzJTX01zayAgICAgICAgKDB4M1UgPDwgVElNX0NDTVIxX0NDMlNfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMzAwICovDQojZGVmaW5lIFRJTV9DQ01SMV9DQzJTICAgICAgICAgICAgVElNX0NDTVIxX0NDMlNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENDMlNbMTowXSBiaXRzIChDYXB0dXJlL0NvbXBhcmUgMiBTZWxlY3Rpb24pICovDQojZGVmaW5lIFRJTV9DQ01SMV9DQzJTXzAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIxX0NDMlNfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFRJTV9DQ01SMV9DQzJTXzEgICAgICAgICAgKDB4MlUgPDwgVElNX0NDTVIxX0NDMlNfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQoNCiNkZWZpbmUgVElNX0NDTVIxX09DMkZFX1BvcyAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIxX09DMkZFX01zayAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjFfT0MyRkVfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMkZFICAgICAgICAgICBUSU1fQ0NNUjFfT0MyRkVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgMiBGYXN0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyUEVfUG9zICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyUEVfTXNrICAgICAgICgweDFVIDw8IFRJTV9DQ01SMV9PQzJQRV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyUEUgICAgICAgICAgIFRJTV9DQ01SMV9PQzJQRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgQ29tcGFyZSAyIFByZWxvYWQgZW5hYmxlICovDQoNCiNkZWZpbmUgVElNX0NDTVIxX09DMk1fUG9zICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIxX09DMk1fTXNrICAgICAgICAoMHg3VSA8PCBUSU1fQ0NNUjFfT0MyTV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDcwMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMk0gICAgICAgICAgICBUSU1fQ0NNUjFfT0MyTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8T0MyTVsyOjBdIGJpdHMgKE91dHB1dCBDb21wYXJlIDIgTW9kZSkgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMk1fMCAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjFfT0MyTV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMk1fMSAgICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjFfT0MyTV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMk1fMiAgICAgICAgICAoMHg0VSA8PCBUSU1fQ0NNUjFfT0MyTV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyQ0VfUG9zICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyQ0VfTXNrICAgICAgICgweDFVIDw8IFRJTV9DQ01SMV9PQzJDRV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyQ0UgICAgICAgICAgIFRJTV9DQ01SMV9PQzJDRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgQ29tcGFyZSAyIENsZWFyIEVuYWJsZSAqLw0KDQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoNCiNkZWZpbmUgVElNX0NDTVIxX0lDMVBTQ19Qb3MgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIxX0lDMVBTQ19Nc2sgICAgICAoMHgzVSA8PCBUSU1fQ0NNUjFfSUMxUFNDX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMEMgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMVBTQyAgICAgICAgICBUSU1fQ0NNUjFfSUMxUFNDX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8SUMxUFNDWzE6MF0gYml0cyAoSW5wdXQgQ2FwdHVyZSAxIFByZXNjYWxlcikgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMVBTQ18wICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjFfSUMxUFNDX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMVBTQ18xICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjFfSUMxUFNDX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjFfSUMxRl9Qb3MgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjFfSUMxRl9Nc2sgICAgICAgICgweEZVIDw8IFRJTV9DQ01SMV9JQzFGX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDBGMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfSUMxRiAgICAgICAgICAgIFRJTV9DQ01SMV9JQzFGX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxJQzFGWzM6MF0gYml0cyAoSW5wdXQgQ2FwdHVyZSAxIEZpbHRlcikgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMUZfMCAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjFfSUMxRl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMUZfMSAgICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjFfSUMxRl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMUZfMiAgICAgICAgICAoMHg0VSA8PCBUSU1fQ0NNUjFfSUMxRl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMUZfMyAgICAgICAgICAoMHg4VSA8PCBUSU1fQ0NNUjFfSUMxRl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyUFNDX1BvcyAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyUFNDX01zayAgICAgICgweDNVIDw8IFRJTV9DQ01SMV9JQzJQU0NfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMEMwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyUFNDICAgICAgICAgIFRJTV9DQ01SMV9JQzJQU0NfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxJQzJQU0NbMTowXSBiaXRzIChJbnB1dCBDYXB0dXJlIDIgUHJlc2NhbGVyKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyUFNDXzAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMV9JQzJQU0NfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyUFNDXzEgICAgICAgICgweDJVIDw8IFRJTV9DQ01SMV9JQzJQU0NfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMV9JQzJGX1BvcyAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMV9JQzJGX01zayAgICAgICAgKDB4RlUgPDwgVElNX0NDTVIxX0lDMkZfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDBGMDAwICovDQojZGVmaW5lIFRJTV9DQ01SMV9JQzJGICAgICAgICAgICAgVElNX0NDTVIxX0lDMkZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPElDMkZbMzowXSBiaXRzIChJbnB1dCBDYXB0dXJlIDIgRmlsdGVyKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyRl8wICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMV9JQzJGX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyRl8xICAgICAgICAgICgweDJVIDw8IFRJTV9DQ01SMV9JQzJGX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyRl8yICAgICAgICAgICgweDRVIDw8IFRJTV9DQ01SMV9JQzJGX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyRl8zICAgICAgICAgICgweDhVIDw8IFRJTV9DQ01SMV9JQzJGX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0NDTVIyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9DQ01SMl9DQzNTX1BvcyAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMl9DQzNTX01zayAgICAgICAgKDB4M1UgPDwgVElNX0NDTVIyX0NDM1NfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAzICovDQojZGVmaW5lIFRJTV9DQ01SMl9DQzNTICAgICAgICAgICAgVElNX0NDTVIyX0NDM1NfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENDM1NbMTowXSBiaXRzIChDYXB0dXJlL0NvbXBhcmUgMyBTZWxlY3Rpb24pICovDQojZGVmaW5lIFRJTV9DQ01SMl9DQzNTXzAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIyX0NDM1NfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFRJTV9DQ01SMl9DQzNTXzEgICAgICAgICAgKDB4MlUgPDwgVElNX0NDTVIyX0NDM1NfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQoNCiNkZWZpbmUgVElNX0NDTVIyX09DM0ZFX1BvcyAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIyX09DM0ZFX01zayAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjJfT0MzRkVfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgVElNX0NDTVIyX09DM0ZFICAgICAgICAgICBUSU1fQ0NNUjJfT0MzRkVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgMyBGYXN0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0MzUEVfUG9zICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjJfT0MzUEVfTXNrICAgICAgICgweDFVIDw8IFRJTV9DQ01SMl9PQzNQRV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0MzUEUgICAgICAgICAgIFRJTV9DQ01SMl9PQzNQRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgQ29tcGFyZSAzIFByZWxvYWQgZW5hYmxlICovDQoNCiNkZWZpbmUgVElNX0NDTVIyX09DM01fUG9zICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIyX09DM01fTXNrICAgICAgICAoMHg3VSA8PCBUSU1fQ0NNUjJfT0MzTV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNzAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX09DM00gICAgICAgICAgICBUSU1fQ0NNUjJfT0MzTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8T0MzTVsyOjBdIGJpdHMgKE91dHB1dCBDb21wYXJlIDMgTW9kZSkgKi8NCiNkZWZpbmUgVElNX0NDTVIyX09DM01fMCAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjJfT0MzTV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX09DM01fMSAgICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjJfT0MzTV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX09DM01fMiAgICAgICAgICAoMHg0VSA8PCBUSU1fQ0NNUjJfT0MzTV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjJfT0MzQ0VfUG9zICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjJfT0MzQ0VfTXNrICAgICAgICgweDFVIDw8IFRJTV9DQ01SMl9PQzNDRV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0MzQ0UgICAgICAgICAgIFRJTV9DQ01SMl9PQzNDRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgQ29tcGFyZSAzIENsZWFyIEVuYWJsZSAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMl9DQzRTX1BvcyAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMl9DQzRTX01zayAgICAgICAgKDB4M1UgPDwgVElNX0NDTVIyX0NDNFNfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMzAwICovDQojZGVmaW5lIFRJTV9DQ01SMl9DQzRTICAgICAgICAgICAgVElNX0NDTVIyX0NDNFNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENDNFNbMTowXSBiaXRzIChDYXB0dXJlL0NvbXBhcmUgNCBTZWxlY3Rpb24pICovDQojZGVmaW5lIFRJTV9DQ01SMl9DQzRTXzAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIyX0NDNFNfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFRJTV9DQ01SMl9DQzRTXzEgICAgICAgICAgKDB4MlUgPDwgVElNX0NDTVIyX0NDNFNfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQoNCiNkZWZpbmUgVElNX0NDTVIyX09DNEZFX1BvcyAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIyX09DNEZFX01zayAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjJfT0M0RkVfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX09DNEZFICAgICAgICAgICBUSU1fQ0NNUjJfT0M0RkVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgNCBGYXN0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0M0UEVfUG9zICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjJfT0M0UEVfTXNrICAgICAgICgweDFVIDw8IFRJTV9DQ01SMl9PQzRQRV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0M0UEUgICAgICAgICAgIFRJTV9DQ01SMl9PQzRQRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgQ29tcGFyZSA0IFByZWxvYWQgZW5hYmxlICovDQoNCiNkZWZpbmUgVElNX0NDTVIyX09DNE1fUG9zICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIyX09DNE1fTXNrICAgICAgICAoMHg3VSA8PCBUSU1fQ0NNUjJfT0M0TV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDcwMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX09DNE0gICAgICAgICAgICBUSU1fQ0NNUjJfT0M0TV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8T0M0TVsyOjBdIGJpdHMgKE91dHB1dCBDb21wYXJlIDQgTW9kZSkgKi8NCiNkZWZpbmUgVElNX0NDTVIyX09DNE1fMCAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjJfT0M0TV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX09DNE1fMSAgICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjJfT0M0TV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX09DNE1fMiAgICAgICAgICAoMHg0VSA8PCBUSU1fQ0NNUjJfT0M0TV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjJfT0M0Q0VfUG9zICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjJfT0M0Q0VfTXNrICAgICAgICgweDFVIDw8IFRJTV9DQ01SMl9PQzRDRV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0M0Q0UgICAgICAgICAgIFRJTV9DQ01SMl9PQzRDRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgQ29tcGFyZSA0IENsZWFyIEVuYWJsZSAqLw0KDQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoNCiNkZWZpbmUgVElNX0NDTVIyX0lDM1BTQ19Qb3MgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIyX0lDM1BTQ19Nc2sgICAgICAoMHgzVSA8PCBUSU1fQ0NNUjJfSUMzUFNDX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMEMgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0lDM1BTQyAgICAgICAgICBUSU1fQ0NNUjJfSUMzUFNDX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8SUMzUFNDWzE6MF0gYml0cyAoSW5wdXQgQ2FwdHVyZSAzIFByZXNjYWxlcikgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0lDM1BTQ18wICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjJfSUMzUFNDX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0lDM1BTQ18xICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjJfSUMzUFNDX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjJfSUMzRl9Qb3MgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjJfSUMzRl9Nc2sgICAgICAgICgweEZVIDw8IFRJTV9DQ01SMl9JQzNGX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDBGMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUMzRiAgICAgICAgICAgIFRJTV9DQ01SMl9JQzNGX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxJQzNGWzM6MF0gYml0cyAoSW5wdXQgQ2FwdHVyZSAzIEZpbHRlcikgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0lDM0ZfMCAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjJfSUMzRl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0lDM0ZfMSAgICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjJfSUMzRl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0lDM0ZfMiAgICAgICAgICAoMHg0VSA8PCBUSU1fQ0NNUjJfSUMzRl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0lDM0ZfMyAgICAgICAgICAoMHg4VSA8PCBUSU1fQ0NNUjJfSUMzRl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjJfSUM0UFNDX1BvcyAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjJfSUM0UFNDX01zayAgICAgICgweDNVIDw8IFRJTV9DQ01SMl9JQzRQU0NfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMEMwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUM0UFNDICAgICAgICAgIFRJTV9DQ01SMl9JQzRQU0NfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxJQzRQU0NbMTowXSBiaXRzIChJbnB1dCBDYXB0dXJlIDQgUHJlc2NhbGVyKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUM0UFNDXzAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMl9JQzRQU0NfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUM0UFNDXzEgICAgICAgICgweDJVIDw8IFRJTV9DQ01SMl9JQzRQU0NfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMl9JQzRGX1BvcyAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMl9JQzRGX01zayAgICAgICAgKDB4RlUgPDwgVElNX0NDTVIyX0lDNEZfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDBGMDAwICovDQojZGVmaW5lIFRJTV9DQ01SMl9JQzRGICAgICAgICAgICAgVElNX0NDTVIyX0lDNEZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPElDNEZbMzowXSBiaXRzIChJbnB1dCBDYXB0dXJlIDQgRmlsdGVyKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUM0Rl8wICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMl9JQzRGX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUM0Rl8xICAgICAgICAgICgweDJVIDw8IFRJTV9DQ01SMl9JQzRGX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUM0Rl8yICAgICAgICAgICgweDRVIDw8IFRJTV9DQ01SMl9JQzRGX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUM0Rl8zICAgICAgICAgICgweDhVIDw8IFRJTV9DQ01SMl9JQzRGX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9DQ0VSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMUVfUG9zICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDMUVfTXNrICAgICAgICAgKDB4MVUgPDwgVElNX0NDRVJfQ0MxRV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMUUgICAgICAgICAgICAgVElNX0NDRVJfQ0MxRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAxIG91dHB1dCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0NDRVJfQ0MxUF9Qb3MgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDRVJfQ0MxUF9Nc2sgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NFUl9DQzFQX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgVElNX0NDRVJfQ0MxUCAgICAgICAgICAgICBUSU1fQ0NFUl9DQzFQX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDEgb3V0cHV0IFBvbGFyaXR5ICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMU5FX1BvcyAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDMU5FX01zayAgICAgICAgKDB4MVUgPDwgVElNX0NDRVJfQ0MxTkVfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMU5FICAgICAgICAgICAgVElNX0NDRVJfQ0MxTkVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAxIENvbXBsZW1lbnRhcnkgb3V0cHV0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzFOUF9Qb3MgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NFUl9DQzFOUF9Nc2sgICAgICAgICgweDFVIDw8IFRJTV9DQ0VSX0NDMU5QX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzFOUCAgICAgICAgICAgIFRJTV9DQ0VSX0NDMU5QX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMSBDb21wbGVtZW50YXJ5IG91dHB1dCBQb2xhcml0eSAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzJFX1BvcyAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NFUl9DQzJFX01zayAgICAgICAgICgweDFVIDw8IFRJTV9DQ0VSX0NDMkVfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzJFICAgICAgICAgICAgIFRJTV9DQ0VSX0NDMkVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMiBvdXRwdXQgZW5hYmxlICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMlBfUG9zICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDMlBfTXNrICAgICAgICAgKDB4MVUgPDwgVElNX0NDRVJfQ0MyUF9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMlAgICAgICAgICAgICAgVElNX0NDRVJfQ0MyUF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAyIG91dHB1dCBQb2xhcml0eSAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzJORV9Qb3MgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NFUl9DQzJORV9Nc2sgICAgICAgICgweDFVIDw8IFRJTV9DQ0VSX0NDMk5FX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzJORSAgICAgICAgICAgIFRJTV9DQ0VSX0NDMk5FX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMiBDb21wbGVtZW50YXJ5IG91dHB1dCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0NDRVJfQ0MyTlBfUG9zICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDRVJfQ0MyTlBfTXNrICAgICAgICAoMHgxVSA8PCBUSU1fQ0NFUl9DQzJOUF9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVElNX0NDRVJfQ0MyTlAgICAgICAgICAgICBUSU1fQ0NFUl9DQzJOUF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDIgQ29tcGxlbWVudGFyeSBvdXRwdXQgUG9sYXJpdHkgKi8NCiNkZWZpbmUgVElNX0NDRVJfQ0MzRV9Qb3MgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDRVJfQ0MzRV9Nc2sgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NFUl9DQzNFX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVElNX0NDRVJfQ0MzRSAgICAgICAgICAgICBUSU1fQ0NFUl9DQzNFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDMgb3V0cHV0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzNQX1BvcyAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NFUl9DQzNQX01zayAgICAgICAgICgweDFVIDw8IFRJTV9DQ0VSX0NDM1BfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzNQICAgICAgICAgICAgIFRJTV9DQ0VSX0NDM1BfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMyBvdXRwdXQgUG9sYXJpdHkgKi8NCiNkZWZpbmUgVElNX0NDRVJfQ0MzTkVfUG9zICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDRVJfQ0MzTkVfTXNrICAgICAgICAoMHgxVSA8PCBUSU1fQ0NFUl9DQzNORV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVElNX0NDRVJfQ0MzTkUgICAgICAgICAgICBUSU1fQ0NFUl9DQzNORV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDMgQ29tcGxlbWVudGFyeSBvdXRwdXQgZW5hYmxlICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDM05QX1BvcyAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDM05QX01zayAgICAgICAgKDB4MVUgPDwgVElNX0NDRVJfQ0MzTlBfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDM05QICAgICAgICAgICAgVElNX0NDRVJfQ0MzTlBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAzIENvbXBsZW1lbnRhcnkgb3V0cHV0IFBvbGFyaXR5ICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDNEVfUG9zICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDNEVfTXNrICAgICAgICAgKDB4MVUgPDwgVElNX0NDRVJfQ0M0RV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDNEUgICAgICAgICAgICAgVElNX0NDRVJfQ0M0RV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSA0IG91dHB1dCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0NDRVJfQ0M0UF9Qb3MgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDRVJfQ0M0UF9Nc2sgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NFUl9DQzRQX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVElNX0NDRVJfQ0M0UCAgICAgICAgICAgICBUSU1fQ0NFUl9DQzRQX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDQgb3V0cHV0IFBvbGFyaXR5ICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDNE5QX1BvcyAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDNE5QX01zayAgICAgICAgKDB4MVUgPDwgVElNX0NDRVJfQ0M0TlBfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDNE5QICAgICAgICAgICAgVElNX0NDRVJfQ0M0TlBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSA0IENvbXBsZW1lbnRhcnkgb3V0cHV0IFBvbGFyaXR5ICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0NOVCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVElNX0NOVF9DTlRfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NOVF9DTlRfTXNrICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgVElNX0NOVF9DTlRfUG9zKSAgICAgICAgICAgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgVElNX0NOVF9DTlQgICAgICAgICAgICAgICBUSU1fQ05UX0NOVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q291bnRlciBWYWx1ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9QU0MgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9QU0NfUFNDX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9QU0NfUFNDX01zayAgICAgICAgICAgKDB4RkZGRlUgPDwgVElNX1BTQ19QU0NfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFRJTV9QU0NfUFNDICAgICAgICAgICAgICAgVElNX1BTQ19QU0NfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPFByZXNjYWxlciBWYWx1ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9BUlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9BUlJfQVJSX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9BUlJfQVJSX01zayAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFRJTV9BUlJfQVJSX1BvcykgICAgICAgICAgICAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIFRJTV9BUlJfQVJSICAgICAgICAgICAgICAgVElNX0FSUl9BUlJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPGFjdHVhbCBhdXRvLXJlbG9hZCBWYWx1ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9SQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9SQ1JfUkVQX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9SQ1JfUkVQX01zayAgICAgICAgICAgKDB4RkZVIDw8IFRJTV9SQ1JfUkVQX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMEZGICovDQojZGVmaW5lIFRJTV9SQ1JfUkVQICAgICAgICAgICAgICAgVElNX1JDUl9SRVBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPFJlcGV0aXRpb24gQ291bnRlciBWYWx1ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9DQ1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9DQ1IxX0NDUjFfUG9zICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ1IxX0NDUjFfTXNrICAgICAgICAgKDB4RkZGRlUgPDwgVElNX0NDUjFfQ0NSMV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFRJTV9DQ1IxX0NDUjEgICAgICAgICAgICAgVElNX0NDUjFfQ0NSMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAxIFZhbHVlICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0NDUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVElNX0NDUjJfQ0NSMl9Qb3MgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDUjJfQ0NSMl9Nc2sgICAgICAgICAoMHhGRkZGVSA8PCBUSU1fQ0NSMl9DQ1IyX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgVElNX0NDUjJfQ0NSMiAgICAgICAgICAgICBUSU1fQ0NSMl9DQ1IyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDIgVmFsdWUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fQ0NSMyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fQ0NSM19DQ1IzX1BvcyAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NSM19DQ1IzX01zayAgICAgICAgICgweEZGRkZVIDw8IFRJTV9DQ1IzX0NDUjNfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBUSU1fQ0NSM19DQ1IzICAgICAgICAgICAgIFRJTV9DQ1IzX0NDUjNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMyBWYWx1ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9DQ1I0IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9DQ1I0X0NDUjRfUG9zICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ1I0X0NDUjRfTXNrICAgICAgICAgKDB4RkZGRlUgPDwgVElNX0NDUjRfQ0NSNF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFRJTV9DQ1I0X0NDUjQgICAgICAgICAgICAgVElNX0NDUjRfQ0NSNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSA0IFZhbHVlICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0JEVFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVElNX0JEVFJfRFRHX1BvcyAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0JEVFJfRFRHX01zayAgICAgICAgICAoMHhGRlUgPDwgVElNX0JEVFJfRFRHX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwRkYgKi8NCiNkZWZpbmUgVElNX0JEVFJfRFRHICAgICAgICAgICAgICBUSU1fQkRUUl9EVEdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8RFRHWzA6N10gYml0cyAoRGVhZC1UaW1lIEdlbmVyYXRvciBzZXQtdXApICovDQojZGVmaW5lIFRJTV9CRFRSX0RUR18wICAgICAgICAgICAgKDB4MDFVIDw8IFRJTV9CRFRSX0RUR19Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFRJTV9CRFRSX0RUR18xICAgICAgICAgICAgKDB4MDJVIDw8IFRJTV9CRFRSX0RUR19Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFRJTV9CRFRSX0RUR18yICAgICAgICAgICAgKDB4MDRVIDw8IFRJTV9CRFRSX0RUR19Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFRJTV9CRFRSX0RUR18zICAgICAgICAgICAgKDB4MDhVIDw8IFRJTV9CRFRSX0RUR19Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFRJTV9CRFRSX0RUR180ICAgICAgICAgICAgKDB4MTBVIDw8IFRJTV9CRFRSX0RUR19Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFRJTV9CRFRSX0RUR181ICAgICAgICAgICAgKDB4MjBVIDw8IFRJTV9CRFRSX0RUR19Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFRJTV9CRFRSX0RUR182ICAgICAgICAgICAgKDB4NDBVIDw8IFRJTV9CRFRSX0RUR19Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFRJTV9CRFRSX0RUR183ICAgICAgICAgICAgKDB4ODBVIDw8IFRJTV9CRFRSX0RUR19Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQoNCiNkZWZpbmUgVElNX0JEVFJfTE9DS19Qb3MgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0JEVFJfTE9DS19Nc2sgICAgICAgICAoMHgzVSA8PCBUSU1fQkRUUl9MT0NLX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAzMDAgKi8NCiNkZWZpbmUgVElNX0JEVFJfTE9DSyAgICAgICAgICAgICBUSU1fQkRUUl9MT0NLX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8TE9DS1sxOjBdIGJpdHMgKExvY2sgQ29uZmlndXJhdGlvbikgKi8NCiNkZWZpbmUgVElNX0JEVFJfTE9DS18wICAgICAgICAgICAoMHgxVSA8PCBUSU1fQkRUUl9MT0NLX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVElNX0JEVFJfTE9DS18xICAgICAgICAgICAoMHgyVSA8PCBUSU1fQkRUUl9MT0NLX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCg0KI2RlZmluZSBUSU1fQkRUUl9PU1NJX1BvcyAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQkRUUl9PU1NJX01zayAgICAgICAgICgweDFVIDw8IFRJTV9CRFRSX09TU0lfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBUSU1fQkRUUl9PU1NJICAgICAgICAgICAgIFRJTV9CRFRSX09TU0lfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxPZmYtU3RhdGUgU2VsZWN0aW9uIGZvciBJZGxlIG1vZGUgKi8NCiNkZWZpbmUgVElNX0JEVFJfT1NTUl9Qb3MgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0JEVFJfT1NTUl9Nc2sgICAgICAgICAoMHgxVSA8PCBUSU1fQkRUUl9PU1NSX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVElNX0JEVFJfT1NTUiAgICAgICAgICAgICBUSU1fQkRUUl9PU1NSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8T2ZmLVN0YXRlIFNlbGVjdGlvbiBmb3IgUnVuIG1vZGUgKi8NCiNkZWZpbmUgVElNX0JEVFJfQktFX1BvcyAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0JEVFJfQktFX01zayAgICAgICAgICAoMHgxVSA8PCBUSU1fQkRUUl9CS0VfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVElNX0JEVFJfQktFICAgICAgICAgICAgICBUSU1fQkRUUl9CS0VfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8QnJlYWsgZW5hYmxlICovDQojZGVmaW5lIFRJTV9CRFRSX0JLUF9Qb3MgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9CRFRSX0JLUF9Nc2sgICAgICAgICAgKDB4MVUgPDwgVElNX0JEVFJfQktQX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFRJTV9CRFRSX0JLUCAgICAgICAgICAgICAgVElNX0JEVFJfQktQX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPEJyZWFrIFBvbGFyaXR5ICovDQojZGVmaW5lIFRJTV9CRFRSX0FPRV9Qb3MgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9CRFRSX0FPRV9Nc2sgICAgICAgICAgKDB4MVUgPDwgVElNX0JEVFJfQU9FX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFRJTV9CRFRSX0FPRSAgICAgICAgICAgICAgVElNX0JEVFJfQU9FX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPEF1dG9tYXRpYyBPdXRwdXQgZW5hYmxlICovDQojZGVmaW5lIFRJTV9CRFRSX01PRV9Qb3MgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9CRFRSX01PRV9Nc2sgICAgICAgICAgKDB4MVUgPDwgVElNX0JEVFJfTU9FX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFRJTV9CRFRSX01PRSAgICAgICAgICAgICAgVElNX0JEVFJfTU9FX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPE1haW4gT3V0cHV0IGVuYWJsZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9EQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9EQ1JfREJBX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9EQ1JfREJBX01zayAgICAgICAgICAgKDB4MUZVIDw8IFRJTV9EQ1JfREJBX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDFGICovDQojZGVmaW5lIFRJTV9EQ1JfREJBICAgICAgICAgICAgICAgVElNX0RDUl9EQkFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPERCQVs0OjBdIGJpdHMgKERNQSBCYXNlIEFkZHJlc3MpICovDQojZGVmaW5lIFRJTV9EQ1JfREJBXzAgICAgICAgICAgICAgKDB4MDFVIDw8IFRJTV9EQ1JfREJBX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFRJTV9EQ1JfREJBXzEgICAgICAgICAgICAgKDB4MDJVIDw8IFRJTV9EQ1JfREJBX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFRJTV9EQ1JfREJBXzIgICAgICAgICAgICAgKDB4MDRVIDw8IFRJTV9EQ1JfREJBX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFRJTV9EQ1JfREJBXzMgICAgICAgICAgICAgKDB4MDhVIDw8IFRJTV9EQ1JfREJBX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFRJTV9EQ1JfREJBXzQgICAgICAgICAgICAgKDB4MTBVIDw8IFRJTV9EQ1JfREJBX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQoNCiNkZWZpbmUgVElNX0RDUl9EQkxfUG9zICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0RDUl9EQkxfTXNrICAgICAgICAgICAoMHgxRlUgPDwgVElNX0RDUl9EQkxfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDFGMDAgKi8NCiNkZWZpbmUgVElNX0RDUl9EQkwgICAgICAgICAgICAgICBUSU1fRENSX0RCTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8REJMWzQ6MF0gYml0cyAoRE1BIEJ1cnN0IExlbmd0aCkgKi8NCiNkZWZpbmUgVElNX0RDUl9EQkxfMCAgICAgICAgICAgICAoMHgwMVUgPDwgVElNX0RDUl9EQkxfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVElNX0RDUl9EQkxfMSAgICAgICAgICAgICAoMHgwMlUgPDwgVElNX0RDUl9EQkxfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVElNX0RDUl9EQkxfMiAgICAgICAgICAgICAoMHgwNFUgPDwgVElNX0RDUl9EQkxfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVElNX0RDUl9EQkxfMyAgICAgICAgICAgICAoMHgwOFUgPDwgVElNX0RDUl9EQkxfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVElNX0RDUl9EQkxfNCAgICAgICAgICAgICAoMHgxMFUgPDwgVElNX0RDUl9EQkxfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fRE1BUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fRE1BUl9ETUFCX1BvcyAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRE1BUl9ETUFCX01zayAgICAgICAgICgweEZGRkZVIDw8IFRJTV9ETUFSX0RNQUJfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBUSU1fRE1BUl9ETUFCICAgICAgICAgICAgIFRJTV9ETUFSX0RNQUJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxETUEgcmVnaXN0ZXIgZm9yIGJ1cnN0IGFjY2Vzc2VzICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNMTRfT1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU0xNF9PUl9USTFfUk1QX1BvcyAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU0xNF9PUl9USTFfUk1QX01zayAgICAgICgweDNVIDw8IFRJTTE0X09SX1RJMV9STVBfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMyAqLw0KI2RlZmluZSBUSU0xNF9PUl9USTFfUk1QICAgICAgICAgIFRJTTE0X09SX1RJMV9STVBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxUSTFfUk1QWzE6MF0gYml0cyAoVElNMTQgSW5wdXQgNCByZW1hcCkgKi8NCiNkZWZpbmUgVElNMTRfT1JfVEkxX1JNUF8wICAgICAgICAoMHgxVSA8PCBUSU0xNF9PUl9USTFfUk1QX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgVElNMTRfT1JfVEkxX1JNUF8xICAgICAgICAoMHgyVSA8PCBUSU0xNF9PUl9USTFfUk1QX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgIFVuaXZlcnNhbCBTeW5jaHJvbm91cyBBc3luY2hyb25vdXMgUmVjZWl2ZXIgVHJhbnNtaXR0ZXIgKFVTQVJUKSAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQoNCi8qDQoqIEBicmllZiBTcGVjaWZpYyBkZXZpY2UgZmVhdHVyZSBkZWZpbml0aW9ucyAobm90IHByZXNlbnQgb24gYWxsIGRldmljZXMgaW4gdGhlIFNUTTMyRjAgc2VyaWUpDQoqLw0KDQovKiBTdXBwb3J0IG9mIExJTiBmZWF0dXJlICovDQojZGVmaW5lIFVTQVJUX0xJTl9TVVBQT1JUDQoNCi8qIFN1cHBvcnQgb2YgU21hcnRjYXJkIGZlYXR1cmUgKi8NCiNkZWZpbmUgVVNBUlRfU01BUlRDQVJEX1NVUFBPUlQNCg0KLyogU3VwcG9ydCBvZiBJcmRhIGZlYXR1cmUgKi8NCiNkZWZpbmUgVVNBUlRfSVJEQV9TVVBQT1JUDQoNCi8qIFN1cHBvcnQgb2YgV2FrZSBVcCBmcm9tIFN0b3AgTW9kZSBmZWF0dXJlICovDQojZGVmaW5lIFVTQVJUX1dVU01fU1VQUE9SVA0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNBUlRfQ1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0FSVF9DUjFfVUVfUG9zICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjFfVUVfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjFfVUVfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBVU0FSVF9DUjFfVUUgICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfVUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgVVNBUlQgRW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSMV9VRVNNX1BvcyAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9VRVNNX01zayAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMV9VRVNNX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFVTQVJUX0NSMV9VRVNNICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9VRVNNX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBVU0FSVCBFbmFibGUgaW4gU1RPUCBNb2RlICovDQojZGVmaW5lIFVTQVJUX0NSMV9SRV9Qb3MgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9SRV9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMV9SRV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFVTQVJUX0NSMV9SRSAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9SRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlaXZlciBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1RFX1BvcyAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX1RFX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IxX1RFX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1RFICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX1RFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWl0dGVyIEVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjFfSURMRUlFX1BvcyAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjFfSURMRUlFX01zayAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjFfSURMRUlFX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfSURMRUlFICAgICAgICAgICAgICBVU0FSVF9DUjFfSURMRUlFX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgSURMRSBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSMV9SWE5FSUVfUG9zICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9SWE5FSUVfTXNrICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMV9SWE5FSUVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFVTQVJUX0NSMV9SWE5FSUUgICAgICAgICAgICAgIFVTQVJUX0NSMV9SWE5FSUVfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBSWE5FIEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1RDSUVfUG9zICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX1RDSUVfTXNrICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IxX1RDSUVfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1RDSUUgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX1RDSUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBDb21wbGV0ZSBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSMV9UWEVJRV9Qb3MgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9UWEVJRV9Nc2sgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMV9UWEVJRV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFVTQVJUX0NSMV9UWEVJRSAgICAgICAgICAgICAgIFVTQVJUX0NSMV9UWEVJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBUWEUgSW50ZXJydXB0IEVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjFfUEVJRV9Qb3MgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjFfUEVJRV9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjFfUEVJRV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfUEVJRSAgICAgICAgICAgICAgICBVU0FSVF9DUjFfUEVJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEUgSW50ZXJydXB0IEVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjFfUFNfUG9zICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjFfUFNfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjFfUFNfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfUFMgICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfUFNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGFyaXR5IFNlbGVjdGlvbiAqLw0KI2RlZmluZSBVU0FSVF9DUjFfUENFX1BvcyAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjFfUENFX01zayAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjFfUENFX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfUENFICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfUENFX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGFyaXR5IENvbnRyb2wgRW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSMV9XQUtFX1BvcyAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9XQUtFX01zayAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMV9XQUtFX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFVTQVJUX0NSMV9XQUtFICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9XQUtFX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlaXZlciBXYWtldXAgbWV0aG9kICovDQojZGVmaW5lIFVTQVJUX0NSMV9NX1BvcyAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9NX01zayAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMV9NX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFVTQVJUX0NSMV9NICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9NX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBXb3JkIExlbmd0aCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfTU1FX1BvcyAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjFfTU1FX01zayAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjFfTU1FX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfTU1FICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfTU1FX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTXV0ZSBNb2RlIEVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjFfQ01JRV9Qb3MgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjFfQ01JRV9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjFfQ01JRV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfQ01JRSAgICAgICAgICAgICAgICBVU0FSVF9DUjFfQ01JRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhcmFjdGVyIG1hdGNoIGludGVycnVwdCBlbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX09WRVI4X1BvcyAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX09WRVI4X01zayAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IxX09WRVI4X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX09WRVI4ICAgICAgICAgICAgICAgVVNBUlRfQ1IxX09WRVI4X01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IE92ZXJzYW1wbGluZyBieSA4LWJpdCBvciAxNi1iaXQgbW9kZSAqLw0KI2RlZmluZSBVU0FSVF9DUjFfREVEVF9Qb3MgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjFfREVEVF9Nc2sgICAgICAgICAgICAoMHgxRlUgPDwgVVNBUlRfQ1IxX0RFRFRfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDFGMDAwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfREVEVCAgICAgICAgICAgICAgICBVU0FSVF9DUjFfREVEVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgREVEVFs0OjBdIGJpdHMgKERyaXZlciBFbmFibGUgRGVhc3NlcnRpb24gVGltZSkgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX0RFRFRfMCAgICAgICAgICAgICAgKDB4MDFVIDw8IFVTQVJUX0NSMV9ERURUX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX0RFRFRfMSAgICAgICAgICAgICAgKDB4MDJVIDw8IFVTQVJUX0NSMV9ERURUX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX0RFRFRfMiAgICAgICAgICAgICAgKDB4MDRVIDw8IFVTQVJUX0NSMV9ERURUX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX0RFRFRfMyAgICAgICAgICAgICAgKDB4MDhVIDw8IFVTQVJUX0NSMV9ERURUX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX0RFRFRfNCAgICAgICAgICAgICAgKDB4MTBVIDw8IFVTQVJUX0NSMV9ERURUX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX0RFQVRfUG9zICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX0RFQVRfTXNrICAgICAgICAgICAgKDB4MUZVIDw8IFVTQVJUX0NSMV9ERUFUX1BvcykgICAgICAgICAgICAvKiE8IDB4MDNFMDAwMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX0RFQVQgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX0RFQVRfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IERFQVRbNDowXSBiaXRzIChEcml2ZXIgRW5hYmxlIEFzc2VydGlvbiBUaW1lKSAqLw0KI2RlZmluZSBVU0FSVF9DUjFfREVBVF8wICAgICAgICAgICAgICAoMHgwMVUgPDwgVVNBUlRfQ1IxX0RFQVRfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfREVBVF8xICAgICAgICAgICAgICAoMHgwMlUgPDwgVVNBUlRfQ1IxX0RFQVRfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfREVBVF8yICAgICAgICAgICAgICAoMHgwNFUgPDwgVVNBUlRfQ1IxX0RFQVRfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfREVBVF8zICAgICAgICAgICAgICAoMHgwOFUgPDwgVVNBUlRfQ1IxX0RFQVRfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfREVBVF80ICAgICAgICAgICAgICAoMHgxMFUgPDwgVVNBUlRfQ1IxX0RFQVRfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfUlRPSUVfUG9zICAgICAgICAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjFfUlRPSUVfTXNrICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjFfUlRPSUVfUG9zKSAgICAgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfUlRPSUUgICAgICAgICAgICAgICBVU0FSVF9DUjFfUlRPSUVfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZWl2ZSBUaW1lIE91dCBpbnRlcnJ1cHQgZW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSMV9FT0JJRV9Qb3MgICAgICAgICAgICgyN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9FT0JJRV9Nc2sgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMV9FT0JJRV9Qb3MpICAgICAgICAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIFVTQVJUX0NSMV9FT0JJRSAgICAgICAgICAgICAgIFVTQVJUX0NSMV9FT0JJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBFbmQgb2YgQmxvY2sgaW50ZXJydXB0IGVuYWJsZSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNBUlRfQ1IyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0FSVF9DUjJfQURETTdfUG9zICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjJfQURETTdfTXNrICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjJfQURETTdfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBVU0FSVF9DUjJfQURETTcgICAgICAgICAgICAgICBVU0FSVF9DUjJfQURETTdfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgNy1iaXQgb3IgNC1iaXQgQWRkcmVzcyBEZXRlY3Rpb24gKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0xCRExfUG9zICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IyX0xCRExfTXNrICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IyX0xCRExfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0xCREwgICAgICAgICAgICAgICAgVVNBUlRfQ1IyX0xCRExfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IExJTiBCcmVhayBEZXRlY3Rpb24gTGVuZ3RoICovDQojZGVmaW5lIFVTQVJUX0NSMl9MQkRJRV9Qb3MgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMl9MQkRJRV9Nc2sgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMl9MQkRJRV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFVTQVJUX0NSMl9MQkRJRSAgICAgICAgICAgICAgIFVTQVJUX0NSMl9MQkRJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBMSU4gQnJlYWsgRGV0ZWN0aW9uIEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0xCQ0xfUG9zICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IyX0xCQ0xfTXNrICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IyX0xCQ0xfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0xCQ0wgICAgICAgICAgICAgICAgVVNBUlRfQ1IyX0xCQ0xfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IExhc3QgQml0IENsb2NrIHB1bHNlICovDQojZGVmaW5lIFVTQVJUX0NSMl9DUEhBX1BvcyAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMl9DUEhBX01zayAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMl9DUEhBX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFVTQVJUX0NSMl9DUEhBICAgICAgICAgICAgICAgIFVTQVJUX0NSMl9DUEhBX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDbG9jayBQaGFzZSAqLw0KI2RlZmluZSBVU0FSVF9DUjJfQ1BPTF9Qb3MgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjJfQ1BPTF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjJfQ1BPTF9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjJfQ1BPTCAgICAgICAgICAgICAgICBVU0FSVF9DUjJfQ1BPTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2xvY2sgUG9sYXJpdHkgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0NMS0VOX1BvcyAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IyX0NMS0VOX01zayAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IyX0NMS0VOX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0NMS0VOICAgICAgICAgICAgICAgVVNBUlRfQ1IyX0NMS0VOX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IENsb2NrIEVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjJfU1RPUF9Qb3MgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjJfU1RPUF9Nc2sgICAgICAgICAgICAoMHgzVSA8PCBVU0FSVF9DUjJfU1RPUF9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMzAwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjJfU1RPUCAgICAgICAgICAgICAgICBVU0FSVF9DUjJfU1RPUF9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1RPUFsxOjBdIGJpdHMgKFNUT1AgYml0cykgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX1NUT1BfMCAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IyX1NUT1BfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX1NUT1BfMSAgICAgICAgICAgICAgKDB4MlUgPDwgVVNBUlRfQ1IyX1NUT1BfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0xJTkVOX1BvcyAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IyX0xJTkVOX01zayAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IyX0xJTkVOX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0xJTkVOICAgICAgICAgICAgICAgVVNBUlRfQ1IyX0xJTkVOX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IExJTiBtb2RlIGVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjJfU1dBUF9Qb3MgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjJfU1dBUF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjJfU1dBUF9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjJfU1dBUCAgICAgICAgICAgICAgICBVU0FSVF9DUjJfU1dBUF9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1dBUCBUWC9SWCBwaW5zICovDQojZGVmaW5lIFVTQVJUX0NSMl9SWElOVl9Qb3MgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMl9SWElOVl9Nc2sgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMl9SWElOVl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFVTQVJUX0NSMl9SWElOViAgICAgICAgICAgICAgIFVTQVJUX0NSMl9SWElOVl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBSWCBwaW4gYWN0aXZlIGxldmVsIGludmVyc2lvbiAqLw0KI2RlZmluZSBVU0FSVF9DUjJfVFhJTlZfUG9zICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjJfVFhJTlZfTXNrICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjJfVFhJTlZfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjJfVFhJTlYgICAgICAgICAgICAgICBVU0FSVF9DUjJfVFhJTlZfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgVFggcGluIGFjdGl2ZSBsZXZlbCBpbnZlcnNpb24gKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0RBVEFJTlZfUG9zICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IyX0RBVEFJTlZfTXNrICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IyX0RBVEFJTlZfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0RBVEFJTlYgICAgICAgICAgICAgVVNBUlRfQ1IyX0RBVEFJTlZfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IEJpbmFyeSBkYXRhIGludmVyc2lvbiAqLw0KI2RlZmluZSBVU0FSVF9DUjJfTVNCRklSU1RfUG9zICAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjJfTVNCRklSU1RfTXNrICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjJfTVNCRklSU1RfUG9zKSAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjJfTVNCRklSU1QgICAgICAgICAgICBVU0FSVF9DUjJfTVNCRklSU1RfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgTW9zdCBTaWduaWZpY2FudCBCaXQgRmlyc3QgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0FCUkVOX1BvcyAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IyX0FCUkVOX01zayAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IyX0FCUkVOX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0FCUkVOICAgICAgICAgICAgICAgVVNBUlRfQ1IyX0FCUkVOX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IEF1dG8gQmF1ZC1SYXRlIEVuYWJsZSovDQojZGVmaW5lIFVTQVJUX0NSMl9BQlJNT0RFX1BvcyAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMl9BQlJNT0RFX01zayAgICAgICAgICgweDNVIDw8IFVTQVJUX0NSMl9BQlJNT0RFX1BvcykgICAgICAgICAgLyohPCAweDAwNjAwMDAwICovDQojZGVmaW5lIFVTQVJUX0NSMl9BQlJNT0RFICAgICAgICAgICAgIFVTQVJUX0NSMl9BQlJNT0RFX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBBQlJNT0RbMTowXSBiaXRzIChBdXRvIEJhdWQtUmF0ZSBNb2RlKSAqLw0KI2RlZmluZSBVU0FSVF9DUjJfQUJSTU9ERV8wICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjJfQUJSTU9ERV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjJfQUJSTU9ERV8xICAgICAgICAgICAoMHgyVSA8PCBVU0FSVF9DUjJfQUJSTU9ERV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjJfUlRPRU5fUG9zICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjJfUlRPRU5fTXNrICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjJfUlRPRU5fUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjJfUlRPRU4gICAgICAgICAgICAgICBVU0FSVF9DUjJfUlRPRU5fTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZWl2ZXIgVGltZS1PdXQgZW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSMl9BRERfUG9zICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMl9BRERfTXNrICAgICAgICAgICAgICgweEZGVSA8PCBVU0FSVF9DUjJfQUREX1BvcykgICAgICAgICAgICAgLyohPCAweEZGMDAwMDAwICovDQojZGVmaW5lIFVTQVJUX0NSMl9BREQgICAgICAgICAgICAgICAgIFVTQVJUX0NSMl9BRERfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBZGRyZXNzIG9mIHRoZSBVU0FSVCBub2RlICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0FSVF9DUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQVJUX0NSM19FSUVfUG9zICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSM19FSUVfTXNrICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSM19FSUVfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFVTQVJUX0NSM19FSUUgICAgICAgICAgICAgICAgIFVTQVJUX0NSM19FSUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFcnJvciBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSM19JUkVOX1BvcyAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSM19JUkVOX01zayAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSM19JUkVOX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFVTQVJUX0NSM19JUkVOICAgICAgICAgICAgICAgIFVTQVJUX0NSM19JUkVOX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBJckRBIG1vZGUgRW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSM19JUkxQX1BvcyAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSM19JUkxQX01zayAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSM19JUkxQX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFVTQVJUX0NSM19JUkxQICAgICAgICAgICAgICAgIFVTQVJUX0NSM19JUkxQX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBJckRBIExvdy1Qb3dlciAqLw0KI2RlZmluZSBVU0FSVF9DUjNfSERTRUxfUG9zICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjNfSERTRUxfTXNrICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjNfSERTRUxfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBVU0FSVF9DUjNfSERTRUwgICAgICAgICAgICAgICBVU0FSVF9DUjNfSERTRUxfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgSGFsZi1EdXBsZXggU2VsZWN0aW9uICovDQojZGVmaW5lIFVTQVJUX0NSM19OQUNLX1BvcyAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSM19OQUNLX01zayAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSM19OQUNLX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFVTQVJUX0NSM19OQUNLICAgICAgICAgICAgICAgIFVTQVJUX0NSM19OQUNLX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTbWFydENhcmQgTkFDSyBlbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX1NDRU5fUG9zICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IzX1NDRU5fTXNrICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IzX1NDRU5fUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX1NDRU4gICAgICAgICAgICAgICAgVVNBUlRfQ1IzX1NDRU5fTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNtYXJ0Q2FyZCBtb2RlIGVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjNfRE1BUl9Qb3MgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjNfRE1BUl9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjNfRE1BUl9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBVU0FSVF9DUjNfRE1BUiAgICAgICAgICAgICAgICBVU0FSVF9DUjNfRE1BUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRE1BIEVuYWJsZSBSZWNlaXZlciAqLw0KI2RlZmluZSBVU0FSVF9DUjNfRE1BVF9Qb3MgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjNfRE1BVF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjNfRE1BVF9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBVU0FSVF9DUjNfRE1BVCAgICAgICAgICAgICAgICBVU0FSVF9DUjNfRE1BVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRE1BIEVuYWJsZSBUcmFuc21pdHRlciAqLw0KI2RlZmluZSBVU0FSVF9DUjNfUlRTRV9Qb3MgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjNfUlRTRV9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjNfUlRTRV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjNfUlRTRSAgICAgICAgICAgICAgICBVU0FSVF9DUjNfUlRTRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUlRTIEVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjNfQ1RTRV9Qb3MgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjNfQ1RTRV9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjNfQ1RTRV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjNfQ1RTRSAgICAgICAgICAgICAgICBVU0FSVF9DUjNfQ1RTRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1RTIEVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjNfQ1RTSUVfUG9zICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjNfQ1RTSUVfTXNrICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjNfQ1RTSUVfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjNfQ1RTSUUgICAgICAgICAgICAgICBVU0FSVF9DUjNfQ1RTSUVfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1RTIEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX09ORUJJVF9Qb3MgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IzX09ORUJJVF9Nc2sgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IzX09ORUJJVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX09ORUJJVCAgICAgICAgICAgICAgVVNBUlRfQ1IzX09ORUJJVF9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IE9uZSBzYW1wbGUgYml0IG1ldGhvZCBlbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX09WUkRJU19Qb3MgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IzX09WUkRJU19Nc2sgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IzX09WUkRJU19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX09WUkRJUyAgICAgICAgICAgICAgVVNBUlRfQ1IzX09WUkRJU19Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IE92ZXJydW4gRGlzYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjNfRERSRV9Qb3MgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjNfRERSRV9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjNfRERSRV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjNfRERSRSAgICAgICAgICAgICAgICBVU0FSVF9DUjNfRERSRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRE1BIERpc2FibGUgb24gUmVjZXB0aW9uIEVycm9yICovDQojZGVmaW5lIFVTQVJUX0NSM19ERU1fUG9zICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSM19ERU1fTXNrICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSM19ERU1fUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFVTQVJUX0NSM19ERU0gICAgICAgICAgICAgICAgIFVTQVJUX0NSM19ERU1fTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBEcml2ZXIgRW5hYmxlIE1vZGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX0RFUF9Qb3MgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IzX0RFUF9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IzX0RFUF9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX0RFUCAgICAgICAgICAgICAgICAgVVNBUlRfQ1IzX0RFUF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IERyaXZlciBFbmFibGUgUG9sYXJpdHkgU2VsZWN0aW9uICovDQojZGVmaW5lIFVTQVJUX0NSM19TQ0FSQ05UX1BvcyAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSM19TQ0FSQ05UX01zayAgICAgICAgICgweDdVIDw8IFVTQVJUX0NSM19TQ0FSQ05UX1BvcykgICAgICAgICAgLyohPCAweDAwMEUwMDAwICovDQojZGVmaW5lIFVTQVJUX0NSM19TQ0FSQ05UICAgICAgICAgICAgIFVTQVJUX0NSM19TQ0FSQ05UX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBTQ0FSQ05UWzI6MF0gYml0cyAoU21hcnRDYXJkIEF1dG8tUmV0cnkgQ291bnQpICovDQojZGVmaW5lIFVTQVJUX0NSM19TQ0FSQ05UXzAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSM19TQ0FSQ05UX1BvcykgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFVTQVJUX0NSM19TQ0FSQ05UXzEgICAgICAgICAgICgweDJVIDw8IFVTQVJUX0NSM19TQ0FSQ05UX1BvcykgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFVTQVJUX0NSM19TQ0FSQ05UXzIgICAgICAgICAgICgweDRVIDw8IFVTQVJUX0NSM19TQ0FSQ05UX1BvcykgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFVTQVJUX0NSM19XVVNfUG9zICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSM19XVVNfTXNrICAgICAgICAgICAgICgweDNVIDw8IFVTQVJUX0NSM19XVVNfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMzAwMDAwICovDQojZGVmaW5lIFVTQVJUX0NSM19XVVMgICAgICAgICAgICAgICAgIFVTQVJUX0NSM19XVVNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBXVVNbMTowXSBiaXRzIChXYWtlIFVQIEludGVycnVwdCBGbGFnIFNlbGVjdGlvbikgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX1dVU18wICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IzX1dVU19Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX1dVU18xICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNBUlRfQ1IzX1dVU19Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX1dVRklFX1BvcyAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IzX1dVRklFX01zayAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IzX1dVRklFX1BvcykgICAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX1dVRklFICAgICAgICAgICAgICAgVVNBUlRfQ1IzX1dVRklFX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IFdha2UgVXAgSW50ZXJydXB0IEVuYWJsZSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNBUlRfQlJSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0FSVF9CUlJfRElWX0ZSQUNUSU9OX1BvcyAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9CUlJfRElWX0ZSQUNUSU9OX01zayAgICAoMHhGVSA8PCBVU0FSVF9CUlJfRElWX0ZSQUNUSU9OX1BvcykgICAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBVU0FSVF9CUlJfRElWX0ZSQUNUSU9OICAgICAgICBVU0FSVF9CUlJfRElWX0ZSQUNUSU9OX01zayAgICAgICAgICAgICAgIC8qITwgRnJhY3Rpb24gb2YgVVNBUlRESVYgKi8NCiNkZWZpbmUgVVNBUlRfQlJSX0RJVl9NQU5USVNTQV9Qb3MgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQlJSX0RJVl9NQU5USVNTQV9Nc2sgICAgKDB4RkZGVSA8PCBVU0FSVF9CUlJfRElWX01BTlRJU1NBX1BvcykgICAvKiE8IDB4MDAwMEZGRjAgKi8NCiNkZWZpbmUgVVNBUlRfQlJSX0RJVl9NQU5USVNTQSAgICAgICAgVVNBUlRfQlJSX0RJVl9NQU5USVNTQV9Nc2sgICAgICAgICAgICAgICAvKiE8IE1hbnRpc3NhIG9mIFVTQVJURElWICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0FSVF9HVFBSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQVJUX0dUUFJfUFNDX1BvcyAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0dUUFJfUFNDX01zayAgICAgICAgICAgICgweEZGVSA8PCBVU0FSVF9HVFBSX1BTQ19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMEZGICovDQojZGVmaW5lIFVTQVJUX0dUUFJfUFNDICAgICAgICAgICAgICAgIFVTQVJUX0dUUFJfUFNDX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQU0NbNzowXSBiaXRzIChQcmVzY2FsZXIgdmFsdWUpICovDQojZGVmaW5lIFVTQVJUX0dUUFJfR1RfUG9zICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0dUUFJfR1RfTXNrICAgICAgICAgICAgICgweEZGVSA8PCBVU0FSVF9HVFBSX0dUX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDBGRjAwICovDQojZGVmaW5lIFVTQVJUX0dUUFJfR1QgICAgICAgICAgICAgICAgIFVTQVJUX0dUUFJfR1RfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHVFs3OjBdIGJpdHMgKEd1YXJkIHRpbWUgdmFsdWUpICovDQoNCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0FSVF9SVE9SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNBUlRfUlRPUl9SVE9fUG9zICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfUlRPUl9SVE9fTXNrICAgICAgICAgICAgKDB4RkZGRkZGVSA8PCBVU0FSVF9SVE9SX1JUT19Qb3MpICAgICAgICAvKiE8IDB4MDBGRkZGRkYgKi8NCiNkZWZpbmUgVVNBUlRfUlRPUl9SVE8gICAgICAgICAgICAgICAgVVNBUlRfUlRPUl9SVE9fTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VpdmVyIFRpbWUgT3V0IFZhbHVlICovDQojZGVmaW5lIFVTQVJUX1JUT1JfQkxFTl9Qb3MgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX1JUT1JfQkxFTl9Nc2sgICAgICAgICAgICgweEZGVSA8PCBVU0FSVF9SVE9SX0JMRU5fUG9zKSAgICAgICAgICAgLyohPCAweEZGMDAwMDAwICovDQojZGVmaW5lIFVTQVJUX1JUT1JfQkxFTiAgICAgICAgICAgICAgIFVTQVJUX1JUT1JfQkxFTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBCbG9jayBMZW5ndGggKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0FSVF9SUVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNBUlRfUlFSX0FCUlJRX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfUlFSX0FCUlJRX01zayAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfUlFSX0FCUlJRX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgVVNBUlRfUlFSX0FCUlJRICAgICAgICAgICAgICAgVVNBUlRfUlFSX0FCUlJRX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IEF1dG8tQmF1ZCBSYXRlIFJlcXVlc3QgKi8NCiNkZWZpbmUgVVNBUlRfUlFSX1NCS1JRX1BvcyAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfUlFSX1NCS1JRX01zayAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfUlFSX1NCS1JRX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgVVNBUlRfUlFSX1NCS1JRICAgICAgICAgICAgICAgVVNBUlRfUlFSX1NCS1JRX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNlbmQgQnJlYWsgUmVxdWVzdCAqLw0KI2RlZmluZSBVU0FSVF9SUVJfTU1SUV9Qb3MgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9SUVJfTU1SUV9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9SUVJfTU1SUV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBVU0FSVF9SUVJfTU1SUSAgICAgICAgICAgICAgICBVU0FSVF9SUVJfTU1SUV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTXV0ZSBNb2RlIFJlcXVlc3QgKi8NCiNkZWZpbmUgVVNBUlRfUlFSX1JYRlJRX1BvcyAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfUlFSX1JYRlJRX01zayAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfUlFSX1JYRlJRX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgVVNBUlRfUlFSX1JYRlJRICAgICAgICAgICAgICAgVVNBUlRfUlFSX1JYRlJRX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VpdmUgRGF0YSBmbHVzaCBSZXF1ZXN0ICovDQojZGVmaW5lIFVTQVJUX1JRUl9UWEZSUV9Qb3MgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX1JRUl9UWEZSUV9Nc2sgICAgICAgICAgICgweDFVIDw8IFVTQVJUX1JRUl9UWEZSUV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFVTQVJUX1JRUl9UWEZSUSAgICAgICAgICAgICAgIFVTQVJUX1JRUl9UWEZSUV9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pdCBkYXRhIGZsdXNoIFJlcXVlc3QgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0FSVF9JU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNBUlRfSVNSX1BFX1BvcyAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfSVNSX1BFX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfSVNSX1BFX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgVVNBUlRfSVNSX1BFICAgICAgICAgICAgICAgICAgVVNBUlRfSVNSX1BFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBhcml0eSBFcnJvciAqLw0KI2RlZmluZSBVU0FSVF9JU1JfRkVfUG9zICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9JU1JfRkVfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9JU1JfRkVfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBVU0FSVF9JU1JfRkUgICAgICAgICAgICAgICAgICBVU0FSVF9JU1JfRkVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRnJhbWluZyBFcnJvciAqLw0KI2RlZmluZSBVU0FSVF9JU1JfTkVfUG9zICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9JU1JfTkVfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9JU1JfTkVfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBVU0FSVF9JU1JfTkUgICAgICAgICAgICAgICAgICBVU0FSVF9JU1JfTkVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTm9pc2UgZGV0ZWN0ZWQgRmxhZyAqLw0KI2RlZmluZSBVU0FSVF9JU1JfT1JFX1BvcyAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9JU1JfT1JFX01zayAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9JU1JfT1JFX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBVU0FSVF9JU1JfT1JFICAgICAgICAgICAgICAgICBVU0FSVF9JU1JfT1JFX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgT3ZlclJ1biBFcnJvciAqLw0KI2RlZmluZSBVU0FSVF9JU1JfSURMRV9Qb3MgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9JU1JfSURMRV9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9JU1JfSURMRV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBVU0FSVF9JU1JfSURMRSAgICAgICAgICAgICAgICBVU0FSVF9JU1JfSURMRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSURMRSBsaW5lIGRldGVjdGVkICovDQojZGVmaW5lIFVTQVJUX0lTUl9SWE5FX1BvcyAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0lTUl9SWE5FX01zayAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0lTUl9SWE5FX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFVTQVJUX0lTUl9SWE5FICAgICAgICAgICAgICAgIFVTQVJUX0lTUl9SWE5FX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSZWFkIERhdGEgUmVnaXN0ZXIgTm90IEVtcHR5ICovDQojZGVmaW5lIFVTQVJUX0lTUl9UQ19Qb3MgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0lTUl9UQ19Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0lTUl9UQ19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFVTQVJUX0lTUl9UQyAgICAgICAgICAgICAgICAgIFVTQVJUX0lTUl9UQ19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQ29tcGxldGUgKi8NCiNkZWZpbmUgVVNBUlRfSVNSX1RYRV9Qb3MgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfSVNSX1RYRV9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfSVNSX1RYRV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVVNBUlRfSVNSX1RYRSAgICAgICAgICAgICAgICAgVVNBUlRfSVNSX1RYRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWl0IERhdGEgUmVnaXN0ZXIgRW1wdHkgKi8NCiNkZWZpbmUgVVNBUlRfSVNSX0xCREZfUG9zICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfSVNSX0xCREZfTXNrICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfSVNSX0xCREZfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVVNBUlRfSVNSX0xCREYgICAgICAgICAgICAgICAgVVNBUlRfSVNSX0xCREZfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IExJTiBCcmVhayBEZXRlY3Rpb24gRmxhZyAqLw0KI2RlZmluZSBVU0FSVF9JU1JfQ1RTSUZfUG9zICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9JU1JfQ1RTSUZfTXNrICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9JU1JfQ1RTSUZfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBVU0FSVF9JU1JfQ1RTSUYgICAgICAgICAgICAgICBVU0FSVF9JU1JfQ1RTSUZfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1RTIGludGVycnVwdCBmbGFnICovDQojZGVmaW5lIFVTQVJUX0lTUl9DVFNfUG9zICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0lTUl9DVFNfTXNrICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0lTUl9DVFNfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFVTQVJUX0lTUl9DVFMgICAgICAgICAgICAgICAgIFVTQVJUX0lTUl9DVFNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDVFMgZmxhZyAqLw0KI2RlZmluZSBVU0FSVF9JU1JfUlRPRl9Qb3MgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9JU1JfUlRPRl9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9JU1JfUlRPRl9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0FSVF9JU1JfUlRPRiAgICAgICAgICAgICAgICBVU0FSVF9JU1JfUlRPRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZWl2ZXIgVGltZSBPdXQgKi8NCiNkZWZpbmUgVVNBUlRfSVNSX0VPQkZfUG9zICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfSVNSX0VPQkZfTXNrICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfSVNSX0VPQkZfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNBUlRfSVNSX0VPQkYgICAgICAgICAgICAgICAgVVNBUlRfSVNSX0VPQkZfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEVuZCBPZiBCbG9jayBGbGFnICovDQojZGVmaW5lIFVTQVJUX0lTUl9BQlJFX1BvcyAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0lTUl9BQlJFX01zayAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0lTUl9BQlJFX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFVTQVJUX0lTUl9BQlJFICAgICAgICAgICAgICAgIFVTQVJUX0lTUl9BQlJFX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBdXRvLUJhdWQgUmF0ZSBFcnJvciAqLw0KI2RlZmluZSBVU0FSVF9JU1JfQUJSRl9Qb3MgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9JU1JfQUJSRl9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9JU1JfQUJSRl9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBVU0FSVF9JU1JfQUJSRiAgICAgICAgICAgICAgICBVU0FSVF9JU1JfQUJSRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQXV0by1CYXVkIFJhdGUgRmxhZyAqLw0KI2RlZmluZSBVU0FSVF9JU1JfQlVTWV9Qb3MgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9JU1JfQlVTWV9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9JU1JfQlVTWV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBVU0FSVF9JU1JfQlVTWSAgICAgICAgICAgICAgICBVU0FSVF9JU1JfQlVTWV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQnVzeSBGbGFnICovDQojZGVmaW5lIFVTQVJUX0lTUl9DTUZfUG9zICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0lTUl9DTUZfTXNrICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0lTUl9DTUZfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFVTQVJUX0lTUl9DTUYgICAgICAgICAgICAgICAgIFVTQVJUX0lTUl9DTUZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFyYWN0ZXIgTWF0Y2ggRmxhZyAqLw0KI2RlZmluZSBVU0FSVF9JU1JfU0JLRl9Qb3MgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9JU1JfU0JLRl9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9JU1JfU0JLRl9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBVU0FSVF9JU1JfU0JLRiAgICAgICAgICAgICAgICBVU0FSVF9JU1JfU0JLRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU2VuZCBCcmVhayBGbGFnICovDQojZGVmaW5lIFVTQVJUX0lTUl9SV1VfUG9zICAgICAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0lTUl9SV1VfTXNrICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0lTUl9SV1VfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFVTQVJUX0lTUl9SV1UgICAgICAgICAgICAgICAgIFVTQVJUX0lTUl9SV1VfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlaXZlIFdha2UgVXAgZnJvbSBtdXRlIG1vZGUgRmxhZyAqLw0KI2RlZmluZSBVU0FSVF9JU1JfV1VGX1BvcyAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9JU1JfV1VGX01zayAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9JU1JfV1VGX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBVU0FSVF9JU1JfV1VGICAgICAgICAgICAgICAgICBVU0FSVF9JU1JfV1VGX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgV2FrZSBVcCBmcm9tIHN0b3AgbW9kZSBGbGFnICovDQojZGVmaW5lIFVTQVJUX0lTUl9URUFDS19Qb3MgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0lTUl9URUFDS19Nc2sgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0lTUl9URUFDS19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFVTQVJUX0lTUl9URUFDSyAgICAgICAgICAgICAgIFVTQVJUX0lTUl9URUFDS19Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pdCBFbmFibGUgQWNrbm93bGVkZ2UgRmxhZyAqLw0KI2RlZmluZSBVU0FSVF9JU1JfUkVBQ0tfUG9zICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9JU1JfUkVBQ0tfTXNrICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9JU1JfUkVBQ0tfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBVU0FSVF9JU1JfUkVBQ0sgICAgICAgICAgICAgICBVU0FSVF9JU1JfUkVBQ0tfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZWl2ZSBFbmFibGUgQWNrbm93bGVkZ2UgRmxhZyAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQVJUX0lDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0FSVF9JQ1JfUEVDRl9Qb3MgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9JQ1JfUEVDRl9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9JQ1JfUEVDRl9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBVU0FSVF9JQ1JfUEVDRiAgICAgICAgICAgICAgICBVU0FSVF9JQ1JfUEVDRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGFyaXR5IEVycm9yIENsZWFyIEZsYWcgKi8NCiNkZWZpbmUgVVNBUlRfSUNSX0ZFQ0ZfUG9zICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfSUNSX0ZFQ0ZfTXNrICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfSUNSX0ZFQ0ZfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgVVNBUlRfSUNSX0ZFQ0YgICAgICAgICAgICAgICAgVVNBUlRfSUNSX0ZFQ0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEZyYW1pbmcgRXJyb3IgQ2xlYXIgRmxhZyAqLw0KI2RlZmluZSBVU0FSVF9JQ1JfTkNGX1BvcyAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9JQ1JfTkNGX01zayAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9JQ1JfTkNGX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBVU0FSVF9JQ1JfTkNGICAgICAgICAgICAgICAgICBVU0FSVF9JQ1JfTkNGX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTm9pc2UgZGV0ZWN0ZWQgQ2xlYXIgRmxhZyAqLw0KI2RlZmluZSBVU0FSVF9JQ1JfT1JFQ0ZfUG9zICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9JQ1JfT1JFQ0ZfTXNrICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9JQ1JfT1JFQ0ZfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBVU0FSVF9JQ1JfT1JFQ0YgICAgICAgICAgICAgICBVU0FSVF9JQ1JfT1JFQ0ZfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgT3ZlclJ1biBFcnJvciBDbGVhciBGbGFnICovDQojZGVmaW5lIFVTQVJUX0lDUl9JRExFQ0ZfUG9zICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0lDUl9JRExFQ0ZfTXNrICAgICAgICAgICgweDFVIDw8IFVTQVJUX0lDUl9JRExFQ0ZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFVTQVJUX0lDUl9JRExFQ0YgICAgICAgICAgICAgIFVTQVJUX0lDUl9JRExFQ0ZfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBJRExFIGxpbmUgZGV0ZWN0ZWQgQ2xlYXIgRmxhZyAqLw0KI2RlZmluZSBVU0FSVF9JQ1JfVENDRl9Qb3MgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9JQ1JfVENDRl9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9JQ1JfVENDRl9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBVU0FSVF9JQ1JfVENDRiAgICAgICAgICAgICAgICBVU0FSVF9JQ1JfVENDRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIENvbXBsZXRlIENsZWFyIEZsYWcgKi8NCiNkZWZpbmUgVVNBUlRfSUNSX0xCRENGX1BvcyAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfSUNSX0xCRENGX01zayAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfSUNSX0xCRENGX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVVNBUlRfSUNSX0xCRENGICAgICAgICAgICAgICAgVVNBUlRfSUNSX0xCRENGX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IExJTiBCcmVhayBEZXRlY3Rpb24gQ2xlYXIgRmxhZyAqLw0KI2RlZmluZSBVU0FSVF9JQ1JfQ1RTQ0ZfUG9zICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9JQ1JfQ1RTQ0ZfTXNrICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9JQ1JfQ1RTQ0ZfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBVU0FSVF9JQ1JfQ1RTQ0YgICAgICAgICAgICAgICBVU0FSVF9JQ1JfQ1RTQ0ZfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1RTIEludGVycnVwdCBDbGVhciBGbGFnICovDQojZGVmaW5lIFVTQVJUX0lDUl9SVE9DRl9Qb3MgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0lDUl9SVE9DRl9Nc2sgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0lDUl9SVE9DRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFVTQVJUX0lDUl9SVE9DRiAgICAgICAgICAgICAgIFVTQVJUX0lDUl9SVE9DRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlaXZlciBUaW1lIE91dCBDbGVhciBGbGFnICovDQojZGVmaW5lIFVTQVJUX0lDUl9FT0JDRl9Qb3MgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0lDUl9FT0JDRl9Nc2sgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0lDUl9FT0JDRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFVTQVJUX0lDUl9FT0JDRiAgICAgICAgICAgICAgIFVTQVJUX0lDUl9FT0JDRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBFbmQgT2YgQmxvY2sgQ2xlYXIgRmxhZyAqLw0KI2RlZmluZSBVU0FSVF9JQ1JfQ01DRl9Qb3MgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9JQ1JfQ01DRl9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9JQ1JfQ01DRl9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBVU0FSVF9JQ1JfQ01DRiAgICAgICAgICAgICAgICBVU0FSVF9JQ1JfQ01DRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhcmFjdGVyIE1hdGNoIENsZWFyIEZsYWcgKi8NCiNkZWZpbmUgVVNBUlRfSUNSX1dVQ0ZfUG9zICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfSUNSX1dVQ0ZfTXNrICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfSUNSX1dVQ0ZfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgVVNBUlRfSUNSX1dVQ0YgICAgICAgICAgICAgICAgVVNBUlRfSUNSX1dVQ0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFdha2UgVXAgZnJvbSBzdG9wIG1vZGUgQ2xlYXIgRmxhZyAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQVJUX1JEUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0FSVF9SRFJfUkRSICAgICAgICAgICAgICAgICAoKHVpbnQxNl90KTB4MDFGRlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUkRSWzg6MF0gYml0cyAoUmVjZWl2ZSBEYXRhIHZhbHVlKSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQVJUX1REUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0FSVF9URFJfVERSICAgICAgICAgICAgICAgICAoKHVpbnQxNl90KTB4MDFGRlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgVERSWzg6MF0gYml0cyAoVHJhbnNtaXQgRGF0YSB2YWx1ZSkgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICBXaW5kb3cgV0FUQ0hET0cgKFdXREcpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgV1dER19DUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFdXREdfQ1JfVF9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFdXREdfQ1JfVF9Nc2sgICAgICAgICAgICgweDdGVSA8PCBXV0RHX0NSX1RfUG9zKSAgICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDdGICovDQojZGVmaW5lIFdXREdfQ1JfVCAgICAgICAgICAgICAgIFdXREdfQ1JfVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBUWzY6MF0gYml0cyAoNy1CaXQgY291bnRlciAoTVNCIHRvIExTQikpICovDQojZGVmaW5lIFdXREdfQ1JfVF8wICAgICAgICAgICAgICgweDAxVSA8PCBXV0RHX0NSX1RfUG9zKSAgICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFdXREdfQ1JfVF8xICAgICAgICAgICAgICgweDAyVSA8PCBXV0RHX0NSX1RfUG9zKSAgICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFdXREdfQ1JfVF8yICAgICAgICAgICAgICgweDA0VSA8PCBXV0RHX0NSX1RfUG9zKSAgICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFdXREdfQ1JfVF8zICAgICAgICAgICAgICgweDA4VSA8PCBXV0RHX0NSX1RfUG9zKSAgICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFdXREdfQ1JfVF80ICAgICAgICAgICAgICgweDEwVSA8PCBXV0RHX0NSX1RfUG9zKSAgICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFdXREdfQ1JfVF81ICAgICAgICAgICAgICgweDIwVSA8PCBXV0RHX0NSX1RfUG9zKSAgICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFdXREdfQ1JfVF82ICAgICAgICAgICAgICgweDQwVSA8PCBXV0RHX0NSX1RfUG9zKSAgICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQoNCi8qIExlZ2FjeSBkZWZpbmVzICovDQojZGVmaW5lICBXV0RHX0NSX1QwIFdXREdfQ1JfVF8wDQojZGVmaW5lICBXV0RHX0NSX1QxIFdXREdfQ1JfVF8xDQojZGVmaW5lICBXV0RHX0NSX1QyIFdXREdfQ1JfVF8yDQojZGVmaW5lICBXV0RHX0NSX1QzIFdXREdfQ1JfVF8zDQojZGVmaW5lICBXV0RHX0NSX1Q0IFdXREdfQ1JfVF80DQojZGVmaW5lICBXV0RHX0NSX1Q1IFdXREdfQ1JfVF81DQojZGVmaW5lICBXV0RHX0NSX1Q2IFdXREdfQ1JfVF82DQoNCiNkZWZpbmUgV1dER19DUl9XREdBX1BvcyAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgV1dER19DUl9XREdBX01zayAgICAgICAgKDB4MVUgPDwgV1dER19DUl9XREdBX1BvcykgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgV1dER19DUl9XREdBICAgICAgICAgICAgV1dER19DUl9XREdBX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFjdGl2YXRpb24gYml0ICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgV1dER19DRlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFdXREdfQ0ZSX1dfUG9zICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFdXREdfQ0ZSX1dfTXNrICAgICAgICAgICgweDdGVSA8PCBXV0RHX0NGUl9XX1BvcykgICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDdGICovDQojZGVmaW5lIFdXREdfQ0ZSX1cgICAgICAgICAgICAgIFdXREdfQ0ZSX1dfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBXWzY6MF0gYml0cyAoNy1iaXQgd2luZG93IHZhbHVlKSAqLw0KI2RlZmluZSBXV0RHX0NGUl9XXzAgICAgICAgICAgICAoMHgwMVUgPDwgV1dER19DRlJfV19Qb3MpICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBXV0RHX0NGUl9XXzEgICAgICAgICAgICAoMHgwMlUgPDwgV1dER19DRlJfV19Qb3MpICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBXV0RHX0NGUl9XXzIgICAgICAgICAgICAoMHgwNFUgPDwgV1dER19DRlJfV19Qb3MpICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBXV0RHX0NGUl9XXzMgICAgICAgICAgICAoMHgwOFUgPDwgV1dER19DRlJfV19Qb3MpICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBXV0RHX0NGUl9XXzQgICAgICAgICAgICAoMHgxMFUgPDwgV1dER19DRlJfV19Qb3MpICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBXV0RHX0NGUl9XXzUgICAgICAgICAgICAoMHgyMFUgPDwgV1dER19DRlJfV19Qb3MpICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBXV0RHX0NGUl9XXzYgICAgICAgICAgICAoMHg0MFUgPDwgV1dER19DRlJfV19Qb3MpICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KDQovKiBMZWdhY3kgZGVmaW5lcyAqLw0KI2RlZmluZSAgV1dER19DRlJfVzAgV1dER19DRlJfV18wDQojZGVmaW5lICBXV0RHX0NGUl9XMSBXV0RHX0NGUl9XXzENCiNkZWZpbmUgIFdXREdfQ0ZSX1cyIFdXREdfQ0ZSX1dfMg0KI2RlZmluZSAgV1dER19DRlJfVzMgV1dER19DRlJfV18zDQojZGVmaW5lICBXV0RHX0NGUl9XNCBXV0RHX0NGUl9XXzQNCiNkZWZpbmUgIFdXREdfQ0ZSX1c1IFdXREdfQ0ZSX1dfNQ0KI2RlZmluZSAgV1dER19DRlJfVzYgV1dER19DRlJfV182DQoNCiNkZWZpbmUgV1dER19DRlJfV0RHVEJfUG9zICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgV1dER19DRlJfV0RHVEJfTXNrICAgICAgKDB4M1UgPDwgV1dER19DRlJfV0RHVEJfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxODAgKi8NCiNkZWZpbmUgV1dER19DRlJfV0RHVEIgICAgICAgICAgV1dER19DRlJfV0RHVEJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFdER1RCWzE6MF0gYml0cyAoVGltZXIgQmFzZSkgKi8NCiNkZWZpbmUgV1dER19DRlJfV0RHVEJfMCAgICAgICAgKDB4MVUgPDwgV1dER19DRlJfV0RHVEJfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgV1dER19DRlJfV0RHVEJfMSAgICAgICAgKDB4MlUgPDwgV1dER19DRlJfV0RHVEJfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCg0KLyogTGVnYWN5IGRlZmluZXMgKi8NCiNkZWZpbmUgIFdXREdfQ0ZSX1dER1RCMCBXV0RHX0NGUl9XREdUQl8wDQojZGVmaW5lICBXV0RHX0NGUl9XREdUQjEgV1dER19DRlJfV0RHVEJfMQ0KDQojZGVmaW5lIFdXREdfQ0ZSX0VXSV9Qb3MgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFdXREdfQ0ZSX0VXSV9Nc2sgICAgICAgICgweDFVIDw8IFdXREdfQ0ZSX0VXSV9Qb3MpICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFdXREdfQ0ZSX0VXSSAgICAgICAgICAgIFdXREdfQ0ZSX0VXSV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFYXJseSBXYWtldXAgSW50ZXJydXB0ICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgV1dER19TUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFdXREdfU1JfRVdJRl9Qb3MgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFdXREdfU1JfRVdJRl9Nc2sgICAgICAgICgweDFVIDw8IFdXREdfU1JfRVdJRl9Qb3MpICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFdXREdfU1JfRVdJRiAgICAgICAgICAgIFdXREdfU1JfRVdJRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFYXJseSBXYWtldXAgSW50ZXJydXB0IEZsYWcgKi8NCg0KLyoqDQogICogQH0NCiAgKi8NCg0KIC8qKg0KICAqIEB9DQogICovDQoNCg0KLyoqIEBhZGR0b2dyb3VwIEV4cG9ydGVkX21hY3JvDQogICogQHsNCiAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBBREMgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfQURDX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgKChJTlNUQU5DRSkgPT0gQURDMSkNCg0KI2RlZmluZSBJU19BRENfQ09NTU9OX0lOU1RBTkNFKElOU1RBTkNFKSAoKElOU1RBTkNFKSA9PSBBREMpDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogQ1JDIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX0NSQ19BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoSU5TVEFOQ0UpID09IENSQykNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBETUEgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19ETUFfQUxMX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gRE1BMV9DaGFubmVsMSkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gRE1BMV9DaGFubmVsMikgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gRE1BMV9DaGFubmVsMykgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gRE1BMV9DaGFubmVsNCkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gRE1BMV9DaGFubmVsNSkpDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogR1BJTyBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX0dQSU9fQUxMX0lOU1RBTkNFKElOU1RBTkNFKSAgKCgoSU5TVEFOQ0UpID09IEdQSU9BKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IEdQSU9CKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IEdQSU9DKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IEdQSU9GKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBHUElPIEFsdGVybmF0ZSBGdW5jdGlvbiBJbnN0YW5jZXMgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19HUElPX0FGX0lOU1RBTkNFKElOU1RBTkNFKSAgICgoKElOU1RBTkNFKSA9PSBHUElPQSkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBHUElPQikpDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogR1BJTyBMb2NrIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX0dQSU9fTE9DS19JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IEdQSU9BKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IEdQSU9CKSkNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBJMkMgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfSTJDX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgKChJTlNUQU5DRSkgPT0gSTJDMSkNCg0KLyoqKioqKioqKioqKioqKioqKiBJMkMgSW5zdGFuY2VzIDogd2FrZXVwIGNhcGFiaWxpdHkgZnJvbSBzdG9wIG1vZGVzICoqKioqKioqKi8NCiNkZWZpbmUgSVNfSTJDX1dBS0VVUF9GUk9NU1RPUF9JTlNUQU5DRShJTlNUQU5DRSkgKChJTlNUQU5DRSkgPT0gSTJDMSkNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBJMlMgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfSTJTX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgKChJTlNUQU5DRSkgPT0gU1BJMSkNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBJV0RHIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfSVdER19BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICAoKElOU1RBTkNFKSA9PSBJV0RHKQ0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIFJUQyBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19SVENfQUxMX0lOU1RBTkNFKElOU1RBTkNFKSAgKChJTlNUQU5DRSkgPT0gUlRDKQ0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIFNNQlVTIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX1NNQlVTX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgKChJTlNUQU5DRSkgPT0gSTJDMSkNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBTUEkgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfU1BJX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgKChJTlNUQU5DRSkgPT0gU1BJMSkNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBUSU0gSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfVElNX0lOU1RBTkNFKElOU1RBTkNFKVwNCiAgKCgoSU5TVEFOQ0UpID09IFRJTTEpICAgIHx8IFwNCiAgICgoSU5TVEFOQ0UpID09IFRJTTIpICAgIHx8IFwNCiAgICgoSU5TVEFOQ0UpID09IFRJTTMpICAgIHx8IFwNCiAgICgoSU5TVEFOQ0UpID09IFRJTTE0KSAgIHx8IFwNCiAgICgoSU5TVEFOQ0UpID09IFRJTTE2KSAgIHx8IFwNCiAgICgoSU5TVEFOQ0UpID09IFRJTTE3KSkNCg0KI2RlZmluZSBJU19USU1fQ0MxX0lOU1RBTkNFKElOU1RBTkNFKVwNCiAgKCgoSU5TVEFOQ0UpID09IFRJTTEpICAgIHx8IFwNCiAgICgoSU5TVEFOQ0UpID09IFRJTTIpICAgIHx8IFwNCiAgICgoSU5TVEFOQ0UpID09IFRJTTMpICAgIHx8IFwNCiAgICgoSU5TVEFOQ0UpID09IFRJTTE0KSAgIHx8IFwNCiAgICgoSU5TVEFOQ0UpID09IFRJTTE2KSAgIHx8IFwNCiAgICgoSU5TVEFOQ0UpID09IFRJTTE3KSkNCg0KI2RlZmluZSBJU19USU1fQ0MyX0lOU1RBTkNFKElOU1RBTkNFKVwNCiAgKCgoSU5TVEFOQ0UpID09IFRJTTEpICAgIHx8IFwNCiAgICgoSU5TVEFOQ0UpID09IFRJTTIpICAgIHx8IFwNCiAgICgoSU5TVEFOQ0UpID09IFRJTTMpKQ0KDQojZGVmaW5lIElTX1RJTV9DQzNfSU5TVEFOQ0UoSU5TVEFOQ0UpXA0KICAoKChJTlNUQU5DRSkgPT0gVElNMSkgICAgfHwgXA0KICAgKChJTlNUQU5DRSkgPT0gVElNMikgICAgfHwgXA0KICAgKChJTlNUQU5DRSkgPT0gVElNMykpDQoNCiNkZWZpbmUgSVNfVElNX0NDNF9JTlNUQU5DRShJTlNUQU5DRSlcDQogICgoKElOU1RBTkNFKSA9PSBUSU0xKSAgICB8fCBcDQogICAoKElOU1RBTkNFKSA9PSBUSU0yKSAgICB8fCBcDQogICAoKElOU1RBTkNFKSA9PSBUSU0zKSkNCg0KDQojZGVmaW5lIElTX1RJTV9DTE9DS1NPVVJDRV9FVFJNT0RFMV9JTlNUQU5DRShJTlNUQU5DRSlcDQogICgoKElOU1RBTkNFKSA9PSBUSU0xKSAgICB8fCBcDQogICAoKElOU1RBTkNFKSA9PSBUSU0yKSAgICB8fCBcDQogICAoKElOU1RBTkNFKSA9PSBUSU0zKSkNCg0KI2RlZmluZSBJU19USU1fQ0xPQ0tTT1VSQ0VfRVRSTU9ERTJfSU5TVEFOQ0UoSU5TVEFOQ0UpXA0KICAoKChJTlNUQU5DRSkgPT0gVElNMSkgICAgfHwgXA0KICAgKChJTlNUQU5DRSkgPT0gVElNMikgICAgfHwgXA0KICAgKChJTlNUQU5DRSkgPT0gVElNMykpDQoNCiNkZWZpbmUgSVNfVElNX0NMT0NLU09VUkNFX1RJWF9JTlNUQU5DRShJTlNUQU5DRSlcDQogICgoKElOU1RBTkNFKSA9PSBUSU0xKSAgICB8fCBcDQogICAoKElOU1RBTkNFKSA9PSBUSU0yKSAgICB8fCBcDQogICAoKElOU1RBTkNFKSA9PSBUSU0zKSkNCg0KI2RlZmluZSBJU19USU1fQ0xPQ0tTT1VSQ0VfSVRSWF9JTlNUQU5DRShJTlNUQU5DRSlcDQogICgoKElOU1RBTkNFKSA9PSBUSU0xKSAgICB8fCBcDQogICAoKElOU1RBTkNFKSA9PSBUSU0yKSAgICB8fCBcDQogICAoKElOU1RBTkNFKSA9PSBUSU0zKSkNCg0KI2RlZmluZSBJU19USU1fT0NYUkVGX0NMRUFSX0lOU1RBTkNFKElOU1RBTkNFKVwNCiAgKCgoSU5TVEFOQ0UpID09IFRJTTEpICAgIHx8IFwNCiAgICgoSU5TVEFOQ0UpID09IFRJTTIpICAgIHx8IFwNCiAgICgoSU5TVEFOQ0UpID09IFRJTTMpKQ0KDQojZGVmaW5lIElTX1RJTV9FTkNPREVSX0lOVEVSRkFDRV9JTlNUQU5DRShJTlNUQU5DRSlcDQogICgoKElOU1RBTkNFKSA9PSBUSU0xKSAgICB8fCBcDQogICAoKElOU1RBTkNFKSA9PSBUSU0yKSAgICB8fCBcDQogICAoKElOU1RBTkNFKSA9PSBUSU0zKSkNCg0KI2RlZmluZSBJU19USU1fSEFMTF9JTlRFUkZBQ0VfSU5TVEFOQ0UoSU5TVEFOQ0UpXA0KICAoKChJTlNUQU5DRSkgPT0gVElNMSkpDQoNCiNkZWZpbmUgSVNfVElNX0hBTExfU0VOU09SX0lOVEVSRkFDRV9JTlNUQU5DRShJTlNUQU5DRSlcDQogICgoKElOU1RBTkNFKSA9PSBUSU0xKSkNCg0KI2RlZmluZSBJU19USU1fWE9SX0lOU1RBTkNFKElOU1RBTkNFKVwNCiAgKCgoSU5TVEFOQ0UpID09IFRJTTEpICAgIHx8IFwNCiAgICgoSU5TVEFOQ0UpID09IFRJTTIpICAgIHx8IFwNCiAgICgoSU5TVEFOQ0UpID09IFRJTTMpKQ0KDQojZGVmaW5lIElTX1RJTV9NQVNURVJfSU5TVEFOQ0UoSU5TVEFOQ0UpXA0KICAoKChJTlNUQU5DRSkgPT0gVElNMSkgICAgfHwgXA0KICAgKChJTlNUQU5DRSkgPT0gVElNMikgICAgfHwgXA0KICAgKChJTlNUQU5DRSkgPT0gVElNMykpDQoNCiNkZWZpbmUgSVNfVElNX1NMQVZFX0lOU1RBTkNFKElOU1RBTkNFKVwNCiAgKCgoSU5TVEFOQ0UpID09IFRJTTEpICAgIHx8IFwNCiAgICgoSU5TVEFOQ0UpID09IFRJTTIpICAgIHx8IFwNCiAgICgoSU5TVEFOQ0UpID09IFRJTTMpKQ0KDQojZGVmaW5lIElTX1RJTV8zMkJfQ09VTlRFUl9JTlNUQU5DRShJTlNUQU5DRSlcDQogICAgKChJTlNUQU5DRSkgPT0gVElNMikNCg0KI2RlZmluZSBJU19USU1fRE1BQlVSU1RfSU5TVEFOQ0UoSU5TVEFOQ0UpXA0KICAgICgoKElOU1RBTkNFKSA9PSBUSU0xKSAgICB8fCBcDQogICAgICgoSU5TVEFOQ0UpID09IFRJTTIpICAgIHx8IFwNCiAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgICAgfHwgXA0KICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNikgICB8fCBcDQogICAgICgoSU5TVEFOQ0UpID09IFRJTTE3KSkNCg0KI2RlZmluZSBJU19USU1fQlJFQUtfSU5TVEFOQ0UoSU5TVEFOQ0UpXA0KICAgICAgKCgoSU5TVEFOQ0UpID09IFRJTTEpICAgIHx8IFwNCiAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNikgICB8fCBcDQogICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTcpKQ0KDQojZGVmaW5lIElTX1RJTV9DQ1hfSU5TVEFOQ0UoSU5TVEFOQ0UsIENIQU5ORUwpIFwNCiAgICAoKCgoSU5TVEFOQ0UpID09IFRJTTEpICYmICAgICAgICAgICAgICAgICAgIFwNCiAgICAgKCgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMSkgfHwgICAgICAgICAgXA0KICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8yKSB8fCAgICAgICAgICBcDQogICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzMpIHx8ICAgICAgICAgIFwNCiAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfNCkpKSAgICAgICAgICAgXA0KICAgIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQogICAgKCgoSU5TVEFOQ0UpID09IFRJTTIpICYmICAgICAgICAgICAgICAgICAgIFwNCiAgICAgKCgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMSkgfHwgICAgICAgICAgXA0KICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8yKSB8fCAgICAgICAgICBcDQogICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzMpIHx8ICAgICAgICAgIFwNCiAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfNCkpKSAgICAgICAgICAgXA0KICAgIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQogICAgKCgoSU5TVEFOQ0UpID09IFRJTTMpICYmICAgICAgICAgICAgICAgICAgIFwNCiAgICAgKCgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMSkgfHwgICAgICAgICAgXA0KICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8yKSB8fCAgICAgICAgICBcDQogICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzMpIHx8ICAgICAgICAgIFwNCiAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfNCkpKSAgICAgICAgICAgXA0KICAgIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQogICAgKCgoSU5TVEFOQ0UpID09IFRJTTE0KSAmJiAgICAgICAgICAgICAgICAgIFwNCiAgICAgKCgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMSkpKSAgICAgICAgICAgXA0KICAgIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQogICAgKCgoSU5TVEFOQ0UpID09IFRJTTE2KSAmJiAgICAgICAgICAgICAgICAgIFwNCiAgICAgKCgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMSkpKSAgICAgICAgICAgXA0KICAgIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQogICAgKCgoSU5TVEFOQ0UpID09IFRJTTE3KSAmJiAgICAgICAgICAgICAgICAgIFwNCiAgICAgKCgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMSkpKSkNCg0KI2RlZmluZSBJU19USU1fQ0NYTl9JTlNUQU5DRShJTlNUQU5DRSwgQ0hBTk5FTCkgXA0KICAgKCgoKElOU1RBTkNFKSA9PSBUSU0xKSAmJiAgICAgICAgICAgICAgICAgICAgXA0KICAgICAoKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8xKSB8fCAgICAgICAgICAgXA0KICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8yKSB8fCAgICAgICAgICAgXA0KICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8zKSkpICAgICAgICAgICAgXA0KICAgIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0KICAgICgoKElOU1RBTkNFKSA9PSBUSU0xNikgJiYgICAgICAgICAgICAgICAgICAgXA0KICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzEpKSAgICAgICAgICAgICAgXA0KICAgIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0KICAgICgoKElOU1RBTkNFKSA9PSBUSU0xNykgJiYgICAgICAgICAgICAgICAgICAgXA0KICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzEpKSkNCg0KI2RlZmluZSBJU19USU1fQ09VTlRFUl9NT0RFX1NFTEVDVF9JTlNUQU5DRShJTlNUQU5DRSlcDQogICgoKElOU1RBTkNFKSA9PSBUSU0xKSAgICB8fCBcDQogICAoKElOU1RBTkNFKSA9PSBUSU0yKSAgICB8fCBcDQogICAoKElOU1RBTkNFKSA9PSBUSU0zKSkNCg0KI2RlZmluZSBJU19USU1fUkVQRVRJVElPTl9DT1VOVEVSX0lOU1RBTkNFKElOU1RBTkNFKVwNCiAgKCgoSU5TVEFOQ0UpID09IFRJTTEpICAgIHx8IFwNCiAgICgoSU5TVEFOQ0UpID09IFRJTTE2KSAgIHx8IFwNCiAgICgoSU5TVEFOQ0UpID09IFRJTTE3KSkNCg0KI2RlZmluZSBJU19USU1fQ0xPQ0tfRElWSVNJT05fSU5TVEFOQ0UoSU5TVEFOQ0UpXA0KICAoKChJTlNUQU5DRSkgPT0gVElNMSkgICAgfHwgXA0KICAgKChJTlNUQU5DRSkgPT0gVElNMikgICAgfHwgXA0KICAgKChJTlNUQU5DRSkgPT0gVElNMykgICAgfHwgXA0KICAgKChJTlNUQU5DRSkgPT0gVElNMTQpICAgfHwgXA0KICAgKChJTlNUQU5DRSkgPT0gVElNMTYpICAgfHwgXA0KICAgKChJTlNUQU5DRSkgPT0gVElNMTcpKQ0KDQojZGVmaW5lIElTX1RJTV9ETUFfSU5TVEFOQ0UoSU5TVEFOQ0UpXA0KICAoKChJTlNUQU5DRSkgPT0gVElNMSkgICAgfHwgXA0KICAgKChJTlNUQU5DRSkgPT0gVElNMikgICAgfHwgXA0KICAgKChJTlNUQU5DRSkgPT0gVElNMykgICAgfHwgXA0KICAgKChJTlNUQU5DRSkgPT0gVElNMTYpICAgfHwgXA0KICAgKChJTlNUQU5DRSkgPT0gVElNMTcpKQ0KICAgIA0KI2RlZmluZSBJU19USU1fRE1BX0NDX0lOU1RBTkNFKElOU1RBTkNFKVwNCiAgKCgoSU5TVEFOQ0UpID09IFRJTTEpICAgIHx8IFwNCiAgICgoSU5TVEFOQ0UpID09IFRJTTIpICAgIHx8IFwNCiAgICgoSU5TVEFOQ0UpID09IFRJTTMpICAgIHx8IFwNCiAgICgoSU5TVEFOQ0UpID09IFRJTTE2KSAgIHx8IFwNCiAgICgoSU5TVEFOQ0UpID09IFRJTTE3KSkNCiAgICANCiNkZWZpbmUgSVNfVElNX0NPTU1VVEFUSU9OX0VWRU5UX0lOU1RBTkNFKElOU1RBTkNFKVwNCiAgKCgoSU5TVEFOQ0UpID09IFRJTTEpICAgIHx8IFwNCiAgICgoSU5TVEFOQ0UpID09IFRJTTE2KSAgIHx8IFwNCiAgICgoSU5TVEFOQ0UpID09IFRJTTE3KSkNCg0KI2RlZmluZSBJU19USU1fUkVNQVBfSU5TVEFOQ0UoSU5TVEFOQ0UpXA0KICAoKElOU1RBTkNFKSA9PSBUSU0xNCkNCg0KI2RlZmluZSBJU19USU1fQURWQU5DRURfSU5TVEFOQ0UoSU5TVEFOQ0UpXA0KICAoKElOU1RBTkNFKSA9PSBUSU0xKQ0KDQovKioqKioqKioqKioqKioqKioqKioqKiogVUFSVCBJbnN0YW5jZXMgOiBJUkRBIG1vZGUgKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19JUkRBX0lOU1RBTkNFKElOU1RBTkNFKSAoKElOU1RBTkNFKSA9PSBVU0FSVDEpDQoNCi8qKioqKioqKioqKioqKioqKioqKiogVUFSVCBJbnN0YW5jZXMgOiBTbWFyZCBjYXJkIG1vZGUgKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX1NNQVJUQ0FSRF9JTlNUQU5DRShJTlNUQU5DRSkgKChJTlNUQU5DRSkgPT0gVVNBUlQxKQ0KDQovKioqKioqKioqKioqKioqKioqKiogVVNBUlQgSW5zdGFuY2VzIDogU3luY2hyb25vdXMgbW9kZSAqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19VU0FSVF9JTlNUQU5DRShJTlNUQU5DRSkgKChJTlNUQU5DRSkgPT0gVVNBUlQxKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KLyoqKioqKioqKioqKioqKioqKioqIFVTQVJUIEluc3RhbmNlcyA6IGF1dG8gQmF1ZCByYXRlIGRldGVjdGlvbiAqKioqKioqKioqKioqKi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIElTX1VTQVJUX0FVVE9CQVVEUkFURV9ERVRFQ1RJT05fSU5TVEFOQ0UoSU5TVEFOQ0UpICgoSU5TVEFOQ0UpID09IFVTQVJUMSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCi8qKioqKioqKioqKioqKioqKioqKiBVQVJUIEluc3RhbmNlcyA6IEFzeW5jaHJvbm91cyBtb2RlICoqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX1VBUlRfSU5TVEFOQ0UoSU5TVEFOQ0UpICAgKChJTlNUQU5DRSkgPT0gVVNBUlQxKQ0KDQovKioqKioqKioqKioqKioqKioqKiogVUFSVCBJbnN0YW5jZXMgOiBIYWxmLUR1cGxleCBtb2RlICoqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX1VBUlRfSEFMRkRVUExFWF9JTlNUQU5DRShJTlNUQU5DRSkgICAoKElOU1RBTkNFKSA9PSBVU0FSVDEpDQoNCi8qKioqKioqKioqKioqKioqKiogVUFSVCBJbnN0YW5jZXMgOiBIYXJkd2FyZSBGbG93IGNvbnRyb2wgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX1VBUlRfSFdGTE9XX0lOU1RBTkNFKElOU1RBTkNFKSAoKElOU1RBTkNFKSA9PSBVU0FSVDEpDQoNCi8qKioqKioqKioqKioqKioqKiogVUFSVCBJbnN0YW5jZXMgOiBMSU4gbW9kZSAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfVUFSVF9MSU5fSU5TVEFOQ0UoSU5TVEFOQ0UpICgoSU5TVEFOQ0UpID09IFVTQVJUMSkNCg0KLyoqKioqKioqKioqKioqKioqKiBVQVJUIEluc3RhbmNlcyA6IHdha2V1cCBmcm9tIHN0b3AgbW9kZSAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfVUFSVF9XQUtFVVBfRlJPTVNUT1BfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoSU5TVEFOQ0UpID09IFVTQVJUMSkNCi8qIE9sZCBtYWNybyBkZWZpbml0aW9uIG1haW50YWluZWQgZm9yIGxlZ2FjeSBwdXJwb3NlICovDQojZGVmaW5lIElTX1VBUlRfV0FLRVVQX0lOU1RBTkNFICAgICAgICAgSVNfVUFSVF9XQUtFVVBfRlJPTVNUT1BfSU5TVEFOQ0UNCg0KLyoqKioqKioqKioqKioqKioqKiBVQVJUIEluc3RhbmNlcyA6IERyaXZlciBlbmFibGUgZGV0ZWN0aW9uICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19VQVJUX0RSSVZFUl9FTkFCTEVfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoSU5TVEFOQ0UpID09IFVTQVJUMSkNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBXV0RHIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfV1dER19BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICAoKElOU1RBTkNFKSA9PSBXV0RHKQ0KDQovKioNCiAgKiBAfQ0KICAqLw0KDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgRm9yIGEgcGFpbmxlc3MgY29kZXMgbWlncmF0aW9uIGJldHdlZW4gdGhlIFNUTTMyRjB4eCBkZXZpY2UgcHJvZHVjdCAgICAgICAqLw0KLyogIGxpbmVzLCB0aGUgYWxpYXNlcyBkZWZpbmVkIGJlbG93IGFyZSBwdXQgaW4gcGxhY2UgdG8gb3ZlcmNvbWUgdGhlICAgICAgICAgKi8NCi8qICBkaWZmZXJlbmNlcyBpbiB0aGUgaW50ZXJydXB0IGhhbmRsZXJzIGFuZCBJUlFuIGRlZmluaXRpb25zLiAgICAgICAgICAgICAgICovDQovKiAgTm8gbmVlZCB0byB1cGRhdGUgZGV2ZWxvcGVkIGludGVycnVwdCBjb2RlIHdoZW4gbW92aW5nIGFjcm9zcyAgICAgICAgICAgICAqLw0KLyogIHByb2R1Y3QgbGluZXMgd2l0aGluIHRoZSBzYW1lIFNUTTMyRjAgRmFtaWx5ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQoNCi8qIEFsaWFzZXMgZm9yIF9fSVJRbiAqLw0KI2RlZmluZSBBREMxX0NPTVBfSVJRbiAgICAgICAgICAgICBBREMxX0lSUW4NCiNkZWZpbmUgRE1BMV9DaDFfSVJRbiAgICAgICAgICAgICAgRE1BMV9DaGFubmVsMV9JUlFuDQojZGVmaW5lIERNQTFfQ2gyXzNfRE1BMl9DaDFfMl9JUlFuIERNQTFfQ2hhbm5lbDJfM19JUlFuDQojZGVmaW5lIERNQTFfQ2hhbm5lbDRfNV82XzdfSVJRbiAgIERNQTFfQ2hhbm5lbDRfNV9JUlFuDQojZGVmaW5lIERNQTFfQ2g0XzdfRE1BMl9DaDNfNV9JUlFuIERNQTFfQ2hhbm5lbDRfNV9JUlFuDQojZGVmaW5lIFZERElPMl9JUlFuICAgICAgICAgICAgICAgIFBWRF9JUlFuDQojZGVmaW5lIFBWRF9WRERJTzJfSVJRbiAgICAgICAgICAgIFBWRF9JUlFuDQojZGVmaW5lIFJDQ19DUlNfSVJRbiAgICAgICAgICAgICAgIFJDQ19JUlFuDQoNCg0KLyogQWxpYXNlcyBmb3IgX19JUlFIYW5kbGVyICovDQojZGVmaW5lIEFEQzFfQ09NUF9JUlFIYW5kbGVyICAgICAgICAgICAgIEFEQzFfSVJRSGFuZGxlcg0KI2RlZmluZSBETUExX0NoMV9JUlFIYW5kbGVyICAgICAgICAgICAgICBETUExX0NoYW5uZWwxX0lSUUhhbmRsZXINCiNkZWZpbmUgRE1BMV9DaDJfM19ETUEyX0NoMV8yX0lSUUhhbmRsZXIgRE1BMV9DaGFubmVsMl8zX0lSUUhhbmRsZXINCiNkZWZpbmUgRE1BMV9DaGFubmVsNF81XzZfN19JUlFIYW5kbGVyICAgRE1BMV9DaGFubmVsNF81X0lSUUhhbmRsZXINCiNkZWZpbmUgRE1BMV9DaDRfN19ETUEyX0NoM181X0lSUUhhbmRsZXIgRE1BMV9DaGFubmVsNF81X0lSUUhhbmRsZXINCiNkZWZpbmUgVkRESU8yX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgUFZEX0lSUUhhbmRsZXINCiNkZWZpbmUgUFZEX1ZERElPMl9JUlFIYW5kbGVyICAgICAgICAgICAgUFZEX0lSUUhhbmRsZXINCiNkZWZpbmUgUkNDX0NSU19JUlFIYW5kbGVyICAgICAgICAgICAgICAgUkNDX0lSUUhhbmRsZXINCg0KDQojaWZkZWYgX19jcGx1c3BsdXMNCn0NCiNlbmRpZiAvKiBfX2NwbHVzcGx1cyAqLw0KDQojZW5kaWYgLyogX19TVE0zMkYwMzF4Nl9IICovDQoNCi8qKg0KICAqIEB9DQogICovDQoNCiAgLyoqDQogICogQH0NCiAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKi8NCg==