ZGlmZiAtLWdpdCBhL0luY2x1ZGUvc3RtMzJ3YjM1eHguaCBiL0luY2x1ZGUvc3RtMzJ3YjM1eHguaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42MzY0NjJmCi0tLSAvZGV2L251bGwKKysrIGIvSW5jbHVkZS9zdG0zMndiMzV4eC5oCkBAIC0wLDAgKzEsMTI3NjkgQEAKKy8qKgorICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAgKiBAZmlsZSAgICBzdG0zMndiMzV4eC5oCisgICogQGF1dGhvciAgTUNEIEFwcGxpY2F0aW9uIFRlYW0KKyAgKiBAYnJpZWYgICBDTVNJUyBDb3J0ZXggRGV2aWNlIFBlcmlwaGVyYWwgQWNjZXNzIExheWVyIEhlYWRlciBGaWxlLgorICAqICAgICAgICAgIFRoaXMgZmlsZSBjb250YWlucyBhbGwgdGhlIHBlcmlwaGVyYWwgcmVnaXN0ZXIncyBkZWZpbml0aW9ucywgYml0cworICAqICAgICAgICAgIGRlZmluaXRpb25zIGFuZCBtZW1vcnkgbWFwcGluZyBmb3Igc3RtMzJ3YjM1eHggZGV2aWNlcy4KKyAgKgorICAqICAgICAgICAgIFRoaXMgZmlsZSBjb250YWluczoKKyAgKiAgICAgICAgICAgLSBEYXRhIHN0cnVjdHVyZXMgYW5kIHRoZSBhZGRyZXNzIG1hcHBpbmcgZm9yIGFsbCBwZXJpcGhlcmFscworICAqICAgICAgICAgICAtIFBlcmlwaGVyYWwncyByZWdpc3RlcnMgZGVjbGFyYXRpb25zIGFuZCBiaXRzIGRlZmluaXRpb24KKyAgKiAgICAgICAgICAgLSBNYWNyb3MgdG8gYWNjZXNzIHBlcmlwaGVyYWwncyByZWdpc3RlcnMgaGFyZHdhcmUKKyAgKgorICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAgKiBAYXR0ZW50aW9uCisgICoKKyAgKiA8aDI+PGNlbnRlcj4mY29weTsgQ29weXJpZ2h0IChjKSAyMDE5IFNUTWljcm9lbGVjdHJvbmljcy4gCisgICogQWxsIHJpZ2h0cyByZXNlcnZlZC48L2NlbnRlcj48L2gyPgorICAqCisgICogVGhpcyBzb2Z0d2FyZSBjb21wb25lbnQgaXMgbGljZW5zZWQgYnkgU1QgdW5kZXIgQlNEIDMtQ2xhdXNlIGxpY2Vuc2UsCisgICogdGhlICJMaWNlbnNlIjsgWW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSAKKyAgKiBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQ6CisgICogICAgICAgICAgICAgICAgICAgICAgICBvcGVuc291cmNlLm9yZy9saWNlbnNlcy9CU0QtMy1DbGF1c2UKKyAgKgorICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAgKi8KKworLyoqIEBhZGR0b2dyb3VwIENNU0lTX0RldmljZQorICAqIEB7CisgICovCisKKy8qKiBAYWRkdG9ncm91cCBzdG0zMndiMzV4eAorICAqIEB7CisgICovCisKKyNpZm5kZWYgX19TVE0zMldCMzV4eF9ICisjZGVmaW5lIF9fU1RNMzJXQjM1eHhfSAorCisjaWZkZWYgX19jcGx1c3BsdXMKKyBleHRlcm4gIkMiIHsKKyNlbmRpZiAvKiBfX2NwbHVzcGx1cyAqLworCisvKiogQGFkZHRvZ3JvdXAgQ29uZmlndXJhdGlvbl9zZWN0aW9uX2Zvcl9DTVNJUworICAqIEB7CisgICovCisvKioKKyAgKiBAYnJpZWYgQ29uZmlndXJhdGlvbiBvZiB0aGUgQ29ydGV4LU00IFByb2Nlc3NvciBhbmQgQ29yZSBQZXJpcGhlcmFscworICAqLworI2RlZmluZSBfX0NNNF9SRVYgICAgICAgICAgICAgICAgIDEgLyohPCBDb3JlIFJldmlzaW9uIHIwcDEgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgX19NUFVfUFJFU0VOVCAgICAgICAgICAgICAxIC8qITwgTTQgcHJvdmlkZXMgYW4gTVBVICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIF9fVlRPUl9QUkVTRU5UICAgICAgICAgICAgMSAvKiE8IFZlY3RvciBUYWJsZSBSZWdpc3RlciBzdXBwb3J0ZWQgICAgICAgICAgICAgICAqLworI2RlZmluZSBfX05WSUNfUFJJT19CSVRTICAgICAgICAgIDQgLyohPCBTVE0zMldCeHggdXNlcyA0IEJpdHMgZm9yIHRoZSBQcmlvcml0eSBMZXZlbHMgKi8KKyNkZWZpbmUgX19WZW5kb3JfU3lzVGlja0NvbmZpZyAgICAwIC8qITwgU2V0IHRvIDEgaWYgZGlmZmVyZW50IFN5c1RpY2sgQ29uZmlnIGlzIHVzZWQgICovCisjZGVmaW5lIF9fRlBVX1BSRVNFTlQgICAgICAgICAgICAgMSAvKiE8IEZQVSBwcmVzZW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyoqCisgICogQH0KKyAgKi8KKworLyoqIEBhZGR0b2dyb3VwIFBlcmlwaGVyYWxfaW50ZXJydXB0X251bWJlcl9kZWZpbml0aW9uCisgICogQHsKKyAgKi8KKworLyoqCisgKiBAYnJpZWYgc3RtMzJ3YjM1eHggSW50ZXJydXB0IE51bWJlciBEZWZpbml0aW9uLCBhY2NvcmRpbmcgdG8gdGhlIHNlbGVjdGVkIGRldmljZSAKKyAqICAgICAgICBpbiBAcmVmIExpYnJhcnlfY29uZmlndXJhdGlvbl9zZWN0aW9uCisgKi8KKy8qITwgSW50ZXJydXB0IE51bWJlciBEZWZpbml0aW9uIGZvciBNNCAqLwordHlwZWRlZiBlbnVtCit7CisvKioqKioqICBDb3J0ZXgtTTQgUHJvY2Vzc29yIEV4Y2VwdGlvbnMgTnVtYmVycyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworICBOb25NYXNrYWJsZUludF9JUlFuICAgICAgICAgICAgICAgICA9IC0xNCwgICAgLyohPCBOb24gTWFza2FibGUgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBIYXJkRmF1bHRfSVJRbiAgICAgICAgICAgICAgICAgICAgICA9IC0xMywgICAgLyohPCBDb3J0ZXgtTTQgSGFyZCBGYXVsdCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBNZW1vcnlNYW5hZ2VtZW50X0lSUW4gICAgICAgICAgICAgICA9IC0xMiwgICAgLyohPCBDb3J0ZXgtTTQgTWVtb3J5IE1hbmFnZW1lbnQgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBCdXNGYXVsdF9JUlFuICAgICAgICAgICAgICAgICAgICAgICA9IC0xMSwgICAgLyohPCBDb3J0ZXgtTTQgQnVzIEZhdWx0IEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBVc2FnZUZhdWx0X0lSUW4gICAgICAgICAgICAgICAgICAgICA9IC0xMCwgICAgLyohPCBDb3J0ZXgtTTQgVXNhZ2UgRmF1bHQgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBTVkNhbGxfSVJRbiAgICAgICAgICAgICAgICAgICAgICAgICA9IC01LCAgICAgLyohPCBDb3J0ZXgtTTQgU1YgQ2FsbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBEZWJ1Z01vbml0b3JfSVJRbiAgICAgICAgICAgICAgICAgICA9IC00LCAgICAgLyohPCBDb3J0ZXgtTTQgRGVidWcgTW9uaXRvciBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBQZW5kU1ZfSVJRbiAgICAgICAgICAgICAgICAgICAgICAgICA9IC0yLCAgICAgLyohPCBDb3J0ZXgtTTQgUGVuZCBTViBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBTeXNUaWNrX0lSUW4gICAgICAgICAgICAgICAgICAgICAgICA9IC0xLCAgICAgLyohPCBDb3J0ZXgtTTQgU3lzdGVtIFRpY2sgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworCisvKioqKioqKioqKioqKiAgU1RNMzJXQnh4IHNwZWNpZmljIEludGVycnVwdCBOdW1iZXJzIG9uIE00IGNvcmUgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworICBXV0RHX0lSUW4gICAgICAgICAgICAgICAgICAgICAgICAgICA9IDAsICAgICAgLyohPCBXaW5kb3cgV2F0Y2hEb2cgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBQVkRfUFZNX0lSUW4gICAgICAgICAgICAgICAgICAgICAgICA9IDEsICAgICAgLyohPCBQVkQgYW5kIFBWTSBkZXRlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBUQU1QX1NUQU1QX0xTRUNTU19JUlFuICAgICAgICAgICAgICA9IDIsICAgICAgLyohPCBSVEMgVGFtcGVyIGFuZCBUaW1lU3RhbXAgSW50ZXJydXB0cyBhbmQgTFNFQ1NTIEludGVycnVwdHMgICAgICAgICAqLworICBSVENfV0tVUF9JUlFuICAgICAgICAgICAgICAgICAgICAgICA9IDMsICAgICAgLyohPCBSVEMgV2FrZXVwIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBGTEFTSF9JUlFuICAgICAgICAgICAgICAgICAgICAgICAgICA9IDQsICAgICAgLyohPCBGTEFTSCAoQ0ZJKSAgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBSQ0NfSVJRbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA9IDUsICAgICAgLyohPCBSQ0MgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBFWFRJMF9JUlFuICAgICAgICAgICAgICAgICAgICAgICAgICA9IDYsICAgICAgLyohPCBFWFRJIExpbmUgMCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBFWFRJMV9JUlFuICAgICAgICAgICAgICAgICAgICAgICAgICA9IDcsICAgICAgLyohPCBFWFRJIExpbmUgMSBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBFWFRJMl9JUlFuICAgICAgICAgICAgICAgICAgICAgICAgICA9IDgsICAgICAgLyohPCBFWFRJIExpbmUgMiBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBFWFRJM19JUlFuICAgICAgICAgICAgICAgICAgICAgICAgICA9IDksICAgICAgLyohPCBFWFRJIExpbmUgMyBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBFWFRJNF9JUlFuICAgICAgICAgICAgICAgICAgICAgICAgICA9IDEwLCAgICAgLyohPCBFWFRJIExpbmUgNCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBETUExX0NoYW5uZWwxX0lSUW4gICAgICAgICAgICAgICAgICA9IDExLCAgICAgLyohPCBETUExIENoYW5uZWwgMSBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBETUExX0NoYW5uZWwyX0lSUW4gICAgICAgICAgICAgICAgICA9IDEyLCAgICAgLyohPCBETUExIENoYW5uZWwgMiBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBETUExX0NoYW5uZWwzX0lSUW4gICAgICAgICAgICAgICAgICA9IDEzLCAgICAgLyohPCBETUExIENoYW5uZWwgMyBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBETUExX0NoYW5uZWw0X0lSUW4gICAgICAgICAgICAgICAgICA9IDE0LCAgICAgLyohPCBETUExIENoYW5uZWwgNCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBETUExX0NoYW5uZWw1X0lSUW4gICAgICAgICAgICAgICAgICA9IDE1LCAgICAgLyohPCBETUExIENoYW5uZWwgNSBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBETUExX0NoYW5uZWw2X0lSUW4gICAgICAgICAgICAgICAgICA9IDE2LCAgICAgLyohPCBETUExIENoYW5uZWwgNiBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBETUExX0NoYW5uZWw3X0lSUW4gICAgICAgICAgICAgICAgICA9IDE3LCAgICAgLyohPCBETUExIENoYW5uZWwgNyBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBBREMxX0lSUW4gICAgICAgICAgICAgICAgICAgICAgICAgICA9IDE4LCAgICAgLyohPCBBREMxIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBVU0JfSFBfSVJRbiAgICAgICAgICAgICAgICAgICAgICAgICA9IDE5LCAgICAgLyohPCBVU0IgSGlnaCBQcmlvcml0eSBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBVU0JfTFBfSVJRbiAgICAgICAgICAgICAgICAgICAgICAgICA9IDIwLCAgICAgLyohPCBVU0IgTG93IFByaW9yaXR5IEludGVycnVwdCAoaW5jbHVkaW5nIFVTQiB3YWtldXApICAgICAgICAgICAgICAgICAqLworICBDMlNFVl9QV1JfQzJIX0lSUW4gICAgICAgICAgICAgICAgICA9IDIxLCAgICAgLyohPCBDUFUyIFNFViBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBDT01QX0lSUW4gICAgICAgICAgICAgICAgICAgICAgICAgICA9IDIyLCAgICAgLyohPCBDT01QMSBhbmQgQ09NUDIgSW50ZXJydXB0cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBFWFRJOV81X0lSUW4gICAgICAgICAgICAgICAgICAgICAgICA9IDIzLCAgICAgLyohPCBFWFRJIExpbmVzIFs5OjVdIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBUSU0xX0JSS19JUlFuICAgICAgICAgICAgICAgICAgICAgICA9IDI0LCAgICAgLyohPCBUSU0xIEJyZWFrIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBUSU0xX1VQX1RJTTE2X0lSUW4gICAgICAgICAgICAgICAgICA9IDI1LCAgICAgLyohPCBUSU0xIFVwZGF0ZSBhbmQgVElNMTYgZ2xvYmFsIEludGVycnVwdHMgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBUSU0xX1RSR19DT01fVElNMTdfSVJRbiAgICAgICAgICAgICA9IDI2LCAgICAgLyohPCBUSU0xIFRyaWdnZXIgYW5kIENvbW11bmljYXRpb24gYW5kIFRJTTE3IGdsb2JhbCBJbnRlcnJ1cHRzICAgICAgICAqLworICBUSU0xX0NDX0lSUW4gICAgICAgICAgICAgICAgICAgICAgICA9IDI3LCAgICAgLyohPCBUSU0xIENhcHR1cmUgQ29tcGFyZSBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBUSU0yX0lSUW4gICAgICAgICAgICAgICAgICAgICAgICAgICA9IDI4LCAgICAgLyohPCBUSU0yIEdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBQS0FfSVJRbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA9IDI5LCAgICAgLyohPCBQS0EgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBJMkMxX0VWX0lSUW4gICAgICAgICAgICAgICAgICAgICAgICA9IDMwLCAgICAgLyohPCBJMkMxIEV2ZW50IEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBJMkMxX0VSX0lSUW4gICAgICAgICAgICAgICAgICAgICAgICA9IDMxLCAgICAgLyohPCBJMkMxIEVycm9yIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBJMkMzX0VWX0lSUW4gICAgICAgICAgICAgICAgICAgICAgICA9IDMyLCAgICAgLyohPCBJMkMzIEV2ZW50IEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBJMkMzX0VSX0lSUW4gICAgICAgICAgICAgICAgICAgICAgICA9IDMzLCAgICAgLyohPCBJMkMzIEVycm9yIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBTUEkxX0lSUW4gICAgICAgICAgICAgICAgICAgICAgICAgICA9IDM0LCAgICAgLyohPCBTUEkxIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBTUEkyX0lSUW4gICAgICAgICAgICAgICAgICAgICAgICAgICA9IDM1LCAgICAgLyohPCBTUEkyIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBVU0FSVDFfSVJRbiAgICAgICAgICAgICAgICAgICAgICAgICA9IDM2LCAgICAgLyohPCBVU0FSVDEgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBMUFVBUlQxX0lSUW4gICAgICAgICAgICAgICAgICAgICAgICA9IDM3LCAgICAgLyohPCBMUFVBUlQxIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBUU0NfSVJRbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA9IDM5LCAgICAgLyohPCBUU0MgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBFWFRJMTVfMTBfSVJRbiAgICAgICAgICAgICAgICAgICAgICA9IDQwLCAgICAgLyohPCBFWFRJIExpbmVzMVsxNToxMCBdSW50ZXJydXB0cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBSVENfQWxhcm1fSVJRbiAgICAgICAgICAgICAgICAgICAgICA9IDQxLCAgICAgLyohPCBSVEMgQWxhcm1zIChBIGFuZCBCKSBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBDUlNfSVJRbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA9IDQyLCAgICAgLyohPCBDUlMgaW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBQV1JfU09URl9CTEVBQ1RfODAyQUNUX1JGUEhBU0VfSVJRbiA9IDQzLCAgICAgLyohPCBQV1Igc3dpdGNoaW5nIG9uIHRoZSBmbHkgaW50ZXJydXB0CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBXUiBlbmQgb2YgQkxFIGFjdGl2aXR5IGludGVycnVwdAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQV1IgZW5kIG9mIDgwMi4xNS40IChaaWdiZWUpIGFjdGl2aXR5IGludGVycnVwdAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQV1IgZW5kIG9mIGNyaXRpY2FsIHJhZGlvIHBoYXNlIGludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBJUENDX0MxX1JYX0lSUW4gICAgICAgICAgICAgICAgICAgICA9IDQ0LCAgICAgLyohPCBJUENDIFJYIE9jY3VwaWVkIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBJUENDX0MxX1RYX0lSUW4gICAgICAgICAgICAgICAgICAgICA9IDQ1LCAgICAgLyohPCBJUENDIFRYIEZyZWUgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBIU0VNX0lSUW4gICAgICAgICAgICAgICAgICAgICAgICAgICA9IDQ2LCAgICAgLyohPCBIU0VNIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBMUFRJTTFfSVJRbiAgICAgICAgICAgICAgICAgICAgICAgICA9IDQ3LCAgICAgLyohPCBMUFRJTTEgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBMUFRJTTJfSVJRbiAgICAgICAgICAgICAgICAgICAgICAgICA9IDQ4LCAgICAgLyohPCBMUFRJTTIgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBRVUFEU1BJX0lSUW4gICAgICAgICAgICAgICAgICAgICAgICA9IDUwLCAgICAgLyohPCBRVUFEU1BJIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBBRVMxX0lSUW4gICAgICAgICAgICAgICAgICAgICAgICAgICA9IDUxLCAgICAgLyohPCBBRVMxIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBBRVMyX0lSUW4gICAgICAgICAgICAgICAgICAgICAgICAgICA9IDUyLCAgICAgLyohPCBBRVMyIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBSTkdfSVJRbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA9IDUzLCAgICAgLyohPCBSTkcgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBGUFVfSVJRbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA9IDU0LCAgICAgLyohPCBGUFUgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBETUEyX0NoYW5uZWwxX0lSUW4gICAgICAgICAgICAgICAgICA9IDU1LCAgICAgLyohPCBETUEyIENoYW5uZWwgMSBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBETUEyX0NoYW5uZWwyX0lSUW4gICAgICAgICAgICAgICAgICA9IDU2LCAgICAgLyohPCBETUEyIENoYW5uZWwgMiBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBETUEyX0NoYW5uZWwzX0lSUW4gICAgICAgICAgICAgICAgICA9IDU3LCAgICAgLyohPCBETUEyIENoYW5uZWwgMyBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBETUEyX0NoYW5uZWw0X0lSUW4gICAgICAgICAgICAgICAgICA9IDU4LCAgICAgLyohPCBETUEyIENoYW5uZWwgNCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBETUEyX0NoYW5uZWw1X0lSUW4gICAgICAgICAgICAgICAgICA9IDU5LCAgICAgLyohPCBETUEyIENoYW5uZWwgNSBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBETUEyX0NoYW5uZWw2X0lSUW4gICAgICAgICAgICAgICAgICA9IDYwLCAgICAgLyohPCBETUEyIENoYW5uZWwgNiBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBETUEyX0NoYW5uZWw3X0lSUW4gICAgICAgICAgICAgICAgICA9IDYxLCAgICAgLyohPCBETUEyIENoYW5uZWwgNyBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBETUFNVVgxX09WUl9JUlFuICAgICAgICAgICAgICAgICAgICA9IDYyICAgICAgLyohPCBETUFNVVgxIG92ZXJydW4gSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworfSBJUlFuX1R5cGU7CisvKioKKyAgKiBAfQorICAqLworCisjaW5jbHVkZSAiY29yZV9jbTQuaCIgICAgICAgICAgICAgICAgLyogQ29ydGV4LU00IHByb2Nlc3NvciBhbmQgY29yZSBwZXJpcGhlcmFscyAqLworI2luY2x1ZGUgInN5c3RlbV9zdG0zMndieHguaCIKKyNpbmNsdWRlIDxzdGRpbnQuaD4KKworLyoqIEBhZGR0b2dyb3VwIFBlcmlwaGVyYWxfcmVnaXN0ZXJzX3N0cnVjdHVyZXMKKyAgKiBAeworICAqLworCisvKioKKyAgKiBAYnJpZWYgQW5hbG9nIHRvIERpZ2l0YWwgQ29udmVydGVyCisgICovCit0eXBlZGVmIHN0cnVjdAoreworICBfX0lPIHVpbnQzMl90IElTUjsgICAgICAgICAgLyohPCBBREMgaW50ZXJydXB0IGFuZCBzdGF0dXMgcmVnaXN0ZXIsICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovCisgIF9fSU8gdWludDMyX3QgSUVSOyAgICAgICAgICAvKiE8IEFEQyBpbnRlcnJ1cHQgZW5hYmxlIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8KKyAgX19JTyB1aW50MzJfdCBDUjsgICAgICAgICAgIC8qITwgQURDIGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLworICBfX0lPIHVpbnQzMl90IENGR1I7ICAgICAgICAgLyohPCBBREMgY29uZmlndXJhdGlvbiByZWdpc3RlciAxLCAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDBDICovCisgIF9fSU8gdWludDMyX3QgQ0ZHUjI7ICAgICAgICAvKiE8IEFEQyBjb25maWd1cmF0aW9uIHJlZ2lzdGVyIDIsICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgKi8KKyAgX19JTyB1aW50MzJfdCBTTVBSMTsgICAgICAgIC8qITwgQURDIHNhbXBsaW5nIHRpbWUgcmVnaXN0ZXIgMSwgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLworICBfX0lPIHVpbnQzMl90IFNNUFIyOyAgICAgICAgLyohPCBBREMgc2FtcGxpbmcgdGltZSByZWdpc3RlciAyLCAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE4ICovCisgICAgICAgdWludDMyX3QgUkVTRVJWRUQxOyAgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MUMgKi8KKyAgX19JTyB1aW50MzJfdCBUUjE7ICAgICAgICAgIC8qITwgQURDIGFuYWxvZyB3YXRjaGRvZyAxIHRocmVzaG9sZCByZWdpc3RlciwgICAgICBBZGRyZXNzIG9mZnNldDogMHgyMCAqLworICBfX0lPIHVpbnQzMl90IFRSMjsgICAgICAgICAgLyohPCBBREMgYW5hbG9nIHdhdGNoZG9nIDIgdGhyZXNob2xkIHJlZ2lzdGVyLCAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDI0ICovCisgIF9fSU8gdWludDMyX3QgVFIzOyAgICAgICAgICAvKiE8IEFEQyBhbmFsb2cgd2F0Y2hkb2cgMyB0aHJlc2hvbGQgcmVnaXN0ZXIsICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjggKi8KKyAgICAgICB1aW50MzJfdCBSRVNFUlZFRDI7ICAgIC8qITwgUmVzZXJ2ZWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgyQyAqLworICBfX0lPIHVpbnQzMl90IFNRUjE7ICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmVnaXN0ZXIgMSwgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDMwICovCisgIF9fSU8gdWludDMyX3QgU1FSMjsgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByZWdpc3RlciAyLCAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzQgKi8KKyAgX19JTyB1aW50MzJfdCBTUVIzOyAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJlZ2lzdGVyIDMsICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgzOCAqLworICBfX0lPIHVpbnQzMl90IFNRUjQ7ICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmVnaXN0ZXIgNCwgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDNDICovCisgIF9fSU8gdWludDMyX3QgRFI7ICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIGRhdGEgcmVnaXN0ZXIsICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDAgKi8KKyAgICAgICB1aW50MzJfdCBSRVNFUlZFRDM7ICAgIC8qITwgUmVzZXJ2ZWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHg0NCAqLworICAgICAgIHVpbnQzMl90IFJFU0VSVkVENDsgICAgLyohPCBSZXNlcnZlZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDQ4ICovCisgIF9fSU8gdWludDMyX3QgSlNRUjsgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBzZXF1ZW5jZXIgcmVnaXN0ZXIsICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NEMgKi8KKyAgICAgICB1aW50MzJfdCBSRVNFUlZFRDVbNF07IC8qITwgUmVzZXJ2ZWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDUwIC0gMHg1QyAqLworICBfX0lPIHVpbnQzMl90IE9GUjE7ICAgICAgICAgLyohPCBBREMgb2Zmc2V0IHJlZ2lzdGVyIDEsICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDYwICovCisgIF9fSU8gdWludDMyX3QgT0ZSMjsgICAgICAgICAvKiE8IEFEQyBvZmZzZXQgcmVnaXN0ZXIgMiwgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NjQgKi8KKyAgX19JTyB1aW50MzJfdCBPRlIzOyAgICAgICAgIC8qITwgQURDIG9mZnNldCByZWdpc3RlciAzLCAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg2OCAqLworICBfX0lPIHVpbnQzMl90IE9GUjQ7ICAgICAgICAgLyohPCBBREMgb2Zmc2V0IHJlZ2lzdGVyIDQsICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDZDICovCisgICAgICAgdWludDMyX3QgUkVTRVJWRUQ2WzRdOyAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHg3MCAtIDB4N0MgKi8KKyAgX19JTyB1aW50MzJfdCBKRFIxOyAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHJhbmsgMSBkYXRhIHJlZ2lzdGVyLCAgICAgICBBZGRyZXNzIG9mZnNldDogMHg4MCAqLworICBfX0lPIHVpbnQzMl90IEpEUjI7ICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgcmFuayAyIGRhdGEgcmVnaXN0ZXIsICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDg0ICovCisgIF9fSU8gdWludDMyX3QgSkRSMzsgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCByYW5rIDMgZGF0YSByZWdpc3RlciwgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4ODggKi8KKyAgX19JTyB1aW50MzJfdCBKRFI0OyAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHJhbmsgNCBkYXRhIHJlZ2lzdGVyLCAgICAgICBBZGRyZXNzIG9mZnNldDogMHg4QyAqLworICAgICAgIHVpbnQzMl90IFJFU0VSVkVEN1s0XTsgLyohPCBSZXNlcnZlZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDA5MCAtIDB4MDlDICovCisgIF9fSU8gdWludDMyX3QgQVdEMkNSOyAgICAgICAvKiE8IEFEQyBhbmFsb2cgd2F0Y2hkb2cgMSBjb25maWd1cmF0aW9uIHJlZ2lzdGVyLCAgQWRkcmVzcyBvZmZzZXQ6IDB4QTAgKi8KKyAgX19JTyB1aW50MzJfdCBBV0QzQ1I7ICAgICAgIC8qITwgQURDIGFuYWxvZyB3YXRjaGRvZyAzIENvbmZpZ3VyYXRpb24gUmVnaXN0ZXIsICBBZGRyZXNzIG9mZnNldDogMHhBNCAqLworICAgICAgIHVpbnQzMl90IFJFU0VSVkVEODsgICAgLyohPCBSZXNlcnZlZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MEE4ICovCisgICAgICAgdWludDMyX3QgUkVTRVJWRUQ5OyAgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwQUMgKi8KKyAgX19JTyB1aW50MzJfdCBESUZTRUw7ICAgICAgIC8qITwgQURDIGRpZmZlcmVudGlhbCBtb2RlIHNlbGVjdGlvbiByZWdpc3RlciwgICAgICBBZGRyZXNzIG9mZnNldDogMHhCMCAqLworICBfX0lPIHVpbnQzMl90IENBTEZBQ1Q7ICAgICAgLyohPCBBREMgY2FsaWJyYXRpb24gZmFjdG9ycywgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweEI0ICovCisKK30gQURDX1R5cGVEZWY7CisKK3R5cGVkZWYgc3RydWN0Cit7CisgIHVpbnQzMl90ICAgICAgUkVTRVJWRUQxOyAgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IEFEQzEgYmFzZSBhZGRyZXNzICsgMHgzMDAgKi8KKyAgdWludDMyX3QgICAgICBSRVNFUlZFRDI7ICAgIC8qITwgUmVzZXJ2ZWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogQURDMSBiYXNlIGFkZHJlc3MgKyAweDMwNCAqLworICBfX0lPIHVpbnQzMl90IENDUjsgICAgICAgICAgLyohPCBBREMgY29tbW9uIGNvbmZpZ3VyYXRpb24gcmVnaXN0ZXIsICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiBBREMxIGJhc2UgYWRkcmVzcyArIDB4MzA4ICovCisgIHVpbnQzMl90ICAgICAgUkVTRVJWRUQzOyAgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IEFEQzEgYmFzZSBhZGRyZXNzICsgMHgzMEMgKi8KK30gQURDX0NvbW1vbl9UeXBlRGVmOworCisvKioKKyAgKiBAYnJpZWYgQ29tcGFyYXRvcgorICAqLwordHlwZWRlZiBzdHJ1Y3QKK3sKKyAgX19JTyB1aW50MzJfdCBDU1I7ICAgICAgICAgLyohPCBDT01QIGNvbnRyb2wgYW5kIHN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLworfSBDT01QX1R5cGVEZWY7CisKK3R5cGVkZWYgc3RydWN0Cit7CisgIF9fSU8gdWludDMyX3QgQ1NSOyAgICAgICAgIC8qITwgQ09NUCBjb250cm9sIGFuZCBzdGF0dXMgcmVnaXN0ZXIsIHVzZWQgZm9yIGJpdHMgY29tbW9uIHRvIHNldmVyYWwgQ09NUCBpbnN0YW5jZXMsIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovCit9IENPTVBfQ29tbW9uX1R5cGVEZWY7CisKKy8qKgorICAqIEBicmllZiBDUkMgY2FsY3VsYXRpb24gdW5pdAorICAqLwordHlwZWRlZiBzdHJ1Y3QKK3sKKyAgX19JTyB1aW50MzJfdCBEUjsgICAgICAgICAgLyohPCBDUkMgRGF0YSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLworICBfX0lPIHVpbnQzMl90IElEUjsgICAgICAgICAvKiE8IENSQyBJbmRlcGVuZGVudCBkYXRhIHJlZ2lzdGVyLCAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovCisgIF9fSU8gdWludDMyX3QgQ1I7ICAgICAgICAgIC8qITwgQ1JDIENvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8KKyAgICAgICB1aW50MzJfdCBSRVNFUlZFRDI7ICAgLyohPCBSZXNlcnZlZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwQyAqLworICBfX0lPIHVpbnQzMl90IElOSVQ7ICAgICAgICAvKiE8IEluaXRpYWwgQ1JDIHZhbHVlIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDEwICovCisgIF9fSU8gdWludDMyX3QgUE9MOyAgICAgICAgIC8qITwgQ1JDIHBvbHlub21pYWwgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTQgKi8KK30gQ1JDX1R5cGVEZWY7CisKKy8qKgorICAqIEBicmllZiBEZWJ1ZyBNQ1UKKyAgKi8KK3R5cGVkZWYgc3RydWN0Cit7CisgIF9fSU8gdWludDMyX3QgSURDT0RFOyAgICAgIC8qITwgTUNVIGRldmljZSBJRCBjb2RlLCAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8KKyAgX19JTyB1aW50MzJfdCBDUjsgICAgICAgICAgLyohPCBEZWJ1ZyBNQ1UgY29uZmlndXJhdGlvbiByZWdpc3RlciwgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLworICB1aW50MzJfdCBSRVNFUlZFRDFbMTNdOyAgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwOC0weDM4ICovCisgIF9fSU8gdWludDMyX3QgQVBCMUZaUjE7ICAgIC8qITwgRGVidWcgTUNVIENQVTEgQVBCMSBmcmVlemUgcmVnaXN0ZXIsICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4M0MgKi8KKyAgX19JTyB1aW50MzJfdCBDMkFQQjFGWlIxOyAgLyohPCBEZWJ1ZyBNQ1UgQ1BVMiBBUEIxIGZyZWV6ZSByZWdpc3RlciwgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg0MCAqLworICBfX0lPIHVpbnQzMl90IEFQQjFGWlIyOyAgICAvKiE8IERlYnVnIE1DVSBDUFUxIEFQQjEgZnJlZXplIHJlZ2lzdGVyLCAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDQ0ICovCisgIF9fSU8gdWludDMyX3QgQzJBUEIxRlpSMjsgIC8qITwgRGVidWcgTUNVIENQVTIgQVBCMSBmcmVlemUgcmVnaXN0ZXIsICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDggKi8KKyAgX19JTyB1aW50MzJfdCBBUEIyRlpSOyAgICAgLyohPCBEZWJ1ZyBNQ1UgQ1BVMSBBUEIyIGZyZWV6ZSByZWdpc3RlciwgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg0QyAqLworICBfX0lPIHVpbnQzMl90IEMyQVBCMkZaUjsgICAvKiE8IERlYnVnIE1DVSBDUFUyIEFQQjIgZnJlZXplIHJlZ2lzdGVyLCAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDUwICovCit9IERCR01DVV9UeXBlRGVmOworCisvKioKKyAgKiBAYnJpZWYgRE1BIENvbnRyb2xsZXIKKyAgKi8KK3R5cGVkZWYgc3RydWN0Cit7CisgIF9fSU8gdWludDMyX3QgQ0NSOyAgICAgICAgIC8qITwgRE1BIGNoYW5uZWwgeCBjb25maWd1cmF0aW9uIHJlZ2lzdGVyICAgICAgICAweDAwICovCisgIF9fSU8gdWludDMyX3QgQ05EVFI7ICAgICAgIC8qITwgRE1BIGNoYW5uZWwgeCBudW1iZXIgb2YgZGF0YSByZWdpc3RlciAgICAgICAweDA0ICovCisgIF9fSU8gdWludDMyX3QgQ1BBUjsgICAgICAgIC8qITwgRE1BIGNoYW5uZWwgeCBwZXJpcGhlcmFsIGFkZHJlc3MgcmVnaXN0ZXIgICAweDA4ICovCisgIF9fSU8gdWludDMyX3QgQ01BUjsgICAgICAgIC8qITwgRE1BIGNoYW5uZWwgeCBtZW1vcnkgYWRkcmVzcyByZWdpc3RlciAgICAgICAweDBDICovCisgIHVpbnQzMl90IFJFU0VSVkVEOyAgICAgICAgIC8qITwgUmVzZXJ2ZWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDEwICovCit9IERNQV9DaGFubmVsX1R5cGVEZWY7CisKK3R5cGVkZWYgc3RydWN0Cit7CisgIF9fSU8gdWludDMyX3QgSVNSOyAgICAgICAgIC8qITwgRE1BIGludGVycnVwdCBzdGF0dXMgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLworICBfX0lPIHVpbnQzMl90IElGQ1I7ICAgICAgICAvKiE8IERNQSBpbnRlcnJ1cHQgZmxhZyBjbGVhciByZWdpc3RlciwgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8KK30gRE1BX1R5cGVEZWY7CisKKy8qKgorICAqIEBicmllZiBETUEgTXVsdGlwbGV4ZXIKKyAgKi8KK3R5cGVkZWYgc3RydWN0Cit7CisgIF9fSU8gdWludDMyX3QgICBDQ1I7ICAgICAgIC8qITwgRE1BIE11bHRpcGxleGVyIENoYW5uZWwgeCBDb250cm9sIFJlZ2lzdGVyICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwMDQgKiAoY2hhbm5lbCB4KSAqLworfURNQU1VWF9DaGFubmVsX1R5cGVEZWY7CisKK3R5cGVkZWYgc3RydWN0Cit7CisgIF9fSU8gdWludDMyX3QgICBDU1I7ICAgICAgIC8qITwgRE1BIENoYW5uZWwgU3RhdHVzIFJlZ2lzdGVyICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMDgwICAgKi8KKyAgX19JTyB1aW50MzJfdCAgIENGUjsgICAgICAgLyohPCBETUEgQ2hhbm5lbCBDbGVhciBGbGFnIFJlZ2lzdGVyICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwODQgICAqLworfURNQU1VWF9DaGFubmVsU3RhdHVzX1R5cGVEZWY7CisKK3R5cGVkZWYgc3RydWN0Cit7CisgIF9fSU8gdWludDMyX3QgICBSR0NSOyAgICAgICAgLyohPCBETUEgUmVxdWVzdCBHZW5lcmF0b3IgeCBDb250cm9sIFJlZ2lzdGVyICAgICBBZGRyZXNzIG9mZnNldDogMHgwMTAwICsgMHgwMDA0ICogKFJlcSBHZW4geCkgKi8KK31ETUFNVVhfUmVxdWVzdEdlbl9UeXBlRGVmOworCit0eXBlZGVmIHN0cnVjdAoreworICBfX0lPIHVpbnQzMl90ICAgUkdTUjsgICAgICAgIC8qITwgRE1BIFJlcXVlc3QgR2VuZXJhdG9yIFN0YXR1cyBSZWdpc3RlciAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDE0MCAgICovCisgIF9fSU8gdWludDMyX3QgICBSR0NGUjsgICAgICAgLyohPCBETUEgUmVxdWVzdCBHZW5lcmF0b3IgQ2xlYXIgRmxhZyBSZWdpc3RlciAgICBBZGRyZXNzIG9mZnNldDogMHgwMTQ0ICAgKi8KK31ETUFNVVhfUmVxdWVzdEdlblN0YXR1c19UeXBlRGVmOworCisvKioKKyAgKiBAYnJpZWYgRkxBU0ggUmVnaXN0ZXJzIAorICAqLwordHlwZWRlZiBzdHJ1Y3QKK3sKKyAgX19JTyB1aW50MzJfdCBBQ1I7ICAgICAgICAgICAvKiE8IEZMQVNIIEFjY2VzcyBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAgICAgICovCisgIF9fSU8gdWludDMyX3QgUkVTRVJWRUQ7ICAgICAgLyohPCBSZXNlcnZlZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgICAgICAqLworICBfX0lPIHVpbnQzMl90IEtFWVI7ICAgICAgICAgIC8qITwgRkxBU0ggS2V5IHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICAgICAgKi8KKyAgX19JTyB1aW50MzJfdCBPUFRLRVlSOyAgICAgICAvKiE8IEZMQVNIIE9wdGlvbiBLZXkgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAgICAgICovCisgIF9fSU8gdWludDMyX3QgU1I7ICAgICAgICAgICAgLyohPCBGTEFTSCBTdGF0dXMgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgICAgICAqLworICBfX0lPIHVpbnQzMl90IENSOyAgICAgICAgICAgIC8qITwgRkxBU0ggQ29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0ICAgICAgKi8KKyAgX19JTyB1aW50MzJfdCBFQ0NSOyAgICAgICAgICAvKiE8IEZMQVNIIEVDQyByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxOCAgICAgICovCisgIHVpbnQzMl90IFJFU0VSVkVEMTsgICAgICAgICAgLyohPCBSZXNlcnZlZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MUMgICAgICAqLworICBfX0lPIHVpbnQzMl90IE9QVFI7ICAgICAgICAgIC8qITwgRkxBU0ggT3B0aW9uIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDIwICAgICAgKi8KKyAgX19JTyB1aW50MzJfdCBQQ1JPUDFBU1I7ICAgICAvKiE8IEZMQVNIIEJhbmsgMSBQQ1JPUCBhcmVhIEEgU3RhcnQgYWRkcmVzcyByZWdpc3RlciwgICBBZGRyZXNzIG9mZnNldDogMHgyNCAgICAgICovCisgIF9fSU8gdWludDMyX3QgUENST1AxQUVSOyAgICAgLyohPCBGTEFTSCBCYW5rIDEgUENST1AgYXJlYSBBIEVuZCBhZGRyZXNzIHJlZ2lzdGVyLCAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjggICAgICAqLworICBfX0lPIHVpbnQzMl90IFdSUDFBUjsgICAgICAgIC8qITwgRkxBU0ggQmFuayAxIFdSUCBhcmVhIEEgYWRkcmVzcyByZWdpc3RlciwgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDJDICAgICAgKi8KKyAgX19JTyB1aW50MzJfdCBXUlAxQlI7ICAgICAgICAvKiE8IEZMQVNIIEJhbmsgMSBXUlAgYXJlYSBCIGFkZHJlc3MgcmVnaXN0ZXIsICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgzMCAgICAgICovCisgIF9fSU8gdWludDMyX3QgUENST1AxQlNSOyAgICAgLyohPCBGTEFTSCBCYW5rIDEgUENST1AgYXJlYSBCIFN0YXJ0IGFkZHJlc3MgcmVnaXN0ZXIsICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzQgICAgICAqLworICBfX0lPIHVpbnQzMl90IFBDUk9QMUJFUjsgICAgIC8qITwgRkxBU0ggQmFuayAxIFBDUk9QIGFyZWEgQiBFbmQgYWRkcmVzcyByZWdpc3RlciwgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDM4ICAgICAgKi8KKyAgX19JTyB1aW50MzJfdCBJUENDQlI7ICAgICAgICAvKiE8IEZMQVNIIElQQ0MgZGF0YSBidWZmZXIgYWRkcmVzcywgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgzQyAgICAgICovCisgIHVpbnQzMl90IFJFU0VSVkVEMls3XTsgICAgICAgLyohPCBSZXNlcnZlZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDAtMHg1OCAqLworICBfX0lPIHVpbnQzMl90IEMyQUNSOyAgICAgICAgIC8qITwgRkxBU0ggQ29yZSBNTysgQWNjZXNzIENvbnRyb2wgUmVnaXN0ZXIgLCAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDVDICAgICAgKi8KKyAgX19JTyB1aW50MzJfdCBDMlNSOyAgICAgICAgICAvKiE8IEZMQVNIIENvcmUgTU8rIFN0YXR1cyBSZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg2MCAgICAgICovCisgIF9fSU8gdWludDMyX3QgQzJDUjsgICAgICAgICAgLyohPCBGTEFTSCBDb3JlIE1PKyBDb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NjQgICAgICAqLworICB1aW50MzJfdCBSRVNFUlZFRDNbNl07ICAgICAgIC8qITwgUmVzZXJ2ZWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDY4LTB4N0MgKi8KKyAgX19JTyB1aW50MzJfdCBTRlI7ICAgICAgICAgICAvKiE8IEZMQVNIIHNlY3VyZSBzdGFydCBhZGRyZXNzLCAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg4MCAgICAgICovCisgIF9fSU8gdWludDMyX3QgU1JSVlI7ICAgICAgICAgLyohPCBGbEFTSCBzZWN1cmUgU1JBTTIgc3RhcnQgYWRkciBhbmQgQ1BVMiByZXNldCB2ZWN0b3IgQWRkcmVzcyBvZmZzZXQ6IDB4ODQgICAgICAqLworfSBGTEFTSF9UeXBlRGVmOworCisvKioKKyAgKiBAYnJpZWYgR2VuZXJhbCBQdXJwb3NlIEkvTworICAqLwordHlwZWRlZiBzdHJ1Y3QKK3sKKyAgX19JTyB1aW50MzJfdCBNT0RFUjsgICAgICAgLyohPCBHUElPIHBvcnQgbW9kZSByZWdpc3RlciwgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAgICAgICovCisgIF9fSU8gdWludDMyX3QgT1RZUEVSOyAgICAgIC8qITwgR1BJTyBwb3J0IG91dHB1dCB0eXBlIHJlZ2lzdGVyLCAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgICAgICAqLworICBfX0lPIHVpbnQzMl90IE9TUEVFRFI7ICAgICAvKiE8IEdQSU8gcG9ydCBvdXRwdXQgc3BlZWQgcmVnaXN0ZXIsICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICAgICAgKi8KKyAgX19JTyB1aW50MzJfdCBQVVBEUjsgICAgICAgLyohPCBHUElPIHBvcnQgcHVsbC11cC9wdWxsLWRvd24gcmVnaXN0ZXIsICBBZGRyZXNzIG9mZnNldDogMHgwQyAgICAgICovCisgIF9fSU8gdWludDMyX3QgSURSOyAgICAgICAgIC8qITwgR1BJTyBwb3J0IGlucHV0IGRhdGEgcmVnaXN0ZXIsICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgICAgICAqLworICBfX0lPIHVpbnQzMl90IE9EUjsgICAgICAgICAvKiE8IEdQSU8gcG9ydCBvdXRwdXQgZGF0YSByZWdpc3RlciwgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0ICAgICAgKi8KKyAgX19JTyB1aW50MzJfdCBCU1JSOyAgICAgICAgLyohPCBHUElPIHBvcnQgYml0IHNldC9yZXNldCAgcmVnaXN0ZXIsICAgICBBZGRyZXNzIG9mZnNldDogMHgxOCAgICAgICovCisgIF9fSU8gdWludDMyX3QgTENLUjsgICAgICAgIC8qITwgR1BJTyBwb3J0IGNvbmZpZ3VyYXRpb24gbG9jayByZWdpc3RlciwgQWRkcmVzcyBvZmZzZXQ6IDB4MUMgICAgICAqLworICBfX0lPIHVpbnQzMl90IEFGUlsyXTsgICAgICAvKiE8IEdQSU8gYWx0ZXJuYXRlIGZ1bmN0aW9uIHJlZ2lzdGVycywgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDIwLTB4MjQgKi8KKyAgX19JTyB1aW50MzJfdCBCUlI7ICAgICAgICAgLyohPCBHUElPIEJpdCBSZXNldCByZWdpc3RlciwgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyOCAgICAgICovCit9IEdQSU9fVHlwZURlZjsKKworLyoqCisgICogQGJyaWVmIEludGVyLWludGVncmF0ZWQgQ2lyY3VpdCBJbnRlcmZhY2UKKyAgKi8KK3R5cGVkZWYgc3RydWN0Cit7CisgIF9fSU8gdWludDMyX3QgQ1IxOyAgICAgICAgIC8qITwgSTJDIENvbnRyb2wgcmVnaXN0ZXIgMSwgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLworICBfX0lPIHVpbnQzMl90IENSMjsgICAgICAgICAvKiE8IEkyQyBDb250cm9sIHJlZ2lzdGVyIDIsICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8KKyAgX19JTyB1aW50MzJfdCBPQVIxOyAgICAgICAgLyohPCBJMkMgT3duIGFkZHJlc3MgMSByZWdpc3RlciwgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovCisgIF9fSU8gdWludDMyX3QgT0FSMjsgICAgICAgIC8qITwgSTJDIE93biBhZGRyZXNzIDIgcmVnaXN0ZXIsICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLworICBfX0lPIHVpbnQzMl90IFRJTUlOR1I7ICAgICAvKiE8IEkyQyBUaW1pbmcgcmVnaXN0ZXIsICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgKi8KKyAgX19JTyB1aW50MzJfdCBUSU1FT1VUUjsgICAgLyohPCBJMkMgVGltZW91dCByZWdpc3RlciwgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0ICovCisgIF9fSU8gdWludDMyX3QgSVNSOyAgICAgICAgIC8qITwgSTJDIEludGVycnVwdCBhbmQgc3RhdHVzIHJlZ2lzdGVyLCBBZGRyZXNzIG9mZnNldDogMHgxOCAqLworICBfX0lPIHVpbnQzMl90IElDUjsgICAgICAgICAvKiE8IEkyQyBJbnRlcnJ1cHQgY2xlYXIgcmVnaXN0ZXIsICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MUMgKi8KKyAgX19JTyB1aW50MzJfdCBQRUNSOyAgICAgICAgLyohPCBJMkMgUEVDIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDIwICovCisgIF9fSU8gdWludDMyX3QgUlhEUjsgICAgICAgIC8qITwgSTJDIFJlY2VpdmUgZGF0YSByZWdpc3RlciwgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyNCAqLworICBfX0lPIHVpbnQzMl90IFRYRFI7ICAgICAgICAvKiE8IEkyQyBUcmFuc21pdCBkYXRhIHJlZ2lzdGVyLCAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjggKi8KK30gSTJDX1R5cGVEZWY7CisKKy8qKgorICAqIEBicmllZiBJbmRlcGVuZGVudCBXQVRDSERPRworICAqLwordHlwZWRlZiBzdHJ1Y3QKK3sKKyAgX19JTyB1aW50MzJfdCBLUjsgICAgICAgICAgLyohPCBJV0RHIEtleSByZWdpc3RlciwgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8KKyAgX19JTyB1aW50MzJfdCBQUjsgICAgICAgICAgLyohPCBJV0RHIFByZXNjYWxlciByZWdpc3RlciwgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8KKyAgX19JTyB1aW50MzJfdCBSTFI7ICAgICAgICAgLyohPCBJV0RHIFJlbG9hZCByZWdpc3RlciwgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8KKyAgX19JTyB1aW50MzJfdCBTUjsgICAgICAgICAgLyohPCBJV0RHIFN0YXR1cyByZWdpc3RlciwgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8KKyAgX19JTyB1aW50MzJfdCBXSU5SOyAgICAgICAgLyohPCBJV0RHIFdpbmRvdyByZWdpc3RlciwgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgKi8KK30gSVdER19UeXBlRGVmOworCisvKioKKyAgKiBAYnJpZWYgTFBUSU1FUgorICAqLwordHlwZWRlZiBzdHJ1Y3QKK3sKKyAgX19JTyB1aW50MzJfdCBJU1I7ICAgICAgICAgLyohPCBMUFRJTSBJbnRlcnJ1cHQgYW5kIFN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8KKyAgX19JTyB1aW50MzJfdCBJQ1I7ICAgICAgICAgLyohPCBMUFRJTSBJbnRlcnJ1cHQgQ2xlYXIgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8KKyAgX19JTyB1aW50MzJfdCBJRVI7ICAgICAgICAgLyohPCBMUFRJTSBJbnRlcnJ1cHQgRW5hYmxlIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8KKyAgX19JTyB1aW50MzJfdCBDRkdSOyAgICAgICAgLyohPCBMUFRJTSBDb25maWd1cmF0aW9uIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8KKyAgX19JTyB1aW50MzJfdCBDUjsgICAgICAgICAgLyohPCBMUFRJTSBDb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgKi8KKyAgX19JTyB1aW50MzJfdCBDTVA7ICAgICAgICAgLyohPCBMUFRJTSBDb21wYXJlIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTQgKi8KKyAgX19JTyB1aW50MzJfdCBBUlI7ICAgICAgICAgLyohPCBMUFRJTSBBdXRvcmVsb2FkIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTggKi8KKyAgX19JTyB1aW50MzJfdCBDTlQ7ICAgICAgICAgLyohPCBMUFRJTSBDb3VudGVyIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MUMgKi8KKyAgX19JTyB1aW50MzJfdCBPUjsgICAgICAgICAgLyohPCBMUFRJTSBPcHRpb24gcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjAgKi8KK30gTFBUSU1fVHlwZURlZjsKKworLyoqCisgICogQGJyaWVmIFBvd2VyIENvbnRyb2wKKyAgKi8KK3R5cGVkZWYgc3RydWN0Cit7CisgIF9fSU8gdWludDMyX3QgQ1IxOyAgICAgICAgICAvKiE8IFBXUiBQb3dlciBDb250cm9sIFJlZ2lzdGVyIDEsICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8KKyAgX19JTyB1aW50MzJfdCBDUjI7ICAgICAgICAgIC8qITwgUFdSIFBvd2VyIENvbnRyb2wgUmVnaXN0ZXIgMiwgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLworICBfX0lPIHVpbnQzMl90IENSMzsgICAgICAgICAgLyohPCBQV1IgUG93ZXIgQ29udHJvbCBSZWdpc3RlciAzLCAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovCisgIF9fSU8gdWludDMyX3QgQ1I0OyAgICAgICAgICAvKiE8IFBXUiBQb3dlciBDb250cm9sIFJlZ2lzdGVyIDQsICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8KKyAgX19JTyB1aW50MzJfdCBTUjE7ICAgICAgICAgIC8qITwgUFdSIFBvd2VyIFN0YXR1cyBSZWdpc3RlciAxLCAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLworICBfX0lPIHVpbnQzMl90IFNSMjsgICAgICAgICAgLyohPCBQV1IgUG93ZXIgU3RhdHVzIFJlZ2lzdGVyIDIsICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0ICovCisgIF9fSU8gdWludDMyX3QgU0NSOyAgICAgICAgICAvKiE8IFBXUiBQb3dlciBTdGF0dXMgUmVzZXQgUmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTggKi8KKyAgX19JTyB1aW50MzJfdCBDUjU7ICAgICAgICAgIC8qITwgUFdSIFBvd2VyIENvbnRyb2wgUmVnaXN0ZXIgNSwgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxQyAqLworICBfX0lPIHVpbnQzMl90IFBVQ1JBOyAgICAgICAgLyohPCBQV1IgUHVsbC1VcCBDb250cm9sIFJlZ2lzdGVyIG9mIHBvcnQgQSwgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDIwICovCisgIF9fSU8gdWludDMyX3QgUERDUkE7ICAgICAgICAvKiE8IFBXUiBQdWxsLURvd24gQ29udHJvbCBSZWdpc3RlciBvZiBwb3J0IEEsICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjQgKi8KKyAgX19JTyB1aW50MzJfdCBQVUNSQjsgICAgICAgIC8qITwgUFdSIFB1bGwtVXAgQ29udHJvbCBSZWdpc3RlciBvZiBwb3J0IEIsICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyOCAqLworICBfX0lPIHVpbnQzMl90IFBEQ1JCOyAgICAgICAgLyohPCBQV1IgUHVsbC1Eb3duIENvbnRyb2wgUmVnaXN0ZXIgb2YgcG9ydCBCLCAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDJDICovCisgIF9fSU8gdWludDMyX3QgUFVDUkM7ICAgICAgICAvKiE8IFBXUiBQdWxsLVVwIENvbnRyb2wgUmVnaXN0ZXIgb2YgcG9ydCBDLCAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzAgKi8KKyAgX19JTyB1aW50MzJfdCBQRENSQzsgICAgICAgIC8qITwgUFdSIFB1bGwtRG93biBDb250cm9sIFJlZ2lzdGVyIG9mIHBvcnQgQywgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgzNCAqLworICBfX0lPIHVpbnQzMl90IFBVQ1JEOyAgICAgICAgLyohPCBQV1IgUHVsbC1VcCBDb250cm9sIFJlZ2lzdGVyIG9mIHBvcnQgRCwgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDM4ICovCisgIF9fSU8gdWludDMyX3QgUERDUkQ7ICAgICAgICAvKiE8IFBXUiBQdWxsLURvd24gQ29udHJvbCBSZWdpc3RlciBvZiBwb3J0IEQsICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4M0MgKi8KKyAgX19JTyB1aW50MzJfdCBQVUNSRTsgICAgICAgIC8qITwgUFdSIFB1bGwtVXAgQ29udHJvbCBSZWdpc3RlciBvZiBwb3J0IEUsICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg0MCAqLworICBfX0lPIHVpbnQzMl90IFBEQ1JFOyAgICAgICAgLyohPCBQV1IgUHVsbC1Eb3duIENvbnRyb2wgUmVnaXN0ZXIgb2YgcG9ydCBFLCAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDQ0ICovCisgICAgICAgdWludDMyX3QgUkVTRVJWRUQwWzRdOyAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDgtMHg1NCAqLworICBfX0lPIHVpbnQzMl90IFBVQ1JIOyAgICAgICAgLyohPCBQV1IgUHVsbC1VcCBDb250cm9sIFJlZ2lzdGVyIG9mIHBvcnQgSCwgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDU4ICovCisgIF9fSU8gdWludDMyX3QgUERDUkg7ICAgICAgICAvKiE8IFBXUiBQdWxsLURvd24gQ29udHJvbCBSZWdpc3RlciBvZiBwb3J0IEgsICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NUMgKi8KKyAgICAgICB1aW50MzJfdCBSRVNFUlZFRDFbOF07IC8qITwgUmVzZXJ2ZWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg2MC0weDdDICovCisgIF9fSU8gdWludDMyX3QgQzJDUjE7ICAgICAgICAvKiE8IFBXUiBQb3dlciBDb250cm9sIFJlZ2lzdGVyIDEgZm9yIENQVTIsICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4ODAgKi8KKyAgX19JTyB1aW50MzJfdCBDMkNSMzsgICAgICAgIC8qITwgUFdSIFBvd2VyIENvbnRyb2wgUmVnaXN0ZXIgMyBmb3IgQ1BVMiwgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg4NCAqLworICBfX0lPIHVpbnQzMl90IEVYVFNDUjsgICAgICAgLyohPCBQV1IgUG93ZXIgU3RhdHVzIFJlc2V0IFJlZ2lzdGVyIGZvciBDUFUyLCAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDg4ICovCit9IFBXUl9UeXBlRGVmOyAgICAgICAgICAgICAgICAgCisKKy8qKgorICAqIEBicmllZiBRVUFEIFNlcmlhbCBQZXJpcGhlcmFsIEludGVyZmFjZQorICAqLwordHlwZWRlZiBzdHJ1Y3QKK3sKKyAgX19JTyB1aW50MzJfdCBDUjsgICAgICAgICAgLyohPCBRVUFEU1BJIENvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8KKyAgX19JTyB1aW50MzJfdCBEQ1I7ICAgICAgICAgLyohPCBRVUFEU1BJIERldmljZSBDb25maWd1cmF0aW9uIHJlZ2lzdGVyLCAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8KKyAgX19JTyB1aW50MzJfdCBTUjsgICAgICAgICAgLyohPCBRVUFEU1BJIFN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8KKyAgX19JTyB1aW50MzJfdCBGQ1I7ICAgICAgICAgLyohPCBRVUFEU1BJIEZsYWcgQ2xlYXIgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8KKyAgX19JTyB1aW50MzJfdCBETFI7ICAgICAgICAgLyohPCBRVUFEU1BJIERhdGEgTGVuZ3RoIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgKi8KKyAgX19JTyB1aW50MzJfdCBDQ1I7ICAgICAgICAgLyohPCBRVUFEU1BJIENvbW11bmljYXRpb24gQ29uZmlndXJhdGlvbiByZWdpc3RlciwgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTQgKi8KKyAgX19JTyB1aW50MzJfdCBBUjsgICAgICAgICAgLyohPCBRVUFEU1BJIEFkZHJlc3MgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTggKi8KKyAgX19JTyB1aW50MzJfdCBBQlI7ICAgICAgICAgLyohPCBRVUFEU1BJIEFsdGVybmF0ZSBCeXRlcyByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MUMgKi8KKyAgX19JTyB1aW50MzJfdCBEUjsgICAgICAgICAgLyohPCBRVUFEU1BJIERhdGEgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjAgKi8KKyAgX19JTyB1aW50MzJfdCBQU01LUjsgICAgICAgLyohPCBRVUFEU1BJIFBvbGxpbmcgU3RhdHVzIE1hc2sgcmVnaXN0ZXIsICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjQgKi8KKyAgX19JTyB1aW50MzJfdCBQU01BUjsgICAgICAgLyohPCBRVUFEU1BJIFBvbGxpbmcgU3RhdHVzIE1hdGNoIHJlZ2lzdGVyLCAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjggKi8KKyAgX19JTyB1aW50MzJfdCBQSVI7ICAgICAgICAgLyohPCBRVUFEU1BJIFBvbGxpbmcgSW50ZXJ2YWwgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MkMgKi8KKyAgX19JTyB1aW50MzJfdCBMUFRSOyAgICAgICAgLyohPCBRVUFEU1BJIExvdyBQb3dlciBUaW1lb3V0IHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzAgKi8KK30gIFFVQURTUElfVHlwZURlZjsKKworLyoqCisgICogQGJyaWVmIFJlc2V0IGFuZCBDbG9jayBDb250cm9sCisgICovCit0eXBlZGVmIHN0cnVjdAoreworICBfX0lPIHVpbnQzMl90IENSOyAgICAgICAgICAgLyohPCBSQ0MgY2xvY2sgIENvbnRyb2wgUmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovCisgIF9fSU8gdWludDMyX3QgSUNTQ1I7ICAgICAgICAvKiE8IFJDQyBJbnRlcm5hbCBDbG9jayBTb3VyY2VzIENhbGlicmF0aW9uIFJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8KKyAgX19JTyB1aW50MzJfdCBDRkdSOyAgICAgICAgIC8qITwgUkNDIENsb2NrcyBDb25maWd1cmF0aW9uIFJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLworICBfX0lPIHVpbnQzMl90IFBMTENGR1I7ICAgICAgLyohPCBSQ0MgU3lzdGVtIFBMTCBjb25maWd1cmF0aW9uIFJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDBDICovCit1aW50MzJfdCBSRVNFUlZFRDExOyAgICAgICAgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgKi8KK3VpbnQzMl90IFJFU0VSVkVEMDsgICAgICAgICAgIC8qITwgUmVzZXJ2ZWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLworICBfX0lPIHVpbnQzMl90IENJRVI7ICAgICAgICAgLyohPCBSQ0MgQ2xvY2sgSW50ZXJydXB0IEVuYWJsZSBSZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE4ICovCisgIF9fSU8gdWludDMyX3QgQ0lGUjsgICAgICAgICAvKiE8IFJDQyBDbG9jayBJbnRlcnJ1cHQgRmxhZyBSZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MUMgKi8KKyAgX19JTyB1aW50MzJfdCBDSUNSOyAgICAgICAgIC8qITwgUkNDIENsb2NrIEludGVycnVwdCBDbGVhciBSZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyMCAqLworICBfX0lPIHVpbnQzMl90IFNNUFNDUjsgICAgICAgLyohPCBSQ0MgQ2xvY2sgSW50ZXJydXB0IENsZWFyIFJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDI0ICovCisgIF9fSU8gdWludDMyX3QgQUhCMVJTVFI7ICAgICAvKiE8IFJDQyBBSEIxIHBlcmlwaGVyYWwgcmVzZXQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjggKi8KKyAgX19JTyB1aW50MzJfdCBBSEIyUlNUUjsgICAgIC8qITwgUkNDIEFIQjIgcGVyaXBoZXJhbCByZXNldCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyQyAqLworICBfX0lPIHVpbnQzMl90IEFIQjNSU1RSOyAgICAgLyohPCBSQ0MgQUhCMyAmIEFIQjQgcGVyaXBoZXJhbCByZXNldCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDMwICovCit1aW50MzJfdCBSRVNFUlZFRDE7ICAgICAgICAgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzQgKi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyAgX19JTyB1aW50MzJfdCBBUEIxUlNUUjE7ICAgIC8qITwgUkNDIEFQQjEgcGVyaXBoZXJhbCByZXNldCByZWdpc3RlciAxLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgzOCAqLworICBfX0lPIHVpbnQzMl90IEFQQjFSU1RSMjsgICAgLyohPCBSQ0MgQVBCMSBwZXJpcGhlcmFsIHJlc2V0IHJlZ2lzdGVyIDIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDNDICovCisgIF9fSU8gdWludDMyX3QgQVBCMlJTVFI7ICAgICAvKiE8IFJDQyBBUEIyIHBlcmlwaGVyYWwgcmVzZXQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDAgKi8KKyAgX19JTyB1aW50MzJfdCBBUEIzUlNUUjsgICAgIC8qITwgUkNDIEFQQjMgcGVyaXBoZXJhbCByZXNldCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg0NCAqLworICBfX0lPIHVpbnQzMl90IEFIQjFFTlI7ICAgICAgLyohPCBSQ0MgQUhCMSBwZXJpcGhlcmFsIGNsb2NrcyBlbmFibGUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDQ4ICovICAKKyAgX19JTyB1aW50MzJfdCBBSEIyRU5SOyAgICAgIC8qITwgUkNDIEFIQjIgcGVyaXBoZXJhbCBjbG9ja3MgZW5hYmxlIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg0QyAqLyAgCisgIF9fSU8gdWludDMyX3QgQUhCM0VOUjsgICAgICAvKiE8IFJDQyBBSEIzICYgQUhCNCBwZXJpcGhlcmFsIGNsb2NrcyBlbmFibGUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NTAgKi8gIAordWludDMyX3QgUkVTRVJWRUQyOyAgICAgICAgICAgLyohPCBSZXNlcnZlZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDU0ICovCisgIF9fSU8gdWludDMyX3QgQVBCMUVOUjE7ICAgICAvKiE8IFJDQyBBUEIxIHBlcmlwaGVyYWwgY2xvY2tzIGVuYWJsZSByZWdpc3RlciAxLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NTggKi8KKyAgX19JTyB1aW50MzJfdCBBUEIxRU5SMjsgICAgIC8qITwgUkNDIEFQQjEgcGVyaXBoZXJhbCBjbG9ja3MgZW5hYmxlIHJlZ2lzdGVyIDIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg1QyAqLworICBfX0lPIHVpbnQzMl90IEFQQjJFTlI7ICAgICAgLyohPCBSQ0MgQVBCMiBwZXJpcGhlcmFsIGNsb2NrcyBlbmFibGUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDYwICovCit1aW50MzJfdCBSRVNFUlZFRDM7ICAgICAgICAgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NjQgKi8KKyAgX19JTyB1aW50MzJfdCBBSEIxU01FTlI7ICAgIC8qITwgUkNDIEFIQjEgcGVyaXBoZXJhbCBjbG9ja3MgZW5hYmxlIGluIHNsZWVwIGFuZCBzdG9wIG1vZGVzIHJlZ2lzdGVyLCAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg2OCAqLworICBfX0lPIHVpbnQzMl90IEFIQjJTTUVOUjsgICAgLyohPCBSQ0MgQUhCMiBwZXJpcGhlcmFsIGNsb2NrcyBlbmFibGUgaW4gc2xlZXAgYW5kIHN0b3AgbW9kZXMgcmVnaXN0ZXIsICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDZDICovCisgIF9fSU8gdWludDMyX3QgQUhCM1NNRU5SOyAgICAvKiE8IFJDQyBBSEIzICYgQUhCNCBwZXJpcGhlcmFsIGNsb2NrcyBlbmFibGUgaW4gc2xlZXAgYW5kIHN0b3AgbW9kZXMgcmVnaXN0ZXIsICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NzAgKi8KK3VpbnQzMl90IFJFU0VSVkVENDsgICAgICAgICAgIC8qITwgUmVzZXJ2ZWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg3NCAqLworICBfX0lPIHVpbnQzMl90IEFQQjFTTUVOUjE7ICAgLyohPCBSQ0MgQVBCMSBwZXJpcGhlcmFsIGNsb2NrcyBlbmFibGUgaW4gc2xlZXAgbW9kZSBhbmQgc3RvcCBtb2RlcyByZWdpc3RlciAxLCAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDc4ICovCisgIF9fSU8gdWludDMyX3QgQVBCMVNNRU5SMjsgICAvKiE8IFJDQyBBUEIxIHBlcmlwaGVyYWwgY2xvY2tzIGVuYWJsZSBpbiBzbGVlcCBtb2RlIGFuZCBzdG9wIG1vZGVzIHJlZ2lzdGVyIDIsICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4N0MgKi8KKyAgX19JTyB1aW50MzJfdCBBUEIyU01FTlI7ICAgIC8qITwgUkNDIEFQQjIgcGVyaXBoZXJhbCBjbG9ja3MgZW5hYmxlIGluIHNsZWVwIG1vZGUgYW5kIHN0b3AgbW9kZXMgcmVnaXN0ZXIsICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg4MCAqLwordWludDMyX3QgUkVTRVJWRUQ1OyAgICAgICAgICAgLyohPCBSZXNlcnZlZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDg0ICovIAorICBfX0lPIHVpbnQzMl90IENDSVBSOyAgICAgICAgLyohPCBSQ0MgUGVyaXBoZXJhbHMgQ2xvY2sgQ29uZmlndXJhdGlvbiBJbmRlcGVuZGVudCBSZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDg4ICovCit1aW50MzJfdCBSRVNFUlZFRDY7ICAgICAgICAgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4OEMgKi8KKyAgX19JTyB1aW50MzJfdCBCRENSOyAgICAgICAgIC8qITwgUkNDIEJhY2t1cCBEb21haW4gQ29udHJvbCBSZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg5MCAqLworICBfX0lPIHVpbnQzMl90IENTUjsgICAgICAgICAgLyohPCBSQ0MgQ29udHJvbCBhbmQgU3RhdHVzIFJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDk0ICovIAorICBfX0lPIHVpbnQzMl90IENSUkNSOyAgICAgICAgLyohPCBSQ0MgQ2xvY2sgUmVjb3ZlcnkgUkMgUmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDk4ICovCisgIF9fSU8gdWludDMyX3QgSFNFQ1I7ICAgICAgICAvKiE8IFJDQyBIU0UgQ2xvY2sgUmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4OUMgKi8KK3VpbnQzMl90IFJFU0VSVkVEN1syNl07ICAgICAgIC8qITwgUmVzZXJ2ZWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHhBMC0weDEwNCAqLworICBfX0lPIHVpbnQzMl90IEVYVENGR1I7ICAgICAgLyohPCBSQ0MgRXh0ZW5kZWQgQ2xvY2sgUmVjb3ZlcnkgUmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDEwOCAqLworICBfX0lPIHVpbnQzMl90IFJFU0VSVkVEOFsxNV07IC8qITwgUmVzZXJ2ZWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDEwQy0weDE0NCAqLworICBfX0lPIHVpbnQzMl90IEMyQUhCMUVOUjsgICAvKiE8IFJSQ0MgQUhCMSBwZXJpcGhlcmFsIENQVTIgY2xvY2tzIGVuYWJsZSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTQ4ICovCisgIF9fSU8gdWludDMyX3QgQzJBSEIyRU5SOyAgIC8qITwgUkNDIEFIQjIgcGVyaXBoZXJhbCBDUFUyIGNsb2NrcyBlbmFibGUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNEMgKi8KKyAgX19JTyB1aW50MzJfdCBDMkFIQjNFTlI7ICAgLyohPCBSQ0MgQUhCMyAmIEFIQjQgcGVyaXBoZXJhbCBDUFUyIGNsb2NrcyBlbmFibGUgcmVnaXN0ZXIsLCAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE1MCAqLwordWludDMyX3QgUkVTRVJWRUQ5OyAgICAgICAgICAgLyohPCBSZXNlcnZlZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE1NCAqLworICBfX0lPIHVpbnQzMl90IEMyQVBCMUVOUjE7ICAvKiE8IFJDQyBBUEIxIHBlcmlwaGVyYWwgQ1BVMiBjbG9ja3MgZW5hYmxlIHJlZ2lzdGVyIDEsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTU4ICovCisgIF9fSU8gdWludDMyX3QgQzJBUEIxRU5SMjsgIC8qITwgUkNDIEFQQjEgcGVyaXBoZXJhbCBDUFUyIGNsb2NrcyBlbmFibGUgcmVnaXN0ZXIgMiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNUMgKi8KKyAgX19JTyB1aW50MzJfdCBDMkFQQjJFTlI7ICAgLyohPCBSQ0MgQVBCMiBwZXJpcGhlcmFsIENQVTIgY2xvY2tzIGVuYWJsZSByZWdpc3RlciAxLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE2MCAqLworICBfX0lPIHVpbnQzMl90IEMyQVBCM0VOUjsgICAvKiE8IFJDQyBBUEIzIHBlcmlwaGVyYWwgQ1BVMiBjbG9ja3MgZW5hYmxlIHJlZ2lzdGVyIDEsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTY0ICovCisgIF9fSU8gdWludDMyX3QgQzJBSEIxU01FTlI7IC8qITwgUkNDIEFIQjEgcGVyaXBoZXJhbCBDUFUyIGNsb2NrcyBlbmFibGUgaW4gc2xlZXAgYW5kIHN0b3AgbW9kZXMgcmVnaXN0ZXIsICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNjggKi8KKyAgX19JTyB1aW50MzJfdCBDMkFIQjJTTUVOUjsgLyohPCBSQ0MgQUhCMiBwZXJpcGhlcmFsIENQVTIgY2xvY2tzIGVuYWJsZSBpbiBzbGVlcCBhbmQgc3RvcCBtb2RlcyByZWdpc3RlciwgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE2QyAqLworICBfX0lPIHVpbnQzMl90IEMyQUhCM1NNRU5SOyAvKiE8IFJDQyBBSEIzICYgQUhCNCBwZXJpcGhlcmFsIENQVTIgY2xvY2tzIGVuYWJsZSBpbiBzbGVlcCBhbmQgc3RvcCBtb2RlcyByZWdpc3RlciwgQWRkcmVzcyBvZmZzZXQ6IDB4MTcwICovCit1aW50MzJfdCBSRVNFUlZFRDEwOyAgICAgICAgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgIF9fSU8gdWludDMyX3QgQzJBUEIxU01FTlIxOy8qITwgUkNDIEFQQjEgcGVyaXBoZXJhbCBDUFUyIGNsb2NrcyBlbmFibGUgaW4gc2xlZXAgbW9kZSBhbmQgc3RvcCBtb2RlcyByZWdpc3RlciAxLCBBZGRyZXNzIG9mZnNldDogMHgxNzggKi8KKyAgX19JTyB1aW50MzJfdCBDMkFQQjFTTUVOUjI7LyohPCBSQ0MgQVBCMSBwZXJpcGhlcmFsIENQVTIgY2xvY2tzIGVuYWJsZSBpbiBzbGVlcCBtb2RlIGFuZCBzdG9wIG1vZGVzIHJlZ2lzdGVyIDIsIEFkZHJlc3Mgb2Zmc2V0OiAweDE3QyAqLworICBfX0lPIHVpbnQzMl90IEMyQVBCMlNNRU5SOyAvKiE8IFJDQyBBUEIyIHBlcmlwaGVyYWwgQ1BVMiBjbG9ja3MgZW5hYmxlIGluIHNsZWVwIG1vZGUgYW5kIHN0b3AgbW9kZXMgcmVnaXN0ZXIsICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTgwICovCisgIF9fSU8gdWludDMyX3QgQzJBUEIzU01FTlI7IC8qITwgUkNDIEFQQjMgcGVyaXBoZXJhbCBDUFUyIGNsb2NrcyBlbmFibGUgaW4gc2xlZXAgbW9kZSBhbmQgc3RvcCBtb2RlcyByZWdpc3RlciwgICBBZGRyZXNzIG9mZnNldDogMHgxODQgKi8KK30gUkNDX1R5cGVEZWY7CisKKworCisvKiogCisgICogQGJyaWVmIFJlYWwtVGltZSBDbG9jaworICAqLwordHlwZWRlZiBzdHJ1Y3QKK3sKKyAgX19JTyB1aW50MzJfdCBUUjsgICAgICAgICAvKiE8IFJUQyB0aW1lIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8KKyAgX19JTyB1aW50MzJfdCBEUjsgICAgICAgICAvKiE8IFJUQyBkYXRlIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8KKyAgX19JTyB1aW50MzJfdCBDUjsgICAgICAgICAvKiE8IFJUQyBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8KKyAgX19JTyB1aW50MzJfdCBJU1I7ICAgICAgICAvKiE8IFJUQyBpbml0aWFsaXphdGlvbiBhbmQgc3RhdHVzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8KKyAgX19JTyB1aW50MzJfdCBQUkVSOyAgICAgICAvKiE8IFJUQyBwcmVzY2FsZXIgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgKi8KKyAgX19JTyB1aW50MzJfdCBXVVRSOyAgICAgICAvKiE8IFJUQyB3YWtldXAgdGltZXIgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTQgKi8KKyAgICAgICB1aW50MzJfdCBSRVNFUlZFRDsgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTggKi8KKyAgX19JTyB1aW50MzJfdCBBTFJNQVI7ICAgICAvKiE8IFJUQyBhbGFybSBBIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MUMgKi8KKyAgX19JTyB1aW50MzJfdCBBTFJNQlI7ICAgICAvKiE8IFJUQyBhbGFybSBCIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjAgKi8KKyAgX19JTyB1aW50MzJfdCBXUFI7ICAgICAgICAvKiE8IFJUQyB3cml0ZSBwcm90ZWN0aW9uIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjQgKi8KKyAgX19JTyB1aW50MzJfdCBTU1I7ICAgICAgICAvKiE8IFJUQyBzdWIgc2Vjb25kIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjggKi8KKyAgX19JTyB1aW50MzJfdCBTSElGVFI7ICAgICAvKiE8IFJUQyBzaGlmdCBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MkMgKi8KKyAgX19JTyB1aW50MzJfdCBUU1RSOyAgICAgICAvKiE8IFJUQyB0aW1lIHN0YW1wIHRpbWUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzAgKi8KKyAgX19JTyB1aW50MzJfdCBUU0RSOyAgICAgICAvKiE8IFJUQyB0aW1lIHN0YW1wIGRhdGUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzQgKi8KKyAgX19JTyB1aW50MzJfdCBUU1NTUjsgICAgICAvKiE8IFJUQyB0aW1lLXN0YW1wIHN1YiBzZWNvbmQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzggKi8KKyAgX19JTyB1aW50MzJfdCBDQUxSOyAgICAgICAvKiE8IFJUQyBjYWxpYnJhdGlvbiByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4M0MgKi8KKyAgX19JTyB1aW50MzJfdCBUQU1QQ1I7ICAgICAvKiE8IFJUQyB0YW1wZXIgY29uZmlndXJhdGlvbiByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDAgKi8KKyAgX19JTyB1aW50MzJfdCBBTFJNQVNTUjsgICAvKiE8IFJUQyBhbGFybSBBIHN1YiBzZWNvbmQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDQgKi8KKyAgX19JTyB1aW50MzJfdCBBTFJNQlNTUjsgICAvKiE8IFJUQyBhbGFybSBCIHN1YiBzZWNvbmQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDggKi8KKyAgX19JTyB1aW50MzJfdCBPUjsgICAgICAgICAvKiE8IFJUQyBvcHRpb24gcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQgIDB4NEMgKi8KKyAgX19JTyB1aW50MzJfdCBCS1AwUjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NTAgKi8KKyAgX19JTyB1aW50MzJfdCBCS1AxUjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NTQgKi8KKyAgX19JTyB1aW50MzJfdCBCS1AyUjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NTggKi8KKyAgX19JTyB1aW50MzJfdCBCS1AzUjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NUMgKi8KKyAgX19JTyB1aW50MzJfdCBCS1A0UjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgNCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NjAgKi8KKyAgX19JTyB1aW50MzJfdCBCS1A1UjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgNSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NjQgKi8KKyAgX19JTyB1aW50MzJfdCBCS1A2UjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgNiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NjggKi8KKyAgX19JTyB1aW50MzJfdCBCS1A3UjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgNywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NkMgKi8KKyAgX19JTyB1aW50MzJfdCBCS1A4UjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgOCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NzAgKi8KKyAgX19JTyB1aW50MzJfdCBCS1A5UjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgOSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NzQgKi8KKyAgX19JTyB1aW50MzJfdCBCS1AxMFI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NzggKi8KKyAgX19JTyB1aW50MzJfdCBCS1AxMVI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTEsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4N0MgKi8KKyAgX19JTyB1aW50MzJfdCBCS1AxMlI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4ODAgKi8KKyAgX19JTyB1aW50MzJfdCBCS1AxM1I7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4ODQgKi8KKyAgX19JTyB1aW50MzJfdCBCS1AxNFI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4ODggKi8KKyAgX19JTyB1aW50MzJfdCBCS1AxNVI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTUsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4OEMgKi8KKyAgX19JTyB1aW50MzJfdCBCS1AxNlI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTYsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4OTAgKi8KKyAgX19JTyB1aW50MzJfdCBCS1AxN1I7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTcsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4OTQgKi8KKyAgX19JTyB1aW50MzJfdCBCS1AxOFI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTgsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4OTggKi8KKyAgX19JTyB1aW50MzJfdCBCS1AxOVI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTksICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4OUMgKi8KK30gUlRDX1R5cGVEZWY7CisKKworCisKKy8qKgorICAqIEBicmllZiBTZXJpYWwgUGVyaXBoZXJhbCBJbnRlcmZhY2UKKyAgKi8KK3R5cGVkZWYgc3RydWN0Cit7CisgIF9fSU8gdWludDMyX3QgQ1IxOyAgICAgIC8qITwgU1BJIENvbnRyb2wgcmVnaXN0ZXIgMSAobm90IHVzZWQgaW4gSTJTIG1vZGUpLCAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLworICBfX0lPIHVpbnQzMl90IENSMjsgICAgICAvKiE8IFNQSSBDb250cm9sIHJlZ2lzdGVyIDIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8KKyAgX19JTyB1aW50MzJfdCBTUjsgICAgICAgLyohPCBTUEkgU3RhdHVzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovCisgIF9fSU8gdWludDMyX3QgRFI7ICAgICAgIC8qITwgU1BJIGRhdGEgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLworICBfX0lPIHVpbnQzMl90IENSQ1BSOyAgICAvKiE8IFNQSSBDUkMgcG9seW5vbWlhbCByZWdpc3RlciAobm90IHVzZWQgaW4gSTJTIG1vZGUpLCAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgKi8KKyAgX19JTyB1aW50MzJfdCBSWENSQ1I7ICAgLyohPCBTUEkgUnggQ1JDIHJlZ2lzdGVyIChub3QgdXNlZCBpbiBJMlMgbW9kZSksICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0ICovCisgIF9fSU8gdWludDMyX3QgVFhDUkNSOyAgIC8qITwgU1BJIFR4IENSQyByZWdpc3RlciAobm90IHVzZWQgaW4gSTJTIG1vZGUpLCAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxOCAqLworICBfX0lPIHVpbnQzMl90IEkyU0NGR1I7ICAvKiE8IFNQSV9JMlMgY29uZmlndXJhdGlvbiByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MUMgKi8KKyAgX19JTyB1aW50MzJfdCBJMlNQUjsgICAgLyohPCBTUElfSTJTIHByZXNjYWxlciByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDIwICovCit9IFNQSV9UeXBlRGVmOworCQorLyoqCisgICogQGJyaWVmIFN5c3RlbSBjb25maWd1cmF0aW9uIGNvbnRyb2xsZXIKKyAgKi8KK3R5cGVkZWYgc3RydWN0Cit7CisgIF9fSU8gdWludDMyX3QgTUVNUk1QOyAgICAgICAgICAgIC8qITwgU1lTQ0ZHIG1lbW9yeSByZW1hcCByZWdpc3RlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgICAgICAgKi8KKyAgX19JTyB1aW50MzJfdCBDRkdSMTsgICAgICAgICAgICAgLyohPCBTWVNDRkcgY29uZmlndXJhdGlvbiByZWdpc3RlciAxLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAgICAgICAqLworICBfX0lPIHVpbnQzMl90IEVYVElDUls0XTsgICAgICAgICAvKiE8IFNZU0NGRyBleHRlcm5hbCBpbnRlcnJ1cHQgY29uZmlndXJhdGlvbiByZWdpc3RlcnMsICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4LTB4MTQgICovCisgIF9fSU8gdWludDMyX3QgU0NTUjsgICAgICAgICAgICAgIC8qITwgU1lTQ0ZHIFNSQU0yIGNvbnRyb2wgYW5kIHN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTggICAgICAgKi8KKyAgX19JTyB1aW50MzJfdCBDRkdSMjsgICAgICAgICAgICAgLyohPCBTWVNDRkcgY29uZmlndXJhdGlvbiByZWdpc3RlciAyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxQyAgICAgICAqLworICBfX0lPIHVpbnQzMl90IFNXUFIxOyAgICAgICAgICAgICAvKiE8IFNZU0NGRyBTUkFNMiB3cml0ZSBwcm90ZWN0aW9uIHJlZ2lzdGVyIHBhcnQgMSwgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDIwICAgICAgICovCisgIF9fSU8gdWludDMyX3QgU0tSOyAgICAgICAgICAgICAgIC8qITwgU1lTQ0ZHIFNSQU0yIGtleSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjQgICAgICAgKi8KKyAgX19JTyB1aW50MzJfdCBTV1BSMjsgICAgICAgICAgICAgLyohPCBTWVNDRkcgd3JpdGUgcHJvdGVjdGlvbiByZWdpc3RlciBwYXJ0IDIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyOCAgICAgICAqLworICAgICAgIHVpbnQzMl90IFJFU0VSVkVEMVs1M107ICAgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDJDLTB4RkMgICovCisgIF9fSU8gdWludDMyX3QgSU1SMTsgICAgICAgICAgICAgIC8qITwgU1lTQ0ZHIENQVTEgKENPUlRFWCBNNCkgaW50ZXJydXB0IG1hc2tzIGNvbnRyb2wtc3RhdHVzIHJlZ2lzdGVyIHBhcnQgMSwgQWRkcmVzcyBvZmZzZXQ6IDB4MTAwICAgICAgKi8KKyAgX19JTyB1aW50MzJfdCBJTVIyOyAgICAgICAgICAgICAgLyohPCBTWVNDRkcgQ1BVMSAoQ09SVEVYIE00KSBpbnRlcnJ1cHQgbWFza3MgY29udHJvbC1zdGF0dXMgcmVnaXN0ZXIgcGFydCAyLCBBZGRyZXNzIG9mZnNldDogMHgxMDQgICAgICAqLworICBfX0lPIHVpbnQzMl90IEMySU1SMTsgICAgICAgICAgICAvKiE8IFNZU0NGRyBDUFUyIChDT1JURVggTTApIGludGVycnVwdCBtYXNrcyBjb250cm9sLXN0YXR1cyByZWdpc3RlciBwYXJ0IDEsIEFkZHJlc3Mgb2Zmc2V0OiAweDEwOCAgICAgICovCisgIF9fSU8gdWludDMyX3QgQzJJTVIyOyAgICAgICAgICAgIC8qITwgU1lTQ0ZHIENQVTIgKENPUlRFWCBNMCkgaW50ZXJydXB0IG1hc2tzIGNvbnRyb2wtc3RhdHVzIHJlZ2lzdGVyIHBhcnQgMiwgQWRkcmVzcyBvZmZzZXQ6IDB4MTBDICAgICAgKi8KKyAgX19JTyB1aW50MzJfdCBTSVBDUjsgICAgICAgICAgICAgLyohPCBTWVNDRkcgc2VjdXJlIElQIGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMTAgICAgICAqLworCit9IFNZU0NGR19UeXBlRGVmOworCisvKioKKyAgKiBAYnJpZWYgVElNCisgICovCit0eXBlZGVmIHN0cnVjdAoreworICBfX0lPIHVpbnQzMl90IENSMTsgICAgICAgICAvKiE8IFRJTSBjb250cm9sIHJlZ2lzdGVyIDEsICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovCisgIF9fSU8gdWludDMyX3QgQ1IyOyAgICAgICAgIC8qITwgVElNIGNvbnRyb2wgcmVnaXN0ZXIgMiwgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8KKyAgX19JTyB1aW50MzJfdCBTTUNSOyAgICAgICAgLyohPCBUSU0gc2xhdmUgbW9kZSBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLworICBfX0lPIHVpbnQzMl90IERJRVI7ICAgICAgICAvKiE8IFRJTSBETUEvaW50ZXJydXB0IGVuYWJsZSByZWdpc3RlciwgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDBDICovCisgIF9fSU8gdWludDMyX3QgU1I7ICAgICAgICAgIC8qITwgVElNIHN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgKi8KKyAgX19JTyB1aW50MzJfdCBFR1I7ICAgICAgICAgLyohPCBUSU0gZXZlbnQgZ2VuZXJhdGlvbiByZWdpc3RlciwgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLworICBfX0lPIHVpbnQzMl90IENDTVIxOyAgICAgICAvKiE8IFRJTSBjYXB0dXJlL2NvbXBhcmUgbW9kZSByZWdpc3RlciAxLCAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE4ICovCisgIF9fSU8gdWludDMyX3QgQ0NNUjI7ICAgICAgIC8qITwgVElNIGNhcHR1cmUvY29tcGFyZSBtb2RlIHJlZ2lzdGVyIDIsICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MUMgKi8KKyAgX19JTyB1aW50MzJfdCBDQ0VSOyAgICAgICAgLyohPCBUSU0gY2FwdHVyZS9jb21wYXJlIGVuYWJsZSByZWdpc3RlciwgICAgICBBZGRyZXNzIG9mZnNldDogMHgyMCAqLworICBfX0lPIHVpbnQzMl90IENOVDsgICAgICAgICAvKiE8IFRJTSBjb3VudGVyIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDI0ICovCisgIF9fSU8gdWludDMyX3QgUFNDOyAgICAgICAgIC8qITwgVElNIHByZXNjYWxlciByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjggKi8KKyAgX19JTyB1aW50MzJfdCBBUlI7ICAgICAgICAgLyohPCBUSU0gYXV0by1yZWxvYWQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyQyAqLworICBfX0lPIHVpbnQzMl90IFJDUjsgICAgICAgICAvKiE8IFRJTSByZXBldGl0aW9uIGNvdW50ZXIgcmVnaXN0ZXIsICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDMwICovCisgIF9fSU8gdWludDMyX3QgQ0NSMTsgICAgICAgIC8qITwgVElNIGNhcHR1cmUvY29tcGFyZSByZWdpc3RlciAxLCAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzQgKi8KKyAgX19JTyB1aW50MzJfdCBDQ1IyOyAgICAgICAgLyohPCBUSU0gY2FwdHVyZS9jb21wYXJlIHJlZ2lzdGVyIDIsICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgzOCAqLworICBfX0lPIHVpbnQzMl90IENDUjM7ICAgICAgICAvKiE8IFRJTSBjYXB0dXJlL2NvbXBhcmUgcmVnaXN0ZXIgMywgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDNDICovCisgIF9fSU8gdWludDMyX3QgQ0NSNDsgICAgICAgIC8qITwgVElNIGNhcHR1cmUvY29tcGFyZSByZWdpc3RlciA0LCAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDAgKi8KKyAgX19JTyB1aW50MzJfdCBCRFRSOyAgICAgICAgLyohPCBUSU0gYnJlYWsgYW5kIGRlYWQtdGltZSByZWdpc3RlciwgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg0NCAqLworICBfX0lPIHVpbnQzMl90IERDUjsgICAgICAgICAvKiE8IFRJTSBETUEgY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDQ4ICovCisgIF9fSU8gdWludDMyX3QgRE1BUjsgICAgICAgIC8qITwgVElNIERNQSBhZGRyZXNzIGZvciBmdWxsIHRyYW5zZmVyLCAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NEMgKi8KKyAgX19JTyB1aW50MzJfdCBPUjsgICAgICAgICAgLyohPCBUSU0gb3B0aW9uIHJlZ2lzdGVyICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg1MCAqLworICBfX0lPIHVpbnQzMl90IENDTVIzOyAgICAgICAvKiE8IFRJTSBjYXB0dXJlL2NvbXBhcmUgbW9kZSByZWdpc3RlciAzLCAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDU0ICovCisgIF9fSU8gdWludDMyX3QgQ0NSNTsgICAgICAgIC8qITwgVElNIGNhcHR1cmUvY29tcGFyZSByZWdpc3RlcjUsICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NTggKi8KKyAgX19JTyB1aW50MzJfdCBDQ1I2OyAgICAgICAgLyohPCBUSU0gY2FwdHVyZS9jb21wYXJlIHJlZ2lzdGVyNiwgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg1QyAqLworICBfX0lPIHVpbnQzMl90IEFGMTsgICAgICAgICAvKiE8IFRJTSBBbHRlcm5hdGUgZnVuY3Rpb24gb3B0aW9uIHJlZ2lzdGVyIDEsIEFkZHJlc3Mgb2Zmc2V0OiAweDYwICovCisgIF9fSU8gdWludDMyX3QgQUYyOyAgICAgICAgIC8qITwgVElNIEFsdGVybmF0ZSBmdW5jdGlvbiBvcHRpb24gcmVnaXN0ZXIgMiwgQWRkcmVzcyBvZmZzZXQ6IDB4NjQgKi8KK30gVElNX1R5cGVEZWY7CisKKy8qKgorICAqIEBicmllZiBVbml2ZXJzYWwgU3luY2hyb25vdXMgQXN5bmNocm9ub3VzIFJlY2VpdmVyIFRyYW5zbWl0dGVyCisgICovCit0eXBlZGVmIHN0cnVjdAoreworICBfX0lPIHVpbnQzMl90IENSMTsgICAgICAgICAvKiE8IFVTQVJUIENvbnRyb2wgcmVnaXN0ZXIgMSwgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovCisgIF9fSU8gdWludDMyX3QgQ1IyOyAgICAgICAgIC8qITwgVVNBUlQgQ29udHJvbCByZWdpc3RlciAyLCAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8KKyAgX19JTyB1aW50MzJfdCBDUjM7ICAgICAgICAgLyohPCBVU0FSVCBDb250cm9sIHJlZ2lzdGVyIDMsICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLworICBfX0lPIHVpbnQzMl90IEJSUjsgICAgICAgICAvKiE8IFVTQVJUIEJhdWQgcmF0ZSByZWdpc3RlciwgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDBDICovCisgIF9fSU8gdWludDMyX3QgR1RQUjsgICAgICAgIC8qITwgVVNBUlQgR3VhcmQgdGltZSBhbmQgcHJlc2NhbGVyIHJlZ2lzdGVyLCAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgKi8KKyAgX19JTyB1aW50MzJfdCBSVE9SOyAgICAgICAgLyohPCBVU0FSVCBSZWNlaXZlciBUaW1lIE91dCByZWdpc3RlciwgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLworICBfX0lPIHVpbnQzMl90IFJRUjsgICAgICAgICAvKiE8IFVTQVJUIFJlcXVlc3QgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE4ICovCisgIF9fSU8gdWludDMyX3QgSVNSOyAgICAgICAgIC8qITwgVVNBUlQgSW50ZXJydXB0IGFuZCBzdGF0dXMgcmVnaXN0ZXIsICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MUMgKi8KKyAgX19JTyB1aW50MzJfdCBJQ1I7ICAgICAgICAgLyohPCBVU0FSVCBJbnRlcnJ1cHQgZmxhZyBDbGVhciByZWdpc3RlciwgICAgICBBZGRyZXNzIG9mZnNldDogMHgyMCAqLworICBfX0lPIHVpbnQzMl90IFJEUjsgICAgICAgICAvKiE8IFVTQVJUIFJlY2VpdmUgRGF0YSByZWdpc3RlciwgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDI0ICovCisgIF9fSU8gdWludDMyX3QgVERSOyAgICAgICAgIC8qITwgVVNBUlQgVHJhbnNtaXQgRGF0YSByZWdpc3RlciwgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjggKi8KKyAgX19JTyB1aW50MzJfdCBQUkVTQzsgICAgICAgLyohPCBVU0FSVCBQcmVzY2FsZXIgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyQyAqLworfSBVU0FSVF9UeXBlRGVmOworCisKKy8qKgorICAqIEBicmllZiBXaW5kb3cgV0FUQ0hET0cKKyAgKi8KK3R5cGVkZWYgc3RydWN0Cit7CisgIF9fSU8gdWludDMyX3QgQ1I7ICAgICAgICAgIC8qITwgV1dERyBDb250cm9sIHJlZ2lzdGVyLCAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLworICBfX0lPIHVpbnQzMl90IENGUjsgICAgICAgICAvKiE8IFdXREcgQ29uZmlndXJhdGlvbiByZWdpc3RlciwgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8KKyAgX19JTyB1aW50MzJfdCBTUjsgICAgICAgICAgLyohPCBXV0RHIFN0YXR1cyByZWdpc3RlciwgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovCit9IFdXREdfVHlwZURlZjsKKworCisvKioKKyAgKiBAYnJpZWYgQUVTIGhhcmR3YXJlIGFjY2VsZXJhdG9yCisgICovCit0eXBlZGVmIHN0cnVjdAoreworICBfX0lPIHVpbnQzMl90IENSOyAgICAgICAgICAvKiE8IEFFUyBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovCisgIF9fSU8gdWludDMyX3QgU1I7ICAgICAgICAgIC8qITwgQUVTIHN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8KKyAgX19JTyB1aW50MzJfdCBESU5SOyAgICAgICAgLyohPCBBRVMgZGF0YSBpbnB1dCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLworICBfX0lPIHVpbnQzMl90IERPVVRSOyAgICAgICAvKiE8IEFFUyBkYXRhIG91dHB1dCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDBDICovCisgIF9fSU8gdWludDMyX3QgS0VZUjA7ICAgICAgIC8qITwgQUVTIGtleSByZWdpc3RlciAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgKi8KKyAgX19JTyB1aW50MzJfdCBLRVlSMTsgICAgICAgLyohPCBBRVMga2V5IHJlZ2lzdGVyIDEsICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLworICBfX0lPIHVpbnQzMl90IEtFWVIyOyAgICAgICAvKiE8IEFFUyBrZXkgcmVnaXN0ZXIgMiwgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE4ICovCisgIF9fSU8gdWludDMyX3QgS0VZUjM7ICAgICAgIC8qITwgQUVTIGtleSByZWdpc3RlciAzLCAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MUMgKi8KKyAgX19JTyB1aW50MzJfdCBJVlIwOyAgICAgICAgLyohPCBBRVMgaW5pdGlhbGl6YXRpb24gdmVjdG9yIHJlZ2lzdGVyIDAsICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyMCAqLworICBfX0lPIHVpbnQzMl90IElWUjE7ICAgICAgICAvKiE8IEFFUyBpbml0aWFsaXphdGlvbiB2ZWN0b3IgcmVnaXN0ZXIgMSwgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDI0ICovCisgIF9fSU8gdWludDMyX3QgSVZSMjsgICAgICAgIC8qITwgQUVTIGluaXRpYWxpemF0aW9uIHZlY3RvciByZWdpc3RlciAyLCAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjggKi8KKyAgX19JTyB1aW50MzJfdCBJVlIzOyAgICAgICAgLyohPCBBRVMgaW5pdGlhbGl6YXRpb24gdmVjdG9yIHJlZ2lzdGVyIDMsICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyQyAqLworICBfX0lPIHVpbnQzMl90IEtFWVI0OyAgICAgICAvKiE8IEFFUyBrZXkgcmVnaXN0ZXIgNCwgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDMwICovCisgIF9fSU8gdWludDMyX3QgS0VZUjU7ICAgICAgIC8qITwgQUVTIGtleSByZWdpc3RlciA1LCAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzQgKi8KKyAgX19JTyB1aW50MzJfdCBLRVlSNjsgICAgICAgLyohPCBBRVMga2V5IHJlZ2lzdGVyIDYsICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgzOCAqLworICBfX0lPIHVpbnQzMl90IEtFWVI3OyAgICAgICAvKiE8IEFFUyBrZXkgcmVnaXN0ZXIgNywgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDNDICovCisgIF9fSU8gdWludDMyX3QgU1VTUDBSOyAgICAgIC8qITwgQUVTIFN1c3BlbmQgcmVnaXN0ZXIgMCwgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDAgKi8KKyAgX19JTyB1aW50MzJfdCBTVVNQMVI7ICAgICAgLyohPCBBRVMgU3VzcGVuZCByZWdpc3RlciAxLCAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg0NCAqLworICBfX0lPIHVpbnQzMl90IFNVU1AyUjsgICAgICAvKiE8IEFFUyBTdXNwZW5kIHJlZ2lzdGVyIDIsICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDQ4ICovCisgIF9fSU8gdWludDMyX3QgU1VTUDNSOyAgICAgIC8qITwgQUVTIFN1c3BlbmQgcmVnaXN0ZXIgMywgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NEMgKi8KKyAgX19JTyB1aW50MzJfdCBTVVNQNFI7ICAgICAgLyohPCBBRVMgU3VzcGVuZCByZWdpc3RlciA0LCAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg1MCAqLworICBfX0lPIHVpbnQzMl90IFNVU1A1UjsgICAgICAvKiE8IEFFUyBTdXNwZW5kIHJlZ2lzdGVyIDUsICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDU0ICovCisgIF9fSU8gdWludDMyX3QgU1VTUDZSOyAgICAgIC8qITwgQUVTIFN1c3BlbmQgcmVnaXN0ZXIgNiwgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NTggKi8KKyAgX19JTyB1aW50MzJfdCBTVVNQN1I7ICAgICAgLyohPCBBRVMgU3VzcGVuZCByZWdpc3RlciA3LCAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg2QyAqLworfSBBRVNfVHlwZURlZjsKKworLyoqCisgICogQGJyaWVmIFJORworICAqLwordHlwZWRlZiBzdHJ1Y3QKK3sKKyAgX19JTyB1aW50MzJfdCBDUjsgIC8qITwgUk5HIGNvbnRyb2wgcmVnaXN0ZXIsIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovCisgIF9fSU8gdWludDMyX3QgU1I7ICAvKiE8IFJORyBzdGF0dXMgcmVnaXN0ZXIsICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLworICBfX0lPIHVpbnQzMl90IERSOyAgLyohPCBSTkcgZGF0YSByZWdpc3RlciwgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8KK30gUk5HX1R5cGVEZWY7CisKKy8qKgorICAqIEBicmllZiBUb3VjaCBTZW5zaW5nIENvbnRyb2xsZXIgKFRTQykKKyAgKi8KK3R5cGVkZWYgc3RydWN0Cit7CisgIF9fSU8gdWludDMyX3QgQ1I7ICAgICAgICAgICAgLyohPCBUU0MgY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLworICBfX0lPIHVpbnQzMl90IElFUjsgICAgICAgICAgIC8qITwgVFNDIGludGVycnVwdCBlbmFibGUgcmVnaXN0ZXIsICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8KKyAgX19JTyB1aW50MzJfdCBJQ1I7ICAgICAgICAgICAvKiE8IFRTQyBpbnRlcnJ1cHQgY2xlYXIgcmVnaXN0ZXIsICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovCisgIF9fSU8gdWludDMyX3QgSVNSOyAgICAgICAgICAgLyohPCBUU0MgaW50ZXJydXB0IHN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLworICBfX0lPIHVpbnQzMl90IElPSENSOyAgICAgICAgIC8qITwgVFNDIEkvTyBoeXN0ZXJlc2lzIGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgKi8KKyAgdWludDMyX3QgICAgICBSRVNFUlZFRDE7ICAgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0ICovCisgIF9fSU8gdWludDMyX3QgSU9BU0NSOyAgICAgICAgLyohPCBUU0MgSS9PIGFuYWxvZyBzd2l0Y2ggY29udHJvbCByZWdpc3RlciwgICBBZGRyZXNzIG9mZnNldDogMHgxOCAqLworICB1aW50MzJfdCAgICAgIFJFU0VSVkVEMjsgICAgIC8qITwgUmVzZXJ2ZWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MUMgKi8KKyAgX19JTyB1aW50MzJfdCBJT1NDUjsgICAgICAgICAvKiE8IFRTQyBJL08gc2FtcGxpbmcgY29udHJvbCByZWdpc3RlciwgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDIwICovCisgIHVpbnQzMl90ICAgICAgUkVTRVJWRUQzOyAgICAgLyohPCBSZXNlcnZlZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyNCAqLworICBfX0lPIHVpbnQzMl90IElPQ0NSOyAgICAgICAgIC8qITwgVFNDIEkvTyBjaGFubmVsIGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjggKi8KKyAgdWludDMyX3QgICAgICBSRVNFUlZFRDQ7ICAgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDJDICovCisgIF9fSU8gdWludDMyX3QgSU9HQ1NSOyAgICAgICAgLyohPCBUU0MgSS9PIGdyb3VwIGNvbnRyb2wgc3RhdHVzIHJlZ2lzdGVyLCAgICBBZGRyZXNzIG9mZnNldDogMHgzMCAqLworICBfX0lPIHVpbnQzMl90IElPR1hDUls3XTsgICAgIC8qITwgVFNDIEkvTyBncm91cCB4IGNvdW50ZXIgcmVnaXN0ZXIsICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzQtNEMgKi8KK30gVFNDX1R5cGVEZWY7CisKKy8qKgorICAqIEBicmllZiBVbml2ZXJzYWwgU2VyaWFsIEJ1cyBGdWxsIFNwZWVkIERldmljZQorICAqLwordHlwZWRlZiBzdHJ1Y3QKK3sKKyAgX19JTyB1aW50MTZfdCBFUDBSOyAgICAgICAgICAgIC8qITwgVVNCIEVuZHBvaW50IDAgcmVnaXN0ZXIsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovCisgIF9fSU8gdWludDE2X3QgUkVTRVJWRUQwOyAgICAgICAvKiE8IFJlc2VydmVkICovCisgIF9fSU8gdWludDE2X3QgRVAxUjsgICAgICAgICAgICAvKiE8IFVTQiBFbmRwb2ludCAxIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLworICBfX0lPIHVpbnQxNl90IFJFU0VSVkVEMTsgICAgICAgLyohPCBSZXNlcnZlZCAqLworICBfX0lPIHVpbnQxNl90IEVQMlI7ICAgICAgICAgICAgLyohPCBVU0IgRW5kcG9pbnQgMiByZWdpc3RlciwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8KKyAgX19JTyB1aW50MTZfdCBSRVNFUlZFRDI7ICAgICAgIC8qITwgUmVzZXJ2ZWQgKi8KKyAgX19JTyB1aW50MTZfdCBFUDNSOyAgICAgICAgICAgIC8qITwgVVNCIEVuZHBvaW50IDMgcmVnaXN0ZXIsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDBDICovCisgIF9fSU8gdWludDE2X3QgUkVTRVJWRUQzOyAgICAgICAvKiE8IFJlc2VydmVkICovCisgIF9fSU8gdWludDE2X3QgRVA0UjsgICAgICAgICAgICAvKiE8IFVTQiBFbmRwb2ludCA0IHJlZ2lzdGVyLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLworICBfX0lPIHVpbnQxNl90IFJFU0VSVkVENDsgICAgICAgLyohPCBSZXNlcnZlZCAqLworICBfX0lPIHVpbnQxNl90IEVQNVI7ICAgICAgICAgICAgLyohPCBVU0IgRW5kcG9pbnQgNSByZWdpc3RlciwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTQgKi8KKyAgX19JTyB1aW50MTZfdCBSRVNFUlZFRDU7ICAgICAgIC8qITwgUmVzZXJ2ZWQgKi8KKyAgX19JTyB1aW50MTZfdCBFUDZSOyAgICAgICAgICAgIC8qITwgVVNCIEVuZHBvaW50IDYgcmVnaXN0ZXIsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE4ICovCisgIF9fSU8gdWludDE2X3QgUkVTRVJWRUQ2OyAgICAgICAvKiE8IFJlc2VydmVkICovCisgIF9fSU8gdWludDE2X3QgRVA3UjsgICAgICAgICAgICAvKiE8IFVTQiBFbmRwb2ludCA3IHJlZ2lzdGVyLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxQyAqLworICBfX0lPIHVpbnQxNl90IFJFU0VSVkVEN1sxN107ICAgLyohPCBSZXNlcnZlZCAqLworICBfX0lPIHVpbnQxNl90IENOVFI7ICAgICAgICAgICAgLyohPCBDb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDAgKi8KKyAgX19JTyB1aW50MTZfdCBSRVNFUlZFRDg7ICAgICAgIC8qITwgUmVzZXJ2ZWQgKi8KKyAgX19JTyB1aW50MTZfdCBJU1RSOyAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IHN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDQ0ICovCisgIF9fSU8gdWludDE2X3QgUkVTRVJWRUQ5OyAgICAgICAvKiE8IFJlc2VydmVkICovCisgIF9fSU8gdWludDE2X3QgRk5SOyAgICAgICAgICAgICAvKiE8IEZyYW1lIG51bWJlciByZWdpc3RlciwgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg0OCAqLworICBfX0lPIHVpbnQxNl90IFJFU0VSVkVEQTsgICAgICAgLyohPCBSZXNlcnZlZCAqLworICBfX0lPIHVpbnQxNl90IERBRERSOyAgICAgICAgICAgLyohPCBEZXZpY2UgYWRkcmVzcyByZWdpc3RlciwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NEMgKi8KKyAgX19JTyB1aW50MTZfdCBSRVNFUlZFREI7ICAgICAgIC8qITwgUmVzZXJ2ZWQgKi8KKyAgX19JTyB1aW50MTZfdCBCVEFCTEU7ICAgICAgICAgIC8qITwgQnVmZmVyIFRhYmxlIGFkZHJlc3MgcmVnaXN0ZXIsICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDUwICovCisgIF9fSU8gdWludDE2X3QgUkVTRVJWRURDOyAgICAgICAvKiE8IFJlc2VydmVkICovCisgIF9fSU8gdWludDE2X3QgTFBNQ1NSOyAgICAgICAgICAvKiE8IExQTSBDb250cm9sIGFuZCBTdGF0dXMgcmVnaXN0ZXIsICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg1NCAqLworICBfX0lPIHVpbnQxNl90IFJFU0VSVkVERDsgICAgICAgLyohPCBSZXNlcnZlZCAqLworICBfX0lPIHVpbnQxNl90IEJDRFI7ICAgICAgICAgICAgLyohPCBCYXR0ZXJ5IENoYXJnaW5nIGRldGVjdG9yIHJlZ2lzdGVyLCAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NTggKi8KKyAgX19JTyB1aW50MTZfdCBSRVNFUlZFREU7ICAgICAgIC8qITwgUmVzZXJ2ZWQgKi8KK30gVVNCX1R5cGVEZWY7CisKKy8qKgorICAqIEBicmllZiBDbG9jayBSZWNvdmVyeSBTeXN0ZW0KKyAgKi8KK3R5cGVkZWYgc3RydWN0Cit7CisgIF9fSU8gdWludDMyX3QgQ1I7ICAgICAgICAgICAgLyohPCBDUlMgY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLworICBfX0lPIHVpbnQzMl90IENGR1I7ICAgICAgICAgIC8qITwgQ1JTIGNvbmZpZ3VyYXRpb24gcmVnaXN0ZXIsICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8KKyAgX19JTyB1aW50MzJfdCBJU1I7ICAgICAgICAgICAvKiE8IENSUyBpbnRlcnJ1cHQgYW5kIHN0YXR1cyByZWdpc3RlciwgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovCisgIF9fSU8gdWludDMyX3QgSUNSOyAgICAgICAgICAgLyohPCBDUlMgaW50ZXJydXB0IGZsYWcgY2xlYXIgcmVnaXN0ZXIsICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLworfSBDUlNfVHlwZURlZjsKKworLyoqCisgICogQGJyaWVmIEludGVyLVByb2Nlc3NvciBDb21tdW5pY2F0aW9uCisgICovCit0eXBlZGVmIHN0cnVjdAoreworICBfX0lPIHVpbnQzMl90IEMxQ1I7ICAgICAgICAgICAgIC8qITwgSW50ZXItUHJvY2Vzc29yIENvbW11bmljYXRpb246IEMxIGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAwICovCisgIF9fSU8gdWludDMyX3QgQzFNUiA7ICAgICAgICAgICAgLyohPCBJbnRlci1Qcm9jZXNzb3IgQ29tbXVuaWNhdGlvbjogQzEgbWFzayByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMDQgKi8KKyAgX19JTyB1aW50MzJfdCBDMVNDUjsgICAgICAgICAgICAvKiE8IEludGVyLVByb2Nlc3NvciBDb21tdW5pY2F0aW9uOiBDMSBzdGF0dXMgc2V0IGNsZWFyIHJlZ2lzdGVyLCAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwOCAqLworICBfX0lPIHVpbnQzMl90IEMxVE9DMlNSOyAgICAgICAgIC8qITwgSW50ZXItUHJvY2Vzc29yIENvbW11bmljYXRpb246IEMxIHRvIHByb2Nlc3NvciBNNCAgc3RhdHVzIHJlZ2lzdGVyLCAgQWRkcmVzcyBvZmZzZXQ6IDB4MDBDICovCisgIF9fSU8gdWludDMyX3QgQzJDUjsgICAgICAgICAgICAgLyohPCBJbnRlci1Qcm9jZXNzb3IgQ29tbXVuaWNhdGlvbjogQzIgY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMTAgKi8KKyAgX19JTyB1aW50MzJfdCBDMk1SIDsgICAgICAgICAgICAvKiE8IEludGVyLVByb2Nlc3NvciBDb21tdW5pY2F0aW9uOiBDMiBtYXNrIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAxNCAqLworICBfX0lPIHVpbnQzMl90IEMyU0NSOyAgICAgICAgICAgIC8qITwgSW50ZXItUHJvY2Vzc29yIENvbW11bmljYXRpb246IEMyIHN0YXR1cyBzZXQgY2xlYXIgcmVnaXN0ZXIsICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDE4ICovCisgIF9fSU8gdWludDMyX3QgQzJUT0MxU1I7ICAgICAgICAgLyohPCBJbnRlci1Qcm9jZXNzb3IgQ29tbXVuaWNhdGlvbjogQzIgdG8gcHJvY2Vzc29yIE00IHN0YXR1cyByZWdpc3RlciwgICBBZGRyZXNzIG9mZnNldDogMHgwMUMgKi8KK30gSVBDQ19UeXBlRGVmOworCit0eXBlZGVmIHN0cnVjdAoreworICBfX0lPIHVpbnQzMl90IENSOyAgICAgICAgICAgICAgIC8qITwgQ29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAwICovCisgIF9fSU8gdWludDMyX3QgTVI7ICAgICAgICAgICAgICAgLyohPCBNYXNrIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMDQgKi8KKyAgX19JTyB1aW50MzJfdCBTQ1I7ICAgICAgICAgICAgICAvKiE8IFN0YXR1cyBzZXQgY2xlYXIgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwOCAqLworICBfX0lPIHVpbnQzMl90IFNSOyAgICAgICAgICAgICAgIC8qITwgU3RhdHVzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDBDICovCit9IElQQ0NfQ29tbW9uVHlwZURlZjsKKworLyoqCisgICogQGJyaWVmIEFzeW5jIEludGVycnVwdHMgYW5kIEV2ZW50cyBDb250cm9sbGVyCisgICovCit0eXBlZGVmIHN0cnVjdAoreworICBfX0lPIHVpbnQzMl90IFJUU1IxOyAgICAgICAgICAvKiE8IEVYVEkgcmlzaW5nIHRyaWdnZXIgc2VsZWN0aW9uIHJlZ2lzdGVyIFszMTowXSwgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLworICBfX0lPIHVpbnQzMl90IEZUU1IxOyAgICAgICAgICAvKiE8IEVYVEkgZmFsbGluZyB0cmlnZ2VyIHNlbGVjdGlvbiByZWdpc3RlciBbMzE6MF0sICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLworICBfX0lPIHVpbnQzMl90IFNXSUVSMTsgICAgICAgICAvKiE8IEVYVEkgc29mdHdhcmUgaW50ZXJydXB0IGV2ZW50IHJlZ2lzdGVyIFszMTowXSwgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLworICBfX0lPIHVpbnQzMl90IFBSMTsgICAgICAgICAgICAvKiE8IEVYVEkgcGVuZGluZyByZWdpc3RlciBbMzE6MF0sICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLworICBfX0lPIHVpbnQzMl90IFJFU0VSVkVEMVs0XTsgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAtIDB4MUMgKi8KKyAgX19JTyB1aW50MzJfdCBSVFNSMjsgICAgICAgICAgLyohPCBFWFRJIHJpc2luZyB0cmlnZ2VyIHNlbGVjdGlvbiByZWdpc3RlciBbMzE6MF0sICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjAgKi8KKyAgX19JTyB1aW50MzJfdCBGVFNSMjsgICAgICAgICAgLyohPCBFWFRJIGZhbGxpbmcgdHJpZ2dlciBzZWxlY3Rpb24gcmVnaXN0ZXIgWzMxOjBdLCAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjQgKi8KKyAgX19JTyB1aW50MzJfdCBTV0lFUjI7ICAgICAgICAgLyohPCBFWFRJIHNvZnR3YXJlIGludGVycnVwdCBldmVudCByZWdpc3RlciBbMzE6MF0sICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjggKi8KKyAgX19JTyB1aW50MzJfdCBQUjI7ICAgICAgICAgICAgLyohPCBFWFRJIHBlbmRpbmcgcmVnaXN0ZXIgWzMxOjBdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MkMgKi8KKyAgX19JTyB1aW50MzJfdCBSRVNFUlZFRDJbNF07ICAgLyohPCBSZXNlcnZlZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzAgLSAweDNDICovCisgIF9fSU8gdWludDMyX3QgUkVTRVJWRUQzWzhdOyAgIC8qITwgUmVzZXJ2ZWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDQwIC0gMHg1QyAqLworICBfX0lPIHVpbnQzMl90IFJFU0VSVkVENFs4XTsgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg2MCAtIDB4N0MgKi8KKyAgX19JTyB1aW50MzJfdCBJTVIxOyAgICAgICAgICAgLyohPCBFWFRJIHdha2V1cCB3aXRoIGludGVycnVwdCBtYXNrIHJlZ2lzdGVyIGZvciBjcHUxIFszMTowXSwgQWRkcmVzcyBvZmZzZXQ6IDB4ODAgKi8KKyAgX19JTyB1aW50MzJfdCBFTVIxOyAgICAgICAgICAgLyohPCBFWFRJIHdha2V1cCB3aXRoIGV2ZW50IG1hc2sgcmVnaXN0ZXIgZm9yIGNwdTEgWzMxOjBdLCAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4ODQgKi8KKyAgX19JTyB1aW50MzJfdCBSRVNFUlZFRDVbMl07ICAgLyohPCBSZXNlcnZlZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4ODggLSAweDhDICovCisgIF9fSU8gdWludDMyX3QgSU1SMjsgICAgICAgICAgIC8qITwgRVhUSSB3YWtldXAgd2l0aCBpbnRlcnJ1cHQgbWFzayByZWdpc3RlciBmb3IgY3B1MSBbMzE6MF0sIEFkZHJlc3Mgb2Zmc2V0OiAweDkwICovCisgIF9fSU8gdWludDMyX3QgRU1SMjsgICAgICAgICAgIC8qITwgRVhUSSB3YWtldXAgd2l0aCBldmVudCBtYXNrIHJlZ2lzdGVyIGZvciBjcHUxIFszMTowXSwgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDk0ICovCisgIF9fSU8gdWludDMyX3QgUkVTRVJWRUQ4WzEwXTsgIC8qITwgUmVzZXJ2ZWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDk4IC0gMHhCQyAqLworICBfX0lPIHVpbnQzMl90IEMySU1SMTsgICAgICAgICAvKiE8IEVYVEkgd2FrZXVwIHdpdGggaW50ZXJydXB0IG1hc2sgcmVnaXN0ZXIgZm9yIGNwdTIgWzMxOjBdLCBBZGRyZXNzIG9mZnNldDogMHhDMCAqLworICBfX0lPIHVpbnQzMl90IEMyRU1SMTsgICAgICAgICAvKiE8IEVYVEkgd2FrZXVwIHdpdGggZXZlbnQgbWFzayByZWdpc3RlciBmb3IgY3B1MiBbMzE6MF0sICAgICBBZGRyZXNzIG9mZnNldDogMHhDNCAqLworICBfX0lPIHVpbnQzMl90IFJFU0VSVkVEOVsyXTsgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHhDOCAtIDB4Q0MgKi8KKyAgX19JTyB1aW50MzJfdCBDMklNUjI7ICAgICAgICAgLyohPCBFWFRJIHdha2V1cCB3aXRoIGludGVycnVwdCBtYXNrIHJlZ2lzdGVyIGZvciBjcHUyIFszMTowXSwgQWRkcmVzcyBvZmZzZXQ6IDB4RDAgKi8KKyAgX19JTyB1aW50MzJfdCBDMkVNUjI7ICAgICAgICAgLyohPCBFWFRJIHdha2V1cCB3aXRoIGV2ZW50IG1hc2sgcmVnaXN0ZXIgZm9yIGNwdTIgWzMxOjBdLCAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4RDQgKi8gCit9RVhUSV9UeXBlRGVmOworCisvKioKKyAgKiBAYnJpZWYgUHVibGljIEtleSBBY2NlbGVyYXRvciAoUEtBKQorICAqLwordHlwZWRlZiBzdHJ1Y3QKK3sKKyAgX19JTyB1aW50MzJfdCBDUjsgICAgICAgICAgLyohPCBQS0EgY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovCisgIF9fSU8gdWludDMyX3QgU1I7ICAgICAgICAgIC8qITwgUEtBIHN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLworICBfX0lPIHVpbnQzMl90IENMUkZSOyAgICAgICAvKiE8IFBLQSBjbGVhciBmbGFnIHJlZ2lzdGVyLCAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8KKyAgdWludDMyX3QgIFJlc2VydmVkMVsyNTNdOyAgLyohPCBSZXNlcnZlZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwMEMtMHgwM0ZDKi8KKyAgX19JTyB1aW50MzJfdCBSQU1bODk0XTsgICAgLyohPCBQS0EgUkFNLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0MDAtMHgxMUY0ICovCit9IFBLQV9UeXBlRGVmOworCisvKioKKyAgKiBAYnJpZWYgSFcgU2VtYXBob3JlIEhTRU0KKyAgKi8KK3R5cGVkZWYgc3RydWN0Cit7CisgIF9fSU8gdWludDMyX3QgUlszMl07ICAgICAgLyohPCBIU0VNIDItc3RlcCB3cml0ZSBsb2NrIGFuZCByZWFkIGJhY2sgcmVnaXN0ZXJzLCBBZGRyZXNzIG9mZnNldDogMDBoLTdDaCAgKi8KKyAgX19JTyB1aW50MzJfdCBSTFJbMzJdOyAgICAvKiE8IEhTRU0gMS1zdGVwIHJlYWQgbG9jayByZWdpc3RlcnMsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiA4MGgtRkNoICAqLworICBfX0lPIHVpbnQzMl90IEMxSUVSOyAgICAgIC8qITwgSFNFTSBDUFUxIGludGVycnVwdCBlbmFibGUgcmVnaXN0ZXIgLCAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDEwMGggICAgICovCisgIF9fSU8gdWludDMyX3QgQzFJQ1I7ICAgICAgLyohPCBIU0VNIENQVTEgaW50ZXJydXB0IGNsZWFyIHJlZ2lzdGVyICwgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMTA0aCAgICAgKi8KKyAgX19JTyB1aW50MzJfdCBDMUlTUjsgICAgICAvKiE8IEhTRU0gQ1BVMSBpbnRlcnJ1cHQgc3RhdHVzIHJlZ2lzdGVyICwgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAxMDhoICAgICAqLworICBfX0lPIHVpbnQzMl90IEMxTUlTUjsgICAgIC8qITwgSFNFTSBDUFUxIG1hc2tlZCBpbnRlcnJ1cHQgc3RhdHVzIHJlZ2lzdGVyICwgICAgQWRkcmVzcyBvZmZzZXQ6IDEwQ2ggICAgICovCisgIF9fSU8gdWludDMyX3QgQzJJRVI7ICAgICAgLyohPCBIU0VNIENQVTIgaW50ZXJydXB0IGVuYWJsZSByZWdpc3RlciAsICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMTEwaCAgICAgKi8KKyAgX19JTyB1aW50MzJfdCBDMklDUjsgICAgICAvKiE8IEhTRU0gQ1BVMiBpbnRlcnJ1cHQgY2xlYXIgcmVnaXN0ZXIgLCAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAxMTRoICAgICAqLworICBfX0lPIHVpbnQzMl90IEMySVNSOyAgICAgIC8qITwgSFNFTSBDUFUyIGludGVycnVwdCBzdGF0dXMgcmVnaXN0ZXIgLCAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDExOGggICAgICovCisgIF9fSU8gdWludDMyX3QgQzJNSVNSOyAgICAgLyohPCBIU0VNIENQVTIgbWFza2VkIGludGVycnVwdCBzdGF0dXMgcmVnaXN0ZXIgLCAgICBBZGRyZXNzIG9mZnNldDogMTFDaCAgICAgKi8KKyAgIHVpbnQzMl90ICBSZXNlcnZlZFs4XTsgICAvKiE8IFJlc2VydmVkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAxMjBoLTEzQ2gqLworICBfX0lPIHVpbnQzMl90IENSOyAgICAgICAgIC8qITwgSFNFTSBTZW1hcGhvcmUgY2xlYXIgcmVnaXN0ZXIgLCAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDE0MGggICAgICovCisgIF9fSU8gdWludDMyX3QgS0VZUjsgICAgICAgLyohPCBIU0VNIFNlbWFwaG9yZSBjbGVhciBrZXkgcmVnaXN0ZXIgLCAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMTQ0aCAgICAgKi8KK30gSFNFTV9UeXBlRGVmOworCit0eXBlZGVmIHN0cnVjdAoreworICBfX0lPIHVpbnQzMl90IElFUjsgICAgICAgIC8qITwgSFNFTSBpbnRlcnJ1cHQgZW5hYmxlIHJlZ2lzdGVyICwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6ICAgMGggICAgICovCisgIF9fSU8gdWludDMyX3QgSUNSOyAgICAgICAgLyohPCBIU0VNIGludGVycnVwdCBjbGVhciByZWdpc3RlciAsICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogICA0aCAgICAgKi8KKyAgX19JTyB1aW50MzJfdCBJU1I7ICAgICAgICAvKiE8IEhTRU0gaW50ZXJydXB0IHN0YXR1cyByZWdpc3RlciAsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAgIDhoICAgICAqLworICBfX0lPIHVpbnQzMl90IE1JU1I7ICAgICAgIC8qITwgSFNFTSBtYXNrZWQgaW50ZXJydXB0IHN0YXR1cyByZWdpc3RlciAsICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6ICAgQ2ggICAgICovCit9IEhTRU1fQ29tbW9uX1R5cGVEZWY7CisKKy8qKgorICAqIEB9CisgICovCisKKy8qKiBAYWRkdG9ncm91cCBQZXJpcGhlcmFsX21lbW9yeV9tYXAKKyAgKiBAeworICAqLworCisvKiE8IEJvdW5kYXJ5IG1lbW9yeSBtYXAgKi8KKyNkZWZpbmUgRkxBU0hfQkFTRSAgICAgICAgICAgICAoMHgwODAwMDAwMFVMKS8qITwgRkxBU0godXAgdG8gMSBNQikgYmFzZSBhZGRyZXNzICovCisjZGVmaW5lIFNSQU1fQkFTRSAgICAgICAgICAgICAgKDB4MjAwMDAwMDBVTCkvKiE8IFNSQU0odXAgdG8gMjU2IEtCKSBiYXNlIGFkZHJlc3MgKi8KKyNkZWZpbmUgUEVSSVBIX0JBU0UgICAgICAgICAgICAoMHg0MDAwMDAwMFVMKS8qITwgUGVyaXBoZXJhbCBiYXNlIGFkZHJlc3MgKi8KKworLyohPCBNZW1vcnksIE9UUCBhbmQgT3B0aW9uIGJ5dGVzICovCisKKy8qIEJhc2UgYWRkcmVzc2VzICovCisjZGVmaW5lIFNZU1RFTV9NRU1PUllfQkFTRSAgICAgKDB4MUZGRjAwMDBVTCkgIC8qITwgU3lzdGVtIE1lbW9yeSA6IDI4S2IgKDB4MUZGRjAwMDAgliAweDFGRkY2RkZGKSAqLworI2RlZmluZSBPVFBfQVJFQV9CQVNFICAgICAgICAgICgweDFGRkY3MDAwVUwpICAvKiE8IE9UUCBhcmVhIDogMWtCICgweDFGRkY3MDAwIJYgMHgxRkZGNzNGRikgICAgICAgKi8KKyNkZWZpbmUgT1BUSU9OX0JZVEVfQkFTRSAgICAgICAoMHgxRkZGODAwMFVMKSAgLyohPCBPcHRpb24gQnl0ZXMgOiA0a0IgKDB4MUZGRjgwMDAgliAweDFGRkY4RkZGKSAgICovCisjZGVmaW5lIEVOR0lfQllURV9CQVNFICAgICAgICAgKDB4MUZGRjc0MDBVTCkgIC8qITwgRW5naSBCeXRlcyA6IDNrQiAoMHgxRkZGNzQwMCCWIDB4MUZGRjdGRkYpICAgICAqLworCisjZGVmaW5lIFNSQU0xX0JBU0UgICAgICAgICAgICAgU1JBTV9CQVNFICAgICAgICAgICAgICAgICAvKiE8IFNSQU0xKHVwIHRvIDMyIEtCKSBiYXNlIGFkZHJlc3MgKi8KKyNkZWZpbmUgU1JBTTJBX0JBU0UgICAgICAgICAgICAoU1JBTV9CQVNFICsgMHgwMDAwODAwMFVMKS8qITwgU1JBTTJBKDMyIEtCKSBiYXNlIGFkZHJlc3MgICAgICAgKi8KKyNkZWZpbmUgU1JBTTJCX0JBU0UgICAgICAgICAgICAoU1JBTV9CQVNFICsgMHgwMDAxMDAwMFVMKS8qITwgU1JBTTJCKDMyIEtCKSBiYXNlIGFkZHJlc3MgICAgICAgKi8KKworLyogTWVtb3J5IFNpemUgKi8KKyNkZWZpbmUgRkxBU0hfU0laRSAgICAgICAgICAgICAgKCgodWludDMyX3QpKCooKHVpbnQxNl90ICopRkxBU0hTSVpFX0JBU0UpKSAmICgweDA3RkZVTCkpIDw8IDEwVSkKKyNkZWZpbmUgU1JBTTFfU0laRSAgICAgICAgICAgICAgMHgwMDAwODAwMFVMICAgLyohPCBTUkFNMSBkZWZhdWx0IHNpemUgOiAzMiBrQiAgKi8KKyNkZWZpbmUgU1JBTTJBX1NJWkUgICAgICAgICAgICAgMHgwMDAwODAwMFVMICAgLyohPCBTUkFNMmEgZGVmYXVsdCBzaXplIDogMzIga0IgICovCisjZGVmaW5lIFNSQU0yQl9TSVpFICAgICAgICAgICAgIDB4MDAwMDgwMDBVTCAgIC8qITwgU1JBTTJiIGRlZmF1bHQgc2l6ZSA6IDMyIGtCICAqLworCisvKiBFbmQgYWRkcmVzc2VzICovCisjZGVmaW5lIFNSQU0xX0VORF9BRERSICAgICAgICAgKDB4MjAwMDdGRkZVTCkgIC8qITwgU1JBTTEgICAgICAgICAgICAgICA6ICAzMktCICgweDIwMDAwMDAwIJYgMHgyMDAwN0ZGRikgKi8KKyNkZWZpbmUgU1JBTTJBX0VORF9BRERSICAgICAgICAoMHgyMDAwRkZGRlVMKSAgLyohPCBTUkFNMmEgKGJhY2t1cCkgICAgIDogIDMyS0IgKDB4MjAwMDgwMDAgliAweDIwMDBGRkZGKSAqLworI2RlZmluZSBTUkFNMkJfRU5EX0FERFIgICAgICAgICgweDIwMDE3RkZGVUwpICAvKiE8IFNSQU0yYiAobm9uLWJhY2t1cCkgOiAgMzJLQiAoMHgyMDAxMDAwMCCWIDB4MjAwMTdGRkYpICovCisKKyNkZWZpbmUgU1lTVEVNX01FTU9SWV9FTkRfQUREUiAoMHgxRkZGNkZGRlVMKSAgLyohPCBTeXN0ZW0gTWVtb3J5IDogMjhLQiAoMHgxRkZGMDAwMCCWIDB4MUZGRjZGRkYpICAqLworI2RlZmluZSBPVFBfQVJFQV9FTkRfQUREUiAgICAgICgweDFGRkY3M0ZGVUwpICAvKiE8IE9UUCBhcmVhIDogMUtCICgweDFGRkY3MDAwIJYgMHgxRkZGNzNGRikgICAgICAgICovCisjZGVmaW5lIE9QVElPTl9CWVRFX0VORF9BRERSICAgKDB4MUZGRjhGRkZVTCkgIC8qITwgT3B0aW9uIEJ5dGVzIDogNEtCICgweDFGRkY4MDAwIJYgMHgxRkZGOEZGRikgICAgKi8KKyNkZWZpbmUgRU5HSV9CWVRFX0VORF9BRERSICAgICAoMHgxRkZGN0ZGRlVMKSAgLyohPCBFbmdpIEJ5dGVzIDogM2tCICgweDFGRkY3NDAwIJYgMHgxRkZGN0ZGRikgICAgICAqLworCisvKiE8IFBlcmlwaGVyYWwgbWVtb3J5IG1hcCAqLworI2RlZmluZSBBUEIxUEVSSVBIX0JBU0UgICAgICAgUEVSSVBIX0JBU0UKKyNkZWZpbmUgQVBCMlBFUklQSF9CQVNFICAgICAgIChQRVJJUEhfQkFTRSArIDB4MDAwMTAwMDBVTCkKKyNkZWZpbmUgQUhCMVBFUklQSF9CQVNFICAgICAgIChQRVJJUEhfQkFTRSArIDB4MDAwMjAwMDBVTCkKKyNkZWZpbmUgQUhCMlBFUklQSF9CQVNFICAgICAgIChQRVJJUEhfQkFTRSArIDB4MDgwMDAwMDBVTCkKKyNkZWZpbmUgQUhCNFBFUklQSF9CQVNFICAgICAgIChQRVJJUEhfQkFTRSArIDB4MTgwMDAwMDBVTCkKKyNkZWZpbmUgQVBCM1BFUklQSF9CQVNFICAgICAgIChQRVJJUEhfQkFTRSArIDB4MjAwMDAwMDBVTCkKKyNkZWZpbmUgQUhCM1BFUklQSF9CQVNFICAgICAgIChQRVJJUEhfQkFTRSArIDB4NTAwMDAwMDBVTCkKKworLyohPCBBUEIxIHBlcmlwaGVyYWxzICovCisjZGVmaW5lIFRJTTJfQkFTRSAgICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwMDAwMFVMKQorI2RlZmluZSBSVENfQkFTRSAgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDI4MDBVTCkKKyNkZWZpbmUgV1dER19CQVNFICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDAyQzAwVUwpCisjZGVmaW5lIElXREdfQkFTRSAgICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwMzAwMFVMKQorI2RlZmluZSBTUEkyX0JBU0UgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDM4MDBVTCkKKyNkZWZpbmUgSTJDMV9CQVNFICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDA1NDAwVUwpCisjZGVmaW5lIEkyQzNfQkFTRSAgICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwNUMwMFVMKQorI2RlZmluZSBDUlNfQkFTRSAgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDYwMDBVTCkKKyNkZWZpbmUgVVNCMV9CQVNFICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDA2ODAwVUwpCisjZGVmaW5lIFVTQjFfUE1BQUREUiAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwNkMwMFVMKQorI2RlZmluZSBMUFRJTTFfQkFTRSAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDdDMDBVTCkKKyNkZWZpbmUgTFBVQVJUMV9CQVNFICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDA4MDAwVUwpCisjZGVmaW5lIExQVElNMl9CQVNFICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwOTQwMFVMKQorCisvKiE8IEFQQjIgcGVyaXBoZXJhbHMgKi8KKyNkZWZpbmUgU1lTQ0ZHX0JBU0UgICAgICAgICAgIChBUEIyUEVSSVBIX0JBU0UgKyAweDAwMDAwMDAwVUwpCisjZGVmaW5lIENPTVAxX0JBU0UgICAgICAgICAgICAoQVBCMlBFUklQSF9CQVNFICsgMHgwMDAwMDIwMFVMKQorI2RlZmluZSBDT01QMl9CQVNFICAgICAgICAgICAgKEFQQjJQRVJJUEhfQkFTRSArIDB4MDAwMDAyMDRVTCkKKyNkZWZpbmUgVElNMV9CQVNFICAgICAgICAgICAgIChBUEIyUEVSSVBIX0JBU0UgKyAweDAwMDAyQzAwVUwpCisjZGVmaW5lIFNQSTFfQkFTRSAgICAgICAgICAgICAoQVBCMlBFUklQSF9CQVNFICsgMHgwMDAwMzAwMFVMKQorI2RlZmluZSBVU0FSVDFfQkFTRSAgICAgICAgICAgKEFQQjJQRVJJUEhfQkFTRSArIDB4MDAwMDM4MDBVTCkKKyNkZWZpbmUgVElNMTZfQkFTRSAgICAgICAgICAgIChBUEIyUEVSSVBIX0JBU0UgKyAweDAwMDA0NDAwVUwpCisjZGVmaW5lIFRJTTE3X0JBU0UgICAgICAgICAgICAoQVBCMlBFUklQSF9CQVNFICsgMHgwMDAwNDgwMFVMKQorCisvKiE8IEFIQjEgcGVyaXBoZXJhbHMgKi8KKyNkZWZpbmUgRE1BMV9CQVNFICAgICAgICAgICAgICAgIChBSEIxUEVSSVBIX0JBU0UgKyAweDAwMDAwMDAwVUwpCisjZGVmaW5lIERNQTJfQkFTRSAgICAgICAgICAgICAgICAoQUhCMVBFUklQSF9CQVNFICsgMHgwMDAwMDQwMFVMKQorI2RlZmluZSBETUFNVVgxX0JBU0UgICAgICAgICAgICAgKEFIQjFQRVJJUEhfQkFTRSArIDB4MDAwMDA4MDBVTCkKKyNkZWZpbmUgQ1JDX0JBU0UgICAgICAgICAgICAgICAgIChBSEIxUEVSSVBIX0JBU0UgKyAweDAwMDAzMDAwVUwpCisjZGVmaW5lIFRTQ19CQVNFICAgICAgICAgICAgICAgICAoQUhCMVBFUklQSF9CQVNFICsgMHgwMDAwNDAwMFVMKQorCisjZGVmaW5lIERNQTFfQ2hhbm5lbDFfQkFTRSAgICAgICAoRE1BMV9CQVNFICsgMHgwMDAwMDAwOFVMKQorI2RlZmluZSBETUExX0NoYW5uZWwyX0JBU0UgICAgICAgKERNQTFfQkFTRSArIDB4MDAwMDAwMUNVTCkKKyNkZWZpbmUgRE1BMV9DaGFubmVsM19CQVNFICAgICAgIChETUExX0JBU0UgKyAweDAwMDAwMDMwVUwpCisjZGVmaW5lIERNQTFfQ2hhbm5lbDRfQkFTRSAgICAgICAoRE1BMV9CQVNFICsgMHgwMDAwMDA0NFVMKQorI2RlZmluZSBETUExX0NoYW5uZWw1X0JBU0UgICAgICAgKERNQTFfQkFTRSArIDB4MDAwMDAwNThVTCkKKyNkZWZpbmUgRE1BMV9DaGFubmVsNl9CQVNFICAgICAgIChETUExX0JBU0UgKyAweDAwMDAwMDZDVUwpCisjZGVmaW5lIERNQTFfQ2hhbm5lbDdfQkFTRSAgICAgICAoRE1BMV9CQVNFICsgMHgwMDAwMDA4MFVMKQorCisjZGVmaW5lIERNQTJfQ2hhbm5lbDFfQkFTRSAgICAgICAoRE1BMl9CQVNFICsgMHgwMDAwMDAwOFVMKQorI2RlZmluZSBETUEyX0NoYW5uZWwyX0JBU0UgICAgICAgKERNQTJfQkFTRSArIDB4MDAwMDAwMUNVTCkKKyNkZWZpbmUgRE1BMl9DaGFubmVsM19CQVNFICAgICAgIChETUEyX0JBU0UgKyAweDAwMDAwMDMwVUwpCisjZGVmaW5lIERNQTJfQ2hhbm5lbDRfQkFTRSAgICAgICAoRE1BMl9CQVNFICsgMHgwMDAwMDA0NFVMKQorI2RlZmluZSBETUEyX0NoYW5uZWw1X0JBU0UgICAgICAgKERNQTJfQkFTRSArIDB4MDAwMDAwNThVTCkKKyNkZWZpbmUgRE1BMl9DaGFubmVsNl9CQVNFICAgICAgIChETUEyX0JBU0UgKyAweDAwMDAwMDZDVUwpCisjZGVmaW5lIERNQTJfQ2hhbm5lbDdfQkFTRSAgICAgICAoRE1BMl9CQVNFICsgMHgwMDAwMDA4MFVMKQorCisjZGVmaW5lIERNQU1VWDFfQ2hhbm5lbDBfQkFTRSAgICAoRE1BTVVYMV9CQVNFKQorI2RlZmluZSBETUFNVVgxX0NoYW5uZWwxX0JBU0UgICAgKERNQU1VWDFfQkFTRSArIDB4MDAwMDAwMDRVTCkKKyNkZWZpbmUgRE1BTVVYMV9DaGFubmVsMl9CQVNFICAgIChETUFNVVgxX0JBU0UgKyAweDAwMDAwMDA4VUwpCisjZGVmaW5lIERNQU1VWDFfQ2hhbm5lbDNfQkFTRSAgICAoRE1BTVVYMV9CQVNFICsgMHgwMDAwMDAwQ1VMKQorI2RlZmluZSBETUFNVVgxX0NoYW5uZWw0X0JBU0UgICAgKERNQU1VWDFfQkFTRSArIDB4MDAwMDAwMTBVTCkKKyNkZWZpbmUgRE1BTVVYMV9DaGFubmVsNV9CQVNFICAgIChETUFNVVgxX0JBU0UgKyAweDAwMDAwMDE0VUwpCisjZGVmaW5lIERNQU1VWDFfQ2hhbm5lbDZfQkFTRSAgICAoRE1BTVVYMV9CQVNFICsgMHgwMDAwMDAxOFVMKQorI2RlZmluZSBETUFNVVgxX0NoYW5uZWw3X0JBU0UgICAgKERNQU1VWDFfQkFTRSArIDB4MDAwMDAwMUNVTCkKKyNkZWZpbmUgRE1BTVVYMV9DaGFubmVsOF9CQVNFICAgIChETUFNVVgxX0JBU0UgKyAweDAwMDAwMDIwVUwpCisjZGVmaW5lIERNQU1VWDFfQ2hhbm5lbDlfQkFTRSAgICAoRE1BTVVYMV9CQVNFICsgMHgwMDAwMDAyNFVMKQorI2RlZmluZSBETUFNVVgxX0NoYW5uZWwxMF9CQVNFICAgKERNQU1VWDFfQkFTRSArIDB4MDAwMDAwMjhVTCkKKyNkZWZpbmUgRE1BTVVYMV9DaGFubmVsMTFfQkFTRSAgIChETUFNVVgxX0JBU0UgKyAweDAwMDAwMDJDVUwpCisjZGVmaW5lIERNQU1VWDFfQ2hhbm5lbDEyX0JBU0UgICAoRE1BTVVYMV9CQVNFICsgMHgwMDAwMDAzMFVMKQorI2RlZmluZSBETUFNVVgxX0NoYW5uZWwxM19CQVNFICAgKERNQU1VWDFfQkFTRSArIDB4MDAwMDAwMzRVTCkKKworI2RlZmluZSBETUFNVVgxX1JlcXVlc3RHZW5lcmF0b3IwX0JBU0UgIChETUFNVVgxX0JBU0UgKyAweDAwMDAwMTAwVUwpCisjZGVmaW5lIERNQU1VWDFfUmVxdWVzdEdlbmVyYXRvcjFfQkFTRSAgKERNQU1VWDFfQkFTRSArIDB4MDAwMDAxMDRVTCkKKyNkZWZpbmUgRE1BTVVYMV9SZXF1ZXN0R2VuZXJhdG9yMl9CQVNFICAoRE1BTVVYMV9CQVNFICsgMHgwMDAwMDEwOFVMKQorI2RlZmluZSBETUFNVVgxX1JlcXVlc3RHZW5lcmF0b3IzX0JBU0UgIChETUFNVVgxX0JBU0UgKyAweDAwMDAwMTBDVUwpCisKKyNkZWZpbmUgRE1BTVVYMV9DaGFubmVsU3RhdHVzX0JBU0UgICAgICAoRE1BTVVYMV9CQVNFICsgMHgwMDAwMDA4MFVMKQorI2RlZmluZSBETUFNVVgxX1JlcXVlc3RHZW5TdGF0dXNfQkFTRSAgIChETUFNVVgxX0JBU0UgKyAweDAwMDAwMTQwVUwpCisKKy8qITwgQUhCMiBwZXJpcGhlcmFscyAqLworI2RlZmluZSBJT1BPUlRfQkFTRSAgICAgICAgIChBSEIyUEVSSVBIX0JBU0UgKyAweDAwMDAwMDAwVUwpCisjZGVmaW5lIEdQSU9BX0JBU0UgICAgICAgICAgKElPUE9SVF9CQVNFICsgMHgwMDAwMDAwMFVMKQorI2RlZmluZSBHUElPQl9CQVNFICAgICAgICAgIChJT1BPUlRfQkFTRSArIDB4MDAwMDA0MDBVTCkKKyNkZWZpbmUgR1BJT0NfQkFTRSAgICAgICAgICAoSU9QT1JUX0JBU0UgKyAweDAwMDAwODAwVUwpCisjZGVmaW5lIEdQSU9FX0JBU0UgICAgICAgICAgKElPUE9SVF9CQVNFICsgMHgwMDAwMTAwMFVMKQorI2RlZmluZSBHUElPSF9CQVNFICAgICAgICAgIChJT1BPUlRfQkFTRSArIDB4MDAwMDFDMDBVTCkKKworI2RlZmluZSBBREMxX0JBU0UgICAgICAgICAgIChBSEIyUEVSSVBIX0JBU0UgKyAweDA4MDQwMDAwVUwpCisjZGVmaW5lIEFEQzFfQ09NTU9OX0JBU0UgICAgKEFIQjJQRVJJUEhfQkFTRSArIDB4MDgwNDAzMDBVTCkKKworI2RlZmluZSBBRVMxX0JBU0UgICAgICAgICAgIChBSEIyUEVSSVBIX0JBU0UgKyAweDA4MDYwMDAwVUwpCisKKy8qITwgQUhCIFNoYXJlZCBwZXJpcGhlcmFscyAqLworI2RlZmluZSBSQ0NfQkFTRSAgICAgICAgICAgICAgKEFIQjRQRVJJUEhfQkFTRSArIDB4MDAwMDAwMDBVTCkKKyNkZWZpbmUgUFdSX0JBU0UgICAgICAgICAgICAgIChBSEI0UEVSSVBIX0JBU0UgKyAweDAwMDAwNDAwVUwpCisjZGVmaW5lIEVYVElfQkFTRSAgICAgICAgICAgICAoQUhCNFBFUklQSF9CQVNFICsgMHgwMDAwMDgwMFVMKQorI2RlZmluZSBJUENDX0JBU0UgICAgICAgICAgICAgKEFIQjRQRVJJUEhfQkFTRSArIDB4MDAwMDBDMDBVTCkKKyNkZWZpbmUgUk5HX0JBU0UgICAgICAgICAgICAgIChBSEI0UEVSSVBIX0JBU0UgKyAweDAwMDAxMDAwVUwpCisjZGVmaW5lIEhTRU1fQkFTRSAgICAgICAgICAgICAoQUhCNFBFUklQSF9CQVNFICsgMHgwMDAwMTQwMFVMKQorI2RlZmluZSBBRVMyX0JBU0UgICAgICAgICAgICAgKEFIQjRQRVJJUEhfQkFTRSArIDB4MDAwMDE4MDBVTCkKKyNkZWZpbmUgUEtBX0JBU0UgICAgICAgICAgICAgIChBSEI0UEVSSVBIX0JBU0UgKyAweDAwMDAyMDAwVUwpCisjZGVmaW5lIEZMQVNIX1JFR19CQVNFICAgICAgICAoQUhCNFBFUklQSF9CQVNFICsgMHgwMDAwNDAwMFVMKQorCisvKiBEZWJ1ZyBNQ1UgcmVnaXN0ZXJzIGJhc2UgYWRkcmVzcyAqLworI2RlZmluZSBEQkdNQ1VfQkFTRSAgICAgICAgICAgKDB4RTAwNDIwMDBVTCkKKworCisvKiE8IEFIQjMgcGVyaXBoZXJhbHMgKi8KKyNkZWZpbmUgUVVBRFNQSV9CQVNFICAgICAgICAgICAoQUhCM1BFUklQSF9CQVNFICsgMHgwMDAwMDAwMFVMKSAvKiE8IFFVQURTUEkgbWVtb3JpZXMgYWNjZXNzaWJsZSBvdmVyIEFIQiBiYXNlIGFkZHJlc3MgKi8KKyNkZWZpbmUgUVVBRFNQSV9SX0JBU0UgICAgICAgICAoQUhCM1BFUklQSF9CQVNFICsgMHgxMDAwMTAwMFVMKSAvKiE8IFFVQURTUEkgY29udHJvbCByZWdpc3RlcnMgYmFzZSBhZGRyZXNzICovCisKKy8qITwgRGV2aWNlIEVsZWN0cm9uaWMgU2lnbmF0dXJlICovCisjZGVmaW5lIFBBQ0tBR0VfQkFTRSAgICAgICAgICAoKHVpbnQzMl90KTB4MUZGRjc1MDBVTCkgICAgICAgLyohPCBQYWNrYWdlIGRhdGEgcmVnaXN0ZXIgYmFzZSBhZGRyZXNzICAgICAqLworI2RlZmluZSBVSUQ2NF9CQVNFICAgICAgICAgICAgKCh1aW50MzJfdCkweDFGRkY3NTgwVUwpICAgICAgIC8qITwgNjQtYml0IFVuaXF1ZSBkZXZpY2UgSWRlbnRpZmljYXRpb24gICAgKi8KKyNkZWZpbmUgVUlEX0JBU0UgICAgICAgICAgICAgICgodWludDMyX3QpMHgxRkZGNzU5MFVMKSAgICAgICAvKiE8IFVuaXF1ZSBkZXZpY2UgSUQgcmVnaXN0ZXIgYmFzZSBhZGRyZXNzICovCisjZGVmaW5lIEZMQVNIU0laRV9CQVNFICAgICAgICAoKHVpbnQzMl90KTB4MUZGRjc1RTBVTCkgICAgICAgLyohPCBGbGFzaCBzaXplIGRhdGEgcmVnaXN0ZXIgYmFzZSBhZGRyZXNzICAqLworCisvKioKKyAgKiBAfQorICAqLworCisvKiogQGFkZHRvZ3JvdXAgUGVyaXBoZXJhbF9kZWNsYXJhdGlvbgorICAqIEB7CisgICovCisKKy8qIFBlcmlwaGVyYWxzIGF2YWlsYWJsZSBvbiBBUEIxIGJ1cyAqLworI2RlZmluZSBUSU0yICAgICAgICAgICAgICAgICgoVElNX1R5cGVEZWYgKikgVElNMl9CQVNFKQorI2RlZmluZSBSVEMgICAgICAgICAgICAgICAgICgoUlRDX1R5cGVEZWYgKikgUlRDX0JBU0UpCisjZGVmaW5lIFdXREcgICAgICAgICAgICAgICAgKChXV0RHX1R5cGVEZWYgKikgV1dER19CQVNFKQorI2RlZmluZSBJV0RHICAgICAgICAgICAgICAgICgoSVdER19UeXBlRGVmICopIElXREdfQkFTRSkKKyNkZWZpbmUgU1BJMiAgICAgICAgICAgICAgICAoKFNQSV9UeXBlRGVmICopIFNQSTJfQkFTRSkKKyNkZWZpbmUgSTJDMSAgICAgICAgICAgICAgICAoKEkyQ19UeXBlRGVmICopIEkyQzFfQkFTRSkKKyNkZWZpbmUgSTJDMyAgICAgICAgICAgICAgICAoKEkyQ19UeXBlRGVmICopIEkyQzNfQkFTRSkKKyNkZWZpbmUgVVNCICAgICAgICAgICAgICAgICAoKFVTQl9UeXBlRGVmICopIFVTQjFfQkFTRSkKKyNkZWZpbmUgQ1JTICAgICAgICAgICAgICAgICAoKENSU19UeXBlRGVmICopIENSU19CQVNFKQorI2RlZmluZSBMUFRJTTEgICAgICAgICAgICAgICgoTFBUSU1fVHlwZURlZiAqKSBMUFRJTTFfQkFTRSkKKyNkZWZpbmUgTFBVQVJUMSAgICAgICAgICAgICAoKFVTQVJUX1R5cGVEZWYgKikgTFBVQVJUMV9CQVNFKQorI2RlZmluZSBMUFRJTTIgICAgICAgICAgICAgICgoTFBUSU1fVHlwZURlZiAqKSBMUFRJTTJfQkFTRSkKKworLyogUGVyaXBoZXJhbHMgYXZhaWxhYmxlIG9uIEFQQjIgYnVzICovCisjZGVmaW5lIFNZU0NGRyAgICAgICAgICAgICAgKChTWVNDRkdfVHlwZURlZiAqKSBTWVNDRkdfQkFTRSkKKyNkZWZpbmUgQ09NUDEgICAgICAgICAgICAgICAoKENPTVBfVHlwZURlZiAqKSBDT01QMV9CQVNFKQorI2RlZmluZSBDT01QMiAgICAgICAgICAgICAgICgoQ09NUF9UeXBlRGVmICopIENPTVAyX0JBU0UpCisjZGVmaW5lIENPTVAxMl9DT01NT04gICAgICAgKChDT01QX0NvbW1vbl9UeXBlRGVmICopIENPTVAyX0JBU0UpCisjZGVmaW5lIFRJTTEgICAgICAgICAgICAgICAgKChUSU1fVHlwZURlZiAqKSBUSU0xX0JBU0UpCisjZGVmaW5lIFNQSTEgICAgICAgICAgICAgICAgKChTUElfVHlwZURlZiAqKSBTUEkxX0JBU0UpCisjZGVmaW5lIFVTQVJUMSAgICAgICAgICAgICAgKChVU0FSVF9UeXBlRGVmICopIFVTQVJUMV9CQVNFKQorI2RlZmluZSBUSU0xNiAgICAgICAgICAgICAgICgoVElNX1R5cGVEZWYgKikgVElNMTZfQkFTRSkKKyNkZWZpbmUgVElNMTcgICAgICAgICAgICAgICAoKFRJTV9UeXBlRGVmICopIFRJTTE3X0JBU0UpCisKKy8qIFBlcmlwaGVyYWxzIGF2YWlsYWJsZSBvbiBBSEIxIGJ1cyAqLworI2RlZmluZSBETUExICAgICAgICAgICAgICAgICgoRE1BX1R5cGVEZWYgKikgRE1BMV9CQVNFKQorI2RlZmluZSBETUExX0NoYW5uZWwxICAgICAgICgoRE1BX0NoYW5uZWxfVHlwZURlZiAqKSBETUExX0NoYW5uZWwxX0JBU0UpCisjZGVmaW5lIERNQTFfQ2hhbm5lbDIgICAgICAgKChETUFfQ2hhbm5lbF9UeXBlRGVmICopIERNQTFfQ2hhbm5lbDJfQkFTRSkKKyNkZWZpbmUgRE1BMV9DaGFubmVsMyAgICAgICAoKERNQV9DaGFubmVsX1R5cGVEZWYgKikgRE1BMV9DaGFubmVsM19CQVNFKQorI2RlZmluZSBETUExX0NoYW5uZWw0ICAgICAgICgoRE1BX0NoYW5uZWxfVHlwZURlZiAqKSBETUExX0NoYW5uZWw0X0JBU0UpCisjZGVmaW5lIERNQTFfQ2hhbm5lbDUgICAgICAgKChETUFfQ2hhbm5lbF9UeXBlRGVmICopIERNQTFfQ2hhbm5lbDVfQkFTRSkKKyNkZWZpbmUgRE1BMV9DaGFubmVsNiAgICAgICAoKERNQV9DaGFubmVsX1R5cGVEZWYgKikgRE1BMV9DaGFubmVsNl9CQVNFKQorI2RlZmluZSBETUExX0NoYW5uZWw3ICAgICAgICgoRE1BX0NoYW5uZWxfVHlwZURlZiAqKSBETUExX0NoYW5uZWw3X0JBU0UpCisKKyNkZWZpbmUgRE1BMiAgICAgICAgICAgICAgICAoKERNQV9UeXBlRGVmICopIERNQTJfQkFTRSkKKyNkZWZpbmUgRE1BMl9DaGFubmVsMSAgICAgICAoKERNQV9DaGFubmVsX1R5cGVEZWYgKikgRE1BMl9DaGFubmVsMV9CQVNFKQorI2RlZmluZSBETUEyX0NoYW5uZWwyICAgICAgICgoRE1BX0NoYW5uZWxfVHlwZURlZiAqKSBETUEyX0NoYW5uZWwyX0JBU0UpCisjZGVmaW5lIERNQTJfQ2hhbm5lbDMgICAgICAgKChETUFfQ2hhbm5lbF9UeXBlRGVmICopIERNQTJfQ2hhbm5lbDNfQkFTRSkKKyNkZWZpbmUgRE1BMl9DaGFubmVsNCAgICAgICAoKERNQV9DaGFubmVsX1R5cGVEZWYgKikgRE1BMl9DaGFubmVsNF9CQVNFKQorI2RlZmluZSBETUEyX0NoYW5uZWw1ICAgICAgICgoRE1BX0NoYW5uZWxfVHlwZURlZiAqKSBETUEyX0NoYW5uZWw1X0JBU0UpCisjZGVmaW5lIERNQTJfQ2hhbm5lbDYgICAgICAgKChETUFfQ2hhbm5lbF9UeXBlRGVmICopIERNQTJfQ2hhbm5lbDZfQkFTRSkKKyNkZWZpbmUgRE1BMl9DaGFubmVsNyAgICAgICAoKERNQV9DaGFubmVsX1R5cGVEZWYgKikgRE1BMl9DaGFubmVsN19CQVNFKQorCisjZGVmaW5lIERNQU1VWDEgICAgICAgICAgICAgKChETUFNVVhfQ2hhbm5lbF9UeXBlRGVmICopIERNQU1VWDFfQkFTRSkKKyNkZWZpbmUgRE1BTVVYMV9DaGFubmVsMCAgICAoKERNQU1VWF9DaGFubmVsX1R5cGVEZWYgKikgRE1BTVVYMV9DaGFubmVsMF9CQVNFKQorI2RlZmluZSBETUFNVVgxX0NoYW5uZWwxICAgICgoRE1BTVVYX0NoYW5uZWxfVHlwZURlZiAqKSBETUFNVVgxX0NoYW5uZWwxX0JBU0UpCisjZGVmaW5lIERNQU1VWDFfQ2hhbm5lbDIgICAgKChETUFNVVhfQ2hhbm5lbF9UeXBlRGVmICopIERNQU1VWDFfQ2hhbm5lbDJfQkFTRSkKKyNkZWZpbmUgRE1BTVVYMV9DaGFubmVsMyAgICAoKERNQU1VWF9DaGFubmVsX1R5cGVEZWYgKikgRE1BTVVYMV9DaGFubmVsM19CQVNFKQorI2RlZmluZSBETUFNVVgxX0NoYW5uZWw0ICAgICgoRE1BTVVYX0NoYW5uZWxfVHlwZURlZiAqKSBETUFNVVgxX0NoYW5uZWw0X0JBU0UpCisjZGVmaW5lIERNQU1VWDFfQ2hhbm5lbDUgICAgKChETUFNVVhfQ2hhbm5lbF9UeXBlRGVmICopIERNQU1VWDFfQ2hhbm5lbDVfQkFTRSkKKyNkZWZpbmUgRE1BTVVYMV9DaGFubmVsNiAgICAoKERNQU1VWF9DaGFubmVsX1R5cGVEZWYgKikgRE1BTVVYMV9DaGFubmVsNl9CQVNFKQorI2RlZmluZSBETUFNVVgxX0NoYW5uZWw3ICAgICgoRE1BTVVYX0NoYW5uZWxfVHlwZURlZiAqKSBETUFNVVgxX0NoYW5uZWw3X0JBU0UpCisjZGVmaW5lIERNQU1VWDFfQ2hhbm5lbDggICAgKChETUFNVVhfQ2hhbm5lbF9UeXBlRGVmICopIERNQU1VWDFfQ2hhbm5lbDhfQkFTRSkKKyNkZWZpbmUgRE1BTVVYMV9DaGFubmVsOSAgICAoKERNQU1VWF9DaGFubmVsX1R5cGVEZWYgKikgRE1BTVVYMV9DaGFubmVsOV9CQVNFKQorI2RlZmluZSBETUFNVVgxX0NoYW5uZWwxMCAgICgoRE1BTVVYX0NoYW5uZWxfVHlwZURlZiAqKSBETUFNVVgxX0NoYW5uZWwxMF9CQVNFKQorI2RlZmluZSBETUFNVVgxX0NoYW5uZWwxMSAgICgoRE1BTVVYX0NoYW5uZWxfVHlwZURlZiAqKSBETUFNVVgxX0NoYW5uZWwxMV9CQVNFKQorI2RlZmluZSBETUFNVVgxX0NoYW5uZWwxMiAgICgoRE1BTVVYX0NoYW5uZWxfVHlwZURlZiAqKSBETUFNVVgxX0NoYW5uZWwxMl9CQVNFKQorI2RlZmluZSBETUFNVVgxX0NoYW5uZWwxMyAgICgoRE1BTVVYX0NoYW5uZWxfVHlwZURlZiAqKSBETUFNVVgxX0NoYW5uZWwxM19CQVNFKQorCisjZGVmaW5lIERNQU1VWDFfUmVxdWVzdEdlbmVyYXRvcjAgICgoRE1BTVVYX1JlcXVlc3RHZW5fVHlwZURlZiAqKSBETUFNVVgxX1JlcXVlc3RHZW5lcmF0b3IwX0JBU0UpCisjZGVmaW5lIERNQU1VWDFfUmVxdWVzdEdlbmVyYXRvcjEgICgoRE1BTVVYX1JlcXVlc3RHZW5fVHlwZURlZiAqKSBETUFNVVgxX1JlcXVlc3RHZW5lcmF0b3IxX0JBU0UpCisjZGVmaW5lIERNQU1VWDFfUmVxdWVzdEdlbmVyYXRvcjIgICgoRE1BTVVYX1JlcXVlc3RHZW5fVHlwZURlZiAqKSBETUFNVVgxX1JlcXVlc3RHZW5lcmF0b3IyX0JBU0UpCisjZGVmaW5lIERNQU1VWDFfUmVxdWVzdEdlbmVyYXRvcjMgICgoRE1BTVVYX1JlcXVlc3RHZW5fVHlwZURlZiAqKSBETUFNVVgxX1JlcXVlc3RHZW5lcmF0b3IzX0JBU0UpCisKKyNkZWZpbmUgRE1BTVVYMV9DaGFubmVsU3RhdHVzICAgICAgKChETUFNVVhfQ2hhbm5lbFN0YXR1c19UeXBlRGVmICopIERNQU1VWDFfQ2hhbm5lbFN0YXR1c19CQVNFKQorI2RlZmluZSBETUFNVVgxX1JlcXVlc3RHZW5TdGF0dXMgICAoKERNQU1VWF9SZXF1ZXN0R2VuU3RhdHVzX1R5cGVEZWYgKikgRE1BTVVYMV9SZXF1ZXN0R2VuU3RhdHVzX0JBU0UpCisKKyNkZWZpbmUgQ1JDICAgICAgICAgICAgICAgICAoKENSQ19UeXBlRGVmICopIENSQ19CQVNFKQorI2RlZmluZSBUU0MgICAgICAgICAgICAgICAgICgoVFNDX1R5cGVEZWYgKikgVFNDX0JBU0UpCisKKy8qIFBlcmlwaGVyYWxzIGF2YWlsYWJsZSBvbiBBSEIyIGJ1cyAqLworI2RlZmluZSBHUElPQSAgICAgICAgICAgICAgICgoR1BJT19UeXBlRGVmICopIEdQSU9BX0JBU0UpCisjZGVmaW5lIEdQSU9CICAgICAgICAgICAgICAgKChHUElPX1R5cGVEZWYgKikgR1BJT0JfQkFTRSkKKyNkZWZpbmUgR1BJT0MgICAgICAgICAgICAgICAoKEdQSU9fVHlwZURlZiAqKSBHUElPQ19CQVNFKQorI2RlZmluZSBHUElPRSAgICAgICAgICAgICAgICgoR1BJT19UeXBlRGVmICopIEdQSU9FX0JBU0UpCisjZGVmaW5lIEdQSU9IICAgICAgICAgICAgICAgKChHUElPX1R5cGVEZWYgKikgR1BJT0hfQkFTRSkKKworI2RlZmluZSBBREMxICAgICAgICAgICAgICAgICgoQURDX1R5cGVEZWYgKikgQURDMV9CQVNFKQorI2RlZmluZSBBREMxX0NPTU1PTiAgICAgICAgICgoQURDX0NvbW1vbl9UeXBlRGVmICopIEFEQzFfQ09NTU9OX0JBU0UpCisKKyNkZWZpbmUgQUVTMSAgICAgICAgICAgICAgICAoKEFFU19UeXBlRGVmICopIEFFUzFfQkFTRSkKKworLyogUGVyaXBoZXJhbHMgYXZhaWxhYmxlIG9uIEFIQiBzaGFyZWQgYnVzICovCisjZGVmaW5lIFJDQyAgICAgICAgICAgICAgICAgKChSQ0NfVHlwZURlZiAqKSBSQ0NfQkFTRSkKKyNkZWZpbmUgUFdSICAgICAgICAgICAgICAgICAoKFBXUl9UeXBlRGVmICopIFBXUl9CQVNFKQorI2RlZmluZSBFWFRJICAgICAgICAgICAgICAgICgoRVhUSV9UeXBlRGVmICopIEVYVElfQkFTRSkKKyNkZWZpbmUgSVBDQyAgICAgICAgICAgICAgICAoKElQQ0NfVHlwZURlZiAqKSBJUENDX0JBU0UpCisjZGVmaW5lIElQQ0NfQzEgICAgICAgICAgICAgKChJUENDX0NvbW1vblR5cGVEZWYgKikgSVBDQ19CQVNFKQorI2RlZmluZSBJUENDX0MyICAgICAgICAgICAgICgoSVBDQ19Db21tb25UeXBlRGVmICopIChJUENDX0JBU0UgKyAweDEwVSkpCisjZGVmaW5lIFJORyAgICAgICAgICAgICAgICAgKChSTkdfVHlwZURlZiAqKSBSTkdfQkFTRSkKKyNkZWZpbmUgSFNFTSAgICAgICAgICAgICAgICAoKEhTRU1fVHlwZURlZiAqKSBIU0VNX0JBU0UpCisjZGVmaW5lIEhTRU1fQ09NTU9OICAgICAgICAgKChIU0VNX0NvbW1vbl9UeXBlRGVmICopIChIU0VNX0JBU0UgKyAweDEwMFUpKQorI2RlZmluZSBBRVMyICAgICAgICAgICAgICAgICgoQUVTX1R5cGVEZWYgKikgQUVTMl9CQVNFKQorI2RlZmluZSBQS0EgICAgICAgICAgICAgICAgICgoUEtBX1R5cGVEZWYgKikgUEtBX0JBU0UpCisjZGVmaW5lIEZMQVNIICAgICAgICAgICAgICAgKChGTEFTSF9UeXBlRGVmICopIEZMQVNIX1JFR19CQVNFKQorCisvKiBQZXJpcGhlcmFscyBhdmFpbGFibGUgb24gQUhCMyBidXMgKi8KKyNkZWZpbmUgUVVBRFNQSSAgICAgICAgICAgICAoKFFVQURTUElfVHlwZURlZiAqKSBRVUFEU1BJX1JfQkFTRSkKKworI2RlZmluZSBEQkdNQ1UgICAgICAgICAgICAgICgoREJHTUNVX1R5cGVEZWYgKikgREJHTUNVX0JBU0UpCisvKioKKyAgKiBAfQorICAqLworCisvKiogQGFkZHRvZ3JvdXAgRXhwb3J0ZWRfY29uc3RhbnRzCisgICogQHsKKyAgKi8KKworLyoqIEBhZGR0b2dyb3VwIFBlcmlwaGVyYWxfUmVnaXN0ZXJzX0JpdHNfRGVmaW5pdGlvbgorICAqIEB7CisgICovCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKiAgICAgICAgICAgICAgICAgICAgICAgICBQZXJpcGhlcmFsIFJlZ2lzdGVycyBCaXRzIERlZmluaXRpb24gICAgICAgICAgICAgICAqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisvKiAgICAgICAgICAgICAgICAgICAgICBBbmFsb2cgdG8gRGlnaXRhbCBDb252ZXJ0ZXIgKEFEQykgICAgICAgICAgICAgICAgICAgICAqLworLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfSVNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBBRENfSVNSX0FEUkRZX1BvcyAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX0lTUl9BRFJEWV9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgQURDX0lTUl9BRFJEWV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgQURDX0lTUl9BRFJEWSAgICAgICAgICAgICAgICBBRENfSVNSX0FEUkRZX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyByZWFkeSBmbGFnICovCisjZGVmaW5lIEFEQ19JU1JfRU9TTVBfUG9zICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19JU1JfRU9TTVBfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19JU1JfRU9TTVBfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIEFEQ19JU1JfRU9TTVAgICAgICAgICAgICAgICAgQURDX0lTUl9FT1NNUF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBlbmQgb2Ygc2FtcGxpbmcgZmxhZyAqLworI2RlZmluZSBBRENfSVNSX0VPQ19Qb3MgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfSVNSX0VPQ19Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBBRENfSVNSX0VPQ19Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBBRENfSVNSX0VPQyAgICAgICAgICAgICAgICAgIEFEQ19JU1JfRU9DX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgZW5kIG9mIHVuaXRhcnkgY29udmVyc2lvbiBmbGFnICovCisjZGVmaW5lIEFEQ19JU1JfRU9TX1BvcyAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19JU1JfRU9TX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19JU1JfRU9TX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIEFEQ19JU1JfRU9TICAgICAgICAgICAgICAgICAgQURDX0lTUl9FT1NfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBlbmQgb2Ygc2VxdWVuY2UgY29udmVyc2lvbnMgZmxhZyAqLworI2RlZmluZSBBRENfSVNSX09WUl9Qb3MgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfSVNSX09WUl9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBBRENfSVNSX09WUl9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBBRENfSVNSX09WUiAgICAgICAgICAgICAgICAgIEFEQ19JU1JfT1ZSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgb3ZlcnJ1biBmbGFnICovCisjZGVmaW5lIEFEQ19JU1JfSkVPQ19Qb3MgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19JU1JfSkVPQ19Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19JU1JfSkVPQ19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIEFEQ19JU1JfSkVPQyAgICAgICAgICAgICAgICAgQURDX0lTUl9KRU9DX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgZW5kIG9mIHVuaXRhcnkgY29udmVyc2lvbiBmbGFnICovCisjZGVmaW5lIEFEQ19JU1JfSkVPU19Qb3MgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19JU1JfSkVPU19Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19JU1JfSkVPU19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIEFEQ19JU1JfSkVPUyAgICAgICAgICAgICAgICAgQURDX0lTUl9KRU9TX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgZW5kIG9mIHNlcXVlbmNlIGNvbnZlcnNpb25zIGZsYWcgKi8KKyNkZWZpbmUgQURDX0lTUl9BV0QxX1BvcyAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX0lTUl9BV0QxX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX0lTUl9BV0QxX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgQURDX0lTUl9BV0QxICAgICAgICAgICAgICAgICBBRENfSVNSX0FXRDFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBhbmFsb2cgd2F0Y2hkb2cgMSBmbGFnICovCisjZGVmaW5lIEFEQ19JU1JfQVdEMl9Qb3MgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19JU1JfQVdEMl9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19JU1JfQVdEMl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIEFEQ19JU1JfQVdEMiAgICAgICAgICAgICAgICAgQURDX0lTUl9BV0QyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgYW5hbG9nIHdhdGNoZG9nIDIgZmxhZyAqLworI2RlZmluZSBBRENfSVNSX0FXRDNfUG9zICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfSVNSX0FXRDNfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBBRENfSVNSX0FXRDNfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBBRENfSVNSX0FXRDMgICAgICAgICAgICAgICAgIEFEQ19JU1JfQVdEM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGFuYWxvZyB3YXRjaGRvZyAzIGZsYWcgKi8KKyNkZWZpbmUgQURDX0lTUl9KUU9WRl9Qb3MgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX0lTUl9KUU9WRl9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgQURDX0lTUl9KUU9WRl9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgQURDX0lTUl9KUU9WRiAgICAgICAgICAgICAgICBBRENfSVNSX0pRT1ZGX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBjb250ZXh0cyBxdWV1ZSBvdmVyZmxvdyBmbGFnICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19JRVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIEFEQ19JRVJfQURSRFlJRV9Qb3MgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19JRVJfQURSRFlJRV9Nc2sgICAgICAgICAgKDB4MVVMIDw8IEFEQ19JRVJfQURSRFlJRV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIEFEQ19JRVJfQURSRFlJRSAgICAgICAgICAgICAgQURDX0lFUl9BRFJEWUlFX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgcmVhZHkgaW50ZXJydXB0ICovCisjZGVmaW5lIEFEQ19JRVJfRU9TTVBJRV9Qb3MgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19JRVJfRU9TTVBJRV9Nc2sgICAgICAgICAgKDB4MVVMIDw8IEFEQ19JRVJfRU9TTVBJRV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIEFEQ19JRVJfRU9TTVBJRSAgICAgICAgICAgICAgQURDX0lFUl9FT1NNUElFX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBlbmQgb2Ygc2FtcGxpbmcgaW50ZXJydXB0ICovCisjZGVmaW5lIEFEQ19JRVJfRU9DSUVfUG9zICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19JRVJfRU9DSUVfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19JRVJfRU9DSUVfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIEFEQ19JRVJfRU9DSUUgICAgICAgICAgICAgICAgQURDX0lFUl9FT0NJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBlbmQgb2YgdW5pdGFyeSBjb252ZXJzaW9uIGludGVycnVwdCAqLworI2RlZmluZSBBRENfSUVSX0VPU0lFX1BvcyAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfSUVSX0VPU0lFX01zayAgICAgICAgICAgICgweDFVTCA8PCBBRENfSUVSX0VPU0lFX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBBRENfSUVSX0VPU0lFICAgICAgICAgICAgICAgIEFEQ19JRVJfRU9TSUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgZW5kIG9mIHNlcXVlbmNlIGNvbnZlcnNpb25zIGludGVycnVwdCAqLworI2RlZmluZSBBRENfSUVSX09WUklFX1BvcyAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfSUVSX09WUklFX01zayAgICAgICAgICAgICgweDFVTCA8PCBBRENfSUVSX09WUklFX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBBRENfSUVSX09WUklFICAgICAgICAgICAgICAgIEFEQ19JRVJfT1ZSSUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgb3ZlcnJ1biBpbnRlcnJ1cHQgKi8KKyNkZWZpbmUgQURDX0lFUl9KRU9DSUVfUG9zICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX0lFUl9KRU9DSUVfTXNrICAgICAgICAgICAoMHgxVUwgPDwgQURDX0lFUl9KRU9DSUVfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgQURDX0lFUl9KRU9DSUUgICAgICAgICAgICAgICBBRENfSUVSX0pFT0NJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBlbmQgb2YgdW5pdGFyeSBjb252ZXJzaW9uIGludGVycnVwdCAqLworI2RlZmluZSBBRENfSUVSX0pFT1NJRV9Qb3MgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfSUVSX0pFT1NJRV9Nc2sgICAgICAgICAgICgweDFVTCA8PCBBRENfSUVSX0pFT1NJRV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBBRENfSUVSX0pFT1NJRSAgICAgICAgICAgICAgIEFEQ19JRVJfSkVPU0lFX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIGVuZCBvZiBzZXF1ZW5jZSBjb252ZXJzaW9ucyBpbnRlcnJ1cHQgKi8KKyNkZWZpbmUgQURDX0lFUl9BV0QxSUVfUG9zICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX0lFUl9BV0QxSUVfTXNrICAgICAgICAgICAoMHgxVUwgPDwgQURDX0lFUl9BV0QxSUVfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgQURDX0lFUl9BV0QxSUUgICAgICAgICAgICAgICBBRENfSUVSX0FXRDFJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBhbmFsb2cgd2F0Y2hkb2cgMSBpbnRlcnJ1cHQgKi8KKyNkZWZpbmUgQURDX0lFUl9BV0QySUVfUG9zICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX0lFUl9BV0QySUVfTXNrICAgICAgICAgICAoMHgxVUwgPDwgQURDX0lFUl9BV0QySUVfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgQURDX0lFUl9BV0QySUUgICAgICAgICAgICAgICBBRENfSUVSX0FXRDJJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBhbmFsb2cgd2F0Y2hkb2cgMiBpbnRlcnJ1cHQgKi8KKyNkZWZpbmUgQURDX0lFUl9BV0QzSUVfUG9zICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX0lFUl9BV0QzSUVfTXNrICAgICAgICAgICAoMHgxVUwgPDwgQURDX0lFUl9BV0QzSUVfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgQURDX0lFUl9BV0QzSUUgICAgICAgICAgICAgICBBRENfSUVSX0FXRDNJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBhbmFsb2cgd2F0Y2hkb2cgMyBpbnRlcnJ1cHQgKi8KKyNkZWZpbmUgQURDX0lFUl9KUU9WRklFX1BvcyAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX0lFUl9KUU9WRklFX01zayAgICAgICAgICAoMHgxVUwgPDwgQURDX0lFUl9KUU9WRklFX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgQURDX0lFUl9KUU9WRklFICAgICAgICAgICAgICBBRENfSUVSX0pRT1ZGSUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBjb250ZXh0cyBxdWV1ZSBvdmVyZmxvdyBpbnRlcnJ1cHQgKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgQURDX0NSX0FERU5fUG9zICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX0NSX0FERU5fTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX0NSX0FERU5fUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgQURDX0NSX0FERU4gICAgICAgICAgICAgICAgICBBRENfQ1JfQURFTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBlbmFibGUgKi8KKyNkZWZpbmUgQURDX0NSX0FERElTX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX0NSX0FERElTX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX0NSX0FERElTX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgQURDX0NSX0FERElTICAgICAgICAgICAgICAgICBBRENfQ1JfQURESVNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBkaXNhYmxlICovCisjZGVmaW5lIEFEQ19DUl9BRFNUQVJUX1BvcyAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19DUl9BRFNUQVJUX01zayAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19DUl9BRFNUQVJUX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIEFEQ19DUl9BRFNUQVJUICAgICAgICAgICAgICAgQURDX0NSX0FEU1RBUlRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBjb252ZXJzaW9uIHN0YXJ0ICovCisjZGVmaW5lIEFEQ19DUl9KQURTVEFSVF9Qb3MgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19DUl9KQURTVEFSVF9Nc2sgICAgICAgICAgKDB4MVVMIDw8IEFEQ19DUl9KQURTVEFSVF9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIEFEQ19DUl9KQURTVEFSVCAgICAgICAgICAgICAgQURDX0NSX0pBRFNUQVJUX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgY29udmVyc2lvbiBzdGFydCAqLworI2RlZmluZSBBRENfQ1JfQURTVFBfUG9zICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfQ1JfQURTVFBfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBBRENfQ1JfQURTVFBfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBBRENfQ1JfQURTVFAgICAgICAgICAgICAgICAgIEFEQ19DUl9BRFNUUF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgY29udmVyc2lvbiBzdG9wICovCisjZGVmaW5lIEFEQ19DUl9KQURTVFBfUG9zICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19DUl9KQURTVFBfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19DUl9KQURTVFBfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIEFEQ19DUl9KQURTVFAgICAgICAgICAgICAgICAgQURDX0NSX0pBRFNUUF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgY29udmVyc2lvbiBzdG9wICovCisjZGVmaW5lIEFEQ19DUl9BRFZSRUdFTl9Qb3MgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19DUl9BRFZSRUdFTl9Nc2sgICAgICAgICAgKDB4MVVMIDw8IEFEQ19DUl9BRFZSRUdFTl9Qb3MpICAgICAgICAgICAgLyohPCAweDEwMDAwMDAwICovCisjZGVmaW5lIEFEQ19DUl9BRFZSRUdFTiAgICAgICAgICAgICAgQURDX0NSX0FEVlJFR0VOX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgdm9sdGFnZSByZWd1bGF0b3IgZW5hYmxlICovCisjZGVmaW5lIEFEQ19DUl9ERUVQUFdEX1BvcyAgICAgICAgICAgKDI5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19DUl9ERUVQUFdEX01zayAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19DUl9ERUVQUFdEX1BvcykgICAgICAgICAgICAgLyohPCAweDIwMDAwMDAwICovCisjZGVmaW5lIEFEQ19DUl9ERUVQUFdEICAgICAgICAgICAgICAgQURDX0NSX0RFRVBQV0RfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZGVlcCBwb3dlciBkb3duIGVuYWJsZSAqLworI2RlZmluZSBBRENfQ1JfQURDQUxESUZfUG9zICAgICAgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfQ1JfQURDQUxESUZfTXNrICAgICAgICAgICgweDFVTCA8PCBBRENfQ1JfQURDQUxESUZfUG9zKSAgICAgICAgICAgIC8qITwgMHg0MDAwMDAwMCAqLworI2RlZmluZSBBRENfQ1JfQURDQUxESUYgICAgICAgICAgICAgIEFEQ19DUl9BRENBTERJRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGRpZmZlcmVudGlhbCBtb2RlIGZvciBjYWxpYnJhdGlvbiAqLworI2RlZmluZSBBRENfQ1JfQURDQUxfUG9zICAgICAgICAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfQ1JfQURDQUxfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBBRENfQ1JfQURDQUxfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHg4MDAwMDAwMCAqLworI2RlZmluZSBBRENfQ1JfQURDQUwgICAgICAgICAgICAgICAgIEFEQ19DUl9BRENBTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGNhbGlicmF0aW9uICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19DRkdSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIEFEQ19DRkdSX0RNQUVOX1BvcyAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19DRkdSX0RNQUVOX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX0NGR1JfRE1BRU5fUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIEFEQ19DRkdSX0RNQUVOICAgICAgICAgICAgICAgICBBRENfQ0ZHUl9ETUFFTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgRE1BIGVuYWJsZSAqLworI2RlZmluZSBBRENfQ0ZHUl9ETUFDRkdfUG9zICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfQ0ZHUl9ETUFDRkdfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19DRkdSX0RNQUNGR19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBBRENfQ0ZHUl9ETUFDRkcgICAgICAgICAgICAgICAgQURDX0NGR1JfRE1BQ0ZHX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIERNQSBjb25maWd1cmF0aW9uICovCisKKyNkZWZpbmUgQURDX0NGR1JfUkVTX1BvcyAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX0NGR1JfUkVTX01zayAgICAgICAgICAgICAgICgweDNVTCA8PCBBRENfQ0ZHUl9SRVNfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTggKi8KKyNkZWZpbmUgQURDX0NGR1JfUkVTICAgICAgICAgICAgICAgICAgIEFEQ19DRkdSX1JFU19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBkYXRhIHJlc29sdXRpb24gKi8KKyNkZWZpbmUgQURDX0NGR1JfUkVTXzAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBBRENfQ0ZHUl9SRVNfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgQURDX0NGR1JfUkVTXzEgICAgICAgICAgICAgICAgICgweDJVTCA8PCBBRENfQ0ZHUl9SRVNfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKworI2RlZmluZSBBRENfQ0ZHUl9BTElHTl9Qb3MgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfQ0ZHUl9BTElHTl9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19DRkdSX0FMSUdOX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBBRENfQ0ZHUl9BTElHTiAgICAgICAgICAgICAgICAgQURDX0NGR1JfQUxJR05fTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGRhdGEgYWxpZ25lbWVudCAqLworCisjZGVmaW5lIEFEQ19DRkdSX0VYVFNFTF9Qb3MgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19DRkdSX0VYVFNFTF9Nc2sgICAgICAgICAgICAoMHhGVUwgPDwgQURDX0NGR1JfRVhUU0VMX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwM0MwICovCisjZGVmaW5lIEFEQ19DRkdSX0VYVFNFTCAgICAgICAgICAgICAgICBBRENfQ0ZHUl9FWFRTRUxfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBleHRlcm5hbCB0cmlnZ2VyIHNvdXJjZSAqLworI2RlZmluZSBBRENfQ0ZHUl9FWFRTRUxfMCAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19DRkdSX0VYVFNFTF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBBRENfQ0ZHUl9FWFRTRUxfMSAgICAgICAgICAgICAgKDB4MlVMIDw8IEFEQ19DRkdSX0VYVFNFTF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLworI2RlZmluZSBBRENfQ0ZHUl9FWFRTRUxfMiAgICAgICAgICAgICAgKDB4NFVMIDw8IEFEQ19DRkdSX0VYVFNFTF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBBRENfQ0ZHUl9FWFRTRUxfMyAgICAgICAgICAgICAgKDB4OFVMIDw8IEFEQ19DRkdSX0VYVFNFTF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworCisjZGVmaW5lIEFEQ19DRkdSX0VYVEVOX1BvcyAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19DRkdSX0VYVEVOX01zayAgICAgICAgICAgICAoMHgzVUwgPDwgQURDX0NGR1JfRVhURU5fUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwQzAwICovCisjZGVmaW5lIEFEQ19DRkdSX0VYVEVOICAgICAgICAgICAgICAgICBBRENfQ0ZHUl9FWFRFTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBleHRlcm5hbCB0cmlnZ2VyIHBvbGFyaXR5ICovCisjZGVmaW5lIEFEQ19DRkdSX0VYVEVOXzAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX0NGR1JfRVhURU5fUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLworI2RlZmluZSBBRENfQ0ZHUl9FWFRFTl8xICAgICAgICAgICAgICAgKDB4MlVMIDw8IEFEQ19DRkdSX0VYVEVOX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKworI2RlZmluZSBBRENfQ0ZHUl9PVlJNT0RfUG9zICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfQ0ZHUl9PVlJNT0RfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19DRkdSX09WUk1PRF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBBRENfQ0ZHUl9PVlJNT0QgICAgICAgICAgICAgICAgQURDX0NGR1JfT1ZSTU9EX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgb3ZlcnJ1biBjb25maWd1cmF0aW9uICovCisjZGVmaW5lIEFEQ19DRkdSX0NPTlRfUG9zICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19DRkdSX0NPTlRfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX0NGR1JfQ09OVF9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIEFEQ19DRkdSX0NPTlQgICAgICAgICAgICAgICAgICBBRENfQ0ZHUl9DT05UX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBjb250aW51b3VzIGNvbnZlcnNpb24gbW9kZSAqLworI2RlZmluZSBBRENfQ0ZHUl9BVVRETFlfUG9zICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfQ0ZHUl9BVVRETFlfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19DRkdSX0FVVERMWV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLworI2RlZmluZSBBRENfQ0ZHUl9BVVRETFkgICAgICAgICAgICAgICAgQURDX0NGR1JfQVVURExZX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGxvdyBwb3dlciBhdXRvIHdhaXQgKi8KKworI2RlZmluZSBBRENfQ0ZHUl9ESVNDRU5fUG9zICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfQ0ZHUl9ESVNDRU5fTXNrICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19DRkdSX0RJU0NFTl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBBRENfQ0ZHUl9ESVNDRU4gICAgICAgICAgICAgICAgQURDX0NGR1JfRElTQ0VOX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIGRpc2NvbnRpbnVvdXMgbW9kZSAqLworCisjZGVmaW5lIEFEQ19DRkdSX0RJU0NOVU1fUG9zICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19DRkdSX0RJU0NOVU1fTXNrICAgICAgICAgICAoMHg3VUwgPDwgQURDX0NGR1JfRElTQ05VTV9Qb3MpICAgICAgICAgLyohPCAweDAwMEUwMDAwICovCisjZGVmaW5lIEFEQ19DRkdSX0RJU0NOVU0gICAgICAgICAgICAgICBBRENfQ0ZHUl9ESVNDTlVNX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgRGlzY29udGludW91cyBtb2RlIGNoYW5uZWwgY291bnQgKi8KKyNkZWZpbmUgQURDX0NGR1JfRElTQ05VTV8wICAgICAgICAgICAgICgweDFVTCA8PCBBRENfQ0ZHUl9ESVNDTlVNX1BvcykgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgQURDX0NGR1JfRElTQ05VTV8xICAgICAgICAgICAgICgweDJVTCA8PCBBRENfQ0ZHUl9ESVNDTlVNX1BvcykgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgQURDX0NGR1JfRElTQ05VTV8yICAgICAgICAgICAgICgweDRVTCA8PCBBRENfQ0ZHUl9ESVNDTlVNX1BvcykgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8KKworI2RlZmluZSBBRENfQ0ZHUl9KRElTQ0VOX1BvcyAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfQ0ZHUl9KRElTQ0VOX01zayAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19DRkdSX0pESVNDRU5fUG9zKSAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLworI2RlZmluZSBBRENfQ0ZHUl9KRElTQ0VOICAgICAgICAgICAgICAgQURDX0NGR1JfSkRJU0NFTl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIERpc2NvbnRpbnVvdXMgbW9kZSBvbiBpbmplY3RlZCBjaGFubmVscyAqLworI2RlZmluZSBBRENfQ0ZHUl9KUU1fUG9zICAgICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfQ0ZHUl9KUU1fTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19DRkdSX0pRTV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLworI2RlZmluZSBBRENfQ0ZHUl9KUU0gICAgICAgICAgICAgICAgICAgQURDX0NGR1JfSlFNX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIGNvbnRleHRzIHF1ZXVlIG1vZGUgKi8KKyNkZWZpbmUgQURDX0NGR1JfQVdEMVNHTF9Qb3MgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX0NGR1JfQVdEMVNHTF9Nc2sgICAgICAgICAgICgweDFVTCA8PCBBRENfQ0ZHUl9BV0QxU0dMX1BvcykgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8KKyNkZWZpbmUgQURDX0NGR1JfQVdEMVNHTCAgICAgICAgICAgICAgIEFEQ19DRkdSX0FXRDFTR0xfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBhbmFsb2cgd2F0Y2hkb2cgMSBtb25pdG9yaW5nIGEgc2luZ2xlIGNoYW5uZWwgb3IgYWxsIGNoYW5uZWxzICovCisjZGVmaW5lIEFEQ19DRkdSX0FXRDFFTl9Qb3MgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19DRkdSX0FXRDFFTl9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgQURDX0NGR1JfQVdEMUVOX1BvcykgICAgICAgICAgLyohPCAweDAwODAwMDAwICovCisjZGVmaW5lIEFEQ19DRkdSX0FXRDFFTiAgICAgICAgICAgICAgICBBRENfQ0ZHUl9BV0QxRU5fTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgYW5hbG9nIHdhdGNoZG9nIDEgZW5hYmxlIG9uIHNjb3BlIEFEQyBncm91cCByZWd1bGFyICovCisjZGVmaW5lIEFEQ19DRkdSX0pBV0QxRU5fUG9zICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19DRkdSX0pBV0QxRU5fTXNrICAgICAgICAgICAoMHgxVUwgPDwgQURDX0NGR1JfSkFXRDFFTl9Qb3MpICAgICAgICAgLyohPCAweDAxMDAwMDAwICovCisjZGVmaW5lIEFEQ19DRkdSX0pBV0QxRU4gICAgICAgICAgICAgICBBRENfQ0ZHUl9KQVdEMUVOX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgYW5hbG9nIHdhdGNoZG9nIDEgZW5hYmxlIG9uIHNjb3BlIEFEQyBncm91cCBpbmplY3RlZCAqLworI2RlZmluZSBBRENfQ0ZHUl9KQVVUT19Qb3MgICAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfQ0ZHUl9KQVVUT19Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19DRkdSX0pBVVRPX1BvcykgICAgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLworI2RlZmluZSBBRENfQ0ZHUl9KQVVUTyAgICAgICAgICAgICAgICAgQURDX0NGR1JfSkFVVE9fTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIGF1dG9tYXRpYyB0cmlnZ2VyIG1vZGUgKi8KKworI2RlZmluZSBBRENfQ0ZHUl9BV0QxQ0hfUG9zICAgICAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfQ0ZHUl9BV0QxQ0hfTXNrICAgICAgICAgICAgKDB4MUZVTCA8PCBBRENfQ0ZHUl9BV0QxQ0hfUG9zKSAgICAgICAgIC8qITwgMHg3QzAwMDAwMCAqLworI2RlZmluZSBBRENfQ0ZHUl9BV0QxQ0ggICAgICAgICAgICAgICAgQURDX0NGR1JfQVdEMUNIX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGFuYWxvZyB3YXRjaGRvZyAxIG1vbml0b3JlZCBjaGFubmVsIHNlbGVjdGlvbiAqLworI2RlZmluZSBBRENfQ0ZHUl9BV0QxQ0hfMCAgICAgICAgICAgICAgKDB4MDFVTCA8PCBBRENfQ0ZHUl9BV0QxQ0hfUG9zKSAgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLworI2RlZmluZSBBRENfQ0ZHUl9BV0QxQ0hfMSAgICAgICAgICAgICAgKDB4MDJVTCA8PCBBRENfQ0ZHUl9BV0QxQ0hfUG9zKSAgICAgICAgIC8qITwgMHgwODAwMDAwMCAqLworI2RlZmluZSBBRENfQ0ZHUl9BV0QxQ0hfMiAgICAgICAgICAgICAgKDB4MDRVTCA8PCBBRENfQ0ZHUl9BV0QxQ0hfUG9zKSAgICAgICAgIC8qITwgMHgxMDAwMDAwMCAqLworI2RlZmluZSBBRENfQ0ZHUl9BV0QxQ0hfMyAgICAgICAgICAgICAgKDB4MDhVTCA8PCBBRENfQ0ZHUl9BV0QxQ0hfUG9zKSAgICAgICAgIC8qITwgMHgyMDAwMDAwMCAqLworI2RlZmluZSBBRENfQ0ZHUl9BV0QxQ0hfNCAgICAgICAgICAgICAgKDB4MTBVTCA8PCBBRENfQ0ZHUl9BV0QxQ0hfUG9zKSAgICAgICAgIC8qITwgMHg0MDAwMDAwMCAqLworCisjZGVmaW5lIEFEQ19DRkdSX0pRRElTX1BvcyAgICAgICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19DRkdSX0pRRElTX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX0NGR1JfSlFESVNfUG9zKSAgICAgICAgICAgLyohPCAweDAwODAwMDAwICovCisjZGVmaW5lIEFEQ19DRkdSX0pRRElTICAgICAgICAgICAgICAgICBBRENfQ0ZHUl9KUURJU19Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgY29udGV4dHMgcXVldWUgZGlzYWJsZSAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfQ0ZHUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLworI2RlZmluZSBBRENfQ0ZHUjJfUk9WU0VfUG9zICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfQ0ZHUjJfUk9WU0VfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19DRkdSMl9ST1ZTRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBBRENfQ0ZHUjJfUk9WU0UgICAgICAgICAgICAgICAgQURDX0NGR1IyX1JPVlNFX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIG92ZXJzYW1wbGVyIGVuYWJsZSBvbiBzY29wZSBBREMgZ3JvdXAgcmVndWxhciAqLworCisjZGVmaW5lIEFEQ19DRkdSMl9KT1ZTRV9Qb3MgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19DRkdSMl9KT1ZTRV9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgQURDX0NGR1IyX0pPVlNFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIEFEQ19DRkdSMl9KT1ZTRSAgICAgICAgICAgICAgICBBRENfQ0ZHUjJfSk9WU0VfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgb3ZlcnNhbXBsZXIgZW5hYmxlIG9uIHNjb3BlIEFEQyBncm91cCBpbmplY3RlZCAqLworCisjZGVmaW5lIEFEQ19DRkdSMl9PVlNSX1BvcyAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19DRkdSMl9PVlNSX01zayAgICAgICAgICAgICAoMHg3VUwgPDwgQURDX0NGR1IyX09WU1JfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDFDICovCisjZGVmaW5lIEFEQ19DRkdSMl9PVlNSICAgICAgICAgICAgICAgICBBRENfQ0ZHUjJfT1ZTUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgb3ZlcnNhbXBsaW5nIHJhdGlvICovCisjZGVmaW5lIEFEQ19DRkdSMl9PVlNSXzAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX0NGR1IyX09WU1JfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIEFEQ19DRkdSMl9PVlNSXzEgICAgICAgICAgICAgICAoMHgyVUwgPDwgQURDX0NGR1IyX09WU1JfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIEFEQ19DRkdSMl9PVlNSXzIgICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX0NGR1IyX09WU1JfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisKKyNkZWZpbmUgQURDX0NGR1IyX09WU1NfUG9zICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX0NGR1IyX09WU1NfTXNrICAgICAgICAgICAgICgweEZVTCA8PCBBRENfQ0ZHUjJfT1ZTU19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAxRTAgKi8KKyNkZWZpbmUgQURDX0NGR1IyX09WU1MgICAgICAgICAgICAgICAgIEFEQ19DRkdSMl9PVlNTX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBvdmVyc2FtcGxpbmcgc2hpZnQgKi8KKyNkZWZpbmUgQURDX0NGR1IyX09WU1NfMCAgICAgICAgICAgICAgICgweDFVTCA8PCBBRENfQ0ZHUjJfT1ZTU19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgQURDX0NGR1IyX09WU1NfMSAgICAgICAgICAgICAgICgweDJVTCA8PCBBRENfQ0ZHUjJfT1ZTU19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgQURDX0NGR1IyX09WU1NfMiAgICAgICAgICAgICAgICgweDRVTCA8PCBBRENfQ0ZHUjJfT1ZTU19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgQURDX0NGR1IyX09WU1NfMyAgICAgICAgICAgICAgICgweDhVTCA8PCBBRENfQ0ZHUjJfT1ZTU19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKworI2RlZmluZSBBRENfQ0ZHUjJfVFJPVlNfUG9zICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfQ0ZHUjJfVFJPVlNfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19DRkdSMl9UUk9WU19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBBRENfQ0ZHUjJfVFJPVlMgICAgICAgICAgICAgICAgQURDX0NGR1IyX1RST1ZTX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIG92ZXJzYW1wbGluZyBkaXNjb250aW51b3VzIG1vZGUgKHRyaWdnZXJlZCBtb2RlKSBmb3IgQURDIGdyb3VwIHJlZ3VsYXIgKi8KKworI2RlZmluZSBBRENfQ0ZHUjJfUk9WU01fUG9zICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19DRkdSMl9ST1ZTTV9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgQURDX0NGR1IyX1JPVlNNX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIEFEQ19DRkdSMl9ST1ZTTSAgICAgICAgICAgICAgICBBRENfQ0ZHUjJfUk9WU01fTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgb3ZlcnNhbXBsaW5nIG1vZGUgbWFuYWdpbmcgaW50ZXJsYWNlZCBjb252ZXJzaW9ucyBvZiBBREMgZ3JvdXAgcmVndWxhciBhbmQgZ3JvdXAgaW5qZWN0ZWQgKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX1NNUFIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgQURDX1NNUFIxX1NNUDBfUG9zICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX1NNUFIxX1NNUDBfTXNrICAgICAgICAgICAgICgweDdVTCA8PCBBRENfU01QUjFfU01QMF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDcgKi8KKyNkZWZpbmUgQURDX1NNUFIxX1NNUDAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMV9TTVAwX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDAgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gICovCisjZGVmaW5lIEFEQ19TTVBSMV9TTVAwXzAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX1NNUFIxX1NNUDBfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIEFEQ19TTVBSMV9TTVAwXzEgICAgICAgICAgICAgICAoMHgyVUwgPDwgQURDX1NNUFIxX1NNUDBfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIEFEQ19TTVBSMV9TTVAwXzIgICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX1NNUFIxX1NNUDBfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisKKyNkZWZpbmUgQURDX1NNUFIxX1NNUDFfUG9zICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX1NNUFIxX1NNUDFfTXNrICAgICAgICAgICAgICgweDdVTCA8PCBBRENfU01QUjFfU01QMV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMzggKi8KKyNkZWZpbmUgQURDX1NNUFIxX1NNUDEgICAgICAgICAgICAgICAgIEFEQ19TTVBSMV9TTVAxX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDEgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gICovCisjZGVmaW5lIEFEQ19TTVBSMV9TTVAxXzAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX1NNUFIxX1NNUDFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIEFEQ19TTVBSMV9TTVAxXzEgICAgICAgICAgICAgICAoMHgyVUwgPDwgQURDX1NNUFIxX1NNUDFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIEFEQ19TTVBSMV9TTVAxXzIgICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX1NNUFIxX1NNUDFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisKKyNkZWZpbmUgQURDX1NNUFIxX1NNUDJfUG9zICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX1NNUFIxX1NNUDJfTXNrICAgICAgICAgICAgICgweDdVTCA8PCBBRENfU01QUjFfU01QMl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAxQzAgKi8KKyNkZWZpbmUgQURDX1NNUFIxX1NNUDIgICAgICAgICAgICAgICAgIEFEQ19TTVBSMV9TTVAyX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDIgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gICovCisjZGVmaW5lIEFEQ19TTVBSMV9TTVAyXzAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX1NNUFIxX1NNUDJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIEFEQ19TTVBSMV9TTVAyXzEgICAgICAgICAgICAgICAoMHgyVUwgPDwgQURDX1NNUFIxX1NNUDJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIEFEQ19TTVBSMV9TTVAyXzIgICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX1NNUFIxX1NNUDJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisKKyNkZWZpbmUgQURDX1NNUFIxX1NNUDNfUG9zICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX1NNUFIxX1NNUDNfTXNrICAgICAgICAgICAgICgweDdVTCA8PCBBRENfU01QUjFfU01QM19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDBFMDAgKi8KKyNkZWZpbmUgQURDX1NNUFIxX1NNUDMgICAgICAgICAgICAgICAgIEFEQ19TTVBSMV9TTVAzX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDMgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gICovCisjZGVmaW5lIEFEQ19TTVBSMV9TTVAzXzAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX1NNUFIxX1NNUDNfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIEFEQ19TTVBSMV9TTVAzXzEgICAgICAgICAgICAgICAoMHgyVUwgPDwgQURDX1NNUFIxX1NNUDNfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIEFEQ19TTVBSMV9TTVAzXzIgICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX1NNUFIxX1NNUDNfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovCisKKyNkZWZpbmUgQURDX1NNUFIxX1NNUDRfUG9zICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX1NNUFIxX1NNUDRfTXNrICAgICAgICAgICAgICgweDdVTCA8PCBBRENfU01QUjFfU01QNF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDcwMDAgKi8KKyNkZWZpbmUgQURDX1NNUFIxX1NNUDQgICAgICAgICAgICAgICAgIEFEQ19TTVBSMV9TTVA0X01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDQgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gICovCisjZGVmaW5lIEFEQ19TTVBSMV9TTVA0XzAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX1NNUFIxX1NNUDRfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIEFEQ19TTVBSMV9TTVA0XzEgICAgICAgICAgICAgICAoMHgyVUwgPDwgQURDX1NNUFIxX1NNUDRfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIEFEQ19TTVBSMV9TTVA0XzIgICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX1NNUFIxX1NNUDRfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisKKyNkZWZpbmUgQURDX1NNUFIxX1NNUDVfUG9zICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX1NNUFIxX1NNUDVfTXNrICAgICAgICAgICAgICgweDdVTCA8PCBBRENfU01QUjFfU01QNV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMzgwMDAgKi8KKyNkZWZpbmUgQURDX1NNUFIxX1NNUDUgICAgICAgICAgICAgICAgIEFEQ19TTVBSMV9TTVA1X01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDUgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gICovCisjZGVmaW5lIEFEQ19TTVBSMV9TTVA1XzAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX1NNUFIxX1NNUDVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovCisjZGVmaW5lIEFEQ19TTVBSMV9TTVA1XzEgICAgICAgICAgICAgICAoMHgyVUwgPDwgQURDX1NNUFIxX1NNUDVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIEFEQ19TTVBSMV9TTVA1XzIgICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX1NNUFIxX1NNUDVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovCisKKyNkZWZpbmUgQURDX1NNUFIxX1NNUDZfUG9zICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX1NNUFIxX1NNUDZfTXNrICAgICAgICAgICAgICgweDdVTCA8PCBBRENfU01QUjFfU01QNl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAxQzAwMDAgKi8KKyNkZWZpbmUgQURDX1NNUFIxX1NNUDYgICAgICAgICAgICAgICAgIEFEQ19TTVBSMV9TTVA2X01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDYgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gICovCisjZGVmaW5lIEFEQ19TTVBSMV9TTVA2XzAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX1NNUFIxX1NNUDZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovCisjZGVmaW5lIEFEQ19TTVBSMV9TTVA2XzEgICAgICAgICAgICAgICAoMHgyVUwgPDwgQURDX1NNUFIxX1NNUDZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovCisjZGVmaW5lIEFEQ19TTVBSMV9TTVA2XzIgICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX1NNUFIxX1NNUDZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovCisKKyNkZWZpbmUgQURDX1NNUFIxX1NNUDdfUG9zICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX1NNUFIxX1NNUDdfTXNrICAgICAgICAgICAgICgweDdVTCA8PCBBRENfU01QUjFfU01QN19Qb3MpICAgICAgICAgICAvKiE8IDB4MDBFMDAwMDAgKi8KKyNkZWZpbmUgQURDX1NNUFIxX1NNUDcgICAgICAgICAgICAgICAgIEFEQ19TTVBSMV9TTVA3X01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDcgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gICovCisjZGVmaW5lIEFEQ19TTVBSMV9TTVA3XzAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX1NNUFIxX1NNUDdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovCisjZGVmaW5lIEFEQ19TTVBSMV9TTVA3XzEgICAgICAgICAgICAgICAoMHgyVUwgPDwgQURDX1NNUFIxX1NNUDdfUG9zKSAgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovCisjZGVmaW5lIEFEQ19TTVBSMV9TTVA3XzIgICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX1NNUFIxX1NNUDdfUG9zKSAgICAgICAgICAgLyohPCAweDAwODAwMDAwICovCisKKyNkZWZpbmUgQURDX1NNUFIxX1NNUDhfUG9zICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX1NNUFIxX1NNUDhfTXNrICAgICAgICAgICAgICgweDdVTCA8PCBBRENfU01QUjFfU01QOF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDcwMDAwMDAgKi8KKyNkZWZpbmUgQURDX1NNUFIxX1NNUDggICAgICAgICAgICAgICAgIEFEQ19TTVBSMV9TTVA4X01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDggc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gICovCisjZGVmaW5lIEFEQ19TTVBSMV9TTVA4XzAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX1NNUFIxX1NNUDhfUG9zKSAgICAgICAgICAgLyohPCAweDAxMDAwMDAwICovCisjZGVmaW5lIEFEQ19TTVBSMV9TTVA4XzEgICAgICAgICAgICAgICAoMHgyVUwgPDwgQURDX1NNUFIxX1NNUDhfUG9zKSAgICAgICAgICAgLyohPCAweDAyMDAwMDAwICovCisjZGVmaW5lIEFEQ19TTVBSMV9TTVA4XzIgICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX1NNUFIxX1NNUDhfUG9zKSAgICAgICAgICAgLyohPCAweDA0MDAwMDAwICovCisKKyNkZWZpbmUgQURDX1NNUFIxX1NNUDlfUG9zICAgICAgICAgICAgICgyN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX1NNUFIxX1NNUDlfTXNrICAgICAgICAgICAgICgweDdVTCA8PCBBRENfU01QUjFfU01QOV9Qb3MpICAgICAgICAgICAvKiE8IDB4MzgwMDAwMDAgKi8KKyNkZWZpbmUgQURDX1NNUFIxX1NNUDkgICAgICAgICAgICAgICAgIEFEQ19TTVBSMV9TTVA5X01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDkgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gICovCisjZGVmaW5lIEFEQ19TTVBSMV9TTVA5XzAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX1NNUFIxX1NNUDlfUG9zKSAgICAgICAgICAgLyohPCAweDA4MDAwMDAwICovCisjZGVmaW5lIEFEQ19TTVBSMV9TTVA5XzEgICAgICAgICAgICAgICAoMHgyVUwgPDwgQURDX1NNUFIxX1NNUDlfUG9zKSAgICAgICAgICAgLyohPCAweDEwMDAwMDAwICovCisjZGVmaW5lIEFEQ19TTVBSMV9TTVA5XzIgICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX1NNUFIxX1NNUDlfUG9zKSAgICAgICAgICAgLyohPCAweDIwMDAwMDAwICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19TTVBSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIEFEQ19TTVBSMl9TTVAxMF9Qb3MgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19TTVBSMl9TTVAxMF9Nc2sgICAgICAgICAgICAoMHg3VUwgPDwgQURDX1NNUFIyX1NNUDEwX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA3ICovCisjZGVmaW5lIEFEQ19TTVBSMl9TTVAxMCAgICAgICAgICAgICAgICBBRENfU01QUjJfU01QMTBfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAxMCBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAgKi8KKyNkZWZpbmUgQURDX1NNUFIyX1NNUDEwXzAgICAgICAgICAgICAgICgweDFVTCA8PCBBRENfU01QUjJfU01QMTBfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgQURDX1NNUFIyX1NNUDEwXzEgICAgICAgICAgICAgICgweDJVTCA8PCBBRENfU01QUjJfU01QMTBfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgQURDX1NNUFIyX1NNUDEwXzIgICAgICAgICAgICAgICgweDRVTCA8PCBBRENfU01QUjJfU01QMTBfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKworI2RlZmluZSBBRENfU01QUjJfU01QMTFfUG9zICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfU01QUjJfU01QMTFfTXNrICAgICAgICAgICAgKDB4N1VMIDw8IEFEQ19TTVBSMl9TTVAxMV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAzOCAqLworI2RlZmluZSBBRENfU01QUjJfU01QMTEgICAgICAgICAgICAgICAgQURDX1NNUFIyX1NNUDExX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMTEgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gICovCisjZGVmaW5lIEFEQ19TTVBSMl9TTVAxMV8wICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX1NNUFIyX1NNUDExX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIEFEQ19TTVBSMl9TTVAxMV8xICAgICAgICAgICAgICAoMHgyVUwgPDwgQURDX1NNUFIyX1NNUDExX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIEFEQ19TTVBSMl9TTVAxMV8yICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX1NNUFIyX1NNUDExX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisKKyNkZWZpbmUgQURDX1NNUFIyX1NNUDEyX1BvcyAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX1NNUFIyX1NNUDEyX01zayAgICAgICAgICAgICgweDdVTCA8PCBBRENfU01QUjJfU01QMTJfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAxQzAgKi8KKyNkZWZpbmUgQURDX1NNUFIyX1NNUDEyICAgICAgICAgICAgICAgIEFEQ19TTVBSMl9TTVAxMl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDEyIHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICAqLworI2RlZmluZSBBRENfU01QUjJfU01QMTJfMCAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19TTVBSMl9TTVAxMl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBBRENfU01QUjJfU01QMTJfMSAgICAgICAgICAgICAgKDB4MlVMIDw8IEFEQ19TTVBSMl9TTVAxMl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLworI2RlZmluZSBBRENfU01QUjJfU01QMTJfMiAgICAgICAgICAgICAgKDB4NFVMIDw8IEFEQ19TTVBSMl9TTVAxMl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworCisjZGVmaW5lIEFEQ19TTVBSMl9TTVAxM19Qb3MgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19TTVBSMl9TTVAxM19Nc2sgICAgICAgICAgICAoMHg3VUwgPDwgQURDX1NNUFIyX1NNUDEzX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwRTAwICovCisjZGVmaW5lIEFEQ19TTVBSMl9TTVAxMyAgICAgICAgICAgICAgICBBRENfU01QUjJfU01QMTNfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAxMyBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAgKi8KKyNkZWZpbmUgQURDX1NNUFIyX1NNUDEzXzAgICAgICAgICAgICAgICgweDFVTCA8PCBBRENfU01QUjJfU01QMTNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgQURDX1NNUFIyX1NNUDEzXzEgICAgICAgICAgICAgICgweDJVTCA8PCBBRENfU01QUjJfU01QMTNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgQURDX1NNUFIyX1NNUDEzXzIgICAgICAgICAgICAgICgweDRVTCA8PCBBRENfU01QUjJfU01QMTNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKworI2RlZmluZSBBRENfU01QUjJfU01QMTRfUG9zICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfU01QUjJfU01QMTRfTXNrICAgICAgICAgICAgKDB4N1VMIDw8IEFEQ19TTVBSMl9TTVAxNF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwNzAwMCAqLworI2RlZmluZSBBRENfU01QUjJfU01QMTQgICAgICAgICAgICAgICAgQURDX1NNUFIyX1NNUDE0X01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMTQgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gICovCisjZGVmaW5lIEFEQ19TTVBSMl9TTVAxNF8wICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX1NNUFIyX1NNUDE0X1BvcykgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIEFEQ19TTVBSMl9TTVAxNF8xICAgICAgICAgICAgICAoMHgyVUwgPDwgQURDX1NNUFIyX1NNUDE0X1BvcykgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIEFEQ19TTVBSMl9TTVAxNF8yICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX1NNUFIyX1NNUDE0X1BvcykgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisKKyNkZWZpbmUgQURDX1NNUFIyX1NNUDE1X1BvcyAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX1NNUFIyX1NNUDE1X01zayAgICAgICAgICAgICgweDdVTCA8PCBBRENfU01QUjJfU01QMTVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMzgwMDAgKi8KKyNkZWZpbmUgQURDX1NNUFIyX1NNUDE1ICAgICAgICAgICAgICAgIEFEQ19TTVBSMl9TTVAxNV9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDE1IHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICAqLworI2RlZmluZSBBRENfU01QUjJfU01QMTVfMCAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19TTVBSMl9TTVAxNV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLworI2RlZmluZSBBRENfU01QUjJfU01QMTVfMSAgICAgICAgICAgICAgKDB4MlVMIDw8IEFEQ19TTVBSMl9TTVAxNV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBBRENfU01QUjJfU01QMTVfMiAgICAgICAgICAgICAgKDB4NFVMIDw8IEFEQ19TTVBSMl9TTVAxNV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLworCisjZGVmaW5lIEFEQ19TTVBSMl9TTVAxNl9Qb3MgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19TTVBSMl9TTVAxNl9Nc2sgICAgICAgICAgICAoMHg3VUwgPDwgQURDX1NNUFIyX1NNUDE2X1BvcykgICAgICAgICAgLyohPCAweDAwMUMwMDAwICovCisjZGVmaW5lIEFEQ19TTVBSMl9TTVAxNiAgICAgICAgICAgICAgICBBRENfU01QUjJfU01QMTZfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAxNiBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAgKi8KKyNkZWZpbmUgQURDX1NNUFIyX1NNUDE2XzAgICAgICAgICAgICAgICgweDFVTCA8PCBBRENfU01QUjJfU01QMTZfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgQURDX1NNUFIyX1NNUDE2XzEgICAgICAgICAgICAgICgweDJVTCA8PCBBRENfU01QUjJfU01QMTZfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgQURDX1NNUFIyX1NNUDE2XzIgICAgICAgICAgICAgICgweDRVTCA8PCBBRENfU01QUjJfU01QMTZfUG9zKSAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8KKworI2RlZmluZSBBRENfU01QUjJfU01QMTdfUG9zICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfU01QUjJfU01QMTdfTXNrICAgICAgICAgICAgKDB4N1VMIDw8IEFEQ19TTVBSMl9TTVAxN19Qb3MpICAgICAgICAgIC8qITwgMHgwMEUwMDAwMCAqLworI2RlZmluZSBBRENfU01QUjJfU01QMTcgICAgICAgICAgICAgICAgQURDX1NNUFIyX1NNUDE3X01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMTcgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gICovCisjZGVmaW5lIEFEQ19TTVBSMl9TTVAxN18wICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX1NNUFIyX1NNUDE3X1BvcykgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovCisjZGVmaW5lIEFEQ19TTVBSMl9TTVAxN18xICAgICAgICAgICAgICAoMHgyVUwgPDwgQURDX1NNUFIyX1NNUDE3X1BvcykgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovCisjZGVmaW5lIEFEQ19TTVBSMl9TTVAxN18yICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX1NNUFIyX1NNUDE3X1BvcykgICAgICAgICAgLyohPCAweDAwODAwMDAwICovCisKKyNkZWZpbmUgQURDX1NNUFIyX1NNUDE4X1BvcyAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX1NNUFIyX1NNUDE4X01zayAgICAgICAgICAgICgweDdVTCA8PCBBRENfU01QUjJfU01QMThfUG9zKSAgICAgICAgICAvKiE8IDB4MDcwMDAwMDAgKi8KKyNkZWZpbmUgQURDX1NNUFIyX1NNUDE4ICAgICAgICAgICAgICAgIEFEQ19TTVBSMl9TTVAxOF9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDE4IHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICAqLworI2RlZmluZSBBRENfU01QUjJfU01QMThfMCAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19TTVBSMl9TTVAxOF9Qb3MpICAgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLworI2RlZmluZSBBRENfU01QUjJfU01QMThfMSAgICAgICAgICAgICAgKDB4MlVMIDw8IEFEQ19TTVBSMl9TTVAxOF9Qb3MpICAgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLworI2RlZmluZSBBRENfU01QUjJfU01QMThfMiAgICAgICAgICAgICAgKDB4NFVMIDw8IEFEQ19TTVBSMl9TTVAxOF9Qb3MpICAgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfVFIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBBRENfVFIxX0xUMV9Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfVFIxX0xUMV9Nc2sgICAgICAgICAgICAgICAgKDB4RkZGVUwgPDwgQURDX1RSMV9MVDFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMEZGRiAqLworI2RlZmluZSBBRENfVFIxX0xUMSAgICAgICAgICAgICAgICAgICAgQURDX1RSMV9MVDFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGFuYWxvZyB3YXRjaGRvZyAxIHRocmVzaG9sZCBsb3cgKi8KKyNkZWZpbmUgQURDX1RSMV9MVDFfMCAgICAgICAgICAgICAgICAgICgweDAwMVVMIDw8IEFEQ19UUjFfTFQxX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgQURDX1RSMV9MVDFfMSAgICAgICAgICAgICAgICAgICgweDAwMlVMIDw8IEFEQ19UUjFfTFQxX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgQURDX1RSMV9MVDFfMiAgICAgICAgICAgICAgICAgICgweDAwNFVMIDw8IEFEQ19UUjFfTFQxX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgQURDX1RSMV9MVDFfMyAgICAgICAgICAgICAgICAgICgweDAwOFVMIDw8IEFEQ19UUjFfTFQxX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgQURDX1RSMV9MVDFfNCAgICAgICAgICAgICAgICAgICgweDAxMFVMIDw8IEFEQ19UUjFfTFQxX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgQURDX1RSMV9MVDFfNSAgICAgICAgICAgICAgICAgICgweDAyMFVMIDw8IEFEQ19UUjFfTFQxX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgQURDX1RSMV9MVDFfNiAgICAgICAgICAgICAgICAgICgweDA0MFVMIDw8IEFEQ19UUjFfTFQxX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgQURDX1RSMV9MVDFfNyAgICAgICAgICAgICAgICAgICgweDA4MFVMIDw8IEFEQ19UUjFfTFQxX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgQURDX1RSMV9MVDFfOCAgICAgICAgICAgICAgICAgICgweDEwMFVMIDw8IEFEQ19UUjFfTFQxX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgQURDX1RSMV9MVDFfOSAgICAgICAgICAgICAgICAgICgweDIwMFVMIDw8IEFEQ19UUjFfTFQxX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgQURDX1RSMV9MVDFfMTAgICAgICAgICAgICAgICAgICgweDQwMFVMIDw8IEFEQ19UUjFfTFQxX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgQURDX1RSMV9MVDFfMTEgICAgICAgICAgICAgICAgICgweDgwMFVMIDw8IEFEQ19UUjFfTFQxX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKworI2RlZmluZSBBRENfVFIxX0hUMV9Qb3MgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfVFIxX0hUMV9Nc2sgICAgICAgICAgICAgICAgKDB4RkZGVUwgPDwgQURDX1RSMV9IVDFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwRkZGMDAwMCAqLworI2RlZmluZSBBRENfVFIxX0hUMSAgICAgICAgICAgICAgICAgICAgQURDX1RSMV9IVDFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIEFuYWxvZyB3YXRjaGRvZyAxIHRocmVzaG9sZCBoaWdoICovCisjZGVmaW5lIEFEQ19UUjFfSFQxXzAgICAgICAgICAgICAgICAgICAoMHgwMDFVTCA8PCBBRENfVFIxX0hUMV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIEFEQ19UUjFfSFQxXzEgICAgICAgICAgICAgICAgICAoMHgwMDJVTCA8PCBBRENfVFIxX0hUMV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovCisjZGVmaW5lIEFEQ19UUjFfSFQxXzIgICAgICAgICAgICAgICAgICAoMHgwMDRVTCA8PCBBRENfVFIxX0hUMV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovCisjZGVmaW5lIEFEQ19UUjFfSFQxXzMgICAgICAgICAgICAgICAgICAoMHgwMDhVTCA8PCBBRENfVFIxX0hUMV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovCisjZGVmaW5lIEFEQ19UUjFfSFQxXzQgICAgICAgICAgICAgICAgICAoMHgwMTBVTCA8PCBBRENfVFIxX0hUMV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovCisjZGVmaW5lIEFEQ19UUjFfSFQxXzUgICAgICAgICAgICAgICAgICAoMHgwMjBVTCA8PCBBRENfVFIxX0hUMV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovCisjZGVmaW5lIEFEQ19UUjFfSFQxXzYgICAgICAgICAgICAgICAgICAoMHgwNDBVTCA8PCBBRENfVFIxX0hUMV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovCisjZGVmaW5lIEFEQ19UUjFfSFQxXzcgICAgICAgICAgICAgICAgICAoMHgwODBVTCA8PCBBRENfVFIxX0hUMV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwODAwMDAwICovCisjZGVmaW5lIEFEQ19UUjFfSFQxXzggICAgICAgICAgICAgICAgICAoMHgxMDBVTCA8PCBBRENfVFIxX0hUMV9Qb3MpICAgICAgICAgICAgLyohPCAweDAxMDAwMDAwICovCisjZGVmaW5lIEFEQ19UUjFfSFQxXzkgICAgICAgICAgICAgICAgICAoMHgyMDBVTCA8PCBBRENfVFIxX0hUMV9Qb3MpICAgICAgICAgICAgLyohPCAweDAyMDAwMDAwICovCisjZGVmaW5lIEFEQ19UUjFfSFQxXzEwICAgICAgICAgICAgICAgICAoMHg0MDBVTCA8PCBBRENfVFIxX0hUMV9Qb3MpICAgICAgICAgICAgLyohPCAweDA0MDAwMDAwICovCisjZGVmaW5lIEFEQ19UUjFfSFQxXzExICAgICAgICAgICAgICAgICAoMHg4MDBVTCA8PCBBRENfVFIxX0hUMV9Qb3MpICAgICAgICAgICAgLyohPCAweDA4MDAwMDAwICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19UUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIEFEQ19UUjJfTFQyX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19UUjJfTFQyX01zayAgICAgICAgICAgICAgICAoMHhGRlVMIDw8IEFEQ19UUjJfTFQyX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMEZGICovCisjZGVmaW5lIEFEQ19UUjJfTFQyICAgICAgICAgICAgICAgICAgICBBRENfVFIyX0xUMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgYW5hbG9nIHdhdGNoZG9nIDIgdGhyZXNob2xkIGxvdyAqLworI2RlZmluZSBBRENfVFIyX0xUMl8wICAgICAgICAgICAgICAgICAgKDB4MDFVTCA8PCBBRENfVFIyX0xUMl9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBBRENfVFIyX0xUMl8xICAgICAgICAgICAgICAgICAgKDB4MDJVTCA8PCBBRENfVFIyX0xUMl9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBBRENfVFIyX0xUMl8yICAgICAgICAgICAgICAgICAgKDB4MDRVTCA8PCBBRENfVFIyX0xUMl9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBBRENfVFIyX0xUMl8zICAgICAgICAgICAgICAgICAgKDB4MDhVTCA8PCBBRENfVFIyX0xUMl9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBBRENfVFIyX0xUMl80ICAgICAgICAgICAgICAgICAgKDB4MTBVTCA8PCBBRENfVFIyX0xUMl9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBBRENfVFIyX0xUMl81ICAgICAgICAgICAgICAgICAgKDB4MjBVTCA8PCBBRENfVFIyX0xUMl9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBBRENfVFIyX0xUMl82ICAgICAgICAgICAgICAgICAgKDB4NDBVTCA8PCBBRENfVFIyX0xUMl9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBBRENfVFIyX0xUMl83ICAgICAgICAgICAgICAgICAgKDB4ODBVTCA8PCBBRENfVFIyX0xUMl9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLworCisjZGVmaW5lIEFEQ19UUjJfSFQyX1BvcyAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19UUjJfSFQyX01zayAgICAgICAgICAgICAgICAoMHhGRlVMIDw8IEFEQ19UUjJfSFQyX1BvcykgICAgICAgICAgICAgLyohPCAweDAwRkYwMDAwICovCisjZGVmaW5lIEFEQ19UUjJfSFQyICAgICAgICAgICAgICAgICAgICBBRENfVFIyX0hUMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgYW5hbG9nIHdhdGNoZG9nIDIgdGhyZXNob2xkIGhpZ2ggKi8KKyNkZWZpbmUgQURDX1RSMl9IVDJfMCAgICAgICAgICAgICAgICAgICgweDAxVUwgPDwgQURDX1RSMl9IVDJfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgQURDX1RSMl9IVDJfMSAgICAgICAgICAgICAgICAgICgweDAyVUwgPDwgQURDX1RSMl9IVDJfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgQURDX1RSMl9IVDJfMiAgICAgICAgICAgICAgICAgICgweDA0VUwgPDwgQURDX1RSMl9IVDJfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgQURDX1RSMl9IVDJfMyAgICAgICAgICAgICAgICAgICgweDA4VUwgPDwgQURDX1RSMl9IVDJfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgQURDX1RSMl9IVDJfNCAgICAgICAgICAgICAgICAgICgweDEwVUwgPDwgQURDX1RSMl9IVDJfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgQURDX1RSMl9IVDJfNSAgICAgICAgICAgICAgICAgICgweDIwVUwgPDwgQURDX1RSMl9IVDJfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8KKyNkZWZpbmUgQURDX1RSMl9IVDJfNiAgICAgICAgICAgICAgICAgICgweDQwVUwgPDwgQURDX1RSMl9IVDJfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8KKyNkZWZpbmUgQURDX1RSMl9IVDJfNyAgICAgICAgICAgICAgICAgICgweDgwVUwgPDwgQURDX1RSMl9IVDJfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX1RSMyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgQURDX1RSM19MVDNfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX1RSM19MVDNfTXNrICAgICAgICAgICAgICAgICgweEZGVUwgPDwgQURDX1RSM19MVDNfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwRkYgKi8KKyNkZWZpbmUgQURDX1RSM19MVDMgICAgICAgICAgICAgICAgICAgIEFEQ19UUjNfTFQzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBhbmFsb2cgd2F0Y2hkb2cgMyB0aHJlc2hvbGQgbG93ICovCisjZGVmaW5lIEFEQ19UUjNfTFQzXzAgICAgICAgICAgICAgICAgICAoMHgwMVVMIDw8IEFEQ19UUjNfTFQzX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIEFEQ19UUjNfTFQzXzEgICAgICAgICAgICAgICAgICAoMHgwMlVMIDw8IEFEQ19UUjNfTFQzX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIEFEQ19UUjNfTFQzXzIgICAgICAgICAgICAgICAgICAoMHgwNFVMIDw8IEFEQ19UUjNfTFQzX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIEFEQ19UUjNfTFQzXzMgICAgICAgICAgICAgICAgICAoMHgwOFVMIDw8IEFEQ19UUjNfTFQzX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIEFEQ19UUjNfTFQzXzQgICAgICAgICAgICAgICAgICAoMHgxMFVMIDw8IEFEQ19UUjNfTFQzX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIEFEQ19UUjNfTFQzXzUgICAgICAgICAgICAgICAgICAoMHgyMFVMIDw8IEFEQ19UUjNfTFQzX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIEFEQ19UUjNfTFQzXzYgICAgICAgICAgICAgICAgICAoMHg0MFVMIDw8IEFEQ19UUjNfTFQzX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIEFEQ19UUjNfTFQzXzcgICAgICAgICAgICAgICAgICAoMHg4MFVMIDw8IEFEQ19UUjNfTFQzX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovCisKKyNkZWZpbmUgQURDX1RSM19IVDNfUG9zICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX1RSM19IVDNfTXNrICAgICAgICAgICAgICAgICgweEZGVUwgPDwgQURDX1RSM19IVDNfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDBGRjAwMDAgKi8KKyNkZWZpbmUgQURDX1RSM19IVDMgICAgICAgICAgICAgICAgICAgIEFEQ19UUjNfSFQzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBhbmFsb2cgd2F0Y2hkb2cgMyB0aHJlc2hvbGQgaGlnaCAqLworI2RlZmluZSBBRENfVFIzX0hUM18wICAgICAgICAgICAgICAgICAgKDB4MDFVTCA8PCBBRENfVFIzX0hUM19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBBRENfVFIzX0hUM18xICAgICAgICAgICAgICAgICAgKDB4MDJVTCA8PCBBRENfVFIzX0hUM19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLworI2RlZmluZSBBRENfVFIzX0hUM18yICAgICAgICAgICAgICAgICAgKDB4MDRVTCA8PCBBRENfVFIzX0hUM19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLworI2RlZmluZSBBRENfVFIzX0hUM18zICAgICAgICAgICAgICAgICAgKDB4MDhVTCA8PCBBRENfVFIzX0hUM19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLworI2RlZmluZSBBRENfVFIzX0hUM180ICAgICAgICAgICAgICAgICAgKDB4MTBVTCA8PCBBRENfVFIzX0hUM19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLworI2RlZmluZSBBRENfVFIzX0hUM181ICAgICAgICAgICAgICAgICAgKDB4MjBVTCA8PCBBRENfVFIzX0hUM19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLworI2RlZmluZSBBRENfVFIzX0hUM182ICAgICAgICAgICAgICAgICAgKDB4NDBVTCA8PCBBRENfVFIzX0hUM19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLworI2RlZmluZSBBRENfVFIzX0hUM183ICAgICAgICAgICAgICAgICAgKDB4ODBVTCA8PCBBRENfVFIzX0hUM19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfU1FSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBBRENfU1FSMV9MX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfU1FSMV9MX01zayAgICAgICAgICAgICAgICAgKDB4RlVMIDw8IEFEQ19TUVIxX0xfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwRiAqLworI2RlZmluZSBBRENfU1FSMV9MICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjFfTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHNjYW4gbGVuZ3RoICovCisjZGVmaW5lIEFEQ19TUVIxX0xfMCAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX1NRUjFfTF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIEFEQ19TUVIxX0xfMSAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgQURDX1NRUjFfTF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIEFEQ19TUVIxX0xfMiAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX1NRUjFfTF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIEFEQ19TUVIxX0xfMyAgICAgICAgICAgICAgICAgICAoMHg4VUwgPDwgQURDX1NRUjFfTF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisKKyNkZWZpbmUgQURDX1NRUjFfU1ExX1BvcyAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX1NRUjFfU1ExX01zayAgICAgICAgICAgICAgICgweDFGVUwgPDwgQURDX1NRUjFfU1ExX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDA3QzAgKi8KKyNkZWZpbmUgQURDX1NRUjFfU1ExICAgICAgICAgICAgICAgICAgIEFEQ19TUVIxX1NRMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDEgKi8KKyNkZWZpbmUgQURDX1NRUjFfU1ExXzAgICAgICAgICAgICAgICAgICgweDAxVUwgPDwgQURDX1NRUjFfU1ExX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgQURDX1NRUjFfU1ExXzEgICAgICAgICAgICAgICAgICgweDAyVUwgPDwgQURDX1NRUjFfU1ExX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgQURDX1NRUjFfU1ExXzIgICAgICAgICAgICAgICAgICgweDA0VUwgPDwgQURDX1NRUjFfU1ExX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgQURDX1NRUjFfU1ExXzMgICAgICAgICAgICAgICAgICgweDA4VUwgPDwgQURDX1NRUjFfU1ExX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgQURDX1NRUjFfU1ExXzQgICAgICAgICAgICAgICAgICgweDEwVUwgPDwgQURDX1NRUjFfU1ExX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKworI2RlZmluZSBBRENfU1FSMV9TUTJfUG9zICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfU1FSMV9TUTJfTXNrICAgICAgICAgICAgICAgKDB4MUZVTCA8PCBBRENfU1FSMV9TUTJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAxRjAwMCAqLworI2RlZmluZSBBRENfU1FSMV9TUTIgICAgICAgICAgICAgICAgICAgQURDX1NRUjFfU1EyX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMiAqLworI2RlZmluZSBBRENfU1FSMV9TUTJfMCAgICAgICAgICAgICAgICAgKDB4MDFVTCA8PCBBRENfU1FSMV9TUTJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBBRENfU1FSMV9TUTJfMSAgICAgICAgICAgICAgICAgKDB4MDJVTCA8PCBBRENfU1FSMV9TUTJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLworI2RlZmluZSBBRENfU1FSMV9TUTJfMiAgICAgICAgICAgICAgICAgKDB4MDRVTCA8PCBBRENfU1FSMV9TUTJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLworI2RlZmluZSBBRENfU1FSMV9TUTJfMyAgICAgICAgICAgICAgICAgKDB4MDhVTCA8PCBBRENfU1FSMV9TUTJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLworI2RlZmluZSBBRENfU1FSMV9TUTJfNCAgICAgICAgICAgICAgICAgKDB4MTBVTCA8PCBBRENfU1FSMV9TUTJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLworCisjZGVmaW5lIEFEQ19TUVIxX1NRM19Qb3MgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19TUVIxX1NRM19Nc2sgICAgICAgICAgICAgICAoMHgxRlVMIDw8IEFEQ19TUVIxX1NRM19Qb3MpICAgICAgICAgICAgLyohPCAweDAwN0MwMDAwICovCisjZGVmaW5lIEFEQ19TUVIxX1NRMyAgICAgICAgICAgICAgICAgICBBRENfU1FSMV9TUTNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAzICovCisjZGVmaW5lIEFEQ19TUVIxX1NRM18wICAgICAgICAgICAgICAgICAoMHgwMVVMIDw8IEFEQ19TUVIxX1NRM19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovCisjZGVmaW5lIEFEQ19TUVIxX1NRM18xICAgICAgICAgICAgICAgICAoMHgwMlVMIDw8IEFEQ19TUVIxX1NRM19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovCisjZGVmaW5lIEFEQ19TUVIxX1NRM18yICAgICAgICAgICAgICAgICAoMHgwNFVMIDw8IEFEQ19TUVIxX1NRM19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovCisjZGVmaW5lIEFEQ19TUVIxX1NRM18zICAgICAgICAgICAgICAgICAoMHgwOFVMIDw8IEFEQ19TUVIxX1NRM19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovCisjZGVmaW5lIEFEQ19TUVIxX1NRM180ICAgICAgICAgICAgICAgICAoMHgxMFVMIDw8IEFEQ19TUVIxX1NRM19Qb3MpICAgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovCisKKyNkZWZpbmUgQURDX1NRUjFfU1E0X1BvcyAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX1NRUjFfU1E0X01zayAgICAgICAgICAgICAgICgweDFGVUwgPDwgQURDX1NRUjFfU1E0X1BvcykgICAgICAgICAgICAvKiE8IDB4MUYwMDAwMDAgKi8KKyNkZWZpbmUgQURDX1NRUjFfU1E0ICAgICAgICAgICAgICAgICAgIEFEQ19TUVIxX1NRNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDQgKi8KKyNkZWZpbmUgQURDX1NRUjFfU1E0XzAgICAgICAgICAgICAgICAgICgweDAxVUwgPDwgQURDX1NRUjFfU1E0X1BvcykgICAgICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8KKyNkZWZpbmUgQURDX1NRUjFfU1E0XzEgICAgICAgICAgICAgICAgICgweDAyVUwgPDwgQURDX1NRUjFfU1E0X1BvcykgICAgICAgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8KKyNkZWZpbmUgQURDX1NRUjFfU1E0XzIgICAgICAgICAgICAgICAgICgweDA0VUwgPDwgQURDX1NRUjFfU1E0X1BvcykgICAgICAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8KKyNkZWZpbmUgQURDX1NRUjFfU1E0XzMgICAgICAgICAgICAgICAgICgweDA4VUwgPDwgQURDX1NRUjFfU1E0X1BvcykgICAgICAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8KKyNkZWZpbmUgQURDX1NRUjFfU1E0XzQgICAgICAgICAgICAgICAgICgweDEwVUwgPDwgQURDX1NRUjFfU1E0X1BvcykgICAgICAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX1NRUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgQURDX1NRUjJfU1E1X1BvcyAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX1NRUjJfU1E1X01zayAgICAgICAgICAgICAgICgweDFGVUwgPDwgQURDX1NRUjJfU1E1X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMUYgKi8KKyNkZWZpbmUgQURDX1NRUjJfU1E1ICAgICAgICAgICAgICAgICAgIEFEQ19TUVIyX1NRNV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDUgKi8KKyNkZWZpbmUgQURDX1NRUjJfU1E1XzAgICAgICAgICAgICAgICAgICgweDAxVUwgPDwgQURDX1NRUjJfU1E1X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgQURDX1NRUjJfU1E1XzEgICAgICAgICAgICAgICAgICgweDAyVUwgPDwgQURDX1NRUjJfU1E1X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgQURDX1NRUjJfU1E1XzIgICAgICAgICAgICAgICAgICgweDA0VUwgPDwgQURDX1NRUjJfU1E1X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgQURDX1NRUjJfU1E1XzMgICAgICAgICAgICAgICAgICgweDA4VUwgPDwgQURDX1NRUjJfU1E1X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgQURDX1NRUjJfU1E1XzQgICAgICAgICAgICAgICAgICgweDEwVUwgPDwgQURDX1NRUjJfU1E1X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKworI2RlZmluZSBBRENfU1FSMl9TUTZfUG9zICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfU1FSMl9TUTZfTXNrICAgICAgICAgICAgICAgKDB4MUZVTCA8PCBBRENfU1FSMl9TUTZfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDdDMCAqLworI2RlZmluZSBBRENfU1FSMl9TUTYgICAgICAgICAgICAgICAgICAgQURDX1NRUjJfU1E2X01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgNiAqLworI2RlZmluZSBBRENfU1FSMl9TUTZfMCAgICAgICAgICAgICAgICAgKDB4MDFVTCA8PCBBRENfU1FSMl9TUTZfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBBRENfU1FSMl9TUTZfMSAgICAgICAgICAgICAgICAgKDB4MDJVTCA8PCBBRENfU1FSMl9TUTZfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLworI2RlZmluZSBBRENfU1FSMl9TUTZfMiAgICAgICAgICAgICAgICAgKDB4MDRVTCA8PCBBRENfU1FSMl9TUTZfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBBRENfU1FSMl9TUTZfMyAgICAgICAgICAgICAgICAgKDB4MDhVTCA8PCBBRENfU1FSMl9TUTZfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBBRENfU1FSMl9TUTZfNCAgICAgICAgICAgICAgICAgKDB4MTBVTCA8PCBBRENfU1FSMl9TUTZfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLworCisjZGVmaW5lIEFEQ19TUVIyX1NRN19Qb3MgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19TUVIyX1NRN19Nc2sgICAgICAgICAgICAgICAoMHgxRlVMIDw8IEFEQ19TUVIyX1NRN19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDFGMDAwICovCisjZGVmaW5lIEFEQ19TUVIyX1NRNyAgICAgICAgICAgICAgICAgICBBRENfU1FSMl9TUTdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayA3ICovCisjZGVmaW5lIEFEQ19TUVIyX1NRN18wICAgICAgICAgICAgICAgICAoMHgwMVVMIDw8IEFEQ19TUVIyX1NRN19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIEFEQ19TUVIyX1NRN18xICAgICAgICAgICAgICAgICAoMHgwMlVMIDw8IEFEQ19TUVIyX1NRN19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIEFEQ19TUVIyX1NRN18yICAgICAgICAgICAgICAgICAoMHgwNFVMIDw8IEFEQ19TUVIyX1NRN19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIEFEQ19TUVIyX1NRN18zICAgICAgICAgICAgICAgICAoMHgwOFVMIDw8IEFEQ19TUVIyX1NRN19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovCisjZGVmaW5lIEFEQ19TUVIyX1NRN180ICAgICAgICAgICAgICAgICAoMHgxMFVMIDw8IEFEQ19TUVIyX1NRN19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovCisKKyNkZWZpbmUgQURDX1NRUjJfU1E4X1BvcyAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX1NRUjJfU1E4X01zayAgICAgICAgICAgICAgICgweDFGVUwgPDwgQURDX1NRUjJfU1E4X1BvcykgICAgICAgICAgICAvKiE8IDB4MDA3QzAwMDAgKi8KKyNkZWZpbmUgQURDX1NRUjJfU1E4ICAgICAgICAgICAgICAgICAgIEFEQ19TUVIyX1NROF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDggKi8KKyNkZWZpbmUgQURDX1NRUjJfU1E4XzAgICAgICAgICAgICAgICAgICgweDAxVUwgPDwgQURDX1NRUjJfU1E4X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgQURDX1NRUjJfU1E4XzEgICAgICAgICAgICAgICAgICgweDAyVUwgPDwgQURDX1NRUjJfU1E4X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgQURDX1NRUjJfU1E4XzIgICAgICAgICAgICAgICAgICgweDA0VUwgPDwgQURDX1NRUjJfU1E4X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgQURDX1NRUjJfU1E4XzMgICAgICAgICAgICAgICAgICgweDA4VUwgPDwgQURDX1NRUjJfU1E4X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8KKyNkZWZpbmUgQURDX1NRUjJfU1E4XzQgICAgICAgICAgICAgICAgICgweDEwVUwgPDwgQURDX1NRUjJfU1E4X1BvcykgICAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8KKworI2RlZmluZSBBRENfU1FSMl9TUTlfUG9zICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfU1FSMl9TUTlfTXNrICAgICAgICAgICAgICAgKDB4MUZVTCA8PCBBRENfU1FSMl9TUTlfUG9zKSAgICAgICAgICAgIC8qITwgMHgxRjAwMDAwMCAqLworI2RlZmluZSBBRENfU1FSMl9TUTkgICAgICAgICAgICAgICAgICAgQURDX1NRUjJfU1E5X01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgOSAqLworI2RlZmluZSBBRENfU1FSMl9TUTlfMCAgICAgICAgICAgICAgICAgKDB4MDFVTCA8PCBBRENfU1FSMl9TUTlfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLworI2RlZmluZSBBRENfU1FSMl9TUTlfMSAgICAgICAgICAgICAgICAgKDB4MDJVTCA8PCBBRENfU1FSMl9TUTlfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLworI2RlZmluZSBBRENfU1FSMl9TUTlfMiAgICAgICAgICAgICAgICAgKDB4MDRVTCA8PCBBRENfU1FSMl9TUTlfUG9zKSAgICAgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLworI2RlZmluZSBBRENfU1FSMl9TUTlfMyAgICAgICAgICAgICAgICAgKDB4MDhVTCA8PCBBRENfU1FSMl9TUTlfUG9zKSAgICAgICAgICAgIC8qITwgMHgwODAwMDAwMCAqLworI2RlZmluZSBBRENfU1FSMl9TUTlfNCAgICAgICAgICAgICAgICAgKDB4MTBVTCA8PCBBRENfU1FSMl9TUTlfUG9zKSAgICAgICAgICAgIC8qITwgMHgxMDAwMDAwMCAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfU1FSMyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBBRENfU1FSM19TUTEwX1BvcyAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfU1FSM19TUTEwX01zayAgICAgICAgICAgICAgKDB4MUZVTCA8PCBBRENfU1FSM19TUTEwX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAxRiAqLworI2RlZmluZSBBRENfU1FSM19TUTEwICAgICAgICAgICAgICAgICAgQURDX1NRUjNfU1ExMF9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMTAgKi8KKyNkZWZpbmUgQURDX1NRUjNfU1ExMF8wICAgICAgICAgICAgICAgICgweDAxVUwgPDwgQURDX1NRUjNfU1ExMF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgQURDX1NRUjNfU1ExMF8xICAgICAgICAgICAgICAgICgweDAyVUwgPDwgQURDX1NRUjNfU1ExMF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgQURDX1NRUjNfU1ExMF8yICAgICAgICAgICAgICAgICgweDA0VUwgPDwgQURDX1NRUjNfU1ExMF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgQURDX1NRUjNfU1ExMF8zICAgICAgICAgICAgICAgICgweDA4VUwgPDwgQURDX1NRUjNfU1ExMF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgQURDX1NRUjNfU1ExMF80ICAgICAgICAgICAgICAgICgweDEwVUwgPDwgQURDX1NRUjNfU1ExMF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKworI2RlZmluZSBBRENfU1FSM19TUTExX1BvcyAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfU1FSM19TUTExX01zayAgICAgICAgICAgICAgKDB4MUZVTCA8PCBBRENfU1FSM19TUTExX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDdDMCAqLworI2RlZmluZSBBRENfU1FSM19TUTExICAgICAgICAgICAgICAgICAgQURDX1NRUjNfU1ExMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMTEgKi8KKyNkZWZpbmUgQURDX1NRUjNfU1ExMV8wICAgICAgICAgICAgICAgICgweDAxVUwgPDwgQURDX1NRUjNfU1ExMV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgQURDX1NRUjNfU1ExMV8xICAgICAgICAgICAgICAgICgweDAyVUwgPDwgQURDX1NRUjNfU1ExMV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgQURDX1NRUjNfU1ExMV8yICAgICAgICAgICAgICAgICgweDA0VUwgPDwgQURDX1NRUjNfU1ExMV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgQURDX1NRUjNfU1ExMV8zICAgICAgICAgICAgICAgICgweDA4VUwgPDwgQURDX1NRUjNfU1ExMV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgQURDX1NRUjNfU1ExMV80ICAgICAgICAgICAgICAgICgweDEwVUwgPDwgQURDX1NRUjNfU1ExMV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKworI2RlZmluZSBBRENfU1FSM19TUTEyX1BvcyAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfU1FSM19TUTEyX01zayAgICAgICAgICAgICAgKDB4MUZVTCA8PCBBRENfU1FSM19TUTEyX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAxRjAwMCAqLworI2RlZmluZSBBRENfU1FSM19TUTEyICAgICAgICAgICAgICAgICAgQURDX1NRUjNfU1ExMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMTIgKi8KKyNkZWZpbmUgQURDX1NRUjNfU1ExMl8wICAgICAgICAgICAgICAgICgweDAxVUwgPDwgQURDX1NRUjNfU1ExMl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgQURDX1NRUjNfU1ExMl8xICAgICAgICAgICAgICAgICgweDAyVUwgPDwgQURDX1NRUjNfU1ExMl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgQURDX1NRUjNfU1ExMl8yICAgICAgICAgICAgICAgICgweDA0VUwgPDwgQURDX1NRUjNfU1ExMl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgQURDX1NRUjNfU1ExMl8zICAgICAgICAgICAgICAgICgweDA4VUwgPDwgQURDX1NRUjNfU1ExMl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgQURDX1NRUjNfU1ExMl80ICAgICAgICAgICAgICAgICgweDEwVUwgPDwgQURDX1NRUjNfU1ExMl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKworI2RlZmluZSBBRENfU1FSM19TUTEzX1BvcyAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfU1FSM19TUTEzX01zayAgICAgICAgICAgICAgKDB4MUZVTCA8PCBBRENfU1FSM19TUTEzX1BvcykgICAgICAgICAgIC8qITwgMHgwMDdDMDAwMCAqLworI2RlZmluZSBBRENfU1FSM19TUTEzICAgICAgICAgICAgICAgICAgQURDX1NRUjNfU1ExM19Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMTMgKi8KKyNkZWZpbmUgQURDX1NRUjNfU1ExM18wICAgICAgICAgICAgICAgICgweDAxVUwgPDwgQURDX1NRUjNfU1ExM19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgQURDX1NRUjNfU1ExM18xICAgICAgICAgICAgICAgICgweDAyVUwgPDwgQURDX1NRUjNfU1ExM19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgQURDX1NRUjNfU1ExM18yICAgICAgICAgICAgICAgICgweDA0VUwgPDwgQURDX1NRUjNfU1ExM19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgQURDX1NRUjNfU1ExM18zICAgICAgICAgICAgICAgICgweDA4VUwgPDwgQURDX1NRUjNfU1ExM19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8KKyNkZWZpbmUgQURDX1NRUjNfU1ExM180ICAgICAgICAgICAgICAgICgweDEwVUwgPDwgQURDX1NRUjNfU1ExM19Qb3MpICAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8KKworI2RlZmluZSBBRENfU1FSM19TUTE0X1BvcyAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfU1FSM19TUTE0X01zayAgICAgICAgICAgICAgKDB4MUZVTCA8PCBBRENfU1FSM19TUTE0X1BvcykgICAgICAgICAgIC8qITwgMHgxRjAwMDAwMCAqLworI2RlZmluZSBBRENfU1FSM19TUTE0ICAgICAgICAgICAgICAgICAgQURDX1NRUjNfU1ExNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMTQgKi8KKyNkZWZpbmUgQURDX1NRUjNfU1ExNF8wICAgICAgICAgICAgICAgICgweDAxVUwgPDwgQURDX1NRUjNfU1ExNF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8KKyNkZWZpbmUgQURDX1NRUjNfU1ExNF8xICAgICAgICAgICAgICAgICgweDAyVUwgPDwgQURDX1NRUjNfU1ExNF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8KKyNkZWZpbmUgQURDX1NRUjNfU1ExNF8yICAgICAgICAgICAgICAgICgweDA0VUwgPDwgQURDX1NRUjNfU1ExNF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8KKyNkZWZpbmUgQURDX1NRUjNfU1ExNF8zICAgICAgICAgICAgICAgICgweDA4VUwgPDwgQURDX1NRUjNfU1ExNF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8KKyNkZWZpbmUgQURDX1NRUjNfU1ExNF80ICAgICAgICAgICAgICAgICgweDEwVUwgPDwgQURDX1NRUjNfU1ExNF9Qb3MpICAgICAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX1NRUjQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgQURDX1NRUjRfU1ExNV9Qb3MgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX1NRUjRfU1ExNV9Nc2sgICAgICAgICAgICAgICgweDFGVUwgPDwgQURDX1NRUjRfU1ExNV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMUYgKi8KKyNkZWZpbmUgQURDX1NRUjRfU1ExNSAgICAgICAgICAgICAgICAgIEFEQ19TUVI0X1NRMTVfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDE1ICovCisjZGVmaW5lIEFEQ19TUVI0X1NRMTVfMCAgICAgICAgICAgICAgICAoMHgwMVVMIDw8IEFEQ19TUVI0X1NRMTVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIEFEQ19TUVI0X1NRMTVfMSAgICAgICAgICAgICAgICAoMHgwMlVMIDw8IEFEQ19TUVI0X1NRMTVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIEFEQ19TUVI0X1NRMTVfMiAgICAgICAgICAgICAgICAoMHgwNFVMIDw8IEFEQ19TUVI0X1NRMTVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIEFEQ19TUVI0X1NRMTVfMyAgICAgICAgICAgICAgICAoMHgwOFVMIDw8IEFEQ19TUVI0X1NRMTVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIEFEQ19TUVI0X1NRMTVfNCAgICAgICAgICAgICAgICAoMHgxMFVMIDw8IEFEQ19TUVI0X1NRMTVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisKKyNkZWZpbmUgQURDX1NRUjRfU1ExNl9Qb3MgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX1NRUjRfU1ExNl9Nc2sgICAgICAgICAgICAgICgweDFGVUwgPDwgQURDX1NRUjRfU1ExNl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA3QzAgKi8KKyNkZWZpbmUgQURDX1NRUjRfU1ExNiAgICAgICAgICAgICAgICAgIEFEQ19TUVI0X1NRMTZfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDE2ICovCisjZGVmaW5lIEFEQ19TUVI0X1NRMTZfMCAgICAgICAgICAgICAgICAoMHgwMVVMIDw8IEFEQ19TUVI0X1NRMTZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIEFEQ19TUVI0X1NRMTZfMSAgICAgICAgICAgICAgICAoMHgwMlVMIDw8IEFEQ19TUVI0X1NRMTZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIEFEQ19TUVI0X1NRMTZfMiAgICAgICAgICAgICAgICAoMHgwNFVMIDw8IEFEQ19TUVI0X1NRMTZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIEFEQ19TUVI0X1NRMTZfMyAgICAgICAgICAgICAgICAoMHgwOFVMIDw8IEFEQ19TUVI0X1NRMTZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIEFEQ19TUVI0X1NRMTZfNCAgICAgICAgICAgICAgICAoMHgxMFVMIDw8IEFEQ19TUVI0X1NRMTZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19EUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIEFEQ19EUl9SREFUQV9Qb3MgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfRFJfUkRBVEFfTXNrICAgICAgICAgICAgICAoMHhGRkZGVUwgPDwgQURDX0RSX1JEQVRBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLworI2RlZmluZSBBRENfRFJfUkRBVEEgICAgICAgICAgICAgICAgICBBRENfRFJfUkRBVEFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgY29udmVyc2lvbiBkYXRhICovCisjZGVmaW5lIEFEQ19EUl9SREFUQV8wICAgICAgICAgICAgICAgICgweDAwMDFVTCA8PCBBRENfRFJfUkRBVEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIEFEQ19EUl9SREFUQV8xICAgICAgICAgICAgICAgICgweDAwMDJVTCA8PCBBRENfRFJfUkRBVEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIEFEQ19EUl9SREFUQV8yICAgICAgICAgICAgICAgICgweDAwMDRVTCA8PCBBRENfRFJfUkRBVEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIEFEQ19EUl9SREFUQV8zICAgICAgICAgICAgICAgICgweDAwMDhVTCA8PCBBRENfRFJfUkRBVEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIEFEQ19EUl9SREFUQV80ICAgICAgICAgICAgICAgICgweDAwMTBVTCA8PCBBRENfRFJfUkRBVEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIEFEQ19EUl9SREFUQV81ICAgICAgICAgICAgICAgICgweDAwMjBVTCA8PCBBRENfRFJfUkRBVEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIEFEQ19EUl9SREFUQV82ICAgICAgICAgICAgICAgICgweDAwNDBVTCA8PCBBRENfRFJfUkRBVEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIEFEQ19EUl9SREFUQV83ICAgICAgICAgICAgICAgICgweDAwODBVTCA8PCBBRENfRFJfUkRBVEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIEFEQ19EUl9SREFUQV84ICAgICAgICAgICAgICAgICgweDAxMDBVTCA8PCBBRENfRFJfUkRBVEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIEFEQ19EUl9SREFUQV85ICAgICAgICAgICAgICAgICgweDAyMDBVTCA8PCBBRENfRFJfUkRBVEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIEFEQ19EUl9SREFUQV8xMCAgICAgICAgICAgICAgICgweDA0MDBVTCA8PCBBRENfRFJfUkRBVEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIEFEQ19EUl9SREFUQV8xMSAgICAgICAgICAgICAgICgweDA4MDBVTCA8PCBBRENfRFJfUkRBVEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIEFEQ19EUl9SREFUQV8xMiAgICAgICAgICAgICAgICgweDEwMDBVTCA8PCBBRENfRFJfUkRBVEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIEFEQ19EUl9SREFUQV8xMyAgICAgICAgICAgICAgICgweDIwMDBVTCA8PCBBRENfRFJfUkRBVEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIEFEQ19EUl9SREFUQV8xNCAgICAgICAgICAgICAgICgweDQwMDBVTCA8PCBBRENfRFJfUkRBVEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIEFEQ19EUl9SREFUQV8xNSAgICAgICAgICAgICAgICgweDgwMDBVTCA8PCBBRENfRFJfUkRBVEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19KU1FSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIEFEQ19KU1FSX0pMX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19KU1FSX0pMX01zayAgICAgICAgICAgICAgICAoMHgzVUwgPDwgQURDX0pTUVJfSkxfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAzICovCisjZGVmaW5lIEFEQ19KU1FSX0pMICAgICAgICAgICAgICAgICAgICBBRENfSlNRUl9KTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgc2VxdWVuY2VyIHNjYW4gbGVuZ3RoICovCisjZGVmaW5lIEFEQ19KU1FSX0pMXzAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX0pTUVJfSkxfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIEFEQ19KU1FSX0pMXzEgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgQURDX0pTUVJfSkxfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisKKyNkZWZpbmUgQURDX0pTUVJfSkVYVFNFTF9Qb3MgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX0pTUVJfSkVYVFNFTF9Nc2sgICAgICAgICAgICgweEZVTCA8PCBBRENfSlNRUl9KRVhUU0VMX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwM0MgKi8KKyNkZWZpbmUgQURDX0pTUVJfSkVYVFNFTCAgICAgICAgICAgICAgIEFEQ19KU1FSX0pFWFRTRUxfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBleHRlcm5hbCB0cmlnZ2VyIHNvdXJjZSAqLworI2RlZmluZSBBRENfSlNRUl9KRVhUU0VMXzAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19KU1FSX0pFWFRTRUxfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBBRENfSlNRUl9KRVhUU0VMXzEgICAgICAgICAgICAgKDB4MlVMIDw8IEFEQ19KU1FSX0pFWFRTRUxfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBBRENfSlNRUl9KRVhUU0VMXzIgICAgICAgICAgICAgKDB4NFVMIDw8IEFEQ19KU1FSX0pFWFRTRUxfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBBRENfSlNRUl9KRVhUU0VMXzMgICAgICAgICAgICAgKDB4OFVMIDw8IEFEQ19KU1FSX0pFWFRTRUxfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworCisjZGVmaW5lIEFEQ19KU1FSX0pFWFRFTl9Qb3MgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19KU1FSX0pFWFRFTl9Nc2sgICAgICAgICAgICAoMHgzVUwgPDwgQURDX0pTUVJfSkVYVEVOX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMEMwICovCisjZGVmaW5lIEFEQ19KU1FSX0pFWFRFTiAgICAgICAgICAgICAgICBBRENfSlNRUl9KRVhURU5fTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgZXh0ZXJuYWwgdHJpZ2dlciBwb2xhcml0eSAqLworI2RlZmluZSBBRENfSlNRUl9KRVhURU5fMCAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19KU1FSX0pFWFRFTl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBBRENfSlNRUl9KRVhURU5fMSAgICAgICAgICAgICAgKDB4MlVMIDw8IEFEQ19KU1FSX0pFWFRFTl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLworCisjZGVmaW5lIEFEQ19KU1FSX0pTUTFfUG9zICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19KU1FSX0pTUTFfTXNrICAgICAgICAgICAgICAoMHgxRlVMIDw8IEFEQ19KU1FSX0pTUTFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAxRjAwICovCisjZGVmaW5lIEFEQ19KU1FSX0pTUTEgICAgICAgICAgICAgICAgICBBRENfSlNRUl9KU1ExX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgc2VxdWVuY2VyIHJhbmsgMSAqLworI2RlZmluZSBBRENfSlNRUl9KU1ExXzAgICAgICAgICAgICAgICAgKDB4MDFVTCA8PCBBRENfSlNRUl9KU1ExX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBBRENfSlNRUl9KU1ExXzEgICAgICAgICAgICAgICAgKDB4MDJVTCA8PCBBRENfSlNRUl9KU1ExX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBBRENfSlNRUl9KU1ExXzIgICAgICAgICAgICAgICAgKDB4MDRVTCA8PCBBRENfSlNRUl9KU1ExX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLworI2RlZmluZSBBRENfSlNRUl9KU1ExXzMgICAgICAgICAgICAgICAgKDB4MDhVTCA8PCBBRENfSlNRUl9KU1ExX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLworI2RlZmluZSBBRENfSlNRUl9KU1ExXzQgICAgICAgICAgICAgICAgKDB4MTBVTCA8PCBBRENfSlNRUl9KU1ExX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLworCisjZGVmaW5lIEFEQ19KU1FSX0pTUTJfUG9zICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19KU1FSX0pTUTJfTXNrICAgICAgICAgICAgICAoMHgxRlVMIDw8IEFEQ19KU1FSX0pTUTJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDdDMDAwICovCisjZGVmaW5lIEFEQ19KU1FSX0pTUTIgICAgICAgICAgICAgICAgICBBRENfSlNRUl9KU1EyX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgc2VxdWVuY2VyIHJhbmsgMiAqLworI2RlZmluZSBBRENfSlNRUl9KU1EyXzAgICAgICAgICAgICAgICAgKDB4MDFVTCA8PCBBRENfSlNRUl9KU1EyX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLworI2RlZmluZSBBRENfSlNRUl9KU1EyXzEgICAgICAgICAgICAgICAgKDB4MDJVTCA8PCBBRENfSlNRUl9KU1EyX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLworI2RlZmluZSBBRENfSlNRUl9KU1EyXzIgICAgICAgICAgICAgICAgKDB4MDRVTCA8PCBBRENfSlNRUl9KU1EyX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBBRENfSlNRUl9KU1EyXzMgICAgICAgICAgICAgICAgKDB4MDhVTCA8PCBBRENfSlNRUl9KU1EyX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLworI2RlZmluZSBBRENfSlNRUl9KU1EyXzQgICAgICAgICAgICAgICAgKDB4MTBVTCA8PCBBRENfSlNRUl9KU1EyX1BvcykgICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLworCisjZGVmaW5lIEFEQ19KU1FSX0pTUTNfUG9zICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19KU1FSX0pTUTNfTXNrICAgICAgICAgICAgICAoMHgxRlVMIDw8IEFEQ19KU1FSX0pTUTNfUG9zKSAgICAgICAgICAgLyohPCAweDAxRjAwMDAwICovCisjZGVmaW5lIEFEQ19KU1FSX0pTUTMgICAgICAgICAgICAgICAgICBBRENfSlNRUl9KU1EzX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgc2VxdWVuY2VyIHJhbmsgMyAqLworI2RlZmluZSBBRENfSlNRUl9KU1EzXzAgICAgICAgICAgICAgICAgKDB4MDFVTCA8PCBBRENfSlNRUl9KU1EzX1BvcykgICAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLworI2RlZmluZSBBRENfSlNRUl9KU1EzXzEgICAgICAgICAgICAgICAgKDB4MDJVTCA8PCBBRENfSlNRUl9KU1EzX1BvcykgICAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLworI2RlZmluZSBBRENfSlNRUl9KU1EzXzIgICAgICAgICAgICAgICAgKDB4MDRVTCA8PCBBRENfSlNRUl9KU1EzX1BvcykgICAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLworI2RlZmluZSBBRENfSlNRUl9KU1EzXzMgICAgICAgICAgICAgICAgKDB4MDhVTCA8PCBBRENfSlNRUl9KU1EzX1BvcykgICAgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLworI2RlZmluZSBBRENfSlNRUl9KU1EzXzQgICAgICAgICAgICAgICAgKDB4MTBVTCA8PCBBRENfSlNRUl9KU1EzX1BvcykgICAgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLworCisjZGVmaW5lIEFEQ19KU1FSX0pTUTRfUG9zICAgICAgICAgICAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19KU1FSX0pTUTRfTXNrICAgICAgICAgICAgICAoMHgxRlVMIDw8IEFEQ19KU1FSX0pTUTRfUG9zKSAgICAgICAgICAgLyohPCAweDdDMDAwMDAwICovCisjZGVmaW5lIEFEQ19KU1FSX0pTUTQgICAgICAgICAgICAgICAgICBBRENfSlNRUl9KU1E0X01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgc2VxdWVuY2VyIHJhbmsgNCAqLworI2RlZmluZSBBRENfSlNRUl9KU1E0XzAgICAgICAgICAgICAgICAgKDB4MDFVTCA8PCBBRENfSlNRUl9KU1E0X1BvcykgICAgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLworI2RlZmluZSBBRENfSlNRUl9KU1E0XzEgICAgICAgICAgICAgICAgKDB4MDJVTCA8PCBBRENfSlNRUl9KU1E0X1BvcykgICAgICAgICAgIC8qITwgMHgwODAwMDAwMCAqLworI2RlZmluZSBBRENfSlNRUl9KU1E0XzIgICAgICAgICAgICAgICAgKDB4MDRVTCA8PCBBRENfSlNRUl9KU1E0X1BvcykgICAgICAgICAgIC8qITwgMHgxMDAwMDAwMCAqLworI2RlZmluZSBBRENfSlNRUl9KU1E0XzMgICAgICAgICAgICAgICAgKDB4MDhVTCA8PCBBRENfSlNRUl9KU1E0X1BvcykgICAgICAgICAgIC8qITwgMHgyMDAwMDAwMCAqLworI2RlZmluZSBBRENfSlNRUl9KU1E0XzQgICAgICAgICAgICAgICAgKDB4MTBVTCA8PCBBRENfSlNRUl9KU1E0X1BvcykgICAgICAgICAgIC8qITwgMHg0MDAwMDAwMCAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfT0ZSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBBRENfT0ZSMV9PRkZTRVQxX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfT0ZSMV9PRkZTRVQxX01zayAgICAgICAgICAgKDB4RkZGVUwgPDwgQURDX09GUjFfT0ZGU0VUMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMEZGRiAqLworI2RlZmluZSBBRENfT0ZSMV9PRkZTRVQxICAgICAgICAgICAgICAgQURDX09GUjFfT0ZGU0VUMV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIG9mZnNldCBudW1iZXIgMSBvZmZzZXQgbGV2ZWwgKi8KKyNkZWZpbmUgQURDX09GUjFfT0ZGU0VUMV8wICAgICAgICAgICAgICgweDAwMVVMIDw8IEFEQ19PRlIxX09GRlNFVDFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgQURDX09GUjFfT0ZGU0VUMV8xICAgICAgICAgICAgICgweDAwMlVMIDw8IEFEQ19PRlIxX09GRlNFVDFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgQURDX09GUjFfT0ZGU0VUMV8yICAgICAgICAgICAgICgweDAwNFVMIDw8IEFEQ19PRlIxX09GRlNFVDFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgQURDX09GUjFfT0ZGU0VUMV8zICAgICAgICAgICAgICgweDAwOFVMIDw8IEFEQ19PRlIxX09GRlNFVDFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgQURDX09GUjFfT0ZGU0VUMV80ICAgICAgICAgICAgICgweDAxMFVMIDw8IEFEQ19PRlIxX09GRlNFVDFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgQURDX09GUjFfT0ZGU0VUMV81ICAgICAgICAgICAgICgweDAyMFVMIDw8IEFEQ19PRlIxX09GRlNFVDFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgQURDX09GUjFfT0ZGU0VUMV82ICAgICAgICAgICAgICgweDA0MFVMIDw8IEFEQ19PRlIxX09GRlNFVDFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgQURDX09GUjFfT0ZGU0VUMV83ICAgICAgICAgICAgICgweDA4MFVMIDw8IEFEQ19PRlIxX09GRlNFVDFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgQURDX09GUjFfT0ZGU0VUMV84ICAgICAgICAgICAgICgweDEwMFVMIDw8IEFEQ19PRlIxX09GRlNFVDFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgQURDX09GUjFfT0ZGU0VUMV85ICAgICAgICAgICAgICgweDIwMFVMIDw8IEFEQ19PRlIxX09GRlNFVDFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgQURDX09GUjFfT0ZGU0VUMV8xMCAgICAgICAgICAgICgweDQwMFVMIDw8IEFEQ19PRlIxX09GRlNFVDFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgQURDX09GUjFfT0ZGU0VUMV8xMSAgICAgICAgICAgICgweDgwMFVMIDw8IEFEQ19PRlIxX09GRlNFVDFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKworI2RlZmluZSBBRENfT0ZSMV9PRkZTRVQxX0NIX1BvcyAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfT0ZSMV9PRkZTRVQxX0NIX01zayAgICAgICAgKDB4MUZVTCA8PCBBRENfT0ZSMV9PRkZTRVQxX0NIX1BvcykgICAgIC8qITwgMHg3QzAwMDAwMCAqLworI2RlZmluZSBBRENfT0ZSMV9PRkZTRVQxX0NIICAgICAgICAgICAgQURDX09GUjFfT0ZGU0VUMV9DSF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIG9mZnNldCBudW1iZXIgMSBjaGFubmVsIHNlbGVjdGlvbiAqLworI2RlZmluZSBBRENfT0ZSMV9PRkZTRVQxX0NIXzAgICAgICAgICAgKDB4MDFVTCA8PCBBRENfT0ZSMV9PRkZTRVQxX0NIX1BvcykgICAgIC8qITwgMHgwNDAwMDAwMCAqLworI2RlZmluZSBBRENfT0ZSMV9PRkZTRVQxX0NIXzEgICAgICAgICAgKDB4MDJVTCA8PCBBRENfT0ZSMV9PRkZTRVQxX0NIX1BvcykgICAgIC8qITwgMHgwODAwMDAwMCAqLworI2RlZmluZSBBRENfT0ZSMV9PRkZTRVQxX0NIXzIgICAgICAgICAgKDB4MDRVTCA8PCBBRENfT0ZSMV9PRkZTRVQxX0NIX1BvcykgICAgIC8qITwgMHgxMDAwMDAwMCAqLworI2RlZmluZSBBRENfT0ZSMV9PRkZTRVQxX0NIXzMgICAgICAgICAgKDB4MDhVTCA8PCBBRENfT0ZSMV9PRkZTRVQxX0NIX1BvcykgICAgIC8qITwgMHgyMDAwMDAwMCAqLworI2RlZmluZSBBRENfT0ZSMV9PRkZTRVQxX0NIXzQgICAgICAgICAgKDB4MTBVTCA8PCBBRENfT0ZSMV9PRkZTRVQxX0NIX1BvcykgICAgIC8qITwgMHg0MDAwMDAwMCAqLworCisjZGVmaW5lIEFEQ19PRlIxX09GRlNFVDFfRU5fUG9zICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19PRlIxX09GRlNFVDFfRU5fTXNrICAgICAgICAoMHgxVUwgPDwgQURDX09GUjFfT0ZGU0VUMV9FTl9Qb3MpICAgICAgLyohPCAweDgwMDAwMDAwICovCisjZGVmaW5lIEFEQ19PRlIxX09GRlNFVDFfRU4gICAgICAgICAgICBBRENfT0ZSMV9PRkZTRVQxX0VOX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgb2Zmc2V0IG51bWJlciAxIGVuYWJsZSAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfT0ZSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBBRENfT0ZSMl9PRkZTRVQyX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfT0ZSMl9PRkZTRVQyX01zayAgICAgICAgICAgKDB4RkZGVUwgPDwgQURDX09GUjJfT0ZGU0VUMl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMEZGRiAqLworI2RlZmluZSBBRENfT0ZSMl9PRkZTRVQyICAgICAgICAgICAgICAgQURDX09GUjJfT0ZGU0VUMl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIG9mZnNldCBudW1iZXIgMiBvZmZzZXQgbGV2ZWwgKi8KKyNkZWZpbmUgQURDX09GUjJfT0ZGU0VUMl8wICAgICAgICAgICAgICgweDAwMVVMIDw8IEFEQ19PRlIyX09GRlNFVDJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgQURDX09GUjJfT0ZGU0VUMl8xICAgICAgICAgICAgICgweDAwMlVMIDw8IEFEQ19PRlIyX09GRlNFVDJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgQURDX09GUjJfT0ZGU0VUMl8yICAgICAgICAgICAgICgweDAwNFVMIDw8IEFEQ19PRlIyX09GRlNFVDJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgQURDX09GUjJfT0ZGU0VUMl8zICAgICAgICAgICAgICgweDAwOFVMIDw8IEFEQ19PRlIyX09GRlNFVDJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgQURDX09GUjJfT0ZGU0VUMl80ICAgICAgICAgICAgICgweDAxMFVMIDw8IEFEQ19PRlIyX09GRlNFVDJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgQURDX09GUjJfT0ZGU0VUMl81ICAgICAgICAgICAgICgweDAyMFVMIDw8IEFEQ19PRlIyX09GRlNFVDJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgQURDX09GUjJfT0ZGU0VUMl82ICAgICAgICAgICAgICgweDA0MFVMIDw8IEFEQ19PRlIyX09GRlNFVDJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgQURDX09GUjJfT0ZGU0VUMl83ICAgICAgICAgICAgICgweDA4MFVMIDw8IEFEQ19PRlIyX09GRlNFVDJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgQURDX09GUjJfT0ZGU0VUMl84ICAgICAgICAgICAgICgweDEwMFVMIDw8IEFEQ19PRlIyX09GRlNFVDJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgQURDX09GUjJfT0ZGU0VUMl85ICAgICAgICAgICAgICgweDIwMFVMIDw8IEFEQ19PRlIyX09GRlNFVDJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgQURDX09GUjJfT0ZGU0VUMl8xMCAgICAgICAgICAgICgweDQwMFVMIDw8IEFEQ19PRlIyX09GRlNFVDJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgQURDX09GUjJfT0ZGU0VUMl8xMSAgICAgICAgICAgICgweDgwMFVMIDw8IEFEQ19PRlIyX09GRlNFVDJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKworI2RlZmluZSBBRENfT0ZSMl9PRkZTRVQyX0NIX1BvcyAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfT0ZSMl9PRkZTRVQyX0NIX01zayAgICAgICAgKDB4MUZVTCA8PCBBRENfT0ZSMl9PRkZTRVQyX0NIX1BvcykgICAgIC8qITwgMHg3QzAwMDAwMCAqLworI2RlZmluZSBBRENfT0ZSMl9PRkZTRVQyX0NIICAgICAgICAgICAgQURDX09GUjJfT0ZGU0VUMl9DSF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIG9mZnNldCBudW1iZXIgMiBjaGFubmVsIHNlbGVjdGlvbiAqLworI2RlZmluZSBBRENfT0ZSMl9PRkZTRVQyX0NIXzAgICAgICAgICAgKDB4MDFVTCA8PCBBRENfT0ZSMl9PRkZTRVQyX0NIX1BvcykgICAgIC8qITwgMHgwNDAwMDAwMCAqLworI2RlZmluZSBBRENfT0ZSMl9PRkZTRVQyX0NIXzEgICAgICAgICAgKDB4MDJVTCA8PCBBRENfT0ZSMl9PRkZTRVQyX0NIX1BvcykgICAgIC8qITwgMHgwODAwMDAwMCAqLworI2RlZmluZSBBRENfT0ZSMl9PRkZTRVQyX0NIXzIgICAgICAgICAgKDB4MDRVTCA8PCBBRENfT0ZSMl9PRkZTRVQyX0NIX1BvcykgICAgIC8qITwgMHgxMDAwMDAwMCAqLworI2RlZmluZSBBRENfT0ZSMl9PRkZTRVQyX0NIXzMgICAgICAgICAgKDB4MDhVTCA8PCBBRENfT0ZSMl9PRkZTRVQyX0NIX1BvcykgICAgIC8qITwgMHgyMDAwMDAwMCAqLworI2RlZmluZSBBRENfT0ZSMl9PRkZTRVQyX0NIXzQgICAgICAgICAgKDB4MTBVTCA8PCBBRENfT0ZSMl9PRkZTRVQyX0NIX1BvcykgICAgIC8qITwgMHg0MDAwMDAwMCAqLworCisjZGVmaW5lIEFEQ19PRlIyX09GRlNFVDJfRU5fUG9zICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19PRlIyX09GRlNFVDJfRU5fTXNrICAgICAgICAoMHgxVUwgPDwgQURDX09GUjJfT0ZGU0VUMl9FTl9Qb3MpICAgICAgLyohPCAweDgwMDAwMDAwICovCisjZGVmaW5lIEFEQ19PRlIyX09GRlNFVDJfRU4gICAgICAgICAgICBBRENfT0ZSMl9PRkZTRVQyX0VOX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgb2Zmc2V0IG51bWJlciAyIGVuYWJsZSAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfT0ZSMyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBBRENfT0ZSM19PRkZTRVQzX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfT0ZSM19PRkZTRVQzX01zayAgICAgICAgICAgKDB4RkZGVUwgPDwgQURDX09GUjNfT0ZGU0VUM19Qb3MpICAgICAgIC8qITwgMHgwMDAwMEZGRiAqLworI2RlZmluZSBBRENfT0ZSM19PRkZTRVQzICAgICAgICAgICAgICAgQURDX09GUjNfT0ZGU0VUM19Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIG9mZnNldCBudW1iZXIgMyBvZmZzZXQgbGV2ZWwgKi8KKyNkZWZpbmUgQURDX09GUjNfT0ZGU0VUM18wICAgICAgICAgICAgICgweDAwMVVMIDw8IEFEQ19PRlIzX09GRlNFVDNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgQURDX09GUjNfT0ZGU0VUM18xICAgICAgICAgICAgICgweDAwMlVMIDw8IEFEQ19PRlIzX09GRlNFVDNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgQURDX09GUjNfT0ZGU0VUM18yICAgICAgICAgICAgICgweDAwNFVMIDw8IEFEQ19PRlIzX09GRlNFVDNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgQURDX09GUjNfT0ZGU0VUM18zICAgICAgICAgICAgICgweDAwOFVMIDw8IEFEQ19PRlIzX09GRlNFVDNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgQURDX09GUjNfT0ZGU0VUM180ICAgICAgICAgICAgICgweDAxMFVMIDw8IEFEQ19PRlIzX09GRlNFVDNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgQURDX09GUjNfT0ZGU0VUM181ICAgICAgICAgICAgICgweDAyMFVMIDw8IEFEQ19PRlIzX09GRlNFVDNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgQURDX09GUjNfT0ZGU0VUM182ICAgICAgICAgICAgICgweDA0MFVMIDw8IEFEQ19PRlIzX09GRlNFVDNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgQURDX09GUjNfT0ZGU0VUM183ICAgICAgICAgICAgICgweDA4MFVMIDw8IEFEQ19PRlIzX09GRlNFVDNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgQURDX09GUjNfT0ZGU0VUM184ICAgICAgICAgICAgICgweDEwMFVMIDw8IEFEQ19PRlIzX09GRlNFVDNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgQURDX09GUjNfT0ZGU0VUM185ICAgICAgICAgICAgICgweDIwMFVMIDw8IEFEQ19PRlIzX09GRlNFVDNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgQURDX09GUjNfT0ZGU0VUM18xMCAgICAgICAgICAgICgweDQwMFVMIDw8IEFEQ19PRlIzX09GRlNFVDNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgQURDX09GUjNfT0ZGU0VUM18xMSAgICAgICAgICAgICgweDgwMFVMIDw8IEFEQ19PRlIzX09GRlNFVDNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKworI2RlZmluZSBBRENfT0ZSM19PRkZTRVQzX0NIX1BvcyAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfT0ZSM19PRkZTRVQzX0NIX01zayAgICAgICAgKDB4MUZVTCA8PCBBRENfT0ZSM19PRkZTRVQzX0NIX1BvcykgICAgIC8qITwgMHg3QzAwMDAwMCAqLworI2RlZmluZSBBRENfT0ZSM19PRkZTRVQzX0NIICAgICAgICAgICAgQURDX09GUjNfT0ZGU0VUM19DSF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIG9mZnNldCBudW1iZXIgMyBjaGFubmVsIHNlbGVjdGlvbiAqLworI2RlZmluZSBBRENfT0ZSM19PRkZTRVQzX0NIXzAgICAgICAgICAgKDB4MDFVTCA8PCBBRENfT0ZSM19PRkZTRVQzX0NIX1BvcykgICAgIC8qITwgMHgwNDAwMDAwMCAqLworI2RlZmluZSBBRENfT0ZSM19PRkZTRVQzX0NIXzEgICAgICAgICAgKDB4MDJVTCA8PCBBRENfT0ZSM19PRkZTRVQzX0NIX1BvcykgICAgIC8qITwgMHgwODAwMDAwMCAqLworI2RlZmluZSBBRENfT0ZSM19PRkZTRVQzX0NIXzIgICAgICAgICAgKDB4MDRVTCA8PCBBRENfT0ZSM19PRkZTRVQzX0NIX1BvcykgICAgIC8qITwgMHgxMDAwMDAwMCAqLworI2RlZmluZSBBRENfT0ZSM19PRkZTRVQzX0NIXzMgICAgICAgICAgKDB4MDhVTCA8PCBBRENfT0ZSM19PRkZTRVQzX0NIX1BvcykgICAgIC8qITwgMHgyMDAwMDAwMCAqLworI2RlZmluZSBBRENfT0ZSM19PRkZTRVQzX0NIXzQgICAgICAgICAgKDB4MTBVTCA8PCBBRENfT0ZSM19PRkZTRVQzX0NIX1BvcykgICAgIC8qITwgMHg0MDAwMDAwMCAqLworCisjZGVmaW5lIEFEQ19PRlIzX09GRlNFVDNfRU5fUG9zICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19PRlIzX09GRlNFVDNfRU5fTXNrICAgICAgICAoMHgxVUwgPDwgQURDX09GUjNfT0ZGU0VUM19FTl9Qb3MpICAgICAgLyohPCAweDgwMDAwMDAwICovCisjZGVmaW5lIEFEQ19PRlIzX09GRlNFVDNfRU4gICAgICAgICAgICBBRENfT0ZSM19PRkZTRVQzX0VOX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgb2Zmc2V0IG51bWJlciAzIGVuYWJsZSAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfT0ZSNCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBBRENfT0ZSNF9PRkZTRVQ0X1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfT0ZSNF9PRkZTRVQ0X01zayAgICAgICAgICAgKDB4RkZGVUwgPDwgQURDX09GUjRfT0ZGU0VUNF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMEZGRiAqLworI2RlZmluZSBBRENfT0ZSNF9PRkZTRVQ0ICAgICAgICAgICAgICAgQURDX09GUjRfT0ZGU0VUNF9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIG9mZnNldCBudW1iZXIgNCBvZmZzZXQgbGV2ZWwgKi8KKyNkZWZpbmUgQURDX09GUjRfT0ZGU0VUNF8wICAgICAgICAgICAgICgweDAwMVVMIDw8IEFEQ19PRlI0X09GRlNFVDRfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgQURDX09GUjRfT0ZGU0VUNF8xICAgICAgICAgICAgICgweDAwMlVMIDw8IEFEQ19PRlI0X09GRlNFVDRfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgQURDX09GUjRfT0ZGU0VUNF8yICAgICAgICAgICAgICgweDAwNFVMIDw8IEFEQ19PRlI0X09GRlNFVDRfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgQURDX09GUjRfT0ZGU0VUNF8zICAgICAgICAgICAgICgweDAwOFVMIDw8IEFEQ19PRlI0X09GRlNFVDRfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgQURDX09GUjRfT0ZGU0VUNF80ICAgICAgICAgICAgICgweDAxMFVMIDw8IEFEQ19PRlI0X09GRlNFVDRfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgQURDX09GUjRfT0ZGU0VUNF81ICAgICAgICAgICAgICgweDAyMFVMIDw8IEFEQ19PRlI0X09GRlNFVDRfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgQURDX09GUjRfT0ZGU0VUNF82ICAgICAgICAgICAgICgweDA0MFVMIDw8IEFEQ19PRlI0X09GRlNFVDRfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgQURDX09GUjRfT0ZGU0VUNF83ICAgICAgICAgICAgICgweDA4MFVMIDw8IEFEQ19PRlI0X09GRlNFVDRfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgQURDX09GUjRfT0ZGU0VUNF84ICAgICAgICAgICAgICgweDEwMFVMIDw8IEFEQ19PRlI0X09GRlNFVDRfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgQURDX09GUjRfT0ZGU0VUNF85ICAgICAgICAgICAgICgweDIwMFVMIDw8IEFEQ19PRlI0X09GRlNFVDRfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgQURDX09GUjRfT0ZGU0VUNF8xMCAgICAgICAgICAgICgweDQwMFVMIDw8IEFEQ19PRlI0X09GRlNFVDRfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgQURDX09GUjRfT0ZGU0VUNF8xMSAgICAgICAgICAgICgweDgwMFVMIDw8IEFEQ19PRlI0X09GRlNFVDRfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKworI2RlZmluZSBBRENfT0ZSNF9PRkZTRVQ0X0NIX1BvcyAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfT0ZSNF9PRkZTRVQ0X0NIX01zayAgICAgICAgKDB4MUZVTCA8PCBBRENfT0ZSNF9PRkZTRVQ0X0NIX1BvcykgICAgIC8qITwgMHg3QzAwMDAwMCAqLworI2RlZmluZSBBRENfT0ZSNF9PRkZTRVQ0X0NIICAgICAgICAgICAgQURDX09GUjRfT0ZGU0VUNF9DSF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIG9mZnNldCBudW1iZXIgNCBjaGFubmVsIHNlbGVjdGlvbiAqLworI2RlZmluZSBBRENfT0ZSNF9PRkZTRVQ0X0NIXzAgICAgICAgICAgKDB4MDFVTCA8PCBBRENfT0ZSNF9PRkZTRVQ0X0NIX1BvcykgICAgIC8qITwgMHgwNDAwMDAwMCAqLworI2RlZmluZSBBRENfT0ZSNF9PRkZTRVQ0X0NIXzEgICAgICAgICAgKDB4MDJVTCA8PCBBRENfT0ZSNF9PRkZTRVQ0X0NIX1BvcykgICAgIC8qITwgMHgwODAwMDAwMCAqLworI2RlZmluZSBBRENfT0ZSNF9PRkZTRVQ0X0NIXzIgICAgICAgICAgKDB4MDRVTCA8PCBBRENfT0ZSNF9PRkZTRVQ0X0NIX1BvcykgICAgIC8qITwgMHgxMDAwMDAwMCAqLworI2RlZmluZSBBRENfT0ZSNF9PRkZTRVQ0X0NIXzMgICAgICAgICAgKDB4MDhVTCA8PCBBRENfT0ZSNF9PRkZTRVQ0X0NIX1BvcykgICAgIC8qITwgMHgyMDAwMDAwMCAqLworI2RlZmluZSBBRENfT0ZSNF9PRkZTRVQ0X0NIXzQgICAgICAgICAgKDB4MTBVTCA8PCBBRENfT0ZSNF9PRkZTRVQ0X0NIX1BvcykgICAgIC8qITwgMHg0MDAwMDAwMCAqLworCisjZGVmaW5lIEFEQ19PRlI0X09GRlNFVDRfRU5fUG9zICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19PRlI0X09GRlNFVDRfRU5fTXNrICAgICAgICAoMHgxVUwgPDwgQURDX09GUjRfT0ZGU0VUNF9FTl9Qb3MpICAgICAgLyohPCAweDgwMDAwMDAwICovCisjZGVmaW5lIEFEQ19PRlI0X09GRlNFVDRfRU4gICAgICAgICAgICBBRENfT0ZSNF9PRkZTRVQ0X0VOX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgb2Zmc2V0IG51bWJlciA0IGVuYWJsZSAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfSkRSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBBRENfSkRSMV9KREFUQV9Qb3MgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfSkRSMV9KREFUQV9Nc2sgICAgICAgICAgICAgKDB4RkZGRlVMIDw8IEFEQ19KRFIxX0pEQVRBX1BvcykgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLworI2RlZmluZSBBRENfSkRSMV9KREFUQSAgICAgICAgICAgICAgICAgQURDX0pEUjFfSkRBVEFfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHNlcXVlbmNlciByYW5rIDEgY29udmVyc2lvbiBkYXRhICovCisjZGVmaW5lIEFEQ19KRFIxX0pEQVRBXzAgICAgICAgICAgICAgICAoMHgwMDAxVUwgPDwgQURDX0pEUjFfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIEFEQ19KRFIxX0pEQVRBXzEgICAgICAgICAgICAgICAoMHgwMDAyVUwgPDwgQURDX0pEUjFfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIEFEQ19KRFIxX0pEQVRBXzIgICAgICAgICAgICAgICAoMHgwMDA0VUwgPDwgQURDX0pEUjFfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIEFEQ19KRFIxX0pEQVRBXzMgICAgICAgICAgICAgICAoMHgwMDA4VUwgPDwgQURDX0pEUjFfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIEFEQ19KRFIxX0pEQVRBXzQgICAgICAgICAgICAgICAoMHgwMDEwVUwgPDwgQURDX0pEUjFfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIEFEQ19KRFIxX0pEQVRBXzUgICAgICAgICAgICAgICAoMHgwMDIwVUwgPDwgQURDX0pEUjFfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIEFEQ19KRFIxX0pEQVRBXzYgICAgICAgICAgICAgICAoMHgwMDQwVUwgPDwgQURDX0pEUjFfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIEFEQ19KRFIxX0pEQVRBXzcgICAgICAgICAgICAgICAoMHgwMDgwVUwgPDwgQURDX0pEUjFfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIEFEQ19KRFIxX0pEQVRBXzggICAgICAgICAgICAgICAoMHgwMTAwVUwgPDwgQURDX0pEUjFfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIEFEQ19KRFIxX0pEQVRBXzkgICAgICAgICAgICAgICAoMHgwMjAwVUwgPDwgQURDX0pEUjFfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIEFEQ19KRFIxX0pEQVRBXzEwICAgICAgICAgICAgICAoMHgwNDAwVUwgPDwgQURDX0pEUjFfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIEFEQ19KRFIxX0pEQVRBXzExICAgICAgICAgICAgICAoMHgwODAwVUwgPDwgQURDX0pEUjFfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIEFEQ19KRFIxX0pEQVRBXzEyICAgICAgICAgICAgICAoMHgxMDAwVUwgPDwgQURDX0pEUjFfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIEFEQ19KRFIxX0pEQVRBXzEzICAgICAgICAgICAgICAoMHgyMDAwVUwgPDwgQURDX0pEUjFfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIEFEQ19KRFIxX0pEQVRBXzE0ICAgICAgICAgICAgICAoMHg0MDAwVUwgPDwgQURDX0pEUjFfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIEFEQ19KRFIxX0pEQVRBXzE1ICAgICAgICAgICAgICAoMHg4MDAwVUwgPDwgQURDX0pEUjFfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDA4MDAwICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19KRFIyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIEFEQ19KRFIyX0pEQVRBX1BvcyAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19KRFIyX0pEQVRBX01zayAgICAgICAgICAgICAoMHhGRkZGVUwgPDwgQURDX0pEUjJfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDBGRkZGICovCisjZGVmaW5lIEFEQ19KRFIyX0pEQVRBICAgICAgICAgICAgICAgICBBRENfSkRSMl9KREFUQV9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgc2VxdWVuY2VyIHJhbmsgMiBjb252ZXJzaW9uIGRhdGEgKi8KKyNkZWZpbmUgQURDX0pEUjJfSkRBVEFfMCAgICAgICAgICAgICAgICgweDAwMDFVTCA8PCBBRENfSkRSMl9KREFUQV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgQURDX0pEUjJfSkRBVEFfMSAgICAgICAgICAgICAgICgweDAwMDJVTCA8PCBBRENfSkRSMl9KREFUQV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgQURDX0pEUjJfSkRBVEFfMiAgICAgICAgICAgICAgICgweDAwMDRVTCA8PCBBRENfSkRSMl9KREFUQV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgQURDX0pEUjJfSkRBVEFfMyAgICAgICAgICAgICAgICgweDAwMDhVTCA8PCBBRENfSkRSMl9KREFUQV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgQURDX0pEUjJfSkRBVEFfNCAgICAgICAgICAgICAgICgweDAwMTBVTCA8PCBBRENfSkRSMl9KREFUQV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgQURDX0pEUjJfSkRBVEFfNSAgICAgICAgICAgICAgICgweDAwMjBVTCA8PCBBRENfSkRSMl9KREFUQV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgQURDX0pEUjJfSkRBVEFfNiAgICAgICAgICAgICAgICgweDAwNDBVTCA8PCBBRENfSkRSMl9KREFUQV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgQURDX0pEUjJfSkRBVEFfNyAgICAgICAgICAgICAgICgweDAwODBVTCA8PCBBRENfSkRSMl9KREFUQV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgQURDX0pEUjJfSkRBVEFfOCAgICAgICAgICAgICAgICgweDAxMDBVTCA8PCBBRENfSkRSMl9KREFUQV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgQURDX0pEUjJfSkRBVEFfOSAgICAgICAgICAgICAgICgweDAyMDBVTCA8PCBBRENfSkRSMl9KREFUQV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgQURDX0pEUjJfSkRBVEFfMTAgICAgICAgICAgICAgICgweDA0MDBVTCA8PCBBRENfSkRSMl9KREFUQV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgQURDX0pEUjJfSkRBVEFfMTEgICAgICAgICAgICAgICgweDA4MDBVTCA8PCBBRENfSkRSMl9KREFUQV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgQURDX0pEUjJfSkRBVEFfMTIgICAgICAgICAgICAgICgweDEwMDBVTCA8PCBBRENfSkRSMl9KREFUQV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgQURDX0pEUjJfSkRBVEFfMTMgICAgICAgICAgICAgICgweDIwMDBVTCA8PCBBRENfSkRSMl9KREFUQV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgQURDX0pEUjJfSkRBVEFfMTQgICAgICAgICAgICAgICgweDQwMDBVTCA8PCBBRENfSkRSMl9KREFUQV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgQURDX0pEUjJfSkRBVEFfMTUgICAgICAgICAgICAgICgweDgwMDBVTCA8PCBBRENfSkRSMl9KREFUQV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX0pEUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgQURDX0pEUjNfSkRBVEFfUG9zICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX0pEUjNfSkRBVEFfTXNrICAgICAgICAgICAgICgweEZGRkZVTCA8PCBBRENfSkRSM19KREFUQV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8KKyNkZWZpbmUgQURDX0pEUjNfSkRBVEEgICAgICAgICAgICAgICAgIEFEQ19KRFIzX0pEQVRBX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBzZXF1ZW5jZXIgcmFuayAzIGNvbnZlcnNpb24gZGF0YSAqLworI2RlZmluZSBBRENfSkRSM19KREFUQV8wICAgICAgICAgICAgICAgKDB4MDAwMVVMIDw8IEFEQ19KRFIzX0pEQVRBX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBBRENfSkRSM19KREFUQV8xICAgICAgICAgICAgICAgKDB4MDAwMlVMIDw8IEFEQ19KRFIzX0pEQVRBX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBBRENfSkRSM19KREFUQV8yICAgICAgICAgICAgICAgKDB4MDAwNFVMIDw8IEFEQ19KRFIzX0pEQVRBX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBBRENfSkRSM19KREFUQV8zICAgICAgICAgICAgICAgKDB4MDAwOFVMIDw8IEFEQ19KRFIzX0pEQVRBX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBBRENfSkRSM19KREFUQV80ICAgICAgICAgICAgICAgKDB4MDAxMFVMIDw8IEFEQ19KRFIzX0pEQVRBX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBBRENfSkRSM19KREFUQV81ICAgICAgICAgICAgICAgKDB4MDAyMFVMIDw8IEFEQ19KRFIzX0pEQVRBX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBBRENfSkRSM19KREFUQV82ICAgICAgICAgICAgICAgKDB4MDA0MFVMIDw8IEFEQ19KRFIzX0pEQVRBX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBBRENfSkRSM19KREFUQV83ICAgICAgICAgICAgICAgKDB4MDA4MFVMIDw8IEFEQ19KRFIzX0pEQVRBX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLworI2RlZmluZSBBRENfSkRSM19KREFUQV84ICAgICAgICAgICAgICAgKDB4MDEwMFVMIDw8IEFEQ19KRFIzX0pEQVRBX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBBRENfSkRSM19KREFUQV85ICAgICAgICAgICAgICAgKDB4MDIwMFVMIDw8IEFEQ19KRFIzX0pEQVRBX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBBRENfSkRSM19KREFUQV8xMCAgICAgICAgICAgICAgKDB4MDQwMFVMIDw8IEFEQ19KRFIzX0pEQVRBX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLworI2RlZmluZSBBRENfSkRSM19KREFUQV8xMSAgICAgICAgICAgICAgKDB4MDgwMFVMIDw8IEFEQ19KRFIzX0pEQVRBX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLworI2RlZmluZSBBRENfSkRSM19KREFUQV8xMiAgICAgICAgICAgICAgKDB4MTAwMFVMIDw8IEFEQ19KRFIzX0pEQVRBX1BvcykgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBBRENfSkRSM19KREFUQV8xMyAgICAgICAgICAgICAgKDB4MjAwMFVMIDw8IEFEQ19KRFIzX0pEQVRBX1BvcykgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLworI2RlZmluZSBBRENfSkRSM19KREFUQV8xNCAgICAgICAgICAgICAgKDB4NDAwMFVMIDw8IEFEQ19KRFIzX0pEQVRBX1BvcykgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLworI2RlZmluZSBBRENfSkRSM19KREFUQV8xNSAgICAgICAgICAgICAgKDB4ODAwMFVMIDw8IEFEQ19KRFIzX0pEQVRBX1BvcykgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfSkRSNCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBBRENfSkRSNF9KREFUQV9Qb3MgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfSkRSNF9KREFUQV9Nc2sgICAgICAgICAgICAgKDB4RkZGRlVMIDw8IEFEQ19KRFI0X0pEQVRBX1BvcykgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLworI2RlZmluZSBBRENfSkRSNF9KREFUQSAgICAgICAgICAgICAgICAgQURDX0pEUjRfSkRBVEFfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHNlcXVlbmNlciByYW5rIDQgY29udmVyc2lvbiBkYXRhICovCisjZGVmaW5lIEFEQ19KRFI0X0pEQVRBXzAgICAgICAgICAgICAgICAoMHgwMDAxVUwgPDwgQURDX0pEUjRfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIEFEQ19KRFI0X0pEQVRBXzEgICAgICAgICAgICAgICAoMHgwMDAyVUwgPDwgQURDX0pEUjRfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIEFEQ19KRFI0X0pEQVRBXzIgICAgICAgICAgICAgICAoMHgwMDA0VUwgPDwgQURDX0pEUjRfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIEFEQ19KRFI0X0pEQVRBXzMgICAgICAgICAgICAgICAoMHgwMDA4VUwgPDwgQURDX0pEUjRfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIEFEQ19KRFI0X0pEQVRBXzQgICAgICAgICAgICAgICAoMHgwMDEwVUwgPDwgQURDX0pEUjRfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIEFEQ19KRFI0X0pEQVRBXzUgICAgICAgICAgICAgICAoMHgwMDIwVUwgPDwgQURDX0pEUjRfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIEFEQ19KRFI0X0pEQVRBXzYgICAgICAgICAgICAgICAoMHgwMDQwVUwgPDwgQURDX0pEUjRfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIEFEQ19KRFI0X0pEQVRBXzcgICAgICAgICAgICAgICAoMHgwMDgwVUwgPDwgQURDX0pEUjRfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIEFEQ19KRFI0X0pEQVRBXzggICAgICAgICAgICAgICAoMHgwMTAwVUwgPDwgQURDX0pEUjRfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIEFEQ19KRFI0X0pEQVRBXzkgICAgICAgICAgICAgICAoMHgwMjAwVUwgPDwgQURDX0pEUjRfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIEFEQ19KRFI0X0pEQVRBXzEwICAgICAgICAgICAgICAoMHgwNDAwVUwgPDwgQURDX0pEUjRfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIEFEQ19KRFI0X0pEQVRBXzExICAgICAgICAgICAgICAoMHgwODAwVUwgPDwgQURDX0pEUjRfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIEFEQ19KRFI0X0pEQVRBXzEyICAgICAgICAgICAgICAoMHgxMDAwVUwgPDwgQURDX0pEUjRfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIEFEQ19KRFI0X0pEQVRBXzEzICAgICAgICAgICAgICAoMHgyMDAwVUwgPDwgQURDX0pEUjRfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIEFEQ19KRFI0X0pEQVRBXzE0ICAgICAgICAgICAgICAoMHg0MDAwVUwgPDwgQURDX0pEUjRfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIEFEQ19KRFI0X0pEQVRBXzE1ICAgICAgICAgICAgICAoMHg4MDAwVUwgPDwgQURDX0pEUjRfSkRBVEFfUG9zKSAgICAgICAgLyohPCAweDAwMDA4MDAwICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19BV0QyQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovCisjZGVmaW5lIEFEQ19BV0QyQ1JfQVdEMkNIX1BvcyAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19BV0QyQ1JfQVdEMkNIX01zayAgICAgICAgKDB4N0ZGRkZVTCA8PCBBRENfQVdEMkNSX0FXRDJDSF9Qb3MpICAgICAgLyohPCAweDAwMDdGRkZGICovCisjZGVmaW5lIEFEQ19BV0QyQ1JfQVdEMkNIICAgICAgICAgICAgQURDX0FXRDJDUl9BV0QyQ0hfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgYW5hbG9nIHdhdGNoZG9nIDIgbW9uaXRvcmVkIGNoYW5uZWwgc2VsZWN0aW9uICovCisjZGVmaW5lIEFEQ19BV0QyQ1JfQVdEMkNIXzAgICAgICAgICAgKDB4MDAwMDFVTCA8PCBBRENfQVdEMkNSX0FXRDJDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIEFEQ19BV0QyQ1JfQVdEMkNIXzEgICAgICAgICAgKDB4MDAwMDJVTCA8PCBBRENfQVdEMkNSX0FXRDJDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIEFEQ19BV0QyQ1JfQVdEMkNIXzIgICAgICAgICAgKDB4MDAwMDRVTCA8PCBBRENfQVdEMkNSX0FXRDJDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIEFEQ19BV0QyQ1JfQVdEMkNIXzMgICAgICAgICAgKDB4MDAwMDhVTCA8PCBBRENfQVdEMkNSX0FXRDJDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIEFEQ19BV0QyQ1JfQVdEMkNIXzQgICAgICAgICAgKDB4MDAwMTBVTCA8PCBBRENfQVdEMkNSX0FXRDJDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIEFEQ19BV0QyQ1JfQVdEMkNIXzUgICAgICAgICAgKDB4MDAwMjBVTCA8PCBBRENfQVdEMkNSX0FXRDJDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIEFEQ19BV0QyQ1JfQVdEMkNIXzYgICAgICAgICAgKDB4MDAwNDBVTCA8PCBBRENfQVdEMkNSX0FXRDJDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIEFEQ19BV0QyQ1JfQVdEMkNIXzcgICAgICAgICAgKDB4MDAwODBVTCA8PCBBRENfQVdEMkNSX0FXRDJDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIEFEQ19BV0QyQ1JfQVdEMkNIXzggICAgICAgICAgKDB4MDAxMDBVTCA8PCBBRENfQVdEMkNSX0FXRDJDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIEFEQ19BV0QyQ1JfQVdEMkNIXzkgICAgICAgICAgKDB4MDAyMDBVTCA8PCBBRENfQVdEMkNSX0FXRDJDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIEFEQ19BV0QyQ1JfQVdEMkNIXzEwICAgICAgICAgKDB4MDA0MDBVTCA8PCBBRENfQVdEMkNSX0FXRDJDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIEFEQ19BV0QyQ1JfQVdEMkNIXzExICAgICAgICAgKDB4MDA4MDBVTCA8PCBBRENfQVdEMkNSX0FXRDJDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIEFEQ19BV0QyQ1JfQVdEMkNIXzEyICAgICAgICAgKDB4MDEwMDBVTCA8PCBBRENfQVdEMkNSX0FXRDJDSF9Qb3MpICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIEFEQ19BV0QyQ1JfQVdEMkNIXzEzICAgICAgICAgKDB4MDIwMDBVTCA8PCBBRENfQVdEMkNSX0FXRDJDSF9Qb3MpICAgICAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIEFEQ19BV0QyQ1JfQVdEMkNIXzE0ICAgICAgICAgKDB4MDQwMDBVTCA8PCBBRENfQVdEMkNSX0FXRDJDSF9Qb3MpICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIEFEQ19BV0QyQ1JfQVdEMkNIXzE1ICAgICAgICAgKDB4MDgwMDBVTCA8PCBBRENfQVdEMkNSX0FXRDJDSF9Qb3MpICAgICAgLyohPCAweDAwMDA4MDAwICovCisjZGVmaW5lIEFEQ19BV0QyQ1JfQVdEMkNIXzE2ICAgICAgICAgKDB4MTAwMDBVTCA8PCBBRENfQVdEMkNSX0FXRDJDSF9Qb3MpICAgICAgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIEFEQ19BV0QyQ1JfQVdEMkNIXzE3ICAgICAgICAgKDB4MjAwMDBVTCA8PCBBRENfQVdEMkNSX0FXRDJDSF9Qb3MpICAgICAgLyohPCAweDAwMDIwMDAwICovCisjZGVmaW5lIEFEQ19BV0QyQ1JfQVdEMkNIXzE4ICAgICAgICAgKDB4NDAwMDBVTCA8PCBBRENfQVdEMkNSX0FXRDJDSF9Qb3MpICAgICAgLyohPCAweDAwMDQwMDAwICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19BV0QzQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovCisjZGVmaW5lIEFEQ19BV0QzQ1JfQVdEM0NIX1BvcyAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19BV0QzQ1JfQVdEM0NIX01zayAgICAgICAgKDB4N0ZGRkZVTCA8PCBBRENfQVdEM0NSX0FXRDNDSF9Qb3MpICAgICAgLyohPCAweDAwMDdGRkZGICovCisjZGVmaW5lIEFEQ19BV0QzQ1JfQVdEM0NIICAgICAgICAgICAgQURDX0FXRDNDUl9BV0QzQ0hfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgYW5hbG9nIHdhdGNoZG9nIDMgbW9uaXRvcmVkIGNoYW5uZWwgc2VsZWN0aW9uICovCisjZGVmaW5lIEFEQ19BV0QzQ1JfQVdEM0NIXzAgICAgICAgICAgKDB4MDAwMDFVTCA8PCBBRENfQVdEM0NSX0FXRDNDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIEFEQ19BV0QzQ1JfQVdEM0NIXzEgICAgICAgICAgKDB4MDAwMDJVTCA8PCBBRENfQVdEM0NSX0FXRDNDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIEFEQ19BV0QzQ1JfQVdEM0NIXzIgICAgICAgICAgKDB4MDAwMDRVTCA8PCBBRENfQVdEM0NSX0FXRDNDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIEFEQ19BV0QzQ1JfQVdEM0NIXzMgICAgICAgICAgKDB4MDAwMDhVTCA8PCBBRENfQVdEM0NSX0FXRDNDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIEFEQ19BV0QzQ1JfQVdEM0NIXzQgICAgICAgICAgKDB4MDAwMTBVTCA8PCBBRENfQVdEM0NSX0FXRDNDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIEFEQ19BV0QzQ1JfQVdEM0NIXzUgICAgICAgICAgKDB4MDAwMjBVTCA8PCBBRENfQVdEM0NSX0FXRDNDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIEFEQ19BV0QzQ1JfQVdEM0NIXzYgICAgICAgICAgKDB4MDAwNDBVTCA8PCBBRENfQVdEM0NSX0FXRDNDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIEFEQ19BV0QzQ1JfQVdEM0NIXzcgICAgICAgICAgKDB4MDAwODBVTCA8PCBBRENfQVdEM0NSX0FXRDNDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIEFEQ19BV0QzQ1JfQVdEM0NIXzggICAgICAgICAgKDB4MDAxMDBVTCA8PCBBRENfQVdEM0NSX0FXRDNDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIEFEQ19BV0QzQ1JfQVdEM0NIXzkgICAgICAgICAgKDB4MDAyMDBVTCA8PCBBRENfQVdEM0NSX0FXRDNDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIEFEQ19BV0QzQ1JfQVdEM0NIXzEwICAgICAgICAgKDB4MDA0MDBVTCA8PCBBRENfQVdEM0NSX0FXRDNDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIEFEQ19BV0QzQ1JfQVdEM0NIXzExICAgICAgICAgKDB4MDA4MDBVTCA8PCBBRENfQVdEM0NSX0FXRDNDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIEFEQ19BV0QzQ1JfQVdEM0NIXzEyICAgICAgICAgKDB4MDEwMDBVTCA8PCBBRENfQVdEM0NSX0FXRDNDSF9Qb3MpICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIEFEQ19BV0QzQ1JfQVdEM0NIXzEzICAgICAgICAgKDB4MDIwMDBVTCA8PCBBRENfQVdEM0NSX0FXRDNDSF9Qb3MpICAgICAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIEFEQ19BV0QzQ1JfQVdEM0NIXzE0ICAgICAgICAgKDB4MDQwMDBVTCA8PCBBRENfQVdEM0NSX0FXRDNDSF9Qb3MpICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIEFEQ19BV0QzQ1JfQVdEM0NIXzE1ICAgICAgICAgKDB4MDgwMDBVTCA8PCBBRENfQVdEM0NSX0FXRDNDSF9Qb3MpICAgICAgLyohPCAweDAwMDA4MDAwICovCisjZGVmaW5lIEFEQ19BV0QzQ1JfQVdEM0NIXzE2ICAgICAgICAgKDB4MTAwMDBVTCA8PCBBRENfQVdEM0NSX0FXRDNDSF9Qb3MpICAgICAgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIEFEQ19BV0QzQ1JfQVdEM0NIXzE3ICAgICAgICAgKDB4MjAwMDBVTCA8PCBBRENfQVdEM0NSX0FXRDNDSF9Qb3MpICAgICAgLyohPCAweDAwMDIwMDAwICovCisjZGVmaW5lIEFEQ19BV0QzQ1JfQVdEM0NIXzE4ICAgICAgICAgKDB4NDAwMDBVTCA8PCBBRENfQVdEM0NSX0FXRDNDSF9Qb3MpICAgICAgLyohPCAweDAwMDQwMDAwICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19ESUZTRUwgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovCisjZGVmaW5lIEFEQ19ESUZTRUxfRElGU0VMX1BvcyAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19ESUZTRUxfRElGU0VMX01zayAgICAgICAgICAoMHg3RkZGRlVMIDw8IEFEQ19ESUZTRUxfRElGU0VMX1BvcykgICAgLyohPCAweDAwMDdGRkZGICovCisjZGVmaW5lIEFEQ19ESUZTRUxfRElGU0VMICAgICAgICAgICAgICBBRENfRElGU0VMX0RJRlNFTF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCBkaWZmZXJlbnRpYWwgb3Igc2luZ2xlLWVuZGVkIG1vZGUgKi8KKyNkZWZpbmUgQURDX0RJRlNFTF9ESUZTRUxfMCAgICAgICAgICAgICgweDAwMDAxVUwgPDwgQURDX0RJRlNFTF9ESUZTRUxfUG9zKSAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgQURDX0RJRlNFTF9ESUZTRUxfMSAgICAgICAgICAgICgweDAwMDAyVUwgPDwgQURDX0RJRlNFTF9ESUZTRUxfUG9zKSAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgQURDX0RJRlNFTF9ESUZTRUxfMiAgICAgICAgICAgICgweDAwMDA0VUwgPDwgQURDX0RJRlNFTF9ESUZTRUxfUG9zKSAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgQURDX0RJRlNFTF9ESUZTRUxfMyAgICAgICAgICAgICgweDAwMDA4VUwgPDwgQURDX0RJRlNFTF9ESUZTRUxfUG9zKSAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgQURDX0RJRlNFTF9ESUZTRUxfNCAgICAgICAgICAgICgweDAwMDEwVUwgPDwgQURDX0RJRlNFTF9ESUZTRUxfUG9zKSAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgQURDX0RJRlNFTF9ESUZTRUxfNSAgICAgICAgICAgICgweDAwMDIwVUwgPDwgQURDX0RJRlNFTF9ESUZTRUxfUG9zKSAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgQURDX0RJRlNFTF9ESUZTRUxfNiAgICAgICAgICAgICgweDAwMDQwVUwgPDwgQURDX0RJRlNFTF9ESUZTRUxfUG9zKSAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgQURDX0RJRlNFTF9ESUZTRUxfNyAgICAgICAgICAgICgweDAwMDgwVUwgPDwgQURDX0RJRlNFTF9ESUZTRUxfUG9zKSAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgQURDX0RJRlNFTF9ESUZTRUxfOCAgICAgICAgICAgICgweDAwMTAwVUwgPDwgQURDX0RJRlNFTF9ESUZTRUxfUG9zKSAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgQURDX0RJRlNFTF9ESUZTRUxfOSAgICAgICAgICAgICgweDAwMjAwVUwgPDwgQURDX0RJRlNFTF9ESUZTRUxfUG9zKSAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgQURDX0RJRlNFTF9ESUZTRUxfMTAgICAgICAgICAgICgweDAwNDAwVUwgPDwgQURDX0RJRlNFTF9ESUZTRUxfUG9zKSAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgQURDX0RJRlNFTF9ESUZTRUxfMTEgICAgICAgICAgICgweDAwODAwVUwgPDwgQURDX0RJRlNFTF9ESUZTRUxfUG9zKSAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgQURDX0RJRlNFTF9ESUZTRUxfMTIgICAgICAgICAgICgweDAxMDAwVUwgPDwgQURDX0RJRlNFTF9ESUZTRUxfUG9zKSAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgQURDX0RJRlNFTF9ESUZTRUxfMTMgICAgICAgICAgICgweDAyMDAwVUwgPDwgQURDX0RJRlNFTF9ESUZTRUxfUG9zKSAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgQURDX0RJRlNFTF9ESUZTRUxfMTQgICAgICAgICAgICgweDA0MDAwVUwgPDwgQURDX0RJRlNFTF9ESUZTRUxfUG9zKSAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgQURDX0RJRlNFTF9ESUZTRUxfMTUgICAgICAgICAgICgweDA4MDAwVUwgPDwgQURDX0RJRlNFTF9ESUZTRUxfUG9zKSAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgQURDX0RJRlNFTF9ESUZTRUxfMTYgICAgICAgICAgICgweDEwMDAwVUwgPDwgQURDX0RJRlNFTF9ESUZTRUxfUG9zKSAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgQURDX0RJRlNFTF9ESUZTRUxfMTcgICAgICAgICAgICgweDIwMDAwVUwgPDwgQURDX0RJRlNFTF9ESUZTRUxfUG9zKSAgICAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgQURDX0RJRlNFTF9ESUZTRUxfMTggICAgICAgICAgICgweDQwMDAwVUwgPDwgQURDX0RJRlNFTF9ESUZTRUxfUG9zKSAgICAvKiE8IDB4MDAwNDAwMDAgKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX0NBTEZBQ1QgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8KKyNkZWZpbmUgQURDX0NBTEZBQ1RfQ0FMRkFDVF9TX1BvcyAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX0NBTEZBQ1RfQ0FMRkFDVF9TX01zayAgICAgICgweDdGVUwgPDwgQURDX0NBTEZBQ1RfQ0FMRkFDVF9TX1BvcykgICAvKiE8IDB4MDAwMDAwN0YgKi8KKyNkZWZpbmUgQURDX0NBTEZBQ1RfQ0FMRkFDVF9TICAgICAgICAgIEFEQ19DQUxGQUNUX0NBTEZBQ1RfU19Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjYWxpYnJhdGlvbiBmYWN0b3IgaW4gc2luZ2xlLWVuZGVkIG1vZGUgKi8KKyNkZWZpbmUgQURDX0NBTEZBQ1RfQ0FMRkFDVF9TXzAgICAgICAgICgweDAxVUwgPDwgQURDX0NBTEZBQ1RfQ0FMRkFDVF9TX1BvcykgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgQURDX0NBTEZBQ1RfQ0FMRkFDVF9TXzEgICAgICAgICgweDAyVUwgPDwgQURDX0NBTEZBQ1RfQ0FMRkFDVF9TX1BvcykgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgQURDX0NBTEZBQ1RfQ0FMRkFDVF9TXzIgICAgICAgICgweDA0VUwgPDwgQURDX0NBTEZBQ1RfQ0FMRkFDVF9TX1BvcykgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgQURDX0NBTEZBQ1RfQ0FMRkFDVF9TXzMgICAgICAgICgweDA4VUwgPDwgQURDX0NBTEZBQ1RfQ0FMRkFDVF9TX1BvcykgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgQURDX0NBTEZBQ1RfQ0FMRkFDVF9TXzQgICAgICAgICgweDEwVUwgPDwgQURDX0NBTEZBQ1RfQ0FMRkFDVF9TX1BvcykgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgQURDX0NBTEZBQ1RfQ0FMRkFDVF9TXzUgICAgICAgICgweDIwVUwgPDwgQURDX0NBTEZBQ1RfQ0FMRkFDVF9TX1BvcykgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgQURDX0NBTEZBQ1RfQ0FMRkFDVF9TXzYgICAgICAgICgweDQwVUwgPDwgQURDX0NBTEZBQ1RfQ0FMRkFDVF9TX1BvcykgICAvKiE8IDB4MDAwMDAwNDAgKi8KKworI2RlZmluZSBBRENfQ0FMRkFDVF9DQUxGQUNUX0RfUG9zICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfQ0FMRkFDVF9DQUxGQUNUX0RfTXNrICAgICAgKDB4N0ZVTCA8PCBBRENfQ0FMRkFDVF9DQUxGQUNUX0RfUG9zKSAgIC8qITwgMHgwMDdGMDAwMCAqLworI2RlZmluZSBBRENfQ0FMRkFDVF9DQUxGQUNUX0QgICAgICAgICAgQURDX0NBTEZBQ1RfQ0FMRkFDVF9EX01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNhbGlicmF0aW9uIGZhY3RvciBpbiBkaWZmZXJlbnRpYWwgbW9kZSAqLworI2RlZmluZSBBRENfQ0FMRkFDVF9DQUxGQUNUX0RfMCAgICAgICAgKDB4MDFVTCA8PCBBRENfQ0FMRkFDVF9DQUxGQUNUX0RfUG9zKSAgIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBBRENfQ0FMRkFDVF9DQUxGQUNUX0RfMSAgICAgICAgKDB4MDJVTCA8PCBBRENfQ0FMRkFDVF9DQUxGQUNUX0RfUG9zKSAgIC8qITwgMHgwMDAyMDAwMCAqLworI2RlZmluZSBBRENfQ0FMRkFDVF9DQUxGQUNUX0RfMiAgICAgICAgKDB4MDRVTCA8PCBBRENfQ0FMRkFDVF9DQUxGQUNUX0RfUG9zKSAgIC8qITwgMHgwMDA0MDAwMCAqLworI2RlZmluZSBBRENfQ0FMRkFDVF9DQUxGQUNUX0RfMyAgICAgICAgKDB4MDhVTCA8PCBBRENfQ0FMRkFDVF9DQUxGQUNUX0RfUG9zKSAgIC8qITwgMHgwMDA4MDAwMCAqLworI2RlZmluZSBBRENfQ0FMRkFDVF9DQUxGQUNUX0RfNCAgICAgICAgKDB4MTBVTCA8PCBBRENfQ0FMRkFDVF9DQUxGQUNUX0RfUG9zKSAgIC8qITwgMHgwMDEwMDAwMCAqLworI2RlZmluZSBBRENfQ0FMRkFDVF9DQUxGQUNUX0RfNSAgICAgICAgKDB4MjBVTCA8PCBBRENfQ0FMRkFDVF9DQUxGQUNUX0RfUG9zKSAgIC8qITwgMHgwMDIwMDAwMCAqLworI2RlZmluZSBBRENfQ0FMRkFDVF9DQUxGQUNUX0RfNiAgICAgICAgKDB4NDBVTCA8PCBBRENfQ0FMRkFDVF9DQUxGQUNUX0RfUG9zKSAgIC8qITwgMHgwMDQwMDAwMCAqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKiAgQURDIENvbW1vbiByZWdpc3RlcnMgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX0NDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgQURDX0NDUl9EVUFMX1BvcyAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX0NDUl9EVUFMX01zayAgICAgICAgICAgICAgICgweDFGVUwgPDwgQURDX0NDUl9EVUFMX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMUYgKi8KKyNkZWZpbmUgQURDX0NDUl9EVUFMICAgICAgICAgICAgICAgICAgIEFEQ19DQ1JfRFVBTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBtdWx0aW1vZGUgbW9kZSBzZWxlY3Rpb24gKi8KKyNkZWZpbmUgQURDX0NDUl9EVUFMXzAgICAgICAgICAgICAgICAgICgweDAxVUwgPDwgQURDX0NDUl9EVUFMX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgQURDX0NDUl9EVUFMXzEgICAgICAgICAgICAgICAgICgweDAyVUwgPDwgQURDX0NDUl9EVUFMX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgQURDX0NDUl9EVUFMXzIgICAgICAgICAgICAgICAgICgweDA0VUwgPDwgQURDX0NDUl9EVUFMX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgQURDX0NDUl9EVUFMXzMgICAgICAgICAgICAgICAgICgweDA4VUwgPDwgQURDX0NDUl9EVUFMX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgQURDX0NDUl9EVUFMXzQgICAgICAgICAgICAgICAgICgweDEwVUwgPDwgQURDX0NDUl9EVUFMX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKworI2RlZmluZSBBRENfQ0NSX0RFTEFZX1BvcyAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfQ0NSX0RFTEFZX01zayAgICAgICAgICAgICAgKDB4RlVMIDw8IEFEQ19DQ1JfREVMQVlfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMEYwMCAqLworI2RlZmluZSBBRENfQ0NSX0RFTEFZICAgICAgICAgICAgICAgICAgQURDX0NDUl9ERUxBWV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIG11bHRpbW9kZSBkZWxheSBiZXR3ZWVuIDIgc2FtcGxpbmcgcGhhc2VzICovCisjZGVmaW5lIEFEQ19DQ1JfREVMQVlfMCAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX0NDUl9ERUxBWV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIEFEQ19DQ1JfREVMQVlfMSAgICAgICAgICAgICAgICAoMHgyVUwgPDwgQURDX0NDUl9ERUxBWV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIEFEQ19DQ1JfREVMQVlfMiAgICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX0NDUl9ERUxBWV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIEFEQ19DQ1JfREVMQVlfMyAgICAgICAgICAgICAgICAoMHg4VUwgPDwgQURDX0NDUl9ERUxBWV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovCisKKyNkZWZpbmUgQURDX0NDUl9ETUFDRkdfUG9zICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX0NDUl9ETUFDRkdfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBBRENfQ0NSX0RNQUNGR19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgQURDX0NDUl9ETUFDRkcgICAgICAgICAgICAgICAgIEFEQ19DQ1JfRE1BQ0ZHX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBtdWx0aW1vZGUgRE1BIHRyYW5zZmVyIGNvbmZpZ3VyYXRpb24gKi8KKworI2RlZmluZSBBRENfQ0NSX01ETUFfUG9zICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRENfQ0NSX01ETUFfTXNrICAgICAgICAgICAgICAgKDB4M1VMIDw8IEFEQ19DQ1JfTURNQV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwQzAwMCAqLworI2RlZmluZSBBRENfQ0NSX01ETUEgICAgICAgICAgICAgICAgICAgQURDX0NDUl9NRE1BX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIG11bHRpbW9kZSBETUEgdHJhbnNmZXIgZW5hYmxlICovCisjZGVmaW5lIEFEQ19DQ1JfTURNQV8wICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX0NDUl9NRE1BX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIEFEQ19DQ1JfTURNQV8xICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgQURDX0NDUl9NRE1BX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovCisKKyNkZWZpbmUgQURDX0NDUl9DS01PREVfUG9zICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX0NDUl9DS01PREVfTXNrICAgICAgICAgICAgICgweDNVTCA8PCBBRENfQ0NSX0NLTU9ERV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMzAwMDAgKi8KKyNkZWZpbmUgQURDX0NDUl9DS01PREUgICAgICAgICAgICAgICAgIEFEQ19DQ1JfQ0tNT0RFX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBjb21tb24gY2xvY2sgc291cmNlIGFuZCBwcmVzY2FsZXIgKHByZXNjYWxlciBvbmx5IGZvciBjbG9jayBzb3VyY2Ugc3luY2hyb25vdXMpICovCisjZGVmaW5lIEFEQ19DQ1JfQ0tNT0RFXzAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX0NDUl9DS01PREVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIEFEQ19DQ1JfQ0tNT0RFXzEgICAgICAgICAgICAgICAoMHgyVUwgPDwgQURDX0NDUl9DS01PREVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovCisKKyNkZWZpbmUgQURDX0NDUl9QUkVTQ19Qb3MgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX0NDUl9QUkVTQ19Nc2sgICAgICAgICAgICAgICgweEZVTCA8PCBBRENfQ0NSX1BSRVNDX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAzQTAwMDAgKi8KKyNkZWZpbmUgQURDX0NDUl9QUkVTQyAgICAgICAgICAgICAgICAgIEFEQ19DQ1JfUFJFU0NfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBjb21tb24gY2xvY2sgcHJlc2NhbGVyLCBvbmx5IGZvciBjbG9jayBzb3VyY2UgYXN5bmNocm9ub3VzICovCisjZGVmaW5lIEFEQ19DQ1JfUFJFU0NfMCAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX0NDUl9QUkVTQ19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIEFEQ19DQ1JfUFJFU0NfMSAgICAgICAgICAgICAgICAoMHgyVUwgPDwgQURDX0NDUl9QUkVTQ19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIEFEQ19DQ1JfUFJFU0NfMiAgICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX0NDUl9QUkVTQ19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIEFEQ19DQ1JfUFJFU0NfMyAgICAgICAgICAgICAgICAoMHg4VUwgPDwgQURDX0NDUl9QUkVTQ19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovCisKKyNkZWZpbmUgQURDX0NDUl9WUkVGRU5fUG9zICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQURDX0NDUl9WUkVGRU5fTXNrICAgICAgICAgICAgICgweDFVTCA8PCBBRENfQ0NSX1ZSRUZFTl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8KKyNkZWZpbmUgQURDX0NDUl9WUkVGRU4gICAgICAgICAgICAgICAgIEFEQ19DQ1JfVlJFRkVOX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBpbnRlcm5hbCBwYXRoIHRvIFZyZWZJbnQgZW5hYmxlICovCisjZGVmaW5lIEFEQ19DQ1JfVFNFTl9Qb3MgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19DQ1JfVFNFTl9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX0NDUl9UU0VOX1BvcykgICAgICAgICAgICAgLyohPCAweDAwODAwMDAwICovCisjZGVmaW5lIEFEQ19DQ1JfVFNFTiAgICAgICAgICAgICAgICAgICBBRENfQ0NSX1RTRU5fTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgaW50ZXJuYWwgcGF0aCB0byB0ZW1wZXJhdHVyZSBzZW5zb3IgZW5hYmxlICovCisjZGVmaW5lIEFEQ19DQ1JfVkJBVEVOX1BvcyAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFEQ19DQ1JfVkJBVEVOX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX0NDUl9WQkFURU5fUG9zKSAgICAgICAgICAgLyohPCAweDAxMDAwMDAwICovCisjZGVmaW5lIEFEQ19DQ1JfVkJBVEVOICAgICAgICAgICAgICAgICBBRENfQ0NSX1ZCQVRFTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgaW50ZXJuYWwgcGF0aCB0byBiYXR0ZXJ5IHZvbHRhZ2UgZW5hYmxlICovCisKKy8qIExlZ2FjeSBkZWZpbmVzICovCisjZGVmaW5lIEFEQ19DQ1JfTVVMVEkgICAgICAgICAgIChBRENfQ0NSX0RVQUwpCisjZGVmaW5lIEFEQ19DQ1JfTVVMVElfMCAgICAgICAgIChBRENfQ0NSX0RVQUxfMCkKKyNkZWZpbmUgQURDX0NDUl9NVUxUSV8xICAgICAgICAgKEFEQ19DQ1JfRFVBTF8xKQorI2RlZmluZSBBRENfQ0NSX01VTFRJXzIgICAgICAgICAoQURDX0NDUl9EVUFMXzIpCisjZGVmaW5lIEFEQ19DQ1JfTVVMVElfMyAgICAgICAgIChBRENfQ0NSX0RVQUxfMykKKyNkZWZpbmUgQURDX0NDUl9NVUxUSV80ICAgICAgICAgKEFEQ19DQ1JfRFVBTF80KQorCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qICAgICAgICAgICAgICAgICAgICAgIEFuYWxvZyBDb21wYXJhdG9ycyAoQ09NUCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisvKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qKioqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQ09NUF9DU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8KKyNkZWZpbmUgQ09NUF9DU1JfRU5fUG9zICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQ09NUF9DU1JfRU5fTXNrICAgICAgICAgICAgKDB4MVVMIDw8IENPTVBfQ1NSX0VOX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgQ09NUF9DU1JfRU4gICAgICAgICAgICAgICAgQ09NUF9DU1JfRU5fTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvbXBhcmF0b3IgZW5hYmxlICovCisjZGVmaW5lIENPTVBfQ1NSX1BXUk1PREVfUG9zICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIENPTVBfQ1NSX1BXUk1PREVfTXNrICAgICAgICgweDNVTCA8PCBDT01QX0NTUl9QV1JNT0RFX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDBDICovCisjZGVmaW5lIENPTVBfQ1NSX1BXUk1PREUgICAgICAgICAgIENPTVBfQ1NSX1BXUk1PREVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDb21wYXJhdG9yIHBvd2VyIG1vZGUgKi8KKyNkZWZpbmUgQ09NUF9DU1JfUFdSTU9ERV8wICAgICAgICAgKDB4MVVMIDw8IENPTVBfQ1NSX1BXUk1PREVfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgQ09NUF9DU1JfUFdSTU9ERV8xICAgICAgICAgKDB4MlVMIDw8IENPTVBfQ1NSX1BXUk1PREVfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgQ09NUF9DU1JfSU5NU0VMX1BvcyAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQ09NUF9DU1JfSU5NU0VMX01zayAgICAgICAgKDB4N1VMIDw8IENPTVBfQ1NSX0lOTVNFTF9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNzAgKi8KKyNkZWZpbmUgQ09NUF9DU1JfSU5NU0VMICAgICAgICAgICAgQ09NUF9DU1JfSU5NU0VMX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvbXBhcmF0b3IgaW5wdXQgbWludXMgc2VsZWN0aW9uICovCisjZGVmaW5lIENPTVBfQ1NSX0lOTVNFTF8wICAgICAgICAgICgweDFVTCA8PCBDT01QX0NTUl9JTk1TRUxfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIENPTVBfQ1NSX0lOTVNFTF8xICAgICAgICAgICgweDJVTCA8PCBDT01QX0NTUl9JTk1TRUxfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIENPTVBfQ1NSX0lOTVNFTF8yICAgICAgICAgICgweDRVTCA8PCBDT01QX0NTUl9JTk1TRUxfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIENPTVBfQ1NSX0lOUFNFTF9Qb3MgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIENPTVBfQ1NSX0lOUFNFTF9Nc2sgICAgICAgICgweDNVTCA8PCBDT01QX0NTUl9JTlBTRUxfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTgwICovCisjZGVmaW5lIENPTVBfQ1NSX0lOUFNFTCAgICAgICAgICAgIENPTVBfQ1NSX0lOUFNFTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDb21wYXJhdG9yIGlucHV0IHBsdXMgc2VsZWN0aW9uICovCisjZGVmaW5lIENPTVBfQ1NSX0lOUFNFTF8wICAgICAgICAgICgweDFVTCA8PCBDT01QX0NTUl9JTlBTRUxfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIENPTVBfQ1NSX0lOUFNFTF8xICAgICAgICAgICgweDJVTCA8PCBDT01QX0NTUl9JTlBTRUxfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIENPTVBfQ1NSX1dJTk1PREVfUG9zICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIENPTVBfQ1NSX1dJTk1PREVfTXNrICAgICAgICgweDFVTCA8PCBDT01QX0NTUl9XSU5NT0RFX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIENPTVBfQ1NSX1dJTk1PREUgICAgICAgICAgIENPTVBfQ1NSX1dJTk1PREVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQYWlyIG9mIGNvbXBhcmF0b3JzIHdpbmRvdyBtb2RlLiBCaXQgaW50ZW5kZWQgdG8gYmUgdXNlZCB3aXRoIENPTVAgY29tbW9uIGluc3RhbmNlIChDT01QX0NvbW1vbl9UeXBlRGVmKSAqLworI2RlZmluZSBDT01QX0NTUl9QT0xBUklUWV9Qb3MgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBDT01QX0NTUl9QT0xBUklUWV9Nc2sgICAgICAoMHgxVUwgPDwgQ09NUF9DU1JfUE9MQVJJVFlfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLworI2RlZmluZSBDT01QX0NTUl9QT0xBUklUWSAgICAgICAgICBDT01QX0NTUl9QT0xBUklUWV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ29tcGFyYXRvciBvdXRwdXQgcG9sYXJpdHkgKi8KKyNkZWZpbmUgQ09NUF9DU1JfSFlTVF9Qb3MgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQ09NUF9DU1JfSFlTVF9Nc2sgICAgICAgICAgKDB4M1VMIDw8IENPTVBfQ1NSX0hZU1RfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMzAwMDAgKi8KKyNkZWZpbmUgQ09NUF9DU1JfSFlTVCAgICAgICAgICAgICAgQ09NUF9DU1JfSFlTVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvbXBhcmF0b3IgaHlzdGVyZXNpcyAqLworI2RlZmluZSBDT01QX0NTUl9IWVNUXzAgICAgICAgICAgICAoMHgxVUwgPDwgQ09NUF9DU1JfSFlTVF9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBDT01QX0NTUl9IWVNUXzEgICAgICAgICAgICAoMHgyVUwgPDwgQ09NUF9DU1JfSFlTVF9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLworI2RlZmluZSBDT01QX0NTUl9CTEFOS0lOR19Qb3MgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBDT01QX0NTUl9CTEFOS0lOR19Nc2sgICAgICAoMHg3VUwgPDwgQ09NUF9DU1JfQkxBTktJTkdfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDFDMDAwMCAqLworI2RlZmluZSBDT01QX0NTUl9CTEFOS0lORyAgICAgICAgICBDT01QX0NTUl9CTEFOS0lOR19Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ29tcGFyYXRvciBibGFua2luZyBzb3VyY2UgKi8KKyNkZWZpbmUgQ09NUF9DU1JfQkxBTktJTkdfMCAgICAgICAgKDB4MVVMIDw8IENPTVBfQ1NSX0JMQU5LSU5HX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgQ09NUF9DU1JfQkxBTktJTkdfMSAgICAgICAgKDB4MlVMIDw8IENPTVBfQ1NSX0JMQU5LSU5HX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgQ09NUF9DU1JfQkxBTktJTkdfMiAgICAgICAgKDB4NFVMIDw8IENPTVBfQ1NSX0JMQU5LSU5HX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgQ09NUF9DU1JfQlJHRU5fUG9zICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQ09NUF9DU1JfQlJHRU5fTXNrICAgICAgICAgKDB4MVVMIDw8IENPTVBfQ1NSX0JSR0VOX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8KKyNkZWZpbmUgQ09NUF9DU1JfQlJHRU4gICAgICAgICAgICAgQ09NUF9DU1JfQlJHRU5fTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvbXBhcmF0b3Igdm9sdGFnZSBzY2FsZXIgZW5hYmxlICovCisjZGVmaW5lIENPTVBfQ1NSX1NDQUxFTl9Qb3MgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIENPTVBfQ1NSX1NDQUxFTl9Nc2sgICAgICAgICgweDFVTCA8PCBDT01QX0NTUl9TQ0FMRU5fUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwODAwMDAwICovCisjZGVmaW5lIENPTVBfQ1NSX1NDQUxFTiAgICAgICAgICAgIENPTVBfQ1NSX1NDQUxFTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDb21wYXJhdG9yIHNjYWxlciBicmlkZ2UgZW5hYmxlICovCisjZGVmaW5lIENPTVBfQ1NSX0lOTUVTRUxfUG9zICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIENPTVBfQ1NSX0lOTUVTRUxfTXNrICAgICAgICgweDNVTCA8PCBDT01QX0NTUl9JTk1FU0VMX1BvcykgICAgICAgICAgICAgLyohPCAweDA2MDAwMDAwICovCisjZGVmaW5lIENPTVBfQ1NSX0lOTUVTRUwgICAgICAgICAgIENPTVBfQ1NSX0lOTUVTRUxfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDb21wYXJhdG9yIGlucHV0IG1pbnVzIGV4dGVuZGVkIHNlbGVjdGlvbiAqLworI2RlZmluZSBDT01QX0NTUl9JTk1FU0VMXzAgICAgICAgICAoMHgxVUwgPDwgQ09NUF9DU1JfSU5NRVNFTF9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLworI2RlZmluZSBDT01QX0NTUl9JTk1FU0VMXzEgICAgICAgICAoMHgyVUwgPDwgQ09NUF9DU1JfSU5NRVNFTF9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLworI2RlZmluZSBDT01QX0NTUl9WQUxVRV9Qb3MgICAgICAgICAoMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBDT01QX0NTUl9WQUxVRV9Nc2sgICAgICAgICAoMHgxVUwgPDwgQ09NUF9DU1JfVkFMVUVfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHg0MDAwMDAwMCAqLworI2RlZmluZSBDT01QX0NTUl9WQUxVRSAgICAgICAgICAgICBDT01QX0NTUl9WQUxVRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ29tcGFyYXRvciBvdXRwdXQgbGV2ZWwgKi8KKyNkZWZpbmUgQ09NUF9DU1JfTE9DS19Qb3MgICAgICAgICAgKDMxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQ09NUF9DU1JfTE9DS19Nc2sgICAgICAgICAgKDB4MVVMIDw8IENPTVBfQ1NSX0xPQ0tfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4ODAwMDAwMDAgKi8KKyNkZWZpbmUgQ09NUF9DU1JfTE9DSyAgICAgICAgICAgICAgQ09NUF9DU1JfTE9DS19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvbXBhcmF0b3IgbG9jayAqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgICBDUkMgY2FsY3VsYXRpb24gdW5pdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisvKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQ1JDX0RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIENSQ19EUl9EUl9Qb3MgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIENSQ19EUl9EUl9Nc2sgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IENSQ19EUl9EUl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweEZGRkZGRkZGICovCisjZGVmaW5lIENSQ19EUl9EUiAgICAgICAgICAgICAgICBDUkNfRFJfRFJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBEYXRhIHJlZ2lzdGVyIGJpdHMgKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBDUkNfSURSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgQ1JDX0lEUl9JRFJfUG9zICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQ1JDX0lEUl9JRFJfTXNrICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgQ1JDX0lEUl9JRFJfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwRkYgKi8KKyNkZWZpbmUgQ1JDX0lEUl9JRFIgICAgICAgICAgICAgIENSQ19JRFJfSURSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdlbmVyYWwtcHVycG9zZSA4LWJpdHMgZGF0YSByZWdpc3RlciBiaXRzICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIENSQ19DUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIENSQ19DUl9SRVNFVF9Qb3MgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIENSQ19DUl9SRVNFVF9Nc2sgICAgICAgICAoMHgxVUwgPDwgQ1JDX0NSX1JFU0VUX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIENSQ19DUl9SRVNFVCAgICAgICAgICAgICBDUkNfQ1JfUkVTRVRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSRVNFVCB0aGUgQ1JDIGNvbXB1dGF0aW9uIHVuaXQgYml0ICovCisjZGVmaW5lIENSQ19DUl9QT0xZU0laRV9Qb3MgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIENSQ19DUl9QT0xZU0laRV9Nc2sgICAgICAoMHgzVUwgPDwgQ1JDX0NSX1BPTFlTSVpFX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDE4ICovCisjZGVmaW5lIENSQ19DUl9QT0xZU0laRSAgICAgICAgICBDUkNfQ1JfUE9MWVNJWkVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQb2x5bm9taWFsIHNpemUgYml0cyAqLworI2RlZmluZSBDUkNfQ1JfUE9MWVNJWkVfMCAgICAgICAgKDB4MVUgPDwgQ1JDX0NSX1BPTFlTSVpFX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBDUkNfQ1JfUE9MWVNJWkVfMSAgICAgICAgKDB4MlUgPDwgQ1JDX0NSX1BPTFlTSVpFX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBDUkNfQ1JfUkVWX0lOX1BvcyAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBDUkNfQ1JfUkVWX0lOX01zayAgICAgICAgKDB4M1VMIDw8IENSQ19DUl9SRVZfSU5fUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA2MCAqLworI2RlZmluZSBDUkNfQ1JfUkVWX0lOICAgICAgICAgICAgQ1JDX0NSX1JFVl9JTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUkVWX0lOIFJldmVyc2UgSW5wdXQgRGF0YSBiaXRzICovCisjZGVmaW5lIENSQ19DUl9SRVZfSU5fMCAgICAgICAgICAoMHgxVSA8PCBDUkNfQ1JfUkVWX0lOX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIENSQ19DUl9SRVZfSU5fMSAgICAgICAgICAoMHgyVSA8PCBDUkNfQ1JfUkVWX0lOX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIENSQ19DUl9SRVZfT1VUX1BvcyAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIENSQ19DUl9SRVZfT1VUX01zayAgICAgICAoMHgxVUwgPDwgQ1JDX0NSX1JFVl9PVVRfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIENSQ19DUl9SRVZfT1VUICAgICAgICAgICBDUkNfQ1JfUkVWX09VVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSRVZfT1VUIFJldmVyc2UgT3V0cHV0IERhdGEgYml0cyAqLworCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIENSQ19JTklUIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBDUkNfSU5JVF9JTklUX1BvcyAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBDUkNfSU5JVF9JTklUX01zayAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBDUkNfSU5JVF9JTklUX1BvcykgICAgICAgICAgIC8qITwgMHhGRkZGRkZGRiAqLworI2RlZmluZSBDUkNfSU5JVF9JTklUICAgICAgICAgICAgQ1JDX0lOSVRfSU5JVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW5pdGlhbCBDUkMgdmFsdWUgYml0cyAqLworCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIENSQ19QT0wgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBDUkNfUE9MX1BPTF9Qb3MgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBDUkNfUE9MX1BPTF9Nc2sgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBDUkNfUE9MX1BPTF9Qb3MpICAgICAgICAgICAgIC8qITwgMHhGRkZGRkZGRiAqLworI2RlZmluZSBDUkNfUE9MX1BPTCAgICAgICAgICAgICAgQ1JDX1BPTF9QT0xfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ29lZmZpY2llbnRzIG9mIHRoZSBwb2x5bm9taWFsICovCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyogICAgICAgICAgICAgICAgICAgICAgIEFkdmFuY2VkIEVuY3J5cHRpb24gU3RhbmRhcmQgKEFFUykgICAgICAgICAgICAgICAgICAgKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRVNfQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgQUVTX0NSX0VOX1BvcyAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQUVTX0NSX0VOX01zayAgICAgICAgICAgICgweDFVTCA8PCBBRVNfQ1JfRU5fUG9zKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgQUVTX0NSX0VOICAgICAgICAgICAgICAgIEFFU19DUl9FTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFFUyBFbmFibGUgKi8KKyNkZWZpbmUgQUVTX0NSX0RBVEFUWVBFX1BvcyAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQUVTX0NSX0RBVEFUWVBFX01zayAgICAgICgweDNVTCA8PCBBRVNfQ1JfREFUQVRZUEVfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDYgKi8KKyNkZWZpbmUgQUVTX0NSX0RBVEFUWVBFICAgICAgICAgIEFFU19DUl9EQVRBVFlQRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IERhdGEgdHlwZSBzZWxlY3Rpb24gKi8KKyNkZWZpbmUgQUVTX0NSX0RBVEFUWVBFXzAgICAgICAgICgweDFVIDw8IEFFU19DUl9EQVRBVFlQRV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgQUVTX0NSX0RBVEFUWVBFXzEgICAgICAgICgweDJVIDw8IEFFU19DUl9EQVRBVFlQRV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKworI2RlZmluZSBBRVNfQ1JfTU9ERV9Qb3MgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRVNfQ1JfTU9ERV9Nc2sgICAgICAgICAgKDB4M1VMIDw8IEFFU19DUl9NT0RFX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxOCAqLworI2RlZmluZSBBRVNfQ1JfTU9ERSAgICAgICAgICAgICAgQUVTX0NSX01PREVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQUVTIE1vZGUgT2YgT3BlcmF0aW9uICovCisjZGVmaW5lIEFFU19DUl9NT0RFXzAgICAgICAgICAgICAoMHgxVSA8PCBBRVNfQ1JfTU9ERV9Qb3MpICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIEFFU19DUl9NT0RFXzEgICAgICAgICAgICAoMHgyVSA8PCBBRVNfQ1JfTU9ERV9Qb3MpICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisKKyNkZWZpbmUgQUVTX0NSX0NITU9EX1BvcyAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQUVTX0NSX0NITU9EX01zayAgICAgICAgICgweDgwM1VMIDw8IEFFU19DUl9DSE1PRF9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMTAwNjAgKi8KKyNkZWZpbmUgQUVTX0NSX0NITU9EICAgICAgICAgICAgIEFFU19DUl9DSE1PRF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFFUyBDaGFpbmluZyBNb2RlICovCisjZGVmaW5lIEFFU19DUl9DSE1PRF8wICAgICAgICAgICAoMHgwMDFVIDw8IEFFU19DUl9DSE1PRF9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIEFFU19DUl9DSE1PRF8xICAgICAgICAgICAoMHgwMDJVIDw8IEFFU19DUl9DSE1PRF9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIEFFU19DUl9DSE1PRF8yICAgICAgICAgICAoMHg4MDBVIDw8IEFFU19DUl9DSE1PRF9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovCisKKyNkZWZpbmUgQUVTX0NSX0NDRkNfUG9zICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQUVTX0NSX0NDRkNfTXNrICAgICAgICAgICgweDFVTCA8PCBBRVNfQ1JfQ0NGQ19Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgQUVTX0NSX0NDRkMgICAgICAgICAgICAgIEFFU19DUl9DQ0ZDX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvbXB1dGF0aW9uIENvbXBsZXRlIEZsYWcgQ2xlYXIgKi8KKyNkZWZpbmUgQUVTX0NSX0VSUkNfUG9zICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQUVTX0NSX0VSUkNfTXNrICAgICAgICAgICgweDFVTCA8PCBBRVNfQ1JfRVJSQ19Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgQUVTX0NSX0VSUkMgICAgICAgICAgICAgIEFFU19DUl9FUlJDX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEVycm9yIENsZWFyICovCisjZGVmaW5lIEFFU19DUl9DQ0ZJRV9Qb3MgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFFU19DUl9DQ0ZJRV9Nc2sgICAgICAgICAoMHgxVUwgPDwgQUVTX0NSX0NDRklFX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIEFFU19DUl9DQ0ZJRSAgICAgICAgICAgICBBRVNfQ1JfQ0NGSUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDb21wdXRhdGlvbiBDb21wbGV0ZSBGbGFnIEludGVycnVwdCBFbmFibGUgKi8KKyNkZWZpbmUgQUVTX0NSX0VSUklFX1BvcyAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQUVTX0NSX0VSUklFX01zayAgICAgICAgICgweDFVTCA8PCBBRVNfQ1JfRVJSSUVfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgQUVTX0NSX0VSUklFICAgICAgICAgICAgIEFFU19DUl9FUlJJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEVycm9yIEludGVycnVwdCBFbmFibGUgKi8KKyNkZWZpbmUgQUVTX0NSX0RNQUlORU5fUG9zICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQUVTX0NSX0RNQUlORU5fTXNrICAgICAgICgweDFVTCA8PCBBRVNfQ1JfRE1BSU5FTl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgQUVTX0NSX0RNQUlORU4gICAgICAgICAgIEFFU19DUl9ETUFJTkVOX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEVuYWJsZSBkYXRhIGlucHV0IHBoYXNlIERNQSBtYW5hZ2VtZW50ICAqLworI2RlZmluZSBBRVNfQ1JfRE1BT1VURU5fUG9zICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRVNfQ1JfRE1BT1VURU5fTXNrICAgICAgKDB4MVVMIDw8IEFFU19DUl9ETUFPVVRFTl9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBBRVNfQ1JfRE1BT1VURU4gICAgICAgICAgQUVTX0NSX0RNQU9VVEVOX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxlIGRhdGEgb3V0cHV0IHBoYXNlIERNQSBtYW5hZ2VtZW50ICovCisKKyNkZWZpbmUgQUVTX0NSX0dDTVBIX1BvcyAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQUVTX0NSX0dDTVBIX01zayAgICAgICAgICgweDNVTCA8PCBBRVNfQ1JfR0NNUEhfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDYwMDAgKi8KKyNkZWZpbmUgQUVTX0NSX0dDTVBIICAgICAgICAgICAgIEFFU19DUl9HQ01QSF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdDTSBQaGFzZSAqLworI2RlZmluZSBBRVNfQ1JfR0NNUEhfMCAgICAgICAgICAgKDB4MVUgPDwgQUVTX0NSX0dDTVBIX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLworI2RlZmluZSBBRVNfQ1JfR0NNUEhfMSAgICAgICAgICAgKDB4MlUgPDwgQUVTX0NSX0dDTVBIX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLworCisjZGVmaW5lIEFFU19DUl9LRVlTSVpFX1BvcyAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFFU19DUl9LRVlTSVpFX01zayAgICAgICAoMHgxVUwgPDwgQUVTX0NSX0tFWVNJWkVfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovCisjZGVmaW5lIEFFU19DUl9LRVlTSVpFICAgICAgICAgICBBRVNfQ1JfS0VZU0laRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBLZXkgc2l6ZSBzZWxlY3Rpb24gKi8KKworI2RlZmluZSBBRVNfQ1JfTlBCTEJfUG9zICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRVNfQ1JfTlBCTEJfTXNrICAgICAgICAgKDB4RlVMIDw8IEFFU19DUl9OUEJMQl9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMEYwMDAwMCAqLworI2RlZmluZSBBRVNfQ1JfTlBCTEIgICAgICAgICAgICAgQUVTX0NSX05QQkxCX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTnVtYmVyIG9mIHBhZGRpbmcgYnl0ZXMgaW4gbGFzdCBwYXlsb2FkIGJsb2NrICovCisjZGVmaW5lIEFFU19DUl9OUEJMQl8wICAgICAgICAgICAoMHgxVSA8PCBBRVNfQ1JfTlBCTEJfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovCisjZGVmaW5lIEFFU19DUl9OUEJMQl8xICAgICAgICAgICAoMHgyVSA8PCBBRVNfQ1JfTlBCTEJfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovCisjZGVmaW5lIEFFU19DUl9OUEJMQl8yICAgICAgICAgICAoMHg0VSA8PCBBRVNfQ1JfTlBCTEJfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovCisjZGVmaW5lIEFFU19DUl9OUEJMQl8zICAgICAgICAgICAoMHg4VSA8PCBBRVNfQ1JfTlBCTEJfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwODAwMDAwICovCisKKy8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQUVTX1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIEFFU19TUl9DQ0ZfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFFU19TUl9DQ0ZfTXNrICAgICAgICAgICAoMHgxVUwgPDwgQUVTX1NSX0NDRl9Qb3MpICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIEFFU19TUl9DQ0YgICAgICAgICAgICAgICBBRVNfU1JfQ0NGX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDb21wdXRhdGlvbiBDb21wbGV0ZSBGbGFnICovCisjZGVmaW5lIEFFU19TUl9SREVSUl9Qb3MgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFFU19TUl9SREVSUl9Nc2sgICAgICAgICAoMHgxVUwgPDwgQUVTX1NSX1JERVJSX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIEFFU19TUl9SREVSUiAgICAgICAgICAgICBBRVNfU1JfUkRFUlJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSZWFkIEVycm9yIEZsYWcgKi8KKyNkZWZpbmUgQUVTX1NSX1dSRVJSX1BvcyAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQUVTX1NSX1dSRVJSX01zayAgICAgICAgICgweDFVTCA8PCBBRVNfU1JfV1JFUlJfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgQUVTX1NSX1dSRVJSICAgICAgICAgICAgIEFFU19TUl9XUkVSUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFdyaXRlIEVycm9yIEZsYWcgKi8KKyNkZWZpbmUgQUVTX1NSX0JVU1lfUG9zICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQUVTX1NSX0JVU1lfTXNrICAgICAgICAgICgweDFVTCA8PCBBRVNfU1JfQlVTWV9Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgQUVTX1NSX0JVU1kgICAgICAgICAgICAgIEFFU19TUl9CVVNZX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJ1c3kgRmxhZyAqLworCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFFU19ESU5SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBBRVNfRElOUl9Qb3MgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRVNfRElOUl9Nc2sgICAgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBBRVNfRElOUl9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHhGRkZGRkZGRiAqLworI2RlZmluZSBBRVNfRElOUiAgICAgICAgICAgICAgICAgQUVTX0RJTlJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQUVTIERhdGEgSW5wdXQgUmVnaXN0ZXIgKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRVNfRE9VVFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgQUVTX0RPVVRSX1BvcyAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQUVTX0RPVVRSX01zayAgICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgQUVTX0RPVVRSX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4RkZGRkZGRkYgKi8KKyNkZWZpbmUgQUVTX0RPVVRSICAgICAgICAgICAgICAgIEFFU19ET1VUUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFFUyBEYXRhIE91dHB1dCBSZWdpc3RlciAqLworCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFFU19LRVlSMCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBBRVNfS0VZUjBfUG9zICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRVNfS0VZUjBfTXNrICAgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBBRVNfS0VZUjBfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHhGRkZGRkZGRiAqLworI2RlZmluZSBBRVNfS0VZUjAgICAgICAgICAgICAgICAgQUVTX0tFWVIwX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQUVTIEtleSBSZWdpc3RlciAwICovCisKKy8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQUVTX0tFWVIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIEFFU19LRVlSMV9Qb3MgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFFU19LRVlSMV9Nc2sgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IEFFU19LRVlSMV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweEZGRkZGRkZGICovCisjZGVmaW5lIEFFU19LRVlSMSAgICAgICAgICAgICAgICBBRVNfS0VZUjFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBRVMgS2V5IFJlZ2lzdGVyIDEgKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRVNfS0VZUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgQUVTX0tFWVIyX1BvcyAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQUVTX0tFWVIyX01zayAgICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgQUVTX0tFWVIyX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4RkZGRkZGRkYgKi8KKyNkZWZpbmUgQUVTX0tFWVIyICAgICAgICAgICAgICAgIEFFU19LRVlSMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFFUyBLZXkgUmVnaXN0ZXIgMiAqLworCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFFU19LRVlSMyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBBRVNfS0VZUjNfUG9zICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRVNfS0VZUjNfTXNrICAgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBBRVNfS0VZUjNfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHhGRkZGRkZGRiAqLworI2RlZmluZSBBRVNfS0VZUjMgICAgICAgICAgICAgICAgQUVTX0tFWVIzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQUVTIEtleSBSZWdpc3RlciAzICovCisKKy8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQUVTX0tFWVI0IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIEFFU19LRVlSNF9Qb3MgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFFU19LRVlSNF9Nc2sgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IEFFU19LRVlSNF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweEZGRkZGRkZGICovCisjZGVmaW5lIEFFU19LRVlSNCAgICAgICAgICAgICAgICBBRVNfS0VZUjRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBRVMgS2V5IFJlZ2lzdGVyIDQgKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRVNfS0VZUjUgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgQUVTX0tFWVI1X1BvcyAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQUVTX0tFWVI1X01zayAgICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgQUVTX0tFWVI1X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4RkZGRkZGRkYgKi8KKyNkZWZpbmUgQUVTX0tFWVI1ICAgICAgICAgICAgICAgIEFFU19LRVlSNV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFFUyBLZXkgUmVnaXN0ZXIgNSAqLworCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFFU19LRVlSNiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBBRVNfS0VZUjZfUG9zICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRVNfS0VZUjZfTXNrICAgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBBRVNfS0VZUjZfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHhGRkZGRkZGRiAqLworI2RlZmluZSBBRVNfS0VZUjYgICAgICAgICAgICAgICAgQUVTX0tFWVI2X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQUVTIEtleSBSZWdpc3RlciA2ICovCisKKy8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQUVTX0tFWVI3IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIEFFU19LRVlSN19Qb3MgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFFU19LRVlSN19Nc2sgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IEFFU19LRVlSN19Qb3MpICAgICAgICAgICAgICAgLyohPCAweEZGRkZGRkZGICovCisjZGVmaW5lIEFFU19LRVlSNyAgICAgICAgICAgICAgICBBRVNfS0VZUjdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBRVMgS2V5IFJlZ2lzdGVyIDcgKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRVNfSVZSMCByZWdpc3RlciAgICoqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgQUVTX0lWUjBfUG9zICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQUVTX0lWUjBfTXNrICAgICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgQUVTX0lWUjBfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4RkZGRkZGRkYgKi8KKyNkZWZpbmUgQUVTX0lWUjAgICAgICAgICAgICAgICAgIEFFU19JVlIwX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFFUyBJbml0aWFsaXphdGlvbiBWZWN0b3IgUmVnaXN0ZXIgMCAqLworCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFFU19JVlIxIHJlZ2lzdGVyICAgKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBBRVNfSVZSMV9Qb3MgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRVNfSVZSMV9Nc2sgICAgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBBRVNfSVZSMV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHhGRkZGRkZGRiAqLworI2RlZmluZSBBRVNfSVZSMSAgICAgICAgICAgICAgICAgQUVTX0lWUjFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQUVTIEluaXRpYWxpemF0aW9uIFZlY3RvciBSZWdpc3RlciAxICovCisKKy8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQUVTX0lWUjIgcmVnaXN0ZXIgICAqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIEFFU19JVlIyX1BvcyAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFFU19JVlIyX01zayAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IEFFU19JVlIyX1BvcykgICAgICAgICAgICAgICAgLyohPCAweEZGRkZGRkZGICovCisjZGVmaW5lIEFFU19JVlIyICAgICAgICAgICAgICAgICBBRVNfSVZSMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBRVMgSW5pdGlhbGl6YXRpb24gVmVjdG9yIFJlZ2lzdGVyIDIgKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRVNfSVZSMyByZWdpc3RlciAgICoqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgQUVTX0lWUjNfUG9zICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQUVTX0lWUjNfTXNrICAgICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgQUVTX0lWUjNfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4RkZGRkZGRkYgKi8KKyNkZWZpbmUgQUVTX0lWUjMgICAgICAgICAgICAgICAgIEFFU19JVlIzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFFUyBJbml0aWFsaXphdGlvbiBWZWN0b3IgUmVnaXN0ZXIgMyAqLworCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFFU19TVVNQMFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgQUVTX1NVU1AwUl9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQUVTX1NVU1AwUl9Nc2sgICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgQUVTX1NVU1AwUl9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4RkZGRkZGRkYgKi8KKyNkZWZpbmUgQUVTX1NVU1AwUiAgICAgICAgICAgICAgIEFFU19TVVNQMFJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFFUyBTdXNwZW5kIHJlZ2lzdGVycyAwICovCisKKy8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQUVTX1NVU1AxUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBBRVNfU1VTUDFSX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRVNfU1VTUDFSX01zayAgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBBRVNfU1VTUDFSX1BvcykgICAgICAgICAgICAgIC8qITwgMHhGRkZGRkZGRiAqLworI2RlZmluZSBBRVNfU1VTUDFSICAgICAgICAgICAgICAgQUVTX1NVU1AxUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQUVTIFN1c3BlbmQgcmVnaXN0ZXJzIDEgKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRVNfU1VTUDJSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIEFFU19TVVNQMlJfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFFU19TVVNQMlJfTXNrICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IEFFU19TVVNQMlJfUG9zKSAgICAgICAgICAgICAgLyohPCAweEZGRkZGRkZGICovCisjZGVmaW5lIEFFU19TVVNQMlIgICAgICAgICAgICAgICBBRVNfU1VTUDJSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBRVMgU3VzcGVuZCByZWdpc3RlcnMgMiAqLworCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFFU19TVVNQM1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgQUVTX1NVU1AzUl9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQUVTX1NVU1AzUl9Nc2sgICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgQUVTX1NVU1AzUl9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4RkZGRkZGRkYgKi8KKyNkZWZpbmUgQUVTX1NVU1AzUiAgICAgICAgICAgICAgIEFFU19TVVNQM1JfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFFUyBTdXNwZW5kIHJlZ2lzdGVycyAzICovCisKKy8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQUVTX1NVU1A0UiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBBRVNfU1VTUDRSX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRVNfU1VTUDRSX01zayAgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBBRVNfU1VTUDRSX1BvcykgICAgICAgICAgICAgIC8qITwgMHhGRkZGRkZGRiAqLworI2RlZmluZSBBRVNfU1VTUDRSICAgICAgICAgICAgICAgQUVTX1NVU1A0Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQUVTIFN1c3BlbmQgcmVnaXN0ZXJzIDQgKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRVNfU1VTUDVSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIEFFU19TVVNQNVJfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEFFU19TVVNQNVJfTXNrICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IEFFU19TVVNQNVJfUG9zKSAgICAgICAgICAgICAgLyohPCAweEZGRkZGRkZGICovCisjZGVmaW5lIEFFU19TVVNQNVIgICAgICAgICAgICAgICBBRVNfU1VTUDVSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBRVMgU3VzcGVuZCByZWdpc3RlcnMgNSAqLworCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFFU19TVVNQNlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgQUVTX1NVU1A2Ul9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQUVTX1NVU1A2Ul9Nc2sgICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgQUVTX1NVU1A2Ul9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4RkZGRkZGRkYgKi8KKyNkZWZpbmUgQUVTX1NVU1A2UiAgICAgICAgICAgICAgIEFFU19TVVNQNlJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFFUyBTdXNwZW5kIHJlZ2lzdGVycyA2ICovCisKKy8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQUVTX1NVU1A3UiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBBRVNfU1VTUDdSX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBBRVNfU1VTUDdSX01zayAgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBBRVNfU1VTUDdSX1BvcykgICAgICAgICAgICAgIC8qITwgMHhGRkZGRkZGRiAqLworI2RlZmluZSBBRVNfU1VTUDdSICAgICAgICAgICAgICAgQUVTX1NVU1A3Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQUVTIFN1c3BlbmQgcmVnaXN0ZXJzIDcgKi8KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisvKiAgICAgICAgICAgICAgICAgICAgICAgICAgIERNQSBDb250cm9sbGVyIChETUEpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKy8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0lTUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIERNQV9JU1JfR0lGMV9Qb3MgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQV9JU1JfR0lGMV9Nc2sgICAgICAgKDB4MVVMIDw8IERNQV9JU1JfR0lGMV9Qb3MpICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIERNQV9JU1JfR0lGMSAgICAgICAgICAgRE1BX0lTUl9HSUYxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDEgR2xvYmFsIGludGVycnVwdCBmbGFnICovCisjZGVmaW5lIERNQV9JU1JfVENJRjFfUG9zICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQV9JU1JfVENJRjFfTXNrICAgICAgKDB4MVVMIDw8IERNQV9JU1JfVENJRjFfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIERNQV9JU1JfVENJRjEgICAgICAgICAgRE1BX0lTUl9UQ0lGMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDEgVHJhbnNmZXIgQ29tcGxldGUgZmxhZyAqLworI2RlZmluZSBETUFfSVNSX0hUSUYxX1BvcyAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBETUFfSVNSX0hUSUYxX01zayAgICAgICgweDFVTCA8PCBETUFfSVNSX0hUSUYxX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBETUFfSVNSX0hUSUYxICAgICAgICAgIERNQV9JU1JfSFRJRjFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAxIEhhbGYgVHJhbnNmZXIgZmxhZyAqLworI2RlZmluZSBETUFfSVNSX1RFSUYxX1BvcyAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBETUFfSVNSX1RFSUYxX01zayAgICAgICgweDFVTCA8PCBETUFfSVNSX1RFSUYxX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBETUFfSVNSX1RFSUYxICAgICAgICAgIERNQV9JU1JfVEVJRjFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAxIFRyYW5zZmVyIEVycm9yIGZsYWcgKi8KKyNkZWZpbmUgRE1BX0lTUl9HSUYyX1BvcyAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BX0lTUl9HSUYyX01zayAgICAgICAoMHgxVUwgPDwgRE1BX0lTUl9HSUYyX1BvcykgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgRE1BX0lTUl9HSUYyICAgICAgICAgICBETUFfSVNSX0dJRjJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMiBHbG9iYWwgaW50ZXJydXB0IGZsYWcgKi8KKyNkZWZpbmUgRE1BX0lTUl9UQ0lGMl9Qb3MgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BX0lTUl9UQ0lGMl9Nc2sgICAgICAoMHgxVUwgPDwgRE1BX0lTUl9UQ0lGMl9Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgRE1BX0lTUl9UQ0lGMiAgICAgICAgICBETUFfSVNSX1RDSUYyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMiBUcmFuc2ZlciBDb21wbGV0ZSBmbGFnICovCisjZGVmaW5lIERNQV9JU1JfSFRJRjJfUG9zICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQV9JU1JfSFRJRjJfTXNrICAgICAgKDB4MVVMIDw8IERNQV9JU1JfSFRJRjJfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIERNQV9JU1JfSFRJRjIgICAgICAgICAgRE1BX0lTUl9IVElGMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDIgSGFsZiBUcmFuc2ZlciBmbGFnICovCisjZGVmaW5lIERNQV9JU1JfVEVJRjJfUG9zICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQV9JU1JfVEVJRjJfTXNrICAgICAgKDB4MVVMIDw8IERNQV9JU1JfVEVJRjJfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIERNQV9JU1JfVEVJRjIgICAgICAgICAgRE1BX0lTUl9URUlGMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDIgVHJhbnNmZXIgRXJyb3IgZmxhZyAqLworI2RlZmluZSBETUFfSVNSX0dJRjNfUG9zICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBETUFfSVNSX0dJRjNfTXNrICAgICAgICgweDFVTCA8PCBETUFfSVNSX0dJRjNfUG9zKSAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBETUFfSVNSX0dJRjMgICAgICAgICAgIERNQV9JU1JfR0lGM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAzIEdsb2JhbCBpbnRlcnJ1cHQgZmxhZyAqLworI2RlZmluZSBETUFfSVNSX1RDSUYzX1BvcyAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBETUFfSVNSX1RDSUYzX01zayAgICAgICgweDFVTCA8PCBETUFfSVNSX1RDSUYzX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBETUFfSVNSX1RDSUYzICAgICAgICAgIERNQV9JU1JfVENJRjNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAzIFRyYW5zZmVyIENvbXBsZXRlIGZsYWcgKi8KKyNkZWZpbmUgRE1BX0lTUl9IVElGM19Qb3MgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BX0lTUl9IVElGM19Nc2sgICAgICAoMHgxVUwgPDwgRE1BX0lTUl9IVElGM19Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgRE1BX0lTUl9IVElGMyAgICAgICAgICBETUFfSVNSX0hUSUYzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMyBIYWxmIFRyYW5zZmVyIGZsYWcgKi8KKyNkZWZpbmUgRE1BX0lTUl9URUlGM19Qb3MgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BX0lTUl9URUlGM19Nc2sgICAgICAoMHgxVUwgPDwgRE1BX0lTUl9URUlGM19Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgRE1BX0lTUl9URUlGMyAgICAgICAgICBETUFfSVNSX1RFSUYzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMyBUcmFuc2ZlciBFcnJvciBmbGFnICovCisjZGVmaW5lIERNQV9JU1JfR0lGNF9Qb3MgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQV9JU1JfR0lGNF9Nc2sgICAgICAgKDB4MVVMIDw8IERNQV9JU1JfR0lGNF9Qb3MpICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIERNQV9JU1JfR0lGNCAgICAgICAgICAgRE1BX0lTUl9HSUY0X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDQgR2xvYmFsIGludGVycnVwdCBmbGFnICovCisjZGVmaW5lIERNQV9JU1JfVENJRjRfUG9zICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQV9JU1JfVENJRjRfTXNrICAgICAgKDB4MVVMIDw8IERNQV9JU1JfVENJRjRfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIERNQV9JU1JfVENJRjQgICAgICAgICAgRE1BX0lTUl9UQ0lGNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDQgVHJhbnNmZXIgQ29tcGxldGUgZmxhZyAqLworI2RlZmluZSBETUFfSVNSX0hUSUY0X1BvcyAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBETUFfSVNSX0hUSUY0X01zayAgICAgICgweDFVTCA8PCBETUFfSVNSX0hUSUY0X1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLworI2RlZmluZSBETUFfSVNSX0hUSUY0ICAgICAgICAgIERNQV9JU1JfSFRJRjRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA0IEhhbGYgVHJhbnNmZXIgZmxhZyAqLworI2RlZmluZSBETUFfSVNSX1RFSUY0X1BvcyAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBETUFfSVNSX1RFSUY0X01zayAgICAgICgweDFVTCA8PCBETUFfSVNSX1RFSUY0X1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLworI2RlZmluZSBETUFfSVNSX1RFSUY0ICAgICAgICAgIERNQV9JU1JfVEVJRjRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA0IFRyYW5zZmVyIEVycm9yIGZsYWcgKi8KKyNkZWZpbmUgRE1BX0lTUl9HSUY1X1BvcyAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BX0lTUl9HSUY1X01zayAgICAgICAoMHgxVUwgPDwgRE1BX0lTUl9HSUY1X1BvcykgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgRE1BX0lTUl9HSUY1ICAgICAgICAgICBETUFfSVNSX0dJRjVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNSBHbG9iYWwgaW50ZXJydXB0IGZsYWcgKi8KKyNkZWZpbmUgRE1BX0lTUl9UQ0lGNV9Qb3MgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BX0lTUl9UQ0lGNV9Nc2sgICAgICAoMHgxVUwgPDwgRE1BX0lTUl9UQ0lGNV9Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgRE1BX0lTUl9UQ0lGNSAgICAgICAgICBETUFfSVNSX1RDSUY1X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNSBUcmFuc2ZlciBDb21wbGV0ZSBmbGFnICovCisjZGVmaW5lIERNQV9JU1JfSFRJRjVfUG9zICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQV9JU1JfSFRJRjVfTXNrICAgICAgKDB4MVVMIDw8IERNQV9JU1JfSFRJRjVfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovCisjZGVmaW5lIERNQV9JU1JfSFRJRjUgICAgICAgICAgRE1BX0lTUl9IVElGNV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDUgSGFsZiBUcmFuc2ZlciBmbGFnICovCisjZGVmaW5lIERNQV9JU1JfVEVJRjVfUG9zICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQV9JU1JfVEVJRjVfTXNrICAgICAgKDB4MVVMIDw8IERNQV9JU1JfVEVJRjVfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovCisjZGVmaW5lIERNQV9JU1JfVEVJRjUgICAgICAgICAgRE1BX0lTUl9URUlGNV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDUgVHJhbnNmZXIgRXJyb3IgZmxhZyAqLworI2RlZmluZSBETUFfSVNSX0dJRjZfUG9zICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBETUFfSVNSX0dJRjZfTXNrICAgICAgICgweDFVTCA8PCBETUFfSVNSX0dJRjZfUG9zKSAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLworI2RlZmluZSBETUFfSVNSX0dJRjYgICAgICAgICAgIERNQV9JU1JfR0lGNl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA2IEdsb2JhbCBpbnRlcnJ1cHQgZmxhZyAqLworI2RlZmluZSBETUFfSVNSX1RDSUY2X1BvcyAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBETUFfSVNSX1RDSUY2X01zayAgICAgICgweDFVTCA8PCBETUFfSVNSX1RDSUY2X1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLworI2RlZmluZSBETUFfSVNSX1RDSUY2ICAgICAgICAgIERNQV9JU1JfVENJRjZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA2IFRyYW5zZmVyIENvbXBsZXRlIGZsYWcgKi8KKyNkZWZpbmUgRE1BX0lTUl9IVElGNl9Qb3MgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BX0lTUl9IVElGNl9Nc2sgICAgICAoMHgxVUwgPDwgRE1BX0lTUl9IVElGNl9Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8KKyNkZWZpbmUgRE1BX0lTUl9IVElGNiAgICAgICAgICBETUFfSVNSX0hUSUY2X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNiBIYWxmIFRyYW5zZmVyIGZsYWcgKi8KKyNkZWZpbmUgRE1BX0lTUl9URUlGNl9Qb3MgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BX0lTUl9URUlGNl9Nc2sgICAgICAoMHgxVUwgPDwgRE1BX0lTUl9URUlGNl9Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8KKyNkZWZpbmUgRE1BX0lTUl9URUlGNiAgICAgICAgICBETUFfSVNSX1RFSUY2X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNiBUcmFuc2ZlciBFcnJvciBmbGFnICovCisjZGVmaW5lIERNQV9JU1JfR0lGN19Qb3MgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQV9JU1JfR0lGN19Nc2sgICAgICAgKDB4MVVMIDw8IERNQV9JU1JfR0lGN19Qb3MpICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAxMDAwMDAwICovCisjZGVmaW5lIERNQV9JU1JfR0lGNyAgICAgICAgICAgRE1BX0lTUl9HSUY3X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDcgR2xvYmFsIGludGVycnVwdCBmbGFnICovCisjZGVmaW5lIERNQV9JU1JfVENJRjdfUG9zICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQV9JU1JfVENJRjdfTXNrICAgICAgKDB4MVVMIDw8IERNQV9JU1JfVENJRjdfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAyMDAwMDAwICovCisjZGVmaW5lIERNQV9JU1JfVENJRjcgICAgICAgICAgRE1BX0lTUl9UQ0lGN19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDcgVHJhbnNmZXIgQ29tcGxldGUgZmxhZyAqLworI2RlZmluZSBETUFfSVNSX0hUSUY3X1BvcyAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBETUFfSVNSX0hUSUY3X01zayAgICAgICgweDFVTCA8PCBETUFfSVNSX0hUSUY3X1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLworI2RlZmluZSBETUFfSVNSX0hUSUY3ICAgICAgICAgIERNQV9JU1JfSFRJRjdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA3IEhhbGYgVHJhbnNmZXIgZmxhZyAqLworI2RlZmluZSBETUFfSVNSX1RFSUY3X1BvcyAgICAgICgyN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBETUFfSVNSX1RFSUY3X01zayAgICAgICgweDFVTCA8PCBETUFfSVNSX1RFSUY3X1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwODAwMDAwMCAqLworI2RlZmluZSBETUFfSVNSX1RFSUY3ICAgICAgICAgIERNQV9JU1JfVEVJRjdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA3IFRyYW5zZmVyIEVycm9yIGZsYWcgKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfSUZDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjFfUG9zICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjFfTXNrICAgICAoMHgxVUwgPDwgRE1BX0lGQ1JfQ0dJRjFfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjEgICAgICAgICBETUFfSUZDUl9DR0lGMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMSBHbG9iYWwgaW50ZXJydXB0IGNsZWFyICovCisjZGVmaW5lIERNQV9JRkNSX0NUQ0lGMV9Qb3MgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQV9JRkNSX0NUQ0lGMV9Nc2sgICAgKDB4MVVMIDw8IERNQV9JRkNSX0NUQ0lGMV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIERNQV9JRkNSX0NUQ0lGMSAgICAgICAgRE1BX0lGQ1JfQ1RDSUYxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDEgVHJhbnNmZXIgQ29tcGxldGUgY2xlYXIgKi8KKyNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYxX1BvcyAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYxX01zayAgICAoMHgxVUwgPDwgRE1BX0lGQ1JfQ0hUSUYxX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYxICAgICAgICBETUFfSUZDUl9DSFRJRjFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMSBIYWxmIFRyYW5zZmVyIGNsZWFyICovCisjZGVmaW5lIERNQV9JRkNSX0NURUlGMV9Qb3MgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQV9JRkNSX0NURUlGMV9Nc2sgICAgKDB4MVVMIDw8IERNQV9JRkNSX0NURUlGMV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIERNQV9JRkNSX0NURUlGMSAgICAgICAgRE1BX0lGQ1JfQ1RFSUYxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDEgVHJhbnNmZXIgRXJyb3IgY2xlYXIgKi8KKyNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjJfUG9zICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjJfTXNrICAgICAoMHgxVUwgPDwgRE1BX0lGQ1JfQ0dJRjJfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjIgICAgICAgICBETUFfSUZDUl9DR0lGMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMiBHbG9iYWwgaW50ZXJydXB0IGNsZWFyICovCisjZGVmaW5lIERNQV9JRkNSX0NUQ0lGMl9Qb3MgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQV9JRkNSX0NUQ0lGMl9Nc2sgICAgKDB4MVVMIDw8IERNQV9JRkNSX0NUQ0lGMl9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIERNQV9JRkNSX0NUQ0lGMiAgICAgICAgRE1BX0lGQ1JfQ1RDSUYyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDIgVHJhbnNmZXIgQ29tcGxldGUgY2xlYXIgKi8KKyNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYyX1BvcyAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYyX01zayAgICAoMHgxVUwgPDwgRE1BX0lGQ1JfQ0hUSUYyX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYyICAgICAgICBETUFfSUZDUl9DSFRJRjJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMiBIYWxmIFRyYW5zZmVyIGNsZWFyICovCisjZGVmaW5lIERNQV9JRkNSX0NURUlGMl9Qb3MgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQV9JRkNSX0NURUlGMl9Nc2sgICAgKDB4MVVMIDw8IERNQV9JRkNSX0NURUlGMl9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIERNQV9JRkNSX0NURUlGMiAgICAgICAgRE1BX0lGQ1JfQ1RFSUYyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDIgVHJhbnNmZXIgRXJyb3IgY2xlYXIgKi8KKyNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjNfUG9zICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjNfTXNrICAgICAoMHgxVUwgPDwgRE1BX0lGQ1JfQ0dJRjNfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjMgICAgICAgICBETUFfSUZDUl9DR0lGM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMyBHbG9iYWwgaW50ZXJydXB0IGNsZWFyICovCisjZGVmaW5lIERNQV9JRkNSX0NUQ0lGM19Qb3MgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQV9JRkNSX0NUQ0lGM19Nc2sgICAgKDB4MVVMIDw8IERNQV9JRkNSX0NUQ0lGM19Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIERNQV9JRkNSX0NUQ0lGMyAgICAgICAgRE1BX0lGQ1JfQ1RDSUYzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDMgVHJhbnNmZXIgQ29tcGxldGUgY2xlYXIgKi8KKyNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYzX1BvcyAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYzX01zayAgICAoMHgxVUwgPDwgRE1BX0lGQ1JfQ0hUSUYzX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYzICAgICAgICBETUFfSUZDUl9DSFRJRjNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMyBIYWxmIFRyYW5zZmVyIGNsZWFyICovCisjZGVmaW5lIERNQV9JRkNSX0NURUlGM19Qb3MgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQV9JRkNSX0NURUlGM19Nc2sgICAgKDB4MVVMIDw8IERNQV9JRkNSX0NURUlGM19Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIERNQV9JRkNSX0NURUlGMyAgICAgICAgRE1BX0lGQ1JfQ1RFSUYzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDMgVHJhbnNmZXIgRXJyb3IgY2xlYXIgKi8KKyNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjRfUG9zICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjRfTXNrICAgICAoMHgxVUwgPDwgRE1BX0lGQ1JfQ0dJRjRfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjQgICAgICAgICBETUFfSUZDUl9DR0lGNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNCBHbG9iYWwgaW50ZXJydXB0IGNsZWFyICovCisjZGVmaW5lIERNQV9JRkNSX0NUQ0lGNF9Qb3MgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQV9JRkNSX0NUQ0lGNF9Nc2sgICAgKDB4MVVMIDw8IERNQV9JRkNSX0NUQ0lGNF9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIERNQV9JRkNSX0NUQ0lGNCAgICAgICAgRE1BX0lGQ1JfQ1RDSUY0X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDQgVHJhbnNmZXIgQ29tcGxldGUgY2xlYXIgKi8KKyNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY0X1BvcyAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY0X01zayAgICAoMHgxVUwgPDwgRE1BX0lGQ1JfQ0hUSUY0X1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY0ICAgICAgICBETUFfSUZDUl9DSFRJRjRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNCBIYWxmIFRyYW5zZmVyIGNsZWFyICovCisjZGVmaW5lIERNQV9JRkNSX0NURUlGNF9Qb3MgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQV9JRkNSX0NURUlGNF9Nc2sgICAgKDB4MVVMIDw8IERNQV9JRkNSX0NURUlGNF9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovCisjZGVmaW5lIERNQV9JRkNSX0NURUlGNCAgICAgICAgRE1BX0lGQ1JfQ1RFSUY0X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDQgVHJhbnNmZXIgRXJyb3IgY2xlYXIgKi8KKyNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjVfUG9zICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjVfTXNrICAgICAoMHgxVUwgPDwgRE1BX0lGQ1JfQ0dJRjVfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjUgICAgICAgICBETUFfSUZDUl9DR0lGNV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNSBHbG9iYWwgaW50ZXJydXB0IGNsZWFyICovCisjZGVmaW5lIERNQV9JRkNSX0NUQ0lGNV9Qb3MgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQV9JRkNSX0NUQ0lGNV9Nc2sgICAgKDB4MVVMIDw8IERNQV9JRkNSX0NUQ0lGNV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovCisjZGVmaW5lIERNQV9JRkNSX0NUQ0lGNSAgICAgICAgRE1BX0lGQ1JfQ1RDSUY1X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDUgVHJhbnNmZXIgQ29tcGxldGUgY2xlYXIgKi8KKyNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY1X1BvcyAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY1X01zayAgICAoMHgxVUwgPDwgRE1BX0lGQ1JfQ0hUSUY1X1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY1ICAgICAgICBETUFfSUZDUl9DSFRJRjVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNSBIYWxmIFRyYW5zZmVyIGNsZWFyICovCisjZGVmaW5lIERNQV9JRkNSX0NURUlGNV9Qb3MgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQV9JRkNSX0NURUlGNV9Nc2sgICAgKDB4MVVMIDw8IERNQV9JRkNSX0NURUlGNV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovCisjZGVmaW5lIERNQV9JRkNSX0NURUlGNSAgICAgICAgRE1BX0lGQ1JfQ1RFSUY1X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDUgVHJhbnNmZXIgRXJyb3IgY2xlYXIgKi8KKyNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjZfUG9zICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjZfTXNrICAgICAoMHgxVUwgPDwgRE1BX0lGQ1JfQ0dJRjZfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjYgICAgICAgICBETUFfSUZDUl9DR0lGNl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNiBHbG9iYWwgaW50ZXJydXB0IGNsZWFyICovCisjZGVmaW5lIERNQV9JRkNSX0NUQ0lGNl9Qb3MgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQV9JRkNSX0NUQ0lGNl9Nc2sgICAgKDB4MVVMIDw8IERNQV9JRkNSX0NUQ0lGNl9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovCisjZGVmaW5lIERNQV9JRkNSX0NUQ0lGNiAgICAgICAgRE1BX0lGQ1JfQ1RDSUY2X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDYgVHJhbnNmZXIgQ29tcGxldGUgY2xlYXIgKi8KKyNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY2X1BvcyAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY2X01zayAgICAoMHgxVUwgPDwgRE1BX0lGQ1JfQ0hUSUY2X1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8KKyNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY2ICAgICAgICBETUFfSUZDUl9DSFRJRjZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNiBIYWxmIFRyYW5zZmVyIGNsZWFyICovCisjZGVmaW5lIERNQV9JRkNSX0NURUlGNl9Qb3MgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQV9JRkNSX0NURUlGNl9Nc2sgICAgKDB4MVVMIDw8IERNQV9JRkNSX0NURUlGNl9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwODAwMDAwICovCisjZGVmaW5lIERNQV9JRkNSX0NURUlGNiAgICAgICAgRE1BX0lGQ1JfQ1RFSUY2X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDYgVHJhbnNmZXIgRXJyb3IgY2xlYXIgKi8KKyNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjdfUG9zICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjdfTXNrICAgICAoMHgxVUwgPDwgRE1BX0lGQ1JfQ0dJRjdfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8KKyNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjcgICAgICAgICBETUFfSUZDUl9DR0lGN19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNyBHbG9iYWwgaW50ZXJydXB0IGNsZWFyICovCisjZGVmaW5lIERNQV9JRkNSX0NUQ0lGN19Qb3MgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQV9JRkNSX0NUQ0lGN19Nc2sgICAgKDB4MVVMIDw8IERNQV9JRkNSX0NUQ0lGN19Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAyMDAwMDAwICovCisjZGVmaW5lIERNQV9JRkNSX0NUQ0lGNyAgICAgICAgRE1BX0lGQ1JfQ1RDSUY3X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDcgVHJhbnNmZXIgQ29tcGxldGUgY2xlYXIgKi8KKyNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY3X1BvcyAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY3X01zayAgICAoMHgxVUwgPDwgRE1BX0lGQ1JfQ0hUSUY3X1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8KKyNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY3ICAgICAgICBETUFfSUZDUl9DSFRJRjdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNyBIYWxmIFRyYW5zZmVyIGNsZWFyICovCisjZGVmaW5lIERNQV9JRkNSX0NURUlGN19Qb3MgICAgKDI3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQV9JRkNSX0NURUlGN19Nc2sgICAgKDB4MVVMIDw8IERNQV9JRkNSX0NURUlGN19Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDA4MDAwMDAwICovCisjZGVmaW5lIERNQV9JRkNSX0NURUlGNyAgICAgICAgRE1BX0lGQ1JfQ1RFSUY3X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDcgVHJhbnNmZXIgRXJyb3IgY2xlYXIgKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgRE1BX0NDUl9FTl9Qb3MgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BX0NDUl9FTl9Nc2sgICAgICAgICAoMHgxVUwgPDwgRE1BX0NDUl9FTl9Qb3MpICAgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgRE1BX0NDUl9FTiAgICAgICAgICAgICBETUFfQ0NSX0VOX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgZW5hYmxlICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIERNQV9DQ1JfVENJRV9Qb3MgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQV9DQ1JfVENJRV9Nc2sgICAgICAgKDB4MVVMIDw8IERNQV9DQ1JfVENJRV9Qb3MpICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIERNQV9DQ1JfVENJRSAgICAgICAgICAgRE1BX0NDUl9UQ0lFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc2ZlciBjb21wbGV0ZSBpbnRlcnJ1cHQgZW5hYmxlICAqLworI2RlZmluZSBETUFfQ0NSX0hUSUVfUG9zICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBETUFfQ0NSX0hUSUVfTXNrICAgICAgICgweDFVTCA8PCBETUFfQ0NSX0hUSUVfUG9zKSAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBETUFfQ0NSX0hUSUUgICAgICAgICAgIERNQV9DQ1JfSFRJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSGFsZiBUcmFuc2ZlciBpbnRlcnJ1cHQgZW5hYmxlICAgICAgKi8KKyNkZWZpbmUgRE1BX0NDUl9URUlFX1BvcyAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BX0NDUl9URUlFX01zayAgICAgICAoMHgxVUwgPDwgRE1BX0NDUl9URUlFX1BvcykgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgRE1BX0NDUl9URUlFICAgICAgICAgICBETUFfQ0NSX1RFSUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zZmVyIGVycm9yIGludGVycnVwdCBlbmFibGUgICAgICovCisjZGVmaW5lIERNQV9DQ1JfRElSX1BvcyAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQV9DQ1JfRElSX01zayAgICAgICAgKDB4MVVMIDw8IERNQV9DQ1JfRElSX1BvcykgICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIERNQV9DQ1JfRElSICAgICAgICAgICAgRE1BX0NDUl9ESVJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBEYXRhIHRyYW5zZmVyIGRpcmVjdGlvbiAgICAgICAgICAgICAqLworI2RlZmluZSBETUFfQ0NSX0NJUkNfUG9zICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBETUFfQ0NSX0NJUkNfTXNrICAgICAgICgweDFVTCA8PCBETUFfQ0NSX0NJUkNfUG9zKSAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBETUFfQ0NSX0NJUkMgICAgICAgICAgIERNQV9DQ1JfQ0lSQ19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2lyY3VsYXIgbW9kZSAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRE1BX0NDUl9QSU5DX1BvcyAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BX0NDUl9QSU5DX01zayAgICAgICAoMHgxVUwgPDwgRE1BX0NDUl9QSU5DX1BvcykgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgRE1BX0NDUl9QSU5DICAgICAgICAgICBETUFfQ0NSX1BJTkNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBlcmlwaGVyYWwgaW5jcmVtZW50IG1vZGUgICAgICAgICAgICovCisjZGVmaW5lIERNQV9DQ1JfTUlOQ19Qb3MgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQV9DQ1JfTUlOQ19Nc2sgICAgICAgKDB4MVVMIDw8IERNQV9DQ1JfTUlOQ19Qb3MpICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIERNQV9DQ1JfTUlOQyAgICAgICAgICAgRE1BX0NDUl9NSU5DX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBNZW1vcnkgaW5jcmVtZW50IG1vZGUgICAgICAgICAgICAgICAqLworCisjZGVmaW5lIERNQV9DQ1JfUFNJWkVfUG9zICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQV9DQ1JfUFNJWkVfTXNrICAgICAgKDB4M1VMIDw8IERNQV9DQ1JfUFNJWkVfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMzAwICovCisjZGVmaW5lIERNQV9DQ1JfUFNJWkUgICAgICAgICAgRE1BX0NDUl9QU0laRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQU0laRVsxOjBdIGJpdHMgKFBlcmlwaGVyYWwgc2l6ZSkgICAqLworI2RlZmluZSBETUFfQ0NSX1BTSVpFXzAgICAgICAgICgweDFVIDw8IERNQV9DQ1JfUFNJWkVfUG9zKSAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBETUFfQ0NSX1BTSVpFXzEgICAgICAgICgweDJVIDw8IERNQV9DQ1JfUFNJWkVfUG9zKSAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworCisjZGVmaW5lIERNQV9DQ1JfTVNJWkVfUG9zICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQV9DQ1JfTVNJWkVfTXNrICAgICAgKDB4M1VMIDw8IERNQV9DQ1JfTVNJWkVfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwQzAwICovCisjZGVmaW5lIERNQV9DQ1JfTVNJWkUgICAgICAgICAgRE1BX0NDUl9NU0laRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBNU0laRVsxOjBdIGJpdHMgKE1lbW9yeSBzaXplKSAgICAgICAqLworI2RlZmluZSBETUFfQ0NSX01TSVpFXzAgICAgICAgICgweDFVIDw8IERNQV9DQ1JfTVNJWkVfUG9zKSAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLworI2RlZmluZSBETUFfQ0NSX01TSVpFXzEgICAgICAgICgweDJVIDw8IERNQV9DQ1JfTVNJWkVfUG9zKSAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLworCisjZGVmaW5lIERNQV9DQ1JfUExfUG9zICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQV9DQ1JfUExfTXNrICAgICAgICAgKDB4M1VMIDw8IERNQV9DQ1JfUExfUG9zKSAgICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAzMDAwICovCisjZGVmaW5lIERNQV9DQ1JfUEwgICAgICAgICAgICAgRE1BX0NDUl9QTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQTFsxOjBdIGJpdHMoQ2hhbm5lbCBQcmlvcml0eSBsZXZlbCkqLworI2RlZmluZSBETUFfQ0NSX1BMXzAgICAgICAgICAgICgweDFVIDw8IERNQV9DQ1JfUExfUG9zKSAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBETUFfQ0NSX1BMXzEgICAgICAgICAgICgweDJVIDw8IERNQV9DQ1JfUExfUG9zKSAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLworCisjZGVmaW5lIERNQV9DQ1JfTUVNMk1FTV9Qb3MgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQV9DQ1JfTUVNMk1FTV9Nc2sgICAgKDB4MVVMIDw8IERNQV9DQ1JfTUVNMk1FTV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIERNQV9DQ1JfTUVNMk1FTSAgICAgICAgRE1BX0NDUl9NRU0yTUVNX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBNZW1vcnkgdG8gbWVtb3J5IG1vZGUgICAgICAgICAgICAgICAqLworCisvKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NORFRSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBETUFfQ05EVFJfTkRUX1BvcyAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBETUFfQ05EVFJfTkRUX01zayAgICAgICgweEZGRkZVTCA8PCBETUFfQ05EVFJfTkRUX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLworI2RlZmluZSBETUFfQ05EVFJfTkRUICAgICAgICAgIERNQV9DTkRUUl9ORFRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTnVtYmVyIG9mIGRhdGEgdG8gVHJhbnNmZXIgICAgICAgICAgKi8KKworLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DUEFSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgRE1BX0NQQVJfUEFfUG9zICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BX0NQQVJfUEFfTXNrICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IERNQV9DUEFSX1BBX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4RkZGRkZGRkYgKi8KKyNkZWZpbmUgRE1BX0NQQVJfUEEgICAgICAgICAgICBETUFfQ1BBUl9QQV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBlcmlwaGVyYWwgQWRkcmVzcyAgICAgICAgICAgICAgICAgICovCisKKy8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ01BUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIERNQV9DTUFSX01BX1BvcyAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQV9DTUFSX01BX01zayAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBETUFfQ01BUl9NQV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweEZGRkZGRkZGICovCisjZGVmaW5lIERNQV9DTUFSX01BICAgICAgICAgICAgRE1BX0NNQVJfTUFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBNZW1vcnkgQWRkcmVzcyAgICAgICAgICAgICAgICAgICAgICAqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICBETUFNVVggQ29udHJvbGxlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisvKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBETUFNVVhfQ3hDUiByZWdpc3RlciAgKioqKioqKioqKioqKiovCisjZGVmaW5lIERNQU1VWF9DeENSX0RNQVJFUV9JRF9Qb3MgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQU1VWF9DeENSX0RNQVJFUV9JRF9Nc2sgICAgICAgICAgICAgICgweEZGVUwgPDwgRE1BTVVYX0N4Q1JfRE1BUkVRX0lEX1BvcykgLyohPCAweDAwMDAwMEZGICovCisjZGVmaW5lIERNQU1VWF9DeENSX0RNQVJFUV9JRCAgICAgICAgICAgICAgICAgIERNQU1VWF9DeENSX0RNQVJFUV9JRF9Nc2sgICAgICAgLyohPCBETUEgUmVxdWVzdCBJRCAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRE1BTVVYX0N4Q1JfRE1BUkVRX0lEXzAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IERNQU1VWF9DeENSX0RNQVJFUV9JRF9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBETUFNVVhfQ3hDUl9ETUFSRVFfSURfMSAgICAgICAgICAgICAgICAoMHgwMlUgPDwgRE1BTVVYX0N4Q1JfRE1BUkVRX0lEX1BvcykgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIERNQU1VWF9DeENSX0RNQVJFUV9JRF8yICAgICAgICAgICAgICAgICgweDA0VSA8PCBETUFNVVhfQ3hDUl9ETUFSRVFfSURfUG9zKSAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgRE1BTVVYX0N4Q1JfRE1BUkVRX0lEXzMgICAgICAgICAgICAgICAgKDB4MDhVIDw8IERNQU1VWF9DeENSX0RNQVJFUV9JRF9Qb3MpIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBETUFNVVhfQ3hDUl9ETUFSRVFfSURfNCAgICAgICAgICAgICAgICAoMHgxMFUgPDwgRE1BTVVYX0N4Q1JfRE1BUkVRX0lEX1BvcykgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIERNQU1VWF9DeENSX0RNQVJFUV9JRF81ICAgICAgICAgICAgICAgICgweDIwVSA8PCBETUFNVVhfQ3hDUl9ETUFSRVFfSURfUG9zKSAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgRE1BTVVYX0N4Q1JfRE1BUkVRX0lEXzYgICAgICAgICAgICAgICAgKDB4NDBVIDw8IERNQU1VWF9DeENSX0RNQVJFUV9JRF9Qb3MpIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBETUFNVVhfQ3hDUl9ETUFSRVFfSURfNyAgICAgICAgICAgICAgICAoMHg4MFUgPDwgRE1BTVVYX0N4Q1JfRE1BUkVRX0lEX1BvcykgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIERNQU1VWF9DeENSX1NPSUVfUG9zICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQU1VWF9DeENSX1NPSUVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFNVVhfQ3hDUl9TT0lFX1BvcykgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIERNQU1VWF9DeENSX1NPSUUgICAgICAgICAgICAgICAgICAgICAgIERNQU1VWF9DeENSX1NPSUVfTXNrICAgICAgICAgICAgLyohPCBTeW5jaHJvIG92ZXJydW4gaW50ZXJydXB0IGVuYWJsZSAgICAgKi8KKyNkZWZpbmUgRE1BTVVYX0N4Q1JfRUdFX1BvcyAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BTVVYX0N4Q1JfRUdFX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERNQU1VWF9DeENSX0VHRV9Qb3MpICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgRE1BTVVYX0N4Q1JfRUdFICAgICAgICAgICAgICAgICAgICAgICAgRE1BTVVYX0N4Q1JfRUdFX01zayAgICAgICAgICAgICAvKiE8IEV2ZW50IGdlbmVyYXRpb24gaW50ZXJydXB0IGVuYWJsZSAgICAqLworI2RlZmluZSBETUFNVVhfQ3hDUl9TRV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBETUFNVVhfQ3hDUl9TRV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BTVVYX0N4Q1JfU0VfUG9zKSAgIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBETUFNVVhfQ3hDUl9TRSAgICAgICAgICAgICAgICAgICAgICAgICBETUFNVVhfQ3hDUl9TRV9Nc2sgICAgICAgICAgICAgIC8qITwgU3luY2hyb25pemF0aW9uIGVuYWJsZSAgICAgICAgICAgICAgICovCisjZGVmaW5lIERNQU1VWF9DeENSX1NQT0xfUG9zICAgICAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQU1VWF9DeENSX1NQT0xfTXNrICAgICAgICAgICAgICAgICAgICgweDNVTCA8PCBETUFNVVhfQ3hDUl9TUE9MX1BvcykgLyohPCAweDAwMDYwMDAwICovCisjZGVmaW5lIERNQU1VWF9DeENSX1NQT0wgICAgICAgICAgICAgICAgICAgICAgIERNQU1VWF9DeENSX1NQT0xfTXNrICAgICAgICAgICAgLyohPCBTeW5jaHJvbml6YXRpb24gcG9sYXJpdHkgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRE1BTVVYX0N4Q1JfU1BPTF8wICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BTVVYX0N4Q1JfU1BPTF9Qb3MpICAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgRE1BTVVYX0N4Q1JfU1BPTF8xICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgRE1BTVVYX0N4Q1JfU1BPTF9Qb3MpICAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgRE1BTVVYX0N4Q1JfTkJSRVFfUG9zICAgICAgICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BTVVYX0N4Q1JfTkJSRVFfTXNrICAgICAgICAgICAgICAgICAgKDB4MUZVTCA8PCBETUFNVVhfQ3hDUl9OQlJFUV9Qb3MpIC8qITwgMHgwMEY4MDAwMCAqLworI2RlZmluZSBETUFNVVhfQ3hDUl9OQlJFUSAgICAgICAgICAgICAgICAgICAgICBETUFNVVhfQ3hDUl9OQlJFUV9Nc2sgICAgICAgICAgIC8qITwgTnVtYmVyIG9mIHJlcXVlc3QgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIERNQU1VWF9DeENSX05CUkVRXzAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBETUFNVVhfQ3hDUl9OQlJFUV9Qb3MpIC8qITwgMHgwMDA4MDAwMCAqLworI2RlZmluZSBETUFNVVhfQ3hDUl9OQlJFUV8xICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgRE1BTVVYX0N4Q1JfTkJSRVFfUG9zKSAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgRE1BTVVYX0N4Q1JfTkJSRVFfMiAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IERNQU1VWF9DeENSX05CUkVRX1BvcykgLyohPCAweDAwMjAwMDAwICovCisjZGVmaW5lIERNQU1VWF9DeENSX05CUkVRXzMgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBETUFNVVhfQ3hDUl9OQlJFUV9Qb3MpIC8qITwgMHgwMDQwMDAwMCAqLworI2RlZmluZSBETUFNVVhfQ3hDUl9OQlJFUV80ICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgRE1BTVVYX0N4Q1JfTkJSRVFfUG9zKSAvKiE8IDB4MDA4MDAwMDAgKi8KKyNkZWZpbmUgRE1BTVVYX0N4Q1JfU1lOQ19JRF9Qb3MgICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BTVVYX0N4Q1JfU1lOQ19JRF9Nc2sgICAgICAgICAgICAgICAgKDB4MUZVTCA8PCBETUFNVVhfQ3hDUl9TWU5DX0lEX1BvcykgLyohPCAweDFGMDAwMDAwICovCisjZGVmaW5lIERNQU1VWF9DeENSX1NZTkNfSUQgICAgICAgICAgICAgICAgICAgIERNQU1VWF9DeENSX1NZTkNfSURfTXNrICAgICAgICAgLyohPCBTeW5jaHJvbml6YXRpb24gSUQgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRE1BTVVYX0N4Q1JfU1lOQ19JRF8wICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IERNQU1VWF9DeENSX1NZTkNfSURfUG9zKSAvKiE8IDB4MDEwMDAwMDAgKi8KKyNkZWZpbmUgRE1BTVVYX0N4Q1JfU1lOQ19JRF8xICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IERNQU1VWF9DeENSX1NZTkNfSURfUG9zKSAvKiE8IDB4MDIwMDAwMDAgKi8KKyNkZWZpbmUgRE1BTVVYX0N4Q1JfU1lOQ19JRF8yICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IERNQU1VWF9DeENSX1NZTkNfSURfUG9zKSAvKiE8IDB4MDQwMDAwMDAgKi8KKyNkZWZpbmUgRE1BTVVYX0N4Q1JfU1lOQ19JRF8zICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IERNQU1VWF9DeENSX1NZTkNfSURfUG9zKSAvKiE8IDB4MDgwMDAwMDAgKi8KKyNkZWZpbmUgRE1BTVVYX0N4Q1JfU1lOQ19JRF80ICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IERNQU1VWF9DeENSX1NZTkNfSURfUG9zKSAvKiE8IDB4MTAwMDAwMDAgKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgRE1BTVVYX0NTUiByZWdpc3RlciAgKioqKioqKioqKioqKiovCisjZGVmaW5lIERNQU1VWF9DU1JfU09GMF9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQU1VWF9DU1JfU09GMF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFNVVhfQ1NSX1NPRjBfUG9zKSAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIERNQU1VWF9DU1JfU09GMCAgICAgICAgICAgICAgICAgICAgICAgIERNQU1VWF9DU1JfU09GMF9Nc2sgICAgICAgICAgICAgLyohPCBTeW5jaHJvbml6YXRpb24gT3ZlcnJ1biBGbGFnIDAgICAgICAgKi8KKyNkZWZpbmUgRE1BTVVYX0NTUl9TT0YxX1BvcyAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BTVVYX0NTUl9TT0YxX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERNQU1VWF9DU1JfU09GMV9Qb3MpICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgRE1BTVVYX0NTUl9TT0YxICAgICAgICAgICAgICAgICAgICAgICAgRE1BTVVYX0NTUl9TT0YxX01zayAgICAgICAgICAgICAvKiE8IFN5bmNocm9uaXphdGlvbiBPdmVycnVuIEZsYWcgMSAgICAgICAqLworI2RlZmluZSBETUFNVVhfQ1NSX1NPRjJfUG9zICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBETUFNVVhfQ1NSX1NPRjJfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BTVVYX0NTUl9TT0YyX1BvcykgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBETUFNVVhfQ1NSX1NPRjIgICAgICAgICAgICAgICAgICAgICAgICBETUFNVVhfQ1NSX1NPRjJfTXNrICAgICAgICAgICAgIC8qITwgU3luY2hyb25pemF0aW9uIE92ZXJydW4gRmxhZyAyICAgICAgICovCisjZGVmaW5lIERNQU1VWF9DU1JfU09GM19Qb3MgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQU1VWF9DU1JfU09GM19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFNVVhfQ1NSX1NPRjNfUG9zKSAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIERNQU1VWF9DU1JfU09GMyAgICAgICAgICAgICAgICAgICAgICAgIERNQU1VWF9DU1JfU09GM19Nc2sgICAgICAgICAgICAgLyohPCBTeW5jaHJvbml6YXRpb24gT3ZlcnJ1biBGbGFnIDMgICAgICAgKi8KKyNkZWZpbmUgRE1BTVVYX0NTUl9TT0Y0X1BvcyAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BTVVYX0NTUl9TT0Y0X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERNQU1VWF9DU1JfU09GNF9Qb3MpICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgRE1BTVVYX0NTUl9TT0Y0ICAgICAgICAgICAgICAgICAgICAgICAgRE1BTVVYX0NTUl9TT0Y0X01zayAgICAgICAgICAgICAvKiE8IFN5bmNocm9uaXphdGlvbiBPdmVycnVuIEZsYWcgNCAgICAgICAqLworI2RlZmluZSBETUFNVVhfQ1NSX1NPRjVfUG9zICAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBETUFNVVhfQ1NSX1NPRjVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BTVVYX0NTUl9TT0Y1X1BvcykgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBETUFNVVhfQ1NSX1NPRjUgICAgICAgICAgICAgICAgICAgICAgICBETUFNVVhfQ1NSX1NPRjVfTXNrICAgICAgICAgICAgIC8qITwgU3luY2hyb25pemF0aW9uIE92ZXJydW4gRmxhZyA1ICAgICAgICovCisjZGVmaW5lIERNQU1VWF9DU1JfU09GNl9Qb3MgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQU1VWF9DU1JfU09GNl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFNVVhfQ1NSX1NPRjZfUG9zKSAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIERNQU1VWF9DU1JfU09GNiAgICAgICAgICAgICAgICAgICAgICAgIERNQU1VWF9DU1JfU09GNl9Nc2sgICAgICAgICAgICAgLyohPCBTeW5jaHJvbml6YXRpb24gT3ZlcnJ1biBGbGFnIDYgICAgICAgKi8KKyNkZWZpbmUgRE1BTVVYX0NTUl9TT0Y3X1BvcyAgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BTVVYX0NTUl9TT0Y3X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERNQU1VWF9DU1JfU09GN19Qb3MpICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgRE1BTVVYX0NTUl9TT0Y3ICAgICAgICAgICAgICAgICAgICAgICAgRE1BTVVYX0NTUl9TT0Y3X01zayAgICAgICAgICAgICAvKiE8IFN5bmNocm9uaXphdGlvbiBPdmVycnVuIEZsYWcgNyAgICAgICAqLworI2RlZmluZSBETUFNVVhfQ1NSX1NPRjhfUG9zICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBETUFNVVhfQ1NSX1NPRjhfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BTVVYX0NTUl9TT0Y4X1BvcykgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBETUFNVVhfQ1NSX1NPRjggICAgICAgICAgICAgICAgICAgICAgICBETUFNVVhfQ1NSX1NPRjhfTXNrICAgICAgICAgICAgIC8qITwgU3luY2hyb25pemF0aW9uIE92ZXJydW4gRmxhZyA4ICAgICAgICovCisjZGVmaW5lIERNQU1VWF9DU1JfU09GOV9Qb3MgICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQU1VWF9DU1JfU09GOV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFNVVhfQ1NSX1NPRjlfUG9zKSAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIERNQU1VWF9DU1JfU09GOSAgICAgICAgICAgICAgICAgICAgICAgIERNQU1VWF9DU1JfU09GOV9Nc2sgICAgICAgICAgICAgLyohPCBTeW5jaHJvbml6YXRpb24gT3ZlcnJ1biBGbGFnIDkgICAgICAgKi8KKyNkZWZpbmUgRE1BTVVYX0NTUl9TT0YxMF9Qb3MgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BTVVYX0NTUl9TT0YxMF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERNQU1VWF9DU1JfU09GMTBfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgRE1BTVVYX0NTUl9TT0YxMCAgICAgICAgICAgICAgICAgICAgICAgRE1BTVVYX0NTUl9TT0YxMF9Nc2sgICAgICAgICAgICAvKiE8IFN5bmNocm9uaXphdGlvbiBPdmVycnVuIEZsYWcgMTAgICAgICAqLworI2RlZmluZSBETUFNVVhfQ1NSX1NPRjExX1BvcyAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBETUFNVVhfQ1NSX1NPRjExX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BTVVYX0NTUl9TT0YxMV9Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLworI2RlZmluZSBETUFNVVhfQ1NSX1NPRjExICAgICAgICAgICAgICAgICAgICAgICBETUFNVVhfQ1NSX1NPRjExX01zayAgICAgICAgICAgIC8qITwgU3luY2hyb25pemF0aW9uIE92ZXJydW4gRmxhZyAxMSAgICAgICovCisjZGVmaW5lIERNQU1VWF9DU1JfU09GMTJfUG9zICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQU1VWF9DU1JfU09GMTJfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFNVVhfQ1NSX1NPRjEyX1BvcykgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIERNQU1VWF9DU1JfU09GMTIgICAgICAgICAgICAgICAgICAgICAgIERNQU1VWF9DU1JfU09GMTJfTXNrICAgICAgICAgICAgLyohPCBTeW5jaHJvbml6YXRpb24gT3ZlcnJ1biBGbGFnIDEyICAgICAgKi8KKyNkZWZpbmUgRE1BTVVYX0NTUl9TT0YxM19Qb3MgICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BTVVYX0NTUl9TT0YxM19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERNQU1VWF9DU1JfU09GMTNfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgRE1BTVVYX0NTUl9TT0YxMyAgICAgICAgICAgICAgICAgICAgICAgRE1BTVVYX0NTUl9TT0YxM19Nc2sgICAgICAgICAgICAvKiE8IFN5bmNocm9uaXphdGlvbiBPdmVycnVuIEZsYWcgMTMgICAgICAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgRE1BTVVYX0NGUiByZWdpc3RlciAgKioqKioqKioqKioqKiovCisjZGVmaW5lIERNQU1VWF9DRlJfQ1NPRjBfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQU1VWF9DRlJfQ1NPRjBfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFNVVhfQ0ZSX0NTT0YwX1BvcykgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIERNQU1VWF9DRlJfQ1NPRjAgICAgICAgICAgICAgICAgICAgICAgIERNQU1VWF9DRlJfQ1NPRjBfTXNrICAgICAgICAgICAgLyohPCBDbGVhciBPdmVycnVuIEZsYWcgMCAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRE1BTVVYX0NGUl9DU09GMV9Qb3MgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BTVVYX0NGUl9DU09GMV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERNQU1VWF9DRlJfQ1NPRjFfUG9zKSAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgRE1BTVVYX0NGUl9DU09GMSAgICAgICAgICAgICAgICAgICAgICAgRE1BTVVYX0NGUl9DU09GMV9Nc2sgICAgICAgICAgICAvKiE8IENsZWFyIE92ZXJydW4gRmxhZyAxICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBETUFNVVhfQ0ZSX0NTT0YyX1BvcyAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBETUFNVVhfQ0ZSX0NTT0YyX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BTVVYX0NGUl9DU09GMl9Qb3MpIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBETUFNVVhfQ0ZSX0NTT0YyICAgICAgICAgICAgICAgICAgICAgICBETUFNVVhfQ0ZSX0NTT0YyX01zayAgICAgICAgICAgIC8qITwgQ2xlYXIgT3ZlcnJ1biBGbGFnIDIgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIERNQU1VWF9DRlJfQ1NPRjNfUG9zICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQU1VWF9DRlJfQ1NPRjNfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFNVVhfQ0ZSX0NTT0YzX1BvcykgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIERNQU1VWF9DRlJfQ1NPRjMgICAgICAgICAgICAgICAgICAgICAgIERNQU1VWF9DRlJfQ1NPRjNfTXNrICAgICAgICAgICAgLyohPCBDbGVhciBPdmVycnVuIEZsYWcgMyAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRE1BTVVYX0NGUl9DU09GNF9Qb3MgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BTVVYX0NGUl9DU09GNF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERNQU1VWF9DRlJfQ1NPRjRfUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgRE1BTVVYX0NGUl9DU09GNCAgICAgICAgICAgICAgICAgICAgICAgRE1BTVVYX0NGUl9DU09GNF9Nc2sgICAgICAgICAgICAvKiE8IENsZWFyIE92ZXJydW4gRmxhZyA0ICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBETUFNVVhfQ0ZSX0NTT0Y1X1BvcyAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBETUFNVVhfQ0ZSX0NTT0Y1X01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BTVVYX0NGUl9DU09GNV9Qb3MpIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBETUFNVVhfQ0ZSX0NTT0Y1ICAgICAgICAgICAgICAgICAgICAgICBETUFNVVhfQ0ZSX0NTT0Y1X01zayAgICAgICAgICAgIC8qITwgQ2xlYXIgT3ZlcnJ1biBGbGFnIDUgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIERNQU1VWF9DRlJfQ1NPRjZfUG9zICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQU1VWF9DRlJfQ1NPRjZfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFNVVhfQ0ZSX0NTT0Y2X1BvcykgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIERNQU1VWF9DRlJfQ1NPRjYgICAgICAgICAgICAgICAgICAgICAgIERNQU1VWF9DRlJfQ1NPRjZfTXNrICAgICAgICAgICAgLyohPCBDbGVhciBPdmVycnVuIEZsYWcgNiAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRE1BTVVYX0NGUl9DU09GN19Qb3MgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BTVVYX0NGUl9DU09GN19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERNQU1VWF9DRlJfQ1NPRjdfUG9zKSAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgRE1BTVVYX0NGUl9DU09GNyAgICAgICAgICAgICAgICAgICAgICAgRE1BTVVYX0NGUl9DU09GN19Nc2sgICAgICAgICAgICAvKiE8IENsZWFyIE92ZXJydW4gRmxhZyA3ICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBETUFNVVhfQ0ZSX0NTT0Y4X1BvcyAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBETUFNVVhfQ0ZSX0NTT0Y4X01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BTVVYX0NGUl9DU09GOF9Qb3MpIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBETUFNVVhfQ0ZSX0NTT0Y4ICAgICAgICAgICAgICAgICAgICAgICBETUFNVVhfQ0ZSX0NTT0Y4X01zayAgICAgICAgICAgIC8qITwgQ2xlYXIgT3ZlcnJ1biBGbGFnIDggICAgICAgICAgICAgICAgICovCisjZGVmaW5lIERNQU1VWF9DRlJfQ1NPRjlfUG9zICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQU1VWF9DRlJfQ1NPRjlfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFNVVhfQ0ZSX0NTT0Y5X1BvcykgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIERNQU1VWF9DRlJfQ1NPRjkgICAgICAgICAgICAgICAgICAgICAgIERNQU1VWF9DRlJfQ1NPRjlfTXNrICAgICAgICAgICAgLyohPCBDbGVhciBPdmVycnVuIEZsYWcgOSAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRE1BTVVYX0NGUl9DU09GMTBfUG9zICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BTVVYX0NGUl9DU09GMTBfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERNQU1VWF9DRlJfQ1NPRjEwX1BvcykgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIERNQU1VWF9DRlJfQ1NPRjEwICAgICAgICAgICAgICAgICAgICAgIERNQU1VWF9DRlJfQ1NPRjEwX01zayAgICAgICAgICAgLyohPCBDbGVhciBPdmVycnVuIEZsYWcgMTAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRE1BTVVYX0NGUl9DU09GMTFfUG9zICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BTVVYX0NGUl9DU09GMTFfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERNQU1VWF9DRlJfQ1NPRjExX1BvcykgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIERNQU1VWF9DRlJfQ1NPRjExICAgICAgICAgICAgICAgICAgICAgIERNQU1VWF9DRlJfQ1NPRjExX01zayAgICAgICAgICAgLyohPCBDbGVhciBPdmVycnVuIEZsYWcgMTEgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRE1BTVVYX0NGUl9DU09GMTJfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BTVVYX0NGUl9DU09GMTJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERNQU1VWF9DRlJfQ1NPRjEyX1BvcykgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIERNQU1VWF9DRlJfQ1NPRjEyICAgICAgICAgICAgICAgICAgICAgIERNQU1VWF9DRlJfQ1NPRjEyX01zayAgICAgICAgICAgLyohPCBDbGVhciBPdmVycnVuIEZsYWcgMTIgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRE1BTVVYX0NGUl9DU09GMTNfUG9zICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BTVVYX0NGUl9DU09GMTNfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERNQU1VWF9DRlJfQ1NPRjEzX1BvcykgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIERNQU1VWF9DRlJfQ1NPRjEzICAgICAgICAgICAgICAgICAgICAgIERNQU1VWF9DRlJfQ1NPRjEzX01zayAgICAgICAgICAgLyohPCBDbGVhciBPdmVycnVuIEZsYWcgMTMgICAgICAgICAgICAgICAgKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIERNQU1VWF9SR3hDUiByZWdpc3RlciAgKioqKioqKioqKioqLworI2RlZmluZSBETUFNVVhfUkd4Q1JfU0lHX0lEX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBETUFNVVhfUkd4Q1JfU0lHX0lEX01zayAgICAgICAgICAgICAgICAoMHgxRlVMIDw8IERNQU1VWF9SR3hDUl9TSUdfSURfUG9zKSAvKiE8IDB4MDAwMDAwMUYgKi8KKyNkZWZpbmUgRE1BTVVYX1JHeENSX1NJR19JRCAgICAgICAgICAgICAgICAgICAgRE1BTVVYX1JHeENSX1NJR19JRF9Nc2sgICAgICAgICAvKiE8IFNpZ25hbCBJRCAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBETUFNVVhfUkd4Q1JfU0lHX0lEXzAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgRE1BTVVYX1JHeENSX1NJR19JRF9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBETUFNVVhfUkd4Q1JfU0lHX0lEXzEgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgRE1BTVVYX1JHeENSX1NJR19JRF9Qb3MpIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBETUFNVVhfUkd4Q1JfU0lHX0lEXzIgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgRE1BTVVYX1JHeENSX1NJR19JRF9Qb3MpIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBETUFNVVhfUkd4Q1JfU0lHX0lEXzMgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgRE1BTVVYX1JHeENSX1NJR19JRF9Qb3MpIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBETUFNVVhfUkd4Q1JfU0lHX0lEXzQgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgRE1BTVVYX1JHeENSX1NJR19JRF9Qb3MpIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBETUFNVVhfUkd4Q1JfT0lFX1BvcyAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBETUFNVVhfUkd4Q1JfT0lFX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BTVVYX1JHeENSX09JRV9Qb3MpIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBETUFNVVhfUkd4Q1JfT0lFICAgICAgICAgICAgICAgICAgICAgICBETUFNVVhfUkd4Q1JfT0lFX01zayAgICAgICAgICAgIC8qITwgT3ZlcnJ1biBpbnRlcnJ1cHQgZW5hYmxlICAgICAgICAgICAgICovCisjZGVmaW5lIERNQU1VWF9SR3hDUl9HRV9Qb3MgICAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQU1VWF9SR3hDUl9HRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFNVVhfUkd4Q1JfR0VfUG9zKSAgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIERNQU1VWF9SR3hDUl9HRSAgICAgICAgICAgICAgICAgICAgICAgIERNQU1VWF9SR3hDUl9HRV9Nc2sgICAgICAgICAgICAgLyohPCBHZW5lcmF0aW9uIGVuYWJsZSAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRE1BTVVYX1JHeENSX0dQT0xfUG9zICAgICAgICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BTVVYX1JHeENSX0dQT0xfTXNrICAgICAgICAgICAgICAgICAgKDB4M1VMIDw8IERNQU1VWF9SR3hDUl9HUE9MX1BvcykgLyohPCAweDAwMDYwMDAwICovCisjZGVmaW5lIERNQU1VWF9SR3hDUl9HUE9MICAgICAgICAgICAgICAgICAgICAgIERNQU1VWF9SR3hDUl9HUE9MX01zayAgICAgICAgICAgLyohPCBHZW5lcmF0aW9uIHBvbGFyaXR5ICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRE1BTVVYX1JHeENSX0dQT0xfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BTVVYX1JHeENSX0dQT0xfUG9zKSAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgRE1BTVVYX1JHeENSX0dQT0xfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgRE1BTVVYX1JHeENSX0dQT0xfUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgRE1BTVVYX1JHeENSX0dOQlJFUV9Qb3MgICAgICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BTVVYX1JHeENSX0dOQlJFUV9Nc2sgICAgICAgICAgICAgICAgKDB4MUZVTCA8PCBETUFNVVhfUkd4Q1JfR05CUkVRX1BvcykgLyohPCAweDAwRjgwMDAwICovCisjZGVmaW5lIERNQU1VWF9SR3hDUl9HTkJSRVEgICAgICAgICAgICAgICAgICAgIERNQU1VWF9SR3hDUl9HTkJSRVFfTXNrICAgICAgICAgIC8qITwgTnVtYmVyIG9mIHJlcXVlc3QgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIERNQU1VWF9SR3hDUl9HTkJSRVFfMCAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBETUFNVVhfUkd4Q1JfR05CUkVRX1BvcykgLyohPCAweDAwMDgwMDAwICovCisjZGVmaW5lIERNQU1VWF9SR3hDUl9HTkJSRVFfMSAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBETUFNVVhfUkd4Q1JfR05CUkVRX1BvcykgLyohPCAweDAwMTAwMDAwICovCisjZGVmaW5lIERNQU1VWF9SR3hDUl9HTkJSRVFfMiAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBETUFNVVhfUkd4Q1JfR05CUkVRX1BvcykgLyohPCAweDAwMjAwMDAwICovCisjZGVmaW5lIERNQU1VWF9SR3hDUl9HTkJSRVFfMyAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBETUFNVVhfUkd4Q1JfR05CUkVRX1BvcykgLyohPCAweDAwNDAwMDAwICovCisjZGVmaW5lIERNQU1VWF9SR3hDUl9HTkJSRVFfNCAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBETUFNVVhfUkd4Q1JfR05CUkVRX1BvcykgLyohPCAweDAwODAwMDAwICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBETUFNVVhfUkdTUiByZWdpc3RlciAgKioqKioqKioqKioqKiovCisjZGVmaW5lIERNQU1VWF9SR1NSX09GMF9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQU1VWF9SR1NSX09GMF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFNVVhfUkdTUl9PRjBfUG9zKSAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIERNQU1VWF9SR1NSX09GMCAgICAgICAgICAgICAgICAgICAgICAgIERNQU1VWF9SR1NSX09GMF9Nc2sgICAgICAgICAgICAgLyohPCBPdmVycnVuIGZsYWcgMCAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRE1BTVVYX1JHU1JfT0YxX1BvcyAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRE1BTVVYX1JHU1JfT0YxX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERNQU1VWF9SR1NSX09GMV9Qb3MpICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgRE1BTVVYX1JHU1JfT0YxICAgICAgICAgICAgICAgICAgICAgICAgRE1BTVVYX1JHU1JfT0YxX01zayAgICAgICAgICAgICAvKiE8IE92ZXJydW4gZmxhZyAxICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBETUFNVVhfUkdTUl9PRjJfUG9zICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBETUFNVVhfUkdTUl9PRjJfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BTVVYX1JHU1JfT0YyX1BvcykgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBETUFNVVhfUkdTUl9PRjIgICAgICAgICAgICAgICAgICAgICAgICBETUFNVVhfUkdTUl9PRjJfTXNrICAgICAgICAgICAgIC8qITwgT3ZlcnJ1biBmbGFnIDIgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIERNQU1VWF9SR1NSX09GM19Qb3MgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQU1VWF9SR1NSX09GM19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFNVVhfUkdTUl9PRjNfUG9zKSAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIERNQU1VWF9SR1NSX09GMyAgICAgICAgICAgICAgICAgICAgICAgIERNQU1VWF9SR1NSX09GM19Nc2sgICAgICAgICAgICAgLyohPCBPdmVycnVuIGZsYWcgMyAgICAgICAgICAgICAgICAgICAgICAgKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIERNQU1VWF9SR0NGUiByZWdpc3RlciAgKioqKioqKioqKioqKiovCisjZGVmaW5lIERNQU1VWF9SR0NGUl9DT0YwX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQU1VWF9SR0NGUl9DT0YwX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFNVVhfUkdDRlJfQ09GMF9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBETUFNVVhfUkdDRlJfQ09GMCAgICAgICAgICAgICAgICAgICAgICBETUFNVVhfUkdDRlJfQ09GMF9Nc2sgICAgICAgICAgIC8qITwgQ2xlYXIgT3ZlcnJ1biBmbGFnIDAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIERNQU1VWF9SR0NGUl9DT0YxX1BvcyAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQU1VWF9SR0NGUl9DT0YxX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFNVVhfUkdDRlJfQ09GMV9Qb3MpIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBETUFNVVhfUkdDRlJfQ09GMSAgICAgICAgICAgICAgICAgICAgICBETUFNVVhfUkdDRlJfQ09GMV9Nc2sgICAgICAgICAgIC8qITwgQ2xlYXIgT3ZlcnJ1biBmbGFnIDEgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIERNQU1VWF9SR0NGUl9DT0YyX1BvcyAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQU1VWF9SR0NGUl9DT0YyX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFNVVhfUkdDRlJfQ09GMl9Qb3MpIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBETUFNVVhfUkdDRlJfQ09GMiAgICAgICAgICAgICAgICAgICAgICBETUFNVVhfUkdDRlJfQ09GMl9Nc2sgICAgICAgICAgIC8qITwgQ2xlYXIgT3ZlcnJ1biBmbGFnIDIgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIERNQU1VWF9SR0NGUl9DT0YzX1BvcyAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIERNQU1VWF9SR0NGUl9DT0YzX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFNVVhfUkdDRlJfQ09GM19Qb3MpIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBETUFNVVhfUkdDRlJfQ09GMyAgICAgICAgICAgICAgICAgICAgICBETUFNVVhfUkdDRlJfQ09GM19Nc2sgICAgICAgICAgIC8qITwgQ2xlYXIgT3ZlcnJ1biBmbGFnIDMgICAgICAgICAgICAgICAgICovCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyogICAgICAgICAgICAgICAgICAgIEV4dGVybmFsIEludGVycnVwdC9FdmVudCBDb250cm9sbGVyICAgICAgICAgICAgICAgICAgICAgKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisvKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRVhUSV9SVFNSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBFWFRJX1JUU1IxX1JUX1BvcyAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfUlRTUjFfUlRfTXNrICAgICAgICAoMHg4MDNGRkZGRlVMIDw8IEVYVElfUlRTUjFfUlRfUG9zKSAgICAgICAgICAgLyohPCAweDgwM0ZGRkZGICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQgICAgICAgICAgICBFWFRJX1JUU1IxX1JUX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCAqLworI2RlZmluZSBFWFRJX1JUU1IxX1JUMF9Qb3MgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX1JUU1IxX1JUMF9Nc2sgICAgICAgKDB4MVVMIDw8IEVYVElfUlRTUjFfUlQwX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBFWFRJX1JUU1IxX1JUMCAgICAgICAgICAgRVhUSV9SVFNSMV9SVDBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAwICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxX1BvcyAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxX01zayAgICAgICAoMHgxVUwgPDwgRVhUSV9SVFNSMV9SVDFfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxICAgICAgICAgICBFWFRJX1JUU1IxX1JUMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDEgKi8KKyNkZWZpbmUgRVhUSV9SVFNSMV9SVDJfUG9zICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9SVFNSMV9SVDJfTXNrICAgICAgICgweDFVTCA8PCBFWFRJX1JUU1IxX1JUMl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgRVhUSV9SVFNSMV9SVDIgICAgICAgICAgIEVYVElfUlRTUjFfUlQyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMiAqLworI2RlZmluZSBFWFRJX1JUU1IxX1JUM19Qb3MgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX1JUU1IxX1JUM19Nc2sgICAgICAgKDB4MVVMIDw8IEVYVElfUlRTUjFfUlQzX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBFWFRJX1JUU1IxX1JUMyAgICAgICAgICAgRVhUSV9SVFNSMV9SVDNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAzICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQ0X1BvcyAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfUlRTUjFfUlQ0X01zayAgICAgICAoMHgxVUwgPDwgRVhUSV9SVFNSMV9SVDRfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQ0ICAgICAgICAgICBFWFRJX1JUU1IxX1JUNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDQgKi8KKyNkZWZpbmUgRVhUSV9SVFNSMV9SVDVfUG9zICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9SVFNSMV9SVDVfTXNrICAgICAgICgweDFVTCA8PCBFWFRJX1JUU1IxX1JUNV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgRVhUSV9SVFNSMV9SVDUgICAgICAgICAgIEVYVElfUlRTUjFfUlQ1X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgNSAqLworI2RlZmluZSBFWFRJX1JUU1IxX1JUNl9Qb3MgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX1JUU1IxX1JUNl9Nc2sgICAgICAgKDB4MVVMIDw8IEVYVElfUlRTUjFfUlQ2X1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBFWFRJX1JUU1IxX1JUNiAgICAgICAgICAgRVhUSV9SVFNSMV9SVDZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA2ICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQ3X1BvcyAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfUlRTUjFfUlQ3X01zayAgICAgICAoMHgxVUwgPDwgRVhUSV9SVFNSMV9SVDdfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQ3ICAgICAgICAgICBFWFRJX1JUU1IxX1JUN19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDcgKi8KKyNkZWZpbmUgRVhUSV9SVFNSMV9SVDhfUG9zICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9SVFNSMV9SVDhfTXNrICAgICAgICgweDFVTCA8PCBFWFRJX1JUU1IxX1JUOF9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgRVhUSV9SVFNSMV9SVDggICAgICAgICAgIEVYVElfUlRTUjFfUlQ4X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgOCAqLworI2RlZmluZSBFWFRJX1JUU1IxX1JUOV9Qb3MgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX1JUU1IxX1JUOV9Nc2sgICAgICAgKDB4MVVMIDw8IEVYVElfUlRTUjFfUlQ5X1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBFWFRJX1JUU1IxX1JUOSAgICAgICAgICAgRVhUSV9SVFNSMV9SVDlfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA5ICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxMF9Qb3MgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxMF9Nc2sgICAgICAoMHgxVUwgPDwgRVhUSV9SVFNSMV9SVDEwX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxMCAgICAgICAgICBFWFRJX1JUU1IxX1JUMTBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDEwICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxMV9Qb3MgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxMV9Nc2sgICAgICAoMHgxVUwgPDwgRVhUSV9SVFNSMV9SVDExX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxMSAgICAgICAgICBFWFRJX1JUU1IxX1JUMTFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDExICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxMl9Qb3MgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxMl9Nc2sgICAgICAoMHgxVUwgPDwgRVhUSV9SVFNSMV9SVDEyX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxMiAgICAgICAgICBFWFRJX1JUU1IxX1JUMTJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDEyICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxM19Qb3MgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxM19Nc2sgICAgICAoMHgxVUwgPDwgRVhUSV9SVFNSMV9SVDEzX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxMyAgICAgICAgICBFWFRJX1JUU1IxX1JUMTNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDEzICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxNF9Qb3MgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxNF9Nc2sgICAgICAoMHgxVUwgPDwgRVhUSV9SVFNSMV9SVDE0X1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxNCAgICAgICAgICBFWFRJX1JUU1IxX1JUMTRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDE0ICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxNV9Qb3MgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxNV9Nc2sgICAgICAoMHgxVUwgPDwgRVhUSV9SVFNSMV9SVDE1X1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxNSAgICAgICAgICBFWFRJX1JUU1IxX1JUMTVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDE1ICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxNl9Qb3MgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxNl9Nc2sgICAgICAoMHgxVUwgPDwgRVhUSV9SVFNSMV9SVDE2X1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxNiAgICAgICAgICBFWFRJX1JUU1IxX1JUMTZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDE2ICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxN19Qb3MgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxN19Nc2sgICAgICAoMHgxVUwgPDwgRVhUSV9SVFNSMV9SVDE3X1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxNyAgICAgICAgICBFWFRJX1JUU1IxX1JUMTdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDE3ICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxOF9Qb3MgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxOF9Nc2sgICAgICAoMHgxVUwgPDwgRVhUSV9SVFNSMV9SVDE4X1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxOCAgICAgICAgICBFWFRJX1JUU1IxX1JUMThfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDE4ICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxOV9Qb3MgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxOV9Nc2sgICAgICAoMHgxVUwgPDwgRVhUSV9SVFNSMV9SVDE5X1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQxOSAgICAgICAgICBFWFRJX1JUU1IxX1JUMTlfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDE5ICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQyMF9Qb3MgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfUlRTUjFfUlQyMF9Nc2sgICAgICAoMHgxVUwgPDwgRVhUSV9SVFNSMV9SVDIwX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQyMCAgICAgICAgICBFWFRJX1JUU1IxX1JUMjBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDIwICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQyMV9Qb3MgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfUlRTUjFfUlQyMV9Nc2sgICAgICAoMHgxVUwgPDwgRVhUSV9SVFNSMV9SVDIxX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQyMSAgICAgICAgICBFWFRJX1JUU1IxX1JUMjFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDIxICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQzMV9Qb3MgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfUlRTUjFfUlQzMV9Nc2sgICAgICAoMHgxVUwgPDwgRVhUSV9SVFNSMV9SVDMxX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDgwMDAwMDAwICovCisjZGVmaW5lIEVYVElfUlRTUjFfUlQzMSAgICAgICAgICBFWFRJX1JUU1IxX1JUMzFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDMxICovCisKKy8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBFWFRJX0ZUU1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIEVYVElfRlRTUjFfRlRfUG9zICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9GVFNSMV9GVF9Nc2sgICAgICAgICgweDgwM0ZGRkZGVUwgPDwgRVhUSV9GVFNSMV9GVF9Qb3MpICAgICAgICAgICAvKiE8IDB4ODAzRkZGRkYgKi8KKyNkZWZpbmUgRVhUSV9GVFNSMV9GVCAgICAgICAgICAgIEVYVElfRlRTUjFfRlRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCAqLworI2RlZmluZSBFWFRJX0ZUU1IxX0ZUMF9Qb3MgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0ZUU1IxX0ZUMF9Nc2sgICAgICAgKDB4MVVMIDw8IEVYVElfRlRTUjFfRlQwX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBFWFRJX0ZUU1IxX0ZUMCAgICAgICAgICAgRVhUSV9GVFNSMV9GVDBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMCAqLworI2RlZmluZSBFWFRJX0ZUU1IxX0ZUMV9Qb3MgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0ZUU1IxX0ZUMV9Nc2sgICAgICAgKDB4MVVMIDw8IEVYVElfRlRTUjFfRlQxX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBFWFRJX0ZUU1IxX0ZUMSAgICAgICAgICAgRVhUSV9GVFNSMV9GVDFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMSAqLworI2RlZmluZSBFWFRJX0ZUU1IxX0ZUMl9Qb3MgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0ZUU1IxX0ZUMl9Nc2sgICAgICAgKDB4MVVMIDw8IEVYVElfRlRTUjFfRlQyX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBFWFRJX0ZUU1IxX0ZUMiAgICAgICAgICAgRVhUSV9GVFNSMV9GVDJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMiAqLworI2RlZmluZSBFWFRJX0ZUU1IxX0ZUM19Qb3MgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0ZUU1IxX0ZUM19Nc2sgICAgICAgKDB4MVVMIDw8IEVYVElfRlRTUjFfRlQzX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBFWFRJX0ZUU1IxX0ZUMyAgICAgICAgICAgRVhUSV9GVFNSMV9GVDNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMyAqLworI2RlZmluZSBFWFRJX0ZUU1IxX0ZUNF9Qb3MgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0ZUU1IxX0ZUNF9Nc2sgICAgICAgKDB4MVVMIDw8IEVYVElfRlRTUjFfRlQ0X1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBFWFRJX0ZUU1IxX0ZUNCAgICAgICAgICAgRVhUSV9GVFNSMV9GVDRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgNCAqLworI2RlZmluZSBFWFRJX0ZUU1IxX0ZUNV9Qb3MgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0ZUU1IxX0ZUNV9Nc2sgICAgICAgKDB4MVVMIDw8IEVYVElfRlRTUjFfRlQ1X1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBFWFRJX0ZUU1IxX0ZUNSAgICAgICAgICAgRVhUSV9GVFNSMV9GVDVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgNSAqLworI2RlZmluZSBFWFRJX0ZUU1IxX0ZUNl9Qb3MgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0ZUU1IxX0ZUNl9Nc2sgICAgICAgKDB4MVVMIDw8IEVYVElfRlRTUjFfRlQ2X1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBFWFRJX0ZUU1IxX0ZUNiAgICAgICAgICAgRVhUSV9GVFNSMV9GVDZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgNiAqLworI2RlZmluZSBFWFRJX0ZUU1IxX0ZUN19Qb3MgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0ZUU1IxX0ZUN19Nc2sgICAgICAgKDB4MVVMIDw8IEVYVElfRlRTUjFfRlQ3X1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLworI2RlZmluZSBFWFRJX0ZUU1IxX0ZUNyAgICAgICAgICAgRVhUSV9GVFNSMV9GVDdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgNyAqLworI2RlZmluZSBFWFRJX0ZUU1IxX0ZUOF9Qb3MgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0ZUU1IxX0ZUOF9Nc2sgICAgICAgKDB4MVVMIDw8IEVYVElfRlRTUjFfRlQ4X1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBFWFRJX0ZUU1IxX0ZUOCAgICAgICAgICAgRVhUSV9GVFNSMV9GVDhfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgOCAqLworI2RlZmluZSBFWFRJX0ZUU1IxX0ZUOV9Qb3MgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0ZUU1IxX0ZUOV9Nc2sgICAgICAgKDB4MVVMIDw8IEVYVElfRlRTUjFfRlQ5X1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBFWFRJX0ZUU1IxX0ZUOSAgICAgICAgICAgRVhUSV9GVFNSMV9GVDlfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgOSAqLworI2RlZmluZSBFWFRJX0ZUU1IxX0ZUMTBfUG9zICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0ZUU1IxX0ZUMTBfTXNrICAgICAgKDB4MVVMIDw8IEVYVElfRlRTUjFfRlQxMF9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLworI2RlZmluZSBFWFRJX0ZUU1IxX0ZUMTAgICAgICAgICAgRVhUSV9GVFNSMV9GVDEwX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTAgKi8KKyNkZWZpbmUgRVhUSV9GVFNSMV9GVDExX1BvcyAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9GVFNSMV9GVDExX01zayAgICAgICgweDFVTCA8PCBFWFRJX0ZUU1IxX0ZUMTFfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgRVhUSV9GVFNSMV9GVDExICAgICAgICAgIEVYVElfRlRTUjFfRlQxMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDExICovCisjZGVmaW5lIEVYVElfRlRTUjFfRlQxMl9Qb3MgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfRlRTUjFfRlQxMl9Nc2sgICAgICAoMHgxVUwgPDwgRVhUSV9GVFNSMV9GVDEyX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIEVYVElfRlRTUjFfRlQxMiAgICAgICAgICBFWFRJX0ZUU1IxX0ZUMTJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxMiAqLworI2RlZmluZSBFWFRJX0ZUU1IxX0ZUMTNfUG9zICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0ZUU1IxX0ZUMTNfTXNrICAgICAgKDB4MVVMIDw8IEVYVElfRlRTUjFfRlQxM19Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLworI2RlZmluZSBFWFRJX0ZUU1IxX0ZUMTMgICAgICAgICAgRVhUSV9GVFNSMV9GVDEzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTMgKi8KKyNkZWZpbmUgRVhUSV9GVFNSMV9GVDE0X1BvcyAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9GVFNSMV9GVDE0X01zayAgICAgICgweDFVTCA8PCBFWFRJX0ZUU1IxX0ZUMTRfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgRVhUSV9GVFNSMV9GVDE0ICAgICAgICAgIEVYVElfRlRTUjFfRlQxNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDE0ICovCisjZGVmaW5lIEVYVElfRlRTUjFfRlQxNV9Qb3MgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfRlRTUjFfRlQxNV9Nc2sgICAgICAoMHgxVUwgPDwgRVhUSV9GVFNSMV9GVDE1X1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovCisjZGVmaW5lIEVYVElfRlRTUjFfRlQxNSAgICAgICAgICBFWFRJX0ZUU1IxX0ZUMTVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxNSAqLworI2RlZmluZSBFWFRJX0ZUU1IxX0ZUMTZfUG9zICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0ZUU1IxX0ZUMTZfTXNrICAgICAgKDB4MVVMIDw8IEVYVElfRlRTUjFfRlQxNl9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBFWFRJX0ZUU1IxX0ZUMTYgICAgICAgICAgRVhUSV9GVFNSMV9GVDE2X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTYgKi8KKyNkZWZpbmUgRVhUSV9GVFNSMV9GVDE3X1BvcyAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9GVFNSMV9GVDE3X01zayAgICAgICgweDFVTCA8PCBFWFRJX0ZUU1IxX0ZUMTdfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgRVhUSV9GVFNSMV9GVDE3ICAgICAgICAgIEVYVElfRlRTUjFfRlQxN19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDE3ICovCisjZGVmaW5lIEVYVElfRlRTUjFfRlQxOF9Qb3MgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfRlRTUjFfRlQxOF9Nc2sgICAgICAoMHgxVUwgPDwgRVhUSV9GVFNSMV9GVDE4X1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovCisjZGVmaW5lIEVYVElfRlRTUjFfRlQxOCAgICAgICAgICBFWFRJX0ZUU1IxX0ZUMThfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxOCAqLworI2RlZmluZSBFWFRJX0ZUU1IxX0ZUMTlfUG9zICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0ZUU1IxX0ZUMTlfTXNrICAgICAgKDB4MVVMIDw8IEVYVElfRlRTUjFfRlQxOV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLworI2RlZmluZSBFWFRJX0ZUU1IxX0ZUMTkgICAgICAgICAgRVhUSV9GVFNSMV9GVDE5X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTkgKi8KKyNkZWZpbmUgRVhUSV9GVFNSMV9GVDIwX1BvcyAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9GVFNSMV9GVDIwX01zayAgICAgICgweDFVTCA8PCBFWFRJX0ZUU1IxX0ZUMjBfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgRVhUSV9GVFNSMV9GVDIwICAgICAgICAgIEVYVElfRlRTUjFfRlQyMF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDIwICovCisjZGVmaW5lIEVYVElfRlRTUjFfRlQyMV9Qb3MgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfRlRTUjFfRlQyMV9Nc2sgICAgICAoMHgxVUwgPDwgRVhUSV9GVFNSMV9GVDIxX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovCisjZGVmaW5lIEVYVElfRlRTUjFfRlQyMSAgICAgICAgICBFWFRJX0ZUU1IxX0ZUMjFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAyMSAqLworI2RlZmluZSBFWFRJX0ZUU1IxX0ZUMzFfUG9zICAgICAgKDMxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0ZUU1IxX0ZUMzFfTXNrICAgICAgKDB4MVVMIDw8IEVYVElfRlRTUjFfRlQzMV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHg4MDAwMDAwMCAqLworI2RlZmluZSBFWFRJX0ZUU1IxX0ZUMzEgICAgICAgICAgRVhUSV9GVFNSMV9GVDMxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMzEgKi8KKworLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEVYVElfU1dJRVIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgRVhUSV9TV0lFUjFfU1dJX1BvcyAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX1NXSUVSMV9TV0lfTXNrICAgICAgKDB4ODAzRkZGRkZVTCA8PCBFWFRJX1NXSUVSMV9TV0lfUG9zKSAgICAgICAgIC8qITwgMHg4MDNGRkZGRiAqLworI2RlZmluZSBFWFRJX1NXSUVSMV9TV0kgICAgICAgICAgRVhUSV9TV0lFUjFfU1dJX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgaW50ZXJydXB0ICovCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTBfUG9zICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTBfTXNrICAgICAoMHgxVUwgPDwgRVhUSV9TV0lFUjFfU1dJMF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTAgICAgICAgICBFWFRJX1NXSUVSMV9TV0kwX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAwICovCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTFfUG9zICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTFfTXNrICAgICAoMHgxVUwgPDwgRVhUSV9TV0lFUjFfU1dJMV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTEgICAgICAgICBFWFRJX1NXSUVSMV9TV0kxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAxICovCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTJfUG9zICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTJfTXNrICAgICAoMHgxVUwgPDwgRVhUSV9TV0lFUjFfU1dJMl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTIgICAgICAgICBFWFRJX1NXSUVSMV9TV0kyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAyICovCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTNfUG9zICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTNfTXNrICAgICAoMHgxVUwgPDwgRVhUSV9TV0lFUjFfU1dJM19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTMgICAgICAgICBFWFRJX1NXSUVSMV9TV0kzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAzICovCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTRfUG9zICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTRfTXNrICAgICAoMHgxVUwgPDwgRVhUSV9TV0lFUjFfU1dJNF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTQgICAgICAgICBFWFRJX1NXSUVSMV9TV0k0X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSA0ICovCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTVfUG9zICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTVfTXNrICAgICAoMHgxVUwgPDwgRVhUSV9TV0lFUjFfU1dJNV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTUgICAgICAgICBFWFRJX1NXSUVSMV9TV0k1X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSA1ICovCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTZfUG9zICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTZfTXNrICAgICAoMHgxVUwgPDwgRVhUSV9TV0lFUjFfU1dJNl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTYgICAgICAgICBFWFRJX1NXSUVSMV9TV0k2X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSA2ICovCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTdfUG9zICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTdfTXNrICAgICAoMHgxVUwgPDwgRVhUSV9TV0lFUjFfU1dJN19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTcgICAgICAgICBFWFRJX1NXSUVSMV9TV0k3X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSA3ICovCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSThfUG9zICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSThfTXNrICAgICAoMHgxVUwgPDwgRVhUSV9TV0lFUjFfU1dJOF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTggICAgICAgICBFWFRJX1NXSUVSMV9TV0k4X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSA4ICovCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTlfUG9zICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTlfTXNrICAgICAoMHgxVUwgPDwgRVhUSV9TV0lFUjFfU1dJOV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTkgICAgICAgICBFWFRJX1NXSUVSMV9TV0k5X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSA5ICovCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTEwX1BvcyAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTEwX01zayAgICAoMHgxVUwgPDwgRVhUSV9TV0lFUjFfU1dJMTBfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTEwICAgICAgICBFWFRJX1NXSUVSMV9TV0kxMF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAxMCAqLworI2RlZmluZSBFWFRJX1NXSUVSMV9TV0kxMV9Qb3MgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX1NXSUVSMV9TV0kxMV9Nc2sgICAgKDB4MVVMIDw8IEVYVElfU1dJRVIxX1NXSTExX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLworI2RlZmluZSBFWFRJX1NXSUVSMV9TV0kxMSAgICAgICAgRVhUSV9TV0lFUjFfU1dJMTFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMTEgKi8KKyNkZWZpbmUgRVhUSV9TV0lFUjFfU1dJMTJfUG9zICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9TV0lFUjFfU1dJMTJfTXNrICAgICgweDFVTCA8PCBFWFRJX1NXSUVSMV9TV0kxMl9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgRVhUSV9TV0lFUjFfU1dJMTIgICAgICAgIEVYVElfU1dJRVIxX1NXSTEyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDEyICovCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTEzX1BvcyAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTEzX01zayAgICAoMHgxVUwgPDwgRVhUSV9TV0lFUjFfU1dJMTNfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTEzICAgICAgICBFWFRJX1NXSUVSMV9TV0kxM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAxMyAqLworI2RlZmluZSBFWFRJX1NXSUVSMV9TV0kxNF9Qb3MgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX1NXSUVSMV9TV0kxNF9Nc2sgICAgKDB4MVVMIDw8IEVYVElfU1dJRVIxX1NXSTE0X1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLworI2RlZmluZSBFWFRJX1NXSUVSMV9TV0kxNCAgICAgICAgRVhUSV9TV0lFUjFfU1dJMTRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMTQgKi8KKyNkZWZpbmUgRVhUSV9TV0lFUjFfU1dJMTVfUG9zICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9TV0lFUjFfU1dJMTVfTXNrICAgICgweDFVTCA8PCBFWFRJX1NXSUVSMV9TV0kxNV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgRVhUSV9TV0lFUjFfU1dJMTUgICAgICAgIEVYVElfU1dJRVIxX1NXSTE1X01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDE1ICovCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTE2X1BvcyAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTE2X01zayAgICAoMHgxVUwgPDwgRVhUSV9TV0lFUjFfU1dJMTZfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTE2ICAgICAgICBFWFRJX1NXSUVSMV9TV0kxNl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAxNiAqLworI2RlZmluZSBFWFRJX1NXSUVSMV9TV0kxN19Qb3MgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX1NXSUVSMV9TV0kxN19Nc2sgICAgKDB4MVVMIDw8IEVYVElfU1dJRVIxX1NXSTE3X1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLworI2RlZmluZSBFWFRJX1NXSUVSMV9TV0kxNyAgICAgICAgRVhUSV9TV0lFUjFfU1dJMTdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMTcgKi8KKyNkZWZpbmUgRVhUSV9TV0lFUjFfU1dJMThfUG9zICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9TV0lFUjFfU1dJMThfTXNrICAgICgweDFVTCA8PCBFWFRJX1NXSUVSMV9TV0kxOF9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgRVhUSV9TV0lFUjFfU1dJMTggICAgICAgIEVYVElfU1dJRVIxX1NXSTE4X01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDE4ICovCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTE5X1BvcyAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTE5X01zayAgICAoMHgxVUwgPDwgRVhUSV9TV0lFUjFfU1dJMTlfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTE5ICAgICAgICBFWFRJX1NXSUVSMV9TV0kxOV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAxOSAqLworI2RlZmluZSBFWFRJX1NXSUVSMV9TV0kyMF9Qb3MgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX1NXSUVSMV9TV0kyMF9Nc2sgICAgKDB4MVVMIDw8IEVYVElfU1dJRVIxX1NXSTIwX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLworI2RlZmluZSBFWFRJX1NXSUVSMV9TV0kyMCAgICAgICAgRVhUSV9TV0lFUjFfU1dJMjBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMjAgKi8KKyNkZWZpbmUgRVhUSV9TV0lFUjFfU1dJMjFfUG9zICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9TV0lFUjFfU1dJMjFfTXNrICAgICgweDFVTCA8PCBFWFRJX1NXSUVSMV9TV0kyMV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8KKyNkZWZpbmUgRVhUSV9TV0lFUjFfU1dJMjEgICAgICAgIEVYVElfU1dJRVIxX1NXSTIxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDIxICovCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTMxX1BvcyAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTMxX01zayAgICAoMHgxVUwgPDwgRVhUSV9TV0lFUjFfU1dJMzFfUG9zKSAgICAgICAgICAgICAgLyohPCAweDgwMDAwMDAwICovCisjZGVmaW5lIEVYVElfU1dJRVIxX1NXSTMxICAgICAgICAgRVhUSV9TV0lFUjFfU1dJMzFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAzMSAqLworCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEVYVElfUFIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBFWFRJX1BSMV9QSUZfUG9zICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX1BSMV9QSUZfTXNrICAgICAgICAgKDB4ODAzRkZGRkZVTCA8PCBFWFRJX1BSMV9QSUZfUG9zKSAgICAgICAgICAgIC8qITwgMHg4MDNGRkZGRiAqLworI2RlZmluZSBFWFRJX1BSMV9QSUYgICAgICAgICAgICAgRVhUSV9QUjFfUElGX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgKi8KKyNkZWZpbmUgRVhUSV9QUjFfUElGMF9Qb3MgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9QUjFfUElGMF9Nc2sgICAgICAgICgweDFVTCA8PCBFWFRJX1BSMV9QSUYwX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgRVhUSV9QUjFfUElGMCAgICAgICAgICAgIEVYVElfUFIxX1BJRjBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDAgKi8KKyNkZWZpbmUgRVhUSV9QUjFfUElGMV9Qb3MgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9QUjFfUElGMV9Nc2sgICAgICAgICgweDFVTCA8PCBFWFRJX1BSMV9QSUYxX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgRVhUSV9QUjFfUElGMSAgICAgICAgICAgIEVYVElfUFIxX1BJRjFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDEgKi8KKyNkZWZpbmUgRVhUSV9QUjFfUElGMl9Qb3MgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9QUjFfUElGMl9Nc2sgICAgICAgICgweDFVTCA8PCBFWFRJX1BSMV9QSUYyX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgRVhUSV9QUjFfUElGMiAgICAgICAgICAgIEVYVElfUFIxX1BJRjJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDIgKi8KKyNkZWZpbmUgRVhUSV9QUjFfUElGM19Qb3MgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9QUjFfUElGM19Nc2sgICAgICAgICgweDFVTCA8PCBFWFRJX1BSMV9QSUYzX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgRVhUSV9QUjFfUElGMyAgICAgICAgICAgIEVYVElfUFIxX1BJRjNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDMgKi8KKyNkZWZpbmUgRVhUSV9QUjFfUElGNF9Qb3MgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9QUjFfUElGNF9Nc2sgICAgICAgICgweDFVTCA8PCBFWFRJX1BSMV9QSUY0X1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgRVhUSV9QUjFfUElGNCAgICAgICAgICAgIEVYVElfUFIxX1BJRjRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDQgKi8KKyNkZWZpbmUgRVhUSV9QUjFfUElGNV9Qb3MgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9QUjFfUElGNV9Nc2sgICAgICAgICgweDFVTCA8PCBFWFRJX1BSMV9QSUY1X1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgRVhUSV9QUjFfUElGNSAgICAgICAgICAgIEVYVElfUFIxX1BJRjVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDUgKi8KKyNkZWZpbmUgRVhUSV9QUjFfUElGNl9Qb3MgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9QUjFfUElGNl9Nc2sgICAgICAgICgweDFVTCA8PCBFWFRJX1BSMV9QSUY2X1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgRVhUSV9QUjFfUElGNiAgICAgICAgICAgIEVYVElfUFIxX1BJRjZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDYgKi8KKyNkZWZpbmUgRVhUSV9QUjFfUElGN19Qb3MgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9QUjFfUElGN19Nc2sgICAgICAgICgweDFVTCA8PCBFWFRJX1BSMV9QSUY3X1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgRVhUSV9QUjFfUElGNyAgICAgICAgICAgIEVYVElfUFIxX1BJRjdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDcgKi8KKyNkZWZpbmUgRVhUSV9QUjFfUElGOF9Qb3MgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9QUjFfUElGOF9Nc2sgICAgICAgICgweDFVTCA8PCBFWFRJX1BSMV9QSUY4X1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgRVhUSV9QUjFfUElGOCAgICAgICAgICAgIEVYVElfUFIxX1BJRjhfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDggKi8KKyNkZWZpbmUgRVhUSV9QUjFfUElGOV9Qb3MgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9QUjFfUElGOV9Nc2sgICAgICAgICgweDFVTCA8PCBFWFRJX1BSMV9QSUY5X1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgRVhUSV9QUjFfUElGOSAgICAgICAgICAgIEVYVElfUFIxX1BJRjlfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDkgKi8KKyNkZWZpbmUgRVhUSV9QUjFfUElGMTBfUG9zICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9QUjFfUElGMTBfTXNrICAgICAgICgweDFVTCA8PCBFWFRJX1BSMV9QSUYxMF9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgRVhUSV9QUjFfUElGMTAgICAgICAgICAgIEVYVElfUFIxX1BJRjEwX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDEwICovCisjZGVmaW5lIEVYVElfUFIxX1BJRjExX1BvcyAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfUFIxX1BJRjExX01zayAgICAgICAoMHgxVUwgPDwgRVhUSV9QUjFfUElGMTFfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIEVYVElfUFIxX1BJRjExICAgICAgICAgICBFWFRJX1BSMV9QSUYxMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAxMSAqLworI2RlZmluZSBFWFRJX1BSMV9QSUYxMl9Qb3MgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX1BSMV9QSUYxMl9Nc2sgICAgICAgKDB4MVVMIDw8IEVYVElfUFIxX1BJRjEyX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBFWFRJX1BSMV9QSUYxMiAgICAgICAgICAgRVhUSV9QUjFfUElGMTJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgMTIgKi8KKyNkZWZpbmUgRVhUSV9QUjFfUElGMTNfUG9zICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9QUjFfUElGMTNfTXNrICAgICAgICgweDFVTCA8PCBFWFRJX1BSMV9QSUYxM19Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgRVhUSV9QUjFfUElGMTMgICAgICAgICAgIEVYVElfUFIxX1BJRjEzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDEzICovCisjZGVmaW5lIEVYVElfUFIxX1BJRjE0X1BvcyAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfUFIxX1BJRjE0X01zayAgICAgICAoMHgxVUwgPDwgRVhUSV9QUjFfUElGMTRfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIEVYVElfUFIxX1BJRjE0ICAgICAgICAgICBFWFRJX1BSMV9QSUYxNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAxNCAqLworI2RlZmluZSBFWFRJX1BSMV9QSUYxNV9Qb3MgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX1BSMV9QSUYxNV9Nc2sgICAgICAgKDB4MVVMIDw8IEVYVElfUFIxX1BJRjE1X1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLworI2RlZmluZSBFWFRJX1BSMV9QSUYxNSAgICAgICAgICAgRVhUSV9QUjFfUElGMTVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgMTUgKi8KKyNkZWZpbmUgRVhUSV9QUjFfUElGMTZfUG9zICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9QUjFfUElGMTZfTXNrICAgICAgICgweDFVTCA8PCBFWFRJX1BSMV9QSUYxNl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgRVhUSV9QUjFfUElGMTYgICAgICAgICAgIEVYVElfUFIxX1BJRjE2X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDE2ICovCisjZGVmaW5lIEVYVElfUFIxX1BJRjE3X1BvcyAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfUFIxX1BJRjE3X01zayAgICAgICAoMHgxVUwgPDwgRVhUSV9QUjFfUElGMTdfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovCisjZGVmaW5lIEVYVElfUFIxX1BJRjE3ICAgICAgICAgICBFWFRJX1BSMV9QSUYxN19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAxNyAqLworI2RlZmluZSBFWFRJX1BSMV9QSUYxOF9Qb3MgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX1BSMV9QSUYxOF9Nc2sgICAgICAgKDB4MVVMIDw8IEVYVElfUFIxX1BJRjE4X1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLworI2RlZmluZSBFWFRJX1BSMV9QSUYxOCAgICAgICAgICAgRVhUSV9QUjFfUElGMThfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgMTggKi8KKyNkZWZpbmUgRVhUSV9QUjFfUElGMTlfUG9zICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9QUjFfUElGMTlfTXNrICAgICAgICgweDFVTCA8PCBFWFRJX1BSMV9QSUYxOV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgRVhUSV9QUjFfUElGMTkgICAgICAgICAgIEVYVElfUFIxX1BJRjE5X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDE5ICovCisjZGVmaW5lIEVYVElfUFIxX1BJRjIwX1BvcyAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfUFIxX1BJRjIwX01zayAgICAgICAoMHgxVUwgPDwgRVhUSV9QUjFfUElGMjBfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovCisjZGVmaW5lIEVYVElfUFIxX1BJRjIwICAgICAgICAgICBFWFRJX1BSMV9QSUYyMF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAyMCAqLworI2RlZmluZSBFWFRJX1BSMV9QSUYyMV9Qb3MgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX1BSMV9QSUYyMV9Nc2sgICAgICAgKDB4MVVMIDw8IEVYVElfUFIxX1BJRjIxX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLworI2RlZmluZSBFWFRJX1BSMV9QSUYyMSAgICAgICAgICAgRVhUSV9QUjFfUElGMjFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgMjEgKi8KKyNkZWZpbmUgRVhUSV9QUjFfUElGMzFfUG9zICAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9QUjFfUElGMzFfTXNrICAgICAgICgweDFVTCA8PCBFWFRJX1BSMV9QSUYzMV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4ODAwMDAwMDAgKi8KKyNkZWZpbmUgRVhUSV9QUjFfUElGMzEgICAgICAgICAgIEVYVElfUFIxX1BJRjMxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDMxICovCisKKy8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBFWFRJX1JUU1IyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIEVYVElfUlRTUjJfUlRfUG9zICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfUlRTUjJfUlRfTXNrICAgICAgICAoMHgzMDJVTCA8PCBFWFRJX1JUU1IyX1JUX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMzAyICovCisjZGVmaW5lIEVYVElfUlRTUjJfUlQgICAgICAgICAgICBFWFRJX1JUU1IyX1JUX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCAqLworI2RlZmluZSBFWFRJX1JUU1IyX1JUMzNfUG9zICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX1JUU1IyX1JUMzNfTXNrICAgICAgKDB4MVVMIDw8IEVYVElfUlRTUjJfUlQzM19Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBFWFRJX1JUU1IyX1JUMzMgICAgICAgICAgRVhUSV9SVFNSMl9SVDMzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAzMyAqLworI2RlZmluZSBFWFRJX1JUU1IyX1JUNDBfUG9zICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX1JUU1IyX1JUNDBfTXNrICAgICAgKDB4MVVMIDw8IEVYVElfUlRTUjJfUlQ0MF9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBFWFRJX1JUU1IyX1JUNDAgICAgICAgICAgRVhUSV9SVFNSMl9SVDQwX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA0MCAqLworI2RlZmluZSBFWFRJX1JUU1IyX1JUNDFfUG9zICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX1JUU1IyX1JUNDFfTXNrICAgICAgKDB4MVVMIDw8IEVYVElfUlRTUjJfUlQ0MV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBFWFRJX1JUU1IyX1JUNDEgICAgICAgICAgRVhUSV9SVFNSMl9SVDQxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA0MSAqLworCisvKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRVhUSV9GVFNSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBFWFRJX0ZUU1IyX0ZUX1BvcyAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfRlRTUjJfRlRfTXNrICAgICAgICAoMHgzMDJVTCA8PCBFWFRJX0ZUU1IyX0ZUX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMzAyICovCisjZGVmaW5lIEVYVElfRlRTUjJfRlQgICAgICAgICAgICBFWFRJX0ZUU1IyX0ZUX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgKi8KKyNkZWZpbmUgRVhUSV9GVFNSMl9GVDMzX1BvcyAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9GVFNSMl9GVDMzX01zayAgICAgICgweDFVTCA8PCBFWFRJX0ZUU1IyX0ZUMzNfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgRVhUSV9GVFNSMl9GVDMzICAgICAgICAgIEVYVElfRlRTUjJfRlQzM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDMzICovCisjZGVmaW5lIEVYVElfRlRTUjJfRlQ0MF9Qb3MgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfRlRTUjJfRlQ0MF9Nc2sgICAgICAoMHgxVUwgPDwgRVhUSV9GVFNSMl9GVDQwX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIEVYVElfRlRTUjJfRlQ0MCAgICAgICAgICBFWFRJX0ZUU1IyX0ZUNDBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA0MCAqLworI2RlZmluZSBFWFRJX0ZUU1IyX0ZUNDFfUG9zICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0ZUU1IyX0ZUNDFfTXNrICAgICAgKDB4MVVMIDw8IEVYVElfRlRTUjJfRlQ0MV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBFWFRJX0ZUU1IyX0ZUNDEgICAgICAgICAgRVhUSV9GVFNSMl9GVDQxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgNDEgKi8KKworLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEVYVElfU1dJRVIyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgRVhUSV9TV0lFUjJfU1dJX1BvcyAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX1NXSUVSMl9TV0lfTXNrICAgICAgKDB4MzAyVUwgPDwgRVhUSV9TV0lFUjJfU1dJX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDMwMiAqLworI2RlZmluZSBFWFRJX1NXSUVSMl9TV0kgICAgICAgICAgRVhUSV9TV0lFUjJfU1dJX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0ICovCisjZGVmaW5lIEVYVElfU1dJRVIyX1NXSTMzX1BvcyAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfU1dJRVIyX1NXSTMzX01zayAgICAoMHgxVUwgPDwgRVhUSV9TV0lFUjJfU1dJMzNfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgRVhUSV9TV0lFUjJfU1dJMzMgICAgICAgIEVYVElfU1dJRVIyX1NXSTMzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMzMgKi8KKyNkZWZpbmUgRVhUSV9TV0lFUjJfU1dJNDBfUG9zICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9TV0lFUjJfU1dJNDBfTXNrICAgICgweDFVTCA8PCBFWFRJX1NXSUVSMl9TV0k0MF9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBFWFRJX1NXSUVSMl9TV0k0MCAgICAgICAgRVhUSV9TV0lFUjJfU1dJNDBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSA0MCAqLworI2RlZmluZSBFWFRJX1NXSUVSMl9TV0k0MV9Qb3MgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX1NXSUVSMl9TV0k0MV9Nc2sgICAgKDB4MVVMIDw8IEVYVElfU1dJRVIyX1NXSTQxX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIEVYVElfU1dJRVIyX1NXSTQxICAgICAgICBFWFRJX1NXSUVSMl9TV0k0MV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDQxICovCisKKy8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRVhUSV9QUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIEVYVElfUFIyX1BJRl9Qb3MgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9QUjJfUElGX01zayAgICAgICAgICgweDMwMlVMIDw8IEVYVElfUFIyX1BJRl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAzMDIgKi8KKyNkZWZpbmUgRVhUSV9QUjJfUElGICAgICAgICAgICAgIEVYVElfUFIyX1BJRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0ICovCisjZGVmaW5lIEVYVElfUFIyX1BJRjMzX1BvcyAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfUFIyX1BJRjMzX01zayAgICAgICAoMHgxVUwgPDwgRVhUSV9QUjJfUElGMzNfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIEVYVElfUFIyX1BJRjMzICAgICAgICAgICBFWFRJX1BSMl9QSUYzM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAzMyAqLworI2RlZmluZSBFWFRJX1BSMl9QSUY0MF9Qb3MgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX1BSMl9QSUY0MF9Nc2sgICAgICAgKDB4MVVMIDw8IEVYVElfUFIyX1BJRjQwX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBFWFRJX1BSMl9QSUY0MCAgICAgICAgICAgRVhUSV9QUjJfUElGNDBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgNDAgKi8KKyNkZWZpbmUgRVhUSV9QUjJfUElGNDFfUG9zICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9QUjJfUElGNDFfTXNrICAgICAgICgweDFVTCA8PCBFWFRJX1BSMl9QSUY0MV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgRVhUSV9QUjJfUElGNDEgICAgICAgICAgIEVYVElfUFIyX1BJRjQxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDQxICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBFWFRJX0lNUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovCisjZGVmaW5lIEVYVElfSU1SMV9Qb3MgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfSU1SMV9Nc2sgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IEVYVElfSU1SMV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweEZGRkZGRkZGICovCisjZGVmaW5lIEVYVElfSU1SMV9JTSAgICAgICAgICAgICBFWFRJX0lNUjFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUxIHdha2V1cCB3aXRoIGludGVycnVwdCBNYXNrIG9uIEV2ZW50ICovCisjZGVmaW5lIEVYVElfSU1SMV9JTTBfUG9zICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9JTVIxX0lNMF9Nc2sgICAgICAgICgweDFVTCA8PCBFWFRJX0lNUjFfSU0wX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgRVhUSV9JTVIxX0lNMCAgICAgICAgICAgIEVYVElfSU1SMV9JTTBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgSW50ZXJydXB0IE1hc2sgb24gbGluZSAwICovCisjZGVmaW5lIEVYVElfSU1SMV9JTTFfUG9zICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9JTVIxX0lNMV9Nc2sgICAgICAgICgweDFVTCA8PCBFWFRJX0lNUjFfSU0xX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgRVhUSV9JTVIxX0lNMSAgICAgICAgICAgIEVYVElfSU1SMV9JTTFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxICovCisjZGVmaW5lIEVYVElfSU1SMV9JTTJfUG9zICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9JTVIxX0lNMl9Nc2sgICAgICAgICgweDFVTCA8PCBFWFRJX0lNUjFfSU0yX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgRVhUSV9JTVIxX0lNMiAgICAgICAgICAgIEVYVElfSU1SMV9JTTJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgSW50ZXJydXB0IE1hc2sgb24gbGluZSAyICovCisjZGVmaW5lIEVYVElfSU1SMV9JTTNfUG9zICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9JTVIxX0lNM19Nc2sgICAgICAgICgweDFVTCA8PCBFWFRJX0lNUjFfSU0zX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgRVhUSV9JTVIxX0lNMyAgICAgICAgICAgIEVYVElfSU1SMV9JTTNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgSW50ZXJydXB0IE1hc2sgb24gbGluZSAzICovCisjZGVmaW5lIEVYVElfSU1SMV9JTTRfUG9zICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9JTVIxX0lNNF9Nc2sgICAgICAgICgweDFVTCA8PCBFWFRJX0lNUjFfSU00X1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgRVhUSV9JTVIxX0lNNCAgICAgICAgICAgIEVYVElfSU1SMV9JTTRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgSW50ZXJydXB0IE1hc2sgb24gbGluZSA0ICovCisjZGVmaW5lIEVYVElfSU1SMV9JTTVfUG9zICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9JTVIxX0lNNV9Nc2sgICAgICAgICgweDFVTCA8PCBFWFRJX0lNUjFfSU01X1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgRVhUSV9JTVIxX0lNNSAgICAgICAgICAgIEVYVElfSU1SMV9JTTVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgSW50ZXJydXB0IE1hc2sgb24gbGluZSA1ICovCisjZGVmaW5lIEVYVElfSU1SMV9JTTZfUG9zICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9JTVIxX0lNNl9Nc2sgICAgICAgICgweDFVTCA8PCBFWFRJX0lNUjFfSU02X1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgRVhUSV9JTVIxX0lNNiAgICAgICAgICAgIEVYVElfSU1SMV9JTTZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgSW50ZXJydXB0IE1hc2sgb24gbGluZSA2ICovCisjZGVmaW5lIEVYVElfSU1SMV9JTTdfUG9zICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9JTVIxX0lNN19Nc2sgICAgICAgICgweDFVTCA8PCBFWFRJX0lNUjFfSU03X1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgRVhUSV9JTVIxX0lNNyAgICAgICAgICAgIEVYVElfSU1SMV9JTTdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgSW50ZXJydXB0IE1hc2sgb24gbGluZSA3ICovCisjZGVmaW5lIEVYVElfSU1SMV9JTThfUG9zICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9JTVIxX0lNOF9Nc2sgICAgICAgICgweDFVTCA8PCBFWFRJX0lNUjFfSU04X1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgRVhUSV9JTVIxX0lNOCAgICAgICAgICAgIEVYVElfSU1SMV9JTThfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgSW50ZXJydXB0IE1hc2sgb24gbGluZSA4ICovCisjZGVmaW5lIEVYVElfSU1SMV9JTTlfUG9zICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9JTVIxX0lNOV9Nc2sgICAgICAgICgweDFVTCA8PCBFWFRJX0lNUjFfSU05X1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgRVhUSV9JTVIxX0lNOSAgICAgICAgICAgIEVYVElfSU1SMV9JTTlfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgSW50ZXJydXB0IE1hc2sgb24gbGluZSA5ICovCisjZGVmaW5lIEVYVElfSU1SMV9JTTEwX1BvcyAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9JTVIxX0lNMTBfTXNrICAgICAgICgweDFVTCA8PCBFWFRJX0lNUjFfSU0xMF9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgRVhUSV9JTVIxX0lNMTAgICAgICAgICAgIEVYVElfSU1SMV9JTTEwX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxMCAqLworI2RlZmluZSBFWFRJX0lNUjFfSU0xMV9Qb3MgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfSU1SMV9JTTExX01zayAgICAgICAoMHgxVUwgPDwgRVhUSV9JTVIxX0lNMTFfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIEVYVElfSU1SMV9JTTExICAgICAgICAgICBFWFRJX0lNUjFfSU0xMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUxIEludGVycnVwdCBNYXNrIG9uIGxpbmUgMTEgKi8KKyNkZWZpbmUgRVhUSV9JTVIxX0lNMTJfUG9zICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0lNUjFfSU0xMl9Nc2sgICAgICAgKDB4MVVMIDw8IEVYVElfSU1SMV9JTTEyX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBFWFRJX0lNUjFfSU0xMiAgICAgICAgICAgRVhUSV9JTVIxX0lNMTJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMSBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDEyICovCisjZGVmaW5lIEVYVElfSU1SMV9JTTEzX1BvcyAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9JTVIxX0lNMTNfTXNrICAgICAgICgweDFVTCA8PCBFWFRJX0lNUjFfSU0xM19Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgRVhUSV9JTVIxX0lNMTMgICAgICAgICAgIEVYVElfSU1SMV9JTTEzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxMyAqLworI2RlZmluZSBFWFRJX0lNUjFfSU0xNF9Qb3MgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfSU1SMV9JTTE0X01zayAgICAgICAoMHgxVUwgPDwgRVhUSV9JTVIxX0lNMTRfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIEVYVElfSU1SMV9JTTE0ICAgICAgICAgICBFWFRJX0lNUjFfSU0xNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUxIEludGVycnVwdCBNYXNrIG9uIGxpbmUgMTQgKi8KKyNkZWZpbmUgRVhUSV9JTVIxX0lNMTVfUG9zICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0lNUjFfSU0xNV9Nc2sgICAgICAgKDB4MVVMIDw8IEVYVElfSU1SMV9JTTE1X1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLworI2RlZmluZSBFWFRJX0lNUjFfSU0xNSAgICAgICAgICAgRVhUSV9JTVIxX0lNMTVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMSBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDE1ICovCisjZGVmaW5lIEVYVElfSU1SMV9JTTE2X1BvcyAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9JTVIxX0lNMTZfTXNrICAgICAgICgweDFVTCA8PCBFWFRJX0lNUjFfSU0xNl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgRVhUSV9JTVIxX0lNMTYgICAgICAgICAgIEVYVElfSU1SMV9JTTE2X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxNiAqLworI2RlZmluZSBFWFRJX0lNUjFfSU0xN19Qb3MgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfSU1SMV9JTTE3X01zayAgICAgICAoMHgxVUwgPDwgRVhUSV9JTVIxX0lNMTdfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovCisjZGVmaW5lIEVYVElfSU1SMV9JTTE3ICAgICAgICAgICBFWFRJX0lNUjFfSU0xN19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUxIEludGVycnVwdCBNYXNrIG9uIGxpbmUgMTcgKi8KKyNkZWZpbmUgRVhUSV9JTVIxX0lNMThfUG9zICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0lNUjFfSU0xOF9Nc2sgICAgICAgKDB4MVVMIDw8IEVYVElfSU1SMV9JTTE4X1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLworI2RlZmluZSBFWFRJX0lNUjFfSU0xOCAgICAgICAgICAgRVhUSV9JTVIxX0lNMThfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMSBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDE4ICovCisjZGVmaW5lIEVYVElfSU1SMV9JTTE5X1BvcyAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9JTVIxX0lNMTlfTXNrICAgICAgICgweDFVTCA8PCBFWFRJX0lNUjFfSU0xOV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgRVhUSV9JTVIxX0lNMTkgICAgICAgICAgIEVYVElfSU1SMV9JTTE5X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxOSAqLworI2RlZmluZSBFWFRJX0lNUjFfSU0yMF9Qb3MgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfSU1SMV9JTTIwX01zayAgICAgICAoMHgxVUwgPDwgRVhUSV9JTVIxX0lNMjBfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovCisjZGVmaW5lIEVYVElfSU1SMV9JTTIwICAgICAgICAgICBFWFRJX0lNUjFfSU0yMF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUxIEludGVycnVwdCBNYXNrIG9uIGxpbmUgMjAgKi8KKyNkZWZpbmUgRVhUSV9JTVIxX0lNMjFfUG9zICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0lNUjFfSU0yMV9Nc2sgICAgICAgKDB4MVVMIDw8IEVYVElfSU1SMV9JTTIxX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLworI2RlZmluZSBFWFRJX0lNUjFfSU0yMSAgICAgICAgICAgRVhUSV9JTVIxX0lNMjFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMSBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDIxICovCisjZGVmaW5lIEVYVElfSU1SMV9JTTIyX1BvcyAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9JTVIxX0lNMjJfTXNrICAgICAgICgweDFVTCA8PCBFWFRJX0lNUjFfSU0yMl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8KKyNkZWZpbmUgRVhUSV9JTVIxX0lNMjIgICAgICAgICAgIEVYVElfSU1SMV9JTTIyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgSW50ZXJydXB0IE1hc2sgb24gbGluZSAyMiAqLworI2RlZmluZSBFWFRJX0lNUjFfSU0yM19Qb3MgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfSU1SMV9JTTIzX01zayAgICAgICAoMHgxVUwgPDwgRVhUSV9JTVIxX0lNMjNfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwODAwMDAwICovCisjZGVmaW5lIEVYVElfSU1SMV9JTTIzICAgICAgICAgICBFWFRJX0lNUjFfSU0yM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUxIEludGVycnVwdCBNYXNrIG9uIGxpbmUgMjMgKi8KKyNkZWZpbmUgRVhUSV9JTVIxX0lNMjRfUG9zICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0lNUjFfSU0yNF9Nc2sgICAgICAgKDB4MVVMIDw8IEVYVElfSU1SMV9JTTI0X1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLworI2RlZmluZSBFWFRJX0lNUjFfSU0yNCAgICAgICAgICAgRVhUSV9JTVIxX0lNMjRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMSBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDI0ICovCisjZGVmaW5lIEVYVElfSU1SMV9JTTI1X1BvcyAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9JTVIxX0lNMjVfTXNrICAgICAgICgweDFVTCA8PCBFWFRJX0lNUjFfSU0yNV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8KKyNkZWZpbmUgRVhUSV9JTVIxX0lNMjUgICAgICAgICAgIEVYVElfSU1SMV9JTTI1X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgSW50ZXJydXB0IE1hc2sgb24gbGluZSAyNSAqLworI2RlZmluZSBFWFRJX0lNUjFfSU0yOF9Qb3MgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfSU1SMV9JTTI4X01zayAgICAgICAoMHgxVUwgPDwgRVhUSV9JTVIxX0lNMjhfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDEwMDAwMDAwICovCisjZGVmaW5lIEVYVElfSU1SMV9JTTI4ICAgICAgICAgICBFWFRJX0lNUjFfSU0yOF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUxIEludGVycnVwdCBNYXNrIG9uIGxpbmUgMjggKi8KKyNkZWZpbmUgRVhUSV9JTVIxX0lNMjlfUG9zICAgICAgICgyOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0lNUjFfSU0yOV9Nc2sgICAgICAgKDB4MVVMIDw8IEVYVElfSU1SMV9JTTI5X1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgyMDAwMDAwMCAqLworI2RlZmluZSBFWFRJX0lNUjFfSU0yOSAgICAgICAgICAgRVhUSV9JTVIxX0lNMjlfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMSBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDI5ICovCisjZGVmaW5lIEVYVElfSU1SMV9JTTMwX1BvcyAgICAgICAoMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9JTVIxX0lNMzBfTXNrICAgICAgICgweDFVTCA8PCBFWFRJX0lNUjFfSU0zMF9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4NDAwMDAwMDAgKi8KKyNkZWZpbmUgRVhUSV9JTVIxX0lNMzAgICAgICAgICAgIEVYVElfSU1SMV9JTTMwX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgSW50ZXJydXB0IE1hc2sgb24gbGluZSAzMCAqLworI2RlZmluZSBFWFRJX0lNUjFfSU0zMV9Qb3MgICAgICAgKDMxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfSU1SMV9JTTMxX01zayAgICAgICAoMHgxVUwgPDwgRVhUSV9JTVIxX0lNMzFfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDgwMDAwMDAwICovCisjZGVmaW5lIEVYVElfSU1SMV9JTTMxICAgICAgICAgICBFWFRJX0lNUjFfSU0zMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUxIEludGVycnVwdCBNYXNrIG9uIGxpbmUgMzEgKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIEVYVElfRU1SMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgRVhUSV9FTVIxX1BvcyAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9FTVIxX01zayAgICAgICAgICAgICgweDAwM0VGRkZGVUwgPDwgRVhUSV9FTVIxX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4RkZGRkZGRkYgKi8KKyNkZWZpbmUgRVhUSV9FTVIxX0VNICAgICAgICAgICAgIEVYVElfRU1SMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgRXZlbnQgTWFzayAqLworI2RlZmluZSBFWFRJX0VNUjFfRU0wX1BvcyAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfRU1SMV9FTTBfTXNrICAgICAgICAoMHgxVUwgPDwgRVhUSV9FTVIxX0VNMF9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIEVYVElfRU1SMV9FTTAgICAgICAgICAgICBFWFRJX0VNUjFfRU0wX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUxIEV2ZW50IE1hc2sgb24gbGluZSAwICovCisjZGVmaW5lIEVYVElfRU1SMV9FTTFfUG9zICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9FTVIxX0VNMV9Nc2sgICAgICAgICgweDFVTCA8PCBFWFRJX0VNUjFfRU0xX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgRVhUSV9FTVIxX0VNMSAgICAgICAgICAgIEVYVElfRU1SMV9FTTFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgRXZlbnQgTWFzayBvbiBsaW5lIDEgKi8KKyNkZWZpbmUgRVhUSV9FTVIxX0VNMl9Qb3MgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0VNUjFfRU0yX01zayAgICAgICAgKDB4MVVMIDw8IEVYVElfRU1SMV9FTTJfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBFWFRJX0VNUjFfRU0yICAgICAgICAgICAgRVhUSV9FTVIxX0VNMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMSBFdmVudCBNYXNrIG9uIGxpbmUgMiAqLworI2RlZmluZSBFWFRJX0VNUjFfRU0zX1BvcyAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfRU1SMV9FTTNfTXNrICAgICAgICAoMHgxVUwgPDwgRVhUSV9FTVIxX0VNM19Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIEVYVElfRU1SMV9FTTMgICAgICAgICAgICBFWFRJX0VNUjFfRU0zX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUxIEV2ZW50IE1hc2sgb24gbGluZSAzICovCisjZGVmaW5lIEVYVElfRU1SMV9FTTRfUG9zICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9FTVIxX0VNNF9Nc2sgICAgICAgICgweDFVTCA8PCBFWFRJX0VNUjFfRU00X1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgRVhUSV9FTVIxX0VNNCAgICAgICAgICAgIEVYVElfRU1SMV9FTTRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgRXZlbnQgTWFzayBvbiBsaW5lIDQgKi8KKyNkZWZpbmUgRVhUSV9FTVIxX0VNNV9Qb3MgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0VNUjFfRU01X01zayAgICAgICAgKDB4MVVMIDw8IEVYVElfRU1SMV9FTTVfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBFWFRJX0VNUjFfRU01ICAgICAgICAgICAgRVhUSV9FTVIxX0VNNV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMSBFdmVudCBNYXNrIG9uIGxpbmUgNSAqLworI2RlZmluZSBFWFRJX0VNUjFfRU02X1BvcyAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfRU1SMV9FTTZfTXNrICAgICAgICAoMHgxVUwgPDwgRVhUSV9FTVIxX0VNNl9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIEVYVElfRU1SMV9FTTYgICAgICAgICAgICBFWFRJX0VNUjFfRU02X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUxIEV2ZW50IE1hc2sgb24gbGluZSA2ICovCisjZGVmaW5lIEVYVElfRU1SMV9FTTdfUG9zICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9FTVIxX0VNN19Nc2sgICAgICAgICgweDFVTCA8PCBFWFRJX0VNUjFfRU03X1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgRVhUSV9FTVIxX0VNNyAgICAgICAgICAgIEVYVElfRU1SMV9FTTdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgRXZlbnQgTWFzayBvbiBsaW5lIDcgKi8KKyNkZWZpbmUgRVhUSV9FTVIxX0VNOF9Qb3MgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0VNUjFfRU04X01zayAgICAgICAgKDB4MVVMIDw8IEVYVElfRU1SMV9FTThfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBFWFRJX0VNUjFfRU04ICAgICAgICAgICAgRVhUSV9FTVIxX0VNOF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMSBFdmVudCBNYXNrIG9uIGxpbmUgOCAqLworI2RlZmluZSBFWFRJX0VNUjFfRU05X1BvcyAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfRU1SMV9FTTlfTXNrICAgICAgICAoMHgxVUwgPDwgRVhUSV9FTVIxX0VNOV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIEVYVElfRU1SMV9FTTkgICAgICAgICAgICBFWFRJX0VNUjFfRU05X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUxIEV2ZW50IE1hc2sgb24gbGluZSA5ICovCisjZGVmaW5lIEVYVElfRU1SMV9FTTEwX1BvcyAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9FTVIxX0VNMTBfTXNrICAgICAgICgweDFVTCA8PCBFWFRJX0VNUjFfRU0xMF9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgRVhUSV9FTVIxX0VNMTAgICAgICAgICAgIEVYVElfRU1SMV9FTTEwX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgRXZlbnQgTWFzayBvbiBsaW5lIDEwICovCisjZGVmaW5lIEVYVElfRU1SMV9FTTExX1BvcyAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9FTVIxX0VNMTFfTXNrICAgICAgICgweDFVTCA8PCBFWFRJX0VNUjFfRU0xMV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgRVhUSV9FTVIxX0VNMTEgICAgICAgICAgIEVYVElfRU1SMV9FTTExX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgRXZlbnQgTWFzayBvbiBsaW5lIDExICovCisjZGVmaW5lIEVYVElfRU1SMV9FTTEyX1BvcyAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9FTVIxX0VNMTJfTXNrICAgICAgICgweDFVTCA8PCBFWFRJX0VNUjFfRU0xMl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgRVhUSV9FTVIxX0VNMTIgICAgICAgICAgIEVYVElfRU1SMV9FTTEyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgRXZlbnQgTWFzayBvbiBsaW5lIDEyICovCisjZGVmaW5lIEVYVElfRU1SMV9FTTEzX1BvcyAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9FTVIxX0VNMTNfTXNrICAgICAgICgweDFVTCA8PCBFWFRJX0VNUjFfRU0xM19Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgRVhUSV9FTVIxX0VNMTMgICAgICAgICAgIEVYVElfRU1SMV9FTTEzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgRXZlbnQgTWFzayBvbiBsaW5lIDEzICovCisjZGVmaW5lIEVYVElfRU1SMV9FTTE0X1BvcyAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9FTVIxX0VNMTRfTXNrICAgICAgICgweDFVTCA8PCBFWFRJX0VNUjFfRU0xNF9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgRVhUSV9FTVIxX0VNMTQgICAgICAgICAgIEVYVElfRU1SMV9FTTE0X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgRXZlbnQgTWFzayBvbiBsaW5lIDE0ICovCisjZGVmaW5lIEVYVElfRU1SMV9FTTE1X1BvcyAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9FTVIxX0VNMTVfTXNrICAgICAgICgweDFVTCA8PCBFWFRJX0VNUjFfRU0xNV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgRVhUSV9FTVIxX0VNMTUgICAgICAgICAgIEVYVElfRU1SMV9FTTE1X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgRXZlbnQgTWFzayBvbiBsaW5lIDE1ICovCisjZGVmaW5lIEVYVElfRU1SMV9FTTE3X1BvcyAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9FTVIxX0VNMTdfTXNrICAgICAgICgweDFVTCA8PCBFWFRJX0VNUjFfRU0xN19Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgRVhUSV9FTVIxX0VNMTcgICAgICAgICAgIEVYVElfRU1SMV9FTTE3X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgRXZlbnQgTWFzayBvbiBsaW5lIDE3ICovCisjZGVmaW5lIEVYVElfRU1SMV9FTTE4X1BvcyAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9FTVIxX0VNMThfTXNrICAgICAgICgweDFVTCA8PCBFWFRJX0VNUjFfRU0xOF9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgRVhUSV9FTVIxX0VNMTggICAgICAgICAgIEVYVElfRU1SMV9FTTE4X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgRXZlbnQgTWFzayBvbiBsaW5lIDE4ICovCisjZGVmaW5lIEVYVElfRU1SMV9FTTE5X1BvcyAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9FTVIxX0VNMTlfTXNrICAgICAgICgweDFVTCA8PCBFWFRJX0VNUjFfRU0xOV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgRVhUSV9FTVIxX0VNMTkgICAgICAgICAgIEVYVElfRU1SMV9FTTE5X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgRXZlbnQgTWFzayBvbiBsaW5lIDE5ICovCisjZGVmaW5lIEVYVElfRU1SMV9FTTIwX1BvcyAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9FTVIxX0VNMjBfTXNrICAgICAgICgweDFVTCA8PCBFWFRJX0VNUjFfRU0yMF9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgRVhUSV9FTVIxX0VNMjAgICAgICAgICAgIEVYVElfRU1SMV9FTTIwX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgRXZlbnQgTWFzayBvbiBsaW5lIDIwICovCisjZGVmaW5lIEVYVElfRU1SMV9FTTIxX1BvcyAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9FTVIxX0VNMjFfTXNrICAgICAgICgweDFVTCA8PCBFWFRJX0VNUjFfRU0yMV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8KKyNkZWZpbmUgRVhUSV9FTVIxX0VNMjEgICAgICAgICAgIEVYVElfRU1SMV9FTTIxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgRXZlbnQgTWFzayBvbiBsaW5lIDIxICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBFWFRJX0lNUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovCisjZGVmaW5lIEVYVElfSU1SMl9Qb3MgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfSU1SMl9Nc2sgICAgICAgICAgICAoMHgwMDAxRkZGRlVMIDw8IEVYVElfSU1SMl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDFGRkZGICovCisjZGVmaW5lIEVYVElfSU1SMl9JTSAgICAgICAgICAgICBFWFRJX0lNUjJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUxIEludGVycnVwdCBNYXNrICAqLworI2RlZmluZSBFWFRJX0lNUjJfSU0zM19Qb3MgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0lNUjJfSU0zM19Nc2sgICAgICAgKDB4MVVMIDw8IEVYVElfSU1SMl9JTTMzX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBFWFRJX0lNUjJfSU0zMyAgICAgICAgICAgRVhUSV9JTVIyX0lNMzNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMSBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDMzICovCisjZGVmaW5lIEVYVElfSU1SMl9JTTM2X1BvcyAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9JTVIyX0lNMzZfTXNrICAgICAgICgweDFVTCA8PCBFWFRJX0lNUjJfSU0zNl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgRVhUSV9JTVIyX0lNMzYgICAgICAgICAgIEVYVElfSU1SMl9JTTM2X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgSW50ZXJydXB0IE1hc2sgb24gbGluZSAzNiAqLworI2RlZmluZSBFWFRJX0lNUjJfSU0zN19Qb3MgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfSU1SMl9JTTM3X01zayAgICAgICAoMHgxVUwgPDwgRVhUSV9JTVIyX0lNMzdfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIEVYVElfSU1SMl9JTTM3ICAgICAgICAgICBFWFRJX0lNUjJfSU0zN19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUxIEludGVycnVwdCBNYXNrIG9uIGxpbmUgMzcgKi8KKyNkZWZpbmUgRVhUSV9JTVIyX0lNMzhfUG9zICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0lNUjJfSU0zOF9Nc2sgICAgICAgKDB4MVVMIDw8IEVYVElfSU1SMl9JTTM4X1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBFWFRJX0lNUjJfSU0zOCAgICAgICAgICAgRVhUSV9JTVIyX0lNMzhfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMSBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDM4ICovCisjZGVmaW5lIEVYVElfSU1SMl9JTTM5X1BvcyAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9JTVIyX0lNMzlfTXNrICAgICAgICgweDFVTCA8PCBFWFRJX0lNUjJfSU0zOV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgRVhUSV9JTVIyX0lNMzkgICAgICAgICAgIEVYVElfSU1SMl9JTTM5X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgSW50ZXJydXB0IE1hc2sgb24gbGluZSAzOSAqLworI2RlZmluZSBFWFRJX0lNUjJfSU00MF9Qb3MgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfSU1SMl9JTTQwX01zayAgICAgICAoMHgxVUwgPDwgRVhUSV9JTVIyX0lNNDBfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIEVYVElfSU1SMl9JTTQwICAgICAgICAgICBFWFRJX0lNUjJfSU00MF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUxIEludGVycnVwdCBNYXNrIG9uIGxpbmUgNDAgKi8KKyNkZWZpbmUgRVhUSV9JTVIyX0lNNDFfUG9zICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0lNUjJfSU00MV9Nc2sgICAgICAgKDB4MVVMIDw8IEVYVElfSU1SMl9JTTQxX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBFWFRJX0lNUjJfSU00MSAgICAgICAgICAgRVhUSV9JTVIyX0lNNDFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMSBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDQxICovCisjZGVmaW5lIEVYVElfSU1SMl9JTTQyX1BvcyAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9JTVIyX0lNNDJfTXNrICAgICAgICgweDFVTCA8PCBFWFRJX0lNUjJfSU00Ml9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgRVhUSV9JTVIyX0lNNDIgICAgICAgICAgIEVYVElfSU1SMl9JTTQyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgSW50ZXJydXB0IE1hc2sgb24gbGluZSA0MiAqLworI2RlZmluZSBFWFRJX0lNUjJfSU00NF9Qb3MgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfSU1SMl9JTTQ0X01zayAgICAgICAoMHgxVUwgPDwgRVhUSV9JTVIyX0lNNDRfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIEVYVElfSU1SMl9JTTQ0ICAgICAgICAgICBFWFRJX0lNUjJfSU00NF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUxIEludGVycnVwdCBNYXNrIG9uIGxpbmUgNDQgKi8KKyNkZWZpbmUgRVhUSV9JTVIyX0lNNDVfUG9zICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0lNUjJfSU00NV9Nc2sgICAgICAgKDB4MVVMIDw8IEVYVElfSU1SMl9JTTQ1X1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLworI2RlZmluZSBFWFRJX0lNUjJfSU00NSAgICAgICAgICAgRVhUSV9JTVIyX0lNNDVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMSBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDQ1ICovCisjZGVmaW5lIEVYVElfSU1SMl9JTTQ2X1BvcyAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9JTVIyX0lNNDZfTXNrICAgICAgICgweDFVTCA8PCBFWFRJX0lNUjJfSU00Nl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgRVhUSV9JTVIyX0lNNDYgICAgICAgICAgIEVYVElfSU1SMl9JTTQ2X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgSW50ZXJydXB0IE1hc2sgb24gbGluZSA0NiAqLworI2RlZmluZSBFWFRJX0lNUjJfSU00OF9Qb3MgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfSU1SMl9JTTQ4X01zayAgICAgICAoMHgxVUwgPDwgRVhUSV9JTVIyX0lNNDhfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIEVYVElfSU1SMl9JTTQ4ICAgICAgICAgICBFWFRJX0lNUjJfSU00OF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUxIEludGVycnVwdCBNYXNrIG9uIGxpbmUgNDggKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIEVYVElfRU1SMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgRVhUSV9FTVIyX1BvcyAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9FTVIyX01zayAgICAgICAgICAgICgweDAwMDAwMzAwVUwgPDwgRVhUSV9FTVIyX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAzMDAwICovCisjZGVmaW5lIEVYVElfRU1SMl9FTSAgICAgICAgICAgICBFWFRJX0VNUjJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUxIEludGVycnVwdCBNYXNrICAqLworI2RlZmluZSBFWFRJX0VNUjJfRU00MF9Qb3MgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfRU1SMl9FTTQwX01zayAgICAgICAoMHgxVUwgPDwgRVhUSV9FTVIyX0VNNDBfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIEVYVElfRU1SMl9FTTQwICAgICAgICAgICBFWFRJX0VNUjJfRU00MF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUxIEV2ZW50IE1hc2sgb24gbGluZSA0MCAqLworI2RlZmluZSBFWFRJX0VNUjJfRU00MV9Qb3MgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9FTVIyX0VNNDFfTXNrICAgICAgICgweDFVTCA8PCBFWFRJX0VNUjJfRU00MV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgRVhUSV9FTVIyX0VNNDEgICAgICAgICAgIEVYVElfRU1SMl9FTTQxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTEgRXZlbnQgTWFzayBvbiBsaW5lIDQxICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBFWFRJX0MySU1SMSByZWdpc3RlciAgKioqKioqKioqKioqKiovCisjZGVmaW5lIEVYVElfQzJJTVIxX1BvcyAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfQzJJTVIxX01zayAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IEVYVElfQzJJTVIxX1BvcykgICAgICAgICAgICAgLyohPCAweEZGRkZGRkZGICovCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNICAgICAgICAgICBFWFRJX0MySU1SMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUyIHdha2V1cCB3aXRoIGludGVycnVwdCBNYXNrIG9uIEV2ZW50ICovCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNMF9Qb3MgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNMF9Nc2sgICAgICAoMHgxVUwgPDwgRVhUSV9DMklNUjFfSU0wX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNMCAgICAgICAgICBFWFRJX0MySU1SMV9JTTBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUyIEludGVycnVwdCBNYXNrIG9uIGxpbmUgMCAqLworI2RlZmluZSBFWFRJX0MySU1SMV9JTTFfUG9zICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0MySU1SMV9JTTFfTXNrICAgICAgKDB4MVVMIDw8IEVYVElfQzJJTVIxX0lNMV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBFWFRJX0MySU1SMV9JTTEgICAgICAgICAgRVhUSV9DMklNUjFfSU0xX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDEgKi8KKyNkZWZpbmUgRVhUSV9DMklNUjFfSU0yX1BvcyAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9DMklNUjFfSU0yX01zayAgICAgICgweDFVTCA8PCBFWFRJX0MySU1SMV9JTTJfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgRVhUSV9DMklNUjFfSU0yICAgICAgICAgIEVYVElfQzJJTVIxX0lNMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTIgSW50ZXJydXB0IE1hc2sgb24gbGluZSAyICovCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNM19Qb3MgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNM19Nc2sgICAgICAoMHgxVUwgPDwgRVhUSV9DMklNUjFfSU0zX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNMyAgICAgICAgICBFWFRJX0MySU1SMV9JTTNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUyIEludGVycnVwdCBNYXNrIG9uIGxpbmUgMyAqLworI2RlZmluZSBFWFRJX0MySU1SMV9JTTRfUG9zICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0MySU1SMV9JTTRfTXNrICAgICAgKDB4MVVMIDw8IEVYVElfQzJJTVIxX0lNNF9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBFWFRJX0MySU1SMV9JTTQgICAgICAgICAgRVhUSV9DMklNUjFfSU00X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDQgKi8KKyNkZWZpbmUgRVhUSV9DMklNUjFfSU01X1BvcyAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9DMklNUjFfSU01X01zayAgICAgICgweDFVTCA8PCBFWFRJX0MySU1SMV9JTTVfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgRVhUSV9DMklNUjFfSU01ICAgICAgICAgIEVYVElfQzJJTVIxX0lNNV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTIgSW50ZXJydXB0IE1hc2sgb24gbGluZSA1ICovCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNNl9Qb3MgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNNl9Nc2sgICAgICAoMHgxVUwgPDwgRVhUSV9DMklNUjFfSU02X1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNNiAgICAgICAgICBFWFRJX0MySU1SMV9JTTZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUyIEludGVycnVwdCBNYXNrIG9uIGxpbmUgNiAqLworI2RlZmluZSBFWFRJX0MySU1SMV9JTTdfUG9zICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0MySU1SMV9JTTdfTXNrICAgICAgKDB4MVVMIDw8IEVYVElfQzJJTVIxX0lNN19Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLworI2RlZmluZSBFWFRJX0MySU1SMV9JTTcgICAgICAgICAgRVhUSV9DMklNUjFfSU03X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDcgKi8KKyNkZWZpbmUgRVhUSV9DMklNUjFfSU04X1BvcyAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9DMklNUjFfSU04X01zayAgICAgICgweDFVTCA8PCBFWFRJX0MySU1SMV9JTThfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgRVhUSV9DMklNUjFfSU04ICAgICAgICAgIEVYVElfQzJJTVIxX0lNOF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTIgSW50ZXJydXB0IE1hc2sgb24gbGluZSA4ICovCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNOV9Qb3MgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNOV9Nc2sgICAgICAoMHgxVUwgPDwgRVhUSV9DMklNUjFfSU05X1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNOSAgICAgICAgICBFWFRJX0MySU1SMV9JTTlfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUyIEludGVycnVwdCBNYXNrIG9uIGxpbmUgOSAqLworI2RlZmluZSBFWFRJX0MySU1SMV9JTTEwX1BvcyAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0MySU1SMV9JTTEwX01zayAgICAgKDB4MVVMIDw8IEVYVElfQzJJTVIxX0lNMTBfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLworI2RlZmluZSBFWFRJX0MySU1SMV9JTTEwICAgICAgICAgRVhUSV9DMklNUjFfSU0xMF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDEwICovCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNMTFfUG9zICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNMTFfTXNrICAgICAoMHgxVUwgPDwgRVhUSV9DMklNUjFfSU0xMV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNMTEgICAgICAgICBFWFRJX0MySU1SMV9JTTExX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUyIEludGVycnVwdCBNYXNrIG9uIGxpbmUgMTEgKi8KKyNkZWZpbmUgRVhUSV9DMklNUjFfSU0xMl9Qb3MgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9DMklNUjFfSU0xMl9Nc2sgICAgICgweDFVTCA8PCBFWFRJX0MySU1SMV9JTTEyX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgRVhUSV9DMklNUjFfSU0xMiAgICAgICAgIEVYVElfQzJJTVIxX0lNMTJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTIgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxMiAqLworI2RlZmluZSBFWFRJX0MySU1SMV9JTTEzX1BvcyAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0MySU1SMV9JTTEzX01zayAgICAgKDB4MVVMIDw8IEVYVElfQzJJTVIxX0lNMTNfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLworI2RlZmluZSBFWFRJX0MySU1SMV9JTTEzICAgICAgICAgRVhUSV9DMklNUjFfSU0xM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDEzICovCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNMTRfUG9zICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNMTRfTXNrICAgICAoMHgxVUwgPDwgRVhUSV9DMklNUjFfSU0xNF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNMTQgICAgICAgICBFWFRJX0MySU1SMV9JTTE0X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUyIEludGVycnVwdCBNYXNrIG9uIGxpbmUgMTQgKi8KKyNkZWZpbmUgRVhUSV9DMklNUjFfSU0xNV9Qb3MgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9DMklNUjFfSU0xNV9Nc2sgICAgICgweDFVTCA8PCBFWFRJX0MySU1SMV9JTTE1X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgRVhUSV9DMklNUjFfSU0xNSAgICAgICAgIEVYVElfQzJJTVIxX0lNMTVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTIgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxNSAqLworI2RlZmluZSBFWFRJX0MySU1SMV9JTTE2X1BvcyAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0MySU1SMV9JTTE2X01zayAgICAgKDB4MVVMIDw8IEVYVElfQzJJTVIxX0lNMTZfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBFWFRJX0MySU1SMV9JTTE2ICAgICAgICAgRVhUSV9DMklNUjFfSU0xNl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDE2ICovCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNMTdfUG9zICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNMTdfTXNrICAgICAoMHgxVUwgPDwgRVhUSV9DMklNUjFfSU0xN19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNMTcgICAgICAgICBFWFRJX0MySU1SMV9JTTE3X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUyIEludGVycnVwdCBNYXNrIG9uIGxpbmUgMTcgKi8KKyNkZWZpbmUgRVhUSV9DMklNUjFfSU0xOF9Qb3MgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9DMklNUjFfSU0xOF9Nc2sgICAgICgweDFVTCA8PCBFWFRJX0MySU1SMV9JTTE4X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgRVhUSV9DMklNUjFfSU0xOCAgICAgICAgIEVYVElfQzJJTVIxX0lNMThfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTIgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxOCAqLworI2RlZmluZSBFWFRJX0MySU1SMV9JTTE5X1BvcyAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0MySU1SMV9JTTE5X01zayAgICAgKDB4MVVMIDw8IEVYVElfQzJJTVIxX0lNMTlfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLworI2RlZmluZSBFWFRJX0MySU1SMV9JTTE5ICAgICAgICAgRVhUSV9DMklNUjFfSU0xOV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDE5ICovCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNMjBfUG9zICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNMjBfTXNrICAgICAoMHgxVUwgPDwgRVhUSV9DMklNUjFfSU0yMF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNMjAgICAgICAgICBFWFRJX0MySU1SMV9JTTIwX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUyIEludGVycnVwdCBNYXNrIG9uIGxpbmUgMjAgKi8KKyNkZWZpbmUgRVhUSV9DMklNUjFfSU0yMV9Qb3MgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9DMklNUjFfSU0yMV9Nc2sgICAgICgweDFVTCA8PCBFWFRJX0MySU1SMV9JTTIxX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8KKyNkZWZpbmUgRVhUSV9DMklNUjFfSU0yMSAgICAgICAgIEVYVElfQzJJTVIxX0lNMjFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTIgSW50ZXJydXB0IE1hc2sgb24gbGluZSAyMSAqLworI2RlZmluZSBFWFRJX0MySU1SMV9JTTIyX1BvcyAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0MySU1SMV9JTTIyX01zayAgICAgKDB4MVVMIDw8IEVYVElfQzJJTVIxX0lNMjJfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLworI2RlZmluZSBFWFRJX0MySU1SMV9JTTIyICAgICAgICAgRVhUSV9DMklNUjFfSU0yMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDIyICovCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNMjNfUG9zICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNMjNfTXNrICAgICAoMHgxVUwgPDwgRVhUSV9DMklNUjFfSU0yM19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwODAwMDAwICovCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNMjMgICAgICAgICBFWFRJX0MySU1SMV9JTTIzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUyIEludGVycnVwdCBNYXNrIG9uIGxpbmUgMjMgKi8KKyNkZWZpbmUgRVhUSV9DMklNUjFfSU0yNF9Qb3MgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9DMklNUjFfSU0yNF9Nc2sgICAgICgweDFVTCA8PCBFWFRJX0MySU1SMV9JTTI0X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8KKyNkZWZpbmUgRVhUSV9DMklNUjFfSU0yNCAgICAgICAgIEVYVElfQzJJTVIxX0lNMjRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTIgSW50ZXJydXB0IE1hc2sgb24gbGluZSAyNCAqLworI2RlZmluZSBFWFRJX0MySU1SMV9JTTI1X1BvcyAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0MySU1SMV9JTTI1X01zayAgICAgKDB4MVVMIDw8IEVYVElfQzJJTVIxX0lNMjVfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLworI2RlZmluZSBFWFRJX0MySU1SMV9JTTI1ICAgICAgICAgRVhUSV9DMklNUjFfSU0yNV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDI1ICovCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNMjhfUG9zICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNMjhfTXNrICAgICAoMHgxVUwgPDwgRVhUSV9DMklNUjFfSU0yOF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDEwMDAwMDAwICovCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNMjggICAgICAgICBFWFRJX0MySU1SMV9JTTI4X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUyIEludGVycnVwdCBNYXNrIG9uIGxpbmUgMjggKi8KKyNkZWZpbmUgRVhUSV9DMklNUjFfSU0yOV9Qb3MgICAgICgyOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9DMklNUjFfSU0yOV9Nc2sgICAgICgweDFVTCA8PCBFWFRJX0MySU1SMV9JTTI5X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8KKyNkZWZpbmUgRVhUSV9DMklNUjFfSU0yOSAgICAgICAgIEVYVElfQzJJTVIxX0lNMjlfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTIgSW50ZXJydXB0IE1hc2sgb24gbGluZSAyOSAqLworI2RlZmluZSBFWFRJX0MySU1SMV9JTTMwX1BvcyAgICAgKDMwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0MySU1SMV9JTTMwX01zayAgICAgKDB4MVVMIDw8IEVYVElfQzJJTVIxX0lNMzBfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHg0MDAwMDAwMCAqLworI2RlZmluZSBFWFRJX0MySU1SMV9JTTMwICAgICAgICAgRVhUSV9DMklNUjFfSU0zMF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDMwICovCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNMzFfUG9zICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNMzFfTXNrICAgICAoMHgxVUwgPDwgRVhUSV9DMklNUjFfSU0zMV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDgwMDAwMDAwICovCisjZGVmaW5lIEVYVElfQzJJTVIxX0lNMzEgICAgICAgICBFWFRJX0MySU1SMV9JTTMxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUyIEludGVycnVwdCBNYXNrIG9uIGxpbmUgMzEgKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIEVYVElfQzJFTVIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKi8KKyNkZWZpbmUgRVhUSV9DMkVNUjFfUG9zICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9DMkVNUjFfTXNrICAgICAgICAgICgweDAwM0VGRkZGVUwgPDwgRVhUSV9DMkVNUjFfUG9zKSAgICAgICAgICAgICAvKiE8IDB4RkZGRkZGRkYgKi8KKyNkZWZpbmUgRVhUSV9DMkVNUjFfRU0gICAgICAgICAgIEVYVElfQzJFTVIxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTIgRXZlbnQgTWFzayAqLworI2RlZmluZSBFWFRJX0MyRU1SMV9FTTBfUG9zICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0MyRU1SMV9FTTBfTXNrICAgICAgKDB4MVVMIDw8IEVYVElfQzJFTVIxX0VNMF9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBFWFRJX0MyRU1SMV9FTTAgICAgICAgICAgRVhUSV9DMkVNUjFfRU0wX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBFdmVudCBNYXNrIG9uIGxpbmUgMCAqLworI2RlZmluZSBFWFRJX0MyRU1SMV9FTTFfUG9zICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0MyRU1SMV9FTTFfTXNrICAgICAgKDB4MVVMIDw8IEVYVElfQzJFTVIxX0VNMV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBFWFRJX0MyRU1SMV9FTTEgICAgICAgICAgRVhUSV9DMkVNUjFfRU0xX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBFdmVudCBNYXNrIG9uIGxpbmUgMSAqLworI2RlZmluZSBFWFRJX0MyRU1SMV9FTTJfUG9zICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0MyRU1SMV9FTTJfTXNrICAgICAgKDB4MVVMIDw8IEVYVElfQzJFTVIxX0VNMl9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBFWFRJX0MyRU1SMV9FTTIgICAgICAgICAgRVhUSV9DMkVNUjFfRU0yX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBFdmVudCBNYXNrIG9uIGxpbmUgMiAqLworI2RlZmluZSBFWFRJX0MyRU1SMV9FTTNfUG9zICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0MyRU1SMV9FTTNfTXNrICAgICAgKDB4MVVMIDw8IEVYVElfQzJFTVIxX0VNM19Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBFWFRJX0MyRU1SMV9FTTMgICAgICAgICAgRVhUSV9DMkVNUjFfRU0zX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBFdmVudCBNYXNrIG9uIGxpbmUgMyAqLworI2RlZmluZSBFWFRJX0MyRU1SMV9FTTRfUG9zICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0MyRU1SMV9FTTRfTXNrICAgICAgKDB4MVVMIDw8IEVYVElfQzJFTVIxX0VNNF9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBFWFRJX0MyRU1SMV9FTTQgICAgICAgICAgRVhUSV9DMkVNUjFfRU00X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBFdmVudCBNYXNrIG9uIGxpbmUgNCAqLworI2RlZmluZSBFWFRJX0MyRU1SMV9FTTVfUG9zICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0MyRU1SMV9FTTVfTXNrICAgICAgKDB4MVVMIDw8IEVYVElfQzJFTVIxX0VNNV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBFWFRJX0MyRU1SMV9FTTUgICAgICAgICAgRVhUSV9DMkVNUjFfRU01X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBFdmVudCBNYXNrIG9uIGxpbmUgNSAqLworI2RlZmluZSBFWFRJX0MyRU1SMV9FTTZfUG9zICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0MyRU1SMV9FTTZfTXNrICAgICAgKDB4MVVMIDw8IEVYVElfQzJFTVIxX0VNNl9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBFWFRJX0MyRU1SMV9FTTYgICAgICAgICAgRVhUSV9DMkVNUjFfRU02X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBFdmVudCBNYXNrIG9uIGxpbmUgNiAqLworI2RlZmluZSBFWFRJX0MyRU1SMV9FTTdfUG9zICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0MyRU1SMV9FTTdfTXNrICAgICAgKDB4MVVMIDw8IEVYVElfQzJFTVIxX0VNN19Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLworI2RlZmluZSBFWFRJX0MyRU1SMV9FTTcgICAgICAgICAgRVhUSV9DMkVNUjFfRU03X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBFdmVudCBNYXNrIG9uIGxpbmUgNyAqLworI2RlZmluZSBFWFRJX0MyRU1SMV9FTThfUG9zICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0MyRU1SMV9FTThfTXNrICAgICAgKDB4MVVMIDw8IEVYVElfQzJFTVIxX0VNOF9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBFWFRJX0MyRU1SMV9FTTggICAgICAgICAgRVhUSV9DMkVNUjFfRU04X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBFdmVudCBNYXNrIG9uIGxpbmUgOCAqLworI2RlZmluZSBFWFRJX0MyRU1SMV9FTTlfUG9zICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0MyRU1SMV9FTTlfTXNrICAgICAgKDB4MVVMIDw8IEVYVElfQzJFTVIxX0VNOV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBFWFRJX0MyRU1SMV9FTTkgICAgICAgICAgRVhUSV9DMkVNUjFfRU05X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBFdmVudCBNYXNrIG9uIGxpbmUgOSAqLworI2RlZmluZSBFWFRJX0MyRU1SMV9FTTEwX1BvcyAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0MyRU1SMV9FTTEwX01zayAgICAgKDB4MVVMIDw8IEVYVElfQzJFTVIxX0VNMTBfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLworI2RlZmluZSBFWFRJX0MyRU1SMV9FTTEwICAgICAgICAgRVhUSV9DMkVNUjFfRU0xMF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBFdmVudCBNYXNrIG9uIGxpbmUgMTAgKi8KKyNkZWZpbmUgRVhUSV9DMkVNUjFfRU0xMV9Qb3MgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9DMkVNUjFfRU0xMV9Nc2sgICAgICgweDFVTCA8PCBFWFRJX0MyRU1SMV9FTTExX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgRVhUSV9DMkVNUjFfRU0xMSAgICAgICAgIEVYVElfQzJFTVIxX0VNMTFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTIgRXZlbnQgTWFzayBvbiBsaW5lIDExICovCisjZGVmaW5lIEVYVElfQzJFTVIxX0VNMTJfUG9zICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfQzJFTVIxX0VNMTJfTXNrICAgICAoMHgxVUwgPDwgRVhUSV9DMkVNUjFfRU0xMl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIEVYVElfQzJFTVIxX0VNMTIgICAgICAgICBFWFRJX0MyRU1SMV9FTTEyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUyIEV2ZW50IE1hc2sgb24gbGluZSAxMiAqLworI2RlZmluZSBFWFRJX0MyRU1SMV9FTTEzX1BvcyAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0MyRU1SMV9FTTEzX01zayAgICAgKDB4MVVMIDw8IEVYVElfQzJFTVIxX0VNMTNfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLworI2RlZmluZSBFWFRJX0MyRU1SMV9FTTEzICAgICAgICAgRVhUSV9DMkVNUjFfRU0xM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBFdmVudCBNYXNrIG9uIGxpbmUgMTMgKi8KKyNkZWZpbmUgRVhUSV9DMkVNUjFfRU0xNF9Qb3MgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9DMkVNUjFfRU0xNF9Nc2sgICAgICgweDFVTCA8PCBFWFRJX0MyRU1SMV9FTTE0X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgRVhUSV9DMkVNUjFfRU0xNCAgICAgICAgIEVYVElfQzJFTVIxX0VNMTRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTIgRXZlbnQgTWFzayBvbiBsaW5lIDE0ICovCisjZGVmaW5lIEVYVElfQzJFTVIxX0VNMTVfUG9zICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfQzJFTVIxX0VNMTVfTXNrICAgICAoMHgxVUwgPDwgRVhUSV9DMkVNUjFfRU0xNV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovCisjZGVmaW5lIEVYVElfQzJFTVIxX0VNMTUgICAgICAgICBFWFRJX0MyRU1SMV9FTTE1X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUyIEV2ZW50IE1hc2sgb24gbGluZSAxNSAqLworI2RlZmluZSBFWFRJX0MyRU1SMV9FTTE3X1BvcyAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0MyRU1SMV9FTTE3X01zayAgICAgKDB4MVVMIDw8IEVYVElfQzJFTVIxX0VNMTdfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLworI2RlZmluZSBFWFRJX0MyRU1SMV9FTTE3ICAgICAgICAgRVhUSV9DMkVNUjFfRU0xN19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBFdmVudCBNYXNrIG9uIGxpbmUgMTcgKi8KKyNkZWZpbmUgRVhUSV9DMkVNUjFfRU0xOF9Qb3MgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9DMkVNUjFfRU0xOF9Nc2sgICAgICgweDFVTCA8PCBFWFRJX0MyRU1SMV9FTTE4X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgRVhUSV9DMkVNUjFfRU0xOCAgICAgICAgIEVYVElfQzJFTVIxX0VNMThfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTIgRXZlbnQgTWFzayBvbiBsaW5lIDE4ICovCisjZGVmaW5lIEVYVElfQzJFTVIxX0VNMTlfUG9zICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfQzJFTVIxX0VNMTlfTXNrICAgICAoMHgxVUwgPDwgRVhUSV9DMkVNUjFfRU0xOV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovCisjZGVmaW5lIEVYVElfQzJFTVIxX0VNMTkgICAgICAgICBFWFRJX0MyRU1SMV9FTTE5X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUyIEV2ZW50IE1hc2sgb24gbGluZSAxOSAqLworI2RlZmluZSBFWFRJX0MyRU1SMV9FTTIwX1BvcyAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0MyRU1SMV9FTTIwX01zayAgICAgKDB4MVVMIDw8IEVYVElfQzJFTVIxX0VNMjBfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLworI2RlZmluZSBFWFRJX0MyRU1SMV9FTTIwICAgICAgICAgRVhUSV9DMkVNUjFfRU0yMF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBFdmVudCBNYXNrIG9uIGxpbmUgMjAgKi8KKyNkZWZpbmUgRVhUSV9DMkVNUjFfRU0yMV9Qb3MgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9DMkVNUjFfRU0yMV9Nc2sgICAgICgweDFVTCA8PCBFWFRJX0MyRU1SMV9FTTIxX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8KKyNkZWZpbmUgRVhUSV9DMkVNUjFfRU0yMSAgICAgICAgIEVYVElfQzJFTVIxX0VNMjFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTIgRXZlbnQgTWFzayBvbiBsaW5lIDIxICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBFWFRJX0MySU1SMiByZWdpc3RlciAgKioqKioqKioqKioqKiovCisjZGVmaW5lIEVYVElfQzJJTVIyX1BvcyAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfQzJJTVIyX01zayAgICAgICAgICAoMHgwMDAxRkZGRlVMIDw8IEVYVElfQzJJTVIyX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDFGRkZGICovCisjZGVmaW5lIEVYVElfQzJJTVIyX0lNICAgICAgICAgICBFWFRJX0MySU1SMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUyIEludGVycnVwdCBNYXNrICAqLworI2RlZmluZSBFWFRJX0MySU1SMl9JTTMzX1BvcyAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0MySU1SMl9JTTMzX01zayAgICAgKDB4MVVMIDw8IEVYVElfQzJJTVIyX0lNMzNfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBFWFRJX0MySU1SMl9JTTMzICAgICAgICAgRVhUSV9DMklNUjJfSU0zM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDMzICovCisjZGVmaW5lIEVYVElfQzJJTVIyX0lNMzZfUG9zICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfQzJJTVIyX0lNMzZfTXNrICAgICAoMHgxVUwgPDwgRVhUSV9DMklNUjJfSU0zNl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIEVYVElfQzJJTVIyX0lNMzYgICAgICAgICBFWFRJX0MySU1SMl9JTTM2X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUyIEludGVycnVwdCBNYXNrIG9uIGxpbmUgMzYgKi8KKyNkZWZpbmUgRVhUSV9DMklNUjJfSU0zN19Qb3MgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9DMklNUjJfSU0zN19Nc2sgICAgICgweDFVTCA8PCBFWFRJX0MySU1SMl9JTTM3X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgRVhUSV9DMklNUjJfSU0zNyAgICAgICAgIEVYVElfQzJJTVIyX0lNMzdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTIgSW50ZXJydXB0IE1hc2sgb24gbGluZSAzNyAqLworI2RlZmluZSBFWFRJX0MySU1SMl9JTTM4X1BvcyAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0MySU1SMl9JTTM4X01zayAgICAgKDB4MVVMIDw8IEVYVElfQzJJTVIyX0lNMzhfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBFWFRJX0MySU1SMl9JTTM4ICAgICAgICAgRVhUSV9DMklNUjJfSU0zOF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDM4ICovCisjZGVmaW5lIEVYVElfQzJJTVIyX0lNMzlfUG9zICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfQzJJTVIyX0lNMzlfTXNrICAgICAoMHgxVUwgPDwgRVhUSV9DMklNUjJfSU0zOV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIEVYVElfQzJJTVIyX0lNMzkgICAgICAgICBFWFRJX0MySU1SMl9JTTM5X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUyIEludGVycnVwdCBNYXNrIG9uIGxpbmUgMzkgKi8KKyNkZWZpbmUgRVhUSV9DMklNUjJfSU00MF9Qb3MgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9DMklNUjJfSU00MF9Nc2sgICAgICgweDFVTCA8PCBFWFRJX0MySU1SMl9JTTQwX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgRVhUSV9DMklNUjJfSU00MCAgICAgICAgIEVYVElfQzJJTVIyX0lNNDBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTIgSW50ZXJydXB0IE1hc2sgb24gbGluZSA0MCAqLworI2RlZmluZSBFWFRJX0MySU1SMl9JTTQxX1BvcyAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0MySU1SMl9JTTQxX01zayAgICAgKDB4MVVMIDw8IEVYVElfQzJJTVIyX0lNNDFfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBFWFRJX0MySU1SMl9JTTQxICAgICAgICAgRVhUSV9DMklNUjJfSU00MV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDQxICovCisjZGVmaW5lIEVYVElfQzJJTVIyX0lNNDJfUG9zICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfQzJJTVIyX0lNNDJfTXNrICAgICAoMHgxVUwgPDwgRVhUSV9DMklNUjJfSU00Ml9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIEVYVElfQzJJTVIyX0lNNDIgICAgICAgICBFWFRJX0MySU1SMl9JTTQyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUyIEludGVycnVwdCBNYXNrIG9uIGxpbmUgNDIgKi8KKyNkZWZpbmUgRVhUSV9DMklNUjJfSU00NF9Qb3MgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9DMklNUjJfSU00NF9Nc2sgICAgICgweDFVTCA8PCBFWFRJX0MySU1SMl9JTTQ0X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgRVhUSV9DMklNUjJfSU00NCAgICAgICAgIEVYVElfQzJJTVIyX0lNNDRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTIgSW50ZXJydXB0IE1hc2sgb24gbGluZSA0NCAqLworI2RlZmluZSBFWFRJX0MySU1SMl9JTTQ1X1BvcyAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0MySU1SMl9JTTQ1X01zayAgICAgKDB4MVVMIDw8IEVYVElfQzJJTVIyX0lNNDVfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLworI2RlZmluZSBFWFRJX0MySU1SMl9JTTQ1ICAgICAgICAgRVhUSV9DMklNUjJfSU00NV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDQ1ICovCisjZGVmaW5lIEVYVElfQzJJTVIyX0lNNDZfUG9zICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfQzJJTVIyX0lNNDZfTXNrICAgICAoMHgxVUwgPDwgRVhUSV9DMklNUjJfSU00Nl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIEVYVElfQzJJTVIyX0lNNDYgICAgICAgICBFWFRJX0MySU1SMl9JTTQ2X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUyIEludGVycnVwdCBNYXNrIG9uIGxpbmUgNDYgKi8KKyNkZWZpbmUgRVhUSV9DMklNUjJfSU00OF9Qb3MgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRVhUSV9DMklNUjJfSU00OF9Nc2sgICAgICgweDFVTCA8PCBFWFRJX0MySU1SMl9JTTQ4X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgRVhUSV9DMklNUjJfSU00OCAgICAgICAgIEVYVElfQzJJTVIyX0lNNDhfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTIgSW50ZXJydXB0IE1hc2sgb24gbGluZSA0OCAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgRVhUSV9DMkVNUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqLworI2RlZmluZSBFWFRJX0MyRU1SMl9Qb3MgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0MyRU1SMl9Nc2sgICAgICAgICAgKDB4MDAwMDAzMDBVTCA8PCBFWFRJX0MyRU1SMl9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDMwMDAgKi8KKyNkZWZpbmUgRVhUSV9DMkVNUjJfRU0gICAgICAgICAgIEVYVElfQzJFTVIyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTIgSW50ZXJydXB0IE1hc2sgICovCisjZGVmaW5lIEVYVElfQzJFTVIyX0VNNDBfUG9zICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEVYVElfQzJFTVIyX0VNNDBfTXNrICAgICAoMHgxVUwgPDwgRVhUSV9DMkVNUjJfRU00MF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIEVYVElfQzJFTVIyX0VNNDAgICAgICAgICBFWFRJX0MyRU1SMl9FTTQwX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUyIEV2ZW50IE1hc2sgb24gbGluZSA0MCAqLworI2RlZmluZSBFWFRJX0MyRU1SMl9FTTQxX1BvcyAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBFWFRJX0MyRU1SMl9FTTQxX01zayAgICAgKDB4MVVMIDw8IEVYVElfQzJFTVIyX0VNNDFfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBFWFRJX0MyRU1SMl9FTTQxICAgICAgICAgRVhUSV9DMkVNUjJfRU00MV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBFdmVudCBNYXNrIG9uIGxpbmUgNDEgKi8KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisvKiAgICAgICAgICAgICAgICAgICAgICAgUHVibGljIEtleSBBY2NlbGVyYXRvciAoUEtBKSAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKy8qKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFBLQV9DUiByZWdpc3RlciAgKioqKioqKioqKioqKiovCisjZGVmaW5lIFBLQV9DUl9FTl9Qb3MgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQS0FfQ1JfRU5fTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUEtBX0NSX0VOX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFBLQV9DUl9FTiAgICAgICAgICAgICAgICAgIFBLQV9DUl9FTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBLQSBlbmFibGUgKi8KKyNkZWZpbmUgUEtBX0NSX1NUQVJUX1BvcyAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBLQV9DUl9TVEFSVF9Nc2sgICAgICAgICAgICgweDFVTCA8PCBQS0FfQ1JfU1RBUlRfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgUEtBX0NSX1NUQVJUICAgICAgICAgICAgICAgUEtBX0NSX1NUQVJUX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU3RhcnQgb3BlcmF0aW9uICovCisjZGVmaW5lIFBLQV9DUl9NT0RFX1BvcyAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQS0FfQ1JfTU9ERV9Nc2sgICAgICAgICAgICAoMHgzRlVMIDw8IFBLQV9DUl9NT0RFX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAzRjAwICovCisjZGVmaW5lIFBLQV9DUl9NT0RFICAgICAgICAgICAgICAgIFBLQV9DUl9NT0RFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE1PREVbNTowXSBQS0Egb3BlcmF0aW9uIGNvZGUgKi8KKyNkZWZpbmUgUEtBX0NSX01PREVfMCAgICAgICAgICAgICAgKDB4MDFVIDw8IFBLQV9DUl9NT0RFX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBQS0FfQ1JfTU9ERV8xICAgICAgICAgICAgICAoMHgwMlUgPDwgUEtBX0NSX01PREVfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIFBLQV9DUl9NT0RFXzIgICAgICAgICAgICAgICgweDA0VSA8PCBQS0FfQ1JfTU9ERV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgUEtBX0NSX01PREVfMyAgICAgICAgICAgICAgKDB4MDhVIDw8IFBLQV9DUl9NT0RFX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLworI2RlZmluZSBQS0FfQ1JfTU9ERV80ICAgICAgICAgICAgICAoMHgxMFUgPDwgUEtBX0NSX01PREVfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIFBLQV9DUl9NT0RFXzUgICAgICAgICAgICAgICgweDIwVSA8PCBQS0FfQ1JfTU9ERV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgUEtBX0NSX1BST0NFTkRJRV9Qb3MgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBLQV9DUl9QUk9DRU5ESUVfTXNrICAgICAgICgweDFVTCA8PCBQS0FfQ1JfUFJPQ0VORElFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgUEtBX0NSX1BST0NFTkRJRSAgICAgICAgICAgUEtBX0NSX1BST0NFTkRJRV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kIG9mIG9wZXJhdGlvbiBpbnRlcnJ1cHQgZW5hYmxlICovCisjZGVmaW5lIFBLQV9DUl9SQU1FUlJJRV9Qb3MgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQS0FfQ1JfUkFNRVJSSUVfTXNrICAgICAgICAoMHgxVUwgPDwgUEtBX0NSX1JBTUVSUklFX1BvcykgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovCisjZGVmaW5lIFBLQV9DUl9SQU1FUlJJRSAgICAgICAgICAgIFBLQV9DUl9SQU1FUlJJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IFJBTSBlcnJvciBpbnRlcnJ1cHQgZW5hYmxlICovCisjZGVmaW5lIFBLQV9DUl9BRERSRVJSSUVfUG9zICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQS0FfQ1JfQUREUkVSUklFX01zayAgICAgICAoMHgxVUwgPDwgUEtBX0NSX0FERFJFUlJJRV9Qb3MpICAgICAgICAgLyohPCAweDAwMTAwMDAwICovCisjZGVmaW5lIFBLQV9DUl9BRERSRVJSSUUgICAgICAgICAgIFBLQV9DUl9BRERSRVJSSUVfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFJBTSBlcnJvciBpbnRlcnJ1cHQgZW5hYmxlICovCisKKy8qKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFBLQV9TUiByZWdpc3RlciAgKioqKioqKioqKioqKiovCisjZGVmaW5lIFBLQV9TUl9CVVNZX1BvcyAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQS0FfU1JfQlVTWV9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgUEtBX1NSX0JVU1lfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIFBLQV9TUl9CVVNZICAgICAgICAgICAgICAgIFBLQV9TUl9CVVNZX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBLQSBvcGVyYXRpb24gaXMgaW4gcHJvZ3Jlc3MgKi8KKyNkZWZpbmUgUEtBX1NSX1BST0NFTkRGX1BvcyAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBLQV9TUl9QUk9DRU5ERl9Nc2sgICAgICAgICgweDFVTCA8PCBQS0FfU1JfUFJPQ0VOREZfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgUEtBX1NSX1BST0NFTkRGICAgICAgICAgICAgUEtBX1NSX1BST0NFTkRGX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgUEtBIGVuZCBvZiBvcGVyYXRpb24gZmxhZyAqLworI2RlZmluZSBQS0FfU1JfUkFNRVJSRl9Qb3MgICAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUEtBX1NSX1JBTUVSUkZfTXNrICAgICAgICAgKDB4MVVMIDw8IFBLQV9TUl9SQU1FUlJGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLworI2RlZmluZSBQS0FfU1JfUkFNRVJSRiAgICAgICAgICAgICBQS0FfU1JfUkFNRVJSRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBQS0EgUkFNIGVycm9yIGZsYWcgKi8KKyNkZWZpbmUgUEtBX1NSX0FERFJFUlJGX1BvcyAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBLQV9TUl9BRERSRVJSRl9Nc2sgICAgICAgICgweDFVTCA8PCBQS0FfU1JfQUREUkVSUkZfUG9zKSAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgUEtBX1NSX0FERFJFUlJGICAgICAgICAgICAgUEtBX1NSX0FERFJFUlJGX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgQWRkcmVzcyBlcnJvciBmbGFnICovCisKKy8qKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFBLQV9DTFJGUiByZWdpc3RlciAgKioqKioqKioqKioqKiovCisjZGVmaW5lIFBLQV9DTFJGUl9QUk9DRU5ERkNfUG9zICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQS0FfQ0xSRlJfUFJPQ0VOREZDX01zayAgICAoMHgxVUwgPDwgUEtBX0NMUkZSX1BST0NFTkRGQ19Qb3MpICAgICAgLyohPCAweDAwMDIwMDAwICovCisjZGVmaW5lIFBLQV9DTFJGUl9QUk9DRU5ERkMgICAgICAgIFBLQV9DTFJGUl9QUk9DRU5ERkNfTXNrICAgICAgICAgICAgICAgICAvKiE8IENsZWFyIFBLQSBlbmQgb2Ygb3BlcmF0aW9uIGZsYWcgKi8KKyNkZWZpbmUgUEtBX0NMUkZSX1JBTUVSUkZDX1BvcyAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBLQV9DTFJGUl9SQU1FUlJGQ19Nc2sgICAgICgweDFVTCA8PCBQS0FfQ0xSRlJfUkFNRVJSRkNfUG9zKSAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgUEtBX0NMUkZSX1JBTUVSUkZDICAgICAgICAgUEtBX0NMUkZSX1JBTUVSUkZDX01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2xlYXIgUEtBIFJBTSBlcnJvciBmbGFnICovCisjZGVmaW5lIFBLQV9DTFJGUl9BRERSRVJSRkNfUG9zICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQS0FfQ0xSRlJfQUREUkVSUkZDX01zayAgICAoMHgxVUwgPDwgUEtBX0NMUkZSX0FERFJFUlJGQ19Qb3MpICAgICAgLyohPCAweDAwMTAwMDAwICovCisjZGVmaW5lIFBLQV9DTFJGUl9BRERSRVJSRkMgICAgICAgIFBLQV9DTFJGUl9BRERSRVJSRkNfTXNrICAgICAgICAgICAgICAgICAvKiE8IENsZWFyIGFkZHJlc3MgZXJyb3IgZmxhZyAqLworCisvKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBQS0EgUkFNICAqKioqKioqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBQS0FfUkFNX09GRlNFVCAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDQwMFUgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBLQSBSQU0gYWRkcmVzcyBvZmZzZXQgKi8KKworLyogQ29tcHV0ZSBNb250Z29tZXJ5IHBhcmFtZXRlciBpbnB1dCBkYXRhICovCisjZGVmaW5lIFBLQV9NT05UR09NRVJZX1BBUkFNX0lOX01PRF9OQl9CSVRTICAgICAgICgoMHg0MDRVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgbW9kdWx1cyBudW1iZXIgb2YgYml0cyAqLworI2RlZmluZSBQS0FfTU9OVEdPTUVSWV9QQVJBTV9JTl9NT0RVTFVTICAgICAgICAgICAoKDB4RDVDVSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IElucHV0IG1vZHVsdXMgKi8KKworLyogQ29tcHV0ZSBNb250Z29tZXJ5IHBhcmFtZXRlciBvdXRwdXQgZGF0YSAqLworI2RlZmluZSBQS0FfTU9OVEdPTUVSWV9QQVJBTV9PVVRfUEFSQU1FVEVSICAgICAgICAoKDB4NTk0VSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IE91dHB1dCBNb250Z29tZXJ5IHBhcmFtZXRlciAqLworCisvKiBDb21wdXRlIG1vZHVsYXIgZXhwb25lbnRpYXRpb24gaW5wdXQgZGF0YSAqLworI2RlZmluZSBQS0FfTU9EVUxBUl9FWFBfSU5fRVhQX05CX0JJVFMgICAgICAgICAgICAoKDB4NDAwVSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IElucHV0IGV4cG9uZW50IG51bWJlciBvZiBiaXRzICovCisjZGVmaW5lIFBLQV9NT0RVTEFSX0VYUF9JTl9PUF9OQl9CSVRTICAgICAgICAgICAgICgoMHg0MDRVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgb3BlcmFuZCBudW1iZXIgb2YgYml0cyAqLworI2RlZmluZSBQS0FfTU9EVUxBUl9FWFBfSU5fTU9OVEdPTUVSWV9QQVJBTSAgICAgICAoKDB4NTk0VSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IElucHV0IHN0b3JhZ2UgYXJlYSBmb3IgTW9udGdvbWVyeSBwYXJhbWV0ZXIgKi8KKyNkZWZpbmUgUEtBX01PRFVMQVJfRVhQX0lOX0VYUE9ORU5UX0JBU0UgICAgICAgICAgKCgweEE0NFUgLSBQS0FfUkFNX09GRlNFVCk+PjIpICAgLyohPCBJbnB1dCBiYXNlIG9mIHRoZSBleHBvbmVudGlhdGlvbiAqLworI2RlZmluZSBQS0FfTU9EVUxBUl9FWFBfSU5fRVhQT05FTlQgICAgICAgICAgICAgICAoKDB4QkQwVSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IElucHV0IGV4cG9uZW50IHRvIHByb2Nlc3MgKi8KKyNkZWZpbmUgUEtBX01PRFVMQVJfRVhQX0lOX01PRFVMVVMgICAgICAgICAgICAgICAgKCgweEQ1Q1UgLSBQS0FfUkFNX09GRlNFVCk+PjIpICAgLyohPCBJbnB1dCBtb2R1bHVzICovCisKKy8qIENvbXB1dGUgbW9kdWxhciBleHBvbmVudGlhdGlvbiBvdXRwdXQgZGF0YSAqLworI2RlZmluZSBQS0FfTU9EVUxBUl9FWFBfT1VUX01PTlRHT01FUllfUEFSQU0gICAgICAoKDB4NTk0VSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IE91dHB1dCBzdG9yYWdlIGFyZWEgZm9yIE1vbnRnb21lcnkgcGFyYW1ldGVyICovCisjZGVmaW5lIFBLQV9NT0RVTEFSX0VYUF9PVVRfU01fQUxHT19BQ0MxICAgICAgICAgICgoMHg3MjRVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgT3V0cHV0IFNNIGFsZ29yaXRobSBhY2N1bXVsYXRvciAxICovCisjZGVmaW5lIFBLQV9NT0RVTEFSX0VYUF9PVVRfU01fQUxHT19BQ0MyICAgICAgICAgICgoMHg4QjRVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgT3V0cHV0IFNNIGFsZ29yaXRobSBhY2N1bXVsYXRvciAyICovCisjZGVmaW5lIFBLQV9NT0RVTEFSX0VYUF9PVVRfRVhQT05FTlRfQkFTRSAgICAgICAgICgoMHhBNDRVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgT3V0cHV0IGJhc2Ugb2YgdGhlIGV4cG9uZW50aWF0aW9uICovCisjZGVmaW5lIFBLQV9NT0RVTEFSX0VYUF9PVVRfU01fQUxHT19BQ0MzICAgICAgICAgICgoMHhFM0NVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgT3V0cHV0IFNNIGFsZ29yaXRobSBhY2N1bXVsYXRvciAzICovCisKKy8qIENvbXB1dGUgRUNDIHNjYWxhciBtdWx0aXBsaWNhdGlvbiBpbnB1dCBkYXRhICovCisjZGVmaW5lIFBLQV9FQ0NfU0NBTEFSX01VTF9JTl9FWFBfTkJfQklUUyAgICAgICAgICgoMHg0MDBVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgZXhwb25lbnQgbnVtYmVyIG9mIGJpdHMgKi8KKyNkZWZpbmUgUEtBX0VDQ19TQ0FMQVJfTVVMX0lOX09QX05CX0JJVFMgICAgICAgICAgKCgweDQwNFUgLSBQS0FfUkFNX09GRlNFVCk+PjIpICAgLyohPCBJbnB1dCBvcGVyYW5kIG51bWJlciBvZiBiaXRzICovCisjZGVmaW5lIFBLQV9FQ0NfU0NBTEFSX01VTF9JTl9BX0NPRUZGX1NJR04gICAgICAgICgoMHg0MDhVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgc2lnbiBvZiB0aGUgJ2EnIGNvZWZmaWNpZW50ICovCisjZGVmaW5lIFBLQV9FQ0NfU0NBTEFSX01VTF9JTl9BX0NPRUZGICAgICAgICAgICAgICgoMHg0MENVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgRUNDIGN1cnZlICdhJyBjb2VmZmljaWVudCAqLworI2RlZmluZSBQS0FfRUNDX1NDQUxBUl9NVUxfSU5fTU9EX0dGICAgICAgICAgICAgICAoKDB4NDYwVSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IElucHV0IG1vZHVsdXMgR0YocCkgKi8KKyNkZWZpbmUgUEtBX0VDQ19TQ0FMQVJfTVVMX0lOX01PTlRHT01FUllfUEFSQU0gICAgKCgweDRCNFUgLSBQS0FfUkFNX09GRlNFVCk+PjIpICAgLyohPCBJbnB1dCBzdG9yYWdlIGFyZWEgZm9yIE1vbnRnb21lcnkgcGFyYW1ldGVyICovCisjZGVmaW5lIFBLQV9FQ0NfU0NBTEFSX01VTF9JTl9LICAgICAgICAgICAgICAgICAgICgoMHg1MDhVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgJ2snIG9mIEtQICovCisjZGVmaW5lIFBLQV9FQ0NfU0NBTEFSX01VTF9JTl9JTklUSUFMX1BPSU5UX1ggICAgICgoMHg1NUNVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgaW5pdGlhbCBwb2ludCBQIFggY29vcmRpbmF0ZSAqLworI2RlZmluZSBQS0FfRUNDX1NDQUxBUl9NVUxfSU5fSU5JVElBTF9QT0lOVF9ZICAgICAoKDB4NUIwVSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IElucHV0IGluaXRpYWwgcG9pbnQgUCBZIGNvb3JkaW5hdGUgKi8KKworLyogQ29tcHV0ZSBFQ0Mgc2NhbGFyIG11bHRpcGxpY2F0aW9uIG91dHB1dCBkYXRhICovCisjZGVmaW5lIFBLQV9FQ0NfU0NBTEFSX01VTF9PVVRfUkVTVUxUX1ggICAgICAgICAgICgoMHg1NUNVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgT3V0cHV0IHJlc3VsdCBYIGNvb3JkaW5hdGUgKi8KKyNkZWZpbmUgUEtBX0VDQ19TQ0FMQVJfTVVMX09VVF9SRVNVTFRfWSAgICAgICAgICAgKCgweDVCMFUgLSBQS0FfUkFNX09GRlNFVCk+PjIpICAgLyohPCBPdXRwdXQgcmVzdWx0IFkgY29vcmRpbmF0ZSAqLworI2RlZmluZSBQS0FfRUNDX1NDQUxBUl9NVUxfT1VUX0xBU1RfRE9VQkxFX1gxICAgICAoKDB4REU4VSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IE91dHB1dCBsYXN0IGRvdWJsZSBYMSBjb29yZGluYXRlICovCisjZGVmaW5lIFBLQV9FQ0NfU0NBTEFSX01VTF9PVVRfTEFTVF9ET1VCTEVfWTEgICAgICgoMHhFM0NVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgT3V0cHV0IGxhc3QgZG91YmxlIFkxIGNvb3JkaW5hdGUgKi8KKyNkZWZpbmUgUEtBX0VDQ19TQ0FMQVJfTVVMX09VVF9MQVNUX0RPVUJMRV9aMSAgICAgKCgweEU5MFUgLSBQS0FfUkFNX09GRlNFVCk+PjIpICAgLyohPCBPdXRwdXQgbGFzdCBkb3VibGUgWjEgY29vcmRpbmF0ZSAqLworI2RlZmluZSBQS0FfRUNDX1NDQUxBUl9NVUxfT1VUX0NIRUNLX1BPSU5UX1gyICAgICAoKDB4RUU0VSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IE91dHB1dCBjaGVjayBwb2ludCBYMiBjb29yZGluYXRlICovCisjZGVmaW5lIFBLQV9FQ0NfU0NBTEFSX01VTF9PVVRfQ0hFQ0tfUE9JTlRfWTIgICAgICgoMHhGMzhVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgT3V0cHV0IGNoZWNrIHBvaW50IFkyIGNvb3JkaW5hdGUgKi8KKyNkZWZpbmUgUEtBX0VDQ19TQ0FMQVJfTVVMX09VVF9DSEVDS19QT0lOVF9aMiAgICAgKCgweEY4Q1UgLSBQS0FfUkFNX09GRlNFVCk+PjIpICAgLyohPCBPdXRwdXQgY2hlY2sgcG9pbnQgWjIgY29vcmRpbmF0ZSAqLworCisvKiBQb2ludCBjaGVjayBpbnB1dCBkYXRhICovCisjZGVmaW5lIFBLQV9QT0lOVF9DSEVDS19JTl9NT0RfTkJfQklUUyAgICAgICAgICAgICgoMHg0MDRVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgbW9kdWx1cyBudW1iZXIgb2YgYml0cyAqLworI2RlZmluZSBQS0FfUE9JTlRfQ0hFQ0tfSU5fQV9DT0VGRl9TSUdOICAgICAgICAgICAoKDB4NDA4VSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IElucHV0IHNpZ24gb2YgdGhlICdhJyBjb2VmZmljaWVudCAqLworI2RlZmluZSBQS0FfUE9JTlRfQ0hFQ0tfSU5fQV9DT0VGRiAgICAgICAgICAgICAgICAoKDB4NDBDVSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IElucHV0IEVDQyBjdXJ2ZSAnYScgY29lZmZpY2llbnQgKi8KKyNkZWZpbmUgUEtBX1BPSU5UX0NIRUNLX0lOX0JfQ09FRkYgICAgICAgICAgICAgICAgKCgweDdGQ1UgLSBQS0FfUkFNX09GRlNFVCk+PjIpICAgLyohPCBJbnB1dCBFQ0MgY3VydmUgJ2InIGNvZWZmaWNpZW50ICovCisjZGVmaW5lIFBLQV9QT0lOVF9DSEVDS19JTl9NT0RfR0YgICAgICAgICAgICAgICAgICgoMHg0NjBVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgbW9kdWx1cyBHRihwKSAqLworI2RlZmluZSBQS0FfUE9JTlRfQ0hFQ0tfSU5fSU5JVElBTF9QT0lOVF9YICAgICAgICAoKDB4NTVDVSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IElucHV0IGluaXRpYWwgcG9pbnQgUCBYIGNvb3JkaW5hdGUgKi8KKyNkZWZpbmUgUEtBX1BPSU5UX0NIRUNLX0lOX0lOSVRJQUxfUE9JTlRfWSAgICAgICAgKCgweDVCMFUgLSBQS0FfUkFNX09GRlNFVCk+PjIpICAgLyohPCBJbnB1dCBpbml0aWFsIHBvaW50IFAgWSBjb29yZGluYXRlICovCisKKy8qIFBvaW50IGNoZWNrIG91dHB1dCBkYXRhICovCisjZGVmaW5lIFBLQV9QT0lOVF9DSEVDS19PVVRfRVJST1IgICAgICAgICAgICAgICAgICgoMHg0MDBVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgT3V0cHV0IGVycm9yICovCisKKy8qIEVDRFNBIHNpZ25hdHVyZSBpbnB1dCBkYXRhICovCisjZGVmaW5lIFBLQV9FQ0RTQV9TSUdOX0lOX09SREVSX05CX0JJVFMgICAgICAgICAgICgoMHg0MDBVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgb3JkZXIgbnVtYmVyIG9mIGJpdHMgKi8KKyNkZWZpbmUgUEtBX0VDRFNBX1NJR05fSU5fTU9EX05CX0JJVFMgICAgICAgICAgICAgKCgweDQwNFUgLSBQS0FfUkFNX09GRlNFVCk+PjIpICAgLyohPCBJbnB1dCBtb2R1bHVzIG51bWJlciBvZiBiaXRzICovCisjZGVmaW5lIFBLQV9FQ0RTQV9TSUdOX0lOX0FfQ09FRkZfU0lHTiAgICAgICAgICAgICgoMHg0MDhVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgc2lnbiBvZiB0aGUgJ2EnIGNvZWZmaWNpZW50ICovCisjZGVmaW5lIFBLQV9FQ0RTQV9TSUdOX0lOX0FfQ09FRkYgICAgICAgICAgICAgICAgICgoMHg0MENVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgRUNDIGN1cnZlICdhJyBjb2VmZmljaWVudCAqLworI2RlZmluZSBQS0FfRUNEU0FfU0lHTl9JTl9NT0RfR0YgICAgICAgICAgICAgICAgICAoKDB4NDYwVSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IElucHV0IG1vZHVsdXMgR0YocCkgKi8KKyNkZWZpbmUgUEtBX0VDRFNBX1NJR05fSU5fSyAgICAgICAgICAgICAgICAgICAgICAgKCgweDUwOFUgLSBQS0FfUkFNX09GRlNFVCk+PjIpICAgLyohPCBJbnB1dCBrIHZhbHVlIG9mIHRoZSBFQ0RTQSAqLworI2RlZmluZSBQS0FfRUNEU0FfU0lHTl9JTl9JTklUSUFMX1BPSU5UX1ggICAgICAgICAoKDB4NTVDVSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IElucHV0IGluaXRpYWwgcG9pbnQgUCBYIGNvb3JkaW5hdGUgKi8KKyNkZWZpbmUgUEtBX0VDRFNBX1NJR05fSU5fSU5JVElBTF9QT0lOVF9ZICAgICAgICAgKCgweDVCMFUgLSBQS0FfUkFNX09GRlNFVCk+PjIpICAgLyohPCBJbnB1dCBpbml0aWFsIHBvaW50IFAgWSBjb29yZGluYXRlICovCisjZGVmaW5lIFBLQV9FQ0RTQV9TSUdOX0lOX0hBU0hfRSAgICAgICAgICAgICAgICAgICgoMHhERThVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgZSwgaGFzaCBvZiB0aGUgbWVzc2FnZSAqLworI2RlZmluZSBQS0FfRUNEU0FfU0lHTl9JTl9QUklWQVRFX0tFWV9EICAgICAgICAgICAoKDB4RTNDVSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IElucHV0IGQsIHByaXZhdGUga2V5ICovCisjZGVmaW5lIFBLQV9FQ0RTQV9TSUdOX0lOX09SREVSX04gICAgICAgICAgICAgICAgICgoMHhFOTRVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgbiwgb3JkZXIgb2YgdGhlIGN1cnZlICovCisKKy8qIEVDRFNBIHNpZ25hdHVyZSBvdXRwdXQgZGF0YSAqLworI2RlZmluZSBQS0FfRUNEU0FfU0lHTl9PVVRfRVJST1IgICAgICAgICAgICAgICAgICAoKDB4RUU4VSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IE91dHB1dCBlcnJvciAqLworI2RlZmluZSBQS0FfRUNEU0FfU0lHTl9PVVRfU0lHTkFUVVJFX1IgICAgICAgICAgICAoKDB4NzAwVSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IE91dHB1dCBzaWduYXR1cmUgciAqLworI2RlZmluZSBQS0FfRUNEU0FfU0lHTl9PVVRfU0lHTkFUVVJFX1MgICAgICAgICAgICAoKDB4NzU0VSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IE91dHB1dCBzaWduYXR1cmUgcyAqLworI2RlZmluZSBQS0FfRUNEU0FfU0lHTl9PVVRfRklOQUxfUE9JTlRfWCAgICAgICAgICAoKDB4MTAzQ1UgLSBQS0FfUkFNX09GRlNFVCk+PjIpICAvKiE8IE91dHB1dCBmaW5hbCBwb2ludCBrUCBYIGNvb3JkaW5hdGUgKi8KKyNkZWZpbmUgUEtBX0VDRFNBX1NJR05fT1VUX0ZJTkFMX1BPSU5UX1kgICAgICAgICAgKCgweDEwOTBVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgLyohPCBPdXRwdXQgZmluYWwgcG9pbnQga1AgWSBjb29yZGluYXRlICovCisKKy8qIEVDRFNBIHZlcmlmaWNhdGlvbiBpbnB1dCBkYXRhICovCisjZGVmaW5lIFBLQV9FQ0RTQV9WRVJJRl9JTl9PUkRFUl9OQl9CSVRTICAgICAgICAgICgoMHg0MDRVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgb3JkZXIgbnVtYmVyIG9mIGJpdHMgKi8KKyNkZWZpbmUgUEtBX0VDRFNBX1ZFUklGX0lOX01PRF9OQl9CSVRTICAgICAgICAgICAgKCgweDRCNFUgLSBQS0FfUkFNX09GRlNFVCk+PjIpICAgLyohPCBJbnB1dCBtb2R1bHVzIG51bWJlciBvZiBiaXRzICovCisjZGVmaW5lIFBLQV9FQ0RTQV9WRVJJRl9JTl9BX0NPRUZGX1NJR04gICAgICAgICAgICgoMHg0NUNVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgc2lnbiBvZiB0aGUgJ2EnIGNvZWZmaWNpZW50ICovCisjZGVmaW5lIFBLQV9FQ0RTQV9WRVJJRl9JTl9BX0NPRUZGICAgICAgICAgICAgICAgICgoMHg0NjBVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgRUNDIGN1cnZlICdhJyBjb2VmZmljaWVudCAqLworI2RlZmluZSBQS0FfRUNEU0FfVkVSSUZfSU5fTU9EX0dGICAgICAgICAgICAgICAgICAoKDB4NEI4VSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IElucHV0IG1vZHVsdXMgR0YocCkgKi8KKyNkZWZpbmUgUEtBX0VDRFNBX1ZFUklGX0lOX0lOSVRJQUxfUE9JTlRfWCAgICAgICAgKCgweDVFOFUgLSBQS0FfUkFNX09GRlNFVCk+PjIpICAgLyohPCBJbnB1dCBpbml0aWFsIHBvaW50IFAgWCBjb29yZGluYXRlICovCisjZGVmaW5lIFBLQV9FQ0RTQV9WRVJJRl9JTl9JTklUSUFMX1BPSU5UX1kgICAgICAgICgoMHg2M0NVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgaW5pdGlhbCBwb2ludCBQIFkgY29vcmRpbmF0ZSAqLworI2RlZmluZSBQS0FfRUNEU0FfVkVSSUZfSU5fUFVCTElDX0tFWV9QT0lOVF9YICAgICAoKDB4RjQwVSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IElucHV0IHB1YmxpYyBrZXkgcG9pbnQgWCBjb29yZGluYXRlICovCisjZGVmaW5lIFBLQV9FQ0RTQV9WRVJJRl9JTl9QVUJMSUNfS0VZX1BPSU5UX1kgICAgICgoMHhGOTRVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgcHVibGljIGtleSBwb2ludCBZIGNvb3JkaW5hdGUgKi8KKyNkZWZpbmUgUEtBX0VDRFNBX1ZFUklGX0lOX1NJR05BVFVSRV9SICAgICAgICAgICAgKCgweDEwOThVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgLyohPCBJbnB1dCByLCBwYXJ0IG9mIHRoZSBzaWduYXR1cmUgKi8KKyNkZWZpbmUgUEtBX0VDRFNBX1ZFUklGX0lOX1NJR05BVFVSRV9TICAgICAgICAgICAgKCgweEE0NFUgLSBQS0FfUkFNX09GRlNFVCk+PjIpICAgLyohPCBJbnB1dCBzLCBwYXJ0IG9mIHRoZSBzaWduYXR1cmUgKi8KKyNkZWZpbmUgUEtBX0VDRFNBX1ZFUklGX0lOX0hBU0hfRSAgICAgICAgICAgICAgICAgKCgweEZFOFUgLSBQS0FfUkFNX09GRlNFVCk+PjIpICAgLyohPCBJbnB1dCBlLCBoYXNoIG9mIHRoZSBtZXNzYWdlICovCisjZGVmaW5lIFBLQV9FQ0RTQV9WRVJJRl9JTl9PUkRFUl9OICAgICAgICAgICAgICAgICgoMHhENUNVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgbiwgb3JkZXIgb2YgdGhlIGN1cnZlICovCisKKy8qIEVDRFNBIHZlcmlmaWNhdGlvbiBvdXRwdXQgZGF0YSAqLworI2RlZmluZSBQS0FfRUNEU0FfVkVSSUZfT1VUX1JFU1VMVCAgICAgICAgICAgICAgICAoKDB4NUIwVSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IE91dHB1dCByZXN1bHQgKi8KKworLyogUlNBIENSVCBleHBvbmVudGlhdGlvbiBpbnB1dCBkYXRhICovCisjZGVmaW5lIFBLQV9SU0FfQ1JUX0VYUF9JTl9NT0RfTkJfQklUUyAgICAgICAgICAgICgoMHg0MDRVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgb3BlcmFuZHMgbnVtYmVyIG9mIGJpdHMgKi8KKyNkZWZpbmUgUEtBX1JTQV9DUlRfRVhQX0lOX0RQX0NSVCAgICAgICAgICAgICAgICAgKCgweDY1Q1UgLSBQS0FfUkFNX09GRlNFVCk+PjIpICAgLyohPCBJbnB1dCBEcCBDUlQgcGFyYW1ldGVyICovCisjZGVmaW5lIFBLQV9SU0FfQ1JUX0VYUF9JTl9EUV9DUlQgICAgICAgICAgICAgICAgICgoMHhCRDBVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgRHEgQ1JUIHBhcmFtZXRlciAqLworI2RlZmluZSBQS0FfUlNBX0NSVF9FWFBfSU5fUUlOVl9DUlQgICAgICAgICAgICAgICAoKDB4N0VDVSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IElucHV0IHFJbnYgQ1JUIHBhcmFtZXRlciAqLworI2RlZmluZSBQS0FfUlNBX0NSVF9FWFBfSU5fUFJJTUVfUCAgICAgICAgICAgICAgICAoKDB4OTdDVSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IElucHV0IFByaW1lIHAgKi8KKyNkZWZpbmUgUEtBX1JTQV9DUlRfRVhQX0lOX1BSSU1FX1EgICAgICAgICAgICAgICAgKCgweEQ1Q1UgLSBQS0FfUkFNX09GRlNFVCk+PjIpICAgLyohPCBJbnB1dCBQcmltZSBxICovCisjZGVmaW5lIFBLQV9SU0FfQ1JUX0VYUF9JTl9FWFBPTkVOVF9CQVNFICAgICAgICAgICgoMHhFRUNVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgYmFzZSBvZiB0aGUgZXhwb25lbnRpYXRpb24gKi8KKworLyogUlNBIENSVCBleHBvbmVudGlhdGlvbiBvdXRwdXQgZGF0YSAqLworI2RlZmluZSBQS0FfUlNBX0NSVF9FWFBfT1VUX1JFU1VMVCAgICAgICAgICAgICAgICAoKDB4NzI0VSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IE91dHB1dCByZXN1bHQgKi8KKworLyogTW9kdWxhciByZWR1Y3Rpb24gaW5wdXQgZGF0YSAqLworI2RlZmluZSBQS0FfTU9EVUxBUl9SRURVQ19JTl9PUF9MRU5HVEggICAgICAgICAgICAoKDB4NDAwVSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IElucHV0IG9wZXJhbmQgbGVuZ3RoICovCisjZGVmaW5lIFBLQV9NT0RVTEFSX1JFRFVDX0lOX09QRVJBTkQgICAgICAgICAgICAgICgoMHg4QjRVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgb3BlcmFuZCAqLworI2RlZmluZSBQS0FfTU9EVUxBUl9SRURVQ19JTl9NT0RfTEVOR1RIICAgICAgICAgICAoKDB4NDA0VSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IElucHV0IG1vZHVsdXMgbGVuZ3RoICovCisjZGVmaW5lIFBLQV9NT0RVTEFSX1JFRFVDX0lOX01PRFVMVVMgICAgICAgICAgICAgICgoMHhBNDRVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgbW9kdWx1cyAqLworCisvKiBNb2R1bGFyIHJlZHVjdGlvbiBvdXRwdXQgZGF0YSAqLworI2RlZmluZSBQS0FfTU9EVUxBUl9SRURVQ19PVVRfUkVTVUxUICAgICAgICAgICAgICAoKDB4QkQwVSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IE91dHB1dCByZXN1bHQgKi8KKworLyogQXJpdGhtZXRpYyBhZGRpdGlvbiBpbnB1dCBkYXRhICovCisjZGVmaW5lIFBLQV9BUklUSE1FVElDX0FERF9OQl9CSVRTICAgICAgICAgICAgICAgICgoMHg0MDRVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgb3BlcmFuZCBudW1iZXIgb2YgYml0cyAqLworI2RlZmluZSBQS0FfQVJJVEhNRVRJQ19BRERfSU5fT1AxICAgICAgICAgICAgICAgICAoKDB4OEI0VSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IElucHV0IG9wZXJhbmQgb3AxICovCisjZGVmaW5lIFBLQV9BUklUSE1FVElDX0FERF9JTl9PUDIgICAgICAgICAgICAgICAgICgoMHhBNDRVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgb3BlcmFuZCBvcDIgKi8KKworLyogQXJpdGhtZXRpYyBhZGRpdGlvbiBvdXRwdXQgZGF0YSAqLworI2RlZmluZSBQS0FfQVJJVEhNRVRJQ19BRERfT1VUX1JFU1VMVCAgICAgICAgICAgICAoKDB4QkQwVSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IE91dHB1dCByZXN1bHQgKi8KKworLyogQXJpdGhtZXRpYyBzdWJzdHJhY3Rpb24gaW5wdXQgZGF0YSAqLworI2RlZmluZSBQS0FfQVJJVEhNRVRJQ19TVUJfTkJfQklUUyAgICAgICAgICAgICAgICAoKDB4NDA0VSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IElucHV0IG9wZXJhbmQgbnVtYmVyIG9mIGJpdHMgKi8KKyNkZWZpbmUgUEtBX0FSSVRITUVUSUNfU1VCX0lOX09QMSAgICAgICAgICAgICAgICAgKCgweDhCNFUgLSBQS0FfUkFNX09GRlNFVCk+PjIpICAgLyohPCBJbnB1dCBvcGVyYW5kIG9wMSAqLworI2RlZmluZSBQS0FfQVJJVEhNRVRJQ19TVUJfSU5fT1AyICAgICAgICAgICAgICAgICAoKDB4QTQ0VSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IElucHV0IG9wZXJhbmQgb3AyICovCisKKy8qIEFyaXRobWV0aWMgc3Vic3RyYWN0aW9uIG91dHB1dCBkYXRhICovCisjZGVmaW5lIFBLQV9BUklUSE1FVElDX1NVQl9PVVRfUkVTVUxUICAgICAgICAgICAgICgoMHhCRDBVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgT3V0cHV0IHJlc3VsdCAqLworCisvKiBBcml0aG1ldGljIG11bHRpcGxpY2F0aW9uIGlucHV0IGRhdGEgKi8KKyNkZWZpbmUgUEtBX0FSSVRITUVUSUNfTVVMX05CX0JJVFMgICAgICAgICAgICAgICAgKCgweDQwNFUgLSBQS0FfUkFNX09GRlNFVCk+PjIpICAgLyohPCBJbnB1dCBvcGVyYW5kIG51bWJlciBvZiBiaXRzICovCisjZGVmaW5lIFBLQV9BUklUSE1FVElDX01VTF9JTl9PUDEgICAgICAgICAgICAgICAgICgoMHg4QjRVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgb3BlcmFuZCBvcDEgKi8KKyNkZWZpbmUgUEtBX0FSSVRITUVUSUNfTVVMX0lOX09QMiAgICAgICAgICAgICAgICAgKCgweEE0NFUgLSBQS0FfUkFNX09GRlNFVCk+PjIpICAgLyohPCBJbnB1dCBvcGVyYW5kIG9wMiAqLworCisvKiBBcml0aG1ldGljIG11bHRpcGxpY2F0aW9uIG91dHB1dCBkYXRhICovCisjZGVmaW5lIFBLQV9BUklUSE1FVElDX01VTF9PVVRfUkVTVUxUICAgICAgICAgICAgICgoMHhCRDBVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgT3V0cHV0IHJlc3VsdCAqLworCisvKiBDb21wYXJpc29uIGlucHV0IGRhdGEgKi8KKyNkZWZpbmUgUEtBX0NPTVBBUklTT05fTkJfQklUUyAgICAgICAgICAgICAgICAgICAgKCgweDQwNFUgLSBQS0FfUkFNX09GRlNFVCk+PjIpICAgLyohPCBJbnB1dCBvcGVyYW5kIG51bWJlciBvZiBiaXRzICovCisjZGVmaW5lIFBLQV9DT01QQVJJU09OX0lOX09QMSAgICAgICAgICAgICAgICAgICAgICgoMHg4QjRVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgb3BlcmFuZCBvcDEgKi8KKyNkZWZpbmUgUEtBX0NPTVBBUklTT05fSU5fT1AyICAgICAgICAgICAgICAgICAgICAgKCgweEE0NFUgLSBQS0FfUkFNX09GRlNFVCk+PjIpICAgLyohPCBJbnB1dCBvcGVyYW5kIG9wMiAqLworCisvKiBDb21wYXJpc29uIG91dHB1dCBkYXRhICovCisjZGVmaW5lIFBLQV9DT01QQVJJU09OX09VVF9SRVNVTFQgICAgICAgICAgICAgICAgICgoMHhCRDBVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgT3V0cHV0IHJlc3VsdCAqLworCisvKiBNb2R1bGFyIGFkZGl0aW9uIGlucHV0IGRhdGEgKi8KKyNkZWZpbmUgUEtBX01PRFVMQVJfQUREX05CX0JJVFMgICAgICAgICAgICAgICAgICAgKCgweDQwNFUgLSBQS0FfUkFNX09GRlNFVCk+PjIpICAgLyohPCBJbnB1dCBvcGVyYW5kIG51bWJlciBvZiBiaXRzICovCisjZGVmaW5lIFBLQV9NT0RVTEFSX0FERF9JTl9PUDEgICAgICAgICAgICAgICAgICAgICgoMHg4QjRVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgb3BlcmFuZCBvcDEgKi8KKyNkZWZpbmUgUEtBX01PRFVMQVJfQUREX0lOX09QMiAgICAgICAgICAgICAgICAgICAgKCgweEE0NFUgLSBQS0FfUkFNX09GRlNFVCk+PjIpICAgLyohPCBJbnB1dCBvcGVyYW5kIG9wMiAqLworI2RlZmluZSBQS0FfTU9EVUxBUl9BRERfSU5fT1AzX01PRCAgICAgICAgICAgICAgICAoKDB4RDVDVSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IElucHV0IG9wZXJhbmQgb3AzIChtb2R1bHVzKSAqLworCisvKiBNb2R1bGFyIGFkZGl0aW9uIG91dHB1dCBkYXRhICovCisjZGVmaW5lIFBLQV9NT0RVTEFSX0FERF9PVVRfUkVTVUxUICAgICAgICAgICAgICAgICgoMHhCRDBVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgT3V0cHV0IHJlc3VsdCAqLworCisvKiBNb2R1bGFyIGludmVyc2lvbiBpbnB1dCBkYXRhICovCisjZGVmaW5lIFBLQV9NT0RVTEFSX0lOVl9OQl9CSVRTICAgICAgICAgICAgICAgICAgICgoMHg0MDRVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgb3BlcmFuZCBudW1iZXIgb2YgYml0cyAqLworI2RlZmluZSBQS0FfTU9EVUxBUl9JTlZfSU5fT1AxICAgICAgICAgICAgICAgICAgICAoKDB4OEI0VSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IElucHV0IG9wZXJhbmQgb3AxICovCisjZGVmaW5lIFBLQV9NT0RVTEFSX0lOVl9JTl9PUDJfTU9EICAgICAgICAgICAgICAgICgoMHhBNDRVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgb3BlcmFuZCBvcDIgKG1vZHVsdXMpICovCisKKy8qIE1vZHVsYXIgaW52ZXJzaW9uIG91dHB1dCBkYXRhICovCisjZGVmaW5lIFBLQV9NT0RVTEFSX0lOVl9PVVRfUkVTVUxUICAgICAgICAgICAgICAgICgoMHhCRDBVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgT3V0cHV0IHJlc3VsdCAqLworCisvKiBNb2R1bGFyIHN1YnN0cmFjdGlvbiBpbnB1dCBkYXRhICovCisjZGVmaW5lIFBLQV9NT0RVTEFSX1NVQl9OQl9CSVRTICAgICAgICAgICAgICAgICAgICgoMHg0MDRVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgb3BlcmFuZCBudW1iZXIgb2YgYml0cyAqLworI2RlZmluZSBQS0FfTU9EVUxBUl9TVUJfSU5fT1AxICAgICAgICAgICAgICAgICAgICAoKDB4OEI0VSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IElucHV0IG9wZXJhbmQgb3AxICovCisjZGVmaW5lIFBLQV9NT0RVTEFSX1NVQl9JTl9PUDIgICAgICAgICAgICAgICAgICAgICgoMHhBNDRVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgb3BlcmFuZCBvcDIgKi8KKyNkZWZpbmUgUEtBX01PRFVMQVJfU1VCX0lOX09QM19NT0QgICAgICAgICAgICAgICAgKCgweEQ1Q1UgLSBQS0FfUkFNX09GRlNFVCk+PjIpICAgLyohPCBJbnB1dCBvcGVyYW5kIG9wMyAqLworCisvKiBNb2R1bGFyIHN1YnN0cmFjdGlvbiBvdXRwdXQgZGF0YSAqLworI2RlZmluZSBQS0FfTU9EVUxBUl9TVUJfT1VUX1JFU1VMVCAgICAgICAgICAgICAgICAoKDB4QkQwVSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IE91dHB1dCByZXN1bHQgKi8KKworLyogTW9udGdvbWVyeSBtdWx0aXBsaWNhdGlvbiBpbnB1dCBkYXRhICovCisjZGVmaW5lIFBLQV9NT05UR09NRVJZX01VTF9OQl9CSVRTICAgICAgICAgICAgICAgICgoMHg0MDRVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgb3BlcmFuZCBudW1iZXIgb2YgYml0cyAqLworI2RlZmluZSBQS0FfTU9OVEdPTUVSWV9NVUxfSU5fT1AxICAgICAgICAgICAgICAgICAoKDB4OEI0VSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IElucHV0IG9wZXJhbmQgb3AxICovCisjZGVmaW5lIFBLQV9NT05UR09NRVJZX01VTF9JTl9PUDIgICAgICAgICAgICAgICAgICgoMHhBNDRVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgb3BlcmFuZCBvcDIgKi8KKyNkZWZpbmUgUEtBX01PTlRHT01FUllfTVVMX0lOX09QM19NT0QgICAgICAgICAgICAgKCgweEQ1Q1UgLSBQS0FfUkFNX09GRlNFVCk+PjIpICAgLyohPCBJbnB1dCBtb2R1bHVzICovCisKKy8qIE1vbnRnb21lcnkgbXVsdGlwbGljYXRpb24gb3V0cHV0IGRhdGEgKi8KKyNkZWZpbmUgUEtBX01PTlRHT01FUllfTVVMX09VVF9SRVNVTFQgICAgICAgICAgICAgKCgweEJEMFUgLSBQS0FfUkFNX09GRlNFVCk+PjIpICAgLyohPCBPdXRwdXQgcmVzdWx0ICovCisKKy8qIEdlbmVyaWMgQXJpdGhtZXRpYyBpbnB1dCBkYXRhICovCisjZGVmaW5lIFBLQV9BUklUSE1FVElDX0FMTF9PUFNfTkJfQklUUyAgICAgICAgICAgICgoMHg0MDRVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgb3BlcmFuZCBudW1iZXIgb2YgYml0cyAqLworI2RlZmluZSBQS0FfQVJJVEhNRVRJQ19BTExfT1BTX0lOX09QMSAgICAgICAgICAgICAoKDB4OEI0VSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IElucHV0IG9wZXJhbmQgb3AxICovCisjZGVmaW5lIFBLQV9BUklUSE1FVElDX0FMTF9PUFNfSU5fT1AyICAgICAgICAgICAgICgoMHhBNDRVIC0gUEtBX1JBTV9PRkZTRVQpPj4yKSAgIC8qITwgSW5wdXQgb3BlcmFuZCBvcDIgKi8KKyNkZWZpbmUgUEtBX0FSSVRITUVUSUNfQUxMX09QU19JTl9PUDMgICAgICAgICAgICAgKCgweEQ1Q1UgLSBQS0FfUkFNX09GRlNFVCk+PjIpICAgLyohPCBJbnB1dCBvcGVyYW5kIG9wMiAqLworICAKKy8qIEdlbmVyaWMgQXJpdGhtZXRpYyBvdXRwdXQgZGF0YSAqLworI2RlZmluZSBQS0FfQVJJVEhNRVRJQ19BTExfT1BTX09VVF9SRVNVTFQgICAgICAgICAoKDB4QkQwVSAtIFBLQV9SQU1fT0ZGU0VUKT4+MikgICAvKiE8IE91dHB1dCByZXN1bHQgKi8KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisvKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZMQVNIICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBGTEFTSF9BQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLworI2RlZmluZSBGTEFTSF9BQ1JfTEFURU5DWV9Qb3MgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9BQ1JfTEFURU5DWV9Nc2sgICAgICAgICAgICAgICAoMHg3VUwgPDwgRkxBU0hfQUNSX0xBVEVOQ1lfUG9zKSAgIC8qITwgMHgwMDAwMDAwNyAqLworI2RlZmluZSBGTEFTSF9BQ1JfTEFURU5DWSAgICAgICAgICAgICAgICAgICBGTEFTSF9BQ1JfTEFURU5DWV9Nc2sgICAgICAgICAgICAgIC8qITwgTGF0ZW5jeSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIEZMQVNIX0FDUl9MQVRFTkNZXzAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9BQ1JfTEFURU5DWV9Qb3MpICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIEZMQVNIX0FDUl9MQVRFTkNZXzEgICAgICAgICAgICAgICAgICgweDJVTCA8PCBGTEFTSF9BQ1JfTEFURU5DWV9Qb3MpICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIEZMQVNIX0FDUl9MQVRFTkNZXzIgICAgICAgICAgICAgICAgICgweDRVTCA8PCBGTEFTSF9BQ1JfTEFURU5DWV9Qb3MpICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIEZMQVNIX0FDUl9QUkZURU5fUG9zICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX0FDUl9QUkZURU5fTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9BQ1JfUFJGVEVOX1BvcykgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIEZMQVNIX0FDUl9QUkZURU4gICAgICAgICAgICAgICAgICAgIEZMQVNIX0FDUl9QUkZURU5fTXNrICAgICAgICAgICAgICAgLyohPCBQcmVmZXRjaCBlbmFibGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRkxBU0hfQUNSX0lDRU5fUG9zICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRkxBU0hfQUNSX0lDRU5fTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX0FDUl9JQ0VOX1BvcykgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgRkxBU0hfQUNSX0lDRU4gICAgICAgICAgICAgICAgICAgICAgRkxBU0hfQUNSX0lDRU5fTXNrICAgICAgICAgICAgICAgICAvKiE8IEluc3RydWN0aW9uIGNhY2hlIGVuYWJsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9BQ1JfRENFTl9Qb3MgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9BQ1JfRENFTl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfQUNSX0RDRU5fUG9zKSAgICAgIC8qITwgMHgwMDAwMDQwMCAqLworI2RlZmluZSBGTEFTSF9BQ1JfRENFTiAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9BQ1JfRENFTl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgRGF0YSBjYWNoZSBlbmFibGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIEZMQVNIX0FDUl9JQ1JTVF9Qb3MgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX0FDUl9JQ1JTVF9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9BQ1JfSUNSU1RfUG9zKSAgICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIEZMQVNIX0FDUl9JQ1JTVCAgICAgICAgICAgICAgICAgICAgIEZMQVNIX0FDUl9JQ1JTVF9Nc2sgICAgICAgICAgICAgICAgLyohPCBJbnN0cnVjdGlvbiBjYWNoZSByZXNldCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRkxBU0hfQUNSX0RDUlNUX1BvcyAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRkxBU0hfQUNSX0RDUlNUX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX0FDUl9EQ1JTVF9Qb3MpICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgRkxBU0hfQUNSX0RDUlNUICAgICAgICAgICAgICAgICAgICAgRkxBU0hfQUNSX0RDUlNUX01zayAgICAgICAgICAgICAgICAvKiE8IERhdGEgY2FjaGUgcmVzZXQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9BQ1JfUEVTX1BvcyAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9BQ1JfUEVTX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfQUNSX1BFU19Qb3MpICAgICAgIC8qITwgMHgwMDAwODAwMCAqLworI2RlZmluZSBGTEFTSF9BQ1JfUEVTICAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9BQ1JfUEVTX01zayAgICAgICAgICAgICAgICAgIC8qITwgUHJvZ3JhbS9lcmFzZSBzdXNwZW5kIHJlcXVlc3QgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIEZMQVNIX0FDUl9FTVBUWV9Qb3MgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX0FDUl9FTVBUWV9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9BQ1JfRU1QVFlfUG9zKSAgICAgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIEZMQVNIX0FDUl9FTVBUWSAgICAgICAgICAgICAgICAgICAgIEZMQVNIX0FDUl9FTVBUWV9Nc2sgICAgICAgICAgICAgICAgLyohPCBGbGFzaCB1c2UgYXJlYSBlbXB0eSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKworI2RlZmluZSBGTEFTSF9BQ1JfTEFURU5DWV8wV1MgICAgICAgICAgICAgICAoMHgwVUwgPDwgRkxBU0hfQUNSX0xBVEVOQ1lfUG9zKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRkxBU0ggWmVybyB3YWl0IHN0YXRlICAgKi8KKyNkZWZpbmUgRkxBU0hfQUNSX0xBVEVOQ1lfMVdTICAgICAgICAgICAgICAgKEZMQVNIX0FDUl9MQVRFTkNZXzAgPDwgRkxBU0hfQUNSX0xBVEVOQ1lfUG9zKSAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEZMQVNIIE9uZSB3YWl0IHN0YXRlICAgICovCisjZGVmaW5lIEZMQVNIX0FDUl9MQVRFTkNZXzJXUyAgICAgICAgICAgICAgIChGTEFTSF9BQ1JfTEFURU5DWV8xIDw8IEZMQVNIX0FDUl9MQVRFTkNZX1BvcykgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBGTEFTSCBUd28gd2FpdCBzdGF0ZXMgICAqLworI2RlZmluZSBGTEFTSF9BQ1JfTEFURU5DWV8zV1MgICAgICAgICAgICAgICAoKEZMQVNIX0FDUl9MQVRFTkNZXzEgfCBGTEFTSF9BQ1JfTEFURU5DWV8wKSA8PCBGTEFTSF9BQ1JfTEFURU5DWV9Qb3MpIC8qITwgRkxBU0ggVGhyZWUgd2FpdCBzdGF0ZXMgKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgRkxBU0hfU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgRkxBU0hfU1JfRU9QX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRkxBU0hfU1JfRU9QX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX1NSX0VPUF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgRkxBU0hfU1JfRU9QICAgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfU1JfRU9QX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEVuZCBvZiBPcGVyYXRpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9TUl9PUEVSUl9Qb3MgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9TUl9PUEVSUl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfU1JfT1BFUlJfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBGTEFTSF9TUl9PUEVSUiAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9TUl9PUEVSUl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgT3BlcmF0aW9uIGVycm9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIEZMQVNIX1NSX1BST0dFUlJfUG9zICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX1NSX1BST0dFUlJfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9TUl9QUk9HRVJSX1BvcykgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIEZMQVNIX1NSX1BST0dFUlIgICAgICAgICAgICAgICAgICAgIEZMQVNIX1NSX1BST0dFUlJfTXNrICAgICAgICAgICAgICAgLyohPCBQcm9ncmFtbWluZyBlcnJvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRkxBU0hfU1JfV1JQRVJSX1BvcyAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRkxBU0hfU1JfV1JQRVJSX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX1NSX1dSUEVSUl9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgRkxBU0hfU1JfV1JQRVJSICAgICAgICAgICAgICAgICAgICAgRkxBU0hfU1JfV1JQRVJSX01zayAgICAgICAgICAgICAgICAvKiE8IFdyaXRlIHByb3RlY3Rpb24gZXJyb3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9TUl9QR0FFUlJfUG9zICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9TUl9QR0FFUlJfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfU1JfUEdBRVJSX1BvcykgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBGTEFTSF9TUl9QR0FFUlIgICAgICAgICAgICAgICAgICAgICBGTEFTSF9TUl9QR0FFUlJfTXNrICAgICAgICAgICAgICAgIC8qITwgUHJvZ3JhbW1pbmcgYWxpZ25tZW50IGVycm9yICAgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIEZMQVNIX1NSX1NJWkVSUl9Qb3MgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX1NSX1NJWkVSUl9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9TUl9TSVpFUlJfUG9zKSAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIEZMQVNIX1NSX1NJWkVSUiAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1NSX1NJWkVSUl9Nc2sgICAgICAgICAgICAgICAgLyohPCBTaXplIGVycm9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRkxBU0hfU1JfUEdTRVJSX1BvcyAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRkxBU0hfU1JfUEdTRVJSX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX1NSX1BHU0VSUl9Qb3MpICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgRkxBU0hfU1JfUEdTRVJSICAgICAgICAgICAgICAgICAgICAgRkxBU0hfU1JfUEdTRVJSX01zayAgICAgICAgICAgICAgICAvKiE8IFByb2dyYW1taW5nIHNlcXVlbmNlIGVycm9yICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9TUl9NSVNFUlJfUG9zICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9TUl9NSVNFUlJfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfU1JfTUlTRVJSX1BvcykgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBGTEFTSF9TUl9NSVNFUlIgICAgICAgICAgICAgICAgICAgICBGTEFTSF9TUl9NSVNFUlJfTXNrICAgICAgICAgICAgICAgIC8qITwgRmFzdCBwcm9ncmFtbWluZyBkYXRhIG1pc3MgZXJyb3IgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIEZMQVNIX1NSX0ZBU1RFUlJfUG9zICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX1NSX0ZBU1RFUlJfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9TUl9GQVNURVJSX1BvcykgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIEZMQVNIX1NSX0ZBU1RFUlIgICAgICAgICAgICAgICAgICAgIEZMQVNIX1NSX0ZBU1RFUlJfTXNrICAgICAgICAgICAgICAgLyohPCBGYXN0IHByb2dyYW1taW5nIGVycm9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRkxBU0hfU1JfT1BUTlZfUG9zICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRkxBU0hfU1JfT1BUTlZfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX1NSX09QVE5WX1BvcykgICAgIC8qITwgMHgwMDAwMjAwMCAqLworI2RlZmluZSBGTEFTSF9TUl9PUFROViAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9TUl9PUFROVl9Nc2sgICAgICAgICAgICAgICAgLyohPCBVc2VyIG9wdGlvbiBPUFRWQUwgaW5kaWNhdGlvbiAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRkxBU0hfU1JfUkRFUlJfUG9zICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRkxBU0hfU1JfUkRFUlJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX1NSX1JERVJSX1BvcykgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgRkxBU0hfU1JfUkRFUlIgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfU1JfUkRFUlJfTXNrICAgICAgICAgICAgICAgICAvKiE8IFBDUk9QIHJlYWQgZXJyb3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9TUl9PUFRWRVJSX1BvcyAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9TUl9PUFRWRVJSX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfU1JfT1BUVkVSUl9Qb3MpICAgIC8qITwgMHgwMDAwODAwMCAqLworI2RlZmluZSBGTEFTSF9TUl9PUFRWRVJSICAgICAgICAgICAgICAgICAgICBGTEFTSF9TUl9PUFRWRVJSX01zayAgICAgICAgICAgICAgIC8qITwgT3B0aW9uIHZhbGlkaXR5IGVycm9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIEZMQVNIX1NSX0JTWV9Qb3MgICAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX1NSX0JTWV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9TUl9CU1lfUG9zKSAgICAgICAgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIEZMQVNIX1NSX0JTWSAgICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1NSX0JTWV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBGbGFzaCBCdXN5ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRkxBU0hfU1JfQ0ZHQlNZX1BvcyAgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRkxBU0hfU1JfQ0ZHQlNZX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX1NSX0NGR0JTWV9Qb3MpICAgICAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgRkxBU0hfU1JfQ0ZHQlNZICAgICAgICAgICAgICAgICAgICAgRkxBU0hfU1JfQ0ZHQlNZX01zayAgICAgICAgICAgICAgICAvKiE8IFByb2dyYW1taW5nIG9yIGVyYXNlIGNvbmZpZ3VyYXRpb24gYnVzeSAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9TUl9QRVNEX1BvcyAgICAgICAgICAgICAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9TUl9QRVNEX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfU1JfUEVTRF9Qb3MpICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLworI2RlZmluZSBGTEFTSF9TUl9QRVNEICAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9TUl9QRVNEX01zayAgICAgICAgICAgICAgICAgIC8qITwgUHJvZ3JhbW1pbmcvZXJhc2Ugb3BlcmF0aW9uIHN1c3BlbmRlZCAgICAgICAgICAgICAgICovCisKKy8qKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIEZMQVNIX0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIEZMQVNIX0NSX1BHX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX0NSX1BHX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9DUl9QR19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIEZMQVNIX0NSX1BHICAgICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX0NSX1BHX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBGbGFzaCBwcm9ncmFtbWluZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRkxBU0hfQ1JfUEVSX1BvcyAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRkxBU0hfQ1JfUEVSX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX0NSX1BFUl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgRkxBU0hfQ1JfUEVSICAgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfQ1JfUEVSX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBhZ2UgZXJhc2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9DUl9NRVJfUG9zICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9DUl9NRVJfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfQ1JfTUVSX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBGTEFTSF9DUl9NRVIgICAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9DUl9NRVJfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgTWFzcyBlcmFzZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIEZMQVNIX0NSX1BOQl9Qb3MgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX0NSX1BOQl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDdGVUwgPDwgRkxBU0hfQ1JfUE5CX1BvcykgICAgICAgLyohPCAweDAwMDAwM0Y4ICovCisjZGVmaW5lIEZMQVNIX0NSX1BOQiAgICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX0NSX1BOQl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQYWdlIG51bWJlciBzZWxlY3Rpb24gbWFzayAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRkxBU0hfQ1JfU1RSVF9Qb3MgICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRkxBU0hfQ1JfU1RSVF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX0NSX1NUUlRfUG9zKSAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgRkxBU0hfQ1JfU1RSVCAgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfQ1JfU1RSVF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFN0YXJ0IGFuIGVyYXNlIG9wZXJhdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9DUl9PUFRTVFJUX1BvcyAgICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9DUl9PUFRTVFJUX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfQ1JfT1BUU1RSVF9Qb3MpICAgIC8qITwgMHgwMDAyMDAwMCAqLworI2RlZmluZSBGTEFTSF9DUl9PUFRTVFJUICAgICAgICAgICAgICAgICAgICBGTEFTSF9DUl9PUFRTVFJUX01zayAgICAgICAgICAgICAgIC8qITwgT3B0aW9ucyBtb2RpZmljYXRpb24gc3RhcnQgICAgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIEZMQVNIX0NSX0ZTVFBHX1BvcyAgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX0NSX0ZTVFBHX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9DUl9GU1RQR19Qb3MpICAgICAgLyohPCAweDAwMDQwMDAwICovCisjZGVmaW5lIEZMQVNIX0NSX0ZTVFBHICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX0NSX0ZTVFBHX01zayAgICAgICAgICAgICAgICAgLyohPCBGYXN0IHByb2dyYW1taW5nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRkxBU0hfQ1JfRU9QSUVfUG9zICAgICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRkxBU0hfQ1JfRU9QSUVfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX0NSX0VPUElFX1BvcykgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8KKyNkZWZpbmUgRkxBU0hfQ1JfRU9QSUUgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfQ1JfRU9QSUVfTXNrICAgICAgICAgICAgICAgICAvKiE8IEVuZCBvZiBvcGVyYXRpb24gaW50ZXJydXB0IGVuYWJsZSAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9DUl9FUlJJRV9Qb3MgICAgICAgICAgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9DUl9FUlJJRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfQ1JfRVJSSUVfUG9zKSAgICAgIC8qITwgMHgwMjAwMDAwMCAqLworI2RlZmluZSBGTEFTSF9DUl9FUlJJRSAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9DUl9FUlJJRV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgRXJyb3IgaW50ZXJydXB0IGVuYWJsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIEZMQVNIX0NSX1JERVJSSUVfUG9zICAgICAgICAgICAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX0NSX1JERVJSSUVfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9DUl9SREVSUklFX1BvcykgICAgLyohPCAweDA0MDAwMDAwICovCisjZGVmaW5lIEZMQVNIX0NSX1JERVJSSUUgICAgICAgICAgICAgICAgICAgIEZMQVNIX0NSX1JERVJSSUVfTXNrICAgICAgICAgICAgICAgLyohPCBQQ1JPUCByZWFkIGVycm9yIGludGVycnVwdCBlbmFibGUgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRkxBU0hfQ1JfT0JMX0xBVU5DSF9Qb3MgICAgICAgICAgICAgKDI3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRkxBU0hfQ1JfT0JMX0xBVU5DSF9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX0NSX09CTF9MQVVOQ0hfUG9zKSAvKiE8IDB4MDgwMDAwMDAgKi8KKyNkZWZpbmUgRkxBU0hfQ1JfT0JMX0xBVU5DSCAgICAgICAgICAgICAgICAgRkxBU0hfQ1JfT0JMX0xBVU5DSF9Nc2sgICAgICAgICAgICAvKiE8IEZvcmNlIHRoZSBvcHRpb24gYnl0ZSBsb2FkaW5nICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9DUl9PUFRMT0NLX1BvcyAgICAgICAgICAgICAgICAoMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9DUl9PUFRMT0NLX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfQ1JfT1BUTE9DS19Qb3MpICAgIC8qITwgMHg0MDAwMDAwMCAqLworI2RlZmluZSBGTEFTSF9DUl9PUFRMT0NLICAgICAgICAgICAgICAgICAgICBGTEFTSF9DUl9PUFRMT0NLX01zayAgICAgICAgICAgICAgIC8qITwgT3B0aW9ucyBsb2NrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIEZMQVNIX0NSX0xPQ0tfUG9zICAgICAgICAgICAgICAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX0NSX0xPQ0tfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9DUl9MT0NLX1BvcykgICAgICAgLyohPCAweDgwMDAwMDAwICovCisjZGVmaW5lIEZMQVNIX0NSX0xPQ0sgICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX0NSX0xPQ0tfTXNrICAgICAgICAgICAgICAgICAgLyohPCBGbGFzaCBjb250cm9sIHJlZ2lzdGVyIGxvY2sgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgRkxBU0hfRUNDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgRkxBU0hfRUNDUl9BRERSX0VDQ19Qb3MgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRkxBU0hfRUNDUl9BRERSX0VDQ19Nc2sgICAgICAgICAgICAgKDB4MUZGRkZVTCA8PCBGTEFTSF9FQ0NSX0FERFJfRUNDX1BvcykgLyohPCAweDAwMDFGRkZGICovCisjZGVmaW5lIEZMQVNIX0VDQ1JfQUREUl9FQ0MgICAgICAgICAgICAgICAgIEZMQVNIX0VDQ1JfQUREUl9FQ0NfTXNrICAgICAgICAgICAgLyohPCBkb3VibGUtd29yZCBhZGRyZXNzIEVDQyBmYWlsICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRkxBU0hfRUNDUl9TWVNGX0VDQ19Qb3MgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRkxBU0hfRUNDUl9TWVNGX0VDQ19Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX0VDQ1JfU1lTRl9FQ0NfUG9zKSAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgRkxBU0hfRUNDUl9TWVNGX0VDQyAgICAgICAgICAgICAgICAgRkxBU0hfRUNDUl9TWVNGX0VDQ19Nc2sgICAgICAgICAgICAvKiE8IFN5c3RlbSBmbGFzaCBFQ0MgZmFpbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9FQ0NSX0VDQ0NJRV9Qb3MgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9FQ0NSX0VDQ0NJRV9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfRUNDUl9FQ0NDSUVfUG9zKSAgIC8qITwgMHgwMTAwMDAwMCAqLworI2RlZmluZSBGTEFTSF9FQ0NSX0VDQ0NJRSAgICAgICAgICAgICAgICAgICBGTEFTSF9FQ0NSX0VDQ0NJRV9Nc2sgICAgICAgICAgICAgIC8qITwgRUNDIGNvcnJlY3Rpb24gaW50ZXJydXB0IGVuYWJsZSAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIEZMQVNIX0VDQ1JfQ1BVSURfUG9zICAgICAgICAgICAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX0VDQ1JfQ1BVSURfTXNrICAgICAgICAgICAgICAgICgweDdVTCA8PCBGTEFTSF9FQ0NSX0NQVUlEX1BvcykgICAgLyohPCAweDFDMDAwMDAwICovCisjZGVmaW5lIEZMQVNIX0VDQ1JfQ1BVSUQgICAgICAgICAgICAgICAgICAgIEZMQVNIX0VDQ1JfQ1BVSURfTXNrICAgICAgICAgICAgICAgLyohPCBDUFUgaWRlbnRpZmljYXRpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRkxBU0hfRUNDUl9FQ0NDX1BvcyAgICAgICAgICAgICAgICAgKDMwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRkxBU0hfRUNDUl9FQ0NDX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX0VDQ1JfRUNDQ19Qb3MpICAgICAvKiE8IDB4NDAwMDAwMDAgKi8KKyNkZWZpbmUgRkxBU0hfRUNDUl9FQ0NDICAgICAgICAgICAgICAgICAgICAgRkxBU0hfRUNDUl9FQ0NDX01zayAgICAgICAgICAgICAgICAvKiE8IEVDQyBjb3JyZWN0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9FQ0NSX0VDQ0RfUG9zICAgICAgICAgICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9FQ0NSX0VDQ0RfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfRUNDUl9FQ0NEX1BvcykgICAgIC8qITwgMHg4MDAwMDAwMCAqLworI2RlZmluZSBGTEFTSF9FQ0NSX0VDQ0QgICAgICAgICAgICAgICAgICAgICBGTEFTSF9FQ0NSX0VDQ0RfTXNrICAgICAgICAgICAgICAgIC8qITwgRUNDIGRldGVjdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisKKy8qKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIEZMQVNIX09QVFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovCisjZGVmaW5lIEZMQVNIX09QVFJfUkRQX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX09QVFJfUkRQX01zayAgICAgICAgICAgICAgICAgICgweEZGVUwgPDwgRkxBU0hfT1BUUl9SRFBfUG9zKSAgICAgLyohPCAweDAwMDAwMEZGICovCisjZGVmaW5lIEZMQVNIX09QVFJfUkRQICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX09QVFJfUkRQX01zayAgICAgICAgICAgICAgICAgLyohPCBSZWFkIHByb3RlY3Rpb24gbGV2ZWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRkxBU0hfT1BUUl9FU0VfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRkxBU0hfT1BUUl9FU0VfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX09QVFJfRVNFX1BvcykgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgRkxBU0hfT1BUUl9FU0UgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfT1BUUl9FU0VfTXNrICAgICAgICAgICAgICAgICAvKiE8IFNlY3VyaXR5IGVuYWJsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9PUFRSX0JPUl9MRVZfUG9zICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9PUFRSX0JPUl9MRVZfTXNrICAgICAgICAgICAgICAoMHg3VUwgPDwgRkxBU0hfT1BUUl9CT1JfTEVWX1BvcykgIC8qITwgMHgwMDAwMEUwMCAqLworI2RlZmluZSBGTEFTSF9PUFRSX0JPUl9MRVYgICAgICAgICAgICAgICAgICBGTEFTSF9PUFRSX0JPUl9MRVZfTXNrICAgICAgICAgICAgIC8qITwgQk9SIHJlc2V0IGxldmVsIG1hc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIEZMQVNIX09QVFJfQk9SX0xFVl8wICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX09QVFJfQk9SX0xFVl9Qb3MpICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIEZMQVNIX09QVFJfQk9SX0xFVl8xICAgICAgICAgICAgICAgICgweDJVIDw8IEZMQVNIX09QVFJfQk9SX0xFVl9Qb3MpICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIEZMQVNIX09QVFJfQk9SX0xFVl8yICAgICAgICAgICAgICAgICgweDRVIDw8IEZMQVNIX09QVFJfQk9SX0xFVl9Qb3MpICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIEZMQVNIX09QVFJfblJTVF9TVE9QX1BvcyAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX09QVFJfblJTVF9TVE9QX01zayAgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9PUFRSX25SU1RfU1RPUF9Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBGTEFTSF9PUFRSX25SU1RfU1RPUCAgICAgICAgICAgICAgICBGTEFTSF9PUFRSX25SU1RfU1RPUF9Nc2sgICAgICAgICAgIC8qITwgUmVzZXQgb3B0aW9uIGluIFN0b3AgbW9kZSAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIEZMQVNIX09QVFJfblJTVF9TVERCWV9Qb3MgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX09QVFJfblJTVF9TVERCWV9Nc2sgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9PUFRSX25SU1RfU1REQllfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgRkxBU0hfT1BUUl9uUlNUX1NUREJZICAgICAgICAgICAgICAgRkxBU0hfT1BUUl9uUlNUX1NUREJZX01zayAgICAgICAgICAvKiE8IFJlc2V0IG9wdGlvbiBpbiBTdGFuZGJ5IG1vZGUgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9PUFRSX25SU1RfU0hEV19Qb3MgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9PUFRSX25SU1RfU0hEV19Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfT1BUUl9uUlNUX1NIRFdfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgRkxBU0hfT1BUUl9uUlNUX1NIRFcgICAgICAgICAgICAgICAgRkxBU0hfT1BUUl9uUlNUX1NIRFdfTXNrICAgICAgICAgICAvKiE8IFJlc2V0IG9wdGlvbiBpbiBTaHV0ZG93biBtb2RlICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9PUFRSX0lXREdfU1dfUG9zICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9PUFRSX0lXREdfU1dfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfT1BUUl9JV0RHX1NXX1BvcykgIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBGTEFTSF9PUFRSX0lXREdfU1cgICAgICAgICAgICAgICAgICBGTEFTSF9PUFRSX0lXREdfU1dfTXNrICAgICAgICAgICAgIC8qITwgSW5kZXBlbmRlbnQgd2F0Y2hkb2cgc2VsZWN0aW9uICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIEZMQVNIX09QVFJfSVdER19TVE9QX1BvcyAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX09QVFJfSVdER19TVE9QX01zayAgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9PUFRSX0lXREdfU1RPUF9Qb3MpIC8qITwgMHgwMDAyMDAwMCAqLworI2RlZmluZSBGTEFTSF9PUFRSX0lXREdfU1RPUCAgICAgICAgICAgICAgICBGTEFTSF9PUFRSX0lXREdfU1RPUF9Nc2sgICAgICAgICAgIC8qITwgSW5kZXBlbmRlbnQgd2F0Y2hkb2cgY291bnRlciBvcHRpb24gaW4gU3RvcCBtb2RlICAgICovCisjZGVmaW5lIEZMQVNIX09QVFJfSVdER19TVERCWV9Qb3MgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX09QVFJfSVdER19TVERCWV9Nc2sgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9PUFRSX0lXREdfU1REQllfUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgRkxBU0hfT1BUUl9JV0RHX1NUREJZICAgICAgICAgICAgICAgRkxBU0hfT1BUUl9JV0RHX1NUREJZX01zayAgICAgICAgICAvKiE8IEluZGVwZW5kZW50IHdhdGNoZG9nIGNvdW50ZXIgb3B0aW9uIGluIFN0YW5kYnkgbW9kZSAqLworI2RlZmluZSBGTEFTSF9PUFRSX1dXREdfU1dfUG9zICAgICAgICAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9PUFRSX1dXREdfU1dfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfT1BUUl9XV0RHX1NXX1BvcykgIC8qITwgMHgwMDA4MDAwMCAqLworI2RlZmluZSBGTEFTSF9PUFRSX1dXREdfU1cgICAgICAgICAgICAgICAgICBGTEFTSF9PUFRSX1dXREdfU1dfTXNrICAgICAgICAgICAgIC8qITwgV2luZG93IHdhdGNoZG9nIHNlbGVjdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIEZMQVNIX09QVFJfbkJPT1QxX1BvcyAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX09QVFJfbkJPT1QxX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9PUFRSX25CT09UMV9Qb3MpICAgLyohPCAweDAwODAwMDAwICovCisjZGVmaW5lIEZMQVNIX09QVFJfbkJPT1QxICAgICAgICAgICAgICAgICAgIEZMQVNIX09QVFJfbkJPT1QxX01zayAgICAgICAgICAgICAgLyohPCBCb290IENvbmZpZ3VyYXRpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRkxBU0hfT1BUUl9TUkFNMlBFX1BvcyAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRkxBU0hfT1BUUl9TUkFNMlBFX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX09QVFJfU1JBTTJQRV9Qb3MpICAvKiE8IDB4MDEwMDAwMDAgKi8KKyNkZWZpbmUgRkxBU0hfT1BUUl9TUkFNMlBFICAgICAgICAgICAgICAgICAgRkxBU0hfT1BUUl9TUkFNMlBFX01zayAgICAgICAgICAgICAvKiE8IFNSQU0yIHBhcml0eSBjaGVjayBlbmFibGUgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9PUFRSX1NSQU0yUlNUX1BvcyAgICAgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9PUFRSX1NSQU0yUlNUX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfT1BUUl9TUkFNMlJTVF9Qb3MpIC8qITwgMHgwMjAwMDAwMCAqLworI2RlZmluZSBGTEFTSF9PUFRSX1NSQU0yUlNUICAgICAgICAgICAgICAgICBGTEFTSF9PUFRSX1NSQU0yUlNUX01zayAgICAgICAgICAgIC8qITwgU1JBTTIgZXJhc2Ugb3B0aW9uIHdoZW4gc3lzdGVtIHJlc2V0ICAgICAgICAgICAgICAgICovCisjZGVmaW5lIEZMQVNIX09QVFJfblNXQk9PVDBfUG9zICAgICAgICAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX09QVFJfblNXQk9PVDBfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9PUFRSX25TV0JPT1QwX1BvcykgLyohPCAweDA0MDAwMDAwICovCisjZGVmaW5lIEZMQVNIX09QVFJfblNXQk9PVDAgICAgICAgICAgICAgICAgIEZMQVNIX09QVFJfblNXQk9PVDBfTXNrICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBCT09UMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRkxBU0hfT1BUUl9uQk9PVDBfUG9zICAgICAgICAgICAgICAgKDI3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRkxBU0hfT1BUUl9uQk9PVDBfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX09QVFJfbkJPT1QwX1BvcykgICAvKiE8IDB4MDgwMDAwMDAgKi8KKyNkZWZpbmUgRkxBU0hfT1BUUl9uQk9PVDAgICAgICAgICAgICAgICAgICAgRkxBU0hfT1BUUl9uQk9PVDBfTXNrICAgICAgICAgICAgICAvKiE8IEJPT1QwIG9wdGlvbiBiaXQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9PUFRSX0FHQ19UUklNX1BvcyAgICAgICAgICAgICAoMjlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRkxBU0hfT1BUUl9BR0NfVFJJTV9Nc2sgICAgICAgICAgICAgKDB4N1VMIDw8IEZMQVNIX09QVFJfQUdDX1RSSU1fUG9zKSAgLyohPCAweEUwMDAwMDAwICovCisjZGVmaW5lIEZMQVNIX09QVFJfQUdDX1RSSU0gICAgICAgICAgICAgICAgIEZMQVNIX09QVFJfQUdDX1RSSU1fTXNrICAgICAgICAgICAgIC8qITwgQXV0b21hdGljIEdhaW4gQ29udHJvbCB0cmltbWluZyBtYXNrICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRkxBU0hfT1BUUl9BR0NfVFJJTV8wICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfT1BUUl9BR0NfVFJJTV9Qb3MpICAgLyohPCAweDIwMDAwMDAwICovCisjZGVmaW5lIEZMQVNIX09QVFJfQUdDX1RSSU1fMSAgICAgICAgICAgICAgICgweDJVIDw8IEZMQVNIX09QVFJfQUdDX1RSSU1fUG9zKSAgIC8qITwgMHg0MDAwMDAwMCAqLworI2RlZmluZSBGTEFTSF9PUFRSX0FHQ19UUklNXzIgICAgICAgICAgICAgICAoMHg0VSA8PCBGTEFTSF9PUFRSX0FHQ19UUklNX1BvcykgICAvKiE8IDB4ODAwMDAwMDAgKi8KKworLyoqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBGTEFTSF9QQ1JPUDFBU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKi8KKyNkZWZpbmUgRkxBU0hfUENST1AxQVNSX1BDUk9QMUFfU1RSVF9Qb3MgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRkxBU0hfUENST1AxQVNSX1BDUk9QMUFfU1RSVF9Nc2sgICAgKDB4RkZVTCA8PCBGTEFTSF9QQ1JPUDFBU1JfUENST1AxQV9TVFJUX1BvcykgLyohPCAweDAwMDAwMEZGICovCisjZGVmaW5lIEZMQVNIX1BDUk9QMUFTUl9QQ1JPUDFBX1NUUlQgICAgICAgIEZMQVNIX1BDUk9QMUFTUl9QQ1JPUDFBX1NUUlRfTXNrICAgLyohPCBQQ1JPUCBhcmVhIEEgc3RhcnQgb2Zmc2V0ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKworLyoqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBGTEFTSF9QQ1JPUDFBRVIgcmVnaXN0ZXIgICoqKioqKioqKioqKi8KKyNkZWZpbmUgRkxBU0hfUENST1AxQUVSX1BDUk9QMUFfRU5EX1BvcyAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRkxBU0hfUENST1AxQUVSX1BDUk9QMUFfRU5EX01zayAgICAgKDB4RkZVTCA8PCBGTEFTSF9QQ1JPUDFBRVJfUENST1AxQV9FTkRfUG9zKSAvKiE8IDB4MDAwMDAwRkYgKi8KKyNkZWZpbmUgRkxBU0hfUENST1AxQUVSX1BDUk9QMUFfRU5EICAgICAgICAgRkxBU0hfUENST1AxQUVSX1BDUk9QMUFfRU5EX01zayAgICAvKiE8IFBDUk9QIGFyZWEgQSBlbmQgb2Zmc2V0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9QQ1JPUDFBRVJfUENST1BfUkRQX1BvcyAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9QQ1JPUDFBRVJfUENST1BfUkRQX01zayAgICAgICAoMHgxVUwgPDwgRkxBU0hfUENST1AxQUVSX1BDUk9QX1JEUF9Qb3MpIC8qITwgMHg4MDAwMDAwMCAqLworI2RlZmluZSBGTEFTSF9QQ1JPUDFBRVJfUENST1BfUkRQICAgICAgICAgICBGTEFTSF9QQ1JPUDFBRVJfUENST1BfUkRQX01zayAgICAgIC8qITwgUENST1AgYXJlYSAgIHByZXNlcnZlZCB3aGVuIFJEUCBsZXZlbCBkZWNyZWFzZWQgICAgICovCisKKy8qKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgRkxBU0hfV1JQMUFSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovCisjZGVmaW5lIEZMQVNIX1dSUDFBUl9XUlAxQV9TVFJUX1BvcyAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX1dSUDFBUl9XUlAxQV9TVFJUX01zayAgICAgICAgICgweDdGVUwgPDwgRkxBU0hfV1JQMUFSX1dSUDFBX1NUUlRfUG9zKSAvKiE8IDB4MDAwMDAwN0YgKi8KKyNkZWZpbmUgRkxBU0hfV1JQMUFSX1dSUDFBX1NUUlQgICAgICAgICAgICAgRkxBU0hfV1JQMUFSX1dSUDFBX1NUUlRfTXNrICAgICAgICAvKiE8IFdSUCBhcmVhIEEgc3RhcnQgb2Zmc2V0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLyAKKyNkZWZpbmUgRkxBU0hfV1JQMUFSX1dSUDFBX0VORF9Qb3MgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRkxBU0hfV1JQMUFSX1dSUDFBX0VORF9Nc2sgICAgICAgICAgKDB4N0ZVTCA8PCBGTEFTSF9XUlAxQVJfV1JQMUFfRU5EX1BvcykgLyohPCAweDAwN0YwMDAwICovCisjZGVmaW5lIEZMQVNIX1dSUDFBUl9XUlAxQV9FTkQgICAgICAgICAgICAgIEZMQVNIX1dSUDFBUl9XUlAxQV9FTkRfTXNrICAgICAgICAgLyohPCBXUlAgYXJlYSBBIGVuZCBvZmZzZXQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKworLyoqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBGTEFTSF9XUlAxQlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8KKyNkZWZpbmUgRkxBU0hfV1JQMUJSX1dSUDFCX1NUUlRfUG9zICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRkxBU0hfV1JQMUJSX1dSUDFCX1NUUlRfTXNrICAgICAgICAgKDB4N0ZVTCA8PCBGTEFTSF9XUlAxQlJfV1JQMUJfU1RSVF9Qb3MpIC8qITwgMHgwMDAwMDA3RiAqLworI2RlZmluZSBGTEFTSF9XUlAxQlJfV1JQMUJfU1RSVCAgICAgICAgICAgICBGTEFTSF9XUlAxQlJfV1JQMUJfU1RSVF9Nc2sgICAgICAgIC8qITwgV1JQIGFyZWEgQiBzdGFydCBvZmZzZXQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIEZMQVNIX1dSUDFCUl9XUlAxQl9FTkRfUG9zICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX1dSUDFCUl9XUlAxQl9FTkRfTXNrICAgICAgICAgICgweDdGVUwgPDwgRkxBU0hfV1JQMUJSX1dSUDFCX0VORF9Qb3MpIC8qITwgMHgwMDdGMDAwMCAqLworI2RlZmluZSBGTEFTSF9XUlAxQlJfV1JQMUJfRU5EICAgICAgICAgICAgICBGTEFTSF9XUlAxQlJfV1JQMUJfRU5EX01zayAgICAgICAgIC8qITwgV1JQIGFyZWEgQiBlbmQgb2Zmc2V0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisKKy8qKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgRkxBU0hfUENST1AxQlNSIHJlZ2lzdGVyICAqKioqKioqKioqKiovCisjZGVmaW5lIEZMQVNIX1BDUk9QMUJTUl9QQ1JPUDFCX1NUUlRfUG9zICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX1BDUk9QMUJTUl9QQ1JPUDFCX1NUUlRfTXNrICAgICgweEZGVUwgPDwgRkxBU0hfUENST1AxQlNSX1BDUk9QMUJfU1RSVF9Qb3MpIC8qITwgMHgwMDAwMDBGRiAqLworI2RlZmluZSBGTEFTSF9QQ1JPUDFCU1JfUENST1AxQl9TVFJUICAgICAgICBGTEFTSF9QQ1JPUDFCU1JfUENST1AxQl9TVFJUX01zayAgIC8qITwgUENST1AgYXJlYSBCIHN0YXJ0IG9mZnNldCAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisKKy8qKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgRkxBU0hfUENST1AxQkVSIHJlZ2lzdGVyICAqKioqKioqKioqKiovCisjZGVmaW5lIEZMQVNIX1BDUk9QMUJFUl9QQ1JPUDFCX0VORF9Qb3MgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX1BDUk9QMUJFUl9QQ1JPUDFCX0VORF9Nc2sgICAgICgweEZGVUwgPDwgRkxBU0hfUENST1AxQkVSX1BDUk9QMUJfRU5EX1BvcykgLyohPCAweDAwMDAwMEZGICovCisjZGVmaW5lIEZMQVNIX1BDUk9QMUJFUl9QQ1JPUDFCX0VORCAgICAgICAgIEZMQVNIX1BDUk9QMUJFUl9QQ1JPUDFCX0VORF9Nc2sgICAgLyohPCBQQ1JPUCBhcmVhIEIgZW5kIG9mZnNldCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKworLyoqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBGTEFTSF9JUENDQlIgcmVnaXN0ZXIgICoqKioqKioqKioqKi8KKyNkZWZpbmUgRkxBU0hfSVBDQ0JSX0lQQ0NEQkFfUG9zICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRkxBU0hfSVBDQ0JSX0lQQ0NEQkFfTXNrICAgICAgICAgICAgKDB4M0ZGRlVMIDw8IEZMQVNIX0lQQ0NCUl9JUENDREJBX1BvcykgLyohPCAweDAwMDAzRkZGICovCisjZGVmaW5lIEZMQVNIX0lQQ0NCUl9JUENDREJBICAgICAgICAgICAgICAgIEZMQVNIX0lQQ0NCUl9JUENDREJBX01zayAgICAgICAgICAgLyohPCBJUENDIGRhdGEgYnVmZmVyIGJhc2UgYWRkcmVzcyAgICAgICAgICAgICAgICAgICAgICAgKi8KKworLyoqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBGTEFTSF9TRlIgcmVnaXN0ZXIgICoqKioqKioqKioqKi8KKyNkZWZpbmUgRkxBU0hfU0ZSX1NGU0FfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRkxBU0hfU0ZSX1NGU0FfTXNrICAgICAgICAgICAgICAgICAgKDB4N0ZVTCA8PCBGTEFTSF9TRlJfU0ZTQV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwN0YgKi8KKyNkZWZpbmUgRkxBU0hfU0ZSX1NGU0EgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfU0ZSX1NGU0FfTXNrICAgICAgICAgICAgICAgICAvKiBTZWN1cmUgZmxhc2ggc3RhcnQgYWRkcmVzcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRkxBU0hfU0ZSX0ZTRF9Qb3MgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRkxBU0hfU0ZSX0ZTRF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX1NGUl9GU0RfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgRkxBU0hfU0ZSX0ZTRCAgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfU0ZSX0ZTRF9Nc2sgICAgICAgICAgICAgICAgICAvKiBGbGFzaCBtb2RlIHNlY3VyZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRkxBU0hfU0ZSX0REU19Qb3MgICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRkxBU0hfU0ZSX0REU19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX1NGUl9ERFNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgRkxBU0hfU0ZSX0REUyAgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfU0ZSX0REU19Nc2sgICAgICAgICAgICAgICAgICAvKiBFbmFibGluZyBhbmQgZGlzYWJsaW5nIENQVTIgRGVidWcgYWNjZXNzICAgICAgICAgICAgICAgKi8KKworLyoqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBGTEFTSF9TUlJWUiByZWdpc3RlciAgKioqKioqKioqKioqLworI2RlZmluZSBGTEFTSF9TUlJWUl9TQlJWX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9TUlJWUl9TQlJWX01zayAgICAgICAgICAgICAgICAoMHgxRkZGRlVMIDw8IEZMQVNIX1NSUlZSX1NCUlZfUG9zKSAvKiE8IDB4MDAwMUZGRkYgKi8KKyNkZWZpbmUgRkxBU0hfU1JSVlJfU0JSViAgICAgICAgICAgICAgICAgICAgRkxBU0hfU1JSVlJfU0JSVl9Nc2sgICAgICAgICAgICAgICAgLyogU0NQVTIgYm9vdCByZXNldCB2ZWN0b3IgbWVtb3J5IG9mZnNldCAgICAgICAgICAgICAgICAgKi8KKworI2RlZmluZSBGTEFTSF9TUlJWUl9TQlJTQV9Qb3MgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9TUlJWUl9TQlJTQV9Nc2sgICAgICAgICAgICAgICAoMHgxRlVMIDw8IEZMQVNIX1NSUlZSX1NCUlNBX1BvcykgICAvKiE8IDB4MDA3QzAwMDAgKi8KKyNkZWZpbmUgRkxBU0hfU1JSVlJfU0JSU0EgICAgICAgICAgICAgICAgICAgRkxBU0hfU1JSVlJfU0JSU0FfTXNrICAgICAgICAgICAgICAgLyogU2VjdXJlIGJhY2t1cCBTUkFNMmEgc3RhcnQgYWRkcmVzcyAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIEZMQVNIX1NSUlZSX0JSU0RfUG9zICAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX1NSUlZSX0JSU0RfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9TUlJWUl9CUlNEX1BvcykgICAgIC8qITwgMHgwMDgwMDAwMCAqLworI2RlZmluZSBGTEFTSF9TUlJWUl9CUlNEICAgICAgICAgICAgICAgICAgICBGTEFTSF9TUlJWUl9CUlNEX01zayAgICAgICAgICAgICAgICAvKiBCYWNrdXAgU1JBTTJBIHNlY3VyZSBtb2RlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKworI2RlZmluZSBGTEFTSF9TUlJWUl9TTkJSU0FfUG9zICAgICAgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9TUlJWUl9TTkJSU0FfTXNrICAgICAgICAgICAgICAoMHgxRlVMIDw8IEZMQVNIX1NSUlZSX1NOQlJTQV9Qb3MpICAvKiE8IDB4M0UwMDAwMDAgKi8KKyNkZWZpbmUgRkxBU0hfU1JSVlJfU05CUlNBICAgICAgICAgICAgICAgICAgRkxBU0hfU1JSVlJfU05CUlNBX01zayAgICAgICAgICAgICAgLyogU2VjdXJlIG5vbi1iYWNrdXAgU1JBTTJiIHN0YXJ0IGFkZHJlc3MgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIEZMQVNIX1NSUlZSX05CUlNEX1BvcyAgICAgICAgICAgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX1NSUlZSX05CUlNEX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9TUlJWUl9OQlJTRF9Qb3MpICAgIC8qITwgMHg0MDAwMDAwMCAqLworI2RlZmluZSBGTEFTSF9TUlJWUl9OQlJTRCAgICAgICAgICAgICAgICAgICBGTEFTSF9TUlJWUl9OQlJTRF9Nc2sgICAgICAgICAgICAgICAvKiBOb24tYmFja3VwIFNSQU0yQiBzZWN1cmUgbW9kZSAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRkxBU0hfU1JSVlJfQzJPUFRfUG9zICAgICAgICAgICAgICAgKDMxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRkxBU0hfU1JSVlJfQzJPUFRfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX1NSUlZSX0MyT1BUX1BvcykgICAgLyohPCAweDgwMDAwMDAwICovCisjZGVmaW5lIEZMQVNIX1NSUlZSX0MyT1BUICAgICAgICAgICAgICAgICAgIEZMQVNIX1NSUlZSX0MyT1BUX01zayAgICAgICAgICAgICAgIC8qIFNDUFUyIGJvb3QgcmVzZXQgdmVjdG9yIG1lbW9yeSBzZWxlY3Rpb24gICAgICAgICAgICAgICAqLworCisvKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIEZMQVNIX0MyQUNSIHJlZ2lzdGVyICAqKioqKioqKioqKiovCisjZGVmaW5lIEZMQVNIX0MyQUNSX1BSRlRFTl9Qb3MgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX0MyQUNSX1BSRlRFTl9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9DMkFDUl9QUkZURU5fUG9zKSAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgRkxBU0hfQzJBQ1JfUFJGVEVOICAgICAgICAgICAgICAgICAgRkxBU0hfQzJBQ1JfUFJGVEVOX01zayAgICAgICAgICAgIC8qITwgQ1BVMiBQcmVmZXRjaCBlbmFibGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIEZMQVNIX0MyQUNSX0lDRU5fUG9zICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX0MyQUNSX0lDRU5fTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9DMkFDUl9JQ0VOX1BvcykgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgRkxBU0hfQzJBQ1JfSUNFTiAgICAgICAgICAgICAgICAgICAgRkxBU0hfQzJBQ1JfSUNFTl9Nc2sgICAgICAgICAgICAgIC8qITwgQ1BVMiBJbnN0cnVjdGlvbiBjYWNoZSBlbmFibGUgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIEZMQVNIX0MyQUNSX0lDUlNUX1BvcyAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX0MyQUNSX0lDUlNUX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9DMkFDUl9JQ1JTVF9Qb3MpICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgRkxBU0hfQzJBQ1JfSUNSU1QgICAgICAgICAgICAgICAgICAgRkxBU0hfQzJBQ1JfSUNSU1RfTXNrICAgICAgICAgICAgIC8qITwgQ1BVMiBJbnN0cnVjdGlvbiBjYWNoZSByZXNldCAgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIEZMQVNIX0MyQUNSX1BFU19Qb3MgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX0MyQUNSX1BFU19Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9DMkFDUl9QRVNfUG9zKSAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgRkxBU0hfQzJBQ1JfUEVTICAgICAgICAgICAgICAgICAgICAgRkxBU0hfQzJBQ1JfUEVTX01zayAgICAgICAgICAgICAgIC8qITwgQ1BVMiBQcm9ncmFtL2VyYXNlIHN1c3BlbmQgcmVxdWVzdCAgICAgICAgICAgICAgICAgICovCisKKy8qKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgRkxBU0hfQzJTUiByZWdpc3RlciAgKioqKioqKioqKioqLworI2RlZmluZSBGTEFTSF9DMlNSX0VPUF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9DMlNSX0VPUF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfQzJTUl9FT1BfUG9zKSAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIEZMQVNIX0MyU1JfRU9QICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX0MyU1JfRU9QX01zayAgICAgICAgICAgICAgICAvKiE8IENQVTIgRW5kIG9mIG9wZXJhdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9DMlNSX09QRVJSX1BvcyAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9DMlNSX09QRVJSX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfQzJTUl9PUEVSUl9Qb3MpICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIEZMQVNIX0MyU1JfT1BFUlIgICAgICAgICAgICAgICAgICAgIEZMQVNIX0MyU1JfT1BFUlJfTXNrICAgICAgICAgICAgICAvKiE8IENQVTIgT3BlcmF0aW9uIGVycm9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9DMlNSX1BST0dFUlJfUG9zICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9DMlNSX1BST0dFUlJfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfQzJTUl9QUk9HRVJSX1BvcykgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIEZMQVNIX0MyU1JfUFJPR0VSUiAgICAgICAgICAgICAgICAgIEZMQVNIX0MyU1JfUFJPR0VSUl9Nc2sgICAgICAgICAgICAvKiE8IENQVTIgUHJvZ3JhbW1pbmcgZXJyb3IgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9DMlNSX1dSUEVSUl9Qb3MgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9DMlNSX1dSUEVSUl9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfQzJTUl9XUlBFUlJfUG9zKSAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIEZMQVNIX0MyU1JfV1JQRVJSICAgICAgICAgICAgICAgICAgIEZMQVNIX0MyU1JfV1JQRVJSX01zayAgICAgICAgICAgICAvKiE8IENQVTIgV3JpdGUgcHJvdGVjdGlvbiBlcnJvciAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9DMlNSX1BHQUVSUl9Qb3MgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9DMlNSX1BHQUVSUl9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfQzJTUl9QR0FFUlJfUG9zKSAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIEZMQVNIX0MyU1JfUEdBRVJSICAgICAgICAgICAgICAgICAgIEZMQVNIX0MyU1JfUEdBRVJSX01zayAgICAgICAgICAgICAvKiE8IENQVTIgUHJvZ3JhbW1pbmcgYWxpZ25tZW50IGVycm9yICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9DMlNSX1NJWkVSUl9Qb3MgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9DMlNSX1NJWkVSUl9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfQzJTUl9TSVpFUlJfUG9zKSAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIEZMQVNIX0MyU1JfU0laRVJSICAgICAgICAgICAgICAgICAgIEZMQVNIX0MyU1JfU0laRVJSX01zayAgICAgICAgICAgICAvKiE8IENQVTIgU2l6ZSBlcnJvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9DMlNSX1BHU0VSUl9Qb3MgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9DMlNSX1BHU0VSUl9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfQzJTUl9QR1NFUlJfUG9zKSAgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIEZMQVNIX0MyU1JfUEdTRVJSICAgICAgICAgICAgICAgICAgIEZMQVNIX0MyU1JfUEdTRVJSX01zayAgICAgICAgICAgICAvKiE8IENQVTIgUHJvZ3JhbW1pbmcgc2VxdWVuY2UgZXJyb3IgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9DMlNSX01JU0VSUl9Qb3MgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9DMlNSX01JU0VSUl9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfQzJTUl9NSVNFUlJfUG9zKSAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIEZMQVNIX0MyU1JfTUlTRVJSICAgICAgICAgICAgICAgICAgIEZMQVNIX0MyU1JfTUlTRVJSX01zayAgICAgICAgICAgICAvKiE8IENQVTIgRmFzdCBwcm9ncmFtbWluZyBkYXRhIG1pc3MgZXJyb3IgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9DMlNSX0ZBU1RFUlJfUG9zICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9DMlNSX0ZBU1RFUlJfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfQzJTUl9GQVNURVJSX1BvcykgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIEZMQVNIX0MyU1JfRkFTVEVSUiAgICAgICAgICAgICAgICAgIEZMQVNIX0MyU1JfRkFTVEVSUl9Nc2sgICAgICAgICAgICAvKiE8IENQVTIgRmFzdCBwcm9ncmFtbWluZyBlcnJvciAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9DMlNSX1JERVJSX1BvcyAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9DMlNSX1JERVJSX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfQzJTUl9SREVSUl9Qb3MpICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIEZMQVNIX0MyU1JfUkRFUlIgICAgICAgICAgICAgICAgICAgIEZMQVNIX0MyU1JfUkRFUlJfTXNrICAgICAgICAgICAgICAvKiE8IENQVTIgUENST1AgcmVhZCBlcnJvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9DMlNSX0JTWV9Qb3MgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9DMlNSX0JTWV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfQzJTUl9CU1lfUG9zKSAgICAgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIEZMQVNIX0MyU1JfQlNZICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX0MyU1JfQlNZX01zayAgICAgICAgICAgICAgICAvKiE8IENQVTIgRmxhc2ggYnVzeSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9DMlNSX0NGR0JTWV9Qb3MgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9DMlNSX0NGR0JTWV9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfQzJTUl9DRkdCU1lfUG9zKSAgLyohPCAweDAwMDQwMDAwICovCisjZGVmaW5lIEZMQVNIX0MyU1JfQ0ZHQlNZICAgICAgICAgICAgICAgICAgIEZMQVNIX0MyU1JfQ0ZHQlNZX01zayAgICAgICAgICAgICAvKiE8IENQVTIgUHJvZ3JhbW1pbmcgb3IgZXJhc2UgY29uZmlndXJhdGlvbiBidXN5ICAgICAqLworI2RlZmluZSBGTEFTSF9DMlNSX1BFU0RfUG9zICAgICAgICAgICAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9DMlNSX1BFU0RfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfQzJTUl9QRVNEX1BvcykgICAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgRkxBU0hfQzJTUl9QRVNEICAgICAgICAgICAgICAgICAgICAgRkxBU0hfQzJTUl9QRVNEX01zayAgICAgICAgICAgICAgLyohPCBDUFUyIFByb2dyYW1taW5nL2VyYXNlIG9wZXJhdGlvbiBzdXNwZW5kZWQgICAgICAgKi8KKworLyoqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBGTEFTSF9DMkNSIHJlZ2lzdGVyICAqKioqKioqKioqKiovCisjZGVmaW5lIEZMQVNIX0MyQ1JfUEdfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX0MyQ1JfUEdfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9DMkNSX1BHX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgRkxBU0hfQzJDUl9QRyAgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfQzJDUl9QR19Nc2sgICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBGbGFzaCBwcm9ncmFtbWluZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRkxBU0hfQzJDUl9QRVJfUG9zICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRkxBU0hfQzJDUl9QRVJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX0MyQ1JfUEVSX1BvcykgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBGTEFTSF9DMkNSX1BFUiAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9DMkNSX1BFUl9Nc2sgICAgICAgICAgICAgICAgLyohPCBDUFUyIFBhZ2UgZXJhc2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9DMkNSX01FUl9Qb3MgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9DMkNSX01FUl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfQzJDUl9NRVJfUG9zKSAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIEZMQVNIX0MyQ1JfTUVSICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX0MyQ1JfTUVSX01zayAgICAgICAgICAgICAgICAvKiE8IENQVTIgTWFzcyBlcmFzZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIEZMQVNIX0MyQ1JfUE5CX1BvcyAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX0MyQ1JfUE5CX01zayAgICAgICAgICAgICAgICAgICgweDdGVUwgPDwgRkxBU0hfQzJDUl9QTkJfUG9zKSAgICAvKiE8IDB4MDAwMDAzRjggKi8KKyNkZWZpbmUgRkxBU0hfQzJDUl9QTkIgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfQzJDUl9QTkJfTXNrICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBQYWdlIG51bWJlciBzZWxlY3Rpb24gbWFzayAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRkxBU0hfQzJDUl9TVFJUX1BvcyAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRkxBU0hfQzJDUl9TVFJUX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX0MyQ1JfU1RSVF9Qb3MpICAgIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBGTEFTSF9DMkNSX1NUUlQgICAgICAgICAgICAgICAgICAgICBGTEFTSF9DMkNSX1NUUlRfTXNrICAgICAgICAgICAgICAgLyohPCBDUFUyIFN0YXJ0IGFuIGVyYXNlIG9wZXJhdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9DMkNSX0ZTVFBHX1BvcyAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9DMkNSX0ZTVFBHX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfQzJDUl9GU1RQR19Qb3MpICAgLyohPCAweDAwMDQwMDAwICovCisjZGVmaW5lIEZMQVNIX0MyQ1JfRlNUUEcgICAgICAgICAgICAgICAgICAgIEZMQVNIX0MyQ1JfRlNUUEdfTXNrICAgICAgICAgICAgICAvKiE8IENQVTIgRmFzdCBwcm9ncmFtbWluZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIEZMQVNIX0MyQ1JfRU9QSUVfUG9zICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEZMQVNIX0MyQ1JfRU9QSUVfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9DMkNSX0VPUElFX1BvcykgICAvKiE8IDB4MDEwMDAwMDAgKi8KKyNkZWZpbmUgRkxBU0hfQzJDUl9FT1BJRSAgICAgICAgICAgICAgICAgICAgRkxBU0hfQzJDUl9FT1BJRV9Nc2sgICAgICAgICAgICAgIC8qITwgQ1BVMiBFbmQgb2Ygb3BlcmF0aW9uIGludGVycnVwdCBlbmFibGUgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRkxBU0hfQzJDUl9FUlJJRV9Qb3MgICAgICAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgRkxBU0hfQzJDUl9FUlJJRV9Nc2sgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX0MyQ1JfRVJSSUVfUG9zKSAgIC8qITwgMHgwMjAwMDAwMCAqLworI2RlZmluZSBGTEFTSF9DMkNSX0VSUklFICAgICAgICAgICAgICAgICAgICBGTEFTSF9DMkNSX0VSUklFX01zayAgICAgICAgICAgICAgLyohPCBDUFUyIEVycm9yIGludGVycnVwdCBlbmFibGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9DMkNSX1JERVJSSUVfUG9zICAgICAgICAgICAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBGTEFTSF9DMkNSX1JERVJSSUVfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfQzJDUl9SREVSUklFX1BvcykgLyohPCAweDA0MDAwMDAwICovCisjZGVmaW5lIEZMQVNIX0MyQ1JfUkRFUlJJRSAgICAgICAgICAgICAgICAgIEZMQVNIX0MyQ1JfUkRFUlJJRV9Nc2sgICAgICAgICAgICAvKiE8IENQVTIgUENST1AgcmVhZCBlcnJvciBpbnRlcnJ1cHQgZW5hYmxlICAgICAgICAgICAgICAgICAgICovCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhbCBQdXJwb3NlIEkvTyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyoqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBHUElPX01PREVSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMF9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMF9Nc2sgICAgICAgICAgICgweDNVTCA8PCBHUElPX01PREVSX01PREUwX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDMgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMCAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERTBfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMF8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERTBfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMF8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERTBfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMV9Qb3MgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMV9Nc2sgICAgICAgICAgICgweDNVTCA8PCBHUElPX01PREVSX01PREUxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMEMgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMSAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERTFfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMV8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERTFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMV8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERTFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMl9Qb3MgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMl9Nc2sgICAgICAgICAgICgweDNVTCA8PCBHUElPX01PREVSX01PREUyX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMzAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMiAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERTJfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMl8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERTJfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMl8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERTJfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFM19Qb3MgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFM19Nc2sgICAgICAgICAgICgweDNVTCA8PCBHUElPX01PREVSX01PREUzX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwQzAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMyAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERTNfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFM18wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERTNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFM18xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERTNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFNF9Qb3MgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFNF9Nc2sgICAgICAgICAgICgweDNVTCA8PCBHUElPX01PREVSX01PREU0X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAzMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFNCAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERTRfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFNF8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERTRfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFNF8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERTRfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFNV9Qb3MgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFNV9Nc2sgICAgICAgICAgICgweDNVTCA8PCBHUElPX01PREVSX01PREU1X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDBDMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFNSAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERTVfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFNV8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERTVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFNV8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERTVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFNl9Qb3MgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFNl9Nc2sgICAgICAgICAgICgweDNVTCA8PCBHUElPX01PREVSX01PREU2X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDMwMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFNiAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERTZfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFNl8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERTZfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFNl8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERTZfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFN19Qb3MgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFN19Nc2sgICAgICAgICAgICgweDNVTCA8PCBHUElPX01PREVSX01PREU3X1BvcykgICAgICAgICAvKiE8IDB4MDAwMEMwMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFNyAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERTdfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFN18wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERTdfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFN18xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERTdfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFOF9Qb3MgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFOF9Nc2sgICAgICAgICAgICgweDNVTCA8PCBHUElPX01PREVSX01PREU4X1BvcykgICAgICAgICAvKiE8IDB4MDAwMzAwMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFOCAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERThfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFOF8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERThfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFOF8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERThfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFOV9Qb3MgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFOV9Nc2sgICAgICAgICAgICgweDNVTCA8PCBHUElPX01PREVSX01PREU5X1BvcykgICAgICAgICAvKiE8IDB4MDAwQzAwMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFOSAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERTlfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFOV8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERTlfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFOV8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERTlfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMTBfUG9zICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMTBfTXNrICAgICAgICAgICgweDNVTCA8PCBHUElPX01PREVSX01PREUxMF9Qb3MpICAgICAgICAvKiE8IDB4MDAzMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMTAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERTEwX01zayAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMTBfMCAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERTEwX1BvcykgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMTBfMSAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERTEwX1BvcykgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMTFfUG9zICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMTFfTXNrICAgICAgICAgICgweDNVTCA8PCBHUElPX01PREVSX01PREUxMV9Qb3MpICAgICAgICAvKiE8IDB4MDBDMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMTEgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERTExX01zayAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMTFfMCAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERTExX1BvcykgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMTFfMSAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERTExX1BvcykgICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMTJfUG9zICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMTJfTXNrICAgICAgICAgICgweDNVTCA8PCBHUElPX01PREVSX01PREUxMl9Qb3MpICAgICAgICAvKiE8IDB4MDMwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMTIgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERTEyX01zayAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMTJfMCAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERTEyX1BvcykgICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMTJfMSAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERTEyX1BvcykgICAgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMTNfUG9zICAgICAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMTNfTXNrICAgICAgICAgICgweDNVTCA8PCBHUElPX01PREVSX01PREUxM19Qb3MpICAgICAgICAvKiE8IDB4MEMwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMTMgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERTEzX01zayAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMTNfMCAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERTEzX1BvcykgICAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMTNfMSAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERTEzX1BvcykgICAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMTRfUG9zICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMTRfTXNrICAgICAgICAgICgweDNVTCA8PCBHUElPX01PREVSX01PREUxNF9Qb3MpICAgICAgICAvKiE8IDB4MzAwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMTQgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERTE0X01zayAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMTRfMCAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERTE0X1BvcykgICAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMTRfMSAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERTE0X1BvcykgICAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMTVfUG9zICAgICAgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMTVfTXNrICAgICAgICAgICgweDNVTCA8PCBHUElPX01PREVSX01PREUxNV9Qb3MpICAgICAgICAvKiE8IDB4QzAwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMTUgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERTE1X01zayAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMTVfMCAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERTE1X1BvcykgICAgICAgICAvKiE8IDB4NDAwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19NT0RFUl9NT0RFMTVfMSAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERTE1X1BvcykgICAgICAgICAvKiE8IDB4ODAwMDAwMDAgKi8KKworLyoqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBHUElPX09UWVBFUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgR1BJT19PVFlQRVJfT1QwX1BvcyAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PVFlQRVJfT1QwX01zayAgICAgICAgICAgICgweDFVTCA8PCBHUElPX09UWVBFUl9PVDBfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgR1BJT19PVFlQRVJfT1QwICAgICAgICAgICAgICAgIEdQSU9fT1RZUEVSX09UMF9Nc2sgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PVFlQRVJfT1QxX1BvcyAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PVFlQRVJfT1QxX01zayAgICAgICAgICAgICgweDFVTCA8PCBHUElPX09UWVBFUl9PVDFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgR1BJT19PVFlQRVJfT1QxICAgICAgICAgICAgICAgIEdQSU9fT1RZUEVSX09UMV9Nc2sgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PVFlQRVJfT1QyX1BvcyAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PVFlQRVJfT1QyX01zayAgICAgICAgICAgICgweDFVTCA8PCBHUElPX09UWVBFUl9PVDJfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgR1BJT19PVFlQRVJfT1QyICAgICAgICAgICAgICAgIEdQSU9fT1RZUEVSX09UMl9Nc2sgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PVFlQRVJfT1QzX1BvcyAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PVFlQRVJfT1QzX01zayAgICAgICAgICAgICgweDFVTCA8PCBHUElPX09UWVBFUl9PVDNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgR1BJT19PVFlQRVJfT1QzICAgICAgICAgICAgICAgIEdQSU9fT1RZUEVSX09UM19Nc2sgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PVFlQRVJfT1Q0X1BvcyAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PVFlQRVJfT1Q0X01zayAgICAgICAgICAgICgweDFVTCA8PCBHUElPX09UWVBFUl9PVDRfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgR1BJT19PVFlQRVJfT1Q0ICAgICAgICAgICAgICAgIEdQSU9fT1RZUEVSX09UNF9Nc2sgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PVFlQRVJfT1Q1X1BvcyAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PVFlQRVJfT1Q1X01zayAgICAgICAgICAgICgweDFVTCA8PCBHUElPX09UWVBFUl9PVDVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgR1BJT19PVFlQRVJfT1Q1ICAgICAgICAgICAgICAgIEdQSU9fT1RZUEVSX09UNV9Nc2sgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PVFlQRVJfT1Q2X1BvcyAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PVFlQRVJfT1Q2X01zayAgICAgICAgICAgICgweDFVTCA8PCBHUElPX09UWVBFUl9PVDZfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgR1BJT19PVFlQRVJfT1Q2ICAgICAgICAgICAgICAgIEdQSU9fT1RZUEVSX09UNl9Nc2sgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PVFlQRVJfT1Q3X1BvcyAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PVFlQRVJfT1Q3X01zayAgICAgICAgICAgICgweDFVTCA8PCBHUElPX09UWVBFUl9PVDdfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgR1BJT19PVFlQRVJfT1Q3ICAgICAgICAgICAgICAgIEdQSU9fT1RZUEVSX09UN19Nc2sgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PVFlQRVJfT1Q4X1BvcyAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PVFlQRVJfT1Q4X01zayAgICAgICAgICAgICgweDFVTCA8PCBHUElPX09UWVBFUl9PVDhfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgR1BJT19PVFlQRVJfT1Q4ICAgICAgICAgICAgICAgIEdQSU9fT1RZUEVSX09UOF9Nc2sgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PVFlQRVJfT1Q5X1BvcyAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PVFlQRVJfT1Q5X01zayAgICAgICAgICAgICgweDFVTCA8PCBHUElPX09UWVBFUl9PVDlfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgR1BJT19PVFlQRVJfT1Q5ICAgICAgICAgICAgICAgIEdQSU9fT1RZUEVSX09UOV9Nc2sgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PVFlQRVJfT1QxMF9Qb3MgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PVFlQRVJfT1QxMF9Nc2sgICAgICAgICAgICgweDFVTCA8PCBHUElPX09UWVBFUl9PVDEwX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgR1BJT19PVFlQRVJfT1QxMCAgICAgICAgICAgICAgIEdQSU9fT1RZUEVSX09UMTBfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PVFlQRVJfT1QxMV9Qb3MgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PVFlQRVJfT1QxMV9Nc2sgICAgICAgICAgICgweDFVTCA8PCBHUElPX09UWVBFUl9PVDExX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgR1BJT19PVFlQRVJfT1QxMSAgICAgICAgICAgICAgIEdQSU9fT1RZUEVSX09UMTFfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PVFlQRVJfT1QxMl9Qb3MgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PVFlQRVJfT1QxMl9Nc2sgICAgICAgICAgICgweDFVTCA8PCBHUElPX09UWVBFUl9PVDEyX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgR1BJT19PVFlQRVJfT1QxMiAgICAgICAgICAgICAgIEdQSU9fT1RZUEVSX09UMTJfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PVFlQRVJfT1QxM19Qb3MgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PVFlQRVJfT1QxM19Nc2sgICAgICAgICAgICgweDFVTCA8PCBHUElPX09UWVBFUl9PVDEzX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgR1BJT19PVFlQRVJfT1QxMyAgICAgICAgICAgICAgIEdQSU9fT1RZUEVSX09UMTNfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PVFlQRVJfT1QxNF9Qb3MgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PVFlQRVJfT1QxNF9Nc2sgICAgICAgICAgICgweDFVTCA8PCBHUElPX09UWVBFUl9PVDE0X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgR1BJT19PVFlQRVJfT1QxNCAgICAgICAgICAgICAgIEdQSU9fT1RZUEVSX09UMTRfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PVFlQRVJfT1QxNV9Qb3MgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PVFlQRVJfT1QxNV9Nc2sgICAgICAgICAgICgweDFVTCA8PCBHUElPX09UWVBFUl9PVDE1X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgR1BJT19PVFlQRVJfT1QxNSAgICAgICAgICAgICAgIEdQSU9fT1RZUEVSX09UMTVfTXNrICAgICAgICAgICAgICAgICAgICAKKworLyoqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBHUElPX09TUEVFRFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDBfUG9zICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDBfTXNrICAgICAgICgweDNVTCA8PCBHUElPX09TUEVFRFJfT1NQRUVEMF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDMgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDAgICAgICAgICAgIEdQSU9fT1NQRUVEUl9PU1BFRUQwX01zayAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDBfMCAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVEUl9PU1BFRUQwX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDBfMSAgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVEUl9PU1BFRUQwX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDFfUG9zICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDFfTXNrICAgICAgICgweDNVTCA8PCBHUElPX09TUEVFRFJfT1NQRUVEMV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMEMgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDEgICAgICAgICAgIEdQSU9fT1NQRUVEUl9PU1BFRUQxX01zayAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDFfMCAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVEUl9PU1BFRUQxX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDFfMSAgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVEUl9PU1BFRUQxX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDJfUG9zICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDJfTXNrICAgICAgICgweDNVTCA8PCBHUElPX09TUEVFRFJfT1NQRUVEMl9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMzAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDIgICAgICAgICAgIEdQSU9fT1NQRUVEUl9PU1BFRUQyX01zayAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDJfMCAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVEUl9PU1BFRUQyX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDJfMSAgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVEUl9PU1BFRUQyX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDNfUG9zICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDNfTXNrICAgICAgICgweDNVTCA8PCBHUElPX09TUEVFRFJfT1NQRUVEM19Qb3MpICAgICAvKiE8IDB4MDAwMDAwQzAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDMgICAgICAgICAgIEdQSU9fT1NQRUVEUl9PU1BFRUQzX01zayAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDNfMCAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVEUl9PU1BFRUQzX1BvcykgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDNfMSAgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVEUl9PU1BFRUQzX1BvcykgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDRfUG9zICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDRfTXNrICAgICAgICgweDNVTCA8PCBHUElPX09TUEVFRFJfT1NQRUVENF9Qb3MpICAgICAvKiE8IDB4MDAwMDAzMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDQgICAgICAgICAgIEdQSU9fT1NQRUVEUl9PU1BFRUQ0X01zayAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDRfMCAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVEUl9PU1BFRUQ0X1BvcykgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDRfMSAgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVEUl9PU1BFRUQ0X1BvcykgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDVfUG9zICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDVfTXNrICAgICAgICgweDNVTCA8PCBHUElPX09TUEVFRFJfT1NQRUVENV9Qb3MpICAgICAvKiE8IDB4MDAwMDBDMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDUgICAgICAgICAgIEdQSU9fT1NQRUVEUl9PU1BFRUQ1X01zayAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDVfMCAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVEUl9PU1BFRUQ1X1BvcykgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDVfMSAgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVEUl9PU1BFRUQ1X1BvcykgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDZfUG9zICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDZfTXNrICAgICAgICgweDNVTCA8PCBHUElPX09TUEVFRFJfT1NQRUVENl9Qb3MpICAgICAvKiE8IDB4MDAwMDMwMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDYgICAgICAgICAgIEdQSU9fT1NQRUVEUl9PU1BFRUQ2X01zayAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDZfMCAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVEUl9PU1BFRUQ2X1BvcykgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDZfMSAgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVEUl9PU1BFRUQ2X1BvcykgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDdfUG9zICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDdfTXNrICAgICAgICgweDNVTCA8PCBHUElPX09TUEVFRFJfT1NQRUVEN19Qb3MpICAgICAvKiE8IDB4MDAwMEMwMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDcgICAgICAgICAgIEdQSU9fT1NQRUVEUl9PU1BFRUQ3X01zayAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDdfMCAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVEUl9PU1BFRUQ3X1BvcykgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDdfMSAgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVEUl9PU1BFRUQ3X1BvcykgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDhfUG9zICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDhfTXNrICAgICAgICgweDNVTCA8PCBHUElPX09TUEVFRFJfT1NQRUVEOF9Qb3MpICAgICAvKiE8IDB4MDAwMzAwMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDggICAgICAgICAgIEdQSU9fT1NQRUVEUl9PU1BFRUQ4X01zayAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDhfMCAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVEUl9PU1BFRUQ4X1BvcykgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDhfMSAgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVEUl9PU1BFRUQ4X1BvcykgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDlfUG9zICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDlfTXNrICAgICAgICgweDNVTCA8PCBHUElPX09TUEVFRFJfT1NQRUVEOV9Qb3MpICAgICAvKiE8IDB4MDAwQzAwMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDkgICAgICAgICAgIEdQSU9fT1NQRUVEUl9PU1BFRUQ5X01zayAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDlfMCAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVEUl9PU1BFRUQ5X1BvcykgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDlfMSAgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVEUl9PU1BFRUQ5X1BvcykgICAgICAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDEwX1BvcyAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDEwX01zayAgICAgICgweDNVTCA8PCBHUElPX09TUEVFRFJfT1NQRUVEMTBfUG9zKSAgICAvKiE8IDB4MDAzMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDEwICAgICAgICAgIEdQSU9fT1NQRUVEUl9PU1BFRUQxMF9Nc2sgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDEwXzAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVEUl9PU1BFRUQxMF9Qb3MpICAgICAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDEwXzEgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVEUl9PU1BFRUQxMF9Qb3MpICAgICAvKiE8IDB4MDAyMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDExX1BvcyAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDExX01zayAgICAgICgweDNVTCA8PCBHUElPX09TUEVFRFJfT1NQRUVEMTFfUG9zKSAgICAvKiE8IDB4MDBDMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDExICAgICAgICAgIEdQSU9fT1NQRUVEUl9PU1BFRUQxMV9Nc2sgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDExXzAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVEUl9PU1BFRUQxMV9Qb3MpICAgICAvKiE8IDB4MDA0MDAwMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDExXzEgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVEUl9PU1BFRUQxMV9Qb3MpICAgICAvKiE8IDB4MDA4MDAwMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDEyX1BvcyAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDEyX01zayAgICAgICgweDNVTCA8PCBHUElPX09TUEVFRFJfT1NQRUVEMTJfUG9zKSAgICAvKiE8IDB4MDMwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDEyICAgICAgICAgIEdQSU9fT1NQRUVEUl9PU1BFRUQxMl9Nc2sgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDEyXzAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVEUl9PU1BFRUQxMl9Qb3MpICAgICAvKiE8IDB4MDEwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDEyXzEgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVEUl9PU1BFRUQxMl9Qb3MpICAgICAvKiE8IDB4MDIwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDEzX1BvcyAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDEzX01zayAgICAgICgweDNVTCA8PCBHUElPX09TUEVFRFJfT1NQRUVEMTNfUG9zKSAgICAvKiE8IDB4MEMwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDEzICAgICAgICAgIEdQSU9fT1NQRUVEUl9PU1BFRUQxM19Nc2sgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDEzXzAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVEUl9PU1BFRUQxM19Qb3MpICAgICAvKiE8IDB4MDQwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDEzXzEgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVEUl9PU1BFRUQxM19Qb3MpICAgICAvKiE8IDB4MDgwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDE0X1BvcyAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDE0X01zayAgICAgICgweDNVTCA8PCBHUElPX09TUEVFRFJfT1NQRUVEMTRfUG9zKSAgICAvKiE8IDB4MzAwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDE0ICAgICAgICAgIEdQSU9fT1NQRUVEUl9PU1BFRUQxNF9Nc2sgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDE0XzAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVEUl9PU1BFRUQxNF9Qb3MpICAgICAvKiE8IDB4MTAwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDE0XzEgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVEUl9PU1BFRUQxNF9Qb3MpICAgICAvKiE8IDB4MjAwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDE1X1BvcyAgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDE1X01zayAgICAgICgweDNVTCA8PCBHUElPX09TUEVFRFJfT1NQRUVEMTVfUG9zKSAgICAvKiE8IDB4QzAwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDE1ICAgICAgICAgIEdQSU9fT1NQRUVEUl9PU1BFRUQxNV9Nc2sgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDE1XzAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVEUl9PU1BFRUQxNV9Qb3MpICAgICAvKiE8IDB4NDAwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19PU1BFRURSX09TUEVFRDE1XzEgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVEUl9PU1BFRUQxNV9Qb3MpICAgICAvKiE8IDB4ODAwMDAwMDAgKi8KKworLyoqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBHUElPX1BVUERSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMF9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMF9Nc2sgICAgICAgICAgICgweDNVTCA8PCBHUElPX1BVUERSX1BVUEQwX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDMgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMCAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRDBfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMF8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRDBfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMF8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRDBfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMV9Qb3MgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMV9Nc2sgICAgICAgICAgICgweDNVTCA8PCBHUElPX1BVUERSX1BVUEQxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMEMgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMSAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRDFfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMV8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRDFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMV8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRDFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMl9Qb3MgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMl9Nc2sgICAgICAgICAgICgweDNVTCA8PCBHUElPX1BVUERSX1BVUEQyX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMzAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMiAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRDJfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMl8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRDJfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMl8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRDJfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEM19Qb3MgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEM19Nc2sgICAgICAgICAgICgweDNVTCA8PCBHUElPX1BVUERSX1BVUEQzX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwQzAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMyAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRDNfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEM18wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRDNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEM18xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRDNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBENF9Qb3MgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBENF9Nc2sgICAgICAgICAgICgweDNVTCA8PCBHUElPX1BVUERSX1BVUEQ0X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAzMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBENCAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRDRfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBENF8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRDRfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBENF8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRDRfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBENV9Qb3MgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBENV9Nc2sgICAgICAgICAgICgweDNVTCA8PCBHUElPX1BVUERSX1BVUEQ1X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDBDMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBENSAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRDVfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBENV8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRDVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBENV8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRDVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBENl9Qb3MgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBENl9Nc2sgICAgICAgICAgICgweDNVTCA8PCBHUElPX1BVUERSX1BVUEQ2X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDMwMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBENiAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRDZfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBENl8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRDZfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBENl8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRDZfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEN19Qb3MgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEN19Nc2sgICAgICAgICAgICgweDNVTCA8PCBHUElPX1BVUERSX1BVUEQ3X1BvcykgICAgICAgICAvKiE8IDB4MDAwMEMwMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBENyAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRDdfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEN18wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRDdfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEN18xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRDdfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEOF9Qb3MgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEOF9Nc2sgICAgICAgICAgICgweDNVTCA8PCBHUElPX1BVUERSX1BVUEQ4X1BvcykgICAgICAgICAvKiE8IDB4MDAwMzAwMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEOCAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRDhfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEOF8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRDhfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEOF8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRDhfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEOV9Qb3MgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEOV9Nc2sgICAgICAgICAgICgweDNVTCA8PCBHUElPX1BVUERSX1BVUEQ5X1BvcykgICAgICAgICAvKiE8IDB4MDAwQzAwMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEOSAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRDlfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEOV8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRDlfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEOV8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRDlfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMTBfUG9zICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMTBfTXNrICAgICAgICAgICgweDNVTCA8PCBHUElPX1BVUERSX1BVUEQxMF9Qb3MpICAgICAgICAvKiE8IDB4MDAzMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMTAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRDEwX01zayAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMTBfMCAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRDEwX1BvcykgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMTBfMSAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRDEwX1BvcykgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMTFfUG9zICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMTFfTXNrICAgICAgICAgICgweDNVTCA8PCBHUElPX1BVUERSX1BVUEQxMV9Qb3MpICAgICAgICAvKiE8IDB4MDBDMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMTEgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRDExX01zayAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMTFfMCAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRDExX1BvcykgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMTFfMSAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRDExX1BvcykgICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMTJfUG9zICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMTJfTXNrICAgICAgICAgICgweDNVTCA8PCBHUElPX1BVUERSX1BVUEQxMl9Qb3MpICAgICAgICAvKiE8IDB4MDMwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMTIgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRDEyX01zayAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMTJfMCAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRDEyX1BvcykgICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMTJfMSAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRDEyX1BvcykgICAgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMTNfUG9zICAgICAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMTNfTXNrICAgICAgICAgICgweDNVTCA8PCBHUElPX1BVUERSX1BVUEQxM19Qb3MpICAgICAgICAvKiE8IDB4MEMwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMTMgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRDEzX01zayAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMTNfMCAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRDEzX1BvcykgICAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMTNfMSAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRDEzX1BvcykgICAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMTRfUG9zICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMTRfTXNrICAgICAgICAgICgweDNVTCA8PCBHUElPX1BVUERSX1BVUEQxNF9Qb3MpICAgICAgICAvKiE8IDB4MzAwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMTQgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRDE0X01zayAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMTRfMCAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRDE0X1BvcykgICAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMTRfMSAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRDE0X1BvcykgICAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMTVfUG9zICAgICAgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMTVfTXNrICAgICAgICAgICgweDNVTCA8PCBHUElPX1BVUERSX1BVUEQxNV9Qb3MpICAgICAgICAvKiE8IDB4QzAwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMTUgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRDE1X01zayAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMTVfMCAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRDE1X1BvcykgICAgICAgICAvKiE8IDB4NDAwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19QVVBEUl9QVVBEMTVfMSAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRDE1X1BvcykgICAgICAgICAvKiE8IDB4ODAwMDAwMDAgKi8KKworLyoqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBHUElPX0lEUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgR1BJT19JRFJfSUQwX1BvcyAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19JRFJfSUQwX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0lEUl9JRDBfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgR1BJT19JRFJfSUQwICAgICAgICAgICAgICAgICAgIEdQSU9fSURSX0lEMF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19JRFJfSUQxX1BvcyAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19JRFJfSUQxX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0lEUl9JRDFfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgR1BJT19JRFJfSUQxICAgICAgICAgICAgICAgICAgIEdQSU9fSURSX0lEMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19JRFJfSUQyX1BvcyAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19JRFJfSUQyX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0lEUl9JRDJfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgR1BJT19JRFJfSUQyICAgICAgICAgICAgICAgICAgIEdQSU9fSURSX0lEMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19JRFJfSUQzX1BvcyAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19JRFJfSUQzX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0lEUl9JRDNfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgR1BJT19JRFJfSUQzICAgICAgICAgICAgICAgICAgIEdQSU9fSURSX0lEM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19JRFJfSUQ0X1BvcyAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19JRFJfSUQ0X01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0lEUl9JRDRfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgR1BJT19JRFJfSUQ0ICAgICAgICAgICAgICAgICAgIEdQSU9fSURSX0lENF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19JRFJfSUQ1X1BvcyAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19JRFJfSUQ1X01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0lEUl9JRDVfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgR1BJT19JRFJfSUQ1ICAgICAgICAgICAgICAgICAgIEdQSU9fSURSX0lENV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19JRFJfSUQ2X1BvcyAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19JRFJfSUQ2X01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0lEUl9JRDZfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgR1BJT19JRFJfSUQ2ICAgICAgICAgICAgICAgICAgIEdQSU9fSURSX0lENl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19JRFJfSUQ3X1BvcyAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19JRFJfSUQ3X01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0lEUl9JRDdfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgR1BJT19JRFJfSUQ3ICAgICAgICAgICAgICAgICAgIEdQSU9fSURSX0lEN19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19JRFJfSUQ4X1BvcyAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19JRFJfSUQ4X01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0lEUl9JRDhfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgR1BJT19JRFJfSUQ4ICAgICAgICAgICAgICAgICAgIEdQSU9fSURSX0lEOF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19JRFJfSUQ5X1BvcyAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19JRFJfSUQ5X01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0lEUl9JRDlfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgR1BJT19JRFJfSUQ5ICAgICAgICAgICAgICAgICAgIEdQSU9fSURSX0lEOV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19JRFJfSUQxMF9Qb3MgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19JRFJfSUQxMF9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0lEUl9JRDEwX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgR1BJT19JRFJfSUQxMCAgICAgICAgICAgICAgICAgIEdQSU9fSURSX0lEMTBfTXNrICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19JRFJfSUQxMV9Qb3MgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19JRFJfSUQxMV9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0lEUl9JRDExX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgR1BJT19JRFJfSUQxMSAgICAgICAgICAgICAgICAgIEdQSU9fSURSX0lEMTFfTXNrICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19JRFJfSUQxMl9Qb3MgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19JRFJfSUQxMl9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0lEUl9JRDEyX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgR1BJT19JRFJfSUQxMiAgICAgICAgICAgICAgICAgIEdQSU9fSURSX0lEMTJfTXNrICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19JRFJfSUQxM19Qb3MgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19JRFJfSUQxM19Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0lEUl9JRDEzX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgR1BJT19JRFJfSUQxMyAgICAgICAgICAgICAgICAgIEdQSU9fSURSX0lEMTNfTXNrICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19JRFJfSUQxNF9Qb3MgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19JRFJfSUQxNF9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0lEUl9JRDE0X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgR1BJT19JRFJfSUQxNCAgICAgICAgICAgICAgICAgIEdQSU9fSURSX0lEMTRfTXNrICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19JRFJfSUQxNV9Qb3MgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19JRFJfSUQxNV9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0lEUl9JRDE1X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgR1BJT19JRFJfSUQxNSAgICAgICAgICAgICAgICAgIEdQSU9fSURSX0lEMTVfTXNrICAgICAgICAgICAgICAgICAgICAgICAKKworLyoqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBHUElPX09EUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgR1BJT19PRFJfT0QwX1BvcyAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PRFJfT0QwX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX09EUl9PRDBfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgR1BJT19PRFJfT0QwICAgICAgICAgICAgICAgICAgIEdQSU9fT0RSX09EMF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PRFJfT0QxX1BvcyAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PRFJfT0QxX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX09EUl9PRDFfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgR1BJT19PRFJfT0QxICAgICAgICAgICAgICAgICAgIEdQSU9fT0RSX09EMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PRFJfT0QyX1BvcyAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PRFJfT0QyX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX09EUl9PRDJfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgR1BJT19PRFJfT0QyICAgICAgICAgICAgICAgICAgIEdQSU9fT0RSX09EMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PRFJfT0QzX1BvcyAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PRFJfT0QzX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX09EUl9PRDNfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgR1BJT19PRFJfT0QzICAgICAgICAgICAgICAgICAgIEdQSU9fT0RSX09EM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PRFJfT0Q0X1BvcyAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PRFJfT0Q0X01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX09EUl9PRDRfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgR1BJT19PRFJfT0Q0ICAgICAgICAgICAgICAgICAgIEdQSU9fT0RSX09ENF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PRFJfT0Q1X1BvcyAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PRFJfT0Q1X01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX09EUl9PRDVfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgR1BJT19PRFJfT0Q1ICAgICAgICAgICAgICAgICAgIEdQSU9fT0RSX09ENV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PRFJfT0Q2X1BvcyAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PRFJfT0Q2X01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX09EUl9PRDZfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgR1BJT19PRFJfT0Q2ICAgICAgICAgICAgICAgICAgIEdQSU9fT0RSX09ENl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PRFJfT0Q3X1BvcyAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PRFJfT0Q3X01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX09EUl9PRDdfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgR1BJT19PRFJfT0Q3ICAgICAgICAgICAgICAgICAgIEdQSU9fT0RSX09EN19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PRFJfT0Q4X1BvcyAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PRFJfT0Q4X01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX09EUl9PRDhfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgR1BJT19PRFJfT0Q4ICAgICAgICAgICAgICAgICAgIEdQSU9fT0RSX09EOF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PRFJfT0Q5X1BvcyAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PRFJfT0Q5X01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX09EUl9PRDlfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgR1BJT19PRFJfT0Q5ICAgICAgICAgICAgICAgICAgIEdQSU9fT0RSX09EOV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PRFJfT0QxMF9Qb3MgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PRFJfT0QxMF9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX09EUl9PRDEwX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgR1BJT19PRFJfT0QxMCAgICAgICAgICAgICAgICAgIEdQSU9fT0RSX09EMTBfTXNrICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PRFJfT0QxMV9Qb3MgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PRFJfT0QxMV9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX09EUl9PRDExX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgR1BJT19PRFJfT0QxMSAgICAgICAgICAgICAgICAgIEdQSU9fT0RSX09EMTFfTXNrICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PRFJfT0QxMl9Qb3MgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PRFJfT0QxMl9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX09EUl9PRDEyX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgR1BJT19PRFJfT0QxMiAgICAgICAgICAgICAgICAgIEdQSU9fT0RSX09EMTJfTXNrICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PRFJfT0QxM19Qb3MgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PRFJfT0QxM19Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX09EUl9PRDEzX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgR1BJT19PRFJfT0QxMyAgICAgICAgICAgICAgICAgIEdQSU9fT0RSX09EMTNfTXNrICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PRFJfT0QxNF9Qb3MgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PRFJfT0QxNF9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX09EUl9PRDE0X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgR1BJT19PRFJfT0QxNCAgICAgICAgICAgICAgICAgIEdQSU9fT0RSX09EMTRfTXNrICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PRFJfT0QxNV9Qb3MgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19PRFJfT0QxNV9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX09EUl9PRDE1X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgR1BJT19PRFJfT0QxNSAgICAgICAgICAgICAgICAgIEdQSU9fT0RSX09EMTVfTXNrICAgICAgICAgICAgICAgICAgICAgICAKKworLyoqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBHUElPX0JTUlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JTMF9Qb3MgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JTMF9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0JTUlJfQlMwX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JTMCAgICAgICAgICAgICAgICAgIEdQSU9fQlNSUl9CUzBfTXNrICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JTMV9Qb3MgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JTMV9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0JTUlJfQlMxX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JTMSAgICAgICAgICAgICAgICAgIEdQSU9fQlNSUl9CUzFfTXNrICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JTMl9Qb3MgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JTMl9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0JTUlJfQlMyX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JTMiAgICAgICAgICAgICAgICAgIEdQSU9fQlNSUl9CUzJfTXNrICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JTM19Qb3MgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JTM19Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0JTUlJfQlMzX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JTMyAgICAgICAgICAgICAgICAgIEdQSU9fQlNSUl9CUzNfTXNrICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JTNF9Qb3MgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JTNF9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0JTUlJfQlM0X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JTNCAgICAgICAgICAgICAgICAgIEdQSU9fQlNSUl9CUzRfTXNrICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JTNV9Qb3MgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JTNV9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0JTUlJfQlM1X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JTNSAgICAgICAgICAgICAgICAgIEdQSU9fQlNSUl9CUzVfTXNrICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JTNl9Qb3MgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JTNl9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0JTUlJfQlM2X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JTNiAgICAgICAgICAgICAgICAgIEdQSU9fQlNSUl9CUzZfTXNrICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JTN19Qb3MgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JTN19Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0JTUlJfQlM3X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JTNyAgICAgICAgICAgICAgICAgIEdQSU9fQlNSUl9CUzdfTXNrICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JTOF9Qb3MgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JTOF9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0JTUlJfQlM4X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JTOCAgICAgICAgICAgICAgICAgIEdQSU9fQlNSUl9CUzhfTXNrICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JTOV9Qb3MgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JTOV9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0JTUlJfQlM5X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JTOSAgICAgICAgICAgICAgICAgIEdQSU9fQlNSUl9CUzlfTXNrICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JTMTBfUG9zICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JTMTBfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0JTUlJfQlMxMF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JTMTAgICAgICAgICAgICAgICAgIEdQSU9fQlNSUl9CUzEwX01zayAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JTMTFfUG9zICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JTMTFfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0JTUlJfQlMxMV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JTMTEgICAgICAgICAgICAgICAgIEdQSU9fQlNSUl9CUzExX01zayAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JTMTJfUG9zICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JTMTJfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0JTUlJfQlMxMl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JTMTIgICAgICAgICAgICAgICAgIEdQSU9fQlNSUl9CUzEyX01zayAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JTMTNfUG9zICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JTMTNfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0JTUlJfQlMxM19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JTMTMgICAgICAgICAgICAgICAgIEdQSU9fQlNSUl9CUzEzX01zayAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JTMTRfUG9zICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JTMTRfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0JTUlJfQlMxNF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JTMTQgICAgICAgICAgICAgICAgIEdQSU9fQlNSUl9CUzE0X01zayAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JTMTVfUG9zICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JTMTVfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0JTUlJfQlMxNV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JTMTUgICAgICAgICAgICAgICAgIEdQSU9fQlNSUl9CUzE1X01zayAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JSMF9Qb3MgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JSMF9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0JTUlJfQlIwX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JSMCAgICAgICAgICAgICAgICAgIEdQSU9fQlNSUl9CUjBfTXNrICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JSMV9Qb3MgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JSMV9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0JTUlJfQlIxX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JSMSAgICAgICAgICAgICAgICAgIEdQSU9fQlNSUl9CUjFfTXNrICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JSMl9Qb3MgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JSMl9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0JTUlJfQlIyX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JSMiAgICAgICAgICAgICAgICAgIEdQSU9fQlNSUl9CUjJfTXNrICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JSM19Qb3MgICAgICAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JSM19Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0JTUlJfQlIzX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JSMyAgICAgICAgICAgICAgICAgIEdQSU9fQlNSUl9CUjNfTXNrICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JSNF9Qb3MgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JSNF9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0JTUlJfQlI0X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JSNCAgICAgICAgICAgICAgICAgIEdQSU9fQlNSUl9CUjRfTXNrICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JSNV9Qb3MgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JSNV9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0JTUlJfQlI1X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JSNSAgICAgICAgICAgICAgICAgIEdQSU9fQlNSUl9CUjVfTXNrICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JSNl9Qb3MgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JSNl9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0JTUlJfQlI2X1BvcykgICAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JSNiAgICAgICAgICAgICAgICAgIEdQSU9fQlNSUl9CUjZfTXNrICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JSN19Qb3MgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JSN19Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0JTUlJfQlI3X1BvcykgICAgICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JSNyAgICAgICAgICAgICAgICAgIEdQSU9fQlNSUl9CUjdfTXNrICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JSOF9Qb3MgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JSOF9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0JTUlJfQlI4X1BvcykgICAgICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JSOCAgICAgICAgICAgICAgICAgIEdQSU9fQlNSUl9CUjhfTXNrICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JSOV9Qb3MgICAgICAgICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JSOV9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0JTUlJfQlI5X1BvcykgICAgICAgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JSOSAgICAgICAgICAgICAgICAgIEdQSU9fQlNSUl9CUjlfTXNrICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JSMTBfUG9zICAgICAgICAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JSMTBfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0JTUlJfQlIxMF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JSMTAgICAgICAgICAgICAgICAgIEdQSU9fQlNSUl9CUjEwX01zayAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JSMTFfUG9zICAgICAgICAgICAgICgyN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JSMTFfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0JTUlJfQlIxMV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JSMTEgICAgICAgICAgICAgICAgIEdQSU9fQlNSUl9CUjExX01zayAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JSMTJfUG9zICAgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JSMTJfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0JTUlJfQlIxMl9Qb3MpICAgICAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JSMTIgICAgICAgICAgICAgICAgIEdQSU9fQlNSUl9CUjEyX01zayAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JSMTNfUG9zICAgICAgICAgICAgICgyOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JSMTNfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0JTUlJfQlIxM19Qb3MpICAgICAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JSMTMgICAgICAgICAgICAgICAgIEdQSU9fQlNSUl9CUjEzX01zayAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JSMTRfUG9zICAgICAgICAgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JSMTRfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0JTUlJfQlIxNF9Qb3MpICAgICAgICAgICAvKiE8IDB4NDAwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JSMTQgICAgICAgICAgICAgICAgIEdQSU9fQlNSUl9CUjE0X01zayAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JSMTVfUG9zICAgICAgICAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19CU1JSX0JSMTVfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0JTUlJfQlIxNV9Qb3MpICAgICAgICAgICAvKiE8IDB4ODAwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19CU1JSX0JSMTUgICAgICAgICAgICAgICAgIEdQSU9fQlNSUl9CUjE1X01zayAgICAgICAgICAgICAgICAgICAgICAKKworLyoqKioqKioqKioqKioqKioqKiBCaXQgZGVmaW5pdGlvbiBmb3IgR1BJT19MQ0tSIHJlZ2lzdGVyICoqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzBfUG9zICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzBfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0xDS1JfTENLMF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzAgICAgICAgICAgICAgICAgIEdQSU9fTENLUl9MQ0swX01zayAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzFfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzFfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0xDS1JfTENLMV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzEgICAgICAgICAgICAgICAgIEdQSU9fTENLUl9MQ0sxX01zayAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzJfUG9zICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzJfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0xDS1JfTENLMl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzIgICAgICAgICAgICAgICAgIEdQSU9fTENLUl9MQ0syX01zayAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzNfUG9zICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzNfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0xDS1JfTENLM19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzMgICAgICAgICAgICAgICAgIEdQSU9fTENLUl9MQ0szX01zayAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzRfUG9zICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzRfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0xDS1JfTENLNF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzQgICAgICAgICAgICAgICAgIEdQSU9fTENLUl9MQ0s0X01zayAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzVfUG9zICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzVfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0xDS1JfTENLNV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzUgICAgICAgICAgICAgICAgIEdQSU9fTENLUl9MQ0s1X01zayAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzZfUG9zICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzZfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0xDS1JfTENLNl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzYgICAgICAgICAgICAgICAgIEdQSU9fTENLUl9MQ0s2X01zayAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzdfUG9zICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzdfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0xDS1JfTENLN19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzcgICAgICAgICAgICAgICAgIEdQSU9fTENLUl9MQ0s3X01zayAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzhfUG9zICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzhfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0xDS1JfTENLOF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzggICAgICAgICAgICAgICAgIEdQSU9fTENLUl9MQ0s4X01zayAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzlfUG9zICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzlfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0xDS1JfTENLOV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzkgICAgICAgICAgICAgICAgIEdQSU9fTENLUl9MQ0s5X01zayAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzEwX1BvcyAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzEwX01zayAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0xDS1JfTENLMTBfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzEwICAgICAgICAgICAgICAgIEdQSU9fTENLUl9MQ0sxMF9Nc2sgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzExX1BvcyAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzExX01zayAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0xDS1JfTENLMTFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzExICAgICAgICAgICAgICAgIEdQSU9fTENLUl9MQ0sxMV9Nc2sgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzEyX1BvcyAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzEyX01zayAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0xDS1JfTENLMTJfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzEyICAgICAgICAgICAgICAgIEdQSU9fTENLUl9MQ0sxMl9Nc2sgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzEzX1BvcyAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzEzX01zayAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0xDS1JfTENLMTNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzEzICAgICAgICAgICAgICAgIEdQSU9fTENLUl9MQ0sxM19Nc2sgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzE0X1BvcyAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzE0X01zayAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0xDS1JfTENLMTRfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzE0ICAgICAgICAgICAgICAgIEdQSU9fTENLUl9MQ0sxNF9Nc2sgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzE1X1BvcyAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzE1X01zayAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0xDS1JfTENLMTVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgR1BJT19MQ0tSX0xDSzE1ICAgICAgICAgICAgICAgIEdQSU9fTENLUl9MQ0sxNV9Nc2sgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDS0tfUG9zICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19MQ0tSX0xDS0tfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0xDS1JfTENLS19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgR1BJT19MQ0tSX0xDS0sgICAgICAgICAgICAgICAgIEdQSU9fTENLUl9MQ0tLX01zayAgICAgICAgICAgICAgICAgICAgICAKKworLyoqKioqKioqKioqKioqKioqKiBCaXQgZGVmaW5pdGlvbiBmb3IgR1BJT19BRlJMIHJlZ2lzdGVyICoqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMF9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMF9Nc2sgICAgICAgICAgICgweEZVTCA8PCBHUElPX0FGUkxfQUZTRUwwX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMCAgICAgICAgICAgICAgIEdQSU9fQUZSTF9BRlNFTDBfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMF8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fQUZSTF9BRlNFTDBfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMF8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fQUZSTF9BRlNFTDBfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMF8yICAgICAgICAgICAgICgweDRVIDw8IEdQSU9fQUZSTF9BRlNFTDBfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMF8zICAgICAgICAgICAgICgweDhVIDw8IEdQSU9fQUZSTF9BRlNFTDBfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMV9Qb3MgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMV9Nc2sgICAgICAgICAgICgweEZVTCA8PCBHUElPX0FGUkxfQUZTRUwxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwRjAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMSAgICAgICAgICAgICAgIEdQSU9fQUZSTF9BRlNFTDFfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMV8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fQUZSTF9BRlNFTDFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMV8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fQUZSTF9BRlNFTDFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMV8yICAgICAgICAgICAgICgweDRVIDw8IEdQSU9fQUZSTF9BRlNFTDFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMV8zICAgICAgICAgICAgICgweDhVIDw8IEdQSU9fQUZSTF9BRlNFTDFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMl9Qb3MgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMl9Nc2sgICAgICAgICAgICgweEZVTCA8PCBHUElPX0FGUkxfQUZTRUwyX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDBGMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMiAgICAgICAgICAgICAgIEdQSU9fQUZSTF9BRlNFTDJfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMl8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fQUZSTF9BRlNFTDJfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMl8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fQUZSTF9BRlNFTDJfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMl8yICAgICAgICAgICAgICgweDRVIDw8IEdQSU9fQUZSTF9BRlNFTDJfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMl8zICAgICAgICAgICAgICgweDhVIDw8IEdQSU9fQUZSTF9BRlNFTDJfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMM19Qb3MgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMM19Nc2sgICAgICAgICAgICgweEZVTCA8PCBHUElPX0FGUkxfQUZTRUwzX1BvcykgICAgICAgICAvKiE8IDB4MDAwMEYwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMyAgICAgICAgICAgICAgIEdQSU9fQUZSTF9BRlNFTDNfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMM18wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fQUZSTF9BRlNFTDNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMM18xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fQUZSTF9BRlNFTDNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMM18yICAgICAgICAgICAgICgweDRVIDw8IEdQSU9fQUZSTF9BRlNFTDNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMM18zICAgICAgICAgICAgICgweDhVIDw8IEdQSU9fQUZSTF9BRlNFTDNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNF9Qb3MgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNF9Nc2sgICAgICAgICAgICgweEZVTCA8PCBHUElPX0FGUkxfQUZTRUw0X1BvcykgICAgICAgICAvKiE8IDB4MDAwRjAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNCAgICAgICAgICAgICAgIEdQSU9fQUZSTF9BRlNFTDRfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNF8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fQUZSTF9BRlNFTDRfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNF8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fQUZSTF9BRlNFTDRfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNF8yICAgICAgICAgICAgICgweDRVIDw8IEdQSU9fQUZSTF9BRlNFTDRfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNF8zICAgICAgICAgICAgICgweDhVIDw8IEdQSU9fQUZSTF9BRlNFTDRfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNV9Qb3MgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNV9Nc2sgICAgICAgICAgICgweEZVTCA8PCBHUElPX0FGUkxfQUZTRUw1X1BvcykgICAgICAgICAvKiE8IDB4MDBGMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNSAgICAgICAgICAgICAgIEdQSU9fQUZSTF9BRlNFTDVfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNV8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fQUZSTF9BRlNFTDVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNV8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fQUZSTF9BRlNFTDVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNV8yICAgICAgICAgICAgICgweDRVIDw8IEdQSU9fQUZSTF9BRlNFTDVfUG9zKSAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNV8zICAgICAgICAgICAgICgweDhVIDw8IEdQSU9fQUZSTF9BRlNFTDVfUG9zKSAgICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNl9Qb3MgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNl9Nc2sgICAgICAgICAgICgweEZVTCA8PCBHUElPX0FGUkxfQUZTRUw2X1BvcykgICAgICAgICAvKiE8IDB4MEYwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNiAgICAgICAgICAgICAgIEdQSU9fQUZSTF9BRlNFTDZfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNl8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fQUZSTF9BRlNFTDZfUG9zKSAgICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNl8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fQUZSTF9BRlNFTDZfUG9zKSAgICAgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNl8yICAgICAgICAgICAgICgweDRVIDw8IEdQSU9fQUZSTF9BRlNFTDZfUG9zKSAgICAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNl8zICAgICAgICAgICAgICgweDhVIDw8IEdQSU9fQUZSTF9BRlNFTDZfUG9zKSAgICAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMN19Qb3MgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMN19Nc2sgICAgICAgICAgICgweEZVTCA8PCBHUElPX0FGUkxfQUZTRUw3X1BvcykgICAgICAgICAvKiE8IDB4RjAwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNyAgICAgICAgICAgICAgIEdQSU9fQUZSTF9BRlNFTDdfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMN18wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fQUZSTF9BRlNFTDdfUG9zKSAgICAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMN18xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fQUZSTF9BRlNFTDdfUG9zKSAgICAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMN18yICAgICAgICAgICAgICgweDRVIDw8IEdQSU9fQUZSTF9BRlNFTDdfUG9zKSAgICAgICAgICAvKiE8IDB4NDAwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJMX0FGU0VMN18zICAgICAgICAgICAgICgweDhVIDw8IEdQSU9fQUZSTF9BRlNFTDdfUG9zKSAgICAgICAgICAvKiE8IDB4ODAwMDAwMDAgKi8KKworLyoqKioqKioqKioqKioqKioqKiBCaXQgZGVmaW5pdGlvbiBmb3IgR1BJT19BRlJIIHJlZ2lzdGVyICoqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMOF9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMOF9Nc2sgICAgICAgICAgICgweEZVTCA8PCBHUElPX0FGUkhfQUZTRUw4X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMOCAgICAgICAgICAgICAgIEdQSU9fQUZSSF9BRlNFTDhfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMOF8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fQUZSSF9BRlNFTDhfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMOF8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fQUZSSF9BRlNFTDhfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMOF8yICAgICAgICAgICAgICgweDRVIDw8IEdQSU9fQUZSSF9BRlNFTDhfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMOF8zICAgICAgICAgICAgICgweDhVIDw8IEdQSU9fQUZSSF9BRlNFTDhfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMOV9Qb3MgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMOV9Nc2sgICAgICAgICAgICgweEZVTCA8PCBHUElPX0FGUkhfQUZTRUw5X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwRjAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMOSAgICAgICAgICAgICAgIEdQSU9fQUZSSF9BRlNFTDlfTXNrICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMOV8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fQUZSSF9BRlNFTDlfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMOV8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fQUZSSF9BRlNFTDlfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMOV8yICAgICAgICAgICAgICgweDRVIDw8IEdQSU9fQUZSSF9BRlNFTDlfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMOV8zICAgICAgICAgICAgICgweDhVIDw8IEdQSU9fQUZSSF9BRlNFTDlfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTBfUG9zICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTBfTXNrICAgICAgICAgICgweEZVTCA8PCBHUElPX0FGUkhfQUZTRUwxMF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDBGMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTAgICAgICAgICAgICAgIEdQSU9fQUZSSF9BRlNFTDEwX01zayAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTBfMCAgICAgICAgICAgICgweDFVIDw8IEdQSU9fQUZSSF9BRlNFTDEwX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTBfMSAgICAgICAgICAgICgweDJVIDw8IEdQSU9fQUZSSF9BRlNFTDEwX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTBfMiAgICAgICAgICAgICgweDRVIDw8IEdQSU9fQUZSSF9BRlNFTDEwX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTBfMyAgICAgICAgICAgICgweDhVIDw8IEdQSU9fQUZSSF9BRlNFTDEwX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTFfUG9zICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTFfTXNrICAgICAgICAgICgweEZVTCA8PCBHUElPX0FGUkhfQUZTRUwxMV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMEYwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTEgICAgICAgICAgICAgIEdQSU9fQUZSSF9BRlNFTDExX01zayAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTFfMCAgICAgICAgICAgICgweDFVIDw8IEdQSU9fQUZSSF9BRlNFTDExX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTFfMSAgICAgICAgICAgICgweDJVIDw8IEdQSU9fQUZSSF9BRlNFTDExX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTFfMiAgICAgICAgICAgICgweDRVIDw8IEdQSU9fQUZSSF9BRlNFTDExX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTFfMyAgICAgICAgICAgICgweDhVIDw8IEdQSU9fQUZSSF9BRlNFTDExX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTJfUG9zICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTJfTXNrICAgICAgICAgICgweEZVTCA8PCBHUElPX0FGUkhfQUZTRUwxMl9Qb3MpICAgICAgICAvKiE8IDB4MDAwRjAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTIgICAgICAgICAgICAgIEdQSU9fQUZSSF9BRlNFTDEyX01zayAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTJfMCAgICAgICAgICAgICgweDFVIDw8IEdQSU9fQUZSSF9BRlNFTDEyX1BvcykgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTJfMSAgICAgICAgICAgICgweDJVIDw8IEdQSU9fQUZSSF9BRlNFTDEyX1BvcykgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTJfMiAgICAgICAgICAgICgweDRVIDw8IEdQSU9fQUZSSF9BRlNFTDEyX1BvcykgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTJfMyAgICAgICAgICAgICgweDhVIDw8IEdQSU9fQUZSSF9BRlNFTDEyX1BvcykgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTNfUG9zICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTNfTXNrICAgICAgICAgICgweEZVTCA8PCBHUElPX0FGUkhfQUZTRUwxM19Qb3MpICAgICAgICAvKiE8IDB4MDBGMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTMgICAgICAgICAgICAgIEdQSU9fQUZSSF9BRlNFTDEzX01zayAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTNfMCAgICAgICAgICAgICgweDFVIDw8IEdQSU9fQUZSSF9BRlNFTDEzX1BvcykgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTNfMSAgICAgICAgICAgICgweDJVIDw8IEdQSU9fQUZSSF9BRlNFTDEzX1BvcykgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTNfMiAgICAgICAgICAgICgweDRVIDw8IEdQSU9fQUZSSF9BRlNFTDEzX1BvcykgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTNfMyAgICAgICAgICAgICgweDhVIDw8IEdQSU9fQUZSSF9BRlNFTDEzX1BvcykgICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTRfUG9zICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTRfTXNrICAgICAgICAgICgweEZVTCA8PCBHUElPX0FGUkhfQUZTRUwxNF9Qb3MpICAgICAgICAvKiE8IDB4MEYwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTQgICAgICAgICAgICAgIEdQSU9fQUZSSF9BRlNFTDE0X01zayAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTRfMCAgICAgICAgICAgICgweDFVIDw8IEdQSU9fQUZSSF9BRlNFTDE0X1BvcykgICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTRfMSAgICAgICAgICAgICgweDJVIDw8IEdQSU9fQUZSSF9BRlNFTDE0X1BvcykgICAgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTRfMiAgICAgICAgICAgICgweDRVIDw8IEdQSU9fQUZSSF9BRlNFTDE0X1BvcykgICAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTRfMyAgICAgICAgICAgICgweDhVIDw8IEdQSU9fQUZSSF9BRlNFTDE0X1BvcykgICAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTVfUG9zICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTVfTXNrICAgICAgICAgICgweEZVTCA8PCBHUElPX0FGUkhfQUZTRUwxNV9Qb3MpICAgICAgICAvKiE8IDB4RjAwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTUgICAgICAgICAgICAgIEdQSU9fQUZSSF9BRlNFTDE1X01zayAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTVfMCAgICAgICAgICAgICgweDFVIDw8IEdQSU9fQUZSSF9BRlNFTDE1X1BvcykgICAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTVfMSAgICAgICAgICAgICgweDJVIDw8IEdQSU9fQUZSSF9BRlNFTDE1X1BvcykgICAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTVfMiAgICAgICAgICAgICgweDRVIDw8IEdQSU9fQUZSSF9BRlNFTDE1X1BvcykgICAgICAgICAvKiE8IDB4NDAwMDAwMDAgKi8KKyNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTVfMyAgICAgICAgICAgICgweDhVIDw8IEdQSU9fQUZSSF9BRlNFTDE1X1BvcykgICAgICAgICAvKiE8IDB4ODAwMDAwMDAgKi8KKworLyoqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBHUElPX0JSUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBHUElPX0JSUl9CUjBfUG9zICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBHUElPX0JSUl9CUjBfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fQlJSX0JSMF9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBHUElPX0JSUl9CUjAgICAgICAgICAgICAgICAgICAgR1BJT19CUlJfQlIwX01zayAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBHUElPX0JSUl9CUjFfUG9zICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBHUElPX0JSUl9CUjFfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fQlJSX0JSMV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBHUElPX0JSUl9CUjEgICAgICAgICAgICAgICAgICAgR1BJT19CUlJfQlIxX01zayAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBHUElPX0JSUl9CUjJfUG9zICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBHUElPX0JSUl9CUjJfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fQlJSX0JSMl9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBHUElPX0JSUl9CUjIgICAgICAgICAgICAgICAgICAgR1BJT19CUlJfQlIyX01zayAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBHUElPX0JSUl9CUjNfUG9zICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBHUElPX0JSUl9CUjNfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fQlJSX0JSM19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBHUElPX0JSUl9CUjMgICAgICAgICAgICAgICAgICAgR1BJT19CUlJfQlIzX01zayAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBHUElPX0JSUl9CUjRfUG9zICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBHUElPX0JSUl9CUjRfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fQlJSX0JSNF9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBHUElPX0JSUl9CUjQgICAgICAgICAgICAgICAgICAgR1BJT19CUlJfQlI0X01zayAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBHUElPX0JSUl9CUjVfUG9zICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBHUElPX0JSUl9CUjVfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fQlJSX0JSNV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBHUElPX0JSUl9CUjUgICAgICAgICAgICAgICAgICAgR1BJT19CUlJfQlI1X01zayAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBHUElPX0JSUl9CUjZfUG9zICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBHUElPX0JSUl9CUjZfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fQlJSX0JSNl9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBHUElPX0JSUl9CUjYgICAgICAgICAgICAgICAgICAgR1BJT19CUlJfQlI2X01zayAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBHUElPX0JSUl9CUjdfUG9zICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBHUElPX0JSUl9CUjdfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fQlJSX0JSN19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLworI2RlZmluZSBHUElPX0JSUl9CUjcgICAgICAgICAgICAgICAgICAgR1BJT19CUlJfQlI3X01zayAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBHUElPX0JSUl9CUjhfUG9zICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBHUElPX0JSUl9CUjhfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fQlJSX0JSOF9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBHUElPX0JSUl9CUjggICAgICAgICAgICAgICAgICAgR1BJT19CUlJfQlI4X01zayAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBHUElPX0JSUl9CUjlfUG9zICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBHUElPX0JSUl9CUjlfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fQlJSX0JSOV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBHUElPX0JSUl9CUjkgICAgICAgICAgICAgICAgICAgR1BJT19CUlJfQlI5X01zayAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBHUElPX0JSUl9CUjEwX1BvcyAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBHUElPX0JSUl9CUjEwX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fQlJSX0JSMTBfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLworI2RlZmluZSBHUElPX0JSUl9CUjEwICAgICAgICAgICAgICAgICAgR1BJT19CUlJfQlIxMF9Nc2sgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBHUElPX0JSUl9CUjExX1BvcyAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBHUElPX0JSUl9CUjExX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fQlJSX0JSMTFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLworI2RlZmluZSBHUElPX0JSUl9CUjExICAgICAgICAgICAgICAgICAgR1BJT19CUlJfQlIxMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBHUElPX0JSUl9CUjEyX1BvcyAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBHUElPX0JSUl9CUjEyX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fQlJSX0JSMTJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBHUElPX0JSUl9CUjEyICAgICAgICAgICAgICAgICAgR1BJT19CUlJfQlIxMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBHUElPX0JSUl9CUjEzX1BvcyAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBHUElPX0JSUl9CUjEzX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fQlJSX0JSMTNfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLworI2RlZmluZSBHUElPX0JSUl9CUjEzICAgICAgICAgICAgICAgICAgR1BJT19CUlJfQlIxM19Nc2sgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBHUElPX0JSUl9CUjE0X1BvcyAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBHUElPX0JSUl9CUjE0X01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fQlJSX0JSMTRfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLworI2RlZmluZSBHUElPX0JSUl9CUjE0ICAgICAgICAgICAgICAgICAgR1BJT19CUlJfQlIxNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBHUElPX0JSUl9CUjE1X1BvcyAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBHUElPX0JSUl9CUjE1X01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fQlJSX0JSMTVfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLworI2RlZmluZSBHUElPX0JSUl9CUjE1ICAgICAgICAgICAgICAgICAgR1BJT19CUlJfQlIxNV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIAorCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgSFNFTSBIVyBTZW1hcGhvcmUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisvKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEhTRU1fUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIEhTRU1fUl9QUk9DSURfUG9zICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fUl9QUk9DSURfTXNrICAgICAgICAoMHhGRlVMIDw8IEhTRU1fUl9QUk9DSURfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMEZGICovCisjZGVmaW5lIEhTRU1fUl9QUk9DSUQgICAgICAgICAgICBIU0VNX1JfUFJPQ0lEX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPFNlbWFwaG9yZSBQcm9jZXNzSUQgKi8KKyNkZWZpbmUgSFNFTV9SX0NPUkVJRF9Qb3MgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9SX0NPUkVJRF9Nc2sgICAgICAgICgweEZVTCA8PCBIU0VNX1JfQ09SRUlEX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDBGMDAgKi8KKyNkZWZpbmUgSFNFTV9SX0NPUkVJRCAgICAgICAgICAgIEhTRU1fUl9DT1JFSURfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8U2VtYXBob3JlIENvcmVJRC4gKi8KKyNkZWZpbmUgSFNFTV9SX0xPQ0tfUG9zICAgICAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9SX0xPQ0tfTXNrICAgICAgICAgICgweDFVTCA8PCBIU0VNX1JfTE9DS19Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4ODAwMDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9SX0xPQ0sgICAgICAgICAgICAgIEhTRU1fUl9MT0NLX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8TG9jayBpbmRpY2F0aW9uLiAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBIU0VNX1JMUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBIU0VNX1JMUl9QUk9DSURfUG9zICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX1JMUl9QUk9DSURfTXNrICAgICAgKDB4RkZVTCA8PCBIU0VNX1JMUl9QUk9DSURfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDBGRiAqLworI2RlZmluZSBIU0VNX1JMUl9QUk9DSUQgICAgICAgICAgSFNFTV9STFJfUFJPQ0lEX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxTZW1hcGhvcmUgUHJvY2Vzc0lEICovCisjZGVmaW5lIEhTRU1fUkxSX0NPUkVJRF9Qb3MgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fUkxSX0NPUkVJRF9Nc2sgICAgICAoMHhGVUwgPDwgSFNFTV9STFJfQ09SRUlEX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwRjAwICovCisjZGVmaW5lIEhTRU1fUkxSX0NPUkVJRCAgICAgICAgICBIU0VNX1JMUl9DT1JFSURfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPFNlbWFwaG9yZSBDb3JlSUQuICovCisjZGVmaW5lIEhTRU1fUkxSX0xPQ0tfUG9zICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fUkxSX0xPQ0tfTXNrICAgICAgICAoMHgxVUwgPDwgSFNFTV9STFJfTE9DS19Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDgwMDAwMDAwICovCisjZGVmaW5lIEhTRU1fUkxSX0xPQ0sgICAgICAgICAgICBIU0VNX1JMUl9MT0NLX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPExvY2sgaW5kaWNhdGlvbi4gKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgSFNFTV9DMUlFUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgSFNFTV9DMUlFUl9JU0UwX1BvcyAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMUlFUl9JU0UwX01zayAgICAgICgweDFVTCA8PCBIU0VNX0MxSUVSX0lTRTBfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgSFNFTV9DMUlFUl9JU0UwICAgICAgICAgIEhTRU1fQzFJRVJfSVNFMF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDAgQ1BVMSBpbnRlcnJ1cHQgZW5hYmxlIGJpdC4gICovCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFMV9Qb3MgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFMV9Nc2sgICAgICAoMHgxVUwgPDwgSFNFTV9DMUlFUl9JU0UxX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFMSAgICAgICAgICBIU0VNX0MxSUVSX0lTRTFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxIENQVTEgaW50ZXJydXB0IGVuYWJsZSBiaXQuICAqLworI2RlZmluZSBIU0VNX0MxSUVSX0lTRTJfUG9zICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MxSUVSX0lTRTJfTXNrICAgICAgKDB4MVVMIDw8IEhTRU1fQzFJRVJfSVNFMl9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBIU0VNX0MxSUVSX0lTRTIgICAgICAgICAgSFNFTV9DMUlFUl9JU0UyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMiBDUFUxIGludGVycnVwdCBlbmFibGUgYml0LiAgKi8KKyNkZWZpbmUgSFNFTV9DMUlFUl9JU0UzX1BvcyAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMUlFUl9JU0UzX01zayAgICAgICgweDFVTCA8PCBIU0VNX0MxSUVSX0lTRTNfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgSFNFTV9DMUlFUl9JU0UzICAgICAgICAgIEhTRU1fQzFJRVJfSVNFM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDMgQ1BVMSBpbnRlcnJ1cHQgZW5hYmxlIGJpdC4gICovCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFNF9Qb3MgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFNF9Nc2sgICAgICAoMHgxVUwgPDwgSFNFTV9DMUlFUl9JU0U0X1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFNCAgICAgICAgICBIU0VNX0MxSUVSX0lTRTRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSA0IENQVTEgaW50ZXJydXB0IGVuYWJsZSBiaXQuICAqLworI2RlZmluZSBIU0VNX0MxSUVSX0lTRTVfUG9zICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MxSUVSX0lTRTVfTXNrICAgICAgKDB4MVVMIDw8IEhTRU1fQzFJRVJfSVNFNV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBIU0VNX0MxSUVSX0lTRTUgICAgICAgICAgSFNFTV9DMUlFUl9JU0U1X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgNSBDUFUxIGludGVycnVwdCBlbmFibGUgYml0LiAgKi8KKyNkZWZpbmUgSFNFTV9DMUlFUl9JU0U2X1BvcyAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMUlFUl9JU0U2X01zayAgICAgICgweDFVTCA8PCBIU0VNX0MxSUVSX0lTRTZfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgSFNFTV9DMUlFUl9JU0U2ICAgICAgICAgIEhTRU1fQzFJRVJfSVNFNl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDYgQ1BVMSBpbnRlcnJ1cHQgZW5hYmxlIGJpdC4gICovCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFN19Qb3MgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFN19Nc2sgICAgICAoMHgxVUwgPDwgSFNFTV9DMUlFUl9JU0U3X1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFNyAgICAgICAgICBIU0VNX0MxSUVSX0lTRTdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSA3IENQVTEgaW50ZXJydXB0IGVuYWJsZSBiaXQuICAqLworI2RlZmluZSBIU0VNX0MxSUVSX0lTRThfUG9zICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MxSUVSX0lTRThfTXNrICAgICAgKDB4MVVMIDw8IEhTRU1fQzFJRVJfSVNFOF9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBIU0VNX0MxSUVSX0lTRTggICAgICAgICAgSFNFTV9DMUlFUl9JU0U4X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgOCBDUFUxIGludGVycnVwdCBlbmFibGUgYml0LiAgKi8KKyNkZWZpbmUgSFNFTV9DMUlFUl9JU0U5X1BvcyAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMUlFUl9JU0U5X01zayAgICAgICgweDFVTCA8PCBIU0VNX0MxSUVSX0lTRTlfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgSFNFTV9DMUlFUl9JU0U5ICAgICAgICAgIEhTRU1fQzFJRVJfSVNFOV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDkgQ1BVMSBpbnRlcnJ1cHQgZW5hYmxlIGJpdC4gICovCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFMTBfUG9zICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFMTBfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlFUl9JU0UxMF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFMTAgICAgICAgICBIU0VNX0MxSUVSX0lTRTEwX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxMCBDUFUxIGludGVycnVwdCBlbmFibGUgYml0LiAqLworI2RlZmluZSBIU0VNX0MxSUVSX0lTRTExX1BvcyAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MxSUVSX0lTRTExX01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzFJRVJfSVNFMTFfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLworI2RlZmluZSBIU0VNX0MxSUVSX0lTRTExICAgICAgICAgSFNFTV9DMUlFUl9JU0UxMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMTEgQ1BVMSBpbnRlcnJ1cHQgZW5hYmxlIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMUlFUl9JU0UxMl9Qb3MgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMUlFUl9JU0UxMl9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MxSUVSX0lTRTEyX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMUlFUl9JU0UxMiAgICAgICAgIEhTRU1fQzFJRVJfSVNFMTJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDEyIENQVTEgaW50ZXJydXB0IGVuYWJsZSBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFMTNfUG9zICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFMTNfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlFUl9JU0UxM19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFMTMgICAgICAgICBIU0VNX0MxSUVSX0lTRTEzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxMyBDUFUxIGludGVycnVwdCBlbmFibGUgYml0LiAqLworI2RlZmluZSBIU0VNX0MxSUVSX0lTRTE0X1BvcyAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MxSUVSX0lTRTE0X01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzFJRVJfSVNFMTRfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLworI2RlZmluZSBIU0VNX0MxSUVSX0lTRTE0ICAgICAgICAgSFNFTV9DMUlFUl9JU0UxNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMTQgQ1BVMSBpbnRlcnJ1cHQgZW5hYmxlIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMUlFUl9JU0UxNV9Qb3MgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMUlFUl9JU0UxNV9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MxSUVSX0lTRTE1X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMUlFUl9JU0UxNSAgICAgICAgIEhTRU1fQzFJRVJfSVNFMTVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDE1IENQVTEgaW50ZXJydXB0IGVuYWJsZSBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFMTZfUG9zICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFMTZfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlFUl9JU0UxNl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFMTYgICAgICAgICBIU0VNX0MxSUVSX0lTRTE2X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxNiBDUFUxIGludGVycnVwdCBlbmFibGUgYml0LiAqLworI2RlZmluZSBIU0VNX0MxSUVSX0lTRTE3X1BvcyAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MxSUVSX0lTRTE3X01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzFJRVJfSVNFMTdfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLworI2RlZmluZSBIU0VNX0MxSUVSX0lTRTE3ICAgICAgICAgSFNFTV9DMUlFUl9JU0UxN19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMTcgQ1BVMSBpbnRlcnJ1cHQgZW5hYmxlIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMUlFUl9JU0UxOF9Qb3MgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMUlFUl9JU0UxOF9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MxSUVSX0lTRTE4X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMUlFUl9JU0UxOCAgICAgICAgIEhTRU1fQzFJRVJfSVNFMThfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDE4IENQVTEgaW50ZXJydXB0IGVuYWJsZSBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFMTlfUG9zICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFMTlfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlFUl9JU0UxOV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFMTkgICAgICAgICBIU0VNX0MxSUVSX0lTRTE5X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxOSBDUFUxIGludGVycnVwdCBlbmFibGUgYml0LiAqLworI2RlZmluZSBIU0VNX0MxSUVSX0lTRTIwX1BvcyAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MxSUVSX0lTRTIwX01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzFJRVJfSVNFMjBfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLworI2RlZmluZSBIU0VNX0MxSUVSX0lTRTIwICAgICAgICAgSFNFTV9DMUlFUl9JU0UyMF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMjAgQ1BVMSBpbnRlcnJ1cHQgZW5hYmxlIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMUlFUl9JU0UyMV9Qb3MgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMUlFUl9JU0UyMV9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MxSUVSX0lTRTIxX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMUlFUl9JU0UyMSAgICAgICAgIEhTRU1fQzFJRVJfSVNFMjFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDIxIENQVTEgaW50ZXJydXB0IGVuYWJsZSBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFMjJfUG9zICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFMjJfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlFUl9JU0UyMl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFMjIgICAgICAgICBIU0VNX0MxSUVSX0lTRTIyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyMiBDUFUxIGludGVycnVwdCBlbmFibGUgYml0LiAqLworI2RlZmluZSBIU0VNX0MxSUVSX0lTRTIzX1BvcyAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MxSUVSX0lTRTIzX01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzFJRVJfSVNFMjNfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLworI2RlZmluZSBIU0VNX0MxSUVSX0lTRTIzICAgICAgICAgSFNFTV9DMUlFUl9JU0UyM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMjMgQ1BVMSBpbnRlcnJ1cHQgZW5hYmxlIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMUlFUl9JU0UyNF9Qb3MgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMUlFUl9JU0UyNF9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MxSUVSX0lTRTI0X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMUlFUl9JU0UyNCAgICAgICAgIEhTRU1fQzFJRVJfSVNFMjRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDI0IENQVTEgaW50ZXJydXB0IGVuYWJsZSBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFMjVfUG9zICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFMjVfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlFUl9JU0UyNV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAyMDAwMDAwICovCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFMjUgICAgICAgICBIU0VNX0MxSUVSX0lTRTI1X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyNSBDUFUxIGludGVycnVwdCBlbmFibGUgYml0LiAqLworI2RlZmluZSBIU0VNX0MxSUVSX0lTRTI2X1BvcyAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFMjZfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlFUl9JU0UyNl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDA0MDAwMDAwICovCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFMjYgICAgICAgICBIU0VNX0MxSUVSX0lTRTI2X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyNiBDUFUxIGludGVycnVwdCBlbmFibGUgYml0LiAqLworI2RlZmluZSBIU0VNX0MxSUVSX0lTRTI3X1BvcyAgICAgKDI3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFMjdfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlFUl9JU0UyN19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDA4MDAwMDAwICovCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFMjcgICAgICAgICBIU0VNX0MxSUVSX0lTRTI3X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyNyBDUFUxIGludGVycnVwdCBlbmFibGUgYml0LiAqLworI2RlZmluZSBIU0VNX0MxSUVSX0lTRTI4X1BvcyAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MxSUVSX0lTRTI4X01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzFJRVJfSVNFMjhfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgxMDAwMDAwMCAqLworI2RlZmluZSBIU0VNX0MxSUVSX0lTRTI4ICAgICAgICAgSFNFTV9DMUlFUl9JU0UyOF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMjggQ1BVMSBpbnRlcnJ1cHQgZW5hYmxlIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMUlFUl9JU0UyOV9Qb3MgICAgICgyOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMUlFUl9JU0UyOV9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MxSUVSX0lTRTI5X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMUlFUl9JU0UyOSAgICAgICAgIEhTRU1fQzFJRVJfSVNFMjlfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDI5IENQVTEgaW50ZXJydXB0IGVuYWJsZSBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFMzBfUG9zICAgICAoMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFMzBfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlFUl9JU0UzMF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDQwMDAwMDAwICovCisjZGVmaW5lIEhTRU1fQzFJRVJfSVNFMzAgICAgICAgICBIU0VNX0MxSUVSX0lTRTMwX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAzMCBDUFUxIGludGVycnVwdCBlbmFibGUgYml0LiAqLworI2RlZmluZSBIU0VNX0MxSUVSX0lTRTMxX1BvcyAgICAgKDMxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MxSUVSX0lTRTMxX01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzFJRVJfSVNFMzFfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHg4MDAwMDAwMCAqLworI2RlZmluZSBIU0VNX0MxSUVSX0lTRTMxICAgICAgICAgSFNFTV9DMUlFUl9JU0UzMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMzEgQ1BVMSBpbnRlcnJ1cHQgZW5hYmxlIGJpdC4gKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgSFNFTV9DMUlDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMF9Qb3MgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMF9Nc2sgICAgICAoMHgxVUwgPDwgSFNFTV9DMUlDUl9JU0MwX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMCAgICAgICAgICBIU0VNX0MxSUNSX0lTQzBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAwIENQVTEgaW50ZXJydXB0IGNsZWFyIGJpdC4gICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMV9Qb3MgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMV9Nc2sgICAgICAoMHgxVUwgPDwgSFNFTV9DMUlDUl9JU0MxX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMSAgICAgICAgICBIU0VNX0MxSUNSX0lTQzFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxIENQVTEgaW50ZXJydXB0IGNsZWFyIGJpdC4gICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMl9Qb3MgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMl9Nc2sgICAgICAoMHgxVUwgPDwgSFNFTV9DMUlDUl9JU0MyX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMiAgICAgICAgICBIU0VNX0MxSUNSX0lTQzJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyIENQVTEgaW50ZXJydXB0IGNsZWFyIGJpdC4gICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDM19Qb3MgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDM19Nc2sgICAgICAoMHgxVUwgPDwgSFNFTV9DMUlDUl9JU0MzX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMyAgICAgICAgICBIU0VNX0MxSUNSX0lTQzNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAzIENQVTEgaW50ZXJydXB0IGNsZWFyIGJpdC4gICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDNF9Qb3MgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDNF9Nc2sgICAgICAoMHgxVUwgPDwgSFNFTV9DMUlDUl9JU0M0X1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDNCAgICAgICAgICBIU0VNX0MxSUNSX0lTQzRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSA0IENQVTEgaW50ZXJydXB0IGNsZWFyIGJpdC4gICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDNV9Qb3MgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDNV9Nc2sgICAgICAoMHgxVUwgPDwgSFNFTV9DMUlDUl9JU0M1X1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDNSAgICAgICAgICBIU0VNX0MxSUNSX0lTQzVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSA1IENQVTEgaW50ZXJydXB0IGNsZWFyIGJpdC4gICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDNl9Qb3MgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDNl9Nc2sgICAgICAoMHgxVUwgPDwgSFNFTV9DMUlDUl9JU0M2X1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDNiAgICAgICAgICBIU0VNX0MxSUNSX0lTQzZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSA2IENQVTEgaW50ZXJydXB0IGNsZWFyIGJpdC4gICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDN19Qb3MgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDN19Nc2sgICAgICAoMHgxVUwgPDwgSFNFTV9DMUlDUl9JU0M3X1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDNyAgICAgICAgICBIU0VNX0MxSUNSX0lTQzdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSA3IENQVTEgaW50ZXJydXB0IGNsZWFyIGJpdC4gICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDOF9Qb3MgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDOF9Nc2sgICAgICAoMHgxVUwgPDwgSFNFTV9DMUlDUl9JU0M4X1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDOCAgICAgICAgICBIU0VNX0MxSUNSX0lTQzhfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSA4IENQVTEgaW50ZXJydXB0IGNsZWFyIGJpdC4gICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDOV9Qb3MgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDOV9Nc2sgICAgICAoMHgxVUwgPDwgSFNFTV9DMUlDUl9JU0M5X1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDOSAgICAgICAgICBIU0VNX0MxSUNSX0lTQzlfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSA5IENQVTEgaW50ZXJydXB0IGNsZWFyIGJpdC4gICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMTBfUG9zICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMTBfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlDUl9JU0MxMF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMTAgICAgICAgICBIU0VNX0MxSUNSX0lTQzEwX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxMCBDUFUxIGludGVycnVwdCBjbGVhciBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMTFfUG9zICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMTFfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlDUl9JU0MxMV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMTEgICAgICAgICBIU0VNX0MxSUNSX0lTQzExX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxMSBDUFUxIGludGVycnVwdCBjbGVhciBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMTJfUG9zICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMTJfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlDUl9JU0MxMl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMTIgICAgICAgICBIU0VNX0MxSUNSX0lTQzEyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxMiBDUFUxIGludGVycnVwdCBjbGVhciBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMTNfUG9zICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMTNfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlDUl9JU0MxM19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMTMgICAgICAgICBIU0VNX0MxSUNSX0lTQzEzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxMyBDUFUxIGludGVycnVwdCBjbGVhciBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMTRfUG9zICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMTRfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlDUl9JU0MxNF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMTQgICAgICAgICBIU0VNX0MxSUNSX0lTQzE0X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxNCBDUFUxIGludGVycnVwdCBjbGVhciBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMTVfUG9zICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMTVfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlDUl9JU0MxNV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMTUgICAgICAgICBIU0VNX0MxSUNSX0lTQzE1X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxNSBDUFUxIGludGVycnVwdCBjbGVhciBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMTZfUG9zICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMTZfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlDUl9JU0MxNl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMTYgICAgICAgICBIU0VNX0MxSUNSX0lTQzE2X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxNiBDUFUxIGludGVycnVwdCBjbGVhciBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMTdfUG9zICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMTdfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlDUl9JU0MxN19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMTcgICAgICAgICBIU0VNX0MxSUNSX0lTQzE3X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxNyBDUFUxIGludGVycnVwdCBjbGVhciBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMThfUG9zICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMThfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlDUl9JU0MxOF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMTggICAgICAgICBIU0VNX0MxSUNSX0lTQzE4X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxOCBDUFUxIGludGVycnVwdCBjbGVhciBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMTlfUG9zICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMTlfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlDUl9JU0MxOV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMTkgICAgICAgICBIU0VNX0MxSUNSX0lTQzE5X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxOSBDUFUxIGludGVycnVwdCBjbGVhciBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMjBfUG9zICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMjBfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlDUl9JU0MyMF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMjAgICAgICAgICBIU0VNX0MxSUNSX0lTQzIwX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyMCBDUFUxIGludGVycnVwdCBjbGVhciBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMjFfUG9zICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMjFfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlDUl9JU0MyMV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMjEgICAgICAgICBIU0VNX0MxSUNSX0lTQzIxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyMSBDUFUxIGludGVycnVwdCBjbGVhciBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMjJfUG9zICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMjJfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlDUl9JU0MyMl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMjIgICAgICAgICBIU0VNX0MxSUNSX0lTQzIyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyMiBDUFUxIGludGVycnVwdCBjbGVhciBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMjNfUG9zICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMjNfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlDUl9JU0MyM19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwODAwMDAwICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMjMgICAgICAgICBIU0VNX0MxSUNSX0lTQzIzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyMyBDUFUxIGludGVycnVwdCBjbGVhciBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMjRfUG9zICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMjRfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlDUl9JU0MyNF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAxMDAwMDAwICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMjQgICAgICAgICBIU0VNX0MxSUNSX0lTQzI0X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyNCBDUFUxIGludGVycnVwdCBjbGVhciBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMjVfUG9zICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMjVfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlDUl9JU0MyNV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAyMDAwMDAwICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMjUgICAgICAgICBIU0VNX0MxSUNSX0lTQzI1X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyNSBDUFUxIGludGVycnVwdCBjbGVhciBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFJQ1JfSVNDMjZfUG9zICAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMUlDUl9JU0MyNl9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MxSUNSX0lTQzI2X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMUlDUl9JU0MyNiAgICAgICAgIEhTRU1fQzFJQ1JfSVNDMjZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDI2IENQVTEgaW50ZXJydXB0IGNsZWFyIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMUlDUl9JU0MyN19Qb3MgICAgICgyN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MxSUNSX0lTQzI3X01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzFJQ1JfSVNDMjdfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwODAwMDAwMCAqLworI2RlZmluZSBIU0VNX0MxSUNSX0lTQzI3ICAgICAgICAgSFNFTV9DMUlDUl9JU0MyN19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMjcgQ1BVMSBpbnRlcnJ1cHQgY2xlYXIgYml0LiAqLworI2RlZmluZSBIU0VNX0MxSUNSX0lTQzI4X1BvcyAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MxSUNSX0lTQzI4X01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzFJQ1JfSVNDMjhfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgxMDAwMDAwMCAqLworI2RlZmluZSBIU0VNX0MxSUNSX0lTQzI4ICAgICAgICAgSFNFTV9DMUlDUl9JU0MyOF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMjggQ1BVMSBpbnRlcnJ1cHQgY2xlYXIgYml0LiAqLworI2RlZmluZSBIU0VNX0MxSUNSX0lTQzI5X1BvcyAgICAgKDI5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MxSUNSX0lTQzI5X01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzFJQ1JfSVNDMjlfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgyMDAwMDAwMCAqLworI2RlZmluZSBIU0VNX0MxSUNSX0lTQzI5ICAgICAgICAgSFNFTV9DMUlDUl9JU0MyOV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMjkgQ1BVMSBpbnRlcnJ1cHQgY2xlYXIgYml0LiAqLworI2RlZmluZSBIU0VNX0MxSUNSX0lTQzMwX1BvcyAgICAgKDMwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MxSUNSX0lTQzMwX01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzFJQ1JfSVNDMzBfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHg0MDAwMDAwMCAqLworI2RlZmluZSBIU0VNX0MxSUNSX0lTQzMwICAgICAgICAgSFNFTV9DMUlDUl9JU0MzMF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMzAgQ1BVMSBpbnRlcnJ1cHQgY2xlYXIgYml0LiAqLworI2RlZmluZSBIU0VNX0MxSUNSX0lTQzMxX1BvcyAgICAgKDMxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MxSUNSX0lTQzMxX01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzFJQ1JfSVNDMzFfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHg4MDAwMDAwMCAqLworI2RlZmluZSBIU0VNX0MxSUNSX0lTQzMxICAgICAgICAgSFNFTV9DMUlDUl9JU0MzMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMzEgQ1BVMSBpbnRlcnJ1cHQgY2xlYXIgYml0LiAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBIU0VNX0MxSVNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgSFNFTV9DMUlTUl9JU0YwX1BvcyAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMUlTUl9JU0YwX01zayAgICAgICgweDFVTCA8PCBIU0VNX0MxSVNSX0lTRjBfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgSFNFTV9DMUlTUl9JU0YwICAgICAgICAgIEhTRU1fQzFJU1JfSVNGMF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDAgQ1BVMSBpbnRlcnJ1cHQgc3RhdHVzIGJpdC4gICovCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGMV9Qb3MgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGMV9Nc2sgICAgICAoMHgxVUwgPDwgSFNFTV9DMUlTUl9JU0YxX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGMSAgICAgICAgICBIU0VNX0MxSVNSX0lTRjFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxIENQVTEgaW50ZXJydXB0IHN0YXR1cyBiaXQuICAqLworI2RlZmluZSBIU0VNX0MxSVNSX0lTRjJfUG9zICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MxSVNSX0lTRjJfTXNrICAgICAgKDB4MVVMIDw8IEhTRU1fQzFJU1JfSVNGMl9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBIU0VNX0MxSVNSX0lTRjIgICAgICAgICAgSFNFTV9DMUlTUl9JU0YyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMiBDUFUxIGludGVycnVwdCBzdGF0dXMgYml0LiAgKi8KKyNkZWZpbmUgSFNFTV9DMUlTUl9JU0YzX1BvcyAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMUlTUl9JU0YzX01zayAgICAgICgweDFVTCA8PCBIU0VNX0MxSVNSX0lTRjNfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgSFNFTV9DMUlTUl9JU0YzICAgICAgICAgIEhTRU1fQzFJU1JfSVNGM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDMgQ1BVMSBpbnRlcnJ1cHQgc3RhdHVzIGJpdC4gICovCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGNF9Qb3MgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGNF9Nc2sgICAgICAoMHgxVUwgPDwgSFNFTV9DMUlTUl9JU0Y0X1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGNCAgICAgICAgICBIU0VNX0MxSVNSX0lTRjRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSA0IENQVTEgaW50ZXJydXB0IHN0YXR1cyBiaXQuICAqLworI2RlZmluZSBIU0VNX0MxSVNSX0lTRjVfUG9zICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MxSVNSX0lTRjVfTXNrICAgICAgKDB4MVVMIDw8IEhTRU1fQzFJU1JfSVNGNV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBIU0VNX0MxSVNSX0lTRjUgICAgICAgICAgSFNFTV9DMUlTUl9JU0Y1X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgNSBDUFUxIGludGVycnVwdCBzdGF0dXMgYml0LiAgKi8KKyNkZWZpbmUgSFNFTV9DMUlTUl9JU0Y2X1BvcyAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMUlTUl9JU0Y2X01zayAgICAgICgweDFVTCA8PCBIU0VNX0MxSVNSX0lTRjZfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgSFNFTV9DMUlTUl9JU0Y2ICAgICAgICAgIEhTRU1fQzFJU1JfSVNGNl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDYgQ1BVMSBpbnRlcnJ1cHQgc3RhdHVzIGJpdC4gICovCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGN19Qb3MgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGN19Nc2sgICAgICAoMHgxVUwgPDwgSFNFTV9DMUlTUl9JU0Y3X1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGNyAgICAgICAgICBIU0VNX0MxSVNSX0lTRjdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSA3IENQVTEgaW50ZXJydXB0IHN0YXR1cyBiaXQuICAqLworI2RlZmluZSBIU0VNX0MxSVNSX0lTRjhfUG9zICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MxSVNSX0lTRjhfTXNrICAgICAgKDB4MVVMIDw8IEhTRU1fQzFJU1JfSVNGOF9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBIU0VNX0MxSVNSX0lTRjggICAgICAgICAgSFNFTV9DMUlTUl9JU0Y4X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgOCBDUFUxIGludGVycnVwdCBzdGF0dXMgYml0LiAgKi8KKyNkZWZpbmUgSFNFTV9DMUlTUl9JU0Y5X1BvcyAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMUlTUl9JU0Y5X01zayAgICAgICgweDFVTCA8PCBIU0VNX0MxSVNSX0lTRjlfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgSFNFTV9DMUlTUl9JU0Y5ICAgICAgICAgIEhTRU1fQzFJU1JfSVNGOV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDkgQ1BVMSBpbnRlcnJ1cHQgc3RhdHVzIGJpdC4gICovCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGMTBfUG9zICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGMTBfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlTUl9JU0YxMF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGMTAgICAgICAgICBIU0VNX0MxSVNSX0lTRjEwX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxMCBDUFUxIGludGVycnVwdCBzdGF0dXMgYml0LiAqLworI2RlZmluZSBIU0VNX0MxSVNSX0lTRjExX1BvcyAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MxSVNSX0lTRjExX01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzFJU1JfSVNGMTFfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLworI2RlZmluZSBIU0VNX0MxSVNSX0lTRjExICAgICAgICAgSFNFTV9DMUlTUl9JU0YxMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMTEgQ1BVMSBpbnRlcnJ1cHQgc3RhdHVzIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMUlTUl9JU0YxMl9Qb3MgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMUlTUl9JU0YxMl9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MxSVNSX0lTRjEyX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMUlTUl9JU0YxMiAgICAgICAgIEhTRU1fQzFJU1JfSVNGMTJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDEyIENQVTEgaW50ZXJydXB0IHN0YXR1cyBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGMTNfUG9zICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGMTNfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlTUl9JU0YxM19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGMTMgICAgICAgICBIU0VNX0MxSVNSX0lTRjEzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxMyBDUFUxIGludGVycnVwdCBzdGF0dXMgYml0LiAqLworI2RlZmluZSBIU0VNX0MxSVNSX0lTRjE0X1BvcyAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MxSVNSX0lTRjE0X01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzFJU1JfSVNGMTRfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLworI2RlZmluZSBIU0VNX0MxSVNSX0lTRjE0ICAgICAgICAgSFNFTV9DMUlTUl9JU0YxNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMTQgQ1BVMSBpbnRlcnJ1cHQgc3RhdHVzIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMUlTUl9JU0YxNV9Qb3MgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMUlTUl9JU0YxNV9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MxSVNSX0lTRjE1X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMUlTUl9JU0YxNSAgICAgICAgIEhTRU1fQzFJU1JfSVNGMTVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDE1IENQVTEgaW50ZXJydXB0IHN0YXR1cyBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGMTZfUG9zICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGMTZfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlTUl9JU0YxNl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGMTYgICAgICAgICBIU0VNX0MxSVNSX0lTRjE2X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxNiBDUFUxIGludGVycnVwdCBzdGF0dXMgYml0LiAqLworI2RlZmluZSBIU0VNX0MxSVNSX0lTRjE3X1BvcyAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MxSVNSX0lTRjE3X01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzFJU1JfSVNGMTdfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLworI2RlZmluZSBIU0VNX0MxSVNSX0lTRjE3ICAgICAgICAgSFNFTV9DMUlTUl9JU0YxN19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMTcgQ1BVMSBpbnRlcnJ1cHQgc3RhdHVzIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMUlTUl9JU0YxOF9Qb3MgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMUlTUl9JU0YxOF9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MxSVNSX0lTRjE4X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMUlTUl9JU0YxOCAgICAgICAgIEhTRU1fQzFJU1JfSVNGMThfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDE4IENQVTEgaW50ZXJydXB0IHN0YXR1cyBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGMTlfUG9zICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGMTlfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlTUl9JU0YxOV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGMTkgICAgICAgICBIU0VNX0MxSVNSX0lTRjE5X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxOSBDUFUxIGludGVycnVwdCBzdGF0dXMgYml0LiAqLworI2RlZmluZSBIU0VNX0MxSVNSX0lTRjIwX1BvcyAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MxSVNSX0lTRjIwX01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzFJU1JfSVNGMjBfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLworI2RlZmluZSBIU0VNX0MxSVNSX0lTRjIwICAgICAgICAgSFNFTV9DMUlTUl9JU0YyMF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMjAgQ1BVMSBpbnRlcnJ1cHQgc3RhdHVzIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMUlTUl9JU0YyMV9Qb3MgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMUlTUl9JU0YyMV9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MxSVNSX0lTRjIxX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMUlTUl9JU0YyMSAgICAgICAgIEhTRU1fQzFJU1JfSVNGMjFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDIxIENQVTEgaW50ZXJydXB0IHN0YXR1cyBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGMjJfUG9zICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGMjJfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlTUl9JU0YyMl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGMjIgICAgICAgICBIU0VNX0MxSVNSX0lTRjIyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyMiBDUFUxIGludGVycnVwdCBzdGF0dXMgYml0LiAqLworI2RlZmluZSBIU0VNX0MxSVNSX0lTRjIzX1BvcyAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MxSVNSX0lTRjIzX01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzFJU1JfSVNGMjNfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLworI2RlZmluZSBIU0VNX0MxSVNSX0lTRjIzICAgICAgICAgSFNFTV9DMUlTUl9JU0YyM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMjMgQ1BVMSBpbnRlcnJ1cHQgc3RhdHVzIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMUlTUl9JU0YyNF9Qb3MgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMUlTUl9JU0YyNF9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MxSVNSX0lTRjI0X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMUlTUl9JU0YyNCAgICAgICAgIEhTRU1fQzFJU1JfSVNGMjRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDI0IENQVTEgaW50ZXJydXB0IHN0YXR1cyBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGMjVfUG9zICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGMjVfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlTUl9JU0YyNV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAyMDAwMDAwICovCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGMjUgICAgICAgICBIU0VNX0MxSVNSX0lTRjI1X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyNSBDUFUxIGludGVycnVwdCBzdGF0dXMgYml0LiAqLworI2RlZmluZSBIU0VNX0MxSVNSX0lTRjI2X1BvcyAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGMjZfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlTUl9JU0YyNl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDA0MDAwMDAwICovCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGMjYgICAgICAgICBIU0VNX0MxSVNSX0lTRjI2X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyNiBDUFUxIGludGVycnVwdCBzdGF0dXMgYml0LiAqLworI2RlZmluZSBIU0VNX0MxSVNSX0lTRjI3X1BvcyAgICAgKDI3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGMjdfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlTUl9JU0YyN19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDA4MDAwMDAwICovCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGMjcgICAgICAgICBIU0VNX0MxSVNSX0lTRjI3X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyNyBDUFUxIGludGVycnVwdCBzdGF0dXMgYml0LiAqLworI2RlZmluZSBIU0VNX0MxSVNSX0lTRjI4X1BvcyAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MxSVNSX0lTRjI4X01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzFJU1JfSVNGMjhfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgxMDAwMDAwMCAqLworI2RlZmluZSBIU0VNX0MxSVNSX0lTRjI4ICAgICAgICAgSFNFTV9DMUlTUl9JU0YyOF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMjggQ1BVMSBpbnRlcnJ1cHQgc3RhdHVzIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMUlTUl9JU0YyOV9Qb3MgICAgICgyOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMUlTUl9JU0YyOV9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MxSVNSX0lTRjI5X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMUlTUl9JU0YyOSAgICAgICAgIEhTRU1fQzFJU1JfSVNGMjlfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDI5IENQVTEgaW50ZXJydXB0IHN0YXR1cyBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGMzBfUG9zICAgICAoMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGMzBfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMUlTUl9JU0YzMF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDQwMDAwMDAwICovCisjZGVmaW5lIEhTRU1fQzFJU1JfSVNGMzAgICAgICAgICBIU0VNX0MxSVNSX0lTRjMwX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAzMCBDUFUxIGludGVycnVwdCBzdGF0dXMgYml0LiAqLworI2RlZmluZSBIU0VNX0MxSVNSX0lTRjMxX1BvcyAgICAgKDMxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MxSVNSX0lTRjMxX01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzFJU1JfSVNGMzFfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHg4MDAwMDAwMCAqLworI2RlZmluZSBIU0VNX0MxSVNSX0lTRjMxICAgICAgICAgSFNFTV9DMUlTUl9JU0YzMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMzEgQ1BVMSBpbnRlcnJ1cHQgc3RhdHVzIGJpdC4gKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgSFNFTV9DMU1JU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLworI2RlZmluZSBIU0VNX0MxTUlTUl9NSVNGMF9Qb3MgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjBfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMU1JU1JfTUlTRjBfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBIU0VNX0MxTUlTUl9NSVNGMCAgICAgICAgIEhTRU1fQzFNSVNSX01JU0YwX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAwIENQVTEgaW50ZXJydXB0IG1hc2tlZCBzdGF0dXMgYml0LiAgKi8KKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjFfUG9zICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFNSVNSX01JU0YxX01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzFNSVNSX01JU0YxX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjEgICAgICAgICBIU0VNX0MxTUlTUl9NSVNGMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMSBDUFUxIGludGVycnVwdCBtYXNrZWQgc3RhdHVzIGJpdC4gICovCisjZGVmaW5lIEhTRU1fQzFNSVNSX01JU0YyX1BvcyAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MxTUlTUl9NSVNGMl9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MxTUlTUl9NSVNGMl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIEhTRU1fQzFNSVNSX01JU0YyICAgICAgICAgSFNFTV9DMU1JU1JfTUlTRjJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDIgQ1BVMSBpbnRlcnJ1cHQgbWFza2VkIHN0YXR1cyBiaXQuICAqLworI2RlZmluZSBIU0VNX0MxTUlTUl9NSVNGM19Qb3MgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjNfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMU1JU1JfTUlTRjNfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBIU0VNX0MxTUlTUl9NSVNGMyAgICAgICAgIEhTRU1fQzFNSVNSX01JU0YzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAzIENQVTEgaW50ZXJydXB0IG1hc2tlZCBzdGF0dXMgYml0LiAgKi8KKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjRfUG9zICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFNSVNSX01JU0Y0X01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzFNSVNSX01JU0Y0X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjQgICAgICAgICBIU0VNX0MxTUlTUl9NSVNGNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgNCBDUFUxIGludGVycnVwdCBtYXNrZWQgc3RhdHVzIGJpdC4gICovCisjZGVmaW5lIEhTRU1fQzFNSVNSX01JU0Y1X1BvcyAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MxTUlTUl9NSVNGNV9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MxTUlTUl9NSVNGNV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIEhTRU1fQzFNSVNSX01JU0Y1ICAgICAgICAgSFNFTV9DMU1JU1JfTUlTRjVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDUgQ1BVMSBpbnRlcnJ1cHQgbWFza2VkIHN0YXR1cyBiaXQuICAqLworI2RlZmluZSBIU0VNX0MxTUlTUl9NSVNGNl9Qb3MgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjZfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMU1JU1JfTUlTRjZfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBIU0VNX0MxTUlTUl9NSVNGNiAgICAgICAgIEhTRU1fQzFNSVNSX01JU0Y2X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSA2IENQVTEgaW50ZXJydXB0IG1hc2tlZCBzdGF0dXMgYml0LiAgKi8KKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjdfUG9zICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFNSVNSX01JU0Y3X01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzFNSVNSX01JU0Y3X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjcgICAgICAgICBIU0VNX0MxTUlTUl9NSVNGN19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgNyBDUFUxIGludGVycnVwdCBtYXNrZWQgc3RhdHVzIGJpdC4gICovCisjZGVmaW5lIEhTRU1fQzFNSVNSX01JU0Y4X1BvcyAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MxTUlTUl9NSVNGOF9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MxTUlTUl9NSVNGOF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIEhTRU1fQzFNSVNSX01JU0Y4ICAgICAgICAgSFNFTV9DMU1JU1JfTUlTRjhfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDggQ1BVMSBpbnRlcnJ1cHQgbWFza2VkIHN0YXR1cyBiaXQuICAqLworI2RlZmluZSBIU0VNX0MxTUlTUl9NSVNGOV9Qb3MgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjlfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMU1JU1JfTUlTRjlfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBIU0VNX0MxTUlTUl9NSVNGOSAgICAgICAgIEhTRU1fQzFNSVNSX01JU0Y5X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSA5IENQVTEgaW50ZXJydXB0IG1hc2tlZCBzdGF0dXMgYml0LiAgKi8KKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjEwX1BvcyAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFNSVNSX01JU0YxMF9Nc2sgICAgKDB4MVVMIDw8IEhTRU1fQzFNSVNSX01JU0YxMF9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjEwICAgICAgICBIU0VNX0MxTUlTUl9NSVNGMTBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMTAgQ1BVMSBpbnRlcnJ1cHQgbWFza2VkIHN0YXR1cyBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFNSVNSX01JU0YxMV9Qb3MgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MxTUlTUl9NSVNGMTFfTXNrICAgICgweDFVTCA8PCBIU0VNX0MxTUlTUl9NSVNGMTFfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIEhTRU1fQzFNSVNSX01JU0YxMSAgICAgICAgSFNFTV9DMU1JU1JfTUlTRjExX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDExIENQVTEgaW50ZXJydXB0IG1hc2tlZCBzdGF0dXMgYml0LiAqLworI2RlZmluZSBIU0VNX0MxTUlTUl9NSVNGMTJfUG9zICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjEyX01zayAgICAoMHgxVUwgPDwgSFNFTV9DMU1JU1JfTUlTRjEyX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBIU0VNX0MxTUlTUl9NSVNGMTIgICAgICAgIEhTRU1fQzFNSVNSX01JU0YxMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxMiBDUFUxIGludGVycnVwdCBtYXNrZWQgc3RhdHVzIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjEzX1BvcyAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFNSVNSX01JU0YxM19Nc2sgICAgKDB4MVVMIDw8IEhTRU1fQzFNSVNSX01JU0YxM19Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjEzICAgICAgICBIU0VNX0MxTUlTUl9NSVNGMTNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMTMgQ1BVMSBpbnRlcnJ1cHQgbWFza2VkIHN0YXR1cyBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFNSVNSX01JU0YxNF9Qb3MgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MxTUlTUl9NSVNGMTRfTXNrICAgICgweDFVTCA8PCBIU0VNX0MxTUlTUl9NSVNGMTRfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIEhTRU1fQzFNSVNSX01JU0YxNCAgICAgICAgSFNFTV9DMU1JU1JfTUlTRjE0X01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDE0IENQVTEgaW50ZXJydXB0IG1hc2tlZCBzdGF0dXMgYml0LiAqLworI2RlZmluZSBIU0VNX0MxTUlTUl9NSVNGMTVfUG9zICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjE1X01zayAgICAoMHgxVUwgPDwgSFNFTV9DMU1JU1JfTUlTRjE1X1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLworI2RlZmluZSBIU0VNX0MxTUlTUl9NSVNGMTUgICAgICAgIEhTRU1fQzFNSVNSX01JU0YxNV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxNSBDUFUxIGludGVycnVwdCBtYXNrZWQgc3RhdHVzIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjE2X1BvcyAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjE2X01zayAgICAoMHgxVUwgPDwgSFNFTV9DMU1JU1JfTUlTRjE2X1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBIU0VNX0MxTUlTUl9NSVNGMTYgICAgICAgIEhTRU1fQzFNSVNSX01JU0YxNl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxNiBDUFUxIGludGVycnVwdCBtYXNrZWQgc3RhdHVzIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjE3X1BvcyAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjE3X01zayAgICAoMHgxVUwgPDwgSFNFTV9DMU1JU1JfTUlTRjE3X1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLworI2RlZmluZSBIU0VNX0MxTUlTUl9NSVNGMTcgICAgICAgIEhTRU1fQzFNSVNSX01JU0YxN19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxNyBDUFUxIGludGVycnVwdCBtYXNrZWQgc3RhdHVzIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjE4X1BvcyAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjE4X01zayAgICAoMHgxVUwgPDwgSFNFTV9DMU1JU1JfTUlTRjE4X1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLworI2RlZmluZSBIU0VNX0MxTUlTUl9NSVNGMTggICAgICAgIEhTRU1fQzFNSVNSX01JU0YxOF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxOCBDUFUxIGludGVycnVwdCBtYXNrZWQgc3RhdHVzIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjE5X1BvcyAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjE5X01zayAgICAoMHgxVUwgPDwgSFNFTV9DMU1JU1JfTUlTRjE5X1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLworI2RlZmluZSBIU0VNX0MxTUlTUl9NSVNGMTkgICAgICAgIEhTRU1fQzFNSVNSX01JU0YxOV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxOSBDUFUxIGludGVycnVwdCBtYXNrZWQgc3RhdHVzIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjIwX1BvcyAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjIwX01zayAgICAoMHgxVUwgPDwgSFNFTV9DMU1JU1JfTUlTRjIwX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLworI2RlZmluZSBIU0VNX0MxTUlTUl9NSVNGMjAgICAgICAgIEhTRU1fQzFNSVNSX01JU0YyMF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyMCBDUFUxIGludGVycnVwdCBtYXNrZWQgc3RhdHVzIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjIxX1BvcyAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjIxX01zayAgICAoMHgxVUwgPDwgSFNFTV9DMU1JU1JfTUlTRjIxX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLworI2RlZmluZSBIU0VNX0MxTUlTUl9NSVNGMjEgICAgICAgIEhTRU1fQzFNSVNSX01JU0YyMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyMSBDUFUxIGludGVycnVwdCBtYXNrZWQgc3RhdHVzIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjIyX1BvcyAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjIyX01zayAgICAoMHgxVUwgPDwgSFNFTV9DMU1JU1JfTUlTRjIyX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLworI2RlZmluZSBIU0VNX0MxTUlTUl9NSVNGMjIgICAgICAgIEhTRU1fQzFNSVNSX01JU0YyMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyMiBDUFUxIGludGVycnVwdCBtYXNrZWQgc3RhdHVzIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjIzX1BvcyAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjIzX01zayAgICAoMHgxVUwgPDwgSFNFTV9DMU1JU1JfTUlTRjIzX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLworI2RlZmluZSBIU0VNX0MxTUlTUl9NSVNGMjMgICAgICAgIEhTRU1fQzFNSVNSX01JU0YyM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyMyBDUFUxIGludGVycnVwdCBtYXNrZWQgc3RhdHVzIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjI0X1BvcyAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjI0X01zayAgICAoMHgxVUwgPDwgSFNFTV9DMU1JU1JfTUlTRjI0X1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLworI2RlZmluZSBIU0VNX0MxTUlTUl9NSVNGMjQgICAgICAgIEhTRU1fQzFNSVNSX01JU0YyNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyNCBDUFUxIGludGVycnVwdCBtYXNrZWQgc3RhdHVzIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjI1X1BvcyAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjI1X01zayAgICAoMHgxVUwgPDwgSFNFTV9DMU1JU1JfTUlTRjI1X1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLworI2RlZmluZSBIU0VNX0MxTUlTUl9NSVNGMjUgICAgICAgIEhTRU1fQzFNSVNSX01JU0YyNV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyNSBDUFUxIGludGVycnVwdCBtYXNrZWQgc3RhdHVzIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjI2X1BvcyAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MxTUlTUl9NSVNGMjZfTXNrICAgICgweDFVTCA8PCBIU0VNX0MxTUlTUl9NSVNGMjZfUG9zKSAgICAgICAgICAgICAgLyohPCAweDA0MDAwMDAwICovCisjZGVmaW5lIEhTRU1fQzFNSVNSX01JU0YyNiAgICAgICAgSFNFTV9DMU1JU1JfTUlTRjI2X01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDI2IENQVTEgaW50ZXJydXB0IG1hc2tlZCBzdGF0dXMgYml0LiAqLworI2RlZmluZSBIU0VNX0MxTUlTUl9NSVNGMjdfUG9zICAgICgyN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFNSVNSX01JU0YyN19Nc2sgICAgKDB4MVVMIDw8IEhTRU1fQzFNSVNSX01JU0YyN19Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjI3ICAgICAgICBIU0VNX0MxTUlTUl9NSVNGMjdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMjcgQ1BVMSBpbnRlcnJ1cHQgbWFza2VkIHN0YXR1cyBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFNSVNSX01JU0YyOF9Qb3MgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFNSVNSX01JU0YyOF9Nc2sgICAgKDB4MVVMIDw8IEhTRU1fQzFNSVNSX01JU0YyOF9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjI4ICAgICAgICBIU0VNX0MxTUlTUl9NSVNGMjhfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMjggQ1BVMSBpbnRlcnJ1cHQgbWFza2VkIHN0YXR1cyBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFNSVNSX01JU0YyOV9Qb3MgICAgKDI5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFNSVNSX01JU0YyOV9Nc2sgICAgKDB4MVVMIDw8IEhTRU1fQzFNSVNSX01JU0YyOV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjI5ICAgICAgICBIU0VNX0MxTUlTUl9NSVNGMjlfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMjkgQ1BVMSBpbnRlcnJ1cHQgbWFza2VkIHN0YXR1cyBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFNSVNSX01JU0YzMF9Qb3MgICAgKDMwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFNSVNSX01JU0YzMF9Nc2sgICAgKDB4MVVMIDw8IEhTRU1fQzFNSVNSX01JU0YzMF9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4NDAwMDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjMwICAgICAgICBIU0VNX0MxTUlTUl9NSVNGMzBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMzAgQ1BVMSBpbnRlcnJ1cHQgbWFza2VkIHN0YXR1cyBiaXQuICovCisjZGVmaW5lIEhTRU1fQzFNSVNSX01JU0YzMV9Qb3MgICAgKDMxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzFNSVNSX01JU0YzMV9Nc2sgICAgKDB4MVVMIDw8IEhTRU1fQzFNSVNSX01JU0YzMV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4ODAwMDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMU1JU1JfTUlTRjMxICAgICAgICBIU0VNX0MxTUlTUl9NSVNGMzFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMzEgQ1BVMSBpbnRlcnJ1cHQgbWFza2VkIHN0YXR1cyBiaXQuICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEhTRU1fQzJJRVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLworI2RlZmluZSBIU0VNX0MySUVSX0lTRTBfUG9zICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MySUVSX0lTRTBfTXNrICAgICAgKDB4MVVMIDw8IEhTRU1fQzJJRVJfSVNFMF9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBIU0VNX0MySUVSX0lTRTAgICAgICAgICAgSFNFTV9DMklFUl9JU0UwX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMCBDUFUyIGludGVycnVwdCBlbmFibGUgYml0LiAgKi8KKyNkZWZpbmUgSFNFTV9DMklFUl9JU0UxX1BvcyAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklFUl9JU0UxX01zayAgICAgICgweDFVTCA8PCBIU0VNX0MySUVSX0lTRTFfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgSFNFTV9DMklFUl9JU0UxICAgICAgICAgIEhTRU1fQzJJRVJfSVNFMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDEgQ1BVMiBpbnRlcnJ1cHQgZW5hYmxlIGJpdC4gICovCisjZGVmaW5lIEhTRU1fQzJJRVJfSVNFMl9Qb3MgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzJJRVJfSVNFMl9Nc2sgICAgICAoMHgxVUwgPDwgSFNFTV9DMklFUl9JU0UyX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIEhTRU1fQzJJRVJfSVNFMiAgICAgICAgICBIU0VNX0MySUVSX0lTRTJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyIENQVTIgaW50ZXJydXB0IGVuYWJsZSBiaXQuICAqLworI2RlZmluZSBIU0VNX0MySUVSX0lTRTNfUG9zICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MySUVSX0lTRTNfTXNrICAgICAgKDB4MVVMIDw8IEhTRU1fQzJJRVJfSVNFM19Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBIU0VNX0MySUVSX0lTRTMgICAgICAgICAgSFNFTV9DMklFUl9JU0UzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMyBDUFUyIGludGVycnVwdCBlbmFibGUgYml0LiAgKi8KKyNkZWZpbmUgSFNFTV9DMklFUl9JU0U0X1BvcyAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklFUl9JU0U0X01zayAgICAgICgweDFVTCA8PCBIU0VNX0MySUVSX0lTRTRfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgSFNFTV9DMklFUl9JU0U0ICAgICAgICAgIEhTRU1fQzJJRVJfSVNFNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDQgQ1BVMiBpbnRlcnJ1cHQgZW5hYmxlIGJpdC4gICovCisjZGVmaW5lIEhTRU1fQzJJRVJfSVNFNV9Qb3MgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzJJRVJfSVNFNV9Nc2sgICAgICAoMHgxVUwgPDwgSFNFTV9DMklFUl9JU0U1X1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIEhTRU1fQzJJRVJfSVNFNSAgICAgICAgICBIU0VNX0MySUVSX0lTRTVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSA1IENQVTIgaW50ZXJydXB0IGVuYWJsZSBiaXQuICAqLworI2RlZmluZSBIU0VNX0MySUVSX0lTRTZfUG9zICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MySUVSX0lTRTZfTXNrICAgICAgKDB4MVVMIDw8IEhTRU1fQzJJRVJfSVNFNl9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBIU0VNX0MySUVSX0lTRTYgICAgICAgICAgSFNFTV9DMklFUl9JU0U2X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgNiBDUFUyIGludGVycnVwdCBlbmFibGUgYml0LiAgKi8KKyNkZWZpbmUgSFNFTV9DMklFUl9JU0U3X1BvcyAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklFUl9JU0U3X01zayAgICAgICgweDFVTCA8PCBIU0VNX0MySUVSX0lTRTdfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgSFNFTV9DMklFUl9JU0U3ICAgICAgICAgIEhTRU1fQzJJRVJfSVNFN19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDcgQ1BVMiBpbnRlcnJ1cHQgZW5hYmxlIGJpdC4gICovCisjZGVmaW5lIEhTRU1fQzJJRVJfSVNFOF9Qb3MgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzJJRVJfSVNFOF9Nc2sgICAgICAoMHgxVUwgPDwgSFNFTV9DMklFUl9JU0U4X1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIEhTRU1fQzJJRVJfSVNFOCAgICAgICAgICBIU0VNX0MySUVSX0lTRThfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSA4IENQVTIgaW50ZXJydXB0IGVuYWJsZSBiaXQuICAqLworI2RlZmluZSBIU0VNX0MySUVSX0lTRTlfUG9zICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MySUVSX0lTRTlfTXNrICAgICAgKDB4MVVMIDw8IEhTRU1fQzJJRVJfSVNFOV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBIU0VNX0MySUVSX0lTRTkgICAgICAgICAgSFNFTV9DMklFUl9JU0U5X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgOSBDUFUyIGludGVycnVwdCBlbmFibGUgYml0LiAgKi8KKyNkZWZpbmUgSFNFTV9DMklFUl9JU0UxMF9Qb3MgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklFUl9JU0UxMF9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySUVSX0lTRTEwX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgSFNFTV9DMklFUl9JU0UxMCAgICAgICAgIEhTRU1fQzJJRVJfSVNFMTBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDEwIENQVTIgaW50ZXJydXB0IGVuYWJsZSBiaXQuICovCisjZGVmaW5lIEhTRU1fQzJJRVJfSVNFMTFfUG9zICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzJJRVJfSVNFMTFfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMklFUl9JU0UxMV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIEhTRU1fQzJJRVJfSVNFMTEgICAgICAgICBIU0VNX0MySUVSX0lTRTExX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxMSBDUFUyIGludGVycnVwdCBlbmFibGUgYml0LiAqLworI2RlZmluZSBIU0VNX0MySUVSX0lTRTEyX1BvcyAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MySUVSX0lTRTEyX01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzJJRVJfSVNFMTJfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBIU0VNX0MySUVSX0lTRTEyICAgICAgICAgSFNFTV9DMklFUl9JU0UxMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMTIgQ1BVMiBpbnRlcnJ1cHQgZW5hYmxlIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMklFUl9JU0UxM19Qb3MgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklFUl9JU0UxM19Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySUVSX0lTRTEzX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMklFUl9JU0UxMyAgICAgICAgIEhTRU1fQzJJRVJfSVNFMTNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDEzIENQVTIgaW50ZXJydXB0IGVuYWJsZSBiaXQuICovCisjZGVmaW5lIEhTRU1fQzJJRVJfSVNFMTRfUG9zICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzJJRVJfSVNFMTRfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMklFUl9JU0UxNF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIEhTRU1fQzJJRVJfSVNFMTQgICAgICAgICBIU0VNX0MySUVSX0lTRTE0X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxNCBDUFUyIGludGVycnVwdCBlbmFibGUgYml0LiAqLworI2RlZmluZSBIU0VNX0MySUVSX0lTRTE1X1BvcyAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MySUVSX0lTRTE1X01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzJJRVJfSVNFMTVfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLworI2RlZmluZSBIU0VNX0MySUVSX0lTRTE1ICAgICAgICAgSFNFTV9DMklFUl9JU0UxNV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMTUgQ1BVMiBpbnRlcnJ1cHQgZW5hYmxlIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMklFUl9JU0UxNl9Qb3MgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklFUl9JU0UxNl9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySUVSX0lTRTE2X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMklFUl9JU0UxNiAgICAgICAgIEhTRU1fQzJJRVJfSVNFMTZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDE2IENQVTIgaW50ZXJydXB0IGVuYWJsZSBiaXQuICovCisjZGVmaW5lIEhTRU1fQzJJRVJfSVNFMTdfUG9zICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzJJRVJfSVNFMTdfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMklFUl9JU0UxN19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovCisjZGVmaW5lIEhTRU1fQzJJRVJfSVNFMTcgICAgICAgICBIU0VNX0MySUVSX0lTRTE3X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxNyBDUFUyIGludGVycnVwdCBlbmFibGUgYml0LiAqLworI2RlZmluZSBIU0VNX0MySUVSX0lTRTE4X1BvcyAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MySUVSX0lTRTE4X01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzJJRVJfSVNFMThfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLworI2RlZmluZSBIU0VNX0MySUVSX0lTRTE4ICAgICAgICAgSFNFTV9DMklFUl9JU0UxOF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMTggQ1BVMiBpbnRlcnJ1cHQgZW5hYmxlIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMklFUl9JU0UxOV9Qb3MgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklFUl9JU0UxOV9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySUVSX0lTRTE5X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMklFUl9JU0UxOSAgICAgICAgIEhTRU1fQzJJRVJfSVNFMTlfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDE5IENQVTIgaW50ZXJydXB0IGVuYWJsZSBiaXQuICovCisjZGVmaW5lIEhTRU1fQzJJRVJfSVNFMjBfUG9zICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzJJRVJfSVNFMjBfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMklFUl9JU0UyMF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovCisjZGVmaW5lIEhTRU1fQzJJRVJfSVNFMjAgICAgICAgICBIU0VNX0MySUVSX0lTRTIwX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyMCBDUFUyIGludGVycnVwdCBlbmFibGUgYml0LiAqLworI2RlZmluZSBIU0VNX0MySUVSX0lTRTIxX1BvcyAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MySUVSX0lTRTIxX01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzJJRVJfSVNFMjFfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLworI2RlZmluZSBIU0VNX0MySUVSX0lTRTIxICAgICAgICAgSFNFTV9DMklFUl9JU0UyMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMjEgQ1BVMiBpbnRlcnJ1cHQgZW5hYmxlIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMklFUl9JU0UyMl9Qb3MgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklFUl9JU0UyMl9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySUVSX0lTRTIyX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMklFUl9JU0UyMiAgICAgICAgIEhTRU1fQzJJRVJfSVNFMjJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDIyIENQVTIgaW50ZXJydXB0IGVuYWJsZSBiaXQuICovCisjZGVmaW5lIEhTRU1fQzJJRVJfSVNFMjNfUG9zICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzJJRVJfSVNFMjNfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMklFUl9JU0UyM19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwODAwMDAwICovCisjZGVmaW5lIEhTRU1fQzJJRVJfSVNFMjMgICAgICAgICBIU0VNX0MySUVSX0lTRTIzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyMyBDUFUyIGludGVycnVwdCBlbmFibGUgYml0LiAqLworI2RlZmluZSBIU0VNX0MySUVSX0lTRTI0X1BvcyAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MySUVSX0lTRTI0X01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzJJRVJfSVNFMjRfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLworI2RlZmluZSBIU0VNX0MySUVSX0lTRTI0ICAgICAgICAgSFNFTV9DMklFUl9JU0UyNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMjQgQ1BVMiBpbnRlcnJ1cHQgZW5hYmxlIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMklFUl9JU0UyNV9Qb3MgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklFUl9JU0UyNV9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySUVSX0lTRTI1X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMklFUl9JU0UyNSAgICAgICAgIEhTRU1fQzJJRVJfSVNFMjVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDI1IENQVTIgaW50ZXJydXB0IGVuYWJsZSBiaXQuICovCisjZGVmaW5lIEhTRU1fQzJJRVJfSVNFMjZfUG9zICAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklFUl9JU0UyNl9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySUVSX0lTRTI2X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMklFUl9JU0UyNiAgICAgICAgIEhTRU1fQzJJRVJfSVNFMjZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDI2IENQVTIgaW50ZXJydXB0IGVuYWJsZSBiaXQuICovCisjZGVmaW5lIEhTRU1fQzJJRVJfSVNFMjdfUG9zICAgICAoMjdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklFUl9JU0UyN19Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySUVSX0lTRTI3X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMklFUl9JU0UyNyAgICAgICAgIEhTRU1fQzJJRVJfSVNFMjdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDI3IENQVTIgaW50ZXJydXB0IGVuYWJsZSBiaXQuICovCisjZGVmaW5lIEhTRU1fQzJJRVJfSVNFMjhfUG9zICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzJJRVJfSVNFMjhfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMklFUl9JU0UyOF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDEwMDAwMDAwICovCisjZGVmaW5lIEhTRU1fQzJJRVJfSVNFMjggICAgICAgICBIU0VNX0MySUVSX0lTRTI4X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyOCBDUFUyIGludGVycnVwdCBlbmFibGUgYml0LiAqLworI2RlZmluZSBIU0VNX0MySUVSX0lTRTI5X1BvcyAgICAgKDI5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MySUVSX0lTRTI5X01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzJJRVJfSVNFMjlfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgyMDAwMDAwMCAqLworI2RlZmluZSBIU0VNX0MySUVSX0lTRTI5ICAgICAgICAgSFNFTV9DMklFUl9JU0UyOV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMjkgQ1BVMiBpbnRlcnJ1cHQgZW5hYmxlIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMklFUl9JU0UzMF9Qb3MgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklFUl9JU0UzMF9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySUVSX0lTRTMwX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4NDAwMDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMklFUl9JU0UzMCAgICAgICAgIEhTRU1fQzJJRVJfSVNFMzBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDMwIENQVTIgaW50ZXJydXB0IGVuYWJsZSBiaXQuICovCisjZGVmaW5lIEhTRU1fQzJJRVJfSVNFMzFfUG9zICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzJJRVJfSVNFMzFfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMklFUl9JU0UzMV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDgwMDAwMDAwICovCisjZGVmaW5lIEhTRU1fQzJJRVJfSVNFMzEgICAgICAgICBIU0VNX0MySUVSX0lTRTMxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAzMSBDUFUyIGludGVycnVwdCBlbmFibGUgYml0LiAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBIU0VNX0MySUNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MwX1BvcyAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MwX01zayAgICAgICgweDFVTCA8PCBIU0VNX0MySUNSX0lTQzBfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MwICAgICAgICAgIEhTRU1fQzJJQ1JfSVNDMF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDAgQ1BVMiBpbnRlcnJ1cHQgY2xlYXIgYml0LiAgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxX1BvcyAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxX01zayAgICAgICgweDFVTCA8PCBIU0VNX0MySUNSX0lTQzFfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxICAgICAgICAgIEhTRU1fQzJJQ1JfSVNDMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDEgQ1BVMiBpbnRlcnJ1cHQgY2xlYXIgYml0LiAgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MyX1BvcyAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MyX01zayAgICAgICgweDFVTCA8PCBIU0VNX0MySUNSX0lTQzJfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MyICAgICAgICAgIEhTRU1fQzJJQ1JfSVNDMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDIgQ1BVMiBpbnRlcnJ1cHQgY2xlYXIgYml0LiAgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MzX1BvcyAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MzX01zayAgICAgICgweDFVTCA8PCBIU0VNX0MySUNSX0lTQzNfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MzICAgICAgICAgIEhTRU1fQzJJQ1JfSVNDM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDMgQ1BVMiBpbnRlcnJ1cHQgY2xlYXIgYml0LiAgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0M0X1BvcyAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklDUl9JU0M0X01zayAgICAgICgweDFVTCA8PCBIU0VNX0MySUNSX0lTQzRfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0M0ICAgICAgICAgIEhTRU1fQzJJQ1JfSVNDNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDQgQ1BVMiBpbnRlcnJ1cHQgY2xlYXIgYml0LiAgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0M1X1BvcyAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklDUl9JU0M1X01zayAgICAgICgweDFVTCA8PCBIU0VNX0MySUNSX0lTQzVfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0M1ICAgICAgICAgIEhTRU1fQzJJQ1JfSVNDNV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDUgQ1BVMiBpbnRlcnJ1cHQgY2xlYXIgYml0LiAgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0M2X1BvcyAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklDUl9JU0M2X01zayAgICAgICgweDFVTCA8PCBIU0VNX0MySUNSX0lTQzZfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0M2ICAgICAgICAgIEhTRU1fQzJJQ1JfSVNDNl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDYgQ1BVMiBpbnRlcnJ1cHQgY2xlYXIgYml0LiAgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0M3X1BvcyAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklDUl9JU0M3X01zayAgICAgICgweDFVTCA8PCBIU0VNX0MySUNSX0lTQzdfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0M3ICAgICAgICAgIEhTRU1fQzJJQ1JfSVNDN19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDcgQ1BVMiBpbnRlcnJ1cHQgY2xlYXIgYml0LiAgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0M4X1BvcyAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklDUl9JU0M4X01zayAgICAgICgweDFVTCA8PCBIU0VNX0MySUNSX0lTQzhfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0M4ICAgICAgICAgIEhTRU1fQzJJQ1JfSVNDOF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDggQ1BVMiBpbnRlcnJ1cHQgY2xlYXIgYml0LiAgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0M5X1BvcyAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklDUl9JU0M5X01zayAgICAgICgweDFVTCA8PCBIU0VNX0MySUNSX0lTQzlfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0M5ICAgICAgICAgIEhTRU1fQzJJQ1JfSVNDOV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDkgQ1BVMiBpbnRlcnJ1cHQgY2xlYXIgYml0LiAgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxMF9Qb3MgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxMF9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySUNSX0lTQzEwX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxMCAgICAgICAgIEhTRU1fQzJJQ1JfSVNDMTBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDEwIENQVTIgaW50ZXJydXB0IGNsZWFyIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxMV9Qb3MgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxMV9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySUNSX0lTQzExX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxMSAgICAgICAgIEhTRU1fQzJJQ1JfSVNDMTFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDExIENQVTIgaW50ZXJydXB0IGNsZWFyIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxMl9Qb3MgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxMl9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySUNSX0lTQzEyX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxMiAgICAgICAgIEhTRU1fQzJJQ1JfSVNDMTJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDEyIENQVTIgaW50ZXJydXB0IGNsZWFyIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxM19Qb3MgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxM19Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySUNSX0lTQzEzX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxMyAgICAgICAgIEhTRU1fQzJJQ1JfSVNDMTNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDEzIENQVTIgaW50ZXJydXB0IGNsZWFyIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxNF9Qb3MgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxNF9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySUNSX0lTQzE0X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxNCAgICAgICAgIEhTRU1fQzJJQ1JfSVNDMTRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDE0IENQVTIgaW50ZXJydXB0IGNsZWFyIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxNV9Qb3MgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxNV9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySUNSX0lTQzE1X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxNSAgICAgICAgIEhTRU1fQzJJQ1JfSVNDMTVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDE1IENQVTIgaW50ZXJydXB0IGNsZWFyIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxNl9Qb3MgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxNl9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySUNSX0lTQzE2X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxNiAgICAgICAgIEhTRU1fQzJJQ1JfSVNDMTZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDE2IENQVTIgaW50ZXJydXB0IGNsZWFyIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxN19Qb3MgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxN19Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySUNSX0lTQzE3X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxNyAgICAgICAgIEhTRU1fQzJJQ1JfSVNDMTdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDE3IENQVTIgaW50ZXJydXB0IGNsZWFyIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxOF9Qb3MgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxOF9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySUNSX0lTQzE4X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxOCAgICAgICAgIEhTRU1fQzJJQ1JfSVNDMThfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDE4IENQVTIgaW50ZXJydXB0IGNsZWFyIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxOV9Qb3MgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxOV9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySUNSX0lTQzE5X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MxOSAgICAgICAgIEhTRU1fQzJJQ1JfSVNDMTlfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDE5IENQVTIgaW50ZXJydXB0IGNsZWFyIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MyMF9Qb3MgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MyMF9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySUNSX0lTQzIwX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MyMCAgICAgICAgIEhTRU1fQzJJQ1JfSVNDMjBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDIwIENQVTIgaW50ZXJydXB0IGNsZWFyIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MyMV9Qb3MgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MyMV9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySUNSX0lTQzIxX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MyMSAgICAgICAgIEhTRU1fQzJJQ1JfSVNDMjFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDIxIENQVTIgaW50ZXJydXB0IGNsZWFyIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MyMl9Qb3MgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MyMl9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySUNSX0lTQzIyX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MyMiAgICAgICAgIEhTRU1fQzJJQ1JfSVNDMjJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDIyIENQVTIgaW50ZXJydXB0IGNsZWFyIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MyM19Qb3MgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MyM19Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySUNSX0lTQzIzX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MyMyAgICAgICAgIEhTRU1fQzJJQ1JfSVNDMjNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDIzIENQVTIgaW50ZXJydXB0IGNsZWFyIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MyNF9Qb3MgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MyNF9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySUNSX0lTQzI0X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MyNCAgICAgICAgIEhTRU1fQzJJQ1JfSVNDMjRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDI0IENQVTIgaW50ZXJydXB0IGNsZWFyIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MyNV9Qb3MgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MyNV9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySUNSX0lTQzI1X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MyNSAgICAgICAgIEhTRU1fQzJJQ1JfSVNDMjVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDI1IENQVTIgaW50ZXJydXB0IGNsZWFyIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMklDUl9JU0MyNl9Qb3MgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MySUNSX0lTQzI2X01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzJJQ1JfSVNDMjZfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLworI2RlZmluZSBIU0VNX0MySUNSX0lTQzI2ICAgICAgICAgSFNFTV9DMklDUl9JU0MyNl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMjYgQ1BVMiBpbnRlcnJ1cHQgY2xlYXIgYml0LiAqLworI2RlZmluZSBIU0VNX0MySUNSX0lTQzI3X1BvcyAgICAgKDI3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzJJQ1JfSVNDMjdfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMklDUl9JU0MyN19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDA4MDAwMDAwICovCisjZGVmaW5lIEhTRU1fQzJJQ1JfSVNDMjcgICAgICAgICBIU0VNX0MySUNSX0lTQzI3X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyNyBDUFUyIGludGVycnVwdCBjbGVhciBiaXQuICovCisjZGVmaW5lIEhTRU1fQzJJQ1JfSVNDMjhfUG9zICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzJJQ1JfSVNDMjhfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMklDUl9JU0MyOF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDEwMDAwMDAwICovCisjZGVmaW5lIEhTRU1fQzJJQ1JfSVNDMjggICAgICAgICBIU0VNX0MySUNSX0lTQzI4X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyOCBDUFUyIGludGVycnVwdCBjbGVhciBiaXQuICovCisjZGVmaW5lIEhTRU1fQzJJQ1JfSVNDMjlfUG9zICAgICAoMjlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzJJQ1JfSVNDMjlfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMklDUl9JU0MyOV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDIwMDAwMDAwICovCisjZGVmaW5lIEhTRU1fQzJJQ1JfSVNDMjkgICAgICAgICBIU0VNX0MySUNSX0lTQzI5X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyOSBDUFUyIGludGVycnVwdCBjbGVhciBiaXQuICovCisjZGVmaW5lIEhTRU1fQzJJQ1JfSVNDMzBfUG9zICAgICAoMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzJJQ1JfSVNDMzBfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMklDUl9JU0MzMF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDQwMDAwMDAwICovCisjZGVmaW5lIEhTRU1fQzJJQ1JfSVNDMzAgICAgICAgICBIU0VNX0MySUNSX0lTQzMwX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAzMCBDUFUyIGludGVycnVwdCBjbGVhciBiaXQuICovCisjZGVmaW5lIEhTRU1fQzJJQ1JfSVNDMzFfUG9zICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzJJQ1JfSVNDMzFfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMklDUl9JU0MzMV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDgwMDAwMDAwICovCisjZGVmaW5lIEhTRU1fQzJJQ1JfSVNDMzEgICAgICAgICBIU0VNX0MySUNSX0lTQzMxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAzMSBDUFUyIGludGVycnVwdCBjbGVhciBiaXQuICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEhTRU1fQzJJU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLworI2RlZmluZSBIU0VNX0MySVNSX0lTRjBfUG9zICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MySVNSX0lTRjBfTXNrICAgICAgKDB4MVVMIDw8IEhTRU1fQzJJU1JfSVNGMF9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBIU0VNX0MySVNSX0lTRjAgICAgICAgICAgSFNFTV9DMklTUl9JU0YwX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMCBDUFUyIGludGVycnVwdCBzdGF0dXMgYml0LiAgKi8KKyNkZWZpbmUgSFNFTV9DMklTUl9JU0YxX1BvcyAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklTUl9JU0YxX01zayAgICAgICgweDFVTCA8PCBIU0VNX0MySVNSX0lTRjFfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgSFNFTV9DMklTUl9JU0YxICAgICAgICAgIEhTRU1fQzJJU1JfSVNGMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDEgQ1BVMiBpbnRlcnJ1cHQgc3RhdHVzIGJpdC4gICovCisjZGVmaW5lIEhTRU1fQzJJU1JfSVNGMl9Qb3MgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzJJU1JfSVNGMl9Nc2sgICAgICAoMHgxVUwgPDwgSFNFTV9DMklTUl9JU0YyX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIEhTRU1fQzJJU1JfSVNGMiAgICAgICAgICBIU0VNX0MySVNSX0lTRjJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyIENQVTIgaW50ZXJydXB0IHN0YXR1cyBiaXQuICAqLworI2RlZmluZSBIU0VNX0MySVNSX0lTRjNfUG9zICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MySVNSX0lTRjNfTXNrICAgICAgKDB4MVVMIDw8IEhTRU1fQzJJU1JfSVNGM19Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBIU0VNX0MySVNSX0lTRjMgICAgICAgICAgSFNFTV9DMklTUl9JU0YzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMyBDUFUyIGludGVycnVwdCBzdGF0dXMgYml0LiAgKi8KKyNkZWZpbmUgSFNFTV9DMklTUl9JU0Y0X1BvcyAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklTUl9JU0Y0X01zayAgICAgICgweDFVTCA8PCBIU0VNX0MySVNSX0lTRjRfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgSFNFTV9DMklTUl9JU0Y0ICAgICAgICAgIEhTRU1fQzJJU1JfSVNGNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDQgQ1BVMiBpbnRlcnJ1cHQgc3RhdHVzIGJpdC4gICovCisjZGVmaW5lIEhTRU1fQzJJU1JfSVNGNV9Qb3MgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzJJU1JfSVNGNV9Nc2sgICAgICAoMHgxVUwgPDwgSFNFTV9DMklTUl9JU0Y1X1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIEhTRU1fQzJJU1JfSVNGNSAgICAgICAgICBIU0VNX0MySVNSX0lTRjVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSA1IENQVTIgaW50ZXJydXB0IHN0YXR1cyBiaXQuICAqLworI2RlZmluZSBIU0VNX0MySVNSX0lTRjZfUG9zICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MySVNSX0lTRjZfTXNrICAgICAgKDB4MVVMIDw8IEhTRU1fQzJJU1JfSVNGNl9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBIU0VNX0MySVNSX0lTRjYgICAgICAgICAgSFNFTV9DMklTUl9JU0Y2X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgNiBDUFUyIGludGVycnVwdCBzdGF0dXMgYml0LiAgKi8KKyNkZWZpbmUgSFNFTV9DMklTUl9JU0Y3X1BvcyAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklTUl9JU0Y3X01zayAgICAgICgweDFVTCA8PCBIU0VNX0MySVNSX0lTRjdfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgSFNFTV9DMklTUl9JU0Y3ICAgICAgICAgIEhTRU1fQzJJU1JfSVNGN19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDcgQ1BVMiBpbnRlcnJ1cHQgc3RhdHVzIGJpdC4gICovCisjZGVmaW5lIEhTRU1fQzJJU1JfSVNGOF9Qb3MgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzJJU1JfSVNGOF9Nc2sgICAgICAoMHgxVUwgPDwgSFNFTV9DMklTUl9JU0Y4X1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIEhTRU1fQzJJU1JfSVNGOCAgICAgICAgICBIU0VNX0MySVNSX0lTRjhfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSA4IENQVTIgaW50ZXJydXB0IHN0YXR1cyBiaXQuICAqLworI2RlZmluZSBIU0VNX0MySVNSX0lTRjlfUG9zICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MySVNSX0lTRjlfTXNrICAgICAgKDB4MVVMIDw8IEhTRU1fQzJJU1JfSVNGOV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBIU0VNX0MySVNSX0lTRjkgICAgICAgICAgSFNFTV9DMklTUl9JU0Y5X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgOSBDUFUyIGludGVycnVwdCBzdGF0dXMgYml0LiAgKi8KKyNkZWZpbmUgSFNFTV9DMklTUl9JU0YxMF9Qb3MgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklTUl9JU0YxMF9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySVNSX0lTRjEwX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgSFNFTV9DMklTUl9JU0YxMCAgICAgICAgIEhTRU1fQzJJU1JfSVNGMTBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDEwIENQVTIgaW50ZXJydXB0IHN0YXR1cyBiaXQuICovCisjZGVmaW5lIEhTRU1fQzJJU1JfSVNGMTFfUG9zICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzJJU1JfSVNGMTFfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMklTUl9JU0YxMV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIEhTRU1fQzJJU1JfSVNGMTEgICAgICAgICBIU0VNX0MySVNSX0lTRjExX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxMSBDUFUyIGludGVycnVwdCBzdGF0dXMgYml0LiAqLworI2RlZmluZSBIU0VNX0MySVNSX0lTRjEyX1BvcyAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MySVNSX0lTRjEyX01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzJJU1JfSVNGMTJfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBIU0VNX0MySVNSX0lTRjEyICAgICAgICAgSFNFTV9DMklTUl9JU0YxMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMTIgQ1BVMiBpbnRlcnJ1cHQgc3RhdHVzIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMklTUl9JU0YxM19Qb3MgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklTUl9JU0YxM19Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySVNSX0lTRjEzX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMklTUl9JU0YxMyAgICAgICAgIEhTRU1fQzJJU1JfSVNGMTNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDEzIENQVTIgaW50ZXJydXB0IHN0YXR1cyBiaXQuICovCisjZGVmaW5lIEhTRU1fQzJJU1JfSVNGMTRfUG9zICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzJJU1JfSVNGMTRfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMklTUl9JU0YxNF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIEhTRU1fQzJJU1JfSVNGMTQgICAgICAgICBIU0VNX0MySVNSX0lTRjE0X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxNCBDUFUyIGludGVycnVwdCBzdGF0dXMgYml0LiAqLworI2RlZmluZSBIU0VNX0MySVNSX0lTRjE1X1BvcyAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MySVNSX0lTRjE1X01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzJJU1JfSVNGMTVfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLworI2RlZmluZSBIU0VNX0MySVNSX0lTRjE1ICAgICAgICAgSFNFTV9DMklTUl9JU0YxNV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMTUgQ1BVMiBpbnRlcnJ1cHQgc3RhdHVzIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMklTUl9JU0YxNl9Qb3MgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklTUl9JU0YxNl9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySVNSX0lTRjE2X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMklTUl9JU0YxNiAgICAgICAgIEhTRU1fQzJJU1JfSVNGMTZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDE2IENQVTIgaW50ZXJydXB0IHN0YXR1cyBiaXQuICovCisjZGVmaW5lIEhTRU1fQzJJU1JfSVNGMTdfUG9zICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzJJU1JfSVNGMTdfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMklTUl9JU0YxN19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovCisjZGVmaW5lIEhTRU1fQzJJU1JfSVNGMTcgICAgICAgICBIU0VNX0MySVNSX0lTRjE3X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxNyBDUFUyIGludGVycnVwdCBzdGF0dXMgYml0LiAqLworI2RlZmluZSBIU0VNX0MySVNSX0lTRjE4X1BvcyAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MySVNSX0lTRjE4X01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzJJU1JfSVNGMThfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLworI2RlZmluZSBIU0VNX0MySVNSX0lTRjE4ICAgICAgICAgSFNFTV9DMklTUl9JU0YxOF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMTggQ1BVMiBpbnRlcnJ1cHQgc3RhdHVzIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMklTUl9JU0YxOV9Qb3MgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklTUl9JU0YxOV9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySVNSX0lTRjE5X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMklTUl9JU0YxOSAgICAgICAgIEhTRU1fQzJJU1JfSVNGMTlfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDE5IENQVTIgaW50ZXJydXB0IHN0YXR1cyBiaXQuICovCisjZGVmaW5lIEhTRU1fQzJJU1JfSVNGMjBfUG9zICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzJJU1JfSVNGMjBfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMklTUl9JU0YyMF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovCisjZGVmaW5lIEhTRU1fQzJJU1JfSVNGMjAgICAgICAgICBIU0VNX0MySVNSX0lTRjIwX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyMCBDUFUyIGludGVycnVwdCBzdGF0dXMgYml0LiAqLworI2RlZmluZSBIU0VNX0MySVNSX0lTRjIxX1BvcyAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MySVNSX0lTRjIxX01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzJJU1JfSVNGMjFfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLworI2RlZmluZSBIU0VNX0MySVNSX0lTRjIxICAgICAgICAgSFNFTV9DMklTUl9JU0YyMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMjEgQ1BVMiBpbnRlcnJ1cHQgc3RhdHVzIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMklTUl9JU0YyMl9Qb3MgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklTUl9JU0YyMl9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySVNSX0lTRjIyX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMklTUl9JU0YyMiAgICAgICAgIEhTRU1fQzJJU1JfSVNGMjJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDIyIENQVTIgaW50ZXJydXB0IHN0YXR1cyBiaXQuICovCisjZGVmaW5lIEhTRU1fQzJJU1JfSVNGMjNfUG9zICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzJJU1JfSVNGMjNfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMklTUl9JU0YyM19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwODAwMDAwICovCisjZGVmaW5lIEhTRU1fQzJJU1JfSVNGMjMgICAgICAgICBIU0VNX0MySVNSX0lTRjIzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyMyBDUFUyIGludGVycnVwdCBzdGF0dXMgYml0LiAqLworI2RlZmluZSBIU0VNX0MySVNSX0lTRjI0X1BvcyAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MySVNSX0lTRjI0X01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzJJU1JfSVNGMjRfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLworI2RlZmluZSBIU0VNX0MySVNSX0lTRjI0ICAgICAgICAgSFNFTV9DMklTUl9JU0YyNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMjQgQ1BVMiBpbnRlcnJ1cHQgc3RhdHVzIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMklTUl9JU0YyNV9Qb3MgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklTUl9JU0YyNV9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySVNSX0lTRjI1X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMklTUl9JU0YyNSAgICAgICAgIEhTRU1fQzJJU1JfSVNGMjVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDI1IENQVTIgaW50ZXJydXB0IHN0YXR1cyBiaXQuICovCisjZGVmaW5lIEhTRU1fQzJJU1JfSVNGMjZfUG9zICAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklTUl9JU0YyNl9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySVNSX0lTRjI2X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMklTUl9JU0YyNiAgICAgICAgIEhTRU1fQzJJU1JfSVNGMjZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDI2IENQVTIgaW50ZXJydXB0IHN0YXR1cyBiaXQuICovCisjZGVmaW5lIEhTRU1fQzJJU1JfSVNGMjdfUG9zICAgICAoMjdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklTUl9JU0YyN19Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySVNSX0lTRjI3X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMklTUl9JU0YyNyAgICAgICAgIEhTRU1fQzJJU1JfSVNGMjdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDI3IENQVTIgaW50ZXJydXB0IHN0YXR1cyBiaXQuICovCisjZGVmaW5lIEhTRU1fQzJJU1JfSVNGMjhfUG9zICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzJJU1JfSVNGMjhfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMklTUl9JU0YyOF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDEwMDAwMDAwICovCisjZGVmaW5lIEhTRU1fQzJJU1JfSVNGMjggICAgICAgICBIU0VNX0MySVNSX0lTRjI4X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyOCBDUFUyIGludGVycnVwdCBzdGF0dXMgYml0LiAqLworI2RlZmluZSBIU0VNX0MySVNSX0lTRjI5X1BvcyAgICAgKDI5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MySVNSX0lTRjI5X01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzJJU1JfSVNGMjlfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgyMDAwMDAwMCAqLworI2RlZmluZSBIU0VNX0MySVNSX0lTRjI5ICAgICAgICAgSFNFTV9DMklTUl9JU0YyOV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMjkgQ1BVMiBpbnRlcnJ1cHQgc3RhdHVzIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMklTUl9JU0YzMF9Qb3MgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMklTUl9JU0YzMF9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MySVNSX0lTRjMwX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4NDAwMDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMklTUl9JU0YzMCAgICAgICAgIEhTRU1fQzJJU1JfSVNGMzBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDMwIENQVTIgaW50ZXJydXB0IHN0YXR1cyBiaXQuICovCisjZGVmaW5lIEhTRU1fQzJJU1JfSVNGMzFfUG9zICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzJJU1JfSVNGMzFfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMklTUl9JU0YzMV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDgwMDAwMDAwICovCisjZGVmaW5lIEhTRU1fQzJJU1JfSVNGMzEgICAgICAgICBIU0VNX0MySVNSX0lTRjMxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAzMSBDUFUyIGludGVycnVwdCBzdGF0dXMgYml0LiAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBIU0VNX0MyTUlTUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIEhTRU1fQzJNSVNSX01JU0YwX1BvcyAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMF9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MyTUlTUl9NSVNGMF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIEhTRU1fQzJNSVNSX01JU0YwICAgICAgICAgSFNFTV9DMk1JU1JfTUlTRjBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDAgQ1BVMiBpbnRlcnJ1cHQgbWFza2VkIHN0YXR1cyBiaXQuICAqLworI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMV9Qb3MgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMk1JU1JfTUlTRjFfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMk1JU1JfTUlTRjFfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMSAgICAgICAgIEhTRU1fQzJNSVNSX01JU0YxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxIENQVTIgaW50ZXJydXB0IG1hc2tlZCBzdGF0dXMgYml0LiAgKi8KKyNkZWZpbmUgSFNFTV9DMk1JU1JfTUlTRjJfUG9zICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzJNSVNSX01JU0YyX01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzJNSVNSX01JU0YyX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgSFNFTV9DMk1JU1JfTUlTRjIgICAgICAgICBIU0VNX0MyTUlTUl9NSVNGMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMiBDUFUyIGludGVycnVwdCBtYXNrZWQgc3RhdHVzIGJpdC4gICovCisjZGVmaW5lIEhTRU1fQzJNSVNSX01JU0YzX1BvcyAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGM19Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MyTUlTUl9NSVNGM19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIEhTRU1fQzJNSVNSX01JU0YzICAgICAgICAgSFNFTV9DMk1JU1JfTUlTRjNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDMgQ1BVMiBpbnRlcnJ1cHQgbWFza2VkIHN0YXR1cyBiaXQuICAqLworI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGNF9Qb3MgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMk1JU1JfTUlTRjRfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMk1JU1JfTUlTRjRfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGNCAgICAgICAgIEhTRU1fQzJNSVNSX01JU0Y0X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSA0IENQVTIgaW50ZXJydXB0IG1hc2tlZCBzdGF0dXMgYml0LiAgKi8KKyNkZWZpbmUgSFNFTV9DMk1JU1JfTUlTRjVfUG9zICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzJNSVNSX01JU0Y1X01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzJNSVNSX01JU0Y1X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgSFNFTV9DMk1JU1JfTUlTRjUgICAgICAgICBIU0VNX0MyTUlTUl9NSVNGNV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgNSBDUFUyIGludGVycnVwdCBtYXNrZWQgc3RhdHVzIGJpdC4gICovCisjZGVmaW5lIEhTRU1fQzJNSVNSX01JU0Y2X1BvcyAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGNl9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MyTUlTUl9NSVNGNl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIEhTRU1fQzJNSVNSX01JU0Y2ICAgICAgICAgSFNFTV9DMk1JU1JfTUlTRjZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDYgQ1BVMiBpbnRlcnJ1cHQgbWFza2VkIHN0YXR1cyBiaXQuICAqLworI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGN19Qb3MgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMk1JU1JfTUlTRjdfTXNrICAgICAoMHgxVUwgPDwgSFNFTV9DMk1JU1JfTUlTRjdfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLworI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGNyAgICAgICAgIEhTRU1fQzJNSVNSX01JU0Y3X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSA3IENQVTIgaW50ZXJydXB0IG1hc2tlZCBzdGF0dXMgYml0LiAgKi8KKyNkZWZpbmUgSFNFTV9DMk1JU1JfTUlTRjhfUG9zICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzJNSVNSX01JU0Y4X01zayAgICAgKDB4MVVMIDw8IEhTRU1fQzJNSVNSX01JU0Y4X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgSFNFTV9DMk1JU1JfTUlTRjggICAgICAgICBIU0VNX0MyTUlTUl9NSVNGOF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgOCBDUFUyIGludGVycnVwdCBtYXNrZWQgc3RhdHVzIGJpdC4gICovCisjZGVmaW5lIEhTRU1fQzJNSVNSX01JU0Y5X1BvcyAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGOV9Nc2sgICAgICgweDFVTCA8PCBIU0VNX0MyTUlTUl9NSVNGOV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIEhTRU1fQzJNSVNSX01JU0Y5ICAgICAgICAgSFNFTV9DMk1JU1JfTUlTRjlfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDkgQ1BVMiBpbnRlcnJ1cHQgbWFza2VkIHN0YXR1cyBiaXQuICAqLworI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMTBfUG9zICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMk1JU1JfTUlTRjEwX01zayAgICAoMHgxVUwgPDwgSFNFTV9DMk1JU1JfTUlTRjEwX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLworI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMTAgICAgICAgIEhTRU1fQzJNSVNSX01JU0YxMF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxMCBDUFUyIGludGVycnVwdCBtYXNrZWQgc3RhdHVzIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMk1JU1JfTUlTRjExX1BvcyAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzJNSVNSX01JU0YxMV9Nc2sgICAgKDB4MVVMIDw8IEhTRU1fQzJNSVNSX01JU0YxMV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgSFNFTV9DMk1JU1JfTUlTRjExICAgICAgICBIU0VNX0MyTUlTUl9NSVNGMTFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMTEgQ1BVMiBpbnRlcnJ1cHQgbWFza2VkIHN0YXR1cyBiaXQuICovCisjZGVmaW5lIEhTRU1fQzJNSVNSX01JU0YxMl9Qb3MgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMTJfTXNrICAgICgweDFVTCA8PCBIU0VNX0MyTUlTUl9NSVNGMTJfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIEhTRU1fQzJNSVNSX01JU0YxMiAgICAgICAgSFNFTV9DMk1JU1JfTUlTRjEyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDEyIENQVTIgaW50ZXJydXB0IG1hc2tlZCBzdGF0dXMgYml0LiAqLworI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMTNfUG9zICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMk1JU1JfTUlTRjEzX01zayAgICAoMHgxVUwgPDwgSFNFTV9DMk1JU1JfTUlTRjEzX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLworI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMTMgICAgICAgIEhTRU1fQzJNSVNSX01JU0YxM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAxMyBDUFUyIGludGVycnVwdCBtYXNrZWQgc3RhdHVzIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMk1JU1JfTUlTRjE0X1BvcyAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzJNSVNSX01JU0YxNF9Nc2sgICAgKDB4MVVMIDw8IEhTRU1fQzJNSVNSX01JU0YxNF9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMk1JU1JfTUlTRjE0ICAgICAgICBIU0VNX0MyTUlTUl9NSVNGMTRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMTQgQ1BVMiBpbnRlcnJ1cHQgbWFza2VkIHN0YXR1cyBiaXQuICovCisjZGVmaW5lIEhTRU1fQzJNSVNSX01JU0YxNV9Qb3MgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMTVfTXNrICAgICgweDFVTCA8PCBIU0VNX0MyTUlTUl9NSVNGMTVfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovCisjZGVmaW5lIEhTRU1fQzJNSVNSX01JU0YxNSAgICAgICAgSFNFTV9DMk1JU1JfTUlTRjE1X01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDE1IENQVTIgaW50ZXJydXB0IG1hc2tlZCBzdGF0dXMgYml0LiAqLworI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMTZfUG9zICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMTZfTXNrICAgICgweDFVTCA8PCBIU0VNX0MyTUlTUl9NSVNGMTZfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIEhTRU1fQzJNSVNSX01JU0YxNiAgICAgICAgSFNFTV9DMk1JU1JfTUlTRjE2X01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDE2IENQVTIgaW50ZXJydXB0IG1hc2tlZCBzdGF0dXMgYml0LiAqLworI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMTdfUG9zICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMTdfTXNrICAgICgweDFVTCA8PCBIU0VNX0MyTUlTUl9NSVNGMTdfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovCisjZGVmaW5lIEhTRU1fQzJNSVNSX01JU0YxNyAgICAgICAgSFNFTV9DMk1JU1JfTUlTRjE3X01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDE3IENQVTIgaW50ZXJydXB0IG1hc2tlZCBzdGF0dXMgYml0LiAqLworI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMThfUG9zICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMThfTXNrICAgICgweDFVTCA8PCBIU0VNX0MyTUlTUl9NSVNGMThfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovCisjZGVmaW5lIEhTRU1fQzJNSVNSX01JU0YxOCAgICAgICAgSFNFTV9DMk1JU1JfTUlTRjE4X01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDE4IENQVTIgaW50ZXJydXB0IG1hc2tlZCBzdGF0dXMgYml0LiAqLworI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMTlfUG9zICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMTlfTXNrICAgICgweDFVTCA8PCBIU0VNX0MyTUlTUl9NSVNGMTlfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovCisjZGVmaW5lIEhTRU1fQzJNSVNSX01JU0YxOSAgICAgICAgSFNFTV9DMk1JU1JfTUlTRjE5X01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDE5IENQVTIgaW50ZXJydXB0IG1hc2tlZCBzdGF0dXMgYml0LiAqLworI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMjBfUG9zICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMjBfTXNrICAgICgweDFVTCA8PCBIU0VNX0MyTUlTUl9NSVNGMjBfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovCisjZGVmaW5lIEhTRU1fQzJNSVNSX01JU0YyMCAgICAgICAgSFNFTV9DMk1JU1JfTUlTRjIwX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDIwIENQVTIgaW50ZXJydXB0IG1hc2tlZCBzdGF0dXMgYml0LiAqLworI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMjFfUG9zICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMjFfTXNrICAgICgweDFVTCA8PCBIU0VNX0MyTUlTUl9NSVNGMjFfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovCisjZGVmaW5lIEhTRU1fQzJNSVNSX01JU0YyMSAgICAgICAgSFNFTV9DMk1JU1JfTUlTRjIxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDIxIENQVTIgaW50ZXJydXB0IG1hc2tlZCBzdGF0dXMgYml0LiAqLworI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMjJfUG9zICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMjJfTXNrICAgICgweDFVTCA8PCBIU0VNX0MyTUlTUl9NSVNGMjJfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovCisjZGVmaW5lIEhTRU1fQzJNSVNSX01JU0YyMiAgICAgICAgSFNFTV9DMk1JU1JfTUlTRjIyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDIyIENQVTIgaW50ZXJydXB0IG1hc2tlZCBzdGF0dXMgYml0LiAqLworI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMjNfUG9zICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMjNfTXNrICAgICgweDFVTCA8PCBIU0VNX0MyTUlTUl9NSVNGMjNfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwODAwMDAwICovCisjZGVmaW5lIEhTRU1fQzJNSVNSX01JU0YyMyAgICAgICAgSFNFTV9DMk1JU1JfTUlTRjIzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDIzIENQVTIgaW50ZXJydXB0IG1hc2tlZCBzdGF0dXMgYml0LiAqLworI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMjRfUG9zICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMjRfTXNrICAgICgweDFVTCA8PCBIU0VNX0MyTUlTUl9NSVNGMjRfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAxMDAwMDAwICovCisjZGVmaW5lIEhTRU1fQzJNSVNSX01JU0YyNCAgICAgICAgSFNFTV9DMk1JU1JfTUlTRjI0X01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDI0IENQVTIgaW50ZXJydXB0IG1hc2tlZCBzdGF0dXMgYml0LiAqLworI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMjVfUG9zICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMjVfTXNrICAgICgweDFVTCA8PCBIU0VNX0MyTUlTUl9NSVNGMjVfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAyMDAwMDAwICovCisjZGVmaW5lIEhTRU1fQzJNSVNSX01JU0YyNSAgICAgICAgSFNFTV9DMk1JU1JfTUlTRjI1X01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8c2VtYXBob3JlIDI1IENQVTIgaW50ZXJydXB0IG1hc2tlZCBzdGF0dXMgYml0LiAqLworI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMjZfUG9zICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQzJNSVNSX01JU0YyNl9Nc2sgICAgKDB4MVVMIDw8IEhTRU1fQzJNSVNSX01JU0YyNl9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8KKyNkZWZpbmUgSFNFTV9DMk1JU1JfTUlTRjI2ICAgICAgICBIU0VNX0MyTUlTUl9NSVNGMjZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmUgMjYgQ1BVMiBpbnRlcnJ1cHQgbWFza2VkIHN0YXR1cyBiaXQuICovCisjZGVmaW5lIEhTRU1fQzJNSVNSX01JU0YyN19Qb3MgICAgKDI3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMk1JU1JfTUlTRjI3X01zayAgICAoMHgxVUwgPDwgSFNFTV9DMk1JU1JfTUlTRjI3X1BvcykgICAgICAgICAgICAgIC8qITwgMHgwODAwMDAwMCAqLworI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMjcgICAgICAgIEhTRU1fQzJNSVNSX01JU0YyN19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyNyBDUFUyIGludGVycnVwdCBtYXNrZWQgc3RhdHVzIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMk1JU1JfTUlTRjI4X1BvcyAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMk1JU1JfTUlTRjI4X01zayAgICAoMHgxVUwgPDwgSFNFTV9DMk1JU1JfTUlTRjI4X1BvcykgICAgICAgICAgICAgIC8qITwgMHgxMDAwMDAwMCAqLworI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMjggICAgICAgIEhTRU1fQzJNSVNSX01JU0YyOF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyOCBDUFUyIGludGVycnVwdCBtYXNrZWQgc3RhdHVzIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMk1JU1JfTUlTRjI5X1BvcyAgICAoMjlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMk1JU1JfTUlTRjI5X01zayAgICAoMHgxVUwgPDwgSFNFTV9DMk1JU1JfTUlTRjI5X1BvcykgICAgICAgICAgICAgIC8qITwgMHgyMDAwMDAwMCAqLworI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMjkgICAgICAgIEhTRU1fQzJNSVNSX01JU0YyOV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAyOSBDUFUyIGludGVycnVwdCBtYXNrZWQgc3RhdHVzIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMk1JU1JfTUlTRjMwX1BvcyAgICAoMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMk1JU1JfTUlTRjMwX01zayAgICAoMHgxVUwgPDwgSFNFTV9DMk1JU1JfTUlTRjMwX1BvcykgICAgICAgICAgICAgIC8qITwgMHg0MDAwMDAwMCAqLworI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMzAgICAgICAgIEhTRU1fQzJNSVNSX01JU0YzMF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAzMCBDUFUyIGludGVycnVwdCBtYXNrZWQgc3RhdHVzIGJpdC4gKi8KKyNkZWZpbmUgSFNFTV9DMk1JU1JfTUlTRjMxX1BvcyAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFNFTV9DMk1JU1JfTUlTRjMxX01zayAgICAoMHgxVUwgPDwgSFNFTV9DMk1JU1JfTUlTRjMxX1BvcykgICAgICAgICAgICAgIC8qITwgMHg4MDAwMDAwMCAqLworI2RlZmluZSBIU0VNX0MyTUlTUl9NSVNGMzEgICAgICAgIEhTRU1fQzJNSVNSX01JU0YzMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZSAzMSBDUFUyIGludGVycnVwdCBtYXNrZWQgc3RhdHVzIGJpdC4gKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgSFNFTV9DUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIEhTRU1fQ1JfQ09SRUlEX1BvcyAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQ1JfQ09SRUlEX01zayAgICAgICAoMHhGVUwgPDwgSFNFTV9DUl9DT1JFSURfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwRjAwICovCisjZGVmaW5lIEhTRU1fQ1JfQ09SRUlEICAgICAgICAgICBIU0VNX0NSX0NPUkVJRF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENvcmVJRCBvZiBzZW1hcGhvcmVzIHRvIGJlIGNsZWFyZWQuICovCisjZGVmaW5lIEhTRU1fQ1JfQ09SRUlEX0NQVTEgICAgICAoMHg0VSA8PCBIU0VNX0NSX0NPUkVJRF9Qb3MpCisjZGVmaW5lIEhTRU1fQ1JfQ09SRUlEX0NQVTIgICAgICAoMHg4VSA8PCBIU0VNX0NSX0NPUkVJRF9Qb3MpCisjZGVmaW5lIEhTRU1fQ1JfQ09SRUlEX0NVUlJFTlQgICBIU0VNX0NSX0NPUkVJRF9DUFUxCisjZGVmaW5lIEhTRU1fQ1JfS0VZX1BvcyAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhTRU1fQ1JfS0VZX01zayAgICAgICAgICAoMHhGRkZGVUwgPDwgSFNFTV9DUl9LRVlfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweEZGRkYwMDAwICovCisjZGVmaW5lIEhTRU1fQ1JfS0VZICAgICAgICAgICAgICBIU0VNX0NSX0tFWV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPHNlbWFwaG9yZXMgY2xlYXIga2V5LiAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBIU0VNX0tFWVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLworI2RlZmluZSBIU0VNX0tFWVJfS0VZX1BvcyAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIU0VNX0tFWVJfS0VZX01zayAgICAgICAgKDB4RkZGRlVMIDw8IEhTRU1fS0VZUl9LRVlfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHhGRkZGMDAwMCAqLworI2RlZmluZSBIU0VNX0tFWVJfS0VZICAgICAgICAgICAgSFNFTV9LRVlSX0tFWV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxzZW1hcGhvcmVzIGNsZWFyIGtleS4gKi8KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisvKiAgICAgICAgICAgICAgICAgICAgICBJbnRlci1pbnRlZ3JhdGVkIENpcmN1aXQgSW50ZXJmYWNlIChJMkMpICAgICAgICAgICAgICAqLworLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEkyQ19DUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIEkyQ19DUjFfUEVfUG9zICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEkyQ19DUjFfUEVfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19DUjFfUEVfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIEkyQ19DUjFfUEUgICAgICAgICAgICAgICAgICAgSTJDX0NSMV9QRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQZXJpcGhlcmFsIGVuYWJsZSAqLworI2RlZmluZSBJMkNfQ1IxX1RYSUVfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJMkNfQ1IxX1RYSUVfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBJMkNfQ1IxX1RYSUVfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBJMkNfQ1IxX1RYSUUgICAgICAgICAgICAgICAgIEkyQ19DUjFfVFhJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgVFggaW50ZXJydXB0IGVuYWJsZSAqLworI2RlZmluZSBJMkNfQ1IxX1JYSUVfUG9zICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJMkNfQ1IxX1JYSUVfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBJMkNfQ1IxX1JYSUVfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBJMkNfQ1IxX1JYSUUgICAgICAgICAgICAgICAgIEkyQ19DUjFfUlhJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUlggaW50ZXJydXB0IGVuYWJsZSAqLworI2RlZmluZSBJMkNfQ1IxX0FERFJJRV9Qb3MgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJMkNfQ1IxX0FERFJJRV9Nc2sgICAgICAgICAgICgweDFVTCA8PCBJMkNfQ1IxX0FERFJJRV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBJMkNfQ1IxX0FERFJJRSAgICAgICAgICAgICAgIEkyQ19DUjFfQUREUklFX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQWRkcmVzcyBtYXRjaCBpbnRlcnJ1cHQgZW5hYmxlICovCisjZGVmaW5lIEkyQ19DUjFfTkFDS0lFX1BvcyAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEkyQ19DUjFfTkFDS0lFX01zayAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19DUjFfTkFDS0lFX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIEkyQ19DUjFfTkFDS0lFICAgICAgICAgICAgICAgSTJDX0NSMV9OQUNLSUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBOQUNLIHJlY2VpdmVkIGludGVycnVwdCBlbmFibGUgKi8KKyNkZWZpbmUgSTJDX0NSMV9TVE9QSUVfUG9zICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSTJDX0NSMV9TVE9QSUVfTXNrICAgICAgICAgICAoMHgxVUwgPDwgSTJDX0NSMV9TVE9QSUVfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgSTJDX0NSMV9TVE9QSUUgICAgICAgICAgICAgICBJMkNfQ1IxX1NUT1BJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNUT1AgZGV0ZWN0aW9uIGludGVycnVwdCBlbmFibGUgKi8KKyNkZWZpbmUgSTJDX0NSMV9UQ0lFX1BvcyAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSTJDX0NSMV9UQ0lFX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgSTJDX0NSMV9UQ0lFX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgSTJDX0NSMV9UQ0lFICAgICAgICAgICAgICAgICBJMkNfQ1IxX1RDSUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zZmVyIGNvbXBsZXRlIGludGVycnVwdCBlbmFibGUgKi8KKyNkZWZpbmUgSTJDX0NSMV9FUlJJRV9Qb3MgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSTJDX0NSMV9FUlJJRV9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgSTJDX0NSMV9FUlJJRV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgSTJDX0NSMV9FUlJJRSAgICAgICAgICAgICAgICBJMkNfQ1IxX0VSUklFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEVycm9ycyBpbnRlcnJ1cHQgZW5hYmxlICovCisjZGVmaW5lIEkyQ19DUjFfRE5GX1BvcyAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEkyQ19DUjFfRE5GX01zayAgICAgICAgICAgICAgKDB4RlVMIDw8IEkyQ19DUjFfRE5GX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwRjAwICovCisjZGVmaW5lIEkyQ19DUjFfRE5GICAgICAgICAgICAgICAgICAgSTJDX0NSMV9ETkZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBEaWdpdGFsIG5vaXNlIGZpbHRlciAqLworI2RlZmluZSBJMkNfQ1IxX0FORk9GRl9Qb3MgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJMkNfQ1IxX0FORk9GRl9Nc2sgICAgICAgICAgICgweDFVTCA8PCBJMkNfQ1IxX0FORk9GRl9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBJMkNfQ1IxX0FORk9GRiAgICAgICAgICAgICAgIEkyQ19DUjFfQU5GT0ZGX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQW5hbG9nIG5vaXNlIGZpbHRlciBPRkYgKi8KKyNkZWZpbmUgSTJDX0NSMV9TV1JTVF9Qb3MgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSTJDX0NSMV9TV1JTVF9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgSTJDX0NSMV9TV1JTVF9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgSTJDX0NSMV9TV1JTVCAgICAgICAgICAgICAgICBJMkNfQ1IxX1NXUlNUX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIHJlc2V0ICovCisjZGVmaW5lIEkyQ19DUjFfVFhETUFFTl9Qb3MgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEkyQ19DUjFfVFhETUFFTl9Nc2sgICAgICAgICAgKDB4MVVMIDw8IEkyQ19DUjFfVFhETUFFTl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIEkyQ19DUjFfVFhETUFFTiAgICAgICAgICAgICAgSTJDX0NSMV9UWERNQUVOX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBETUEgdHJhbnNtaXNzaW9uIHJlcXVlc3RzIGVuYWJsZSAqLworI2RlZmluZSBJMkNfQ1IxX1JYRE1BRU5fUG9zICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJMkNfQ1IxX1JYRE1BRU5fTXNrICAgICAgICAgICgweDFVTCA8PCBJMkNfQ1IxX1JYRE1BRU5fUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLworI2RlZmluZSBJMkNfQ1IxX1JYRE1BRU4gICAgICAgICAgICAgIEkyQ19DUjFfUlhETUFFTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRE1BIHJlY2VwdGlvbiByZXF1ZXN0cyBlbmFibGUgKi8KKyNkZWZpbmUgSTJDX0NSMV9TQkNfUG9zICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSTJDX0NSMV9TQkNfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgSTJDX0NSMV9TQkNfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgSTJDX0NSMV9TQkMgICAgICAgICAgICAgICAgICBJMkNfQ1IxX1NCQ19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNsYXZlIGJ5dGUgY29udHJvbCAqLworI2RlZmluZSBJMkNfQ1IxX05PU1RSRVRDSF9Qb3MgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJMkNfQ1IxX05PU1RSRVRDSF9Nc2sgICAgICAgICgweDFVTCA8PCBJMkNfQ1IxX05PU1RSRVRDSF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLworI2RlZmluZSBJMkNfQ1IxX05PU1RSRVRDSCAgICAgICAgICAgIEkyQ19DUjFfTk9TVFJFVENIX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2xvY2sgc3RyZXRjaGluZyBkaXNhYmxlICovCisjZGVmaW5lIEkyQ19DUjFfV1VQRU5fUG9zICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEkyQ19DUjFfV1VQRU5fTXNrICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19DUjFfV1VQRU5fUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovCisjZGVmaW5lIEkyQ19DUjFfV1VQRU4gICAgICAgICAgICAgICAgSTJDX0NSMV9XVVBFTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBXYWtldXAgZnJvbSBTVE9QIGVuYWJsZSAqLworI2RlZmluZSBJMkNfQ1IxX0dDRU5fUG9zICAgICAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJMkNfQ1IxX0dDRU5fTXNrICAgICAgICAgICAgICgweDFVTCA8PCBJMkNfQ1IxX0dDRU5fUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLworI2RlZmluZSBJMkNfQ1IxX0dDRU4gICAgICAgICAgICAgICAgIEkyQ19DUjFfR0NFTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR2VuZXJhbCBjYWxsIGVuYWJsZSAqLworI2RlZmluZSBJMkNfQ1IxX1NNQkhFTl9Qb3MgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJMkNfQ1IxX1NNQkhFTl9Nc2sgICAgICAgICAgICgweDFVTCA8PCBJMkNfQ1IxX1NNQkhFTl9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLworI2RlZmluZSBJMkNfQ1IxX1NNQkhFTiAgICAgICAgICAgICAgIEkyQ19DUjFfU01CSEVOX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU01CdXMgaG9zdCBhZGRyZXNzIGVuYWJsZSAqLworI2RlZmluZSBJMkNfQ1IxX1NNQkRFTl9Qb3MgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJMkNfQ1IxX1NNQkRFTl9Nc2sgICAgICAgICAgICgweDFVTCA8PCBJMkNfQ1IxX1NNQkRFTl9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLworI2RlZmluZSBJMkNfQ1IxX1NNQkRFTiAgICAgICAgICAgICAgIEkyQ19DUjFfU01CREVOX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU01CdXMgZGV2aWNlIGRlZmF1bHQgYWRkcmVzcyBlbmFibGUgKi8KKyNkZWZpbmUgSTJDX0NSMV9BTEVSVEVOX1BvcyAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSTJDX0NSMV9BTEVSVEVOX01zayAgICAgICAgICAoMHgxVUwgPDwgSTJDX0NSMV9BTEVSVEVOX1BvcykgICAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8KKyNkZWZpbmUgSTJDX0NSMV9BTEVSVEVOICAgICAgICAgICAgICBJMkNfQ1IxX0FMRVJURU5fTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNNQnVzIGFsZXJ0IGVuYWJsZSAqLworI2RlZmluZSBJMkNfQ1IxX1BFQ0VOX1BvcyAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJMkNfQ1IxX1BFQ0VOX01zayAgICAgICAgICAgICgweDFVTCA8PCBJMkNfQ1IxX1BFQ0VOX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLworI2RlZmluZSBJMkNfQ1IxX1BFQ0VOICAgICAgICAgICAgICAgIEkyQ19DUjFfUEVDRU5fTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEVDIGVuYWJsZSAqLworCisvKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgSTJDX0NSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIEkyQ19DUjJfU0FERF9Qb3MgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEkyQ19DUjJfU0FERF9Nc2sgICAgICAgICAgICAgKDB4M0ZGVUwgPDwgSTJDX0NSMl9TQUREX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwM0ZGICovCisjZGVmaW5lIEkyQ19DUjJfU0FERCAgICAgICAgICAgICAgICAgSTJDX0NSMl9TQUREX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTbGF2ZSBhZGRyZXNzIChtYXN0ZXIgbW9kZSkgKi8KKyNkZWZpbmUgSTJDX0NSMl9SRF9XUk5fUG9zICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSTJDX0NSMl9SRF9XUk5fTXNrICAgICAgICAgICAoMHgxVUwgPDwgSTJDX0NSMl9SRF9XUk5fUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgSTJDX0NSMl9SRF9XUk4gICAgICAgICAgICAgICBJMkNfQ1IyX1JEX1dSTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zZmVyIGRpcmVjdGlvbiAobWFzdGVyIG1vZGUpICovCisjZGVmaW5lIEkyQ19DUjJfQUREMTBfUG9zICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEkyQ19DUjJfQUREMTBfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19DUjJfQUREMTBfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIEkyQ19DUjJfQUREMTAgICAgICAgICAgICAgICAgSTJDX0NSMl9BREQxMF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCAxMC1iaXQgYWRkcmVzc2luZyBtb2RlIChtYXN0ZXIgbW9kZSkgKi8KKyNkZWZpbmUgSTJDX0NSMl9IRUFEMTBSX1BvcyAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSTJDX0NSMl9IRUFEMTBSX01zayAgICAgICAgICAoMHgxVUwgPDwgSTJDX0NSMl9IRUFEMTBSX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgSTJDX0NSMl9IRUFEMTBSICAgICAgICAgICAgICBJMkNfQ1IyX0hFQUQxMFJfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IDEwLWJpdCBhZGRyZXNzIGhlYWRlciBvbmx5IHJlYWQgZGlyZWN0aW9uIChtYXN0ZXIgbW9kZSkgKi8KKyNkZWZpbmUgSTJDX0NSMl9TVEFSVF9Qb3MgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSTJDX0NSMl9TVEFSVF9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgSTJDX0NSMl9TVEFSVF9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgSTJDX0NSMl9TVEFSVCAgICAgICAgICAgICAgICBJMkNfQ1IyX1NUQVJUX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNUQVJUIGdlbmVyYXRpb24gKi8KKyNkZWZpbmUgSTJDX0NSMl9TVE9QX1BvcyAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSTJDX0NSMl9TVE9QX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgSTJDX0NSMl9TVE9QX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgSTJDX0NSMl9TVE9QICAgICAgICAgICAgICAgICBJMkNfQ1IyX1NUT1BfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNUT1AgZ2VuZXJhdGlvbiAobWFzdGVyIG1vZGUpICovCisjZGVmaW5lIEkyQ19DUjJfTkFDS19Qb3MgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEkyQ19DUjJfTkFDS19Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19DUjJfTkFDS19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovCisjZGVmaW5lIEkyQ19DUjJfTkFDSyAgICAgICAgICAgICAgICAgSTJDX0NSMl9OQUNLX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBOQUNLIGdlbmVyYXRpb24gKHNsYXZlIG1vZGUpICovCisjZGVmaW5lIEkyQ19DUjJfTkJZVEVTX1BvcyAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEkyQ19DUjJfTkJZVEVTX01zayAgICAgICAgICAgKDB4RkZVTCA8PCBJMkNfQ1IyX05CWVRFU19Qb3MpICAgICAgICAgICAgLyohPCAweDAwRkYwMDAwICovCisjZGVmaW5lIEkyQ19DUjJfTkJZVEVTICAgICAgICAgICAgICAgSTJDX0NSMl9OQllURVNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBOdW1iZXIgb2YgYnl0ZXMgKi8KKyNkZWZpbmUgSTJDX0NSMl9SRUxPQURfUG9zICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSTJDX0NSMl9SRUxPQURfTXNrICAgICAgICAgICAoMHgxVUwgPDwgSTJDX0NSMl9SRUxPQURfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8KKyNkZWZpbmUgSTJDX0NSMl9SRUxPQUQgICAgICAgICAgICAgICBJMkNfQ1IyX1JFTE9BRF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE5CWVRFUyByZWxvYWQgbW9kZSAqLworI2RlZmluZSBJMkNfQ1IyX0FVVE9FTkRfUG9zICAgICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJMkNfQ1IyX0FVVE9FTkRfTXNrICAgICAgICAgICgweDFVTCA8PCBJMkNfQ1IyX0FVVE9FTkRfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLworI2RlZmluZSBJMkNfQ1IyX0FVVE9FTkQgICAgICAgICAgICAgIEkyQ19DUjJfQVVUT0VORF9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQXV0b21hdGljIGVuZCBtb2RlIChtYXN0ZXIgbW9kZSkgKi8KKyNkZWZpbmUgSTJDX0NSMl9QRUNCWVRFX1BvcyAgICAgICAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSTJDX0NSMl9QRUNCWVRFX01zayAgICAgICAgICAoMHgxVUwgPDwgSTJDX0NSMl9QRUNCWVRFX1BvcykgICAgICAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8KKyNkZWZpbmUgSTJDX0NSMl9QRUNCWVRFICAgICAgICAgICAgICBJMkNfQ1IyX1BFQ0JZVEVfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBhY2tldCBlcnJvciBjaGVja2luZyBieXRlICovCisKKy8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgSTJDX09BUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgSTJDX09BUjFfT0ExX1BvcyAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSTJDX09BUjFfT0ExX01zayAgICAgICAgICAgICAoMHgzRkZVTCA8PCBJMkNfT0FSMV9PQTFfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAzRkYgKi8KKyNkZWZpbmUgSTJDX09BUjFfT0ExICAgICAgICAgICAgICAgICBJMkNfT0FSMV9PQTFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEludGVyZmFjZSBvd24gYWRkcmVzcyAxICovCisjZGVmaW5lIEkyQ19PQVIxX09BMU1PREVfUG9zICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEkyQ19PQVIxX09BMU1PREVfTXNrICAgICAgICAgKDB4MVVMIDw8IEkyQ19PQVIxX09BMU1PREVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIEkyQ19PQVIxX09BMU1PREUgICAgICAgICAgICAgSTJDX09BUjFfT0ExTU9ERV9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBPd24gYWRkcmVzcyAxIDEwLWJpdCBtb2RlICovCisjZGVmaW5lIEkyQ19PQVIxX09BMUVOX1BvcyAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEkyQ19PQVIxX09BMUVOX01zayAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19PQVIxX09BMUVOX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovCisjZGVmaW5lIEkyQ19PQVIxX09BMUVOICAgICAgICAgICAgICAgSTJDX09BUjFfT0ExRU5fTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBPd24gYWRkcmVzcyAxIGVuYWJsZSAqLworCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEkyQ19PQVIyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIEkyQ19PQVIyX09BMl9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEkyQ19PQVIyX09BMl9Nc2sgICAgICAgICAgICAgKDB4N0ZVTCA8PCBJMkNfT0FSMl9PQTJfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMEZFICovCisjZGVmaW5lIEkyQ19PQVIyX09BMiAgICAgICAgICAgICAgICAgSTJDX09BUjJfT0EyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcmZhY2Ugb3duIGFkZHJlc3MgMiAqLworI2RlZmluZSBJMkNfT0FSMl9PQTJNU0tfUG9zICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJMkNfT0FSMl9PQTJNU0tfTXNrICAgICAgICAgICgweDdVTCA8PCBJMkNfT0FSMl9PQTJNU0tfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDcwMCAqLworI2RlZmluZSBJMkNfT0FSMl9PQTJNU0sgICAgICAgICAgICAgIEkyQ19PQVIyX09BMk1TS19Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgT3duIGFkZHJlc3MgMiBtYXNrcyAqLworI2RlZmluZSBJMkNfT0FSMl9PQTJOT01BU0sgICAgICAgICAgICgweDAwMDAwMDAwVUwpICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTm8gbWFzayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBJMkNfT0FSMl9PQTJNQVNLMDFfUG9zICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJMkNfT0FSMl9PQTJNQVNLMDFfTXNrICAgICAgICgweDFVTCA8PCBJMkNfT0FSMl9PQTJNQVNLMDFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBJMkNfT0FSMl9PQTJNQVNLMDEgICAgICAgICAgIEkyQ19PQVIyX09BMk1BU0swMV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgT0EyWzFdIGlzIG1hc2tlZCwgT25seSBPQTJbNzoyXSBhcmUgY29tcGFyZWQgICAqLworI2RlZmluZSBJMkNfT0FSMl9PQTJNQVNLMDJfUG9zICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJMkNfT0FSMl9PQTJNQVNLMDJfTXNrICAgICAgICgweDFVTCA8PCBJMkNfT0FSMl9PQTJNQVNLMDJfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBJMkNfT0FSMl9PQTJNQVNLMDIgICAgICAgICAgIEkyQ19PQVIyX09BMk1BU0swMl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgT0EyWzI6MV0gaXMgbWFza2VkLCBPbmx5IE9BMls3OjNdIGFyZSBjb21wYXJlZCAqLworI2RlZmluZSBJMkNfT0FSMl9PQTJNQVNLMDNfUG9zICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJMkNfT0FSMl9PQTJNQVNLMDNfTXNrICAgICAgICgweDNVTCA8PCBJMkNfT0FSMl9PQTJNQVNLMDNfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDMwMCAqLworI2RlZmluZSBJMkNfT0FSMl9PQTJNQVNLMDMgICAgICAgICAgIEkyQ19PQVIyX09BMk1BU0swM19Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgT0EyWzM6MV0gaXMgbWFza2VkLCBPbmx5IE9BMls3OjRdIGFyZSBjb21wYXJlZCAqLworI2RlZmluZSBJMkNfT0FSMl9PQTJNQVNLMDRfUG9zICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJMkNfT0FSMl9PQTJNQVNLMDRfTXNrICAgICAgICgweDFVTCA8PCBJMkNfT0FSMl9PQTJNQVNLMDRfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLworI2RlZmluZSBJMkNfT0FSMl9PQTJNQVNLMDQgICAgICAgICAgIEkyQ19PQVIyX09BMk1BU0swNF9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgT0EyWzQ6MV0gaXMgbWFza2VkLCBPbmx5IE9BMls3OjVdIGFyZSBjb21wYXJlZCAqLworI2RlZmluZSBJMkNfT0FSMl9PQTJNQVNLMDVfUG9zICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJMkNfT0FSMl9PQTJNQVNLMDVfTXNrICAgICAgICgweDVVTCA8PCBJMkNfT0FSMl9PQTJNQVNLMDVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDUwMCAqLworI2RlZmluZSBJMkNfT0FSMl9PQTJNQVNLMDUgICAgICAgICAgIEkyQ19PQVIyX09BMk1BU0swNV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgT0EyWzU6MV0gaXMgbWFza2VkLCBPbmx5IE9BMls3OjZdIGFyZSBjb21wYXJlZCAqLworI2RlZmluZSBJMkNfT0FSMl9PQTJNQVNLMDZfUG9zICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJMkNfT0FSMl9PQTJNQVNLMDZfTXNrICAgICAgICgweDNVTCA8PCBJMkNfT0FSMl9PQTJNQVNLMDZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDYwMCAqLworI2RlZmluZSBJMkNfT0FSMl9PQTJNQVNLMDYgICAgICAgICAgIEkyQ19PQVIyX09BMk1BU0swNl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgT0EyWzY6MV0gaXMgbWFza2VkLCBPbmx5IE9BMls3XSBhcmUgY29tcGFyZWQgICAqLworI2RlZmluZSBJMkNfT0FSMl9PQTJNQVNLMDdfUG9zICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJMkNfT0FSMl9PQTJNQVNLMDdfTXNrICAgICAgICgweDdVTCA8PCBJMkNfT0FSMl9PQTJNQVNLMDdfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDcwMCAqLworI2RlZmluZSBJMkNfT0FSMl9PQTJNQVNLMDcgICAgICAgICAgIEkyQ19PQVIyX09BMk1BU0swN19Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgT0EyWzc6MV0gaXMgbWFza2VkLCBObyBjb21wYXJpc29uIGlzIGRvbmUgICAgICAqLworI2RlZmluZSBJMkNfT0FSMl9PQTJFTl9Qb3MgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJMkNfT0FSMl9PQTJFTl9Nc2sgICAgICAgICAgICgweDFVTCA8PCBJMkNfT0FSMl9PQTJFTl9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLworI2RlZmluZSBJMkNfT0FSMl9PQTJFTiAgICAgICAgICAgICAgIEkyQ19PQVIyX09BMkVOX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgT3duIGFkZHJlc3MgMiBlbmFibGUgKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJMkNfVElNSU5HUiByZWdpc3RlciAqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBJMkNfVElNSU5HUl9TQ0xMX1BvcyAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJMkNfVElNSU5HUl9TQ0xMX01zayAgICAgICAgICgweEZGVUwgPDwgSTJDX1RJTUlOR1JfU0NMTF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDBGRiAqLworI2RlZmluZSBJMkNfVElNSU5HUl9TQ0xMICAgICAgICAgICAgIEkyQ19USU1JTkdSX1NDTExfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgU0NMIGxvdyBwZXJpb2QgKG1hc3RlciBtb2RlKSAqLworI2RlZmluZSBJMkNfVElNSU5HUl9TQ0xIX1BvcyAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJMkNfVElNSU5HUl9TQ0xIX01zayAgICAgICAgICgweEZGVUwgPDwgSTJDX1RJTUlOR1JfU0NMSF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwRkYwMCAqLworI2RlZmluZSBJMkNfVElNSU5HUl9TQ0xIICAgICAgICAgICAgIEkyQ19USU1JTkdSX1NDTEhfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgU0NMIGhpZ2ggcGVyaW9kIChtYXN0ZXIgbW9kZSkgKi8KKyNkZWZpbmUgSTJDX1RJTUlOR1JfU0RBREVMX1BvcyAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSTJDX1RJTUlOR1JfU0RBREVMX01zayAgICAgICAoMHhGVUwgPDwgSTJDX1RJTUlOR1JfU0RBREVMX1BvcykgICAgICAgICAvKiE8IDB4MDAwRjAwMDAgKi8KKyNkZWZpbmUgSTJDX1RJTUlOR1JfU0RBREVMICAgICAgICAgICBJMkNfVElNSU5HUl9TREFERUxfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IERhdGEgaG9sZCB0aW1lICovCisjZGVmaW5lIEkyQ19USU1JTkdSX1NDTERFTF9Qb3MgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEkyQ19USU1JTkdSX1NDTERFTF9Nc2sgICAgICAgKDB4RlVMIDw8IEkyQ19USU1JTkdSX1NDTERFTF9Qb3MpICAgICAgICAgLyohPCAweDAwRjAwMDAwICovCisjZGVmaW5lIEkyQ19USU1JTkdSX1NDTERFTCAgICAgICAgICAgSTJDX1RJTUlOR1JfU0NMREVMX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBEYXRhIHNldHVwIHRpbWUgKi8KKyNkZWZpbmUgSTJDX1RJTUlOR1JfUFJFU0NfUG9zICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSTJDX1RJTUlOR1JfUFJFU0NfTXNrICAgICAgICAoMHhGVUwgPDwgSTJDX1RJTUlOR1JfUFJFU0NfUG9zKSAgICAgICAgICAvKiE8IDB4RjAwMDAwMDAgKi8KKyNkZWZpbmUgSTJDX1RJTUlOR1JfUFJFU0MgICAgICAgICAgICBJMkNfVElNSU5HUl9QUkVTQ19Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IFRpbWluZ3MgcHJlc2NhbGVyICovCisKKy8qKioqKioqKioqKioqKioqKioqIEJpdCBkZWZpbml0aW9uIGZvciBJMkNfVElNRU9VVFIgcmVnaXN0ZXIgKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgSTJDX1RJTUVPVVRSX1RJTUVPVVRBX1BvcyAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSTJDX1RJTUVPVVRSX1RJTUVPVVRBX01zayAgICAoMHhGRkZVTCA8PCBJMkNfVElNRU9VVFJfVElNRU9VVEFfUG9zKSAgICAvKiE8IDB4MDAwMDBGRkYgKi8KKyNkZWZpbmUgSTJDX1RJTUVPVVRSX1RJTUVPVVRBICAgICAgICBJMkNfVElNRU9VVFJfVElNRU9VVEFfTXNrICAgICAgICAgICAgICAgICAvKiE8IEJ1cyB0aW1lb3V0IEEgKi8KKyNkZWZpbmUgSTJDX1RJTUVPVVRSX1RJRExFX1BvcyAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSTJDX1RJTUVPVVRSX1RJRExFX01zayAgICAgICAoMHgxVUwgPDwgSTJDX1RJTUVPVVRSX1RJRExFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgSTJDX1RJTUVPVVRSX1RJRExFICAgICAgICAgICBJMkNfVElNRU9VVFJfVElETEVfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IElkbGUgY2xvY2sgdGltZW91dCBkZXRlY3Rpb24gKi8KKyNkZWZpbmUgSTJDX1RJTUVPVVRSX1RJTU9VVEVOX1BvcyAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSTJDX1RJTUVPVVRSX1RJTU9VVEVOX01zayAgICAoMHgxVUwgPDwgSTJDX1RJTUVPVVRSX1RJTU9VVEVOX1BvcykgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgSTJDX1RJTUVPVVRSX1RJTU9VVEVOICAgICAgICBJMkNfVElNRU9VVFJfVElNT1VURU5fTXNrICAgICAgICAgICAgICAgICAvKiE8IENsb2NrIHRpbWVvdXQgZW5hYmxlICovCisjZGVmaW5lIEkyQ19USU1FT1VUUl9USU1FT1VUQl9Qb3MgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEkyQ19USU1FT1VUUl9USU1FT1VUQl9Nc2sgICAgKDB4RkZGVUwgPDwgSTJDX1RJTUVPVVRSX1RJTUVPVVRCX1BvcykgICAgLyohPCAweDBGRkYwMDAwICovCisjZGVmaW5lIEkyQ19USU1FT1VUUl9USU1FT1VUQiAgICAgICAgSTJDX1RJTUVPVVRSX1RJTUVPVVRCX01zayAgICAgICAgICAgICAgICAgLyohPCBCdXMgdGltZW91dCBCKi8KKyNkZWZpbmUgSTJDX1RJTUVPVVRSX1RFWFRFTl9Qb3MgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSTJDX1RJTUVPVVRSX1RFWFRFTl9Nc2sgICAgICAoMHgxVUwgPDwgSTJDX1RJTUVPVVRSX1RFWFRFTl9Qb3MpICAgICAgICAvKiE8IDB4ODAwMDAwMDAgKi8KKyNkZWZpbmUgSTJDX1RJTUVPVVRSX1RFWFRFTiAgICAgICAgICBJMkNfVElNRU9VVFJfVEVYVEVOX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEV4dGVuZGVkIGNsb2NrIHRpbWVvdXQgZW5hYmxlICovCisKKy8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJMkNfSVNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIEkyQ19JU1JfVFhFX1BvcyAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEkyQ19JU1JfVFhFX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19JU1JfVFhFX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIEkyQ19JU1JfVFhFICAgICAgICAgICAgICAgICAgSTJDX0lTUl9UWEVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pdCBkYXRhIHJlZ2lzdGVyIGVtcHR5ICovCisjZGVmaW5lIEkyQ19JU1JfVFhJU19Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEkyQ19JU1JfVFhJU19Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19JU1JfVFhJU19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIEkyQ19JU1JfVFhJUyAgICAgICAgICAgICAgICAgSTJDX0lTUl9UWElTX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pdCBpbnRlcnJ1cHQgc3RhdHVzICovCisjZGVmaW5lIEkyQ19JU1JfUlhORV9Qb3MgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEkyQ19JU1JfUlhORV9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19JU1JfUlhORV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIEkyQ19JU1JfUlhORSAgICAgICAgICAgICAgICAgSTJDX0lTUl9SWE5FX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlaXZlIGRhdGEgcmVnaXN0ZXIgbm90IGVtcHR5ICovCisjZGVmaW5lIEkyQ19JU1JfQUREUl9Qb3MgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEkyQ19JU1JfQUREUl9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19JU1JfQUREUl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIEkyQ19JU1JfQUREUiAgICAgICAgICAgICAgICAgSTJDX0lTUl9BRERSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBZGRyZXNzIG1hdGNoZWQgKHNsYXZlIG1vZGUpKi8KKyNkZWZpbmUgSTJDX0lTUl9OQUNLRl9Qb3MgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSTJDX0lTUl9OQUNLRl9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgSTJDX0lTUl9OQUNLRl9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgSTJDX0lTUl9OQUNLRiAgICAgICAgICAgICAgICBJMkNfSVNSX05BQ0tGX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE5BQ0sgcmVjZWl2ZWQgZmxhZyAqLworI2RlZmluZSBJMkNfSVNSX1NUT1BGX1BvcyAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJMkNfSVNSX1NUT1BGX01zayAgICAgICAgICAgICgweDFVTCA8PCBJMkNfSVNSX1NUT1BGX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBJMkNfSVNSX1NUT1BGICAgICAgICAgICAgICAgIEkyQ19JU1JfU1RPUEZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1RPUCBkZXRlY3Rpb24gZmxhZyAqLworI2RlZmluZSBJMkNfSVNSX1RDX1BvcyAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJMkNfSVNSX1RDX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBJMkNfSVNSX1RDX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBJMkNfSVNSX1RDICAgICAgICAgICAgICAgICAgIEkyQ19JU1JfVENfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNmZXIgY29tcGxldGUgKG1hc3RlciBtb2RlKSAqLworI2RlZmluZSBJMkNfSVNSX1RDUl9Qb3MgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJMkNfSVNSX1RDUl9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBJMkNfSVNSX1RDUl9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLworI2RlZmluZSBJMkNfSVNSX1RDUiAgICAgICAgICAgICAgICAgIEkyQ19JU1JfVENSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNmZXIgY29tcGxldGUgcmVsb2FkICovCisjZGVmaW5lIEkyQ19JU1JfQkVSUl9Qb3MgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEkyQ19JU1JfQkVSUl9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19JU1JfQkVSUl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIEkyQ19JU1JfQkVSUiAgICAgICAgICAgICAgICAgSTJDX0lTUl9CRVJSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCdXMgZXJyb3IgKi8KKyNkZWZpbmUgSTJDX0lTUl9BUkxPX1BvcyAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSTJDX0lTUl9BUkxPX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgSTJDX0lTUl9BUkxPX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgSTJDX0lTUl9BUkxPICAgICAgICAgICAgICAgICBJMkNfSVNSX0FSTE9fTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFyYml0cmF0aW9uIGxvc3QgKi8KKyNkZWZpbmUgSTJDX0lTUl9PVlJfUG9zICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSTJDX0lTUl9PVlJfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgSTJDX0lTUl9PVlJfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgSTJDX0lTUl9PVlIgICAgICAgICAgICAgICAgICBJMkNfSVNSX09WUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE92ZXJydW4vVW5kZXJydW4gKi8KKyNkZWZpbmUgSTJDX0lTUl9QRUNFUlJfUG9zICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSTJDX0lTUl9QRUNFUlJfTXNrICAgICAgICAgICAoMHgxVUwgPDwgSTJDX0lTUl9QRUNFUlJfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgSTJDX0lTUl9QRUNFUlIgICAgICAgICAgICAgICBJMkNfSVNSX1BFQ0VSUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFQyBlcnJvciBpbiByZWNlcHRpb24gKi8KKyNkZWZpbmUgSTJDX0lTUl9USU1FT1VUX1BvcyAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSTJDX0lTUl9USU1FT1VUX01zayAgICAgICAgICAoMHgxVUwgPDwgSTJDX0lTUl9USU1FT1VUX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgSTJDX0lTUl9USU1FT1VUICAgICAgICAgICAgICBJMkNfSVNSX1RJTUVPVVRfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVvdXQgb3IgVGxvdyBkZXRlY3Rpb24gZmxhZyAqLworI2RlZmluZSBJMkNfSVNSX0FMRVJUX1BvcyAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJMkNfSVNSX0FMRVJUX01zayAgICAgICAgICAgICgweDFVTCA8PCBJMkNfSVNSX0FMRVJUX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLworI2RlZmluZSBJMkNfSVNSX0FMRVJUICAgICAgICAgICAgICAgIEkyQ19JU1JfQUxFUlRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU01CdXMgYWxlcnQgKi8KKyNkZWZpbmUgSTJDX0lTUl9CVVNZX1BvcyAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSTJDX0lTUl9CVVNZX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgSTJDX0lTUl9CVVNZX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgSTJDX0lTUl9CVVNZICAgICAgICAgICAgICAgICBJMkNfSVNSX0JVU1lfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJ1cyBidXN5ICovCisjZGVmaW5lIEkyQ19JU1JfRElSX1BvcyAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEkyQ19JU1JfRElSX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19JU1JfRElSX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIEkyQ19JU1JfRElSICAgICAgICAgICAgICAgICAgSTJDX0lTUl9ESVJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc2ZlciBkaXJlY3Rpb24gKHNsYXZlIG1vZGUpICovCisjZGVmaW5lIEkyQ19JU1JfQUREQ09ERV9Qb3MgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEkyQ19JU1JfQUREQ09ERV9Nc2sgICAgICAgICAgKDB4N0ZVTCA8PCBJMkNfSVNSX0FERENPREVfUG9zKSAgICAgICAgICAgLyohPCAweDAwRkUwMDAwICovCisjZGVmaW5lIEkyQ19JU1JfQUREQ09ERSAgICAgICAgICAgICAgSTJDX0lTUl9BRERDT0RFX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBZGRyZXNzIG1hdGNoIGNvZGUgKHNsYXZlIG1vZGUpICovCisKKy8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJMkNfSUNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIEkyQ19JQ1JfQUREUkNGX1BvcyAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEkyQ19JQ1JfQUREUkNGX01zayAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19JQ1JfQUREUkNGX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIEkyQ19JQ1JfQUREUkNGICAgICAgICAgICAgICAgSTJDX0lDUl9BRERSQ0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBZGRyZXNzIG1hdGNoZWQgY2xlYXIgZmxhZyAqLworI2RlZmluZSBJMkNfSUNSX05BQ0tDRl9Qb3MgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJMkNfSUNSX05BQ0tDRl9Nc2sgICAgICAgICAgICgweDFVTCA8PCBJMkNfSUNSX05BQ0tDRl9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBJMkNfSUNSX05BQ0tDRiAgICAgICAgICAgICAgIEkyQ19JQ1JfTkFDS0NGX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTkFDSyBjbGVhciBmbGFnICovCisjZGVmaW5lIEkyQ19JQ1JfU1RPUENGX1BvcyAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEkyQ19JQ1JfU1RPUENGX01zayAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19JQ1JfU1RPUENGX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIEkyQ19JQ1JfU1RPUENGICAgICAgICAgICAgICAgSTJDX0lDUl9TVE9QQ0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTVE9QIGRldGVjdGlvbiBjbGVhciBmbGFnICovCisjZGVmaW5lIEkyQ19JQ1JfQkVSUkNGX1BvcyAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEkyQ19JQ1JfQkVSUkNGX01zayAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19JQ1JfQkVSUkNGX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIEkyQ19JQ1JfQkVSUkNGICAgICAgICAgICAgICAgSTJDX0lDUl9CRVJSQ0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCdXMgZXJyb3IgY2xlYXIgZmxhZyAqLworI2RlZmluZSBJMkNfSUNSX0FSTE9DRl9Qb3MgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJMkNfSUNSX0FSTE9DRl9Nc2sgICAgICAgICAgICgweDFVTCA8PCBJMkNfSUNSX0FSTE9DRl9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBJMkNfSUNSX0FSTE9DRiAgICAgICAgICAgICAgIEkyQ19JQ1JfQVJMT0NGX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQXJiaXRyYXRpb24gbG9zdCBjbGVhciBmbGFnICovCisjZGVmaW5lIEkyQ19JQ1JfT1ZSQ0ZfUG9zICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEkyQ19JQ1JfT1ZSQ0ZfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19JQ1JfT1ZSQ0ZfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIEkyQ19JQ1JfT1ZSQ0YgICAgICAgICAgICAgICAgSTJDX0lDUl9PVlJDRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBPdmVycnVuL1VuZGVycnVuIGNsZWFyIGZsYWcgKi8KKyNkZWZpbmUgSTJDX0lDUl9QRUNDRl9Qb3MgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSTJDX0lDUl9QRUNDRl9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgSTJDX0lDUl9QRUNDRl9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgSTJDX0lDUl9QRUNDRiAgICAgICAgICAgICAgICBJMkNfSUNSX1BFQ0NGX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBQyBlcnJvciBjbGVhciBmbGFnICovCisjZGVmaW5lIEkyQ19JQ1JfVElNT1VUQ0ZfUG9zICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEkyQ19JQ1JfVElNT1VUQ0ZfTXNrICAgICAgICAgKDB4MVVMIDw8IEkyQ19JQ1JfVElNT1VUQ0ZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIEkyQ19JQ1JfVElNT1VUQ0YgICAgICAgICAgICAgSTJDX0lDUl9USU1PVVRDRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBUaW1lb3V0IGNsZWFyIGZsYWcgKi8KKyNkZWZpbmUgSTJDX0lDUl9BTEVSVENGX1BvcyAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSTJDX0lDUl9BTEVSVENGX01zayAgICAgICAgICAoMHgxVUwgPDwgSTJDX0lDUl9BTEVSVENGX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgSTJDX0lDUl9BTEVSVENGICAgICAgICAgICAgICBJMkNfSUNSX0FMRVJUQ0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFsZXJ0IGNsZWFyIGZsYWcgKi8KKworLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEkyQ19QRUNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIEkyQ19QRUNSX1BFQ19Qb3MgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEkyQ19QRUNSX1BFQ19Nc2sgICAgICAgICAgICAgKDB4RkZVTCA8PCBJMkNfUEVDUl9QRUNfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMEZGICovCisjZGVmaW5lIEkyQ19QRUNSX1BFQyAgICAgICAgICAgICAgICAgSTJDX1BFQ1JfUEVDX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRUMgcmVnaXN0ZXIgKi8KKworLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEkyQ19SWERSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIEkyQ19SWERSX1JYREFUQV9Qb3MgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEkyQ19SWERSX1JYREFUQV9Nc2sgICAgICAgICAgKDB4RkZVTCA8PCBJMkNfUlhEUl9SWERBVEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMEZGICovCisjZGVmaW5lIEkyQ19SWERSX1JYREFUQSAgICAgICAgICAgICAgSTJDX1JYRFJfUlhEQVRBX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCA4LWJpdCByZWNlaXZlIGRhdGEgKi8KKworLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEkyQ19UWERSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIEkyQ19UWERSX1RYREFUQV9Qb3MgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEkyQ19UWERSX1RYREFUQV9Nc2sgICAgICAgICAgKDB4RkZVTCA8PCBJMkNfVFhEUl9UWERBVEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMEZGICovCisjZGVmaW5lIEkyQ19UWERSX1RYREFUQSAgICAgICAgICAgICAgSTJDX1RYRFJfVFhEQVRBX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCA4LWJpdCB0cmFuc21pdCBkYXRhICovCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyogICAgICAgICAgICAgICAgICAgICAgICBJbmRlcGVuZGVudCBXQVRDSERPRyAoSVdERykgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJV0RHX0tSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgSVdER19LUl9LRVlfUG9zICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSVdER19LUl9LRVlfTXNrICAgICAgKDB4RkZGRlVMIDw8IElXREdfS1JfS0VZX1BvcykgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8KKyNkZWZpbmUgSVdER19LUl9LRVkgICAgICAgICAgSVdER19LUl9LRVlfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8S2V5IHZhbHVlICh3cml0ZSBvbmx5LCByZWFkIDAwMDBoKSAgKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJV0RHX1BSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgSVdER19QUl9QUl9Qb3MgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSVdER19QUl9QUl9Nc2sgICAgICAgKDB4N1VMIDw8IElXREdfUFJfUFJfUG9zKSAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDcgKi8KKyNkZWZpbmUgSVdER19QUl9QUiAgICAgICAgICAgSVdER19QUl9QUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8UFJbMjowXSAoUHJlc2NhbGVyIGRpdmlkZXIpICAgICAgICAgKi8KKyNkZWZpbmUgSVdER19QUl9QUl8wICAgICAgICAgKDB4MVUgPDwgSVdER19QUl9QUl9Qb3MpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgSVdER19QUl9QUl8xICAgICAgICAgKDB4MlUgPDwgSVdER19QUl9QUl9Qb3MpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgSVdER19QUl9QUl8yICAgICAgICAgKDB4NFUgPDwgSVdER19QUl9QUl9Qb3MpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJV0RHX1JMUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgSVdER19STFJfUkxfUG9zICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSVdER19STFJfUkxfTXNrICAgICAgKDB4RkZGVUwgPDwgSVdER19STFJfUkxfUG9zKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDBGRkYgKi8KKyNkZWZpbmUgSVdER19STFJfUkwgICAgICAgICAgSVdER19STFJfUkxfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8V2F0Y2hkb2cgY291bnRlciByZWxvYWQgdmFsdWUgICAgICAgICovCisKKy8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgSVdER19TUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIElXREdfU1JfUFZVX1BvcyAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIElXREdfU1JfUFZVX01zayAgICAgICgweDFVTCA8PCBJV0RHX1NSX1BWVV9Qb3MpICAgICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIElXREdfU1JfUFZVICAgICAgICAgIElXREdfU1JfUFZVX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBXYXRjaGRvZyBwcmVzY2FsZXIgdmFsdWUgdXBkYXRlICovCisjZGVmaW5lIElXREdfU1JfUlZVX1BvcyAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIElXREdfU1JfUlZVX01zayAgICAgICgweDFVTCA8PCBJV0RHX1NSX1JWVV9Qb3MpICAgICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIElXREdfU1JfUlZVICAgICAgICAgIElXREdfU1JfUlZVX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBXYXRjaGRvZyBjb3VudGVyIHJlbG9hZCB2YWx1ZSB1cGRhdGUgKi8KKyNkZWZpbmUgSVdER19TUl9XVlVfUG9zICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSVdER19TUl9XVlVfTXNrICAgICAgKDB4MVVMIDw8IElXREdfU1JfV1ZVX1BvcykgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgSVdER19TUl9XVlUgICAgICAgICAgSVdER19TUl9XVlVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFdhdGNoZG9nIGNvdW50ZXIgd2luZG93IHZhbHVlIHVwZGF0ZSAqLworCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIElXREdfS1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBJV0RHX1dJTlJfV0lOX1BvcyAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJV0RHX1dJTlJfV0lOX01zayAgICAoMHhGRkZVTCA8PCBJV0RHX1dJTlJfV0lOX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMEZGRiAqLworI2RlZmluZSBJV0RHX1dJTlJfV0lOICAgICAgICBJV0RHX1dJTlJfV0lOX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgV2F0Y2hkb2cgY291bnRlciB3aW5kb3cgdmFsdWUgKi8KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisvKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQb3dlciBDb250cm9sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFBXUl9DUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBQV1JfQ1IxX0xQTVNfUG9zICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfQ1IxX0xQTVNfTXNrICAgICAgICAgICAgICAgKDB4N1VMIDw8IFBXUl9DUjFfTFBNU19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNyAqLworI2RlZmluZSBQV1JfQ1IxX0xQTVMgICAgICAgICAgICAgICAgICAgUFdSX0NSMV9MUE1TX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTG93IFBvd2VyIE1vZGUgU2VsZWN0aW9uIGZvciBDUFUxICovCisjZGVmaW5lIFBXUl9DUjFfTFBNU18wICAgICAgICAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1IxX0xQTVNfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFBXUl9DUjFfTFBNU18xICAgICAgICAgICAgICAgICAoMHgyVSA8PCBQV1JfQ1IxX0xQTVNfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFBXUl9DUjFfTFBNU18yICAgICAgICAgICAgICAgICAoMHg0VSA8PCBQV1JfQ1IxX0xQTVNfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisKKyNkZWZpbmUgUFdSX0NSMV9GUERSX1BvcyAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX0NSMV9GUERSX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfQ1IxX0ZQRFJfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgUFdSX0NSMV9GUERSICAgICAgICAgICAgICAgICAgIFBXUl9DUjFfRlBEUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEZsYXNoIHBvd2VyIGRvd24gbW9kZSBkdXJpbmcgTFBydW4gZm9yIENQVTEgKi8KKworI2RlZmluZSBQV1JfQ1IxX0ZQRFNfUG9zICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfQ1IxX0ZQRFNfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9DUjFfRlBEU19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBQV1JfQ1IxX0ZQRFMgICAgICAgICAgICAgICAgICAgUFdSX0NSMV9GUERTX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRmxhc2ggcG93ZXIgZG93biBtb2RlIGR1cmluZyBMUHNsZWVwIGZvciBDUFUxICovCisKKyNkZWZpbmUgUFdSX0NSMV9EQlBfUG9zICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX0NSMV9EQlBfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfQ1IxX0RCUF9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgUFdSX0NSMV9EQlAgICAgICAgICAgICAgICAgICAgIFBXUl9DUjFfREJQX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IERpc2FibGUgQmFja3VwIERvbWFpbiB3cml0ZSBwcm90ZWN0aW9uICovCisKKyNkZWZpbmUgUFdSX0NSMV9WT1NfUG9zICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX0NSMV9WT1NfTXNrICAgICAgICAgICAgICAgICgweDNVTCA8PCBQV1JfQ1IxX1ZPU19Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA2MDAgKi8KKyNkZWZpbmUgUFdSX0NSMV9WT1MgICAgICAgICAgICAgICAgICAgIFBXUl9DUjFfVk9TX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFZvbHRhZ2Ugc2NhbGluZyByYW5nZSBzZWxlY3Rpb24gKi8KKyNkZWZpbmUgUFdSX0NSMV9WT1NfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DUjFfVk9TX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgUFdSX0NSMV9WT1NfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IFBXUl9DUjFfVk9TX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKworI2RlZmluZSBQV1JfQ1IxX0xQUl9Qb3MgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfQ1IxX0xQUl9Nc2sgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9DUjFfTFBSX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLworI2RlZmluZSBQV1JfQ1IxX0xQUiAgICAgICAgICAgICAgICAgICAgUFdSX0NSMV9MUFJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmVndWxhdG9yIExvdy1Qb3dlciBSdW4gbW9kZSAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBQV1JfQ1IyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUFdSX0NSMl9QVkRFX1BvcyAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX0NSMl9QVkRFX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfQ1IyX1BWREVfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgUFdSX0NSMl9QVkRFICAgICAgICAgICAgICAgICAgIFBXUl9DUjJfUFZERV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBvd2VyIHZvbHRhZ2UgZGV0ZWN0b3IgZW5hYmxlICovCisKKyNkZWZpbmUgUFdSX0NSMl9QTFNfUG9zICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX0NSMl9QTFNfTXNrICAgICAgICAgICAgICAgICgweDdVTCA8PCBQV1JfQ1IyX1BMU19Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMEUgKi8KKyNkZWZpbmUgUFdSX0NSMl9QTFMgICAgICAgICAgICAgICAgICAgIFBXUl9DUjJfUExTX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBvd2VyIHZvbHRhZ2UgZGV0ZWN0b3IgbGV2ZWwgc2VsZWN0aW9uICovCisjZGVmaW5lIFBXUl9DUjJfUExTXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1IyX1BMU19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFBXUl9DUjJfUExTXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBQV1JfQ1IyX1BMU19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIFBXUl9DUjJfUExTXzIgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBQV1JfQ1IyX1BMU19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisKKyNkZWZpbmUgUFdSX0NSMl9QVk1FX1BvcyAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX0NSMl9QVk1FX01zayAgICAgICAgICAgICAgICgweDVVTCA8PCBQV1JfQ1IyX1BWTUVfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNTAgKi8KKyNkZWZpbmUgUFdSX0NSMl9QVk1FICAgICAgICAgICAgICAgICAgIFBXUl9DUjJfUFZNRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBlcmlwaGVyaWNhbCBWb2x0YWdlIE1vbml0b3IgRW5hYmxlIGZvciBhbGwgcG93ZXIgZG9tYWlucyAqLworI2RlZmluZSBQV1JfQ1IyX1BWTUUxX1BvcyAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfQ1IyX1BWTUUxX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9DUjJfUFZNRTFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBQV1JfQ1IyX1BWTUUxICAgICAgICAgICAgICAgICAgUFdSX0NSMl9QVk1FMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGVyaXBoZXJpY2FsIFZvbHRhZ2UgTW9uaXRvciBWdXNiIEVuYWJsZSAqLworI2RlZmluZSBQV1JfQ1IyX1BWTUUzX1BvcyAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfQ1IyX1BWTUUzX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9DUjJfUFZNRTNfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBQV1JfQ1IyX1BWTUUzICAgICAgICAgICAgICAgICAgUFdSX0NSMl9QVk1FM19Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGVyaXBoZXJpY2FsIFZvbHRhZ2UgTW9uaXRvciBWZGRhIEVuYWJsZSAqLworCisjZGVmaW5lIFBXUl9DUjJfVVNWX1BvcyAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9DUjJfVVNWX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX0NSMl9VU1ZfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIFBXUl9DUjJfVVNWICAgICAgICAgICAgICAgICAgICBQV1JfQ1IyX1VTVl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBVU0IgU3VwcGx5IFZhbGlkICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFBXUl9DUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBQV1JfQ1IzX0VXVVBfUG9zICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfQ1IzX0VXVVBfTXNrICAgICAgICAgICAgICAgKDB4MDlVTCA8PCBQV1JfQ1IzX0VXVVBfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOSAqLworI2RlZmluZSBQV1JfQ1IzX0VXVVAgICAgICAgICAgICAgICAgICAgUFdSX0NSM19FV1VQX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxlIGFsbCBleHRlcm5hbCBXYWtlLVVwIGxpbmVzICAqLworI2RlZmluZSBQV1JfQ1IzX0VXVVAxX1BvcyAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfQ1IzX0VXVVAxX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9DUjNfRVdVUDFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBQV1JfQ1IzX0VXVVAxICAgICAgICAgICAgICAgICAgUFdSX0NSM19FV1VQMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxlIGV4dGVybmFsIFdLVVAgUGluIDEgW2xpbmUgMF0gKi8KKyNkZWZpbmUgUFdSX0NSM19FV1VQNF9Qb3MgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX0NSM19FV1VQNF9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfQ1IzX0VXVVA0X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgUFdSX0NSM19FV1VQNCAgICAgICAgICAgICAgICAgIFBXUl9DUjNfRVdVUDRfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEVuYWJsZSBleHRlcm5hbCBXS1VQIFBpbiA0IFtsaW5lIDNdICovCisKKyNkZWZpbmUgUFdSX0NSM19FQk9SSFNNUFNGQl9Qb3MgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX0NSM19FQk9SSFNNUFNGQl9Nc2sgICAgICAgICgweDFVTCA8PCBQV1JfQ1IzX0VCT1JIU01QU0ZCX1BvcykgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgUFdSX0NSM19FQk9SSFNNUFNGQiAgICAgICAgICAgIFBXUl9DUjNfRUJPUkhTTVBTRkJfTXNrICAgICAgICAgICAgICAgICAvKiE8IEJPUkggYW5kIFNNUFMgU3RlcCBEb3duIGNvbnZlcnRlciBmb3JjZWQgaW4gQnlwYXNzIGludGVycnVwdHMgZm9yIENQVTEgKi8KKworI2RlZmluZSBQV1JfQ1IzX1JSU19Qb3MgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfQ1IzX1JSU19Nc2sgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9DUjNfUlJTX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBQV1JfQ1IzX1JSUyAgICAgICAgICAgICAgICAgICAgUFdSX0NSM19SUlNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1JBTTIgcmV0ZW50aW9uIGluIFNUQU5EQlkgbW9kZSAqLworCisjZGVmaW5lIFBXUl9DUjNfQVBDX1BvcyAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9DUjNfQVBDX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX0NSM19BUENfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIFBXUl9DUjNfQVBDICAgICAgICAgICAgICAgICAgICBQV1JfQ1IzX0FQQ19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBcHBseSBwdWxsLXVwIGFuZCBwdWxsLWRvd24gY29uZmlndXJhdGlvbiBmb3IgQ1BVMSAqLworCisjZGVmaW5lIFBXUl9DUjNfRUNSUEVfUG9zICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9DUjNfRUNSUEVfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX0NSM19FQ1JQRV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIFBXUl9DUjNfRUNSUEUgICAgICAgICAgICAgICAgICBQV1JfQ1IzX0VDUlBFX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDcml0aWNhbCByYWRpbyBwaGFzZSBlbmQgb2YgYWN0aXZpdHkgaW50ZXJydXB0IGZvciBDUFUxICovCisjZGVmaW5lIFBXUl9DUjNfRUJMRUFfUG9zICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9DUjNfRUJMRUFfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX0NSM19FQkxFQV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIFBXUl9DUjNfRUJMRUEgICAgICAgICAgICAgICAgICBQV1JfQ1IzX0VCTEVBX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCTEUgZW5kIG9mIGFjdGl2aXR5IGludGVycnVwdCBmb3IgQ1BVMSAqLworI2RlZmluZSBQV1JfQ1IzX0U4MDJBX1BvcyAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfQ1IzX0U4MDJBX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9DUjNfRTgwMkFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLworI2RlZmluZSBQV1JfQ1IzX0U4MDJBICAgICAgICAgICAgICAgICAgUFdSX0NSM19FODAyQV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgODAyLjE1LjQgZW5kIG9mIGFjdGl2aXR5IGludGVycnVwdCBmb3IgQ1BVMSAqLworI2RlZmluZSBQV1JfQ1IzX0VDMkhfUG9zICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfQ1IzX0VDMkhfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9DUjNfRUMySF9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLworI2RlZmluZSBQV1JfQ1IzX0VDMkggICAgICAgICAgICAgICAgICAgIFBXUl9DUjNfRUMySF9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBIb2xkIGludGVycnVwdCBmb3IgQ1BVMSAqLworCisjZGVmaW5lIFBXUl9DUjNfRUlXVUxfUG9zICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9DUjNfRUlXVUxfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX0NSM19FSVdVTF9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovCisjZGVmaW5lIFBXUl9DUjNfRUlXVUwgICAgICAgICAgICAgICAgICBQV1JfQ1IzX0VJV1VMX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcm5hbCBXYWtlLVVwIGxpbmUgaW50ZXJydXB0IGZvciBDUFUxICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFBXUl9DUjQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBQV1JfQ1I0X1dQX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfQ1I0X1dQX01zayAgICAgICAgICAgICAgICAgKDB4MDlVTCA8PCBQV1JfQ1I0X1dQX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOSAqLworI2RlZmluZSBQV1JfQ1I0X1dQICAgICAgICAgICAgICAgICAgICAgUFdSX0NSNF9XUF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgV2FrZS1VcCBwb2xhcml0eSBmb3IgYWxsIHBpbnMgKi8KKyNkZWZpbmUgUFdSX0NSNF9XUDFfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX0NSNF9XUDFfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfQ1I0X1dQMV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgUFdSX0NSNF9XUDEgICAgICAgICAgICAgICAgICAgIFBXUl9DUjRfV1AxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFdha2UtVXAgUGluIDEgW2xpbmUgMF0gcG9sYXJpdHkgKi8KKyNkZWZpbmUgUFdSX0NSNF9XUDRfUG9zICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX0NSNF9XUDRfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfQ1I0X1dQNF9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgUFdSX0NSNF9XUDQgICAgICAgICAgICAgICAgICAgIFBXUl9DUjRfV1A0X01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFdha2UtVXAgUGluIDQgW2xpbmUgM10gcG9sYXJpdHkgKi8KKworI2RlZmluZSBQV1JfQ1I0X1ZCRV9Qb3MgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfQ1I0X1ZCRV9Nc2sgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9DUjRfVkJFX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBQV1JfQ1I0X1ZCRSAgICAgICAgICAgICAgICAgICAgUFdSX0NSNF9WQkVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgVkJBVCBiYXR0ZXJ5IGNoYXJnaW5nIGVuYWJsZSAgKi8KKyNkZWZpbmUgUFdSX0NSNF9WQlJTX1BvcyAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX0NSNF9WQlJTX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfQ1I0X1ZCUlNfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgUFdSX0NSNF9WQlJTICAgICAgICAgICAgICAgICAgIFBXUl9DUjRfVkJSU19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFZCQVQgYmF0dGVyeSBjaGFyZ2luZyByZXNpc3RvciBzZWxlY3Rpb24gKi8KKworI2RlZmluZSBQV1JfQ1I0X0MyQk9PVF9Qb3MgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfQ1I0X0MyQk9PVF9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9DUjRfQzJCT09UX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLworI2RlZmluZSBQV1JfQ1I0X0MyQk9PVCAgICAgICAgICAgICAgICAgUFdSX0NSNF9DMkJPT1RfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgQm9vdCBDUFUyIGFmdGVyIHJlc2V0IG9yIHdha2V1cCBmcm9tIFN0b3Agb3IgU3RhbmRieSBtb2RlcyAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBQV1JfU1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUFdSX1NSMV9XVUZfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX1NSMV9XVUZfTXNrICAgICAgICAgICAgICAgICgweDA5VUwgPDwgUFdSX1NSMV9XVUZfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDkgKi8KKyNkZWZpbmUgUFdSX1NSMV9XVUYgICAgICAgICAgICAgICAgICAgIFBXUl9TUjFfV1VGX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFdha2V1cCBGbGFncyBvZiBhbGwgcGlucyAqLworI2RlZmluZSBQV1JfU1IxX1dVRjFfUG9zICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfU1IxX1dVRjFfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9TUjFfV1VGMV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBQV1JfU1IxX1dVRjEgICAgICAgICAgICAgICAgICAgUFdSX1NSMV9XVUYxX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgV2FrZXVwIFBpbiAxIFtGbGFnIDBdICovCisjZGVmaW5lIFBXUl9TUjFfV1VGNF9Qb3MgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9TUjFfV1VGNF9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1NSMV9XVUY0X1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIFBXUl9TUjFfV1VGNCAgICAgICAgICAgICAgICAgICBQV1JfU1IxX1dVRjRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBXYWtldXAgUGluIDQgW0ZsYWcgM10gKi8KKworI2RlZmluZSBQV1JfU1IxX1NNUFNGQkZfUG9zICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfU1IxX1NNUFNGQkZfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9TUjFfU01QU0ZCRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBQV1JfU1IxX1NNUFNGQkYgICAgICAgICAgICAgICAgUFdSX1NSMV9TTVBTRkJGX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgU01QUyBTdGVwIERvd24gY29udmVydGVyIGZvcmNlZCBpbiBieXBhc3MgbW9kZSBpbnRlcnJ1cHQgZmxhZyAqLworCisjZGVmaW5lIFBXUl9TUjFfQk9SSEZfUG9zICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9TUjFfQk9SSEZfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1NSMV9CT1JIRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIFBXUl9TUjFfQk9SSEYgICAgICAgICAgICAgICAgICBQV1JfU1IxX0JPUkhGX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCT1JIIGludGVycnVwdCBmbGFnICovCisKKyNkZWZpbmUgUFdSX1NSMV9CTEVXVUZfUG9zICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX1NSMV9CTEVXVUZfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfU1IxX0JMRVdVRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgUFdSX1NSMV9CTEVXVUYgICAgICAgICAgICAgICAgIFBXUl9TUjFfQkxFV1VGX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJMRSB3YWtldXAgaW50ZXJydXB0IGZsYWcgKi8KKyNkZWZpbmUgUFdSX1NSMV84MDJXVUZfUG9zICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9TUjFfODAyV1VGX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1NSMV84MDJXVUZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIFBXUl9TUjFfODAyV1VGICAgICAgICAgICAgICAgICBQV1JfU1IxXzgwMldVRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCA4MDIuMTUuNCB3YWtldXAgaW50ZXJydXB0IGZsYWcgKi8KKworI2RlZmluZSBQV1JfU1IxX0NSUEVGX1BvcyAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfU1IxX0NSUEVGX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9TUjFfQ1JQRUZfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLworI2RlZmluZSBQV1JfU1IxX0NSUEVGICAgICAgICAgICAgICAgICAgUFdSX1NSMV9DUlBFRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ3JpdGljYWwgcmFkaW8gcGhhc2UgZW5kIG9mIGFjdGl2aXR5IGludGVycnVwdCBmbGFnICovCisjZGVmaW5lIFBXUl9TUjFfQkxFQUZfUG9zICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9TUjFfQkxFQUZfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1NSMV9CTEVBRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIFBXUl9TUjFfQkxFQUYgICAgICAgICAgICAgICAgICBQV1JfU1IxX0JMRUFGX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCTEUgZW5kIG9mIGFjdGl2aXR5IGludGVycnVwdCBmbGFnICovCisjZGVmaW5lIFBXUl9TUjFfODAyQUZfUG9zICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9TUjFfODAyQUZfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1NSMV84MDJBRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIFBXUl9TUjFfODAyQUYgICAgICAgICAgICAgICAgICBQV1JfU1IxXzgwMkFGX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCA4MDIuMTUuNCBlbmQgb2YgYWN0aXZpdHkgaW50ZXJydXB0IGZsYWcgKi8KKworI2RlZmluZSBQV1JfU1IxX0MySEZfUG9zICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfU1IxX0MySEZfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9TUjFfQzJIRl9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLworI2RlZmluZSBQV1JfU1IxX0MySEYgICAgICAgICAgICAgICAgICAgUFdSX1NSMV9DMkhGX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1BVMiBIb2xkIGludGVycnVwdCBmbGFnICovCisKKyNkZWZpbmUgUFdSX1NSMV9XVUZJX1BvcyAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX1NSMV9XVUZJX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfU1IxX1dVRklfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgUFdSX1NSMV9XVUZJICAgICAgICAgICAgICAgICAgIFBXUl9TUjFfV1VGSV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEludGVybmFsIHdha2V1cCBpbnRlcnJ1cHQgZmxhZyAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBQV1JfU1IyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUFdSX1NSMl9TTVBTQkZfUG9zICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX1NSMl9TTVBTQkZfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfU1IyX1NNUFNCRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgUFdSX1NSMl9TTVBTQkYgICAgICAgICAgICAgICAgIFBXUl9TUjJfU01QU0JGX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNNUFMgc3RlcCBkb3duIGNvbnZlcnRlciBpbiBvcGVyYXRpbmcgbW9kZSBieXBhc3MgZmxhZyAqLworI2RlZmluZSBQV1JfU1IyX1NNUFNGX1BvcyAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfU1IyX1NNUFNGX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9TUjJfU01QU0ZfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBQV1JfU1IyX1NNUFNGICAgICAgICAgICAgICAgICAgUFdSX1NSMl9TTVBTRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU01QUyBzdGVwIGRvd24gY29udmVydGVyIGluIG9wZXJhdGluZyBtb2RlIHN0ZXAgZG93biBmbGFnICovCisKKyNkZWZpbmUgUFdSX1NSMl9SRUdMUFNfUG9zICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX1NSMl9SRUdMUFNfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfU1IyX1JFR0xQU19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgUFdSX1NSMl9SRUdMUFMgICAgICAgICAgICAgICAgIFBXUl9TUjJfUkVHTFBTX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IExvdy1wb3dlciByZWd1bGF0b3Igc3RhcnRlZCAqLworI2RlZmluZSBQV1JfU1IyX1JFR0xQRl9Qb3MgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfU1IyX1JFR0xQRl9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9TUjJfUkVHTFBGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBQV1JfU1IyX1JFR0xQRiAgICAgICAgICAgICAgICAgUFdSX1NSMl9SRUdMUEZfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgTG93LXBvd2VyIHJlZ3VsYXRvciBmbGFnICovCisKKyNkZWZpbmUgUFdSX1NSMl9WT1NGX1BvcyAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX1NSMl9WT1NGX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfU1IyX1ZPU0ZfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgUFdSX1NSMl9WT1NGICAgICAgICAgICAgICAgICAgIFBXUl9TUjJfVk9TRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFZvbHRhZ2Ugc2NhbGluZyBmbGFnICAgICovCisjZGVmaW5lIFBXUl9TUjJfUFZET19Qb3MgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9TUjJfUFZET19Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1NSMl9QVkRPX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIFBXUl9TUjJfUFZETyAgICAgICAgICAgICAgICAgICBQV1JfU1IyX1BWRE9fTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQb3dlciB2b2x0YWdlIGRldGVjdG9yIG91dHB1dCAqLworCisjZGVmaW5lIFBXUl9TUjJfUFZNT19Qb3MgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9TUjJfUFZNT19Nc2sgICAgICAgICAgICAgICAoMHg1VUwgPDwgUFdSX1NSMl9QVk1PX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDA1MDAwICovCisjZGVmaW5lIFBXUl9TUjJfUFZNTyAgICAgICAgICAgICAgICAgICBQV1JfU1IyX1BWTU9fTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQZXJpcGhlcmFsIHZvbHRhZ2UgbW9uaXRvciBvdXRwdXQgZm9yIGFsbCBwb3dlciBkb21haW5zICovCisjZGVmaW5lIFBXUl9TUjJfUFZNTzFfUG9zICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9TUjJfUFZNTzFfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1NSMl9QVk1PMV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIFBXUl9TUjJfUFZNTzEgICAgICAgICAgICAgICAgICBQV1JfU1IyX1BWTU8xX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQZXJpcGhlcmFsIHZvbHRhZ2UgbW9uaXRvciBvdXRwdXQgMTogVkREVVNCIHZzLiAxLjJWICovCisjZGVmaW5lIFBXUl9TUjJfUFZNTzNfUG9zICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9TUjJfUFZNTzNfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1NSMl9QVk1PM19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIFBXUl9TUjJfUFZNTzMgICAgICAgICAgICAgICAgICBQV1JfU1IyX1BWTU8zX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQZXJpcGhlcmFsIHZvbHRhZ2UgbW9uaXRvciBvdXRwdXQgMzogVkREQSB2cy4gMS42MlYgKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUFdSX1NDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFBXUl9TQ1JfQ1dVRl9Qb3MgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9TQ1JfQ1dVRl9Nc2sgICAgICAgICAgICAgICAoMHgwOVVMIDw8IFBXUl9TQ1JfQ1dVRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDA5ICovCisjZGVmaW5lIFBXUl9TQ1JfQ1dVRiAgICAgICAgICAgICAgICAgICBQV1JfU0NSX0NXVUZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDbGVhciBXYWtlLXVwIEZsYWdzIGZvciBhbGwgcGlucyAqLworI2RlZmluZSBQV1JfU0NSX0NXVUYxX1BvcyAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfU0NSX0NXVUYxX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9TQ1JfQ1dVRjFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBQV1JfU0NSX0NXVUYxICAgICAgICAgICAgICAgICAgUFdSX1NDUl9DV1VGMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2xlYXIgV2FrZS11cCBQaW4gMSBbRmxhZyAwXSAqLworI2RlZmluZSBQV1JfU0NSX0NXVUY0X1BvcyAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfU0NSX0NXVUY0X01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9TQ1JfQ1dVRjRfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBQV1JfU0NSX0NXVUY0ICAgICAgICAgICAgICAgICAgUFdSX1NDUl9DV1VGNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2xlYXIgV2FrZS11cCBQaW4gNCBbRmxhZyAzXSAqLworCisjZGVmaW5lIFBXUl9TQ1JfQ1NNUFNGQkZfUG9zICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9TQ1JfQ1NNUFNGQkZfTXNrICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1NDUl9DU01QU0ZCRl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIFBXUl9TQ1JfQ1NNUFNGQkYgICAgICAgICAgICAgICBQV1JfU0NSX0NTTVBTRkJGX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBDbGVhciBTTVBTIFN0ZXAgRG93biBjb252ZXJ0ZXIgZm9yY2VkIGluIGJ5cGFzcyBtb2RlIGludGVycnVwdCBmbGFnICAqLworCisjZGVmaW5lIFBXUl9TQ1JfQ0JPUkhGX1BvcyAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9TQ1JfQ0JPUkhGX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1NDUl9DQk9SSEZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIFBXUl9TQ1JfQ0JPUkhGICAgICAgICAgICAgICAgICBQV1JfU0NSX0NCT1JIRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBDbGVhciBCT1JIIGludGVycnVwdCBmbGFnICAqLworCisjZGVmaW5lIFBXUl9TQ1JfQ0JMRVdVRl9Qb3MgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfU0NSX0NCTEVXVUZfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9TQ1JfQ0JMRVdVRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBQV1JfU0NSX0NCTEVXVUYgICAgICAgICAgICAgICAgUFdSX1NDUl9DQkxFV1VGX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2xlYXIgQkxFIHdha2V1cCBpbnRlcnJ1cHQgZmxhZyAqLworI2RlZmluZSBQV1JfU0NSX0M4MDJXVUZfUG9zICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfU0NSX0M4MDJXVUZfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9TQ1JfQzgwMldVRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLworI2RlZmluZSBQV1JfU0NSX0M4MDJXVUYgICAgICAgICAgICAgICAgUFdSX1NDUl9DODAyV1VGX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2xlYXIgODAyLjE1LjQgd2FrZXVwIGludGVycnVwdCBmbGFnICovCisKKyNkZWZpbmUgUFdSX1NDUl9DQ1JQRUZfUG9zICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfU0NSX0NDUlBFRl9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9TQ1JfQ0NSUEVGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLworI2RlZmluZSBQV1JfU0NSX0NDUlBFRiAgICAgICAgICAgICAgICAgUFdSX1NDUl9DQ1JQRUZfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2xlYXIgQ3JpdGljYWwgcmFkaW8gcGhhc2UgZW5kIG9mIGFjdGl2aXR5IGludGVycnVwdCBmbGFnICovCisjZGVmaW5lIFBXUl9TQ1JfQ0JMRUFGX1BvcyAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX1NDUl9DQkxFQUZfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfU0NSX0NCTEVBRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgUFdSX1NDUl9DQkxFQUYgICAgICAgICAgICAgICAgIFBXUl9TQ1JfQ0JMRUFGX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IENsZWFyIEJMRSBlbmQgb2YgYWN0aXZpdHkgaW50ZXJydXB0IGZsYWcgKi8KKyNkZWZpbmUgUFdSX1NDUl9DODAyQUZfUG9zICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfU0NSX0M4MDJBRl9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9TQ1JfQzgwMkFGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLworI2RlZmluZSBQV1JfU0NSX0M4MDJBRiAgICAgICAgICAgICAgICAgUFdSX1NDUl9DODAyQUZfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2xlYXIgODAyLjE1LjQgZW5kIG9mIGFjdGl2aXR5IGludGVycnVwdCBmbGFnICovCisKKyNkZWZpbmUgUFdSX1NDUl9DQzJIRl9Qb3MgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfU0NSX0NDMkhGX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9TQ1JfQ0MySEZfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLworI2RlZmluZSBQV1JfU0NSX0NDMkhGICAgICAgICAgICAgICAgICAgUFdSX1NDUl9DQzJIRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2xlYXIgQ1BVMiBIb2xkIGludGVycnVwdCBmbGFnICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFBXUl9DUjUgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBQV1JfQ1I1X1NNUFNWT1NfUG9zICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfQ1I1X1NNUFNWT1NfTXNrICAgICAgICAgICAgKDB4RlVMIDw8IFBXUl9DUjVfU01QU1ZPU19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwRiAqLworI2RlZmluZSBQV1JfQ1I1X1NNUFNWT1MgICAgICAgICAgICAgICAgUFdSX0NSNV9TTVBTVk9TX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgU01QUyBzdGVwIGRvd24gY29udmVydGVyIHZvbHRhZ2Ugb3V0cHV0IHNjYWxpbmcgdm9sdGFnZSBsZXZlbCAqLworI2RlZmluZSBQV1JfQ1I1X1NNUFNWT1NfMCAgICAgICAgICAgICAgKDB4MDFVIDw8IFBXUl9DUjVfU01QU1ZPU19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBQV1JfQ1I1X1NNUFNWT1NfMSAgICAgICAgICAgICAgKDB4MDJVIDw8IFBXUl9DUjVfU01QU1ZPU19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBQV1JfQ1I1X1NNUFNWT1NfMiAgICAgICAgICAgICAgKDB4MDRVIDw8IFBXUl9DUjVfU01QU1ZPU19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBQV1JfQ1I1X1NNUFNWT1NfMyAgICAgICAgICAgICAgKDB4MDhVIDw8IFBXUl9DUjVfU01QU1ZPU19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworCisjZGVmaW5lIFBXUl9DUjVfU01QU1NDX1BvcyAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9DUjVfU01QU1NDX01zayAgICAgICAgICAgICAoMHg3VUwgPDwgUFdSX0NSNV9TTVBTU0NfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDcwICovCisjZGVmaW5lIFBXUl9DUjVfU01QU1NDICAgICAgICAgICAgICAgICBQV1JfQ1I1X1NNUFNTQ19Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBTTVBTIHN0ZXAgZG93biBjb252ZXJ0ZXIgc3VwcGx5IHN0YXJ0dXAgY3VycmVudCBzZWxlY3Rpb24gKi8KKyNkZWZpbmUgUFdSX0NSNV9TTVBTU0NfMCAgICAgICAgICAgICAgICgweDAxVSA8PCBQV1JfQ1I1X1NNUFNTQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgUFdSX0NSNV9TTVBTU0NfMSAgICAgICAgICAgICAgICgweDAyVSA8PCBQV1JfQ1I1X1NNUFNTQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgUFdSX0NSNV9TTVBTU0NfMiAgICAgICAgICAgICAgICgweDA0VSA8PCBQV1JfQ1I1X1NNUFNTQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKworI2RlZmluZSBQV1JfQ1I1X0JPUkhDX1BvcyAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfQ1I1X0JPUkhDX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9DUjVfQk9SSENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBQV1JfQ1I1X0JPUkhDICAgICAgICAgICAgICAgICAgUFdSX0NSNV9CT1JIQ19Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQk9SSCBjb25maWd1cmF0aW9uIHNlbGVjdGlvbiAqLworCisjZGVmaW5lIFBXUl9DUjVfU01QU0VOX1BvcyAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9DUjVfU01QU0VOX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX0NSNV9TTVBTRU5fUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovCisjZGVmaW5lIFBXUl9DUjVfU01QU0VOICAgICAgICAgICAgICAgICBQV1JfQ1I1X1NNUFNFTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGUgU01QUyBTdGVwIERvd24gY29udmVydGVyIFNNUFMgbW9kZSBlbmFibGUgKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUFdSX1BVQ1JBIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUFdSX1BVQ1JBX1BBMF9Qb3MgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX1BVQ1JBX1BBMF9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfUFVDUkFfUEEwX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgUFdSX1BVQ1JBX1BBMCAgICAgICAgICAgICAgICAgIFBXUl9QVUNSQV9QQTBfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBpbiBQQTAgUHVsbC1VcCBzZXQgKi8KKyNkZWZpbmUgUFdSX1BVQ1JBX1BBMV9Qb3MgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX1BVQ1JBX1BBMV9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfUFVDUkFfUEExX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgUFdSX1BVQ1JBX1BBMSAgICAgICAgICAgICAgICAgIFBXUl9QVUNSQV9QQTFfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBpbiBQQTEgUHVsbC1VcCBzZXQgKi8KKyNkZWZpbmUgUFdSX1BVQ1JBX1BBMl9Qb3MgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX1BVQ1JBX1BBMl9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfUFVDUkFfUEEyX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgUFdSX1BVQ1JBX1BBMiAgICAgICAgICAgICAgICAgIFBXUl9QVUNSQV9QQTJfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBpbiBQQTIgUHVsbC1VcCBzZXQgKi8KKyNkZWZpbmUgUFdSX1BVQ1JBX1BBM19Qb3MgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX1BVQ1JBX1BBM19Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfUFVDUkFfUEEzX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgUFdSX1BVQ1JBX1BBMyAgICAgICAgICAgICAgICAgIFBXUl9QVUNSQV9QQTNfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBpbiBQQTMgUHVsbC1VcCBzZXQgKi8KKyNkZWZpbmUgUFdSX1BVQ1JBX1BBNF9Qb3MgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX1BVQ1JBX1BBNF9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfUFVDUkFfUEE0X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgUFdSX1BVQ1JBX1BBNCAgICAgICAgICAgICAgICAgIFBXUl9QVUNSQV9QQTRfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBpbiBQQTQgUHVsbC1VcCBzZXQgKi8KKyNkZWZpbmUgUFdSX1BVQ1JBX1BBNV9Qb3MgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX1BVQ1JBX1BBNV9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfUFVDUkFfUEE1X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgUFdSX1BVQ1JBX1BBNSAgICAgICAgICAgICAgICAgIFBXUl9QVUNSQV9QQTVfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBpbiBQQTUgUHVsbC1VcCBzZXQgKi8KKyNkZWZpbmUgUFdSX1BVQ1JBX1BBNl9Qb3MgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX1BVQ1JBX1BBNl9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfUFVDUkFfUEE2X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgUFdSX1BVQ1JBX1BBNiAgICAgICAgICAgICAgICAgIFBXUl9QVUNSQV9QQTZfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBpbiBQQTYgUHVsbC1VcCBzZXQgKi8KKyNkZWZpbmUgUFdSX1BVQ1JBX1BBN19Qb3MgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX1BVQ1JBX1BBN19Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfUFVDUkFfUEE3X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgUFdSX1BVQ1JBX1BBNyAgICAgICAgICAgICAgICAgIFBXUl9QVUNSQV9QQTdfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBpbiBQQTcgUHVsbC1VcCBzZXQgKi8KKyNkZWZpbmUgUFdSX1BVQ1JBX1BBOF9Qb3MgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX1BVQ1JBX1BBOF9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfUFVDUkFfUEE4X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgUFdSX1BVQ1JBX1BBOCAgICAgICAgICAgICAgICAgIFBXUl9QVUNSQV9QQThfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBpbiBQQTggUHVsbC1VcCBzZXQgKi8KKyNkZWZpbmUgUFdSX1BVQ1JBX1BBOV9Qb3MgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX1BVQ1JBX1BBOV9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfUFVDUkFfUEE5X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgUFdSX1BVQ1JBX1BBOSAgICAgICAgICAgICAgICAgIFBXUl9QVUNSQV9QQTlfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBpbiBQQTkgUHVsbC1VcCBzZXQgKi8KKyNkZWZpbmUgUFdSX1BVQ1JBX1BBMTBfUG9zICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX1BVQ1JBX1BBMTBfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfUFVDUkFfUEExMF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgUFdSX1BVQ1JBX1BBMTAgICAgICAgICAgICAgICAgIFBXUl9QVUNSQV9QQTEwX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBpbiBQQTEwIFB1bGwtVXAgc2V0ICovCisjZGVmaW5lIFBXUl9QVUNSQV9QQTExX1BvcyAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9QVUNSQV9QQTExX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1BVQ1JBX1BBMTFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIFBXUl9QVUNSQV9QQTExICAgICAgICAgICAgICAgICBQV1JfUFVDUkFfUEExMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBQaW4gUEExMSBQdWxsLVVwIHNldCAqLworI2RlZmluZSBQV1JfUFVDUkFfUEExMl9Qb3MgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfUFVDUkFfUEExMl9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9QVUNSQV9QQTEyX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBQV1JfUFVDUkFfUEExMiAgICAgICAgICAgICAgICAgUFdSX1BVQ1JBX1BBMTJfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGluIFBBMTIgUHVsbC1VcCBzZXQgKi8KKyNkZWZpbmUgUFdSX1BVQ1JBX1BBMTNfUG9zICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX1BVQ1JBX1BBMTNfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfUFVDUkFfUEExM19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgUFdSX1BVQ1JBX1BBMTMgICAgICAgICAgICAgICAgIFBXUl9QVUNSQV9QQTEzX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBpbiBQQTEzIFB1bGwtVXAgc2V0ICovCisjZGVmaW5lIFBXUl9QVUNSQV9QQTE1X1BvcyAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9QVUNSQV9QQTE1X01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1BVQ1JBX1BBMTVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovCisjZGVmaW5lIFBXUl9QVUNSQV9QQTE1ICAgICAgICAgICAgICAgICBQV1JfUFVDUkFfUEExNV9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBQaW4gUEExNSBQdWxsLVVwIHNldCAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBQV1JfUERDUkEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLworI2RlZmluZSBQV1JfUERDUkFfUEEwX1BvcyAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfUERDUkFfUEEwX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9QRENSQV9QQTBfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBQV1JfUERDUkFfUEEwICAgICAgICAgICAgICAgICAgUFdSX1BEQ1JBX1BBMF9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGluIFBBMCBQdWxsLURvd24gc2V0ICovCisjZGVmaW5lIFBXUl9QRENSQV9QQTFfUG9zICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9QRENSQV9QQTFfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1BEQ1JBX1BBMV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFBXUl9QRENSQV9QQTEgICAgICAgICAgICAgICAgICBQV1JfUERDUkFfUEExX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQaW4gUEExIFB1bGwtRG93biBzZXQgKi8KKyNkZWZpbmUgUFdSX1BEQ1JBX1BBMl9Qb3MgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX1BEQ1JBX1BBMl9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfUERDUkFfUEEyX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgUFdSX1BEQ1JBX1BBMiAgICAgICAgICAgICAgICAgIFBXUl9QRENSQV9QQTJfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBpbiBQQTIgUHVsbC1Eb3duIHNldCAqLworI2RlZmluZSBQV1JfUERDUkFfUEEzX1BvcyAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfUERDUkFfUEEzX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9QRENSQV9QQTNfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBQV1JfUERDUkFfUEEzICAgICAgICAgICAgICAgICAgUFdSX1BEQ1JBX1BBM19Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGluIFBBMyBQdWxsLURvd24gc2V0ICovCisjZGVmaW5lIFBXUl9QRENSQV9QQTRfUG9zICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9QRENSQV9QQTRfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1BEQ1JBX1BBNF9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIFBXUl9QRENSQV9QQTQgICAgICAgICAgICAgICAgICBQV1JfUERDUkFfUEE0X01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQaW4gUEE0IFB1bGwtRG93biBzZXQgKi8KKyNkZWZpbmUgUFdSX1BEQ1JBX1BBNV9Qb3MgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX1BEQ1JBX1BBNV9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfUERDUkFfUEE1X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgUFdSX1BEQ1JBX1BBNSAgICAgICAgICAgICAgICAgIFBXUl9QRENSQV9QQTVfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBpbiBQQTUgUHVsbC1Eb3duIHNldCAqLworI2RlZmluZSBQV1JfUERDUkFfUEE2X1BvcyAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfUERDUkFfUEE2X01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9QRENSQV9QQTZfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBQV1JfUERDUkFfUEE2ICAgICAgICAgICAgICAgICAgUFdSX1BEQ1JBX1BBNl9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGluIFBBNiBQdWxsLURvd24gc2V0ICovCisjZGVmaW5lIFBXUl9QRENSQV9QQTdfUG9zICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9QRENSQV9QQTdfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1BEQ1JBX1BBN19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIFBXUl9QRENSQV9QQTcgICAgICAgICAgICAgICAgICBQV1JfUERDUkFfUEE3X01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQaW4gUEE3IFB1bGwtRG93biBzZXQgKi8KKyNkZWZpbmUgUFdSX1BEQ1JBX1BBOF9Qb3MgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX1BEQ1JBX1BBOF9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfUERDUkFfUEE4X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgUFdSX1BEQ1JBX1BBOCAgICAgICAgICAgICAgICAgIFBXUl9QRENSQV9QQThfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBpbiBQQTggUHVsbC1Eb3duIHNldCAqLworI2RlZmluZSBQV1JfUERDUkFfUEE5X1BvcyAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfUERDUkFfUEE5X01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9QRENSQV9QQTlfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBQV1JfUERDUkFfUEE5ICAgICAgICAgICAgICAgICAgUFdSX1BEQ1JBX1BBOV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGluIFBBOSBQdWxsLURvd24gc2V0ICovCisjZGVmaW5lIFBXUl9QRENSQV9QQTEwX1BvcyAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9QRENSQV9QQTEwX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1BEQ1JBX1BBMTBfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIFBXUl9QRENSQV9QQTEwICAgICAgICAgICAgICAgICBQV1JfUERDUkFfUEExMF9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBQaW4gUEExMCBQdWxsLURvd24gc2V0ICovCisjZGVmaW5lIFBXUl9QRENSQV9QQTExX1BvcyAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9QRENSQV9QQTExX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1BEQ1JBX1BBMTFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIFBXUl9QRENSQV9QQTExICAgICAgICAgICAgICAgICBQV1JfUERDUkFfUEExMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBQaW4gUEExMSBQdWxsLURvd24gc2V0ICovCisjZGVmaW5lIFBXUl9QRENSQV9QQTEyX1BvcyAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9QRENSQV9QQTEyX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1BEQ1JBX1BBMTJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIFBXUl9QRENSQV9QQTEyICAgICAgICAgICAgICAgICBQV1JfUERDUkFfUEExMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBQaW4gUEExMiBQdWxsLURvd24gc2V0ICovCisjZGVmaW5lIFBXUl9QRENSQV9QQTE0X1BvcyAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9QRENSQV9QQTE0X01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1BEQ1JBX1BBMTRfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIFBXUl9QRENSQV9QQTE0ICAgICAgICAgICAgICAgICBQV1JfUERDUkFfUEExNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBQaW4gUEExNCBQdWxsLURvd24gc2V0ICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFBXUl9QVUNSQiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFBXUl9QVUNSQl9QQjBfUG9zICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9QVUNSQl9QQjBfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1BVQ1JCX1BCMF9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFBXUl9QVUNSQl9QQjAgICAgICAgICAgICAgICAgICBQV1JfUFVDUkJfUEIwX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQaW4gUEIwIFB1bGwtVXAgc2V0ICovCisjZGVmaW5lIFBXUl9QVUNSQl9QQjFfUG9zICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9QVUNSQl9QQjFfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1BVQ1JCX1BCMV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFBXUl9QVUNSQl9QQjEgICAgICAgICAgICAgICAgICBQV1JfUFVDUkJfUEIxX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQaW4gUEIxIFB1bGwtVXAgc2V0ICovCisjZGVmaW5lIFBXUl9QVUNSQl9QQjJfUG9zICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9QVUNSQl9QQjJfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1BVQ1JCX1BCMl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIFBXUl9QVUNSQl9QQjIgICAgICAgICAgICAgICAgICBQV1JfUFVDUkJfUEIyX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQaW4gUEIyIFB1bGwtVXAgc2V0ICovCisjZGVmaW5lIFBXUl9QVUNSQl9QQjNfUG9zICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9QVUNSQl9QQjNfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1BVQ1JCX1BCM19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIFBXUl9QVUNSQl9QQjMgICAgICAgICAgICAgICAgICBQV1JfUFVDUkJfUEIzX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQaW4gUEIzIFB1bGwtVXAgc2V0ICovCisjZGVmaW5lIFBXUl9QVUNSQl9QQjRfUG9zICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9QVUNSQl9QQjRfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1BVQ1JCX1BCNF9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIFBXUl9QVUNSQl9QQjQgICAgICAgICAgICAgICAgICBQV1JfUFVDUkJfUEI0X01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQaW4gUEI0IFB1bGwtVXAgc2V0ICovCisjZGVmaW5lIFBXUl9QVUNSQl9QQjVfUG9zICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9QVUNSQl9QQjVfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1BVQ1JCX1BCNV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIFBXUl9QVUNSQl9QQjUgICAgICAgICAgICAgICAgICBQV1JfUFVDUkJfUEI1X01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQaW4gUEI1IFB1bGwtVXAgc2V0ICovCisjZGVmaW5lIFBXUl9QVUNSQl9QQjZfUG9zICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9QVUNSQl9QQjZfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1BVQ1JCX1BCNl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIFBXUl9QVUNSQl9QQjYgICAgICAgICAgICAgICAgICBQV1JfUFVDUkJfUEI2X01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQaW4gUEI2IFB1bGwtVXAgc2V0ICovCisjZGVmaW5lIFBXUl9QVUNSQl9QQjdfUG9zICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9QVUNSQl9QQjdfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1BVQ1JCX1BCN19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIFBXUl9QVUNSQl9QQjcgICAgICAgICAgICAgICAgICBQV1JfUFVDUkJfUEI3X01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQaW4gUEI3IFB1bGwtVXAgc2V0ICovCisjZGVmaW5lIFBXUl9QVUNSQl9QQjhfUG9zICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9QVUNSQl9QQjhfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1BVQ1JCX1BCOF9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIFBXUl9QVUNSQl9QQjggICAgICAgICAgICAgICAgICBQV1JfUFVDUkJfUEI4X01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQaW4gUEI4IFB1bGwtVXAgc2V0ICovCisjZGVmaW5lIFBXUl9QVUNSQl9QQjlfUG9zICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9QVUNSQl9QQjlfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1BVQ1JCX1BCOV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIFBXUl9QVUNSQl9QQjkgICAgICAgICAgICAgICAgICBQV1JfUFVDUkJfUEI5X01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQaW4gUEI5IFB1bGwtVXAgc2V0ICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFBXUl9QRENSQiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFBXUl9QRENSQl9QQjBfUG9zICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9QRENSQl9QQjBfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1BEQ1JCX1BCMF9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFBXUl9QRENSQl9QQjAgICAgICAgICAgICAgICAgICBQV1JfUERDUkJfUEIwX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQaW4gUEIwIFB1bGwtRG93biBzZXQgKi8KKyNkZWZpbmUgUFdSX1BEQ1JCX1BCMV9Qb3MgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX1BEQ1JCX1BCMV9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfUERDUkJfUEIxX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgUFdSX1BEQ1JCX1BCMSAgICAgICAgICAgICAgICAgIFBXUl9QRENSQl9QQjFfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBpbiBQQjEgUHVsbC1Eb3duIHNldCAqLworI2RlZmluZSBQV1JfUERDUkJfUEIyX1BvcyAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfUERDUkJfUEIyX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9QRENSQl9QQjJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBQV1JfUERDUkJfUEIyICAgICAgICAgICAgICAgICAgUFdSX1BEQ1JCX1BCMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGluIFBCMiBQdWxsLURvd24gc2V0ICovCisjZGVmaW5lIFBXUl9QRENSQl9QQjNfUG9zICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9QRENSQl9QQjNfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1BEQ1JCX1BCM19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIFBXUl9QRENSQl9QQjMgICAgICAgICAgICAgICAgICBQV1JfUERDUkJfUEIzX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQaW4gUEIzIFB1bGwtRG93biBzZXQgKi8KKyNkZWZpbmUgUFdSX1BEQ1JCX1BCNV9Qb3MgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX1BEQ1JCX1BCNV9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfUERDUkJfUEI1X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgUFdSX1BEQ1JCX1BCNSAgICAgICAgICAgICAgICAgIFBXUl9QRENSQl9QQjVfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBpbiBQQjUgUHVsbC1Eb3duIHNldCAqLworI2RlZmluZSBQV1JfUERDUkJfUEI2X1BvcyAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfUERDUkJfUEI2X01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9QRENSQl9QQjZfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBQV1JfUERDUkJfUEI2ICAgICAgICAgICAgICAgICAgUFdSX1BEQ1JCX1BCNl9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGluIFBCNiBQdWxsLURvd24gc2V0ICovCisjZGVmaW5lIFBXUl9QRENSQl9QQjdfUG9zICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9QRENSQl9QQjdfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1BEQ1JCX1BCN19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIFBXUl9QRENSQl9QQjcgICAgICAgICAgICAgICAgICBQV1JfUERDUkJfUEI3X01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQaW4gUEI3IFB1bGwtRG93biBzZXQgKi8KKyNkZWZpbmUgUFdSX1BEQ1JCX1BCOF9Qb3MgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX1BEQ1JCX1BCOF9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfUERDUkJfUEI4X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgUFdSX1BEQ1JCX1BCOCAgICAgICAgICAgICAgICAgIFBXUl9QRENSQl9QQjhfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBpbiBQQjggUHVsbC1Eb3duIHNldCAqLworI2RlZmluZSBQV1JfUERDUkJfUEI5X1BvcyAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfUERDUkJfUEI5X01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9QRENSQl9QQjlfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBQV1JfUERDUkJfUEI5ICAgICAgICAgICAgICAgICAgUFdSX1BEQ1JCX1BCOV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGluIFBCOSBQdWxsLURvd24gc2V0ICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFBXUl9QVUNSQyByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFBXUl9QVUNSQ19QQzE0X1BvcyAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9QVUNSQ19QQzE0X01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX1BVQ1JDX1BDMTRfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIFBXUl9QVUNSQ19QQzE0ICAgICAgICAgICAgICAgICBQV1JfUFVDUkNfUEMxNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBQaW4gUEMxNCBQdWxsLVVwIHNldCAqLworI2RlZmluZSBQV1JfUFVDUkNfUEMxNV9Qb3MgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfUFVDUkNfUEMxNV9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9QVUNSQ19QQzE1X1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLworI2RlZmluZSBQV1JfUFVDUkNfUEMxNSAgICAgICAgICAgICAgICAgUFdSX1BVQ1JDX1BDMTVfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGluIFBDMTUgUHVsbC1VcCBzZXQgKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUFdSX1BEQ1JDIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUFdSX1BEQ1JDX1BDMTRfUG9zICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX1BEQ1JDX1BDMTRfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfUERDUkNfUEMxNF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgUFdSX1BEQ1JDX1BDMTQgICAgICAgICAgICAgICAgIFBXUl9QRENSQ19QQzE0X01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBpbiBQQzE0IFB1bGwtRG93biBzZXQgKi8KKyNkZWZpbmUgUFdSX1BEQ1JDX1BDMTVfUG9zICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX1BEQ1JDX1BDMTVfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfUERDUkNfUEMxNV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgUFdSX1BEQ1JDX1BDMTUgICAgICAgICAgICAgICAgIFBXUl9QRENSQ19QQzE1X01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBpbiBQQzE1IFB1bGwtRG93biBzZXQgKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUFdSX1BVQ1JFIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUFdSX1BVQ1JFX1BFNF9Qb3MgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX1BVQ1JFX1BFNF9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfUFVDUkVfUEU0X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgUFdSX1BVQ1JFX1BFNCAgICAgICAgICAgICAgICAgIFBXUl9QVUNSRV9QRTRfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBpbiBQRTQgUHVsbC1VcCBzZXQgKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUFdSX1BEQ1JFIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUFdSX1BEQ1JFX1BFNF9Qb3MgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX1BEQ1JFX1BFNF9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfUERDUkVfUEU0X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgUFdSX1BEQ1JFX1BFNCAgICAgICAgICAgICAgICAgIFBXUl9QRENSRV9QRTRfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBpbiBQRTQgUHVsbC1Eb3duIHNldCAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBQV1JfUFVDUkggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLworI2RlZmluZSBQV1JfUFVDUkhfUEgzX1BvcyAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfUFVDUkhfUEgzX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9QVUNSSF9QSDNfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBQV1JfUFVDUkhfUEgzICAgICAgICAgICAgICAgICAgUFdSX1BVQ1JIX1BIM19Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGluIFBIMyBQdWxsLVVwIHNldCAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBQV1JfUERDUkggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLworI2RlZmluZSBQV1JfUERDUkhfUEgzX1BvcyAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfUERDUkhfUEgzX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9QRENSSF9QSDNfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBQV1JfUERDUkhfUEgzICAgICAgICAgICAgICAgICAgUFdSX1BEQ1JIX1BIM19Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGluIFBIMyBQdWxsLURvd24gc2V0ICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFBXUl9DMkNSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFBXUl9DMkNSMV9MUE1TX1BvcyAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9DMkNSMV9MUE1TX01zayAgICAgICAgICAgICAoMHg3VUwgPDwgUFdSX0MyQ1IxX0xQTVNfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA3ICovCisjZGVmaW5lIFBXUl9DMkNSMV9MUE1TICAgICAgICAgICAgICAgICBQV1JfQzJDUjFfTFBNU19Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBMb3cgUG93ZXIgTW9kZSBTZWxlY3Rpb24gZm9yIENQVTIgKi8KKyNkZWZpbmUgUFdSX0MyQ1IxX0xQTVNfMCAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DMkNSMV9MUE1TX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgUFdSX0MyQ1IxX0xQTVNfMSAgICAgICAgICAgICAgICgweDJVIDw8IFBXUl9DMkNSMV9MUE1TX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgUFdSX0MyQ1IxX0xQTVNfMiAgICAgICAgICAgICAgICgweDRVIDw8IFBXUl9DMkNSMV9MUE1TX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKworI2RlZmluZSBQV1JfQzJDUjFfRlBEUl9Qb3MgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfQzJDUjFfRlBEUl9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9DMkNSMV9GUERSX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBQV1JfQzJDUjFfRlBEUiAgICAgICAgICAgICAgICAgUFdSX0MyQ1IxX0ZQRFJfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgRmxhc2ggcG93ZXIgZG93biBtb2RlIGR1cmluZyBMUHJ1biBmb3IgQ1BVMiAqLworCisjZGVmaW5lIFBXUl9DMkNSMV9GUERTX1BvcyAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9DMkNSMV9GUERTX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX0MyQ1IxX0ZQRFNfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIFBXUl9DMkNSMV9GUERTICAgICAgICAgICAgICAgICBQV1JfQzJDUjFfRlBEU19Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBGbGFzaCBwb3dlciBkb3duIG1vZGUgZHVyaW5nIExQc2xlZXAgZm9yIENQVTIgKi8KKworI2RlZmluZSBQV1JfQzJDUjFfQkxFRVdLVVBfUG9zICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfQzJDUjFfQkxFRVdLVVBfTXNrICAgICAgICAgKDB4MVVMIDw8IFBXUl9DMkNSMV9CTEVFV0tVUF9Qb3MpICAgICAgIC8qITwgMHgwMDAwODAwMCAqLworI2RlZmluZSBQV1JfQzJDUjFfQkxFRVdLVVAgICAgICAgICAgICAgUFdSX0MyQ1IxX0JMRUVXS1VQX01zayAgICAgICAgICAgICAgICAgIC8qITwgUmFkaW8gQkxFIGV4dGVybmFsIHdha2V1cCBzaWduYWwgKi8KKworI2RlZmluZSBQV1JfQzJDUjFfODAyRVdLVVBfUG9zICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfQzJDUjFfODAyRVdLVVBfTXNrICAgICAgICAgKDB4MVVMIDw8IFBXUl9DMkNSMV84MDJFV0tVUF9Qb3MpICAgICAgIC8qITwgMHgwMDAwODAwMCAqLworI2RlZmluZSBQV1JfQzJDUjFfODAyRVdLVVAgICAgICAgICAgICAgUFdSX0MyQ1IxXzgwMkVXS1VQX01zayAgICAgICAgICAgICAgICAgIC8qITwgUmFkaW8gODAyLjE1LjQgZXh0ZXJuYWwgd2FrZXVwIHNpZ25hbCAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBQV1JfQzJDUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBQV1JfQzJDUjNfRVdVUF9Qb3MgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfQzJDUjNfRVdVUF9Nc2sgICAgICAgICAgICAgKDB4MDlVTCA8PCBQV1JfQzJDUjNfRVdVUF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDkgKi8KKyNkZWZpbmUgUFdSX0MyQ1IzX0VXVVAgICAgICAgICAgICAgICAgIFBXUl9DMkNSM19FV1VQX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGUgYWxsIGV4dGVybmFsIFdha2UtVXAgbGluZXMgZm9yIENQVTIgKi8KKyNkZWZpbmUgUFdSX0MyQ1IzX0VXVVAxX1BvcyAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX0MyQ1IzX0VXVVAxX01zayAgICAgICAgICAgICgweDFVTCA8PCBQV1JfQzJDUjNfRVdVUDFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFBXUl9DMkNSM19FV1VQMSAgICAgICAgICAgICAgICBQV1JfQzJDUjNfRVdVUDFfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxlIGV4dGVybmFsIFdLVVAgUGluIDEgW2xpbmUgMF0gZm9yIENQVTIgKi8KKyNkZWZpbmUgUFdSX0MyQ1IzX0VXVVA0X1BvcyAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX0MyQ1IzX0VXVVA0X01zayAgICAgICAgICAgICgweDFVTCA8PCBQV1JfQzJDUjNfRVdVUDRfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIFBXUl9DMkNSM19FV1VQNCAgICAgICAgICAgICAgICBQV1JfQzJDUjNfRVdVUDRfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxlIGV4dGVybmFsIFdLVVAgUGluIDQgW2xpbmUgM10gZm9yIENQVTIgKi8KKworI2RlZmluZSBQV1JfQzJDUjNfRUJMRVdVUF9Qb3MgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfQzJDUjNfRUJMRVdVUF9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFBXUl9DMkNSM19FQkxFV1VQX1BvcykgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIFBXUl9DMkNSM19FQkxFV1VQICAgICAgICAgICAgICBQV1JfQzJDUjNfRUJMRVdVUF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxlIEJMRSBob3N0IHdha2V1cCBpbnRlcnJ1cHQgZm9yIENQVTIgKi8KKyNkZWZpbmUgUFdSX0MyQ1IzX0U4MDJXVVBfUG9zICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX0MyQ1IzX0U4MDJXVVBfTXNrICAgICAgICAgICgweDFVTCA8PCBQV1JfQzJDUjNfRTgwMldVUF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLworI2RlZmluZSBQV1JfQzJDUjNfRTgwMldVUCAgICAgICAgICAgICAgUFdSX0MyQ1IzX0U4MDJXVVBfTXNrICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGUgQkxFIGhvc3Qgd2FrZXVwIGludGVycnVwdCBmb3IgQ1BVMiAqLworCisjZGVmaW5lIFBXUl9DMkNSM19BUENfUG9zICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9DMkNSM19BUENfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX0MyQ1IzX0FQQ19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIFBXUl9DMkNSM19BUEMgICAgICAgICAgICAgICAgICBQV1JfQzJDUjNfQVBDX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBcHBseSBwdWxsLXVwIGFuZCBwdWxsLWRvd24gY29uZmlndXJhdGlvbiBmb3IgQ1BVMiAqLworCisjZGVmaW5lIFBXUl9DMkNSM19FSVdVTF9Qb3MgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9DMkNSM19FSVdVTF9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX0MyQ1IzX0VJV1VMX1BvcykgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovCisjZGVmaW5lIFBXUl9DMkNSM19FSVdVTCAgICAgICAgICAgICAgICBQV1JfQzJDUjNfRUlXVUxfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcm5hbCBXYWtlLVVwIGxpbmUgaW50ZXJydXB0IGZvciBDUFUyICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFBXUl9FWFRTQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBQV1JfRVhUU0NSX0MxQ1NTRl9Qb3MgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfRVhUU0NSX0MxQ1NTRl9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFBXUl9FWFRTQ1JfQzFDU1NGX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBQV1JfRVhUU0NSX0MxQ1NTRiAgICAgICAgICAgICAgUFdSX0VYVFNDUl9DMUNTU0ZfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQ2xlYXIgc3RhbmRieSBhbmQgc3RvcCBmbGFncyBmb3IgQ1BVMSAqLworI2RlZmluZSBQV1JfRVhUU0NSX0MyQ1NTRl9Qb3MgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfRVhUU0NSX0MyQ1NTRl9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFBXUl9FWFRTQ1JfQzJDU1NGX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBQV1JfRVhUU0NSX0MyQ1NTRiAgICAgICAgICAgICAgUFdSX0VYVFNDUl9DMkNTU0ZfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQ2xlYXIgc3RhbmRieSBhbmQgc3RvcCBmbGFncyBmb3IgQ1BVMiAqLworI2RlZmluZSBQV1JfRVhUU0NSX0NDUlBGX1BvcyAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfRVhUU0NSX0NDUlBGX01zayAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9FWFRTQ1JfQ0NSUEZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBQV1JfRVhUU0NSX0NDUlBGICAgICAgICAgICAgICAgUFdSX0VYVFNDUl9DQ1JQRl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgQ2xlYXIgY3JpdGljYWwgcmFkaW8gc3lzdGVtIHBoYXNlIGZsYWcgKi8KKworI2RlZmluZSBQV1JfRVhUU0NSX0MxU0JGX1BvcyAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfRVhUU0NSX0MxU0JGX01zayAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9FWFRTQ1JfQzFTQkZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBQV1JfRVhUU0NSX0MxU0JGICAgICAgICAgICAgICAgUFdSX0VYVFNDUl9DMVNCRl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgU3lzdGVtIHN0YW5kYnkgZmxhZyBmb3IgQ1BVMSAqLworI2RlZmluZSBQV1JfRVhUU0NSX0MxU1RPUEZfUG9zICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfRVhUU0NSX0MxU1RPUEZfTXNrICAgICAgICAgKDB4MVVMIDw8IFBXUl9FWFRTQ1JfQzFTVE9QRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBQV1JfRVhUU0NSX0MxU1RPUEYgICAgICAgICAgICAgUFdSX0VYVFNDUl9DMVNUT1BGX01zayAgICAgICAgICAgICAgICAgIC8qITwgU3lzdGVtIHN0b3AgZmxhZyBmb3IgQ1BVMSAqLworI2RlZmluZSBQV1JfRVhUU0NSX0MyU0JGX1BvcyAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfRVhUU0NSX0MyU0JGX01zayAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9FWFRTQ1JfQzJTQkZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLworI2RlZmluZSBQV1JfRVhUU0NSX0MyU0JGICAgICAgICAgICAgICAgUFdSX0VYVFNDUl9DMlNCRl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgU3lzdGVtIHN0YW5kYnkgZmxhZyBmb3IgQ1BVMiAqLworI2RlZmluZSBQV1JfRVhUU0NSX0MyU1RPUEZfUG9zICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBQV1JfRVhUU0NSX0MyU1RPUEZfTXNrICAgICAgICAgKDB4MVVMIDw8IFBXUl9FWFRTQ1JfQzJTVE9QRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLworI2RlZmluZSBQV1JfRVhUU0NSX0MyU1RPUEYgICAgICAgICAgICAgUFdSX0VYVFNDUl9DMlNUT1BGX01zayAgICAgICAgICAgICAgICAgIC8qITwgU3lzdGVtIHN0b3AgZmxhZyBmb3IgQ1BVMiAqLworCisjZGVmaW5lIFBXUl9FWFRTQ1JfQ1JQRl9Qb3MgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9FWFRTQ1JfQ1JQRl9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX0VYVFNDUl9DUlBGX1BvcykgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIFBXUl9FWFRTQ1JfQ1JQRiAgICAgICAgICAgICAgICBQV1JfRVhUU0NSX0NSUEZfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBDcml0aWNhbCByYWRpbyBzeXN0ZW0gcGhhc2UgZmxhZyAqLworCisjZGVmaW5lIFBXUl9FWFRTQ1JfQzFEU19Qb3MgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFBXUl9FWFRTQ1JfQzFEU19Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX0VYVFNDUl9DMURTX1BvcykgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIFBXUl9FWFRTQ1JfQzFEUyAgICAgICAgICAgICAgICBQV1JfRVhUU0NSX0MxRFNfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUxIGRlZXBzbGVlcCBtb2RlIGZsYWcgKi8KKyNkZWZpbmUgUFdSX0VYVFNDUl9DMkRTX1BvcyAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUFdSX0VYVFNDUl9DMkRTX01zayAgICAgICAgICAgICgweDFVTCA8PCBQV1JfRVhUU0NSX0MyRFNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgUFdSX0VYVFNDUl9DMkRTICAgICAgICAgICAgICAgIFBXUl9FWFRTQ1JfQzJEU19Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IENQVTIgZGVlcHNsZWVwIG1vZGUgZmxhZyAqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVBRFNQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisvKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFFVQURTUElfQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFFVQURTUElfQ1JfRU5fUG9zICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFFVQURTUElfQ1JfRU5fTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUVVBRFNQSV9DUl9FTl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFFVQURTUElfQ1JfRU4gICAgICAgICAgICAgICAgICBRVUFEU1BJX0NSX0VOX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGUgKi8KKyNkZWZpbmUgUVVBRFNQSV9DUl9BQk9SVF9Qb3MgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUVVBRFNQSV9DUl9BQk9SVF9Nc2sgICAgICAgICAgICgweDFVTCA8PCBRVUFEU1BJX0NSX0FCT1JUX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgUVVBRFNQSV9DUl9BQk9SVCAgICAgICAgICAgICAgIFFVQURTUElfQ1JfQUJPUlRfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IEFib3J0IHJlcXVlc3QgKi8KKyNkZWZpbmUgUVVBRFNQSV9DUl9ETUFFTl9Qb3MgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUVVBRFNQSV9DUl9ETUFFTl9Nc2sgICAgICAgICAgICgweDFVTCA8PCBRVUFEU1BJX0NSX0RNQUVOX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgUVVBRFNQSV9DUl9ETUFFTiAgICAgICAgICAgICAgIFFVQURTUElfQ1JfRE1BRU5fTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IERNQSBFbmFibGUgKi8KKyNkZWZpbmUgUVVBRFNQSV9DUl9UQ0VOX1BvcyAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUVVBRFNQSV9DUl9UQ0VOX01zayAgICAgICAgICAgICgweDFVTCA8PCBRVUFEU1BJX0NSX1RDRU5fUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgUVVBRFNQSV9DUl9UQ0VOICAgICAgICAgICAgICAgIFFVQURTUElfQ1JfVENFTl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVvdXQgQ291bnRlciBFbmFibGUgKi8KKyNkZWZpbmUgUVVBRFNQSV9DUl9TU0hJRlRfUG9zICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUVVBRFNQSV9DUl9TU0hJRlRfTXNrICAgICAgICAgICgweDFVTCA8PCBRVUFEU1BJX0NSX1NTSElGVF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgUVVBRFNQSV9DUl9TU0hJRlQgICAgICAgICAgICAgIFFVQURTUElfQ1JfU1NISUZUX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFNhbXBsZSBTaGlmdCAqLworI2RlZmluZSBRVUFEU1BJX0NSX0ZUSFJFU19Qb3MgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBRVUFEU1BJX0NSX0ZUSFJFU19Nc2sgICAgICAgICAgKDB4RlVMIDw8IFFVQURTUElfQ1JfRlRIUkVTX1BvcykgICAgICAgIC8qITwgMHgwMDAwMEYwMCAqLworI2RlZmluZSBRVUFEU1BJX0NSX0ZUSFJFUyAgICAgICAgICAgICAgUVVBRFNQSV9DUl9GVEhSRVNfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRlRIUkVTWzM6MF0gRklGTyBMZXZlbCAqLworI2RlZmluZSBRVUFEU1BJX0NSX1RFSUVfUG9zICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBRVUFEU1BJX0NSX1RFSUVfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFFVQURTUElfQ1JfVEVJRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBRVUFEU1BJX0NSX1RFSUUgICAgICAgICAgICAgICAgUVVBRFNQSV9DUl9URUlFX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNmZXIgRXJyb3IgSW50ZXJydXB0IEVuYWJsZSAqLworI2RlZmluZSBRVUFEU1BJX0NSX1RDSUVfUG9zICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBRVUFEU1BJX0NSX1RDSUVfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFFVQURTUElfQ1JfVENJRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLworI2RlZmluZSBRVUFEU1BJX0NSX1RDSUUgICAgICAgICAgICAgICAgUVVBRFNQSV9DUl9UQ0lFX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNmZXIgQ29tcGxldGUgSW50ZXJydXB0IEVuYWJsZSAqLworI2RlZmluZSBRVUFEU1BJX0NSX0ZUSUVfUG9zICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBRVUFEU1BJX0NSX0ZUSUVfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFFVQURTUElfQ1JfRlRJRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLworI2RlZmluZSBRVUFEU1BJX0NSX0ZUSUUgICAgICAgICAgICAgICAgUVVBRFNQSV9DUl9GVElFX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgRklGTyBUaHJlc2hvbGQgSW50ZXJydXB0IEVuYWJsZSAqLworI2RlZmluZSBRVUFEU1BJX0NSX1NNSUVfUG9zICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBRVUFEU1BJX0NSX1NNSUVfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFFVQURTUElfQ1JfU01JRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLworI2RlZmluZSBRVUFEU1BJX0NSX1NNSUUgICAgICAgICAgICAgICAgUVVBRFNQSV9DUl9TTUlFX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgU3RhdHVzIE1hdGNoIEludGVycnVwdCBFbmFibGUgKi8KKyNkZWZpbmUgUVVBRFNQSV9DUl9UT0lFX1BvcyAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUVVBRFNQSV9DUl9UT0lFX01zayAgICAgICAgICAgICgweDFVTCA8PCBRVUFEU1BJX0NSX1RPSUVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgUVVBRFNQSV9DUl9UT0lFICAgICAgICAgICAgICAgIFFVQURTUElfQ1JfVE9JRV9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVPdXQgSW50ZXJydXB0IEVuYWJsZSAqLworI2RlZmluZSBRVUFEU1BJX0NSX0FQTVNfUG9zICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBRVUFEU1BJX0NSX0FQTVNfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFFVQURTUElfQ1JfQVBNU19Qb3MpICAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLworI2RlZmluZSBRVUFEU1BJX0NSX0FQTVMgICAgICAgICAgICAgICAgUVVBRFNQSV9DUl9BUE1TX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgQXV0b21hdGljIFBvbGxpbmcgTW9kZSBTdG9wICovCisjZGVmaW5lIFFVQURTUElfQ1JfUE1NX1BvcyAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFFVQURTUElfQ1JfUE1NX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUVVBRFNQSV9DUl9QTU1fUG9zKSAgICAgICAgICAgLyohPCAweDAwODAwMDAwICovCisjZGVmaW5lIFFVQURTUElfQ1JfUE1NICAgICAgICAgICAgICAgICBRVUFEU1BJX0NSX1BNTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBQb2xsaW5nIE1hdGNoIE1vZGUgKi8KKyNkZWZpbmUgUVVBRFNQSV9DUl9QUkVTQ0FMRVJfUG9zICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUVVBRFNQSV9DUl9QUkVTQ0FMRVJfTXNrICAgICAgICgweEZGVUwgPDwgUVVBRFNQSV9DUl9QUkVTQ0FMRVJfUG9zKSAgICAvKiE8IDB4RkYwMDAwMDAgKi8KKyNkZWZpbmUgUVVBRFNQSV9DUl9QUkVTQ0FMRVIgICAgICAgICAgIFFVQURTUElfQ1JfUFJFU0NBTEVSX01zayAgICAgICAgICAgICAgICAvKiE8IFBSRVNDQUxFUls3OjBdIENsb2NrIHByZXNjYWxlciAqLworCisvKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBRVUFEU1BJX0RDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBRVUFEU1BJX0RDUl9DS01PREVfUG9zICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBRVUFEU1BJX0RDUl9DS01PREVfTXNrICAgICAgICAgKDB4MVVMIDw8IFFVQURTUElfRENSX0NLTU9ERV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBRVUFEU1BJX0RDUl9DS01PREUgICAgICAgICAgICAgUVVBRFNQSV9EQ1JfQ0tNT0RFX01zayAgICAgICAgICAgICAgICAgIC8qITwgTW9kZSAwIC8gTW9kZSAzICovCisjZGVmaW5lIFFVQURTUElfRENSX0NTSFRfUG9zICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFFVQURTUElfRENSX0NTSFRfTXNrICAgICAgICAgICAoMHg3VUwgPDwgUVVBRFNQSV9EQ1JfQ1NIVF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwNzAwICovCisjZGVmaW5lIFFVQURTUElfRENSX0NTSFQgICAgICAgICAgICAgICBRVUFEU1BJX0RDUl9DU0hUX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBDU0hUWzI6MF06IENoaXBTZWxlY3QgSGlnaCBUaW1lICovCisjZGVmaW5lIFFVQURTUElfRENSX0NTSFRfMCAgICAgICAgICAgICAoMHgxVSA8PCBRVUFEU1BJX0RDUl9DU0hUX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIFFVQURTUElfRENSX0NTSFRfMSAgICAgICAgICAgICAoMHgyVSA8PCBRVUFEU1BJX0RDUl9DU0hUX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIFFVQURTUElfRENSX0NTSFRfMiAgICAgICAgICAgICAoMHg0VSA8PCBRVUFEU1BJX0RDUl9DU0hUX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIFFVQURTUElfRENSX0ZTSVpFX1BvcyAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFFVQURTUElfRENSX0ZTSVpFX01zayAgICAgICAgICAoMHgxRlVMIDw8IFFVQURTUElfRENSX0ZTSVpFX1BvcykgICAgICAgLyohPCAweDAwMUYwMDAwICovCisjZGVmaW5lIFFVQURTUElfRENSX0ZTSVpFICAgICAgICAgICAgICBRVUFEU1BJX0RDUl9GU0laRV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBGU0laRVs0OjBdOiBGbGFzaCBTaXplICovCisKKy8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBRVUFEU1BJX1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBRVUFEU1BJX1NSX1RFRl9Qb3MgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBRVUFEU1BJX1NSX1RFRl9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFFVQURTUElfU1JfVEVGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBRVUFEU1BJX1NSX1RFRiAgICAgICAgICAgICAgICAgUVVBRFNQSV9TUl9URUZfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNmZXIgRXJyb3IgRmxhZyAqLworI2RlZmluZSBRVUFEU1BJX1NSX1RDRl9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBRVUFEU1BJX1NSX1RDRl9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFFVQURTUElfU1JfVENGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBRVUFEU1BJX1NSX1RDRiAgICAgICAgICAgICAgICAgUVVBRFNQSV9TUl9UQ0ZfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNmZXIgQ29tcGxldGUgRmxhZyAqLworI2RlZmluZSBRVUFEU1BJX1NSX0ZURl9Qb3MgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBRVUFEU1BJX1NSX0ZURl9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFFVQURTUElfU1JfRlRGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBRVUFEU1BJX1NSX0ZURiAgICAgICAgICAgICAgICAgUVVBRFNQSV9TUl9GVEZfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgRklGTyBUaHJlc2hsb2QgRmxhZyAqLworI2RlZmluZSBRVUFEU1BJX1NSX1NNRl9Qb3MgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBRVUFEU1BJX1NSX1NNRl9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFFVQURTUElfU1JfU01GX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBRVUFEU1BJX1NSX1NNRiAgICAgICAgICAgICAgICAgUVVBRFNQSV9TUl9TTUZfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgU3RhdHVzIE1hdGNoIEZsYWcgKi8KKyNkZWZpbmUgUVVBRFNQSV9TUl9UT0ZfUG9zICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUVVBRFNQSV9TUl9UT0ZfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBRVUFEU1BJX1NSX1RPRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgUVVBRFNQSV9TUl9UT0YgICAgICAgICAgICAgICAgIFFVQURTUElfU1JfVE9GX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVvdXQgRmxhZyAqLworI2RlZmluZSBRVUFEU1BJX1NSX0JVU1lfUG9zICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBRVUFEU1BJX1NSX0JVU1lfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFFVQURTUElfU1JfQlVTWV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBRVUFEU1BJX1NSX0JVU1kgICAgICAgICAgICAgICAgUVVBRFNQSV9TUl9CVVNZX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgQnVzeSAqLworI2RlZmluZSBRVUFEU1BJX1NSX0ZMRVZFTF9Qb3MgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBRVUFEU1BJX1NSX0ZMRVZFTF9Nc2sgICAgICAgICAgKDB4MUZVTCA8PCBRVUFEU1BJX1NSX0ZMRVZFTF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMUYwMCAqLworI2RlZmluZSBRVUFEU1BJX1NSX0ZMRVZFTCAgICAgICAgICAgICAgUVVBRFNQSV9TUl9GTEVWRUxfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRklGTyBUaHJlc2hsb2QgRmxhZyAqLworCisvKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUVVBRFNQSV9GQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUVVBRFNQSV9GQ1JfQ1RFRl9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUVVBRFNQSV9GQ1JfQ1RFRl9Nc2sgICAgICAgICAgICgweDFVTCA8PCBRVUFEU1BJX0ZDUl9DVEVGX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgUVVBRFNQSV9GQ1JfQ1RFRiAgICAgICAgICAgICAgIFFVQURTUElfRkNSX0NURUZfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IENsZWFyIFRyYW5zZmVyIEVycm9yIEZsYWcgKi8KKyNkZWZpbmUgUVVBRFNQSV9GQ1JfQ1RDRl9Qb3MgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUVVBRFNQSV9GQ1JfQ1RDRl9Nc2sgICAgICAgICAgICgweDFVTCA8PCBRVUFEU1BJX0ZDUl9DVENGX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgUVVBRFNQSV9GQ1JfQ1RDRiAgICAgICAgICAgICAgIFFVQURTUElfRkNSX0NUQ0ZfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IENsZWFyIFRyYW5zZmVyIENvbXBsZXRlIEZsYWcgKi8KKyNkZWZpbmUgUVVBRFNQSV9GQ1JfQ1NNRl9Qb3MgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUVVBRFNQSV9GQ1JfQ1NNRl9Nc2sgICAgICAgICAgICgweDFVTCA8PCBRVUFEU1BJX0ZDUl9DU01GX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgUVVBRFNQSV9GQ1JfQ1NNRiAgICAgICAgICAgICAgIFFVQURTUElfRkNSX0NTTUZfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IENsZWFyIFN0YXR1cyBNYXRjaCBGbGFnICovCisjZGVmaW5lIFFVQURTUElfRkNSX0NUT0ZfUG9zICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFFVQURTUElfRkNSX0NUT0ZfTXNrICAgICAgICAgICAoMHgxVUwgPDwgUVVBRFNQSV9GQ1JfQ1RPRl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIFFVQURTUElfRkNSX0NUT0YgICAgICAgICAgICAgICBRVUFEU1BJX0ZDUl9DVE9GX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBDbGVhciBUaW1lb3V0IEZsYWcgKi8KKworLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFFVQURTUElfRExSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFFVQURTUElfRExSX0RMX1BvcyAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFFVQURTUElfRExSX0RMX01zayAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IFFVQURTUElfRExSX0RMX1BvcykgICAgLyohPCAweEZGRkZGRkZGICovCisjZGVmaW5lIFFVQURTUElfRExSX0RMICAgICAgICAgICAgICAgICBRVUFEU1BJX0RMUl9ETF9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBETFszMTowXTogRGF0YSBMZW5ndGggKi8KKworLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFFVQURTUElfQ0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFFVQURTUElfQ0NSX0lOU1RSVUNUSU9OX1BvcyAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFFVQURTUElfQ0NSX0lOU1RSVUNUSU9OX01zayAgICAoMHhGRlVMIDw8IFFVQURTUElfQ0NSX0lOU1RSVUNUSU9OX1BvcykgLyohPCAweDAwMDAwMEZGICovCisjZGVmaW5lIFFVQURTUElfQ0NSX0lOU1RSVUNUSU9OICAgICAgICBRVUFEU1BJX0NDUl9JTlNUUlVDVElPTl9Nc2sgICAgICAgICAgICAgLyohPCBJTlNUUlVDVElPTls3OjBdOiBJbnN0cnVjdGlvbiAqLworI2RlZmluZSBRVUFEU1BJX0NDUl9JTU9ERV9Qb3MgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBRVUFEU1BJX0NDUl9JTU9ERV9Nc2sgICAgICAgICAgKDB4M1VMIDw8IFFVQURTUElfQ0NSX0lNT0RFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDMwMCAqLworI2RlZmluZSBRVUFEU1BJX0NDUl9JTU9ERSAgICAgICAgICAgICAgUVVBRFNQSV9DQ1JfSU1PREVfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgSU1PREVbMTowXTogSW5zdHJ1Y3Rpb24gTW9kZSAqLworI2RlZmluZSBRVUFEU1BJX0NDUl9JTU9ERV8wICAgICAgICAgICAgKDB4MVUgPDwgUVVBRFNQSV9DQ1JfSU1PREVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBRVUFEU1BJX0NDUl9JTU9ERV8xICAgICAgICAgICAgKDB4MlUgPDwgUVVBRFNQSV9DQ1JfSU1PREVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBRVUFEU1BJX0NDUl9BRE1PREVfUG9zICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBRVUFEU1BJX0NDUl9BRE1PREVfTXNrICAgICAgICAgKDB4M1VMIDw8IFFVQURTUElfQ0NSX0FETU9ERV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMEMwMCAqLworI2RlZmluZSBRVUFEU1BJX0NDUl9BRE1PREUgICAgICAgICAgICAgUVVBRFNQSV9DQ1JfQURNT0RFX01zayAgICAgICAgICAgICAgICAgIC8qITwgQURNT0RFWzE6MF06IEFkZHJlc3MgTW9kZSAqLworI2RlZmluZSBRVUFEU1BJX0NDUl9BRE1PREVfMCAgICAgICAgICAgKDB4MVUgPDwgUVVBRFNQSV9DQ1JfQURNT0RFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLworI2RlZmluZSBRVUFEU1BJX0NDUl9BRE1PREVfMSAgICAgICAgICAgKDB4MlUgPDwgUVVBRFNQSV9DQ1JfQURNT0RFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLworI2RlZmluZSBRVUFEU1BJX0NDUl9BRFNJWkVfUG9zICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBRVUFEU1BJX0NDUl9BRFNJWkVfTXNrICAgICAgICAgKDB4M1VMIDw8IFFVQURTUElfQ0NSX0FEU0laRV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMzAwMCAqLworI2RlZmluZSBRVUFEU1BJX0NDUl9BRFNJWkUgICAgICAgICAgICAgUVVBRFNQSV9DQ1JfQURTSVpFX01zayAgICAgICAgICAgICAgICAgIC8qITwgQURTSVpFWzE6MF06IEFkZHJlc3MgU2l6ZSAqLworI2RlZmluZSBRVUFEU1BJX0NDUl9BRFNJWkVfMCAgICAgICAgICAgKDB4MVUgPDwgUVVBRFNQSV9DQ1JfQURTSVpFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBRVUFEU1BJX0NDUl9BRFNJWkVfMSAgICAgICAgICAgKDB4MlUgPDwgUVVBRFNQSV9DQ1JfQURTSVpFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLworI2RlZmluZSBRVUFEU1BJX0NDUl9BQk1PREVfUG9zICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBRVUFEU1BJX0NDUl9BQk1PREVfTXNrICAgICAgICAgKDB4M1VMIDw8IFFVQURTUElfQ0NSX0FCTU9ERV9Qb3MpICAgICAgIC8qITwgMHgwMDAwQzAwMCAqLworI2RlZmluZSBRVUFEU1BJX0NDUl9BQk1PREUgICAgICAgICAgICAgUVVBRFNQSV9DQ1JfQUJNT0RFX01zayAgICAgICAgICAgICAgICAgIC8qITwgQUJNT0RFWzE6MF06IEFsdGVybmF0ZSBCeXRlcyBNb2RlICovCisjZGVmaW5lIFFVQURTUElfQ0NSX0FCTU9ERV8wICAgICAgICAgICAoMHgxVSA8PCBRVUFEU1BJX0NDUl9BQk1PREVfUG9zKSAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIFFVQURTUElfQ0NSX0FCTU9ERV8xICAgICAgICAgICAoMHgyVSA8PCBRVUFEU1BJX0NDUl9BQk1PREVfUG9zKSAgICAgICAgLyohPCAweDAwMDA4MDAwICovCisjZGVmaW5lIFFVQURTUElfQ0NSX0FCU0laRV9Qb3MgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFFVQURTUElfQ0NSX0FCU0laRV9Nc2sgICAgICAgICAoMHgzVUwgPDwgUVVBRFNQSV9DQ1JfQUJTSVpFX1BvcykgICAgICAgLyohPCAweDAwMDMwMDAwICovCisjZGVmaW5lIFFVQURTUElfQ0NSX0FCU0laRSAgICAgICAgICAgICBRVUFEU1BJX0NDUl9BQlNJWkVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBBQlNJWkVbMTowXTogSW5zdHJ1Y3Rpb24gTW9kZSAqLworI2RlZmluZSBRVUFEU1BJX0NDUl9BQlNJWkVfMCAgICAgICAgICAgKDB4MVUgPDwgUVVBRFNQSV9DQ1JfQUJTSVpFX1BvcykgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBRVUFEU1BJX0NDUl9BQlNJWkVfMSAgICAgICAgICAgKDB4MlUgPDwgUVVBRFNQSV9DQ1JfQUJTSVpFX1BvcykgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLworI2RlZmluZSBRVUFEU1BJX0NDUl9EQ1lDX1BvcyAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBRVUFEU1BJX0NDUl9EQ1lDX01zayAgICAgICAgICAgKDB4MUZVTCA8PCBRVUFEU1BJX0NDUl9EQ1lDX1BvcykgICAgICAgIC8qITwgMHgwMDdDMDAwMCAqLworI2RlZmluZSBRVUFEU1BJX0NDUl9EQ1lDICAgICAgICAgICAgICAgUVVBRFNQSV9DQ1JfRENZQ19Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgRENZQ1s0OjBdOiBEdW1teSBDeWNsZXMgKi8KKyNkZWZpbmUgUVVBRFNQSV9DQ1JfRE1PREVfUG9zICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUVVBRFNQSV9DQ1JfRE1PREVfTXNrICAgICAgICAgICgweDNVTCA8PCBRVUFEU1BJX0NDUl9ETU9ERV9Qb3MpICAgICAgICAvKiE8IDB4MDMwMDAwMDAgKi8KKyNkZWZpbmUgUVVBRFNQSV9DQ1JfRE1PREUgICAgICAgICAgICAgIFFVQURTUElfQ0NSX0RNT0RFX01zayAgICAgICAgICAgICAgICAgICAvKiE8IERNT0RFWzE6MF06IERhdGEgTW9kZSAqLworI2RlZmluZSBRVUFEU1BJX0NDUl9ETU9ERV8wICAgICAgICAgICAgKDB4MVUgPDwgUVVBRFNQSV9DQ1JfRE1PREVfUG9zKSAgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLworI2RlZmluZSBRVUFEU1BJX0NDUl9ETU9ERV8xICAgICAgICAgICAgKDB4MlUgPDwgUVVBRFNQSV9DQ1JfRE1PREVfUG9zKSAgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLworI2RlZmluZSBRVUFEU1BJX0NDUl9GTU9ERV9Qb3MgICAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBRVUFEU1BJX0NDUl9GTU9ERV9Nc2sgICAgICAgICAgKDB4M1VMIDw8IFFVQURTUElfQ0NSX0ZNT0RFX1BvcykgICAgICAgIC8qITwgMHgwQzAwMDAwMCAqLworI2RlZmluZSBRVUFEU1BJX0NDUl9GTU9ERSAgICAgICAgICAgICAgUVVBRFNQSV9DQ1JfRk1PREVfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRk1PREVbMTowXTogRnVuY3Rpb25hbCBNb2RlICovCisjZGVmaW5lIFFVQURTUElfQ0NSX0ZNT0RFXzAgICAgICAgICAgICAoMHgxVSA8PCBRVUFEU1BJX0NDUl9GTU9ERV9Qb3MpICAgICAgICAgLyohPCAweDA0MDAwMDAwICovCisjZGVmaW5lIFFVQURTUElfQ0NSX0ZNT0RFXzEgICAgICAgICAgICAoMHgyVSA8PCBRVUFEU1BJX0NDUl9GTU9ERV9Qb3MpICAgICAgICAgLyohPCAweDA4MDAwMDAwICovCisjZGVmaW5lIFFVQURTUElfQ0NSX1NJT09fUG9zICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFFVQURTUElfQ0NSX1NJT09fTXNrICAgICAgICAgICAoMHgxVUwgPDwgUVVBRFNQSV9DQ1JfU0lPT19Qb3MpICAgICAgICAgLyohPCAweDEwMDAwMDAwICovCisjZGVmaW5lIFFVQURTUElfQ0NSX1NJT08gICAgICAgICAgICAgICBRVUFEU1BJX0NDUl9TSU9PX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBTSU9POiBTZW5kIEluc3RydWN0aW9uIE9ubHkgT25jZSBNb2RlICovCisjZGVmaW5lIFFVQURTUElfQ0NSX0REUk1fUG9zICAgICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFFVQURTUElfQ0NSX0REUk1fTXNrICAgICAgICAgICAoMHgxVUwgPDwgUVVBRFNQSV9DQ1JfRERSTV9Qb3MpICAgICAgICAgLyohPCAweDgwMDAwMDAwICovCisjZGVmaW5lIFFVQURTUElfQ0NSX0REUk0gICAgICAgICAgICAgICBRVUFEU1BJX0NDUl9ERFJNX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBERFJNOiBEb3VibGUgRGF0YSBSYXRlIE1vZGUgKi8KKworLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFFVQURTUElfQVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFFVQURTUElfQVJfQUREUkVTU19Qb3MgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFFVQURTUElfQVJfQUREUkVTU19Nc2sgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IFFVQURTUElfQVJfQUREUkVTU19Qb3MpIC8qITwgMHhGRkZGRkZGRiAqLworI2RlZmluZSBRVUFEU1BJX0FSX0FERFJFU1MgICAgICAgICAgICAgUVVBRFNQSV9BUl9BRERSRVNTX01zayAgICAgICAgICAgICAgICAgIC8qITwgQUREUkVTU1szMTowXTogQWRkcmVzcyAqLworCisvKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUVVBRFNQSV9BQlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUVVBRFNQSV9BQlJfQUxURVJOQVRFX1BvcyAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUVVBRFNQSV9BQlJfQUxURVJOQVRFX01zayAgICAgICgweEZGRkZGRkZGVUwgPDwgUVVBRFNQSV9BQlJfQUxURVJOQVRFX1BvcykgLyohPCAweEZGRkZGRkZGICovCisjZGVmaW5lIFFVQURTUElfQUJSX0FMVEVSTkFURSAgICAgICAgICBRVUFEU1BJX0FCUl9BTFRFUk5BVEVfTXNrICAgICAgICAgICAgICAgLyohPCBBTFRFUk5BVEVbMzE6MF06IEFsdGVybmF0ZSBCeXRlcyAqLworCisvKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUVVBRFNQSV9EUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUVVBRFNQSV9EUl9EQVRBX1BvcyAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUVVBRFNQSV9EUl9EQVRBX01zayAgICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgUVVBRFNQSV9EUl9EQVRBX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8KKyNkZWZpbmUgUVVBRFNQSV9EUl9EQVRBICAgICAgICAgICAgICAgIFFVQURTUElfRFJfREFUQV9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IERBVEFbMzE6MF06IERhdGEgKi8KKworLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFFVQURTUElfUFNNS1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovCisjZGVmaW5lIFFVQURTUElfUFNNS1JfTUFTS19Qb3MgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFFVQURTUElfUFNNS1JfTUFTS19Nc2sgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IFFVQURTUElfUFNNS1JfTUFTS19Qb3MpIC8qITwgMHhGRkZGRkZGRiAqLworI2RlZmluZSBRVUFEU1BJX1BTTUtSX01BU0sgICAgICAgICAgICAgUVVBRFNQSV9QU01LUl9NQVNLX01zayAgICAgICAgICAgICAgICAgIC8qITwgTUFTS1szMTowXTogU3RhdHVzIE1hc2sgKi8KKworLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFFVQURTUElfUFNNQVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovCisjZGVmaW5lIFFVQURTUElfUFNNQVJfTUFUQ0hfUG9zICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFFVQURTUElfUFNNQVJfTUFUQ0hfTXNrICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IFFVQURTUElfUFNNQVJfTUFUQ0hfUG9zKSAvKiE8IDB4RkZGRkZGRkYgKi8KKyNkZWZpbmUgUVVBRFNQSV9QU01BUl9NQVRDSCAgICAgICAgICAgIFFVQURTUElfUFNNQVJfTUFUQ0hfTXNrICAgICAgICAgICAgICAgICAvKiE8IE1BVENIWzMxOjBdOiBTdGF0dXMgTWF0Y2ggKi8KKworLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFFVQURTUElfUElSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUVVBRFNQSV9QSVJfSU5URVJWQUxfUG9zICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUVVBRFNQSV9QSVJfSU5URVJWQUxfTXNrICAgICAgICgweEZGRkZVTCA8PCBRVUFEU1BJX1BJUl9JTlRFUlZBTF9Qb3MpICAvKiE8IDB4MDAwMEZGRkYgKi8KKyNkZWZpbmUgUVVBRFNQSV9QSVJfSU5URVJWQUwgICAgICAgICAgIFFVQURTUElfUElSX0lOVEVSVkFMX01zayAgICAgICAgICAgICAgICAvKiE8IElOVEVSVkFMWzE1OjBdOiBQb2xsaW5nIEludGVydmFsICovCisKKy8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBRVUFEU1BJX0xQVFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLworI2RlZmluZSBRVUFEU1BJX0xQVFJfVElNRU9VVF9Qb3MgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBRVUFEU1BJX0xQVFJfVElNRU9VVF9Nc2sgICAgICAgKDB4RkZGRlVMIDw8IFFVQURTUElfTFBUUl9USU1FT1VUX1BvcykgIC8qITwgMHgwMDAwRkZGRiAqLworI2RlZmluZSBRVUFEU1BJX0xQVFJfVElNRU9VVCAgICAgICAgICAgUVVBRFNQSV9MUFRSX1RJTUVPVVRfTXNrICAgICAgICAgICAgICAgIC8qITwgVElNRU9VVFsxNTowXTogVGltZW91dCBwZXJpb2QgKi8KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisvKiAgICAgICAgICAgICAgICAgICAgICAgICBSZXNldCBhbmQgQ2xvY2sgQ29udHJvbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKgorKiBAYnJpZWYgU3BlY2lmaWMgZGV2aWNlIGZlYXR1cmUgZGVmaW5pdGlvbnMKKyovCisjZGVmaW5lIFJDQ19TTVBTX1NVUFBPUlQKKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUkNDX0NSX01TSU9OX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NSX01TSU9OX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ1JfTVNJT05fUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgUkNDX0NSX01TSU9OICAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DUl9NU0lPTl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVybmFsIE11bHRpIFNwZWVkIG9zY2lsbGF0b3IgKE1TSSkgY2xvY2sgZW5hYmxlICovCisjZGVmaW5lIFJDQ19DUl9NU0lSRFlfUG9zICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DUl9NU0lSRFlfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NSX01TSVJEWV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFJDQ19DUl9NU0lSRFkgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfTVNJUkRZX01zayAgICAgICAgICAgICAgICAgLyohPCBJbnRlcm5hbCBNdWx0aSBTcGVlZCBvc2NpbGxhdG9yIChNU0kpIGNsb2NrIHJlYWR5IGZsYWcgKi8KKyNkZWZpbmUgUkNDX0NSX01TSVBMTEVOX1BvcyAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NSX01TSVBMTEVOX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ1JfTVNJUExMRU5fUG9zKSAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgUkNDX0NSX01TSVBMTEVOICAgICAgICAgICAgICAgICAgICAgIFJDQ19DUl9NU0lQTExFTl9Nc2sgICAgICAgICAgICAgICAvKiE8IEludGVybmFsIE11bHRpIFNwZWVkIG9zY2lsbGF0b3IgKE1TSSkgUExMIGVuYWJsZSAqLworCisvKiE8IE1TSVJBTkdFIGNvbmZpZ3VyYXRpb24gOiAxMiBmcmVxdWVuY3kgcmFuZ2VzIGF2YWlsYWJsZSAqLworI2RlZmluZSBSQ0NfQ1JfTVNJUkFOR0VfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ1JfTVNJUkFOR0VfTXNrICAgICAgICAgICAgICAgICAgKDB4RlVMIDw8IFJDQ19DUl9NU0lSQU5HRV9Qb3MpICAgIC8qITwgMHgwMDAwMDBGMCAqLworI2RlZmluZSBSQ0NfQ1JfTVNJUkFOR0UgICAgICAgICAgICAgICAgICAgICAgUkNDX0NSX01TSVJBTkdFX01zayAgICAgICAgICAgICAgIC8qITwgSW50ZXJuYWwgTXVsdGkgU3BlZWQgb3NjaWxsYXRvciAoTVNJKSBjbG9jayBSYW5nZSAqLworI2RlZmluZSBSQ0NfQ1JfTVNJUkFOR0VfMCAgICAgICAgICAgICAgICAgICAgKDB4MFUgPDwgUkNDX0NSX01TSVJBTkdFX1BvcykgICAgIC8qITwgMHgwMDAwMDAwMCAqLworI2RlZmluZSBSQ0NfQ1JfTVNJUkFOR0VfMSAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NSX01TSVJBTkdFX1BvcykgICAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBSQ0NfQ1JfTVNJUkFOR0VfMiAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX0NSX01TSVJBTkdFX1BvcykgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBSQ0NfQ1JfTVNJUkFOR0VfMyAgICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgUkNDX0NSX01TSVJBTkdFX1BvcykgICAgIC8qITwgMHgwMDAwMDAzMCAqLworI2RlZmluZSBSQ0NfQ1JfTVNJUkFOR0VfNCAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUkNDX0NSX01TSVJBTkdFX1BvcykgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBSQ0NfQ1JfTVNJUkFOR0VfNSAgICAgICAgICAgICAgICAgICAgKDB4NVUgPDwgUkNDX0NSX01TSVJBTkdFX1BvcykgICAgIC8qITwgMHgwMDAwMDA1MCAqLworI2RlZmluZSBSQ0NfQ1JfTVNJUkFOR0VfNiAgICAgICAgICAgICAgICAgICAgKDB4NlUgPDwgUkNDX0NSX01TSVJBTkdFX1BvcykgICAgIC8qITwgMHgwMDAwMDA2MCAqLworI2RlZmluZSBSQ0NfQ1JfTVNJUkFOR0VfNyAgICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgUkNDX0NSX01TSVJBTkdFX1BvcykgICAgIC8qITwgMHgwMDAwMDA3MCAqLworI2RlZmluZSBSQ0NfQ1JfTVNJUkFOR0VfOCAgICAgICAgICAgICAgICAgICAgKDB4OFUgPDwgUkNDX0NSX01TSVJBTkdFX1BvcykgICAgIC8qITwgMHgwMDAwMDA4MCAqLworI2RlZmluZSBSQ0NfQ1JfTVNJUkFOR0VfOSAgICAgICAgICAgICAgICAgICAgKDB4OVUgPDwgUkNDX0NSX01TSVJBTkdFX1BvcykgICAgIC8qITwgMHgwMDAwMDA5MCAqLworI2RlZmluZSBSQ0NfQ1JfTVNJUkFOR0VfMTAgICAgICAgICAgICAgICAgICAgKDB4QVUgPDwgUkNDX0NSX01TSVJBTkdFX1BvcykgICAgIC8qITwgMHgwMDAwMDBBMCAqLworI2RlZmluZSBSQ0NfQ1JfTVNJUkFOR0VfMTEgICAgICAgICAgICAgICAgICAgKDB4QlUgPDwgUkNDX0NSX01TSVJBTkdFX1BvcykgICAgIC8qITwgMHgwMDAwMDBCMCAqLworCisjZGVmaW5lIFJDQ19DUl9IU0lPTl9Qb3MgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DUl9IU0lPTl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NSX0hTSU9OX1BvcykgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIFJDQ19DUl9IU0lPTiAgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfSFNJT05fTXNrICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcm5hbCBIaWdoIFNwZWVkIG9zY2lsbGF0b3IgKEhTSTE2KSBjbG9jayBlbmFibGUgKi8KKyNkZWZpbmUgUkNDX0NSX0hTSUtFUk9OX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NSX0hTSUtFUk9OX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ1JfSFNJS0VST05fUG9zKSAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgUkNDX0NSX0hTSUtFUk9OICAgICAgICAgICAgICAgICAgICAgIFJDQ19DUl9IU0lLRVJPTl9Nc2sgICAgICAgICAgICAgICAvKiE8IEludGVybmFsIEhpZ2ggU3BlZWQgb3NjaWxsYXRvciAoSFNJMTYpIGNsb2NrIGVuYWJsZSBmb3Igc29tZSBJUHMgS2VybmVsICovCisjZGVmaW5lIFJDQ19DUl9IU0lSRFlfUG9zICAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DUl9IU0lSRFlfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NSX0hTSVJEWV9Qb3MpICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIFJDQ19DUl9IU0lSRFkgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfSFNJUkRZX01zayAgICAgICAgICAgICAgICAgLyohPCBJbnRlcm5hbCBIaWdoIFNwZWVkIG9zY2lsbGF0b3IgKEhTSTE2KSBjbG9jayByZWFkeSBmbGFnICovCisjZGVmaW5lIFJDQ19DUl9IU0lBU0ZTX1BvcyAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DUl9IU0lBU0ZTX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NSX0hTSUFTRlNfUG9zKSAgICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIFJDQ19DUl9IU0lBU0ZTICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfSFNJQVNGU19Nc2sgICAgICAgICAgICAgICAgLyohPCBIU0kxNiBBdXRvbWF0aWMgU3RhcnQgZnJvbSBTdG9wICovCisjZGVmaW5lIFJDQ19DUl9IU0lLRVJEWV9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DUl9IU0lLRVJEWV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NSX0hTSUtFUkRZX1BvcykgICAgIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBSQ0NfQ1JfSFNJS0VSRFkgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DUl9IU0lLRVJEWV9Nc2sgICAgICAgICAgICAgICAvKiE8IEludGVybmFsIEhpZ2ggU3BlZWQgb3NjaWxsYXRvciAoSFNJMTYpIGNsb2NrIGVuYWJsZSBmb3Igc29tZSBJUHMgS2VybmVsIHJlYWR5IGZsYWcqLworCisjZGVmaW5lIFJDQ19DUl9IU0VPTl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DUl9IU0VPTl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NSX0hTRU9OX1BvcykgICAgICAgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIFJDQ19DUl9IU0VPTiAgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfSFNFT05fTXNrICAgICAgICAgICAgICAgICAgLyohPCBFeHRlcm5hbCBIaWdoIFNwZWVkIG9zY2lsbGF0b3IgKEhTRSkgY2xvY2sgZW5hYmxlICovCisjZGVmaW5lIFJDQ19DUl9IU0VSRFlfUG9zICAgICAgICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DUl9IU0VSRFlfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NSX0hTRVJEWV9Qb3MpICAgICAgLyohPCAweDAwMDIwMDAwICovCisjZGVmaW5lIFJDQ19DUl9IU0VSRFkgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfSFNFUkRZX01zayAgICAgICAgICAgICAgICAgLyohPCBFeHRlcm5hbCBIaWdoIFNwZWVkIG9zY2lsbGF0b3IgKEhTRSkgY2xvY2sgcmVhZHkgKi8KKyNkZWZpbmUgUkNDX0NSX0hTRUJZUF9Qb3MgICAgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NSX0hTRUJZUF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ1JfSFNFQllQX1BvcykgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgUkNDX0NSX0hTRUJZUCAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DUl9IU0VCWVBfTXNrICAgICAgICAgICAgICAgICAvKiE8IEV4dGVybmFsIEhpZ2ggU3BlZWQgb3NjaWxsYXRvciAoSFNFKSBjbG9jayBieXBhc3MgKi8KKyNkZWZpbmUgUkNDX0NSX0NTU09OX1BvcyAgICAgICAgICAgICAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NSX0NTU09OX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ1JfQ1NTT05fUG9zKSAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgUkNDX0NSX0NTU09OICAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DUl9DU1NPTl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEhTRSBDbG9jayBTZWN1cml0eSBTeXN0ZW0gZW5hYmxlICovCisjZGVmaW5lIFJDQ19DUl9IU0VQUkVfUG9zICAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DUl9IU0VQUkVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NSX0hTRVBSRV9Qb3MpICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLworI2RlZmluZSBSQ0NfQ1JfSFNFUFJFICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NSX0hTRVBSRV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEhTRSBzeXNjbGsgcHJlc2NhbGVyICovCisKKyNkZWZpbmUgUkNDX0NSX1BMTE9OX1BvcyAgICAgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NSX1BMTE9OX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ1JfUExMT05fUG9zKSAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8KKyNkZWZpbmUgUkNDX0NSX1BMTE9OICAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DUl9QTExPTl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFN5c3RlbSBQTEwgY2xvY2sgZW5hYmxlICovCisjZGVmaW5lIFJDQ19DUl9QTExSRFlfUG9zICAgICAgICAgICAgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DUl9QTExSRFlfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NSX1BMTFJEWV9Qb3MpICAgICAgLyohPCAweDAyMDAwMDAwICovCisjZGVmaW5lIFJDQ19DUl9QTExSRFkgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfUExMUkRZX01zayAgICAgICAgICAgICAgICAgLyohPCBTeXN0ZW0gUExMIGNsb2NrIHJlYWR5ICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19JQ1NDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLworLyohPCBNU0lDQUwgY29uZmlndXJhdGlvbiAqLworI2RlZmluZSBSQ0NfSUNTQ1JfTVNJQ0FMX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfSUNTQ1JfTVNJQ0FMX01zayAgICAgICAgICAgICAgICAgKDB4RkZVTCA8PCBSQ0NfSUNTQ1JfTVNJQ0FMX1BvcykgIC8qITwgMHgwMDAwMDBGRiAqLworI2RlZmluZSBSQ0NfSUNTQ1JfTVNJQ0FMICAgICAgICAgICAgICAgICAgICAgUkNDX0lDU0NSX01TSUNBTF9Nc2sgICAgICAgICAgICAgIC8qITwgTVNJQ0FMWzc6MF0gYml0cyAqLworI2RlZmluZSBSQ0NfSUNTQ1JfTVNJQ0FMXzAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IFJDQ19JQ1NDUl9NU0lDQUxfUG9zKSAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBSQ0NfSUNTQ1JfTVNJQ0FMXzEgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IFJDQ19JQ1NDUl9NU0lDQUxfUG9zKSAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBSQ0NfSUNTQ1JfTVNJQ0FMXzIgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IFJDQ19JQ1NDUl9NU0lDQUxfUG9zKSAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBSQ0NfSUNTQ1JfTVNJQ0FMXzMgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IFJDQ19JQ1NDUl9NU0lDQUxfUG9zKSAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBSQ0NfSUNTQ1JfTVNJQ0FMXzQgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IFJDQ19JQ1NDUl9NU0lDQUxfUG9zKSAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBSQ0NfSUNTQ1JfTVNJQ0FMXzUgICAgICAgICAgICAgICAgICAgKDB4MjBVIDw8IFJDQ19JQ1NDUl9NU0lDQUxfUG9zKSAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBSQ0NfSUNTQ1JfTVNJQ0FMXzYgICAgICAgICAgICAgICAgICAgKDB4NDBVIDw8IFJDQ19JQ1NDUl9NU0lDQUxfUG9zKSAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBSQ0NfSUNTQ1JfTVNJQ0FMXzcgICAgICAgICAgICAgICAgICAgKDB4ODBVIDw8IFJDQ19JQ1NDUl9NU0lDQUxfUG9zKSAgIC8qITwgMHgwMDAwMDA4MCAqLworCisvKiE8IE1TSVRSSU0gY29uZmlndXJhdGlvbiAqLworI2RlZmluZSBSQ0NfSUNTQ1JfTVNJVFJJTV9Qb3MgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfSUNTQ1JfTVNJVFJJTV9Nc2sgICAgICAgICAgICAgICAgKDB4RkZVTCA8PCBSQ0NfSUNTQ1JfTVNJVFJJTV9Qb3MpIC8qITwgMHgwMDAwRkYwMCAqLworI2RlZmluZSBSQ0NfSUNTQ1JfTVNJVFJJTSAgICAgICAgICAgICAgICAgICAgUkNDX0lDU0NSX01TSVRSSU1fTXNrICAgICAgICAgICAgIC8qITwgTVNJVFJJTVs3OjBdIGJpdHMgKi8KKyNkZWZpbmUgUkNDX0lDU0NSX01TSVRSSU1fMCAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBSQ0NfSUNTQ1JfTVNJVFJJTV9Qb3MpICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgUkNDX0lDU0NSX01TSVRSSU1fMSAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBSQ0NfSUNTQ1JfTVNJVFJJTV9Qb3MpICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgUkNDX0lDU0NSX01TSVRSSU1fMiAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBSQ0NfSUNTQ1JfTVNJVFJJTV9Qb3MpICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgUkNDX0lDU0NSX01TSVRSSU1fMyAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBSQ0NfSUNTQ1JfTVNJVFJJTV9Qb3MpICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgUkNDX0lDU0NSX01TSVRSSU1fNCAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBSQ0NfSUNTQ1JfTVNJVFJJTV9Qb3MpICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgUkNDX0lDU0NSX01TSVRSSU1fNSAgICAgICAgICAgICAgICAgICgweDIwVSA8PCBSQ0NfSUNTQ1JfTVNJVFJJTV9Qb3MpICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgUkNDX0lDU0NSX01TSVRSSU1fNiAgICAgICAgICAgICAgICAgICgweDQwVSA8PCBSQ0NfSUNTQ1JfTVNJVFJJTV9Qb3MpICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgUkNDX0lDU0NSX01TSVRSSU1fNyAgICAgICAgICAgICAgICAgICgweDgwVSA8PCBSQ0NfSUNTQ1JfTVNJVFJJTV9Qb3MpICAvKiE8IDB4MDAwMDgwMDAgKi8KKworLyohPCBIU0lDQUwgY29uZmlndXJhdGlvbiAqLworI2RlZmluZSBSQ0NfSUNTQ1JfSFNJQ0FMX1BvcyAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfSUNTQ1JfSFNJQ0FMX01zayAgICAgICAgICAgICAgICAgKDB4RkZVTCA8PCBSQ0NfSUNTQ1JfSFNJQ0FMX1BvcykgIC8qITwgMHgwMEZGMDAwMCAqLworI2RlZmluZSBSQ0NfSUNTQ1JfSFNJQ0FMICAgICAgICAgICAgICAgICAgICAgUkNDX0lDU0NSX0hTSUNBTF9Nc2sgICAgICAgICAgICAgIC8qITwgSFNJQ0FMWzc6MF0gYml0cyAqLworI2RlZmluZSBSQ0NfSUNTQ1JfSFNJQ0FMXzAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IFJDQ19JQ1NDUl9IU0lDQUxfUG9zKSAgIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBSQ0NfSUNTQ1JfSFNJQ0FMXzEgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IFJDQ19JQ1NDUl9IU0lDQUxfUG9zKSAgIC8qITwgMHgwMDAyMDAwMCAqLworI2RlZmluZSBSQ0NfSUNTQ1JfSFNJQ0FMXzIgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IFJDQ19JQ1NDUl9IU0lDQUxfUG9zKSAgIC8qITwgMHgwMDA0MDAwMCAqLworI2RlZmluZSBSQ0NfSUNTQ1JfSFNJQ0FMXzMgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IFJDQ19JQ1NDUl9IU0lDQUxfUG9zKSAgIC8qITwgMHgwMDA4MDAwMCAqLworI2RlZmluZSBSQ0NfSUNTQ1JfSFNJQ0FMXzQgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IFJDQ19JQ1NDUl9IU0lDQUxfUG9zKSAgIC8qITwgMHgwMDEwMDAwMCAqLworI2RlZmluZSBSQ0NfSUNTQ1JfSFNJQ0FMXzUgICAgICAgICAgICAgICAgICAgKDB4MjBVIDw8IFJDQ19JQ1NDUl9IU0lDQUxfUG9zKSAgIC8qITwgMHgwMDIwMDAwMCAqLworI2RlZmluZSBSQ0NfSUNTQ1JfSFNJQ0FMXzYgICAgICAgICAgICAgICAgICAgKDB4NDBVIDw8IFJDQ19JQ1NDUl9IU0lDQUxfUG9zKSAgIC8qITwgMHgwMDQwMDAwMCAqLworI2RlZmluZSBSQ0NfSUNTQ1JfSFNJQ0FMXzcgICAgICAgICAgICAgICAgICAgKDB4ODBVIDw8IFJDQ19JQ1NDUl9IU0lDQUxfUG9zKSAgIC8qITwgMHgwMDgwMDAwMCAqLworCisvKiE8IEhTSVRSSU0gY29uZmlndXJhdGlvbiAqLworI2RlZmluZSBSQ0NfSUNTQ1JfSFNJVFJJTV9Qb3MgICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfSUNTQ1JfSFNJVFJJTV9Nc2sgICAgICAgICAgICAgICAgKDB4N0ZVTCA8PCBSQ0NfSUNTQ1JfSFNJVFJJTV9Qb3MpIC8qITwgMHg3RjAwMDAwMCAqLworI2RlZmluZSBSQ0NfSUNTQ1JfSFNJVFJJTSAgICAgICAgICAgICAgICAgICAgUkNDX0lDU0NSX0hTSVRSSU1fTXNrICAgICAgICAgICAgIC8qITwgSFNJVFJJTVs2OjBdIGJpdHMgKi8KKyNkZWZpbmUgUkNDX0lDU0NSX0hTSVRSSU1fMCAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBSQ0NfSUNTQ1JfSFNJVFJJTV9Qb3MpICAvKiE8IDB4MDEwMDAwMDAgKi8KKyNkZWZpbmUgUkNDX0lDU0NSX0hTSVRSSU1fMSAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBSQ0NfSUNTQ1JfSFNJVFJJTV9Qb3MpICAvKiE8IDB4MDIwMDAwMDAgKi8KKyNkZWZpbmUgUkNDX0lDU0NSX0hTSVRSSU1fMiAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBSQ0NfSUNTQ1JfSFNJVFJJTV9Qb3MpICAvKiE8IDB4MDQwMDAwMDAgKi8KKyNkZWZpbmUgUkNDX0lDU0NSX0hTSVRSSU1fMyAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBSQ0NfSUNTQ1JfSFNJVFJJTV9Qb3MpICAvKiE8IDB4MDgwMDAwMDAgKi8KKyNkZWZpbmUgUkNDX0lDU0NSX0hTSVRSSU1fNCAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBSQ0NfSUNTQ1JfSFNJVFJJTV9Qb3MpICAvKiE8IDB4MTAwMDAwMDAgKi8KKyNkZWZpbmUgUkNDX0lDU0NSX0hTSVRSSU1fNSAgICAgICAgICAgICAgICAgICgweDIwVSA8PCBSQ0NfSUNTQ1JfSFNJVFJJTV9Qb3MpICAvKiE8IDB4MjAwMDAwMDAgKi8KKyNkZWZpbmUgUkNDX0lDU0NSX0hTSVRSSU1fNiAgICAgICAgICAgICAgICAgICgweDQwVSA8PCBSQ0NfSUNTQ1JfSFNJVFJJTV9Qb3MpICAvKiE8IDB4NDAwMDAwMDAgKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0NGR1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8KKy8qITwgU1cgY29uZmlndXJhdGlvbiAqLworI2RlZmluZSBSQ0NfQ0ZHUl9TV19Qb3MgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ0ZHUl9TV19Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4M1VMIDw8IFJDQ19DRkdSX1NXX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMyAqLworI2RlZmluZSBSQ0NfQ0ZHUl9TVyAgICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfU1dfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgU1dbMTowXSBiaXRzIChTeXN0ZW0gY2xvY2sgU3dpdGNoKSAqLworI2RlZmluZSBSQ0NfQ0ZHUl9TV18wICAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NGR1JfU1dfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBSQ0NfQ0ZHUl9TV18xICAgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX0NGR1JfU1dfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworCisvKiE8IFNXUyBjb25maWd1cmF0aW9uICovCisjZGVmaW5lIFJDQ19DRkdSX1NXU19Qb3MgICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DRkdSX1NXU19Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgzVUwgPDwgUkNDX0NGR1JfU1dTX1BvcykgICAgICAgLyohPCAweDAwMDAwMDBDICovCisjZGVmaW5lIFJDQ19DRkdSX1NXUyAgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9TV1NfTXNrICAgICAgICAgICAgICAgICAgLyohPCBTV1NbMTowXSBiaXRzIChTeXN0ZW0gQ2xvY2sgU3dpdGNoIFN0YXR1cykgKi8KKyNkZWZpbmUgUkNDX0NGR1JfU1dTXzAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DRkdSX1NXU19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgUkNDX0NGR1JfU1dTXzEgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJDQ19DRkdSX1NXU19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKworLyohPCBIUFJFIGNvbmZpZ3VyYXRpb24gKi8KKyNkZWZpbmUgUkNDX0NGR1JfSFBSRV9Qb3MgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NGR1JfSFBSRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZVTCA8PCBSQ0NfQ0ZHUl9IUFJFX1BvcykgICAgICAvKiE8IDB4MDAwMDAwRjAgKi8KKyNkZWZpbmUgUkNDX0NGR1JfSFBSRSAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX0hQUkVfTXNrICAgICAgICAgICAgICAgICAvKiE8IEhQUkVbMzowXSBiaXRzIChBSEIgcHJlc2NhbGVyKSAqLworI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NGR1JfSFBSRV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX0NGR1JfSFBSRV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFXzIgICAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUkNDX0NGR1JfSFBSRV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFXzMgICAgICAgICAgICAgICAgICAgICAgKDB4OFUgPDwgUkNDX0NGR1JfSFBSRV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLworCisvKiE8IFBQUkUxIGNvbmZpZ3VyYXRpb24gKi8KKyNkZWZpbmUgUkNDX0NGR1JfUFBSRTFfUG9zICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NGR1JfUFBSRTFfTXNrICAgICAgICAgICAgICAgICAgICgweDdVTCA8PCBSQ0NfQ0ZHUl9QUFJFMV9Qb3MpICAgICAvKiE8IDB4MDAwMDA3MDAgKi8KKyNkZWZpbmUgUkNDX0NGR1JfUFBSRTEgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX1BQUkUxX01zayAgICAgICAgICAgICAgICAvKiE8IFBSRTFbMjowXSBiaXRzIChBUEIxIHByZXNjYWxlcikgKi8KKyNkZWZpbmUgUkNDX0NGR1JfUFBSRTFfMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DRkdSX1BQUkUxX1BvcykgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgUkNDX0NGR1JfUFBSRTFfMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJDQ19DRkdSX1BQUkUxX1BvcykgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgUkNDX0NGR1JfUFBSRTFfMiAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJDQ19DRkdSX1BQUkUxX1BvcykgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKworLyohPCBQUFJFMiBjb25maWd1cmF0aW9uICovCisjZGVmaW5lIFJDQ19DRkdSX1BQUkUyX1BvcyAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DRkdSX1BQUkUyX01zayAgICAgICAgICAgICAgICAgICAoMHg3VUwgPDwgUkNDX0NGR1JfUFBSRTJfUG9zKSAgICAgLyohPCAweDAwMDAzODAwICovCisjZGVmaW5lIFJDQ19DRkdSX1BQUkUyICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9QUFJFMl9Nc2sgICAgICAgICAgICAgICAgLyohPCBQUkUyWzI6MF0gYml0cyAoQVBCMiBwcmVzY2FsZXIpICovCisjZGVmaW5lIFJDQ19DRkdSX1BQUkUyXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0ZHUl9QUFJFMl9Qb3MpICAgICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIFJDQ19DRkdSX1BQUkUyXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSQ0NfQ0ZHUl9QUFJFMl9Qb3MpICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIFJDQ19DRkdSX1BQUkUyXzIgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSQ0NfQ0ZHUl9QUFJFMl9Qb3MpICAgICAgLyohPCAweDAwMDAyMDAwICovCisKKy8qITwgU1RPUFdVQ0sgY29uZmlndXJhdGlvbiAqLworI2RlZmluZSBSQ0NfQ0ZHUl9TVE9QV1VDS19Qb3MgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ0ZHUl9TVE9QV1VDS19Nc2sgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DRkdSX1NUT1BXVUNLX1BvcykgIC8qITwgMHgwMDAwODAwMCAqLworI2RlZmluZSBSQ0NfQ0ZHUl9TVE9QV1VDSyAgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfU1RPUFdVQ0tfTXNrICAgICAgICAgICAgIC8qITwgV2FrZSBVcCBmcm9tIHN0b3AgYW5kIENTUyBiYWNrdXAgY2xvY2sgc2VsZWN0aW9uICovCisKKy8qITwgSFBSRUYgY29uZmlndXJhdGlvbiAqLworI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFRl9Qb3MgICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFRl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DRkdSX0hQUkVGX1BvcykgICAgIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFRiAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfSFBSRUZfTXNrICAgICAgICAgICAgICAgIC8qITwgQUhCIHByZXNjYWxlciBmbGFnICovCisKKy8qITwgUFBSRTFGIGNvbmZpZ3VyYXRpb24gKi8KKyNkZWZpbmUgUkNDX0NGR1JfUFBSRTFGX1BvcyAgICAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NGR1JfUFBSRTFGX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ0ZHUl9QUFJFMUZfUG9zKSAgICAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgUkNDX0NGR1JfUFBSRTFGICAgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX1BQUkUxRl9Nc2sgICAgICAgICAgICAgICAvKiE8IENQVTEgQVBCMSBwcmVzY2FsZXIgZmxhZyAqLworCisvKiE8IFBQUkUyRiBjb25maWd1cmF0aW9uICovCisjZGVmaW5lIFJDQ19DRkdSX1BQUkUyRl9Qb3MgICAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DRkdSX1BQUkUyRl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NGR1JfUFBSRTJGX1BvcykgICAgLyohPCAweDAwMDQwMDAwICovCisjZGVmaW5lIFJDQ19DRkdSX1BQUkUyRiAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9QUFJFMkZfTXNrICAgICAgICAgICAgICAgLyohPCBBUEIyIHByZXNjYWxlciBmbGFnICovCisKKy8qITwgTUNPU0VMIGNvbmZpZ3VyYXRpb24gKi8KKyNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX1BvcyAgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX01zayAgICAgICAgICAgICAgICAgICgweEZVTCA8PCBSQ0NfQ0ZHUl9NQ09TRUxfUG9zKSAgICAvKiE8IDB4MEYwMDAwMDAgKi8KKyNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMICAgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX01DT1NFTF9Nc2sgICAgICAgICAgICAgICAvKiE8IE1DT1NFTCBbMzowXSBiaXRzIChDbG9jayBvdXRwdXQgc2VsZWN0aW9uKSAqLworI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NGR1JfTUNPU0VMX1BvcykgICAgIC8qITwgMHgwMTAwMDAwMCAqLworI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX0NGR1JfTUNPU0VMX1BvcykgICAgIC8qITwgMHgwMjAwMDAwMCAqLworI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUkNDX0NGR1JfTUNPU0VMX1BvcykgICAgIC8qITwgMHgwNDAwMDAwMCAqLworI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfMyAgICAgICAgICAgICAgICAgICAgKDB4OFUgPDwgUkNDX0NGR1JfTUNPU0VMX1BvcykgICAgIC8qITwgMHgwODAwMDAwMCAqLworCisvKiE8IE1DT1BSRSBjb25maWd1cmF0aW9uICovCisjZGVmaW5lIFJDQ19DRkdSX01DT1BSRV9Qb3MgICAgICAgICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DRkdSX01DT1BSRV9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VUwgPDwgUkNDX0NGR1JfTUNPUFJFX1BvcykgICAgLyohPCAweDcwMDAwMDAwICovCisjZGVmaW5lIFJDQ19DRkdSX01DT1BSRSAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09QUkVfTXNrICAgICAgICAgICAgICAgLyohPCBNQ08gcHJlc2NhbGVyICovCisjZGVmaW5lIFJDQ19DRkdSX01DT1BSRV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0ZHUl9NQ09QUkVfUG9zKSAgICAgLyohPCAweDEwMDAwMDAwICovCisjZGVmaW5lIFJDQ19DRkdSX01DT1BSRV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSQ0NfQ0ZHUl9NQ09QUkVfUG9zKSAgICAgLyohPCAweDIwMDAwMDAwICovCisjZGVmaW5lIFJDQ19DRkdSX01DT1BSRV8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSQ0NfQ0ZHUl9NQ09QUkVfUG9zKSAgICAgLyohPCAweDQwMDAwMDAwICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19QTExDRkdSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovCisjZGVmaW5lIFJDQ19QTExDRkdSX1BMTFNSQ19Qb3MgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX1BMTENGR1JfUExMU1JDX01zayAgICAgICAgICAgICAgICgweDNVTCA8PCBSQ0NfUExMQ0ZHUl9QTExTUkNfUG9zKSAvKiE8IDB4MDAwMDAwMDMgKi8KKyNkZWZpbmUgUkNDX1BMTENGR1JfUExMU1JDICAgICAgICAgICAgICAgICAgIFJDQ19QTExDRkdSX1BMTFNSQ19Nc2sgICAgICAgICAgCisjZGVmaW5lIFJDQ19QTExDRkdSX1BMTFNSQ18wICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfUExMQ0ZHUl9QTExTUkNfUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgUkNDX1BMTENGR1JfUExMU1JDXzEgICAgICAgICAgICAgICAgICgweDJVIDw8IFJDQ19QTExDRkdSX1BMTFNSQ19Qb3MpIC8qITwgMHgwMDAwMDAwMiAqLworCisjZGVmaW5lIFJDQ19QTExDRkdSX1BMTE1fUG9zICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfUExMQ0ZHUl9QTExNX01zayAgICAgICAgICAgICAgICAgKDB4N1VMIDw8IFJDQ19QTExDRkdSX1BMTE1fUG9zKSAvKiE8IDB4MDAwMDAwNzAgKi8KKyNkZWZpbmUgUkNDX1BMTENGR1JfUExMTSAgICAgICAgICAgICAgICAgICAgIFJDQ19QTExDRkdSX1BMTE1fTXNrICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19QTExDRkdSX1BMTE1fMCAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfUExMQ0ZHUl9QTExNX1BvcykgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBSQ0NfUExMQ0ZHUl9QTExNXzEgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX1BMTENGR1JfUExMTV9Qb3MpICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgUkNDX1BMTENGR1JfUExMTV8yICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJDQ19QTExDRkdSX1BMTE1fUG9zKSAgLyohPCAweDAwMDAwMDQwICovCisKKyNkZWZpbmUgUkNDX1BMTENGR1JfUExMTl9Qb3MgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19QTExDRkdSX1BMTE5fTXNrICAgICAgICAgICAgICAgICAoMHg3RlVMIDw8IFJDQ19QTExDRkdSX1BMTE5fUG9zKSAvKiE8IDB4MDAwMDdGMDAgKi8KKyNkZWZpbmUgUkNDX1BMTENGR1JfUExMTiAgICAgICAgICAgICAgICAgICAgIFJDQ19QTExDRkdSX1BMTE5fTXNrICAgICAgICAgCisjZGVmaW5lIFJDQ19QTExDRkdSX1BMTE5fMCAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgUkNDX1BMTENGR1JfUExMTl9Qb3MpIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBSQ0NfUExMQ0ZHUl9QTExOXzEgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IFJDQ19QTExDRkdSX1BMTE5fUG9zKSAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgUkNDX1BMTENGR1JfUExMTl8yICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBSQ0NfUExMQ0ZHUl9QTExOX1BvcykgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIFJDQ19QTExDRkdSX1BMTE5fMyAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgUkNDX1BMTENGR1JfUExMTl9Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLworI2RlZmluZSBSQ0NfUExMQ0ZHUl9QTExOXzQgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IFJDQ19QTExDRkdSX1BMTE5fUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgUkNDX1BMTENGR1JfUExMTl81ICAgICAgICAgICAgICAgICAgICgweDIwVSA8PCBSQ0NfUExMQ0ZHUl9QTExOX1BvcykgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIFJDQ19QTExDRkdSX1BMTE5fNiAgICAgICAgICAgICAgICAgICAoMHg0MFUgPDwgUkNDX1BMTENGR1JfUExMTl9Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLworCisjZGVmaW5lIFJDQ19QTExDRkdSX1BMTFBFTl9Qb3MgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfUExMQ0ZHUl9QTExQRU5fTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19QTExDRkdSX1BMTFBFTl9Qb3MpIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBSQ0NfUExMQ0ZHUl9QTExQRU4gICAgICAgICAgICAgICAgICAgUkNDX1BMTENGR1JfUExMUEVOX01zayAgICAgICAKKyNkZWZpbmUgUkNDX1BMTENGR1JfUExMUF9Qb3MgICAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19QTExDRkdSX1BMTFBfTXNrICAgICAgICAgICAgICAgICAoMHgxRlVMIDw8IFJDQ19QTExDRkdSX1BMTFBfUG9zKSAvKiE8IDB4MDAzRTAwMDAgKi8KKyNkZWZpbmUgUkNDX1BMTENGR1JfUExMUCAgICAgICAgICAgICAgICAgICAgIFJDQ19QTExDRkdSX1BMTFBfTXNrICAgICAgICAgCisjZGVmaW5lIFJDQ19QTExDRkdSX1BMTFBfMCAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgUkNDX1BMTENGR1JfUExMUF9Qb3MpIC8qITwgMHgwMDAyMDAwMCAqLworI2RlZmluZSBSQ0NfUExMQ0ZHUl9QTExQXzEgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IFJDQ19QTExDRkdSX1BMTFBfUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgUkNDX1BMTENGR1JfUExMUF8yICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBSQ0NfUExMQ0ZHUl9QTExQX1BvcykgLyohPCAweDAwMDgwMDAwICovCisjZGVmaW5lIFJDQ19QTExDRkdSX1BMTFBfMyAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgUkNDX1BMTENGR1JfUExMUF9Qb3MpIC8qITwgMHgwMDEwMDAwMCAqLworI2RlZmluZSBSQ0NfUExMQ0ZHUl9QTExQXzQgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IFJDQ19QTExDRkdSX1BMTFBfUG9zKSAvKiE8IDB4MDAyMDAwMDAgKi8KKworI2RlZmluZSBSQ0NfUExMQ0ZHUl9QTExRRU5fUG9zICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX1BMTENGR1JfUExMUUVOX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfUExMQ0ZHUl9QTExRRU5fUG9zKSAvKiE8IDB4MDEwMDAwMDAgKi8KKyNkZWZpbmUgUkNDX1BMTENGR1JfUExMUUVOICAgICAgICAgICAgICAgICAgIFJDQ19QTExDRkdSX1BMTFFFTl9Nc2sgICAgICAgCisjZGVmaW5lIFJDQ19QTExDRkdSX1BMTFFfUG9zICAgICAgICAgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfUExMQ0ZHUl9QTExRX01zayAgICAgICAgICAgICAgICAgKDB4N1VMIDw8IFJDQ19QTExDRkdSX1BMTFFfUG9zKSAvKiE8IDB4MEUwMDAwMDAgKi8KKyNkZWZpbmUgUkNDX1BMTENGR1JfUExMUSAgICAgICAgICAgICAgICAgICAgIFJDQ19QTExDRkdSX1BMTFFfTXNrICAgICAgICAgCisjZGVmaW5lIFJDQ19QTExDRkdSX1BMTFFfMCAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfUExMQ0ZHUl9QTExRX1BvcykgLyohPCAweDAyMDAwMDAwICovCisjZGVmaW5lIFJDQ19QTExDRkdSX1BMTFFfMSAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSQ0NfUExMQ0ZHUl9QTExRX1BvcykgLyohPCAweDA0MDAwMDAwICovCisjZGVmaW5lIFJDQ19QTExDRkdSX1BMTFFfMiAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSQ0NfUExMQ0ZHUl9QTExRX1BvcykgLyohPCAweDA4MDAwMDAwICovCisKKyNkZWZpbmUgUkNDX1BMTENGR1JfUExMUkVOX1BvcyAgICAgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19QTExDRkdSX1BMTFJFTl9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX1BMTENGR1JfUExMUkVOX1BvcykgLyohPCAweDEwMDAwMDAwICovCisjZGVmaW5lIFJDQ19QTExDRkdSX1BMTFJFTiAgICAgICAgICAgICAgICAgICBSQ0NfUExMQ0ZHUl9QTExSRU5fTXNrICAgICAgIAorI2RlZmluZSBSQ0NfUExMQ0ZHUl9QTExSX1BvcyAgICAgICAgICAgICAgICAgKDI5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX1BMTENGR1JfUExMUl9Nc2sgICAgICAgICAgICAgICAgICgweDdVTCA8PCBSQ0NfUExMQ0ZHUl9QTExSX1BvcykgLyohPCAweEUwMDAwMDAwICovCisjZGVmaW5lIFJDQ19QTExDRkdSX1BMTFIgICAgICAgICAgICAgICAgICAgICBSQ0NfUExMQ0ZHUl9QTExSX01zayAgICAgICAgIAorI2RlZmluZSBSQ0NfUExMQ0ZHUl9QTExSXzAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX1BMTENGR1JfUExMUl9Qb3MpIC8qITwgMHgyMDAwMDAwMCAqLworI2RlZmluZSBSQ0NfUExMQ0ZHUl9QTExSXzEgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX1BMTENGR1JfUExMUl9Qb3MpIC8qITwgMHg0MDAwMDAwMCAqLworI2RlZmluZSBSQ0NfUExMQ0ZHUl9QTExSXzIgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUkNDX1BMTENGR1JfUExMUl9Qb3MpIC8qITwgMHg4MDAwMDAwMCAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQ0lFUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBSQ0NfQ0lFUl9MU0kxUkRZSUVfUG9zICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NJRVJfTFNJMVJEWUlFX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ0lFUl9MU0kxUkRZSUVfUG9zKSAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFJDQ19DSUVSX0xTSTFSRFlJRSAgICAgICAgICAgICAgICAgICBSQ0NfQ0lFUl9MU0kxUkRZSUVfTXNrICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ0lFUl9MU0VSRFlJRV9Qb3MgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NJRVJfTFNFUkRZSUVfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ0lFUl9MU0VSRFlJRV9Qb3MpICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFJDQ19DSUVSX0xTRVJEWUlFICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lFUl9MU0VSRFlJRV9Nc2sgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ0lFUl9NU0lSRFlJRV9Qb3MgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NJRVJfTVNJUkRZSUVfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ0lFUl9NU0lSRFlJRV9Qb3MpICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIFJDQ19DSUVSX01TSVJEWUlFICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lFUl9NU0lSRFlJRV9Nc2sgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ0lFUl9IU0lSRFlJRV9Qb3MgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NJRVJfSFNJUkRZSUVfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ0lFUl9IU0lSRFlJRV9Qb3MpICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIFJDQ19DSUVSX0hTSVJEWUlFICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lFUl9IU0lSRFlJRV9Nc2sgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ0lFUl9IU0VSRFlJRV9Qb3MgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NJRVJfSFNFUkRZSUVfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ0lFUl9IU0VSRFlJRV9Qb3MpICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIFJDQ19DSUVSX0hTRVJEWUlFICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lFUl9IU0VSRFlJRV9Nc2sgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ0lFUl9QTExSRFlJRV9Qb3MgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NJRVJfUExMUkRZSUVfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ0lFUl9QTExSRFlJRV9Qb3MpIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBSQ0NfQ0lFUl9QTExSRFlJRSAgICAgICAgICAgICAgICAgICAgUkNDX0NJRVJfUExMUkRZSUVfTXNrICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NJRVJfTFNFQ1NTSUVfUG9zICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DSUVSX0xTRUNTU0lFX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NJRVJfTFNFQ1NTSUVfUG9zKSAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBSQ0NfQ0lFUl9MU0VDU1NJRSAgICAgICAgICAgICAgICAgICAgUkNDX0NJRVJfTFNFQ1NTSUVfTXNrICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NJRVJfSFNJNDhSRFlJRV9Qb3MgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NJRVJfSFNJNDhSRFlJRV9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ0lFUl9IU0k0OFJEWUlFX1BvcykgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIFJDQ19DSUVSX0hTSTQ4UkRZSUUgICAgICAgICAgICAgICAgICBSQ0NfQ0lFUl9IU0k0OFJEWUlFX01zayAKKyNkZWZpbmUgUkNDX0NJRVJfTFNJMlJEWUlFX1BvcyAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DSUVSX0xTSTJSRFlJRV9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NJRVJfTFNJMlJEWUlFX1BvcykgIC8qITwgMHgwMDAwMDgwMCAqLworI2RlZmluZSBSQ0NfQ0lFUl9MU0kyUkRZSUUgICAgICAgICAgICAgICAgICAgUkNDX0NJRVJfTFNJMlJEWUlFX01zayAgICAgICAgICAgICAKKworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQ0lGUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBSQ0NfQ0lGUl9MU0kxUkRZRl9Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NJRlJfTFNJMVJEWUZfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ0lGUl9MU0kxUkRZRl9Qb3MpICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgUkNDX0NJRlJfTFNJMVJEWUYgICAgICAgICAgICAgICAgICAgIFJDQ19DSUZSX0xTSTFSRFlGX01zayAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NJRlJfTFNFUkRZRl9Qb3MgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DSUZSX0xTRVJEWUZfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NJRlJfTFNFUkRZRl9Qb3MpICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFJDQ19DSUZSX0xTRVJEWUYgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lGUl9MU0VSRFlGX01zayAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DSUZSX01TSVJEWUZfUG9zICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ0lGUl9NU0lSRFlGX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DSUZSX01TSVJEWUZfUG9zKSAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBSQ0NfQ0lGUl9NU0lSRFlGICAgICAgICAgICAgICAgICAgICAgUkNDX0NJRlJfTVNJUkRZRl9Nc2sgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ0lGUl9IU0lSRFlGX1BvcyAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NJRlJfSFNJUkRZRl9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ0lGUl9IU0lSRFlGX1BvcykgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgUkNDX0NJRlJfSFNJUkRZRiAgICAgICAgICAgICAgICAgICAgIFJDQ19DSUZSX0hTSVJEWUZfTXNrICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NJRlJfSFNFUkRZRl9Qb3MgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DSUZSX0hTRVJEWUZfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NJRlJfSFNFUkRZRl9Qb3MpICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIFJDQ19DSUZSX0hTRVJEWUYgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lGUl9IU0VSRFlGX01zayAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DSUZSX1BMTFJEWUZfUG9zICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ0lGUl9QTExSRFlGX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DSUZSX1BMTFJEWUZfUG9zKSAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgUkNDX0NJRlJfUExMUkRZRiAgICAgICAgICAgICAgICAgICAgIFJDQ19DSUZSX1BMTFJEWUZfTXNrICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NJRlJfQ1NTRl9Qb3MgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DSUZSX0NTU0ZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NJRlJfQ1NTRl9Qb3MpICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIFJDQ19DSUZSX0NTU0YgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lGUl9DU1NGX01zayAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DSUZSX0xTRUNTU0ZfUG9zICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ0lGUl9MU0VDU1NGX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DSUZSX0xTRUNTU0ZfUG9zKSAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBSQ0NfQ0lGUl9MU0VDU1NGICAgICAgICAgICAgICAgICAgICAgUkNDX0NJRlJfTFNFQ1NTRl9Nc2sgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ0lGUl9IU0k0OFJEWUZfUG9zICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ0lGUl9IU0k0OFJEWUZfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DSUZSX0hTSTQ4UkRZRl9Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLworI2RlZmluZSBSQ0NfQ0lGUl9IU0k0OFJEWUYgICAgICAgICAgICAgICAgICAgIFJDQ19DSUZSX0hTSTQ4UkRZRl9Nc2sgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NJRlJfTFNJMlJEWUZfUG9zICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DSUZSX0xTSTJSRFlGX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NJRlJfTFNJMlJEWUZfUG9zKSAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIFJDQ19DSUZSX0xTSTJSRFlGICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lGUl9MU0kyUkRZRl9Nc2sgICAgICAgICAgICAgCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19DSUNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFJDQ19DSUNSX0xTSTFSRFlDX1BvcyAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DSUNSX0xTSTFSRFlDX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ0lDUl9MU0kxUkRZQ19Qb3MpICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgUkNDX0NJQ1JfTFNJMVJEWUMgICAgICAgICAgICAgICAgICAgUkNDX0NJQ1JfTFNJMVJEWUNfTXNrICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ0lDUl9MU0VSRFlDX1BvcyAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ0lDUl9MU0VSRFlDX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NJQ1JfTFNFUkRZQ19Qb3MpICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFJDQ19DSUNSX0xTRVJEWUMgICAgICAgICAgICAgICAgICAgIFJDQ19DSUNSX0xTRVJEWUNfTXNrICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NJQ1JfTVNJUkRZQ19Qb3MgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NJQ1JfTVNJUkRZQ19Nc2sgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DSUNSX01TSVJEWUNfUG9zKSAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBSQ0NfQ0lDUl9NU0lSRFlDICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lDUl9NU0lSRFlDX01zayAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DSUNSX0hTSVJEWUNfUG9zICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DSUNSX0hTSVJEWUNfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ0lDUl9IU0lSRFlDX1BvcykgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgUkNDX0NJQ1JfSFNJUkRZQyAgICAgICAgICAgICAgICAgICAgUkNDX0NJQ1JfSFNJUkRZQ19Nc2sgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ0lDUl9IU0VSRFlDX1BvcyAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ0lDUl9IU0VSRFlDX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NJQ1JfSFNFUkRZQ19Qb3MpICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIFJDQ19DSUNSX0hTRVJEWUMgICAgICAgICAgICAgICAgICAgIFJDQ19DSUNSX0hTRVJEWUNfTXNrICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NJQ1JfUExMUkRZQ19Qb3MgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NJQ1JfUExMUkRZQ19Nc2sgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DSUNSX1BMTFJEWUNfUG9zKSAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgUkNDX0NJQ1JfUExMUkRZQyAgICAgICAgICAgICAgICAgICAgUkNDX0NJQ1JfUExMUkRZQ19Nc2sgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ0lDUl9DU1NDX1BvcyAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ0lDUl9DU1NDX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NJQ1JfQ1NTQ19Qb3MpICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIFJDQ19DSUNSX0NTU0MgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DSUNSX0NTU0NfTXNrICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NJQ1JfTFNFQ1NTQ19Qb3MgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NJQ1JfTFNFQ1NTQ19Nc2sgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DSUNSX0xTRUNTU0NfUG9zKSAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBSQ0NfQ0lDUl9MU0VDU1NDICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lDUl9MU0VDU1NDX01zayAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DSUNSX0hTSTQ4UkRZQ19Qb3MgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NJQ1JfSFNJNDhSRFlDX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DSUNSX0hTSTQ4UkRZQ19Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLworI2RlZmluZSBSQ0NfQ0lDUl9IU0k0OFJEWUMgICAgICAgICAgICAgICAgICBSQ0NfQ0lDUl9IU0k0OFJEWUNfTXNrICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DSUNSX0xTSTJSRFlDX1BvcyAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DSUNSX0xTSTJSRFlDX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ0lDUl9MU0kyUkRZQ19Qb3MpICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgUkNDX0NJQ1JfTFNJMlJEWUMgICAgICAgICAgICAgICAgICAgUkNDX0NJQ1JfTFNJMlJEWUNfTXNrICAgICAgICAgICAgICAKKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX1NNUFNDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBSQ0NfU01QU0NSX1NNUFNTRUxfUG9zICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX1NNUFNDUl9TTVBTU0VMX01zayAgICAgICAgICAgICAgICgweDNVTCA8PCBSQ0NfU01QU0NSX1NNUFNTRUxfUG9zKSAgLyohPCAweDAwMDAwMDAzICovCisjZGVmaW5lIFJDQ19TTVBTQ1JfU01QU1NFTCAgICAgICAgICAgICAgICAgICBSQ0NfU01QU0NSX1NNUFNTRUxfTXNrCisjZGVmaW5lIFJDQ19TTVBTQ1JfU01QU1NFTF8wICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfU01QU0NSX1NNUFNTRUxfUG9zKSAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBSQ0NfU01QU0NSX1NNUFNTRUxfMSAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX1NNUFNDUl9TTVBTU0VMX1BvcykgICAvKiE8IDB4MDAwMDAwMDIgKi8KKworI2RlZmluZSBSQ0NfU01QU0NSX1NNUFNESVZfUG9zICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX1NNUFNDUl9TTVBTRElWX01zayAgICAgICAgICAgICAgICgweDNVTCA8PCBSQ0NfU01QU0NSX1NNUFNESVZfUG9zKSAgLyohPCAweDAwMDAwMDMwICovCisjZGVmaW5lIFJDQ19TTVBTQ1JfU01QU0RJViAgICAgICAgICAgICAgICAgICBSQ0NfU01QU0NSX1NNUFNESVZfTXNrCisjZGVmaW5lIFJDQ19TTVBTQ1JfU01QU0RJVl8wICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfU01QU0NSX1NNUFNESVZfUG9zKSAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBSQ0NfU01QU0NSX1NNUFNESVZfMSAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX1NNUFNDUl9TTVBTRElWX1BvcykgICAvKiE8IDB4MDAwMDAwMjAgKi8KKworI2RlZmluZSBSQ0NfU01QU0NSX1NNUFNTV1NfUG9zICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX1NNUFNDUl9TTVBTU1dTX01zayAgICAgICAgICAgICAgICgweDNVTCA8PCBSQ0NfU01QU0NSX1NNUFNTV1NfUG9zKSAgLyohPCAweDAwMDAwMzAwICovCisjZGVmaW5lIFJDQ19TTVBTQ1JfU01QU1NXUyAgICAgICAgICAgICAgICAgICBSQ0NfU01QU0NSX1NNUFNTV1NfTXNrCisjZGVmaW5lIFJDQ19TTVBTQ1JfU01QU1NXU18wICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfU01QU0NSX1NNUFNTV1NfUG9zKSAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBSQ0NfU01QU0NSX1NNUFNTV1NfMSAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX1NNUFNDUl9TTVBTU1dTX1BvcykgICAvKiE8IDB4MDAwMDAyMDAgKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0FIQjFSU1RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUkNDX0FIQjFSU1RSX0RNQTFSU1RfUG9zICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FIQjFSU1RSX0RNQTFSU1RfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQUhCMVJTVFJfRE1BMVJTVF9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBSQ0NfQUhCMVJTVFJfRE1BMVJTVCAgICAgICAgICAgICAgICAgUkNDX0FIQjFSU1RSX0RNQTFSU1RfTXNrICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMVJTVFJfRE1BMlJTVF9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMVJTVFJfRE1BMlJTVF9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BSEIxUlNUUl9ETUEyUlNUX1BvcykgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFJDQ19BSEIxUlNUUl9ETUEyUlNUICAgICAgICAgICAgICAgICBSQ0NfQUhCMVJTVFJfRE1BMlJTVF9Nc2sgICAgICAgICAgCisjZGVmaW5lIFJDQ19BSEIxUlNUUl9ETUFNVVgxUlNUX1BvcyAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BSEIxUlNUUl9ETUFNVVgxUlNUX01zayAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjFSU1RSX0RNQU1VWDFSU1RfUG9zKSAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgUkNDX0FIQjFSU1RSX0RNQU1VWDFSU1QgICAgICAgICAgICAgIFJDQ19BSEIxUlNUUl9ETUFNVVgxUlNUX01zayAgICAgICAgCisjZGVmaW5lIFJDQ19BSEIxUlNUUl9DUkNSU1RfUG9zICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BSEIxUlNUUl9DUkNSU1RfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjFSU1RSX0NSQ1JTVF9Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBSQ0NfQUhCMVJTVFJfQ1JDUlNUICAgICAgICAgICAgICAgICAgUkNDX0FIQjFSU1RSX0NSQ1JTVF9Nc2sgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMVJTVFJfVFNDUlNUX1BvcyAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMVJTVFJfVFNDUlNUX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BSEIxUlNUUl9UU0NSU1RfUG9zKSAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgUkNDX0FIQjFSU1RSX1RTQ1JTVCAgICAgICAgICAgICAgICAgIFJDQ19BSEIxUlNUUl9UU0NSU1RfTXNrICAgICAgICAgICAKKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0FIQjJSU1RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovCisjZGVmaW5lIFJDQ19BSEIyUlNUUl9HUElPQVJTVF9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BSEIyUlNUUl9HUElPQVJTVF9Nc2sgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQUhCMlJTVFJfR1BJT0FSU1RfUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgUkNDX0FIQjJSU1RSX0dQSU9BUlNUICAgICAgICAgICAgICAgUkNDX0FIQjJSU1RSX0dQSU9BUlNUX01zayAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FIQjJSU1RSX0dQSU9CUlNUX1BvcyAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FIQjJSU1RSX0dQSU9CUlNUX01zayAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BSEIyUlNUUl9HUElPQlJTVF9Qb3MpIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBSQ0NfQUhCMlJTVFJfR1BJT0JSU1QgICAgICAgICAgICAgICBSQ0NfQUhCMlJTVFJfR1BJT0JSU1RfTXNrICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMlJTVFJfR1BJT0NSU1RfUG9zICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMlJTVFJfR1BJT0NSU1RfTXNrICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjJSU1RSX0dQSU9DUlNUX1BvcykgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIFJDQ19BSEIyUlNUUl9HUElPQ1JTVCAgICAgICAgICAgICAgIFJDQ19BSEIyUlNUUl9HUElPQ1JTVF9Nc2sgICAgICAgICAgCisjZGVmaW5lIFJDQ19BSEIyUlNUUl9HUElPRVJTVF9Qb3MgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BSEIyUlNUUl9HUElPRVJTVF9Nc2sgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQUhCMlJTVFJfR1BJT0VSU1RfUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgUkNDX0FIQjJSU1RSX0dQSU9FUlNUICAgICAgICAgICAgICAgUkNDX0FIQjJSU1RSX0dQSU9FUlNUX01zayAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FIQjJSU1RSX0dQSU9IUlNUX1BvcyAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FIQjJSU1RSX0dQSU9IUlNUX01zayAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BSEIyUlNUUl9HUElPSFJTVF9Qb3MpIC8qITwgMHgwMDAwMDA4MCAqLworI2RlZmluZSBSQ0NfQUhCMlJTVFJfR1BJT0hSU1QgICAgICAgICAgICAgICBSQ0NfQUhCMlJTVFJfR1BJT0hSU1RfTXNrICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMlJTVFJfQURDUlNUX1BvcyAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMlJTVFJfQURDUlNUX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjJSU1RSX0FEQ1JTVF9Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLworI2RlZmluZSBSQ0NfQUhCMlJTVFJfQURDUlNUICAgICAgICAgICAgICAgICBSQ0NfQUhCMlJTVFJfQURDUlNUX01zayAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMlJTVFJfQUVTMVJTVF9Qb3MgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMlJTVFJfQUVTMVJTVF9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjJSU1RSX0FFUzFSU1RfUG9zKSAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgUkNDX0FIQjJSU1RSX0FFUzFSU1QgICAgICAgICAgICAgICAgUkNDX0FIQjJSU1RSX0FFUzFSU1RfTXNrICAgICAgICAgCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19BSEIzUlNUUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLworI2RlZmluZSBSQ0NfQUhCM1JTVFJfUVVBRFNQSVJTVF9Qb3MgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCM1JTVFJfUVVBRFNQSVJTVF9Nc2sgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjNSU1RSX1FVQURTUElSU1RfUG9zKSAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgUkNDX0FIQjNSU1RSX1FVQURTUElSU1QgICAgICAgICAgICAgUkNDX0FIQjNSU1RSX1FVQURTUElSU1RfTXNrICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FIQjNSU1RSX1BLQVJTVF9Qb3MgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FIQjNSU1RSX1BLQVJTVF9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BSEIzUlNUUl9QS0FSU1RfUG9zKSAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgUkNDX0FIQjNSU1RSX1BLQVJTVCAgICAgICAgICAgICAgICAgUkNDX0FIQjNSU1RSX1BLQVJTVF9Nc2sgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FIQjNSU1RSX0FFUzJSU1RfUG9zICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FIQjNSU1RSX0FFUzJSU1RfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BSEIzUlNUUl9BRVMyUlNUX1BvcykgLyohPCAweDAwMDIwMDAwICovCisjZGVmaW5lIFJDQ19BSEIzUlNUUl9BRVMyUlNUICAgICAgICAgICAgICAgIFJDQ19BSEIzUlNUUl9BRVMyUlNUX01zayAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCM1JTVFJfUk5HUlNUX1BvcyAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCM1JTVFJfUk5HUlNUX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjNSU1RSX1JOR1JTVF9Qb3MpIC8qITwgMHgwMDA0MDAwMCAqLworI2RlZmluZSBSQ0NfQUhCM1JTVFJfUk5HUlNUICAgICAgICAgICAgICAgICBSQ0NfQUhCM1JTVFJfUk5HUlNUX01zayAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BSEIzUlNUUl9IU0VNUlNUX1BvcyAgICAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BSEIzUlNUUl9IU0VNUlNUX01zayAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQUhCM1JTVFJfSFNFTVJTVF9Qb3MpIC8qITwgMHgwMDA4MDAwMCAqLworI2RlZmluZSBSQ0NfQUhCM1JTVFJfSFNFTVJTVCAgICAgICAgICAgICAgICBSQ0NfQUhCM1JTVFJfSFNFTVJTVF9Nc2sgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCM1JTVFJfSVBDQ1JTVF9Qb3MgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCM1JTVFJfSVBDQ1JTVF9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjNSU1RSX0lQQ0NSU1RfUG9zKSAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgUkNDX0FIQjNSU1RSX0lQQ0NSU1QgICAgICAgICAgICAgICAgUkNDX0FIQjNSU1RSX0lQQ0NSU1RfTXNrICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FIQjNSU1RSX0ZMQVNIUlNUX1BvcyAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FIQjNSU1RSX0ZMQVNIUlNUX01zayAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BSEIzUlNUUl9GTEFTSFJTVF9Qb3MpIC8qITwgMHgwMjAwMDAwMCAqLworI2RlZmluZSBSQ0NfQUhCM1JTVFJfRkxBU0hSU1QgICAgICAgICAgICAgICBSQ0NfQUhCM1JTVFJfRkxBU0hSU1RfTXNrICAgICAgICAgICAgCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19BUEIxUlNUUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqLworI2RlZmluZSBSQ0NfQVBCMVJTVFIxX1RJTTJSU1RfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQVBCMVJTVFIxX1RJTTJSU1RfTXNrICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjFSU1RSMV9USU0yUlNUX1BvcykgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFJDQ19BUEIxUlNUUjFfVElNMlJTVCAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUjFfVElNMlJTVF9Nc2sgICAgICAgICAgCisjZGVmaW5lIFJDQ19BUEIxUlNUUjFfU1BJMlJTVF9Qb3MgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BUEIxUlNUUjFfU1BJMlJTVF9Nc2sgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMVJTVFIxX1NQSTJSU1RfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgUkNDX0FQQjFSU1RSMV9TUEkyUlNUICAgICAgICAgICAgICAgUkNDX0FQQjFSU1RSMV9TUEkyUlNUX01zayAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FQQjFSU1RSMV9JMkMxUlNUX1BvcyAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FQQjFSU1RSMV9JMkMxUlNUX01zayAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxUlNUUjFfSTJDMVJTVF9Qb3MpIC8qITwgMHgwMDIwMDAwMCAqLworI2RlZmluZSBSQ0NfQVBCMVJTVFIxX0kyQzFSU1QgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFIxX0kyQzFSU1RfTXNrICAgICAgICAgIAorI2RlZmluZSBSQ0NfQVBCMVJTVFIxX0kyQzNSU1RfUG9zICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQVBCMVJTVFIxX0kyQzNSU1RfTXNrICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjFSU1RSMV9JMkMzUlNUX1BvcykgLyohPCAweDAwODAwMDAwICovCisjZGVmaW5lIFJDQ19BUEIxUlNUUjFfSTJDM1JTVCAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUjFfSTJDM1JTVF9Nc2sgICAgICAgICAgCisjZGVmaW5lIFJDQ19BUEIxUlNUUjFfQ1JTUlNUX1BvcyAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BUEIxUlNUUjFfQ1JTUlNUX01zayAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMVJTVFIxX0NSU1JTVF9Qb3MpIC8qITwgMHgwMTAwMDAwMCAqLworI2RlZmluZSBSQ0NfQVBCMVJTVFIxX0NSU1JTVCAgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFIxX0NSU1JTVF9Nc2sgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQVBCMVJTVFIxX1VTQlJTVF9Qb3MgICAgICAgICAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQVBCMVJTVFIxX1VTQlJTVF9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjFSU1RSMV9VU0JSU1RfUG9zKSAvKiE8IDB4MDQwMDAwMDAgKi8KKyNkZWZpbmUgUkNDX0FQQjFSU1RSMV9VU0JSU1QgICAgICAgICAgICAgICAgUkNDX0FQQjFSU1RSMV9VU0JSU1RfTXNrICAgICAgICAgCisjZGVmaW5lIFJDQ19BUEIxUlNUUjFfTFBUSU0xUlNUX1BvcyAgICAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BUEIxUlNUUjFfTFBUSU0xUlNUX01zayAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMVJTVFIxX0xQVElNMVJTVF9Qb3MpIC8qITwgMHg4MDAwMDAwMCAqLworI2RlZmluZSBSQ0NfQVBCMVJTVFIxX0xQVElNMVJTVCAgICAgICAgICAgICBSQ0NfQVBCMVJTVFIxX0xQVElNMVJTVF9Nc2sgICAgICAgIAorIAorLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0FQQjFSU1RSMiByZWdpc3RlciAgKioqKioqKioqKioqKiovCisjZGVmaW5lIFJDQ19BUEIxUlNUUjJfTFBVQVJUMVJTVF9Qb3MgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BUEIxUlNUUjJfTFBVQVJUMVJTVF9Nc2sgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMVJTVFIyX0xQVUFSVDFSU1RfUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgUkNDX0FQQjFSU1RSMl9MUFVBUlQxUlNUICAgICAgICAgICAgUkNDX0FQQjFSU1RSMl9MUFVBUlQxUlNUX01zayAgICAgICAgCisjZGVmaW5lIFJDQ19BUEIxUlNUUjJfTFBUSU0yUlNUX1BvcyAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BUEIxUlNUUjJfTFBUSU0yUlNUX01zayAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMVJTVFIyX0xQVElNMlJTVF9Qb3MpIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBSQ0NfQVBCMVJTVFIyX0xQVElNMlJTVCAgICAgICAgICAgICBSQ0NfQVBCMVJTVFIyX0xQVElNMlJTVF9Nc2sgICAgICAgIAorIAorLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0FQQjJSU1RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUkNDX0FQQjJSU1RSX1RJTTFSU1RfUG9zICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FQQjJSU1RSX1RJTTFSU1RfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIyUlNUUl9USU0xUlNUX1BvcykgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIFJDQ19BUEIyUlNUUl9USU0xUlNUICAgICAgICAgICAgICAgIFJDQ19BUEIyUlNUUl9USU0xUlNUX01zayAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BUEIyUlNUUl9TUEkxUlNUX1BvcyAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BUEIyUlNUUl9TUEkxUlNUX01zayAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMlJTVFJfU1BJMVJTVF9Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBSQ0NfQVBCMlJTVFJfU1BJMVJTVCAgICAgICAgICAgICAgICBSQ0NfQVBCMlJTVFJfU1BJMVJTVF9Nc2sgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQVBCMlJTVFJfVVNBUlQxUlNUX1BvcyAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQVBCMlJTVFJfVVNBUlQxUlNUX01zayAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjJSU1RSX1VTQVJUMVJTVF9Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLworI2RlZmluZSBSQ0NfQVBCMlJTVFJfVVNBUlQxUlNUICAgICAgICAgICAgICBSQ0NfQVBCMlJTVFJfVVNBUlQxUlNUX01zayAgICAgICAgIAorI2RlZmluZSBSQ0NfQVBCMlJTVFJfVElNMTZSU1RfUG9zICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQVBCMlJTVFJfVElNMTZSU1RfTXNrICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjJSU1RSX1RJTTE2UlNUX1BvcykgLyohPCAweDAwMDIwMDAwICovCisjZGVmaW5lIFJDQ19BUEIyUlNUUl9USU0xNlJTVCAgICAgICAgICAgICAgIFJDQ19BUEIyUlNUUl9USU0xNlJTVF9Nc2sgICAgICAgICAgCisjZGVmaW5lIFJDQ19BUEIyUlNUUl9USU0xN1JTVF9Qb3MgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BUEIyUlNUUl9USU0xN1JTVF9Nc2sgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMlJTVFJfVElNMTdSU1RfUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgUkNDX0FQQjJSU1RSX1RJTTE3UlNUICAgICAgICAgICAgICAgUkNDX0FQQjJSU1RSX1RJTTE3UlNUX01zayAgICAgICAgICAKKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0FQQjNSU1RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUkNDX0FQQjNSU1RSX1JGUlNUX1BvcyAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQVBCM1JTVFJfUkZSU1RfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCM1JTVFJfUkZSU1RfUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgUkNDX0FQQjNSU1RSX1JGUlNUICAgICAgICAgICAgICAgICBSQ0NfQVBCM1JTVFJfUkZSU1RfTXNrICAgICAgICAgICAgCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19BSEIxRU5SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLworI2RlZmluZSBSQ0NfQUhCMUVOUl9ETUExRU5fUG9zICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMUVOUl9ETUExRU5fTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjFFTlJfRE1BMUVOX1BvcykgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBSQ0NfQUhCMUVOUl9ETUExRU4gICAgICAgICAgICAgICAgICBSQ0NfQUhCMUVOUl9ETUExRU5fTXNrICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMUVOUl9ETUEyRU5fUG9zICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMUVOUl9ETUEyRU5fTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjFFTlJfRE1BMkVOX1BvcykgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBSQ0NfQUhCMUVOUl9ETUEyRU4gICAgICAgICAgICAgICAgICBSQ0NfQUhCMUVOUl9ETUEyRU5fTXNrICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMUVOUl9ETUFNVVgxRU5fUG9zICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMUVOUl9ETUFNVVgxRU5fTXNrICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjFFTlJfRE1BTVVYMUVOX1BvcykgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIFJDQ19BSEIxRU5SX0RNQU1VWDFFTiAgICAgICAgICAgICAgIFJDQ19BSEIxRU5SX0RNQU1VWDFFTl9Nc2sgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMUVOUl9DUkNFTl9Qb3MgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMUVOUl9DUkNFTl9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjFFTlJfQ1JDRU5fUG9zKSAgIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBSQ0NfQUhCMUVOUl9DUkNFTiAgICAgICAgICAgICAgICAgICBSQ0NfQUhCMUVOUl9DUkNFTl9Nc2sgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMUVOUl9UU0NFTl9Qb3MgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMUVOUl9UU0NFTl9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjFFTlJfVFNDRU5fUG9zKSAgIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBSQ0NfQUhCMUVOUl9UU0NFTiAgICAgICAgICAgICAgICAgICBSQ0NfQUhCMUVOUl9UU0NFTl9Nc2sgICAgICAgICAgICAgIAorCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQUhCMkVOUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLworI2RlZmluZSBSQ0NfQUhCMkVOUl9HUElPQUVOX1BvcyAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMkVOUl9HUElPQUVOX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjJFTlJfR1BJT0FFTl9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBSQ0NfQUhCMkVOUl9HUElPQUVOICAgICAgICAgICAgICAgICBSQ0NfQUhCMkVOUl9HUElPQUVOX01zayAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMkVOUl9HUElPQkVOX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMkVOUl9HUElPQkVOX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjJFTlJfR1BJT0JFTl9Qb3MpIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBSQ0NfQUhCMkVOUl9HUElPQkVOICAgICAgICAgICAgICAgICBSQ0NfQUhCMkVOUl9HUElPQkVOX01zayAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMkVOUl9HUElPQ0VOX1BvcyAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMkVOUl9HUElPQ0VOX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjJFTlJfR1BJT0NFTl9Qb3MpIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBSQ0NfQUhCMkVOUl9HUElPQ0VOICAgICAgICAgICAgICAgICBSQ0NfQUhCMkVOUl9HUElPQ0VOX01zayAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMkVOUl9HUElPRUVOX1BvcyAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMkVOUl9HUElPRUVOX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjJFTlJfR1BJT0VFTl9Qb3MpIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBSQ0NfQUhCMkVOUl9HUElPRUVOICAgICAgICAgICAgICAgICBSQ0NfQUhCMkVOUl9HUElPRUVOX01zayAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMkVOUl9HUElPSEVOX1BvcyAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMkVOUl9HUElPSEVOX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjJFTlJfR1BJT0hFTl9Qb3MpIC8qITwgMHgwMDAwMDA4MCAqLworI2RlZmluZSBSQ0NfQUhCMkVOUl9HUElPSEVOICAgICAgICAgICAgICAgICBSQ0NfQUhCMkVOUl9HUElPSEVOX01zayAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMkVOUl9BRENFTl9Qb3MgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMkVOUl9BRENFTl9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjJFTlJfQURDRU5fUG9zKSAgIC8qITwgMHgwMDAwMjAwMCAqLworI2RlZmluZSBSQ0NfQUhCMkVOUl9BRENFTiAgICAgICAgICAgICAgICAgICBSQ0NfQUhCMkVOUl9BRENFTl9Nc2sgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMkVOUl9BRVMxRU5fUG9zICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMkVOUl9BRVMxRU5fTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjJFTlJfQUVTMUVOX1BvcykgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIFJDQ19BSEIyRU5SX0FFUzFFTiAgICAgICAgICAgICAgICAgIFJDQ19BSEIyRU5SX0FFUzFFTl9Nc2sgICAgICAgICAgIAorCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQUhCM0VOUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLworI2RlZmluZSBSQ0NfQUhCM0VOUl9RVUFEU1BJRU5fUG9zICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCM0VOUl9RVUFEU1BJRU5fTXNrICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjNFTlJfUVVBRFNQSUVOX1BvcykgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBSQ0NfQUhCM0VOUl9RVUFEU1BJRU4gICAgICAgICAgICAgICBSQ0NfQUhCM0VOUl9RVUFEU1BJRU5fTXNrICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCM0VOUl9QS0FFTl9Qb3MgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCM0VOUl9QS0FFTl9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjNFTlJfUEtBRU5fUG9zKSAgIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBSQ0NfQUhCM0VOUl9QS0FFTiAgICAgICAgICAgICAgICAgICBSQ0NfQUhCM0VOUl9QS0FFTl9Nc2sgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCM0VOUl9BRVMyRU5fUG9zICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCM0VOUl9BRVMyRU5fTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjNFTlJfQUVTMkVOX1BvcykgLyohPCAweDAwMDIwMDAwICovCisjZGVmaW5lIFJDQ19BSEIzRU5SX0FFUzJFTiAgICAgICAgICAgICAgICAgIFJDQ19BSEIzRU5SX0FFUzJFTl9Nc2sgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCM0VOUl9STkdFTl9Qb3MgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCM0VOUl9STkdFTl9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjNFTlJfUk5HRU5fUG9zKSAgLyohPCAweDAwMDQwMDAwICovCisjZGVmaW5lIFJDQ19BSEIzRU5SX1JOR0VOICAgICAgICAgICAgICAgICAgIFJDQ19BSEIzRU5SX1JOR0VOX01zayAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FIQjNFTlJfSFNFTUVOX1BvcyAgICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FIQjNFTlJfSFNFTUVOX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BSEIzRU5SX0hTRU1FTl9Qb3MpICAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgUkNDX0FIQjNFTlJfSFNFTUVOICAgICAgICAgICAgICAgICAgUkNDX0FIQjNFTlJfSFNFTUVOX01zayAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FIQjNFTlJfSVBDQ0VOX1BvcyAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FIQjNFTlJfSVBDQ0VOX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BSEIzRU5SX0lQQ0NFTl9Qb3MpICAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgUkNDX0FIQjNFTlJfSVBDQ0VOICAgICAgICAgICAgICAgICAgUkNDX0FIQjNFTlJfSVBDQ0VOX01zayAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FIQjNFTlJfRkxBU0hFTl9Qb3MgICAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FIQjNFTlJfRkxBU0hFTl9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BSEIzRU5SX0ZMQVNIRU5fUG9zKSAgIC8qITwgMHgwMjAwMDAwMCAqLworI2RlZmluZSBSQ0NfQUhCM0VOUl9GTEFTSEVOICAgICAgICAgICAgICAgICBSQ0NfQUhCM0VOUl9GTEFTSEVOX01zayAgICAgICAgICAgICAgCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19BUEIxRU5SMSByZWdpc3RlciAgKioqKioqKioqKioqKiovCisjZGVmaW5lIFJDQ19BUEIxRU5SMV9USU0yRU5fUG9zICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BUEIxRU5SMV9USU0yRU5fTXNrICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMUVOUjFfVElNMkVOX1BvcykgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFJDQ19BUEIxRU5SMV9USU0yRU4gICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SMV9USU0yRU5fTXNrICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BUEIxRU5SMV9SVENBUEJFTl9Qb3MgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BUEIxRU5SMV9SVENBUEJFTl9Nc2sgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMUVOUjFfUlRDQVBCRU5fUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgUkNDX0FQQjFFTlIxX1JUQ0FQQkVOICAgICAgICAgICAgICAgUkNDX0FQQjFFTlIxX1JUQ0FQQkVOX01zayAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FQQjFFTlIxX1dXREdFTl9Qb3MgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FQQjFFTlIxX1dXREdFTl9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxRU5SMV9XV0RHRU5fUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgUkNDX0FQQjFFTlIxX1dXREdFTiAgICAgICAgICAgICAgICAgUkNDX0FQQjFFTlIxX1dXREdFTl9Nc2sgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FQQjFFTlIxX1NQSTJFTl9Qb3MgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FQQjFFTlIxX1NQSTJFTl9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxRU5SMV9TUEkyRU5fUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgUkNDX0FQQjFFTlIxX1NQSTJFTiAgICAgICAgICAgICAgICAgUkNDX0FQQjFFTlIxX1NQSTJFTl9Nc2sgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FQQjFFTlIxX0kyQzFFTl9Qb3MgICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FQQjFFTlIxX0kyQzFFTl9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxRU5SMV9JMkMxRU5fUG9zKSAvKiE8IDB4MDAyMDAwMDAgKi8KKyNkZWZpbmUgUkNDX0FQQjFFTlIxX0kyQzFFTiAgICAgICAgICAgICAgICAgUkNDX0FQQjFFTlIxX0kyQzFFTl9Nc2sgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FQQjFFTlIxX0kyQzNFTl9Qb3MgICAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FQQjFFTlIxX0kyQzNFTl9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxRU5SMV9JMkMzRU5fUG9zKSAvKiE8IDB4MDA4MDAwMDAgKi8KKyNkZWZpbmUgUkNDX0FQQjFFTlIxX0kyQzNFTiAgICAgICAgICAgICAgICAgUkNDX0FQQjFFTlIxX0kyQzNFTl9Nc2sgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FQQjFFTlIxX0NSU0VOX1BvcyAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FQQjFFTlIxX0NSU0VOX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxRU5SMV9DUlNFTl9Qb3MpICAvKiE8IDB4MDEwMDAwMDAgKi8KKyNkZWZpbmUgUkNDX0FQQjFFTlIxX0NSU0VOICAgICAgICAgICAgICAgICAgUkNDX0FQQjFFTlIxX0NSU0VOX01zayAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FQQjFFTlIxX1VTQkVOX1BvcyAgICAgICAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FQQjFFTlIxX1VTQkVOX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxRU5SMV9VU0JFTl9Qb3MpIC8qITwgMHgwNDAwMDAwMCAqLworI2RlZmluZSBSQ0NfQVBCMUVOUjFfVVNCRU4gICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUjFfVVNCRU5fTXNrICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FQQjFFTlIxX0xQVElNMUVOX1BvcyAgICAgICAgICAgKDMxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FQQjFFTlIxX0xQVElNMUVOX01zayAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxRU5SMV9MUFRJTTFFTl9Qb3MpIC8qITwgMHg4MDAwMDAwMCAqLworI2RlZmluZSBSQ0NfQVBCMUVOUjFfTFBUSU0xRU4gICAgICAgICAgICAgICBSQ0NfQVBCMUVOUjFfTFBUSU0xRU5fTXNrICAgICAgICAgIAorCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQVBCMUVOUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqLworI2RlZmluZSBSQ0NfQVBCMUVOUjJfTFBVQVJUMUVOX1BvcyAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQVBCMUVOUjJfTFBVQVJUMUVOX01zayAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMUVOUjJfTFBVQVJUMUVOX1BvcykgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFJDQ19BUEIxRU5SMl9MUFVBUlQxRU4gICAgICAgICAgICAgIFJDQ19BUEIxRU5SMl9MUFVBUlQxRU5fTXNrICAgICAgICAgIAorI2RlZmluZSBSQ0NfQVBCMUVOUjJfTFBUSU0yRU5fUG9zICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQVBCMUVOUjJfTFBUSU0yRU5fTXNrICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjFFTlIyX0xQVElNMkVOX1BvcykgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIFJDQ19BUEIxRU5SMl9MUFRJTTJFTiAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SMl9MUFRJTTJFTl9Nc2sgICAgICAgICAgCisgCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQVBCMkVOUiByZWdpc3RlciAgKioqKioqKioqKioqKiovCisjZGVmaW5lIFJDQ19BUEIyRU5SX1RJTTFFTl9Qb3MgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BUEIyRU5SX1RJTTFFTl9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMkVOUl9USU0xRU5fUG9zKSAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIFJDQ19BUEIyRU5SX1RJTTFFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIyRU5SX1RJTTFFTl9Nc2sgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BUEIyRU5SX1NQSTFFTl9Qb3MgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BUEIyRU5SX1NQSTFFTl9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMkVOUl9TUEkxRU5fUG9zKSAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIFJDQ19BUEIyRU5SX1NQSTFFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIyRU5SX1NQSTFFTl9Nc2sgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BUEIyRU5SX1VTQVJUMUVOX1BvcyAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BUEIyRU5SX1VTQVJUMUVOX01zayAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMkVOUl9VU0FSVDFFTl9Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLworI2RlZmluZSBSQ0NfQVBCMkVOUl9VU0FSVDFFTiAgICAgICAgICAgICAgICBSQ0NfQVBCMkVOUl9VU0FSVDFFTl9Nc2sgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQVBCMkVOUl9USU0xNkVOX1BvcyAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQVBCMkVOUl9USU0xNkVOX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjJFTlJfVElNMTZFTl9Qb3MpIC8qITwgMHgwMDAyMDAwMCAqLworI2RlZmluZSBSQ0NfQVBCMkVOUl9USU0xNkVOICAgICAgICAgICAgICAgICBSQ0NfQVBCMkVOUl9USU0xNkVOX01zayAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQVBCMkVOUl9USU0xN0VOX1BvcyAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQVBCMkVOUl9USU0xN0VOX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjJFTlJfVElNMTdFTl9Qb3MpIC8qITwgMHgwMDA0MDAwMCAqLworI2RlZmluZSBSQ0NfQVBCMkVOUl9USU0xN0VOICAgICAgICAgICAgICAgICBSQ0NfQVBCMkVOUl9USU0xN0VOX01zayAgICAgICAgICAgIAorCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQUhCMVNNRU5SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLworI2RlZmluZSBSQ0NfQUhCMVNNRU5SX0RNQTFTTUVOX1BvcyAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMVNNRU5SX0RNQTFTTUVOX01zayAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjFTTUVOUl9ETUExU01FTl9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBSQ0NfQUhCMVNNRU5SX0RNQTFTTUVOICAgICAgICAgICAgICBSQ0NfQUhCMVNNRU5SX0RNQTFTTUVOX01zayAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMVNNRU5SX0RNQTJTTUVOX1BvcyAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMVNNRU5SX0RNQTJTTUVOX01zayAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjFTTUVOUl9ETUEyU01FTl9Qb3MpIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBSQ0NfQUhCMVNNRU5SX0RNQTJTTUVOICAgICAgICAgICAgICBSQ0NfQUhCMVNNRU5SX0RNQTJTTUVOX01zayAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMVNNRU5SX0RNQU1VWDFTTUVOX1BvcyAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMVNNRU5SX0RNQU1VWDFTTUVOX01zayAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjFTTUVOUl9ETUFNVVgxU01FTl9Qb3MpIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBSQ0NfQUhCMVNNRU5SX0RNQU1VWDFTTUVOICAgICAgICAgICBSQ0NfQUhCMVNNRU5SX0RNQU1VWDFTTUVOX01zayAgICAgICAKKyNkZWZpbmUgUkNDX0FIQjFTTUVOUl9TUkFNMVNNRU5fUG9zICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FIQjFTTUVOUl9TUkFNMVNNRU5fTXNrICAgICAgICAgKDB4MVVMIDw8IFJDQ19BSEIxU01FTlJfU1JBTTFTTUVOX1BvcykgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIFJDQ19BSEIxU01FTlJfU1JBTTFTTUVOICAgICAgICAgICAgIFJDQ19BSEIxU01FTlJfU1JBTTFTTUVOX01zayAgICAgICAgCisjZGVmaW5lIFJDQ19BSEIxU01FTlJfQ1JDU01FTl9Qb3MgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BSEIxU01FTlJfQ1JDU01FTl9Nc2sgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQUhCMVNNRU5SX0NSQ1NNRU5fUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgUkNDX0FIQjFTTUVOUl9DUkNTTUVOICAgICAgICAgICAgICAgUkNDX0FIQjFTTUVOUl9DUkNTTUVOX01zayAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FIQjFTTUVOUl9UU0NTTUVOX1BvcyAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FIQjFTTUVOUl9UU0NTTUVOX01zayAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BSEIxU01FTlJfVFNDU01FTl9Qb3MpIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBSQ0NfQUhCMVNNRU5SX1RTQ1NNRU4gICAgICAgICAgICAgICBSQ0NfQUhCMVNNRU5SX1RTQ1NNRU5fTXNrICAgICAgICAgIAorCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQUhCMlNNRU5SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovCisjZGVmaW5lIFJDQ19BSEIyU01FTlJfR1BJT0FTTUVOX1BvcyAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BSEIyU01FTlJfR1BJT0FTTUVOX01zayAgICAgICAgICgweDFVTCA8PCBSQ0NfQUhCMlNNRU5SX0dQSU9BU01FTl9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBSQ0NfQUhCMlNNRU5SX0dQSU9BU01FTiAgICAgICAgICAgICBSQ0NfQUhCMlNNRU5SX0dQSU9BU01FTl9Nc2sgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMlNNRU5SX0dQSU9CU01FTl9Qb3MgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMlNNRU5SX0dQSU9CU01FTl9Nc2sgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjJTTUVOUl9HUElPQlNNRU5fUG9zKSAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgUkNDX0FIQjJTTUVOUl9HUElPQlNNRU4gICAgICAgICAgICAgUkNDX0FIQjJTTUVOUl9HUElPQlNNRU5fTXNrICAgICAgICAKKyNkZWZpbmUgUkNDX0FIQjJTTUVOUl9HUElPQ1NNRU5fUG9zICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FIQjJTTUVOUl9HUElPQ1NNRU5fTXNrICAgICAgICAgKDB4MVVMIDw8IFJDQ19BSEIyU01FTlJfR1BJT0NTTUVOX1BvcykgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIFJDQ19BSEIyU01FTlJfR1BJT0NTTUVOICAgICAgICAgICAgIFJDQ19BSEIyU01FTlJfR1BJT0NTTUVOX01zayAgICAgICAgCisjZGVmaW5lIFJDQ19BSEIyU01FTlJfR1BJT0VTTUVOX1BvcyAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BSEIyU01FTlJfR1BJT0VTTUVOX01zayAgICAgICAgICgweDFVTCA8PCBSQ0NfQUhCMlNNRU5SX0dQSU9FU01FTl9Qb3MpIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBSQ0NfQUhCMlNNRU5SX0dQSU9FU01FTiAgICAgICAgICAgICBSQ0NfQUhCMlNNRU5SX0dQSU9FU01FTl9Nc2sgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMlNNRU5SX0dQSU9IU01FTl9Qb3MgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMlNNRU5SX0dQSU9IU01FTl9Nc2sgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjJTTUVOUl9HUElPSFNNRU5fUG9zKSAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgUkNDX0FIQjJTTUVOUl9HUElPSFNNRU4gICAgICAgICAgICAgUkNDX0FIQjJTTUVOUl9HUElPSFNNRU5fTXNrICAgICAgICAKKyNkZWZpbmUgUkNDX0FIQjJTTUVOUl9BRENTTUVOX1BvcyAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FIQjJTTUVOUl9BRENTTUVOX01zayAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BSEIyU01FTlJfQURDU01FTl9Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLworI2RlZmluZSBSQ0NfQUhCMlNNRU5SX0FEQ1NNRU4gICAgICAgICAgICAgICBSQ0NfQUhCMlNNRU5SX0FEQ1NNRU5fTXNrICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMlNNRU5SX0FFUzFTTUVOX1BvcyAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCMlNNRU5SX0FFUzFTTUVOX01zayAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjJTTUVOUl9BRVMxU01FTl9Qb3MpIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBSQ0NfQUhCMlNNRU5SX0FFUzFTTUVOICAgICAgICAgICAgICBSQ0NfQUhCMlNNRU5SX0FFUzFTTUVOX01zayAgICAgICAKKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0FIQjNTTUVOUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLworI2RlZmluZSBSQ0NfQUhCM1NNRU5SX1FVQURTUElTTUVOX1BvcyAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCM1NNRU5SX1FVQURTUElTTUVOX01zayAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjNTTUVOUl9RVUFEU1BJU01FTl9Qb3MpIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBSQ0NfQUhCM1NNRU5SX1FVQURTUElTTUVOICAgICAgICAgICBSQ0NfQUhCM1NNRU5SX1FVQURTUElTTUVOX01zayAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCM1NNRU5SX1BLQVNNRU5fUG9zICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCM1NNRU5SX1BLQVNNRU5fTXNrICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjNTTUVOUl9QS0FTTUVOX1BvcykgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIFJDQ19BSEIzU01FTlJfUEtBU01FTiAgICAgICAgICAgICAgIFJDQ19BSEIzU01FTlJfUEtBU01FTl9Nc2sgICAgICAgICAgCisjZGVmaW5lIFJDQ19BSEIzU01FTlJfQUVTMlNNRU5fUG9zICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BSEIzU01FTlJfQUVTMlNNRU5fTXNrICAgICAgICAgICgweDFVTCA8PCBSQ0NfQUhCM1NNRU5SX0FFUzJTTUVOX1BvcykgLyohPCAweDAwMDIwMDAwICovCisjZGVmaW5lIFJDQ19BSEIzU01FTlJfQUVTMlNNRU4gICAgICAgICAgICAgIFJDQ19BSEIzU01FTlJfQUVTMlNNRU5fTXNrICAgICAgIAorI2RlZmluZSBSQ0NfQUhCM1NNRU5SX1JOR1NNRU5fUG9zICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCM1NNRU5SX1JOR1NNRU5fTXNrICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjNTTUVOUl9STkdTTUVOX1BvcykgLyohPCAweDAwMDQwMDAwICovCisjZGVmaW5lIFJDQ19BSEIzU01FTlJfUk5HU01FTiAgICAgICAgICAgICAgICBSQ0NfQUhCM1NNRU5SX1JOR1NNRU5fTXNrICAgICAgICAgCisjZGVmaW5lIFJDQ19BSEIzU01FTlJfU1JBTTJTTUVOX1BvcyAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BSEIzU01FTlJfU1JBTTJTTUVOX01zayAgICAgICAgICgweDFVTCA8PCBSQ0NfQUhCM1NNRU5SX1NSQU0yU01FTl9Qb3MpIC8qITwgMHgwMTAwMDAwMCAqLworI2RlZmluZSBSQ0NfQUhCM1NNRU5SX1NSQU0yU01FTiAgICAgICAgICAgICBSQ0NfQUhCM1NNRU5SX1NSQU0yU01FTl9Nc2sgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCM1NNRU5SX0ZMQVNIU01FTl9Qb3MgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQUhCM1NNRU5SX0ZMQVNIU01FTl9Nc2sgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQjNTTUVOUl9GTEFTSFNNRU5fUG9zKSAvKiE8IDB4MDIwMDAwMDAgKi8KKyNkZWZpbmUgUkNDX0FIQjNTTUVOUl9GTEFTSFNNRU4gICAgICAgICAgICAgUkNDX0FIQjNTTUVOUl9GTEFTSFNNRU5fTXNrICAgICAgICAgIAorCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQVBCMVNNRU5SMSByZWdpc3RlciAgKioqKioqKioqKioqKiovCisjZGVmaW5lIFJDQ19BUEIxU01FTlIxX1RJTTJTTUVOX1BvcyAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BUEIxU01FTlIxX1RJTTJTTUVOX01zayAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMVNNRU5SMV9USU0yU01FTl9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBSQ0NfQVBCMVNNRU5SMV9USU0yU01FTiAgICAgICAgICAgICBSQ0NfQVBCMVNNRU5SMV9USU0yU01FTl9Nc2sgICAgICAgIAorI2RlZmluZSBSQ0NfQVBCMVNNRU5SMV9SVENBUEJTTUVOX1BvcyAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQVBCMVNNRU5SMV9SVENBUEJTTUVOX01zayAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjFTTUVOUjFfUlRDQVBCU01FTl9Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLworI2RlZmluZSBSQ0NfQVBCMVNNRU5SMV9SVENBUEJTTUVOICAgICAgICAgICBSQ0NfQVBCMVNNRU5SMV9SVENBUEJTTUVOX01zayAgICAgIAorI2RlZmluZSBSQ0NfQVBCMVNNRU5SMV9XV0RHU01FTl9Qb3MgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQVBCMVNNRU5SMV9XV0RHU01FTl9Nc2sgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjFTTUVOUjFfV1dER1NNRU5fUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgUkNDX0FQQjFTTUVOUjFfV1dER1NNRU4gICAgICAgICAgICAgUkNDX0FQQjFTTUVOUjFfV1dER1NNRU5fTXNrICAgICAgICAKKyNkZWZpbmUgUkNDX0FQQjFTTUVOUjFfU1BJMlNNRU5fUG9zICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FQQjFTTUVOUjFfU1BJMlNNRU5fTXNrICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxU01FTlIxX1NQSTJTTUVOX1BvcykgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIFJDQ19BUEIxU01FTlIxX1NQSTJTTUVOICAgICAgICAgICAgIFJDQ19BUEIxU01FTlIxX1NQSTJTTUVOX01zayAgICAgICAgCisjZGVmaW5lIFJDQ19BUEIxU01FTlIxX0kyQzFTTUVOX1BvcyAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BUEIxU01FTlIxX0kyQzFTTUVOX01zayAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMVNNRU5SMV9JMkMxU01FTl9Qb3MpIC8qITwgMHgwMDIwMDAwMCAqLworI2RlZmluZSBSQ0NfQVBCMVNNRU5SMV9JMkMxU01FTiAgICAgICAgICAgICBSQ0NfQVBCMVNNRU5SMV9JMkMxU01FTl9Nc2sgICAgICAgIAorI2RlZmluZSBSQ0NfQVBCMVNNRU5SMV9JMkMzU01FTl9Qb3MgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQVBCMVNNRU5SMV9JMkMzU01FTl9Nc2sgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjFTTUVOUjFfSTJDM1NNRU5fUG9zKSAvKiE8IDB4MDA4MDAwMDAgKi8KKyNkZWZpbmUgUkNDX0FQQjFTTUVOUjFfSTJDM1NNRU4gICAgICAgICAgICAgUkNDX0FQQjFTTUVOUjFfSTJDM1NNRU5fTXNrICAgICAgICAKKyNkZWZpbmUgUkNDX0FQQjFTTUVOUjFfQ1JTU01FTl9Qb3MgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FQQjFTTUVOUjFfQ1JTU01FTl9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxU01FTlIxX0NSU1NNRU5fUG9zKSAvKiE8IDB4MDEwMDAwMDAgKi8KKyNkZWZpbmUgUkNDX0FQQjFTTUVOUjFfQ1JTU01FTiAgICAgICAgICAgICAgUkNDX0FQQjFTTUVOUjFfQ1JTU01FTl9Nc2sgICAgICAgICAKKyNkZWZpbmUgUkNDX0FQQjFTTUVOUjFfVVNCU01FTl9Qb3MgICAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FQQjFTTUVOUjFfVVNCU01FTl9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxU01FTlIxX1VTQlNNRU5fUG9zKSAvKiE8IDB4MDQwMDAwMDAgKi8KKyNkZWZpbmUgUkNDX0FQQjFTTUVOUjFfVVNCU01FTiAgICAgICAgICAgICAgUkNDX0FQQjFTTUVOUjFfVVNCU01FTl9Nc2sgICAgICAgCisjZGVmaW5lIFJDQ19BUEIxU01FTlIxX0xQVElNMVNNRU5fUG9zICAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BUEIxU01FTlIxX0xQVElNMVNNRU5fTXNrICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMVNNRU5SMV9MUFRJTTFTTUVOX1BvcykgLyohPCAweDgwMDAwMDAwICovCisjZGVmaW5lIFJDQ19BUEIxU01FTlIxX0xQVElNMVNNRU4gICAgICAgICAgIFJDQ19BUEIxU01FTlIxX0xQVElNMVNNRU5fTXNrICAgICAgCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19BUEIxU01FTlIyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUkNDX0FQQjFTTUVOUjJfTFBVQVJUMVNNRU5fUG9zICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FQQjFTTUVOUjJfTFBVQVJUMVNNRU5fTXNrICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxU01FTlIyX0xQVUFSVDFTTUVOX1BvcykgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFJDQ19BUEIxU01FTlIyX0xQVUFSVDFTTUVOICAgICAgICAgIFJDQ19BUEIxU01FTlIyX0xQVUFSVDFTTUVOX01zayAgICAgIAorI2RlZmluZSBSQ0NfQVBCMVNNRU5SMl9MUFRJTTJTTUVOX1BvcyAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQVBCMVNNRU5SMl9MUFRJTTJTTUVOX01zayAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjFTTUVOUjJfTFBUSU0yU01FTl9Qb3MpIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBSQ0NfQVBCMVNNRU5SMl9MUFRJTTJTTUVOICAgICAgICAgICBSQ0NfQVBCMVNNRU5SMl9MUFRJTTJTTUVOX01zayAgICAgIAorIAorLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0FQQjJTTUVOUiByZWdpc3RlciAgKioqKioqKioqKioqKiovCisjZGVmaW5lIFJDQ19BUEIyU01FTlJfVElNMVNNRU5fUG9zICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BUEIyU01FTlJfVElNMVNNRU5fTXNrICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMlNNRU5SX1RJTTFTTUVOX1BvcykgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIFJDQ19BUEIyU01FTlJfVElNMVNNRU4gICAgICAgICAgICAgIFJDQ19BUEIyU01FTlJfVElNMVNNRU5fTXNrICAgICAgICAgCisjZGVmaW5lIFJDQ19BUEIyU01FTlJfU1BJMVNNRU5fUG9zICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BUEIyU01FTlJfU1BJMVNNRU5fTXNrICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMlNNRU5SX1NQSTFTTUVOX1BvcykgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIFJDQ19BUEIyU01FTlJfU1BJMVNNRU4gICAgICAgICAgICAgIFJDQ19BUEIyU01FTlJfU1BJMVNNRU5fTXNrICAgICAgICAgCisjZGVmaW5lIFJDQ19BUEIyU01FTlJfVVNBUlQxU01FTl9Qb3MgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BUEIyU01FTlJfVVNBUlQxU01FTl9Nc2sgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMlNNRU5SX1VTQVJUMVNNRU5fUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgUkNDX0FQQjJTTUVOUl9VU0FSVDFTTUVOICAgICAgICAgICAgUkNDX0FQQjJTTUVOUl9VU0FSVDFTTUVOX01zayAgICAgICAKKyNkZWZpbmUgUkNDX0FQQjJTTUVOUl9USU0xNlNNRU5fUG9zICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0FQQjJTTUVOUl9USU0xNlNNRU5fTXNrICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIyU01FTlJfVElNMTZTTUVOX1BvcykgLyohPCAweDAwMDIwMDAwICovCisjZGVmaW5lIFJDQ19BUEIyU01FTlJfVElNMTZTTUVOICAgICAgICAgICAgIFJDQ19BUEIyU01FTlJfVElNMTZTTUVOX01zayAgICAgICAgCisjZGVmaW5lIFJDQ19BUEIyU01FTlJfVElNMTdTTUVOX1BvcyAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19BUEIyU01FTlJfVElNMTdTTUVOX01zayAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMlNNRU5SX1RJTTE3U01FTl9Qb3MpIC8qITwgMHgwMDA0MDAwMCAqLworI2RlZmluZSBSQ0NfQVBCMlNNRU5SX1RJTTE3U01FTiAgICAgICAgICAgICBSQ0NfQVBCMlNNRU5SX1RJTTE3U01FTl9Nc2sgICAgICAgIAorCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQ0NJUFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUkNDX0NDSVBSX1VTQVJUMVNFTF9Qb3MgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NDSVBSX1VTQVJUMVNFTF9Nc2sgICAgICAgICAgICAgKDB4M1VMIDw8IFJDQ19DQ0lQUl9VU0FSVDFTRUxfUG9zKSAvKiE8IDB4MDAwMDAwMDMgKi8KKyNkZWZpbmUgUkNDX0NDSVBSX1VTQVJUMVNFTCAgICAgICAgICAgICAgICAgUkNDX0NDSVBSX1VTQVJUMVNFTF9Nc2sgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NDSVBSX1VTQVJUMVNFTF8wICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NDSVBSX1VTQVJUMVNFTF9Qb3MpICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgUkNDX0NDSVBSX1VTQVJUMVNFTF8xICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX0NDSVBSX1VTQVJUMVNFTF9Qb3MpICAvKiE8IDB4MDAwMDAwMDIgKi8KKworI2RlZmluZSBSQ0NfQ0NJUFJfSTJTU0VMX1BvcyAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ0NJUFJfSTJTU0VMX01zayAgICAgICAgICAgICAgICAoMHgzVUwgPDwgUkNDX0NDSVBSX0kyU1NFTF9Qb3MpICAgIC8qITwgMHgwMDAwMDMwMCAqLworI2RlZmluZSBSQ0NfQ0NJUFJfSTJTU0VMICAgICAgICAgICAgICAgICAgICBSQ0NfQ0NJUFJfSTJTU0VMX01zayAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ0NJUFJfSTJTU0VMXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0NJUFJfSTJTU0VMX1BvcykgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBSQ0NfQ0NJUFJfSTJTU0VMXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSQ0NfQ0NJUFJfSTJTU0VMX1BvcykgICAgIC8qITwgMHgwMDAwMDIwMCAqLworCisjZGVmaW5lIFJDQ19DQ0lQUl9MUFVBUlQxU0VMX1BvcyAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DQ0lQUl9MUFVBUlQxU0VMX01zayAgICAgICAgICAgICgweDNVTCA8PCBSQ0NfQ0NJUFJfTFBVQVJUMVNFTF9Qb3MpIC8qITwgMHgwMDAwMEMwMCAqLworI2RlZmluZSBSQ0NfQ0NJUFJfTFBVQVJUMVNFTCAgICAgICAgICAgICAgICBSQ0NfQ0NJUFJfTFBVQVJUMVNFTF9Nc2sgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NDSVBSX0xQVUFSVDFTRUxfMCAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NDSVBSX0xQVUFSVDFTRUxfUG9zKSAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIFJDQ19DQ0lQUl9MUFVBUlQxU0VMXzEgICAgICAgICAgICAgICgweDJVIDw8IFJDQ19DQ0lQUl9MUFVBUlQxU0VMX1BvcykgIC8qITwgMHgwMDAwMDgwMCAqLworCisjZGVmaW5lIFJDQ19DQ0lQUl9JMkMxU0VMX1BvcyAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DQ0lQUl9JMkMxU0VMX01zayAgICAgICAgICAgICAgICgweDNVTCA8PCBSQ0NfQ0NJUFJfSTJDMVNFTF9Qb3MpICAgLyohPCAweDAwMDAzMDAwICovCisjZGVmaW5lIFJDQ19DQ0lQUl9JMkMxU0VMICAgICAgICAgICAgICAgICAgIFJDQ19DQ0lQUl9JMkMxU0VMX01zayAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DQ0lQUl9JMkMxU0VMXzAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DQ0lQUl9JMkMxU0VMX1BvcykgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIFJDQ19DQ0lQUl9JMkMxU0VMXzEgICAgICAgICAgICAgICAgICgweDJVIDw8IFJDQ19DQ0lQUl9JMkMxU0VMX1BvcykgICAgLyohPCAweDAwMDAyMDAwICovCisKKyNkZWZpbmUgUkNDX0NDSVBSX0kyQzNTRUxfUG9zICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NDSVBSX0kyQzNTRUxfTXNrICAgICAgICAgICAgICAgKDB4M1VMIDw8IFJDQ19DQ0lQUl9JMkMzU0VMX1BvcykgICAvKiE8IDB4MDAwMzAwMDAgKi8KKyNkZWZpbmUgUkNDX0NDSVBSX0kyQzNTRUwgICAgICAgICAgICAgICAgICAgUkNDX0NDSVBSX0kyQzNTRUxfTXNrICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NDSVBSX0kyQzNTRUxfMCAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NDSVBSX0kyQzNTRUxfUG9zKSAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgUkNDX0NDSVBSX0kyQzNTRUxfMSAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX0NDSVBSX0kyQzNTRUxfUG9zKSAgICAvKiE8IDB4MDAwMjAwMDAgKi8KKworI2RlZmluZSBSQ0NfQ0NJUFJfTFBUSU0xU0VMX1BvcyAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ0NJUFJfTFBUSU0xU0VMX01zayAgICAgICAgICAgICAoMHgzVUwgPDwgUkNDX0NDSVBSX0xQVElNMVNFTF9Qb3MpIC8qITwgMHgwMDBDMDAwMCAqLworI2RlZmluZSBSQ0NfQ0NJUFJfTFBUSU0xU0VMICAgICAgICAgICAgICAgICBSQ0NfQ0NJUFJfTFBUSU0xU0VMX01zayAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ0NJUFJfTFBUSU0xU0VMXzAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0NJUFJfTFBUSU0xU0VMX1BvcykgIC8qITwgMHgwMDA0MDAwMCAqLworI2RlZmluZSBSQ0NfQ0NJUFJfTFBUSU0xU0VMXzEgICAgICAgICAgICAgICAoMHgyVSA8PCBSQ0NfQ0NJUFJfTFBUSU0xU0VMX1BvcykgIC8qITwgMHgwMDA4MDAwMCAqLworCisjZGVmaW5lIFJDQ19DQ0lQUl9MUFRJTTJTRUxfUG9zICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DQ0lQUl9MUFRJTTJTRUxfTXNrICAgICAgICAgICAgICgweDNVTCA8PCBSQ0NfQ0NJUFJfTFBUSU0yU0VMX1BvcykgLyohPCAweDAwMzAwMDAwICovCisjZGVmaW5lIFJDQ19DQ0lQUl9MUFRJTTJTRUwgICAgICAgICAgICAgICAgIFJDQ19DQ0lQUl9MUFRJTTJTRUxfTXNrICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DQ0lQUl9MUFRJTTJTRUxfMCAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DQ0lQUl9MUFRJTTJTRUxfUG9zKSAgLyohPCAweDAwMTAwMDAwICovCisjZGVmaW5lIFJDQ19DQ0lQUl9MUFRJTTJTRUxfMSAgICAgICAgICAgICAgICgweDJVIDw8IFJDQ19DQ0lQUl9MUFRJTTJTRUxfUG9zKSAgLyohPCAweDAwMjAwMDAwICovCisKKyNkZWZpbmUgUkNDX0NDSVBSX0NMSzQ4U0VMX1BvcyAgICAgICAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NDSVBSX0NMSzQ4U0VMX01zayAgICAgICAgICAgICAgKDB4M1VMIDw8IFJDQ19DQ0lQUl9DTEs0OFNFTF9Qb3MpICAvKiE8IDB4MEMwMDAwMDAgKi8KKyNkZWZpbmUgUkNDX0NDSVBSX0NMSzQ4U0VMICAgICAgICAgICAgICAgICAgUkNDX0NDSVBSX0NMSzQ4U0VMX01zayAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NDSVBSX0NMSzQ4U0VMXzAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NDSVBSX0NMSzQ4U0VMX1BvcykgICAvKiE8IDB4MDQwMDAwMDAgKi8KKyNkZWZpbmUgUkNDX0NDSVBSX0NMSzQ4U0VMXzEgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX0NDSVBSX0NMSzQ4U0VMX1BvcykgICAvKiE8IDB4MDgwMDAwMDAgKi8KKworI2RlZmluZSBSQ0NfQ0NJUFJfQURDU0VMX1BvcyAgICAgICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ0NJUFJfQURDU0VMX01zayAgICAgICAgICAgICAgICAoMHgzVUwgPDwgUkNDX0NDSVBSX0FEQ1NFTF9Qb3MpICAgIC8qITwgMHgzMDAwMDAwMCAqLworI2RlZmluZSBSQ0NfQ0NJUFJfQURDU0VMICAgICAgICAgICAgICAgICAgICBSQ0NfQ0NJUFJfQURDU0VMX01zayAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ0NJUFJfQURDU0VMXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0NJUFJfQURDU0VMX1BvcykgICAgIC8qITwgMHgxMDAwMDAwMCAqLworI2RlZmluZSBSQ0NfQ0NJUFJfQURDU0VMXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSQ0NfQ0NJUFJfQURDU0VMX1BvcykgICAgIC8qITwgMHgyMDAwMDAwMCAqLworCisjZGVmaW5lIFJDQ19DQ0lQUl9STkdTRUxfUG9zICAgICAgICAgICAgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DQ0lQUl9STkdTRUxfTXNrICAgICAgICAgICAgICAgICgweDNVTCA8PCBSQ0NfQ0NJUFJfUk5HU0VMX1BvcykgICAgLyohPCAweEMwMDAwMDAwICovCisjZGVmaW5lIFJDQ19DQ0lQUl9STkdTRUwgICAgICAgICAgICAgICAgICAgIFJDQ19DQ0lQUl9STkdTRUxfTXNrICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DQ0lQUl9STkdTRUxfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DQ0lQUl9STkdTRUxfUG9zKSAgICAgLyohPCAweDQwMDAwMDAwICovCisjZGVmaW5lIFJDQ19DQ0lQUl9STkdTRUxfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJDQ19DQ0lQUl9STkdTRUxfUG9zKSAgICAgLyohPCAweDgwMDAwMDAwICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19CRENSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFJDQ19CRENSX0xTRU9OX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19CRENSX0xTRU9OX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQkRDUl9MU0VPTl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFJDQ19CRENSX0xTRU9OICAgICAgICAgICAgICAgICAgICAgIFJDQ19CRENSX0xTRU9OX01zayAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19CRENSX0xTRVJEWV9Qb3MgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19CRENSX0xTRVJEWV9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQkRDUl9MU0VSRFlfUG9zKSAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFJDQ19CRENSX0xTRVJEWSAgICAgICAgICAgICAgICAgICAgIFJDQ19CRENSX0xTRVJEWV9Nc2sgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19CRENSX0xTRUJZUF9Qb3MgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19CRENSX0xTRUJZUF9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQkRDUl9MU0VCWVBfUG9zKSAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIFJDQ19CRENSX0xTRUJZUCAgICAgICAgICAgICAgICAgICAgIFJDQ19CRENSX0xTRUJZUF9Nc2sgICAgICAgICAgICAgICAgCisKKyNkZWZpbmUgUkNDX0JEQ1JfTFNFRFJWX1BvcyAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0JEQ1JfTFNFRFJWX01zayAgICAgICAgICAgICAgICAgKDB4M1VMIDw8IFJDQ19CRENSX0xTRURSVl9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMTggKi8KKyNkZWZpbmUgUkNDX0JEQ1JfTFNFRFJWICAgICAgICAgICAgICAgICAgICAgUkNDX0JEQ1JfTFNFRFJWX01zayAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0JEQ1JfTFNFRFJWXzAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0JEQ1JfTFNFRFJWX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgUkNDX0JEQ1JfTFNFRFJWXzEgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX0JEQ1JfTFNFRFJWX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKworI2RlZmluZSBSQ0NfQkRDUl9MU0VDU1NPTl9Qb3MgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQkRDUl9MU0VDU1NPTl9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0JEQ1JfTFNFQ1NTT05fUG9zKSAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBSQ0NfQkRDUl9MU0VDU1NPTiAgICAgICAgICAgICAgICAgICBSQ0NfQkRDUl9MU0VDU1NPTl9Nc2sgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQkRDUl9MU0VDU1NEX1BvcyAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQkRDUl9MU0VDU1NEX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0JEQ1JfTFNFQ1NTRF9Qb3MpICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBSQ0NfQkRDUl9MU0VDU1NEICAgICAgICAgICAgICAgICAgICBSQ0NfQkRDUl9MU0VDU1NEX01zayAgICAgICAgICAgICAgIAorCisjZGVmaW5lIFJDQ19CRENSX1JUQ1NFTF9Qb3MgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19CRENSX1JUQ1NFTF9Nc2sgICAgICAgICAgICAgICAgICgweDNVTCA8PCBSQ0NfQkRDUl9SVENTRUxfUG9zKSAgICAgLyohPCAweDAwMDAwMzAwICovCisjZGVmaW5lIFJDQ19CRENSX1JUQ1NFTCAgICAgICAgICAgICAgICAgICAgIFJDQ19CRENSX1JUQ1NFTF9Nc2sgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19CRENSX1JUQ1NFTF8wICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19CRENSX1JUQ1NFTF9Qb3MpICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIFJDQ19CRENSX1JUQ1NFTF8xICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJDQ19CRENSX1JUQ1NFTF9Qb3MpICAgICAgLyohPCAweDAwMDAwMjAwICovCisKKyNkZWZpbmUgUkNDX0JEQ1JfUlRDRU5fUG9zICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0JEQ1JfUlRDRU5fTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19CRENSX1JUQ0VOX1BvcykgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgUkNDX0JEQ1JfUlRDRU4gICAgICAgICAgICAgICAgICAgICAgUkNDX0JEQ1JfUlRDRU5fTXNrICAgICAgICAgICAgICAgICAKKworI2RlZmluZSBSQ0NfQkRDUl9CRFJTVF9Qb3MgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19CRENSX0JEUlNUX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQkRDUl9CRFJTVF9Qb3MpICAgICAgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIFJDQ19CRENSX0JEUlNUICAgICAgICAgICAgICAgICAgICAgIFJDQ19CRENSX0JEUlNUX01zayAgICAgICAgICAgICAgICAKKworI2RlZmluZSBSQ0NfQkRDUl9MU0NPRU5fUG9zICAgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19CRENSX0xTQ09FTl9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQkRDUl9MU0NPRU5fUG9zKSAgICAgLyohPCAweDAxMDAwMDAwICovCisjZGVmaW5lIFJDQ19CRENSX0xTQ09FTiAgICAgICAgICAgICAgICAgICAgIFJDQ19CRENSX0xTQ09FTl9Nc2sgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0JEQ1JfTFNDT1NFTF9Qb3MgICAgICAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQkRDUl9MU0NPU0VMX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0JEQ1JfTFNDT1NFTF9Qb3MpICAgIC8qITwgMHgwMjAwMDAwMCAqLworI2RlZmluZSBSQ0NfQkRDUl9MU0NPU0VMICAgICAgICAgICAgICAgICAgICBSQ0NfQkRDUl9MU0NPU0VMX01zaworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQ1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBSQ0NfQ1NSX0xTSTFPTl9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ1NSX0xTSTFPTl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NTUl9MU0kxT05fUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBSQ0NfQ1NSX0xTSTFPTiAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX0xTSTFPTl9Nc2sgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ1NSX0xTSTFSRFlfUG9zICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ1NSX0xTSTFSRFlfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NTUl9MU0kxUkRZX1BvcykgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBSQ0NfQ1NSX0xTSTFSRFkgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX0xTSTFSRFlfTXNrICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ1NSX0xTSTJPTl9Qb3MgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ1NSX0xTSTJPTl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NTUl9MU0kyT05fUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBSQ0NfQ1NSX0xTSTJPTiAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX0xTSTJPTl9Nc2sgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ1NSX0xTSTJSRFlfUG9zICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ1NSX0xTSTJSRFlfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NTUl9MU0kyUkRZX1BvcykgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBSQ0NfQ1NSX0xTSTJSRFkgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX0xTSTJSRFlfTXNrICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ1NSX0xTSTJUUklNX1BvcyAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ1NSX0xTSTJUUklNX01zayAgICAgICAgICAgICAgICAoMHhGVUwgPDwgUkNDX0NTUl9MU0kyVFJJTV9Qb3MpICAgICAgLyohPCAweDAwMDAwRjAwICovCisjZGVmaW5lIFJDQ19DU1JfTFNJMlRSSU0gICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfTFNJMlRSSU1fTXNrICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NTUl9MU0kyVFJJTV8wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NTUl9MU0kyVFJJTV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBSQ0NfQ1NSX0xTSTJUUklNXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSQ0NfQ1NSX0xTSTJUUklNX1BvcykgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIFJDQ19DU1JfTFNJMlRSSU1fMiAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJDQ19DU1JfTFNJMlRSSU1fUG9zKSAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgUkNDX0NTUl9MU0kyVFJJTV8zICAgICAgICAgICAgICAgICAgKDB4OFUgPDwgUkNDX0NTUl9MU0kyVFJJTV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLworI2RlZmluZSBSQ0NfQ1NSX1JGV0tQU0VMX1BvcyAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ1NSX1JGV0tQU0VMX01zayAgICAgICAgICAgICAgICAoMHgzVUwgPDwgUkNDX0NTUl9SRldLUFNFTF9Qb3MpICAgIC8qITwgMHgwMDAwQzAwMCAqLworI2RlZmluZSBSQ0NfQ1NSX1JGV0tQU0VMICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX1JGV0tQU0VMX01zayAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NTUl9SRldLUFNFTF8wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NTUl9SRldLUFNFTF9Qb3MpICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgUkNDX0NTUl9SRldLUFNFTF8xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX0NTUl9SRldLUFNFTF9Qb3MpICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgUkNDX0NTUl9SRlJTVFNfUG9zICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NTUl9SRlJTVFNfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DU1JfUkZSU1RTX1BvcykgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgUkNDX0NTUl9SRlJTVFMgICAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9SRlJTVFNfTXNrICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ1NSX1JNVkZfUG9zICAgICAgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ1NSX1JNVkZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NTUl9STVZGX1BvcykgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLworI2RlZmluZSBSQ0NfQ1NSX1JNVkYgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX1JNVkZfTXNrICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ1NSX09CTFJTVEZfUG9zICAgICAgICAgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ1NSX09CTFJTVEZfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NTUl9PQkxSU1RGX1BvcykgICAgIC8qITwgMHgwMjAwMDAwMCAqLworI2RlZmluZSBSQ0NfQ1NSX09CTFJTVEYgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX09CTFJTVEZfTXNrICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ1NSX1BJTlJTVEZfUG9zICAgICAgICAgICAgICAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ1NSX1BJTlJTVEZfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NTUl9QSU5SU1RGX1BvcykgICAgIC8qITwgMHgwNDAwMDAwMCAqLworI2RlZmluZSBSQ0NfQ1NSX1BJTlJTVEYgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX1BJTlJTVEZfTXNrICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ1NSX0JPUlJTVEZfUG9zICAgICAgICAgICAgICAgICAoMjdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ1NSX0JPUlJTVEZfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NTUl9CT1JSU1RGX1BvcykgICAgIC8qITwgMHgwODAwMDAwMCAqLworI2RlZmluZSBSQ0NfQ1NSX0JPUlJTVEYgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX0JPUlJTVEZfTXNrICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ1NSX1NGVFJTVEZfUG9zICAgICAgICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ1NSX1NGVFJTVEZfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NTUl9TRlRSU1RGX1BvcykgICAgIC8qITwgMHgxMDAwMDAwMCAqLworI2RlZmluZSBSQ0NfQ1NSX1NGVFJTVEYgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX1NGVFJTVEZfTXNrICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ1NSX0lXREdSU1RGX1BvcyAgICAgICAgICAgICAgICAoMjlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ1NSX0lXREdSU1RGX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NTUl9JV0RHUlNURl9Qb3MpICAgICAvKiE8IDB4MjAwMDAwMDAgKi8KKyNkZWZpbmUgUkNDX0NTUl9JV0RHUlNURiAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9JV0RHUlNURl9Nc2sgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DU1JfV1dER1JTVEZfUG9zICAgICAgICAgICAgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DU1JfV1dER1JTVEZfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ1NSX1dXREdSU1RGX1BvcykgICAgLyohPCAweDQwMDAwMDAwICovCisjZGVmaW5lIFJDQ19DU1JfV1dER1JTVEYgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfV1dER1JTVEZfTXNrICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DU1JfTFBXUlJTVEZfUG9zICAgICAgICAgICAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DU1JfTFBXUlJTVEZfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ1NSX0xQV1JSU1RGX1BvcykgICAgLyohPCAweDgwMDAwMDAwICovCisjZGVmaW5lIFJDQ19DU1JfTFBXUlJTVEYgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfTFBXUlJTVEZfTXNrICAgICAgICAgICAgICAgCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19DUlJDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUkNDX0NSUkNSX0hTSTQ4T05fUG9zICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NSUkNSX0hTSTQ4T05fTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DUlJDUl9IU0k0OE9OX1BvcykgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFJDQ19DUlJDUl9IU0k0OE9OICAgICAgICAgICAgICAgICAgIFJDQ19DUlJDUl9IU0k0OE9OX01zayAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ1JSQ1JfSFNJNDhSRFlfUG9zICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQ1JSQ1JfSFNJNDhSRFlfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NSUkNSX0hTSTQ4UkRZX1BvcykgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgUkNDX0NSUkNSX0hTSTQ4UkRZICAgICAgICAgICAgICAgICAgUkNDX0NSUkNSX0hTSTQ4UkRZX01zayAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DUlJDUl9IU0k0OENBTF9Qb3MgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DUlJDUl9IU0k0OENBTF9Nc2sgICAgICAgICAgICAgICgweDFGRlVMIDw8IFJDQ19DUlJDUl9IU0k0OENBTF9Qb3MpIC8qITwgMHgwMDAwRkY4MCAqLworI2RlZmluZSBSQ0NfQ1JSQ1JfSFNJNDhDQUwgICAgICAgICAgICAgICAgICBSQ0NfQ1JSQ1JfSFNJNDhDQUxfTXNrICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0NSUkNSX0hTSTQ4Q0FMXzAgICAgICAgICAgICAgICAgKDB4MDAxVSA8PCBSQ0NfQ1JSQ1JfSFNJNDhDQUxfUG9zKSAgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIFJDQ19DUlJDUl9IU0k0OENBTF8xICAgICAgICAgICAgICAgICgweDAwMlUgPDwgUkNDX0NSUkNSX0hTSTQ4Q0FMX1BvcykgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBSQ0NfQ1JSQ1JfSFNJNDhDQUxfMiAgICAgICAgICAgICAgICAoMHgwMDRVIDw8IFJDQ19DUlJDUl9IU0k0OENBTF9Qb3MpICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgUkNDX0NSUkNSX0hTSTQ4Q0FMXzMgICAgICAgICAgICAgICAgKDB4MDA4VSA8PCBSQ0NfQ1JSQ1JfSFNJNDhDQUxfUG9zKSAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIFJDQ19DUlJDUl9IU0k0OENBTF80ICAgICAgICAgICAgICAgICgweDAxMFUgPDwgUkNDX0NSUkNSX0hTSTQ4Q0FMX1BvcykgIC8qITwgMHgwMDAwMDgwMCAqLworI2RlZmluZSBSQ0NfQ1JSQ1JfSFNJNDhDQUxfNSAgICAgICAgICAgICAgICAoMHgwMjBVIDw8IFJDQ19DUlJDUl9IU0k0OENBTF9Qb3MpICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgUkNDX0NSUkNSX0hTSTQ4Q0FMXzYgICAgICAgICAgICAgICAgKDB4MDQwVSA8PCBSQ0NfQ1JSQ1JfSFNJNDhDQUxfUG9zKSAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIFJDQ19DUlJDUl9IU0k0OENBTF83ICAgICAgICAgICAgICAgICgweDA4MFUgPDwgUkNDX0NSUkNSX0hTSTQ4Q0FMX1BvcykgIC8qITwgMHgwMDAwNDAwMCAqLworI2RlZmluZSBSQ0NfQ1JSQ1JfSFNJNDhDQUxfOCAgICAgICAgICAgICAgICAoMHgxMDBVIDw8IFJDQ19DUlJDUl9IU0k0OENBTF9Qb3MpICAvKiE8IDB4MDAwMDgwMDAgKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0hTRUNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBSQ0NfSFNFQ1JfVU5MT0NLRURfUG9zICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfSFNFQ1JfVU5MT0NLRURfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0hTRUNSX1VOTE9DS0VEX1BvcykgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBSQ0NfSFNFQ1JfVU5MT0NLRUQgICAgICAgICAgICAgICAgICBSQ0NfSFNFQ1JfVU5MT0NLRURfTXNrICAgICAgICAgICAgIAorCisjZGVmaW5lIFJDQ19IU0VDUl9IU0VTX1BvcyAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19IU0VDUl9IU0VTX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfSFNFQ1JfSFNFU19Qb3MpICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIFJDQ19IU0VDUl9IU0VTICAgICAgICAgICAgICAgICAgICAgIFJDQ19IU0VDUl9IU0VTX01zayAgICAgICAgICAgICAgICAgCisKKyNkZWZpbmUgUkNDX0hTRUNSX0hTRUdNQ19Qb3MgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0hTRUNSX0hTRUdNQ19Nc2sgICAgICAgICAgICAgICAgKDB4N1VMIDw8IFJDQ19IU0VDUl9IU0VHTUNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNzAgKi8KKyNkZWZpbmUgUkNDX0hTRUNSX0hTRUdNQyAgICAgICAgICAgICAgICAgICAgUkNDX0hTRUNSX0hTRUdNQ19Nc2sgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0hTRUNSX0hTRUdNQzBfUG9zICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0hTRUNSX0hTRUdNQzBfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19IU0VDUl9IU0VHTUMwX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgUkNDX0hTRUNSX0hTRUdNQzAgICAgICAgICAgICAgICAgICAgUkNDX0hTRUNSX0hTRUdNQzBfTXNrICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0hTRUNSX0hTRUdNQzFfUG9zICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0hTRUNSX0hTRUdNQzFfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19IU0VDUl9IU0VHTUMxX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgUkNDX0hTRUNSX0hTRUdNQzEgICAgICAgICAgICAgICAgICAgUkNDX0hTRUNSX0hTRUdNQzFfTXNrICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0hTRUNSX0hTRUdNQzJfUG9zICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0hTRUNSX0hTRUdNQzJfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19IU0VDUl9IU0VHTUMyX1BvcykgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgUkNDX0hTRUNSX0hTRUdNQzIgICAgICAgICAgICAgICAgICAgUkNDX0hTRUNSX0hTRUdNQzJfTXNrICAgICAgICAgICAgICAgICAKKworI2RlZmluZSBSQ0NfSFNFQ1JfSFNFVFVORV9Qb3MgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19IU0VDUl9IU0VUVU5FX01zayAgICAgICAgICAgICAgKDB4M0ZVTCA8PCBSQ0NfSFNFQ1JfSFNFVFVORV9Qb3MpICAgLyohPCAweDAwMDAzRjAwICovCisjZGVmaW5lIFJDQ19IU0VDUl9IU0VUVU5FICAgICAgICAgICAgICAgICAgUkNDX0hTRUNSX0hTRVRVTkVfTXNrICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0hTRUNSX0hTRVRVTkUwX1BvcyAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfSFNFQ1JfSFNFVFVORTBfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfSFNFQ1JfSFNFVFVORTBfUG9zKSAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBSQ0NfSFNFQ1JfSFNFVFVORTAgICAgICAgICAgICAgICAgIFJDQ19IU0VDUl9IU0VUVU5FMF9Nc2sgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfSFNFQ1JfSFNFVFVORTFfUG9zICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19IU0VDUl9IU0VUVU5FMV9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19IU0VDUl9IU0VUVU5FMV9Qb3MpICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIFJDQ19IU0VDUl9IU0VUVU5FMSAgICAgICAgICAgICAgICAgUkNDX0hTRUNSX0hTRVRVTkUxX01zayAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19IU0VDUl9IU0VUVU5FMl9Qb3MgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0hTRUNSX0hTRVRVTkUyX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0hTRUNSX0hTRVRVTkUyX1BvcykgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgUkNDX0hTRUNSX0hTRVRVTkUyICAgICAgICAgICAgICAgICBSQ0NfSFNFQ1JfSFNFVFVORTJfTXNrICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0hTRUNSX0hTRVRVTkUzX1BvcyAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfSFNFQ1JfSFNFVFVORTNfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfSFNFQ1JfSFNFVFVORTNfUG9zKSAgIC8qITwgMHgwMDAwMDgwMCAqLworI2RlZmluZSBSQ0NfSFNFQ1JfSFNFVFVORTMgICAgICAgICAgICAgICAgIFJDQ19IU0VDUl9IU0VUVU5FM19Nc2sgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfSFNFQ1JfSFNFVFVORTRfUG9zICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19IU0VDUl9IU0VUVU5FNF9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19IU0VDUl9IU0VUVU5FNF9Qb3MpICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIFJDQ19IU0VDUl9IU0VUVU5FNCAgICAgICAgICAgICAgICAgUkNDX0hTRUNSX0hTRVRVTkU0X01zayAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19IU0VDUl9IU0VUVU5FNV9Qb3MgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0hTRUNSX0hTRVRVTkU1X01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0hTRUNSX0hTRVRVTkU1X1BvcykgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgUkNDX0hTRUNSX0hTRVRVTkU1ICAgICAgICAgICAgICAgICBSQ0NfSFNFQ1JfSFNFVFVORTVfTXNrICAgICAgICAgICAgICAKKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0VYVENGR1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFJDQ19FWFRDRkdSX1NIREhQUkVfUG9zICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19FWFRDRkdSX1NIREhQUkVfTXNrICAgICAgICAgICAgICgweEZVTCA8PCBSQ0NfRVhUQ0ZHUl9TSERIUFJFX1BvcykgLyohPCAweDAwMDAwMDBGICovCisjZGVmaW5lIFJDQ19FWFRDRkdSX1NIREhQUkUgICAgICAgICAgICAgICAgIFJDQ19FWFRDRkdSX1NIREhQUkVfTXNrICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19FWFRDRkdSX1NIREhQUkVfMCAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19FWFRDRkdSX1NIREhQUkVfUG9zKSAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFJDQ19FWFRDRkdSX1NIREhQUkVfMSAgICAgICAgICAgICAgICgweDJVIDw8IFJDQ19FWFRDRkdSX1NIREhQUkVfUG9zKSAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFJDQ19FWFRDRkdSX1NIREhQUkVfMiAgICAgICAgICAgICAgICgweDRVIDw8IFJDQ19FWFRDRkdSX1NIREhQUkVfUG9zKSAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIFJDQ19FWFRDRkdSX1NIREhQUkVfMyAgICAgICAgICAgICAgICgweDhVIDw8IFJDQ19FWFRDRkdSX1NIREhQUkVfUG9zKSAgLyohPCAweDAwMDAwMDA4ICovCisKKyNkZWZpbmUgUkNDX0VYVENGR1JfQzJIUFJFX1BvcyAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0VYVENGR1JfQzJIUFJFX01zayAgICAgICAgICAgICAgKDB4RlVMIDw8IFJDQ19FWFRDRkdSX0MySFBSRV9Qb3MpIC8qITwgMHgwMDAwMDBGMCAqLworI2RlZmluZSBSQ0NfRVhUQ0ZHUl9DMkhQUkUgICAgICAgICAgICAgICAgICBSQ0NfRVhUQ0ZHUl9DMkhQUkVfTXNrICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0VYVENGR1JfQzJIUFJFXzAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0VYVENGR1JfQzJIUFJFX1BvcykgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIFJDQ19FWFRDRkdSX0MySFBSRV8xICAgICAgICAgICAgICAgICgweDJVIDw8IFJDQ19FWFRDRkdSX0MySFBSRV9Qb3MpIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBSQ0NfRVhUQ0ZHUl9DMkhQUkVfMiAgICAgICAgICAgICAgICAoMHg0VSA8PCBSQ0NfRVhUQ0ZHUl9DMkhQUkVfUG9zKSAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgUkNDX0VYVENGR1JfQzJIUFJFXzMgICAgICAgICAgICAgICAgKDB4OFUgPDwgUkNDX0VYVENGR1JfQzJIUFJFX1BvcykgLyohPCAweDAwMDAwMDgwICovCisKKyNkZWZpbmUgUkNDX0VYVENGR1JfU0hESFBSRUZfUG9zICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0VYVENGR1JfU0hESFBSRUZfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19FWFRDRkdSX1NIREhQUkVGX1BvcykgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIFJDQ19FWFRDRkdSX1NIREhQUkVGICAgICAgICAgICAgICAgIFJDQ19FWFRDRkdSX1NIREhQUkVGX01zayAgICAgICAgICAgCisjZGVmaW5lIFJDQ19FWFRDRkdSX0MySFBSRUZfUG9zICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19FWFRDRkdSX0MySFBSRUZfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfRVhUQ0ZHUl9DMkhQUkVGX1BvcykgLyohPCAweDAwMDIwMDAwICovCisjZGVmaW5lIFJDQ19FWFRDRkdSX0MySFBSRUYgICAgICAgICAgICAgICAgIFJDQ19FWFRDRkdSX0MySFBSRUZfTXNrICAgICAgICAgIAorI2RlZmluZSBSQ0NfRVhUQ0ZHUl9SRkNTU19Qb3MgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfRVhUQ0ZHUl9SRkNTU19Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0VYVENGR1JfUkZDU1NfUG9zKSAgIC8qITwgMHgwMDEwMDAwMCAqLworI2RlZmluZSBSQ0NfRVhUQ0ZHUl9SRkNTUyAgICAgICAgICAgICAgICAgICBSQ0NfRVhUQ0ZHUl9SRkNTU19Nc2sgICAgICAgICAgICAgIAorCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQzJBSEIxRU5SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLworI2RlZmluZSBSQ0NfQzJBSEIxRU5SX0RNQTFFTl9Qb3MgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQzJBSEIxRU5SX0RNQTFFTl9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0MyQUhCMUVOUl9ETUExRU5fUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgUkNDX0MyQUhCMUVOUl9ETUExRU4gICAgICAgICAgICAgICAgUkNDX0MyQUhCMUVOUl9ETUExRU5fTXNrICAgICAgICAgIAorI2RlZmluZSBSQ0NfQzJBSEIxRU5SX0RNQTJFTl9Qb3MgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQzJBSEIxRU5SX0RNQTJFTl9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0MyQUhCMUVOUl9ETUEyRU5fUG9zKSAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgUkNDX0MyQUhCMUVOUl9ETUEyRU4gICAgICAgICAgICAgICAgUkNDX0MyQUhCMUVOUl9ETUEyRU5fTXNrICAgICAgICAgIAorI2RlZmluZSBSQ0NfQzJBSEIxRU5SX0RNQU1VWDFFTl9Qb3MgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQzJBSEIxRU5SX0RNQU1VWDFFTl9Nc2sgICAgICAgICAoMHgxVUwgPDwgUkNDX0MyQUhCMUVOUl9ETUFNVVgxRU5fUG9zKSAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgUkNDX0MyQUhCMUVOUl9ETUFNVVgxRU4gICAgICAgICAgICAgUkNDX0MyQUhCMUVOUl9ETUFNVVgxRU5fTXNrICAgICAgICAKKyNkZWZpbmUgUkNDX0MyQUhCMUVOUl9TUkFNMUVOX1BvcyAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0MyQUhCMUVOUl9TUkFNMUVOX01zayAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DMkFIQjFFTlJfU1JBTTFFTl9Qb3MpIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBSQ0NfQzJBSEIxRU5SX1NSQU0xRU4gICAgICAgICAgICAgICAgUkNDX0MyQUhCMUVOUl9TUkFNMUVOX01zayAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFIQjFFTlJfQ1JDRU5fUG9zICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFIQjFFTlJfQ1JDRU5fTXNrICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQzJBSEIxRU5SX0NSQ0VOX1BvcykgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIFJDQ19DMkFIQjFFTlJfQ1JDRU4gICAgICAgICAgICAgICAgICBSQ0NfQzJBSEIxRU5SX0NSQ0VOX01zayAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFIQjFFTlJfVFNDRU5fUG9zICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFIQjFFTlJfVFNDRU5fTXNrICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQzJBSEIxRU5SX1RTQ0VOX1BvcykgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIFJDQ19DMkFIQjFFTlJfVFNDRU4gICAgICAgICAgICAgICAgIFJDQ19DMkFIQjFFTlJfVFNDRU5fTXNrICAgICAgICAgICAKKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0MyQUhCMkVOUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLworI2RlZmluZSBSQ0NfQzJBSEIyRU5SX0dQSU9BRU5fUG9zICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFIQjJFTlJfR1BJT0FFTl9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DMkFIQjJFTlJfR1BJT0FFTl9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBSQ0NfQzJBSEIyRU5SX0dQSU9BRU4gICAgICAgICAgICAgIFJDQ19DMkFIQjJFTlJfR1BJT0FFTl9Nc2sgICAgICAgICAKKyNkZWZpbmUgUkNDX0MyQUhCMkVOUl9HUElPQkVOX1BvcyAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQzJBSEIyRU5SX0dQSU9CRU5fTXNrICAgICAgICAgICgweDFVTCA8PCBSQ0NfQzJBSEIyRU5SX0dQSU9CRU5fUG9zKSAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgUkNDX0MyQUhCMkVOUl9HUElPQkVOICAgICAgICAgICAgICBSQ0NfQzJBSEIyRU5SX0dQSU9CRU5fTXNrICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFIQjJFTlJfR1BJT0NFTl9Qb3MgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0MyQUhCMkVOUl9HUElPQ0VOX01zayAgICAgICAgICAoMHgxVUwgPDwgUkNDX0MyQUhCMkVOUl9HUElPQ0VOX1BvcykgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIFJDQ19DMkFIQjJFTlJfR1BJT0NFTiAgICAgICAgICAgICAgUkNDX0MyQUhCMkVOUl9HUElPQ0VOX01zayAgICAgICAgIAorI2RlZmluZSBSQ0NfQzJBSEIyRU5SX0dQSU9FRU5fUG9zICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFIQjJFTlJfR1BJT0VFTl9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DMkFIQjJFTlJfR1BJT0VFTl9Qb3MpIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBSQ0NfQzJBSEIyRU5SX0dQSU9FRU4gICAgICAgICAgICAgIFJDQ19DMkFIQjJFTlJfR1BJT0VFTl9Nc2sgICAgICAgICAKKyNkZWZpbmUgUkNDX0MyQUhCMkVOUl9HUElPSEVOX1BvcyAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQzJBSEIyRU5SX0dQSU9IRU5fTXNrICAgICAgICAgICgweDFVTCA8PCBSQ0NfQzJBSEIyRU5SX0dQSU9IRU5fUG9zKSAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgUkNDX0MyQUhCMkVOUl9HUElPSEVOICAgICAgICAgICAgICBSQ0NfQzJBSEIyRU5SX0dQSU9IRU5fTXNrICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFIQjJFTlJfQURDRU5fUG9zICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0MyQUhCMkVOUl9BRENFTl9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0MyQUhCMkVOUl9BRENFTl9Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLworI2RlZmluZSBSQ0NfQzJBSEIyRU5SX0FEQ0VOICAgICAgICAgICAgICAgIFJDQ19DMkFIQjJFTlJfQURDRU5fTXNrICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0MyQUhCMkVOUl9BRVMxRU5fUG9zICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQzJBSEIyRU5SX0FFUzFFTl9Nc2sgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQzJBSEIyRU5SX0FFUzFFTl9Qb3MpIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBSQ0NfQzJBSEIyRU5SX0FFUzFFTiAgICAgICAgICAgICAgIFJDQ19DMkFIQjJFTlJfQUVTMUVOX01zayAgICAgICAgCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19DMkFIQjNFTlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUkNDX0MyQUhCM0VOUl9QS0FFTl9Qb3MgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQzJBSEIzRU5SX1BLQUVOX01zayAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQzJBSEIzRU5SX1BLQUVOX1BvcykgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIFJDQ19DMkFIQjNFTlJfUEtBRU4gICAgICAgICAgICAgICAgUkNDX0MyQUhCM0VOUl9QS0FFTl9Nc2sgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQzJBSEIzRU5SX0FFUzJFTl9Qb3MgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFIQjNFTlJfQUVTMkVOX01zayAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DMkFIQjNFTlJfQUVTMkVOX1BvcykgLyohPCAweDAwMDIwMDAwICovCisjZGVmaW5lIFJDQ19DMkFIQjNFTlJfQUVTMkVOICAgICAgICAgICAgICAgUkNDX0MyQUhCM0VOUl9BRVMyRU5fTXNrICAgICAgICAKKyNkZWZpbmUgUkNDX0MyQUhCM0VOUl9STkdFTl9Qb3MgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQzJBSEIzRU5SX1JOR0VOX01zayAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQzJBSEIzRU5SX1JOR0VOX1BvcykgLyohPCAweDAwMDQwMDAwICovCisjZGVmaW5lIFJDQ19DMkFIQjNFTlJfUk5HRU4gICAgICAgICAgICAgICAgUkNDX0MyQUhCM0VOUl9STkdFTl9Nc2sgICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFIQjNFTlJfSFNFTUVOX1BvcyAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0MyQUhCM0VOUl9IU0VNRU5fTXNrICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0MyQUhCM0VOUl9IU0VNRU5fUG9zKSAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgUkNDX0MyQUhCM0VOUl9IU0VNRU4gICAgICAgICAgICAgICBSQ0NfQzJBSEIzRU5SX0hTRU1FTl9Nc2sgICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFIQjNFTlJfSVBDQ0VOX1BvcyAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0MyQUhCM0VOUl9JUENDRU5fTXNrICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0MyQUhCM0VOUl9JUENDRU5fUG9zKSAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgUkNDX0MyQUhCM0VOUl9JUENDRU4gICAgICAgICAgICAgICBSQ0NfQzJBSEIzRU5SX0lQQ0NFTl9Nc2sgICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFIQjNFTlJfRkxBU0hFTl9Qb3MgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0MyQUhCM0VOUl9GTEFTSEVOX01zayAgICAgICAgICAoMHgxVUwgPDwgUkNDX0MyQUhCM0VOUl9GTEFTSEVOX1BvcykgLyohPCAweDAyMDAwMDAwICovCisjZGVmaW5lIFJDQ19DMkFIQjNFTlJfRkxBU0hFTiAgICAgICAgICAgICAgUkNDX0MyQUhCM0VOUl9GTEFTSEVOX01zayAgICAgICAgICAgCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19DMkFQQjFFTlIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUkNDX0MyQVBCMUVOUjFfVElNMkVOX1BvcyAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQzJBUEIxRU5SMV9USU0yRU5fTXNrICAgICAgICAgICgweDFVTCA8PCBSQ0NfQzJBUEIxRU5SMV9USU0yRU5fUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgUkNDX0MyQVBCMUVOUjFfVElNMkVOICAgICAgICAgICAgICBSQ0NfQzJBUEIxRU5SMV9USU0yRU5fTXNrICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFQQjFFTlIxX1JUQ0FQQkVOX1BvcyAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0MyQVBCMUVOUjFfUlRDQVBCRU5fTXNrICAgICAgICAoMHgxVUwgPDwgUkNDX0MyQVBCMUVOUjFfUlRDQVBCRU5fUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgUkNDX0MyQVBCMUVOUjFfUlRDQVBCRU4gICAgICAgICAgICBSQ0NfQzJBUEIxRU5SMV9SVENBUEJFTl9Nc2sgICAgICAgCisjZGVmaW5lIFJDQ19DMkFQQjFFTlIxX1NQSTJFTl9Qb3MgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0MyQVBCMUVOUjFfU1BJMkVOX01zayAgICAgICAgICAoMHgxVUwgPDwgUkNDX0MyQVBCMUVOUjFfU1BJMkVOX1BvcykgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIFJDQ19DMkFQQjFFTlIxX1NQSTJFTiAgICAgICAgICAgICAgUkNDX0MyQVBCMUVOUjFfU1BJMkVOX01zayAgICAgICAgIAorI2RlZmluZSBSQ0NfQzJBUEIxRU5SMV9JMkMxRU5fUG9zICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFQQjFFTlIxX0kyQzFFTl9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DMkFQQjFFTlIxX0kyQzFFTl9Qb3MpIC8qITwgMHgwMDIwMDAwMCAqLworI2RlZmluZSBSQ0NfQzJBUEIxRU5SMV9JMkMxRU4gICAgICAgICAgICAgIFJDQ19DMkFQQjFFTlIxX0kyQzFFTl9Nc2sgICAgICAgICAKKyNkZWZpbmUgUkNDX0MyQVBCMUVOUjFfSTJDM0VOX1BvcyAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQzJBUEIxRU5SMV9JMkMzRU5fTXNrICAgICAgICAgICgweDFVTCA8PCBSQ0NfQzJBUEIxRU5SMV9JMkMzRU5fUG9zKSAvKiE8IDB4MDA4MDAwMDAgKi8KKyNkZWZpbmUgUkNDX0MyQVBCMUVOUjFfSTJDM0VOICAgICAgICAgICAgICBSQ0NfQzJBUEIxRU5SMV9JMkMzRU5fTXNrICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFQQjFFTlIxX0NSU0VOX1BvcyAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0MyQVBCMUVOUjFfQ1JTRU5fTXNrICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0MyQVBCMUVOUjFfQ1JTRU5fUG9zKSAvKiE8IDB4MDEwMDAwMDAgKi8KKyNkZWZpbmUgUkNDX0MyQVBCMUVOUjFfQ1JTRU4gICAgICAgICAgICAgICBSQ0NfQzJBUEIxRU5SMV9DUlNFTl9Nc2sgICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFQQjFFTlIxX1VTQkVOX1BvcyAgICAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0MyQVBCMUVOUjFfVVNCRU5fTXNrICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0MyQVBCMUVOUjFfVVNCRU5fUG9zKSAvKiE8IDB4MDQwMDAwMDAgKi8KKyNkZWZpbmUgUkNDX0MyQVBCMUVOUjFfVVNCRU4gICAgICAgICAgICAgICBSQ0NfQzJBUEIxRU5SMV9VU0JFTl9Nc2sgICAgICAgIAorI2RlZmluZSBSQ0NfQzJBUEIxRU5SMV9MUFRJTTFFTl9Qb3MgICAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFQQjFFTlIxX0xQVElNMUVOX01zayAgICAgICAgKDB4MVVMIDw8IFJDQ19DMkFQQjFFTlIxX0xQVElNMUVOX1BvcykgLyohPCAweDgwMDAwMDAwICovCisjZGVmaW5lIFJDQ19DMkFQQjFFTlIxX0xQVElNMUVOICAgICAgICAgICAgUkNDX0MyQVBCMUVOUjFfTFBUSU0xRU5fTXNrICAgICAgIAorCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQzJBUEIxRU5SMiByZWdpc3RlciAgKioqKioqKioqKioqKiovCisjZGVmaW5lIFJDQ19DMkFQQjFFTlIyX0xQVUFSVDFFTl9Qb3MgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0MyQVBCMUVOUjJfTFBVQVJUMUVOX01zayAgICAgICAoMHgxVUwgPDwgUkNDX0MyQVBCMUVOUjJfTFBVQVJUMUVOX1BvcykgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFJDQ19DMkFQQjFFTlIyX0xQVUFSVDFFTiAgICAgICAgICAgUkNDX0MyQVBCMUVOUjJfTFBVQVJUMUVOX01zayAgICAgICAKKyNkZWZpbmUgUkNDX0MyQVBCMUVOUjJfTFBUSU0yRU5fUG9zICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQzJBUEIxRU5SMl9MUFRJTTJFTl9Nc2sgICAgICAgICgweDFVTCA8PCBSQ0NfQzJBUEIxRU5SMl9MUFRJTTJFTl9Qb3MpIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBSQ0NfQzJBUEIxRU5SMl9MUFRJTTJFTiAgICAgICAgICAgIFJDQ19DMkFQQjFFTlIyX0xQVElNMkVOX01zayAgICAgICAKKyAKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19DMkFQQjJFTlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqLworI2RlZmluZSBSQ0NfQzJBUEIyRU5SX1RJTTFFTl9Qb3MgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFQQjJFTlJfVElNMUVOX01zayAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DMkFQQjJFTlJfVElNMUVOX1BvcykgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIFJDQ19DMkFQQjJFTlJfVElNMUVOICAgICAgICAgICAgICAgUkNDX0MyQVBCMkVOUl9USU0xRU5fTXNrICAgICAgICAgIAorI2RlZmluZSBSQ0NfQzJBUEIyRU5SX1NQSTFFTl9Qb3MgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFQQjJFTlJfU1BJMUVOX01zayAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DMkFQQjJFTlJfU1BJMUVOX1BvcykgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIFJDQ19DMkFQQjJFTlJfU1BJMUVOICAgICAgICAgICAgICAgUkNDX0MyQVBCMkVOUl9TUEkxRU5fTXNrICAgICAgICAgIAorI2RlZmluZSBSQ0NfQzJBUEIyRU5SX1VTQVJUMUVOX1BvcyAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFQQjJFTlJfVVNBUlQxRU5fTXNrICAgICAgICAgKDB4MVVMIDw8IFJDQ19DMkFQQjJFTlJfVVNBUlQxRU5fUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgUkNDX0MyQVBCMkVOUl9VU0FSVDFFTiAgICAgICAgICAgICBSQ0NfQzJBUEIyRU5SX1VTQVJUMUVOX01zayAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFQQjJFTlJfVElNMTZFTl9Qb3MgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0MyQVBCMkVOUl9USU0xNkVOX01zayAgICAgICAgICAoMHgxVUwgPDwgUkNDX0MyQVBCMkVOUl9USU0xNkVOX1BvcykgLyohPCAweDAwMDIwMDAwICovCisjZGVmaW5lIFJDQ19DMkFQQjJFTlJfVElNMTZFTiAgICAgICAgICAgICAgUkNDX0MyQVBCMkVOUl9USU0xNkVOX01zayAgICAgICAgIAorI2RlZmluZSBSQ0NfQzJBUEIyRU5SX1RJTTE3RU5fUG9zICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFQQjJFTlJfVElNMTdFTl9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DMkFQQjJFTlJfVElNMTdFTl9Qb3MpIC8qITwgMHgwMDA0MDAwMCAqLworI2RlZmluZSBSQ0NfQzJBUEIyRU5SX1RJTTE3RU4gICAgICAgICAgICAgIFJDQ19DMkFQQjJFTlJfVElNMTdFTl9Nc2sgICAgICAgICAKKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0MyQVBCM0VOUiByZWdpc3RlciAgKioqKioqKioqKioqKiovCisjZGVmaW5lIFJDQ19DMkFQQjNFTlJfQkxFRU5fUG9zICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0MyQVBCM0VOUl9CTEVFTl9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0MyQVBCM0VOUl9CTEVFTl9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBSQ0NfQzJBUEIzRU5SX0JMRUVOICAgICAgICAgICAgICAgIFJDQ19DMkFQQjNFTlJfQkxFRU5fTXNrICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0MyQVBCM0VOUl84MDJFTl9Qb3MgICAgICAgICAgICAoMVUpCisjZGVmaW5lIFJDQ19DMkFQQjNFTlJfODAyRU5fTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DMkFQQjNFTlJfODAyRU5fUG9zKSAvKiE8IHgwMDAwMDAwMlUgKi8KKyNkZWZpbmUgUkNDX0MyQVBCM0VOUl84MDJFTiAgICAgICAgICAgICAgICBSQ0NfQzJBUEIzRU5SXzgwMkVOX01zayAgICAgICAgICAgCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19DMkFIQjFTTUVOUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUkNDX0MyQUhCMVNNRU5SX0RNQTFTTUVOX1BvcyAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQzJBSEIxU01FTlJfRE1BMVNNRU5fTXNrICAgICAgICgweDFVTCA8PCBSQ0NfQzJBSEIxU01FTlJfRE1BMVNNRU5fUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgUkNDX0MyQUhCMVNNRU5SX0RNQTFTTUVOICAgICAgICAgICBSQ0NfQzJBSEIxU01FTlJfRE1BMVNNRU5fTXNrICAgICAgCisjZGVmaW5lIFJDQ19DMkFIQjFTTUVOUl9ETUEyU01FTl9Qb3MgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0MyQUhCMVNNRU5SX0RNQTJTTUVOX01zayAgICAgICAoMHgxVUwgPDwgUkNDX0MyQUhCMVNNRU5SX0RNQTJTTUVOX1BvcykgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFJDQ19DMkFIQjFTTUVOUl9ETUEyU01FTiAgICAgICAgICAgUkNDX0MyQUhCMVNNRU5SX0RNQTJTTUVOX01zayAgICAgIAorI2RlZmluZSBSQ0NfQzJBSEIxU01FTlJfRE1BTVVYMVNNRU5fUG9zICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFIQjFTTUVOUl9ETUFNVVgxU01FTl9Nc2sgICAgKDB4MVVMIDw8IFJDQ19DMkFIQjFTTUVOUl9ETUFNVVgxU01FTl9Qb3MpIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBSQ0NfQzJBSEIxU01FTlJfRE1BTVVYMVNNRU4gICAgICAgIFJDQ19DMkFIQjFTTUVOUl9ETUFNVVgxU01FTl9Nc2sgICAgCisjZGVmaW5lIFJDQ19DMkFIQjFTTUVOUl9TUkFNMVNNRU5fUG9zICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0MyQUhCMVNNRU5SX1NSQU0xU01FTl9Nc2sgICAgICAoMHgxVUwgPDwgUkNDX0MyQUhCMVNNRU5SX1NSQU0xU01FTl9Qb3MpIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBSQ0NfQzJBSEIxU01FTlJfU1JBTTFTTUVOICAgICAgICAgIFJDQ19DMkFIQjFTTUVOUl9TUkFNMVNNRU5fTXNrICAgICAgICAKKyNkZWZpbmUgUkNDX0MyQUhCMVNNRU5SX0NSQ1NNRU5fUG9zICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQzJBSEIxU01FTlJfQ1JDU01FTl9Nc2sgICAgICAgICgweDFVTCA8PCBSQ0NfQzJBSEIxU01FTlJfQ1JDU01FTl9Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBSQ0NfQzJBSEIxU01FTlJfQ1JDU01FTiAgICAgICAgICAgIFJDQ19DMkFIQjFTTUVOUl9DUkNTTUVOX01zayAgICAgICAKKyNkZWZpbmUgUkNDX0MyQUhCMVNNRU5SX1RTQ1NNRU5fUG9zICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQzJBSEIxU01FTlJfVFNDU01FTl9Nc2sgICAgICAgICgweDFVTCA8PCBSQ0NfQzJBSEIxU01FTlJfVFNDU01FTl9Qb3MpIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBSQ0NfQzJBSEIxU01FTlJfVFNDU01FTiAgICAgICAgICAgIFJDQ19DMkFIQjFTTUVOUl9UU0NTTUVOX01zayAgICAgICAKKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0MyQUhCMlNNRU5SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovCisjZGVmaW5lIFJDQ19DMkFIQjJTTUVOUl9HUElPQVNNRU5fUG9zICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0MyQUhCMlNNRU5SX0dQSU9BU01FTl9Nc2sgICAgICAoMHgxVUwgPDwgUkNDX0MyQUhCMlNNRU5SX0dQSU9BU01FTl9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBSQ0NfQzJBSEIyU01FTlJfR1BJT0FTTUVOICAgICAgICAgIFJDQ19DMkFIQjJTTUVOUl9HUElPQVNNRU5fTXNrICAgICAKKyNkZWZpbmUgUkNDX0MyQUhCMlNNRU5SX0dQSU9CU01FTl9Qb3MgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQzJBSEIyU01FTlJfR1BJT0JTTUVOX01zayAgICAgICgweDFVTCA8PCBSQ0NfQzJBSEIyU01FTlJfR1BJT0JTTUVOX1BvcykgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFJDQ19DMkFIQjJTTUVOUl9HUElPQlNNRU4gICAgICAgICAgUkNDX0MyQUhCMlNNRU5SX0dQSU9CU01FTl9Nc2sgICAgIAorI2RlZmluZSBSQ0NfQzJBSEIyU01FTlJfR1BJT0NTTUVOX1BvcyAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFIQjJTTUVOUl9HUElPQ1NNRU5fTXNrICAgICAgKDB4MVVMIDw8IFJDQ19DMkFIQjJTTUVOUl9HUElPQ1NNRU5fUG9zKSAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgUkNDX0MyQUhCMlNNRU5SX0dQSU9DU01FTiAgICAgICAgICBSQ0NfQzJBSEIyU01FTlJfR1BJT0NTTUVOX01zayAgICAgCisjZGVmaW5lIFJDQ19DMkFIQjJTTUVOUl9HUElPRVNNRU5fUG9zICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0MyQUhCMlNNRU5SX0dQSU9FU01FTl9Nc2sgICAgICAoMHgxVUwgPDwgUkNDX0MyQUhCMlNNRU5SX0dQSU9FU01FTl9Qb3MpIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBSQ0NfQzJBSEIyU01FTlJfR1BJT0VTTUVOICAgICAgICAgIFJDQ19DMkFIQjJTTUVOUl9HUElPRVNNRU5fTXNrICAgICAKKyNkZWZpbmUgUkNDX0MyQUhCMlNNRU5SX0dQSU9IU01FTl9Qb3MgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQzJBSEIyU01FTlJfR1BJT0hTTUVOX01zayAgICAgICgweDFVTCA8PCBSQ0NfQzJBSEIyU01FTlJfR1BJT0hTTUVOX1BvcykgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIFJDQ19DMkFIQjJTTUVOUl9HUElPSFNNRU4gICAgICAgICAgUkNDX0MyQUhCMlNNRU5SX0dQSU9IU01FTl9Nc2sgICAgIAorI2RlZmluZSBSQ0NfQzJBSEIyU01FTlJfQURDU01FTl9Qb3MgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFIQjJTTUVOUl9BRENTTUVOX01zayAgICAgICAgKDB4MVVMIDw8IFJDQ19DMkFIQjJTTUVOUl9BRENTTUVOX1BvcykgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIFJDQ19DMkFIQjJTTUVOUl9BRENTTUVOICAgICAgICAgICAgUkNDX0MyQUhCMlNNRU5SX0FEQ1NNRU5fTXNrICAgICAgIAorI2RlZmluZSBSQ0NfQzJBSEIyU01FTlJfQUVTMVNNRU5fUG9zICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFIQjJTTUVOUl9BRVMxU01FTl9Nc2sgICAgICAgKDB4MVVMIDw8IFJDQ19DMkFIQjJTTUVOUl9BRVMxU01FTl9Qb3MpIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBSQ0NfQzJBSEIyU01FTlJfQUVTMVNNRU4gICAgICAgICAgIFJDQ19DMkFIQjJTTUVOUl9BRVMxU01FTl9Nc2sgICAgCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19DMkFIQjNTTUVOUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLworI2RlZmluZSBSQ0NfQzJBSEIzU01FTlJfUEtBU01FTl9Qb3MgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFIQjNTTUVOUl9QS0FTTUVOX01zayAgICAgICAgKDB4MVVMIDw8IFJDQ19DMkFIQjNTTUVOUl9QS0FTTUVOX1BvcykgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIFJDQ19DMkFIQjNTTUVOUl9QS0FTTUVOICAgICAgICAgICAgUkNDX0MyQUhCM1NNRU5SX1BLQVNNRU5fTXNrICAgICAgIAorI2RlZmluZSBSQ0NfQzJBSEIzU01FTlJfQUVTMlNNRU5fUG9zICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFIQjNTTUVOUl9BRVMyU01FTl9Nc2sgICAgICAgKDB4MVVMIDw8IFJDQ19DMkFIQjNTTUVOUl9BRVMyU01FTl9Qb3MpIC8qITwgMHgwMDAyMDAwMCAqLworI2RlZmluZSBSQ0NfQzJBSEIzU01FTlJfQUVTMlNNRU4gICAgICAgICAgIFJDQ19DMkFIQjNTTUVOUl9BRVMyU01FTl9Nc2sgICAgCisjZGVmaW5lIFJDQ19DMkFIQjNTTUVOUl9STkdTTUVOX1BvcyAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0MyQUhCM1NNRU5SX1JOR1NNRU5fTXNrICAgICAgICAoMHgxVUwgPDwgUkNDX0MyQUhCM1NNRU5SX1JOR1NNRU5fUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgUkNDX0MyQUhCM1NNRU5SX1JOR1NNRU4gICAgICAgICAgICBSQ0NfQzJBSEIzU01FTlJfUk5HU01FTl9Nc2sgICAgICAKKyNkZWZpbmUgUkNDX0MyQUhCM1NNRU5SX1NSQU0yU01FTl9Qb3MgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQzJBSEIzU01FTlJfU1JBTTJTTUVOX01zayAgICAgICgweDFVTCA8PCBSQ0NfQzJBSEIzU01FTlJfU1JBTTJTTUVOX1BvcykgLyohPCAweDAxMDAwMDAwICovCisjZGVmaW5lIFJDQ19DMkFIQjNTTUVOUl9TUkFNMlNNRU4gICAgICAgICAgIFJDQ19DMkFIQjNTTUVOUl9TUkFNMlNNRU5fTXNrICAgICAKKyNkZWZpbmUgUkNDX0MyQUhCM1NNRU5SX0ZMQVNIU01FTl9Qb3MgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQzJBSEIzU01FTlJfRkxBU0hTTUVOX01zayAgICAgICgweDFVTCA8PCBSQ0NfQzJBSEIzU01FTlJfRkxBU0hTTUVOX1BvcykgLyohPCAweDAyMDAwMDAwICovCisjZGVmaW5lIFJDQ19DMkFIQjNTTUVOUl9GTEFTSFNNRU4gICAgICAgICAgUkNDX0MyQUhCM1NNRU5SX0ZMQVNIU01FTl9Nc2sgICAgICAgCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19DMkFQQjFTTUVOUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqLworI2RlZmluZSBSQ0NfQzJBUEIxU01FTlIxX1RJTTJTTUVOX1BvcyAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFQQjFTTUVOUjFfVElNMlNNRU5fTXNrICAgICAgKDB4MVVMIDw8IFJDQ19DMkFQQjFTTUVOUjFfVElNMlNNRU5fUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgUkNDX0MyQVBCMVNNRU5SMV9USU0yU01FTiAgICAgICAgICBSQ0NfQzJBUEIxU01FTlIxX1RJTTJTTUVOX01zayAgICAgCisjZGVmaW5lIFJDQ19DMkFQQjFTTUVOUjFfUlRDQVBCU01FTl9Qb3MgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0MyQVBCMVNNRU5SMV9SVENBUEJTTUVOX01zayAgICAoMHgxVUwgPDwgUkNDX0MyQVBCMVNNRU5SMV9SVENBUEJTTUVOX1BvcykgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIFJDQ19DMkFQQjFTTUVOUjFfUlRDQVBCU01FTiAgICAgICAgUkNDX0MyQVBCMVNNRU5SMV9SVENBUEJTTUVOX01zayAgIAorI2RlZmluZSBSQ0NfQzJBUEIxU01FTlIxX1NQSTJTTUVOX1BvcyAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFQQjFTTUVOUjFfU1BJMlNNRU5fTXNrICAgICAgKDB4MVVMIDw8IFJDQ19DMkFQQjFTTUVOUjFfU1BJMlNNRU5fUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgUkNDX0MyQVBCMVNNRU5SMV9TUEkyU01FTiAgICAgICAgICBSQ0NfQzJBUEIxU01FTlIxX1NQSTJTTUVOX01zayAgICAgCisjZGVmaW5lIFJDQ19DMkFQQjFTTUVOUjFfSTJDMVNNRU5fUG9zICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0MyQVBCMVNNRU5SMV9JMkMxU01FTl9Nc2sgICAgICAoMHgxVUwgPDwgUkNDX0MyQVBCMVNNRU5SMV9JMkMxU01FTl9Qb3MpIC8qITwgMHgwMDIwMDAwMCAqLworI2RlZmluZSBSQ0NfQzJBUEIxU01FTlIxX0kyQzFTTUVOICAgICAgICAgIFJDQ19DMkFQQjFTTUVOUjFfSTJDMVNNRU5fTXNrICAgICAKKyNkZWZpbmUgUkNDX0MyQVBCMVNNRU5SMV9JMkMzU01FTl9Qb3MgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQzJBUEIxU01FTlIxX0kyQzNTTUVOX01zayAgICAgICgweDFVTCA8PCBSQ0NfQzJBUEIxU01FTlIxX0kyQzNTTUVOX1BvcykgLyohPCAweDAwODAwMDAwICovCisjZGVmaW5lIFJDQ19DMkFQQjFTTUVOUjFfSTJDM1NNRU4gICAgICAgICAgUkNDX0MyQVBCMVNNRU5SMV9JMkMzU01FTl9Nc2sgICAgIAorI2RlZmluZSBSQ0NfQzJBUEIxU01FTlIxX0NSU1NNRU5fUG9zICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFQQjFTTUVOUjFfQ1JTU01FTl9Nc2sgICAgICAgKDB4MVVMIDw8IFJDQ19DMkFQQjFTTUVOUjFfQ1JTU01FTl9Qb3MpIC8qITwgMHgwMTAwMDAwMCAqLworI2RlZmluZSBSQ0NfQzJBUEIxU01FTlIxX0NSU1NNRU4gICAgICAgICAgIFJDQ19DMkFQQjFTTUVOUjFfQ1JTU01FTl9Nc2sgICAgICAKKyNkZWZpbmUgUkNDX0MyQVBCMVNNRU5SMV9VU0JTTUVOX1BvcyAgICAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQzJBUEIxU01FTlIxX1VTQlNNRU5fTXNrICAgICAgICgweDFVTCA8PCBSQ0NfQzJBUEIxU01FTlIxX1VTQlNNRU5fUG9zKSAvKiE8IDB4MDQwMDAwMDAgKi8KKyNkZWZpbmUgUkNDX0MyQVBCMVNNRU5SMV9VU0JTTUVOICAgICAgICAgICBSQ0NfQzJBUEIxU01FTlIxX1VTQlNNRU5fTXNrICAgIAorI2RlZmluZSBSQ0NfQzJBUEIxU01FTlIxX0xQVElNMVNNRU5fUG9zICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFQQjFTTUVOUjFfTFBUSU0xU01FTl9Nc2sgICAgKDB4MVVMIDw8IFJDQ19DMkFQQjFTTUVOUjFfTFBUSU0xU01FTl9Qb3MpIC8qITwgMHg4MDAwMDAwMCAqLworI2RlZmluZSBSQ0NfQzJBUEIxU01FTlIxX0xQVElNMVNNRU4gICAgICAgIFJDQ19DMkFQQjFTTUVOUjFfTFBUSU0xU01FTl9Nc2sgICAKKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0MyQVBCMVNNRU5SMiByZWdpc3RlciAgKioqKioqKioqKioqKiovCisjZGVmaW5lIFJDQ19DMkFQQjFTTUVOUjJfTFBVQVJUMVNNRU5fUG9zICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFQQjFTTUVOUjJfTFBVQVJUMVNNRU5fTXNrICAgICgweDFVTCA8PCBSQ0NfQzJBUEIxU01FTlIyX0xQVUFSVDFTTUVOX1BvcykgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFJDQ19DMkFQQjFTTUVOUjJfTFBVQVJUMVNNRU4gICAgICAgIFJDQ19DMkFQQjFTTUVOUjJfTFBVQVJUMVNNRU5fTXNrICAgCisjZGVmaW5lIFJDQ19DMkFQQjFTTUVOUjJfTFBUSU0yU01FTl9Qb3MgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFQQjFTTUVOUjJfTFBUSU0yU01FTl9Nc2sgICAgICgweDFVTCA8PCBSQ0NfQzJBUEIxU01FTlIyX0xQVElNMlNNRU5fUG9zKSAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgUkNDX0MyQVBCMVNNRU5SMl9MUFRJTTJTTUVOICAgICAgICAgUkNDX0MyQVBCMVNNRU5SMl9MUFRJTTJTTUVOX01zayAgIAorIAorLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0MyQVBCMlNNRU5SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUkNDX0MyQVBCMlNNRU5SX1RJTTFTTUVOX1BvcyAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQzJBUEIyU01FTlJfVElNMVNNRU5fTXNrICAgICAgICgweDFVTCA8PCBSQ0NfQzJBUEIyU01FTlJfVElNMVNNRU5fUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgUkNDX0MyQVBCMlNNRU5SX1RJTTFTTUVOICAgICAgICAgICBSQ0NfQzJBUEIyU01FTlJfVElNMVNNRU5fTXNrICAgICAgCisjZGVmaW5lIFJDQ19DMkFQQjJTTUVOUl9TUEkxU01FTl9Qb3MgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0MyQVBCMlNNRU5SX1NQSTFTTUVOX01zayAgICAgICAoMHgxVUwgPDwgUkNDX0MyQVBCMlNNRU5SX1NQSTFTTUVOX1BvcykgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIFJDQ19DMkFQQjJTTUVOUl9TUEkxU01FTiAgICAgICAgICAgUkNDX0MyQVBCMlNNRU5SX1NQSTFTTUVOX01zayAgICAgIAorI2RlZmluZSBSQ0NfQzJBUEIyU01FTlJfVVNBUlQxU01FTl9Qb3MgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFQQjJTTUVOUl9VU0FSVDFTTUVOX01zayAgICAgKDB4MVVMIDw8IFJDQ19DMkFQQjJTTUVOUl9VU0FSVDFTTUVOX1BvcykgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIFJDQ19DMkFQQjJTTUVOUl9VU0FSVDFTTUVOICAgICAgICAgUkNDX0MyQVBCMlNNRU5SX1VTQVJUMVNNRU5fTXNrICAgIAorI2RlZmluZSBSQ0NfQzJBUEIyU01FTlJfVElNMTZTTUVOX1BvcyAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJDQ19DMkFQQjJTTUVOUl9USU0xNlNNRU5fTXNrICAgICAgKDB4MVVMIDw8IFJDQ19DMkFQQjJTTUVOUl9USU0xNlNNRU5fUG9zKSAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgUkNDX0MyQVBCMlNNRU5SX1RJTTE2U01FTiAgICAgICAgICBSQ0NfQzJBUEIyU01FTlJfVElNMTZTTUVOX01zayAgICAgCisjZGVmaW5lIFJDQ19DMkFQQjJTTUVOUl9USU0xN1NNRU5fUG9zICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUkNDX0MyQVBCMlNNRU5SX1RJTTE3U01FTl9Nc2sgICAgICAoMHgxVUwgPDwgUkNDX0MyQVBCMlNNRU5SX1RJTTE3U01FTl9Qb3MpIC8qITwgMHgwMDA0MDAwMCAqLworI2RlZmluZSBSQ0NfQzJBUEIyU01FTlJfVElNMTdTTUVOICAgICAgICAgIFJDQ19DMkFQQjJTTUVOUl9USU0xN1NNRU5fTXNrICAgICAKKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0MyQVBCM1NNRU5SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUkNDX0MyQVBCM1NNRU5SX0JMRVNNRU5fUG9zICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQzJBUEIzU01FTlJfQkxFU01FTl9Nc2sgICAgICAgICgweDFVTCA8PCBSQ0NfQzJBUEIzU01FTlJfQkxFU01FTl9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBSQ0NfQzJBUEIzU01FTlJfQkxFU01FTiAgICAgICAgICAgIFJDQ19DMkFQQjNTTUVOUl9CTEVTTUVOX01zayAgICAgICAKKyNkZWZpbmUgUkNDX0MyQVBCM1NNRU5SXzgwMlNNRU5fUG9zICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSQ0NfQzJBUEIzU01FTlJfODAyU01FTl9Nc2sgICAgICAgICgweDFVTCA8PCBSQ0NfQzJBUEIzU01FTlJfODAyU01FTl9Qb3MpIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBSQ0NfQzJBUEIzU01FTlJfODAyU01FTiAgICAgICAgICAgIFJDQ19DMkFQQjNTTUVOUl84MDJTTUVOX01zayAgICAgICAKKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisvKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJORyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBSTkdfQ1JfUk5HRU5fUG9zICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSTkdfQ1JfUk5HRU5fTXNrICAgICgweDFVTCA8PCBSTkdfQ1JfUk5HRU5fUG9zKSAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBSTkdfQ1JfUk5HRU4gICAgICAgIFJOR19DUl9STkdFTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSTkdfQ1JfSUVfUG9zICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSTkdfQ1JfSUVfTXNrICAgICAgICgweDFVTCA8PCBSTkdfQ1JfSUVfUG9zKSAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBSTkdfQ1JfSUUgICAgICAgICAgIFJOR19DUl9JRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSTkdfQ1JfQ0VEX1BvcyAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSTkdfQ1JfQ0VEX01zayAgICAgICgweDFVTCA8PCBSTkdfQ1JfQ0VEX1BvcykgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBSTkdfQ1JfQ0VEICAgICAgICAgIFJOR19DUl9DRURfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorCisvKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUk5HX1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBSTkdfU1JfRFJEWV9Qb3MgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSTkdfU1JfRFJEWV9Nc2sgICAgICgweDFVTCA8PCBSTkdfU1JfRFJEWV9Qb3MpICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBSTkdfU1JfRFJEWSAgICAgICAgIFJOR19TUl9EUkRZX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSTkdfU1JfQ0VDU19Qb3MgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSTkdfU1JfQ0VDU19Nc2sgICAgICgweDFVTCA8PCBSTkdfU1JfQ0VDU19Qb3MpICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBSTkdfU1JfQ0VDUyAgICAgICAgIFJOR19TUl9DRUNTX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSTkdfU1JfU0VDU19Qb3MgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSTkdfU1JfU0VDU19Nc2sgICAgICgweDFVTCA8PCBSTkdfU1JfU0VDU19Qb3MpICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBSTkdfU1JfU0VDUyAgICAgICAgIFJOR19TUl9TRUNTX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSTkdfU1JfQ0VJU19Qb3MgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSTkdfU1JfQ0VJU19Nc2sgICAgICgweDFVTCA8PCBSTkdfU1JfQ0VJU19Qb3MpICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBSTkdfU1JfQ0VJUyAgICAgICAgIFJOR19TUl9DRUlTX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSTkdfU1JfU0VJU19Qb3MgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSTkdfU1JfU0VJU19Nc2sgICAgICgweDFVTCA8PCBSTkdfU1JfU0VJU19Qb3MpICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBSTkdfU1JfU0VJUyAgICAgICAgIFJOR19TUl9TRUlTX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVhbC1UaW1lIENsb2NrIChSVEMpICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisvKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qCisqIEBicmllZiBTcGVjaWZpYyBkZXZpY2UgZmVhdHVyZSBkZWZpbml0aW9ucworKi8KKyNkZWZpbmUgUlRDX1RBTVBFUjFfU1VQUE9SVAorI2RlZmluZSBSVENfVEFNUEVSMl9TVVBQT1JUCisjZGVmaW5lIFJUQ19UQU1QRVIzX1NVUFBPUlQKKyNkZWZpbmUgUlRDX1dBS0VVUF9TVVBQT1JUCisjZGVmaW5lIFJUQ19CQUNLVVBfU1VQUE9SVAorI2RlZmluZSBSVENfQ1BVMl9TVVBQT1JUX0QKKyNkZWZpbmUgUlRDX0lOVEVSTkFMVFNfU1VQUE9SVAorCisvKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX1RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBSVENfVFJfUE1fUG9zICAgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfVFJfUE1fTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19UUl9QTV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLworI2RlZmluZSBSVENfVFJfUE0gICAgICAgICAgICAgICAgICAgICAgUlRDX1RSX1BNX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQU0vUE0gbm90YXRpb24gKi8KKyNkZWZpbmUgUlRDX1RSX0hUX1BvcyAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX1RSX0hUX01zayAgICAgICAgICAgICAgICAgICgweDNVTCA8PCBSVENfVFJfSFRfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAzMDAwMDAgKi8KKyNkZWZpbmUgUlRDX1RSX0hUICAgICAgICAgICAgICAgICAgICAgIFJUQ19UUl9IVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhvdXIgdGVucyBpbiBCQ0QgZm9ybWF0ICovCisjZGVmaW5lIFJUQ19UUl9IVF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFJfSFRfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovCisjZGVmaW5lIFJUQ19UUl9IVF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFJfSFRfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovCisjZGVmaW5lIFJUQ19UUl9IVV9Qb3MgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19UUl9IVV9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgUlRDX1RSX0hVX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMEYwMDAwICovCisjZGVmaW5lIFJUQ19UUl9IVSAgICAgICAgICAgICAgICAgICAgICBSVENfVFJfSFVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBIb3VyIHVuaXRzIGluIEJDRCBmb3JtYXQgKi8KKyNkZWZpbmUgUlRDX1RSX0hVXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UUl9IVV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgUlRDX1RSX0hVXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UUl9IVV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgUlRDX1RSX0hVXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UUl9IVV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgUlRDX1RSX0hVXzMgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19UUl9IVV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgUlRDX1RSX01OVF9Qb3MgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX1RSX01OVF9Nc2sgICAgICAgICAgICAgICAgICgweDdVTCA8PCBSVENfVFJfTU5UX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDcwMDAgKi8KKyNkZWZpbmUgUlRDX1RSX01OVCAgICAgICAgICAgICAgICAgICAgIFJUQ19UUl9NTlRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE1pbnV0ZSB0ZW5zIGluIEJDRCBmb3JtYXQgKi8KKyNkZWZpbmUgUlRDX1RSX01OVF8wICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UUl9NTlRfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgUlRDX1RSX01OVF8xICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UUl9NTlRfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgUlRDX1RSX01OVF8yICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UUl9NTlRfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgUlRDX1RSX01OVV9Qb3MgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX1RSX01OVV9Nc2sgICAgICAgICAgICAgICAgICgweEZVTCA8PCBSVENfVFJfTU5VX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDBGMDAgKi8KKyNkZWZpbmUgUlRDX1RSX01OVSAgICAgICAgICAgICAgICAgICAgIFJUQ19UUl9NTlVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE1pbnV0ZSB1bml0IGluIEJDRCBmb3JtYXQgKi8KKyNkZWZpbmUgUlRDX1RSX01OVV8wICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UUl9NTlVfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgUlRDX1RSX01OVV8xICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UUl9NTlVfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgUlRDX1RSX01OVV8yICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UUl9NTlVfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgUlRDX1RSX01OVV8zICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19UUl9NTlVfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgUlRDX1RSX1NUX1BvcyAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX1RSX1NUX01zayAgICAgICAgICAgICAgICAgICgweDdVTCA8PCBSVENfVFJfU1RfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNzAgKi8KKyNkZWZpbmUgUlRDX1RSX1NUICAgICAgICAgICAgICAgICAgICAgIFJUQ19UUl9TVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNlY29uZCB0ZW5zIGluIEJDRCBmb3JtYXQgKi8KKyNkZWZpbmUgUlRDX1RSX1NUXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UUl9TVF9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgUlRDX1RSX1NUXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UUl9TVF9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgUlRDX1RSX1NUXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UUl9TVF9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgUlRDX1RSX1NVX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX1RSX1NVX01zayAgICAgICAgICAgICAgICAgICgweEZVTCA8PCBSVENfVFJfU1VfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8KKyNkZWZpbmUgUlRDX1RSX1NVICAgICAgICAgICAgICAgICAgICAgIFJUQ19UUl9TVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNlY29uZCB1bml0cyBpbiBCQ0QgZm9ybWF0ICovCisjZGVmaW5lIFJUQ19UUl9TVV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFJfU1VfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFJUQ19UUl9TVV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFJfU1VfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFJUQ19UUl9TVV8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFJfU1VfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIFJUQ19UUl9TVV8zICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfVFJfU1VfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfRFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFJUQ19EUl9ZVF9Qb3MgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19EUl9ZVF9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgUlRDX0RSX1lUX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwRjAwMDAwICovCisjZGVmaW5lIFJUQ19EUl9ZVCAgICAgICAgICAgICAgICAgICAgICBSVENfRFJfWVRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBZZWFyIHRlbnMgaW4gQkNEIGZvcm1hdCAqLworI2RlZmluZSBSVENfRFJfWVRfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0RSX1lUX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLworI2RlZmluZSBSVENfRFJfWVRfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX0RSX1lUX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLworI2RlZmluZSBSVENfRFJfWVRfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUlRDX0RSX1lUX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLworI2RlZmluZSBSVENfRFJfWVRfMyAgICAgICAgICAgICAgICAgICAgKDB4OFUgPDwgUlRDX0RSX1lUX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLworI2RlZmluZSBSVENfRFJfWVVfUG9zICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfRFJfWVVfTXNrICAgICAgICAgICAgICAgICAgKDB4RlVMIDw8IFJUQ19EUl9ZVV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDBGMDAwMCAqLworI2RlZmluZSBSVENfRFJfWVUgICAgICAgICAgICAgICAgICAgICAgUlRDX0RSX1lVX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgWWVhcnMgdW5pdHMgaW4gQkNEIGZvcm1hdCAqLworI2RlZmluZSBSVENfRFJfWVVfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0RSX1lVX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBSVENfRFJfWVVfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX0RSX1lVX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLworI2RlZmluZSBSVENfRFJfWVVfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUlRDX0RSX1lVX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLworI2RlZmluZSBSVENfRFJfWVVfMyAgICAgICAgICAgICAgICAgICAgKDB4OFUgPDwgUlRDX0RSX1lVX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLworI2RlZmluZSBSVENfRFJfV0RVX1BvcyAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfRFJfV0RVX01zayAgICAgICAgICAgICAgICAgKDB4N1VMIDw8IFJUQ19EUl9XRFVfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwRTAwMCAqLworI2RlZmluZSBSVENfRFJfV0RVICAgICAgICAgICAgICAgICAgICAgUlRDX0RSX1dEVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgV2VlayBkYXkgdW5pdHMgKi8KKyNkZWZpbmUgUlRDX0RSX1dEVV8wICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19EUl9XRFVfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgUlRDX0RSX1dEVV8xICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19EUl9XRFVfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgUlRDX0RSX1dEVV8yICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19EUl9XRFVfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgUlRDX0RSX01UX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX0RSX01UX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfRFJfTVRfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgUlRDX0RSX01UICAgICAgICAgICAgICAgICAgICAgIFJUQ19EUl9NVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE1vbnRoIHRlbnMgaW4gQkNEIGZvcm1hdCAqLworI2RlZmluZSBSVENfRFJfTVVfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfRFJfTVVfTXNrICAgICAgICAgICAgICAgICAgKDB4RlVMIDw8IFJUQ19EUl9NVV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMEYwMCAqLworI2RlZmluZSBSVENfRFJfTVUgICAgICAgICAgICAgICAgICAgICAgUlRDX0RSX01VX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTW9udGggdW5pdHMgaW4gQkNEIGZvcm1hdCAqLworI2RlZmluZSBSVENfRFJfTVVfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0RSX01VX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBSVENfRFJfTVVfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX0RSX01VX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBSVENfRFJfTVVfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUlRDX0RSX01VX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLworI2RlZmluZSBSVENfRFJfTVVfMyAgICAgICAgICAgICAgICAgICAgKDB4OFUgPDwgUlRDX0RSX01VX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLworI2RlZmluZSBSVENfRFJfRFRfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfRFJfRFRfTXNrICAgICAgICAgICAgICAgICAgKDB4M1VMIDw8IFJUQ19EUl9EVF9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAzMCAqLworI2RlZmluZSBSVENfRFJfRFQgICAgICAgICAgICAgICAgICAgICAgUlRDX0RSX0RUX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRGF0ZSB0ZW5zIGluIEJDRCBmb3JtYXQgKi8KKyNkZWZpbmUgUlRDX0RSX0RUXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19EUl9EVF9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgUlRDX0RSX0RUXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19EUl9EVF9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgUlRDX0RSX0RVX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX0RSX0RVX01zayAgICAgICAgICAgICAgICAgICgweEZVTCA8PCBSVENfRFJfRFVfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8KKyNkZWZpbmUgUlRDX0RSX0RVICAgICAgICAgICAgICAgICAgICAgIFJUQ19EUl9EVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IERhdGUgdW5pdHMgaW4gQkNEIGZvcm1hdCAqLworI2RlZmluZSBSVENfRFJfRFVfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0RSX0RVX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBSVENfRFJfRFVfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX0RSX0RVX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBSVENfRFJfRFVfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUlRDX0RSX0RVX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBSVENfRFJfRFVfMyAgICAgICAgICAgICAgICAgICAgKDB4OFUgPDwgUlRDX0RSX0RVX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBSVENfQ1JfSVRTRV9Qb3MgICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfQ1JfSVRTRV9Nc2sgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19DUl9JVFNFX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLworI2RlZmluZSBSVENfQ1JfSVRTRSAgICAgICAgICAgICAgICAgICAgUlRDX0NSX0lUU0VfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgVGltZXN0YW1wIG9uIGludGVybmFsIGV2ZW50IGVuYWJsZSAqLworI2RlZmluZSBSVENfQ1JfQ09FX1BvcyAgICAgICAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfQ1JfQ09FX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19DUl9DT0VfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLworI2RlZmluZSBSVENfQ1JfQ09FICAgICAgICAgICAgICAgICAgICAgUlRDX0NSX0NPRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2FsaWJyYXRpb24gb3V0cHV0IGVuYWJsZSAqLworI2RlZmluZSBSVENfQ1JfT1NFTF9Qb3MgICAgICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfQ1JfT1NFTF9Nc2sgICAgICAgICAgICAgICAgKDB4M1VMIDw8IFJUQ19DUl9PU0VMX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDYwMDAwMCAqLworI2RlZmluZSBSVENfQ1JfT1NFTCAgICAgICAgICAgICAgICAgICAgUlRDX0NSX09TRUxfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgT3V0cHV0IHNlbGVjdGlvbiAqLworI2RlZmluZSBSVENfQ1JfT1NFTF8wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0NSX09TRUxfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLworI2RlZmluZSBSVENfQ1JfT1NFTF8xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX0NSX09TRUxfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLworI2RlZmluZSBSVENfQ1JfUE9MX1BvcyAgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfQ1JfUE9MX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19DUl9QT0xfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLworI2RlZmluZSBSVENfQ1JfUE9MICAgICAgICAgICAgICAgICAgICAgUlRDX0NSX1BPTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgT3VwdXQgcG9sYXJpdHkgKi8KKyNkZWZpbmUgUlRDX0NSX0NPU0VMX1BvcyAgICAgICAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX0NSX0NPU0VMX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfQ1JfQ09TRUxfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgUlRDX0NSX0NPU0VMICAgICAgICAgICAgICAgICAgIFJUQ19DUl9DT1NFTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENhbGlicmF0aW9uIG91cHV0IHNlbGVjdGlvbiAqLworI2RlZmluZSBSVENfQ1JfQktQX1BvcyAgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfQ1JfQktQX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19DUl9CS1BfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLworI2RlZmluZSBSVENfQ1JfQktQICAgICAgICAgICAgICAgICAgICAgUlRDX0NSX0JLUF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQmFja3VwICovCisjZGVmaW5lIFJUQ19DUl9TVUIxSF9Qb3MgICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19DUl9TVUIxSF9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0NSX1NVQjFIX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovCisjZGVmaW5lIFJUQ19DUl9TVUIxSCAgICAgICAgICAgICAgICAgICBSVENfQ1JfU1VCMUhfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTdWJ0cmFjdCAxIGhvdXIgKHdpbnRlciB0aW1lIGNoYW5nZSkgKi8KKyNkZWZpbmUgUlRDX0NSX0FERDFIX1BvcyAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX0NSX0FERDFIX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfQ1JfQUREMUhfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgUlRDX0NSX0FERDFIICAgICAgICAgICAgICAgICAgIFJUQ19DUl9BREQxSF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFkZCAxIGhvdXIgKHN1bW1lciB0aW1lIGNoYW5nZSkgKi8KKyNkZWZpbmUgUlRDX0NSX1RTSUVfUG9zICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX0NSX1RTSUVfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfQ1JfVFNJRV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgUlRDX0NSX1RTSUUgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9UU0lFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFRpbWUtc3RhbXAgaW50ZXJydXB0IGVuYWJsZSAqLworI2RlZmluZSBSVENfQ1JfV1VUSUVfUG9zICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfQ1JfV1VUSUVfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19DUl9XVVRJRV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLworI2RlZmluZSBSVENfQ1JfV1VUSUUgICAgICAgICAgICAgICAgICAgUlRDX0NSX1dVVElFX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgV2FrZXVwIHRpbWVyIGludGVycnVwdCBlbmFibGUgKi8KKyNkZWZpbmUgUlRDX0NSX0FMUkJJRV9Qb3MgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX0NSX0FMUkJJRV9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfQ1JfQUxSQklFX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgUlRDX0NSX0FMUkJJRSAgICAgICAgICAgICAgICAgIFJUQ19DUl9BTFJCSUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFsYXJtIEIgaW50ZXJydXB0IGVuYWJsZSAqLworI2RlZmluZSBSVENfQ1JfQUxSQUlFX1BvcyAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfQ1JfQUxSQUlFX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19DUl9BTFJBSUVfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBSVENfQ1JfQUxSQUlFICAgICAgICAgICAgICAgICAgUlRDX0NSX0FMUkFJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQWxhcm0gQSBpbnRlcnJ1cHQgZW5hYmxlICovCisjZGVmaW5lIFJUQ19DUl9UU0VfUG9zICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19DUl9UU0VfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0NSX1RTRV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIFJUQ19DUl9UU0UgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfVFNFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBUaW1lc3RhbXAgb24gUlRDIFRTIGlucHV0IGVkZ2UgZW5hYmxlICovCisjZGVmaW5lIFJUQ19DUl9XVVRFX1BvcyAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19DUl9XVVRFX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0NSX1dVVEVfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIFJUQ19DUl9XVVRFICAgICAgICAgICAgICAgICAgICBSVENfQ1JfV1VURV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBXYWtldXAgdGltZXIgZW5hYmxlICovCisjZGVmaW5lIFJUQ19DUl9BTFJCRV9Qb3MgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19DUl9BTFJCRV9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0NSX0FMUkJFX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIFJUQ19DUl9BTFJCRSAgICAgICAgICAgICAgICAgICBSVENfQ1JfQUxSQkVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBbGFybSBCIGVuYWJsZSAqLworI2RlZmluZSBSVENfQ1JfQUxSQUVfUG9zICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfQ1JfQUxSQUVfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19DUl9BTFJBRV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBSVENfQ1JfQUxSQUUgICAgICAgICAgICAgICAgICAgUlRDX0NSX0FMUkFFX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQWxhcm0gQSBlbmFibGUgKi8KKyNkZWZpbmUgUlRDX0NSX0ZNVF9Qb3MgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX0NSX0ZNVF9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfQ1JfRk1UX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgUlRDX0NSX0ZNVCAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9GTVRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhvdXIgQU0vUE0gb3IgMjRIIGZvcm1hdCAqLworI2RlZmluZSBSVENfQ1JfQllQU0hBRF9Qb3MgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfQ1JfQllQU0hBRF9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19DUl9CWVBTSEFEX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBSVENfQ1JfQllQU0hBRCAgICAgICAgICAgICAgICAgUlRDX0NSX0JZUFNIQURfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgQnlwYXNzIHRoZSBzaGFkb3cgcmVnaXN0ZXJzICovCisjZGVmaW5lIFJUQ19DUl9SRUZDS09OX1BvcyAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19DUl9SRUZDS09OX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0NSX1JFRkNLT05fUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIFJUQ19DUl9SRUZDS09OICAgICAgICAgICAgICAgICBSVENfQ1JfUkVGQ0tPTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBSVENfUkVGSU4gcmVmZXJlbmNlIGNsb2NrIGRldGVjdGlvbiBlbmFibGUgKDUwIG9yIDYwIEh6KSAqLworI2RlZmluZSBSVENfQ1JfVFNFREdFX1BvcyAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfQ1JfVFNFREdFX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19DUl9UU0VER0VfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBSVENfQ1JfVFNFREdFICAgICAgICAgICAgICAgICAgUlRDX0NSX1RTRURHRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgVGltZXN0YW1wIGV2ZW50IGFjdGl2ZSBlZGdlICovCisjZGVmaW5lIFJUQ19DUl9XVUNLU0VMX1BvcyAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19DUl9XVUNLU0VMX01zayAgICAgICAgICAgICAoMHg3VUwgPDwgUlRDX0NSX1dVQ0tTRUxfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA3ICovCisjZGVmaW5lIFJUQ19DUl9XVUNLU0VMICAgICAgICAgICAgICAgICBSVENfQ1JfV1VDS1NFTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBXYWtla3VwIGNsb2NrIHNlbGVjdGlvbiAqLworI2RlZmluZSBSVENfQ1JfV1VDS1NFTF8wICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0NSX1dVQ0tTRUxfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBSVENfQ1JfV1VDS1NFTF8xICAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX0NSX1dVQ0tTRUxfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBSVENfQ1JfV1VDS1NFTF8yICAgICAgICAgICAgICAgKDB4NFUgPDwgUlRDX0NSX1dVQ0tTRUxfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0lTUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBSVENfSVNSX0lUU0ZfUG9zICAgICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfSVNSX0lUU0ZfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19JU1JfSVRTRl9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLworI2RlZmluZSBSVENfSVNSX0lUU0YgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9JVFNGX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJuYWwgdGltZXN0YW1wIGZsYWcgKi8KKyNkZWZpbmUgUlRDX0lTUl9SRUNBTFBGX1BvcyAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX0lTUl9SRUNBTFBGX01zayAgICAgICAgICAgICgweDFVTCA8PCBSVENfSVNSX1JFQ0FMUEZfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgUlRDX0lTUl9SRUNBTFBGICAgICAgICAgICAgICAgIFJUQ19JU1JfUkVDQUxQRl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2FsaWJyYXRpb24gcGVuZGluZyBmbGFnICovCisjZGVmaW5lIFJUQ19JU1JfVEFNUDNGX1BvcyAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19JU1JfVEFNUDNGX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0lTUl9UQU1QM0ZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovCisjZGVmaW5lIFJUQ19JU1JfVEFNUDNGICAgICAgICAgICAgICAgICBSVENfSVNSX1RBTVAzRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBSVENfVEFNUDMgZGV0ZWN0aW9uIGZsYWcgKi8KKyNkZWZpbmUgUlRDX0lTUl9UQU1QMkZfUG9zICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX0lTUl9UQU1QMkZfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBSVENfSVNSX1RBTVAyRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgUlRDX0lTUl9UQU1QMkYgICAgICAgICAgICAgICAgIFJUQ19JU1JfVEFNUDJGX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJUQ19UQU1QMiBkZXRlY3Rpb24gZmxhZyAqLworI2RlZmluZSBSVENfSVNSX1RBTVAxRl9Qb3MgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfSVNSX1RBTVAxRl9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19JU1JfVEFNUDFGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLworI2RlZmluZSBSVENfSVNSX1RBTVAxRiAgICAgICAgICAgICAgICAgUlRDX0lTUl9UQU1QMUZfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgUlRDX1RBTVAxIGRldGVjdGlvbiBmbGFnICovCisjZGVmaW5lIFJUQ19JU1JfVFNPVkZfUG9zICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19JU1JfVFNPVkZfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0lTUl9UU09WRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIFJUQ19JU1JfVFNPVkYgICAgICAgICAgICAgICAgICBSVENfSVNSX1RTT1ZGX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBUaW1lc3RhbXAgb3ZlcmZsb3cgZmxhZyAqLworI2RlZmluZSBSVENfSVNSX1RTRl9Qb3MgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfSVNSX1RTRl9Nc2sgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19JU1JfVFNGX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLworI2RlZmluZSBSVENfSVNSX1RTRiAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9UU0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgVGltZXN0YW1wIGZsYWcgKi8KKyNkZWZpbmUgUlRDX0lTUl9XVVRGX1BvcyAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX0lTUl9XVVRGX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfSVNSX1dVVEZfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgUlRDX0lTUl9XVVRGICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfV1VURl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFdha2V1cCB0aW1lciBmbGFnICovCisjZGVmaW5lIFJUQ19JU1JfQUxSQkZfUG9zICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19JU1JfQUxSQkZfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0lTUl9BTFJCRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIFJUQ19JU1JfQUxSQkYgICAgICAgICAgICAgICAgICBSVENfSVNSX0FMUkJGX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBbGFybSBCIGZsYWcgKi8KKyNkZWZpbmUgUlRDX0lTUl9BTFJBRl9Qb3MgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX0lTUl9BTFJBRl9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfSVNSX0FMUkFGX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgUlRDX0lTUl9BTFJBRiAgICAgICAgICAgICAgICAgIFJUQ19JU1JfQUxSQUZfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFsYXJtIEEgZmxhZyAqLworI2RlZmluZSBSVENfSVNSX0lOSVRfUG9zICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfSVNSX0lOSVRfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19JU1JfSU5JVF9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLworI2RlZmluZSBSVENfSVNSX0lOSVQgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9JTklUX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW5pdGlhbGl6YXRpb24gbW9kZSAqLworI2RlZmluZSBSVENfSVNSX0lOSVRGX1BvcyAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfSVNSX0lOSVRGX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19JU1JfSU5JVEZfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBSVENfSVNSX0lOSVRGICAgICAgICAgICAgICAgICAgUlRDX0lTUl9JTklURl9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW5pdGlhbGl6YXRpb24gZmxhZyAqLworI2RlZmluZSBSVENfSVNSX1JTRl9Qb3MgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfSVNSX1JTRl9Nc2sgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19JU1JfUlNGX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBSVENfSVNSX1JTRiAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9SU0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmVnaXN0ZXJzIHN5bmNocm9uaXphdGlvbiBmbGFnICovCisjZGVmaW5lIFJUQ19JU1JfSU5JVFNfUG9zICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19JU1JfSU5JVFNfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0lTUl9JTklUU19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIFJUQ19JU1JfSU5JVFMgICAgICAgICAgICAgICAgICBSVENfSVNSX0lOSVRTX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBJbml0aWFsaXphdGlvbiBzdGF0dXMgZmxhZyAqLworI2RlZmluZSBSVENfSVNSX1NIUEZfUG9zICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfSVNSX1NIUEZfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19JU1JfU0hQRl9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBSVENfSVNSX1NIUEYgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9TSFBGX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU2hpZnQgb3BlcmF0aW9uIHBlbmRpbmcgKi8KKyNkZWZpbmUgUlRDX0lTUl9XVVRXRl9Qb3MgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX0lTUl9XVVRXRl9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfSVNSX1dVVFdGX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgUlRDX0lTUl9XVVRXRiAgICAgICAgICAgICAgICAgIFJUQ19JU1JfV1VUV0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFdha2V1cCB0aW1lciB3cml0ZSBmbGFnICovCisjZGVmaW5lIFJUQ19JU1JfQUxSQldGX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19JU1JfQUxSQldGX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0lTUl9BTFJCV0ZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFJUQ19JU1JfQUxSQldGICAgICAgICAgICAgICAgICBSVENfSVNSX0FMUkJXRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBBbGFybSBCIHdyaXRlIGZsYWcgKi8KKyNkZWZpbmUgUlRDX0lTUl9BTFJBV0ZfUG9zICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX0lTUl9BTFJBV0ZfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBSVENfSVNSX0FMUkFXRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgUlRDX0lTUl9BTFJBV0YgICAgICAgICAgICAgICAgIFJUQ19JU1JfQUxSQVdGX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFsYXJtIEEgd3JpdGUgZmxhZyAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX1BSRVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLworI2RlZmluZSBSVENfUFJFUl9QUkVESVZfQV9Qb3MgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfUFJFUl9QUkVESVZfQV9Nc2sgICAgICAgICAgKDB4N0ZVTCA8PCBSVENfUFJFUl9QUkVESVZfQV9Qb3MpICAgICAgIC8qITwgMHgwMDdGMDAwMCAqLworI2RlZmluZSBSVENfUFJFUl9QUkVESVZfQSAgICAgICAgICAgICAgUlRDX1BSRVJfUFJFRElWX0FfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQXN5bmNocm9ub3VzIHByZXNjYWxlciBmYWN0b3IgKi8KKyNkZWZpbmUgUlRDX1BSRVJfUFJFRElWX1NfUG9zICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX1BSRVJfUFJFRElWX1NfTXNrICAgICAgICAgICgweDdGRkZVTCA8PCBSVENfUFJFUl9QUkVESVZfU19Qb3MpICAgICAvKiE8IDB4MDAwMDdGRkYgKi8KKyNkZWZpbmUgUlRDX1BSRVJfUFJFRElWX1MgICAgICAgICAgICAgIFJUQ19QUkVSX1BSRURJVl9TX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFN5bmNocm9ub3VzIHByZXNjYWxlciBmYWN0b3IgKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19XVVRSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUlRDX1dVVFJfV1VUX1BvcyAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX1dVVFJfV1VUX01zayAgICAgICAgICAgICAgICgweEZGRkZVTCA8PCBSVENfV1VUUl9XVVRfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8KKyNkZWZpbmUgUlRDX1dVVFJfV1VUICAgICAgICAgICAgICAgICAgIFJUQ19XVVRSX1dVVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFdha2V1cCBhdXRvLXJlbG9hZCB2YWx1ZSBiaXRzICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQUxSTUFSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovCisjZGVmaW5lIFJUQ19BTFJNQVJfTVNLNF9Qb3MgICAgICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19BTFJNQVJfTVNLNF9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0FMUk1BUl9NU0s0X1BvcykgICAgICAgICAgLyohPCAweDgwMDAwMDAwICovCisjZGVmaW5lIFJUQ19BTFJNQVJfTVNLNCAgICAgICAgICAgICAgICBSVENfQUxSTUFSX01TSzRfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBBbGFybSBBIGRhdGUgbWFzayAqLworI2RlZmluZSBSVENfQUxSTUFSX1dEU0VMX1BvcyAgICAgICAgICAgKDMwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfQUxSTUFSX1dEU0VMX01zayAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19BTFJNQVJfV0RTRUxfUG9zKSAgICAgICAgIC8qITwgMHg0MDAwMDAwMCAqLworI2RlZmluZSBSVENfQUxSTUFSX1dEU0VMICAgICAgICAgICAgICAgUlRDX0FMUk1BUl9XRFNFTF9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgQWxhcm0gQSB3ZWVrIGRheSBzZWxlY3Rpb24gKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9EVF9Qb3MgICAgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX0FMUk1BUl9EVF9Nc2sgICAgICAgICAgICAgICgweDNVTCA8PCBSVENfQUxSTUFSX0RUX1BvcykgICAgICAgICAgICAvKiE8IDB4MzAwMDAwMDAgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9EVCAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfRFRfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFsYXJtIEEgZGF0ZSB0ZW5zIGluIEJDRCBmb3JtYXQgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9EVF8wICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfRFRfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9EVF8xICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQVJfRFRfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9EVV9Qb3MgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX0FMUk1BUl9EVV9Nc2sgICAgICAgICAgICAgICgweEZVTCA8PCBSVENfQUxSTUFSX0RVX1BvcykgICAgICAgICAgICAvKiE8IDB4MEYwMDAwMDAgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9EVSAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfRFVfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFsYXJtIEEgZGF0ZSB1bml0cyBpbiBCQ0QgZm9ybWF0ICovCisjZGVmaW5lIFJUQ19BTFJNQVJfRFVfMCAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUFSX0RVX1BvcykgICAgICAgICAgICAgLyohPCAweDAxMDAwMDAwICovCisjZGVmaW5lIFJUQ19BTFJNQVJfRFVfMSAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUFSX0RVX1BvcykgICAgICAgICAgICAgLyohPCAweDAyMDAwMDAwICovCisjZGVmaW5lIFJUQ19BTFJNQVJfRFVfMiAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfQUxSTUFSX0RVX1BvcykgICAgICAgICAgICAgLyohPCAweDA0MDAwMDAwICovCisjZGVmaW5lIFJUQ19BTFJNQVJfRFVfMyAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfQUxSTUFSX0RVX1BvcykgICAgICAgICAgICAgLyohPCAweDA4MDAwMDAwICovCisjZGVmaW5lIFJUQ19BTFJNQVJfTVNLM19Qb3MgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19BTFJNQVJfTVNLM19Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0FMUk1BUl9NU0szX1BvcykgICAgICAgICAgLyohPCAweDAwODAwMDAwICovCisjZGVmaW5lIFJUQ19BTFJNQVJfTVNLMyAgICAgICAgICAgICAgICBSVENfQUxSTUFSX01TSzNfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBBbGFybSBBIGhvdXJzIG1hc2sgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9QTV9Qb3MgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX0FMUk1BUl9QTV9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfQUxSTUFSX1BNX1BvcykgICAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9QTSAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfUE1fTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFsYXJtIEEgQU0vUE0gb3IgMjRIIGZvcm1hdCAqLworI2RlZmluZSBSVENfQUxSTUFSX0hUX1BvcyAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfQUxSTUFSX0hUX01zayAgICAgICAgICAgICAgKDB4M1VMIDw8IFJUQ19BTFJNQVJfSFRfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDMwMDAwMCAqLworI2RlZmluZSBSVENfQUxSTUFSX0hUICAgICAgICAgICAgICAgICAgUlRDX0FMUk1BUl9IVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQWxhcm0gQSBob3VyIHRlbnMgaW4gQkNEIGZvcm1hdCAqLworI2RlZmluZSBSVENfQUxSTUFSX0hUXzAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0FMUk1BUl9IVF9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLworI2RlZmluZSBSVENfQUxSTUFSX0hUXzEgICAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX0FMUk1BUl9IVF9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLworI2RlZmluZSBSVENfQUxSTUFSX0hVX1BvcyAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfQUxSTUFSX0hVX01zayAgICAgICAgICAgICAgKDB4RlVMIDw8IFJUQ19BTFJNQVJfSFVfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDBGMDAwMCAqLworI2RlZmluZSBSVENfQUxSTUFSX0hVICAgICAgICAgICAgICAgICAgUlRDX0FMUk1BUl9IVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQWxhcm0gQSBob3VyIHVuaXRzIGluIEJDRCBmb3JtYXQgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9IVV8wICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfSFVfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9IVV8xICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQVJfSFVfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9IVV8yICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQVJfSFVfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9IVV8zICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19BTFJNQVJfSFVfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9NU0syX1BvcyAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX0FMUk1BUl9NU0syX01zayAgICAgICAgICAgICgweDFVTCA8PCBSVENfQUxSTUFSX01TSzJfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9NU0syICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfTVNLMl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IEFsYXJtIEEgbWludXRlcyBtYXNrICovCisjZGVmaW5lIFJUQ19BTFJNQVJfTU5UX1BvcyAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19BTFJNQVJfTU5UX01zayAgICAgICAgICAgICAoMHg3VUwgPDwgUlRDX0FMUk1BUl9NTlRfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA3MDAwICovCisjZGVmaW5lIFJUQ19BTFJNQVJfTU5UICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX01OVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBBbGFybSBBIG1pbnV0ZSB0ZW5zIGluIEJDRCBmb3JtYXQgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9NTlRfMCAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfTU5UX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9NTlRfMSAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQVJfTU5UX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9NTlRfMiAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQVJfTU5UX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9NTlVfUG9zICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX0FMUk1BUl9NTlVfTXNrICAgICAgICAgICAgICgweEZVTCA8PCBSVENfQUxSTUFSX01OVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDBGMDAgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9NTlUgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfTU5VX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFsYXJtIEEgbWludXRlIHVuaXRzIGluIEJDRCBmb3JtYXQgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9NTlVfMCAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfTU5VX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9NTlVfMSAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQVJfTU5VX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9NTlVfMiAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQVJfTU5VX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9NTlVfMyAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19BTFJNQVJfTU5VX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9NU0sxX1BvcyAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX0FMUk1BUl9NU0sxX01zayAgICAgICAgICAgICgweDFVTCA8PCBSVENfQUxSTUFSX01TSzFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9NU0sxICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfTVNLMV9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IEFsYXJtIEEgc2Vjb25kcyBtYXNrICovCisjZGVmaW5lIFJUQ19BTFJNQVJfU1RfUG9zICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19BTFJNQVJfU1RfTXNrICAgICAgICAgICAgICAoMHg3VUwgPDwgUlRDX0FMUk1BUl9TVF9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDcwICovCisjZGVmaW5lIFJUQ19BTFJNQVJfU1QgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX1NUX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBbGFybSBBIHNlY29uZCB0ZW5zIGluIEJDRCBmb3JtYXQgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9TVF8wICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfU1RfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9TVF8xICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQVJfU1RfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9TVF8yICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQVJfU1RfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9TVV9Qb3MgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX0FMUk1BUl9TVV9Nc2sgICAgICAgICAgICAgICgweEZVTCA8PCBSVENfQUxSTUFSX1NVX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9TVSAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfU1VfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFsYXJtIEEgc2Vjb25kIHVuaXRzIGluIEJDRCBmb3JtYXQgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9TVV8wICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfU1VfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9TVV8xICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQVJfU1VfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9TVV8yICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQVJfU1VfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgUlRDX0FMUk1BUl9TVV8zICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19BTFJNQVJfU1VfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19BTFJNQlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUlRDX0FMUk1CUl9NU0s0X1BvcyAgICAgICAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX0FMUk1CUl9NU0s0X01zayAgICAgICAgICAgICgweDFVTCA8PCBSVENfQUxSTUJSX01TSzRfUG9zKSAgICAgICAgICAvKiE8IDB4ODAwMDAwMDAgKi8KKyNkZWZpbmUgUlRDX0FMUk1CUl9NU0s0ICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfTVNLNF9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IEFsYXJtIEIgZGF0ZSBtYXNrICovCisjZGVmaW5lIFJUQ19BTFJNQlJfV0RTRUxfUG9zICAgICAgICAgICAoMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19BTFJNQlJfV0RTRUxfTXNrICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0FMUk1CUl9XRFNFTF9Qb3MpICAgICAgICAgLyohPCAweDQwMDAwMDAwICovCisjZGVmaW5lIFJUQ19BTFJNQlJfV0RTRUwgICAgICAgICAgICAgICBSVENfQUxSTUJSX1dEU0VMX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBBbGFybSBCIHdlZWsgZGF5IHNlbGVjdGlvbiAqLworI2RlZmluZSBSVENfQUxSTUJSX0RUX1BvcyAgICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfQUxSTUJSX0RUX01zayAgICAgICAgICAgICAgKDB4M1VMIDw8IFJUQ19BTFJNQlJfRFRfUG9zKSAgICAgICAgICAgIC8qITwgMHgzMDAwMDAwMCAqLworI2RlZmluZSBSVENfQUxSTUJSX0RUICAgICAgICAgICAgICAgICAgUlRDX0FMUk1CUl9EVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQWxhcm0gQiBkYXRhIHRlbnMgaW4gQkNEIGZvcm1hdCAqLworI2RlZmluZSBSVENfQUxSTUJSX0RUXzAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0FMUk1CUl9EVF9Qb3MpICAgICAgICAgICAgIC8qITwgMHgxMDAwMDAwMCAqLworI2RlZmluZSBSVENfQUxSTUJSX0RUXzEgICAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX0FMUk1CUl9EVF9Qb3MpICAgICAgICAgICAgIC8qITwgMHgyMDAwMDAwMCAqLworI2RlZmluZSBSVENfQUxSTUJSX0RVX1BvcyAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfQUxSTUJSX0RVX01zayAgICAgICAgICAgICAgKDB4RlVMIDw8IFJUQ19BTFJNQlJfRFVfUG9zKSAgICAgICAgICAgIC8qITwgMHgwRjAwMDAwMCAqLworI2RlZmluZSBSVENfQUxSTUJSX0RVICAgICAgICAgICAgICAgICAgUlRDX0FMUk1CUl9EVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQWxhcm0gQiBkYXRhIHVuaXRzIG9yIGRheSBpbiBCQ0QgZm9ybWF0ICovCisjZGVmaW5lIFJUQ19BTFJNQlJfRFVfMCAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUJSX0RVX1BvcykgICAgICAgICAgICAgLyohPCAweDAxMDAwMDAwICovCisjZGVmaW5lIFJUQ19BTFJNQlJfRFVfMSAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUJSX0RVX1BvcykgICAgICAgICAgICAgLyohPCAweDAyMDAwMDAwICovCisjZGVmaW5lIFJUQ19BTFJNQlJfRFVfMiAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfQUxSTUJSX0RVX1BvcykgICAgICAgICAgICAgLyohPCAweDA0MDAwMDAwICovCisjZGVmaW5lIFJUQ19BTFJNQlJfRFVfMyAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfQUxSTUJSX0RVX1BvcykgICAgICAgICAgICAgLyohPCAweDA4MDAwMDAwICovCisjZGVmaW5lIFJUQ19BTFJNQlJfTVNLM19Qb3MgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19BTFJNQlJfTVNLM19Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0FMUk1CUl9NU0szX1BvcykgICAgICAgICAgLyohPCAweDAwODAwMDAwICovCisjZGVmaW5lIFJUQ19BTFJNQlJfTVNLMyAgICAgICAgICAgICAgICBSVENfQUxSTUJSX01TSzNfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBBbGFybSBCIGhvdXIgbWFzayAqLworI2RlZmluZSBSVENfQUxSTUJSX1BNX1BvcyAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfQUxSTUJSX1BNX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19BTFJNQlJfUE1fUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLworI2RlZmluZSBSVENfQUxSTUJSX1BNICAgICAgICAgICAgICAgICAgUlRDX0FMUk1CUl9QTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQWxhcm0gQiBBTS9QTSBvciAyNEggZm9ybWF0ICovCisjZGVmaW5lIFJUQ19BTFJNQlJfSFRfUG9zICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19BTFJNQlJfSFRfTXNrICAgICAgICAgICAgICAoMHgzVUwgPDwgUlRDX0FMUk1CUl9IVF9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMzAwMDAwICovCisjZGVmaW5lIFJUQ19BTFJNQlJfSFQgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX0hUX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBbGFybSBCIGhvdXIgdGVucyBpbiBCQ0QgZm9ybWF0ICovCisjZGVmaW5lIFJUQ19BTFJNQlJfSFRfMCAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUJSX0hUX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovCisjZGVmaW5lIFJUQ19BTFJNQlJfSFRfMSAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUJSX0hUX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovCisjZGVmaW5lIFJUQ19BTFJNQlJfSFVfUG9zICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19BTFJNQlJfSFVfTXNrICAgICAgICAgICAgICAoMHhGVUwgPDwgUlRDX0FMUk1CUl9IVV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMEYwMDAwICovCisjZGVmaW5lIFJUQ19BTFJNQlJfSFUgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX0hVX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBbGFybSBCIGhvdXIgdW5pdHMgaW4gQkNEIGZvcm1hdCAqLworI2RlZmluZSBSVENfQUxSTUJSX0hVXzAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0FMUk1CUl9IVV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBSVENfQUxSTUJSX0hVXzEgICAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX0FMUk1CUl9IVV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLworI2RlZmluZSBSVENfQUxSTUJSX0hVXzIgICAgICAgICAgICAgICAgKDB4NFUgPDwgUlRDX0FMUk1CUl9IVV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLworI2RlZmluZSBSVENfQUxSTUJSX0hVXzMgICAgICAgICAgICAgICAgKDB4OFUgPDwgUlRDX0FMUk1CUl9IVV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLworI2RlZmluZSBSVENfQUxSTUJSX01TSzJfUG9zICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfQUxSTUJSX01TSzJfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19BTFJNQlJfTVNLMl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLworI2RlZmluZSBSVENfQUxSTUJSX01TSzIgICAgICAgICAgICAgICAgUlRDX0FMUk1CUl9NU0syX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgQWxhcm0gQiBtaW51dGVzIG1hc2sgKi8KKyNkZWZpbmUgUlRDX0FMUk1CUl9NTlRfUG9zICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX0FMUk1CUl9NTlRfTXNrICAgICAgICAgICAgICgweDdVTCA8PCBSVENfQUxSTUJSX01OVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDcwMDAgKi8KKyNkZWZpbmUgUlRDX0FMUk1CUl9NTlQgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfTU5UX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFsYXJtIEIgbWludXRlIHRlbnMgaW4gQkNEIGZvcm1hdCAqLworI2RlZmluZSBSVENfQUxSTUJSX01OVF8wICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0FMUk1CUl9NTlRfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBSVENfQUxSTUJSX01OVF8xICAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX0FMUk1CUl9NTlRfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLworI2RlZmluZSBSVENfQUxSTUJSX01OVF8yICAgICAgICAgICAgICAgKDB4NFUgPDwgUlRDX0FMUk1CUl9NTlRfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLworI2RlZmluZSBSVENfQUxSTUJSX01OVV9Qb3MgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfQUxSTUJSX01OVV9Nc2sgICAgICAgICAgICAgKDB4RlVMIDw8IFJUQ19BTFJNQlJfTU5VX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMEYwMCAqLworI2RlZmluZSBSVENfQUxSTUJSX01OVSAgICAgICAgICAgICAgICAgUlRDX0FMUk1CUl9NTlVfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgQWxhcm0gQiBtaW51dGUgdW5pdHMgaW4gQkNEIGZvcm1hdCAqLworI2RlZmluZSBSVENfQUxSTUJSX01OVV8wICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0FMUk1CUl9NTlVfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBSVENfQUxSTUJSX01OVV8xICAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX0FMUk1CUl9NTlVfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBSVENfQUxSTUJSX01OVV8yICAgICAgICAgICAgICAgKDB4NFUgPDwgUlRDX0FMUk1CUl9NTlVfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLworI2RlZmluZSBSVENfQUxSTUJSX01OVV8zICAgICAgICAgICAgICAgKDB4OFUgPDwgUlRDX0FMUk1CUl9NTlVfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLworI2RlZmluZSBSVENfQUxSTUJSX01TSzFfUG9zICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfQUxSTUJSX01TSzFfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19BTFJNQlJfTVNLMV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLworI2RlZmluZSBSVENfQUxSTUJSX01TSzEgICAgICAgICAgICAgICAgUlRDX0FMUk1CUl9NU0sxX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgQWxhcm0gQiBzZWNvbmRzIG1hc2sgKi8KKyNkZWZpbmUgUlRDX0FMUk1CUl9TVF9Qb3MgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX0FMUk1CUl9TVF9Nc2sgICAgICAgICAgICAgICgweDdVTCA8PCBSVENfQUxSTUJSX1NUX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNzAgKi8KKyNkZWZpbmUgUlRDX0FMUk1CUl9TVCAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfU1RfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFsYXJtIEIgc2Vjb25kIHRlbnMgaW4gQkNEIGZvcm1hdCAqLworI2RlZmluZSBSVENfQUxSTUJSX1NUXzAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0FMUk1CUl9TVF9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBSVENfQUxSTUJSX1NUXzEgICAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX0FMUk1CUl9TVF9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBSVENfQUxSTUJSX1NUXzIgICAgICAgICAgICAgICAgKDB4NFUgPDwgUlRDX0FMUk1CUl9TVF9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBSVENfQUxSTUJSX1NVX1BvcyAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfQUxSTUJSX1NVX01zayAgICAgICAgICAgICAgKDB4RlVMIDw8IFJUQ19BTFJNQlJfU1VfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwRiAqLworI2RlZmluZSBSVENfQUxSTUJSX1NVICAgICAgICAgICAgICAgICAgUlRDX0FMUk1CUl9TVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQWxhcm0gQiBzZWNvbmQgdW5pdHMgaW4gQkNEIGZvcm1hdCAqLworI2RlZmluZSBSVENfQUxSTUJSX1NVXzAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0FMUk1CUl9TVV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBSVENfQUxSTUJSX1NVXzEgICAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX0FMUk1CUl9TVV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBSVENfQUxSTUJSX1NVXzIgICAgICAgICAgICAgICAgKDB4NFUgPDwgUlRDX0FMUk1CUl9TVV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBSVENfQUxSTUJSX1NVXzMgICAgICAgICAgICAgICAgKDB4OFUgPDwgUlRDX0FMUk1CUl9TVV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX1dQUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBSVENfV1BSX0tFWV9Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfV1BSX0tFWV9Nc2sgICAgICAgICAgICAgICAgKDB4RkZVTCA8PCBSVENfV1BSX0tFWV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDBGRiAqLworI2RlZmluZSBSVENfV1BSX0tFWSAgICAgICAgICAgICAgICAgICAgUlRDX1dQUl9LRVlfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgV3JpdGUgcHJvdGVjdGlvbiBrZXkgKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19TU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUlRDX1NTUl9TU19Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX1NTUl9TU19Nc2sgICAgICAgICAgICAgICAgICgweEZGRkZVTCA8PCBSVENfU1NSX1NTX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8KKyNkZWZpbmUgUlRDX1NTUl9TUyAgICAgICAgICAgICAgICAgICAgIFJUQ19TU1JfU1NfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFN1YiBzZWNvbmQgdmFsdWUgKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19TSElGVFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUlRDX1NISUZUUl9TVUJGU19Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX1NISUZUUl9TVUJGU19Nc2sgICAgICAgICAgICgweDdGRkZVTCA8PCBSVENfU0hJRlRSX1NVQkZTX1BvcykgICAgICAvKiE8IDB4MDAwMDdGRkYgKi8KKyNkZWZpbmUgUlRDX1NISUZUUl9TVUJGUyAgICAgICAgICAgICAgIFJUQ19TSElGVFJfU1VCRlNfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFN1YnN0cmFjdCBhIGZyYWN0aW9uIG9mIGEgc2Vjb25kICovCisjZGVmaW5lIFJUQ19TSElGVFJfQUREMVNfUG9zICAgICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19TSElGVFJfQUREMVNfTXNrICAgICAgICAgICAoMHgxVUwgPDwgUlRDX1NISUZUUl9BREQxU19Qb3MpICAgICAgICAgLyohPCAweDgwMDAwMDAwICovCisjZGVmaW5lIFJUQ19TSElGVFJfQUREMVMgICAgICAgICAgICAgICBSVENfU0hJRlRSX0FERDFTX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBBZGQgb24gc2Vjb25kICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfVFNUUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFJUQ19UU1RSX1BNX1BvcyAgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19UU1RSX1BNX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX1RTVFJfUE1fUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovCisjZGVmaW5lIFJUQ19UU1RSX1BNICAgICAgICAgICAgICAgICAgICBSVENfVFNUUl9QTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBUaW1lc3RhbXAgQU0vUE0gb3IgMjRIIGZvcm1hdCAqLworI2RlZmluZSBSVENfVFNUUl9IVF9Qb3MgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfVFNUUl9IVF9Nc2sgICAgICAgICAgICAgICAgKDB4M1VMIDw8IFJUQ19UU1RSX0hUX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDMwMDAwMCAqLworI2RlZmluZSBSVENfVFNUUl9IVCAgICAgICAgICAgICAgICAgICAgUlRDX1RTVFJfSFRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgVGltZXN0YW1wIGhvdXIgdGVucyBpbiBCQ0QgZm9ybWF0ICovCisjZGVmaW5lIFJUQ19UU1RSX0hUXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNUUl9IVF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovCisjZGVmaW5lIFJUQ19UU1RSX0hUXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFNUUl9IVF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovCisjZGVmaW5lIFJUQ19UU1RSX0hVX1BvcyAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19UU1RSX0hVX01zayAgICAgICAgICAgICAgICAoMHhGVUwgPDwgUlRDX1RTVFJfSFVfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMEYwMDAwICovCisjZGVmaW5lIFJUQ19UU1RSX0hVICAgICAgICAgICAgICAgICAgICBSVENfVFNUUl9IVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBUaW1lc3RhbXAgaG91ciB1bml0cyBpbiBCQ0QgZm9ybWF0ICovCisjZGVmaW5lIFJUQ19UU1RSX0hVXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNUUl9IVV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIFJUQ19UU1RSX0hVXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFNUUl9IVV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovCisjZGVmaW5lIFJUQ19UU1RSX0hVXzIgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFNUUl9IVV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovCisjZGVmaW5lIFJUQ19UU1RSX0hVXzMgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfVFNUUl9IVV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovCisjZGVmaW5lIFJUQ19UU1RSX01OVF9Qb3MgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19UU1RSX01OVF9Nc2sgICAgICAgICAgICAgICAoMHg3VUwgPDwgUlRDX1RTVFJfTU5UX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDA3MDAwICovCisjZGVmaW5lIFJUQ19UU1RSX01OVCAgICAgICAgICAgICAgICAgICBSVENfVFNUUl9NTlRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBUaW1lc3RhbXAgbWludXRlIHRlbnMgaW4gQkNEIGZvcm1hdCAqLworI2RlZmluZSBSVENfVFNUUl9NTlRfMCAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RTVFJfTU5UX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBSVENfVFNUUl9NTlRfMSAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX1RTVFJfTU5UX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLworI2RlZmluZSBSVENfVFNUUl9NTlRfMiAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUlRDX1RTVFJfTU5UX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLworI2RlZmluZSBSVENfVFNUUl9NTlVfUG9zICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfVFNUUl9NTlVfTXNrICAgICAgICAgICAgICAgKDB4RlVMIDw8IFJUQ19UU1RSX01OVV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMEYwMCAqLworI2RlZmluZSBSVENfVFNUUl9NTlUgICAgICAgICAgICAgICAgICAgUlRDX1RTVFJfTU5VX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgVGltZXN0YW1wIG1pbnV0ZSB1bml0cyBpbiBCQ0QgZm9ybWF0ICovCisjZGVmaW5lIFJUQ19UU1RSX01OVV8wICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNUUl9NTlVfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIFJUQ19UU1RSX01OVV8xICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFNUUl9NTlVfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIFJUQ19UU1RSX01OVV8yICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFNUUl9NTlVfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIFJUQ19UU1RSX01OVV8zICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfVFNUUl9NTlVfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIFJUQ19UU1RSX1NUX1BvcyAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19UU1RSX1NUX01zayAgICAgICAgICAgICAgICAoMHg3VUwgPDwgUlRDX1RTVFJfU1RfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDcwICovCisjZGVmaW5lIFJUQ19UU1RSX1NUICAgICAgICAgICAgICAgICAgICBSVENfVFNUUl9TVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBUaW1lc3RhbXAgc2Vjb25kIHRlbnMgaW4gQkNEIGZvcm1hdCAqLworI2RlZmluZSBSVENfVFNUUl9TVF8wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RTVFJfU1RfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBSVENfVFNUUl9TVF8xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX1RTVFJfU1RfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBSVENfVFNUUl9TVF8yICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUlRDX1RTVFJfU1RfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBSVENfVFNUUl9TVV9Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfVFNUUl9TVV9Nc2sgICAgICAgICAgICAgICAgKDB4RlVMIDw8IFJUQ19UU1RSX1NVX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwRiAqLworI2RlZmluZSBSVENfVFNUUl9TVSAgICAgICAgICAgICAgICAgICAgUlRDX1RTVFJfU1VfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgVGltZXN0YW1wIHNlY29uZCB1bml0cyBpbiBCQ0QgZm9ybWF0ICovCisjZGVmaW5lIFJUQ19UU1RSX1NVXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNUUl9TVV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFJUQ19UU1RSX1NVXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFNUUl9TVV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFJUQ19UU1RSX1NVXzIgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFNUUl9TVV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIFJUQ19UU1RSX1NVXzMgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfVFNUUl9TVV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfVFNEUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFJUQ19UU0RSX1dEVV9Qb3MgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19UU0RSX1dEVV9Nc2sgICAgICAgICAgICAgICAoMHg3VUwgPDwgUlRDX1RTRFJfV0RVX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDBFMDAwICovCisjZGVmaW5lIFJUQ19UU0RSX1dEVSAgICAgICAgICAgICAgICAgICBSVENfVFNEUl9XRFVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBUaW1lc3RhbXAgd2VlayBkYXkgdW5pdHMgKi8KKyNkZWZpbmUgUlRDX1RTRFJfV0RVXzAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UU0RSX1dEVV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgUlRDX1RTRFJfV0RVXzEgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UU0RSX1dEVV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgUlRDX1RTRFJfV0RVXzIgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UU0RSX1dEVV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgUlRDX1RTRFJfTVRfUG9zICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX1RTRFJfTVRfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfVFNEUl9NVF9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgUlRDX1RTRFJfTVQgICAgICAgICAgICAgICAgICAgIFJUQ19UU0RSX01UX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVzdGFtcCBtb250aCB0ZW5zIGluIEJDRCBmb3JtYXQgKi8KKyNkZWZpbmUgUlRDX1RTRFJfTVVfUG9zICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX1RTRFJfTVVfTXNrICAgICAgICAgICAgICAgICgweEZVTCA8PCBSVENfVFNEUl9NVV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDBGMDAgKi8KKyNkZWZpbmUgUlRDX1RTRFJfTVUgICAgICAgICAgICAgICAgICAgIFJUQ19UU0RSX01VX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVzdGFtcCBtb250aCB1bml0cyBpbiBCQ0QgZm9ybWF0ICovCisjZGVmaW5lIFJUQ19UU0RSX01VXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNEUl9NVV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIFJUQ19UU0RSX01VXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFNEUl9NVV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIFJUQ19UU0RSX01VXzIgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFNEUl9NVV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIFJUQ19UU0RSX01VXzMgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfVFNEUl9NVV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIFJUQ19UU0RSX0RUX1BvcyAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19UU0RSX0RUX01zayAgICAgICAgICAgICAgICAoMHgzVUwgPDwgUlRDX1RTRFJfRFRfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDMwICovCisjZGVmaW5lIFJUQ19UU0RSX0RUICAgICAgICAgICAgICAgICAgICBSVENfVFNEUl9EVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBUaW1lc3RhbXAgZGF0ZSB0ZW5zIGluIEJDRCBmb3JtYXQgKi8KKyNkZWZpbmUgUlRDX1RTRFJfRFRfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UU0RSX0RUX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgUlRDX1RTRFJfRFRfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UU0RSX0RUX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgUlRDX1RTRFJfRFVfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX1RTRFJfRFVfTXNrICAgICAgICAgICAgICAgICgweEZVTCA8PCBSVENfVFNEUl9EVV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8KKyNkZWZpbmUgUlRDX1RTRFJfRFUgICAgICAgICAgICAgICAgICAgIFJUQ19UU0RSX0RVX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVzdGFtcCBkYXRlIHVuaXRzIGluIEJDRCBmb3JtYXQgKi8KKyNkZWZpbmUgUlRDX1RTRFJfRFVfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UU0RSX0RVX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgUlRDX1RTRFJfRFVfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UU0RSX0RVX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgUlRDX1RTRFJfRFVfMiAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UU0RSX0RVX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgUlRDX1RTRFJfRFVfMyAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19UU0RSX0RVX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19UU1NTUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUlRDX1RTU1NSX1NTX1BvcyAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX1RTU1NSX1NTX01zayAgICAgICAgICAgICAgICgweEZGRkZVTCA8PCBSVENfVFNTU1JfU1NfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8KKyNkZWZpbmUgUlRDX1RTU1NSX1NTICAgICAgICAgICAgICAgICAgIFJUQ19UU1NTUl9TU19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVzdGFtcCBzdWIgc2Vjb25kIHZhbHVlICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQ0FMUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFJUQ19DQUxSX0NBTFBfUG9zICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19DQUxSX0NBTFBfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0NBTFJfQ0FMUF9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovCisjZGVmaW5lIFJUQ19DQUxSX0NBTFAgICAgICAgICAgICAgICAgICBSVENfQ0FMUl9DQUxQX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBJbmNyZWFzZSBmcmVxdWVuY3kgb2YgUlRDIDQ4OC41IHBwbSAqLworI2RlZmluZSBSVENfQ0FMUl9DQUxXOF9Qb3MgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfQ0FMUl9DQUxXOF9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19DQUxSX0NBTFc4X1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLworI2RlZmluZSBSVENfQ0FMUl9DQUxXOCAgICAgICAgICAgICAgICAgUlRDX0NBTFJfQ0FMVzhfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgVXNlIGEgOC1zZWNvbmQgY2FsaWJyYXRpb24gY3ljbGUgcGVyaW9kICovCisjZGVmaW5lIFJUQ19DQUxSX0NBTFcxNl9Qb3MgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19DQUxSX0NBTFcxNl9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0NBTFJfQ0FMVzE2X1BvcykgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIFJUQ19DQUxSX0NBTFcxNiAgICAgICAgICAgICAgICBSVENfQ0FMUl9DQUxXMTZfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBVc2UgYSAxNi1zZWNvbmQgY2FsaWJyYXRpb24gY3ljbGUgcGVyaW9kICovCisjZGVmaW5lIFJUQ19DQUxSX0NBTE1fUG9zICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19DQUxSX0NBTE1fTXNrICAgICAgICAgICAgICAoMHgxRkZVTCA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMUZGICovCisjZGVmaW5lIFJUQ19DQUxSX0NBTE0gICAgICAgICAgICAgICAgICBSVENfQ0FMUl9DQUxNX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDYWxpYnJhdGlvbiBtaW51cyAqLworI2RlZmluZSBSVENfQ0FMUl9DQUxNXzAgICAgICAgICAgICAgICAgKDB4MDAxVSA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBSVENfQ0FMUl9DQUxNXzEgICAgICAgICAgICAgICAgKDB4MDAyVSA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBSVENfQ0FMUl9DQUxNXzIgICAgICAgICAgICAgICAgKDB4MDA0VSA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBSVENfQ0FMUl9DQUxNXzMgICAgICAgICAgICAgICAgKDB4MDA4VSA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBSVENfQ0FMUl9DQUxNXzQgICAgICAgICAgICAgICAgKDB4MDEwVSA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBSVENfQ0FMUl9DQUxNXzUgICAgICAgICAgICAgICAgKDB4MDIwVSA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBSVENfQ0FMUl9DQUxNXzYgICAgICAgICAgICAgICAgKDB4MDQwVSA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBSVENfQ0FMUl9DQUxNXzcgICAgICAgICAgICAgICAgKDB4MDgwVSA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLworI2RlZmluZSBSVENfQ0FMUl9DQUxNXzggICAgICAgICAgICAgICAgKDB4MTAwVSA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX1RBTVBDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QM01GX1BvcyAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QM01GX01zayAgICAgICAgICgweDFVTCA8PCBSVENfVEFNUENSX1RBTVAzTUZfUG9zKSAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QM01GICAgICAgICAgICAgIFJUQ19UQU1QQ1JfVEFNUDNNRl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRhbXBlciAzIGdlbmVyYXRlcyBhIHRyaWdnZXIgZXZlbnQgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QM05PRVJBU0VfUG9zICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QM05PRVJBU0VfTXNrICAgICgweDFVTCA8PCBSVENfVEFNUENSX1RBTVAzTk9FUkFTRV9Qb3MpICAvKiE8IDB4MDA4MDAwMDAgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QM05PRVJBU0UgICAgICAgIFJUQ19UQU1QQ1JfVEFNUDNOT0VSQVNFX01zayAgICAgICAgICAgICAvKiE8IFRhbXBlciAzIG5vIGVyYXNlIGJhY2t1cCByZWdpc3RlcnMgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QM0lFX1BvcyAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QM0lFX01zayAgICAgICAgICgweDFVTCA8PCBSVENfVEFNUENSX1RBTVAzSUVfUG9zKSAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QM0lFICAgICAgICAgICAgIFJUQ19UQU1QQ1JfVEFNUDNJRV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRhbXBlciAzIGludGVycnVwdCBlbmFibGUgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QMk1GX1BvcyAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QMk1GX01zayAgICAgICAgICgweDFVTCA8PCBSVENfVEFNUENSX1RBTVAyTUZfUG9zKSAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QMk1GICAgICAgICAgICAgIFJUQ19UQU1QQ1JfVEFNUDJNRl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRhbXBlciAyIGdlbmVyYXRlcyBhIHRyaWdnZXIgZXZlbnQgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QMk5PRVJBU0VfUG9zICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QMk5PRVJBU0VfTXNrICAgICgweDFVTCA8PCBSVENfVEFNUENSX1RBTVAyTk9FUkFTRV9Qb3MpICAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QMk5PRVJBU0UgICAgICAgIFJUQ19UQU1QQ1JfVEFNUDJOT0VSQVNFX01zayAgICAgICAgICAgICAvKiE8IFRhbXBlciAyIG5vIGVyYXNlIGJhY2t1cCByZWdpc3RlcnMgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QMklFX1BvcyAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QMklFX01zayAgICAgICAgICgweDFVTCA8PCBSVENfVEFNUENSX1RBTVAySUVfUG9zKSAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QMklFICAgICAgICAgICAgIFJUQ19UQU1QQ1JfVEFNUDJJRV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRhbXBlciAyIGludGVycnVwdCBlbmFibGUgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QMU1GX1BvcyAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QMU1GX01zayAgICAgICAgICgweDFVTCA8PCBSVENfVEFNUENSX1RBTVAxTUZfUG9zKSAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QMU1GICAgICAgICAgICAgIFJUQ19UQU1QQ1JfVEFNUDFNRl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRhbXBlciAxIGdlbmVyYXRlcyBhIHRyaWdnZXIgZXZlbnQgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QMU5PRVJBU0VfUG9zICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QMU5PRVJBU0VfTXNrICAgICgweDFVTCA8PCBSVENfVEFNUENSX1RBTVAxTk9FUkFTRV9Qb3MpICAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QMU5PRVJBU0UgICAgICAgIFJUQ19UQU1QQ1JfVEFNUDFOT0VSQVNFX01zayAgICAgICAgICAgICAvKiE8IFRhbXBlciAxIG5vIGVyYXNlIGJhY2t1cCByZWdpc3RlcnMgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QMUlFX1BvcyAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QMUlFX01zayAgICAgICAgICgweDFVTCA8PCBSVENfVEFNUENSX1RBTVAxSUVfUG9zKSAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QMUlFICAgICAgICAgICAgIFJUQ19UQU1QQ1JfVEFNUDFJRV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRhbXBlciAxIGludGVycnVwdCBlbmFibGUgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QUFVESVNfUG9zICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QUFVESVNfTXNrICAgICAgICgweDFVTCA8PCBSVENfVEFNUENSX1RBTVBQVURJU19Qb3MpICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QUFVESVMgICAgICAgICAgIFJUQ19UQU1QQ1JfVEFNUFBVRElTX01zayAgICAgICAgICAgICAgICAvKiE8IFJUQ19UQU1QeCBwdWxsLXVwIGRpc2FibGUgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QUFJDSF9Qb3MgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QUFJDSF9Nc2sgICAgICAgICgweDNVTCA8PCBSVENfVEFNUENSX1RBTVBQUkNIX1BvcykgICAgICAvKiE8IDB4MDAwMDYwMDAgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QUFJDSCAgICAgICAgICAgIFJUQ19UQU1QQ1JfVEFNUFBSQ0hfTXNrICAgICAgICAgICAgICAgICAvKiE8IFJUQ19UQU1QeCBwcmVjaGFyZ2UgZHVyYXRpb24gKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QUFJDSF8wICAgICAgICAgICgweDFVIDw8IFJUQ19UQU1QQ1JfVEFNUFBSQ0hfUG9zKSAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QUFJDSF8xICAgICAgICAgICgweDJVIDw8IFJUQ19UQU1QQ1JfVEFNUFBSQ0hfUG9zKSAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QRkxUX1BvcyAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QRkxUX01zayAgICAgICAgICgweDNVTCA8PCBSVENfVEFNUENSX1RBTVBGTFRfUG9zKSAgICAgICAvKiE8IDB4MDAwMDE4MDAgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QRkxUICAgICAgICAgICAgIFJUQ19UQU1QQ1JfVEFNUEZMVF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFJUQ19UQU1QeCBmaWx0ZXIgY291bnQgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QRkxUXzAgICAgICAgICAgICgweDFVIDw8IFJUQ19UQU1QQ1JfVEFNUEZMVF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QRkxUXzEgICAgICAgICAgICgweDJVIDw8IFJUQ19UQU1QQ1JfVEFNUEZMVF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QRlJFUV9Qb3MgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QRlJFUV9Nc2sgICAgICAgICgweDdVTCA8PCBSVENfVEFNUENSX1RBTVBGUkVRX1BvcykgICAgICAvKiE8IDB4MDAwMDA3MDAgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QRlJFUSAgICAgICAgICAgIFJUQ19UQU1QQ1JfVEFNUEZSRVFfTXNrICAgICAgICAgICAgICAgICAvKiE8IFRhbXBlciBzYW1wbGluZyBmcmVxdWVuY3kgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QRlJFUV8wICAgICAgICAgICgweDFVIDw8IFJUQ19UQU1QQ1JfVEFNUEZSRVFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QRlJFUV8xICAgICAgICAgICgweDJVIDw8IFJUQ19UQU1QQ1JfVEFNUEZSRVFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QRlJFUV8yICAgICAgICAgICgweDRVIDw8IFJUQ19UQU1QQ1JfVEFNUEZSRVFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QVFNfUG9zICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QVFNfTXNrICAgICAgICAgICgweDFVTCA8PCBSVENfVEFNUENSX1RBTVBUU19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QVFMgICAgICAgICAgICAgIFJUQ19UQU1QQ1JfVEFNUFRTX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEFjdGl2YXRlIHRpbWVzdGFtcCBvbiB0YW1wZXIgZGV0ZWN0aW9uIGV2ZW50ICovCisjZGVmaW5lIFJUQ19UQU1QQ1JfVEFNUDNUUkdfUG9zICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19UQU1QQ1JfVEFNUDNUUkdfTXNrICAgICAgICAoMHgxVUwgPDwgUlRDX1RBTVBDUl9UQU1QM1RSR19Qb3MpICAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIFJUQ19UQU1QQ1JfVEFNUDNUUkcgICAgICAgICAgICBSVENfVEFNUENSX1RBTVAzVFJHX01zayAgICAgICAgICAgICAgICAgLyohPCBBY3RpdmUgbGV2ZWwgZm9yIFJUQ19UQU1QMyBpbnB1dCAqLworI2RlZmluZSBSVENfVEFNUENSX1RBTVAzRV9Qb3MgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfVEFNUENSX1RBTVAzRV9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFJUQ19UQU1QQ1JfVEFNUDNFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBSVENfVEFNUENSX1RBTVAzRSAgICAgICAgICAgICAgUlRDX1RBTVBDUl9UQU1QM0VfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUlRDX1RBTVAzIGRldGVjdGlvbiBlbmFibGUgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QMlRSR19Qb3MgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QMlRSR19Nc2sgICAgICAgICgweDFVTCA8PCBSVENfVEFNUENSX1RBTVAyVFJHX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgUlRDX1RBTVBDUl9UQU1QMlRSRyAgICAgICAgICAgIFJUQ19UQU1QQ1JfVEFNUDJUUkdfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFjdGl2ZSBsZXZlbCBmb3IgUlRDX1RBTVAyIGlucHV0ICovCisjZGVmaW5lIFJUQ19UQU1QQ1JfVEFNUDJFX1BvcyAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19UQU1QQ1JfVEFNUDJFX01zayAgICAgICAgICAoMHgxVUwgPDwgUlRDX1RBTVBDUl9UQU1QMkVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIFJUQ19UQU1QQ1JfVEFNUDJFICAgICAgICAgICAgICBSVENfVEFNUENSX1RBTVAyRV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBSVENfVEFNUDIgZGV0ZWN0aW9uIGVuYWJsZSAqLworI2RlZmluZSBSVENfVEFNUENSX1RBTVBJRV9Qb3MgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfVEFNUENSX1RBTVBJRV9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFJUQ19UQU1QQ1JfVEFNUElFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBSVENfVEFNUENSX1RBTVBJRSAgICAgICAgICAgICAgUlRDX1RBTVBDUl9UQU1QSUVfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgVGFtcGVycyBpbnRlcnJ1cHQgZW5hYmxlICovCisjZGVmaW5lIFJUQ19UQU1QQ1JfVEFNUDFUUkdfUG9zICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19UQU1QQ1JfVEFNUDFUUkdfTXNrICAgICAgICAoMHgxVUwgPDwgUlRDX1RBTVBDUl9UQU1QMVRSR19Qb3MpICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFJUQ19UQU1QQ1JfVEFNUDFUUkcgICAgICAgICAgICBSVENfVEFNUENSX1RBTVAxVFJHX01zayAgICAgICAgICAgICAgICAgLyohPCBBY3RpdmUgbGV2ZWwgZm9yIFJUQ19UQU1QMSBpbnB1dCAqLworI2RlZmluZSBSVENfVEFNUENSX1RBTVAxRV9Qb3MgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfVEFNUENSX1RBTVAxRV9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFJUQ19UQU1QQ1JfVEFNUDFFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBSVENfVEFNUENSX1RBTVAxRSAgICAgICAgICAgICAgUlRDX1RBTVBDUl9UQU1QMUVfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUlRDX1RBTVAxIGRldGVjdGlvbiBlbmFibGUgKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19BTFJNQVNTUiByZWdpc3RlciAgKioqKioqKioqKioqKi8KKyNkZWZpbmUgUlRDX0FMUk1BU1NSX01BU0tTU19Qb3MgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX0FMUk1BU1NSX01BU0tTU19Nc2sgICAgICAgICgweEZVTCA8PCBSVENfQUxSTUFTU1JfTUFTS1NTX1BvcykgICAgICAvKiE8IDB4MEYwMDAwMDAgKi8KKyNkZWZpbmUgUlRDX0FMUk1BU1NSX01BU0tTUyAgICAgICAgICAgIFJUQ19BTFJNQVNTUl9NQVNLU1NfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFsYXJtIEEgbWFzayB0aGUgbW9zdC1zaWduaWZpY2FudCBiaXRzIHN0YXJ0aW5nIGF0IHRoaXMgYml0ICovCisjZGVmaW5lIFJUQ19BTFJNQVNTUl9NQVNLU1NfMCAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUFTU1JfTUFTS1NTX1BvcykgICAgICAgLyohPCAweDAxMDAwMDAwICovCisjZGVmaW5lIFJUQ19BTFJNQVNTUl9NQVNLU1NfMSAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUFTU1JfTUFTS1NTX1BvcykgICAgICAgLyohPCAweDAyMDAwMDAwICovCisjZGVmaW5lIFJUQ19BTFJNQVNTUl9NQVNLU1NfMiAgICAgICAgICAoMHg0VSA8PCBSVENfQUxSTUFTU1JfTUFTS1NTX1BvcykgICAgICAgLyohPCAweDA0MDAwMDAwICovCisjZGVmaW5lIFJUQ19BTFJNQVNTUl9NQVNLU1NfMyAgICAgICAgICAoMHg4VSA8PCBSVENfQUxSTUFTU1JfTUFTS1NTX1BvcykgICAgICAgLyohPCAweDA4MDAwMDAwICovCisjZGVmaW5lIFJUQ19BTFJNQVNTUl9TU19Qb3MgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBbGFybSBBIHN1YiBzZWNvbmRzIHZhbHVlKi8KKyNkZWZpbmUgUlRDX0FMUk1BU1NSX1NTX01zayAgICAgICAgICAgICgweDdGRkZVTCA8PCBSVENfQUxSTUFTU1JfU1NfUG9zKSAgICAgICAvKiE8IDB4MDAwMDdGRkYgKi8KKyNkZWZpbmUgUlRDX0FMUk1BU1NSX1NTICAgICAgICAgICAgICAgIFJUQ19BTFJNQVNTUl9TU19Nc2sgICAgICAgICAgICAgICAgICAgICAKKworLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19BTFJNQlNTUiByZWdpc3RlciAgKioqKioqKioqKioqKi8KKyNkZWZpbmUgUlRDX0FMUk1CU1NSX01BU0tTU19Qb3MgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX0FMUk1CU1NSX01BU0tTU19Nc2sgICAgICAgICgweEZVTCA8PCBSVENfQUxSTUJTU1JfTUFTS1NTX1BvcykgICAgICAvKiE8IDB4MEYwMDAwMDAgKi8KKyNkZWZpbmUgUlRDX0FMUk1CU1NSX01BU0tTUyAgICAgICAgICAgIFJUQ19BTFJNQlNTUl9NQVNLU1NfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFsYXJtIEIgbWFzayB0aGUgbW9zdC1zaWduaWZpY2FudCBiaXRzIHN0YXJ0aW5nIGF0IHRoaXMgYml0ICovCisjZGVmaW5lIFJUQ19BTFJNQlNTUl9NQVNLU1NfMCAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUJTU1JfTUFTS1NTX1BvcykgICAgICAgLyohPCAweDAxMDAwMDAwICovCisjZGVmaW5lIFJUQ19BTFJNQlNTUl9NQVNLU1NfMSAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUJTU1JfTUFTS1NTX1BvcykgICAgICAgLyohPCAweDAyMDAwMDAwICovCisjZGVmaW5lIFJUQ19BTFJNQlNTUl9NQVNLU1NfMiAgICAgICAgICAoMHg0VSA8PCBSVENfQUxSTUJTU1JfTUFTS1NTX1BvcykgICAgICAgLyohPCAweDA0MDAwMDAwICovCisjZGVmaW5lIFJUQ19BTFJNQlNTUl9NQVNLU1NfMyAgICAgICAgICAoMHg4VSA8PCBSVENfQUxSTUJTU1JfTUFTS1NTX1BvcykgICAgICAgLyohPCAweDA4MDAwMDAwICovCisjZGVmaW5lIFJUQ19BTFJNQlNTUl9TU19Qb3MgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBbGFybSBCIHN1YiBzZWNvbmRzIHZhbHVlKi8KKyNkZWZpbmUgUlRDX0FMUk1CU1NSX1NTX01zayAgICAgICAgICAgICgweDdGRkZVTCA8PCBSVENfQUxSTUJTU1JfU1NfUG9zKSAgICAgICAvKiE8IDB4MDAwMDdGRkYgKi8KKyNkZWZpbmUgUlRDX0FMUk1CU1NSX1NTICAgICAgICAgICAgICAgIFJUQ19BTFJNQlNTUl9TU19Nc2sgICAgICAgICAgICAgICAgICAgICAKKworLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19PUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUlRDX09SX09VVF9STVBfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX09SX09VVF9STVBfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBSVENfT1JfT1VUX1JNUF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBSVENfT1JfT1VUX1JNUCAgICAgICAgICAgICAgICAgUlRDX09SX09VVF9STVBfTXNrICAgICAgICAgICAgICAgICAgLyohPCBSVENfT1VUIHJlbWFwICovCisjZGVmaW5lIFJUQ19PUl9BTEFSTU9VVFRZUEVfUG9zICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19PUl9BTEFSTU9VVFRZUEVfTXNrICAgICAgICAoMHgxVUwgPDwgUlRDX09SX0FMQVJNT1VUVFlQRV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFJUQ19PUl9BTEFSTU9VVFRZUEUgICAgICAgICAgICBSVENfT1JfQUxBUk1PVVRUWVBFX01zayAgICAgICAgICAgICAgICAgLyohPCBSVENfQUxBUk0gb24gUEMxMyBvdXRwdXQgdHlwZSAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDBSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLworI2RlZmluZSBSVENfQktQMFJfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfQktQMFJfTXNrICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBSVENfQktQMFJfUG9zKSAgICAgICAgIC8qITwgMHhGRkZGRkZGRiAqLworI2RlZmluZSBSVENfQktQMFIgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDBSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAwICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQktQMVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovCisjZGVmaW5lIFJUQ19CS1AxUl9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19CS1AxUl9Nc2sgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IFJUQ19CS1AxUl9Qb3MpICAgICAgICAgLyohPCAweEZGRkZGRkZGICovCisjZGVmaW5lIFJUQ19CS1AxUiAgICAgICAgICAgICAgICAgICAgICBSVENfQktQMVJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSVEMgYmFja3VwIHJlZ2lzdGVyIDEgKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AyUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUlRDX0JLUDJSX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX0JLUDJSX01zayAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgUlRDX0JLUDJSX1BvcykgICAgICAgICAvKiE8IDB4RkZGRkZGRkYgKi8KKyNkZWZpbmUgUlRDX0JLUDJSICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AyUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMiAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLworI2RlZmluZSBSVENfQktQM1JfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfQktQM1JfTXNrICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBSVENfQktQM1JfUG9zKSAgICAgICAgIC8qITwgMHhGRkZGRkZGRiAqLworI2RlZmluZSBSVENfQktQM1IgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDNSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAzICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQktQNFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovCisjZGVmaW5lIFJUQ19CS1A0Ul9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19CS1A0Ul9Nc2sgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IFJUQ19CS1A0Ul9Qb3MpICAgICAgICAgLyohPCAweEZGRkZGRkZGICovCisjZGVmaW5lIFJUQ19CS1A0UiAgICAgICAgICAgICAgICAgICAgICBSVENfQktQNFJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSVEMgYmFja3VwIHJlZ2lzdGVyIDQgKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1A1UiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUlRDX0JLUDVSX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX0JLUDVSX01zayAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgUlRDX0JLUDVSX1BvcykgICAgICAgICAvKiE8IDB4RkZGRkZGRkYgKi8KKyNkZWZpbmUgUlRDX0JLUDVSICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1A1Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgNSAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDZSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLworI2RlZmluZSBSVENfQktQNlJfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfQktQNlJfTXNrICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBSVENfQktQNlJfUG9zKSAgICAgICAgIC8qITwgMHhGRkZGRkZGRiAqLworI2RlZmluZSBSVENfQktQNlIgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDZSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciA2ICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQktQN1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovCisjZGVmaW5lIFJUQ19CS1A3Ul9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19CS1A3Ul9Nc2sgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IFJUQ19CS1A3Ul9Qb3MpICAgICAgICAgLyohPCAweEZGRkZGRkZGICovCisjZGVmaW5lIFJUQ19CS1A3UiAgICAgICAgICAgICAgICAgICAgICBSVENfQktQN1JfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSVEMgYmFja3VwIHJlZ2lzdGVyIDcgKi8KKworLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1A4UiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgUlRDX0JLUDhSX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgUlRDX0JLUDhSX01zayAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgUlRDX0JLUDhSX1BvcykgICAgICAgICAvKiE8IDB4RkZGRkZGRkYgKi8KKyNkZWZpbmUgUlRDX0JLUDhSICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1A4Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgOCAqLworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDlSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLworI2RlZmluZSBSVENfQktQOVJfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBSVENfQktQOVJfTXNrICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBSVENfQktQOVJfUG9zKSAgICAgICAgIC8qITwgMHhGRkZGRkZGRiAqLworI2RlZmluZSBSVENfQktQOVIgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDlSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciA5ICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQktQMTBSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovCisjZGVmaW5lIFJUQ19CS1AxMFJfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19CS1AxMFJfTXNrICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IFJUQ19CS1AxMFJfUG9zKSAgICAgICAgLyohPCAweEZGRkZGRkZGICovCisjZGVmaW5lIFJUQ19CS1AxMFIgICAgICAgICAgICAgICAgICAgICBSVENfQktQMTBSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSVEMgYmFja3VwIHJlZ2lzdGVyIDEwICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQktQMTFSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovCisjZGVmaW5lIFJUQ19CS1AxMVJfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19CS1AxMVJfTXNrICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IFJUQ19CS1AxMVJfUG9zKSAgICAgICAgLyohPCAweEZGRkZGRkZGICovCisjZGVmaW5lIFJUQ19CS1AxMVIgICAgICAgICAgICAgICAgICAgICBSVENfQktQMTFSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSVEMgYmFja3VwIHJlZ2lzdGVyIDExICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQktQMTJSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovCisjZGVmaW5lIFJUQ19CS1AxMlJfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19CS1AxMlJfTXNrICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IFJUQ19CS1AxMlJfUG9zKSAgICAgICAgLyohPCAweEZGRkZGRkZGICovCisjZGVmaW5lIFJUQ19CS1AxMlIgICAgICAgICAgICAgICAgICAgICBSVENfQktQMTJSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSVEMgYmFja3VwIHJlZ2lzdGVyIDEyICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQktQMTNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovCisjZGVmaW5lIFJUQ19CS1AxM1JfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19CS1AxM1JfTXNrICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IFJUQ19CS1AxM1JfUG9zKSAgICAgICAgLyohPCAweEZGRkZGRkZGICovCisjZGVmaW5lIFJUQ19CS1AxM1IgICAgICAgICAgICAgICAgICAgICBSVENfQktQMTNSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSVEMgYmFja3VwIHJlZ2lzdGVyIDEzICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQktQMTRSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovCisjZGVmaW5lIFJUQ19CS1AxNFJfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19CS1AxNFJfTXNrICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IFJUQ19CS1AxNFJfUG9zKSAgICAgICAgLyohPCAweEZGRkZGRkZGICovCisjZGVmaW5lIFJUQ19CS1AxNFIgICAgICAgICAgICAgICAgICAgICBSVENfQktQMTRSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSVEMgYmFja3VwIHJlZ2lzdGVyIDE0ICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQktQMTVSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovCisjZGVmaW5lIFJUQ19CS1AxNVJfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19CS1AxNVJfTXNrICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IFJUQ19CS1AxNVJfUG9zKSAgICAgICAgLyohPCAweEZGRkZGRkZGICovCisjZGVmaW5lIFJUQ19CS1AxNVIgICAgICAgICAgICAgICAgICAgICBSVENfQktQMTVSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSVEMgYmFja3VwIHJlZ2lzdGVyIDE1ICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQktQMTZSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovCisjZGVmaW5lIFJUQ19CS1AxNlJfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19CS1AxNlJfTXNrICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IFJUQ19CS1AxNlJfUG9zKSAgICAgICAgLyohPCAweEZGRkZGRkZGICovCisjZGVmaW5lIFJUQ19CS1AxNlIgICAgICAgICAgICAgICAgICAgICBSVENfQktQMTZSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSVEMgYmFja3VwIHJlZ2lzdGVyIDE2ICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQktQMTdSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovCisjZGVmaW5lIFJUQ19CS1AxN1JfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19CS1AxN1JfTXNrICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IFJUQ19CS1AxN1JfUG9zKSAgICAgICAgLyohPCAweEZGRkZGRkZGICovCisjZGVmaW5lIFJUQ19CS1AxN1IgICAgICAgICAgICAgICAgICAgICBSVENfQktQMTdSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSVEMgYmFja3VwIHJlZ2lzdGVyIDE3ICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQktQMThSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovCisjZGVmaW5lIFJUQ19CS1AxOFJfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19CS1AxOFJfTXNrICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IFJUQ19CS1AxOFJfUG9zKSAgICAgICAgLyohPCAweEZGRkZGRkZGICovCisjZGVmaW5lIFJUQ19CS1AxOFIgICAgICAgICAgICAgICAgICAgICBSVENfQktQMThSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSVEMgYmFja3VwIHJlZ2lzdGVyIDE4ICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQktQMTlSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovCisjZGVmaW5lIFJUQ19CS1AxOVJfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFJUQ19CS1AxOVJfTXNrICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IFJUQ19CS1AxOVJfUG9zKSAgICAgICAgLyohPCAweEZGRkZGRkZGICovCisjZGVmaW5lIFJUQ19CS1AxOVIgICAgICAgICAgICAgICAgICAgICBSVENfQktQMTlSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSVEMgYmFja3VwIHJlZ2lzdGVyIDE5ICovCisKKy8qKioqKioqKioqKioqKioqKioqKiBOdW1iZXIgb2YgYmFja3VwIHJlZ2lzdGVycyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFJUQ19CS1BfTlVNQkVSICAgICAgICAgICAgICAgICAoMjBVKQorCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgU2VyaWFsIFBlcmlwaGVyYWwgSW50ZXJmYWNlIChTUEkpICAgICAgICAgICAgICAgICAgICovCisvKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qCisgKiBAYnJpZWYgU3BlY2lmaWMgZGV2aWNlIGZlYXR1cmUgZGVmaW5pdGlvbnMgKG5vdCBwcmVzZW50IG9uIGFsbCBkZXZpY2VzIGluIHRoZSBTVE0zMldCIHNlcmllKQorICovCisjZGVmaW5lIFNQSV9JMlNfU1VQUE9SVCAgICAgICAgICAgICAgICAgICAgICAgLyohPCBJMlMgc3VwcG9ydCAqLworCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNQSV9DUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBTUElfQ1IxX0NQSEFfUG9zICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTUElfQ1IxX0NQSEFfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFNQSV9DUjFfQ1BIQV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBTUElfQ1IxX0NQSEEgICAgICAgICAgICAgICAgU1BJX0NSMV9DUEhBX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDbG9jayBQaGFzZSAgICAgICovCisjZGVmaW5lIFNQSV9DUjFfQ1BPTF9Qb3MgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNQSV9DUjFfQ1BPTF9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgU1BJX0NSMV9DUE9MX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFNQSV9DUjFfQ1BPTCAgICAgICAgICAgICAgICBTUElfQ1IxX0NQT0xfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENsb2NrIFBvbGFyaXR5ICAgKi8KKyNkZWZpbmUgU1BJX0NSMV9NU1RSX1BvcyAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1BJX0NSMV9NU1RSX01zayAgICAgICAgICAgICgweDFVTCA8PCBTUElfQ1IxX01TVFJfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgU1BJX0NSMV9NU1RSICAgICAgICAgICAgICAgIFNQSV9DUjFfTVNUUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8TWFzdGVyIFNlbGVjdGlvbiAqLworCisjZGVmaW5lIFNQSV9DUjFfQlJfUG9zICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNQSV9DUjFfQlJfTXNrICAgICAgICAgICAgICAoMHg3VUwgPDwgU1BJX0NSMV9CUl9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDM4ICovCisjZGVmaW5lIFNQSV9DUjFfQlIgICAgICAgICAgICAgICAgICBTUElfQ1IxX0JSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPEJSWzI6MF0gYml0cyAoQmF1ZCBSYXRlIENvbnRyb2wpICovCisjZGVmaW5lIFNQSV9DUjFfQlJfMCAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1BJX0NSMV9CUl9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIFNQSV9DUjFfQlJfMSAgICAgICAgICAgICAgICAoMHgyVUwgPDwgU1BJX0NSMV9CUl9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIFNQSV9DUjFfQlJfMiAgICAgICAgICAgICAgICAoMHg0VUwgPDwgU1BJX0NSMV9CUl9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisKKyNkZWZpbmUgU1BJX0NSMV9TUEVfUG9zICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1BJX0NSMV9TUEVfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBTUElfQ1IxX1NQRV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgU1BJX0NSMV9TUEUgICAgICAgICAgICAgICAgIFNQSV9DUjFfU1BFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8U1BJIEVuYWJsZSAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgU1BJX0NSMV9MU0JGSVJTVF9Qb3MgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1BJX0NSMV9MU0JGSVJTVF9Nc2sgICAgICAgICgweDFVTCA8PCBTUElfQ1IxX0xTQkZJUlNUX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgU1BJX0NSMV9MU0JGSVJTVCAgICAgICAgICAgIFNQSV9DUjFfTFNCRklSU1RfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8RnJhbWUgRm9ybWF0ICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgU1BJX0NSMV9TU0lfUG9zICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1BJX0NSMV9TU0lfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBTUElfQ1IxX1NTSV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgU1BJX0NSMV9TU0kgICAgICAgICAgICAgICAgIFNQSV9DUjFfU1NJX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8SW50ZXJuYWwgc2xhdmUgc2VsZWN0ICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgU1BJX0NSMV9TU01fUG9zICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1BJX0NSMV9TU01fTXNrICAgICAgICAgICAgICgweDFVTCA8PCBTUElfQ1IxX1NTTV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgU1BJX0NSMV9TU00gICAgICAgICAgICAgICAgIFNQSV9DUjFfU1NNX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8U29mdHdhcmUgc2xhdmUgbWFuYWdlbWVudCAgICAgICAgICAgKi8KKyNkZWZpbmUgU1BJX0NSMV9SWE9OTFlfUG9zICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1BJX0NSMV9SWE9OTFlfTXNrICAgICAgICAgICgweDFVTCA8PCBTUElfQ1IxX1JYT05MWV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgU1BJX0NSMV9SWE9OTFkgICAgICAgICAgICAgIFNQSV9DUjFfUlhPTkxZX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8UmVjZWl2ZSBvbmx5ICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgU1BJX0NSMV9DUkNMX1BvcyAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1BJX0NSMV9DUkNMX01zayAgICAgICAgICAgICgweDFVTCA8PCBTUElfQ1IxX0NSQ0xfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgU1BJX0NSMV9DUkNMICAgICAgICAgICAgICAgIFNQSV9DUjFfQ1JDTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENSQyBMZW5ndGggKi8KKyNkZWZpbmUgU1BJX0NSMV9DUkNORVhUX1BvcyAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1BJX0NSMV9DUkNORVhUX01zayAgICAgICAgICgweDFVTCA8PCBTUElfQ1IxX0NSQ05FWFRfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgU1BJX0NSMV9DUkNORVhUICAgICAgICAgICAgIFNQSV9DUjFfQ1JDTkVYVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8VHJhbnNtaXQgQ1JDIG5leHQgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgU1BJX0NSMV9DUkNFTl9Qb3MgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1BJX0NSMV9DUkNFTl9Nc2sgICAgICAgICAgICgweDFVTCA8PCBTUElfQ1IxX0NSQ0VOX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgU1BJX0NSMV9DUkNFTiAgICAgICAgICAgICAgIFNQSV9DUjFfQ1JDRU5fTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8SGFyZHdhcmUgQ1JDIGNhbGN1bGF0aW9uIGVuYWJsZSAgICAgKi8KKyNkZWZpbmUgU1BJX0NSMV9CSURJT0VfUG9zICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1BJX0NSMV9CSURJT0VfTXNrICAgICAgICAgICgweDFVTCA8PCBTUElfQ1IxX0JJRElPRV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgU1BJX0NSMV9CSURJT0UgICAgICAgICAgICAgIFNQSV9DUjFfQklESU9FX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IGVuYWJsZSBpbiBiaWRpcmVjdGlvbmFsIG1vZGUgKi8KKyNkZWZpbmUgU1BJX0NSMV9CSURJTU9ERV9Qb3MgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1BJX0NSMV9CSURJTU9ERV9Nc2sgICAgICAgICgweDFVTCA8PCBTUElfQ1IxX0JJRElNT0RFX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgU1BJX0NSMV9CSURJTU9ERSAgICAgICAgICAgIFNQSV9DUjFfQklESU1PREVfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8QmlkaXJlY3Rpb25hbCBkYXRhIG1vZGUgZW5hYmxlICAgICAgKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTUElfQ1IyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgU1BJX0NSMl9SWERNQUVOX1BvcyAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1BJX0NSMl9SWERNQUVOX01zayAgICAgICAgICgweDFVTCA8PCBTUElfQ1IyX1JYRE1BRU5fUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgU1BJX0NSMl9SWERNQUVOICAgICAgICAgICAgIFNQSV9DUjJfUlhETUFFTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJ4IEJ1ZmZlciBETUEgRW5hYmxlICovCisjZGVmaW5lIFNQSV9DUjJfVFhETUFFTl9Qb3MgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNQSV9DUjJfVFhETUFFTl9Nc2sgICAgICAgICAoMHgxVUwgPDwgU1BJX0NSMl9UWERNQUVOX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFNQSV9DUjJfVFhETUFFTiAgICAgICAgICAgICBTUElfQ1IyX1RYRE1BRU5fTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBUeCBCdWZmZXIgRE1BIEVuYWJsZSAqLworI2RlZmluZSBTUElfQ1IyX1NTT0VfUG9zICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTUElfQ1IyX1NTT0VfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFNQSV9DUjJfU1NPRV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBTUElfQ1IyX1NTT0UgICAgICAgICAgICAgICAgU1BJX0NSMl9TU09FX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1MgT3V0cHV0IEVuYWJsZSAqLworI2RlZmluZSBTUElfQ1IyX05TU1BfUG9zICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTUElfQ1IyX05TU1BfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFNQSV9DUjJfTlNTUF9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBTUElfQ1IyX05TU1AgICAgICAgICAgICAgICAgU1BJX0NSMl9OU1NQX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTlNTIHB1bHNlIG1hbmFnZW1lbnQgRW5hYmxlICovCisjZGVmaW5lIFNQSV9DUjJfRlJGX1BvcyAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNQSV9DUjJfRlJGX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgU1BJX0NSMl9GUkZfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIFNQSV9DUjJfRlJGICAgICAgICAgICAgICAgICBTUElfQ1IyX0ZSRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBGcmFtZSBGb3JtYXQgRW5hYmxlICovCisjZGVmaW5lIFNQSV9DUjJfRVJSSUVfUG9zICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNQSV9DUjJfRVJSSUVfTXNrICAgICAgICAgICAoMHgxVUwgPDwgU1BJX0NSMl9FUlJJRV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIFNQSV9DUjJfRVJSSUUgICAgICAgICAgICAgICBTUElfQ1IyX0VSUklFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFcnJvciBJbnRlcnJ1cHQgRW5hYmxlICovCisjZGVmaW5lIFNQSV9DUjJfUlhORUlFX1BvcyAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNQSV9DUjJfUlhORUlFX01zayAgICAgICAgICAoMHgxVUwgPDwgU1BJX0NSMl9SWE5FSUVfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIFNQSV9DUjJfUlhORUlFICAgICAgICAgICAgICBTUElfQ1IyX1JYTkVJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSWCBidWZmZXIgTm90IEVtcHR5IEludGVycnVwdCBFbmFibGUgKi8KKyNkZWZpbmUgU1BJX0NSMl9UWEVJRV9Qb3MgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1BJX0NSMl9UWEVJRV9Nc2sgICAgICAgICAgICgweDFVTCA8PCBTUElfQ1IyX1RYRUlFX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgU1BJX0NSMl9UWEVJRSAgICAgICAgICAgICAgIFNQSV9DUjJfVFhFSUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFR4IGJ1ZmZlciBFbXB0eSBJbnRlcnJ1cHQgRW5hYmxlICovCisjZGVmaW5lIFNQSV9DUjJfRFNfUG9zICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNQSV9DUjJfRFNfTXNrICAgICAgICAgICAgICAoMHhGVUwgPDwgU1BJX0NSMl9EU19Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwRjAwICovCisjZGVmaW5lIFNQSV9DUjJfRFMgICAgICAgICAgICAgICAgICBTUElfQ1IyX0RTX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBEU1szOjBdIERhdGEgU2l6ZSAqLworI2RlZmluZSBTUElfQ1IyX0RTXzAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNQSV9DUjJfRFNfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBTUElfQ1IyX0RTXzEgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFNQSV9DUjJfRFNfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBTUElfQ1IyX0RTXzIgICAgICAgICAgICAgICAgKDB4NFVMIDw8IFNQSV9DUjJfRFNfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLworI2RlZmluZSBTUElfQ1IyX0RTXzMgICAgICAgICAgICAgICAgKDB4OFVMIDw8IFNQSV9DUjJfRFNfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLworI2RlZmluZSBTUElfQ1IyX0ZSWFRIX1BvcyAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTUElfQ1IyX0ZSWFRIX01zayAgICAgICAgICAgKDB4MVVMIDw8IFNQSV9DUjJfRlJYVEhfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBTUElfQ1IyX0ZSWFRIICAgICAgICAgICAgICAgU1BJX0NSMl9GUlhUSF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRklGTyByZWNlcHRpb24gVGhyZXNob2xkICovCisjZGVmaW5lIFNQSV9DUjJfTERNQVJYX1BvcyAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNQSV9DUjJfTERNQVJYX01zayAgICAgICAgICAoMHgxVUwgPDwgU1BJX0NSMl9MRE1BUlhfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIFNQSV9DUjJfTERNQVJYICAgICAgICAgICAgICBTUElfQ1IyX0xETUFSWF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBMYXN0IERNQSB0cmFuc2ZlciBmb3IgcmVjZXB0aW9uICovCisjZGVmaW5lIFNQSV9DUjJfTERNQVRYX1BvcyAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNQSV9DUjJfTERNQVRYX01zayAgICAgICAgICAoMHgxVUwgPDwgU1BJX0NSMl9MRE1BVFhfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIFNQSV9DUjJfTERNQVRYICAgICAgICAgICAgICBTUElfQ1IyX0xETUFUWF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBMYXN0IERNQSB0cmFuc2ZlciBmb3IgdHJhbnNtaXNzaW9uICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNQSV9TUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFNQSV9TUl9SWE5FX1BvcyAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNQSV9TUl9SWE5FX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgU1BJX1NSX1JYTkVfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFNQSV9TUl9SWE5FICAgICAgICAgICAgICAgICBTUElfU1JfUlhORV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlaXZlIGJ1ZmZlciBOb3QgRW1wdHkgKi8KKyNkZWZpbmUgU1BJX1NSX1RYRV9Qb3MgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1BJX1NSX1RYRV9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBTUElfU1JfVFhFX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgU1BJX1NSX1RYRSAgICAgICAgICAgICAgICAgIFNQSV9TUl9UWEVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWl0IGJ1ZmZlciBFbXB0eSAqLworI2RlZmluZSBTUElfU1JfQ0hTSURFX1BvcyAgICAgICAgICAgKDJVKQorI2RlZmluZSBTUElfU1JfQ0hTSURFX01zayAgICAgICAgICAgKDB4MVVMIDw8IFNQSV9TUl9DSFNJREVfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBTUElfU1JfQ0hTSURFICAgICAgICAgICAgICAgU1BJX1NSX0NIU0lERV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCBzaWRlICovCisjZGVmaW5lIFNQSV9TUl9VRFJfUG9zICAgICAgICAgICAgICAoM1UpCisjZGVmaW5lIFNQSV9TUl9VRFJfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgU1BJX1NSX1VEUl9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIFNQSV9TUl9VRFIgICAgICAgICAgICAgICAgICBTUElfU1JfVURSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBVbmRlcnJ1biBmbGFnICovCisjZGVmaW5lIFNQSV9TUl9DUkNFUlJfUG9zICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNQSV9TUl9DUkNFUlJfTXNrICAgICAgICAgICAoMHgxVUwgPDwgU1BJX1NSX0NSQ0VSUl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIFNQSV9TUl9DUkNFUlIgICAgICAgICAgICAgICBTUElfU1JfQ1JDRVJSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUkMgRXJyb3IgZmxhZyAqLworI2RlZmluZSBTUElfU1JfTU9ERl9Qb3MgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTUElfU1JfTU9ERl9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFNQSV9TUl9NT0RGX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBTUElfU1JfTU9ERiAgICAgICAgICAgICAgICAgU1BJX1NSX01PREZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTW9kZSBmYXVsdCAqLworI2RlZmluZSBTUElfU1JfT1ZSX1BvcyAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTUElfU1JfT1ZSX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFNQSV9TUl9PVlJfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBTUElfU1JfT1ZSICAgICAgICAgICAgICAgICAgU1BJX1NSX09WUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgT3ZlcnJ1biBmbGFnICovCisjZGVmaW5lIFNQSV9TUl9CU1lfUG9zICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNQSV9TUl9CU1lfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgU1BJX1NSX0JTWV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIFNQSV9TUl9CU1kgICAgICAgICAgICAgICAgICBTUElfU1JfQlNZX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCdXN5IGZsYWcgKi8KKyNkZWZpbmUgU1BJX1NSX0ZSRV9Qb3MgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1BJX1NSX0ZSRV9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBTUElfU1JfRlJFX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgU1BJX1NSX0ZSRSAgICAgICAgICAgICAgICAgIFNQSV9TUl9GUkVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFRJIGZyYW1lIGZvcm1hdCBlcnJvciAqLworI2RlZmluZSBTUElfU1JfRlJMVkxfUG9zICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTUElfU1JfRlJMVkxfTXNrICAgICAgICAgICAgKDB4M1VMIDw8IFNQSV9TUl9GUkxWTF9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDYwMCAqLworI2RlZmluZSBTUElfU1JfRlJMVkwgICAgICAgICAgICAgICAgU1BJX1NSX0ZSTFZMX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRklGTyBSZWNlcHRpb24gTGV2ZWwgKi8KKyNkZWZpbmUgU1BJX1NSX0ZSTFZMXzAgICAgICAgICAgICAgICgweDFVTCA8PCBTUElfU1JfRlJMVkxfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgU1BJX1NSX0ZSTFZMXzEgICAgICAgICAgICAgICgweDJVTCA8PCBTUElfU1JfRlJMVkxfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgU1BJX1NSX0ZUTFZMX1BvcyAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1BJX1NSX0ZUTFZMX01zayAgICAgICAgICAgICgweDNVTCA8PCBTUElfU1JfRlRMVkxfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDE4MDAgKi8KKyNkZWZpbmUgU1BJX1NSX0ZUTFZMICAgICAgICAgICAgICAgIFNQSV9TUl9GVExWTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEZJRk8gVHJhbnNtaXNzaW9uIExldmVsICovCisjZGVmaW5lIFNQSV9TUl9GVExWTF8wICAgICAgICAgICAgICAoMHgxVUwgPDwgU1BJX1NSX0ZUTFZMX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIFNQSV9TUl9GVExWTF8xICAgICAgICAgICAgICAoMHgyVUwgPDwgU1BJX1NSX0ZUTFZMX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNQSV9EUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFNQSV9EUl9EUl9Qb3MgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNQSV9EUl9EUl9Nc2sgICAgICAgICAgICAgICAoMHhGRkZGVUwgPDwgU1BJX0RSX0RSX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovCisjZGVmaW5lIFNQSV9EUl9EUiAgICAgICAgICAgICAgICAgICBTUElfRFJfRFJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPERhdGEgUmVnaXN0ZXIgICAgICAgICAgICovCisKKy8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1BJX0NSQ1BSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFNQSV9DUkNQUl9DUkNQT0xZX1BvcyAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNQSV9DUkNQUl9DUkNQT0xZX01zayAgICAgICAoMHhGRkZGVUwgPDwgU1BJX0NSQ1BSX0NSQ1BPTFlfUG9zKSAgICAgICAgLyohPCAweDAwMDBGRkZGICovCisjZGVmaW5lIFNQSV9DUkNQUl9DUkNQT0xZICAgICAgICAgICBTUElfQ1JDUFJfQ1JDUE9MWV9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPENSQyBwb2x5bm9taWFsIHJlZ2lzdGVyICovCisKKy8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTUElfUlhDUkNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFNQSV9SWENSQ1JfUlhDUkNfUG9zICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNQSV9SWENSQ1JfUlhDUkNfTXNrICAgICAgICAoMHhGRkZGVUwgPDwgU1BJX1JYQ1JDUl9SWENSQ19Qb3MpICAgICAgICAgLyohPCAweDAwMDBGRkZGICovCisjZGVmaW5lIFNQSV9SWENSQ1JfUlhDUkMgICAgICAgICAgICBTUElfUlhDUkNSX1JYQ1JDX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPFJ4IENSQyBSZWdpc3RlciAgICAgICAgICovCisKKy8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTUElfVFhDUkNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFNQSV9UWENSQ1JfVFhDUkNfUG9zICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNQSV9UWENSQ1JfVFhDUkNfTXNrICAgICAgICAoMHhGRkZGVUwgPDwgU1BJX1RYQ1JDUl9UWENSQ19Qb3MpICAgICAgICAgLyohPCAweDAwMDBGRkZGICovCisjZGVmaW5lIFNQSV9UWENSQ1JfVFhDUkMgICAgICAgICAgICBTUElfVFhDUkNSX1RYQ1JDX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPFR4IENSQyBSZWdpc3RlciAgICAgICAgICovCisKKy8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTUElfSTJTQ0ZHUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFNQSV9JMlNDRkdSX0NITEVOX1BvcyAgICAgICAoMFUpCisjZGVmaW5lIFNQSV9JMlNDRkdSX0NITEVOX01zayAgICAgICAoMHgxVUwgPDwgU1BJX0kyU0NGR1JfQ0hMRU5fUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFNQSV9JMlNDRkdSX0NITEVOICAgICAgICAgICBTUElfSTJTQ0ZHUl9DSExFTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPENoYW5uZWwgbGVuZ3RoIChudW1iZXIgb2YgYml0cyBwZXIgYXVkaW8gY2hhbm5lbCkgKi8KKyNkZWZpbmUgU1BJX0kyU0NGR1JfREFUTEVOX1BvcyAgICAgICgxVSkKKyNkZWZpbmUgU1BJX0kyU0NGR1JfREFUTEVOX01zayAgICAgICgweDNVTCA8PCBTUElfSTJTQ0ZHUl9EQVRMRU5fUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDYgKi8KKyNkZWZpbmUgU1BJX0kyU0NGR1JfREFUTEVOICAgICAgICAgIFNQSV9JMlNDRkdSX0RBVExFTl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8REFUTEVOWzE6MF0gYml0cyAoRGF0YSBsZW5ndGggdG8gYmUgdHJhbnNmZXJyZWQpICovCisjZGVmaW5lIFNQSV9JMlNDRkdSX0RBVExFTl8wICAgICAgICAoMHgxVUwgPDwgU1BJX0kyU0NGR1JfREFUTEVOX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFNQSV9JMlNDRkdSX0RBVExFTl8xICAgICAgICAoMHgyVUwgPDwgU1BJX0kyU0NGR1JfREFUTEVOX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIFNQSV9JMlNDRkdSX0NLUE9MX1BvcyAgICAgICAoM1UpCisjZGVmaW5lIFNQSV9JMlNDRkdSX0NLUE9MX01zayAgICAgICAoMHgxVUwgPDwgU1BJX0kyU0NGR1JfQ0tQT0xfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIFNQSV9JMlNDRkdSX0NLUE9MICAgICAgICAgICBTUElfSTJTQ0ZHUl9DS1BPTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPHN0ZWFkeSBzdGF0ZSBjbG9jayBwb2xhcml0eSAqLworI2RlZmluZSBTUElfSTJTQ0ZHUl9JMlNTVERfUG9zICAgICAgKDRVKQorI2RlZmluZSBTUElfSTJTQ0ZHUl9JMlNTVERfTXNrICAgICAgKDB4M1VMIDw8IFNQSV9JMlNDRkdSX0kyU1NURF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAzMCAqLworI2RlZmluZSBTUElfSTJTQ0ZHUl9JMlNTVEQgICAgICAgICAgU1BJX0kyU0NGR1JfSTJTU1REX01zayAgICAgICAgICAgICAgICAgICAgIC8qITxJMlNTVERbMTowXSBiaXRzIChJMlMgc3RhbmRhcmQgc2VsZWN0aW9uKSAqLworI2RlZmluZSBTUElfSTJTQ0ZHUl9JMlNTVERfMCAgICAgICAgKDB4MVVMIDw8IFNQSV9JMlNDRkdSX0kyU1NURF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBTUElfSTJTQ0ZHUl9JMlNTVERfMSAgICAgICAgKDB4MlVMIDw8IFNQSV9JMlNDRkdSX0kyU1NURF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBTUElfSTJTQ0ZHUl9QQ01TWU5DX1BvcyAgICAgKDdVKQorI2RlZmluZSBTUElfSTJTQ0ZHUl9QQ01TWU5DX01zayAgICAgKDB4MVVMIDw8IFNQSV9JMlNDRkdSX1BDTVNZTkNfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLworI2RlZmluZSBTUElfSTJTQ0ZHUl9QQ01TWU5DICAgICAgICAgU1BJX0kyU0NGR1JfUENNU1lOQ19Nc2sgICAgICAgICAgICAgICAgICAgIC8qITxQQ00gZnJhbWUgc3luY2hyb25pemF0aW9uICovCisjZGVmaW5lIFNQSV9JMlNDRkdSX0kyU0NGR19Qb3MgICAgICAoOFUpCisjZGVmaW5lIFNQSV9JMlNDRkdSX0kyU0NGR19Nc2sgICAgICAoMHgzVUwgPDwgU1BJX0kyU0NGR1JfSTJTQ0ZHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMzAwICovCisjZGVmaW5lIFNQSV9JMlNDRkdSX0kyU0NGRyAgICAgICAgICBTUElfSTJTQ0ZHUl9JMlNDRkdfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPEkyU0NGR1sxOjBdIGJpdHMgKEkyUyBjb25maWd1cmF0aW9uIG1vZGUpICovCisjZGVmaW5lIFNQSV9JMlNDRkdSX0kyU0NGR18wICAgICAgICAoMHgxVUwgPDwgU1BJX0kyU0NGR1JfSTJTQ0ZHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIFNQSV9JMlNDRkdSX0kyU0NGR18xICAgICAgICAoMHgyVUwgPDwgU1BJX0kyU0NGR1JfSTJTQ0ZHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIFNQSV9JMlNDRkdSX0kyU0VfUG9zICAgICAgICAoMTBVKQorI2RlZmluZSBTUElfSTJTQ0ZHUl9JMlNFX01zayAgICAgICAgKDB4MVVMIDw8IFNQSV9JMlNDRkdSX0kyU0VfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLworI2RlZmluZSBTUElfSTJTQ0ZHUl9JMlNFICAgICAgICAgICAgU1BJX0kyU0NGR1JfSTJTRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITxJMlMgRW5hYmxlICovCisjZGVmaW5lIFNQSV9JMlNDRkdSX0kyU01PRF9Qb3MgICAgICAoMTFVKQorI2RlZmluZSBTUElfSTJTQ0ZHUl9JMlNNT0RfTXNrICAgICAgKDB4MVVMIDw8IFNQSV9JMlNDRkdSX0kyU01PRF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLworI2RlZmluZSBTUElfSTJTQ0ZHUl9JMlNNT0QgICAgICAgICAgU1BJX0kyU0NGR1JfSTJTTU9EX01zayAgICAgICAgICAgICAgICAgICAgIC8qITxJMlMgbW9kZSBzZWxlY3Rpb24gKi8KKyNkZWZpbmUgU1BJX0kyU0NGR1JfQVNUUlRFTl9Qb3MgICAgICgxMlUpCisjZGVmaW5lIFNQSV9JMlNDRkdSX0FTVFJURU5fTXNrICAgICAoMHgxVUwgPDwgU1BJX0kyU0NGR1JfQVNUUlRFTl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIFNQSV9JMlNDRkdSX0FTVFJURU4gICAgICAgICBTUElfSTJTQ0ZHUl9BU1RSVEVOX01zayAgICAgICAgICAgICAgICAgICAgLyohPEFzeW5jaHJvbm91cyBzdGFydCBlbmFibGUgKi8KKworLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNQSV9JMlNQUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgU1BJX0kyU1BSX0kyU0RJVl9Qb3MgICAgICAgICgwVSkKKyNkZWZpbmUgU1BJX0kyU1BSX0kyU0RJVl9Nc2sgICAgICAgICgweEZGVUwgPDwgU1BJX0kyU1BSX0kyU0RJVl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwRkYgKi8KKyNkZWZpbmUgU1BJX0kyU1BSX0kyU0RJViAgICAgICAgICAgIFNQSV9JMlNQUl9JMlNESVZfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8STJTIExpbmVhciBwcmVzY2FsZXIgKi8KKyNkZWZpbmUgU1BJX0kyU1BSX09ERF9Qb3MgICAgICAgICAgICg4VSkKKyNkZWZpbmUgU1BJX0kyU1BSX09ERF9Nc2sgICAgICAgICAgICgweDFVTCA8PCBTUElfSTJTUFJfT0REX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgU1BJX0kyU1BSX09ERCAgICAgICAgICAgICAgIFNQSV9JMlNQUl9PRERfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8T2RkIGZhY3RvciBmb3IgdGhlIHByZXNjYWxlciAqLworI2RlZmluZSBTUElfSTJTUFJfTUNLT0VfUG9zICAgICAgICAgKDlVKQorI2RlZmluZSBTUElfSTJTUFJfTUNLT0VfTXNrICAgICAgICAgKDB4MVVMIDw8IFNQSV9JMlNQUl9NQ0tPRV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBTUElfSTJTUFJfTUNLT0UgICAgICAgICAgICAgU1BJX0kyU1BSX01DS09FX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITxNYXN0ZXIgQ2xvY2sgT3V0cHV0IEVuYWJsZSAqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgICBUb3VjaCBTZW5zaW5nIENvbnRyb2xsZXIgKFRTQykgICAgICAgICAgICAgICAgICAgICovCisvKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVFNDX0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFRTQ19DUl9UU0NFX1BvcyAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19DUl9UU0NFX01zayAgICAgICAgICAoMHgxVUwgPDwgVFNDX0NSX1RTQ0VfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFRTQ19DUl9UU0NFICAgICAgICAgICAgICBUU0NfQ1JfVFNDRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBUb3VjaCBzZW5zaW5nIGNvbnRyb2xsZXIgZW5hYmxlICovCisjZGVmaW5lIFRTQ19DUl9TVEFSVF9Qb3MgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19DUl9TVEFSVF9Nc2sgICAgICAgICAoMHgxVUwgPDwgVFNDX0NSX1NUQVJUX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFRTQ19DUl9TVEFSVCAgICAgICAgICAgICBUU0NfQ1JfU1RBUlRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTdGFydCBhIG5ldyBhY3F1aXNpdGlvbiAqLworI2RlZmluZSBUU0NfQ1JfQU1fUG9zICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfQ1JfQU1fTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFRTQ19DUl9BTV9Qb3MpICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBUU0NfQ1JfQU0gICAgICAgICAgICAgICAgVFNDX0NSX0FNX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQWNxdWlzaXRpb24gbW9kZSAqLworI2RlZmluZSBUU0NfQ1JfU1lOQ1BPTF9Qb3MgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfQ1JfU1lOQ1BPTF9Nc2sgICAgICAgKDB4MVVMIDw8IFRTQ19DUl9TWU5DUE9MX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBUU0NfQ1JfU1lOQ1BPTCAgICAgICAgICAgVFNDX0NSX1NZTkNQT0xfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU3luY2hyb25pemF0aW9uIHBpbiBwb2xhcml0eSAqLworI2RlZmluZSBUU0NfQ1JfSU9ERUZfUG9zICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfQ1JfSU9ERUZfTXNrICAgICAgICAgKDB4MVVMIDw8IFRTQ19DUl9JT0RFRl9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBUU0NfQ1JfSU9ERUYgICAgICAgICAgICAgVFNDX0NSX0lPREVGX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSU8gZGVmYXVsdCBtb2RlICovCisKKyNkZWZpbmUgVFNDX0NSX01DVl9Qb3MgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0NSX01DVl9Nc2sgICAgICAgICAgICgweDdVTCA8PCBUU0NfQ1JfTUNWX1BvcykgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwRTAgKi8KKyNkZWZpbmUgVFNDX0NSX01DViAgICAgICAgICAgICAgIFRTQ19DUl9NQ1ZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE1DVlsyOjBdIGJpdHMgKE1heCBDb3VudCBWYWx1ZSkgKi8KKyNkZWZpbmUgVFNDX0NSX01DVl8wICAgICAgICAgICAgICgweDFVIDw8IFRTQ19DUl9NQ1ZfUG9zKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgVFNDX0NSX01DVl8xICAgICAgICAgICAgICgweDJVIDw8IFRTQ19DUl9NQ1ZfUG9zKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgVFNDX0NSX01DVl8yICAgICAgICAgICAgICgweDRVIDw8IFRTQ19DUl9NQ1ZfUG9zKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKworI2RlZmluZSBUU0NfQ1JfUEdQU0NfUG9zICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfQ1JfUEdQU0NfTXNrICAgICAgICAgKDB4N1VMIDw8IFRTQ19DUl9QR1BTQ19Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwNzAwMCAqLworI2RlZmluZSBUU0NfQ1JfUEdQU0MgICAgICAgICAgICAgVFNDX0NSX1BHUFNDX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdQU0NbMjowXSBiaXRzIChQdWxzZSBHZW5lcmF0b3IgUHJlc2NhbGVyKSAqLworI2RlZmluZSBUU0NfQ1JfUEdQU0NfMCAgICAgICAgICAgKDB4MVUgPDwgVFNDX0NSX1BHUFNDX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBUU0NfQ1JfUEdQU0NfMSAgICAgICAgICAgKDB4MlUgPDwgVFNDX0NSX1BHUFNDX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLworI2RlZmluZSBUU0NfQ1JfUEdQU0NfMiAgICAgICAgICAgKDB4NFUgPDwgVFNDX0NSX1BHUFNDX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLworCisjZGVmaW5lIFRTQ19DUl9TU1BTQ19Qb3MgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19DUl9TU1BTQ19Nc2sgICAgICAgICAoMHgxVUwgPDwgVFNDX0NSX1NTUFNDX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovCisjZGVmaW5lIFRTQ19DUl9TU1BTQyAgICAgICAgICAgICBUU0NfQ1JfU1NQU0NfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTcHJlYWQgU3BlY3RydW0gUHJlc2NhbGVyICovCisjZGVmaW5lIFRTQ19DUl9TU0VfUG9zICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19DUl9TU0VfTXNrICAgICAgICAgICAoMHgxVUwgPDwgVFNDX0NSX1NTRV9Qb3MpICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIFRTQ19DUl9TU0UgICAgICAgICAgICAgICBUU0NfQ1JfU1NFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTcHJlYWQgU3BlY3RydW0gRW5hYmxlICovCisKKyNkZWZpbmUgVFNDX0NSX1NTRF9Qb3MgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0NSX1NTRF9Nc2sgICAgICAgICAgICgweDdGVUwgPDwgVFNDX0NSX1NTRF9Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDBGRTAwMDAgKi8KKyNkZWZpbmUgVFNDX0NSX1NTRCAgICAgICAgICAgICAgIFRTQ19DUl9TU0RfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNTRFs2OjBdIGJpdHMgKFNwcmVhZCBTcGVjdHJ1bSBEZXZpYXRpb24pICovCisjZGVmaW5lIFRTQ19DUl9TU0RfMCAgICAgICAgICAgICAoMHgwMVUgPDwgVFNDX0NSX1NTRF9Qb3MpICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovCisjZGVmaW5lIFRTQ19DUl9TU0RfMSAgICAgICAgICAgICAoMHgwMlUgPDwgVFNDX0NSX1NTRF9Qb3MpICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovCisjZGVmaW5lIFRTQ19DUl9TU0RfMiAgICAgICAgICAgICAoMHgwNFUgPDwgVFNDX0NSX1NTRF9Qb3MpICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovCisjZGVmaW5lIFRTQ19DUl9TU0RfMyAgICAgICAgICAgICAoMHgwOFUgPDwgVFNDX0NSX1NTRF9Qb3MpICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovCisjZGVmaW5lIFRTQ19DUl9TU0RfNCAgICAgICAgICAgICAoMHgxMFUgPDwgVFNDX0NSX1NTRF9Qb3MpICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovCisjZGVmaW5lIFRTQ19DUl9TU0RfNSAgICAgICAgICAgICAoMHgyMFUgPDwgVFNDX0NSX1NTRF9Qb3MpICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovCisjZGVmaW5lIFRTQ19DUl9TU0RfNiAgICAgICAgICAgICAoMHg0MFUgPDwgVFNDX0NSX1NTRF9Qb3MpICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwODAwMDAwICovCisKKyNkZWZpbmUgVFNDX0NSX0NUUExfUG9zICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0NSX0NUUExfTXNrICAgICAgICAgICgweEZVTCA8PCBUU0NfQ1JfQ1RQTF9Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MEYwMDAwMDAgKi8KKyNkZWZpbmUgVFNDX0NSX0NUUEwgICAgICAgICAgICAgIFRTQ19DUl9DVFBMX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENUUExbMzowXSBiaXRzIChDaGFyZ2UgVHJhbnNmZXIgcHVsc2UgbG93KSAqLworI2RlZmluZSBUU0NfQ1JfQ1RQTF8wICAgICAgICAgICAgKDB4MVUgPDwgVFNDX0NSX0NUUExfUG9zKSAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLworI2RlZmluZSBUU0NfQ1JfQ1RQTF8xICAgICAgICAgICAgKDB4MlUgPDwgVFNDX0NSX0NUUExfUG9zKSAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLworI2RlZmluZSBUU0NfQ1JfQ1RQTF8yICAgICAgICAgICAgKDB4NFUgPDwgVFNDX0NSX0NUUExfUG9zKSAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLworI2RlZmluZSBUU0NfQ1JfQ1RQTF8zICAgICAgICAgICAgKDB4OFUgPDwgVFNDX0NSX0NUUExfUG9zKSAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwODAwMDAwMCAqLworCisjZGVmaW5lIFRTQ19DUl9DVFBIX1BvcyAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19DUl9DVFBIX01zayAgICAgICAgICAoMHhGVUwgPDwgVFNDX0NSX0NUUEhfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweEYwMDAwMDAwICovCisjZGVmaW5lIFRTQ19DUl9DVFBIICAgICAgICAgICAgICBUU0NfQ1JfQ1RQSF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDVFBIWzM6MF0gYml0cyAoQ2hhcmdlIFRyYW5zZmVyIHB1bHNlIGhpZ2gpICovCisjZGVmaW5lIFRTQ19DUl9DVFBIXzAgICAgICAgICAgICAoMHgxVSA8PCBUU0NfQ1JfQ1RQSF9Qb3MpICAgICAgICAgICAgICAgICAgICAgLyohPCAweDEwMDAwMDAwICovCisjZGVmaW5lIFRTQ19DUl9DVFBIXzEgICAgICAgICAgICAoMHgyVSA8PCBUU0NfQ1JfQ1RQSF9Qb3MpICAgICAgICAgICAgICAgICAgICAgLyohPCAweDIwMDAwMDAwICovCisjZGVmaW5lIFRTQ19DUl9DVFBIXzIgICAgICAgICAgICAoMHg0VSA8PCBUU0NfQ1JfQ1RQSF9Qb3MpICAgICAgICAgICAgICAgICAgICAgLyohPCAweDQwMDAwMDAwICovCisjZGVmaW5lIFRTQ19DUl9DVFBIXzMgICAgICAgICAgICAoMHg4VSA8PCBUU0NfQ1JfQ1RQSF9Qb3MpICAgICAgICAgICAgICAgICAgICAgLyohPCAweDgwMDAwMDAwICovCisKKy8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVFNDX0lFUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFRTQ19JRVJfRU9BSUVfUG9zICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JRVJfRU9BSUVfTXNrICAgICAgICAoMHgxVUwgPDwgVFNDX0lFUl9FT0FJRV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFRTQ19JRVJfRU9BSUUgICAgICAgICAgICBUU0NfSUVSX0VPQUlFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFbmQgb2YgYWNxdWlzaXRpb24gaW50ZXJydXB0IGVuYWJsZSAqLworI2RlZmluZSBUU0NfSUVSX01DRUlFX1BvcyAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSUVSX01DRUlFX01zayAgICAgICAgKDB4MVVMIDw8IFRTQ19JRVJfTUNFSUVfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBUU0NfSUVSX01DRUlFICAgICAgICAgICAgVFNDX0lFUl9NQ0VJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTWF4IGNvdW50IGVycm9yIGludGVycnVwdCBlbmFibGUgKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUU0NfSUNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgVFNDX0lDUl9FT0FJQ19Qb3MgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lDUl9FT0FJQ19Nc2sgICAgICAgICgweDFVTCA8PCBUU0NfSUNSX0VPQUlDX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgVFNDX0lDUl9FT0FJQyAgICAgICAgICAgIFRTQ19JQ1JfRU9BSUNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEVuZCBvZiBhY3F1aXNpdGlvbiBpbnRlcnJ1cHQgY2xlYXIgKi8KKyNkZWZpbmUgVFNDX0lDUl9NQ0VJQ19Qb3MgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lDUl9NQ0VJQ19Nc2sgICAgICAgICgweDFVTCA8PCBUU0NfSUNSX01DRUlDX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgVFNDX0lDUl9NQ0VJQyAgICAgICAgICAgIFRTQ19JQ1JfTUNFSUNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE1heCBjb3VudCBlcnJvciBpbnRlcnJ1cHQgY2xlYXIgKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUU0NfSVNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgVFNDX0lTUl9FT0FGX1BvcyAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lTUl9FT0FGX01zayAgICAgICAgICgweDFVTCA8PCBUU0NfSVNSX0VPQUZfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgVFNDX0lTUl9FT0FGICAgICAgICAgICAgIFRTQ19JU1JfRU9BRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEVuZCBvZiBhY3F1aXNpdGlvbiBmbGFnICovCisjZGVmaW5lIFRTQ19JU1JfTUNFRl9Qb3MgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JU1JfTUNFRl9Nc2sgICAgICAgICAoMHgxVUwgPDwgVFNDX0lTUl9NQ0VGX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFRTQ19JU1JfTUNFRiAgICAgICAgICAgICBUU0NfSVNSX01DRUZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBNYXggY291bnQgZXJyb3IgZmxhZyAqLworCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRTQ19JT0hDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBUU0NfSU9IQ1JfRzFfSU8xX1BvcyAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9IQ1JfRzFfSU8xX01zayAgICAgKDB4MVVMIDw8IFRTQ19JT0hDUl9HMV9JTzFfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBUU0NfSU9IQ1JfRzFfSU8xICAgICAgICAgVFNDX0lPSENSX0cxX0lPMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1JPVVAxX0lPMSBzY2htaXR0IHRyaWdnZXIgaHlzdGVyZXNpcyBtb2RlICovCisjZGVmaW5lIFRTQ19JT0hDUl9HMV9JTzJfUG9zICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0hDUl9HMV9JTzJfTXNrICAgICAoMHgxVUwgPDwgVFNDX0lPSENSX0cxX0lPMl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFRTQ19JT0hDUl9HMV9JTzIgICAgICAgICBUU0NfSU9IQ1JfRzFfSU8yX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDFfSU8yIHNjaG1pdHQgdHJpZ2dlciBoeXN0ZXJlc2lzIG1vZGUgKi8KKyNkZWZpbmUgVFNDX0lPSENSX0cxX0lPM19Qb3MgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPSENSX0cxX0lPM19Nc2sgICAgICgweDFVTCA8PCBUU0NfSU9IQ1JfRzFfSU8zX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgVFNDX0lPSENSX0cxX0lPMyAgICAgICAgIFRTQ19JT0hDUl9HMV9JTzNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdST1VQMV9JTzMgc2NobWl0dCB0cmlnZ2VyIGh5c3RlcmVzaXMgbW9kZSAqLworI2RlZmluZSBUU0NfSU9IQ1JfRzFfSU80X1BvcyAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9IQ1JfRzFfSU80X01zayAgICAgKDB4MVVMIDw8IFRTQ19JT0hDUl9HMV9JTzRfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBUU0NfSU9IQ1JfRzFfSU80ICAgICAgICAgVFNDX0lPSENSX0cxX0lPNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1JPVVAxX0lPNCBzY2htaXR0IHRyaWdnZXIgaHlzdGVyZXNpcyBtb2RlICovCisjZGVmaW5lIFRTQ19JT0hDUl9HMl9JTzFfUG9zICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0hDUl9HMl9JTzFfTXNrICAgICAoMHgxVUwgPDwgVFNDX0lPSENSX0cyX0lPMV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIFRTQ19JT0hDUl9HMl9JTzEgICAgICAgICBUU0NfSU9IQ1JfRzJfSU8xX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDJfSU8xIHNjaG1pdHQgdHJpZ2dlciBoeXN0ZXJlc2lzIG1vZGUgKi8KKyNkZWZpbmUgVFNDX0lPSENSX0cyX0lPMl9Qb3MgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPSENSX0cyX0lPMl9Nc2sgICAgICgweDFVTCA8PCBUU0NfSU9IQ1JfRzJfSU8yX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgVFNDX0lPSENSX0cyX0lPMiAgICAgICAgIFRTQ19JT0hDUl9HMl9JTzJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdST1VQMl9JTzIgc2NobWl0dCB0cmlnZ2VyIGh5c3RlcmVzaXMgbW9kZSAqLworI2RlZmluZSBUU0NfSU9IQ1JfRzJfSU8zX1BvcyAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9IQ1JfRzJfSU8zX01zayAgICAgKDB4MVVMIDw8IFRTQ19JT0hDUl9HMl9JTzNfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBUU0NfSU9IQ1JfRzJfSU8zICAgICAgICAgVFNDX0lPSENSX0cyX0lPM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1JPVVAyX0lPMyBzY2htaXR0IHRyaWdnZXIgaHlzdGVyZXNpcyBtb2RlICovCisjZGVmaW5lIFRTQ19JT0hDUl9HMl9JTzRfUG9zICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0hDUl9HMl9JTzRfTXNrICAgICAoMHgxVUwgPDwgVFNDX0lPSENSX0cyX0lPNF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIFRTQ19JT0hDUl9HMl9JTzQgICAgICAgICBUU0NfSU9IQ1JfRzJfSU80X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDJfSU80IHNjaG1pdHQgdHJpZ2dlciBoeXN0ZXJlc2lzIG1vZGUgKi8KKyNkZWZpbmUgVFNDX0lPSENSX0czX0lPMV9Qb3MgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPSENSX0czX0lPMV9Nc2sgICAgICgweDFVTCA8PCBUU0NfSU9IQ1JfRzNfSU8xX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgVFNDX0lPSENSX0czX0lPMSAgICAgICAgIFRTQ19JT0hDUl9HM19JTzFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdST1VQM19JTzEgc2NobWl0dCB0cmlnZ2VyIGh5c3RlcmVzaXMgbW9kZSAqLworI2RlZmluZSBUU0NfSU9IQ1JfRzNfSU8yX1BvcyAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9IQ1JfRzNfSU8yX01zayAgICAgKDB4MVVMIDw8IFRTQ19JT0hDUl9HM19JTzJfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBUU0NfSU9IQ1JfRzNfSU8yICAgICAgICAgVFNDX0lPSENSX0czX0lPMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1JPVVAzX0lPMiBzY2htaXR0IHRyaWdnZXIgaHlzdGVyZXNpcyBtb2RlICovCisjZGVmaW5lIFRTQ19JT0hDUl9HM19JTzNfUG9zICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0hDUl9HM19JTzNfTXNrICAgICAoMHgxVUwgPDwgVFNDX0lPSENSX0czX0lPM19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIFRTQ19JT0hDUl9HM19JTzMgICAgICAgICBUU0NfSU9IQ1JfRzNfSU8zX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDNfSU8zIHNjaG1pdHQgdHJpZ2dlciBoeXN0ZXJlc2lzIG1vZGUgKi8KKyNkZWZpbmUgVFNDX0lPSENSX0czX0lPNF9Qb3MgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPSENSX0czX0lPNF9Nc2sgICAgICgweDFVTCA8PCBUU0NfSU9IQ1JfRzNfSU80X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgVFNDX0lPSENSX0czX0lPNCAgICAgICAgIFRTQ19JT0hDUl9HM19JTzRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdST1VQM19JTzQgc2NobWl0dCB0cmlnZ2VyIGh5c3RlcmVzaXMgbW9kZSAqLworI2RlZmluZSBUU0NfSU9IQ1JfRzRfSU8xX1BvcyAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9IQ1JfRzRfSU8xX01zayAgICAgKDB4MVVMIDw8IFRTQ19JT0hDUl9HNF9JTzFfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBUU0NfSU9IQ1JfRzRfSU8xICAgICAgICAgVFNDX0lPSENSX0c0X0lPMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1JPVVA0X0lPMSBzY2htaXR0IHRyaWdnZXIgaHlzdGVyZXNpcyBtb2RlICovCisjZGVmaW5lIFRTQ19JT0hDUl9HNF9JTzJfUG9zICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0hDUl9HNF9JTzJfTXNrICAgICAoMHgxVUwgPDwgVFNDX0lPSENSX0c0X0lPMl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIFRTQ19JT0hDUl9HNF9JTzIgICAgICAgICBUU0NfSU9IQ1JfRzRfSU8yX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDRfSU8yIHNjaG1pdHQgdHJpZ2dlciBoeXN0ZXJlc2lzIG1vZGUgKi8KKyNkZWZpbmUgVFNDX0lPSENSX0c0X0lPM19Qb3MgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPSENSX0c0X0lPM19Nc2sgICAgICgweDFVTCA8PCBUU0NfSU9IQ1JfRzRfSU8zX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgVFNDX0lPSENSX0c0X0lPMyAgICAgICAgIFRTQ19JT0hDUl9HNF9JTzNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdST1VQNF9JTzMgc2NobWl0dCB0cmlnZ2VyIGh5c3RlcmVzaXMgbW9kZSAqLworI2RlZmluZSBUU0NfSU9IQ1JfRzRfSU80X1BvcyAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9IQ1JfRzRfSU80X01zayAgICAgKDB4MVVMIDw8IFRTQ19JT0hDUl9HNF9JTzRfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLworI2RlZmluZSBUU0NfSU9IQ1JfRzRfSU80ICAgICAgICAgVFNDX0lPSENSX0c0X0lPNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1JPVVA0X0lPNCBzY2htaXR0IHRyaWdnZXIgaHlzdGVyZXNpcyBtb2RlICovCisjZGVmaW5lIFRTQ19JT0hDUl9HNV9JTzFfUG9zICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0hDUl9HNV9JTzFfTXNrICAgICAoMHgxVUwgPDwgVFNDX0lPSENSX0c1X0lPMV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIFRTQ19JT0hDUl9HNV9JTzEgICAgICAgICBUU0NfSU9IQ1JfRzVfSU8xX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDVfSU8xIHNjaG1pdHQgdHJpZ2dlciBoeXN0ZXJlc2lzIG1vZGUgKi8KKyNkZWZpbmUgVFNDX0lPSENSX0c1X0lPMl9Qb3MgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPSENSX0c1X0lPMl9Nc2sgICAgICgweDFVTCA8PCBUU0NfSU9IQ1JfRzVfSU8yX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgVFNDX0lPSENSX0c1X0lPMiAgICAgICAgIFRTQ19JT0hDUl9HNV9JTzJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdST1VQNV9JTzIgc2NobWl0dCB0cmlnZ2VyIGh5c3RlcmVzaXMgbW9kZSAqLworI2RlZmluZSBUU0NfSU9IQ1JfRzVfSU8zX1BvcyAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9IQ1JfRzVfSU8zX01zayAgICAgKDB4MVVMIDw8IFRTQ19JT0hDUl9HNV9JTzNfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLworI2RlZmluZSBUU0NfSU9IQ1JfRzVfSU8zICAgICAgICAgVFNDX0lPSENSX0c1X0lPM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1JPVVA1X0lPMyBzY2htaXR0IHRyaWdnZXIgaHlzdGVyZXNpcyBtb2RlICovCisjZGVmaW5lIFRTQ19JT0hDUl9HNV9JTzRfUG9zICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0hDUl9HNV9JTzRfTXNrICAgICAoMHgxVUwgPDwgVFNDX0lPSENSX0c1X0lPNF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovCisjZGVmaW5lIFRTQ19JT0hDUl9HNV9JTzQgICAgICAgICBUU0NfSU9IQ1JfRzVfSU80X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDVfSU80IHNjaG1pdHQgdHJpZ2dlciBoeXN0ZXJlc2lzIG1vZGUgKi8KKyNkZWZpbmUgVFNDX0lPSENSX0c2X0lPMV9Qb3MgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPSENSX0c2X0lPMV9Nc2sgICAgICgweDFVTCA8PCBUU0NfSU9IQ1JfRzZfSU8xX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgVFNDX0lPSENSX0c2X0lPMSAgICAgICAgIFRTQ19JT0hDUl9HNl9JTzFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdST1VQNl9JTzEgc2NobWl0dCB0cmlnZ2VyIGh5c3RlcmVzaXMgbW9kZSAqLworI2RlZmluZSBUU0NfSU9IQ1JfRzZfSU8yX1BvcyAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9IQ1JfRzZfSU8yX01zayAgICAgKDB4MVVMIDw8IFRTQ19JT0hDUl9HNl9JTzJfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLworI2RlZmluZSBUU0NfSU9IQ1JfRzZfSU8yICAgICAgICAgVFNDX0lPSENSX0c2X0lPMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1JPVVA2X0lPMiBzY2htaXR0IHRyaWdnZXIgaHlzdGVyZXNpcyBtb2RlICovCisjZGVmaW5lIFRTQ19JT0hDUl9HNl9JTzNfUG9zICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0hDUl9HNl9JTzNfTXNrICAgICAoMHgxVUwgPDwgVFNDX0lPSENSX0c2X0lPM19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovCisjZGVmaW5lIFRTQ19JT0hDUl9HNl9JTzMgICAgICAgICBUU0NfSU9IQ1JfRzZfSU8zX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDZfSU8zIHNjaG1pdHQgdHJpZ2dlciBoeXN0ZXJlc2lzIG1vZGUgKi8KKyNkZWZpbmUgVFNDX0lPSENSX0c2X0lPNF9Qb3MgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPSENSX0c2X0lPNF9Nc2sgICAgICgweDFVTCA8PCBUU0NfSU9IQ1JfRzZfSU80X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8KKyNkZWZpbmUgVFNDX0lPSENSX0c2X0lPNCAgICAgICAgIFRTQ19JT0hDUl9HNl9JTzRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdST1VQNl9JTzQgc2NobWl0dCB0cmlnZ2VyIGh5c3RlcmVzaXMgbW9kZSAqLworI2RlZmluZSBUU0NfSU9IQ1JfRzdfSU8xX1BvcyAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9IQ1JfRzdfSU8xX01zayAgICAgKDB4MVVMIDw8IFRTQ19JT0hDUl9HN19JTzFfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLworI2RlZmluZSBUU0NfSU9IQ1JfRzdfSU8xICAgICAgICAgVFNDX0lPSENSX0c3X0lPMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1JPVVA3X0lPMSBzY2htaXR0IHRyaWdnZXIgaHlzdGVyZXNpcyBtb2RlICovCisjZGVmaW5lIFRTQ19JT0hDUl9HN19JTzJfUG9zICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0hDUl9HN19JTzJfTXNrICAgICAoMHgxVUwgPDwgVFNDX0lPSENSX0c3X0lPMl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAyMDAwMDAwICovCisjZGVmaW5lIFRTQ19JT0hDUl9HN19JTzIgICAgICAgICBUU0NfSU9IQ1JfRzdfSU8yX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDdfSU8yIHNjaG1pdHQgdHJpZ2dlciBoeXN0ZXJlc2lzIG1vZGUgKi8KKyNkZWZpbmUgVFNDX0lPSENSX0c3X0lPM19Qb3MgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPSENSX0c3X0lPM19Nc2sgICAgICgweDFVTCA8PCBUU0NfSU9IQ1JfRzdfSU8zX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8KKyNkZWZpbmUgVFNDX0lPSENSX0c3X0lPMyAgICAgICAgIFRTQ19JT0hDUl9HN19JTzNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdST1VQN19JTzMgc2NobWl0dCB0cmlnZ2VyIGh5c3RlcmVzaXMgbW9kZSAqLworI2RlZmluZSBUU0NfSU9IQ1JfRzdfSU80X1BvcyAgICAgKDI3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9IQ1JfRzdfSU80X01zayAgICAgKDB4MVVMIDw8IFRTQ19JT0hDUl9HN19JTzRfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwODAwMDAwMCAqLworI2RlZmluZSBUU0NfSU9IQ1JfRzdfSU80ICAgICAgICAgVFNDX0lPSENSX0c3X0lPNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1JPVVA3X0lPNCBzY2htaXR0IHRyaWdnZXIgaHlzdGVyZXNpcyBtb2RlICovCisKKy8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVFNDX0lPQVNDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzFfSU8xX1BvcyAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzFfSU8xX01zayAgICAoMHgxVUwgPDwgVFNDX0lPQVNDUl9HMV9JTzFfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzFfSU8xICAgICAgICBUU0NfSU9BU0NSX0cxX0lPMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDFfSU8xIGFuYWxvZyBzd2l0Y2ggZW5hYmxlICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzFfSU8yX1BvcyAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzFfSU8yX01zayAgICAoMHgxVUwgPDwgVFNDX0lPQVNDUl9HMV9JTzJfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzFfSU8yICAgICAgICBUU0NfSU9BU0NSX0cxX0lPMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDFfSU8yIGFuYWxvZyBzd2l0Y2ggZW5hYmxlICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzFfSU8zX1BvcyAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzFfSU8zX01zayAgICAoMHgxVUwgPDwgVFNDX0lPQVNDUl9HMV9JTzNfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzFfSU8zICAgICAgICBUU0NfSU9BU0NSX0cxX0lPM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDFfSU8zIGFuYWxvZyBzd2l0Y2ggZW5hYmxlICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzFfSU80X1BvcyAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzFfSU80X01zayAgICAoMHgxVUwgPDwgVFNDX0lPQVNDUl9HMV9JTzRfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzFfSU80ICAgICAgICBUU0NfSU9BU0NSX0cxX0lPNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDFfSU80IGFuYWxvZyBzd2l0Y2ggZW5hYmxlICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzJfSU8xX1BvcyAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzJfSU8xX01zayAgICAoMHgxVUwgPDwgVFNDX0lPQVNDUl9HMl9JTzFfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzJfSU8xICAgICAgICBUU0NfSU9BU0NSX0cyX0lPMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDJfSU8xIGFuYWxvZyBzd2l0Y2ggZW5hYmxlICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzJfSU8yX1BvcyAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzJfSU8yX01zayAgICAoMHgxVUwgPDwgVFNDX0lPQVNDUl9HMl9JTzJfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzJfSU8yICAgICAgICBUU0NfSU9BU0NSX0cyX0lPMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDJfSU8yIGFuYWxvZyBzd2l0Y2ggZW5hYmxlICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzJfSU8zX1BvcyAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzJfSU8zX01zayAgICAoMHgxVUwgPDwgVFNDX0lPQVNDUl9HMl9JTzNfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzJfSU8zICAgICAgICBUU0NfSU9BU0NSX0cyX0lPM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDJfSU8zIGFuYWxvZyBzd2l0Y2ggZW5hYmxlICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzJfSU80X1BvcyAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzJfSU80X01zayAgICAoMHgxVUwgPDwgVFNDX0lPQVNDUl9HMl9JTzRfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzJfSU80ICAgICAgICBUU0NfSU9BU0NSX0cyX0lPNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDJfSU80IGFuYWxvZyBzd2l0Y2ggZW5hYmxlICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzNfSU8xX1BvcyAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzNfSU8xX01zayAgICAoMHgxVUwgPDwgVFNDX0lPQVNDUl9HM19JTzFfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzNfSU8xICAgICAgICBUU0NfSU9BU0NSX0czX0lPMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDNfSU8xIGFuYWxvZyBzd2l0Y2ggZW5hYmxlICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzNfSU8yX1BvcyAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzNfSU8yX01zayAgICAoMHgxVUwgPDwgVFNDX0lPQVNDUl9HM19JTzJfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzNfSU8yICAgICAgICBUU0NfSU9BU0NSX0czX0lPMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDNfSU8yIGFuYWxvZyBzd2l0Y2ggZW5hYmxlICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzNfSU8zX1BvcyAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzNfSU8zX01zayAgICAoMHgxVUwgPDwgVFNDX0lPQVNDUl9HM19JTzNfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzNfSU8zICAgICAgICBUU0NfSU9BU0NSX0czX0lPM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDNfSU8zIGFuYWxvZyBzd2l0Y2ggZW5hYmxlICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzNfSU80X1BvcyAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzNfSU80X01zayAgICAoMHgxVUwgPDwgVFNDX0lPQVNDUl9HM19JTzRfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzNfSU80ICAgICAgICBUU0NfSU9BU0NSX0czX0lPNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDNfSU80IGFuYWxvZyBzd2l0Y2ggZW5hYmxlICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzRfSU8xX1BvcyAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzRfSU8xX01zayAgICAoMHgxVUwgPDwgVFNDX0lPQVNDUl9HNF9JTzFfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzRfSU8xICAgICAgICBUU0NfSU9BU0NSX0c0X0lPMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDRfSU8xIGFuYWxvZyBzd2l0Y2ggZW5hYmxlICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzRfSU8yX1BvcyAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzRfSU8yX01zayAgICAoMHgxVUwgPDwgVFNDX0lPQVNDUl9HNF9JTzJfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzRfSU8yICAgICAgICBUU0NfSU9BU0NSX0c0X0lPMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDRfSU8yIGFuYWxvZyBzd2l0Y2ggZW5hYmxlICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzRfSU8zX1BvcyAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzRfSU8zX01zayAgICAoMHgxVUwgPDwgVFNDX0lPQVNDUl9HNF9JTzNfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzRfSU8zICAgICAgICBUU0NfSU9BU0NSX0c0X0lPM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDRfSU8zIGFuYWxvZyBzd2l0Y2ggZW5hYmxlICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzRfSU80X1BvcyAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzRfSU80X01zayAgICAoMHgxVUwgPDwgVFNDX0lPQVNDUl9HNF9JTzRfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzRfSU80ICAgICAgICBUU0NfSU9BU0NSX0c0X0lPNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDRfSU80IGFuYWxvZyBzd2l0Y2ggZW5hYmxlICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzVfSU8xX1BvcyAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzVfSU8xX01zayAgICAoMHgxVUwgPDwgVFNDX0lPQVNDUl9HNV9JTzFfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzVfSU8xICAgICAgICBUU0NfSU9BU0NSX0c1X0lPMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDVfSU8xIGFuYWxvZyBzd2l0Y2ggZW5hYmxlICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzVfSU8yX1BvcyAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzVfSU8yX01zayAgICAoMHgxVUwgPDwgVFNDX0lPQVNDUl9HNV9JTzJfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzVfSU8yICAgICAgICBUU0NfSU9BU0NSX0c1X0lPMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDVfSU8yIGFuYWxvZyBzd2l0Y2ggZW5hYmxlICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzVfSU8zX1BvcyAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzVfSU8zX01zayAgICAoMHgxVUwgPDwgVFNDX0lPQVNDUl9HNV9JTzNfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzVfSU8zICAgICAgICBUU0NfSU9BU0NSX0c1X0lPM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDVfSU8zIGFuYWxvZyBzd2l0Y2ggZW5hYmxlICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzVfSU80X1BvcyAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzVfSU80X01zayAgICAoMHgxVUwgPDwgVFNDX0lPQVNDUl9HNV9JTzRfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzVfSU80ICAgICAgICBUU0NfSU9BU0NSX0c1X0lPNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDVfSU80IGFuYWxvZyBzd2l0Y2ggZW5hYmxlICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzZfSU8xX1BvcyAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzZfSU8xX01zayAgICAoMHgxVUwgPDwgVFNDX0lPQVNDUl9HNl9JTzFfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzZfSU8xICAgICAgICBUU0NfSU9BU0NSX0c2X0lPMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDZfSU8xIGFuYWxvZyBzd2l0Y2ggZW5hYmxlICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzZfSU8yX1BvcyAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzZfSU8yX01zayAgICAoMHgxVUwgPDwgVFNDX0lPQVNDUl9HNl9JTzJfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzZfSU8yICAgICAgICBUU0NfSU9BU0NSX0c2X0lPMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDZfSU8yIGFuYWxvZyBzd2l0Y2ggZW5hYmxlICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzZfSU8zX1BvcyAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzZfSU8zX01zayAgICAoMHgxVUwgPDwgVFNDX0lPQVNDUl9HNl9JTzNfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzZfSU8zICAgICAgICBUU0NfSU9BU0NSX0c2X0lPM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDZfSU8zIGFuYWxvZyBzd2l0Y2ggZW5hYmxlICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzZfSU80X1BvcyAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzZfSU80X01zayAgICAoMHgxVUwgPDwgVFNDX0lPQVNDUl9HNl9JTzRfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwODAwMDAwICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzZfSU80ICAgICAgICBUU0NfSU9BU0NSX0c2X0lPNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDZfSU80IGFuYWxvZyBzd2l0Y2ggZW5hYmxlICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzdfSU8xX1BvcyAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzdfSU8xX01zayAgICAoMHgxVUwgPDwgVFNDX0lPQVNDUl9HN19JTzFfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAxMDAwMDAwICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzdfSU8xICAgICAgICBUU0NfSU9BU0NSX0c3X0lPMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDdfSU8xIGFuYWxvZyBzd2l0Y2ggZW5hYmxlICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzdfSU8yX1BvcyAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzdfSU8yX01zayAgICAoMHgxVUwgPDwgVFNDX0lPQVNDUl9HN19JTzJfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAyMDAwMDAwICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzdfSU8yICAgICAgICBUU0NfSU9BU0NSX0c3X0lPMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDdfSU8yIGFuYWxvZyBzd2l0Y2ggZW5hYmxlICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzdfSU8zX1BvcyAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzdfSU8zX01zayAgICAoMHgxVUwgPDwgVFNDX0lPQVNDUl9HN19JTzNfUG9zKSAgICAgICAgICAgICAgLyohPCAweDA0MDAwMDAwICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzdfSU8zICAgICAgICBUU0NfSU9BU0NSX0c3X0lPM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDdfSU8zIGFuYWxvZyBzd2l0Y2ggZW5hYmxlICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzdfSU80X1BvcyAgICAoMjdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzdfSU80X01zayAgICAoMHgxVUwgPDwgVFNDX0lPQVNDUl9HN19JTzRfUG9zKSAgICAgICAgICAgICAgLyohPCAweDA4MDAwMDAwICovCisjZGVmaW5lIFRTQ19JT0FTQ1JfRzdfSU80ICAgICAgICBUU0NfSU9BU0NSX0c3X0lPNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDdfSU80IGFuYWxvZyBzd2l0Y2ggZW5hYmxlICovCisKKy8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVFNDX0lPU0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFRTQ19JT1NDUl9HMV9JTzFfUG9zICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT1NDUl9HMV9JTzFfTXNrICAgICAoMHgxVUwgPDwgVFNDX0lPU0NSX0cxX0lPMV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFRTQ19JT1NDUl9HMV9JTzEgICAgICAgICBUU0NfSU9TQ1JfRzFfSU8xX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDFfSU8xIHNhbXBsaW5nIG1vZGUgKi8KKyNkZWZpbmUgVFNDX0lPU0NSX0cxX0lPMl9Qb3MgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPU0NSX0cxX0lPMl9Nc2sgICAgICgweDFVTCA8PCBUU0NfSU9TQ1JfRzFfSU8yX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgVFNDX0lPU0NSX0cxX0lPMiAgICAgICAgIFRTQ19JT1NDUl9HMV9JTzJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdST1VQMV9JTzIgc2FtcGxpbmcgbW9kZSAqLworI2RlZmluZSBUU0NfSU9TQ1JfRzFfSU8zX1BvcyAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9TQ1JfRzFfSU8zX01zayAgICAgKDB4MVVMIDw8IFRTQ19JT1NDUl9HMV9JTzNfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBUU0NfSU9TQ1JfRzFfSU8zICAgICAgICAgVFNDX0lPU0NSX0cxX0lPM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1JPVVAxX0lPMyBzYW1wbGluZyBtb2RlICovCisjZGVmaW5lIFRTQ19JT1NDUl9HMV9JTzRfUG9zICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT1NDUl9HMV9JTzRfTXNrICAgICAoMHgxVUwgPDwgVFNDX0lPU0NSX0cxX0lPNF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIFRTQ19JT1NDUl9HMV9JTzQgICAgICAgICBUU0NfSU9TQ1JfRzFfSU80X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDFfSU80IHNhbXBsaW5nIG1vZGUgKi8KKyNkZWZpbmUgVFNDX0lPU0NSX0cyX0lPMV9Qb3MgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPU0NSX0cyX0lPMV9Nc2sgICAgICgweDFVTCA8PCBUU0NfSU9TQ1JfRzJfSU8xX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgVFNDX0lPU0NSX0cyX0lPMSAgICAgICAgIFRTQ19JT1NDUl9HMl9JTzFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdST1VQMl9JTzEgc2FtcGxpbmcgbW9kZSAqLworI2RlZmluZSBUU0NfSU9TQ1JfRzJfSU8yX1BvcyAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9TQ1JfRzJfSU8yX01zayAgICAgKDB4MVVMIDw8IFRTQ19JT1NDUl9HMl9JTzJfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBUU0NfSU9TQ1JfRzJfSU8yICAgICAgICAgVFNDX0lPU0NSX0cyX0lPMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1JPVVAyX0lPMiBzYW1wbGluZyBtb2RlICovCisjZGVmaW5lIFRTQ19JT1NDUl9HMl9JTzNfUG9zICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT1NDUl9HMl9JTzNfTXNrICAgICAoMHgxVUwgPDwgVFNDX0lPU0NSX0cyX0lPM19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIFRTQ19JT1NDUl9HMl9JTzMgICAgICAgICBUU0NfSU9TQ1JfRzJfSU8zX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDJfSU8zIHNhbXBsaW5nIG1vZGUgKi8KKyNkZWZpbmUgVFNDX0lPU0NSX0cyX0lPNF9Qb3MgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPU0NSX0cyX0lPNF9Nc2sgICAgICgweDFVTCA8PCBUU0NfSU9TQ1JfRzJfSU80X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgVFNDX0lPU0NSX0cyX0lPNCAgICAgICAgIFRTQ19JT1NDUl9HMl9JTzRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdST1VQMl9JTzQgc2FtcGxpbmcgbW9kZSAqLworI2RlZmluZSBUU0NfSU9TQ1JfRzNfSU8xX1BvcyAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9TQ1JfRzNfSU8xX01zayAgICAgKDB4MVVMIDw8IFRTQ19JT1NDUl9HM19JTzFfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBUU0NfSU9TQ1JfRzNfSU8xICAgICAgICAgVFNDX0lPU0NSX0czX0lPMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1JPVVAzX0lPMSBzYW1wbGluZyBtb2RlICovCisjZGVmaW5lIFRTQ19JT1NDUl9HM19JTzJfUG9zICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT1NDUl9HM19JTzJfTXNrICAgICAoMHgxVUwgPDwgVFNDX0lPU0NSX0czX0lPMl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIFRTQ19JT1NDUl9HM19JTzIgICAgICAgICBUU0NfSU9TQ1JfRzNfSU8yX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDNfSU8yIHNhbXBsaW5nIG1vZGUgKi8KKyNkZWZpbmUgVFNDX0lPU0NSX0czX0lPM19Qb3MgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPU0NSX0czX0lPM19Nc2sgICAgICgweDFVTCA8PCBUU0NfSU9TQ1JfRzNfSU8zX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgVFNDX0lPU0NSX0czX0lPMyAgICAgICAgIFRTQ19JT1NDUl9HM19JTzNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdST1VQM19JTzMgc2FtcGxpbmcgbW9kZSAqLworI2RlZmluZSBUU0NfSU9TQ1JfRzNfSU80X1BvcyAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9TQ1JfRzNfSU80X01zayAgICAgKDB4MVVMIDw8IFRTQ19JT1NDUl9HM19JTzRfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLworI2RlZmluZSBUU0NfSU9TQ1JfRzNfSU80ICAgICAgICAgVFNDX0lPU0NSX0czX0lPNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1JPVVAzX0lPNCBzYW1wbGluZyBtb2RlICovCisjZGVmaW5lIFRTQ19JT1NDUl9HNF9JTzFfUG9zICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT1NDUl9HNF9JTzFfTXNrICAgICAoMHgxVUwgPDwgVFNDX0lPU0NSX0c0X0lPMV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIFRTQ19JT1NDUl9HNF9JTzEgICAgICAgICBUU0NfSU9TQ1JfRzRfSU8xX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDRfSU8xIHNhbXBsaW5nIG1vZGUgKi8KKyNkZWZpbmUgVFNDX0lPU0NSX0c0X0lPMl9Qb3MgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPU0NSX0c0X0lPMl9Nc2sgICAgICgweDFVTCA8PCBUU0NfSU9TQ1JfRzRfSU8yX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgVFNDX0lPU0NSX0c0X0lPMiAgICAgICAgIFRTQ19JT1NDUl9HNF9JTzJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdST1VQNF9JTzIgc2FtcGxpbmcgbW9kZSAqLworI2RlZmluZSBUU0NfSU9TQ1JfRzRfSU8zX1BvcyAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9TQ1JfRzRfSU8zX01zayAgICAgKDB4MVVMIDw8IFRTQ19JT1NDUl9HNF9JTzNfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLworI2RlZmluZSBUU0NfSU9TQ1JfRzRfSU8zICAgICAgICAgVFNDX0lPU0NSX0c0X0lPM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1JPVVA0X0lPMyBzYW1wbGluZyBtb2RlICovCisjZGVmaW5lIFRTQ19JT1NDUl9HNF9JTzRfUG9zICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT1NDUl9HNF9JTzRfTXNrICAgICAoMHgxVUwgPDwgVFNDX0lPU0NSX0c0X0lPNF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovCisjZGVmaW5lIFRTQ19JT1NDUl9HNF9JTzQgICAgICAgICBUU0NfSU9TQ1JfRzRfSU80X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDRfSU80IHNhbXBsaW5nIG1vZGUgKi8KKyNkZWZpbmUgVFNDX0lPU0NSX0c1X0lPMV9Qb3MgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPU0NSX0c1X0lPMV9Nc2sgICAgICgweDFVTCA8PCBUU0NfSU9TQ1JfRzVfSU8xX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgVFNDX0lPU0NSX0c1X0lPMSAgICAgICAgIFRTQ19JT1NDUl9HNV9JTzFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdST1VQNV9JTzEgc2FtcGxpbmcgbW9kZSAqLworI2RlZmluZSBUU0NfSU9TQ1JfRzVfSU8yX1BvcyAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9TQ1JfRzVfSU8yX01zayAgICAgKDB4MVVMIDw8IFRTQ19JT1NDUl9HNV9JTzJfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLworI2RlZmluZSBUU0NfSU9TQ1JfRzVfSU8yICAgICAgICAgVFNDX0lPU0NSX0c1X0lPMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1JPVVA1X0lPMiBzYW1wbGluZyBtb2RlICovCisjZGVmaW5lIFRTQ19JT1NDUl9HNV9JTzNfUG9zICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT1NDUl9HNV9JTzNfTXNrICAgICAoMHgxVUwgPDwgVFNDX0lPU0NSX0c1X0lPM19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovCisjZGVmaW5lIFRTQ19JT1NDUl9HNV9JTzMgICAgICAgICBUU0NfSU9TQ1JfRzVfSU8zX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDVfSU8zIHNhbXBsaW5nIG1vZGUgKi8KKyNkZWZpbmUgVFNDX0lPU0NSX0c1X0lPNF9Qb3MgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPU0NSX0c1X0lPNF9Nc2sgICAgICgweDFVTCA8PCBUU0NfSU9TQ1JfRzVfSU80X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgVFNDX0lPU0NSX0c1X0lPNCAgICAgICAgIFRTQ19JT1NDUl9HNV9JTzRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdST1VQNV9JTzQgc2FtcGxpbmcgbW9kZSAqLworI2RlZmluZSBUU0NfSU9TQ1JfRzZfSU8xX1BvcyAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9TQ1JfRzZfSU8xX01zayAgICAgKDB4MVVMIDw8IFRTQ19JT1NDUl9HNl9JTzFfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLworI2RlZmluZSBUU0NfSU9TQ1JfRzZfSU8xICAgICAgICAgVFNDX0lPU0NSX0c2X0lPMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1JPVVA2X0lPMSBzYW1wbGluZyBtb2RlICovCisjZGVmaW5lIFRTQ19JT1NDUl9HNl9JTzJfUG9zICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT1NDUl9HNl9JTzJfTXNrICAgICAoMHgxVUwgPDwgVFNDX0lPU0NSX0c2X0lPMl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovCisjZGVmaW5lIFRTQ19JT1NDUl9HNl9JTzIgICAgICAgICBUU0NfSU9TQ1JfRzZfSU8yX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDZfSU8yIHNhbXBsaW5nIG1vZGUgKi8KKyNkZWZpbmUgVFNDX0lPU0NSX0c2X0lPM19Qb3MgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPU0NSX0c2X0lPM19Nc2sgICAgICgweDFVTCA8PCBUU0NfSU9TQ1JfRzZfSU8zX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8KKyNkZWZpbmUgVFNDX0lPU0NSX0c2X0lPMyAgICAgICAgIFRTQ19JT1NDUl9HNl9JTzNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdST1VQNl9JTzMgc2FtcGxpbmcgbW9kZSAqLworI2RlZmluZSBUU0NfSU9TQ1JfRzZfSU80X1BvcyAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9TQ1JfRzZfSU80X01zayAgICAgKDB4MVVMIDw8IFRTQ19JT1NDUl9HNl9JTzRfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLworI2RlZmluZSBUU0NfSU9TQ1JfRzZfSU80ICAgICAgICAgVFNDX0lPU0NSX0c2X0lPNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1JPVVA2X0lPNCBzYW1wbGluZyBtb2RlICovCisjZGVmaW5lIFRTQ19JT1NDUl9HN19JTzFfUG9zICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT1NDUl9HN19JTzFfTXNrICAgICAoMHgxVUwgPDwgVFNDX0lPU0NSX0c3X0lPMV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAxMDAwMDAwICovCisjZGVmaW5lIFRTQ19JT1NDUl9HN19JTzEgICAgICAgICBUU0NfSU9TQ1JfRzdfSU8xX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDdfSU8xIHNhbXBsaW5nIG1vZGUgKi8KKyNkZWZpbmUgVFNDX0lPU0NSX0c3X0lPMl9Qb3MgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPU0NSX0c3X0lPMl9Nc2sgICAgICgweDFVTCA8PCBUU0NfSU9TQ1JfRzdfSU8yX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8KKyNkZWZpbmUgVFNDX0lPU0NSX0c3X0lPMiAgICAgICAgIFRTQ19JT1NDUl9HN19JTzJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdST1VQN19JTzIgc2FtcGxpbmcgbW9kZSAqLworI2RlZmluZSBUU0NfSU9TQ1JfRzdfSU8zX1BvcyAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9TQ1JfRzdfSU8zX01zayAgICAgKDB4MVVMIDw8IFRTQ19JT1NDUl9HN19JTzNfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLworI2RlZmluZSBUU0NfSU9TQ1JfRzdfSU8zICAgICAgICAgVFNDX0lPU0NSX0c3X0lPM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1JPVVA3X0lPMyBzYW1wbGluZyBtb2RlICovCisjZGVmaW5lIFRTQ19JT1NDUl9HN19JTzRfUG9zICAgICAoMjdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT1NDUl9HN19JTzRfTXNrICAgICAoMHgxVUwgPDwgVFNDX0lPU0NSX0c3X0lPNF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDA4MDAwMDAwICovCisjZGVmaW5lIFRTQ19JT1NDUl9HN19JTzQgICAgICAgICBUU0NfSU9TQ1JfRzdfSU80X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDdfSU80IHNhbXBsaW5nIG1vZGUgKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUU0NfSU9DQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgVFNDX0lPQ0NSX0cxX0lPMV9Qb3MgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPQ0NSX0cxX0lPMV9Nc2sgICAgICgweDFVTCA8PCBUU0NfSU9DQ1JfRzFfSU8xX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgVFNDX0lPQ0NSX0cxX0lPMSAgICAgICAgIFRTQ19JT0NDUl9HMV9JTzFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdST1VQMV9JTzEgY2hhbm5lbCBtb2RlICovCisjZGVmaW5lIFRTQ19JT0NDUl9HMV9JTzJfUG9zICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0NDUl9HMV9JTzJfTXNrICAgICAoMHgxVUwgPDwgVFNDX0lPQ0NSX0cxX0lPMl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFRTQ19JT0NDUl9HMV9JTzIgICAgICAgICBUU0NfSU9DQ1JfRzFfSU8yX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDFfSU8yIGNoYW5uZWwgbW9kZSAqLworI2RlZmluZSBUU0NfSU9DQ1JfRzFfSU8zX1BvcyAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9DQ1JfRzFfSU8zX01zayAgICAgKDB4MVVMIDw8IFRTQ19JT0NDUl9HMV9JTzNfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBUU0NfSU9DQ1JfRzFfSU8zICAgICAgICAgVFNDX0lPQ0NSX0cxX0lPM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1JPVVAxX0lPMyBjaGFubmVsIG1vZGUgKi8KKyNkZWZpbmUgVFNDX0lPQ0NSX0cxX0lPNF9Qb3MgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPQ0NSX0cxX0lPNF9Nc2sgICAgICgweDFVTCA8PCBUU0NfSU9DQ1JfRzFfSU80X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgVFNDX0lPQ0NSX0cxX0lPNCAgICAgICAgIFRTQ19JT0NDUl9HMV9JTzRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdST1VQMV9JTzQgY2hhbm5lbCBtb2RlICovCisjZGVmaW5lIFRTQ19JT0NDUl9HMl9JTzFfUG9zICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0NDUl9HMl9JTzFfTXNrICAgICAoMHgxVUwgPDwgVFNDX0lPQ0NSX0cyX0lPMV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIFRTQ19JT0NDUl9HMl9JTzEgICAgICAgICBUU0NfSU9DQ1JfRzJfSU8xX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDJfSU8xIGNoYW5uZWwgbW9kZSAqLworI2RlZmluZSBUU0NfSU9DQ1JfRzJfSU8yX1BvcyAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9DQ1JfRzJfSU8yX01zayAgICAgKDB4MVVMIDw8IFRTQ19JT0NDUl9HMl9JTzJfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBUU0NfSU9DQ1JfRzJfSU8yICAgICAgICAgVFNDX0lPQ0NSX0cyX0lPMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1JPVVAyX0lPMiBjaGFubmVsIG1vZGUgKi8KKyNkZWZpbmUgVFNDX0lPQ0NSX0cyX0lPM19Qb3MgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPQ0NSX0cyX0lPM19Nc2sgICAgICgweDFVTCA8PCBUU0NfSU9DQ1JfRzJfSU8zX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgVFNDX0lPQ0NSX0cyX0lPMyAgICAgICAgIFRTQ19JT0NDUl9HMl9JTzNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdST1VQMl9JTzMgY2hhbm5lbCBtb2RlICovCisjZGVmaW5lIFRTQ19JT0NDUl9HMl9JTzRfUG9zICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0NDUl9HMl9JTzRfTXNrICAgICAoMHgxVUwgPDwgVFNDX0lPQ0NSX0cyX0lPNF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIFRTQ19JT0NDUl9HMl9JTzQgICAgICAgICBUU0NfSU9DQ1JfRzJfSU80X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDJfSU80IGNoYW5uZWwgbW9kZSAqLworI2RlZmluZSBUU0NfSU9DQ1JfRzNfSU8xX1BvcyAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9DQ1JfRzNfSU8xX01zayAgICAgKDB4MVVMIDw8IFRTQ19JT0NDUl9HM19JTzFfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBUU0NfSU9DQ1JfRzNfSU8xICAgICAgICAgVFNDX0lPQ0NSX0czX0lPMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1JPVVAzX0lPMSBjaGFubmVsIG1vZGUgKi8KKyNkZWZpbmUgVFNDX0lPQ0NSX0czX0lPMl9Qb3MgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPQ0NSX0czX0lPMl9Nc2sgICAgICgweDFVTCA8PCBUU0NfSU9DQ1JfRzNfSU8yX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgVFNDX0lPQ0NSX0czX0lPMiAgICAgICAgIFRTQ19JT0NDUl9HM19JTzJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdST1VQM19JTzIgY2hhbm5lbCBtb2RlICovCisjZGVmaW5lIFRTQ19JT0NDUl9HM19JTzNfUG9zICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0NDUl9HM19JTzNfTXNrICAgICAoMHgxVUwgPDwgVFNDX0lPQ0NSX0czX0lPM19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIFRTQ19JT0NDUl9HM19JTzMgICAgICAgICBUU0NfSU9DQ1JfRzNfSU8zX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDNfSU8zIGNoYW5uZWwgbW9kZSAqLworI2RlZmluZSBUU0NfSU9DQ1JfRzNfSU80X1BvcyAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9DQ1JfRzNfSU80X01zayAgICAgKDB4MVVMIDw8IFRTQ19JT0NDUl9HM19JTzRfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLworI2RlZmluZSBUU0NfSU9DQ1JfRzNfSU80ICAgICAgICAgVFNDX0lPQ0NSX0czX0lPNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1JPVVAzX0lPNCBjaGFubmVsIG1vZGUgKi8KKyNkZWZpbmUgVFNDX0lPQ0NSX0c0X0lPMV9Qb3MgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPQ0NSX0c0X0lPMV9Nc2sgICAgICgweDFVTCA8PCBUU0NfSU9DQ1JfRzRfSU8xX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgVFNDX0lPQ0NSX0c0X0lPMSAgICAgICAgIFRTQ19JT0NDUl9HNF9JTzFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdST1VQNF9JTzEgY2hhbm5lbCBtb2RlICovCisjZGVmaW5lIFRTQ19JT0NDUl9HNF9JTzJfUG9zICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0NDUl9HNF9JTzJfTXNrICAgICAoMHgxVUwgPDwgVFNDX0lPQ0NSX0c0X0lPMl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIFRTQ19JT0NDUl9HNF9JTzIgICAgICAgICBUU0NfSU9DQ1JfRzRfSU8yX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDRfSU8yIGNoYW5uZWwgbW9kZSAqLworI2RlZmluZSBUU0NfSU9DQ1JfRzRfSU8zX1BvcyAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9DQ1JfRzRfSU8zX01zayAgICAgKDB4MVVMIDw8IFRTQ19JT0NDUl9HNF9JTzNfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLworI2RlZmluZSBUU0NfSU9DQ1JfRzRfSU8zICAgICAgICAgVFNDX0lPQ0NSX0c0X0lPM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1JPVVA0X0lPMyBjaGFubmVsIG1vZGUgKi8KKyNkZWZpbmUgVFNDX0lPQ0NSX0c0X0lPNF9Qb3MgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPQ0NSX0c0X0lPNF9Nc2sgICAgICgweDFVTCA8PCBUU0NfSU9DQ1JfRzRfSU80X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgVFNDX0lPQ0NSX0c0X0lPNCAgICAgICAgIFRTQ19JT0NDUl9HNF9JTzRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdST1VQNF9JTzQgY2hhbm5lbCBtb2RlICovCisjZGVmaW5lIFRTQ19JT0NDUl9HNV9JTzFfUG9zICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0NDUl9HNV9JTzFfTXNrICAgICAoMHgxVUwgPDwgVFNDX0lPQ0NSX0c1X0lPMV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIFRTQ19JT0NDUl9HNV9JTzEgICAgICAgICBUU0NfSU9DQ1JfRzVfSU8xX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDVfSU8xIGNoYW5uZWwgbW9kZSAqLworI2RlZmluZSBUU0NfSU9DQ1JfRzVfSU8yX1BvcyAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9DQ1JfRzVfSU8yX01zayAgICAgKDB4MVVMIDw8IFRTQ19JT0NDUl9HNV9JTzJfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLworI2RlZmluZSBUU0NfSU9DQ1JfRzVfSU8yICAgICAgICAgVFNDX0lPQ0NSX0c1X0lPMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1JPVVA1X0lPMiBjaGFubmVsIG1vZGUgKi8KKyNkZWZpbmUgVFNDX0lPQ0NSX0c1X0lPM19Qb3MgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPQ0NSX0c1X0lPM19Nc2sgICAgICgweDFVTCA8PCBUU0NfSU9DQ1JfRzVfSU8zX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgVFNDX0lPQ0NSX0c1X0lPMyAgICAgICAgIFRTQ19JT0NDUl9HNV9JTzNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdST1VQNV9JTzMgY2hhbm5lbCBtb2RlICovCisjZGVmaW5lIFRTQ19JT0NDUl9HNV9JTzRfUG9zICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0NDUl9HNV9JTzRfTXNrICAgICAoMHgxVUwgPDwgVFNDX0lPQ0NSX0c1X0lPNF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovCisjZGVmaW5lIFRTQ19JT0NDUl9HNV9JTzQgICAgICAgICBUU0NfSU9DQ1JfRzVfSU80X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDVfSU80IGNoYW5uZWwgbW9kZSAqLworI2RlZmluZSBUU0NfSU9DQ1JfRzZfSU8xX1BvcyAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9DQ1JfRzZfSU8xX01zayAgICAgKDB4MVVMIDw8IFRTQ19JT0NDUl9HNl9JTzFfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLworI2RlZmluZSBUU0NfSU9DQ1JfRzZfSU8xICAgICAgICAgVFNDX0lPQ0NSX0c2X0lPMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1JPVVA2X0lPMSBjaGFubmVsIG1vZGUgKi8KKyNkZWZpbmUgVFNDX0lPQ0NSX0c2X0lPMl9Qb3MgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPQ0NSX0c2X0lPMl9Nc2sgICAgICgweDFVTCA8PCBUU0NfSU9DQ1JfRzZfSU8yX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8KKyNkZWZpbmUgVFNDX0lPQ0NSX0c2X0lPMiAgICAgICAgIFRTQ19JT0NDUl9HNl9JTzJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdST1VQNl9JTzIgY2hhbm5lbCBtb2RlICovCisjZGVmaW5lIFRTQ19JT0NDUl9HNl9JTzNfUG9zICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0NDUl9HNl9JTzNfTXNrICAgICAoMHgxVUwgPDwgVFNDX0lPQ0NSX0c2X0lPM19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovCisjZGVmaW5lIFRTQ19JT0NDUl9HNl9JTzMgICAgICAgICBUU0NfSU9DQ1JfRzZfSU8zX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDZfSU8zIGNoYW5uZWwgbW9kZSAqLworI2RlZmluZSBUU0NfSU9DQ1JfRzZfSU80X1BvcyAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9DQ1JfRzZfSU80X01zayAgICAgKDB4MVVMIDw8IFRTQ19JT0NDUl9HNl9JTzRfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLworI2RlZmluZSBUU0NfSU9DQ1JfRzZfSU80ICAgICAgICAgVFNDX0lPQ0NSX0c2X0lPNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1JPVVA2X0lPNCBjaGFubmVsIG1vZGUgKi8KKyNkZWZpbmUgVFNDX0lPQ0NSX0c3X0lPMV9Qb3MgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPQ0NSX0c3X0lPMV9Nc2sgICAgICgweDFVTCA8PCBUU0NfSU9DQ1JfRzdfSU8xX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8KKyNkZWZpbmUgVFNDX0lPQ0NSX0c3X0lPMSAgICAgICAgIFRTQ19JT0NDUl9HN19JTzFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdST1VQN19JTzEgY2hhbm5lbCBtb2RlICovCisjZGVmaW5lIFRTQ19JT0NDUl9HN19JTzJfUG9zICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0NDUl9HN19JTzJfTXNrICAgICAoMHgxVUwgPDwgVFNDX0lPQ0NSX0c3X0lPMl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAyMDAwMDAwICovCisjZGVmaW5lIFRTQ19JT0NDUl9HN19JTzIgICAgICAgICBUU0NfSU9DQ1JfRzdfSU8yX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUk9VUDdfSU8yIGNoYW5uZWwgbW9kZSAqLworI2RlZmluZSBUU0NfSU9DQ1JfRzdfSU8zX1BvcyAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9DQ1JfRzdfSU8zX01zayAgICAgKDB4MVVMIDw8IFRTQ19JT0NDUl9HN19JTzNfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLworI2RlZmluZSBUU0NfSU9DQ1JfRzdfSU8zICAgICAgICAgVFNDX0lPQ0NSX0c3X0lPM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1JPVVA3X0lPMyBjaGFubmVsIG1vZGUgKi8KKyNkZWZpbmUgVFNDX0lPQ0NSX0c3X0lPNF9Qb3MgICAgICgyN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPQ0NSX0c3X0lPNF9Nc2sgICAgICgweDFVTCA8PCBUU0NfSU9DQ1JfRzdfSU80X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8KKyNkZWZpbmUgVFNDX0lPQ0NSX0c3X0lPNCAgICAgICAgIFRTQ19JT0NDUl9HN19JTzRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdST1VQN19JTzQgY2hhbm5lbCBtb2RlICovCisKKy8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVFNDX0lPR0NTUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFRTQ19JT0dDU1JfRzFFX1BvcyAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0dDU1JfRzFFX01zayAgICAgICAoMHgxVUwgPDwgVFNDX0lPR0NTUl9HMUVfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFRTQ19JT0dDU1JfRzFFICAgICAgICAgICBUU0NfSU9HQ1NSX0cxRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBbmFsb2cgSU8gR1JPVVAxIGVuYWJsZSAqLworI2RlZmluZSBUU0NfSU9HQ1NSX0cyRV9Qb3MgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9HQ1NSX0cyRV9Nc2sgICAgICAgKDB4MVVMIDw8IFRTQ19JT0dDU1JfRzJFX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBUU0NfSU9HQ1NSX0cyRSAgICAgICAgICAgVFNDX0lPR0NTUl9HMkVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQW5hbG9nIElPIEdST1VQMiBlbmFibGUgKi8KKyNkZWZpbmUgVFNDX0lPR0NTUl9HM0VfUG9zICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPR0NTUl9HM0VfTXNrICAgICAgICgweDFVTCA8PCBUU0NfSU9HQ1NSX0czRV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgVFNDX0lPR0NTUl9HM0UgICAgICAgICAgIFRTQ19JT0dDU1JfRzNFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFuYWxvZyBJTyBHUk9VUDMgZW5hYmxlICovCisjZGVmaW5lIFRTQ19JT0dDU1JfRzRFX1BvcyAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0dDU1JfRzRFX01zayAgICAgICAoMHgxVUwgPDwgVFNDX0lPR0NTUl9HNEVfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIFRTQ19JT0dDU1JfRzRFICAgICAgICAgICBUU0NfSU9HQ1NSX0c0RV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBbmFsb2cgSU8gR1JPVVA0IGVuYWJsZSAqLworI2RlZmluZSBUU0NfSU9HQ1NSX0c1RV9Qb3MgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9HQ1NSX0c1RV9Nc2sgICAgICAgKDB4MVVMIDw8IFRTQ19JT0dDU1JfRzVFX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBUU0NfSU9HQ1NSX0c1RSAgICAgICAgICAgVFNDX0lPR0NTUl9HNUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQW5hbG9nIElPIEdST1VQNSBlbmFibGUgKi8KKyNkZWZpbmUgVFNDX0lPR0NTUl9HNkVfUG9zICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPR0NTUl9HNkVfTXNrICAgICAgICgweDFVTCA8PCBUU0NfSU9HQ1NSX0c2RV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgVFNDX0lPR0NTUl9HNkUgICAgICAgICAgIFRTQ19JT0dDU1JfRzZFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFuYWxvZyBJTyBHUk9VUDYgZW5hYmxlICovCisjZGVmaW5lIFRTQ19JT0dDU1JfRzdFX1BvcyAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0dDU1JfRzdFX01zayAgICAgICAoMHgxVUwgPDwgVFNDX0lPR0NTUl9HN0VfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIFRTQ19JT0dDU1JfRzdFICAgICAgICAgICBUU0NfSU9HQ1NSX0c3RV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBbmFsb2cgSU8gR1JPVVA3IGVuYWJsZSAqLworI2RlZmluZSBUU0NfSU9HQ1NSX0cxU19Qb3MgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9HQ1NSX0cxU19Nc2sgICAgICAgKDB4MVVMIDw8IFRTQ19JT0dDU1JfRzFTX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBUU0NfSU9HQ1NSX0cxUyAgICAgICAgICAgVFNDX0lPR0NTUl9HMVNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQW5hbG9nIElPIEdST1VQMSBzdGF0dXMgKi8KKyNkZWZpbmUgVFNDX0lPR0NTUl9HMlNfUG9zICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPR0NTUl9HMlNfTXNrICAgICAgICgweDFVTCA8PCBUU0NfSU9HQ1NSX0cyU19Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgVFNDX0lPR0NTUl9HMlMgICAgICAgICAgIFRTQ19JT0dDU1JfRzJTX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFuYWxvZyBJTyBHUk9VUDIgc3RhdHVzICovCisjZGVmaW5lIFRTQ19JT0dDU1JfRzNTX1BvcyAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0dDU1JfRzNTX01zayAgICAgICAoMHgxVUwgPDwgVFNDX0lPR0NTUl9HM1NfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovCisjZGVmaW5lIFRTQ19JT0dDU1JfRzNTICAgICAgICAgICBUU0NfSU9HQ1NSX0czU19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBbmFsb2cgSU8gR1JPVVAzIHN0YXR1cyAqLworI2RlZmluZSBUU0NfSU9HQ1NSX0c0U19Qb3MgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9HQ1NSX0c0U19Nc2sgICAgICAgKDB4MVVMIDw8IFRTQ19JT0dDU1JfRzRTX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLworI2RlZmluZSBUU0NfSU9HQ1NSX0c0UyAgICAgICAgICAgVFNDX0lPR0NTUl9HNFNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQW5hbG9nIElPIEdST1VQNCBzdGF0dXMgKi8KKyNkZWZpbmUgVFNDX0lPR0NTUl9HNVNfUG9zICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPR0NTUl9HNVNfTXNrICAgICAgICgweDFVTCA8PCBUU0NfSU9HQ1NSX0c1U19Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgVFNDX0lPR0NTUl9HNVMgICAgICAgICAgIFRTQ19JT0dDU1JfRzVTX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFuYWxvZyBJTyBHUk9VUDUgc3RhdHVzICovCisjZGVmaW5lIFRTQ19JT0dDU1JfRzZTX1BvcyAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRTQ19JT0dDU1JfRzZTX01zayAgICAgICAoMHgxVUwgPDwgVFNDX0lPR0NTUl9HNlNfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovCisjZGVmaW5lIFRTQ19JT0dDU1JfRzZTICAgICAgICAgICBUU0NfSU9HQ1NSX0c2U19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBbmFsb2cgSU8gR1JPVVA2IHN0YXR1cyAqLworI2RlZmluZSBUU0NfSU9HQ1NSX0c3U19Qb3MgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUU0NfSU9HQ1NSX0c3U19Nc2sgICAgICAgKDB4MVVMIDw8IFRTQ19JT0dDU1JfRzdTX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLworI2RlZmluZSBUU0NfSU9HQ1NSX0c3UyAgICAgICAgICAgVFNDX0lPR0NTUl9HN1NfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQW5hbG9nIElPIEdST1VQNyBzdGF0dXMgKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUU0NfSU9HWENSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgVFNDX0lPR1hDUl9DTlRfUG9zICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVFNDX0lPR1hDUl9DTlRfTXNrICAgICAgICgweDNGRkZVTCA8PCBUU0NfSU9HWENSX0NOVF9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDNGRkYgKi8KKyNkZWZpbmUgVFNDX0lPR1hDUl9DTlQgICAgICAgICAgIFRTQ19JT0dYQ1JfQ05UX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENOVFsxMzowXSBiaXRzIChDb3VudGVyIHZhbHVlKSAqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisvKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNZU0NGR19NRU1STVAgcmVnaXN0ZXIgIChTWVNDRkcgbWVtb3J5IHJlbWFwIHJlZ2lzdGVyKSAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgU1lTQ0ZHX01FTVJNUF9NRU1fTU9ERV9Qb3MgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX01FTVJNUF9NRU1fTU9ERV9Nc2sgICAgICAgICAgICAgICgweDdVTCA8PCBTWVNDRkdfTUVNUk1QX01FTV9NT0RFX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNyAqLworI2RlZmluZSBTWVNDRkdfTUVNUk1QX01FTV9NT0RFICAgICAgICAgICAgICAgICAgU1lTQ0ZHX01FTVJNUF9NRU1fTU9ERV9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBTWVNDRkdfTWVtb3J5IFJlbWFwIENvbmZpZyAqLworI2RlZmluZSBTWVNDRkdfTUVNUk1QX01FTV9NT0RFXzAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1lTQ0ZHX01FTVJNUF9NRU1fTU9ERV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFNZU0NGR19NRU1STVBfTUVNX01PREVfMSAgICAgICAgICAgICAgICAoMHgyVSA8PCBTWVNDRkdfTUVNUk1QX01FTV9NT0RFX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgU1lTQ0ZHX01FTVJNUF9NRU1fTU9ERV8yICAgICAgICAgICAgICAgICgweDRVIDw8IFNZU0NGR19NRU1STVBfTUVNX01PREVfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworCisvKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTWVNDRkdfQ0ZHUjEgcmVnaXN0ZXIgIChTWVNDRkcgY29uZmlndXJhdGlvbiByZWdpc3RlciAxKSAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBTWVNDRkdfQ0ZHUjFfQk9PU1RFTl9Qb3MgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfQ0ZHUjFfQk9PU1RFTl9Nc2sgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19DRkdSMV9CT09TVEVOX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIFNZU0NGR19DRkdSMV9CT09TVEVOICAgICAgICAgICAgICAgICAgICBTWVNDRkdfQ0ZHUjFfQk9PU1RFTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEkvTyBhbmFsb2cgc3dpdGNoIHZvbHRhZ2UgYm9vc3RlciBlbmFibGUgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBTWVNDRkdfQ0ZHUjFfQU5BU1dWRERfUG9zICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfQ0ZHUjFfQU5BU1dWRERfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19DRkdSMV9BTkFTV1ZERF9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIFNZU0NGR19DRkdSMV9BTkFTV1ZERCAgICAgICAgICAgICAgICAgICBTWVNDRkdfQ0ZHUjFfQU5BU1dWRERfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEkvTyBhbmFsb2cgc3dpdGNoIHZvbHRhZ2Ugc2VsZWN0aW9uICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBTWVNDRkdfQ0ZHUjFfSTJDX1BCNl9GTVBfUG9zICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfQ0ZHUjFfSTJDX1BCNl9GTVBfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19DRkdSMV9JMkNfUEI2X0ZNUF9Qb3MpICAgICAgICAgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIFNZU0NGR19DRkdSMV9JMkNfUEI2X0ZNUCAgICAgICAgICAgICAgICBTWVNDRkdfQ0ZHUjFfSTJDX1BCNl9GTVBfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IEZhc3QtbW9kZSBQbHVzIChGbSspIGRyaXZpbmcgY2FwYWJpbGl0eSBhY3RpdmF0aW9uIG9uIFBCNiAqLworI2RlZmluZSBTWVNDRkdfQ0ZHUjFfSTJDX1BCN19GTVBfUG9zICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfQ0ZHUjFfSTJDX1BCN19GTVBfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19DRkdSMV9JMkNfUEI3X0ZNUF9Qb3MpICAgICAgICAgLyohPCAweDAwMDIwMDAwICovCisjZGVmaW5lIFNZU0NGR19DRkdSMV9JMkNfUEI3X0ZNUCAgICAgICAgICAgICAgICBTWVNDRkdfQ0ZHUjFfSTJDX1BCN19GTVBfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IEZhc3QtbW9kZSBQbHVzIChGbSspIGRyaXZpbmcgY2FwYWJpbGl0eSBhY3RpdmF0aW9uIG9uIFBCNyAqLworI2RlZmluZSBTWVNDRkdfQ0ZHUjFfSTJDX1BCOF9GTVBfUG9zICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfQ0ZHUjFfSTJDX1BCOF9GTVBfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19DRkdSMV9JMkNfUEI4X0ZNUF9Qb3MpICAgICAgICAgLyohPCAweDAwMDQwMDAwICovCisjZGVmaW5lIFNZU0NGR19DRkdSMV9JMkNfUEI4X0ZNUCAgICAgICAgICAgICAgICBTWVNDRkdfQ0ZHUjFfSTJDX1BCOF9GTVBfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IEZhc3QtbW9kZSBQbHVzIChGbSspIGRyaXZpbmcgY2FwYWJpbGl0eSBhY3RpdmF0aW9uIG9uIFBCOCAqLworI2RlZmluZSBTWVNDRkdfQ0ZHUjFfSTJDX1BCOV9GTVBfUG9zICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfQ0ZHUjFfSTJDX1BCOV9GTVBfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19DRkdSMV9JMkNfUEI5X0ZNUF9Qb3MpICAgICAgICAgLyohPCAweDAwMDgwMDAwICovCisjZGVmaW5lIFNZU0NGR19DRkdSMV9JMkNfUEI5X0ZNUCAgICAgICAgICAgICAgICBTWVNDRkdfQ0ZHUjFfSTJDX1BCOV9GTVBfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IEZhc3QtbW9kZSBQbHVzIChGbSspIGRyaXZpbmcgY2FwYWJpbGl0eSBhY3RpdmF0aW9uIG9uIFBCOSAqLworI2RlZmluZSBTWVNDRkdfQ0ZHUjFfSTJDMV9GTVBfUG9zICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfQ0ZHUjFfSTJDMV9GTVBfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19DRkdSMV9JMkMxX0ZNUF9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovCisjZGVmaW5lIFNZU0NGR19DRkdSMV9JMkMxX0ZNUCAgICAgICAgICAgICAgICAgICBTWVNDRkdfQ0ZHUjFfSTJDMV9GTVBfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEkyQzEgRmFzdC1tb2RlIFBsdXMgKEZtKykgZHJpdmluZyBjYXBhYmlsaXR5IGFjdGl2YXRpb24gICAqLworI2RlZmluZSBTWVNDRkdfQ0ZHUjFfSTJDM19GTVBfUG9zICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfQ0ZHUjFfSTJDM19GTVBfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19DRkdSMV9JMkMzX0ZNUF9Qb3MpICAgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovCisjZGVmaW5lIFNZU0NGR19DRkdSMV9JMkMzX0ZNUCAgICAgICAgICAgICAgICAgICBTWVNDRkdfQ0ZHUjFfSTJDM19GTVBfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEkyQzMgRmFzdC1tb2RlIFBsdXMgKEZtKykgZHJpdmluZyBjYXBhYmlsaXR5IGFjdGl2YXRpb24gICAqLworI2RlZmluZSBTWVNDRkdfQ0ZHUjFfRlBVX0lFX1BvcyAgICAgICAgICAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfQ0ZHUjFfRlBVX0lFX01zayAgICAgICAgICAgICAgICAgKDB4M0ZVTCA8PCBTWVNDRkdfQ0ZHUjFfRlBVX0lFX1BvcykgICAgICAgICAgICAgLyohPCAweEZDMDAwMDAwICovCisjZGVmaW5lIFNZU0NGR19DRkdSMV9GUFVfSUUgICAgICAgICAgICAgICAgICAgICBTWVNDRkdfQ0ZHUjFfRlBVX0lFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvcnRleCBNNCBGbG9hdGluZyBQb2ludCBVbml0IGludGVycnVwdHMgZW5hYmxlIGJpdHMgICAgICAqLworI2RlZmluZSBTWVNDRkdfQ0ZHUjFfRlBVX0lFXzAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IFNZU0NGR19DRkdSMV9GUFVfSUVfUG9zKSAgICAgICAgICAgICAgLyohPCAweDA0MDAwMDAwICovCisjZGVmaW5lIFNZU0NGR19DRkdSMV9GUFVfSUVfMSAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgU1lTQ0ZHX0NGR1IxX0ZQVV9JRV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0NGR1IxX0ZQVV9JRV8yICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBTWVNDRkdfQ0ZHUjFfRlBVX0lFX1BvcykgICAgICAgICAgICAgIC8qITwgMHgxMDAwMDAwMCAqLworI2RlZmluZSBTWVNDRkdfQ0ZHUjFfRlBVX0lFXzMgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IFNZU0NGR19DRkdSMV9GUFVfSUVfUG9zKSAgICAgICAgICAgICAgLyohPCAweDIwMDAwMDAwICovCisjZGVmaW5lIFNZU0NGR19DRkdSMV9GUFVfSUVfNCAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgU1lTQ0ZHX0NGR1IxX0ZQVV9JRV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4NDAwMDAwMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0NGR1IxX0ZQVV9JRV81ICAgICAgICAgICAgICAgICAgICgweDIwVSA8PCBTWVNDRkdfQ0ZHUjFfRlBVX0lFX1BvcykgICAgICAgICAgICAgIC8qITwgMHg4MDAwMDAwMCAqLworCisvKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTWVNDRkdfRVhUSUNSMSByZWdpc3RlciAgKEV4dGVybmFsIGludGVycnVwdCBjb25maWd1cmF0aW9uIHJlZ2lzdGVyIDEpICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMF9Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMF9Nc2sgICAgICAgICAgICAgICAgKDB4N1VMIDw8IFNZU0NGR19FWFRJQ1IxX0VYVEkwX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA3ICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkwICAgICAgICAgICAgICAgICAgICBTWVNDRkdfRVhUSUNSMV9FWFRJMF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEV4dGVybmFsIEludGVycnVwdCBMaW5lIDAgY29uZmlndXJhdGlvbiAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMV9Qb3MgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMV9Nc2sgICAgICAgICAgICAgICAgKDB4N1VMIDw8IFNZU0NGR19FWFRJQ1IxX0VYVEkxX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDcwICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkxICAgICAgICAgICAgICAgICAgICBTWVNDRkdfRVhUSUNSMV9FWFRJMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEV4dGVybmFsIEludGVycnVwdCBMaW5lIDEgY29uZmlndXJhdGlvbiAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMl9Qb3MgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMl9Nc2sgICAgICAgICAgICAgICAgKDB4N1VMIDw8IFNZU0NGR19FWFRJQ1IxX0VYVEkyX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwNzAwICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkyICAgICAgICAgICAgICAgICAgICBTWVNDRkdfRVhUSUNSMV9FWFRJMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEV4dGVybmFsIEludGVycnVwdCBMaW5lIDIgY29uZmlndXJhdGlvbiAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJM19Qb3MgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJM19Nc2sgICAgICAgICAgICAgICAgKDB4N1VMIDw8IFNZU0NGR19FWFRJQ1IxX0VYVEkzX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDA3MDAwICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkzICAgICAgICAgICAgICAgICAgICBTWVNDRkdfRVhUSUNSMV9FWFRJM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEV4dGVybmFsIEludGVycnVwdCBMaW5lIDMgY29uZmlndXJhdGlvbiAqLworCisvKiogCisgICogQGJyaWVmICBFeHRlcm5hbCBJbnRlcnJ1cHQgTGluZSAwIFNvdXJjZSBJbnB1dCBjb25maWd1cmF0aW9uICAKKyAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTBfUEEgICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVUwpICAvKiE8IFBBWzBdIHBpbiAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMF9QQiAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVTCkgIC8qITwgUEJbMF0gcGluICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkwX1BDICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlVMKSAgLyohPCBQQ1swXSBwaW4gKi8KKyNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTBfUEQgICAgICAgICAgICAgICAgICgweDAwMDAwMDAzVUwpICAvKiE8IFBEWzBdIHBpbiAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMF9QRSAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVTCkgIC8qITwgUEVbMF0gcGluICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkwX1BIICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwN1VMKSAgLyohPCBQSFswXSBwaW4gKi8KKworLyoqIAorICAqIEBicmllZiAgRXh0ZXJuYWwgSW50ZXJydXB0IExpbmUgMSBTb3VyY2UgSW5wdXQgY29uZmlndXJhdGlvbiAgCisgICovIAorI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMV9QQSAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVTCkgIC8qITwgUEFbMV0gcGluICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkxX1BCICAgICAgICAgICAgICAgICAoMHgwMDAwMDAxMFVMKSAgLyohPCBQQlsxXSBwaW4gKi8KKyNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTFfUEMgICAgICAgICAgICAgICAgICgweDAwMDAwMDIwVUwpICAvKiE8IFBDWzFdIHBpbiAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMV9QRCAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMzBVTCkgIC8qITwgUERbMV0gcGluICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkxX1BFICAgICAgICAgICAgICAgICAoMHgwMDAwMDA0MFVMKSAgLyohPCBQRVsxXSBwaW4gKi8KKyNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTFfUEggICAgICAgICAgICAgICAgICgweDAwMDAwMDcwVUwpICAvKiE8IFBIWzFdIHBpbiAqLworCisvKiogCisgICogQGJyaWVmICBFeHRlcm5hbCBJbnRlcnJ1cHQgTGluZSAyIFNvdXJjZSBJbnB1dCBjb25maWd1cmF0aW9uICAKKyAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTJfUEEgICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVUwpICAvKiE8IFBBWzJdIHBpbiAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMl9QQiAgICAgICAgICAgICAgICAgKDB4MDAwMDAxMDBVTCkgIC8qITwgUEJbMl0gcGluICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkyX1BDICAgICAgICAgICAgICAgICAoMHgwMDAwMDIwMFVMKSAgLyohPCBQQ1syXSBwaW4gKi8KKyNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTJfUEQgICAgICAgICAgICAgICAgICgweDAwMDAwMzAwVUwpICAvKiE8IFBEWzJdIHBpbiAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMl9QRSAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVTCkgIC8qITwgUEVbMl0gcGluICovCisKKy8qKiAKKyAgKiBAYnJpZWYgIEV4dGVybmFsIEludGVycnVwdCBMaW5lIDMgU291cmNlIElucHV0IGNvbmZpZ3VyYXRpb24gIAorICAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJM19QQSAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVTCkgIC8qITwgUEFbM10gcGluICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkzX1BCICAgICAgICAgICAgICAgICAoMHgwMDAwMTAwMFVMKSAgLyohPCBQQlszXSBwaW4gKi8KKyNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTNfUEMgICAgICAgICAgICAgICAgICgweDAwMDAyMDAwVUwpICAvKiE8IFBDWzNdIHBpbiAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJM19QRCAgICAgICAgICAgICAgICAgKDB4MDAwMDMwMDBVTCkgIC8qITwgUERbM10gcGluICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkzX1BFICAgICAgICAgICAgICAgICAoMHgwMDAwNDAwMFVMKSAgLyohPCBQRVszXSBwaW4gKi8KKyNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTNfUEggICAgICAgICAgICAgICAgICgweDAwMDA3MDAwVUwpICAvKiE8IFBIWzNdIHBpbiAqLworCisvKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTWVNDRkdfRVhUSUNSMiByZWdpc3RlciAgKEV4dGVybmFsIGludGVycnVwdCBjb25maWd1cmF0aW9uIHJlZ2lzdGVyIDIpICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNF9Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNF9Nc2sgICAgICAgICAgICAgICAgKDB4N1VMIDw8IFNZU0NGR19FWFRJQ1IyX0VYVEk0X1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA3ICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk0ICAgICAgICAgICAgICAgICAgICBTWVNDRkdfRVhUSUNSMl9FWFRJNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEV4dGVybmFsIEludGVycnVwdCBMaW5lIDQgY29uZmlndXJhdGlvbiAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNV9Qb3MgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNV9Nc2sgICAgICAgICAgICAgICAgKDB4N1VMIDw8IFNZU0NGR19FWFRJQ1IyX0VYVEk1X1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDcwICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk1ICAgICAgICAgICAgICAgICAgICBTWVNDRkdfRVhUSUNSMl9FWFRJNV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEV4dGVybmFsIEludGVycnVwdCBMaW5lIDUgY29uZmlndXJhdGlvbiAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNl9Qb3MgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNl9Nc2sgICAgICAgICAgICAgICAgKDB4N1VMIDw8IFNZU0NGR19FWFRJQ1IyX0VYVEk2X1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwNzAwICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk2ICAgICAgICAgICAgICAgICAgICBTWVNDRkdfRVhUSUNSMl9FWFRJNl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEV4dGVybmFsIEludGVycnVwdCBMaW5lIDYgY29uZmlndXJhdGlvbiAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJN19Qb3MgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJN19Nc2sgICAgICAgICAgICAgICAgKDB4N1VMIDw8IFNZU0NGR19FWFRJQ1IyX0VYVEk3X1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDA3MDAwICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk3ICAgICAgICAgICAgICAgICAgICBTWVNDRkdfRVhUSUNSMl9FWFRJN19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEV4dGVybmFsIEludGVycnVwdCBMaW5lIDcgY29uZmlndXJhdGlvbiAqLworCisvKiogCisgICogQGJyaWVmICBFeHRlcm5hbCBJbnRlcnJ1cHQgTGluZSA0IFNvdXJjZSBJbnB1dCBjb25maWd1cmF0aW9uICAKKyAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTRfUEEgICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVUwpICAvKiE8IFBBWzRdIHBpbiAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTRfUEIgICAgICAgICAgICAgICAgICgweDAwMDAwMDAxVUwpICAvKiE8IFBCWzRdIHBpbiAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTRfUEMgICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVUwpICAvKiE8IFBDWzRdIHBpbiAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTRfUEQgICAgICAgICAgICAgICAgICgweDAwMDAwMDAzVUwpICAvKiE8IFBEWzRdIHBpbiAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTRfUEUgICAgICAgICAgICAgICAgICgweDAwMDAwMDA0VUwpICAvKiE8IFBFWzRdIHBpbiAgKi8KKworLyoqIAorICAqIEBicmllZiAgRXh0ZXJuYWwgSW50ZXJydXB0IExpbmUgNSBTb3VyY2UgSW5wdXQgY29uZmlndXJhdGlvbiAgCisgICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk1X1BBICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMFVMKSAgLyohPCBQQVs1XSBwaW4gICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk1X1BCICAgICAgICAgICAgICAgICAoMHgwMDAwMDAxMFVMKSAgLyohPCBQQls1XSBwaW4gICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk1X1BDICAgICAgICAgICAgICAgICAoMHgwMDAwMDAyMFVMKSAgLyohPCBQQ1s1XSBwaW4gICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk1X1BEICAgICAgICAgICAgICAgICAoMHgwMDAwMDAzMFVMKSAgLyohPCBQRFs1XSBwaW4gICovCisKKy8qKiAKKyAgKiBAYnJpZWYgIEV4dGVybmFsIEludGVycnVwdCBMaW5lIDYgU291cmNlIElucHV0IGNvbmZpZ3VyYXRpb24gCisgICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk2X1BBICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMFVMKSAgLyohPCBQQVs2XSBwaW4gICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk2X1BCICAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFVMKSAgLyohPCBQQls2XSBwaW4gICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk2X1BDICAgICAgICAgICAgICAgICAoMHgwMDAwMDIwMFVMKSAgLyohPCBQQ1s2XSBwaW4gICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk2X1BEICAgICAgICAgICAgICAgICAoMHgwMDAwMDMwMFVMKSAgLyohPCBQRFs2XSBwaW4gICovCisKKy8qKiAKKyAgKiBAYnJpZWYgIEV4dGVybmFsIEludGVycnVwdCBMaW5lIDcgU291cmNlIElucHV0IGNvbmZpZ3VyYXRpb24gIAorICAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJN19QQSAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVTCkgIC8qITwgUEFbN10gcGluICAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJN19QQiAgICAgICAgICAgICAgICAgKDB4MDAwMDEwMDBVTCkgIC8qITwgUEJbN10gcGluICAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJN19QQyAgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVTCkgIC8qITwgUENbN10gcGluICAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJN19QRCAgICAgICAgICAgICAgICAgKDB4MDAwMDMwMDBVTCkgIC8qITwgUERbN10gcGluICAqLworCisvKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTWVNDRkdfRVhUSUNSMyByZWdpc3RlciAgKEV4dGVybmFsIGludGVycnVwdCBjb25maWd1cmF0aW9uIHJlZ2lzdGVyIDMpICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOF9Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOF9Nc2sgICAgICAgICAgICAgICAgKDB4N1VMIDw8IFNZU0NGR19FWFRJQ1IzX0VYVEk4X1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA3ICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk4ICAgICAgICAgICAgICAgICAgICBTWVNDRkdfRVhUSUNSM19FWFRJOF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEV4dGVybmFsIEludGVycnVwdCBMaW5lIDggY29uZmlndXJhdGlvbiAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOV9Qb3MgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOV9Nc2sgICAgICAgICAgICAgICAgKDB4N1VMIDw8IFNZU0NGR19FWFRJQ1IzX0VYVEk5X1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDcwICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk5ICAgICAgICAgICAgICAgICAgICBTWVNDRkdfRVhUSUNSM19FWFRJOV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEV4dGVybmFsIEludGVycnVwdCBMaW5lIDkgY29uZmlndXJhdGlvbiAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUG9zICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfTXNrICAgICAgICAgICAgICAgKDB4N1VMIDw8IFNZU0NGR19FWFRJQ1IzX0VYVEkxMF9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwNzAwICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMCAgICAgICAgICAgICAgICAgICBTWVNDRkdfRVhUSUNSM19FWFRJMTBfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEV4dGVybmFsIEludGVycnVwdCBMaW5lIDEwIGNvbmZpZ3VyYXRpb24gKi8KKyNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTExX1BvcyAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTExX01zayAgICAgICAgICAgICAgICgweEZVTCA8PCBTWVNDRkdfRVhUSUNSM19FWFRJMTFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwRjAwMCAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTEgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjNfRVhUSTExX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFeHRlcm5hbCBJbnRlcnJ1cHQgTGluZSAxMSBjb25maWd1cmF0aW9uICovCisKKy8qKiAKKyAgKiBAYnJpZWYgIEV4dGVybmFsIEludGVycnVwdCBMaW5lIDggU291cmNlIElucHV0IGNvbmZpZ3VyYXRpb24gIAorICAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOF9QQSAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVTCkgIC8qITwgUEFbOF0gcGluICAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOF9QQiAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVTCkgIC8qITwgUEJbOF0gcGluICAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOF9QQyAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVTCkgIC8qITwgUENbOF0gcGluICAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOF9QRCAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDNVTCkgIC8qITwgUERbOF0gcGluICAqLworCisvKiogCisgICogQGJyaWVmICBFeHRlcm5hbCBJbnRlcnJ1cHQgTGluZSA5IFNvdXJjZSBJbnB1dCBjb25maWd1cmF0aW9uICAKKyAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTlfUEEgICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVUwpICAvKiE8IFBBWzldIHBpbiAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTlfUEIgICAgICAgICAgICAgICAgICgweDAwMDAwMDEwVUwpICAvKiE8IFBCWzldIHBpbiAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTlfUEMgICAgICAgICAgICAgICAgICgweDAwMDAwMDIwVUwpICAvKiE8IFBDWzldIHBpbiAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTlfUEQgICAgICAgICAgICAgICAgICgweDAwMDAwMDMwVUwpICAvKiE8IFBEWzldIHBpbiAgKi8KKworLyoqIAorICAqIEBicmllZiAgRXh0ZXJuYWwgSW50ZXJydXB0IExpbmUgMTAgU291cmNlIElucHV0IGNvbmZpZ3VyYXRpb24gIAorICAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUEEgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVTCkgIC8qITwgUEFbMTBdIHBpbiAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUEIgICAgICAgICAgICAgICAgKDB4MDAwMDAxMDBVTCkgIC8qITwgUEJbMTBdIHBpbiAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUEMgICAgICAgICAgICAgICAgKDB4MDAwMDAyMDBVTCkgIC8qITwgUENbMTBdIHBpbiAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUEQgICAgICAgICAgICAgICAgKDB4MDAwMDAzMDBVTCkgIC8qITwgUERbMTBdIHBpbiAqLworCisvKiogCisgICogQGJyaWVmICBFeHRlcm5hbCBJbnRlcnJ1cHQgTGluZSAxMSBTb3VyY2UgSW5wdXQgY29uZmlndXJhdGlvbiAgCisgICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMV9QQSAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMFVMKSAgLyohPCBQQVsxMV0gcGluICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMV9QQiAgICAgICAgICAgICAgICAoMHgwMDAwMTAwMFVMKSAgLyohPCBQQlsxMV0gcGluICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMV9QQyAgICAgICAgICAgICAgICAoMHgwMDAwMjAwMFVMKSAgLyohPCBQQ1sxMV0gcGluICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMV9QRCAgICAgICAgICAgICAgICAoMHgwMDAwMzAwMFVMKSAgLyohPCBQRFsxMV0gcGluICovCisKKy8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNZU0NGR19FWFRJQ1I0IHJlZ2lzdGVyICAoRXh0ZXJuYWwgaW50ZXJydXB0IGNvbmZpZ3VyYXRpb24gcmVnaXN0ZXIgNCkgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTJfUG9zICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTJfTXNrICAgICAgICAgICAgICAgKDB4N1VMIDw8IFNZU0NGR19FWFRJQ1I0X0VYVEkxMl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDA3ICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxMiAgICAgICAgICAgICAgICAgICBTWVNDRkdfRVhUSUNSNF9FWFRJMTJfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEV4dGVybmFsIEludGVycnVwdCBMaW5lIDEyIGNvbmZpZ3VyYXRpb24gKi8KKyNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX1BvcyAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX01zayAgICAgICAgICAgICAgICgweDdVTCA8PCBTWVNDRkdfRVhUSUNSNF9FWFRJMTNfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDA3MCAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTMgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFeHRlcm5hbCBJbnRlcnJ1cHQgTGluZSAxMyBjb25maWd1cmF0aW9uICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNF9Qb3MgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNF9Nc2sgICAgICAgICAgICAgICAoMHg3VUwgPDwgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDA3MDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0ICAgICAgICAgICAgICAgICAgIFNZU0NGR19FWFRJQ1I0X0VYVEkxNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRXh0ZXJuYWwgSW50ZXJydXB0IExpbmUgMTQgY29uZmlndXJhdGlvbiAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTVfUG9zICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTVfTXNrICAgICAgICAgICAgICAgKDB4N1VMIDw8IFNZU0NGR19FWFRJQ1I0X0VYVEkxNV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDA3MDAwICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNSAgICAgICAgICAgICAgICAgICBTWVNDRkdfRVhUSUNSNF9FWFRJMTVfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEV4dGVybmFsIEludGVycnVwdCBMaW5lIDE1IGNvbmZpZ3VyYXRpb24gKi8KKworLyoqIAorICAqIEBicmllZiAgRXh0ZXJuYWwgSW50ZXJydXB0IExpbmUgMTIgU291cmNlIElucHV0IGNvbmZpZ3VyYXRpb24gIAorICAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTJfUEEgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVTCkgIC8qITwgUEFbMTJdIHBpbiAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTJfUEIgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVTCkgIC8qITwgUEJbMTJdIHBpbiAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTJfUEMgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVTCkgIC8qITwgUENbMTJdIHBpbiAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTJfUEQgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDNVTCkgIC8qITwgUERbMTJdIHBpbiAqLworCisvKiogCisgICogQGJyaWVmICBFeHRlcm5hbCBJbnRlcnJ1cHQgTGluZSAxMyBTb3VyY2UgSW5wdXQgY29uZmlndXJhdGlvbiAgCisgICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxM19QQSAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMFVMKSAgLyohPCBQQVsxM10gcGluICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxM19QQiAgICAgICAgICAgICAgICAoMHgwMDAwMDAxMFVMKSAgLyohPCBQQlsxM10gcGluICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxM19QQyAgICAgICAgICAgICAgICAoMHgwMDAwMDAyMFVMKSAgLyohPCBQQ1sxM10gcGluICovCisjZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxM19QRCAgICAgICAgICAgICAgICAoMHgwMDAwMDAzMFVMKSAgLyohPCBQRFsxM10gcGluICovCisKKy8qKiAKKyAgKiBAYnJpZWYgIEV4dGVybmFsIEludGVycnVwdCBMaW5lIDE0IFNvdXJjZSBJbnB1dCBjb25maWd1cmF0aW9uICAKKyAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X1BBICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVUwpICAvKiE8IFBBWzE0XSBwaW4gKi8KKyNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X1BCICAgICAgICAgICAgICAgICgweDAwMDAwMTAwVUwpICAvKiE8IFBCWzE0XSBwaW4gKi8KKyNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X1BDICAgICAgICAgICAgICAgICgweDAwMDAwMjAwVUwpICAvKiE8IFBDWzE0XSBwaW4gKi8KKyNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X1BEICAgICAgICAgICAgICAgICgweDAwMDAwMzAwVUwpICAvKiE8IFBEWzE0XSBwaW4gKi8KKworLyoqIAorICAqIEBicmllZiAgRXh0ZXJuYWwgSW50ZXJydXB0IExpbmUgMTUgU291cmNlIElucHV0IGNvbmZpZ3VyYXRpb24gIAorICAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTVfUEEgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVTCkgIC8qITwgUEFbMTVdIHBpbiAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTVfUEIgICAgICAgICAgICAgICAgKDB4MDAwMDEwMDBVTCkgIC8qITwgUEJbMTVdIHBpbiAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTVfUEMgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVTCkgIC8qITwgUENbMTVdIHBpbiAqLworI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTVfUEQgICAgICAgICAgICAgICAgKDB4MDAwMDMwMDBVTCkgIC8qITwgUERbMTVdIHBpbiAqLworCisvKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTWVNDRkdfU0NTUiByZWdpc3RlciAgKFNZU0NGRyBTUkFNMiBjb250cm9sIGFuZCBzdGF0dXMgcmVnaXN0ZXIpICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgU1lTQ0ZHX1NDU1JfU1JBTTJFUl9Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX1NDU1JfU1JBTTJFUl9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfU0NTUl9TUkFNMkVSX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBTWVNDRkdfU0NTUl9TUkFNMkVSICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX1NDU1JfU1JBTTJFUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTUkFNMiBhbmQgUEtBIFJBTSBFcmFzZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIFNZU0NGR19TQ1NSX1NSQU0yQlNZX1BvcyAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19TQ1NSX1NSQU0yQlNZX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX1NDU1JfU1JBTTJCU1lfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NDU1JfU1JBTTJCU1kgICAgICAgICAgICAgICAgICAgIFNZU0NGR19TQ1NSX1NSQU0yQlNZX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1JBTTIgYW5kIFBLQSBSQU0gYnVzeSBieSBlcmFzZSBvcGVyYXRpb24gICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBTWVNDRkdfU0NTUl9DMlJGRF9Qb3MgICAgICAgICAgICAgICAgICAgKDMxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX1NDU1JfQzJSRkRfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfU0NTUl9DMlJGRF9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHg4MDAwMDAwMCAqLworI2RlZmluZSBTWVNDRkdfU0NTUl9DMlJGRCAgICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX1NDU1JfQzJSRkRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDUFUyIFNSQU0gZmV0Y2ggKGV4ZWN1dGlvbikgZGlzYWJsZSAgICAgICAgICAgICAgICAgICAgICAgICovCisKKy8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNZU0NGR19DRkdSMiByZWdpc3RlciAgKFNZU0NGRyBjb25maWd1cmF0aW9uIHJlZ2lzdGVyIDIpICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBTWVNDRkdfQ0ZHUjJfQ0xMX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfQ0ZHUjJfQ0xMX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19DRkdSMl9DTExfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFNZU0NGR19DRkdSMl9DTEwgICAgICAgICAgICAgICAgICAgICAgICBTWVNDRkdfQ0ZHUjJfQ0xMX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvcnRleCBNNCBMT0NLVVAgKGhhcmRmYXVsdCkgb3V0cHV0IGVuYWJsZSAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0NGR1IyX1NQTF9Qb3MgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX0NGR1IyX1NQTF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfQ0ZHUjJfU1BMX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBTWVNDRkdfQ0ZHUjJfU1BMICAgICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX0NGR1IyX1NQTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTUkFNMiBQYXJpdHkgTG9jayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIFNZU0NGR19DRkdSMl9QVkRMX1BvcyAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19DRkdSMl9QVkRMX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX0NGR1IyX1BWRExfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgU1lTQ0ZHX0NGR1IyX1BWREwgICAgICAgICAgICAgICAgICAgICAgIFNZU0NGR19DRkdSMl9QVkRMX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUFZEIExvY2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBTWVNDRkdfQ0ZHUjJfRUNDTF9Qb3MgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfQ0ZHUjJfRUNDTF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19DRkdSMl9FQ0NMX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIFNZU0NGR19DRkdSMl9FQ0NMICAgICAgICAgICAgICAgICAgICAgICBTWVNDRkdfQ0ZHUjJfRUNDTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEVDQyBMb2NrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0NGR1IyX1NQRl9Qb3MgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX0NGR1IyX1NQRl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfQ0ZHUjJfU1BGX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBTWVNDRkdfQ0ZHUjJfU1BGICAgICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX0NGR1IyX1NQRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTUkFNMiBQYXJpdHkgTG9jayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisKKy8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNZU0NGR19TV1BSMSByZWdpc3RlciAgKFNZU0NGRyBTUkFNMkEgd3JpdGUgcHJvdGVjdGlvbiByZWdpc3RlcikgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTBfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTBfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19TV1BSMV9QQUdFMF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFNZU0NGR19TV1BSMV9QQUdFMCAgICAgICAgICAgICAgICAgICAgICBTWVNDRkdfU1dQUjFfUEFHRTBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNSQU0yQSBXcml0ZSBwcm90ZWN0aW9uIHBhZ2UgMCAoMHgyMDAzMDAwMCCWIDB4MjAwMzAzRkYpICAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIxX1BBR0UxX1BvcyAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX1NXUFIxX1BBR0UxX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfU1dQUjFfUEFHRTFfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTEgICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX1NXUFIxX1BBR0UxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTUkFNMkEgV3JpdGUgcHJvdGVjdGlvbiBwYWdlIDEgKDB4MjAwMzA0MDAgliAweDIwMDMwN0ZGKSAgICovCisjZGVmaW5lIFNZU0NGR19TV1BSMV9QQUdFMl9Qb3MgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19TV1BSMV9QQUdFMl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX1NXUFIxX1BBR0UyX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIxX1BBR0UyICAgICAgICAgICAgICAgICAgICAgIFNZU0NGR19TV1BSMV9QQUdFMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1JBTTJBIFdyaXRlIHByb3RlY3Rpb24gcGFnZSAyICgweDIwMDMwODAwIJYgMHgyMDAzMEJGRikgICAqLworI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTNfUG9zICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTNfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19TV1BSMV9QQUdFM19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIFNZU0NGR19TV1BSMV9QQUdFMyAgICAgICAgICAgICAgICAgICAgICBTWVNDRkdfU1dQUjFfUEFHRTNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNSQU0yQSBXcml0ZSBwcm90ZWN0aW9uIHBhZ2UgMyAoMHgyMDAzMEMwMCCWIDB4MjAwMzBGRkYpICAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIxX1BBR0U0X1BvcyAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX1NXUFIxX1BBR0U0X01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfU1dQUjFfUEFHRTRfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTQgICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX1NXUFIxX1BBR0U0X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTUkFNMkEgV3JpdGUgcHJvdGVjdGlvbiBwYWdlIDQgKDB4MjAwMzEwMDAgliAweDIwMDMxM0ZGKSAgICovCisjZGVmaW5lIFNZU0NGR19TV1BSMV9QQUdFNV9Qb3MgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19TV1BSMV9QQUdFNV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX1NXUFIxX1BBR0U1X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIxX1BBR0U1ICAgICAgICAgICAgICAgICAgICAgIFNZU0NGR19TV1BSMV9QQUdFNV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1JBTTJBIFdyaXRlIHByb3RlY3Rpb24gcGFnZSA1ICgweDIwMDMxNDAwIJYgMHgyMDAzMTdGRikgICAqLworI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTZfUG9zICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTZfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19TV1BSMV9QQUdFNl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIFNZU0NGR19TV1BSMV9QQUdFNiAgICAgICAgICAgICAgICAgICAgICBTWVNDRkdfU1dQUjFfUEFHRTZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNSQU0yQSBXcml0ZSBwcm90ZWN0aW9uIHBhZ2UgNiAoMHgyMDAzMTgwMCCWIDB4MjAwMzFCRkYpICAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIxX1BBR0U3X1BvcyAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX1NXUFIxX1BBR0U3X01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfU1dQUjFfUEFHRTdfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLworI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTcgICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX1NXUFIxX1BBR0U3X01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTUkFNMkEgV3JpdGUgcHJvdGVjdGlvbiBwYWdlIDcgKDB4MjAwMzFDMDAgliAweDIwMDMxRkZGKSAgICovCisjZGVmaW5lIFNZU0NGR19TV1BSMV9QQUdFOF9Qb3MgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19TV1BSMV9QQUdFOF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX1NXUFIxX1BBR0U4X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIxX1BBR0U4ICAgICAgICAgICAgICAgICAgICAgIFNZU0NGR19TV1BSMV9QQUdFOF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1JBTTJBIFdyaXRlIHByb3RlY3Rpb24gcGFnZSA4ICgweDIwMDMyMDAwIJYgMHgyMDAzMjNGRikgICAqLworI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTlfUG9zICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTlfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19TV1BSMV9QQUdFOV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIFNZU0NGR19TV1BSMV9QQUdFOSAgICAgICAgICAgICAgICAgICAgICBTWVNDRkdfU1dQUjFfUEFHRTlfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNSQU0yQSBXcml0ZSBwcm90ZWN0aW9uIHBhZ2UgOSAoMHgyMDAzMjQwMCCWIDB4MjAwMzI3RkYpICAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIxX1BBR0UxMF9Qb3MgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX1NXUFIxX1BBR0UxMF9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfU1dQUjFfUEFHRTEwX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLworI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTEwICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX1NXUFIxX1BBR0UxMF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTUkFNMkEgV3JpdGUgcHJvdGVjdGlvbiBwYWdlIDEwICgweDIwMDMyODAwIJYgMHgyMDAzMkJGRikgICovCisjZGVmaW5lIFNZU0NGR19TV1BSMV9QQUdFMTFfUG9zICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19TV1BSMV9QQUdFMTFfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX1NXUFIxX1BBR0UxMV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIxX1BBR0UxMSAgICAgICAgICAgICAgICAgICAgIFNZU0NGR19TV1BSMV9QQUdFMTFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1JBTTJBIFdyaXRlIHByb3RlY3Rpb24gcGFnZSAxMSAoMHgyMDAzMkMwMCCWIDB4MjAwMzJGRkYpICAqLworI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTEyX1BvcyAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTEyX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19TV1BSMV9QQUdFMTJfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIFNZU0NGR19TV1BSMV9QQUdFMTIgICAgICAgICAgICAgICAgICAgICBTWVNDRkdfU1dQUjFfUEFHRTEyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNSQU0yQSBXcml0ZSBwcm90ZWN0aW9uIHBhZ2UgMTIgKDB4MjAwMzMwMDAgliAweDIwMDMzM0ZGKSAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIxX1BBR0UxM19Qb3MgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX1NXUFIxX1BBR0UxM19Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfU1dQUjFfUEFHRTEzX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLworI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTEzICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX1NXUFIxX1BBR0UxM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTUkFNMkEgV3JpdGUgcHJvdGVjdGlvbiBwYWdlIDEzICgweDIwMDMzNDAwIJYgMHgyMDAzMzdGRikgICovCisjZGVmaW5lIFNZU0NGR19TV1BSMV9QQUdFMTRfUG9zICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19TV1BSMV9QQUdFMTRfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX1NXUFIxX1BBR0UxNF9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIxX1BBR0UxNCAgICAgICAgICAgICAgICAgICAgIFNZU0NGR19TV1BSMV9QQUdFMTRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1JBTTJBIFdyaXRlIHByb3RlY3Rpb24gcGFnZSAxNCAoMHgyMDAzMzgwMCCWIDB4MjAwMzNCRkYpICAqLworI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTE1X1BvcyAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTE1X01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19TV1BSMV9QQUdFMTVfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovCisjZGVmaW5lIFNZU0NGR19TV1BSMV9QQUdFMTUgICAgICAgICAgICAgICAgICAgICBTWVNDRkdfU1dQUjFfUEFHRTE1X01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNSQU0yQSBXcml0ZSBwcm90ZWN0aW9uIHBhZ2UgMTUgKDB4MjAwMzNDMDAgliAweDIwMDMzRkZGKSAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIxX1BBR0UxNl9Qb3MgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX1NXUFIxX1BBR0UxNl9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfU1dQUjFfUEFHRTE2X1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTE2ICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX1NXUFIxX1BBR0UxNl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTUkFNMkEgV3JpdGUgcHJvdGVjdGlvbiBwYWdlIDE2ICgweDIwMDM0MDAwIJYgMHgyMDAzNDNGRikgICovCisjZGVmaW5lIFNZU0NGR19TV1BSMV9QQUdFMTdfUG9zICAgICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19TV1BSMV9QQUdFMTdfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX1NXUFIxX1BBR0UxN19Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIxX1BBR0UxNyAgICAgICAgICAgICAgICAgICAgIFNZU0NGR19TV1BSMV9QQUdFMTdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1JBTTJBIFdyaXRlIHByb3RlY3Rpb24gcGFnZSAxNyAoMHgyMDAzNDQwMCCWIDB4MjAwMzQ3RkYpICAqLworI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTE4X1BvcyAgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTE4X01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19TV1BSMV9QQUdFMThfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovCisjZGVmaW5lIFNZU0NGR19TV1BSMV9QQUdFMTggICAgICAgICAgICAgICAgICAgICBTWVNDRkdfU1dQUjFfUEFHRTE4X01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNSQU0yQSBXcml0ZSBwcm90ZWN0aW9uIHBhZ2UgMTggKDB4MjAwMzQ4MDAgliAweDIwMDM0QkZGKSAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIxX1BBR0UxOV9Qb3MgICAgICAgICAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX1NXUFIxX1BBR0UxOV9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfU1dQUjFfUEFHRTE5X1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLworI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTE5ICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX1NXUFIxX1BBR0UxOV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTUkFNMkEgV3JpdGUgcHJvdGVjdGlvbiBwYWdlIDE5ICgweDIwMDM0QzAwIJYgMHgyMDAzNEZGRikgICovCisjZGVmaW5lIFNZU0NGR19TV1BSMV9QQUdFMjBfUG9zICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19TV1BSMV9QQUdFMjBfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX1NXUFIxX1BBR0UyMF9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIxX1BBR0UyMCAgICAgICAgICAgICAgICAgICAgIFNZU0NGR19TV1BSMV9QQUdFMjBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1JBTTJBIFdyaXRlIHByb3RlY3Rpb24gcGFnZSAyMCAoMHgyMDAzNTAwMCCWIDB4MjAwMzUzRkYpICAqLworI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTIxX1BvcyAgICAgICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTIxX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19TV1BSMV9QQUdFMjFfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovCisjZGVmaW5lIFNZU0NGR19TV1BSMV9QQUdFMjEgICAgICAgICAgICAgICAgICAgICBTWVNDRkdfU1dQUjFfUEFHRTIxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNSQU0yQSBXcml0ZSBwcm90ZWN0aW9uIHBhZ2UgMjEgKDB4MjAwMzU0MDAgliAweDIwMDM1N0ZGKSAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIxX1BBR0UyMl9Qb3MgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX1NXUFIxX1BBR0UyMl9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfU1dQUjFfUEFHRTIyX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLworI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTIyICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX1NXUFIxX1BBR0UyMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTUkFNMkEgV3JpdGUgcHJvdGVjdGlvbiBwYWdlIDIyICgweDIwMDM1ODAwIJYgMHgyMDAzNUJGRikgICovCisjZGVmaW5lIFNZU0NGR19TV1BSMV9QQUdFMjNfUG9zICAgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19TV1BSMV9QQUdFMjNfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX1NXUFIxX1BBR0UyM19Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIxX1BBR0UyMyAgICAgICAgICAgICAgICAgICAgIFNZU0NGR19TV1BSMV9QQUdFMjNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1JBTTJBIFdyaXRlIHByb3RlY3Rpb24gcGFnZSAyMyAoMHgyMDAzNUMwMCCWIDB4MjAwMzVGRkYpICAqLworI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTI0X1BvcyAgICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTI0X01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19TV1BSMV9QQUdFMjRfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAxMDAwMDAwICovCisjZGVmaW5lIFNZU0NGR19TV1BSMV9QQUdFMjQgICAgICAgICAgICAgICAgICAgICBTWVNDRkdfU1dQUjFfUEFHRTI0X01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNSQU0yQSBXcml0ZSBwcm90ZWN0aW9uIHBhZ2UgMjQgKDB4MjAwMzYwMDAgliAweDIwMDM2M0ZGKSAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIxX1BBR0UyNV9Qb3MgICAgICAgICAgICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX1NXUFIxX1BBR0UyNV9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfU1dQUjFfUEFHRTI1X1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLworI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTI1ICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX1NXUFIxX1BBR0UyNV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTUkFNMkEgV3JpdGUgcHJvdGVjdGlvbiBwYWdlIDI1ICgweDIwMDM2NDAwIJYgMHgyMDAzNjdGRikgICovCisjZGVmaW5lIFNZU0NGR19TV1BSMV9QQUdFMjZfUG9zICAgICAgICAgICAgICAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19TV1BSMV9QQUdFMjZfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX1NXUFIxX1BBR0UyNl9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIxX1BBR0UyNiAgICAgICAgICAgICAgICAgICAgIFNZU0NGR19TV1BSMV9QQUdFMjZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1JBTTJBIFdyaXRlIHByb3RlY3Rpb24gcGFnZSAyNiAoMHgyMDAzNjgwMCCWIDB4MjAwMzZCRkYpICAqLworI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTI3X1BvcyAgICAgICAgICAgICAgICAgKDI3VSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTI3X01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19TV1BSMV9QQUdFMjdfUG9zKSAgICAgICAgICAgICAgLyohPCAweDA4MDAwMDAwICovCisjZGVmaW5lIFNZU0NGR19TV1BSMV9QQUdFMjcgICAgICAgICAgICAgICAgICAgICBTWVNDRkdfU1dQUjFfUEFHRTI3X01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNSQU0yQSBXcml0ZSBwcm90ZWN0aW9uIHBhZ2UgMjcgKDB4MjAwMzZDMDAgliAweDIwMDM2RkZGKSAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIxX1BBR0UyOF9Qb3MgICAgICAgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX1NXUFIxX1BBR0UyOF9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfU1dQUjFfUEFHRTI4X1BvcykgICAgICAgICAgICAgIC8qITwgMHgxMDAwMDAwMCAqLworI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTI4ICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX1NXUFIxX1BBR0UyOF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTUkFNMkEgV3JpdGUgcHJvdGVjdGlvbiBwYWdlIDI4ICgweDIwMDM3MDAwIJYgMHgyMDAzNzNGRikgICovCisjZGVmaW5lIFNZU0NGR19TV1BSMV9QQUdFMjlfUG9zICAgICAgICAgICAgICAgICAoMjlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19TV1BSMV9QQUdFMjlfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX1NXUFIxX1BBR0UyOV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIxX1BBR0UyOSAgICAgICAgICAgICAgICAgICAgIFNZU0NGR19TV1BSMV9QQUdFMjlfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1JBTTJBIFdyaXRlIHByb3RlY3Rpb24gcGFnZSAyOSAoMHgyMDAzNzQwMCCWIDB4MjAwMzc3RkYpICAqLworI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTMwX1BvcyAgICAgICAgICAgICAgICAgKDMwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTMwX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19TV1BSMV9QQUdFMzBfUG9zKSAgICAgICAgICAgICAgLyohPCAweDQwMDAwMDAwICovCisjZGVmaW5lIFNZU0NGR19TV1BSMV9QQUdFMzAgICAgICAgICAgICAgICAgICAgICBTWVNDRkdfU1dQUjFfUEFHRTMwX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNSQU0yQSBXcml0ZSBwcm90ZWN0aW9uIHBhZ2UgMzAgKDB4MjAwMzc4MDAgliAweDIwMDM3QkZGKSAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIxX1BBR0UzMV9Qb3MgICAgICAgICAgICAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX1NXUFIxX1BBR0UzMV9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfU1dQUjFfUEFHRTMxX1BvcykgICAgICAgICAgICAgIC8qITwgMHg4MDAwMDAwMCAqLworI2RlZmluZSBTWVNDRkdfU1dQUjFfUEFHRTMxICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX1NXUFIxX1BBR0UzMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTUkFNMkEgV3JpdGUgcHJvdGVjdGlvbiBwYWdlIDMxICgweDIwMDM3QzAwIJYgMHgyMDAzN0ZGRikgICovCisKKy8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNZU0NGR19TS1IgcmVnaXN0ZXIgIChTWVNDRkcgU1JBTTIga2V5IHJlZ2lzdGVyKSAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBTWVNDRkdfU0tSX0tFWV9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfU0tSX0tFWV9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4RkZVTCA8PCBTWVNDRkdfU0tSX0tFWV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMEZGICovCisjZGVmaW5lIFNZU0NGR19TS1JfS0VZICAgICAgICAgICAgICAgICAgICAgICAgICBTWVNDRkdfU0tSX0tFWV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNSQU0yIHdyaXRlIHByb3RlY3Rpb24ga2V5IGZvciBzb2Z0d2FyZSBlcmFzZSAgICAgICAgICAgICAgKi8KKworLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1lTQ0ZHX1NXUFIyIHJlZ2lzdGVyICAoU1lTQ0ZHIFNSQU0yIHdyaXRlIHByb3RlY3Rpb24gcmVnaXN0ZXIpICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFMzJfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFMzJfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX1NXUFIyX1BBR0UzMl9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIyX1BBR0UzMiAgICAgICAgICAgICAgICAgICAgIFNZU0NGR19TV1BSMl9QQUdFMzJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1JBTTJCIFdyaXRlIHByb3RlY3Rpb24gcGFnZSAwICgweDIwMDM4MDAwIJYgMHgyMDAzODNGRikgICAqLworI2RlZmluZSBTWVNDRkdfU1dQUjJfUEFHRTMzX1BvcyAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfU1dQUjJfUEFHRTMzX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19TV1BSMl9QQUdFMzNfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFMzMgICAgICAgICAgICAgICAgICAgICBTWVNDRkdfU1dQUjJfUEFHRTMzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNSQU0yQiBXcml0ZSBwcm90ZWN0aW9uIHBhZ2UgMSAoMHgyMDAzODQwMCCWIDB4MjAwMzg3RkYpICAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIyX1BBR0UzNF9Qb3MgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX1NXUFIyX1BBR0UzNF9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfU1dQUjJfUEFHRTM0X1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBTWVNDRkdfU1dQUjJfUEFHRTM0ICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX1NXUFIyX1BBR0UzNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTUkFNMkIgV3JpdGUgcHJvdGVjdGlvbiBwYWdlIDIgKDB4MjAwMzg4MDAgliAweDIwMDM4YkZGKSAgICovCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFMzVfUG9zICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFMzVfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX1NXUFIyX1BBR0UzNV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIyX1BBR0UzNSAgICAgICAgICAgICAgICAgICAgIFNZU0NGR19TV1BSMl9QQUdFMzVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1JBTTJCIFdyaXRlIHByb3RlY3Rpb24gcGFnZSAzICgweDIwMDM4QzAwIJYgMHgyMDAzOEZGRikgICAqLworI2RlZmluZSBTWVNDRkdfU1dQUjJfUEFHRTM2X1BvcyAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfU1dQUjJfUEFHRTM2X01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19TV1BSMl9QQUdFMzZfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFMzYgICAgICAgICAgICAgICAgICAgICBTWVNDRkdfU1dQUjJfUEFHRTM2X01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNSQU0yQiBXcml0ZSBwcm90ZWN0aW9uIHBhZ2UgNCAoMHgyMDAzOTAwMCCWIDB4MjAwMzkzRkYpICAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIyX1BBR0UzN19Qb3MgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX1NXUFIyX1BBR0UzN19Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfU1dQUjJfUEFHRTM3X1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBTWVNDRkdfU1dQUjJfUEFHRTM3ICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX1NXUFIyX1BBR0UzN19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTUkFNMkIgV3JpdGUgcHJvdGVjdGlvbiBwYWdlIDUgKDB4MjAwMzk0MDAgliAweDIwMDM5N0ZGKSAgICovCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFMzhfUG9zICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFMzhfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX1NXUFIyX1BBR0UzOF9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIyX1BBR0UzOCAgICAgICAgICAgICAgICAgICAgIFNZU0NGR19TV1BSMl9QQUdFMzhfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1JBTTJCIFdyaXRlIHByb3RlY3Rpb24gcGFnZSA2ICgweDIwMDM5ODAwIJYgMHgyMDAzOUJGRikgICAqLworI2RlZmluZSBTWVNDRkdfU1dQUjJfUEFHRTM5X1BvcyAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfU1dQUjJfUEFHRTM5X01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19TV1BSMl9QQUdFMzlfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFMzkgICAgICAgICAgICAgICAgICAgICBTWVNDRkdfU1dQUjJfUEFHRTM5X01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNSQU0yQiBXcml0ZSBwcm90ZWN0aW9uIHBhZ2UgNyAoMHgyMDAzOUMwMCCWIDB4MjAwMzlGRkYpICAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIyX1BBR0U0MF9Qb3MgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX1NXUFIyX1BBR0U0MF9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfU1dQUjJfUEFHRTQwX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBTWVNDRkdfU1dQUjJfUEFHRTQwICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX1NXUFIyX1BBR0U0MF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTUkFNMkIgV3JpdGUgcHJvdGVjdGlvbiBwYWdlIDggKDB4MjAwM0EwMDAgliAweDIwMDNBM0ZGKSAgICovCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFNDFfUG9zICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFNDFfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX1NXUFIyX1BBR0U0MV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIyX1BBR0U0MSAgICAgICAgICAgICAgICAgICAgIFNZU0NGR19TV1BSMl9QQUdFNDFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1JBTTJCIFdyaXRlIHByb3RlY3Rpb24gcGFnZSA5ICgweDIwMDNBNDAwIJYgMHgyMDAzQTdGRikgICAqLworI2RlZmluZSBTWVNDRkdfU1dQUjJfUEFHRTQyX1BvcyAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfU1dQUjJfUEFHRTQyX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19TV1BSMl9QQUdFNDJfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFNDIgICAgICAgICAgICAgICAgICAgICBTWVNDRkdfU1dQUjJfUEFHRTQyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNSQU0yQiBXcml0ZSBwcm90ZWN0aW9uIHBhZ2UgMTAgKDB4MjAwM0E4MDAgliAweDIwMDNBQkZGKSAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIyX1BBR0U0M19Qb3MgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX1NXUFIyX1BBR0U0M19Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfU1dQUjJfUEFHRTQzX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLworI2RlZmluZSBTWVNDRkdfU1dQUjJfUEFHRTQzICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX1NXUFIyX1BBR0U0M19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTUkFNMkIgV3JpdGUgcHJvdGVjdGlvbiBwYWdlIDExICgweDIwMDNBQzAwIJYgMHgyMDAzQUZGRikgICovCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFNDRfUG9zICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFNDRfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX1NXUFIyX1BBR0U0NF9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIyX1BBR0U0NCAgICAgICAgICAgICAgICAgICAgIFNZU0NGR19TV1BSMl9QQUdFNDRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1JBTTJCIFdyaXRlIHByb3RlY3Rpb24gcGFnZSAxMiAoMHgyMDAzQjAwMCCWIDB4MjAwM0IzRkYpICAqLworI2RlZmluZSBTWVNDRkdfU1dQUjJfUEFHRTQ1X1BvcyAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfU1dQUjJfUEFHRTQ1X01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19TV1BSMl9QQUdFNDVfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFNDUgICAgICAgICAgICAgICAgICAgICBTWVNDRkdfU1dQUjJfUEFHRTQ1X01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNSQU0yQiBXcml0ZSBwcm90ZWN0aW9uIHBhZ2UgMTMgKDB4MjAwM0I0MDAgliAweDIwMDNCN0ZGKSAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIyX1BBR0U0Nl9Qb3MgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX1NXUFIyX1BBR0U0Nl9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfU1dQUjJfUEFHRTQ2X1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLworI2RlZmluZSBTWVNDRkdfU1dQUjJfUEFHRTQ2ICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX1NXUFIyX1BBR0U0Nl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTUkFNMkIgV3JpdGUgcHJvdGVjdGlvbiBwYWdlIDE0ICgweDIwMDNCODAwIJYgMHgyMDAzQkJGRikgICovCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFNDdfUG9zICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFNDdfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX1NXUFIyX1BBR0U0N19Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIyX1BBR0U0NyAgICAgICAgICAgICAgICAgICAgIFNZU0NGR19TV1BSMl9QQUdFNDdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1JBTTJCIFdyaXRlIHByb3RlY3Rpb24gcGFnZSAxNSAoMHgyMDAzQkMwMCCWIDB4MjAwM0JGRkYpICAqLworI2RlZmluZSBTWVNDRkdfU1dQUjJfUEFHRTQ4X1BvcyAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfU1dQUjJfUEFHRTQ4X01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19TV1BSMl9QQUdFNDhfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFNDggICAgICAgICAgICAgICAgICAgICBTWVNDRkdfU1dQUjJfUEFHRTQ4X01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNSQU0yQiBXcml0ZSBwcm90ZWN0aW9uIHBhZ2UgMTYgKDB4MjAwM0MwMDAgliAweDIwMDNDM0ZGKSAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIyX1BBR0U0OV9Qb3MgICAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX1NXUFIyX1BBR0U0OV9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfU1dQUjJfUEFHRTQ5X1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLworI2RlZmluZSBTWVNDRkdfU1dQUjJfUEFHRTQ5ICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX1NXUFIyX1BBR0U0OV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTUkFNMkIgV3JpdGUgcHJvdGVjdGlvbiBwYWdlIDE3ICgweDIwMDNDNDAwIJYgMHgyMDAzQzdGRikgICovCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFNTBfUG9zICAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFNTBfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX1NXUFIyX1BBR0U1MF9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIyX1BBR0U1MCAgICAgICAgICAgICAgICAgICAgIFNZU0NGR19TV1BSMl9QQUdFNTBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1JBTTJCIFdyaXRlIHByb3RlY3Rpb24gcGFnZSAxOCAoMHgyMDAzQzgwMCCWIDB4MjAwM0NCRkYpICAqLworI2RlZmluZSBTWVNDRkdfU1dQUjJfUEFHRTUxX1BvcyAgICAgICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfU1dQUjJfUEFHRTUxX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19TV1BSMl9QQUdFNTFfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFNTEgICAgICAgICAgICAgICAgICAgICBTWVNDRkdfU1dQUjJfUEFHRTUxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNSQU0yQiBXcml0ZSBwcm90ZWN0aW9uIHBhZ2UgMTkgKDB4MjAwM0NDMDAgliAweDIwMDNDRkZGKSAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIyX1BBR0U1Ml9Qb3MgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX1NXUFIyX1BBR0U1Ml9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfU1dQUjJfUEFHRTUyX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLworI2RlZmluZSBTWVNDRkdfU1dQUjJfUEFHRTUyICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX1NXUFIyX1BBR0U1Ml9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTUkFNMkIgV3JpdGUgcHJvdGVjdGlvbiBwYWdlIDIwICgweDIwMDNEMDAwIJYgMHgyMDAzRDNGRikgICovCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFNTNfUG9zICAgICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFNTNfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX1NXUFIyX1BBR0U1M19Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIyX1BBR0U1MyAgICAgICAgICAgICAgICAgICAgIFNZU0NGR19TV1BSMl9QQUdFNTNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1JBTTJCIFdyaXRlIHByb3RlY3Rpb24gcGFnZSAyMSAoMHgyMDAzRDQwMCCWIDB4MjAwM0Q3RkYpICAqLworI2RlZmluZSBTWVNDRkdfU1dQUjJfUEFHRTU0X1BvcyAgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfU1dQUjJfUEFHRTU0X01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19TV1BSMl9QQUdFNTRfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFNTQgICAgICAgICAgICAgICAgICAgICBTWVNDRkdfU1dQUjJfUEFHRTU0X01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNSQU0yQiBXcml0ZSBwcm90ZWN0aW9uIHBhZ2UgMjIgKDB4MjAwM0Q4MDAgliAweDIwMDNEQkZGKSAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIyX1BBR0U1NV9Qb3MgICAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX1NXUFIyX1BBR0U1NV9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfU1dQUjJfUEFHRTU1X1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLworI2RlZmluZSBTWVNDRkdfU1dQUjJfUEFHRTU1ICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX1NXUFIyX1BBR0U1NV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTUkFNMkIgV3JpdGUgcHJvdGVjdGlvbiBwYWdlIDIzICgweDIwMDNEQzAwIJYgMHgyMDAzREZGRikgICovCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFNTZfUG9zICAgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFNTZfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX1NXUFIyX1BBR0U1Nl9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIyX1BBR0U1NiAgICAgICAgICAgICAgICAgICAgIFNZU0NGR19TV1BSMl9QQUdFNTZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1JBTTJCIFdyaXRlIHByb3RlY3Rpb24gcGFnZSAyNCAoMHgyMDAzRTAwMCCWIDB4MjAwM0UzRkYpICAqLworI2RlZmluZSBTWVNDRkdfU1dQUjJfUEFHRTU3X1BvcyAgICAgICAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfU1dQUjJfUEFHRTU3X01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19TV1BSMl9QQUdFNTdfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAyMDAwMDAwICovCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFNTcgICAgICAgICAgICAgICAgICAgICBTWVNDRkdfU1dQUjJfUEFHRTU3X01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNSQU0yQiBXcml0ZSBwcm90ZWN0aW9uIHBhZ2UgMjUgKDB4MjAwM0U0MDAgliAweDIwMDNFN0ZGKSAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIyX1BBR0U1OF9Qb3MgICAgICAgICAgICAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX1NXUFIyX1BBR0U1OF9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfU1dQUjJfUEFHRTU4X1BvcykgICAgICAgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLworI2RlZmluZSBTWVNDRkdfU1dQUjJfUEFHRTU4ICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX1NXUFIyX1BBR0U1OF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTUkFNMkIgV3JpdGUgcHJvdGVjdGlvbiBwYWdlIDI2ICgweDIwMDNFODAwIJYgMHgyMDAzRUJGRikgICovCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFNTlfUG9zICAgICAgICAgICAgICAgICAoMjdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFNTlfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX1NXUFIyX1BBR0U1OV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIyX1BBR0U1OSAgICAgICAgICAgICAgICAgICAgIFNZU0NGR19TV1BSMl9QQUdFNTlfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1JBTTJCIFdyaXRlIHByb3RlY3Rpb24gcGFnZSAyNyAoMHgyMDAzRUMwMCCWIDB4MjAwM0VGRkYpICAqLworI2RlZmluZSBTWVNDRkdfU1dQUjJfUEFHRTYwX1BvcyAgICAgICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfU1dQUjJfUEFHRTYwX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19TV1BSMl9QQUdFNjBfUG9zKSAgICAgICAgICAgICAgLyohPCAweDEwMDAwMDAwICovCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFNjAgICAgICAgICAgICAgICAgICAgICBTWVNDRkdfU1dQUjJfUEFHRTYwX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNSQU0yQiBXcml0ZSBwcm90ZWN0aW9uIHBhZ2UgMjggKDB4MjAwM0YwMDAgliAweDIwMDNGM0ZGKSAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIyX1BBR0U2MV9Qb3MgICAgICAgICAgICAgICAgICgyOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX1NXUFIyX1BBR0U2MV9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfU1dQUjJfUEFHRTYxX1BvcykgICAgICAgICAgICAgIC8qITwgMHgyMDAwMDAwMCAqLworI2RlZmluZSBTWVNDRkdfU1dQUjJfUEFHRTYxICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX1NXUFIyX1BBR0U2MV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTUkFNMkIgV3JpdGUgcHJvdGVjdGlvbiBwYWdlIDI5ICgweDIwMDNGNDAwIJYgMHgyMDAzRjdGRikgICovCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFNjJfUG9zICAgICAgICAgICAgICAgICAoMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFNjJfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX1NXUFIyX1BBR0U2Ml9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4NDAwMDAwMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NXUFIyX1BBR0U2MiAgICAgICAgICAgICAgICAgICAgIFNZU0NGR19TV1BSMl9QQUdFNjJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1JBTTJCIFdyaXRlIHByb3RlY3Rpb24gcGFnZSAzMCAoMHgyMDAzRjgwMCCWIDB4MjAwM0ZCRkYpICAqLworI2RlZmluZSBTWVNDRkdfU1dQUjJfUEFHRTYzX1BvcyAgICAgICAgICAgICAgICAgKDMxVSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfU1dQUjJfUEFHRTYzX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19TV1BSMl9QQUdFNjNfUG9zKSAgICAgICAgICAgICAgLyohPCAweDgwMDAwMDAwICovCisjZGVmaW5lIFNZU0NGR19TV1BSMl9QQUdFNjMgICAgICAgICAgICAgICAgICAgICBTWVNDRkdfU1dQUjJfUEFHRTYzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNSQU0yQiBXcml0ZSBwcm90ZWN0aW9uIHBhZ2UgMzEgKDB4MjAwM0ZDMDAgliAweDIwMDNGRkZGKSAgKi8KKworLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1lTQ0ZHX0lNUjEgcmVnaXN0ZXIgKEludGVycnVwdCBtYXNrcyBjb250cm9sIGFuZCBzdGF0dXMgcmVnaXN0ZXIgb24gQ1BVMSAtIHBhcnQgMSkgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgU1lTQ0ZHX0lNUjFfVElNMUlNX1BvcyAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX0lNUjFfVElNMUlNX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfSU1SMV9USU0xSU1fUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0lNUjFfVElNMUlNICAgICAgICAgICAgICAgICAgICAgIFNZU0NGR19JTVIxX1RJTTFJTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEVuYWJsaW5nIG9mIGludGVycnVwdCBmcm9tIFRpbWVyIDEgdG8gQ1BVMSAgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIFNZU0NGR19JTVIxX1RJTTE2SU1fUG9zICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19JTVIxX1RJTTE2SU1fTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX0lNUjFfVElNMTZJTV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIFNZU0NGR19JTVIxX1RJTTE2SU0gICAgICAgICAgICAgICAgICAgICBTWVNDRkdfSU1SMV9USU0xNklNX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGluZyBvZiBpbnRlcnJ1cHQgZnJvbSBUaW1lciAxNiB0byBDUFUxICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBTWVNDRkdfSU1SMV9USU0xN0lNX1BvcyAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfSU1SMV9USU0xN0lNX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19JTVIxX1RJTTE3SU1fUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLworI2RlZmluZSBTWVNDRkdfSU1SMV9USU0xN0lNICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX0lNUjFfVElNMTdJTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxpbmcgb2YgaW50ZXJydXB0IGZyb20gVGltZXIgMTcgdG8gQ1BVMSAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0lNUjFfRVhUSTVJTV9Qb3MgICAgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX0lNUjFfRVhUSTVJTV9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfSU1SMV9FWFRJNUlNX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0lNUjFfRVhUSTVJTSAgICAgICAgICAgICAgICAgICAgIFNZU0NGR19JTVIxX0VYVEk1SU1fTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEVuYWJsaW5nIG9mIGludGVycnVwdCBmcm9tIEV4dGVybmFsIEludGVycnVwdCBMaW5lIDUgdG8gQ1BVMSAgICAgICovCisjZGVmaW5lIFNZU0NGR19JTVIxX0VYVEk2SU1fUG9zICAgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19JTVIxX0VYVEk2SU1fTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX0lNUjFfRVhUSTZJTV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovCisjZGVmaW5lIFNZU0NGR19JTVIxX0VYVEk2SU0gICAgICAgICAgICAgICAgICAgICBTWVNDRkdfSU1SMV9FWFRJNklNX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGluZyBvZiBpbnRlcnJ1cHQgZnJvbSBFeHRlcm5hbCBJbnRlcnJ1cHQgTGluZSA2IHRvIENQVTEgICAgICAqLworI2RlZmluZSBTWVNDRkdfSU1SMV9FWFRJN0lNX1BvcyAgICAgICAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfSU1SMV9FWFRJN0lNX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19JTVIxX0VYVEk3SU1fUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLworI2RlZmluZSBTWVNDRkdfSU1SMV9FWFRJN0lNICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX0lNUjFfRVhUSTdJTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxpbmcgb2YgaW50ZXJydXB0IGZyb20gRXh0ZXJuYWwgSW50ZXJydXB0IExpbmUgNyB0byBDUFUxICAgICAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0lNUjFfRVhUSThJTV9Qb3MgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX0lNUjFfRVhUSThJTV9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfSU1SMV9FWFRJOElNX1BvcykgICAgICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0lNUjFfRVhUSThJTSAgICAgICAgICAgICAgICAgICAgIFNZU0NGR19JTVIxX0VYVEk4SU1fTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEVuYWJsaW5nIG9mIGludGVycnVwdCBmcm9tIEV4dGVybmFsIEludGVycnVwdCBMaW5lIDggdG8gQ1BVMSAgICAgICovCisjZGVmaW5lIFNZU0NGR19JTVIxX0VYVEk5SU1fUG9zICAgICAgICAgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19JTVIxX0VYVEk5SU1fTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX0lNUjFfRVhUSTlJTV9Qb3MpICAgICAgICAgICAgLyohPCAweDAyMDAwMDAwICovCisjZGVmaW5lIFNZU0NGR19JTVIxX0VYVEk5SU0gICAgICAgICAgICAgICAgICAgICBTWVNDRkdfSU1SMV9FWFRJOUlNX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGluZyBvZiBpbnRlcnJ1cHQgZnJvbSBFeHRlcm5hbCBJbnRlcnJ1cHQgTGluZSA5IHRvIENQVTEgICAgICAqLworI2RlZmluZSBTWVNDRkdfSU1SMV9FWFRJMTBJTV9Qb3MgICAgICAgICAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfSU1SMV9FWFRJMTBJTV9Nc2sgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19JTVIxX0VYVEkxMElNX1BvcykgICAgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLworI2RlZmluZSBTWVNDRkdfSU1SMV9FWFRJMTBJTSAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX0lNUjFfRVhUSTEwSU1fTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxpbmcgb2YgaW50ZXJydXB0IGZyb20gRXh0ZXJuYWwgSW50ZXJydXB0IExpbmUgMTAgdG8gQ1BVMSAgICAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0lNUjFfRVhUSTExSU1fUG9zICAgICAgICAgICAgICAgICgyN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX0lNUjFfRVhUSTExSU1fTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfSU1SMV9FWFRJMTFJTV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0lNUjFfRVhUSTExSU0gICAgICAgICAgICAgICAgICAgIFNZU0NGR19JTVIxX0VYVEkxMUlNX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IEVuYWJsaW5nIG9mIGludGVycnVwdCBmcm9tIEV4dGVybmFsIEludGVycnVwdCBMaW5lIDExIHRvIENQVTEgICAgICovCisjZGVmaW5lIFNZU0NGR19JTVIxX0VYVEkxMklNX1BvcyAgICAgICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19JTVIxX0VYVEkxMklNX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX0lNUjFfRVhUSTEySU1fUG9zKSAgICAgICAgICAgLyohPCAweDEwMDAwMDAwICovCisjZGVmaW5lIFNZU0NGR19JTVIxX0VYVEkxMklNICAgICAgICAgICAgICAgICAgICBTWVNDRkdfSU1SMV9FWFRJMTJJTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGluZyBvZiBpbnRlcnJ1cHQgZnJvbSBFeHRlcm5hbCBJbnRlcnJ1cHQgTGluZSAxMiB0byBDUFUxICAgICAqLworI2RlZmluZSBTWVNDRkdfSU1SMV9FWFRJMTNJTV9Qb3MgICAgICAgICAgICAgICAgKDI5VSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfSU1SMV9FWFRJMTNJTV9Nc2sgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19JTVIxX0VYVEkxM0lNX1BvcykgICAgICAgICAgIC8qITwgMHgyMDAwMDAwMCAqLworI2RlZmluZSBTWVNDRkdfSU1SMV9FWFRJMTNJTSAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX0lNUjFfRVhUSTEzSU1fTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxpbmcgb2YgaW50ZXJydXB0IGZyb20gRXh0ZXJuYWwgSW50ZXJydXB0IExpbmUgMTMgdG8gQ1BVMSAgICAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0lNUjFfRVhUSTE0SU1fUG9zICAgICAgICAgICAgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX0lNUjFfRVhUSTE0SU1fTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfSU1SMV9FWFRJMTRJTV9Qb3MpICAgICAgICAgICAvKiE8IDB4NDAwMDAwMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0lNUjFfRVhUSTE0SU0gICAgICAgICAgICAgICAgICAgIFNZU0NGR19JTVIxX0VYVEkxNElNX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IEVuYWJsaW5nIG9mIGludGVycnVwdCBmcm9tIEV4dGVybmFsIEludGVycnVwdCBMaW5lIDE0IHRvIENQVTEgICAgICovCisjZGVmaW5lIFNZU0NGR19JTVIxX0VYVEkxNUlNX1BvcyAgICAgICAgICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19JTVIxX0VYVEkxNUlNX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX0lNUjFfRVhUSTE1SU1fUG9zKSAgICAgICAgICAgLyohPCAweDgwMDAwMDAwICovCisjZGVmaW5lIFNZU0NGR19JTVIxX0VYVEkxNUlNICAgICAgICAgICAgICAgICAgICBTWVNDRkdfSU1SMV9FWFRJMTVJTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGluZyBvZiBpbnRlcnJ1cHQgZnJvbSBFeHRlcm5hbCBJbnRlcnJ1cHQgTGluZSAxNSB0byBDUFUxICAgICAqLworCisvKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTWVNDRkdfSU1SMiByZWdpc3RlciAoSW50ZXJydXB0IG1hc2tzIGNvbnRyb2wgYW5kIHN0YXR1cyByZWdpc3RlciBvbiBDUFUxIC0gcGFydCAyKSAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBTWVNDRkdfSU1SMl9QVk0xSU1fUG9zICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfSU1SMl9QVk0xSU1fTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19JTVIyX1BWTTFJTV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBTWVNDRkdfSU1SMl9QVk0xSU0gICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX0lNUjJfUFZNMUlNX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxpbmcgb2YgaW50ZXJydXB0IGZyb20gUG93ZXIgVm9sdGFnZSBNb25pdG9yaW5nIDEgdG8gQ1BVMSAgICAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0lNUjJfUFZNM0lNX1BvcyAgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX0lNUjJfUFZNM0lNX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfSU1SMl9QVk0zSU1fUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0lNUjJfUFZNM0lNICAgICAgICAgICAgICAgICAgICAgIFNZU0NGR19JTVIyX1BWTTNJTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEVuYWJsaW5nIG9mIGludGVycnVwdCBmcm9tIFBvd2VyIFZvbHRhZ2UgTW9uaXRvcmluZyAzIHRvIENQVTEgICAgICovCisjZGVmaW5lIFNZU0NGR19JTVIyX1BWRElNX1BvcyAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19JTVIyX1BWRElNX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX0lNUjJfUFZESU1fUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovCisjZGVmaW5lIFNZU0NGR19JTVIyX1BWRElNICAgICAgICAgICAgICAgICAgICAgICBTWVNDRkdfSU1SMl9QVkRJTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGluZyBvZiBpbnRlcnJ1cHQgZnJvbSBQb3dlciBWb2x0YWdlIERldGVjdG9yIHRvIENQVTEgICAgICAgICAqLworCisvKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTWVNDRkdfQzJJTVIxIHJlZ2lzdGVyIChJbnRlcnJ1cHQgbWFza3MgY29udHJvbCBhbmQgc3RhdHVzIHJlZ2lzdGVyIG9uIENQVTIgLSBwYXJ0IDEpICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFNZU0NGR19DMklNUjFfUlRDU1RBTVBUQU1QTFNFQ1NTSU1fUG9zICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMV9SVENTVEFNUFRBTVBMU0VDU1NJTV9Nc2sgICAgKDB4MVVMIDw8IFNZU0NGR19DMklNUjFfUlRDU1RBTVBUQU1QTFNFQ1NTSU1fUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMV9SVENTVEFNUFRBTVBMU0VDU1NJTSAgICAgICAgU1lTQ0ZHX0MySU1SMV9SVENTVEFNUFRBTVBMU0VDU1NJTV9Nc2sgICAgICAgICAgICAvKiAhPCBFbmFibGluZyBvZiBpbnRlcnJ1cHQgZnJvbSBSVEMgVGltZVN0YW1wLCBSVEMgVGFtcGVycworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5kIExTRSBDbG9jayBTZWN1cml0eSBTeXN0ZW0gdG8gQ1BVMiAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBTWVNDRkdfQzJJTVIxX1JUQ1dLVVBJTV9Qb3MgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfQzJJTVIxX1JUQ1dLVVBJTV9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19DMklNUjFfUlRDV0tVUElNX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIFNZU0NGR19DMklNUjFfUlRDV0tVUElNICAgICAgICAgICAgICAgICBTWVNDRkdfQzJJTVIxX1JUQ1dLVVBJTV9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IEVuYWJsaW5nIG9mIGludGVycnVwdCBmcm9tIFJUQyBXYWtldXAgdG8gQ1BVMiAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIFNZU0NGR19DMklNUjFfUlRDQUxBUk1JTV9Qb3MgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19DMklNUjFfUlRDQUxBUk1JTV9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX0MySU1SMV9SVENBTEFSTUlNX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMV9SVENBTEFSTUlNICAgICAgICAgICAgICAgIFNZU0NGR19DMklNUjFfUlRDQUxBUk1JTV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxpbmcgb2YgaW50ZXJydXB0IGZyb20gUlRDIEFsYXJtcyB0byBDUFUyICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMV9SQ0NJTV9Qb3MgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMV9SQ0NJTV9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfQzJJTVIxX1JDQ0lNX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBTWVNDRkdfQzJJTVIxX1JDQ0lNICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX0MySU1SMV9SQ0NJTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGluZyBvZiBpbnRlcnJ1cHQgZnJvbSBSQ0MgdG8gQ1BVMiAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBTWVNDRkdfQzJJTVIxX0ZMQVNISU1fUG9zICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfQzJJTVIxX0ZMQVNISU1fTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19DMklNUjFfRkxBU0hJTV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIFNZU0NGR19DMklNUjFfRkxBU0hJTSAgICAgICAgICAgICAgICAgICBTWVNDRkdfQzJJTVIxX0ZMQVNISU1fTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEVuYWJsaW5nIG9mIGludGVycnVwdCBmcm9tIEZMQVNIIHRvIENQVTIgICAgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIFNZU0NGR19DMklNUjFfUEtBSU1fUG9zICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19DMklNUjFfUEtBSU1fTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX0MySU1SMV9QS0FJTV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMV9QS0FJTSAgICAgICAgICAgICAgICAgICAgIFNZU0NGR19DMklNUjFfUEtBSU1fTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxpbmcgb2YgaW50ZXJydXB0IGZyb20gUHVibGljIEtleSBBY2NlbGVyYXRvciB0byBDUFUyICAgICAgICAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMV9STkdJTV9Qb3MgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMV9STkdJTV9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfQzJJTVIxX1JOR0lNX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBTWVNDRkdfQzJJTVIxX1JOR0lNICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX0MySU1SMV9STkdJTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGluZyBvZiBpbnRlcnJ1cHQgZnJvbSBSYW5kb20gTnVtYmVyIEdlbmVyYXRvciB0byBDUFUyICAgICAgICAqLworI2RlZmluZSBTWVNDRkdfQzJJTVIxX0FFUzFJTV9Qb3MgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfQzJJTVIxX0FFUzFJTV9Nc2sgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19DMklNUjFfQUVTMUlNX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIFNZU0NGR19DMklNUjFfQUVTMUlNICAgICAgICAgICAgICAgICAgICBTWVNDRkdfQzJJTVIxX0FFUzFJTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEVuYWJsaW5nIG9mIGludGVycnVwdCBmcm9tIEFkdmFuY2VkIEVuY3J5cHRpb24gU3RhbmRhcmQgMSB0byBDUFUyICovCisjZGVmaW5lIFNZU0NGR19DMklNUjFfQ09NUElNX1BvcyAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19DMklNUjFfQ09NUElNX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX0MySU1SMV9DT01QSU1fUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMV9DT01QSU0gICAgICAgICAgICAgICAgICAgIFNZU0NGR19DMklNUjFfQ09NUElNX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxpbmcgb2YgaW50ZXJydXB0IGZyb20gQ29tcGFyYXRvciB0byBDUFUyICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMV9BRENJTV9Qb3MgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMV9BRENJTV9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfQzJJTVIxX0FEQ0lNX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBTWVNDRkdfQzJJTVIxX0FEQ0lNICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX0MySU1SMV9BRENJTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGluZyBvZiBpbnRlcnJ1cHQgZnJvbSBBbmFsb2cgRGlnaXRhbCBDb252ZXJ0ZXIgdG8gQ1BVMiAgICAgICAqLworI2RlZmluZSBTWVNDRkdfQzJJTVIxX0VYVEkwSU1fUG9zICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfQzJJTVIxX0VYVEkwSU1fTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19DMklNUjFfRVhUSTBJTV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIFNZU0NGR19DMklNUjFfRVhUSTBJTSAgICAgICAgICAgICAgICAgICBTWVNDRkdfQzJJTVIxX0VYVEkwSU1fTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEVuYWJsaW5nIG9mIGludGVycnVwdCBmcm9tIEV4dGVybmFsIEludGVycnVwdCBMaW5lIDAgdG8gQ1BVMiAgICAgICovCisjZGVmaW5lIFNZU0NGR19DMklNUjFfRVhUSTFJTV9Qb3MgICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19DMklNUjFfRVhUSTFJTV9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX0MySU1SMV9FWFRJMUlNX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMV9FWFRJMUlNICAgICAgICAgICAgICAgICAgIFNZU0NGR19DMklNUjFfRVhUSTFJTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxpbmcgb2YgaW50ZXJydXB0IGZyb20gRXh0ZXJuYWwgSW50ZXJydXB0IExpbmUgMSB0byBDUFUyICAgICAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMV9FWFRJMklNX1BvcyAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMV9FWFRJMklNX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfQzJJTVIxX0VYVEkySU1fUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLworI2RlZmluZSBTWVNDRkdfQzJJTVIxX0VYVEkySU0gICAgICAgICAgICAgICAgICAgU1lTQ0ZHX0MySU1SMV9FWFRJMklNX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGluZyBvZiBpbnRlcnJ1cHQgZnJvbSBFeHRlcm5hbCBJbnRlcnJ1cHQgTGluZSAyIHRvIENQVTIgICAgICAqLworI2RlZmluZSBTWVNDRkdfQzJJTVIxX0VYVEkzSU1fUG9zICAgICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfQzJJTVIxX0VYVEkzSU1fTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19DMklNUjFfRVhUSTNJTV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovCisjZGVmaW5lIFNZU0NGR19DMklNUjFfRVhUSTNJTSAgICAgICAgICAgICAgICAgICBTWVNDRkdfQzJJTVIxX0VYVEkzSU1fTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEVuYWJsaW5nIG9mIGludGVycnVwdCBmcm9tIEV4dGVybmFsIEludGVycnVwdCBMaW5lIDMgdG8gQ1BVMiAgICAgICovCisjZGVmaW5lIFNZU0NGR19DMklNUjFfRVhUSTRJTV9Qb3MgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19DMklNUjFfRVhUSTRJTV9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX0MySU1SMV9FWFRJNElNX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMV9FWFRJNElNICAgICAgICAgICAgICAgICAgIFNZU0NGR19DMklNUjFfRVhUSTRJTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxpbmcgb2YgaW50ZXJydXB0IGZyb20gRXh0ZXJuYWwgSW50ZXJydXB0IExpbmUgNCB0byBDUFUyICAgICAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMV9FWFRJNUlNX1BvcyAgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMV9FWFRJNUlNX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfQzJJTVIxX0VYVEk1SU1fUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLworI2RlZmluZSBTWVNDRkdfQzJJTVIxX0VYVEk1SU0gICAgICAgICAgICAgICAgICAgU1lTQ0ZHX0MySU1SMV9FWFRJNUlNX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGluZyBvZiBpbnRlcnJ1cHQgZnJvbSBFeHRlcm5hbCBJbnRlcnJ1cHQgTGluZSA1IHRvIENQVTIgICAgICAqLworI2RlZmluZSBTWVNDRkdfQzJJTVIxX0VYVEk2SU1fUG9zICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfQzJJTVIxX0VYVEk2SU1fTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19DMklNUjFfRVhUSTZJTV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovCisjZGVmaW5lIFNZU0NGR19DMklNUjFfRVhUSTZJTSAgICAgICAgICAgICAgICAgICBTWVNDRkdfQzJJTVIxX0VYVEk2SU1fTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEVuYWJsaW5nIG9mIGludGVycnVwdCBmcm9tIEV4dGVybmFsIEludGVycnVwdCBMaW5lIDYgdG8gQ1BVMiAgICAgICovCisjZGVmaW5lIFNZU0NGR19DMklNUjFfRVhUSTdJTV9Qb3MgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19DMklNUjFfRVhUSTdJTV9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX0MySU1SMV9FWFRJN0lNX1BvcykgICAgICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMV9FWFRJN0lNICAgICAgICAgICAgICAgICAgIFNZU0NGR19DMklNUjFfRVhUSTdJTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxpbmcgb2YgaW50ZXJydXB0IGZyb20gRXh0ZXJuYWwgSW50ZXJydXB0IExpbmUgNyB0byBDUFUyICAgICAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMV9FWFRJOElNX1BvcyAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMV9FWFRJOElNX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfQzJJTVIxX0VYVEk4SU1fUG9zKSAgICAgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLworI2RlZmluZSBTWVNDRkdfQzJJTVIxX0VYVEk4SU0gICAgICAgICAgICAgICAgICAgU1lTQ0ZHX0MySU1SMV9FWFRJOElNX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGluZyBvZiBpbnRlcnJ1cHQgZnJvbSBFeHRlcm5hbCBJbnRlcnJ1cHQgTGluZSA4IHRvIENQVTIgICAgICAqLworI2RlZmluZSBTWVNDRkdfQzJJTVIxX0VYVEk5SU1fUG9zICAgICAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfQzJJTVIxX0VYVEk5SU1fTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19DMklNUjFfRVhUSTlJTV9Qb3MpICAgICAgICAgICAgLyohPCAweDAyMDAwMDAwICovCisjZGVmaW5lIFNZU0NGR19DMklNUjFfRVhUSTlJTSAgICAgICAgICAgICAgICAgICBTWVNDRkdfQzJJTVIxX0VYVEk5SU1fTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEVuYWJsaW5nIG9mIGludGVycnVwdCBmcm9tIEV4dGVybmFsIEludGVycnVwdCBMaW5lIDkgdG8gQ1BVMiAgICAgICovCisjZGVmaW5lIFNZU0NGR19DMklNUjFfRVhUSTEwSU1fUG9zICAgICAgICAgICAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19DMklNUjFfRVhUSTEwSU1fTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX0MySU1SMV9FWFRJMTBJTV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMV9FWFRJMTBJTSAgICAgICAgICAgICAgICAgIFNZU0NGR19DMklNUjFfRVhUSTEwSU1fTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxpbmcgb2YgaW50ZXJydXB0IGZyb20gRXh0ZXJuYWwgSW50ZXJydXB0IExpbmUgMTAgdG8gQ1BVMiAgICAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMV9FWFRJMTFJTV9Qb3MgICAgICAgICAgICAgICgyN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMV9FWFRJMTFJTV9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfQzJJTVIxX0VYVEkxMUlNX1BvcykgICAgICAgICAgIC8qITwgMHgwODAwMDAwMCAqLworI2RlZmluZSBTWVNDRkdfQzJJTVIxX0VYVEkxMUlNICAgICAgICAgICAgICAgICAgU1lTQ0ZHX0MySU1SMV9FWFRJMTFJTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGluZyBvZiBpbnRlcnJ1cHQgZnJvbSBFeHRlcm5hbCBJbnRlcnJ1cHQgTGluZSAxMSB0byBDUFUyICAgICAqLworI2RlZmluZSBTWVNDRkdfQzJJTVIxX0VYVEkxMklNX1BvcyAgICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfQzJJTVIxX0VYVEkxMklNX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19DMklNUjFfRVhUSTEySU1fUG9zKSAgICAgICAgICAgLyohPCAweDEwMDAwMDAwICovCisjZGVmaW5lIFNZU0NGR19DMklNUjFfRVhUSTEySU0gICAgICAgICAgICAgICAgICBTWVNDRkdfQzJJTVIxX0VYVEkxMklNX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IEVuYWJsaW5nIG9mIGludGVycnVwdCBmcm9tIEV4dGVybmFsIEludGVycnVwdCBMaW5lIDEyIHRvIENQVTIgICAgICovCisjZGVmaW5lIFNZU0NGR19DMklNUjFfRVhUSTEzSU1fUG9zICAgICAgICAgICAgICAoMjlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19DMklNUjFfRVhUSTEzSU1fTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX0MySU1SMV9FWFRJMTNJTV9Qb3MpICAgICAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMV9FWFRJMTNJTSAgICAgICAgICAgICAgICAgIFNZU0NGR19DMklNUjFfRVhUSTEzSU1fTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxpbmcgb2YgaW50ZXJydXB0IGZyb20gRXh0ZXJuYWwgSW50ZXJydXB0IExpbmUgMTMgdG8gQ1BVMiAgICAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMV9FWFRJMTRJTV9Qb3MgICAgICAgICAgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMV9FWFRJMTRJTV9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfQzJJTVIxX0VYVEkxNElNX1BvcykgICAgICAgICAgIC8qITwgMHg0MDAwMDAwMCAqLworI2RlZmluZSBTWVNDRkdfQzJJTVIxX0VYVEkxNElNICAgICAgICAgICAgICAgICAgU1lTQ0ZHX0MySU1SMV9FWFRJMTRJTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGluZyBvZiBpbnRlcnJ1cHQgZnJvbSBFeHRlcm5hbCBJbnRlcnJ1cHQgTGluZSAxNCB0byBDUFUyICAgICAqLworI2RlZmluZSBTWVNDRkdfQzJJTVIxX0VYVEkxNUlNX1BvcyAgICAgICAgICAgICAgKDMxVSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfQzJJTVIxX0VYVEkxNUlNX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19DMklNUjFfRVhUSTE1SU1fUG9zKSAgICAgICAgICAgLyohPCAweDgwMDAwMDAwICovCisjZGVmaW5lIFNZU0NGR19DMklNUjFfRVhUSTE1SU0gICAgICAgICAgICAgICAgICBTWVNDRkdfQzJJTVIxX0VYVEkxNUlNX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IEVuYWJsaW5nIG9mIGludGVycnVwdCBmcm9tIEV4dGVybmFsIEludGVycnVwdCBMaW5lIDE1IHRvIENQVTIgICAgICovCisKKy8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNZU0NGR19DMklNUjIgcmVnaXN0ZXIgKEludGVycnVwdCBtYXNrcyBjb250cm9sIGFuZCBzdGF0dXMgcmVnaXN0ZXIgb24gQ1BVMiAtIHBhcnQgMikgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMl9ETUExQ0gxSU1fUG9zICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMl9ETUExQ0gxSU1fTXNrICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfQzJJTVIyX0RNQTFDSDFJTV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBTWVNDRkdfQzJJTVIyX0RNQTFDSDFJTSAgICAgICAgICAgICAgICAgU1lTQ0ZHX0MySU1SMl9ETUExQ0gxSU1fTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGluZyBvZiBpbnRlcnJ1cHQgZnJvbSBETUExIENoYW5uZWwgMSB0byBDUFUyICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBTWVNDRkdfQzJJTVIyX0RNQTFDSDJJTV9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfQzJJTVIyX0RNQTFDSDJJTV9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19DMklNUjJfRE1BMUNIMklNX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFNZU0NGR19DMklNUjJfRE1BMUNIMklNICAgICAgICAgICAgICAgICBTWVNDRkdfQzJJTVIyX0RNQTFDSDJJTV9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IEVuYWJsaW5nIG9mIGludGVycnVwdCBmcm9tIERNQTEgQ2hhbm5lbCAyIHRvIENQVTIgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIFNZU0NGR19DMklNUjJfRE1BMUNIM0lNX1BvcyAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19DMklNUjJfRE1BMUNIM0lNX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX0MySU1SMl9ETUExQ0gzSU1fUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMl9ETUExQ0gzSU0gICAgICAgICAgICAgICAgIFNZU0NGR19DMklNUjJfRE1BMUNIM0lNX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxpbmcgb2YgaW50ZXJydXB0IGZyb20gRE1BMSBDaGFubmVsIDMgdG8gQ1BVMiAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMl9ETUExQ0g0SU1fUG9zICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMl9ETUExQ0g0SU1fTXNrICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfQzJJTVIyX0RNQTFDSDRJTV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBTWVNDRkdfQzJJTVIyX0RNQTFDSDRJTSAgICAgICAgICAgICAgICAgU1lTQ0ZHX0MySU1SMl9ETUExQ0g0SU1fTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGluZyBvZiBpbnRlcnJ1cHQgZnJvbSBETUExIENoYW5uZWwgNCB0byBDUFUyICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBTWVNDRkdfQzJJTVIyX0RNQTFDSDVJTV9Qb3MgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfQzJJTVIyX0RNQTFDSDVJTV9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19DMklNUjJfRE1BMUNINUlNX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIFNZU0NGR19DMklNUjJfRE1BMUNINUlNICAgICAgICAgICAgICAgICBTWVNDRkdfQzJJTVIyX0RNQTFDSDVJTV9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IEVuYWJsaW5nIG9mIGludGVycnVwdCBmcm9tIERNQTEgQ2hhbm5lbCA1IHRvIENQVTIgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIFNZU0NGR19DMklNUjJfRE1BMUNINklNX1BvcyAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19DMklNUjJfRE1BMUNINklNX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX0MySU1SMl9ETUExQ0g2SU1fUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMl9ETUExQ0g2SU0gICAgICAgICAgICAgICAgIFNZU0NGR19DMklNUjJfRE1BMUNINklNX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxpbmcgb2YgaW50ZXJydXB0IGZyb20gRE1BMSBDaGFubmVsIDYgdG8gQ1BVMiAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMl9ETUExQ0g3SU1fUG9zICAgICAgICAgICAgICg2VSkKKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMl9ETUExQ0g3SU1fTXNrICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfQzJJTVIyX0RNQTFDSDdJTV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBTWVNDRkdfQzJJTVIyX0RNQTFDSDdJTSAgICAgICAgICAgICAgICAgU1lTQ0ZHX0MySU1SMl9ETUExQ0g3SU1fTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGluZyBvZiBpbnRlcnJ1cHQgZnJvbSBETUExIENoYW5uZWwgNyB0byBDUFUyICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBTWVNDRkdfQzJJTVIyX0RNQTJDSDFJTV9Qb3MgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfQzJJTVIyX0RNQTJDSDFJTV9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19DMklNUjJfRE1BMkNIMUlNX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIFNZU0NGR19DMklNUjJfRE1BMkNIMUlNICAgICAgICAgICAgICAgICBTWVNDRkdfQzJJTVIyX0RNQTJDSDFJTV9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IEVuYWJsaW5nIG9mIGludGVycnVwdCBmcm9tIERNQTIgQ2hhbm5lbCAxIHRvIENQVTIgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIFNZU0NGR19DMklNUjJfRE1BMkNIMklNX1BvcyAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19DMklNUjJfRE1BMkNIMklNX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX0MySU1SMl9ETUEyQ0gySU1fUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMl9ETUEyQ0gySU0gICAgICAgICAgICAgICAgIFNZU0NGR19DMklNUjJfRE1BMkNIMklNX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxpbmcgb2YgaW50ZXJydXB0IGZyb20gRE1BMiBDaGFubmVsIDIgdG8gQ1BVMiAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMl9ETUEyQ0gzSU1fUG9zICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMl9ETUEyQ0gzSU1fTXNrICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfQzJJTVIyX0RNQTJDSDNJTV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLworI2RlZmluZSBTWVNDRkdfQzJJTVIyX0RNQTJDSDNJTSAgICAgICAgICAgICAgICAgU1lTQ0ZHX0MySU1SMl9ETUEyQ0gzSU1fTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGluZyBvZiBpbnRlcnJ1cHQgZnJvbSBETUEyIENoYW5uZWwgMyB0byBDUFUyICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBTWVNDRkdfQzJJTVIyX0RNQTJDSDRJTV9Qb3MgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfQzJJTVIyX0RNQTJDSDRJTV9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19DMklNUjJfRE1BMkNINElNX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIFNZU0NGR19DMklNUjJfRE1BMkNINElNICAgICAgICAgICAgICAgICBTWVNDRkdfQzJJTVIyX0RNQTJDSDRJTV9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IEVuYWJsaW5nIG9mIGludGVycnVwdCBmcm9tIERNQTIgQ2hhbm5lbCA0IHRvIENQVTIgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIFNZU0NGR19DMklNUjJfRE1BMkNINUlNX1BvcyAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19DMklNUjJfRE1BMkNINUlNX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX0MySU1SMl9ETUEyQ0g1SU1fUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMl9ETUEyQ0g1SU0gICAgICAgICAgICAgICAgIFNZU0NGR19DMklNUjJfRE1BMkNINUlNX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxpbmcgb2YgaW50ZXJydXB0IGZyb20gRE1BMiBDaGFubmVsIDUgdG8gQ1BVMiAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMl9ETUEyQ0g2SU1fUG9zICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMl9ETUEyQ0g2SU1fTXNrICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfQzJJTVIyX0RNQTJDSDZJTV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLworI2RlZmluZSBTWVNDRkdfQzJJTVIyX0RNQTJDSDZJTSAgICAgICAgICAgICAgICAgU1lTQ0ZHX0MySU1SMl9ETUEyQ0g2SU1fTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGluZyBvZiBpbnRlcnJ1cHQgZnJvbSBETUEyIENoYW5uZWwgNiB0byBDUFUyICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBTWVNDRkdfQzJJTVIyX0RNQTJDSDdJTV9Qb3MgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfQzJJTVIyX0RNQTJDSDdJTV9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19DMklNUjJfRE1BMkNIN0lNX1BvcykgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIFNZU0NGR19DMklNUjJfRE1BMkNIN0lNICAgICAgICAgICAgICAgICBTWVNDRkdfQzJJTVIyX0RNQTJDSDdJTV9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IEVuYWJsaW5nIG9mIGludGVycnVwdCBmcm9tIERNQTIgQ2hhbm5lbCA3IHRvIENQVTIgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIFNZU0NGR19DMklNUjJfRE1BTVVYMUlNX1BvcyAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19DMklNUjJfRE1BTVVYMUlNX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX0MySU1SMl9ETUFNVVgxSU1fUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMl9ETUFNVVgxSU0gICAgICAgICAgICAgICAgIFNZU0NGR19DMklNUjJfRE1BTVVYMUlNX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxpbmcgb2YgaW50ZXJydXB0IGZyb20gRE1BTVVYMSB0byBDUFUyICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMl9QVk0xSU1fUG9zICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMl9QVk0xSU1fTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfQzJJTVIyX1BWTTFJTV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBTWVNDRkdfQzJJTVIyX1BWTTFJTSAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX0MySU1SMl9QVk0xSU1fTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGluZyBvZiBpbnRlcnJ1cHQgZnJvbSBQb3dlciBWb2x0YWdlIE1vbml0b3JpbmcgMSB0byBDUFUyICAgICAqLworI2RlZmluZSBTWVNDRkdfQzJJTVIyX1BWTTNJTV9Qb3MgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfQzJJTVIyX1BWTTNJTV9Nc2sgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19DMklNUjJfUFZNM0lNX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovCisjZGVmaW5lIFNZU0NGR19DMklNUjJfUFZNM0lNICAgICAgICAgICAgICAgICAgICBTWVNDRkdfQzJJTVIyX1BWTTNJTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEVuYWJsaW5nIG9mIGludGVycnVwdCBmcm9tIFBvd2VyIFZvbHRhZ2UgTW9uaXRvcmluZyAzIHRvIENQVTIgICAgICovCisjZGVmaW5lIFNZU0NGR19DMklNUjJfUFZESU1fUG9zICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19DMklNUjJfUFZESU1fTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX0MySU1SMl9QVkRJTV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMl9QVkRJTSAgICAgICAgICAgICAgICAgICAgIFNZU0NGR19DMklNUjJfUFZESU1fTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxpbmcgb2YgaW50ZXJydXB0IGZyb20gUG93ZXIgVm9sdGFnZSBEZXRlY3RvciB0byBDUFUyICAgICAgICAgKi8KKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMl9UU0NJTV9Qb3MgICAgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX0MySU1SMl9UU0NJTV9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfQzJJTVIyX1RTQ0lNX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLworI2RlZmluZSBTWVNDRkdfQzJJTVIyX1RTQ0lNICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX0MySU1SMl9UU0NJTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGluZyBvZiBpbnRlcnJ1cHQgZnJvbSBUb3VjaCBTZW5zaW5nIENvbnRyb2xsZXIgdG8gQ1BVMiAgICAgICAqLworCisvKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTWVNDRkdfU0lQQ1IgcmVnaXN0ZXIgKFNZU0NGRyBzZWN1cmUgSVAgY29udHJvbCByZWdpc3RlcikgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFNZU0NGR19TSVBDUl9TQUVTMV9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19TSVBDUl9TQUVTMV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX1NJUENSX1NBRVMxX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgU1lTQ0ZHX1NJUENSX1NBRVMxICAgICAgICAgICAgICAgICAgICAgIFNZU0NGR19TSVBDUl9TQUVTMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxpbmcgdGhlIHNlY3VyaXR5IGFjY2VzcyBvZiBBZHZhbmNlZCBFbmNyeXB0aW9uIFN0YW5kYXJkIDEgS0VZWzc6MF0gKi8KKyNkZWZpbmUgU1lTQ0ZHX1NJUENSX1NBRVMyX1BvcyAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgU1lTQ0ZHX1NJUENSX1NBRVMyX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfU0lQQ1JfU0FFUzJfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBTWVNDRkdfU0lQQ1JfU0FFUzIgICAgICAgICAgICAgICAgICAgICAgU1lTQ0ZHX1NJUENSX1NBRVMyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGluZyB0aGUgc2VjdXJpdHkgYWNjZXNzIG9mIEFkdmFuY2VkIEVuY3J5cHRpb24gU3RhbmRhcmQgMiAgICAgICAgICAqLworI2RlZmluZSBTWVNDRkdfU0lQQ1JfU1BLQV9Qb3MgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBTWVNDRkdfU0lQQ1JfU1BLQV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19TSVBDUl9TUEtBX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIFNZU0NGR19TSVBDUl9TUEtBICAgICAgICAgICAgICAgICAgICAgICBTWVNDRkdfU0lQQ1JfU1BLQV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEVuYWJsaW5nIHRoZSBzZWN1cml0eSBhY2Nlc3Mgb2YgUHVibGljIEtleSBBY2NlbGVyYXRvciAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIFNZU0NGR19TSVBDUl9TUk5HX1BvcyAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFNZU0NGR19TSVBDUl9TUk5HX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1lTQ0ZHX1NJUENSX1NSTkdfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgU1lTQ0ZHX1NJUENSX1NSTkcgICAgICAgICAgICAgICAgICAgICAgIFNZU0NGR19TSVBDUl9TUk5HX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxpbmcgdGhlIHNlY3VyaXR5IGFjY2VzcyBvZiBSYW5kb20gTnVtYmVyIEdlbmVyYXRvciAgICAgICAgICAgICAgICAgKi8KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisvKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRJTSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9DUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBUSU1fQ1IxX0NFTl9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ1IxX0NFTl9Nc2sgICAgICAgICAgICgweDFVTCA8PCBUSU1fQ1IxX0NFTl9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBUSU1fQ1IxX0NFTiAgICAgICAgICAgICAgIFRJTV9DUjFfQ0VOX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDb3VudGVyIGVuYWJsZSAqLworI2RlZmluZSBUSU1fQ1IxX1VESVNfUG9zICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ1IxX1VESVNfTXNrICAgICAgICAgICgweDFVTCA8PCBUSU1fQ1IxX1VESVNfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBUSU1fQ1IxX1VESVMgICAgICAgICAgICAgIFRJTV9DUjFfVURJU19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxVcGRhdGUgZGlzYWJsZSAqLworI2RlZmluZSBUSU1fQ1IxX1VSU19Qb3MgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ1IxX1VSU19Nc2sgICAgICAgICAgICgweDFVTCA8PCBUSU1fQ1IxX1VSU19Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBUSU1fQ1IxX1VSUyAgICAgICAgICAgICAgIFRJTV9DUjFfVVJTX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxVcGRhdGUgcmVxdWVzdCBzb3VyY2UgKi8KKyNkZWZpbmUgVElNX0NSMV9PUE1fUG9zICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0NSMV9PUE1fTXNrICAgICAgICAgICAoMHgxVUwgPDwgVElNX0NSMV9PUE1fUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgVElNX0NSMV9PUE0gICAgICAgICAgICAgICBUSU1fQ1IxX09QTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8T25lIHB1bHNlIG1vZGUgKi8KKyNkZWZpbmUgVElNX0NSMV9ESVJfUG9zICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0NSMV9ESVJfTXNrICAgICAgICAgICAoMHgxVUwgPDwgVElNX0NSMV9ESVJfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgVElNX0NSMV9ESVIgICAgICAgICAgICAgICBUSU1fQ1IxX0RJUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8RGlyZWN0aW9uICovCisKKyNkZWZpbmUgVElNX0NSMV9DTVNfUG9zICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0NSMV9DTVNfTXNrICAgICAgICAgICAoMHgzVUwgPDwgVElNX0NSMV9DTVNfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNjAgKi8KKyNkZWZpbmUgVElNX0NSMV9DTVMgICAgICAgICAgICAgICBUSU1fQ1IxX0NNU19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q01TWzE6MF0gYml0cyAoQ2VudGVyLWFsaWduZWQgbW9kZSBzZWxlY3Rpb24pICovCisjZGVmaW5lIFRJTV9DUjFfQ01TXzAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NSMV9DTVNfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIFRJTV9DUjFfQ01TXzEgICAgICAgICAgICAgKDB4MlUgPDwgVElNX0NSMV9DTVNfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovCisKKyNkZWZpbmUgVElNX0NSMV9BUlBFX1BvcyAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0NSMV9BUlBFX01zayAgICAgICAgICAoMHgxVUwgPDwgVElNX0NSMV9BUlBFX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgVElNX0NSMV9BUlBFICAgICAgICAgICAgICBUSU1fQ1IxX0FSUEVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8QXV0by1yZWxvYWQgcHJlbG9hZCBlbmFibGUgKi8KKworI2RlZmluZSBUSU1fQ1IxX0NLRF9Qb3MgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ1IxX0NLRF9Nc2sgICAgICAgICAgICgweDNVTCA8PCBUSU1fQ1IxX0NLRF9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDMwMCAqLworI2RlZmluZSBUSU1fQ1IxX0NLRCAgICAgICAgICAgICAgIFRJTV9DUjFfQ0tEX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDS0RbMTowXSBiaXRzIChjbG9jayBkaXZpc2lvbikgKi8KKyNkZWZpbmUgVElNX0NSMV9DS0RfMCAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ1IxX0NLRF9Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgVElNX0NSMV9DS0RfMSAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fQ1IxX0NLRF9Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKworI2RlZmluZSBUSU1fQ1IxX1VJRlJFTUFQX1BvcyAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ1IxX1VJRlJFTUFQX01zayAgICAgICgweDFVTCA8PCBUSU1fQ1IxX1VJRlJFTUFQX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLworI2RlZmluZSBUSU1fQ1IxX1VJRlJFTUFQICAgICAgICAgIFRJTV9DUjFfVUlGUkVNQVBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxVcGRhdGUgaW50ZXJydXB0IGZsYWcgcmVtYXAgKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fQ1IyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgVElNX0NSMl9DQ1BDX1BvcyAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0NSMl9DQ1BDX01zayAgICAgICAgICAoMHgxVUwgPDwgVElNX0NSMl9DQ1BDX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgVElNX0NSMl9DQ1BDICAgICAgICAgICAgICBUSU1fQ1IyX0NDUENfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIFByZWxvYWRlZCBDb250cm9sICovCisjZGVmaW5lIFRJTV9DUjJfQ0NVU19Qb3MgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9DUjJfQ0NVU19Nc2sgICAgICAgICAgKDB4MVVMIDw8IFRJTV9DUjJfQ0NVU19Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIFRJTV9DUjJfQ0NVUyAgICAgICAgICAgICAgVElNX0NSMl9DQ1VTX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSBDb250cm9sIFVwZGF0ZSBTZWxlY3Rpb24gKi8KKyNkZWZpbmUgVElNX0NSMl9DQ0RTX1BvcyAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0NSMl9DQ0RTX01zayAgICAgICAgICAoMHgxVUwgPDwgVElNX0NSMl9DQ0RTX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgVElNX0NSMl9DQ0RTICAgICAgICAgICAgICBUSU1fQ1IyX0NDRFNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIERNQSBTZWxlY3Rpb24gKi8KKworI2RlZmluZSBUSU1fQ1IyX01NU19Qb3MgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ1IyX01NU19Nc2sgICAgICAgICAgICgweDdVTCA8PCBUSU1fQ1IyX01NU19Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA3MCAqLworI2RlZmluZSBUSU1fQ1IyX01NUyAgICAgICAgICAgICAgIFRJTV9DUjJfTU1TX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxNTVNbMjowXSBiaXRzIChNYXN0ZXIgTW9kZSBTZWxlY3Rpb24pICovCisjZGVmaW5lIFRJTV9DUjJfTU1TXzAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NSMl9NTVNfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIFRJTV9DUjJfTU1TXzEgICAgICAgICAgICAgKDB4MlUgPDwgVElNX0NSMl9NTVNfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIFRJTV9DUjJfTU1TXzIgICAgICAgICAgICAgKDB4NFUgPDwgVElNX0NSMl9NTVNfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovCisKKyNkZWZpbmUgVElNX0NSMl9USTFTX1BvcyAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0NSMl9USTFTX01zayAgICAgICAgICAoMHgxVUwgPDwgVElNX0NSMl9USTFTX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgVElNX0NSMl9USTFTICAgICAgICAgICAgICBUSU1fQ1IyX1RJMVNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8VEkxIFNlbGVjdGlvbiAqLworI2RlZmluZSBUSU1fQ1IyX09JUzFfUG9zICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ1IyX09JUzFfTXNrICAgICAgICAgICgweDFVTCA8PCBUSU1fQ1IyX09JUzFfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBUSU1fQ1IyX09JUzEgICAgICAgICAgICAgIFRJTV9DUjJfT0lTMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgSWRsZSBzdGF0ZSAxIChPQzEgb3V0cHV0KSAqLworI2RlZmluZSBUSU1fQ1IyX09JUzFOX1BvcyAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ1IyX09JUzFOX01zayAgICAgICAgICgweDFVTCA8PCBUSU1fQ1IyX09JUzFOX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBUSU1fQ1IyX09JUzFOICAgICAgICAgICAgIFRJTV9DUjJfT0lTMU5fTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgSWRsZSBzdGF0ZSAxIChPQzFOIG91dHB1dCkgKi8KKyNkZWZpbmUgVElNX0NSMl9PSVMyX1BvcyAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0NSMl9PSVMyX01zayAgICAgICAgICAoMHgxVUwgPDwgVElNX0NSMl9PSVMyX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgVElNX0NSMl9PSVMyICAgICAgICAgICAgICBUSU1fQ1IyX09JUzJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IElkbGUgc3RhdGUgMiAoT0MyIG91dHB1dCkgKi8KKyNkZWZpbmUgVElNX0NSMl9PSVMyTl9Qb3MgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0NSMl9PSVMyTl9Nc2sgICAgICAgICAoMHgxVUwgPDwgVElNX0NSMl9PSVMyTl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgVElNX0NSMl9PSVMyTiAgICAgICAgICAgICBUSU1fQ1IyX09JUzJOX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IElkbGUgc3RhdGUgMiAoT0MyTiBvdXRwdXQpICovCisjZGVmaW5lIFRJTV9DUjJfT0lTM19Qb3MgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9DUjJfT0lTM19Nc2sgICAgICAgICAgKDB4MVVMIDw8IFRJTV9DUjJfT0lTM19Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIFRJTV9DUjJfT0lTMyAgICAgICAgICAgICAgVElNX0NSMl9PSVMzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPE91dHB1dCBJZGxlIHN0YXRlIDMgKE9DMyBvdXRwdXQpICovCisjZGVmaW5lIFRJTV9DUjJfT0lTM05fUG9zICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9DUjJfT0lTM05fTXNrICAgICAgICAgKDB4MVVMIDw8IFRJTV9DUjJfT0lTM05fUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIFRJTV9DUjJfT0lTM04gICAgICAgICAgICAgVElNX0NSMl9PSVMzTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPE91dHB1dCBJZGxlIHN0YXRlIDMgKE9DM04gb3V0cHV0KSAqLworI2RlZmluZSBUSU1fQ1IyX09JUzRfUG9zICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ1IyX09JUzRfTXNrICAgICAgICAgICgweDFVTCA8PCBUSU1fQ1IyX09JUzRfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLworI2RlZmluZSBUSU1fQ1IyX09JUzQgICAgICAgICAgICAgIFRJTV9DUjJfT0lTNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgSWRsZSBzdGF0ZSA0IChPQzQgb3V0cHV0KSAqLworI2RlZmluZSBUSU1fQ1IyX09JUzVfUG9zICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ1IyX09JUzVfTXNrICAgICAgICAgICgweDFVTCA8PCBUSU1fQ1IyX09JUzVfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBUSU1fQ1IyX09JUzUgICAgICAgICAgICAgIFRJTV9DUjJfT0lTNV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgSWRsZSBzdGF0ZSA1IChPQzUgb3V0cHV0KSAqLworI2RlZmluZSBUSU1fQ1IyX09JUzZfUG9zICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ1IyX09JUzZfTXNrICAgICAgICAgICgweDFVTCA8PCBUSU1fQ1IyX09JUzZfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLworI2RlZmluZSBUSU1fQ1IyX09JUzYgICAgICAgICAgICAgIFRJTV9DUjJfT0lTNl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgSWRsZSBzdGF0ZSA2IChPQzYgb3V0cHV0KSAqLworCisjZGVmaW5lIFRJTV9DUjJfTU1TMl9Qb3MgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9DUjJfTU1TMl9Nc2sgICAgICAgICAgKDB4RlVMIDw8IFRJTV9DUjJfTU1TMl9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwRjAwMDAwICovCisjZGVmaW5lIFRJTV9DUjJfTU1TMiAgICAgICAgICAgICAgVElNX0NSMl9NTVMyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPE1NU1syOjBdIGJpdHMgKE1hc3RlciBNb2RlIFNlbGVjdGlvbikgKi8KKyNkZWZpbmUgVElNX0NSMl9NTVMyXzAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ1IyX01NUzJfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgVElNX0NSMl9NTVMyXzEgICAgICAgICAgICAoMHgyVSA8PCBUSU1fQ1IyX01NUzJfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8KKyNkZWZpbmUgVElNX0NSMl9NTVMyXzIgICAgICAgICAgICAoMHg0VSA8PCBUSU1fQ1IyX01NUzJfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8KKyNkZWZpbmUgVElNX0NSMl9NTVMyXzMgICAgICAgICAgICAoMHg4VSA8PCBUSU1fQ1IyX01NUzJfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fU01DUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgVElNX1NNQ1JfU01TX1BvcyAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX1NNQ1JfU01TX01zayAgICAgICAgICAoMHgxMDAwN1VMIDw8IFRJTV9TTUNSX1NNU19Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDcgKi8KKyNkZWZpbmUgVElNX1NNQ1JfU01TICAgICAgICAgICAgICBUSU1fU01DUl9TTVNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8U01TWzI6MF0gYml0cyAoU2xhdmUgbW9kZSBzZWxlY3Rpb24pICovCisjZGVmaW5lIFRJTV9TTUNSX1NNU18wICAgICAgICAgICAgKDB4MDAwMDFVIDw8IFRJTV9TTUNSX1NNU19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFRJTV9TTUNSX1NNU18xICAgICAgICAgICAgKDB4MDAwMDJVIDw8IFRJTV9TTUNSX1NNU19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFRJTV9TTUNSX1NNU18yICAgICAgICAgICAgKDB4MDAwMDRVIDw8IFRJTV9TTUNSX1NNU19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIFRJTV9TTUNSX1NNU18zICAgICAgICAgICAgKDB4MTAwMDBVIDw8IFRJTV9TTUNSX1NNU19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovCisKKyNkZWZpbmUgVElNX1NNQ1JfT0NDU19Qb3MgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX1NNQ1JfT0NDU19Nc2sgICAgICAgICAoMHgxVUwgPDwgVElNX1NNQ1JfT0NDU19Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgVElNX1NNQ1JfT0NDUyAgICAgICAgICAgICBUSU1fU01DUl9PQ0NTX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE9DUkVGIGNsZWFyIHNlbGVjdGlvbiAqLworCisjZGVmaW5lIFRJTV9TTUNSX1RTX1BvcyAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9TTUNSX1RTX01zayAgICAgICAgICAgKDB4MzAwMDdVTCA8PCBUSU1fU01DUl9UU19Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMzAwMDcwICovCisjZGVmaW5lIFRJTV9TTUNSX1RTICAgICAgICAgICAgICAgVElNX1NNQ1JfVFNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPFRTWzI6MF0gYml0cyAoVHJpZ2dlciBzZWxlY3Rpb24pICovCisjZGVmaW5lIFRJTV9TTUNSX1RTXzAgICAgICAgICAgICAgKDB4MDAwMDFVIDw8IFRJTV9TTUNSX1RTX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIFRJTV9TTUNSX1RTXzEgICAgICAgICAgICAgKDB4MDAwMDJVIDw8IFRJTV9TTUNSX1RTX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIFRJTV9TTUNSX1RTXzIgICAgICAgICAgICAgKDB4MDAwMDRVIDw8IFRJTV9TTUNSX1RTX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIFRJTV9TTUNSX1RTXzMgICAgICAgICAgICAgKDB4MTAwMDBVIDw8IFRJTV9TTUNSX1RTX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovCisjZGVmaW5lIFRJTV9TTUNSX1RTXzQgICAgICAgICAgICAgKDB4MjAwMDBVIDw8IFRJTV9TTUNSX1RTX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovCisKKyNkZWZpbmUgVElNX1NNQ1JfTVNNX1BvcyAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX1NNQ1JfTVNNX01zayAgICAgICAgICAoMHgxVUwgPDwgVElNX1NNQ1JfTVNNX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgVElNX1NNQ1JfTVNNICAgICAgICAgICAgICBUSU1fU01DUl9NU01fTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8TWFzdGVyL3NsYXZlIG1vZGUgKi8KKworI2RlZmluZSBUSU1fU01DUl9FVEZfUG9zICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fU01DUl9FVEZfTXNrICAgICAgICAgICgweEZVTCA8PCBUSU1fU01DUl9FVEZfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMEYwMCAqLworI2RlZmluZSBUSU1fU01DUl9FVEYgICAgICAgICAgICAgIFRJTV9TTUNSX0VURl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxFVEZbMzowXSBiaXRzIChFeHRlcm5hbCB0cmlnZ2VyIGZpbHRlcikgKi8KKyNkZWZpbmUgVElNX1NNQ1JfRVRGXzAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fU01DUl9FVEZfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgVElNX1NNQ1JfRVRGXzEgICAgICAgICAgICAoMHgyVSA8PCBUSU1fU01DUl9FVEZfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgVElNX1NNQ1JfRVRGXzIgICAgICAgICAgICAoMHg0VSA8PCBUSU1fU01DUl9FVEZfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgVElNX1NNQ1JfRVRGXzMgICAgICAgICAgICAoMHg4VSA8PCBUSU1fU01DUl9FVEZfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKworI2RlZmluZSBUSU1fU01DUl9FVFBTX1BvcyAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fU01DUl9FVFBTX01zayAgICAgICAgICgweDNVTCA8PCBUSU1fU01DUl9FVFBTX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMzAwMCAqLworI2RlZmluZSBUSU1fU01DUl9FVFBTICAgICAgICAgICAgIFRJTV9TTUNSX0VUUFNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxFVFBTWzE6MF0gYml0cyAoRXh0ZXJuYWwgdHJpZ2dlciBwcmVzY2FsZXIpICovCisjZGVmaW5lIFRJTV9TTUNSX0VUUFNfMCAgICAgICAgICAgKDB4MVUgPDwgVElNX1NNQ1JfRVRQU19Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIFRJTV9TTUNSX0VUUFNfMSAgICAgICAgICAgKDB4MlUgPDwgVElNX1NNQ1JfRVRQU19Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovCisKKyNkZWZpbmUgVElNX1NNQ1JfRUNFX1BvcyAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX1NNQ1JfRUNFX01zayAgICAgICAgICAoMHgxVUwgPDwgVElNX1NNQ1JfRUNFX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgVElNX1NNQ1JfRUNFICAgICAgICAgICAgICBUSU1fU01DUl9FQ0VfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8RXh0ZXJuYWwgY2xvY2sgZW5hYmxlICovCisjZGVmaW5lIFRJTV9TTUNSX0VUUF9Qb3MgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9TTUNSX0VUUF9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFRJTV9TTUNSX0VUUF9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovCisjZGVmaW5lIFRJTV9TTUNSX0VUUCAgICAgICAgICAgICAgVElNX1NNQ1JfRVRQX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPEV4dGVybmFsIHRyaWdnZXIgcG9sYXJpdHkgKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fRElFUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgVElNX0RJRVJfVUlFX1BvcyAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0RJRVJfVUlFX01zayAgICAgICAgICAoMHgxVUwgPDwgVElNX0RJRVJfVUlFX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgVElNX0RJRVJfVUlFICAgICAgICAgICAgICBUSU1fRElFUl9VSUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8VXBkYXRlIGludGVycnVwdCBlbmFibGUgKi8KKyNkZWZpbmUgVElNX0RJRVJfQ0MxSUVfUG9zICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0RJRVJfQ0MxSUVfTXNrICAgICAgICAoMHgxVUwgPDwgVElNX0RJRVJfQ0MxSUVfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgVElNX0RJRVJfQ0MxSUUgICAgICAgICAgICBUSU1fRElFUl9DQzFJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDEgaW50ZXJydXB0IGVuYWJsZSAqLworI2RlZmluZSBUSU1fRElFUl9DQzJJRV9Qb3MgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fRElFUl9DQzJJRV9Nc2sgICAgICAgICgweDFVTCA8PCBUSU1fRElFUl9DQzJJRV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBUSU1fRElFUl9DQzJJRSAgICAgICAgICAgIFRJTV9ESUVSX0NDMklFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMiBpbnRlcnJ1cHQgZW5hYmxlICovCisjZGVmaW5lIFRJTV9ESUVSX0NDM0lFX1BvcyAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9ESUVSX0NDM0lFX01zayAgICAgICAgKDB4MVVMIDw8IFRJTV9ESUVSX0NDM0lFX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIFRJTV9ESUVSX0NDM0lFICAgICAgICAgICAgVElNX0RJRVJfQ0MzSUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAzIGludGVycnVwdCBlbmFibGUgKi8KKyNkZWZpbmUgVElNX0RJRVJfQ0M0SUVfUG9zICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0RJRVJfQ0M0SUVfTXNrICAgICAgICAoMHgxVUwgPDwgVElNX0RJRVJfQ0M0SUVfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgVElNX0RJRVJfQ0M0SUUgICAgICAgICAgICBUSU1fRElFUl9DQzRJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDQgaW50ZXJydXB0IGVuYWJsZSAqLworI2RlZmluZSBUSU1fRElFUl9DT01JRV9Qb3MgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fRElFUl9DT01JRV9Nc2sgICAgICAgICgweDFVTCA8PCBUSU1fRElFUl9DT01JRV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBUSU1fRElFUl9DT01JRSAgICAgICAgICAgIFRJTV9ESUVSX0NPTUlFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDT00gaW50ZXJydXB0IGVuYWJsZSAqLworI2RlZmluZSBUSU1fRElFUl9USUVfUG9zICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fRElFUl9USUVfTXNrICAgICAgICAgICgweDFVTCA8PCBUSU1fRElFUl9USUVfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBUSU1fRElFUl9USUUgICAgICAgICAgICAgIFRJTV9ESUVSX1RJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxUcmlnZ2VyIGludGVycnVwdCBlbmFibGUgKi8KKyNkZWZpbmUgVElNX0RJRVJfQklFX1BvcyAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0RJRVJfQklFX01zayAgICAgICAgICAoMHgxVUwgPDwgVElNX0RJRVJfQklFX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgVElNX0RJRVJfQklFICAgICAgICAgICAgICBUSU1fRElFUl9CSUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8QnJlYWsgaW50ZXJydXB0IGVuYWJsZSAqLworI2RlZmluZSBUSU1fRElFUl9VREVfUG9zICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fRElFUl9VREVfTXNrICAgICAgICAgICgweDFVTCA8PCBUSU1fRElFUl9VREVfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBUSU1fRElFUl9VREUgICAgICAgICAgICAgIFRJTV9ESUVSX1VERV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxVcGRhdGUgRE1BIHJlcXVlc3QgZW5hYmxlICovCisjZGVmaW5lIFRJTV9ESUVSX0NDMURFX1BvcyAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9ESUVSX0NDMURFX01zayAgICAgICAgKDB4MVVMIDw8IFRJTV9ESUVSX0NDMURFX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIFRJTV9ESUVSX0NDMURFICAgICAgICAgICAgVElNX0RJRVJfQ0MxREVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAxIERNQSByZXF1ZXN0IGVuYWJsZSAqLworI2RlZmluZSBUSU1fRElFUl9DQzJERV9Qb3MgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fRElFUl9DQzJERV9Nc2sgICAgICAgICgweDFVTCA8PCBUSU1fRElFUl9DQzJERV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLworI2RlZmluZSBUSU1fRElFUl9DQzJERSAgICAgICAgICAgIFRJTV9ESUVSX0NDMkRFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMiBETUEgcmVxdWVzdCBlbmFibGUgKi8KKyNkZWZpbmUgVElNX0RJRVJfQ0MzREVfUG9zICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0RJRVJfQ0MzREVfTXNrICAgICAgICAoMHgxVUwgPDwgVElNX0RJRVJfQ0MzREVfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgVElNX0RJRVJfQ0MzREUgICAgICAgICAgICBUSU1fRElFUl9DQzNERV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDMgRE1BIHJlcXVlc3QgZW5hYmxlICovCisjZGVmaW5lIFRJTV9ESUVSX0NDNERFX1BvcyAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9ESUVSX0NDNERFX01zayAgICAgICAgKDB4MVVMIDw8IFRJTV9ESUVSX0NDNERFX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIFRJTV9ESUVSX0NDNERFICAgICAgICAgICAgVElNX0RJRVJfQ0M0REVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSA0IERNQSByZXF1ZXN0IGVuYWJsZSAqLworI2RlZmluZSBUSU1fRElFUl9DT01ERV9Qb3MgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fRElFUl9DT01ERV9Nc2sgICAgICAgICgweDFVTCA8PCBUSU1fRElFUl9DT01ERV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLworI2RlZmluZSBUSU1fRElFUl9DT01ERSAgICAgICAgICAgIFRJTV9ESUVSX0NPTURFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDT00gRE1BIHJlcXVlc3QgZW5hYmxlICovCisjZGVmaW5lIFRJTV9ESUVSX1RERV9Qb3MgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9ESUVSX1RERV9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFRJTV9ESUVSX1RERV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIFRJTV9ESUVSX1RERSAgICAgICAgICAgICAgVElNX0RJRVJfVERFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPFRyaWdnZXIgRE1BIHJlcXVlc3QgZW5hYmxlICovCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9TUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFRJTV9TUl9VSUZfUG9zICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9TUl9VSUZfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFRJTV9TUl9VSUZfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFRJTV9TUl9VSUYgICAgICAgICAgICAgICAgVElNX1NSX1VJRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPFVwZGF0ZSBpbnRlcnJ1cHQgRmxhZyAqLworI2RlZmluZSBUSU1fU1JfQ0MxSUZfUG9zICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fU1JfQ0MxSUZfTXNrICAgICAgICAgICgweDFVTCA8PCBUSU1fU1JfQ0MxSUZfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBUSU1fU1JfQ0MxSUYgICAgICAgICAgICAgIFRJTV9TUl9DQzFJRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMSBpbnRlcnJ1cHQgRmxhZyAqLworI2RlZmluZSBUSU1fU1JfQ0MySUZfUG9zICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fU1JfQ0MySUZfTXNrICAgICAgICAgICgweDFVTCA8PCBUSU1fU1JfQ0MySUZfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBUSU1fU1JfQ0MySUYgICAgICAgICAgICAgIFRJTV9TUl9DQzJJRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMiBpbnRlcnJ1cHQgRmxhZyAqLworI2RlZmluZSBUSU1fU1JfQ0MzSUZfUG9zICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fU1JfQ0MzSUZfTXNrICAgICAgICAgICgweDFVTCA8PCBUSU1fU1JfQ0MzSUZfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBUSU1fU1JfQ0MzSUYgICAgICAgICAgICAgIFRJTV9TUl9DQzNJRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMyBpbnRlcnJ1cHQgRmxhZyAqLworI2RlZmluZSBUSU1fU1JfQ0M0SUZfUG9zICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fU1JfQ0M0SUZfTXNrICAgICAgICAgICgweDFVTCA8PCBUSU1fU1JfQ0M0SUZfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBUSU1fU1JfQ0M0SUYgICAgICAgICAgICAgIFRJTV9TUl9DQzRJRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgNCBpbnRlcnJ1cHQgRmxhZyAqLworI2RlZmluZSBUSU1fU1JfQ09NSUZfUG9zICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fU1JfQ09NSUZfTXNrICAgICAgICAgICgweDFVTCA8PCBUSU1fU1JfQ09NSUZfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBUSU1fU1JfQ09NSUYgICAgICAgICAgICAgIFRJTV9TUl9DT01JRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDT00gaW50ZXJydXB0IEZsYWcgKi8KKyNkZWZpbmUgVElNX1NSX1RJRl9Qb3MgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX1NSX1RJRl9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgVElNX1NSX1RJRl9Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgVElNX1NSX1RJRiAgICAgICAgICAgICAgICBUSU1fU1JfVElGX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8VHJpZ2dlciBpbnRlcnJ1cHQgRmxhZyAqLworI2RlZmluZSBUSU1fU1JfQklGX1BvcyAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fU1JfQklGX01zayAgICAgICAgICAgICgweDFVTCA8PCBUSU1fU1JfQklGX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLworI2RlZmluZSBUSU1fU1JfQklGICAgICAgICAgICAgICAgIFRJTV9TUl9CSUZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxCcmVhayBpbnRlcnJ1cHQgRmxhZyAqLworI2RlZmluZSBUSU1fU1JfQjJJRl9Qb3MgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fU1JfQjJJRl9Nc2sgICAgICAgICAgICgweDFVTCA8PCBUSU1fU1JfQjJJRl9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBUSU1fU1JfQjJJRiAgICAgICAgICAgICAgIFRJTV9TUl9CMklGX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxCcmVhayAyIGludGVycnVwdCBGbGFnICovCisjZGVmaW5lIFRJTV9TUl9DQzFPRl9Qb3MgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9TUl9DQzFPRl9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFRJTV9TUl9DQzFPRl9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIFRJTV9TUl9DQzFPRiAgICAgICAgICAgICAgVElNX1NSX0NDMU9GX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAxIE92ZXJjYXB0dXJlIEZsYWcgKi8KKyNkZWZpbmUgVElNX1NSX0NDMk9GX1BvcyAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX1NSX0NDMk9GX01zayAgICAgICAgICAoMHgxVUwgPDwgVElNX1NSX0NDMk9GX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgVElNX1NSX0NDMk9GICAgICAgICAgICAgICBUSU1fU1JfQ0MyT0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDIgT3ZlcmNhcHR1cmUgRmxhZyAqLworI2RlZmluZSBUSU1fU1JfQ0MzT0ZfUG9zICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fU1JfQ0MzT0ZfTXNrICAgICAgICAgICgweDFVTCA8PCBUSU1fU1JfQ0MzT0ZfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLworI2RlZmluZSBUSU1fU1JfQ0MzT0YgICAgICAgICAgICAgIFRJTV9TUl9DQzNPRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMyBPdmVyY2FwdHVyZSBGbGFnICovCisjZGVmaW5lIFRJTV9TUl9DQzRPRl9Qb3MgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9TUl9DQzRPRl9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFRJTV9TUl9DQzRPRl9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIFRJTV9TUl9DQzRPRiAgICAgICAgICAgICAgVElNX1NSX0NDNE9GX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSA0IE92ZXJjYXB0dXJlIEZsYWcgKi8KKyNkZWZpbmUgVElNX1NSX1NCSUZfUG9zICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX1NSX1NCSUZfTXNrICAgICAgICAgICAoMHgxVUwgPDwgVElNX1NSX1NCSUZfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgVElNX1NSX1NCSUYgICAgICAgICAgICAgICBUSU1fU1JfU0JJRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8U3lzdGVtIEJyZWFrIGludGVycnVwdCBGbGFnICovCisjZGVmaW5lIFRJTV9TUl9DQzVJRl9Qb3MgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9TUl9DQzVJRl9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFRJTV9TUl9DQzVJRl9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIFRJTV9TUl9DQzVJRiAgICAgICAgICAgICAgVElNX1NSX0NDNUlGX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSA1IGludGVycnVwdCBGbGFnICovCisjZGVmaW5lIFRJTV9TUl9DQzZJRl9Qb3MgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9TUl9DQzZJRl9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFRJTV9TUl9DQzZJRl9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovCisjZGVmaW5lIFRJTV9TUl9DQzZJRiAgICAgICAgICAgICAgVElNX1NSX0NDNklGX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSA2IGludGVycnVwdCBGbGFnICovCisKKworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fRUdSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgVElNX0VHUl9VR19Qb3MgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0VHUl9VR19Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgVElNX0VHUl9VR19Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgVElNX0VHUl9VRyAgICAgICAgICAgICAgICBUSU1fRUdSX1VHX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8VXBkYXRlIEdlbmVyYXRpb24gKi8KKyNkZWZpbmUgVElNX0VHUl9DQzFHX1BvcyAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0VHUl9DQzFHX01zayAgICAgICAgICAoMHgxVUwgPDwgVElNX0VHUl9DQzFHX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgVElNX0VHUl9DQzFHICAgICAgICAgICAgICBUSU1fRUdSX0NDMUdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDEgR2VuZXJhdGlvbiAqLworI2RlZmluZSBUSU1fRUdSX0NDMkdfUG9zICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fRUdSX0NDMkdfTXNrICAgICAgICAgICgweDFVTCA8PCBUSU1fRUdSX0NDMkdfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBUSU1fRUdSX0NDMkcgICAgICAgICAgICAgIFRJTV9FR1JfQ0MyR19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMiBHZW5lcmF0aW9uICovCisjZGVmaW5lIFRJTV9FR1JfQ0MzR19Qb3MgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9FR1JfQ0MzR19Nc2sgICAgICAgICAgKDB4MVVMIDw8IFRJTV9FR1JfQ0MzR19Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIFRJTV9FR1JfQ0MzRyAgICAgICAgICAgICAgVElNX0VHUl9DQzNHX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAzIEdlbmVyYXRpb24gKi8KKyNkZWZpbmUgVElNX0VHUl9DQzRHX1BvcyAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0VHUl9DQzRHX01zayAgICAgICAgICAoMHgxVUwgPDwgVElNX0VHUl9DQzRHX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgVElNX0VHUl9DQzRHICAgICAgICAgICAgICBUSU1fRUdSX0NDNEdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDQgR2VuZXJhdGlvbiAqLworI2RlZmluZSBUSU1fRUdSX0NPTUdfUG9zICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fRUdSX0NPTUdfTXNrICAgICAgICAgICgweDFVTCA8PCBUSU1fRUdSX0NPTUdfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBUSU1fRUdSX0NPTUcgICAgICAgICAgICAgIFRJTV9FR1JfQ09NR19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgQ29udHJvbCBVcGRhdGUgR2VuZXJhdGlvbiAqLworI2RlZmluZSBUSU1fRUdSX1RHX1BvcyAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fRUdSX1RHX01zayAgICAgICAgICAgICgweDFVTCA8PCBUSU1fRUdSX1RHX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBUSU1fRUdSX1RHICAgICAgICAgICAgICAgIFRJTV9FR1JfVEdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxUcmlnZ2VyIEdlbmVyYXRpb24gKi8KKyNkZWZpbmUgVElNX0VHUl9CR19Qb3MgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0VHUl9CR19Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgVElNX0VHUl9CR19Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgVElNX0VHUl9CRyAgICAgICAgICAgICAgICBUSU1fRUdSX0JHX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8QnJlYWsgR2VuZXJhdGlvbiAqLworI2RlZmluZSBUSU1fRUdSX0IyR19Qb3MgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fRUdSX0IyR19Nc2sgICAgICAgICAgICgweDFVTCA8PCBUSU1fRUdSX0IyR19Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBUSU1fRUdSX0IyRyAgICAgICAgICAgICAgIFRJTV9FR1JfQjJHX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxCcmVhayAyIEdlbmVyYXRpb24gKi8KKworCisvKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0NDTVIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBUSU1fQ0NNUjFfQ0MxU19Qb3MgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ0NNUjFfQ0MxU19Nc2sgICAgICAgICgweDNVTCA8PCBUSU1fQ0NNUjFfQ0MxU19Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMyAqLworI2RlZmluZSBUSU1fQ0NNUjFfQ0MxUyAgICAgICAgICAgIFRJTV9DQ01SMV9DQzFTX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDQzFTWzE6MF0gYml0cyAoQ2FwdHVyZS9Db21wYXJlIDEgU2VsZWN0aW9uKSAqLworI2RlZmluZSBUSU1fQ0NNUjFfQ0MxU18wICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMV9DQzFTX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBUSU1fQ0NNUjFfQ0MxU18xICAgICAgICAgICgweDJVIDw8IFRJTV9DQ01SMV9DQzFTX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworCisjZGVmaW5lIFRJTV9DQ01SMV9PQzFGRV9Qb3MgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9DQ01SMV9PQzFGRV9Nc2sgICAgICAgKDB4MVVMIDw8IFRJTV9DQ01SMV9PQzFGRV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIFRJTV9DQ01SMV9PQzFGRSAgICAgICAgICAgVElNX0NDTVIxX09DMUZFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPE91dHB1dCBDb21wYXJlIDEgRmFzdCBlbmFibGUgKi8KKyNkZWZpbmUgVElNX0NDTVIxX09DMVBFX1BvcyAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0NDTVIxX09DMVBFX01zayAgICAgICAoMHgxVUwgPDwgVElNX0NDTVIxX09DMVBFX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgVElNX0NDTVIxX09DMVBFICAgICAgICAgICBUSU1fQ0NNUjFfT0MxUEVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgMSBQcmVsb2FkIGVuYWJsZSAqLworCisjZGVmaW5lIFRJTV9DQ01SMV9PQzFNX1BvcyAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9DQ01SMV9PQzFNX01zayAgICAgICAgKDB4MTAwN1VMIDw8IFRJTV9DQ01SMV9PQzFNX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDEwMDcwICovCisjZGVmaW5lIFRJTV9DQ01SMV9PQzFNICAgICAgICAgICAgVElNX0NDTVIxX09DMU1fTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPE9DMU1bMjowXSBiaXRzIChPdXRwdXQgQ29tcGFyZSAxIE1vZGUpICovCisjZGVmaW5lIFRJTV9DQ01SMV9PQzFNXzAgICAgICAgICAgKDB4MDAwMVUgPDwgVElNX0NDTVIxX09DMU1fUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIFRJTV9DQ01SMV9PQzFNXzEgICAgICAgICAgKDB4MDAwMlUgPDwgVElNX0NDTVIxX09DMU1fUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIFRJTV9DQ01SMV9PQzFNXzIgICAgICAgICAgKDB4MDAwNFUgPDwgVElNX0NDTVIxX09DMU1fUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIFRJTV9DQ01SMV9PQzFNXzMgICAgICAgICAgKDB4MTAwMFUgPDwgVElNX0NDTVIxX09DMU1fUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovCisKKyNkZWZpbmUgVElNX0NDTVIxX09DMUNFX1BvcyAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0NDTVIxX09DMUNFX01zayAgICAgICAoMHgxVUwgPDwgVElNX0NDTVIxX09DMUNFX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgVElNX0NDTVIxX09DMUNFICAgICAgICAgICBUSU1fQ0NNUjFfT0MxQ0VfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgMSBDbGVhciBFbmFibGUgKi8KKworI2RlZmluZSBUSU1fQ0NNUjFfQ0MyU19Qb3MgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ0NNUjFfQ0MyU19Nc2sgICAgICAgICgweDNVTCA8PCBUSU1fQ0NNUjFfQ0MyU19Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDMwMCAqLworI2RlZmluZSBUSU1fQ0NNUjFfQ0MyUyAgICAgICAgICAgIFRJTV9DQ01SMV9DQzJTX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDQzJTWzE6MF0gYml0cyAoQ2FwdHVyZS9Db21wYXJlIDIgU2VsZWN0aW9uKSAqLworI2RlZmluZSBUSU1fQ0NNUjFfQ0MyU18wICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMV9DQzJTX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBUSU1fQ0NNUjFfQ0MyU18xICAgICAgICAgICgweDJVIDw8IFRJTV9DQ01SMV9DQzJTX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworCisjZGVmaW5lIFRJTV9DQ01SMV9PQzJGRV9Qb3MgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9DQ01SMV9PQzJGRV9Nc2sgICAgICAgKDB4MVVMIDw8IFRJTV9DQ01SMV9PQzJGRV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIFRJTV9DQ01SMV9PQzJGRSAgICAgICAgICAgVElNX0NDTVIxX09DMkZFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPE91dHB1dCBDb21wYXJlIDIgRmFzdCBlbmFibGUgKi8KKyNkZWZpbmUgVElNX0NDTVIxX09DMlBFX1BvcyAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0NDTVIxX09DMlBFX01zayAgICAgICAoMHgxVUwgPDwgVElNX0NDTVIxX09DMlBFX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgVElNX0NDTVIxX09DMlBFICAgICAgICAgICBUSU1fQ0NNUjFfT0MyUEVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgMiBQcmVsb2FkIGVuYWJsZSAqLworCisjZGVmaW5lIFRJTV9DQ01SMV9PQzJNX1BvcyAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9DQ01SMV9PQzJNX01zayAgICAgICAgKDB4MTAwN1VMIDw8IFRJTV9DQ01SMV9PQzJNX1BvcykgICAgICAgICAgICAgLyohPCAweDAxMDA3MDAwICovCisjZGVmaW5lIFRJTV9DQ01SMV9PQzJNICAgICAgICAgICAgVElNX0NDTVIxX09DMk1fTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPE9DMk1bMjowXSBiaXRzIChPdXRwdXQgQ29tcGFyZSAyIE1vZGUpICovCisjZGVmaW5lIFRJTV9DQ01SMV9PQzJNXzAgICAgICAgICAgKDB4MDAwMVUgPDwgVElNX0NDTVIxX09DMk1fUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIFRJTV9DQ01SMV9PQzJNXzEgICAgICAgICAgKDB4MDAwMlUgPDwgVElNX0NDTVIxX09DMk1fUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIFRJTV9DQ01SMV9PQzJNXzIgICAgICAgICAgKDB4MDAwNFUgPDwgVElNX0NDTVIxX09DMk1fUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIFRJTV9DQ01SMV9PQzJNXzMgICAgICAgICAgKDB4MTAwMFUgPDwgVElNX0NDTVIxX09DMk1fUG9zKSAgICAgICAgICAgICAgLyohPCAweDAxMDAwMDAwICovCisKKyNkZWZpbmUgVElNX0NDTVIxX09DMkNFX1BvcyAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0NDTVIxX09DMkNFX01zayAgICAgICAoMHgxVUwgPDwgVElNX0NDTVIxX09DMkNFX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgVElNX0NDTVIxX09DMkNFICAgICAgICAgICBUSU1fQ0NNUjFfT0MyQ0VfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgMiBDbGVhciBFbmFibGUgKi8KKworLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KKyNkZWZpbmUgVElNX0NDTVIxX0lDMVBTQ19Qb3MgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0NDTVIxX0lDMVBTQ19Nc2sgICAgICAoMHgzVUwgPDwgVElNX0NDTVIxX0lDMVBTQ19Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMEMgKi8KKyNkZWZpbmUgVElNX0NDTVIxX0lDMVBTQyAgICAgICAgICBUSU1fQ0NNUjFfSUMxUFNDX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8SUMxUFNDWzE6MF0gYml0cyAoSW5wdXQgQ2FwdHVyZSAxIFByZXNjYWxlcikgKi8KKyNkZWZpbmUgVElNX0NDTVIxX0lDMVBTQ18wICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjFfSUMxUFNDX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgVElNX0NDTVIxX0lDMVBTQ18xICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjFfSUMxUFNDX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKworI2RlZmluZSBUSU1fQ0NNUjFfSUMxRl9Qb3MgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ0NNUjFfSUMxRl9Nc2sgICAgICAgICgweEZVTCA8PCBUSU1fQ0NNUjFfSUMxRl9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDBGMCAqLworI2RlZmluZSBUSU1fQ0NNUjFfSUMxRiAgICAgICAgICAgIFRJTV9DQ01SMV9JQzFGX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxJQzFGWzM6MF0gYml0cyAoSW5wdXQgQ2FwdHVyZSAxIEZpbHRlcikgKi8KKyNkZWZpbmUgVElNX0NDTVIxX0lDMUZfMCAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjFfSUMxRl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgVElNX0NDTVIxX0lDMUZfMSAgICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjFfSUMxRl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgVElNX0NDTVIxX0lDMUZfMiAgICAgICAgICAoMHg0VSA8PCBUSU1fQ0NNUjFfSUMxRl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgVElNX0NDTVIxX0lDMUZfMyAgICAgICAgICAoMHg4VSA8PCBUSU1fQ0NNUjFfSUMxRl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKworI2RlZmluZSBUSU1fQ0NNUjFfSUMyUFNDX1BvcyAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ0NNUjFfSUMyUFNDX01zayAgICAgICgweDNVTCA8PCBUSU1fQ0NNUjFfSUMyUFNDX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMEMwMCAqLworI2RlZmluZSBUSU1fQ0NNUjFfSUMyUFNDICAgICAgICAgIFRJTV9DQ01SMV9JQzJQU0NfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxJQzJQU0NbMTowXSBiaXRzIChJbnB1dCBDYXB0dXJlIDIgUHJlc2NhbGVyKSAqLworI2RlZmluZSBUSU1fQ0NNUjFfSUMyUFNDXzAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMV9JQzJQU0NfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLworI2RlZmluZSBUSU1fQ0NNUjFfSUMyUFNDXzEgICAgICAgICgweDJVIDw8IFRJTV9DQ01SMV9JQzJQU0NfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLworCisjZGVmaW5lIFRJTV9DQ01SMV9JQzJGX1BvcyAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9DQ01SMV9JQzJGX01zayAgICAgICAgKDB4RlVMIDw8IFRJTV9DQ01SMV9JQzJGX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDBGMDAwICovCisjZGVmaW5lIFRJTV9DQ01SMV9JQzJGICAgICAgICAgICAgVElNX0NDTVIxX0lDMkZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPElDMkZbMzowXSBiaXRzIChJbnB1dCBDYXB0dXJlIDIgRmlsdGVyKSAqLworI2RlZmluZSBUSU1fQ0NNUjFfSUMyRl8wICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMV9JQzJGX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBUSU1fQ0NNUjFfSUMyRl8xICAgICAgICAgICgweDJVIDw8IFRJTV9DQ01SMV9JQzJGX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLworI2RlZmluZSBUSU1fQ0NNUjFfSUMyRl8yICAgICAgICAgICgweDRVIDw8IFRJTV9DQ01SMV9JQzJGX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLworI2RlZmluZSBUSU1fQ0NNUjFfSUMyRl8zICAgICAgICAgICgweDhVIDw8IFRJTV9DQ01SMV9JQzJGX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLworCisvKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0NDTVIyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBUSU1fQ0NNUjJfQ0MzU19Qb3MgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ0NNUjJfQ0MzU19Nc2sgICAgICAgICgweDNVTCA8PCBUSU1fQ0NNUjJfQ0MzU19Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMyAqLworI2RlZmluZSBUSU1fQ0NNUjJfQ0MzUyAgICAgICAgICAgIFRJTV9DQ01SMl9DQzNTX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDQzNTWzE6MF0gYml0cyAoQ2FwdHVyZS9Db21wYXJlIDMgU2VsZWN0aW9uKSAqLworI2RlZmluZSBUSU1fQ0NNUjJfQ0MzU18wICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMl9DQzNTX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBUSU1fQ0NNUjJfQ0MzU18xICAgICAgICAgICgweDJVIDw8IFRJTV9DQ01SMl9DQzNTX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworCisjZGVmaW5lIFRJTV9DQ01SMl9PQzNGRV9Qb3MgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9DQ01SMl9PQzNGRV9Nc2sgICAgICAgKDB4MVVMIDw8IFRJTV9DQ01SMl9PQzNGRV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIFRJTV9DQ01SMl9PQzNGRSAgICAgICAgICAgVElNX0NDTVIyX09DM0ZFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPE91dHB1dCBDb21wYXJlIDMgRmFzdCBlbmFibGUgKi8KKyNkZWZpbmUgVElNX0NDTVIyX09DM1BFX1BvcyAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0NDTVIyX09DM1BFX01zayAgICAgICAoMHgxVUwgPDwgVElNX0NDTVIyX09DM1BFX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgVElNX0NDTVIyX09DM1BFICAgICAgICAgICBUSU1fQ0NNUjJfT0MzUEVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgMyBQcmVsb2FkIGVuYWJsZSAqLworCisjZGVmaW5lIFRJTV9DQ01SMl9PQzNNX1BvcyAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9DQ01SMl9PQzNNX01zayAgICAgICAgKDB4MTAwN1VMIDw8IFRJTV9DQ01SMl9PQzNNX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDEwMDcwICovCisjZGVmaW5lIFRJTV9DQ01SMl9PQzNNICAgICAgICAgICAgVElNX0NDTVIyX09DM01fTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPE9DM01bMjowXSBiaXRzIChPdXRwdXQgQ29tcGFyZSAzIE1vZGUpICovCisjZGVmaW5lIFRJTV9DQ01SMl9PQzNNXzAgICAgICAgICAgKDB4MDAwMVUgPDwgVElNX0NDTVIyX09DM01fUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIFRJTV9DQ01SMl9PQzNNXzEgICAgICAgICAgKDB4MDAwMlUgPDwgVElNX0NDTVIyX09DM01fUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIFRJTV9DQ01SMl9PQzNNXzIgICAgICAgICAgKDB4MDAwNFUgPDwgVElNX0NDTVIyX09DM01fUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIFRJTV9DQ01SMl9PQzNNXzMgICAgICAgICAgKDB4MTAwMFUgPDwgVElNX0NDTVIyX09DM01fUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovCisKKyNkZWZpbmUgVElNX0NDTVIyX09DM0NFX1BvcyAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0NDTVIyX09DM0NFX01zayAgICAgICAoMHgxVUwgPDwgVElNX0NDTVIyX09DM0NFX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgVElNX0NDTVIyX09DM0NFICAgICAgICAgICBUSU1fQ0NNUjJfT0MzQ0VfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgMyBDbGVhciBFbmFibGUgKi8KKworI2RlZmluZSBUSU1fQ0NNUjJfQ0M0U19Qb3MgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ0NNUjJfQ0M0U19Nc2sgICAgICAgICgweDNVTCA8PCBUSU1fQ0NNUjJfQ0M0U19Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDMwMCAqLworI2RlZmluZSBUSU1fQ0NNUjJfQ0M0UyAgICAgICAgICAgIFRJTV9DQ01SMl9DQzRTX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDQzRTWzE6MF0gYml0cyAoQ2FwdHVyZS9Db21wYXJlIDQgU2VsZWN0aW9uKSAqLworI2RlZmluZSBUSU1fQ0NNUjJfQ0M0U18wICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMl9DQzRTX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBUSU1fQ0NNUjJfQ0M0U18xICAgICAgICAgICgweDJVIDw8IFRJTV9DQ01SMl9DQzRTX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworCisjZGVmaW5lIFRJTV9DQ01SMl9PQzRGRV9Qb3MgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9DQ01SMl9PQzRGRV9Nc2sgICAgICAgKDB4MVVMIDw8IFRJTV9DQ01SMl9PQzRGRV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIFRJTV9DQ01SMl9PQzRGRSAgICAgICAgICAgVElNX0NDTVIyX09DNEZFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPE91dHB1dCBDb21wYXJlIDQgRmFzdCBlbmFibGUgKi8KKyNkZWZpbmUgVElNX0NDTVIyX09DNFBFX1BvcyAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0NDTVIyX09DNFBFX01zayAgICAgICAoMHgxVUwgPDwgVElNX0NDTVIyX09DNFBFX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgVElNX0NDTVIyX09DNFBFICAgICAgICAgICBUSU1fQ0NNUjJfT0M0UEVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgNCBQcmVsb2FkIGVuYWJsZSAqLworCisjZGVmaW5lIFRJTV9DQ01SMl9PQzRNX1BvcyAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9DQ01SMl9PQzRNX01zayAgICAgICAgKDB4MTAwN1VMIDw8IFRJTV9DQ01SMl9PQzRNX1BvcykgICAgICAgICAgICAgLyohPCAweDAxMDA3MDAwICovCisjZGVmaW5lIFRJTV9DQ01SMl9PQzRNICAgICAgICAgICAgVElNX0NDTVIyX09DNE1fTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPE9DNE1bMjowXSBiaXRzIChPdXRwdXQgQ29tcGFyZSA0IE1vZGUpICovCisjZGVmaW5lIFRJTV9DQ01SMl9PQzRNXzAgICAgICAgICAgKDB4MDAwMVUgPDwgVElNX0NDTVIyX09DNE1fUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIFRJTV9DQ01SMl9PQzRNXzEgICAgICAgICAgKDB4MDAwMlUgPDwgVElNX0NDTVIyX09DNE1fUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIFRJTV9DQ01SMl9PQzRNXzIgICAgICAgICAgKDB4MDAwNFUgPDwgVElNX0NDTVIyX09DNE1fUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIFRJTV9DQ01SMl9PQzRNXzMgICAgICAgICAgKDB4MTAwMFUgPDwgVElNX0NDTVIyX09DNE1fUG9zKSAgICAgICAgICAgICAgLyohPCAweDAxMDAwMDAwICovCisKKyNkZWZpbmUgVElNX0NDTVIyX09DNENFX1BvcyAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0NDTVIyX09DNENFX01zayAgICAgICAoMHgxVUwgPDwgVElNX0NDTVIyX09DNENFX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgVElNX0NDTVIyX09DNENFICAgICAgICAgICBUSU1fQ0NNUjJfT0M0Q0VfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgNCBDbGVhciBFbmFibGUgKi8KKworLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KKyNkZWZpbmUgVElNX0NDTVIyX0lDM1BTQ19Qb3MgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0NDTVIyX0lDM1BTQ19Nc2sgICAgICAoMHgzVUwgPDwgVElNX0NDTVIyX0lDM1BTQ19Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMEMgKi8KKyNkZWZpbmUgVElNX0NDTVIyX0lDM1BTQyAgICAgICAgICBUSU1fQ0NNUjJfSUMzUFNDX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8SUMzUFNDWzE6MF0gYml0cyAoSW5wdXQgQ2FwdHVyZSAzIFByZXNjYWxlcikgKi8KKyNkZWZpbmUgVElNX0NDTVIyX0lDM1BTQ18wICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjJfSUMzUFNDX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgVElNX0NDTVIyX0lDM1BTQ18xICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjJfSUMzUFNDX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKworI2RlZmluZSBUSU1fQ0NNUjJfSUMzRl9Qb3MgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ0NNUjJfSUMzRl9Nc2sgICAgICAgICgweEZVTCA8PCBUSU1fQ0NNUjJfSUMzRl9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDBGMCAqLworI2RlZmluZSBUSU1fQ0NNUjJfSUMzRiAgICAgICAgICAgIFRJTV9DQ01SMl9JQzNGX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxJQzNGWzM6MF0gYml0cyAoSW5wdXQgQ2FwdHVyZSAzIEZpbHRlcikgKi8KKyNkZWZpbmUgVElNX0NDTVIyX0lDM0ZfMCAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjJfSUMzRl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgVElNX0NDTVIyX0lDM0ZfMSAgICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjJfSUMzRl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgVElNX0NDTVIyX0lDM0ZfMiAgICAgICAgICAoMHg0VSA8PCBUSU1fQ0NNUjJfSUMzRl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgVElNX0NDTVIyX0lDM0ZfMyAgICAgICAgICAoMHg4VSA8PCBUSU1fQ0NNUjJfSUMzRl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKworI2RlZmluZSBUSU1fQ0NNUjJfSUM0UFNDX1BvcyAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ0NNUjJfSUM0UFNDX01zayAgICAgICgweDNVTCA8PCBUSU1fQ0NNUjJfSUM0UFNDX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMEMwMCAqLworI2RlZmluZSBUSU1fQ0NNUjJfSUM0UFNDICAgICAgICAgIFRJTV9DQ01SMl9JQzRQU0NfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxJQzRQU0NbMTowXSBiaXRzIChJbnB1dCBDYXB0dXJlIDQgUHJlc2NhbGVyKSAqLworI2RlZmluZSBUSU1fQ0NNUjJfSUM0UFNDXzAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMl9JQzRQU0NfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLworI2RlZmluZSBUSU1fQ0NNUjJfSUM0UFNDXzEgICAgICAgICgweDJVIDw8IFRJTV9DQ01SMl9JQzRQU0NfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLworCisjZGVmaW5lIFRJTV9DQ01SMl9JQzRGX1BvcyAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9DQ01SMl9JQzRGX01zayAgICAgICAgKDB4RlVMIDw8IFRJTV9DQ01SMl9JQzRGX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDBGMDAwICovCisjZGVmaW5lIFRJTV9DQ01SMl9JQzRGICAgICAgICAgICAgVElNX0NDTVIyX0lDNEZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPElDNEZbMzowXSBiaXRzIChJbnB1dCBDYXB0dXJlIDQgRmlsdGVyKSAqLworI2RlZmluZSBUSU1fQ0NNUjJfSUM0Rl8wICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMl9JQzRGX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBUSU1fQ0NNUjJfSUM0Rl8xICAgICAgICAgICgweDJVIDw8IFRJTV9DQ01SMl9JQzRGX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLworI2RlZmluZSBUSU1fQ0NNUjJfSUM0Rl8yICAgICAgICAgICgweDRVIDw8IFRJTV9DQ01SMl9JQzRGX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLworI2RlZmluZSBUSU1fQ0NNUjJfSUM0Rl8zICAgICAgICAgICgweDhVIDw8IFRJTV9DQ01SMl9JQzRGX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLworCisvKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0NDTVIzIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBUSU1fQ0NNUjNfT0M1RkVfUG9zICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ0NNUjNfT0M1RkVfTXNrICAgICAgICgweDFVTCA8PCBUSU1fQ0NNUjNfT0M1RkVfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBUSU1fQ0NNUjNfT0M1RkUgICAgICAgICAgIFRJTV9DQ01SM19PQzVGRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgQ29tcGFyZSA1IEZhc3QgZW5hYmxlICovCisjZGVmaW5lIFRJTV9DQ01SM19PQzVQRV9Qb3MgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9DQ01SM19PQzVQRV9Nc2sgICAgICAgKDB4MVVMIDw8IFRJTV9DQ01SM19PQzVQRV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIFRJTV9DQ01SM19PQzVQRSAgICAgICAgICAgVElNX0NDTVIzX09DNVBFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPE91dHB1dCBDb21wYXJlIDUgUHJlbG9hZCBlbmFibGUgKi8KKworI2RlZmluZSBUSU1fQ0NNUjNfT0M1TV9Qb3MgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ0NNUjNfT0M1TV9Nc2sgICAgICAgICgweDEwMDdVTCA8PCBUSU1fQ0NNUjNfT0M1TV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAxMDA3MCAqLworI2RlZmluZSBUSU1fQ0NNUjNfT0M1TSAgICAgICAgICAgIFRJTV9DQ01SM19PQzVNX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxPQzVNWzM6MF0gYml0cyAoT3V0cHV0IENvbXBhcmUgNSBNb2RlKSAqLworI2RlZmluZSBUSU1fQ0NNUjNfT0M1TV8wICAgICAgICAgICgweDAwMDFVIDw8IFRJTV9DQ01SM19PQzVNX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBUSU1fQ0NNUjNfT0M1TV8xICAgICAgICAgICgweDAwMDJVIDw8IFRJTV9DQ01SM19PQzVNX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBUSU1fQ0NNUjNfT0M1TV8yICAgICAgICAgICgweDAwMDRVIDw8IFRJTV9DQ01SM19PQzVNX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBUSU1fQ0NNUjNfT0M1TV8zICAgICAgICAgICgweDEwMDBVIDw8IFRJTV9DQ01SM19PQzVNX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLworCisjZGVmaW5lIFRJTV9DQ01SM19PQzVDRV9Qb3MgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9DQ01SM19PQzVDRV9Nc2sgICAgICAgKDB4MVVMIDw8IFRJTV9DQ01SM19PQzVDRV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIFRJTV9DQ01SM19PQzVDRSAgICAgICAgICAgVElNX0NDTVIzX09DNUNFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPE91dHB1dCBDb21wYXJlIDUgQ2xlYXIgRW5hYmxlICovCisKKyNkZWZpbmUgVElNX0NDTVIzX09DNkZFX1BvcyAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0NDTVIzX09DNkZFX01zayAgICAgICAoMHgxVUwgPDwgVElNX0NDTVIzX09DNkZFX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgVElNX0NDTVIzX09DNkZFICAgICAgICAgICBUSU1fQ0NNUjNfT0M2RkVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgNiBGYXN0IGVuYWJsZSAqLworI2RlZmluZSBUSU1fQ0NNUjNfT0M2UEVfUG9zICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ0NNUjNfT0M2UEVfTXNrICAgICAgICgweDFVTCA8PCBUSU1fQ0NNUjNfT0M2UEVfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLworI2RlZmluZSBUSU1fQ0NNUjNfT0M2UEUgICAgICAgICAgIFRJTV9DQ01SM19PQzZQRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgQ29tcGFyZSA2IFByZWxvYWQgZW5hYmxlICovCisKKyNkZWZpbmUgVElNX0NDTVIzX09DNk1fUG9zICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0NDTVIzX09DNk1fTXNrICAgICAgICAoMHgxMDA3VUwgPDwgVElNX0NDTVIzX09DNk1fUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDEwMDcwMDAgKi8KKyNkZWZpbmUgVElNX0NDTVIzX09DNk0gICAgICAgICAgICBUSU1fQ0NNUjNfT0M2TV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8T0M2TVszOjBdIGJpdHMgKE91dHB1dCBDb21wYXJlIDYgTW9kZSkgKi8KKyNkZWZpbmUgVElNX0NDTVIzX09DNk1fMCAgICAgICAgICAoMHgwMDAxVSA8PCBUSU1fQ0NNUjNfT0M2TV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKyNkZWZpbmUgVElNX0NDTVIzX09DNk1fMSAgICAgICAgICAoMHgwMDAyVSA8PCBUSU1fQ0NNUjNfT0M2TV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgVElNX0NDTVIzX09DNk1fMiAgICAgICAgICAoMHgwMDA0VSA8PCBUSU1fQ0NNUjNfT0M2TV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgVElNX0NDTVIzX09DNk1fMyAgICAgICAgICAoMHgxMDAwVSA8PCBUSU1fQ0NNUjNfT0M2TV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8KKworI2RlZmluZSBUSU1fQ0NNUjNfT0M2Q0VfUG9zICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ0NNUjNfT0M2Q0VfTXNrICAgICAgICgweDFVTCA8PCBUSU1fQ0NNUjNfT0M2Q0VfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLworI2RlZmluZSBUSU1fQ0NNUjNfT0M2Q0UgICAgICAgICAgIFRJTV9DQ01SM19PQzZDRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgQ29tcGFyZSA2IENsZWFyIEVuYWJsZSAqLworCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9DQ0VSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBUSU1fQ0NFUl9DQzFFX1BvcyAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ0NFUl9DQzFFX01zayAgICAgICAgICgweDFVTCA8PCBUSU1fQ0NFUl9DQzFFX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBUSU1fQ0NFUl9DQzFFICAgICAgICAgICAgIFRJTV9DQ0VSX0NDMUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMSBvdXRwdXQgZW5hYmxlICovCisjZGVmaW5lIFRJTV9DQ0VSX0NDMVBfUG9zICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9DQ0VSX0NDMVBfTXNrICAgICAgICAgKDB4MVVMIDw8IFRJTV9DQ0VSX0NDMVBfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFRJTV9DQ0VSX0NDMVAgICAgICAgICAgICAgVElNX0NDRVJfQ0MxUF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAxIG91dHB1dCBQb2xhcml0eSAqLworI2RlZmluZSBUSU1fQ0NFUl9DQzFORV9Qb3MgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ0NFUl9DQzFORV9Nc2sgICAgICAgICgweDFVTCA8PCBUSU1fQ0NFUl9DQzFORV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBUSU1fQ0NFUl9DQzFORSAgICAgICAgICAgIFRJTV9DQ0VSX0NDMU5FX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMSBDb21wbGVtZW50YXJ5IG91dHB1dCBlbmFibGUgKi8KKyNkZWZpbmUgVElNX0NDRVJfQ0MxTlBfUG9zICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0NDRVJfQ0MxTlBfTXNrICAgICAgICAoMHgxVUwgPDwgVElNX0NDRVJfQ0MxTlBfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgVElNX0NDRVJfQ0MxTlAgICAgICAgICAgICBUSU1fQ0NFUl9DQzFOUF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDEgQ29tcGxlbWVudGFyeSBvdXRwdXQgUG9sYXJpdHkgKi8KKyNkZWZpbmUgVElNX0NDRVJfQ0MyRV9Qb3MgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0NDRVJfQ0MyRV9Nc2sgICAgICAgICAoMHgxVUwgPDwgVElNX0NDRVJfQ0MyRV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgVElNX0NDRVJfQ0MyRSAgICAgICAgICAgICBUSU1fQ0NFUl9DQzJFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDIgb3V0cHV0IGVuYWJsZSAqLworI2RlZmluZSBUSU1fQ0NFUl9DQzJQX1BvcyAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ0NFUl9DQzJQX01zayAgICAgICAgICgweDFVTCA8PCBUSU1fQ0NFUl9DQzJQX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBUSU1fQ0NFUl9DQzJQICAgICAgICAgICAgIFRJTV9DQ0VSX0NDMlBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMiBvdXRwdXQgUG9sYXJpdHkgKi8KKyNkZWZpbmUgVElNX0NDRVJfQ0MyTkVfUG9zICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0NDRVJfQ0MyTkVfTXNrICAgICAgICAoMHgxVUwgPDwgVElNX0NDRVJfQ0MyTkVfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgVElNX0NDRVJfQ0MyTkUgICAgICAgICAgICBUSU1fQ0NFUl9DQzJORV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDIgQ29tcGxlbWVudGFyeSBvdXRwdXQgZW5hYmxlICovCisjZGVmaW5lIFRJTV9DQ0VSX0NDMk5QX1BvcyAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9DQ0VSX0NDMk5QX01zayAgICAgICAgKDB4MVVMIDw8IFRJTV9DQ0VSX0NDMk5QX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIFRJTV9DQ0VSX0NDMk5QICAgICAgICAgICAgVElNX0NDRVJfQ0MyTlBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAyIENvbXBsZW1lbnRhcnkgb3V0cHV0IFBvbGFyaXR5ICovCisjZGVmaW5lIFRJTV9DQ0VSX0NDM0VfUG9zICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9DQ0VSX0NDM0VfTXNrICAgICAgICAgKDB4MVVMIDw8IFRJTV9DQ0VSX0NDM0VfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIFRJTV9DQ0VSX0NDM0UgICAgICAgICAgICAgVElNX0NDRVJfQ0MzRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAzIG91dHB1dCBlbmFibGUgKi8KKyNkZWZpbmUgVElNX0NDRVJfQ0MzUF9Qb3MgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0NDRVJfQ0MzUF9Nc2sgICAgICAgICAoMHgxVUwgPDwgVElNX0NDRVJfQ0MzUF9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgVElNX0NDRVJfQ0MzUCAgICAgICAgICAgICBUSU1fQ0NFUl9DQzNQX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDMgb3V0cHV0IFBvbGFyaXR5ICovCisjZGVmaW5lIFRJTV9DQ0VSX0NDM05FX1BvcyAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9DQ0VSX0NDM05FX01zayAgICAgICAgKDB4MVVMIDw8IFRJTV9DQ0VSX0NDM05FX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIFRJTV9DQ0VSX0NDM05FICAgICAgICAgICAgVElNX0NDRVJfQ0MzTkVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAzIENvbXBsZW1lbnRhcnkgb3V0cHV0IGVuYWJsZSAqLworI2RlZmluZSBUSU1fQ0NFUl9DQzNOUF9Qb3MgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ0NFUl9DQzNOUF9Nc2sgICAgICAgICgweDFVTCA8PCBUSU1fQ0NFUl9DQzNOUF9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLworI2RlZmluZSBUSU1fQ0NFUl9DQzNOUCAgICAgICAgICAgIFRJTV9DQ0VSX0NDM05QX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMyBDb21wbGVtZW50YXJ5IG91dHB1dCBQb2xhcml0eSAqLworI2RlZmluZSBUSU1fQ0NFUl9DQzRFX1BvcyAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ0NFUl9DQzRFX01zayAgICAgICAgICgweDFVTCA8PCBUSU1fQ0NFUl9DQzRFX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBUSU1fQ0NFUl9DQzRFICAgICAgICAgICAgIFRJTV9DQ0VSX0NDNEVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgNCBvdXRwdXQgZW5hYmxlICovCisjZGVmaW5lIFRJTV9DQ0VSX0NDNFBfUG9zICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9DQ0VSX0NDNFBfTXNrICAgICAgICAgKDB4MVVMIDw8IFRJTV9DQ0VSX0NDNFBfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIFRJTV9DQ0VSX0NDNFAgICAgICAgICAgICAgVElNX0NDRVJfQ0M0UF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSA0IG91dHB1dCBQb2xhcml0eSAqLworI2RlZmluZSBUSU1fQ0NFUl9DQzROUF9Qb3MgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ0NFUl9DQzROUF9Nc2sgICAgICAgICgweDFVTCA8PCBUSU1fQ0NFUl9DQzROUF9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLworI2RlZmluZSBUSU1fQ0NFUl9DQzROUCAgICAgICAgICAgIFRJTV9DQ0VSX0NDNE5QX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgNCBDb21wbGVtZW50YXJ5IG91dHB1dCBQb2xhcml0eSAqLworI2RlZmluZSBUSU1fQ0NFUl9DQzVFX1BvcyAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ0NFUl9DQzVFX01zayAgICAgICAgICgweDFVTCA8PCBUSU1fQ0NFUl9DQzVFX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBUSU1fQ0NFUl9DQzVFICAgICAgICAgICAgIFRJTV9DQ0VSX0NDNUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgNSBvdXRwdXQgZW5hYmxlICovCisjZGVmaW5lIFRJTV9DQ0VSX0NDNVBfUG9zICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9DQ0VSX0NDNVBfTXNrICAgICAgICAgKDB4MVVMIDw8IFRJTV9DQ0VSX0NDNVBfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovCisjZGVmaW5lIFRJTV9DQ0VSX0NDNVAgICAgICAgICAgICAgVElNX0NDRVJfQ0M1UF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSA1IG91dHB1dCBQb2xhcml0eSAqLworI2RlZmluZSBUSU1fQ0NFUl9DQzZFX1BvcyAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ0NFUl9DQzZFX01zayAgICAgICAgICgweDFVTCA8PCBUSU1fQ0NFUl9DQzZFX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLworI2RlZmluZSBUSU1fQ0NFUl9DQzZFICAgICAgICAgICAgIFRJTV9DQ0VSX0NDNkVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgNiBvdXRwdXQgZW5hYmxlICovCisjZGVmaW5lIFRJTV9DQ0VSX0NDNlBfUG9zICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9DQ0VSX0NDNlBfTXNrICAgICAgICAgKDB4MVVMIDw8IFRJTV9DQ0VSX0NDNlBfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovCisjZGVmaW5lIFRJTV9DQ0VSX0NDNlAgICAgICAgICAgICAgVElNX0NDRVJfQ0M2UF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSA2IG91dHB1dCBQb2xhcml0eSAqLworCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9DTlQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBUSU1fQ05UX0NOVF9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ05UX0NOVF9Nc2sgICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgVElNX0NOVF9DTlRfUG9zKSAgICAgICAgICAgIC8qITwgMHhGRkZGRkZGRiAqLworI2RlZmluZSBUSU1fQ05UX0NOVCAgICAgICAgICAgICAgIFRJTV9DTlRfQ05UX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDb3VudGVyIFZhbHVlICovCisjZGVmaW5lIFRJTV9DTlRfVUlGQ1BZX1BvcyAgICAgICAgKDMxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9DTlRfVUlGQ1BZX01zayAgICAgICAgKDB4MVVMIDw8IFRJTV9DTlRfVUlGQ1BZX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDgwMDAwMDAwICovCisjZGVmaW5lIFRJTV9DTlRfVUlGQ1BZICAgICAgICAgICAgVElNX0NOVF9VSUZDUFlfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPFVwZGF0ZSBpbnRlcnJ1cHQgZmxhZyBjb3B5IChpZiBVSUZSRU1BUD0xKSAqLworCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9QU0MgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBUSU1fUFNDX1BTQ19Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fUFNDX1BTQ19Nc2sgICAgICAgICAgICgweEZGRkZVTCA8PCBUSU1fUFNDX1BTQ19Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLworI2RlZmluZSBUSU1fUFNDX1BTQyAgICAgICAgICAgICAgIFRJTV9QU0NfUFNDX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxQcmVzY2FsZXIgVmFsdWUgKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fQVJSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgVElNX0FSUl9BUlJfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0FSUl9BUlJfTXNrICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IFRJTV9BUlJfQVJSX1BvcykgICAgICAgICAgICAvKiE8IDB4RkZGRkZGRkYgKi8KKyNkZWZpbmUgVElNX0FSUl9BUlIgICAgICAgICAgICAgICBUSU1fQVJSX0FSUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8QWN0dWFsIGF1dG8tcmVsb2FkIFZhbHVlICovCisKKy8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX1JDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFRJTV9SQ1JfUkVQX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9SQ1JfUkVQX01zayAgICAgICAgICAgKDB4RkZGRlVMIDw8IFRJTV9SQ1JfUkVQX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovCisjZGVmaW5lIFRJTV9SQ1JfUkVQICAgICAgICAgICAgICAgVElNX1JDUl9SRVBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPFJlcGV0aXRpb24gQ291bnRlciBWYWx1ZSAqLworCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9DQ1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBUSU1fQ0NSMV9DQ1IxX1BvcyAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ0NSMV9DQ1IxX01zayAgICAgICAgICgweEZGRkZVTCA8PCBUSU1fQ0NSMV9DQ1IxX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLworI2RlZmluZSBUSU1fQ0NSMV9DQ1IxICAgICAgICAgICAgIFRJTV9DQ1IxX0NDUjFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMSBWYWx1ZSAqLworCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9DQ1IyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBUSU1fQ0NSMl9DQ1IyX1BvcyAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ0NSMl9DQ1IyX01zayAgICAgICAgICgweEZGRkZVTCA8PCBUSU1fQ0NSMl9DQ1IyX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLworI2RlZmluZSBUSU1fQ0NSMl9DQ1IyICAgICAgICAgICAgIFRJTV9DQ1IyX0NDUjJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMiBWYWx1ZSAqLworCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9DQ1IzIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBUSU1fQ0NSM19DQ1IzX1BvcyAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ0NSM19DQ1IzX01zayAgICAgICAgICgweEZGRkZVTCA8PCBUSU1fQ0NSM19DQ1IzX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLworI2RlZmluZSBUSU1fQ0NSM19DQ1IzICAgICAgICAgICAgIFRJTV9DQ1IzX0NDUjNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMyBWYWx1ZSAqLworCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9DQ1I0IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBUSU1fQ0NSNF9DQ1I0X1BvcyAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ0NSNF9DQ1I0X01zayAgICAgICAgICgweEZGRkZVTCA8PCBUSU1fQ0NSNF9DQ1I0X1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLworI2RlZmluZSBUSU1fQ0NSNF9DQ1I0ICAgICAgICAgICAgIFRJTV9DQ1I0X0NDUjRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgNCBWYWx1ZSAqLworCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9DQ1I1IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBUSU1fQ0NSNV9DQ1I1X1BvcyAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ0NSNV9DQ1I1X01zayAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgVElNX0NDUjVfQ0NSNV9Qb3MpICAgICAgICAgIC8qITwgMHhGRkZGRkZGRiAqLworI2RlZmluZSBUSU1fQ0NSNV9DQ1I1ICAgICAgICAgICAgIFRJTV9DQ1I1X0NDUjVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgNSBWYWx1ZSAqLworI2RlZmluZSBUSU1fQ0NSNV9HQzVDMV9Qb3MgICAgICAgICgyOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ0NSNV9HQzVDMV9Nc2sgICAgICAgICgweDFVTCA8PCBUSU1fQ0NSNV9HQzVDMV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgyMDAwMDAwMCAqLworI2RlZmluZSBUSU1fQ0NSNV9HQzVDMSAgICAgICAgICAgIFRJTV9DQ1I1X0dDNUMxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxHcm91cCBDaGFubmVsIDUgYW5kIENoYW5uZWwgMSAqLworI2RlZmluZSBUSU1fQ0NSNV9HQzVDMl9Qb3MgICAgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ0NSNV9HQzVDMl9Nc2sgICAgICAgICgweDFVTCA8PCBUSU1fQ0NSNV9HQzVDMl9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHg0MDAwMDAwMCAqLworI2RlZmluZSBUSU1fQ0NSNV9HQzVDMiAgICAgICAgICAgIFRJTV9DQ1I1X0dDNUMyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxHcm91cCBDaGFubmVsIDUgYW5kIENoYW5uZWwgMiAqLworI2RlZmluZSBUSU1fQ0NSNV9HQzVDM19Qb3MgICAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ0NSNV9HQzVDM19Nc2sgICAgICAgICgweDFVTCA8PCBUSU1fQ0NSNV9HQzVDM19Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHg4MDAwMDAwMCAqLworI2RlZmluZSBUSU1fQ0NSNV9HQzVDMyAgICAgICAgICAgIFRJTV9DQ1I1X0dDNUMzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxHcm91cCBDaGFubmVsIDUgYW5kIENoYW5uZWwgMyAqLworCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9DQ1I2IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBUSU1fQ0NSNl9DQ1I2X1BvcyAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQ0NSNl9DQ1I2X01zayAgICAgICAgICgweEZGRkZVTCA8PCBUSU1fQ0NSNl9DQ1I2X1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLworI2RlZmluZSBUSU1fQ0NSNl9DQ1I2ICAgICAgICAgICAgIFRJTV9DQ1I2X0NDUjZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgNiBWYWx1ZSAqLworCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9CRFRSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBUSU1fQkRUUl9EVEdfUG9zICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQkRUUl9EVEdfTXNrICAgICAgICAgICgweEZGVUwgPDwgVElNX0JEVFJfRFRHX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDBGRiAqLworI2RlZmluZSBUSU1fQkRUUl9EVEcgICAgICAgICAgICAgIFRJTV9CRFRSX0RUR19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxEVEdbMDo3XSBiaXRzIChEZWFkLVRpbWUgR2VuZXJhdG9yIHNldC11cCkgKi8KKyNkZWZpbmUgVElNX0JEVFJfRFRHXzAgICAgICAgICAgICAoMHgwMVUgPDwgVElNX0JEVFJfRFRHX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgVElNX0JEVFJfRFRHXzEgICAgICAgICAgICAoMHgwMlUgPDwgVElNX0JEVFJfRFRHX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgVElNX0JEVFJfRFRHXzIgICAgICAgICAgICAoMHgwNFUgPDwgVElNX0JEVFJfRFRHX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgVElNX0JEVFJfRFRHXzMgICAgICAgICAgICAoMHgwOFUgPDwgVElNX0JEVFJfRFRHX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgVElNX0JEVFJfRFRHXzQgICAgICAgICAgICAoMHgxMFUgPDwgVElNX0JEVFJfRFRHX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgVElNX0JEVFJfRFRHXzUgICAgICAgICAgICAoMHgyMFUgPDwgVElNX0JEVFJfRFRHX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgVElNX0JEVFJfRFRHXzYgICAgICAgICAgICAoMHg0MFUgPDwgVElNX0JEVFJfRFRHX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgVElNX0JEVFJfRFRHXzcgICAgICAgICAgICAoMHg4MFUgPDwgVElNX0JEVFJfRFRHX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKworI2RlZmluZSBUSU1fQkRUUl9MT0NLX1BvcyAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQkRUUl9MT0NLX01zayAgICAgICAgICgweDNVTCA8PCBUSU1fQkRUUl9MT0NLX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDMwMCAqLworI2RlZmluZSBUSU1fQkRUUl9MT0NLICAgICAgICAgICAgIFRJTV9CRFRSX0xPQ0tfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxMT0NLWzE6MF0gYml0cyAoTG9jayBDb25maWd1cmF0aW9uKSAqLworI2RlZmluZSBUSU1fQkRUUl9MT0NLXzAgICAgICAgICAgICgweDFVIDw8IFRJTV9CRFRSX0xPQ0tfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBUSU1fQkRUUl9MT0NLXzEgICAgICAgICAgICgweDJVIDw8IFRJTV9CRFRSX0xPQ0tfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworCisjZGVmaW5lIFRJTV9CRFRSX09TU0lfUG9zICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9CRFRSX09TU0lfTXNrICAgICAgICAgKDB4MVVMIDw8IFRJTV9CRFRSX09TU0lfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIFRJTV9CRFRSX09TU0kgICAgICAgICAgICAgVElNX0JEVFJfT1NTSV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPE9mZi1TdGF0ZSBTZWxlY3Rpb24gZm9yIElkbGUgbW9kZSAqLworI2RlZmluZSBUSU1fQkRUUl9PU1NSX1BvcyAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQkRUUl9PU1NSX01zayAgICAgICAgICgweDFVTCA8PCBUSU1fQkRUUl9PU1NSX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLworI2RlZmluZSBUSU1fQkRUUl9PU1NSICAgICAgICAgICAgIFRJTV9CRFRSX09TU1JfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxPZmYtU3RhdGUgU2VsZWN0aW9uIGZvciBSdW4gbW9kZSAqLworI2RlZmluZSBUSU1fQkRUUl9CS0VfUG9zICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQkRUUl9CS0VfTXNrICAgICAgICAgICgweDFVTCA8PCBUSU1fQkRUUl9CS0VfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBUSU1fQkRUUl9CS0UgICAgICAgICAgICAgIFRJTV9CRFRSX0JLRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxCcmVhayBlbmFibGUgZm9yIEJyZWFrIDEgKi8KKyNkZWZpbmUgVElNX0JEVFJfQktQX1BvcyAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0JEVFJfQktQX01zayAgICAgICAgICAoMHgxVUwgPDwgVElNX0JEVFJfQktQX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgVElNX0JEVFJfQktQICAgICAgICAgICAgICBUSU1fQkRUUl9CS1BfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8QnJlYWsgUG9sYXJpdHkgZm9yIEJyZWFrIDEgKi8KKyNkZWZpbmUgVElNX0JEVFJfQU9FX1BvcyAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0JEVFJfQU9FX01zayAgICAgICAgICAoMHgxVUwgPDwgVElNX0JEVFJfQU9FX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgVElNX0JEVFJfQU9FICAgICAgICAgICAgICBUSU1fQkRUUl9BT0VfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8QXV0b21hdGljIE91dHB1dCBlbmFibGUgKi8KKyNkZWZpbmUgVElNX0JEVFJfTU9FX1BvcyAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0JEVFJfTU9FX01zayAgICAgICAgICAoMHgxVUwgPDwgVElNX0JEVFJfTU9FX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgVElNX0JEVFJfTU9FICAgICAgICAgICAgICBUSU1fQkRUUl9NT0VfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8TWFpbiBPdXRwdXQgZW5hYmxlICovCisKKyNkZWZpbmUgVElNX0JEVFJfQktGX1BvcyAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0JEVFJfQktGX01zayAgICAgICAgICAoMHhGVUwgPDwgVElNX0JEVFJfQktGX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwRjAwMDAgKi8KKyNkZWZpbmUgVElNX0JEVFJfQktGICAgICAgICAgICAgICBUSU1fQkRUUl9CS0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8QnJlYWsgRmlsdGVyIGZvciBCcmVhayAxICovCisjZGVmaW5lIFRJTV9CRFRSX0JLMkZfUG9zICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9CRFRSX0JLMkZfTXNrICAgICAgICAgKDB4RlVMIDw8IFRJTV9CRFRSX0JLMkZfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwRjAwMDAwICovCisjZGVmaW5lIFRJTV9CRFRSX0JLMkYgICAgICAgICAgICAgVElNX0JEVFJfQksyRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPEJyZWFrIEZpbHRlciBmb3IgQnJlYWsgMiAqLworCisjZGVmaW5lIFRJTV9CRFRSX0JLMkVfUG9zICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9CRFRSX0JLMkVfTXNrICAgICAgICAgKDB4MVVMIDw8IFRJTV9CRFRSX0JLMkVfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAxMDAwMDAwICovCisjZGVmaW5lIFRJTV9CRFRSX0JLMkUgICAgICAgICAgICAgVElNX0JEVFJfQksyRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPEJyZWFrIGVuYWJsZSBmb3IgQnJlYWsgMiAqLworI2RlZmluZSBUSU1fQkRUUl9CSzJQX1BvcyAgICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQkRUUl9CSzJQX01zayAgICAgICAgICgweDFVTCA8PCBUSU1fQkRUUl9CSzJQX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLworI2RlZmluZSBUSU1fQkRUUl9CSzJQICAgICAgICAgICAgIFRJTV9CRFRSX0JLMlBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxCcmVhayBQb2xhcml0eSBmb3IgQnJlYWsgMiAqLworCisjZGVmaW5lIFRJTV9CRFRSX0JLRFNSTV9Qb3MgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9CRFRSX0JLRFNSTV9Nc2sgICAgICAgKDB4MVVMIDw8IFRJTV9CRFRSX0JLRFNSTV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDA0MDAwMDAwICovCisjZGVmaW5lIFRJTV9CRFRSX0JLRFNSTSAgICAgICAgICAgVElNX0JEVFJfQktEU1JNX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPEJyZWFrIGRpc2FybWluZy9yZS1hcm1pbmcgKi8KKyNkZWZpbmUgVElNX0JEVFJfQksyRFNSTV9Qb3MgICAgICAoMjdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0JEVFJfQksyRFNSTV9Nc2sgICAgICAoMHgxVUwgPDwgVElNX0JEVFJfQksyRFNSTV9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8KKyNkZWZpbmUgVElNX0JEVFJfQksyRFNSTSAgICAgICAgICBUSU1fQkRUUl9CSzJEU1JNX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8QnJlYWsyIGRpc2FybWluZy9yZS1hcm1pbmcgKi8KKworI2RlZmluZSBUSU1fQkRUUl9CS0JJRF9Qb3MgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU1fQkRUUl9CS0JJRF9Nc2sgICAgICAgICgweDFVTCA8PCBUSU1fQkRUUl9CS0JJRF9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgxMDAwMDAwMCAqLworI2RlZmluZSBUSU1fQkRUUl9CS0JJRCAgICAgICAgICAgIFRJTV9CRFRSX0JLQklEX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxCcmVhayBCSURpcmVjdGlvbmFsICovCisjZGVmaW5lIFRJTV9CRFRSX0JLMkJJRF9Qb3MgICAgICAgKDI5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9CRFRSX0JLMkJJRF9Nc2sgICAgICAgKDB4MVVMIDw8IFRJTV9CRFRSX0JLMkJJRF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDIwMDAwMDAwICovCisjZGVmaW5lIFRJTV9CRFRSX0JLMkJJRCAgICAgICAgICAgVElNX0JEVFJfQksyQklEX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPEJyZWFrMiBCSURpcmVjdGlvbmFsICovCisKKy8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0RDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFRJTV9EQ1JfREJBX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTV9EQ1JfREJBX01zayAgICAgICAgICAgKDB4MUZVTCA8PCBUSU1fRENSX0RCQV9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDFGICovCisjZGVmaW5lIFRJTV9EQ1JfREJBICAgICAgICAgICAgICAgVElNX0RDUl9EQkFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPERCQVs0OjBdIGJpdHMgKERNQSBCYXNlIEFkZHJlc3MpICovCisjZGVmaW5lIFRJTV9EQ1JfREJBXzAgICAgICAgICAgICAgKDB4MDFVIDw8IFRJTV9EQ1JfREJBX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFRJTV9EQ1JfREJBXzEgICAgICAgICAgICAgKDB4MDJVIDw8IFRJTV9EQ1JfREJBX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFRJTV9EQ1JfREJBXzIgICAgICAgICAgICAgKDB4MDRVIDw8IFRJTV9EQ1JfREJBX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIFRJTV9EQ1JfREJBXzMgICAgICAgICAgICAgKDB4MDhVIDw8IFRJTV9EQ1JfREJBX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIFRJTV9EQ1JfREJBXzQgICAgICAgICAgICAgKDB4MTBVIDw8IFRJTV9EQ1JfREJBX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisKKyNkZWZpbmUgVElNX0RDUl9EQkxfUG9zICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0RDUl9EQkxfTXNrICAgICAgICAgICAoMHgxRlVMIDw8IFRJTV9EQ1JfREJMX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDFGMDAgKi8KKyNkZWZpbmUgVElNX0RDUl9EQkwgICAgICAgICAgICAgICBUSU1fRENSX0RCTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8REJMWzQ6MF0gYml0cyAoRE1BIEJ1cnN0IExlbmd0aCkgKi8KKyNkZWZpbmUgVElNX0RDUl9EQkxfMCAgICAgICAgICAgICAoMHgwMVUgPDwgVElNX0RDUl9EQkxfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgVElNX0RDUl9EQkxfMSAgICAgICAgICAgICAoMHgwMlUgPDwgVElNX0RDUl9EQkxfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgVElNX0RDUl9EQkxfMiAgICAgICAgICAgICAoMHgwNFUgPDwgVElNX0RDUl9EQkxfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgVElNX0RDUl9EQkxfMyAgICAgICAgICAgICAoMHgwOFUgPDwgVElNX0RDUl9EQkxfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgVElNX0RDUl9EQkxfNCAgICAgICAgICAgICAoMHgxMFUgPDwgVElNX0RDUl9EQkxfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fRE1BUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgVElNX0RNQVJfRE1BQl9Qb3MgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNX0RNQVJfRE1BQl9Nc2sgICAgICAgICAoMHhGRkZGVUwgPDwgVElNX0RNQVJfRE1BQl9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8KKyNkZWZpbmUgVElNX0RNQVJfRE1BQiAgICAgICAgICAgICBUSU1fRE1BUl9ETUFCX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8RE1BIHJlZ2lzdGVyIGZvciBidXJzdCBhY2Nlc3NlcyAqLworCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTTFfT1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFRJTTFfT1JfRVRSX0FEQzFfUk1QX1BvcyAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNMV9PUl9FVFJfQURDMV9STVBfTXNrICAgICAgKDB4M1VMIDw8IFRJTTFfT1JfRVRSX0FEQzFfUk1QX1BvcykgICAgLyohPCAweDAwMDAwMDAzICovCisjZGVmaW5lIFRJTTFfT1JfRVRSX0FEQzFfUk1QICAgICAgICAgIFRJTTFfT1JfRVRSX0FEQzFfUk1QX01zayAgICAgICAgICAgICAgIC8qITwgVElNMV9FVFJfQURDMSByZW1hcHBpbmcgY2FwYWJpbGl0eSovCisjZGVmaW5lIFRJTTFfT1JfRVRSX0FEQzFfUk1QXzAgICAgICAgICgweDFVIDw8IFRJTTFfT1JfRVRSX0FEQzFfUk1QX1BvcykgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBUSU0xX09SX0VUUl9BREMxX1JNUF8xICAgICAgICAoMHgyVSA8PCBUSU0xX09SX0VUUl9BREMxX1JNUF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgVElNMV9PUl9USTFfUk1QX1BvcyAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNMV9PUl9USTFfUk1QX01zayAgICAgICAgICAgICgweDFVTCA8PCBUSU0xX09SX1RJMV9STVBfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgVElNMV9PUl9USTFfUk1QICAgICAgICAgICAgICAgIFRJTTFfT1JfVEkxX1JNUF9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IElucHV0IENhcHR1cmUgMSByZW1hcCovCisKKy8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNMl9PUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgVElNMl9PUl9USTRfUk1QX1BvcyAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU0yX09SX1RJNF9STVBfTXNrICAgICAgKDB4M1VMIDw8IFRJTTJfT1JfVEk0X1JNUF9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMEMgKi8KKyNkZWZpbmUgVElNMl9PUl9USTRfUk1QICAgICAgICAgIFRJTTJfT1JfVEk0X1JNUF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBUSTQgUk1BWzE6MF1JbnB1dCBjYXB0dXJlIDQgcmVtYXAqLworI2RlZmluZSBUSU0yX09SX1RJNF9STVBfMCAgICAgICAgKDB4MVUgPDwgVElNMl9PUl9USTRfUk1QX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgVElNMl9PUl9USTRfUk1QXzEgICAgICAgICgweDJVIDw8IFRJTTJfT1JfVEk0X1JNUF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIFRJTTJfT1JfRVRSX1JNUF9Qb3MgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNMl9PUl9FVFJfUk1QX01zayAgICAgICgweDFVTCA8PCBUSU0yX09SX0VUUl9STVBfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFRJTTJfT1JfRVRSX1JNUCAgICAgICAgICBUSU0yX09SX0VUUl9STVBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRXh0ZXJuYWwgdHJpZ2dlciByZW1hcCovCisjZGVmaW5lIFRJTTJfT1JfSVRSMV9STVBfUG9zICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNMl9PUl9JVFIxX1JNUF9Nc2sgICAgICgweDFVTCA8PCBUSU0yX09SX0lUUjFfUk1QX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFRJTTJfT1JfSVRSMV9STVAgICAgICAgICBUSU0yX09SX0lUUjFfUk1QX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJuYWwgdHJpZ2dlciByZW1hcCovCisKKy8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNMTZfT1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgVElNMTZfT1JfVEkxX1JNUF9Qb3MgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU0xNl9PUl9USTFfUk1QX01zayAgICAgICgweDNVTCA8PCBUSU0xNl9PUl9USTFfUk1QX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDMgKi8KKyNkZWZpbmUgVElNMTZfT1JfVEkxX1JNUCAgICAgICAgICBUSU0xNl9PUl9USTFfUk1QX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPFRpbWVyIDE2IGlucHV0IDEgY29ubmVjdGlvbi4gKi8KKyNkZWZpbmUgVElNMTZfT1JfVEkxX1JNUF8wICAgICAgICAoMHgxVSA8PCBUSU0xNl9PUl9USTFfUk1QX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFRJTTE2X09SX1RJMV9STVBfMSAgICAgICAgKDB4MlUgPDwgVElNMTZfT1JfVEkxX1JNUF9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTTE3X09SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFRJTTE3X09SX1RJMV9STVBfUG9zICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNMTdfT1JfVEkxX1JNUF9Nc2sgICAgICAoMHgzVUwgPDwgVElNMTdfT1JfVEkxX1JNUF9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDAzICovCisjZGVmaW5lIFRJTTE3X09SX1RJMV9STVAgICAgICAgICAgVElNMTdfT1JfVEkxX1JNUF9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITxUaW1lciAxNyBpbnB1dCAxIGNvbm5lY3Rpb24uICovCisjZGVmaW5lIFRJTTE3X09SX1RJMV9STVBfMCAgICAgICAgKDB4MVUgPDwgVElNMTdfT1JfVEkxX1JNUF9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBUSU0xN19PUl9USTFfUk1QXzEgICAgICAgICgweDJVIDw8IFRJTTE3X09SX1RJMV9STVBfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU0xX0FGMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgVElNMV9BRjFfQktJTkVfUG9zICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNMV9BRjFfQktJTkVfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBUSU0xX0FGMV9CS0lORV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgVElNMV9BRjFfQktJTkUgICAgICAgICAgICAgICAgIFRJTTFfQUYxX0JLSU5FX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8QlJLIEJLSU4gaW5wdXQgZW5hYmxlICovCisjZGVmaW5lIFRJTTFfQUYxX0JLQ01QMUVfUG9zICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTTFfQUYxX0JLQ01QMUVfTXNrICAgICAgICAgICAoMHgxVUwgPDwgVElNMV9BRjFfQktDTVAxRV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFRJTTFfQUYxX0JLQ01QMUUgICAgICAgICAgICAgICBUSU0xX0FGMV9CS0NNUDFFX01zayAgICAgICAgICAgICAgICAgICAgLyohPEJSSyBDT01QMSBlbmFibGUgKi8KKyNkZWZpbmUgVElNMV9BRjFfQktDTVAyRV9Qb3MgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNMV9BRjFfQktDTVAyRV9Nc2sgICAgICAgICAgICgweDFVTCA8PCBUSU0xX0FGMV9CS0NNUDJFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgVElNMV9BRjFfQktDTVAyRSAgICAgICAgICAgICAgIFRJTTFfQUYxX0JLQ01QMkVfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8QlJLIENPTVAyIGVuYWJsZSAqLworI2RlZmluZSBUSU0xX0FGMV9CS0lOUF9Qb3MgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU0xX0FGMV9CS0lOUF9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTTFfQUYxX0JLSU5QX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBUSU0xX0FGMV9CS0lOUCAgICAgICAgICAgICAgICAgVElNMV9BRjFfQktJTlBfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITxCUksgQktJTiBpbnB1dCBwb2xhcml0eSAqLworI2RlZmluZSBUSU0xX0FGMV9CS0NNUDFQX1BvcyAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU0xX0FGMV9CS0NNUDFQX01zayAgICAgICAgICAgKDB4MVVMIDw8IFRJTTFfQUYxX0JLQ01QMVBfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLworI2RlZmluZSBUSU0xX0FGMV9CS0NNUDFQICAgICAgICAgICAgICAgVElNMV9BRjFfQktDTVAxUF9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITxCUksgQ09NUDEgaW5wdXQgcG9sYXJpdHkgKi8KKyNkZWZpbmUgVElNMV9BRjFfQktDTVAyUF9Qb3MgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNMV9BRjFfQktDTVAyUF9Nc2sgICAgICAgICAgICgweDFVTCA8PCBUSU0xX0FGMV9CS0NNUDJQX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgVElNMV9BRjFfQktDTVAyUCAgICAgICAgICAgICAgIFRJTTFfQUYxX0JLQ01QMlBfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8QlJLIENPTVAyIGlucHV0IHBvbGFyaXR5ICovCisjZGVmaW5lIFRJTTFfQUYxX0VUUlNFTF9Qb3MgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTTFfQUYxX0VUUlNFTF9Nc2sgICAgICAgICAgICAoMHg3VUwgPDwgVElNMV9BRjFfRVRSU0VMX1BvcykgICAgICAgICAgLyohPCAweDAwMDFDMDAwICovCisjZGVmaW5lIFRJTTFfQUYxX0VUUlNFTCAgICAgICAgICAgICAgICBUSU0xX0FGMV9FVFJTRUxfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPEVUUlNFTFsyOjBdIGJpdHMgKFRJTTEgRVRSIHNvdXJjZSBzZWxlY3Rpb24pICovCisjZGVmaW5lIFRJTTFfQUYxX0VUUlNFTF8wICAgICAgICAgICAgICAoMHgxVSA8PCBUSU0xX0FGMV9FVFJTRUxfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIFRJTTFfQUYxX0VUUlNFTF8xICAgICAgICAgICAgICAoMHgyVSA8PCBUSU0xX0FGMV9FVFJTRUxfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovCisjZGVmaW5lIFRJTTFfQUYxX0VUUlNFTF8yICAgICAgICAgICAgICAoMHg0VSA8PCBUSU0xX0FGMV9FVFJTRUxfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovCisKKy8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNMl9BRjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFRJTTJfQUYxX0VUUlNFTF9Qb3MgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU0yX0FGMV9FVFJTRUxfTXNrICAgICAgICgweDdVTCA8PCBUSU0yX0FGMV9FVFJTRUxfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAxQzAwMCAqLworI2RlZmluZSBUSU0yX0FGMV9FVFJTRUwgICAgICAgICAgICgweDAwMDAxQzAwMCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRXh0ZXJuYWwgdHJpZ2dlciBzb3VyY2Ugc2VsZWN0aW9uICovCisjZGVmaW5lIFRJTTJfQUYxX0VUUlNFTF8wICAgICAgICAgKDB4MDAwMDA0MDAwKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXRfMCAqLworI2RlZmluZSBUSU0yX0FGMV9FVFJTRUxfMSAgICAgICAgICgweDAwMDAwODAwMCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0XzEgKi8KKyNkZWZpbmUgVElNMl9BRjFfRVRSU0VMXzIgICAgICAgICAoMHgwMDAwMTAwMDApICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdF8yICovCisKKy8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNMTZfQUYxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBUSU0xNl9BRjFfQktJTkVfUG9zICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU0xNl9BRjFfQktJTkVfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFRJTTE2X0FGMV9CS0lORV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgVElNMTZfQUYxX0JLSU5FICAgICAgICAgICAgICAgICBUSU0xNl9BRjFfQktJTkVfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPEJSSyBCS0lOIGlucHV0IGVuYWJsZSAqLworI2RlZmluZSBUSU0xNl9BRjFfQktDTVAxRV9Qb3MgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU0xNl9BRjFfQktDTVAxRV9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFRJTTE2X0FGMV9CS0NNUDFFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBUSU0xNl9BRjFfQktDTVAxRSAgICAgICAgICAgICAgVElNMTZfQUYxX0JLQ01QMUVfTXNrICAgICAgICAgICAgICAgICAgIC8qITxCUksgQ09NUDEgZW5hYmxlICovCisjZGVmaW5lIFRJTTE2X0FGMV9CS0NNUDJFX1BvcyAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTTE2X0FGMV9CS0NNUDJFX01zayAgICAgICAgICAoMHgxVUwgPDwgVElNMTZfQUYxX0JLQ01QMkVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIFRJTTE2X0FGMV9CS0NNUDJFICAgICAgICAgICAgICBUSU0xNl9BRjFfQktDTVAyRV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPEJSSyBDT01QMiBlbmFibGUgKi8KKyNkZWZpbmUgVElNMTZfQUYxX0JLSU5QX1BvcyAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNMTZfQUYxX0JLSU5QX01zayAgICAgICAgICAgICgweDFVTCA8PCBUSU0xNl9BRjFfQktJTlBfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgVElNMTZfQUYxX0JLSU5QICAgICAgICAgICAgICAgIFRJTTE2X0FGMV9CS0lOUF9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8QlJLIEJLSU4yIGlucHV0IHBvbGFyaXR5ICovCisjZGVmaW5lIFRJTTE2X0FGMV9CS0NNUDFQX1BvcyAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTTE2X0FGMV9CS0NNUDFQX01zayAgICAgICAgICAoMHgxVUwgPDwgVElNMTZfQUYxX0JLQ01QMVBfUG9zKSAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIFRJTTE2X0FGMV9CS0NNUDFQICAgICAgICAgICAgICBUSU0xNl9BRjFfQktDTVAxUF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPEJSSyBDT01QMSBpbnB1dCBwb2xhcml0eSAqLworI2RlZmluZSBUSU0xNl9BRjFfQktDTVAyUF9Qb3MgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU0xNl9BRjFfQktDTVAyUF9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFRJTTE2X0FGMV9CS0NNUDJQX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLworI2RlZmluZSBUSU0xNl9BRjFfQktDTVAyUCAgICAgICAgICAgICAgVElNMTZfQUYxX0JLQ01QMlBfTXNrICAgICAgICAgICAgICAgICAgIC8qITxCUksgQ09NUDIgaW5wdXQgcG9sYXJpdHkgKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU0xN19BRjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFRJTTE3X0FGMV9CS0lORV9Qb3MgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU0xN19BRjFfQktJTkVfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBUSU0xN19BRjFfQktJTkVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFRJTTE3X0FGMV9CS0lORSAgICAgICAgICAgICAgICAgVElNMTdfQUYxX0JLSU5FX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8QlJLIEJLSU4gaW5wdXQgZW5hYmxlICovCisjZGVmaW5lIFRJTTE3X0FGMV9CS0NNUDFFX1BvcyAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTTE3X0FGMV9CS0NNUDFFX01zayAgICAgICAgICAoMHgxVUwgPDwgVElNMTdfQUYxX0JLQ01QMUVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFRJTTE3X0FGMV9CS0NNUDFFICAgICAgICAgICAgICBUSU0xN19BRjFfQktDTVAxRV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPEJSSyBDT01QMSBlbmFibGUgKi8KKyNkZWZpbmUgVElNMTdfQUYxX0JLQ01QMkVfUG9zICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNMTdfQUYxX0JLQ01QMkVfTXNrICAgICAgICAgICgweDFVTCA8PCBUSU0xN19BRjFfQktDTVAyRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgVElNMTdfQUYxX0JLQ01QMkUgICAgICAgICAgICAgIFRJTTE3X0FGMV9CS0NNUDJFX01zayAgICAgICAgICAgICAgICAgICAvKiE8QlJLIENPTVAyIGVuYWJsZSAqLworI2RlZmluZSBUSU0xN19BRjFfQktJTlBfUG9zICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU0xN19BRjFfQktJTlBfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFRJTTE3X0FGMV9CS0lOUF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBUSU0xN19BRjFfQktJTlAgICAgICAgICAgICAgICAgVElNMTdfQUYxX0JLSU5QX01zayAgICAgICAgICAgICAgICAgICAgIC8qITxCUksgQktJTjIgaW5wdXQgcG9sYXJpdHkgKi8KKyNkZWZpbmUgVElNMTdfQUYxX0JLQ01QMVBfUG9zICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNMTdfQUYxX0JLQ01QMVBfTXNrICAgICAgICAgICgweDFVTCA8PCBUSU0xN19BRjFfQktDTVAxUF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgVElNMTdfQUYxX0JLQ01QMVAgICAgICAgICAgICAgIFRJTTE3X0FGMV9CS0NNUDFQX01zayAgICAgICAgICAgICAgICAgICAvKiE8QlJLIENPTVAxIGlucHV0IHBvbGFyaXR5ICovCisjZGVmaW5lIFRJTTE3X0FGMV9CS0NNUDJQX1BvcyAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTTE3X0FGMV9CS0NNUDJQX01zayAgICAgICAgICAoMHgxVUwgPDwgVElNMTdfQUYxX0JLQ01QMlBfUG9zKSAgICAgICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIFRJTTE3X0FGMV9CS0NNUDJQICAgICAgICAgICAgICBUSU0xN19BRjFfQktDTVAyUF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPEJSSyBDT01QMiBpbnB1dCBwb2xhcml0eSAqLworCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTTFfQUYyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBUSU0xX0FGMl9CSzJJTkVfUG9zICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU0xX0FGMl9CSzJJTkVfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFRJTTFfQUYyX0JLMklORV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBUSU0xX0FGMl9CSzJJTkUgICAgICAgICAgICAgICAgVElNMV9BRjJfQksySU5FX01zayAgICAgICAgICAgICAgICAgICAgIC8qITxCUksyIEJLSU4yIGlucHV0IGVuYWJsZSAqLworI2RlZmluZSBUSU0xX0FGMl9CSzJDTVAxRV9Qb3MgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU0xX0FGMl9CSzJDTVAxRV9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFRJTTFfQUYyX0JLMkNNUDFFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBUSU0xX0FGMl9CSzJDTVAxRSAgICAgICAgICAgICAgVElNMV9BRjJfQksyQ01QMUVfTXNrICAgICAgICAgICAgICAgICAgIC8qITxCUksyIENPTVAxIGVuYWJsZSAqLworI2RlZmluZSBUSU0xX0FGMl9CSzJDTVAyRV9Qb3MgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU0xX0FGMl9CSzJDTVAyRV9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFRJTTFfQUYyX0JLMkNNUDJFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBUSU0xX0FGMl9CSzJDTVAyRSAgICAgICAgICAgICAgVElNMV9BRjJfQksyQ01QMkVfTXNrICAgICAgICAgICAgICAgICAgIC8qITxCUksyIENPTVAyIGVuYWJsZSAqLworI2RlZmluZSBUSU0xX0FGMl9CSzJJTlBfUG9zICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBUSU0xX0FGMl9CSzJJTlBfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFRJTTFfQUYyX0JLMklOUF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBUSU0xX0FGMl9CSzJJTlAgICAgICAgICAgICAgICAgVElNMV9BRjJfQksySU5QX01zayAgICAgICAgICAgICAgICAgICAgIC8qITxCUksyIEJLSU4yIGlucHV0IHBvbGFyaXR5ICovCisjZGVmaW5lIFRJTTFfQUYyX0JLMkNNUDFQX1BvcyAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFRJTTFfQUYyX0JLMkNNUDFQX01zayAgICAgICAgICAoMHgxVUwgPDwgVElNMV9BRjJfQksyQ01QMVBfUG9zKSAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIFRJTTFfQUYyX0JLMkNNUDFQICAgICAgICAgICAgICBUSU0xX0FGMl9CSzJDTVAxUF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPEJSSzIgQ09NUDEgaW5wdXQgcG9sYXJpdHkgKi8KKyNkZWZpbmUgVElNMV9BRjJfQksyQ01QMlBfUG9zICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVElNMV9BRjJfQksyQ01QMlBfTXNrICAgICAgICAgICgweDFVTCA8PCBUSU0xX0FGMl9CSzJDTVAyUF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgVElNMV9BRjJfQksyQ01QMlAgICAgICAgICAgICAgIFRJTTFfQUYyX0JLMkNNUDJQX01zayAgICAgICAgICAgICAgICAgICAvKiE8QlJLMiBDT01QMiBpbnB1dCBwb2xhcml0eSAqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgIExvdyBQb3dlciBUaW1lciAoTFBUVElNKSAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisvKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBMUFRJTV9JU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIExQVElNX0lTUl9DTVBNX1BvcyAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIExQVElNX0lTUl9DTVBNX01zayAgICAgICAgICAoMHgxVUwgPDwgTFBUSU1fSVNSX0NNUE1fUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIExQVElNX0lTUl9DTVBNICAgICAgICAgICAgICBMUFRJTV9JU1JfQ01QTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDb21wYXJlIG1hdGNoICovCisjZGVmaW5lIExQVElNX0lTUl9BUlJNX1BvcyAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIExQVElNX0lTUl9BUlJNX01zayAgICAgICAgICAoMHgxVUwgPDwgTFBUSU1fSVNSX0FSUk1fUG9zKSAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIExQVElNX0lTUl9BUlJNICAgICAgICAgICAgICBMUFRJTV9JU1JfQVJSTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBdXRvcmVsb2FkIG1hdGNoICovCisjZGVmaW5lIExQVElNX0lTUl9FWFRUUklHX1BvcyAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIExQVElNX0lTUl9FWFRUUklHX01zayAgICAgICAoMHgxVUwgPDwgTFBUSU1fSVNSX0VYVFRSSUdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIExQVElNX0lTUl9FWFRUUklHICAgICAgICAgICBMUFRJTV9JU1JfRVhUVFJJR19Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBFeHRlcm5hbCB0cmlnZ2VyIGVkZ2UgZXZlbnQgKi8KKyNkZWZpbmUgTFBUSU1fSVNSX0NNUE9LX1BvcyAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgTFBUSU1fSVNSX0NNUE9LX01zayAgICAgICAgICgweDFVTCA8PCBMUFRJTV9JU1JfQ01QT0tfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgTFBUSU1fSVNSX0NNUE9LICAgICAgICAgICAgIExQVElNX0lTUl9DTVBPS19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvbXBhcmUgcmVnaXN0ZXIgdXBkYXRlIE9LICovCisjZGVmaW5lIExQVElNX0lTUl9BUlJPS19Qb3MgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIExQVElNX0lTUl9BUlJPS19Nc2sgICAgICAgICAoMHgxVUwgPDwgTFBUSU1fSVNSX0FSUk9LX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIExQVElNX0lTUl9BUlJPSyAgICAgICAgICAgICBMUFRJTV9JU1JfQVJST0tfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBdXRvcmVsb2FkIHJlZ2lzdGVyIHVwZGF0ZSBPSyAqLworI2RlZmluZSBMUFRJTV9JU1JfVVBfUG9zICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBMUFRJTV9JU1JfVVBfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IExQVElNX0lTUl9VUF9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBMUFRJTV9JU1JfVVAgICAgICAgICAgICAgICAgTFBUSU1fSVNSX1VQX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ291bnRlciBkaXJlY3Rpb24gY2hhbmdlIGRvd24gdG8gdXAgKi8KKyNkZWZpbmUgTFBUSU1fSVNSX0RPV05fUG9zICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgTFBUSU1fSVNSX0RPV05fTXNrICAgICAgICAgICgweDFVTCA8PCBMUFRJTV9JU1JfRE9XTl9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgTFBUSU1fSVNSX0RPV04gICAgICAgICAgICAgIExQVElNX0lTUl9ET1dOX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvdW50ZXIgZGlyZWN0aW9uIGNoYW5nZSB1cCB0byBkb3duICovCisKKy8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBMUFRJTV9JQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIExQVElNX0lDUl9DTVBNQ0ZfUG9zICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIExQVElNX0lDUl9DTVBNQ0ZfTXNrICAgICAgICAoMHgxVUwgPDwgTFBUSU1fSUNSX0NNUE1DRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIExQVElNX0lDUl9DTVBNQ0YgICAgICAgICAgICBMUFRJTV9JQ1JfQ01QTUNGX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDb21wYXJlIG1hdGNoIENsZWFyIEZsYWcgKi8KKyNkZWZpbmUgTFBUSU1fSUNSX0FSUk1DRl9Qb3MgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgTFBUSU1fSUNSX0FSUk1DRl9Nc2sgICAgICAgICgweDFVTCA8PCBMUFRJTV9JQ1JfQVJSTUNGX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgTFBUSU1fSUNSX0FSUk1DRiAgICAgICAgICAgIExQVElNX0lDUl9BUlJNQ0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEF1dG9yZWxvYWQgbWF0Y2ggQ2xlYXIgRmxhZyAqLworI2RlZmluZSBMUFRJTV9JQ1JfRVhUVFJJR0NGX1BvcyAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBMUFRJTV9JQ1JfRVhUVFJJR0NGX01zayAgICAgKDB4MVVMIDw8IExQVElNX0lDUl9FWFRUUklHQ0ZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBMUFRJTV9JQ1JfRVhUVFJJR0NGICAgICAgICAgTFBUSU1fSUNSX0VYVFRSSUdDRl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgRXh0ZXJuYWwgdHJpZ2dlciBlZGdlIGV2ZW50IENsZWFyIEZsYWcgKi8KKyNkZWZpbmUgTFBUSU1fSUNSX0NNUE9LQ0ZfUG9zICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgTFBUSU1fSUNSX0NNUE9LQ0ZfTXNrICAgICAgICgweDFVTCA8PCBMUFRJTV9JQ1JfQ01QT0tDRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgTFBUSU1fSUNSX0NNUE9LQ0YgICAgICAgICAgIExQVElNX0lDUl9DTVBPS0NGX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvbXBhcmUgcmVnaXN0ZXIgdXBkYXRlIE9LIENsZWFyIEZsYWcgKi8KKyNkZWZpbmUgTFBUSU1fSUNSX0FSUk9LQ0ZfUG9zICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgTFBUSU1fSUNSX0FSUk9LQ0ZfTXNrICAgICAgICgweDFVTCA8PCBMUFRJTV9JQ1JfQVJST0tDRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgTFBUSU1fSUNSX0FSUk9LQ0YgICAgICAgICAgIExQVElNX0lDUl9BUlJPS0NGX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IEF1dG9yZWxvYWQgcmVnaXN0ZXIgdXBkYXRlIE9LIENsZWFyIEZsYWcgKi8KKyNkZWZpbmUgTFBUSU1fSUNSX1VQQ0ZfUG9zICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgTFBUSU1fSUNSX1VQQ0ZfTXNrICAgICAgICAgICgweDFVTCA8PCBMUFRJTV9JQ1JfVVBDRl9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgTFBUSU1fSUNSX1VQQ0YgICAgICAgICAgICAgIExQVElNX0lDUl9VUENGX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvdW50ZXIgZGlyZWN0aW9uIGNoYW5nZSBkb3duIHRvIHVwIENsZWFyIEZsYWcgKi8KKyNkZWZpbmUgTFBUSU1fSUNSX0RPV05DRl9Qb3MgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgTFBUSU1fSUNSX0RPV05DRl9Nc2sgICAgICAgICgweDFVTCA8PCBMUFRJTV9JQ1JfRE9XTkNGX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgTFBUSU1fSUNSX0RPV05DRiAgICAgICAgICAgIExQVElNX0lDUl9ET1dOQ0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvdW50ZXIgZGlyZWN0aW9uIGNoYW5nZSB1cCB0byBkb3duIENsZWFyIEZsYWcgKi8KKworLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIExQVElNX0lFUiByZWdpc3RlciAqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgTFBUSU1fSUVSX0NNUE1JRV9Qb3MgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgTFBUSU1fSUVSX0NNUE1JRV9Nc2sgICAgICAgICgweDFVTCA8PCBMUFRJTV9JRVJfQ01QTUlFX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgTFBUSU1fSUVSX0NNUE1JRSAgICAgICAgICAgIExQVElNX0lFUl9DTVBNSUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvbXBhcmUgbWF0Y2ggSW50ZXJydXB0IEVuYWJsZSAqLworI2RlZmluZSBMUFRJTV9JRVJfQVJSTUlFX1BvcyAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBMUFRJTV9JRVJfQVJSTUlFX01zayAgICAgICAgKDB4MVVMIDw8IExQVElNX0lFUl9BUlJNSUVfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBMUFRJTV9JRVJfQVJSTUlFICAgICAgICAgICAgTFBUSU1fSUVSX0FSUk1JRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQXV0b3JlbG9hZCBtYXRjaCBJbnRlcnJ1cHQgRW5hYmxlICovCisjZGVmaW5lIExQVElNX0lFUl9FWFRUUklHSUVfUG9zICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIExQVElNX0lFUl9FWFRUUklHSUVfTXNrICAgICAoMHgxVUwgPDwgTFBUSU1fSUVSX0VYVFRSSUdJRV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIExQVElNX0lFUl9FWFRUUklHSUUgICAgICAgICBMUFRJTV9JRVJfRVhUVFJJR0lFX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBFeHRlcm5hbCB0cmlnZ2VyIGVkZ2UgZXZlbnQgSW50ZXJydXB0IEVuYWJsZSAqLworI2RlZmluZSBMUFRJTV9JRVJfQ01QT0tJRV9Qb3MgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBMUFRJTV9JRVJfQ01QT0tJRV9Nc2sgICAgICAgKDB4MVVMIDw8IExQVElNX0lFUl9DTVBPS0lFX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBMUFRJTV9JRVJfQ01QT0tJRSAgICAgICAgICAgTFBUSU1fSUVSX0NNUE9LSUVfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ29tcGFyZSByZWdpc3RlciB1cGRhdGUgT0sgSW50ZXJydXB0IEVuYWJsZSAqLworI2RlZmluZSBMUFRJTV9JRVJfQVJST0tJRV9Qb3MgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBMUFRJTV9JRVJfQVJST0tJRV9Nc2sgICAgICAgKDB4MVVMIDw8IExQVElNX0lFUl9BUlJPS0lFX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBMUFRJTV9JRVJfQVJST0tJRSAgICAgICAgICAgTFBUSU1fSUVSX0FSUk9LSUVfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgQXV0b3JlbG9hZCByZWdpc3RlciB1cGRhdGUgT0sgSW50ZXJydXB0IEVuYWJsZSAqLworI2RlZmluZSBMUFRJTV9JRVJfVVBJRV9Qb3MgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBMUFRJTV9JRVJfVVBJRV9Nc2sgICAgICAgICAgKDB4MVVMIDw8IExQVElNX0lFUl9VUElFX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBMUFRJTV9JRVJfVVBJRSAgICAgICAgICAgICAgTFBUSU1fSUVSX1VQSUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ291bnRlciBkaXJlY3Rpb24gY2hhbmdlIGRvd24gdG8gdXAgSW50ZXJydXB0IEVuYWJsZSAqLworI2RlZmluZSBMUFRJTV9JRVJfRE9XTklFX1BvcyAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBMUFRJTV9JRVJfRE9XTklFX01zayAgICAgICAgKDB4MVVMIDw8IExQVElNX0lFUl9ET1dOSUVfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBMUFRJTV9JRVJfRE9XTklFICAgICAgICAgICAgTFBUSU1fSUVSX0RPV05JRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ291bnRlciBkaXJlY3Rpb24gY2hhbmdlIHVwIHRvIGRvd24gSW50ZXJydXB0IEVuYWJsZSAqLworCisvKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgTFBUSU1fQ0ZHUiByZWdpc3RlciAqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBMUFRJTV9DRkdSX0NLU0VMX1BvcyAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBMUFRJTV9DRkdSX0NLU0VMX01zayAgICAgICAgKDB4MVVMIDw8IExQVElNX0NGR1JfQ0tTRUxfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBMUFRJTV9DRkdSX0NLU0VMICAgICAgICAgICAgTFBUSU1fQ0ZHUl9DS1NFTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2xvY2sgc2VsZWN0b3IgKi8KKworI2RlZmluZSBMUFRJTV9DRkdSX0NLUE9MX1BvcyAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBMUFRJTV9DRkdSX0NLUE9MX01zayAgICAgICAgKDB4M1VMIDw8IExQVElNX0NGR1JfQ0tQT0xfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNiAqLworI2RlZmluZSBMUFRJTV9DRkdSX0NLUE9MICAgICAgICAgICAgTFBUSU1fQ0ZHUl9DS1BPTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ0tQT0xbMTowXSBiaXRzIChDbG9jayBwb2xhcml0eSkgKi8KKyNkZWZpbmUgTFBUSU1fQ0ZHUl9DS1BPTF8wICAgICAgICAgICgweDFVIDw8IExQVElNX0NGR1JfQ0tQT0xfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgTFBUSU1fQ0ZHUl9DS1BPTF8xICAgICAgICAgICgweDJVIDw8IExQVElNX0NGR1JfQ0tQT0xfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKworI2RlZmluZSBMUFRJTV9DRkdSX0NLRkxUX1BvcyAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBMUFRJTV9DRkdSX0NLRkxUX01zayAgICAgICAgKDB4M1VMIDw8IExQVElNX0NGR1JfQ0tGTFRfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxOCAqLworI2RlZmluZSBMUFRJTV9DRkdSX0NLRkxUICAgICAgICAgICAgTFBUSU1fQ0ZHUl9DS0ZMVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ0tGTFRbMTowXSBiaXRzIChDb25maWd1cmFibGUgZGlnaXRhbCBmaWx0ZXIgZm9yIGV4dGVybmFsIGNsb2NrKSAqLworI2RlZmluZSBMUFRJTV9DRkdSX0NLRkxUXzAgICAgICAgICAgKDB4MVUgPDwgTFBUSU1fQ0ZHUl9DS0ZMVF9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBMUFRJTV9DRkdSX0NLRkxUXzEgICAgICAgICAgKDB4MlUgPDwgTFBUSU1fQ0ZHUl9DS0ZMVF9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLworCisjZGVmaW5lIExQVElNX0NGR1JfVFJHRkxUX1BvcyAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIExQVElNX0NGR1JfVFJHRkxUX01zayAgICAgICAoMHgzVUwgPDwgTFBUSU1fQ0ZHUl9UUkdGTFRfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMEMwICovCisjZGVmaW5lIExQVElNX0NGR1JfVFJHRkxUICAgICAgICAgICBMUFRJTV9DRkdSX1RSR0ZMVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBUUkdGTFRbMTowXSBiaXRzIChDb25maWd1cmFibGUgZGlnaXRhbCBmaWx0ZXIgZm9yIHRyaWdnZXIpICovCisjZGVmaW5lIExQVElNX0NGR1JfVFJHRkxUXzAgICAgICAgICAoMHgxVSA8PCBMUFRJTV9DRkdSX1RSR0ZMVF9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIExQVElNX0NGR1JfVFJHRkxUXzEgICAgICAgICAoMHgyVSA8PCBMUFRJTV9DRkdSX1RSR0ZMVF9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovCisKKyNkZWZpbmUgTFBUSU1fQ0ZHUl9QUkVTQ19Qb3MgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgTFBUSU1fQ0ZHUl9QUkVTQ19Nc2sgICAgICAgICgweDdVTCA8PCBMUFRJTV9DRkdSX1BSRVNDX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDBFMDAgKi8KKyNkZWZpbmUgTFBUSU1fQ0ZHUl9QUkVTQyAgICAgICAgICAgIExQVElNX0NGR1JfUFJFU0NfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBSRVNDWzI6MF0gYml0cyAoQ2xvY2sgcHJlc2NhbGVyKSAqLworI2RlZmluZSBMUFRJTV9DRkdSX1BSRVNDXzAgICAgICAgICAgKDB4MVUgPDwgTFBUSU1fQ0ZHUl9QUkVTQ19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBMUFRJTV9DRkdSX1BSRVNDXzEgICAgICAgICAgKDB4MlUgPDwgTFBUSU1fQ0ZHUl9QUkVTQ19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLworI2RlZmluZSBMUFRJTV9DRkdSX1BSRVNDXzIgICAgICAgICAgKDB4NFUgPDwgTFBUSU1fQ0ZHUl9QUkVTQ19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLworCisjZGVmaW5lIExQVElNX0NGR1JfVFJJR1NFTF9Qb3MgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIExQVElNX0NGR1JfVFJJR1NFTF9Nc2sgICAgICAoMHg3VUwgPDwgTFBUSU1fQ0ZHUl9UUklHU0VMX1BvcykgICAgICAgICAgLyohPCAweDAwMDBFMDAwICovCisjZGVmaW5lIExQVElNX0NGR1JfVFJJR1NFTCAgICAgICAgICBMUFRJTV9DRkdSX1RSSUdTRUxfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBUUklHU0VMWzI6MF1dIGJpdHMgKFRyaWdnZXIgc2VsZWN0b3IpICovCisjZGVmaW5lIExQVElNX0NGR1JfVFJJR1NFTF8wICAgICAgICAoMHgxVSA8PCBMUFRJTV9DRkdSX1RSSUdTRUxfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIExQVElNX0NGR1JfVFJJR1NFTF8xICAgICAgICAoMHgyVSA8PCBMUFRJTV9DRkdSX1RSSUdTRUxfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIExQVElNX0NGR1JfVFJJR1NFTF8yICAgICAgICAoMHg0VSA8PCBMUFRJTV9DRkdSX1RSSUdTRUxfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovCisKKyNkZWZpbmUgTFBUSU1fQ0ZHUl9UUklHRU5fUG9zICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgTFBUSU1fQ0ZHUl9UUklHRU5fTXNrICAgICAgICgweDNVTCA8PCBMUFRJTV9DRkdSX1RSSUdFTl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwNjAwMDAgKi8KKyNkZWZpbmUgTFBUSU1fQ0ZHUl9UUklHRU4gICAgICAgICAgIExQVElNX0NGR1JfVFJJR0VOX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IFRSSUdFTlsxOjBdIGJpdHMgKFRyaWdnZXIgZW5hYmxlIGFuZCBwb2xhcml0eSkgKi8KKyNkZWZpbmUgTFBUSU1fQ0ZHUl9UUklHRU5fMCAgICAgICAgICgweDFVIDw8IExQVElNX0NGR1JfVFJJR0VOX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgTFBUSU1fQ0ZHUl9UUklHRU5fMSAgICAgICAgICgweDJVIDw8IExQVElNX0NGR1JfVFJJR0VOX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8KKworI2RlZmluZSBMUFRJTV9DRkdSX1RJTU9VVF9Qb3MgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBMUFRJTV9DRkdSX1RJTU9VVF9Nc2sgICAgICAgKDB4MVVMIDw8IExQVElNX0NGR1JfVElNT1VUX1BvcykgICAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLworI2RlZmluZSBMUFRJTV9DRkdSX1RJTU9VVCAgICAgICAgICAgTFBUSU1fQ0ZHUl9USU1PVVRfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgVGltZW91dCBlbmFibGUgKi8KKyNkZWZpbmUgTFBUSU1fQ0ZHUl9XQVZFX1BvcyAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgTFBUSU1fQ0ZHUl9XQVZFX01zayAgICAgICAgICgweDFVTCA8PCBMUFRJTV9DRkdSX1dBVkVfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgTFBUSU1fQ0ZHUl9XQVZFICAgICAgICAgICAgIExQVElNX0NGR1JfV0FWRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFdhdmVmb3JtIHNoYXBlICovCisjZGVmaW5lIExQVElNX0NGR1JfV0FWUE9MX1BvcyAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIExQVElNX0NGR1JfV0FWUE9MX01zayAgICAgICAoMHgxVUwgPDwgTFBUSU1fQ0ZHUl9XQVZQT0xfUG9zKSAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovCisjZGVmaW5lIExQVElNX0NGR1JfV0FWUE9MICAgICAgICAgICBMUFRJTV9DRkdSX1dBVlBPTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBXYXZlZm9ybSBzaGFwZSBwb2xhcml0eSAqLworI2RlZmluZSBMUFRJTV9DRkdSX1BSRUxPQURfUG9zICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBMUFRJTV9DRkdSX1BSRUxPQURfTXNrICAgICAgKDB4MVVMIDw8IExQVElNX0NGR1JfUFJFTE9BRF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLworI2RlZmluZSBMUFRJTV9DRkdSX1BSRUxPQUQgICAgICAgICAgTFBUSU1fQ0ZHUl9QUkVMT0FEX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgUmVnIHVwZGF0ZSBtb2RlICovCisjZGVmaW5lIExQVElNX0NGR1JfQ09VTlRNT0RFX1BvcyAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIExQVElNX0NGR1JfQ09VTlRNT0RFX01zayAgICAoMHgxVUwgPDwgTFBUSU1fQ0ZHUl9DT1VOVE1PREVfUG9zKSAgICAgICAgLyohPCAweDAwODAwMDAwICovCisjZGVmaW5lIExQVElNX0NGR1JfQ09VTlRNT0RFICAgICAgICBMUFRJTV9DRkdSX0NPVU5UTU9ERV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBDb3VudGVyIG1vZGUgZW5hYmxlICovCisjZGVmaW5lIExQVElNX0NGR1JfRU5DX1BvcyAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIExQVElNX0NGR1JfRU5DX01zayAgICAgICAgICAoMHgxVUwgPDwgTFBUSU1fQ0ZHUl9FTkNfUG9zKSAgICAgICAgICAgICAgLyohPCAweDAxMDAwMDAwICovCisjZGVmaW5lIExQVElNX0NGR1JfRU5DICAgICAgICAgICAgICBMUFRJTV9DRkdSX0VOQ19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFbmNvZGVyIG1vZGUgZW5hYmxlICovCisKKy8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBMUFRJTV9DUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIExQVElNX0NSX0VOQUJMRV9Qb3MgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIExQVElNX0NSX0VOQUJMRV9Nc2sgICAgICAgICAoMHgxVUwgPDwgTFBUSU1fQ1JfRU5BQkxFX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIExQVElNX0NSX0VOQUJMRSAgICAgICAgICAgICBMUFRJTV9DUl9FTkFCTEVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBMUFRJTWVyIGVuYWJsZSAqLworI2RlZmluZSBMUFRJTV9DUl9TTkdTVFJUX1BvcyAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBMUFRJTV9DUl9TTkdTVFJUX01zayAgICAgICAgKDB4MVVMIDw8IExQVElNX0NSX1NOR1NUUlRfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBMUFRJTV9DUl9TTkdTVFJUICAgICAgICAgICAgTFBUSU1fQ1JfU05HU1RSVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgc3RhcnQgaW4gc2luZ2xlIG1vZGUgKi8KKyNkZWZpbmUgTFBUSU1fQ1JfQ05UU1RSVF9Qb3MgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgTFBUSU1fQ1JfQ05UU1RSVF9Nc2sgICAgICAgICgweDFVTCA8PCBMUFRJTV9DUl9DTlRTVFJUX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgTFBUSU1fQ1JfQ05UU1RSVCAgICAgICAgICAgIExQVElNX0NSX0NOVFNUUlRfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIHN0YXJ0IGluIGNvbnRpbnVvdXMgbW9kZSAqLworI2RlZmluZSBMUFRJTV9DUl9DT1VOVFJTVF9Qb3MgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBMUFRJTV9DUl9DT1VOVFJTVF9Nc2sgICAgICAgKDB4MVVMIDw8IExQVElNX0NSX0NPVU5UUlNUX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBMUFRJTV9DUl9DT1VOVFJTVCAgICAgICAgICAgTFBUSU1fQ1JfQ09VTlRSU1RfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ291bnRlciByZXNldCAqLworI2RlZmluZSBMUFRJTV9DUl9SU1RBUkVfUG9zICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBMUFRJTV9DUl9SU1RBUkVfTXNrICAgICAgICAgKDB4MVVMIDw8IExQVElNX0NSX1JTVEFSRV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBMUFRJTV9DUl9SU1RBUkUgICAgICAgICAgICAgTFBUSU1fQ1JfUlNUQVJFX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmVzZXQgYWZ0ZXIgcmVhZCBlbmFibGUgKi8KKworLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIExQVElNX0NNUCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgTFBUSU1fQ01QX0NNUF9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgTFBUSU1fQ01QX0NNUF9Nc2sgICAgICAgICAgICgweEZGRkZVTCA8PCBMUFRJTV9DTVBfQ01QX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8KKyNkZWZpbmUgTFBUSU1fQ01QX0NNUCAgICAgICAgICAgICAgIExQVElNX0NNUF9DTVBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvbXBhcmUgcmVnaXN0ZXIgKi8KKworLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIExQVElNX0FSUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgTFBUSU1fQVJSX0FSUl9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgTFBUSU1fQVJSX0FSUl9Nc2sgICAgICAgICAgICgweEZGRkZVTCA8PCBMUFRJTV9BUlJfQVJSX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8KKyNkZWZpbmUgTFBUSU1fQVJSX0FSUiAgICAgICAgICAgICAgIExQVElNX0FSUl9BUlJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEF1dG8gcmVsb2FkIHJlZ2lzdGVyICovCisKKy8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBMUFRJTV9DTlQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIExQVElNX0NOVF9DTlRfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIExQVElNX0NOVF9DTlRfTXNrICAgICAgICAgICAoMHhGRkZGVUwgPDwgTFBUSU1fQ05UX0NOVF9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovCisjZGVmaW5lIExQVElNX0NOVF9DTlQgICAgICAgICAgICAgICBMUFRJTV9DTlRfQ05UX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDb3VudGVyIHJlZ2lzdGVyICovCisKKy8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBMUFRJTV9PUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgTFBUSU1fT1JfT1JfUG9zICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgTFBUSU1fT1JfT1JfTXNrICAgICAgICAgICAgICgweDNVTCA8PCBMUFRJTV9PUl9PUl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDMgKi8KKyNkZWZpbmUgTFBUSU1fT1JfT1IgICAgICAgICAgICAgICAgIExQVElNX09SX09SX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE9SWzE6MF0gYml0cyAoUmVtYXAgc2VsZWN0aW9uKSAqLworI2RlZmluZSBMUFRJTV9PUl9PUl8wICAgICAgICAgICAgICAgKDB4MVUgPDwgTFBUSU1fT1JfT1JfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBMUFRJTV9PUl9PUl8xICAgICAgICAgICAgICAgKDB4MlUgPDwgTFBUSU1fT1JfT1JfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qICAgICAgICAgSW50ZXItUHJvY2Vzc29yIENvbW11bmljYXRpb24gQ29udHJvbGxlciAoSVBDQykgICAgICAgICAgICAgICAgICAgICovCisvKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworLyoqKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJUENDX0MxQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8KKyNkZWZpbmUgSVBDQ19DMUNSX1JYT0lFX1BvcyAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIElQQ0NfQzFDUl9SWE9JRV9Nc2sgICAgICAoMHgxVUwgPDwgSVBDQ19DMUNSX1JYT0lFX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIElQQ0NfQzFDUl9SWE9JRSAgICAgICAgICBJUENDX0MxQ1JfUlhPSUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcm9jZXNzb3IgTTQgUmVjZWl2ZSBjaGFubmVsIG9jY3VwaWVkIGludGVycnVwdCBlbmFibGUgKi8KKyNkZWZpbmUgSVBDQ19DMUNSX1RYRklFX1BvcyAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSVBDQ19DMUNSX1RYRklFX01zayAgICAgICgweDFVTCA8PCBJUENDX0MxQ1JfVFhGSUVfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgSVBDQ19DMUNSX1RYRklFICAgICAgICAgIElQQ0NfQzFDUl9UWEZJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByb2Nlc3NvciBNNCBUcmFuc21pdCBjaGFubmVsIGZyZWUgaW50ZXJydXB0IGVuYWJsZSAqLworCisvKioqKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIElQQ0NfQzFNUiByZWdpc3RlciAgKioqKioqKioqKioqKiovCisjZGVmaW5lIElQQ0NfQzFNUl9DSDFPTV9Qb3MgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIElQQ0NfQzFNUl9DSDFPTV9Nc2sgICAgICAoMHgxVUwgPDwgSVBDQ19DMU1SX0NIMU9NX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIElQQ0NfQzFNUl9DSDFPTSAgICAgICAgICBJUENDX0MxTVJfQ0gxT01fTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBNNCBDaGFubmVsMSBvY2N1cGllZCBpbnRlcnJ1cHQgbWFzayAqLworI2RlZmluZSBJUENDX0MxTVJfQ0gyT01fUG9zICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJUENDX0MxTVJfQ0gyT01fTXNrICAgICAgKDB4MVVMIDw8IElQQ0NfQzFNUl9DSDJPTV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBJUENDX0MxTVJfQ0gyT00gICAgICAgICAgSVBDQ19DMU1SX0NIMk9NX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTTQgQ2hhbm5lbDIgb2NjdXBpZWQgaW50ZXJydXB0IG1hc2sgKi8KKyNkZWZpbmUgSVBDQ19DMU1SX0NIM09NX1BvcyAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSVBDQ19DMU1SX0NIM09NX01zayAgICAgICgweDFVTCA8PCBJUENDX0MxTVJfQ0gzT01fUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgSVBDQ19DMU1SX0NIM09NICAgICAgICAgIElQQ0NfQzFNUl9DSDNPTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE00IENoYW5uZWwzIG9jY3VwaWVkIGludGVycnVwdCBtYXNrICovCisjZGVmaW5lIElQQ0NfQzFNUl9DSDRPTV9Qb3MgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIElQQ0NfQzFNUl9DSDRPTV9Nc2sgICAgICAoMHgxVUwgPDwgSVBDQ19DMU1SX0NINE9NX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIElQQ0NfQzFNUl9DSDRPTSAgICAgICAgICBJUENDX0MxTVJfQ0g0T01fTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBNNCBDaGFubmVsNCBvY2N1cGllZCBpbnRlcnJ1cHQgbWFzayAqLworI2RlZmluZSBJUENDX0MxTVJfQ0g1T01fUG9zICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJUENDX0MxTVJfQ0g1T01fTXNrICAgICAgKDB4MVVMIDw8IElQQ0NfQzFNUl9DSDVPTV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBJUENDX0MxTVJfQ0g1T00gICAgICAgICAgSVBDQ19DMU1SX0NINU9NX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTTQgQ2hhbm5lbDUgb2NjdXBpZWQgaW50ZXJydXB0IG1hc2sgKi8KKyNkZWZpbmUgSVBDQ19DMU1SX0NINk9NX1BvcyAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSVBDQ19DMU1SX0NINk9NX01zayAgICAgICgweDFVTCA8PCBJUENDX0MxTVJfQ0g2T01fUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgSVBDQ19DMU1SX0NINk9NICAgICAgICAgIElQQ0NfQzFNUl9DSDZPTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE00IENoYW5uZWw2IG9jY3VwaWVkIGludGVycnVwdCBtYXNrICovCisKKyNkZWZpbmUgSVBDQ19DMU1SX0NIMUZNX1BvcyAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSVBDQ19DMU1SX0NIMUZNX01zayAgICAgICgweDFVTCA8PCBJUENDX0MxTVJfQ0gxRk1fUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgSVBDQ19DMU1SX0NIMUZNICAgICAgICAgIElQQ0NfQzFNUl9DSDFGTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE00IFRyYW5zbWl0IENoYW5uZWwxIGZyZWUgaW50ZXJydXB0IG1hc2sgKi8KKyNkZWZpbmUgSVBDQ19DMU1SX0NIMkZNX1BvcyAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSVBDQ19DMU1SX0NIMkZNX01zayAgICAgICgweDFVTCA8PCBJUENDX0MxTVJfQ0gyRk1fUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgSVBDQ19DMU1SX0NIMkZNICAgICAgICAgIElQQ0NfQzFNUl9DSDJGTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE00IFRyYW5zbWl0IENoYW5uZWwyIGZyZWUgaW50ZXJydXB0IG1hc2sgKi8KKyNkZWZpbmUgSVBDQ19DMU1SX0NIM0ZNX1BvcyAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSVBDQ19DMU1SX0NIM0ZNX01zayAgICAgICgweDFVTCA8PCBJUENDX0MxTVJfQ0gzRk1fUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgSVBDQ19DMU1SX0NIM0ZNICAgICAgICAgIElQQ0NfQzFNUl9DSDNGTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE00IFRyYW5zbWl0IENoYW5uZWwzIGZyZWUgaW50ZXJydXB0IG1hc2sgKi8KKyNkZWZpbmUgSVBDQ19DMU1SX0NINEZNX1BvcyAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSVBDQ19DMU1SX0NINEZNX01zayAgICAgICgweDFVTCA8PCBJUENDX0MxTVJfQ0g0Rk1fUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgSVBDQ19DMU1SX0NINEZNICAgICAgICAgIElQQ0NfQzFNUl9DSDRGTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE00IFRyYW5zbWl0IENoYW5uZWw0IGZyZWUgaW50ZXJydXB0IG1hc2sgKi8KKyNkZWZpbmUgSVBDQ19DMU1SX0NINUZNX1BvcyAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSVBDQ19DMU1SX0NINUZNX01zayAgICAgICgweDFVTCA8PCBJUENDX0MxTVJfQ0g1Rk1fUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgSVBDQ19DMU1SX0NINUZNICAgICAgICAgIElQQ0NfQzFNUl9DSDVGTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE00IFRyYW5zbWl0IENoYW5uZWw1IGZyZWUgaW50ZXJydXB0IG1hc2sgKi8KKyNkZWZpbmUgSVBDQ19DMU1SX0NINkZNX1BvcyAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSVBDQ19DMU1SX0NINkZNX01zayAgICAgICgweDFVTCA8PCBJUENDX0MxTVJfQ0g2Rk1fUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8KKyNkZWZpbmUgSVBDQ19DMU1SX0NINkZNICAgICAgICAgIElQQ0NfQzFNUl9DSDZGTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE00IFRyYW5zbWl0IENoYW5uZWw2IGZyZWUgaW50ZXJydXB0IG1hc2sgKi8KKworLyoqKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJUENDX0MxU0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovCisjZGVmaW5lIElQQ0NfQzFTQ1JfQ0gxQ19Qb3MgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJUENDX0MxU0NSX0NIMUNfTXNrICAgICAgKDB4MVVMIDw8IElQQ0NfQzFTQ1JfQ0gxQ19Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBJUENDX0MxU0NSX0NIMUMgICAgICAgICAgSVBDQ19DMVNDUl9DSDFDX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTTQgcmVjZWl2ZSBDaGFubmVsMSBzdGF0dXMgY2xlYXIgKi8KKyNkZWZpbmUgSVBDQ19DMVNDUl9DSDJDX1BvcyAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSVBDQ19DMVNDUl9DSDJDX01zayAgICAgICgweDFVTCA8PCBJUENDX0MxU0NSX0NIMkNfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgSVBDQ19DMVNDUl9DSDJDICAgICAgICAgIElQQ0NfQzFTQ1JfQ0gyQ19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE00IHJlY2VpdmUgQ2hhbm5lbDIgc3RhdHVzIGNsZWFyICovCisjZGVmaW5lIElQQ0NfQzFTQ1JfQ0gzQ19Qb3MgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIElQQ0NfQzFTQ1JfQ0gzQ19Nc2sgICAgICAoMHgxVUwgPDwgSVBDQ19DMVNDUl9DSDNDX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIElQQ0NfQzFTQ1JfQ0gzQyAgICAgICAgICBJUENDX0MxU0NSX0NIM0NfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBNNCByZWNlaXZlIENoYW5uZWwzIHN0YXR1cyBjbGVhciAqLworI2RlZmluZSBJUENDX0MxU0NSX0NINENfUG9zICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJUENDX0MxU0NSX0NINENfTXNrICAgICAgKDB4MVVMIDw8IElQQ0NfQzFTQ1JfQ0g0Q19Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBJUENDX0MxU0NSX0NINEMgICAgICAgICAgSVBDQ19DMVNDUl9DSDRDX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTTQgcmVjZWl2ZSBDaGFubmVsNCBzdGF0dXMgY2xlYXIgKi8KKyNkZWZpbmUgSVBDQ19DMVNDUl9DSDVDX1BvcyAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSVBDQ19DMVNDUl9DSDVDX01zayAgICAgICgweDFVTCA8PCBJUENDX0MxU0NSX0NINUNfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgSVBDQ19DMVNDUl9DSDVDICAgICAgICAgIElQQ0NfQzFTQ1JfQ0g1Q19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE00IHJlY2VpdmUgQ2hhbm5lbDUgc3RhdHVzIGNsZWFyICovCisjZGVmaW5lIElQQ0NfQzFTQ1JfQ0g2Q19Qb3MgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIElQQ0NfQzFTQ1JfQ0g2Q19Nc2sgICAgICAoMHgxVUwgPDwgSVBDQ19DMVNDUl9DSDZDX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIElQQ0NfQzFTQ1JfQ0g2QyAgICAgICAgICBJUENDX0MxU0NSX0NINkNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBNNCByZWNlaXZlIENoYW5uZWw2IHN0YXR1cyBjbGVhciAqLworCisjZGVmaW5lIElQQ0NfQzFTQ1JfQ0gxU19Qb3MgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIElQQ0NfQzFTQ1JfQ0gxU19Nc2sgICAgICAoMHgxVUwgPDwgSVBDQ19DMVNDUl9DSDFTX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovCisjZGVmaW5lIElQQ0NfQzFTQ1JfQ0gxUyAgICAgICAgICBJUENDX0MxU0NSX0NIMVNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBNNCB0cmFuc21pdCBDaGFubmVsMSBzdGF0dXMgc2V0ICovCisjZGVmaW5lIElQQ0NfQzFTQ1JfQ0gyU19Qb3MgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIElQQ0NfQzFTQ1JfQ0gyU19Nc2sgICAgICAoMHgxVUwgPDwgSVBDQ19DMVNDUl9DSDJTX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovCisjZGVmaW5lIElQQ0NfQzFTQ1JfQ0gyUyAgICAgICAgICBJUENDX0MxU0NSX0NIMlNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBNNCB0cmFuc21pdCBDaGFubmVsMiBzdGF0dXMgc2V0ICAqLworI2RlZmluZSBJUENDX0MxU0NSX0NIM1NfUG9zICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJUENDX0MxU0NSX0NIM1NfTXNrICAgICAgKDB4MVVMIDw8IElQQ0NfQzFTQ1JfQ0gzU19Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLworI2RlZmluZSBJUENDX0MxU0NSX0NIM1MgICAgICAgICAgSVBDQ19DMVNDUl9DSDNTX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTTQgdHJhbnNtaXQgQ2hhbm5lbDMgc3RhdHVzIHNldCAgKi8KKyNkZWZpbmUgSVBDQ19DMVNDUl9DSDRTX1BvcyAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSVBDQ19DMVNDUl9DSDRTX01zayAgICAgICgweDFVTCA8PCBJUENDX0MxU0NSX0NINFNfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgSVBDQ19DMVNDUl9DSDRTICAgICAgICAgIElQQ0NfQzFTQ1JfQ0g0U19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE00IHRyYW5zbWl0IENoYW5uZWw0IHN0YXR1cyBzZXQgICovCisjZGVmaW5lIElQQ0NfQzFTQ1JfQ0g1U19Qb3MgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIElQQ0NfQzFTQ1JfQ0g1U19Nc2sgICAgICAoMHgxVUwgPDwgSVBDQ19DMVNDUl9DSDVTX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovCisjZGVmaW5lIElQQ0NfQzFTQ1JfQ0g1UyAgICAgICAgICBJUENDX0MxU0NSX0NINVNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBNNCB0cmFuc21pdCBDaGFubmVsNSBzdGF0dXMgc2V0ICAqLworI2RlZmluZSBJUENDX0MxU0NSX0NINlNfUG9zICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJUENDX0MxU0NSX0NINlNfTXNrICAgICAgKDB4MVVMIDw8IElQQ0NfQzFTQ1JfQ0g2U19Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLworI2RlZmluZSBJUENDX0MxU0NSX0NINlMgICAgICAgICAgSVBDQ19DMVNDUl9DSDZTX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTTQgdHJhbnNtaXQgQ2hhbm5lbDYgc3RhdHVzIHNldCAgKi8KKworLyoqKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJUENDX0MxVE9DMlNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovCisjZGVmaW5lIElQQ0NfQzFUT0MyU1JfQ0gxRl9Qb3MgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIElQQ0NfQzFUT0MyU1JfQ0gxRl9Nc2sgICAgKDB4MVVMIDw8IElQQ0NfQzFUT0MyU1JfQ0gxRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIElQQ0NfQzFUT0MyU1JfQ0gxRiAgICAgICAgSVBDQ19DMVRPQzJTUl9DSDFGX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBNNCB0cmFuc21pdCB0byBNNCByZWNlaXZlIENoYW5uZWwxIHN0YXR1cyBmbGFnIGJlZm9yZSBtYXNraW5nICovCisjZGVmaW5lIElQQ0NfQzFUT0MyU1JfQ0gyRl9Qb3MgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIElQQ0NfQzFUT0MyU1JfQ0gyRl9Nc2sgICAgKDB4MVVMIDw8IElQQ0NfQzFUT0MyU1JfQ0gyRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIElQQ0NfQzFUT0MyU1JfQ0gyRiAgICAgICAgSVBDQ19DMVRPQzJTUl9DSDJGX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBNNCB0cmFuc21pdCB0byBNNCByZWNlaXZlIENoYW5uZWwyIHN0YXR1cyBmbGFnIGJlZm9yZSBtYXNraW5nICovCisjZGVmaW5lIElQQ0NfQzFUT0MyU1JfQ0gzRl9Qb3MgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIElQQ0NfQzFUT0MyU1JfQ0gzRl9Nc2sgICAgKDB4MVVMIDw8IElQQ0NfQzFUT0MyU1JfQ0gzRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIElQQ0NfQzFUT0MyU1JfQ0gzRiAgICAgICAgSVBDQ19DMVRPQzJTUl9DSDNGX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBNNCB0cmFuc21pdCB0byBNNCByZWNlaXZlIENoYW5uZWwzIHN0YXR1cyBmbGFnIGJlZm9yZSBtYXNraW5nICovCisjZGVmaW5lIElQQ0NfQzFUT0MyU1JfQ0g0Rl9Qb3MgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIElQQ0NfQzFUT0MyU1JfQ0g0Rl9Nc2sgICAgKDB4MVVMIDw8IElQQ0NfQzFUT0MyU1JfQ0g0Rl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIElQQ0NfQzFUT0MyU1JfQ0g0RiAgICAgICAgSVBDQ19DMVRPQzJTUl9DSDRGX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBNNCB0cmFuc21pdCB0byBNNCByZWNlaXZlIENoYW5uZWw0IHN0YXR1cyBmbGFnIGJlZm9yZSBtYXNraW5nICovCisjZGVmaW5lIElQQ0NfQzFUT0MyU1JfQ0g1Rl9Qb3MgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIElQQ0NfQzFUT0MyU1JfQ0g1Rl9Nc2sgICAgKDB4MVVMIDw8IElQQ0NfQzFUT0MyU1JfQ0g1Rl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIElQQ0NfQzFUT0MyU1JfQ0g1RiAgICAgICAgSVBDQ19DMVRPQzJTUl9DSDVGX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBNNCB0cmFuc21pdCB0byBNNCByZWNlaXZlIENoYW5uZWw1IHN0YXR1cyBmbGFnIGJlZm9yZSBtYXNraW5nICovCisjZGVmaW5lIElQQ0NfQzFUT0MyU1JfQ0g2Rl9Qb3MgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIElQQ0NfQzFUT0MyU1JfQ0g2Rl9Nc2sgICAgKDB4MVVMIDw8IElQQ0NfQzFUT0MyU1JfQ0g2Rl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIElQQ0NfQzFUT0MyU1JfQ0g2RiAgICAgICAgSVBDQ19DMVRPQzJTUl9DSDZGX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBNNCB0cmFuc21pdCB0byBNNCByZWNlaXZlIENoYW5uZWw2IHN0YXR1cyBmbGFnIGJlZm9yZSBtYXNraW5nICovCisKKy8qKioqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgSVBDQ19DMkNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovCisjZGVmaW5lIElQQ0NfQzJDUl9SWE9JRV9Qb3MgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJUENDX0MyQ1JfUlhPSUVfTXNrICAgICAgKDB4MVVMIDw8IElQQ0NfQzJDUl9SWE9JRV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBJUENDX0MyQ1JfUlhPSUUgICAgICAgICAgSVBDQ19DMkNSX1JYT0lFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJvY2Vzc29yIE0wKyBSZWNlaXZlIGNoYW5uZWwgb2NjdXBpZWQgaW50ZXJydXB0IGVuYWJsZSAqLworI2RlZmluZSBJUENDX0MyQ1JfVFhGSUVfUG9zICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJUENDX0MyQ1JfVFhGSUVfTXNrICAgICAgKDB4MVVMIDw8IElQQ0NfQzJDUl9UWEZJRV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBJUENDX0MyQ1JfVFhGSUUgICAgICAgICAgSVBDQ19DMkNSX1RYRklFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJvY2Vzc29yIE0wKyBUcmFuc21pdCBjaGFubmVsIGZyZWUgaW50ZXJydXB0IGVuYWJsZSAqLworCisvKioqKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIElQQ0NfQzJNUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLworI2RlZmluZSBJUENDX0MyTVJfQ0gxT01fUG9zICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSVBDQ19DMk1SX0NIMU9NX01zayAgICAgICgweDFVTCA8PCBJUENDX0MyTVJfQ0gxT01fUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgSVBDQ19DMk1SX0NIMU9NICAgICAgICAgIElQQ0NfQzJNUl9DSDFPTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE0wKyBDaGFubmVsMSBvY2N1cGllZCBpbnRlcnJ1cHQgbWFzayAqLworI2RlZmluZSBJUENDX0MyTVJfQ0gyT01fUG9zICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJUENDX0MyTVJfQ0gyT01fTXNrICAgICAgKDB4MVVMIDw8IElQQ0NfQzJNUl9DSDJPTV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBJUENDX0MyTVJfQ0gyT00gICAgICAgICAgSVBDQ19DMk1SX0NIMk9NX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTTArIENoYW5uZWwyIG9jY3VwaWVkIGludGVycnVwdCBtYXNrICovCisjZGVmaW5lIElQQ0NfQzJNUl9DSDNPTV9Qb3MgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIElQQ0NfQzJNUl9DSDNPTV9Nc2sgICAgICAoMHgxVUwgPDwgSVBDQ19DMk1SX0NIM09NX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIElQQ0NfQzJNUl9DSDNPTSAgICAgICAgICBJUENDX0MyTVJfQ0gzT01fTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBNMCsgQ2hhbm5lbDMgb2NjdXBpZWQgaW50ZXJydXB0IG1hc2sgKi8KKyNkZWZpbmUgSVBDQ19DMk1SX0NINE9NX1BvcyAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSVBDQ19DMk1SX0NINE9NX01zayAgICAgICgweDFVTCA8PCBJUENDX0MyTVJfQ0g0T01fUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgSVBDQ19DMk1SX0NINE9NICAgICAgICAgIElQQ0NfQzJNUl9DSDRPTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE0wKyBDaGFubmVsNCBvY2N1cGllZCBpbnRlcnJ1cHQgbWFzayAqLworI2RlZmluZSBJUENDX0MyTVJfQ0g1T01fUG9zICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJUENDX0MyTVJfQ0g1T01fTXNrICAgICAgKDB4MVVMIDw8IElQQ0NfQzJNUl9DSDVPTV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBJUENDX0MyTVJfQ0g1T00gICAgICAgICAgSVBDQ19DMk1SX0NINU9NX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTTArIENoYW5uZWw1IG9jY3VwaWVkIGludGVycnVwdCBtYXNrICovCisjZGVmaW5lIElQQ0NfQzJNUl9DSDZPTV9Qb3MgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIElQQ0NfQzJNUl9DSDZPTV9Nc2sgICAgICAoMHgxVUwgPDwgSVBDQ19DMk1SX0NINk9NX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIElQQ0NfQzJNUl9DSDZPTSAgICAgICAgICBJUENDX0MyTVJfQ0g2T01fTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBNMCsgQ2hhbm5lbDYgb2NjdXBpZWQgaW50ZXJydXB0IG1hc2sgKi8KKworI2RlZmluZSBJUENDX0MyTVJfQ0gxRk1fUG9zICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJUENDX0MyTVJfQ0gxRk1fTXNrICAgICAgKDB4MVVMIDw8IElQQ0NfQzJNUl9DSDFGTV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBJUENDX0MyTVJfQ0gxRk0gICAgICAgICAgSVBDQ19DMk1SX0NIMUZNX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTTArIFRyYW5zbWl0IENoYW5uZWwxIGZyZWUgaW50ZXJydXB0IG1hc2sgKi8KKyNkZWZpbmUgSVBDQ19DMk1SX0NIMkZNX1BvcyAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSVBDQ19DMk1SX0NIMkZNX01zayAgICAgICgweDFVTCA8PCBJUENDX0MyTVJfQ0gyRk1fUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgSVBDQ19DMk1SX0NIMkZNICAgICAgICAgIElQQ0NfQzJNUl9DSDJGTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE0wKyBUcmFuc21pdCBDaGFubmVsMiBmcmVlIGludGVycnVwdCBtYXNrICovCisjZGVmaW5lIElQQ0NfQzJNUl9DSDNGTV9Qb3MgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIElQQ0NfQzJNUl9DSDNGTV9Nc2sgICAgICAoMHgxVUwgPDwgSVBDQ19DMk1SX0NIM0ZNX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovCisjZGVmaW5lIElQQ0NfQzJNUl9DSDNGTSAgICAgICAgICBJUENDX0MyTVJfQ0gzRk1fTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBNMCsgVHJhbnNtaXQgQ2hhbm5lbDMgZnJlZSBpbnRlcnJ1cHQgbWFzayAqLworI2RlZmluZSBJUENDX0MyTVJfQ0g0Rk1fUG9zICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJUENDX0MyTVJfQ0g0Rk1fTXNrICAgICAgKDB4MVVMIDw8IElQQ0NfQzJNUl9DSDRGTV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLworI2RlZmluZSBJUENDX0MyTVJfQ0g0Rk0gICAgICAgICAgSVBDQ19DMk1SX0NINEZNX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTTArIFRyYW5zbWl0IENoYW5uZWw0IGZyZWUgaW50ZXJydXB0IG1hc2sgKi8KKyNkZWZpbmUgSVBDQ19DMk1SX0NINUZNX1BvcyAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSVBDQ19DMk1SX0NINUZNX01zayAgICAgICgweDFVTCA8PCBJUENDX0MyTVJfQ0g1Rk1fUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgSVBDQ19DMk1SX0NINUZNICAgICAgICAgIElQQ0NfQzJNUl9DSDVGTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE0wKyBUcmFuc21pdCBDaGFubmVsNSBmcmVlIGludGVycnVwdCBtYXNrICovCisjZGVmaW5lIElQQ0NfQzJNUl9DSDZGTV9Qb3MgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIElQQ0NfQzJNUl9DSDZGTV9Nc2sgICAgICAoMHgxVUwgPDwgSVBDQ19DMk1SX0NINkZNX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovCisjZGVmaW5lIElQQ0NfQzJNUl9DSDZGTSAgICAgICAgICBJUENDX0MyTVJfQ0g2Rk1fTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBNMCsgVHJhbnNtaXQgQ2hhbm5lbDYgZnJlZSBpbnRlcnJ1cHQgbWFzayAqLworCisvKioqKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIElQQ0NfQzJTQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8KKyNkZWZpbmUgSVBDQ19DMlNDUl9DSDFDX1BvcyAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIElQQ0NfQzJTQ1JfQ0gxQ19Nc2sgICAgICAoMHgxVUwgPDwgSVBDQ19DMlNDUl9DSDFDX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIElQQ0NfQzJTQ1JfQ0gxQyAgICAgICAgICBJUENDX0MyU0NSX0NIMUNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBNMCsgcmVjZWl2ZSBDaGFubmVsMSBzdGF0dXMgY2xlYXIgKi8KKyNkZWZpbmUgSVBDQ19DMlNDUl9DSDJDX1BvcyAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSVBDQ19DMlNDUl9DSDJDX01zayAgICAgICgweDFVTCA8PCBJUENDX0MyU0NSX0NIMkNfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgSVBDQ19DMlNDUl9DSDJDICAgICAgICAgIElQQ0NfQzJTQ1JfQ0gyQ19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE0wKyByZWNlaXZlIENoYW5uZWwyIHN0YXR1cyBjbGVhciAqLworI2RlZmluZSBJUENDX0MyU0NSX0NIM0NfUG9zICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJUENDX0MyU0NSX0NIM0NfTXNrICAgICAgKDB4MVVMIDw8IElQQ0NfQzJTQ1JfQ0gzQ19Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBJUENDX0MyU0NSX0NIM0MgICAgICAgICAgSVBDQ19DMlNDUl9DSDNDX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTTArIHJlY2VpdmUgQ2hhbm5lbDMgc3RhdHVzIGNsZWFyICovCisjZGVmaW5lIElQQ0NfQzJTQ1JfQ0g0Q19Qb3MgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIElQQ0NfQzJTQ1JfQ0g0Q19Nc2sgICAgICAoMHgxVUwgPDwgSVBDQ19DMlNDUl9DSDRDX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIElQQ0NfQzJTQ1JfQ0g0QyAgICAgICAgICBJUENDX0MyU0NSX0NINENfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBNMCsgcmVjZWl2ZSBDaGFubmVsNCBzdGF0dXMgY2xlYXIgKi8KKyNkZWZpbmUgSVBDQ19DMlNDUl9DSDVDX1BvcyAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSVBDQ19DMlNDUl9DSDVDX01zayAgICAgICgweDFVTCA8PCBJUENDX0MyU0NSX0NINUNfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgSVBDQ19DMlNDUl9DSDVDICAgICAgICAgIElQQ0NfQzJTQ1JfQ0g1Q19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE0wKyByZWNlaXZlIENoYW5uZWw1IHN0YXR1cyBjbGVhciAqLworI2RlZmluZSBJUENDX0MyU0NSX0NINkNfUG9zICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJUENDX0MyU0NSX0NINkNfTXNrICAgICAgKDB4MVVMIDw8IElQQ0NfQzJTQ1JfQ0g2Q19Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBJUENDX0MyU0NSX0NINkMgICAgICAgICAgSVBDQ19DMlNDUl9DSDZDX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTTArIHJlY2VpdmUgQ2hhbm5lbDYgc3RhdHVzIGNsZWFyICovCisKKyNkZWZpbmUgSVBDQ19DMlNDUl9DSDFTX1BvcyAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSVBDQ19DMlNDUl9DSDFTX01zayAgICAgICgweDFVTCA8PCBJUENDX0MyU0NSX0NIMVNfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgSVBDQ19DMlNDUl9DSDFTICAgICAgICAgIElQQ0NfQzJTQ1JfQ0gxU19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE0wKyB0cmFuc21pdCBDaGFubmVsMSBzdGF0dXMgc2V0ICAqLworI2RlZmluZSBJUENDX0MyU0NSX0NIMlNfUG9zICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJUENDX0MyU0NSX0NIMlNfTXNrICAgICAgKDB4MVVMIDw8IElQQ0NfQzJTQ1JfQ0gyU19Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLworI2RlZmluZSBJUENDX0MyU0NSX0NIMlMgICAgICAgICAgSVBDQ19DMlNDUl9DSDJTX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTTArIHRyYW5zbWl0IENoYW5uZWwyIHN0YXR1cyBzZXQgICovCisjZGVmaW5lIElQQ0NfQzJTQ1JfQ0gzU19Qb3MgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIElQQ0NfQzJTQ1JfQ0gzU19Nc2sgICAgICAoMHgxVUwgPDwgSVBDQ19DMlNDUl9DSDNTX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovCisjZGVmaW5lIElQQ0NfQzJTQ1JfQ0gzUyAgICAgICAgICBJUENDX0MyU0NSX0NIM1NfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBNMCsgdHJhbnNtaXQgQ2hhbm5lbDMgc3RhdHVzIHNldCAgKi8KKyNkZWZpbmUgSVBDQ19DMlNDUl9DSDRTX1BvcyAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSVBDQ19DMlNDUl9DSDRTX01zayAgICAgICgweDFVTCA8PCBJUENDX0MyU0NSX0NINFNfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgSVBDQ19DMlNDUl9DSDRTICAgICAgICAgIElQQ0NfQzJTQ1JfQ0g0U19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE0wKyB0cmFuc21pdCBDaGFubmVsNCBzdGF0dXMgc2V0ICAqLworI2RlZmluZSBJUENDX0MyU0NSX0NINVNfUG9zICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJUENDX0MyU0NSX0NINVNfTXNrICAgICAgKDB4MVVMIDw8IElQQ0NfQzJTQ1JfQ0g1U19Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLworI2RlZmluZSBJUENDX0MyU0NSX0NINVMgICAgICAgICAgSVBDQ19DMlNDUl9DSDVTX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTTArIHRyYW5zbWl0IENoYW5uZWw1IHN0YXR1cyBzZXQgICovCisjZGVmaW5lIElQQ0NfQzJTQ1JfQ0g2U19Qb3MgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIElQQ0NfQzJTQ1JfQ0g2U19Nc2sgICAgICAoMHgxVUwgPDwgSVBDQ19DMlNDUl9DSDZTX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovCisjZGVmaW5lIElQQ0NfQzJTQ1JfQ0g2UyAgICAgICAgICBJUENDX0MyU0NSX0NINlNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBNMCsgdHJhbnNtaXQgQ2hhbm5lbDYgc3RhdHVzIHNldCAgKi8KKworLyoqKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJUENDX0MyVE9DMVNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovCisjZGVmaW5lIElQQ0NfQzJUT0MxU1JfQ0gxRl9Qb3MgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSVBDQ19DMlRPQzFTUl9DSDFGX01zayAgICAoMHgxVUwgPDwgSVBDQ19DMlRPQzFTUl9DSDFGX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgSVBDQ19DMlRPQzFTUl9DSDFGICAgICAgICBJUENDX0MyVE9DMVNSX0NIMUZfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE0wKyB0cmFuc21pdCB0byBNMCByZWNlaXZlIENoYW5uZWwxIHN0YXR1cyBmbGFnIGJlZm9yZSBtYXNraW5nICovCisjZGVmaW5lIElQQ0NfQzJUT0MxU1JfQ0gyRl9Qb3MgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIElQQ0NfQzJUT0MxU1JfQ0gyRl9Nc2sgICAgKDB4MVVMIDw8IElQQ0NfQzJUT0MxU1JfQ0gyRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIElQQ0NfQzJUT0MxU1JfQ0gyRiAgICAgICAgSVBDQ19DMlRPQzFTUl9DSDJGX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBNMCsgdHJhbnNtaXQgdG8gTTAgcmVjZWl2ZSBDaGFubmVsMiBzdGF0dXMgZmxhZyBiZWZvcmUgbWFza2luZyAqLworI2RlZmluZSBJUENDX0MyVE9DMVNSX0NIM0ZfUG9zICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJUENDX0MyVE9DMVNSX0NIM0ZfTXNrICAgICgweDFVTCA8PCBJUENDX0MyVE9DMVNSX0NIM0ZfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBJUENDX0MyVE9DMVNSX0NIM0YgICAgICAgIElQQ0NfQzJUT0MxU1JfQ0gzRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTTArIHRyYW5zbWl0IHRvIE0wIHJlY2VpdmUgQ2hhbm5lbDMgc3RhdHVzIGZsYWcgYmVmb3JlIG1hc2tpbmcgKi8KKyNkZWZpbmUgSVBDQ19DMlRPQzFTUl9DSDRGX1BvcyAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSVBDQ19DMlRPQzFTUl9DSDRGX01zayAgICAoMHgxVUwgPDwgSVBDQ19DMlRPQzFTUl9DSDRGX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgSVBDQ19DMlRPQzFTUl9DSDRGICAgICAgICBJUENDX0MyVE9DMVNSX0NINEZfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE0wKyB0cmFuc21pdCB0byBNMCByZWNlaXZlIENoYW5uZWw0IHN0YXR1cyBmbGFnIGJlZm9yZSBtYXNraW5nICovCisjZGVmaW5lIElQQ0NfQzJUT0MxU1JfQ0g1Rl9Qb3MgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIElQQ0NfQzJUT0MxU1JfQ0g1Rl9Nc2sgICAgKDB4MVVMIDw8IElQQ0NfQzJUT0MxU1JfQ0g1Rl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIElQQ0NfQzJUT0MxU1JfQ0g1RiAgICAgICAgSVBDQ19DMlRPQzFTUl9DSDVGX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBNMCsgdHJhbnNtaXQgdG8gTTAgcmVjZWl2ZSBDaGFubmVsNSBzdGF0dXMgZmxhZyBiZWZvcmUgbWFza2luZyAqLworI2RlZmluZSBJUENDX0MyVE9DMVNSX0NINkZfUG9zICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJUENDX0MyVE9DMVNSX0NINkZfTXNrICAgICgweDFVTCA8PCBJUENDX0MyVE9DMVNSX0NINkZfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBJUENDX0MyVE9DMVNSX0NINkYgICAgICAgIElQQ0NfQzJUT0MxU1JfQ0g2Rl9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTTArIHRyYW5zbWl0IHRvIE0wIHJlY2VpdmUgQ2hhbm5lbDYgc3RhdHVzIGZsYWcgYmVmb3JlIG1hc2tpbmcgKi8KKworLyoqKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJUENDX0MxQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8KKyNkZWZpbmUgSVBDQ19DUl9SWE9JRV9Qb3MgICAgICAgICBJUENDX0MxQ1JfUlhPSUVfUG9zICAgICAKKyNkZWZpbmUgSVBDQ19DUl9SWE9JRV9Nc2sgICAgICAgICBJUENDX0MxQ1JfUlhPSUVfTXNrICAgICAKKyNkZWZpbmUgSVBDQ19DUl9SWE9JRSAgICAgICAgICAgICBJUENDX0MxQ1JfUlhPSUUgICAgICAgICAKKyNkZWZpbmUgSVBDQ19DUl9UWEZJRV9Qb3MgICAgICAgICBJUENDX0MxQ1JfVFhGSUVfUG9zICAgICAKKyNkZWZpbmUgSVBDQ19DUl9UWEZJRV9Nc2sgICAgICAgICBJUENDX0MxQ1JfVFhGSUVfTXNrICAgICAKKyNkZWZpbmUgSVBDQ19DUl9UWEZJRSAgICAgICAgICAgICBJUENDX0MxQ1JfVFhGSUUgICAgICAgICAKKworLyoqKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJUENDX0MxTVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqLworI2RlZmluZSBJUENDX01SX0NIMU9NX1BvcyAgICAgICAgIElQQ0NfQzFNUl9DSDFPTV9Qb3MKKyNkZWZpbmUgSVBDQ19NUl9DSDFPTV9Nc2sgICAgICAgICBJUENDX0MxTVJfQ0gxT01fTXNrCisjZGVmaW5lIElQQ0NfTVJfQ0gxT00gICAgICAgICAgICAgSVBDQ19DMU1SX0NIMU9NICAgIAorI2RlZmluZSBJUENDX01SX0NIMk9NX1BvcyAgICAgICAgIElQQ0NfQzFNUl9DSDJPTV9Qb3MKKyNkZWZpbmUgSVBDQ19NUl9DSDJPTV9Nc2sgICAgICAgICBJUENDX0MxTVJfQ0gyT01fTXNrCisjZGVmaW5lIElQQ0NfTVJfQ0gyT00gICAgICAgICAgICAgSVBDQ19DMU1SX0NIMk9NICAgIAorI2RlZmluZSBJUENDX01SX0NIM09NX1BvcyAgICAgICAgIElQQ0NfQzFNUl9DSDNPTV9Qb3MKKyNkZWZpbmUgSVBDQ19NUl9DSDNPTV9Nc2sgICAgICAgICBJUENDX0MxTVJfQ0gzT01fTXNrCisjZGVmaW5lIElQQ0NfTVJfQ0gzT00gICAgICAgICAgICAgSVBDQ19DMU1SX0NIM09NICAgIAorI2RlZmluZSBJUENDX01SX0NINE9NX1BvcyAgICAgICAgIElQQ0NfQzFNUl9DSDRPTV9Qb3MKKyNkZWZpbmUgSVBDQ19NUl9DSDRPTV9Nc2sgICAgICAgICBJUENDX0MxTVJfQ0g0T01fTXNrCisjZGVmaW5lIElQQ0NfTVJfQ0g0T00gICAgICAgICAgICAgSVBDQ19DMU1SX0NINE9NICAgIAorI2RlZmluZSBJUENDX01SX0NINU9NX1BvcyAgICAgICAgIElQQ0NfQzFNUl9DSDVPTV9Qb3MKKyNkZWZpbmUgSVBDQ19NUl9DSDVPTV9Nc2sgICAgICAgICBJUENDX0MxTVJfQ0g1T01fTXNrCisjZGVmaW5lIElQQ0NfTVJfQ0g1T00gICAgICAgICAgICAgSVBDQ19DMU1SX0NINU9NICAgIAorI2RlZmluZSBJUENDX01SX0NINk9NX1BvcyAgICAgICAgIElQQ0NfQzFNUl9DSDZPTV9Qb3MKKyNkZWZpbmUgSVBDQ19NUl9DSDZPTV9Nc2sgICAgICAgICBJUENDX0MxTVJfQ0g2T01fTXNrCisjZGVmaW5lIElQQ0NfTVJfQ0g2T00gICAgICAgICAgICAgSVBDQ19DMU1SX0NINk9NICAgIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBJUENDX01SX0NIMUZNX1BvcyAgICAgICAgIElQQ0NfQzFNUl9DSDFGTV9Qb3MKKyNkZWZpbmUgSVBDQ19NUl9DSDFGTV9Nc2sgICAgICAgICBJUENDX0MxTVJfQ0gxRk1fTXNrCisjZGVmaW5lIElQQ0NfTVJfQ0gxRk0gICAgICAgICAgICAgSVBDQ19DMU1SX0NIMUZNICAgIAorI2RlZmluZSBJUENDX01SX0NIMkZNX1BvcyAgICAgICAgIElQQ0NfQzFNUl9DSDJGTV9Qb3MKKyNkZWZpbmUgSVBDQ19NUl9DSDJGTV9Nc2sgICAgICAgICBJUENDX0MxTVJfQ0gyRk1fTXNrCisjZGVmaW5lIElQQ0NfTVJfQ0gyRk0gICAgICAgICAgICAgSVBDQ19DMU1SX0NIMkZNICAgIAorI2RlZmluZSBJUENDX01SX0NIM0ZNX1BvcyAgICAgICAgIElQQ0NfQzFNUl9DSDNGTV9Qb3MKKyNkZWZpbmUgSVBDQ19NUl9DSDNGTV9Nc2sgICAgICAgICBJUENDX0MxTVJfQ0gzRk1fTXNrCisjZGVmaW5lIElQQ0NfTVJfQ0gzRk0gICAgICAgICAgICAgSVBDQ19DMU1SX0NIM0ZNICAgIAorI2RlZmluZSBJUENDX01SX0NINEZNX1BvcyAgICAgICAgIElQQ0NfQzFNUl9DSDRGTV9Qb3MKKyNkZWZpbmUgSVBDQ19NUl9DSDRGTV9Nc2sgICAgICAgICBJUENDX0MxTVJfQ0g0Rk1fTXNrCisjZGVmaW5lIElQQ0NfTVJfQ0g0Rk0gICAgICAgICAgICAgSVBDQ19DMU1SX0NINEZNICAgIAorI2RlZmluZSBJUENDX01SX0NINUZNX1BvcyAgICAgICAgIElQQ0NfQzFNUl9DSDVGTV9Qb3MKKyNkZWZpbmUgSVBDQ19NUl9DSDVGTV9Nc2sgICAgICAgICBJUENDX0MxTVJfQ0g1Rk1fTXNrCisjZGVmaW5lIElQQ0NfTVJfQ0g1Rk0gICAgICAgICAgICAgSVBDQ19DMU1SX0NINUZNICAgIAorI2RlZmluZSBJUENDX01SX0NINkZNX1BvcyAgICAgICAgIElQQ0NfQzFNUl9DSDZGTV9Qb3MKKyNkZWZpbmUgSVBDQ19NUl9DSDZGTV9Nc2sgICAgICAgICBJUENDX0MxTVJfQ0g2Rk1fTXNrCisjZGVmaW5lIElQQ0NfTVJfQ0g2Rk0gICAgICAgICAgICAgSVBDQ19DMU1SX0NINkZNICAgIAorCisvKioqKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIElQQ0NfQzFTQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8KKyNkZWZpbmUgSVBDQ19TQ1JfQ0gxQ19Qb3MgICAgICAgICBJUENDX0MxU0NSX0NIMUNfUG9zCisjZGVmaW5lIElQQ0NfU0NSX0NIMUNfTXNrICAgICAgICAgSVBDQ19DMVNDUl9DSDFDX01zaworI2RlZmluZSBJUENDX1NDUl9DSDFDICAgICAgICAgICAgIElQQ0NfQzFTQ1JfQ0gxQyAgICAKKyNkZWZpbmUgSVBDQ19TQ1JfQ0gyQ19Qb3MgICAgICAgICBJUENDX0MxU0NSX0NIMkNfUG9zCisjZGVmaW5lIElQQ0NfU0NSX0NIMkNfTXNrICAgICAgICAgSVBDQ19DMVNDUl9DSDJDX01zaworI2RlZmluZSBJUENDX1NDUl9DSDJDICAgICAgICAgICAgIElQQ0NfQzFTQ1JfQ0gyQyAgICAKKyNkZWZpbmUgSVBDQ19TQ1JfQ0gzQ19Qb3MgICAgICAgICBJUENDX0MxU0NSX0NIM0NfUG9zCisjZGVmaW5lIElQQ0NfU0NSX0NIM0NfTXNrICAgICAgICAgSVBDQ19DMVNDUl9DSDNDX01zaworI2RlZmluZSBJUENDX1NDUl9DSDNDICAgICAgICAgICAgIElQQ0NfQzFTQ1JfQ0gzQyAgICAKKyNkZWZpbmUgSVBDQ19TQ1JfQ0g0Q19Qb3MgICAgICAgICBJUENDX0MxU0NSX0NINENfUG9zCisjZGVmaW5lIElQQ0NfU0NSX0NINENfTXNrICAgICAgICAgSVBDQ19DMVNDUl9DSDRDX01zaworI2RlZmluZSBJUENDX1NDUl9DSDRDICAgICAgICAgICAgIElQQ0NfQzFTQ1JfQ0g0QyAgICAKKyNkZWZpbmUgSVBDQ19TQ1JfQ0g1Q19Qb3MgICAgICAgICBJUENDX0MxU0NSX0NINUNfUG9zCisjZGVmaW5lIElQQ0NfU0NSX0NINUNfTXNrICAgICAgICAgSVBDQ19DMVNDUl9DSDVDX01zaworI2RlZmluZSBJUENDX1NDUl9DSDVDICAgICAgICAgICAgIElQQ0NfQzFTQ1JfQ0g1QyAgICAKKyNkZWZpbmUgSVBDQ19TQ1JfQ0g2Q19Qb3MgICAgICAgICBJUENDX0MxU0NSX0NINkNfUG9zCisjZGVmaW5lIElQQ0NfU0NSX0NINkNfTXNrICAgICAgICAgSVBDQ19DMVNDUl9DSDZDX01zaworI2RlZmluZSBJUENDX1NDUl9DSDZDICAgICAgICAgICAgIElQQ0NfQzFTQ1JfQ0g2QyAgICAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSVBDQ19TQ1JfQ0gxU19Qb3MgICAgICAgICBJUENDX0MxU0NSX0NIMVNfUG9zCisjZGVmaW5lIElQQ0NfU0NSX0NIMVNfTXNrICAgICAgICAgSVBDQ19DMVNDUl9DSDFTX01zaworI2RlZmluZSBJUENDX1NDUl9DSDFTICAgICAgICAgICAgIElQQ0NfQzFTQ1JfQ0gxUyAgICAKKyNkZWZpbmUgSVBDQ19TQ1JfQ0gyU19Qb3MgICAgICAgICBJUENDX0MxU0NSX0NIMlNfUG9zCisjZGVmaW5lIElQQ0NfU0NSX0NIMlNfTXNrICAgICAgICAgSVBDQ19DMVNDUl9DSDJTX01zaworI2RlZmluZSBJUENDX1NDUl9DSDJTICAgICAgICAgICAgIElQQ0NfQzFTQ1JfQ0gyUyAgICAKKyNkZWZpbmUgSVBDQ19TQ1JfQ0gzU19Qb3MgICAgICAgICBJUENDX0MxU0NSX0NIM1NfUG9zCisjZGVmaW5lIElQQ0NfU0NSX0NIM1NfTXNrICAgICAgICAgSVBDQ19DMVNDUl9DSDNTX01zaworI2RlZmluZSBJUENDX1NDUl9DSDNTICAgICAgICAgICAgIElQQ0NfQzFTQ1JfQ0gzUyAgICAKKyNkZWZpbmUgSVBDQ19TQ1JfQ0g0U19Qb3MgICAgICAgICBJUENDX0MxU0NSX0NINFNfUG9zCisjZGVmaW5lIElQQ0NfU0NSX0NINFNfTXNrICAgICAgICAgSVBDQ19DMVNDUl9DSDRTX01zaworI2RlZmluZSBJUENDX1NDUl9DSDRTICAgICAgICAgICAgIElQQ0NfQzFTQ1JfQ0g0UyAgICAKKyNkZWZpbmUgSVBDQ19TQ1JfQ0g1U19Qb3MgICAgICAgICBJUENDX0MxU0NSX0NINVNfUG9zCisjZGVmaW5lIElQQ0NfU0NSX0NINVNfTXNrICAgICAgICAgSVBDQ19DMVNDUl9DSDVTX01zaworI2RlZmluZSBJUENDX1NDUl9DSDVTICAgICAgICAgICAgIElQQ0NfQzFTQ1JfQ0g1UyAgICAKKyNkZWZpbmUgSVBDQ19TQ1JfQ0g2U19Qb3MgICAgICAgICBJUENDX0MxU0NSX0NINlNfUG9zCisjZGVmaW5lIElQQ0NfU0NSX0NINlNfTXNrICAgICAgICAgSVBDQ19DMVNDUl9DSDZTX01zaworI2RlZmluZSBJUENDX1NDUl9DSDZTICAgICAgICAgICAgIElQQ0NfQzFTQ1JfQ0g2UyAgICAKKworLyoqKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJUENDX0MxVE9DMlNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovCisjZGVmaW5lIElQQ0NfU1JfQ0gxRl9Qb3MgICAgICAgICAgSVBDQ19DMVRPQzJTUl9DSDFGX1BvcyAKKyNkZWZpbmUgSVBDQ19TUl9DSDFGX01zayAgICAgICAgICBJUENDX0MxVE9DMlNSX0NIMUZfTXNrIAorI2RlZmluZSBJUENDX1NSX0NIMUYgICAgICAgICAgICAgIElQQ0NfQzFUT0MyU1JfQ0gxRiAgICAgCisjZGVmaW5lIElQQ0NfU1JfQ0gyRl9Qb3MgICAgICAgICAgSVBDQ19DMVRPQzJTUl9DSDJGX1BvcyAKKyNkZWZpbmUgSVBDQ19TUl9DSDJGX01zayAgICAgICAgICBJUENDX0MxVE9DMlNSX0NIMkZfTXNrIAorI2RlZmluZSBJUENDX1NSX0NIMkYgICAgICAgICAgICAgIElQQ0NfQzFUT0MyU1JfQ0gyRiAgICAgCisjZGVmaW5lIElQQ0NfU1JfQ0gzRl9Qb3MgICAgICAgICAgSVBDQ19DMVRPQzJTUl9DSDNGX1BvcyAKKyNkZWZpbmUgSVBDQ19TUl9DSDNGX01zayAgICAgICAgICBJUENDX0MxVE9DMlNSX0NIM0ZfTXNrIAorI2RlZmluZSBJUENDX1NSX0NIM0YgICAgICAgICAgICAgIElQQ0NfQzFUT0MyU1JfQ0gzRiAgICAgCisjZGVmaW5lIElQQ0NfU1JfQ0g0Rl9Qb3MgICAgICAgICAgSVBDQ19DMVRPQzJTUl9DSDRGX1BvcyAKKyNkZWZpbmUgSVBDQ19TUl9DSDRGX01zayAgICAgICAgICBJUENDX0MxVE9DMlNSX0NINEZfTXNrIAorI2RlZmluZSBJUENDX1NSX0NINEYgICAgICAgICAgICAgIElQQ0NfQzFUT0MyU1JfQ0g0RiAgICAgCisjZGVmaW5lIElQQ0NfU1JfQ0g1Rl9Qb3MgICAgICAgICAgSVBDQ19DMVRPQzJTUl9DSDVGX1BvcyAKKyNkZWZpbmUgSVBDQ19TUl9DSDVGX01zayAgICAgICAgICBJUENDX0MxVE9DMlNSX0NINUZfTXNrIAorI2RlZmluZSBJUENDX1NSX0NINUYgICAgICAgICAgICAgIElQQ0NfQzFUT0MyU1JfQ0g1RiAgICAgCisjZGVmaW5lIElQQ0NfU1JfQ0g2Rl9Qb3MgICAgICAgICAgSVBDQ19DMVRPQzJTUl9DSDZGX1BvcyAKKyNkZWZpbmUgSVBDQ19TUl9DSDZGX01zayAgICAgICAgICBJUENDX0MxVE9DMlNSX0NINkZfTXNrIAorI2RlZmluZSBJUENDX1NSX0NINkYgICAgICAgICAgICAgIElQQ0NfQzFUT0MyU1JfQ0g2RiAgICAgCisKKy8qKioqKioqKioqKioqKioqKioqKiBOdW1iZXIgb2YgSVBDQyBjaGFubmVscyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIElQQ0NfQ0hBTk5FTF9OVU1CRVIgICAgICAgNlUKKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisvKiAgICAgIFVuaXZlcnNhbCBTeW5jaHJvbm91cyBBc3luY2hyb25vdXMgUmVjZWl2ZXIgVHJhbnNtaXR0ZXIgKFVTQVJUKSAgICAgICAqLworLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNBUlRfQ1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBVU0FSVF9DUjFfVUVfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0NSMV9VRV9Nc2sgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSMV9VRV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFVTQVJUX0NSMV9VRSAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX1VFX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgVVNBUlQgRW5hYmxlICovCisjZGVmaW5lIFVTQVJUX0NSMV9VRVNNX1BvcyAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfQ1IxX1VFU01fTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfQ1IxX1VFU01fUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFVTQVJUX0NSMV9VRVNNICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX1VFU01fTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgVVNBUlQgRW5hYmxlIGluIFNUT1AgTW9kZSAqLworI2RlZmluZSBVU0FSVF9DUjFfUkVfUG9zICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0NSMV9SRV9Nc2sgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSMV9SRV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBVU0FSVF9DUjFfUkUgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9SRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VpdmVyIEVuYWJsZSAqLworI2RlZmluZSBVU0FSVF9DUjFfVEVfUG9zICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0NSMV9URV9Nc2sgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSMV9URV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBVU0FSVF9DUjFfVEUgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9URV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWl0dGVyIEVuYWJsZSAqLworI2RlZmluZSBVU0FSVF9DUjFfSURMRUlFX1BvcyAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0NSMV9JRExFSUVfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSMV9JRExFSUVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBVU0FSVF9DUjFfSURMRUlFICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9JRExFSUVfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IElETEUgSW50ZXJydXB0IEVuYWJsZSAqLworI2RlZmluZSBVU0FSVF9DUjFfUlhORUlFX1BvcyAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0NSMV9SWE5FSUVfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSMV9SWE5FSUVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBVU0FSVF9DUjFfUlhORUlFICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9SWE5FSUVfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFJYTkUgSW50ZXJydXB0IEVuYWJsZSAqLworI2RlZmluZSBVU0FSVF9DUjFfUlhORUlFX1JYRk5FSUVfUG9zICAgIFVTQVJUX0NSMV9SWE5FSUVfUG9zICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9DUjFfUlhORUlFX1JYRk5FSUVfTXNrICAgIFVTQVJUX0NSMV9SWE5FSUVfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgVVNBUlRfQ1IxX1JYTkVJRV9SWEZORUlFICAgICAgICBVU0FSVF9DUjFfUlhORUlFX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBSWE5FIGFuZCBSWCBGSUZPIE5vdCBFbXB0eSBJbnRlcnJ1cHQgRW5hYmxlICovCisjZGVmaW5lIFVTQVJUX0NSMV9UQ0lFX1BvcyAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfQ1IxX1RDSUVfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfQ1IxX1RDSUVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIFVTQVJUX0NSMV9UQ0lFICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX1RDSUVfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIENvbXBsZXRlIEludGVycnVwdCBFbmFibGUgKi8KKyNkZWZpbmUgVVNBUlRfQ1IxX1RYRUlFX1BvcyAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9DUjFfVFhFSUVfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9DUjFfVFhFSUVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgVVNBUlRfQ1IxX1RYRUlFICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfVFhFSUVfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBUWEUgSW50ZXJydXB0IEVuYWJsZSAqLworI2RlZmluZSBVU0FSVF9DUjFfVFhFSUVfVFhGTkZJRV9Qb3MgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0NSMV9UWEVJRV9UWEZORklFX01zayAgICAgKDB4MVVMIDw8IFVTQVJUX0NSMV9UWEVJRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLworI2RlZmluZSBVU0FSVF9DUjFfVFhFSUVfVFhGTkZJRSAgICAgICAgIFVTQVJUX0NSMV9UWEVJRSAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFRYRSBhbmQgVFggRklGTyBOb3QgRnVsbCBJbnRlcnJ1cHQgRW5hYmxlICovCisjZGVmaW5lIFVTQVJUX0NSMV9QRUlFX1BvcyAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfQ1IxX1BFSUVfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfQ1IxX1BFSUVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIFVTQVJUX0NSMV9QRUlFICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX1BFSUVfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEUgSW50ZXJydXB0IEVuYWJsZSAqLworI2RlZmluZSBVU0FSVF9DUjFfUFNfUG9zICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0NSMV9QU19Nc2sgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSMV9QU19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBVU0FSVF9DUjFfUFMgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9QU19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBhcml0eSBTZWxlY3Rpb24gKi8KKyNkZWZpbmUgVVNBUlRfQ1IxX1BDRV9Qb3MgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9DUjFfUENFX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9DUjFfUENFX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgVVNBUlRfQ1IxX1BDRSAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfUENFX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQYXJpdHkgQ29udHJvbCBFbmFibGUgKi8KKyNkZWZpbmUgVVNBUlRfQ1IxX1dBS0VfUG9zICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9DUjFfV0FLRV9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9DUjFfV0FLRV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgVVNBUlRfQ1IxX1dBS0UgICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfV0FLRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlaXZlciBXYWtldXAgbWV0aG9kICovCisjZGVmaW5lIFVTQVJUX0NSMV9NMF9Qb3MgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfQ1IxX00wX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfQ1IxX00wX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIFVTQVJUX0NSMV9NMCAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX00wX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgV29yZCBsZW5ndGggLSBCaXQgMCAqLworI2RlZmluZSBVU0FSVF9DUjFfTU1FX1BvcyAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0NSMV9NTUVfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSMV9NTUVfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLworI2RlZmluZSBVU0FSVF9DUjFfTU1FICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9NTUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE11dGUgTW9kZSBFbmFibGUgKi8KKyNkZWZpbmUgVVNBUlRfQ1IxX0NNSUVfUG9zICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9DUjFfQ01JRV9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9DUjFfQ01JRV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgVVNBUlRfQ1IxX0NNSUUgICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfQ01JRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFyYWN0ZXIgbWF0Y2ggaW50ZXJydXB0IGVuYWJsZSAqLworI2RlZmluZSBVU0FSVF9DUjFfT1ZFUjhfUG9zICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0NSMV9PVkVSOF9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSMV9PVkVSOF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLworI2RlZmluZSBVU0FSVF9DUjFfT1ZFUjggICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9PVkVSOF9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IE92ZXJzYW1wbGluZyBieSA4LWJpdCBvciAxNi1iaXQgbW9kZSAqLworI2RlZmluZSBVU0FSVF9DUjFfREVEVF9Qb3MgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0NSMV9ERURUX01zayAgICAgICAgICAgICAgKDB4MUZVTCA8PCBVU0FSVF9DUjFfREVEVF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDFGMDAwMCAqLworI2RlZmluZSBVU0FSVF9DUjFfREVEVCAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9ERURUX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IERFRFRbNDowXSBiaXRzIChEcml2ZXIgRW5hYmxlIERlYXNzZXJ0aW9uIFRpbWUpICovCisjZGVmaW5lIFVTQVJUX0NSMV9ERURUXzAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IFVTQVJUX0NSMV9ERURUX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLworI2RlZmluZSBVU0FSVF9DUjFfREVEVF8xICAgICAgICAgICAgICAgICgweDAyVSA8PCBVU0FSVF9DUjFfREVEVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgVVNBUlRfQ1IxX0RFRFRfMiAgICAgICAgICAgICAgICAoMHgwNFUgPDwgVVNBUlRfQ1IxX0RFRFRfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovCisjZGVmaW5lIFVTQVJUX0NSMV9ERURUXzMgICAgICAgICAgICAgICAgKDB4MDhVIDw8IFVTQVJUX0NSMV9ERURUX1BvcykgICAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLworI2RlZmluZSBVU0FSVF9DUjFfREVEVF80ICAgICAgICAgICAgICAgICgweDEwVSA8PCBVU0FSVF9DUjFfREVEVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgVVNBUlRfQ1IxX0RFQVRfUG9zICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9DUjFfREVBVF9Nc2sgICAgICAgICAgICAgICgweDFGVUwgPDwgVVNBUlRfQ1IxX0RFQVRfUG9zKSAgICAgICAgICAvKiE8IDB4MDNFMDAwMDAgKi8KKyNkZWZpbmUgVVNBUlRfQ1IxX0RFQVQgICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfREVBVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBERUFUWzQ6MF0gYml0cyAoRHJpdmVyIEVuYWJsZSBBc3NlcnRpb24gVGltZSkgKi8KKyNkZWZpbmUgVVNBUlRfQ1IxX0RFQVRfMCAgICAgICAgICAgICAgICAoMHgwMVUgPDwgVVNBUlRfQ1IxX0RFQVRfUG9zKSAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovCisjZGVmaW5lIFVTQVJUX0NSMV9ERUFUXzEgICAgICAgICAgICAgICAgKDB4MDJVIDw8IFVTQVJUX0NSMV9ERUFUX1BvcykgICAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLworI2RlZmluZSBVU0FSVF9DUjFfREVBVF8yICAgICAgICAgICAgICAgICgweDA0VSA8PCBVU0FSVF9DUjFfREVBVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8KKyNkZWZpbmUgVVNBUlRfQ1IxX0RFQVRfMyAgICAgICAgICAgICAgICAoMHgwOFUgPDwgVVNBUlRfQ1IxX0RFQVRfUG9zKSAgICAgICAgICAgLyohPCAweDAxMDAwMDAwICovCisjZGVmaW5lIFVTQVJUX0NSMV9ERUFUXzQgICAgICAgICAgICAgICAgKDB4MTBVIDw8IFVTQVJUX0NSMV9ERUFUX1BvcykgICAgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLworI2RlZmluZSBVU0FSVF9DUjFfUlRPSUVfUG9zICAgICAgICAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0NSMV9SVE9JRV9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSMV9SVE9JRV9Qb3MpICAgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLworI2RlZmluZSBVU0FSVF9DUjFfUlRPSUUgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9SVE9JRV9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VpdmUgVGltZSBPdXQgSW50ZXJydXB0IEVuYWJsZSAqLworI2RlZmluZSBVU0FSVF9DUjFfRU9CSUVfUG9zICAgICAgICAgICAgICgyN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0NSMV9FT0JJRV9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSMV9FT0JJRV9Qb3MpICAgICAgICAgIC8qITwgMHgwODAwMDAwMCAqLworI2RlZmluZSBVU0FSVF9DUjFfRU9CSUUgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9FT0JJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IEVuZCBvZiBCbG9jayBJbnRlcnJ1cHQgRW5hYmxlICovCisjZGVmaW5lIFVTQVJUX0NSMV9NMV9Qb3MgICAgICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfQ1IxX00xX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfQ1IxX00xX1BvcykgICAgICAgICAgICAgLyohPCAweDEwMDAwMDAwICovCisjZGVmaW5lIFVTQVJUX0NSMV9NMSAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX00xX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgV29yZCBsZW5ndGggLSBCaXQgMSAqLworI2RlZmluZSBVU0FSVF9DUjFfTSAgICAgICAgICAgICAgICAgICAgICh1aW50MzJfdCkoVVNBUlRfQ1IxX00xIHwgVVNBUlRfQ1IxX00wKSAvKiE8IFdvcmQgbGVuZ3RoICovCisjZGVmaW5lIFVTQVJUX0NSMV9GSUZPRU5fUG9zICAgICAgICAgICAgKDI5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfQ1IxX0ZJRk9FTl9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfQ1IxX0ZJRk9FTl9Qb3MpICAgICAgICAgLyohPCAweDIwMDAwMDAwICovCisjZGVmaW5lIFVTQVJUX0NSMV9GSUZPRU4gICAgICAgICAgICAgICAgVVNBUlRfQ1IxX0ZJRk9FTl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgRklGTyBtb2RlIGVuYWJsZSAqLworI2RlZmluZSBVU0FSVF9DUjFfVFhGRUlFX1BvcyAgICAgICAgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0NSMV9UWEZFSUVfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSMV9UWEZFSUVfUG9zKSAgICAgICAgIC8qITwgMHg0MDAwMDAwMCAqLworI2RlZmluZSBVU0FSVF9DUjFfVFhGRUlFICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9UWEZFSUVfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFRYIEZJRk8gRW1wdHkgSW50ZXJydXB0IEVuYWJsZSAqLworI2RlZmluZSBVU0FSVF9DUjFfUlhGRklFX1BvcyAgICAgICAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0NSMV9SWEZGSUVfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSMV9SWEZGSUVfUG9zKSAgICAgICAgIC8qITwgMHg4MDAwMDAwMCAqLworI2RlZmluZSBVU0FSVF9DUjFfUlhGRklFICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9SWEZGSUVfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFJYIEZJRk8gRnVsbCBJbnRlcnJ1cHQgRW5hYmxlICovCisKKy8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0FSVF9DUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFVTQVJUX0NSMl9TTFZFTl9Qb3MgICAgICAgICAgICAgKDBVKQorI2RlZmluZSBVU0FSVF9DUjJfU0xWRU5fTXNrICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9DUjJfU0xWRU5fUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgVVNBUlRfQ1IyX1NMVkVOICAgICAgICAgICAgICAgICBVU0FSVF9DUjJfU0xWRU5fTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBTeW5jaHJvbm91cyBTbGF2ZSBtb2RlIGVuYWJsZSAqLworI2RlZmluZSBVU0FSVF9DUjJfRElTX05TU19Qb3MgICAgICAgICAgICgzVSkKKyNkZWZpbmUgVVNBUlRfQ1IyX0RJU19OU1NfTXNrICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfQ1IyX0RJU19OU1NfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIFVTQVJUX0NSMl9ESVNfTlNTICAgICAgICAgICAgICAgVVNBUlRfQ1IyX0RJU19OU1NfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgU2xhdmUgU2VsZWN0IChOU1MpIHBpbiBtYW5hZ2VtZW50ICovCisjZGVmaW5lIFVTQVJUX0NSMl9BRERNN19Qb3MgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfQ1IyX0FERE03X01zayAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfQ1IyX0FERE03X1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIFVTQVJUX0NSMl9BRERNNyAgICAgICAgICAgICAgICAgVVNBUlRfQ1IyX0FERE03X01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgNy1iaXQgb3IgNC1iaXQgQWRkcmVzcyBEZXRlY3Rpb24gKi8KKyNkZWZpbmUgVVNBUlRfQ1IyX0xCRExfUG9zICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9DUjJfTEJETF9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9DUjJfTEJETF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgVVNBUlRfQ1IyX0xCREwgICAgICAgICAgICAgICAgICBVU0FSVF9DUjJfTEJETF9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBMSU4gQnJlYWsgRGV0ZWN0aW9uIExlbmd0aCAqLworI2RlZmluZSBVU0FSVF9DUjJfTEJESUVfUG9zICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0NSMl9MQkRJRV9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSMl9MQkRJRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBVU0FSVF9DUjJfTEJESUUgICAgICAgICAgICAgICAgIFVTQVJUX0NSMl9MQkRJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IExJTiBCcmVhayBEZXRlY3Rpb24gSW50ZXJydXB0IEVuYWJsZSAqLworI2RlZmluZSBVU0FSVF9DUjJfTEJDTF9Qb3MgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0NSMl9MQkNMX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSMl9MQkNMX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBVU0FSVF9DUjJfTEJDTCAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMl9MQkNMX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IExhc3QgQml0IENsb2NrIHB1bHNlICovCisjZGVmaW5lIFVTQVJUX0NSMl9DUEhBX1BvcyAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfQ1IyX0NQSEFfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfQ1IyX0NQSEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIFVTQVJUX0NSMl9DUEhBICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IyX0NQSEFfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2xvY2sgUGhhc2UgKi8KKyNkZWZpbmUgVVNBUlRfQ1IyX0NQT0xfUG9zICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9DUjJfQ1BPTF9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9DUjJfQ1BPTF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8KKyNkZWZpbmUgVVNBUlRfQ1IyX0NQT0wgICAgICAgICAgICAgICAgICBVU0FSVF9DUjJfQ1BPTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBDbG9jayBQb2xhcml0eSAqLworI2RlZmluZSBVU0FSVF9DUjJfQ0xLRU5fUG9zICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0NSMl9DTEtFTl9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSMl9DTEtFTl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLworI2RlZmluZSBVU0FSVF9DUjJfQ0xLRU4gICAgICAgICAgICAgICAgIFVTQVJUX0NSMl9DTEtFTl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IENsb2NrIEVuYWJsZSAqLworI2RlZmluZSBVU0FSVF9DUjJfU1RPUF9Qb3MgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0NSMl9TVE9QX01zayAgICAgICAgICAgICAgKDB4M1VMIDw8IFVTQVJUX0NSMl9TVE9QX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMzAwMCAqLworI2RlZmluZSBVU0FSVF9DUjJfU1RPUCAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMl9TVE9QX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNUT1BbMTowXSBiaXRzIChTVE9QIGJpdHMpICovCisjZGVmaW5lIFVTQVJUX0NSMl9TVE9QXzAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IyX1NUT1BfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBVU0FSVF9DUjJfU1RPUF8xICAgICAgICAgICAgICAgICgweDJVIDw8IFVTQVJUX0NSMl9TVE9QX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8KKyNkZWZpbmUgVVNBUlRfQ1IyX0xJTkVOX1BvcyAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9DUjJfTElORU5fTXNrICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9DUjJfTElORU5fUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgVVNBUlRfQ1IyX0xJTkVOICAgICAgICAgICAgICAgICBVU0FSVF9DUjJfTElORU5fTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBMSU4gbW9kZSBlbmFibGUgKi8KKyNkZWZpbmUgVVNBUlRfQ1IyX1NXQVBfUG9zICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9DUjJfU1dBUF9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9DUjJfU1dBUF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgVVNBUlRfQ1IyX1NXQVAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjJfU1dBUF9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBTV0FQIFRYL1JYIHBpbnMgKi8KKyNkZWZpbmUgVVNBUlRfQ1IyX1JYSU5WX1BvcyAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9DUjJfUlhJTlZfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9DUjJfUlhJTlZfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgVVNBUlRfQ1IyX1JYSU5WICAgICAgICAgICAgICAgICBVU0FSVF9DUjJfUlhJTlZfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBSWCBwaW4gYWN0aXZlIGxldmVsIGludmVyc2lvbiAqLworI2RlZmluZSBVU0FSVF9DUjJfVFhJTlZfUG9zICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0NSMl9UWElOVl9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSMl9UWElOVl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLworI2RlZmluZSBVU0FSVF9DUjJfVFhJTlYgICAgICAgICAgICAgICAgIFVTQVJUX0NSMl9UWElOVl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IFRYIHBpbiBhY3RpdmUgbGV2ZWwgaW52ZXJzaW9uICovCisjZGVmaW5lIFVTQVJUX0NSMl9EQVRBSU5WX1BvcyAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfQ1IyX0RBVEFJTlZfTXNrICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfQ1IyX0RBVEFJTlZfUG9zKSAgICAgICAgLyohPCAweDAwMDQwMDAwICovCisjZGVmaW5lIFVTQVJUX0NSMl9EQVRBSU5WICAgICAgICAgICAgICAgVVNBUlRfQ1IyX0RBVEFJTlZfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQmluYXJ5IGRhdGEgaW52ZXJzaW9uICovCisjZGVmaW5lIFVTQVJUX0NSMl9NU0JGSVJTVF9Qb3MgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfQ1IyX01TQkZJUlNUX01zayAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfQ1IyX01TQkZJUlNUX1BvcykgICAgICAgLyohPCAweDAwMDgwMDAwICovCisjZGVmaW5lIFVTQVJUX0NSMl9NU0JGSVJTVCAgICAgICAgICAgICAgVVNBUlRfQ1IyX01TQkZJUlNUX01zayAgICAgICAgICAgICAgICAgIC8qITwgTW9zdCBTaWduaWZpY2FudCBCaXQgRmlyc3QgKi8KKyNkZWZpbmUgVVNBUlRfQ1IyX0FCUkVOX1BvcyAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9DUjJfQUJSRU5fTXNrICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9DUjJfQUJSRU5fUG9zKSAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgVVNBUlRfQ1IyX0FCUkVOICAgICAgICAgICAgICAgICBVU0FSVF9DUjJfQUJSRU5fTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBBdXRvIEJhdWQtUmF0ZSBFbmFibGUqLworI2RlZmluZSBVU0FSVF9DUjJfQUJSTU9ERV9Qb3MgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0NSMl9BQlJNT0RFX01zayAgICAgICAgICAgKDB4M1VMIDw8IFVTQVJUX0NSMl9BQlJNT0RFX1BvcykgICAgICAgIC8qITwgMHgwMDYwMDAwMCAqLworI2RlZmluZSBVU0FSVF9DUjJfQUJSTU9ERSAgICAgICAgICAgICAgIFVTQVJUX0NSMl9BQlJNT0RFX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEFCUk1PRFsxOjBdIGJpdHMgKEF1dG8gQmF1ZC1SYXRlIE1vZGUpICovCisjZGVmaW5lIFVTQVJUX0NSMl9BQlJNT0RFXzAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IyX0FCUk1PREVfUG9zKSAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLworI2RlZmluZSBVU0FSVF9DUjJfQUJSTU9ERV8xICAgICAgICAgICAgICgweDJVIDw8IFVTQVJUX0NSMl9BQlJNT0RFX1BvcykgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8KKyNkZWZpbmUgVVNBUlRfQ1IyX1JUT0VOX1BvcyAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9DUjJfUlRPRU5fTXNrICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9DUjJfUlRPRU5fUG9zKSAgICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8KKyNkZWZpbmUgVVNBUlRfQ1IyX1JUT0VOICAgICAgICAgICAgICAgICBVU0FSVF9DUjJfUlRPRU5fTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlaXZlciBUaW1lLU91dCBlbmFibGUgKi8KKyNkZWZpbmUgVVNBUlRfQ1IyX0FERF9Qb3MgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9DUjJfQUREX01zayAgICAgICAgICAgICAgICgweEZGVUwgPDwgVVNBUlRfQ1IyX0FERF9Qb3MpICAgICAgICAgICAvKiE8IDB4RkYwMDAwMDAgKi8KKyNkZWZpbmUgVVNBUlRfQ1IyX0FERCAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjJfQUREX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBZGRyZXNzIG9mIHRoZSBVU0FSVCBub2RlICovCisKKy8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0FSVF9DUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFVTQVJUX0NSM19FSUVfUG9zICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfQ1IzX0VJRV9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfQ1IzX0VJRV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFVTQVJUX0NSM19FSUUgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IzX0VJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRXJyb3IgSW50ZXJydXB0IEVuYWJsZSAqLworI2RlZmluZSBVU0FSVF9DUjNfSVJFTl9Qb3MgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0NSM19JUkVOX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSM19JUkVOX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBVU0FSVF9DUjNfSVJFTiAgICAgICAgICAgICAgICAgIFVTQVJUX0NSM19JUkVOX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IElyREEgbW9kZSBFbmFibGUgKi8KKyNkZWZpbmUgVVNBUlRfQ1IzX0lSTFBfUG9zICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9DUjNfSVJMUF9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9DUjNfSVJMUF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgVVNBUlRfQ1IzX0lSTFAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjNfSVJMUF9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBJckRBIExvdy1Qb3dlciAqLworI2RlZmluZSBVU0FSVF9DUjNfSERTRUxfUG9zICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0NSM19IRFNFTF9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSM19IRFNFTF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBVU0FSVF9DUjNfSERTRUwgICAgICAgICAgICAgICAgIFVTQVJUX0NSM19IRFNFTF9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IEhhbGYtRHVwbGV4IFNlbGVjdGlvbiAqLworI2RlZmluZSBVU0FSVF9DUjNfTkFDS19Qb3MgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0NSM19OQUNLX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSM19OQUNLX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLworI2RlZmluZSBVU0FSVF9DUjNfTkFDSyAgICAgICAgICAgICAgICAgIFVTQVJUX0NSM19OQUNLX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNtYXJ0Q2FyZCBOQUNLIGVuYWJsZSAqLworI2RlZmluZSBVU0FSVF9DUjNfU0NFTl9Qb3MgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0NSM19TQ0VOX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSM19TQ0VOX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBVU0FSVF9DUjNfU0NFTiAgICAgICAgICAgICAgICAgIFVTQVJUX0NSM19TQ0VOX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNtYXJ0Q2FyZCBtb2RlIGVuYWJsZSAqLworI2RlZmluZSBVU0FSVF9DUjNfRE1BUl9Qb3MgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0NSM19ETUFSX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSM19ETUFSX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLworI2RlZmluZSBVU0FSVF9DUjNfRE1BUiAgICAgICAgICAgICAgICAgIFVTQVJUX0NSM19ETUFSX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IERNQSBFbmFibGUgUmVjZWl2ZXIgKi8KKyNkZWZpbmUgVVNBUlRfQ1IzX0RNQVRfUG9zICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9DUjNfRE1BVF9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9DUjNfRE1BVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgVVNBUlRfQ1IzX0RNQVQgICAgICAgICAgICAgICAgICBVU0FSVF9DUjNfRE1BVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBETUEgRW5hYmxlIFRyYW5zbWl0dGVyICovCisjZGVmaW5lIFVTQVJUX0NSM19SVFNFX1BvcyAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfQ1IzX1JUU0VfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfQ1IzX1JUU0VfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIFVTQVJUX0NSM19SVFNFICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IzX1JUU0VfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgUlRTIEVuYWJsZSAqLworI2RlZmluZSBVU0FSVF9DUjNfQ1RTRV9Qb3MgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0NSM19DVFNFX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSM19DVFNFX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBVU0FSVF9DUjNfQ1RTRSAgICAgICAgICAgICAgICAgIFVTQVJUX0NSM19DVFNFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0NSM19DVFNJRV9Qb3MgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfQ1IzX0NUU0lFX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfQ1IzX0NUU0lFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIFVTQVJUX0NSM19DVFNJRSAgICAgICAgICAgICAgICAgVVNBUlRfQ1IzX0NUU0lFX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1RTIEludGVycnVwdCBFbmFibGUgKi8KKyNkZWZpbmUgVVNBUlRfQ1IzX09ORUJJVF9Qb3MgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9DUjNfT05FQklUX01zayAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9DUjNfT05FQklUX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgVVNBUlRfQ1IzX09ORUJJVCAgICAgICAgICAgICAgICBVU0FSVF9DUjNfT05FQklUX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBPbmUgc2FtcGxlIGJpdCBtZXRob2QgZW5hYmxlICovCisjZGVmaW5lIFVTQVJUX0NSM19PVlJESVNfUG9zICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfQ1IzX09WUkRJU19Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfQ1IzX09WUkRJU19Qb3MpICAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIFVTQVJUX0NSM19PVlJESVMgICAgICAgICAgICAgICAgVVNBUlRfQ1IzX09WUkRJU19Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgT3ZlcnJ1biBEaXNhYmxlICovCisjZGVmaW5lIFVTQVJUX0NSM19ERFJFX1BvcyAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfQ1IzX0REUkVfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfQ1IzX0REUkVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIFVTQVJUX0NSM19ERFJFICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IzX0REUkVfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgRE1BIERpc2FibGUgb24gUmVjZXB0aW9uIEVycm9yICovCisjZGVmaW5lIFVTQVJUX0NSM19ERU1fUG9zICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfQ1IzX0RFTV9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfQ1IzX0RFTV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovCisjZGVmaW5lIFVTQVJUX0NSM19ERU0gICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IzX0RFTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRHJpdmVyIEVuYWJsZSBNb2RlICovCisjZGVmaW5lIFVTQVJUX0NSM19ERVBfUG9zICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfQ1IzX0RFUF9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfQ1IzX0RFUF9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovCisjZGVmaW5lIFVTQVJUX0NSM19ERVAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IzX0RFUF9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRHJpdmVyIEVuYWJsZSBQb2xhcml0eSBTZWxlY3Rpb24gKi8KKyNkZWZpbmUgVVNBUlRfQ1IzX1NDQVJDTlRfUG9zICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9DUjNfU0NBUkNOVF9Nc2sgICAgICAgICAgICgweDdVTCA8PCBVU0FSVF9DUjNfU0NBUkNOVF9Qb3MpICAgICAgICAvKiE8IDB4MDAwRTAwMDAgKi8KKyNkZWZpbmUgVVNBUlRfQ1IzX1NDQVJDTlQgICAgICAgICAgICAgICBVU0FSVF9DUjNfU0NBUkNOVF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBTQ0FSQ05UWzI6MF0gYml0cyAoU21hcnRDYXJkIEF1dG8tUmV0cnkgQ291bnQpICovCisjZGVmaW5lIFVTQVJUX0NSM19TQ0FSQ05UXzAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IzX1NDQVJDTlRfUG9zKSAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLworI2RlZmluZSBVU0FSVF9DUjNfU0NBUkNOVF8xICAgICAgICAgICAgICgweDJVIDw8IFVTQVJUX0NSM19TQ0FSQ05UX1BvcykgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgVVNBUlRfQ1IzX1NDQVJDTlRfMiAgICAgICAgICAgICAoMHg0VSA8PCBVU0FSVF9DUjNfU0NBUkNOVF9Qb3MpICAgICAgICAgLyohPCAweDAwMDgwMDAwICovCisjZGVmaW5lIFVTQVJUX0NSM19XVVNfUG9zICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfQ1IzX1dVU19Nc2sgICAgICAgICAgICAgICAoMHgzVUwgPDwgVVNBUlRfQ1IzX1dVU19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMzAwMDAwICovCisjZGVmaW5lIFVTQVJUX0NSM19XVVMgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IzX1dVU19Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgV1VTWzE6MF0gYml0cyAoV2FrZSBVUCBJbnRlcnJ1cHQgRmxhZyBTZWxlY3Rpb24pICovCisjZGVmaW5lIFVTQVJUX0NSM19XVVNfMCAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IzX1dVU19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLworI2RlZmluZSBVU0FSVF9DUjNfV1VTXzEgICAgICAgICAgICAgICAgICgweDJVIDw8IFVTQVJUX0NSM19XVVNfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8KKyNkZWZpbmUgVVNBUlRfQ1IzX1dVRklFX1BvcyAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9DUjNfV1VGSUVfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9DUjNfV1VGSUVfUG9zKSAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8KKyNkZWZpbmUgVVNBUlRfQ1IzX1dVRklFICAgICAgICAgICAgICAgICBVU0FSVF9DUjNfV1VGSUVfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBXYWtlIFVwIEludGVycnVwdCBFbmFibGUgKi8KKyNkZWZpbmUgVVNBUlRfQ1IzX1RYRlRJRV9Qb3MgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9DUjNfVFhGVElFX01zayAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9DUjNfVFhGVElFX1BvcykgICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8KKyNkZWZpbmUgVVNBUlRfQ1IzX1RYRlRJRSAgICAgICAgICAgICAgICBVU0FSVF9DUjNfVFhGVElFX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBUWCBGSUZPIFRocmVzaG9sZCBJbnRlcnJ1cHQgRW5hYmxlICovCisjZGVmaW5lIFVTQVJUX0NSM19UQ0JHVElFX1BvcyAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfQ1IzX1RDQkdUSUVfTXNrICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfQ1IzX1RDQkdUSUVfUG9zKSAgICAgICAgLyohPCAweDAxMDAwMDAwICovCisjZGVmaW5lIFVTQVJUX0NSM19UQ0JHVElFICAgICAgICAgICAgICAgVVNBUlRfQ1IzX1RDQkdUSUVfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIENvbXBsZXRlIEJlZm9yZSBHdWFyZCBUaW1lIEludGVycnVwdCBFbmFibGUgKi8KKyNkZWZpbmUgVVNBUlRfQ1IzX1JYRlRDRkdfUG9zICAgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9DUjNfUlhGVENGR19Nc2sgICAgICAgICAgICgweDdVTCA8PCBVU0FSVF9DUjNfUlhGVENGR19Qb3MpICAgICAgICAvKiE8IDB4MEUwMDAwMDAgKi8KKyNkZWZpbmUgVVNBUlRfQ1IzX1JYRlRDRkcgICAgICAgICAgICAgICBVU0FSVF9DUjNfUlhGVENGR19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBSWCBGSUZPIFRocmVzaG9sZCBDb25maWd1cmF0aW9uICovCisjZGVmaW5lIFVTQVJUX0NSM19SWEZUQ0ZHXzAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IzX1JYRlRDRkdfUG9zKSAgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLworI2RlZmluZSBVU0FSVF9DUjNfUlhGVENGR18xICAgICAgICAgICAgICgweDJVIDw8IFVTQVJUX0NSM19SWEZUQ0ZHX1BvcykgICAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8KKyNkZWZpbmUgVVNBUlRfQ1IzX1JYRlRDRkdfMiAgICAgICAgICAgICAoMHg0VSA8PCBVU0FSVF9DUjNfUlhGVENGR19Qb3MpICAgICAgICAgLyohPCAweDA4MDAwMDAwICovCisjZGVmaW5lIFVTQVJUX0NSM19SWEZUSUVfUG9zICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfQ1IzX1JYRlRJRV9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfQ1IzX1JYRlRJRV9Qb3MpICAgICAgICAgLyohPCAweDEwMDAwMDAwICovCisjZGVmaW5lIFVTQVJUX0NSM19SWEZUSUUgICAgICAgICAgICAgICAgVVNBUlRfQ1IzX1JYRlRJRV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgUlggRklGTyBUaHJlc2hvbGQgSW50ZXJydXB0IEVuYWJsZSAqLworI2RlZmluZSBVU0FSVF9DUjNfVFhGVENGR19Qb3MgICAgICAgICAgICgyOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0NSM19UWEZUQ0ZHX01zayAgICAgICAgICAgKDB4N1VMIDw8IFVTQVJUX0NSM19UWEZUQ0ZHX1BvcykgICAgICAgIC8qITwgMHhFMDAwMDAwMCAqLworI2RlZmluZSBVU0FSVF9DUjNfVFhGVENGRyAgICAgICAgICAgICAgIFVTQVJUX0NSM19UWEZUQ0ZHX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFRYIEZJRk8gVGhyZXNob2xkIGNvbmZpZ3VyYXRpb24gKi8KKyNkZWZpbmUgVVNBUlRfQ1IzX1RYRlRDRkdfMCAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjNfVFhGVENGR19Qb3MpICAgICAgICAgLyohPCAweDIwMDAwMDAwICovCisjZGVmaW5lIFVTQVJUX0NSM19UWEZUQ0ZHXzEgICAgICAgICAgICAgKDB4MlUgPDwgVVNBUlRfQ1IzX1RYRlRDRkdfUG9zKSAgICAgICAgIC8qITwgMHg0MDAwMDAwMCAqLworI2RlZmluZSBVU0FSVF9DUjNfVFhGVENGR18yICAgICAgICAgICAgICgweDRVIDw8IFVTQVJUX0NSM19UWEZUQ0ZHX1BvcykgICAgICAgICAvKiE8IDB4ODAwMDAwMDAgKi8KKworLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQVJUX0JSUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgVVNBUlRfQlJSX0xQVUFSVCAgICAgICAgICAgICAgICAoKHVpbnQzMl90KTB4MDAwRkZGRkYpICAgICAgICAgICAgICAgICAgLyohPCBMUFVBUlQgQmF1ZCByYXRlIHJlZ2lzdGVyIFsxOTowXSAqLworI2RlZmluZSBVU0FSVF9CUlJfQlJSICAgICAgICAgICAgICAgICAgICgodWludDE2X3QpMHhGRkZGKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFVTQVJUICBCYXVkIHJhdGUgcmVnaXN0ZXIgWzE1OjBdICovCisKKy8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0FSVF9HVFBSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFVTQVJUX0dUUFJfUFNDX1BvcyAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfR1RQUl9QU0NfTXNrICAgICAgICAgICAgICAoMHhGRlVMIDw8IFVTQVJUX0dUUFJfUFNDX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMEZGICovCisjZGVmaW5lIFVTQVJUX0dUUFJfUFNDICAgICAgICAgICAgICAgICAgVVNBUlRfR1RQUl9QU0NfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgUFNDWzc6MF0gYml0cyAoUHJlc2NhbGVyIHZhbHVlKSAqLworI2RlZmluZSBVU0FSVF9HVFBSX0dUX1BvcyAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0dUUFJfR1RfTXNrICAgICAgICAgICAgICAgKDB4RkZVTCA8PCBVU0FSVF9HVFBSX0dUX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwRkYwMCAqLworI2RlZmluZSBVU0FSVF9HVFBSX0dUICAgICAgICAgICAgICAgICAgIFVTQVJUX0dUUFJfR1RfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdUWzc6MF0gYml0cyAoR3VhcmQgdGltZSB2YWx1ZSkgKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0FSVF9SVE9SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgVVNBUlRfUlRPUl9SVE9fUG9zICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9SVE9SX1JUT19Nc2sgICAgICAgICAgICAgICgweEZGRkZGRlVMIDw8IFVTQVJUX1JUT1JfUlRPX1BvcykgICAgICAvKiE8IDB4MDBGRkZGRkYgKi8KKyNkZWZpbmUgVVNBUlRfUlRPUl9SVE8gICAgICAgICAgICAgICAgICBVU0FSVF9SVE9SX1JUT19Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlaXZlciBUaW1lb3V0IFZhbHVlICovCisjZGVmaW5lIFVTQVJUX1JUT1JfQkxFTl9Qb3MgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfUlRPUl9CTEVOX01zayAgICAgICAgICAgICAoMHhGRlVMIDw8IFVTQVJUX1JUT1JfQkxFTl9Qb3MpICAgICAgICAgLyohPCAweEZGMDAwMDAwICovCisjZGVmaW5lIFVTQVJUX1JUT1JfQkxFTiAgICAgICAgICAgICAgICAgVVNBUlRfUlRPUl9CTEVOX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgQmxvY2sgTGVuZ3RoICovCisKKy8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNBUlRfUlFSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFVTQVJUX1JRUl9BQlJSUV9Qb3MgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfUlFSX0FCUlJRX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfUlFSX0FCUlJRX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFVTQVJUX1JRUl9BQlJSUSAgICAgICAgICAgICAgICAgVVNBUlRfUlFSX0FCUlJRX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgQXV0by1CYXVkIFJhdGUgUmVxdWVzdCAqLworI2RlZmluZSBVU0FSVF9SUVJfU0JLUlFfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX1JRUl9TQktSUV9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX1JRUl9TQktSUV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBVU0FSVF9SUVJfU0JLUlEgICAgICAgICAgICAgICAgIFVTQVJUX1JRUl9TQktSUV9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IFNlbmQgQnJlYWsgUmVxdWVzdCAqLworI2RlZmluZSBVU0FSVF9SUVJfTU1SUV9Qb3MgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX1JRUl9NTVJRX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX1JRUl9NTVJRX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBVU0FSVF9SUVJfTU1SUSAgICAgICAgICAgICAgICAgIFVTQVJUX1JRUl9NTVJRX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IE11dGUgTW9kZSBSZXF1ZXN0ICovCisjZGVmaW5lIFVTQVJUX1JRUl9SWEZSUV9Qb3MgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfUlFSX1JYRlJRX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfUlFSX1JYRlJRX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIFVTQVJUX1JRUl9SWEZSUSAgICAgICAgICAgICAgICAgVVNBUlRfUlFSX1JYRlJRX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZWl2ZSBEYXRhIGZsdXNoIFJlcXVlc3QgKi8KKyNkZWZpbmUgVVNBUlRfUlFSX1RYRlJRX1BvcyAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9SUVJfVFhGUlFfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9SUVJfVFhGUlFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgVVNBUlRfUlFSX1RYRlJRICAgICAgICAgICAgICAgICBVU0FSVF9SUVJfVFhGUlFfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pdCBEYXRhIGZsdXNoIFJlcXVlc3QgKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0FSVF9JU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgVVNBUlRfSVNSX1BFX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9JU1JfUEVfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9JU1JfUEVfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgVVNBUlRfSVNSX1BFICAgICAgICAgICAgICAgICAgICBVU0FSVF9JU1JfUEVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQYXJpdHkgRXJyb3IgKi8KKyNkZWZpbmUgVVNBUlRfSVNSX0ZFX1BvcyAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0lTUl9GRV9Nc2sgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0lTUl9GRV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBVU0FSVF9JU1JfRkUgICAgICAgICAgICAgICAgICAgIFVTQVJUX0lTUl9GRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEZyYW1pbmcgRXJyb3IgKi8KKyNkZWZpbmUgVVNBUlRfSVNSX05FX1BvcyAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9JU1JfTkVfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9JU1JfTkVfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgVVNBUlRfSVNSX05FICAgICAgICAgICAgICAgICAgICBVU0FSVF9JU1JfTkVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTVEFSVCBiaXQgTm9pc2UgRXJyb3IgZGV0ZWN0aW9uIEZsYWcgKi8KKyNkZWZpbmUgVVNBUlRfSVNSX09SRV9Qb3MgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9JU1JfT1JFX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9JU1JfT1JFX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgVVNBUlRfSVNSX09SRSAgICAgICAgICAgICAgICAgICBVU0FSVF9JU1JfT1JFX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBPdmVyUnVuIEVycm9yICovCisjZGVmaW5lIFVTQVJUX0lTUl9JRExFX1BvcyAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfSVNSX0lETEVfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfSVNSX0lETEVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIFVTQVJUX0lTUl9JRExFICAgICAgICAgICAgICAgICAgVVNBUlRfSVNSX0lETEVfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgSURMRSBsaW5lIGRldGVjdGVkICovCisjZGVmaW5lIFVTQVJUX0lTUl9SWE5FX1BvcyAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfSVNSX1JYTkVfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfSVNSX1JYTkVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIFVTQVJUX0lTUl9SWE5FICAgICAgICAgICAgICAgICAgVVNBUlRfSVNSX1JYTkVfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmVhZCBEYXRhIFJlZ2lzdGVyIE5vdCBFbXB0eSAqLworI2RlZmluZSBVU0FSVF9JU1JfUlhORV9SWEZORV9Qb3MgICAgICAgIFVTQVJUX0lTUl9SWE5FX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfSVNSX1JYTkVfUlhGTkVfTXNrICAgICAgICBVU0FSVF9JU1JfUlhORV9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIFVTQVJUX0lTUl9SWE5FX1JYRk5FICAgICAgICAgICAgVVNBUlRfSVNSX1JYTkVfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmVhZCBEYXRhIFJlZ2lzdGVyIG9yIFJYIEZJRk8gTm90IEVtcHR5ICovCisjZGVmaW5lIFVTQVJUX0lTUl9UQ19Qb3MgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfSVNSX1RDX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfSVNSX1RDX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovCisjZGVmaW5lIFVTQVJUX0lTUl9UQyAgICAgICAgICAgICAgICAgICAgVVNBUlRfSVNSX1RDX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIENvbXBsZXRlICovCisjZGVmaW5lIFVTQVJUX0lTUl9UWEVfUG9zICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfSVNSX1RYRV9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfSVNSX1RYRV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovCisjZGVmaW5lIFVTQVJUX0lTUl9UWEUgICAgICAgICAgICAgICAgICAgVVNBUlRfSVNSX1RYRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXQgRGF0YSBSZWdpc3RlciBFbXB0eSAqLworI2RlZmluZSBVU0FSVF9JU1JfVFhFX1RYRk5GX1BvcyAgICAgICAgIFVTQVJUX0lTUl9UWEVfUG9zICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9JU1JfVFhFX1RYRk5GX01zayAgICAgICAgIFVTQVJUX0lTUl9UWEVfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgVVNBUlRfSVNSX1RYRV9UWEZORiAgICAgICAgICAgICBVU0FSVF9JU1JfVFhFX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pdCBEYXRhIFJlZ2lzdGVyIEVtcHR5IG9yIFRYIEZJRk8gTm90IEZ1bGwgRmxhZyAqLworI2RlZmluZSBVU0FSVF9JU1JfTEJERl9Qb3MgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0lTUl9MQkRGX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0lTUl9MQkRGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLworI2RlZmluZSBVU0FSVF9JU1JfTEJERiAgICAgICAgICAgICAgICAgIFVTQVJUX0lTUl9MQkRGX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IExJTiBCcmVhayBEZXRlY3Rpb24gRmxhZyAqLworI2RlZmluZSBVU0FSVF9JU1JfQ1RTSUZfUG9zICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0lTUl9DVFNJRl9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0lTUl9DVFNJRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLworI2RlZmluZSBVU0FSVF9JU1JfQ1RTSUYgICAgICAgICAgICAgICAgIFVTQVJUX0lTUl9DVFNJRl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IENUUyBpbnRlcnJ1cHQgRmxhZyAqLworI2RlZmluZSBVU0FSVF9JU1JfQ1RTX1BvcyAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0lTUl9DVFNfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0lTUl9DVFNfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLworI2RlZmluZSBVU0FSVF9JU1JfQ1RTICAgICAgICAgICAgICAgICAgIFVTQVJUX0lTUl9DVFNfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENUUyBGbGFnICovCisjZGVmaW5lIFVTQVJUX0lTUl9SVE9GX1BvcyAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfSVNSX1JUT0ZfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfSVNSX1JUT0ZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIFVTQVJUX0lTUl9SVE9GICAgICAgICAgICAgICAgICAgVVNBUlRfSVNSX1JUT0ZfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZWl2ZXIgVGltZW91dCAqLworI2RlZmluZSBVU0FSVF9JU1JfRU9CRl9Qb3MgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0lTUl9FT0JGX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0lTUl9FT0JGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBVU0FSVF9JU1JfRU9CRiAgICAgICAgICAgICAgICAgIFVTQVJUX0lTUl9FT0JGX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IEVuZCBPZiBCbG9jayBGbGFnICovCisjZGVmaW5lIFVTQVJUX0lTUl9VRFJfUG9zICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfSVNSX1VEUl9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfSVNSX1VEUl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIFVTQVJUX0lTUl9VRFIgICAgICAgICAgICAgICAgICAgVVNBUlRfSVNSX1VEUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1BJIFNsYXZlIFVuZGVycnVuIGVycm9yIEZsYWcgKi8KKyNkZWZpbmUgVVNBUlRfSVNSX0FCUkVfUG9zICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9JU1JfQUJSRV9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9JU1JfQUJSRV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8KKyNkZWZpbmUgVVNBUlRfSVNSX0FCUkUgICAgICAgICAgICAgICAgICBVU0FSVF9JU1JfQUJSRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBBdXRvLUJhdWQgUmF0ZSBFcnJvciAqLworI2RlZmluZSBVU0FSVF9JU1JfQUJSRl9Qb3MgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0lTUl9BQlJGX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0lTUl9BQlJGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLworI2RlZmluZSBVU0FSVF9JU1JfQUJSRiAgICAgICAgICAgICAgICAgIFVTQVJUX0lTUl9BQlJGX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IEF1dG8tQmF1ZCBSYXRlIEZsYWcgKi8KKyNkZWZpbmUgVVNBUlRfSVNSX0JVU1lfUG9zICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9JU1JfQlVTWV9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9JU1JfQlVTWV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8KKyNkZWZpbmUgVVNBUlRfSVNSX0JVU1kgICAgICAgICAgICAgICAgICBVU0FSVF9JU1JfQlVTWV9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBCdXN5IEZsYWcgKi8KKyNkZWZpbmUgVVNBUlRfSVNSX0NNRl9Qb3MgICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9JU1JfQ01GX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9JU1JfQ01GX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgVVNBUlRfSVNSX0NNRiAgICAgICAgICAgICAgICAgICBVU0FSVF9JU1JfQ01GX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFyYWN0ZXIgTWF0Y2ggRmxhZyAqLworI2RlZmluZSBVU0FSVF9JU1JfU0JLRl9Qb3MgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0lTUl9TQktGX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0lTUl9TQktGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLworI2RlZmluZSBVU0FSVF9JU1JfU0JLRiAgICAgICAgICAgICAgICAgIFVTQVJUX0lTUl9TQktGX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNlbmQgQnJlYWsgRmxhZyAqLworI2RlZmluZSBVU0FSVF9JU1JfUldVX1BvcyAgICAgICAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0lTUl9SV1VfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0lTUl9SV1VfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLworI2RlZmluZSBVU0FSVF9JU1JfUldVICAgICAgICAgICAgICAgICAgIFVTQVJUX0lTUl9SV1VfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VpdmUgV2FrZSBVcCBmcm9tIG11dGUgbW9kZSBGbGFnICovCisjZGVmaW5lIFVTQVJUX0lTUl9XVUZfUG9zICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfSVNSX1dVRl9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfSVNSX1dVRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovCisjZGVmaW5lIFVTQVJUX0lTUl9XVUYgICAgICAgICAgICAgICAgICAgVVNBUlRfSVNSX1dVRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgV2FrZSBVcCBmcm9tIHN0b3AgbW9kZSBGbGFnICovCisjZGVmaW5lIFVTQVJUX0lTUl9URUFDS19Qb3MgICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfSVNSX1RFQUNLX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfSVNSX1RFQUNLX1BvcykgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovCisjZGVmaW5lIFVTQVJUX0lTUl9URUFDSyAgICAgICAgICAgICAgICAgVVNBUlRfSVNSX1RFQUNLX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXQgRW5hYmxlIEFja25vd2xlZGdlIEZsYWcgKi8KKyNkZWZpbmUgVVNBUlRfSVNSX1JFQUNLX1BvcyAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9JU1JfUkVBQ0tfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9JU1JfUkVBQ0tfUG9zKSAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8KKyNkZWZpbmUgVVNBUlRfSVNSX1JFQUNLICAgICAgICAgICAgICAgICBVU0FSVF9JU1JfUkVBQ0tfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlaXZlIEVuYWJsZSBBY2tub3dsZWRnZSBGbGFnICovCisjZGVmaW5lIFVTQVJUX0lTUl9UWEZFX1BvcyAgICAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfSVNSX1RYRkVfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfSVNSX1RYRkVfUG9zKSAgICAgICAgICAgLyohPCAweDAwODAwMDAwICovCisjZGVmaW5lIFVTQVJUX0lTUl9UWEZFICAgICAgICAgICAgICAgICAgVVNBUlRfSVNSX1RYRkVfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgVFggRklGTyBFbXB0eSBGbGFnICovCisjZGVmaW5lIFVTQVJUX0lTUl9SWEZGX1BvcyAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfSVNSX1JYRkZfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfSVNSX1JYRkZfUG9zKSAgICAgICAgICAgLyohPCAweDAxMDAwMDAwICovCisjZGVmaW5lIFVTQVJUX0lTUl9SWEZGICAgICAgICAgICAgICAgICAgVVNBUlRfSVNSX1JYRkZfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgUlggRklGTyBGdWxsIEZsYWcgKi8KKyNkZWZpbmUgVVNBUlRfSVNSX1RDQkdUX1BvcyAgICAgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9JU1JfVENCR1RfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9JU1JfVENCR1RfUG9zKSAgICAgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8KKyNkZWZpbmUgVVNBUlRfSVNSX1RDQkdUICAgICAgICAgICAgICAgICBVU0FSVF9JU1JfVENCR1RfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQ29tcGxldGUgQmVmb3JlIEd1YXJkIFRpbWUgY29tcGxldGlvbiAqLworI2RlZmluZSBVU0FSVF9JU1JfUlhGVF9Qb3MgICAgICAgICAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0lTUl9SWEZUX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0lTUl9SWEZUX1BvcykgICAgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLworI2RlZmluZSBVU0FSVF9JU1JfUlhGVCAgICAgICAgICAgICAgICAgIFVTQVJUX0lTUl9SWEZUX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJYIEZJRk8gVGhyZXNob2xkIEZsYWcgKi8KKyNkZWZpbmUgVVNBUlRfSVNSX1RYRlRfUG9zICAgICAgICAgICAgICAoMjdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9JU1JfVFhGVF9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9JU1JfVFhGVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8KKyNkZWZpbmUgVVNBUlRfSVNSX1RYRlQgICAgICAgICAgICAgICAgICBVU0FSVF9JU1JfVFhGVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBUWCBGSUZPIFRocmVzaG9sZCBGbGFnICovCisKKy8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNBUlRfSUNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFVTQVJUX0lDUl9QRUNGX1BvcyAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfSUNSX1BFQ0ZfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfSUNSX1BFQ0ZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFVTQVJUX0lDUl9QRUNGICAgICAgICAgICAgICAgICAgVVNBUlRfSUNSX1BFQ0ZfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGFyaXR5IEVycm9yIENsZWFyIEZsYWcgKi8KKyNkZWZpbmUgVVNBUlRfSUNSX0ZFQ0ZfUG9zICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9JQ1JfRkVDRl9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9JQ1JfRkVDRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgVVNBUlRfSUNSX0ZFQ0YgICAgICAgICAgICAgICAgICBVU0FSVF9JQ1JfRkVDRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBGcmFtaW5nIEVycm9yIENsZWFyIEZsYWcgKi8KKyNkZWZpbmUgVVNBUlRfSUNSX05FQ0ZfUG9zICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9JQ1JfTkVDRl9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9JQ1JfTkVDRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgVVNBUlRfSUNSX05FQ0YgICAgICAgICAgICAgICAgICBVU0FSVF9JQ1JfTkVDRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBOb2lzZSBFcnJvciBkZXRlY3RlZCBDbGVhciBGbGFnICovCisjZGVmaW5lIFVTQVJUX0lDUl9PUkVDRl9Qb3MgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfSUNSX09SRUNGX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfSUNSX09SRUNGX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIFVTQVJUX0lDUl9PUkVDRiAgICAgICAgICAgICAgICAgVVNBUlRfSUNSX09SRUNGX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgT3ZlclJ1biBFcnJvciBDbGVhciBGbGFnICovCisjZGVmaW5lIFVTQVJUX0lDUl9JRExFQ0ZfUG9zICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfSUNSX0lETEVDRl9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfSUNSX0lETEVDRl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIFVTQVJUX0lDUl9JRExFQ0YgICAgICAgICAgICAgICAgVVNBUlRfSUNSX0lETEVDRl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgSURMRSBsaW5lIGRldGVjdGVkIENsZWFyIEZsYWcgKi8KKyNkZWZpbmUgVVNBUlRfSUNSX1RYRkVDRl9Qb3MgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9JQ1JfVFhGRUNGX01zayAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9JQ1JfVFhGRUNGX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgVVNBUlRfSUNSX1RYRkVDRiAgICAgICAgICAgICAgICBVU0FSVF9JQ1JfVFhGRUNGX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBUWCBGSUZPIEVtcHR5IENsZWFyIEZsYWcgKi8KKyNkZWZpbmUgVVNBUlRfSUNSX1RDQ0ZfUG9zICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9JQ1JfVENDRl9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9JQ1JfVENDRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgVVNBUlRfSUNSX1RDQ0YgICAgICAgICAgICAgICAgICBVU0FSVF9JQ1JfVENDRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQ29tcGxldGUgQ2xlYXIgRmxhZyAqLworI2RlZmluZSBVU0FSVF9JQ1JfVENCR1RDRl9Qb3MgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0lDUl9UQ0JHVENGX01zayAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0lDUl9UQ0JHVENGX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLworI2RlZmluZSBVU0FSVF9JQ1JfVENCR1RDRiAgICAgICAgICAgICAgIFVTQVJUX0lDUl9UQ0JHVENGX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBDb21wbGV0ZSBCZWZvcmUgR3VhcmQgVGltZSBDbGVhciBGbGFnICovCisjZGVmaW5lIFVTQVJUX0lDUl9MQkRDRl9Qb3MgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfSUNSX0xCRENGX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfSUNSX0xCRENGX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovCisjZGVmaW5lIFVTQVJUX0lDUl9MQkRDRiAgICAgICAgICAgICAgICAgVVNBUlRfSUNSX0xCRENGX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgTElOIEJyZWFrIERldGVjdGlvbiBDbGVhciBGbGFnICovCisjZGVmaW5lIFVTQVJUX0lDUl9DVFNDRl9Qb3MgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfSUNSX0NUU0NGX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfSUNSX0NUU0NGX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovCisjZGVmaW5lIFVTQVJUX0lDUl9DVFNDRiAgICAgICAgICAgICAgICAgVVNBUlRfSUNSX0NUU0NGX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgQ1RTIEludGVycnVwdCBDbGVhciBGbGFnICovCisjZGVmaW5lIFVTQVJUX0lDUl9SVE9DRl9Qb3MgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfSUNSX1JUT0NGX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfSUNSX1JUT0NGX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIFVTQVJUX0lDUl9SVE9DRiAgICAgICAgICAgICAgICAgVVNBUlRfSUNSX1JUT0NGX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZWl2ZXIgVGltZSBPdXQgQ2xlYXIgRmxhZyAqLworI2RlZmluZSBVU0FSVF9JQ1JfRU9CQ0ZfUG9zICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0lDUl9FT0JDRl9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0lDUl9FT0JDRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBVU0FSVF9JQ1JfRU9CQ0YgICAgICAgICAgICAgICAgIFVTQVJUX0lDUl9FT0JDRl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IEVuZCBPZiBCbG9jayBDbGVhciBGbGFnICovCisjZGVmaW5lIFVTQVJUX0lDUl9VRFJDRl9Qb3MgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfSUNSX1VEUkNGX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfSUNSX1VEUkNGX1BvcykgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovCisjZGVmaW5lIFVTQVJUX0lDUl9VRFJDRiAgICAgICAgICAgICAgICAgVVNBUlRfSUNSX1VEUkNGX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgU1BJIFNsYXZlIFVuZGVycnVuIENsZWFyIEZsYWcgKi8KKyNkZWZpbmUgVVNBUlRfSUNSX0NNQ0ZfUG9zICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9JQ1JfQ01DRl9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9JQ1JfQ01DRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgVVNBUlRfSUNSX0NNQ0YgICAgICAgICAgICAgICAgICBVU0FSVF9JQ1JfQ01DRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFyYWN0ZXIgTWF0Y2ggQ2xlYXIgRmxhZyAqLworI2RlZmluZSBVU0FSVF9JQ1JfV1VDRl9Qb3MgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX0lDUl9XVUNGX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0lDUl9XVUNGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLworI2RlZmluZSBVU0FSVF9JQ1JfV1VDRiAgICAgICAgICAgICAgICAgIFVTQVJUX0lDUl9XVUNGX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IFdha2UgVXAgZnJvbSBzdG9wIG1vZGUgQ2xlYXIgRmxhZyAqLworCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQVJUX1JEUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBVU0FSVF9SRFJfUkRSX1BvcyAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQVJUX1JEUl9SRFJfTXNrICAgICAgICAgICAgICAgKDB4MDFGRlVMIDw8IFVTQVJUX1JEUl9SRFJfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDFGRiAqLworI2RlZmluZSBVU0FSVF9SRFJfUkRSICAgICAgICAgICAgICAgICAgIFVTQVJUX1JEUl9SRFJfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJEUls4OjBdIGJpdHMgKFJlY2VpdmUgRGF0YSB2YWx1ZSkgKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0FSVF9URFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgVVNBUlRfVERSX1REUl9Qb3MgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0FSVF9URFJfVERSX01zayAgICAgICAgICAgICAgICgweDAxRkZVTCA8PCBVU0FSVF9URFJfVERSX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAxRkYgKi8KKyNkZWZpbmUgVVNBUlRfVERSX1REUiAgICAgICAgICAgICAgICAgICBVU0FSVF9URFJfVERSX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBURFJbODowXSBiaXRzIChUcmFuc21pdCBEYXRhIHZhbHVlKSAqLworCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQVJUX1BSRVNDIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFVTQVJUX1BSRVNDX1BSRVNDQUxFUl9Qb3MgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgVVNBUlRfUFJFU0NfUFJFU0NBTEVSX01zayAgICAgICAoMHhGVUwgPDwgVVNBUlRfUFJFU0NfUFJFU0NBTEVSX1BvcykgICAgLyohPCAweDAwMDAwMDBGICovCisjZGVmaW5lIFVTQVJUX1BSRVNDX1BSRVNDQUxFUiAgICAgICAgICAgVVNBUlRfUFJFU0NfUFJFU0NBTEVSX01zayAgICAgICAgICAgICAgIC8qITwgUFJFU0NBTEVSWzM6MF0gYml0cyAoQ2xvY2sgcHJlc2NhbGVyKSAqLworI2RlZmluZSBVU0FSVF9QUkVTQ19QUkVTQ0FMRVJfMCAgICAgICAgICgweDFVIDw8IFVTQVJUX1BSRVNDX1BSRVNDQUxFUl9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgVVNBUlRfUFJFU0NfUFJFU0NBTEVSXzEgICAgICAgICAoMHgyVSA8PCBVU0FSVF9QUkVTQ19QUkVTQ0FMRVJfUG9zKSAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFVTQVJUX1BSRVNDX1BSRVNDQUxFUl8yICAgICAgICAgKDB4NFUgPDwgVVNBUlRfUFJFU0NfUFJFU0NBTEVSX1BvcykgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBVU0FSVF9QUkVTQ19QUkVTQ0FMRVJfMyAgICAgICAgICgweDhVIDw8IFVTQVJUX1BSRVNDX1BSRVNDQUxFUl9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisvKiAgICAgICAgICAgICAgICAgICAgICAgICAgICBXaW5kb3cgV0FUQ0hET0cgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFdXREdfQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBXV0RHX0NSX1RfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBXV0RHX0NSX1RfTXNrICAgICAgICAgICAoMHg3RlVMIDw8IFdXREdfQ1JfVF9Qb3MpICAgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA3RiAqLworI2RlZmluZSBXV0RHX0NSX1QgICAgICAgICAgICAgICBXV0RHX0NSX1RfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxUWzY6MF0gYml0cyAoNy1CaXQgY291bnRlciAoTVNCIHRvIExTQikpICovCisjZGVmaW5lIFdXREdfQ1JfVF8wICAgICAgICAgICAgICgweDAxVSA8PCBXV0RHX0NSX1RfUG9zKSAgICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIFdXREdfQ1JfVF8xICAgICAgICAgICAgICgweDAyVSA8PCBXV0RHX0NSX1RfUG9zKSAgICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIFdXREdfQ1JfVF8yICAgICAgICAgICAgICgweDA0VSA8PCBXV0RHX0NSX1RfUG9zKSAgICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIFdXREdfQ1JfVF8zICAgICAgICAgICAgICgweDA4VSA8PCBXV0RHX0NSX1RfUG9zKSAgICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIFdXREdfQ1JfVF80ICAgICAgICAgICAgICgweDEwVSA8PCBXV0RHX0NSX1RfUG9zKSAgICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovCisjZGVmaW5lIFdXREdfQ1JfVF81ICAgICAgICAgICAgICgweDIwVSA8PCBXV0RHX0NSX1RfUG9zKSAgICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIFdXREdfQ1JfVF82ICAgICAgICAgICAgICgweDQwVSA8PCBXV0RHX0NSX1RfUG9zKSAgICAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovCisKKyNkZWZpbmUgV1dER19DUl9XREdBX1BvcyAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgV1dER19DUl9XREdBX01zayAgICAgICAgKDB4MVVMIDw8IFdXREdfQ1JfV0RHQV9Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgV1dER19DUl9XREdBICAgICAgICAgICAgV1dER19DUl9XREdBX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8QWN0aXZhdGlvbiBiaXQgKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBXV0RHX0NGUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgV1dER19DRlJfV19Qb3MgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgV1dER19DRlJfV19Nc2sgICAgICAgICAgKDB4N0ZVTCA8PCBXV0RHX0NGUl9XX1BvcykgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwN0YgKi8KKyNkZWZpbmUgV1dER19DRlJfVyAgICAgICAgICAgICAgV1dER19DRlJfV19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8V1s2OjBdIGJpdHMgKDctYml0IHdpbmRvdyB2YWx1ZSkgKi8KKyNkZWZpbmUgV1dER19DRlJfV18wICAgICAgICAgICAgKDB4MDFVIDw8IFdXREdfQ0ZSX1dfUG9zKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgV1dER19DRlJfV18xICAgICAgICAgICAgKDB4MDJVIDw8IFdXREdfQ0ZSX1dfUG9zKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgV1dER19DRlJfV18yICAgICAgICAgICAgKDB4MDRVIDw8IFdXREdfQ0ZSX1dfUG9zKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgV1dER19DRlJfV18zICAgICAgICAgICAgKDB4MDhVIDw8IFdXREdfQ0ZSX1dfUG9zKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8KKyNkZWZpbmUgV1dER19DRlJfV180ICAgICAgICAgICAgKDB4MTBVIDw8IFdXREdfQ0ZSX1dfUG9zKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8KKyNkZWZpbmUgV1dER19DRlJfV181ICAgICAgICAgICAgKDB4MjBVIDw8IFdXREdfQ0ZSX1dfUG9zKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgV1dER19DRlJfV182ICAgICAgICAgICAgKDB4NDBVIDw8IFdXREdfQ0ZSX1dfUG9zKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKworI2RlZmluZSBXV0RHX0NGUl9XREdUQl9Qb3MgICAgICAoMTFVKQorI2RlZmluZSBXV0RHX0NGUl9XREdUQl9Nc2sgICAgICAoMHg3VUwgPDwgV1dER19DRlJfV0RHVEJfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMzgwMCAqLworI2RlZmluZSBXV0RHX0NGUl9XREdUQiAgICAgICAgICBXV0RHX0NGUl9XREdUQl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxXREdUQlsyOjBdIGJpdHMgKFRpbWVyIEJhc2UpICovCisjZGVmaW5lIFdXREdfQ0ZSX1dER1RCXzAgICAgICAgICgweDFVIDw8IFdXREdfQ0ZSX1dER1RCX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovCisjZGVmaW5lIFdXREdfQ0ZSX1dER1RCXzEgICAgICAgICgweDJVIDw8IFdXREdfQ0ZSX1dER1RCX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIFdXREdfQ0ZSX1dER1RCXzIgICAgICAgICgweDRVIDw8IFdXREdfQ0ZSX1dER1RCX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovCisKKyNkZWZpbmUgV1dER19DRlJfRVdJX1BvcyAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgV1dER19DRlJfRVdJX01zayAgICAgICAgKDB4MVVMIDw8IFdXREdfQ0ZSX0VXSV9Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgV1dER19DRlJfRVdJICAgICAgICAgICAgV1dER19DRlJfRVdJX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8RWFybHkgV2FrZXVwIEludGVycnVwdCAqLworCisvKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFdXREdfU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBXV0RHX1NSX0VXSUZfUG9zICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBXV0RHX1NSX0VXSUZfTXNrICAgICAgICAoMHgxVUwgPDwgV1dER19TUl9FV0lGX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBXV0RHX1NSX0VXSUYgICAgICAgICAgICBXV0RHX1NSX0VXSUZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITxFYXJseSBXYWtldXAgSW50ZXJydXB0IEZsYWcgKi8KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisvKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRGVidWcgTUNVICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQkdNQ1VfSURDT0RFIHJlZ2lzdGVyICAqKioqKioqKioqKioqLworI2RlZmluZSBEQkdNQ1VfSURDT0RFX0RFVl9JRF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgIAorI2RlZmluZSBEQkdNQ1VfSURDT0RFX0RFVl9JRF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICgweEZGRlVMIDw8IERCR01DVV9JRENPREVfREVWX0lEX1BvcykgLyohPCAweDAwMDAwRkZGICovCisjZGVmaW5lIERCR01DVV9JRENPREVfREVWX0lEICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgREJHTUNVX0lEQ09ERV9ERVZfSURfTXNrIAorI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgIAorI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZVTCA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHhGRkZGMDAwMCAqLworI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERCR01DVV9JRENPREVfUkVWX0lEX01zayAKKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREJHTUNVX0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgREJHTUNVX0NSX0RCR19TTEVFUF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgREJHTUNVX0NSX0RCR19TTEVFUF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgREJHTUNVX0NSX0RCR19TTEVFUF9Qb3MpICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgREJHTUNVX0NSX0RCR19TTEVFUCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEQkdNQ1VfQ1JfREJHX1NMRUVQX01zayAKKyNkZWZpbmUgREJHTUNVX0NSX0RCR19TVE9QX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgREJHTUNVX0NSX0RCR19TVE9QX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgREJHTUNVX0NSX0RCR19TVE9QX1BvcykgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgREJHTUNVX0NSX0RCR19TVE9QICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEQkdNQ1VfQ1JfREJHX1NUT1BfTXNrIAorI2RlZmluZSBEQkdNQ1VfQ1JfREJHX1NUQU5EQllfUG9zICAgICAgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgIAorI2RlZmluZSBEQkdNQ1VfQ1JfREJHX1NUQU5EQllfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBEQkdNQ1VfQ1JfREJHX1NUQU5EQllfUG9zKSAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgREJHTUNVX0NSX0RCR19TVEFOREJZICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEQkdNQ1VfQ1JfREJHX1NUQU5EQllfTXNrIAorI2RlZmluZSBEQkdNQ1VfQ1JfVFJBQ0VfSU9FTl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAgICg1VSkKKyNkZWZpbmUgREJHTUNVX0NSX1RSQUNFX0lPRU5fTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgREJHTUNVX0NSX1RSQUNFX0lPRU5fUG9zKSAvKiE8IDB4MDAwMDAwMjAgKi8KKyNkZWZpbmUgREJHTUNVX0NSX1RSQUNFX0lPRU4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEQkdNQ1VfQ1JfVFJBQ0VfSU9FTl9Nc2sKKyNkZWZpbmUgREJHTUNVX0NSX1RSR09FTl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMjhVKQorI2RlZmluZSBEQkdNQ1VfQ1JfVFJHT0VOX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBEQkdNQ1VfQ1JfVFJHT0VOX1BvcykgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8KKyNkZWZpbmUgREJHTUNVX0NSX1RSR09FTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEQkdNQ1VfQ1JfVFJHT0VOX01zaworCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQkdNQ1VfQVBCMUZaUjEgcmVnaXN0ZXIgICoqKioqKioqKioqLworI2RlZmluZSBEQkdNQ1VfQVBCMUZaUjFfREJHX1RJTTJfU1RPUF9Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgIAorI2RlZmluZSBEQkdNQ1VfQVBCMUZaUjFfREJHX1RJTTJfU1RPUF9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBEQkdNQ1VfQVBCMUZaUjFfREJHX1RJTTJfU1RPUF9Qb3MpICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgREJHTUNVX0FQQjFGWlIxX0RCR19USU0yX1NUT1AgICAgICAgICAgICAgICAgICAgICBEQkdNQ1VfQVBCMUZaUjFfREJHX1RJTTJfU1RPUF9Nc2sgCisjZGVmaW5lIERCR01DVV9BUEIxRlpSMV9EQkdfUlRDX1NUT1BfUG9zICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgCisjZGVmaW5lIERCR01DVV9BUEIxRlpSMV9EQkdfUlRDX1NUT1BfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERCR01DVV9BUEIxRlpSMV9EQkdfUlRDX1NUT1BfUG9zKSAgIC8qITwgMHgwMDAwMDQwMCAqLworI2RlZmluZSBEQkdNQ1VfQVBCMUZaUjFfREJHX1JUQ19TVE9QICAgICAgICAgICAgICAgICAgICAgIERCR01DVV9BUEIxRlpSMV9EQkdfUlRDX1NUT1BfTXNrIAorI2RlZmluZSBEQkdNQ1VfQVBCMUZaUjFfREJHX1dXREdfU1RPUF9Qb3MgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgIAorI2RlZmluZSBEQkdNQ1VfQVBCMUZaUjFfREJHX1dXREdfU1RPUF9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBEQkdNQ1VfQVBCMUZaUjFfREJHX1dXREdfU1RPUF9Qb3MpICAvKiE8IDB4MDAwMDA4MDAgKi8KKyNkZWZpbmUgREJHTUNVX0FQQjFGWlIxX0RCR19XV0RHX1NUT1AgICAgICAgICAgICAgICAgICAgICBEQkdNQ1VfQVBCMUZaUjFfREJHX1dXREdfU1RPUF9Nc2sgCisjZGVmaW5lIERCR01DVV9BUEIxRlpSMV9EQkdfSVdER19TVE9QX1BvcyAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgCisjZGVmaW5lIERCR01DVV9BUEIxRlpSMV9EQkdfSVdER19TVE9QX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERCR01DVV9BUEIxRlpSMV9EQkdfSVdER19TVE9QX1BvcykgIC8qITwgMHgwMDAwMTAwMCAqLworI2RlZmluZSBEQkdNQ1VfQVBCMUZaUjFfREJHX0lXREdfU1RPUCAgICAgICAgICAgICAgICAgICAgIERCR01DVV9BUEIxRlpSMV9EQkdfSVdER19TVE9QX01zayAKKyNkZWZpbmUgREJHTUNVX0FQQjFGWlIxX0RCR19JMkMxX1NUT1BfUG9zICAgICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAKKyNkZWZpbmUgREJHTUNVX0FQQjFGWlIxX0RCR19JMkMxX1NUT1BfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgREJHTUNVX0FQQjFGWlIxX0RCR19JMkMxX1NUT1BfUG9zKSAgLyohPCAweDAwMjAwMDAwICovCisjZGVmaW5lIERCR01DVV9BUEIxRlpSMV9EQkdfSTJDMV9TVE9QICAgICAgICAgICAgICAgICAgICAgREJHTUNVX0FQQjFGWlIxX0RCR19JMkMxX1NUT1BfTXNrIAorI2RlZmluZSBEQkdNQ1VfQVBCMUZaUjFfREJHX0kyQzNfU1RPUF9Qb3MgICAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgIAorI2RlZmluZSBEQkdNQ1VfQVBCMUZaUjFfREJHX0kyQzNfU1RPUF9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBEQkdNQ1VfQVBCMUZaUjFfREJHX0kyQzNfU1RPUF9Qb3MpICAvKiE8IDB4MDA4MDAwMDAgKi8KKyNkZWZpbmUgREJHTUNVX0FQQjFGWlIxX0RCR19JMkMzX1NUT1AgICAgICAgICAgICAgICAgICAgICBEQkdNQ1VfQVBCMUZaUjFfREJHX0kyQzNfU1RPUF9Nc2sgCisjZGVmaW5lIERCR01DVV9BUEIxRlpSMV9EQkdfTFBUSU0xX1NUT1BfUG9zICAgICAgICAgICAgICAgKDMxVSkgICAgICAgICAgICAgICAgCisjZGVmaW5lIERCR01DVV9BUEIxRlpSMV9EQkdfTFBUSU0xX1NUT1BfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IERCR01DVV9BUEIxRlpSMV9EQkdfTFBUSU0xX1NUT1BfUG9zKSAvKiE8IDB4ODAwMDAwMDAgKi8KKyNkZWZpbmUgREJHTUNVX0FQQjFGWlIxX0RCR19MUFRJTTFfU1RPUCAgICAgICAgICAgICAgICAgICBEQkdNQ1VfQVBCMUZaUjFfREJHX0xQVElNMV9TVE9QX01zayAKKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREJHTUNVX0MyQVBCMUZaUjEgcmVnaXN0ZXIgICoqKioqKioqKioqLworI2RlZmluZSBEQkdNQ1VfQzJBUEIxRlpSMV9EQkdfVElNMl9TVE9QX1BvcyAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgIAorI2RlZmluZSBEQkdNQ1VfQzJBUEIxRlpSMV9EQkdfVElNMl9TVE9QX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBEQkdNQ1VfQzJBUEIxRlpSMV9EQkdfVElNMl9TVE9QX1BvcykgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBEQkdNQ1VfQzJBUEIxRlpSMV9EQkdfVElNMl9TVE9QICAgICAgICAgICAgICAgICAgIERCR01DVV9DMkFQQjFGWlIxX0RCR19USU0yX1NUT1BfTXNrIAorI2RlZmluZSBEQkdNQ1VfQzJBUEIxRlpSMV9EQkdfUlRDX1NUT1BfUG9zICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgIAorI2RlZmluZSBEQkdNQ1VfQzJBUEIxRlpSMV9EQkdfUlRDX1NUT1BfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBEQkdNQ1VfQzJBUEIxRlpSMV9EQkdfUlRDX1NUT1BfUG9zKSAgIC8qITwgMHgwMDAwMDQwMCAqLworI2RlZmluZSBEQkdNQ1VfQzJBUEIxRlpSMV9EQkdfUlRDX1NUT1AgICAgICAgICAgICAgICAgICAgIERCR01DVV9DMkFQQjFGWlIxX0RCR19SVENfU1RPUF9Nc2sgCisjZGVmaW5lIERCR01DVV9DMkFQQjFGWlIxX0RCR19JV0RHX1NUT1BfUG9zICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgCisjZGVmaW5lIERCR01DVV9DMkFQQjFGWlIxX0RCR19JV0RHX1NUT1BfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IERCR01DVV9DMkFQQjFGWlIxX0RCR19JV0RHX1NUT1BfUG9zKSAgLyohPCAweDAwMDAxMDAwICovCisjZGVmaW5lIERCR01DVV9DMkFQQjFGWlIxX0RCR19JV0RHX1NUT1AgICAgICAgICAgICAgICAgICAgREJHTUNVX0MyQVBCMUZaUjFfREJHX0lXREdfU1RPUF9Nc2sgCisjZGVmaW5lIERCR01DVV9DMkFQQjFGWlIxX0RCR19JMkMxX1NUT1BfUG9zICAgICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgCisjZGVmaW5lIERCR01DVV9DMkFQQjFGWlIxX0RCR19JMkMxX1NUT1BfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IERCR01DVV9DMkFQQjFGWlIxX0RCR19JMkMxX1NUT1BfUG9zKSAgLyohPCAweDAwMjAwMDAwICovCisjZGVmaW5lIERCR01DVV9DMkFQQjFGWlIxX0RCR19JMkMxX1NUT1AgICAgICAgICAgICAgICAgICAgREJHTUNVX0MyQVBCMUZaUjFfREJHX0kyQzFfU1RPUF9Nc2sgCisjZGVmaW5lIERCR01DVV9DMkFQQjFGWlIxX0RCR19JMkMzX1NUT1BfUG9zICAgICAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgCisjZGVmaW5lIERCR01DVV9DMkFQQjFGWlIxX0RCR19JMkMzX1NUT1BfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IERCR01DVV9DMkFQQjFGWlIxX0RCR19JMkMzX1NUT1BfUG9zKSAgLyohPCAweDAwODAwMDAwICovCisjZGVmaW5lIERCR01DVV9DMkFQQjFGWlIxX0RCR19JMkMzX1NUT1AgICAgICAgICAgICAgICAgICAgREJHTUNVX0MyQVBCMUZaUjFfREJHX0kyQzNfU1RPUF9Nc2sgCisjZGVmaW5lIERCR01DVV9DMkFQQjFGWlIxX0RCR19MUFRJTTFfU1RPUF9Qb3MgICAgICAgICAgICAgKDMxVSkgICAgICAgICAgICAgICAgCisjZGVmaW5lIERCR01DVV9DMkFQQjFGWlIxX0RCR19MUFRJTTFfU1RPUF9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IERCR01DVV9DMkFQQjFGWlIxX0RCR19MUFRJTTFfU1RPUF9Qb3MpIC8qITwgMHg4MDAwMDAwMCAqLworI2RlZmluZSBEQkdNQ1VfQzJBUEIxRlpSMV9EQkdfTFBUSU0xX1NUT1AgICAgICAgICAgICAgICAgIERCR01DVV9DMkFQQjFGWlIxX0RCR19MUFRJTTFfU1RPUF9Nc2sgCisKKy8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERCR01DVV9BUEIxRlpSMiByZWdpc3RlciAgKioqKioqKioqKiovCisjZGVmaW5lIERCR01DVV9BUEIxRlpSMl9EQkdfTFBUSU0yX1NUT1BfUG9zICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAKKyNkZWZpbmUgREJHTUNVX0FQQjFGWlIyX0RCR19MUFRJTTJfU1RPUF9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgREJHTUNVX0FQQjFGWlIyX0RCR19MUFRJTTJfU1RPUF9Qb3MpIC8qITwgMHgwMDAwMDAyMCAqLworI2RlZmluZSBEQkdNQ1VfQVBCMUZaUjJfREJHX0xQVElNMl9TVE9QICAgICAgICAgICAgICAgICAgIERCR01DVV9BUEIxRlpSMl9EQkdfTFBUSU0yX1NUT1BfTXNrIAorCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQkdNQ1VfQzJBUEIxRlpSMiByZWdpc3RlciAgKioqKioqKioqKiovCisjZGVmaW5lIERCR01DVV9DMkFQQjFGWlIyX0RCR19MUFRJTTJfU1RPUF9Qb3MgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAKKyNkZWZpbmUgREJHTUNVX0MyQVBCMUZaUjJfREJHX0xQVElNMl9TVE9QX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgREJHTUNVX0MyQVBCMUZaUjJfREJHX0xQVElNMl9TVE9QX1BvcykgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIERCR01DVV9DMkFQQjFGWlIyX0RCR19MUFRJTTJfU1RPUCAgICAgICAgICAgICAgICAgREJHTUNVX0MyQVBCMUZaUjJfREJHX0xQVElNMl9TVE9QX01zayAKKworLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREJHTUNVX0FQQjJGWlIgcmVnaXN0ZXIgICoqKioqKioqKioqKi8KKyNkZWZpbmUgREJHTUNVX0FQQjJGWlJfREJHX1RJTTFfU1RPUF9Qb3MgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAKKyNkZWZpbmUgREJHTUNVX0FQQjJGWlJfREJHX1RJTTFfU1RPUF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgREJHTUNVX0FQQjJGWlJfREJHX1RJTTFfU1RPUF9Qb3MpIC8qITwgMHgwMDAwMDA4MDAgKi8KKyNkZWZpbmUgREJHTUNVX0FQQjJGWlJfREJHX1RJTTFfU1RPUCAgICAgICAgICAgICAgICAgICAgICBEQkdNQ1VfQVBCMkZaUl9EQkdfVElNMV9TVE9QX01zayAKKyNkZWZpbmUgREJHTUNVX0FQQjJGWlJfREJHX1RJTTE2X1NUT1BfUG9zICAgICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAKKyNkZWZpbmUgREJHTUNVX0FQQjJGWlJfREJHX1RJTTE2X1NUT1BfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgREJHTUNVX0FQQjJGWlJfREJHX1RJTTE2X1NUT1BfUG9zKSAvKiE8IDB4MDAwMjAwMDAgKi8KKyNkZWZpbmUgREJHTUNVX0FQQjJGWlJfREJHX1RJTTE2X1NUT1AgICAgICAgICAgICAgICAgICAgICBEQkdNQ1VfQVBCMkZaUl9EQkdfVElNMTZfU1RPUF9Nc2sgCisjZGVmaW5lIERCR01DVV9BUEIyRlpSX0RCR19USU0xN19TVE9QX1BvcyAgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgCisjZGVmaW5lIERCR01DVV9BUEIyRlpSX0RCR19USU0xN19TVE9QX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERCR01DVV9BUEIyRlpSX0RCR19USU0xN19TVE9QX1BvcykgLyohPCAweDAwMDQwMDAwICovCisjZGVmaW5lIERCR01DVV9BUEIyRlpSX0RCR19USU0xN19TVE9QICAgICAgICAgICAgICAgICAgICAgREJHTUNVX0FQQjJGWlJfREJHX1RJTTE3X1NUT1BfTXNrIAorCisvKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQkdNQ1VfQzJBUEIyRlpSIHJlZ2lzdGVyICAqKioqKioqKioqKiovCisjZGVmaW5lIERCR01DVV9DMkFQQjJGWlJfREJHX1RJTTFfU1RPUF9Qb3MgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgCisjZGVmaW5lIERCR01DVV9DMkFQQjJGWlJfREJHX1RJTTFfU1RPUF9Nc2sgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERCR01DVV9DMkFQQjJGWlJfREJHX1RJTTFfU1RPUF9Qb3MpIC8qITwgMHgwMDAwMDA4MDAgKi8KKyNkZWZpbmUgREJHTUNVX0MyQVBCMkZaUl9EQkdfVElNMV9TVE9QICAgICAgICAgICAgICAgICAgICBEQkdNQ1VfQzJBUEIyRlpSX0RCR19USU0xX1NUT1BfTXNrIAorI2RlZmluZSBEQkdNQ1VfQzJBUEIyRlpSX0RCR19USU0xNl9TVE9QX1BvcyAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgIAorI2RlZmluZSBEQkdNQ1VfQzJBUEIyRlpSX0RCR19USU0xNl9TVE9QX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBEQkdNQ1VfQzJBUEIyRlpSX0RCR19USU0xNl9TVE9QX1BvcykgLyohPCAweDAwMDIwMDAwICovCisjZGVmaW5lIERCR01DVV9DMkFQQjJGWlJfREJHX1RJTTE2X1NUT1AgICAgICAgICAgICAgICAgICAgREJHTUNVX0MyQVBCMkZaUl9EQkdfVElNMTZfU1RPUF9Nc2sgCisjZGVmaW5lIERCR01DVV9DMkFQQjJGWlJfREJHX1RJTTE3X1NUT1BfUG9zICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgCisjZGVmaW5lIERCR01DVV9DMkFQQjJGWlJfREJHX1RJTTE3X1NUT1BfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IERCR01DVV9DMkFQQjJGWlJfREJHX1RJTTE3X1NUT1BfUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8KKyNkZWZpbmUgREJHTUNVX0MyQVBCMkZaUl9EQkdfVElNMTdfU1RPUCAgICAgICAgICAgICAgICAgICBEQkdNQ1VfQzJBUEIyRlpSX0RCR19USU0xN19TVE9QX01zayAKKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisvKiAgICAgICAgICAgICAgICAgICAgICAgICBVU0IgRGV2aWNlIEdlbmVyYWwgcmVnaXN0ZXJzICAgICAgICAgICAgICAgICAgICAgICAqLworLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFVTQl9CQVNFICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4NDAwMDVDMDBVTCkgICAgICAgICAgICAgICAgICAgLyohPCBVU0JfSVAgUGVyaXBoZXJhbCBSZWdpc3RlcnMgYmFzZSBhZGRyZXNzICovCisjZGVmaW5lIFVTQl9QTUFBRERSX1BvcyAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQl9QTUFBRERSX01zayAgICAgICAgICAgKDB4MjAwMDNVTCA8PCBVU0JfUE1BQUREUl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDQwMDA2MDAwICovCisjZGVmaW5lIFVTQl9QTUFBRERSICAgICAgICAgICAgICAgVVNCX1BNQUFERFJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBVU0JfSVAgUGFja2V0IE1lbW9yeSBBcmVhIGJhc2UgYWRkcmVzcyAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIFVTQl9DTlRSICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoVVNCX0JBU0UgKyAweDQwKSAgICAgICAgICAgLyohPCBDb250cm9sIHJlZ2lzdGVyICovCisjZGVmaW5lIFVTQl9JU1RSICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoVVNCX0JBU0UgKyAweDQ0KSAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgc3RhdHVzIHJlZ2lzdGVyICovCisjZGVmaW5lIFVTQl9GTlIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoVVNCX0JBU0UgKyAweDQ4KSAgICAgICAgICAgLyohPCBGcmFtZSBudW1iZXIgcmVnaXN0ZXIgKi8KKyNkZWZpbmUgVVNCX0RBRERSICAgICAgICAgICAgICAgICAgICAgICAgICAgIChVU0JfQkFTRSArIDB4NEMpICAgICAgICAgICAvKiE8IERldmljZSBhZGRyZXNzIHJlZ2lzdGVyICovCisjZGVmaW5lIFVTQl9CVEFCTEUgICAgICAgICAgICAgICAgICAgICAgICAgICAoVVNCX0JBU0UgKyAweDUwKSAgICAgICAgICAgLyohPCBCdWZmZXIgVGFibGUgYWRkcmVzcyByZWdpc3RlciAqLworI2RlZmluZSBVU0JfTFBNQ1NSICAgICAgICAgICAgICAgICAgICAgICAgICAgKFVTQl9CQVNFICsgMHg1NCkgICAgICAgICAgIC8qITwgTFBNIENvbnRyb2wgYW5kIFN0YXR1cyByZWdpc3RlciAqLworI2RlZmluZSBVU0JfQkNEUiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFVTQl9CQVNFICsgMHg1OCkgICAgICAgICAgIC8qITwgQmF0dGVyeSBDaGFyZ2luZyBkZXRlY3RvciByZWdpc3RlciovCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqICBJU1RSIGludGVycnVwdCBldmVudHMgICoqKioqKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFVTQl9JU1RSX0NUUiAgICAgICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCkweDgwMDBVKSAgICAgICAgICAgICAgLyohPCBDb3JyZWN0IFRSYW5zZmVyIChjbGVhci1vbmx5IGJpdCkgKi8KKyNkZWZpbmUgVVNCX0lTVFJfUE1BT1ZSICAgICAgICAgICAgICAgICAgICAgICAoKHVpbnQxNl90KTB4NDAwMFUpICAgICAgICAgICAgICAvKiE8IERNQSBPVmVSL3VuZGVycnVuIChjbGVhci1vbmx5IGJpdCkgKi8KKyNkZWZpbmUgVVNCX0lTVFJfRVJSICAgICAgICAgICAgICAgICAgICAgICAgICAoKHVpbnQxNl90KTB4MjAwMFUpICAgICAgICAgICAgICAvKiE8IEVSUm9yIChjbGVhci1vbmx5IGJpdCkgKi8KKyNkZWZpbmUgVVNCX0lTVFJfV0tVUCAgICAgICAgICAgICAgICAgICAgICAgICAoKHVpbnQxNl90KTB4MTAwMFUpICAgICAgICAgICAgICAvKiE8IFdhS2UgVVAgKGNsZWFyLW9ubHkgYml0KSAqLworI2RlZmluZSBVU0JfSVNUUl9TVVNQICAgICAgICAgICAgICAgICAgICAgICAgICgodWludDE2X3QpMHgwODAwVSkgICAgICAgICAgICAgIC8qITwgU1VTUGVuZCAoY2xlYXItb25seSBiaXQpICovCisjZGVmaW5lIFVTQl9JU1RSX1JFU0VUICAgICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCkweDA0MDBVKSAgICAgICAgICAgICAgLyohPCBSRVNFVCAoY2xlYXItb25seSBiaXQpICovCisjZGVmaW5lIFVTQl9JU1RSX1NPRiAgICAgICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCkweDAyMDBVKSAgICAgICAgICAgICAgLyohPCBTdGFydCBPZiBGcmFtZSAoY2xlYXItb25seSBiaXQpICovCisjZGVmaW5lIFVTQl9JU1RSX0VTT0YgICAgICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCkweDAxMDBVKSAgICAgICAgICAgICAgLyohPCBFeHBlY3RlZCBTdGFydCBPZiBGcmFtZSAoY2xlYXItb25seSBiaXQpICovCisjZGVmaW5lIFVTQl9JU1RSX0wxUkVRICAgICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCkweDAwODBVKSAgICAgICAgICAgICAgLyohPCBMUE0gTDEgc3RhdGUgcmVxdWVzdCAgKi8KKyNkZWZpbmUgVVNCX0lTVFJfRElSICAgICAgICAgICAgICAgICAgICAgICAgICAoKHVpbnQxNl90KTB4MDAxMFUpICAgICAgICAgICAgICAvKiE8IERJUmVjdGlvbiBvZiB0cmFuc2FjdGlvbiAocmVhZC1vbmx5IGJpdCkgICovCisjZGVmaW5lIFVTQl9JU1RSX0VQX0lEICAgICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCkweDAwMEZVKSAgICAgICAgICAgICAgLyohPCBFbmRQb2ludCBJRGVudGlmaWVyIChyZWFkLW9ubHkgYml0KSAgKi8KKworI2RlZmluZSBVU0JfQ0xSX0NUUiAgICAgICAgICAgICAgICAgICAgICAgICAgKH5VU0JfSVNUUl9DVFIpICAgICAgICAgICAgIC8qITwgY2xlYXIgQ29ycmVjdCBUUmFuc2ZlciBiaXQgKi8KKyNkZWZpbmUgVVNCX0NMUl9QTUFPVlIgICAgICAgICAgICAgICAgICAgICAgICh+VVNCX0lTVFJfUE1BT1ZSKSAgICAgICAgICAvKiE8IGNsZWFyIERNQSBPVmVSL3VuZGVycnVuIGJpdCovCisjZGVmaW5lIFVTQl9DTFJfRVJSICAgICAgICAgICAgICAgICAgICAgICAgICAoflVTQl9JU1RSX0VSUikgICAgICAgICAgICAgLyohPCBjbGVhciBFUlJvciBiaXQgKi8KKyNkZWZpbmUgVVNCX0NMUl9XS1VQICAgICAgICAgICAgICAgICAgICAgICAgICh+VVNCX0lTVFJfV0tVUCkgICAgICAgICAgICAvKiE8IGNsZWFyIFdhS2UgVVAgYml0ICovCisjZGVmaW5lIFVTQl9DTFJfU1VTUCAgICAgICAgICAgICAgICAgICAgICAgICAoflVTQl9JU1RSX1NVU1ApICAgICAgICAgICAgLyohPCBjbGVhciBTVVNQZW5kIGJpdCAqLworI2RlZmluZSBVU0JfQ0xSX1JFU0VUICAgICAgICAgICAgICAgICAgICAgICAgKH5VU0JfSVNUUl9SRVNFVCkgICAgICAgICAgIC8qITwgY2xlYXIgUkVTRVQgYml0ICovCisjZGVmaW5lIFVTQl9DTFJfU09GICAgICAgICAgICAgICAgICAgICAgICAgICAoflVTQl9JU1RSX1NPRikgICAgICAgICAgICAgLyohPCBjbGVhciBTdGFydCBPZiBGcmFtZSBiaXQgKi8KKyNkZWZpbmUgVVNCX0NMUl9FU09GICAgICAgICAgICAgICAgICAgICAgICAgICh+VVNCX0lTVFJfRVNPRikgICAgICAgICAgICAvKiE8IGNsZWFyIEV4cGVjdGVkIFN0YXJ0IE9mIEZyYW1lIGJpdCAqLworI2RlZmluZSBVU0JfQ0xSX0wxUkVRICAgICAgICAgICAgICAgICAgICAgICAgKH5VU0JfSVNUUl9MMVJFUSkgICAgICAgICAgIC8qITwgY2xlYXIgTFBNIEwxICBiaXQgKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqICBDTlRSIGNvbnRyb2wgcmVnaXN0ZXIgYml0cyBkZWZpbml0aW9ucyAgKioqKioqKioqKiovCisjZGVmaW5lIFVTQl9DTlRSX0NUUk0gICAgICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCkweDgwMDBVKSAgICAgICAgICAgICAgLyohPCBDb3JyZWN0IFRSYW5zZmVyIE1hc2sgKi8KKyNkZWZpbmUgVVNCX0NOVFJfUE1BT1ZSTSAgICAgICAgICAgICAgICAgICAgICAoKHVpbnQxNl90KTB4NDAwMFUpICAgICAgICAgICAgICAvKiE8IERNQSBPVmVSL3VuZGVycnVuIE1hc2sgKi8KKyNkZWZpbmUgVVNCX0NOVFJfRVJSTSAgICAgICAgICAgICAgICAgICAgICAgICAoKHVpbnQxNl90KTB4MjAwMFUpICAgICAgICAgICAgICAvKiE8IEVSUm9yIE1hc2sgKi8KKyNkZWZpbmUgVVNCX0NOVFJfV0tVUE0gICAgICAgICAgICAgICAgICAgICAgICAoKHVpbnQxNl90KTB4MTAwMFUpICAgICAgICAgICAgICAvKiE8IFdhS2UgVVAgTWFzayAqLworI2RlZmluZSBVU0JfQ05UUl9TVVNQTSAgICAgICAgICAgICAgICAgICAgICAgICgodWludDE2X3QpMHgwODAwVSkgICAgICAgICAgICAgIC8qITwgU1VTUGVuZCBNYXNrICovCisjZGVmaW5lIFVTQl9DTlRSX1JFU0VUTSAgICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCkweDA0MDBVKSAgICAgICAgICAgICAgLyohPCBSRVNFVCBNYXNrICAgKi8KKyNkZWZpbmUgVVNCX0NOVFJfU09GTSAgICAgICAgICAgICAgICAgICAgICAgICAoKHVpbnQxNl90KTB4MDIwMFUpICAgICAgICAgICAgICAvKiE8IFN0YXJ0IE9mIEZyYW1lIE1hc2sgKi8KKyNkZWZpbmUgVVNCX0NOVFJfRVNPRk0gICAgICAgICAgICAgICAgICAgICAgICAoKHVpbnQxNl90KTB4MDEwMFUpICAgICAgICAgICAgICAvKiE8IEV4cGVjdGVkIFN0YXJ0IE9mIEZyYW1lIE1hc2sgKi8KKyNkZWZpbmUgVVNCX0NOVFJfTDFSRVFNICAgICAgICAgICAgICAgICAgICAgICAoKHVpbnQxNl90KTB4MDA4MFUpICAgICAgICAgICAgICAvKiE8IExQTSBMMSBzdGF0ZSByZXF1ZXN0IGludGVycnVwdCBtYXNrICovCisjZGVmaW5lIFVTQl9DTlRSX0wxUkVTVU1FICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCkweDAwMjBVKSAgICAgICAgICAgICAgLyohPCBMUE0gTDEgUmVzdW1lIHJlcXVlc3QgKi8KKyNkZWZpbmUgVVNCX0NOVFJfUkVTVU1FICAgICAgICAgICAgICAgICAgICAgICAoKHVpbnQxNl90KTB4MDAxMFUpICAgICAgICAgICAgICAvKiE8IFJFU1VNRSByZXF1ZXN0ICovCisjZGVmaW5lIFVTQl9DTlRSX0ZTVVNQICAgICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCkweDAwMDhVKSAgICAgICAgICAgICAgLyohPCBGb3JjZSBTVVNQZW5kICovCisjZGVmaW5lIFVTQl9DTlRSX0xQTU9ERSAgICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCkweDAwMDRVKSAgICAgICAgICAgICAgLyohPCBMb3ctcG93ZXIgTU9ERSAqLworI2RlZmluZSBVU0JfQ05UUl9QRFdOICAgICAgICAgICAgICAgICAgICAgICAgICgodWludDE2X3QpMHgwMDAyVSkgICAgICAgICAgICAgIC8qITwgUG93ZXIgRG9XTiAqLworI2RlZmluZSBVU0JfQ05UUl9GUkVTICAgICAgICAgICAgICAgICAgICAgICAgICgodWludDE2X3QpMHgwMDAxVSkgICAgICAgICAgICAgIC8qITwgRm9yY2UgVVNCIFJFU2V0ICovCisvKioqKioqKioqKioqKioqKioqKioqKioqKiAgQkNEUiBjb250cm9sIHJlZ2lzdGVyIGJpdHMgZGVmaW5pdGlvbnMgICoqKioqKioqKioqLworI2RlZmluZSBVU0JfQkNEUl9EUFBVICAgICAgICAgICAgICAgICAgICAgICAgICgodWludDE2X3QpMHg4MDAwVSkgICAgICAgICAgICAgIC8qITwgRFAgUHVsbC11cCBFbmFibGUgKi8gIAorI2RlZmluZSBVU0JfQkNEUl9QUzJERVQgICAgICAgICAgICAgICAgICAgICAgICgodWludDE2X3QpMHgwMDgwVSkgICAgICAgICAgICAgIC8qITwgUFMyIHBvcnQgb3IgcHJvcHJpZXRhcnkgY2hhcmdlciBkZXRlY3RlZCAqLyAgCisjZGVmaW5lIFVTQl9CQ0RSX1NERVQgICAgICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCkweDAwNDBVKSAgICAgICAgICAgICAgLyohPCBTZWNvbmRhcnkgZGV0ZWN0aW9uIChTRCkgc3RhdHVzICovICAKKyNkZWZpbmUgVVNCX0JDRFJfUERFVCAgICAgICAgICAgICAgICAgICAgICAgICAoKHVpbnQxNl90KTB4MDAyMFUpICAgICAgICAgICAgICAvKiE8IFByaW1hcnkgZGV0ZWN0aW9uIChQRCkgc3RhdHVzICovIAorI2RlZmluZSBVU0JfQkNEUl9EQ0RFVCAgICAgICAgICAgICAgICAgICAgICAgICgodWludDE2X3QpMHgwMDEwVSkgICAgICAgICAgICAgIC8qITwgRGF0YSBjb250YWN0IGRldGVjdGlvbiAoRENEKSBzdGF0dXMgKi8gCisjZGVmaW5lIFVTQl9CQ0RSX1NERU4gICAgICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCkweDAwMDhVKSAgICAgICAgICAgICAgLyohPCBTZWNvbmRhcnkgZGV0ZWN0aW9uIChTRCkgbW9kZSBlbmFibGUgKi8gCisjZGVmaW5lIFVTQl9CQ0RSX1BERU4gICAgICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCkweDAwMDRVKSAgICAgICAgICAgICAgLyohPCBQcmltYXJ5IGRldGVjdGlvbiAoUEQpIG1vZGUgZW5hYmxlICovICAKKyNkZWZpbmUgVVNCX0JDRFJfRENERU4gICAgICAgICAgICAgICAgICAgICAgICAoKHVpbnQxNl90KTB4MDAwMlUpICAgICAgICAgICAgICAvKiE8IERhdGEgY29udGFjdCBkZXRlY3Rpb24gKERDRCkgbW9kZSBlbmFibGUgKi8KKyNkZWZpbmUgVVNCX0JDRFJfQkNERU4gICAgICAgICAgICAgICAgICAgICAgICAoKHVpbnQxNl90KTB4MDAwMVUpICAgICAgICAgICAgICAvKiE8IEJhdHRlcnkgY2hhcmdpbmcgZGV0ZWN0b3IgKEJDRCkgZW5hYmxlICovCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqICBMUE0gcmVnaXN0ZXIgYml0cyBkZWZpbml0aW9ucyAgKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBVU0JfTFBNQ1NSX0JFU0wgICAgICAgICAgICAgICAgICAgICAgICgodWludDE2X3QpMHgwMEYwVSkgICAgICAgICAgICAgIC8qITwgQkVTTCB2YWx1ZSByZWNlaXZlZCB3aXRoIGxhc3QgQUNLZWQgTFBNIFRva2VuICAqLyAKKyNkZWZpbmUgVVNCX0xQTUNTUl9SRU1XQUtFICAgICAgICAgICAgICAgICAgICAoKHVpbnQxNl90KTB4MDAwOFUpICAgICAgICAgICAgICAvKiE8IGJSZW1vdGVXYWtlIHZhbHVlIHJlY2VpdmVkIHdpdGggbGFzdCBBQ0tlZCBMUE0gVG9rZW4gKi8gCisjZGVmaW5lIFVTQl9MUE1DU1JfTFBNQUNLICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCkweDAwMDJVKSAgICAgICAgICAgICAgLyohPCBMUE0gVG9rZW4gYWNrbm93bGVkZ2UgZW5hYmxlKi8KKyNkZWZpbmUgVVNCX0xQTUNTUl9MTVBFTiAgICAgICAgICAgICAgICAgICAgICAoKHVpbnQxNl90KTB4MDAwMVUpICAgICAgICAgICAgICAvKiE8IExQTSBzdXBwb3J0IGVuYWJsZSAgKi8KKy8qKioqKioqKioqKioqKioqKioqKiAgRk5SIEZyYW1lIE51bWJlciBSZWdpc3RlciBiaXQgZGVmaW5pdGlvbnMgICAqKioqKioqKioqKiovCisjZGVmaW5lIFVTQl9GTlJfUlhEUCAgICAgICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCkweDgwMDBVKSAgICAgICAgICAgICAgLyohPCBzdGF0dXMgb2YgRCsgZGF0YSBsaW5lICovCisjZGVmaW5lIFVTQl9GTlJfUlhETSAgICAgICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCkweDQwMDBVKSAgICAgICAgICAgICAgLyohPCBzdGF0dXMgb2YgRC0gZGF0YSBsaW5lICovCisjZGVmaW5lIFVTQl9GTlJfTENLICAgICAgICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCkweDIwMDBVKSAgICAgICAgICAgICAgLyohPCBMb0NLZWQgKi8KKyNkZWZpbmUgVVNCX0ZOUl9MU09GICAgICAgICAgICAgICAgICAgICAgICAgICAoKHVpbnQxNl90KTB4MTgwMFUpICAgICAgICAgICAgICAvKiE8IExvc3QgU09GICovCisjZGVmaW5lIFVTQl9GTlJfRk4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCkweDA3RkZVKSAgICAgICAgICAgICAgLyohPCBGcmFtZSBOdW1iZXIgKi8KKy8qKioqKioqKioqKioqKioqKioqKiAgREFERFIgRGV2aWNlIEFERFJlc3MgYml0IGRlZmluaXRpb25zICAgICoqKioqKioqKioqKioqKiovCisjZGVmaW5lIFVTQl9EQUREUl9FRiAgICAgICAgICAgICAgICAgICAgICAgICAgKCh1aW50OF90KTB4ODBVKSAgICAgICAgICAgICAgICAgLyohPCBVU0IgZGV2aWNlIGFkZHJlc3MgRW5hYmxlIEZ1bmN0aW9uICovCisjZGVmaW5lIFVTQl9EQUREUl9BREQgICAgICAgICAgICAgICAgICAgICAgICAgKCh1aW50OF90KTB4N0ZVKSAgICAgICAgICAgICAgICAgLyohPCBVU0IgZGV2aWNlIGFkZHJlc3MgKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogIEVuZHBvaW50IHJlZ2lzdGVyICAgICoqKioqKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIFVTQl9FUDBSICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0JBU0UgICAgICAgICAgICAgICAgICAgLyohPCBlbmRwb2ludCAwIHJlZ2lzdGVyIGFkZHJlc3MgKi8KKyNkZWZpbmUgVVNCX0VQMVIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChVU0JfQkFTRSArIDB4MDQpICAgICAgICAgICAvKiE8IGVuZHBvaW50IDEgcmVnaXN0ZXIgYWRkcmVzcyAqLworI2RlZmluZSBVU0JfRVAyUiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFVTQl9CQVNFICsgMHgwOCkgICAgICAgICAgIC8qITwgZW5kcG9pbnQgMiByZWdpc3RlciBhZGRyZXNzICovCisjZGVmaW5lIFVTQl9FUDNSICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoVVNCX0JBU0UgKyAweDBDKSAgICAgICAgICAgLyohPCBlbmRwb2ludCAzIHJlZ2lzdGVyIGFkZHJlc3MgKi8KKyNkZWZpbmUgVVNCX0VQNFIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChVU0JfQkFTRSArIDB4MTApICAgICAgICAgICAvKiE8IGVuZHBvaW50IDQgcmVnaXN0ZXIgYWRkcmVzcyAqLworI2RlZmluZSBVU0JfRVA1UiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFVTQl9CQVNFICsgMHgxNCkgICAgICAgICAgIC8qITwgZW5kcG9pbnQgNSByZWdpc3RlciBhZGRyZXNzICovCisjZGVmaW5lIFVTQl9FUDZSICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoVVNCX0JBU0UgKyAweDE4KSAgICAgICAgICAgLyohPCBlbmRwb2ludCA2IHJlZ2lzdGVyIGFkZHJlc3MgKi8KKyNkZWZpbmUgVVNCX0VQN1IgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChVU0JfQkFTRSArIDB4MUMpICAgICAgICAgICAvKiE8IGVuZHBvaW50IDcgcmVnaXN0ZXIgYWRkcmVzcyAqLworLyogYml0IHBvc2l0aW9ucyAqLyAKKyNkZWZpbmUgVVNCX0VQX0NUUl9SWCAgICAgICAgICAgICAgICAgICAgICAgICAoKHVpbnQxNl90KTB4ODAwMFUpICAgICAgICAgICAgICAvKiE8ICBFbmRQb2ludCBDb3JyZWN0IFRSYW5zZmVyIFJYICovCisjZGVmaW5lIFVTQl9FUF9EVE9HX1JYICAgICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCkweDQwMDBVKSAgICAgICAgICAgICAgLyohPCAgRW5kUG9pbnQgRGF0YSBUT0dHTEUgUlggKi8KKyNkZWZpbmUgVVNCX0VQUlhfU1RBVCAgICAgICAgICAgICAgICAgICAgICAgICAoKHVpbnQxNl90KTB4MzAwMFUpICAgICAgICAgICAgICAvKiE8ICBFbmRQb2ludCBSWCBTVEFUdXMgYml0IGZpZWxkICovCisjZGVmaW5lIFVTQl9FUF9TRVRVUCAgICAgICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCkweDA4MDBVKSAgICAgICAgICAgICAgLyohPCAgRW5kUG9pbnQgU0VUVVAgKi8KKyNkZWZpbmUgVVNCX0VQX1RfRklFTEQgICAgICAgICAgICAgICAgICAgICAgICAoKHVpbnQxNl90KTB4MDYwMFUpICAgICAgICAgICAgICAvKiE8ICBFbmRQb2ludCBUWVBFICovCisjZGVmaW5lIFVTQl9FUF9LSU5EICAgICAgICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCkweDAxMDBVKSAgICAgICAgICAgICAgLyohPCAgRW5kUG9pbnQgS0lORCAqLworI2RlZmluZSBVU0JfRVBfQ1RSX1RYICAgICAgICAgICAgICAgICAgICAgICAgICgodWludDE2X3QpMHgwMDgwVSkgICAgICAgICAgICAgIC8qITwgIEVuZFBvaW50IENvcnJlY3QgVFJhbnNmZXIgVFggKi8KKyNkZWZpbmUgVVNCX0VQX0RUT0dfVFggICAgICAgICAgICAgICAgICAgICAgICAoKHVpbnQxNl90KTB4MDA0MFUpICAgICAgICAgICAgICAvKiE8ICBFbmRQb2ludCBEYXRhIFRPR0dMRSBUWCAqLworI2RlZmluZSBVU0JfRVBUWF9TVEFUICAgICAgICAgICAgICAgICAgICAgICAgICgodWludDE2X3QpMHgwMDMwVSkgICAgICAgICAgICAgIC8qITwgIEVuZFBvaW50IFRYIFNUQVR1cyBiaXQgZmllbGQgKi8KKyNkZWZpbmUgVVNCX0VQQUREUl9GSUVMRCAgICAgICAgICAgICAgICAgICAgICAoKHVpbnQxNl90KTB4MDAwRlUpICAgICAgICAgICAgICAvKiE8ICBFbmRQb2ludCBBRERSZXNzIEZJRUxEICovCisKKy8qIEVuZFBvaW50IFJFR2lzdGVyIE1BU0sgKG5vIHRvZ2dsZSBmaWVsZHMpICovCisjZGVmaW5lIFVTQl9FUFJFR19NQVNLICAgICAoVVNCX0VQX0NUUl9SWHxVU0JfRVBfU0VUVVB8VVNCX0VQX1RfRklFTER8VVNCX0VQX0tJTkR8VVNCX0VQX0NUUl9UWHxVU0JfRVBBRERSX0ZJRUxEKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRVBfVFlQRVsxOjBdIEVuZFBvaW50IFRZUEUgKi8KKyNkZWZpbmUgVVNCX0VQX1RZUEVfTUFTSyAgICAgICAgICAgICAgICAgICAgICAoKHVpbnQxNl90KTB4MDYwMFUpICAgICAgICAgICAgICAvKiE8IEVuZFBvaW50IFRZUEUgTWFzayAqLworI2RlZmluZSBVU0JfRVBfQlVMSyAgICAgICAgICAgICAgICAgICAgICAgICAgICgodWludDE2X3QpMHgwMDAwVSkgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgQlVMSyAqLworI2RlZmluZSBVU0JfRVBfQ09OVFJPTCAgICAgICAgICAgICAgICAgICAgICAgICgodWludDE2X3QpMHgwMjAwVSkgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgQ09OVFJPTCAqLworI2RlZmluZSBVU0JfRVBfSVNPQ0hST05PVVMgICAgICAgICAgICAgICAgICAgICgodWludDE2X3QpMHgwNDAwVSkgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgSVNPQ0hST05PVVMgKi8KKyNkZWZpbmUgVVNCX0VQX0lOVEVSUlVQVCAgICAgICAgICAgICAgICAgICAgICAoKHVpbnQxNl90KTB4MDYwMFUpICAgICAgICAgICAgICAvKiE8IEVuZFBvaW50IElOVEVSUlVQVCAqLworI2RlZmluZSBVU0JfRVBfVF9NQVNLICAgICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCkgflVTQl9FUF9UX0ZJRUxEICYgVVNCX0VQUkVHX01BU0spCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBVU0JfRVBLSU5EX01BU0sgICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCl+VVNCX0VQX0tJTkQgJiBVU0JfRVBSRUdfTUFTSykgLyohPCBFUF9LSU5EIEVuZFBvaW50IEtJTkQgKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNUQVRfVFhbMTowXSBTVEFUdXMgZm9yIFRYIHRyYW5zZmVyICovCisjZGVmaW5lIFVTQl9FUF9UWF9ESVMgICAgICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCkweDAwMDBVKSAgICAgICAgICAgICAgLyohPCBFbmRQb2ludCBUWCBESVNhYmxlZCAqLworI2RlZmluZSBVU0JfRVBfVFhfU1RBTEwgICAgICAgICAgICAgICAgICAgICAgICgodWludDE2X3QpMHgwMDEwVSkgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgVFggU1RBTExlZCAqLworI2RlZmluZSBVU0JfRVBfVFhfTkFLICAgICAgICAgICAgICAgICAgICAgICAgICgodWludDE2X3QpMHgwMDIwVSkgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgVFggTkFLZWQgKi8KKyNkZWZpbmUgVVNCX0VQX1RYX1ZBTElEICAgICAgICAgICAgICAgICAgICAgICAoKHVpbnQxNl90KTB4MDAzMFUpICAgICAgICAgICAgICAvKiE8IEVuZFBvaW50IFRYIFZBTElEICovCisjZGVmaW5lIFVTQl9FUFRYX0RUT0cxICAgICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCkweDAwMTBVKSAgICAgICAgICAgICAgLyohPCBFbmRQb2ludCBUWCBEYXRhIFRPR2dsZSBiaXQxICovCisjZGVmaW5lIFVTQl9FUFRYX0RUT0cyICAgICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCkweDAwMjBVKSAgICAgICAgICAgICAgLyohPCBFbmRQb2ludCBUWCBEYXRhIFRPR2dsZSBiaXQyICovCisjZGVmaW5lIFVTQl9FUFRYX0RUT0dNQVNLICAoVVNCX0VQVFhfU1RBVHxVU0JfRVBSRUdfTUFTSykKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNUQVRfUlhbMTowXSBTVEFUdXMgZm9yIFJYIHRyYW5zZmVyICovCisjZGVmaW5lIFVTQl9FUF9SWF9ESVMgICAgICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCkweDAwMDBVKSAgICAgICAgICAgICAgLyohPCBFbmRQb2ludCBSWCBESVNhYmxlZCAqLworI2RlZmluZSBVU0JfRVBfUlhfU1RBTEwgICAgICAgICAgICAgICAgICAgICAgICgodWludDE2X3QpMHgxMDAwVSkgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgUlggU1RBTExlZCAqLworI2RlZmluZSBVU0JfRVBfUlhfTkFLICAgICAgICAgICAgICAgICAgICAgICAgICgodWludDE2X3QpMHgyMDAwVSkgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgUlggTkFLZWQgKi8KKyNkZWZpbmUgVVNCX0VQX1JYX1ZBTElEICAgICAgICAgICAgICAgICAgICAgICAoKHVpbnQxNl90KTB4MzAwMFUpICAgICAgICAgICAgICAvKiE8IEVuZFBvaW50IFJYIFZBTElEICovCisjZGVmaW5lIFVTQl9FUFJYX0RUT0cxICAgICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCkweDEwMDBVKSAgICAgICAgICAgICAgLyohPCBFbmRQb2ludCBSWCBEYXRhIFRPR2dsZSBiaXQxICovCisjZGVmaW5lIFVTQl9FUFJYX0RUT0cyICAgICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCkweDIwMDBVKSAgICAgICAgICAgICAgLyohPCBFbmRQb2ludCBSWCBEYXRhIFRPR2dsZSBiaXQxICovCisjZGVmaW5lIFVTQl9FUFJYX0RUT0dNQVNLICAoVVNCX0VQUlhfU1RBVHxVU0JfRVBSRUdfTUFTSykKKworLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9CVEFCTEUgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgVVNCX0JUQUJMRV9CVEFCTEUgICAgICAgICAgICAgICAgICAgICgodWludDE2X3QpMHhGRkY4VSkKKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisvKiAgICAgICAgICAgICAgICAgICAgICAgICAgQ1JTIENsb2NrIFJlY292ZXJ5IFN5c3RlbSAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBDUlNfQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgQ1JTX0NSX1NZTkNPS0lFX1BvcyAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQ1JTX0NSX1NZTkNPS0lFX01zayAgICAgICAoMHgxVUwgPDwgQ1JTX0NSX1NZTkNPS0lFX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8KKyNkZWZpbmUgQ1JTX0NSX1NZTkNPS0lFICAgICAgICAgICBDUlNfQ1JfU1lOQ09LSUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNZTkMgZXZlbnQgT0sgaW50ZXJydXB0IGVuYWJsZSAqLworI2RlZmluZSBDUlNfQ1JfU1lOQ1dBUk5JRV9Qb3MgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBDUlNfQ1JfU1lOQ1dBUk5JRV9Nc2sgICAgICgweDFVTCA8PCBDUlNfQ1JfU1lOQ1dBUk5JRV9Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLworI2RlZmluZSBDUlNfQ1JfU1lOQ1dBUk5JRSAgICAgICAgIENSU19DUl9TWU5DV0FSTklFX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1lOQyB3YXJuaW5nIGludGVycnVwdCBlbmFibGUgKi8KKyNkZWZpbmUgQ1JTX0NSX0VSUklFX1BvcyAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQ1JTX0NSX0VSUklFX01zayAgICAgICAgICAoMHgxVUwgPDwgQ1JTX0NSX0VSUklFX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8KKyNkZWZpbmUgQ1JTX0NSX0VSUklFICAgICAgICAgICAgICBDUlNfQ1JfRVJSSUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNZTkMgZXJyb3Igb3IgdHJpbW1pbmcgZXJyb3IgaW50ZXJydXB0IGVuYWJsZSAqLworI2RlZmluZSBDUlNfQ1JfRVNZTkNJRV9Qb3MgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBDUlNfQ1JfRVNZTkNJRV9Nc2sgICAgICAgICgweDFVTCA8PCBDUlNfQ1JfRVNZTkNJRV9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBDUlNfQ1JfRVNZTkNJRSAgICAgICAgICAgIENSU19DUl9FU1lOQ0lFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRXhwZWN0ZWQgU1lOQyBpbnRlcnJ1cHQgZW5hYmxlICovCisjZGVmaW5lIENSU19DUl9DRU5fUG9zICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIENSU19DUl9DRU5fTXNrICAgICAgICAgICAgKDB4MVVMIDw8IENSU19DUl9DRU5fUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovCisjZGVmaW5lIENSU19DUl9DRU4gICAgICAgICAgICAgICAgQ1JTX0NSX0NFTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBGcmVxdWVuY3kgZXJyb3IgY291bnRlciBlbmFibGUgKi8KKyNkZWZpbmUgQ1JTX0NSX0FVVE9UUklNRU5fUG9zICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQ1JTX0NSX0FVVE9UUklNRU5fTXNrICAgICAoMHgxVUwgPDwgQ1JTX0NSX0FVVE9UUklNRU5fUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8KKyNkZWZpbmUgQ1JTX0NSX0FVVE9UUklNRU4gICAgICAgICBDUlNfQ1JfQVVUT1RSSU1FTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEF1dG9tYXRpYyB0cmltbWluZyBlbmFibGUgKi8KKyNkZWZpbmUgQ1JTX0NSX1NXU1lOQ19Qb3MgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQ1JTX0NSX1NXU1lOQ19Nc2sgICAgICAgICAoMHgxVUwgPDwgQ1JTX0NSX1NXU1lOQ19Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8KKyNkZWZpbmUgQ1JTX0NSX1NXU1lOQyAgICAgICAgICAgICBDUlNfQ1JfU1dTWU5DX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdlbmVyYXRlIHNvZnR3YXJlIFNZTkMgZXZlbnQgKi8KKyNkZWZpbmUgQ1JTX0NSX1RSSU1fUG9zICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQ1JTX0NSX1RSSU1fTXNrICAgICAgICAgICAoMHgzRlVMIDw8IENSU19DUl9UUklNX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDNGMDAgKi8KKyNkZWZpbmUgQ1JTX0NSX1RSSU0gICAgICAgICAgICAgICBDUlNfQ1JfVFJJTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhTSTQ4IG9zY2lsbGF0b3Igc21vb3RoIHRyaW1taW5nICovCisKKy8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQ1JTX0NGR1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgQ1JTX0NGR1JfUkVMT0FEX1BvcyAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQ1JTX0NGR1JfUkVMT0FEX01zayAgICAgICAoMHhGRkZGVUwgPDwgQ1JTX0NGR1JfUkVMT0FEX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8KKyNkZWZpbmUgQ1JTX0NGR1JfUkVMT0FEICAgICAgICAgICBDUlNfQ0ZHUl9SRUxPQURfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvdW50ZXIgcmVsb2FkIHZhbHVlICovCisjZGVmaW5lIENSU19DRkdSX0ZFTElNX1BvcyAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIENSU19DRkdSX0ZFTElNX01zayAgICAgICAgKDB4RkZVTCA8PCBDUlNfQ0ZHUl9GRUxJTV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwRkYwMDAwICovCisjZGVmaW5lIENSU19DRkdSX0ZFTElNICAgICAgICAgICAgQ1JTX0NGR1JfRkVMSU1fTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBGcmVxdWVuY3kgZXJyb3IgbGltaXQgKi8KKworI2RlZmluZSBDUlNfQ0ZHUl9TWU5DRElWX1BvcyAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBDUlNfQ0ZHUl9TWU5DRElWX01zayAgICAgICgweDdVTCA8PCBDUlNfQ0ZHUl9TWU5DRElWX1BvcykgICAgICAgICAgICAgIC8qITwgMHgwNzAwMDAwMCAqLworI2RlZmluZSBDUlNfQ0ZHUl9TWU5DRElWICAgICAgICAgIENSU19DRkdSX1NZTkNESVZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1lOQyBkaXZpZGVyICovCisjZGVmaW5lIENSU19DRkdSX1NZTkNESVZfMCAgICAgICAgKDB4MVUgPDwgQ1JTX0NGR1JfU1lOQ0RJVl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAxMDAwMDAwICovCisjZGVmaW5lIENSU19DRkdSX1NZTkNESVZfMSAgICAgICAgKDB4MlUgPDwgQ1JTX0NGR1JfU1lOQ0RJVl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAyMDAwMDAwICovCisjZGVmaW5lIENSU19DRkdSX1NZTkNESVZfMiAgICAgICAgKDB4NFUgPDwgQ1JTX0NGR1JfU1lOQ0RJVl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDA0MDAwMDAwICovCisKKyNkZWZpbmUgQ1JTX0NGR1JfU1lOQ1NSQ19Qb3MgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQ1JTX0NGR1JfU1lOQ1NSQ19Nc2sgICAgICAoMHgzVUwgPDwgQ1JTX0NGR1JfU1lOQ1NSQ19Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MzAwMDAwMDAgKi8KKyNkZWZpbmUgQ1JTX0NGR1JfU1lOQ1NSQyAgICAgICAgICBDUlNfQ0ZHUl9TWU5DU1JDX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNZTkMgc2lnbmFsIHNvdXJjZSBzZWxlY3Rpb24gKi8KKyNkZWZpbmUgQ1JTX0NGR1JfU1lOQ1NSQ18wICAgICAgICAoMHgxVSA8PCBDUlNfQ0ZHUl9TWU5DU1JDX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8KKyNkZWZpbmUgQ1JTX0NGR1JfU1lOQ1NSQ18xICAgICAgICAoMHgyVSA8PCBDUlNfQ0ZHUl9TWU5DU1JDX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8KKworI2RlZmluZSBDUlNfQ0ZHUl9TWU5DUE9MX1BvcyAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBDUlNfQ0ZHUl9TWU5DUE9MX01zayAgICAgICgweDFVTCA8PCBDUlNfQ0ZHUl9TWU5DUE9MX1BvcykgICAgICAgICAgICAgIC8qITwgMHg4MDAwMDAwMCAqLworI2RlZmluZSBDUlNfQ0ZHUl9TWU5DUE9MICAgICAgICAgIENSU19DRkdSX1NZTkNQT0xfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1lOQyBwb2xhcml0eSBzZWxlY3Rpb24gKi8KKworLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBDUlNfSVNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIENSU19JU1JfU1lOQ09LRl9Qb3MgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIENSU19JU1JfU1lOQ09LRl9Nc2sgICAgICAgKDB4MVVMIDw8IENSU19JU1JfU1lOQ09LRl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovCisjZGVmaW5lIENSU19JU1JfU1lOQ09LRiAgICAgICAgICAgQ1JTX0lTUl9TWU5DT0tGX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTWU5DIGV2ZW50IE9LIGZsYWcgKi8KKyNkZWZpbmUgQ1JTX0lTUl9TWU5DV0FSTkZfUG9zICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQ1JTX0lTUl9TWU5DV0FSTkZfTXNrICAgICAoMHgxVUwgPDwgQ1JTX0lTUl9TWU5DV0FSTkZfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8KKyNkZWZpbmUgQ1JTX0lTUl9TWU5DV0FSTkYgICAgICAgICBDUlNfSVNSX1NZTkNXQVJORl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNZTkMgd2FybmluZyBmbGFnICovCisjZGVmaW5lIENSU19JU1JfRVJSRl9Qb3MgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIENSU19JU1JfRVJSRl9Nc2sgICAgICAgICAgKDB4MVVMIDw8IENSU19JU1JfRVJSRl9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovCisjZGVmaW5lIENSU19JU1JfRVJSRiAgICAgICAgICAgICAgQ1JTX0lTUl9FUlJGX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFcnJvciBmbGFnICovCisjZGVmaW5lIENSU19JU1JfRVNZTkNGX1BvcyAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIENSU19JU1JfRVNZTkNGX01zayAgICAgICAgKDB4MVVMIDw8IENSU19JU1JfRVNZTkNGX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovCisjZGVmaW5lIENSU19JU1JfRVNZTkNGICAgICAgICAgICAgQ1JTX0lTUl9FU1lOQ0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFeHBlY3RlZCBTWU5DIGZsYWcgKi8KKyNkZWZpbmUgQ1JTX0lTUl9TWU5DRVJSX1BvcyAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQ1JTX0lTUl9TWU5DRVJSX01zayAgICAgICAoMHgxVUwgPDwgQ1JTX0lTUl9TWU5DRVJSX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8KKyNkZWZpbmUgQ1JTX0lTUl9TWU5DRVJSICAgICAgICAgICBDUlNfSVNSX1NZTkNFUlJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNZTkMgZXJyb3IgKi8KKyNkZWZpbmUgQ1JTX0lTUl9TWU5DTUlTU19Qb3MgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQ1JTX0lTUl9TWU5DTUlTU19Nc2sgICAgICAoMHgxVUwgPDwgQ1JTX0lTUl9TWU5DTUlTU19Qb3MpICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8KKyNkZWZpbmUgQ1JTX0lTUl9TWU5DTUlTUyAgICAgICAgICBDUlNfSVNSX1NZTkNNSVNTX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNZTkMgbWlzc2VkICovCisjZGVmaW5lIENSU19JU1JfVFJJTU9WRl9Qb3MgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIENSU19JU1JfVFJJTU9WRl9Nc2sgICAgICAgKDB4MVVMIDw8IENSU19JU1JfVFJJTU9WRl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovCisjZGVmaW5lIENSU19JU1JfVFJJTU9WRiAgICAgICAgICAgQ1JTX0lTUl9UUklNT1ZGX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBUcmltbWluZyBvdmVyZmxvdyBvciB1bmRlcmZsb3cgKi8KKyNkZWZpbmUgQ1JTX0lTUl9GRURJUl9Qb3MgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQ1JTX0lTUl9GRURJUl9Nc2sgICAgICAgICAoMHgxVUwgPDwgQ1JTX0lTUl9GRURJUl9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8KKyNkZWZpbmUgQ1JTX0lTUl9GRURJUiAgICAgICAgICAgICBDUlNfSVNSX0ZFRElSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEZyZXF1ZW5jeSBlcnJvciBkaXJlY3Rpb24gKi8KKyNkZWZpbmUgQ1JTX0lTUl9GRUNBUF9Qb3MgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgQ1JTX0lTUl9GRUNBUF9Nc2sgICAgICAgICAoMHhGRkZGVUwgPDwgQ1JTX0lTUl9GRUNBUF9Qb3MpICAgICAgICAgICAgICAvKiE8IDB4RkZGRjAwMDAgKi8KKyNkZWZpbmUgQ1JTX0lTUl9GRUNBUCAgICAgICAgICAgICBDUlNfSVNSX0ZFQ0FQX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEZyZXF1ZW5jeSBlcnJvciBjYXB0dXJlICovCisKKy8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQ1JTX0lDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBDUlNfSUNSX1NZTkNPS0NfUG9zICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBDUlNfSUNSX1NZTkNPS0NfTXNrICAgICAgICgweDFVTCA8PCBDUlNfSUNSX1NZTkNPS0NfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLworI2RlZmluZSBDUlNfSUNSX1NZTkNPS0MgICAgICAgICAgIENSU19JQ1JfU1lOQ09LQ19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1lOQyBldmVudCBPSyBjbGVhciBmbGFnICovCisjZGVmaW5lIENSU19JQ1JfU1lOQ1dBUk5DX1BvcyAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIENSU19JQ1JfU1lOQ1dBUk5DX01zayAgICAgKDB4MVVMIDw8IENSU19JQ1JfU1lOQ1dBUk5DX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovCisjZGVmaW5lIENSU19JQ1JfU1lOQ1dBUk5DICAgICAgICAgQ1JTX0lDUl9TWU5DV0FSTkNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTWU5DIHdhcm5pbmcgY2xlYXIgZmxhZyAqLworI2RlZmluZSBDUlNfSUNSX0VSUkNfUG9zICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBDUlNfSUNSX0VSUkNfTXNrICAgICAgICAgICgweDFVTCA8PCBDUlNfSUNSX0VSUkNfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLworI2RlZmluZSBDUlNfSUNSX0VSUkMgICAgICAgICAgICAgIENSU19JQ1JfRVJSQ19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRXJyb3IgY2xlYXIgZmxhZyAqLworI2RlZmluZSBDUlNfSUNSX0VTWU5DQ19Qb3MgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBDUlNfSUNSX0VTWU5DQ19Nc2sgICAgICAgICgweDFVTCA8PCBDUlNfSUNSX0VTWU5DQ19Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLworI2RlZmluZSBDUlNfSUNSX0VTWU5DQyAgICAgICAgICAgIENSU19JQ1JfRVNZTkNDX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRXhwZWN0ZWQgU1lOQyBjbGVhciBmbGFnICovCisKKy8qKiBAYWRkdG9ncm91cCBFeHBvcnRlZF9tYWNyb3MKKyAgKiBAeworICAqLworCisKKy8qKioqKioqKioqKioqKioqKioqKioqKiBVQVJUIEluc3RhbmNlcyA6IEFzeW5jaHJvbm91cyBtb2RlICoqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIElTX1VBUlRfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoSU5TVEFOQ0UpID09IFVTQVJUMSkKKworLyoqKioqKioqKioqKioqKioqKioqKioqIFVBUlQgSW5zdGFuY2VzIDogRklGTyBtb2RlICoqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgSVNfVUFSVF9GSUZPX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVVNBUlQxKSB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gTFBVQVJUMSkpCisKKy8qKioqKioqKioqKioqKioqKioqKioqKiBVQVJUIEluc3RhbmNlcyA6IFNQSSBTbGF2ZSBtb2RlICoqKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIElTX1VBUlRfU1BJX1NMQVZFX0lOU1RBTkNFKElOU1RBTkNFKSAoKElOU1RBTkNFKSA9PSBVU0FSVDEpCisKKy8qKioqKioqKioqKioqKioqKioqKioqKiBVU0FSVCBJbnN0YW5jZXMgOiBTeW5jaHJvbm91cyBtb2RlICoqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIElTX1VTQVJUX0lOU1RBTkNFKElOU1RBTkNFKSAoKElOU1RBTkNFKSA9PSBVU0FSVDEpCisKKy8qKioqKioqKioqKioqKioqKioqKioqKiBVU0FSVCBJbnN0YW5jZXMgOiBBdXRvIEJhdWQgUmF0ZSBkZXRlY3Rpb24gKioqKioqKioqKiovCisKKyNkZWZpbmUgSVNfVVNBUlRfQVVUT0JBVURSQVRFX0RFVEVDVElPTl9JTlNUQU5DRShJTlNUQU5DRSkgKChJTlNUQU5DRSkgPT0gVVNBUlQxKQorCisvKioqKioqKioqKioqKioqKioqKioqKiogVUFSVCBJbnN0YW5jZXMgOiBIYWxmLUR1cGxleCBtb2RlICoqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBJU19VQVJUX0hBTEZEVVBMRVhfSU5TVEFOQ0UoSU5TVEFOQ0UpICAgKCgoSU5TVEFOQ0UpID09IFVTQVJUMSkgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IExQVUFSVDEpKQorCisvKioqKioqKioqKioqKioqKioqKioqKiogVUFSVCBJbnN0YW5jZXMgOiBMSU4gbW9kZSAqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBJU19VQVJUX0xJTl9JTlNUQU5DRShJTlNUQU5DRSkgICAgKChJTlNUQU5DRSkgPT0gVVNBUlQxKQorCisvKioqKioqKioqKioqKioqKioqKioqKiogVUFSVCBJbnN0YW5jZXMgOiBXYWtlLXVwIGZyb20gU3RvcCBtb2RlICoqKioqKioqKioqKioqLworI2RlZmluZSBJU19VQVJUX1dBS0VVUF9GUk9NU1RPUF9JTlNUQU5DRShJTlNUQU5DRSkgICAoKChJTlNUQU5DRSkgPT0gVVNBUlQxKSB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBMUFVBUlQxKSkKKworLyoqKioqKioqKioqKioqKioqKioqKioqIFVBUlQgSW5zdGFuY2VzIDogSGFyZHdhcmUgRmxvdyBjb250cm9sICoqKioqKioqKioqKioqKi8KKyNkZWZpbmUgSVNfVUFSVF9IV0ZMT1dfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBVU0FSVDEpIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBMUFVBUlQxKSkKKworLyoqKioqKioqKioqKioqKioqKioqKioqIFVBUlQgSW5zdGFuY2VzIDogU21hcmQgY2FyZCBtb2RlICoqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgSVNfU01BUlRDQVJEX0lOU1RBTkNFKElOU1RBTkNFKSAoKElOU1RBTkNFKSA9PSBVU0FSVDEpCisKKy8qKioqKioqKioqKioqKioqKioqKioqKiBVQVJUIEluc3RhbmNlcyA6IERyaXZlciBFbmFibGUgKioqKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIElTX1VBUlRfRFJJVkVSX0VOQUJMRV9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFVTQVJUMSl8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IExQVUFSVDEpKQorCisvKioqKioqKioqKioqKioqKioqKioqKiogVUFSVCBJbnN0YW5jZXMgOiBJUkRBIG1vZGUgKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBJU19JUkRBX0lOU1RBTkNFKElOU1RBTkNFKSAoKElOU1RBTkNFKSA9PSBVU0FSVDEpCisKKy8qKioqKioqKioqKioqKioqKioqKiBMUFVBUlQgSW5zdGFuY2UgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIElTX0xQVUFSVF9JTlNUQU5DRShJTlNUQU5DRSkgICAgKChJTlNUQU5DRSkgPT0gTFBVQVJUMSkKKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogQURDIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgSVNfQURDX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgKChJTlNUQU5DRSkgPT0gQURDMSkKKworI2RlZmluZSBJU19BRENfQ09NTU9OX0lOU1RBTkNFKElOU1RBTkNFKSAoKElOU1RBTkNFKSA9PSBBREMxX0NPTU1PTikKKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogQUVTIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgSVNfQUVTX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IEFFUzEpIHx8ICgoSU5TVEFOQ0UpID09IEFFUzIpKQorCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogQ09NUCBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBJU19DT01QX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IENPTVAxKSB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gQ09NUDIpKQorCisjZGVmaW5lIElTX0NPTVBfQ09NTU9OX0lOU1RBTkNFKElOU1RBTkNFKSAoKElOU1RBTkNFKSA9PSBDT01QMTJfQ09NTU9OKQorCisvKioqKioqKioqKioqKioqKioqKiogQ09NUCBJbnN0YW5jZXMgd2l0aCB3aW5kb3cgbW9kZSBjYXBhYmlsaXR5ICoqKioqKioqKioqKioqLworI2RlZmluZSBJU19DT01QX1dJTkRPV01PREVfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoSU5TVEFOQ0UpID09IENPTVAyKQorCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBDUkMgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBJU19DUkNfQUxMX0lOU1RBTkNFKElOU1RBTkNFKSAoKElOU1RBTkNFKSA9PSBDUkMpCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBETUEgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIElTX0RNQV9BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBETUExX0NoYW5uZWwxKSB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUExX0NoYW5uZWwyKSB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUExX0NoYW5uZWwzKSB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUExX0NoYW5uZWw0KSB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUExX0NoYW5uZWw1KSB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUExX0NoYW5uZWw2KSB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUExX0NoYW5uZWw3KSB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUEyX0NoYW5uZWwxKSB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUEyX0NoYW5uZWwyKSB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUEyX0NoYW5uZWwzKSB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUEyX0NoYW5uZWw0KSB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUEyX0NoYW5uZWw1KSB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUEyX0NoYW5uZWw2KSB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUEyX0NoYW5uZWw3KSkKKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIERNQU1VWCBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgSVNfRE1BTVVYX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgKChJTlNUQU5DRSkgPT0gRE1BTVVYMSkKKworI2RlZmluZSBJU19ETUFNVVhfUkVRVUVTVF9HRU5fQUxMX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gRE1BTVVYMV9SZXF1ZXN0R2VuZXJhdG9yMCkgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gRE1BTVVYMV9SZXF1ZXN0R2VuZXJhdG9yMSkgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gRE1BTVVYMV9SZXF1ZXN0R2VuZXJhdG9yMikgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gRE1BTVVYMV9SZXF1ZXN0R2VuZXJhdG9yMykpCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIEdQSU8gSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIElTX0dQSU9fQUxMX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gR1BJT0EpIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBHUElPQikgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IEdQSU9DKSB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gR1BJT0UpIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBHUElPSCkpCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIEdQSU8gQUYgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIElTX0dQSU9fQUZfSU5TVEFOQ0UoSU5TVEFOQ0UpICAgSVNfR1BJT19BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqIEdQSU8gTG9jayBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIElTX0dQSU9fTE9DS19JTlNUQU5DRShJTlNUQU5DRSkgSVNfR1BJT19BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBJMkMgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIElTX0kyQ19BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBJMkMxKSB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBJMkMzKSkKKworLyoqKioqKioqKioqKioqKioqKiBJMkMgSW5zdGFuY2VzIDogd2FrZXVwIGNhcGFiaWxpdHkgZnJvbSBzdG9wIG1vZGVzICoqKioqKioqKi8KKyNkZWZpbmUgSVNfSTJDX1dBS0VVUF9GUk9NU1RPUF9JTlNUQU5DRShJTlNUQU5DRSkgSVNfSTJDX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkKKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogU01CVVMgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgSVNfU01CVVNfQUxMX0lOU1RBTkNFKElOU1RBTkNFKSBJU19JMkNfQUxMX0lOU1RBTkNFKElOU1RBTkNFKQorCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogSTJTIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBJU19JMlNfQUxMX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gU1BJMSkgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gU1BJMikpCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIElQQ0MgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBJU19JUENDX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgICgoSU5TVEFOQ0UpID09IElQQ0MpCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBIU0VNIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBJU19IU0VNX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgKChJTlNUQU5DRSkgPT0gSFNFTSkKKworI2RlZmluZSBIU0VNX0NQVTFfQ09SRUlEICAgICAgICAoMHgwMDAwMDAwNFVMKS8qIFNlbWFwaG9yZSBDb3JlIElEICovCisjZGVmaW5lIEhTRU1fQ1BVMl9DT1JFSUQgICAgICAgICgweDAwMDAwMDA4VUwpLyogU2VtYXBob3JlIENvcmUgSUQgKi8KKworI2RlZmluZSBIU0VNX1NFTUlEX01JTiAgICAgKDBVKSAgICAgICAvKiBIU0VNIElEIE1pbiovCisjZGVmaW5lIEhTRU1fU0VNSURfTUFYICAgICAoMzFVKSAgICAgIC8qIEhTRU0gSUQgTWF4ICovCisKKyNkZWZpbmUgSFNFTV9QUk9DRVNTSURfTUlOICgwVSkgICAgICAgLyogSFNFTSBQcm9jZXNzIElEIE1pbiAqLworI2RlZmluZSBIU0VNX1BST0NFU1NJRF9NQVggKDI1NVUpICAgICAvKiBIU0VNIFByb2Nlc3MgSUQgTWF4ICovCisKKyNkZWZpbmUgSFNFTV9DTEVBUl9LRVlfTUlOICgwVSkgICAgICAgLyogSFNFTSBjbGVhciBLZXkgTWluIHZhbHVlICovCisjZGVmaW5lIEhTRU1fQ0xFQVJfS0VZX01BWCAoMHhGRkZGVSkgIC8qIEhTRU0gY2xlYXIgS2V5IE1heCB2YWx1ZSAqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogUENEIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBJU19QQ0RfQUxMX0lOU1RBTkNFKElOU1RBTkNFKSAoKElOU1RBTkNFKSA9PSBVU0IpCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBQS0EgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIElTX1BLQV9BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoSU5TVEFOQ0UpID09IFBLQSkKKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogUVVBRFNQSSBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgSVNfUVVBRFNQSV9BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICAoKElOU1RBTkNFKSA9PSBRVUFEU1BJKQorCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBSTkcgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBJU19STkdfQUxMX0lOU1RBTkNFKElOU1RBTkNFKSAgKChJTlNUQU5DRSkgPT0gUk5HKQorCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIFJUQyBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBJU19SVENfQUxMX0lOU1RBTkNFKElOU1RBTkNFKSAgKChJTlNUQU5DRSkgPT0gUlRDKQorCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogU1BJIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBJU19TUElfQUxMX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gU1BJMSkgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gU1BJMikpCisKKy8qKioqKioqKioqKioqKioqKiogTFBUSU0gSW5zdGFuY2VzIDogQWxsIHN1cHBvcnRlZCBpbnN0YW5jZXMgKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIElTX0xQVElNX0lOU1RBTkNFKElOU1RBTkNFKSAgICAgKCgoSU5TVEFOQ0UpID09IExQVElNMSkgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBMUFRJTTIpKQorCisvKioqKioqKioqKioqKioqKioqIExQVElNIEluc3RhbmNlcyA6IEVuY29kZXIgbW9kZSAqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBJU19MUFRJTV9FTkNPREVSX0lOVEVSRkFDRV9JTlNUQU5DRShJTlNUQU5DRSkgKChJTlNUQU5DRSkgPT0gTFBUSU0xKQorCisvKioqKioqKioqKioqKioqKioqIFRJTSBJbnN0YW5jZXMgOiBBbGwgc3VwcG9ydGVkIGluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBJU19USU1fSU5TVEFOQ0UoSU5TVEFOQ0UpICAgICAgICgoKElOU1RBTkNFKSA9PSBUSU0xKSAgIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMikgICB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTE2KSAgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNykpCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogSVdERyBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIElTX0lXREdfQUxMX0lOU1RBTkNFKElOU1RBTkNFKSAgKChJTlNUQU5DRSkgPT0gSVdERykKKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBXV0RHIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgSVNfV1dER19BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICAoKElOU1RBTkNFKSA9PSBXV0RHKQorCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBVU0IgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIElTX1VTQl9BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoSU5TVEFOQ0UpID09IFVTQikKKworLyoqKioqKioqKioqKioqKioqKiBUSU0gSW5zdGFuY2VzIDogc3VwcG9ydGluZyAzMiBiaXRzIGNvdW50ZXIgKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgSVNfVElNXzMyQl9DT1VOVEVSX0lOU1RBTkNFKElOU1RBTkNFKSAoKElOU1RBTkNFKSA9PSBUSU0yKQorCisvKioqKioqKioqKioqKioqKioqIFRJTSBJbnN0YW5jZXMgOiBzdXBwb3J0aW5nIHRoZSBicmVhayBmdW5jdGlvbiAqKioqKioqKioqKioqLworI2RlZmluZSBJU19USU1fQlJFQUtfSU5TVEFOQ0UoSU5TVEFOQ0UpICAgICgoKElOU1RBTkNFKSA9PSBUSU0xKSAgICB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTE2KSAgIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTcpKQorCisvKioqKioqKioqKioqKiogVElNIEluc3RhbmNlcyA6IHN1cHBvcnRpbmcgQnJlYWsgc291cmNlIHNlbGVjdGlvbiAqKioqKioqKioqKioqLworI2RlZmluZSBJU19USU1fQlJFQUtTT1VSQ0VfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0xKSAgIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTYpICB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTE3KSkKKworLyoqKioqKioqKioqKioqKioqKiBUSU0gSW5zdGFuY2VzIDogc3VwcG9ydGluZyAyIGJyZWFrIGlucHV0cyAqKioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgSVNfVElNX0JLSU4yX0lOU1RBTkNFKElOU1RBTkNFKSAgICAoKElOU1RBTkNFKSA9PSBUSU0xKQorCisvKioqKioqKioqKioqKiBUSU0gSW5zdGFuY2VzIDogYXQgbGVhc3QgMSBjYXB0dXJlL2NvbXBhcmUgY2hhbm5lbCAqKioqKioqKioqKioqLworI2RlZmluZSBJU19USU1fQ0MxX0lOU1RBTkNFKElOU1RBTkNFKSAgICgoKElOU1RBTkNFKSA9PSBUSU0xKSAgIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMikgICB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTE2KSAgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNykpCisKKy8qKioqKioqKioqKiogVElNIEluc3RhbmNlcyA6IGF0IGxlYXN0IDIgY2FwdHVyZS9jb21wYXJlIGNoYW5uZWxzICoqKioqKioqKioqKiovCisjZGVmaW5lIElTX1RJTV9DQzJfSU5TVEFOQ0UoSU5TVEFOQ0UpICAgKCgoSU5TVEFOQ0UpID09IFRJTTEpICAgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0yKSkKKworLyoqKioqKioqKioqKiBUSU0gSW5zdGFuY2VzIDogYXQgbGVhc3QgMyBjYXB0dXJlL2NvbXBhcmUgY2hhbm5lbHMgKioqKioqKioqKioqKi8KKyNkZWZpbmUgSVNfVElNX0NDM19JTlNUQU5DRShJTlNUQU5DRSkgICAoKChJTlNUQU5DRSkgPT0gVElNMSkgICB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTIpKQorCisvKioqKioqKioqKioqIFRJTSBJbnN0YW5jZXMgOiBhdCBsZWFzdCA0IGNhcHR1cmUvY29tcGFyZSBjaGFubmVscyAqKioqKioqKioqKioqLworI2RlZmluZSBJU19USU1fQ0M0X0lOU1RBTkNFKElOU1RBTkNFKSAgICgoKElOU1RBTkNFKSA9PSBUSU0xKSAgIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMikpCisKKy8qKioqKioqKioqKioqKioqKiogVElNIEluc3RhbmNlcyA6IGF0IGxlYXN0IDUgY2FwdHVyZS9jb21wYXJlIGNoYW5uZWxzICoqKioqKiovCisjZGVmaW5lIElTX1RJTV9DQzVfSU5TVEFOQ0UoSU5TVEFOQ0UpICAgICAgKChJTlNUQU5DRSkgPT0gVElNMSkKKworLyoqKioqKioqKioqKioqKioqKiBUSU0gSW5zdGFuY2VzIDogYXQgbGVhc3QgNiBjYXB0dXJlL2NvbXBhcmUgY2hhbm5lbHMgKioqKioqKi8KKyNkZWZpbmUgSVNfVElNX0NDNl9JTlNUQU5DRShJTlNUQU5DRSkgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xKQorCisvKioqKioqKioqKioqIFRJTSBJbnN0YW5jZXMgOiBETUEgcmVxdWVzdHMgZ2VuZXJhdGlvbiAoVElNeF9ESUVSLkNPTURFKSAqKioqKioqLworI2RlZmluZSBJU19USU1fQ0NETUFfSU5TVEFOQ0UoSU5TVEFOQ0UpICAgICgoSU5TVEFOQ0UpID09IFRJTTEpCisKKy8qKioqKioqKioqKioqKioqKiogVElNIEluc3RhbmNlcyA6IERNQSByZXF1ZXN0cyBnZW5lcmF0aW9uIChUSU14X0RJRVIuVURFKSAqKiovCisjZGVmaW5lIElTX1RJTV9ETUFfSU5TVEFOQ0UoSU5TVEFOQ0UpICAgICAgKCgoSU5TVEFOQ0UpID09IFRJTTEpICAgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0yKSAgIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTYpICB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTE3KSkKKworLyoqKioqKioqKioqKiBUSU0gSW5zdGFuY2VzIDogRE1BIHJlcXVlc3RzIGdlbmVyYXRpb24gKFRJTXhfRElFUi5DQ3hERSkgKioqKioqKi8KKyNkZWZpbmUgSVNfVElNX0RNQV9DQ19JTlNUQU5DRShJTlNUQU5DRSkgICAoKChJTlNUQU5DRSkgPT0gVElNMSkgICB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTIpICAgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNikgIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTcpKQorCisvKioqKioqKioqKioqKioqKioqKiogVElNIEluc3RhbmNlcyA6IERNQSBidXJzdCBmZWF0dXJlICoqKioqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBJU19USU1fRE1BQlVSU1RfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0xKSAgIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMikgICB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTE2KSAgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNykpCisKKy8qKioqKioqKioqKioqKioqKioqIFRJTSBJbnN0YW5jZXMgOiBUaW1lciBpbnB1dCBzZWxlY3Rpb24gKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIElTX1RJTV9USVNFTF9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFRJTTEpICAgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0yKSAgIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTYpICAgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNykpCisKKy8qKioqKioqKioqKioqKioqKioqIFRJTSBJbnN0YW5jZXMgOiBvdXRwdXQocykgYXZhaWxhYmxlICoqKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIElTX1RJTV9DQ1hfSU5TVEFOQ0UoSU5TVEFOQ0UsIENIQU5ORUwpIFwKKyAgICAgICAgKCgoKElOU1RBTkNFKSA9PSBUSU0xKSAmJiAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgKCgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMSkgfHwgICAgICAgICAgXAorICAgICAgICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8yKSB8fCAgICAgICAgICBcCisgICAgICAgICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzMpIHx8ICAgICAgICAgIFwKKyAgICAgICAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfNCkgfHwgICAgICAgICAgXAorICAgICAgICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF81KSB8fCAgICAgICAgICBcCisgICAgICAgICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzYpKSkgICAgICAgICAgIFwKKyAgICAgICAgICAgfHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAoKChJTlNUQU5DRSkgPT0gVElNMikgJiYgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICgoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzEpIHx8ICAgICAgICAgIFwKKyAgICAgICAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMikgfHwgICAgICAgICAgXAorICAgICAgICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8zKSB8fCAgICAgICAgICBcCisgICAgICAgICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzQpKSkgICAgICAgICAgIFwKKyAgICAgICAgICAgfHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAoKChJTlNUQU5DRSkgPT0gVElNMTYpICYmICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICgoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzEpKSkgICAgICAgICAgIFwKKyAgICAgICAgICAgfHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAoKChJTlNUQU5DRSkgPT0gVElNMTcpICYmICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICAoKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8xKSkpKQorCisvKioqKioqKioqKioqKioqKioqIFRJTSBJbnN0YW5jZXMgOiBzdXBwb3J0aW5nIGNvbXBsZW1lbnRhcnkgb3V0cHV0KHMpICoqKioqKioqLworI2RlZmluZSBJU19USU1fQ0NYTl9JTlNUQU5DRShJTlNUQU5DRSwgQ0hBTk5FTCkgXAorICAgKCgoKElOU1RBTkNFKSA9PSBUSU0xKSAmJiAgICAgICAgICAgICAgICAgICAgXAorICAgICAoKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8xKSB8fCAgICAgICAgICAgXAorICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8yKSB8fCAgICAgICAgICAgXAorICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8zKSkpICAgICAgICAgICAgXAorICAgIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICgoKElOU1RBTkNFKSA9PSBUSU0xNykgJiYgICAgICAgICAgICAgICAgICAgXAorICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzEpKSAgICAgICAgICAgICAgXAorICAgIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICgoKElOU1RBTkNFKSA9PSBUSU0xNikgJiYgICAgICAgICAgICAgICAgICAgXAorICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzEpKSkKKworCisvKioqKioqKioqKioqKioqKioqIFRJTSBJbnN0YW5jZXMgOiBzdXBwb3J0aW5nIGNsb2NrIGRpdmlzaW9uICoqKioqKioqKioqKioqKioqLworI2RlZmluZSBJU19USU1fQ0xPQ0tfRElWSVNJT05fSU5TVEFOQ0UoSU5TVEFOQ0UpICAgKCgoSU5TVEFOQ0UpID09IFRJTTEpICAgIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0yKSAgICB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTYpICAgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTE3KSkKKworLyoqKioqKiBUSU0gSW5zdGFuY2VzIDogc3VwcG9ydGluZyBleHRlcm5hbCBjbG9jayBtb2RlIDEgZm9yIEVUUkYgaW5wdXQgKioqKioqKi8KKyNkZWZpbmUgSVNfVElNX0NMT0NLU09VUkNFX0VUUk1PREUxX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMSkgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0yKSkKKworLyoqKioqKiBUSU0gSW5zdGFuY2VzIDogc3VwcG9ydGluZyBleHRlcm5hbCBjbG9jayBtb2RlIDIgZm9yIEVUUkYgaW5wdXQgKioqKioqKi8KKyNkZWZpbmUgSVNfVElNX0NMT0NLU09VUkNFX0VUUk1PREUyX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMSkgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0yKSkKKworLyoqKioqKioqKioqKioqKioqKiBUSU0gSW5zdGFuY2VzIDogc3VwcG9ydGluZyBleHRlcm5hbCBjbG9jayBtb2RlIDEgZm9yIFRJWCBpbnB1dHMqLworI2RlZmluZSBJU19USU1fQ0xPQ0tTT1VSQ0VfVElYX0lOU1RBTkNFKElOU1RBTkNFKSAgICAgICgoKElOU1RBTkNFKSA9PSBUSU0xKSB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTIpKQorCisvKioqKioqKioqKioqKioqKioqIFRJTSBJbnN0YW5jZXMgOiBzdXBwb3J0aW5nIGludGVybmFsIHRyaWdnZXIgaW5wdXRzKElUUlgpICoqKioqKiovCisjZGVmaW5lIElTX1RJTV9DTE9DS1NPVVJDRV9JVFJYX0lOU1RBTkNFKElOU1RBTkNFKSAgICAgKCgoSU5TVEFOQ0UpID09IFRJTTEpIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMikpCisKKy8qKioqKioqKioqKioqKioqKiogVElNIEluc3RhbmNlcyA6IHN1cHBvcnRpbmcgY29tYmluZWQgMy1waGFzZSBQV00gbW9kZSAqKioqKiovCisjZGVmaW5lIElTX1RJTV9DT01CSU5FRDNQSEFTRVBXTV9JTlNUQU5DRShJTlNUQU5DRSkgKChJTlNUQU5DRSkgPT0gVElNMSkKKworLyoqKioqKioqKioqKioqKioqKiBUSU0gSW5zdGFuY2VzIDogc3VwcG9ydGluZyBjb21tdXRhdGlvbiBldmVudCBnZW5lcmF0aW9uICoqKi8KKyNkZWZpbmUgSVNfVElNX0NPTU1VVEFUSU9OX0VWRU5UX0lOU1RBTkNFKElOU1RBTkNFKSAoKElOU1RBTkNFKSA9PSBUSU0xKQorCisvKioqKioqKioqKioqKioqKioqIFRJTSBJbnN0YW5jZXMgOiBzdXBwb3J0aW5nIGNvdW50aW5nIG1vZGUgc2VsZWN0aW9uICoqKioqKioqLworI2RlZmluZSBJU19USU1fQ09VTlRFUl9NT0RFX1NFTEVDVF9JTlNUQU5DRShJTlNUQU5DRSkgICgoKElOU1RBTkNFKSA9PSBUSU0xKSB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTIpKQorCisvKioqKioqKioqKioqKioqKioqIFRJTSBJbnN0YW5jZXMgOiBzdXBwb3J0aW5nIGVuY29kZXIgaW50ZXJmYWNlICoqKioqKioqKioqKioqLworI2RlZmluZSBJU19USU1fRU5DT0RFUl9JTlRFUkZBQ0VfSU5TVEFOQ0UoSU5TVEFOQ0UpICAoKChJTlNUQU5DRSkgPT0gVElNMSkgIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTIpKQorCisvKioqKioqKioqKioqKioqKioqIFRJTSBJbnN0YW5jZXMgOiBzdXBwb3J0aW5nIEhhbGwgc2Vuc29yIGludGVyZmFjZSAqKioqKioqKioqLworI2RlZmluZSBJU19USU1fSEFMTF9TRU5TT1JfSU5URVJGQUNFX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMSkgIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTIpKQorCisvKioqKioqKioqKioqKioqKiBUSU0gSW5zdGFuY2VzIDogZXh0ZXJuYWwgdHJpZ2dlciBpbnB1dCBhdmFpbGFibGUgKioqKioqKioqKioqLworI2RlZmluZSBJU19USU1fRVRSX0lOU1RBTkNFKElOU1RBTkNFKSAgICAgICgoKElOU1RBTkNFKSA9PSBUSU0xKSAgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0yKSkKKworLyoqKioqKioqKioqKiogVElNIEluc3RhbmNlcyA6IHN1cHBvcnRpbmcgRVRSIHNvdXJjZSBzZWxlY3Rpb24gKioqKioqKioqKioqKioqLworI2RlZmluZSBJU19USU1fRVRSU0VMX0lOU1RBTkNFKElOU1RBTkNFKSAgICAoKChJTlNUQU5DRSkgPT0gVElNMSkgIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTIpKQorCisvKioqKioqIFRJTSBJbnN0YW5jZXMgOiBNYXN0ZXIgbW9kZSBhdmFpbGFibGUgKFRJTXhfQ1IyLk1NUyBhdmFpbGFibGUgKSoqKioqKioqLworI2RlZmluZSBJU19USU1fTUFTVEVSX0lOU1RBTkNFKElOU1RBTkNFKSAgICgoKElOU1RBTkNFKSA9PSBUSU0xKSAgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0yKSkKKworLyoqKioqKioqKioqIFRJTSBJbnN0YW5jZXMgOiBTbGF2ZSBtb2RlIGF2YWlsYWJsZSAoVElNeF9TTUNSIGF2YWlsYWJsZSApKioqKioqKi8KKyNkZWZpbmUgSVNfVElNX1NMQVZFX0lOU1RBTkNFKElOU1RBTkNFKSAgICAoKChJTlNUQU5DRSkgPT0gVElNMSkgIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMikpCisKKy8qKioqKioqKioqKioqKioqKiogVElNIEluc3RhbmNlcyA6IHN1cHBvcnRpbmcgT0N4UkVGIGNsZWFyICoqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIElTX1RJTV9PQ1hSRUZfQ0xFQVJfSU5TVEFOQ0UoSU5TVEFOQ0UpICAgICAgICAoKChJTlNUQU5DRSkgPT0gVElNMSkgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTIpKQorCisvKioqKioqKioqKioqKioqKioqIFRJTSBJbnN0YW5jZXMgOiByZW1hcHBpbmcgY2FwYWJpbGl0eSAqKioqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBJU19USU1fUkVNQVBfSU5TVEFOQ0UoSU5TVEFOQ0UpICAgICgoKElOU1RBTkNFKSA9PSBUSU0xKSAgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0yKSAgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNikgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNykpCisKKy8qKioqKioqKioqKioqKioqKiogVElNIEluc3RhbmNlcyA6IHN1cHBvcnRpbmcgcmVwZXRpdGlvbiBjb3VudGVyICoqKioqKioqKioqKiovCisjZGVmaW5lIElTX1RJTV9SRVBFVElUSU9OX0NPVU5URVJfSU5TVEFOQ0UoSU5TVEFOQ0UpICAoKChJTlNUQU5DRSkgPT0gVElNMSkgIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNikgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTE3KSkKKworLyoqKioqKioqKioqKioqKioqKiBUSU0gSW5zdGFuY2VzIDogc3VwcG9ydGluZyBBREMgdHJpZ2dlcmluZyB0aHJvdWdoIFRSR08yICoqKi8KKyNkZWZpbmUgSVNfVElNX1RSR08yX0lOU1RBTkNFKElOU1RBTkNFKSAgICAoKElOU1RBTkNFKSA9PSBUSU0xKQorCisvKioqKioqKioqKioqKioqKioqKiBUSU0gSW5zdGFuY2VzIDogVGltZXIgaW5wdXQgWE9SIGZ1bmN0aW9uICoqKioqKioqKioqKioqKioqLworI2RlZmluZSBJU19USU1fWE9SX0lOU1RBTkNFKElOU1RBTkNFKSAgICAgICgoKElOU1RBTkNFKSA9PSBUSU0xKSAgIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMikpCisKKy8qKioqKioqKioqKiogVElNIEluc3RhbmNlcyA6IEFkdmFuY2VkIHRpbWVycyAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisjZGVmaW5lIElTX1RJTV9BRFZBTkNFRF9JTlNUQU5DRShJTlNUQU5DRSkgICAgKCgoSU5TVEFOQ0UpID09IFRJTTEpKQorCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIFRTQyBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2RlZmluZSBJU19UU0NfQUxMX0lOU1RBTkNFKElOU1RBTkNFKSAoKElOU1RBTkNFKSA9PSBUU0MpCisKKy8qKgorICAqIEB9CisgICovCisKKyAvKioKKyAgKiBAfQorICAqLworCisvKioKKyAgKiBAfQorICAqLworCisjaWZkZWYgX19jcGx1c3BsdXMKK30KKyNlbmRpZiAvKiBfX2NwbHVzcGx1cyAqLworCisjZW5kaWYgLyogX19TVE0zMldCMzV4eF9IICovCisKKy8qKgorICAqIEB9CisgICovCisKKyAgLyoqCisgICogQH0KKyAgKi8KKworLyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKi8KZGlmZiAtLWdpdCBhL0luY2x1ZGUvc3RtMzJ3YjUweHguaCBiL0luY2x1ZGUvc3RtMzJ3YjUweHguaAppbmRleCBmMjNhODkzLi5iOTliYzFkIDEwMDY0NAotLS0gYS9JbmNsdWRlL3N0bTMyd2I1MHh4LmgKKysrIGIvSW5jbHVkZS9zdG0zMndiNTB4eC5oCkBAIC0yNzAsNyArMjcwLDcgQEAKIHR5cGVkZWYgc3RydWN0CiB7CiAgIF9fSU8gdWludDMyX3QgQUNSOyAgICAgICAgICAgLyohPCBGTEFTSCBBY2Nlc3MgY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgICAgICAqLwotICBfX0lPIHVpbnQzMl90IFBES0VZUjsgICAgICAgIC8qITwgRkxBU0ggUG93ZXItZG93biBpbiBydW4gbW9kZSBmbGFzaCBrZXkgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICAgICAgKi8KKyAgX19JTyB1aW50MzJfdCBSRVNFUlZFRDsgICAgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAgICAgICovCiAgIF9fSU8gdWludDMyX3QgS0VZUjsgICAgICAgICAgLyohPCBGTEFTSCBLZXkgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggICAgICAqLwogICBfX0lPIHVpbnQzMl90IE9QVEtFWVI7ICAgICAgIC8qITwgRkxBU0ggT3B0aW9uIEtleSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDBDICAgICAgKi8KICAgX19JTyB1aW50MzJfdCBTUjsgICAgICAgICAgICAvKiE8IEZMQVNIIFN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAgICAgICovCkBAIC03NzQsNyArNzc0LDggQEAKICNkZWZpbmUgU1JBTTJBX0JBU0UgICAgICAgICAgICAoU1JBTV9CQVNFICsgMHgwMDAzMDAwMFVMKS8qITwgU1JBTTJBKDMyIEtCKSBiYXNlIGFkZHJlc3MgICAgICAqLwogI2RlZmluZSBTUkFNMkJfQkFTRSAgICAgICAgICAgIChTUkFNX0JBU0UgKyAweDAwMDM4MDAwVUwpLyohPCBTUkFNMkIoMzIgS0IpIGJhc2UgYWRkcmVzcyAgICAgICovCiAKLS8qIFNpemUgU1JBTXggKi8KKy8qIE1lbW9yeSBTaXplICovCisjZGVmaW5lIEZMQVNIX1NJWkUgICAgICAgICAgICAgICgoKHVpbnQzMl90KSgqKCh1aW50MTZfdCAqKUZMQVNIU0laRV9CQVNFKSkgJiAoMHgwN0ZGVUwpKSA8PCAxMFUpCiAjZGVmaW5lIFNSQU0xX1NJWkUgICAgICAgICAgICAgIDB4MDAwMTAwMDBVTCAgIC8qITwgU1JBTTEgZGVmYXVsdCBzaXplIDogNjQga0IgICovCiAjZGVmaW5lIFNSQU0yQV9TSVpFICAgICAgICAgICAgIDB4MDAwMDgwMDBVTCAgIC8qITwgU1JBTTJhIGRlZmF1bHQgc2l6ZSA6IDMyIGtCICAqLwogI2RlZmluZSBTUkFNMkJfU0laRSAgICAgICAgICAgICAweDAwMDA4MDAwVUwgICAvKiE8IFNSQU0yYiBkZWZhdWx0IHNpemUgOiAzMiBrQiAgKi8KQEAgLTM4MzgsNyArMzgzOSw3IEBACiAjZGVmaW5lIEZMQVNIX0NSX1JERVJSSUUgICAgICAgICAgICAgICAgICAgIEZMQVNIX0NSX1JERVJSSUVfTXNrICAgICAgICAgICAgICAgLyohPCBQQ1JPUCByZWFkIGVycm9yIGludGVycnVwdCBlbmFibGUgICAgICAgICAgICAgICAgICAgKi8KICNkZWZpbmUgRkxBU0hfQ1JfT0JMX0xBVU5DSF9Qb3MgICAgICAgICAgICAgKDI3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICNkZWZpbmUgRkxBU0hfQ1JfT0JMX0xBVU5DSF9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX0NSX09CTF9MQVVOQ0hfUG9zKSAvKiE8IDB4MDgwMDAwMDAgKi8KLSNkZWZpbmUgRkxBU0hfQ1JfT0JMX0xBVU5DSCAgICAgICAgICAgICAgICAgRkxBU0hfQ1JfT0JMX0xBVU5DSF9Nc2sgICAgICAgICAgICAvKiE8IEZvcmNlIHRoZSBvcHRpb24gYnV0ZSBsb2FkaW5nICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBGTEFTSF9DUl9PQkxfTEFVTkNIICAgICAgICAgICAgICAgICBGTEFTSF9DUl9PQkxfTEFVTkNIX01zayAgICAgICAgICAgIC8qITwgRm9yY2UgdGhlIG9wdGlvbiBieXRlIGxvYWRpbmcgICAgICAgICAgICAgICAgICAgICAgICovCiAjZGVmaW5lIEZMQVNIX0NSX09QVExPQ0tfUG9zICAgICAgICAgICAgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAjZGVmaW5lIEZMQVNIX0NSX09QVExPQ0tfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9DUl9PUFRMT0NLX1BvcykgICAgLyohPCAweDQwMDAwMDAwICovCiAjZGVmaW5lIEZMQVNIX0NSX09QVExPQ0sgICAgICAgICAgICAgICAgICAgIEZMQVNIX0NSX09QVExPQ0tfTXNrICAgICAgICAgICAgICAgLyohPCBPcHRpb25zIGxvY2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KQEAgLTY0MzAsNyArNjQzMSw4IEBACiAvKgogKiBAYnJpZWYgU3BlY2lmaWMgZGV2aWNlIGZlYXR1cmUgZGVmaW5pdGlvbnMKICovCi0jZGVmaW5lIFJDQ19QTExTQUlfU1VQUE9SVAorI2RlZmluZSBSQ0NfTUNPM19TVVBQT1JUCisjZGVmaW5lIFJDQ19MU0NPM19TVVBQT1JUCiAKIC8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19DUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovCiAjZGVmaW5lIFJDQ19DUl9NU0lPTl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCkBAIC0xMTE2NCw5ICsxMTE2Niw2IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTYpIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNykpCiAKLS8qKioqKioqKioqKioqKioqKiogVElNIEluc3RhbmNlcyA6IHN1cHBvcnRpbmcgc3luY2hyb25pemF0aW9uICoqKioqKioqKioqKioqKiovCi0jZGVmaW5lIElTX1RJTV9TWU5DSFJPX0lOU1RBTkNFKElOU1RBTkNFKSAgSVNfVElNX01BU1RFUl9JTlNUQU5DRShJTlNUQU5DRSkKLQogLyoqKioqKioqKioqKioqKioqKiBUSU0gSW5zdGFuY2VzIDogc3VwcG9ydGluZyBBREMgdHJpZ2dlcmluZyB0aHJvdWdoIFRSR08yICoqKi8KICNkZWZpbmUgSVNfVElNX1RSR08yX0lOU1RBTkNFKElOU1RBTkNFKSAgICAoKElOU1RBTkNFKSA9PSBUSU0xKQogCmRpZmYgLS1naXQgYS9JbmNsdWRlL3N0bTMyd2I1NXh4LmggYi9JbmNsdWRlL3N0bTMyd2I1NXh4LmgKaW5kZXggYzM4MDE2My4uZWNmOTQ1NCAxMDA2NDQKLS0tIGEvSW5jbHVkZS9zdG0zMndiNTV4eC5oCisrKyBiL0luY2x1ZGUvc3RtMzJ3YjU1eHguaApAQCAtMzAyLDcgKzMwMiw3IEBACiB0eXBlZGVmIHN0cnVjdAogewogICBfX0lPIHVpbnQzMl90IEFDUjsgICAgICAgICAgIC8qITwgRkxBU0ggQWNjZXNzIGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICAgICAgKi8KLSAgX19JTyB1aW50MzJfdCBQREtFWVI7ICAgICAgICAvKiE8IEZMQVNIIFBvd2VyLWRvd24gaW4gcnVuIG1vZGUgZmxhc2gga2V5ICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAgICAgICovCisgIF9fSU8gdWludDMyX3QgUkVTRVJWRUQ7ICAgICAgLyohPCBSZXNlcnZlZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgICAgICAqLwogICBfX0lPIHVpbnQzMl90IEtFWVI7ICAgICAgICAgIC8qITwgRkxBU0ggS2V5IHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICAgICAgKi8KICAgX19JTyB1aW50MzJfdCBPUFRLRVlSOyAgICAgICAvKiE8IEZMQVNIIE9wdGlvbiBLZXkgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAgICAgICovCiAgIF9fSU8gdWludDMyX3QgU1I7ICAgICAgICAgICAgLyohPCBGTEFTSCBTdGF0dXMgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgICAgICAqLwpAQCAtOTMyLDcgKzkzMiw4IEBACiAjZGVmaW5lIFNSQU0yQV9CQVNFICAgICAgICAgICAgKFNSQU1fQkFTRSArIDB4MDAwMzAwMDBVTCkvKiE8IFNSQU0yQSgzMiBLQikgYmFzZSBhZGRyZXNzICAgICAgICovCiAjZGVmaW5lIFNSQU0yQl9CQVNFICAgICAgICAgICAgKFNSQU1fQkFTRSArIDB4MDAwMzgwMDBVTCkvKiE8IFNSQU0yQigzMiBLQikgYmFzZSBhZGRyZXNzICAgICAgICovCiAKLS8qIFNpemUgU1JBTXggKi8KKy8qIE1lbW9yeSBTaXplICovCisjZGVmaW5lIEZMQVNIX1NJWkUgICAgICAgICAgICAgICgoKHVpbnQzMl90KSgqKCh1aW50MTZfdCAqKUZMQVNIU0laRV9CQVNFKSkgJiAoMHgwN0ZGVUwpKSA8PCAxMFUpCiAjZGVmaW5lIFNSQU0xX1NJWkUgICAgICAgICAgICAgIDB4MDAwMzAwMDBVTCAgIC8qITwgU1JBTTEgZGVmYXVsdCBzaXplIDogMTkyIGtCICAqLwogI2RlZmluZSBTUkFNMkFfU0laRSAgICAgICAgICAgICAweDAwMDA4MDAwVUwgICAvKiE8IFNSQU0yYSBkZWZhdWx0IHNpemUgOiAzMiBrQiAgKi8KICNkZWZpbmUgU1JBTTJCX1NJWkUgICAgICAgICAgICAgMHgwMDAwODAwMFVMICAgLyohPCBTUkFNMmIgZGVmYXVsdCBzaXplIDogMzIga0IgICovCkBAIC00MTI3LDcgKzQxMjgsNyBAQAogI2RlZmluZSBGTEFTSF9DUl9SREVSUklFICAgICAgICAgICAgICAgICAgICBGTEFTSF9DUl9SREVSUklFX01zayAgICAgICAgICAgICAgIC8qITwgUENST1AgcmVhZCBlcnJvciBpbnRlcnJ1cHQgZW5hYmxlICAgICAgICAgICAgICAgICAgICovCiAjZGVmaW5lIEZMQVNIX0NSX09CTF9MQVVOQ0hfUG9zICAgICAgICAgICAgICgyN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAjZGVmaW5lIEZMQVNIX0NSX09CTF9MQVVOQ0hfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9DUl9PQkxfTEFVTkNIX1BvcykgLyohPCAweDA4MDAwMDAwICovCi0jZGVmaW5lIEZMQVNIX0NSX09CTF9MQVVOQ0ggICAgICAgICAgICAgICAgIEZMQVNIX0NSX09CTF9MQVVOQ0hfTXNrICAgICAgICAgICAgLyohPCBGb3JjZSB0aGUgb3B0aW9uIGJ1dGUgbG9hZGluZyAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgRkxBU0hfQ1JfT0JMX0xBVU5DSCAgICAgICAgICAgICAgICAgRkxBU0hfQ1JfT0JMX0xBVU5DSF9Nc2sgICAgICAgICAgICAvKiE8IEZvcmNlIHRoZSBvcHRpb24gYnl0ZSBsb2FkaW5nICAgICAgICAgICAgICAgICAgICAgICAqLwogI2RlZmluZSBGTEFTSF9DUl9PUFRMT0NLX1BvcyAgICAgICAgICAgICAgICAoMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogI2RlZmluZSBGTEFTSF9DUl9PUFRMT0NLX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfQ1JfT1BUTE9DS19Qb3MpICAgIC8qITwgMHg0MDAwMDAwMCAqLwogI2RlZmluZSBGTEFTSF9DUl9PUFRMT0NLICAgICAgICAgICAgICAgICAgICBGTEFTSF9DUl9PUFRMT0NLX01zayAgICAgICAgICAgICAgIC8qITwgT3B0aW9ucyBsb2NrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCkBAIC03MjY2LDcgKzcyNjcsOCBAQAogKiBAYnJpZWYgU3BlY2lmaWMgZGV2aWNlIGZlYXR1cmUgZGVmaW5pdGlvbnMKICovCiAjZGVmaW5lIFJDQ19TTVBTX1NVUFBPUlQKLSNkZWZpbmUgUkNDX1BMTFNBSV9TVVBQT1JUCisjZGVmaW5lIFJDQ19NQ08zX1NVUFBPUlQKKyNkZWZpbmUgUkNDX0xTQ08zX1NVUFBPUlQKIAogLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8KICNkZWZpbmUgUkNDX0NSX01TSU9OX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKQEAgLTEzNjM0LDkgKzEzNjM2LDYgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNikgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTE3KSkKIAotLyoqKioqKioqKioqKioqKioqKiBUSU0gSW5zdGFuY2VzIDogc3VwcG9ydGluZyBzeW5jaHJvbml6YXRpb24gKioqKioqKioqKioqKioqKi8KLSNkZWZpbmUgSVNfVElNX1NZTkNIUk9fSU5TVEFOQ0UoSU5TVEFOQ0UpICBJU19USU1fTUFTVEVSX0lOU1RBTkNFKElOU1RBTkNFKQotCiAvKioqKioqKioqKioqKioqKioqIFRJTSBJbnN0YW5jZXMgOiBzdXBwb3J0aW5nIEFEQyB0cmlnZ2VyaW5nIHRocm91Z2ggVFJHTzIgKioqLwogI2RlZmluZSBJU19USU1fVFJHTzJfSU5TVEFOQ0UoSU5TVEFOQ0UpICAgICgoSU5TVEFOQ0UpID09IFRJTTEpCiAKZGlmZiAtLWdpdCBhL0luY2x1ZGUvc3RtMzJ3Ynh4LmggYi9JbmNsdWRlL3N0bTMyd2J4eC5oCmluZGV4IDQwYjllYTcuLjRlZDg0MjEgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvc3RtMzJ3Ynh4LmgKKysrIGIvSW5jbHVkZS9zdG0zMndieHguaApAQCAtNjksNyArNjksNyBAQAogICAqIEBicmllZiBDTVNJUyBEZXZpY2UgdmVyc2lvbiBudW1iZXIKICAgKi8KICNkZWZpbmUgX19TVE0zMldCeHhfQ01TSVNfVkVSU0lPTl9NQUlOICAgKDB4MDFVKSAvKiE8IFszMToyNF0gbWFpbiB2ZXJzaW9uICovCi0jZGVmaW5lIF9fU1RNMzJXQnh4X0NNU0lTX1ZFUlNJT05fU1VCMSAgICgweDAyVSkgLyohPCBbMjM6MTZdIHN1YjEgdmVyc2lvbiAqLworI2RlZmluZSBfX1NUTTMyV0J4eF9DTVNJU19WRVJTSU9OX1NVQjEgICAoMHgwM1UpIC8qITwgWzIzOjE2XSBzdWIxIHZlcnNpb24gKi8KICNkZWZpbmUgX19TVE0zMldCeHhfQ01TSVNfVkVSU0lPTl9TVUIyICAgKDB4MDBVKSAvKiE8IFsxNTo4XSAgc3ViMiB2ZXJzaW9uICovCiAjZGVmaW5lIF9fU1RNMzJXQnh4X0NNU0lTX1ZFUlNJT05fUkMgICAgICgweDAwVSkgLyohPCBbNzowXSAgcmVsZWFzZSBjYW5kaWRhdGUgKi8KICNkZWZpbmUgX19TVE0zMldCeHhfQ01TSVNfREVWSUNFX1ZFUlNJT04gICAgICAgICgoX19TVE0zMldCeHhfQ01TSVNfVkVSU0lPTl9NQUlOIDw8IDI0KVwKZGlmZiAtLWdpdCBhL1JFQURNRS5tZCBiL1JFQURNRS5tZAppbmRleCA0MTFiMjg0Li5lYWNiZWE0IDEwMDY0NAotLS0gYS9SRUFETUUubWQKKysrIGIvUkVBRE1FLm1kCkBAIC0yNyw2ICsyNyw3IEBACiAtLS0tLS0tLS0tLS0tLS0gfCAtLS0tLS0tLS0tIHwgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogVGFnIHYxLjEuMCB8IFRhZyB2NC41X2NtNCB8IFRhZyB2MS4xLjAKIFRhZyB2MS4yLjAgfCBUYWcgdjUuNC4wX2NtNCB8IFRhZyB2MS4yLjAKK1RhZyB2MS4zLjAgfCBUYWcgdjUuNC4wX2NtNCB8IFRhZyB2MS4zLjAKIAogVGhlIGZ1bGwgKipTVE0zMkN1YmVXQioqIE1DVSBwYWNrYWdlIGlzIGF2YWlsYWJsZSBbaGVyZV0oaHR0cHM6Ly9naXRodWIuY29tL1NUTWljcm9lbGVjdHJvbmljcy9TVE0zMkN1YmVXQikuCiAKZGlmZiAtLWdpdCBhL1JlbGVhc2VfTm90ZXMuaHRtbCBiL1JlbGVhc2VfTm90ZXMuaHRtbAppbmRleCA1YTJmMmYyLi43NTUzYTQ4IDEwMDY0NAotLS0gYS9SZWxlYXNlX05vdGVzLmh0bWwKKysrIGIvUmVsZWFzZV9Ob3Rlcy5odG1sCkBAIC00OSwxMyArNDksMzEgQEAKIDxkaXYgY2xhc3M9ImNvbC1zbS0xMiBjb2wtbGctOCI+CiA8aDEgaWQ9InVwZGF0ZS1oaXN0b3J5Ij5VcGRhdGUgSGlzdG9yeTwvaDE+CiA8ZGl2IGNsYXNzPSJjb2xsYXBzZSI+Ci08aW5wdXQgdHlwZT0iY2hlY2tib3giIGlkPSJjb2xsYXBzZS1zZWN0aW9uMyIgY2hlY2tlZCBhcmlhLWhpZGRlbj0idHJ1ZSI+IDxsYWJlbCBmb3I9ImNvbGxhcHNlLXNlY3Rpb24zIiBhcmlhLWhpZGRlbj0idHJ1ZSI+VjEuMi4wIC8gMjYtSnVuZS0yMDE5PC9sYWJlbD4KKzxpbnB1dCB0eXBlPSJjaGVja2JveCIgaWQ9ImNvbGxhcHNlLXNlY3Rpb240IiBjaGVja2VkIGFyaWEtaGlkZGVuPSJ0cnVlIj4gPGxhYmVsIGZvcj0iY29sbGFwc2Utc2VjdGlvbjQiIGFyaWEtaGlkZGVuPSJ0cnVlIj52MS4zLjAgLyAxMS1TZXB0ZW1iZXItMjAxOTwvbGFiZWw+CiA8ZGl2PgogPGgyIGlkPSJtYWluLWNoYW5nZXMiPk1haW4gQ2hhbmdlczwvaDI+Ci08aDMgaWQ9ImludHJvZHVjdGlvbi1vZi1zdG0zMndiNTB4eC1kZXZpY2UiPkludHJvZHVjdGlvbiBvZiBTVE0zMldCNTB4eCBkZXZpY2U8L2gzPgotPHA+Rmlyc3QgcmVsZWFzZSBmb3IgU1RNMzJXQnh4IENNU0lTIGludHJvZHVjaW5nIDxzdHJvbmc+c3RtMzJ3YjUweHg8L3N0cm9uZz4gZGV2aWNlcy48L3A+Ci08aDIgaWQ9ImNvbnRlbnRzIj5Db250ZW50czwvaDI+Ci08cD5DTVNJUyBkZXZpY2VzIGZpbGVzIGZvciBzdG0zMndiNTV4eCwgc3RtMzJ3YjUweHggZGV2aWNlcy48L3A+Cis8cD5NYWludGVuYW5jZSByZWxlYXNlIGZvciA8c3Ryb25nPlNUTTMyV0J4eDwvc3Ryb25nPiBkZXZpY2VzIChzdG0zMndiNTV4eCBhbmQgc3RtMzJ3YjUweHggZGV2aWNlcyk8L3A+Cis8dGFibGU+Cis8dGhlYWQ+Cis8dHIgY2xhc3M9ImhlYWRlciI+Cis8dGggc3R5bGU9InRleHQtYWxpZ246IGxlZnQ7Ij5GaXhlZCBidWdzIGhlYWRsaW5lPC90aD4KKzwvdHI+Cis8L3RoZWFkPgorPHRib2R5PgorPHRyIGNsYXNzPSJvZGQiPgorPHRkIHN0eWxlPSJ0ZXh0LWFsaWduOiBsZWZ0OyI+UmVtb3ZlIElTX1RJTV9TWU5DSFJPX0lOU1RBTkNFIG1hY3JvIGZyb20gQ01TSVM8L3RkPgorPC90cj4KKzx0ciBjbGFzcz0iZXZlbiI+Cis8dGQgc3R5bGU9InRleHQtYWxpZ246IGxlZnQ7Ij5Nb3ZlIEZMQVNIX1NJWkUgZGVmaW5lIGZyb20gaGFsIGZsYXNoLiBoIHRvIGNtc2lzIGRldmljZSBmaWxlPC90ZD4KKzwvdHI+Cis8dHIgY2xhc3M9Im9kZCI+Cis8dGQgc3R5bGU9InRleHQtYWxpZ246IGxlZnQ7Ij5Db3JyZWN0IHNpemUgb2YgLmJpbiBmaWxlcyBnZW5lcmF0ZWQgYnkgU1c0U1RNMzI8L3RkPgorPC90cj4KKzx0ciBjbGFzcz0iZXZlbiI+Cis8dGQgc3R5bGU9InRleHQtYWxpZ246IGxlZnQ7Ij5SZW1vdmUgUkNDX1BMTFNBSV9TVVBQT1JUIGZvciBTVE0zMldCNTA8L3RkPgorPC90cj4KKzwvdGJvZHk+Cis8L3RhYmxlPgogPGgyIGlkPSJkZXZlbG9wbWVudC10b29sY2hhaW5zLWFuZC1jb21waWxlcnMiPkRldmVsb3BtZW50IFRvb2xjaGFpbnMgYW5kIENvbXBpbGVyczwvaDI+CiA8dWw+CiA8bGk+SUFSIEVtYmVkZGVkIFdvcmtiZW5jaCBmb3IgQVJNIChFV0FSTSkgdG9vbGNoYWluIFY4LjIwLjI8L2xpPgpAQCAtNjQsNiArODIsMjYgQEAKIDwvdWw+CiA8aDIgaWQ9InN1cHBvcnRlZC1kZXZpY2VzLWFuZC1ib2FyZHMiPlN1cHBvcnRlZCBEZXZpY2VzIGFuZCBib2FyZHM8L2gyPgogPHVsPgorPGxpPlNUTTMyV0I1NXh4LCBTVE0zMldCNTB4eCBkZXZpY2VzPC9saT4KKzwvdWw+Cis8L2Rpdj4KKzwvZGl2PgorPGRpdiBjbGFzcz0iY29sbGFwc2UiPgorPGlucHV0IHR5cGU9ImNoZWNrYm94IiBpZD0iY29sbGFwc2Utc2VjdGlvbjMiIGFyaWEtaGlkZGVuPSJ0cnVlIj4gPGxhYmVsIGZvcj0iY29sbGFwc2Utc2VjdGlvbjMiIGFyaWEtaGlkZGVuPSJ0cnVlIj5WMS4yLjAgLyAyNi1KdW5lLTIwMTk8L2xhYmVsPgorPGRpdj4KKzxoMiBpZD0ibWFpbi1jaGFuZ2VzLTEiPk1haW4gQ2hhbmdlczwvaDI+Cis8aDMgaWQ9ImludHJvZHVjdGlvbi1vZi1zdG0zMndiNTB4eC1kZXZpY2UiPkludHJvZHVjdGlvbiBvZiBTVE0zMldCNTB4eCBkZXZpY2U8L2gzPgorPHA+Rmlyc3QgcmVsZWFzZSBmb3IgU1RNMzJXQnh4IENNU0lTIGludHJvZHVjaW5nIDxzdHJvbmc+c3RtMzJ3YjUweHg8L3N0cm9uZz4gZGV2aWNlcy48L3A+Cis8aDIgaWQ9ImNvbnRlbnRzIj5Db250ZW50czwvaDI+Cis8cD5DTVNJUyBkZXZpY2VzIGZpbGVzIGZvciBzdG0zMndiNTV4eCwgc3RtMzJ3YjUweHggZGV2aWNlcy48L3A+Cis8aDIgaWQ9ImRldmVsb3BtZW50LXRvb2xjaGFpbnMtYW5kLWNvbXBpbGVycy0xIj5EZXZlbG9wbWVudCBUb29sY2hhaW5zIGFuZCBDb21waWxlcnM8L2gyPgorPHVsPgorPGxpPklBUiBFbWJlZGRlZCBXb3JrYmVuY2ggZm9yIEFSTSAoRVdBUk0pIHRvb2xjaGFpbiBWOC4yMC4yPC9saT4KKzxsaT5SZWFsVmlldyBNaWNyb2NvbnRyb2xsZXIgRGV2ZWxvcG1lbnQgS2l0IChNREstQVJNKSB0b29sY2hhaW4gVjUuMjU8L2xpPgorPGxpPlN5c3RlbSBXb3JrYmVuY2ggU1RNMzIgKFNXNFNUTTMyKSB0b29sY2hhaW4gVjIuNzwvbGk+Cis8L3VsPgorPGgyIGlkPSJzdXBwb3J0ZWQtZGV2aWNlcy1hbmQtYm9hcmRzLTEiPlN1cHBvcnRlZCBEZXZpY2VzIGFuZCBib2FyZHM8L2gyPgorPHVsPgogPGxpPlNUTTMyV0I1NXh4IGFuZCBTVE0zMldCNTB4eCBkZXZpY2VzPC9saT4KIDwvdWw+CiA8L2Rpdj4KQEAgLTcxLDcgKzEwOSw3IEBACiA8ZGl2IGNsYXNzPSJjb2xsYXBzZSI+CiA8aW5wdXQgdHlwZT0iY2hlY2tib3giIGlkPSJjb2xsYXBzZS1zZWN0aW9uMiIgYXJpYS1oaWRkZW49InRydWUiPiA8bGFiZWwgZm9yPSJjb2xsYXBzZS1zZWN0aW9uMiIgYXJpYS1oaWRkZW49InRydWUiPlYxLjEuMCAvIDA1LUFwcmlsLTIwMTk8L2xhYmVsPgogPGRpdj4KLTxoMiBpZD0ibWFpbi1jaGFuZ2VzLTEiPk1haW4gQ2hhbmdlczwvaDI+Cis8aDIgaWQ9Im1haW4tY2hhbmdlcy0yIj5NYWluIENoYW5nZXM8L2gyPgogPGgzIGlkPSJtYWludGVuYW5jZS1yZWxlYXNlIj5NYWludGVuYW5jZSByZWxlYXNlPC9oMz4KIDxwPk1haW50ZW5hbmNlIHJlbGVhc2UgZm9yIDxzdHJvbmc+U1RNMzJXQnh4PC9zdHJvbmc+IGRldmljZXMgKHN0bTMyd2I1NXh4IGRldmljZXMpPC9wPgogPHRhYmxlPgpAQCAtOTUsNyArMTMzLDcgQEAKIDxkaXYgY2xhc3M9ImNvbGxhcHNlIj4KIDxpbnB1dCB0eXBlPSJjaGVja2JveCIgaWQ9ImNvbGxhcHNlLXNlY3Rpb24xIiBhcmlhLWhpZGRlbj0idHJ1ZSI+IDxsYWJlbCBmb3I9ImNvbGxhcHNlLXNlY3Rpb24xIiBhcmlhLWhpZGRlbj0idHJ1ZSI+VjEuMC4wIC8gMDYtRmVicnVhcnktMjAxOTwvbGFiZWw+CiA8ZGl2PgotPGgyIGlkPSJtYWluLWNoYW5nZXMtMiI+TWFpbiBDaGFuZ2VzPC9oMj4KKzxoMiBpZD0ibWFpbi1jaGFuZ2VzLTMiPk1haW4gQ2hhbmdlczwvaDI+CiA8aDMgaWQ9ImZpcnN0LXJlbGVhc2UiPkZpcnN0IHJlbGVhc2U8L2gzPgogPHA+QWRkIHN1cHBvcnQgb2YgU1RNMzJXQjU1eHguPC9wPgogPC9kaXY+CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGVtcGxhdGVzL2FybS9saW5rZXIvc3RtMzJ3YjM1eHhfZmxhc2hfY200LnNjdCBiL1NvdXJjZS9UZW1wbGF0ZXMvYXJtL2xpbmtlci9zdG0zMndiMzV4eF9mbGFzaF9jbTQuc2N0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM5N2VkMjYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGVtcGxhdGVzL2FybS9saW5rZXIvc3RtMzJ3YjM1eHhfZmxhc2hfY200LnNjdApAQCAtMCwwICsxLDIxIEBACis7ICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKzsgKioqIFNjYXR0ZXItTG9hZGluZyBEZXNjcmlwdGlvbiBGaWxlIGdlbmVyYXRlZCBieSB1VmlzaW9uICoqKgorOyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisKK0xSX0lST00xIDB4MDgwMDAwMDAgMHgwMDA4MDAwMCAgeyAgICA7IGxvYWQgcmVnaW9uIHNpemVfcmVnaW9uCisgIEVSX0lST00xIDB4MDgwMDAwMDAgMHgwMDA4MDAwMCAgeyAgOyBsb2FkIGFkZHJlc3MgPSBleGVjdXRpb24gYWRkcmVzcworICAgKi5vIChSRVNFVCwgK0ZpcnN0KQorICAgKihJblJvb3QkJFNlY3Rpb25zKQorICAgLkFOWSAoK1JPKQorICB9CisgIFJXX0lSQU0xICAgICAweDIwMDAwMDA0IDB4N0ZGQyAgeyAgOyBSVyBkYXRhCisgICAuQU5ZICgrUlcgK1pJKQorICB9CisgIFJXX1JBTV9TSEFSRUQgMHgyMDAzMDAwMCAweDI4MDAgIHsgIDsgUlcgZGF0YQorICAgKihNQVBQSU5HX1RBQkxFKQorICAgKihNQl9NRU0xKQorICAgKihNQl9NRU0yKQorICB9CisgIH0KKworCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGVtcGxhdGVzL2FybS9zdGFydHVwX3N0bTMyd2IzNXh4X2NtMC5zIGIvU291cmNlL1RlbXBsYXRlcy9hcm0vc3RhcnR1cF9zdG0zMndiMzV4eF9jbTAucwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40ZDFkNzFhCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RlbXBsYXRlcy9hcm0vc3RhcnR1cF9zdG0zMndiMzV4eF9jbTAucwpAQCAtMCwwICsxLDI0OSBAQAorOyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorOyogRmlsZSBOYW1lICAgICAgICAgIDogc3RhcnR1cF9zdG0zMndiNTV4eF9jbTAucworOyogQXV0aG9yICAgICAgICAgICAgIDogTUNEIEFwcGxpY2F0aW9uIFRlYW0KKzsqIERlc2NyaXB0aW9uICAgICAgICA6IFNUTTMyV0I1NXh4IGRldmljZXMgdmVjdG9yIHRhYmxlIGZvciBNREstQVJNIHRvb2xjaGFpbi4KKzsqICAgICAgICAgICAgICAgICAgICAgIFRoaXMgbW9kdWxlIHBlcmZvcm1zOgorOyogICAgICAgICAgICAgICAgICAgICAgLSBTZXQgdGhlIGluaXRpYWwgU1AKKzsqICAgICAgICAgICAgICAgICAgICAgIC0gU2V0IHRoZSBpbml0aWFsIFBDID09IFJlc2V0X0hhbmRsZXIKKzsqICAgICAgICAgICAgICAgICAgICAgIC0gU2V0IHRoZSB2ZWN0b3IgdGFibGUgZW50cmllcyB3aXRoIHRoZSBleGNlcHRpb25zIElTUiBhZGRyZXNzCis7KiAgICAgICAgICAgICAgICAgICAgICAtIEJyYW5jaGVzIHRvIF9fbWFpbiBpbiB0aGUgQyBsaWJyYXJ5ICh3aGljaCBldmVudHVhbGx5Cis7KiAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxzIG1haW4oKSkuCis7KiAgICAgICAgICAgICAgICAgICAgICBBZnRlciBSZXNldCB0aGUgQ29ydGV4LU0wKyBwcm9jZXNzb3IgaXMgaW4gVGhyZWFkIG1vZGUsCis7KiAgICAgICAgICAgICAgICAgICAgICBwcmlvcml0eSBpcyBQcml2aWxlZ2VkLCBhbmQgdGhlIFN0YWNrIGlzIHNldCB0byBNYWluLgorOyogPDw8IFVzZSBDb25maWd1cmF0aW9uIFdpemFyZCBpbiBDb250ZXh0IE1lbnUgPj4+ICAgCis7KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCis7KiBAYXR0ZW50aW9uCis7KgorOyogQ29weXJpZ2h0IChjKSAyMDE5IFNUTWljcm9lbGVjdHJvbmljcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKzsqCis7KiBUaGlzIHNvZnR3YXJlIGNvbXBvbmVudCBpcyBsaWNlbnNlZCBieSBTVCB1bmRlciBCU0QgMy1DbGF1c2UgbGljZW5zZSwKKzsqIHRoZSAiTGljZW5zZSI7IFlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgCis7KiBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQ6Cis7KiAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL0JTRC0zLUNsYXVzZQorOyoKKzsqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKworOyBBbW91bnQgb2YgbWVtb3J5IChpbiBieXRlcykgYWxsb2NhdGVkIGZvciBTdGFjaworOyBUYWlsb3IgdGhpcyB2YWx1ZSB0byB5b3VyIGFwcGxpY2F0aW9uIG5lZWRzCis7IDxoPiBTdGFjayBDb25maWd1cmF0aW9uCis7ICAgPG8+IFN0YWNrIFNpemUgKGluIEJ5dGVzKSA8MHgwLTB4RkZGRkZGRkY6OD4KKzsgPC9oPgorCitTdGFja19TaXplICAgICAgRVFVICAgICAweDAwMDAwNDAwCisKKyAgICAgICAgICAgICAgICBBUkVBICAgIFNUQUNLLCBOT0lOSVQsIFJFQURXUklURSwgQUxJR049MworU3RhY2tfTWVtICAgICAgIFNQQUNFICAgU3RhY2tfU2l6ZQorX19pbml0aWFsX3NwCisKKworOyA8aD4gSGVhcCBDb25maWd1cmF0aW9uCis7ICAgPG8+ICBIZWFwIFNpemUgKGluIEJ5dGVzKSA8MHgwLTB4RkZGRkZGRkY6OD4KKzsgPC9oPgorCitIZWFwX1NpemUgICAgICAgRVFVICAgICAweDAwMDAwMjAwCisKKyAgICAgICAgICAgICAgICBBUkVBICAgIEhFQVAsIE5PSU5JVCwgUkVBRFdSSVRFLCBBTElHTj0zCitfX2hlYXBfYmFzZQorSGVhcF9NZW0gICAgICAgIFNQQUNFICAgSGVhcF9TaXplCitfX2hlYXBfbGltaXQKKworICAgICAgICAgICAgICAgIFBSRVNFUlZFOAorICAgICAgICAgICAgICAgIFRIVU1CCisKKworOyBWZWN0b3IgVGFibGUgTWFwcGVkIHRvIEFkZHJlc3MgMCBhdCBSZXNldAorICAgICAgICAgICAgICAgIEFSRUEgICAgUkVTRVQsIERBVEEsIFJFQURPTkxZCisgICAgICAgICAgICAgICAgRVhQT1JUICBfX1ZlY3RvcnMKKyAgICAgICAgICAgICAgICBFWFBPUlQgIF9fVmVjdG9yc19FbmQKKyAgICAgICAgICAgICAgICBFWFBPUlQgIF9fVmVjdG9yc19TaXplCisKK19fVmVjdG9ycyAgICAgICBEQ0QgICAgIF9faW5pdGlhbF9zcCAgICAgICAgICAgICAgICAgICAgIDsgVG9wIG9mIFN0YWNrCisgICAgICAgICAgICAgICAgRENEICAgICBSZXNldF9IYW5kbGVyICAgICAgICAgICAgICAgICAgICA7IFJlc2V0IEhhbmRsZXIKKyAgICAgICAgICAgICAgICBEQ0QgICAgIE5NSV9IYW5kbGVyICAgICAgICAgICAgICAgICAgICAgIDsgTk1JIEhhbmRsZXIKKyAgICAgICAgICAgICAgICBEQ0QgICAgIEhhcmRGYXVsdF9IYW5kbGVyICAgICAgICAgICAgICAgIDsgSGFyZCBGYXVsdCBIYW5kbGVyCisgICAgICAgICAgICAgICAgRENEICAgICAwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7IFJlc2VydmVkCisgICAgICAgICAgICAgICAgRENEICAgICAwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7IFJlc2VydmVkCisgICAgICAgICAgICAgICAgRENEICAgICAwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7IFJlc2VydmVkCisgICAgICAgICAgICAgICAgRENEICAgICAwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7IFJlc2VydmVkCisgICAgICAgICAgICAgICAgRENEICAgICAwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7IFJlc2VydmVkCisgICAgICAgICAgICAgICAgRENEICAgICAwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7IFJlc2VydmVkCisgICAgICAgICAgICAgICAgRENEICAgICAwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7IFJlc2VydmVkCisgICAgICAgICAgICAgICAgRENEICAgICBTVkNfSGFuZGxlciAgICAgICAgICAgICAgICAgICAgICA7IFNWQ2FsbCBIYW5kbGVyCisgICAgICAgICAgICAgICAgRENEICAgICAwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7IFJlc2VydmVkCisgICAgICAgICAgICAgICAgRENEICAgICAwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7IFJlc2VydmVkCisgICAgICAgICAgICAgICAgRENEICAgICBQZW5kU1ZfSGFuZGxlciAgICAgICAgICAgICAgICAgICA7IFBlbmRTViBIYW5kbGVyCisgICAgICAgICAgICAgICAgRENEICAgICBTeXNUaWNrX0hhbmRsZXIgICAgICAgICAgICAgICAgICA7IFN5c1RpY2sgSGFuZGxlcgorICAgICAgICAgICAgICAgIERDRCAgICAgMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOyBSZXNlcnZlZAorCisgICAgICAgICAgICAgICAgOyBFeHRlcm5hbCBJbnRlcnJ1cHRzICAgICAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICBEQ0QgICAgIFBWRF9QVk1fSVJRSGFuZGxlciAgICAgICAgICAgICAgIDsgUFZEIGFuZCBQVk0gZGV0ZWN0b3IKKyAgICAgICAgICAgICAgICBEQ0QgICAgIFJUQ19MU0VDU1NfSVJRSGFuZGxlciAgICAgICAgICAgIDsgVEMgV2FrZXVwICsgUlRDIFRhbXBlciBhbmQgVGltZVN0YW1wICsgUlRDIEFsYXJtcyAoQSAmIEIpIGFuZCBMU0VDU1MgSW50ZXJydXB0cworICAgICAgICAgICAgICAgIERDRCAgICAgVVNCX0NSU19JUlFIYW5kbGVyICAgICAgICAgICAgICAgOyBVU0IgSGlnaCBQcmlvcml0eSwgTG93IFByaW9yaXR5IChpbmNsdWRpbmcgVVNCIHdha2V1cCkgYW5kIENSUyBJbnRlcnJ1cHRzCisgICAgICAgICAgICAgICAgRENEICAgICBSQ0NfRkxBU0hfQzFTRVZfSVJRSGFuZGxlciAgICAgICA7IFJDQzEgYW5kIEZMQVNIIGFuZCBDUFUxIE00IFNFViBJbnRlcnJ1cHQKKyAgICAgICAgICAgICAgICBEQ0QgICAgIEVYVEkxXzBfSVJRSGFuZGxlciAgICAgICAgICAgICAgIDsgRVhUSSBMaW5lIDE6MCBJbnRlcnJ1cHQKKyAgICAgICAgICAgICAgICBEQ0QgICAgIEVYVEkzXzJfSVJRSGFuZGxlciAgICAgICAgICAgICAgIDsgWFRJIExpbmUgMzoyIEludGVycnVwdAorICAgICAgICAgICAgICAgIERDRCAgICAgRVhUSTE1XzRfSVJRSGFuZGxlciAgICAgICAgICAgICAgOyBFWFRJIExpbmUgMTU6NCBpbnRlcnJ1cHQKKyAgICAgICAgICAgICAgICBEQ0QgICAgIFRTQ184MDJfMF9JUlFIYW5kbGVyICAgICAgICAgICAgIDsgVFNDIEludGVycnVwdAorICAgICAgICAgICAgICAgIERDRCAgICAgRE1BMV9DaGFubmVsMV8yXzNfSVJRSGFuZGxlciAgICAgOyBETUExIENoYW5uZWwgMSB0byAzIEludGVycnVwdAorICAgICAgICAgICAgICAgIERDRCAgICAgRE1BMV9DaGFubmVsNF81XzZfN19JUlFIYW5kbGVyICAgOyBETUExIENoYW5uZWxzIDQsNSw2LDcgSW50ZXJydXB0IAorICAgICAgICAgICAgICAgIERDRCAgICAgRE1BMl9ETUFNVVgxX09WUl9JUlFIYW5kbGVyICAgICAgOyBETUEyIENoYW5uZWxzWzEuLjddIGFuZCBETUFNVVggT3ZlcnJ1biBJbnRlcnJ1cHRzICAgICAgICAgIAorICAgICAgICAgICAgICAgIERDRCAgICAgQURDMV9DT01QX0lSUUhhbmRsZXIgICAgICAgICAgICAgOyBBREMxIGFuZCBDT01QMSBDT01QMiBJbnRlcnJ1cHQKKyAgICAgICAgICAgICAgICBEQ0QgICAgIExQVElNMV9JUlFIYW5kbGVyICAgICAgICAgICAgICAgIDsgTFBUSU0xIENoYW5uZWwgNSBJbnRlcnJ1cHQKKyAgICAgICAgICAgICAgICBEQ0QgICAgIExQVElNMl9JUlFIYW5kbGVyICAgICAgICAgICAgICAgIDsgTFBUSU0yIENoYW5uZWwgNiBJbnRlcnJ1cHQKKyAgICAgICAgICAgICAgICBEQ0QgICAgIFRJTTFfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgIDsgVElNMSBJbnRlcnJ1cHQKKyAgICAgICAgICAgICAgICBEQ0QgICAgIFRJTTJfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgIDsgVElNMiBJbnRlcnJ1cHQKKyAgICAgICAgICAgICAgICBEQ0QgICAgIFRJTTE2X0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgIDsgVElNMTYgSW50ZXJydXB0CisgICAgICAgICAgICAgICAgRENEICAgICBUSU0xN19JUlFIYW5kbGVyICAgICAgICAgICAgICAgICA7IFRJTTE3IEludGVycnVwdAorICAgICAgICAgICAgICAgIERDRCAgICAgSVBDQ19DMl9SWF9DMl9UWF9IU0VNX0lSUUhhbmRsZXIgOyBJUENDIFJYIE9jY3VwaWVkIGFuZCBUWCBGcmVlIEludGVycnVwdCBhbmQgU2VtYXBob3JlIEludGVycnVwdAorICAgICAgICAgICAgICAgIERDRCAgICAgQUVTMV9STkdfUEtBX0lSUUhhbmRsZXIgICAgICAgICAgOyBBRVMxLFJORyBhbmQgUEtBIEludGVycnVwdAorICAgICAgICAgICAgICAgIERDRCAgICAgQUVTMl9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgOyBBRVMyIEludGVycnVwdAorICAgICAgICAgICAgICAgIERDRCAgICAgXzgwMl8xX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgOyA4MDIuMTUuNCBpbnRlcnJ1cHQgMQorICAgICAgICAgICAgICAgIERDRCAgICAgSTJDMV9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgOyBJMkMxIEV2ZW50IGFuZCBFcnJvciBJbnRlcnJ1cHQKKyAgICAgICAgICAgICAgICBEQ0QgICAgIEkyQzNfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgIDsgSTJDMyBFdmVudCBhbmQgRXJyb3IgSW50ZXJydXB0CisgICAgICAgICAgICAgICAgRENEICAgICBTUEkxX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgICA7IFNQSTEgSW50ZXJydXB0cworICAgICAgICAgICAgICAgIERDRCAgICAgU1BJMl9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgOyBTUEkyIEludGVycnVwdAorICAgICAgICAgICAgICAgIERDRCAgICAgVVNBUlQxX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgOyBVU0FSVDEgSW50ZXJydXB0CisgICAgICAgICAgICAgICAgRENEICAgICBMUFVBUlQxX0lSUUhhbmRsZXIgICAgICAgICAgICAgICA7IExQVUFSVDEgSW50ZXJydXB0CisgICAgICAgICAgICAgICAgRENEICAgICAwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7IFJlc2VydmVkCisgICAgICAgICAgICAgICAgRENEICAgICBCTEVfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgICA7IEJMRSBJbnRlcnJ1cHQKKyAgICAgICAgICAgICAgICBEQ0QgICAgIF84MDJfMl9IT1NUX1dLVVBfSVJRSGFuZGxlciAgICAgIDsgODAyLjE1LjQgSW50ZXJydXB0CitfX1ZlY3RvcnNfRW5kCisKK19fVmVjdG9yc19TaXplICBFUVUgIF9fVmVjdG9yc19FbmQgLSBfX1ZlY3RvcnMKKworICAgICAgICAgICAgICAgIEFSRUEgICAgfC50ZXh0fCwgQ09ERSwgUkVBRE9OTFkKKworOyBSZXNldCBoYW5kbGVyCitSZXNldF9IYW5kbGVyICAgIFBST0MKKyAgICAgICAgICAgICAgICAgRVhQT1JUICBSZXNldF9IYW5kbGVyICAgICAgICAgICAgICAgICBbV0VBS10KKyAgICAgICAgSU1QT1JUICBTeXN0ZW1Jbml0CisgICAgICAgIElNUE9SVCAgX19tYWluCisKKyAgICAgICAgICAgICAgICAgTERSICAgICBSMCwgPVN5c3RlbUluaXQKKyAgICAgICAgICAgICAgICAgQkxYICAgICBSMAorICAgICAgICAgICAgICAgICBMRFIgICAgIFIwLCA9X19tYWluCisgICAgICAgICAgICAgICAgIEJYICAgICAgUjAKKyAgICAgICAgICAgICAgICAgRU5EUAorCis7IER1bW15IEV4Y2VwdGlvbiBIYW5kbGVycyAoaW5maW5pdGUgbG9vcHMgd2hpY2ggY2FuIGJlIG1vZGlmaWVkKQorCitOTUlfSGFuZGxlciAgICAgUFJPQworICAgICAgICAgICAgICAgIEVYUE9SVCAgTk1JX0hhbmRsZXIgICAgICAgICAgICAgICAgICAgIFtXRUFLXQorICAgICAgICAgICAgICAgIEIgICAgICAgLgorICAgICAgICAgICAgICAgIEVORFAKK0hhcmRGYXVsdF9IYW5kbGVyXAorICAgICAgICAgICAgICAgIFBST0MKKyAgICAgICAgICAgICAgICBFWFBPUlQgIEhhcmRGYXVsdF9IYW5kbGVyICAgICAgICAgICAgICBbV0VBS10KKyAgICAgICAgICAgICAgICBCICAgICAgIC4KKyAgICAgICAgICAgICAgICBFTkRQCitTVkNfSGFuZGxlciAgICAgUFJPQworICAgICAgICAgICAgICAgIEVYUE9SVCAgU1ZDX0hhbmRsZXIgICAgICAgICAgICAgICAgICAgIFtXRUFLXQorICAgICAgICAgICAgICAgIEIgICAgICAgLgorICAgICAgICAgICAgICAgIEVORFAKK1BlbmRTVl9IYW5kbGVyICBQUk9DCisgICAgICAgICAgICAgICAgRVhQT1JUICBQZW5kU1ZfSGFuZGxlciAgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgQiAgICAgICAuCisgICAgICAgICAgICAgICAgRU5EUAorU3lzVGlja19IYW5kbGVyIFBST0MKKyAgICAgICAgICAgICAgICBFWFBPUlQgIFN5c1RpY2tfSGFuZGxlciAgICAgICAgICAgICAgICBbV0VBS10KKyAgICAgICAgICAgICAgICBCICAgICAgIC4KKyAgICAgICAgICAgICAgICBFTkRQCisKK0RlZmF1bHRfSGFuZGxlciBQUk9DCisgICAgICAgICAgICAgICAgRVhQT1JUICBQVkRfUFZNX0lSUUhhbmRsZXIgICAgICAgICAgICAgICBbV0VBS10KKyAgICAgICAgICAgICAgICBFWFBPUlQgIFJUQ19MU0VDU1NfSVJRSGFuZGxlciAgICAgICAgICAgIFtXRUFLXQorICAgICAgICAgICAgICAgIEVYUE9SVCAgVVNCX0NSU19JUlFIYW5kbGVyICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBSQ0NfRkxBU0hfQzFTRVZfSVJRSGFuZGxlciAgICAgICBbV0VBS10KKyAgICAgICAgICAgICAgICBFWFBPUlQgIEVYVEkxXzBfSVJRSGFuZGxlciAgICAgICAgICAgICAgIFtXRUFLXQorICAgICAgICAgICAgICAgIEVYUE9SVCAgRVhUSTNfMl9JUlFIYW5kbGVyICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBFWFRJMTVfNF9JUlFIYW5kbGVyICAgICAgICAgICAgICBbV0VBS10KKyAgICAgICAgICAgICAgICBFWFBPUlQgIFRTQ184MDJfMF9JUlFIYW5kbGVyICAgICAgICAgICAgIFtXRUFLXQorICAgICAgICAgICAgICAgIEVYUE9SVCAgRE1BMV9DaGFubmVsMV8yXzNfSVJRSGFuZGxlciAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBETUExX0NoYW5uZWw0XzVfNl83X0lSUUhhbmRsZXIgICBbV0VBS10KKyAgICAgICAgICAgICAgICBFWFBPUlQgIERNQTJfRE1BTVVYMV9PVlJfSVJRSGFuZGxlciAgICAgIFtXRUFLXQorICAgICAgICAgICAgICAgIEVYUE9SVCAgQURDMV9DT01QX0lSUUhhbmRsZXIgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBMUFRJTTFfSVJRSGFuZGxlciAgICAgICAgICAgICAgICBbV0VBS10KKyAgICAgICAgICAgICAgICBFWFBPUlQgIExQVElNMl9JUlFIYW5kbGVyICAgICAgICAgICAgICAgIFtXRUFLXQorICAgICAgICAgICAgICAgIEVYUE9SVCAgVElNMV9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBUSU0yX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgICBbV0VBS10KKyAgICAgICAgICAgICAgICBFWFBPUlQgIFRJTTE2X0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgIFtXRUFLXQorICAgICAgICAgICAgICAgIEVYUE9SVCAgVElNMTdfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBJUENDX0MyX1JYX0MyX1RYX0hTRU1fSVJRSGFuZGxlciBbV0VBS10KKyAgICAgICAgICAgICAgICBFWFBPUlQgIEFFUzFfUk5HX1BLQV9JUlFIYW5kbGVyICAgICAgICAgIFtXRUFLXQorICAgICAgICAgICAgICAgIEVYUE9SVCAgQUVTMl9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBfODAyXzFfSVJRSGFuZGxlciAgICAgICAgICAgICAgICBbV0VBS10KKyAgICAgICAgICAgICAgICBFWFBPUlQgIEkyQzFfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgIFtXRUFLXQorICAgICAgICAgICAgICAgIEVYUE9SVCAgSTJDM19JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBTUEkxX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgICBbV0VBS10KKyAgICAgICAgICAgICAgICBFWFBPUlQgIFNQSTJfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgIFtXRUFLXQorICAgICAgICAgICAgICAgIEVYUE9SVCAgVVNBUlQxX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBMUFVBUlQxX0lSUUhhbmRsZXIgICAgICAgICAgICAgICBbV0VBS10KKyAgICAgICAgICAgICAgICBFWFBPUlQgIEJMRV9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgIFtXRUFLXQorICAgICAgICAgICAgICAgIEVYUE9SVCAgXzgwMl8yX0hPU1RfV0tVUF9JUlFIYW5kbGVyICAgICAgW1dFQUtdCisKK1BWRF9QVk1fSVJRSGFuZGxlcgorUlRDX0xTRUNTU19JUlFIYW5kbGVyCitVU0JfQ1JTX0lSUUhhbmRsZXIKK1JDQ19GTEFTSF9DMVNFVl9JUlFIYW5kbGVyCitFWFRJMV8wX0lSUUhhbmRsZXIKK0VYVEkzXzJfSVJRSGFuZGxlcgorRVhUSTE1XzRfSVJRSGFuZGxlcgorVFNDXzgwMl8wX0lSUUhhbmRsZXIKK0RNQTFfQ2hhbm5lbDFfMl8zX0lSUUhhbmRsZXIKK0RNQTFfQ2hhbm5lbDRfNV82XzdfSVJRSGFuZGxlcgorRE1BMl9ETUFNVVgxX09WUl9JUlFIYW5kbGVyCitBREMxX0NPTVBfSVJRSGFuZGxlcgorTFBUSU0xX0lSUUhhbmRsZXIKK0xQVElNMl9JUlFIYW5kbGVyCitUSU0xX0lSUUhhbmRsZXIKK1RJTTJfSVJRSGFuZGxlcgorVElNMTZfSVJRSGFuZGxlcgorVElNMTdfSVJRSGFuZGxlcgorSVBDQ19DMl9SWF9DMl9UWF9IU0VNX0lSUUhhbmRsZXIKK0FFUzFfUk5HX1BLQV9JUlFIYW5kbGVyCitBRVMyX0lSUUhhbmRsZXIKK184MDJfMV9JUlFIYW5kbGVyCitJMkMxX0lSUUhhbmRsZXIKK0kyQzNfSVJRSGFuZGxlcgorU1BJMV9JUlFIYW5kbGVyCitTUEkyX0lSUUhhbmRsZXIKK1VTQVJUMV9JUlFIYW5kbGVyCitMUFVBUlQxX0lSUUhhbmRsZXIKK0JMRV9JUlFIYW5kbGVyCitfODAyXzJfSE9TVF9XS1VQX0lSUUhhbmRsZXIKKworICAgICAgICAgICAgICAgIEIgICAgICAgLgorCisgICAgICAgICAgICAgICAgRU5EUAorCisgICAgICAgICAgICAgICAgQUxJR04KKworOyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKzsgVXNlciBTdGFjayBhbmQgSGVhcCBpbml0aWFsaXphdGlvbgorOyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAgICAgICAgICAgICAgICAgSUYgICAgICA6REVGOl9fTUlDUk9MSUIKKworICAgICAgICAgICAgICAgICBFWFBPUlQgIF9faW5pdGlhbF9zcAorICAgICAgICAgICAgICAgICBFWFBPUlQgIF9faGVhcF9iYXNlCisgICAgICAgICAgICAgICAgIEVYUE9SVCAgX19oZWFwX2xpbWl0CisKKyAgICAgICAgICAgICAgICAgRUxTRQorCisgICAgICAgICAgICAgICAgIElNUE9SVCAgX191c2VfdHdvX3JlZ2lvbl9tZW1vcnkKKyAgICAgICAgICAgICAgICAgRVhQT1JUICBfX3VzZXJfaW5pdGlhbF9zdGFja2hlYXAKKworX191c2VyX2luaXRpYWxfc3RhY2toZWFwCisKKyAgICAgICAgICAgICAgICAgTERSICAgICBSMCwgPSAgSGVhcF9NZW0KKyAgICAgICAgICAgICAgICAgTERSICAgICBSMSwgPShTdGFja19NZW0gKyBTdGFja19TaXplKQorICAgICAgICAgICAgICAgICBMRFIgICAgIFIyLCA9IChIZWFwX01lbSArICBIZWFwX1NpemUpCisgICAgICAgICAgICAgICAgIExEUiAgICAgUjMsID0gU3RhY2tfTWVtCisgICAgICAgICAgICAgICAgIEJYICAgICAgTFIKKworICAgICAgICAgICAgICAgICBBTElHTgorCisgICAgICAgICAgICAgICAgIEVORElGCisKKyAgICAgICAgICAgICAgICAgRU5ECisKKzsqKioqKioqKioqKioqKioqKioqKioqKiogKEMpIENPUFlSSUdIVCBTVE1pY3JvZWxlY3Ryb25pY3MgKioqKipFTkQgT0YgRklMRSoqKioqCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGVtcGxhdGVzL2FybS9zdGFydHVwX3N0bTMyd2IzNXh4X2NtNC5zIGIvU291cmNlL1RlbXBsYXRlcy9hcm0vc3RhcnR1cF9zdG0zMndiMzV4eF9jbTQucwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zYmE4YzliCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RlbXBsYXRlcy9hcm0vc3RhcnR1cF9zdG0zMndiMzV4eF9jbTQucwpAQCAtMCwwICsxLDM2NCBAQAorOyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorOyogRmlsZSBOYW1lICAgICAgICAgIDogc3RhcnR1cF9zdG0zMndiNTV4eF9jbTQucworOyogQXV0aG9yICAgICAgICAgICAgIDogTUNEIEFwcGxpY2F0aW9uIFRlYW0KKzsqIERlc2NyaXB0aW9uICAgICAgICA6IFNUTTMyV0I1NXh4IGRldmljZXMgdmVjdG9yIHRhYmxlIGZvciBNREstQVJNIHRvb2xjaGFpbi4KKzsqICAgICAgICAgICAgICAgICAgICAgIFRoaXMgbW9kdWxlIHBlcmZvcm1zOgorOyogICAgICAgICAgICAgICAgICAgICAgLSBTZXQgdGhlIGluaXRpYWwgU1AKKzsqICAgICAgICAgICAgICAgICAgICAgIC0gU2V0IHRoZSBpbml0aWFsIFBDID09IFJlc2V0X0hhbmRsZXIKKzsqICAgICAgICAgICAgICAgICAgICAgIC0gU2V0IHRoZSB2ZWN0b3IgdGFibGUgZW50cmllcyB3aXRoIHRoZSBleGNlcHRpb25zIElTUiBhZGRyZXNzCis7KiAgICAgICAgICAgICAgICAgICAgICAtIEJyYW5jaGVzIHRvIF9fbWFpbiBpbiB0aGUgQyBsaWJyYXJ5ICh3aGljaCBldmVudHVhbGx5Cis7KiAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxzIG1haW4oKSkuCis7KiAgICAgICAgICAgICAgICAgICAgICBBZnRlciBSZXNldCB0aGUgQ29ydGV4TTQgcHJvY2Vzc29yIGlzIGluIFRocmVhZCBtb2RlLAorOyogICAgICAgICAgICAgICAgICAgICAgcHJpb3JpdHkgaXMgUHJpdmlsZWdlZCwgYW5kIHRoZSBTdGFjayBpcyBzZXQgdG8gTWFpbi4KKzsqIDw8PCBVc2UgQ29uZmlndXJhdGlvbiBXaXphcmQgaW4gQ29udGV4dCBNZW51ID4+PiAgIAorOyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorOyogQGF0dGVudGlvbgorOyoKKzsqIENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCis7KgorOyogVGhpcyBzb2Z0d2FyZSBjb21wb25lbnQgaXMgbGljZW5zZWQgYnkgU1QgdW5kZXIgQlNEIDMtQ2xhdXNlIGxpY2Vuc2UsCis7KiB0aGUgIkxpY2Vuc2UiOyBZb3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIAorOyogTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0OgorOyogICAgICAgICAgICAgICAgICAgICAgICBvcGVuc291cmNlLm9yZy9saWNlbnNlcy9CU0QtMy1DbGF1c2UKKzsqCis7KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisKKzsgQW1vdW50IG9mIG1lbW9yeSAoaW4gYnl0ZXMpIGFsbG9jYXRlZCBmb3IgU3RhY2sKKzsgVGFpbG9yIHRoaXMgdmFsdWUgdG8geW91ciBhcHBsaWNhdGlvbiBuZWVkcworOyA8aD4gU3RhY2sgQ29uZmlndXJhdGlvbgorOyAgIDxvPiBTdGFjayBTaXplIChpbiBCeXRlcykgPDB4MC0weEZGRkZGRkZGOjg+Cis7IDwvaD4KKworU3RhY2tfU2l6ZSAgICAgIEVRVSAgICAgMHgwMDAwMDQwMAorCisgICAgICAgICAgICAgICAgQVJFQSAgICBTVEFDSywgTk9JTklULCBSRUFEV1JJVEUsIEFMSUdOPTMKK1N0YWNrX01lbSAgICAgICBTUEFDRSAgIFN0YWNrX1NpemUKK19faW5pdGlhbF9zcAorCisKKzsgPGg+IEhlYXAgQ29uZmlndXJhdGlvbgorOyAgIDxvPiAgSGVhcCBTaXplIChpbiBCeXRlcykgPDB4MC0weEZGRkZGRkZGOjg+Cis7IDwvaD4KKworSGVhcF9TaXplICAgICAgIEVRVSAgICAgMHgwMDAwMDIwMAorCisgICAgICAgICAgICAgICAgQVJFQSAgICBIRUFQLCBOT0lOSVQsIFJFQURXUklURSwgQUxJR049MworX19oZWFwX2Jhc2UKK0hlYXBfTWVtICAgICAgICBTUEFDRSAgIEhlYXBfU2l6ZQorX19oZWFwX2xpbWl0CisKKyAgICAgICAgICAgICAgICBQUkVTRVJWRTgKKyAgICAgICAgICAgICAgICBUSFVNQgorCisKKzsgVmVjdG9yIFRhYmxlIE1hcHBlZCB0byBBZGRyZXNzIDAgYXQgUmVzZXQKKyAgICAgICAgICAgICAgICBBUkVBICAgIFJFU0VULCBEQVRBLCBSRUFET05MWQorICAgICAgICAgICAgICAgIEVYUE9SVCAgX19WZWN0b3JzCisgICAgICAgICAgICAgICAgRVhQT1JUICBfX1ZlY3RvcnNfRW5kCisgICAgICAgICAgICAgICAgRVhQT1JUICBfX1ZlY3RvcnNfU2l6ZQorCitfX1ZlY3RvcnMgICAgICAgRENEICAgICBfX2luaXRpYWxfc3AgICAgICAgICAgICAgIDsgVG9wIG9mIFN0YWNrCisgICAgICAgIERDRCAgICAgUmVzZXRfSGFuZGxlciAgICAgICAgICAgICAgICAgICAgIDsgUmVzZXQgSGFuZGxlcgorICAgICAgICBEQ0QgICAgIE5NSV9IYW5kbGVyICAgICAgICAgICAgICAgICAgICAgICA7IE5NSSBIYW5kbGVyCisgICAgICAgIERDRCAgICAgSGFyZEZhdWx0X0hhbmRsZXIgICAgICAgICAgICAgICAgIDsgSGFyZCBGYXVsdCBIYW5kbGVyCisgICAgICAgIERDRCAgICAgTWVtTWFuYWdlX0hhbmRsZXIgICAgICAgICAgICAgICAgIDsgTVBVIEZhdWx0IEhhbmRsZXIKKyAgICAgICAgRENEICAgICBCdXNGYXVsdF9IYW5kbGVyICAgICAgICAgICAgICAgICAgOyBCdXMgRmF1bHQgSGFuZGxlcgorICAgICAgICBEQ0QgICAgIFVzYWdlRmF1bHRfSGFuZGxlciAgICAgICAgICAgICAgICA7IFVzYWdlIEZhdWx0IEhhbmRsZXIKKyAgICAgICAgRENEICAgICAwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOyBSZXNlcnZlZAorICAgICAgICBEQ0QgICAgIDAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7IFJlc2VydmVkCisgICAgICAgIERDRCAgICAgMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDsgUmVzZXJ2ZWQKKyAgICAgICAgRENEICAgICAwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOyBSZXNlcnZlZAorICAgICAgICBEQ0QgICAgIFNWQ19IYW5kbGVyICAgICAgICAgICAgICAgICAgICAgICA7IFNWQ2FsbCBIYW5kbGVyCisgICAgICAgIERDRCAgICAgRGVidWdNb25fSGFuZGxlciAgICAgICAgICAgICAgICAgIDsgRGVidWcgTW9uaXRvciBIYW5kbGVyCisgICAgICAgIERDRCAgICAgMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDsgUmVzZXJ2ZWQKKyAgICAgICAgRENEICAgICBQZW5kU1ZfSGFuZGxlciAgICAgICAgICAgICAgICAgICAgOyBQZW5kU1YgSGFuZGxlcgorICAgICAgICBEQ0QgICAgIFN5c1RpY2tfSGFuZGxlciAgICAgICAgICAgICAgICAgICA7IFN5c1RpY2sgSGFuZGxlcgorCisgICAgICAgICA7IEV4dGVybmFsIEludGVycnVwdHMKKyAgICAgICAgRENEICAgICBXV0RHX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgICAgOyBXaW5kb3cgV2F0Y2hEb2cKKyAgICAgICAgRENEICAgICBQVkRfUFZNX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgOyBQVkQgYW5kIFBWTSBkZXRlY3RvcgorICAgICAgICBEQ0QgICAgIFRBTVBfU1RBTVBfTFNFQ1NTX0lSUUhhbmRsZXIgICAgICA7IFJUQyBUYW1wZXIgYW5kIFRpbWVTdGFtcCBJbnRlcnJ1cHRzIGFuZCBMU0VDU1MgSW50ZXJydXB0cworICAgICAgICBEQ0QgICAgIFJUQ19XS1VQX0lSUUhhbmRsZXIgICAgICAgICAgICAgICA7IFJUQyBXYWtldXAgSW50ZXJydXB0CisgICAgICAgIERDRCAgICAgRkxBU0hfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgIDsgRkxBU0ggZ2xvYmFsIEludGVycnVwdAorICAgICAgICBEQ0QgICAgIFJDQ19JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgICA7IFJDQyBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBFWFRJMF9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgOyBFWFRJIExpbmUgMCBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBFWFRJMV9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgOyBFWFRJIExpbmUgMSBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBFWFRJMl9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgOyBFWFRJIExpbmUgMiBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBFWFRJM19JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgOyBFWFRJIExpbmUgMyBJbnRlcnJ1cAorICAgICAgICBEQ0QgICAgIEVYVEk0X0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgICA7IEVYVEkgTGluZSA0IEludGVycnVwdAorICAgICAgICBEQ0QgICAgIERNQTFfQ2hhbm5lbDFfSVJRSGFuZGxlciAgICAgICAgICA7IERNQTEgQ2hhbm5lbCAxIEludGVycnVwdAorICAgICAgICBEQ0QgICAgIERNQTFfQ2hhbm5lbDJfSVJRSGFuZGxlciAgICAgICAgICA7IERNQTEgQ2hhbm5lbCAyIEludGVycnVwdAorICAgICAgICBEQ0QgICAgIERNQTFfQ2hhbm5lbDNfSVJRSGFuZGxlciAgICAgICAgICA7IERNQTEgQ2hhbm5lbCAzIEludGVycnVwdAorICAgICAgICBEQ0QgICAgIERNQTFfQ2hhbm5lbDRfSVJRSGFuZGxlciAgICAgICAgICA7IERNQTEgQ2hhbm5lbCA0IEludGVycnVwdAorICAgICAgICBEQ0QgICAgIERNQTFfQ2hhbm5lbDVfSVJRSGFuZGxlciAgICAgICAgICA7IERNQTEgQ2hhbm5lbCA1IEludGVycnVwdAorICAgICAgICBEQ0QgICAgIERNQTFfQ2hhbm5lbDZfSVJRSGFuZGxlciAgICAgICAgICA7IERNQTEgQ2hhbm5lbCA2IEludGVycnVwdAorICAgICAgICBEQ0QgICAgIERNQTFfQ2hhbm5lbDdfSVJRSGFuZGxlciAgICAgICAgICA7IERNQTEgQ2hhbm5lbCA3IEludGVycnVwdAorICAgICAgICBEQ0QgICAgIEFEQzFfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgICA7IEFEQzEgSW50ZXJydXB0CisgICAgICAgIERDRCAgICAgVVNCX0hQX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgIDsgVVNCIEhpZ2ggUHJpb3JpdHkgSW50ZXJydXB0CisgICAgICAgIERDRCAgICAgVVNCX0xQX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgIDsgVVNCIExvdyBQcmlvcml0eSBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBDMlNFVl9QV1JfQzJIX0lSUUhhbmRsZXIgICAgICAgICAgOyBDUFUgTTArIFNFViBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBDT01QX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgICAgOyBDT01QMSBhbmQgQ09NUDIgIEludGVycnVwdHMKKyAgICAgICAgRENEICAgICBFWFRJOV81X0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgOyBFWFRJIExpbmVzIFs5OjVdIEludGVycnVwdAorICAgICAgICBEQ0QgICAgIFRJTTFfQlJLX0lSUUhhbmRsZXIgICAgICAgICAgICAgICA7IFRJTTEgQnJlYWsgSW50ZXJydXB0CisgICAgICAgIERDRCAgICAgVElNMV9VUF9USU0xNl9JUlFIYW5kbGVyICAgICAgICAgIDsgVElNMSBVcGRhdGUgYW5kIFRJTTE2IGdsb2JhbCBJbnRlcnJ1cHRzCisgICAgICAgIERDRCAgICAgVElNMV9UUkdfQ09NX1RJTTE3X0lSUUhhbmRsZXIgICAgIDsgVElNMSBUcmlnZ2VyIGFuZCBDb21tdW5pY2F0aW9uIGFuZCBUSU0xNyBnbG9iYWwgSW50ZXJydXB0cworICAgICAgICBEQ0QgICAgIFRJTTFfQ0NfSVJRSGFuZGxlciAgICAgICAgICAgICAgICA7IFRJTTEgQ2FwdHVyZSBDb21wYXJlIEludGVycnVwdAorICAgICAgICBEQ0QgICAgIFRJTTJfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgICA7IFRJTTIgR2xvYmFsIEludGVycnVwdAorICAgICAgICBEQ0QgICAgIFBLQV9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgICA7IFBLQSBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBJMkMxX0VWX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgOyBJMkMxIEV2ZW50IEludGVycnVwdAorICAgICAgICBEQ0QgICAgIEkyQzFfRVJfSVJRSGFuZGxlciAgICAgICAgICAgICAgICA7IEkyQzEgRXJyb3IgSW50ZXJydXB0CisgICAgICAgIERDRCAgICAgSTJDM19FVl9JUlFIYW5kbGVyICAgICAgICAgICAgICAgIDsgSTJDMyBFdmVudCBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBJMkMzX0VSX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgOyBJMkMzIEVycm9yIEludGVycnVwdAorICAgICAgICBEQ0QgICAgIFNQSTFfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgICA7IFNQSTEgSW50ZXJydXB0CisgICAgICAgIERDRCAgICAgU1BJMl9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgIDsgU1BJMiBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBVU0FSVDFfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgOyBVU0FSVDEgSW50ZXJydXB0CisgICAgICAgIERDRCAgICAgTFBVQVJUMV9JUlFIYW5kbGVyICAgICAgICAgICAgICAgIDsgTFBVQVJUMSBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICAwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOyBSZXNlcnZlZAorICAgICAgICBEQ0QgICAgIFRTQ19JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgICA7IFRTQyBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBFWFRJMTVfMTBfSVJRSGFuZGxlciAgICAgICAgICAgICAgOyBFWFRJIExpbmVzMVsxNToxMCBdSW50ZXJydXB0cworICAgICAgICBEQ0QgICAgIFJUQ19BbGFybV9JUlFIYW5kbGVyICAgICAgICAgICAgICA7IFJUQyBBbGFybXMgKEEgYW5kIEIpIEludGVycnVwdAorICAgICAgICBEQ0QgICAgIENSU19JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgICA7IENSUyBpbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBQV1JfU09URl9CTEVBQ1RfODAyQUNUX1JGUEhBU0VfSVJRSGFuZGxlciA7IFdLVVAgSW50ZXJydXB0IGZyb20gUFdSCisgICAgICAgIERDRCAgICAgSVBDQ19DMV9SWF9JUlFIYW5kbGVyICAgICAgICAgICAgIDsgSVBDQyBDUFUxIFJYIG9jY3VwaWVkIGludGVycnVwdAorICAgICAgICBEQ0QgICAgIElQQ0NfQzFfVFhfSVJRSGFuZGxlciAgICAgICAgICAgICA7IElQQ0MgQ1BVMSBSWCBmcmVlIGludGVycnVwdAorICAgICAgICBEQ0QgICAgIEhTRU1fSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgICA7IEhTRU0wIEludGVycnVwdAorICAgICAgICBEQ0QgICAgIExQVElNMV9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICA7IExQVElNMSBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBMUFRJTTJfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgOyBMUFRJTTIgSW50ZXJydXB0CisgICAgICAgIERDRCAgICAgMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDsgUmVzZXJ2ZWQKKyAgICAgICAgRENEICAgICBRVUFEU1BJX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgOyBRVUFEU1BJIEludGVycnVwdAorICAgICAgICBEQ0QgICAgIEFFUzFfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgICA7IEFFUzEgSW50ZXJydXB0CisgICAgICAgIERDRCAgICAgQUVTMl9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgIDsgQUVTMiBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBSTkdfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgICAgOyBSTkcxIEludGVycnVwdAorICAgICAgICBEQ0QgICAgIEZQVV9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgICA7IEZQVSBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBETUEyX0NoYW5uZWwxX0lSUUhhbmRsZXIgICAgICAgICAgOyBETUEyIENoYW5uZWwgMSBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBETUEyX0NoYW5uZWwyX0lSUUhhbmRsZXIgICAgICAgICAgOyBETUEyIENoYW5uZWwgMiBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBETUEyX0NoYW5uZWwzX0lSUUhhbmRsZXIgICAgICAgICAgOyBETUEyIENoYW5uZWwgMyBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBETUEyX0NoYW5uZWw0X0lSUUhhbmRsZXIgICAgICAgICAgOyBETUEyIENoYW5uZWwgNCBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBETUEyX0NoYW5uZWw1X0lSUUhhbmRsZXIgICAgICAgICAgOyBETUEyIENoYW5uZWwgNSBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBETUEyX0NoYW5uZWw2X0lSUUhhbmRsZXIgICAgICAgICAgOyBETUEyIENoYW5uZWwgNiBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBETUEyX0NoYW5uZWw3X0lSUUhhbmRsZXIgICAgICAgICAgOyBETUEyIENoYW5uZWwgNyBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBETUFNVVgxX09WUl9JUlFIYW5kbGVyICAgICAgICAgICAgOyBETUFNVVggb3ZlcnJ1biBJbnRlcnJ1cHQKKworX19WZWN0b3JzX0VuZAorCitfX1ZlY3RvcnNfU2l6ZSAgRVFVICBfX1ZlY3RvcnNfRW5kIC0gX19WZWN0b3JzCisKKyAgICAgICAgICAgICAgICBBUkVBICAgIHwudGV4dHwsIENPREUsIFJFQURPTkxZCisKKzsgUmVzZXQgaGFuZGxlcgorUmVzZXRfSGFuZGxlciAgICBQUk9DCisgICAgICAgICAgICAgICAgIEVYUE9SVCAgUmVzZXRfSGFuZGxlciAgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgIElNUE9SVCAgU3lzdGVtSW5pdAorICAgICAgICBJTVBPUlQgIF9fbWFpbgorCisgICAgICAgICAgICAgICAgIExEUiAgICAgUjAsID1TeXN0ZW1Jbml0CisgICAgICAgICAgICAgICAgIEJMWCAgICAgUjAKKyAgICAgICAgICAgICAgICAgTERSICAgICBSMCwgPV9fbWFpbgorICAgICAgICAgICAgICAgICBCWCAgICAgIFIwCisgICAgICAgICAgICAgICAgIEVORFAKKworOyBEdW1teSBFeGNlcHRpb24gSGFuZGxlcnMgKGluZmluaXRlIGxvb3BzIHdoaWNoIGNhbiBiZSBtb2RpZmllZCkKKworTk1JX0hhbmRsZXIgICAgIFBST0MKKyAgICAgICAgICAgICAgICBFWFBPUlQgIE5NSV9IYW5kbGVyICAgICAgICAgICAgICAgICAgICBbV0VBS10KKyAgICAgICAgICAgICAgICBCICAgICAgIC4KKyAgICAgICAgICAgICAgICBFTkRQCitIYXJkRmF1bHRfSGFuZGxlclwKKyAgICAgICAgICAgICAgICBQUk9DCisgICAgICAgICAgICAgICAgRVhQT1JUICBIYXJkRmF1bHRfSGFuZGxlciAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgQiAgICAgICAuCisgICAgICAgICAgICAgICAgRU5EUAorTWVtTWFuYWdlX0hhbmRsZXJcCisgICAgICAgICAgICAgICAgUFJPQworICAgICAgICAgICAgICAgIEVYUE9SVCAgTWVtTWFuYWdlX0hhbmRsZXIgICAgICAgICAgICAgIFtXRUFLXQorICAgICAgICAgICAgICAgIEIgICAgICAgLgorICAgICAgICAgICAgICAgIEVORFAKK0J1c0ZhdWx0X0hhbmRsZXJcCisgICAgICAgICAgICAgICAgUFJPQworICAgICAgICAgICAgICAgIEVYUE9SVCAgQnVzRmF1bHRfSGFuZGxlciAgICAgICAgICAgICAgIFtXRUFLXQorICAgICAgICAgICAgICAgIEIgICAgICAgLgorICAgICAgICAgICAgICAgIEVORFAKK1VzYWdlRmF1bHRfSGFuZGxlclwKKyAgICAgICAgICAgICAgICBQUk9DCisgICAgICAgICAgICAgICAgRVhQT1JUICBVc2FnZUZhdWx0X0hhbmRsZXIgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgQiAgICAgICAuCisgICAgICAgICAgICAgICAgRU5EUAorU1ZDX0hhbmRsZXIgICAgIFBST0MKKyAgICAgICAgICAgICAgICBFWFBPUlQgIFNWQ19IYW5kbGVyICAgICAgICAgICAgICAgICAgICBbV0VBS10KKyAgICAgICAgICAgICAgICBCICAgICAgIC4KKyAgICAgICAgICAgICAgICBFTkRQCitEZWJ1Z01vbl9IYW5kbGVyXAorICAgICAgICAgICAgICAgIFBST0MKKyAgICAgICAgICAgICAgICBFWFBPUlQgIERlYnVnTW9uX0hhbmRsZXIgICAgICAgICAgICAgICBbV0VBS10KKyAgICAgICAgICAgICAgICBCICAgICAgIC4KKyAgICAgICAgICAgICAgICBFTkRQCitQZW5kU1ZfSGFuZGxlciAgUFJPQworICAgICAgICAgICAgICAgIEVYUE9SVCAgUGVuZFNWX0hhbmRsZXIgICAgICAgICAgICAgICAgIFtXRUFLXQorICAgICAgICAgICAgICAgIEIgICAgICAgLgorICAgICAgICAgICAgICAgIEVORFAKK1N5c1RpY2tfSGFuZGxlciBQUk9DCisgICAgICAgICAgICAgICAgRVhQT1JUICBTeXNUaWNrX0hhbmRsZXIgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgQiAgICAgICAuCisgICAgICAgICAgICAgICAgRU5EUAorCitEZWZhdWx0X0hhbmRsZXIgUFJPQworCisgICAgICAgICAgICAgICAgRVhQT1JUICBXV0RHX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBQVkRfUFZNX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBUQU1QX1NUQU1QX0xTRUNTU19JUlFIYW5kbGVyICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBSVENfV0tVUF9JUlFIYW5kbGVyICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBGTEFTSF9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBSQ0NfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBFWFRJMF9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBFWFRJMV9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBFWFRJMl9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBFWFRJM19JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBFWFRJNF9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBETUExX0NoYW5uZWwxX0lSUUhhbmRsZXIgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBETUExX0NoYW5uZWwyX0lSUUhhbmRsZXIgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBETUExX0NoYW5uZWwzX0lSUUhhbmRsZXIgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBETUExX0NoYW5uZWw0X0lSUUhhbmRsZXIgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBETUExX0NoYW5uZWw1X0lSUUhhbmRsZXIgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBETUExX0NoYW5uZWw2X0lSUUhhbmRsZXIgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBETUExX0NoYW5uZWw3X0lSUUhhbmRsZXIgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBBREMxX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBVU0JfSFBfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBVU0JfTFBfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBDMlNFVl9QV1JfQzJIX0lSUUhhbmRsZXIgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBDT01QX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBFWFRJOV81X0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBUSU0xX0JSS19JUlFIYW5kbGVyICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBUSU0xX1VQX1RJTTE2X0lSUUhhbmRsZXIgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBUSU0xX1RSR19DT01fVElNMTdfSVJRSGFuZGxlciAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBUSU0xX0NDX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBUSU0yX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBQS0FfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBJMkMxX0VWX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBJMkMxX0VSX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBJMkMzX0VWX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBJMkMzX0VSX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBTUEkxX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBTUEkyX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBVU0FSVDFfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBMUFVBUlQxX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBUU0NfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBFWFRJMTVfMTBfSVJRSGFuZGxlciAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBSVENfQWxhcm1fSVJRSGFuZGxlciAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBDUlNfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgICAgW1dFQUtdCisgICAgICAgICAgICAgICAgRVhQT1JUICBQV1JfU09URl9CTEVBQ1RfODAyQUNUX1JGUEhBU0VfSVJRSGFuZGxlciBbV0VBS10KKyAgICAgICAgICAgICAgICBFWFBPUlQgIElQQ0NfQzFfUlhfSVJRSGFuZGxlciAgICAgICAgICAgICBbV0VBS10KKyAgICAgICAgICAgICAgICBFWFBPUlQgIElQQ0NfQzFfVFhfSVJRSGFuZGxlciAgICAgICAgICAgICBbV0VBS10KKyAgICAgICAgICAgICAgICBFWFBPUlQgIEhTRU1fSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgICBbV0VBS10KKyAgICAgICAgICAgICAgICBFWFBPUlQgIExQVElNMV9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICBbV0VBS10KKyAgICAgICAgICAgICAgICBFWFBPUlQgIExQVElNMl9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICBbV0VBS10KKyAgICAgICAgICAgICAgICBFWFBPUlQgIFFVQURTUElfSVJRSGFuZGxlciAgICAgICAgICAgICAgICBbV0VBS10KKyAgICAgICAgICAgICAgICBFWFBPUlQgIEFFUzFfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgICBbV0VBS10KKyAgICAgICAgICAgICAgICBFWFBPUlQgIEFFUzJfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgICBbV0VBS10KKyAgICAgICAgICAgICAgICBFWFBPUlQgIFJOR19JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgICBbV0VBS10KKyAgICAgICAgICAgICAgICBFWFBPUlQgIEZQVV9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgICBbV0VBS10KKyAgICAgICAgICAgICAgICBFWFBPUlQgIERNQTJfQ2hhbm5lbDFfSVJRSGFuZGxlciAgICAgICAgICBbV0VBS10KKyAgICAgICAgICAgICAgICBFWFBPUlQgIERNQTJfQ2hhbm5lbDJfSVJRSGFuZGxlciAgICAgICAgICBbV0VBS10KKyAgICAgICAgICAgICAgICBFWFBPUlQgIERNQTJfQ2hhbm5lbDNfSVJRSGFuZGxlciAgICAgICAgICBbV0VBS10KKyAgICAgICAgICAgICAgICBFWFBPUlQgIERNQTJfQ2hhbm5lbDRfSVJRSGFuZGxlciAgICAgICAgICBbV0VBS10KKyAgICAgICAgICAgICAgICBFWFBPUlQgIERNQTJfQ2hhbm5lbDVfSVJRSGFuZGxlciAgICAgICAgICBbV0VBS10KKyAgICAgICAgICAgICAgICBFWFBPUlQgIERNQTJfQ2hhbm5lbDZfSVJRSGFuZGxlciAgICAgICAgICBbV0VBS10KKyAgICAgICAgICAgICAgICBFWFBPUlQgIERNQTJfQ2hhbm5lbDdfSVJRSGFuZGxlciAgICAgICAgICBbV0VBS10KKyAgICAgICAgICAgICAgICBFWFBPUlQgIERNQU1VWDFfT1ZSX0lSUUhhbmRsZXIgICAgICAgICAgICBbV0VBS10KKworV1dER19JUlFIYW5kbGVyCitQVkRfUFZNX0lSUUhhbmRsZXIKK1RBTVBfU1RBTVBfTFNFQ1NTX0lSUUhhbmRsZXIKK1JUQ19XS1VQX0lSUUhhbmRsZXIKK0ZMQVNIX0lSUUhhbmRsZXIKK1JDQ19JUlFIYW5kbGVyCitFWFRJMF9JUlFIYW5kbGVyCitFWFRJMV9JUlFIYW5kbGVyCitFWFRJMl9JUlFIYW5kbGVyCitFWFRJM19JUlFIYW5kbGVyCitFWFRJNF9JUlFIYW5kbGVyCitETUExX0NoYW5uZWwxX0lSUUhhbmRsZXIKK0RNQTFfQ2hhbm5lbDJfSVJRSGFuZGxlcgorRE1BMV9DaGFubmVsM19JUlFIYW5kbGVyCitETUExX0NoYW5uZWw0X0lSUUhhbmRsZXIKK0RNQTFfQ2hhbm5lbDVfSVJRSGFuZGxlcgorRE1BMV9DaGFubmVsNl9JUlFIYW5kbGVyCitETUExX0NoYW5uZWw3X0lSUUhhbmRsZXIKK0FEQzFfSVJRSGFuZGxlcgorVVNCX0hQX0lSUUhhbmRsZXIKK1VTQl9MUF9JUlFIYW5kbGVyCitDMlNFVl9QV1JfQzJIX0lSUUhhbmRsZXIKK0NPTVBfSVJRSGFuZGxlcgorRVhUSTlfNV9JUlFIYW5kbGVyCitUSU0xX0JSS19JUlFIYW5kbGVyCitUSU0xX1VQX1RJTTE2X0lSUUhhbmRsZXIKK1RJTTFfVFJHX0NPTV9USU0xN19JUlFIYW5kbGVyCitUSU0xX0NDX0lSUUhhbmRsZXIKK1RJTTJfSVJRSGFuZGxlcgorUEtBX0lSUUhhbmRsZXIKK0kyQzFfRVZfSVJRSGFuZGxlcgorSTJDMV9FUl9JUlFIYW5kbGVyCitJMkMzX0VWX0lSUUhhbmRsZXIKK0kyQzNfRVJfSVJRSGFuZGxlcgorU1BJMV9JUlFIYW5kbGVyCitTUEkyX0lSUUhhbmRsZXIKK1VTQVJUMV9JUlFIYW5kbGVyCitMUFVBUlQxX0lSUUhhbmRsZXIKK1RTQ19JUlFIYW5kbGVyCitFWFRJMTVfMTBfSVJRSGFuZGxlcgorUlRDX0FsYXJtX0lSUUhhbmRsZXIKK0NSU19JUlFIYW5kbGVyCitQV1JfU09URl9CTEVBQ1RfODAyQUNUX1JGUEhBU0VfSVJRSGFuZGxlcgorSVBDQ19DMV9SWF9JUlFIYW5kbGVyCitJUENDX0MxX1RYX0lSUUhhbmRsZXIKK0hTRU1fSVJRSGFuZGxlcgorTFBUSU0xX0lSUUhhbmRsZXIKK0xQVElNMl9JUlFIYW5kbGVyCitRVUFEU1BJX0lSUUhhbmRsZXIKK0FFUzFfSVJRSGFuZGxlcgorQUVTMl9JUlFIYW5kbGVyCitSTkdfSVJRSGFuZGxlcgorRlBVX0lSUUhhbmRsZXIKK0RNQTJfQ2hhbm5lbDFfSVJRSGFuZGxlcgorRE1BMl9DaGFubmVsMl9JUlFIYW5kbGVyCitETUEyX0NoYW5uZWwzX0lSUUhhbmRsZXIKK0RNQTJfQ2hhbm5lbDRfSVJRSGFuZGxlcgorRE1BMl9DaGFubmVsNV9JUlFIYW5kbGVyCitETUEyX0NoYW5uZWw2X0lSUUhhbmRsZXIKK0RNQTJfQ2hhbm5lbDdfSVJRSGFuZGxlcgorRE1BTVVYMV9PVlJfSVJRSGFuZGxlcgorCisgICAgICAgICAgICAgICAgQiAgICAgICAuCisKKyAgICAgICAgICAgICAgICBFTkRQCisKKyAgICAgICAgICAgICAgICBBTElHTgorCis7KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorOyBVc2VyIFN0YWNrIGFuZCBIZWFwIGluaXRpYWxpemF0aW9uCis7KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICAgICAgICAgICAgICAgICBJRiAgICAgIDpERUY6X19NSUNST0xJQgorCisgICAgICAgICAgICAgICAgIEVYUE9SVCAgX19pbml0aWFsX3NwCisgICAgICAgICAgICAgICAgIEVYUE9SVCAgX19oZWFwX2Jhc2UKKyAgICAgICAgICAgICAgICAgRVhQT1JUICBfX2hlYXBfbGltaXQKKworICAgICAgICAgICAgICAgICBFTFNFCisKKyAgICAgICAgICAgICAgICAgSU1QT1JUICBfX3VzZV90d29fcmVnaW9uX21lbW9yeQorICAgICAgICAgICAgICAgICBFWFBPUlQgIF9fdXNlcl9pbml0aWFsX3N0YWNraGVhcAorCitfX3VzZXJfaW5pdGlhbF9zdGFja2hlYXAKKworICAgICAgICAgICAgICAgICBMRFIgICAgIFIwLCA9ICBIZWFwX01lbQorICAgICAgICAgICAgICAgICBMRFIgICAgIFIxLCA9KFN0YWNrX01lbSArIFN0YWNrX1NpemUpCisgICAgICAgICAgICAgICAgIExEUiAgICAgUjIsID0gKEhlYXBfTWVtICsgIEhlYXBfU2l6ZSkKKyAgICAgICAgICAgICAgICAgTERSICAgICBSMywgPSBTdGFja19NZW0KKyAgICAgICAgICAgICAgICAgQlggICAgICBMUgorCisgICAgICAgICAgICAgICAgIEFMSUdOCisKKyAgICAgICAgICAgICAgICAgRU5ESUYKKworICAgICAgICAgICAgICAgICBFTkQKKworOyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKioKZGlmZiAtLWdpdCBhL1NvdXJjZS9UZW1wbGF0ZXMvZ2NjL2xpbmtlci9zdG0zMndiMzV4eF9mbGFzaF9jbTQubGQgYi9Tb3VyY2UvVGVtcGxhdGVzL2djYy9saW5rZXIvc3RtMzJ3YjM1eHhfZmxhc2hfY200LmxkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQ4ZmZjYmMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGVtcGxhdGVzL2djYy9saW5rZXIvc3RtMzJ3YjM1eHhfZmxhc2hfY200LmxkCkBAIC0wLDAgKzEsMTg3IEBACisvKioKKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisqKgorKiogIEZpbGUgICAgICAgIDogc3RtMzJ3YjM1eHhfZmxhc2hfY200LmxkCisqKgorKiogIEFic3RyYWN0ICAgIDogU3lzdGVtIFdvcmtiZW5jaCBNaW5pbWFsIFN5c3RlbSBjYWxscyBmaWxlCisqKgorKiogCQkgICAgICAgICAgRm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgd2hpY2ggYy1mdW5jdGlvbnMKKyoqICAgICAgICAgICAgICAgIG5lZWQgd2hpY2ggb2YgdGhlc2UgbG93bGV2ZWwgZnVuY3Rpb25zCisqKiAgICAgICAgICAgICAgICBwbGVhc2UgY29uc3VsdCB0aGUgTmV3bGliIGxpYmMtbWFudWFsCisqKgorKiogIEVudmlyb25tZW50IDogU3lzdGVtIFdvcmtiZW5jaCBmb3IgTUNVCisqKgorKiogIERpc3RyaWJ1dGlvbjogVGhlIGZpbGUgaXMgZGlzdHJpYnV0ZWQg4oCcYXMgaXMs4oCdIHdpdGhvdXQgYW55IHdhcnJhbnR5CisqKiAgICAgICAgICAgICAgICBvZiBhbnkga2luZC4KKyoqCisqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorKioKKyoqIDxoMj48Y2VudGVyPiZjb3B5OyBDT1BZUklHSFQoYykgMjAxOSBBYzY8L2NlbnRlcj48L2gyPgorKioKKyoqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisqKiBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisqKiAgIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyoqICAgICAgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyoqICAgMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorKiogICAgICB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisqKiAgICAgIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorKiogICAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIEFjNiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyoqICAgICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisqKiAgICAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorKioKKyoqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIgorKiogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorKiogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisqKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCisqKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorKiogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IKKyoqIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSCisqKiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAorKiogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyoqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqKgorKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyovCisKKy8qIEVudHJ5IFBvaW50ICovCitFTlRSWShSZXNldF9IYW5kbGVyKQorCisvKiBIaWdoZXN0IGFkZHJlc3Mgb2YgdGhlIHVzZXIgbW9kZSBzdGFjayAqLworX2VzdGFjayA9IDB4MjAwMDgwMDA7ICAgIC8qIGVuZCBvZiBSQU0gKi8KKy8qIEdlbmVyYXRlIGEgbGluayBlcnJvciBpZiBoZWFwIGFuZCBzdGFjayBkb24ndCBmaXQgaW50byBSQU0gKi8KK19NaW5fSGVhcF9TaXplID0gMHg0MDA7ICAgICAgLyogcmVxdWlyZWQgYW1vdW50IG9mIGhlYXAgICovCitfTWluX1N0YWNrX1NpemUgPSAweDEwMDA7ICAgLyogcmVxdWlyZWQgYW1vdW50IG9mIHN0YWNrICovCisKKy8qIFNwZWNpZnkgdGhlIG1lbW9yeSBhcmVhcyAqLworTUVNT1JZCit7CitGTEFTSCAocngpICAgICAgICAgICAgICAgICA6IE9SSUdJTiA9IDB4MDgwMDAwMDAsIExFTkdUSCA9IDUxMksKK1JBTTEgKHhydykgICAgICAgICAgICAgICAgIDogT1JJR0lOID0gMHgyMDAwMDAwNCwgTEVOR1RIID0gMHg3RkZDCitSQU1fU0hBUkVEICh4cncpICAgICAgICAgICA6IE9SSUdJTiA9IDB4MjAwMzAwMDAsIExFTkdUSCA9IDEwSworfQorCisvKiBEZWZpbmUgb3V0cHV0IHNlY3Rpb25zICovCitTRUNUSU9OUworeworICAvKiBUaGUgc3RhcnR1cCBjb2RlIGdvZXMgZmlyc3QgaW50byBGTEFTSCAqLworICAuaXNyX3ZlY3RvciA6CisgIHsKKyAgICAuID0gQUxJR04oNCk7CisgICAgS0VFUCgqKC5pc3JfdmVjdG9yKSkgLyogU3RhcnR1cCBjb2RlICovCisgICAgLiA9IEFMSUdOKDQpOworICB9ID5GTEFTSAorCisgIC8qIFRoZSBwcm9ncmFtIGNvZGUgYW5kIG90aGVyIGRhdGEgZ29lcyBpbnRvIEZMQVNIICovCisgIC50ZXh0IDoKKyAgeworICAgIC4gPSBBTElHTig0KTsKKyAgICAqKC50ZXh0KSAgICAgICAgICAgLyogLnRleHQgc2VjdGlvbnMgKGNvZGUpICovCisgICAgKigudGV4dCopICAgICAgICAgIC8qIC50ZXh0KiBzZWN0aW9ucyAoY29kZSkgKi8KKyAgICAqKC5nbHVlXzcpICAgICAgICAgLyogZ2x1ZSBhcm0gdG8gdGh1bWIgY29kZSAqLworICAgICooLmdsdWVfN3QpICAgICAgICAvKiBnbHVlIHRodW1iIHRvIGFybSBjb2RlICovCisgICAgKiguZWhfZnJhbWUpCisKKyAgICBLRUVQICgqKC5pbml0KSkKKyAgICBLRUVQICgqKC5maW5pKSkKKworICAgIC4gPSBBTElHTig0KTsKKyAgICBfZXRleHQgPSAuOyAgICAgICAgLyogZGVmaW5lIGEgZ2xvYmFsIHN5bWJvbHMgYXQgZW5kIG9mIGNvZGUgKi8KKyAgfSA+RkxBU0gKKworICAvKiBDb25zdGFudCBkYXRhIGdvZXMgaW50byBGTEFTSCAqLworICAucm9kYXRhIDoKKyAgeworICAgIC4gPSBBTElHTig0KTsKKyAgICAqKC5yb2RhdGEpICAgICAgICAgLyogLnJvZGF0YSBzZWN0aW9ucyAoY29uc3RhbnRzLCBzdHJpbmdzLCBldGMuKSAqLworICAgICooLnJvZGF0YSopICAgICAgICAvKiAucm9kYXRhKiBzZWN0aW9ucyAoY29uc3RhbnRzLCBzdHJpbmdzLCBldGMuKSAqLworICAgIC4gPSBBTElHTig0KTsKKyAgfSA+RkxBU0gKKworICAuQVJNLmV4dGFiICAgOiB7ICooLkFSTS5leHRhYiogLmdudS5saW5rb25jZS5hcm1leHRhYi4qKSB9ID5GTEFTSAorICAuQVJNIDogeworICAgIF9fZXhpZHhfc3RhcnQgPSAuOworICAgICooLkFSTS5leGlkeCopCisgICAgX19leGlkeF9lbmQgPSAuOworICB9ID5GTEFTSAorCisgIC5wcmVpbml0X2FycmF5ICAgICA6CisgIHsKKyAgICBQUk9WSURFX0hJRERFTiAoX19wcmVpbml0X2FycmF5X3N0YXJ0ID0gLik7CisgICAgS0VFUCAoKigucHJlaW5pdF9hcnJheSopKQorICAgIFBST1ZJREVfSElEREVOIChfX3ByZWluaXRfYXJyYXlfZW5kID0gLik7CisgIH0gPkZMQVNICisgIC5pbml0X2FycmF5IDoKKyAgeworICAgIFBST1ZJREVfSElEREVOIChfX2luaXRfYXJyYXlfc3RhcnQgPSAuKTsKKyAgICBLRUVQICgqKFNPUlQoLmluaXRfYXJyYXkuKikpKQorICAgIEtFRVAgKCooLmluaXRfYXJyYXkqKSkKKyAgICBQUk9WSURFX0hJRERFTiAoX19pbml0X2FycmF5X2VuZCA9IC4pOworICB9ID5GTEFTSAorICAuZmluaV9hcnJheSA6CisgIHsKKyAgICBQUk9WSURFX0hJRERFTiAoX19maW5pX2FycmF5X3N0YXJ0ID0gLik7CisgICAgS0VFUCAoKihTT1JUKC5maW5pX2FycmF5LiopKSkKKyAgICBLRUVQICgqKC5maW5pX2FycmF5KikpCisgICAgUFJPVklERV9ISURERU4gKF9fZmluaV9hcnJheV9lbmQgPSAuKTsKKyAgfSA+RkxBU0gKKworICAvKiB1c2VkIGJ5IHRoZSBzdGFydHVwIHRvIGluaXRpYWxpemUgZGF0YSAqLworICBfc2lkYXRhID0gTE9BREFERFIoLmRhdGEpOworCisgIC8qIEluaXRpYWxpemVkIGRhdGEgc2VjdGlvbnMgZ29lcyBpbnRvIFJBTSwgbG9hZCBMTUEgY29weSBhZnRlciBjb2RlICovCisgIC5kYXRhIDogCisgIHsKKyAgICAuID0gQUxJR04oNCk7CisgICAgX3NkYXRhID0gLjsgICAgICAgIC8qIGNyZWF0ZSBhIGdsb2JhbCBzeW1ib2wgYXQgZGF0YSBzdGFydCAqLworICAgICooLmRhdGEpICAgICAgICAgICAvKiAuZGF0YSBzZWN0aW9ucyAqLworICAgICooLmRhdGEqKSAgICAgICAgICAvKiAuZGF0YSogc2VjdGlvbnMgKi8KKworICAgIC4gPSBBTElHTig0KTsKKyAgICBfZWRhdGEgPSAuOyAgICAgICAgLyogZGVmaW5lIGEgZ2xvYmFsIHN5bWJvbCBhdCBkYXRhIGVuZCAqLworICB9ID5SQU0xIEFUPiBGTEFTSAorCisgIAorICAvKiBVbmluaXRpYWxpemVkIGRhdGEgc2VjdGlvbiAqLworICAuID0gQUxJR04oNCk7CisgIC5ic3MgOgorICB7CisgICAgLyogVGhpcyBpcyB1c2VkIGJ5IHRoZSBzdGFydHVwIGluIG9yZGVyIHRvIGluaXRpYWxpemUgdGhlIC5ic3Mgc2VjaW9uICovCisgICAgX3Nic3MgPSAuOyAgICAgICAgIC8qIGRlZmluZSBhIGdsb2JhbCBzeW1ib2wgYXQgYnNzIHN0YXJ0ICovCisgICAgX19ic3Nfc3RhcnRfXyA9IF9zYnNzOworICAgICooLmJzcykKKyAgICAqKC5ic3MqKQorICAgICooQ09NTU9OKQorCisgICAgLiA9IEFMSUdOKDQpOworICAgIF9lYnNzID0gLjsgICAgICAgICAvKiBkZWZpbmUgYSBnbG9iYWwgc3ltYm9sIGF0IGJzcyBlbmQgKi8KKyAgICBfX2Jzc19lbmRfXyA9IF9lYnNzOworICB9ID5SQU0xCisKKyAgLyogVXNlcl9oZWFwX3N0YWNrIHNlY3Rpb24sIHVzZWQgdG8gY2hlY2sgdGhhdCB0aGVyZSBpcyBlbm91Z2ggUkFNIGxlZnQgKi8KKyAgLl91c2VyX2hlYXBfc3RhY2sgOgorICB7CisgICAgLiA9IEFMSUdOKDgpOworICAgIFBST1ZJREUgKCBlbmQgPSAuICk7CisgICAgUFJPVklERSAoIF9lbmQgPSAuICk7CisgICAgLiA9IC4gKyBfTWluX0hlYXBfU2l6ZTsKKyAgICAuID0gLiArIF9NaW5fU3RhY2tfU2l6ZTsKKyAgICAuID0gQUxJR04oOCk7CisgIH0gPlJBTTEKKworICAKKworICAvKiBSZW1vdmUgaW5mb3JtYXRpb24gZnJvbSB0aGUgc3RhbmRhcmQgbGlicmFyaWVzICovCisgIC9ESVNDQVJELyA6CisgIHsKKyAgICBsaWJjLmEgKCAqICkKKyAgICBsaWJtLmEgKCAqICkKKyAgICBsaWJnY2MuYSAoICogKQorICB9CisKKyAgLkFSTS5hdHRyaWJ1dGVzIDAgICAgICAgOiB7ICooLkFSTS5hdHRyaWJ1dGVzKSB9CisgICBNQVBQSU5HX1RBQkxFIChOT0xPQUQpIDogeyAqKE1BUFBJTkdfVEFCTEUpIH0gPlJBTV9TSEFSRUQKKyAgIE1CX01FTTEgKE5PTE9BRCkgICAgICAgOiB7ICooTUJfTUVNMSkgfSA+UkFNX1NIQVJFRAorICAgTUJfTUVNMiAoTk9MT0FEKSAgICAgICA6IHsgX3NNQl9NRU0yID0gLiA7ICooTUJfTUVNMikgOyBfZU1CX01FTTIgPSAuIDsgfSA+UkFNX1NIQVJFRAorfQorCisKZGlmZiAtLWdpdCBhL1NvdXJjZS9UZW1wbGF0ZXMvZ2NjL2xpbmtlci9zdG0zMndiNTB4eF9mbGFzaF9jbTQubGQgYi9Tb3VyY2UvVGVtcGxhdGVzL2djYy9saW5rZXIvc3RtMzJ3YjUweHhfZmxhc2hfY200LmxkCmluZGV4IDRlMGM2ZDguLjRiNzFiOWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UZW1wbGF0ZXMvZ2NjL2xpbmtlci9zdG0zMndiNTB4eF9mbGFzaF9jbTQubGQKKysrIGIvU291cmNlL1RlbXBsYXRlcy9nY2MvbGlua2VyL3N0bTMyd2I1MHh4X2ZsYXNoX2NtNC5sZApAQCAtMTgxLDcgKzE4MSw3IEBACiAgIC5BUk0uYXR0cmlidXRlcyAwICAgICAgIDogeyAqKC5BUk0uYXR0cmlidXRlcykgfQogICAgTUFQUElOR19UQUJMRSAoTk9MT0FEKSA6IHsgKihNQVBQSU5HX1RBQkxFKSB9ID5SQU1fU0hBUkVECiAgICBNQl9NRU0xIChOT0xPQUQpICAgICAgIDogeyAqKE1CX01FTTEpIH0gPlJBTV9TSEFSRUQKLSAgIE1CX01FTTIgICAgICAgICAgICAgICAgOiB7ICooTUJfTUVNMikgfSA+UkFNX1NIQVJFRCAgCisgICBNQl9NRU0yIChOT0xPQUQpICAgICAgIDogeyBfc01CX01FTTIgPSAuIDsgKihNQl9NRU0yKSA7IF9lTUJfTUVNMiA9IC4gOyB9ID5SQU1fU0hBUkVECiB9CiAKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RlbXBsYXRlcy9nY2MvbGlua2VyL3N0bTMyd2I1NXh4X2ZsYXNoX2NtNC5sZCBiL1NvdXJjZS9UZW1wbGF0ZXMvZ2NjL2xpbmtlci9zdG0zMndiNTV4eF9mbGFzaF9jbTQubGQKaW5kZXggMTY3OWEzNS4uN2FjOWEzOSAxMDA2NDQKLS0tIGEvU291cmNlL1RlbXBsYXRlcy9nY2MvbGlua2VyL3N0bTMyd2I1NXh4X2ZsYXNoX2NtNC5sZAorKysgYi9Tb3VyY2UvVGVtcGxhdGVzL2djYy9saW5rZXIvc3RtMzJ3YjU1eHhfZmxhc2hfY200LmxkCkBAIC0xODEsNyArMTgxLDcgQEAKICAgLkFSTS5hdHRyaWJ1dGVzIDAgICAgICAgOiB7ICooLkFSTS5hdHRyaWJ1dGVzKSB9CiAgICBNQVBQSU5HX1RBQkxFIChOT0xPQUQpIDogeyAqKE1BUFBJTkdfVEFCTEUpIH0gPlJBTV9TSEFSRUQKICAgIE1CX01FTTEgKE5PTE9BRCkgICAgICAgOiB7ICooTUJfTUVNMSkgfSA+UkFNX1NIQVJFRAotICAgTUJfTUVNMiAgICAgICAgICAgICAgICA6IHsgKihNQl9NRU0yKSB9ID5SQU1fU0hBUkVEICAKKyAgIE1CX01FTTIgKE5PTE9BRCkgICAgICAgOiB7IF9zTUJfTUVNMiA9IC4gOyAqKE1CX01FTTIpIDsgX2VNQl9NRU0yID0gLiA7IH0gPlJBTV9TSEFSRUQKIH0KIAogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGVtcGxhdGVzL2djYy9zdGFydHVwX3N0bTMyd2IzNXh4X2NtMC5zIGIvU291cmNlL1RlbXBsYXRlcy9nY2Mvc3RhcnR1cF9zdG0zMndiMzV4eF9jbTAucwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lNDZjNGMwCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RlbXBsYXRlcy9nY2Mvc3RhcnR1cF9zdG0zMndiMzV4eF9jbTAucwpAQCAtMCwwICsxLDI4NCBAQAorLyoqCisgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICAqIEBmaWxlICAgICAgc3RhcnR1cF9zdG0zMndiNTV4eF9jbTAucworICAqIEBhdXRob3IgICAgTUNEIEFwcGxpY2F0aW9uIFRlYW0KKyAgKiBAYnJpZWYgICAgIFNUTTMyV0I1NXh4IGRldmljZXMgdmVjdG9yIHRhYmxlIEdDQyB0b29sY2hhaW4uCisgICogICAgICAgICAgICBUaGlzIG1vZHVsZSBwZXJmb3JtczoKKyAgKiAgICAgICAgICAgICAgICAtIFNldCB0aGUgaW5pdGlhbCBTUAorICAqICAgICAgICAgICAgICAgIC0gU2V0IHRoZSBpbml0aWFsIFBDID09IFJlc2V0X0hhbmRsZXIsCisgICogICAgICAgICAgICAgICAgLSBTZXQgdGhlIHZlY3RvciB0YWJsZSBlbnRyaWVzIHdpdGggdGhlIGV4Y2VwdGlvbnMgSVNSIGFkZHJlc3MKKyAgKiAgICAgICAgICAgICAgICAtIEJyYW5jaGVzIHRvIG1haW4gaW4gdGhlIEMgbGlicmFyeSAod2hpY2ggZXZlbnR1YWxseQorICAqICAgICAgICAgICAgICAgICAgY2FsbHMgbWFpbigpKS4KKyAgKiAgICAgICAgICAgIEFmdGVyIFJlc2V0IHRoZSBDb3J0ZXgtTTArIHByb2Nlc3NvciBpcyBpbiBUaHJlYWQgbW9kZSwKKyAgKiAgICAgICAgICAgIHByaW9yaXR5IGlzIFByaXZpbGVnZWQsIGFuZCB0aGUgU3RhY2sgaXMgc2V0IHRvIE1haW4uCisgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICAqIEBhdHRlbnRpb24KKyAgKgorICAqIDxoMj48Y2VudGVyPiZjb3B5OyBDb3B5cmlnaHQgKGMpIDIwMTkgU1RNaWNyb2VsZWN0cm9uaWNzLiAKKyAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLjwvY2VudGVyPjwvaDI+CisgICoKKyAgKiBUaGlzIHNvZnR3YXJlIGNvbXBvbmVudCBpcyBsaWNlbnNlZCBieSBTVCB1bmRlciBCU0QgMy1DbGF1c2UgbGljZW5zZSwKKyAgKiB0aGUgIkxpY2Vuc2UiOyBZb3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIAorICAqIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdDoKKyAgKiAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL0JTRC0zLUNsYXVzZQorICAqCisgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICAqLworCisgIC5zeW50YXggdW5pZmllZAorICAuY3B1IGNvcnRleC1tMAorCS5mcHUgc29mdHZmcAorCS50aHVtYgorCisuZ2xvYmFsCWdfcGZuVmVjdG9ycworLmdsb2JhbAlEZWZhdWx0X0hhbmRsZXIKKworLyogc3RhcnQgYWRkcmVzcyBmb3IgdGhlIGluaXRpYWxpemF0aW9uIHZhbHVlcyBvZiB0aGUgLmRhdGEgc2VjdGlvbi4KK2RlZmluZWQgaW4gbGlua2VyIHNjcmlwdCAqLworLndvcmQJX3NpZGF0YQorLyogc3RhcnQgYWRkcmVzcyBmb3IgdGhlIC5kYXRhIHNlY3Rpb24uIGRlZmluZWQgaW4gbGlua2VyIHNjcmlwdCAqLworLndvcmQJX3NkYXRhCisvKiBlbmQgYWRkcmVzcyBmb3IgdGhlIC5kYXRhIHNlY3Rpb24uIGRlZmluZWQgaW4gbGlua2VyIHNjcmlwdCAqLworLndvcmQJX2VkYXRhCisvKiBzdGFydCBhZGRyZXNzIGZvciB0aGUgLmJzcyBzZWN0aW9uLiBkZWZpbmVkIGluIGxpbmtlciBzY3JpcHQgKi8KKy53b3JkCV9zYnNzCisvKiBlbmQgYWRkcmVzcyBmb3IgdGhlIC5ic3Mgc2VjdGlvbi4gZGVmaW5lZCBpbiBsaW5rZXIgc2NyaXB0ICovCisud29yZAlfZWJzcworCisgIC5zZWN0aW9uIC50ZXh0LlJlc2V0X0hhbmRsZXIKKyAgLndlYWsgUmVzZXRfSGFuZGxlcgorICAudHlwZSBSZXNldF9IYW5kbGVyLCAlZnVuY3Rpb24KK1Jlc2V0X0hhbmRsZXI6CisgIGxkciAgIHIwLCA9X2VzdGFjaworICBtb3YgICBzcCwgcjAgICAgICAgICAgLyogc2V0IHN0YWNrIHBvaW50ZXIgKi8KKworLyogQ29weSB0aGUgZGF0YSBzZWdtZW50IGluaXRpYWxpemVycyBmcm9tIGZsYXNoIHRvIFNSQU0gKi8KKyAgbGRyIHIwLCA9X3NkYXRhCisgIGxkciByMSwgPV9lZGF0YQorICBsZHIgcjIsID1fc2lkYXRhCisgIG1vdnMgcjMsICMwCisgIGIJTG9vcENvcHlEYXRhSW5pdAorCitDb3B5RGF0YUluaXQ6CisgIGxkciByNCwgW3IyLCByM10KKyAgc3RyIHI0LCBbcjAsIHIzXQorICBhZGRzIHIzLCByMywgIzQKKworTG9vcENvcHlEYXRhSW5pdDoKKyAgYWRkcyByNCwgcjAsIHIzCisgIGNtcCByNCwgcjEKKyAgYmNjIENvcHlEYXRhSW5pdAorICAKKy8qIFplcm8gZmlsbCB0aGUgYnNzIHNlZ21lbnQuICovCisgIGxkciByMiwgPV9zYnNzCisgIGxkciByNCwgPV9lYnNzCisgIG1vdnMgcjMsICMwCisgIGIgTG9vcEZpbGxaZXJvYnNzCisKK0ZpbGxaZXJvYnNzOgorICBzdHIgIHIzLCBbcjJdCisgIGFkZHMgcjIsIHIyLCAjNAorCitMb29wRmlsbFplcm9ic3M6CisgIGNtcCByMiwgcjQKKyAgYmNjIEZpbGxaZXJvYnNzCisKKy8qIENhbGwgdGhlIGNsb2NrIHN5c3RlbSBpbnRpdGlhbGl6YXRpb24gZnVuY3Rpb24uKi8KKyAgYmwgIFN5c3RlbUluaXQKKy8qIENhbGwgc3RhdGljIGNvbnN0cnVjdG9ycyAqLworICBibCBfX2xpYmNfaW5pdF9hcnJheQorLyogQ2FsbCB0aGUgYXBwbGljYXRpb24gcyBlbnRyeSBwb2ludC4qLworCWJsCW1haW4KKworTG9vcEZvcmV2ZXI6CisgIGIgTG9vcEZvcmV2ZXIKKyAgICAKKy5zaXplCVJlc2V0X0hhbmRsZXIsIC4tUmVzZXRfSGFuZGxlcgorCisvKioKKyAqIEBicmllZiAgVGhpcyBpcyB0aGUgY29kZSB0aGF0IGdldHMgY2FsbGVkIHdoZW4gdGhlIHByb2Nlc3NvciByZWNlaXZlcyBhbgorICogICAgICAgICB1bmV4cGVjdGVkIGludGVycnVwdC4gIFRoaXMgc2ltcGx5IGVudGVycyBhbiBpbmZpbml0ZSBsb29wLCBwcmVzZXJ2aW5nCisgKiAgICAgICAgIHRoZSBzeXN0ZW0gc3RhdGUgZm9yIGV4YW1pbmF0aW9uIGJ5IGEgZGVidWdnZXIuCisgKgorICogQHBhcmFtICBOb25lCisgKiBAcmV0dmFsIE5vbmUKKyovCisgIC5zZWN0aW9uIC50ZXh0LkRlZmF1bHRfSGFuZGxlciwiYXgiLCVwcm9nYml0cworRGVmYXVsdF9IYW5kbGVyOgorSW5maW5pdGVfTG9vcDoKKwliCUluZmluaXRlX0xvb3AKKwkuc2l6ZQlEZWZhdWx0X0hhbmRsZXIsIC4tRGVmYXVsdF9IYW5kbGVyCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisqCisqIFRoZSBtaW5pbWFsIHZlY3RvciB0YWJsZSBmb3IgYSBDb3J0ZXggTTAuICBOb3RlIHRoYXQgdGhlIHByb3BlciBjb25zdHJ1Y3RzCisqIG11c3QgYmUgcGxhY2VkIG9uIHRoaXMgdG8gZW5zdXJlIHRoYXQgaXQgZW5kcyB1cCBhdCBwaHlzaWNhbCBhZGRyZXNzCisqIDB4MDAwMC4wMDAwLgorKgorKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworIAkuc2VjdGlvbgkuaXNyX3ZlY3RvciwiYSIsJXByb2diaXRzCisJLnR5cGUJZ19wZm5WZWN0b3JzLCAlb2JqZWN0CisJLnNpemUJZ19wZm5WZWN0b3JzLCAuLWdfcGZuVmVjdG9ycworCitnX3BmblZlY3RvcnM6CisgIC53b3JkIF9lc3RhY2sKKyAgLndvcmQgUmVzZXRfSGFuZGxlcgorICAud29yZCBOTUlfSGFuZGxlcgorICAud29yZCBIYXJkRmF1bHRfSGFuZGxlcgorICAud29yZCAwCisgIC53b3JkIDAKKyAgLndvcmQgMAorICAud29yZCAwCisgIC53b3JkIDAKKyAgLndvcmQgMAorICAud29yZCAwCisgIC53b3JkIFNWQ19IYW5kbGVyCisgIC53b3JkIDAKKyAgLndvcmQgMAorICAud29yZCBQZW5kU1ZfSGFuZGxlcgorICAud29yZCBTeXNUaWNrX0hhbmRsZXIKKyAgLndvcmQgMAorICAud29yZCBQVkRfUFZNX0lSUUhhbmRsZXIKKyAgLndvcmQgUlRDX0xTRUNTU19JUlFIYW5kbGVyCisgIC53b3JkIFVTQl9DUlNfSVJRSGFuZGxlcgorICAud29yZCBSQ0NfRkxBU0hfQzFTRVZfSVJRSGFuZGxlcgorICAud29yZCBFWFRJMV8wX0lSUUhhbmRsZXIKKyAgLndvcmQgRVhUSTNfMl9JUlFIYW5kbGVyCisgIC53b3JkIEVYVEkxNV80X0lSUUhhbmRsZXIKKyAgLndvcmQgVFNDXzgwMl8wX0lSUUhhbmRsZXIKKyAgLndvcmQgRE1BMV9DaGFubmVsMV8yXzNfSVJRSGFuZGxlcgorICAud29yZCBETUExX0NoYW5uZWw0XzVfNl83X0lSUUhhbmRsZXIKKyAgLndvcmQgRE1BMl9ETUFNVVgxX09WUl9JUlFIYW5kbGVyCisgIC53b3JkIEFEQzFfQ09NUF9JUlFIYW5kbGVyCisgIC53b3JkIExQVElNMV9JUlFIYW5kbGVyCisgIC53b3JkIExQVElNMl9JUlFIYW5kbGVyCisgIC53b3JkIFRJTTFfSVJRSGFuZGxlcgorICAud29yZCBUSU0yX0lSUUhhbmRsZXIKKyAgLndvcmQgVElNMTZfSVJRSGFuZGxlcgorICAud29yZCBUSU0xN19JUlFIYW5kbGVyCisgIC53b3JkIElQQ0NfQzJfUlhfQzJfVFhfSFNFTV9JUlFIYW5kbGVyCisgIC53b3JkIEFFUzFfUk5HX1BLQV9JUlFIYW5kbGVyCisgIC53b3JkIEFFUzJfSVJRSGFuZGxlcgorICAud29yZCBfODAyXzFfSVJRSGFuZGxlcgorICAud29yZCBJMkMxX0lSUUhhbmRsZXIKKyAgLndvcmQgSTJDM19JUlFIYW5kbGVyCisgIC53b3JkIFNQSTFfSVJRSGFuZGxlcgorICAud29yZCBTUEkyX0lSUUhhbmRsZXIKKyAgLndvcmQgVVNBUlQxX0lSUUhhbmRsZXIKKyAgLndvcmQgTFBVQVJUMV9JUlFIYW5kbGVyCisgIC53b3JkIDAKKyAgLndvcmQgQkxFX0lSUUhhbmRsZXIKKyAgLndvcmQgXzgwMl8yX0hPU1RfV0tVUF9JUlFIYW5kbGVyCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisqCisqIFByb3ZpZGUgd2VhayBhbGlhc2VzIGZvciBlYWNoIEV4Y2VwdGlvbiBoYW5kbGVyIHRvIHRoZSBEZWZhdWx0X0hhbmRsZXIuCisqIEFzIHRoZXkgYXJlIHdlYWsgYWxpYXNlcywgYW55IGZ1bmN0aW9uIHdpdGggdGhlIHNhbWUgbmFtZSB3aWxsIG92ZXJyaWRlCisqIHRoaXMgZGVmaW5pdGlvbi4KKyoKKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisgIC53ZWFrICBOTUlfSGFuZGxlcgorICAudGh1bWJfc2V0IE5NSV9IYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBIYXJkRmF1bHRfSGFuZGxlcgorICAudGh1bWJfc2V0IEhhcmRGYXVsdF9IYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBTVkNfSGFuZGxlcgorICAudGh1bWJfc2V0IFNWQ19IYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBQZW5kU1ZfSGFuZGxlcgorICAudGh1bWJfc2V0IFBlbmRTVl9IYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBTeXNUaWNrX0hhbmRsZXIKKyAgLnRodW1iX3NldCBTeXNUaWNrX0hhbmRsZXIsRGVmYXVsdF9IYW5kbGVyCisKKyAgLndlYWsgIFBWRF9QVk1fSVJRSGFuZGxlcgorICAudGh1bWJfc2V0IFBWRF9QVk1fSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgUlRDX0xTRUNTU19JUlFIYW5kbGVyCisgIC50aHVtYl9zZXQgUlRDX0xTRUNTU19JUlFIYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBVU0JfQ1JTX0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBVU0JfQ1JTX0lSUUhhbmRsZXIsRGVmYXVsdF9IYW5kbGVyCisKKyAgLndlYWsgIFJDQ19GTEFTSF9DMVNFVl9JUlFIYW5kbGVyCisgIC50aHVtYl9zZXQgUkNDX0ZMQVNIX0MxU0VWX0lSUUhhbmRsZXIsRGVmYXVsdF9IYW5kbGVyCisKKyAgLndlYWsgIEVYVEkxXzBfSVJRSGFuZGxlcgorICAudGh1bWJfc2V0IEVYVEkxXzBfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgRVhUSTNfMl9JUlFIYW5kbGVyCisgIC50aHVtYl9zZXQgRVhUSTNfMl9JUlFIYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBFWFRJMTVfNF9JUlFIYW5kbGVyCisgIC50aHVtYl9zZXQgRVhUSTE1XzRfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgVFNDXzgwMl8wX0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBUU0NfODAyXzBfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgRE1BMV9DaGFubmVsMV8yXzNfSVJRSGFuZGxlcgorICAudGh1bWJfc2V0IERNQTFfQ2hhbm5lbDFfMl8zX0lSUUhhbmRsZXIsRGVmYXVsdF9IYW5kbGVyCisKKyAgLndlYWsgIERNQTFfQ2hhbm5lbDRfNV82XzdfSVJRSGFuZGxlcgorICAudGh1bWJfc2V0IERNQTFfQ2hhbm5lbDRfNV82XzdfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgRE1BMl9ETUFNVVgxX09WUl9JUlFIYW5kbGVyCisgIC50aHVtYl9zZXQgRE1BMl9ETUFNVVgxX09WUl9JUlFIYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBBREMxX0NPTVBfSVJRSGFuZGxlcgorICAudGh1bWJfc2V0IEFEQzFfQ09NUF9JUlFIYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBMUFRJTTFfSVJRSGFuZGxlcgorICAudGh1bWJfc2V0IExQVElNMV9JUlFIYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBMUFRJTTJfSVJRSGFuZGxlcgorICAudGh1bWJfc2V0IExQVElNMl9JUlFIYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBUSU0xX0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBUSU0xX0lSUUhhbmRsZXIsRGVmYXVsdF9IYW5kbGVyCisKKyAgLndlYWsgIFRJTTJfSVJRSGFuZGxlcgorICAudGh1bWJfc2V0IFRJTTJfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgVElNMTZfSVJRSGFuZGxlcgorICAudGh1bWJfc2V0IFRJTTE2X0lSUUhhbmRsZXIsRGVmYXVsdF9IYW5kbGVyCisKKyAgLndlYWsgIFRJTTE3X0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBUSU0xN19JUlFIYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBJUENDX0MyX1JYX0MyX1RYX0hTRU1fSVJRSGFuZGxlcgorICAudGh1bWJfc2V0IElQQ0NfQzJfUlhfQzJfVFhfSFNFTV9JUlFIYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBBRVMxX1JOR19QS0FfSVJRSGFuZGxlcgorICAudGh1bWJfc2V0IEFFUzFfUk5HX1BLQV9JUlFIYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBBRVMyX0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBBRVMyX0lSUUhhbmRsZXIsRGVmYXVsdF9IYW5kbGVyCisKKyAgLndlYWsgIF84MDJfMV9JUlFIYW5kbGVyCisgIC50aHVtYl9zZXQgXzgwMl8xX0lSUUhhbmRsZXIsRGVmYXVsdF9IYW5kbGVyCisKKyAgLndlYWsgIEkyQzFfSVJRSGFuZGxlcgorICAudGh1bWJfc2V0IEkyQzFfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgSTJDM19JUlFIYW5kbGVyCisgIC50aHVtYl9zZXQgSTJDM19JUlFIYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBTUEkxX0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBTUEkxX0lSUUhhbmRsZXIsRGVmYXVsdF9IYW5kbGVyCisKKyAgLndlYWsgIFNQSTJfSVJRSGFuZGxlcgorICAudGh1bWJfc2V0IFNQSTJfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgVVNBUlQxX0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBVU0FSVDFfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgTFBVQVJUMV9JUlFIYW5kbGVyCisgIC50aHVtYl9zZXQgTFBVQVJUMV9JUlFIYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBCTEVfSVJRSGFuZGxlcgorICAudGh1bWJfc2V0IEJMRV9JUlFIYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBfODAyXzJfSE9TVF9XS1VQX0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBfODAyXzJfSE9TVF9XS1VQX0lSUUhhbmRsZXIsRGVmYXVsdF9IYW5kbGVyCisKKy8qKioqKioqKioqKioqKioqKioqKioqKiogKEMpIENPUFlSSUdIVCBTVE1pY3JvZWxlY3Ryb25pY3MgKioqKipFTkQgT0YgRklMRSoqKiovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGVtcGxhdGVzL2djYy9zdGFydHVwX3N0bTMyd2IzNXh4X2NtNC5zIGIvU291cmNlL1RlbXBsYXRlcy9nY2Mvc3RhcnR1cF9zdG0zMndiMzV4eF9jbTQucwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41MTU1ZWI1Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RlbXBsYXRlcy9nY2Mvc3RhcnR1cF9zdG0zMndiMzV4eF9jbTQucwpAQCAtMCwwICsxLDQzOSBAQAorLyoqCisgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICAqIEBmaWxlICAgICAgc3RhcnR1cF9zdG0zMndiNTV4eF9jbTQucworICAqIEBhdXRob3IgICAgTUNEIEFwcGxpY2F0aW9uIFRlYW0KKyAgKiBAYnJpZWYgICAgIFNUTTMyV0I1NXh4IGRldmljZXMgdmVjdG9yIHRhYmxlIEdDQyB0b29sY2hhaW4uCisgICogICAgICAgICAgICBUaGlzIG1vZHVsZSBwZXJmb3JtczoKKyAgKiAgICAgICAgICAgICAgICAtIFNldCB0aGUgaW5pdGlhbCBTUAorICAqICAgICAgICAgICAgICAgIC0gU2V0IHRoZSBpbml0aWFsIFBDID09IFJlc2V0X0hhbmRsZXIsCisgICogICAgICAgICAgICAgICAgLSBTZXQgdGhlIHZlY3RvciB0YWJsZSBlbnRyaWVzIHdpdGggdGhlIGV4Y2VwdGlvbnMgSVNSIGFkZHJlc3MKKyAgKiAgICAgICAgICAgICAgICAtIEJyYW5jaGVzIHRvIG1haW4gaW4gdGhlIEMgbGlicmFyeSAod2hpY2ggZXZlbnR1YWxseQorICAqICAgICAgICAgICAgICAgICAgY2FsbHMgbWFpbigpKS4KKyAgKiAgICAgICAgICAgIEFmdGVyIFJlc2V0IHRoZSBDb3J0ZXgtTTQgcHJvY2Vzc29yIGlzIGluIFRocmVhZCBtb2RlLAorICAqICAgICAgICAgICAgcHJpb3JpdHkgaXMgUHJpdmlsZWdlZCwgYW5kIHRoZSBTdGFjayBpcyBzZXQgdG8gTWFpbi4KKyAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgICogQGF0dGVudGlvbgorICAqCisgICogPGgyPjxjZW50ZXI+JmNvcHk7IENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuIAorICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuPC9jZW50ZXI+PC9oMj4KKyAgKgorICAqIFRoaXMgc29mdHdhcmUgY29tcG9uZW50IGlzIGxpY2Vuc2VkIGJ5IFNUIHVuZGVyIEJTRCAzLUNsYXVzZSBsaWNlbnNlLAorICAqIHRoZSAiTGljZW5zZSI7IFlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgCisgICogTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0OgorICAqICAgICAgICAgICAgICAgICAgICAgICAgb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvQlNELTMtQ2xhdXNlCisgICoKKyAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgICovCisKKyAgLnN5bnRheCB1bmlmaWVkCisJLmNwdSBjb3J0ZXgtbTQKKwkuZnB1IHNvZnR2ZnAKKwkudGh1bWIKKworLmdsb2JhbAlnX3BmblZlY3RvcnMKKy5nbG9iYWwJRGVmYXVsdF9IYW5kbGVyCisKKy8qIHN0YXJ0IGFkZHJlc3MgZm9yIHRoZSBpbml0aWFsaXphdGlvbiB2YWx1ZXMgb2YgdGhlIC5kYXRhIHNlY3Rpb24uCitkZWZpbmVkIGluIGxpbmtlciBzY3JpcHQgKi8KKy53b3JkCV9zaWRhdGEKKy8qIHN0YXJ0IGFkZHJlc3MgZm9yIHRoZSAuZGF0YSBzZWN0aW9uLiBkZWZpbmVkIGluIGxpbmtlciBzY3JpcHQgKi8KKy53b3JkCV9zZGF0YQorLyogZW5kIGFkZHJlc3MgZm9yIHRoZSAuZGF0YSBzZWN0aW9uLiBkZWZpbmVkIGluIGxpbmtlciBzY3JpcHQgKi8KKy53b3JkCV9lZGF0YQorLyogc3RhcnQgYWRkcmVzcyBmb3IgdGhlIC5ic3Mgc2VjdGlvbi4gZGVmaW5lZCBpbiBsaW5rZXIgc2NyaXB0ICovCisud29yZAlfc2JzcworLyogZW5kIGFkZHJlc3MgZm9yIHRoZSAuYnNzIHNlY3Rpb24uIGRlZmluZWQgaW4gbGlua2VyIHNjcmlwdCAqLworLndvcmQJX2Vic3MKKy8qIHN0YXJ0IGFkZHJlc3MgZm9yIHRoZSAuTUJfTUVNMiBzZWN0aW9uLiBkZWZpbmVkIGluIGxpbmtlciBzY3JpcHQgKi8KKy53b3JkIF9zTUJfTUVNMgorLyogZW5kIGFkZHJlc3MgZm9yIHRoZSAuTUJfTUVNMiBzZWN0aW9uLiBkZWZpbmVkIGluIGxpbmtlciBzY3JpcHQgKi8KKy53b3JkIF9lTUJfTUVNMgorCisvKiBJTklUX0JTUyBtYWNybyBpcyB1c2VkIHRvIGZpbGwgdGhlIHNwZWNpZmllZCByZWdpb24gW3N0YXJ0IDogZW5kXSB3aXRoIHplcm9zICovCisubWFjcm8gSU5JVF9CU1Mgc3RhcnQsIGVuZAorICBsZHIgcjAsID1cc3RhcnQKKyAgbGRyIHIxLCA9XGVuZAorICBtb3ZzIHIzLCAjMAorICBibCBMb29wRmlsbFplcm9ic3MKKy5lbmRtCisKKy8qIElOSVRfREFUQSBtYWNybyBpcyB1c2VkIHRvIGNvcHkgZGF0YSBpbiB0aGUgcmVnaW9uIFtzdGFydCA6IGVuZF0gc3RhcnRpbmcgZnJvbSAnc3JjJyAqLworLm1hY3JvIElOSVRfREFUQSBzdGFydCwgZW5kLCBzcmMKKyAgbGRyIHIwLCA9XHN0YXJ0CisgIGxkciByMSwgPVxlbmQKKyAgbGRyIHIyLCA9XHNyYworICBtb3ZzIHIzLCAjMAorICBibCBMb29wQ29weURhdGFJbml0CisuZW5kbQorCisuc2VjdGlvbiAgLnRleHQuZGF0YV9pbml0aWFsaXplcnMKK0NvcHlEYXRhSW5pdDoKKyAgbGRyIHI0LCBbcjIsIHIzXQorICBzdHIgcjQsIFtyMCwgcjNdCisgIGFkZHMgcjMsIHIzLCAjNAorCitMb29wQ29weURhdGFJbml0OgorICBhZGRzIHI0LCByMCwgcjMKKyAgY21wIHI0LCByMQorICBiY2MgIENvcHlEYXRhSW5pdAorICBieCBscgorCitGaWxsWmVyb2JzczoKKyAgc3RyICByMywgW3IwXQorICBhZGRzIHIwLCByMCwgIzQKKworTG9vcEZpbGxaZXJvYnNzOgorICBjbXAgcjAsIHIxCisgIGJjYyBGaWxsWmVyb2JzcworICBieCBscgorCisgIC5zZWN0aW9uIC50ZXh0LlJlc2V0X0hhbmRsZXIKKyAgLndlYWsgUmVzZXRfSGFuZGxlcgorICAudHlwZSBSZXNldF9IYW5kbGVyLCAlZnVuY3Rpb24KK1Jlc2V0X0hhbmRsZXI6CisgIGxkciAgIHIwLCA9X2VzdGFjaworICBtb3YgICBzcCwgcjAgICAgICAgICAgLyogc2V0IHN0YWNrIHBvaW50ZXIgKi8KKworLyogQ29weSB0aGUgZGF0YSBzZWdtZW50IGluaXRpYWxpemVycyBmcm9tIGZsYXNoIHRvIFNSQU0gKi8KKyAgSU5JVF9EQVRBIF9zZGF0YSwgX2VkYXRhLCBfc2lkYXRhCisKKy8qIFplcm8gZmlsbCB0aGUgYnNzIHNlZ21lbnRzLiAqLworICBJTklUX0JTUyBfc2JzcywgX2Vic3MKKyAgSU5JVF9CU1MgX3NNQl9NRU0yLCBfZU1CX01FTTIKKworLyogQ2FsbCB0aGUgY2xvY2sgc3lzdGVtIGludGl0aWFsaXphdGlvbiBmdW5jdGlvbi4qLworICBibCAgU3lzdGVtSW5pdAorLyogQ2FsbCBzdGF0aWMgY29uc3RydWN0b3JzICovCisgIGJsIF9fbGliY19pbml0X2FycmF5CisvKiBDYWxsIHRoZSBhcHBsaWNhdGlvbiBzIGVudHJ5IHBvaW50LiovCisJYmwJbWFpbgorCitMb29wRm9yZXZlcjoKKyAgYiBMb29wRm9yZXZlcgorICAgIAorLnNpemUJUmVzZXRfSGFuZGxlciwgLi1SZXNldF9IYW5kbGVyCisKKy8qKgorICogQGJyaWVmICBUaGlzIGlzIHRoZSBjb2RlIHRoYXQgZ2V0cyBjYWxsZWQgd2hlbiB0aGUgcHJvY2Vzc29yIHJlY2VpdmVzIGFuCisgKiAgICAgICAgIHVuZXhwZWN0ZWQgaW50ZXJydXB0LiAgVGhpcyBzaW1wbHkgZW50ZXJzIGFuIGluZmluaXRlIGxvb3AsIHByZXNlcnZpbmcKKyAqICAgICAgICAgdGhlIHN5c3RlbSBzdGF0ZSBmb3IgZXhhbWluYXRpb24gYnkgYSBkZWJ1Z2dlci4KKyAqCisgKiBAcGFyYW0gIE5vbmUKKyAqIEByZXR2YWwgTm9uZQorKi8KKyAgLnNlY3Rpb24gLnRleHQuRGVmYXVsdF9IYW5kbGVyLCJheCIsJXByb2diaXRzCitEZWZhdWx0X0hhbmRsZXI6CitJbmZpbml0ZV9Mb29wOgorCWIJSW5maW5pdGVfTG9vcAorCS5zaXplCURlZmF1bHRfSGFuZGxlciwgLi1EZWZhdWx0X0hhbmRsZXIKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyoKKyogVGhlIG1pbmltYWwgdmVjdG9yIHRhYmxlIGZvciBhIENvcnRleC1NNC4gIE5vdGUgdGhhdCB0aGUgcHJvcGVyIGNvbnN0cnVjdHMKKyogbXVzdCBiZSBwbGFjZWQgb24gdGhpcyB0byBlbnN1cmUgdGhhdCBpdCBlbmRzIHVwIGF0IHBoeXNpY2FsIGFkZHJlc3MKKyogMHgwMDAwLjAwMDAuCisqCisqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisgCS5zZWN0aW9uCS5pc3JfdmVjdG9yLCJhIiwlcHJvZ2JpdHMKKwkudHlwZQlnX3BmblZlY3RvcnMsICVvYmplY3QKKwkuc2l6ZQlnX3BmblZlY3RvcnMsIC4tZ19wZm5WZWN0b3JzCisKKworZ19wZm5WZWN0b3JzOgorICAud29yZCBfZXN0YWNrCisgIC53b3JkIFJlc2V0X0hhbmRsZXIKKwkud29yZAlOTUlfSGFuZGxlcgorICAud29yZCBIYXJkRmF1bHRfSGFuZGxlcgorICAud29yZCBNZW1NYW5hZ2VfSGFuZGxlcgorICAud29yZCBCdXNGYXVsdF9IYW5kbGVyCisgIC53b3JkIFVzYWdlRmF1bHRfSGFuZGxlcgorICAud29yZCAwCisgIC53b3JkIDAKKyAgLndvcmQgMAorICAud29yZCAwCisgIC53b3JkIFNWQ19IYW5kbGVyCisgIC53b3JkIERlYnVnTW9uX0hhbmRsZXIKKyAgLndvcmQgMAorICAud29yZCBQZW5kU1ZfSGFuZGxlcgorICAud29yZCBTeXNUaWNrX0hhbmRsZXIKKyAgLndvcmQgV1dER19JUlFIYW5kbGVyCisgIC53b3JkIFBWRF9QVk1fSVJRSGFuZGxlcgorICAud29yZCBUQU1QX1NUQU1QX0xTRUNTU19JUlFIYW5kbGVyCisgIC53b3JkIFJUQ19XS1VQX0lSUUhhbmRsZXIKKyAgLndvcmQgRkxBU0hfSVJRSGFuZGxlcgorICAud29yZCBSQ0NfSVJRSGFuZGxlcgorICAud29yZCBFWFRJMF9JUlFIYW5kbGVyCisgIC53b3JkIEVYVEkxX0lSUUhhbmRsZXIKKyAgLndvcmQgRVhUSTJfSVJRSGFuZGxlcgorICAud29yZCBFWFRJM19JUlFIYW5kbGVyCisgIC53b3JkIEVYVEk0X0lSUUhhbmRsZXIKKyAgLndvcmQgRE1BMV9DaGFubmVsMV9JUlFIYW5kbGVyCisgIC53b3JkIERNQTFfQ2hhbm5lbDJfSVJRSGFuZGxlcgorICAud29yZCBETUExX0NoYW5uZWwzX0lSUUhhbmRsZXIKKyAgLndvcmQgRE1BMV9DaGFubmVsNF9JUlFIYW5kbGVyCisgIC53b3JkIERNQTFfQ2hhbm5lbDVfSVJRSGFuZGxlcgorICAud29yZCBETUExX0NoYW5uZWw2X0lSUUhhbmRsZXIKKyAgLndvcmQgRE1BMV9DaGFubmVsN19JUlFIYW5kbGVyCisgIC53b3JkIEFEQzFfSVJRSGFuZGxlcgorICAud29yZCBVU0JfSFBfSVJRSGFuZGxlcgorICAud29yZCBVU0JfTFBfSVJRSGFuZGxlcgorICAud29yZCBDMlNFVl9QV1JfQzJIX0lSUUhhbmRsZXIKKyAgLndvcmQgQ09NUF9JUlFIYW5kbGVyCisgIC53b3JkIEVYVEk5XzVfSVJRSGFuZGxlcgorICAud29yZCBUSU0xX0JSS19JUlFIYW5kbGVyCisgIC53b3JkIFRJTTFfVVBfVElNMTZfSVJRSGFuZGxlcgorICAud29yZCBUSU0xX1RSR19DT01fVElNMTdfSVJRSGFuZGxlcgorICAud29yZCBUSU0xX0NDX0lSUUhhbmRsZXIKKyAgLndvcmQgVElNMl9JUlFIYW5kbGVyCisgIC53b3JkIFBLQV9JUlFIYW5kbGVyCisgIC53b3JkIEkyQzFfRVZfSVJRSGFuZGxlcgorICAud29yZCBJMkMxX0VSX0lSUUhhbmRsZXIKKyAgLndvcmQgSTJDM19FVl9JUlFIYW5kbGVyCisgIC53b3JkIEkyQzNfRVJfSVJRSGFuZGxlcgorICAud29yZCBTUEkxX0lSUUhhbmRsZXIKKyAgLndvcmQgU1BJMl9JUlFIYW5kbGVyCisgIC53b3JkIFVTQVJUMV9JUlFIYW5kbGVyCisgIC53b3JkIExQVUFSVDFfSVJRSGFuZGxlcgorICAud29yZCAwCisgIC53b3JkIFRTQ19JUlFIYW5kbGVyCisgIC53b3JkIEVYVEkxNV8xMF9JUlFIYW5kbGVyCisgIC53b3JkIFJUQ19BbGFybV9JUlFIYW5kbGVyCisgIC53b3JkIENSU19JUlFIYW5kbGVyCisgIC53b3JkIFBXUl9TT1RGX0JMRUFDVF84MDJBQ1RfUkZQSEFTRV9JUlFIYW5kbGVyCisgIC53b3JkIElQQ0NfQzFfUlhfSVJRSGFuZGxlcgorICAud29yZCBJUENDX0MxX1RYX0lSUUhhbmRsZXIKKyAgLndvcmQgSFNFTV9JUlFIYW5kbGVyCisgIC53b3JkIExQVElNMV9JUlFIYW5kbGVyCisgIC53b3JkIExQVElNMl9JUlFIYW5kbGVyCisgIC53b3JkIDAKKyAgLndvcmQgUVVBRFNQSV9JUlFIYW5kbGVyCisgIC53b3JkIEFFUzFfSVJRSGFuZGxlcgorICAud29yZCBBRVMyX0lSUUhhbmRsZXIKKyAgLndvcmQgUk5HX0lSUUhhbmRsZXIKKyAgLndvcmQgRlBVX0lSUUhhbmRsZXIKKyAgLndvcmQgRE1BMl9DaGFubmVsMV9JUlFIYW5kbGVyCisgIC53b3JkIERNQTJfQ2hhbm5lbDJfSVJRSGFuZGxlcgorICAud29yZCBETUEyX0NoYW5uZWwzX0lSUUhhbmRsZXIKKyAgLndvcmQgRE1BMl9DaGFubmVsNF9JUlFIYW5kbGVyCisgIC53b3JkIERNQTJfQ2hhbm5lbDVfSVJRSGFuZGxlcgorICAud29yZCBETUEyX0NoYW5uZWw2X0lSUUhhbmRsZXIKKyAgLndvcmQgRE1BMl9DaGFubmVsN19JUlFIYW5kbGVyCisgIC53b3JkIERNQU1VWDFfT1ZSX0lSUUhhbmRsZXIKKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyoKKyogUHJvdmlkZSB3ZWFrIGFsaWFzZXMgZm9yIGVhY2ggRXhjZXB0aW9uIGhhbmRsZXIgdG8gdGhlIERlZmF1bHRfSGFuZGxlci4KKyogQXMgdGhleSBhcmUgd2VhayBhbGlhc2VzLCBhbnkgZnVuY3Rpb24gd2l0aCB0aGUgc2FtZSBuYW1lIHdpbGwgb3ZlcnJpZGUKKyogdGhpcyBkZWZpbml0aW9uLgorKgorKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKyAgLndlYWsJTk1JX0hhbmRsZXIKKyAgLnRodW1iX3NldCBOTUlfSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKyAgCisgIC53ZWFrICBIYXJkRmF1bHRfSGFuZGxlcgorICAudGh1bWJfc2V0IEhhcmRGYXVsdF9IYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBNZW1NYW5hZ2VfSGFuZGxlcgorICAudGh1bWJfc2V0IE1lbU1hbmFnZV9IYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBCdXNGYXVsdF9IYW5kbGVyCisgIC50aHVtYl9zZXQgQnVzRmF1bHRfSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgVXNhZ2VGYXVsdF9IYW5kbGVyCisgIC50aHVtYl9zZXQgVXNhZ2VGYXVsdF9IYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBTVkNfSGFuZGxlcgorICAudGh1bWJfc2V0IFNWQ19IYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBEZWJ1Z01vbl9IYW5kbGVyCisgIC50aHVtYl9zZXQgRGVidWdNb25fSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgUGVuZFNWX0hhbmRsZXIKKyAgLnRodW1iX3NldCBQZW5kU1ZfSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgU3lzVGlja19IYW5kbGVyCisgIC50aHVtYl9zZXQgU3lzVGlja19IYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBXV0RHX0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBXV0RHX0lSUUhhbmRsZXIsRGVmYXVsdF9IYW5kbGVyCisKKyAgLndlYWsgIFBWRF9QVk1fSVJRSGFuZGxlcgorICAudGh1bWJfc2V0IFBWRF9QVk1fSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgVEFNUF9TVEFNUF9MU0VDU1NfSVJRSGFuZGxlcgorICAudGh1bWJfc2V0IFRBTVBfU1RBTVBfTFNFQ1NTX0lSUUhhbmRsZXIsRGVmYXVsdF9IYW5kbGVyCisKKyAgLndlYWsgIFJUQ19XS1VQX0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBSVENfV0tVUF9JUlFIYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBGTEFTSF9JUlFIYW5kbGVyCisgIC50aHVtYl9zZXQgRkxBU0hfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgUkNDX0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBSQ0NfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgRVhUSTBfSVJRSGFuZGxlcgorICAudGh1bWJfc2V0IEVYVEkwX0lSUUhhbmRsZXIsRGVmYXVsdF9IYW5kbGVyCisKKyAgLndlYWsgIEVYVEkxX0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBFWFRJMV9JUlFIYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBFWFRJMl9JUlFIYW5kbGVyCisgIC50aHVtYl9zZXQgRVhUSTJfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgRVhUSTNfSVJRSGFuZGxlcgorICAudGh1bWJfc2V0IEVYVEkzX0lSUUhhbmRsZXIsRGVmYXVsdF9IYW5kbGVyCisKKyAgLndlYWsgIEVYVEk0X0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBFWFRJNF9JUlFIYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBETUExX0NoYW5uZWwxX0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBETUExX0NoYW5uZWwxX0lSUUhhbmRsZXIsRGVmYXVsdF9IYW5kbGVyCisKKyAgLndlYWsgIERNQTFfQ2hhbm5lbDJfSVJRSGFuZGxlcgorICAudGh1bWJfc2V0IERNQTFfQ2hhbm5lbDJfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgRE1BMV9DaGFubmVsM19JUlFIYW5kbGVyCisgIC50aHVtYl9zZXQgRE1BMV9DaGFubmVsM19JUlFIYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBETUExX0NoYW5uZWw0X0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBETUExX0NoYW5uZWw0X0lSUUhhbmRsZXIsRGVmYXVsdF9IYW5kbGVyCisKKyAgLndlYWsgIERNQTFfQ2hhbm5lbDVfSVJRSGFuZGxlcgorICAudGh1bWJfc2V0IERNQTFfQ2hhbm5lbDVfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgRE1BMV9DaGFubmVsNl9JUlFIYW5kbGVyCisgIC50aHVtYl9zZXQgRE1BMV9DaGFubmVsNl9JUlFIYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBETUExX0NoYW5uZWw3X0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBETUExX0NoYW5uZWw3X0lSUUhhbmRsZXIsRGVmYXVsdF9IYW5kbGVyCisKKyAgLndlYWsgIEFEQzFfSVJRSGFuZGxlcgorICAudGh1bWJfc2V0IEFEQzFfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgVVNCX0hQX0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBVU0JfSFBfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgVVNCX0xQX0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBVU0JfTFBfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgQzJTRVZfUFdSX0MySF9JUlFIYW5kbGVyCisgIC50aHVtYl9zZXQgQzJTRVZfUFdSX0MySF9JUlFIYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBDT01QX0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBDT01QX0lSUUhhbmRsZXIsRGVmYXVsdF9IYW5kbGVyCisKKyAgLndlYWsgIEVYVEk5XzVfSVJRSGFuZGxlcgorICAudGh1bWJfc2V0IEVYVEk5XzVfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgVElNMV9CUktfSVJRSGFuZGxlcgorICAudGh1bWJfc2V0IFRJTTFfQlJLX0lSUUhhbmRsZXIsRGVmYXVsdF9IYW5kbGVyCisKKyAgLndlYWsgIFRJTTFfVVBfVElNMTZfSVJRSGFuZGxlcgorICAudGh1bWJfc2V0IFRJTTFfVVBfVElNMTZfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgVElNMV9UUkdfQ09NX1RJTTE3X0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBUSU0xX1RSR19DT01fVElNMTdfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgVElNMV9DQ19JUlFIYW5kbGVyCisgIC50aHVtYl9zZXQgVElNMV9DQ19JUlFIYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBUSU0yX0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBUSU0yX0lSUUhhbmRsZXIsRGVmYXVsdF9IYW5kbGVyCisKKyAgLndlYWsgIFBLQV9JUlFIYW5kbGVyCisgIC50aHVtYl9zZXQgUEtBX0lSUUhhbmRsZXIsRGVmYXVsdF9IYW5kbGVyCisKKyAgLndlYWsgIEkyQzFfRVZfSVJRSGFuZGxlcgorICAudGh1bWJfc2V0IEkyQzFfRVZfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgSTJDMV9FUl9JUlFIYW5kbGVyCisgIC50aHVtYl9zZXQgSTJDMV9FUl9JUlFIYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBJMkMzX0VWX0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBJMkMzX0VWX0lSUUhhbmRsZXIsRGVmYXVsdF9IYW5kbGVyCisKKyAgLndlYWsgIEkyQzNfRVJfSVJRSGFuZGxlcgorICAudGh1bWJfc2V0IEkyQzNfRVJfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgU1BJMV9JUlFIYW5kbGVyCisgIC50aHVtYl9zZXQgU1BJMV9JUlFIYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBTUEkyX0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBTUEkyX0lSUUhhbmRsZXIsRGVmYXVsdF9IYW5kbGVyCisKKyAgLndlYWsgIFVTQVJUMV9JUlFIYW5kbGVyCisgIC50aHVtYl9zZXQgVVNBUlQxX0lSUUhhbmRsZXIsRGVmYXVsdF9IYW5kbGVyCisKKyAgLndlYWsgIExQVUFSVDFfSVJRSGFuZGxlcgorICAudGh1bWJfc2V0IExQVUFSVDFfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgVFNDX0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBUU0NfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgRVhUSTE1XzEwX0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBFWFRJMTVfMTBfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgUlRDX0FsYXJtX0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBSVENfQWxhcm1fSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgQ1JTX0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBDUlNfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgUFdSX1NPVEZfQkxFQUNUXzgwMkFDVF9SRlBIQVNFX0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBQV1JfU09URl9CTEVBQ1RfODAyQUNUX1JGUEhBU0VfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgSVBDQ19DMV9SWF9JUlFIYW5kbGVyCisgIC50aHVtYl9zZXQgSVBDQ19DMV9SWF9JUlFIYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBJUENDX0MxX1RYX0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBJUENDX0MxX1RYX0lSUUhhbmRsZXIsRGVmYXVsdF9IYW5kbGVyCisKKyAgLndlYWsgIEhTRU1fSVJRSGFuZGxlcgorICAudGh1bWJfc2V0IEhTRU1fSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgTFBUSU0xX0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBMUFRJTTFfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgTFBUSU0yX0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBMUFRJTTJfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgUVVBRFNQSV9JUlFIYW5kbGVyCisgIC50aHVtYl9zZXQgUVVBRFNQSV9JUlFIYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBBRVMxX0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBBRVMxX0lSUUhhbmRsZXIsRGVmYXVsdF9IYW5kbGVyCisKKyAgLndlYWsgIEFFUzJfSVJRSGFuZGxlcgorICAudGh1bWJfc2V0IEFFUzJfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgUk5HX0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBSTkdfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgRlBVX0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBGUFVfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgRE1BMl9DaGFubmVsMV9JUlFIYW5kbGVyCisgIC50aHVtYl9zZXQgRE1BMl9DaGFubmVsMV9JUlFIYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBETUEyX0NoYW5uZWwyX0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBETUEyX0NoYW5uZWwyX0lSUUhhbmRsZXIsRGVmYXVsdF9IYW5kbGVyCisKKyAgLndlYWsgIERNQTJfQ2hhbm5lbDNfSVJRSGFuZGxlcgorICAudGh1bWJfc2V0IERNQTJfQ2hhbm5lbDNfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgRE1BMl9DaGFubmVsNF9JUlFIYW5kbGVyCisgIC50aHVtYl9zZXQgRE1BMl9DaGFubmVsNF9JUlFIYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBETUEyX0NoYW5uZWw1X0lSUUhhbmRsZXIKKyAgLnRodW1iX3NldCBETUEyX0NoYW5uZWw1X0lSUUhhbmRsZXIsRGVmYXVsdF9IYW5kbGVyCisKKyAgLndlYWsgIERNQTJfQ2hhbm5lbDZfSVJRSGFuZGxlcgorICAudGh1bWJfc2V0IERNQTJfQ2hhbm5lbDZfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworICAud2VhayAgRE1BMl9DaGFubmVsN19JUlFIYW5kbGVyCisgIC50aHVtYl9zZXQgRE1BMl9DaGFubmVsN19JUlFIYW5kbGVyLERlZmF1bHRfSGFuZGxlcgorCisgIC53ZWFrICBETUFNVVgxX09WUl9JUlFIYW5kbGVyCisgIC50aHVtYl9zZXQgRE1BTVVYMV9PVlJfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKKworLyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UZW1wbGF0ZXMvZ2NjL3N0YXJ0dXBfc3RtMzJ3YjUweHhfY200LnMgYi9Tb3VyY2UvVGVtcGxhdGVzL2djYy9zdGFydHVwX3N0bTMyd2I1MHh4X2NtNC5zCmluZGV4IDAyNmI1Y2IuLjE5NGE0ZjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UZW1wbGF0ZXMvZ2NjL3N0YXJ0dXBfc3RtMzJ3YjUweHhfY200LnMKKysrIGIvU291cmNlL1RlbXBsYXRlcy9nY2Mvc3RhcnR1cF9zdG0zMndiNTB4eF9jbTQucwpAQCAtNDQsNiArNDQsNDggQEAKIC53b3JkCV9zYnNzCiAvKiBlbmQgYWRkcmVzcyBmb3IgdGhlIC5ic3Mgc2VjdGlvbi4gZGVmaW5lZCBpbiBsaW5rZXIgc2NyaXB0ICovCiAud29yZAlfZWJzcworLyogc3RhcnQgYWRkcmVzcyBmb3IgdGhlIC5NQl9NRU0yIHNlY3Rpb24uIGRlZmluZWQgaW4gbGlua2VyIHNjcmlwdCAqLworLndvcmQgX3NNQl9NRU0yCisvKiBlbmQgYWRkcmVzcyBmb3IgdGhlIC5NQl9NRU0yIHNlY3Rpb24uIGRlZmluZWQgaW4gbGlua2VyIHNjcmlwdCAqLworLndvcmQgX2VNQl9NRU0yCisKKy8qIElOSVRfQlNTIG1hY3JvIGlzIHVzZWQgdG8gZmlsbCB0aGUgc3BlY2lmaWVkIHJlZ2lvbiBbc3RhcnQgOiBlbmRdIHdpdGggemVyb3MgKi8KKy5tYWNybyBJTklUX0JTUyBzdGFydCwgZW5kCisgIGxkciByMCwgPVxzdGFydAorICBsZHIgcjEsID1cZW5kCisgIG1vdnMgcjMsICMwCisgIGJsIExvb3BGaWxsWmVyb2JzcworLmVuZG0KKworLyogSU5JVF9EQVRBIG1hY3JvIGlzIHVzZWQgdG8gY29weSBkYXRhIGluIHRoZSByZWdpb24gW3N0YXJ0IDogZW5kXSBzdGFydGluZyBmcm9tICdzcmMnICovCisubWFjcm8gSU5JVF9EQVRBIHN0YXJ0LCBlbmQsIHNyYworICBsZHIgcjAsID1cc3RhcnQKKyAgbGRyIHIxLCA9XGVuZAorICBsZHIgcjIsID1cc3JjCisgIG1vdnMgcjMsICMwCisgIGJsIExvb3BDb3B5RGF0YUluaXQKKy5lbmRtCisKKy5zZWN0aW9uICAudGV4dC5kYXRhX2luaXRpYWxpemVycworQ29weURhdGFJbml0OgorICBsZHIgcjQsIFtyMiwgcjNdCisgIHN0ciByNCwgW3IwLCByM10KKyAgYWRkcyByMywgcjMsICM0CisKK0xvb3BDb3B5RGF0YUluaXQ6CisgIGFkZHMgcjQsIHIwLCByMworICBjbXAgcjQsIHIxCisgIGJjYyAgQ29weURhdGFJbml0CisgIGJ4IGxyCisKK0ZpbGxaZXJvYnNzOgorICBzdHIgIHIzLCBbcjBdCisgIGFkZHMgcjAsIHIwLCAjNAorCitMb29wRmlsbFplcm9ic3M6CisgIGNtcCByMCwgcjEKKyAgYmNjIEZpbGxaZXJvYnNzCisgIGJ4IGxyCiAKICAgLnNlY3Rpb24gLnRleHQuUmVzZXRfSGFuZGxlcgogICAud2VhayBSZXNldF9IYW5kbGVyCkBAIC01MywzNSArOTUsMTEgQEAKICAgbW92ICAgc3AsIHIwICAgICAgICAgIC8qIHNldCBzdGFjayBwb2ludGVyICovCiAKIC8qIENvcHkgdGhlIGRhdGEgc2VnbWVudCBpbml0aWFsaXplcnMgZnJvbSBmbGFzaCB0byBTUkFNICovCi0gIGxkciByMCwgPV9zZGF0YQotICBsZHIgcjEsID1fZWRhdGEKLSAgbGRyIHIyLCA9X3NpZGF0YQotICBtb3ZzIHIzLCAjMAotICBiCUxvb3BDb3B5RGF0YUluaXQKKyAgSU5JVF9EQVRBIF9zZGF0YSwgX2VkYXRhLCBfc2lkYXRhCiAKLUNvcHlEYXRhSW5pdDoKLSAgbGRyIHI0LCBbcjIsIHIzXQotICBzdHIgcjQsIFtyMCwgcjNdCi0gIGFkZHMgcjMsIHIzLCAjNAotCi1Mb29wQ29weURhdGFJbml0OgotICBhZGRzIHI0LCByMCwgcjMKLSAgY21wIHI0LCByMQotICBiY2MgQ29weURhdGFJbml0Ci0gIAotLyogWmVybyBmaWxsIHRoZSBic3Mgc2VnbWVudC4gKi8KLSAgbGRyIHIyLCA9X3Nic3MKLSAgbGRyIHI0LCA9X2Vic3MKLSAgbW92cyByMywgIzAKLSAgYiBMb29wRmlsbFplcm9ic3MKLQotRmlsbFplcm9ic3M6Ci0gIHN0ciAgcjMsIFtyMl0KLSAgYWRkcyByMiwgcjIsICM0Ci0KLUxvb3BGaWxsWmVyb2JzczoKLSAgY21wIHIyLCByNAotICBiY2MgRmlsbFplcm9ic3MKKy8qIFplcm8gZmlsbCB0aGUgYnNzIHNlZ21lbnRzLiAqLworICBJTklUX0JTUyBfc2JzcywgX2Vic3MKKyAgSU5JVF9CU1MgX3NNQl9NRU0yLCBfZU1CX01FTTIKIAogLyogQ2FsbCB0aGUgY2xvY2sgc3lzdGVtIGludGl0aWFsaXphdGlvbiBmdW5jdGlvbi4qLwogICBibCAgU3lzdGVtSW5pdApkaWZmIC0tZ2l0IGEvU291cmNlL1RlbXBsYXRlcy9nY2Mvc3RhcnR1cF9zdG0zMndiNTV4eF9jbTQucyBiL1NvdXJjZS9UZW1wbGF0ZXMvZ2NjL3N0YXJ0dXBfc3RtMzJ3YjU1eHhfY200LnMKaW5kZXggMDIzYzFiMC4uZjc5ZWVjMSAxMDA2NDQKLS0tIGEvU291cmNlL1RlbXBsYXRlcy9nY2Mvc3RhcnR1cF9zdG0zMndiNTV4eF9jbTQucworKysgYi9Tb3VyY2UvVGVtcGxhdGVzL2djYy9zdGFydHVwX3N0bTMyd2I1NXh4X2NtNC5zCkBAIC00NCw2ICs0NCw0OCBAQAogLndvcmQJX3Nic3MKIC8qIGVuZCBhZGRyZXNzIGZvciB0aGUgLmJzcyBzZWN0aW9uLiBkZWZpbmVkIGluIGxpbmtlciBzY3JpcHQgKi8KIC53b3JkCV9lYnNzCisvKiBzdGFydCBhZGRyZXNzIGZvciB0aGUgLk1CX01FTTIgc2VjdGlvbi4gZGVmaW5lZCBpbiBsaW5rZXIgc2NyaXB0ICovCisud29yZCBfc01CX01FTTIKKy8qIGVuZCBhZGRyZXNzIGZvciB0aGUgLk1CX01FTTIgc2VjdGlvbi4gZGVmaW5lZCBpbiBsaW5rZXIgc2NyaXB0ICovCisud29yZCBfZU1CX01FTTIKKworLyogSU5JVF9CU1MgbWFjcm8gaXMgdXNlZCB0byBmaWxsIHRoZSBzcGVjaWZpZWQgcmVnaW9uIFtzdGFydCA6IGVuZF0gd2l0aCB6ZXJvcyAqLworLm1hY3JvIElOSVRfQlNTIHN0YXJ0LCBlbmQKKyAgbGRyIHIwLCA9XHN0YXJ0CisgIGxkciByMSwgPVxlbmQKKyAgbW92cyByMywgIzAKKyAgYmwgTG9vcEZpbGxaZXJvYnNzCisuZW5kbQorCisvKiBJTklUX0RBVEEgbWFjcm8gaXMgdXNlZCB0byBjb3B5IGRhdGEgaW4gdGhlIHJlZ2lvbiBbc3RhcnQgOiBlbmRdIHN0YXJ0aW5nIGZyb20gJ3NyYycgKi8KKy5tYWNybyBJTklUX0RBVEEgc3RhcnQsIGVuZCwgc3JjCisgIGxkciByMCwgPVxzdGFydAorICBsZHIgcjEsID1cZW5kCisgIGxkciByMiwgPVxzcmMKKyAgbW92cyByMywgIzAKKyAgYmwgTG9vcENvcHlEYXRhSW5pdAorLmVuZG0KKworLnNlY3Rpb24gIC50ZXh0LmRhdGFfaW5pdGlhbGl6ZXJzCitDb3B5RGF0YUluaXQ6CisgIGxkciByNCwgW3IyLCByM10KKyAgc3RyIHI0LCBbcjAsIHIzXQorICBhZGRzIHIzLCByMywgIzQKKworTG9vcENvcHlEYXRhSW5pdDoKKyAgYWRkcyByNCwgcjAsIHIzCisgIGNtcCByNCwgcjEKKyAgYmNjICBDb3B5RGF0YUluaXQKKyAgYnggbHIKKworRmlsbFplcm9ic3M6CisgIHN0ciAgcjMsIFtyMF0KKyAgYWRkcyByMCwgcjAsICM0CisKK0xvb3BGaWxsWmVyb2JzczoKKyAgY21wIHIwLCByMQorICBiY2MgRmlsbFplcm9ic3MKKyAgYnggbHIKIAogICAuc2VjdGlvbiAudGV4dC5SZXNldF9IYW5kbGVyCiAgIC53ZWFrIFJlc2V0X0hhbmRsZXIKQEAgLTUzLDM1ICs5NSwxMSBAQAogICBtb3YgICBzcCwgcjAgICAgICAgICAgLyogc2V0IHN0YWNrIHBvaW50ZXIgKi8KIAogLyogQ29weSB0aGUgZGF0YSBzZWdtZW50IGluaXRpYWxpemVycyBmcm9tIGZsYXNoIHRvIFNSQU0gKi8KLSAgbGRyIHIwLCA9X3NkYXRhCi0gIGxkciByMSwgPV9lZGF0YQotICBsZHIgcjIsID1fc2lkYXRhCi0gIG1vdnMgcjMsICMwCi0gIGIJTG9vcENvcHlEYXRhSW5pdAorICBJTklUX0RBVEEgX3NkYXRhLCBfZWRhdGEsIF9zaWRhdGEKIAotQ29weURhdGFJbml0OgotICBsZHIgcjQsIFtyMiwgcjNdCi0gIHN0ciByNCwgW3IwLCByM10KLSAgYWRkcyByMywgcjMsICM0Ci0KLUxvb3BDb3B5RGF0YUluaXQ6Ci0gIGFkZHMgcjQsIHIwLCByMwotICBjbXAgcjQsIHIxCi0gIGJjYyBDb3B5RGF0YUluaXQKLSAgCi0vKiBaZXJvIGZpbGwgdGhlIGJzcyBzZWdtZW50LiAqLwotICBsZHIgcjIsID1fc2JzcwotICBsZHIgcjQsID1fZWJzcwotICBtb3ZzIHIzLCAjMAotICBiIExvb3BGaWxsWmVyb2JzcwotCi1GaWxsWmVyb2JzczoKLSAgc3RyICByMywgW3IyXQotICBhZGRzIHIyLCByMiwgIzQKLQotTG9vcEZpbGxaZXJvYnNzOgotICBjbXAgcjIsIHI0Ci0gIGJjYyBGaWxsWmVyb2JzcworLyogWmVybyBmaWxsIHRoZSBic3Mgc2VnbWVudHMuICovCisgIElOSVRfQlNTIF9zYnNzLCBfZWJzcworICBJTklUX0JTUyBfc01CX01FTTIsIF9lTUJfTUVNMgogCiAvKiBDYWxsIHRoZSBjbG9jayBzeXN0ZW0gaW50aXRpYWxpemF0aW9uIGZ1bmN0aW9uLiovCiAgIGJsICBTeXN0ZW1Jbml0CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGVtcGxhdGVzL2lhci9saW5rZXIvc3RtMzJ3YjM1eHhfZmxhc2hfY20wLmljZiBiL1NvdXJjZS9UZW1wbGF0ZXMvaWFyL2xpbmtlci9zdG0zMndiMzV4eF9mbGFzaF9jbTAuaWNmCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjExZjA2NjMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGVtcGxhdGVzL2lhci9saW5rZXIvc3RtMzJ3YjM1eHhfZmxhc2hfY20wLmljZgpAQCAtMCwwICsxLDQwIEBACisvKiMjI0lDRiMjIyBTZWN0aW9uIGhhbmRsZWQgYnkgSUNGIGVkaXRvciwgZG9uJ3QgdG91Y2ghICoqKiovCisvKi1FZGl0b3IgYW5ub3RhdGlvbiBmaWxlLSovCisvKiBJY2ZFZGl0b3JGaWxlPSIkVE9PTEtJVF9ESVIkXGNvbmZpZ1xpZGVcSWNmRWRpdG9yXGNvcnRleF92MV8wLnhtbCIgKi8KKy8qLVNwZWNpYWxzLSovCitkZWZpbmUgc3ltYm9sIF9fSUNGRURJVF9pbnR2ZWNfc3RhcnRfXyA9IDB4MDgwNDAwMDAgOworLyotTWVtb3J5IFJlZ2lvbnMtKi8KKy8qKioqKioqKioqKioqKioqKiovCisvKioqKiogRkxBU0ggUGFydCBkZWRpY2F0ZWQgdG8gTTAgKioqKiovCitkZWZpbmUgc3ltYm9sIF9fSUNGRURJVF9yZWdpb25fUk9NX3N0YXJ0X18gICAgPSAweDA4MDQwMDAwIDsgIAorZGVmaW5lIHN5bWJvbCBfX0lDRkVESVRfcmVnaW9uX1JPTV9lbmRfXyAgICAgID0gMHgwODA3RkZGRiA7CisvKioqKiogUkFNMmIgZGVkaWNhdGVkIHRvIE0wICoqKioqLworZGVmaW5lIHN5bWJvbCBfX0lDRkVESVRfcmVnaW9uX1JBTV9zdGFydF9fICAgID0gMHgyMDAwODAwMCAgOworZGVmaW5lIHN5bWJvbCBfX0lDRkVESVRfcmVnaW9uX1JBTV9lbmRfXyAgICAgID0gMHgyMDAwRkZGRiAgOworLyoqKioqIFJBTTJhICoqKioqLworZGVmaW5lIHN5bWJvbCBfX0lDRkVESVRfcmVnaW9uX1JBTV9TSEFSRURfc3RhcnRfXyAgPSAweDIwMDMwMDAwICA7CitkZWZpbmUgc3ltYm9sIF9fSUNGRURJVF9yZWdpb25fUkFNX1NIQVJFRF9lbmRfXyAgICA9IDB4MjAwMzdGRkYgIDsKKworLyotU2l6ZXMtKi8KK2RlZmluZSBzeW1ib2wgX19JQ0ZFRElUX3NpemVfY3N0YWNrX18gPSAweDQwMDsKK2RlZmluZSBzeW1ib2wgX19JQ0ZFRElUX3NpemVfaGVhcF9fICAgPSAweDIwMDsKKy8qKioqIEVuZCBvZiBJQ0YgZWRpdG9yIHNlY3Rpb24uICMjI0lDRiMjIyovCisKKworZGVmaW5lIG1lbW9yeSBtZW0gd2l0aCBzaXplID0gNEc7CitkZWZpbmUgcmVnaW9uIFJPTV9yZWdpb24gICAgICA9IG1lbTpbZnJvbSBfX0lDRkVESVRfcmVnaW9uX1JPTV9zdGFydF9fICAgdG8gX19JQ0ZFRElUX3JlZ2lvbl9ST01fZW5kX19dOworZGVmaW5lIHJlZ2lvbiBSQU1fcmVnaW9uICAgICAgPSBtZW06W2Zyb20gX19JQ0ZFRElUX3JlZ2lvbl9SQU1fc3RhcnRfXyAgIHRvIF9fSUNGRURJVF9yZWdpb25fUkFNX2VuZF9fXTsKK2RlZmluZSByZWdpb24gUkFNX1NIQVJFRF9yZWdpb24gICAgPSBtZW06W2Zyb20gX19JQ0ZFRElUX3JlZ2lvbl9SQU1fU0hBUkVEX3N0YXJ0X18gICB0byBfX0lDRkVESVRfcmVnaW9uX1JBTV9TSEFSRURfZW5kX19dOworCisKK2RlZmluZSBibG9jayBDU1RBQ0sgICAgd2l0aCBhbGlnbm1lbnQgPSA4LCBzaXplID0gX19JQ0ZFRElUX3NpemVfY3N0YWNrX18gICB7IH07CitkZWZpbmUgYmxvY2sgSEVBUCAgICAgIHdpdGggYWxpZ25tZW50ID0gOCwgc2l6ZSA9IF9fSUNGRURJVF9zaXplX2hlYXBfXyAgICAgeyB9OworCitpbml0aWFsaXplIGJ5IGNvcHkgeyByZWFkd3JpdGUgfTsKK2RvIG5vdCBpbml0aWFsaXplICB7IHNlY3Rpb24gLm5vaW5pdCB9OworCitwbGFjZSBhdCBhZGRyZXNzIG1lbTpfX0lDRkVESVRfaW50dmVjX3N0YXJ0X18geyByZWFkb25seSBzZWN0aW9uIC5pbnR2ZWMgfTsKKworcGxhY2UgaW4gUk9NX3JlZ2lvbiAgIHsgcmVhZG9ubHkgfTsKK3BsYWNlIGluIFJBTV9yZWdpb24gICB7IHJlYWR3cml0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGJsb2NrIENTVEFDSywgYmxvY2sgSEVBUCB9OwpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9UZW1wbGF0ZXMvaWFyL2xpbmtlci9zdG0zMndiMzV4eF9mbGFzaF9jbTQuaWNmIGIvU291cmNlL1RlbXBsYXRlcy9pYXIvbGlua2VyL3N0bTMyd2IzNXh4X2ZsYXNoX2NtNC5pY2YKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGYzMzE3YQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UZW1wbGF0ZXMvaWFyL2xpbmtlci9zdG0zMndiMzV4eF9mbGFzaF9jbTQuaWNmCkBAIC0wLDAgKzEsNDAgQEAKKy8qIyMjSUNGIyMjIFNlY3Rpb24gaGFuZGxlZCBieSBJQ0YgZWRpdG9yLCBkb24ndCB0b3VjaCEgKioqKi8KKy8qLUVkaXRvciBhbm5vdGF0aW9uIGZpbGUtKi8KKy8qIEljZkVkaXRvckZpbGU9IiRUT09MS0lUX0RJUiRcY29uZmlnXGlkZVxJY2ZFZGl0b3JcY29ydGV4X3YxXzAueG1sIiAqLworLyotU3BlY2lhbHMtKi8KK2RlZmluZSBzeW1ib2wgX19JQ0ZFRElUX2ludHZlY19zdGFydF9fID0gMHgwODAwMDAwMDsKKy8qLU1lbW9yeSBSZWdpb25zLSovCisvKioqKiogRkxBU0ggUGFydCBkZWRpY2F0ZWQgdG8gTTQgKioqKiovCitkZWZpbmUgc3ltYm9sIF9fSUNGRURJVF9yZWdpb25fUk9NX3N0YXJ0X18gPSAweDA4MDAwMDAwOworZGVmaW5lIHN5bWJvbCBfX0lDRkVESVRfcmVnaW9uX1JPTV9lbmRfXyAgID0gMHgwODAzRkZGRjsKK2RlZmluZSBzeW1ib2wgX19JQ0ZFRElUX3JlZ2lvbl9SQU1fc3RhcnRfXyA9IDB4MjAwMDAwMDQ7CitkZWZpbmUgc3ltYm9sIF9fSUNGRURJVF9yZWdpb25fUkFNX2VuZF9fICAgPSAweDIwMDA3RkZGOworLyotU2l6ZXMtKi8KK2RlZmluZSBzeW1ib2wgX19JQ0ZFRElUX3NpemVfY3N0YWNrX18gPSAweDEwMDA7CitkZWZpbmUgc3ltYm9sIF9fSUNGRURJVF9zaXplX2hlYXBfXyAgID0gMHg0MDA7CisvKioqKiBFbmQgb2YgSUNGIGVkaXRvciBzZWN0aW9uLiAjIyNJQ0YjIyMqLworCitkZWZpbmUgc3ltYm9sIF9fSUNGRURJVF9yZWdpb25fUkFNX1NIQVJFRF9zdGFydF9fID0gMHgyMDAwODAwMDsKK2RlZmluZSBzeW1ib2wgX19JQ0ZFRElUX3JlZ2lvbl9SQU1fU0hBUkVEX2VuZF9fICAgPSAweDIwMDBBN0ZGOworCitkZWZpbmUgbWVtb3J5IG1lbSB3aXRoIHNpemUgPSA0RzsKK2RlZmluZSByZWdpb24gUk9NX3JlZ2lvbiAgICAgICAgPSBtZW06W2Zyb20gX19JQ0ZFRElUX3JlZ2lvbl9ST01fc3RhcnRfXyAgIHRvIF9fSUNGRURJVF9yZWdpb25fUk9NX2VuZF9fXTsKK2RlZmluZSByZWdpb24gUkFNX3JlZ2lvbiAgICAgICAgPSBtZW06W2Zyb20gX19JQ0ZFRElUX3JlZ2lvbl9SQU1fc3RhcnRfXyAgIHRvIF9fSUNGRURJVF9yZWdpb25fUkFNX2VuZF9fXTsKK2RlZmluZSByZWdpb24gUkFNX1NIQVJFRF9yZWdpb24gPSBtZW06W2Zyb20gX19JQ0ZFRElUX3JlZ2lvbl9SQU1fU0hBUkVEX3N0YXJ0X18gICB0byBfX0lDRkVESVRfcmVnaW9uX1JBTV9TSEFSRURfZW5kX19dOworCitkZWZpbmUgYmxvY2sgQ1NUQUNLICAgIHdpdGggYWxpZ25tZW50ID0gOCwgc2l6ZSA9IF9fSUNGRURJVF9zaXplX2NzdGFja19fICAgeyB9OworZGVmaW5lIGJsb2NrIEhFQVAgICAgICB3aXRoIGFsaWdubWVudCA9IDgsIHNpemUgPSBfX0lDRkVESVRfc2l6ZV9oZWFwX18gICAgIHsgfTsKKworLyogTUJfTUVNMSBhbmQgTUJfTUVNMiBhcmUgc2VjdGlvbnMgcmVzZXJ2ZWQgdG8gbWFpbGJveCBjb21tdW5pY2F0aW9uLiBJdCBpcyBwbGFjZWQgaW4gdGhlIHNoYXJlZCBtZW1vcnkgKi8KK2luaXRpYWxpemUgYnkgY29weSB7IHJlYWR3cml0ZSB9OworZG8gbm90IGluaXRpYWxpemUgIHsgc2VjdGlvbiAubm9pbml0LAorICAgICAgICAgICAgICAgICAgICAgc2VjdGlvbiBNQVBQSU5HX1RBQkxFLAorICAgICAgICAgICAgICAgICAgICAgc2VjdGlvbiBNQl9NRU0xIH07CisKK3BsYWNlIGF0IGFkZHJlc3MgbWVtOl9fSUNGRURJVF9pbnR2ZWNfc3RhcnRfXyB7IHJlYWRvbmx5IHNlY3Rpb24gLmludHZlYyB9OworCitwbGFjZSBpbiBST01fcmVnaW9uICAgICAgICB7IHJlYWRvbmx5IH07CitwbGFjZSBpbiBSQU1fcmVnaW9uICAgICAgICB7IHJlYWR3cml0ZSxibG9jayBDU1RBQ0ssIGJsb2NrIEhFQVAgfTsKK3BsYWNlIGluIFJBTV9TSEFSRURfcmVnaW9uIHsgZmlyc3Qgc2VjdGlvbiBNQVBQSU5HX1RBQkxFfTsKK3BsYWNlIGluIFJBTV9TSEFSRURfcmVnaW9uIHsgc2VjdGlvbiBNQl9NRU0xfTsKK3BsYWNlIGluIFJBTV9TSEFSRURfcmVnaW9uIHsgc2VjdGlvbiBNQl9NRU0yfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UZW1wbGF0ZXMvaWFyL2xpbmtlci9zdG0zMndiMzV4eF9zcmFtX2NtMC5pY2YgYi9Tb3VyY2UvVGVtcGxhdGVzL2lhci9saW5rZXIvc3RtMzJ3YjM1eHhfc3JhbV9jbTAuaWNmCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZiYzdlODIKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGVtcGxhdGVzL2lhci9saW5rZXIvc3RtMzJ3YjM1eHhfc3JhbV9jbTAuaWNmCkBAIC0wLDAgKzEsMzMgQEAKKy8qIyMjSUNGIyMjIFNlY3Rpb24gaGFuZGxlZCBieSBJQ0YgZWRpdG9yLCBkb24ndCB0b3VjaCEgKioqKi8KKy8qLUVkaXRvciBhbm5vdGF0aW9uIGZpbGUtKi8KKy8qIEljZkVkaXRvckZpbGU9IiRUT09MS0lUX0RJUiRcY29uZmlnXGlkZVxJY2ZFZGl0b3JcY29ydGV4X3YxXzAueG1sIiAqLworLyotU3BlY2lhbHMtKi8KK2RlZmluZSBzeW1ib2wgX19JQ0ZFRElUX2ludHZlY19zdGFydF9fID0gMHgyMDAwODAwMCA7CisvKi1NZW1vcnkgUmVnaW9ucy0qLworZGVmaW5lIHN5bWJvbCBfX0lDRkVESVRfcmVnaW9uX1JPTV9zdGFydF9fID0gMHgyMDAwODAwMDsKK2RlZmluZSBzeW1ib2wgX19JQ0ZFRElUX3JlZ2lvbl9ST01fZW5kX18gICA9IDB4MjAwMEJGRkY7CitkZWZpbmUgc3ltYm9sIF9fSUNGRURJVF9yZWdpb25fUkFNX3N0YXJ0X18gPSAweDIwMDBDMDAwOworZGVmaW5lIHN5bWJvbCBfX0lDRkVESVRfcmVnaW9uX1JBTV9lbmRfXyAgID0gMHgyMDAwRkZGRjsKKworLyotU2l6ZXMtKi8KK2RlZmluZSBzeW1ib2wgX19JQ0ZFRElUX3NpemVfY3N0YWNrX18gPSAweDQwMDsKK2RlZmluZSBzeW1ib2wgX19JQ0ZFRElUX3NpemVfaGVhcF9fICAgPSAweDIwMDsKKy8qKioqIEVuZCBvZiBJQ0YgZWRpdG9yIHNlY3Rpb24uICMjI0lDRiMjIyovCisKKworZGVmaW5lIG1lbW9yeSBtZW0gd2l0aCBzaXplID0gNEc7CitkZWZpbmUgcmVnaW9uIFJPTV9yZWdpb24gICAgICA9IG1lbTpbZnJvbSBfX0lDRkVESVRfcmVnaW9uX1JPTV9zdGFydF9fICAgdG8gX19JQ0ZFRElUX3JlZ2lvbl9ST01fZW5kX19dOworZGVmaW5lIHJlZ2lvbiBSQU1fcmVnaW9uICAgICAgPSBtZW06W2Zyb20gX19JQ0ZFRElUX3JlZ2lvbl9SQU1fc3RhcnRfXyAgIHRvIF9fSUNGRURJVF9yZWdpb25fUkFNX2VuZF9fXTsKKworCitkZWZpbmUgYmxvY2sgQ1NUQUNLICAgIHdpdGggYWxpZ25tZW50ID0gOCwgc2l6ZSA9IF9fSUNGRURJVF9zaXplX2NzdGFja19fICAgeyB9OworZGVmaW5lIGJsb2NrIEhFQVAgICAgICB3aXRoIGFsaWdubWVudCA9IDgsIHNpemUgPSBfX0lDRkVESVRfc2l6ZV9oZWFwX18gICAgIHsgfTsKKworaW5pdGlhbGl6ZSBieSBjb3B5IHsgcmVhZHdyaXRlIH07CitkbyBub3QgaW5pdGlhbGl6ZSAgeyBzZWN0aW9uIC5ub2luaXQgfTsKKworcGxhY2UgYXQgYWRkcmVzcyBtZW06X19JQ0ZFRElUX2ludHZlY19zdGFydF9fIHsgcmVhZG9ubHkgc2VjdGlvbiAuaW50dmVjIH07CisKK3BsYWNlIGluIFJPTV9yZWdpb24gICB7IHJlYWRvbmx5IH07CitwbGFjZSBpbiBSQU1fcmVnaW9uICAgeyByZWFkd3JpdGUsCisgICAgICAgICAgICAgICAgICAgICAgICBibG9jayBDU1RBQ0ssIGJsb2NrIEhFQVAgfTsKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGVtcGxhdGVzL2lhci9saW5rZXIvc3RtMzJ3YjM1eHhfc3JhbV9jbTQuaWNmIGIvU291cmNlL1RlbXBsYXRlcy9pYXIvbGlua2VyL3N0bTMyd2IzNXh4X3NyYW1fY200LmljZgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zMGIzNTExCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RlbXBsYXRlcy9pYXIvbGlua2VyL3N0bTMyd2IzNXh4X3NyYW1fY200LmljZgpAQCAtMCwwICsxLDM5IEBACisvKiMjI0lDRiMjIyBTZWN0aW9uIGhhbmRsZWQgYnkgSUNGIGVkaXRvciwgZG9uJ3QgdG91Y2ghICoqKiovCisvKi1FZGl0b3IgYW5ub3RhdGlvbiBmaWxlLSovCisvKiBJY2ZFZGl0b3JGaWxlPSIkVE9PTEtJVF9ESVIkXGNvbmZpZ1xpZGVcSWNmRWRpdG9yXGNvcnRleF92MV8wLnhtbCIgKi8KKy8qLVNwZWNpYWxzLSovCitkZWZpbmUgc3ltYm9sIF9fSUNGRURJVF9pbnR2ZWNfc3RhcnRfXyA9IDB4MjAwMDAwMDA7CisvKi1NZW1vcnkgUmVnaW9ucy0qLworLyoqKioqIFJBTSBkZWRpY2F0ZWQgdG8gTTQgKioqKiovCitkZWZpbmUgc3ltYm9sIF9fSUNGRURJVF9yZWdpb25fUk9NX3N0YXJ0X18gPSAweDIwMDAwMDAwOworZGVmaW5lIHN5bWJvbCBfX0lDRkVESVRfcmVnaW9uX1JPTV9lbmRfXyAgID0gMHgyMDAwM0ZGRjsKKworZGVmaW5lIHN5bWJvbCBfX0lDRkVESVRfcmVnaW9uX1JBTV9zdGFydF9fICA9IDB4MjAwMDQwMDAgIDsKK2RlZmluZSBzeW1ib2wgX19JQ0ZFRElUX3JlZ2lvbl9SQU1fZW5kX18gICAgPSAweDIwMDA3RkZGIDsKKworLyoqKioqIFJBTTJhICoqKioqLworZGVmaW5lIHN5bWJvbCBfX0lDRkVESVRfcmVnaW9uX1JBTV9TSEFSRURfc3RhcnRfXyAgPSAweDIwMDA4MDAwICA7CitkZWZpbmUgc3ltYm9sIF9fSUNGRURJVF9yZWdpb25fUkFNX1NIQVJFRF9lbmRfXyAgICA9IDB4MjAwMEZGRkYgIDsKKworLyotU2l6ZXMtKi8KK2RlZmluZSBzeW1ib2wgX19JQ0ZFRElUX3NpemVfY3N0YWNrX18gPSAweDQwMDsKK2RlZmluZSBzeW1ib2wgX19JQ0ZFRElUX3NpemVfaGVhcF9fICAgPSAweDIwMDsKKy8qKioqIEVuZCBvZiBJQ0YgZWRpdG9yIHNlY3Rpb24uICMjI0lDRiMjIyovCisKKworZGVmaW5lIG1lbW9yeSBtZW0gd2l0aCBzaXplID0gNEc7CitkZWZpbmUgcmVnaW9uIFJPTV9yZWdpb24gICAgICA9IG1lbTpbZnJvbSBfX0lDRkVESVRfcmVnaW9uX1JPTV9zdGFydF9fICAgdG8gX19JQ0ZFRElUX3JlZ2lvbl9ST01fZW5kX19dOworZGVmaW5lIHJlZ2lvbiBSQU1fcmVnaW9uICAgICAgPSBtZW06W2Zyb20gX19JQ0ZFRElUX3JlZ2lvbl9SQU1fc3RhcnRfXyAgIHRvIF9fSUNGRURJVF9yZWdpb25fUkFNX2VuZF9fXTsKKworCitkZWZpbmUgYmxvY2sgQ1NUQUNLICAgIHdpdGggYWxpZ25tZW50ID0gOCwgc2l6ZSA9IF9fSUNGRURJVF9zaXplX2NzdGFja19fICAgeyB9OworZGVmaW5lIGJsb2NrIEhFQVAgICAgICB3aXRoIGFsaWdubWVudCA9IDgsIHNpemUgPSBfX0lDRkVESVRfc2l6ZV9oZWFwX18gICAgIHsgfTsKKworaW5pdGlhbGl6ZSBieSBjb3B5IHsgcmVhZHdyaXRlIH07CitkbyBub3QgaW5pdGlhbGl6ZSAgeyBzZWN0aW9uIC5ub2luaXQgfTsKKworcGxhY2UgYXQgYWRkcmVzcyBtZW06X19JQ0ZFRElUX2ludHZlY19zdGFydF9fIHsgcmVhZG9ubHkgc2VjdGlvbiAuaW50dmVjIH07CisKK3BsYWNlIGluIFJPTV9yZWdpb24gICB7IHJlYWRvbmx5IH07CitwbGFjZSBpbiBSQU1fcmVnaW9uICAgeyByZWFkd3JpdGUsCisgICAgICAgICAgICAgICAgICAgICAgICBibG9jayBDU1RBQ0ssIGJsb2NrIEhFQVAgfTsKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGVtcGxhdGVzL2lhci9zdGFydHVwX3N0bTMyd2IzNXh4X2NtMC5zIGIvU291cmNlL1RlbXBsYXRlcy9pYXIvc3RhcnR1cF9zdG0zMndiMzV4eF9jbTAucwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kODBhNDYzCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RlbXBsYXRlcy9pYXIvc3RhcnR1cF9zdG0zMndiMzV4eF9jbTAucwpAQCAtMCwwICsxLDMwMSBAQAorOyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorOyogRmlsZSBOYW1lICAgICAgICAgIDogc3RhcnR1cF9zdG0zMndiNTV4eF9jbTAucworOyogQXV0aG9yICAgICAgICAgICAgIDogTUNEIEFwcGxpY2F0aW9uIFRlYW0KKzsqIERlc2NyaXB0aW9uICAgICAgICA6IE1PKyBjb3JlIHZlY3RvciB0YWJsZSBvZiB0aGUgU1RNMzJXQjU1eHggZGV2aWNlcyBmb3IgdGhlCis7KiAgICAgICAgICAgICAgICAgICAgICBJQVIgKEVXQVJNKSB0b29sY2hhaW4uCis7KgorOyogICAgICAgICAgICAgICAgICAgICAgVGhpcyBtb2R1bGUgcGVyZm9ybXM6Cis7KiAgICAgICAgICAgICAgICAgICAgICAtIFNldCB0aGUgaW5pdGlhbCBTUAorOyogICAgICAgICAgICAgICAgICAgICAgLSBTZXQgdGhlIGluaXRpYWwgUEMgPT0gX2lhcl9wcm9ncmFtX3N0YXJ0LAorOyogICAgICAgICAgICAgICAgICAgICAgLSBTZXQgdGhlIHZlY3RvciB0YWJsZSBlbnRyaWVzIHdpdGggdGhlIGV4Y2VwdGlvbnMgSVNSCis7KiAgICAgICAgICAgICAgICAgICAgICAgIGFkZHJlc3MuCis7KiAgICAgICAgICAgICAgICAgICAgICAtIEJyYW5jaGVzIHRvIG1haW4gaW4gdGhlIEMgbGlicmFyeSAod2hpY2ggZXZlbnR1YWxseQorOyogICAgICAgICAgICAgICAgICAgICAgICBjYWxscyBtYWluKCkpLgorOyogICAgICAgICAgICAgICAgICAgICAgQWZ0ZXIgUmVzZXQgdGhlIENvcnRleC1NMCsgcHJvY2Vzc29yIGlzIGluIFRocmVhZCBtb2RlLAorOyogICAgICAgICAgICAgICAgICAgICAgcHJpb3JpdHkgaXMgUHJpdmlsZWdlZCwgYW5kIHRoZSBTdGFjayBpcyBzZXQgdG8gTWFpbi4KKzsqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKzsqIEBhdHRlbnRpb24KKzsqCis7KiA8aDI+PGNlbnRlcj4mY29weTsgQ29weXJpZ2h0IChjKSAyMDE5IFNUTWljcm9lbGVjdHJvbmljcy4gCis7KiBBbGwgcmlnaHRzIHJlc2VydmVkLjwvY2VudGVyPjwvaDI+Cis7KgorOyogVGhpcyBzb2Z0d2FyZSBjb21wb25lbnQgaXMgbGljZW5zZWQgYnkgU1QgdW5kZXIgQlNEIDMtQ2xhdXNlIGxpY2Vuc2UsCis7KiB0aGUgIkxpY2Vuc2UiOyBZb3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIAorOyogTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0OgorOyogICAgICAgICAgICAgICAgICAgICAgICBvcGVuc291cmNlLm9yZy9saWNlbnNlcy9CU0QtMy1DbGF1c2UKKzsqCis7KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCis7Cis7Cis7IFRoZSBtb2R1bGVzIGluIHRoaXMgZmlsZSBhcmUgaW5jbHVkZWQgaW4gdGhlIGxpYnJhcmllcywgYW5kIG1heSBiZSByZXBsYWNlZAorOyBieSBhbnkgdXNlci1kZWZpbmVkIG1vZHVsZXMgdGhhdCBkZWZpbmUgdGhlIFBVQkxJQyBzeW1ib2wgX3Byb2dyYW1fc3RhcnQgb3IKKzsgYSB1c2VyIGRlZmluZWQgc3RhcnQgc3ltYm9sLgorOyBUbyBvdmVycmlkZSB0aGUgY3N0YXJ0dXAgZGVmaW5lZCBpbiB0aGUgbGlicmFyeSwgc2ltcGx5IGFkZCB5b3VyIG1vZGlmaWVkCis7IHZlcnNpb24gdG8gdGhlIHdvcmtiZW5jaCBwcm9qZWN0LgorOworOyBUaGUgdmVjdG9yIHRhYmxlIGlzIG5vcm1hbGx5IGxvY2F0ZWQgYXQgYWRkcmVzcyAwLgorOyBXaGVuIGRlYnVnZ2luZyBpbiBSQU0sIGl0IGNhbiBiZSBsb2NhdGVkIGluIFJBTSwgYWxpZ25lZCB0byBhdCBsZWFzdCAyXjYuCis7IFRoZSBuYW1lICJfX3ZlY3Rvcl90YWJsZSIgaGFzIHNwZWNpYWwgbWVhbmluZyBmb3IgQy1TUFk6Cis7IGl0IGlzIHdoZXJlIHRoZSBTUCBzdGFydCB2YWx1ZSBpcyBmb3VuZCwgYW5kIHRoZSBOVklDIHZlY3RvcgorOyB0YWJsZSByZWdpc3RlciAoVlRPUikgaXMgaW5pdGlhbGl6ZWQgdG8gdGhpcyBhZGRyZXNzIGlmICE9IDAuCis7Cis7IENvcnRleC1NIHZlcnNpb24KKzsKKworICAgICAgICBNT0RVTEUgID9jc3RhcnR1cAorCisgICAgICAgIDs7IEZvcndhcmQgZGVjbGFyYXRpb24gb2Ygc2VjdGlvbnMuCisgICAgICAgIFNFQ1RJT04gQ1NUQUNLOkRBVEE6Tk9ST09UKDMpCisKKyAgICAgICAgU0VDVElPTiAuaW50dmVjOkNPREU6Tk9ST09UKDIpCisKKyAgICAgICAgRVhURVJOICBfX2lhcl9wcm9ncmFtX3N0YXJ0CisgICAgICAgIEVYVEVSTiAgU3lzdGVtSW5pdAorICAgICAgICBQVUJMSUMgIF9fdmVjdG9yX3RhYmxlCisKKyAgICAgICAgREFUQQorX192ZWN0b3JfdGFibGUKKyAgICAgICAgRENEICAgICBzZmUoQ1NUQUNLKQorICAgICAgICBEQ0QgICAgIFJlc2V0X0hhbmRsZXIgICAgICAgICAgICAgICAgICAgICA7IFJlc2V0IEhhbmRsZXIKKworICAgICAgICBEQ0QgICAgIE5NSV9IYW5kbGVyICAgICAgICAgICAgICAgICAgICAgICA7IE5NSSBIYW5kbGVyCisgICAgICAgIERDRCAgICAgSGFyZEZhdWx0X0hhbmRsZXIgICAgICAgICAgICAgICAgIDsgSGFyZCBGYXVsdCBIYW5kbGVyCisgICAgICAgIERDRCAgICAgMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDsgUmVzZXJ2ZWQKKyAgICAgICAgRENEICAgICAwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOyBSZXNlcnZlZAorICAgICAgICBEQ0QgICAgIDAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7IFJlc2VydmVkCisgICAgICAgIERDRCAgICAgMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDsgUmVzZXJ2ZWQKKyAgICAgICAgRENEICAgICAwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOyBSZXNlcnZlZAorICAgICAgICBEQ0QgICAgIDAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7IFJlc2VydmVkCisgICAgICAgIERDRCAgICAgMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDsgUmVzZXJ2ZWQKKyAgICAgICAgRENEICAgICBTVkNfSGFuZGxlciAgICAgICAgICAgICAgICAgICAgICAgOyBTVkNhbGwgSGFuZGxlcgorICAgICAgICBEQ0QgICAgIDAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7IFJlc2VydmVkCisgICAgICAgIERDRCAgICAgMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDsgUmVzZXJ2ZWQKKyAgICAgICAgRENEICAgICBQZW5kU1ZfSGFuZGxlciAgICAgICAgICAgICAgICAgICAgOyBQZW5kU1YgSGFuZGxlcgorICAgICAgICBEQ0QgICAgIFN5c1RpY2tfSGFuZGxlciAgICAgICAgICAgICAgICAgICA7IFN5c1RpY2sgSGFuZGxlcgorCisgICAgICAgIDsgRXh0ZXJuYWwgSW50ZXJydXB0cworICAgICAgICBEQ0QgICAgIDAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7IFJlc2VydmVkCisgICAgICAgIERDRCAgICAgUFZEX1BWTV9JUlFIYW5kbGVyICAgICAgICAgICAgICAgIDsgUFZEIGFuZCBQVk0gZGV0ZWN0b3IKKyAgICAgICAgRENEICAgICBSVENfTFNFQ1NTX0lSUUhhbmRsZXIgICAgICAgICAgICAgOyBUQyBXYWtldXAgKyBSVEMgVGFtcGVyIGFuZCBUaW1lU3RhbXAgKyBSVEMgQWxhcm1zIChBICYgQikgYW5kIExTRUNTUyBJbnRlcnJ1cHRzCisgICAgICAgIERDRCAgICAgVVNCX0NSU19JUlFIYW5kbGVyICAgICAgICAgICAgICAgIDsgVVNCIEhpZ2ggUHJpb3JpdHksIExvdyBQcmlvcml0eSAoaW5jbHVkaW5nIFVTQiB3YWtldXApIGFuZCBDUlMgSW50ZXJydXB0cworICAgICAgICBEQ0QgICAgIFJDQ19GTEFTSF9DMVNFVl9JUlFIYW5kbGVyICAgICAgICA7IFJDQyBhbmQgRkxBU0ggYW5kIENQVTEgTTQgU0VWIEludGVycnVwdAorICAgICAgICBEQ0QgICAgIEVYVEkxXzBfSVJRSGFuZGxlciAgICAgICAgICAgICAgICA7IEVYVEkgTGluZSAxOjAgSW50ZXJydXB0CisgICAgICAgIERDRCAgICAgRVhUSTNfMl9JUlFIYW5kbGVyICAgICAgICAgICAgICAgIDsgWFRJIExpbmUgMzoyIEludGVycnVwdAorICAgICAgICBEQ0QgICAgIEVYVEkxNV80X0lSUUhhbmRsZXIgICAgICAgICAgICAgICA7IEVYVEkgTGluZSAxNTo0IGludGVycnVwdAorICAgICAgICBEQ0QgICAgIFRTQ184MDJfMF9JUlFIYW5kbGVyICAgICAgICAgICAgICA7IFRTQyBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBETUExX0NoYW5uZWwxXzJfM19JUlFIYW5kbGVyICAgICAgOyBETUExIENoYW5uZWwgMSB0byAzIEludGVycnVwdAorICAgICAgICBEQ0QgICAgIERNQTFfQ2hhbm5lbDRfNV82XzdfSVJRSGFuZGxlciAgICA7IERNQTEgQ2hhbm5lbHMgNCw1LDYsNyBJbnRlcnJ1cHQgCisgICAgICAgIERDRCAgICAgRE1BMl9ETUFNVVgxX09WUl9JUlFIYW5kbGVyICAgICAgIDsgRE1BMiBDaGFubmVsc1sxLi43XSBhbmQgRE1BTVVYIE92ZXJydW4gSW50ZXJydXB0cyAgICAgICAgICAKKyAgICAgICAgRENEICAgICBBREMxX0NPTVBfSVJRSGFuZGxlciAgICAgICAgICAgICAgOyBBREMxIGFuZCBDT01QMSBDT01QMiBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBMUFRJTTFfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgOyBMUFRJTTEgQ2hhbm5lbCA1IEludGVycnVwdAorICAgICAgICBEQ0QgICAgIExQVElNMl9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICA7IExQVElNMiBDaGFubmVsIDYgSW50ZXJydXB0CisgICAgICAgIERDRCAgICAgVElNMV9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgIDsgVElNMSBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBUSU0yX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgICAgOyBUSU0yIEludGVycnVwdAorICAgICAgICBEQ0QgICAgIFRJTTE2X0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgICA7IFRJTTE2IEludGVycnVwdAorICAgICAgICBEQ0QgICAgIFRJTTE3X0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgICA7IFRJTTE3IEludGVycnVwdAorICAgICAgICBEQ0QgICAgIElQQ0NfQzJfUlhfQzJfVFhfSFNFTV9JUlFIYW5kbGVyICA7IElQQ0MgUlggT2NjdXBpZWQgYW5kIFRYIEZyZWUgSW50ZXJydXB0IGFuZCBTZW1hcGhvcmUgSW50ZXJydXB0CisgICAgICAgIERDRCAgICAgQUVTMV9STkdfUEtBX0lSUUhhbmRsZXIgICAgICAgICAgIDsgQUVTMSxSTkcgYW5kIFBLQSBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBBRVMyX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgICAgOyBBRVMyIEludGVycnVwdAorICAgICAgICBEQ0QgICAgIF84MDJfMV9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICA7IDgwMi4xNS40IGludGVycnVwdCAxCisgICAgICAgIERDRCAgICAgSTJDMV9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgIDsgSTJDMSBFdmVudCBhbmQgRXJyb3IgSW50ZXJydXB0CisgICAgICAgIERDRCAgICAgSTJDM19JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgIDsgSTJDMyBFdmVudCBhbmQgRXJyb3IgSW50ZXJydXB0CisgICAgICAgIERDRCAgICAgU1BJMV9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgIDsgU1BJMSBJbnRlcnJ1cHRzCisgICAgICAgIERDRCAgICAgU1BJMl9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgIDsgU1BJMiBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBVU0FSVDFfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgOyBVU0FSVDEgSW50ZXJydXB0CisgICAgICAgIERDRCAgICAgTFBVQVJUMV9JUlFIYW5kbGVyICAgICAgICAgICAgICAgIDsgTFBVQVJUMSBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICAwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOyBSZXNlcnZlZAorICAgICAgICBEQ0QgICAgIEJMRV9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgICA7IEJMRSBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBfODAyXzJfSE9TVF9XS1VQX0lSUUhhbmRsZXIgICAgICAgOyA4MDIuMTUuNCBJbnRlcnJ1cHQKKworOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OworOzsKKzs7IERlZmF1bHQgaW50ZXJydXB0IGhhbmRsZXJzLgorOzsKKyAgICAgICAgVEhVTUIKKworICAgICAgICBQVUJXRUFLIFJlc2V0X0hhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDIpCitSZXNldF9IYW5kbGVyCisgICAgICAgIExEUiAgICAgUjAsID1TeXN0ZW1Jbml0CisgICAgICAgIEJMWCAgICAgUjAKKyAgICAgICAgTERSICAgICBSMCwgPV9faWFyX3Byb2dyYW1fc3RhcnQKKyAgICAgICAgQlggICAgICBSMAorCisgICAgICAgIFBVQldFQUsgTk1JX0hhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitOTUlfSGFuZGxlcgorICAgICAgICBCIE5NSV9IYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBIYXJkRmF1bHRfSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK0hhcmRGYXVsdF9IYW5kbGVyCisgICAgICAgIEIgSGFyZEZhdWx0X0hhbmRsZXIKKworICAgICAgICBQVUJXRUFLIFNWQ19IYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorU1ZDX0hhbmRsZXIKKyAgICAgICAgQiBTVkNfSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgUGVuZFNWX0hhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitQZW5kU1ZfSGFuZGxlcgorICAgICAgICBCIFBlbmRTVl9IYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBTeXNUaWNrX0hhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitTeXNUaWNrX0hhbmRsZXIKKyAgICAgICAgQiBTeXNUaWNrX0hhbmRsZXIKKworICAgICAgICBQVUJXRUFLIFBWRF9QVk1fSVJRSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK1BWRF9QVk1fSVJRSGFuZGxlcgorICAgICAgICBCIFBWRF9QVk1fSVJRSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgUlRDX0xTRUNTU19JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorUlRDX0xTRUNTU19JUlFIYW5kbGVyCisgICAgICAgIEIgUlRDX0xTRUNTU19JUlFIYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBVU0JfQ1JTX0lSUUhhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitVU0JfQ1JTX0lSUUhhbmRsZXIKKyAgICAgICAgQiBVU0JfQ1JTX0lSUUhhbmRsZXIKKworICAgICAgICBQVUJXRUFLIFJDQ19GTEFTSF9DMVNFVl9JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorUkNDX0ZMQVNIX0MxU0VWX0lSUUhhbmRsZXIKKyAgICAgICAgQiBSQ0NfRkxBU0hfQzFTRVZfSVJRSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgRVhUSTFfMF9JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorRVhUSTFfMF9JUlFIYW5kbGVyCisgICAgICAgIEIgRVhUSTFfMF9JUlFIYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBFWFRJM18yX0lSUUhhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitFWFRJM18yX0lSUUhhbmRsZXIKKyAgICAgICAgQiBFWFRJM18yX0lSUUhhbmRsZXIKKworICAgICAgICBQVUJXRUFLIEVYVEkxNV80X0lSUUhhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitFWFRJMTVfNF9JUlFIYW5kbGVyCisgICAgICAgIEIgRVhUSTE1XzRfSVJRSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgVFNDXzgwMl8wX0lSUUhhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitUU0NfODAyXzBfSVJRSGFuZGxlcgorICAgICAgICBCIFRTQ184MDJfMF9JUlFIYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBETUExX0NoYW5uZWwxXzJfM19JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorRE1BMV9DaGFubmVsMV8yXzNfSVJRSGFuZGxlcgorICAgICAgICBCIERNQTFfQ2hhbm5lbDFfMl8zX0lSUUhhbmRsZXIKKworICAgICAgICBQVUJXRUFLIERNQTFfQ2hhbm5lbDRfNV82XzdfSVJRSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK0RNQTFfQ2hhbm5lbDRfNV82XzdfSVJRSGFuZGxlcgorICAgICAgICBCIERNQTFfQ2hhbm5lbDRfNV82XzdfSVJRSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgRE1BMl9ETUFNVVgxX09WUl9JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorRE1BMl9ETUFNVVgxX09WUl9JUlFIYW5kbGVyCisgICAgICAgIEIgRE1BMl9ETUFNVVgxX09WUl9JUlFIYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBBREMxX0NPTVBfSVJRSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK0FEQzFfQ09NUF9JUlFIYW5kbGVyCisgICAgICAgIEIgQURDMV9DT01QX0lSUUhhbmRsZXIKKworICAgICAgICBQVUJXRUFLIExQVElNMV9JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorTFBUSU0xX0lSUUhhbmRsZXIKKyAgICAgICAgQiBMUFRJTTFfSVJRSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgTFBUSU0yX0lSUUhhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitMUFRJTTJfSVJRSGFuZGxlcgorICAgICAgICBCIExQVElNMl9JUlFIYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBUSU0xX0lSUUhhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitUSU0xX0lSUUhhbmRsZXIKKyAgICAgICAgQiBUSU0xX0lSUUhhbmRsZXIKKworICAgICAgICBQVUJXRUFLIFRJTTJfSVJRSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK1RJTTJfSVJRSGFuZGxlcgorICAgICAgICBCIFRJTTJfSVJRSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgVElNMTZfSVJRSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK1RJTTE2X0lSUUhhbmRsZXIKKyAgICAgICAgQiBUSU0xNl9JUlFIYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBUSU0xN19JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorVElNMTdfSVJRSGFuZGxlcgorICAgICAgICBCIFRJTTE3X0lSUUhhbmRsZXIKKworICAgICAgICBQVUJXRUFLIElQQ0NfQzJfUlhfQzJfVFhfSFNFTV9JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorSVBDQ19DMl9SWF9DMl9UWF9IU0VNX0lSUUhhbmRsZXIKKyAgICAgICAgQiBJUENDX0MyX1JYX0MyX1RYX0hTRU1fSVJRSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgQUVTMV9STkdfUEtBX0lSUUhhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitBRVMxX1JOR19QS0FfSVJRSGFuZGxlcgorICAgICAgICBCIEFFUzFfUk5HX1BLQV9JUlFIYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBBRVMyX0lSUUhhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitBRVMyX0lSUUhhbmRsZXIKKyAgICAgICAgQiBBRVMyX0lSUUhhbmRsZXIKKworICAgICAgICBQVUJXRUFLIF84MDJfMV9JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorXzgwMl8xX0lSUUhhbmRsZXIKKyAgICAgICAgQiBfODAyXzFfSVJRSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgSTJDMV9JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorSTJDMV9JUlFIYW5kbGVyCisgICAgICAgIEIgSTJDMV9JUlFIYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBJMkMzX0lSUUhhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitJMkMzX0lSUUhhbmRsZXIKKyAgICAgICAgQiBJMkMzX0lSUUhhbmRsZXIKKworICAgICAgICBQVUJXRUFLIFNQSTFfSVJRSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK1NQSTFfSVJRSGFuZGxlcgorICAgICAgICBCIFNQSTFfSVJRSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgU1BJMl9JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorU1BJMl9JUlFIYW5kbGVyCisgICAgICAgIEIgU1BJMl9JUlFIYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBVU0FSVDFfSVJRSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK1VTQVJUMV9JUlFIYW5kbGVyCisgICAgICAgIEIgVVNBUlQxX0lSUUhhbmRsZXIKKworICAgICAgICBQVUJXRUFLIExQVUFSVDFfSVJRSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK0xQVUFSVDFfSVJRSGFuZGxlcgorICAgICAgICBCIExQVUFSVDFfSVJRSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgQkxFX0lSUUhhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitCTEVfSVJRSGFuZGxlcgorICAgICAgICBCIEJMRV9JUlFIYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBfODAyXzJfSE9TVF9XS1VQX0lSUUhhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitfODAyXzJfSE9TVF9XS1VQX0lSUUhhbmRsZXIKKyAgICAgICAgQiBfODAyXzJfSE9TVF9XS1VQX0lSUUhhbmRsZXIKKworICAgICAgICBFTkQKKworOyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKioKZGlmZiAtLWdpdCBhL1NvdXJjZS9UZW1wbGF0ZXMvaWFyL3N0YXJ0dXBfc3RtMzJ3YjM1eHhfY200LnMgYi9Tb3VyY2UvVGVtcGxhdGVzL2lhci9zdGFydHVwX3N0bTMyd2IzNXh4X2NtNC5zCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA5Nzk3YjkKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGVtcGxhdGVzL2lhci9zdGFydHVwX3N0bTMyd2IzNXh4X2NtNC5zCkBAIC0wLDAgKzEsNTA3IEBACis7KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCis7KiBGaWxlIE5hbWUgICAgICAgICAgOiBzdGFydHVwX3N0bTMyd2I1NXh4X2NtNC5zCis7KiBBdXRob3IgICAgICAgICAgICAgOiBNQ0QgQXBwbGljYXRpb24gVGVhbQorOyogRGVzY3JpcHRpb24gICAgICAgIDogTTQgY29yZSB2ZWN0b3IgdGFibGUgb2YgdGhlIFNUTTMyV0I1NXh4IGRldmljZXMgZm9yIHRoZQorOyogICAgICAgICAgICAgICAgICAgICAgSUFSIChFV0FSTSkgdG9vbGNoYWluLgorOyoKKzsqICAgICAgICAgICAgICAgICAgICAgIFRoaXMgbW9kdWxlIHBlcmZvcm1zOgorOyogICAgICAgICAgICAgICAgICAgICAgLSBTZXQgdGhlIGluaXRpYWwgU1AKKzsqICAgICAgICAgICAgICAgICAgICAgIC0gU2V0IHRoZSBpbml0aWFsIFBDID09IF9pYXJfcHJvZ3JhbV9zdGFydCwKKzsqICAgICAgICAgICAgICAgICAgICAgIC0gU2V0IHRoZSB2ZWN0b3IgdGFibGUgZW50cmllcyB3aXRoIHRoZSBleGNlcHRpb25zIElTUgorOyogICAgICAgICAgICAgICAgICAgICAgICBhZGRyZXNzLgorOyogICAgICAgICAgICAgICAgICAgICAgLSBCcmFuY2hlcyB0byBtYWluIGluIHRoZSBDIGxpYnJhcnkgKHdoaWNoIGV2ZW50dWFsbHkKKzsqICAgICAgICAgICAgICAgICAgICAgICAgY2FsbHMgbWFpbigpKS4KKzsqICAgICAgICAgICAgICAgICAgICAgIEFmdGVyIFJlc2V0IHRoZSBDb3J0ZXgtTTQgcHJvY2Vzc29yIGlzIGluIFRocmVhZCBtb2RlLAorOyogICAgICAgICAgICAgICAgICAgICAgcHJpb3JpdHkgaXMgUHJpdmlsZWdlZCwgYW5kIHRoZSBTdGFjayBpcyBzZXQgdG8gTWFpbi4KKzsqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKzsqIEBhdHRlbnRpb24KKzsqCis7KiA8aDI+PGNlbnRlcj4mY29weTsgQ29weXJpZ2h0IChjKSAyMDE5IFNUTWljcm9lbGVjdHJvbmljcy4gCis7KiBBbGwgcmlnaHRzIHJlc2VydmVkLjwvY2VudGVyPjwvaDI+Cis7KgorOyogVGhpcyBzb2Z0d2FyZSBjb21wb25lbnQgaXMgbGljZW5zZWQgYnkgU1QgdW5kZXIgQlNEIDMtQ2xhdXNlIGxpY2Vuc2UsCis7KiB0aGUgIkxpY2Vuc2UiOyBZb3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIAorOyogTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0OgorOyogICAgICAgICAgICAgICAgICAgICAgICBvcGVuc291cmNlLm9yZy9saWNlbnNlcy9CU0QtMy1DbGF1c2UKKzsqCis7KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCis7Cis7Cis7IFRoZSBtb2R1bGVzIGluIHRoaXMgZmlsZSBhcmUgaW5jbHVkZWQgaW4gdGhlIGxpYnJhcmllcywgYW5kIG1heSBiZSByZXBsYWNlZAorOyBieSBhbnkgdXNlci1kZWZpbmVkIG1vZHVsZXMgdGhhdCBkZWZpbmUgdGhlIFBVQkxJQyBzeW1ib2wgX3Byb2dyYW1fc3RhcnQgb3IKKzsgYSB1c2VyIGRlZmluZWQgc3RhcnQgc3ltYm9sLgorOyBUbyBvdmVycmlkZSB0aGUgY3N0YXJ0dXAgZGVmaW5lZCBpbiB0aGUgbGlicmFyeSwgc2ltcGx5IGFkZCB5b3VyIG1vZGlmaWVkCis7IHZlcnNpb24gdG8gdGhlIHdvcmtiZW5jaCBwcm9qZWN0LgorOworOyBUaGUgdmVjdG9yIHRhYmxlIGlzIG5vcm1hbGx5IGxvY2F0ZWQgYXQgYWRkcmVzcyAwLgorOyBXaGVuIGRlYnVnZ2luZyBpbiBSQU0sIGl0IGNhbiBiZSBsb2NhdGVkIGluIFJBTSwgYWxpZ25lZCB0byBhdCBsZWFzdCAyXjYuCis7IFRoZSBuYW1lICJfX3ZlY3Rvcl90YWJsZSIgaGFzIHNwZWNpYWwgbWVhbmluZyBmb3IgQy1TUFk6Cis7IGl0IGlzIHdoZXJlIHRoZSBTUCBzdGFydCB2YWx1ZSBpcyBmb3VuZCwgYW5kIHRoZSBOVklDIHZlY3RvcgorOyB0YWJsZSByZWdpc3RlciAoVlRPUikgaXMgaW5pdGlhbGl6ZWQgdG8gdGhpcyBhZGRyZXNzIGlmICE9IDAuCis7Cis7IENvcnRleC1NIHZlcnNpb24KKzsKKworICAgICAgICBNT0RVTEUgID9jc3RhcnR1cAorCisgICAgICAgIDs7IEZvcndhcmQgZGVjbGFyYXRpb24gb2Ygc2VjdGlvbnMuCisgICAgICAgIFNFQ1RJT04gQ1NUQUNLOkRBVEE6Tk9ST09UKDMpCisKKyAgICAgICAgU0VDVElPTiAuaW50dmVjOkNPREU6Tk9ST09UKDIpCisKKyAgICAgICAgRVhURVJOICBfX2lhcl9wcm9ncmFtX3N0YXJ0CisgICAgICAgIEVYVEVSTiAgU3lzdGVtSW5pdAorICAgICAgICBQVUJMSUMgIF9fdmVjdG9yX3RhYmxlCisKKyAgICAgICAgREFUQQorX192ZWN0b3JfdGFibGUKKyAgICAgICAgRENEICAgICBzZmUoQ1NUQUNLKQorICAgICAgICBEQ0QgICAgIFJlc2V0X0hhbmRsZXIgICAgICAgICAgICAgICAgICAgICA7IFJlc2V0IEhhbmRsZXIKKworICAgICAgICBEQ0QgICAgIE5NSV9IYW5kbGVyICAgICAgICAgICAgICAgICAgICAgICA7IE5NSSBIYW5kbGVyCisgICAgICAgIERDRCAgICAgSGFyZEZhdWx0X0hhbmRsZXIgICAgICAgICAgICAgICAgIDsgSGFyZCBGYXVsdCBIYW5kbGVyCisgICAgICAgIERDRCAgICAgTWVtTWFuYWdlX0hhbmRsZXIgICAgICAgICAgICAgICAgIDsgTVBVIEZhdWx0IEhhbmRsZXIKKyAgICAgICAgRENEICAgICBCdXNGYXVsdF9IYW5kbGVyICAgICAgICAgICAgICAgICAgOyBCdXMgRmF1bHQgSGFuZGxlcgorICAgICAgICBEQ0QgICAgIFVzYWdlRmF1bHRfSGFuZGxlciAgICAgICAgICAgICAgICA7IFVzYWdlIEZhdWx0IEhhbmRsZXIKKyAgICAgICAgRENEICAgICAwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOyBSZXNlcnZlZAorICAgICAgICBEQ0QgICAgIDAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7IFJlc2VydmVkCisgICAgICAgIERDRCAgICAgMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDsgUmVzZXJ2ZWQKKyAgICAgICAgRENEICAgICAwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOyBSZXNlcnZlZAorICAgICAgICBEQ0QgICAgIFNWQ19IYW5kbGVyICAgICAgICAgICAgICAgICAgICAgICA7IFNWQ2FsbCBIYW5kbGVyCisgICAgICAgIERDRCAgICAgRGVidWdNb25fSGFuZGxlciAgICAgICAgICAgICAgICAgIDsgRGVidWcgTW9uaXRvciBIYW5kbGVyCisgICAgICAgIERDRCAgICAgMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDsgUmVzZXJ2ZWQKKyAgICAgICAgRENEICAgICBQZW5kU1ZfSGFuZGxlciAgICAgICAgICAgICAgICAgICAgOyBQZW5kU1YgSGFuZGxlcgorICAgICAgICBEQ0QgICAgIFN5c1RpY2tfSGFuZGxlciAgICAgICAgICAgICAgICAgICA7IFN5c1RpY2sgSGFuZGxlcgorCisgICAgICAgIDsgRXh0ZXJuYWwgSW50ZXJydXB0cworICAgICAgICBEQ0QgICAgIFdXREdfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgICA7IFdpbmRvdyBXYXRjaERvZworICAgICAgICBEQ0QgICAgIFBWRF9QVk1fSVJRSGFuZGxlciAgICAgICAgICAgICAgICA7IFBWRCBhbmQgUFZNIEludGVycnVwdAorICAgICAgICBEQ0QgICAgIFRBTVBfU1RBTVBfTFNFQ1NTX0lSUUhhbmRsZXIgICAgICA7IFJUQyBUYW1wZXIsIFRpbWVTdGFtcCBJbnRlcnJ1cHRzIGFuZCBMU0VDU1MgSW50ZXJydXB0cworICAgICAgICBEQ0QgICAgIFJUQ19XS1VQX0lSUUhhbmRsZXIgICAgICAgICAgICAgICA7IFJUQyBXYWtldXAgSW50ZXJydXB0CisgICAgICAgIERDRCAgICAgRkxBU0hfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgIDsgRkxBU0ggZ2xvYmFsIEludGVycnVwdAorICAgICAgICBEQ0QgICAgIFJDQ19JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgICA7IFJDQyBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBFWFRJMF9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgOyBFWFRJIExpbmUgMCBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBFWFRJMV9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgOyBFWFRJIExpbmUgMSBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBFWFRJMl9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgOyBFWFRJIExpbmUgMiBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBFWFRJM19JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgOyBFWFRJIExpbmUgMyBJbnRlcnJ1cAorICAgICAgICBEQ0QgICAgIEVYVEk0X0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgICA7IEVYVEkgTGluZSA0IEludGVycnVwdAorICAgICAgICBEQ0QgICAgIERNQTFfQ2hhbm5lbDFfSVJRSGFuZGxlciAgICAgICAgICA7IERNQTEgQ2hhbm5lbCAxIEludGVycnVwdAorICAgICAgICBEQ0QgICAgIERNQTFfQ2hhbm5lbDJfSVJRSGFuZGxlciAgICAgICAgICA7IERNQTEgQ2hhbm5lbCAyIEludGVycnVwdAorICAgICAgICBEQ0QgICAgIERNQTFfQ2hhbm5lbDNfSVJRSGFuZGxlciAgICAgICAgICA7IERNQTEgQ2hhbm5lbCAzIEludGVycnVwdAorICAgICAgICBEQ0QgICAgIERNQTFfQ2hhbm5lbDRfSVJRSGFuZGxlciAgICAgICAgICA7IERNQTEgQ2hhbm5lbCA0IEludGVycnVwdAorICAgICAgICBEQ0QgICAgIERNQTFfQ2hhbm5lbDVfSVJRSGFuZGxlciAgICAgICAgICA7IERNQTEgQ2hhbm5lbCA1IEludGVycnVwdAorICAgICAgICBEQ0QgICAgIERNQTFfQ2hhbm5lbDZfSVJRSGFuZGxlciAgICAgICAgICA7IERNQTEgQ2hhbm5lbCA2IEludGVycnVwdAorICAgICAgICBEQ0QgICAgIERNQTFfQ2hhbm5lbDdfSVJRSGFuZGxlciAgICAgICAgICA7IERNQTEgQ2hhbm5lbCA3IEludGVycnVwdAorICAgICAgICBEQ0QgICAgIEFEQzFfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgICA7IEFEQzEgSW50ZXJydXB0CisgICAgICAgIERDRCAgICAgVVNCX0hQX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgIDsgVVNCIEhpZ2ggUHJpb3JpdHkgSW50ZXJydXB0CisgICAgICAgIERDRCAgICAgVVNCX0xQX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgIDsgVVNCIExvdyBQcmlvcml0eSBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBDMlNFVl9QV1JfQzJIX0lSUUhhbmRsZXIgICAgICAgICAgOyBDUFUgTTArIFNFViBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBDT01QX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgICAgOyBDT01QMSBhbmQgQ09NUDIgIEludGVycnVwdHMKKyAgICAgICAgRENEICAgICBFWFRJOV81X0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgOyBFWFRJIExpbmVzIFs5OjVdIEludGVycnVwdAorICAgICAgICBEQ0QgICAgIFRJTTFfQlJLX0lSUUhhbmRsZXIgICAgICAgICAgICAgICA7IFRJTTEgQnJlYWsgSW50ZXJydXB0CisgICAgICAgIERDRCAgICAgVElNMV9VUF9USU0xNl9JUlFIYW5kbGVyICAgICAgICAgIDsgVElNMSBVcGRhdGUgYW5kIFRJTTE2IGdsb2JhbCBJbnRlcnJ1cHRzCisgICAgICAgIERDRCAgICAgVElNMV9UUkdfQ09NX1RJTTE3X0lSUUhhbmRsZXIgICAgIDsgVElNMSBUcmlnZ2VyIGFuZCBDb21tdW5pY2F0aW9uIGFuZCBUSU0xNyBnbG9iYWwgSW50ZXJydXB0cworICAgICAgICBEQ0QgICAgIFRJTTFfQ0NfSVJRSGFuZGxlciAgICAgICAgICAgICAgICA7IFRJTTEgQ2FwdHVyZSBDb21wYXJlIEludGVycnVwdAorICAgICAgICBEQ0QgICAgIFRJTTJfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgICA7IFRJTTIgR2xvYmFsIEludGVycnVwdAorICAgICAgICBEQ0QgICAgIFBLQV9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgICA7IFBLQSBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBJMkMxX0VWX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgOyBJMkMxIEV2ZW50IEludGVycnVwdAorICAgICAgICBEQ0QgICAgIEkyQzFfRVJfSVJRSGFuZGxlciAgICAgICAgICAgICAgICA7IEkyQzEgRXJyb3IgSW50ZXJydXB0CisgICAgICAgIERDRCAgICAgSTJDM19FVl9JUlFIYW5kbGVyICAgICAgICAgICAgICAgIDsgSTJDMyBFdmVudCBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBJMkMzX0VSX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgOyBJMkMzIEVycm9yIEludGVycnVwdAorICAgICAgICBEQ0QgICAgIFNQSTFfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgICA7IFNQSTEgSW50ZXJydXB0CisgICAgICAgIERDRCAgICAgU1BJMl9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgIDsgU1BJMiBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBVU0FSVDFfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgOyBVU0FSVDEgSW50ZXJydXB0CisgICAgICAgIERDRCAgICAgTFBVQVJUMV9JUlFIYW5kbGVyICAgICAgICAgICAgICAgIDsgTFBVQVJUMSBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICAwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOyBSZXNlcnZlZAorICAgICAgICBEQ0QgICAgIFRTQ19JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgICA7IFRTQyBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBFWFRJMTVfMTBfSVJRSGFuZGxlciAgICAgICAgICAgICAgOyBFWFRJIExpbmVzMVsxNToxMCBdSW50ZXJydXB0cworICAgICAgICBEQ0QgICAgIFJUQ19BbGFybV9JUlFIYW5kbGVyICAgICAgICAgICAgICA7IFJUQyBBbGFybXMgKEEgYW5kIEIpIEludGVycnVwdAorICAgICAgICBEQ0QgICAgIENSU19JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgICA7IENSUyBpbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBQV1JfU09URl9CTEVBQ1RfODAyQUNUX1JGUEhBU0VfSVJRSGFuZGxlciA7IFdLVVAgSW50ZXJydXB0IGZyb20gUFdSCisgICAgICAgIERDRCAgICAgSVBDQ19DMV9SWF9JUlFIYW5kbGVyICAgICAgICAgICAgIDsgSVBDQyBDUFUxIFJYIG9jY3VwaWVkIGludGVycnVwdAorICAgICAgICBEQ0QgICAgIElQQ0NfQzFfVFhfSVJRSGFuZGxlciAgICAgICAgICAgICA7IElQQ0MgQ1BVMSBSWCBmcmVlIGludGVycnVwdAorICAgICAgICBEQ0QgICAgIEhTRU1fSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgICA7IEhTRU0wIEludGVycnVwdAorICAgICAgICBEQ0QgICAgIExQVElNMV9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICA7IExQVElNMSBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBMUFRJTTJfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgOyBMUFRJTTIgSW50ZXJydXB0CisgICAgICAgIERDRCAgICAgMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDsgUmVzZXJ2ZWQKKyAgICAgICAgRENEICAgICBRVUFEU1BJX0lSUUhhbmRsZXIgICAgICAgICAgICAgICAgOyBRVUFEU1BJIEludGVycnVwdAorICAgICAgICBEQ0QgICAgIEFFUzFfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgICA7IEFFUzEgSW50ZXJydXB0CisgICAgICAgIERDRCAgICAgQUVTMl9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgIDsgQUVTMiBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBSTkdfSVJRSGFuZGxlciAgICAgICAgICAgICAgICAgICAgOyBSTkcxIEludGVycnVwdAorICAgICAgICBEQ0QgICAgIEZQVV9JUlFIYW5kbGVyICAgICAgICAgICAgICAgICAgICA7IEZQVSBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBETUEyX0NoYW5uZWwxX0lSUUhhbmRsZXIgICAgICAgICAgOyBETUEyIENoYW5uZWwgMSBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBETUEyX0NoYW5uZWwyX0lSUUhhbmRsZXIgICAgICAgICAgOyBETUEyIENoYW5uZWwgMiBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBETUEyX0NoYW5uZWwzX0lSUUhhbmRsZXIgICAgICAgICAgOyBETUEyIENoYW5uZWwgMyBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBETUEyX0NoYW5uZWw0X0lSUUhhbmRsZXIgICAgICAgICAgOyBETUEyIENoYW5uZWwgNCBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBETUEyX0NoYW5uZWw1X0lSUUhhbmRsZXIgICAgICAgICAgOyBETUEyIENoYW5uZWwgNSBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBETUEyX0NoYW5uZWw2X0lSUUhhbmRsZXIgICAgICAgICAgOyBETUEyIENoYW5uZWwgNiBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBETUEyX0NoYW5uZWw3X0lSUUhhbmRsZXIgICAgICAgICAgOyBETUEyIENoYW5uZWwgNyBJbnRlcnJ1cHQKKyAgICAgICAgRENEICAgICBETUFNVVgxX09WUl9JUlFIYW5kbGVyICAgICAgICAgICAgOyBETUFNVVggb3ZlcnJ1biBJbnRlcnJ1cHQKKworOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OworOzsKKzs7IERlZmF1bHQgaW50ZXJydXB0IGhhbmRsZXJzLgorOzsKKyAgICAgICAgVEhVTUIKKworICAgICAgICBQVUJXRUFLIFJlc2V0X0hhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDIpCitSZXNldF9IYW5kbGVyCisgICAgICAgIExEUiAgICAgUjAsID1TeXN0ZW1Jbml0CisgICAgICAgIEJMWCAgICAgUjAKKyAgICAgICAgTERSICAgICBSMCwgPV9faWFyX3Byb2dyYW1fc3RhcnQKKyAgICAgICAgQlggICAgICBSMAorCisgICAgICAgIFBVQldFQUsgTk1JX0hhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitOTUlfSGFuZGxlcgorICAgICAgICBCIE5NSV9IYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBIYXJkRmF1bHRfSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK0hhcmRGYXVsdF9IYW5kbGVyCisgICAgICAgIEIgSGFyZEZhdWx0X0hhbmRsZXIKKworICAgICAgICBQVUJXRUFLIE1lbU1hbmFnZV9IYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorTWVtTWFuYWdlX0hhbmRsZXIKKyAgICAgICAgQiBNZW1NYW5hZ2VfSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgQnVzRmF1bHRfSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK0J1c0ZhdWx0X0hhbmRsZXIKKyAgICAgICAgQiBCdXNGYXVsdF9IYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBVc2FnZUZhdWx0X0hhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitVc2FnZUZhdWx0X0hhbmRsZXIKKyAgICAgICAgQiBVc2FnZUZhdWx0X0hhbmRsZXIKKworICAgICAgICBQVUJXRUFLIFNWQ19IYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorU1ZDX0hhbmRsZXIKKyAgICAgICAgQiBTVkNfSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgRGVidWdNb25fSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK0RlYnVnTW9uX0hhbmRsZXIKKyAgICAgICAgQiBEZWJ1Z01vbl9IYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBQZW5kU1ZfSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK1BlbmRTVl9IYW5kbGVyCisgICAgICAgIEIgUGVuZFNWX0hhbmRsZXIKKworICAgICAgICBQVUJXRUFLIFN5c1RpY2tfSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK1N5c1RpY2tfSGFuZGxlcgorICAgICAgICBCIFN5c1RpY2tfSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgV1dER19JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorV1dER19JUlFIYW5kbGVyCisgICAgICAgIEIgV1dER19JUlFIYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBQVkRfUFZNX0lSUUhhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitQVkRfUFZNX0lSUUhhbmRsZXIKKyAgICAgICAgQiBQVkRfUFZNX0lSUUhhbmRsZXIKKworICAgICAgICBQVUJXRUFLIFRBTVBfU1RBTVBfTFNFQ1NTX0lSUUhhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitUQU1QX1NUQU1QX0xTRUNTU19JUlFIYW5kbGVyCisgICAgICAgIEIgVEFNUF9TVEFNUF9MU0VDU1NfSVJRSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgUlRDX1dLVVBfSVJRSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK1JUQ19XS1VQX0lSUUhhbmRsZXIKKyAgICAgICAgQiBSVENfV0tVUF9JUlFIYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBGTEFTSF9JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorRkxBU0hfSVJRSGFuZGxlcgorICAgICAgICBCIEZMQVNIX0lSUUhhbmRsZXIKKworICAgICAgICBQVUJXRUFLIFJDQ19JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorUkNDX0lSUUhhbmRsZXIKKyAgICAgICAgQiBSQ0NfSVJRSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgRVhUSTBfSVJRSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK0VYVEkwX0lSUUhhbmRsZXIKKyAgICAgICAgQiBFWFRJMF9JUlFIYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBFWFRJMV9JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorRVhUSTFfSVJRSGFuZGxlcgorICAgICAgICBCIEVYVEkxX0lSUUhhbmRsZXIKKworICAgICAgICBQVUJXRUFLIEVYVEkyX0lSUUhhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitFWFRJMl9JUlFIYW5kbGVyCisgICAgICAgIEIgRVhUSTJfSVJRSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgRVhUSTNfSVJRSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK0VYVEkzX0lSUUhhbmRsZXIKKyAgICAgICAgQiBFWFRJM19JUlFIYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBFWFRJNF9JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorRVhUSTRfSVJRSGFuZGxlcgorICAgICAgICBCIEVYVEk0X0lSUUhhbmRsZXIKKworICAgICAgICBQVUJXRUFLIERNQTFfQ2hhbm5lbDFfSVJRSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK0RNQTFfQ2hhbm5lbDFfSVJRSGFuZGxlcgorICAgICAgICBCIERNQTFfQ2hhbm5lbDFfSVJRSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgRE1BMV9DaGFubmVsMl9JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorRE1BMV9DaGFubmVsMl9JUlFIYW5kbGVyCisgICAgICAgIEIgRE1BMV9DaGFubmVsMl9JUlFIYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBETUExX0NoYW5uZWwzX0lSUUhhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitETUExX0NoYW5uZWwzX0lSUUhhbmRsZXIKKyAgICAgICAgQiBETUExX0NoYW5uZWwzX0lSUUhhbmRsZXIKKworICAgICAgICBQVUJXRUFLIERNQTFfQ2hhbm5lbDRfSVJRSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK0RNQTFfQ2hhbm5lbDRfSVJRSGFuZGxlcgorICAgICAgICBCIERNQTFfQ2hhbm5lbDRfSVJRSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgRE1BMV9DaGFubmVsNV9JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorRE1BMV9DaGFubmVsNV9JUlFIYW5kbGVyCisgICAgICAgIEIgRE1BMV9DaGFubmVsNV9JUlFIYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBETUExX0NoYW5uZWw2X0lSUUhhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitETUExX0NoYW5uZWw2X0lSUUhhbmRsZXIKKyAgICAgICAgQiBETUExX0NoYW5uZWw2X0lSUUhhbmRsZXIKKworICAgICAgICBQVUJXRUFLIERNQTFfQ2hhbm5lbDdfSVJRSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK0RNQTFfQ2hhbm5lbDdfSVJRSGFuZGxlcgorICAgICAgICBCIERNQTFfQ2hhbm5lbDdfSVJRSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgQURDMV9JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorQURDMV9JUlFIYW5kbGVyCisgICAgICAgIEIgQURDMV9JUlFIYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBVU0JfSFBfSVJRSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK1VTQl9IUF9JUlFIYW5kbGVyCisgICAgICAgIEIgVVNCX0hQX0lSUUhhbmRsZXIKKworICAgICAgICBQVUJXRUFLIFVTQl9MUF9JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorVVNCX0xQX0lSUUhhbmRsZXIKKyAgICAgICAgQiBVU0JfTFBfSVJRSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgQzJTRVZfUFdSX0MySF9JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorQzJTRVZfUFdSX0MySF9JUlFIYW5kbGVyCisgICAgICAgIEIgQzJTRVZfUFdSX0MySF9JUlFIYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBDT01QX0lSUUhhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitDT01QX0lSUUhhbmRsZXIKKyAgICAgICAgQiBDT01QX0lSUUhhbmRsZXIKKworICAgICAgICBQVUJXRUFLIEVYVEk5XzVfSVJRSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK0VYVEk5XzVfSVJRSGFuZGxlcgorICAgICAgICBCIEVYVEk5XzVfSVJRSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgVElNMV9CUktfSVJRSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK1RJTTFfQlJLX0lSUUhhbmRsZXIKKyAgICAgICAgQiBUSU0xX0JSS19JUlFIYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBUSU0xX1VQX1RJTTE2X0lSUUhhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitUSU0xX1VQX1RJTTE2X0lSUUhhbmRsZXIKKyAgICAgICAgQiBUSU0xX1VQX1RJTTE2X0lSUUhhbmRsZXIKKworICAgICAgICBQVUJXRUFLIFRJTTFfVFJHX0NPTV9USU0xN19JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorVElNMV9UUkdfQ09NX1RJTTE3X0lSUUhhbmRsZXIKKyAgICAgICAgQiBUSU0xX1RSR19DT01fVElNMTdfSVJRSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgVElNMV9DQ19JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorVElNMV9DQ19JUlFIYW5kbGVyCisgICAgICAgIEIgVElNMV9DQ19JUlFIYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBUSU0yX0lSUUhhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitUSU0yX0lSUUhhbmRsZXIKKyAgICAgICAgQiBUSU0yX0lSUUhhbmRsZXIKKworICAgICAgICBQVUJXRUFLIFBLQV9JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorUEtBX0lSUUhhbmRsZXIKKyAgICAgICAgQiBQS0FfSVJRSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgSTJDMV9FVl9JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorSTJDMV9FVl9JUlFIYW5kbGVyCisgICAgICAgIEIgSTJDMV9FVl9JUlFIYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBJMkMxX0VSX0lSUUhhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitJMkMxX0VSX0lSUUhhbmRsZXIKKyAgICAgICAgQiBJMkMxX0VSX0lSUUhhbmRsZXIKKworICAgICAgICBQVUJXRUFLIEkyQzNfRVZfSVJRSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK0kyQzNfRVZfSVJRSGFuZGxlcgorICAgICAgICBCIEkyQzNfRVZfSVJRSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgSTJDM19FUl9JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorSTJDM19FUl9JUlFIYW5kbGVyCisgICAgICAgIEIgSTJDM19FUl9JUlFIYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBTUEkxX0lSUUhhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitTUEkxX0lSUUhhbmRsZXIKKyAgICAgICAgQiBTUEkxX0lSUUhhbmRsZXIKKworICAgICAgICBQVUJXRUFLIFNQSTJfSVJRSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK1NQSTJfSVJRSGFuZGxlcgorICAgICAgICBCIFNQSTJfSVJRSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgVVNBUlQxX0lSUUhhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitVU0FSVDFfSVJRSGFuZGxlcgorICAgICAgICBCIFVTQVJUMV9JUlFIYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBMUFVBUlQxX0lSUUhhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitMUFVBUlQxX0lSUUhhbmRsZXIKKyAgICAgICAgQiBMUFVBUlQxX0lSUUhhbmRsZXIKKworICAgICAgICBQVUJXRUFLIFRTQ19JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorVFNDX0lSUUhhbmRsZXIKKyAgICAgICAgQiBUU0NfSVJRSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgRVhUSTE1XzEwX0lSUUhhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitFWFRJMTVfMTBfSVJRSGFuZGxlcgorICAgICAgICBCIEVYVEkxNV8xMF9JUlFIYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBSVENfQWxhcm1fSVJRSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK1JUQ19BbGFybV9JUlFIYW5kbGVyCisgICAgICAgIEIgUlRDX0FsYXJtX0lSUUhhbmRsZXIKKworICAgICAgICBQVUJXRUFLIENSU19JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorQ1JTX0lSUUhhbmRsZXIKKyAgICAgICAgQiBDUlNfSVJRSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgUFdSX1NPVEZfQkxFQUNUXzgwMkFDVF9SRlBIQVNFX0lSUUhhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitQV1JfU09URl9CTEVBQ1RfODAyQUNUX1JGUEhBU0VfSVJRSGFuZGxlcgorICAgICAgICBCIFBXUl9TT1RGX0JMRUFDVF84MDJBQ1RfUkZQSEFTRV9JUlFIYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBJUENDX0MxX1JYX0lSUUhhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitJUENDX0MxX1JYX0lSUUhhbmRsZXIKKyAgICAgICAgQiBJUENDX0MxX1JYX0lSUUhhbmRsZXIKKworICAgICAgICBQVUJXRUFLIElQQ0NfQzFfVFhfSVJRSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK0lQQ0NfQzFfVFhfSVJRSGFuZGxlcgorICAgICAgICBCIElQQ0NfQzFfVFhfSVJRSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgSFNFTV9JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorSFNFTV9JUlFIYW5kbGVyCisgICAgICAgIEIgSFNFTV9JUlFIYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBMUFRJTTFfSVJRSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK0xQVElNMV9JUlFIYW5kbGVyCisgICAgICAgIEIgTFBUSU0xX0lSUUhhbmRsZXIKKworICAgICAgICBQVUJXRUFLIExQVElNMl9JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorTFBUSU0yX0lSUUhhbmRsZXIKKyAgICAgICAgQiBMUFRJTTJfSVJRSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgUVVBRFNQSV9JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorUVVBRFNQSV9JUlFIYW5kbGVyCisgICAgICAgIEIgUVVBRFNQSV9JUlFIYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBBRVMxX0lSUUhhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitBRVMxX0lSUUhhbmRsZXIKKyAgICAgICAgQiBBRVMxX0lSUUhhbmRsZXIKKworICAgICAgICBQVUJXRUFLIEFFUzJfSVJRSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK0FFUzJfSVJRSGFuZGxlcgorICAgICAgICBCIEFFUzJfSVJRSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgUk5HX0lSUUhhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitSTkdfSVJRSGFuZGxlcgorICAgICAgICBCIFJOR19JUlFIYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBGUFVfSVJRSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK0ZQVV9JUlFIYW5kbGVyCisgICAgICAgIEIgRlBVX0lSUUhhbmRsZXIKKworICAgICAgICBQVUJXRUFLIERNQTJfQ2hhbm5lbDFfSVJRSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK0RNQTJfQ2hhbm5lbDFfSVJRSGFuZGxlcgorICAgICAgICBCIERNQTJfQ2hhbm5lbDFfSVJRSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgRE1BMl9DaGFubmVsMl9JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorRE1BMl9DaGFubmVsMl9JUlFIYW5kbGVyCisgICAgICAgIEIgRE1BMl9DaGFubmVsMl9JUlFIYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBETUEyX0NoYW5uZWwzX0lSUUhhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitETUEyX0NoYW5uZWwzX0lSUUhhbmRsZXIKKyAgICAgICAgQiBETUEyX0NoYW5uZWwzX0lSUUhhbmRsZXIKKworICAgICAgICBQVUJXRUFLIERNQTJfQ2hhbm5lbDRfSVJRSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK0RNQTJfQ2hhbm5lbDRfSVJRSGFuZGxlcgorICAgICAgICBCIERNQTJfQ2hhbm5lbDRfSVJRSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgRE1BMl9DaGFubmVsNV9JUlFIYW5kbGVyCisgICAgICAgIFNFQ1RJT04gLnRleHQ6Q09ERTpOT1JPT1Q6UkVPUkRFUigxKQorRE1BMl9DaGFubmVsNV9JUlFIYW5kbGVyCisgICAgICAgIEIgRE1BMl9DaGFubmVsNV9JUlFIYW5kbGVyCisKKyAgICAgICAgUFVCV0VBSyBETUEyX0NoYW5uZWw2X0lSUUhhbmRsZXIKKyAgICAgICAgU0VDVElPTiAudGV4dDpDT0RFOk5PUk9PVDpSRU9SREVSKDEpCitETUEyX0NoYW5uZWw2X0lSUUhhbmRsZXIKKyAgICAgICAgQiBETUEyX0NoYW5uZWw2X0lSUUhhbmRsZXIKKworICAgICAgICBQVUJXRUFLIERNQTJfQ2hhbm5lbDdfSVJRSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK0RNQTJfQ2hhbm5lbDdfSVJRSGFuZGxlcgorICAgICAgICBCIERNQTJfQ2hhbm5lbDdfSVJRSGFuZGxlcgorCisgICAgICAgIFBVQldFQUsgRE1BTVVYMV9PVlJfSVJRSGFuZGxlcgorICAgICAgICBTRUNUSU9OIC50ZXh0OkNPREU6Tk9ST09UOlJFT1JERVIoMSkKK0RNQU1VWDFfT1ZSX0lSUUhhbmRsZXIKKyAgICAgICAgQiBETUFNVVgxX09WUl9JUlFIYW5kbGVyCisKKyAgICAgICAgRU5ECisKKzsqKioqKioqKioqKioqKioqKioqKioqKiogKEMpIENPUFlSSUdIVCBTVE1pY3JvZWxlY3Ryb25pY3MgKioqKipFTkQgT0YgRklMRSoqKioqCg==